diff --git a/CHANGELOG.md b/CHANGELOG.md index 631e73213ca..2b0bf4c9e78 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,15 @@ 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.3.1] -- 2025-12-12 + +### Added +- Add support for arrays for the pie properties `showlegend` and `legend`, so that these can be configured per slice. [[#7580](https://github.com/plotly/plotly.js/pull/7580)], with thanks to @my-tien for the contribution! + +### Changed + - Replace deprecated `String.substr()` with `String.slice()` [[#7662](https://github.com/plotly/plotly.js/pull/7662)], with thanks to @JBR-0100 for the contribution! + + ## [3.3.0] -- 2025-11-14 ### Added diff --git a/CITATION.cff b/CITATION.cff index 3a34dccb1f4..99c80904a5e 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.3.0 +version: 3.3.1 doi: 10.5281/zenodo.13964707 -date-released: 2025-11-14 +date-released: 2025-12-12 url: "https://github.com/plotly/plotly.js" diff --git a/README.md b/README.md index 83d50b86d62..94222d63b94 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. diff --git a/dist/README.md b/dist/README.md index ac169ea5d30..9be0a0d6835 100644 --- a/dist/README.md +++ b/dist/README.md @@ -46,9 +46,9 @@ The main plotly.js bundles weight in at: | 10.7 MB | 4.6 MB | 1.4 MB | 11 MB | #### CDN links -> https://cdn.plot.ly/plotly-3.3.0.js +> https://cdn.plot.ly/plotly-3.3.1.js -> https://cdn.plot.ly/plotly-3.3.0.min.js +> https://cdn.plot.ly/plotly-3.3.1.min.js #### npm packages @@ -91,12 +91,12 @@ The `basic` partial bundle contains trace modules `bar`, `pie` and `scatter`. | Raw size | Minified size | Minified + gzip size | |------|-----------------|------------------------| -| 2.6 MB | 1.1 MB | 361.3 kB | +| 2.6 MB | 1.1 MB | 361.5 kB | #### CDN links -> https://cdn.plot.ly/plotly-basic-3.3.0.js +> https://cdn.plot.ly/plotly-basic-3.3.1.js -> https://cdn.plot.ly/plotly-basic-3.3.0.min.js +> https://cdn.plot.ly/plotly-basic-3.3.1.min.js #### npm packages @@ -114,12 +114,12 @@ The `cartesian` partial bundle contains trace modules `bar`, `box`, `contour`, ` | Raw size | Minified size | Minified + gzip size | |------|-----------------|------------------------| -| 3.3 MB | 1.3 MB | 459.4 kB | +| 3.4 MB | 1.3 MB | 459.7 kB | #### CDN links -> https://cdn.plot.ly/plotly-cartesian-3.3.0.js +> https://cdn.plot.ly/plotly-cartesian-3.3.1.js -> https://cdn.plot.ly/plotly-cartesian-3.3.0.min.js +> https://cdn.plot.ly/plotly-cartesian-3.3.1.min.js #### npm packages @@ -137,12 +137,12 @@ The `geo` partial bundle contains trace modules `choropleth`, `scatter` and `sca | Raw size | Minified size | Minified + gzip size | |------|-----------------|------------------------| -| 2.9 MB | 1.2 MB | 411.1 kB | +| 2.9 MB | 1.2 MB | 411.3 kB | #### CDN links -> https://cdn.plot.ly/plotly-geo-3.3.0.js +> https://cdn.plot.ly/plotly-geo-3.3.1.js -> https://cdn.plot.ly/plotly-geo-3.3.0.min.js +> https://cdn.plot.ly/plotly-geo-3.3.1.min.js #### npm packages @@ -160,12 +160,12 @@ The `gl3d` partial bundle contains trace modules `cone`, `isosurface`, `mesh3d`, | Raw size | Minified size | Minified + gzip size | |------|-----------------|------------------------| -| 4.2 MB | 1.6 MB | 529.8 kB | +| 4.2 MB | 1.6 MB | 530 kB | #### CDN links -> https://cdn.plot.ly/plotly-gl3d-3.3.0.js +> https://cdn.plot.ly/plotly-gl3d-3.3.1.js -> https://cdn.plot.ly/plotly-gl3d-3.3.0.min.js +> https://cdn.plot.ly/plotly-gl3d-3.3.1.min.js #### npm packages @@ -183,12 +183,12 @@ The `gl2d` partial bundle contains trace modules `parcoords`, `scatter`, `scatte | Raw size | Minified size | Minified + gzip size | |------|-----------------|------------------------| -| 3.8 MB | 1.5 MB | 518 kB | +| 3.8 MB | 1.5 MB | 518.2 kB | #### CDN links -> https://cdn.plot.ly/plotly-gl2d-3.3.0.js +> https://cdn.plot.ly/plotly-gl2d-3.3.1.js -> https://cdn.plot.ly/plotly-gl2d-3.3.0.min.js +> https://cdn.plot.ly/plotly-gl2d-3.3.1.min.js #### npm packages @@ -206,12 +206,12 @@ The `mapbox` partial bundle contains trace modules `choroplethmapbox`, `densitym | Raw size | Minified size | Minified + gzip size | |------|-----------------|------------------------| -| 4.5 MB | 1.8 MB | 576.6 kB | +| 4.5 MB | 1.8 MB | 576.9 kB | #### CDN links -> https://cdn.plot.ly/plotly-mapbox-3.3.0.js +> https://cdn.plot.ly/plotly-mapbox-3.3.1.js -> https://cdn.plot.ly/plotly-mapbox-3.3.0.min.js +> https://cdn.plot.ly/plotly-mapbox-3.3.1.min.js #### npm packages @@ -229,12 +229,12 @@ The `finance` partial bundle contains trace modules `bar`, `candlestick`, `funne | Raw size | Minified size | Minified + gzip size | |------|-----------------|------------------------| -| 2.9 MB | 1.2 MB | 395.6 kB | +| 2.9 MB | 1.2 MB | 395.8 kB | #### CDN links -> https://cdn.plot.ly/plotly-finance-3.3.0.js +> https://cdn.plot.ly/plotly-finance-3.3.1.js -> https://cdn.plot.ly/plotly-finance-3.3.0.min.js +> https://cdn.plot.ly/plotly-finance-3.3.1.min.js #### npm packages @@ -255,9 +255,9 @@ The `strict` partial bundle contains trace modules `bar`, `barpolar`, `box`, `ca | 11.5 MB | 4.9 MB | 1.5 MB | #### CDN links -> https://cdn.plot.ly/plotly-strict-3.3.0.js +> https://cdn.plot.ly/plotly-strict-3.3.1.js -> https://cdn.plot.ly/plotly-strict-3.3.0.min.js +> https://cdn.plot.ly/plotly-strict-3.3.1.min.js #### npm packages diff --git a/dist/plot-schema.json b/dist/plot-schema.json index 9d41ec19435..211da680a56 100644 --- a/dist/plot-schema.json +++ b/dist/plot-schema.json @@ -1,98471 +1,98485 @@ { - "animation": { - "direction": { - "description": "The direction in which to play the frames triggered by the animation call", - "dflt": "forward", - "valType": "enumerated", - "values": [ - "forward", - "reverse" - ] - }, - "frame": { - "duration": { - "description": "The duration in milliseconds of each frame. If greater than the frame duration, it will be limited to the frame duration.", - "dflt": 500, - "min": 0, - "valType": "number" - }, - "redraw": { - "description": "Redraw the plot at completion of the transition. This is desirable for transitions that include properties that cannot be transitioned, but may significantly slow down updates that do not require a full redraw of the plot", - "dflt": true, - "valType": "boolean" - }, - "role": "object" - }, - "fromcurrent": { - "description": "Play frames starting at the current frame instead of the beginning.", - "dflt": false, - "valType": "boolean" - }, - "mode": { - "description": "Describes how a new animate call interacts with currently-running animations. If `immediate`, current animations are interrupted and the new animation is started. If `next`, the current frame is allowed to complete, after which the new animation is started. If `afterall` all existing frames are animated to completion before the new animation is started.", - "dflt": "afterall", - "valType": "enumerated", - "values": [ - "immediate", - "next", - "afterall" - ] - }, - "transition": { - "duration": { - "description": "The duration of the transition, in milliseconds. If equal to zero, updates are synchronous.", - "dflt": 500, - "editType": "none", - "min": 0, - "valType": "number" - }, - "easing": { - "description": "The easing function used for the transition", - "dflt": "cubic-in-out", - "editType": "none", - "valType": "enumerated", - "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" - ] - }, - "ordering": { - "description": "Determines whether the figure's layout or traces smoothly transitions during updates that make both traces and layout change.", - "dflt": "layout first", - "editType": "none", - "valType": "enumerated", - "values": [ - "layout first", - "traces first" - ] - }, - "role": "object" - } - }, - "config": { - "autosizable": { - "description": "Determines whether the graphs are plotted with respect to layout.autosize:true and infer its container size.", - "dflt": false, - "valType": "boolean" - }, - "displaylogo": { - "description": "Determines whether or not the plotly logo is displayed on the end of the mode bar.", - "dflt": true, - "valType": "boolean" - }, - "displayModeBar": { - "description": "Determines the mode bar display mode. If *true*, the mode bar is always visible. If *false*, the mode bar is always hidden. If *hover*, the mode bar is visible while the mouse cursor is on the graph container.", - "dflt": "hover", - "valType": "enumerated", - "values": [ - "hover", - true, - false - ] - }, - "doubleClick": { - "description": "Sets the double click interaction mode. Has an effect only in cartesian plots. If *false*, double click is disable. If *reset*, double click resets the axis ranges to their initial values. If *autosize*, double click set the axis ranges to their autorange values. If *reset+autosize*, the odd double clicks resets the axis ranges to their initial values and even double clicks set the axis ranges to their autorange values.", - "dflt": "reset+autosize", - "valType": "enumerated", - "values": [ - false, - "reset", - "autosize", - "reset+autosize" - ] - }, - "doubleClickDelay": { - "description": "Sets the delay for registering a double-click in ms. This is the time interval (in ms) between first mousedown and 2nd mouseup to constitute a double-click. This setting propagates to all on-subplot double clicks (except for geo, mapbox and map) and on-legend double clicks.", - "dflt": 300, - "min": 0, - "valType": "number" - }, - "editable": { - "description": "Determines whether the graph is editable or not. Sets all pieces of `edits` unless a separate `edits` config item overrides individual parts.", - "dflt": false, - "valType": "boolean" - }, - "edits": { - "annotationPosition": { - "description": "Determines if the main anchor of the annotation is editable. The main anchor corresponds to the text (if no arrow) or the arrow (which drags the whole thing leaving the arrow length & direction unchanged).", - "dflt": false, - "valType": "boolean" - }, - "annotationTail": { - "description": "Has only an effect for annotations with arrows. Enables changing the length and direction of the arrow.", - "dflt": false, - "valType": "boolean" - }, - "annotationText": { - "description": "Enables editing annotation text.", - "dflt": false, - "valType": "boolean" - }, - "axisTitleText": { - "description": "Enables editing axis title text.", - "dflt": false, - "valType": "boolean" - }, - "colorbarPosition": { - "description": "Enables moving colorbars.", - "dflt": false, - "valType": "boolean" - }, - "colorbarTitleText": { - "description": "Enables editing colorbar title text.", - "dflt": false, - "valType": "boolean" - }, - "legendPosition": { - "description": "Enables moving the legend.", - "dflt": false, - "valType": "boolean" - }, - "legendText": { - "description": "Enables editing the trace name fields from the legend", - "dflt": false, - "valType": "boolean" - }, - "role": "object", - "shapePosition": { - "description": "Enables moving shapes.", - "dflt": false, - "valType": "boolean" - }, - "titleText": { - "description": "Enables editing the global layout title.", - "dflt": false, - "valType": "boolean" - } - }, - "editSelection": { - "description": "Enables moving selections.", - "dflt": true, - "valType": "boolean" - }, - "fillFrame": { - "description": "When `layout.autosize` is turned on, determines whether the graph fills the container (the default) or the screen (if set to *true*).", - "dflt": false, - "valType": "boolean" - }, - "frameMargins": { - "description": "When `layout.autosize` is turned on, set the frame margins in fraction of the graph size.", - "dflt": 0, - "max": 0.5, - "min": 0, - "valType": "number" - }, - "linkText": { - "description": "Sets the text appearing in the `showLink` link.", - "dflt": "Edit chart", - "noBlank": true, - "valType": "string" - }, - "locale": { - "description": "Which localization should we use? Should be a string like 'en' or 'en-US'.", - "dflt": "en-US", - "valType": "string" - }, - "locales": { - "description": "Localization definitions Locales can be provided either here (specific to one chart) or globally by registering them as modules. Should be an object of objects {locale: {dictionary: {...}, format: {...}}} { da: { dictionary: {'Reset axes': 'Nulstil aksler', ...}, format: {months: [...], shortMonths: [...]} }, ... } All parts are optional. When looking for translation or format fields, we look first for an exact match in a config locale, then in a registered module. If those fail, we strip off any regionalization ('en-US' -> 'en') and try each (config, registry) again. The final fallback for translation is untranslated (which is US English) and for formats is the base English (the only consequence being the last fallback date format %x is DD/MM/YYYY instead of MM/DD/YYYY). Currently `grouping` and `currency` are ignored for our automatic number formatting, but can be used in custom formats.", - "dflt": {}, - "valType": "any" - }, - "logging": { - "description": "Turn all console logging on or off (errors will be thrown) This should ONLY be set via Plotly.setPlotConfig Available levels: 0: no logs 1: warnings and errors, but not informational messages 2: verbose logs", - "dflt": 1, - "max": 2, - "min": 0, - "valType": "integer" - }, - "mapboxAccessToken": { - "description": "Mapbox access token (required to plot mapbox trace types) If using an Mapbox Atlas server, set this option to '' so that plotly.js won't attempt to authenticate to the public Mapbox server.", - "dflt": null, - "valType": "string" - }, - "modeBarButtons": { - "description": "Define fully custom mode bar buttons as nested array, where the outer arrays represents button groups, and the inner arrays have buttons config objects or names of default buttons See ./components/modebar/buttons.js for more info.", - "dflt": false, - "valType": "any" - }, - "modeBarButtonsToAdd": { - "description": "Add mode bar button using config objects See ./components/modebar/buttons.js for list of arguments. To enable predefined modebar buttons e.g. shape drawing, hover and spikelines, simply provide their string name(s). This could include: *v1hovermode*, *hoverclosest*, *hovercompare*, *togglehover*, *togglespikelines*, *drawline*, *drawopenpath*, *drawclosedpath*, *drawcircle*, *drawrect* and *eraseshape*. Please note that these predefined buttons will only be shown if they are compatible with all trace types used in a graph.", - "dflt": [], - "valType": "any" - }, - "modeBarButtonsToRemove": { - "description": "Remove mode bar buttons by name. See ./components/modebar/buttons.js for the list of names.", - "dflt": [], - "valType": "any" - }, - "notifyOnLogging": { - "description": "Set on-graph logging (notifier) level This should ONLY be set via Plotly.setPlotConfig Available levels: 0: no on-graph logs 1: warnings and errors, but not informational messages 2: verbose logs", - "dflt": 0, - "max": 2, - "min": 0, - "valType": "integer" - }, - "plotGlPixelRatio": { - "description": "Set the pixel ratio during WebGL image export.", - "dflt": 2, - "max": 4, - "min": 1, - "valType": "number" - }, - "plotlyServerURL": { - "description": "When set it determines base URL for the 'Edit in Chart Studio' `showEditInChartStudio`/`showSendToCloud` mode bar button and the showLink/sendData on-graph link. To enable sending your data to Chart Studio Cloud, you need to set both `plotlyServerURL` to 'https://chart-studio.plotly.com' and also set `showSendToCloud` to true.", - "dflt": "", - "valType": "string" - }, - "queueLength": { - "description": "Sets the length of the undo/redo queue.", - "dflt": 0, - "min": 0, - "valType": "integer" - }, - "responsive": { - "description": "Determines whether to change the layout size when window is resized. In v3, this option will be removed and will always be true.", - "dflt": false, - "valType": "boolean" - }, - "scrollZoom": { - "description": "Determines whether mouse wheel or two-finger scroll zooms is enable. Turned on by default for gl3d, geo, mapbox and map subplots (as these subplot types do not have zoombox via pan), but turned off by default for cartesian subplots. Set `scrollZoom` to *false* to disable scrolling for all subplots.", - "dflt": "gl3d+geo+map", - "extras": [ - true, - false - ], - "flags": [ - "cartesian", - "gl3d", - "geo", - "mapbox", - "map" - ], - "valType": "flaglist" - }, - "sendData": { - "description": "If *showLink* is true, does it contain data just link to a Chart Studio Cloud file?", - "dflt": true, - "valType": "boolean" - }, - "setBackground": { - "description": "Set function to add the background color (i.e. `layout.paper_color`) to a different container. This function take the graph div as first argument and the current background color as second argument. Alternatively, set to string *opaque* to ensure there is white behind it.", - "dflt": "transparent", - "valType": "any" - }, - "showAxisDragHandles": { - "description": "Set to *false* to omit cartesian axis pan/zoom drag handles.", - "dflt": true, - "valType": "boolean" - }, - "showAxisRangeEntryBoxes": { - "description": "Set to *false* to omit direct range entry at the pan/zoom drag points, note that `showAxisDragHandles` must be enabled to have an effect.", - "dflt": true, - "valType": "boolean" - }, - "showEditInChartStudio": { - "description": "Same as `showSendToCloud`, but use a pencil icon instead of a floppy-disk. Note that if both `showSendToCloud` and `showEditInChartStudio` are turned, only `showEditInChartStudio` will be honored.", - "dflt": false, - "valType": "boolean" - }, - "showLink": { - "description": "Determines whether a link to Chart Studio Cloud is displayed at the bottom right corner of resulting graphs. Use with `sendData` and `linkText`.", - "dflt": false, - "valType": "boolean" - }, - "showSendToCloud": { - "description": "Should we include a ModeBar button, labeled \"Edit in Chart Studio\", that sends this chart to chart-studio.plotly.com (formerly plot.ly) or another plotly server as specified by `plotlyServerURL` for editing, export, etc? Prior to version 1.43.0 this button was included by default, now it is opt-in using this flag. Note that this button can (depending on `plotlyServerURL` being set) send your data to an external server. However that server does not persist your data until you arrive at the Chart Studio and explicitly click \"Save\".", - "dflt": false, - "valType": "boolean" - }, - "showSources": { - "description": "Adds a source-displaying function to show sources on the resulting graphs.", - "dflt": false, - "valType": "any" - }, - "showTips": { - "description": "Determines whether or not tips are shown while interacting with the resulting graphs.", - "dflt": true, - "valType": "boolean" - }, - "staticPlot": { - "description": "Determines whether the graphs are interactive or not. If *false*, no interactivity, for export or image generation.", - "dflt": false, - "valType": "boolean" - }, - "toImageButtonOptions": { - "description": "Statically override options for toImage modebar button allowed keys are format, filename, width, height, scale see ../components/modebar/buttons.js", - "dflt": {}, - "valType": "any" - }, - "topojsonURL": { - "description": "Set the URL to topojson used in geo charts. By default, the topojson files are fetched from cdn.plot.ly. For example, set this option to: /dist/topojson/ to render geographical feature using the topojson files that ship with the plotly.js module.", - "dflt": "https://cdn.plot.ly/un/", - "noBlank": true, - "valType": "string" - }, - "typesetMath": { - "description": "Determines whether math should be typeset or not, when MathJax (either v2 or v3) is present on the page.", - "dflt": true, - "valType": "boolean" - }, - "watermark": { - "description": "watermark the images with the company's logo", - "dflt": false, - "valType": "boolean" - } - }, - "defs": { - "editType": { - "layout": { - "description": "layout attributes should include an `editType` string matching this flaglist. *calc* is the most extensive: a full (re)plot starting by clearing `gd.calcdata` to force it to be regenerated *plot* (re)plots but without first clearing `gd.calcdata`. *legend* only redraws the legend. *ticks* only redraws axis ticks, labels, and gridlines. *axrange* minimal sequence when updating axis ranges. *layoutstyle* reapplies global and SVG cartesian axis styles. *modebar* just updates the modebar. *camera* just updates the camera settings for gl3d scenes. *arraydraw* allows component arrays to invoke the redraw routines just for the component(s) that changed. *colorbars* only redraws colorbars.", - "extras": [ - "none" - ], - "flags": [ - "calc", - "plot", - "legend", - "ticks", - "axrange", - "layoutstyle", - "modebar", - "camera", - "arraydraw", - "colorbars" - ], - "valType": "flaglist" - }, - "traces": { - "description": "trace attributes should include an `editType` string matching this flaglist. *calc* is the most extensive: a full (re)plot starting by clearing `gd.calcdata` to force it to be regenerated *clearAxisTypes* resets the types of the axes this trace is on, because new data could cause the automatic axis type detection to change. Log type will not be cleared, as that is never automatically chosen so must have been user-specified. *plot* (re)plots but without first clearing `gd.calcdata`. *style* only calls `module.style` (or module.editStyle) for all trace modules and redraws the legend. *markerSize* is like *style*, but propagate axis-range changes due to scatter `marker.size` *colorbars* only redraws colorbars.", - "extras": [ - "none" - ], - "flags": [ - "calc", - "clearAxisTypes", - "plot", - "style", - "markerSize", - "colorbars" - ], - "valType": "flaglist" - } - }, - "impliedEdits": { - "description": "Sometimes when an attribute is changed, other attributes must be altered as well in order to achieve the intended result. For example, when `range` is specified, it is important to set `autorange` to `false` or the new `range` value would be lost in the redraw. `impliedEdits` is the mechanism to do this: `impliedEdits: {autorange: false}`. Each key is a relative paths to the attribute string to change, using *^* to ascend into the parent container, for example `range[0]` has `impliedEdits: {*^autorange*: false}`. A value of `undefined` means that the attribute will not be changed, but its previous value should be recorded in case we want to reverse this change later. For example, `autorange` has `impliedEdits: {*range[0]*: undefined, *range[1]*:undefined} because the range will likely be changed by redraw." - }, - "metaKeys": [ - "_isSubplotObj", - "_isLinkedToArray", - "_arrayAttrRegexps", - "_deprecated", - "description", - "role", - "editType", - "impliedEdits" - ], - "valObjects": { - "angle": { - "description": "A number (in degree) between -180 and 180.", - "otherOpts": [ - "dflt", - "arrayOk" - ], - "requiredOpts": [] - }, - "any": { - "description": "Any type.", - "otherOpts": [ - "dflt", - "values", - "arrayOk" - ], - "requiredOpts": [] - }, - "boolean": { - "description": "A boolean (true/false) value.", - "otherOpts": [ - "dflt" - ], - "requiredOpts": [] - }, - "color": { - "description": "A string describing color. Supported formats: - hex (e.g. '#d3d3d3') - rgb (e.g. 'rgb(255, 0, 0)') - rgba (e.g. 'rgb(255, 0, 0, 0.5)') - hsl (e.g. 'hsl(0, 100%, 50%)') - hsv (e.g. 'hsv(0, 100%, 100%)') - named colors (full list: http://www.w3.org/TR/css3-color/#svg-color)", - "otherOpts": [ - "dflt", - "arrayOk" - ], - "requiredOpts": [] - }, - "colorlist": { - "description": "A list of colors. Must be an {array} containing valid colors.", - "otherOpts": [ - "dflt" - ], - "requiredOpts": [] - }, - "colorscale": { - "description": "A Plotly colorscale either picked by a name: (any of Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis ) customized as an {array} of 2-element {arrays} where the first element is the normalized color level value (starting at *0* and ending at *1*), and the second item is a valid color string.", - "otherOpts": [ - "dflt" - ], - "requiredOpts": [] - }, - "data_array": { - "description": "An {array} of data. The value must represent an {array} or it will be ignored, but this array can be provided in several forms: (1) a regular {array} object (2) a typed array (e.g. Float32Array) (3) an object with keys dtype, bdata, and optionally shape. In this 3rd form, dtype is one of *f8*, *f4*. *i4*, *u4*, *i2*, *u2*, *i1*, *u1* or *u1c* for Uint8ClampedArray. In addition to shorthand `dtype` above one could also use the following forms: *float64*, *float32*, *int32*, *uint32*, *int16*, *uint16*, *int8*, *uint8* or *uint8c* for Uint8ClampedArray. `bdata` is either a base64-encoded string or the ArrayBuffer of an integer or float typed array. For either multi-dimensional arrays you must also provide its dimensions separated by comma via `shape`. For example using `dtype`: *f4* and `shape`: *5,100* you can declare a 2-D array that has 5 rows and 100 columns containing float32 values i.e. 4 bits per value. `shape` is optional for one dimensional arrays.", - "otherOpts": [ - "dflt" - ], - "requiredOpts": [] - }, - "enumerated": { - "description": "Enumerated value type. The available values are listed in `values`.", - "otherOpts": [ - "dflt", - "coerceNumber", - "arrayOk" - ], - "requiredOpts": [ - "values" - ] - }, - "flaglist": { - "description": "A string representing a combination of flags (order does not matter here). Combine any of the available `flags` with *+*. (e.g. ('lines+markers')). Values in `extras` cannot be combined.", - "otherOpts": [ - "dflt", - "extras", - "arrayOk" - ], - "requiredOpts": [ - "flags" - ] - }, - "info_array": { - "description": "An {array} of plot information.", - "otherOpts": [ - "dflt", - "freeLength", - "dimensions" - ], - "requiredOpts": [ - "items" - ] - }, - "integer": { - "description": "An integer or an integer inside a string. When applicable, values greater (less) than `max` (`min`) are coerced to the `dflt`.", - "otherOpts": [ - "dflt", - "min", - "max", - "arrayOk", - "extras" - ], - "requiredOpts": [] - }, - "number": { - "description": "A number or a numeric value (e.g. a number inside a string). When applicable, values greater (less) than `max` (`min`) are coerced to the `dflt`.", - "otherOpts": [ - "dflt", - "min", - "max", - "arrayOk" - ], - "requiredOpts": [] - }, - "string": { - "description": "A string value. Numbers are converted to strings except for attributes with `strict` set to true.", - "otherOpts": [ - "dflt", - "noBlank", - "strict", - "arrayOk", - "values" - ], - "requiredOpts": [] - }, - "subplotid": { - "description": "An id string of a subplot type (given by dflt), optionally followed by an integer >1. e.g. if dflt='geo', we can have 'geo', 'geo2', 'geo3', ...", - "otherOpts": [ - "regex" - ], - "requiredOpts": [ - "dflt" - ] - } - } - }, - "frames": { - "items": { - "frames_entry": { - "baseframe": { - "description": "The name of the frame into which this frame's properties are merged before applying. This is used to unify properties and avoid needing to specify the same values for the same properties in multiple frames.", - "valType": "string" - }, - "data": { - "description": "A list of traces this frame modifies. The format is identical to the normal trace definition.", - "valType": "any" - }, - "group": { - "description": "An identifier that specifies the group to which the frame belongs, used by animate to select a subset of frames.", - "valType": "string" - }, - "layout": { - "description": "Layout properties which this frame modifies. The format is identical to the normal layout definition.", - "valType": "any" - }, - "name": { - "description": "A label by which to identify the frame", - "valType": "string" - }, - "role": "object", - "traces": { - "description": "A list of trace indices that identify the respective traces in the data attribute", - "valType": "any" - } - } - }, - "role": "object" - }, - "layout": { - "layoutAttributes": { - "activeselection": { - "editType": "none", - "fillcolor": { - "description": "Sets the color filling the active selection' interior.", - "dflt": "rgba(0,0,0,0)", - "editType": "none", - "valType": "color" + "animation": { + "direction": { + "description": "The direction in which to play the frames triggered by the animation call", + "dflt": "forward", + "valType": "enumerated", + "values": [ + "forward", + "reverse" + ] }, - "opacity": { - "description": "Sets the opacity of the active selection.", - "dflt": 0.5, - "editType": "none", - "max": 1, - "min": 0, - "valType": "number" + "frame": { + "duration": { + "description": "The duration in milliseconds of each frame. If greater than the frame duration, it will be limited to the frame duration.", + "dflt": 500, + "min": 0, + "valType": "number" + }, + "redraw": { + "description": "Redraw the plot at completion of the transition. This is desirable for transitions that include properties that cannot be transitioned, but may significantly slow down updates that do not require a full redraw of the plot", + "dflt": true, + "valType": "boolean" + }, + "role": "object" }, - "role": "object" - }, - "activeshape": { - "editType": "none", - "fillcolor": { - "description": "Sets the color filling the active shape' interior.", - "dflt": "rgb(255,0,255)", - "editType": "none", - "valType": "color" + "fromcurrent": { + "description": "Play frames starting at the current frame instead of the beginning.", + "dflt": false, + "valType": "boolean" }, - "opacity": { - "description": "Sets the opacity of the active shape.", - "dflt": 0.5, - "editType": "none", - "max": 1, - "min": 0, - "valType": "number" + "mode": { + "description": "Describes how a new animate call interacts with currently-running animations. If `immediate`, current animations are interrupted and the new animation is started. If `next`, the current frame is allowed to complete, after which the new animation is started. If `afterall` all existing frames are animated to completion before the new animation is started.", + "dflt": "afterall", + "valType": "enumerated", + "values": [ + "immediate", + "next", + "afterall" + ] }, - "role": "object" - }, - "annotations": { - "items": { - "annotation": { - "align": { - "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", - "dflt": "center", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "arrowcolor": { - "description": "Sets the color of the annotation arrow.", - "editType": "arraydraw", - "valType": "color" - }, - "arrowhead": { - "description": "Sets the end annotation arrow head style.", - "dflt": 1, - "editType": "arraydraw", - "max": 8, - "min": 0, - "valType": "integer" - }, - "arrowside": { - "description": "Sets the annotation arrow head position.", - "dflt": "end", - "editType": "arraydraw", - "extras": [ - "none" - ], - "flags": [ - "end", - "start" - ], - "valType": "flaglist" - }, - "arrowsize": { - "description": "Sets the size of the end annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line.", - "dflt": 1, - "editType": "calc+arraydraw", - "min": 0.3, - "valType": "number" - }, - "arrowwidth": { - "description": "Sets the width (in px) of annotation arrow line.", - "editType": "calc+arraydraw", - "min": 0.1, - "valType": "number" - }, - "ax": { - "description": "Sets the x component of the arrow tail about the arrow head. If `axref` is `pixel`, a positive (negative) component corresponds to an arrow pointing from right to left (left to right). If `axref` is not `pixel` and is exactly the same as `xref`, this is an absolute value on that axis, like `x`, specified in the same coordinates as `xref`.", - "editType": "calc+arraydraw", - "valType": "any" - }, - "axref": { - "description": "Indicates in what coordinates the tail of the annotation (ax,ay) is specified. If set to a x axis id (e.g. *x* or *x2*), the `x` position refers to a x coordinate. If set to *paper*, the `x` position refers to the distance from the left of the plotting area in normalized coordinates where *0* (*1*) corresponds to the left (right). If set to a x axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the left of the domain of that axis: e.g., *x2 domain* refers to the domain of the second x axis and a x position of 0.5 refers to the point between the left and the right of the domain of the second x axis. In order for absolute positioning of the arrow to work, *axref* must be exactly the same as *xref*, otherwise *axref* will revert to *pixel* (explained next). For relative positioning, *axref* can be set to *pixel*, in which case the *ax* value is specified in pixels relative to *x*. Absolute positioning is useful for trendline annotations which should continue to indicate the correct trend when zoomed. Relative positioning is useful for specifying the text offset for an annotated point.", - "dflt": "pixel", - "editType": "calc", - "valType": "enumerated", - "values": [ - "pixel", - "/^x([2-9]|[1-9][0-9]+)?( domain)?$/" - ] - }, - "ay": { - "description": "Sets the y component of the arrow tail about the arrow head. If `ayref` is `pixel`, a positive (negative) component corresponds to an arrow pointing from bottom to top (top to bottom). If `ayref` is not `pixel` and is exactly the same as `yref`, this is an absolute value on that axis, like `y`, specified in the same coordinates as `yref`.", - "editType": "calc+arraydraw", - "valType": "any" - }, - "ayref": { - "description": "Indicates in what coordinates the tail of the annotation (ax,ay) is specified. If set to a y axis id (e.g. *y* or *y2*), the `y` position refers to a y coordinate. If set to *paper*, the `y` position refers to the distance from the bottom of the plotting area in normalized coordinates where *0* (*1*) corresponds to the bottom (top). If set to a y axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the bottom of the domain of that axis: e.g., *y2 domain* refers to the domain of the second y axis and a y position of 0.5 refers to the point between the bottom and the top of the domain of the second y axis. In order for absolute positioning of the arrow to work, *ayref* must be exactly the same as *yref*, otherwise *ayref* will revert to *pixel* (explained next). For relative positioning, *ayref* can be set to *pixel*, in which case the *ay* value is specified in pixels relative to *y*. Absolute positioning is useful for trendline annotations which should continue to indicate the correct trend when zoomed. Relative positioning is useful for specifying the text offset for an annotated point.", - "dflt": "pixel", - "editType": "calc", - "valType": "enumerated", - "values": [ - "pixel", - "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" - ] - }, - "bgcolor": { - "description": "Sets the background color of the annotation.", - "dflt": "rgba(0,0,0,0)", - "editType": "arraydraw", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the color of the border enclosing the annotation `text`.", - "dflt": "rgba(0,0,0,0)", - "editType": "arraydraw", - "valType": "color" - }, - "borderpad": { - "description": "Sets the padding (in px) between the `text` and the enclosing border.", - "dflt": 1, - "editType": "calc+arraydraw", - "min": 0, - "valType": "number" - }, - "borderwidth": { - "description": "Sets the width (in px) of the border enclosing the annotation `text`.", - "dflt": 1, - "editType": "calc+arraydraw", - "min": 0, - "valType": "number" - }, - "captureevents": { - "description": "Determines whether the annotation text box captures mouse move and click events, or allows those events to pass through to data points in the plot that may be behind the annotation. By default `captureevents` is *false* unless `hovertext` is provided. If you use the event `plotly_clickannotation` without `hovertext` you must explicitly enable `captureevents`.", - "editType": "arraydraw", - "valType": "boolean" - }, - "clicktoshow": { - "description": "Makes this annotation respond to clicks on the plot. If you click a data point that exactly matches the `x` and `y` values of this annotation, and it is hidden (visible: false), it will appear. In *onoff* mode, you must click the same point again to make it disappear, so if you click multiple points, you can show multiple annotations. In *onout* mode, a click anywhere else in the plot (on another data point or not) will hide this annotation. If you need to show/hide this annotation in response to different `x` or `y` values, you can set `xclick` and/or `yclick`. This is useful for example to label the side of a bar. To label markers though, `standoff` is preferred over `xclick` and `yclick`.", - "dflt": false, - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - false, - "onoff", - "onout" - ] - }, - "editType": "calc", - "font": { - "color": { - "editType": "arraydraw", - "valType": "color" - }, - "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.", - "editType": "calc+arraydraw", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc+arraydraw", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc+arraydraw", - "valType": "string" - }, - "size": { - "editType": "calc+arraydraw", - "min": 1, + "transition": { + "duration": { + "description": "The duration of the transition, in milliseconds. If equal to zero, updates are synchronous.", + "dflt": 500, + "editType": "none", + "min": 0, "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc+arraydraw", + }, + "easing": { + "description": "The easing function used for the transition", + "dflt": "cubic-in-out", + "editType": "none", "valType": "enumerated", "values": [ - "normal", - "word caps", - "upper", - "lower" + "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" ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc+arraydraw", + }, + "ordering": { + "description": "Determines whether the figure's layout or traces smoothly transitions during updates that make both traces and layout change.", + "dflt": "layout first", + "editType": "none", "valType": "enumerated", "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" + "layout first", + "traces first" ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc+arraydraw", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "height": { - "description": "Sets an explicit height for the text box. null (default) lets the text set the box height. Taller text will be clipped.", - "dflt": null, - "editType": "calc+arraydraw", - "min": 1, - "valType": "number" - }, - "hoverlabel": { - "bgcolor": { - "description": "Sets the background color of the hover label. By default uses the annotation's `bgcolor` made opaque, or white if it was transparent.", - "editType": "arraydraw", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the border color of the hover label. By default uses either dark grey or white, for maximum contrast with `hoverlabel.bgcolor`.", - "editType": "arraydraw", - "valType": "color" - }, - "editType": "arraydraw", - "font": { - "color": { - "editType": "arraydraw", - "valType": "color" - }, - "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.", - "editType": "arraydraw", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "arraydraw", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "arraydraw", - "valType": "string" - }, - "size": { - "editType": "arraydraw", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "arraydraw", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object" - }, - "hovertext": { - "description": "Sets text to appear when hovering over this annotation. If omitted or blank, no hover label will appear.", - "editType": "arraydraw", - "valType": "string" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "none", - "valType": "string" }, - "opacity": { - "description": "Sets the opacity of the annotation (text + arrow).", - "dflt": 1, - "editType": "arraydraw", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "showarrow": { - "description": "Determines whether or not the annotation is drawn with an arrow. If *true*, `text` is placed near the arrow's tail. If *false*, `text` lines up with the `x` and `y` provided.", - "dflt": true, - "editType": "calc+arraydraw", - "valType": "boolean" - }, - "standoff": { - "description": "Sets a distance, in pixels, to move the end arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount.", - "dflt": 0, - "editType": "calc+arraydraw", - "min": 0, - "valType": "number" - }, - "startarrowhead": { - "description": "Sets the start annotation arrow head style.", - "dflt": 1, - "editType": "arraydraw", - "max": 8, - "min": 0, - "valType": "integer" - }, - "startarrowsize": { - "description": "Sets the size of the start annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line.", - "dflt": 1, - "editType": "calc+arraydraw", - "min": 0.3, - "valType": "number" - }, - "startstandoff": { - "description": "Sets a distance, in pixels, to move the start arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount.", - "dflt": 0, - "editType": "calc+arraydraw", - "min": 0, - "valType": "number" - }, - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "text": { - "description": "Sets the text associated with this annotation. Plotly uses a subset of HTML tags to do things like newline (`
`), bold (``), italics (``), hyperlinks (``). Tags ``, ``, ``, ``, ``, and `` are also supported.", - "editType": "calc+arraydraw", - "valType": "string" - }, - "textangle": { - "description": "Sets the angle at which the `text` is drawn with respect to the horizontal.", - "dflt": 0, - "editType": "calc+arraydraw", - "valType": "angle" - }, - "valign": { - "description": "Sets the vertical alignment of the `text` within the box. Has an effect only if an explicit height is set to override the text height.", - "dflt": "middle", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "visible": { - "description": "Determines whether or not this annotation is visible.", - "dflt": true, - "editType": "calc+arraydraw", - "valType": "boolean" - }, - "width": { - "description": "Sets an explicit width for the text box. null (default) lets the text set the box width. Wider text will be clipped. There is no automatic wrapping; use
to start a new line.", - "dflt": null, - "editType": "calc+arraydraw", - "min": 1, - "valType": "number" - }, - "x": { - "description": "Sets the annotation's x position. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc+arraydraw", - "valType": "any" + "role": "object" + } + }, + "config": { + "autosizable": { + "description": "Determines whether the graphs are plotted with respect to layout.autosize:true and infer its container size.", + "dflt": false, + "valType": "boolean" + }, + "displaylogo": { + "description": "Determines whether or not the plotly logo is displayed on the end of the mode bar.", + "dflt": true, + "valType": "boolean" + }, + "displayModeBar": { + "description": "Determines the mode bar display mode. If *true*, the mode bar is always visible. If *false*, the mode bar is always hidden. If *hover*, the mode bar is visible while the mouse cursor is on the graph container.", + "dflt": "hover", + "valType": "enumerated", + "values": [ + "hover", + true, + false + ] + }, + "doubleClick": { + "description": "Sets the double click interaction mode. Has an effect only in cartesian plots. If *false*, double click is disable. If *reset*, double click resets the axis ranges to their initial values. If *autosize*, double click set the axis ranges to their autorange values. If *reset+autosize*, the odd double clicks resets the axis ranges to their initial values and even double clicks set the axis ranges to their autorange values.", + "dflt": "reset+autosize", + "valType": "enumerated", + "values": [ + false, + "reset", + "autosize", + "reset+autosize" + ] + }, + "doubleClickDelay": { + "description": "Sets the delay for registering a double-click in ms. This is the time interval (in ms) between first mousedown and 2nd mouseup to constitute a double-click. This setting propagates to all on-subplot double clicks (except for geo, mapbox and map) and on-legend double clicks.", + "dflt": 300, + "min": 0, + "valType": "number" + }, + "editable": { + "description": "Determines whether the graph is editable or not. Sets all pieces of `edits` unless a separate `edits` config item overrides individual parts.", + "dflt": false, + "valType": "boolean" + }, + "edits": { + "annotationPosition": { + "description": "Determines if the main anchor of the annotation is editable. The main anchor corresponds to the text (if no arrow) or the arrow (which drags the whole thing leaving the arrow length & direction unchanged).", + "dflt": false, + "valType": "boolean" }, - "xanchor": { - "description": "Sets the text box's horizontal position anchor This anchor binds the `x` position to the *left*, *center* or *right* of the annotation. For example, if `x` is set to 1, `xref` to *paper* and `xanchor` to *right* then the right-most portion of the annotation lines up with the right-most edge of the plotting area. If *auto*, the anchor is equivalent to *center* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side.", - "dflt": "auto", - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - "auto", - "left", - "center", - "right" - ] + "annotationTail": { + "description": "Has only an effect for annotations with arrows. Enables changing the length and direction of the arrow.", + "dflt": false, + "valType": "boolean" }, - "xclick": { - "description": "Toggle this annotation when clicking a data point whose `x` value is `xclick` rather than the annotation's `x` value.", - "editType": "arraydraw", - "valType": "any" + "annotationText": { + "description": "Enables editing annotation text.", + "dflt": false, + "valType": "boolean" }, - "xref": { - "description": "Sets the annotation's x coordinate axis. If set to a x axis id (e.g. *x* or *x2*), the `x` position refers to a x coordinate. If set to *paper*, the `x` position refers to the distance from the left of the plotting area in normalized coordinates where *0* (*1*) corresponds to the left (right). If set to a x axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the left of the domain of that axis: e.g., *x2 domain* refers to the domain of the second x axis and a x position of 0.5 refers to the point between the left and the right of the domain of the second x axis.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "paper", - "/^x([2-9]|[1-9][0-9]+)?( domain)?$/" - ] + "axisTitleText": { + "description": "Enables editing axis title text.", + "dflt": false, + "valType": "boolean" }, - "xshift": { - "description": "Shifts the position of the whole annotation and arrow to the right (positive) or left (negative) by this many pixels.", - "dflt": 0, - "editType": "calc+arraydraw", - "valType": "number" + "colorbarPosition": { + "description": "Enables moving colorbars.", + "dflt": false, + "valType": "boolean" }, - "y": { - "description": "Sets the annotation's y position. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc+arraydraw", - "valType": "any" + "colorbarTitleText": { + "description": "Enables editing colorbar title text.", + "dflt": false, + "valType": "boolean" }, - "yanchor": { - "description": "Sets the text box's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the annotation. For example, if `y` is set to 1, `yref` to *paper* and `yanchor` to *top* then the top-most portion of the annotation lines up with the top-most edge of the plotting area. If *auto*, the anchor is equivalent to *middle* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side.", - "dflt": "auto", - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - "auto", - "top", - "middle", - "bottom" - ] + "legendPosition": { + "description": "Enables moving the legend.", + "dflt": false, + "valType": "boolean" }, - "yclick": { - "description": "Toggle this annotation when clicking a data point whose `y` value is `yclick` rather than the annotation's `y` value.", - "editType": "arraydraw", - "valType": "any" + "legendText": { + "description": "Enables editing the trace name fields from the legend", + "dflt": false, + "valType": "boolean" }, - "yref": { - "description": "Sets the annotation's y coordinate axis. If set to a y axis id (e.g. *y* or *y2*), the `y` position refers to a y coordinate. If set to *paper*, the `y` position refers to the distance from the bottom of the plotting area in normalized coordinates where *0* (*1*) corresponds to the bottom (top). If set to a y axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the bottom of the domain of that axis: e.g., *y2 domain* refers to the domain of the second y axis and a y position of 0.5 refers to the point between the bottom and the top of the domain of the second y axis.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "paper", - "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" - ] + "role": "object", + "shapePosition": { + "description": "Enables moving shapes.", + "dflt": false, + "valType": "boolean" }, - "yshift": { - "description": "Shifts the position of the whole annotation and arrow up (positive) or down (negative) by this many pixels.", - "dflt": 0, - "editType": "calc+arraydraw", - "valType": "number" + "titleText": { + "description": "Enables editing the global layout title.", + "dflt": false, + "valType": "boolean" } - } - }, - "role": "object" - }, - "autosize": { - "description": "Determines whether or not a layout width or height that has been left undefined by the user is initialized on each relayout. Note that, regardless of this attribute, an undefined layout width or height is always initialized on the first call to plot.", - "dflt": false, - "editType": "none", - "valType": "boolean" - }, - "autotypenumbers": { - "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. This is the default value; however it could be overridden for individual axes.", - "dflt": "convert types", - "editType": "calc", - "valType": "enumerated", - "values": [ - "convert types", - "strict" - ] - }, - "calendar": { - "description": "Sets the default calendar system to use for interpreting and displaying dates throughout the plot.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "clickmode": { - "description": "Determines the mode of single click interactions. *event* is the default value and emits the `plotly_click` event. In addition this mode emits the `plotly_selected` event in drag modes *lasso* and *select*, but with no event data attached (kept for compatibility reasons). The *select* flag enables selecting single data points via click. This mode also supports persistent selections, meaning that pressing Shift while clicking, adds to / subtracts from an existing selection. *select* with `hovermode`: *x* can be confusing, consider explicitly setting `hovermode`: *closest* when using this feature. Selection events are sent accordingly as long as *event* flag is set as well. When the *event* flag is missing, `plotly_click` and `plotly_selected` events are not fired.", - "dflt": "event", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "event", - "select" - ], - "valType": "flaglist" - }, - "coloraxis": { - "_isSubplotObj": true, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here corresponding trace color array(s)) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as corresponding trace color array(s) and if set, `cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as corresponding trace color array(s). Has no effect when `cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" + "editSelection": { + "description": "Enables moving selections.", + "dflt": true, + "valType": "boolean" }, - "cmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as corresponding trace color array(s) and if set, `cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" + "fillFrame": { + "description": "When `layout.autosize` is turned on, determines whether the graph fills the container (the default) or the screen (if set to *true*).", + "dflt": false, + "valType": "boolean" }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", + "frameMargins": { + "description": "When `layout.autosize` is turned on, set the frame margins in fraction of the graph size.", "dflt": 0, - "editType": "colorbars", + "max": 0.5, "min": 0, "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", + }, + "linkText": { + "description": "Sets the text appearing in the `showLink` link.", + "dflt": "Edit chart", + "noBlank": true, + "valType": "string" + }, + "locale": { + "description": "Which localization should we use? Should be a string like 'en' or 'en-US'.", + "dflt": "en-US", + "valType": "string" + }, + "locales": { + "description": "Localization definitions Locales can be provided either here (specific to one chart) or globally by registering them as modules. Should be an object of objects {locale: {dictionary: {...}, format: {...}}} { da: { dictionary: {'Reset axes': 'Nulstil aksler', ...}, format: {months: [...], shortMonths: [...]} }, ... } All parts are optional. When looking for translation or format fields, we look first for an exact match in a config locale, then in a registered module. If those fail, we strip off any regionalization ('en-US' -> 'en') and try each (config, registry) again. The final fallback for translation is untranslated (which is US English) and for formats is the base English (the only consequence being the last fallback date format %x is DD/MM/YYYY instead of MM/DD/YYYY). Currently `grouping` and `currency` are ignored for our automatic number formatting, but can be used in custom formats.", + "dflt": {}, "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + }, + "logging": { + "description": "Turn all console logging on or off (errors will be thrown) This should ONLY be set via Plotly.setPlotConfig Available levels: 0: no logs 1: warnings and errors, but not informational messages 2: verbose logs", "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", + "max": 2, "min": 0, "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "description": "", - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - }, - "colorscale": { - "diverging": { - "description": "Sets the default diverging colorscale. Note that `autocolorscale` must be true for this attribute to work.", - "dflt": [ - [ - 0, - "rgb(5,10,172)" - ], - [ - 0.35, - "rgb(106,137,247)" - ], - [ - 0.5, - "rgb(190,190,190)" - ], - [ - 0.6, - "rgb(220,170,132)" - ], - [ - 0.7, - "rgb(230,145,90)" - ], - [ - 1, - "rgb(178,10,28)" - ] - ], - "editType": "calc", - "valType": "colorscale" - }, - "editType": "calc", - "role": "object", - "sequential": { - "description": "Sets the default sequential colorscale for positive values. Note that `autocolorscale` must be true for this attribute to work.", - "dflt": [ - [ - 0, - "rgb(220,220,220)" - ], - [ - 0.2, - "rgb(245,195,157)" - ], - [ - 0.4, - "rgb(245,160,105)" - ], - [ - 1, - "rgb(178,10,28)" - ] - ], - "editType": "calc", - "valType": "colorscale" - }, - "sequentialminus": { - "description": "Sets the default sequential colorscale for negative values. Note that `autocolorscale` must be true for this attribute to work.", - "dflt": [ - [ - 0, - "rgb(5,10,172)" - ], - [ - 0.35, - "rgb(40,60,190)" - ], - [ - 0.5, - "rgb(70,100,245)" - ], - [ - 0.6, - "rgb(90,120,245)" - ], - [ - 0.7, - "rgb(106,137,247)" - ], - [ - 1, - "rgb(220,220,220)" - ] - ], - "editType": "calc", - "valType": "colorscale" - } - }, - "colorway": { - "description": "Sets the default trace colors.", - "dflt": [ - "#1f77b4", - "#ff7f0e", - "#2ca02c", - "#d62728", - "#9467bd", - "#8c564b", - "#e377c2", - "#7f7f7f", - "#bcbd22", - "#17becf" - ], - "editType": "calc", - "valType": "colorlist" - }, - "computed": { - "description": "Placeholder for exporting automargin-impacting values namely `margin.t`, `margin.b`, `margin.l` and `margin.r` in *full-json* mode.", - "editType": "none", - "valType": "any" - }, - "datarevision": { - "description": "If provided, a changed value tells `Plotly.react` that one or more data arrays has changed. This way you can modify arrays in-place rather than making a complete new copy for an incremental change. If NOT provided, `Plotly.react` assumes that data arrays are being treated as immutable, thus any data array with a different identity from its predecessor contains new data.", - "editType": "calc", - "valType": "any" - }, - "dragmode": { - "description": "Determines the mode of drag interactions. *select* and *lasso* apply only to scatter traces with markers or text. *orbit* and *turntable* apply only to 3D scenes.", - "dflt": "zoom", - "editType": "modebar", - "valType": "enumerated", - "values": [ - "zoom", - "pan", - "select", - "lasso", - "drawclosedpath", - "drawopenpath", - "drawline", - "drawrect", - "drawcircle", - "orbit", - "turntable", - false - ] - }, - "editrevision": { - "description": "Controls persistence of user-driven changes in `editable: true` configuration, other than trace names and axis titles. Defaults to `layout.uirevision`.", - "editType": "none", - "valType": "any" - }, - "editType": "calc", - "font": { - "color": { - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "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.", - "dflt": "\"Open Sans\", verdana, arial, sans-serif", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" }, - "size": { - "dflt": 12, - "editType": "calc", - "min": 1, - "valType": "number" + "mapboxAccessToken": { + "description": "Mapbox access token (required to plot mapbox trace types) If using an Mapbox Atlas server, set this option to '' so that plotly.js won't attempt to authenticate to the public Mapbox server.", + "dflt": null, + "valType": "string" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "modeBarButtons": { + "description": "Define fully custom mode bar buttons as nested array, where the outer arrays represents button groups, and the inner arrays have buttons config objects or names of default buttons See ./components/modebar/buttons.js for more info.", + "dflt": false, + "valType": "any" }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "modeBarButtonsToAdd": { + "description": "Add mode bar button using config objects See ./components/modebar/buttons.js for list of arguments. To enable predefined modebar buttons e.g. shape drawing, hover and spikelines, simply provide their string name(s). This could include: *v1hovermode*, *hoverclosest*, *hovercompare*, *togglehover*, *togglespikelines*, *drawline*, *drawopenpath*, *drawclosedpath*, *drawcircle*, *drawrect* and *eraseshape*. Please note that these predefined buttons will only be shown if they are compatible with all trace types used in a graph.", + "dflt": [], + "valType": "any" }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "modeBarButtonsToRemove": { + "description": "Remove mode bar buttons by name. See ./components/modebar/buttons.js for the list of names.", + "dflt": [], + "valType": "any" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "geo": { - "_isSubplotObj": true, - "bgcolor": { - "description": "Set the background color of the map", - "dflt": "#fff", - "editType": "plot", - "valType": "color" + "notifyOnLogging": { + "description": "Set on-graph logging (notifier) level This should ONLY be set via Plotly.setPlotConfig Available levels: 0: no on-graph logs 1: warnings and errors, but not informational messages 2: verbose logs", + "dflt": 0, + "max": 2, + "min": 0, + "valType": "integer" }, - "center": { - "editType": "plot", - "lat": { - "description": "Sets the latitude of the map's center. For all projection types, the map's latitude center lies at the middle of the latitude range by default.", - "editType": "plot", - "valType": "number" - }, - "lon": { - "description": "Sets the longitude of the map's center. By default, the map's longitude center lies at the middle of the longitude range for scoped projection and above `projection.rotation.lon` otherwise.", - "editType": "plot", + "plotGlPixelRatio": { + "description": "Set the pixel ratio during WebGL image export.", + "dflt": 2, + "max": 4, + "min": 1, "valType": "number" - }, - "role": "object" }, - "coastlinecolor": { - "description": "Sets the coastline color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "coastlinewidth": { - "description": "Sets the coastline stroke width (in px).", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "countrycolor": { - "description": "Sets line color of the country boundaries.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "countrywidth": { - "description": "Sets line width (in px) of the country boundaries.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" + "plotlyServerURL": { + "description": "When set it determines base URL for the 'Edit in Chart Studio' `showEditInChartStudio`/`showSendToCloud` mode bar button and the showLink/sendData on-graph link. To enable sending your data to Chart Studio Cloud, you need to set both `plotlyServerURL` to 'https://chart-studio.plotly.com' and also set `showSendToCloud` to true.", + "dflt": "", + "valType": "string" }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this geo subplot . Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "editType": "plot", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this geo subplot . Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both.", + "queueLength": { + "description": "Sets the length of the undo/redo queue.", "dflt": 0, - "editType": "plot", "min": 0, "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this geo subplot (in plot fraction). Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both.", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this geo subplot (in plot fraction). Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both.", - "dflt": [ - 0, - 1 + }, + "responsive": { + "description": "Determines whether to change the layout size when window is resized. In v3, this option will be removed and will always be true.", + "dflt": false, + "valType": "boolean" + }, + "scrollZoom": { + "description": "Determines whether mouse wheel or two-finger scroll zooms is enable. Turned on by default for gl3d, geo, mapbox and map subplots (as these subplot types do not have zoombox via pan), but turned off by default for cartesian subplots. Set `scrollZoom` to *false* to disable scrolling for all subplots.", + "dflt": "gl3d+geo+map", + "extras": [ + true, + false ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } + "flags": [ + "cartesian", + "gl3d", + "geo", + "mapbox", + "map" ], - "valType": "info_array" - } - }, - "editType": "plot", - "fitbounds": { - "description": "Determines if this subplot's view settings are auto-computed to fit trace data. On scoped maps, setting `fitbounds` leads to `center.lon` and `center.lat` getting auto-filled. On maps with a non-clipped projection, setting `fitbounds` leads to `center.lon`, `center.lat`, and `projection.rotation.lon` getting auto-filled. On maps with a clipped projection, setting `fitbounds` leads to `center.lon`, `center.lat`, `projection.rotation.lon`, `projection.rotation.lat`, `lonaxis.range` and `lataxis.range` getting auto-filled. If *locations*, only the trace's visible locations are considered in the `fitbounds` computations. If *geojson*, the entire trace input `geojson` (if provided) is considered in the `fitbounds` computations, Defaults to *false*.", - "dflt": false, - "editType": "plot", - "valType": "enumerated", - "values": [ - false, - "locations", - "geojson" - ] + "valType": "flaglist" }, - "framecolor": { - "description": "Sets the color the frame.", - "dflt": "#444", - "editType": "plot", - "valType": "color" + "sendData": { + "description": "If *showLink* is true, does it contain data just link to a Chart Studio Cloud file?", + "dflt": true, + "valType": "boolean" }, - "framewidth": { - "description": "Sets the stroke width (in px) of the frame.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" + "setBackground": { + "description": "Set function to add the background color (i.e. `layout.paper_color`) to a different container. This function take the graph div as first argument and the current background color as second argument. Alternatively, set to string *opaque* to ensure there is white behind it.", + "dflt": "transparent", + "valType": "any" }, - "lakecolor": { - "description": "Sets the color of the lakes.", - "dflt": "#3399FF", - "editType": "plot", - "valType": "color" + "showAxisDragHandles": { + "description": "Set to *false* to omit cartesian axis pan/zoom drag handles.", + "dflt": true, + "valType": "boolean" }, - "landcolor": { - "description": "Sets the land mass color.", - "dflt": "#F0DC82", - "editType": "plot", - "valType": "color" + "showAxisRangeEntryBoxes": { + "description": "Set to *false* to omit direct range entry at the pan/zoom drag points, note that `showAxisDragHandles` must be enabled to have an effect.", + "dflt": true, + "valType": "boolean" }, - "lataxis": { - "dtick": { - "description": "Sets the graticule's longitude/latitude tick step.", - "editType": "plot", - "valType": "number" - }, - "editType": "plot", - "gridcolor": { - "description": "Sets the graticule's stroke color.", - "dflt": "#eee", - "editType": "plot", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "plot", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the graticule's stroke width (in px).", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "range": { - "description": "Sets the range of this axis (in degrees), sets the map's clipped coordinates.", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "number" - }, - { - "editType": "plot", - "valType": "number" - } - ], - "valType": "info_array" - }, - "role": "object", - "showgrid": { - "description": "Sets whether or not graticule are shown on the map.", + "showEditInChartStudio": { + "description": "Same as `showSendToCloud`, but use a pencil icon instead of a floppy-disk. Note that if both `showSendToCloud` and `showEditInChartStudio` are turned, only `showEditInChartStudio` will be honored.", "dflt": false, - "editType": "plot", "valType": "boolean" - }, - "tick0": { - "description": "Sets the graticule's starting tick longitude/latitude.", - "dflt": 0, - "editType": "plot", - "valType": "number" - } }, - "lonaxis": { - "dtick": { - "description": "Sets the graticule's longitude/latitude tick step.", - "editType": "plot", - "valType": "number" - }, - "editType": "plot", - "gridcolor": { - "description": "Sets the graticule's stroke color.", - "dflt": "#eee", - "editType": "plot", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "plot", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the graticule's stroke width (in px).", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "range": { - "description": "Sets the range of this axis (in degrees), sets the map's clipped coordinates.", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "number" - }, - { - "editType": "plot", - "valType": "number" - } - ], - "valType": "info_array" - }, - "role": "object", - "showgrid": { - "description": "Sets whether or not graticule are shown on the map.", + "showLink": { + "description": "Determines whether a link to Chart Studio Cloud is displayed at the bottom right corner of resulting graphs. Use with `sendData` and `linkText`.", "dflt": false, - "editType": "plot", "valType": "boolean" - }, - "tick0": { - "description": "Sets the graticule's starting tick longitude/latitude.", - "dflt": 0, - "editType": "plot", - "valType": "number" - } }, - "oceancolor": { - "description": "Sets the ocean color", - "dflt": "#3399FF", - "editType": "plot", - "valType": "color" + "showSendToCloud": { + "description": "Should we include a ModeBar button, labeled \"Edit in Chart Studio\", that sends this chart to chart-studio.plotly.com (formerly plot.ly) or another plotly server as specified by `plotlyServerURL` for editing, export, etc? Prior to version 1.43.0 this button was included by default, now it is opt-in using this flag. Note that this button can (depending on `plotlyServerURL` being set) send your data to an external server. However that server does not persist your data until you arrive at the Chart Studio and explicitly click \"Save\".", + "dflt": false, + "valType": "boolean" }, - "projection": { - "distance": { - "description": "For satellite projection type only. Sets the distance from the center of the sphere to the point of view as a proportion of the sphere’s radius.", - "dflt": 2, - "editType": "plot", - "min": 1.001, - "valType": "number" - }, - "editType": "plot", - "parallels": { - "description": "For conic projection types only. Sets the parallels (tangent, secant) where the cone intersects the sphere.", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "number" - }, - { - "editType": "plot", - "valType": "number" - } - ], - "valType": "info_array" - }, - "role": "object", - "rotation": { - "editType": "plot", - "lat": { - "description": "Rotates the map along meridians (in degrees North).", - "editType": "plot", - "valType": "number" - }, - "lon": { - "description": "Rotates the map along parallels (in degrees East). Defaults to the center of the `lonaxis.range` values.", - "editType": "plot", - "valType": "number" - }, - "role": "object", - "roll": { - "description": "Roll the map (in degrees) For example, a roll of *180* makes the map appear upside down.", - "editType": "plot", - "valType": "number" - } - }, - "scale": { - "description": "Zooms in or out on the map view. A scale of *1* corresponds to the largest zoom level that fits the map's lon and lat ranges. ", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tilt": { - "description": "For satellite projection type only. Sets the tilt angle of perspective projection.", - "dflt": 0, - "editType": "plot", - "valType": "number" - }, - "type": { - "description": "Sets the projection type.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "airy", - "aitoff", - "albers", - "albers usa", - "august", - "azimuthal equal area", - "azimuthal equidistant", - "baker", - "bertin1953", - "boggs", - "bonne", - "bottomley", - "bromley", - "collignon", - "conic conformal", - "conic equal area", - "conic equidistant", - "craig", - "craster", - "cylindrical equal area", - "cylindrical stereographic", - "eckert1", - "eckert2", - "eckert3", - "eckert4", - "eckert5", - "eckert6", - "eisenlohr", - "equal earth", - "equirectangular", - "fahey", - "foucaut", - "foucaut sinusoidal", - "ginzburg4", - "ginzburg5", - "ginzburg6", - "ginzburg8", - "ginzburg9", - "gnomonic", - "gringorten", - "gringorten quincuncial", - "guyou", - "hammer", - "hill", - "homolosine", - "hufnagel", - "hyperelliptical", - "kavrayskiy7", - "lagrange", - "larrivee", - "laskowski", - "loximuthal", - "mercator", - "miller", - "mollweide", - "mt flat polar parabolic", - "mt flat polar quartic", - "mt flat polar sinusoidal", - "natural earth", - "natural earth1", - "natural earth2", - "nell hammer", - "nicolosi", - "orthographic", - "patterson", - "peirce quincuncial", - "polyconic", - "rectangular polyconic", - "robinson", - "satellite", - "sinu mollweide", - "sinusoidal", - "stereographic", - "times", - "transverse mercator", - "van der grinten", - "van der grinten2", - "van der grinten3", - "van der grinten4", - "wagner4", - "wagner6", - "wiechel", - "winkel tripel", - "winkel3" - ] - } + "showSources": { + "description": "Adds a source-displaying function to show sources on the resulting graphs.", + "dflt": false, + "valType": "any" }, - "resolution": { - "coerceNumber": true, - "description": "Sets the resolution of the base layers. The values have units of km/mm e.g. 110 corresponds to a scale ratio of 1:110,000,000.", - "dflt": 110, - "editType": "plot", - "valType": "enumerated", - "values": [ - 110, - 50 - ] + "showTips": { + "description": "Determines whether or not tips are shown while interacting with the resulting graphs.", + "dflt": true, + "valType": "boolean" }, - "rivercolor": { - "description": "Sets color of the rivers.", - "dflt": "#3399FF", - "editType": "plot", - "valType": "color" + "staticPlot": { + "description": "Determines whether the graphs are interactive or not. If *false*, no interactivity, for export or image generation.", + "dflt": false, + "valType": "boolean" }, - "riverwidth": { - "description": "Sets the stroke width (in px) of the rivers.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" + "toImageButtonOptions": { + "description": "Statically override options for toImage modebar button allowed keys are format, filename, width, height, scale see ../components/modebar/buttons.js", + "dflt": {}, + "valType": "any" }, - "role": "object", - "scope": { - "description": "Set the scope of the map.", - "dflt": "world", - "editType": "plot", - "valType": "enumerated", - "values": [ - "africa", - "antarctica", - "asia", - "europe", - "north america", - "oceania", - "south america", - "usa", - "world" - ] + "topojsonURL": { + "description": "Set the URL to topojson used in geo charts. By default, the topojson files are fetched from cdn.plot.ly. For example, set this option to: /dist/topojson/ to render geographical feature using the topojson files that ship with the plotly.js module.", + "dflt": "https://cdn.plot.ly/un/", + "noBlank": true, + "valType": "string" }, - "showcoastlines": { - "description": "Sets whether or not the coastlines are drawn.", - "editType": "plot", - "valType": "boolean" + "typesetMath": { + "description": "Determines whether math should be typeset or not, when MathJax (either v2 or v3) is present on the page.", + "dflt": true, + "valType": "boolean" }, - "showcountries": { - "description": "Sets whether or not country boundaries are drawn.", - "editType": "plot", - "valType": "boolean" - }, - "showframe": { - "description": "Sets whether or not a frame is drawn around the map.", - "editType": "plot", - "valType": "boolean" - }, - "showlakes": { - "description": "Sets whether or not lakes are drawn.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showland": { - "description": "Sets whether or not land masses are filled in color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showocean": { - "description": "Sets whether or not oceans are filled in color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showrivers": { - "description": "Sets whether or not rivers are drawn.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showsubunits": { - "description": "Sets whether or not boundaries of subunits within countries (e.g. states, provinces) are drawn.", - "editType": "plot", - "valType": "boolean" - }, - "subunitcolor": { - "description": "Sets the color of the subunits boundaries.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "subunitwidth": { - "description": "Sets the stroke width (in px) of the subunits boundaries.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "uirevision": { - "description": "Controls persistence of user-driven changes in the view (projection and center). Defaults to `layout.uirevision`.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Sets the default visibility of the base layers.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - } - }, - "grid": { - "columns": { - "description": "The number of columns in the grid. If you provide a 2D `subplots` array, the length of its longest row is used as the default. If you give an `xaxes` array, its length is used as the default. But it's also possible to have a different length, if you want to leave a row at the end for non-cartesian subplots.", - "editType": "plot", - "min": 1, - "valType": "integer" - }, - "domain": { - "editType": "plot", - "role": "object", - "x": { - "description": "Sets the horizontal domain of this grid subplot (in plot fraction). The first and last cells end exactly at the domain edges, with no grout around the edges.", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this grid subplot (in plot fraction). The first and last cells end exactly at the domain edges, with no grout around the edges.", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - } - }, - "editType": "plot", - "pattern": { - "description": "If no `subplots`, `xaxes`, or `yaxes` are given but we do have `rows` and `columns`, we can generate defaults using consecutive axis IDs, in two ways: *coupled* gives one x axis per column and one y axis per row. *independent* uses a new xy pair for each cell, left-to-right across each row then iterating rows according to `roworder`.", - "dflt": "coupled", - "editType": "plot", - "valType": "enumerated", - "values": [ - "independent", - "coupled" - ] - }, - "role": "object", - "roworder": { - "description": "Is the first row the top or the bottom? Note that columns are always enumerated from left to right.", - "dflt": "top to bottom", - "editType": "plot", - "valType": "enumerated", - "values": [ - "top to bottom", - "bottom to top" - ] - }, - "rows": { - "description": "The number of rows in the grid. If you provide a 2D `subplots` array or a `yaxes` array, its length is used as the default. But it's also possible to have a different length, if you want to leave a row at the end for non-cartesian subplots.", - "editType": "plot", - "min": 1, - "valType": "integer" - }, - "subplots": { - "description": "Used for freeform grids, where some axes may be shared across subplots but others are not. Each entry should be a cartesian subplot id, like *xy* or *x3y2*, or ** to leave that cell empty. You may reuse x axes within the same column, and y axes within the same row. Non-cartesian subplots and traces that support `domain` can place themselves in this grid separately using the `gridcell` attribute.", - "dimensions": 2, - "editType": "plot", - "freeLength": true, - "items": { - "editType": "plot", - "valType": "enumerated", - "values": [ - "/^x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?$/", - "" - ] - }, - "valType": "info_array" - }, - "xaxes": { - "description": "Used with `yaxes` when the x and y axes are shared across columns and rows. Each entry should be an x axis id like *x*, *x2*, etc., or ** to not put an x axis in that column. Entries other than ** must be unique. Ignored if `subplots` is present. If missing but `yaxes` is present, will generate consecutive IDs.", - "editType": "plot", - "freeLength": true, - "items": { - "editType": "plot", - "valType": "enumerated", - "values": [ - "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", - "" - ] - }, - "valType": "info_array" - }, - "xgap": { - "description": "Horizontal space between grid cells, expressed as a fraction of the total width available to one cell. Defaults to 0.1 for coupled-axes grids and 0.2 for independent grids.", - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "xside": { - "description": "Sets where the x axis labels and titles go. *bottom* means the very bottom of the grid. *bottom plot* is the lowest plot that each x axis is used in. *top* and *top plot* are similar.", - "dflt": "bottom plot", - "editType": "plot", - "valType": "enumerated", - "values": [ - "bottom", - "bottom plot", - "top plot", - "top" - ] - }, - "yaxes": { - "description": "Used with `yaxes` when the x and y axes are shared across columns and rows. Each entry should be an y axis id like *y*, *y2*, etc., or ** to not put a y axis in that row. Entries other than ** must be unique. Ignored if `subplots` is present. If missing but `xaxes` is present, will generate consecutive IDs.", - "editType": "plot", - "freeLength": true, - "items": { - "editType": "plot", - "valType": "enumerated", - "values": [ - "/^y([2-9]|[1-9][0-9]+)?( domain)?$/", - "" - ] - }, - "valType": "info_array" - }, - "ygap": { - "description": "Vertical space between grid cells, expressed as a fraction of the total height available to one cell. Defaults to 0.1 for coupled-axes grids and 0.3 for independent grids.", - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "yside": { - "description": "Sets where the y axis labels and titles go. *left* means the very left edge of the grid. *left plot* is the leftmost plot that each y axis is used in. *right* and *right plot* are similar.", - "dflt": "left plot", - "editType": "plot", - "valType": "enumerated", - "values": [ - "left", - "left plot", - "right plot", - "right" - ] - } - }, - "height": { - "description": "Sets the plot's height (in px).", - "dflt": 450, - "editType": "plot", - "min": 10, - "valType": "number" - }, - "hidesources": { - "description": "Determines whether or not a text link citing the data source is placed at the bottom-right cored of the figure. Has only an effect only on graphs that have been generated via forked graphs from the Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise).", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "hoverdistance": { - "description": "Sets the default distance (in pixels) to look for data to add hover labels (-1 means no cutoff, 0 means no looking for data). This is only a real distance for hovering on point-like objects, like scatter points. For area-like objects (bars, scatter fills, etc) hovering is on inside the area and off outside, but these objects will not supersede hover on point-like objects in case of conflict.", - "dflt": 20, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "hoverlabel": { - "align": { - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "bgcolor": { - "description": "Sets the background color of all hover labels on graph", - "editType": "none", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the border color of all hover labels on graph.", - "editType": "none", - "valType": "color" - }, - "editType": "none", - "font": { - "color": { - "editType": "none", - "valType": "color" - }, - "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.", - "dflt": "Arial, sans-serif", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "size": { - "dflt": 13, - "editType": "none", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "grouptitlefont": { - "color": { - "editType": "none", - "valType": "color" - }, - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "size": { - "editType": "none", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "namelength": { - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" + "watermark": { + "description": "watermark the images with the company's logo", + "dflt": false, + "valType": "boolean" } - }, - "hovermode": { - "description": "Determines the mode of hover interactions. If *closest*, a single hoverlabel will appear for the *closest* point within the `hoverdistance`. If *x* (or *y*), multiple hoverlabels will appear for multiple points at the *closest* x- (or y-) coordinate within the `hoverdistance`, with the caveat that no more than one hoverlabel will appear per trace. If *x unified* (or *y unified*), a single hoverlabel will appear multiple points at the closest x- (or y-) coordinate within the `hoverdistance` with the caveat that no more than one hoverlabel will appear per trace. In this mode, spikelines are enabled by default perpendicular to the specified axis. If false, hover interactions are disabled.", - "dflt": "closest", - "editType": "modebar", - "valType": "enumerated", - "values": [ - "x", - "y", - "closest", - false, - "x unified", - "y unified" - ] - }, - "hoversubplots": { - "description": "Determines expansion of hover effects to other subplots If *single* just the axis pair of the primary point is included without overlaying subplots. If *overlaying* all subplots using the main axis and occupying the same space are included. If *axis*, also include stacked subplots using the same axis when `hovermode` is set to *x*, *x unified*, *y* or *y unified*.", - "dflt": "overlaying", - "editType": "none", - "valType": "enumerated", - "values": [ - "single", - "overlaying", - "axis" - ] - }, - "images": { - "items": { - "image": { - "editType": "arraydraw", - "layer": { - "description": "Specifies whether images are drawn below or above traces. When `xref` and `yref` are both set to `paper`, image is drawn below the entire plot area.", - "dflt": "above", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "below", - "above" - ] - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "none", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the image.", - "dflt": 1, - "editType": "arraydraw", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "sizex": { - "description": "Sets the image container size horizontally. The image will be sized based on the `position` value. When `xref` is set to `paper`, units are sized relative to the plot width. When `xref` ends with ` domain`, units are sized relative to the axis width.", - "dflt": 0, - "editType": "arraydraw", - "valType": "number" - }, - "sizey": { - "description": "Sets the image container size vertically. The image will be sized based on the `position` value. When `yref` is set to `paper`, units are sized relative to the plot height. When `yref` ends with ` domain`, units are sized relative to the axis height.", - "dflt": 0, - "editType": "arraydraw", - "valType": "number" + }, + "defs": { + "editType": { + "layout": { + "description": "layout attributes should include an `editType` string matching this flaglist. *calc* is the most extensive: a full (re)plot starting by clearing `gd.calcdata` to force it to be regenerated *plot* (re)plots but without first clearing `gd.calcdata`. *legend* only redraws the legend. *ticks* only redraws axis ticks, labels, and gridlines. *axrange* minimal sequence when updating axis ranges. *layoutstyle* reapplies global and SVG cartesian axis styles. *modebar* just updates the modebar. *camera* just updates the camera settings for gl3d scenes. *arraydraw* allows component arrays to invoke the redraw routines just for the component(s) that changed. *colorbars* only redraws colorbars.", + "extras": [ + "none" + ], + "flags": [ + "calc", + "plot", + "legend", + "ticks", + "axrange", + "layoutstyle", + "modebar", + "camera", + "arraydraw", + "colorbars" + ], + "valType": "flaglist" }, - "sizing": { - "description": "Specifies which dimension of the image to constrain.", - "dflt": "contain", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "fill", - "contain", - "stretch" - ] + "traces": { + "description": "trace attributes should include an `editType` string matching this flaglist. *calc* is the most extensive: a full (re)plot starting by clearing `gd.calcdata` to force it to be regenerated *clearAxisTypes* resets the types of the axes this trace is on, because new data could cause the automatic axis type detection to change. Log type will not be cleared, as that is never automatically chosen so must have been user-specified. *plot* (re)plots but without first clearing `gd.calcdata`. *style* only calls `module.style` (or module.editStyle) for all trace modules and redraws the legend. *markerSize* is like *style*, but propagate axis-range changes due to scatter `marker.size` *colorbars* only redraws colorbars.", + "extras": [ + "none" + ], + "flags": [ + "calc", + "clearAxisTypes", + "plot", + "style", + "markerSize", + "colorbars" + ], + "valType": "flaglist" + } + }, + "impliedEdits": { + "description": "Sometimes when an attribute is changed, other attributes must be altered as well in order to achieve the intended result. For example, when `range` is specified, it is important to set `autorange` to `false` or the new `range` value would be lost in the redraw. `impliedEdits` is the mechanism to do this: `impliedEdits: {autorange: false}`. Each key is a relative paths to the attribute string to change, using *^* to ascend into the parent container, for example `range[0]` has `impliedEdits: {*^autorange*: false}`. A value of `undefined` means that the attribute will not be changed, but its previous value should be recorded in case we want to reverse this change later. For example, `autorange` has `impliedEdits: {*range[0]*: undefined, *range[1]*:undefined} because the range will likely be changed by redraw." + }, + "metaKeys": [ + "_isSubplotObj", + "_isLinkedToArray", + "_arrayAttrRegexps", + "_deprecated", + "description", + "role", + "editType", + "impliedEdits" + ], + "valObjects": { + "angle": { + "description": "A number (in degree) between -180 and 180.", + "otherOpts": [ + "dflt", + "arrayOk" + ], + "requiredOpts": [] + }, + "any": { + "description": "Any type.", + "otherOpts": [ + "dflt", + "values", + "arrayOk" + ], + "requiredOpts": [] }, - "source": { - "description": "Specifies the URL of the image to be used. The URL must be accessible from the domain where the plot code is run, and can be either relative or absolute.", - "editType": "arraydraw", - "valType": "string" + "boolean": { + "description": "A boolean (true/false) value.", + "otherOpts": [ + "dflt", + "arrayOk" + ], + "requiredOpts": [] }, - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" + "color": { + "description": "A string describing color. Supported formats: - hex (e.g. '#d3d3d3') - rgb (e.g. 'rgb(255, 0, 0)') - rgba (e.g. 'rgb(255, 0, 0, 0.5)') - hsl (e.g. 'hsl(0, 100%, 50%)') - hsv (e.g. 'hsv(0, 100%, 100%)') - named colors (full list: http://www.w3.org/TR/css3-color/#svg-color)", + "otherOpts": [ + "dflt", + "arrayOk" + ], + "requiredOpts": [] }, - "visible": { - "description": "Determines whether or not this image is visible.", - "dflt": true, - "editType": "arraydraw", - "valType": "boolean" + "colorlist": { + "description": "A list of colors. Must be an {array} containing valid colors.", + "otherOpts": [ + "dflt" + ], + "requiredOpts": [] }, - "x": { - "description": "Sets the image's x position. When `xref` is set to `paper`, units are sized relative to the plot height. See `xref` for more info", - "dflt": 0, - "editType": "arraydraw", - "valType": "any" + "colorscale": { + "description": "A Plotly colorscale either picked by a name: (any of Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis ) customized as an {array} of 2-element {arrays} where the first element is the normalized color level value (starting at *0* and ending at *1*), and the second item is a valid color string.", + "otherOpts": [ + "dflt" + ], + "requiredOpts": [] }, - "xanchor": { - "description": "Sets the anchor for the x position", - "dflt": "left", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] + "data_array": { + "description": "An {array} of data. The value must represent an {array} or it will be ignored, but this array can be provided in several forms: (1) a regular {array} object (2) a typed array (e.g. Float32Array) (3) an object with keys dtype, bdata, and optionally shape. In this 3rd form, dtype is one of *f8*, *f4*. *i4*, *u4*, *i2*, *u2*, *i1*, *u1* or *u1c* for Uint8ClampedArray. In addition to shorthand `dtype` above one could also use the following forms: *float64*, *float32*, *int32*, *uint32*, *int16*, *uint16*, *int8*, *uint8* or *uint8c* for Uint8ClampedArray. `bdata` is either a base64-encoded string or the ArrayBuffer of an integer or float typed array. For either multi-dimensional arrays you must also provide its dimensions separated by comma via `shape`. For example using `dtype`: *f4* and `shape`: *5,100* you can declare a 2-D array that has 5 rows and 100 columns containing float32 values i.e. 4 bits per value. `shape` is optional for one dimensional arrays.", + "otherOpts": [ + "dflt" + ], + "requiredOpts": [] + }, + "enumerated": { + "description": "Enumerated value type. The available values are listed in `values`.", + "otherOpts": [ + "dflt", + "coerceNumber", + "arrayOk" + ], + "requiredOpts": [ + "values" + ] }, - "xref": { - "description": "Sets the images's x coordinate axis. If set to a x axis id (e.g. *x* or *x2*), the `x` position refers to a x coordinate. If set to *paper*, the `x` position refers to the distance from the left of the plotting area in normalized coordinates where *0* (*1*) corresponds to the left (right). If set to a x axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the left of the domain of that axis: e.g., *x2 domain* refers to the domain of the second x axis and a x position of 0.5 refers to the point between the left and the right of the domain of the second x axis.", - "dflt": "paper", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "paper", - "/^x([2-9]|[1-9][0-9]+)?( domain)?$/" - ] + "flaglist": { + "description": "A string representing a combination of flags (order does not matter here). Combine any of the available `flags` with *+*. (e.g. ('lines+markers')). Values in `extras` cannot be combined.", + "otherOpts": [ + "dflt", + "extras", + "arrayOk" + ], + "requiredOpts": [ + "flags" + ] }, - "y": { - "description": "Sets the image's y position. When `yref` is set to `paper`, units are sized relative to the plot height. See `yref` for more info", - "dflt": 0, - "editType": "arraydraw", - "valType": "any" + "info_array": { + "description": "An {array} of plot information.", + "otherOpts": [ + "dflt", + "freeLength", + "dimensions" + ], + "requiredOpts": [ + "items" + ] }, - "yanchor": { - "description": "Sets the anchor for the y position.", - "dflt": "top", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] + "integer": { + "description": "An integer or an integer inside a string. When applicable, values greater (less) than `max` (`min`) are coerced to the `dflt`.", + "otherOpts": [ + "dflt", + "min", + "max", + "arrayOk", + "extras" + ], + "requiredOpts": [] + }, + "number": { + "description": "A number or a numeric value (e.g. a number inside a string). When applicable, values greater (less) than `max` (`min`) are coerced to the `dflt`.", + "otherOpts": [ + "dflt", + "min", + "max", + "arrayOk" + ], + "requiredOpts": [] + }, + "string": { + "description": "A string value. Numbers are converted to strings except for attributes with `strict` set to true.", + "otherOpts": [ + "dflt", + "noBlank", + "strict", + "arrayOk", + "values" + ], + "requiredOpts": [] }, - "yref": { - "description": "Sets the images's y coordinate axis. If set to a y axis id (e.g. *y* or *y2*), the `y` position refers to a y coordinate. If set to *paper*, the `y` position refers to the distance from the bottom of the plotting area in normalized coordinates where *0* (*1*) corresponds to the bottom (top). If set to a y axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the bottom of the domain of that axis: e.g., *y2 domain* refers to the domain of the second y axis and a y position of 0.5 refers to the point between the bottom and the top of the domain of the second y axis.", - "dflt": "paper", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "paper", - "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" - ] + "subplotid": { + "description": "An id string of a subplot type (given by dflt), optionally followed by an integer >1. e.g. if dflt='geo', we can have 'geo', 'geo2', 'geo3', ...", + "otherOpts": [ + "regex", + "arrayOk" + ], + "requiredOpts": [ + "dflt" + ] + } + } + }, + "frames": { + "items": { + "frames_entry": { + "baseframe": { + "description": "The name of the frame into which this frame's properties are merged before applying. This is used to unify properties and avoid needing to specify the same values for the same properties in multiple frames.", + "valType": "string" + }, + "data": { + "description": "A list of traces this frame modifies. The format is identical to the normal trace definition.", + "valType": "any" + }, + "group": { + "description": "An identifier that specifies the group to which the frame belongs, used by animate to select a subset of frames.", + "valType": "string" + }, + "layout": { + "description": "Layout properties which this frame modifies. The format is identical to the normal layout definition.", + "valType": "any" + }, + "name": { + "description": "A label by which to identify the frame", + "valType": "string" + }, + "role": "object", + "traces": { + "description": "A list of trace indices that identify the respective traces in the data attribute", + "valType": "any" + } } - } }, "role": "object" - }, - "legend": { - "_isSubplotObj": true, - "bgcolor": { - "description": "Sets the legend background color. Defaults to `layout.paper_bgcolor`.", - "editType": "legend", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the color of the border enclosing the legend.", - "dflt": "#444", - "editType": "legend", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) of the border enclosing the legend.", - "dflt": 0, - "editType": "legend", - "min": 0, - "valType": "number" - }, - "editType": "legend", - "entrywidth": { - "description": "Sets the width (in px or fraction) of the legend. Use 0 to size the entry based on the text width, when `entrywidthmode` is set to *pixels*.", - "editType": "legend", - "min": 0, - "valType": "number" - }, - "entrywidthmode": { - "description": "Determines what entrywidth means.", - "dflt": "pixels", - "editType": "legend", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "font": { - "color": { - "editType": "legend", - "valType": "color" - }, - "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.", - "editType": "legend", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "legend", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "legend", - "valType": "string" - }, - "size": { - "editType": "legend", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "legend", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "legend", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "legend", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "legend", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "groupclick": { - "description": "Determines the behavior on legend group item click. *toggleitem* toggles the visibility of the individual item clicked on the graph. *togglegroup* toggles the visibility of all items in the same legendgroup as the item clicked on the graph.", - "dflt": "togglegroup", - "editType": "legend", - "valType": "enumerated", - "values": [ - "toggleitem", - "togglegroup" - ] - }, - "grouptitlefont": { - "color": { - "editType": "legend", - "valType": "color" - }, - "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.", - "editType": "legend", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "legend", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "legend", - "valType": "string" - }, - "size": { - "editType": "legend", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "legend", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "legend", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "legend", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "legend", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "indentation": { - "description": "Sets the indentation (in px) of the legend entries.", - "dflt": 0, - "editType": "legend", - "min": -15, - "valType": "number" - }, - "itemclick": { - "description": "Determines the behavior on legend item click. *toggle* toggles the visibility of the item clicked on the graph. *toggleothers* makes the clicked item the sole visible item on the graph. *false* disables legend item click interactions.", - "dflt": "toggle", - "editType": "legend", - "valType": "enumerated", - "values": [ - "toggle", - "toggleothers", - false - ] - }, - "itemdoubleclick": { - "description": "Determines the behavior on legend item double-click. *toggle* toggles the visibility of the item clicked on the graph. *toggleothers* makes the clicked item the sole visible item on the graph. *false* disables legend item double-click interactions.", - "dflt": "toggleothers", - "editType": "legend", - "valType": "enumerated", - "values": [ - "toggle", - "toggleothers", - false - ] - }, - "itemsizing": { - "description": "Determines if the legend items symbols scale with their corresponding *trace* attributes or remain *constant* independent of the symbol size on the graph.", - "dflt": "trace", - "editType": "legend", - "valType": "enumerated", - "values": [ - "trace", - "constant" - ] - }, - "itemwidth": { - "description": "Sets the width (in px) of the legend item symbols (the part other than the title.text).", - "dflt": 30, - "editType": "legend", - "min": 30, - "valType": "number" - }, - "maxheight": { - "description": "Sets the max height (in px) of the legend, or max height ratio (reference height * ratio) if less than or equal to 1. Default value is: 0.5 for horizontal legends; 1 for vertical legends. The minimum allowed height is 30px. For a ratio of 0.5, the legend will take up to 50% of the reference height before displaying a scrollbar. The reference height is the full layout height with the following exception: vertically oriented legends with a `yref` of `\"paper\", located to the side of the plot. In this case, the reference height is the plot height.", - "editType": "legend", - "min": 0, - "valType": "number" - }, - "orientation": { - "description": "Sets the orientation of the legend.", - "dflt": "v", - "editType": "legend", - "valType": "enumerated", - "values": [ - "v", - "h" - ] - }, - "role": "object", - "title": { - "editType": "legend", - "font": { - "color": { - "editType": "legend", - "valType": "color" + }, + "layout": { + "layoutAttributes": { + "activeselection": { + "editType": "none", + "fillcolor": { + "description": "Sets the color filling the active selection' interior.", + "dflt": "rgba(0,0,0,0)", + "editType": "none", + "valType": "color" + }, + "opacity": { + "description": "Sets the opacity of the active selection.", + "dflt": 0.5, + "editType": "none", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" }, - "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.", - "editType": "legend", - "noBlank": true, - "strict": true, - "valType": "string" + "activeshape": { + "editType": "none", + "fillcolor": { + "description": "Sets the color filling the active shape' interior.", + "dflt": "rgb(255,0,255)", + "editType": "none", + "valType": "color" + }, + "opacity": { + "description": "Sets the opacity of the active shape.", + "dflt": 0.5, + "editType": "none", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "legend", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "annotations": { + "items": { + "annotation": { + "align": { + "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", + "dflt": "center", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "arrowcolor": { + "description": "Sets the color of the annotation arrow.", + "editType": "arraydraw", + "valType": "color" + }, + "arrowhead": { + "description": "Sets the end annotation arrow head style.", + "dflt": 1, + "editType": "arraydraw", + "max": 8, + "min": 0, + "valType": "integer" + }, + "arrowside": { + "description": "Sets the annotation arrow head position.", + "dflt": "end", + "editType": "arraydraw", + "extras": [ + "none" + ], + "flags": [ + "end", + "start" + ], + "valType": "flaglist" + }, + "arrowsize": { + "description": "Sets the size of the end annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line.", + "dflt": 1, + "editType": "calc+arraydraw", + "min": 0.3, + "valType": "number" + }, + "arrowwidth": { + "description": "Sets the width (in px) of annotation arrow line.", + "editType": "calc+arraydraw", + "min": 0.1, + "valType": "number" + }, + "ax": { + "description": "Sets the x component of the arrow tail about the arrow head. If `axref` is `pixel`, a positive (negative) component corresponds to an arrow pointing from right to left (left to right). If `axref` is not `pixel` and is exactly the same as `xref`, this is an absolute value on that axis, like `x`, specified in the same coordinates as `xref`.", + "editType": "calc+arraydraw", + "valType": "any" + }, + "axref": { + "description": "Indicates in what coordinates the tail of the annotation (ax,ay) is specified. If set to a x axis id (e.g. *x* or *x2*), the `x` position refers to a x coordinate. If set to *paper*, the `x` position refers to the distance from the left of the plotting area in normalized coordinates where *0* (*1*) corresponds to the left (right). If set to a x axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the left of the domain of that axis: e.g., *x2 domain* refers to the domain of the second x axis and a x position of 0.5 refers to the point between the left and the right of the domain of the second x axis. In order for absolute positioning of the arrow to work, *axref* must be exactly the same as *xref*, otherwise *axref* will revert to *pixel* (explained next). For relative positioning, *axref* can be set to *pixel*, in which case the *ax* value is specified in pixels relative to *x*. Absolute positioning is useful for trendline annotations which should continue to indicate the correct trend when zoomed. Relative positioning is useful for specifying the text offset for an annotated point.", + "dflt": "pixel", + "editType": "calc", + "valType": "enumerated", + "values": [ + "pixel", + "/^x([2-9]|[1-9][0-9]+)?( domain)?$/" + ] + }, + "ay": { + "description": "Sets the y component of the arrow tail about the arrow head. If `ayref` is `pixel`, a positive (negative) component corresponds to an arrow pointing from bottom to top (top to bottom). If `ayref` is not `pixel` and is exactly the same as `yref`, this is an absolute value on that axis, like `y`, specified in the same coordinates as `yref`.", + "editType": "calc+arraydraw", + "valType": "any" + }, + "ayref": { + "description": "Indicates in what coordinates the tail of the annotation (ax,ay) is specified. If set to a y axis id (e.g. *y* or *y2*), the `y` position refers to a y coordinate. If set to *paper*, the `y` position refers to the distance from the bottom of the plotting area in normalized coordinates where *0* (*1*) corresponds to the bottom (top). If set to a y axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the bottom of the domain of that axis: e.g., *y2 domain* refers to the domain of the second y axis and a y position of 0.5 refers to the point between the bottom and the top of the domain of the second y axis. In order for absolute positioning of the arrow to work, *ayref* must be exactly the same as *yref*, otherwise *ayref* will revert to *pixel* (explained next). For relative positioning, *ayref* can be set to *pixel*, in which case the *ay* value is specified in pixels relative to *y*. Absolute positioning is useful for trendline annotations which should continue to indicate the correct trend when zoomed. Relative positioning is useful for specifying the text offset for an annotated point.", + "dflt": "pixel", + "editType": "calc", + "valType": "enumerated", + "values": [ + "pixel", + "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" + ] + }, + "bgcolor": { + "description": "Sets the background color of the annotation.", + "dflt": "rgba(0,0,0,0)", + "editType": "arraydraw", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the color of the border enclosing the annotation `text`.", + "dflt": "rgba(0,0,0,0)", + "editType": "arraydraw", + "valType": "color" + }, + "borderpad": { + "description": "Sets the padding (in px) between the `text` and the enclosing border.", + "dflt": 1, + "editType": "calc+arraydraw", + "min": 0, + "valType": "number" + }, + "borderwidth": { + "description": "Sets the width (in px) of the border enclosing the annotation `text`.", + "dflt": 1, + "editType": "calc+arraydraw", + "min": 0, + "valType": "number" + }, + "captureevents": { + "description": "Determines whether the annotation text box captures mouse move and click events, or allows those events to pass through to data points in the plot that may be behind the annotation. By default `captureevents` is *false* unless `hovertext` is provided. If you use the event `plotly_clickannotation` without `hovertext` you must explicitly enable `captureevents`.", + "editType": "arraydraw", + "valType": "boolean" + }, + "clicktoshow": { + "description": "Makes this annotation respond to clicks on the plot. If you click a data point that exactly matches the `x` and `y` values of this annotation, and it is hidden (visible: false), it will appear. In *onoff* mode, you must click the same point again to make it disappear, so if you click multiple points, you can show multiple annotations. In *onout* mode, a click anywhere else in the plot (on another data point or not) will hide this annotation. If you need to show/hide this annotation in response to different `x` or `y` values, you can set `xclick` and/or `yclick`. This is useful for example to label the side of a bar. To label markers though, `standoff` is preferred over `xclick` and `yclick`.", + "dflt": false, + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + false, + "onoff", + "onout" + ] + }, + "editType": "calc", + "font": { + "color": { + "editType": "arraydraw", + "valType": "color" + }, + "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.", + "editType": "calc+arraydraw", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc+arraydraw", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc+arraydraw", + "valType": "string" + }, + "size": { + "editType": "calc+arraydraw", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc+arraydraw", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "height": { + "description": "Sets an explicit height for the text box. null (default) lets the text set the box height. Taller text will be clipped.", + "dflt": null, + "editType": "calc+arraydraw", + "min": 1, + "valType": "number" + }, + "hoverlabel": { + "bgcolor": { + "description": "Sets the background color of the hover label. By default uses the annotation's `bgcolor` made opaque, or white if it was transparent.", + "editType": "arraydraw", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the border color of the hover label. By default uses either dark grey or white, for maximum contrast with `hoverlabel.bgcolor`.", + "editType": "arraydraw", + "valType": "color" + }, + "editType": "arraydraw", + "font": { + "color": { + "editType": "arraydraw", + "valType": "color" + }, + "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.", + "editType": "arraydraw", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "arraydraw", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "arraydraw", + "valType": "string" + }, + "size": { + "editType": "arraydraw", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "arraydraw", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object" + }, + "hovertext": { + "description": "Sets text to appear when hovering over this annotation. If omitted or blank, no hover label will appear.", + "editType": "arraydraw", + "valType": "string" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "none", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the annotation (text + arrow).", + "dflt": 1, + "editType": "arraydraw", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "showarrow": { + "description": "Determines whether or not the annotation is drawn with an arrow. If *true*, `text` is placed near the arrow's tail. If *false*, `text` lines up with the `x` and `y` provided.", + "dflt": true, + "editType": "calc+arraydraw", + "valType": "boolean" + }, + "standoff": { + "description": "Sets a distance, in pixels, to move the end arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount.", + "dflt": 0, + "editType": "calc+arraydraw", + "min": 0, + "valType": "number" + }, + "startarrowhead": { + "description": "Sets the start annotation arrow head style.", + "dflt": 1, + "editType": "arraydraw", + "max": 8, + "min": 0, + "valType": "integer" + }, + "startarrowsize": { + "description": "Sets the size of the start annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line.", + "dflt": 1, + "editType": "calc+arraydraw", + "min": 0.3, + "valType": "number" + }, + "startstandoff": { + "description": "Sets a distance, in pixels, to move the start arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount.", + "dflt": 0, + "editType": "calc+arraydraw", + "min": 0, + "valType": "number" + }, + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "text": { + "description": "Sets the text associated with this annotation. Plotly uses a subset of HTML tags to do things like newline (`
`), bold (``), italics (``), hyperlinks (``). Tags ``, ``, ``, ``, ``, and `` are also supported.", + "editType": "calc+arraydraw", + "valType": "string" + }, + "textangle": { + "description": "Sets the angle at which the `text` is drawn with respect to the horizontal.", + "dflt": 0, + "editType": "calc+arraydraw", + "valType": "angle" + }, + "valign": { + "description": "Sets the vertical alignment of the `text` within the box. Has an effect only if an explicit height is set to override the text height.", + "dflt": "middle", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "visible": { + "description": "Determines whether or not this annotation is visible.", + "dflt": true, + "editType": "calc+arraydraw", + "valType": "boolean" + }, + "width": { + "description": "Sets an explicit width for the text box. null (default) lets the text set the box width. Wider text will be clipped. There is no automatic wrapping; use
to start a new line.", + "dflt": null, + "editType": "calc+arraydraw", + "min": 1, + "valType": "number" + }, + "x": { + "description": "Sets the annotation's x position. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc+arraydraw", + "valType": "any" + }, + "xanchor": { + "description": "Sets the text box's horizontal position anchor This anchor binds the `x` position to the *left*, *center* or *right* of the annotation. For example, if `x` is set to 1, `xref` to *paper* and `xanchor` to *right* then the right-most portion of the annotation lines up with the right-most edge of the plotting area. If *auto*, the anchor is equivalent to *center* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side.", + "dflt": "auto", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ] + }, + "xclick": { + "description": "Toggle this annotation when clicking a data point whose `x` value is `xclick` rather than the annotation's `x` value.", + "editType": "arraydraw", + "valType": "any" + }, + "xref": { + "description": "Sets the annotation's x coordinate axis. If set to a x axis id (e.g. *x* or *x2*), the `x` position refers to a x coordinate. If set to *paper*, the `x` position refers to the distance from the left of the plotting area in normalized coordinates where *0* (*1*) corresponds to the left (right). If set to a x axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the left of the domain of that axis: e.g., *x2 domain* refers to the domain of the second x axis and a x position of 0.5 refers to the point between the left and the right of the domain of the second x axis.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "paper", + "/^x([2-9]|[1-9][0-9]+)?( domain)?$/" + ] + }, + "xshift": { + "description": "Shifts the position of the whole annotation and arrow to the right (positive) or left (negative) by this many pixels.", + "dflt": 0, + "editType": "calc+arraydraw", + "valType": "number" + }, + "y": { + "description": "Sets the annotation's y position. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc+arraydraw", + "valType": "any" + }, + "yanchor": { + "description": "Sets the text box's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the annotation. For example, if `y` is set to 1, `yref` to *paper* and `yanchor` to *top* then the top-most portion of the annotation lines up with the top-most edge of the plotting area. If *auto*, the anchor is equivalent to *middle* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side.", + "dflt": "auto", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ] + }, + "yclick": { + "description": "Toggle this annotation when clicking a data point whose `y` value is `yclick` rather than the annotation's `y` value.", + "editType": "arraydraw", + "valType": "any" + }, + "yref": { + "description": "Sets the annotation's y coordinate axis. If set to a y axis id (e.g. *y* or *y2*), the `y` position refers to a y coordinate. If set to *paper*, the `y` position refers to the distance from the bottom of the plotting area in normalized coordinates where *0* (*1*) corresponds to the bottom (top). If set to a y axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the bottom of the domain of that axis: e.g., *y2 domain* refers to the domain of the second y axis and a y position of 0.5 refers to the point between the bottom and the top of the domain of the second y axis.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "paper", + "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" + ] + }, + "yshift": { + "description": "Shifts the position of the whole annotation and arrow up (positive) or down (negative) by this many pixels.", + "dflt": 0, + "editType": "calc+arraydraw", + "valType": "number" + } + } + }, + "role": "object" }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "legend", - "valType": "string" + "autosize": { + "description": "Determines whether or not a layout width or height that has been left undefined by the user is initialized on each relayout. Note that, regardless of this attribute, an undefined layout width or height is always initialized on the first call to plot.", + "dflt": false, + "editType": "none", + "valType": "boolean" }, - "size": { - "editType": "legend", - "min": 1, - "valType": "number" + "autotypenumbers": { + "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. This is the default value; however it could be overridden for individual axes.", + "dflt": "convert types", + "editType": "calc", + "valType": "enumerated", + "values": [ + "convert types", + "strict" + ] }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "legend", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "calendar": { + "description": "Sets the default calendar system to use for interpreting and displaying dates throughout the plot.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "legend", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "legend", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "legend", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of legend's title with respect to the legend items. Defaulted to *top* with `orientation` is *h*. Defaulted to *left* with `orientation` is *v*. The *top left* options could be used to expand top center and top right are for horizontal alignment legend area in both x and y sides.", - "editType": "legend", - "valType": "enumerated", - "values": [ - "top", - "left", - "top left", - "top center", - "top right" - ] - }, - "text": { - "description": "Sets the title of the legend.", - "dflt": "", - "editType": "legend", - "valType": "string" - } - }, - "tracegroupgap": { - "description": "Sets the amount of vertical space (in px) between legend groups.", - "dflt": 10, - "editType": "legend", - "min": 0, - "valType": "number" - }, - "traceorder": { - "description": "Determines the order at which the legend items are displayed. If *normal*, the items are displayed top-to-bottom in the same order as the input data. If *reversed*, the items are displayed in the opposite order as *normal*. If *grouped*, the items are displayed in groups (when a trace `legendgroup` is provided). if *grouped+reversed*, the items are displayed in the opposite order as *grouped*.", - "editType": "legend", - "extras": [ - "normal" - ], - "flags": [ - "reversed", - "grouped" - ], - "valType": "flaglist" - }, - "uirevision": { - "description": "Controls persistence of legend-driven changes in trace and pie label visibility. Defaults to `layout.uirevision`.", - "editType": "none", - "valType": "any" - }, - "valign": { - "description": "Sets the vertical alignment of the symbols with respect to their associated text.", - "dflt": "middle", - "editType": "legend", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "visible": { - "description": "Determines whether or not this legend is visible.", - "dflt": true, - "editType": "legend", - "valType": "boolean" - }, - "x": { - "description": "Sets the x position with respect to `xref` (in normalized coordinates) of the legend. When `xref` is *paper*, defaults to *1.02* for vertical legends and defaults to *0* for horizontal legends. When `xref` is *container*, defaults to *1* for vertical legends and defaults to *0* for horizontal legends. Must be between *0* and *1* if `xref` is *container*. and between *-2* and *3* if `xref` is *paper*.", - "editType": "legend", - "valType": "number" - }, - "xanchor": { - "description": "Sets the legend's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the legend. Value *auto* anchors legends to the right for `x` values greater than or equal to 2/3, anchors legends to the left for `x` values less than or equal to 1/3 and anchors legends with respect to their center otherwise.", - "dflt": "left", - "editType": "legend", - "valType": "enumerated", - "values": [ - "auto", - "left", - "center", - "right" - ] - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "layoutstyle", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` (in normalized coordinates) of the legend. When `yref` is *paper*, defaults to *1* for vertical legends, defaults to *-0.1* for horizontal legends on graphs w/o range sliders and defaults to *1.1* for horizontal legends on graph with one or multiple range sliders. When `yref` is *container*, defaults to *1*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "legend", - "valType": "number" - }, - "yanchor": { - "description": "Sets the legend's vertical position anchor. This anchor binds the `y` position to the *top*, *middle* or *bottom* of the legend. Value *auto* anchors legends at their bottom for `y` values less than or equal to 1/3, anchors legends to at their top for `y` values greater than or equal to 2/3 and anchors legends with respect to their middle otherwise.", - "editType": "legend", - "valType": "enumerated", - "values": [ - "auto", - "top", - "middle", - "bottom" - ] - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "layoutstyle", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "map": { - "_arrayAttrRegexps": [ - {} - ], - "_isSubplotObj": true, - "bearing": { - "description": "Sets the bearing angle of the map in degrees counter-clockwise from North (map.bearing).", - "dflt": 0, - "editType": "plot", - "valType": "number" - }, - "bounds": { - "east": { - "description": "Sets the maximum longitude of the map (in degrees East) if `west`, `south` and `north` are declared.", - "editType": "plot", - "valType": "number" - }, - "editType": "plot", - "north": { - "description": "Sets the maximum latitude of the map (in degrees North) if `east`, `west` and `south` are declared.", - "editType": "plot", - "valType": "number" - }, - "role": "object", - "south": { - "description": "Sets the minimum latitude of the map (in degrees North) if `east`, `west` and `north` are declared.", - "editType": "plot", - "valType": "number" - }, - "west": { - "description": "Sets the minimum longitude of the map (in degrees East) if `east`, `south` and `north` are declared.", - "editType": "plot", - "valType": "number" - } - }, - "center": { - "editType": "plot", - "lat": { - "description": "Sets the latitude of the center of the map (in degrees North).", - "dflt": 0, - "editType": "plot", - "valType": "number" - }, - "lon": { - "description": "Sets the longitude of the center of the map (in degrees East).", - "dflt": 0, - "editType": "plot", - "valType": "number" - }, - "role": "object" - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this map subplot .", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "editType": "plot", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this map subplot .", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this map subplot (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this map subplot (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - } - }, - "editType": "plot", - "layers": { - "items": { - "layer": { - "below": { - "description": "Determines if the layer will be inserted before the layer with the specified ID. If omitted or set to '', the layer will be inserted above every existing layer.", - "editType": "plot", - "valType": "string" - }, - "circle": { + "clickmode": { + "description": "Determines the mode of single click interactions. *event* is the default value and emits the `plotly_click` event. In addition this mode emits the `plotly_selected` event in drag modes *lasso* and *select*, but with no event data attached (kept for compatibility reasons). The *select* flag enables selecting single data points via click. This mode also supports persistent selections, meaning that pressing Shift while clicking, adds to / subtracts from an existing selection. *select* with `hovermode`: *x* can be confusing, consider explicitly setting `hovermode`: *closest* when using this feature. Selection events are sent accordingly as long as *event* flag is set as well. When the *event* flag is missing, `plotly_click` and `plotly_selected` events are not fired.", + "dflt": "event", "editType": "plot", - "radius": { - "description": "Sets the circle radius (map.layer.paint.circle-radius). Has an effect only when `type` is set to *circle*.", - "dflt": 15, - "editType": "plot", - "valType": "number" + "extras": [ + "none" + ], + "flags": [ + "event", + "select" + ], + "valType": "flaglist" + }, + "coloraxis": { + "_isSubplotObj": true, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" }, - "role": "object" - }, - "color": { - "description": "Sets the primary layer color. If `type` is *circle*, color corresponds to the circle color (map.layer.paint.circle-color) If `type` is *line*, color corresponds to the line color (map.layer.paint.line-color) If `type` is *fill*, color corresponds to the fill color (map.layer.paint.fill-color) If `type` is *symbol*, color corresponds to the icon color (map.layer.paint.icon-color)", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "coordinates": { - "description": "Sets the coordinates array contains [longitude, latitude] pairs for the image corners listed in clockwise order: top left, top right, bottom right, bottom left. Only has an effect for *image* `sourcetype`.", - "editType": "plot", - "valType": "any" - }, - "editType": "plot", - "fill": { - "editType": "plot", - "outlinecolor": { - "description": "Sets the fill outline color (map.layer.paint.fill-outline-color). Has an effect only when `type` is set to *fill*.", - "dflt": "#444", - "editType": "plot", - "valType": "color" + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here corresponding trace color array(s)) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" }, - "role": "object" - }, - "line": { - "dash": { - "description": "Sets the length of dashes and gaps (map.layer.paint.line-dasharray). Has an effect only when `type` is set to *line*.", - "editType": "plot", - "valType": "data_array" - }, - "dashsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `dash`.", - "editType": "none", - "valType": "string" + "cmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as corresponding trace color array(s) and if set, `cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as corresponding trace color array(s). Has no effect when `cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as corresponding trace color array(s) and if set, `cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "description": "", + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" }, - "editType": "plot", "role": "object", - "width": { - "description": "Sets the line width (map.layer.paint.line-width). Has an effect only when `type` is set to *line*.", - "dflt": 2, - "editType": "plot", - "valType": "number" + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" } - }, - "maxzoom": { - "description": "Sets the maximum zoom level (map.layer.maxzoom). At zoom levels equal to or greater than the maxzoom, the layer will be hidden.", - "dflt": 24, - "editType": "plot", - "max": 24, - "min": 0, - "valType": "number" - }, - "minzoom": { - "description": "Sets the minimum zoom level (map.layer.minzoom). At zoom levels less than the minzoom, the layer will be hidden.", - "dflt": 0, - "editType": "plot", - "max": 24, - "min": 0, - "valType": "number" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "plot", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the layer. If `type` is *circle*, opacity corresponds to the circle opacity (map.layer.paint.circle-opacity) If `type` is *line*, opacity corresponds to the line opacity (map.layer.paint.line-opacity) If `type` is *fill*, opacity corresponds to the fill opacity (map.layer.paint.fill-opacity) If `type` is *symbol*, opacity corresponds to the icon/text opacity (map.layer.paint.text-opacity)", - "dflt": 1, - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "source": { - "description": "Sets the source data for this layer (map.layer.source). When `sourcetype` is set to *geojson*, `source` can be a URL to a GeoJSON or a GeoJSON object. When `sourcetype` is set to *vector* or *raster*, `source` can be a URL or an array of tile URLs. When `sourcetype` is set to *image*, `source` can be a URL to an image.", - "editType": "plot", + }, + "colorscale": { + "diverging": { + "description": "Sets the default diverging colorscale. Note that `autocolorscale` must be true for this attribute to work.", + "dflt": [ + [ + 0, + "rgb(5,10,172)" + ], + [ + 0.35, + "rgb(106,137,247)" + ], + [ + 0.5, + "rgb(190,190,190)" + ], + [ + 0.6, + "rgb(220,170,132)" + ], + [ + 0.7, + "rgb(230,145,90)" + ], + [ + 1, + "rgb(178,10,28)" + ] + ], + "editType": "calc", + "valType": "colorscale" + }, + "editType": "calc", + "role": "object", + "sequential": { + "description": "Sets the default sequential colorscale for positive values. Note that `autocolorscale` must be true for this attribute to work.", + "dflt": [ + [ + 0, + "rgb(220,220,220)" + ], + [ + 0.2, + "rgb(245,195,157)" + ], + [ + 0.4, + "rgb(245,160,105)" + ], + [ + 1, + "rgb(178,10,28)" + ] + ], + "editType": "calc", + "valType": "colorscale" + }, + "sequentialminus": { + "description": "Sets the default sequential colorscale for negative values. Note that `autocolorscale` must be true for this attribute to work.", + "dflt": [ + [ + 0, + "rgb(5,10,172)" + ], + [ + 0.35, + "rgb(40,60,190)" + ], + [ + 0.5, + "rgb(70,100,245)" + ], + [ + 0.6, + "rgb(90,120,245)" + ], + [ + 0.7, + "rgb(106,137,247)" + ], + [ + 1, + "rgb(220,220,220)" + ] + ], + "editType": "calc", + "valType": "colorscale" + } + }, + "colorway": { + "description": "Sets the default trace colors.", + "dflt": [ + "#1f77b4", + "#ff7f0e", + "#2ca02c", + "#d62728", + "#9467bd", + "#8c564b", + "#e377c2", + "#7f7f7f", + "#bcbd22", + "#17becf" + ], + "editType": "calc", + "valType": "colorlist" + }, + "computed": { + "description": "Placeholder for exporting automargin-impacting values namely `margin.t`, `margin.b`, `margin.l` and `margin.r` in *full-json* mode.", + "editType": "none", "valType": "any" - }, - "sourceattribution": { - "description": "Sets the attribution for this source.", - "editType": "plot", - "valType": "string" - }, - "sourcelayer": { - "description": "Specifies the layer to use from a vector tile source (map.layer.source-layer). Required for *vector* source type that supports multiple layers.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "sourcetype": { - "description": "Sets the source type for this layer, that is the type of the layer data.", - "dflt": "geojson", - "editType": "plot", + }, + "datarevision": { + "description": "If provided, a changed value tells `Plotly.react` that one or more data arrays has changed. This way you can modify arrays in-place rather than making a complete new copy for an incremental change. If NOT provided, `Plotly.react` assumes that data arrays are being treated as immutable, thus any data array with a different identity from its predecessor contains new data.", + "editType": "calc", + "valType": "any" + }, + "dragmode": { + "description": "Determines the mode of drag interactions. *select* and *lasso* apply only to scatter traces with markers or text. *orbit* and *turntable* apply only to 3D scenes.", + "dflt": "zoom", + "editType": "modebar", "valType": "enumerated", "values": [ - "geojson", - "vector", - "raster", - "image" + "zoom", + "pan", + "select", + "lasso", + "drawclosedpath", + "drawopenpath", + "drawline", + "drawrect", + "drawcircle", + "orbit", + "turntable", + false ] - }, - "symbol": { - "editType": "plot", - "icon": { - "description": "Sets the symbol icon image (map.layer.layout.icon-image). Full list: https://www.mapbox.com/maki-icons/", - "dflt": "marker", - "editType": "plot", - "valType": "string" - }, - "iconsize": { - "description": "Sets the symbol icon size (map.layer.layout.icon-size). Has an effect only when `type` is set to *symbol*.", - "dflt": 10, - "editType": "plot", - "valType": "number" - }, - "placement": { - "description": "Sets the symbol and/or text placement (map.layer.layout.symbol-placement). If `placement` is *point*, the label is placed where the geometry is located If `placement` is *line*, the label is placed along the line of the geometry If `placement` is *line-center*, the label is placed on the center of the geometry", - "dflt": "point", - "editType": "plot", - "valType": "enumerated", - "values": [ - "point", - "line", - "line-center" - ] - }, - "role": "object", - "text": { - "description": "Sets the symbol text (map.layer.layout.text-field).", - "dflt": "", - "editType": "plot", - "valType": "string" + }, + "editrevision": { + "description": "Controls persistence of user-driven changes in `editable: true` configuration, other than trace names and axis titles. Defaults to `layout.uirevision`.", + "editType": "none", + "valType": "any" + }, + "editType": "calc", + "font": { + "color": { + "dflt": "#444", + "editType": "calc", + "valType": "color" }, - "textfont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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": "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.", - "dflt": "Open Sans Regular, Arial Unicode MS Regular", - "editType": "plot", + "dflt": "\"Open Sans\", verdana, arial, sans-serif", + "editType": "calc", "noBlank": true, "strict": true, "valType": "string" - }, - "role": "object", - "size": { - "editType": "plot", + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "dflt": 12, + "editType": "calc", "min": 1, "valType": "number" - }, - "style": { + }, + "style": { "description": "Sets whether a font should be styled with a normal or italic face from its family.", "dflt": "normal", - "editType": "plot", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", "valType": "enumerated", "values": [ - "normal", - "italic" + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" ] - }, - "weight": { + }, + "weight": { "description": "Sets the weight (or boldness) of the font.", "dflt": "normal", - "editType": "plot", + "editType": "calc", "extras": [ - "normal", - "bold" + "normal", + "bold" ], "max": 1000, "min": 1, "valType": "integer" - } - }, - "textposition": { - "arrayOk": false, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "plot", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] } - }, - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "plot", - "valType": "string" - }, - "type": { - "description": "Sets the layer type, that is the how the layer data set in `source` will be rendered With `sourcetype` set to *geojson*, the following values are allowed: *circle*, *line*, *fill* and *symbol*. but note that *line* and *fill* are not compatible with Point GeoJSON geometries. With `sourcetype` set to *vector*, the following values are allowed: *circle*, *line*, *fill* and *symbol*. With `sourcetype` set to *raster* or *image*, only the *raster* value is allowed.", - "dflt": "circle", - "editType": "plot", - "valType": "enumerated", - "values": [ - "circle", - "line", - "fill", - "symbol", - "raster" - ] - }, - "visible": { - "description": "Determines whether this layer is displayed", - "dflt": true, - "editType": "plot", - "valType": "boolean" - } - } - }, - "role": "object" - }, - "pitch": { - "description": "Sets the pitch angle of the map (in degrees, where *0* means perpendicular to the surface of the map) (map.pitch).", - "dflt": 0, - "editType": "plot", - "valType": "number" - }, - "role": "object", - "style": { - "description": "Defines the map layers that are rendered by default below the trace layers defined in `data`, which are themselves by default rendered below the layers defined in `layout.map.layers`. These layers can be defined either explicitly as a Map Style object which can contain multiple layer definitions that load data from any public or private Tile Map Service (TMS or XYZ) or Web Map Service (WMS) or implicitly by using one of the built-in style objects which use WMSes or by using a custom style URL Map Style objects are of the form described in the MapLibre GL JS documentation available at https://maplibre.org/maplibre-style-spec/ The built-in plotly.js styles objects are: basic, carto-darkmatter, carto-darkmatter-nolabels, carto-positron, carto-positron-nolabels, carto-voyager, carto-voyager-nolabels, dark, light, open-street-map, outdoors, satellite, satellite-streets, streets, white-bg.", - "dflt": "basic", - "editType": "plot", - "valType": "any", - "values": [ - "basic", - "carto-darkmatter", - "carto-darkmatter-nolabels", - "carto-positron", - "carto-positron-nolabels", - "carto-voyager", - "carto-voyager-nolabels", - "dark", - "light", - "open-street-map", - "outdoors", - "satellite", - "satellite-streets", - "streets", - "white-bg" - ] - }, - "uirevision": { - "description": "Controls persistence of user-driven changes in the view: `center`, `zoom`, `bearing`, `pitch`. Defaults to `layout.uirevision`.", - "editType": "none", - "valType": "any" - }, - "zoom": { - "description": "Sets the zoom level of the map (map.zoom).", - "dflt": 1, - "editType": "plot", - "valType": "number" - } - }, - "mapbox": { - "_arrayAttrRegexps": [ - {} - ], - "_isSubplotObj": true, - "accesstoken": { - "description": "Sets the mapbox access token to be used for this mapbox map. Alternatively, the mapbox access token can be set in the configuration options under `mapboxAccessToken`. Note that accessToken are only required when `style` (e.g with values : basic, streets, outdoors, light, dark, satellite, satellite-streets ) and/or a layout layer references the Mapbox server.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "bearing": { - "description": "Sets the bearing angle of the map in degrees counter-clockwise from North (mapbox.bearing).", - "dflt": 0, - "editType": "plot", - "valType": "number" - }, - "bounds": { - "east": { - "description": "Sets the maximum longitude of the map (in degrees East) if `west`, `south` and `north` are declared.", - "editType": "plot", - "valType": "number" - }, - "editType": "plot", - "north": { - "description": "Sets the maximum latitude of the map (in degrees North) if `east`, `west` and `south` are declared.", - "editType": "plot", - "valType": "number" - }, - "role": "object", - "south": { - "description": "Sets the minimum latitude of the map (in degrees North) if `east`, `west` and `north` are declared.", - "editType": "plot", - "valType": "number" - }, - "west": { - "description": "Sets the minimum longitude of the map (in degrees East) if `east`, `south` and `north` are declared.", - "editType": "plot", - "valType": "number" - } - }, - "center": { - "editType": "plot", - "lat": { - "description": "Sets the latitude of the center of the map (in degrees North).", - "dflt": 0, - "editType": "plot", - "valType": "number" - }, - "lon": { - "description": "Sets the longitude of the center of the map (in degrees East).", - "dflt": 0, - "editType": "plot", - "valType": "number" - }, - "role": "object" - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this mapbox subplot .", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "editType": "plot", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this mapbox subplot .", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this mapbox subplot (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this mapbox subplot (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - } - }, - "editType": "plot", - "layers": { - "items": { - "layer": { - "below": { - "description": "Determines if the layer will be inserted before the layer with the specified ID. If omitted or set to '', the layer will be inserted above every existing layer.", - "editType": "plot", - "valType": "string" - }, - "circle": { - "editType": "plot", - "radius": { - "description": "Sets the circle radius (mapbox.layer.paint.circle-radius). Has an effect only when `type` is set to *circle*.", - "dflt": 15, - "editType": "plot", - "valType": "number" + }, + "geo": { + "_isSubplotObj": true, + "bgcolor": { + "description": "Set the background color of the map", + "dflt": "#fff", + "editType": "plot", + "valType": "color" }, - "role": "object" - }, - "color": { - "description": "Sets the primary layer color. If `type` is *circle*, color corresponds to the circle color (mapbox.layer.paint.circle-color) If `type` is *line*, color corresponds to the line color (mapbox.layer.paint.line-color) If `type` is *fill*, color corresponds to the fill color (mapbox.layer.paint.fill-color) If `type` is *symbol*, color corresponds to the icon color (mapbox.layer.paint.icon-color)", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "coordinates": { - "description": "Sets the coordinates array contains [longitude, latitude] pairs for the image corners listed in clockwise order: top left, top right, bottom right, bottom left. Only has an effect for *image* `sourcetype`.", - "editType": "plot", - "valType": "any" - }, - "editType": "plot", - "fill": { - "editType": "plot", - "outlinecolor": { - "description": "Sets the fill outline color (mapbox.layer.paint.fill-outline-color). Has an effect only when `type` is set to *fill*.", - "dflt": "#444", - "editType": "plot", - "valType": "color" + "center": { + "editType": "plot", + "lat": { + "description": "Sets the latitude of the map's center. For all projection types, the map's latitude center lies at the middle of the latitude range by default.", + "editType": "plot", + "valType": "number" + }, + "lon": { + "description": "Sets the longitude of the map's center. By default, the map's longitude center lies at the middle of the longitude range for scoped projection and above `projection.rotation.lon` otherwise.", + "editType": "plot", + "valType": "number" + }, + "role": "object" }, - "role": "object" - }, - "line": { - "dash": { - "description": "Sets the length of dashes and gaps (mapbox.layer.paint.line-dasharray). Has an effect only when `type` is set to *line*.", - "editType": "plot", - "valType": "data_array" - }, - "dashsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `dash`.", - "editType": "none", - "valType": "string" + "coastlinecolor": { + "description": "Sets the coastline color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "coastlinewidth": { + "description": "Sets the coastline stroke width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "countrycolor": { + "description": "Sets line color of the country boundaries.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "countrywidth": { + "description": "Sets line width (in px) of the country boundaries.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this geo subplot . Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "editType": "plot", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this geo subplot . Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this geo subplot (in plot fraction). Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both.", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this geo subplot (in plot fraction). Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both.", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } }, "editType": "plot", - "role": "object", - "width": { - "description": "Sets the line width (mapbox.layer.paint.line-width). Has an effect only when `type` is set to *line*.", - "dflt": 2, - "editType": "plot", - "valType": "number" - } - }, - "maxzoom": { - "description": "Sets the maximum zoom level (mapbox.layer.maxzoom). At zoom levels equal to or greater than the maxzoom, the layer will be hidden.", - "dflt": 24, - "editType": "plot", - "max": 24, - "min": 0, - "valType": "number" - }, - "minzoom": { - "description": "Sets the minimum zoom level (mapbox.layer.minzoom). At zoom levels less than the minzoom, the layer will be hidden.", - "dflt": 0, - "editType": "plot", - "max": 24, - "min": 0, - "valType": "number" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "plot", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the layer. If `type` is *circle*, opacity corresponds to the circle opacity (mapbox.layer.paint.circle-opacity) If `type` is *line*, opacity corresponds to the line opacity (mapbox.layer.paint.line-opacity) If `type` is *fill*, opacity corresponds to the fill opacity (mapbox.layer.paint.fill-opacity) If `type` is *symbol*, opacity corresponds to the icon/text opacity (mapbox.layer.paint.text-opacity)", - "dflt": 1, - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "source": { - "description": "Sets the source data for this layer (mapbox.layer.source). When `sourcetype` is set to *geojson*, `source` can be a URL to a GeoJSON or a GeoJSON object. When `sourcetype` is set to *vector* or *raster*, `source` can be a URL or an array of tile URLs. When `sourcetype` is set to *image*, `source` can be a URL to an image.", - "editType": "plot", - "valType": "any" - }, - "sourceattribution": { - "description": "Sets the attribution for this source.", - "editType": "plot", - "valType": "string" - }, - "sourcelayer": { - "description": "Specifies the layer to use from a vector tile source (mapbox.layer.source-layer). Required for *vector* source type that supports multiple layers.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "sourcetype": { - "description": "Sets the source type for this layer, that is the type of the layer data.", - "dflt": "geojson", - "editType": "plot", - "valType": "enumerated", - "values": [ - "geojson", - "vector", - "raster", - "image" - ] - }, - "symbol": { - "editType": "plot", - "icon": { - "description": "Sets the symbol icon image (mapbox.layer.layout.icon-image). Full list: https://www.mapbox.com/maki-icons/", - "dflt": "marker", - "editType": "plot", - "valType": "string" - }, - "iconsize": { - "description": "Sets the symbol icon size (mapbox.layer.layout.icon-size). Has an effect only when `type` is set to *symbol*.", - "dflt": 10, - "editType": "plot", - "valType": "number" - }, - "placement": { - "description": "Sets the symbol and/or text placement (mapbox.layer.layout.symbol-placement). If `placement` is *point*, the label is placed where the geometry is located If `placement` is *line*, the label is placed along the line of the geometry If `placement` is *line-center*, the label is placed on the center of the geometry", - "dflt": "point", - "editType": "plot", - "valType": "enumerated", - "values": [ - "point", - "line", - "line-center" - ] + "fitbounds": { + "description": "Determines if this subplot's view settings are auto-computed to fit trace data. On scoped maps, setting `fitbounds` leads to `center.lon` and `center.lat` getting auto-filled. On maps with a non-clipped projection, setting `fitbounds` leads to `center.lon`, `center.lat`, and `projection.rotation.lon` getting auto-filled. On maps with a clipped projection, setting `fitbounds` leads to `center.lon`, `center.lat`, `projection.rotation.lon`, `projection.rotation.lat`, `lonaxis.range` and `lataxis.range` getting auto-filled. If *locations*, only the trace's visible locations are considered in the `fitbounds` computations. If *geojson*, the entire trace input `geojson` (if provided) is considered in the `fitbounds` computations, Defaults to *false*.", + "dflt": false, + "editType": "plot", + "valType": "enumerated", + "values": [ + false, + "locations", + "geojson" + ] }, - "role": "object", - "text": { - "description": "Sets the symbol text (mapbox.layer.layout.text-field).", - "dflt": "", - "editType": "plot", - "valType": "string" + "framecolor": { + "description": "Sets the color the frame.", + "dflt": "#444", + "editType": "plot", + "valType": "color" }, - "textfont": { - "color": { + "framewidth": { + "description": "Sets the stroke width (in px) of the frame.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "lakecolor": { + "description": "Sets the color of the lakes.", + "dflt": "#3399FF", "editType": "plot", "valType": "color" - }, - "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.", - "dflt": "Open Sans Regular, Arial Unicode MS Regular", + }, + "landcolor": { + "description": "Sets the land mass color.", + "dflt": "#F0DC82", "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "role": "object", - "size": { + "valType": "color" + }, + "lataxis": { + "dtick": { + "description": "Sets the graticule's longitude/latitude tick step.", + "editType": "plot", + "valType": "number" + }, "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", + "gridcolor": { + "description": "Sets the graticule's stroke color.", + "dflt": "#eee", + "editType": "plot", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "plot", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the graticule's stroke width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "range": { + "description": "Sets the range of this axis (in degrees), sets the map's clipped coordinates.", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "number" + }, + { + "editType": "plot", + "valType": "number" + } + ], + "valType": "info_array" + }, + "role": "object", + "showgrid": { + "description": "Sets whether or not graticule are shown on the map.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "tick0": { + "description": "Sets the graticule's starting tick longitude/latitude.", + "dflt": 0, + "editType": "plot", + "valType": "number" + } + }, + "lonaxis": { + "dtick": { + "description": "Sets the graticule's longitude/latitude tick step.", + "editType": "plot", + "valType": "number" + }, + "editType": "plot", + "gridcolor": { + "description": "Sets the graticule's stroke color.", + "dflt": "#eee", + "editType": "plot", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "plot", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the graticule's stroke width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "range": { + "description": "Sets the range of this axis (in degrees), sets the map's clipped coordinates.", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "number" + }, + { + "editType": "plot", + "valType": "number" + } + ], + "valType": "info_array" + }, + "role": "object", + "showgrid": { + "description": "Sets whether or not graticule are shown on the map.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "tick0": { + "description": "Sets the graticule's starting tick longitude/latitude.", + "dflt": 0, + "editType": "plot", + "valType": "number" + } + }, + "oceancolor": { + "description": "Sets the ocean color", + "dflt": "#3399FF", + "editType": "plot", + "valType": "color" + }, + "projection": { + "distance": { + "description": "For satellite projection type only. Sets the distance from the center of the sphere to the point of view as a proportion of the sphere’s radius.", + "dflt": 2, + "editType": "plot", + "min": 1.001, + "valType": "number" + }, + "editType": "plot", + "parallels": { + "description": "For conic projection types only. Sets the parallels (tangent, secant) where the cone intersects the sphere.", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "number" + }, + { + "editType": "plot", + "valType": "number" + } + ], + "valType": "info_array" + }, + "role": "object", + "rotation": { + "editType": "plot", + "lat": { + "description": "Rotates the map along meridians (in degrees North).", + "editType": "plot", + "valType": "number" + }, + "lon": { + "description": "Rotates the map along parallels (in degrees East). Defaults to the center of the `lonaxis.range` values.", + "editType": "plot", + "valType": "number" + }, + "role": "object", + "roll": { + "description": "Roll the map (in degrees) For example, a roll of *180* makes the map appear upside down.", + "editType": "plot", + "valType": "number" + } + }, + "scale": { + "description": "Zooms in or out on the map view. A scale of *1* corresponds to the largest zoom level that fits the map's lon and lat ranges. ", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tilt": { + "description": "For satellite projection type only. Sets the tilt angle of perspective projection.", + "dflt": 0, + "editType": "plot", + "valType": "number" + }, + "type": { + "description": "Sets the projection type.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "airy", + "aitoff", + "albers", + "albers usa", + "august", + "azimuthal equal area", + "azimuthal equidistant", + "baker", + "bertin1953", + "boggs", + "bonne", + "bottomley", + "bromley", + "collignon", + "conic conformal", + "conic equal area", + "conic equidistant", + "craig", + "craster", + "cylindrical equal area", + "cylindrical stereographic", + "eckert1", + "eckert2", + "eckert3", + "eckert4", + "eckert5", + "eckert6", + "eisenlohr", + "equal earth", + "equirectangular", + "fahey", + "foucaut", + "foucaut sinusoidal", + "ginzburg4", + "ginzburg5", + "ginzburg6", + "ginzburg8", + "ginzburg9", + "gnomonic", + "gringorten", + "gringorten quincuncial", + "guyou", + "hammer", + "hill", + "homolosine", + "hufnagel", + "hyperelliptical", + "kavrayskiy7", + "lagrange", + "larrivee", + "laskowski", + "loximuthal", + "mercator", + "miller", + "mollweide", + "mt flat polar parabolic", + "mt flat polar quartic", + "mt flat polar sinusoidal", + "natural earth", + "natural earth1", + "natural earth2", + "nell hammer", + "nicolosi", + "orthographic", + "patterson", + "peirce quincuncial", + "polyconic", + "rectangular polyconic", + "robinson", + "satellite", + "sinu mollweide", + "sinusoidal", + "stereographic", + "times", + "transverse mercator", + "van der grinten", + "van der grinten2", + "van der grinten3", + "van der grinten4", + "wagner4", + "wagner6", + "wiechel", + "winkel tripel", + "winkel3" + ] + } + }, + "resolution": { + "coerceNumber": true, + "description": "Sets the resolution of the base layers. The values have units of km/mm e.g. 110 corresponds to a scale ratio of 1:110,000,000.", + "dflt": 110, "editType": "plot", "valType": "enumerated", "values": [ - "normal", - "italic" + 110, + 50 ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", + }, + "rivercolor": { + "description": "Sets color of the rivers.", + "dflt": "#3399FF", "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } + "valType": "color" }, - "textposition": { - "arrayOk": false, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "plot", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] + "riverwidth": { + "description": "Sets the stroke width (in px) of the rivers.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "role": "object", + "scope": { + "description": "Set the scope of the map.", + "dflt": "world", + "editType": "plot", + "valType": "enumerated", + "values": [ + "africa", + "antarctica", + "asia", + "europe", + "north america", + "oceania", + "south america", + "usa", + "world" + ] + }, + "showcoastlines": { + "description": "Sets whether or not the coastlines are drawn.", + "editType": "plot", + "valType": "boolean" + }, + "showcountries": { + "description": "Sets whether or not country boundaries are drawn.", + "editType": "plot", + "valType": "boolean" + }, + "showframe": { + "description": "Sets whether or not a frame is drawn around the map.", + "editType": "plot", + "valType": "boolean" + }, + "showlakes": { + "description": "Sets whether or not lakes are drawn.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showland": { + "description": "Sets whether or not land masses are filled in color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showocean": { + "description": "Sets whether or not oceans are filled in color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showrivers": { + "description": "Sets whether or not rivers are drawn.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showsubunits": { + "description": "Sets whether or not boundaries of subunits within countries (e.g. states, provinces) are drawn.", + "editType": "plot", + "valType": "boolean" + }, + "subunitcolor": { + "description": "Sets the color of the subunits boundaries.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "subunitwidth": { + "description": "Sets the stroke width (in px) of the subunits boundaries.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "uirevision": { + "description": "Controls persistence of user-driven changes in the view (projection and center). Defaults to `layout.uirevision`.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Sets the default visibility of the base layers.", + "dflt": true, + "editType": "plot", + "valType": "boolean" } - }, - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + }, + "grid": { + "columns": { + "description": "The number of columns in the grid. If you provide a 2D `subplots` array, the length of its longest row is used as the default. If you give an `xaxes` array, its length is used as the default. But it's also possible to have a different length, if you want to leave a row at the end for non-cartesian subplots.", + "editType": "plot", + "min": 1, + "valType": "integer" + }, + "domain": { + "editType": "plot", + "role": "object", + "x": { + "description": "Sets the horizontal domain of this grid subplot (in plot fraction). The first and last cells end exactly at the domain edges, with no grout around the edges.", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this grid subplot (in plot fraction). The first and last cells end exactly at the domain edges, with no grout around the edges.", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } + }, "editType": "plot", - "valType": "string" - }, - "type": { - "description": "Sets the layer type, that is the how the layer data set in `source` will be rendered With `sourcetype` set to *geojson*, the following values are allowed: *circle*, *line*, *fill* and *symbol*. but note that *line* and *fill* are not compatible with Point GeoJSON geometries. With `sourcetype` set to *vector*, the following values are allowed: *circle*, *line*, *fill* and *symbol*. With `sourcetype` set to *raster* or *image*, only the *raster* value is allowed.", - "dflt": "circle", + "pattern": { + "description": "If no `subplots`, `xaxes`, or `yaxes` are given but we do have `rows` and `columns`, we can generate defaults using consecutive axis IDs, in two ways: *coupled* gives one x axis per column and one y axis per row. *independent* uses a new xy pair for each cell, left-to-right across each row then iterating rows according to `roworder`.", + "dflt": "coupled", + "editType": "plot", + "valType": "enumerated", + "values": [ + "independent", + "coupled" + ] + }, + "role": "object", + "roworder": { + "description": "Is the first row the top or the bottom? Note that columns are always enumerated from left to right.", + "dflt": "top to bottom", + "editType": "plot", + "valType": "enumerated", + "values": [ + "top to bottom", + "bottom to top" + ] + }, + "rows": { + "description": "The number of rows in the grid. If you provide a 2D `subplots` array or a `yaxes` array, its length is used as the default. But it's also possible to have a different length, if you want to leave a row at the end for non-cartesian subplots.", + "editType": "plot", + "min": 1, + "valType": "integer" + }, + "subplots": { + "description": "Used for freeform grids, where some axes may be shared across subplots but others are not. Each entry should be a cartesian subplot id, like *xy* or *x3y2*, or ** to leave that cell empty. You may reuse x axes within the same column, and y axes within the same row. Non-cartesian subplots and traces that support `domain` can place themselves in this grid separately using the `gridcell` attribute.", + "dimensions": 2, + "editType": "plot", + "freeLength": true, + "items": { + "editType": "plot", + "valType": "enumerated", + "values": [ + "/^x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?$/", + "" + ] + }, + "valType": "info_array" + }, + "xaxes": { + "description": "Used with `yaxes` when the x and y axes are shared across columns and rows. Each entry should be an x axis id like *x*, *x2*, etc., or ** to not put an x axis in that column. Entries other than ** must be unique. Ignored if `subplots` is present. If missing but `yaxes` is present, will generate consecutive IDs.", + "editType": "plot", + "freeLength": true, + "items": { + "editType": "plot", + "valType": "enumerated", + "values": [ + "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", + "" + ] + }, + "valType": "info_array" + }, + "xgap": { + "description": "Horizontal space between grid cells, expressed as a fraction of the total width available to one cell. Defaults to 0.1 for coupled-axes grids and 0.2 for independent grids.", + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "xside": { + "description": "Sets where the x axis labels and titles go. *bottom* means the very bottom of the grid. *bottom plot* is the lowest plot that each x axis is used in. *top* and *top plot* are similar.", + "dflt": "bottom plot", + "editType": "plot", + "valType": "enumerated", + "values": [ + "bottom", + "bottom plot", + "top plot", + "top" + ] + }, + "yaxes": { + "description": "Used with `yaxes` when the x and y axes are shared across columns and rows. Each entry should be an y axis id like *y*, *y2*, etc., or ** to not put a y axis in that row. Entries other than ** must be unique. Ignored if `subplots` is present. If missing but `xaxes` is present, will generate consecutive IDs.", + "editType": "plot", + "freeLength": true, + "items": { + "editType": "plot", + "valType": "enumerated", + "values": [ + "/^y([2-9]|[1-9][0-9]+)?( domain)?$/", + "" + ] + }, + "valType": "info_array" + }, + "ygap": { + "description": "Vertical space between grid cells, expressed as a fraction of the total height available to one cell. Defaults to 0.1 for coupled-axes grids and 0.3 for independent grids.", + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "yside": { + "description": "Sets where the y axis labels and titles go. *left* means the very left edge of the grid. *left plot* is the leftmost plot that each y axis is used in. *right* and *right plot* are similar.", + "dflt": "left plot", + "editType": "plot", + "valType": "enumerated", + "values": [ + "left", + "left plot", + "right plot", + "right" + ] + } + }, + "height": { + "description": "Sets the plot's height (in px).", + "dflt": 450, "editType": "plot", - "valType": "enumerated", - "values": [ - "circle", - "line", - "fill", - "symbol", - "raster" - ] - }, - "visible": { - "description": "Determines whether this layer is displayed", - "dflt": true, + "min": 10, + "valType": "number" + }, + "hidesources": { + "description": "Determines whether or not a text link citing the data source is placed at the bottom-right cored of the figure. Has only an effect only on graphs that have been generated via forked graphs from the Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise).", + "dflt": false, "editType": "plot", "valType": "boolean" - } - } - }, - "role": "object" - }, - "pitch": { - "description": "Sets the pitch angle of the map (in degrees, where *0* means perpendicular to the surface of the map) (mapbox.pitch).", - "dflt": 0, - "editType": "plot", - "valType": "number" - }, - "role": "object", - "style": { - "description": "Defines the map layers that are rendered by default below the trace layers defined in `data`, which are themselves by default rendered below the layers defined in `layout.mapbox.layers`. These layers can be defined either explicitly as a Mapbox Style object which can contain multiple layer definitions that load data from any public or private Tile Map Service (TMS or XYZ) or Web Map Service (WMS) or implicitly by using one of the built-in style objects which use WMSes which do not require any access tokens, or by using a default Mapbox style or custom Mapbox style URL, both of which require a Mapbox access token Note that Mapbox access token can be set in the `accesstoken` attribute or in the `mapboxAccessToken` config option. Mapbox Style objects are of the form described in the Mapbox GL JS documentation available at https://docs.mapbox.com/mapbox-gl-js/style-spec The built-in plotly.js styles objects are: carto-darkmatter, carto-positron, open-street-map, stamen-terrain, stamen-toner, stamen-watercolor, white-bg The built-in Mapbox styles are: basic, streets, outdoors, light, dark, satellite, satellite-streets Mapbox style URLs are of the form: mapbox://mapbox.mapbox--", - "dflt": "basic", - "editType": "plot", - "valType": "any", - "values": [ - "basic", - "streets", - "outdoors", - "light", - "dark", - "satellite", - "satellite-streets", - "carto-darkmatter", - "carto-positron", - "open-street-map", - "stamen-terrain", - "stamen-toner", - "stamen-watercolor", - "white-bg" - ] - }, - "uirevision": { - "description": "Controls persistence of user-driven changes in the view: `center`, `zoom`, `bearing`, `pitch`. Defaults to `layout.uirevision`.", - "editType": "none", - "valType": "any" - }, - "zoom": { - "description": "Sets the zoom level of the map (mapbox.zoom).", - "dflt": 1, - "editType": "plot", - "valType": "number" - } - }, - "margin": { - "autoexpand": { - "description": "Turns on/off margin expansion computations. Legends, colorbars, updatemenus, sliders, axis rangeselector and rangeslider are allowed to push the margins by defaults.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "b": { - "description": "Sets the bottom margin (in px).", - "dflt": 80, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "editType": "plot", - "l": { - "description": "Sets the left margin (in px).", - "dflt": 80, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "pad": { - "description": "Sets the amount of padding (in px) between the plotting area and the axis lines", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "r": { - "description": "Sets the right margin (in px).", - "dflt": 80, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "role": "object", - "t": { - "description": "Sets the top margin (in px).", - "dflt": 100, - "editType": "plot", - "min": 0, - "valType": "number" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information that can be used in various `text` attributes. Attributes such as the graph, axis and colorbar `title.text`, annotation `text` `trace.name` in legend items, `rangeselector`, `updatemenus` and `sliders` `label` text all support `meta`. One can access `meta` fields using template strings: `%{meta[i]}` where `i` is the index of the `meta` item in question. `meta` can also be an object for example `{key: value}` which can be accessed %{meta[key]}.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "minreducedheight": { - "description": "Minimum height of the plot with margin.automargin applied (in px)", - "dflt": 64, - "editType": "plot", - "min": 2, - "valType": "number" - }, - "minreducedwidth": { - "description": "Minimum width of the plot with margin.automargin applied (in px)", - "dflt": 64, - "editType": "plot", - "min": 2, - "valType": "number" - }, - "modebar": { - "activecolor": { - "description": "Sets the color of the active or hovered on icons in the modebar.", - "editType": "modebar", - "valType": "color" - }, - "add": { - "arrayOk": true, - "description": "Determines which predefined modebar buttons to add. Please note that these buttons will only be shown if they are compatible with all trace types used in a graph. Similar to `config.modeBarButtonsToAdd` option. This may include *v1hovermode*, *hoverclosest*, *hovercompare*, *togglehover*, *togglespikelines*, *drawline*, *drawopenpath*, *drawclosedpath*, *drawcircle*, *drawrect*, *eraseshape*.", - "dflt": "", - "editType": "modebar", - "valType": "string" - }, - "addsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `add`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "description": "Sets the background color of the modebar.", - "editType": "modebar", - "valType": "color" - }, - "color": { - "description": "Sets the color of the icons in the modebar.", - "editType": "modebar", - "valType": "color" - }, - "editType": "modebar", - "orientation": { - "description": "Sets the orientation of the modebar.", - "dflt": "h", - "editType": "modebar", - "valType": "enumerated", - "values": [ - "v", - "h" - ] - }, - "remove": { - "arrayOk": true, - "description": "Determines which predefined modebar buttons to remove. Similar to `config.modeBarButtonsToRemove` option. This may include *autoScale2d*, *autoscale*, *editInChartStudio*, *editinchartstudio*, *hoverCompareCartesian*, *hovercompare*, *lasso*, *lasso2d*, *orbitRotation*, *orbitrotation*, *pan*, *pan2d*, *pan3d*, *reset*, *resetCameraDefault3d*, *resetCameraLastSave3d*, *resetGeo*, *resetSankeyGroup*, *resetScale2d*, *resetViewMap*, *resetViewMapbox*, *resetViews*, *resetcameradefault*, *resetcameralastsave*, *resetsankeygroup*, *resetscale*, *resetview*, *resetviews*, *select*, *select2d*, *sendDataToCloud*, *senddatatocloud*, *tableRotation*, *tablerotation*, *toImage*, *toggleHover*, *toggleSpikelines*, *togglehover*, *togglespikelines*, *toimage*, *zoom*, *zoom2d*, *zoom3d*, *zoomIn2d*, *zoomInGeo*, *zoomInMap*, *zoomInMapbox*, *zoomOut2d*, *zoomOutGeo*, *zoomOutMap*, *zoomOutMapbox*, *zoomin*, *zoomout*.", - "dflt": "", - "editType": "modebar", - "valType": "string" - }, - "removesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `remove`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "uirevision": { - "description": "Controls persistence of user-driven changes related to the modebar, including `hovermode`, `dragmode`, and `showspikes` at both the root level and inside subplots. Defaults to `layout.uirevision`.", - "editType": "none", - "valType": "any" - } - }, - "newselection": { - "editType": "none", - "line": { - "color": { - "description": "Sets the line color. By default uses either dark grey or white to increase contrast with background color.", - "editType": "none", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "dot", - "editType": "none", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "none", - "role": "object", - "width": { - "description": "Sets the line width (in px).", - "dflt": 1, - "editType": "none", - "min": 1, - "valType": "number" - } - }, - "mode": { - "description": "Describes how a new selection is created. If `immediate`, a new selection is created after first mouse up. If `gradual`, a new selection is not created after first mouse. By adding to and subtracting from the initial selection, this option allows declaring extra outlines of the selection.", - "dflt": "immediate", - "editType": "none", - "valType": "enumerated", - "values": [ - "immediate", - "gradual" - ] - }, - "role": "object" - }, - "newshape": { - "drawdirection": { - "description": "When `dragmode` is set to *drawrect*, *drawline* or *drawcircle* this limits the drag to be horizontal, vertical or diagonal. Using *diagonal* there is no limit e.g. in drawing lines in any direction. *ortho* limits the draw to be either horizontal or vertical. *horizontal* allows horizontal extend. *vertical* allows vertical extend.", - "dflt": "diagonal", - "editType": "none", - "valType": "enumerated", - "values": [ - "ortho", - "horizontal", - "vertical", - "diagonal" - ] - }, - "editType": "none", - "fillcolor": { - "description": "Sets the color filling new shapes' interior. Please note that if using a fillcolor with alpha greater than half, drag inside the active shape starts moving the shape underneath, otherwise a new shape could be started over.", - "dflt": "rgba(0,0,0,0)", - "editType": "none", - "valType": "color" - }, - "fillrule": { - "description": "Determines the path's interior. For more info please visit https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/fill-rule", - "dflt": "evenodd", - "editType": "none", - "valType": "enumerated", - "values": [ - "evenodd", - "nonzero" - ] - }, - "label": { - "editType": "none", - "font": { - "color": { - "editType": "none", - "valType": "color" - }, - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "size": { - "editType": "none", - "min": 1, - "valType": "number" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "padding": { - "description": "Sets padding (in px) between edge of label and edge of new shape.", - "dflt": 3, - "editType": "none", - "min": 0, - "valType": "number" - }, - "role": "object", - "text": { - "description": "Sets the text to display with the new shape. It is also used for legend item if `name` is not provided.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "textangle": { - "description": "Sets the angle at which the label text is drawn with respect to the horizontal. For lines, angle *auto* is the same angle as the line. For all other shapes, angle *auto* is horizontal.", - "dflt": "auto", - "editType": "none", - "valType": "angle" - }, - "textposition": { - "description": "Sets the position of the label text relative to the new shape. Supported values for rectangles, circles and paths are *top left*, *top center*, *top right*, *middle left*, *middle center*, *middle right*, *bottom left*, *bottom center*, and *bottom right*. Supported values for lines are *start*, *middle*, and *end*. Default: *middle center* for rectangles, circles, and paths; *middle* for lines.", - "editType": "none", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right", - "start", - "middle", - "end" - ] - }, - "texttemplate": { - "description": "Template string used for rendering the new shape's label. Note that this will override `text`. Variables are inserted using %{variable}, for example \"x0: %{x0}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{x0:$.2f}\". See https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{x0|%m %b %Y}\". See https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. A single multiplication or division operation may be applied to numeric variables, and combined with d3 number formatting, for example \"Length in cm: %{x0*2.54}\", \"%{slope*60:.1f} meters per second.\" For log axes, variable values are given in log units. For date axes, x/y coordinate variables and center variables use datetimes, while all other variable values use values in ms. Finally, the template string has access to variables `x0`, `x1`, `y0`, `y1`, `slope`, `dx`, `dy`, `width`, `height`, `length`, `xcenter` and `ycenter`. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "xanchor": { - "description": "Sets the label's horizontal position anchor This anchor binds the specified `textposition` to the *left*, *center* or *right* of the label text. For example, if `textposition` is set to *top right* and `xanchor` to *right* then the right-most portion of the label text lines up with the right-most edge of the new shape.", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "auto", - "left", - "center", - "right" - ] - }, - "yanchor": { - "description": "Sets the label's vertical position anchor This anchor binds the specified `textposition` to the *top*, *middle* or *bottom* of the label text. For example, if `textposition` is set to *top right* and `yanchor` to *top* then the top-most portion of the label text lines up with the top-most edge of the new shape.", - "editType": "none", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - } - }, - "layer": { - "description": "Specifies whether new shapes are drawn below gridlines (*below*), between gridlines and traces (*between*) or above traces (*above*).", - "dflt": "above", - "editType": "none", - "valType": "enumerated", - "values": [ - "below", - "above", - "between" - ] - }, - "legend": { - "description": "Sets the reference to a legend to show new shape in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "none", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for new shape. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "none", - "font": { - "color": { - "editType": "none", - "valType": "color" - }, - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" + "hoverdistance": { + "description": "Sets the default distance (in pixels) to look for data to add hover labels (-1 means no cutoff, 0 means no looking for data). This is only a real distance for hovering on point-like objects, like scatter points. For area-like objects (bars, scatter fills, etc) hovering is on inside the area and off outside, but these objects will not supersede hover on point-like objects in case of conflict.", + "dflt": 20, + "editType": "none", + "min": -1, + "valType": "integer" }, - "size": { - "editType": "none", - "min": 1, - "valType": "number" + "hoverlabel": { + "align": { + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "bgcolor": { + "description": "Sets the background color of all hover labels on graph", + "editType": "none", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the border color of all hover labels on graph.", + "editType": "none", + "valType": "color" + }, + "editType": "none", + "font": { + "color": { + "editType": "none", + "valType": "color" + }, + "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.", + "dflt": "Arial, sans-serif", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "size": { + "dflt": 13, + "editType": "none", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "grouptitlefont": { + "color": { + "editType": "none", + "valType": "color" + }, + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "size": { + "editType": "none", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "namelength": { + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "hovermode": { + "description": "Determines the mode of hover interactions. If *closest*, a single hoverlabel will appear for the *closest* point within the `hoverdistance`. If *x* (or *y*), multiple hoverlabels will appear for multiple points at the *closest* x- (or y-) coordinate within the `hoverdistance`, with the caveat that no more than one hoverlabel will appear per trace. If *x unified* (or *y unified*), a single hoverlabel will appear multiple points at the closest x- (or y-) coordinate within the `hoverdistance` with the caveat that no more than one hoverlabel will appear per trace. In this mode, spikelines are enabled by default perpendicular to the specified axis. If false, hover interactions are disabled.", + "dflt": "closest", + "editType": "modebar", + "valType": "enumerated", + "values": [ + "x", + "y", + "closest", + false, + "x unified", + "y unified" + ] }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "hoversubplots": { + "description": "Determines expansion of hover effects to other subplots If *single* just the axis pair of the primary point is included without overlaying subplots. If *overlaying* all subplots using the main axis and occupying the same space are included. If *axis*, also include stacked subplots using the same axis when `hovermode` is set to *x*, *x unified*, *y* or *y unified*.", + "dflt": "overlaying", + "editType": "none", + "valType": "enumerated", + "values": [ + "single", + "overlaying", + "axis" + ] }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "images": { + "items": { + "image": { + "editType": "arraydraw", + "layer": { + "description": "Specifies whether images are drawn below or above traces. When `xref` and `yref` are both set to `paper`, image is drawn below the entire plot area.", + "dflt": "above", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "below", + "above" + ] + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "none", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the image.", + "dflt": 1, + "editType": "arraydraw", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "sizex": { + "description": "Sets the image container size horizontally. The image will be sized based on the `position` value. When `xref` is set to `paper`, units are sized relative to the plot width. When `xref` ends with ` domain`, units are sized relative to the axis width.", + "dflt": 0, + "editType": "arraydraw", + "valType": "number" + }, + "sizey": { + "description": "Sets the image container size vertically. The image will be sized based on the `position` value. When `yref` is set to `paper`, units are sized relative to the plot height. When `yref` ends with ` domain`, units are sized relative to the axis height.", + "dflt": 0, + "editType": "arraydraw", + "valType": "number" + }, + "sizing": { + "description": "Specifies which dimension of the image to constrain.", + "dflt": "contain", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "fill", + "contain", + "stretch" + ] + }, + "source": { + "description": "Specifies the URL of the image to be used. The URL must be accessible from the domain where the plot code is run, and can be either relative or absolute.", + "editType": "arraydraw", + "valType": "string" + }, + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this image is visible.", + "dflt": true, + "editType": "arraydraw", + "valType": "boolean" + }, + "x": { + "description": "Sets the image's x position. When `xref` is set to `paper`, units are sized relative to the plot height. See `xref` for more info", + "dflt": 0, + "editType": "arraydraw", + "valType": "any" + }, + "xanchor": { + "description": "Sets the anchor for the x position", + "dflt": "left", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xref": { + "description": "Sets the images's x coordinate axis. If set to a x axis id (e.g. *x* or *x2*), the `x` position refers to a x coordinate. If set to *paper*, the `x` position refers to the distance from the left of the plotting area in normalized coordinates where *0* (*1*) corresponds to the left (right). If set to a x axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the left of the domain of that axis: e.g., *x2 domain* refers to the domain of the second x axis and a x position of 0.5 refers to the point between the left and the right of the domain of the second x axis.", + "dflt": "paper", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "paper", + "/^x([2-9]|[1-9][0-9]+)?( domain)?$/" + ] + }, + "y": { + "description": "Sets the image's y position. When `yref` is set to `paper`, units are sized relative to the plot height. See `yref` for more info", + "dflt": 0, + "editType": "arraydraw", + "valType": "any" + }, + "yanchor": { + "description": "Sets the anchor for the y position.", + "dflt": "top", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "yref": { + "description": "Sets the images's y coordinate axis. If set to a y axis id (e.g. *y* or *y2*), the `y` position refers to a y coordinate. If set to *paper*, the `y` position refers to the distance from the bottom of the plotting area in normalized coordinates where *0* (*1*) corresponds to the bottom (top). If set to a y axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the bottom of the domain of that axis: e.g., *y2 domain* refers to the domain of the second y axis and a y position of 0.5 refers to the point between the bottom and the top of the domain of the second y axis.", + "dflt": "paper", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "paper", + "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" + ] + } + } + }, + "role": "object" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "none", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for new shape. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items.", - "dflt": 1000, - "editType": "none", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for new shape.", - "editType": "none", - "min": 0, - "valType": "number" - }, - "line": { - "color": { - "description": "Sets the line color. By default uses either dark grey or white to increase contrast with background color.", - "editType": "none", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "none", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "none", - "role": "object", - "width": { - "description": "Sets the line width (in px).", - "dflt": 4, - "editType": "none", - "min": 0, - "valType": "number" - } - }, - "name": { - "description": "Sets new shape name. The name appears as the legend item.", - "editType": "none", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of new shapes.", - "dflt": 1, - "editType": "none", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "showlegend": { - "description": "Determines whether or not new shape is shown in the legend.", - "dflt": false, - "editType": "none", - "valType": "boolean" - }, - "visible": { - "description": "Determines whether or not new shape is visible. If *legendonly*, the shape is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "none", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "paper_bgcolor": { - "description": "Sets the background color of the paper where the graph is drawn.", - "dflt": "#fff", - "editType": "plot", - "valType": "color" - }, - "plot_bgcolor": { - "description": "Sets the background color of the plotting area in-between x and y axes.", - "dflt": "#fff", - "editType": "layoutstyle", - "valType": "color" - }, - "polar": { - "_isSubplotObj": true, - "angularaxis": { - "autotypenumbers": { - "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", - "dflt": "convert types", - "editType": "calc", - "valType": "enumerated", - "values": [ - "convert types", - "strict" - ] - }, - "categoryarray": { - "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", - "editType": "calc", - "valType": "data_array" - }, - "categoryarraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", - "editType": "none", - "valType": "string" - }, - "categoryorder": { - "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values.", - "dflt": "trace", - "editType": "calc", - "valType": "enumerated", - "values": [ - "trace", - "category ascending", - "category descending", - "array", - "total ascending", - "total descending", - "min ascending", - "min descending", - "max ascending", - "max descending", - "sum ascending", - "sum descending", - "mean ascending", - "mean descending", - "geometric mean ascending", - "geometric mean descending", - "median ascending", - "median descending" - ] - }, - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "direction": { - "description": "Sets the direction corresponding to positive angles.", - "dflt": "counterclockwise", - "editType": "calc", - "valType": "enumerated", - "values": [ - "counterclockwise", - "clockwise" - ] - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "plot", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "plot", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "plot", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "plot", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "plot", - "valType": "any" - }, - "layer": { - "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", - "dflt": "above traces", - "editType": "plot", - "valType": "enumerated", - "values": [ - "above traces", - "below traces" - ] - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "minorloglabels": { - "description": "Determines how minor log labels are displayed. If *small digits*, small digits i.e. 2 or 5 are displayed. If *complete*, complete digits are displayed. If *none*, no labels are displayed.", - "dflt": "small digits", - "editType": "plot", - "valType": "enumerated", - "values": [ - "small digits", - "complete", - "none" - ] - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "period": { - "description": "Set the angular period. Has an effect only when `angularaxis.type` is *category*.", - "editType": "calc", - "min": 0, - "valType": "number" - }, - "role": "object", - "rotation": { - "description": "Sets that start position (in degrees) of the angular axis By default, polar subplots with `direction` set to *counterclockwise* get a `rotation` of *0* which corresponds to due East (like what mathematicians prefer). In turn, polar with `direction` set to *clockwise* get a rotation of *90* which corresponds to due North (like on a compass),", - "editType": "calc", - "valType": "angle" - }, - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thetaunit": { - "description": "Sets the format unit of the formatted *theta* values. Has an effect only when `angularaxis.type` is *linear*.", - "dflt": "degrees", - "editType": "calc", - "valType": "enumerated", - "values": [ - "radians", - "degrees" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "plot", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "legend": { + "_isSubplotObj": true, + "bgcolor": { + "description": "Sets the legend background color. Defaults to `layout.paper_bgcolor`.", + "editType": "legend", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the color of the border enclosing the legend.", + "dflt": "#444", + "editType": "legend", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) of the border enclosing the legend.", + "dflt": 0, + "editType": "legend", + "min": 0, + "valType": "number" + }, + "editType": "legend", + "entrywidth": { + "description": "Sets the width (in px or fraction) of the legend. Use 0 to size the entry based on the text width, when `entrywidthmode` is set to *pixels*.", + "editType": "legend", + "min": 0, + "valType": "number" + }, + "entrywidthmode": { + "description": "Determines what entrywidth means.", + "dflt": "pixels", + "editType": "legend", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "font": { + "color": { + "editType": "legend", + "valType": "color" + }, + "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.", + "editType": "legend", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "legend", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "legend", + "valType": "string" + }, + "size": { + "editType": "legend", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "legend", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "legend", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "legend", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "legend", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "groupclick": { + "description": "Determines the behavior on legend group item click. *toggleitem* toggles the visibility of the individual item clicked on the graph. *togglegroup* toggles the visibility of all items in the same legendgroup as the item clicked on the graph.", + "dflt": "togglegroup", + "editType": "legend", + "valType": "enumerated", + "values": [ + "toggleitem", + "togglegroup" + ] + }, + "grouptitlefont": { + "color": { + "editType": "legend", + "valType": "color" + }, + "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.", + "editType": "legend", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "legend", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "legend", + "valType": "string" + }, + "size": { + "editType": "legend", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "legend", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "legend", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "legend", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "legend", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "indentation": { + "description": "Sets the indentation (in px) of the legend entries.", + "dflt": 0, + "editType": "legend", + "min": -15, + "valType": "number" + }, + "itemclick": { + "description": "Determines the behavior on legend item click. *toggle* toggles the visibility of the item clicked on the graph. *toggleothers* makes the clicked item the sole visible item on the graph. *false* disables legend item click interactions.", + "dflt": "toggle", + "editType": "legend", + "valType": "enumerated", + "values": [ + "toggle", + "toggleothers", + false + ] + }, + "itemdoubleclick": { + "description": "Determines the behavior on legend item double-click. *toggle* toggles the visibility of the item clicked on the graph. *toggleothers* makes the clicked item the sole visible item on the graph. *false* disables legend item double-click interactions.", + "dflt": "toggleothers", + "editType": "legend", + "valType": "enumerated", + "values": [ + "toggle", + "toggleothers", + false + ] + }, + "itemsizing": { + "description": "Determines if the legend items symbols scale with their corresponding *trace* attributes or remain *constant* independent of the symbol size on the graph.", + "dflt": "trace", + "editType": "legend", + "valType": "enumerated", + "values": [ + "trace", + "constant" + ] + }, + "itemwidth": { + "description": "Sets the width (in px) of the legend item symbols (the part other than the title.text).", + "dflt": 30, + "editType": "legend", + "min": 30, + "valType": "number" + }, + "maxheight": { + "description": "Sets the max height (in px) of the legend, or max height ratio (reference height * ratio) if less than or equal to 1. Default value is: 0.5 for horizontal legends; 1 for vertical legends. The minimum allowed height is 30px. For a ratio of 0.5, the legend will take up to 50% of the reference height before displaying a scrollbar. The reference height is the full layout height with the following exception: vertically oriented legends with a `yref` of `\"paper\", located to the side of the plot. In this case, the reference height is the plot height.", + "editType": "legend", + "min": 0, + "valType": "number" + }, + "orientation": { + "description": "Sets the orientation of the legend.", + "dflt": "v", + "editType": "legend", + "valType": "enumerated", + "values": [ + "v", + "h" + ] + }, + "role": "object", + "title": { + "editType": "legend", + "font": { + "color": { + "editType": "legend", + "valType": "color" + }, + "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.", + "editType": "legend", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "legend", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "legend", + "valType": "string" + }, + "size": { + "editType": "legend", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "legend", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "legend", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "legend", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "legend", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of legend's title with respect to the legend items. Defaulted to *top* with `orientation` is *h*. Defaulted to *left* with `orientation` is *v*. The *top left* options could be used to expand top center and top right are for horizontal alignment legend area in both x and y sides.", + "editType": "legend", + "valType": "enumerated", + "values": [ + "top", + "left", + "top left", + "top center", + "top right" + ] + }, + "text": { + "description": "Sets the title of the legend.", + "dflt": "", + "editType": "legend", + "valType": "string" + } + }, + "tracegroupgap": { + "description": "Sets the amount of vertical space (in px) between legend groups.", + "dflt": 10, + "editType": "legend", + "min": 0, + "valType": "number" + }, + "traceorder": { + "description": "Determines the order at which the legend items are displayed. If *normal*, the items are displayed top-to-bottom in the same order as the input data. If *reversed*, the items are displayed in the opposite order as *normal*. If *grouped*, the items are displayed in groups (when a trace `legendgroup` is provided). if *grouped+reversed*, the items are displayed in the opposite order as *grouped*.", + "editType": "legend", + "extras": [ + "normal" + ], + "flags": [ + "reversed", + "grouped" + ], + "valType": "flaglist" + }, + "uirevision": { + "description": "Controls persistence of legend-driven changes in trace and pie label visibility. Defaults to `layout.uirevision`.", + "editType": "none", + "valType": "any" + }, + "valign": { + "description": "Sets the vertical alignment of the symbols with respect to their associated text.", + "dflt": "middle", + "editType": "legend", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "visible": { + "description": "Determines whether or not this legend is visible.", + "dflt": true, + "editType": "legend", + "valType": "boolean" + }, + "x": { + "description": "Sets the x position with respect to `xref` (in normalized coordinates) of the legend. When `xref` is *paper*, defaults to *1.02* for vertical legends and defaults to *0* for horizontal legends. When `xref` is *container*, defaults to *1* for vertical legends and defaults to *0* for horizontal legends. Must be between *0* and *1* if `xref` is *container*. and between *-2* and *3* if `xref` is *paper*.", + "editType": "legend", + "valType": "number" + }, + "xanchor": { + "description": "Sets the legend's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the legend. Value *auto* anchors legends to the right for `x` values greater than or equal to 2/3, anchors legends to the left for `x` values less than or equal to 1/3 and anchors legends with respect to their center otherwise.", + "dflt": "left", + "editType": "legend", + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ] + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "layoutstyle", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` (in normalized coordinates) of the legend. When `yref` is *paper*, defaults to *1* for vertical legends, defaults to *-0.1* for horizontal legends on graphs w/o range sliders and defaults to *1.1* for horizontal legends on graph with one or multiple range sliders. When `yref` is *container*, defaults to *1*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "legend", + "valType": "number" + }, + "yanchor": { + "description": "Sets the legend's vertical position anchor. This anchor binds the `y` position to the *top*, *middle* or *bottom* of the legend. Value *auto* anchors legends at their bottom for `y` values less than or equal to 1/3, anchors legends to at their top for `y` values greater than or equal to 2/3 and anchors legends with respect to their middle otherwise.", + "editType": "legend", + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ] + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "layoutstyle", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" + "map": { + "_arrayAttrRegexps": [ + {} + ], + "_isSubplotObj": true, + "bearing": { + "description": "Sets the bearing angle of the map in degrees counter-clockwise from North (map.bearing).", + "dflt": 0, + "editType": "plot", + "valType": "number" + }, + "bounds": { + "east": { + "description": "Sets the maximum longitude of the map (in degrees East) if `west`, `south` and `north` are declared.", + "editType": "plot", + "valType": "number" + }, + "editType": "plot", + "north": { + "description": "Sets the maximum latitude of the map (in degrees North) if `east`, `west` and `south` are declared.", + "editType": "plot", + "valType": "number" + }, + "role": "object", + "south": { + "description": "Sets the minimum latitude of the map (in degrees North) if `east`, `west` and `north` are declared.", + "editType": "plot", + "valType": "number" + }, + "west": { + "description": "Sets the minimum longitude of the map (in degrees East) if `east`, `south` and `north` are declared.", + "editType": "plot", + "valType": "number" + } + }, + "center": { + "editType": "plot", + "lat": { + "description": "Sets the latitude of the center of the map (in degrees North).", + "dflt": 0, + "editType": "plot", + "valType": "number" + }, + "lon": { + "description": "Sets the longitude of the center of the map (in degrees East).", + "dflt": 0, + "editType": "plot", + "valType": "number" + }, + "role": "object" + }, + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this map subplot .", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "editType": "plot", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this map subplot .", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this map subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this map subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" } - ], - "valType": "info_array" }, "editType": "plot", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "plot", - "valType": "boolean" + "layers": { + "items": { + "layer": { + "below": { + "description": "Determines if the layer will be inserted before the layer with the specified ID. If omitted or set to '', the layer will be inserted above every existing layer.", + "editType": "plot", + "valType": "string" + }, + "circle": { + "editType": "plot", + "radius": { + "description": "Sets the circle radius (map.layer.paint.circle-radius). Has an effect only when `type` is set to *circle*.", + "dflt": 15, + "editType": "plot", + "valType": "number" + }, + "role": "object" + }, + "color": { + "description": "Sets the primary layer color. If `type` is *circle*, color corresponds to the circle color (map.layer.paint.circle-color) If `type` is *line*, color corresponds to the line color (map.layer.paint.line-color) If `type` is *fill*, color corresponds to the fill color (map.layer.paint.fill-color) If `type` is *symbol*, color corresponds to the icon color (map.layer.paint.icon-color)", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "coordinates": { + "description": "Sets the coordinates array contains [longitude, latitude] pairs for the image corners listed in clockwise order: top left, top right, bottom right, bottom left. Only has an effect for *image* `sourcetype`.", + "editType": "plot", + "valType": "any" + }, + "editType": "plot", + "fill": { + "editType": "plot", + "outlinecolor": { + "description": "Sets the fill outline color (map.layer.paint.fill-outline-color). Has an effect only when `type` is set to *fill*.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "role": "object" + }, + "line": { + "dash": { + "description": "Sets the length of dashes and gaps (map.layer.paint.line-dasharray). Has an effect only when `type` is set to *line*.", + "editType": "plot", + "valType": "data_array" + }, + "dashsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `dash`.", + "editType": "none", + "valType": "string" + }, + "editType": "plot", + "role": "object", + "width": { + "description": "Sets the line width (map.layer.paint.line-width). Has an effect only when `type` is set to *line*.", + "dflt": 2, + "editType": "plot", + "valType": "number" + } + }, + "maxzoom": { + "description": "Sets the maximum zoom level (map.layer.maxzoom). At zoom levels equal to or greater than the maxzoom, the layer will be hidden.", + "dflt": 24, + "editType": "plot", + "max": 24, + "min": 0, + "valType": "number" + }, + "minzoom": { + "description": "Sets the minimum zoom level (map.layer.minzoom). At zoom levels less than the minzoom, the layer will be hidden.", + "dflt": 0, + "editType": "plot", + "max": 24, + "min": 0, + "valType": "number" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "plot", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the layer. If `type` is *circle*, opacity corresponds to the circle opacity (map.layer.paint.circle-opacity) If `type` is *line*, opacity corresponds to the line opacity (map.layer.paint.line-opacity) If `type` is *fill*, opacity corresponds to the fill opacity (map.layer.paint.fill-opacity) If `type` is *symbol*, opacity corresponds to the icon/text opacity (map.layer.paint.text-opacity)", + "dflt": 1, + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "source": { + "description": "Sets the source data for this layer (map.layer.source). When `sourcetype` is set to *geojson*, `source` can be a URL to a GeoJSON or a GeoJSON object. When `sourcetype` is set to *vector* or *raster*, `source` can be a URL or an array of tile URLs. When `sourcetype` is set to *image*, `source` can be a URL to an image.", + "editType": "plot", + "valType": "any" + }, + "sourceattribution": { + "description": "Sets the attribution for this source.", + "editType": "plot", + "valType": "string" + }, + "sourcelayer": { + "description": "Specifies the layer to use from a vector tile source (map.layer.source-layer). Required for *vector* source type that supports multiple layers.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "sourcetype": { + "description": "Sets the source type for this layer, that is the type of the layer data.", + "dflt": "geojson", + "editType": "plot", + "valType": "enumerated", + "values": [ + "geojson", + "vector", + "raster", + "image" + ] + }, + "symbol": { + "editType": "plot", + "icon": { + "description": "Sets the symbol icon image (map.layer.layout.icon-image). Full list: https://www.mapbox.com/maki-icons/", + "dflt": "marker", + "editType": "plot", + "valType": "string" + }, + "iconsize": { + "description": "Sets the symbol icon size (map.layer.layout.icon-size). Has an effect only when `type` is set to *symbol*.", + "dflt": 10, + "editType": "plot", + "valType": "number" + }, + "placement": { + "description": "Sets the symbol and/or text placement (map.layer.layout.symbol-placement). If `placement` is *point*, the label is placed where the geometry is located If `placement` is *line*, the label is placed along the line of the geometry If `placement` is *line-center*, the label is placed on the center of the geometry", + "dflt": "point", + "editType": "plot", + "valType": "enumerated", + "values": [ + "point", + "line", + "line-center" + ] + }, + "role": "object", + "text": { + "description": "Sets the symbol text (map.layer.layout.text-field).", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "textfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "dflt": "Open Sans Regular, Arial Unicode MS Regular", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "textposition": { + "arrayOk": false, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", + "editType": "plot", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + } + }, + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "plot", + "valType": "string" + }, + "type": { + "description": "Sets the layer type, that is the how the layer data set in `source` will be rendered With `sourcetype` set to *geojson*, the following values are allowed: *circle*, *line*, *fill* and *symbol*. but note that *line* and *fill* are not compatible with Point GeoJSON geometries. With `sourcetype` set to *vector*, the following values are allowed: *circle*, *line*, *fill* and *symbol*. With `sourcetype` set to *raster* or *image*, only the *raster* value is allowed.", + "dflt": "circle", + "editType": "plot", + "valType": "enumerated", + "values": [ + "circle", + "line", + "fill", + "symbol", + "raster" + ] + }, + "visible": { + "description": "Determines whether this layer is displayed", + "dflt": true, + "editType": "plot", + "valType": "boolean" + } + } + }, + "role": "object" }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "plot", - "valType": "string" + "pitch": { + "description": "Sets the pitch angle of the map (in degrees, where *0* means perpendicular to the surface of the map) (map.pitch).", + "dflt": 0, + "editType": "plot", + "valType": "number" }, "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "plot", - "valType": "string" + "style": { + "description": "Defines the map layers that are rendered by default below the trace layers defined in `data`, which are themselves by default rendered below the layers defined in `layout.map.layers`. These layers can be defined either explicitly as a Map Style object which can contain multiple layer definitions that load data from any public or private Tile Map Service (TMS or XYZ) or Web Map Service (WMS) or implicitly by using one of the built-in style objects which use WMSes or by using a custom style URL Map Style objects are of the form described in the MapLibre GL JS documentation available at https://maplibre.org/maplibre-style-spec/ The built-in plotly.js styles objects are: basic, carto-darkmatter, carto-darkmatter-nolabels, carto-positron, carto-positron-nolabels, carto-voyager, carto-voyager-nolabels, dark, light, open-street-map, outdoors, satellite, satellite-streets, streets, white-bg.", + "dflt": "basic", + "editType": "plot", + "valType": "any", + "values": [ + "basic", + "carto-darkmatter", + "carto-darkmatter-nolabels", + "carto-positron", + "carto-positron-nolabels", + "carto-voyager", + "carto-voyager-nolabels", + "dark", + "light", + "open-street-map", + "outdoors", + "satellite", + "satellite-streets", + "streets", + "white-bg" + ] }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "plot", - "valType": "string" + "uirevision": { + "description": "Controls persistence of user-driven changes in the view: `center`, `zoom`, `bearing`, `pitch`. Defaults to `layout.uirevision`.", + "editType": "none", + "valType": "any" + }, + "zoom": { + "description": "Sets the zoom level of the map (map.zoom).", + "dflt": 1, + "editType": "plot", + "valType": "number" } - } }, - "role": "object" - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "plot", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "plot", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "plot", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "plot", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "type": { - "_noTemplating": true, - "description": "Sets the angular axis type. If *linear*, set `thetaunit` to determine the unit in which axis value are shown. If *category, use `period` to set the number of integer coordinates around polar axis.", - "dflt": "-", - "editType": "calc", - "valType": "enumerated", - "values": [ - "-", - "linear", - "category" - ] - }, - "uirevision": { - "description": "Controls persistence of user-driven changes in axis `rotation`. Defaults to `polar.uirevision`.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", - "dflt": true, - "editType": "plot", - "valType": "boolean" - } - }, - "bgcolor": { - "description": "Set the background color of the subplot", - "dflt": "#fff", - "editType": "plot", - "valType": "color" - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this polar subplot .", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "editType": "plot", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this polar subplot .", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this polar subplot (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this polar subplot (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { + "mapbox": { + "_arrayAttrRegexps": [ + {} + ], + "_isSubplotObj": true, + "accesstoken": { + "description": "Sets the mapbox access token to be used for this mapbox map. Alternatively, the mapbox access token can be set in the configuration options under `mapboxAccessToken`. Note that accessToken are only required when `style` (e.g with values : basic, streets, outdoors, light, dark, satellite, satellite-streets ) and/or a layout layer references the Mapbox server.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "bearing": { + "description": "Sets the bearing angle of the map in degrees counter-clockwise from North (mapbox.bearing).", + "dflt": 0, + "editType": "plot", + "valType": "number" + }, + "bounds": { + "east": { + "description": "Sets the maximum longitude of the map (in degrees East) if `west`, `south` and `north` are declared.", + "editType": "plot", + "valType": "number" + }, + "editType": "plot", + "north": { + "description": "Sets the maximum latitude of the map (in degrees North) if `east`, `west` and `south` are declared.", + "editType": "plot", + "valType": "number" + }, + "role": "object", + "south": { + "description": "Sets the minimum latitude of the map (in degrees North) if `east`, `west` and `north` are declared.", + "editType": "plot", + "valType": "number" + }, + "west": { + "description": "Sets the minimum longitude of the map (in degrees East) if `east`, `south` and `north` are declared.", + "editType": "plot", + "valType": "number" + } + }, + "center": { + "editType": "plot", + "lat": { + "description": "Sets the latitude of the center of the map (in degrees North).", + "dflt": 0, + "editType": "plot", + "valType": "number" + }, + "lon": { + "description": "Sets the longitude of the center of the map (in degrees East).", + "dflt": 0, + "editType": "plot", + "valType": "number" + }, + "role": "object" + }, + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this mapbox subplot .", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "editType": "plot", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this mapbox subplot .", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this mapbox subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this mapbox subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } + }, "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - } - }, - "editType": "calc", - "gridshape": { - "description": "Determines if the radial axis grid lines and angular axis line are drawn as *circular* sectors or as *linear* (polygon) sectors. Has an effect only when the angular axis has `type` *category*. Note that `radialaxis.angle` is snapped to the angle of the closest vertex when `gridshape` is *circular* (so that radial axis scale is the same as the data scale).", - "dflt": "circular", - "editType": "plot", - "valType": "enumerated", - "values": [ - "circular", - "linear" - ] - }, - "hole": { - "description": "Sets the fraction of the radius to cut out of the polar subplot.", - "dflt": 0, - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "radialaxis": { - "angle": { - "description": "Sets the angle (in degrees) from which the radial axis is drawn. Note that by default, radial axis line on the theta=0 line corresponds to a line pointing right (like what mathematicians prefer). Defaults to the first `polar.sector` angle.", - "editType": "plot", - "valType": "angle" - }, - "autorange": { - "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided and it has a value for both the lower and upper bound, `autorange` is set to *false*. Using *min* applies autorange only to set the minimum. Using *max* applies autorange only to set the maximum. Using *min reversed* applies autorange only to set the minimum on a reversed axis. Using *max reversed* applies autorange only to set the maximum on a reversed axis. Using *reversed* applies autorange on both ends and reverses the axis direction.", - "dflt": true, - "editType": "plot", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - true, - false, - "reversed", - "min reversed", - "max reversed", - "min", - "max" - ] - }, - "autorangeoptions": { - "clipmax": { - "description": "Clip autorange maximum if it goes beyond this value. Has no effect when `autorangeoptions.maxallowed` is provided.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "clipmin": { - "description": "Clip autorange minimum if it goes beyond this value. Has no effect when `autorangeoptions.minallowed` is provided.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "editType": "plot", - "include": { - "arrayOk": true, - "description": "Ensure this value is included in autorange.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "includesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `include`.", - "editType": "none", - "valType": "string" - }, - "maxallowed": { - "description": "Use this value exactly as autorange maximum.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "minallowed": { - "description": "Use this value exactly as autorange minimum.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "role": "object" - }, - "autotickangles": { - "description": "When `tickangle` is set to *auto*, it will be set to the first angle in this array that is large enough to prevent label overlap.", - "dflt": [ - 0, - 30, - 90 - ], - "editType": "ticks", - "freeLength": true, - "items": { - "valType": "angle" - }, - "valType": "info_array" - }, - "autotypenumbers": { - "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", - "dflt": "convert types", - "editType": "calc", - "valType": "enumerated", - "values": [ - "convert types", - "strict" - ] - }, - "calendar": { - "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "categoryarray": { - "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", - "editType": "calc", - "valType": "data_array" - }, - "categoryarraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", - "editType": "none", - "valType": "string" - }, - "categoryorder": { - "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values.", - "dflt": "trace", - "editType": "calc", - "valType": "enumerated", - "values": [ - "trace", - "category ascending", - "category descending", - "array", - "total ascending", - "total descending", - "min ascending", - "min descending", - "max ascending", - "max descending", - "sum ascending", - "sum descending", - "mean ascending", - "mean descending", - "geometric mean ascending", - "geometric mean descending", - "median ascending", - "median descending" - ] - }, - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "plot", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "plot", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "plot", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "plot", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "plot", - "valType": "any" - }, - "layer": { - "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", - "dflt": "above traces", - "editType": "plot", - "valType": "enumerated", - "values": [ - "above traces", - "below traces" - ] - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "maxallowed": { - "description": "Determines the maximum range of this axis.", - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - "minallowed": { - "description": "Determines the minimum range of this axis.", - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "minorloglabels": { - "description": "Determines how minor log labels are displayed. If *small digits*, small digits i.e. 2 or 5 are displayed. If *complete*, complete digits are displayed. If *none*, no labels are displayed.", - "dflt": "small digits", - "editType": "plot", - "valType": "enumerated", - "values": [ - "small digits", - "complete", - "none" - ] - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "range": { - "anim": true, - "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. Leaving either or both elements `null` impacts the default `autorange`.", - "editType": "plot", - "impliedEdits": { - "autorange": false + "layers": { + "items": { + "layer": { + "below": { + "description": "Determines if the layer will be inserted before the layer with the specified ID. If omitted or set to '', the layer will be inserted above every existing layer.", + "editType": "plot", + "valType": "string" + }, + "circle": { + "editType": "plot", + "radius": { + "description": "Sets the circle radius (mapbox.layer.paint.circle-radius). Has an effect only when `type` is set to *circle*.", + "dflt": 15, + "editType": "plot", + "valType": "number" + }, + "role": "object" + }, + "color": { + "description": "Sets the primary layer color. If `type` is *circle*, color corresponds to the circle color (mapbox.layer.paint.circle-color) If `type` is *line*, color corresponds to the line color (mapbox.layer.paint.line-color) If `type` is *fill*, color corresponds to the fill color (mapbox.layer.paint.fill-color) If `type` is *symbol*, color corresponds to the icon color (mapbox.layer.paint.icon-color)", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "coordinates": { + "description": "Sets the coordinates array contains [longitude, latitude] pairs for the image corners listed in clockwise order: top left, top right, bottom right, bottom left. Only has an effect for *image* `sourcetype`.", + "editType": "plot", + "valType": "any" + }, + "editType": "plot", + "fill": { + "editType": "plot", + "outlinecolor": { + "description": "Sets the fill outline color (mapbox.layer.paint.fill-outline-color). Has an effect only when `type` is set to *fill*.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "role": "object" + }, + "line": { + "dash": { + "description": "Sets the length of dashes and gaps (mapbox.layer.paint.line-dasharray). Has an effect only when `type` is set to *line*.", + "editType": "plot", + "valType": "data_array" + }, + "dashsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `dash`.", + "editType": "none", + "valType": "string" + }, + "editType": "plot", + "role": "object", + "width": { + "description": "Sets the line width (mapbox.layer.paint.line-width). Has an effect only when `type` is set to *line*.", + "dflt": 2, + "editType": "plot", + "valType": "number" + } + }, + "maxzoom": { + "description": "Sets the maximum zoom level (mapbox.layer.maxzoom). At zoom levels equal to or greater than the maxzoom, the layer will be hidden.", + "dflt": 24, + "editType": "plot", + "max": 24, + "min": 0, + "valType": "number" + }, + "minzoom": { + "description": "Sets the minimum zoom level (mapbox.layer.minzoom). At zoom levels less than the minzoom, the layer will be hidden.", + "dflt": 0, + "editType": "plot", + "max": 24, + "min": 0, + "valType": "number" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "plot", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the layer. If `type` is *circle*, opacity corresponds to the circle opacity (mapbox.layer.paint.circle-opacity) If `type` is *line*, opacity corresponds to the line opacity (mapbox.layer.paint.line-opacity) If `type` is *fill*, opacity corresponds to the fill opacity (mapbox.layer.paint.fill-opacity) If `type` is *symbol*, opacity corresponds to the icon/text opacity (mapbox.layer.paint.text-opacity)", + "dflt": 1, + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "source": { + "description": "Sets the source data for this layer (mapbox.layer.source). When `sourcetype` is set to *geojson*, `source` can be a URL to a GeoJSON or a GeoJSON object. When `sourcetype` is set to *vector* or *raster*, `source` can be a URL or an array of tile URLs. When `sourcetype` is set to *image*, `source` can be a URL to an image.", + "editType": "plot", + "valType": "any" + }, + "sourceattribution": { + "description": "Sets the attribution for this source.", + "editType": "plot", + "valType": "string" + }, + "sourcelayer": { + "description": "Specifies the layer to use from a vector tile source (mapbox.layer.source-layer). Required for *vector* source type that supports multiple layers.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "sourcetype": { + "description": "Sets the source type for this layer, that is the type of the layer data.", + "dflt": "geojson", + "editType": "plot", + "valType": "enumerated", + "values": [ + "geojson", + "vector", + "raster", + "image" + ] + }, + "symbol": { + "editType": "plot", + "icon": { + "description": "Sets the symbol icon image (mapbox.layer.layout.icon-image). Full list: https://www.mapbox.com/maki-icons/", + "dflt": "marker", + "editType": "plot", + "valType": "string" + }, + "iconsize": { + "description": "Sets the symbol icon size (mapbox.layer.layout.icon-size). Has an effect only when `type` is set to *symbol*.", + "dflt": 10, + "editType": "plot", + "valType": "number" + }, + "placement": { + "description": "Sets the symbol and/or text placement (mapbox.layer.layout.symbol-placement). If `placement` is *point*, the label is placed where the geometry is located If `placement` is *line*, the label is placed along the line of the geometry If `placement` is *line-center*, the label is placed on the center of the geometry", + "dflt": "point", + "editType": "plot", + "valType": "enumerated", + "values": [ + "point", + "line", + "line-center" + ] + }, + "role": "object", + "text": { + "description": "Sets the symbol text (mapbox.layer.layout.text-field).", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "textfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "dflt": "Open Sans Regular, Arial Unicode MS Regular", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "textposition": { + "arrayOk": false, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", + "editType": "plot", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + } + }, + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "plot", + "valType": "string" + }, + "type": { + "description": "Sets the layer type, that is the how the layer data set in `source` will be rendered With `sourcetype` set to *geojson*, the following values are allowed: *circle*, *line*, *fill* and *symbol*. but note that *line* and *fill* are not compatible with Point GeoJSON geometries. With `sourcetype` set to *vector*, the following values are allowed: *circle*, *line*, *fill* and *symbol*. With `sourcetype` set to *raster* or *image*, only the *raster* value is allowed.", + "dflt": "circle", + "editType": "plot", + "valType": "enumerated", + "values": [ + "circle", + "line", + "fill", + "symbol", + "raster" + ] + }, + "visible": { + "description": "Determines whether this layer is displayed", + "dflt": true, + "editType": "plot", + "valType": "boolean" + } + } + }, + "role": "object" + }, + "pitch": { + "description": "Sets the pitch angle of the map (in degrees, where *0* means perpendicular to the surface of the map) (mapbox.pitch).", + "dflt": 0, + "editType": "plot", + "valType": "number" + }, + "role": "object", + "style": { + "description": "Defines the map layers that are rendered by default below the trace layers defined in `data`, which are themselves by default rendered below the layers defined in `layout.mapbox.layers`. These layers can be defined either explicitly as a Mapbox Style object which can contain multiple layer definitions that load data from any public or private Tile Map Service (TMS or XYZ) or Web Map Service (WMS) or implicitly by using one of the built-in style objects which use WMSes which do not require any access tokens, or by using a default Mapbox style or custom Mapbox style URL, both of which require a Mapbox access token Note that Mapbox access token can be set in the `accesstoken` attribute or in the `mapboxAccessToken` config option. Mapbox Style objects are of the form described in the Mapbox GL JS documentation available at https://docs.mapbox.com/mapbox-gl-js/style-spec The built-in plotly.js styles objects are: carto-darkmatter, carto-positron, open-street-map, stamen-terrain, stamen-toner, stamen-watercolor, white-bg The built-in Mapbox styles are: basic, streets, outdoors, light, dark, satellite, satellite-streets Mapbox style URLs are of the form: mapbox://mapbox.mapbox--", + "dflt": "basic", + "editType": "plot", + "valType": "any", + "values": [ + "basic", + "streets", + "outdoors", + "light", + "dark", + "satellite", + "satellite-streets", + "carto-darkmatter", + "carto-positron", + "open-street-map", + "stamen-terrain", + "stamen-toner", + "stamen-watercolor", + "white-bg" + ] + }, + "uirevision": { + "description": "Controls persistence of user-driven changes in the view: `center`, `zoom`, `bearing`, `pitch`. Defaults to `layout.uirevision`.", + "editType": "none", + "valType": "any" + }, + "zoom": { + "description": "Sets the zoom level of the map (mapbox.zoom).", + "dflt": 1, + "editType": "plot", + "valType": "number" + } }, - "items": [ - { - "editType": "plot", - "impliedEdits": { - "^autorange": false + "margin": { + "autoexpand": { + "description": "Turns on/off margin expansion computations. Legends, colorbars, updatemenus, sliders, axis rangeselector and rangeslider are allowed to push the margins by defaults.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "b": { + "description": "Sets the bottom margin (in px).", + "dflt": 80, + "editType": "plot", + "min": 0, + "valType": "number" }, - "valType": "any" - }, - { "editType": "plot", - "impliedEdits": { - "^autorange": false + "l": { + "description": "Sets the left margin (in px).", + "dflt": 80, + "editType": "plot", + "min": 0, + "valType": "number" }, - "valType": "any" - } - ], - "valType": "info_array" - }, - "rangemode": { - "description": "If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. If *normal*, the range is computed in relation to the extrema of the input data (same behavior as for cartesian axes).", - "dflt": "tozero", - "editType": "calc", - "valType": "enumerated", - "values": [ - "tozero", - "nonnegative", - "normal" - ] - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "side": { - "description": "Determines on which side of radial axis line the tick and tick labels appear.", - "dflt": "clockwise", - "editType": "plot", - "valType": "enumerated", - "values": [ - "clockwise", - "counterclockwise" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "plot", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" + "pad": { + "description": "Sets the amount of padding (in px) between the plotting area and the axis lines", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "r": { + "description": "Sets the right margin (in px).", + "dflt": 80, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "role": "object", + "t": { + "description": "Sets the top margin (in px).", + "dflt": 100, + "editType": "plot", + "min": 0, + "valType": "number" + } }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information that can be used in various `text` attributes. Attributes such as the graph, axis and colorbar `title.text`, annotation `text` `trace.name` in legend items, `rangeselector`, `updatemenus` and `sliders` `label` text all support `meta`. One can access `meta` fields using template strings: `%{meta[i]}` where `i` is the index of the `meta` item in question. `meta` can also be an object for example `{key: value}` which can be accessed %{meta[key]}.", + "editType": "plot", + "valType": "any" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "minreducedheight": { + "description": "Minimum height of the plot with margin.automargin applied (in px)", + "dflt": 64, + "editType": "plot", + "min": 2, + "valType": "number" }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "minreducedwidth": { + "description": "Minimum width of the plot with margin.automargin applied (in px)", + "dflt": 64, + "editType": "plot", + "min": 2, + "valType": "number" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" - } - ], - "valType": "info_array" + "modebar": { + "activecolor": { + "description": "Sets the color of the active or hovered on icons in the modebar.", + "editType": "modebar", + "valType": "color" }, - "editType": "plot", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "plot", - "valType": "boolean" + "add": { + "arrayOk": true, + "description": "Determines which predefined modebar buttons to add. Please note that these buttons will only be shown if they are compatible with all trace types used in a graph. Similar to `config.modeBarButtonsToAdd` option. This may include *v1hovermode*, *hoverclosest*, *hovercompare*, *togglehover*, *togglespikelines*, *drawline*, *drawopenpath*, *drawclosedpath*, *drawcircle*, *drawrect*, *eraseshape*.", + "dflt": "", + "editType": "modebar", + "valType": "string" }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "plot", - "valType": "string" + "addsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `add`.", + "editType": "none", + "valType": "string" }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "plot", - "valType": "string" + "bgcolor": { + "description": "Sets the background color of the modebar.", + "editType": "modebar", + "valType": "color" }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "plot", - "valType": "string" + "color": { + "description": "Sets the color of the icons in the modebar.", + "editType": "modebar", + "valType": "color" + }, + "editType": "modebar", + "orientation": { + "description": "Sets the orientation of the modebar.", + "dflt": "h", + "editType": "modebar", + "valType": "enumerated", + "values": [ + "v", + "h" + ] + }, + "remove": { + "arrayOk": true, + "description": "Determines which predefined modebar buttons to remove. Similar to `config.modeBarButtonsToRemove` option. This may include *autoScale2d*, *autoscale*, *editInChartStudio*, *editinchartstudio*, *hoverCompareCartesian*, *hovercompare*, *lasso*, *lasso2d*, *orbitRotation*, *orbitrotation*, *pan*, *pan2d*, *pan3d*, *reset*, *resetCameraDefault3d*, *resetCameraLastSave3d*, *resetGeo*, *resetSankeyGroup*, *resetScale2d*, *resetViewMap*, *resetViewMapbox*, *resetViews*, *resetcameradefault*, *resetcameralastsave*, *resetsankeygroup*, *resetscale*, *resetview*, *resetviews*, *select*, *select2d*, *sendDataToCloud*, *senddatatocloud*, *tableRotation*, *tablerotation*, *toImage*, *toggleHover*, *toggleSpikelines*, *togglehover*, *togglespikelines*, *toimage*, *zoom*, *zoom2d*, *zoom3d*, *zoomIn2d*, *zoomInGeo*, *zoomInMap*, *zoomInMapbox*, *zoomOut2d*, *zoomOutGeo*, *zoomOutMap*, *zoomOutMapbox*, *zoomin*, *zoomout*.", + "dflt": "", + "editType": "modebar", + "valType": "string" + }, + "removesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `remove`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "uirevision": { + "description": "Controls persistence of user-driven changes related to the modebar, including `hovermode`, `dragmode`, and `showspikes` at both the root level and inside subplots. Defaults to `layout.uirevision`.", + "editType": "none", + "valType": "any" } - } }, - "role": "object" - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "plot", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "plot", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "plot", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "plot", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "plot", - "font": { - "color": { - "editType": "ticks", - "valType": "color" - }, - "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.", - "editType": "ticks", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "ticks", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "ticks", - "valType": "string" - }, - "size": { - "editType": "ticks", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "ticks", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of this axis.", - "dflt": "", - "editType": "plot", - "valType": "string" - } - }, - "type": { - "_noTemplating": true, - "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", - "dflt": "-", - "editType": "calc", - "valType": "enumerated", - "values": [ - "-", - "linear", - "log", - "date", - "category" - ] - }, - "uirevision": { - "description": "Controls persistence of user-driven changes in axis `range`, `autorange`, `angle`, and `title` if in `editable: true` configuration. Defaults to `polar.uirevision`.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", - "dflt": true, - "editType": "plot", - "valType": "boolean" - } - }, - "role": "object", - "sector": { - "description": "Sets angular span of this polar subplot with two angles (in degrees). Sector are assumed to be spanned in the counterclockwise direction with *0* corresponding to rightmost limit of the polar subplot.", - "dflt": [ - 0, - 360 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "number" + "newselection": { + "editType": "none", + "line": { + "color": { + "description": "Sets the line color. By default uses either dark grey or white to increase contrast with background color.", + "editType": "none", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "dot", + "editType": "none", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "none", + "role": "object", + "width": { + "description": "Sets the line width (in px).", + "dflt": 1, + "editType": "none", + "min": 1, + "valType": "number" + } + }, + "mode": { + "description": "Describes how a new selection is created. If `immediate`, a new selection is created after first mouse up. If `gradual`, a new selection is not created after first mouse. By adding to and subtracting from the initial selection, this option allows declaring extra outlines of the selection.", + "dflt": "immediate", + "editType": "none", + "valType": "enumerated", + "values": [ + "immediate", + "gradual" + ] + }, + "role": "object" }, - { - "editType": "plot", - "valType": "number" - } - ], - "valType": "info_array" - }, - "uirevision": { - "description": "Controls persistence of user-driven changes in axis attributes, if not overridden in the individual axes. Defaults to `layout.uirevision`.", - "editType": "none", - "valType": "any" - } - }, - "scene": { - "_arrayAttrRegexps": [ - {} - ], - "_isSubplotObj": true, - "annotations": { - "items": { - "annotation": { - "align": { - "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", - "dflt": "center", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "arrowcolor": { - "description": "Sets the color of the annotation arrow.", - "editType": "calc", - "valType": "color" - }, - "arrowhead": { - "description": "Sets the end annotation arrow head style.", - "dflt": 1, - "editType": "calc", - "max": 8, - "min": 0, - "valType": "integer" - }, - "arrowside": { - "description": "Sets the annotation arrow head position.", - "dflt": "end", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "end", - "start" - ], - "valType": "flaglist" - }, - "arrowsize": { - "description": "Sets the size of the end annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line.", - "dflt": 1, - "editType": "calc", - "min": 0.3, - "valType": "number" - }, - "arrowwidth": { - "description": "Sets the width (in px) of annotation arrow line.", - "editType": "calc", - "min": 0.1, - "valType": "number" - }, - "ax": { - "description": "Sets the x component of the arrow tail about the arrow head (in pixels).", - "editType": "calc", - "valType": "number" - }, - "ay": { - "description": "Sets the y component of the arrow tail about the arrow head (in pixels).", - "editType": "calc", - "valType": "number" - }, - "bgcolor": { - "description": "Sets the background color of the annotation.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the color of the border enclosing the annotation `text`.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "borderpad": { - "description": "Sets the padding (in px) between the `text` and the enclosing border.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "borderwidth": { - "description": "Sets the width (in px) of the border enclosing the annotation `text`.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "captureevents": { - "description": "Determines whether the annotation text box captures mouse move and click events, or allows those events to pass through to data points in the plot that may be behind the annotation. By default `captureevents` is *false* unless `hovertext` is provided. If you use the event `plotly_clickannotation` without `hovertext` you must explicitly enable `captureevents`.", - "editType": "calc", - "valType": "boolean" - }, - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "valType": "color" + "newshape": { + "drawdirection": { + "description": "When `dragmode` is set to *drawrect*, *drawline* or *drawcircle* this limits the drag to be horizontal, vertical or diagonal. Using *diagonal* there is no limit e.g. in drawing lines in any direction. *ortho* limits the draw to be either horizontal or vertical. *horizontal* allows horizontal extend. *vertical* allows vertical extend.", + "dflt": "diagonal", + "editType": "none", + "valType": "enumerated", + "values": [ + "ortho", + "horizontal", + "vertical", + "diagonal" + ] }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" + "editType": "none", + "fillcolor": { + "description": "Sets the color filling new shapes' interior. Please note that if using a fillcolor with alpha greater than half, drag inside the active shape starts moving the shape underneath, otherwise a new shape could be started over.", + "dflt": "rgba(0,0,0,0)", + "editType": "none", + "valType": "color" }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "fillrule": { + "description": "Determines the path's interior. For more info please visit https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/fill-rule", + "dflt": "evenodd", + "editType": "none", + "valType": "enumerated", + "values": [ + "evenodd", + "nonzero" + ] }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" + "label": { + "editType": "none", + "font": { + "color": { + "editType": "none", + "valType": "color" + }, + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "size": { + "editType": "none", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "padding": { + "description": "Sets padding (in px) between edge of label and edge of new shape.", + "dflt": 3, + "editType": "none", + "min": 0, + "valType": "number" + }, + "role": "object", + "text": { + "description": "Sets the text to display with the new shape. It is also used for legend item if `name` is not provided.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "textangle": { + "description": "Sets the angle at which the label text is drawn with respect to the horizontal. For lines, angle *auto* is the same angle as the line. For all other shapes, angle *auto* is horizontal.", + "dflt": "auto", + "editType": "none", + "valType": "angle" + }, + "textposition": { + "description": "Sets the position of the label text relative to the new shape. Supported values for rectangles, circles and paths are *top left*, *top center*, *top right*, *middle left*, *middle center*, *middle right*, *bottom left*, *bottom center*, and *bottom right*. Supported values for lines are *start*, *middle*, and *end*. Default: *middle center* for rectangles, circles, and paths; *middle* for lines.", + "editType": "none", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right", + "start", + "middle", + "end" + ] + }, + "texttemplate": { + "description": "Template string used for rendering the new shape's label. Note that this will override `text`. Variables are inserted using %{variable}, for example \"x0: %{x0}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{x0:$.2f}\". See https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{x0|%m %b %Y}\". See https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. A single multiplication or division operation may be applied to numeric variables, and combined with d3 number formatting, for example \"Length in cm: %{x0*2.54}\", \"%{slope*60:.1f} meters per second.\" For log axes, variable values are given in log units. For date axes, x/y coordinate variables and center variables use datetimes, while all other variable values use values in ms. Finally, the template string has access to variables `x0`, `x1`, `y0`, `y1`, `slope`, `dx`, `dy`, `width`, `height`, `length`, `xcenter` and `ycenter`. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "xanchor": { + "description": "Sets the label's horizontal position anchor This anchor binds the specified `textposition` to the *left*, *center* or *right* of the label text. For example, if `textposition` is set to *top right* and `xanchor` to *right* then the right-most portion of the label text lines up with the right-most edge of the new shape.", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ] + }, + "yanchor": { + "description": "Sets the label's vertical position anchor This anchor binds the specified `textposition` to the *top*, *middle* or *bottom* of the label text. For example, if `textposition` is set to *top right* and `yanchor` to *top* then the top-most portion of the label text lines up with the top-most edge of the new shape.", + "editType": "none", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + } }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" + "layer": { + "description": "Specifies whether new shapes are drawn below gridlines (*below*), between gridlines and traces (*between*) or above traces (*above*).", + "dflt": "above", + "editType": "none", + "valType": "enumerated", + "values": [ + "below", + "above", + "between" + ] }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "legend": { + "description": "Sets the reference to a legend to show new shape in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "none", + "valType": "subplotid" }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "legendgroup": { + "description": "Sets the legend group for new shape. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "none", + "valType": "string" }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "legendgrouptitle": { + "editType": "none", + "font": { + "color": { + "editType": "none", + "valType": "color" + }, + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "size": { + "editType": "none", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "none", + "valType": "string" + } }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "height": { - "description": "Sets an explicit height for the text box. null (default) lets the text set the box height. Taller text will be clipped.", - "dflt": null, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "hoverlabel": { - "bgcolor": { - "description": "Sets the background color of the hover label. By default uses the annotation's `bgcolor` made opaque, or white if it was transparent.", - "editType": "calc", - "valType": "color" + "legendrank": { + "description": "Sets the legend rank for new shape. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items.", + "dflt": 1000, + "editType": "none", + "valType": "number" }, - "bordercolor": { - "description": "Sets the border color of the hover label. By default uses either dark grey or white, for maximum contrast with `hoverlabel.bgcolor`.", - "editType": "calc", - "valType": "color" + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for new shape.", + "editType": "none", + "min": 0, + "valType": "number" }, - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", + "line": { + "color": { + "description": "Sets the line color. By default uses either dark grey or white to increase contrast with background color.", + "editType": "none", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "none", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "none", + "role": "object", + "width": { + "description": "Sets the line width (in px).", + "dflt": 4, + "editType": "none", + "min": 0, + "valType": "number" + } + }, + "name": { + "description": "Sets new shape name. The name appears as the legend item.", + "editType": "none", "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, + }, + "opacity": { + "description": "Sets the opacity of new shapes.", + "dflt": 1, + "editType": "none", + "max": 1, + "min": 0, "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", + }, + "role": "object", + "showlegend": { + "description": "Determines whether or not new shape is shown in the legend.", + "dflt": false, + "editType": "none", + "valType": "boolean" + }, + "visible": { + "description": "Determines whether or not new shape is visible. If *legendonly*, the shape is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "none", "valType": "enumerated", "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" + true, + false, + "legendonly" ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object" - }, - "hovertext": { - "description": "Sets text to appear when hovering over this annotation. If omitted or blank, no hover label will appear.", - "editType": "calc", - "valType": "string" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "calc", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the annotation (text + arrow).", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "showarrow": { - "description": "Determines whether or not the annotation is drawn with an arrow. If *true*, `text` is placed near the arrow's tail. If *false*, `text` lines up with the `x` and `y` provided.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "standoff": { - "description": "Sets a distance, in pixels, to move the end arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "startarrowhead": { - "description": "Sets the start annotation arrow head style.", - "dflt": 1, - "editType": "calc", - "max": 8, - "min": 0, - "valType": "integer" - }, - "startarrowsize": { - "description": "Sets the size of the start annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line.", - "dflt": 1, - "editType": "calc", - "min": 0.3, - "valType": "number" - }, - "startstandoff": { - "description": "Sets a distance, in pixels, to move the start arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "text": { - "description": "Sets the text associated with this annotation. Plotly uses a subset of HTML tags to do things like newline (`
`), bold (``), italics (``), hyperlinks (``). Tags ``, ``, ``, ``, ``, and `` are also supported.", - "editType": "calc", - "valType": "string" - }, - "textangle": { - "description": "Sets the angle at which the `text` is drawn with respect to the horizontal.", - "dflt": 0, - "editType": "calc", - "valType": "angle" - }, - "valign": { - "description": "Sets the vertical alignment of the `text` within the box. Has an effect only if an explicit height is set to override the text height.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "visible": { - "description": "Determines whether or not this annotation is visible.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets an explicit width for the text box. null (default) lets the text set the box width. Wider text will be clipped. There is no automatic wrapping; use
to start a new line.", - "dflt": null, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "x": { - "description": "Sets the annotation's x position.", - "editType": "calc", - "valType": "any" - }, - "xanchor": { - "description": "Sets the text box's horizontal position anchor This anchor binds the `x` position to the *left*, *center* or *right* of the annotation. For example, if `x` is set to 1, `xref` to *paper* and `xanchor` to *right* then the right-most portion of the annotation lines up with the right-most edge of the plotting area. If *auto*, the anchor is equivalent to *center* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side.", - "dflt": "auto", - "editType": "calc", - "valType": "enumerated", - "values": [ - "auto", - "left", - "center", - "right" - ] - }, - "xshift": { - "description": "Shifts the position of the whole annotation and arrow to the right (positive) or left (negative) by this many pixels.", - "dflt": 0, - "editType": "calc", - "valType": "number" - }, - "y": { - "description": "Sets the annotation's y position.", - "editType": "calc", - "valType": "any" - }, - "yanchor": { - "description": "Sets the text box's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the annotation. For example, if `y` is set to 1, `yref` to *paper* and `yanchor` to *top* then the top-most portion of the annotation lines up with the top-most edge of the plotting area. If *auto*, the anchor is equivalent to *middle* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side.", - "dflt": "auto", - "editType": "calc", - "valType": "enumerated", - "values": [ - "auto", - "top", - "middle", - "bottom" - ] - }, - "yshift": { - "description": "Shifts the position of the whole annotation and arrow up (positive) or down (negative) by this many pixels.", - "dflt": 0, - "editType": "calc", - "valType": "number" - }, - "z": { - "description": "Sets the annotation's z position.", - "editType": "calc", - "valType": "any" - } - } - }, - "role": "object" - }, - "aspectmode": { - "description": "If *cube*, this scene's axes are drawn as a cube, regardless of the axes' ranges. If *data*, this scene's axes are drawn in proportion with the axes' ranges. If *manual*, this scene's axes are drawn in proportion with the input of *aspectratio* (the default behavior if *aspectratio* is provided). If *auto*, this scene's axes are drawn using the results of *data* except when one axis is more than four times the size of the two others, where in that case the results of *cube* are used.", - "dflt": "auto", - "editType": "plot", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "cube", - "data", - "manual" - ] - }, - "aspectratio": { - "description": "Sets this scene's axis aspectratio.", - "editType": "plot", - "impliedEdits": { - "aspectmode": "manual", - "role": "object" - }, - "role": "object", - "x": { - "editType": "plot", - "impliedEdits": { - "^aspectmode": "manual" - }, - "min": 0, - "valType": "number" - }, - "y": { - "editType": "plot", - "impliedEdits": { - "^aspectmode": "manual" - }, - "min": 0, - "valType": "number" - }, - "z": { - "editType": "plot", - "impliedEdits": { - "^aspectmode": "manual" - }, - "min": 0, - "valType": "number" - } - }, - "bgcolor": { - "dflt": "rgba(0,0,0,0)", - "editType": "plot", - "valType": "color" - }, - "camera": { - "center": { - "description": "Sets the (x,y,z) components of the 'center' camera vector This vector determines the translation (x,y,z) space about the center of this scene. By default, there is no such translation.", - "editType": "camera", - "role": "object", - "x": { - "dflt": 0, - "editType": "camera", - "valType": "number" - }, - "y": { - "dflt": 0, - "editType": "camera", - "valType": "number" - }, - "z": { - "dflt": 0, - "editType": "camera", - "valType": "number" - } - }, - "editType": "camera", - "eye": { - "description": "Sets the (x,y,z) components of the 'eye' camera vector. This vector determines the view point about the origin of this scene.", - "editType": "camera", - "role": "object", - "x": { - "dflt": 1.25, - "editType": "camera", - "valType": "number" - }, - "y": { - "dflt": 1.25, - "editType": "camera", - "valType": "number" - }, - "z": { - "dflt": 1.25, - "editType": "camera", - "valType": "number" - } - }, - "projection": { - "editType": "calc", - "role": "object", - "type": { - "description": "Sets the projection type. The projection type could be either *perspective* or *orthographic*. The default is *perspective*.", - "dflt": "perspective", - "editType": "calc", - "valType": "enumerated", - "values": [ - "perspective", - "orthographic" - ] - } - }, - "role": "object", - "up": { - "description": "Sets the (x,y,z) components of the 'up' camera vector. This vector determines the up direction of this scene with respect to the page. The default is *{x: 0, y: 0, z: 1}* which means that the z axis points up.", - "editType": "camera", - "role": "object", - "x": { - "dflt": 0, - "editType": "camera", - "valType": "number" - }, - "y": { - "dflt": 0, - "editType": "camera", - "valType": "number" - }, - "z": { - "dflt": 1, - "editType": "camera", - "valType": "number" - } - } - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this scene subplot .", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "editType": "plot", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this scene subplot .", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this scene subplot (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this scene subplot (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - } - }, - "dragmode": { - "description": "Determines the mode of drag interactions for this scene.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "orbit", - "turntable", - "zoom", - "pan", - false - ] - }, - "editType": "plot", - "hovermode": { - "description": "Determines the mode of hover interactions for this scene.", - "dflt": "closest", - "editType": "modebar", - "valType": "enumerated", - "values": [ - "closest", - false - ] - }, - "role": "object", - "uirevision": { - "description": "Controls persistence of user-driven changes in camera attributes. Defaults to `layout.uirevision`.", - "editType": "none", - "valType": "any" - }, - "xaxis": { - "autorange": { - "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided and it has a value for both the lower and upper bound, `autorange` is set to *false*. Using *min* applies autorange only to set the minimum. Using *max* applies autorange only to set the maximum. Using *min reversed* applies autorange only to set the minimum on a reversed axis. Using *max reversed* applies autorange only to set the maximum on a reversed axis. Using *reversed* applies autorange on both ends and reverses the axis direction.", - "dflt": true, - "editType": "plot", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - true, - false, - "reversed", - "min reversed", - "max reversed", - "min", - "max" - ] - }, - "autorangeoptions": { - "clipmax": { - "description": "Clip autorange maximum if it goes beyond this value. Has no effect when `autorangeoptions.maxallowed` is provided.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "clipmin": { - "description": "Clip autorange minimum if it goes beyond this value. Has no effect when `autorangeoptions.minallowed` is provided.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "editType": "plot", - "include": { - "arrayOk": true, - "description": "Ensure this value is included in autorange.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "includesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `include`.", - "editType": "none", - "valType": "string" - }, - "maxallowed": { - "description": "Use this value exactly as autorange maximum.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "minallowed": { - "description": "Use this value exactly as autorange minimum.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "role": "object" - }, - "autotypenumbers": { - "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", - "dflt": "convert types", - "editType": "plot", - "valType": "enumerated", - "values": [ - "convert types", - "strict" - ] - }, - "backgroundcolor": { - "description": "Sets the background color of this axis' wall.", - "dflt": "rgba(204, 204, 204, 0.5)", - "editType": "plot", - "valType": "color" - }, - "calendar": { - "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "categoryarray": { - "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", - "editType": "plot", - "valType": "data_array" - }, - "categoryarraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", - "editType": "none", - "valType": "string" - }, - "categoryorder": { - "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values.", - "dflt": "trace", - "editType": "plot", - "valType": "enumerated", - "values": [ - "trace", - "category ascending", - "category descending", - "array", - "total ascending", - "total descending", - "min ascending", - "min descending", - "max ascending", - "max descending", - "sum ascending", - "sum descending", - "mean ascending", - "mean descending", - "geometric mean ascending", - "geometric mean descending", - "median ascending", - "median descending" - ] - }, - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "plot", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "plot", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "rgb(204, 204, 204)", - "editType": "plot", - "valType": "color" - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "plot", - "valType": "any" - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "maxallowed": { - "description": "Determines the maximum range of this axis.", - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - "minallowed": { - "description": "Determines the minimum range of this axis.", - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "mirror": { - "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", - "dflt": false, - "editType": "plot", - "valType": "enumerated", - "values": [ - true, - "ticks", - false, - "all", - "allticks" - ] - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "range": { - "anim": false, - "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. Leaving either or both elements `null` impacts the default `autorange`.", - "editType": "plot", - "impliedEdits": { - "autorange": false + } }, - "items": [ - { + "paper_bgcolor": { + "description": "Sets the background color of the paper where the graph is drawn.", + "dflt": "#fff", "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - { - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - } - ], - "valType": "info_array" - }, - "rangemode": { - "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "tozero", - "nonnegative" - ] - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showaxeslabels": { - "description": "Sets whether or not this axis is labeled", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showbackground": { - "description": "Sets whether or not this axis' wall has a background color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "editType": "plot", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showspikes": { - "description": "Sets whether or not spikes starting from data points to this axis' wall are shown on hover.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "spikecolor": { - "description": "Sets the color of the spikes.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "spikesides": { - "description": "Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "spikethickness": { - "description": "Sets the thickness (in px) of the spikes.", - "dflt": 2, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "plot", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "valType": "color" }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "plot_bgcolor": { + "description": "Sets the background color of the plotting area in-between x and y axes.", + "dflt": "#fff", + "editType": "layoutstyle", + "valType": "color" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" + "polar": { + "_isSubplotObj": true, + "angularaxis": { + "autotypenumbers": { + "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", + "dflt": "convert types", + "editType": "calc", + "valType": "enumerated", + "values": [ + "convert types", + "strict" + ] + }, + "categoryarray": { + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", + "editType": "calc", + "valType": "data_array" + }, + "categoryarraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", + "editType": "none", + "valType": "string" + }, + "categoryorder": { + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values.", + "dflt": "trace", + "editType": "calc", + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array", + "total ascending", + "total descending", + "min ascending", + "min descending", + "max ascending", + "max descending", + "sum ascending", + "sum descending", + "mean ascending", + "mean descending", + "geometric mean ascending", + "geometric mean descending", + "median ascending", + "median descending" + ] + }, + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "direction": { + "description": "Sets the direction corresponding to positive angles.", + "dflt": "counterclockwise", + "editType": "calc", + "valType": "enumerated", + "values": [ + "counterclockwise", + "clockwise" + ] + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "plot", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "plot", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "plot", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "plot", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "plot", + "valType": "any" + }, + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", + "editType": "plot", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "minorloglabels": { + "description": "Determines how minor log labels are displayed. If *small digits*, small digits i.e. 2 or 5 are displayed. If *complete*, complete digits are displayed. If *none*, no labels are displayed.", + "dflt": "small digits", + "editType": "plot", + "valType": "enumerated", + "values": [ + "small digits", + "complete", + "none" + ] + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "period": { + "description": "Set the angular period. Has an effect only when `angularaxis.type` is *category*.", + "editType": "calc", + "min": 0, + "valType": "number" + }, + "role": "object", + "rotation": { + "description": "Sets that start position (in degrees) of the angular axis By default, polar subplots with `direction` set to *counterclockwise* get a `rotation` of *0* which corresponds to due East (like what mathematicians prefer). In turn, polar with `direction` set to *clockwise* get a rotation of *90* which corresponds to due North (like on a compass),", + "editType": "calc", + "valType": "angle" + }, + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thetaunit": { + "description": "Sets the format unit of the formatted *theta* values. Has an effect only when `angularaxis.type` is *linear*.", + "dflt": "degrees", + "editType": "calc", + "valType": "enumerated", + "values": [ + "radians", + "degrees" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "plot", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "plot", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "plot", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "plot", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "plot", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "plot", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "plot", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "plot", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "plot", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "type": { + "_noTemplating": true, + "description": "Sets the angular axis type. If *linear*, set `thetaunit` to determine the unit in which axis value are shown. If *category, use `period` to set the number of integer coordinates around polar axis.", + "dflt": "-", + "editType": "calc", + "valType": "enumerated", + "values": [ + "-", + "linear", + "category" + ] + }, + "uirevision": { + "description": "Controls persistence of user-driven changes in axis `rotation`. Defaults to `polar.uirevision`.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "dflt": true, + "editType": "plot", + "valType": "boolean" } - ], - "valType": "info_array" }, - "editType": "plot", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "plot", - "valType": "boolean" + "bgcolor": { + "description": "Set the background color of the subplot", + "dflt": "#fff", + "editType": "plot", + "valType": "color" }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "plot", - "valType": "string" + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this polar subplot .", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "editType": "plot", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this polar subplot .", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this polar subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this polar subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } + }, + "editType": "calc", + "gridshape": { + "description": "Determines if the radial axis grid lines and angular axis line are drawn as *circular* sectors or as *linear* (polygon) sectors. Has an effect only when the angular axis has `type` *category*. Note that `radialaxis.angle` is snapped to the angle of the closest vertex when `gridshape` is *circular* (so that radial axis scale is the same as the data scale).", + "dflt": "circular", + "editType": "plot", + "valType": "enumerated", + "values": [ + "circular", + "linear" + ] + }, + "hole": { + "description": "Sets the fraction of the radius to cut out of the polar subplot.", + "dflt": 0, + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "radialaxis": { + "angle": { + "description": "Sets the angle (in degrees) from which the radial axis is drawn. Note that by default, radial axis line on the theta=0 line corresponds to a line pointing right (like what mathematicians prefer). Defaults to the first `polar.sector` angle.", + "editType": "plot", + "valType": "angle" + }, + "autorange": { + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided and it has a value for both the lower and upper bound, `autorange` is set to *false*. Using *min* applies autorange only to set the minimum. Using *max* applies autorange only to set the maximum. Using *min reversed* applies autorange only to set the minimum on a reversed axis. Using *max reversed* applies autorange only to set the maximum on a reversed axis. Using *reversed* applies autorange on both ends and reverses the axis direction.", + "dflt": true, + "editType": "plot", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + true, + false, + "reversed", + "min reversed", + "max reversed", + "min", + "max" + ] + }, + "autorangeoptions": { + "clipmax": { + "description": "Clip autorange maximum if it goes beyond this value. Has no effect when `autorangeoptions.maxallowed` is provided.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "clipmin": { + "description": "Clip autorange minimum if it goes beyond this value. Has no effect when `autorangeoptions.minallowed` is provided.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "editType": "plot", + "include": { + "arrayOk": true, + "description": "Ensure this value is included in autorange.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "includesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `include`.", + "editType": "none", + "valType": "string" + }, + "maxallowed": { + "description": "Use this value exactly as autorange maximum.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "minallowed": { + "description": "Use this value exactly as autorange minimum.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "role": "object" + }, + "autotickangles": { + "description": "When `tickangle` is set to *auto*, it will be set to the first angle in this array that is large enough to prevent label overlap.", + "dflt": [ + 0, + 30, + 90 + ], + "editType": "ticks", + "freeLength": true, + "items": { + "valType": "angle" + }, + "valType": "info_array" + }, + "autotypenumbers": { + "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", + "dflt": "convert types", + "editType": "calc", + "valType": "enumerated", + "values": [ + "convert types", + "strict" + ] + }, + "calendar": { + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "categoryarray": { + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", + "editType": "calc", + "valType": "data_array" + }, + "categoryarraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", + "editType": "none", + "valType": "string" + }, + "categoryorder": { + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values.", + "dflt": "trace", + "editType": "calc", + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array", + "total ascending", + "total descending", + "min ascending", + "min descending", + "max ascending", + "max descending", + "sum ascending", + "sum descending", + "mean ascending", + "mean descending", + "geometric mean ascending", + "geometric mean descending", + "median ascending", + "median descending" + ] + }, + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "plot", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "plot", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "plot", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "plot", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "plot", + "valType": "any" + }, + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", + "editType": "plot", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "maxallowed": { + "description": "Determines the maximum range of this axis.", + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + "minallowed": { + "description": "Determines the minimum range of this axis.", + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "minorloglabels": { + "description": "Determines how minor log labels are displayed. If *small digits*, small digits i.e. 2 or 5 are displayed. If *complete*, complete digits are displayed. If *none*, no labels are displayed.", + "dflt": "small digits", + "editType": "plot", + "valType": "enumerated", + "values": [ + "small digits", + "complete", + "none" + ] + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "range": { + "anim": true, + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. Leaving either or both elements `null` impacts the default `autorange`.", + "editType": "plot", + "impliedEdits": { + "autorange": false + }, + "items": [ + { + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + { + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + } + ], + "valType": "info_array" + }, + "rangemode": { + "description": "If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. If *normal*, the range is computed in relation to the extrema of the input data (same behavior as for cartesian axes).", + "dflt": "tozero", + "editType": "calc", + "valType": "enumerated", + "values": [ + "tozero", + "nonnegative", + "normal" + ] + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "side": { + "description": "Determines on which side of radial axis line the tick and tick labels appear.", + "dflt": "clockwise", + "editType": "plot", + "valType": "enumerated", + "values": [ + "clockwise", + "counterclockwise" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "plot", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "plot", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "plot", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "plot", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "plot", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "plot", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "plot", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "plot", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "plot", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "plot", + "font": { + "color": { + "editType": "ticks", + "valType": "color" + }, + "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.", + "editType": "ticks", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "ticks", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "ticks", + "valType": "string" + }, + "size": { + "editType": "ticks", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "ticks", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of this axis.", + "dflt": "", + "editType": "plot", + "valType": "string" + } + }, + "type": { + "_noTemplating": true, + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", + "dflt": "-", + "editType": "calc", + "valType": "enumerated", + "values": [ + "-", + "linear", + "log", + "date", + "category" + ] + }, + "uirevision": { + "description": "Controls persistence of user-driven changes in axis `range`, `autorange`, `angle`, and `title` if in `editable: true` configuration. Defaults to `polar.uirevision`.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "dflt": true, + "editType": "plot", + "valType": "boolean" + } }, "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "plot", - "valType": "string" + "sector": { + "description": "Sets angular span of this polar subplot with two angles (in degrees). Sector are assumed to be spanned in the counterclockwise direction with *0* corresponding to rightmost limit of the polar subplot.", + "dflt": [ + 0, + 360 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "number" + }, + { + "editType": "plot", + "valType": "number" + } + ], + "valType": "info_array" }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "plot", - "valType": "string" + "uirevision": { + "description": "Controls persistence of user-driven changes in axis attributes, if not overridden in the individual axes. Defaults to `layout.uirevision`.", + "editType": "none", + "valType": "any" } - } }, - "role": "object" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "plot", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "plot", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "plot", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "plot", - "font": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" + "scene": { + "_arrayAttrRegexps": [ + {} ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of this axis.", - "editType": "plot", - "valType": "string" - } - }, - "type": { - "_noTemplating": true, - "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", - "dflt": "-", - "editType": "plot", - "valType": "enumerated", - "values": [ - "-", - "linear", - "log", - "date", - "category" - ] - }, - "visible": { - "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", - "editType": "plot", - "valType": "boolean" - }, - "zeroline": { - "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines.", - "editType": "plot", - "valType": "boolean" - }, - "zerolinecolor": { - "description": "Sets the line color of the zero line.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "zerolinewidth": { - "description": "Sets the width (in px) of the zero line.", - "dflt": 1, - "editType": "plot", - "valType": "number" - } - }, - "yaxis": { - "autorange": { - "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided and it has a value for both the lower and upper bound, `autorange` is set to *false*. Using *min* applies autorange only to set the minimum. Using *max* applies autorange only to set the maximum. Using *min reversed* applies autorange only to set the minimum on a reversed axis. Using *max reversed* applies autorange only to set the maximum on a reversed axis. Using *reversed* applies autorange on both ends and reverses the axis direction.", - "dflt": true, - "editType": "plot", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - true, - false, - "reversed", - "min reversed", - "max reversed", - "min", - "max" - ] - }, - "autorangeoptions": { - "clipmax": { - "description": "Clip autorange maximum if it goes beyond this value. Has no effect when `autorangeoptions.maxallowed` is provided.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "clipmin": { - "description": "Clip autorange minimum if it goes beyond this value. Has no effect when `autorangeoptions.minallowed` is provided.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "editType": "plot", - "include": { - "arrayOk": true, - "description": "Ensure this value is included in autorange.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "includesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `include`.", - "editType": "none", - "valType": "string" - }, - "maxallowed": { - "description": "Use this value exactly as autorange maximum.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "minallowed": { - "description": "Use this value exactly as autorange minimum.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "role": "object" - }, - "autotypenumbers": { - "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", - "dflt": "convert types", - "editType": "plot", - "valType": "enumerated", - "values": [ - "convert types", - "strict" - ] - }, - "backgroundcolor": { - "description": "Sets the background color of this axis' wall.", - "dflt": "rgba(204, 204, 204, 0.5)", - "editType": "plot", - "valType": "color" - }, - "calendar": { - "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "categoryarray": { - "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", - "editType": "plot", - "valType": "data_array" - }, - "categoryarraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", - "editType": "none", - "valType": "string" - }, - "categoryorder": { - "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values.", - "dflt": "trace", - "editType": "plot", - "valType": "enumerated", - "values": [ - "trace", - "category ascending", - "category descending", - "array", - "total ascending", - "total descending", - "min ascending", - "min descending", - "max ascending", - "max descending", - "sum ascending", - "sum descending", - "mean ascending", - "mean descending", - "geometric mean ascending", - "geometric mean descending", - "median ascending", - "median descending" - ] - }, - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "plot", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "plot", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "rgb(204, 204, 204)", - "editType": "plot", - "valType": "color" - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "plot", - "valType": "any" - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "maxallowed": { - "description": "Determines the maximum range of this axis.", - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - "minallowed": { - "description": "Determines the minimum range of this axis.", - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "mirror": { - "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", - "dflt": false, - "editType": "plot", - "valType": "enumerated", - "values": [ - true, - "ticks", - false, - "all", - "allticks" - ] - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "range": { - "anim": false, - "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. Leaving either or both elements `null` impacts the default `autorange`.", - "editType": "plot", - "impliedEdits": { - "autorange": false - }, - "items": [ - { - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - { - "editType": "plot", - "impliedEdits": { - "^autorange": false + "_isSubplotObj": true, + "annotations": { + "items": { + "annotation": { + "align": { + "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", + "dflt": "center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "arrowcolor": { + "description": "Sets the color of the annotation arrow.", + "editType": "calc", + "valType": "color" + }, + "arrowhead": { + "description": "Sets the end annotation arrow head style.", + "dflt": 1, + "editType": "calc", + "max": 8, + "min": 0, + "valType": "integer" + }, + "arrowside": { + "description": "Sets the annotation arrow head position.", + "dflt": "end", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "end", + "start" + ], + "valType": "flaglist" + }, + "arrowsize": { + "description": "Sets the size of the end annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line.", + "dflt": 1, + "editType": "calc", + "min": 0.3, + "valType": "number" + }, + "arrowwidth": { + "description": "Sets the width (in px) of annotation arrow line.", + "editType": "calc", + "min": 0.1, + "valType": "number" + }, + "ax": { + "description": "Sets the x component of the arrow tail about the arrow head (in pixels).", + "editType": "calc", + "valType": "number" + }, + "ay": { + "description": "Sets the y component of the arrow tail about the arrow head (in pixels).", + "editType": "calc", + "valType": "number" + }, + "bgcolor": { + "description": "Sets the background color of the annotation.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the color of the border enclosing the annotation `text`.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "borderpad": { + "description": "Sets the padding (in px) between the `text` and the enclosing border.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "borderwidth": { + "description": "Sets the width (in px) of the border enclosing the annotation `text`.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "captureevents": { + "description": "Determines whether the annotation text box captures mouse move and click events, or allows those events to pass through to data points in the plot that may be behind the annotation. By default `captureevents` is *false* unless `hovertext` is provided. If you use the event `plotly_clickannotation` without `hovertext` you must explicitly enable `captureevents`.", + "editType": "calc", + "valType": "boolean" + }, + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "height": { + "description": "Sets an explicit height for the text box. null (default) lets the text set the box height. Taller text will be clipped.", + "dflt": null, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "hoverlabel": { + "bgcolor": { + "description": "Sets the background color of the hover label. By default uses the annotation's `bgcolor` made opaque, or white if it was transparent.", + "editType": "calc", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the border color of the hover label. By default uses either dark grey or white, for maximum contrast with `hoverlabel.bgcolor`.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object" + }, + "hovertext": { + "description": "Sets text to appear when hovering over this annotation. If omitted or blank, no hover label will appear.", + "editType": "calc", + "valType": "string" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "calc", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the annotation (text + arrow).", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "showarrow": { + "description": "Determines whether or not the annotation is drawn with an arrow. If *true*, `text` is placed near the arrow's tail. If *false*, `text` lines up with the `x` and `y` provided.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "standoff": { + "description": "Sets a distance, in pixels, to move the end arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "startarrowhead": { + "description": "Sets the start annotation arrow head style.", + "dflt": 1, + "editType": "calc", + "max": 8, + "min": 0, + "valType": "integer" + }, + "startarrowsize": { + "description": "Sets the size of the start annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line.", + "dflt": 1, + "editType": "calc", + "min": 0.3, + "valType": "number" + }, + "startstandoff": { + "description": "Sets a distance, in pixels, to move the start arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "text": { + "description": "Sets the text associated with this annotation. Plotly uses a subset of HTML tags to do things like newline (`
`), bold (``), italics (``), hyperlinks (``). Tags ``, ``, ``, ``, ``, and `` are also supported.", + "editType": "calc", + "valType": "string" + }, + "textangle": { + "description": "Sets the angle at which the `text` is drawn with respect to the horizontal.", + "dflt": 0, + "editType": "calc", + "valType": "angle" + }, + "valign": { + "description": "Sets the vertical alignment of the `text` within the box. Has an effect only if an explicit height is set to override the text height.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "visible": { + "description": "Determines whether or not this annotation is visible.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets an explicit width for the text box. null (default) lets the text set the box width. Wider text will be clipped. There is no automatic wrapping; use
to start a new line.", + "dflt": null, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "x": { + "description": "Sets the annotation's x position.", + "editType": "calc", + "valType": "any" + }, + "xanchor": { + "description": "Sets the text box's horizontal position anchor This anchor binds the `x` position to the *left*, *center* or *right* of the annotation. For example, if `x` is set to 1, `xref` to *paper* and `xanchor` to *right* then the right-most portion of the annotation lines up with the right-most edge of the plotting area. If *auto*, the anchor is equivalent to *center* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side.", + "dflt": "auto", + "editType": "calc", + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ] + }, + "xshift": { + "description": "Shifts the position of the whole annotation and arrow to the right (positive) or left (negative) by this many pixels.", + "dflt": 0, + "editType": "calc", + "valType": "number" + }, + "y": { + "description": "Sets the annotation's y position.", + "editType": "calc", + "valType": "any" + }, + "yanchor": { + "description": "Sets the text box's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the annotation. For example, if `y` is set to 1, `yref` to *paper* and `yanchor` to *top* then the top-most portion of the annotation lines up with the top-most edge of the plotting area. If *auto*, the anchor is equivalent to *middle* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side.", + "dflt": "auto", + "editType": "calc", + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ] + }, + "yshift": { + "description": "Shifts the position of the whole annotation and arrow up (positive) or down (negative) by this many pixels.", + "dflt": 0, + "editType": "calc", + "valType": "number" + }, + "z": { + "description": "Sets the annotation's z position.", + "editType": "calc", + "valType": "any" + } + } + }, + "role": "object" }, - "valType": "any" - } - ], - "valType": "info_array" - }, - "rangemode": { - "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "tozero", - "nonnegative" - ] - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showaxeslabels": { - "description": "Sets whether or not this axis is labeled", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showbackground": { - "description": "Sets whether or not this axis' wall has a background color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "editType": "plot", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showspikes": { - "description": "Sets whether or not spikes starting from data points to this axis' wall are shown on hover.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "spikecolor": { - "description": "Sets the color of the spikes.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "spikesides": { - "description": "Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "spikethickness": { - "description": "Sets the thickness (in px) of the spikes.", - "dflt": 2, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "plot", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "plot", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "plot", - "valType": "string" + "aspectmode": { + "description": "If *cube*, this scene's axes are drawn as a cube, regardless of the axes' ranges. If *data*, this scene's axes are drawn in proportion with the axes' ranges. If *manual*, this scene's axes are drawn in proportion with the input of *aspectratio* (the default behavior if *aspectratio* is provided). If *auto*, this scene's axes are drawn using the results of *data* except when one axis is more than four times the size of the two others, where in that case the results of *cube* are used.", + "dflt": "auto", + "editType": "plot", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "cube", + "data", + "manual" + ] }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "plot", - "valType": "string" + "aspectratio": { + "description": "Sets this scene's axis aspectratio.", + "editType": "plot", + "impliedEdits": { + "aspectmode": "manual", + "role": "object" + }, + "role": "object", + "x": { + "editType": "plot", + "impliedEdits": { + "^aspectmode": "manual" + }, + "min": 0, + "valType": "number" + }, + "y": { + "editType": "plot", + "impliedEdits": { + "^aspectmode": "manual" + }, + "min": 0, + "valType": "number" + }, + "z": { + "editType": "plot", + "impliedEdits": { + "^aspectmode": "manual" + }, + "min": 0, + "valType": "number" + } }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "plot", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "plot", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "plot", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "plot", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "plot", - "font": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of this axis.", - "editType": "plot", - "valType": "string" - } - }, - "type": { - "_noTemplating": true, - "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", - "dflt": "-", - "editType": "plot", - "valType": "enumerated", - "values": [ - "-", - "linear", - "log", - "date", - "category" - ] - }, - "visible": { - "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", - "editType": "plot", - "valType": "boolean" - }, - "zeroline": { - "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines.", - "editType": "plot", - "valType": "boolean" - }, - "zerolinecolor": { - "description": "Sets the line color of the zero line.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "zerolinewidth": { - "description": "Sets the width (in px) of the zero line.", - "dflt": 1, - "editType": "plot", - "valType": "number" - } - }, - "zaxis": { - "autorange": { - "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided and it has a value for both the lower and upper bound, `autorange` is set to *false*. Using *min* applies autorange only to set the minimum. Using *max* applies autorange only to set the maximum. Using *min reversed* applies autorange only to set the minimum on a reversed axis. Using *max reversed* applies autorange only to set the maximum on a reversed axis. Using *reversed* applies autorange on both ends and reverses the axis direction.", - "dflt": true, - "editType": "plot", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - true, - false, - "reversed", - "min reversed", - "max reversed", - "min", - "max" - ] - }, - "autorangeoptions": { - "clipmax": { - "description": "Clip autorange maximum if it goes beyond this value. Has no effect when `autorangeoptions.maxallowed` is provided.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "clipmin": { - "description": "Clip autorange minimum if it goes beyond this value. Has no effect when `autorangeoptions.minallowed` is provided.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "editType": "plot", - "include": { - "arrayOk": true, - "description": "Ensure this value is included in autorange.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "includesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `include`.", - "editType": "none", - "valType": "string" - }, - "maxallowed": { - "description": "Use this value exactly as autorange maximum.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "minallowed": { - "description": "Use this value exactly as autorange minimum.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "role": "object" - }, - "autotypenumbers": { - "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", - "dflt": "convert types", - "editType": "plot", - "valType": "enumerated", - "values": [ - "convert types", - "strict" - ] - }, - "backgroundcolor": { - "description": "Sets the background color of this axis' wall.", - "dflt": "rgba(204, 204, 204, 0.5)", - "editType": "plot", - "valType": "color" - }, - "calendar": { - "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "categoryarray": { - "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", - "editType": "plot", - "valType": "data_array" - }, - "categoryarraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", - "editType": "none", - "valType": "string" - }, - "categoryorder": { - "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values.", - "dflt": "trace", - "editType": "plot", - "valType": "enumerated", - "values": [ - "trace", - "category ascending", - "category descending", - "array", - "total ascending", - "total descending", - "min ascending", - "min descending", - "max ascending", - "max descending", - "sum ascending", - "sum descending", - "mean ascending", - "mean descending", - "geometric mean ascending", - "geometric mean descending", - "median ascending", - "median descending" - ] - }, - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "plot", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "plot", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "rgb(204, 204, 204)", - "editType": "plot", - "valType": "color" - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "plot", - "valType": "any" - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "maxallowed": { - "description": "Determines the maximum range of this axis.", - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - "minallowed": { - "description": "Determines the minimum range of this axis.", - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "mirror": { - "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", - "dflt": false, - "editType": "plot", - "valType": "enumerated", - "values": [ - true, - "ticks", - false, - "all", - "allticks" - ] - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "range": { - "anim": false, - "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. Leaving either or both elements `null` impacts the default `autorange`.", - "editType": "plot", - "impliedEdits": { - "autorange": false - }, - "items": [ - { - "editType": "plot", - "impliedEdits": { - "^autorange": false + "bgcolor": { + "dflt": "rgba(0,0,0,0)", + "editType": "plot", + "valType": "color" }, - "valType": "any" - }, - { - "editType": "plot", - "impliedEdits": { - "^autorange": false + "camera": { + "center": { + "description": "Sets the (x,y,z) components of the 'center' camera vector This vector determines the translation (x,y,z) space about the center of this scene. By default, there is no such translation.", + "editType": "camera", + "role": "object", + "x": { + "dflt": 0, + "editType": "camera", + "valType": "number" + }, + "y": { + "dflt": 0, + "editType": "camera", + "valType": "number" + }, + "z": { + "dflt": 0, + "editType": "camera", + "valType": "number" + } + }, + "editType": "camera", + "eye": { + "description": "Sets the (x,y,z) components of the 'eye' camera vector. This vector determines the view point about the origin of this scene.", + "editType": "camera", + "role": "object", + "x": { + "dflt": 1.25, + "editType": "camera", + "valType": "number" + }, + "y": { + "dflt": 1.25, + "editType": "camera", + "valType": "number" + }, + "z": { + "dflt": 1.25, + "editType": "camera", + "valType": "number" + } + }, + "projection": { + "editType": "calc", + "role": "object", + "type": { + "description": "Sets the projection type. The projection type could be either *perspective* or *orthographic*. The default is *perspective*.", + "dflt": "perspective", + "editType": "calc", + "valType": "enumerated", + "values": [ + "perspective", + "orthographic" + ] + } + }, + "role": "object", + "up": { + "description": "Sets the (x,y,z) components of the 'up' camera vector. This vector determines the up direction of this scene with respect to the page. The default is *{x: 0, y: 0, z: 1}* which means that the z axis points up.", + "editType": "camera", + "role": "object", + "x": { + "dflt": 0, + "editType": "camera", + "valType": "number" + }, + "y": { + "dflt": 0, + "editType": "camera", + "valType": "number" + }, + "z": { + "dflt": 1, + "editType": "camera", + "valType": "number" + } + } }, - "valType": "any" - } - ], - "valType": "info_array" - }, - "rangemode": { - "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "tozero", - "nonnegative" - ] - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showaxeslabels": { - "description": "Sets whether or not this axis is labeled", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showbackground": { - "description": "Sets whether or not this axis' wall has a background color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "editType": "plot", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showspikes": { - "description": "Sets whether or not spikes starting from data points to this axis' wall are shown on hover.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "spikecolor": { - "description": "Sets the color of the spikes.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "spikesides": { - "description": "Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "spikethickness": { - "description": "Sets the thickness (in px) of the spikes.", - "dflt": 2, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "plot", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this scene subplot .", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "editType": "plot", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this scene subplot .", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this scene subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this scene subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" } - ], - "valType": "info_array" }, - "editType": "plot", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "plot", - "valType": "boolean" + "dragmode": { + "description": "Determines the mode of drag interactions for this scene.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "orbit", + "turntable", + "zoom", + "pan", + false + ] }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "plot", - "valType": "string" + "editType": "plot", + "hovermode": { + "description": "Determines the mode of hover interactions for this scene.", + "dflt": "closest", + "editType": "modebar", + "valType": "enumerated", + "values": [ + "closest", + false + ] }, "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "plot", - "valType": "string" + "uirevision": { + "description": "Controls persistence of user-driven changes in camera attributes. Defaults to `layout.uirevision`.", + "editType": "none", + "valType": "any" }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "plot", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "plot", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "plot", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "plot", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "plot", - "font": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of this axis.", - "editType": "plot", - "valType": "string" - } - }, - "type": { - "_noTemplating": true, - "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", - "dflt": "-", - "editType": "plot", - "valType": "enumerated", - "values": [ - "-", - "linear", - "log", - "date", - "category" - ] - }, - "visible": { - "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", - "editType": "plot", - "valType": "boolean" - }, - "zeroline": { - "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines.", - "editType": "plot", - "valType": "boolean" - }, - "zerolinecolor": { - "description": "Sets the line color of the zero line.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "zerolinewidth": { - "description": "Sets the width (in px) of the zero line.", - "dflt": 1, - "editType": "plot", - "valType": "number" - } - } - }, - "selectdirection": { - "description": "When `dragmode` is set to *select*, this limits the selection of the drag to horizontal, vertical or diagonal. *h* only allows horizontal selection, *v* only vertical, *d* only diagonal and *any* sets no limit.", - "dflt": "any", - "editType": "none", - "valType": "enumerated", - "values": [ - "h", - "v", - "d", - "any" - ] - }, - "selectionrevision": { - "description": "Controls persistence of user-driven changes in selected points from all traces.", - "editType": "none", - "valType": "any" - }, - "selections": { - "items": { - "selection": { - "editType": "arraydraw", - "line": { - "color": { - "anim": true, - "description": "Sets the line color.", - "editType": "arraydraw", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "dot", - "editType": "arraydraw", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "arraydraw", - "role": "object", - "width": { - "anim": true, - "description": "Sets the line width (in px).", - "dflt": 1, - "editType": "arraydraw", - "min": 1, - "valType": "number" - } - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "arraydraw", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the selection.", - "dflt": 0.7, - "editType": "arraydraw", - "max": 1, - "min": 0, - "valType": "number" - }, - "path": { - "description": "For `type` *path* - a valid SVG path similar to `shapes.path` in data coordinates. Allowed segments are: M, L and Z.", - "editType": "arraydraw", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "arraydraw", - "valType": "string" - }, - "type": { - "description": "Specifies the selection type to be drawn. If *rect*, a rectangle is drawn linking (`x0`,`y0`), (`x1`,`y0`), (`x1`,`y1`) and (`x0`,`y1`). If *path*, draw a custom SVG path using `path`.", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "rect", - "path" - ] - }, - "x0": { - "description": "Sets the selection's starting x position.", - "editType": "arraydraw", - "valType": "any" - }, - "x1": { - "description": "Sets the selection's end x position.", - "editType": "arraydraw", - "valType": "any" - }, - "xref": { - "description": "Sets the selection's x coordinate axis. If set to a x axis id (e.g. *x* or *x2*), the `x` position refers to a x coordinate. If set to *paper*, the `x` position refers to the distance from the left of the plotting area in normalized coordinates where *0* (*1*) corresponds to the left (right). If set to a x axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the left of the domain of that axis: e.g., *x2 domain* refers to the domain of the second x axis and a x position of 0.5 refers to the point between the left and the right of the domain of the second x axis.", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "paper", - "/^x([2-9]|[1-9][0-9]+)?( domain)?$/" - ] - }, - "y0": { - "description": "Sets the selection's starting y position.", - "editType": "arraydraw", - "valType": "any" - }, - "y1": { - "description": "Sets the selection's end y position.", - "editType": "arraydraw", - "valType": "any" - }, - "yref": { - "description": "Sets the selection's x coordinate axis. If set to a y axis id (e.g. *y* or *y2*), the `y` position refers to a y coordinate. If set to *paper*, the `y` position refers to the distance from the bottom of the plotting area in normalized coordinates where *0* (*1*) corresponds to the bottom (top). If set to a y axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the bottom of the domain of that axis: e.g., *y2 domain* refers to the domain of the second y axis and a y position of 0.5 refers to the point between the bottom and the top of the domain of the second y axis.", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "paper", - "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" - ] - } - } - }, - "role": "object" - }, - "separators": { - "description": "Sets the decimal and thousand separators. For example, *. * puts a '.' before decimals and a space between thousands. In English locales, dflt is *.,* but other locales may alter this default.", - "editType": "plot", - "valType": "string" - }, - "shapes": { - "items": { - "shape": { - "editable": { - "description": "Determines whether the shape could be activated for edit or not. Has no effect when the older editable shapes mode is enabled via `config.editable` or `config.edits.shapePosition`.", - "dflt": false, - "editType": "calc+arraydraw", - "valType": "boolean" - }, - "editType": "arraydraw", - "fillcolor": { - "description": "Sets the color filling the shape's interior. Only applies to closed shapes.", - "dflt": "rgba(0,0,0,0)", - "editType": "arraydraw", - "valType": "color" - }, - "fillrule": { - "description": "Determines which regions of complex paths constitute the interior. For more info please visit https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/fill-rule", - "dflt": "evenodd", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "evenodd", - "nonzero" - ] - }, - "label": { - "editType": "arraydraw", - "font": { - "color": { - "editType": "arraydraw", - "valType": "color" - }, - "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.", - "editType": "calc+arraydraw", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc+arraydraw", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc+arraydraw", - "valType": "string" - }, - "size": { - "editType": "calc+arraydraw", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc+arraydraw", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "padding": { - "description": "Sets padding (in px) between edge of label and edge of shape.", - "dflt": 3, - "editType": "arraydraw", - "min": 0, - "valType": "number" - }, - "role": "object", - "text": { - "description": "Sets the text to display with shape. It is also used for legend item if `name` is not provided.", - "dflt": "", - "editType": "arraydraw", - "valType": "string" - }, - "textangle": { - "description": "Sets the angle at which the label text is drawn with respect to the horizontal. For lines, angle *auto* is the same angle as the line. For all other shapes, angle *auto* is horizontal.", - "dflt": "auto", - "editType": "calc+arraydraw", - "valType": "angle" - }, - "textposition": { - "description": "Sets the position of the label text relative to the shape. Supported values for rectangles, circles and paths are *top left*, *top center*, *top right*, *middle left*, *middle center*, *middle right*, *bottom left*, *bottom center*, and *bottom right*. Supported values for lines are *start*, *middle*, and *end*. Default: *middle center* for rectangles, circles, and paths; *middle* for lines.", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right", - "start", - "middle", - "end" - ] - }, - "texttemplate": { - "description": "Template string used for rendering the shape's label. Note that this will override `text`. Variables are inserted using %{variable}, for example \"x0: %{x0}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{x0:$.2f}\". See https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{x0|%m %b %Y}\". See https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. A single multiplication or division operation may be applied to numeric variables, and combined with d3 number formatting, for example \"Length in cm: %{x0*2.54}\", \"%{slope*60:.1f} meters per second.\" For log axes, variable values are given in log units. For date axes, x/y coordinate variables and center variables use datetimes, while all other variable values use values in ms. Finally, the template string has access to variables `x0`, `x1`, `y0`, `y1`, `slope`, `dx`, `dy`, `width`, `height`, `length`, `xcenter` and `ycenter`. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value.", - "dflt": "", - "editType": "arraydraw", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "arraydraw", - "valType": "any" - }, - "xanchor": { - "description": "Sets the label's horizontal position anchor This anchor binds the specified `textposition` to the *left*, *center* or *right* of the label text. For example, if `textposition` is set to *top right* and `xanchor` to *right* then the right-most portion of the label text lines up with the right-most edge of the shape.", - "dflt": "auto", - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - "auto", - "left", - "center", - "right" - ] - }, - "yanchor": { - "description": "Sets the label's vertical position anchor This anchor binds the specified `textposition` to the *top*, *middle* or *bottom* of the label text. For example, if `textposition` is set to *top right* and `yanchor` to *top* then the top-most portion of the label text lines up with the top-most edge of the shape.", - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - } - }, - "layer": { - "description": "Specifies whether shapes are drawn below gridlines (*below*), between gridlines and traces (*between*) or above traces (*above*).", - "dflt": "above", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "below", - "above", - "between" - ] - }, - "legend": { - "description": "Sets the reference to a legend to show this shape in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "calc+arraydraw", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this shape. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "calc+arraydraw", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "calc+arraydraw", - "font": { - "color": { - "editType": "calc+arraydraw", - "valType": "color" - }, - "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.", - "editType": "calc+arraydraw", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc+arraydraw", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc+arraydraw", - "valType": "string" - }, - "size": { - "editType": "calc+arraydraw", - "min": 1, - "valType": "number" + "xaxis": { + "autorange": { + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided and it has a value for both the lower and upper bound, `autorange` is set to *false*. Using *min* applies autorange only to set the minimum. Using *max* applies autorange only to set the maximum. Using *min reversed* applies autorange only to set the minimum on a reversed axis. Using *max reversed* applies autorange only to set the maximum on a reversed axis. Using *reversed* applies autorange on both ends and reverses the axis direction.", + "dflt": true, + "editType": "plot", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + true, + false, + "reversed", + "min reversed", + "max reversed", + "min", + "max" + ] + }, + "autorangeoptions": { + "clipmax": { + "description": "Clip autorange maximum if it goes beyond this value. Has no effect when `autorangeoptions.maxallowed` is provided.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "clipmin": { + "description": "Clip autorange minimum if it goes beyond this value. Has no effect when `autorangeoptions.minallowed` is provided.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "editType": "plot", + "include": { + "arrayOk": true, + "description": "Ensure this value is included in autorange.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "includesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `include`.", + "editType": "none", + "valType": "string" + }, + "maxallowed": { + "description": "Use this value exactly as autorange maximum.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "minallowed": { + "description": "Use this value exactly as autorange minimum.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "role": "object" + }, + "autotypenumbers": { + "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", + "dflt": "convert types", + "editType": "plot", + "valType": "enumerated", + "values": [ + "convert types", + "strict" + ] + }, + "backgroundcolor": { + "description": "Sets the background color of this axis' wall.", + "dflt": "rgba(204, 204, 204, 0.5)", + "editType": "plot", + "valType": "color" + }, + "calendar": { + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "categoryarray": { + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", + "editType": "plot", + "valType": "data_array" + }, + "categoryarraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", + "editType": "none", + "valType": "string" + }, + "categoryorder": { + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values.", + "dflt": "trace", + "editType": "plot", + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array", + "total ascending", + "total descending", + "min ascending", + "min descending", + "max ascending", + "max descending", + "sum ascending", + "sum descending", + "mean ascending", + "mean descending", + "geometric mean ascending", + "geometric mean descending", + "median ascending", + "median descending" + ] + }, + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "plot", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "plot", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "rgb(204, 204, 204)", + "editType": "plot", + "valType": "color" + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "plot", + "valType": "any" + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "maxallowed": { + "description": "Determines the maximum range of this axis.", + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + "minallowed": { + "description": "Determines the minimum range of this axis.", + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "mirror": { + "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", + "dflt": false, + "editType": "plot", + "valType": "enumerated", + "values": [ + true, + "ticks", + false, + "all", + "allticks" + ] + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "range": { + "anim": false, + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. Leaving either or both elements `null` impacts the default `autorange`.", + "editType": "plot", + "impliedEdits": { + "autorange": false + }, + "items": [ + { + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + { + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + } + ], + "valType": "info_array" + }, + "rangemode": { + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ] + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showaxeslabels": { + "description": "Sets whether or not this axis is labeled", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showbackground": { + "description": "Sets whether or not this axis' wall has a background color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "editType": "plot", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showspikes": { + "description": "Sets whether or not spikes starting from data points to this axis' wall are shown on hover.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "spikecolor": { + "description": "Sets the color of the spikes.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "spikesides": { + "description": "Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "spikethickness": { + "description": "Sets the thickness (in px) of the spikes.", + "dflt": 2, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "plot", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "plot", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "plot", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "plot", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "plot", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "plot", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "plot", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "plot", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "plot", + "font": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of this axis.", + "editType": "plot", + "valType": "string" + } + }, + "type": { + "_noTemplating": true, + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", + "dflt": "-", + "editType": "plot", + "valType": "enumerated", + "values": [ + "-", + "linear", + "log", + "date", + "category" + ] + }, + "visible": { + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "editType": "plot", + "valType": "boolean" + }, + "zeroline": { + "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines.", + "editType": "plot", + "valType": "boolean" + }, + "zerolinecolor": { + "description": "Sets the line color of the zero line.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "zerolinewidth": { + "description": "Sets the width (in px) of the zero line.", + "dflt": 1, + "editType": "plot", + "valType": "number" + } }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "yaxis": { + "autorange": { + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided and it has a value for both the lower and upper bound, `autorange` is set to *false*. Using *min* applies autorange only to set the minimum. Using *max* applies autorange only to set the maximum. Using *min reversed* applies autorange only to set the minimum on a reversed axis. Using *max reversed* applies autorange only to set the maximum on a reversed axis. Using *reversed* applies autorange on both ends and reverses the axis direction.", + "dflt": true, + "editType": "plot", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + true, + false, + "reversed", + "min reversed", + "max reversed", + "min", + "max" + ] + }, + "autorangeoptions": { + "clipmax": { + "description": "Clip autorange maximum if it goes beyond this value. Has no effect when `autorangeoptions.maxallowed` is provided.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "clipmin": { + "description": "Clip autorange minimum if it goes beyond this value. Has no effect when `autorangeoptions.minallowed` is provided.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "editType": "plot", + "include": { + "arrayOk": true, + "description": "Ensure this value is included in autorange.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "includesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `include`.", + "editType": "none", + "valType": "string" + }, + "maxallowed": { + "description": "Use this value exactly as autorange maximum.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "minallowed": { + "description": "Use this value exactly as autorange minimum.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "role": "object" + }, + "autotypenumbers": { + "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", + "dflt": "convert types", + "editType": "plot", + "valType": "enumerated", + "values": [ + "convert types", + "strict" + ] + }, + "backgroundcolor": { + "description": "Sets the background color of this axis' wall.", + "dflt": "rgba(204, 204, 204, 0.5)", + "editType": "plot", + "valType": "color" + }, + "calendar": { + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "categoryarray": { + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", + "editType": "plot", + "valType": "data_array" + }, + "categoryarraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", + "editType": "none", + "valType": "string" + }, + "categoryorder": { + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values.", + "dflt": "trace", + "editType": "plot", + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array", + "total ascending", + "total descending", + "min ascending", + "min descending", + "max ascending", + "max descending", + "sum ascending", + "sum descending", + "mean ascending", + "mean descending", + "geometric mean ascending", + "geometric mean descending", + "median ascending", + "median descending" + ] + }, + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "plot", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "plot", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "rgb(204, 204, 204)", + "editType": "plot", + "valType": "color" + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "plot", + "valType": "any" + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "maxallowed": { + "description": "Determines the maximum range of this axis.", + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + "minallowed": { + "description": "Determines the minimum range of this axis.", + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "mirror": { + "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", + "dflt": false, + "editType": "plot", + "valType": "enumerated", + "values": [ + true, + "ticks", + false, + "all", + "allticks" + ] + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "range": { + "anim": false, + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. Leaving either or both elements `null` impacts the default `autorange`.", + "editType": "plot", + "impliedEdits": { + "autorange": false + }, + "items": [ + { + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + { + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + } + ], + "valType": "info_array" + }, + "rangemode": { + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ] + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showaxeslabels": { + "description": "Sets whether or not this axis is labeled", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showbackground": { + "description": "Sets whether or not this axis' wall has a background color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "editType": "plot", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showspikes": { + "description": "Sets whether or not spikes starting from data points to this axis' wall are shown on hover.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "spikecolor": { + "description": "Sets the color of the spikes.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "spikesides": { + "description": "Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "spikethickness": { + "description": "Sets the thickness (in px) of the spikes.", + "dflt": 2, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "plot", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "plot", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "plot", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "plot", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "plot", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "plot", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "plot", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "plot", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "plot", + "font": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of this axis.", + "editType": "plot", + "valType": "string" + } + }, + "type": { + "_noTemplating": true, + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", + "dflt": "-", + "editType": "plot", + "valType": "enumerated", + "values": [ + "-", + "linear", + "log", + "date", + "category" + ] + }, + "visible": { + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "editType": "plot", + "valType": "boolean" + }, + "zeroline": { + "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines.", + "editType": "plot", + "valType": "boolean" + }, + "zerolinecolor": { + "description": "Sets the line color of the zero line.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "zerolinewidth": { + "description": "Sets the width (in px) of the zero line.", + "dflt": 1, + "editType": "plot", + "valType": "number" + } }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc+arraydraw", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" + "zaxis": { + "autorange": { + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided and it has a value for both the lower and upper bound, `autorange` is set to *false*. Using *min* applies autorange only to set the minimum. Using *max* applies autorange only to set the maximum. Using *min reversed* applies autorange only to set the minimum on a reversed axis. Using *max reversed* applies autorange only to set the maximum on a reversed axis. Using *reversed* applies autorange on both ends and reverses the axis direction.", + "dflt": true, + "editType": "plot", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + true, + false, + "reversed", + "min reversed", + "max reversed", + "min", + "max" + ] + }, + "autorangeoptions": { + "clipmax": { + "description": "Clip autorange maximum if it goes beyond this value. Has no effect when `autorangeoptions.maxallowed` is provided.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "clipmin": { + "description": "Clip autorange minimum if it goes beyond this value. Has no effect when `autorangeoptions.minallowed` is provided.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "editType": "plot", + "include": { + "arrayOk": true, + "description": "Ensure this value is included in autorange.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "includesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `include`.", + "editType": "none", + "valType": "string" + }, + "maxallowed": { + "description": "Use this value exactly as autorange maximum.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "minallowed": { + "description": "Use this value exactly as autorange minimum.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "role": "object" + }, + "autotypenumbers": { + "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", + "dflt": "convert types", + "editType": "plot", + "valType": "enumerated", + "values": [ + "convert types", + "strict" + ] + }, + "backgroundcolor": { + "description": "Sets the background color of this axis' wall.", + "dflt": "rgba(204, 204, 204, 0.5)", + "editType": "plot", + "valType": "color" + }, + "calendar": { + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "categoryarray": { + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", + "editType": "plot", + "valType": "data_array" + }, + "categoryarraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", + "editType": "none", + "valType": "string" + }, + "categoryorder": { + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values.", + "dflt": "trace", + "editType": "plot", + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array", + "total ascending", + "total descending", + "min ascending", + "min descending", + "max ascending", + "max descending", + "sum ascending", + "sum descending", + "mean ascending", + "mean descending", + "geometric mean ascending", + "geometric mean descending", + "median ascending", + "median descending" + ] + }, + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "plot", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "plot", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "rgb(204, 204, 204)", + "editType": "plot", + "valType": "color" + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "plot", + "valType": "any" + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "maxallowed": { + "description": "Determines the maximum range of this axis.", + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + "minallowed": { + "description": "Determines the minimum range of this axis.", + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "mirror": { + "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", + "dflt": false, + "editType": "plot", + "valType": "enumerated", + "values": [ + true, + "ticks", + false, + "all", + "allticks" + ] + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "range": { + "anim": false, + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. Leaving either or both elements `null` impacts the default `autorange`.", + "editType": "plot", + "impliedEdits": { + "autorange": false + }, + "items": [ + { + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + { + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + } + ], + "valType": "info_array" + }, + "rangemode": { + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ] + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showaxeslabels": { + "description": "Sets whether or not this axis is labeled", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showbackground": { + "description": "Sets whether or not this axis' wall has a background color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "editType": "plot", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showspikes": { + "description": "Sets whether or not spikes starting from data points to this axis' wall are shown on hover.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "spikecolor": { + "description": "Sets the color of the spikes.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "spikesides": { + "description": "Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "spikethickness": { + "description": "Sets the thickness (in px) of the spikes.", + "dflt": 2, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "plot", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "plot", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "plot", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "plot", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "plot", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "plot", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "plot", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "plot", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "plot", + "font": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of this axis.", + "editType": "plot", + "valType": "string" + } + }, + "type": { + "_noTemplating": true, + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", + "dflt": "-", + "editType": "plot", + "valType": "enumerated", + "values": [ + "-", + "linear", + "log", + "date", + "category" + ] + }, + "visible": { + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "editType": "plot", + "valType": "boolean" + }, + "zeroline": { + "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines.", + "editType": "plot", + "valType": "boolean" + }, + "zerolinecolor": { + "description": "Sets the line color of the zero line.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "zerolinewidth": { + "description": "Sets the width (in px) of the zero line.", + "dflt": 1, + "editType": "plot", + "valType": "number" + } } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "calc+arraydraw", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this shape. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "calc+arraydraw", - "valType": "number" }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this shape.", - "editType": "calc+arraydraw", - "min": 0, - "valType": "number" - }, - "line": { - "color": { - "anim": true, - "description": "Sets the line color.", - "editType": "arraydraw", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "arraydraw", - "valType": "string", + "selectdirection": { + "description": "When `dragmode` is set to *select*, this limits the selection of the drag to horizontal, vertical or diagonal. *h* only allows horizontal selection, *v* only vertical, *d* only diagonal and *any* sets no limit.", + "dflt": "any", + "editType": "none", + "valType": "enumerated", "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" + "h", + "v", + "d", + "any" ] - }, - "editType": "calc+arraydraw", - "role": "object", - "width": { - "anim": true, - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "calc+arraydraw", - "min": 0, - "valType": "number" - } }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "none", - "valType": "string" + "selectionrevision": { + "description": "Controls persistence of user-driven changes in selected points from all traces.", + "editType": "none", + "valType": "any" }, - "opacity": { - "description": "Sets the opacity of the shape.", - "dflt": 1, - "editType": "arraydraw", - "max": 1, - "min": 0, - "valType": "number" - }, - "path": { - "description": "For `type` *path* - a valid SVG path with the pixel values replaced by data values in `xsizemode`/`ysizemode` being *scaled* and taken unmodified as pixels relative to `xanchor` and `yanchor` in case of *pixel* size mode. There are a few restrictions / quirks only absolute instructions, not relative. So the allowed segments are: M, L, H, V, Q, C, T, S, and Z arcs (A) are not allowed because radius rx and ry are relative. In the future we could consider supporting relative commands, but we would have to decide on how to handle date and log axes. Note that even as is, Q and C Bezier paths that are smooth on linear axes may not be smooth on log, and vice versa. no chained \"polybezier\" commands - specify the segment type for each one. On category axes, values are numbers scaled to the serial numbers of categories because using the categories themselves there would be no way to describe fractional positions On data axes: because space and T are both normal components of path strings, we can't use either to separate date from time parts. Therefore we'll use underscore for this purpose: 2015-02-21_13:45:56.789", - "editType": "calc+arraydraw", - "valType": "string" - }, - "role": "object", - "showlegend": { - "description": "Determines whether or not this shape is shown in the legend.", - "dflt": false, - "editType": "calc+arraydraw", - "valType": "boolean" - }, - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "type": { - "description": "Specifies the shape type to be drawn. If *line*, a line is drawn from (`x0`,`y0`) to (`x1`,`y1`) with respect to the axes' sizing mode. If *circle*, a circle is drawn from ((`x0`+`x1`)/2, (`y0`+`y1`)/2)) with radius (|(`x0`+`x1`)/2 - `x0`|, |(`y0`+`y1`)/2 -`y0`)|) with respect to the axes' sizing mode. If *rect*, a rectangle is drawn linking (`x0`,`y0`), (`x1`,`y0`), (`x1`,`y1`), (`x0`,`y1`), (`x0`,`y0`) with respect to the axes' sizing mode. If *path*, draw a custom SVG path using `path`. with respect to the axes' sizing mode.", - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - "circle", - "rect", - "path", - "line" - ] - }, - "visible": { - "description": "Determines whether or not this shape is visible. If *legendonly*, the shape is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x0": { - "description": "Sets the shape's starting x position. See `type` and `xsizemode` for more info.", - "editType": "calc+arraydraw", - "valType": "any" - }, - "x0shift": { - "description": "Shifts `x0` away from the center of the category when `xref` is a *category* or *multicategory* axis. -0.5 corresponds to the start of the category and 0.5 corresponds to the end of the category.", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": -1, - "valType": "number" - }, - "x1": { - "description": "Sets the shape's end x position. See `type` and `xsizemode` for more info.", - "editType": "calc+arraydraw", - "valType": "any" - }, - "x1shift": { - "description": "Shifts `x1` away from the center of the category when `xref` is a *category* or *multicategory* axis. -0.5 corresponds to the start of the category and 0.5 corresponds to the end of the category.", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": -1, - "valType": "number" - }, - "xanchor": { - "description": "Only relevant in conjunction with `xsizemode` set to *pixel*. Specifies the anchor point on the x axis to which `x0`, `x1` and x coordinates within `path` are relative to. E.g. useful to attach a pixel sized shape to a certain data value. No effect when `xsizemode` not set to *pixel*.", - "editType": "calc+arraydraw", - "valType": "any" - }, - "xref": { - "description": "Sets the shape's x coordinate axis. If set to a x axis id (e.g. *x* or *x2*), the `x` position refers to a x coordinate. If set to *paper*, the `x` position refers to the distance from the left of the plotting area in normalized coordinates where *0* (*1*) corresponds to the left (right). If set to a x axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the left of the domain of that axis: e.g., *x2 domain* refers to the domain of the second x axis and a x position of 0.5 refers to the point between the left and the right of the domain of the second x axis.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "paper", - "/^x([2-9]|[1-9][0-9]+)?( domain)?$/" - ] - }, - "xsizemode": { - "description": "Sets the shapes's sizing mode along the x axis. If set to *scaled*, `x0`, `x1` and x coordinates within `path` refer to data values on the x axis or a fraction of the plot area's width (`xref` set to *paper*). If set to *pixel*, `xanchor` specifies the x position in terms of data or plot fraction but `x0`, `x1` and x coordinates within `path` are pixels relative to `xanchor`. This way, the shape can have a fixed width while maintaining a position relative to data or plot fraction.", - "dflt": "scaled", - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - "scaled", - "pixel" - ] - }, - "y0": { - "description": "Sets the shape's starting y position. See `type` and `ysizemode` for more info.", - "editType": "calc+arraydraw", - "valType": "any" - }, - "y0shift": { - "description": "Shifts `y0` away from the center of the category when `yref` is a *category* or *multicategory* axis. -0.5 corresponds to the start of the category and 0.5 corresponds to the end of the category.", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": -1, - "valType": "number" - }, - "y1": { - "description": "Sets the shape's end y position. See `type` and `ysizemode` for more info.", - "editType": "calc+arraydraw", - "valType": "any" - }, - "y1shift": { - "description": "Shifts `y1` away from the center of the category when `yref` is a *category* or *multicategory* axis. -0.5 corresponds to the start of the category and 0.5 corresponds to the end of the category.", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": -1, - "valType": "number" - }, - "yanchor": { - "description": "Only relevant in conjunction with `ysizemode` set to *pixel*. Specifies the anchor point on the y axis to which `y0`, `y1` and y coordinates within `path` are relative to. E.g. useful to attach a pixel sized shape to a certain data value. No effect when `ysizemode` not set to *pixel*.", - "editType": "calc+arraydraw", - "valType": "any" - }, - "yref": { - "description": "Sets the shape's y coordinate axis. If set to a y axis id (e.g. *y* or *y2*), the `y` position refers to a y coordinate. If set to *paper*, the `y` position refers to the distance from the bottom of the plotting area in normalized coordinates where *0* (*1*) corresponds to the bottom (top). If set to a y axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the bottom of the domain of that axis: e.g., *y2 domain* refers to the domain of the second y axis and a y position of 0.5 refers to the point between the bottom and the top of the domain of the second y axis.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "paper", - "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" - ] - }, - "ysizemode": { - "description": "Sets the shapes's sizing mode along the y axis. If set to *scaled*, `y0`, `y1` and y coordinates within `path` refer to data values on the y axis or a fraction of the plot area's height (`yref` set to *paper*). If set to *pixel*, `yanchor` specifies the y position in terms of data or plot fraction but `y0`, `y1` and y coordinates within `path` are pixels relative to `yanchor`. This way, the shape can have a fixed height while maintaining a position relative to data or plot fraction.", - "dflt": "scaled", - "editType": "calc+arraydraw", - "valType": "enumerated", - "values": [ - "scaled", - "pixel" - ] - } - } - }, - "role": "object" - }, - "showlegend": { - "description": "Determines whether or not a legend is drawn. Default is `true` if there is a trace to show and any of these: a) Two or more traces would by default be shown in the legend. b) One pie trace is shown in the legend. c) One trace is explicitly given with `showlegend: true`.", - "editType": "legend", - "valType": "boolean" - }, - "sliders": { - "items": { - "slider": { - "active": { - "description": "Determines which button (by index starting from 0) is considered active.", - "dflt": 0, - "editType": "arraydraw", - "min": 0, - "valType": "number" - }, - "activebgcolor": { - "description": "Sets the background color of the slider grip while dragging.", - "dflt": "#dbdde0", - "editType": "arraydraw", - "valType": "color" + "selections": { + "items": { + "selection": { + "editType": "arraydraw", + "line": { + "color": { + "anim": true, + "description": "Sets the line color.", + "editType": "arraydraw", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "dot", + "editType": "arraydraw", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "arraydraw", + "role": "object", + "width": { + "anim": true, + "description": "Sets the line width (in px).", + "dflt": 1, + "editType": "arraydraw", + "min": 1, + "valType": "number" + } + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "arraydraw", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the selection.", + "dflt": 0.7, + "editType": "arraydraw", + "max": 1, + "min": 0, + "valType": "number" + }, + "path": { + "description": "For `type` *path* - a valid SVG path similar to `shapes.path` in data coordinates. Allowed segments are: M, L and Z.", + "editType": "arraydraw", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "arraydraw", + "valType": "string" + }, + "type": { + "description": "Specifies the selection type to be drawn. If *rect*, a rectangle is drawn linking (`x0`,`y0`), (`x1`,`y0`), (`x1`,`y1`) and (`x0`,`y1`). If *path*, draw a custom SVG path using `path`.", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "rect", + "path" + ] + }, + "x0": { + "description": "Sets the selection's starting x position.", + "editType": "arraydraw", + "valType": "any" + }, + "x1": { + "description": "Sets the selection's end x position.", + "editType": "arraydraw", + "valType": "any" + }, + "xref": { + "description": "Sets the selection's x coordinate axis. If set to a x axis id (e.g. *x* or *x2*), the `x` position refers to a x coordinate. If set to *paper*, the `x` position refers to the distance from the left of the plotting area in normalized coordinates where *0* (*1*) corresponds to the left (right). If set to a x axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the left of the domain of that axis: e.g., *x2 domain* refers to the domain of the second x axis and a x position of 0.5 refers to the point between the left and the right of the domain of the second x axis.", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "paper", + "/^x([2-9]|[1-9][0-9]+)?( domain)?$/" + ] + }, + "y0": { + "description": "Sets the selection's starting y position.", + "editType": "arraydraw", + "valType": "any" + }, + "y1": { + "description": "Sets the selection's end y position.", + "editType": "arraydraw", + "valType": "any" + }, + "yref": { + "description": "Sets the selection's x coordinate axis. If set to a y axis id (e.g. *y* or *y2*), the `y` position refers to a y coordinate. If set to *paper*, the `y` position refers to the distance from the bottom of the plotting area in normalized coordinates where *0* (*1*) corresponds to the bottom (top). If set to a y axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the bottom of the domain of that axis: e.g., *y2 domain* refers to the domain of the second y axis and a y position of 0.5 refers to the point between the bottom and the top of the domain of the second y axis.", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "paper", + "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" + ] + } + } + }, + "role": "object" }, - "bgcolor": { - "description": "Sets the background color of the slider.", - "dflt": "#f8fafc", - "editType": "arraydraw", - "valType": "color" + "separators": { + "description": "Sets the decimal and thousand separators. For example, *. * puts a '.' before decimals and a space between thousands. In English locales, dflt is *.,* but other locales may alter this default.", + "editType": "plot", + "valType": "string" }, - "bordercolor": { - "description": "Sets the color of the border enclosing the slider.", - "dflt": "#bec8d9", - "editType": "arraydraw", - "valType": "color" + "shapes": { + "items": { + "shape": { + "editable": { + "description": "Determines whether the shape could be activated for edit or not. Has no effect when the older editable shapes mode is enabled via `config.editable` or `config.edits.shapePosition`.", + "dflt": false, + "editType": "calc+arraydraw", + "valType": "boolean" + }, + "editType": "arraydraw", + "fillcolor": { + "description": "Sets the color filling the shape's interior. Only applies to closed shapes.", + "dflt": "rgba(0,0,0,0)", + "editType": "arraydraw", + "valType": "color" + }, + "fillrule": { + "description": "Determines which regions of complex paths constitute the interior. For more info please visit https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/fill-rule", + "dflt": "evenodd", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "evenodd", + "nonzero" + ] + }, + "label": { + "editType": "arraydraw", + "font": { + "color": { + "editType": "arraydraw", + "valType": "color" + }, + "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.", + "editType": "calc+arraydraw", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc+arraydraw", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc+arraydraw", + "valType": "string" + }, + "size": { + "editType": "calc+arraydraw", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc+arraydraw", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "padding": { + "description": "Sets padding (in px) between edge of label and edge of shape.", + "dflt": 3, + "editType": "arraydraw", + "min": 0, + "valType": "number" + }, + "role": "object", + "text": { + "description": "Sets the text to display with shape. It is also used for legend item if `name` is not provided.", + "dflt": "", + "editType": "arraydraw", + "valType": "string" + }, + "textangle": { + "description": "Sets the angle at which the label text is drawn with respect to the horizontal. For lines, angle *auto* is the same angle as the line. For all other shapes, angle *auto* is horizontal.", + "dflt": "auto", + "editType": "calc+arraydraw", + "valType": "angle" + }, + "textposition": { + "description": "Sets the position of the label text relative to the shape. Supported values for rectangles, circles and paths are *top left*, *top center*, *top right*, *middle left*, *middle center*, *middle right*, *bottom left*, *bottom center*, and *bottom right*. Supported values for lines are *start*, *middle*, and *end*. Default: *middle center* for rectangles, circles, and paths; *middle* for lines.", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right", + "start", + "middle", + "end" + ] + }, + "texttemplate": { + "description": "Template string used for rendering the shape's label. Note that this will override `text`. Variables are inserted using %{variable}, for example \"x0: %{x0}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{x0:$.2f}\". See https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{x0|%m %b %Y}\". See https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. A single multiplication or division operation may be applied to numeric variables, and combined with d3 number formatting, for example \"Length in cm: %{x0*2.54}\", \"%{slope*60:.1f} meters per second.\" For log axes, variable values are given in log units. For date axes, x/y coordinate variables and center variables use datetimes, while all other variable values use values in ms. Finally, the template string has access to variables `x0`, `x1`, `y0`, `y1`, `slope`, `dx`, `dy`, `width`, `height`, `length`, `xcenter` and `ycenter`. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value.", + "dflt": "", + "editType": "arraydraw", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "arraydraw", + "valType": "any" + }, + "xanchor": { + "description": "Sets the label's horizontal position anchor This anchor binds the specified `textposition` to the *left*, *center* or *right* of the label text. For example, if `textposition` is set to *top right* and `xanchor` to *right* then the right-most portion of the label text lines up with the right-most edge of the shape.", + "dflt": "auto", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ] + }, + "yanchor": { + "description": "Sets the label's vertical position anchor This anchor binds the specified `textposition` to the *top*, *middle* or *bottom* of the label text. For example, if `textposition` is set to *top right* and `yanchor` to *top* then the top-most portion of the label text lines up with the top-most edge of the shape.", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + } + }, + "layer": { + "description": "Specifies whether shapes are drawn below gridlines (*below*), between gridlines and traces (*between*) or above traces (*above*).", + "dflt": "above", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "below", + "above", + "between" + ] + }, + "legend": { + "description": "Sets the reference to a legend to show this shape in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "calc+arraydraw", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this shape. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "calc+arraydraw", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "calc+arraydraw", + "font": { + "color": { + "editType": "calc+arraydraw", + "valType": "color" + }, + "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.", + "editType": "calc+arraydraw", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc+arraydraw", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc+arraydraw", + "valType": "string" + }, + "size": { + "editType": "calc+arraydraw", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc+arraydraw", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "calc+arraydraw", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this shape. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "calc+arraydraw", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this shape.", + "editType": "calc+arraydraw", + "min": 0, + "valType": "number" + }, + "line": { + "color": { + "anim": true, + "description": "Sets the line color.", + "editType": "arraydraw", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "arraydraw", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "calc+arraydraw", + "role": "object", + "width": { + "anim": true, + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "calc+arraydraw", + "min": 0, + "valType": "number" + } + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "none", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the shape.", + "dflt": 1, + "editType": "arraydraw", + "max": 1, + "min": 0, + "valType": "number" + }, + "path": { + "description": "For `type` *path* - a valid SVG path with the pixel values replaced by data values in `xsizemode`/`ysizemode` being *scaled* and taken unmodified as pixels relative to `xanchor` and `yanchor` in case of *pixel* size mode. There are a few restrictions / quirks only absolute instructions, not relative. So the allowed segments are: M, L, H, V, Q, C, T, S, and Z arcs (A) are not allowed because radius rx and ry are relative. In the future we could consider supporting relative commands, but we would have to decide on how to handle date and log axes. Note that even as is, Q and C Bezier paths that are smooth on linear axes may not be smooth on log, and vice versa. no chained \"polybezier\" commands - specify the segment type for each one. On category axes, values are numbers scaled to the serial numbers of categories because using the categories themselves there would be no way to describe fractional positions On data axes: because space and T are both normal components of path strings, we can't use either to separate date from time parts. Therefore we'll use underscore for this purpose: 2015-02-21_13:45:56.789", + "editType": "calc+arraydraw", + "valType": "string" + }, + "role": "object", + "showlegend": { + "description": "Determines whether or not this shape is shown in the legend.", + "dflt": false, + "editType": "calc+arraydraw", + "valType": "boolean" + }, + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "type": { + "description": "Specifies the shape type to be drawn. If *line*, a line is drawn from (`x0`,`y0`) to (`x1`,`y1`) with respect to the axes' sizing mode. If *circle*, a circle is drawn from ((`x0`+`x1`)/2, (`y0`+`y1`)/2)) with radius (|(`x0`+`x1`)/2 - `x0`|, |(`y0`+`y1`)/2 -`y0`)|) with respect to the axes' sizing mode. If *rect*, a rectangle is drawn linking (`x0`,`y0`), (`x1`,`y0`), (`x1`,`y1`), (`x0`,`y1`), (`x0`,`y0`) with respect to the axes' sizing mode. If *path*, draw a custom SVG path using `path`. with respect to the axes' sizing mode.", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "circle", + "rect", + "path", + "line" + ] + }, + "visible": { + "description": "Determines whether or not this shape is visible. If *legendonly*, the shape is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x0": { + "description": "Sets the shape's starting x position. See `type` and `xsizemode` for more info.", + "editType": "calc+arraydraw", + "valType": "any" + }, + "x0shift": { + "description": "Shifts `x0` away from the center of the category when `xref` is a *category* or *multicategory* axis. -0.5 corresponds to the start of the category and 0.5 corresponds to the end of the category.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": -1, + "valType": "number" + }, + "x1": { + "description": "Sets the shape's end x position. See `type` and `xsizemode` for more info.", + "editType": "calc+arraydraw", + "valType": "any" + }, + "x1shift": { + "description": "Shifts `x1` away from the center of the category when `xref` is a *category* or *multicategory* axis. -0.5 corresponds to the start of the category and 0.5 corresponds to the end of the category.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": -1, + "valType": "number" + }, + "xanchor": { + "description": "Only relevant in conjunction with `xsizemode` set to *pixel*. Specifies the anchor point on the x axis to which `x0`, `x1` and x coordinates within `path` are relative to. E.g. useful to attach a pixel sized shape to a certain data value. No effect when `xsizemode` not set to *pixel*.", + "editType": "calc+arraydraw", + "valType": "any" + }, + "xref": { + "description": "Sets the shape's x coordinate axis. If set to a x axis id (e.g. *x* or *x2*), the `x` position refers to a x coordinate. If set to *paper*, the `x` position refers to the distance from the left of the plotting area in normalized coordinates where *0* (*1*) corresponds to the left (right). If set to a x axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the left of the domain of that axis: e.g., *x2 domain* refers to the domain of the second x axis and a x position of 0.5 refers to the point between the left and the right of the domain of the second x axis.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "paper", + "/^x([2-9]|[1-9][0-9]+)?( domain)?$/" + ] + }, + "xsizemode": { + "description": "Sets the shapes's sizing mode along the x axis. If set to *scaled*, `x0`, `x1` and x coordinates within `path` refer to data values on the x axis or a fraction of the plot area's width (`xref` set to *paper*). If set to *pixel*, `xanchor` specifies the x position in terms of data or plot fraction but `x0`, `x1` and x coordinates within `path` are pixels relative to `xanchor`. This way, the shape can have a fixed width while maintaining a position relative to data or plot fraction.", + "dflt": "scaled", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "scaled", + "pixel" + ] + }, + "y0": { + "description": "Sets the shape's starting y position. See `type` and `ysizemode` for more info.", + "editType": "calc+arraydraw", + "valType": "any" + }, + "y0shift": { + "description": "Shifts `y0` away from the center of the category when `yref` is a *category* or *multicategory* axis. -0.5 corresponds to the start of the category and 0.5 corresponds to the end of the category.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": -1, + "valType": "number" + }, + "y1": { + "description": "Sets the shape's end y position. See `type` and `ysizemode` for more info.", + "editType": "calc+arraydraw", + "valType": "any" + }, + "y1shift": { + "description": "Shifts `y1` away from the center of the category when `yref` is a *category* or *multicategory* axis. -0.5 corresponds to the start of the category and 0.5 corresponds to the end of the category.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": -1, + "valType": "number" + }, + "yanchor": { + "description": "Only relevant in conjunction with `ysizemode` set to *pixel*. Specifies the anchor point on the y axis to which `y0`, `y1` and y coordinates within `path` are relative to. E.g. useful to attach a pixel sized shape to a certain data value. No effect when `ysizemode` not set to *pixel*.", + "editType": "calc+arraydraw", + "valType": "any" + }, + "yref": { + "description": "Sets the shape's y coordinate axis. If set to a y axis id (e.g. *y* or *y2*), the `y` position refers to a y coordinate. If set to *paper*, the `y` position refers to the distance from the bottom of the plotting area in normalized coordinates where *0* (*1*) corresponds to the bottom (top). If set to a y axis ID followed by *domain* (separated by a space), the position behaves like for *paper*, but refers to the distance in fractions of the domain length from the bottom of the domain of that axis: e.g., *y2 domain* refers to the domain of the second y axis and a y position of 0.5 refers to the point between the bottom and the top of the domain of the second y axis.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "paper", + "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" + ] + }, + "ysizemode": { + "description": "Sets the shapes's sizing mode along the y axis. If set to *scaled*, `y0`, `y1` and y coordinates within `path` refer to data values on the y axis or a fraction of the plot area's height (`yref` set to *paper*). If set to *pixel*, `yanchor` specifies the y position in terms of data or plot fraction but `y0`, `y1` and y coordinates within `path` are pixels relative to `yanchor`. This way, the shape can have a fixed height while maintaining a position relative to data or plot fraction.", + "dflt": "scaled", + "editType": "calc+arraydraw", + "valType": "enumerated", + "values": [ + "scaled", + "pixel" + ] + } + } + }, + "role": "object" }, - "borderwidth": { - "description": "Sets the width (in px) of the border enclosing the slider.", - "dflt": 1, - "editType": "arraydraw", - "min": 0, - "valType": "number" + "showlegend": { + "description": "Determines whether or not a legend is drawn. Default is `true` if there is a trace to show and any of these: a) Two or more traces would by default be shown in the legend. b) One pie trace is shown in the legend. c) One trace is explicitly given with `showlegend: true`.", + "editType": "legend", + "valType": "boolean" }, - "currentvalue": { - "editType": "arraydraw", - "font": { - "color": { - "editType": "arraydraw", - "valType": "color" - }, - "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.", - "editType": "arraydraw", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "arraydraw", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "arraydraw", - "valType": "string" + "sliders": { + "items": { + "slider": { + "active": { + "description": "Determines which button (by index starting from 0) is considered active.", + "dflt": 0, + "editType": "arraydraw", + "min": 0, + "valType": "number" + }, + "activebgcolor": { + "description": "Sets the background color of the slider grip while dragging.", + "dflt": "#dbdde0", + "editType": "arraydraw", + "valType": "color" + }, + "bgcolor": { + "description": "Sets the background color of the slider.", + "dflt": "#f8fafc", + "editType": "arraydraw", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the color of the border enclosing the slider.", + "dflt": "#bec8d9", + "editType": "arraydraw", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) of the border enclosing the slider.", + "dflt": 1, + "editType": "arraydraw", + "min": 0, + "valType": "number" + }, + "currentvalue": { + "editType": "arraydraw", + "font": { + "color": { + "editType": "arraydraw", + "valType": "color" + }, + "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.", + "editType": "arraydraw", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "arraydraw", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "arraydraw", + "valType": "string" + }, + "size": { + "editType": "arraydraw", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "arraydraw", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "offset": { + "description": "The amount of space, in pixels, between the current value label and the slider.", + "dflt": 10, + "editType": "arraydraw", + "valType": "number" + }, + "prefix": { + "description": "When currentvalue.visible is true, this sets the prefix of the label.", + "editType": "arraydraw", + "valType": "string" + }, + "role": "object", + "suffix": { + "description": "When currentvalue.visible is true, this sets the suffix of the label.", + "editType": "arraydraw", + "valType": "string" + }, + "visible": { + "description": "Shows the currently-selected value above the slider.", + "dflt": true, + "editType": "arraydraw", + "valType": "boolean" + }, + "xanchor": { + "description": "The alignment of the value readout relative to the length of the slider.", + "dflt": "left", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + } + }, + "editType": "arraydraw", + "font": { + "color": { + "editType": "arraydraw", + "valType": "color" + }, + "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.", + "editType": "arraydraw", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "arraydraw", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "arraydraw", + "valType": "string" + }, + "size": { + "editType": "arraydraw", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "arraydraw", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "len": { + "description": "Sets the length of the slider This measure excludes the padding of both ends. That is, the slider's length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "arraydraw", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this slider length is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minorticklen": { + "description": "Sets the length in pixels of minor step tick marks", + "dflt": 4, + "editType": "arraydraw", + "min": 0, + "valType": "number" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "arraydraw", + "valType": "string" + }, + "pad": { + "b": { + "description": "The amount of padding (in px) along the bottom of the component.", + "dflt": 0, + "editType": "arraydraw", + "valType": "number" + }, + "description": "Set the padding of the slider component along each side.", + "editType": "arraydraw", + "l": { + "description": "The amount of padding (in px) on the left side of the component.", + "dflt": 0, + "editType": "arraydraw", + "valType": "number" + }, + "r": { + "description": "The amount of padding (in px) on the right side of the component.", + "dflt": 0, + "editType": "arraydraw", + "valType": "number" + }, + "role": "object", + "t": { + "description": "The amount of padding (in px) along the top of the component.", + "dflt": 20, + "editType": "arraydraw", + "valType": "number" + } + }, + "role": "object", + "steps": { + "items": { + "step": { + "args": { + "description": "Sets the arguments values to be passed to the Plotly method set in `method` on slide.", + "editType": "arraydraw", + "freeLength": true, + "items": [ + { + "editType": "arraydraw", + "valType": "any" + }, + { + "editType": "arraydraw", + "valType": "any" + }, + { + "editType": "arraydraw", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "arraydraw", + "execute": { + "description": "When true, the API method is executed. When false, all other behaviors are the same and command execution is skipped. This may be useful when hooking into, for example, the `plotly_sliderchange` method and executing the API command manually without losing the benefit of the slider automatically binding to the state of the plot through the specification of `method` and `args`.", + "dflt": true, + "editType": "arraydraw", + "valType": "boolean" + }, + "label": { + "description": "Sets the text label to appear on the slider", + "editType": "arraydraw", + "valType": "string" + }, + "method": { + "description": "Sets the Plotly method to be called when the slider value is changed. If the `skip` method is used, the API slider will function as normal but will perform no API calls and will not bind automatically to state updates. This may be used to create a component interface and attach to slider events manually via JavaScript.", + "dflt": "restyle", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "restyle", + "relayout", + "animate", + "update", + "skip" + ] + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "arraydraw", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "arraydraw", + "valType": "string" + }, + "value": { + "description": "Sets the value of the slider step, used to refer to the step programatically. Defaults to the slider label if not provided.", + "editType": "arraydraw", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this step is included in the slider.", + "dflt": true, + "editType": "arraydraw", + "valType": "boolean" + } + } + }, + "role": "object" + }, + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "arraydraw", + "valType": "string" + }, + "tickcolor": { + "description": "Sets the color of the border enclosing the slider.", + "dflt": "#333", + "editType": "arraydraw", + "valType": "color" + }, + "ticklen": { + "description": "Sets the length in pixels of step tick marks", + "dflt": 7, + "editType": "arraydraw", + "min": 0, + "valType": "number" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "arraydraw", + "min": 0, + "valType": "number" + }, + "transition": { + "duration": { + "description": "Sets the duration of the slider transition", + "dflt": 150, + "editType": "arraydraw", + "min": 0, + "valType": "number" + }, + "easing": { + "description": "Sets the easing function of the slider transition", + "dflt": "cubic-in-out", + "editType": "arraydraw", + "valType": "enumerated", + "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": "arraydraw", + "role": "object" + }, + "visible": { + "description": "Determines whether or not the slider is visible.", + "dflt": true, + "editType": "arraydraw", + "valType": "boolean" + }, + "x": { + "description": "Sets the x position (in normalized coordinates) of the slider.", + "dflt": 0, + "editType": "arraydraw", + "max": 3, + "min": -2, + "valType": "number" + }, + "xanchor": { + "description": "Sets the slider's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector.", + "dflt": "left", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ] + }, + "y": { + "description": "Sets the y position (in normalized coordinates) of the slider.", + "dflt": 0, + "editType": "arraydraw", + "max": 3, + "min": -2, + "valType": "number" + }, + "yanchor": { + "description": "Sets the slider's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector.", + "dflt": "top", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ] + } + } }, - "size": { - "editType": "arraydraw", - "min": 1, - "valType": "number" + "role": "object" + }, + "smith": { + "_isSubplotObj": true, + "bgcolor": { + "description": "Set the background color of the subplot", + "dflt": "#fff", + "editType": "plot", + "valType": "color" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this smith subplot .", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "editType": "plot", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this smith subplot .", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this smith subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this smith subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "editType": "calc", + "imaginaryaxis": { + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "editType": "plot", + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "plot", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "plot", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "plot", + "valType": "any" + }, + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", + "editType": "plot", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "role": "object", + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Defaults to `realaxis.tickvals` plus the same as negatives and zero.", + "editType": "plot", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 2, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "visible": { + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "dflt": true, + "editType": "plot", + "valType": "boolean" + } }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "realaxis": { + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "editType": "plot", + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "plot", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "plot", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "plot", + "valType": "any" + }, + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", + "editType": "plot", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "role": "object", + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "side": { + "description": "Determines on which side of real axis line the tick and tick labels appear.", + "dflt": "top", + "editType": "plot", + "valType": "enumerated", + "values": [ + "top", + "bottom" + ] + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": 90, + "editType": "ticks", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *top* (*bottom*), this axis' are drawn above (below) the axis line.", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "top", + "bottom", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear.", + "dflt": [ + 0.2, + 0.5, + 1, + 2, + 5 + ], + "editType": "plot", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 2, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "visible": { + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "dflt": true, + "editType": "plot", + "valType": "boolean" + } }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "arraydraw", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "offset": { - "description": "The amount of space, in pixels, between the current value label and the slider.", - "dflt": 10, - "editType": "arraydraw", - "valType": "number" - }, - "prefix": { - "description": "When currentvalue.visible is true, this sets the prefix of the label.", - "editType": "arraydraw", - "valType": "string" - }, - "role": "object", - "suffix": { - "description": "When currentvalue.visible is true, this sets the suffix of the label.", - "editType": "arraydraw", - "valType": "string" - }, - "visible": { - "description": "Shows the currently-selected value above the slider.", - "dflt": true, - "editType": "arraydraw", - "valType": "boolean" - }, - "xanchor": { - "description": "The alignment of the value readout relative to the length of the slider.", - "dflt": "left", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - } + "role": "object" }, - "editType": "arraydraw", - "font": { - "color": { - "editType": "arraydraw", - "valType": "color" - }, - "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.", - "editType": "arraydraw", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "arraydraw", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "arraydraw", - "valType": "string" - }, - "size": { - "editType": "arraydraw", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "arraydraw", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, + "spikedistance": { + "description": "Sets the default distance (in pixels) to look for data to draw spikelines to (-1 means no cutoff, 0 means no looking for data). As with hoverdistance, distance does not apply to area-like objects. In addition, some objects can be hovered on but will not generate spikelines, such as scatter fills.", + "dflt": -1, + "editType": "none", + "min": -1, "valType": "integer" - } - }, - "len": { - "description": "Sets the length of the slider This measure excludes the padding of both ends. That is, the slider's length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "arraydraw", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this slider length is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minorticklen": { - "description": "Sets the length in pixels of minor step tick marks", - "dflt": 4, - "editType": "arraydraw", - "min": 0, - "valType": "number" }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "arraydraw", - "valType": "string" - }, - "pad": { - "b": { - "description": "The amount of padding (in px) along the bottom of the component.", - "dflt": 0, - "editType": "arraydraw", - "valType": "number" - }, - "description": "Set the padding of the slider component along each side.", - "editType": "arraydraw", - "l": { - "description": "The amount of padding (in px) on the left side of the component.", - "dflt": 0, - "editType": "arraydraw", - "valType": "number" - }, - "r": { - "description": "The amount of padding (in px) on the right side of the component.", - "dflt": 0, - "editType": "arraydraw", - "valType": "number" - }, - "role": "object", - "t": { - "description": "The amount of padding (in px) along the top of the component.", - "dflt": 20, - "editType": "arraydraw", - "valType": "number" - } + "template": { + "description": "Default attributes to be applied to the plot. Templates can be created from existing plots using `Plotly.makeTemplate`, or created manually. They should be objects with format: `{layout: layoutTemplate, data: {[type]: [traceTemplate, ...]}, ...}` `layoutTemplate` and `traceTemplate` are objects matching the attribute structure of `layout` and a data trace. Trace templates are applied cyclically to traces of each type. Container arrays (eg `annotations`) have special handling: An object ending in `defaults` (eg `annotationdefaults`) is applied to each array item. But if an item has a `templateitemname` key we look in the template array for an item with matching `name` and apply that instead. If no matching `name` is found we mark the item invisible. Any named template item not referenced is appended to the end of the array, so you can use this for a watermark annotation or a logo image, for example. To omit one of these items on the plot, make an item with matching `templateitemname` and `visible: false`.", + "editType": "calc", + "valType": "any" }, - "role": "object", - "steps": { - "items": { - "step": { - "args": { - "description": "Sets the arguments values to be passed to the Plotly method set in `method` on slide.", - "editType": "arraydraw", - "freeLength": true, - "items": [ - { - "editType": "arraydraw", - "valType": "any" - }, - { - "editType": "arraydraw", + "ternary": { + "_isSubplotObj": true, + "aaxis": { + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, "valType": "any" - }, - { - "editType": "arraydraw", + }, + "editType": "plot", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "plot", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "plot", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "plot", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "plot", "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "arraydraw", - "execute": { - "description": "When true, the API method is executed. When false, all other behaviors are the same and command execution is skipped. This may be useful when hooking into, for example, the `plotly_sliderchange` method and executing the API command manually without losing the benefit of the slider automatically binding to the state of the plot through the specification of `method` and `args`.", - "dflt": true, - "editType": "arraydraw", - "valType": "boolean" - }, - "label": { - "description": "Sets the text label to appear on the slider", - "editType": "arraydraw", - "valType": "string" - }, - "method": { - "description": "Sets the Plotly method to be called when the slider value is changed. If the `skip` method is used, the API slider will function as normal but will perform no API calls and will not bind automatically to state updates. This may be used to create a component interface and attach to slider events manually via JavaScript.", - "dflt": "restyle", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "restyle", - "relayout", - "animate", - "update", - "skip" - ] - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "arraydraw", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "arraydraw", - "valType": "string" - }, - "value": { - "description": "Sets the value of the slider step, used to refer to the step programatically. Defaults to the slider label if not provided.", - "editType": "arraydraw", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this step is included in the slider.", - "dflt": true, - "editType": "arraydraw", - "valType": "boolean" - } - } - }, - "role": "object" - }, - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "arraydraw", - "valType": "string" - }, - "tickcolor": { - "description": "Sets the color of the border enclosing the slider.", - "dflt": "#333", - "editType": "arraydraw", - "valType": "color" - }, - "ticklen": { - "description": "Sets the length in pixels of step tick marks", - "dflt": 7, - "editType": "arraydraw", - "min": 0, - "valType": "number" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "arraydraw", - "min": 0, - "valType": "number" + }, + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", + "editType": "plot", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "min": { + "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 6, + "editType": "plot", + "min": 1, + "valType": "integer" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "plot", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "plot", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "plot", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "plot", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "plot", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "plot", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "plot", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "plot", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "plot", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "plot", + "font": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of this axis.", + "editType": "plot", + "valType": "string" + } + }, + "uirevision": { + "description": "Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`.", + "editType": "none", + "valType": "any" + } + }, + "baxis": { + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "plot", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "plot", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "plot", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "plot", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "plot", + "valType": "any" + }, + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", + "editType": "plot", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "min": { + "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 6, + "editType": "plot", + "min": 1, + "valType": "integer" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "plot", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "plot", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "plot", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "plot", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "plot", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "plot", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "plot", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "plot", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "plot", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "plot", + "font": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of this axis.", + "editType": "plot", + "valType": "string" + } + }, + "uirevision": { + "description": "Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`.", + "editType": "none", + "valType": "any" + } + }, + "bgcolor": { + "description": "Set the background color of the subplot", + "dflt": "#fff", + "editType": "plot", + "valType": "color" + }, + "caxis": { + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "plot", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "plot", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "plot", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "plot", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "plot", + "valType": "any" + }, + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", + "editType": "plot", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "min": { + "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 6, + "editType": "plot", + "min": 1, + "valType": "integer" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "plot", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "plot", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "plot", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "plot", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "plot", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "plot", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "plot", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "plot", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "plot", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "plot", + "font": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of this axis.", + "editType": "plot", + "valType": "string" + } + }, + "uirevision": { + "description": "Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`.", + "editType": "none", + "valType": "any" + } + }, + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this ternary subplot .", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "editType": "plot", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this ternary subplot .", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this ternary subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this ternary subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } + }, + "editType": "plot", + "role": "object", + "sum": { + "description": "The number each triplet should sum to, and the maximum range of each axis", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "uirevision": { + "description": "Controls persistence of user-driven changes in axis `min` and `title`, if not overridden in the individual axes. Defaults to `layout.uirevision`.", + "editType": "none", + "valType": "any" + } }, - "transition": { - "duration": { - "description": "Sets the duration of the slider transition", - "dflt": 150, - "editType": "arraydraw", - "min": 0, - "valType": "number" - }, - "easing": { - "description": "Sets the easing function of the slider transition", - "dflt": "cubic-in-out", - "editType": "arraydraw", - "valType": "enumerated", - "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": "arraydraw", - "role": "object" + "title": { + "automargin": { + "description": "Determines whether the title can automatically push the figure margins. If `yref='paper'` then the margin will expand to ensure that the title doesn’t overlap with the edges of the container. If `yref='container'` then the margins will ensure that the title doesn’t overlap with the plot area, tick labels, and axis titles. If `automargin=true` and the margins need to be expanded, then y will be set to a default 1 and yanchor will be set to an appropriate default to ensure that minimal margin space is needed. Note that when `yref='paper'`, only 1 or 0 are allowed y values. Invalid values will be reset to the default 1.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "editType": "layoutstyle", + "font": { + "color": { + "editType": "layoutstyle", + "valType": "color" + }, + "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.", + "editType": "layoutstyle", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "layoutstyle", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "layoutstyle", + "valType": "string" + }, + "size": { + "editType": "layoutstyle", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "layoutstyle", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "layoutstyle", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "layoutstyle", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "layoutstyle", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "pad": { + "b": { + "description": "The amount of padding (in px) along the bottom of the component.", + "dflt": 0, + "editType": "layoutstyle", + "valType": "number" + }, + "description": "Sets the padding of the title. Each padding value only applies when the corresponding `xanchor`/`yanchor` value is set accordingly. E.g. for left padding to take effect, `xanchor` must be set to *left*. The same rule applies if `xanchor`/`yanchor` is determined automatically. Padding is muted if the respective anchor value is *middle*/*center*.", + "editType": "layoutstyle", + "l": { + "description": "The amount of padding (in px) on the left side of the component.", + "dflt": 0, + "editType": "layoutstyle", + "valType": "number" + }, + "r": { + "description": "The amount of padding (in px) on the right side of the component.", + "dflt": 0, + "editType": "layoutstyle", + "valType": "number" + }, + "role": "object", + "t": { + "description": "The amount of padding (in px) along the top of the component.", + "dflt": 0, + "editType": "layoutstyle", + "valType": "number" + } + }, + "role": "object", + "subtitle": { + "editType": "layoutstyle", + "font": { + "color": { + "editType": "layoutstyle", + "valType": "color" + }, + "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.", + "editType": "layoutstyle", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "layoutstyle", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "layoutstyle", + "valType": "string" + }, + "size": { + "editType": "layoutstyle", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "layoutstyle", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "layoutstyle", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "layoutstyle", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "layoutstyle", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the plot's subtitle.", + "editType": "layoutstyle", + "valType": "string" + } + }, + "text": { + "description": "Sets the plot's title.", + "editType": "layoutstyle", + "valType": "string" + }, + "x": { + "description": "Sets the x position with respect to `xref` in normalized coordinates from *0* (left) to *1* (right).", + "dflt": 0.5, + "editType": "layoutstyle", + "max": 1, + "min": 0, + "valType": "number" + }, + "xanchor": { + "description": "Sets the title's horizontal alignment with respect to its x position. *left* means that the title starts at x, *right* means that the title ends at x and *center* means that the title's center is at x. *auto* divides `xref` by three and calculates the `xanchor` value automatically based on the value of `x`.", + "dflt": "auto", + "editType": "layoutstyle", + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ] + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "container", + "editType": "layoutstyle", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` in normalized coordinates from *0* (bottom) to *1* (top). *auto* places the baseline of the title onto the vertical center of the top margin.", + "dflt": "auto", + "editType": "layoutstyle", + "max": 1, + "min": 0, + "valType": "number" + }, + "yanchor": { + "description": "Sets the title's vertical alignment with respect to its y position. *top* means that the title's cap line is at y, *bottom* means that the title's baseline is at y and *middle* means that the title's midline is at y. *auto* divides `yref` by three and calculates the `yanchor` value automatically based on the value of `y`.", + "dflt": "auto", + "editType": "layoutstyle", + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ] + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "container", + "editType": "layoutstyle", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } }, - "visible": { - "description": "Determines whether or not the slider is visible.", - "dflt": true, - "editType": "arraydraw", - "valType": "boolean" + "transition": { + "description": "Sets transition options used during Plotly.react updates.", + "duration": { + "description": "The duration of the transition, in milliseconds. If equal to zero, updates are synchronous.", + "dflt": 500, + "editType": "none", + "min": 0, + "valType": "number" + }, + "easing": { + "description": "The easing function used for the transition", + "dflt": "cubic-in-out", + "editType": "none", + "valType": "enumerated", + "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": { + "description": "Determines whether the figure's layout or traces smoothly transitions during updates that make both traces and layout change.", + "dflt": "layout first", + "editType": "none", + "valType": "enumerated", + "values": [ + "layout first", + "traces first" + ] + }, + "role": "object" }, - "x": { - "description": "Sets the x position (in normalized coordinates) of the slider.", - "dflt": 0, - "editType": "arraydraw", - "max": 3, - "min": -2, - "valType": "number" + "uirevision": { + "description": "Used to allow user interactions with the plot to persist after `Plotly.react` calls that are unaware of these interactions. If `uirevision` is omitted, or if it is given and it changed from the previous `Plotly.react` call, the exact new figure is used. If `uirevision` is truthy and did NOT change, any attribute that has been affected by user interactions and did not receive a different value in the new figure will keep the interaction value. `layout.uirevision` attribute serves as the default for `uirevision` attributes in various sub-containers. For finer control you can set these sub-attributes directly. For example, if your app separately controls the data on the x and y axes you might set `xaxis.uirevision=*time*` and `yaxis.uirevision=*cost*`. Then if only the y data is changed, you can update `yaxis.uirevision=*quantity*` and the y axis range will reset but the x axis range will retain any user-driven zoom.", + "editType": "none", + "valType": "any" }, - "xanchor": { - "description": "Sets the slider's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector.", - "dflt": "left", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "auto", - "left", - "center", - "right" - ] + "uniformtext": { + "editType": "plot", + "minsize": { + "description": "Sets the minimum text size between traces of the same type.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "mode": { + "description": "Determines how the font size for various text elements are uniformed between each trace type. If the computed text sizes were smaller than the minimum size defined by `uniformtext.minsize` using *hide* option hides the text; and using *show* option shows the text without further downscaling. Please note that if the size defined by `minsize` is greater than the font size defined by trace, then the `minsize` is used.", + "dflt": false, + "editType": "plot", + "valType": "enumerated", + "values": [ + false, + "hide", + "show" + ] + }, + "role": "object" }, - "y": { - "description": "Sets the y position (in normalized coordinates) of the slider.", - "dflt": 0, - "editType": "arraydraw", - "max": 3, - "min": -2, - "valType": "number" + "updatemenus": { + "items": { + "updatemenu": { + "_arrayAttrRegexps": [ + {} + ], + "active": { + "description": "Determines which button (by index starting from 0) is considered active.", + "dflt": 0, + "editType": "arraydraw", + "min": -1, + "valType": "integer" + }, + "bgcolor": { + "description": "Sets the background color of the update menu buttons.", + "editType": "arraydraw", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the color of the border enclosing the update menu.", + "dflt": "#BEC8D9", + "editType": "arraydraw", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) of the border enclosing the update menu.", + "dflt": 1, + "editType": "arraydraw", + "min": 0, + "valType": "number" + }, + "buttons": { + "items": { + "button": { + "args": { + "description": "Sets the arguments values to be passed to the Plotly method set in `method` on click.", + "editType": "arraydraw", + "freeLength": true, + "items": [ + { + "editType": "arraydraw", + "valType": "any" + }, + { + "editType": "arraydraw", + "valType": "any" + }, + { + "editType": "arraydraw", + "valType": "any" + } + ], + "valType": "info_array" + }, + "args2": { + "description": "Sets a 2nd set of `args`, these arguments values are passed to the Plotly method set in `method` when clicking this button while in the active state. Use this to create toggle buttons.", + "editType": "arraydraw", + "freeLength": true, + "items": [ + { + "editType": "arraydraw", + "valType": "any" + }, + { + "editType": "arraydraw", + "valType": "any" + }, + { + "editType": "arraydraw", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "arraydraw", + "execute": { + "description": "When true, the API method is executed. When false, all other behaviors are the same and command execution is skipped. This may be useful when hooking into, for example, the `plotly_buttonclicked` method and executing the API command manually without losing the benefit of the updatemenu automatically binding to the state of the plot through the specification of `method` and `args`.", + "dflt": true, + "editType": "arraydraw", + "valType": "boolean" + }, + "label": { + "description": "Sets the text label to appear on the button.", + "dflt": "", + "editType": "arraydraw", + "valType": "string" + }, + "method": { + "description": "Sets the Plotly method to be called on click. If the `skip` method is used, the API updatemenu will function as normal but will perform no API calls and will not bind automatically to state updates. This may be used to create a component interface and attach to updatemenu events manually via JavaScript.", + "dflt": "restyle", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "restyle", + "relayout", + "animate", + "update", + "skip" + ] + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "arraydraw", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "arraydraw", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this button is visible.", + "editType": "arraydraw", + "valType": "boolean" + } + } + }, + "role": "object" + }, + "direction": { + "description": "Determines the direction in which the buttons are laid out, whether in a dropdown menu or a row/column of buttons. For `left` and `up`, the buttons will still appear in left-to-right or top-to-bottom order respectively.", + "dflt": "down", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "left", + "right", + "up", + "down" + ] + }, + "editType": "arraydraw", + "font": { + "color": { + "editType": "arraydraw", + "valType": "color" + }, + "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.", + "editType": "arraydraw", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "arraydraw", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "arraydraw", + "valType": "string" + }, + "size": { + "editType": "arraydraw", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "arraydraw", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "arraydraw", + "valType": "string" + }, + "pad": { + "b": { + "description": "The amount of padding (in px) along the bottom of the component.", + "dflt": 0, + "editType": "arraydraw", + "valType": "number" + }, + "description": "Sets the padding around the buttons or dropdown menu.", + "editType": "arraydraw", + "l": { + "description": "The amount of padding (in px) on the left side of the component.", + "dflt": 0, + "editType": "arraydraw", + "valType": "number" + }, + "r": { + "description": "The amount of padding (in px) on the right side of the component.", + "dflt": 0, + "editType": "arraydraw", + "valType": "number" + }, + "role": "object", + "t": { + "description": "The amount of padding (in px) along the top of the component.", + "dflt": 0, + "editType": "arraydraw", + "valType": "number" + } + }, + "role": "object", + "showactive": { + "description": "Highlights active dropdown item or active button if true.", + "dflt": true, + "editType": "arraydraw", + "valType": "boolean" + }, + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "arraydraw", + "valType": "string" + }, + "type": { + "description": "Determines whether the buttons are accessible via a dropdown menu or whether the buttons are stacked horizontally or vertically", + "dflt": "dropdown", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "dropdown", + "buttons" + ] + }, + "visible": { + "description": "Determines whether or not the update menu is visible.", + "editType": "arraydraw", + "valType": "boolean" + }, + "x": { + "description": "Sets the x position (in normalized coordinates) of the update menu.", + "dflt": -0.05, + "editType": "arraydraw", + "max": 3, + "min": -2, + "valType": "number" + }, + "xanchor": { + "description": "Sets the update menu's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector.", + "dflt": "right", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ] + }, + "y": { + "description": "Sets the y position (in normalized coordinates) of the update menu.", + "dflt": 1, + "editType": "arraydraw", + "max": 3, + "min": -2, + "valType": "number" + }, + "yanchor": { + "description": "Sets the update menu's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector.", + "dflt": "top", + "editType": "arraydraw", + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ] + } + } + }, + "role": "object" }, - "yanchor": { - "description": "Sets the slider's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector.", - "dflt": "top", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "auto", - "top", - "middle", - "bottom" - ] - } - } - }, - "role": "object" - }, - "smith": { - "_isSubplotObj": true, - "bgcolor": { - "description": "Set the background color of the subplot", - "dflt": "#fff", - "editType": "plot", - "valType": "color" - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this smith subplot .", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "editType": "plot", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this smith subplot .", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this smith subplot (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this smith subplot (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { + "width": { + "description": "Sets the plot's width (in px).", + "dflt": 700, "editType": "plot", - "max": 1, - "min": 0, + "min": 10, "valType": "number" - } - ], - "valType": "info_array" - } - }, - "editType": "calc", - "imaginaryaxis": { - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "editType": "plot", - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "plot", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "plot", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "plot", - "valType": "any" - }, - "layer": { - "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", - "dflt": "above traces", - "editType": "plot", - "valType": "enumerated", - "values": [ - "above traces", - "below traces" - ] - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "role": "object", - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Defaults to `realaxis.tickvals` plus the same as negatives and zero.", - "editType": "plot", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 2, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "visible": { - "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", - "dflt": true, - "editType": "plot", - "valType": "boolean" - } - }, - "realaxis": { - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "editType": "plot", - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "plot", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "plot", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "plot", - "valType": "any" - }, - "layer": { - "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", - "dflt": "above traces", - "editType": "plot", - "valType": "enumerated", - "values": [ - "above traces", - "below traces" - ] - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "role": "object", - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "side": { - "description": "Determines on which side of real axis line the tick and tick labels appear.", - "dflt": "top", - "editType": "plot", - "valType": "enumerated", - "values": [ - "top", - "bottom" - ] - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": 90, - "editType": "ticks", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *top* (*bottom*), this axis' are drawn above (below) the axis line.", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "top", - "bottom", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear.", - "dflt": [ - 0.2, - 0.5, - 1, - 2, - 5 - ], - "editType": "plot", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 2, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "visible": { - "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", - "dflt": true, - "editType": "plot", - "valType": "boolean" - } - }, - "role": "object" - }, - "spikedistance": { - "description": "Sets the default distance (in pixels) to look for data to draw spikelines to (-1 means no cutoff, 0 means no looking for data). As with hoverdistance, distance does not apply to area-like objects. In addition, some objects can be hovered on but will not generate spikelines, such as scatter fills.", - "dflt": -1, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "template": { - "description": "Default attributes to be applied to the plot. Templates can be created from existing plots using `Plotly.makeTemplate`, or created manually. They should be objects with format: `{layout: layoutTemplate, data: {[type]: [traceTemplate, ...]}, ...}` `layoutTemplate` and `traceTemplate` are objects matching the attribute structure of `layout` and a data trace. Trace templates are applied cyclically to traces of each type. Container arrays (eg `annotations`) have special handling: An object ending in `defaults` (eg `annotationdefaults`) is applied to each array item. But if an item has a `templateitemname` key we look in the template array for an item with matching `name` and apply that instead. If no matching `name` is found we mark the item invisible. Any named template item not referenced is appended to the end of the array, so you can use this for a watermark annotation or a logo image, for example. To omit one of these items on the plot, make an item with matching `templateitemname` and `visible: false`.", - "editType": "calc", - "valType": "any" - }, - "ternary": { - "_isSubplotObj": true, - "aaxis": { - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" }, - "valType": "any" - }, - "editType": "plot", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "plot", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "plot", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "plot", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "plot", - "valType": "any" - }, - "layer": { - "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", - "dflt": "above traces", - "editType": "plot", - "valType": "enumerated", - "values": [ - "above traces", - "below traces" - ] - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "min": { - "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 6, - "editType": "plot", - "min": 1, - "valType": "integer" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "plot", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" - } - ], - "valType": "info_array" + "xaxis": { + "_isSubplotObj": true, + "anchor": { + "description": "If set to an opposite-letter axis id (e.g. `x2`, `y`), this axis is bound to the corresponding opposite-letter axis. If set to *free*, this axis' position is determined by `position`.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "free", + "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", + "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" + ] }, - "editType": "plot", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "plot", - "valType": "boolean" + "automargin": { + "description": "Determines whether long tick labels automatically grow the figure margins.", + "dflt": false, + "editType": "ticks", + "extras": [ + true, + false + ], + "flags": [ + "height", + "width", + "left", + "right", + "top", + "bottom" + ], + "valType": "flaglist" }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "plot", - "valType": "string" + "autorange": { + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided and it has a value for both the lower and upper bound, `autorange` is set to *false*. Using *min* applies autorange only to set the minimum. Using *max* applies autorange only to set the maximum. Using *min reversed* applies autorange only to set the minimum on a reversed axis. Using *max reversed* applies autorange only to set the maximum on a reversed axis. Using *reversed* applies autorange on both ends and reverses the axis direction.", + "dflt": true, + "editType": "axrange", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + true, + false, + "reversed", + "min reversed", + "max reversed", + "min", + "max" + ] }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "plot", - "valType": "string" + "autorangeoptions": { + "clipmax": { + "description": "Clip autorange maximum if it goes beyond this value. Has no effect when `autorangeoptions.maxallowed` is provided.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "clipmin": { + "description": "Clip autorange minimum if it goes beyond this value. Has no effect when `autorangeoptions.minallowed` is provided.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "editType": "plot", + "include": { + "arrayOk": true, + "description": "Ensure this value is included in autorange.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "includesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `include`.", + "editType": "none", + "valType": "string" + }, + "maxallowed": { + "description": "Use this value exactly as autorange maximum.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "minallowed": { + "description": "Use this value exactly as autorange minimum.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "role": "object" }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "plot", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "plot", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "plot", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "plot", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "plot", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "plot", - "font": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of this axis.", - "editType": "plot", - "valType": "string" - } - }, - "uirevision": { - "description": "Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`.", - "editType": "none", - "valType": "any" - } - }, - "baxis": { - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "plot", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "plot", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "plot", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "plot", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "plot", - "valType": "any" - }, - "layer": { - "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", - "dflt": "above traces", - "editType": "plot", - "valType": "enumerated", - "values": [ - "above traces", - "below traces" - ] - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "min": { - "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 6, - "editType": "plot", - "min": 1, - "valType": "integer" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "plot", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" - } - ], - "valType": "info_array" + "autotickangles": { + "description": "When `tickangle` is set to *auto*, it will be set to the first angle in this array that is large enough to prevent label overlap.", + "dflt": [ + 0, + 30, + 90 + ], + "editType": "ticks", + "freeLength": true, + "items": { + "valType": "angle" + }, + "valType": "info_array" }, - "editType": "plot", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "plot", - "valType": "boolean" + "autotypenumbers": { + "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", + "dflt": "convert types", + "editType": "calc", + "valType": "enumerated", + "values": [ + "convert types", + "strict" + ] }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "plot", - "valType": "string" + "calendar": { + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "plot", - "valType": "string" + "categoryarray": { + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", + "editType": "calc", + "valType": "data_array" }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "plot", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "plot", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "plot", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "plot", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "plot", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "plot", - "font": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of this axis.", - "editType": "plot", - "valType": "string" - } - }, - "uirevision": { - "description": "Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`.", - "editType": "none", - "valType": "any" - } - }, - "bgcolor": { - "description": "Set the background color of the subplot", - "dflt": "#fff", - "editType": "plot", - "valType": "color" - }, - "caxis": { - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "plot", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "plot", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "plot", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "plot", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "plot", - "valType": "any" - }, - "layer": { - "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", - "dflt": "above traces", - "editType": "plot", - "valType": "enumerated", - "values": [ - "above traces", - "below traces" - ] - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "min": { - "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 6, - "editType": "plot", - "min": 1, - "valType": "integer" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "plot", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" - } - ], - "valType": "info_array" + "categoryarraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", + "editType": "none", + "valType": "string" }, - "editType": "plot", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "plot", - "valType": "boolean" + "categoryorder": { + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values.", + "dflt": "trace", + "editType": "calc", + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array", + "total ascending", + "total descending", + "min ascending", + "min descending", + "max ascending", + "max descending", + "sum ascending", + "sum descending", + "mean ascending", + "mean descending", + "geometric mean ascending", + "geometric mean descending", + "median ascending", + "median descending" + ] }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "plot", - "valType": "string" + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "ticks", + "valType": "color" }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "plot", - "valType": "string" + "constrain": { + "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines how that happens: by increasing the *range*, or by decreasing the *domain*. Default is *domain* for axes containing image traces, *range* otherwise.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "range", + "domain" + ] }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "plot", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "plot", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "plot", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "plot", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "plot", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "plot", - "font": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of this axis.", - "editType": "plot", - "valType": "string" - } - }, - "uirevision": { - "description": "Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`.", - "editType": "none", - "valType": "any" - } - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this ternary subplot .", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "editType": "plot", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this ternary subplot .", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this ternary subplot (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this ternary subplot (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - } - }, - "editType": "plot", - "role": "object", - "sum": { - "description": "The number each triplet should sum to, and the maximum range of each axis", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "uirevision": { - "description": "Controls persistence of user-driven changes in axis `min` and `title`, if not overridden in the individual axes. Defaults to `layout.uirevision`.", - "editType": "none", - "valType": "any" - } - }, - "title": { - "automargin": { - "description": "Determines whether the title can automatically push the figure margins. If `yref='paper'` then the margin will expand to ensure that the title doesn’t overlap with the edges of the container. If `yref='container'` then the margins will ensure that the title doesn’t overlap with the plot area, tick labels, and axis titles. If `automargin=true` and the margins need to be expanded, then y will be set to a default 1 and yanchor will be set to an appropriate default to ensure that minimal margin space is needed. Note that when `yref='paper'`, only 1 or 0 are allowed y values. Invalid values will be reset to the default 1.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "editType": "layoutstyle", - "font": { - "color": { - "editType": "layoutstyle", - "valType": "color" - }, - "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.", - "editType": "layoutstyle", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "layoutstyle", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "layoutstyle", - "valType": "string" - }, - "size": { - "editType": "layoutstyle", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "layoutstyle", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "layoutstyle", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "layoutstyle", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "layoutstyle", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "pad": { - "b": { - "description": "The amount of padding (in px) along the bottom of the component.", - "dflt": 0, - "editType": "layoutstyle", - "valType": "number" - }, - "description": "Sets the padding of the title. Each padding value only applies when the corresponding `xanchor`/`yanchor` value is set accordingly. E.g. for left padding to take effect, `xanchor` must be set to *left*. The same rule applies if `xanchor`/`yanchor` is determined automatically. Padding is muted if the respective anchor value is *middle*/*center*.", - "editType": "layoutstyle", - "l": { - "description": "The amount of padding (in px) on the left side of the component.", - "dflt": 0, - "editType": "layoutstyle", - "valType": "number" - }, - "r": { - "description": "The amount of padding (in px) on the right side of the component.", - "dflt": 0, - "editType": "layoutstyle", - "valType": "number" - }, - "role": "object", - "t": { - "description": "The amount of padding (in px) along the top of the component.", - "dflt": 0, - "editType": "layoutstyle", - "valType": "number" - } - }, - "role": "object", - "subtitle": { - "editType": "layoutstyle", - "font": { - "color": { - "editType": "layoutstyle", - "valType": "color" - }, - "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.", - "editType": "layoutstyle", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "layoutstyle", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "layoutstyle", - "valType": "string" - }, - "size": { - "editType": "layoutstyle", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "layoutstyle", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "layoutstyle", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "layoutstyle", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "layoutstyle", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the plot's subtitle.", - "editType": "layoutstyle", - "valType": "string" - } - }, - "text": { - "description": "Sets the plot's title.", - "editType": "layoutstyle", - "valType": "string" - }, - "x": { - "description": "Sets the x position with respect to `xref` in normalized coordinates from *0* (left) to *1* (right).", - "dflt": 0.5, - "editType": "layoutstyle", - "max": 1, - "min": 0, - "valType": "number" - }, - "xanchor": { - "description": "Sets the title's horizontal alignment with respect to its x position. *left* means that the title starts at x, *right* means that the title ends at x and *center* means that the title's center is at x. *auto* divides `xref` by three and calculates the `xanchor` value automatically based on the value of `x`.", - "dflt": "auto", - "editType": "layoutstyle", - "valType": "enumerated", - "values": [ - "auto", - "left", - "center", - "right" - ] - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "container", - "editType": "layoutstyle", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` in normalized coordinates from *0* (bottom) to *1* (top). *auto* places the baseline of the title onto the vertical center of the top margin.", - "dflt": "auto", - "editType": "layoutstyle", - "max": 1, - "min": 0, - "valType": "number" - }, - "yanchor": { - "description": "Sets the title's vertical alignment with respect to its y position. *top* means that the title's cap line is at y, *bottom* means that the title's baseline is at y and *middle* means that the title's midline is at y. *auto* divides `yref` by three and calculates the `yanchor` value automatically based on the value of `y`.", - "dflt": "auto", - "editType": "layoutstyle", - "valType": "enumerated", - "values": [ - "auto", - "top", - "middle", - "bottom" - ] - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "container", - "editType": "layoutstyle", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "transition": { - "description": "Sets transition options used during Plotly.react updates.", - "duration": { - "description": "The duration of the transition, in milliseconds. If equal to zero, updates are synchronous.", - "dflt": 500, - "editType": "none", - "min": 0, - "valType": "number" - }, - "easing": { - "description": "The easing function used for the transition", - "dflt": "cubic-in-out", - "editType": "none", - "valType": "enumerated", - "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": { - "description": "Determines whether the figure's layout or traces smoothly transitions during updates that make both traces and layout change.", - "dflt": "layout first", - "editType": "none", - "valType": "enumerated", - "values": [ - "layout first", - "traces first" - ] - }, - "role": "object" - }, - "uirevision": { - "description": "Used to allow user interactions with the plot to persist after `Plotly.react` calls that are unaware of these interactions. If `uirevision` is omitted, or if it is given and it changed from the previous `Plotly.react` call, the exact new figure is used. If `uirevision` is truthy and did NOT change, any attribute that has been affected by user interactions and did not receive a different value in the new figure will keep the interaction value. `layout.uirevision` attribute serves as the default for `uirevision` attributes in various sub-containers. For finer control you can set these sub-attributes directly. For example, if your app separately controls the data on the x and y axes you might set `xaxis.uirevision=*time*` and `yaxis.uirevision=*cost*`. Then if only the y data is changed, you can update `yaxis.uirevision=*quantity*` and the y axis range will reset but the x axis range will retain any user-driven zoom.", - "editType": "none", - "valType": "any" - }, - "uniformtext": { - "editType": "plot", - "minsize": { - "description": "Sets the minimum text size between traces of the same type.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "mode": { - "description": "Determines how the font size for various text elements are uniformed between each trace type. If the computed text sizes were smaller than the minimum size defined by `uniformtext.minsize` using *hide* option hides the text; and using *show* option shows the text without further downscaling. Please note that if the size defined by `minsize` is greater than the font size defined by trace, then the `minsize` is used.", - "dflt": false, - "editType": "plot", - "valType": "enumerated", - "values": [ - false, - "hide", - "show" - ] - }, - "role": "object" - }, - "updatemenus": { - "items": { - "updatemenu": { - "_arrayAttrRegexps": [ - {} - ], - "active": { - "description": "Determines which button (by index starting from 0) is considered active.", - "dflt": 0, - "editType": "arraydraw", - "min": -1, - "valType": "integer" - }, - "bgcolor": { - "description": "Sets the background color of the update menu buttons.", - "editType": "arraydraw", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the color of the border enclosing the update menu.", - "dflt": "#BEC8D9", - "editType": "arraydraw", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) of the border enclosing the update menu.", - "dflt": 1, - "editType": "arraydraw", - "min": 0, - "valType": "number" - }, - "buttons": { - "items": { - "button": { - "args": { - "description": "Sets the arguments values to be passed to the Plotly method set in `method` on click.", - "editType": "arraydraw", - "freeLength": true, + "constraintoward": { + "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines which direction we push the originally specified plot area. Options are *left*, *center* (default), and *right* for x axes, and *top*, *middle* (default), and *bottom* for y axes.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "left", + "center", + "right", + "top", + "middle", + "bottom" + ] + }, + "dividercolor": { + "description": "Sets the color of the dividers Only has an effect on *multicategory* axes.", + "dflt": "#444", + "editType": "ticks", + "valType": "color" + }, + "dividerwidth": { + "description": "Sets the width (in px) of the dividers Only has an effect on *multicategory* axes.", + "dflt": 1, + "editType": "ticks", + "valType": "number" + }, + "domain": { + "description": "Sets the domain of this axis (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", "items": [ - { - "editType": "arraydraw", - "valType": "any" - }, - { - "editType": "arraydraw", - "valType": "any" - }, - { - "editType": "arraydraw", - "valType": "any" - } + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } ], "valType": "info_array" - }, - "args2": { - "description": "Sets a 2nd set of `args`, these arguments values are passed to the Plotly method set in `method` when clicking this button while in the active state. Use this to create toggle buttons.", - "editType": "arraydraw", - "freeLength": true, - "items": [ - { - "editType": "arraydraw", - "valType": "any" - }, - { - "editType": "arraydraw", - "valType": "any" - }, - { - "editType": "arraydraw", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "arraydraw", - "execute": { - "description": "When true, the API method is executed. When false, all other behaviors are the same and command execution is skipped. This may be useful when hooking into, for example, the `plotly_buttonclicked` method and executing the API command manually without losing the benefit of the updatemenu automatically binding to the state of the plot through the specification of `method` and `args`.", - "dflt": true, - "editType": "arraydraw", + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "ticks", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "fixedrange": { + "description": "Determines whether or not this axis is zoom-able. If true, then zoom is disabled.", + "dflt": false, + "editType": "calc", "valType": "boolean" - }, - "label": { - "description": "Sets the text label to appear on the button.", + }, + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "ticks", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "ticks", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "ticks", + "min": 0, + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", "dflt": "", - "editType": "arraydraw", + "editType": "none", "valType": "string" - }, - "method": { - "description": "Sets the Plotly method to be called on click. If the `skip` method is used, the API updatemenu will function as normal but will perform no API calls and will not bind automatically to state updates. This may be used to create a component interface and attach to updatemenu events manually via JavaScript.", - "dflt": "restyle", - "editType": "arraydraw", + }, + "insiderange": { + "description": "Could be used to set the desired inside range of this axis (excluding the labels) when `ticklabelposition` of the anchored axis has *inside*. Not implemented for axes with `type` *log*. This would be ignored when `range` is provided.", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "valType": "info_array" + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "ticks", + "valType": "any" + }, + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", + "editType": "plot", "valType": "enumerated", "values": [ - "restyle", - "relayout", - "animate", - "update", - "skip" + "above traces", + "below traces" ] - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "arraydraw", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "arraydraw", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this button is visible.", - "editType": "arraydraw", - "valType": "boolean" - } - } - }, - "role": "object" - }, - "direction": { - "description": "Determines the direction in which the buttons are laid out, whether in a dropdown menu or a row/column of buttons. For `left` and `up`, the buttons will still appear in left-to-right or top-to-bottom order respectively.", - "dflt": "down", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "left", - "right", - "up", - "down" - ] - }, - "editType": "arraydraw", - "font": { - "color": { - "editType": "arraydraw", - "valType": "color" - }, - "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.", - "editType": "arraydraw", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "arraydraw", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "arraydraw", - "valType": "string" - }, - "size": { - "editType": "arraydraw", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "arraydraw", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "arraydraw", - "valType": "string" - }, - "pad": { - "b": { - "description": "The amount of padding (in px) along the bottom of the component.", - "dflt": 0, - "editType": "arraydraw", - "valType": "number" - }, - "description": "Sets the padding around the buttons or dropdown menu.", - "editType": "arraydraw", - "l": { - "description": "The amount of padding (in px) on the left side of the component.", - "dflt": 0, - "editType": "arraydraw", - "valType": "number" - }, - "r": { - "description": "The amount of padding (in px) on the right side of the component.", - "dflt": 0, - "editType": "arraydraw", - "valType": "number" - }, - "role": "object", - "t": { - "description": "The amount of padding (in px) along the top of the component.", - "dflt": 0, - "editType": "arraydraw", - "valType": "number" - } - }, - "role": "object", - "showactive": { - "description": "Highlights active dropdown item or active button if true.", - "dflt": true, - "editType": "arraydraw", - "valType": "boolean" - }, - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "arraydraw", - "valType": "string" - }, - "type": { - "description": "Determines whether the buttons are accessible via a dropdown menu or whether the buttons are stacked horizontally or vertically", - "dflt": "dropdown", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "dropdown", - "buttons" - ] - }, - "visible": { - "description": "Determines whether or not the update menu is visible.", - "editType": "arraydraw", - "valType": "boolean" - }, - "x": { - "description": "Sets the x position (in normalized coordinates) of the update menu.", - "dflt": -0.05, - "editType": "arraydraw", - "max": 3, - "min": -2, - "valType": "number" - }, - "xanchor": { - "description": "Sets the update menu's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector.", - "dflt": "right", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "auto", - "left", - "center", - "right" - ] - }, - "y": { - "description": "Sets the y position (in normalized coordinates) of the update menu.", - "dflt": 1, - "editType": "arraydraw", - "max": 3, - "min": -2, - "valType": "number" - }, - "yanchor": { - "description": "Sets the update menu's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector.", - "dflt": "top", - "editType": "arraydraw", - "valType": "enumerated", - "values": [ - "auto", - "top", - "middle", - "bottom" - ] - } - } - }, - "role": "object" - }, - "width": { - "description": "Sets the plot's width (in px).", - "dflt": 700, - "editType": "plot", - "min": 10, - "valType": "number" - }, - "xaxis": { - "_isSubplotObj": true, - "anchor": { - "description": "If set to an opposite-letter axis id (e.g. `x2`, `y`), this axis is bound to the corresponding opposite-letter axis. If set to *free*, this axis' position is determined by `position`.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "free", - "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", - "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" - ] - }, - "automargin": { - "description": "Determines whether long tick labels automatically grow the figure margins.", - "dflt": false, - "editType": "ticks", - "extras": [ - true, - false - ], - "flags": [ - "height", - "width", - "left", - "right", - "top", - "bottom" - ], - "valType": "flaglist" - }, - "autorange": { - "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided and it has a value for both the lower and upper bound, `autorange` is set to *false*. Using *min* applies autorange only to set the minimum. Using *max* applies autorange only to set the maximum. Using *min reversed* applies autorange only to set the minimum on a reversed axis. Using *max reversed* applies autorange only to set the maximum on a reversed axis. Using *reversed* applies autorange on both ends and reverses the axis direction.", - "dflt": true, - "editType": "axrange", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - true, - false, - "reversed", - "min reversed", - "max reversed", - "min", - "max" - ] - }, - "autorangeoptions": { - "clipmax": { - "description": "Clip autorange maximum if it goes beyond this value. Has no effect when `autorangeoptions.maxallowed` is provided.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "clipmin": { - "description": "Clip autorange minimum if it goes beyond this value. Has no effect when `autorangeoptions.minallowed` is provided.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "editType": "plot", - "include": { - "arrayOk": true, - "description": "Ensure this value is included in autorange.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "includesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `include`.", - "editType": "none", - "valType": "string" - }, - "maxallowed": { - "description": "Use this value exactly as autorange maximum.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "minallowed": { - "description": "Use this value exactly as autorange minimum.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "role": "object" - }, - "autotickangles": { - "description": "When `tickangle` is set to *auto*, it will be set to the first angle in this array that is large enough to prevent label overlap.", - "dflt": [ - 0, - 30, - 90 - ], - "editType": "ticks", - "freeLength": true, - "items": { - "valType": "angle" - }, - "valType": "info_array" - }, - "autotypenumbers": { - "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", - "dflt": "convert types", - "editType": "calc", - "valType": "enumerated", - "values": [ - "convert types", - "strict" - ] - }, - "calendar": { - "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "categoryarray": { - "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", - "editType": "calc", - "valType": "data_array" - }, - "categoryarraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", - "editType": "none", - "valType": "string" - }, - "categoryorder": { - "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values.", - "dflt": "trace", - "editType": "calc", - "valType": "enumerated", - "values": [ - "trace", - "category ascending", - "category descending", - "array", - "total ascending", - "total descending", - "min ascending", - "min descending", - "max ascending", - "max descending", - "sum ascending", - "sum descending", - "mean ascending", - "mean descending", - "geometric mean ascending", - "geometric mean descending", - "median ascending", - "median descending" - ] - }, - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "ticks", - "valType": "color" - }, - "constrain": { - "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines how that happens: by increasing the *range*, or by decreasing the *domain*. Default is *domain* for axes containing image traces, *range* otherwise.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "range", - "domain" - ] - }, - "constraintoward": { - "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines which direction we push the originally specified plot area. Options are *left*, *center* (default), and *right* for x axes, and *top*, *middle* (default), and *bottom* for y axes.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "left", - "center", - "right", - "top", - "middle", - "bottom" - ] - }, - "dividercolor": { - "description": "Sets the color of the dividers Only has an effect on *multicategory* axes.", - "dflt": "#444", - "editType": "ticks", - "valType": "color" - }, - "dividerwidth": { - "description": "Sets the width (in px) of the dividers Only has an effect on *multicategory* axes.", - "dflt": 1, - "editType": "ticks", - "valType": "number" - }, - "domain": { - "description": "Sets the domain of this axis (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "ticks", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "calc", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "fixedrange": { - "description": "Determines whether or not this axis is zoom-able. If true, then zoom is disabled.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "ticks", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "ticks", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "ticks", - "min": 0, - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "insiderange": { - "description": "Could be used to set the desired inside range of this axis (excluding the labels) when `ticklabelposition` of the anchored axis has *inside*. Not implemented for axes with `type` *log*. This would be ignored when `range` is provided.", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" - } - ], - "valType": "info_array" - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "ticks", - "valType": "any" - }, - "layer": { - "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", - "dflt": "above traces", - "editType": "plot", - "valType": "enumerated", - "values": [ - "above traces", - "below traces" - ] - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "layoutstyle", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "ticks+layoutstyle", - "min": 0, - "valType": "number" - }, - "matches": { - "description": "If set to another axis id (e.g. `x2`, `y`), the range of this axis will match the range of the corresponding axis in data-coordinates space. Moreover, matching axes share auto-range values, category lists and histogram auto-bins. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden. Moreover, note that matching axes must have the same `type`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", - "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" - ] - }, - "maxallowed": { - "description": "Determines the maximum range of this axis.", - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - "minallowed": { - "description": "Determines the minimum range of this axis.", - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "ticks", - "min": 0, - "valType": "number" - }, - "minor": { - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "ticks", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "ticks", - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "ticks", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "ticks", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "editType": "ticks", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 5, - "editType": "ticks", - "min": 0, - "valType": "integer" - }, - "role": "object", - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "editType": "ticks", - "valType": "boolean" - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "ticks", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "ticks", - "valType": "color" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "editType": "ticks", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "ticks", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "ticks", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "editType": "ticks", - "min": 0, - "valType": "number" - } - }, - "minorloglabels": { - "description": "Determines how minor log labels are displayed. If *small digits*, small digits i.e. 2 or 5 are displayed. If *complete*, complete digits are displayed. If *none*, no labels are displayed.", - "dflt": "small digits", - "editType": "calc", - "valType": "enumerated", - "values": [ - "small digits", - "complete", - "none" - ] - }, - "mirror": { - "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", - "dflt": false, - "editType": "ticks+layoutstyle", - "valType": "enumerated", - "values": [ - true, - "ticks", - false, - "all", - "allticks" - ] - }, - "modebardisable": { - "description": "Disables certain modebar buttons for this axis. *autoscale* disables the autoscale buttons, *zoominout* disables the zoom-in and zoom-out buttons.", - "dflt": "none", - "editType": "modebar", - "extras": [ - "none" - ], - "flags": [ - "autoscale", - "zoominout" - ], - "valType": "flaglist" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "ticks", - "min": 0, - "valType": "integer" - }, - "overlaying": { - "description": "If set a same-letter axis id, this axis is overlaid on top of the corresponding same-letter axis, with traces and axes visible for both axes. If *false*, this axis does not overlay any same-letter axes. In this case, for axes with overlapping domains only the highest-numbered axis will be visible.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "free", - "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", - "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" - ] - }, - "position": { - "description": "Sets the position of this axis in the plotting space (in normalized coordinates). Only has an effect if `anchor` is set to *free*.", - "dflt": 0, - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "range": { - "anim": true, - "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. Leaving either or both elements `null` impacts the default `autorange`.", - "editType": "axrange", - "impliedEdits": { - "autorange": false - }, - "items": [ - { - "anim": true, - "editType": "axrange", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - { - "anim": true, - "editType": "axrange", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - } - ], - "valType": "info_array" - }, - "rangebreaks": { - "items": { - "rangebreak": { - "bounds": { - "description": "Sets the lower and upper bounds of this axis rangebreak. Can be used with `pattern`.", - "editType": "calc", - "items": [ - { + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "layoutstyle", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "ticks+layoutstyle", + "min": 0, + "valType": "number" + }, + "matches": { + "description": "If set to another axis id (e.g. `x2`, `y`), the range of this axis will match the range of the corresponding axis in data-coordinates space. Moreover, matching axes share auto-range values, category lists and histogram auto-bins. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden. Moreover, note that matching axes must have the same `type`.", "editType": "calc", + "valType": "enumerated", + "values": [ + "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", + "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" + ] + }, + "maxallowed": { + "description": "Determines the maximum range of this axis.", + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, "valType": "any" - }, - { - "editType": "calc", + }, + "minallowed": { + "description": "Determines the minimum range of this axis.", + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, "valType": "any" - } - ], - "valType": "info_array" - }, - "dvalue": { - "description": "Sets the size of each `values` item. The default is one day in milliseconds.", - "dflt": 86400000, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "editType": "calc", - "enabled": { - "description": "Determines whether this axis rangebreak is enabled or disabled. Please note that `rangebreaks` only work for *date* axis type.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "none", - "valType": "string" - }, - "pattern": { - "description": "Determines a pattern on the time line that generates breaks. If *day of week* - days of the week in English e.g. 'Sunday' or `sun` (matching is case-insensitive and considers only the first three characters), as well as Sunday-based integers between 0 and 6. If *hour* - hour (24-hour clock) as decimal numbers between 0 and 24. for more info. Examples: - { pattern: 'day of week', bounds: [6, 1] } or simply { bounds: ['sat', 'mon'] } breaks from Saturday to Monday (i.e. skips the weekends). - { pattern: 'hour', bounds: [17, 8] } breaks from 5pm to 8am (i.e. skips non-work hours).", - "editType": "calc", - "valType": "enumerated", - "values": [ - "day of week", - "hour", - "" - ] - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "values": { - "description": "Sets the coordinate values corresponding to the rangebreaks. An alternative to `bounds`. Use `dvalue` to set the size of the values along the axis.", - "editType": "calc", - "freeLength": true, - "items": { - "editType": "calc", - "valType": "any" }, - "valType": "info_array" - } - } - }, - "role": "object" - }, - "rangemode": { - "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "tozero", - "nonnegative" - ] - }, - "rangeselector": { - "activecolor": { - "description": "Sets the background color of the active range selector button.", - "editType": "plot", - "valType": "color" - }, - "bgcolor": { - "description": "Sets the background color of the range selector buttons.", - "dflt": "#eee", - "editType": "plot", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the color of the border enclosing the range selector.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) of the border enclosing the range selector.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "buttons": { - "items": { - "button": { - "count": { - "description": "Sets the number of steps to take to update the range. Use with `step` to specify the update interval.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "ticks", + "min": 0, + "valType": "number" }, - "description": "Sets the specifications for each buttons. By default, a range selector comes with no buttons.", - "editType": "plot", - "label": { - "description": "Sets the text label to appear on the button.", - "editType": "plot", - "valType": "string" + "minor": { + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "ticks", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "ticks", + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "ticks", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "ticks", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "editType": "ticks", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 5, + "editType": "ticks", + "min": 0, + "valType": "integer" + }, + "role": "object", + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "editType": "ticks", + "valType": "boolean" + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "ticks", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "ticks", + "valType": "color" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "editType": "ticks", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "ticks", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "ticks", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "editType": "ticks", + "min": 0, + "valType": "number" + } }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "none", - "valType": "string" + "minorloglabels": { + "description": "Determines how minor log labels are displayed. If *small digits*, small digits i.e. 2 or 5 are displayed. If *complete*, complete digits are displayed. If *none*, no labels are displayed.", + "dflt": "small digits", + "editType": "calc", + "valType": "enumerated", + "values": [ + "small digits", + "complete", + "none" + ] }, - "role": "object", - "step": { - "description": "The unit of measurement that the `count` value will set the range by.", - "dflt": "month", - "editType": "plot", - "valType": "enumerated", - "values": [ - "month", - "year", - "day", - "hour", - "minute", - "second", - "all" - ] - }, - "stepmode": { - "description": "Sets the range update mode. If *backward*, the range update shifts the start of range back *count* times *step* milliseconds. If *todate*, the range update shifts the start of range back to the first timestamp from *count* times *step* milliseconds back. For example, with `step` set to *year* and `count` set to *1* the range update shifts the start of the range back to January 01 of the current year. Month and year *todate* are currently available only for the built-in (Gregorian) calendar.", - "dflt": "backward", - "editType": "plot", - "valType": "enumerated", - "values": [ - "backward", - "todate" - ] - }, - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" + "mirror": { + "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", + "dflt": false, + "editType": "ticks+layoutstyle", + "valType": "enumerated", + "values": [ + true, + "ticks", + false, + "all", + "allticks" + ] }, - "visible": { - "description": "Determines whether or not this button is visible.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - } - } - }, - "role": "object" - }, - "editType": "plot", - "font": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "visible": { - "description": "Determines whether or not this range selector is visible. Note that range selectors are only available for x axes of `type` set to or auto-typed to *date*.", - "editType": "plot", - "valType": "boolean" - }, - "x": { - "description": "Sets the x position (in normalized coordinates) of the range selector.", - "editType": "plot", - "max": 3, - "min": -2, - "valType": "number" - }, - "xanchor": { - "description": "Sets the range selector's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector.", - "dflt": "left", - "editType": "plot", - "valType": "enumerated", - "values": [ - "auto", - "left", - "center", - "right" - ] - }, - "y": { - "description": "Sets the y position (in normalized coordinates) of the range selector.", - "editType": "plot", - "max": 3, - "min": -2, - "valType": "number" - }, - "yanchor": { - "description": "Sets the range selector's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector.", - "dflt": "bottom", - "editType": "plot", - "valType": "enumerated", - "values": [ - "auto", - "top", - "middle", - "bottom" - ] - } - }, - "rangeslider": { - "autorange": { - "description": "Determines whether or not the range slider range is computed in relation to the input data. If `range` is provided, then `autorange` is set to *false*.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "bgcolor": { - "description": "Sets the background color of the range slider.", - "dflt": "#fff", - "editType": "plot", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the border color of the range slider.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the border width of the range slider.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "editType": "calc", - "range": { - "description": "Sets the range of the range slider. If not set, defaults to the full xaxis range. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", - "impliedEdits": { - "autorange": false - }, - "items": [ - { - "editType": "calc", - "impliedEdits": { - "^autorange": false + "modebardisable": { + "description": "Disables certain modebar buttons for this axis. *autoscale* disables the autoscale buttons, *zoominout* disables the zoom-in and zoom-out buttons.", + "dflt": "none", + "editType": "modebar", + "extras": [ + "none" + ], + "flags": [ + "autoscale", + "zoominout" + ], + "valType": "flaglist" }, - "valType": "any" - }, - { - "editType": "calc", - "impliedEdits": { - "^autorange": false + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "ticks", + "min": 0, + "valType": "integer" }, - "valType": "any" - } - ], - "valType": "info_array" - }, - "role": "object", - "thickness": { - "description": "The height of the range slider as a fraction of the total plot area height.", - "dflt": 0.15, - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "visible": { - "description": "Determines whether or not the range slider will be visible. If visible, perpendicular axes will be set to `fixedrange`", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "yaxis": { - "_isSubplotObj": true, - "editType": "calc", - "range": { - "description": "Sets the range of this axis for the rangeslider.", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" - } - ], - "valType": "info_array" - }, - "rangemode": { - "description": "Determines whether or not the range of this axis in the rangeslider use the same value than in the main plot when zooming in/out. If *auto*, the autorange will be used. If *fixed*, the `range` is used. If *match*, the current range of the corresponding y-axis on the main subplot is used.", - "dflt": "match", - "editType": "calc", - "valType": "enumerated", - "values": [ - "auto", - "fixed", - "match" - ] - }, - "role": "object" - } - }, - "role": "object", - "scaleanchor": { - "description": "If set to another axis id (e.g. `x2`, `y`), the range of this axis changes together with the range of the corresponding axis such that the scale of pixels per unit is in a constant ratio. Both axes are still zoomable, but when you zoom one, the other will zoom the same amount, keeping a fixed midpoint. `constrain` and `constraintoward` determine how we enforce the constraint. You can chain these, ie `yaxis: {scaleanchor: *x*}, xaxis2: {scaleanchor: *y*}` but you can only link axes of the same `type`. The linked axis can have the opposite letter (to constrain the aspect ratio) or the same letter (to match scales across subplots). Loops (`yaxis: {scaleanchor: *x*}, xaxis: {scaleanchor: *y*}` or longer) are redundant and the last constraint encountered will be ignored to avoid possible inconsistent constraints via `scaleratio`. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden. Setting `false` allows to remove a default constraint (occasionally, you may need to prevent a default `scaleanchor` constraint from being applied, eg. when having an image trace `yaxis: {scaleanchor: \"x\"}` is set automatically in order for pixels to be rendered as squares, setting `yaxis: {scaleanchor: false}` allows to remove the constraint).", - "editType": "plot", - "valType": "enumerated", - "values": [ - "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", - "/^y([2-9]|[1-9][0-9]+)?( domain)?$/", - false - ] - }, - "scaleratio": { - "description": "If this axis is linked to another by `scaleanchor`, this determines the pixel to unit scale ratio. For example, if this value is 10, then every unit on this axis spans 10 times the number of pixels as a unit on the linked axis. Use this for example to create an elevation profile where the vertical scale is exaggerated a fixed amount with respect to the horizontal.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "ticks", - "valType": "boolean" - }, - "showdividers": { - "description": "Determines whether or not a dividers are drawn between the category levels of this axis. Only has an effect on *multicategory* axes.", - "dflt": true, - "editType": "ticks", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "editType": "ticks", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": false, - "editType": "ticks+layoutstyle", - "valType": "boolean" - }, - "showspikes": { - "description": "Determines whether or not spikes (aka droplines) are drawn for this axis. Note: This only takes affect when hovermode = closest", - "dflt": false, - "editType": "modebar", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "ticks", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "side": { - "description": "Determines whether a x (y) axis is positioned at the *bottom* (*left*) or *top* (*right*) of the plotting area.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "top", - "bottom", - "left", - "right" - ] - }, - "spikecolor": { - "description": "Sets the spike color. If undefined, will use the series color", - "dflt": null, - "editType": "none", - "valType": "color" - }, - "spikedash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "dash", - "editType": "none", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "spikemode": { - "description": "Determines the drawing mode for the spike line If *toaxis*, the line is drawn from the data point to the axis the series is plotted on. If *across*, the line is drawn across the entire plot area, and supercedes *toaxis*. If *marker*, then a marker dot is drawn on the axis the series is plotted on", - "dflt": "toaxis", - "editType": "none", - "flags": [ - "toaxis", - "across", - "marker" - ], - "valType": "flaglist" - }, - "spikesnap": { - "description": "Determines whether spikelines are stuck to the cursor or to the closest datapoints.", - "dflt": "hovered data", - "editType": "none", - "valType": "enumerated", - "values": [ - "data", - "cursor", - "hovered data" - ] - }, - "spikethickness": { - "description": "Sets the width (in px) of the zero line.", - "dflt": 3, - "editType": "none", - "valType": "number" - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "ticks", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "ticks", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "ticks", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "ticks", - "valType": "color" - }, - "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.", - "editType": "ticks", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "ticks", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "ticks", - "valType": "string" - }, - "size": { - "editType": "ticks", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "ticks", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "ticks", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "ticks", - "items": [ - { + "overlaying": { + "description": "If set a same-letter axis id, this axis is overlaid on top of the corresponding same-letter axis, with traces and axes visible for both axes. If *false*, this axis does not overlay any same-letter axes. In this case, for axes with overlapping domains only the highest-numbered axis will be visible.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "free", + "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", + "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" + ] + }, + "position": { + "description": "Sets the position of this axis in the plotting space (in normalized coordinates). Only has an effect if `anchor` is set to *free*.", + "dflt": 0, + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "range": { + "anim": true, + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. Leaving either or both elements `null` impacts the default `autorange`.", + "editType": "axrange", + "impliedEdits": { + "autorange": false + }, + "items": [ + { + "anim": true, + "editType": "axrange", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + { + "anim": true, + "editType": "axrange", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + } + ], + "valType": "info_array" + }, + "rangebreaks": { + "items": { + "rangebreak": { + "bounds": { + "description": "Sets the lower and upper bounds of this axis rangebreak. Can be used with `pattern`.", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "dvalue": { + "description": "Sets the size of each `values` item. The default is one day in milliseconds.", + "dflt": 86400000, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether this axis rangebreak is enabled or disabled. Please note that `rangebreaks` only work for *date* axis type.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "none", + "valType": "string" + }, + "pattern": { + "description": "Determines a pattern on the time line that generates breaks. If *day of week* - days of the week in English e.g. 'Sunday' or `sun` (matching is case-insensitive and considers only the first three characters), as well as Sunday-based integers between 0 and 6. If *hour* - hour (24-hour clock) as decimal numbers between 0 and 24. for more info. Examples: - { pattern: 'day of week', bounds: [6, 1] } or simply { bounds: ['sat', 'mon'] } breaks from Saturday to Monday (i.e. skips the weekends). - { pattern: 'hour', bounds: [17, 8] } breaks from 5pm to 8am (i.e. skips non-work hours).", + "editType": "calc", + "valType": "enumerated", + "values": [ + "day of week", + "hour", + "" + ] + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "values": { + "description": "Sets the coordinate values corresponding to the rangebreaks. An alternative to `bounds`. Use `dvalue` to set the size of the values along the axis.", + "editType": "calc", + "freeLength": true, + "items": { + "editType": "calc", + "valType": "any" + }, + "valType": "info_array" + } + } + }, + "role": "object" + }, + "rangemode": { + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ] + }, + "rangeselector": { + "activecolor": { + "description": "Sets the background color of the active range selector button.", + "editType": "plot", + "valType": "color" + }, + "bgcolor": { + "description": "Sets the background color of the range selector buttons.", + "dflt": "#eee", + "editType": "plot", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the color of the border enclosing the range selector.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) of the border enclosing the range selector.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "buttons": { + "items": { + "button": { + "count": { + "description": "Sets the number of steps to take to update the range. Use with `step` to specify the update interval.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "description": "Sets the specifications for each buttons. By default, a range selector comes with no buttons.", + "editType": "plot", + "label": { + "description": "Sets the text label to appear on the button.", + "editType": "plot", + "valType": "string" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "step": { + "description": "The unit of measurement that the `count` value will set the range by.", + "dflt": "month", + "editType": "plot", + "valType": "enumerated", + "values": [ + "month", + "year", + "day", + "hour", + "minute", + "second", + "all" + ] + }, + "stepmode": { + "description": "Sets the range update mode. If *backward*, the range update shifts the start of range back *count* times *step* milliseconds. If *todate*, the range update shifts the start of range back to the first timestamp from *count* times *step* milliseconds back. For example, with `step` set to *year* and `count` set to *1* the range update shifts the start of the range back to January 01 of the current year. Month and year *todate* are currently available only for the built-in (Gregorian) calendar.", + "dflt": "backward", + "editType": "plot", + "valType": "enumerated", + "values": [ + "backward", + "todate" + ] + }, + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this button is visible.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + } + } + }, + "role": "object" + }, + "editType": "plot", + "font": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "visible": { + "description": "Determines whether or not this range selector is visible. Note that range selectors are only available for x axes of `type` set to or auto-typed to *date*.", + "editType": "plot", + "valType": "boolean" + }, + "x": { + "description": "Sets the x position (in normalized coordinates) of the range selector.", + "editType": "plot", + "max": 3, + "min": -2, + "valType": "number" + }, + "xanchor": { + "description": "Sets the range selector's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector.", + "dflt": "left", + "editType": "plot", + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ] + }, + "y": { + "description": "Sets the y position (in normalized coordinates) of the range selector.", + "editType": "plot", + "max": 3, + "min": -2, + "valType": "number" + }, + "yanchor": { + "description": "Sets the range selector's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector.", + "dflt": "bottom", + "editType": "plot", + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ] + } + }, + "rangeslider": { + "autorange": { + "description": "Determines whether or not the range slider range is computed in relation to the input data. If `range` is provided, then `autorange` is set to *false*.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "bgcolor": { + "description": "Sets the background color of the range slider.", + "dflt": "#fff", + "editType": "plot", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the border color of the range slider.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the border width of the range slider.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "editType": "calc", + "range": { + "description": "Sets the range of the range slider. If not set, defaults to the full xaxis range. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "impliedEdits": { + "autorange": false + }, + "items": [ + { + "editType": "calc", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + { + "editType": "calc", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + } + ], + "valType": "info_array" + }, + "role": "object", + "thickness": { + "description": "The height of the range slider as a fraction of the total plot area height.", + "dflt": 0.15, + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "visible": { + "description": "Determines whether or not the range slider will be visible. If visible, perpendicular axes will be set to `fixedrange`", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "yaxis": { + "_isSubplotObj": true, + "editType": "calc", + "range": { + "description": "Sets the range of this axis for the rangeslider.", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "valType": "info_array" + }, + "rangemode": { + "description": "Determines whether or not the range of this axis in the rangeslider use the same value than in the main plot when zooming in/out. If *auto*, the autorange will be used. If *fixed*, the `range` is used. If *match*, the current range of the corresponding y-axis on the main subplot is used.", + "dflt": "match", + "editType": "calc", + "valType": "enumerated", + "values": [ + "auto", + "fixed", + "match" + ] + }, + "role": "object" + } + }, + "role": "object", + "scaleanchor": { + "description": "If set to another axis id (e.g. `x2`, `y`), the range of this axis changes together with the range of the corresponding axis such that the scale of pixels per unit is in a constant ratio. Both axes are still zoomable, but when you zoom one, the other will zoom the same amount, keeping a fixed midpoint. `constrain` and `constraintoward` determine how we enforce the constraint. You can chain these, ie `yaxis: {scaleanchor: *x*}, xaxis2: {scaleanchor: *y*}` but you can only link axes of the same `type`. The linked axis can have the opposite letter (to constrain the aspect ratio) or the same letter (to match scales across subplots). Loops (`yaxis: {scaleanchor: *x*}, xaxis: {scaleanchor: *y*}` or longer) are redundant and the last constraint encountered will be ignored to avoid possible inconsistent constraints via `scaleratio`. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden. Setting `false` allows to remove a default constraint (occasionally, you may need to prevent a default `scaleanchor` constraint from being applied, eg. when having an image trace `yaxis: {scaleanchor: \"x\"}` is set automatically in order for pixels to be rendered as squares, setting `yaxis: {scaleanchor: false}` allows to remove the constraint).", + "editType": "plot", + "valType": "enumerated", + "values": [ + "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", + "/^y([2-9]|[1-9][0-9]+)?( domain)?$/", + false + ] + }, + "scaleratio": { + "description": "If this axis is linked to another by `scaleanchor`, this determines the pixel to unit scale ratio. For example, if this value is 10, then every unit on this axis spans 10 times the number of pixels as a unit on the linked axis. Use this for example to create an elevation profile where the vertical scale is exaggerated a fixed amount with respect to the horizontal.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, "editType": "ticks", - "valType": "any" - }, - { + "valType": "boolean" + }, + "showdividers": { + "description": "Determines whether or not a dividers are drawn between the category levels of this axis. Only has an effect on *multicategory* axes.", + "dflt": true, + "editType": "ticks", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "editType": "ticks", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": false, + "editType": "ticks+layoutstyle", + "valType": "boolean" + }, + "showspikes": { + "description": "Determines whether or not spikes (aka droplines) are drawn for this axis. Note: This only takes affect when hovermode = closest", + "dflt": false, + "editType": "modebar", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "ticks", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "side": { + "description": "Determines whether a x (y) axis is positioned at the *bottom* (*left*) or *top* (*right*) of the plotting area.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "top", + "bottom", + "left", + "right" + ] + }, + "spikecolor": { + "description": "Sets the spike color. If undefined, will use the series color", + "dflt": null, + "editType": "none", + "valType": "color" + }, + "spikedash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "dash", + "editType": "none", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "spikemode": { + "description": "Determines the drawing mode for the spike line If *toaxis*, the line is drawn from the data point to the axis the series is plotted on. If *across*, the line is drawn across the entire plot area, and supercedes *toaxis*. If *marker*, then a marker dot is drawn on the axis the series is plotted on", + "dflt": "toaxis", + "editType": "none", + "flags": [ + "toaxis", + "across", + "marker" + ], + "valType": "flaglist" + }, + "spikesnap": { + "description": "Determines whether spikelines are stuck to the cursor or to the closest datapoints.", + "dflt": "hovered data", + "editType": "none", + "valType": "enumerated", + "values": [ + "data", + "cursor", + "hovered data" + ] + }, + "spikethickness": { + "description": "Sets the width (in px) of the zero line.", + "dflt": 3, + "editType": "none", + "valType": "number" + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", "editType": "ticks", + "impliedEdits": { + "tickmode": "linear" + }, "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "ticks", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "ticks", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "ticks", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabelindex": { - "arrayOk": true, - "description": "Only for axes with `type` *date* or *linear*. Instead of drawing the major tick label, draw the label for the minor tick that is n positions away from the major tick. E.g. to always draw the label for the minor tick before each major tick, choose `ticklabelindex` -1. This is useful for date axes with `ticklabelmode` *period* if you want to label the period that ends with each major tick instead of the period that begins there.", - "editType": "calc", - "valType": "integer" - }, - "ticklabelindexsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticklabelindex`.", - "editType": "none", - "valType": "string" - }, - "ticklabelmode": { - "description": "Determines where tick labels are drawn with respect to their corresponding ticks and grid lines. Only has an effect for axes of `type` *date* When set to *period*, tick labels are drawn in the middle of the period between ticks.", - "dflt": "instant", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "instant", - "period" - ] - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. Otherwise on *category* and *multicategory* axes the default is *allow*. In other cases the default is *hide past div*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn with respect to the axis. Please note that top or bottom has no effect on x axes or when `ticklabelmode` is set to *period* or when `tickson` is set to *boundaries*. Similarly, left or right has no effect on y axes or when `ticklabelmode` is set to *period* or when `tickson` is set to *boundaries*. Has no effect on *multicategory* axes. When used on axes linked by `matches` or `scaleanchor`, no extra padding for inside labels would be added by autorange, so that the scales could match.", - "dflt": "outside", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelshift": { - "description": "Shifts the tick labels by the specified number of pixels in parallel to the axis. Positive values move the labels in the positive direction of the axis.", - "dflt": 0, - "editType": "ticks", - "valType": "integer" - }, - "ticklabelstandoff": { - "description": "Sets the standoff distance (in px) between the axis tick labels and their default position. A positive `ticklabelstandoff` moves the labels farther away from the plot area if `ticklabelposition` is *outside*, and deeper into the plot area if `ticklabelposition` is *inside*. A negative `ticklabelstandoff` works in the opposite direction, moving outside ticks towards the plot area and inside ticks towards the outside. If the negative value is large enough, inside ticks can even end up outside and vice versa.", - "dflt": 0, - "editType": "ticks", - "valType": "integer" - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "ticks", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "ticks", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). If *sync*, the number of ticks will sync with the overlayed axis set by `overlaying` property.", - "editType": "ticks", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array", - "sync" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "ticks", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "tickson": { - "description": "Determines where ticks and grid lines are drawn with respect to their corresponding tick labels. Only has an effect for axes of `type` *category* or *multicategory*. When set to *boundaries*, ticks and grid lines are drawn half a category to the left/bottom of labels.", - "dflt": "labels", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "labels", - "boundaries" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "ticks", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "ticks", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "ticks", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "ticks", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "ticks", - "font": { - "color": { - "editType": "ticks", - "valType": "color" - }, - "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.", - "editType": "ticks", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "ticks", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "ticks", - "valType": "string" - }, - "size": { - "editType": "ticks", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "ticks", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "standoff": { - "description": "Sets the standoff distance (in px) between the axis labels and the title text The default value is a function of the axis tick labels, the title `font.size` and the axis `linewidth`. Note that the axis title position is always constrained within the margins, so the actual standoff distance is always less than the set or default value. By setting `standoff` and turning on `automargin`, plotly.js will push the margins to fit the axis title at given standoff distance.", - "editType": "ticks", - "min": 0, - "valType": "number" - }, - "text": { - "description": "Sets the title of this axis.", - "editType": "ticks", - "valType": "string" - } - }, - "type": { - "_noTemplating": true, - "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", - "dflt": "-", - "editType": "calc", - "valType": "enumerated", - "values": [ - "-", - "linear", - "log", - "date", - "category", - "multicategory" - ] - }, - "uirevision": { - "description": "Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`.", - "editType": "none", - "valType": "any" - }, - "unifiedhovertitle": { - "editType": "none", - "role": "object", - "text": { - "description": "Template string used for rendering the title that appear on x or y unified hover box. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value.", - "dflt": "", - "editType": "none", - "valType": "string" - } - }, - "visible": { - "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", - "editType": "plot", - "valType": "boolean" - }, - "zeroline": { - "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines.", - "editType": "ticks", - "valType": "boolean" - }, - "zerolinecolor": { - "description": "Sets the line color of the zero line.", - "dflt": "#444", - "editType": "ticks", - "valType": "color" - }, - "zerolinelayer": { - "description": "Sets the layer on which this zeroline is displayed. If *above traces*, this zeroline is displayed above all the subplot's traces If *below traces*, this zeroline is displayed below all the subplot's traces, but above the grid lines. Limitation: *zerolinelayer* currently has no effect if the *zorder* property is set on any trace.", - "dflt": "below traces", - "editType": "plot", - "valType": "enumerated", - "values": [ - "above traces", - "below traces" - ] - }, - "zerolinewidth": { - "description": "Sets the width (in px) of the zero line.", - "dflt": 1, - "editType": "ticks", - "valType": "number" - } - }, - "yaxis": { - "_isSubplotObj": true, - "anchor": { - "description": "If set to an opposite-letter axis id (e.g. `x2`, `y`), this axis is bound to the corresponding opposite-letter axis. If set to *free*, this axis' position is determined by `position`.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "free", - "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", - "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" - ] - }, - "automargin": { - "description": "Determines whether long tick labels automatically grow the figure margins.", - "dflt": false, - "editType": "ticks", - "extras": [ - true, - false - ], - "flags": [ - "height", - "width", - "left", - "right", - "top", - "bottom" - ], - "valType": "flaglist" - }, - "autorange": { - "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided and it has a value for both the lower and upper bound, `autorange` is set to *false*. Using *min* applies autorange only to set the minimum. Using *max* applies autorange only to set the maximum. Using *min reversed* applies autorange only to set the minimum on a reversed axis. Using *max reversed* applies autorange only to set the maximum on a reversed axis. Using *reversed* applies autorange on both ends and reverses the axis direction.", - "dflt": true, - "editType": "axrange", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - true, - false, - "reversed", - "min reversed", - "max reversed", - "min", - "max" - ] - }, - "autorangeoptions": { - "clipmax": { - "description": "Clip autorange maximum if it goes beyond this value. Has no effect when `autorangeoptions.maxallowed` is provided.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "clipmin": { - "description": "Clip autorange minimum if it goes beyond this value. Has no effect when `autorangeoptions.minallowed` is provided.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "editType": "plot", - "include": { - "arrayOk": true, - "description": "Ensure this value is included in autorange.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "includesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `include`.", - "editType": "none", - "valType": "string" - }, - "maxallowed": { - "description": "Use this value exactly as autorange maximum.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "minallowed": { - "description": "Use this value exactly as autorange minimum.", - "editType": "plot", - "impliedEdits": {}, - "valType": "any" - }, - "role": "object" - }, - "autoshift": { - "description": "Automatically reposition the axis to avoid overlap with other axes with the same `overlaying` value. This repositioning will account for any `shift` amount applied to other axes on the same side with `autoshift` is set to true. Only has an effect if `anchor` is set to *free*.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "autotickangles": { - "description": "When `tickangle` is set to *auto*, it will be set to the first angle in this array that is large enough to prevent label overlap.", - "dflt": [ - 0, - 30, - 90 - ], - "editType": "ticks", - "freeLength": true, - "items": { - "valType": "angle" - }, - "valType": "info_array" - }, - "autotypenumbers": { - "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", - "dflt": "convert types", - "editType": "calc", - "valType": "enumerated", - "values": [ - "convert types", - "strict" - ] - }, - "calendar": { - "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "categoryarray": { - "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", - "editType": "calc", - "valType": "data_array" - }, - "categoryarraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", - "editType": "none", - "valType": "string" - }, - "categoryorder": { - "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values.", - "dflt": "trace", - "editType": "calc", - "valType": "enumerated", - "values": [ - "trace", - "category ascending", - "category descending", - "array", - "total ascending", - "total descending", - "min ascending", - "min descending", - "max ascending", - "max descending", - "sum ascending", - "sum descending", - "mean ascending", - "mean descending", - "geometric mean ascending", - "geometric mean descending", - "median ascending", - "median descending" - ] - }, - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "ticks", - "valType": "color" - }, - "constrain": { - "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines how that happens: by increasing the *range*, or by decreasing the *domain*. Default is *domain* for axes containing image traces, *range* otherwise.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "range", - "domain" - ] - }, - "constraintoward": { - "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines which direction we push the originally specified plot area. Options are *left*, *center* (default), and *right* for x axes, and *top*, *middle* (default), and *bottom* for y axes.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "left", - "center", - "right", - "top", - "middle", - "bottom" - ] - }, - "dividercolor": { - "description": "Sets the color of the dividers Only has an effect on *multicategory* axes.", - "dflt": "#444", - "editType": "ticks", - "valType": "color" - }, - "dividerwidth": { - "description": "Sets the width (in px) of the dividers Only has an effect on *multicategory* axes.", - "dflt": 1, - "editType": "ticks", - "valType": "number" - }, - "domain": { - "description": "Sets the domain of this axis (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "ticks", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "calc", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "fixedrange": { - "description": "Determines whether or not this axis is zoom-able. If true, then zoom is disabled.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "ticks", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "ticks", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "ticks", - "min": 0, - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "insiderange": { - "description": "Could be used to set the desired inside range of this axis (excluding the labels) when `ticklabelposition` of the anchored axis has *inside*. Not implemented for axes with `type` *log*. This would be ignored when `range` is provided.", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" - } - ], - "valType": "info_array" - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "ticks", - "valType": "any" - }, - "layer": { - "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", - "dflt": "above traces", - "editType": "plot", - "valType": "enumerated", - "values": [ - "above traces", - "below traces" - ] - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "layoutstyle", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "ticks+layoutstyle", - "min": 0, - "valType": "number" - }, - "matches": { - "description": "If set to another axis id (e.g. `x2`, `y`), the range of this axis will match the range of the corresponding axis in data-coordinates space. Moreover, matching axes share auto-range values, category lists and histogram auto-bins. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden. Moreover, note that matching axes must have the same `type`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", - "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" - ] - }, - "maxallowed": { - "description": "Determines the maximum range of this axis.", - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - "minallowed": { - "description": "Determines the minimum range of this axis.", - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "ticks", - "min": 0, - "valType": "number" - }, - "minor": { - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "ticks", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "ticks", - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "ticks", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "ticks", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "editType": "ticks", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 5, - "editType": "ticks", - "min": 0, - "valType": "integer" - }, - "role": "object", - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "editType": "ticks", - "valType": "boolean" - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "ticks", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "ticks", - "valType": "color" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "editType": "ticks", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "ticks", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "ticks", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "editType": "ticks", - "min": 0, - "valType": "number" - } - }, - "minorloglabels": { - "description": "Determines how minor log labels are displayed. If *small digits*, small digits i.e. 2 or 5 are displayed. If *complete*, complete digits are displayed. If *none*, no labels are displayed.", - "dflt": "small digits", - "editType": "calc", - "valType": "enumerated", - "values": [ - "small digits", - "complete", - "none" - ] - }, - "mirror": { - "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", - "dflt": false, - "editType": "ticks+layoutstyle", - "valType": "enumerated", - "values": [ - true, - "ticks", - false, - "all", - "allticks" - ] - }, - "modebardisable": { - "description": "Disables certain modebar buttons for this axis. *autoscale* disables the autoscale buttons, *zoominout* disables the zoom-in and zoom-out buttons.", - "dflt": "none", - "editType": "modebar", - "extras": [ - "none" - ], - "flags": [ - "autoscale", - "zoominout" - ], - "valType": "flaglist" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "ticks", - "min": 0, - "valType": "integer" - }, - "overlaying": { - "description": "If set a same-letter axis id, this axis is overlaid on top of the corresponding same-letter axis, with traces and axes visible for both axes. If *false*, this axis does not overlay any same-letter axes. In this case, for axes with overlapping domains only the highest-numbered axis will be visible.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "free", - "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", - "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" - ] - }, - "position": { - "description": "Sets the position of this axis in the plotting space (in normalized coordinates). Only has an effect if `anchor` is set to *free*.", - "dflt": 0, - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "range": { - "anim": true, - "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. Leaving either or both elements `null` impacts the default `autorange`.", - "editType": "axrange", - "impliedEdits": { - "autorange": false - }, - "items": [ - { - "anim": true, - "editType": "axrange", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - { - "anim": true, - "editType": "axrange", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - } - ], - "valType": "info_array" - }, - "rangebreaks": { - "items": { - "rangebreak": { - "bounds": { - "description": "Sets the lower and upper bounds of this axis rangebreak. Can be used with `pattern`.", - "editType": "calc", - "items": [ - { + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "ticks", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "ticks", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "ticks", + "valType": "color" + }, + "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.", + "editType": "ticks", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "ticks", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "ticks", + "valType": "string" + }, + "size": { + "editType": "ticks", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "ticks", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "ticks", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "ticks", + "items": [ + { + "editType": "ticks", + "valType": "any" + }, + { + "editType": "ticks", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "ticks", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "ticks", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "ticks", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabelindex": { + "arrayOk": true, + "description": "Only for axes with `type` *date* or *linear*. Instead of drawing the major tick label, draw the label for the minor tick that is n positions away from the major tick. E.g. to always draw the label for the minor tick before each major tick, choose `ticklabelindex` -1. This is useful for date axes with `ticklabelmode` *period* if you want to label the period that ends with each major tick instead of the period that begins there.", "editType": "calc", - "valType": "any" - }, - { + "valType": "integer" + }, + "ticklabelindexsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticklabelindex`.", + "editType": "none", + "valType": "string" + }, + "ticklabelmode": { + "description": "Determines where tick labels are drawn with respect to their corresponding ticks and grid lines. Only has an effect for axes of `type` *date* When set to *period*, tick labels are drawn in the middle of the period between ticks.", + "dflt": "instant", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "instant", + "period" + ] + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. Otherwise on *category* and *multicategory* axes the default is *allow*. In other cases the default is *hide past div*.", "editType": "calc", - "valType": "any" - } - ], - "valType": "info_array" - }, - "dvalue": { - "description": "Sets the size of each `values` item. The default is one day in milliseconds.", - "dflt": 86400000, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "editType": "calc", - "enabled": { - "description": "Determines whether this axis rangebreak is enabled or disabled. Please note that `rangebreaks` only work for *date* axis type.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "none", - "valType": "string" - }, - "pattern": { - "description": "Determines a pattern on the time line that generates breaks. If *day of week* - days of the week in English e.g. 'Sunday' or `sun` (matching is case-insensitive and considers only the first three characters), as well as Sunday-based integers between 0 and 6. If *hour* - hour (24-hour clock) as decimal numbers between 0 and 24. for more info. Examples: - { pattern: 'day of week', bounds: [6, 1] } or simply { bounds: ['sat', 'mon'] } breaks from Saturday to Monday (i.e. skips the weekends). - { pattern: 'hour', bounds: [17, 8] } breaks from 5pm to 8am (i.e. skips non-work hours).", - "editType": "calc", - "valType": "enumerated", - "values": [ - "day of week", - "hour", - "" - ] - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "values": { - "description": "Sets the coordinate values corresponding to the rangebreaks. An alternative to `bounds`. Use `dvalue` to set the size of the values along the axis.", - "editType": "calc", - "freeLength": true, - "items": { - "editType": "calc", - "valType": "any" + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] }, - "valType": "info_array" - } - } - }, - "role": "object" - }, - "rangemode": { - "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "tozero", - "nonnegative" - ] - }, - "role": "object", - "scaleanchor": { - "description": "If set to another axis id (e.g. `x2`, `y`), the range of this axis changes together with the range of the corresponding axis such that the scale of pixels per unit is in a constant ratio. Both axes are still zoomable, but when you zoom one, the other will zoom the same amount, keeping a fixed midpoint. `constrain` and `constraintoward` determine how we enforce the constraint. You can chain these, ie `yaxis: {scaleanchor: *x*}, xaxis2: {scaleanchor: *y*}` but you can only link axes of the same `type`. The linked axis can have the opposite letter (to constrain the aspect ratio) or the same letter (to match scales across subplots). Loops (`yaxis: {scaleanchor: *x*}, xaxis: {scaleanchor: *y*}` or longer) are redundant and the last constraint encountered will be ignored to avoid possible inconsistent constraints via `scaleratio`. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden. Setting `false` allows to remove a default constraint (occasionally, you may need to prevent a default `scaleanchor` constraint from being applied, eg. when having an image trace `yaxis: {scaleanchor: \"x\"}` is set automatically in order for pixels to be rendered as squares, setting `yaxis: {scaleanchor: false}` allows to remove the constraint).", - "editType": "plot", - "valType": "enumerated", - "values": [ - "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", - "/^y([2-9]|[1-9][0-9]+)?( domain)?$/", - false - ] - }, - "scaleratio": { - "description": "If this axis is linked to another by `scaleanchor`, this determines the pixel to unit scale ratio. For example, if this value is 10, then every unit on this axis spans 10 times the number of pixels as a unit on the linked axis. Use this for example to create an elevation profile where the vertical scale is exaggerated a fixed amount with respect to the horizontal.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "ticks", - "valType": "boolean" - }, - "shift": { - "description": "Moves the axis a given number of pixels from where it would have been otherwise. Accepts both positive and negative values, which will shift the axis either right or left, respectively. If `autoshift` is set to true, then this defaults to a padding of -3 if `side` is set to *left*. and defaults to +3 if `side` is set to *right*. Defaults to 0 if `autoshift` is set to false. Only has an effect if `anchor` is set to *free*.", - "editType": "plot", - "valType": "number" - }, - "showdividers": { - "description": "Determines whether or not a dividers are drawn between the category levels of this axis. Only has an effect on *multicategory* axes.", - "dflt": true, - "editType": "ticks", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "editType": "ticks", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": false, - "editType": "ticks+layoutstyle", - "valType": "boolean" - }, - "showspikes": { - "description": "Determines whether or not spikes (aka droplines) are drawn for this axis. Note: This only takes affect when hovermode = closest", - "dflt": false, - "editType": "modebar", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "ticks", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "side": { - "description": "Determines whether a x (y) axis is positioned at the *bottom* (*left*) or *top* (*right*) of the plotting area.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "top", - "bottom", - "left", - "right" - ] - }, - "spikecolor": { - "description": "Sets the spike color. If undefined, will use the series color", - "dflt": null, - "editType": "none", - "valType": "color" - }, - "spikedash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "dash", - "editType": "none", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "spikemode": { - "description": "Determines the drawing mode for the spike line If *toaxis*, the line is drawn from the data point to the axis the series is plotted on. If *across*, the line is drawn across the entire plot area, and supercedes *toaxis*. If *marker*, then a marker dot is drawn on the axis the series is plotted on", - "dflt": "toaxis", - "editType": "none", - "flags": [ - "toaxis", - "across", - "marker" - ], - "valType": "flaglist" - }, - "spikesnap": { - "description": "Determines whether spikelines are stuck to the cursor or to the closest datapoints.", - "dflt": "hovered data", - "editType": "none", - "valType": "enumerated", - "values": [ - "data", - "cursor", - "hovered data" - ] - }, - "spikethickness": { - "description": "Sets the width (in px) of the zero line.", - "dflt": 3, - "editType": "none", - "valType": "number" - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "ticks", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "ticks", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "ticks", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "ticks", - "valType": "color" - }, - "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.", - "editType": "ticks", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "ticks", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "ticks", - "valType": "string" - }, - "size": { - "editType": "ticks", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "ticks", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "ticks", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "ticks", - "items": [ - { + "ticklabelposition": { + "description": "Determines where tick labels are drawn with respect to the axis. Please note that top or bottom has no effect on x axes or when `ticklabelmode` is set to *period* or when `tickson` is set to *boundaries*. Similarly, left or right has no effect on y axes or when `ticklabelmode` is set to *period* or when `tickson` is set to *boundaries*. Has no effect on *multicategory* axes. When used on axes linked by `matches` or `scaleanchor`, no extra padding for inside labels would be added by autorange, so that the scales could match.", + "dflt": "outside", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelshift": { + "description": "Shifts the tick labels by the specified number of pixels in parallel to the axis. Positive values move the labels in the positive direction of the axis.", + "dflt": 0, "editType": "ticks", - "valType": "any" - }, - { + "valType": "integer" + }, + "ticklabelstandoff": { + "description": "Sets the standoff distance (in px) between the axis tick labels and their default position. A positive `ticklabelstandoff` moves the labels farther away from the plot area if `ticklabelposition` is *outside*, and deeper into the plot area if `ticklabelposition` is *inside*. A negative `ticklabelstandoff` works in the opposite direction, moving outside ticks towards the plot area and inside ticks towards the outside. If the negative value is large enough, inside ticks can even end up outside and vice versa.", + "dflt": 0, "editType": "ticks", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "ticks", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "ticks", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "ticks", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabelindex": { - "arrayOk": true, - "description": "Only for axes with `type` *date* or *linear*. Instead of drawing the major tick label, draw the label for the minor tick that is n positions away from the major tick. E.g. to always draw the label for the minor tick before each major tick, choose `ticklabelindex` -1. This is useful for date axes with `ticklabelmode` *period* if you want to label the period that ends with each major tick instead of the period that begins there.", - "editType": "calc", - "valType": "integer" - }, - "ticklabelindexsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticklabelindex`.", - "editType": "none", - "valType": "string" - }, - "ticklabelmode": { - "description": "Determines where tick labels are drawn with respect to their corresponding ticks and grid lines. Only has an effect for axes of `type` *date* When set to *period*, tick labels are drawn in the middle of the period between ticks.", - "dflt": "instant", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "instant", - "period" - ] - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. Otherwise on *category* and *multicategory* axes the default is *allow*. In other cases the default is *hide past div*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn with respect to the axis. Please note that top or bottom has no effect on x axes or when `ticklabelmode` is set to *period* or when `tickson` is set to *boundaries*. Similarly, left or right has no effect on y axes or when `ticklabelmode` is set to *period* or when `tickson` is set to *boundaries*. Has no effect on *multicategory* axes. When used on axes linked by `matches` or `scaleanchor`, no extra padding for inside labels would be added by autorange, so that the scales could match.", - "dflt": "outside", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelshift": { - "description": "Shifts the tick labels by the specified number of pixels in parallel to the axis. Positive values move the labels in the positive direction of the axis.", - "dflt": 0, - "editType": "ticks", - "valType": "integer" - }, - "ticklabelstandoff": { - "description": "Sets the standoff distance (in px) between the axis tick labels and their default position. A positive `ticklabelstandoff` moves the labels farther away from the plot area if `ticklabelposition` is *outside*, and deeper into the plot area if `ticklabelposition` is *inside*. A negative `ticklabelstandoff` works in the opposite direction, moving outside ticks towards the plot area and inside ticks towards the outside. If the negative value is large enough, inside ticks can even end up outside and vice versa.", - "dflt": 0, - "editType": "ticks", - "valType": "integer" - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "ticks", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "ticks", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). If *sync*, the number of ticks will sync with the overlayed axis set by `overlaying` property.", - "editType": "ticks", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array", - "sync" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "ticks", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "tickson": { - "description": "Determines where ticks and grid lines are drawn with respect to their corresponding tick labels. Only has an effect for axes of `type` *category* or *multicategory*. When set to *boundaries*, ticks and grid lines are drawn half a category to the left/bottom of labels.", - "dflt": "labels", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "labels", - "boundaries" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "ticks", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "ticks", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "ticks", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "ticks", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "ticks", - "font": { - "color": { - "editType": "ticks", - "valType": "color" - }, - "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.", - "editType": "ticks", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "ticks", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "ticks", - "valType": "string" - }, - "size": { - "editType": "ticks", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "ticks", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "ticks", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "standoff": { - "description": "Sets the standoff distance (in px) between the axis labels and the title text The default value is a function of the axis tick labels, the title `font.size` and the axis `linewidth`. Note that the axis title position is always constrained within the margins, so the actual standoff distance is always less than the set or default value. By setting `standoff` and turning on `automargin`, plotly.js will push the margins to fit the axis title at given standoff distance.", - "editType": "ticks", - "min": 0, - "valType": "number" - }, - "text": { - "description": "Sets the title of this axis.", - "editType": "ticks", - "valType": "string" - } - }, - "type": { - "_noTemplating": true, - "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", - "dflt": "-", - "editType": "calc", - "valType": "enumerated", - "values": [ - "-", - "linear", - "log", - "date", - "category", - "multicategory" - ] - }, - "uirevision": { - "description": "Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`.", - "editType": "none", - "valType": "any" - }, - "unifiedhovertitle": { - "editType": "none", - "role": "object", - "text": { - "description": "Template string used for rendering the title that appear on x or y unified hover box. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value.", - "dflt": "", - "editType": "none", - "valType": "string" - } - }, - "visible": { - "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", - "editType": "plot", - "valType": "boolean" - }, - "zeroline": { - "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines.", - "editType": "ticks", - "valType": "boolean" - }, - "zerolinecolor": { - "description": "Sets the line color of the zero line.", - "dflt": "#444", - "editType": "ticks", - "valType": "color" - }, - "zerolinelayer": { - "description": "Sets the layer on which this zeroline is displayed. If *above traces*, this zeroline is displayed above all the subplot's traces If *below traces*, this zeroline is displayed below all the subplot's traces, but above the grid lines. Limitation: *zerolinelayer* currently has no effect if the *zorder* property is set on any trace.", - "dflt": "below traces", - "editType": "plot", - "valType": "enumerated", - "values": [ - "above traces", - "below traces" - ] - }, - "zerolinewidth": { - "description": "Sets the width (in px) of the zero line.", - "dflt": 1, - "editType": "ticks", - "valType": "number" - } - } - } - }, - "traces": { - "bar": { - "animatable": true, - "attributes": { - "alignmentgroup": { - "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "base": { - "arrayOk": true, - "description": "Sets where the bar base is drawn (in position axis units). In *stack* or *relative* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead.", - "dflt": null, - "editType": "calc", - "valType": "any" - }, - "basesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `base`.", - "editType": "none", - "valType": "string" - }, - "cliponaxis": { - "description": "Determines whether the text nodes are clipped about the subplot axes. To show the text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "constraintext": { - "description": "Constrain the size of text inside or outside a bar to be no larger than the bar itself.", - "dflt": "both", - "editType": "calc", - "valType": "enumerated", - "values": [ - "inside", - "outside", - "both", - "none" - ] - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "dx": { - "anim": true, - "description": "Sets the x coordinate step. See `x0` for more info.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "dy": { - "anim": true, - "description": "Sets the y coordinate step. See `y0` for more info.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "error_x": { - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", - "editType": "none", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `array`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the stroke color of the error bars.", - "editType": "style", - "valType": "color" - }, - "copy_ystyle": { - "editType": "plot", - "valType": "boolean" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", - "valType": "boolean" - }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] - }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "plot", - "min": 0, - "valType": "number" - } - }, - "error_y": { - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", - "editType": "none", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `array`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the stroke color of the error bars.", - "editType": "style", - "valType": "color" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", - "valType": "boolean" - }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] - }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "plot", - "min": 0, - "valType": "number" - } - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `value` and `label`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "anim": true, - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "insidetextanchor": { - "description": "Determines if texts are kept at center or start/end points in `textposition` *inside* mode.", - "dflt": "end", - "editType": "plot", - "valType": "enumerated", - "values": [ - "end", - "middle", - "start" - ] - }, - "insidetextfont": { - "color": { - "arrayOk": true, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `text` lying inside the bar.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "valType": "integer" + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "ticks", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "ticks", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). If *sync*, the number of ticks will sync with the overlayed axis set by `overlaying` property.", + "editType": "ticks", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array", + "sync" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "ticks", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "tickson": { + "description": "Determines where ticks and grid lines are drawn with respect to their corresponding tick labels. Only has an effect for axes of `type` *category* or *multicategory*. When set to *boundaries*, ticks and grid lines are drawn half a category to the left/bottom of labels.", + "dflt": "labels", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "labels", + "boundaries" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "ticks", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "ticks", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "ticks", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "ticks", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "ticks", + "font": { + "color": { + "editType": "ticks", + "valType": "color" + }, + "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.", + "editType": "ticks", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "ticks", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "ticks", + "valType": "string" + }, + "size": { + "editType": "ticks", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "ticks", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "standoff": { + "description": "Sets the standoff distance (in px) between the axis labels and the title text The default value is a function of the axis tick labels, the title `font.size` and the axis `linewidth`. Note that the axis title position is always constrained within the margins, so the actual standoff distance is always less than the set or default value. By setting `standoff` and turning on `automargin`, plotly.js will push the margins to fit the axis title at given standoff distance.", + "editType": "ticks", + "min": 0, + "valType": "number" + }, + "text": { + "description": "Sets the title of this axis.", + "editType": "ticks", + "valType": "string" + } + }, + "type": { + "_noTemplating": true, + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", + "dflt": "-", + "editType": "calc", + "valType": "enumerated", + "values": [ + "-", + "linear", + "log", + "date", + "category", + "multicategory" + ] + }, + "uirevision": { + "description": "Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`.", + "editType": "none", + "valType": "any" + }, + "unifiedhovertitle": { + "editType": "none", + "role": "object", + "text": { + "description": "Template string used for rendering the title that appear on x or y unified hover box. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value.", + "dflt": "", + "editType": "none", + "valType": "string" + } + }, + "visible": { + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "editType": "plot", + "valType": "boolean" + }, + "zeroline": { + "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines.", + "editType": "ticks", + "valType": "boolean" + }, + "zerolinecolor": { + "description": "Sets the line color of the zero line.", + "dflt": "#444", + "editType": "ticks", + "valType": "color" + }, + "zerolinelayer": { + "description": "Sets the layer on which this zeroline is displayed. If *above traces*, this zeroline is displayed above all the subplot's traces If *below traces*, this zeroline is displayed below all the subplot's traces, but above the grid lines. Limitation: *zerolinelayer* currently has no effect if the *zorder* property is set on any trace.", + "dflt": "below traces", + "editType": "plot", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] + }, + "zerolinewidth": { + "description": "Sets the width (in px) of the zero line.", + "dflt": 1, + "editType": "ticks", + "valType": "number" + } }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "marker": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", + "yaxis": { + "_isSubplotObj": true, + "anchor": { + "description": "If set to an opposite-letter axis id (e.g. `x2`, `y`), this axis is bound to the corresponding opposite-letter axis. If set to *free*, this axis' position is determined by `position`.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "free", + "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", + "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" + ] + }, + "automargin": { + "description": "Determines whether long tick labels automatically grow the figure margins.", + "dflt": false, + "editType": "ticks", + "extras": [ + true, + false + ], + "flags": [ + "height", + "width", + "left", + "right", + "top", + "bottom" + ], + "valType": "flaglist" + }, + "autorange": { + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided and it has a value for both the lower and upper bound, `autorange` is set to *false*. Using *min* applies autorange only to set the minimum. Using *max* applies autorange only to set the maximum. Using *min reversed* applies autorange only to set the minimum on a reversed axis. Using *max reversed* applies autorange only to set the maximum on a reversed axis. Using *reversed* applies autorange on both ends and reverses the axis direction.", + "dflt": true, + "editType": "axrange", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + true, + false, + "reversed", + "min reversed", + "max reversed", + "min", + "max" + ] + }, + "autorangeoptions": { + "clipmax": { + "description": "Clip autorange maximum if it goes beyond this value. Has no effect when `autorangeoptions.maxallowed` is provided.", + "editType": "plot", + "impliedEdits": {}, "valType": "any" - }, - { - "editType": "colorbars", + }, + "clipmin": { + "description": "Clip autorange minimum if it goes beyond this value. Has no effect when `autorangeoptions.minallowed` is provided.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "editType": "plot", + "include": { + "arrayOk": true, + "description": "Ensure this value is included in autorange.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "includesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `include`.", + "editType": "none", + "valType": "string" + }, + "maxallowed": { + "description": "Use this value exactly as autorange maximum.", + "editType": "plot", + "impliedEdits": {}, + "valType": "any" + }, + "minallowed": { + "description": "Use this value exactly as autorange minimum.", + "editType": "plot", + "impliedEdits": {}, "valType": "any" - } + }, + "role": "object" + }, + "autoshift": { + "description": "Automatically reposition the axis to avoid overlap with other axes with the same `overlaying` value. This repositioning will account for any `shift` amount applied to other axes on the same side with `autoshift` is set to true. Only has an effect if `anchor` is set to *free*.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "autotickangles": { + "description": "When `tickangle` is set to *auto*, it will be set to the first angle in this array that is large enough to prevent label overlap.", + "dflt": [ + 0, + 30, + 90 ], + "editType": "ticks", + "freeLength": true, + "items": { + "valType": "angle" + }, "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", + }, + "autotypenumbers": { + "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", + "dflt": "convert types", + "editType": "calc", + "valType": "enumerated", + "values": [ + "convert types", + "strict" + ] + }, + "calendar": { + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "categoryarray": { + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", + "editType": "calc", + "valType": "data_array" + }, + "categoryarraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", + "editType": "none", "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", + }, + "categoryorder": { + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values.", + "dflt": "trace", + "editType": "calc", + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array", + "total ascending", + "total descending", + "min ascending", + "min descending", + "max ascending", + "max descending", + "sum ascending", + "sum descending", + "mean ascending", + "mean descending", + "geometric mean ascending", + "geometric mean descending", + "median ascending", + "median descending" + ] + }, + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "ticks", + "valType": "color" + }, + "constrain": { + "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines how that happens: by increasing the *range*, or by decreasing the *domain*. Default is *domain* for axes containing image traces, *range* otherwise.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "range", + "domain" + ] + }, + "constraintoward": { + "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines which direction we push the originally specified plot area. Options are *left*, *center* (default), and *right* for x axes, and *top*, *middle* (default), and *bottom* for y axes.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "left", + "center", + "right", + "top", + "middle", + "bottom" + ] + }, + "dividercolor": { + "description": "Sets the color of the dividers Only has an effect on *multicategory* axes.", + "dflt": "#444", + "editType": "ticks", + "valType": "color" + }, + "dividerwidth": { + "description": "Sets the width (in px) of the dividers Only has an effect on *multicategory* axes.", + "dflt": 1, + "editType": "ticks", + "valType": "number" + }, + "domain": { + "description": "Sets the domain of this axis (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "ticks", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "fixedrange": { + "description": "Determines whether or not this axis is zoom-able. If true, then zoom is disabled.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "ticks", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "ticks", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "ticks", + "min": 0, + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", "dflt": "", - "editType": "colorbars", + "editType": "none", "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" + "insiderange": { + "description": "Could be used to set the desired inside range of this axis (excluding the labels) when `ticklabelposition` of the anchored axis has *inside*. Not implemented for axes with `type` *log*. This would be ignored when `range` is provided.", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "valType": "info_array" }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "ticks", + "valType": "any" }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", + "editType": "plot", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "layoutstyle", + "valType": "color" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "ticks+layoutstyle", + "min": 0, + "valType": "number" }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "matches": { + "description": "If set to another axis id (e.g. `x2`, `y`), the range of this axis will match the range of the corresponding axis in data-coordinates space. Moreover, matching axes share auto-range values, category lists and histogram auto-bins. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden. Moreover, note that matching axes must have the same `type`.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", + "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" + ] }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "maxallowed": { + "description": "Determines the maximum range of this axis.", + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "cornerradius": { - "description": "Sets the rounding of corners. May be an integer number of pixels, or a percentage of bar width (as a string ending in %). Defaults to `layout.barcornerradius`. In stack or relative barmode, the first trace to set cornerradius is used for the whole stack.", - "editType": "calc", - "valType": "any" - }, - "editType": "calc", - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "width": { - "anim": true, - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "opacity": { - "arrayOk": true, - "description": "Sets the opacity of the bars.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "pattern": { - "bgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", - "editType": "style", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the pattern within the marker.", - "editType": "style", - "fgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", - "editType": "style", - "valType": "color" - }, - "fgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", - "editType": "none", - "valType": "string" - }, - "fgopacity": { - "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "fillmode": { - "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", - "dflt": "replace", - "editType": "style", - "valType": "enumerated", - "values": [ - "replace", - "overlay" - ] - }, - "path": { - "arrayOk": true, - "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", - "editType": "style", - "valType": "string" - }, - "pathsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `path`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shape": { - "arrayOk": true, - "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", - "dflt": "", - "editType": "style", - "valType": "enumerated", - "values": [ - "", - "/", - "\\", - "x", - "-", - "|", - "+", - "." - ] - }, - "shapesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shape`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", - "dflt": 8, - "editType": "style", - "min": 0, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "solidity": { - "arrayOk": true, - "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", - "dflt": 0.3, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "soliditysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", - "editType": "none", - "valType": "string" - } - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "offset": { - "arrayOk": true, - "description": "Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead.", - "dflt": null, - "editType": "calc", - "valType": "number" - }, - "offsetgroup": { - "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "offsetsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `offset`.", - "editType": "none", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "orientation": { - "description": "Sets the orientation of the bars. With *v* (*h*), the value of the each bar spans along the vertical (horizontal).", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "v", - "h" - ] - }, - "outsidetextfont": { - "color": { - "arrayOk": true, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `text` lying outside the bar.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "selected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textangle": { - "description": "Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars.", - "dflt": "auto", - "editType": "plot", - "valType": "angle" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `text`.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textposition": { - "arrayOk": true, - "description": "Specifies the location of the `text`. *inside* positions `text` inside, next to the bar end (rotated and scaled if needed). *outside* positions `text` outside, next to the bar end (scaled if needed), unless there is another bar stacked on this one, then the text gets pushed inside. *auto* tries to position `text` inside the bar, but if the bar is too small and no bar is stacked on this one the text is moved outside. If *none*, no text appears.", - "dflt": "auto", - "editType": "calc", - "valType": "enumerated", - "values": [ - "inside", - "outside", - "auto", - "none" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", - "editType": "none", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `value` and `label`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "type": "bar", - "uid": { - "anim": true, - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "width": { - "arrayOk": true, - "description": "Sets the bar width (in position axis units).", - "dflt": null, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - }, - "x": { - "anim": true, - "description": "Sets the x coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "x0": { - "anim": true, - "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "valType": "any" - }, - "xperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "xperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "anim": true, - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "y0": { - "anim": true, - "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "yperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "valType": "any" - }, - "yperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "yperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - } - }, - "categories": [ - "bar-like", - "cartesian", - "svg", - "bar", - "oriented", - "errorBarsOK", - "showLegend", - "zoomScale" - ], - "layoutAttributes": { - "barcornerradius": { - "description": "Sets the rounding of bar corners. May be an integer number of pixels, or a percentage of bar width (as a string ending in %).", - "editType": "calc", - "valType": "any" - }, - "bargap": { - "description": "Sets the gap (in plot fraction) between bars of adjacent location coordinates.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "bargroupgap": { - "description": "Sets the gap (in plot fraction) between bars of the same location coordinate.", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "barmode": { - "description": "Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *relative*, the bars are stacked on top of one another, with negative values below the axis, positive values above With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to reduce *opacity* to see multiple bars.", - "dflt": "group", - "editType": "calc", - "valType": "enumerated", - "values": [ - "stack", - "group", - "overlay", - "relative" - ] - }, - "barnorm": { - "description": "Sets the normalization for bar traces on the graph. With *fraction*, the value of each bar is divided by the sum of all values at that location coordinate. *percent* is the same but multiplied by 100 to show percentages.", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "", - "fraction", - "percent" - ] - } - }, - "meta": { - "description": "The data visualized by the span of the bars is set in `y` if `orientation` is set to *v* (the default) and the labels are set in `x`. By setting `orientation` to *h*, the roles are interchanged." - }, - "type": "bar" - }, - "barpolar": { - "animatable": false, - "attributes": { - "base": { - "arrayOk": true, - "description": "Sets where the bar base is drawn (in radial axis units). In *stack* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead.", - "dflt": null, - "editType": "calc", - "valType": "any" - }, - "basesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `base`.", - "editType": "none", - "valType": "string" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "dr": { - "description": "Sets the r coordinate step.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "dtheta": { - "description": "Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates.", - "editType": "calc", - "valType": "number" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "r", - "theta", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "marker": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "opacity": { - "arrayOk": true, - "description": "Sets the opacity of the bars.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "pattern": { - "bgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", - "editType": "style", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the pattern within the marker.", - "editType": "style", - "fgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", - "editType": "style", - "valType": "color" - }, - "fgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", - "editType": "none", - "valType": "string" - }, - "fgopacity": { - "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "fillmode": { - "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", - "dflt": "replace", - "editType": "style", - "valType": "enumerated", - "values": [ - "replace", - "overlay" - ] - }, - "path": { - "arrayOk": true, - "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", - "editType": "style", - "valType": "string" - }, - "pathsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `path`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shape": { - "arrayOk": true, - "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", - "dflt": "", - "editType": "style", - "valType": "enumerated", - "values": [ - "", - "/", - "\\", - "x", - "-", - "|", - "+", - "." - ] - }, - "shapesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shape`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", - "dflt": 8, - "editType": "style", - "min": 0, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "solidity": { - "arrayOk": true, - "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", - "dflt": 0.3, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "soliditysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", - "editType": "none", - "valType": "string" - } - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "offset": { - "arrayOk": true, - "description": "Shifts the angular position where the bar is drawn (in *thetatunit* units).", - "dflt": null, - "editType": "calc", - "valType": "number" - }, - "offsetsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `offset`.", - "editType": "none", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "r": { - "description": "Sets the radial coordinates", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "r0": { - "description": "Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "rsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `r`.", - "editType": "none", - "valType": "string" - }, - "selected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "subplot": { - "description": "Sets a reference between this trace's data coordinates and a polar subplot. If *polar* (the default value), the data refer to `layout.polar`. If *polar2*, the data refer to `layout.polar2`, and so on.", - "dflt": "polar", - "editType": "calc", - "valType": "subplotid" - }, - "text": { - "arrayOk": true, - "description": "Sets hover text elements associated with each bar. If a single string, the same string appears over all bars. If an array of string, the items are mapped in order to the this trace's coordinates.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "theta": { - "description": "Sets the angular coordinates", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "theta0": { - "description": "Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "thetasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `theta`.", - "editType": "none", - "valType": "string" - }, - "thetaunit": { - "description": "Sets the unit of input *theta* values. Has an effect only when on *linear* angular axes.", - "dflt": "degrees", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "radians", - "degrees", - "gradians" - ] - }, - "type": "barpolar", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "width": { - "arrayOk": true, - "description": "Sets the bar angular width (in *thetaunit* units).", - "dflt": null, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "polar", - "bar", - "showLegend" - ], - "layoutAttributes": { - "bargap": { - "description": "Sets the gap between bars of adjacent location coordinates. Values are unitless, they represent fractions of the minimum difference in bar positions in the data.", - "dflt": 0.1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "barmode": { - "description": "Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *overlay*, the bars are plotted over one another, you might need to reduce *opacity* to see multiple bars.", - "dflt": "stack", - "editType": "calc", - "valType": "enumerated", - "values": [ - "stack", - "overlay" - ] - } - }, - "meta": { - "description": "The data visualized by the radial span of the bars is set in `r`", - "hrName": "bar_polar" - }, - "type": "barpolar" - }, - "box": { - "animatable": false, - "attributes": { - "alignmentgroup": { - "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "boxmean": { - "description": "If *true*, the mean of the box(es)' underlying distribution is drawn as a dashed line inside the box(es). If *sd* the standard deviation is also drawn. Defaults to *true* when `mean` is set. Defaults to *sd* when `sd` is set Otherwise defaults to *false*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - "sd", - false - ] - }, - "boxpoints": { - "description": "If *outliers*, only the sample points lying outside the whiskers are shown If *suspectedoutliers*, the outlier points are shown and points either less than 4*Q1-3*Q3 or greater than 4*Q3-3*Q1 are highlighted (see `outliercolor`) If *all*, all sample points are shown If *false*, only the box(es) are shown with no sample points Defaults to *suspectedoutliers* when `marker.outliercolor` or `marker.line.outliercolor` is set. Defaults to *all* under the q1/median/q3 signature. Otherwise defaults to *outliers*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "outliers", - "suspectedoutliers", - false - ] - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "dx": { - "description": "Sets the x coordinate step for multi-box traces set using q1/median/q3.", - "editType": "calc", - "valType": "number" - }, - "dy": { - "description": "Sets the y coordinate step for multi-box traces set using q1/median/q3.", - "editType": "calc", - "valType": "number" - }, - "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "style", - "valType": "color" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hoveron": { - "description": "Do the hover effects highlight individual boxes or sample points or both?", - "dflt": "boxes+points", - "editType": "style", - "flags": [ - "boxes", - "points" - ], - "valType": "flaglist" - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "jitter": { - "description": "Sets the amount of jitter in the sample points drawn. If *0*, the sample points align along the distribution axis. If *1*, the sample points are drawn in a random jitter of width equal to the width of the box(es).", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "color": { - "description": "Sets the color of line bounding the box(es).", - "editType": "style", - "valType": "color" - }, - "editType": "plot", - "role": "object", - "width": { - "description": "Sets the width (in px) of line bounding the box(es).", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "lowerfence": { - "description": "Sets the lower fence values. There should be as many items as the number of boxes desired. This attribute has effect only under the q1/median/q3 signature. If `lowerfence` is not provided but a sample (in `y` or `x`) is set, we compute the lower as the last sample point below 1.5 times the IQR.", - "editType": "calc", - "valType": "data_array" - }, - "lowerfencesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lowerfence`.", - "editType": "none", - "valType": "string" - }, - "marker": { - "angle": { - "arrayOk": false, - "description": "Sets the marker angle in respect to `angleref`.", - "dflt": 0, - "editType": "calc", - "valType": "angle" - }, - "color": { - "arrayOk": false, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "editType": "plot", - "line": { - "color": { - "arrayOk": false, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "dflt": "#444", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "outliercolor": { - "description": "Sets the border line color of the outlier sample points. Defaults to marker.color", - "editType": "style", - "valType": "color" - }, - "outlierwidth": { - "description": "Sets the border line width (in px) of the outlier sample points.", - "dflt": 1, - "editType": "style", - "min": 0, - "valType": "number" - }, - "role": "object", - "width": { - "arrayOk": false, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "opacity": { - "arrayOk": false, - "description": "Sets the marker opacity.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "outliercolor": { - "description": "Sets the color of the outlier sample points.", - "dflt": "rgba(0, 0, 0, 0)", - "editType": "style", - "valType": "color" - }, - "role": "object", - "size": { - "arrayOk": false, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "symbol": { - "arrayOk": false, - "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", - "dflt": "circle", - "editType": "plot", - "valType": "enumerated", - "values": [ - 0, - "0", - "circle", - 100, - "100", - "circle-open", - 200, - "200", - "circle-dot", - 300, - "300", - "circle-open-dot", - 1, - "1", - "square", - 101, - "101", - "square-open", - 201, - "201", - "square-dot", - 301, - "301", - "square-open-dot", - 2, - "2", - "diamond", - 102, - "102", - "diamond-open", - 202, - "202", - "diamond-dot", - 302, - "302", - "diamond-open-dot", - 3, - "3", - "cross", - 103, - "103", - "cross-open", - 203, - "203", - "cross-dot", - 303, - "303", - "cross-open-dot", - 4, - "4", - "x", - 104, - "104", - "x-open", - 204, - "204", - "x-dot", - 304, - "304", - "x-open-dot", - 5, - "5", - "triangle-up", - 105, - "105", - "triangle-up-open", - 205, - "205", - "triangle-up-dot", - 305, - "305", - "triangle-up-open-dot", - 6, - "6", - "triangle-down", - 106, - "106", - "triangle-down-open", - 206, - "206", - "triangle-down-dot", - 306, - "306", - "triangle-down-open-dot", - 7, - "7", - "triangle-left", - 107, - "107", - "triangle-left-open", - 207, - "207", - "triangle-left-dot", - 307, - "307", - "triangle-left-open-dot", - 8, - "8", - "triangle-right", - 108, - "108", - "triangle-right-open", - 208, - "208", - "triangle-right-dot", - 308, - "308", - "triangle-right-open-dot", - 9, - "9", - "triangle-ne", - 109, - "109", - "triangle-ne-open", - 209, - "209", - "triangle-ne-dot", - 309, - "309", - "triangle-ne-open-dot", - 10, - "10", - "triangle-se", - 110, - "110", - "triangle-se-open", - 210, - "210", - "triangle-se-dot", - 310, - "310", - "triangle-se-open-dot", - 11, - "11", - "triangle-sw", - 111, - "111", - "triangle-sw-open", - 211, - "211", - "triangle-sw-dot", - 311, - "311", - "triangle-sw-open-dot", - 12, - "12", - "triangle-nw", - 112, - "112", - "triangle-nw-open", - 212, - "212", - "triangle-nw-dot", - 312, - "312", - "triangle-nw-open-dot", - 13, - "13", - "pentagon", - 113, - "113", - "pentagon-open", - 213, - "213", - "pentagon-dot", - 313, - "313", - "pentagon-open-dot", - 14, - "14", - "hexagon", - 114, - "114", - "hexagon-open", - 214, - "214", - "hexagon-dot", - 314, - "314", - "hexagon-open-dot", - 15, - "15", - "hexagon2", - 115, - "115", - "hexagon2-open", - 215, - "215", - "hexagon2-dot", - 315, - "315", - "hexagon2-open-dot", - 16, - "16", - "octagon", - 116, - "116", - "octagon-open", - 216, - "216", - "octagon-dot", - 316, - "316", - "octagon-open-dot", - 17, - "17", - "star", - 117, - "117", - "star-open", - 217, - "217", - "star-dot", - 317, - "317", - "star-open-dot", - 18, - "18", - "hexagram", - 118, - "118", - "hexagram-open", - 218, - "218", - "hexagram-dot", - 318, - "318", - "hexagram-open-dot", - 19, - "19", - "star-triangle-up", - 119, - "119", - "star-triangle-up-open", - 219, - "219", - "star-triangle-up-dot", - 319, - "319", - "star-triangle-up-open-dot", - 20, - "20", - "star-triangle-down", - 120, - "120", - "star-triangle-down-open", - 220, - "220", - "star-triangle-down-dot", - 320, - "320", - "star-triangle-down-open-dot", - 21, - "21", - "star-square", - 121, - "121", - "star-square-open", - 221, - "221", - "star-square-dot", - 321, - "321", - "star-square-open-dot", - 22, - "22", - "star-diamond", - 122, - "122", - "star-diamond-open", - 222, - "222", - "star-diamond-dot", - 322, - "322", - "star-diamond-open-dot", - 23, - "23", - "diamond-tall", - 123, - "123", - "diamond-tall-open", - 223, - "223", - "diamond-tall-dot", - 323, - "323", - "diamond-tall-open-dot", - 24, - "24", - "diamond-wide", - 124, - "124", - "diamond-wide-open", - 224, - "224", - "diamond-wide-dot", - 324, - "324", - "diamond-wide-open-dot", - 25, - "25", - "hourglass", - 125, - "125", - "hourglass-open", - 26, - "26", - "bowtie", - 126, - "126", - "bowtie-open", - 27, - "27", - "circle-cross", - 127, - "127", - "circle-cross-open", - 28, - "28", - "circle-x", - 128, - "128", - "circle-x-open", - 29, - "29", - "square-cross", - 129, - "129", - "square-cross-open", - 30, - "30", - "square-x", - 130, - "130", - "square-x-open", - 31, - "31", - "diamond-cross", - 131, - "131", - "diamond-cross-open", - 32, - "32", - "diamond-x", - 132, - "132", - "diamond-x-open", - 33, - "33", - "cross-thin", - 133, - "133", - "cross-thin-open", - 34, - "34", - "x-thin", - 134, - "134", - "x-thin-open", - 35, - "35", - "asterisk", - 135, - "135", - "asterisk-open", - 36, - "36", - "hash", - 136, - "136", - "hash-open", - 236, - "236", - "hash-dot", - 336, - "336", - "hash-open-dot", - 37, - "37", - "y-up", - 137, - "137", - "y-up-open", - 38, - "38", - "y-down", - 138, - "138", - "y-down-open", - 39, - "39", - "y-left", - 139, - "139", - "y-left-open", - 40, - "40", - "y-right", - 140, - "140", - "y-right-open", - 41, - "41", - "line-ew", - 141, - "141", - "line-ew-open", - 42, - "42", - "line-ns", - 142, - "142", - "line-ns-open", - 43, - "43", - "line-ne", - 143, - "143", - "line-ne-open", - 44, - "44", - "line-nw", - 144, - "144", - "line-nw-open", - 45, - "45", - "arrow-up", - 145, - "145", - "arrow-up-open", - 46, - "46", - "arrow-down", - 146, - "146", - "arrow-down-open", - 47, - "47", - "arrow-left", - 147, - "147", - "arrow-left-open", - 48, - "48", - "arrow-right", - 148, - "148", - "arrow-right-open", - 49, - "49", - "arrow-bar-up", - 149, - "149", - "arrow-bar-up-open", - 50, - "50", - "arrow-bar-down", - 150, - "150", - "arrow-bar-down-open", - 51, - "51", - "arrow-bar-left", - 151, - "151", - "arrow-bar-left-open", - 52, - "52", - "arrow-bar-right", - 152, - "152", - "arrow-bar-right-open", - 53, - "53", - "arrow", - 153, - "153", - "arrow-open", - 54, - "54", - "arrow-wide", - 154, - "154", - "arrow-wide-open" - ] - } - }, - "mean": { - "description": "Sets the mean values. There should be as many items as the number of boxes desired. This attribute has effect only under the q1/median/q3 signature. If `mean` is not provided but a sample (in `y` or `x`) is set, we compute the mean for each box using the sample values.", - "editType": "calc", - "valType": "data_array" - }, - "meansrc": { - "description": "Sets the source reference on Chart Studio Cloud for `mean`.", - "editType": "none", - "valType": "string" - }, - "median": { - "description": "Sets the median values. There should be as many items as the number of boxes desired.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "mediansrc": { - "description": "Sets the source reference on Chart Studio Cloud for `median`.", - "editType": "none", - "valType": "string" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover. For box traces, the name will also be used for the position coordinate, if `x` and `x0` (`y` and `y0` if horizontal) are missing and the position axis is categorical", - "editType": "calc+clearAxisTypes", - "valType": "string" - }, - "notched": { - "description": "Determines whether or not notches are drawn. Notches displays a confidence interval around the median. We compute the confidence interval as median +/- 1.57 * IQR / sqrt(N), where IQR is the interquartile range and N is the sample size. If two boxes' notches do not overlap there is 95% confidence their medians differ. See https://sites.google.com/site/davidsstatistics/home/notched-box-plots for more info. Defaults to *false* unless `notchwidth` or `notchspan` is set.", - "editType": "calc", - "valType": "boolean" - }, - "notchspan": { - "description": "Sets the notch span from the boxes' `median` values. There should be as many items as the number of boxes desired. This attribute has effect only under the q1/median/q3 signature. If `notchspan` is not provided but a sample (in `y` or `x`) is set, we compute it as 1.57 * IQR / sqrt(N), where N is the sample size.", - "editType": "calc", - "valType": "data_array" - }, - "notchspansrc": { - "description": "Sets the source reference on Chart Studio Cloud for `notchspan`.", - "editType": "none", - "valType": "string" - }, - "notchwidth": { - "description": "Sets the width of the notches relative to the box width. For example, with 0, the notches are as wide as the box(es).", - "dflt": 0.25, - "editType": "calc", - "max": 0.5, - "min": 0, - "valType": "number" - }, - "offsetgroup": { - "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "orientation": { - "description": "Sets the orientation of the box(es). If *v* (*h*), the distribution is visualized along the vertical (horizontal).", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "v", - "h" - ] - }, - "pointpos": { - "description": "Sets the position of the sample points in relation to the box(es). If *0*, the sample points are places over the center of the box(es). Positive (negative) values correspond to positions to the right (left) for vertical boxes and above (below) for horizontal boxes", - "editType": "calc", - "max": 2, - "min": -2, - "valType": "number" - }, - "q1": { - "description": "Sets the Quartile 1 values. There should be as many items as the number of boxes desired.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "q1src": { - "description": "Sets the source reference on Chart Studio Cloud for `q1`.", - "editType": "none", - "valType": "string" - }, - "q3": { - "description": "Sets the Quartile 3 values. There should be as many items as the number of boxes desired.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "q3src": { - "description": "Sets the source reference on Chart Studio Cloud for `q3`.", - "editType": "none", - "valType": "string" - }, - "quartilemethod": { - "description": "Sets the method used to compute the sample's Q1 and Q3 quartiles. The *linear* method uses the 25th percentile for Q1 and 75th percentile for Q3 as computed using method #10 (listed on http://jse.amstat.org/v14n3/langford.html). The *exclusive* method uses the median to divide the ordered dataset into two halves if the sample is odd, it does not include the median in either half - Q1 is then the median of the lower half and Q3 the median of the upper half. The *inclusive* method also uses the median to divide the ordered dataset into two halves but if the sample is odd, it includes the median in both halves - Q1 is then the median of the lower half and Q3 the median of the upper half.", - "dflt": "linear", - "editType": "calc", - "valType": "enumerated", - "values": [ - "linear", - "exclusive", - "inclusive" - ] - }, - "sd": { - "description": "Sets the standard deviation values. There should be as many items as the number of boxes desired. This attribute has effect only under the q1/median/q3 signature. If `sd` is not provided but a sample (in `y` or `x`) is set, we compute the standard deviation for each box using the sample values.", - "editType": "calc", - "valType": "data_array" - }, - "sdmultiple": { - "description": "Scales the box size when sizemode=sd Allowing boxes to be drawn across any stddev range For example 1-stddev, 3-stddev, 5-stddev", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sdsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `sd`.", - "editType": "none", - "valType": "string" - }, - "selected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of selected points.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "showwhiskers": { - "description": "Determines whether or not whiskers are visible. Defaults to true for `sizemode` *quartiles*, false for *sd*.", - "editType": "calc", - "valType": "boolean" - }, - "sizemode": { - "description": "Sets the upper and lower bound for the boxes quartiles means box is drawn between Q1 and Q3 SD means the box is drawn between Mean +- Standard Deviation Argument sdmultiple (default 1) to scale the box size So it could be drawn 1-stddev, 3-stddev etc", - "dflt": "quartiles", - "editType": "calc", - "valType": "enumerated", - "values": [ - "quartiles", - "sd" - ] - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets the text elements associated with each sample value. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "box", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of unselected points, applied only when a selection exists.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "upperfence": { - "description": "Sets the upper fence values. There should be as many items as the number of boxes desired. This attribute has effect only under the q1/median/q3 signature. If `upperfence` is not provided but a sample (in `y` or `x`) is set, we compute the upper as the last sample point above 1.5 times the IQR.", - "editType": "calc", - "valType": "data_array" - }, - "upperfencesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `upperfence`.", - "editType": "none", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "whiskerwidth": { - "description": "Sets the width of the whiskers relative to the box width. For example, with 1, the whiskers are as wide as the box(es).", - "dflt": 0.5, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "width": { - "description": "Sets the width of the box in data coordinate If *0* (default value) the width is automatically selected based on the positions of other box traces in the same subplot.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "x": { - "description": "Sets the x sample data or coordinates. See overview for more info.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "x0": { - "description": "Sets the x coordinate for single-box traces or the starting coordinate for multi-box traces set using q1/median/q3. See overview for more info.", - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "valType": "any" - }, - "xperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "xperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the y sample data or coordinates. See overview for more info.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "y0": { - "description": "Sets the y coordinate for single-box traces or the starting coordinate for multi-box traces set using q1/median/q3. See overview for more info.", - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "yperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "valType": "any" - }, - "yperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "yperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - } - }, - "categories": [ - "cartesian", - "svg", - "symbols", - "oriented", - "box-violin", - "showLegend", - "boxLayout", - "zoomScale" - ], - "layoutAttributes": { - "boxgap": { - "description": "Sets the gap (in plot fraction) between boxes of adjacent location coordinates. Has no effect on traces that have *width* set.", - "dflt": 0.3, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "boxgroupgap": { - "description": "Sets the gap (in plot fraction) between boxes of the same location coordinate. Has no effect on traces that have *width* set.", - "dflt": 0.3, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "boxmode": { - "description": "Determines how boxes at the same location coordinate are displayed on the graph. If *group*, the boxes are plotted next to one another centered around the shared location. If *overlay*, the boxes are plotted over one another, you might need to set *opacity* to see them multiple boxes. Has no effect on traces that have *width* set.", - "dflt": "overlay", - "editType": "calc", - "valType": "enumerated", - "values": [ - "group", - "overlay" - ] - } - }, - "meta": { - "description": "Each box spans from quartile 1 (Q1) to quartile 3 (Q3). The second quartile (Q2, i.e. the median) is marked by a line inside the box. The fences grow outward from the boxes' edges, by default they span +/- 1.5 times the interquartile range (IQR: Q3-Q1), The sample mean and standard deviation as well as notches and the sample, outlier and suspected outliers points can be optionally added to the box plot. The values and positions corresponding to each boxes can be input using two signatures. The first signature expects users to supply the sample values in the `y` data array for vertical boxes (`x` for horizontal boxes). By supplying an `x` (`y`) array, one box per distinct `x` (`y`) value is drawn If no `x` (`y`) {array} is provided, a single box is drawn. In this case, the box is positioned with the trace `name` or with `x0` (`y0`) if provided. The second signature expects users to supply the boxes corresponding Q1, median and Q3 statistics in the `q1`, `median` and `q3` data arrays respectively. Other box features relying on statistics namely `lowerfence`, `upperfence`, `notchspan` can be set directly by the users. To have plotly compute them or to show sample points besides the boxes, users can set the `y` data array for vertical boxes (`x` for horizontal boxes) to a 2D array with the outer length corresponding to the number of boxes in the traces and the inner length corresponding the sample size." - }, - "type": "box" - }, - "candlestick": { - "animatable": false, - "attributes": { - "close": { - "description": "Sets the close values.", - "editType": "calc", - "valType": "data_array" - }, - "closesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `close`.", - "editType": "none", - "valType": "string" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "decreasing": { - "editType": "style", - "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "style", - "valType": "color" - }, - "line": { - "color": { - "description": "Sets the color of line bounding the box(es).", - "dflt": "#FF4136", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object", - "width": { - "description": "Sets the width (in px) of line bounding the box(es).", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "high": { - "description": "Sets the high values.", - "editType": "calc", - "valType": "data_array" - }, - "highsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `high`.", - "editType": "none", - "valType": "string" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - }, - "split": { - "description": "Show hover information (open, close, high, low) in separate labels, rather than a single unified label. Default: *false*. When set to *true*, `hovertemplate` is ignored.", - "dflt": false, - "editType": "style", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `open`, `high`, `low` and `close`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "increasing": { - "editType": "style", - "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "style", - "valType": "color" - }, - "line": { - "color": { - "description": "Sets the color of line bounding the box(es).", - "dflt": "#3D9970", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object", - "width": { - "description": "Sets the width (in px) of line bounding the box(es).", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "editType": "style", - "role": "object", - "width": { - "description": "Sets the width (in px) of line bounding the box(es). Note that this style setting can also be set per direction via `increasing.line.width` and `decreasing.line.width`.", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "low": { - "description": "Sets the low values.", - "editType": "calc", - "valType": "data_array" - }, - "lowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `low`.", - "editType": "none", - "valType": "string" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "open": { - "description": "Sets the open values.", - "editType": "calc", - "valType": "data_array" - }, - "opensrc": { - "description": "Sets the source reference on Chart Studio Cloud for `open`.", - "editType": "none", - "valType": "string" - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets hover text elements associated with each sample point. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to this trace's sample points.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "candlestick", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "whiskerwidth": { - "description": "Sets the width of the whiskers relative to the box width. For example, with 1, the whiskers are as wide as the box(es).", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "x": { - "description": "Sets the x coordinates. If absent, linear coordinate will be generated.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "valType": "any" - }, - "xperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "xperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - } - }, - "categories": [ - "cartesian", - "svg", - "showLegend", - "candlestick", - "boxLayout" - ], - "layoutAttributes": { - "boxgap": { - "description": "Sets the gap (in plot fraction) between boxes of adjacent location coordinates. Has no effect on traces that have *width* set.", - "dflt": 0.3, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "boxgroupgap": { - "description": "Sets the gap (in plot fraction) between boxes of the same location coordinate. Has no effect on traces that have *width* set.", - "dflt": 0.3, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "boxmode": { - "description": "Determines how boxes at the same location coordinate are displayed on the graph. If *group*, the boxes are plotted next to one another centered around the shared location. If *overlay*, the boxes are plotted over one another, you might need to set *opacity* to see them multiple boxes. Has no effect on traces that have *width* set.", - "dflt": "overlay", - "editType": "calc", - "valType": "enumerated", - "values": [ - "group", - "overlay" - ] - } - }, - "meta": { - "description": "The candlestick is a style of financial chart describing open, high, low and close for a given `x` coordinate (most likely time). The boxes represent the spread between the `open` and `close` values and the lines represent the spread between the `low` and `high` values Sample points where the close value is higher (lower) then the open value are called increasing (decreasing). By default, increasing candles are drawn in green whereas decreasing are drawn in red." - }, - "type": "candlestick" - }, - "carpet": { - "animatable": true, - "attributes": { - "a": { - "description": "An array containing values of the first parameter value", - "editType": "calc", - "valType": "data_array" - }, - "a0": { - "description": "Alternate to `a`. Builds a linear space of a coordinates. Use with `da` where `a0` is the starting coordinate and `da` the step.", - "dflt": 0, - "editType": "calc", - "valType": "number" - }, - "aaxis": { - "arraydtick": { - "description": "The stride between grid lines along the axis", - "dflt": 1, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "arraytick0": { - "description": "The starting index of grid lines along the axis", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "autorange": { - "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*.", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "reversed" - ] - }, - "autotypenumbers": { - "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", - "dflt": "convert types", - "editType": "calc", - "valType": "enumerated", - "values": [ - "convert types", - "strict" - ] - }, - "categoryarray": { - "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", - "editType": "calc", - "valType": "data_array" - }, - "categoryarraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", - "editType": "none", - "valType": "string" - }, - "categoryorder": { - "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`.", - "dflt": "trace", - "editType": "calc", - "valType": "enumerated", - "values": [ - "trace", - "category ascending", - "category descending", - "array" - ] - }, - "cheatertype": { - "dflt": "value", - "editType": "calc", - "valType": "enumerated", - "values": [ - "index", - "value" - ] - }, - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "editType": "calc", - "valType": "color" - }, - "dtick": { - "description": "The stride between grid lines along the axis", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "editType": "calc", - "endline": { - "description": "Determines whether or not a line is drawn at along the final value of this axis. If *true*, the end line is drawn on top of the grid lines.", - "editType": "calc", - "valType": "boolean" - }, - "endlinecolor": { - "description": "Sets the line color of the end line.", - "editType": "calc", - "valType": "color" - }, - "endlinewidth": { - "description": "Sets the width (in px) of the end line.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", - "dflt": "B", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "fixedrange": { - "description": "Determines whether or not this axis is zoom-able. If true, then zoom is disabled.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "gridcolor": { - "description": "Sets the axis line color.", - "editType": "calc", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "calc", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "calc", - "valType": "any" - }, - "labelpadding": { - "description": "Extra padding between label and the axis", - "dflt": 10, - "editType": "calc", - "valType": "integer" - }, - "labelprefix": { - "description": "Sets a axis label prefix.", - "editType": "calc", - "valType": "string" - }, - "labelsuffix": { - "description": "Sets a axis label suffix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number", - "dflt": 3, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "minorgridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "calc", - "valType": "color" - }, - "minorgridcount": { - "description": "Sets the number of minor grid ticks per major grid tick", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "minorgriddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "calc", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "minorgridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "range": { - "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "any" - }, - { - "editType": "calc", - "valType": "any" - } - ], - "valType": "info_array" - }, - "rangemode": { - "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "tozero", - "nonnegative" - ] - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether axis labels are drawn on the low side, the high side, both, or neither side of the axis.", - "dflt": "start", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "end", - "both", - "none" - ] - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "smoothing": { - "dflt": 1, - "editType": "calc", - "max": 1.3, - "min": 0, - "valType": "number" - }, - "startline": { - "description": "Determines whether or not a line is drawn at along the starting value of this axis. If *true*, the start line is drawn on top of the grid lines.", - "editType": "calc", - "valType": "boolean" - }, - "startlinecolor": { - "description": "Sets the line color of the start line.", - "editType": "calc", - "valType": "color" - }, - "startlinewidth": { - "description": "Sets the width (in px) of the start line.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "tick0": { - "description": "The starting index of grid lines along the axis", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "calc", - "valType": "angle" - }, - "tickfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "any" - }, - { - "editType": "calc", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "calc", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "calc", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "calc", - "valType": "string" - } - } - }, - "role": "object" - }, - "tickmode": { - "dflt": "array", - "editType": "calc", - "valType": "enumerated", - "values": [ - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "calc", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "calc", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "title": { - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "offset": { - "description": "An additional amount by which to offset the title from the tick labels, given in pixels.", - "dflt": 10, - "editType": "calc", - "valType": "number" - }, - "role": "object", - "text": { - "description": "Sets the title of this axis.", - "dflt": "", - "editType": "calc", - "valType": "string" - } - }, - "type": { - "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", - "dflt": "-", - "editType": "calc", - "valType": "enumerated", - "values": [ - "-", - "linear", - "date", - "category" - ] - } - }, - "asrc": { - "description": "Sets the source reference on Chart Studio Cloud for `a`.", - "editType": "none", - "valType": "string" - }, - "b": { - "description": "A two dimensional array of y coordinates at each carpet point.", - "editType": "calc", - "valType": "data_array" - }, - "b0": { - "description": "Alternate to `b`. Builds a linear space of a coordinates. Use with `db` where `b0` is the starting coordinate and `db` the step.", - "dflt": 0, - "editType": "calc", - "valType": "number" - }, - "baxis": { - "arraydtick": { - "description": "The stride between grid lines along the axis", - "dflt": 1, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "arraytick0": { - "description": "The starting index of grid lines along the axis", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "autorange": { - "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*.", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "reversed" - ] - }, - "autotypenumbers": { - "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", - "dflt": "convert types", - "editType": "calc", - "valType": "enumerated", - "values": [ - "convert types", - "strict" - ] - }, - "categoryarray": { - "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", - "editType": "calc", - "valType": "data_array" - }, - "categoryarraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", - "editType": "none", - "valType": "string" - }, - "categoryorder": { - "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`.", - "dflt": "trace", - "editType": "calc", - "valType": "enumerated", - "values": [ - "trace", - "category ascending", - "category descending", - "array" - ] - }, - "cheatertype": { - "dflt": "value", - "editType": "calc", - "valType": "enumerated", - "values": [ - "index", - "value" - ] - }, - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "editType": "calc", - "valType": "color" - }, - "dtick": { - "description": "The stride between grid lines along the axis", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "editType": "calc", - "endline": { - "description": "Determines whether or not a line is drawn at along the final value of this axis. If *true*, the end line is drawn on top of the grid lines.", - "editType": "calc", - "valType": "boolean" - }, - "endlinecolor": { - "description": "Sets the line color of the end line.", - "editType": "calc", - "valType": "color" - }, - "endlinewidth": { - "description": "Sets the width (in px) of the end line.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", - "dflt": "B", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "fixedrange": { - "description": "Determines whether or not this axis is zoom-able. If true, then zoom is disabled.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "gridcolor": { - "description": "Sets the axis line color.", - "editType": "calc", - "valType": "color" - }, - "griddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "calc", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "gridwidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "calc", - "valType": "any" - }, - "labelpadding": { - "description": "Extra padding between label and the axis", - "dflt": 10, - "editType": "calc", - "valType": "integer" - }, - "labelprefix": { - "description": "Sets a axis label prefix.", - "editType": "calc", - "valType": "string" - }, - "labelsuffix": { - "description": "Sets a axis label suffix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number", - "dflt": 3, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "minorgridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "calc", - "valType": "color" - }, - "minorgridcount": { - "description": "Sets the number of minor grid ticks per major grid tick", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "minorgriddash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "calc", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "minorgridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "range": { - "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "any" - }, - { - "editType": "calc", - "valType": "any" - } - ], - "valType": "info_array" - }, - "rangemode": { - "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "tozero", - "nonnegative" - ] - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether axis labels are drawn on the low side, the high side, both, or neither side of the axis.", - "dflt": "start", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "end", - "both", - "none" - ] - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "smoothing": { - "dflt": 1, - "editType": "calc", - "max": 1.3, - "min": 0, - "valType": "number" - }, - "startline": { - "description": "Determines whether or not a line is drawn at along the starting value of this axis. If *true*, the start line is drawn on top of the grid lines.", - "editType": "calc", - "valType": "boolean" - }, - "startlinecolor": { - "description": "Sets the line color of the start line.", - "editType": "calc", - "valType": "color" - }, - "startlinewidth": { - "description": "Sets the width (in px) of the start line.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "tick0": { - "description": "The starting index of grid lines along the axis", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "calc", - "valType": "angle" - }, - "tickfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "any" - }, - { - "editType": "calc", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "calc", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "calc", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "calc", - "valType": "string" - } - } - }, - "role": "object" - }, - "tickmode": { - "dflt": "array", - "editType": "calc", - "valType": "enumerated", - "values": [ - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "calc", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "calc", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "title": { - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "offset": { - "description": "An additional amount by which to offset the title from the tick labels, given in pixels.", - "dflt": 10, - "editType": "calc", - "valType": "number" - }, - "role": "object", - "text": { - "description": "Sets the title of this axis.", - "dflt": "", - "editType": "calc", - "valType": "string" - } - }, - "type": { - "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", - "dflt": "-", - "editType": "calc", - "valType": "enumerated", - "values": [ - "-", - "linear", - "date", - "category" - ] - } - }, - "bsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `b`.", - "editType": "none", - "valType": "string" - }, - "carpet": { - "description": "An identifier for this carpet, so that `scattercarpet` and `contourcarpet` traces can specify a carpet plot on which they lie", - "editType": "calc", - "valType": "string" - }, - "cheaterslope": { - "description": "The shift applied to each successive row of data in creating a cheater plot. Only used if `x` is been omitted.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "da": { - "description": "Sets the a coordinate step. See `a0` for more info.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "db": { - "description": "Sets the b coordinate step. See `b0` for more info.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "font": { - "color": { - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "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.", - "dflt": "\"Open Sans\", verdana, arial, sans-serif", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "dflt": 12, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "ids": { - "anim": true, - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "type": "carpet", - "uid": { - "anim": true, - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "A two dimensional array of x coordinates at each carpet point. If omitted, the plot is a cheater plot and the xaxis is hidden by default.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "A two dimensional array of y coordinates at each carpet point.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - } - }, - "categories": [ - "cartesian", - "svg", - "carpet", - "carpetAxis", - "notLegendIsolatable", - "noMultiCategory", - "noHover", - "noSortingByValue" - ], - "meta": { - "description": "The data describing carpet axis layout is set in `y` and (optionally) also `x`. If only `y` is present, `x` the plot is interpreted as a cheater plot and is filled in using the `y` values. `x` and `y` may either be 2D arrays matching with each dimension matching that of `a` and `b`, or they may be 1D arrays with total length equal to that of `a` and `b`." - }, - "type": "carpet" - }, - "choropleth": { - "animatable": false, - "attributes": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "featureidkey": { - "description": "Sets the key in GeoJSON features which is used as id to match the items included in the `locations` array. Only has an effect when `geojson` is set. Support nested property, for example *properties.name*.", - "dflt": "id", - "editType": "calc", - "valType": "string" - }, - "geo": { - "description": "Sets a reference between this trace's geospatial coordinates and a geographic map. If *geo* (the default value), the geospatial coordinates refer to `layout.geo`. If *geo2*, the geospatial coordinates refer to `layout.geo2`, and so on.", - "dflt": "geo", - "editType": "calc", - "valType": "subplotid" - }, - "geojson": { - "description": "Sets optional GeoJSON data associated with this trace. If not given, the features on the base map are used. It can be set as a valid GeoJSON object or as a URL string. Note that we only accept GeoJSONs of type *FeatureCollection* or *Feature* with geometries of type *Polygon* or *MultiPolygon*.", - "editType": "calc", - "valType": "any" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "location", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "locationmode": { - "description": "The library used by the *country names* `locationmode` option is changing in an upcoming version. Country names in existing plots may not work in the new version. Determines the set of locations used to match entries in `locations` to regions on the map. Values *ISO-3*, *USA-states*, *country names* correspond to features on the base map and value *geojson-id* corresponds to features from a custom GeoJSON linked to the `geojson` attribute.", - "dflt": "ISO-3", - "editType": "calc", - "valType": "enumerated", - "values": [ - "ISO-3", - "USA-states", - "country names", - "geojson-id" - ] - }, - "locations": { - "description": "Sets the coordinates via location IDs or names. See `locationmode` for more info.", - "editType": "calc", - "valType": "data_array" - }, - "locationssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `locations`.", - "editType": "none", - "valType": "string" - }, - "marker": { - "editType": "calc", - "line": { - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "opacity": { - "arrayOk": true, - "description": "Sets the opacity of the locations.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "role": "object" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "selected": { - "editType": "plot", - "marker": { - "editType": "plot", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "role": "object" - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": false, - "editType": "style", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets the text elements associated with each location.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "choropleth", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "plot", - "marker": { - "editType": "plot", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "role": "object" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "z": { - "description": "Sets the color values.", - "editType": "calc", - "valType": "data_array" - }, - "zauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "zmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zmid": { - "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "zmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "geo", - "noOpacity", - "showLegend" - ], - "meta": { - "description": "The data that describes the choropleth value-to-color mapping is set in `z`. The geographic locations corresponding to each value in `z` are set in `locations`." - }, - "type": "choropleth" - }, - "choroplethmap": { - "animatable": false, - "attributes": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "below": { - "description": "Determines if the choropleth polygons will be inserted before the layer with the specified ID. By default, choroplethmap traces are placed above the water layers. If set to '', the layer will be inserted above every existing layer.", - "editType": "plot", - "valType": "string" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "featureidkey": { - "description": "Sets the key in GeoJSON features which is used as id to match the items included in the `locations` array. Support nested property, for example *properties.name*.", - "dflt": "id", - "editType": "calc", - "valType": "string" - }, - "geojson": { - "description": "Sets the GeoJSON data associated with this trace. It can be set as a valid GeoJSON object or as a URL string. Note that we only accept GeoJSONs of type *FeatureCollection* or *Feature* with geometries of type *Polygon* or *MultiPolygon*.", - "editType": "calc", - "valType": "any" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "location", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variable `properties` Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "locations": { - "description": "Sets which features found in *geojson* to plot using their feature `id` field.", - "editType": "calc", - "valType": "data_array" - }, - "locationssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `locations`.", - "editType": "none", - "valType": "string" - }, - "marker": { - "editType": "calc", - "line": { - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "opacity": { - "arrayOk": true, - "description": "Sets the opacity of the locations.", - "dflt": 1, - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "role": "object" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "selected": { - "editType": "plot", - "marker": { - "editType": "plot", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "role": "object" - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": false, - "editType": "style", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "subplot": { - "description": "Sets a reference between this trace's data coordinates and a map subplot. If *map* (the default value), the data refer to `layout.map`. If *map2*, the data refer to `layout.map2`, and so on.", - "dflt": "map", - "editType": "calc", - "valType": "subplotid" - }, - "text": { - "arrayOk": true, - "description": "Sets the text elements associated with each location.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "choroplethmap", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "plot", - "marker": { - "editType": "plot", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "role": "object" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "z": { - "description": "Sets the color values.", - "editType": "calc", - "valType": "data_array" - }, - "zauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "zmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zmid": { - "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "zmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "map", - "gl", - "noOpacity", - "showLegend" - ], - "meta": { - "description": "GeoJSON features to be filled are set in `geojson` The data that describes the choropleth value-to-color mapping is set in `locations` and `z`.", - "hr_name": "choropleth_map" - }, - "type": "choroplethmap" - }, - "choroplethmapbox": { - "animatable": false, - "attributes": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "below": { - "description": "Determines if the choropleth polygons will be inserted before the layer with the specified ID. By default, choroplethmapbox traces are placed above the water layers. If set to '', the layer will be inserted above every existing layer.", - "editType": "plot", - "valType": "string" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "featureidkey": { - "description": "Sets the key in GeoJSON features which is used as id to match the items included in the `locations` array. Support nested property, for example *properties.name*.", - "dflt": "id", - "editType": "calc", - "valType": "string" - }, - "geojson": { - "description": "Sets the GeoJSON data associated with this trace. It can be set as a valid GeoJSON object or as a URL string. Note that we only accept GeoJSONs of type *FeatureCollection* or *Feature* with geometries of type *Polygon* or *MultiPolygon*.", - "editType": "calc", - "valType": "any" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "location", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variable `properties` Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "locations": { - "description": "Sets which features found in *geojson* to plot using their feature `id` field.", - "editType": "calc", - "valType": "data_array" - }, - "locationssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `locations`.", - "editType": "none", - "valType": "string" - }, - "marker": { - "editType": "calc", - "line": { - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "opacity": { - "arrayOk": true, - "description": "Sets the opacity of the locations.", - "dflt": 1, - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "role": "object" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "selected": { - "editType": "plot", - "marker": { - "editType": "plot", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "role": "object" - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": false, - "editType": "style", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "subplot": { - "description": "mapbox subplots and traces are deprecated! Please consider switching to `map` subplots and traces. Learn more at: https://plotly.com/python/maplibre-migration/ as well as https://plotly.com/javascript/maplibre-migration/ Sets a reference between this trace's data coordinates and a mapbox subplot. If *mapbox* (the default value), the data refer to `layout.mapbox`. If *mapbox2*, the data refer to `layout.mapbox2`, and so on.", - "dflt": "mapbox", - "editType": "calc", - "valType": "subplotid" - }, - "text": { - "arrayOk": true, - "description": "Sets the text elements associated with each location.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "choroplethmapbox", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "plot", - "marker": { - "editType": "plot", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "role": "object" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "z": { - "description": "Sets the color values.", - "editType": "calc", - "valType": "data_array" - }, - "zauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "zmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zmid": { - "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "zmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "mapbox", - "gl", - "noOpacity", - "showLegend" - ], - "meta": { - "description": "*choroplethmapbox* trace is deprecated! Please consider switching to the *choroplethmap* trace type and `map` subplots. Learn more at: https://plotly.com/python/maplibre-migration/ as well as https://plotly.com/javascript/maplibre-migration/ GeoJSON features to be filled are set in `geojson` The data that describes the choropleth value-to-color mapping is set in `locations` and `z`.", - "hr_name": "choropleth_mapbox" - }, - "type": "choroplethmapbox" - }, - "cone": { - "animatable": false, - "attributes": { - "anchor": { - "description": "Sets the cones' anchor with respect to their x/y/z positions. Note that *cm* denote the cone's center of mass which corresponds to 1/4 from the tail to tip.", - "dflt": "cm", - "editType": "calc", - "valType": "enumerated", - "values": [ - "tip", - "tail", - "cm", - "center" - ] - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here u/v/w norm) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as u/v/w norm. Has no effect when `cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "x+y+z+norm+text+name", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "u", - "v", - "w", - "norm", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variable `norm` Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "lighting": { - "ambient": { - "description": "Ambient light increases overall color visibility but can wash out the image.", - "dflt": 0.8, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "diffuse": { - "description": "Represents the extent that incident rays are reflected in a range of angles.", - "dflt": 0.8, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "editType": "calc", - "facenormalsepsilon": { - "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry.", - "dflt": 0.000001, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "fresnel": { - "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", - "dflt": 0.2, - "editType": "calc", - "max": 5, - "min": 0, - "valType": "number" - }, - "role": "object", - "roughness": { - "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", - "dflt": 0.5, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "specular": { - "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", - "dflt": 0.05, - "editType": "calc", - "max": 2, - "min": 0, - "valType": "number" - }, - "vertexnormalsepsilon": { - "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry.", - "dflt": 1e-12, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - }, - "lightposition": { - "editType": "calc", - "role": "object", - "x": { - "description": "Numeric vector, representing the X coordinate for each vertex.", - "dflt": 100000, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - }, - "y": { - "description": "Numeric vector, representing the Y coordinate for each vertex.", - "dflt": 100000, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - }, - "z": { - "description": "Numeric vector, representing the Z coordinate for each vertex.", - "dflt": 0, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "scene": { - "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", - "dflt": "scene", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": false, - "editType": "style", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "sizemode": { - "description": "Determines whether `sizeref` is set as a *scaled* (i.e unitless) scalar (normalized by the max u/v/w norm in the vector field) or as *absolute* value (in the same units as the vector field). To display sizes in actual vector length use *raw*.", - "dflt": "scaled", - "editType": "calc", - "valType": "enumerated", - "values": [ - "scaled", - "absolute", - "raw" - ] - }, - "sizeref": { - "description": "Adjusts the cone size scaling. The size of the cones is determined by their u/v/w norm multiplied a factor and `sizeref`. This factor (computed internally) corresponds to the minimum \"time\" to travel across two successive x/y/z positions at the average velocity of those two successive positions. All cones in a given trace use the same factor. With `sizemode` set to *raw*, its default value is *1*. With `sizemode` set to *scaled*, `sizeref` is unitless, its default value is *0.5*. With `sizemode` set to *absolute*, `sizeref` has the same units as the u/v/w vector field, its the default value is half the sample's maximum vector norm.", - "editType": "calc", - "min": 0, - "valType": "number" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets the text elements associated with the cones. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "cone", - "u": { - "description": "Sets the x components of the vector field.", - "editType": "calc", - "valType": "data_array" - }, - "uhoverformat": { - "description": "Sets the hover text formatting rulefor `u` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "usrc": { - "description": "Sets the source reference on Chart Studio Cloud for `u`.", - "editType": "none", - "valType": "string" - }, - "v": { - "description": "Sets the y components of the vector field.", - "editType": "calc", - "valType": "data_array" - }, - "vhoverformat": { - "description": "Sets the hover text formatting rulefor `v` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "vsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `v`.", - "editType": "none", - "valType": "string" - }, - "w": { - "description": "Sets the z components of the vector field.", - "editType": "calc", - "valType": "data_array" - }, - "whoverformat": { - "description": "Sets the hover text formatting rulefor `w` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "wsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `w`.", - "editType": "none", - "valType": "string" - }, - "x": { - "description": "Sets the x coordinates of the vector field and of the displayed cones.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the y coordinates of the vector field and of the displayed cones.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "z": { - "description": "Sets the z coordinates of the vector field and of the displayed cones.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "zhoverformat": { - "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `zaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "gl3d", - "showLegend" - ], - "meta": { - "description": "Use cone traces to visualize vector fields. Specify a vector field using 6 1D arrays, 3 position arrays `x`, `y` and `z` and 3 vector component arrays `u`, `v`, `w`. The cones are drawn exactly at the positions given by `x`, `y` and `z`." - }, - "type": "cone" - }, - "contour": { - "animatable": false, - "attributes": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": false, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "autocontour": { - "description": "Determines whether or not the contour level attributes are picked by an algorithm. If *true*, the number of contour levels can be set in `ncontours`. If *false*, set the contour level attributes in `contours`.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data are filled in. It is defaulted to true if `z` is a one dimensional array otherwise it is defaulted to false.", - "editType": "calc", - "valType": "boolean" - }, - "contours": { - "coloring": { - "description": "Determines the coloring method showing the contour values. If *fill*, coloring is done evenly between each contour level If *heatmap*, a heatmap gradient coloring is applied between each contour level. If *lines*, coloring is done on the contour lines. If *none*, no coloring is applied on this trace.", - "dflt": "fill", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fill", - "heatmap", - "lines", - "none" - ] - }, - "editType": "calc", - "end": { - "description": "Sets the end contour level value. Must be more than `contours.start`", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "^autocontour": false - }, - "valType": "number" - }, - "impliedEdits": { - "autocontour": false, - "role": "object" - }, - "labelfont": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "labelformat": { - "description": "Sets the contour label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "operation": { - "description": "Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms.", - "dflt": "=", - "editType": "calc", - "valType": "enumerated", - "values": [ - "=", - "<", - ">=", - ">", - "<=", - "[]", - "()", - "[)", - "(]", - "][", - ")(", - "](", - ")[" - ] - }, - "role": "object", - "showlabels": { - "description": "Determines whether to label the contour lines with their values.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showlines": { - "description": "Determines whether or not the contour lines are drawn. Has an effect only if `contours.coloring` is set to *fill*.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "size": { - "description": "Sets the step between each contour level. Must be positive.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "^autocontour": false - }, - "min": 0, - "valType": "number" - }, - "start": { - "description": "Sets the starting contour level value. Must be less than `contours.end`", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "^autocontour": false - }, - "valType": "number" - }, - "type": { - "description": "If `levels`, the data is represented as a contour plot with multiple levels displayed. If `constraint`, the data is represented as constraints with the invalid region shaded as specified by the `operation` and `value` parameters.", - "dflt": "levels", - "editType": "calc", - "valType": "enumerated", - "values": [ - "levels", - "constraint" - ] - }, - "value": { - "description": "Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (`=,<,>=,>,<=`) *value* is expected to be a number. When `operation` is set to one of the interval values (`[],(),[),(],][,)(,](,)[`) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound.", - "dflt": 0, - "editType": "calc", - "valType": "any" - } - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "dx": { - "description": "Sets the x coordinate step. See `x0` for more info.", - "dflt": 1, - "editType": "calc", - "impliedEdits": { - "xtype": "scaled" - }, - "valType": "number" - }, - "dy": { - "description": "Sets the y coordinate step. See `y0` for more info.", - "dflt": 1, - "editType": "calc", - "impliedEdits": { - "ytype": "scaled" - }, - "valType": "number" - }, - "fillcolor": { - "description": "Sets the fill color if `contours.type` is *constraint*. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "calc", - "valType": "color" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hoverongaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data have hover labels associated with them.", - "dflt": true, - "editType": "none", - "valType": "boolean" - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "description": "Same as `text`.", - "editType": "calc", - "valType": "data_array" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "color": { - "description": "Sets the color of the contour level. Has no effect if `contours.coloring` is set to *lines*.", - "editType": "style+colorbars", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "plot", - "role": "object", - "smoothing": { - "description": "Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing.", - "dflt": 1, - "editType": "plot", - "max": 1.3, - "min": 0, - "valType": "number" - }, - "width": { - "description": "Sets the contour line width in (in px) Defaults to *0.5* when `contours.type` is *levels*. Defaults to *2* when `contour.type` is *constraint*.", - "editType": "style+colorbars", - "min": 0, - "valType": "number" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "ncontours": { - "description": "Sets the maximum number of contour levels. The actual number of contours will be chosen automatically to be less than or equal to the value of `ncontours`. Has an effect only if `autocontour` is *true* or if `contours.size` is missing.", - "dflt": 15, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "description": "Sets the text elements associated with each z value.", - "editType": "calc", - "valType": "data_array" - }, - "textfont": { - "color": { - "dflt": "auto", - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "dflt": "auto", - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "description": "For this trace it only has an effect if `coloring` is set to *heatmap*. Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `x`, `y`, `z` and `text`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "transpose": { - "description": "Transposes the z data.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "type": "contour", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the x coordinates.", - "editType": "calc+clearAxisTypes", - "impliedEdits": { - "xtype": "array" - }, - "valType": "data_array" - }, - "x0": { - "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "impliedEdits": { - "xtype": "scaled" - }, - "valType": "any" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "impliedEdits": { - "xtype": "scaled" - }, - "valType": "any" - }, - "xperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "xperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", - "dflt": "middle", - "editType": "calc", - "impliedEdits": { - "xtype": "scaled" - }, - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "xtype": { - "description": "If *array*, the heatmap's x coordinates are given by *x* (the default behavior when `x` is provided). If *scaled*, the heatmap's x coordinates are given by *x0* and *dx* (the default behavior when `x` is not provided).", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "array", - "scaled" - ] - }, - "y": { - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", - "impliedEdits": { - "ytype": "array" - }, - "valType": "data_array" - }, - "y0": { - "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "impliedEdits": { - "ytype": "scaled" - }, - "valType": "any" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "yperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "impliedEdits": { - "ytype": "scaled" - }, - "valType": "any" - }, - "yperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "yperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", - "dflt": "middle", - "editType": "calc", - "impliedEdits": { - "ytype": "scaled" - }, - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "ytype": { - "description": "If *array*, the heatmap's y coordinates are given by *y* (the default behavior when `y` is provided) If *scaled*, the heatmap's y coordinates are given by *y0* and *dy* (the default behavior when `y` is not provided)", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "array", - "scaled" - ] - }, - "z": { - "description": "Sets the z data.", - "editType": "calc", - "valType": "data_array" - }, - "zauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "zhoverformat": { - "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "zmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zmid": { - "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "zmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "cartesian", - "svg", - "2dMap", - "contour", - "showLegend" - ], - "meta": { - "description": "The data from which contour lines are computed is set in `z`. Data in `z` must be a {2D array} of numbers. Say that `z` has N rows and M columns, then by default, these N rows correspond to N y coordinates (set in `y` or auto-generated) and the M columns correspond to M x coordinates (set in `x` or auto-generated). By setting `transpose` to *true*, the above behavior is flipped." - }, - "type": "contour" - }, - "contourcarpet": { - "animatable": false, - "attributes": { - "a": { - "description": "Sets the x coordinates.", - "editType": "calc+clearAxisTypes", - "impliedEdits": { - "xtype": "array" - }, - "valType": "data_array" - }, - "a0": { - "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "impliedEdits": { - "xtype": "scaled" - }, - "valType": "any" - }, - "asrc": { - "description": "Sets the source reference on Chart Studio Cloud for `a`.", - "editType": "none", - "valType": "string" - }, - "atype": { - "description": "If *array*, the heatmap's x coordinates are given by *x* (the default behavior when `x` is provided). If *scaled*, the heatmap's x coordinates are given by *x0* and *dx* (the default behavior when `x` is not provided).", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "array", - "scaled" - ] - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": false, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "autocontour": { - "description": "Determines whether or not the contour level attributes are picked by an algorithm. If *true*, the number of contour levels can be set in `ncontours`. If *false*, set the contour level attributes in `contours`.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "b": { - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", - "impliedEdits": { - "ytype": "array" - }, - "valType": "data_array" - }, - "b0": { - "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "impliedEdits": { - "ytype": "scaled" - }, - "valType": "any" - }, - "bsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `b`.", - "editType": "none", - "valType": "string" - }, - "btype": { - "description": "If *array*, the heatmap's y coordinates are given by *y* (the default behavior when `y` is provided) If *scaled*, the heatmap's y coordinates are given by *y0* and *dy* (the default behavior when `y` is not provided)", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "array", - "scaled" - ] - }, - "carpet": { - "description": "The `carpet` of the carpet axes on which this contour trace lies", - "editType": "calc", - "valType": "string" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "contours": { - "coloring": { - "description": "Determines the coloring method showing the contour values. If *fill*, coloring is done evenly between each contour level If *lines*, coloring is done on the contour lines. If *none*, no coloring is applied on this trace.", - "dflt": "fill", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fill", - "lines", - "none" - ] - }, - "editType": "calc", - "end": { - "description": "Sets the end contour level value. Must be more than `contours.start`", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "^autocontour": false - }, - "valType": "number" - }, - "impliedEdits": { - "autocontour": false, - "role": "object" - }, - "labelfont": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "labelformat": { - "description": "Sets the contour label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "operation": { - "description": "Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms.", - "dflt": "=", - "editType": "calc", - "valType": "enumerated", - "values": [ - "=", - "<", - ">=", - ">", - "<=", - "[]", - "()", - "[)", - "(]", - "][", - ")(", - "](", - ")[" - ] - }, - "role": "object", - "showlabels": { - "description": "Determines whether to label the contour lines with their values.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showlines": { - "description": "Determines whether or not the contour lines are drawn. Has an effect only if `contours.coloring` is set to *fill*.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "size": { - "description": "Sets the step between each contour level. Must be positive.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "^autocontour": false - }, - "min": 0, - "valType": "number" - }, - "start": { - "description": "Sets the starting contour level value. Must be less than `contours.end`", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "^autocontour": false - }, - "valType": "number" - }, - "type": { - "description": "If `levels`, the data is represented as a contour plot with multiple levels displayed. If `constraint`, the data is represented as constraints with the invalid region shaded as specified by the `operation` and `value` parameters.", - "dflt": "levels", - "editType": "calc", - "valType": "enumerated", - "values": [ - "levels", - "constraint" - ] - }, - "value": { - "description": "Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (`=,<,>=,>,<=`) *value* is expected to be a number. When `operation` is set to one of the interval values (`[],(),[),(],][,)(,](,)[`) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound.", - "dflt": 0, - "editType": "calc", - "valType": "any" - } - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "da": { - "description": "Sets the x coordinate step. See `x0` for more info.", - "dflt": 1, - "editType": "calc", - "impliedEdits": { - "xtype": "scaled" - }, - "valType": "number" - }, - "db": { - "description": "Sets the y coordinate step. See `y0` for more info.", - "dflt": 1, - "editType": "calc", - "impliedEdits": { - "ytype": "scaled" - }, - "valType": "number" - }, - "fillcolor": { - "description": "Sets the fill color if `contours.type` is *constraint*. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "calc", - "valType": "color" - }, - "hovertext": { - "description": "Same as `text`.", - "editType": "calc", - "valType": "data_array" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "color": { - "description": "Sets the color of the contour level. Has no effect if `contours.coloring` is set to *lines*.", - "editType": "style+colorbars", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "plot", - "role": "object", - "smoothing": { - "description": "Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing.", - "dflt": 1, - "editType": "plot", - "max": 1.3, - "min": 0, - "valType": "number" - }, - "width": { - "description": "Sets the contour line width in (in px) Defaults to *0.5* when `contours.type` is *levels*. Defaults to *2* when `contour.type` is *constraint*.", - "editType": "style+colorbars", - "min": 0, - "valType": "number" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "ncontours": { - "description": "Sets the maximum number of contour levels. The actual number of contours will be chosen automatically to be less than or equal to the value of `ncontours`. Has an effect only if `autocontour` is *true* or if `contours.size` is missing.", - "dflt": 15, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "description": "Sets the text elements associated with each z value.", - "editType": "calc", - "valType": "data_array" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "transpose": { - "description": "Transposes the z data.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "type": "contourcarpet", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "z": { - "description": "Sets the z data.", - "editType": "calc", - "valType": "data_array" - }, - "zauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "zmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zmid": { - "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "zmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "cartesian", - "svg", - "carpet", - "contour", - "symbols", - "showLegend", - "hasLines", - "carpetDependent", - "noHover", - "noSortingByValue" - ], - "meta": { - "description": "Plots contours on either the first carpet axis or the carpet axis with a matching `carpet` attribute. Data `z` is interpreted as matching that of the corresponding carpet axis.", - "hrName": "contour_carpet" - }, - "type": "contourcarpet" - }, - "densitymap": { - "animatable": false, - "attributes": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "below": { - "description": "Determines if the densitymap trace will be inserted before the layer with the specified ID. By default, densitymap traces are placed below the first layer of type symbol If set to '', the layer will be inserted above every existing layer.", - "editType": "plot", - "valType": "string" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "lon", - "lat", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "lat": { - "description": "Sets the latitude coordinates (in degrees North).", - "editType": "calc", - "valType": "data_array" - }, - "latsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lat`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "lon": { - "description": "Sets the longitude coordinates (in degrees East).", - "editType": "calc", - "valType": "data_array" - }, - "lonsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lon`.", - "editType": "none", - "valType": "string" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "radius": { - "arrayOk": true, - "description": "Sets the radius of influence of one `lon` / `lat` point in pixels. Increasing the value makes the densitymap trace smoother, but less detailed.", - "dflt": 30, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "radiussrc": { - "description": "Sets the source reference on Chart Studio Cloud for `radius`.", - "editType": "none", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": false, - "editType": "style", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "subplot": { - "description": "Sets a reference between this trace's data coordinates and a map subplot. If *map* (the default value), the data refer to `layout.map`. If *map2*, the data refer to `layout.map2`, and so on.", - "dflt": "map", - "editType": "calc", - "valType": "subplotid" - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "densitymap", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "z": { - "description": "Sets the points' weight. For example, a value of 10 would be equivalent to having 10 points of weight 1 in the same spot", - "editType": "calc", - "valType": "data_array" - }, - "zauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "zmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zmid": { - "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "zmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "map", - "gl", - "showLegend" - ], - "meta": { - "description": "Draws a bivariate kernel density estimation with a Gaussian kernel from `lon` and `lat` coordinates and optional `z` values using a colorscale.", - "hr_name": "density_map" - }, - "type": "densitymap" - }, - "densitymapbox": { - "animatable": false, - "attributes": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "below": { - "description": "Determines if the densitymapbox trace will be inserted before the layer with the specified ID. By default, densitymapbox traces are placed below the first layer of type symbol If set to '', the layer will be inserted above every existing layer.", - "editType": "plot", - "valType": "string" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "lon", - "lat", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "lat": { - "description": "Sets the latitude coordinates (in degrees North).", - "editType": "calc", - "valType": "data_array" - }, - "latsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lat`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "lon": { - "description": "Sets the longitude coordinates (in degrees East).", - "editType": "calc", - "valType": "data_array" - }, - "lonsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lon`.", - "editType": "none", - "valType": "string" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "radius": { - "arrayOk": true, - "description": "Sets the radius of influence of one `lon` / `lat` point in pixels. Increasing the value makes the densitymapbox trace smoother, but less detailed.", - "dflt": 30, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "radiussrc": { - "description": "Sets the source reference on Chart Studio Cloud for `radius`.", - "editType": "none", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": false, - "editType": "style", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "subplot": { - "description": "mapbox subplots and traces are deprecated! Please consider switching to `map` subplots and traces. Learn more at: https://plotly.com/python/maplibre-migration/ as well as https://plotly.com/javascript/maplibre-migration/ Sets a reference between this trace's data coordinates and a mapbox subplot. If *mapbox* (the default value), the data refer to `layout.mapbox`. If *mapbox2*, the data refer to `layout.mapbox2`, and so on.", - "dflt": "mapbox", - "editType": "calc", - "valType": "subplotid" - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "densitymapbox", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "z": { - "description": "Sets the points' weight. For example, a value of 10 would be equivalent to having 10 points of weight 1 in the same spot", - "editType": "calc", - "valType": "data_array" - }, - "zauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "zmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zmid": { - "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "zmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "mapbox", - "gl", - "showLegend" - ], - "meta": { - "description": "*densitymapbox* trace is deprecated! Please consider switching to the *densitymap* trace type and `map` subplots. Learn more at: https://plotly.com/python/maplibre-migration/ as well as https://plotly.com/javascript/maplibre-migration/ Draws a bivariate kernel density estimation with a Gaussian kernel from `lon` and `lat` coordinates and optional `z` values using a colorscale.", - "hr_name": "density_mapbox" - }, - "type": "densitymapbox" - }, - "funnel": { - "animatable": false, - "attributes": { - "alignmentgroup": { - "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "cliponaxis": { - "description": "Determines whether the text nodes are clipped about the subplot axes. To show the text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "connector": { - "editType": "plot", - "fillcolor": { - "description": "Sets the fill color.", - "editType": "style", - "valType": "color" - }, - "line": { - "color": { - "description": "Sets the line color.", - "dflt": "#444", - "editType": "style", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "style", - "role": "object", - "width": { - "description": "Sets the line width (in px).", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "visible": { - "description": "Determines if connector regions and lines are drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - } - }, - "constraintext": { - "description": "Constrain the size of text inside or outside a bar to be no larger than the bar itself.", - "dflt": "both", - "editType": "calc", - "valType": "enumerated", - "values": [ - "inside", - "outside", - "both", - "none" - ] - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "dx": { - "description": "Sets the x coordinate step. See `x0` for more info.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "dy": { - "description": "Sets the y coordinate step. See `y0` for more info.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "name", - "x", - "y", - "text", - "percent initial", - "percent previous", - "percent total" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `percentInitial`, `percentPrevious` and `percentTotal`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "insidetextanchor": { - "description": "Determines if texts are kept at center or start/end points in `textposition` *inside* mode.", - "dflt": "middle", - "editType": "plot", - "valType": "enumerated", - "values": [ - "end", - "middle", - "start" - ] - }, - "insidetextfont": { - "color": { - "arrayOk": true, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `text` lying inside the bar.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "marker": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "opacity": { - "arrayOk": true, - "description": "Sets the opacity of the bars.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "offset": { - "arrayOk": false, - "description": "Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead.", - "dflt": null, - "editType": "calc", - "valType": "number" - }, - "offsetgroup": { - "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "orientation": { - "description": "Sets the orientation of the funnels. With *v* (*h*), the value of the each bar spans along the vertical (horizontal). By default funnels are tend to be oriented horizontally; unless only *y* array is presented or orientation is set to *v*. Also regarding graphs including only 'horizontal' funnels, *autorange* on the *y-axis* are set to *reversed*.", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "v", - "h" - ] - }, - "outsidetextfont": { - "color": { - "arrayOk": true, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `text` lying outside the bar.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textangle": { - "description": "Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars.", - "dflt": 0, - "editType": "plot", - "valType": "angle" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `text`.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textinfo": { - "arrayOk": false, - "description": "Determines which trace information appear on the graph. In the case of having multiple funnels, percentages & totals are computed separately (per trace).", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "label", - "text", - "percent initial", - "percent previous", - "percent total", - "value" - ], - "valType": "flaglist" - }, - "textposition": { - "arrayOk": true, - "description": "Specifies the location of the `text`. *inside* positions `text` inside, next to the bar end (rotated and scaled if needed). *outside* positions `text` outside, next to the bar end (scaled if needed), unless there is another bar stacked on this one, then the text gets pushed inside. *auto* tries to position `text` inside the bar, but if the bar is too small and no bar is stacked on this one the text is moved outside. If *none*, no text appears.", - "dflt": "auto", - "editType": "calc", - "valType": "enumerated", - "values": [ - "inside", - "outside", - "auto", - "none" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", - "editType": "none", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `percentInitial`, `percentPrevious`, `percentTotal`, `label` and `value`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "type": "funnel", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "width": { - "arrayOk": false, - "description": "Sets the bar width (in position axis units).", - "dflt": null, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "x": { - "description": "Sets the x coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "x0": { - "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "valType": "any" - }, - "xperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "xperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "y0": { - "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "yperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "valType": "any" - }, - "yperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "yperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - } - }, - "categories": [ - "bar-like", - "cartesian", - "svg", - "oriented", - "showLegend", - "zoomScale" - ], - "layoutAttributes": { - "funnelgap": { - "description": "Sets the gap (in plot fraction) between bars of adjacent location coordinates.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "funnelgroupgap": { - "description": "Sets the gap (in plot fraction) between bars of the same location coordinate.", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "funnelmode": { - "description": "Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to reduce *opacity* to see multiple bars.", - "dflt": "stack", - "editType": "calc", - "valType": "enumerated", - "values": [ - "stack", - "group", - "overlay" - ] - } - }, - "meta": { - "description": "Visualize stages in a process using length-encoded bars. This trace can be used to show data in either a part-to-whole representation wherein each item appears in a single stage, or in a \"drop-off\" representation wherein each item appears in each stage it traversed. See also the \"funnelarea\" trace type for a different approach to visualizing funnel data." - }, - "type": "funnel" - }, - "funnelarea": { - "animatable": false, - "attributes": { - "aspectratio": { - "description": "Sets the ratio between height and width", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "baseratio": { - "description": "Sets the ratio between bottom length and maximum top length.", - "dflt": 0.333, - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "dlabel": { - "description": "Sets the label step. See `label0` for more info.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this funnelarea trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "editType": "calc", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this funnelarea trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this funnelarea trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this funnelarea trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - } - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "label", - "text", - "value", - "percent", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `label`, `color`, `value`, `text` and `percent`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "insidetextfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `textinfo` lying inside the sector.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "label0": { - "description": "Alternate to `labels`. Builds a numeric set of labels. Use with `dlabel` where `label0` is the starting label and `dlabel` the step.", - "dflt": 0, - "editType": "calc", - "valType": "number" - }, - "labels": { - "description": "Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label.", - "editType": "calc", - "valType": "data_array" - }, - "labelssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `labels`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "marker": { - "colors": { - "description": "Sets the color of each sector. If not specified, the default trace color set is used to pick the sector colors.", - "editType": "calc", - "valType": "data_array" - }, - "colorssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `colors`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "line": { - "color": { - "arrayOk": true, - "description": "Sets the color of the line enclosing each sector. Defaults to the `paper_bgcolor` value.", - "dflt": null, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the line enclosing each sector.", - "dflt": 1, - "editType": "style", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "pattern": { - "bgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", - "editType": "style", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the pattern within the marker.", - "editType": "style", - "fgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", - "editType": "style", - "valType": "color" - }, - "fgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", - "editType": "none", - "valType": "string" - }, - "fgopacity": { - "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "fillmode": { - "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", - "dflt": "replace", - "editType": "style", - "valType": "enumerated", - "values": [ - "replace", - "overlay" - ] - }, - "path": { - "arrayOk": true, - "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", - "editType": "style", - "valType": "string" - }, - "pathsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `path`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shape": { - "arrayOk": true, - "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", - "dflt": "", - "editType": "style", - "valType": "enumerated", - "values": [ - "", - "/", - "\\", - "x", - "-", - "|", - "+", - "." - ] - }, - "shapesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shape`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", - "dflt": 8, - "editType": "style", - "min": 0, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "solidity": { - "arrayOk": true, - "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", - "dflt": 0.3, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "soliditysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", - "editType": "none", - "valType": "string" - } - }, - "role": "object" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "scalegroup": { - "description": "If there are multiple funnelareas that should be sized according to their totals, link them by providing a non-empty group id here shared by every trace in the same group.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "editType": "plot", - "valType": "data_array" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `textinfo`.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textinfo": { - "description": "Determines which trace information appear on the graph.", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "label", - "text", - "value", - "percent" - ], - "valType": "flaglist" - }, - "textposition": { - "arrayOk": true, - "description": "Specifies the location of the `textinfo`.", - "dflt": "inside", - "editType": "plot", - "valType": "enumerated", - "values": [ - "inside", - "none" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", - "editType": "none", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `label`, `color`, `value`, `text` and `percent`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "title": { - "editType": "plot", - "font": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `title`.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "position": { - "description": "Specifies the location of the `title`.", - "dflt": "top center", - "editType": "plot", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right" - ] - }, - "role": "object", - "text": { - "description": "Sets the title of the chart. If it is empty, no title is displayed.", - "dflt": "", - "editType": "plot", - "valType": "string" - } - }, - "type": "funnelarea", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "values": { - "description": "Sets the values of the sectors. If omitted, we count occurrences of each label.", - "editType": "calc", - "valType": "data_array" - }, - "valuessrc": { - "description": "Sets the source reference on Chart Studio Cloud for `values`.", - "editType": "none", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [ - "pie-like", - "funnelarea", - "showLegend" - ], - "layoutAttributes": { - "extendfunnelareacolors": { - "description": "If `true`, the funnelarea slice colors (whether given by `funnelareacolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "funnelareacolorway": { - "description": "Sets the default funnelarea slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendfunnelareacolors`.", - "editType": "calc", - "valType": "colorlist" - }, - "hiddenlabels": { - "description": "hiddenlabels is the funnelarea & pie chart analog of visible:'legendonly' but it can contain many labels, and can simultaneously hide slices from several pies/funnelarea charts", - "editType": "calc", - "valType": "data_array" - }, - "hiddenlabelssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hiddenlabels`.", - "editType": "none", - "valType": "string" - } - }, - "meta": { - "description": "Visualize stages in a process using area-encoded trapezoids. This trace can be used to show data in a part-to-whole representation similar to a \"pie\" trace, wherein each item appears in a single stage. See also the \"funnel\" trace type for a different approach to visualizing funnel data." - }, - "type": "funnelarea" - }, - "heatmap": { - "animatable": false, - "attributes": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": false, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data are filled in. It is defaulted to true if `z` is a one dimensional array and `zsmooth` is not false; otherwise it is defaulted to false.", - "editType": "calc", - "valType": "boolean" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "dx": { - "description": "Sets the x coordinate step. See `x0` for more info.", - "dflt": 1, - "editType": "calc", - "impliedEdits": { - "xtype": "scaled" - }, - "valType": "number" - }, - "dy": { - "description": "Sets the y coordinate step. See `y0` for more info.", - "dflt": 1, - "editType": "calc", - "impliedEdits": { - "ytype": "scaled" - }, - "valType": "number" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hoverongaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data have hover labels associated with them.", - "dflt": true, - "editType": "none", - "valType": "boolean" - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "description": "Same as `text`.", - "editType": "calc", - "valType": "data_array" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": false, - "editType": "style", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "description": "Sets the text elements associated with each z value.", - "editType": "calc", - "valType": "data_array" - }, - "textfont": { - "color": { - "dflt": "auto", - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "dflt": "auto", - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `x`, `y`, `z` and `text`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "transpose": { - "description": "Transposes the z data.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "type": "heatmap", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the x coordinates.", - "editType": "calc+clearAxisTypes", - "impliedEdits": { - "xtype": "array" - }, - "valType": "data_array" - }, - "x0": { - "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "impliedEdits": { - "xtype": "scaled" - }, - "valType": "any" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xgap": { - "description": "Sets the horizontal gap (in pixels) between bricks.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "impliedEdits": { - "xtype": "scaled" - }, - "valType": "any" - }, - "xperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "impliedEdits": { - "xtype": "scaled" - }, - "valType": "any" - }, - "xperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", - "dflt": "middle", - "editType": "calc", - "impliedEdits": { - "xtype": "scaled" - }, - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "xtype": { - "description": "If *array*, the heatmap's x coordinates are given by *x* (the default behavior when `x` is provided). If *scaled*, the heatmap's x coordinates are given by *x0* and *dx* (the default behavior when `x` is not provided).", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "array", - "scaled" - ] - }, - "y": { - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", - "impliedEdits": { - "ytype": "array" - }, - "valType": "data_array" - }, - "y0": { - "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "impliedEdits": { - "ytype": "scaled" - }, - "valType": "any" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "ygap": { - "description": "Sets the vertical gap (in pixels) between bricks.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "yperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "impliedEdits": { - "ytype": "scaled" - }, - "valType": "any" - }, - "yperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "impliedEdits": { - "ytype": "scaled" - }, - "valType": "any" - }, - "yperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", - "dflt": "middle", - "editType": "calc", - "impliedEdits": { - "ytype": "scaled" - }, - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "ytype": { - "description": "If *array*, the heatmap's y coordinates are given by *y* (the default behavior when `y` is provided) If *scaled*, the heatmap's y coordinates are given by *y0* and *dy* (the default behavior when `y` is not provided)", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "array", - "scaled" - ] - }, - "z": { - "description": "Sets the z data.", - "editType": "calc", - "valType": "data_array" - }, - "zauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "zhoverformat": { - "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "zmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zmid": { - "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "zmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - }, - "zsmooth": { - "description": "Picks a smoothing algorithm use to smooth `z` data.", - "dflt": false, - "editType": "calc", - "valType": "enumerated", - "values": [ - "fast", - "best", - false - ] - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "cartesian", - "svg", - "2dMap", - "showLegend" - ], - "meta": { - "description": "The data that describes the heatmap value-to-color mapping is set in `z`. Data in `z` can either be a {2D array} of values (ragged or not) or a 1D array of values. In the case where `z` is a {2D array}, say that `z` has N rows and M columns. Then, by default, the resulting heatmap will have N partitions along the y axis and M partitions along the x axis. In other words, the i-th row/ j-th column cell in `z` is mapped to the i-th partition of the y axis (starting from the bottom of the plot) and the j-th partition of the x-axis (starting from the left of the plot). This behavior can be flipped by using `transpose`. Moreover, `x` (`y`) can be provided with M or M+1 (N or N+1) elements. If M (N), then the coordinates correspond to the center of the heatmap cells and the cells have equal width. If M+1 (N+1), then the coordinates correspond to the edges of the heatmap cells. In the case where `z` is a 1D {array}, the x and y coordinates must be provided in `x` and `y` respectively to form data triplets." - }, - "type": "heatmap" - }, - "histogram": { - "animatable": false, - "attributes": { - "alignmentgroup": { - "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "autobinx": { - "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobinx` is not needed. However, we accept `autobinx: true` or `false` and will update `xbins` accordingly before deleting `autobinx` from the trace.", - "dflt": null, - "editType": "calc", - "valType": "boolean" - }, - "autobiny": { - "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobiny` is not needed. However, we accept `autobiny: true` or `false` and will update `ybins` accordingly before deleting `autobiny` from the trace.", - "dflt": null, - "editType": "calc", - "valType": "boolean" - }, - "bingroup": { - "description": "Set a group of histogram traces which will have compatible bin settings. Note that traces on the same subplot and with the same *orientation* under `barmode` *stack*, *relative* and *group* are forced into the same bingroup, Using `bingroup`, traces under `barmode` *overlay* and on different axes (of the same axis type) can have compatible bin settings. Note that histogram and histogram2d* trace can share the same `bingroup`", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "cliponaxis": { - "description": "Determines whether the text nodes are clipped about the subplot axes. To show the text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "constraintext": { - "description": "Constrain the size of text inside or outside a bar to be no larger than the bar itself.", - "dflt": "both", - "editType": "calc", - "valType": "enumerated", - "values": [ - "inside", - "outside", - "both", - "none" - ] - }, - "cumulative": { - "currentbin": { - "description": "Only applies if cumulative is enabled. Sets whether the current bin is included, excluded, or has half of its value included in the current cumulative value. *include* is the default for compatibility with various other tools, however it introduces a half-bin bias to the results. *exclude* makes the opposite half-bin bias, and *half* removes it.", - "dflt": "include", - "editType": "calc", - "valType": "enumerated", - "values": [ - "include", - "exclude", - "half" - ] - }, - "direction": { - "description": "Only applies if cumulative is enabled. If *increasing* (default) we sum all prior bins, so the result increases from left to right. If *decreasing* we sum later bins so the result decreases from left to right.", - "dflt": "increasing", - "editType": "calc", - "valType": "enumerated", - "values": [ - "increasing", - "decreasing" - ] - }, - "editType": "calc", - "enabled": { - "description": "If true, display the cumulative distribution by summing the binned values. Use the `direction` and `centralbin` attributes to tune the accumulation method. Note: in this mode, the *density* `histnorm` settings behave the same as their equivalents without *density*: ** and *density* both rise to the number of data points, and *probability* and *probability density* both rise to the number of sample points.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "role": "object" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "error_x": { - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", - "editType": "none", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `array`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the stroke color of the error bars.", - "editType": "style", - "valType": "color" - }, - "copy_ystyle": { - "editType": "plot", - "valType": "boolean" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", - "valType": "boolean" - }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] - }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "plot", - "min": 0, - "valType": "number" - } - }, - "error_y": { - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", - "editType": "none", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `array`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the stroke color of the error bars.", - "editType": "style", - "valType": "color" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", - "valType": "boolean" - }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] - }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "plot", - "min": 0, - "valType": "number" - } - }, - "histfunc": { - "description": "Specifies the binning function used for this histogram trace. If *count*, the histogram values are computed by counting the number of values lying inside each bin. If *sum*, *avg*, *min*, *max*, the histogram values are computed using the sum, the average, the minimum or the maximum of the values lying inside each bin respectively.", - "dflt": "count", - "editType": "calc", - "valType": "enumerated", - "values": [ - "count", - "sum", - "avg", - "min", - "max" - ] - }, - "histnorm": { - "description": "Specifies the type of normalization used for this histogram trace. If **, the span of each bar corresponds to the number of occurrences (i.e. the number of data points lying inside the bins). If *percent* / *probability*, the span of each bar corresponds to the percentage / fraction of occurrences with respect to the total number of sample points (here, the sum of all bin HEIGHTS equals 100% / 1). If *density*, the span of each bar corresponds to the number of occurrences in a bin divided by the size of the bin interval (here, the sum of all bin AREAS equals the total number of sample points). If *probability density*, the area of each bar corresponds to the probability that an event will fall into the corresponding bin (here, the sum of all bin AREAS equals 1).", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "", - "percent", - "probability", - "density", - "probability density" - ] - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variable `binNumber` Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "insidetextanchor": { - "description": "Determines if texts are kept at center or start/end points in `textposition` *inside* mode.", - "dflt": "end", - "editType": "plot", - "valType": "enumerated", - "values": [ - "end", - "middle", - "start" - ] - }, - "insidetextfont": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "marker": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "cornerradius": { - "description": "Sets the rounding of corners. May be an integer number of pixels, or a percentage of bar width (as a string ending in %). Defaults to `layout.barcornerradius`. In stack or relative barmode, the first trace to set cornerradius is used for the whole stack.", - "editType": "calc", - "valType": "any" - }, - "editType": "calc", - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "opacity": { - "arrayOk": true, - "description": "Sets the opacity of the bars.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "pattern": { - "bgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", - "editType": "style", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the pattern within the marker.", - "editType": "style", - "fgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", - "editType": "style", - "valType": "color" - }, - "fgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", - "editType": "none", - "valType": "string" - }, - "fgopacity": { - "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "fillmode": { - "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", - "dflt": "replace", - "editType": "style", - "valType": "enumerated", - "values": [ - "replace", - "overlay" - ] - }, - "path": { - "arrayOk": true, - "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", - "editType": "style", - "valType": "string" - }, - "pathsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `path`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shape": { - "arrayOk": true, - "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", - "dflt": "", - "editType": "style", - "valType": "enumerated", - "values": [ - "", - "/", - "\\", - "x", - "-", - "|", - "+", - "." - ] - }, - "shapesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shape`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", - "dflt": 8, - "editType": "style", - "min": 0, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "solidity": { - "arrayOk": true, - "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", - "dflt": 0.3, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "soliditysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", - "editType": "none", - "valType": "string" - } - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "nbinsx": { - "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `xbins.size` is provided.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "nbinsy": { - "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `ybins.size` is provided.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "offsetgroup": { - "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "orientation": { - "description": "Sets the orientation of the bars. With *v* (*h*), the value of the each bar spans along the vertical (horizontal).", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "v", - "h" - ] - }, - "outsidetextfont": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "selected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets hover text elements associated with each bar. If a single string, the same string appears over all bars. If an array of string, the items are mapped in order to the this trace's coordinates.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textangle": { - "description": "Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars.", - "dflt": "auto", - "editType": "plot", - "valType": "angle" - }, - "textfont": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "textposition": { - "arrayOk": false, - "description": "Specifies the location of the `text`. *inside* positions `text` inside, next to the bar end (rotated and scaled if needed). *outside* positions `text` outside, next to the bar end (scaled if needed), unless there is another bar stacked on this one, then the text gets pushed inside. *auto* tries to position `text` inside the bar, but if the bar is too small and no bar is stacked on this one the text is moved outside. If *none*, no text appears.", - "dflt": "auto", - "editType": "calc", - "valType": "enumerated", - "values": [ - "inside", - "outside", - "auto", - "none" - ] - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `label` and `value`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "type": "histogram", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the sample data to be binned on the x axis.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xbins": { - "editType": "calc", - "end": { - "description": "Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers.", - "editType": "calc", - "valType": "any" - }, - "role": "object", - "size": { - "description": "Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above.", - "editType": "calc", - "valType": "any" - }, - "start": { - "description": "Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins.", - "editType": "calc", - "valType": "any" - } - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the sample data to be binned on the y axis.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "ybins": { - "editType": "calc", - "end": { - "description": "Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers.", - "editType": "calc", - "valType": "any" - }, - "role": "object", - "size": { - "description": "Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above.", - "editType": "calc", - "valType": "any" - }, - "start": { - "description": "Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins.", - "editType": "calc", - "valType": "any" - } - }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - } - }, - "categories": [ - "bar-like", - "cartesian", - "svg", - "bar", - "histogram", - "oriented", - "errorBarsOK", - "showLegend" - ], - "layoutAttributes": { - "barcornerradius": { - "description": "Sets the rounding of bar corners. May be an integer number of pixels, or a percentage of bar width (as a string ending in %).", - "editType": "calc", - "valType": "any" - }, - "bargap": { - "description": "Sets the gap (in plot fraction) between bars of adjacent location coordinates.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "bargroupgap": { - "description": "Sets the gap (in plot fraction) between bars of the same location coordinate.", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "barmode": { - "description": "Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *relative*, the bars are stacked on top of one another, with negative values below the axis, positive values above With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to reduce *opacity* to see multiple bars.", - "dflt": "group", - "editType": "calc", - "valType": "enumerated", - "values": [ - "stack", - "group", - "overlay", - "relative" - ] - }, - "barnorm": { - "description": "Sets the normalization for bar traces on the graph. With *fraction*, the value of each bar is divided by the sum of all values at that location coordinate. *percent* is the same but multiplied by 100 to show percentages.", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "", - "fraction", - "percent" - ] - } - }, - "meta": { - "description": "The sample data from which statistics are computed is set in `x` for vertically spanning histograms and in `y` for horizontally spanning histograms. Binning options are set `xbins` and `ybins` respectively if no aggregation data is provided." - }, - "type": "histogram" - }, - "histogram2d": { - "animatable": false, - "attributes": { - "autobinx": { - "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobinx` is not needed. However, we accept `autobinx: true` or `false` and will update `xbins` accordingly before deleting `autobinx` from the trace.", - "dflt": null, - "editType": "calc", - "valType": "boolean" - }, - "autobiny": { - "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobiny` is not needed. However, we accept `autobiny: true` or `false` and will update `ybins` accordingly before deleting `autobiny` from the trace.", - "dflt": null, - "editType": "calc", - "valType": "boolean" - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": false, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "bingroup": { - "description": "Set the `xbingroup` and `ybingroup` default prefix For example, setting a `bingroup` of *1* on two histogram2d traces will make them their x-bins and y-bins match separately.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "histfunc": { - "description": "Specifies the binning function used for this histogram trace. If *count*, the histogram values are computed by counting the number of values lying inside each bin. If *sum*, *avg*, *min*, *max*, the histogram values are computed using the sum, the average, the minimum or the maximum of the values lying inside each bin respectively.", - "dflt": "count", - "editType": "calc", - "valType": "enumerated", - "values": [ - "count", - "sum", - "avg", - "min", - "max" - ] - }, - "histnorm": { - "description": "Specifies the type of normalization used for this histogram trace. If **, the span of each bar corresponds to the number of occurrences (i.e. the number of data points lying inside the bins). If *percent* / *probability*, the span of each bar corresponds to the percentage / fraction of occurrences with respect to the total number of sample points (here, the sum of all bin HEIGHTS equals 100% / 1). If *density*, the span of each bar corresponds to the number of occurrences in a bin divided by the size of the bin interval (here, the sum of all bin AREAS equals the total number of sample points). If *probability density*, the area of each bar corresponds to the probability that an event will fall into the corresponding bin (here, the sum of all bin AREAS equals 1).", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "", - "percent", - "probability", - "density", - "probability density" - ] - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variable `z` Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "marker": { - "color": { - "description": "Sets the aggregation data.", - "editType": "calc", - "valType": "data_array" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "nbinsx": { - "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `xbins.size` is provided.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "nbinsy": { - "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `ybins.size` is provided.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": false, - "editType": "style", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "textfont": { - "color": { - "dflt": "auto", - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "dflt": "auto", - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "texttemplate": { - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variable `z`", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "type": "histogram2d", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the sample data to be binned on the x axis.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xbingroup": { - "description": "Set a group of histogram traces which will have compatible x-bin settings. Using `xbingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible x-bin settings. Note that the same `xbingroup` value can be used to set (1D) histogram `bingroup`", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "xbins": { - "editType": "calc", - "end": { - "description": "Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers.", - "editType": "calc", - "valType": "any" - }, - "role": "object", - "size": { - "description": "Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). ", - "editType": "calc", - "valType": "any" - }, - "start": { - "description": "Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. ", - "editType": "calc", - "valType": "any" - } - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xgap": { - "description": "Sets the horizontal gap (in pixels) between bricks.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the sample data to be binned on the y axis.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "ybingroup": { - "description": "Set a group of histogram traces which will have compatible y-bin settings. Using `ybingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible y-bin settings. Note that the same `ybingroup` value can be used to set (1D) histogram `bingroup`", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ybins": { - "editType": "calc", - "end": { - "description": "Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers.", - "editType": "calc", - "valType": "any" - }, - "role": "object", - "size": { - "description": "Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). ", - "editType": "calc", - "valType": "any" - }, - "start": { - "description": "Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. ", - "editType": "calc", - "valType": "any" - } - }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "ygap": { - "description": "Sets the vertical gap (in pixels) between bricks.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "z": { - "description": "Sets the aggregation data.", - "editType": "calc", - "valType": "data_array" - }, - "zauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "zhoverformat": { - "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "zmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zmid": { - "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "zmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zsmooth": { - "description": "Picks a smoothing algorithm use to smooth `z` data.", - "dflt": false, - "editType": "calc", - "valType": "enumerated", - "values": [ - "fast", - "best", - false - ] - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "cartesian", - "svg", - "2dMap", - "histogram", - "showLegend" - ], - "meta": { - "description": "The sample data from which statistics are computed is set in `x` and `y` (where `x` and `y` represent marginal distributions, binning is set in `xbins` and `ybins` in this case) or `z` (where `z` represent the 2D distribution and binning set, binning is set by `x` and `y` in this case). The resulting distribution is visualized as a heatmap.", - "hrName": "histogram_2d" - }, - "type": "histogram2d" - }, - "histogram2dcontour": { - "animatable": false, - "attributes": { - "autobinx": { - "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobinx` is not needed. However, we accept `autobinx: true` or `false` and will update `xbins` accordingly before deleting `autobinx` from the trace.", - "dflt": null, - "editType": "calc", - "valType": "boolean" - }, - "autobiny": { - "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobiny` is not needed. However, we accept `autobiny: true` or `false` and will update `ybins` accordingly before deleting `autobiny` from the trace.", - "dflt": null, - "editType": "calc", - "valType": "boolean" - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "autocontour": { - "description": "Determines whether or not the contour level attributes are picked by an algorithm. If *true*, the number of contour levels can be set in `ncontours`. If *false*, set the contour level attributes in `contours`.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "bingroup": { - "description": "Set the `xbingroup` and `ybingroup` default prefix For example, setting a `bingroup` of *1* on two histogram2d traces will make them their x-bins and y-bins match separately.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "contours": { - "coloring": { - "description": "Determines the coloring method showing the contour values. If *fill*, coloring is done evenly between each contour level If *heatmap*, a heatmap gradient coloring is applied between each contour level. If *lines*, coloring is done on the contour lines. If *none*, no coloring is applied on this trace.", - "dflt": "fill", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fill", - "heatmap", - "lines", - "none" - ] - }, - "editType": "calc", - "end": { - "description": "Sets the end contour level value. Must be more than `contours.start`", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "^autocontour": false - }, - "valType": "number" - }, - "impliedEdits": { - "autocontour": false, - "role": "object" - }, - "labelfont": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "labelformat": { - "description": "Sets the contour label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "operation": { - "description": "Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms.", - "dflt": "=", - "editType": "calc", - "valType": "enumerated", - "values": [ - "=", - "<", - ">=", - ">", - "<=", - "[]", - "()", - "[)", - "(]", - "][", - ")(", - "](", - ")[" - ] - }, - "role": "object", - "showlabels": { - "description": "Determines whether to label the contour lines with their values.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showlines": { - "description": "Determines whether or not the contour lines are drawn. Has an effect only if `contours.coloring` is set to *fill*.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "size": { - "description": "Sets the step between each contour level. Must be positive.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "^autocontour": false - }, - "min": 0, - "valType": "number" - }, - "start": { - "description": "Sets the starting contour level value. Must be less than `contours.end`", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "^autocontour": false - }, - "valType": "number" - }, - "type": { - "description": "If `levels`, the data is represented as a contour plot with multiple levels displayed. If `constraint`, the data is represented as constraints with the invalid region shaded as specified by the `operation` and `value` parameters.", - "dflt": "levels", - "editType": "calc", - "valType": "enumerated", - "values": [ - "levels", - "constraint" - ] - }, - "value": { - "description": "Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (`=,<,>=,>,<=`) *value* is expected to be a number. When `operation` is set to one of the interval values (`[],(),[),(],][,)(,](,)[`) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound.", - "dflt": 0, - "editType": "calc", - "valType": "any" - } - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "histfunc": { - "description": "Specifies the binning function used for this histogram trace. If *count*, the histogram values are computed by counting the number of values lying inside each bin. If *sum*, *avg*, *min*, *max*, the histogram values are computed using the sum, the average, the minimum or the maximum of the values lying inside each bin respectively.", - "dflt": "count", - "editType": "calc", - "valType": "enumerated", - "values": [ - "count", - "sum", - "avg", - "min", - "max" - ] - }, - "histnorm": { - "description": "Specifies the type of normalization used for this histogram trace. If **, the span of each bar corresponds to the number of occurrences (i.e. the number of data points lying inside the bins). If *percent* / *probability*, the span of each bar corresponds to the percentage / fraction of occurrences with respect to the total number of sample points (here, the sum of all bin HEIGHTS equals 100% / 1). If *density*, the span of each bar corresponds to the number of occurrences in a bin divided by the size of the bin interval (here, the sum of all bin AREAS equals the total number of sample points). If *probability density*, the area of each bar corresponds to the probability that an event will fall into the corresponding bin (here, the sum of all bin AREAS equals 1).", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "", - "percent", - "probability", - "density", - "probability density" - ] - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variable `z` Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "color": { - "description": "Sets the color of the contour level. Has no effect if `contours.coloring` is set to *lines*.", - "editType": "style+colorbars", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "plot", - "role": "object", - "smoothing": { - "description": "Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing.", - "dflt": 1, - "editType": "plot", - "max": 1.3, - "min": 0, - "valType": "number" - }, - "width": { - "description": "Sets the contour line width in (in px)", - "dflt": 0.5, - "editType": "style+colorbars", - "min": 0, - "valType": "number" - } - }, - "marker": { - "color": { - "description": "Sets the aggregation data.", - "editType": "calc", - "valType": "data_array" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "nbinsx": { - "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `xbins.size` is provided.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "nbinsy": { - "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `ybins.size` is provided.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "ncontours": { - "description": "Sets the maximum number of contour levels. The actual number of contours will be chosen automatically to be less than or equal to the value of `ncontours`. Has an effect only if `autocontour` is *true* or if `contours.size` is missing.", - "dflt": 15, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "textfont": { - "color": { - "dflt": "auto", - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "dflt": "auto", - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "texttemplate": { - "description": "For this trace it only has an effect if `coloring` is set to *heatmap*. Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `x`, `y`, `z` and `text`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "type": "histogram2dcontour", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the sample data to be binned on the x axis.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xbingroup": { - "description": "Set a group of histogram traces which will have compatible x-bin settings. Using `xbingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible x-bin settings. Note that the same `xbingroup` value can be used to set (1D) histogram `bingroup`", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "xbins": { - "editType": "calc", - "end": { - "description": "Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers.", - "editType": "calc", - "valType": "any" - }, - "role": "object", - "size": { - "description": "Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). ", - "editType": "calc", - "valType": "any" - }, - "start": { - "description": "Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. ", - "editType": "calc", - "valType": "any" - } - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the sample data to be binned on the y axis.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "ybingroup": { - "description": "Set a group of histogram traces which will have compatible y-bin settings. Using `ybingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible y-bin settings. Note that the same `ybingroup` value can be used to set (1D) histogram `bingroup`", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ybins": { - "editType": "calc", - "end": { - "description": "Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers.", - "editType": "calc", - "valType": "any" - }, - "role": "object", - "size": { - "description": "Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). ", - "editType": "calc", - "valType": "any" - }, - "start": { - "description": "Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. ", - "editType": "calc", - "valType": "any" - } - }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "z": { - "description": "Sets the aggregation data.", - "editType": "calc", - "valType": "data_array" - }, - "zauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "zhoverformat": { - "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "zmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zmid": { - "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "zmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "zauto": false - }, - "valType": "number" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "cartesian", - "svg", - "2dMap", - "contour", - "histogram", - "showLegend" - ], - "meta": { - "description": "The sample data from which statistics are computed is set in `x` and `y` (where `x` and `y` represent marginal distributions, binning is set in `xbins` and `ybins` in this case) or `z` (where `z` represent the 2D distribution and binning set, binning is set by `x` and `y` in this case). The resulting distribution is visualized as a contour plot.", - "hrName": "histogram_2d_contour" - }, - "type": "histogram2dcontour" - }, - "icicle": { - "animatable": true, - "attributes": { - "branchvalues": { - "description": "Determines how the items in `values` are summed. When set to *total*, items in `values` are taken to be value of all its descendants. When set to *remainder*, items in `values` corresponding to the root and the branches sectors are taken to be the extra part not part of the sum of the values at their leaves.", - "dflt": "remainder", - "editType": "calc", - "valType": "enumerated", - "values": [ - "remainder", - "total" - ] - }, - "count": { - "description": "Determines default for `values` when it is not provided, by inferring a 1 for each of the *leaves* and/or *branches*, otherwise 0.", - "dflt": "leaves", - "editType": "calc", - "flags": [ - "branches", - "leaves" - ], - "valType": "flaglist" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this icicle trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "editType": "calc", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this icicle trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this icicle trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this icicle trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - } - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "label+text+value+name", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "label", - "text", - "value", - "name", - "current path", - "percent root", - "percent entry", - "percent parent" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry` and `percentParent`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "anim": true, - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "insidetextfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `textinfo` lying inside the sector.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "labels": { - "description": "Sets the labels of each of the sectors.", - "editType": "calc", - "valType": "data_array" - }, - "labelssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `labels`.", - "editType": "none", - "valType": "string" - }, - "leaf": { - "editType": "plot", - "opacity": { - "description": "Sets the opacity of the leaves. With colorscale it is defaulted to 1; otherwise it is defaulted to 0.7", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "level": { - "anim": true, - "description": "Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`.", - "editType": "plot", - "valType": "any" - }, - "marker": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if colors is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here colors) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if colors is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if colors is set to a numerical array. Value should have the same units as colors and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if colors is set to a numerical array. Value should have the same units as colors. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if colors is set to a numerical array. Value should have the same units as colors and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colors": { - "description": "Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors.", - "editType": "calc", - "valType": "data_array" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if colors is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `colors`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "line": { - "color": { - "arrayOk": true, - "description": "Sets the color of the line enclosing each sector. Defaults to the `paper_bgcolor` value.", - "dflt": null, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the line enclosing each sector.", - "dflt": 1, - "editType": "style", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "pattern": { - "bgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", - "editType": "style", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the pattern within the marker.", - "editType": "style", - "fgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", - "editType": "style", - "valType": "color" - }, - "fgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", - "editType": "none", - "valType": "string" - }, - "fgopacity": { - "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "fillmode": { - "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", - "dflt": "replace", - "editType": "style", - "valType": "enumerated", - "values": [ - "replace", - "overlay" - ] - }, - "path": { - "arrayOk": true, - "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", - "editType": "style", - "valType": "string" - }, - "pathsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `path`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shape": { - "arrayOk": true, - "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", - "dflt": "", - "editType": "style", - "valType": "enumerated", - "values": [ - "", - "/", - "\\", - "x", - "-", - "|", - "+", - "." - ] - }, - "shapesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shape`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", - "dflt": 8, - "editType": "style", - "min": 0, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "solidity": { - "arrayOk": true, - "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", - "dflt": 0.3, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "soliditysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", - "editType": "none", - "valType": "string" - } - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if colors is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if colors is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "maxdepth": { - "description": "Sets the number of rendered sectors from any given `level`. Set `maxdepth` to *-1* to render all the levels in the hierarchy.", - "dflt": -1, - "editType": "plot", - "valType": "integer" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "outsidetextfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `textinfo` lying outside the sector. This option refers to the root of the hierarchy presented on top left corner of a treemap graph. Please note that if a hierarchy has multiple root nodes, this option won't have any effect and `insidetextfont` would be used.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "parents": { - "description": "Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique.", - "editType": "calc", - "valType": "data_array" - }, - "parentssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `parents`.", - "editType": "none", - "valType": "string" - }, - "pathbar": { - "edgeshape": { - "description": "Determines which shape is used for edges between `barpath` labels.", - "dflt": ">", - "editType": "plot", - "valType": "enumerated", - "values": [ - ">", - "<", - "|", - "/", - "\\" - ] - }, - "editType": "calc", - "role": "object", - "side": { - "description": "Determines on which side of the the treemap the `pathbar` should be presented.", - "dflt": "top", - "editType": "plot", - "valType": "enumerated", - "values": [ - "top", - "bottom" - ] - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used inside `pathbar`.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "thickness": { - "description": "Sets the thickness of `pathbar` (in px). If not specified the `pathbar.textfont.size` is used with 3 pixles extra padding on each side.", - "editType": "plot", - "min": 12, - "valType": "number" - }, - "visible": { - "description": "Determines if the path bar is drawn i.e. outside the trace `domain` and with one pixel gap.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - } - }, - "root": { - "color": { - "description": "sets the color of the root node for a sunburst/treemap/icicle trace. this has no effect when a colorscale is used to set the markers.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "role": "object" - }, - "sort": { - "description": "Determines whether or not the sectors are reordered from largest to smallest.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "editType": "plot", - "valType": "data_array" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `textinfo`.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textinfo": { - "description": "Determines which trace information appear on the graph.", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "label", - "text", - "value", - "current path", - "percent root", - "percent entry", - "percent parent" - ], - "valType": "flaglist" - }, - "textposition": { - "description": "Sets the positions of the `text` elements.", - "dflt": "top left", - "editType": "plot", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry`, `percentParent`, `label` and `value`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "tiling": { - "editType": "calc", - "flip": { - "description": "Determines if the positions obtained from solver are flipped on each axis.", - "dflt": "", - "editType": "plot", - "flags": [ - "x", - "y" - ], - "valType": "flaglist" - }, - "orientation": { - "description": "When set in conjunction with `tiling.flip`, determines on which side the root nodes are drawn in the chart. If `tiling.orientation` is *v* and `tiling.flip` is **, the root nodes appear at the top. If `tiling.orientation` is *v* and `tiling.flip` is *y*, the root nodes appear at the bottom. If `tiling.orientation` is *h* and `tiling.flip` is **, the root nodes appear at the left. If `tiling.orientation` is *h* and `tiling.flip` is *x*, the root nodes appear at the right.", - "dflt": "h", - "editType": "plot", - "valType": "enumerated", - "values": [ - "v", - "h" - ] - }, - "pad": { - "description": "Sets the inner padding (in px).", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "type": "icicle", - "uid": { - "anim": true, - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "values": { - "description": "Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed.", - "editType": "calc", - "valType": "data_array" - }, - "valuessrc": { - "description": "Sets the source reference on Chart Studio Cloud for `values`.", - "editType": "none", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [], - "layoutAttributes": { - "extendiciclecolors": { - "description": "If `true`, the icicle slice colors (whether given by `iciclecolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "iciclecolorway": { - "description": "Sets the default icicle slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendiciclecolors`.", - "editType": "calc", - "valType": "colorlist" - } - }, - "meta": { - "description": "Visualize hierarchal data from leaves (and/or outer branches) towards root with rectangles. The icicle sectors are determined by the entries in *labels* or *ids* and in *parents*." - }, - "type": "icicle" - }, - "image": { - "animatable": false, - "attributes": { - "colormodel": { - "description": "Color model used to map the numerical color components described in `z` into colors. If `source` is specified, this attribute will be set to `rgba256` otherwise it defaults to `rgb`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "rgb", - "rgba", - "rgba256", - "hsl", - "hsla" - ] - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "dx": { - "description": "Set the pixel's horizontal size.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "dy": { - "description": "Set the pixel's vertical size", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "x+y+z+text+name", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "color", - "name", - "text" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `z`, `color` and `colormodel`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "description": "Same as `text`.", - "editType": "plot", - "valType": "data_array" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "source": { - "description": "Specifies the data URI of the image to be visualized. The URI consists of \"data:image/[][;base64\\\\],\"", - "editType": "calc", - "valType": "string" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "description": "Sets the text elements associated with each z value.", - "editType": "plot", - "valType": "data_array" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "image", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x0": { - "description": "Set the image's x position. The left edge of the image (or the right edge if the x axis is reversed or dx is negative) will be found at xmin=x0-dx/2", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "y0": { - "description": "Set the image's y position. The top edge of the image (or the bottom edge if the y axis is NOT reversed or if dy is negative) will be found at ymin=y0-dy/2. By default when an image trace is included, the y axis will be reversed so that the image is right-side-up, but you can disable this by setting yaxis.autorange=true or by providing an explicit y axis range.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "z": { - "description": "A 2-dimensional array in which each element is an array of 3 or 4 numbers representing a color.", - "editType": "calc", - "valType": "data_array" - }, - "zmax": { - "description": "Array defining the higher bound for each color component. Note that the default value will depend on the colormodel. For the `rgb` colormodel, it is [255, 255, 255]. For the `rgba` colormodel, it is [255, 255, 255, 1]. For the `rgba256` colormodel, it is [255, 255, 255, 255]. For the `hsl` colormodel, it is [360, 100, 100]. For the `hsla` colormodel, it is [360, 100, 100, 1].", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "number" - }, - { - "editType": "calc", - "valType": "number" - }, - { - "editType": "calc", - "valType": "number" - }, - { - "editType": "calc", - "valType": "number" - } - ], - "valType": "info_array" - }, - "zmin": { - "description": "Array defining the lower bound for each color component. Note that the default value will depend on the colormodel. For the `rgb` colormodel, it is [0, 0, 0]. For the `rgba` colormodel, it is [0, 0, 0, 0]. For the `rgba256` colormodel, it is [0, 0, 0, 0]. For the `hsl` colormodel, it is [0, 0, 0]. For the `hsla` colormodel, it is [0, 0, 0, 0].", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "number" - }, - { - "editType": "calc", - "valType": "number" - }, - { - "editType": "calc", - "valType": "number" - }, - { - "editType": "calc", - "valType": "number" - } - ], - "valType": "info_array" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - }, - "zsmooth": { - "description": "Picks a smoothing algorithm used to smooth `z` data. This only applies for image traces that use the `source` attribute.", - "dflt": false, - "editType": "plot", - "valType": "enumerated", - "values": [ - "fast", - false - ] - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "cartesian", - "svg", - "2dMap", - "noSortingByValue" - ], - "meta": { - "description": "Display an image, i.e. data on a 2D regular raster. By default, when an image is displayed in a subplot, its y axis will be reversed (ie. `autorange: 'reversed'`), constrained to the domain (ie. `constrain: 'domain'`) and it will have the same scale as its x axis (ie. `scaleanchor: 'x,`) in order for pixels to be rendered as squares." - }, - "type": "image" - }, - "indicator": { - "animatable": true, - "attributes": { - "align": { - "description": "Sets the horizontal alignment of the `text` within the box. Note that this attribute has no effect if an angular gauge is displayed: in this case, it is always centered", - "editType": "plot", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "delta": { - "decreasing": { - "color": { - "description": "Sets the color for increasing value.", - "dflt": "#FF4136", - "editType": "plot", - "valType": "color" - }, - "editType": "plot", - "role": "object", - "symbol": { - "description": "Sets the symbol to display for increasing value", - "dflt": "▼", - "editType": "plot", - "valType": "string" - } - }, - "editType": "calc", - "font": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "increasing": { - "color": { - "description": "Sets the color for increasing value.", - "dflt": "#3D9970", - "editType": "plot", - "valType": "color" - }, - "editType": "plot", - "role": "object", - "symbol": { - "description": "Sets the symbol to display for increasing value", - "dflt": "▲", - "editType": "plot", - "valType": "string" - } - }, - "position": { - "description": "Sets the position of delta with respect to the number.", - "dflt": "bottom", - "editType": "plot", - "valType": "enumerated", - "values": [ - "top", - "bottom", - "left", - "right" - ] - }, - "prefix": { - "description": "Sets a prefix appearing before the delta.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "reference": { - "description": "Sets the reference value to compute the delta. By default, it is set to the current value.", - "editType": "calc", - "valType": "number" - }, - "relative": { - "description": "Show relative change", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "suffix": { - "description": "Sets a suffix appearing next to the delta.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "valueformat": { - "description": "Sets the value formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", - "editType": "plot", - "valType": "string" - } - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this indicator trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "editType": "calc", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this indicator trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this indicator trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this indicator trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - } - }, - "gauge": { - "axis": { - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "plot", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "plot", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "plot", - "valType": "any" - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "range": { - "description": "Sets the range of this axis.", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "number" - }, - { - "editType": "plot", - "valType": "number" - } - ], - "valType": "info_array" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "plot", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "plot", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "plot", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "plot", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "plot", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "plot", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "plot", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "plot", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "outside", - "editType": "plot", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "plot", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "plot", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "visible": { - "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", - "dflt": true, - "editType": "plot", - "valType": "boolean" - } - }, - "bar": { - "color": { - "description": "Sets the background color of the arc.", - "dflt": "green", - "editType": "plot", - "valType": "color" - }, - "description": "Set the appearance of the gauge's value", - "editType": "calc", - "line": { - "color": { - "description": "Sets the color of the line enclosing each sector.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "editType": "calc", - "role": "object", - "width": { - "description": "Sets the width (in px) of the line enclosing each sector.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "thickness": { - "description": "Sets the thickness of the bar as a fraction of the total thickness of the gauge.", - "dflt": 1, - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - }, - "bgcolor": { - "description": "Sets the gauge background color.", - "editType": "plot", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the color of the border enclosing the gauge.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) of the border enclosing the gauge.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "description": "The gauge of the Indicator plot.", - "editType": "plot", - "role": "object", - "shape": { - "description": "Set the shape of the gauge", - "dflt": "angular", - "editType": "plot", - "valType": "enumerated", - "values": [ - "angular", - "bullet" - ] - }, - "steps": { - "items": { - "step": { - "color": { - "description": "Sets the background color of the arc.", - "editType": "plot", - "valType": "color" - }, - "editType": "calc", - "line": { - "color": { - "description": "Sets the color of the line enclosing each sector.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "editType": "calc", - "role": "object", - "width": { - "description": "Sets the width (in px) of the line enclosing each sector.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - } - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "none", - "valType": "string" - }, - "range": { - "description": "Sets the range of this axis.", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "number" - }, - { - "editType": "plot", - "valType": "number" - } - ], - "valType": "info_array" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "thickness": { - "description": "Sets the thickness of the bar as a fraction of the total thickness of the gauge.", - "dflt": 1, - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - } - }, - "role": "object" - }, - "threshold": { - "editType": "plot", - "line": { - "color": { - "description": "Sets the color of the threshold line.", - "dflt": "#444", - "editType": "plot", - "valType": "color" - }, - "editType": "plot", - "role": "object", - "width": { - "description": "Sets the width (in px) of the threshold line.", - "dflt": 1, - "editType": "plot", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "thickness": { - "description": "Sets the thickness of the threshold line as a fraction of the thickness of the gauge.", - "dflt": 0.85, - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "value": { - "description": "Sets a treshold value drawn as a line.", - "dflt": false, - "editType": "calc", - "valType": "number" - } - } - }, - "ids": { - "anim": true, - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "mode": { - "description": "Determines how the value is displayed on the graph. `number` displays the value numerically in text. `delta` displays the difference to a reference value in text. Finally, `gauge` displays the value graphically on an axis.", - "dflt": "number", - "editType": "calc", - "flags": [ - "number", - "delta", - "gauge" - ], - "valType": "flaglist" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "number": { - "editType": "plot", - "font": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "prefix": { - "description": "Sets a prefix appearing before the number.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "role": "object", - "suffix": { - "description": "Sets a suffix appearing next to the number.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "valueformat": { - "description": "Sets the value formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", - "dflt": "", - "editType": "plot", - "valType": "string" - } - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "title": { - "align": { - "description": "Sets the horizontal alignment of the title. It defaults to `center` except for bullet charts for which it defaults to right.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "editType": "plot", - "font": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of this indicator.", - "editType": "plot", - "valType": "string" - } - }, - "type": "indicator", - "uid": { - "anim": true, - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "value": { - "anim": true, - "description": "Sets the number to be displayed.", - "editType": "calc", - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [ - "svg", - "noOpacity", - "noHover" - ], - "meta": { - "description": "An indicator is used to visualize a single `value` along with some contextual information such as `steps` or a `threshold`, using a combination of three visual elements: a number, a delta, and/or a gauge. Deltas are taken with respect to a `reference`. Gauges can be either angular or bullet (aka linear) gauges." - }, - "type": "indicator" - }, - "isosurface": { - "animatable": false, - "attributes": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "caps": { - "editType": "calc", - "role": "object", - "x": { - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "show": { - "description": "Sets the fill ratio of the `slices`. The default fill value of the x `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - }, - "y": { - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "show": { - "description": "Sets the fill ratio of the `slices`. The default fill value of the y `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - }, - "z": { - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "show": { - "description": "Sets the fill ratio of the `slices`. The default fill value of the z `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - } - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here `value`) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as `value` and if set, `cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `value`. Has no effect when `cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as `value` and if set, `cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "calc", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "calc", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "calc", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "calc", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "any" - }, - { - "editType": "calc", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "calc", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "calc", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "calc", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "calc", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "calc", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "calc", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "calc", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "contour": { - "color": { - "description": "Sets the color of the contour lines.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "role": "object", - "show": { - "description": "Sets whether or not dynamic contours are shown on hover", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width of the contour lines.", - "dflt": 2, - "editType": "calc", - "max": 16, - "min": 1, - "valType": "number" - } - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "flatshading": { - "description": "Determines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "isomax": { - "description": "Sets the maximum boundary for iso-surface plot.", - "editType": "calc", - "valType": "number" - }, - "isomin": { - "description": "Sets the minimum boundary for iso-surface plot.", - "editType": "calc", - "valType": "number" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "lighting": { - "ambient": { - "description": "Ambient light increases overall color visibility but can wash out the image.", - "dflt": 0.8, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "diffuse": { - "description": "Represents the extent that incident rays are reflected in a range of angles.", - "dflt": 0.8, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "editType": "calc", - "facenormalsepsilon": { - "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry.", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "fresnel": { - "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", - "dflt": 0.2, - "editType": "calc", - "max": 5, - "min": 0, - "valType": "number" - }, - "role": "object", - "roughness": { - "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", - "dflt": 0.5, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "specular": { - "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", - "dflt": 0.05, - "editType": "calc", - "max": 2, - "min": 0, - "valType": "number" - }, - "vertexnormalsepsilon": { - "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry.", - "dflt": 1e-12, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - }, - "lightposition": { - "editType": "calc", - "role": "object", - "x": { - "description": "Numeric vector, representing the X coordinate for each vertex.", - "dflt": 100000, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - }, - "y": { - "description": "Numeric vector, representing the Y coordinate for each vertex.", - "dflt": 100000, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - }, - "z": { - "description": "Numeric vector, representing the Z coordinate for each vertex.", - "dflt": 0, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "scene": { - "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", - "dflt": "scene", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "slices": { - "editType": "calc", - "role": "object", - "x": { - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "locations": { - "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis x except start and end.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "locationssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `locations`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "show": { - "description": "Determines whether or not slice planes about the x dimension are drawn.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "y": { - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "locations": { - "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis y except start and end.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "locationssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `locations`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "show": { - "description": "Determines whether or not slice planes about the y dimension are drawn.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "z": { - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "locations": { - "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis z except start and end.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "locationssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `locations`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "show": { - "description": "Determines whether or not slice planes about the z dimension are drawn.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - } - }, - "spaceframe": { - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the `spaceframe` elements. The default fill value is 0.15 meaning that only 15% of the area of every faces of tetras would be shaded. Applying a greater `fill` ratio would allow the creation of stronger elements or could be sued to have entirely closed areas (in case of using 1).", - "dflt": 0.15, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "show": { - "description": "Displays/hides tetrahedron shapes between minimum and maximum iso-values. Often useful when either caps or surfaces are disabled or filled with values less than 1.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "surface": { - "count": { - "description": "Sets the number of iso-surfaces between minimum and maximum iso-values. By default this value is 2 meaning that only minimum and maximum surfaces would be drawn.", - "dflt": 2, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the iso-surface. The default fill value of the surface is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "pattern": { - "description": "Sets the surface pattern of the iso-surface 3-D sections. The default pattern of the surface is `all` meaning that the rest of surface elements would be shaded. The check options (either 1 or 2) could be used to draw half of the squares on the surface. Using various combinations of capital `A`, `B`, `C`, `D` and `E` may also be used to reduce the number of triangles on the iso-surfaces and creating other patterns of interest.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "odd", - "even" - ], - "flags": [ - "A", - "B", - "C", - "D", - "E" - ], - "valType": "flaglist" - }, - "role": "object", - "show": { - "description": "Hides/displays surfaces between minimum and maximum iso-values.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - }, - "text": { - "arrayOk": true, - "description": "Sets the text elements associated with the vertices. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "isosurface", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "value": { - "description": "Sets the 4th dimension (value) of the vertices.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "valuehoverformat": { - "description": "Sets the hover text formatting rulefor `value` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "valuesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `value`.", - "editType": "none", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the X coordinates of the vertices on X axis.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the Y coordinates of the vertices on Y axis.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "z": { - "description": "Sets the Z coordinates of the vertices on Z axis.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "zhoverformat": { - "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `zaxis.hoverformat`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "gl3d", - "showLegend" - ], - "meta": { - "description": "Draws isosurfaces between iso-min and iso-max values with coordinates given by four 1-dimensional arrays containing the `value`, `x`, `y` and `z` of every vertex of a uniform or non-uniform 3-D grid. Horizontal or vertical slices, caps as well as spaceframe between iso-min and iso-max values could also be drawn using this trace." - }, - "type": "isosurface" - }, - "mesh3d": { - "animatable": false, - "attributes": { - "alphahull": { - "description": "Determines how the mesh surface triangles are derived from the set of vertices (points) represented by the `x`, `y` and `z` arrays, if the `i`, `j`, `k` arrays are not supplied. For general use of `mesh3d` it is preferred that `i`, `j`, `k` are supplied. If *-1*, Delaunay triangulation is used, which is mainly suitable if the mesh is a single, more or less layer surface that is perpendicular to `delaunayaxis`. In case the `delaunayaxis` intersects the mesh surface at more than one point it will result triangles that are very long in the dimension of `delaunayaxis`. If *>0*, the alpha-shape algorithm is used. In this case, the positive `alphahull` value signals the use of the alpha-shape algorithm, _and_ its value acts as the parameter for the mesh fitting. If *0*, the convex-hull algorithm is used. It is suitable for convex bodies or if the intention is to enclose the `x`, `y` and `z` point set into a convex hull.", - "dflt": -1, - "editType": "calc", - "valType": "number" - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here `intensity`) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as `intensity` and if set, `cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `intensity`. Has no effect when `cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as `intensity` and if set, `cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "description": "Sets the color of the whole mesh", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "contour": { - "color": { - "description": "Sets the color of the contour lines.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "role": "object", - "show": { - "description": "Sets whether or not dynamic contours are shown on hover", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width of the contour lines.", - "dflt": 2, - "editType": "calc", - "max": 16, - "min": 1, - "valType": "number" - } - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "delaunayaxis": { - "description": "Sets the Delaunay axis, which is the axis that is perpendicular to the surface of the Delaunay triangulation. It has an effect if `i`, `j`, `k` are not provided and `alphahull` is set to indicate Delaunay triangulation.", - "dflt": "z", - "editType": "calc", - "valType": "enumerated", - "values": [ - "x", - "y", - "z" - ] - }, - "facecolor": { - "description": "Sets the color of each face Overrides *color* and *vertexcolor*.", - "editType": "calc", - "valType": "data_array" - }, - "facecolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `facecolor`.", - "editType": "none", - "valType": "string" - }, - "flatshading": { - "description": "Determines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "i": { - "description": "A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *first* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `i[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `i` represents a point in space, which is the first vertex of a triangle.", - "editType": "calc", - "valType": "data_array" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "intensity": { - "description": "Sets the intensity values for vertices or cells as defined by `intensitymode`. It can be used for plotting fields on meshes.", - "editType": "calc", - "valType": "data_array" - }, - "intensitymode": { - "description": "Determines the source of `intensity` values.", - "dflt": "vertex", - "editType": "calc", - "valType": "enumerated", - "values": [ - "vertex", - "cell" - ] - }, - "intensitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `intensity`.", - "editType": "none", - "valType": "string" - }, - "isrc": { - "description": "Sets the source reference on Chart Studio Cloud for `i`.", - "editType": "none", - "valType": "string" - }, - "j": { - "description": "A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *second* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `j[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `j` represents a point in space, which is the second vertex of a triangle.", - "editType": "calc", - "valType": "data_array" - }, - "jsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `j`.", - "editType": "none", - "valType": "string" - }, - "k": { - "description": "A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *third* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `k[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `k` represents a point in space, which is the third vertex of a triangle.", - "editType": "calc", - "valType": "data_array" - }, - "ksrc": { - "description": "Sets the source reference on Chart Studio Cloud for `k`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "lighting": { - "ambient": { - "description": "Ambient light increases overall color visibility but can wash out the image.", - "dflt": 0.8, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "diffuse": { - "description": "Represents the extent that incident rays are reflected in a range of angles.", - "dflt": 0.8, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "editType": "calc", - "facenormalsepsilon": { - "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry.", - "dflt": 0.000001, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "fresnel": { - "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", - "dflt": 0.2, - "editType": "calc", - "max": 5, - "min": 0, - "valType": "number" - }, - "role": "object", - "roughness": { - "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", - "dflt": 0.5, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "specular": { - "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", - "dflt": 0.05, - "editType": "calc", - "max": 2, - "min": 0, - "valType": "number" - }, - "vertexnormalsepsilon": { - "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry.", - "dflt": 1e-12, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - }, - "lightposition": { - "editType": "calc", - "role": "object", - "x": { - "description": "Numeric vector, representing the X coordinate for each vertex.", - "dflt": 100000, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - }, - "y": { - "description": "Numeric vector, representing the Y coordinate for each vertex.", - "dflt": 100000, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - }, - "z": { - "description": "Numeric vector, representing the Z coordinate for each vertex.", - "dflt": 0, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "scene": { - "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", - "dflt": "scene", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": false, - "editType": "style", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets the text elements associated with the vertices. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "mesh3d", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "vertexcolor": { - "description": "Sets the color of each vertex Overrides *color*. While Red, green and blue colors are in the range of 0 and 255; in the case of having vertex color data in RGBA format, the alpha color should be normalized to be between 0 and 1.", - "editType": "calc", - "valType": "data_array" - }, - "vertexcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `vertexcolor`.", - "editType": "none", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the X coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the Y coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "z": { - "description": "Sets the Z coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "zcalendar": { - "description": "Sets the calendar system to use with `z` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "zhoverformat": { - "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `zaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "gl3d", - "showLegend" - ], - "meta": { - "description": "Draws sets of triangles with coordinates given by three 1-dimensional arrays in `x`, `y`, `z` and (1) a sets of `i`, `j`, `k` indices (2) Delaunay triangulation or (3) the Alpha-shape algorithm or (4) the Convex-hull algorithm" - }, - "type": "mesh3d" - }, - "ohlc": { - "animatable": false, - "attributes": { - "close": { - "description": "Sets the close values.", - "editType": "calc", - "valType": "data_array" - }, - "closesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `close`.", - "editType": "none", - "valType": "string" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "decreasing": { - "editType": "style", - "line": { - "color": { - "description": "Sets the line color.", - "dflt": "#FF4136", - "editType": "style", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "style", - "role": "object", - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "high": { - "description": "Sets the high values.", - "editType": "calc", - "valType": "data_array" - }, - "highsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `high`.", - "editType": "none", - "valType": "string" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - }, - "split": { - "description": "Show hover information (open, close, high, low) in separate labels, rather than a single unified label. Default: *false*. When set to *true*, `hovertemplate` is ignored.", - "dflt": false, - "editType": "style", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `open`, `high`, `low` and `close`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "increasing": { - "editType": "style", - "line": { - "color": { - "description": "Sets the line color.", - "dflt": "#3D9970", - "editType": "style", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "style", - "role": "object", - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). Note that this style setting can also be set per direction via `increasing.line.dash` and `decreasing.line.dash`.", - "dflt": "solid", - "editType": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "style", - "role": "object", - "width": { - "description": "[object Object] Note that this style setting can also be set per direction via `increasing.line.width` and `decreasing.line.width`.", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "low": { - "description": "Sets the low values.", - "editType": "calc", - "valType": "data_array" - }, - "lowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `low`.", - "editType": "none", - "valType": "string" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "open": { - "description": "Sets the open values.", - "editType": "calc", - "valType": "data_array" - }, - "opensrc": { - "description": "Sets the source reference on Chart Studio Cloud for `open`.", - "editType": "none", - "valType": "string" - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets hover text elements associated with each sample point. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to this trace's sample points.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the width of the open/close tick marks relative to the *x* minimal interval.", - "dflt": 0.3, - "editType": "calc", - "max": 0.5, - "min": 0, - "valType": "number" - }, - "type": "ohlc", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the x coordinates. If absent, linear coordinate will be generated.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "valType": "any" - }, - "xperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "xperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - } - }, - "categories": [ - "cartesian", - "svg", - "showLegend" - ], - "meta": { - "description": "The ohlc (short for Open-High-Low-Close) is a style of financial chart describing open, high, low and close for a given `x` coordinate (most likely time). The tip of the lines represent the `low` and `high` values and the horizontal segments represent the `open` and `close` values. Sample points where the close value is higher (lower) then the open value are called increasing (decreasing). By default, increasing items are drawn in green whereas decreasing are drawn in red." - }, - "type": "ohlc" - }, - "parcats": { - "animatable": false, - "attributes": { - "arrangement": { - "description": "Sets the drag interaction mode for categories and dimensions. If `perpendicular`, the categories can only move along a line perpendicular to the paths. If `freeform`, the categories can freely move on the plane. If `fixed`, the categories and dimensions are stationary.", - "dflt": "perpendicular", - "editType": "plot", - "valType": "enumerated", - "values": [ - "perpendicular", - "freeform", - "fixed" - ] - }, - "bundlecolors": { - "description": "Sort paths so that like colors are bundled together within each category.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "counts": { - "arrayOk": true, - "description": "The number of observations represented by each state. Defaults to 1 so that each state represents one observation", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "countssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `counts`.", - "editType": "none", - "valType": "string" - }, - "dimensions": { - "items": { - "dimension": { - "categoryarray": { - "description": "Sets the order in which categories in this dimension appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", - "editType": "calc", - "valType": "data_array" - }, - "categoryarraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", - "editType": "none", - "valType": "string" - }, - "categoryorder": { - "description": "Specifies the ordering logic for the categories in the dimension. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`.", - "dflt": "trace", - "editType": "calc", - "valType": "enumerated", - "values": [ - "trace", - "category ascending", - "category descending", - "array" - ] - }, - "description": "The dimensions (variables) of the parallel categories diagram.", - "displayindex": { - "description": "The display index of dimension, from left to right, zero indexed, defaults to dimension index.", - "editType": "calc", - "valType": "integer" - }, - "editType": "calc", - "label": { - "description": "The shown name of the dimension.", - "editType": "calc", - "valType": "string" - }, - "role": "object", - "ticktext": { - "description": "Sets alternative tick labels for the categories in this dimension. Only has an effect if `categoryorder` is set to *array*. Should be an array the same length as `categoryarray` Used with `categoryorder`.", - "editType": "calc", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "values": { - "description": "Dimension values. `values[n]` represents the category value of the `n`th point in the dataset, therefore the `values` vector for all dimensions must be the same (longer vectors will be truncated).", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "valuessrc": { - "description": "Sets the source reference on Chart Studio Cloud for `values`.", - "editType": "none", - "valType": "string" - }, - "visible": { - "description": "Shows the dimension when set to `true` (the default). Hides the dimension for `false`.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - } - }, - "role": "object" - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this parcats trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "editType": "calc", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this parcats trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this parcats trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this parcats trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - } - }, - "hoverinfo": { - "arrayOk": false, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "plot", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "count", - "probability" - ], - "valType": "flaglist" - }, - "hoveron": { - "description": "Sets the hover interaction mode for the parcats diagram. If `category`, hover interaction take place per category. If `color`, hover interactions take place per color per category. If `dimension`, hover interactions take place across all categories per dimension.", - "dflt": "category", - "editType": "plot", - "valType": "enumerated", - "values": [ - "category", - "color", - "dimension" - ] - }, - "hovertemplate": { - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `count`, `probability`, `category`, `categorycount`, `colorcount` and `bandcolorcount`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "labelfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. Has an effect only if in `line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `line.color`) or the bounds set in `line.cmin` and `line.cmax` Has an effect only if in `line.color` is set to a numerical array. Defaults to `false` when `line.cmin` and `line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `line.cmin` and `line.cmax` if set.", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "hovertemplate": { - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `count` and `probability`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `line.color` is set to a numerical array. If true, `line.cmin` will correspond to the last color in the array and `line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "shape": { - "description": "Sets the shape of the paths. If `linear`, paths are composed of straight lines. If `hspline`, paths are composed of horizontal curved splines", - "dflt": "linear", - "editType": "plot", - "valType": "enumerated", - "values": [ - "linear", - "hspline" - ] - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `line.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "sortpaths": { - "description": "Sets the path sorting algorithm. If `forward`, sort paths based on dimension categories from left to right. If `backward`, sort paths based on dimensions categories from right to left.", - "dflt": "forward", - "editType": "plot", - "valType": "enumerated", - "values": [ - "forward", - "backward" - ] - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "tickfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "auto", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "type": "parcats", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [ - "noOpacity" - ], - "meta": { - "description": "Parallel categories diagram for multidimensional categorical data." - }, - "type": "parcats" - }, - "parcoords": { - "animatable": false, - "attributes": { - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "dimensions": { - "items": { - "dimension": { - "constraintrange": { - "description": "The domain range to which the filter on the dimension is constrained. Must be an array of `[fromValue, toValue]` with `fromValue <= toValue`, or if `multiselect` is not disabled, you may give an array of arrays, where each inner array is `[fromValue, toValue]`.", - "dimensions": "1-2", - "editType": "plot", - "freeLength": true, - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" - } - ], - "valType": "info_array" - }, - "description": "The dimensions (variables) of the parallel coordinates chart. 2..60 dimensions are supported.", - "editType": "calc", - "label": { - "description": "The shown name of the dimension.", - "editType": "plot", - "valType": "string" - }, - "multiselect": { - "description": "Do we allow multiple selection ranges or just a single range?", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "none", - "valType": "string" - }, - "range": { - "description": "The domain range that represents the full, shown axis extent. Defaults to the `values` extent. Must be an array of `[fromValue, toValue]` with finite numbers as elements.", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "number" - }, - { - "editType": "plot", - "valType": "number" - } - ], - "valType": "info_array" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`.", - "editType": "plot", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear.", - "editType": "plot", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "values": { - "description": "Dimension values. `values[n]` represents the value of the `n`th point in the dataset, therefore the `values` vector for all dimensions must be the same (longer vectors will be truncated). Each value must be a finite number.", - "editType": "calc", - "valType": "data_array" - }, - "valuessrc": { - "description": "Sets the source reference on Chart Studio Cloud for `values`.", - "editType": "none", - "valType": "string" - }, - "visible": { - "description": "Shows the dimension when set to `true` (the default). Hides the dimension for `false`.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - } - } - }, - "role": "object" - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this parcoords trace .", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "editType": "plot", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this parcoords trace .", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this parcoords trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this parcoords trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - } - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "labelangle": { - "description": "Sets the angle of the labels with respect to the horizontal. For example, a `tickangle` of -90 draws the labels vertically. Tilted labels with *labelangle* may be positioned better inside margins when `labelposition` is set to *bottom*.", - "dflt": 0, - "editType": "plot", - "valType": "angle" - }, - "labelfont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "labelside": { - "description": "Specifies the location of the `label`. *top* positions labels above, next to the title *bottom* positions labels below the graph Tilted labels with *labelangle* may be positioned better inside margins when `labelposition` is set to *bottom*.", - "dflt": "top", - "editType": "plot", - "valType": "enumerated", - "values": [ - "top", - "bottom" - ] - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. Has an effect only if in `line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": false, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `line.color`) or the bounds set in `line.cmin` and `line.cmax` Has an effect only if in `line.color` is set to a numerical array. Defaults to `false` when `line.cmin` and `line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `line.cmin` and `line.cmax` if set.", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": [ - [ - 0, - "#440154" - ], - [ - 0.06274509803921569, - "#48186a" - ], - [ - 0.12549019607843137, - "#472d7b" - ], - [ - 0.18823529411764706, - "#424086" - ], - [ - 0.25098039215686274, - "#3b528b" - ], - [ - 0.3137254901960784, - "#33638d" - ], - [ - 0.3764705882352941, - "#2c728e" - ], - [ - 0.4392156862745098, - "#26828e" - ], - [ - 0.5019607843137255, - "#21918c" - ], - [ - 0.5647058823529412, - "#1fa088" - ], - [ - 0.6274509803921569, - "#28ae80" - ], - [ - 0.6901960784313725, - "#3fbc73" - ], - [ - 0.7529411764705882, - "#5ec962" - ], - [ - 0.8156862745098039, - "#84d44b" - ], - [ - 0.8784313725490196, - "#addc30" - ], - [ - 0.9411764705882353, - "#d8e219" - ], - [ - 1, - "#fde725" - ] - ], - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `line.color` is set to a numerical array. If true, `line.cmin` will correspond to the last color in the array and `line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `line.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "rangefont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "tickfont": { - "color": { - "editType": "plot", - "valType": "color" - }, - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "auto", - "editType": "plot", - "valType": "string" - }, - "size": { - "editType": "plot", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "type": "parcoords", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "plot", - "line": { - "color": { - "description": "Sets the base color of unselected lines. in connection with `unselected.line.opacity`.", - "dflt": "#7f7f7f", - "editType": "plot", - "valType": "color" - }, - "editType": "plot", - "opacity": { - "description": "Sets the opacity of unselected lines. The default *auto* decreases the opacity smoothly as the number of lines increases. Use *1* to achieve exact `unselected.line.color`.", - "dflt": "auto", - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "role": "object" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [ - "gl", - "regl", - "noOpacity", - "noHover" - ], - "meta": { - "description": "Parallel coordinates for multidimensional exploratory data analysis. The samples are specified in `dimensions`. The colors are set in `line.color`." - }, - "type": "parcoords" - }, - "pie": { - "animatable": false, - "attributes": { - "automargin": { - "description": "Determines whether outside text labels can push the margins.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "direction": { - "description": "Specifies the direction at which succeeding sectors follow one another.", - "dflt": "counterclockwise", - "editType": "calc", - "valType": "enumerated", - "values": [ - "clockwise", - "counterclockwise" - ] - }, - "dlabel": { - "description": "Sets the label step. See `label0` for more info.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this pie trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "editType": "calc", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this pie trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this pie trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this pie trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - } - }, - "hole": { - "description": "Sets the fraction of the radius to cut out of the pie. Use this to make a donut chart.", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "label", - "text", - "value", - "percent", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `label`, `color`, `value`, `percent` and `text`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "insidetextfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `textinfo` lying inside the sector.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "insidetextorientation": { - "description": "Controls the orientation of the text inside chart sectors. When set to *auto*, text may be oriented in any direction in order to be as big as possible in the middle of a sector. The *horizontal* option orients text to be parallel with the bottom of the chart, and may make text smaller in order to achieve that goal. The *radial* option orients text along the radius of the sector. The *tangential* option orients text perpendicular to the radius of the sector.", - "dflt": "auto", - "editType": "plot", - "valType": "enumerated", - "values": [ - "horizontal", - "radial", - "tangential", - "auto" - ] - }, - "label0": { - "description": "Alternate to `labels`. Builds a numeric set of labels. Use with `dlabel` where `label0` is the starting label and `dlabel` the step.", - "dflt": 0, - "editType": "calc", - "valType": "number" - }, - "labels": { - "description": "Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label.", - "editType": "calc", - "valType": "data_array" - }, - "labelssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `labels`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "marker": { - "colors": { - "description": "Sets the color of each sector. If not specified, the default trace color set is used to pick the sector colors.", - "editType": "calc", - "valType": "data_array" - }, - "colorssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `colors`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "line": { - "color": { - "arrayOk": true, - "description": "Sets the color of the line enclosing each sector.", - "dflt": "#444", - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the line enclosing each sector.", - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "pattern": { - "bgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", - "editType": "style", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the pattern within the marker.", - "editType": "style", - "fgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", - "editType": "style", - "valType": "color" - }, - "fgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", - "editType": "none", - "valType": "string" - }, - "fgopacity": { - "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "fillmode": { - "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", - "dflt": "replace", - "editType": "style", - "valType": "enumerated", - "values": [ - "replace", - "overlay" - ] - }, - "path": { - "arrayOk": true, - "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", - "editType": "style", - "valType": "string" - }, - "pathsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `path`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shape": { - "arrayOk": true, - "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", - "dflt": "", - "editType": "style", - "valType": "enumerated", - "values": [ - "", - "/", - "\\", - "x", - "-", - "|", - "+", - "." - ] - }, - "shapesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shape`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", - "dflt": 8, - "editType": "style", - "min": 0, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "solidity": { - "arrayOk": true, - "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", - "dflt": 0.3, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "soliditysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", - "editType": "none", - "valType": "string" - } - }, - "role": "object" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "outsidetextfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `textinfo` lying outside the sector.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "pull": { - "arrayOk": true, - "description": "Sets the fraction of larger radius to pull the sectors out from the center. This can be a constant to pull all slices apart from each other equally or an array to highlight one or more slices.", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "pullsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `pull`.", - "editType": "none", - "valType": "string" - }, - "rotation": { - "description": "Instead of the first slice starting at 12 o'clock, rotate to some other angle.", - "dflt": 0, - "editType": "calc", - "valType": "angle" - }, - "scalegroup": { - "description": "If there are multiple pie charts that should be sized according to their totals, link them by providing a non-empty group id here shared by every trace in the same group.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "sort": { - "description": "Determines whether or not the sectors are reordered from largest to smallest.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "editType": "plot", - "valType": "data_array" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `textinfo`.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textinfo": { - "description": "Determines which trace information appear on the graph.", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "label", - "text", - "value", - "percent" - ], - "valType": "flaglist" - }, - "textposition": { - "arrayOk": true, - "description": "Specifies the location of the `textinfo`.", - "dflt": "auto", - "editType": "plot", - "valType": "enumerated", - "values": [ - "inside", - "outside", - "auto", - "none" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", - "editType": "none", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `label`, `color`, `value`, `percent` and `text`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "title": { - "editType": "plot", - "font": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `title`.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "position": { - "description": "Specifies the location of the `title`.", - "editType": "plot", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle center", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "role": "object", - "text": { - "description": "Sets the title of the chart. If it is empty, no title is displayed.", - "dflt": "", - "editType": "plot", - "valType": "string" - } - }, - "type": "pie", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "values": { - "description": "Sets the values of the sectors. If omitted, we count occurrences of each label.", - "editType": "calc", - "valType": "data_array" - }, - "valuessrc": { - "description": "Sets the source reference on Chart Studio Cloud for `values`.", - "editType": "none", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [ - "pie-like", - "pie", - "showLegend" - ], - "layoutAttributes": { - "extendpiecolors": { - "description": "If `true`, the pie slice colors (whether given by `piecolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "hiddenlabels": { - "description": "hiddenlabels is the funnelarea & pie chart analog of visible:'legendonly' but it can contain many labels, and can simultaneously hide slices from several pies/funnelarea charts", - "editType": "calc", - "valType": "data_array" - }, - "hiddenlabelssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hiddenlabels`.", - "editType": "none", - "valType": "string" - }, - "piecolorway": { - "description": "Sets the default pie slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendpiecolors`.", - "editType": "calc", - "valType": "colorlist" - } - }, - "meta": { - "description": "A data visualized by the sectors of the pie is set in `values`. The sector labels are set in `labels`. The sector colors are set in `marker.colors`" - }, - "type": "pie" - }, - "sankey": { - "animatable": false, - "attributes": { - "arrangement": { - "description": "If value is `snap` (the default), the node arrangement is assisted by automatic snapping of elements to preserve space between nodes specified via `nodepad`. If value is `perpendicular`, the nodes can only move along a line perpendicular to the flow. If value is `freeform`, the nodes can freely move on the plane. If value is `fixed`, the nodes are stationary.", - "dflt": "snap", - "editType": "calc", - "valType": "enumerated", - "values": [ - "snap", - "perpendicular", - "freeform", - "fixed" - ] - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this sankey trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "editType": "calc", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this sankey trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this sankey trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this sankey trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - } - }, - "hoverinfo": { - "arrayOk": false, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. Note that this attribute is superseded by `node.hoverinfo` and `node.hoverinfo` for nodes and links respectively.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [], - "valType": "flaglist" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "calc", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "calc", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "font": { - "color": { - "arrayOk": true, - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "calc", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "link": { - "arrowlen": { - "description": "Sets the length (in px) of the links arrow, if 0 no arrow will be drawn.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the `link` color. It can be a single value, or an array for specifying color for each `link`. If `link.color` is omitted, then by default, a translucent grey link will be used.", - "editType": "calc", - "valType": "color" - }, - "colorscales": { - "items": { - "concentrationscales": { - "cmax": { - "description": "Sets the upper bound of the color domain.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain.", - "dflt": 0, - "editType": "calc", - "valType": "number" - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": [ - [ - 0, - "white" - ], - [ - 1, - "black" - ] - ], - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "editType": "calc", - "label": { - "description": "The label of the links to color based on their concentration within a flow.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "calc", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - } - } - }, - "role": "object" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "customdata": { - "description": "Assigns extra data to each link.", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "description": "The links of the Sankey plot.", - "editType": "calc", - "hovercolor": { - "arrayOk": true, - "description": "Sets the `link` hover color. It can be a single value, or an array for specifying hover colors for each `link`. If `link.hovercolor` is omitted, then by default, links will become slightly more opaque when hovered over.", - "editType": "calc", - "valType": "color" - }, - "hovercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovercolor`.", - "editType": "none", - "valType": "string" - }, - "hoverinfo": { - "description": "Determines which trace information appear when hovering links. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "none", - "skip" - ] - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "calc", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "calc", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "font": { - "color": { - "arrayOk": true, - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "calc", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `value` and `label`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "label": { - "description": "The shown name of the link.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "labelsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `label`.", - "editType": "none", - "valType": "string" - }, - "line": { - "color": { - "arrayOk": true, - "description": "Sets the color of the `line` around each `link`.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the `line` around each `link`.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "role": "object", - "source": { - "description": "An integer number `[0..nodes.length - 1]` that represents the source node.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "sourcesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `source`.", - "editType": "none", - "valType": "string" - }, - "target": { - "description": "An integer number `[0..nodes.length - 1]` that represents the target node.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "targetsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `target`.", - "editType": "none", - "valType": "string" - }, - "value": { - "description": "A numeric value representing the flow volume value.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "valuesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `value`.", - "editType": "none", - "valType": "string" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "node": { - "align": { - "description": "Sets the alignment method used to position the nodes along the horizontal axis.", - "dflt": "justify", - "editType": "calc", - "valType": "enumerated", - "values": [ - "justify", - "left", - "right", - "center" - ] - }, - "color": { - "arrayOk": true, - "description": "Sets the `node` color. It can be a single value, or an array for specifying color for each `node`. If `node.color` is omitted, then the default `Plotly` color palette will be cycled through to have a variety of colors. These defaults are not fully opaque, to allow some visibility of what is beneath the node.", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "customdata": { - "description": "Assigns extra data to each node.", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "description": "The nodes of the Sankey plot.", - "editType": "calc", - "groups": { - "description": "Groups of nodes. Each group is defined by an array with the indices of the nodes it contains. Multiple groups can be specified.", - "dflt": [], - "dimensions": 2, - "editType": "calc", - "freeLength": true, - "impliedEdits": { - "x": [], - "y": [] - }, - "items": { - "editType": "calc", - "valType": "number" - }, - "valType": "info_array" - }, - "hoverinfo": { - "description": "Determines which trace information appear when hovering nodes. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "none", - "skip" - ] - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "calc", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "calc", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "font": { - "color": { - "arrayOk": true, - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "calc", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `value` and `label`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "label": { - "description": "The shown name of the node.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "labelsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `label`.", - "editType": "none", - "valType": "string" - }, - "line": { - "color": { - "arrayOk": true, - "description": "Sets the color of the `line` around each `node`.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the `line` around each `node`.", - "dflt": 0.5, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "pad": { - "arrayOk": false, - "description": "Sets the padding (in px) between the `nodes`.", - "dflt": 20, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "role": "object", - "thickness": { - "arrayOk": false, - "description": "Sets the thickness (in px) of the `nodes`.", - "dflt": 20, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "x": { - "description": "The normalized horizontal position of the node.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "The normalized vertical position of the node.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - } - }, - "orientation": { - "description": "Sets the orientation of the Sankey diagram.", - "dflt": "h", - "editType": "calc", - "valType": "enumerated", - "values": [ - "v", - "h" - ] - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "textfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "auto", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "type": "sankey", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "valueformat": { - "description": "Sets the value formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", - "dflt": ".3s", - "editType": "calc", - "valType": "string" - }, - "valuesuffix": { - "description": "Adds a unit to follow the value in the hover tooltip. Add a space if a separation is necessary from the value.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [ - "noOpacity" - ], - "meta": { - "description": "Sankey plots for network flow data analysis. The nodes are specified in `nodes` and the links between sources and targets in `links`. The colors are set in `nodes[i].color` and `links[i].color`, otherwise defaults are used." - }, - "type": "sankey" - }, - "scatter": { - "animatable": true, - "attributes": { - "alignmentgroup": { - "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "cliponaxis": { - "description": "Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "dx": { - "anim": true, - "description": "Sets the x coordinate step. See `x0` for more info.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "dy": { - "anim": true, - "description": "Sets the y coordinate step. See `y0` for more info.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "error_x": { - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", - "editType": "none", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `array`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the stroke color of the error bars.", - "editType": "style", - "valType": "color" - }, - "copy_ystyle": { - "editType": "plot", - "valType": "boolean" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", - "valType": "boolean" - }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] - }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "plot", - "min": 0, - "valType": "number" - } - }, - "error_y": { - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", - "editType": "none", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `array`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the stroke color of the error bars.", - "editType": "style", - "valType": "color" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", - "valType": "boolean" - }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] - }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "plot", - "min": 0, - "valType": "number" - } - }, - "fill": { - "description": "Sets the area to fill with a solid color. Defaults to *none* unless this trace is stacked, then it gets *tonexty* (*tonextx*) if `orientation` is *v* (*h*) Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "tozeroy", - "tozerox", - "tonexty", - "tonextx", - "toself", - "tonext" - ] - }, - "fillcolor": { - "anim": true, - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. If fillgradient is specified, fillcolor is ignored except for setting the background color of the hover label, if any.", - "editType": "style", - "valType": "color" - }, - "fillgradient": { - "colorscale": { - "description": "Sets the fill gradient colors as a color scale. The color scale is interpreted as a gradient applied in the direction specified by *orientation*, from the lowest to the highest value of the scatter plot along that axis, or from the center to the most distant point from it, if orientation is *radial*.", - "editType": "style", - "valType": "colorscale" - }, - "description": "Sets a fill gradient. If not specified, the fillcolor is used instead.", - "editType": "calc", - "role": "object", - "start": { - "description": "Sets the gradient start value. It is given as the absolute position on the axis determined by the orientiation. E.g., if orientation is *horizontal*, the gradient will be horizontal and start from the x-position given by start. If omitted, the gradient starts at the lowest value of the trace along the respective axis. Ignored if orientation is *radial*.", - "editType": "calc", - "valType": "number" - }, - "stop": { - "description": "Sets the gradient end value. It is given as the absolute position on the axis determined by the orientiation. E.g., if orientation is *horizontal*, the gradient will be horizontal and end at the x-position given by end. If omitted, the gradient ends at the highest value of the trace along the respective axis. Ignored if orientation is *radial*.", - "editType": "calc", - "valType": "number" - }, - "type": { - "description": "Sets the type/orientation of the color gradient for the fill. Defaults to *none*.", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "radial", - "horizontal", - "vertical", - "none" - ] - } - }, - "fillpattern": { - "bgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", - "editType": "style", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the pattern within the marker.", - "editType": "style", - "fgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", - "editType": "style", - "valType": "color" - }, - "fgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", - "editType": "none", - "valType": "string" - }, - "fgopacity": { - "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "fillmode": { - "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", - "dflt": "replace", - "editType": "style", - "valType": "enumerated", - "values": [ - "replace", - "overlay" - ] - }, - "path": { - "arrayOk": true, - "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", - "editType": "style", - "valType": "string" - }, - "pathsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `path`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shape": { - "arrayOk": true, - "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", - "dflt": "", - "editType": "style", - "valType": "enumerated", - "values": [ - "", - "/", - "\\", - "x", - "-", - "|", - "+", - "." - ] - }, - "shapesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shape`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", - "dflt": 8, - "editType": "style", - "min": 0, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "solidity": { - "arrayOk": true, - "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", - "dflt": 0.3, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "soliditysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", - "editType": "none", - "valType": "string" - } - }, - "groupnorm": { - "description": "Only relevant when `stackgroup` is used, and only the first `groupnorm` found in the `stackgroup` will be used - including if `visible` is *legendonly* but not if it is `false`. Sets the normalization for the sum of this `stackgroup`. With *fraction*, the value of each trace at each location is divided by the sum of all trace values at that location. *percent* is the same but multiplied by 100 to show percentages. If there are multiple subplots, or multiple `stackgroup`s on one subplot, each will be normalized within its own set.", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "", - "fraction", - "percent" - ] - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hoveron": { - "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", - "editType": "style", - "flags": [ - "points", - "fills" - ], - "valType": "flaglist" - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "anim": true, - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "backoff": { - "arrayOk": true, - "description": "Sets the line back off from the end point of the nth line segment (in px). This option is useful e.g. to avoid overlap with arrowhead markers. With *auto* the lines would trim before markers if `marker.angleref` is set to *previous*.", - "dflt": "auto", - "editType": "plot", - "min": 0, - "valType": "number" - }, - "backoffsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `backoff`.", - "editType": "none", - "valType": "string" - }, - "color": { - "anim": true, - "description": "Sets the line color.", - "editType": "style", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "plot", - "role": "object", - "shape": { - "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", - "dflt": "linear", - "editType": "plot", - "valType": "enumerated", - "values": [ - "linear", - "spline", - "hv", - "vh", - "hvh", - "vhv" - ] - }, - "simplify": { - "description": "Simplifies lines by removing nearly-collinear points. When transitioning lines, it may be desirable to disable this so that the number of points along the resulting SVG path is unaffected.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "smoothing": { - "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", - "dflt": 1, - "editType": "plot", - "max": 1.3, - "min": 0, - "valType": "number" - }, - "width": { - "anim": true, - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "marker": { - "angle": { - "anim": false, - "arrayOk": true, - "description": "Sets the marker angle in respect to `angleref`.", - "dflt": 0, - "editType": "plot", - "valType": "angle" - }, - "angleref": { - "anim": false, - "description": "Sets the reference for marker angle. With *previous*, angle 0 points along the line from the previous point to this one. With *up*, angle 0 points toward the top of the screen.", - "dflt": "up", - "editType": "plot", - "valType": "enumerated", - "values": [ - "previous", - "up" - ] - }, - "anglesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `angle`.", - "editType": "none", - "valType": "string" - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "anim": true, - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "gradient": { - "color": { - "arrayOk": true, - "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "type": { - "arrayOk": true, - "description": "Sets the type of gradient used to fill the markers", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "radial", - "horizontal", - "vertical", - "none" - ] - }, - "typesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `type`.", - "editType": "none", - "valType": "string" - } - }, - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "anim": true, - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "width": { - "anim": true, - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "maxdisplayed": { - "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "opacity": { - "anim": true, - "arrayOk": true, - "description": "Sets the marker opacity.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "anim": true, - "arrayOk": true, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemin": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemode": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", - "dflt": "diameter", - "editType": "calc", - "valType": "enumerated", - "values": [ - "diameter", - "area" - ] - }, - "sizeref": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "standoff": { - "anim": true, - "arrayOk": true, - "description": "Moves the marker away from the data point in the direction of `angle` (in px). This can be useful for example if you have another marker at this location and you want to point an arrowhead marker at it.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "standoffsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `standoff`.", - "editType": "none", - "valType": "string" - }, - "symbol": { - "arrayOk": true, - "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", - "dflt": "circle", - "editType": "style", - "valType": "enumerated", - "values": [ - 0, - "0", - "circle", - 100, - "100", - "circle-open", - 200, - "200", - "circle-dot", - 300, - "300", - "circle-open-dot", - 1, - "1", - "square", - 101, - "101", - "square-open", - 201, - "201", - "square-dot", - 301, - "301", - "square-open-dot", - 2, - "2", - "diamond", - 102, - "102", - "diamond-open", - 202, - "202", - "diamond-dot", - 302, - "302", - "diamond-open-dot", - 3, - "3", - "cross", - 103, - "103", - "cross-open", - 203, - "203", - "cross-dot", - 303, - "303", - "cross-open-dot", - 4, - "4", - "x", - 104, - "104", - "x-open", - 204, - "204", - "x-dot", - 304, - "304", - "x-open-dot", - 5, - "5", - "triangle-up", - 105, - "105", - "triangle-up-open", - 205, - "205", - "triangle-up-dot", - 305, - "305", - "triangle-up-open-dot", - 6, - "6", - "triangle-down", - 106, - "106", - "triangle-down-open", - 206, - "206", - "triangle-down-dot", - 306, - "306", - "triangle-down-open-dot", - 7, - "7", - "triangle-left", - 107, - "107", - "triangle-left-open", - 207, - "207", - "triangle-left-dot", - 307, - "307", - "triangle-left-open-dot", - 8, - "8", - "triangle-right", - 108, - "108", - "triangle-right-open", - 208, - "208", - "triangle-right-dot", - 308, - "308", - "triangle-right-open-dot", - 9, - "9", - "triangle-ne", - 109, - "109", - "triangle-ne-open", - 209, - "209", - "triangle-ne-dot", - 309, - "309", - "triangle-ne-open-dot", - 10, - "10", - "triangle-se", - 110, - "110", - "triangle-se-open", - 210, - "210", - "triangle-se-dot", - 310, - "310", - "triangle-se-open-dot", - 11, - "11", - "triangle-sw", - 111, - "111", - "triangle-sw-open", - 211, - "211", - "triangle-sw-dot", - 311, - "311", - "triangle-sw-open-dot", - 12, - "12", - "triangle-nw", - 112, - "112", - "triangle-nw-open", - 212, - "212", - "triangle-nw-dot", - 312, - "312", - "triangle-nw-open-dot", - 13, - "13", - "pentagon", - 113, - "113", - "pentagon-open", - 213, - "213", - "pentagon-dot", - 313, - "313", - "pentagon-open-dot", - 14, - "14", - "hexagon", - 114, - "114", - "hexagon-open", - 214, - "214", - "hexagon-dot", - 314, - "314", - "hexagon-open-dot", - 15, - "15", - "hexagon2", - 115, - "115", - "hexagon2-open", - 215, - "215", - "hexagon2-dot", - 315, - "315", - "hexagon2-open-dot", - 16, - "16", - "octagon", - 116, - "116", - "octagon-open", - 216, - "216", - "octagon-dot", - 316, - "316", - "octagon-open-dot", - 17, - "17", - "star", - 117, - "117", - "star-open", - 217, - "217", - "star-dot", - 317, - "317", - "star-open-dot", - 18, - "18", - "hexagram", - 118, - "118", - "hexagram-open", - 218, - "218", - "hexagram-dot", - 318, - "318", - "hexagram-open-dot", - 19, - "19", - "star-triangle-up", - 119, - "119", - "star-triangle-up-open", - 219, - "219", - "star-triangle-up-dot", - 319, - "319", - "star-triangle-up-open-dot", - 20, - "20", - "star-triangle-down", - 120, - "120", - "star-triangle-down-open", - 220, - "220", - "star-triangle-down-dot", - 320, - "320", - "star-triangle-down-open-dot", - 21, - "21", - "star-square", - 121, - "121", - "star-square-open", - 221, - "221", - "star-square-dot", - 321, - "321", - "star-square-open-dot", - 22, - "22", - "star-diamond", - 122, - "122", - "star-diamond-open", - 222, - "222", - "star-diamond-dot", - 322, - "322", - "star-diamond-open-dot", - 23, - "23", - "diamond-tall", - 123, - "123", - "diamond-tall-open", - 223, - "223", - "diamond-tall-dot", - 323, - "323", - "diamond-tall-open-dot", - 24, - "24", - "diamond-wide", - 124, - "124", - "diamond-wide-open", - 224, - "224", - "diamond-wide-dot", - 324, - "324", - "diamond-wide-open-dot", - 25, - "25", - "hourglass", - 125, - "125", - "hourglass-open", - 26, - "26", - "bowtie", - 126, - "126", - "bowtie-open", - 27, - "27", - "circle-cross", - 127, - "127", - "circle-cross-open", - 28, - "28", - "circle-x", - 128, - "128", - "circle-x-open", - 29, - "29", - "square-cross", - 129, - "129", - "square-cross-open", - 30, - "30", - "square-x", - 130, - "130", - "square-x-open", - 31, - "31", - "diamond-cross", - 131, - "131", - "diamond-cross-open", - 32, - "32", - "diamond-x", - 132, - "132", - "diamond-x-open", - 33, - "33", - "cross-thin", - 133, - "133", - "cross-thin-open", - 34, - "34", - "x-thin", - 134, - "134", - "x-thin-open", - 35, - "35", - "asterisk", - 135, - "135", - "asterisk-open", - 36, - "36", - "hash", - 136, - "136", - "hash-open", - 236, - "236", - "hash-dot", - 336, - "336", - "hash-open-dot", - 37, - "37", - "y-up", - 137, - "137", - "y-up-open", - 38, - "38", - "y-down", - 138, - "138", - "y-down-open", - 39, - "39", - "y-left", - 139, - "139", - "y-left-open", - 40, - "40", - "y-right", - 140, - "140", - "y-right-open", - 41, - "41", - "line-ew", - 141, - "141", - "line-ew-open", - 42, - "42", - "line-ns", - 142, - "142", - "line-ns-open", - 43, - "43", - "line-ne", - 143, - "143", - "line-ne-open", - 44, - "44", - "line-nw", - 144, - "144", - "line-nw-open", - 45, - "45", - "arrow-up", - 145, - "145", - "arrow-up-open", - 46, - "46", - "arrow-down", - 146, - "146", - "arrow-down-open", - 47, - "47", - "arrow-left", - 147, - "147", - "arrow-left-open", - 48, - "48", - "arrow-right", - 148, - "148", - "arrow-right-open", - 49, - "49", - "arrow-bar-up", - 149, - "149", - "arrow-bar-up-open", - 50, - "50", - "arrow-bar-down", - 150, - "150", - "arrow-bar-down-open", - 51, - "51", - "arrow-bar-left", - 151, - "151", - "arrow-bar-left-open", - 52, - "52", - "arrow-bar-right", - 152, - "152", - "arrow-bar-right-open", - 53, - "53", - "arrow", - 153, - "153", - "arrow-open", - 54, - "54", - "arrow-wide", - 154, - "154", - "arrow-wide-open" - ] - }, - "symbolsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", - "editType": "none", - "valType": "string" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "mode": { - "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "lines", - "markers", - "text" - ], - "valType": "flaglist" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "offsetgroup": { - "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "orientation": { - "description": "Only relevant in the following cases: 1. when `scattermode` is set to *group*. 2. when `stackgroup` is used, and only the first `orientation` found in the `stackgroup` will be used - including if `visible` is *legendonly* but not if it is `false`. Sets the stacking direction. With *v* (*h*), the y (x) values of subsequent traces are added. Also affects the default value of `fill`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "v", - "h" - ] - }, - "selected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of selected points.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stackgaps": { - "description": "Only relevant when `stackgroup` is used, and only the first `stackgaps` found in the `stackgroup` will be used - including if `visible` is *legendonly* but not if it is `false`. Determines how we handle locations at which other traces in this group have data but this one does not. With *infer zero* we insert a zero at these locations. With *interpolate* we linearly interpolate between existing values, and extrapolate a constant beyond the existing values.", - "dflt": "infer zero", - "editType": "calc", - "valType": "enumerated", - "values": [ - "infer zero", - "interpolate" - ] - }, - "stackgroup": { - "description": "Set several scatter traces (on the same subplot) to the same stackgroup in order to add their y values (or their x values if `orientation` is *h*). If blank or omitted this trace will not be stacked. Stacking also turns `fill` on by default, using *tonexty* (*tonextx*) if `orientation` is *h* (*v*) and sets the default `mode` to *lines* irrespective of point count. You can only stack on a numeric (linear or log) axis. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the text font.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textposition": { - "arrayOk": true, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", - "editType": "none", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. ", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "type": "scatter", - "uid": { - "anim": true, - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of unselected points, applied only when a selection exists.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "anim": true, - "description": "Sets the x coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "x0": { - "anim": true, - "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "valType": "any" - }, - "xperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "xperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "anim": true, - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "y0": { - "anim": true, - "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "yperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "valType": "any" - }, - "yperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "yperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - } - }, - "categories": [ - "cartesian", - "svg", - "symbols", - "errorBarsOK", - "showLegend", - "scatter-like", - "zoomScale" - ], - "layoutAttributes": { - "scattergap": { - "description": "Sets the gap (in plot fraction) between scatter points of adjacent location coordinates. Defaults to `bargap`.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "scattermode": { - "description": "Determines how scatter points at the same location coordinate are displayed on the graph. With *group*, the scatter points are plotted next to one another centered around the shared location. With *overlay*, the scatter points are plotted over one another, you might need to reduce *opacity* to see multiple scatter points.", - "dflt": "overlay", - "editType": "calc", - "valType": "enumerated", - "values": [ - "group", - "overlay" - ] - } - }, - "meta": { - "description": "The scatter trace type encompasses line charts, scatter charts, text charts, and bubble charts. The data visualized as scatter point or lines is set in `x` and `y`. Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays." - }, - "type": "scatter" - }, - "scatter3d": { - "animatable": false, - "attributes": { - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "error_x": { - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", - "editType": "none", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `array`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the stroke color of the error bars.", - "editType": "calc", - "valType": "color" - }, - "copy_zstyle": { - "editType": "calc", - "valType": "boolean" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", - "valType": "boolean" - }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] - }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "error_y": { - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", - "editType": "none", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `array`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the stroke color of the error bars.", - "editType": "calc", - "valType": "color" - }, - "copy_zstyle": { - "editType": "calc", - "valType": "boolean" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", - "valType": "boolean" - }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] - }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "error_z": { - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", - "editType": "none", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `array`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the stroke color of the error bars.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", - "valType": "boolean" - }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] - }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets text elements associated with each (x,y,z) triplet. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y,z) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. Has an effect only if in `line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `line.color`) or the bounds set in `line.cmin` and `line.cmax` Has an effect only if in `line.color` is set to a numerical array. Defaults to `false` when `line.cmin` and `line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `line.cmin` and `line.cmax` if set.", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "calc", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "calc", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "calc", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "calc", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "any" - }, - { - "editType": "calc", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "calc", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "calc", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "calc", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "calc", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "calc", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "calc", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "calc", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "dash": { - "description": "Sets the dash style of the lines.", - "dflt": "solid", - "editType": "calc", - "valType": "enumerated", - "values": [ - "dash", - "dashdot", - "dot", - "longdash", - "longdashdot", - "solid" - ] - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `line.color` is set to a numerical array. If true, `line.cmin` will correspond to the last color in the array and `line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `line.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "marker": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "calc", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "calc", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "calc", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "calc", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "any" - }, - { - "editType": "calc", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "calc", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "calc", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "calc", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "calc", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "calc", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "calc", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "calc", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "role": "object", - "width": { - "arrayOk": false, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "opacity": { - "arrayOk": false, - "description": "Sets the marker opacity. Note that the marker opacity for scatter3d traces must be a scalar value for performance reasons. To set a blending opacity value (i.e. which is not transparent), set *marker.color* to an rgba color and use its alpha channel.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "arrayOk": true, - "description": "Sets the marker size (in px).", - "dflt": 8, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemin": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemode": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", - "dflt": "diameter", - "editType": "calc", - "valType": "enumerated", - "values": [ - "diameter", - "area" - ] - }, - "sizeref": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "symbol": { - "arrayOk": true, - "description": "Sets the marker symbol type.", - "dflt": "circle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "circle", - "circle-open", - "cross", - "diamond", - "diamond-open", - "square", - "square-open", - "x" - ] - }, - "symbolsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", - "editType": "none", - "valType": "string" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "mode": { - "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", - "dflt": "lines+markers", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "lines", - "markers", - "text" - ], - "valType": "flaglist" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "projection": { - "editType": "calc", - "role": "object", - "x": { - "editType": "calc", - "opacity": { - "description": "Sets the projection color.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "scale": { - "description": "Sets the scale factor determining the size of the projection marker points.", - "dflt": 0.6666666666666666, - "editType": "calc", - "max": 10, - "min": 0, - "valType": "number" - }, - "show": { - "description": "Sets whether or not projections are shown along the x axis.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "y": { - "editType": "calc", - "opacity": { - "description": "Sets the projection color.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "scale": { - "description": "Sets the scale factor determining the size of the projection marker points.", - "dflt": 0.6666666666666666, - "editType": "calc", - "max": 10, - "min": 0, - "valType": "number" - }, - "show": { - "description": "Sets whether or not projections are shown along the y axis.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "z": { - "editType": "calc", - "opacity": { - "description": "Sets the projection color.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "scale": { - "description": "Sets the scale factor determining the size of the projection marker points.", - "dflt": 0.6666666666666666, - "editType": "calc", - "max": 10, - "min": 0, - "valType": "number" - }, - "show": { - "description": "Sets whether or not projections are shown along the z axis.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - } - }, - "scene": { - "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", - "dflt": "scene", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "surfaceaxis": { - "description": "If *-1*, the scatter points are not fill with a surface If *0*, *1*, *2*, the scatter points are filled with a Delaunay surface about the x, y, z respectively.", - "dflt": -1, - "editType": "calc", - "valType": "enumerated", - "values": [ - -1, - 0, - 1, - 2 - ] - }, - "surfacecolor": { - "description": "Sets the surface fill color.", - "editType": "calc", - "valType": "color" - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (x,y,z) triplet. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y,z) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the text font.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textposition": { - "arrayOk": true, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "top center", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", - "editType": "none", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. ", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "type": "scatter3d", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the x coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "z": { - "description": "Sets the z coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "zcalendar": { - "description": "Sets the calendar system to use with `z` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "zhoverformat": { - "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `zaxis.hoverformat`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "gl3d", - "symbols", - "showLegend", - "scatter-like" - ], - "meta": { - "description": "The data visualized as scatter point or lines in 3D dimension is set in `x`, `y`, `z`. Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` Projections are achieved via `projection`. Surface fills are achieved via `surfaceaxis`.", - "hrName": "scatter_3d" - }, - "type": "scatter3d" - }, - "scattercarpet": { - "animatable": false, - "attributes": { - "a": { - "description": "Sets the a-axis coordinates.", - "editType": "calc", - "valType": "data_array" - }, - "asrc": { - "description": "Sets the source reference on Chart Studio Cloud for `a`.", - "editType": "none", - "valType": "string" - }, - "b": { - "description": "Sets the b-axis coordinates.", - "editType": "calc", - "valType": "data_array" - }, - "bsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `b`.", - "editType": "none", - "valType": "string" - }, - "carpet": { - "description": "An identifier for this carpet, so that `scattercarpet` and `contourcarpet` traces can specify a carpet plot on which they lie", - "editType": "calc", - "valType": "string" - }, - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "fill": { - "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterternary has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "toself", - "tonext" - ] - }, - "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "style", - "valType": "color" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "a", - "b", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hoveron": { - "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", - "editType": "style", - "flags": [ - "points", - "fills" - ], - "valType": "flaglist" - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (a,b) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b). To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "backoff": { - "arrayOk": true, - "description": "Sets the line back off from the end point of the nth line segment (in px). This option is useful e.g. to avoid overlap with arrowhead markers. With *auto* the lines would trim before markers if `marker.angleref` is set to *previous*.", - "dflt": "auto", - "editType": "plot", - "min": 0, - "valType": "number" - }, - "backoffsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `backoff`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the line color.", - "editType": "style", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "calc", - "role": "object", - "shape": { - "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", - "dflt": "linear", - "editType": "plot", - "valType": "enumerated", - "values": [ - "linear", - "spline" - ] - }, - "smoothing": { - "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", - "dflt": 1, - "editType": "plot", - "max": 1.3, - "min": 0, - "valType": "number" - }, - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "marker": { - "angle": { - "arrayOk": true, - "description": "Sets the marker angle in respect to `angleref`.", - "dflt": 0, - "editType": "plot", - "valType": "angle" - }, - "angleref": { - "description": "Sets the reference for marker angle. With *previous*, angle 0 points along the line from the previous point to this one. With *up*, angle 0 points toward the top of the screen.", - "dflt": "up", - "editType": "plot", - "valType": "enumerated", - "values": [ - "previous", - "up" - ] - }, - "anglesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `angle`.", - "editType": "none", - "valType": "string" - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "gradient": { - "color": { - "arrayOk": true, - "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "type": { - "arrayOk": true, - "description": "Sets the type of gradient used to fill the markers", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "radial", - "horizontal", - "vertical", - "none" - ] - }, - "typesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `type`.", - "editType": "none", - "valType": "string" - } - }, - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "maxdisplayed": { - "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "opacity": { - "arrayOk": true, - "description": "Sets the marker opacity.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "arrayOk": true, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemin": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemode": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", - "dflt": "diameter", - "editType": "calc", - "valType": "enumerated", - "values": [ - "diameter", - "area" - ] - }, - "sizeref": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "standoff": { - "arrayOk": true, - "description": "Moves the marker away from the data point in the direction of `angle` (in px). This can be useful for example if you have another marker at this location and you want to point an arrowhead marker at it.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "standoffsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `standoff`.", - "editType": "none", - "valType": "string" - }, - "symbol": { - "arrayOk": true, - "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", - "dflt": "circle", - "editType": "style", - "valType": "enumerated", - "values": [ - 0, - "0", - "circle", - 100, - "100", - "circle-open", - 200, - "200", - "circle-dot", - 300, - "300", - "circle-open-dot", - 1, - "1", - "square", - 101, - "101", - "square-open", - 201, - "201", - "square-dot", - 301, - "301", - "square-open-dot", - 2, - "2", - "diamond", - 102, - "102", - "diamond-open", - 202, - "202", - "diamond-dot", - 302, - "302", - "diamond-open-dot", - 3, - "3", - "cross", - 103, - "103", - "cross-open", - 203, - "203", - "cross-dot", - 303, - "303", - "cross-open-dot", - 4, - "4", - "x", - 104, - "104", - "x-open", - 204, - "204", - "x-dot", - 304, - "304", - "x-open-dot", - 5, - "5", - "triangle-up", - 105, - "105", - "triangle-up-open", - 205, - "205", - "triangle-up-dot", - 305, - "305", - "triangle-up-open-dot", - 6, - "6", - "triangle-down", - 106, - "106", - "triangle-down-open", - 206, - "206", - "triangle-down-dot", - 306, - "306", - "triangle-down-open-dot", - 7, - "7", - "triangle-left", - 107, - "107", - "triangle-left-open", - 207, - "207", - "triangle-left-dot", - 307, - "307", - "triangle-left-open-dot", - 8, - "8", - "triangle-right", - 108, - "108", - "triangle-right-open", - 208, - "208", - "triangle-right-dot", - 308, - "308", - "triangle-right-open-dot", - 9, - "9", - "triangle-ne", - 109, - "109", - "triangle-ne-open", - 209, - "209", - "triangle-ne-dot", - 309, - "309", - "triangle-ne-open-dot", - 10, - "10", - "triangle-se", - 110, - "110", - "triangle-se-open", - 210, - "210", - "triangle-se-dot", - 310, - "310", - "triangle-se-open-dot", - 11, - "11", - "triangle-sw", - 111, - "111", - "triangle-sw-open", - 211, - "211", - "triangle-sw-dot", - 311, - "311", - "triangle-sw-open-dot", - 12, - "12", - "triangle-nw", - 112, - "112", - "triangle-nw-open", - 212, - "212", - "triangle-nw-dot", - 312, - "312", - "triangle-nw-open-dot", - 13, - "13", - "pentagon", - 113, - "113", - "pentagon-open", - 213, - "213", - "pentagon-dot", - 313, - "313", - "pentagon-open-dot", - 14, - "14", - "hexagon", - 114, - "114", - "hexagon-open", - 214, - "214", - "hexagon-dot", - 314, - "314", - "hexagon-open-dot", - 15, - "15", - "hexagon2", - 115, - "115", - "hexagon2-open", - 215, - "215", - "hexagon2-dot", - 315, - "315", - "hexagon2-open-dot", - 16, - "16", - "octagon", - 116, - "116", - "octagon-open", - 216, - "216", - "octagon-dot", - 316, - "316", - "octagon-open-dot", - 17, - "17", - "star", - 117, - "117", - "star-open", - 217, - "217", - "star-dot", - 317, - "317", - "star-open-dot", - 18, - "18", - "hexagram", - 118, - "118", - "hexagram-open", - 218, - "218", - "hexagram-dot", - 318, - "318", - "hexagram-open-dot", - 19, - "19", - "star-triangle-up", - 119, - "119", - "star-triangle-up-open", - 219, - "219", - "star-triangle-up-dot", - 319, - "319", - "star-triangle-up-open-dot", - 20, - "20", - "star-triangle-down", - 120, - "120", - "star-triangle-down-open", - 220, - "220", - "star-triangle-down-dot", - 320, - "320", - "star-triangle-down-open-dot", - 21, - "21", - "star-square", - 121, - "121", - "star-square-open", - 221, - "221", - "star-square-dot", - 321, - "321", - "star-square-open-dot", - 22, - "22", - "star-diamond", - 122, - "122", - "star-diamond-open", - 222, - "222", - "star-diamond-dot", - 322, - "322", - "star-diamond-open-dot", - 23, - "23", - "diamond-tall", - 123, - "123", - "diamond-tall-open", - 223, - "223", - "diamond-tall-dot", - 323, - "323", - "diamond-tall-open-dot", - 24, - "24", - "diamond-wide", - 124, - "124", - "diamond-wide-open", - 224, - "224", - "diamond-wide-dot", - 324, - "324", - "diamond-wide-open-dot", - 25, - "25", - "hourglass", - 125, - "125", - "hourglass-open", - 26, - "26", - "bowtie", - 126, - "126", - "bowtie-open", - 27, - "27", - "circle-cross", - 127, - "127", - "circle-cross-open", - 28, - "28", - "circle-x", - 128, - "128", - "circle-x-open", - 29, - "29", - "square-cross", - 129, - "129", - "square-cross-open", - 30, - "30", - "square-x", - 130, - "130", - "square-x-open", - 31, - "31", - "diamond-cross", - 131, - "131", - "diamond-cross-open", - 32, - "32", - "diamond-x", - 132, - "132", - "diamond-x-open", - 33, - "33", - "cross-thin", - 133, - "133", - "cross-thin-open", - 34, - "34", - "x-thin", - 134, - "134", - "x-thin-open", - 35, - "35", - "asterisk", - 135, - "135", - "asterisk-open", - 36, - "36", - "hash", - 136, - "136", - "hash-open", - 236, - "236", - "hash-dot", - 336, - "336", - "hash-open-dot", - 37, - "37", - "y-up", - 137, - "137", - "y-up-open", - 38, - "38", - "y-down", - 138, - "138", - "y-down-open", - 39, - "39", - "y-left", - 139, - "139", - "y-left-open", - 40, - "40", - "y-right", - 140, - "140", - "y-right-open", - 41, - "41", - "line-ew", - 141, - "141", - "line-ew-open", - 42, - "42", - "line-ns", - 142, - "142", - "line-ns-open", - 43, - "43", - "line-ne", - 143, - "143", - "line-ne-open", - 44, - "44", - "line-nw", - 144, - "144", - "line-nw-open", - 45, - "45", - "arrow-up", - 145, - "145", - "arrow-up-open", - 46, - "46", - "arrow-down", - 146, - "146", - "arrow-down-open", - 47, - "47", - "arrow-left", - 147, - "147", - "arrow-left-open", - 48, - "48", - "arrow-right", - 148, - "148", - "arrow-right-open", - 49, - "49", - "arrow-bar-up", - 149, - "149", - "arrow-bar-up-open", - 50, - "50", - "arrow-bar-down", - 150, - "150", - "arrow-bar-down-open", - 51, - "51", - "arrow-bar-left", - 151, - "151", - "arrow-bar-left-open", - 52, - "52", - "arrow-bar-right", - 152, - "152", - "arrow-bar-right-open", - 53, - "53", - "arrow", - 153, - "153", - "arrow-open", - 54, - "54", - "arrow-wide", - 154, - "154", - "arrow-wide-open" - ] - }, - "symbolsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", - "editType": "none", - "valType": "string" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "mode": { - "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", - "dflt": "markers", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "lines", - "markers", - "text" - ], - "valType": "flaglist" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "selected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of selected points.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (a,b) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b). If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the text font.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textposition": { - "arrayOk": true, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", - "editType": "none", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `a`, `b` and `text`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "type": "scattercarpet", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of unselected points, applied only when a selection exists.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - } - }, - "categories": [ - "svg", - "carpet", - "symbols", - "showLegend", - "carpetDependent", - "zoomScale" - ], - "meta": { - "description": "Plots a scatter trace on either the first carpet axis or the carpet axis with a matching `carpet` attribute.", - "hrName": "scatter_carpet" - }, - "type": "scattercarpet" - }, - "scattergeo": { - "animatable": false, - "attributes": { - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "featureidkey": { - "description": "Sets the key in GeoJSON features which is used as id to match the items included in the `locations` array. Only has an effect when `geojson` is set. Support nested property, for example *properties.name*.", - "dflt": "id", - "editType": "calc", - "valType": "string" - }, - "fill": { - "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape.", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "toself" - ] - }, - "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "calc", - "valType": "color" - }, - "geo": { - "description": "Sets a reference between this trace's geospatial coordinates and a geographic map. If *geo* (the default value), the geospatial coordinates refer to `layout.geo`. If *geo2*, the geospatial coordinates refer to `layout.geo2`, and so on.", - "dflt": "geo", - "editType": "calc", - "valType": "subplotid" - }, - "geojson": { - "description": "Sets optional GeoJSON data associated with this trace. If not given, the features on the base map are used when `locations` is set. It can be set as a valid GeoJSON object or as a URL string. Note that we only accept GeoJSONs of type *FeatureCollection* or *Feature* with geometries of type *Polygon* or *MultiPolygon*.", - "editType": "calc", - "valType": "any" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "lon", - "lat", - "location", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (lon,lat) pair or item in `locations`. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) or `locations` coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "lat": { - "description": "Sets the latitude coordinates (in degrees North).", - "editType": "calc", - "valType": "data_array" - }, - "latsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lat`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "color": { - "description": "Sets the line color.", - "editType": "calc", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "calc", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "calc", - "role": "object", - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "locationmode": { - "description": "The library used by the *country names* `locationmode` option is changing in an upcoming version. Country names in existing plots may not work in the new version. Determines the set of locations used to match entries in `locations` to regions on the map. Values *ISO-3*, *USA-states*, *country names* correspond to features on the base map and value *geojson-id* corresponds to features from a custom GeoJSON linked to the `geojson` attribute.", - "dflt": "ISO-3", - "editType": "calc", - "valType": "enumerated", - "values": [ - "ISO-3", - "USA-states", - "country names", - "geojson-id" - ] - }, - "locations": { - "description": "Sets the coordinates via location IDs or names. Coordinates correspond to the centroid of each location given. See `locationmode` for more info.", - "editType": "calc", - "valType": "data_array" - }, - "locationssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `locations`.", - "editType": "none", - "valType": "string" - }, - "lon": { - "description": "Sets the longitude coordinates (in degrees East).", - "editType": "calc", - "valType": "data_array" - }, - "lonsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lon`.", - "editType": "none", - "valType": "string" - }, - "marker": { - "angle": { - "arrayOk": true, - "description": "Sets the marker angle in respect to `angleref`.", - "dflt": 0, - "editType": "calc", - "valType": "angle" - }, - "angleref": { - "description": "Sets the reference for marker angle. With *previous*, angle 0 points along the line from the previous point to this one. With *up*, angle 0 points toward the top of the screen. With *north*, angle 0 points north based on the current map projection.", - "dflt": "up", - "editType": "calc", - "valType": "enumerated", - "values": [ - "previous", - "up", - "north" - ] - }, - "anglesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `angle`.", - "editType": "none", - "valType": "string" - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "calc", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "calc", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "calc", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "calc", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "calc", - "items": [ - { - "editType": "calc", + "minallowed": { + "description": "Determines the minimum range of this axis.", + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "ticks", + "min": 0, + "valType": "number" + }, + "minor": { + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "ticks", + "impliedEdits": { + "tickmode": "linear" + }, "valType": "any" - }, - { - "editType": "calc", + }, + "editType": "ticks", + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "ticks", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "ticks", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "editType": "ticks", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 5, + "editType": "ticks", + "min": 0, + "valType": "integer" + }, + "role": "object", + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "editType": "ticks", + "valType": "boolean" + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "ticks", + "impliedEdits": { + "tickmode": "linear" + }, "valType": "any" - } + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "ticks", + "valType": "color" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "editType": "ticks", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "ticks", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "ticks", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "editType": "ticks", + "min": 0, + "valType": "number" + } + }, + "minorloglabels": { + "description": "Determines how minor log labels are displayed. If *small digits*, small digits i.e. 2 or 5 are displayed. If *complete*, complete digits are displayed. If *none*, no labels are displayed.", + "dflt": "small digits", + "editType": "calc", + "valType": "enumerated", + "values": [ + "small digits", + "complete", + "none" + ] + }, + "mirror": { + "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", + "dflt": false, + "editType": "ticks+layoutstyle", + "valType": "enumerated", + "values": [ + true, + "ticks", + false, + "all", + "allticks" + ] + }, + "modebardisable": { + "description": "Disables certain modebar buttons for this axis. *autoscale* disables the autoscale buttons, *zoominout* disables the zoom-in and zoom-out buttons.", + "dflt": "none", + "editType": "modebar", + "extras": [ + "none" + ], + "flags": [ + "autoscale", + "zoominout" + ], + "valType": "flaglist" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "ticks", + "min": 0, + "valType": "integer" + }, + "overlaying": { + "description": "If set a same-letter axis id, this axis is overlaid on top of the corresponding same-letter axis, with traces and axes visible for both axes. If *false*, this axis does not overlay any same-letter axes. In this case, for axes with overlapping domains only the highest-numbered axis will be visible.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "free", + "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", + "/^y([2-9]|[1-9][0-9]+)?( domain)?$/" + ] + }, + "position": { + "description": "Sets the position of this axis in the plotting space (in normalized coordinates). Only has an effect if `anchor` is set to *free*.", + "dflt": 0, + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "range": { + "anim": true, + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. Leaving either or both elements `null` impacts the default `autorange`.", + "editType": "axrange", + "impliedEdits": { + "autorange": false + }, + "items": [ + { + "anim": true, + "editType": "axrange", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + { + "anim": true, + "editType": "axrange", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + } + ], + "valType": "info_array" + }, + "rangebreaks": { + "items": { + "rangebreak": { + "bounds": { + "description": "Sets the lower and upper bounds of this axis rangebreak. Can be used with `pattern`.", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "dvalue": { + "description": "Sets the size of each `values` item. The default is one day in milliseconds.", + "dflt": 86400000, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether this axis rangebreak is enabled or disabled. Please note that `rangebreaks` only work for *date* axis type.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "none", + "valType": "string" + }, + "pattern": { + "description": "Determines a pattern on the time line that generates breaks. If *day of week* - days of the week in English e.g. 'Sunday' or `sun` (matching is case-insensitive and considers only the first three characters), as well as Sunday-based integers between 0 and 6. If *hour* - hour (24-hour clock) as decimal numbers between 0 and 24. for more info. Examples: - { pattern: 'day of week', bounds: [6, 1] } or simply { bounds: ['sat', 'mon'] } breaks from Saturday to Monday (i.e. skips the weekends). - { pattern: 'hour', bounds: [17, 8] } breaks from 5pm to 8am (i.e. skips non-work hours).", + "editType": "calc", + "valType": "enumerated", + "values": [ + "day of week", + "hour", + "" + ] + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "values": { + "description": "Sets the coordinate values corresponding to the rangebreaks. An alternative to `bounds`. Use `dvalue` to set the size of the values along the axis.", + "editType": "calc", + "freeLength": true, + "items": { + "editType": "calc", + "valType": "any" + }, + "valType": "info_array" + } + } + }, + "role": "object" + }, + "rangemode": { + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ] + }, + "role": "object", + "scaleanchor": { + "description": "If set to another axis id (e.g. `x2`, `y`), the range of this axis changes together with the range of the corresponding axis such that the scale of pixels per unit is in a constant ratio. Both axes are still zoomable, but when you zoom one, the other will zoom the same amount, keeping a fixed midpoint. `constrain` and `constraintoward` determine how we enforce the constraint. You can chain these, ie `yaxis: {scaleanchor: *x*}, xaxis2: {scaleanchor: *y*}` but you can only link axes of the same `type`. The linked axis can have the opposite letter (to constrain the aspect ratio) or the same letter (to match scales across subplots). Loops (`yaxis: {scaleanchor: *x*}, xaxis: {scaleanchor: *y*}` or longer) are redundant and the last constraint encountered will be ignored to avoid possible inconsistent constraints via `scaleratio`. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden. Setting `false` allows to remove a default constraint (occasionally, you may need to prevent a default `scaleanchor` constraint from being applied, eg. when having an image trace `yaxis: {scaleanchor: \"x\"}` is set automatically in order for pixels to be rendered as squares, setting `yaxis: {scaleanchor: false}` allows to remove the constraint).", + "editType": "plot", + "valType": "enumerated", + "values": [ + "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", + "/^y([2-9]|[1-9][0-9]+)?( domain)?$/", + false + ] + }, + "scaleratio": { + "description": "If this axis is linked to another by `scaleanchor`, this determines the pixel to unit scale ratio. For example, if this value is 10, then every unit on this axis spans 10 times the number of pixels as a unit on the linked axis. Use this for example to create an elevation profile where the vertical scale is exaggerated a fixed amount with respect to the horizontal.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "ticks", + "valType": "boolean" + }, + "shift": { + "description": "Moves the axis a given number of pixels from where it would have been otherwise. Accepts both positive and negative values, which will shift the axis either right or left, respectively. If `autoshift` is set to true, then this defaults to a padding of -3 if `side` is set to *left*. and defaults to +3 if `side` is set to *right*. Defaults to 0 if `autoshift` is set to false. Only has an effect if `anchor` is set to *free*.", + "editType": "plot", + "valType": "number" + }, + "showdividers": { + "description": "Determines whether or not a dividers are drawn between the category levels of this axis. Only has an effect on *multicategory* axes.", + "dflt": true, + "editType": "ticks", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "editType": "ticks", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": false, + "editType": "ticks+layoutstyle", + "valType": "boolean" + }, + "showspikes": { + "description": "Determines whether or not spikes (aka droplines) are drawn for this axis. Note: This only takes affect when hovermode = closest", + "dflt": false, + "editType": "modebar", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "ticks", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "side": { + "description": "Determines whether a x (y) axis is positioned at the *bottom* (*left*) or *top* (*right*) of the plotting area.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "top", + "bottom", + "left", + "right" + ] + }, + "spikecolor": { + "description": "Sets the spike color. If undefined, will use the series color", + "dflt": null, + "editType": "none", + "valType": "color" + }, + "spikedash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "dash", + "editType": "none", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "spikemode": { + "description": "Determines the drawing mode for the spike line If *toaxis*, the line is drawn from the data point to the axis the series is plotted on. If *across*, the line is drawn across the entire plot area, and supercedes *toaxis*. If *marker*, then a marker dot is drawn on the axis the series is plotted on", + "dflt": "toaxis", + "editType": "none", + "flags": [ + "toaxis", + "across", + "marker" ], - "valType": "info_array" - }, - "editType": "calc", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "calc", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "calc", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "calc", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "calc", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "calc", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "valType": "color" + "valType": "flaglist" }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" + "spikesnap": { + "description": "Determines whether spikelines are stuck to the cursor or to the closest datapoints.", + "dflt": "hovered data", + "editType": "none", + "valType": "enumerated", + "values": [ + "data", + "cursor", + "hovered data" + ] }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "spikethickness": { + "description": "Sets the width (in px) of the zero line.", + "dflt": 3, + "editType": "none", + "valType": "number" }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "ticks", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "ticks", + "valType": "angle" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "ticks", + "valType": "color" }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "tickfont": { + "color": { + "editType": "ticks", + "valType": "color" + }, + "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.", + "editType": "ticks", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "ticks", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "ticks", + "valType": "string" + }, + "size": { + "editType": "ticks", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "ticks", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "ticks", + "valType": "string" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "calc", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "gradient": { - "color": { - "arrayOk": true, - "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "type": { - "arrayOk": true, - "description": "Sets the type of gradient used to fill the markers", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "radial", - "horizontal", - "vertical", - "none" - ] - }, - "typesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `type`.", - "editType": "none", - "valType": "string" - } - }, - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "editType": "calc", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "opacity": { - "arrayOk": true, - "description": "Sets the marker opacity.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "arrayOk": true, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemin": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemode": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", - "dflt": "diameter", - "editType": "calc", - "valType": "enumerated", - "values": [ - "diameter", - "area" - ] - }, - "sizeref": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "standoff": { - "arrayOk": true, - "description": "Moves the marker away from the data point in the direction of `angle` (in px). This can be useful for example if you have another marker at this location and you want to point an arrowhead marker at it.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "standoffsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `standoff`.", - "editType": "none", - "valType": "string" - }, - "symbol": { - "arrayOk": true, - "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", - "dflt": "circle", - "editType": "calc", - "valType": "enumerated", - "values": [ - 0, - "0", - "circle", - 100, - "100", - "circle-open", - 200, - "200", - "circle-dot", - 300, - "300", - "circle-open-dot", - 1, - "1", - "square", - 101, - "101", - "square-open", - 201, - "201", - "square-dot", - 301, - "301", - "square-open-dot", - 2, - "2", - "diamond", - 102, - "102", - "diamond-open", - 202, - "202", - "diamond-dot", - 302, - "302", - "diamond-open-dot", - 3, - "3", - "cross", - 103, - "103", - "cross-open", - 203, - "203", - "cross-dot", - 303, - "303", - "cross-open-dot", - 4, - "4", - "x", - 104, - "104", - "x-open", - 204, - "204", - "x-dot", - 304, - "304", - "x-open-dot", - 5, - "5", - "triangle-up", - 105, - "105", - "triangle-up-open", - 205, - "205", - "triangle-up-dot", - 305, - "305", - "triangle-up-open-dot", - 6, - "6", - "triangle-down", - 106, - "106", - "triangle-down-open", - 206, - "206", - "triangle-down-dot", - 306, - "306", - "triangle-down-open-dot", - 7, - "7", - "triangle-left", - 107, - "107", - "triangle-left-open", - 207, - "207", - "triangle-left-dot", - 307, - "307", - "triangle-left-open-dot", - 8, - "8", - "triangle-right", - 108, - "108", - "triangle-right-open", - 208, - "208", - "triangle-right-dot", - 308, - "308", - "triangle-right-open-dot", - 9, - "9", - "triangle-ne", - 109, - "109", - "triangle-ne-open", - 209, - "209", - "triangle-ne-dot", - 309, - "309", - "triangle-ne-open-dot", - 10, - "10", - "triangle-se", - 110, - "110", - "triangle-se-open", - 210, - "210", - "triangle-se-dot", - 310, - "310", - "triangle-se-open-dot", - 11, - "11", - "triangle-sw", - 111, - "111", - "triangle-sw-open", - 211, - "211", - "triangle-sw-dot", - 311, - "311", - "triangle-sw-open-dot", - 12, - "12", - "triangle-nw", - 112, - "112", - "triangle-nw-open", - 212, - "212", - "triangle-nw-dot", - 312, - "312", - "triangle-nw-open-dot", - 13, - "13", - "pentagon", - 113, - "113", - "pentagon-open", - 213, - "213", - "pentagon-dot", - 313, - "313", - "pentagon-open-dot", - 14, - "14", - "hexagon", - 114, - "114", - "hexagon-open", - 214, - "214", - "hexagon-dot", - 314, - "314", - "hexagon-open-dot", - 15, - "15", - "hexagon2", - 115, - "115", - "hexagon2-open", - 215, - "215", - "hexagon2-dot", - 315, - "315", - "hexagon2-open-dot", - 16, - "16", - "octagon", - 116, - "116", - "octagon-open", - 216, - "216", - "octagon-dot", - 316, - "316", - "octagon-open-dot", - 17, - "17", - "star", - 117, - "117", - "star-open", - 217, - "217", - "star-dot", - 317, - "317", - "star-open-dot", - 18, - "18", - "hexagram", - 118, - "118", - "hexagram-open", - 218, - "218", - "hexagram-dot", - 318, - "318", - "hexagram-open-dot", - 19, - "19", - "star-triangle-up", - 119, - "119", - "star-triangle-up-open", - 219, - "219", - "star-triangle-up-dot", - 319, - "319", - "star-triangle-up-open-dot", - 20, - "20", - "star-triangle-down", - 120, - "120", - "star-triangle-down-open", - 220, - "220", - "star-triangle-down-dot", - 320, - "320", - "star-triangle-down-open-dot", - 21, - "21", - "star-square", - 121, - "121", - "star-square-open", - 221, - "221", - "star-square-dot", - 321, - "321", - "star-square-open-dot", - 22, - "22", - "star-diamond", - 122, - "122", - "star-diamond-open", - 222, - "222", - "star-diamond-dot", - 322, - "322", - "star-diamond-open-dot", - 23, - "23", - "diamond-tall", - 123, - "123", - "diamond-tall-open", - 223, - "223", - "diamond-tall-dot", - 323, - "323", - "diamond-tall-open-dot", - 24, - "24", - "diamond-wide", - 124, - "124", - "diamond-wide-open", - 224, - "224", - "diamond-wide-dot", - 324, - "324", - "diamond-wide-open-dot", - 25, - "25", - "hourglass", - 125, - "125", - "hourglass-open", - 26, - "26", - "bowtie", - 126, - "126", - "bowtie-open", - 27, - "27", - "circle-cross", - 127, - "127", - "circle-cross-open", - 28, - "28", - "circle-x", - 128, - "128", - "circle-x-open", - 29, - "29", - "square-cross", - 129, - "129", - "square-cross-open", - 30, - "30", - "square-x", - 130, - "130", - "square-x-open", - 31, - "31", - "diamond-cross", - 131, - "131", - "diamond-cross-open", - 32, - "32", - "diamond-x", - 132, - "132", - "diamond-x-open", - 33, - "33", - "cross-thin", - 133, - "133", - "cross-thin-open", - 34, - "34", - "x-thin", - 134, - "134", - "x-thin-open", - 35, - "35", - "asterisk", - 135, - "135", - "asterisk-open", - 36, - "36", - "hash", - 136, - "136", - "hash-open", - 236, - "236", - "hash-dot", - 336, - "336", - "hash-open-dot", - 37, - "37", - "y-up", - 137, - "137", - "y-up-open", - 38, - "38", - "y-down", - 138, - "138", - "y-down-open", - 39, - "39", - "y-left", - 139, - "139", - "y-left-open", - 40, - "40", - "y-right", - 140, - "140", - "y-right-open", - 41, - "41", - "line-ew", - 141, - "141", - "line-ew-open", - 42, - "42", - "line-ns", - 142, - "142", - "line-ns-open", - 43, - "43", - "line-ne", - 143, - "143", - "line-ne-open", - 44, - "44", - "line-nw", - 144, - "144", - "line-nw-open", - 45, - "45", - "arrow-up", - 145, - "145", - "arrow-up-open", - 46, - "46", - "arrow-down", - 146, - "146", - "arrow-down-open", - 47, - "47", - "arrow-left", - 147, - "147", - "arrow-left-open", - 48, - "48", - "arrow-right", - 148, - "148", - "arrow-right-open", - 49, - "49", - "arrow-bar-up", - 149, - "149", - "arrow-bar-up-open", - 50, - "50", - "arrow-bar-down", - 150, - "150", - "arrow-bar-down-open", - 51, - "51", - "arrow-bar-left", - 151, - "151", - "arrow-bar-left-open", - 52, - "52", - "arrow-bar-right", - 152, - "152", - "arrow-bar-right-open", - 53, - "53", - "arrow", - 153, - "153", - "arrow-open", - 54, - "54", - "arrow-wide", - 154, - "154", - "arrow-wide-open" - ] - }, - "symbolsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", - "editType": "none", - "valType": "string" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "mode": { - "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", - "dflt": "markers", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "lines", - "markers", - "text" - ], - "valType": "flaglist" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "selected": { - "editType": "calc", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of selected points.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of selected points.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "role": "object" - } - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (lon,lat) pair or item in `locations`. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) or `locations` coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the text font.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textposition": { - "arrayOk": true, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", - "editType": "none", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `lat`, `lon`, `location` and `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "type": "scattergeo", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "calc", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of unselected points, applied only when a selection exists.", - "editType": "calc", - "min": 0, - "valType": "number" + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "ticks", + "items": [ + { + "editType": "ticks", + "valType": "any" + }, + { + "editType": "ticks", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "ticks", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "ticks", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "ticks", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabelindex": { + "arrayOk": true, + "description": "Only for axes with `type` *date* or *linear*. Instead of drawing the major tick label, draw the label for the minor tick that is n positions away from the major tick. E.g. to always draw the label for the minor tick before each major tick, choose `ticklabelindex` -1. This is useful for date axes with `ticklabelmode` *period* if you want to label the period that ends with each major tick instead of the period that begins there.", + "editType": "calc", + "valType": "integer" + }, + "ticklabelindexsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticklabelindex`.", + "editType": "none", + "valType": "string" + }, + "ticklabelmode": { + "description": "Determines where tick labels are drawn with respect to their corresponding ticks and grid lines. Only has an effect for axes of `type` *date* When set to *period*, tick labels are drawn in the middle of the period between ticks.", + "dflt": "instant", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "instant", + "period" + ] + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. Otherwise on *category* and *multicategory* axes the default is *allow*. In other cases the default is *hide past div*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn with respect to the axis. Please note that top or bottom has no effect on x axes or when `ticklabelmode` is set to *period* or when `tickson` is set to *boundaries*. Similarly, left or right has no effect on y axes or when `ticklabelmode` is set to *period* or when `tickson` is set to *boundaries*. Has no effect on *multicategory* axes. When used on axes linked by `matches` or `scaleanchor`, no extra padding for inside labels would be added by autorange, so that the scales could match.", + "dflt": "outside", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelshift": { + "description": "Shifts the tick labels by the specified number of pixels in parallel to the axis. Positive values move the labels in the positive direction of the axis.", + "dflt": 0, + "editType": "ticks", + "valType": "integer" + }, + "ticklabelstandoff": { + "description": "Sets the standoff distance (in px) between the axis tick labels and their default position. A positive `ticklabelstandoff` moves the labels farther away from the plot area if `ticklabelposition` is *outside*, and deeper into the plot area if `ticklabelposition` is *inside*. A negative `ticklabelstandoff` works in the opposite direction, moving outside ticks towards the plot area and inside ticks towards the outside. If the negative value is large enough, inside ticks can even end up outside and vice versa.", + "dflt": 0, + "editType": "ticks", + "valType": "integer" + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "ticks", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "ticks", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). If *sync*, the number of ticks will sync with the overlayed axis set by `overlaying` property.", + "editType": "ticks", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array", + "sync" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "ticks", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "tickson": { + "description": "Determines where ticks and grid lines are drawn with respect to their corresponding tick labels. Only has an effect for axes of `type` *category* or *multicategory*. When set to *boundaries*, ticks and grid lines are drawn half a category to the left/bottom of labels.", + "dflt": "labels", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "labels", + "boundaries" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "ticks", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "ticks", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "ticks", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "ticks", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "ticks", + "font": { + "color": { + "editType": "ticks", + "valType": "color" + }, + "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.", + "editType": "ticks", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "ticks", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "ticks", + "valType": "string" + }, + "size": { + "editType": "ticks", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "ticks", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "ticks", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "standoff": { + "description": "Sets the standoff distance (in px) between the axis labels and the title text The default value is a function of the axis tick labels, the title `font.size` and the axis `linewidth`. Note that the axis title position is always constrained within the margins, so the actual standoff distance is always less than the set or default value. By setting `standoff` and turning on `automargin`, plotly.js will push the margins to fit the axis title at given standoff distance.", + "editType": "ticks", + "min": 0, + "valType": "number" + }, + "text": { + "description": "Sets the title of this axis.", + "editType": "ticks", + "valType": "string" + } + }, + "type": { + "_noTemplating": true, + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", + "dflt": "-", + "editType": "calc", + "valType": "enumerated", + "values": [ + "-", + "linear", + "log", + "date", + "category", + "multicategory" + ] + }, + "uirevision": { + "description": "Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`.", + "editType": "none", + "valType": "any" + }, + "unifiedhovertitle": { + "editType": "none", + "role": "object", + "text": { + "description": "Template string used for rendering the title that appear on x or y unified hover box. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value.", + "dflt": "", + "editType": "none", + "valType": "string" + } + }, + "visible": { + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "editType": "plot", + "valType": "boolean" + }, + "zeroline": { + "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines.", + "editType": "ticks", + "valType": "boolean" + }, + "zerolinecolor": { + "description": "Sets the line color of the zero line.", + "dflt": "#444", + "editType": "ticks", + "valType": "color" + }, + "zerolinelayer": { + "description": "Sets the layer on which this zeroline is displayed. If *above traces*, this zeroline is displayed above all the subplot's traces If *below traces*, this zeroline is displayed below all the subplot's traces, but above the grid lines. Limitation: *zerolinelayer* currently has no effect if the *zorder* property is set on any trace.", + "dflt": "below traces", + "editType": "plot", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] + }, + "zerolinewidth": { + "description": "Sets the width (in px) of the zero line.", + "dflt": 1, + "editType": "ticks", + "valType": "number" + } } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of unselected points, applied only when a selection exists.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "role": "object" - } - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] } - }, - "categories": [ - "geo", - "symbols", - "showLegend", - "scatter-like" - ], - "meta": { - "description": "The data visualized as scatter point or lines on a geographic map is provided either by longitude/latitude pairs in `lon` and `lat` respectively or by geographic location IDs or names in `locations`.", - "hrName": "scatter_geo" - }, - "type": "scattergeo" }, - "scattergl": { - "animatable": false, - "attributes": { - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "dx": { - "description": "Sets the x coordinate step. See `x0` for more info.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "dy": { - "description": "Sets the y coordinate step. See `y0` for more info.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "error_x": { - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", - "editType": "none", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `array`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the stroke color of the error bars.", - "editType": "calc", - "valType": "color" - }, - "copy_ystyle": { - "editType": "calc", - "valType": "boolean" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", - "valType": "boolean" - }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] - }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "error_y": { - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", - "editType": "none", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `array`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the stroke color of the error bars.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", - "valType": "boolean" - }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] - }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "fill": { - "description": "Sets the area to fill with a solid color. Defaults to *none* unless this trace is stacked, then it gets *tonexty* (*tonextx*) if `orientation` is *v* (*h*) Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order.", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "tozeroy", - "tozerox", - "tonexty", - "tonextx", - "toself", - "tonext" - ] - }, - "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "calc", - "valType": "color" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "traces": { + "bar": { + "animatable": true, + "attributes": { + "alignmentgroup": { + "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "base": { + "arrayOk": true, + "description": "Sets where the bar base is drawn (in position axis units). In *stack* or *relative* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead.", + "dflt": null, + "editType": "calc", + "valType": "any" + }, + "basesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `base`.", + "editType": "none", + "valType": "string" + }, + "cliponaxis": { + "description": "Determines whether the text nodes are clipped about the subplot axes. To show the text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "constraintext": { + "description": "Constrain the size of text inside or outside a bar to be no larger than the bar itself.", + "dflt": "both", + "editType": "calc", + "valType": "enumerated", + "values": [ + "inside", + "outside", + "both", + "none" + ] + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "dx": { + "anim": true, + "description": "Sets the x coordinate step. See `x0` for more info.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "dy": { + "anim": true, + "description": "Sets the y coordinate step. See `y0` for more info.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "error_x": { + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", + "editType": "none", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `array`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the stroke color of the error bars.", + "editType": "style", + "valType": "color" + }, + "copy_ystyle": { + "editType": "plot", + "valType": "boolean" + }, + "editType": "calc", + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "plot", + "min": 0, + "valType": "number" + } + }, + "error_y": { + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", + "editType": "none", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `array`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the stroke color of the error bars.", + "editType": "style", + "valType": "color" + }, + "editType": "calc", + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "plot", + "min": 0, + "valType": "number" + } + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `value` and `label`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "anim": true, + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "insidetextanchor": { + "description": "Determines if texts are kept at center or start/end points in `textposition` *inside* mode.", + "dflt": "end", + "editType": "plot", + "valType": "enumerated", + "values": [ + "end", + "middle", + "start" + ] + }, + "insidetextfont": { + "color": { + "arrayOk": true, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `text` lying inside the bar.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "marker": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "cornerradius": { + "description": "Sets the rounding of corners. May be an integer number of pixels, or a percentage of bar width (as a string ending in %). Defaults to `layout.barcornerradius`. In stack or relative barmode, the first trace to set cornerradius is used for the whole stack.", + "editType": "calc", + "valType": "any" + }, + "editType": "calc", + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "width": { + "anim": true, + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "opacity": { + "arrayOk": true, + "description": "Sets the opacity of the bars.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "pattern": { + "bgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", + "editType": "style", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the pattern within the marker.", + "editType": "style", + "fgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", + "editType": "style", + "valType": "color" + }, + "fgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", + "editType": "none", + "valType": "string" + }, + "fgopacity": { + "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "fillmode": { + "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", + "dflt": "replace", + "editType": "style", + "valType": "enumerated", + "values": [ + "replace", + "overlay" + ] + }, + "path": { + "arrayOk": true, + "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", + "editType": "style", + "valType": "string" + }, + "pathsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `path`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shape": { + "arrayOk": true, + "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", + "dflt": "", + "editType": "style", + "valType": "enumerated", + "values": [ + "", + "/", + "\\", + "x", + "-", + "|", + "+", + "." + ] + }, + "shapesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shape`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", + "dflt": 8, + "editType": "style", + "min": 0, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "solidity": { + "arrayOk": true, + "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", + "dflt": 0.3, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "soliditysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", + "editType": "none", + "valType": "string" + } + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "offset": { + "arrayOk": true, + "description": "Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead.", + "dflt": null, + "editType": "calc", + "valType": "number" + }, + "offsetgroup": { + "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "offsetsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `offset`.", + "editType": "none", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "orientation": { + "description": "Sets the orientation of the bars. With *v* (*h*), the value of the each bar spans along the vertical (horizontal).", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "v", + "h" + ] + }, + "outsidetextfont": { + "color": { + "arrayOk": true, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `text` lying outside the bar.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textangle": { + "description": "Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars.", + "dflt": "auto", + "editType": "plot", + "valType": "angle" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `text`.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textposition": { + "arrayOk": true, + "description": "Specifies the location of the `text`. *inside* positions `text` inside, next to the bar end (rotated and scaled if needed). *outside* positions `text` outside, next to the bar end (scaled if needed), unless there is another bar stacked on this one, then the text gets pushed inside. *auto* tries to position `text` inside the bar, but if the bar is too small and no bar is stacked on this one the text is moved outside. If *none*, no text appears.", + "dflt": "auto", + "editType": "calc", + "valType": "enumerated", + "values": [ + "inside", + "outside", + "auto", + "none" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", + "editType": "none", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `value` and `label`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "type": "bar", + "uid": { + "anim": true, + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "width": { + "arrayOk": true, + "description": "Sets the bar width (in position axis units).", + "dflt": null, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + }, + "x": { + "anim": true, + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "x0": { + "anim": true, + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "xperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "valType": "any" + }, + "xperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" + }, + "xperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "anim": true, + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "y0": { + "anim": true, + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "yperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "valType": "any" + }, + "yperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" + }, + "yperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" + } }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" + "categories": [ + "bar-like", + "cartesian", + "svg", + "bar", + "oriented", + "errorBarsOK", + "showLegend", + "zoomScale" + ], + "layoutAttributes": { + "barcornerradius": { + "description": "Sets the rounding of bar corners. May be an integer number of pixels, or a percentage of bar width (as a string ending in %).", + "editType": "calc", + "valType": "any" + }, + "bargap": { + "description": "Sets the gap (in plot fraction) between bars of adjacent location coordinates.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "bargroupgap": { + "description": "Sets the gap (in plot fraction) between bars of the same location coordinate.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "barmode": { + "description": "Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *relative*, the bars are stacked on top of one another, with negative values below the axis, positive values above With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to reduce *opacity* to see multiple bars.", + "dflt": "group", + "editType": "calc", + "valType": "enumerated", + "values": [ + "stack", + "group", + "overlay", + "relative" + ] + }, + "barnorm": { + "description": "Sets the normalization for bar traces on the graph. With *fraction*, the value of each bar is divided by the sum of all values at that location coordinate. *percent* is the same but multiplied by 100 to show percentages.", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "", + "fraction", + "percent" + ] + } }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" + "meta": { + "description": "The data visualized by the span of the bars is set in `y` if `orientation` is set to *v* (the default) and the labels are set in `x`. By setting `orientation` to *h*, the roles are interchanged." }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "calc", - "valType": "string" + "type": "bar" }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "barpolar": { + "animatable": false, + "attributes": { + "base": { + "arrayOk": true, + "description": "Sets where the bar base is drawn (in radial axis units). In *stack* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead.", + "dflt": null, + "editType": "calc", + "valType": "any" + }, + "basesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `base`.", + "editType": "none", + "valType": "string" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "dr": { + "description": "Sets the r coordinate step.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "dtheta": { + "description": "Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates.", + "editType": "calc", + "valType": "number" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "r", + "theta", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "marker": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "opacity": { + "arrayOk": true, + "description": "Sets the opacity of the bars.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "pattern": { + "bgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", + "editType": "style", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the pattern within the marker.", + "editType": "style", + "fgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", + "editType": "style", + "valType": "color" + }, + "fgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", + "editType": "none", + "valType": "string" + }, + "fgopacity": { + "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "fillmode": { + "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", + "dflt": "replace", + "editType": "style", + "valType": "enumerated", + "values": [ + "replace", + "overlay" + ] + }, + "path": { + "arrayOk": true, + "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", + "editType": "style", + "valType": "string" + }, + "pathsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `path`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shape": { + "arrayOk": true, + "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", + "dflt": "", + "editType": "style", + "valType": "enumerated", + "values": [ + "", + "/", + "\\", + "x", + "-", + "|", + "+", + "." + ] + }, + "shapesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shape`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", + "dflt": 8, + "editType": "style", + "min": 0, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "solidity": { + "arrayOk": true, + "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", + "dflt": 0.3, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "soliditysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", + "editType": "none", + "valType": "string" + } + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "offset": { + "arrayOk": true, + "description": "Shifts the angular position where the bar is drawn (in *thetatunit* units).", + "dflt": null, + "editType": "calc", + "valType": "number" + }, + "offsetsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `offset`.", + "editType": "none", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "r": { + "description": "Sets the radial coordinates", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "r0": { + "description": "Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "rsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `r`.", + "editType": "none", + "valType": "string" + }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "subplot": { + "description": "Sets a reference between this trace's data coordinates and a polar subplot. If *polar* (the default value), the data refer to `layout.polar`. If *polar2*, the data refer to `layout.polar2`, and so on.", + "dflt": "polar", + "editType": "calc", + "valType": "subplotid" + }, + "text": { + "arrayOk": true, + "description": "Sets hover text elements associated with each bar. If a single string, the same string appears over all bars. If an array of string, the items are mapped in order to the this trace's coordinates.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "theta": { + "description": "Sets the angular coordinates", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "theta0": { + "description": "Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "thetasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `theta`.", + "editType": "none", + "valType": "string" + }, + "thetaunit": { + "description": "Sets the unit of input *theta* values. Has an effect only when on *linear* angular axes.", + "dflt": "degrees", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "radians", + "degrees", + "gradians" + ] + }, + "type": "barpolar", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "width": { + "arrayOk": true, + "description": "Sets the bar angular width (in *thetaunit* units).", + "dflt": null, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "categories": [ + "polar", + "bar", + "showLegend" + ], + "layoutAttributes": { + "bargap": { + "description": "Sets the gap between bars of adjacent location coordinates. Values are unitless, they represent fractions of the minimum difference in bar positions in the data.", + "dflt": 0.1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "barmode": { + "description": "Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *overlay*, the bars are plotted over one another, you might need to reduce *opacity* to see multiple bars.", + "dflt": "stack", + "editType": "calc", + "valType": "enumerated", + "values": [ + "stack", + "overlay" + ] + } }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "meta": { + "description": "The data visualized by the radial span of the bars is set in `r`", + "hrName": "bar_polar" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "color": { - "description": "Sets the line color.", - "editType": "calc", - "valType": "color" - }, - "dash": { - "description": "Sets the style of the lines.", - "dflt": "solid", - "editType": "calc", - "valType": "enumerated", - "values": [ - "dash", - "dashdot", - "dot", - "longdash", - "longdashdot", - "solid" - ] - }, - "editType": "calc", - "role": "object", - "shape": { - "description": "Determines the line shape. The values correspond to step-wise line shapes.", - "dflt": "linear", - "editType": "calc", - "valType": "enumerated", - "values": [ - "linear", - "hv", - "vh", - "hvh", - "vhv" - ] - }, - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "calc", - "min": 0, - "valType": "number" - } + "type": "barpolar" }, - "marker": { - "angle": { - "arrayOk": true, - "description": "Sets the marker angle in respect to `angleref`.", - "dflt": 0, - "editType": "calc", - "valType": "angle" - }, - "anglesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `angle`.", - "editType": "none", - "valType": "string" - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "calc", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "calc", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "calc", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "calc", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "box": { + "animatable": false, + "attributes": { + "alignmentgroup": { + "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "boxmean": { + "description": "If *true*, the mean of the box(es)' underlying distribution is drawn as a dashed line inside the box(es). If *sd* the standard deviation is also drawn. Defaults to *true* when `mean` is set. Defaults to *sd* when `sd` is set Otherwise defaults to *false*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + "sd", + false + ] + }, + "boxpoints": { + "description": "If *outliers*, only the sample points lying outside the whiskers are shown If *suspectedoutliers*, the outlier points are shown and points either less than 4*Q1-3*Q3 or greater than 4*Q3-3*Q1 are highlighted (see `outliercolor`) If *all*, all sample points are shown If *false*, only the box(es) are shown with no sample points Defaults to *suspectedoutliers* when `marker.outliercolor` or `marker.line.outliercolor` is set. Defaults to *all* under the q1/median/q3 signature. Otherwise defaults to *outliers*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "outliers", + "suspectedoutliers", + false + ] + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "dx": { + "description": "Sets the x coordinate step for multi-box traces set using q1/median/q3.", + "editType": "calc", + "valType": "number" + }, + "dy": { + "description": "Sets the y coordinate step for multi-box traces set using q1/median/q3.", + "editType": "calc", + "valType": "number" + }, + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "style", + "valType": "color" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hoveron": { + "description": "Do the hover effects highlight individual boxes or sample points or both?", + "dflt": "boxes+points", + "editType": "style", + "flags": [ + "boxes", + "points" + ], + "valType": "flaglist" + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "jitter": { + "description": "Sets the amount of jitter in the sample points drawn. If *0*, the sample points align along the distribution axis. If *1*, the sample points are drawn in a random jitter of width equal to the width of the box(es).", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "color": { + "description": "Sets the color of line bounding the box(es).", + "editType": "style", + "valType": "color" + }, + "editType": "plot", + "role": "object", + "width": { + "description": "Sets the width (in px) of line bounding the box(es).", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "lowerfence": { + "description": "Sets the lower fence values. There should be as many items as the number of boxes desired. This attribute has effect only under the q1/median/q3 signature. If `lowerfence` is not provided but a sample (in `y` or `x`) is set, we compute the lower as the last sample point below 1.5 times the IQR.", + "editType": "calc", + "valType": "data_array" + }, + "lowerfencesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lowerfence`.", + "editType": "none", + "valType": "string" + }, + "marker": { + "angle": { + "arrayOk": false, + "description": "Sets the marker angle in respect to `angleref`.", + "dflt": 0, + "editType": "calc", + "valType": "angle" + }, + "color": { + "arrayOk": false, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "editType": "plot", + "line": { + "color": { + "arrayOk": false, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "dflt": "#444", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "outliercolor": { + "description": "Sets the border line color of the outlier sample points. Defaults to marker.color", + "editType": "style", + "valType": "color" + }, + "outlierwidth": { + "description": "Sets the border line width (in px) of the outlier sample points.", + "dflt": 1, + "editType": "style", + "min": 0, + "valType": "number" + }, + "role": "object", + "width": { + "arrayOk": false, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "opacity": { + "arrayOk": false, + "description": "Sets the marker opacity.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "outliercolor": { + "description": "Sets the color of the outlier sample points.", + "dflt": "rgba(0, 0, 0, 0)", + "editType": "style", + "valType": "color" + }, + "role": "object", + "size": { + "arrayOk": false, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "symbol": { + "arrayOk": false, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "plot", + "valType": "enumerated", + "values": [ + 0, + "0", + "circle", + 100, + "100", + "circle-open", + 200, + "200", + "circle-dot", + 300, + "300", + "circle-open-dot", + 1, + "1", + "square", + 101, + "101", + "square-open", + 201, + "201", + "square-dot", + 301, + "301", + "square-open-dot", + 2, + "2", + "diamond", + 102, + "102", + "diamond-open", + 202, + "202", + "diamond-dot", + 302, + "302", + "diamond-open-dot", + 3, + "3", + "cross", + 103, + "103", + "cross-open", + 203, + "203", + "cross-dot", + 303, + "303", + "cross-open-dot", + 4, + "4", + "x", + 104, + "104", + "x-open", + 204, + "204", + "x-dot", + 304, + "304", + "x-open-dot", + 5, + "5", + "triangle-up", + 105, + "105", + "triangle-up-open", + 205, + "205", + "triangle-up-dot", + 305, + "305", + "triangle-up-open-dot", + 6, + "6", + "triangle-down", + 106, + "106", + "triangle-down-open", + 206, + "206", + "triangle-down-dot", + 306, + "306", + "triangle-down-open-dot", + 7, + "7", + "triangle-left", + 107, + "107", + "triangle-left-open", + 207, + "207", + "triangle-left-dot", + 307, + "307", + "triangle-left-open-dot", + 8, + "8", + "triangle-right", + 108, + "108", + "triangle-right-open", + 208, + "208", + "triangle-right-dot", + 308, + "308", + "triangle-right-open-dot", + 9, + "9", + "triangle-ne", + 109, + "109", + "triangle-ne-open", + 209, + "209", + "triangle-ne-dot", + 309, + "309", + "triangle-ne-open-dot", + 10, + "10", + "triangle-se", + 110, + "110", + "triangle-se-open", + 210, + "210", + "triangle-se-dot", + 310, + "310", + "triangle-se-open-dot", + 11, + "11", + "triangle-sw", + 111, + "111", + "triangle-sw-open", + 211, + "211", + "triangle-sw-dot", + 311, + "311", + "triangle-sw-open-dot", + 12, + "12", + "triangle-nw", + 112, + "112", + "triangle-nw-open", + 212, + "212", + "triangle-nw-dot", + 312, + "312", + "triangle-nw-open-dot", + 13, + "13", + "pentagon", + 113, + "113", + "pentagon-open", + 213, + "213", + "pentagon-dot", + 313, + "313", + "pentagon-open-dot", + 14, + "14", + "hexagon", + 114, + "114", + "hexagon-open", + 214, + "214", + "hexagon-dot", + 314, + "314", + "hexagon-open-dot", + 15, + "15", + "hexagon2", + 115, + "115", + "hexagon2-open", + 215, + "215", + "hexagon2-dot", + 315, + "315", + "hexagon2-open-dot", + 16, + "16", + "octagon", + 116, + "116", + "octagon-open", + 216, + "216", + "octagon-dot", + 316, + "316", + "octagon-open-dot", + 17, + "17", + "star", + 117, + "117", + "star-open", + 217, + "217", + "star-dot", + 317, + "317", + "star-open-dot", + 18, + "18", + "hexagram", + 118, + "118", + "hexagram-open", + 218, + "218", + "hexagram-dot", + 318, + "318", + "hexagram-open-dot", + 19, + "19", + "star-triangle-up", + 119, + "119", + "star-triangle-up-open", + 219, + "219", + "star-triangle-up-dot", + 319, + "319", + "star-triangle-up-open-dot", + 20, + "20", + "star-triangle-down", + 120, + "120", + "star-triangle-down-open", + 220, + "220", + "star-triangle-down-dot", + 320, + "320", + "star-triangle-down-open-dot", + 21, + "21", + "star-square", + 121, + "121", + "star-square-open", + 221, + "221", + "star-square-dot", + 321, + "321", + "star-square-open-dot", + 22, + "22", + "star-diamond", + 122, + "122", + "star-diamond-open", + 222, + "222", + "star-diamond-dot", + 322, + "322", + "star-diamond-open-dot", + 23, + "23", + "diamond-tall", + 123, + "123", + "diamond-tall-open", + 223, + "223", + "diamond-tall-dot", + 323, + "323", + "diamond-tall-open-dot", + 24, + "24", + "diamond-wide", + 124, + "124", + "diamond-wide-open", + 224, + "224", + "diamond-wide-dot", + 324, + "324", + "diamond-wide-open-dot", + 25, + "25", + "hourglass", + 125, + "125", + "hourglass-open", + 26, + "26", + "bowtie", + 126, + "126", + "bowtie-open", + 27, + "27", + "circle-cross", + 127, + "127", + "circle-cross-open", + 28, + "28", + "circle-x", + 128, + "128", + "circle-x-open", + 29, + "29", + "square-cross", + 129, + "129", + "square-cross-open", + 30, + "30", + "square-x", + 130, + "130", + "square-x-open", + 31, + "31", + "diamond-cross", + 131, + "131", + "diamond-cross-open", + 32, + "32", + "diamond-x", + 132, + "132", + "diamond-x-open", + 33, + "33", + "cross-thin", + 133, + "133", + "cross-thin-open", + 34, + "34", + "x-thin", + 134, + "134", + "x-thin-open", + 35, + "35", + "asterisk", + 135, + "135", + "asterisk-open", + 36, + "36", + "hash", + 136, + "136", + "hash-open", + 236, + "236", + "hash-dot", + 336, + "336", + "hash-open-dot", + 37, + "37", + "y-up", + 137, + "137", + "y-up-open", + 38, + "38", + "y-down", + 138, + "138", + "y-down-open", + 39, + "39", + "y-left", + 139, + "139", + "y-left-open", + 40, + "40", + "y-right", + 140, + "140", + "y-right-open", + 41, + "41", + "line-ew", + 141, + "141", + "line-ew-open", + 42, + "42", + "line-ns", + 142, + "142", + "line-ns-open", + 43, + "43", + "line-ne", + 143, + "143", + "line-ne-open", + 44, + "44", + "line-nw", + 144, + "144", + "line-nw-open", + 45, + "45", + "arrow-up", + 145, + "145", + "arrow-up-open", + 46, + "46", + "arrow-down", + 146, + "146", + "arrow-down-open", + 47, + "47", + "arrow-left", + 147, + "147", + "arrow-left-open", + 48, + "48", + "arrow-right", + 148, + "148", + "arrow-right-open", + 49, + "49", + "arrow-bar-up", + 149, + "149", + "arrow-bar-up-open", + 50, + "50", + "arrow-bar-down", + 150, + "150", + "arrow-bar-down-open", + 51, + "51", + "arrow-bar-left", + 151, + "151", + "arrow-bar-left-open", + 52, + "52", + "arrow-bar-right", + 152, + "152", + "arrow-bar-right-open", + 53, + "53", + "arrow", + 153, + "153", + "arrow-open", + 54, + "54", + "arrow-wide", + 154, + "154", + "arrow-wide-open" + ] + } + }, + "mean": { + "description": "Sets the mean values. There should be as many items as the number of boxes desired. This attribute has effect only under the q1/median/q3 signature. If `mean` is not provided but a sample (in `y` or `x`) is set, we compute the mean for each box using the sample values.", + "editType": "calc", + "valType": "data_array" + }, + "meansrc": { + "description": "Sets the source reference on Chart Studio Cloud for `mean`.", + "editType": "none", + "valType": "string" + }, + "median": { + "description": "Sets the median values. There should be as many items as the number of boxes desired.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "mediansrc": { + "description": "Sets the source reference on Chart Studio Cloud for `median`.", + "editType": "none", + "valType": "string" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover. For box traces, the name will also be used for the position coordinate, if `x` and `x0` (`y` and `y0` if horizontal) are missing and the position axis is categorical", + "editType": "calc+clearAxisTypes", + "valType": "string" + }, + "notched": { + "description": "Determines whether or not notches are drawn. Notches displays a confidence interval around the median. We compute the confidence interval as median +/- 1.57 * IQR / sqrt(N), where IQR is the interquartile range and N is the sample size. If two boxes' notches do not overlap there is 95% confidence their medians differ. See https://sites.google.com/site/davidsstatistics/home/notched-box-plots for more info. Defaults to *false* unless `notchwidth` or `notchspan` is set.", "editType": "calc", - "items": [ - { + "valType": "boolean" + }, + "notchspan": { + "description": "Sets the notch span from the boxes' `median` values. There should be as many items as the number of boxes desired. This attribute has effect only under the q1/median/q3 signature. If `notchspan` is not provided but a sample (in `y` or `x`) is set, we compute it as 1.57 * IQR / sqrt(N), where N is the sample size.", + "editType": "calc", + "valType": "data_array" + }, + "notchspansrc": { + "description": "Sets the source reference on Chart Studio Cloud for `notchspan`.", + "editType": "none", + "valType": "string" + }, + "notchwidth": { + "description": "Sets the width of the notches relative to the box width. For example, with 0, the notches are as wide as the box(es).", + "dflt": 0.25, + "editType": "calc", + "max": 0.5, + "min": 0, + "valType": "number" + }, + "offsetgroup": { + "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "orientation": { + "description": "Sets the orientation of the box(es). If *v* (*h*), the distribution is visualized along the vertical (horizontal).", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "v", + "h" + ] + }, + "pointpos": { + "description": "Sets the position of the sample points in relation to the box(es). If *0*, the sample points are places over the center of the box(es). Positive (negative) values correspond to positions to the right (left) for vertical boxes and above (below) for horizontal boxes", + "editType": "calc", + "max": 2, + "min": -2, + "valType": "number" + }, + "q1": { + "description": "Sets the Quartile 1 values. There should be as many items as the number of boxes desired.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "q1src": { + "description": "Sets the source reference on Chart Studio Cloud for `q1`.", + "editType": "none", + "valType": "string" + }, + "q3": { + "description": "Sets the Quartile 3 values. There should be as many items as the number of boxes desired.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "q3src": { + "description": "Sets the source reference on Chart Studio Cloud for `q3`.", + "editType": "none", + "valType": "string" + }, + "quartilemethod": { + "description": "Sets the method used to compute the sample's Q1 and Q3 quartiles. The *linear* method uses the 25th percentile for Q1 and 75th percentile for Q3 as computed using method #10 (listed on http://jse.amstat.org/v14n3/langford.html). The *exclusive* method uses the median to divide the ordered dataset into two halves if the sample is odd, it does not include the median in either half - Q1 is then the median of the lower half and Q3 the median of the upper half. The *inclusive* method also uses the median to divide the ordered dataset into two halves but if the sample is odd, it includes the median in both halves - Q1 is then the median of the lower half and Q3 the median of the upper half.", + "dflt": "linear", + "editType": "calc", + "valType": "enumerated", + "values": [ + "linear", + "exclusive", + "inclusive" + ] + }, + "sd": { + "description": "Sets the standard deviation values. There should be as many items as the number of boxes desired. This attribute has effect only under the q1/median/q3 signature. If `sd` is not provided but a sample (in `y` or `x`) is set, we compute the standard deviation for each box using the sample values.", + "editType": "calc", + "valType": "data_array" + }, + "sdmultiple": { + "description": "Scales the box size when sizemode=sd Allowing boxes to be drawn across any stddev range For example 1-stddev, 3-stddev, 5-stddev", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sdsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `sd`.", + "editType": "none", + "valType": "string" + }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "showwhiskers": { + "description": "Determines whether or not whiskers are visible. Defaults to true for `sizemode` *quartiles*, false for *sd*.", + "editType": "calc", + "valType": "boolean" + }, + "sizemode": { + "description": "Sets the upper and lower bound for the boxes quartiles means box is drawn between Q1 and Q3 SD means the box is drawn between Mean +- Standard Deviation Argument sdmultiple (default 1) to scale the box size So it could be drawn 1-stddev, 3-stddev etc", + "dflt": "quartiles", + "editType": "calc", + "valType": "enumerated", + "values": [ + "quartiles", + "sd" + ] + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, "editType": "calc", - "valType": "any" - }, - { + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", "editType": "calc", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "calc", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "arrayOk": true, + "description": "Sets the text elements associated with each sample value. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "type": "box", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "upperfence": { + "description": "Sets the upper fence values. There should be as many items as the number of boxes desired. This attribute has effect only under the q1/median/q3 signature. If `upperfence` is not provided but a sample (in `y` or `x`) is set, we compute the upper as the last sample point above 1.5 times the IQR.", + "editType": "calc", + "valType": "data_array" + }, + "upperfencesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `upperfence`.", + "editType": "none", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", "dflt": true, "editType": "calc", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "whiskerwidth": { + "description": "Sets the width of the whiskers relative to the box width. For example, with 1, the whiskers are as wide as the box(es).", + "dflt": 0.5, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "width": { + "description": "Sets the width of the box in data coordinate If *0* (default value) the width is automatically selected based on the positions of other box traces in the same subplot.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "x": { + "description": "Sets the x sample data or coordinates. See overview for more info.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "x0": { + "description": "Sets the x coordinate for single-box traces or the starting coordinate for multi-box traces set using q1/median/q3. See overview for more info.", + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + }, + "xperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "valType": "any" + }, + "xperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", "editType": "calc", + "valType": "any" + }, + "xperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", + }, + "y": { + "description": "Sets the y sample data or coordinates. See overview for more info.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "y0": { + "description": "Sets the y coordinate for single-box traces or the starting coordinate for multi-box traces set using q1/median/q3. See overview for more info.", + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", "dflt": "", + "editType": "none", + "valType": "string" + }, + "yperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, "editType": "calc", + "valType": "any" + }, + "yperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" + }, + "yperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", "valType": "string" - } + }, + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "calc", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "calc", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "calc", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" + "categories": [ + "cartesian", + "svg", + "symbols", + "oriented", + "box-violin", + "showLegend", + "boxLayout", + "zoomScale" + ], + "layoutAttributes": { + "boxgap": { + "description": "Sets the gap (in plot fraction) between boxes of adjacent location coordinates. Has no effect on traces that have *width* set.", + "dflt": 0.3, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "boxgroupgap": { + "description": "Sets the gap (in plot fraction) between boxes of the same location coordinate. Has no effect on traces that have *width* set.", + "dflt": 0.3, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "boxmode": { + "description": "Determines how boxes at the same location coordinate are displayed on the graph. If *group*, the boxes are plotted next to one another centered around the shared location. If *overlay*, the boxes are plotted over one another, you might need to set *opacity* to see them multiple boxes. Has no effect on traces that have *width* set.", + "dflt": "overlay", + "editType": "calc", + "valType": "enumerated", + "values": [ + "group", + "overlay" + ] + } }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" + "meta": { + "description": "Each box spans from quartile 1 (Q1) to quartile 3 (Q3). The second quartile (Q2, i.e. the median) is marked by a line inside the box. The fences grow outward from the boxes' edges, by default they span +/- 1.5 times the interquartile range (IQR: Q3-Q1), The sample mean and standard deviation as well as notches and the sample, outlier and suspected outliers points can be optionally added to the box plot. The values and positions corresponding to each boxes can be input using two signatures. The first signature expects users to supply the sample values in the `y` data array for vertical boxes (`x` for horizontal boxes). By supplying an `x` (`y`) array, one box per distinct `x` (`y`) value is drawn If no `x` (`y`) {array} is provided, a single box is drawn. In this case, the box is positioned with the trace `name` or with `x0` (`y0`) if provided. The second signature expects users to supply the boxes corresponding Q1, median and Q3 statistics in the `q1`, `median` and `q3` data arrays respectively. Other box features relying on statistics namely `lowerfence`, `upperfence`, `notchspan` can be set directly by the users. To have plotly compute them or to show sample points besides the boxes, users can set the `y` data array for vertical boxes (`x` for horizontal boxes) to a 2D array with the outer length corresponding to the number of boxes in the traces and the inner length corresponding the sample size." }, - "title": { - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "valType": "color" + "type": "box" + }, + "candlestick": { + "animatable": false, + "attributes": { + "close": { + "description": "Sets the close values.", + "editType": "calc", + "valType": "data_array" }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" + "closesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `close`.", + "editType": "none", + "valType": "string" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "decreasing": { + "editType": "style", + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "style", + "valType": "color" + }, + "line": { + "color": { + "description": "Sets the color of line bounding the box(es).", + "dflt": "#FF4136", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object", + "width": { + "description": "Sets the width (in px) of line bounding the box(es).", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "high": { + "description": "Sets the high values.", + "editType": "calc", + "valType": "data_array" + }, + "highsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `high`.", + "editType": "none", + "valType": "string" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + }, + "split": { + "description": "Show hover information (open, close, high, low) in separate labels, rather than a single unified label. Default: *false*. When set to *true*, `hovertemplate` is ignored.", + "dflt": false, + "editType": "style", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `open`, `high`, `low` and `close`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "increasing": { + "editType": "style", + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "style", + "valType": "color" + }, + "line": { + "color": { + "description": "Sets the color of line bounding the box(es).", + "dflt": "#3D9970", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object", + "width": { + "description": "Sets the width (in px) of line bounding the box(es).", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "editType": "style", + "role": "object", + "width": { + "description": "Sets the width (in px) of line bounding the box(es). Note that this style setting can also be set per direction via `increasing.line.width` and `decreasing.line.width`.", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + } }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "low": { + "description": "Sets the low values.", + "editType": "calc", + "valType": "data_array" }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" + "lowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `low`.", + "editType": "none", + "valType": "string" }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "calc", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "editType": "calc", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "opacity": { - "arrayOk": true, - "description": "Sets the marker opacity.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "arrayOk": true, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemin": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemode": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", - "dflt": "diameter", - "editType": "calc", - "valType": "enumerated", - "values": [ - "diameter", - "area" - ] - }, - "sizeref": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "symbol": { - "arrayOk": true, - "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", - "dflt": "circle", - "editType": "calc", - "valType": "enumerated", - "values": [ - 0, - "0", - "circle", - 100, - "100", - "circle-open", - 200, - "200", - "circle-dot", - 300, - "300", - "circle-open-dot", - 1, - "1", - "square", - 101, - "101", - "square-open", - 201, - "201", - "square-dot", - 301, - "301", - "square-open-dot", - 2, - "2", - "diamond", - 102, - "102", - "diamond-open", - 202, - "202", - "diamond-dot", - 302, - "302", - "diamond-open-dot", - 3, - "3", - "cross", - 103, - "103", - "cross-open", - 203, - "203", - "cross-dot", - 303, - "303", - "cross-open-dot", - 4, - "4", - "x", - 104, - "104", - "x-open", - 204, - "204", - "x-dot", - 304, - "304", - "x-open-dot", - 5, - "5", - "triangle-up", - 105, - "105", - "triangle-up-open", - 205, - "205", - "triangle-up-dot", - 305, - "305", - "triangle-up-open-dot", - 6, - "6", - "triangle-down", - 106, - "106", - "triangle-down-open", - 206, - "206", - "triangle-down-dot", - 306, - "306", - "triangle-down-open-dot", - 7, - "7", - "triangle-left", - 107, - "107", - "triangle-left-open", - 207, - "207", - "triangle-left-dot", - 307, - "307", - "triangle-left-open-dot", - 8, - "8", - "triangle-right", - 108, - "108", - "triangle-right-open", - 208, - "208", - "triangle-right-dot", - 308, - "308", - "triangle-right-open-dot", - 9, - "9", - "triangle-ne", - 109, - "109", - "triangle-ne-open", - 209, - "209", - "triangle-ne-dot", - 309, - "309", - "triangle-ne-open-dot", - 10, - "10", - "triangle-se", - 110, - "110", - "triangle-se-open", - 210, - "210", - "triangle-se-dot", - 310, - "310", - "triangle-se-open-dot", - 11, - "11", - "triangle-sw", - 111, - "111", - "triangle-sw-open", - 211, - "211", - "triangle-sw-dot", - 311, - "311", - "triangle-sw-open-dot", - 12, - "12", - "triangle-nw", - 112, - "112", - "triangle-nw-open", - 212, - "212", - "triangle-nw-dot", - 312, - "312", - "triangle-nw-open-dot", - 13, - "13", - "pentagon", - 113, - "113", - "pentagon-open", - 213, - "213", - "pentagon-dot", - 313, - "313", - "pentagon-open-dot", - 14, - "14", - "hexagon", - 114, - "114", - "hexagon-open", - 214, - "214", - "hexagon-dot", - 314, - "314", - "hexagon-open-dot", - 15, - "15", - "hexagon2", - 115, - "115", - "hexagon2-open", - 215, - "215", - "hexagon2-dot", - 315, - "315", - "hexagon2-open-dot", - 16, - "16", - "octagon", - 116, - "116", - "octagon-open", - 216, - "216", - "octagon-dot", - 316, - "316", - "octagon-open-dot", - 17, - "17", - "star", - 117, - "117", - "star-open", - 217, - "217", - "star-dot", - 317, - "317", - "star-open-dot", - 18, - "18", - "hexagram", - 118, - "118", - "hexagram-open", - 218, - "218", - "hexagram-dot", - 318, - "318", - "hexagram-open-dot", - 19, - "19", - "star-triangle-up", - 119, - "119", - "star-triangle-up-open", - 219, - "219", - "star-triangle-up-dot", - 319, - "319", - "star-triangle-up-open-dot", - 20, - "20", - "star-triangle-down", - 120, - "120", - "star-triangle-down-open", - 220, - "220", - "star-triangle-down-dot", - 320, - "320", - "star-triangle-down-open-dot", - 21, - "21", - "star-square", - 121, - "121", - "star-square-open", - 221, - "221", - "star-square-dot", - 321, - "321", - "star-square-open-dot", - 22, - "22", - "star-diamond", - 122, - "122", - "star-diamond-open", - 222, - "222", - "star-diamond-dot", - 322, - "322", - "star-diamond-open-dot", - 23, - "23", - "diamond-tall", - 123, - "123", - "diamond-tall-open", - 223, - "223", - "diamond-tall-dot", - 323, - "323", - "diamond-tall-open-dot", - 24, - "24", - "diamond-wide", - 124, - "124", - "diamond-wide-open", - 224, - "224", - "diamond-wide-dot", - 324, - "324", - "diamond-wide-open-dot", - 25, - "25", - "hourglass", - 125, - "125", - "hourglass-open", - 26, - "26", - "bowtie", - 126, - "126", - "bowtie-open", - 27, - "27", - "circle-cross", - 127, - "127", - "circle-cross-open", - 28, - "28", - "circle-x", - 128, - "128", - "circle-x-open", - 29, - "29", - "square-cross", - 129, - "129", - "square-cross-open", - 30, - "30", - "square-x", - 130, - "130", - "square-x-open", - 31, - "31", - "diamond-cross", - 131, - "131", - "diamond-cross-open", - 32, - "32", - "diamond-x", - 132, - "132", - "diamond-x-open", - 33, - "33", - "cross-thin", - 133, - "133", - "cross-thin-open", - 34, - "34", - "x-thin", - 134, - "134", - "x-thin-open", - 35, - "35", - "asterisk", - 135, - "135", - "asterisk-open", - 36, - "36", - "hash", - 136, - "136", - "hash-open", - 236, - "236", - "hash-dot", - 336, - "336", - "hash-open-dot", - 37, - "37", - "y-up", - 137, - "137", - "y-up-open", - 38, - "38", - "y-down", - 138, - "138", - "y-down-open", - 39, - "39", - "y-left", - 139, - "139", - "y-left-open", - 40, - "40", - "y-right", - 140, - "140", - "y-right-open", - 41, - "41", - "line-ew", - 141, - "141", - "line-ew-open", - 42, - "42", - "line-ns", - 142, - "142", - "line-ns-open", - 43, - "43", - "line-ne", - 143, - "143", - "line-ne-open", - 44, - "44", - "line-nw", - 144, - "144", - "line-nw-open", - 45, - "45", - "arrow-up", - 145, - "145", - "arrow-up-open", - 46, - "46", - "arrow-down", - 146, - "146", - "arrow-down-open", - 47, - "47", - "arrow-left", - 147, - "147", - "arrow-left-open", - 48, - "48", - "arrow-right", - 148, - "148", - "arrow-right-open", - 49, - "49", - "arrow-bar-up", - 149, - "149", - "arrow-bar-up-open", - 50, - "50", - "arrow-bar-down", - 150, - "150", - "arrow-bar-down-open", - 51, - "51", - "arrow-bar-left", - 151, - "151", - "arrow-bar-left-open", - 52, - "52", - "arrow-bar-right", - 152, - "152", - "arrow-bar-right-open", - 53, - "53", - "arrow", - 153, - "153", - "arrow-open", - 54, - "54", - "arrow-wide", - 154, - "154", - "arrow-wide-open" - ] - }, - "symbolsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", - "editType": "none", - "valType": "string" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "mode": { - "description": "Determines the drawing mode for this scatter trace.", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "lines", - "markers", - "text" - ], - "valType": "flaglist" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "selected": { - "editType": "calc", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of selected points.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of selected points.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "role": "object" - } - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the text font.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "bold" - ] - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textposition": { - "arrayOk": true, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", - "editType": "none", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. ", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "type": "scattergl", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "calc", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of unselected points, applied only when a selection exists.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of unselected points, applied only when a selection exists.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "role": "object" - } - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the x coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "x0": { - "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "xperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "valType": "any" - }, - "xperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "xperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "y0": { - "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "yperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "valType": "any" - }, - "yperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "yperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "gl", - "regl", - "cartesian", - "symbols", - "errorBarsOK", - "showLegend", - "scatter-like" - ], - "meta": { - "description": "The data visualized as scatter point or lines is set in `x` and `y` using the WebGL plotting engine. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to a numerical arrays.", - "hrName": "scatter_gl" - }, - "type": "scattergl" - }, - "scattermap": { - "animatable": false, - "attributes": { - "below": { - "description": "Determines if this scattermap trace's layers are to be inserted before the layer with the specified ID. By default, scattermap layers are inserted above all the base layers. To place the scattermap layers above every other layer, set `below` to *''*.", - "editType": "calc", - "valType": "string" - }, - "cluster": { - "color": { - "arrayOk": true, - "description": "Sets the color for each cluster step.", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "enabled": { - "description": "Determines whether clustering is enabled or disabled.", - "editType": "calc", - "valType": "boolean" - }, - "maxzoom": { - "description": "Sets the maximum zoom level. At zoom levels equal to or greater than this, points will never be clustered.", - "dflt": 24, - "editType": "calc", - "max": 24, - "min": 0, - "valType": "number" - }, - "opacity": { - "arrayOk": true, - "description": "Sets the marker opacity.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "size": { - "arrayOk": true, - "description": "Sets the size for each cluster step.", - "dflt": 20, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "step": { - "arrayOk": true, - "description": "Sets how many points it takes to create a cluster or advance to the next cluster step. Use this in conjunction with arrays for `size` and / or `color`. If an integer, steps start at multiples of this number. If an array, each step extends from the given value until one less than the next value.", - "dflt": -1, - "editType": "calc", - "min": -1, - "valType": "number" - }, - "stepsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `step`.", - "editType": "none", - "valType": "string" - } - }, - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "fill": { - "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape.", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "toself" - ] - }, - "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "calc", - "valType": "color" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "lon", - "lat", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "lat": { - "description": "Sets the latitude coordinates (in degrees North).", - "editType": "calc", - "valType": "data_array" - }, - "latsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lat`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "open": { + "description": "Sets the open values.", + "editType": "calc", + "valType": "data_array" + }, + "opensrc": { + "description": "Sets the source reference on Chart Studio Cloud for `open`.", + "editType": "none", + "valType": "string" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "arrayOk": true, + "description": "Sets hover text elements associated with each sample point. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to this trace's sample points.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "type": "candlestick", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "whiskerwidth": { + "description": "Sets the width of the whiskers relative to the box width. For example, with 1, the whiskers are as wide as the box(es).", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "x": { + "description": "Sets the x coordinates. If absent, linear coordinate will be generated.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "xperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "valType": "any" + }, + "xperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" + }, + "xperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" + } }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "categories": [ + "cartesian", + "svg", + "showLegend", + "candlestick", + "boxLayout" + ], + "layoutAttributes": { + "boxgap": { + "description": "Sets the gap (in plot fraction) between boxes of adjacent location coordinates. Has no effect on traces that have *width* set.", + "dflt": 0.3, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "boxgroupgap": { + "description": "Sets the gap (in plot fraction) between boxes of the same location coordinate. Has no effect on traces that have *width* set.", + "dflt": 0.3, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "boxmode": { + "description": "Determines how boxes at the same location coordinate are displayed on the graph. If *group*, the boxes are plotted next to one another centered around the shared location. If *overlay*, the boxes are plotted over one another, you might need to set *opacity* to see them multiple boxes. Has no effect on traces that have *width* set.", + "dflt": "overlay", + "editType": "calc", + "valType": "enumerated", + "values": [ + "group", + "overlay" + ] + } }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "meta": { + "description": "The candlestick is a style of financial chart describing open, high, low and close for a given `x` coordinate (most likely time). The boxes represent the spread between the `open` and `close` values and the lines represent the spread between the `low` and `high` values Sample points where the close value is higher (lower) then the open value are called increasing (decreasing). By default, increasing candles are drawn in green whereas decreasing are drawn in red." }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "color": { - "description": "Sets the line color.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "role": "object", - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "lon": { - "description": "Sets the longitude coordinates (in degrees East).", - "editType": "calc", - "valType": "data_array" + "type": "candlestick" }, - "lonsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lon`.", - "editType": "none", - "valType": "string" - }, - "marker": { - "allowoverlap": { - "description": "Flag to draw all symbols, even if they overlap.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "angle": { - "arrayOk": true, - "description": "Sets the marker orientation from true North, in degrees clockwise. When using the *auto* default, no rotation would be applied in perspective views which is different from using a zero angle.", - "dflt": "auto", - "editType": "calc", - "valType": "number" - }, - "anglesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `angle`.", - "editType": "none", - "valType": "string" - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "calc", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "calc", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "calc", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "calc", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } + "carpet": { + "animatable": true, + "attributes": { + "a": { + "description": "An array containing values of the first parameter value", + "editType": "calc", + "valType": "data_array" + }, + "a0": { + "description": "Alternate to `a`. Builds a linear space of a coordinates. Use with `da` where `a0` is the starting coordinate and `da` the step.", + "dflt": 0, + "editType": "calc", + "valType": "number" + }, + "aaxis": { + "arraydtick": { + "description": "The stride between grid lines along the axis", + "dflt": 1, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "arraytick0": { + "description": "The starting index of grid lines along the axis", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "autorange": { + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*.", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ] + }, + "autotypenumbers": { + "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", + "dflt": "convert types", + "editType": "calc", + "valType": "enumerated", + "values": [ + "convert types", + "strict" + ] + }, + "categoryarray": { + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", + "editType": "calc", + "valType": "data_array" + }, + "categoryarraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", + "editType": "none", + "valType": "string" + }, + "categoryorder": { + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`.", + "dflt": "trace", + "editType": "calc", + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array" + ] + }, + "cheatertype": { + "dflt": "value", + "editType": "calc", + "valType": "enumerated", + "values": [ + "index", + "value" + ] + }, + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "editType": "calc", + "valType": "color" + }, + "dtick": { + "description": "The stride between grid lines along the axis", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "editType": "calc", + "endline": { + "description": "Determines whether or not a line is drawn at along the final value of this axis. If *true*, the end line is drawn on top of the grid lines.", + "editType": "calc", + "valType": "boolean" + }, + "endlinecolor": { + "description": "Sets the line color of the end line.", + "editType": "calc", + "valType": "color" + }, + "endlinewidth": { + "description": "Sets the width (in px) of the end line.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", + "dflt": "B", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "fixedrange": { + "description": "Determines whether or not this axis is zoom-able. If true, then zoom is disabled.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "gridcolor": { + "description": "Sets the axis line color.", + "editType": "calc", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "calc", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "calc", + "valType": "any" + }, + "labelpadding": { + "description": "Extra padding between label and the axis", + "dflt": 10, + "editType": "calc", + "valType": "integer" + }, + "labelprefix": { + "description": "Sets a axis label prefix.", + "editType": "calc", + "valType": "string" + }, + "labelsuffix": { + "description": "Sets a axis label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number", + "dflt": 3, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "minorgridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "calc", + "valType": "color" + }, + "minorgridcount": { + "description": "Sets the number of minor grid ticks per major grid tick", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "minorgriddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "calc", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "minorgridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "range": { + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "rangemode": { + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ] + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether axis labels are drawn on the low side, the high side, both, or neither side of the axis.", + "dflt": "start", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "end", + "both", + "none" + ] + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "smoothing": { + "dflt": 1, + "editType": "calc", + "max": 1.3, + "min": 0, + "valType": "number" + }, + "startline": { + "description": "Determines whether or not a line is drawn at along the starting value of this axis. If *true*, the start line is drawn on top of the grid lines.", + "editType": "calc", + "valType": "boolean" + }, + "startlinecolor": { + "description": "Sets the line color of the start line.", + "editType": "calc", + "valType": "color" + }, + "startlinewidth": { + "description": "Sets the width (in px) of the start line.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "tick0": { + "description": "The starting index of grid lines along the axis", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "calc", + "valType": "angle" + }, + "tickfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "calc", + "valType": "string" + } + } + }, + "role": "object" + }, + "tickmode": { + "dflt": "array", + "editType": "calc", + "valType": "enumerated", + "values": [ + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "calc", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "title": { + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "offset": { + "description": "An additional amount by which to offset the title from the tick labels, given in pixels.", + "dflt": 10, + "editType": "calc", + "valType": "number" + }, + "role": "object", + "text": { + "description": "Sets the title of this axis.", + "dflt": "", + "editType": "calc", + "valType": "string" + } + }, + "type": { + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", + "dflt": "-", + "editType": "calc", + "valType": "enumerated", + "values": [ + "-", + "linear", + "date", + "category" + ] + } + }, + "asrc": { + "description": "Sets the source reference on Chart Studio Cloud for `a`.", + "editType": "none", + "valType": "string" + }, + "b": { + "description": "A two dimensional array of y coordinates at each carpet point.", + "editType": "calc", + "valType": "data_array" + }, + "b0": { + "description": "Alternate to `b`. Builds a linear space of a coordinates. Use with `db` where `b0` is the starting coordinate and `db` the step.", + "dflt": 0, + "editType": "calc", + "valType": "number" + }, + "baxis": { + "arraydtick": { + "description": "The stride between grid lines along the axis", + "dflt": 1, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "arraytick0": { + "description": "The starting index of grid lines along the axis", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "autorange": { + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*.", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ] + }, + "autotypenumbers": { + "description": "Using *strict* a numeric string in trace data is not converted to a number. Using *convert types* a numeric string in trace data may be treated as a number during automatic axis `type` detection. Defaults to layout.autotypenumbers.", + "dflt": "convert types", + "editType": "calc", + "valType": "enumerated", + "values": [ + "convert types", + "strict" + ] + }, + "categoryarray": { + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", + "editType": "calc", + "valType": "data_array" + }, + "categoryarraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", + "editType": "none", + "valType": "string" + }, + "categoryorder": { + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`.", + "dflt": "trace", + "editType": "calc", + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array" + ] + }, + "cheatertype": { + "dflt": "value", + "editType": "calc", + "valType": "enumerated", + "values": [ + "index", + "value" + ] + }, + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "editType": "calc", + "valType": "color" + }, + "dtick": { + "description": "The stride between grid lines along the axis", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "editType": "calc", + "endline": { + "description": "Determines whether or not a line is drawn at along the final value of this axis. If *true*, the end line is drawn on top of the grid lines.", + "editType": "calc", + "valType": "boolean" + }, + "endlinecolor": { + "description": "Sets the line color of the end line.", + "editType": "calc", + "valType": "color" + }, + "endlinewidth": { + "description": "Sets the width (in px) of the end line.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", + "dflt": "B", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "fixedrange": { + "description": "Determines whether or not this axis is zoom-able. If true, then zoom is disabled.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "gridcolor": { + "description": "Sets the axis line color.", + "editType": "calc", + "valType": "color" + }, + "griddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "calc", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "gridwidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "calc", + "valType": "any" + }, + "labelpadding": { + "description": "Extra padding between label and the axis", + "dflt": 10, + "editType": "calc", + "valType": "integer" + }, + "labelprefix": { + "description": "Sets a axis label prefix.", + "editType": "calc", + "valType": "string" + }, + "labelsuffix": { + "description": "Sets a axis label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number", + "dflt": 3, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "minorgridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "calc", + "valType": "color" + }, + "minorgridcount": { + "description": "Sets the number of minor grid ticks per major grid tick", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "minorgriddash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "calc", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "minorgridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "range": { + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "rangemode": { + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ] + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether axis labels are drawn on the low side, the high side, both, or neither side of the axis.", + "dflt": "start", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "end", + "both", + "none" + ] + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "smoothing": { + "dflt": 1, + "editType": "calc", + "max": 1.3, + "min": 0, + "valType": "number" + }, + "startline": { + "description": "Determines whether or not a line is drawn at along the starting value of this axis. If *true*, the start line is drawn on top of the grid lines.", + "editType": "calc", + "valType": "boolean" + }, + "startlinecolor": { + "description": "Sets the line color of the start line.", + "editType": "calc", + "valType": "color" + }, + "startlinewidth": { + "description": "Sets the width (in px) of the start line.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "tick0": { + "description": "The starting index of grid lines along the axis", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "calc", + "valType": "angle" + }, + "tickfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "calc", + "valType": "string" + } + } + }, + "role": "object" + }, + "tickmode": { + "dflt": "array", + "editType": "calc", + "valType": "enumerated", + "values": [ + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "calc", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "title": { + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "offset": { + "description": "An additional amount by which to offset the title from the tick labels, given in pixels.", + "dflt": 10, + "editType": "calc", + "valType": "number" + }, + "role": "object", + "text": { + "description": "Sets the title of this axis.", + "dflt": "", + "editType": "calc", + "valType": "string" + } + }, + "type": { + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", + "dflt": "-", + "editType": "calc", + "valType": "enumerated", + "values": [ + "-", + "linear", + "date", + "category" + ] + } + }, + "bsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `b`.", + "editType": "none", + "valType": "string" + }, + "carpet": { + "description": "An identifier for this carpet, so that `scattercarpet` and `contourcarpet` traces can specify a carpet plot on which they lie", + "editType": "calc", + "valType": "string" + }, + "cheaterslope": { + "description": "The shift applied to each successive row of data in creating a cheater plot. Only used if `x` is been omitted.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "da": { + "description": "Sets the a coordinate step. See `a0` for more info.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "db": { + "description": "Sets the b coordinate step. See `b0` for more info.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "font": { + "color": { + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "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.", + "dflt": "\"Open Sans\", verdana, arial, sans-serif", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "dflt": 12, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "ids": { + "anim": true, + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "type": "carpet", + "uid": { + "anim": true, + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "A two dimensional array of x coordinates at each carpet point. If omitted, the plot is a cheater plot and the xaxis is hidden by default.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "A two dimensional array of y coordinates at each carpet point.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" + } + }, + "categories": [ + "cartesian", + "svg", + "carpet", + "carpetAxis", + "notLegendIsolatable", + "noMultiCategory", + "noHover", + "noSortingByValue" + ], + "meta": { + "description": "The data describing carpet axis layout is set in `y` and (optionally) also `x`. If only `y` is present, `x` the plot is interpreted as a cheater plot and is filled in using the `y` values. `x` and `y` may either be 2D arrays matching with each dimension matching that of `a` and `b`, or they may be 1D arrays with total length equal to that of `a` and `b`." + }, + "type": "carpet" + }, + "choropleth": { + "animatable": false, + "attributes": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "featureidkey": { + "description": "Sets the key in GeoJSON features which is used as id to match the items included in the `locations` array. Only has an effect when `geojson` is set. Support nested property, for example *properties.name*.", + "dflt": "id", + "editType": "calc", + "valType": "string" + }, + "geo": { + "description": "Sets a reference between this trace's geospatial coordinates and a geographic map. If *geo* (the default value), the geospatial coordinates refer to `layout.geo`. If *geo2*, the geospatial coordinates refer to `layout.geo2`, and so on.", + "dflt": "geo", + "editType": "calc", + "valType": "subplotid" + }, + "geojson": { + "description": "Sets optional GeoJSON data associated with this trace. If not given, the features on the base map are used. It can be set as a valid GeoJSON object or as a URL string. Note that we only accept GeoJSONs of type *FeatureCollection* or *Feature* with geometries of type *Polygon* or *MultiPolygon*.", + "editType": "calc", + "valType": "any" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "location", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "locationmode": { + "description": "The library used by the *country names* `locationmode` option is changing in an upcoming version. Country names in existing plots may not work in the new version. Determines the set of locations used to match entries in `locations` to regions on the map. Values *ISO-3*, *USA-states*, *country names* correspond to features on the base map and value *geojson-id* corresponds to features from a custom GeoJSON linked to the `geojson` attribute.", + "dflt": "ISO-3", + "editType": "calc", + "valType": "enumerated", + "values": [ + "ISO-3", + "USA-states", + "country names", + "geojson-id" + ] + }, + "locations": { + "description": "Sets the coordinates via location IDs or names. See `locationmode` for more info.", + "editType": "calc", + "valType": "data_array" + }, + "locationssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `locations`.", + "editType": "none", + "valType": "string" + }, + "marker": { + "editType": "calc", + "line": { + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "opacity": { + "arrayOk": true, + "description": "Sets the opacity of the locations.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "role": "object" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "selected": { + "editType": "plot", + "marker": { + "editType": "plot", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "role": "object" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": false, + "editType": "style", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "arrayOk": true, + "description": "Sets the text elements associated with each location.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "type": "choropleth", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "plot", + "marker": { + "editType": "plot", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "role": "object" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "z": { + "description": "Sets the color values.", + "editType": "calc", + "valType": "data_array" + }, + "zauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "zmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zmid": { + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "zmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } + }, + "categories": [ + "geo", + "noOpacity", + "showLegend" + ], + "meta": { + "description": "The data that describes the choropleth value-to-color mapping is set in `z`. The geographic locations corresponding to each value in `z` are set in `locations`." + }, + "type": "choropleth" + }, + "choroplethmap": { + "animatable": false, + "attributes": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "below": { + "description": "Determines if the choropleth polygons will be inserted before the layer with the specified ID. By default, choroplethmap traces are placed above the water layers. If set to '', the layer will be inserted above every existing layer.", + "editType": "plot", + "valType": "string" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "featureidkey": { + "description": "Sets the key in GeoJSON features which is used as id to match the items included in the `locations` array. Support nested property, for example *properties.name*.", + "dflt": "id", + "editType": "calc", + "valType": "string" + }, + "geojson": { + "description": "Sets the GeoJSON data associated with this trace. It can be set as a valid GeoJSON object or as a URL string. Note that we only accept GeoJSONs of type *FeatureCollection* or *Feature* with geometries of type *Polygon* or *MultiPolygon*.", + "editType": "calc", + "valType": "any" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "location", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variable `properties` Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "locations": { + "description": "Sets which features found in *geojson* to plot using their feature `id` field.", + "editType": "calc", + "valType": "data_array" + }, + "locationssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `locations`.", + "editType": "none", + "valType": "string" + }, + "marker": { + "editType": "calc", + "line": { + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "opacity": { + "arrayOk": true, + "description": "Sets the opacity of the locations.", + "dflt": 1, + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "role": "object" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "selected": { + "editType": "plot", + "marker": { + "editType": "plot", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "role": "object" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": false, + "editType": "style", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "subplot": { + "description": "Sets a reference between this trace's data coordinates and a map subplot. If *map* (the default value), the data refer to `layout.map`. If *map2*, the data refer to `layout.map2`, and so on.", + "dflt": "map", + "editType": "calc", + "valType": "subplotid" + }, + "text": { + "arrayOk": true, + "description": "Sets the text elements associated with each location.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "type": "choroplethmap", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "plot", + "marker": { + "editType": "plot", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "role": "object" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "z": { + "description": "Sets the color values.", + "editType": "calc", + "valType": "data_array" + }, + "zauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "zmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zmid": { + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "zmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } + }, + "categories": [ + "map", + "gl", + "noOpacity", + "showLegend" + ], + "meta": { + "description": "GeoJSON features to be filled are set in `geojson` The data that describes the choropleth value-to-color mapping is set in `locations` and `z`.", + "hr_name": "choropleth_map" + }, + "type": "choroplethmap" + }, + "choroplethmapbox": { + "animatable": false, + "attributes": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "below": { + "description": "Determines if the choropleth polygons will be inserted before the layer with the specified ID. By default, choroplethmapbox traces are placed above the water layers. If set to '', the layer will be inserted above every existing layer.", + "editType": "plot", + "valType": "string" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "featureidkey": { + "description": "Sets the key in GeoJSON features which is used as id to match the items included in the `locations` array. Support nested property, for example *properties.name*.", + "dflt": "id", + "editType": "calc", + "valType": "string" + }, + "geojson": { + "description": "Sets the GeoJSON data associated with this trace. It can be set as a valid GeoJSON object or as a URL string. Note that we only accept GeoJSONs of type *FeatureCollection* or *Feature* with geometries of type *Polygon* or *MultiPolygon*.", + "editType": "calc", + "valType": "any" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "location", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variable `properties` Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "locations": { + "description": "Sets which features found in *geojson* to plot using their feature `id` field.", + "editType": "calc", + "valType": "data_array" + }, + "locationssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `locations`.", + "editType": "none", + "valType": "string" + }, + "marker": { + "editType": "calc", + "line": { + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "opacity": { + "arrayOk": true, + "description": "Sets the opacity of the locations.", + "dflt": 1, + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "role": "object" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "selected": { + "editType": "plot", + "marker": { + "editType": "plot", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "role": "object" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": false, + "editType": "style", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "subplot": { + "description": "mapbox subplots and traces are deprecated! Please consider switching to `map` subplots and traces. Learn more at: https://plotly.com/python/maplibre-migration/ as well as https://plotly.com/javascript/maplibre-migration/ Sets a reference between this trace's data coordinates and a mapbox subplot. If *mapbox* (the default value), the data refer to `layout.mapbox`. If *mapbox2*, the data refer to `layout.mapbox2`, and so on.", + "dflt": "mapbox", + "editType": "calc", + "valType": "subplotid" + }, + "text": { + "arrayOk": true, + "description": "Sets the text elements associated with each location.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "type": "choroplethmapbox", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "plot", + "marker": { + "editType": "plot", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "role": "object" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "z": { + "description": "Sets the color values.", + "editType": "calc", + "valType": "data_array" + }, + "zauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "zmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zmid": { + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "zmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } + }, + "categories": [ + "mapbox", + "gl", + "noOpacity", + "showLegend" + ], + "meta": { + "description": "*choroplethmapbox* trace is deprecated! Please consider switching to the *choroplethmap* trace type and `map` subplots. Learn more at: https://plotly.com/python/maplibre-migration/ as well as https://plotly.com/javascript/maplibre-migration/ GeoJSON features to be filled are set in `geojson` The data that describes the choropleth value-to-color mapping is set in `locations` and `z`.", + "hr_name": "choropleth_mapbox" + }, + "type": "choroplethmapbox" + }, + "cone": { + "animatable": false, + "attributes": { + "anchor": { + "description": "Sets the cones' anchor with respect to their x/y/z positions. Note that *cm* denote the cone's center of mass which corresponds to 1/4 from the tail to tip.", + "dflt": "cm", + "editType": "calc", + "valType": "enumerated", + "values": [ + "tip", + "tail", + "cm", + "center" + ] + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here u/v/w norm) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as u/v/w norm. Has no effect when `cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "x+y+z+norm+text+name", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "u", + "v", + "w", + "norm", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variable `norm` Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "lighting": { + "ambient": { + "description": "Ambient light increases overall color visibility but can wash out the image.", + "dflt": 0.8, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "diffuse": { + "description": "Represents the extent that incident rays are reflected in a range of angles.", + "dflt": 0.8, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "editType": "calc", + "facenormalsepsilon": { + "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry.", + "dflt": 0.000001, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "fresnel": { + "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", + "dflt": 0.2, + "editType": "calc", + "max": 5, + "min": 0, + "valType": "number" + }, + "role": "object", + "roughness": { + "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", + "dflt": 0.5, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "specular": { + "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", + "dflt": 0.05, + "editType": "calc", + "max": 2, + "min": 0, + "valType": "number" + }, + "vertexnormalsepsilon": { + "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry.", + "dflt": 1e-12, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + }, + "lightposition": { + "editType": "calc", + "role": "object", + "x": { + "description": "Numeric vector, representing the X coordinate for each vertex.", + "dflt": 100000, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + }, + "y": { + "description": "Numeric vector, representing the Y coordinate for each vertex.", + "dflt": 100000, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + }, + "z": { + "description": "Numeric vector, representing the Z coordinate for each vertex.", + "dflt": 0, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "scene": { + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": false, + "editType": "style", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "sizemode": { + "description": "Determines whether `sizeref` is set as a *scaled* (i.e unitless) scalar (normalized by the max u/v/w norm in the vector field) or as *absolute* value (in the same units as the vector field). To display sizes in actual vector length use *raw*.", + "dflt": "scaled", + "editType": "calc", + "valType": "enumerated", + "values": [ + "scaled", + "absolute", + "raw" + ] + }, + "sizeref": { + "description": "Adjusts the cone size scaling. The size of the cones is determined by their u/v/w norm multiplied a factor and `sizeref`. This factor (computed internally) corresponds to the minimum \"time\" to travel across two successive x/y/z positions at the average velocity of those two successive positions. All cones in a given trace use the same factor. With `sizemode` set to *raw*, its default value is *1*. With `sizemode` set to *scaled*, `sizeref` is unitless, its default value is *0.5*. With `sizemode` set to *absolute*, `sizeref` has the same units as the u/v/w vector field, its the default value is half the sample's maximum vector norm.", + "editType": "calc", + "min": 0, + "valType": "number" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "arrayOk": true, + "description": "Sets the text elements associated with the cones. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "type": "cone", + "u": { + "description": "Sets the x components of the vector field.", + "editType": "calc", + "valType": "data_array" + }, + "uhoverformat": { + "description": "Sets the hover text formatting rulefor `u` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "usrc": { + "description": "Sets the source reference on Chart Studio Cloud for `u`.", + "editType": "none", + "valType": "string" + }, + "v": { + "description": "Sets the y components of the vector field.", + "editType": "calc", + "valType": "data_array" + }, + "vhoverformat": { + "description": "Sets the hover text formatting rulefor `v` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "vsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `v`.", + "editType": "none", + "valType": "string" + }, + "w": { + "description": "Sets the z components of the vector field.", + "editType": "calc", + "valType": "data_array" + }, + "whoverformat": { + "description": "Sets the hover text formatting rulefor `w` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "wsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `w`.", + "editType": "none", + "valType": "string" + }, + "x": { + "description": "Sets the x coordinates of the vector field and of the displayed cones.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the y coordinates of the vector field and of the displayed cones.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "z": { + "description": "Sets the z coordinates of the vector field and of the displayed cones.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "zhoverformat": { + "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `zaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "calc", - "valType": "string" + "categories": [ + "gl3d", + "showLegend" + ], + "meta": { + "description": "Use cone traces to visualize vector fields. Specify a vector field using 6 1D arrays, 3 position arrays `x`, `y` and `z` and 3 vector component arrays `u`, `v`, `w`. The cones are drawn exactly at the positions given by `x`, `y` and `z`." }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "type": "cone" + }, + "contour": { + "animatable": false, + "attributes": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": false, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "autocontour": { + "description": "Determines whether or not the contour level attributes are picked by an algorithm. If *true*, the number of contour levels can be set in `ncontours`. If *false*, set the contour level attributes in `contours`.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data are filled in. It is defaulted to true if `z` is a one dimensional array otherwise it is defaulted to false.", + "editType": "calc", + "valType": "boolean" + }, + "contours": { + "coloring": { + "description": "Determines the coloring method showing the contour values. If *fill*, coloring is done evenly between each contour level If *heatmap*, a heatmap gradient coloring is applied between each contour level. If *lines*, coloring is done on the contour lines. If *none*, no coloring is applied on this trace.", + "dflt": "fill", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fill", + "heatmap", + "lines", + "none" + ] + }, + "editType": "calc", + "end": { + "description": "Sets the end contour level value. Must be more than `contours.start`", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "valType": "number" + }, + "impliedEdits": { + "autocontour": false, + "role": "object" + }, + "labelfont": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "labelformat": { + "description": "Sets the contour label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "operation": { + "description": "Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms.", + "dflt": "=", + "editType": "calc", + "valType": "enumerated", + "values": [ + "=", + "<", + ">=", + ">", + "<=", + "[]", + "()", + "[)", + "(]", + "][", + ")(", + "](", + ")[" + ] + }, + "role": "object", + "showlabels": { + "description": "Determines whether to label the contour lines with their values.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showlines": { + "description": "Determines whether or not the contour lines are drawn. Has an effect only if `contours.coloring` is set to *fill*.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "size": { + "description": "Sets the step between each contour level. Must be positive.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "min": 0, + "valType": "number" + }, + "start": { + "description": "Sets the starting contour level value. Must be less than `contours.end`", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "valType": "number" + }, + "type": { + "description": "If `levels`, the data is represented as a contour plot with multiple levels displayed. If `constraint`, the data is represented as constraints with the invalid region shaded as specified by the `operation` and `value` parameters.", + "dflt": "levels", + "editType": "calc", + "valType": "enumerated", + "values": [ + "levels", + "constraint" + ] + }, + "value": { + "description": "Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (`=,<,>=,>,<=`) *value* is expected to be a number. When `operation` is set to one of the interval values (`[],(),[),(],][,)(,](,)[`) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound.", + "dflt": 0, + "editType": "calc", + "valType": "any" + } + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "dx": { + "description": "Sets the x coordinate step. See `x0` for more info.", + "dflt": 1, + "editType": "calc", + "impliedEdits": { + "xtype": "scaled" + }, + "valType": "number" + }, + "dy": { + "description": "Sets the y coordinate step. See `y0` for more info.", + "dflt": 1, + "editType": "calc", + "impliedEdits": { + "ytype": "scaled" + }, + "valType": "number" + }, + "fillcolor": { + "description": "Sets the fill color if `contours.type` is *constraint*. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "calc", + "valType": "color" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hoverongaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data have hover labels associated with them.", + "dflt": true, + "editType": "none", + "valType": "boolean" + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "description": "Same as `text`.", + "editType": "calc", + "valType": "data_array" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "any" - }, - { - "editType": "calc", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "calc", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "color": { + "description": "Sets the color of the contour level. Has no effect if `contours.coloring` is set to *lines*.", + "editType": "style+colorbars", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "plot", + "role": "object", + "smoothing": { + "description": "Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing.", + "dflt": 1, + "editType": "plot", + "max": 1.3, + "min": 0, + "valType": "number" + }, + "width": { + "description": "Sets the contour line width in (in px) Defaults to *0.5* when `contours.type` is *levels*. Defaults to *2* when `contour.type` is *constraint*.", + "editType": "style+colorbars", + "min": 0, + "valType": "number" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "ncontours": { + "description": "Sets the maximum number of contour levels. The actual number of contours will be chosen automatically to be less than or equal to the value of `ncontours`. Has an effect only if `autocontour` is *true* or if `contours.size` is missing.", + "dflt": 15, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", "dflt": true, "editType": "calc", "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "description": "Sets the text elements associated with each z value.", "editType": "calc", + "valType": "data_array" + }, + "textfont": { + "color": { + "dflt": "auto", + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "dflt": "auto", + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "description": "For this trace it only has an effect if `coloring` is set to *heatmap*. Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `x`, `y`, `z` and `text`.", + "dflt": "", + "editType": "plot", "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "transpose": { + "description": "Transposes the z data.", + "dflt": false, "editType": "calc", + "valType": "boolean" + }, + "type": "contour", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "impliedEdits": { + "xtype": "array" + }, + "valType": "data_array" + }, + "x0": { + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "impliedEdits": { + "xtype": "scaled" + }, + "valType": "any" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", "dflt": "", + "editType": "none", + "valType": "string" + }, + "xperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "impliedEdits": { + "xtype": "scaled" + }, + "valType": "any" + }, + "xperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" + }, + "xperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", + "dflt": "middle", + "editType": "calc", + "impliedEdits": { + "xtype": "scaled" + }, + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "xtype": { + "description": "If *array*, the heatmap's x coordinates are given by *x* (the default behavior when `x` is provided). If *scaled*, the heatmap's x coordinates are given by *x0* and *dx* (the default behavior when `x` is not provided).", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "array", + "scaled" + ] + }, + "y": { + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "impliedEdits": { + "ytype": "array" + }, + "valType": "data_array" + }, + "y0": { + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "impliedEdits": { + "ytype": "scaled" + }, + "valType": "any" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "calc", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "calc", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "calc", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "valType": "color" }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" + "yperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "impliedEdits": { + "ytype": "scaled" + }, + "valType": "any" }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "yperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" + "yperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", + "dflt": "middle", + "editType": "calc", + "impliedEdits": { + "ytype": "scaled" + }, + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "ytype": { + "description": "If *array*, the heatmap's y coordinates are given by *y* (the default behavior when `y` is provided) If *scaled*, the heatmap's y coordinates are given by *y0* and *dy* (the default behavior when `y` is not provided)", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "array", + "scaled" + ] }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "z": { + "description": "Sets the z data.", + "editType": "calc", + "valType": "data_array" }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "zauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "calc", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "opacity": { - "arrayOk": true, - "description": "Sets the marker opacity.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "arrayOk": true, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemin": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemode": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", - "dflt": "diameter", - "editType": "calc", - "valType": "enumerated", - "values": [ - "diameter", - "area" - ] - }, - "sizeref": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "symbol": { - "arrayOk": true, - "description": "Sets the marker symbol. Full list: https://www.mapbox.com/maki-icons/ Note that the array `marker.color` and `marker.size` are only available for *circle* symbols.", - "dflt": "circle", - "editType": "calc", - "valType": "string" - }, - "symbolsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", - "editType": "none", - "valType": "string" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "mode": { - "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover.", - "dflt": "markers", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "lines", - "markers", - "text" - ], - "valType": "flaglist" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "selected": { - "editType": "calc", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" + "zhoverformat": { + "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "zmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zmid": { + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "zmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } }, - "role": "object", - "size": { - "description": "Sets the marker size of selected points.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "subplot": { - "description": "Sets a reference between this trace's data coordinates and a map subplot. If *map* (the default value), the data refer to `layout.map`. If *map2*, the data refer to `layout.map2`, and so on.", - "dflt": "map", - "editType": "calc", - "valType": "subplotid" - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "dflt": "Open Sans Regular, Arial Unicode MS Regular", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "role": "object", - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" + "categories": [ + "cartesian", + "svg", + "2dMap", + "contour", + "showLegend" ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "textposition": { - "arrayOk": false, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `lat`, `lon` and `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "type": "scattermap", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "calc", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of unselected points, applied only when a selection exists.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [ - "map", - "gl", - "symbols", - "showLegend", - "scatter-like" - ], - "meta": { - "description": "The data visualized as scatter point, lines or marker symbols on a MapLibre GL geographic map is provided by longitude/latitude pairs in `lon` and `lat`.", - "hrName": "scatter_map" - }, - "type": "scattermap" - }, - "scattermapbox": { - "animatable": false, - "attributes": { - "below": { - "description": "Determines if this scattermapbox trace's layers are to be inserted before the layer with the specified ID. By default, scattermapbox layers are inserted above all the base layers. To place the scattermapbox layers above every other layer, set `below` to *''*.", - "editType": "calc", - "valType": "string" - }, - "cluster": { - "color": { - "arrayOk": true, - "description": "Sets the color for each cluster step.", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "enabled": { - "description": "Determines whether clustering is enabled or disabled.", - "editType": "calc", - "valType": "boolean" - }, - "maxzoom": { - "description": "Sets the maximum zoom level. At zoom levels equal to or greater than this, points will never be clustered.", - "dflt": 24, - "editType": "calc", - "max": 24, - "min": 0, - "valType": "number" - }, - "opacity": { - "arrayOk": true, - "description": "Sets the marker opacity.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "size": { - "arrayOk": true, - "description": "Sets the size for each cluster step.", - "dflt": 20, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "step": { - "arrayOk": true, - "description": "Sets how many points it takes to create a cluster or advance to the next cluster step. Use this in conjunction with arrays for `size` and / or `color`. If an integer, steps start at multiples of this number. If an array, each step extends from the given value until one less than the next value.", - "dflt": -1, - "editType": "calc", - "min": -1, - "valType": "number" - }, - "stepsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `step`.", - "editType": "none", - "valType": "string" - } - }, - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "fill": { - "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape.", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "toself" - ] - }, - "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "calc", - "valType": "color" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "lon", - "lat", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "lat": { - "description": "Sets the latitude coordinates (in degrees North).", - "editType": "calc", - "valType": "data_array" - }, - "latsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lat`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "color": { - "description": "Sets the line color.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "role": "object", - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "lon": { - "description": "Sets the longitude coordinates (in degrees East).", - "editType": "calc", - "valType": "data_array" - }, - "lonsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lon`.", - "editType": "none", - "valType": "string" - }, - "marker": { - "allowoverlap": { - "description": "Flag to draw all symbols, even if they overlap.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "angle": { - "arrayOk": true, - "description": "Sets the marker orientation from true North, in degrees clockwise. When using the *auto* default, no rotation would be applied in perspective views which is different from using a zero angle.", - "dflt": "auto", - "editType": "calc", - "valType": "number" - }, - "anglesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `angle`.", - "editType": "none", - "valType": "string" - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "calc", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "calc", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "calc", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "calc", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "meta": { + "description": "The data from which contour lines are computed is set in `z`. Data in `z` must be a {2D array} of numbers. Say that `z` has N rows and M columns, then by default, these N rows correspond to N y coordinates (set in `y` or auto-generated) and the M columns correspond to M x coordinates (set in `x` or auto-generated). By setting `transpose` to *true*, the above behavior is flipped." + }, + "type": "contour" + }, + "contourcarpet": { + "animatable": false, + "attributes": { + "a": { + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "impliedEdits": { + "xtype": "array" + }, + "valType": "data_array" + }, + "a0": { + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "impliedEdits": { + "xtype": "scaled" + }, + "valType": "any" + }, + "asrc": { + "description": "Sets the source reference on Chart Studio Cloud for `a`.", + "editType": "none", + "valType": "string" + }, + "atype": { + "description": "If *array*, the heatmap's x coordinates are given by *x* (the default behavior when `x` is provided). If *scaled*, the heatmap's x coordinates are given by *x0* and *dx* (the default behavior when `x` is not provided).", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "array", + "scaled" + ] + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": false, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "autocontour": { + "description": "Determines whether or not the contour level attributes are picked by an algorithm. If *true*, the number of contour levels can be set in `ncontours`. If *false*, set the contour level attributes in `contours`.", + "dflt": true, "editType": "calc", - "items": [ - { - "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "b": { + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "impliedEdits": { + "ytype": "array" + }, + "valType": "data_array" + }, + "b0": { + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "impliedEdits": { + "ytype": "scaled" + }, + "valType": "any" + }, + "bsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `b`.", + "editType": "none", + "valType": "string" + }, + "btype": { + "description": "If *array*, the heatmap's y coordinates are given by *y* (the default behavior when `y` is provided) If *scaled*, the heatmap's y coordinates are given by *y0* and *dy* (the default behavior when `y` is not provided)", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "array", + "scaled" + ] + }, + "carpet": { + "description": "The `carpet` of the carpet axes on which this contour trace lies", + "editType": "calc", + "valType": "string" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, "valType": "any" - }, - { + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "contours": { + "coloring": { + "description": "Determines the coloring method showing the contour values. If *fill*, coloring is done evenly between each contour level If *lines*, coloring is done on the contour lines. If *none*, no coloring is applied on this trace.", + "dflt": "fill", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fill", + "lines", + "none" + ] + }, + "editType": "calc", + "end": { + "description": "Sets the end contour level value. Must be more than `contours.start`", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "valType": "number" + }, + "impliedEdits": { + "autocontour": false, + "role": "object" + }, + "labelfont": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "labelformat": { + "description": "Sets the contour label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "operation": { + "description": "Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms.", + "dflt": "=", + "editType": "calc", + "valType": "enumerated", + "values": [ + "=", + "<", + ">=", + ">", + "<=", + "[]", + "()", + "[)", + "(]", + "][", + ")(", + "](", + ")[" + ] + }, + "role": "object", + "showlabels": { + "description": "Determines whether to label the contour lines with their values.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showlines": { + "description": "Determines whether or not the contour lines are drawn. Has an effect only if `contours.coloring` is set to *fill*.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "size": { + "description": "Sets the step between each contour level. Must be positive.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "min": 0, + "valType": "number" + }, + "start": { + "description": "Sets the starting contour level value. Must be less than `contours.end`", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "valType": "number" + }, + "type": { + "description": "If `levels`, the data is represented as a contour plot with multiple levels displayed. If `constraint`, the data is represented as constraints with the invalid region shaded as specified by the `operation` and `value` parameters.", + "dflt": "levels", + "editType": "calc", + "valType": "enumerated", + "values": [ + "levels", + "constraint" + ] + }, + "value": { + "description": "Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (`=,<,>=,>,<=`) *value* is expected to be a number. When `operation` is set to one of the interval values (`[],(),[),(],][,)(,](,)[`) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound.", + "dflt": 0, "editType": "calc", "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "calc", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, + } + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", "editType": "calc", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "da": { + "description": "Sets the x coordinate step. See `x0` for more info.", + "dflt": 1, + "editType": "calc", + "impliedEdits": { + "xtype": "scaled" + }, + "valType": "number" + }, + "db": { + "description": "Sets the y coordinate step. See `y0` for more info.", + "dflt": 1, + "editType": "calc", + "impliedEdits": { + "ytype": "scaled" + }, + "valType": "number" + }, + "fillcolor": { + "description": "Sets the fill color if `contours.type` is *constraint*. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "calc", + "valType": "color" + }, + "hovertext": { + "description": "Same as `text`.", "editType": "calc", + "valType": "data_array" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "color": { + "description": "Sets the color of the contour level. Has no effect if `contours.coloring` is set to *lines*.", + "editType": "style+colorbars", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "plot", + "role": "object", + "smoothing": { + "description": "Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing.", + "dflt": 1, + "editType": "plot", + "max": 1.3, + "min": 0, + "valType": "number" + }, + "width": { + "description": "Sets the contour line width in (in px) Defaults to *0.5* when `contours.type` is *levels*. Defaults to *2* when `contour.type` is *constraint*.", + "editType": "style+colorbars", + "min": 0, + "valType": "number" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "ncontours": { + "description": "Sets the maximum number of contour levels. The actual number of contours will be chosen automatically to be less than or equal to the value of `ncontours`. Has an effect only if `autocontour` is *true* or if `contours.size` is missing.", + "dflt": 15, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "description": "Sets the text elements associated with each z value.", "editType": "calc", + "valType": "data_array" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "calc", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "calc", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "calc", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "valType": "color" }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" + "transpose": { + "description": "Transposes the z data.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "type": "contourcarpet", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "z": { + "description": "Sets the z data.", + "editType": "calc", + "valType": "data_array" }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" + "zauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" + "zmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "zauto": false + }, + "valType": "number" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "zmid": { + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "zmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "zauto": false + }, + "valType": "number" }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "calc", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "opacity": { - "arrayOk": true, - "description": "Sets the marker opacity.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "arrayOk": true, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemin": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemode": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", - "dflt": "diameter", - "editType": "calc", - "valType": "enumerated", - "values": [ - "diameter", - "area" - ] - }, - "sizeref": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "symbol": { - "arrayOk": true, - "description": "Sets the marker symbol. Full list: https://www.mapbox.com/maki-icons/ Note that the array `marker.color` and `marker.size` are only available for *circle* symbols.", - "dflt": "circle", - "editType": "calc", - "valType": "string" - }, - "symbolsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", - "editType": "none", - "valType": "string" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "mode": { - "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover.", - "dflt": "markers", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "lines", - "markers", - "text" - ], - "valType": "flaglist" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "selected": { - "editType": "calc", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of selected points.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "subplot": { - "description": "mapbox subplots and traces are deprecated! Please consider switching to `map` subplots and traces. Learn more at: https://plotly.com/python/maplibre-migration/ as well as https://plotly.com/javascript/maplibre-migration/ Sets a reference between this trace's data coordinates and a mapbox subplot. If *mapbox* (the default value), the data refer to `layout.mapbox`. If *mapbox2*, the data refer to `layout.mapbox2`, and so on.", - "dflt": "mapbox", - "editType": "calc", - "valType": "subplotid" - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "dflt": "Open Sans Regular, Arial Unicode MS Regular", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "role": "object", - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "textposition": { - "arrayOk": false, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `lat`, `lon` and `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "type": "scattermapbox", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "calc", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of unselected points, applied only when a selection exists.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [ - "mapbox", - "gl", - "symbols", - "showLegend", - "scatter-like" - ], - "meta": { - "description": "*scattermapbox* trace is deprecated! Please consider switching to the *scattermap* trace type and `map` subplots. Learn more at: https://plotly.com/python/maplibre-migration/ as well as https://plotly.com/javascript/maplibre-migration/ The data visualized as scatter point, lines or marker symbols on a Mapbox GL geographic map is provided by longitude/latitude pairs in `lon` and `lat`.", - "hrName": "scatter_mapbox" - }, - "type": "scattermapbox" - }, - "scatterpolar": { - "animatable": false, - "attributes": { - "cliponaxis": { - "description": "Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "dr": { - "description": "Sets the r coordinate step.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "dtheta": { - "description": "Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates.", - "editType": "calc", - "valType": "number" - }, - "fill": { - "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterpolar has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "toself", - "tonext" - ] - }, - "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "style", - "valType": "color" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "r", - "theta", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hoveron": { - "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", - "editType": "style", - "flags": [ - "points", - "fills" - ], - "valType": "flaglist" - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "backoff": { - "arrayOk": true, - "description": "Sets the line back off from the end point of the nth line segment (in px). This option is useful e.g. to avoid overlap with arrowhead markers. With *auto* the lines would trim before markers if `marker.angleref` is set to *previous*.", - "dflt": "auto", - "editType": "plot", - "min": 0, - "valType": "number" - }, - "backoffsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `backoff`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the line color.", - "editType": "style", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "calc", - "role": "object", - "shape": { - "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", - "dflt": "linear", - "editType": "plot", - "valType": "enumerated", - "values": [ - "linear", - "spline" - ] - }, - "smoothing": { - "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", - "dflt": 1, - "editType": "plot", - "max": 1.3, - "min": 0, - "valType": "number" - }, - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "marker": { - "angle": { - "arrayOk": true, - "description": "Sets the marker angle in respect to `angleref`.", - "dflt": 0, - "editType": "plot", - "valType": "angle" - }, - "angleref": { - "description": "Sets the reference for marker angle. With *previous*, angle 0 points along the line from the previous point to this one. With *up*, angle 0 points toward the top of the screen.", - "dflt": "up", - "editType": "plot", - "valType": "enumerated", - "values": [ - "previous", - "up" - ] - }, - "anglesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `angle`.", - "editType": "none", - "valType": "string" - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" + "categories": [ + "cartesian", + "svg", + "carpet", + "contour", + "symbols", + "showLegend", + "hasLines", + "carpetDependent", + "noHover", + "noSortingByValue" + ], + "meta": { + "description": "Plots contours on either the first carpet axis or the carpet axis with a matching `carpet` attribute. Data `z` is interpreted as matching that of the corresponding carpet axis.", + "hrName": "contour_carpet" }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } + "type": "contourcarpet" + }, + "densitymap": { + "animatable": false, + "attributes": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "below": { + "description": "Determines if the densitymap trace will be inserted before the layer with the specified ID. By default, densitymap traces are placed below the first layer of type symbol If set to '', the layer will be inserted above every existing layer.", + "editType": "plot", + "valType": "string" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "lon", + "lat", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "lat": { + "description": "Sets the latitude coordinates (in degrees North).", + "editType": "calc", + "valType": "data_array" + }, + "latsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lat`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "lon": { + "description": "Sets the longitude coordinates (in degrees East).", + "editType": "calc", + "valType": "data_array" + }, + "lonsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lon`.", + "editType": "none", + "valType": "string" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "radius": { + "arrayOk": true, + "description": "Sets the radius of influence of one `lon` / `lat` point in pixels. Increasing the value makes the densitymap trace smoother, but less detailed.", + "dflt": 30, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "radiussrc": { + "description": "Sets the source reference on Chart Studio Cloud for `radius`.", + "editType": "none", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": false, + "editType": "style", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "subplot": { + "description": "Sets a reference between this trace's data coordinates and a map subplot. If *map* (the default value), the data refer to `layout.map`. If *map2*, the data refer to `layout.map2`, and so on.", + "dflt": "map", + "editType": "calc", + "valType": "subplotid" + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "type": "densitymap", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "z": { + "description": "Sets the points' weight. For example, a value of 10 would be equivalent to having 10 points of weight 1 in the same spot", + "editType": "calc", + "valType": "data_array" + }, + "zauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "zmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zmid": { + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "zmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } + }, + "categories": [ + "map", + "gl", + "showLegend" + ], + "meta": { + "description": "Draws a bivariate kernel density estimation with a Gaussian kernel from `lon` and `lat` coordinates and optional `z` values using a colorscale.", + "hr_name": "density_map" + }, + "type": "densitymap" + }, + "densitymapbox": { + "animatable": false, + "attributes": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "below": { + "description": "Determines if the densitymapbox trace will be inserted before the layer with the specified ID. By default, densitymapbox traces are placed below the first layer of type symbol If set to '', the layer will be inserted above every existing layer.", + "editType": "plot", + "valType": "string" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "lon", + "lat", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "lat": { + "description": "Sets the latitude coordinates (in degrees North).", + "editType": "calc", + "valType": "data_array" + }, + "latsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lat`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "lon": { + "description": "Sets the longitude coordinates (in degrees East).", + "editType": "calc", + "valType": "data_array" + }, + "lonsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lon`.", + "editType": "none", + "valType": "string" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "radius": { + "arrayOk": true, + "description": "Sets the radius of influence of one `lon` / `lat` point in pixels. Increasing the value makes the densitymapbox trace smoother, but less detailed.", + "dflt": 30, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "radiussrc": { + "description": "Sets the source reference on Chart Studio Cloud for `radius`.", + "editType": "none", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": false, + "editType": "style", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "subplot": { + "description": "mapbox subplots and traces are deprecated! Please consider switching to `map` subplots and traces. Learn more at: https://plotly.com/python/maplibre-migration/ as well as https://plotly.com/javascript/maplibre-migration/ Sets a reference between this trace's data coordinates and a mapbox subplot. If *mapbox* (the default value), the data refer to `layout.mapbox`. If *mapbox2*, the data refer to `layout.mapbox2`, and so on.", + "dflt": "mapbox", + "editType": "calc", + "valType": "subplotid" + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "type": "densitymapbox", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "z": { + "description": "Sets the points' weight. For example, a value of 10 would be equivalent to having 10 points of weight 1 in the same spot", + "editType": "calc", + "valType": "data_array" + }, + "zauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "zmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zmid": { + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "zmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" + "categories": [ + "mapbox", + "gl", + "showLegend" + ], + "meta": { + "description": "*densitymapbox* trace is deprecated! Please consider switching to the *densitymap* trace type and `map` subplots. Learn more at: https://plotly.com/python/maplibre-migration/ as well as https://plotly.com/javascript/maplibre-migration/ Draws a bivariate kernel density estimation with a Gaussian kernel from `lon` and `lat` coordinates and optional `z` values using a colorscale.", + "hr_name": "density_mapbox" }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } + "type": "densitymapbox" + }, + "funnel": { + "animatable": false, + "attributes": { + "alignmentgroup": { + "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "cliponaxis": { + "description": "Determines whether the text nodes are clipped about the subplot axes. To show the text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "connector": { + "editType": "plot", + "fillcolor": { + "description": "Sets the fill color.", + "editType": "style", + "valType": "color" + }, + "line": { + "color": { + "description": "Sets the line color.", + "dflt": "#444", + "editType": "style", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "style", + "role": "object", + "width": { + "description": "Sets the line width (in px).", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "visible": { + "description": "Determines if connector regions and lines are drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + } + }, + "constraintext": { + "description": "Constrain the size of text inside or outside a bar to be no larger than the bar itself.", + "dflt": "both", + "editType": "calc", + "valType": "enumerated", + "values": [ + "inside", + "outside", + "both", + "none" + ] + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "dx": { + "description": "Sets the x coordinate step. See `x0` for more info.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "dy": { + "description": "Sets the y coordinate step. See `y0` for more info.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "flags": [ + "name", + "x", + "y", + "text", + "percent initial", + "percent previous", + "percent total" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `percentInitial`, `percentPrevious` and `percentTotal`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "insidetextanchor": { + "description": "Determines if texts are kept at center or start/end points in `textposition` *inside* mode.", + "dflt": "middle", + "editType": "plot", + "valType": "enumerated", + "values": [ + "end", + "middle", + "start" + ] + }, + "insidetextfont": { + "color": { + "arrayOk": true, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `text` lying inside the bar.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "marker": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "opacity": { + "arrayOk": true, + "description": "Sets the opacity of the bars.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "offset": { + "arrayOk": false, + "description": "Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead.", + "dflt": null, + "editType": "calc", + "valType": "number" + }, + "offsetgroup": { + "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "orientation": { + "description": "Sets the orientation of the funnels. With *v* (*h*), the value of the each bar spans along the vertical (horizontal). By default funnels are tend to be oriented horizontally; unless only *y* array is presented or orientation is set to *v*. Also regarding graphs including only 'horizontal' funnels, *autorange* on the *y-axis* are set to *reversed*.", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "v", + "h" + ] + }, + "outsidetextfont": { + "color": { + "arrayOk": true, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `text` lying outside the bar.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, - "editType": "colorbars", + "editType": "style", "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textangle": { + "description": "Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars.", + "dflt": 0, + "editType": "plot", + "valType": "angle" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `text`.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textinfo": { + "arrayOk": false, + "description": "Determines which trace information appear on the graph. In the case of having multiple funnels, percentages & totals are computed separately (per trace).", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "label", + "text", + "percent initial", + "percent previous", + "percent total", + "value" + ], + "valType": "flaglist" + }, + "textposition": { + "arrayOk": true, + "description": "Specifies the location of the `text`. *inside* positions `text` inside, next to the bar end (rotated and scaled if needed). *outside* positions `text` outside, next to the bar end (scaled if needed), unless there is another bar stacked on this one, then the text gets pushed inside. *auto* tries to position `text` inside the bar, but if the bar is too small and no bar is stacked on this one the text is moved outside. If *none*, no text appears.", + "dflt": "auto", + "editType": "calc", + "valType": "enumerated", + "values": [ + "inside", + "outside", + "auto", + "none" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", + "editType": "none", "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `percentInitial`, `percentPrevious`, `percentTotal`, `label` and `value`.", "dflt": "", - "editType": "colorbars", + "editType": "plot", "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "type": "funnel", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "gradient": { - "color": { - "arrayOk": true, - "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "type": { - "arrayOk": true, - "description": "Sets the type of gradient used to fill the markers", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "radial", - "horizontal", - "vertical", - "none" - ] - }, - "typesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `type`.", - "editType": "none", - "valType": "string" - } - }, - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "maxdisplayed": { - "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "opacity": { - "arrayOk": true, - "description": "Sets the marker opacity.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "arrayOk": true, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemin": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemode": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", - "dflt": "diameter", - "editType": "calc", - "valType": "enumerated", - "values": [ - "diameter", - "area" - ] - }, - "sizeref": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "standoff": { - "arrayOk": true, - "description": "Moves the marker away from the data point in the direction of `angle` (in px). This can be useful for example if you have another marker at this location and you want to point an arrowhead marker at it.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "standoffsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `standoff`.", - "editType": "none", - "valType": "string" - }, - "symbol": { - "arrayOk": true, - "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", - "dflt": "circle", - "editType": "style", - "valType": "enumerated", - "values": [ - 0, - "0", - "circle", - 100, - "100", - "circle-open", - 200, - "200", - "circle-dot", - 300, - "300", - "circle-open-dot", - 1, - "1", - "square", - 101, - "101", - "square-open", - 201, - "201", - "square-dot", - 301, - "301", - "square-open-dot", - 2, - "2", - "diamond", - 102, - "102", - "diamond-open", - 202, - "202", - "diamond-dot", - 302, - "302", - "diamond-open-dot", - 3, - "3", - "cross", - 103, - "103", - "cross-open", - 203, - "203", - "cross-dot", - 303, - "303", - "cross-open-dot", - 4, - "4", - "x", - 104, - "104", - "x-open", - 204, - "204", - "x-dot", - 304, - "304", - "x-open-dot", - 5, - "5", - "triangle-up", - 105, - "105", - "triangle-up-open", - 205, - "205", - "triangle-up-dot", - 305, - "305", - "triangle-up-open-dot", - 6, - "6", - "triangle-down", - 106, - "106", - "triangle-down-open", - 206, - "206", - "triangle-down-dot", - 306, - "306", - "triangle-down-open-dot", - 7, - "7", - "triangle-left", - 107, - "107", - "triangle-left-open", - 207, - "207", - "triangle-left-dot", - 307, - "307", - "triangle-left-open-dot", - 8, - "8", - "triangle-right", - 108, - "108", - "triangle-right-open", - 208, - "208", - "triangle-right-dot", - 308, - "308", - "triangle-right-open-dot", - 9, - "9", - "triangle-ne", - 109, - "109", - "triangle-ne-open", - 209, - "209", - "triangle-ne-dot", - 309, - "309", - "triangle-ne-open-dot", - 10, - "10", - "triangle-se", - 110, - "110", - "triangle-se-open", - 210, - "210", - "triangle-se-dot", - 310, - "310", - "triangle-se-open-dot", - 11, - "11", - "triangle-sw", - 111, - "111", - "triangle-sw-open", - 211, - "211", - "triangle-sw-dot", - 311, - "311", - "triangle-sw-open-dot", - 12, - "12", - "triangle-nw", - 112, - "112", - "triangle-nw-open", - 212, - "212", - "triangle-nw-dot", - 312, - "312", - "triangle-nw-open-dot", - 13, - "13", - "pentagon", - 113, - "113", - "pentagon-open", - 213, - "213", - "pentagon-dot", - 313, - "313", - "pentagon-open-dot", - 14, - "14", - "hexagon", - 114, - "114", - "hexagon-open", - 214, - "214", - "hexagon-dot", - 314, - "314", - "hexagon-open-dot", - 15, - "15", - "hexagon2", - 115, - "115", - "hexagon2-open", - 215, - "215", - "hexagon2-dot", - 315, - "315", - "hexagon2-open-dot", - 16, - "16", - "octagon", - 116, - "116", - "octagon-open", - 216, - "216", - "octagon-dot", - 316, - "316", - "octagon-open-dot", - 17, - "17", - "star", - 117, - "117", - "star-open", - 217, - "217", - "star-dot", - 317, - "317", - "star-open-dot", - 18, - "18", - "hexagram", - 118, - "118", - "hexagram-open", - 218, - "218", - "hexagram-dot", - 318, - "318", - "hexagram-open-dot", - 19, - "19", - "star-triangle-up", - 119, - "119", - "star-triangle-up-open", - 219, - "219", - "star-triangle-up-dot", - 319, - "319", - "star-triangle-up-open-dot", - 20, - "20", - "star-triangle-down", - 120, - "120", - "star-triangle-down-open", - 220, - "220", - "star-triangle-down-dot", - 320, - "320", - "star-triangle-down-open-dot", - 21, - "21", - "star-square", - 121, - "121", - "star-square-open", - 221, - "221", - "star-square-dot", - 321, - "321", - "star-square-open-dot", - 22, - "22", - "star-diamond", - 122, - "122", - "star-diamond-open", - 222, - "222", - "star-diamond-dot", - 322, - "322", - "star-diamond-open-dot", - 23, - "23", - "diamond-tall", - 123, - "123", - "diamond-tall-open", - 223, - "223", - "diamond-tall-dot", - 323, - "323", - "diamond-tall-open-dot", - 24, - "24", - "diamond-wide", - 124, - "124", - "diamond-wide-open", - 224, - "224", - "diamond-wide-dot", - 324, - "324", - "diamond-wide-open-dot", - 25, - "25", - "hourglass", - 125, - "125", - "hourglass-open", - 26, - "26", - "bowtie", - 126, - "126", - "bowtie-open", - 27, - "27", - "circle-cross", - 127, - "127", - "circle-cross-open", - 28, - "28", - "circle-x", - 128, - "128", - "circle-x-open", - 29, - "29", - "square-cross", - 129, - "129", - "square-cross-open", - 30, - "30", - "square-x", - 130, - "130", - "square-x-open", - 31, - "31", - "diamond-cross", - 131, - "131", - "diamond-cross-open", - 32, - "32", - "diamond-x", - 132, - "132", - "diamond-x-open", - 33, - "33", - "cross-thin", - 133, - "133", - "cross-thin-open", - 34, - "34", - "x-thin", - 134, - "134", - "x-thin-open", - 35, - "35", - "asterisk", - 135, - "135", - "asterisk-open", - 36, - "36", - "hash", - 136, - "136", - "hash-open", - 236, - "236", - "hash-dot", - 336, - "336", - "hash-open-dot", - 37, - "37", - "y-up", - 137, - "137", - "y-up-open", - 38, - "38", - "y-down", - 138, - "138", - "y-down-open", - 39, - "39", - "y-left", - 139, - "139", - "y-left-open", - 40, - "40", - "y-right", - 140, - "140", - "y-right-open", - 41, - "41", - "line-ew", - 141, - "141", - "line-ew-open", - 42, - "42", - "line-ns", - 142, - "142", - "line-ns-open", - 43, - "43", - "line-ne", - 143, - "143", - "line-ne-open", - 44, - "44", - "line-nw", - 144, - "144", - "line-nw-open", - 45, - "45", - "arrow-up", - 145, - "145", - "arrow-up-open", - 46, - "46", - "arrow-down", - 146, - "146", - "arrow-down-open", - 47, - "47", - "arrow-left", - 147, - "147", - "arrow-left-open", - 48, - "48", - "arrow-right", - 148, - "148", - "arrow-right-open", - 49, - "49", - "arrow-bar-up", - 149, - "149", - "arrow-bar-up-open", - 50, - "50", - "arrow-bar-down", - 150, - "150", - "arrow-bar-down-open", - 51, - "51", - "arrow-bar-left", - 151, - "151", - "arrow-bar-left-open", - 52, - "52", - "arrow-bar-right", - 152, - "152", - "arrow-bar-right-open", - 53, - "53", - "arrow", - 153, - "153", - "arrow-open", - 54, - "54", - "arrow-wide", - 154, - "154", - "arrow-wide-open" - ] - }, - "symbolsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", - "editType": "none", - "valType": "string" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "mode": { - "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "lines", - "markers", - "text" - ], - "valType": "flaglist" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "r": { - "description": "Sets the radial coordinates", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "r0": { - "description": "Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "rsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `r`.", - "editType": "none", - "valType": "string" - }, - "selected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of selected points.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "subplot": { - "description": "Sets a reference between this trace's data coordinates and a polar subplot. If *polar* (the default value), the data refer to `layout.polar`. If *polar2*, the data refer to `layout.polar2`, and so on.", - "dflt": "polar", - "editType": "calc", - "valType": "subplotid" - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the text font.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textposition": { - "arrayOk": true, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", - "editType": "none", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `r`, `theta` and `text`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "theta": { - "description": "Sets the angular coordinates", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "theta0": { - "description": "Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "thetasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `theta`.", - "editType": "none", - "valType": "string" - }, - "thetaunit": { - "description": "Sets the unit of input *theta* values. Has an effect only when on *linear* angular axes.", - "dflt": "degrees", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "radians", - "degrees", - "gradians" - ] - }, - "type": "scatterpolar", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of unselected points, applied only when a selection exists.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [ - "polar", - "symbols", - "showLegend", - "scatter-like" - ], - "meta": { - "description": "The scatterpolar trace type encompasses line charts, scatter charts, text charts, and bubble charts in polar coordinates. The data visualized as scatter point or lines is set in `r` (radial) and `theta` (angular) coordinates Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays.", - "hrName": "scatter_polar" - }, - "type": "scatterpolar" - }, - "scatterpolargl": { - "animatable": false, - "attributes": { - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "dr": { - "description": "Sets the r coordinate step.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "dtheta": { - "description": "Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates.", - "editType": "calc", - "valType": "number" - }, - "fill": { - "description": "Sets the area to fill with a solid color. Defaults to *none* unless this trace is stacked, then it gets *tonexty* (*tonextx*) if `orientation` is *v* (*h*) Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order.", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "tozeroy", - "tozerox", - "tonexty", - "tonextx", - "toself", - "tonext" - ] - }, - "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "calc", - "valType": "color" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "r", - "theta", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "width": { + "arrayOk": false, + "description": "Sets the bar width (in position axis units).", + "dflt": null, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "x": { + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "x0": { + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "xperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "valType": "any" + }, + "xperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" + }, + "xperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "y0": { + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "yperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "valType": "any" + }, + "yperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" + }, + "yperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" + } }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" + "categories": [ + "bar-like", + "cartesian", + "svg", + "oriented", + "showLegend", + "zoomScale" + ], + "layoutAttributes": { + "funnelgap": { + "description": "Sets the gap (in plot fraction) between bars of adjacent location coordinates.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "funnelgroupgap": { + "description": "Sets the gap (in plot fraction) between bars of the same location coordinate.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "funnelmode": { + "description": "Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to reduce *opacity* to see multiple bars.", + "dflt": "stack", + "editType": "calc", + "valType": "enumerated", + "values": [ + "stack", + "group", + "overlay" + ] + } }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" + "meta": { + "description": "Visualize stages in a process using length-encoded bars. This trace can be used to show data in either a part-to-whole representation wherein each item appears in a single stage, or in a \"drop-off\" representation wherein each item appears in each stage it traversed. See also the \"funnelarea\" trace type for a different approach to visualizing funnel data." }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" + "type": "funnel" }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "funnelarea": { + "animatable": false, + "attributes": { + "aspectratio": { + "description": "Sets the ratio between height and width", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "baseratio": { + "description": "Sets the ratio between bottom length and maximum top length.", + "dflt": 0.333, + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "dlabel": { + "description": "Sets the label step. See `label0` for more info.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this funnelarea trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "editType": "calc", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this funnelarea trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this funnelarea trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this funnelarea trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "label", + "text", + "value", + "percent", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `label`, `color`, `value`, `text` and `percent`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "insidetextfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `textinfo` lying inside the sector.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "label0": { + "description": "Alternate to `labels`. Builds a numeric set of labels. Use with `dlabel` where `label0` is the starting label and `dlabel` the step.", + "dflt": 0, + "editType": "calc", + "valType": "number" + }, + "labels": { + "description": "Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label.", + "editType": "calc", + "valType": "data_array" + }, + "labelssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `labels`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "marker": { + "colors": { + "description": "Sets the color of each sector. If not specified, the default trace color set is used to pick the sector colors.", + "editType": "calc", + "valType": "data_array" + }, + "colorssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `colors`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "line": { + "color": { + "arrayOk": true, + "description": "Sets the color of the line enclosing each sector. Defaults to the `paper_bgcolor` value.", + "dflt": null, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the line enclosing each sector.", + "dflt": 1, + "editType": "style", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "pattern": { + "bgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", + "editType": "style", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the pattern within the marker.", + "editType": "style", + "fgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", + "editType": "style", + "valType": "color" + }, + "fgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", + "editType": "none", + "valType": "string" + }, + "fgopacity": { + "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "fillmode": { + "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", + "dflt": "replace", + "editType": "style", + "valType": "enumerated", + "values": [ + "replace", + "overlay" + ] + }, + "path": { + "arrayOk": true, + "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", + "editType": "style", + "valType": "string" + }, + "pathsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `path`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shape": { + "arrayOk": true, + "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", + "dflt": "", + "editType": "style", + "valType": "enumerated", + "values": [ + "", + "/", + "\\", + "x", + "-", + "|", + "+", + "." + ] + }, + "shapesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shape`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", + "dflt": 8, + "editType": "style", + "min": 0, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "solidity": { + "arrayOk": true, + "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", + "dflt": 0.3, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "soliditysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", + "editType": "none", + "valType": "string" + } + }, + "role": "object" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "scalegroup": { + "description": "If there are multiple funnelareas that should be sized according to their totals, link them by providing a non-empty group id here shared by every trace in the same group.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "editType": "plot", + "valType": "data_array" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `textinfo`.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textinfo": { + "description": "Determines which trace information appear on the graph.", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "label", + "text", + "value", + "percent" + ], + "valType": "flaglist" + }, + "textposition": { + "arrayOk": true, + "description": "Specifies the location of the `textinfo`.", + "dflt": "inside", + "editType": "plot", + "valType": "enumerated", + "values": [ + "inside", + "none" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", + "editType": "none", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `label`, `color`, `value`, `text` and `percent`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "title": { + "editType": "plot", + "font": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `title`.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "position": { + "description": "Specifies the location of the `title`.", + "dflt": "top center", + "editType": "plot", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right" + ] + }, + "role": "object", + "text": { + "description": "Sets the title of the chart. If it is empty, no title is displayed.", + "dflt": "", + "editType": "plot", + "valType": "string" + } + }, + "type": "funnelarea", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "values": { + "description": "Sets the values of the sectors. If omitted, we count occurrences of each label.", + "editType": "calc", + "valType": "data_array" + }, + "valuessrc": { + "description": "Sets the source reference on Chart Studio Cloud for `values`.", + "editType": "none", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "categories": [ + "pie-like", + "funnelarea", + "showLegend" + ], + "layoutAttributes": { + "extendfunnelareacolors": { + "description": "If `true`, the funnelarea slice colors (whether given by `funnelareacolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "funnelareacolorway": { + "description": "Sets the default funnelarea slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendfunnelareacolors`.", + "editType": "calc", + "valType": "colorlist" + }, + "hiddenlabels": { + "description": "hiddenlabels is the funnelarea & pie chart analog of visible:'legendonly' but it can contain many labels, and can simultaneously hide slices from several pies/funnelarea charts", + "editType": "calc", + "valType": "data_array" + }, + "hiddenlabelssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hiddenlabels`.", + "editType": "none", + "valType": "string" + } }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "meta": { + "description": "Visualize stages in a process using area-encoded trapezoids. This trace can be used to show data in a part-to-whole representation similar to a \"pie\" trace, wherein each item appears in a single stage. See also the \"funnel\" trace type for a different approach to visualizing funnel data." }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "color": { - "description": "Sets the line color.", - "editType": "calc", - "valType": "color" - }, - "dash": { - "description": "Sets the style of the lines.", - "dflt": "solid", - "editType": "calc", - "valType": "enumerated", - "values": [ - "dash", - "dashdot", - "dot", - "longdash", - "longdashdot", - "solid" - ] - }, - "editType": "calc", - "role": "object", - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "calc", - "min": 0, - "valType": "number" - } + "type": "funnelarea" }, - "marker": { - "angle": { - "arrayOk": true, - "description": "Sets the marker angle in respect to `angleref`.", - "dflt": 0, - "editType": "calc", - "valType": "angle" - }, - "anglesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `angle`.", - "editType": "none", - "valType": "string" - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "calc", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "calc", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "calc", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "calc", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } + "heatmap": { + "animatable": false, + "attributes": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": false, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data are filled in. It is defaulted to true if `z` is a one dimensional array and `zsmooth` is not false; otherwise it is defaulted to false.", + "editType": "calc", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "dx": { + "description": "Sets the x coordinate step. See `x0` for more info.", + "dflt": 1, + "editType": "calc", + "impliedEdits": { + "xtype": "scaled" + }, + "valType": "number" + }, + "dy": { + "description": "Sets the y coordinate step. See `y0` for more info.", + "dflt": 1, + "editType": "calc", + "impliedEdits": { + "ytype": "scaled" + }, + "valType": "number" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hoverongaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data have hover labels associated with them.", + "dflt": true, + "editType": "none", + "valType": "boolean" + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "description": "Same as `text`.", + "editType": "calc", + "valType": "data_array" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": false, + "editType": "style", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "description": "Sets the text elements associated with each z value.", + "editType": "calc", + "valType": "data_array" + }, + "textfont": { + "color": { + "dflt": "auto", + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "dflt": "auto", + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `x`, `y`, `z` and `text`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "transpose": { + "description": "Transposes the z data.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "type": "heatmap", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "impliedEdits": { + "xtype": "array" + }, + "valType": "data_array" + }, + "x0": { + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "impliedEdits": { + "xtype": "scaled" + }, + "valType": "any" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xgap": { + "description": "Sets the horizontal gap (in pixels) between bricks.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "xperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "impliedEdits": { + "xtype": "scaled" + }, + "valType": "any" + }, + "xperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "impliedEdits": { + "xtype": "scaled" + }, + "valType": "any" + }, + "xperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", + "dflt": "middle", + "editType": "calc", + "impliedEdits": { + "xtype": "scaled" + }, + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "xtype": { + "description": "If *array*, the heatmap's x coordinates are given by *x* (the default behavior when `x` is provided). If *scaled*, the heatmap's x coordinates are given by *x0* and *dx* (the default behavior when `x` is not provided).", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "array", + "scaled" + ] + }, + "y": { + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "impliedEdits": { + "ytype": "array" + }, + "valType": "data_array" + }, + "y0": { + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "impliedEdits": { + "ytype": "scaled" + }, + "valType": "any" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "ygap": { + "description": "Sets the vertical gap (in pixels) between bricks.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "yperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "impliedEdits": { + "ytype": "scaled" + }, + "valType": "any" + }, + "yperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "impliedEdits": { + "ytype": "scaled" + }, + "valType": "any" + }, + "yperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", + "dflt": "middle", + "editType": "calc", + "impliedEdits": { + "ytype": "scaled" + }, + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "ytype": { + "description": "If *array*, the heatmap's y coordinates are given by *y* (the default behavior when `y` is provided) If *scaled*, the heatmap's y coordinates are given by *y0* and *dy* (the default behavior when `y` is not provided)", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "array", + "scaled" + ] + }, + "z": { + "description": "Sets the z data.", + "editType": "calc", + "valType": "data_array" + }, + "zauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "zhoverformat": { + "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "zmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zmid": { + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "zmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" + }, + "zsmooth": { + "description": "Picks a smoothing algorithm use to smooth `z` data.", + "dflt": false, + "editType": "calc", + "valType": "enumerated", + "values": [ + "fast", + "best", + false + ] + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "calc", - "valType": "string" + "categories": [ + "cartesian", + "svg", + "2dMap", + "showLegend" + ], + "meta": { + "description": "The data that describes the heatmap value-to-color mapping is set in `z`. Data in `z` can either be a {2D array} of values (ragged or not) or a 1D array of values. In the case where `z` is a {2D array}, say that `z` has N rows and M columns. Then, by default, the resulting heatmap will have N partitions along the y axis and M partitions along the x axis. In other words, the i-th row/ j-th column cell in `z` is mapped to the i-th partition of the y axis (starting from the bottom of the plot) and the j-th partition of the x-axis (starting from the left of the plot). This behavior can be flipped by using `transpose`. Moreover, `x` (`y`) can be provided with M or M+1 (N or N+1) elements. If M (N), then the coordinates correspond to the center of the heatmap cells and the cells have equal width. If M+1 (N+1), then the coordinates correspond to the edges of the heatmap cells. In the case where `z` is a 1D {array}, the x and y coordinates must be provided in `x` and `y` respectively to form data triplets." }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "type": "heatmap" + }, + "histogram": { + "animatable": false, + "attributes": { + "alignmentgroup": { + "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently.", + "dflt": "", "editType": "calc", - "items": [ - { + "valType": "string" + }, + "autobinx": { + "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobinx` is not needed. However, we accept `autobinx: true` or `false` and will update `xbins` accordingly before deleting `autobinx` from the trace.", + "dflt": null, + "editType": "calc", + "valType": "boolean" + }, + "autobiny": { + "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobiny` is not needed. However, we accept `autobiny: true` or `false` and will update `ybins` accordingly before deleting `autobiny` from the trace.", + "dflt": null, + "editType": "calc", + "valType": "boolean" + }, + "bingroup": { + "description": "Set a group of histogram traces which will have compatible bin settings. Note that traces on the same subplot and with the same *orientation* under `barmode` *stack*, *relative* and *group* are forced into the same bingroup, Using `bingroup`, traces under `barmode` *overlay* and on different axes (of the same axis type) can have compatible bin settings. Note that histogram and histogram2d* trace can share the same `bingroup`", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "cliponaxis": { + "description": "Determines whether the text nodes are clipped about the subplot axes. To show the text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "constraintext": { + "description": "Constrain the size of text inside or outside a bar to be no larger than the bar itself.", + "dflt": "both", + "editType": "calc", + "valType": "enumerated", + "values": [ + "inside", + "outside", + "both", + "none" + ] + }, + "cumulative": { + "currentbin": { + "description": "Only applies if cumulative is enabled. Sets whether the current bin is included, excluded, or has half of its value included in the current cumulative value. *include* is the default for compatibility with various other tools, however it introduces a half-bin bias to the results. *exclude* makes the opposite half-bin bias, and *half* removes it.", + "dflt": "include", "editType": "calc", - "valType": "any" - }, - { + "valType": "enumerated", + "values": [ + "include", + "exclude", + "half" + ] + }, + "direction": { + "description": "Only applies if cumulative is enabled. If *increasing* (default) we sum all prior bins, so the result increases from left to right. If *decreasing* we sum later bins so the result decreases from left to right.", + "dflt": "increasing", "editType": "calc", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "calc", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, + "valType": "enumerated", + "values": [ + "increasing", + "decreasing" + ] + }, "editType": "calc", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "enabled": { + "description": "If true, display the cumulative distribution by summing the binned values. Use the `direction` and `centralbin` attributes to tune the accumulation method. Note: in this mode, the *density* `histnorm` settings behave the same as their equivalents without *density*: ** and *density* both rise to the number of data points, and *probability* and *probability density* both rise to the number of sample points.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "error_x": { + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", + "editType": "none", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `array`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the stroke color of the error bars.", + "editType": "style", + "valType": "color" + }, + "copy_ystyle": { + "editType": "plot", + "valType": "boolean" + }, + "editType": "calc", + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "plot", + "min": 0, + "valType": "number" + } + }, + "error_y": { + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", + "editType": "none", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `array`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the stroke color of the error bars.", + "editType": "style", + "valType": "color" + }, + "editType": "calc", + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "plot", + "min": 0, + "valType": "number" + } + }, + "histfunc": { + "description": "Specifies the binning function used for this histogram trace. If *count*, the histogram values are computed by counting the number of values lying inside each bin. If *sum*, *avg*, *min*, *max*, the histogram values are computed using the sum, the average, the minimum or the maximum of the values lying inside each bin respectively.", + "dflt": "count", + "editType": "calc", + "valType": "enumerated", + "values": [ + "count", + "sum", + "avg", + "min", + "max" + ] + }, + "histnorm": { + "description": "Specifies the type of normalization used for this histogram trace. If **, the span of each bar corresponds to the number of occurrences (i.e. the number of data points lying inside the bins). If *percent* / *probability*, the span of each bar corresponds to the percentage / fraction of occurrences with respect to the total number of sample points (here, the sum of all bin HEIGHTS equals 100% / 1). If *density*, the span of each bar corresponds to the number of occurrences in a bin divided by the size of the bin interval (here, the sum of all bin AREAS equals the total number of sample points). If *probability density*, the area of each bar corresponds to the probability that an event will fall into the corresponding bin (here, the sum of all bin AREAS equals 1).", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "", + "percent", + "probability", + "density", + "probability density" + ] + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variable `binNumber` Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "insidetextanchor": { + "description": "Determines if texts are kept at center or start/end points in `textposition` *inside* mode.", + "dflt": "end", + "editType": "plot", + "valType": "enumerated", + "values": [ + "end", + "middle", + "start" + ] + }, + "insidetextfont": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "marker": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "cornerradius": { + "description": "Sets the rounding of corners. May be an integer number of pixels, or a percentage of bar width (as a string ending in %). Defaults to `layout.barcornerradius`. In stack or relative barmode, the first trace to set cornerradius is used for the whole stack.", + "editType": "calc", + "valType": "any" + }, "editType": "calc", + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "opacity": { + "arrayOk": true, + "description": "Sets the opacity of the bars.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "pattern": { + "bgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", + "editType": "style", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the pattern within the marker.", + "editType": "style", + "fgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", + "editType": "style", + "valType": "color" + }, + "fgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", + "editType": "none", + "valType": "string" + }, + "fgopacity": { + "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "fillmode": { + "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", + "dflt": "replace", + "editType": "style", + "valType": "enumerated", + "values": [ + "replace", + "overlay" + ] + }, + "path": { + "arrayOk": true, + "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", + "editType": "style", + "valType": "string" + }, + "pathsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `path`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shape": { + "arrayOk": true, + "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", + "dflt": "", + "editType": "style", + "valType": "enumerated", + "values": [ + "", + "/", + "\\", + "x", + "-", + "|", + "+", + "." + ] + }, + "shapesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shape`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", + "dflt": 8, + "editType": "style", + "min": 0, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "solidity": { + "arrayOk": true, + "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", + "dflt": 0.3, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "soliditysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", + "editType": "none", + "valType": "string" + } + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", + }, + "nbinsx": { + "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `xbins.size` is provided.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "nbinsy": { + "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `ybins.size` is provided.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "offsetgroup": { + "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up.", "dflt": "", "editType": "calc", "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "calc", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "calc", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "calc", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "valType": "color" }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "orientation": { + "description": "Sets the orientation of the bars. With *v* (*h*), the value of the each bar spans along the vertical (horizontal).", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "v", + "h" + ] + }, + "outsidetextfont": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "text": { + "arrayOk": true, + "description": "Sets hover text elements associated with each bar. If a single string, the same string appears over all bars. If an array of string, the items are mapped in order to the this trace's coordinates.", + "dflt": "", + "editType": "calc", + "valType": "string" }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "textangle": { + "description": "Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars.", + "dflt": "auto", + "editType": "plot", + "valType": "angle" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "calc", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "editType": "calc", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "opacity": { - "arrayOk": true, - "description": "Sets the marker opacity.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "arrayOk": true, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemin": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemode": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", - "dflt": "diameter", - "editType": "calc", - "valType": "enumerated", - "values": [ - "diameter", - "area" - ] - }, - "sizeref": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "symbol": { - "arrayOk": true, - "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", - "dflt": "circle", - "editType": "calc", - "valType": "enumerated", - "values": [ - 0, - "0", - "circle", - 100, - "100", - "circle-open", - 200, - "200", - "circle-dot", - 300, - "300", - "circle-open-dot", - 1, - "1", - "square", - 101, - "101", - "square-open", - 201, - "201", - "square-dot", - 301, - "301", - "square-open-dot", - 2, - "2", - "diamond", - 102, - "102", - "diamond-open", - 202, - "202", - "diamond-dot", - 302, - "302", - "diamond-open-dot", - 3, - "3", - "cross", - 103, - "103", - "cross-open", - 203, - "203", - "cross-dot", - 303, - "303", - "cross-open-dot", - 4, - "4", - "x", - 104, - "104", - "x-open", - 204, - "204", - "x-dot", - 304, - "304", - "x-open-dot", - 5, - "5", - "triangle-up", - 105, - "105", - "triangle-up-open", - 205, - "205", - "triangle-up-dot", - 305, - "305", - "triangle-up-open-dot", - 6, - "6", - "triangle-down", - 106, - "106", - "triangle-down-open", - 206, - "206", - "triangle-down-dot", - 306, - "306", - "triangle-down-open-dot", - 7, - "7", - "triangle-left", - 107, - "107", - "triangle-left-open", - 207, - "207", - "triangle-left-dot", - 307, - "307", - "triangle-left-open-dot", - 8, - "8", - "triangle-right", - 108, - "108", - "triangle-right-open", - 208, - "208", - "triangle-right-dot", - 308, - "308", - "triangle-right-open-dot", - 9, - "9", - "triangle-ne", - 109, - "109", - "triangle-ne-open", - 209, - "209", - "triangle-ne-dot", - 309, - "309", - "triangle-ne-open-dot", - 10, - "10", - "triangle-se", - 110, - "110", - "triangle-se-open", - 210, - "210", - "triangle-se-dot", - 310, - "310", - "triangle-se-open-dot", - 11, - "11", - "triangle-sw", - 111, - "111", - "triangle-sw-open", - 211, - "211", - "triangle-sw-dot", - 311, - "311", - "triangle-sw-open-dot", - 12, - "12", - "triangle-nw", - 112, - "112", - "triangle-nw-open", - 212, - "212", - "triangle-nw-dot", - 312, - "312", - "triangle-nw-open-dot", - 13, - "13", - "pentagon", - 113, - "113", - "pentagon-open", - 213, - "213", - "pentagon-dot", - 313, - "313", - "pentagon-open-dot", - 14, - "14", - "hexagon", - 114, - "114", - "hexagon-open", - 214, - "214", - "hexagon-dot", - 314, - "314", - "hexagon-open-dot", - 15, - "15", - "hexagon2", - 115, - "115", - "hexagon2-open", - 215, - "215", - "hexagon2-dot", - 315, - "315", - "hexagon2-open-dot", - 16, - "16", - "octagon", - 116, - "116", - "octagon-open", - 216, - "216", - "octagon-dot", - 316, - "316", - "octagon-open-dot", - 17, - "17", - "star", - 117, - "117", - "star-open", - 217, - "217", - "star-dot", - 317, - "317", - "star-open-dot", - 18, - "18", - "hexagram", - 118, - "118", - "hexagram-open", - 218, - "218", - "hexagram-dot", - 318, - "318", - "hexagram-open-dot", - 19, - "19", - "star-triangle-up", - 119, - "119", - "star-triangle-up-open", - 219, - "219", - "star-triangle-up-dot", - 319, - "319", - "star-triangle-up-open-dot", - 20, - "20", - "star-triangle-down", - 120, - "120", - "star-triangle-down-open", - 220, - "220", - "star-triangle-down-dot", - 320, - "320", - "star-triangle-down-open-dot", - 21, - "21", - "star-square", - 121, - "121", - "star-square-open", - 221, - "221", - "star-square-dot", - 321, - "321", - "star-square-open-dot", - 22, - "22", - "star-diamond", - 122, - "122", - "star-diamond-open", - 222, - "222", - "star-diamond-dot", - 322, - "322", - "star-diamond-open-dot", - 23, - "23", - "diamond-tall", - 123, - "123", - "diamond-tall-open", - 223, - "223", - "diamond-tall-dot", - 323, - "323", - "diamond-tall-open-dot", - 24, - "24", - "diamond-wide", - 124, - "124", - "diamond-wide-open", - 224, - "224", - "diamond-wide-dot", - 324, - "324", - "diamond-wide-open-dot", - 25, - "25", - "hourglass", - 125, - "125", - "hourglass-open", - 26, - "26", - "bowtie", - 126, - "126", - "bowtie-open", - 27, - "27", - "circle-cross", - 127, - "127", - "circle-cross-open", - 28, - "28", - "circle-x", - 128, - "128", - "circle-x-open", - 29, - "29", - "square-cross", - 129, - "129", - "square-cross-open", - 30, - "30", - "square-x", - 130, - "130", - "square-x-open", - 31, - "31", - "diamond-cross", - 131, - "131", - "diamond-cross-open", - 32, - "32", - "diamond-x", - 132, - "132", - "diamond-x-open", - 33, - "33", - "cross-thin", - 133, - "133", - "cross-thin-open", - 34, - "34", - "x-thin", - 134, - "134", - "x-thin-open", - 35, - "35", - "asterisk", - 135, - "135", - "asterisk-open", - 36, - "36", - "hash", - 136, - "136", - "hash-open", - 236, - "236", - "hash-dot", - 336, - "336", - "hash-open-dot", - 37, - "37", - "y-up", - 137, - "137", - "y-up-open", - 38, - "38", - "y-down", - 138, - "138", - "y-down-open", - 39, - "39", - "y-left", - 139, - "139", - "y-left-open", - 40, - "40", - "y-right", - 140, - "140", - "y-right-open", - 41, - "41", - "line-ew", - 141, - "141", - "line-ew-open", - 42, - "42", - "line-ns", - 142, - "142", - "line-ns-open", - 43, - "43", - "line-ne", - 143, - "143", - "line-ne-open", - 44, - "44", - "line-nw", - 144, - "144", - "line-nw-open", - 45, - "45", - "arrow-up", - 145, - "145", - "arrow-up-open", - 46, - "46", - "arrow-down", - 146, - "146", - "arrow-down-open", - 47, - "47", - "arrow-left", - 147, - "147", - "arrow-left-open", - 48, - "48", - "arrow-right", - 148, - "148", - "arrow-right-open", - 49, - "49", - "arrow-bar-up", - 149, - "149", - "arrow-bar-up-open", - 50, - "50", - "arrow-bar-down", - 150, - "150", - "arrow-bar-down-open", - 51, - "51", - "arrow-bar-left", - 151, - "151", - "arrow-bar-left-open", - 52, - "52", - "arrow-bar-right", - 152, - "152", - "arrow-bar-right-open", - 53, - "53", - "arrow", - 153, - "153", - "arrow-open", - 54, - "54", - "arrow-wide", - 154, - "154", - "arrow-wide-open" - ] - }, - "symbolsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", - "editType": "none", - "valType": "string" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "mode": { - "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "lines", - "markers", - "text" - ], - "valType": "flaglist" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "r": { - "description": "Sets the radial coordinates", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "r0": { - "description": "Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "rsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `r`.", - "editType": "none", - "valType": "string" - }, - "selected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of selected points.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "subplot": { - "description": "Sets a reference between this trace's data coordinates and a polar subplot. If *polar* (the default value), the data refer to `layout.polar`. If *polar2*, the data refer to `layout.polar2`, and so on.", - "dflt": "polar", - "editType": "calc", - "valType": "subplotid" - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the text font.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "bold" - ] - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textposition": { - "arrayOk": true, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", - "editType": "none", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `r`, `theta` and `text`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "theta": { - "description": "Sets the angular coordinates", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "theta0": { - "description": "Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "thetasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `theta`.", - "editType": "none", - "valType": "string" - }, - "thetaunit": { - "description": "Sets the unit of input *theta* values. Has an effect only when on *linear* angular axes.", - "dflt": "degrees", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "radians", - "degrees", - "gradians" - ] - }, - "type": "scatterpolargl", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of unselected points, applied only when a selection exists.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [ - "gl", - "regl", - "polar", - "symbols", - "showLegend", - "scatter-like" - ], - "meta": { - "description": "The scatterpolargl trace type encompasses line charts, scatter charts, and bubble charts in polar coordinates using the WebGL plotting engine. The data visualized as scatter point or lines is set in `r` (radial) and `theta` (angular) coordinates Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays.", - "hrName": "scatter_polar_gl" - }, - "type": "scatterpolargl" - }, - "scattersmith": { - "animatable": false, - "attributes": { - "cliponaxis": { - "description": "Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "fill": { - "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scattersmith has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "toself", - "tonext" - ] - }, - "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "style", - "valType": "color" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "real", - "imag", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hoveron": { - "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", - "editType": "style", - "flags": [ - "points", - "fills" - ], - "valType": "flaglist" - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "imag": { - "description": "Sets the imaginary component of the data, in units of normalized impedance such that real=1, imag=0 is the center of the chart.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "imagsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `imag`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "textfont": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "textposition": { + "arrayOk": false, + "description": "Specifies the location of the `text`. *inside* positions `text` inside, next to the bar end (rotated and scaled if needed). *outside* positions `text` outside, next to the bar end (scaled if needed), unless there is another bar stacked on this one, then the text gets pushed inside. *auto* tries to position `text` inside the bar, but if the bar is too small and no bar is stacked on this one the text is moved outside. If *none*, no text appears.", + "dflt": "auto", + "editType": "calc", + "valType": "enumerated", + "values": [ + "inside", + "outside", + "auto", + "none" + ] + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `label` and `value`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "type": "histogram", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "Sets the sample data to be binned on the x axis.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xbins": { + "editType": "calc", + "end": { + "description": "Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers.", + "editType": "calc", + "valType": "any" + }, + "role": "object", + "size": { + "description": "Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above.", + "editType": "calc", + "valType": "any" + }, + "start": { + "description": "Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins.", + "editType": "calc", + "valType": "any" + } + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the sample data to be binned on the y axis.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "ybins": { + "editType": "calc", + "end": { + "description": "Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers.", + "editType": "calc", + "valType": "any" + }, + "role": "object", + "size": { + "description": "Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above.", + "editType": "calc", + "valType": "any" + }, + "start": { + "description": "Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins.", + "editType": "calc", + "valType": "any" + } + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" + } }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "categories": [ + "bar-like", + "cartesian", + "svg", + "bar", + "histogram", + "oriented", + "errorBarsOK", + "showLegend" + ], + "layoutAttributes": { + "barcornerradius": { + "description": "Sets the rounding of bar corners. May be an integer number of pixels, or a percentage of bar width (as a string ending in %).", + "editType": "calc", + "valType": "any" + }, + "bargap": { + "description": "Sets the gap (in plot fraction) between bars of adjacent location coordinates.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "bargroupgap": { + "description": "Sets the gap (in plot fraction) between bars of the same location coordinate.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "barmode": { + "description": "Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *relative*, the bars are stacked on top of one another, with negative values below the axis, positive values above With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to reduce *opacity* to see multiple bars.", + "dflt": "group", + "editType": "calc", + "valType": "enumerated", + "values": [ + "stack", + "group", + "overlay", + "relative" + ] + }, + "barnorm": { + "description": "Sets the normalization for bar traces on the graph. With *fraction*, the value of each bar is divided by the sum of all values at that location coordinate. *percent* is the same but multiplied by 100 to show percentages.", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "", + "fraction", + "percent" + ] + } }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "meta": { + "description": "The sample data from which statistics are computed is set in `x` for vertically spanning histograms and in `y` for horizontally spanning histograms. Binning options are set `xbins` and `ybins` respectively if no aggregation data is provided." }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "backoff": { - "arrayOk": true, - "description": "Sets the line back off from the end point of the nth line segment (in px). This option is useful e.g. to avoid overlap with arrowhead markers. With *auto* the lines would trim before markers if `marker.angleref` is set to *previous*.", - "dflt": "auto", - "editType": "plot", - "min": 0, - "valType": "number" - }, - "backoffsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `backoff`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the line color.", - "editType": "style", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "calc", - "role": "object", - "shape": { - "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", - "dflt": "linear", - "editType": "plot", - "valType": "enumerated", - "values": [ - "linear", - "spline" - ] - }, - "smoothing": { - "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", - "dflt": 1, - "editType": "plot", - "max": 1.3, - "min": 0, - "valType": "number" - }, - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - } + "type": "histogram" }, - "marker": { - "angle": { - "arrayOk": true, - "description": "Sets the marker angle in respect to `angleref`.", - "dflt": 0, - "editType": "plot", - "valType": "angle" - }, - "angleref": { - "description": "Sets the reference for marker angle. With *previous*, angle 0 points along the line from the previous point to this one. With *up*, angle 0 points toward the top of the screen.", - "dflt": "up", - "editType": "plot", - "valType": "enumerated", - "values": [ - "previous", - "up" - ] - }, - "anglesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `angle`.", - "editType": "none", - "valType": "string" - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" + "histogram2d": { + "animatable": false, + "attributes": { + "autobinx": { + "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobinx` is not needed. However, we accept `autobinx: true` or `false` and will update `xbins` accordingly before deleting `autobinx` from the trace.", + "dflt": null, + "editType": "calc", + "valType": "boolean" + }, + "autobiny": { + "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobiny` is not needed. However, we accept `autobiny: true` or `false` and will update `ybins` accordingly before deleting `autobiny` from the trace.", + "dflt": null, + "editType": "calc", + "valType": "boolean" + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": false, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "bingroup": { + "description": "Set the `xbingroup` and `ybingroup` default prefix For example, setting a `bingroup` of *1* on two histogram2d traces will make them their x-bins and y-bins match separately.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "histfunc": { + "description": "Specifies the binning function used for this histogram trace. If *count*, the histogram values are computed by counting the number of values lying inside each bin. If *sum*, *avg*, *min*, *max*, the histogram values are computed using the sum, the average, the minimum or the maximum of the values lying inside each bin respectively.", + "dflt": "count", + "editType": "calc", + "valType": "enumerated", + "values": [ + "count", + "sum", + "avg", + "min", + "max" + ] + }, + "histnorm": { + "description": "Specifies the type of normalization used for this histogram trace. If **, the span of each bar corresponds to the number of occurrences (i.e. the number of data points lying inside the bins). If *percent* / *probability*, the span of each bar corresponds to the percentage / fraction of occurrences with respect to the total number of sample points (here, the sum of all bin HEIGHTS equals 100% / 1). If *density*, the span of each bar corresponds to the number of occurrences in a bin divided by the size of the bin interval (here, the sum of all bin AREAS equals the total number of sample points). If *probability density*, the area of each bar corresponds to the probability that an event will fall into the corresponding bin (here, the sum of all bin AREAS equals 1).", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "", + "percent", + "probability", + "density", + "probability density" + ] + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variable `z` Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "marker": { + "color": { + "description": "Sets the aggregation data.", + "editType": "calc", + "valType": "data_array" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "nbinsx": { + "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `xbins.size` is provided.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "nbinsy": { + "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `ybins.size` is provided.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": false, + "editType": "style", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "textfont": { + "color": { + "dflt": "auto", + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "dflt": "auto", + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "texttemplate": { + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variable `z`", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "type": "histogram2d", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "Sets the sample data to be binned on the x axis.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xbingroup": { + "description": "Set a group of histogram traces which will have compatible x-bin settings. Using `xbingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible x-bin settings. Note that the same `xbingroup` value can be used to set (1D) histogram `bingroup`", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "xbins": { + "editType": "calc", + "end": { + "description": "Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers.", + "editType": "calc", + "valType": "any" + }, + "role": "object", + "size": { + "description": "Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). ", + "editType": "calc", + "valType": "any" + }, + "start": { + "description": "Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. ", + "editType": "calc", + "valType": "any" + } + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xgap": { + "description": "Sets the horizontal gap (in pixels) between bricks.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the sample data to be binned on the y axis.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "ybingroup": { + "description": "Set a group of histogram traces which will have compatible y-bin settings. Using `ybingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible y-bin settings. Note that the same `ybingroup` value can be used to set (1D) histogram `bingroup`", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ybins": { + "editType": "calc", + "end": { + "description": "Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers.", + "editType": "calc", + "valType": "any" + }, + "role": "object", + "size": { + "description": "Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). ", + "editType": "calc", + "valType": "any" + }, + "start": { + "description": "Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. ", + "editType": "calc", + "valType": "any" + } + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "ygap": { + "description": "Sets the vertical gap (in pixels) between bricks.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "z": { + "description": "Sets the aggregation data.", + "editType": "calc", + "valType": "data_array" + }, + "zauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "zhoverformat": { + "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "zmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zmid": { + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "zmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zsmooth": { + "description": "Picks a smoothing algorithm use to smooth `z` data.", + "dflt": false, + "editType": "calc", + "valType": "enumerated", + "values": [ + "fast", + "best", + false + ] + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "categories": [ + "cartesian", + "svg", + "2dMap", + "histogram", + "showLegend" + ], + "meta": { + "description": "The sample data from which statistics are computed is set in `x` and `y` (where `x` and `y` represent marginal distributions, binning is set in `xbins` and `ybins` in this case) or `z` (where `z` represent the 2D distribution and binning set, binning is set by `x` and `y` in this case). The resulting distribution is visualized as a heatmap.", + "hrName": "histogram_2d" + }, + "type": "histogram2d" + }, + "histogram2dcontour": { + "animatable": false, + "attributes": { + "autobinx": { + "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobinx` is not needed. However, we accept `autobinx: true` or `false` and will update `xbins` accordingly before deleting `autobinx` from the trace.", + "dflt": null, + "editType": "calc", + "valType": "boolean" + }, + "autobiny": { + "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobiny` is not needed. However, we accept `autobiny: true` or `false` and will update `ybins` accordingly before deleting `autobiny` from the trace.", + "dflt": null, + "editType": "calc", + "valType": "boolean" + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "autocontour": { + "description": "Determines whether or not the contour level attributes are picked by an algorithm. If *true*, the number of contour levels can be set in `ncontours`. If *false*, set the contour level attributes in `contours`.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "bingroup": { + "description": "Set the `xbingroup` and `ybingroup` default prefix For example, setting a `bingroup` of *1* on two histogram2d traces will make them their x-bins and y-bins match separately.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, "editType": "colorbars", - "items": [ - { + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "contours": { + "coloring": { + "description": "Determines the coloring method showing the contour values. If *fill*, coloring is done evenly between each contour level If *heatmap*, a heatmap gradient coloring is applied between each contour level. If *lines*, coloring is done on the contour lines. If *none*, no coloring is applied on this trace.", + "dflt": "fill", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fill", + "heatmap", + "lines", + "none" + ] + }, + "editType": "calc", + "end": { + "description": "Sets the end contour level value. Must be more than `contours.start`", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "valType": "number" + }, + "impliedEdits": { + "autocontour": false, + "role": "object" + }, + "labelfont": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "labelformat": { + "description": "Sets the contour label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "operation": { + "description": "Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms.", + "dflt": "=", + "editType": "calc", + "valType": "enumerated", + "values": [ + "=", + "<", + ">=", + ">", + "<=", + "[]", + "()", + "[)", + "(]", + "][", + ")(", + "](", + ")[" + ] + }, + "role": "object", + "showlabels": { + "description": "Determines whether to label the contour lines with their values.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showlines": { + "description": "Determines whether or not the contour lines are drawn. Has an effect only if `contours.coloring` is set to *fill*.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "size": { + "description": "Sets the step between each contour level. Must be positive.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "min": 0, + "valType": "number" + }, + "start": { + "description": "Sets the starting contour level value. Must be less than `contours.end`", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "valType": "number" + }, + "type": { + "description": "If `levels`, the data is represented as a contour plot with multiple levels displayed. If `constraint`, the data is represented as constraints with the invalid region shaded as specified by the `operation` and `value` parameters.", + "dflt": "levels", + "editType": "calc", + "valType": "enumerated", + "values": [ + "levels", + "constraint" + ] + }, + "value": { + "description": "Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (`=,<,>=,>,<=`) *value* is expected to be a number. When `operation` is set to one of the interval values (`[],(),[),(],][,)(,](,)[`) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound.", + "dflt": 0, + "editType": "calc", + "valType": "any" + } + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "histfunc": { + "description": "Specifies the binning function used for this histogram trace. If *count*, the histogram values are computed by counting the number of values lying inside each bin. If *sum*, *avg*, *min*, *max*, the histogram values are computed using the sum, the average, the minimum or the maximum of the values lying inside each bin respectively.", + "dflt": "count", + "editType": "calc", + "valType": "enumerated", + "values": [ + "count", + "sum", + "avg", + "min", + "max" + ] + }, + "histnorm": { + "description": "Specifies the type of normalization used for this histogram trace. If **, the span of each bar corresponds to the number of occurrences (i.e. the number of data points lying inside the bins). If *percent* / *probability*, the span of each bar corresponds to the percentage / fraction of occurrences with respect to the total number of sample points (here, the sum of all bin HEIGHTS equals 100% / 1). If *density*, the span of each bar corresponds to the number of occurrences in a bin divided by the size of the bin interval (here, the sum of all bin AREAS equals the total number of sample points). If *probability density*, the area of each bar corresponds to the probability that an event will fall into the corresponding bin (here, the sum of all bin AREAS equals 1).", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "", + "percent", + "probability", + "density", + "probability density" + ] + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variable `z` Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "color": { + "description": "Sets the color of the contour level. Has no effect if `contours.coloring` is set to *lines*.", + "editType": "style+colorbars", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "plot", + "role": "object", + "smoothing": { + "description": "Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing.", + "dflt": 1, + "editType": "plot", + "max": 1.3, + "min": 0, + "valType": "number" + }, + "width": { + "description": "Sets the contour line width in (in px)", + "dflt": 0.5, + "editType": "style+colorbars", + "min": 0, + "valType": "number" + } + }, + "marker": { + "color": { + "description": "Sets the aggregation data.", + "editType": "calc", + "valType": "data_array" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "nbinsx": { + "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `xbins.size` is provided.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "nbinsy": { + "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `ybins.size` is provided.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "ncontours": { + "description": "Sets the maximum number of contour levels. The actual number of contours will be chosen automatically to be less than or equal to the value of `ncontours`. Has an effect only if `autocontour` is *true* or if `contours.size` is missing.", + "dflt": 15, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "textfont": { + "color": { + "dflt": "auto", + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "dflt": "auto", + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "texttemplate": { + "description": "For this trace it only has an effect if `coloring` is set to *heatmap*. Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `x`, `y`, `z` and `text`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "type": "histogram2dcontour", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "Sets the sample data to be binned on the x axis.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xbingroup": { + "description": "Set a group of histogram traces which will have compatible x-bin settings. Using `xbingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible x-bin settings. Note that the same `xbingroup` value can be used to set (1D) histogram `bingroup`", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "xbins": { + "editType": "calc", + "end": { + "description": "Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers.", + "editType": "calc", + "valType": "any" + }, + "role": "object", + "size": { + "description": "Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). ", + "editType": "calc", + "valType": "any" + }, + "start": { + "description": "Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. ", + "editType": "calc", + "valType": "any" + } + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the sample data to be binned on the y axis.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "ybingroup": { + "description": "Set a group of histogram traces which will have compatible y-bin settings. Using `ybingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible y-bin settings. Note that the same `ybingroup` value can be used to set (1D) histogram `bingroup`", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ybins": { + "editType": "calc", + "end": { + "description": "Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers.", + "editType": "calc", "valType": "any" - }, - { + }, + "role": "object", + "size": { + "description": "Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). ", + "editType": "calc", + "valType": "any" + }, + "start": { + "description": "Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. ", + "editType": "calc", + "valType": "any" + } + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "z": { + "description": "Sets the aggregation data.", + "editType": "calc", + "valType": "data_array" + }, + "zauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "zhoverformat": { + "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "zmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zmid": { + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "zmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "valType": "number" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } + }, + "categories": [ + "cartesian", + "svg", + "2dMap", + "contour", + "histogram", + "showLegend" + ], + "meta": { + "description": "The sample data from which statistics are computed is set in `x` and `y` (where `x` and `y` represent marginal distributions, binning is set in `xbins` and `ybins` in this case) or `z` (where `z` represent the 2D distribution and binning set, binning is set by `x` and `y` in this case). The resulting distribution is visualized as a contour plot.", + "hrName": "histogram_2d_contour" + }, + "type": "histogram2dcontour" + }, + "icicle": { + "animatable": true, + "attributes": { + "branchvalues": { + "description": "Determines how the items in `values` are summed. When set to *total*, items in `values` are taken to be value of all its descendants. When set to *remainder*, items in `values` corresponding to the root and the branches sectors are taken to be the extra part not part of the sum of the values at their leaves.", + "dflt": "remainder", + "editType": "calc", + "valType": "enumerated", + "values": [ + "remainder", + "total" + ] + }, + "count": { + "description": "Determines default for `values` when it is not provided, by inferring a 1 for each of the *leaves* and/or *branches*, otherwise 0.", + "dflt": "leaves", + "editType": "calc", + "flags": [ + "branches", + "leaves" + ], + "valType": "flaglist" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this icicle trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "editType": "calc", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this icicle trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this icicle trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this icicle trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "label+text+value+name", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "label", + "text", + "value", + "name", + "current path", + "percent root", + "percent entry", + "percent parent" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry` and `percentParent`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "anim": true, + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "insidetextfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `textinfo` lying inside the sector.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "labels": { + "description": "Sets the labels of each of the sectors.", + "editType": "calc", + "valType": "data_array" + }, + "labelssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `labels`.", + "editType": "none", + "valType": "string" + }, + "leaf": { + "editType": "plot", + "opacity": { + "description": "Sets the opacity of the leaves. With colorscale it is defaulted to 1; otherwise it is defaulted to 0.7", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "level": { + "anim": true, + "description": "Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`.", + "editType": "plot", + "valType": "any" + }, + "marker": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if colors is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here colors) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if colors is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if colors is set to a numerical array. Value should have the same units as colors and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if colors is set to a numerical array. Value should have the same units as colors. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if colors is set to a numerical array. Value should have the same units as colors and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colors": { + "description": "Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors.", + "editType": "calc", + "valType": "data_array" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if colors is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `colors`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "line": { + "color": { + "arrayOk": true, + "description": "Sets the color of the line enclosing each sector. Defaults to the `paper_bgcolor` value.", + "dflt": null, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the line enclosing each sector.", + "dflt": 1, + "editType": "style", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "pattern": { + "bgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", + "editType": "style", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the pattern within the marker.", + "editType": "style", + "fgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", + "editType": "style", + "valType": "color" + }, + "fgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", + "editType": "none", + "valType": "string" + }, + "fgopacity": { + "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "fillmode": { + "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", + "dflt": "replace", + "editType": "style", + "valType": "enumerated", + "values": [ + "replace", + "overlay" + ] + }, + "path": { + "arrayOk": true, + "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", + "editType": "style", + "valType": "string" + }, + "pathsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `path`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shape": { + "arrayOk": true, + "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", + "dflt": "", + "editType": "style", + "valType": "enumerated", + "values": [ + "", + "/", + "\\", + "x", + "-", + "|", + "+", + "." + ] + }, + "shapesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shape`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", + "dflt": 8, + "editType": "style", + "min": 0, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "solidity": { + "arrayOk": true, + "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", + "dflt": 0.3, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "soliditysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", + "editType": "none", + "valType": "string" + } + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if colors is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if colors is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "maxdepth": { + "description": "Sets the number of rendered sectors from any given `level`. Set `maxdepth` to *-1* to render all the levels in the hierarchy.", + "dflt": -1, + "editType": "plot", + "valType": "integer" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "outsidetextfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `textinfo` lying outside the sector. This option refers to the root of the hierarchy presented on top left corner of a treemap graph. Please note that if a hierarchy has multiple root nodes, this option won't have any effect and `insidetextfont` would be used.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "parents": { + "description": "Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique.", + "editType": "calc", + "valType": "data_array" + }, + "parentssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `parents`.", + "editType": "none", + "valType": "string" + }, + "pathbar": { + "edgeshape": { + "description": "Determines which shape is used for edges between `barpath` labels.", + "dflt": ">", + "editType": "plot", + "valType": "enumerated", + "values": [ + ">", + "<", + "|", + "/", + "\\" + ] + }, + "editType": "calc", + "role": "object", + "side": { + "description": "Determines on which side of the the treemap the `pathbar` should be presented.", + "dflt": "top", + "editType": "plot", + "valType": "enumerated", + "values": [ + "top", + "bottom" + ] + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used inside `pathbar`.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "thickness": { + "description": "Sets the thickness of `pathbar` (in px). If not specified the `pathbar.textfont.size` is used with 3 pixles extra padding on each side.", + "editType": "plot", + "min": 12, + "valType": "number" + }, + "visible": { + "description": "Determines if the path bar is drawn i.e. outside the trace `domain` and with one pixel gap.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + } + }, + "root": { + "color": { + "description": "sets the color of the root node for a sunburst/treemap/icicle trace. this has no effect when a colorscale is used to set the markers.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object" + }, + "sort": { + "description": "Determines whether or not the sectors are reordered from largest to smallest.", "dflt": true, - "editType": "colorbars", + "editType": "calc", "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "editType": "plot", + "valType": "data_array" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `textinfo`.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textinfo": { + "description": "Determines which trace information appear on the graph.", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "label", + "text", + "value", + "current path", + "percent root", + "percent entry", + "percent parent" + ], + "valType": "flaglist" + }, + "textposition": { + "description": "Sets the positions of the `text` elements.", + "dflt": "top left", + "editType": "plot", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry`, `percentParent`, `label` and `value`.", "dflt": "", - "editType": "colorbars", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "tiling": { + "editType": "calc", + "flip": { + "description": "Determines if the positions obtained from solver are flipped on each axis.", + "dflt": "", + "editType": "plot", + "flags": [ + "x", + "y" + ], + "valType": "flaglist" + }, + "orientation": { + "description": "When set in conjunction with `tiling.flip`, determines on which side the root nodes are drawn in the chart. If `tiling.orientation` is *v* and `tiling.flip` is **, the root nodes appear at the top. If `tiling.orientation` is *v* and `tiling.flip` is *y*, the root nodes appear at the bottom. If `tiling.orientation` is *h* and `tiling.flip` is **, the root nodes appear at the left. If `tiling.orientation` is *h* and `tiling.flip` is *x*, the root nodes appear at the right.", + "dflt": "h", + "editType": "plot", + "valType": "enumerated", + "values": [ + "v", + "h" + ] + }, + "pad": { + "description": "Sets the inner padding (in px).", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "type": "icicle", + "uid": { + "anim": true, + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", "valType": "string" - } + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "values": { + "description": "Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed.", + "editType": "calc", + "valType": "data_array" + }, + "valuessrc": { + "description": "Sets the source reference on Chart Studio Cloud for `values`.", + "editType": "none", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" + "categories": [], + "layoutAttributes": { + "extendiciclecolors": { + "description": "If `true`, the icicle slice colors (whether given by `iciclecolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "iciclecolorway": { + "description": "Sets the default icicle slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendiciclecolors`.", + "editType": "calc", + "valType": "colorlist" + } }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" + "meta": { + "description": "Visualize hierarchal data from leaves (and/or outer branches) towards root with rectangles. The icicle sectors are determined by the entries in *labels* or *ids* and in *parents*." }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" + "type": "icicle" + }, + "image": { + "animatable": false, + "attributes": { + "colormodel": { + "description": "Color model used to map the numerical color components described in `z` into colors. If `source` is specified, this attribute will be set to `rgba256` otherwise it defaults to `rgb`.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "rgb", + "rgba", + "rgba256", + "hsl", + "hsla" + ] }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "dx": { + "description": "Set the pixel's horizontal size.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "dy": { + "description": "Set the pixel's vertical size", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "x+y+z+text+name", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "color", + "name", + "text" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `z`, `color` and `colormodel`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "description": "Same as `text`.", + "editType": "plot", + "valType": "data_array" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "source": { + "description": "Specifies the data URI of the image to be visualized. The URI consists of \"data:image/[][;base64\\\\],\"", + "editType": "calc", + "valType": "string" }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "gradient": { - "color": { - "arrayOk": true, - "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "type": { - "arrayOk": true, - "description": "Sets the type of gradient used to fill the markers", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "radial", - "horizontal", - "vertical", - "none" - ] - }, - "typesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `type`.", - "editType": "none", - "valType": "string" - } - }, - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "maxdisplayed": { - "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "opacity": { - "arrayOk": true, - "description": "Sets the marker opacity.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "arrayOk": true, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemin": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemode": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", - "dflt": "diameter", - "editType": "calc", - "valType": "enumerated", - "values": [ - "diameter", - "area" - ] - }, - "sizeref": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "standoff": { - "arrayOk": true, - "description": "Moves the marker away from the data point in the direction of `angle` (in px). This can be useful for example if you have another marker at this location and you want to point an arrowhead marker at it.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "standoffsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `standoff`.", - "editType": "none", - "valType": "string" - }, - "symbol": { - "arrayOk": true, - "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", - "dflt": "circle", - "editType": "style", - "valType": "enumerated", - "values": [ - 0, - "0", - "circle", - 100, - "100", - "circle-open", - 200, - "200", - "circle-dot", - 300, - "300", - "circle-open-dot", - 1, - "1", - "square", - 101, - "101", - "square-open", - 201, - "201", - "square-dot", - 301, - "301", - "square-open-dot", - 2, - "2", - "diamond", - 102, - "102", - "diamond-open", - 202, - "202", - "diamond-dot", - 302, - "302", - "diamond-open-dot", - 3, - "3", - "cross", - 103, - "103", - "cross-open", - 203, - "203", - "cross-dot", - 303, - "303", - "cross-open-dot", - 4, - "4", - "x", - 104, - "104", - "x-open", - 204, - "204", - "x-dot", - 304, - "304", - "x-open-dot", - 5, - "5", - "triangle-up", - 105, - "105", - "triangle-up-open", - 205, - "205", - "triangle-up-dot", - 305, - "305", - "triangle-up-open-dot", - 6, - "6", - "triangle-down", - 106, - "106", - "triangle-down-open", - 206, - "206", - "triangle-down-dot", - 306, - "306", - "triangle-down-open-dot", - 7, - "7", - "triangle-left", - 107, - "107", - "triangle-left-open", - 207, - "207", - "triangle-left-dot", - 307, - "307", - "triangle-left-open-dot", - 8, - "8", - "triangle-right", - 108, - "108", - "triangle-right-open", - 208, - "208", - "triangle-right-dot", - 308, - "308", - "triangle-right-open-dot", - 9, - "9", - "triangle-ne", - 109, - "109", - "triangle-ne-open", - 209, - "209", - "triangle-ne-dot", - 309, - "309", - "triangle-ne-open-dot", - 10, - "10", - "triangle-se", - 110, - "110", - "triangle-se-open", - 210, - "210", - "triangle-se-dot", - 310, - "310", - "triangle-se-open-dot", - 11, - "11", - "triangle-sw", - 111, - "111", - "triangle-sw-open", - 211, - "211", - "triangle-sw-dot", - 311, - "311", - "triangle-sw-open-dot", - 12, - "12", - "triangle-nw", - 112, - "112", - "triangle-nw-open", - 212, - "212", - "triangle-nw-dot", - 312, - "312", - "triangle-nw-open-dot", - 13, - "13", - "pentagon", - 113, - "113", - "pentagon-open", - 213, - "213", - "pentagon-dot", - 313, - "313", - "pentagon-open-dot", - 14, - "14", - "hexagon", - 114, - "114", - "hexagon-open", - 214, - "214", - "hexagon-dot", - 314, - "314", - "hexagon-open-dot", - 15, - "15", - "hexagon2", - 115, - "115", - "hexagon2-open", - 215, - "215", - "hexagon2-dot", - 315, - "315", - "hexagon2-open-dot", - 16, - "16", - "octagon", - 116, - "116", - "octagon-open", - 216, - "216", - "octagon-dot", - 316, - "316", - "octagon-open-dot", - 17, - "17", - "star", - 117, - "117", - "star-open", - 217, - "217", - "star-dot", - 317, - "317", - "star-open-dot", - 18, - "18", - "hexagram", - 118, - "118", - "hexagram-open", - 218, - "218", - "hexagram-dot", - 318, - "318", - "hexagram-open-dot", - 19, - "19", - "star-triangle-up", - 119, - "119", - "star-triangle-up-open", - 219, - "219", - "star-triangle-up-dot", - 319, - "319", - "star-triangle-up-open-dot", - 20, - "20", - "star-triangle-down", - 120, - "120", - "star-triangle-down-open", - 220, - "220", - "star-triangle-down-dot", - 320, - "320", - "star-triangle-down-open-dot", - 21, - "21", - "star-square", - 121, - "121", - "star-square-open", - 221, - "221", - "star-square-dot", - 321, - "321", - "star-square-open-dot", - 22, - "22", - "star-diamond", - 122, - "122", - "star-diamond-open", - 222, - "222", - "star-diamond-dot", - 322, - "322", - "star-diamond-open-dot", - 23, - "23", - "diamond-tall", - 123, - "123", - "diamond-tall-open", - 223, - "223", - "diamond-tall-dot", - 323, - "323", - "diamond-tall-open-dot", - 24, - "24", - "diamond-wide", - 124, - "124", - "diamond-wide-open", - 224, - "224", - "diamond-wide-dot", - 324, - "324", - "diamond-wide-open-dot", - 25, - "25", - "hourglass", - 125, - "125", - "hourglass-open", - 26, - "26", - "bowtie", - 126, - "126", - "bowtie-open", - 27, - "27", - "circle-cross", - 127, - "127", - "circle-cross-open", - 28, - "28", - "circle-x", - 128, - "128", - "circle-x-open", - 29, - "29", - "square-cross", - 129, - "129", - "square-cross-open", - 30, - "30", - "square-x", - 130, - "130", - "square-x-open", - 31, - "31", - "diamond-cross", - 131, - "131", - "diamond-cross-open", - 32, - "32", - "diamond-x", - 132, - "132", - "diamond-x-open", - 33, - "33", - "cross-thin", - 133, - "133", - "cross-thin-open", - 34, - "34", - "x-thin", - 134, - "134", - "x-thin-open", - 35, - "35", - "asterisk", - 135, - "135", - "asterisk-open", - 36, - "36", - "hash", - 136, - "136", - "hash-open", - 236, - "236", - "hash-dot", - 336, - "336", - "hash-open-dot", - 37, - "37", - "y-up", - 137, - "137", - "y-up-open", - 38, - "38", - "y-down", - 138, - "138", - "y-down-open", - 39, - "39", - "y-left", - 139, - "139", - "y-left-open", - 40, - "40", - "y-right", - 140, - "140", - "y-right-open", - 41, - "41", - "line-ew", - 141, - "141", - "line-ew-open", - 42, - "42", - "line-ns", - 142, - "142", - "line-ns-open", - 43, - "43", - "line-ne", - 143, - "143", - "line-ne-open", - 44, - "44", - "line-nw", - 144, - "144", - "line-nw-open", - 45, - "45", - "arrow-up", - 145, - "145", - "arrow-up-open", - 46, - "46", - "arrow-down", - 146, - "146", - "arrow-down-open", - 47, - "47", - "arrow-left", - 147, - "147", - "arrow-left-open", - 48, - "48", - "arrow-right", - 148, - "148", - "arrow-right-open", - 49, - "49", - "arrow-bar-up", - 149, - "149", - "arrow-bar-up-open", - 50, - "50", - "arrow-bar-down", - 150, - "150", - "arrow-bar-down-open", - 51, - "51", - "arrow-bar-left", - 151, - "151", - "arrow-bar-left-open", - 52, - "52", - "arrow-bar-right", - 152, - "152", - "arrow-bar-right-open", - 53, - "53", - "arrow", - 153, - "153", - "arrow-open", - 54, - "54", - "arrow-wide", - 154, - "154", - "arrow-wide-open" - ] - }, - "symbolsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", - "editType": "none", - "valType": "string" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "mode": { - "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "lines", - "markers", - "text" - ], - "valType": "flaglist" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "real": { - "description": "Sets the real component of the data, in units of normalized impedance such that real=1, imag=0 is the center of the chart.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "realsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `real`.", - "editType": "none", - "valType": "string" - }, - "selected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of selected points.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "subplot": { - "description": "Sets a reference between this trace's data coordinates and a smith subplot. If *smith* (the default value), the data refer to `layout.smith`. If *smith2*, the data refer to `layout.smith2`, and so on.", - "dflt": "smith", - "editType": "calc", - "valType": "subplotid" - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the text font.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textposition": { - "arrayOk": true, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", - "editType": "none", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `real`, `imag` and `text`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "type": "scattersmith", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of unselected points, applied only when a selection exists.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [ - "smith", - "symbols", - "showLegend", - "scatter-like" - ], - "meta": { - "description": "The scattersmith trace type encompasses line charts, scatter charts, text charts, and bubble charts in smith coordinates. The data visualized as scatter point or lines is set in `real` and `imag` (imaginary) coordinates Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays.", - "hrName": "scatter_smith" - }, - "type": "scattersmith" - }, - "scatterternary": { - "animatable": false, - "attributes": { - "a": { - "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", - "editType": "calc", - "valType": "data_array" - }, - "asrc": { - "description": "Sets the source reference on Chart Studio Cloud for `a`.", - "editType": "none", - "valType": "string" - }, - "b": { - "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", - "editType": "calc", - "valType": "data_array" - }, - "bsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `b`.", - "editType": "none", - "valType": "string" - }, - "c": { - "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", - "editType": "calc", - "valType": "data_array" - }, - "cliponaxis": { - "description": "Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "csrc": { - "description": "Sets the source reference on Chart Studio Cloud for `c`.", - "editType": "none", - "valType": "string" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "fill": { - "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterternary has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "toself", - "tonext" - ] - }, - "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "style", - "valType": "color" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "a", - "b", - "c", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hoveron": { - "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", - "editType": "style", - "flags": [ - "points", - "fills" - ], - "valType": "flaglist" - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (a,b,c) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b,c). To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "text": { + "description": "Sets the text elements associated with each z value.", + "editType": "plot", + "valType": "data_array" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "type": "image", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x0": { + "description": "Set the image's x position. The left edge of the image (or the right edge if the x axis is reversed or dx is negative) will be found at xmin=x0-dx/2", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "y0": { + "description": "Set the image's y position. The top edge of the image (or the bottom edge if the y axis is NOT reversed or if dy is negative) will be found at ymin=y0-dy/2. By default when an image trace is included, the y axis will be reversed so that the image is right-side-up, but you can disable this by setting yaxis.autorange=true or by providing an explicit y axis range.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "z": { + "description": "A 2-dimensional array in which each element is an array of 3 or 4 numbers representing a color.", + "editType": "calc", + "valType": "data_array" + }, + "zmax": { + "description": "Array defining the higher bound for each color component. Note that the default value will depend on the colormodel. For the `rgb` colormodel, it is [255, 255, 255]. For the `rgba` colormodel, it is [255, 255, 255, 1]. For the `rgba256` colormodel, it is [255, 255, 255, 255]. For the `hsl` colormodel, it is [360, 100, 100]. For the `hsla` colormodel, it is [360, 100, 100, 1].", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "number" + }, + { + "editType": "calc", + "valType": "number" + }, + { + "editType": "calc", + "valType": "number" + }, + { + "editType": "calc", + "valType": "number" + } + ], + "valType": "info_array" + }, + "zmin": { + "description": "Array defining the lower bound for each color component. Note that the default value will depend on the colormodel. For the `rgb` colormodel, it is [0, 0, 0]. For the `rgba` colormodel, it is [0, 0, 0, 0]. For the `rgba256` colormodel, it is [0, 0, 0, 0]. For the `hsl` colormodel, it is [0, 0, 0]. For the `hsla` colormodel, it is [0, 0, 0, 0].", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "number" + }, + { + "editType": "calc", + "valType": "number" + }, + { + "editType": "calc", + "valType": "number" + }, + { + "editType": "calc", + "valType": "number" + } + ], + "valType": "info_array" + }, + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" + }, + "zsmooth": { + "description": "Picks a smoothing algorithm used to smooth `z` data. This only applies for image traces that use the `source` attribute.", + "dflt": false, + "editType": "plot", + "valType": "enumerated", + "values": [ + "fast", + false + ] + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "categories": [ + "cartesian", + "svg", + "2dMap", + "noSortingByValue" + ], + "meta": { + "description": "Display an image, i.e. data on a 2D regular raster. By default, when an image is displayed in a subplot, its y axis will be reversed (ie. `autorange: 'reversed'`), constrained to the domain (ie. `constrain: 'domain'`) and it will have the same scale as its x axis (ie. `scaleanchor: 'x,`) in order for pixels to be rendered as squares." }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "backoff": { - "arrayOk": true, - "description": "Sets the line back off from the end point of the nth line segment (in px). This option is useful e.g. to avoid overlap with arrowhead markers. With *auto* the lines would trim before markers if `marker.angleref` is set to *previous*.", - "dflt": "auto", - "editType": "plot", - "min": 0, - "valType": "number" - }, - "backoffsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `backoff`.", - "editType": "none", - "valType": "string" - }, - "color": { - "description": "Sets the line color.", - "editType": "style", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "calc", - "role": "object", - "shape": { - "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", - "dflt": "linear", - "editType": "plot", - "valType": "enumerated", - "values": [ - "linear", - "spline" - ] - }, - "smoothing": { - "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", - "dflt": 1, - "editType": "plot", - "max": 1.3, - "min": 0, - "valType": "number" - }, - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - } + "type": "image" }, - "marker": { - "angle": { - "arrayOk": true, - "description": "Sets the marker angle in respect to `angleref`.", - "dflt": 0, - "editType": "plot", - "valType": "angle" - }, - "angleref": { - "description": "Sets the reference for marker angle. With *previous*, angle 0 points along the line from the previous point to this one. With *up*, angle 0 points toward the top of the screen.", - "dflt": "up", - "editType": "plot", - "valType": "enumerated", - "values": [ - "previous", - "up" - ] - }, - "anglesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `angle`.", - "editType": "none", - "valType": "string" - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } + "indicator": { + "animatable": true, + "attributes": { + "align": { + "description": "Sets the horizontal alignment of the `text` within the box. Note that this attribute has no effect if an angular gauge is displayed: in this case, it is always centered", + "editType": "plot", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "delta": { + "decreasing": { + "color": { + "description": "Sets the color for increasing value.", + "dflt": "#FF4136", + "editType": "plot", + "valType": "color" + }, + "editType": "plot", + "role": "object", + "symbol": { + "description": "Sets the symbol to display for increasing value", + "dflt": "▼", + "editType": "plot", + "valType": "string" + } + }, + "editType": "calc", + "font": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "increasing": { + "color": { + "description": "Sets the color for increasing value.", + "dflt": "#3D9970", + "editType": "plot", + "valType": "color" + }, + "editType": "plot", + "role": "object", + "symbol": { + "description": "Sets the symbol to display for increasing value", + "dflt": "▲", + "editType": "plot", + "valType": "string" + } + }, + "position": { + "description": "Sets the position of delta with respect to the number.", + "dflt": "bottom", + "editType": "plot", + "valType": "enumerated", + "values": [ + "top", + "bottom", + "left", + "right" + ] + }, + "prefix": { + "description": "Sets a prefix appearing before the delta.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "reference": { + "description": "Sets the reference value to compute the delta. By default, it is set to the current value.", + "editType": "calc", + "valType": "number" + }, + "relative": { + "description": "Show relative change", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "suffix": { + "description": "Sets a suffix appearing next to the delta.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "valueformat": { + "description": "Sets the value formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", + "editType": "plot", + "valType": "string" + } + }, + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this indicator trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "editType": "calc", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this indicator trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this indicator trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this indicator trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } + }, + "gauge": { + "axis": { + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "plot", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "plot", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "plot", + "valType": "any" + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "range": { + "description": "Sets the range of this axis.", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "number" + }, + { + "editType": "plot", + "valType": "number" + } + ], + "valType": "info_array" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "plot", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "plot", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "plot", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "plot", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "plot", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "plot", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "plot", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "outside", + "editType": "plot", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "plot", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "plot", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "visible": { + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "dflt": true, + "editType": "plot", + "valType": "boolean" + } + }, + "bar": { + "color": { + "description": "Sets the background color of the arc.", + "dflt": "green", + "editType": "plot", + "valType": "color" + }, + "description": "Set the appearance of the gauge's value", + "editType": "calc", + "line": { + "color": { + "description": "Sets the color of the line enclosing each sector.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "editType": "calc", + "role": "object", + "width": { + "description": "Sets the width (in px) of the line enclosing each sector.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "thickness": { + "description": "Sets the thickness of the bar as a fraction of the total thickness of the gauge.", + "dflt": 1, + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + }, + "bgcolor": { + "description": "Sets the gauge background color.", + "editType": "plot", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the color of the border enclosing the gauge.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) of the border enclosing the gauge.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "description": "The gauge of the Indicator plot.", + "editType": "plot", + "role": "object", + "shape": { + "description": "Set the shape of the gauge", + "dflt": "angular", + "editType": "plot", + "valType": "enumerated", + "values": [ + "angular", + "bullet" + ] + }, + "steps": { + "items": { + "step": { + "color": { + "description": "Sets the background color of the arc.", + "editType": "plot", + "valType": "color" + }, + "editType": "calc", + "line": { + "color": { + "description": "Sets the color of the line enclosing each sector.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "editType": "calc", + "role": "object", + "width": { + "description": "Sets the width (in px) of the line enclosing each sector.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + } + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "none", + "valType": "string" + }, + "range": { + "description": "Sets the range of this axis.", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "number" + }, + { + "editType": "plot", + "valType": "number" + } + ], + "valType": "info_array" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "thickness": { + "description": "Sets the thickness of the bar as a fraction of the total thickness of the gauge.", + "dflt": 1, + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + } + }, + "role": "object" + }, + "threshold": { + "editType": "plot", + "line": { + "color": { + "description": "Sets the color of the threshold line.", + "dflt": "#444", + "editType": "plot", + "valType": "color" + }, + "editType": "plot", + "role": "object", + "width": { + "description": "Sets the width (in px) of the threshold line.", + "dflt": 1, + "editType": "plot", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "thickness": { + "description": "Sets the thickness of the threshold line as a fraction of the thickness of the gauge.", + "dflt": 0.85, + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "value": { + "description": "Sets a treshold value drawn as a line.", + "dflt": false, + "editType": "calc", + "valType": "number" + } + } + }, + "ids": { + "anim": true, + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "mode": { + "description": "Determines how the value is displayed on the graph. `number` displays the value numerically in text. `delta` displays the difference to a reference value in text. Finally, `gauge` displays the value graphically on an axis.", + "dflt": "number", + "editType": "calc", + "flags": [ + "number", + "delta", + "gauge" + ], + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "number": { + "editType": "plot", + "font": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "prefix": { + "description": "Sets a prefix appearing before the number.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "role": "object", + "suffix": { + "description": "Sets a suffix appearing next to the number.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "valueformat": { + "description": "Sets the value formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", + "dflt": "", + "editType": "plot", + "valType": "string" + } + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "title": { + "align": { + "description": "Sets the horizontal alignment of the title. It defaults to `center` except for bullet charts for which it defaults to right.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "editType": "plot", + "font": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of this indicator.", + "editType": "plot", + "valType": "string" + } + }, + "type": "indicator", + "uid": { + "anim": true, + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "value": { + "anim": true, + "description": "Sets the number to be displayed.", + "editType": "calc", + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" + "categories": [ + "svg", + "noOpacity", + "noHover" + ], + "meta": { + "description": "An indicator is used to visualize a single `value` along with some contextual information such as `steps` or a `threshold`, using a combination of three visual elements: a number, a delta, and/or a gauge. Deltas are taken with respect to a `reference`. Gauges can be either angular or bullet (aka linear) gauges." }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", + "type": "indicator" + }, + "isosurface": { + "animatable": false, + "attributes": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "caps": { + "editType": "calc", + "role": "object", + "x": { + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "show": { + "description": "Sets the fill ratio of the `slices`. The default fill value of the x `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + } + }, + "y": { + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "show": { + "description": "Sets the fill ratio of the `slices`. The default fill value of the y `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + } + }, + "z": { + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "show": { + "description": "Sets the fill ratio of the `slices`. The default fill value of the z `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + } + } + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here `value`) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as `value` and if set, `cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `value`. Has no effect when `cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as `value` and if set, `cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, "valType": "any" - }, - { - "editType": "colorbars", + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "calc", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "calc", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, "valType": "any" - } + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "calc", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "calc", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "calc", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "calc", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "calc", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "contour": { + "color": { + "description": "Sets the color of the contour lines.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object", + "show": { + "description": "Sets whether or not dynamic contours are shown on hover", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width of the contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "valType": "number" + } + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "flatshading": { + "description": "Determines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "isomax": { + "description": "Sets the maximum boundary for iso-surface plot.", + "editType": "calc", + "valType": "number" + }, + "isomin": { + "description": "Sets the minimum boundary for iso-surface plot.", + "editType": "calc", + "valType": "number" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "lighting": { + "ambient": { + "description": "Ambient light increases overall color visibility but can wash out the image.", + "dflt": 0.8, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "diffuse": { + "description": "Represents the extent that incident rays are reflected in a range of angles.", + "dflt": 0.8, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "editType": "calc", + "facenormalsepsilon": { + "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "fresnel": { + "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", + "dflt": 0.2, + "editType": "calc", + "max": 5, + "min": 0, + "valType": "number" + }, + "role": "object", + "roughness": { + "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", + "dflt": 0.5, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "specular": { + "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", + "dflt": 0.05, + "editType": "calc", + "max": 2, + "min": 0, + "valType": "number" + }, + "vertexnormalsepsilon": { + "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry.", + "dflt": 1e-12, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + }, + "lightposition": { + "editType": "calc", + "role": "object", + "x": { + "description": "Numeric vector, representing the X coordinate for each vertex.", + "dflt": 100000, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + }, + "y": { + "description": "Numeric vector, representing the Y coordinate for each vertex.", + "dflt": 100000, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + }, + "z": { + "description": "Numeric vector, representing the Z coordinate for each vertex.", + "dflt": 0, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "scene": { + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", "dflt": true, - "editType": "colorbars", + "editType": "calc", "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", + }, + "slices": { + "editType": "calc", + "role": "object", + "x": { + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "locations": { + "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis x except start and end.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "locationssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `locations`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "show": { + "description": "Determines whether or not slice planes about the x dimension are drawn.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "y": { + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "locations": { + "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis y except start and end.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "locationssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `locations`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "show": { + "description": "Determines whether or not slice planes about the y dimension are drawn.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "z": { + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "locations": { + "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis z except start and end.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "locationssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `locations`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "show": { + "description": "Determines whether or not slice planes about the z dimension are drawn.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + } + }, + "spaceframe": { + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the `spaceframe` elements. The default fill value is 0.15 meaning that only 15% of the area of every faces of tetras would be shaded. Applying a greater `fill` ratio would allow the creation of stronger elements or could be sued to have entirely closed areas (in case of using 1).", + "dflt": 0.15, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "show": { + "description": "Displays/hides tetrahedron shapes between minimum and maximum iso-values. Often useful when either caps or surfaces are disabled or filled with values less than 1.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "surface": { + "count": { + "description": "Sets the number of iso-surfaces between minimum and maximum iso-values. By default this value is 2 meaning that only minimum and maximum surfaces would be drawn.", + "dflt": 2, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the iso-surface. The default fill value of the surface is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "pattern": { + "description": "Sets the surface pattern of the iso-surface 3-D sections. The default pattern of the surface is `all` meaning that the rest of surface elements would be shaded. The check options (either 1 or 2) could be used to draw half of the squares on the surface. Using various combinations of capital `A`, `B`, `C`, `D` and `E` may also be used to reduce the number of triangles on the iso-surfaces and creating other patterns of interest.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "odd", + "even" + ], + "flags": [ + "A", + "B", + "C", + "D", + "E" + ], + "valType": "flaglist" + }, + "role": "object", + "show": { + "description": "Hides/displays surfaces between minimum and maximum iso-values.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + } + }, + "text": { + "arrayOk": true, + "description": "Sets the text elements associated with the vertices. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", + }, + "type": "isosurface", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "value": { + "description": "Sets the 4th dimension (value) of the vertices.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" + "valuehoverformat": { + "description": "Sets the hover text formatting rulefor `value` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", + "dflt": "", + "editType": "calc", + "valType": "string" }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" + "valuesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `value`.", + "editType": "none", + "valType": "string" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "x": { + "description": "Sets the X coordinates of the vertices on X axis.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "calc", + "valType": "string" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "gradient": { - "color": { - "arrayOk": true, - "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "type": { - "arrayOk": true, - "description": "Sets the type of gradient used to fill the markers", - "dflt": "none", - "editType": "calc", - "valType": "enumerated", - "values": [ - "radial", - "horizontal", - "vertical", - "none" - ] - }, - "typesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `type`.", - "editType": "none", - "valType": "string" - } - }, - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "maxdisplayed": { - "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "opacity": { - "arrayOk": true, - "description": "Sets the marker opacity.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "arrayOk": true, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemin": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemode": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", - "dflt": "diameter", - "editType": "calc", - "valType": "enumerated", - "values": [ - "diameter", - "area" - ] - }, - "sizeref": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "standoff": { - "arrayOk": true, - "description": "Moves the marker away from the data point in the direction of `angle` (in px). This can be useful for example if you have another marker at this location and you want to point an arrowhead marker at it.", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "standoffsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `standoff`.", - "editType": "none", - "valType": "string" - }, - "symbol": { - "arrayOk": true, - "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", - "dflt": "circle", - "editType": "style", - "valType": "enumerated", - "values": [ - 0, - "0", - "circle", - 100, - "100", - "circle-open", - 200, - "200", - "circle-dot", - 300, - "300", - "circle-open-dot", - 1, - "1", - "square", - 101, - "101", - "square-open", - 201, - "201", - "square-dot", - 301, - "301", - "square-open-dot", - 2, - "2", - "diamond", - 102, - "102", - "diamond-open", - 202, - "202", - "diamond-dot", - 302, - "302", - "diamond-open-dot", - 3, - "3", - "cross", - 103, - "103", - "cross-open", - 203, - "203", - "cross-dot", - 303, - "303", - "cross-open-dot", - 4, - "4", - "x", - 104, - "104", - "x-open", - 204, - "204", - "x-dot", - 304, - "304", - "x-open-dot", - 5, - "5", - "triangle-up", - 105, - "105", - "triangle-up-open", - 205, - "205", - "triangle-up-dot", - 305, - "305", - "triangle-up-open-dot", - 6, - "6", - "triangle-down", - 106, - "106", - "triangle-down-open", - 206, - "206", - "triangle-down-dot", - 306, - "306", - "triangle-down-open-dot", - 7, - "7", - "triangle-left", - 107, - "107", - "triangle-left-open", - 207, - "207", - "triangle-left-dot", - 307, - "307", - "triangle-left-open-dot", - 8, - "8", - "triangle-right", - 108, - "108", - "triangle-right-open", - 208, - "208", - "triangle-right-dot", - 308, - "308", - "triangle-right-open-dot", - 9, - "9", - "triangle-ne", - 109, - "109", - "triangle-ne-open", - 209, - "209", - "triangle-ne-dot", - 309, - "309", - "triangle-ne-open-dot", - 10, - "10", - "triangle-se", - 110, - "110", - "triangle-se-open", - 210, - "210", - "triangle-se-dot", - 310, - "310", - "triangle-se-open-dot", - 11, - "11", - "triangle-sw", - 111, - "111", - "triangle-sw-open", - 211, - "211", - "triangle-sw-dot", - 311, - "311", - "triangle-sw-open-dot", - 12, - "12", - "triangle-nw", - 112, - "112", - "triangle-nw-open", - 212, - "212", - "triangle-nw-dot", - 312, - "312", - "triangle-nw-open-dot", - 13, - "13", - "pentagon", - 113, - "113", - "pentagon-open", - 213, - "213", - "pentagon-dot", - 313, - "313", - "pentagon-open-dot", - 14, - "14", - "hexagon", - 114, - "114", - "hexagon-open", - 214, - "214", - "hexagon-dot", - 314, - "314", - "hexagon-open-dot", - 15, - "15", - "hexagon2", - 115, - "115", - "hexagon2-open", - 215, - "215", - "hexagon2-dot", - 315, - "315", - "hexagon2-open-dot", - 16, - "16", - "octagon", - 116, - "116", - "octagon-open", - 216, - "216", - "octagon-dot", - 316, - "316", - "octagon-open-dot", - 17, - "17", - "star", - 117, - "117", - "star-open", - 217, - "217", - "star-dot", - 317, - "317", - "star-open-dot", - 18, - "18", - "hexagram", - 118, - "118", - "hexagram-open", - 218, - "218", - "hexagram-dot", - 318, - "318", - "hexagram-open-dot", - 19, - "19", - "star-triangle-up", - 119, - "119", - "star-triangle-up-open", - 219, - "219", - "star-triangle-up-dot", - 319, - "319", - "star-triangle-up-open-dot", - 20, - "20", - "star-triangle-down", - 120, - "120", - "star-triangle-down-open", - 220, - "220", - "star-triangle-down-dot", - 320, - "320", - "star-triangle-down-open-dot", - 21, - "21", - "star-square", - 121, - "121", - "star-square-open", - 221, - "221", - "star-square-dot", - 321, - "321", - "star-square-open-dot", - 22, - "22", - "star-diamond", - 122, - "122", - "star-diamond-open", - 222, - "222", - "star-diamond-dot", - 322, - "322", - "star-diamond-open-dot", - 23, - "23", - "diamond-tall", - 123, - "123", - "diamond-tall-open", - 223, - "223", - "diamond-tall-dot", - 323, - "323", - "diamond-tall-open-dot", - 24, - "24", - "diamond-wide", - 124, - "124", - "diamond-wide-open", - 224, - "224", - "diamond-wide-dot", - 324, - "324", - "diamond-wide-open-dot", - 25, - "25", - "hourglass", - 125, - "125", - "hourglass-open", - 26, - "26", - "bowtie", - 126, - "126", - "bowtie-open", - 27, - "27", - "circle-cross", - 127, - "127", - "circle-cross-open", - 28, - "28", - "circle-x", - 128, - "128", - "circle-x-open", - 29, - "29", - "square-cross", - 129, - "129", - "square-cross-open", - 30, - "30", - "square-x", - 130, - "130", - "square-x-open", - 31, - "31", - "diamond-cross", - 131, - "131", - "diamond-cross-open", - 32, - "32", - "diamond-x", - 132, - "132", - "diamond-x-open", - 33, - "33", - "cross-thin", - 133, - "133", - "cross-thin-open", - 34, - "34", - "x-thin", - 134, - "134", - "x-thin-open", - 35, - "35", - "asterisk", - 135, - "135", - "asterisk-open", - 36, - "36", - "hash", - 136, - "136", - "hash-open", - 236, - "236", - "hash-dot", - 336, - "336", - "hash-open-dot", - 37, - "37", - "y-up", - 137, - "137", - "y-up-open", - 38, - "38", - "y-down", - 138, - "138", - "y-down-open", - 39, - "39", - "y-left", - 139, - "139", - "y-left-open", - 40, - "40", - "y-right", - 140, - "140", - "y-right-open", - 41, - "41", - "line-ew", - 141, - "141", - "line-ew-open", - 42, - "42", - "line-ns", - 142, - "142", - "line-ns-open", - 43, - "43", - "line-ne", - 143, - "143", - "line-ne-open", - 44, - "44", - "line-nw", - 144, - "144", - "line-nw-open", - 45, - "45", - "arrow-up", - 145, - "145", - "arrow-up-open", - 46, - "46", - "arrow-down", - 146, - "146", - "arrow-down-open", - 47, - "47", - "arrow-left", - 147, - "147", - "arrow-left-open", - 48, - "48", - "arrow-right", - 148, - "148", - "arrow-right-open", - 49, - "49", - "arrow-bar-up", - 149, - "149", - "arrow-bar-up-open", - 50, - "50", - "arrow-bar-down", - 150, - "150", - "arrow-bar-down-open", - 51, - "51", - "arrow-bar-left", - 151, - "151", - "arrow-bar-left-open", - 52, - "52", - "arrow-bar-right", - 152, - "152", - "arrow-bar-right-open", - 53, - "53", - "arrow", - 153, - "153", - "arrow-open", - 54, - "54", - "arrow-wide", - 154, - "154", - "arrow-wide-open" - ] - }, - "symbolsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", - "editType": "none", - "valType": "string" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "mode": { - "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", - "dflt": "markers", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "lines", - "markers", - "text" - ], - "valType": "flaglist" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "selected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of selected points.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "subplot": { - "description": "Sets a reference between this trace's data coordinates and a ternary subplot. If *ternary* (the default value), the data refer to `layout.ternary`. If *ternary2*, the data refer to `layout.ternary2`, and so on.", - "dflt": "ternary", - "editType": "calc", - "valType": "subplotid" - }, - "sum": { - "description": "The number each triplet should sum to, if only two of `a`, `b`, and `c` are provided. This overrides `ternary.sum` to normalize this specific trace, but does not affect the values displayed on the axes. 0 (or missing) means to use ternary.sum", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (a,b,c) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b,c). If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the text font.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textposition": { - "arrayOk": true, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", - "editType": "none", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `a`, `b`, `c` and `text`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "type": "scatterternary", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of unselected points, applied only when a selection exists.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "textfont": { - "color": { - "description": "Sets the text font color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object" - } - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [ - "ternary", - "symbols", - "showLegend", - "scatter-like" - ], - "meta": { - "description": "Provides similar functionality to the *scatter* type but on a ternary phase diagram. The data is provided by at least two arrays out of `a`, `b`, `c` triplets.", - "hrName": "scatter_ternary" - }, - "type": "scatterternary" - }, - "splom": { - "animatable": false, - "attributes": { - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "diagonal": { - "editType": "calc", - "role": "object", - "visible": { - "description": "Determines whether or not subplots on the diagonal are displayed.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - }, - "dimensions": { - "items": { - "dimension": { - "axis": { - "editType": "calc+clearAxisTypes", - "matches": { - "description": "Determines whether or not the x & y axes generated by this dimension match. Equivalent to setting the `matches` axis attribute in the layout with the correct axis id.", - "dflt": false, - "editType": "calc", - "valType": "boolean" + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the Y coordinates of the vertices on Y axis.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" }, - "role": "object", - "type": { - "description": "Sets the axis type for this dimension's generated x and y axes. Note that the axis `type` values set in layout take precedence over this attribute.", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "linear", - "log", - "date", - "category" - ] + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "z": { + "description": "Sets the Z coordinates of the vertices on Z axis.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "zhoverformat": { + "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `zaxis.hoverformat`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" } - }, - "editType": "calc+clearAxisTypes", - "label": { - "description": "Sets the label corresponding to this splom dimension.", - "editType": "calc", - "valType": "string" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" - }, - "values": { - "description": "Sets the dimension values to be plotted.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "valuessrc": { - "description": "Sets the source reference on Chart Studio Cloud for `values`.", - "editType": "none", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this dimension is shown on the graph. Note that even visible false dimension contribute to the default grid generate by this splom trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - } - }, - "role": "object" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "categories": [ + "gl3d", + "showLegend" + ], + "meta": { + "description": "Draws isosurfaces between iso-min and iso-max values with coordinates given by four 1-dimensional arrays containing the `value`, `x`, `y` and `z` of every vertex of a uniform or non-uniform 3-D grid. Horizontal or vertical slices, caps as well as spaceframe between iso-min and iso-max values could also be drawn using this trace." }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" + "type": "isosurface" }, - "marker": { - "angle": { - "arrayOk": true, - "description": "Sets the marker angle in respect to `angleref`.", - "dflt": 0, - "editType": "plot", - "valType": "angle" - }, - "anglesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `angle`.", - "editType": "none", - "valType": "string" - }, - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "style", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "style", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "mesh3d": { + "animatable": false, + "attributes": { + "alphahull": { + "description": "Determines how the mesh surface triangles are derived from the set of vertices (points) represented by the `x`, `y` and `z` arrays, if the `i`, `j`, `k` arrays are not supplied. For general use of `mesh3d` it is preferred that `i`, `j`, `k` are supplied. If *-1*, Delaunay triangulation is used, which is mainly suitable if the mesh is a single, more or less layer surface that is perpendicular to `delaunayaxis`. In case the `delaunayaxis` intersects the mesh surface at more than one point it will result triangles that are very long in the dimension of `delaunayaxis`. If *>0*, the alpha-shape algorithm is used. In this case, the positive `alphahull` value signals the use of the alpha-shape algorithm, _and_ its value acts as the parameter for the mesh fitting. If *0*, the convex-hull algorithm is used. It is suitable for convex bodies or if the intention is to enclose the `x`, `y` and `z` point set into a convex hull.", + "dflt": -1, + "editType": "calc", + "valType": "number" + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here `intensity`) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as `intensity` and if set, `cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `intensity`. Has no effect when `cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as `intensity` and if set, `cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "description": "Sets the color of the whole mesh", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, "editType": "colorbars", - "items": [ - { + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, "editType": "colorbars", - "valType": "any" - }, - { + "min": 0, + "valType": "number" + }, + "title": { "editType": "colorbars", - "valType": "any" - } - ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "contour": { + "color": { + "description": "Sets the color of the contour lines.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object", + "show": { + "description": "Sets whether or not dynamic contours are shown on hover", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width of the contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "valType": "number" + } }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "delaunayaxis": { + "description": "Sets the Delaunay axis, which is the axis that is perpendicular to the surface of the Delaunay triangulation. It has an effect if `i`, `j`, `k` are not provided and `alphahull` is set to indicate Delaunay triangulation.", + "dflt": "z", + "editType": "calc", + "valType": "enumerated", + "values": [ + "x", + "y", + "z" + ] }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "facecolor": { + "description": "Sets the color of each face Overrides *color* and *vertexcolor*.", + "editType": "calc", + "valType": "data_array" }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "facecolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `facecolor`.", + "editType": "none", + "valType": "string" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "line": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "editType": "calc", - "valType": "color" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "editType": "calc", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "opacity": { - "arrayOk": true, - "description": "Sets the marker opacity.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", - "editType": "none", - "valType": "string" - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "arrayOk": true, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "markerSize", - "min": 0, - "valType": "number" - }, - "sizemin": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "sizemode": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", - "dflt": "diameter", - "editType": "calc", - "valType": "enumerated", - "values": [ - "diameter", - "area" - ] - }, - "sizeref": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "symbol": { - "arrayOk": true, - "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", - "dflt": "circle", - "editType": "style", - "valType": "enumerated", - "values": [ - 0, - "0", - "circle", - 100, - "100", - "circle-open", - 200, - "200", - "circle-dot", - 300, - "300", - "circle-open-dot", - 1, - "1", - "square", - 101, - "101", - "square-open", - 201, - "201", - "square-dot", - 301, - "301", - "square-open-dot", - 2, - "2", - "diamond", - 102, - "102", - "diamond-open", - 202, - "202", - "diamond-dot", - 302, - "302", - "diamond-open-dot", - 3, - "3", - "cross", - 103, - "103", - "cross-open", - 203, - "203", - "cross-dot", - 303, - "303", - "cross-open-dot", - 4, - "4", - "x", - 104, - "104", - "x-open", - 204, - "204", - "x-dot", - 304, - "304", - "x-open-dot", - 5, - "5", - "triangle-up", - 105, - "105", - "triangle-up-open", - 205, - "205", - "triangle-up-dot", - 305, - "305", - "triangle-up-open-dot", - 6, - "6", - "triangle-down", - 106, - "106", - "triangle-down-open", - 206, - "206", - "triangle-down-dot", - 306, - "306", - "triangle-down-open-dot", - 7, - "7", - "triangle-left", - 107, - "107", - "triangle-left-open", - 207, - "207", - "triangle-left-dot", - 307, - "307", - "triangle-left-open-dot", - 8, - "8", - "triangle-right", - 108, - "108", - "triangle-right-open", - 208, - "208", - "triangle-right-dot", - 308, - "308", - "triangle-right-open-dot", - 9, - "9", - "triangle-ne", - 109, - "109", - "triangle-ne-open", - 209, - "209", - "triangle-ne-dot", - 309, - "309", - "triangle-ne-open-dot", - 10, - "10", - "triangle-se", - 110, - "110", - "triangle-se-open", - 210, - "210", - "triangle-se-dot", - 310, - "310", - "triangle-se-open-dot", - 11, - "11", - "triangle-sw", - 111, - "111", - "triangle-sw-open", - 211, - "211", - "triangle-sw-dot", - 311, - "311", - "triangle-sw-open-dot", - 12, - "12", - "triangle-nw", - 112, - "112", - "triangle-nw-open", - 212, - "212", - "triangle-nw-dot", - 312, - "312", - "triangle-nw-open-dot", - 13, - "13", - "pentagon", - 113, - "113", - "pentagon-open", - 213, - "213", - "pentagon-dot", - 313, - "313", - "pentagon-open-dot", - 14, - "14", - "hexagon", - 114, - "114", - "hexagon-open", - 214, - "214", - "hexagon-dot", - 314, - "314", - "hexagon-open-dot", - 15, - "15", - "hexagon2", - 115, - "115", - "hexagon2-open", - 215, - "215", - "hexagon2-dot", - 315, - "315", - "hexagon2-open-dot", - 16, - "16", - "octagon", - 116, - "116", - "octagon-open", - 216, - "216", - "octagon-dot", - 316, - "316", - "octagon-open-dot", - 17, - "17", - "star", - 117, - "117", - "star-open", - 217, - "217", - "star-dot", - 317, - "317", - "star-open-dot", - 18, - "18", - "hexagram", - 118, - "118", - "hexagram-open", - 218, - "218", - "hexagram-dot", - 318, - "318", - "hexagram-open-dot", - 19, - "19", - "star-triangle-up", - 119, - "119", - "star-triangle-up-open", - 219, - "219", - "star-triangle-up-dot", - 319, - "319", - "star-triangle-up-open-dot", - 20, - "20", - "star-triangle-down", - 120, - "120", - "star-triangle-down-open", - 220, - "220", - "star-triangle-down-dot", - 320, - "320", - "star-triangle-down-open-dot", - 21, - "21", - "star-square", - 121, - "121", - "star-square-open", - 221, - "221", - "star-square-dot", - 321, - "321", - "star-square-open-dot", - 22, - "22", - "star-diamond", - 122, - "122", - "star-diamond-open", - 222, - "222", - "star-diamond-dot", - 322, - "322", - "star-diamond-open-dot", - 23, - "23", - "diamond-tall", - 123, - "123", - "diamond-tall-open", - 223, - "223", - "diamond-tall-dot", - 323, - "323", - "diamond-tall-open-dot", - 24, - "24", - "diamond-wide", - 124, - "124", - "diamond-wide-open", - 224, - "224", - "diamond-wide-dot", - 324, - "324", - "diamond-wide-open-dot", - 25, - "25", - "hourglass", - 125, - "125", - "hourglass-open", - 26, - "26", - "bowtie", - 126, - "126", - "bowtie-open", - 27, - "27", - "circle-cross", - 127, - "127", - "circle-cross-open", - 28, - "28", - "circle-x", - 128, - "128", - "circle-x-open", - 29, - "29", - "square-cross", - 129, - "129", - "square-cross-open", - 30, - "30", - "square-x", - 130, - "130", - "square-x-open", - 31, - "31", - "diamond-cross", - 131, - "131", - "diamond-cross-open", - 32, - "32", - "diamond-x", - 132, - "132", - "diamond-x-open", - 33, - "33", - "cross-thin", - 133, - "133", - "cross-thin-open", - 34, - "34", - "x-thin", - 134, - "134", - "x-thin-open", - 35, - "35", - "asterisk", - 135, - "135", - "asterisk-open", - 36, - "36", - "hash", - 136, - "136", - "hash-open", - 236, - "236", - "hash-dot", - 336, - "336", - "hash-open-dot", - 37, - "37", - "y-up", - 137, - "137", - "y-up-open", - 38, - "38", - "y-down", - 138, - "138", - "y-down-open", - 39, - "39", - "y-left", - 139, - "139", - "y-left-open", - 40, - "40", - "y-right", - 140, - "140", - "y-right-open", - 41, - "41", - "line-ew", - 141, - "141", - "line-ew-open", - 42, - "42", - "line-ns", - 142, - "142", - "line-ns-open", - 43, - "43", - "line-ne", - 143, - "143", - "line-ne-open", - 44, - "44", - "line-nw", - 144, - "144", - "line-nw-open", - 45, - "45", - "arrow-up", - 145, - "145", - "arrow-up-open", - 46, - "46", - "arrow-down", - 146, - "146", - "arrow-down-open", - 47, - "47", - "arrow-left", - 147, - "147", - "arrow-left-open", - 48, - "48", - "arrow-right", - 148, - "148", - "arrow-right-open", - 49, - "49", - "arrow-bar-up", - 149, - "149", - "arrow-bar-up-open", - 50, - "50", - "arrow-bar-down", - 150, - "150", - "arrow-bar-down-open", - 51, - "51", - "arrow-bar-left", - 151, - "151", - "arrow-bar-left-open", - 52, - "52", - "arrow-bar-right", - 152, - "152", - "arrow-bar-right-open", - 53, - "53", - "arrow", - 153, - "153", - "arrow-open", - 54, - "54", - "arrow-wide", - 154, - "154", - "arrow-wide-open" - ] - }, - "symbolsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", - "editType": "none", - "valType": "string" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "selected": { - "editType": "calc", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of selected points.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "showlowerhalf": { - "description": "Determines whether or not subplots on the lower half from the diagonal are displayed.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "showupperhalf": { - "description": "Determines whether or not subplots on the upper half from the diagonal are displayed.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (x,y) pair to appear on hover. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "splom", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "calc", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of unselected points, applied only when a selection exists.", - "editType": "calc", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "xaxes": { - "description": "Sets the list of x axes corresponding to dimensions of this splom trace. By default, a splom will match the first N xaxes where N is the number of input dimensions. Note that, in case where `diagonal.visible` is false and `showupperhalf` or `showlowerhalf` is false, this splom trace will generate one less x-axis and one less y-axis.", - "editType": "calc", - "freeLength": true, - "items": { - "editType": "plot", - "regex": "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", - "valType": "subplotid" - }, - "valType": "info_array" - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "yaxes": { - "description": "Sets the list of y axes corresponding to dimensions of this splom trace. By default, a splom will match the first N yaxes where N is the number of input dimensions. Note that, in case where `diagonal.visible` is false and `showupperhalf` or `showlowerhalf` is false, this splom trace will generate one less x-axis and one less y-axis.", - "editType": "calc", - "freeLength": true, - "items": { - "editType": "plot", - "regex": "/^y([2-9]|[1-9][0-9]+)?( domain)?$/", - "valType": "subplotid" - }, - "valType": "info_array" - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "gl", - "regl", - "cartesian", - "symbols", - "showLegend", - "scatter-like" - ], - "meta": { - "description": "Splom traces generate scatter plot matrix visualizations. Each splom `dimensions` items correspond to a generated axis. Values for each of those dimensions are set in `dimensions[i].values`. Splom traces support all `scattergl` marker style attributes. Specify `layout.grid` attributes and/or layout x-axis and y-axis attributes for more control over the axis positioning and style. " - }, - "type": "splom" - }, - "streamtube": { - "animatable": false, - "attributes": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here u/v/w norm) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as u/v/w norm. Has no effect when `cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" + "flatshading": { + "description": "Determines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "i": { + "description": "A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *first* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `i[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `i` represents a point in space, which is the first vertex of a triangle.", + "editType": "calc", + "valType": "data_array" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "intensity": { + "description": "Sets the intensity values for vertices or cells as defined by `intensitymode`. It can be used for plotting fields on meshes.", + "editType": "calc", + "valType": "data_array" + }, + "intensitymode": { + "description": "Determines the source of `intensity` values.", + "dflt": "vertex", + "editType": "calc", + "valType": "enumerated", + "values": [ + "vertex", + "cell" + ] + }, + "intensitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `intensity`.", + "editType": "none", + "valType": "string" + }, + "isrc": { + "description": "Sets the source reference on Chart Studio Cloud for `i`.", + "editType": "none", + "valType": "string" + }, + "j": { + "description": "A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *second* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `j[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `j` represents a point in space, which is the second vertex of a triangle.", + "editType": "calc", + "valType": "data_array" + }, + "jsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `j`.", + "editType": "none", + "valType": "string" + }, + "k": { + "description": "A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *third* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `k[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `k` represents a point in space, which is the third vertex of a triangle.", + "editType": "calc", + "valType": "data_array" + }, + "ksrc": { + "description": "Sets the source reference on Chart Studio Cloud for `k`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "lighting": { + "ambient": { + "description": "Ambient light increases overall color visibility but can wash out the image.", + "dflt": 0.8, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "diffuse": { + "description": "Represents the extent that incident rays are reflected in a range of angles.", + "dflt": 0.8, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "editType": "calc", + "facenormalsepsilon": { + "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry.", + "dflt": 0.000001, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "fresnel": { + "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", + "dflt": 0.2, + "editType": "calc", + "max": 5, + "min": 0, + "valType": "number" + }, + "role": "object", + "roughness": { + "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", + "dflt": 0.5, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "specular": { + "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", + "dflt": 0.05, + "editType": "calc", + "max": 2, + "min": 0, + "valType": "number" + }, + "vertexnormalsepsilon": { + "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry.", + "dflt": 1e-12, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + }, + "lightposition": { + "editType": "calc", + "role": "object", + "x": { + "description": "Numeric vector, representing the X coordinate for each vertex.", + "dflt": 100000, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + }, + "y": { + "description": "Numeric vector, representing the Y coordinate for each vertex.", + "dflt": 100000, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + }, + "z": { + "description": "Numeric vector, representing the Z coordinate for each vertex.", + "dflt": 0, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" } - ], - "valType": "info_array" }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" }, "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", - "valType": "string" + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", - "valType": "string" + "opacity": { + "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "x+y+z+norm+text+name", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "u", - "v", - "w", - "norm", - "divergence", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `tubex`, `tubey`, `tubez`, `tubeu`, `tubev`, `tubew`, `norm` and `divergence`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "description": "Same as `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "reversescale": { + "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "scene": { + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": false, + "editType": "style", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "arrayOk": true, + "description": "Sets the text elements associated with the vertices. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "type": "mesh3d", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "vertexcolor": { + "description": "Sets the color of each vertex Overrides *color*. While Red, green and blue colors are in the range of 0 and 255; in the case of having vertex color data in RGBA format, the alpha color should be normalized to be between 0 and 1.", + "editType": "calc", + "valType": "data_array" + }, + "vertexcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `vertexcolor`.", + "editType": "none", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "Sets the X coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the Y coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "z": { + "description": "Sets the Z coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "zcalendar": { + "description": "Sets the calendar system to use with `z` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "zhoverformat": { + "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `zaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "lighting": { - "ambient": { - "description": "Ambient light increases overall color visibility but can wash out the image.", - "dflt": 0.8, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "diffuse": { - "description": "Represents the extent that incident rays are reflected in a range of angles.", - "dflt": 0.8, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "editType": "calc", - "facenormalsepsilon": { - "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry.", - "dflt": 0.000001, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "fresnel": { - "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", - "dflt": 0.2, - "editType": "calc", - "max": 5, - "min": 0, - "valType": "number" - }, - "role": "object", - "roughness": { - "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", - "dflt": 0.5, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "specular": { - "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", - "dflt": 0.05, - "editType": "calc", - "max": 2, - "min": 0, - "valType": "number" - }, - "vertexnormalsepsilon": { - "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry.", - "dflt": 1e-12, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - }, - "lightposition": { - "editType": "calc", - "role": "object", - "x": { - "description": "Numeric vector, representing the X coordinate for each vertex.", - "dflt": 100000, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - }, - "y": { - "description": "Numeric vector, representing the Y coordinate for each vertex.", - "dflt": 100000, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - }, - "z": { - "description": "Numeric vector, representing the Z coordinate for each vertex.", - "dflt": 0, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - } - }, - "maxdisplayed": { - "description": "The maximum number of displayed segments in a streamtube.", - "dflt": 1000, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "scene": { - "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", - "dflt": "scene", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": false, - "editType": "style", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "sizeref": { - "description": "The scaling factor for the streamtubes. The default is 1, which avoids two max divergence tubes from touching at adjacent starting positions.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "starts": { - "editType": "calc", - "role": "object", - "x": { - "description": "Sets the x components of the starting position of the streamtubes", - "editType": "calc", - "valType": "data_array" - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the y components of the starting position of the streamtubes", - "editType": "calc", - "valType": "data_array" - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "z": { - "description": "Sets the z components of the starting position of the streamtubes", - "editType": "calc", - "valType": "data_array" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "description": "Sets a text element associated with this trace. If trace `hoverinfo` contains a *text* flag, this text element will be seen in all hover labels. Note that streamtube traces do not support array `text` values.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "type": "streamtube", - "u": { - "description": "Sets the x components of the vector field.", - "editType": "calc", - "valType": "data_array" - }, - "uhoverformat": { - "description": "Sets the hover text formatting rulefor `u` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "usrc": { - "description": "Sets the source reference on Chart Studio Cloud for `u`.", - "editType": "none", - "valType": "string" - }, - "v": { - "description": "Sets the y components of the vector field.", - "editType": "calc", - "valType": "data_array" - }, - "vhoverformat": { - "description": "Sets the hover text formatting rulefor `v` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "vsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `v`.", - "editType": "none", - "valType": "string" - }, - "w": { - "description": "Sets the z components of the vector field.", - "editType": "calc", - "valType": "data_array" - }, - "whoverformat": { - "description": "Sets the hover text formatting rulefor `w` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "wsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `w`.", - "editType": "none", - "valType": "string" - }, - "x": { - "description": "Sets the x coordinates of the vector field.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the y coordinates of the vector field.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "z": { - "description": "Sets the z coordinates of the vector field.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "zhoverformat": { - "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `zaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "gl3d", - "showLegend" - ], - "meta": { - "description": "Use a streamtube trace to visualize flow in a vector field. Specify a vector field using 6 1D arrays of equal length, 3 position arrays `x`, `y` and `z` and 3 vector component arrays `u`, `v`, and `w`. By default, the tubes' starting positions will be cut from the vector field's x-z plane at its minimum y value. To specify your own starting position, use attributes `starts.x`, `starts.y` and `starts.z`. The color is encoded by the norm of (u, v, w), and the local radius by the divergence of (u, v, w)." - }, - "type": "streamtube" - }, - "sunburst": { - "animatable": true, - "attributes": { - "branchvalues": { - "description": "Determines how the items in `values` are summed. When set to *total*, items in `values` are taken to be value of all its descendants. When set to *remainder*, items in `values` corresponding to the root and the branches sectors are taken to be the extra part not part of the sum of the values at their leaves.", - "dflt": "remainder", - "editType": "calc", - "valType": "enumerated", - "values": [ - "remainder", - "total" - ] - }, - "count": { - "description": "Determines default for `values` when it is not provided, by inferring a 1 for each of the *leaves* and/or *branches*, otherwise 0.", - "dflt": "leaves", - "editType": "calc", - "flags": [ - "branches", - "leaves" - ], - "valType": "flaglist" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this sunburst trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "editType": "calc", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this sunburst trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this sunburst trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this sunburst trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } + "categories": [ + "gl3d", + "showLegend" ], - "valType": "info_array" - } - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "label+text+value+name", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "label", - "text", - "value", - "name", - "current path", - "percent root", - "percent entry", - "percent parent" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" + "meta": { + "description": "Draws sets of triangles with coordinates given by three 1-dimensional arrays in `x`, `y`, `z` and (1) a sets of `i`, `j`, `k` indices (2) Delaunay triangulation or (3) the Alpha-shape algorithm or (4) the Convex-hull algorithm" }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" + "type": "mesh3d" + }, + "ohlc": { + "animatable": false, + "attributes": { + "close": { + "description": "Sets the close values.", + "editType": "calc", + "valType": "data_array" + }, + "closesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `close`.", + "editType": "none", + "valType": "string" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "decreasing": { + "editType": "style", + "line": { + "color": { + "description": "Sets the line color.", + "dflt": "#FF4136", + "editType": "style", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "style", + "role": "object", + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "high": { + "description": "Sets the high values.", + "editType": "calc", + "valType": "data_array" + }, + "highsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `high`.", + "editType": "none", + "valType": "string" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + }, + "split": { + "description": "Show hover information (open, close, high, low) in separate labels, rather than a single unified label. Default: *false*. When set to *true*, `hovertemplate` is ignored.", + "dflt": false, + "editType": "style", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `open`, `high`, `low` and `close`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "increasing": { + "editType": "style", + "line": { + "color": { + "description": "Sets the line color.", + "dflt": "#3D9970", + "editType": "style", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "style", + "role": "object", + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). Note that this style setting can also be set per direction via `increasing.line.dash` and `decreasing.line.dash`.", + "dflt": "solid", + "editType": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "style", + "role": "object", + "width": { + "description": "[object Object] Note that this style setting can also be set per direction via `increasing.line.width` and `decreasing.line.width`.", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "low": { + "description": "Sets the low values.", + "editType": "calc", + "valType": "data_array" + }, + "lowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `low`.", + "editType": "none", + "valType": "string" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "open": { + "description": "Sets the open values.", + "editType": "calc", + "valType": "data_array" + }, + "opensrc": { + "description": "Sets the source reference on Chart Studio Cloud for `open`.", + "editType": "none", + "valType": "string" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "arrayOk": true, + "description": "Sets hover text elements associated with each sample point. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to this trace's sample points.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the width of the open/close tick marks relative to the *x* minimal interval.", + "dflt": 0.3, + "editType": "calc", + "max": 0.5, + "min": 0, + "valType": "number" + }, + "type": "ohlc", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "Sets the x coordinates. If absent, linear coordinate will be generated.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "xperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "valType": "any" + }, + "xperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" + }, + "xperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" + } }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry` and `percentParent`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "anim": true, - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "insidetextfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `textinfo` lying inside the sector.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" + "categories": [ + "cartesian", + "svg", + "showLegend" ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "insidetextorientation": { - "description": "Controls the orientation of the text inside chart sectors. When set to *auto*, text may be oriented in any direction in order to be as big as possible in the middle of a sector. The *horizontal* option orients text to be parallel with the bottom of the chart, and may make text smaller in order to achieve that goal. The *radial* option orients text along the radius of the sector. The *tangential* option orients text perpendicular to the radius of the sector.", - "dflt": "auto", - "editType": "plot", - "valType": "enumerated", - "values": [ - "horizontal", - "radial", - "tangential", - "auto" - ] - }, - "labels": { - "description": "Sets the labels of each of the sectors.", - "editType": "calc", - "valType": "data_array" - }, - "labelssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `labels`.", - "editType": "none", - "valType": "string" - }, - "leaf": { - "editType": "plot", - "opacity": { - "description": "Sets the opacity of the leaves. With colorscale it is defaulted to 1; otherwise it is defaulted to 0.7", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" + "meta": { + "description": "The ohlc (short for Open-High-Low-Close) is a style of financial chart describing open, high, low and close for a given `x` coordinate (most likely time). The tip of the lines represent the `low` and `high` values and the horizontal segments represent the `open` and `close` values. Sample points where the close value is higher (lower) then the open value are called increasing (decreasing). By default, increasing items are drawn in green whereas decreasing are drawn in red." }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "type": "ohlc" + }, + "parcats": { + "animatable": false, + "attributes": { + "arrangement": { + "description": "Sets the drag interaction mode for categories and dimensions. If `perpendicular`, the categories can only move along a line perpendicular to the paths. If `freeform`, the categories can freely move on the plane. If `fixed`, the categories and dimensions are stationary.", + "dflt": "perpendicular", + "editType": "plot", + "valType": "enumerated", + "values": [ + "perpendicular", + "freeform", + "fixed" + ] + }, + "bundlecolors": { + "description": "Sort paths so that like colors are bundled together within each category.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "counts": { + "arrayOk": true, + "description": "The number of observations represented by each state. Defaults to 1 so that each state represents one observation", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "countssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `counts`.", + "editType": "none", + "valType": "string" + }, + "dimensions": { + "items": { + "dimension": { + "categoryarray": { + "description": "Sets the order in which categories in this dimension appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", + "editType": "calc", + "valType": "data_array" + }, + "categoryarraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `categoryarray`.", + "editType": "none", + "valType": "string" + }, + "categoryorder": { + "description": "Specifies the ordering logic for the categories in the dimension. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`.", + "dflt": "trace", + "editType": "calc", + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array" + ] + }, + "description": "The dimensions (variables) of the parallel categories diagram.", + "displayindex": { + "description": "The display index of dimension, from left to right, zero indexed, defaults to dimension index.", + "editType": "calc", + "valType": "integer" + }, + "editType": "calc", + "label": { + "description": "The shown name of the dimension.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "ticktext": { + "description": "Sets alternative tick labels for the categories in this dimension. Only has an effect if `categoryorder` is set to *array*. Should be an array the same length as `categoryarray` Used with `categoryorder`.", + "editType": "calc", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "values": { + "description": "Dimension values. `values[n]` represents the category value of the `n`th point in the dataset, therefore the `values` vector for all dimensions must be the same (longer vectors will be truncated).", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "valuessrc": { + "description": "Sets the source reference on Chart Studio Cloud for `values`.", + "editType": "none", + "valType": "string" + }, + "visible": { + "description": "Shows the dimension when set to `true` (the default). Hides the dimension for `false`.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + } + } + }, + "role": "object" + }, + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this parcats trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "editType": "calc", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this parcats trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this parcats trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this parcats trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } + }, + "hoverinfo": { + "arrayOk": false, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "plot", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "count", + "probability" + ], + "valType": "flaglist" + }, + "hoveron": { + "description": "Sets the hover interaction mode for the parcats diagram. If `category`, hover interaction take place per category. If `color`, hover interactions take place per color per category. If `dimension`, hover interactions take place across all categories per dimension.", + "dflt": "category", + "editType": "plot", + "valType": "enumerated", + "values": [ + "category", + "color", + "dimension" + ] + }, + "hovertemplate": { + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `count`, `probability`, `category`, `categorycount`, `colorcount` and `bandcolorcount`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "labelfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. Has an effect only if in `line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `line.color`) or the bounds set in `line.cmin` and `line.cmax` Has an effect only if in `line.color` is set to a numerical array. Defaults to `false` when `line.cmin` and `line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `line.cmin` and `line.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "hovertemplate": { + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `count` and `probability`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `line.color` is set to a numerical array. If true, `line.cmin` will correspond to the last color in the array and `line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "shape": { + "description": "Sets the shape of the paths. If `linear`, paths are composed of straight lines. If `hspline`, paths are composed of horizontal curved splines", + "dflt": "linear", + "editType": "plot", + "valType": "enumerated", + "values": [ + "linear", + "hspline" + ] + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `line.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "sortpaths": { + "description": "Sets the path sorting algorithm. If `forward`, sort paths based on dimension categories from left to right. If `backward`, sort paths based on dimensions categories from right to left.", + "dflt": "forward", + "editType": "plot", + "valType": "enumerated", + "values": [ + "forward", + "backward" + ] + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "tickfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "auto", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "type": "parcats", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "categories": [ + "noOpacity" + ], + "meta": { + "description": "Parallel categories diagram for multidimensional categorical data." }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } + "type": "parcats" }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "level": { - "anim": true, - "description": "Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`.", - "editType": "plot", - "valType": "any" - }, - "marker": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if colors is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here colors) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if colors is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if colors is set to a numerical array. Value should have the same units as colors and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if colors is set to a numerical array. Value should have the same units as colors. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if colors is set to a numerical array. Value should have the same units as colors and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" + "parcoords": { + "animatable": false, + "attributes": { + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "dimensions": { + "items": { + "dimension": { + "constraintrange": { + "description": "The domain range to which the filter on the dimension is constrained. Must be an array of `[fromValue, toValue]` with `fromValue <= toValue`, or if `multiselect` is not disabled, you may give an array of arrays, where each inner array is `[fromValue, toValue]`.", + "dimensions": "1-2", + "editType": "plot", + "freeLength": true, + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "valType": "info_array" + }, + "description": "The dimensions (variables) of the parallel coordinates chart. 2..60 dimensions are supported.", + "editType": "calc", + "label": { + "description": "The shown name of the dimension.", + "editType": "plot", + "valType": "string" + }, + "multiselect": { + "description": "Do we allow multiple selection ranges or just a single range?", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "none", + "valType": "string" + }, + "range": { + "description": "The domain range that represents the full, shown axis extent. Defaults to the `values` extent. Must be an array of `[fromValue, toValue]` with finite numbers as elements.", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "number" + }, + { + "editType": "plot", + "valType": "number" + } + ], + "valType": "info_array" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`.", + "editType": "plot", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear.", + "editType": "plot", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "values": { + "description": "Dimension values. `values[n]` represents the value of the `n`th point in the dataset, therefore the `values` vector for all dimensions must be the same (longer vectors will be truncated). Each value must be a finite number.", + "editType": "calc", + "valType": "data_array" + }, + "valuessrc": { + "description": "Sets the source reference on Chart Studio Cloud for `values`.", + "editType": "none", + "valType": "string" + }, + "visible": { + "description": "Shows the dimension when set to `true` (the default). Hides the dimension for `false`.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + } + } + }, + "role": "object" + }, + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this parcoords trace .", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "editType": "plot", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this parcoords trace .", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this parcoords trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this parcoords trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "labelangle": { + "description": "Sets the angle of the labels with respect to the horizontal. For example, a `tickangle` of -90 draws the labels vertically. Tilted labels with *labelangle* may be positioned better inside margins when `labelposition` is set to *bottom*.", + "dflt": 0, + "editType": "plot", + "valType": "angle" + }, + "labelfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "labelside": { + "description": "Specifies the location of the `label`. *top* positions labels above, next to the title *bottom* positions labels below the graph Tilted labels with *labelangle* may be positioned better inside margins when `labelposition` is set to *bottom*.", + "dflt": "top", + "editType": "plot", + "valType": "enumerated", + "values": [ + "top", + "bottom" + ] + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. Has an effect only if in `line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": false, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `line.color`) or the bounds set in `line.cmin` and `line.cmax` Has an effect only if in `line.color` is set to a numerical array. Defaults to `false` when `line.cmin` and `line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `line.cmin` and `line.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": [ + [ + 0, + "#440154" + ], + [ + 0.06274509803921569, + "#48186a" + ], + [ + 0.12549019607843137, + "#472d7b" + ], + [ + 0.18823529411764706, + "#424086" + ], + [ + 0.25098039215686274, + "#3b528b" + ], + [ + 0.3137254901960784, + "#33638d" + ], + [ + 0.3764705882352941, + "#2c728e" + ], + [ + 0.4392156862745098, + "#26828e" + ], + [ + 0.5019607843137255, + "#21918c" + ], + [ + 0.5647058823529412, + "#1fa088" + ], + [ + 0.6274509803921569, + "#28ae80" + ], + [ + 0.6901960784313725, + "#3fbc73" + ], + [ + 0.7529411764705882, + "#5ec962" + ], + [ + 0.8156862745098039, + "#84d44b" + ], + [ + 0.8784313725490196, + "#addc30" + ], + [ + 0.9411764705882353, + "#d8e219" + ], + [ + 1, + "#fde725" + ] + ], + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `line.color` is set to a numerical array. If true, `line.cmin` will correspond to the last color in the array and `line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `line.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "rangefont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "tickfont": { + "color": { + "editType": "plot", + "valType": "color" + }, + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "auto", + "editType": "plot", + "valType": "string" + }, + "size": { + "editType": "plot", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "type": "parcoords", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "plot", + "line": { + "color": { + "description": "Sets the base color of unselected lines. in connection with `unselected.line.opacity`.", + "dflt": "#7f7f7f", + "editType": "plot", + "valType": "color" + }, + "editType": "plot", + "opacity": { + "description": "Sets the opacity of unselected lines. The default *auto* decreases the opacity smoothly as the number of lines increases. Use *1* to achieve exact `unselected.line.color`.", + "dflt": "auto", + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "role": "object" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" + "categories": [ + "gl", + "regl", + "noOpacity", + "noHover" + ], + "meta": { + "description": "Parallel coordinates for multidimensional exploratory data analysis. The samples are specified in `dimensions`. The colors are set in `line.color`." }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" + "type": "parcoords" + }, + "pie": { + "animatable": false, + "attributes": { + "automargin": { + "description": "Determines whether outside text labels can push the margins.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "direction": { + "description": "Specifies the direction at which succeeding sectors follow one another.", + "dflt": "counterclockwise", + "editType": "calc", + "valType": "enumerated", + "values": [ + "clockwise", + "counterclockwise" + ] + }, + "dlabel": { + "description": "Sets the label step. See `label0` for more info.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this pie trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "editType": "calc", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this pie trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this pie trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this pie trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } + }, + "hole": { + "description": "Sets the fraction of the radius to cut out of the pie. Use this to make a donut chart.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "label", + "text", + "value", + "percent", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `label`, `color`, `value`, `percent` and `text`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "insidetextfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `textinfo` lying inside the sector.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "insidetextorientation": { + "description": "Controls the orientation of the text inside chart sectors. When set to *auto*, text may be oriented in any direction in order to be as big as possible in the middle of a sector. The *horizontal* option orients text to be parallel with the bottom of the chart, and may make text smaller in order to achieve that goal. The *radial* option orients text along the radius of the sector. The *tangential* option orients text perpendicular to the radius of the sector.", + "dflt": "auto", + "editType": "plot", + "valType": "enumerated", + "values": [ + "horizontal", + "radial", + "tangential", + "auto" + ] + }, + "label0": { + "description": "Alternate to `labels`. Builds a numeric set of labels. Use with `dlabel` where `label0` is the starting label and `dlabel` the step.", + "dflt": 0, + "editType": "calc", + "valType": "number" + }, + "labels": { + "description": "Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label.", + "editType": "calc", + "valType": "data_array" + }, + "labelssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `labels`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "arrayOk": true, + "description": "Sets the reference to a legend to show the pie slices in. Can be an array if `values` is set. In that case, each entry specifies the legend reference for one slice. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `legend`.", + "editType": "none", + "valType": "string" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "marker": { + "colors": { + "description": "Sets the color of each sector. If not specified, the default trace color set is used to pick the sector colors.", + "editType": "calc", + "valType": "data_array" + }, + "colorssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `colors`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "line": { + "color": { + "arrayOk": true, + "description": "Sets the color of the line enclosing each sector.", + "dflt": "#444", + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the line enclosing each sector.", + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "pattern": { + "bgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", + "editType": "style", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the pattern within the marker.", + "editType": "style", + "fgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", + "editType": "style", + "valType": "color" + }, + "fgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", + "editType": "none", + "valType": "string" + }, + "fgopacity": { + "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "fillmode": { + "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", + "dflt": "replace", + "editType": "style", + "valType": "enumerated", + "values": [ + "replace", + "overlay" + ] + }, + "path": { + "arrayOk": true, + "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", + "editType": "style", + "valType": "string" + }, + "pathsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `path`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shape": { + "arrayOk": true, + "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", + "dflt": "", + "editType": "style", + "valType": "enumerated", + "values": [ + "", + "/", + "\\", + "x", + "-", + "|", + "+", + "." + ] + }, + "shapesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shape`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", + "dflt": 8, + "editType": "style", + "min": 0, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "solidity": { + "arrayOk": true, + "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", + "dflt": 0.3, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "soliditysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", + "editType": "none", + "valType": "string" + } + }, + "role": "object" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "outsidetextfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `textinfo` lying outside the sector.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "pull": { + "arrayOk": true, + "description": "Sets the fraction of larger radius to pull the sectors out from the center. This can be a constant to pull all slices apart from each other equally or an array to highlight one or more slices.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "pullsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `pull`.", + "editType": "none", + "valType": "string" + }, + "rotation": { + "description": "Instead of the first slice starting at 12 o'clock, rotate to some other angle.", + "dflt": 0, + "editType": "calc", + "valType": "angle" + }, + "scalegroup": { + "description": "If there are multiple pie charts that should be sized according to their totals, link them by providing a non-empty group id here shared by every trace in the same group.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "showlegend": { + "arrayOk": true, + "description": "Determines whether or not items corresponding to the pie slices are shown in the legend. Can be an array if `values` is set. In that case, each entry specifies appearance in the legend for one slice.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "showlegendsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `showlegend`.", + "editType": "none", + "valType": "string" + }, + "sort": { + "description": "Determines whether or not the sectors are reordered from largest to smallest.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "editType": "plot", + "valType": "data_array" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `textinfo`.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textinfo": { + "description": "Determines which trace information appear on the graph.", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "label", + "text", + "value", + "percent" + ], + "valType": "flaglist" + }, + "textposition": { + "arrayOk": true, + "description": "Specifies the location of the `textinfo`.", + "dflt": "auto", + "editType": "plot", + "valType": "enumerated", + "values": [ + "inside", + "outside", + "auto", + "none" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", + "editType": "none", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `label`, `color`, `value`, `percent` and `text`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "title": { + "editType": "plot", + "font": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `title`.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "position": { + "description": "Specifies the location of the `title`.", + "editType": "plot", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle center", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "role": "object", + "text": { + "description": "Sets the title of the chart. If it is empty, no title is displayed.", + "dflt": "", + "editType": "plot", + "valType": "string" + } + }, + "type": "pie", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "values": { + "description": "Sets the values of the sectors. If omitted, we count occurrences of each label.", + "editType": "calc", + "valType": "data_array" + }, + "valuessrc": { + "description": "Sets the source reference on Chart Studio Cloud for `values`.", + "editType": "none", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } + "categories": [ + "pie-like", + "pie", + "showLegend" + ], + "layoutAttributes": { + "extendpiecolors": { + "description": "If `true`, the pie slice colors (whether given by `piecolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "hiddenlabels": { + "description": "hiddenlabels is the funnelarea & pie chart analog of visible:'legendonly' but it can contain many labels, and can simultaneously hide slices from several pies/funnelarea charts", + "editType": "calc", + "valType": "data_array" + }, + "hiddenlabelssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hiddenlabels`.", + "editType": "none", + "valType": "string" + }, + "piecolorway": { + "description": "Sets the default pie slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendpiecolors`.", + "editType": "calc", + "valType": "colorlist" + } }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" + "meta": { + "description": "A data visualized by the sectors of the pie is set in `values`. The sector labels are set in `labels`. The sector colors are set in `marker.colors`" }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", + "type": "pie" + }, + "sankey": { + "animatable": false, + "attributes": { + "arrangement": { + "description": "If value is `snap` (the default), the node arrangement is assisted by automatic snapping of elements to preserve space between nodes specified via `nodepad`. If value is `perpendicular`, the nodes can only move along a line perpendicular to the flow. If value is `freeform`, the nodes can freely move on the plane. If value is `fixed`, the nodes are stationary.", + "dflt": "snap", + "editType": "calc", + "valType": "enumerated", + "values": [ + "snap", + "perpendicular", + "freeform", + "fixed" + ] + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this sankey trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "editType": "calc", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this sankey trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this sankey trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this sankey trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } + }, + "hoverinfo": { + "arrayOk": false, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. Note that this attribute is superseded by `node.hoverinfo` and `node.hoverinfo` for nodes and links respectively.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [], + "valType": "flaglist" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "calc", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "calc", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "font": { + "color": { + "arrayOk": true, + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "calc", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + } + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "link": { + "arrowlen": { + "description": "Sets the length (in px) of the links arrow, if 0 no arrow will be drawn.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the `link` color. It can be a single value, or an array for specifying color for each `link`. If `link.color` is omitted, then by default, a translucent grey link will be used.", + "editType": "calc", + "valType": "color" + }, + "colorscales": { + "items": { + "concentrationscales": { + "cmax": { + "description": "Sets the upper bound of the color domain.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain.", + "dflt": 0, + "editType": "calc", + "valType": "number" + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": [ + [ + 0, + "white" + ], + [ + 1, + "black" + ] + ], + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "editType": "calc", + "label": { + "description": "The label of the links to color based on their concentration within a flow.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + } + } + }, + "role": "object" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "customdata": { + "description": "Assigns extra data to each link.", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "description": "The links of the Sankey plot.", + "editType": "calc", + "hovercolor": { + "arrayOk": true, + "description": "Sets the `link` hover color. It can be a single value, or an array for specifying hover colors for each `link`. If `link.hovercolor` is omitted, then by default, links will become slightly more opaque when hovered over.", + "editType": "calc", + "valType": "color" + }, + "hovercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovercolor`.", + "editType": "none", + "valType": "string" + }, + "hoverinfo": { + "description": "Determines which trace information appear when hovering links. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "none", + "skip" + ] + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "calc", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "calc", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "font": { + "color": { + "arrayOk": true, + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "calc", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `value` and `label`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", "valType": "any" - }, - { - "editType": "colorbars", + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "label": { + "description": "The shown name of the link.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "labelsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `label`.", + "editType": "none", + "valType": "string" + }, + "line": { + "color": { + "arrayOk": true, + "description": "Sets the color of the `line` around each `link`.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the `line` around each `link`.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "role": "object", + "source": { + "description": "An integer number `[0..nodes.length - 1]` that represents the source node.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "sourcesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `source`.", + "editType": "none", + "valType": "string" + }, + "target": { + "description": "An integer number `[0..nodes.length - 1]` that represents the target node.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "targetsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `target`.", + "editType": "none", + "valType": "string" + }, + "value": { + "description": "A numeric value representing the flow volume value.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "valuesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `value`.", + "editType": "none", + "valType": "string" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "node": { + "align": { + "description": "Sets the alignment method used to position the nodes along the horizontal axis.", + "dflt": "justify", + "editType": "calc", + "valType": "enumerated", + "values": [ + "justify", + "left", + "right", + "center" + ] + }, + "color": { + "arrayOk": true, + "description": "Sets the `node` color. It can be a single value, or an array for specifying color for each `node`. If `node.color` is omitted, then the default `Plotly` color palette will be cycled through to have a variety of colors. These defaults are not fully opaque, to allow some visibility of what is beneath the node.", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "customdata": { + "description": "Assigns extra data to each node.", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "description": "The nodes of the Sankey plot.", + "editType": "calc", + "groups": { + "description": "Groups of nodes. Each group is defined by an array with the indices of the nodes it contains. Multiple groups can be specified.", + "dflt": [], + "dimensions": 2, + "editType": "calc", + "freeLength": true, + "impliedEdits": { + "x": [], + "y": [] + }, + "items": { + "editType": "calc", + "valType": "number" + }, + "valType": "info_array" + }, + "hoverinfo": { + "description": "Determines which trace information appear when hovering nodes. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "none", + "skip" + ] + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "calc", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "calc", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "font": { + "color": { + "arrayOk": true, + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "calc", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `value` and `label`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", "valType": "any" - } + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "label": { + "description": "The shown name of the node.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "labelsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `label`.", + "editType": "none", + "valType": "string" + }, + "line": { + "color": { + "arrayOk": true, + "description": "Sets the color of the `line` around each `node`.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the `line` around each `node`.", + "dflt": 0.5, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "pad": { + "arrayOk": false, + "description": "Sets the padding (in px) between the `nodes`.", + "dflt": 20, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "role": "object", + "thickness": { + "arrayOk": false, + "description": "Sets the thickness (in px) of the `nodes`.", + "dflt": 20, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "x": { + "description": "The normalized horizontal position of the node.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "The normalized vertical position of the node.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + } + }, + "orientation": { + "description": "Sets the orientation of the Sankey diagram.", + "dflt": "h", + "editType": "calc", + "valType": "enumerated", + "values": [ + "v", + "h" + ] + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "textfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "auto", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "type": "sankey", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "valueformat": { + "description": "Sets the value formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", + "dflt": ".3s", + "editType": "calc", + "valType": "string" + }, + "valuesuffix": { + "description": "Adds a unit to follow the value in the hover tooltip. Add a space if a separation is necessary from the value.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } + }, + "categories": [ + "noOpacity" + ], + "meta": { + "description": "Sankey plots for network flow data analysis. The nodes are specified in `nodes` and the links between sources and targets in `links`. The colors are set in `nodes[i].color` and `links[i].color`, otherwise defaults are used." + }, + "type": "sankey" + }, + "scatter": { + "animatable": true, + "attributes": { + "alignmentgroup": { + "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "cliponaxis": { + "description": "Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "dx": { + "anim": true, + "description": "Sets the x coordinate step. See `x0` for more info.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "dy": { + "anim": true, + "description": "Sets the y coordinate step. See `y0` for more info.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "error_x": { + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", + "editType": "none", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `array`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the stroke color of the error bars.", + "editType": "style", + "valType": "color" + }, + "copy_ystyle": { + "editType": "plot", + "valType": "boolean" + }, + "editType": "calc", + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "plot", + "min": 0, + "valType": "number" + } + }, + "error_y": { + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", + "editType": "none", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `array`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the stroke color of the error bars.", + "editType": "style", + "valType": "color" + }, + "editType": "calc", + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "plot", + "min": 0, + "valType": "number" + } + }, + "fill": { + "description": "Sets the area to fill with a solid color. Defaults to *none* unless this trace is stacked, then it gets *tonexty* (*tonextx*) if `orientation` is *v* (*h*) Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "tozeroy", + "tozerox", + "tonexty", + "tonextx", + "toself", + "tonext" + ] + }, + "fillcolor": { + "anim": true, + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. If fillgradient is specified, fillcolor is ignored except for setting the background color of the hover label, if any.", + "editType": "style", + "valType": "color" + }, + "fillgradient": { + "colorscale": { + "description": "Sets the fill gradient colors as a color scale. The color scale is interpreted as a gradient applied in the direction specified by *orientation*, from the lowest to the highest value of the scatter plot along that axis, or from the center to the most distant point from it, if orientation is *radial*.", + "editType": "style", + "valType": "colorscale" + }, + "description": "Sets a fill gradient. If not specified, the fillcolor is used instead.", + "editType": "calc", + "role": "object", + "start": { + "description": "Sets the gradient start value. It is given as the absolute position on the axis determined by the orientiation. E.g., if orientation is *horizontal*, the gradient will be horizontal and start from the x-position given by start. If omitted, the gradient starts at the lowest value of the trace along the respective axis. Ignored if orientation is *radial*.", + "editType": "calc", + "valType": "number" + }, + "stop": { + "description": "Sets the gradient end value. It is given as the absolute position on the axis determined by the orientiation. E.g., if orientation is *horizontal*, the gradient will be horizontal and end at the x-position given by end. If omitted, the gradient ends at the highest value of the trace along the respective axis. Ignored if orientation is *radial*.", + "editType": "calc", + "valType": "number" + }, + "type": { + "description": "Sets the type/orientation of the color gradient for the fill. Defaults to *none*.", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ] + } + }, + "fillpattern": { + "bgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", + "editType": "style", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the pattern within the marker.", + "editType": "style", + "fgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", + "editType": "style", + "valType": "color" + }, + "fgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", + "editType": "none", + "valType": "string" + }, + "fgopacity": { + "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "fillmode": { + "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", + "dflt": "replace", + "editType": "style", + "valType": "enumerated", + "values": [ + "replace", + "overlay" + ] + }, + "path": { + "arrayOk": true, + "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", + "editType": "style", + "valType": "string" + }, + "pathsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `path`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shape": { + "arrayOk": true, + "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", + "dflt": "", + "editType": "style", + "valType": "enumerated", + "values": [ + "", + "/", + "\\", + "x", + "-", + "|", + "+", + "." + ] + }, + "shapesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shape`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", + "dflt": 8, + "editType": "style", + "min": 0, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "solidity": { + "arrayOk": true, + "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", + "dflt": 0.3, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "soliditysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", + "editType": "none", + "valType": "string" + } + }, + "groupnorm": { + "description": "Only relevant when `stackgroup` is used, and only the first `groupnorm` found in the `stackgroup` will be used - including if `visible` is *legendonly* but not if it is `false`. Sets the normalization for the sum of this `stackgroup`. With *fraction*, the value of each trace at each location is divided by the sum of all trace values at that location. *percent* is the same but multiplied by 100 to show percentages. If there are multiple subplots, or multiple `stackgroup`s on one subplot, each will be normalized within its own set.", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "", + "fraction", + "percent" + ] + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hoveron": { + "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", + "editType": "style", + "flags": [ + "points", + "fills" + ], + "valType": "flaglist" + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", "dflt": "", - "editType": "colorbars", + "editType": "style", "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "ids": { + "anim": true, + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "backoff": { + "arrayOk": true, + "description": "Sets the line back off from the end point of the nth line segment (in px). This option is useful e.g. to avoid overlap with arrowhead markers. With *auto* the lines would trim before markers if `marker.angleref` is set to *previous*.", + "dflt": "auto", + "editType": "plot", + "min": 0, + "valType": "number" + }, + "backoffsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `backoff`.", + "editType": "none", + "valType": "string" + }, + "color": { + "anim": true, + "description": "Sets the line color.", + "editType": "style", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "plot", + "role": "object", + "shape": { + "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", + "dflt": "linear", + "editType": "plot", + "valType": "enumerated", + "values": [ + "linear", + "spline", + "hv", + "vh", + "hvh", + "vhv" + ] + }, + "simplify": { + "description": "Simplifies lines by removing nearly-collinear points. When transitioning lines, it may be desirable to disable this so that the number of points along the resulting SVG path is unaffected.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "smoothing": { + "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", + "dflt": 1, + "editType": "plot", + "max": 1.3, + "min": 0, + "valType": "number" + }, + "width": { + "anim": true, + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "marker": { + "angle": { + "anim": false, + "arrayOk": true, + "description": "Sets the marker angle in respect to `angleref`.", + "dflt": 0, + "editType": "plot", + "valType": "angle" + }, + "angleref": { + "anim": false, + "description": "Sets the reference for marker angle. With *previous*, angle 0 points along the line from the previous point to this one. With *up*, angle 0 points toward the top of the screen.", + "dflt": "up", + "editType": "plot", + "valType": "enumerated", + "values": [ + "previous", + "up" + ] + }, + "anglesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `angle`.", + "editType": "none", + "valType": "string" + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "anim": true, + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "gradient": { + "color": { + "arrayOk": true, + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "type": { + "arrayOk": true, + "description": "Sets the type of gradient used to fill the markers", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ] + }, + "typesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `type`.", + "editType": "none", + "valType": "string" + } + }, + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "anim": true, + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "width": { + "anim": true, + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "maxdisplayed": { + "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "opacity": { + "anim": true, + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "anim": true, + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "standoff": { + "anim": true, + "arrayOk": true, + "description": "Moves the marker away from the data point in the direction of `angle` (in px). This can be useful for example if you have another marker at this location and you want to point an arrowhead marker at it.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "standoffsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `standoff`.", + "editType": "none", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "style", + "valType": "enumerated", + "values": [ + 0, + "0", + "circle", + 100, + "100", + "circle-open", + 200, + "200", + "circle-dot", + 300, + "300", + "circle-open-dot", + 1, + "1", + "square", + 101, + "101", + "square-open", + 201, + "201", + "square-dot", + 301, + "301", + "square-open-dot", + 2, + "2", + "diamond", + 102, + "102", + "diamond-open", + 202, + "202", + "diamond-dot", + 302, + "302", + "diamond-open-dot", + 3, + "3", + "cross", + 103, + "103", + "cross-open", + 203, + "203", + "cross-dot", + 303, + "303", + "cross-open-dot", + 4, + "4", + "x", + 104, + "104", + "x-open", + 204, + "204", + "x-dot", + 304, + "304", + "x-open-dot", + 5, + "5", + "triangle-up", + 105, + "105", + "triangle-up-open", + 205, + "205", + "triangle-up-dot", + 305, + "305", + "triangle-up-open-dot", + 6, + "6", + "triangle-down", + 106, + "106", + "triangle-down-open", + 206, + "206", + "triangle-down-dot", + 306, + "306", + "triangle-down-open-dot", + 7, + "7", + "triangle-left", + 107, + "107", + "triangle-left-open", + 207, + "207", + "triangle-left-dot", + 307, + "307", + "triangle-left-open-dot", + 8, + "8", + "triangle-right", + 108, + "108", + "triangle-right-open", + 208, + "208", + "triangle-right-dot", + 308, + "308", + "triangle-right-open-dot", + 9, + "9", + "triangle-ne", + 109, + "109", + "triangle-ne-open", + 209, + "209", + "triangle-ne-dot", + 309, + "309", + "triangle-ne-open-dot", + 10, + "10", + "triangle-se", + 110, + "110", + "triangle-se-open", + 210, + "210", + "triangle-se-dot", + 310, + "310", + "triangle-se-open-dot", + 11, + "11", + "triangle-sw", + 111, + "111", + "triangle-sw-open", + 211, + "211", + "triangle-sw-dot", + 311, + "311", + "triangle-sw-open-dot", + 12, + "12", + "triangle-nw", + 112, + "112", + "triangle-nw-open", + 212, + "212", + "triangle-nw-dot", + 312, + "312", + "triangle-nw-open-dot", + 13, + "13", + "pentagon", + 113, + "113", + "pentagon-open", + 213, + "213", + "pentagon-dot", + 313, + "313", + "pentagon-open-dot", + 14, + "14", + "hexagon", + 114, + "114", + "hexagon-open", + 214, + "214", + "hexagon-dot", + 314, + "314", + "hexagon-open-dot", + 15, + "15", + "hexagon2", + 115, + "115", + "hexagon2-open", + 215, + "215", + "hexagon2-dot", + 315, + "315", + "hexagon2-open-dot", + 16, + "16", + "octagon", + 116, + "116", + "octagon-open", + 216, + "216", + "octagon-dot", + 316, + "316", + "octagon-open-dot", + 17, + "17", + "star", + 117, + "117", + "star-open", + 217, + "217", + "star-dot", + 317, + "317", + "star-open-dot", + 18, + "18", + "hexagram", + 118, + "118", + "hexagram-open", + 218, + "218", + "hexagram-dot", + 318, + "318", + "hexagram-open-dot", + 19, + "19", + "star-triangle-up", + 119, + "119", + "star-triangle-up-open", + 219, + "219", + "star-triangle-up-dot", + 319, + "319", + "star-triangle-up-open-dot", + 20, + "20", + "star-triangle-down", + 120, + "120", + "star-triangle-down-open", + 220, + "220", + "star-triangle-down-dot", + 320, + "320", + "star-triangle-down-open-dot", + 21, + "21", + "star-square", + 121, + "121", + "star-square-open", + 221, + "221", + "star-square-dot", + 321, + "321", + "star-square-open-dot", + 22, + "22", + "star-diamond", + 122, + "122", + "star-diamond-open", + 222, + "222", + "star-diamond-dot", + 322, + "322", + "star-diamond-open-dot", + 23, + "23", + "diamond-tall", + 123, + "123", + "diamond-tall-open", + 223, + "223", + "diamond-tall-dot", + 323, + "323", + "diamond-tall-open-dot", + 24, + "24", + "diamond-wide", + 124, + "124", + "diamond-wide-open", + 224, + "224", + "diamond-wide-dot", + 324, + "324", + "diamond-wide-open-dot", + 25, + "25", + "hourglass", + 125, + "125", + "hourglass-open", + 26, + "26", + "bowtie", + 126, + "126", + "bowtie-open", + 27, + "27", + "circle-cross", + 127, + "127", + "circle-cross-open", + 28, + "28", + "circle-x", + 128, + "128", + "circle-x-open", + 29, + "29", + "square-cross", + 129, + "129", + "square-cross-open", + 30, + "30", + "square-x", + 130, + "130", + "square-x-open", + 31, + "31", + "diamond-cross", + 131, + "131", + "diamond-cross-open", + 32, + "32", + "diamond-x", + 132, + "132", + "diamond-x-open", + 33, + "33", + "cross-thin", + 133, + "133", + "cross-thin-open", + 34, + "34", + "x-thin", + 134, + "134", + "x-thin-open", + 35, + "35", + "asterisk", + 135, + "135", + "asterisk-open", + 36, + "36", + "hash", + 136, + "136", + "hash-open", + 236, + "236", + "hash-dot", + 336, + "336", + "hash-open-dot", + 37, + "37", + "y-up", + 137, + "137", + "y-up-open", + 38, + "38", + "y-down", + 138, + "138", + "y-down-open", + 39, + "39", + "y-left", + 139, + "139", + "y-left-open", + 40, + "40", + "y-right", + 140, + "140", + "y-right-open", + 41, + "41", + "line-ew", + 141, + "141", + "line-ew-open", + 42, + "42", + "line-ns", + 142, + "142", + "line-ns-open", + 43, + "43", + "line-ne", + 143, + "143", + "line-ne-open", + 44, + "44", + "line-nw", + 144, + "144", + "line-nw-open", + 45, + "45", + "arrow-up", + 145, + "145", + "arrow-up-open", + 46, + "46", + "arrow-down", + 146, + "146", + "arrow-down-open", + 47, + "47", + "arrow-left", + 147, + "147", + "arrow-left-open", + 48, + "48", + "arrow-right", + 148, + "148", + "arrow-right-open", + 49, + "49", + "arrow-bar-up", + 149, + "149", + "arrow-bar-up-open", + 50, + "50", + "arrow-bar-down", + 150, + "150", + "arrow-bar-down-open", + 51, + "51", + "arrow-bar-left", + 151, + "151", + "arrow-bar-left-open", + 52, + "52", + "arrow-bar-right", + 152, + "152", + "arrow-bar-right-open", + 53, + "53", + "arrow", + 153, + "153", + "arrow-open", + 54, + "54", + "arrow-wide", + 154, + "154", + "arrow-wide-open" + ] + }, + "symbolsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", + "editType": "none", + "valType": "string" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "mode": { + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "offsetgroup": { + "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "orientation": { + "description": "Only relevant in the following cases: 1. when `scattermode` is set to *group*. 2. when `stackgroup` is used, and only the first `orientation` found in the `stackgroup` will be used - including if `visible` is *legendonly* but not if it is `false`. Sets the stacking direction. With *v* (*h*), the y (x) values of subsequent traces are added. Also affects the default value of `fill`.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "v", + "h" + ] }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colors": { - "description": "Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors.", - "editType": "calc", - "valType": "data_array" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if colors is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `colors`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "line": { - "color": { - "arrayOk": true, - "description": "Sets the color of the line enclosing each sector. Defaults to the `paper_bgcolor` value.", - "dflt": null, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the line enclosing each sector.", - "dflt": 1, - "editType": "style", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "pattern": { - "bgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", - "editType": "style", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the pattern within the marker.", - "editType": "style", - "fgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", - "editType": "style", - "valType": "color" - }, - "fgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", - "editType": "none", - "valType": "string" - }, - "fgopacity": { - "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "fillmode": { - "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", - "dflt": "replace", - "editType": "style", - "valType": "enumerated", - "values": [ - "replace", - "overlay" - ] - }, - "path": { - "arrayOk": true, - "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", - "editType": "style", - "valType": "string" - }, - "pathsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `path`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shape": { - "arrayOk": true, - "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", - "dflt": "", - "editType": "style", - "valType": "enumerated", - "values": [ - "", - "/", - "\\", - "x", - "-", - "|", - "+", - "." - ] - }, - "shapesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shape`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", - "dflt": 8, - "editType": "style", - "min": 0, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "solidity": { - "arrayOk": true, - "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", - "dflt": 0.3, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "soliditysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", - "editType": "none", - "valType": "string" - } - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if colors is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if colors is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "maxdepth": { - "description": "Sets the number of rendered sectors from any given `level`. Set `maxdepth` to *-1* to render all the levels in the hierarchy.", - "dflt": -1, - "editType": "plot", - "valType": "integer" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "outsidetextfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `textinfo` lying outside the sector. This option refers to the root of the hierarchy presented at the center of a sunburst graph. Please note that if a hierarchy has multiple root nodes, this option won't have any effect and `insidetextfont` would be used.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "parents": { - "description": "Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique.", - "editType": "calc", - "valType": "data_array" - }, - "parentssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `parents`.", - "editType": "none", - "valType": "string" - }, - "root": { - "color": { - "description": "sets the color of the root node for a sunburst/treemap/icicle trace. this has no effect when a colorscale is used to set the markers.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "role": "object" - }, - "rotation": { - "description": "Rotates the whole diagram counterclockwise by some angle. By default the first slice starts at 3 o'clock.", - "dflt": 0, - "editType": "plot", - "valType": "angle" - }, - "sort": { - "description": "Determines whether or not the sectors are reordered from largest to smallest.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "editType": "plot", - "valType": "data_array" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `textinfo`.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textinfo": { - "description": "Determines which trace information appear on the graph.", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "label", - "text", - "value", - "current path", - "percent root", - "percent entry", - "percent parent" - ], - "valType": "flaglist" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry`, `percentParent`, `label` and `value`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "type": "sunburst", - "uid": { - "anim": true, - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "values": { - "description": "Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed.", - "editType": "calc", - "valType": "data_array" - }, - "valuessrc": { - "description": "Sets the source reference on Chart Studio Cloud for `values`.", - "editType": "none", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [], - "layoutAttributes": { - "extendsunburstcolors": { - "description": "If `true`, the sunburst slice colors (whether given by `sunburstcolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "sunburstcolorway": { - "description": "Sets the default sunburst slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendsunburstcolors`.", - "editType": "calc", - "valType": "colorlist" - } - }, - "meta": { - "description": "Visualize hierarchal data spanning outward radially from root to leaves. The sunburst sectors are determined by the entries in *labels* or *ids* and in *parents*." - }, - "type": "sunburst" - }, - "surface": { - "animatable": false, - "attributes": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": false, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here z or surfacecolor) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as z or surfacecolor and if set, `cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as z or surfacecolor. Has no effect when `cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as z or surfacecolor and if set, `cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "calc", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "calc", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "calc", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "calc", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "any" - }, - { - "editType": "calc", - "valType": "any" - } - ], - "valType": "info_array" + "stackgaps": { + "description": "Only relevant when `stackgroup` is used, and only the first `stackgaps` found in the `stackgroup` will be used - including if `visible` is *legendonly* but not if it is `false`. Determines how we handle locations at which other traces in this group have data but this one does not. With *infer zero* we insert a zero at these locations. With *interpolate* we linearly interpolate between existing values, and extrapolate a constant beyond the existing values.", + "dflt": "infer zero", + "editType": "calc", + "valType": "enumerated", + "values": [ + "infer zero", + "interpolate" + ] }, - "editType": "calc", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "calc", - "valType": "boolean" + "stackgroup": { + "description": "Set several scatter traces (on the same subplot) to the same stackgroup in order to add their y values (or their x values if `orientation` is *h*). If blank or omitted this trace will not be stacked. Stacking also turns `fill` on by default, using *tonexty* (*tonextx*) if `orientation` is *h* (*v*) and sets the default `mode` to *lines* irrespective of point count. You can only stack on a numeric (linear or log) axis. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order.", + "dflt": "", + "editType": "calc", + "valType": "string" }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "calc", - "valType": "string" + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "calc", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "calc", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "calc", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "calc", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "calc", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data are filled in.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "contours": { - "editType": "calc", - "role": "object", - "x": { - "color": { - "description": "Sets the color of the contour lines.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "end": { - "description": "Sets the end contour level value. Must be more than `contours.start`", - "dflt": null, - "editType": "calc", - "valType": "number" - }, - "highlight": { - "description": "Determines whether or not contour lines about the x dimension are highlighted on hover.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "highlightcolor": { - "description": "Sets the color of the highlighted contour lines.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "highlightwidth": { - "description": "Sets the width of the highlighted contour lines.", - "dflt": 2, - "editType": "calc", - "max": 16, - "min": 1, - "valType": "number" - }, - "project": { - "editType": "calc", - "role": "object", - "x": { - "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "y": { - "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "z": { - "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "role": "object", - "show": { - "description": "Determines whether or not contour lines about the x dimension are drawn.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "description": "Sets the step between each contour level. Must be positive.", - "dflt": null, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "start": { - "description": "Sets the starting contour level value. Must be less than `contours.end`", - "dflt": null, - "editType": "calc", - "valType": "number" - }, - "usecolormap": { - "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width of the contour lines.", - "dflt": 2, - "editType": "calc", - "max": 16, - "min": 1, - "valType": "number" - } - }, - "y": { - "color": { - "description": "Sets the color of the contour lines.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "end": { - "description": "Sets the end contour level value. Must be more than `contours.start`", - "dflt": null, - "editType": "calc", - "valType": "number" - }, - "highlight": { - "description": "Determines whether or not contour lines about the y dimension are highlighted on hover.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "highlightcolor": { - "description": "Sets the color of the highlighted contour lines.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "highlightwidth": { - "description": "Sets the width of the highlighted contour lines.", - "dflt": 2, - "editType": "calc", - "max": 16, - "min": 1, - "valType": "number" - }, - "project": { - "editType": "calc", - "role": "object", - "x": { - "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "y": { - "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "z": { - "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "role": "object", - "show": { - "description": "Determines whether or not contour lines about the y dimension are drawn.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "description": "Sets the step between each contour level. Must be positive.", - "dflt": null, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "start": { - "description": "Sets the starting contour level value. Must be less than `contours.end`", - "dflt": null, - "editType": "calc", - "valType": "number" - }, - "usecolormap": { - "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width of the contour lines.", - "dflt": 2, - "editType": "calc", - "max": 16, - "min": 1, - "valType": "number" - } - }, - "z": { - "color": { - "description": "Sets the color of the contour lines.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "end": { - "description": "Sets the end contour level value. Must be more than `contours.start`", - "dflt": null, - "editType": "calc", - "valType": "number" - }, - "highlight": { - "description": "Determines whether or not contour lines about the z dimension are highlighted on hover.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "highlightcolor": { - "description": "Sets the color of the highlighted contour lines.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "highlightwidth": { - "description": "Sets the width of the highlighted contour lines.", - "dflt": 2, - "editType": "calc", - "max": 16, - "min": 1, - "valType": "number" - }, - "project": { - "editType": "calc", - "role": "object", - "x": { - "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "y": { - "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "z": { - "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "role": "object", - "show": { - "description": "Determines whether or not contour lines about the z dimension are drawn.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "size": { - "description": "Sets the step between each contour level. Must be positive.", - "dflt": null, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "start": { - "description": "Sets the starting contour level value. Must be less than `contours.end`", - "dflt": null, - "editType": "calc", - "valType": "number" - }, - "usecolormap": { - "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width of the contour lines.", - "dflt": 2, - "editType": "calc", - "max": 16, - "min": 1, - "valType": "number" - } - } - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "hidesurface": { - "description": "Determines whether or not a surface is drawn. For example, set `hidesurface` to *false* `contours.x.show` to *true* and `contours.y.show` to *true* to draw a wire frame plot.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "textfont": { + "color": { + "arrayOk": true, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the text font.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textposition": { + "arrayOk": true, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", + "editType": "none", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. ", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "type": "scatter", + "uid": { + "anim": true, + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "anim": true, + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "x0": { + "anim": true, + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "xperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "valType": "any" + }, + "xperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" + }, + "xperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "anim": true, + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "y0": { + "anim": true, + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "yperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "valType": "any" + }, + "yperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" + }, + "yperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" + } }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "categories": [ + "cartesian", + "svg", + "symbols", + "errorBarsOK", + "showLegend", + "scatter-like", + "zoomScale" + ], + "layoutAttributes": { + "scattergap": { + "description": "Sets the gap (in plot fraction) between scatter points of adjacent location coordinates. Defaults to `bargap`.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "scattermode": { + "description": "Determines how scatter points at the same location coordinate are displayed on the graph. With *group*, the scatter points are plotted next to one another centered around the shared location. With *overlay*, the scatter points are plotted over one another, you might need to reduce *opacity* to see multiple scatter points.", + "dflt": "overlay", + "editType": "calc", + "valType": "enumerated", + "values": [ + "group", + "overlay" + ] + } }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "meta": { + "description": "The scatter trace type encompasses line charts, scatter charts, text charts, and bubble charts. The data visualized as scatter point or lines is set in `x` and `y`. Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays." }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "lighting": { - "ambient": { - "description": "Ambient light increases overall color visibility but can wash out the image.", - "dflt": 0.8, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "diffuse": { - "description": "Represents the extent that incident rays are reflected in a range of angles.", - "dflt": 0.8, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "editType": "calc", - "fresnel": { - "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", - "dflt": 0.2, - "editType": "calc", - "max": 5, - "min": 0, - "valType": "number" - }, - "role": "object", - "roughness": { - "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", - "dflt": 0.5, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "specular": { - "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", - "dflt": 0.05, - "editType": "calc", - "max": 2, - "min": 0, - "valType": "number" - } - }, - "lightposition": { - "editType": "calc", - "role": "object", - "x": { - "description": "Numeric vector, representing the X coordinate for each vertex.", - "dflt": 10, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - }, - "y": { - "description": "Numeric vector, representing the Y coordinate for each vertex.", - "dflt": 10000, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - }, - "z": { - "description": "Numeric vector, representing the Z coordinate for each vertex.", - "dflt": 0, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacityscale": { - "description": "Sets the opacityscale. The opacityscale must be an array containing arrays mapping a normalized value to an opacity value. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have higher opacity values and those in the middle would be more transparent Alternatively, `opacityscale` may be a palette name string of the following list: 'min', 'max', 'extremes' and 'uniform'. The default is 'uniform'.", - "editType": "calc", - "valType": "any" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "scene": { - "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", - "dflt": "scene", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "surfacecolor": { - "description": "Sets the surface color values, used for setting a color scale independent of `z`.", - "editType": "calc", - "valType": "data_array" - }, - "surfacecolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `surfacecolor`.", - "editType": "none", - "valType": "string" - }, - "text": { - "arrayOk": true, - "description": "Sets the text elements associated with each z value. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "surface", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the x coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" + "type": "scatter" }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "z": { - "description": "Sets the z coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "zcalendar": { - "description": "Sets the calendar system to use with `z` date data.", - "dflt": "gregorian", - "editType": "calc", - "valType": "enumerated", - "values": [ - "chinese", - "coptic", - "discworld", - "ethiopian", - "gregorian", - "hebrew", - "islamic", - "jalali", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "taiwan", - "thai", - "ummalqura" - ] - }, - "zhoverformat": { - "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `zaxis.hoverformat`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "gl3d", - "2dMap", - "showLegend" - ], - "meta": { - "description": "The data the describes the coordinates of the surface is set in `z`. Data in `z` should be a {2D array}. Coordinates in `x` and `y` can either be 1D {arrays} or {2D arrays} (e.g. to graph parametric surfaces). If not provided in `x` and `y`, the x and y coordinates are assumed to be linear starting at 0 with a unit step. The color scale corresponds to the `z` values by default. For custom color scales, use `surfacecolor` which should be a {2D array}, where its bounds can be controlled using `cmin` and `cmax`." - }, - "type": "surface" - }, - "table": { - "animatable": false, - "attributes": { - "cells": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", - "dflt": "center", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "fill": { - "color": { - "arrayOk": true, - "description": "Sets the cell fill color. It accepts either a specific color or an array of colors or a 2D array of colors.", - "dflt": "white", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object" - }, - "font": { - "color": { - "arrayOk": true, - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" + "scatter3d": { + "animatable": false, + "attributes": { + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "error_x": { + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", + "editType": "none", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `array`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the stroke color of the error bars.", + "editType": "calc", + "valType": "color" + }, + "copy_zstyle": { + "editType": "calc", + "valType": "boolean" + }, + "editType": "calc", + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "error_y": { + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", + "editType": "none", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `array`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the stroke color of the error bars.", + "editType": "calc", + "valType": "color" + }, + "copy_zstyle": { + "editType": "calc", + "valType": "boolean" + }, + "editType": "calc", + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "error_z": { + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", + "editType": "none", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `array`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the stroke color of the error bars.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets text elements associated with each (x,y,z) triplet. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y,z) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. Has an effect only if in `line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `line.color`) or the bounds set in `line.cmin` and `line.cmax` Has an effect only if in `line.color` is set to a numerical array. Defaults to `false` when `line.cmin` and `line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `line.color` is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `line.cmin` and `line.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "calc", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "calc", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "calc", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "calc", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "calc", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "calc", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "calc", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "dash": { + "description": "Sets the dash style of the lines.", + "dflt": "solid", + "editType": "calc", + "valType": "enumerated", + "values": [ + "dash", + "dashdot", + "dot", + "longdash", + "longdashdot", + "solid" + ] + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `line.color` is set to a numerical array. If true, `line.cmin` will correspond to the last color in the array and `line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `line.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "marker": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "calc", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "calc", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "calc", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "calc", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "calc", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "calc", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "calc", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": false, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "opacity": { + "arrayOk": false, + "description": "Sets the marker opacity. Note that the marker opacity for scatter3d traces must be a scalar value for performance reasons. To set a blending opacity value (i.e. which is not transparent), set *marker.color* to an rgba color and use its alpha channel.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 8, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol type.", + "dflt": "circle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "circle", + "circle-open", + "cross", + "diamond", + "diamond-open", + "square", + "square-open", + "x" + ] + }, + "symbolsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", + "editType": "none", + "valType": "string" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "mode": { + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", + "dflt": "lines+markers", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "projection": { + "editType": "calc", + "role": "object", + "x": { + "editType": "calc", + "opacity": { + "description": "Sets the projection color.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "scale": { + "description": "Sets the scale factor determining the size of the projection marker points.", + "dflt": 0.6666666666666666, + "editType": "calc", + "max": 10, + "min": 0, + "valType": "number" + }, + "show": { + "description": "Sets whether or not projections are shown along the x axis.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "y": { + "editType": "calc", + "opacity": { + "description": "Sets the projection color.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "scale": { + "description": "Sets the scale factor determining the size of the projection marker points.", + "dflt": 0.6666666666666666, + "editType": "calc", + "max": 10, + "min": 0, + "valType": "number" + }, + "show": { + "description": "Sets whether or not projections are shown along the y axis.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "z": { + "editType": "calc", + "opacity": { + "description": "Sets the projection color.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "scale": { + "description": "Sets the scale factor determining the size of the projection marker points.", + "dflt": 0.6666666666666666, + "editType": "calc", + "max": 10, + "min": 0, + "valType": "number" + }, + "show": { + "description": "Sets whether or not projections are shown along the z axis.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + } + }, + "scene": { + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "surfaceaxis": { + "description": "If *-1*, the scatter points are not fill with a surface If *0*, *1*, *2*, the scatter points are filled with a Delaunay surface about the x, y, z respectively.", + "dflt": -1, + "editType": "calc", + "valType": "enumerated", + "values": [ + -1, + 0, + 1, + 2 + ] + }, + "surfacecolor": { + "description": "Sets the surface fill color.", + "editType": "calc", + "valType": "color" + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (x,y,z) triplet. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y,z) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the text font.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textposition": { + "arrayOk": true, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "top center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", + "editType": "none", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. ", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "type": "scatter3d", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "z": { + "description": "Sets the z coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "zcalendar": { + "description": "Sets the calendar system to use with `z` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "zhoverformat": { + "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `zaxis.hoverformat`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "format": { - "description": "Sets the cell value formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "formatsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `format`.", - "editType": "none", - "valType": "string" - }, - "height": { - "description": "The height of cells.", - "dflt": 20, - "editType": "calc", - "valType": "number" - }, - "line": { - "color": { - "arrayOk": true, - "dflt": "grey", - "editType": "calc", - "valType": "color" + "categories": [ + "gl3d", + "symbols", + "showLegend", + "scatter-like" + ], + "meta": { + "description": "The data visualized as scatter point or lines in 3D dimension is set in `x`, `y`, `z`. Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` Projections are achieved via `projection`. Surface fills are achieved via `surfaceaxis`.", + "hrName": "scatter_3d" }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" + "type": "scatter3d" + }, + "scattercarpet": { + "animatable": false, + "attributes": { + "a": { + "description": "Sets the a-axis coordinates.", + "editType": "calc", + "valType": "data_array" + }, + "asrc": { + "description": "Sets the source reference on Chart Studio Cloud for `a`.", + "editType": "none", + "valType": "string" + }, + "b": { + "description": "Sets the b-axis coordinates.", + "editType": "calc", + "valType": "data_array" + }, + "bsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `b`.", + "editType": "none", + "valType": "string" + }, + "carpet": { + "description": "An identifier for this carpet, so that `scattercarpet` and `contourcarpet` traces can specify a carpet plot on which they lie", + "editType": "calc", + "valType": "string" + }, + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "fill": { + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterternary has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "toself", + "tonext" + ] + }, + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "style", + "valType": "color" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "a", + "b", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hoveron": { + "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", + "editType": "style", + "flags": [ + "points", + "fills" + ], + "valType": "flaglist" + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (a,b) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b). To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "backoff": { + "arrayOk": true, + "description": "Sets the line back off from the end point of the nth line segment (in px). This option is useful e.g. to avoid overlap with arrowhead markers. With *auto* the lines would trim before markers if `marker.angleref` is set to *previous*.", + "dflt": "auto", + "editType": "plot", + "min": 0, + "valType": "number" + }, + "backoffsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `backoff`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the line color.", + "editType": "style", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "calc", + "role": "object", + "shape": { + "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", + "dflt": "linear", + "editType": "plot", + "valType": "enumerated", + "values": [ + "linear", + "spline" + ] + }, + "smoothing": { + "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", + "dflt": 1, + "editType": "plot", + "max": 1.3, + "min": 0, + "valType": "number" + }, + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "marker": { + "angle": { + "arrayOk": true, + "description": "Sets the marker angle in respect to `angleref`.", + "dflt": 0, + "editType": "plot", + "valType": "angle" + }, + "angleref": { + "description": "Sets the reference for marker angle. With *previous*, angle 0 points along the line from the previous point to this one. With *up*, angle 0 points toward the top of the screen.", + "dflt": "up", + "editType": "plot", + "valType": "enumerated", + "values": [ + "previous", + "up" + ] + }, + "anglesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `angle`.", + "editType": "none", + "valType": "string" + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "gradient": { + "color": { + "arrayOk": true, + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "type": { + "arrayOk": true, + "description": "Sets the type of gradient used to fill the markers", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ] + }, + "typesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `type`.", + "editType": "none", + "valType": "string" + } + }, + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "maxdisplayed": { + "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "standoff": { + "arrayOk": true, + "description": "Moves the marker away from the data point in the direction of `angle` (in px). This can be useful for example if you have another marker at this location and you want to point an arrowhead marker at it.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "standoffsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `standoff`.", + "editType": "none", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "style", + "valType": "enumerated", + "values": [ + 0, + "0", + "circle", + 100, + "100", + "circle-open", + 200, + "200", + "circle-dot", + 300, + "300", + "circle-open-dot", + 1, + "1", + "square", + 101, + "101", + "square-open", + 201, + "201", + "square-dot", + 301, + "301", + "square-open-dot", + 2, + "2", + "diamond", + 102, + "102", + "diamond-open", + 202, + "202", + "diamond-dot", + 302, + "302", + "diamond-open-dot", + 3, + "3", + "cross", + 103, + "103", + "cross-open", + 203, + "203", + "cross-dot", + 303, + "303", + "cross-open-dot", + 4, + "4", + "x", + 104, + "104", + "x-open", + 204, + "204", + "x-dot", + 304, + "304", + "x-open-dot", + 5, + "5", + "triangle-up", + 105, + "105", + "triangle-up-open", + 205, + "205", + "triangle-up-dot", + 305, + "305", + "triangle-up-open-dot", + 6, + "6", + "triangle-down", + 106, + "106", + "triangle-down-open", + 206, + "206", + "triangle-down-dot", + 306, + "306", + "triangle-down-open-dot", + 7, + "7", + "triangle-left", + 107, + "107", + "triangle-left-open", + 207, + "207", + "triangle-left-dot", + 307, + "307", + "triangle-left-open-dot", + 8, + "8", + "triangle-right", + 108, + "108", + "triangle-right-open", + 208, + "208", + "triangle-right-dot", + 308, + "308", + "triangle-right-open-dot", + 9, + "9", + "triangle-ne", + 109, + "109", + "triangle-ne-open", + 209, + "209", + "triangle-ne-dot", + 309, + "309", + "triangle-ne-open-dot", + 10, + "10", + "triangle-se", + 110, + "110", + "triangle-se-open", + 210, + "210", + "triangle-se-dot", + 310, + "310", + "triangle-se-open-dot", + 11, + "11", + "triangle-sw", + 111, + "111", + "triangle-sw-open", + 211, + "211", + "triangle-sw-dot", + 311, + "311", + "triangle-sw-open-dot", + 12, + "12", + "triangle-nw", + 112, + "112", + "triangle-nw-open", + 212, + "212", + "triangle-nw-dot", + 312, + "312", + "triangle-nw-open-dot", + 13, + "13", + "pentagon", + 113, + "113", + "pentagon-open", + 213, + "213", + "pentagon-dot", + 313, + "313", + "pentagon-open-dot", + 14, + "14", + "hexagon", + 114, + "114", + "hexagon-open", + 214, + "214", + "hexagon-dot", + 314, + "314", + "hexagon-open-dot", + 15, + "15", + "hexagon2", + 115, + "115", + "hexagon2-open", + 215, + "215", + "hexagon2-dot", + 315, + "315", + "hexagon2-open-dot", + 16, + "16", + "octagon", + 116, + "116", + "octagon-open", + 216, + "216", + "octagon-dot", + 316, + "316", + "octagon-open-dot", + 17, + "17", + "star", + 117, + "117", + "star-open", + 217, + "217", + "star-dot", + 317, + "317", + "star-open-dot", + 18, + "18", + "hexagram", + 118, + "118", + "hexagram-open", + 218, + "218", + "hexagram-dot", + 318, + "318", + "hexagram-open-dot", + 19, + "19", + "star-triangle-up", + 119, + "119", + "star-triangle-up-open", + 219, + "219", + "star-triangle-up-dot", + 319, + "319", + "star-triangle-up-open-dot", + 20, + "20", + "star-triangle-down", + 120, + "120", + "star-triangle-down-open", + 220, + "220", + "star-triangle-down-dot", + 320, + "320", + "star-triangle-down-open-dot", + 21, + "21", + "star-square", + 121, + "121", + "star-square-open", + 221, + "221", + "star-square-dot", + 321, + "321", + "star-square-open-dot", + 22, + "22", + "star-diamond", + 122, + "122", + "star-diamond-open", + 222, + "222", + "star-diamond-dot", + 322, + "322", + "star-diamond-open-dot", + 23, + "23", + "diamond-tall", + 123, + "123", + "diamond-tall-open", + 223, + "223", + "diamond-tall-dot", + 323, + "323", + "diamond-tall-open-dot", + 24, + "24", + "diamond-wide", + 124, + "124", + "diamond-wide-open", + 224, + "224", + "diamond-wide-dot", + 324, + "324", + "diamond-wide-open-dot", + 25, + "25", + "hourglass", + 125, + "125", + "hourglass-open", + 26, + "26", + "bowtie", + 126, + "126", + "bowtie-open", + 27, + "27", + "circle-cross", + 127, + "127", + "circle-cross-open", + 28, + "28", + "circle-x", + 128, + "128", + "circle-x-open", + 29, + "29", + "square-cross", + 129, + "129", + "square-cross-open", + 30, + "30", + "square-x", + 130, + "130", + "square-x-open", + 31, + "31", + "diamond-cross", + 131, + "131", + "diamond-cross-open", + 32, + "32", + "diamond-x", + 132, + "132", + "diamond-x-open", + 33, + "33", + "cross-thin", + 133, + "133", + "cross-thin-open", + 34, + "34", + "x-thin", + 134, + "134", + "x-thin-open", + 35, + "35", + "asterisk", + 135, + "135", + "asterisk-open", + 36, + "36", + "hash", + 136, + "136", + "hash-open", + 236, + "236", + "hash-dot", + 336, + "336", + "hash-open-dot", + 37, + "37", + "y-up", + 137, + "137", + "y-up-open", + 38, + "38", + "y-down", + 138, + "138", + "y-down-open", + 39, + "39", + "y-left", + 139, + "139", + "y-left-open", + 40, + "40", + "y-right", + 140, + "140", + "y-right-open", + 41, + "41", + "line-ew", + 141, + "141", + "line-ew-open", + 42, + "42", + "line-ns", + 142, + "142", + "line-ns-open", + 43, + "43", + "line-ne", + 143, + "143", + "line-ne-open", + 44, + "44", + "line-nw", + 144, + "144", + "line-nw-open", + 45, + "45", + "arrow-up", + 145, + "145", + "arrow-up-open", + 46, + "46", + "arrow-down", + 146, + "146", + "arrow-down-open", + 47, + "47", + "arrow-left", + 147, + "147", + "arrow-left-open", + 48, + "48", + "arrow-right", + 148, + "148", + "arrow-right-open", + 49, + "49", + "arrow-bar-up", + 149, + "149", + "arrow-bar-up-open", + 50, + "50", + "arrow-bar-down", + 150, + "150", + "arrow-bar-down-open", + 51, + "51", + "arrow-bar-left", + 151, + "151", + "arrow-bar-left-open", + 52, + "52", + "arrow-bar-right", + 152, + "152", + "arrow-bar-right-open", + 53, + "53", + "arrow", + 153, + "153", + "arrow-open", + 54, + "54", + "arrow-wide", + 154, + "154", + "arrow-wide-open" + ] + }, + "symbolsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", + "editType": "none", + "valType": "string" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "mode": { + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", + "dflt": "markers", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (a,b) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b). If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the text font.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textposition": { + "arrayOk": true, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", + "editType": "none", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `a`, `b` and `text`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "type": "scattercarpet", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" + } }, - "editType": "calc", - "role": "object", - "width": { - "arrayOk": true, - "dflt": 1, - "editType": "calc", - "valType": "number" + "categories": [ + "svg", + "carpet", + "symbols", + "showLegend", + "carpetDependent", + "zoomScale" + ], + "meta": { + "description": "Plots a scatter trace on either the first carpet axis or the carpet axis with a matching `carpet` attribute.", + "hrName": "scatter_carpet" + }, + "type": "scattercarpet" + }, + "scattergeo": { + "animatable": false, + "attributes": { + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "featureidkey": { + "description": "Sets the key in GeoJSON features which is used as id to match the items included in the `locations` array. Only has an effect when `geojson` is set. Support nested property, for example *properties.name*.", + "dflt": "id", + "editType": "calc", + "valType": "string" + }, + "fill": { + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape.", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "toself" + ] + }, + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "calc", + "valType": "color" + }, + "geo": { + "description": "Sets a reference between this trace's geospatial coordinates and a geographic map. If *geo* (the default value), the geospatial coordinates refer to `layout.geo`. If *geo2*, the geospatial coordinates refer to `layout.geo2`, and so on.", + "dflt": "geo", + "editType": "calc", + "valType": "subplotid" + }, + "geojson": { + "description": "Sets optional GeoJSON data associated with this trace. If not given, the features on the base map are used when `locations` is set. It can be set as a valid GeoJSON object or as a URL string. Note that we only accept GeoJSONs of type *FeatureCollection* or *Feature* with geometries of type *Polygon* or *MultiPolygon*.", + "editType": "calc", + "valType": "any" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "lon", + "lat", + "location", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (lon,lat) pair or item in `locations`. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) or `locations` coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "lat": { + "description": "Sets the latitude coordinates (in degrees North).", + "editType": "calc", + "valType": "data_array" + }, + "latsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lat`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "color": { + "description": "Sets the line color.", + "editType": "calc", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "calc", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "calc", + "role": "object", + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "locationmode": { + "description": "The library used by the *country names* `locationmode` option is changing in an upcoming version. Country names in existing plots may not work in the new version. Determines the set of locations used to match entries in `locations` to regions on the map. Values *ISO-3*, *USA-states*, *country names* correspond to features on the base map and value *geojson-id* corresponds to features from a custom GeoJSON linked to the `geojson` attribute.", + "dflt": "ISO-3", + "editType": "calc", + "valType": "enumerated", + "values": [ + "ISO-3", + "USA-states", + "country names", + "geojson-id" + ] + }, + "locations": { + "description": "Sets the coordinates via location IDs or names. Coordinates correspond to the centroid of each location given. See `locationmode` for more info.", + "editType": "calc", + "valType": "data_array" + }, + "locationssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `locations`.", + "editType": "none", + "valType": "string" + }, + "lon": { + "description": "Sets the longitude coordinates (in degrees East).", + "editType": "calc", + "valType": "data_array" + }, + "lonsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lon`.", + "editType": "none", + "valType": "string" + }, + "marker": { + "angle": { + "arrayOk": true, + "description": "Sets the marker angle in respect to `angleref`.", + "dflt": 0, + "editType": "calc", + "valType": "angle" + }, + "angleref": { + "description": "Sets the reference for marker angle. With *previous*, angle 0 points along the line from the previous point to this one. With *up*, angle 0 points toward the top of the screen. With *north*, angle 0 points north based on the current map projection.", + "dflt": "up", + "editType": "calc", + "valType": "enumerated", + "values": [ + "previous", + "up", + "north" + ] + }, + "anglesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `angle`.", + "editType": "none", + "valType": "string" + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "calc", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "calc", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "calc", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "calc", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "calc", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "calc", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "calc", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "gradient": { + "color": { + "arrayOk": true, + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "type": { + "arrayOk": true, + "description": "Sets the type of gradient used to fill the markers", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ] + }, + "typesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `type`.", + "editType": "none", + "valType": "string" + } + }, + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "editType": "calc", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "standoff": { + "arrayOk": true, + "description": "Moves the marker away from the data point in the direction of `angle` (in px). This can be useful for example if you have another marker at this location and you want to point an arrowhead marker at it.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "standoffsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `standoff`.", + "editType": "none", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "calc", + "valType": "enumerated", + "values": [ + 0, + "0", + "circle", + 100, + "100", + "circle-open", + 200, + "200", + "circle-dot", + 300, + "300", + "circle-open-dot", + 1, + "1", + "square", + 101, + "101", + "square-open", + 201, + "201", + "square-dot", + 301, + "301", + "square-open-dot", + 2, + "2", + "diamond", + 102, + "102", + "diamond-open", + 202, + "202", + "diamond-dot", + 302, + "302", + "diamond-open-dot", + 3, + "3", + "cross", + 103, + "103", + "cross-open", + 203, + "203", + "cross-dot", + 303, + "303", + "cross-open-dot", + 4, + "4", + "x", + 104, + "104", + "x-open", + 204, + "204", + "x-dot", + 304, + "304", + "x-open-dot", + 5, + "5", + "triangle-up", + 105, + "105", + "triangle-up-open", + 205, + "205", + "triangle-up-dot", + 305, + "305", + "triangle-up-open-dot", + 6, + "6", + "triangle-down", + 106, + "106", + "triangle-down-open", + 206, + "206", + "triangle-down-dot", + 306, + "306", + "triangle-down-open-dot", + 7, + "7", + "triangle-left", + 107, + "107", + "triangle-left-open", + 207, + "207", + "triangle-left-dot", + 307, + "307", + "triangle-left-open-dot", + 8, + "8", + "triangle-right", + 108, + "108", + "triangle-right-open", + 208, + "208", + "triangle-right-dot", + 308, + "308", + "triangle-right-open-dot", + 9, + "9", + "triangle-ne", + 109, + "109", + "triangle-ne-open", + 209, + "209", + "triangle-ne-dot", + 309, + "309", + "triangle-ne-open-dot", + 10, + "10", + "triangle-se", + 110, + "110", + "triangle-se-open", + 210, + "210", + "triangle-se-dot", + 310, + "310", + "triangle-se-open-dot", + 11, + "11", + "triangle-sw", + 111, + "111", + "triangle-sw-open", + 211, + "211", + "triangle-sw-dot", + 311, + "311", + "triangle-sw-open-dot", + 12, + "12", + "triangle-nw", + 112, + "112", + "triangle-nw-open", + 212, + "212", + "triangle-nw-dot", + 312, + "312", + "triangle-nw-open-dot", + 13, + "13", + "pentagon", + 113, + "113", + "pentagon-open", + 213, + "213", + "pentagon-dot", + 313, + "313", + "pentagon-open-dot", + 14, + "14", + "hexagon", + 114, + "114", + "hexagon-open", + 214, + "214", + "hexagon-dot", + 314, + "314", + "hexagon-open-dot", + 15, + "15", + "hexagon2", + 115, + "115", + "hexagon2-open", + 215, + "215", + "hexagon2-dot", + 315, + "315", + "hexagon2-open-dot", + 16, + "16", + "octagon", + 116, + "116", + "octagon-open", + 216, + "216", + "octagon-dot", + 316, + "316", + "octagon-open-dot", + 17, + "17", + "star", + 117, + "117", + "star-open", + 217, + "217", + "star-dot", + 317, + "317", + "star-open-dot", + 18, + "18", + "hexagram", + 118, + "118", + "hexagram-open", + 218, + "218", + "hexagram-dot", + 318, + "318", + "hexagram-open-dot", + 19, + "19", + "star-triangle-up", + 119, + "119", + "star-triangle-up-open", + 219, + "219", + "star-triangle-up-dot", + 319, + "319", + "star-triangle-up-open-dot", + 20, + "20", + "star-triangle-down", + 120, + "120", + "star-triangle-down-open", + 220, + "220", + "star-triangle-down-dot", + 320, + "320", + "star-triangle-down-open-dot", + 21, + "21", + "star-square", + 121, + "121", + "star-square-open", + 221, + "221", + "star-square-dot", + 321, + "321", + "star-square-open-dot", + 22, + "22", + "star-diamond", + 122, + "122", + "star-diamond-open", + 222, + "222", + "star-diamond-dot", + 322, + "322", + "star-diamond-open-dot", + 23, + "23", + "diamond-tall", + 123, + "123", + "diamond-tall-open", + 223, + "223", + "diamond-tall-dot", + 323, + "323", + "diamond-tall-open-dot", + 24, + "24", + "diamond-wide", + 124, + "124", + "diamond-wide-open", + 224, + "224", + "diamond-wide-dot", + 324, + "324", + "diamond-wide-open-dot", + 25, + "25", + "hourglass", + 125, + "125", + "hourglass-open", + 26, + "26", + "bowtie", + 126, + "126", + "bowtie-open", + 27, + "27", + "circle-cross", + 127, + "127", + "circle-cross-open", + 28, + "28", + "circle-x", + 128, + "128", + "circle-x-open", + 29, + "29", + "square-cross", + 129, + "129", + "square-cross-open", + 30, + "30", + "square-x", + 130, + "130", + "square-x-open", + 31, + "31", + "diamond-cross", + 131, + "131", + "diamond-cross-open", + 32, + "32", + "diamond-x", + 132, + "132", + "diamond-x-open", + 33, + "33", + "cross-thin", + 133, + "133", + "cross-thin-open", + 34, + "34", + "x-thin", + 134, + "134", + "x-thin-open", + 35, + "35", + "asterisk", + 135, + "135", + "asterisk-open", + 36, + "36", + "hash", + 136, + "136", + "hash-open", + 236, + "236", + "hash-dot", + 336, + "336", + "hash-open-dot", + 37, + "37", + "y-up", + 137, + "137", + "y-up-open", + 38, + "38", + "y-down", + 138, + "138", + "y-down-open", + 39, + "39", + "y-left", + 139, + "139", + "y-left-open", + 40, + "40", + "y-right", + 140, + "140", + "y-right-open", + 41, + "41", + "line-ew", + 141, + "141", + "line-ew-open", + 42, + "42", + "line-ns", + 142, + "142", + "line-ns-open", + 43, + "43", + "line-ne", + 143, + "143", + "line-ne-open", + 44, + "44", + "line-nw", + 144, + "144", + "line-nw-open", + 45, + "45", + "arrow-up", + 145, + "145", + "arrow-up-open", + 46, + "46", + "arrow-down", + 146, + "146", + "arrow-down-open", + 47, + "47", + "arrow-left", + 147, + "147", + "arrow-left-open", + 48, + "48", + "arrow-right", + 148, + "148", + "arrow-right-open", + 49, + "49", + "arrow-bar-up", + 149, + "149", + "arrow-bar-up-open", + 50, + "50", + "arrow-bar-down", + 150, + "150", + "arrow-bar-down-open", + 51, + "51", + "arrow-bar-left", + 151, + "151", + "arrow-bar-left-open", + 52, + "52", + "arrow-bar-right", + 152, + "152", + "arrow-bar-right-open", + 53, + "53", + "arrow", + 153, + "153", + "arrow-open", + 54, + "54", + "arrow-wide", + 154, + "154", + "arrow-wide-open" + ] + }, + "symbolsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", + "editType": "none", + "valType": "string" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "mode": { + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", + "dflt": "markers", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "selected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (lon,lat) pair or item in `locations`. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) or `locations` coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the text font.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textposition": { + "arrayOk": true, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", + "editType": "none", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `lat`, `lon`, `location` and `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "type": "scattergeo", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object" + } + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "prefix": { - "arrayOk": true, - "description": "Prefix for cell values.", - "dflt": null, - "editType": "calc", - "valType": "string" - }, - "prefixsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `prefix`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "suffix": { - "arrayOk": true, - "description": "Suffix for cell values.", - "dflt": null, - "editType": "calc", - "valType": "string" - }, - "suffixsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `suffix`.", - "editType": "none", - "valType": "string" - }, - "values": { - "description": "Cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "valuessrc": { - "description": "Sets the source reference on Chart Studio Cloud for `values`.", - "editType": "none", - "valType": "string" - } - }, - "columnorder": { - "description": "Specifies the rendered order of the data columns; for example, a value `2` at position `0` means that column index `0` in the data will be rendered as the third column, as columns have an index base of zero.", - "editType": "calc", - "valType": "data_array" - }, - "columnordersrc": { - "description": "Sets the source reference on Chart Studio Cloud for `columnorder`.", - "editType": "none", - "valType": "string" - }, - "columnwidth": { - "arrayOk": true, - "description": "The width of columns expressed as a ratio. Columns fill the available width in proportion of their specified column widths.", - "dflt": null, - "editType": "calc", - "valType": "number" - }, - "columnwidthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `columnwidth`.", - "editType": "none", - "valType": "string" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this table trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "editType": "calc", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this table trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this table trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this table trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } + "categories": [ + "geo", + "symbols", + "showLegend", + "scatter-like" ], - "valType": "info_array" - } - }, - "editType": "calc", - "header": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", - "dflt": "center", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "fill": { - "color": { - "arrayOk": true, - "description": "Sets the cell fill color. It accepts either a specific color or an array of colors or a 2D array of colors.", - "dflt": "white", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object" - }, - "font": { - "color": { - "arrayOk": true, - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "format": { - "description": "Sets the cell value formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "formatsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `format`.", - "editType": "none", - "valType": "string" - }, - "height": { - "description": "The height of cells.", - "dflt": 28, - "editType": "calc", - "valType": "number" - }, - "line": { - "color": { - "arrayOk": true, - "dflt": "grey", - "editType": "calc", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "width": { - "arrayOk": true, - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "prefix": { - "arrayOk": true, - "description": "Prefix for cell values.", - "dflt": null, - "editType": "calc", - "valType": "string" - }, - "prefixsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `prefix`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "suffix": { - "arrayOk": true, - "description": "Suffix for cell values.", - "dflt": null, - "editType": "calc", - "valType": "string" - }, - "suffixsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `suffix`.", - "editType": "none", - "valType": "string" - }, - "values": { - "description": "Header cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "valuessrc": { - "description": "Sets the source reference on Chart Studio Cloud for `values`.", - "editType": "none", - "valType": "string" - } - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" + "meta": { + "description": "The data visualized as scatter point or lines on a geographic map is provided either by longitude/latitude pairs in `lon` and `lat` respectively or by geographic location IDs or names in `locations`.", + "hrName": "scatter_geo" + }, + "type": "scattergeo" + }, + "scattergl": { + "animatable": false, + "attributes": { + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "dx": { + "description": "Sets the x coordinate step. See `x0` for more info.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "dy": { + "description": "Sets the y coordinate step. See `y0` for more info.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "error_x": { + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", + "editType": "none", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `array`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the stroke color of the error bars.", + "editType": "calc", + "valType": "color" + }, + "copy_ystyle": { + "editType": "calc", + "valType": "boolean" + }, + "editType": "calc", + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "error_y": { + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on Chart Studio Cloud for `arrayminus`.", + "editType": "none", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `array`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the stroke color of the error bars.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant*, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the square of the underlying data. If *data*, the bar lengths are set with data set `array`.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "fill": { + "description": "Sets the area to fill with a solid color. Defaults to *none* unless this trace is stacked, then it gets *tonexty* (*tonextx*) if `orientation` is *v* (*h*) Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order.", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "tozeroy", + "tozerox", + "tonexty", + "tonextx", + "toself", + "tonext" + ] + }, + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "calc", + "valType": "color" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "color": { + "description": "Sets the line color.", + "editType": "calc", + "valType": "color" + }, + "dash": { + "description": "Sets the style of the lines.", + "dflt": "solid", + "editType": "calc", + "valType": "enumerated", + "values": [ + "dash", + "dashdot", + "dot", + "longdash", + "longdashdot", + "solid" + ] + }, + "editType": "calc", + "role": "object", + "shape": { + "description": "Determines the line shape. The values correspond to step-wise line shapes.", + "dflt": "linear", + "editType": "calc", + "valType": "enumerated", + "values": [ + "linear", + "hv", + "vh", + "hvh", + "vhv" + ] + }, + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "marker": { + "angle": { + "arrayOk": true, + "description": "Sets the marker angle in respect to `angleref`.", + "dflt": 0, + "editType": "calc", + "valType": "angle" + }, + "anglesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `angle`.", + "editType": "none", + "valType": "string" + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "calc", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "calc", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "calc", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "calc", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "calc", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "calc", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "calc", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "editType": "calc", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "calc", + "valType": "enumerated", + "values": [ + 0, + "0", + "circle", + 100, + "100", + "circle-open", + 200, + "200", + "circle-dot", + 300, + "300", + "circle-open-dot", + 1, + "1", + "square", + 101, + "101", + "square-open", + 201, + "201", + "square-dot", + 301, + "301", + "square-open-dot", + 2, + "2", + "diamond", + 102, + "102", + "diamond-open", + 202, + "202", + "diamond-dot", + 302, + "302", + "diamond-open-dot", + 3, + "3", + "cross", + 103, + "103", + "cross-open", + 203, + "203", + "cross-dot", + 303, + "303", + "cross-open-dot", + 4, + "4", + "x", + 104, + "104", + "x-open", + 204, + "204", + "x-dot", + 304, + "304", + "x-open-dot", + 5, + "5", + "triangle-up", + 105, + "105", + "triangle-up-open", + 205, + "205", + "triangle-up-dot", + 305, + "305", + "triangle-up-open-dot", + 6, + "6", + "triangle-down", + 106, + "106", + "triangle-down-open", + 206, + "206", + "triangle-down-dot", + 306, + "306", + "triangle-down-open-dot", + 7, + "7", + "triangle-left", + 107, + "107", + "triangle-left-open", + 207, + "207", + "triangle-left-dot", + 307, + "307", + "triangle-left-open-dot", + 8, + "8", + "triangle-right", + 108, + "108", + "triangle-right-open", + 208, + "208", + "triangle-right-dot", + 308, + "308", + "triangle-right-open-dot", + 9, + "9", + "triangle-ne", + 109, + "109", + "triangle-ne-open", + 209, + "209", + "triangle-ne-dot", + 309, + "309", + "triangle-ne-open-dot", + 10, + "10", + "triangle-se", + 110, + "110", + "triangle-se-open", + 210, + "210", + "triangle-se-dot", + 310, + "310", + "triangle-se-open-dot", + 11, + "11", + "triangle-sw", + 111, + "111", + "triangle-sw-open", + 211, + "211", + "triangle-sw-dot", + 311, + "311", + "triangle-sw-open-dot", + 12, + "12", + "triangle-nw", + 112, + "112", + "triangle-nw-open", + 212, + "212", + "triangle-nw-dot", + 312, + "312", + "triangle-nw-open-dot", + 13, + "13", + "pentagon", + 113, + "113", + "pentagon-open", + 213, + "213", + "pentagon-dot", + 313, + "313", + "pentagon-open-dot", + 14, + "14", + "hexagon", + 114, + "114", + "hexagon-open", + 214, + "214", + "hexagon-dot", + 314, + "314", + "hexagon-open-dot", + 15, + "15", + "hexagon2", + 115, + "115", + "hexagon2-open", + 215, + "215", + "hexagon2-dot", + 315, + "315", + "hexagon2-open-dot", + 16, + "16", + "octagon", + 116, + "116", + "octagon-open", + 216, + "216", + "octagon-dot", + 316, + "316", + "octagon-open-dot", + 17, + "17", + "star", + 117, + "117", + "star-open", + 217, + "217", + "star-dot", + 317, + "317", + "star-open-dot", + 18, + "18", + "hexagram", + 118, + "118", + "hexagram-open", + 218, + "218", + "hexagram-dot", + 318, + "318", + "hexagram-open-dot", + 19, + "19", + "star-triangle-up", + 119, + "119", + "star-triangle-up-open", + 219, + "219", + "star-triangle-up-dot", + 319, + "319", + "star-triangle-up-open-dot", + 20, + "20", + "star-triangle-down", + 120, + "120", + "star-triangle-down-open", + 220, + "220", + "star-triangle-down-dot", + 320, + "320", + "star-triangle-down-open-dot", + 21, + "21", + "star-square", + 121, + "121", + "star-square-open", + 221, + "221", + "star-square-dot", + 321, + "321", + "star-square-open-dot", + 22, + "22", + "star-diamond", + 122, + "122", + "star-diamond-open", + 222, + "222", + "star-diamond-dot", + 322, + "322", + "star-diamond-open-dot", + 23, + "23", + "diamond-tall", + 123, + "123", + "diamond-tall-open", + 223, + "223", + "diamond-tall-dot", + 323, + "323", + "diamond-tall-open-dot", + 24, + "24", + "diamond-wide", + 124, + "124", + "diamond-wide-open", + 224, + "224", + "diamond-wide-dot", + 324, + "324", + "diamond-wide-open-dot", + 25, + "25", + "hourglass", + 125, + "125", + "hourglass-open", + 26, + "26", + "bowtie", + 126, + "126", + "bowtie-open", + 27, + "27", + "circle-cross", + 127, + "127", + "circle-cross-open", + 28, + "28", + "circle-x", + 128, + "128", + "circle-x-open", + 29, + "29", + "square-cross", + 129, + "129", + "square-cross-open", + 30, + "30", + "square-x", + 130, + "130", + "square-x-open", + 31, + "31", + "diamond-cross", + 131, + "131", + "diamond-cross-open", + 32, + "32", + "diamond-x", + 132, + "132", + "diamond-x-open", + 33, + "33", + "cross-thin", + 133, + "133", + "cross-thin-open", + 34, + "34", + "x-thin", + 134, + "134", + "x-thin-open", + 35, + "35", + "asterisk", + 135, + "135", + "asterisk-open", + 36, + "36", + "hash", + 136, + "136", + "hash-open", + 236, + "236", + "hash-dot", + 336, + "336", + "hash-open-dot", + 37, + "37", + "y-up", + 137, + "137", + "y-up-open", + 38, + "38", + "y-down", + 138, + "138", + "y-down-open", + 39, + "39", + "y-left", + 139, + "139", + "y-left-open", + 40, + "40", + "y-right", + 140, + "140", + "y-right-open", + 41, + "41", + "line-ew", + 141, + "141", + "line-ew-open", + 42, + "42", + "line-ns", + 142, + "142", + "line-ns-open", + 43, + "43", + "line-ne", + 143, + "143", + "line-ne-open", + 44, + "44", + "line-nw", + 144, + "144", + "line-nw-open", + 45, + "45", + "arrow-up", + 145, + "145", + "arrow-up-open", + 46, + "46", + "arrow-down", + 146, + "146", + "arrow-down-open", + 47, + "47", + "arrow-left", + 147, + "147", + "arrow-left-open", + 48, + "48", + "arrow-right", + 148, + "148", + "arrow-right-open", + 49, + "49", + "arrow-bar-up", + 149, + "149", + "arrow-bar-up-open", + 50, + "50", + "arrow-bar-down", + 150, + "150", + "arrow-bar-down-open", + 51, + "51", + "arrow-bar-left", + 151, + "151", + "arrow-bar-left-open", + 52, + "52", + "arrow-bar-right", + 152, + "152", + "arrow-bar-right-open", + 53, + "53", + "arrow", + 153, + "153", + "arrow-open", + 54, + "54", + "arrow-wide", + 154, + "154", + "arrow-wide-open" + ] + }, + "symbolsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", + "editType": "none", + "valType": "string" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "mode": { + "description": "Determines the drawing mode for this scatter trace.", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "selected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the text font.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "bold" + ] + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textposition": { + "arrayOk": true, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", + "editType": "none", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. ", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "type": "scattergl", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object" + } + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "x0": { + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "xperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "valType": "any" + }, + "xperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" + }, + "xperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "y0": { + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "yperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "valType": "any" + }, + "yperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" + }, + "yperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + } }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" + "categories": [ + "gl", + "regl", + "cartesian", + "symbols", + "errorBarsOK", + "showLegend", + "scatter-like" + ], + "meta": { + "description": "The data visualized as scatter point or lines is set in `x` and `y` using the WebGL plotting engine. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to a numerical arrays.", + "hrName": "scatter_gl" }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" + "type": "scattergl" }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "scattermap": { + "animatable": false, + "attributes": { + "below": { + "description": "Determines if this scattermap trace's layers are to be inserted before the layer with the specified ID. By default, scattermap layers are inserted above all the base layers. To place the scattermap layers above every other layer, set `below` to *''*.", + "editType": "calc", + "valType": "string" + }, + "cluster": { + "color": { + "arrayOk": true, + "description": "Sets the color for each cluster step.", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether clustering is enabled or disabled.", + "editType": "calc", + "valType": "boolean" + }, + "maxzoom": { + "description": "Sets the maximum zoom level. At zoom levels equal to or greater than this, points will never be clustered.", + "dflt": 24, + "editType": "calc", + "max": 24, + "min": 0, + "valType": "number" + }, + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "size": { + "arrayOk": true, + "description": "Sets the size for each cluster step.", + "dflt": 20, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "step": { + "arrayOk": true, + "description": "Sets how many points it takes to create a cluster or advance to the next cluster step. Use this in conjunction with arrays for `size` and / or `color`. If an integer, steps start at multiples of this number. If an array, each step extends from the given value until one less than the next value.", + "dflt": -1, + "editType": "calc", + "min": -1, + "valType": "number" + }, + "stepsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `step`.", + "editType": "none", + "valType": "string" + } + }, + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "fill": { + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape.", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "toself" + ] + }, + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "calc", + "valType": "color" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "lon", + "lat", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "lat": { + "description": "Sets the latitude coordinates (in degrees North).", + "editType": "calc", + "valType": "data_array" + }, + "latsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lat`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "color": { + "description": "Sets the line color.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object", + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "lon": { + "description": "Sets the longitude coordinates (in degrees East).", + "editType": "calc", + "valType": "data_array" + }, + "lonsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lon`.", + "editType": "none", + "valType": "string" + }, + "marker": { + "allowoverlap": { + "description": "Flag to draw all symbols, even if they overlap.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "angle": { + "arrayOk": true, + "description": "Sets the marker orientation from true North, in degrees clockwise. When using the *auto* default, no rotation would be applied in perspective views which is different from using a zero angle.", + "dflt": "auto", + "editType": "calc", + "valType": "number" + }, + "anglesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `angle`.", + "editType": "none", + "valType": "string" + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "calc", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "calc", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "calc", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "calc", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "calc", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "calc", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "calc", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol. Full list: https://www.mapbox.com/maki-icons/ Note that the array `marker.color` and `marker.size` are only available for *circle* symbols.", + "dflt": "circle", + "editType": "calc", + "valType": "string" + }, + "symbolsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", + "editType": "none", + "valType": "string" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "mode": { + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover.", + "dflt": "markers", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "selected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "subplot": { + "description": "Sets a reference between this trace's data coordinates and a map subplot. If *map* (the default value), the data refer to `layout.map`. If *map2*, the data refer to `layout.map2`, and so on.", + "dflt": "map", + "editType": "calc", + "valType": "subplotid" + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "dflt": "Open Sans Regular, Arial Unicode MS Regular", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "textposition": { + "arrayOk": false, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `lat`, `lon` and `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "type": "scattermap", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "type": "table", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [ - "noOpacity" - ], - "meta": { - "description": "Table view for detailed data viewing. The data are arranged in a grid of rows and columns. Most styling can be specified for columns, rows or individual cells. Table is using a column-major order, ie. the grid is represented as a vector of column vectors." - }, - "type": "table" - }, - "treemap": { - "animatable": true, - "attributes": { - "branchvalues": { - "description": "Determines how the items in `values` are summed. When set to *total*, items in `values` are taken to be value of all its descendants. When set to *remainder*, items in `values` corresponding to the root and the branches sectors are taken to be the extra part not part of the sum of the values at their leaves.", - "dflt": "remainder", - "editType": "calc", - "valType": "enumerated", - "values": [ - "remainder", - "total" - ] - }, - "count": { - "description": "Determines default for `values` when it is not provided, by inferring a 1 for each of the *leaves* and/or *branches*, otherwise 0.", - "dflt": "leaves", - "editType": "calc", - "flags": [ - "branches", - "leaves" - ], - "valType": "flaglist" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "domain": { - "column": { - "description": "If there is a layout grid, use the domain for this column in the grid for this treemap trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "editType": "calc", - "role": "object", - "row": { - "description": "If there is a layout grid, use the domain for this row in the grid for this treemap trace .", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "x": { - "description": "Sets the horizontal domain of this treemap trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this treemap trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } + "categories": [ + "map", + "gl", + "symbols", + "showLegend", + "scatter-like" ], - "valType": "info_array" - } - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "label+text+value+name", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "label", - "text", - "value", - "name", - "current path", - "percent root", - "percent entry", - "percent parent" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "meta": { + "description": "The data visualized as scatter point, lines or marker symbols on a MapLibre GL geographic map is provided by longitude/latitude pairs in `lon` and `lat`.", + "hrName": "scatter_map" }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" + "type": "scattermap" + }, + "scattermapbox": { + "animatable": false, + "attributes": { + "below": { + "description": "Determines if this scattermapbox trace's layers are to be inserted before the layer with the specified ID. By default, scattermapbox layers are inserted above all the base layers. To place the scattermapbox layers above every other layer, set `below` to *''*.", + "editType": "calc", + "valType": "string" + }, + "cluster": { + "color": { + "arrayOk": true, + "description": "Sets the color for each cluster step.", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether clustering is enabled or disabled.", + "editType": "calc", + "valType": "boolean" + }, + "maxzoom": { + "description": "Sets the maximum zoom level. At zoom levels equal to or greater than this, points will never be clustered.", + "dflt": 24, + "editType": "calc", + "max": 24, + "min": 0, + "valType": "number" + }, + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "size": { + "arrayOk": true, + "description": "Sets the size for each cluster step.", + "dflt": 20, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "step": { + "arrayOk": true, + "description": "Sets how many points it takes to create a cluster or advance to the next cluster step. Use this in conjunction with arrays for `size` and / or `color`. If an integer, steps start at multiples of this number. If an array, each step extends from the given value until one less than the next value.", + "dflt": -1, + "editType": "calc", + "min": -1, + "valType": "number" + }, + "stepsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `step`.", + "editType": "none", + "valType": "string" + } + }, + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "fill": { + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape.", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "toself" + ] + }, + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "calc", + "valType": "color" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "lon", + "lat", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "lat": { + "description": "Sets the latitude coordinates (in degrees North).", + "editType": "calc", + "valType": "data_array" + }, + "latsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lat`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "color": { + "description": "Sets the line color.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object", + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "lon": { + "description": "Sets the longitude coordinates (in degrees East).", + "editType": "calc", + "valType": "data_array" + }, + "lonsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lon`.", + "editType": "none", + "valType": "string" + }, + "marker": { + "allowoverlap": { + "description": "Flag to draw all symbols, even if they overlap.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "angle": { + "arrayOk": true, + "description": "Sets the marker orientation from true North, in degrees clockwise. When using the *auto* default, no rotation would be applied in perspective views which is different from using a zero angle.", + "dflt": "auto", + "editType": "calc", + "valType": "number" + }, + "anglesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `angle`.", + "editType": "none", + "valType": "string" + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "calc", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "calc", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "calc", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "calc", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "calc", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "calc", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "calc", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol. Full list: https://www.mapbox.com/maki-icons/ Note that the array `marker.color` and `marker.size` are only available for *circle* symbols.", + "dflt": "circle", + "editType": "calc", + "valType": "string" + }, + "symbolsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", + "editType": "none", + "valType": "string" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "mode": { + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover.", + "dflt": "markers", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "selected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "subplot": { + "description": "mapbox subplots and traces are deprecated! Please consider switching to `map` subplots and traces. Learn more at: https://plotly.com/python/maplibre-migration/ as well as https://plotly.com/javascript/maplibre-migration/ Sets a reference between this trace's data coordinates and a mapbox subplot. If *mapbox* (the default value), the data refer to `layout.mapbox`. If *mapbox2*, the data refer to `layout.mapbox2`, and so on.", + "dflt": "mapbox", + "editType": "calc", + "valType": "subplotid" + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "dflt": "Open Sans Regular, Arial Unicode MS Regular", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "textposition": { + "arrayOk": false, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `lat`, `lon` and `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "type": "scattermapbox", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "categories": [ + "mapbox", + "gl", + "symbols", + "showLegend", + "scatter-like" + ], + "meta": { + "description": "*scattermapbox* trace is deprecated! Please consider switching to the *scattermap* trace type and `map` subplots. Learn more at: https://plotly.com/python/maplibre-migration/ as well as https://plotly.com/javascript/maplibre-migration/ The data visualized as scatter point, lines or marker symbols on a Mapbox GL geographic map is provided by longitude/latitude pairs in `lon` and `lat`.", + "hrName": "scatter_mapbox" + }, + "type": "scattermapbox" + }, + "scatterpolar": { + "animatable": false, + "attributes": { + "cliponaxis": { + "description": "Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "dr": { + "description": "Sets the r coordinate step.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "dtheta": { + "description": "Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates.", + "editType": "calc", + "valType": "number" + }, + "fill": { + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterpolar has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "toself", + "tonext" + ] + }, + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "style", + "valType": "color" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "r", + "theta", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hoveron": { + "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", + "editType": "style", + "flags": [ + "points", + "fills" + ], + "valType": "flaglist" + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "backoff": { + "arrayOk": true, + "description": "Sets the line back off from the end point of the nth line segment (in px). This option is useful e.g. to avoid overlap with arrowhead markers. With *auto* the lines would trim before markers if `marker.angleref` is set to *previous*.", + "dflt": "auto", + "editType": "plot", + "min": 0, + "valType": "number" + }, + "backoffsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `backoff`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the line color.", + "editType": "style", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "calc", + "role": "object", + "shape": { + "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", + "dflt": "linear", + "editType": "plot", + "valType": "enumerated", + "values": [ + "linear", + "spline" + ] + }, + "smoothing": { + "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", + "dflt": 1, + "editType": "plot", + "max": 1.3, + "min": 0, + "valType": "number" + }, + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "marker": { + "angle": { + "arrayOk": true, + "description": "Sets the marker angle in respect to `angleref`.", + "dflt": 0, + "editType": "plot", + "valType": "angle" + }, + "angleref": { + "description": "Sets the reference for marker angle. With *previous*, angle 0 points along the line from the previous point to this one. With *up*, angle 0 points toward the top of the screen.", + "dflt": "up", + "editType": "plot", + "valType": "enumerated", + "values": [ + "previous", + "up" + ] + }, + "anglesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `angle`.", + "editType": "none", + "valType": "string" + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "gradient": { + "color": { + "arrayOk": true, + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "type": { + "arrayOk": true, + "description": "Sets the type of gradient used to fill the markers", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ] + }, + "typesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `type`.", + "editType": "none", + "valType": "string" + } + }, + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "maxdisplayed": { + "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "standoff": { + "arrayOk": true, + "description": "Moves the marker away from the data point in the direction of `angle` (in px). This can be useful for example if you have another marker at this location and you want to point an arrowhead marker at it.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "standoffsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `standoff`.", + "editType": "none", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "style", + "valType": "enumerated", + "values": [ + 0, + "0", + "circle", + 100, + "100", + "circle-open", + 200, + "200", + "circle-dot", + 300, + "300", + "circle-open-dot", + 1, + "1", + "square", + 101, + "101", + "square-open", + 201, + "201", + "square-dot", + 301, + "301", + "square-open-dot", + 2, + "2", + "diamond", + 102, + "102", + "diamond-open", + 202, + "202", + "diamond-dot", + 302, + "302", + "diamond-open-dot", + 3, + "3", + "cross", + 103, + "103", + "cross-open", + 203, + "203", + "cross-dot", + 303, + "303", + "cross-open-dot", + 4, + "4", + "x", + 104, + "104", + "x-open", + 204, + "204", + "x-dot", + 304, + "304", + "x-open-dot", + 5, + "5", + "triangle-up", + 105, + "105", + "triangle-up-open", + 205, + "205", + "triangle-up-dot", + 305, + "305", + "triangle-up-open-dot", + 6, + "6", + "triangle-down", + 106, + "106", + "triangle-down-open", + 206, + "206", + "triangle-down-dot", + 306, + "306", + "triangle-down-open-dot", + 7, + "7", + "triangle-left", + 107, + "107", + "triangle-left-open", + 207, + "207", + "triangle-left-dot", + 307, + "307", + "triangle-left-open-dot", + 8, + "8", + "triangle-right", + 108, + "108", + "triangle-right-open", + 208, + "208", + "triangle-right-dot", + 308, + "308", + "triangle-right-open-dot", + 9, + "9", + "triangle-ne", + 109, + "109", + "triangle-ne-open", + 209, + "209", + "triangle-ne-dot", + 309, + "309", + "triangle-ne-open-dot", + 10, + "10", + "triangle-se", + 110, + "110", + "triangle-se-open", + 210, + "210", + "triangle-se-dot", + 310, + "310", + "triangle-se-open-dot", + 11, + "11", + "triangle-sw", + 111, + "111", + "triangle-sw-open", + 211, + "211", + "triangle-sw-dot", + 311, + "311", + "triangle-sw-open-dot", + 12, + "12", + "triangle-nw", + 112, + "112", + "triangle-nw-open", + 212, + "212", + "triangle-nw-dot", + 312, + "312", + "triangle-nw-open-dot", + 13, + "13", + "pentagon", + 113, + "113", + "pentagon-open", + 213, + "213", + "pentagon-dot", + 313, + "313", + "pentagon-open-dot", + 14, + "14", + "hexagon", + 114, + "114", + "hexagon-open", + 214, + "214", + "hexagon-dot", + 314, + "314", + "hexagon-open-dot", + 15, + "15", + "hexagon2", + 115, + "115", + "hexagon2-open", + 215, + "215", + "hexagon2-dot", + 315, + "315", + "hexagon2-open-dot", + 16, + "16", + "octagon", + 116, + "116", + "octagon-open", + 216, + "216", + "octagon-dot", + 316, + "316", + "octagon-open-dot", + 17, + "17", + "star", + 117, + "117", + "star-open", + 217, + "217", + "star-dot", + 317, + "317", + "star-open-dot", + 18, + "18", + "hexagram", + 118, + "118", + "hexagram-open", + 218, + "218", + "hexagram-dot", + 318, + "318", + "hexagram-open-dot", + 19, + "19", + "star-triangle-up", + 119, + "119", + "star-triangle-up-open", + 219, + "219", + "star-triangle-up-dot", + 319, + "319", + "star-triangle-up-open-dot", + 20, + "20", + "star-triangle-down", + 120, + "120", + "star-triangle-down-open", + 220, + "220", + "star-triangle-down-dot", + 320, + "320", + "star-triangle-down-open-dot", + 21, + "21", + "star-square", + 121, + "121", + "star-square-open", + 221, + "221", + "star-square-dot", + 321, + "321", + "star-square-open-dot", + 22, + "22", + "star-diamond", + 122, + "122", + "star-diamond-open", + 222, + "222", + "star-diamond-dot", + 322, + "322", + "star-diamond-open-dot", + 23, + "23", + "diamond-tall", + 123, + "123", + "diamond-tall-open", + 223, + "223", + "diamond-tall-dot", + 323, + "323", + "diamond-tall-open-dot", + 24, + "24", + "diamond-wide", + 124, + "124", + "diamond-wide-open", + 224, + "224", + "diamond-wide-dot", + 324, + "324", + "diamond-wide-open-dot", + 25, + "25", + "hourglass", + 125, + "125", + "hourglass-open", + 26, + "26", + "bowtie", + 126, + "126", + "bowtie-open", + 27, + "27", + "circle-cross", + 127, + "127", + "circle-cross-open", + 28, + "28", + "circle-x", + 128, + "128", + "circle-x-open", + 29, + "29", + "square-cross", + 129, + "129", + "square-cross-open", + 30, + "30", + "square-x", + 130, + "130", + "square-x-open", + 31, + "31", + "diamond-cross", + 131, + "131", + "diamond-cross-open", + 32, + "32", + "diamond-x", + 132, + "132", + "diamond-x-open", + 33, + "33", + "cross-thin", + 133, + "133", + "cross-thin-open", + 34, + "34", + "x-thin", + 134, + "134", + "x-thin-open", + 35, + "35", + "asterisk", + 135, + "135", + "asterisk-open", + 36, + "36", + "hash", + 136, + "136", + "hash-open", + 236, + "236", + "hash-dot", + 336, + "336", + "hash-open-dot", + 37, + "37", + "y-up", + 137, + "137", + "y-up-open", + 38, + "38", + "y-down", + 138, + "138", + "y-down-open", + 39, + "39", + "y-left", + 139, + "139", + "y-left-open", + 40, + "40", + "y-right", + 140, + "140", + "y-right-open", + 41, + "41", + "line-ew", + 141, + "141", + "line-ew-open", + 42, + "42", + "line-ns", + 142, + "142", + "line-ns-open", + 43, + "43", + "line-ne", + 143, + "143", + "line-ne-open", + 44, + "44", + "line-nw", + 144, + "144", + "line-nw-open", + 45, + "45", + "arrow-up", + 145, + "145", + "arrow-up-open", + 46, + "46", + "arrow-down", + 146, + "146", + "arrow-down-open", + 47, + "47", + "arrow-left", + 147, + "147", + "arrow-left-open", + 48, + "48", + "arrow-right", + 148, + "148", + "arrow-right-open", + 49, + "49", + "arrow-bar-up", + 149, + "149", + "arrow-bar-up-open", + 50, + "50", + "arrow-bar-down", + 150, + "150", + "arrow-bar-down-open", + 51, + "51", + "arrow-bar-left", + 151, + "151", + "arrow-bar-left-open", + 52, + "52", + "arrow-bar-right", + 152, + "152", + "arrow-bar-right-open", + 53, + "53", + "arrow", + 153, + "153", + "arrow-open", + 54, + "54", + "arrow-wide", + 154, + "154", + "arrow-wide-open" + ] + }, + "symbolsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", + "editType": "none", + "valType": "string" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "mode": { + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "r": { + "description": "Sets the radial coordinates", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "r0": { + "description": "Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "rsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `r`.", + "editType": "none", + "valType": "string" + }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "subplot": { + "description": "Sets a reference between this trace's data coordinates and a polar subplot. If *polar* (the default value), the data refer to `layout.polar`. If *polar2*, the data refer to `layout.polar2`, and so on.", + "dflt": "polar", + "editType": "calc", + "valType": "subplotid" + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the text font.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textposition": { + "arrayOk": true, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", + "editType": "none", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `r`, `theta` and `text`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "theta": { + "description": "Sets the angular coordinates", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "theta0": { + "description": "Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "thetasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `theta`.", + "editType": "none", + "valType": "string" + }, + "thetaunit": { + "description": "Sets the unit of input *theta* values. Has an effect only when on *linear* angular axes.", + "dflt": "degrees", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "radians", + "degrees", + "gradians" + ] + }, + "type": "scatterpolar", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" + "categories": [ + "polar", + "symbols", + "showLegend", + "scatter-like" + ], + "meta": { + "description": "The scatterpolar trace type encompasses line charts, scatter charts, text charts, and bubble charts in polar coordinates. The data visualized as scatter point or lines is set in `r` (radial) and `theta` (angular) coordinates Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays.", + "hrName": "scatter_polar" + }, + "type": "scatterpolar" + }, + "scatterpolargl": { + "animatable": false, + "attributes": { + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "dr": { + "description": "Sets the r coordinate step.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "dtheta": { + "description": "Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates.", + "editType": "calc", + "valType": "number" + }, + "fill": { + "description": "Sets the area to fill with a solid color. Defaults to *none* unless this trace is stacked, then it gets *tonexty* (*tonextx*) if `orientation` is *v* (*h*) Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order.", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "tozeroy", + "tozerox", + "tonexty", + "tonextx", + "toself", + "tonext" + ] + }, + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "calc", + "valType": "color" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "r", + "theta", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "color": { + "description": "Sets the line color.", + "editType": "calc", + "valType": "color" + }, + "dash": { + "description": "Sets the style of the lines.", + "dflt": "solid", + "editType": "calc", + "valType": "enumerated", + "values": [ + "dash", + "dashdot", + "dot", + "longdash", + "longdashdot", + "solid" + ] + }, + "editType": "calc", + "role": "object", + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "marker": { + "angle": { + "arrayOk": true, + "description": "Sets the marker angle in respect to `angleref`.", + "dflt": 0, + "editType": "calc", + "valType": "angle" + }, + "anglesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `angle`.", + "editType": "none", + "valType": "string" + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "calc", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "calc", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "calc", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "calc", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "calc", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "calc", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "calc", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "editType": "calc", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "calc", + "valType": "enumerated", + "values": [ + 0, + "0", + "circle", + 100, + "100", + "circle-open", + 200, + "200", + "circle-dot", + 300, + "300", + "circle-open-dot", + 1, + "1", + "square", + 101, + "101", + "square-open", + 201, + "201", + "square-dot", + 301, + "301", + "square-open-dot", + 2, + "2", + "diamond", + 102, + "102", + "diamond-open", + 202, + "202", + "diamond-dot", + 302, + "302", + "diamond-open-dot", + 3, + "3", + "cross", + 103, + "103", + "cross-open", + 203, + "203", + "cross-dot", + 303, + "303", + "cross-open-dot", + 4, + "4", + "x", + 104, + "104", + "x-open", + 204, + "204", + "x-dot", + 304, + "304", + "x-open-dot", + 5, + "5", + "triangle-up", + 105, + "105", + "triangle-up-open", + 205, + "205", + "triangle-up-dot", + 305, + "305", + "triangle-up-open-dot", + 6, + "6", + "triangle-down", + 106, + "106", + "triangle-down-open", + 206, + "206", + "triangle-down-dot", + 306, + "306", + "triangle-down-open-dot", + 7, + "7", + "triangle-left", + 107, + "107", + "triangle-left-open", + 207, + "207", + "triangle-left-dot", + 307, + "307", + "triangle-left-open-dot", + 8, + "8", + "triangle-right", + 108, + "108", + "triangle-right-open", + 208, + "208", + "triangle-right-dot", + 308, + "308", + "triangle-right-open-dot", + 9, + "9", + "triangle-ne", + 109, + "109", + "triangle-ne-open", + 209, + "209", + "triangle-ne-dot", + 309, + "309", + "triangle-ne-open-dot", + 10, + "10", + "triangle-se", + 110, + "110", + "triangle-se-open", + 210, + "210", + "triangle-se-dot", + 310, + "310", + "triangle-se-open-dot", + 11, + "11", + "triangle-sw", + 111, + "111", + "triangle-sw-open", + 211, + "211", + "triangle-sw-dot", + 311, + "311", + "triangle-sw-open-dot", + 12, + "12", + "triangle-nw", + 112, + "112", + "triangle-nw-open", + 212, + "212", + "triangle-nw-dot", + 312, + "312", + "triangle-nw-open-dot", + 13, + "13", + "pentagon", + 113, + "113", + "pentagon-open", + 213, + "213", + "pentagon-dot", + 313, + "313", + "pentagon-open-dot", + 14, + "14", + "hexagon", + 114, + "114", + "hexagon-open", + 214, + "214", + "hexagon-dot", + 314, + "314", + "hexagon-open-dot", + 15, + "15", + "hexagon2", + 115, + "115", + "hexagon2-open", + 215, + "215", + "hexagon2-dot", + 315, + "315", + "hexagon2-open-dot", + 16, + "16", + "octagon", + 116, + "116", + "octagon-open", + 216, + "216", + "octagon-dot", + 316, + "316", + "octagon-open-dot", + 17, + "17", + "star", + 117, + "117", + "star-open", + 217, + "217", + "star-dot", + 317, + "317", + "star-open-dot", + 18, + "18", + "hexagram", + 118, + "118", + "hexagram-open", + 218, + "218", + "hexagram-dot", + 318, + "318", + "hexagram-open-dot", + 19, + "19", + "star-triangle-up", + 119, + "119", + "star-triangle-up-open", + 219, + "219", + "star-triangle-up-dot", + 319, + "319", + "star-triangle-up-open-dot", + 20, + "20", + "star-triangle-down", + 120, + "120", + "star-triangle-down-open", + 220, + "220", + "star-triangle-down-dot", + 320, + "320", + "star-triangle-down-open-dot", + 21, + "21", + "star-square", + 121, + "121", + "star-square-open", + 221, + "221", + "star-square-dot", + 321, + "321", + "star-square-open-dot", + 22, + "22", + "star-diamond", + 122, + "122", + "star-diamond-open", + 222, + "222", + "star-diamond-dot", + 322, + "322", + "star-diamond-open-dot", + 23, + "23", + "diamond-tall", + 123, + "123", + "diamond-tall-open", + 223, + "223", + "diamond-tall-dot", + 323, + "323", + "diamond-tall-open-dot", + 24, + "24", + "diamond-wide", + 124, + "124", + "diamond-wide-open", + 224, + "224", + "diamond-wide-dot", + 324, + "324", + "diamond-wide-open-dot", + 25, + "25", + "hourglass", + 125, + "125", + "hourglass-open", + 26, + "26", + "bowtie", + 126, + "126", + "bowtie-open", + 27, + "27", + "circle-cross", + 127, + "127", + "circle-cross-open", + 28, + "28", + "circle-x", + 128, + "128", + "circle-x-open", + 29, + "29", + "square-cross", + 129, + "129", + "square-cross-open", + 30, + "30", + "square-x", + 130, + "130", + "square-x-open", + 31, + "31", + "diamond-cross", + 131, + "131", + "diamond-cross-open", + 32, + "32", + "diamond-x", + 132, + "132", + "diamond-x-open", + 33, + "33", + "cross-thin", + 133, + "133", + "cross-thin-open", + 34, + "34", + "x-thin", + 134, + "134", + "x-thin-open", + 35, + "35", + "asterisk", + 135, + "135", + "asterisk-open", + 36, + "36", + "hash", + 136, + "136", + "hash-open", + 236, + "236", + "hash-dot", + 336, + "336", + "hash-open-dot", + 37, + "37", + "y-up", + 137, + "137", + "y-up-open", + 38, + "38", + "y-down", + 138, + "138", + "y-down-open", + 39, + "39", + "y-left", + 139, + "139", + "y-left-open", + 40, + "40", + "y-right", + 140, + "140", + "y-right-open", + 41, + "41", + "line-ew", + 141, + "141", + "line-ew-open", + 42, + "42", + "line-ns", + 142, + "142", + "line-ns-open", + 43, + "43", + "line-ne", + 143, + "143", + "line-ne-open", + 44, + "44", + "line-nw", + 144, + "144", + "line-nw-open", + 45, + "45", + "arrow-up", + 145, + "145", + "arrow-up-open", + 46, + "46", + "arrow-down", + 146, + "146", + "arrow-down-open", + 47, + "47", + "arrow-left", + 147, + "147", + "arrow-left-open", + 48, + "48", + "arrow-right", + 148, + "148", + "arrow-right-open", + 49, + "49", + "arrow-bar-up", + 149, + "149", + "arrow-bar-up-open", + 50, + "50", + "arrow-bar-down", + 150, + "150", + "arrow-bar-down-open", + 51, + "51", + "arrow-bar-left", + 151, + "151", + "arrow-bar-left-open", + 52, + "52", + "arrow-bar-right", + 152, + "152", + "arrow-bar-right-open", + 53, + "53", + "arrow", + 153, + "153", + "arrow-open", + 54, + "54", + "arrow-wide", + 154, + "154", + "arrow-wide-open" + ] + }, + "symbolsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", + "editType": "none", + "valType": "string" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "mode": { + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "r": { + "description": "Sets the radial coordinates", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "r0": { + "description": "Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "rsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `r`.", + "editType": "none", + "valType": "string" + }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "subplot": { + "description": "Sets a reference between this trace's data coordinates and a polar subplot. If *polar* (the default value), the data refer to `layout.polar`. If *polar2*, the data refer to `layout.polar2`, and so on.", + "dflt": "polar", + "editType": "calc", + "valType": "subplotid" + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the text font.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "bold" + ] + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textposition": { + "arrayOk": true, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", + "editType": "none", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `r`, `theta` and `text`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "theta": { + "description": "Sets the angular coordinates", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "theta0": { + "description": "Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "thetasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `theta`.", + "editType": "none", + "valType": "string" + }, + "thetaunit": { + "description": "Sets the unit of input *theta* values. Has an effect only when on *linear* angular axes.", + "dflt": "degrees", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "radians", + "degrees", + "gradians" + ] + }, + "type": "scatterpolargl", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "categories": [ + "gl", + "regl", + "polar", + "symbols", + "showLegend", + "scatter-like" + ], + "meta": { + "description": "The scatterpolargl trace type encompasses line charts, scatter charts, and bubble charts in polar coordinates using the WebGL plotting engine. The data visualized as scatter point or lines is set in `r` (radial) and `theta` (angular) coordinates Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays.", + "hrName": "scatter_polar_gl" + }, + "type": "scatterpolargl" + }, + "scattersmith": { + "animatable": false, + "attributes": { + "cliponaxis": { + "description": "Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "fill": { + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scattersmith has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "toself", + "tonext" + ] + }, + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "style", + "valType": "color" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "real", + "imag", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hoveron": { + "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", + "editType": "style", + "flags": [ + "points", + "fills" + ], + "valType": "flaglist" + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "imag": { + "description": "Sets the imaginary component of the data, in units of normalized impedance such that real=1, imag=0 is the center of the chart.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "imagsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `imag`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "backoff": { + "arrayOk": true, + "description": "Sets the line back off from the end point of the nth line segment (in px). This option is useful e.g. to avoid overlap with arrowhead markers. With *auto* the lines would trim before markers if `marker.angleref` is set to *previous*.", + "dflt": "auto", + "editType": "plot", + "min": 0, + "valType": "number" + }, + "backoffsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `backoff`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the line color.", + "editType": "style", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "calc", + "role": "object", + "shape": { + "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", + "dflt": "linear", + "editType": "plot", + "valType": "enumerated", + "values": [ + "linear", + "spline" + ] + }, + "smoothing": { + "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", + "dflt": 1, + "editType": "plot", + "max": 1.3, + "min": 0, + "valType": "number" + }, + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "marker": { + "angle": { + "arrayOk": true, + "description": "Sets the marker angle in respect to `angleref`.", + "dflt": 0, + "editType": "plot", + "valType": "angle" + }, + "angleref": { + "description": "Sets the reference for marker angle. With *previous*, angle 0 points along the line from the previous point to this one. With *up*, angle 0 points toward the top of the screen.", + "dflt": "up", + "editType": "plot", + "valType": "enumerated", + "values": [ + "previous", + "up" + ] + }, + "anglesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `angle`.", + "editType": "none", + "valType": "string" + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "gradient": { + "color": { + "arrayOk": true, + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "type": { + "arrayOk": true, + "description": "Sets the type of gradient used to fill the markers", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ] + }, + "typesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `type`.", + "editType": "none", + "valType": "string" + } + }, + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "maxdisplayed": { + "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "standoff": { + "arrayOk": true, + "description": "Moves the marker away from the data point in the direction of `angle` (in px). This can be useful for example if you have another marker at this location and you want to point an arrowhead marker at it.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "standoffsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `standoff`.", + "editType": "none", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "style", + "valType": "enumerated", + "values": [ + 0, + "0", + "circle", + 100, + "100", + "circle-open", + 200, + "200", + "circle-dot", + 300, + "300", + "circle-open-dot", + 1, + "1", + "square", + 101, + "101", + "square-open", + 201, + "201", + "square-dot", + 301, + "301", + "square-open-dot", + 2, + "2", + "diamond", + 102, + "102", + "diamond-open", + 202, + "202", + "diamond-dot", + 302, + "302", + "diamond-open-dot", + 3, + "3", + "cross", + 103, + "103", + "cross-open", + 203, + "203", + "cross-dot", + 303, + "303", + "cross-open-dot", + 4, + "4", + "x", + 104, + "104", + "x-open", + 204, + "204", + "x-dot", + 304, + "304", + "x-open-dot", + 5, + "5", + "triangle-up", + 105, + "105", + "triangle-up-open", + 205, + "205", + "triangle-up-dot", + 305, + "305", + "triangle-up-open-dot", + 6, + "6", + "triangle-down", + 106, + "106", + "triangle-down-open", + 206, + "206", + "triangle-down-dot", + 306, + "306", + "triangle-down-open-dot", + 7, + "7", + "triangle-left", + 107, + "107", + "triangle-left-open", + 207, + "207", + "triangle-left-dot", + 307, + "307", + "triangle-left-open-dot", + 8, + "8", + "triangle-right", + 108, + "108", + "triangle-right-open", + 208, + "208", + "triangle-right-dot", + 308, + "308", + "triangle-right-open-dot", + 9, + "9", + "triangle-ne", + 109, + "109", + "triangle-ne-open", + 209, + "209", + "triangle-ne-dot", + 309, + "309", + "triangle-ne-open-dot", + 10, + "10", + "triangle-se", + 110, + "110", + "triangle-se-open", + 210, + "210", + "triangle-se-dot", + 310, + "310", + "triangle-se-open-dot", + 11, + "11", + "triangle-sw", + 111, + "111", + "triangle-sw-open", + 211, + "211", + "triangle-sw-dot", + 311, + "311", + "triangle-sw-open-dot", + 12, + "12", + "triangle-nw", + 112, + "112", + "triangle-nw-open", + 212, + "212", + "triangle-nw-dot", + 312, + "312", + "triangle-nw-open-dot", + 13, + "13", + "pentagon", + 113, + "113", + "pentagon-open", + 213, + "213", + "pentagon-dot", + 313, + "313", + "pentagon-open-dot", + 14, + "14", + "hexagon", + 114, + "114", + "hexagon-open", + 214, + "214", + "hexagon-dot", + 314, + "314", + "hexagon-open-dot", + 15, + "15", + "hexagon2", + 115, + "115", + "hexagon2-open", + 215, + "215", + "hexagon2-dot", + 315, + "315", + "hexagon2-open-dot", + 16, + "16", + "octagon", + 116, + "116", + "octagon-open", + 216, + "216", + "octagon-dot", + 316, + "316", + "octagon-open-dot", + 17, + "17", + "star", + 117, + "117", + "star-open", + 217, + "217", + "star-dot", + 317, + "317", + "star-open-dot", + 18, + "18", + "hexagram", + 118, + "118", + "hexagram-open", + 218, + "218", + "hexagram-dot", + 318, + "318", + "hexagram-open-dot", + 19, + "19", + "star-triangle-up", + 119, + "119", + "star-triangle-up-open", + 219, + "219", + "star-triangle-up-dot", + 319, + "319", + "star-triangle-up-open-dot", + 20, + "20", + "star-triangle-down", + 120, + "120", + "star-triangle-down-open", + 220, + "220", + "star-triangle-down-dot", + 320, + "320", + "star-triangle-down-open-dot", + 21, + "21", + "star-square", + 121, + "121", + "star-square-open", + 221, + "221", + "star-square-dot", + 321, + "321", + "star-square-open-dot", + 22, + "22", + "star-diamond", + 122, + "122", + "star-diamond-open", + 222, + "222", + "star-diamond-dot", + 322, + "322", + "star-diamond-open-dot", + 23, + "23", + "diamond-tall", + 123, + "123", + "diamond-tall-open", + 223, + "223", + "diamond-tall-dot", + 323, + "323", + "diamond-tall-open-dot", + 24, + "24", + "diamond-wide", + 124, + "124", + "diamond-wide-open", + 224, + "224", + "diamond-wide-dot", + 324, + "324", + "diamond-wide-open-dot", + 25, + "25", + "hourglass", + 125, + "125", + "hourglass-open", + 26, + "26", + "bowtie", + 126, + "126", + "bowtie-open", + 27, + "27", + "circle-cross", + 127, + "127", + "circle-cross-open", + 28, + "28", + "circle-x", + 128, + "128", + "circle-x-open", + 29, + "29", + "square-cross", + 129, + "129", + "square-cross-open", + 30, + "30", + "square-x", + 130, + "130", + "square-x-open", + 31, + "31", + "diamond-cross", + 131, + "131", + "diamond-cross-open", + 32, + "32", + "diamond-x", + 132, + "132", + "diamond-x-open", + 33, + "33", + "cross-thin", + 133, + "133", + "cross-thin-open", + 34, + "34", + "x-thin", + 134, + "134", + "x-thin-open", + 35, + "35", + "asterisk", + 135, + "135", + "asterisk-open", + 36, + "36", + "hash", + 136, + "136", + "hash-open", + 236, + "236", + "hash-dot", + 336, + "336", + "hash-open-dot", + 37, + "37", + "y-up", + 137, + "137", + "y-up-open", + 38, + "38", + "y-down", + 138, + "138", + "y-down-open", + 39, + "39", + "y-left", + 139, + "139", + "y-left-open", + 40, + "40", + "y-right", + 140, + "140", + "y-right-open", + 41, + "41", + "line-ew", + 141, + "141", + "line-ew-open", + 42, + "42", + "line-ns", + 142, + "142", + "line-ns-open", + 43, + "43", + "line-ne", + 143, + "143", + "line-ne-open", + 44, + "44", + "line-nw", + 144, + "144", + "line-nw-open", + 45, + "45", + "arrow-up", + 145, + "145", + "arrow-up-open", + 46, + "46", + "arrow-down", + 146, + "146", + "arrow-down-open", + 47, + "47", + "arrow-left", + 147, + "147", + "arrow-left-open", + 48, + "48", + "arrow-right", + 148, + "148", + "arrow-right-open", + 49, + "49", + "arrow-bar-up", + 149, + "149", + "arrow-bar-up-open", + 50, + "50", + "arrow-bar-down", + 150, + "150", + "arrow-bar-down-open", + 51, + "51", + "arrow-bar-left", + 151, + "151", + "arrow-bar-left-open", + 52, + "52", + "arrow-bar-right", + 152, + "152", + "arrow-bar-right-open", + 53, + "53", + "arrow", + 153, + "153", + "arrow-open", + 54, + "54", + "arrow-wide", + 154, + "154", + "arrow-wide-open" + ] + }, + "symbolsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", + "editType": "none", + "valType": "string" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "mode": { + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "real": { + "description": "Sets the real component of the data, in units of normalized impedance such that real=1, imag=0 is the center of the chart.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "realsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `real`.", + "editType": "none", + "valType": "string" + }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "subplot": { + "description": "Sets a reference between this trace's data coordinates and a smith subplot. If *smith* (the default value), the data refer to `layout.smith`. If *smith2*, the data refer to `layout.smith2`, and so on.", + "dflt": "smith", + "editType": "calc", + "valType": "subplotid" + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the text font.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textposition": { + "arrayOk": true, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", + "editType": "none", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `real`, `imag` and `text`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "type": "scattersmith", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" + "categories": [ + "smith", + "symbols", + "showLegend", + "scatter-like" + ], + "meta": { + "description": "The scattersmith trace type encompasses line charts, scatter charts, text charts, and bubble charts in smith coordinates. The data visualized as scatter point or lines is set in `real` and `imag` (imaginary) coordinates Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays.", + "hrName": "scatter_smith" }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" + "type": "scattersmith" + }, + "scatterternary": { + "animatable": false, + "attributes": { + "a": { + "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", + "editType": "calc", + "valType": "data_array" + }, + "asrc": { + "description": "Sets the source reference on Chart Studio Cloud for `a`.", + "editType": "none", + "valType": "string" + }, + "b": { + "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", + "editType": "calc", + "valType": "data_array" + }, + "bsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `b`.", + "editType": "none", + "valType": "string" + }, + "c": { + "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", + "editType": "calc", + "valType": "data_array" + }, + "cliponaxis": { + "description": "Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "csrc": { + "description": "Sets the source reference on Chart Studio Cloud for `c`.", + "editType": "none", + "valType": "string" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "fill": { + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterternary has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "toself", + "tonext" + ] + }, + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "style", + "valType": "color" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "a", + "b", + "c", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hoveron": { + "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", + "editType": "style", + "flags": [ + "points", + "fills" + ], + "valType": "flaglist" + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (a,b,c) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b,c). To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "backoff": { + "arrayOk": true, + "description": "Sets the line back off from the end point of the nth line segment (in px). This option is useful e.g. to avoid overlap with arrowhead markers. With *auto* the lines would trim before markers if `marker.angleref` is set to *previous*.", + "dflt": "auto", + "editType": "plot", + "min": 0, + "valType": "number" + }, + "backoffsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `backoff`.", + "editType": "none", + "valType": "string" + }, + "color": { + "description": "Sets the line color.", + "editType": "style", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "calc", + "role": "object", + "shape": { + "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", + "dflt": "linear", + "editType": "plot", + "valType": "enumerated", + "values": [ + "linear", + "spline" + ] + }, + "smoothing": { + "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", + "dflt": 1, + "editType": "plot", + "max": 1.3, + "min": 0, + "valType": "number" + }, + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "marker": { + "angle": { + "arrayOk": true, + "description": "Sets the marker angle in respect to `angleref`.", + "dflt": 0, + "editType": "plot", + "valType": "angle" + }, + "angleref": { + "description": "Sets the reference for marker angle. With *previous*, angle 0 points along the line from the previous point to this one. With *up*, angle 0 points toward the top of the screen.", + "dflt": "up", + "editType": "plot", + "valType": "enumerated", + "values": [ + "previous", + "up" + ] + }, + "anglesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `angle`.", + "editType": "none", + "valType": "string" + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "gradient": { + "color": { + "arrayOk": true, + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "type": { + "arrayOk": true, + "description": "Sets the type of gradient used to fill the markers", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ] + }, + "typesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `type`.", + "editType": "none", + "valType": "string" + } + }, + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "maxdisplayed": { + "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "standoff": { + "arrayOk": true, + "description": "Moves the marker away from the data point in the direction of `angle` (in px). This can be useful for example if you have another marker at this location and you want to point an arrowhead marker at it.", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "standoffsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `standoff`.", + "editType": "none", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "style", + "valType": "enumerated", + "values": [ + 0, + "0", + "circle", + 100, + "100", + "circle-open", + 200, + "200", + "circle-dot", + 300, + "300", + "circle-open-dot", + 1, + "1", + "square", + 101, + "101", + "square-open", + 201, + "201", + "square-dot", + 301, + "301", + "square-open-dot", + 2, + "2", + "diamond", + 102, + "102", + "diamond-open", + 202, + "202", + "diamond-dot", + 302, + "302", + "diamond-open-dot", + 3, + "3", + "cross", + 103, + "103", + "cross-open", + 203, + "203", + "cross-dot", + 303, + "303", + "cross-open-dot", + 4, + "4", + "x", + 104, + "104", + "x-open", + 204, + "204", + "x-dot", + 304, + "304", + "x-open-dot", + 5, + "5", + "triangle-up", + 105, + "105", + "triangle-up-open", + 205, + "205", + "triangle-up-dot", + 305, + "305", + "triangle-up-open-dot", + 6, + "6", + "triangle-down", + 106, + "106", + "triangle-down-open", + 206, + "206", + "triangle-down-dot", + 306, + "306", + "triangle-down-open-dot", + 7, + "7", + "triangle-left", + 107, + "107", + "triangle-left-open", + 207, + "207", + "triangle-left-dot", + 307, + "307", + "triangle-left-open-dot", + 8, + "8", + "triangle-right", + 108, + "108", + "triangle-right-open", + 208, + "208", + "triangle-right-dot", + 308, + "308", + "triangle-right-open-dot", + 9, + "9", + "triangle-ne", + 109, + "109", + "triangle-ne-open", + 209, + "209", + "triangle-ne-dot", + 309, + "309", + "triangle-ne-open-dot", + 10, + "10", + "triangle-se", + 110, + "110", + "triangle-se-open", + 210, + "210", + "triangle-se-dot", + 310, + "310", + "triangle-se-open-dot", + 11, + "11", + "triangle-sw", + 111, + "111", + "triangle-sw-open", + 211, + "211", + "triangle-sw-dot", + 311, + "311", + "triangle-sw-open-dot", + 12, + "12", + "triangle-nw", + 112, + "112", + "triangle-nw-open", + 212, + "212", + "triangle-nw-dot", + 312, + "312", + "triangle-nw-open-dot", + 13, + "13", + "pentagon", + 113, + "113", + "pentagon-open", + 213, + "213", + "pentagon-dot", + 313, + "313", + "pentagon-open-dot", + 14, + "14", + "hexagon", + 114, + "114", + "hexagon-open", + 214, + "214", + "hexagon-dot", + 314, + "314", + "hexagon-open-dot", + 15, + "15", + "hexagon2", + 115, + "115", + "hexagon2-open", + 215, + "215", + "hexagon2-dot", + 315, + "315", + "hexagon2-open-dot", + 16, + "16", + "octagon", + 116, + "116", + "octagon-open", + 216, + "216", + "octagon-dot", + 316, + "316", + "octagon-open-dot", + 17, + "17", + "star", + 117, + "117", + "star-open", + 217, + "217", + "star-dot", + 317, + "317", + "star-open-dot", + 18, + "18", + "hexagram", + 118, + "118", + "hexagram-open", + 218, + "218", + "hexagram-dot", + 318, + "318", + "hexagram-open-dot", + 19, + "19", + "star-triangle-up", + 119, + "119", + "star-triangle-up-open", + 219, + "219", + "star-triangle-up-dot", + 319, + "319", + "star-triangle-up-open-dot", + 20, + "20", + "star-triangle-down", + 120, + "120", + "star-triangle-down-open", + 220, + "220", + "star-triangle-down-dot", + 320, + "320", + "star-triangle-down-open-dot", + 21, + "21", + "star-square", + 121, + "121", + "star-square-open", + 221, + "221", + "star-square-dot", + 321, + "321", + "star-square-open-dot", + 22, + "22", + "star-diamond", + 122, + "122", + "star-diamond-open", + 222, + "222", + "star-diamond-dot", + 322, + "322", + "star-diamond-open-dot", + 23, + "23", + "diamond-tall", + 123, + "123", + "diamond-tall-open", + 223, + "223", + "diamond-tall-dot", + 323, + "323", + "diamond-tall-open-dot", + 24, + "24", + "diamond-wide", + 124, + "124", + "diamond-wide-open", + 224, + "224", + "diamond-wide-dot", + 324, + "324", + "diamond-wide-open-dot", + 25, + "25", + "hourglass", + 125, + "125", + "hourglass-open", + 26, + "26", + "bowtie", + 126, + "126", + "bowtie-open", + 27, + "27", + "circle-cross", + 127, + "127", + "circle-cross-open", + 28, + "28", + "circle-x", + 128, + "128", + "circle-x-open", + 29, + "29", + "square-cross", + 129, + "129", + "square-cross-open", + 30, + "30", + "square-x", + 130, + "130", + "square-x-open", + 31, + "31", + "diamond-cross", + 131, + "131", + "diamond-cross-open", + 32, + "32", + "diamond-x", + 132, + "132", + "diamond-x-open", + 33, + "33", + "cross-thin", + 133, + "133", + "cross-thin-open", + 34, + "34", + "x-thin", + 134, + "134", + "x-thin-open", + 35, + "35", + "asterisk", + 135, + "135", + "asterisk-open", + 36, + "36", + "hash", + 136, + "136", + "hash-open", + 236, + "236", + "hash-dot", + 336, + "336", + "hash-open-dot", + 37, + "37", + "y-up", + 137, + "137", + "y-up-open", + 38, + "38", + "y-down", + 138, + "138", + "y-down-open", + 39, + "39", + "y-left", + 139, + "139", + "y-left-open", + 40, + "40", + "y-right", + 140, + "140", + "y-right-open", + 41, + "41", + "line-ew", + 141, + "141", + "line-ew-open", + 42, + "42", + "line-ns", + 142, + "142", + "line-ns-open", + 43, + "43", + "line-ne", + 143, + "143", + "line-ne-open", + 44, + "44", + "line-nw", + 144, + "144", + "line-nw-open", + 45, + "45", + "arrow-up", + 145, + "145", + "arrow-up-open", + 46, + "46", + "arrow-down", + 146, + "146", + "arrow-down-open", + 47, + "47", + "arrow-left", + 147, + "147", + "arrow-left-open", + 48, + "48", + "arrow-right", + 148, + "148", + "arrow-right-open", + 49, + "49", + "arrow-bar-up", + 149, + "149", + "arrow-bar-up-open", + 50, + "50", + "arrow-bar-down", + 150, + "150", + "arrow-bar-down-open", + 51, + "51", + "arrow-bar-left", + 151, + "151", + "arrow-bar-left-open", + 52, + "52", + "arrow-bar-right", + 152, + "152", + "arrow-bar-right-open", + 53, + "53", + "arrow", + 153, + "153", + "arrow-open", + 54, + "54", + "arrow-wide", + 154, + "154", + "arrow-wide-open" + ] + }, + "symbolsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", + "editType": "none", + "valType": "string" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "mode": { + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", + "dflt": "markers", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "subplot": { + "description": "Sets a reference between this trace's data coordinates and a ternary subplot. If *ternary* (the default value), the data refer to `layout.ternary`. If *ternary2*, the data refer to `layout.ternary2`, and so on.", + "dflt": "ternary", + "editType": "calc", + "valType": "subplotid" + }, + "sum": { + "description": "The number each triplet should sum to, if only two of `a`, `b`, and `c` are provided. This overrides `ternary.sum` to normalize this specific trace, but does not affect the values displayed on the axes. 0 (or missing) means to use ternary.sum", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (a,b,c) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b,c). If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the text font.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textposition": { + "arrayOk": true, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", + "editType": "none", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `a`, `b`, `c` and `text`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "type": "scatterternary", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry` and `percentParent`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "anim": true, - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "insidetextfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `textinfo` lying inside the sector.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" + "categories": [ + "ternary", + "symbols", + "showLegend", + "scatter-like" ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "labels": { - "description": "Sets the labels of each of the sectors.", - "editType": "calc", - "valType": "data_array" - }, - "labelssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `labels`.", - "editType": "none", - "valType": "string" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" + "meta": { + "description": "Provides similar functionality to the *scatter* type but on a ternary phase diagram. The data is provided by at least two arrays out of `a`, `b`, `c` triplets.", + "hrName": "scatter_ternary" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "type": "scatterternary" + }, + "splom": { + "animatable": false, + "attributes": { + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "diagonal": { + "editType": "calc", + "role": "object", + "visible": { + "description": "Determines whether or not subplots on the diagonal are displayed.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + } + }, + "dimensions": { + "items": { + "dimension": { + "axis": { + "editType": "calc+clearAxisTypes", + "matches": { + "description": "Determines whether or not the x & y axes generated by this dimension match. Equivalent to setting the `matches` axis attribute in the layout with the correct axis id.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object", + "type": { + "description": "Sets the axis type for this dimension's generated x and y axes. Note that the axis `type` values set in layout take precedence over this attribute.", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "linear", + "log", + "date", + "category" + ] + } + }, + "editType": "calc+clearAxisTypes", + "label": { + "description": "Sets the label corresponding to this splom dimension.", + "editType": "calc", + "valType": "string" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "values": { + "description": "Sets the dimension values to be plotted.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "valuessrc": { + "description": "Sets the source reference on Chart Studio Cloud for `values`.", + "editType": "none", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this dimension is shown on the graph. Note that even visible false dimension contribute to the default grid generate by this splom trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + } + } + }, + "role": "object" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "marker": { + "angle": { + "arrayOk": true, + "description": "Sets the marker angle in respect to `angleref`.", + "dflt": 0, + "editType": "plot", + "valType": "angle" + }, + "anglesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `angle`.", + "editType": "none", + "valType": "string" + }, + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color` is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "style", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color` is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "style", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "line": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color` is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color` is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color` is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if in `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color` is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "editType": "calc", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `opacity`.", + "editType": "none", + "valType": "string" + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color` is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color` is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "markerSize", + "min": 0, + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "style", + "valType": "enumerated", + "values": [ + 0, + "0", + "circle", + 100, + "100", + "circle-open", + 200, + "200", + "circle-dot", + 300, + "300", + "circle-open-dot", + 1, + "1", + "square", + 101, + "101", + "square-open", + 201, + "201", + "square-dot", + 301, + "301", + "square-open-dot", + 2, + "2", + "diamond", + 102, + "102", + "diamond-open", + 202, + "202", + "diamond-dot", + 302, + "302", + "diamond-open-dot", + 3, + "3", + "cross", + 103, + "103", + "cross-open", + 203, + "203", + "cross-dot", + 303, + "303", + "cross-open-dot", + 4, + "4", + "x", + 104, + "104", + "x-open", + 204, + "204", + "x-dot", + 304, + "304", + "x-open-dot", + 5, + "5", + "triangle-up", + 105, + "105", + "triangle-up-open", + 205, + "205", + "triangle-up-dot", + 305, + "305", + "triangle-up-open-dot", + 6, + "6", + "triangle-down", + 106, + "106", + "triangle-down-open", + 206, + "206", + "triangle-down-dot", + 306, + "306", + "triangle-down-open-dot", + 7, + "7", + "triangle-left", + 107, + "107", + "triangle-left-open", + 207, + "207", + "triangle-left-dot", + 307, + "307", + "triangle-left-open-dot", + 8, + "8", + "triangle-right", + 108, + "108", + "triangle-right-open", + 208, + "208", + "triangle-right-dot", + 308, + "308", + "triangle-right-open-dot", + 9, + "9", + "triangle-ne", + 109, + "109", + "triangle-ne-open", + 209, + "209", + "triangle-ne-dot", + 309, + "309", + "triangle-ne-open-dot", + 10, + "10", + "triangle-se", + 110, + "110", + "triangle-se-open", + 210, + "210", + "triangle-se-dot", + 310, + "310", + "triangle-se-open-dot", + 11, + "11", + "triangle-sw", + 111, + "111", + "triangle-sw-open", + 211, + "211", + "triangle-sw-dot", + 311, + "311", + "triangle-sw-open-dot", + 12, + "12", + "triangle-nw", + 112, + "112", + "triangle-nw-open", + 212, + "212", + "triangle-nw-dot", + 312, + "312", + "triangle-nw-open-dot", + 13, + "13", + "pentagon", + 113, + "113", + "pentagon-open", + 213, + "213", + "pentagon-dot", + 313, + "313", + "pentagon-open-dot", + 14, + "14", + "hexagon", + 114, + "114", + "hexagon-open", + 214, + "214", + "hexagon-dot", + 314, + "314", + "hexagon-open-dot", + 15, + "15", + "hexagon2", + 115, + "115", + "hexagon2-open", + 215, + "215", + "hexagon2-dot", + 315, + "315", + "hexagon2-open-dot", + 16, + "16", + "octagon", + 116, + "116", + "octagon-open", + 216, + "216", + "octagon-dot", + 316, + "316", + "octagon-open-dot", + 17, + "17", + "star", + 117, + "117", + "star-open", + 217, + "217", + "star-dot", + 317, + "317", + "star-open-dot", + 18, + "18", + "hexagram", + 118, + "118", + "hexagram-open", + 218, + "218", + "hexagram-dot", + 318, + "318", + "hexagram-open-dot", + 19, + "19", + "star-triangle-up", + 119, + "119", + "star-triangle-up-open", + 219, + "219", + "star-triangle-up-dot", + 319, + "319", + "star-triangle-up-open-dot", + 20, + "20", + "star-triangle-down", + 120, + "120", + "star-triangle-down-open", + 220, + "220", + "star-triangle-down-dot", + 320, + "320", + "star-triangle-down-open-dot", + 21, + "21", + "star-square", + 121, + "121", + "star-square-open", + 221, + "221", + "star-square-dot", + 321, + "321", + "star-square-open-dot", + 22, + "22", + "star-diamond", + 122, + "122", + "star-diamond-open", + 222, + "222", + "star-diamond-dot", + 322, + "322", + "star-diamond-open-dot", + 23, + "23", + "diamond-tall", + 123, + "123", + "diamond-tall-open", + 223, + "223", + "diamond-tall-dot", + 323, + "323", + "diamond-tall-open-dot", + 24, + "24", + "diamond-wide", + 124, + "124", + "diamond-wide-open", + 224, + "224", + "diamond-wide-dot", + 324, + "324", + "diamond-wide-open-dot", + 25, + "25", + "hourglass", + 125, + "125", + "hourglass-open", + 26, + "26", + "bowtie", + 126, + "126", + "bowtie-open", + 27, + "27", + "circle-cross", + 127, + "127", + "circle-cross-open", + 28, + "28", + "circle-x", + 128, + "128", + "circle-x-open", + 29, + "29", + "square-cross", + 129, + "129", + "square-cross-open", + 30, + "30", + "square-x", + 130, + "130", + "square-x-open", + 31, + "31", + "diamond-cross", + 131, + "131", + "diamond-cross-open", + 32, + "32", + "diamond-x", + 132, + "132", + "diamond-x-open", + 33, + "33", + "cross-thin", + 133, + "133", + "cross-thin-open", + 34, + "34", + "x-thin", + 134, + "134", + "x-thin-open", + 35, + "35", + "asterisk", + 135, + "135", + "asterisk-open", + 36, + "36", + "hash", + 136, + "136", + "hash-open", + 236, + "236", + "hash-dot", + 336, + "336", + "hash-open-dot", + 37, + "37", + "y-up", + 137, + "137", + "y-up-open", + 38, + "38", + "y-down", + 138, + "138", + "y-down-open", + 39, + "39", + "y-left", + 139, + "139", + "y-left-open", + 40, + "40", + "y-right", + 140, + "140", + "y-right-open", + 41, + "41", + "line-ew", + 141, + "141", + "line-ew-open", + 42, + "42", + "line-ns", + 142, + "142", + "line-ns-open", + 43, + "43", + "line-ne", + 143, + "143", + "line-ne-open", + 44, + "44", + "line-nw", + 144, + "144", + "line-nw-open", + 45, + "45", + "arrow-up", + 145, + "145", + "arrow-up-open", + 46, + "46", + "arrow-down", + 146, + "146", + "arrow-down-open", + 47, + "47", + "arrow-left", + 147, + "147", + "arrow-left-open", + 48, + "48", + "arrow-right", + 148, + "148", + "arrow-right-open", + 49, + "49", + "arrow-bar-up", + 149, + "149", + "arrow-bar-up-open", + 50, + "50", + "arrow-bar-down", + 150, + "150", + "arrow-bar-down-open", + 51, + "51", + "arrow-bar-left", + 151, + "151", + "arrow-bar-left-open", + 52, + "52", + "arrow-bar-right", + 152, + "152", + "arrow-bar-right-open", + 53, + "53", + "arrow", + 153, + "153", + "arrow-open", + 54, + "54", + "arrow-wide", + 154, + "154", + "arrow-wide-open" + ] + }, + "symbolsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `symbol`.", + "editType": "none", + "valType": "string" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "selected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "showlowerhalf": { + "description": "Determines whether or not subplots on the lower half from the diagonal are displayed.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "showupperhalf": { + "description": "Determines whether or not subplots on the upper half from the diagonal are displayed.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (x,y) pair to appear on hover. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "type": "splom", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "xaxes": { + "description": "Sets the list of x axes corresponding to dimensions of this splom trace. By default, a splom will match the first N xaxes where N is the number of input dimensions. Note that, in case where `diagonal.visible` is false and `showupperhalf` or `showlowerhalf` is false, this splom trace will generate one less x-axis and one less y-axis.", + "editType": "calc", + "freeLength": true, + "items": { + "editType": "plot", + "regex": "/^x([2-9]|[1-9][0-9]+)?( domain)?$/", + "valType": "subplotid" + }, + "valType": "info_array" + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "yaxes": { + "description": "Sets the list of y axes corresponding to dimensions of this splom trace. By default, a splom will match the first N yaxes where N is the number of input dimensions. Note that, in case where `diagonal.visible` is false and `showupperhalf` or `showlowerhalf` is false, this splom trace will generate one less x-axis and one less y-axis.", + "editType": "calc", + "freeLength": true, + "items": { + "editType": "plot", + "regex": "/^y([2-9]|[1-9][0-9]+)?( domain)?$/", + "valType": "subplotid" + }, + "valType": "info_array" + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + } }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "categories": [ + "gl", + "regl", + "cartesian", + "symbols", + "showLegend", + "scatter-like" + ], + "meta": { + "description": "Splom traces generate scatter plot matrix visualizations. Each splom `dimensions` items correspond to a generated axis. Values for each of those dimensions are set in `dimensions[i].values`. Splom traces support all `scattergl` marker style attributes. Specify `layout.grid` attributes and/or layout x-axis and y-axis attributes for more control over the axis positioning and style. " }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" + "type": "splom" }, - "level": { - "anim": true, - "description": "Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`.", - "editType": "plot", - "valType": "any" - }, - "marker": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if colors is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here colors) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if colors is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Has an effect only if colors is set to a numerical array. Value should have the same units as colors and if set, `marker.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if colors is set to a numerical array. Value should have the same units as colors. Has no effect when `marker.cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Has an effect only if colors is set to a numerical array. Value should have the same units as colors and if set, `marker.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "colorbars", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "colorbars", - "valType": "color" - }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" - }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "streamtube": { + "animatable": false, + "attributes": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here u/v/w norm) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as u/v/w norm. Has no effect when `cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, "editType": "colorbars", - "items": [ - { + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, "editType": "colorbars", "valType": "any" - }, - { + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, "valType": "any" - } + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "x+y+z+norm+text+name", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" ], - "valType": "info_array" - }, - "editType": "colorbars", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "flags": [ + "x", + "y", + "z", + "u", + "v", + "w", + "norm", + "divergence", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `tubex`, `tubey`, `tubez`, `tubeu`, `tubev`, `tubew`, `norm` and `divergence`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "description": "Same as `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "lighting": { + "ambient": { + "description": "Ambient light increases overall color visibility but can wash out the image.", + "dflt": 0.8, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "diffuse": { + "description": "Represents the extent that incident rays are reflected in a range of angles.", + "dflt": 0.8, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "editType": "calc", + "facenormalsepsilon": { + "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry.", + "dflt": 0.000001, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "fresnel": { + "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", + "dflt": 0.2, + "editType": "calc", + "max": 5, + "min": 0, + "valType": "number" + }, + "role": "object", + "roughness": { + "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", + "dflt": 0.5, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "specular": { + "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", + "dflt": 0.05, + "editType": "calc", + "max": 2, + "min": 0, + "valType": "number" + }, + "vertexnormalsepsilon": { + "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry.", + "dflt": 1e-12, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + }, + "lightposition": { + "editType": "calc", + "role": "object", + "x": { + "description": "Numeric vector, representing the X coordinate for each vertex.", + "dflt": 100000, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + }, + "y": { + "description": "Numeric vector, representing the Y coordinate for each vertex.", + "dflt": 100000, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + }, + "z": { + "description": "Numeric vector, representing the Z coordinate for each vertex.", + "dflt": 0, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + } + }, + "maxdisplayed": { + "description": "The maximum number of displayed segments in a streamtube.", + "dflt": 1000, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "scene": { + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": false, + "editType": "style", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", "dflt": true, - "editType": "colorbars", + "editType": "calc", "valType": "boolean" - }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "colorbars", + }, + "sizeref": { + "description": "The scaling factor for the streamtubes. The default is 1, which avoids two max divergence tubes from touching at adjacent starting positions.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "starts": { + "editType": "calc", + "role": "object", + "x": { + "description": "Sets the x components of the starting position of the streamtubes", + "editType": "calc", + "valType": "data_array" + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the y components of the starting position of the streamtubes", + "editType": "calc", + "valType": "data_array" + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "z": { + "description": "Sets the z components of the starting position of the streamtubes", + "editType": "calc", + "valType": "data_array" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "description": "Sets a text element associated with this trace. If trace `hoverinfo` contains a *text* flag, this text element will be seen in all hover labels. Note that streamtube traces do not support array `text` values.", + "dflt": "", + "editType": "calc", "valType": "string" - }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "colorbars", + }, + "type": "streamtube", + "u": { + "description": "Sets the x components of the vector field.", + "editType": "calc", + "valType": "data_array" + }, + "uhoverformat": { + "description": "Sets the hover text formatting rulefor `u` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "usrc": { + "description": "Sets the source reference on Chart Studio Cloud for `u`.", + "editType": "none", "valType": "string" - }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", + }, + "v": { + "description": "Sets the y components of the vector field.", + "editType": "calc", + "valType": "data_array" + }, + "vhoverformat": { + "description": "Sets the hover text formatting rulefor `v` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", "dflt": "", - "editType": "colorbars", + "editType": "none", "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "colorbars", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "colorbars", - "font": { - "color": { - "editType": "colorbars", - "valType": "color" }, - "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.", - "editType": "colorbars", - "noBlank": true, - "strict": true, - "valType": "string" + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "colorbars", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "vsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `v`.", + "editType": "none", + "valType": "string" }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "colorbars", - "valType": "string" + "w": { + "description": "Sets the z components of the vector field.", + "editType": "calc", + "valType": "data_array" }, - "size": { - "editType": "colorbars", - "min": 1, - "valType": "number" + "whoverformat": { + "description": "Sets the hover text formatting rulefor `w` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", + "dflt": "", + "editType": "none", + "valType": "string" }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "wsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `w`.", + "editType": "none", + "valType": "string" }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "x": { + "description": "Sets the x coordinates of the vector field.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "colorbars", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "colorbars", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "colorbars", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "colorbars", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colors": { - "description": "Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors.", - "editType": "calc", - "valType": "data_array" - }, - "colorscale": { - "description": "Sets the colorscale. Has an effect only if colors is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "colorssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `colors`.", - "editType": "none", - "valType": "string" - }, - "cornerradius": { - "description": "Sets the maximum rounding of corners (in px).", - "dflt": 0, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "depthfade": { - "description": "Determines if the sector colors are faded towards the background from the leaves up to the headers. This option is unavailable when a `colorscale` is present, defaults to false when `marker.colors` is set, but otherwise defaults to true. When set to *reversed*, the fading direction is inverted, that is the top elements within hierarchy are drawn with fully saturated colors while the leaves are faded towards the background color.", - "editType": "style", - "valType": "enumerated", - "values": [ - true, - false, - "reversed" - ] - }, - "editType": "calc", - "line": { - "color": { - "arrayOk": true, - "description": "Sets the color of the line enclosing each sector. Defaults to the `paper_bgcolor` value.", - "dflt": null, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the line enclosing each sector.", - "dflt": 1, - "editType": "style", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - } - }, - "pad": { - "b": { - "description": "Sets the padding form the bottom (in px).", - "editType": "plot", - "min": 0, - "valType": "number" - }, - "editType": "calc", - "l": { - "description": "Sets the padding form the left (in px).", - "editType": "plot", - "min": 0, - "valType": "number" - }, - "r": { - "description": "Sets the padding form the right (in px).", - "editType": "plot", - "min": 0, - "valType": "number" - }, - "role": "object", - "t": { - "description": "Sets the padding form the top (in px).", - "editType": "plot", - "min": 0, - "valType": "number" - } - }, - "pattern": { - "bgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", - "editType": "style", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the pattern within the marker.", - "editType": "style", - "fgcolor": { - "arrayOk": true, - "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", - "editType": "style", - "valType": "color" - }, - "fgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", - "editType": "none", - "valType": "string" - }, - "fgopacity": { - "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "fillmode": { - "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", - "dflt": "replace", - "editType": "style", - "valType": "enumerated", - "values": [ - "replace", - "overlay" - ] - }, - "path": { - "arrayOk": true, - "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", - "editType": "style", - "valType": "string" - }, - "pathsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `path`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shape": { - "arrayOk": true, - "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", - "dflt": "", - "editType": "style", - "valType": "enumerated", - "values": [ - "", - "/", - "\\", - "x", - "-", - "|", - "+", - "." - ] - }, - "shapesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shape`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", - "dflt": 8, - "editType": "style", - "min": 0, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "solidity": { - "arrayOk": true, - "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", - "dflt": 0.3, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "soliditysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", - "editType": "none", - "valType": "string" - } - }, - "reversescale": { - "description": "Reverses the color mapping if true. Has an effect only if colors is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if colors is set to a numerical array.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "maxdepth": { - "description": "Sets the number of rendered sectors from any given `level`. Set `maxdepth` to *-1* to render all the levels in the hierarchy.", - "dflt": -1, - "editType": "plot", - "valType": "integer" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "outsidetextfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `textinfo` lying outside the sector. This option refers to the root of the hierarchy presented on top left corner of a treemap graph. Please note that if a hierarchy has multiple root nodes, this option won't have any effect and `insidetextfont` would be used.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "parents": { - "description": "Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique.", - "editType": "calc", - "valType": "data_array" - }, - "parentssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `parents`.", - "editType": "none", - "valType": "string" - }, - "pathbar": { - "edgeshape": { - "description": "Determines which shape is used for edges between `barpath` labels.", - "dflt": ">", - "editType": "plot", - "valType": "enumerated", - "values": [ - ">", - "<", - "|", - "/", - "\\" - ] - }, - "editType": "calc", - "role": "object", - "side": { - "description": "Determines on which side of the the treemap the `pathbar` should be presented.", - "dflt": "top", - "editType": "plot", - "valType": "enumerated", - "values": [ - "top", - "bottom" - ] - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used inside `pathbar`.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the y coordinates of the vector field.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "z": { + "description": "Sets the z coordinates of the vector field.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "zhoverformat": { + "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `zaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "thickness": { - "description": "Sets the thickness of `pathbar` (in px). If not specified the `pathbar.textfont.size` is used with 3 pixles extra padding on each side.", - "editType": "plot", - "min": 12, - "valType": "number" - }, - "visible": { - "description": "Determines if the path bar is drawn i.e. outside the trace `domain` and with one pixel gap.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - } - }, - "root": { - "color": { - "description": "sets the color of the root node for a sunburst/treemap/icicle trace. this has no effect when a colorscale is used to set the markers.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "role": "object" - }, - "sort": { - "description": "Determines whether or not the sectors are reordered from largest to smallest.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "editType": "plot", - "valType": "data_array" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "plot", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `textinfo`.", - "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.", - "editType": "plot", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "plot", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "plot", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "plot", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "plot", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textinfo": { - "description": "Determines which trace information appear on the graph.", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "label", - "text", - "value", - "current path", - "percent root", - "percent entry", - "percent parent" - ], - "valType": "flaglist" - }, - "textposition": { - "description": "Sets the positions of the `text` elements.", - "dflt": "top left", - "editType": "plot", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry`, `percentParent`, `label` and `value`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "tiling": { - "editType": "calc", - "flip": { - "description": "Determines if the positions obtained from solver are flipped on each axis.", - "dflt": "", - "editType": "plot", - "flags": [ - "x", - "y" + "categories": [ + "gl3d", + "showLegend" ], - "valType": "flaglist" - }, - "packing": { - "description": "Determines d3 treemap solver. For more info please refer to https://github.com/d3/d3-hierarchy#treemap-tiling", - "dflt": "squarify", - "editType": "plot", - "valType": "enumerated", - "values": [ - "squarify", - "binary", - "dice", - "slice", - "slice-dice", - "dice-slice" - ] - }, - "pad": { - "description": "Sets the inner padding (in px).", - "dflt": 3, - "editType": "plot", - "min": 0, - "valType": "number" - }, - "role": "object", - "squarifyratio": { - "description": "When using *squarify* `packing` algorithm, according to https://github.com/d3/d3-hierarchy/blob/v3.1.1/README.md#squarify_ratio this option specifies the desired aspect ratio of the generated rectangles. The ratio must be specified as a number greater than or equal to one. Note that the orientation of the generated rectangles (tall or wide) is not implied by the ratio; for example, a ratio of two will attempt to produce a mixture of rectangles whose width:height ratio is either 2:1 or 1:2. When using *squarify*, unlike d3 which uses the Golden Ratio i.e. 1.618034, Plotly applies 1 to increase squares in treemap layouts.", - "dflt": 1, - "editType": "plot", - "min": 1, - "valType": "number" - } - }, - "type": "treemap", - "uid": { - "anim": true, - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "values": { - "description": "Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed.", - "editType": "calc", - "valType": "data_array" - }, - "valuessrc": { - "description": "Sets the source reference on Chart Studio Cloud for `values`.", - "editType": "none", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - } - }, - "categories": [], - "layoutAttributes": { - "extendtreemapcolors": { - "description": "If `true`, the treemap slice colors (whether given by `treemapcolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "treemapcolorway": { - "description": "Sets the default treemap slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendtreemapcolors`.", - "editType": "calc", - "valType": "colorlist" - } - }, - "meta": { - "description": "Visualize hierarchal data from leaves (and/or outer branches) towards root with rectangles. The treemap sectors are determined by the entries in *labels* or *ids* and in *parents*." - }, - "type": "treemap" - }, - "violin": { - "animatable": false, - "attributes": { - "alignmentgroup": { - "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "bandwidth": { - "description": "Sets the bandwidth used to compute the kernel density estimate. By default, the bandwidth is determined by Silverman's rule of thumb.", - "editType": "calc", - "min": 0, - "valType": "number" - }, - "box": { - "editType": "plot", - "fillcolor": { - "description": "Sets the inner box plot fill color.", - "editType": "style", - "valType": "color" - }, - "line": { - "color": { - "description": "Sets the inner box plot bounding line color.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object", - "width": { - "description": "Sets the inner box plot bounding line width.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object", - "visible": { - "description": "Determines if an miniature box plot is drawn inside the violins. ", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "width": { - "description": "Sets the width of the inner box plots relative to the violins' width. For example, with 1, the inner box plots are as wide as the violins.", - "dflt": 0.25, - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "style", - "valType": "color" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" + "meta": { + "description": "Use a streamtube trace to visualize flow in a vector field. Specify a vector field using 6 1D arrays of equal length, 3 position arrays `x`, `y` and `z` and 3 vector component arrays `u`, `v`, and `w`. By default, the tubes' starting positions will be cut from the vector field's x-z plane at its minimum y value. To specify your own starting position, use attributes `starts.x`, `starts.y` and `starts.z`. The color is encoded by the norm of (u, v, w), and the local radius by the divergence of (u, v, w)." }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hoveron": { - "description": "Do the hover effects highlight individual violins or sample points or the kernel density estimate or any combination of them?", - "dflt": "violins+points+kde", - "editType": "style", - "extras": [ - "all" - ], - "flags": [ - "violins", - "points", - "kde" - ], - "valType": "flaglist" - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "jitter": { - "description": "Sets the amount of jitter in the sample points drawn. If *0*, the sample points align along the distribution axis. If *1*, the sample points are drawn in a random jitter of width equal to the width of the violins.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "line": { - "color": { - "description": "Sets the color of line bounding the violin(s).", - "editType": "style", - "valType": "color" - }, - "editType": "plot", - "role": "object", - "width": { - "description": "Sets the width (in px) of line bounding the violin(s).", - "dflt": 2, - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "marker": { - "angle": { - "arrayOk": false, - "description": "Sets the marker angle in respect to `angleref`.", - "dflt": 0, - "editType": "calc", - "valType": "angle" - }, - "color": { - "arrayOk": false, - "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", - "editType": "style", - "valType": "color" - }, - "editType": "plot", - "line": { - "color": { - "arrayOk": false, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", - "dflt": "#444", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "outliercolor": { - "description": "Sets the border line color of the outlier sample points. Defaults to marker.color", - "editType": "style", - "valType": "color" - }, - "outlierwidth": { - "description": "Sets the border line width (in px) of the outlier sample points.", - "dflt": 1, - "editType": "style", - "min": 0, - "valType": "number" - }, - "role": "object", - "width": { - "arrayOk": false, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "opacity": { - "arrayOk": false, - "description": "Sets the marker opacity.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "outliercolor": { - "description": "Sets the color of the outlier sample points.", - "dflt": "rgba(0, 0, 0, 0)", - "editType": "style", - "valType": "color" - }, - "role": "object", - "size": { - "arrayOk": false, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "symbol": { - "arrayOk": false, - "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", - "dflt": "circle", - "editType": "plot", - "valType": "enumerated", - "values": [ - 0, - "0", - "circle", - 100, - "100", - "circle-open", - 200, - "200", - "circle-dot", - 300, - "300", - "circle-open-dot", - 1, - "1", - "square", - 101, - "101", - "square-open", - 201, - "201", - "square-dot", - 301, - "301", - "square-open-dot", - 2, - "2", - "diamond", - 102, - "102", - "diamond-open", - 202, - "202", - "diamond-dot", - 302, - "302", - "diamond-open-dot", - 3, - "3", - "cross", - 103, - "103", - "cross-open", - 203, - "203", - "cross-dot", - 303, - "303", - "cross-open-dot", - 4, - "4", - "x", - 104, - "104", - "x-open", - 204, - "204", - "x-dot", - 304, - "304", - "x-open-dot", - 5, - "5", - "triangle-up", - 105, - "105", - "triangle-up-open", - 205, - "205", - "triangle-up-dot", - 305, - "305", - "triangle-up-open-dot", - 6, - "6", - "triangle-down", - 106, - "106", - "triangle-down-open", - 206, - "206", - "triangle-down-dot", - 306, - "306", - "triangle-down-open-dot", - 7, - "7", - "triangle-left", - 107, - "107", - "triangle-left-open", - 207, - "207", - "triangle-left-dot", - 307, - "307", - "triangle-left-open-dot", - 8, - "8", - "triangle-right", - 108, - "108", - "triangle-right-open", - 208, - "208", - "triangle-right-dot", - 308, - "308", - "triangle-right-open-dot", - 9, - "9", - "triangle-ne", - 109, - "109", - "triangle-ne-open", - 209, - "209", - "triangle-ne-dot", - 309, - "309", - "triangle-ne-open-dot", - 10, - "10", - "triangle-se", - 110, - "110", - "triangle-se-open", - 210, - "210", - "triangle-se-dot", - 310, - "310", - "triangle-se-open-dot", - 11, - "11", - "triangle-sw", - 111, - "111", - "triangle-sw-open", - 211, - "211", - "triangle-sw-dot", - 311, - "311", - "triangle-sw-open-dot", - 12, - "12", - "triangle-nw", - 112, - "112", - "triangle-nw-open", - 212, - "212", - "triangle-nw-dot", - 312, - "312", - "triangle-nw-open-dot", - 13, - "13", - "pentagon", - 113, - "113", - "pentagon-open", - 213, - "213", - "pentagon-dot", - 313, - "313", - "pentagon-open-dot", - 14, - "14", - "hexagon", - 114, - "114", - "hexagon-open", - 214, - "214", - "hexagon-dot", - 314, - "314", - "hexagon-open-dot", - 15, - "15", - "hexagon2", - 115, - "115", - "hexagon2-open", - 215, - "215", - "hexagon2-dot", - 315, - "315", - "hexagon2-open-dot", - 16, - "16", - "octagon", - 116, - "116", - "octagon-open", - 216, - "216", - "octagon-dot", - 316, - "316", - "octagon-open-dot", - 17, - "17", - "star", - 117, - "117", - "star-open", - 217, - "217", - "star-dot", - 317, - "317", - "star-open-dot", - 18, - "18", - "hexagram", - 118, - "118", - "hexagram-open", - 218, - "218", - "hexagram-dot", - 318, - "318", - "hexagram-open-dot", - 19, - "19", - "star-triangle-up", - 119, - "119", - "star-triangle-up-open", - 219, - "219", - "star-triangle-up-dot", - 319, - "319", - "star-triangle-up-open-dot", - 20, - "20", - "star-triangle-down", - 120, - "120", - "star-triangle-down-open", - 220, - "220", - "star-triangle-down-dot", - 320, - "320", - "star-triangle-down-open-dot", - 21, - "21", - "star-square", - 121, - "121", - "star-square-open", - 221, - "221", - "star-square-dot", - 321, - "321", - "star-square-open-dot", - 22, - "22", - "star-diamond", - 122, - "122", - "star-diamond-open", - 222, - "222", - "star-diamond-dot", - 322, - "322", - "star-diamond-open-dot", - 23, - "23", - "diamond-tall", - 123, - "123", - "diamond-tall-open", - 223, - "223", - "diamond-tall-dot", - 323, - "323", - "diamond-tall-open-dot", - 24, - "24", - "diamond-wide", - 124, - "124", - "diamond-wide-open", - 224, - "224", - "diamond-wide-dot", - 324, - "324", - "diamond-wide-open-dot", - 25, - "25", - "hourglass", - 125, - "125", - "hourglass-open", - 26, - "26", - "bowtie", - 126, - "126", - "bowtie-open", - 27, - "27", - "circle-cross", - 127, - "127", - "circle-cross-open", - 28, - "28", - "circle-x", - 128, - "128", - "circle-x-open", - 29, - "29", - "square-cross", - 129, - "129", - "square-cross-open", - 30, - "30", - "square-x", - 130, - "130", - "square-x-open", - 31, - "31", - "diamond-cross", - 131, - "131", - "diamond-cross-open", - 32, - "32", - "diamond-x", - 132, - "132", - "diamond-x-open", - 33, - "33", - "cross-thin", - 133, - "133", - "cross-thin-open", - 34, - "34", - "x-thin", - 134, - "134", - "x-thin-open", - 35, - "35", - "asterisk", - 135, - "135", - "asterisk-open", - 36, - "36", - "hash", - 136, - "136", - "hash-open", - 236, - "236", - "hash-dot", - 336, - "336", - "hash-open-dot", - 37, - "37", - "y-up", - 137, - "137", - "y-up-open", - 38, - "38", - "y-down", - 138, - "138", - "y-down-open", - 39, - "39", - "y-left", - 139, - "139", - "y-left-open", - 40, - "40", - "y-right", - 140, - "140", - "y-right-open", - 41, - "41", - "line-ew", - 141, - "141", - "line-ew-open", - 42, - "42", - "line-ns", - 142, - "142", - "line-ns-open", - 43, - "43", - "line-ne", - 143, - "143", - "line-ne-open", - 44, - "44", - "line-nw", - 144, - "144", - "line-nw-open", - 45, - "45", - "arrow-up", - 145, - "145", - "arrow-up-open", - 46, - "46", - "arrow-down", - 146, - "146", - "arrow-down-open", - 47, - "47", - "arrow-left", - 147, - "147", - "arrow-left-open", - 48, - "48", - "arrow-right", - 148, - "148", - "arrow-right-open", - 49, - "49", - "arrow-bar-up", - 149, - "149", - "arrow-bar-up-open", - 50, - "50", - "arrow-bar-down", - 150, - "150", - "arrow-bar-down-open", - 51, - "51", - "arrow-bar-left", - 151, - "151", - "arrow-bar-left-open", - 52, - "52", - "arrow-bar-right", - 152, - "152", - "arrow-bar-right-open", - 53, - "53", - "arrow", - 153, - "153", - "arrow-open", - 54, - "54", - "arrow-wide", - 154, - "154", - "arrow-wide-open" - ] - } - }, - "meanline": { - "color": { - "description": "Sets the mean line color.", - "editType": "style", - "valType": "color" - }, - "editType": "plot", - "role": "object", - "visible": { - "description": "Determines if a line corresponding to the sample's mean is shown inside the violins. If `box.visible` is turned on, the mean line is drawn inside the inner box. Otherwise, the mean line is drawn from one side of the violin to other.", - "dflt": false, - "editType": "plot", - "valType": "boolean" - }, - "width": { - "description": "Sets the mean line width.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover. For violin traces, the name will also be used for the position coordinate, if `x` and `x0` (`y` and `y0` if horizontal) are missing and the position axis is categorical. Note that the trace name is also used as a default value for attribute `scalegroup` (please see its description for details).", - "editType": "calc+clearAxisTypes", - "valType": "string" - }, - "offsetgroup": { - "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up.", - "dflt": "", - "editType": "calc", - "valType": "string" + "type": "streamtube" }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "orientation": { - "description": "Sets the orientation of the violin(s). If *v* (*h*), the distribution is visualized along the vertical (horizontal).", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "v", - "h" - ] - }, - "pointpos": { - "description": "Sets the position of the sample points in relation to the violins. If *0*, the sample points are places over the center of the violins. Positive (negative) values correspond to positions to the right (left) for vertical violins and above (below) for horizontal violins.", - "editType": "calc", - "max": 2, - "min": -2, - "valType": "number" - }, - "points": { - "description": "If *outliers*, only the sample points lying outside the whiskers are shown If *suspectedoutliers*, the outlier points are shown and points either less than 4*Q1-3*Q3 or greater than 4*Q3-3*Q1 are highlighted (see `outliercolor`) If *all*, all sample points are shown If *false*, only the violins are shown with no sample points. Defaults to *suspectedoutliers* when `marker.outliercolor` or `marker.line.outliercolor` is set, otherwise defaults to *outliers*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "outliers", - "suspectedoutliers", - false - ] - }, - "quartilemethod": { - "description": "Sets the method used to compute the sample's Q1 and Q3 quartiles. The *linear* method uses the 25th percentile for Q1 and 75th percentile for Q3 as computed using method #10 (listed on http://jse.amstat.org/v14n3/langford.html). The *exclusive* method uses the median to divide the ordered dataset into two halves if the sample is odd, it does not include the median in either half - Q1 is then the median of the lower half and Q3 the median of the upper half. The *inclusive* method also uses the median to divide the ordered dataset into two halves but if the sample is odd, it includes the median in both halves - Q1 is then the median of the lower half and Q3 the median of the upper half.", - "dflt": "linear", - "editType": "calc", - "valType": "enumerated", - "values": [ - "linear", - "exclusive", - "inclusive" - ] - }, - "scalegroup": { - "description": "If there are multiple violins that should be sized according to to some metric (see `scalemode`), link them by providing a non-empty group id here shared by every trace in the same group. If a violin's `width` is undefined, `scalegroup` will default to the trace's name. In this case, violins with the same names will be linked together", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "scalemode": { - "description": "Sets the metric by which the width of each violin is determined. *width* means each violin has the same (max) width *count* means the violins are scaled by the number of sample points making up each violin.", - "dflt": "width", - "editType": "calc", - "valType": "enumerated", - "values": [ - "width", - "count" - ] - }, - "selected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of selected points.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of selected points.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of selected points.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "side": { - "description": "Determines on which side of the position value the density function making up one half of a violin is plotted. Useful when comparing two violin traces under *overlay* mode, where one trace has `side` set to *positive* and the other to *negative*.", - "dflt": "both", - "editType": "calc", - "valType": "enumerated", - "values": [ - "both", - "positive", - "negative" - ] - }, - "span": { - "description": "Sets the span in data space for which the density function will be computed. Has an effect only when `spanmode` is set to *manual*.", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "any" - }, - { - "editType": "calc", - "valType": "any" - } - ], - "valType": "info_array" - }, - "spanmode": { - "description": "Sets the method by which the span in data space where the density function will be computed. *soft* means the span goes from the sample's minimum value minus two bandwidths to the sample's maximum value plus two bandwidths. *hard* means the span goes from the sample's minimum to its maximum value. For custom span settings, use mode *manual* and fill in the `span` attribute.", - "dflt": "soft", - "editType": "calc", - "valType": "enumerated", - "values": [ - "soft", - "hard", - "manual" - ] - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets the text elements associated with each sample value. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "violin", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "unselected": { - "editType": "style", - "marker": { - "color": { - "description": "Sets the marker color of unselected points, applied only when a selection exists.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "opacity": { - "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "size": { - "description": "Sets the marker size of unselected points, applied only when a selection exists.", - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "width": { - "description": "Sets the width of the violin in data coordinates. If *0* (default value) the width is automatically selected based on the positions of other violin traces in the same subplot.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "x": { - "description": "Sets the x sample data or coordinates. See overview for more info.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "x0": { - "description": "Sets the x coordinate for single-box traces or the starting coordinate for multi-box traces set using q1/median/q3. See overview for more info.", - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the y sample data or coordinates. See overview for more info.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "y0": { - "description": "Sets the y coordinate for single-box traces or the starting coordinate for multi-box traces set using q1/median/q3. See overview for more info.", - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - } - }, - "categories": [ - "cartesian", - "svg", - "symbols", - "oriented", - "box-violin", - "showLegend", - "violinLayout", - "zoomScale" - ], - "layoutAttributes": { - "violingap": { - "description": "Sets the gap (in plot fraction) between violins of adjacent location coordinates. Has no effect on traces that have *width* set.", - "dflt": 0.3, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "violingroupgap": { - "description": "Sets the gap (in plot fraction) between violins of the same location coordinate. Has no effect on traces that have *width* set.", - "dflt": 0.3, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "violinmode": { - "description": "Determines how violins at the same location coordinate are displayed on the graph. If *group*, the violins are plotted next to one another centered around the shared location. If *overlay*, the violins are plotted over one another, you might need to set *opacity* to see them multiple violins. Has no effect on traces that have *width* set.", - "dflt": "overlay", - "editType": "calc", - "valType": "enumerated", - "values": [ - "group", - "overlay" - ] - } - }, - "meta": { - "description": "In vertical (horizontal) violin plots, statistics are computed using `y` (`x`) values. By supplying an `x` (`y`) array, one violin per distinct x (y) value is drawn If no `x` (`y`) {array} is provided, a single violin is drawn. That violin position is then positioned with with `name` or with `x0` (`y0`) if provided." - }, - "type": "violin" - }, - "volume": { - "animatable": false, - "attributes": { - "autocolorscale": { - "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "caps": { - "editType": "calc", - "role": "object", - "x": { - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" + "sunburst": { + "animatable": true, + "attributes": { + "branchvalues": { + "description": "Determines how the items in `values` are summed. When set to *total*, items in `values` are taken to be value of all its descendants. When set to *remainder*, items in `values` corresponding to the root and the branches sectors are taken to be the extra part not part of the sum of the values at their leaves.", + "dflt": "remainder", + "editType": "calc", + "valType": "enumerated", + "values": [ + "remainder", + "total" + ] + }, + "count": { + "description": "Determines default for `values` when it is not provided, by inferring a 1 for each of the *leaves* and/or *branches*, otherwise 0.", + "dflt": "leaves", + "editType": "calc", + "flags": [ + "branches", + "leaves" + ], + "valType": "flaglist" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this sunburst trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "editType": "calc", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this sunburst trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this sunburst trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this sunburst trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "label+text+value+name", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "label", + "text", + "value", + "name", + "current path", + "percent root", + "percent entry", + "percent parent" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry` and `percentParent`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "anim": true, + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "insidetextfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `textinfo` lying inside the sector.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "insidetextorientation": { + "description": "Controls the orientation of the text inside chart sectors. When set to *auto*, text may be oriented in any direction in order to be as big as possible in the middle of a sector. The *horizontal* option orients text to be parallel with the bottom of the chart, and may make text smaller in order to achieve that goal. The *radial* option orients text along the radius of the sector. The *tangential* option orients text perpendicular to the radius of the sector.", + "dflt": "auto", + "editType": "plot", + "valType": "enumerated", + "values": [ + "horizontal", + "radial", + "tangential", + "auto" + ] + }, + "labels": { + "description": "Sets the labels of each of the sectors.", + "editType": "calc", + "valType": "data_array" + }, + "labelssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `labels`.", + "editType": "none", + "valType": "string" + }, + "leaf": { + "editType": "plot", + "opacity": { + "description": "Sets the opacity of the leaves. With colorscale it is defaulted to 1; otherwise it is defaulted to 0.7", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "level": { + "anim": true, + "description": "Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`.", + "editType": "plot", + "valType": "any" + }, + "marker": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if colors is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here colors) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if colors is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if colors is set to a numerical array. Value should have the same units as colors and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if colors is set to a numerical array. Value should have the same units as colors. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if colors is set to a numerical array. Value should have the same units as colors and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colors": { + "description": "Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors.", + "editType": "calc", + "valType": "data_array" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if colors is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `colors`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "line": { + "color": { + "arrayOk": true, + "description": "Sets the color of the line enclosing each sector. Defaults to the `paper_bgcolor` value.", + "dflt": null, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the line enclosing each sector.", + "dflt": 1, + "editType": "style", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "pattern": { + "bgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", + "editType": "style", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the pattern within the marker.", + "editType": "style", + "fgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", + "editType": "style", + "valType": "color" + }, + "fgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", + "editType": "none", + "valType": "string" + }, + "fgopacity": { + "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "fillmode": { + "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", + "dflt": "replace", + "editType": "style", + "valType": "enumerated", + "values": [ + "replace", + "overlay" + ] + }, + "path": { + "arrayOk": true, + "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", + "editType": "style", + "valType": "string" + }, + "pathsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `path`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shape": { + "arrayOk": true, + "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", + "dflt": "", + "editType": "style", + "valType": "enumerated", + "values": [ + "", + "/", + "\\", + "x", + "-", + "|", + "+", + "." + ] + }, + "shapesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shape`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", + "dflt": 8, + "editType": "style", + "min": 0, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "solidity": { + "arrayOk": true, + "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", + "dflt": 0.3, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "soliditysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", + "editType": "none", + "valType": "string" + } + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if colors is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if colors is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "maxdepth": { + "description": "Sets the number of rendered sectors from any given `level`. Set `maxdepth` to *-1* to render all the levels in the hierarchy.", + "dflt": -1, + "editType": "plot", + "valType": "integer" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "outsidetextfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `textinfo` lying outside the sector. This option refers to the root of the hierarchy presented at the center of a sunburst graph. Please note that if a hierarchy has multiple root nodes, this option won't have any effect and `insidetextfont` would be used.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "parents": { + "description": "Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique.", + "editType": "calc", + "valType": "data_array" + }, + "parentssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `parents`.", + "editType": "none", + "valType": "string" + }, + "root": { + "color": { + "description": "sets the color of the root node for a sunburst/treemap/icicle trace. this has no effect when a colorscale is used to set the markers.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object" + }, + "rotation": { + "description": "Rotates the whole diagram counterclockwise by some angle. By default the first slice starts at 3 o'clock.", + "dflt": 0, + "editType": "plot", + "valType": "angle" + }, + "sort": { + "description": "Determines whether or not the sectors are reordered from largest to smallest.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "editType": "plot", + "valType": "data_array" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `textinfo`.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textinfo": { + "description": "Determines which trace information appear on the graph.", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "label", + "text", + "value", + "current path", + "percent root", + "percent entry", + "percent parent" + ], + "valType": "flaglist" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry`, `percentParent`, `label` and `value`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "type": "sunburst", + "uid": { + "anim": true, + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "values": { + "description": "Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed.", + "editType": "calc", + "valType": "data_array" + }, + "valuessrc": { + "description": "Sets the source reference on Chart Studio Cloud for `values`.", + "editType": "none", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "role": "object", - "show": { - "description": "Sets the fill ratio of the `slices`. The default fill value of the x `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - }, - "y": { - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" + "categories": [], + "layoutAttributes": { + "extendsunburstcolors": { + "description": "If `true`, the sunburst slice colors (whether given by `sunburstcolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "sunburstcolorway": { + "description": "Sets the default sunburst slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendsunburstcolors`.", + "editType": "calc", + "valType": "colorlist" + } }, - "role": "object", - "show": { - "description": "Sets the fill ratio of the `slices`. The default fill value of the y `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - }, - "z": { - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" + "meta": { + "description": "Visualize hierarchal data spanning outward radially from root to leaves. The sunburst sectors are determined by the entries in *labels* or *ids* and in *parents*." }, - "role": "object", - "show": { - "description": "Sets the fill ratio of the `slices`. The default fill value of the z `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - } - }, - "cauto": { - "description": "Determines whether or not the color domain is computed with respect to the input data (here `value`) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "valType": "boolean" - }, - "cmax": { - "description": "Sets the upper bound of the color domain. Value should have the same units as `value` and if set, `cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" + "type": "sunburst" }, - "cmid": { - "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `value`. Has no effect when `cauto` is `false`.", - "dflt": null, - "editType": "calc", - "impliedEdits": {}, - "valType": "number" - }, - "cmin": { - "description": "Sets the lower bound of the color domain. Value should have the same units as `value` and if set, `cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "valType": "number" - }, - "coloraxis": { - "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", - "dflt": null, - "editType": "calc", - "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", - "valType": "subplotid" - }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "editType": "calc", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", - "dflt": "B", - "editType": "calc", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B", - "SI extended" - ] - }, - "labelalias": { - "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", - "dflt": false, - "editType": "calc", - "valType": "any" - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minexponent": { - "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", - "dflt": 3, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "calc", - "min": 0, - "valType": "integer" - }, - "orientation": { - "description": "Sets the orientation of the colorbar.", - "dflt": "v", - "editType": "calc", - "valType": "enumerated", - "values": [ - "h", - "v" - ] - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "calc", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "calc", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "calc", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" + "surface": { + "animatable": false, + "attributes": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": false, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here z or surfacecolor) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as z or surfacecolor and if set, `cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as z or surfacecolor. Has no effect when `cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as z or surfacecolor and if set, `cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "calc", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "calc", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "calc", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "calc", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "calc", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "calc", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "calc", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data are filled in.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "contours": { + "editType": "calc", + "role": "object", + "x": { + "color": { + "description": "Sets the color of the contour lines.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "end": { + "description": "Sets the end contour level value. Must be more than `contours.start`", + "dflt": null, + "editType": "calc", + "valType": "number" + }, + "highlight": { + "description": "Determines whether or not contour lines about the x dimension are highlighted on hover.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "highlightcolor": { + "description": "Sets the color of the highlighted contour lines.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "highlightwidth": { + "description": "Sets the width of the highlighted contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "valType": "number" + }, + "project": { + "editType": "calc", + "role": "object", + "x": { + "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "y": { + "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "z": { + "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "role": "object", + "show": { + "description": "Determines whether or not contour lines about the x dimension are drawn.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "description": "Sets the step between each contour level. Must be positive.", + "dflt": null, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "start": { + "description": "Sets the starting contour level value. Must be less than `contours.end`", + "dflt": null, + "editType": "calc", + "valType": "number" + }, + "usecolormap": { + "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width of the contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "valType": "number" + } + }, + "y": { + "color": { + "description": "Sets the color of the contour lines.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "end": { + "description": "Sets the end contour level value. Must be more than `contours.start`", + "dflt": null, + "editType": "calc", + "valType": "number" + }, + "highlight": { + "description": "Determines whether or not contour lines about the y dimension are highlighted on hover.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "highlightcolor": { + "description": "Sets the color of the highlighted contour lines.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "highlightwidth": { + "description": "Sets the width of the highlighted contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "valType": "number" + }, + "project": { + "editType": "calc", + "role": "object", + "x": { + "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "y": { + "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "z": { + "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "role": "object", + "show": { + "description": "Determines whether or not contour lines about the y dimension are drawn.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "description": "Sets the step between each contour level. Must be positive.", + "dflt": null, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "start": { + "description": "Sets the starting contour level value. Must be less than `contours.end`", + "dflt": null, + "editType": "calc", + "valType": "number" + }, + "usecolormap": { + "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width of the contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "valType": "number" + } + }, + "z": { + "color": { + "description": "Sets the color of the contour lines.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "end": { + "description": "Sets the end contour level value. Must be more than `contours.start`", + "dflt": null, + "editType": "calc", + "valType": "number" + }, + "highlight": { + "description": "Determines whether or not contour lines about the z dimension are highlighted on hover.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "highlightcolor": { + "description": "Sets the color of the highlighted contour lines.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "highlightwidth": { + "description": "Sets the width of the highlighted contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "valType": "number" + }, + "project": { + "editType": "calc", + "role": "object", + "x": { + "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "y": { + "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "z": { + "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "role": "object", + "show": { + "description": "Determines whether or not contour lines about the z dimension are drawn.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "description": "Sets the step between each contour level. Must be positive.", + "dflt": null, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "start": { + "description": "Sets the starting contour level value. Must be less than `contours.end`", + "dflt": null, + "editType": "calc", + "valType": "number" + }, + "usecolormap": { + "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width of the contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "valType": "number" + } + } + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "hidesurface": { + "description": "Determines whether or not a surface is drawn. For example, set `hidesurface` to *false* `contours.x.show` to *true* and `contours.y.show` to *true* to draw a wire frame plot.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "lighting": { + "ambient": { + "description": "Ambient light increases overall color visibility but can wash out the image.", + "dflt": 0.8, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "diffuse": { + "description": "Represents the extent that incident rays are reflected in a range of angles.", + "dflt": 0.8, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "editType": "calc", + "fresnel": { + "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", + "dflt": 0.2, + "editType": "calc", + "max": 5, + "min": 0, + "valType": "number" + }, + "role": "object", + "roughness": { + "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", + "dflt": 0.5, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "specular": { + "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", + "dflt": 0.05, + "editType": "calc", + "max": 2, + "min": 0, + "valType": "number" + } + }, + "lightposition": { + "editType": "calc", + "role": "object", + "x": { + "description": "Numeric vector, representing the X coordinate for each vertex.", + "dflt": 10, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + }, + "y": { + "description": "Numeric vector, representing the Y coordinate for each vertex.", + "dflt": 10000, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + }, + "z": { + "description": "Numeric vector, representing the Z coordinate for each vertex.", + "dflt": 0, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacityscale": { + "description": "Sets the opacityscale. The opacityscale must be an array containing arrays mapping a normalized value to an opacity value. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have higher opacity values and those in the middle would be more transparent Alternatively, `opacityscale` may be a palette name string of the following list: 'min', 'max', 'extremes' and 'uniform'. The default is 'uniform'.", + "editType": "calc", + "valType": "any" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "scene": { + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "surfacecolor": { + "description": "Sets the surface color values, used for setting a color scale independent of `z`.", + "editType": "calc", + "valType": "data_array" + }, + "surfacecolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `surfacecolor`.", + "editType": "none", + "valType": "string" + }, + "text": { + "arrayOk": true, + "description": "Sets the text elements associated with each z value. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "type": "surface", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "z": { + "description": "Sets the z coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "zcalendar": { + "description": "Sets the calendar system to use with `z` date data.", + "dflt": "gregorian", + "editType": "calc", + "valType": "enumerated", + "values": [ + "chinese", + "coptic", + "discworld", + "ethiopian", + "gregorian", + "hebrew", + "islamic", + "jalali", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "taiwan", + "thai", + "ummalqura" + ] + }, + "zhoverformat": { + "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `zaxis.hoverformat`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" + "categories": [ + "gl3d", + "2dMap", + "showLegend" + ], + "meta": { + "description": "The data the describes the coordinates of the surface is set in `z`. Data in `z` should be a {2D array}. Coordinates in `x` and `y` can either be 1D {arrays} or {2D arrays} (e.g. to graph parametric surfaces). If not provided in `x` and `y`, the x and y coordinates are assumed to be linear starting at 0 with a unit step. The color scale corresponds to the `z` values by default. For custom color scales, use `surfacecolor` which should be a {2D array}, where its bounds can be controlled using `cmin` and `cmax`." + }, + "type": "surface" + }, + "table": { + "animatable": false, + "attributes": { + "cells": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", + "dflt": "center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "fill": { + "color": { + "arrayOk": true, + "description": "Sets the cell fill color. It accepts either a specific color or an array of colors or a 2D array of colors.", + "dflt": "white", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object" + }, + "font": { + "color": { + "arrayOk": true, + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "format": { + "description": "Sets the cell value formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "formatsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `format`.", + "editType": "none", + "valType": "string" + }, + "height": { + "description": "The height of cells.", + "dflt": 20, + "editType": "calc", + "valType": "number" + }, + "line": { + "color": { + "arrayOk": true, + "dflt": "grey", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "width": { + "arrayOk": true, + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "prefix": { + "arrayOk": true, + "description": "Prefix for cell values.", + "dflt": null, + "editType": "calc", + "valType": "string" + }, + "prefixsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `prefix`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "suffix": { + "arrayOk": true, + "description": "Suffix for cell values.", + "dflt": null, + "editType": "calc", + "valType": "string" + }, + "suffixsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `suffix`.", + "editType": "none", + "valType": "string" + }, + "values": { + "description": "Cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "valuessrc": { + "description": "Sets the source reference on Chart Studio Cloud for `values`.", + "editType": "none", + "valType": "string" + } + }, + "columnorder": { + "description": "Specifies the rendered order of the data columns; for example, a value `2` at position `0` means that column index `0` in the data will be rendered as the third column, as columns have an index base of zero.", + "editType": "calc", + "valType": "data_array" + }, + "columnordersrc": { + "description": "Sets the source reference on Chart Studio Cloud for `columnorder`.", + "editType": "none", + "valType": "string" + }, + "columnwidth": { + "arrayOk": true, + "description": "The width of columns expressed as a ratio. Columns fill the available width in proportion of their specified column widths.", + "dflt": null, + "editType": "calc", + "valType": "number" + }, + "columnwidthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `columnwidth`.", + "editType": "none", + "valType": "string" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this table trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "editType": "calc", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this table trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this table trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this table trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } + }, + "editType": "calc", + "header": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", + "dflt": "center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "fill": { + "color": { + "arrayOk": true, + "description": "Sets the cell fill color. It accepts either a specific color or an array of colors or a 2D array of colors.", + "dflt": "white", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object" + }, + "font": { + "color": { + "arrayOk": true, + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "format": { + "description": "Sets the cell value formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "formatsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `format`.", + "editType": "none", + "valType": "string" + }, + "height": { + "description": "The height of cells.", + "dflt": 28, + "editType": "calc", + "valType": "number" + }, + "line": { + "color": { + "arrayOk": true, + "dflt": "grey", + "editType": "calc", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "width": { + "arrayOk": true, + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "prefix": { + "arrayOk": true, + "description": "Prefix for cell values.", + "dflt": null, + "editType": "calc", + "valType": "string" + }, + "prefixsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `prefix`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "suffix": { + "arrayOk": true, + "description": "Suffix for cell values.", + "dflt": null, + "editType": "calc", + "valType": "string" + }, + "suffixsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `suffix`.", + "editType": "none", + "valType": "string" + }, + "values": { + "description": "Header cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "valuessrc": { + "description": "Sets the source reference on Chart Studio Cloud for `values`.", + "editType": "none", + "valType": "string" + } + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "type": "table", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" + "categories": [ + "noOpacity" + ], + "meta": { + "description": "Table view for detailed data viewing. The data are arranged in a grid of rows and columns. Most styling can be specified for columns, rows or individual cells. Table is using a column-major order, ie. the grid is represented as a vector of column vectors." }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "type": "table" + }, + "treemap": { + "animatable": true, + "attributes": { + "branchvalues": { + "description": "Determines how the items in `values` are summed. When set to *total*, items in `values` are taken to be value of all its descendants. When set to *remainder*, items in `values` corresponding to the root and the branches sectors are taken to be the extra part not part of the sum of the values at their leaves.", + "dflt": "remainder", + "editType": "calc", + "valType": "enumerated", + "values": [ + "remainder", + "total" + ] + }, + "count": { + "description": "Determines default for `values` when it is not provided, by inferring a 1 for each of the *leaves* and/or *branches*, otherwise 0.", + "dflt": "leaves", + "editType": "calc", + "flags": [ + "branches", + "leaves" + ], + "valType": "flaglist" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "domain": { + "column": { + "description": "If there is a layout grid, use the domain for this column in the grid for this treemap trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "editType": "calc", + "role": "object", + "row": { + "description": "If there is a layout grid, use the domain for this row in the grid for this treemap trace .", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "x": { + "description": "Sets the horizontal domain of this treemap trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this treemap trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "valType": "info_array" + } + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "label+text+value+name", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "label", + "text", + "value", + "name", + "current path", + "percent root", + "percent entry", + "percent parent" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry` and `percentParent`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "anim": true, + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "insidetextfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `textinfo` lying inside the sector.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "labels": { + "description": "Sets the labels of each of the sectors.", + "editType": "calc", + "valType": "data_array" + }, + "labelssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `labels`.", + "editType": "none", + "valType": "string" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "level": { + "anim": true, + "description": "Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`.", + "editType": "plot", + "valType": "any" + }, + "marker": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if colors is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here colors) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if colors is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Has an effect only if colors is set to a numerical array. Value should have the same units as colors and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if colors is set to a numerical array. Value should have the same units as colors. Has no effect when `marker.cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Has an effect only if colors is set to a numerical array. Value should have the same units as colors and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "colorbars", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "colorbars", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "colorbars", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "colorbars", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "colorbars", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "colorbars", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "colorbars", + "font": { + "color": { + "editType": "colorbars", + "valType": "color" + }, + "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.", + "editType": "colorbars", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "colorbars", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "colorbars", + "valType": "string" + }, + "size": { + "editType": "colorbars", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "colorbars", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "colorbars", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "colorbars", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colors": { + "description": "Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors.", + "editType": "calc", + "valType": "data_array" + }, + "colorscale": { + "description": "Sets the colorscale. Has an effect only if colors is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "colorssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `colors`.", + "editType": "none", + "valType": "string" + }, + "cornerradius": { + "description": "Sets the maximum rounding of corners (in px).", + "dflt": 0, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "depthfade": { + "description": "Determines if the sector colors are faded towards the background from the leaves up to the headers. This option is unavailable when a `colorscale` is present, defaults to false when `marker.colors` is set, but otherwise defaults to true. When set to *reversed*, the fading direction is inverted, that is the top elements within hierarchy are drawn with fully saturated colors while the leaves are faded towards the background color.", + "editType": "style", + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ] + }, + "editType": "calc", + "line": { + "color": { + "arrayOk": true, + "description": "Sets the color of the line enclosing each sector. Defaults to the `paper_bgcolor` value.", + "dflt": null, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the line enclosing each sector.", + "dflt": 1, + "editType": "style", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + } + }, + "pad": { + "b": { + "description": "Sets the padding form the bottom (in px).", + "editType": "plot", + "min": 0, + "valType": "number" + }, + "editType": "calc", + "l": { + "description": "Sets the padding form the left (in px).", + "editType": "plot", + "min": 0, + "valType": "number" + }, + "r": { + "description": "Sets the padding form the right (in px).", + "editType": "plot", + "min": 0, + "valType": "number" + }, + "role": "object", + "t": { + "description": "Sets the padding form the top (in px).", + "editType": "plot", + "min": 0, + "valType": "number" + } + }, + "pattern": { + "bgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of background pattern fill. Defaults to a `marker.color` background when `fillmode` is *overlay*. Otherwise, defaults to a transparent background.", + "editType": "style", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the pattern within the marker.", + "editType": "style", + "fgcolor": { + "arrayOk": true, + "description": "When there is no colorscale sets the color of foreground pattern fill. Defaults to a `marker.color` background when `fillmode` is *replace*. Otherwise, defaults to dark grey or white to increase contrast with the `bgcolor`.", + "editType": "style", + "valType": "color" + }, + "fgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `fgcolor`.", + "editType": "none", + "valType": "string" + }, + "fgopacity": { + "description": "Sets the opacity of the foreground pattern fill. Defaults to a 0.5 when `fillmode` is *overlay*. Otherwise, defaults to 1.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "fillmode": { + "description": "Determines whether `marker.color` should be used as a default to `bgcolor` or a `fgcolor`.", + "dflt": "replace", + "editType": "style", + "valType": "enumerated", + "values": [ + "replace", + "overlay" + ] + }, + "path": { + "arrayOk": true, + "description": "Sets a custom path for pattern fill. Use with no `shape` or `solidity`, provide an SVG path string for the regions of the square from (0,0) to (`size`,`size`) to color.", + "editType": "style", + "valType": "string" + }, + "pathsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `path`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shape": { + "arrayOk": true, + "description": "Sets the shape of the pattern fill. By default, no pattern is used for filling the area.", + "dflt": "", + "editType": "style", + "valType": "enumerated", + "values": [ + "", + "/", + "\\", + "x", + "-", + "|", + "+", + "." + ] + }, + "shapesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shape`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "description": "Sets the size of unit squares of the pattern fill in pixels, which corresponds to the interval of repetition of the pattern.", + "dflt": 8, + "editType": "style", + "min": 0, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "solidity": { + "arrayOk": true, + "description": "Sets the solidity of the pattern fill. Solidity is roughly the fraction of the area filled by the pattern. Solidity of 0 shows only the background color without pattern and solidty of 1 shows only the foreground color without pattern.", + "dflt": 0.3, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "soliditysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `solidity`.", + "editType": "none", + "valType": "string" + } + }, + "reversescale": { + "description": "Reverses the color mapping if true. Has an effect only if colors is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if colors is set to a numerical array.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "maxdepth": { + "description": "Sets the number of rendered sectors from any given `level`. Set `maxdepth` to *-1* to render all the levels in the hierarchy.", + "dflt": -1, + "editType": "plot", + "valType": "integer" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "outsidetextfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `textinfo` lying outside the sector. This option refers to the root of the hierarchy presented on top left corner of a treemap graph. Please note that if a hierarchy has multiple root nodes, this option won't have any effect and `insidetextfont` would be used.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "parents": { + "description": "Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique.", + "editType": "calc", + "valType": "data_array" + }, + "parentssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `parents`.", + "editType": "none", + "valType": "string" + }, + "pathbar": { + "edgeshape": { + "description": "Determines which shape is used for edges between `barpath` labels.", + "dflt": ">", + "editType": "plot", + "valType": "enumerated", + "values": [ + ">", + "<", + "|", + "/", + "\\" + ] + }, + "editType": "calc", + "role": "object", + "side": { + "description": "Determines on which side of the the treemap the `pathbar` should be presented.", + "dflt": "top", + "editType": "plot", + "valType": "enumerated", + "values": [ + "top", + "bottom" + ] + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used inside `pathbar`.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "thickness": { + "description": "Sets the thickness of `pathbar` (in px). If not specified the `pathbar.textfont.size` is used with 3 pixles extra padding on each side.", + "editType": "plot", + "min": 12, + "valType": "number" + }, + "visible": { + "description": "Determines if the path bar is drawn i.e. outside the trace `domain` and with one pixel gap.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + } + }, + "root": { + "color": { + "description": "sets the color of the root node for a sunburst/treemap/icicle trace. this has no effect when a colorscale is used to set the markers.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object" + }, + "sort": { + "description": "Determines whether or not the sectors are reordered from largest to smallest.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "editType": "plot", + "valType": "data_array" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "plot", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `textinfo`.", + "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.", + "editType": "plot", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "plot", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "plot", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "plot", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "plot", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textinfo": { + "description": "Determines which trace information appear on the graph.", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "label", + "text", + "value", + "current path", + "percent root", + "percent entry", + "percent parent" + ], + "valType": "flaglist" + }, + "textposition": { + "description": "Sets the positions of the `text` elements.", + "dflt": "top left", + "editType": "plot", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry`, `percentParent`, `label` and `value`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "tiling": { + "editType": "calc", + "flip": { + "description": "Determines if the positions obtained from solver are flipped on each axis.", + "dflt": "", + "editType": "plot", + "flags": [ + "x", + "y" + ], + "valType": "flaglist" + }, + "packing": { + "description": "Determines d3 treemap solver. For more info please refer to https://github.com/d3/d3-hierarchy#treemap-tiling", + "dflt": "squarify", + "editType": "plot", + "valType": "enumerated", + "values": [ + "squarify", + "binary", + "dice", + "slice", + "slice-dice", + "dice-slice" + ] + }, + "pad": { + "description": "Sets the inner padding (in px).", + "dflt": 3, + "editType": "plot", + "min": 0, + "valType": "number" + }, + "role": "object", + "squarifyratio": { + "description": "When using *squarify* `packing` algorithm, according to https://github.com/d3/d3-hierarchy/blob/v3.1.1/README.md#squarify_ratio this option specifies the desired aspect ratio of the generated rectangles. The ratio must be specified as a number greater than or equal to one. Note that the orientation of the generated rectangles (tall or wide) is not implied by the ratio; for example, a ratio of two will attempt to produce a mixture of rectangles whose width:height ratio is either 2:1 or 1:2. When using *squarify*, unlike d3 which uses the Golden Ratio i.e. 1.618034, Plotly applies 1 to increase squares in treemap layouts.", + "dflt": 1, + "editType": "plot", + "min": 1, + "valType": "number" + } + }, + "type": "treemap", + "uid": { + "anim": true, + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "values": { + "description": "Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed.", + "editType": "calc", + "valType": "data_array" + }, + "valuessrc": { + "description": "Sets the source reference on Chart Studio Cloud for `values`.", + "editType": "none", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "categories": [], + "layoutAttributes": { + "extendtreemapcolors": { + "description": "If `true`, the treemap slice colors (whether given by `treemapcolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "treemapcolorway": { + "description": "Sets the default treemap slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendtreemapcolors`.", + "editType": "calc", + "valType": "colorlist" + } }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "meta": { + "description": "Visualize hierarchal data from leaves (and/or outer branches) towards root with rectangles. The treemap sectors are determined by the entries in *labels* or *ids* and in *parents*." }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "any" - }, - { - "editType": "calc", - "valType": "any" + "type": "treemap" + }, + "violin": { + "animatable": false, + "attributes": { + "alignmentgroup": { + "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "bandwidth": { + "description": "Sets the bandwidth used to compute the kernel density estimate. By default, the bandwidth is determined by Silverman's rule of thumb.", + "editType": "calc", + "min": 0, + "valType": "number" + }, + "box": { + "editType": "plot", + "fillcolor": { + "description": "Sets the inner box plot fill color.", + "editType": "style", + "valType": "color" + }, + "line": { + "color": { + "description": "Sets the inner box plot bounding line color.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object", + "width": { + "description": "Sets the inner box plot bounding line width.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "visible": { + "description": "Determines if an miniature box plot is drawn inside the violins. ", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "width": { + "description": "Sets the width of the inner box plots relative to the violins' width. For example, with 1, the inner box plots are as wide as the violins.", + "dflt": 0.25, + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "style", + "valType": "color" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hoveron": { + "description": "Do the hover effects highlight individual violins or sample points or the kernel density estimate or any combination of them?", + "dflt": "violins+points+kde", + "editType": "style", + "extras": [ + "all" + ], + "flags": [ + "violins", + "points", + "kde" + ], + "valType": "flaglist" + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "jitter": { + "description": "Sets the amount of jitter in the sample points drawn. If *0*, the sample points align along the distribution axis. If *1*, the sample points are drawn in a random jitter of width equal to the width of the violins.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "color": { + "description": "Sets the color of line bounding the violin(s).", + "editType": "style", + "valType": "color" + }, + "editType": "plot", + "role": "object", + "width": { + "description": "Sets the width (in px) of line bounding the violin(s).", + "dflt": 2, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "marker": { + "angle": { + "arrayOk": false, + "description": "Sets the marker angle in respect to `angleref`.", + "dflt": 0, + "editType": "calc", + "valType": "angle" + }, + "color": { + "arrayOk": false, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "style", + "valType": "color" + }, + "editType": "plot", + "line": { + "color": { + "arrayOk": false, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "dflt": "#444", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "outliercolor": { + "description": "Sets the border line color of the outlier sample points. Defaults to marker.color", + "editType": "style", + "valType": "color" + }, + "outlierwidth": { + "description": "Sets the border line width (in px) of the outlier sample points.", + "dflt": 1, + "editType": "style", + "min": 0, + "valType": "number" + }, + "role": "object", + "width": { + "arrayOk": false, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "opacity": { + "arrayOk": false, + "description": "Sets the marker opacity.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "outliercolor": { + "description": "Sets the color of the outlier sample points.", + "dflt": "rgba(0, 0, 0, 0)", + "editType": "style", + "valType": "color" + }, + "role": "object", + "size": { + "arrayOk": false, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "symbol": { + "arrayOk": false, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "plot", + "valType": "enumerated", + "values": [ + 0, + "0", + "circle", + 100, + "100", + "circle-open", + 200, + "200", + "circle-dot", + 300, + "300", + "circle-open-dot", + 1, + "1", + "square", + 101, + "101", + "square-open", + 201, + "201", + "square-dot", + 301, + "301", + "square-open-dot", + 2, + "2", + "diamond", + 102, + "102", + "diamond-open", + 202, + "202", + "diamond-dot", + 302, + "302", + "diamond-open-dot", + 3, + "3", + "cross", + 103, + "103", + "cross-open", + 203, + "203", + "cross-dot", + 303, + "303", + "cross-open-dot", + 4, + "4", + "x", + 104, + "104", + "x-open", + 204, + "204", + "x-dot", + 304, + "304", + "x-open-dot", + 5, + "5", + "triangle-up", + 105, + "105", + "triangle-up-open", + 205, + "205", + "triangle-up-dot", + 305, + "305", + "triangle-up-open-dot", + 6, + "6", + "triangle-down", + 106, + "106", + "triangle-down-open", + 206, + "206", + "triangle-down-dot", + 306, + "306", + "triangle-down-open-dot", + 7, + "7", + "triangle-left", + 107, + "107", + "triangle-left-open", + 207, + "207", + "triangle-left-dot", + 307, + "307", + "triangle-left-open-dot", + 8, + "8", + "triangle-right", + 108, + "108", + "triangle-right-open", + 208, + "208", + "triangle-right-dot", + 308, + "308", + "triangle-right-open-dot", + 9, + "9", + "triangle-ne", + 109, + "109", + "triangle-ne-open", + 209, + "209", + "triangle-ne-dot", + 309, + "309", + "triangle-ne-open-dot", + 10, + "10", + "triangle-se", + 110, + "110", + "triangle-se-open", + 210, + "210", + "triangle-se-dot", + 310, + "310", + "triangle-se-open-dot", + 11, + "11", + "triangle-sw", + 111, + "111", + "triangle-sw-open", + 211, + "211", + "triangle-sw-dot", + 311, + "311", + "triangle-sw-open-dot", + 12, + "12", + "triangle-nw", + 112, + "112", + "triangle-nw-open", + 212, + "212", + "triangle-nw-dot", + 312, + "312", + "triangle-nw-open-dot", + 13, + "13", + "pentagon", + 113, + "113", + "pentagon-open", + 213, + "213", + "pentagon-dot", + 313, + "313", + "pentagon-open-dot", + 14, + "14", + "hexagon", + 114, + "114", + "hexagon-open", + 214, + "214", + "hexagon-dot", + 314, + "314", + "hexagon-open-dot", + 15, + "15", + "hexagon2", + 115, + "115", + "hexagon2-open", + 215, + "215", + "hexagon2-dot", + 315, + "315", + "hexagon2-open-dot", + 16, + "16", + "octagon", + 116, + "116", + "octagon-open", + 216, + "216", + "octagon-dot", + 316, + "316", + "octagon-open-dot", + 17, + "17", + "star", + 117, + "117", + "star-open", + 217, + "217", + "star-dot", + 317, + "317", + "star-open-dot", + 18, + "18", + "hexagram", + 118, + "118", + "hexagram-open", + 218, + "218", + "hexagram-dot", + 318, + "318", + "hexagram-open-dot", + 19, + "19", + "star-triangle-up", + 119, + "119", + "star-triangle-up-open", + 219, + "219", + "star-triangle-up-dot", + 319, + "319", + "star-triangle-up-open-dot", + 20, + "20", + "star-triangle-down", + 120, + "120", + "star-triangle-down-open", + 220, + "220", + "star-triangle-down-dot", + 320, + "320", + "star-triangle-down-open-dot", + 21, + "21", + "star-square", + 121, + "121", + "star-square-open", + 221, + "221", + "star-square-dot", + 321, + "321", + "star-square-open-dot", + 22, + "22", + "star-diamond", + 122, + "122", + "star-diamond-open", + 222, + "222", + "star-diamond-dot", + 322, + "322", + "star-diamond-open-dot", + 23, + "23", + "diamond-tall", + 123, + "123", + "diamond-tall-open", + 223, + "223", + "diamond-tall-dot", + 323, + "323", + "diamond-tall-open-dot", + 24, + "24", + "diamond-wide", + 124, + "124", + "diamond-wide-open", + 224, + "224", + "diamond-wide-dot", + 324, + "324", + "diamond-wide-open-dot", + 25, + "25", + "hourglass", + 125, + "125", + "hourglass-open", + 26, + "26", + "bowtie", + 126, + "126", + "bowtie-open", + 27, + "27", + "circle-cross", + 127, + "127", + "circle-cross-open", + 28, + "28", + "circle-x", + 128, + "128", + "circle-x-open", + 29, + "29", + "square-cross", + 129, + "129", + "square-cross-open", + 30, + "30", + "square-x", + 130, + "130", + "square-x-open", + 31, + "31", + "diamond-cross", + 131, + "131", + "diamond-cross-open", + 32, + "32", + "diamond-x", + 132, + "132", + "diamond-x-open", + 33, + "33", + "cross-thin", + 133, + "133", + "cross-thin-open", + 34, + "34", + "x-thin", + 134, + "134", + "x-thin-open", + 35, + "35", + "asterisk", + 135, + "135", + "asterisk-open", + 36, + "36", + "hash", + 136, + "136", + "hash-open", + 236, + "236", + "hash-dot", + 336, + "336", + "hash-open-dot", + 37, + "37", + "y-up", + 137, + "137", + "y-up-open", + 38, + "38", + "y-down", + 138, + "138", + "y-down-open", + 39, + "39", + "y-left", + 139, + "139", + "y-left-open", + 40, + "40", + "y-right", + 140, + "140", + "y-right-open", + 41, + "41", + "line-ew", + 141, + "141", + "line-ew-open", + 42, + "42", + "line-ns", + 142, + "142", + "line-ns-open", + 43, + "43", + "line-ne", + 143, + "143", + "line-ne-open", + 44, + "44", + "line-nw", + 144, + "144", + "line-nw-open", + 45, + "45", + "arrow-up", + 145, + "145", + "arrow-up-open", + 46, + "46", + "arrow-down", + 146, + "146", + "arrow-down-open", + 47, + "47", + "arrow-left", + 147, + "147", + "arrow-left-open", + 48, + "48", + "arrow-right", + 148, + "148", + "arrow-right-open", + 49, + "49", + "arrow-bar-up", + 149, + "149", + "arrow-bar-up-open", + 50, + "50", + "arrow-bar-down", + 150, + "150", + "arrow-bar-down-open", + 51, + "51", + "arrow-bar-left", + 151, + "151", + "arrow-bar-left-open", + 52, + "52", + "arrow-bar-right", + 152, + "152", + "arrow-bar-right-open", + 53, + "53", + "arrow", + 153, + "153", + "arrow-open", + 54, + "54", + "arrow-wide", + 154, + "154", + "arrow-wide-open" + ] + } + }, + "meanline": { + "color": { + "description": "Sets the mean line color.", + "editType": "style", + "valType": "color" + }, + "editType": "plot", + "role": "object", + "visible": { + "description": "Determines if a line corresponding to the sample's mean is shown inside the violins. If `box.visible` is turned on, the mean line is drawn inside the inner box. Otherwise, the mean line is drawn from one side of the violin to other.", + "dflt": false, + "editType": "plot", + "valType": "boolean" + }, + "width": { + "description": "Sets the mean line width.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover. For violin traces, the name will also be used for the position coordinate, if `x` and `x0` (`y` and `y0` if horizontal) are missing and the position axis is categorical. Note that the trace name is also used as a default value for attribute `scalegroup` (please see its description for details).", + "editType": "calc+clearAxisTypes", + "valType": "string" + }, + "offsetgroup": { + "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "orientation": { + "description": "Sets the orientation of the violin(s). If *v* (*h*), the distribution is visualized along the vertical (horizontal).", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "v", + "h" + ] + }, + "pointpos": { + "description": "Sets the position of the sample points in relation to the violins. If *0*, the sample points are places over the center of the violins. Positive (negative) values correspond to positions to the right (left) for vertical violins and above (below) for horizontal violins.", + "editType": "calc", + "max": 2, + "min": -2, + "valType": "number" + }, + "points": { + "description": "If *outliers*, only the sample points lying outside the whiskers are shown If *suspectedoutliers*, the outlier points are shown and points either less than 4*Q1-3*Q3 or greater than 4*Q3-3*Q1 are highlighted (see `outliercolor`) If *all*, all sample points are shown If *false*, only the violins are shown with no sample points. Defaults to *suspectedoutliers* when `marker.outliercolor` or `marker.line.outliercolor` is set, otherwise defaults to *outliers*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "outliers", + "suspectedoutliers", + false + ] + }, + "quartilemethod": { + "description": "Sets the method used to compute the sample's Q1 and Q3 quartiles. The *linear* method uses the 25th percentile for Q1 and 75th percentile for Q3 as computed using method #10 (listed on http://jse.amstat.org/v14n3/langford.html). The *exclusive* method uses the median to divide the ordered dataset into two halves if the sample is odd, it does not include the median in either half - Q1 is then the median of the lower half and Q3 the median of the upper half. The *inclusive* method also uses the median to divide the ordered dataset into two halves but if the sample is odd, it includes the median in both halves - Q1 is then the median of the lower half and Q3 the median of the upper half.", + "dflt": "linear", + "editType": "calc", + "valType": "enumerated", + "values": [ + "linear", + "exclusive", + "inclusive" + ] + }, + "scalegroup": { + "description": "If there are multiple violins that should be sized according to to some metric (see `scalemode`), link them by providing a non-empty group id here shared by every trace in the same group. If a violin's `width` is undefined, `scalegroup` will default to the trace's name. In this case, violins with the same names will be linked together", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "scalemode": { + "description": "Sets the metric by which the width of each violin is determined. *width* means each violin has the same (max) width *count* means the violins are scaled by the number of sample points making up each violin.", + "dflt": "width", + "editType": "calc", + "valType": "enumerated", + "values": [ + "width", + "count" + ] + }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "side": { + "description": "Determines on which side of the position value the density function making up one half of a violin is plotted. Useful when comparing two violin traces under *overlay* mode, where one trace has `side` set to *positive* and the other to *negative*.", + "dflt": "both", + "editType": "calc", + "valType": "enumerated", + "values": [ + "both", + "positive", + "negative" + ] + }, + "span": { + "description": "Sets the span in data space for which the density function will be computed. Has an effect only when `spanmode` is set to *manual*.", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "spanmode": { + "description": "Sets the method by which the span in data space where the density function will be computed. *soft* means the span goes from the sample's minimum value minus two bandwidths to the sample's maximum value plus two bandwidths. *hard* means the span goes from the sample's minimum to its maximum value. For custom span settings, use mode *manual* and fill in the `span` attribute.", + "dflt": "soft", + "editType": "calc", + "valType": "enumerated", + "values": [ + "soft", + "hard", + "manual" + ] + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" } - ], - "valType": "info_array" }, - "editType": "calc", - "enabled": { - "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", - "dflt": true, - "editType": "calc", - "valType": "boolean" + "text": { + "arrayOk": true, + "description": "Sets the text elements associated with each sample value. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "type": "violin", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" }, - "name": { - "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", - "editType": "calc", - "valType": "string" + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" }, - "role": "object", - "templateitemname": { - "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", - "editType": "calc", - "valType": "string" + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object" }, - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "calc", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklabeloverflow": { - "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "allow", - "hide past div", - "hide past domain" - ] - }, - "ticklabelposition": { - "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", - "dflt": "outside", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "outside top", - "inside top", - "outside left", - "inside left", - "outside right", - "inside right", - "outside bottom", - "inside bottom" - ] - }, - "ticklabelstep": { - "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", - "dflt": 1, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "calc", - "impliedEdits": {}, - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "calc", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "calc", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", - "editType": "none", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "calc", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", - "editType": "none", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "title": { - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "valType": "color" - }, - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "size": { - "editType": "calc", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "side": { - "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "text": { - "description": "Sets the title of the color bar.", - "editType": "calc", - "valType": "string" - } - }, - "x": { - "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "xref": { - "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - }, - "y": { - "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", - "editType": "calc", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", - "editType": "calc", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "yref": { - "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", - "dflt": "paper", - "editType": "calc", - "valType": "enumerated", - "values": [ - "container", - "paper" - ] - } - }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "valType": "colorscale" - }, - "contour": { - "color": { - "description": "Sets the color of the contour lines.", - "dflt": "#444", - "editType": "calc", - "valType": "color" - }, - "editType": "calc", - "role": "object", - "show": { - "description": "Sets whether or not dynamic contours are shown on hover", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "width": { - "description": "Sets the width of the contour lines.", - "dflt": 2, - "editType": "calc", - "max": 16, - "min": 1, - "valType": "number" - } - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "flatshading": { - "description": "Determines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "calc", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Same as `text`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "isomax": { - "description": "Sets the maximum boundary for iso-surface plot.", - "editType": "calc", - "valType": "number" - }, - "isomin": { - "description": "Sets the minimum boundary for iso-surface plot.", - "editType": "calc", - "valType": "number" - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "lighting": { - "ambient": { - "description": "Ambient light increases overall color visibility but can wash out the image.", - "dflt": 0.8, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "diffuse": { - "description": "Represents the extent that incident rays are reflected in a range of angles.", - "dflt": 0.8, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "editType": "calc", - "facenormalsepsilon": { - "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry.", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "fresnel": { - "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", - "dflt": 0.2, - "editType": "calc", - "max": 5, - "min": 0, - "valType": "number" - }, - "role": "object", - "roughness": { - "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", - "dflt": 0.5, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "specular": { - "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", - "dflt": 0.05, - "editType": "calc", - "max": 2, - "min": 0, - "valType": "number" - }, - "vertexnormalsepsilon": { - "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry.", - "dflt": 1e-12, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - }, - "lightposition": { - "editType": "calc", - "role": "object", - "x": { - "description": "Numeric vector, representing the X coordinate for each vertex.", - "dflt": 100000, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - }, - "y": { - "description": "Numeric vector, representing the Y coordinate for each vertex.", - "dflt": 100000, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - }, - "z": { - "description": "Numeric vector, representing the Z coordinate for each vertex.", - "dflt": 0, - "editType": "calc", - "max": 100000, - "min": -100000, - "valType": "number" - } - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "opacityscale": { - "description": "Sets the opacityscale. The opacityscale must be an array containing arrays mapping a normalized value to an opacity value. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have higher opacity values and those in the middle would be more transparent Alternatively, `opacityscale` may be a palette name string of the following list: 'min', 'max', 'extremes' and 'uniform'. The default is 'uniform'.", - "editType": "calc", - "valType": "any" - }, - "reversescale": { - "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "scene": { - "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", - "dflt": "scene", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - }, - "slices": { - "editType": "calc", - "role": "object", - "x": { - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "locations": { - "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis x except start and end.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "locationssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `locations`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "show": { - "description": "Determines whether or not slice planes about the x dimension are drawn.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "y": { - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "locations": { - "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis y except start and end.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "locationssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `locations`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "show": { - "description": "Determines whether or not slice planes about the y dimension are drawn.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "z": { - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "locations": { - "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis z except start and end.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "locationssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `locations`.", - "editType": "none", - "valType": "string" + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "width": { + "description": "Sets the width of the violin in data coordinates. If *0* (default value) the width is automatically selected based on the positions of other violin traces in the same subplot.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "x": { + "description": "Sets the x sample data or coordinates. See overview for more info.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "x0": { + "description": "Sets the x coordinate for single-box traces or the starting coordinate for multi-box traces set using q1/median/q3. See overview for more info.", + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the y sample data or coordinates. See overview for more info.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "y0": { + "description": "Sets the y coordinate for single-box traces or the starting coordinate for multi-box traces set using q1/median/q3. See overview for more info.", + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" + } }, - "role": "object", - "show": { - "description": "Determines whether or not slice planes about the z dimension are drawn.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - } - }, - "spaceframe": { - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the `spaceframe` elements. The default fill value is 1 meaning that they are entirely shaded. Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "role": "object", - "show": { - "description": "Displays/hides tetrahedron shapes between minimum and maximum iso-values. Often useful when either caps or surfaces are disabled or filled with values less than 1.", - "dflt": false, - "editType": "calc", - "valType": "boolean" - } - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "surface": { - "count": { - "description": "Sets the number of iso-surfaces between minimum and maximum iso-values. By default this value is 2 meaning that only minimum and maximum surfaces would be drawn.", - "dflt": 2, - "editType": "calc", - "min": 1, - "valType": "integer" - }, - "editType": "calc", - "fill": { - "description": "Sets the fill ratio of the iso-surface. The default fill value of the surface is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "pattern": { - "description": "Sets the surface pattern of the iso-surface 3-D sections. The default pattern of the surface is `all` meaning that the rest of surface elements would be shaded. The check options (either 1 or 2) could be used to draw half of the squares on the surface. Using various combinations of capital `A`, `B`, `C`, `D` and `E` may also be used to reduce the number of triangles on the iso-surfaces and creating other patterns of interest.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "odd", - "even" - ], - "flags": [ - "A", - "B", - "C", - "D", - "E" + "categories": [ + "cartesian", + "svg", + "symbols", + "oriented", + "box-violin", + "showLegend", + "violinLayout", + "zoomScale" ], - "valType": "flaglist" - }, - "role": "object", - "show": { - "description": "Hides/displays surfaces between minimum and maximum iso-values.", - "dflt": true, - "editType": "calc", - "valType": "boolean" - } - }, - "text": { - "arrayOk": true, - "description": "Sets the text elements associated with the vertices. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "type": "volume", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "value": { - "description": "Sets the 4th dimension (value) of the vertices.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "valuehoverformat": { - "description": "Sets the hover text formatting rulefor `value` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "valuesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `value`.", - "editType": "none", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the X coordinates of the vertices on X axis.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the Y coordinates of the vertices on Y axis.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "z": { - "description": "Sets the Z coordinates of the vertices on Z axis.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "zhoverformat": { - "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `zaxis.hoverformat`.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "zsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `z`.", - "editType": "none", - "valType": "string" - } - }, - "categories": [ - "gl3d", - "showLegend" - ], - "meta": { - "description": "Draws volume trace between iso-min and iso-max values with coordinates given by four 1-dimensional arrays containing the `value`, `x`, `y` and `z` of every vertex of a uniform or non-uniform 3-D grid. Horizontal or vertical slices, caps as well as spaceframe between iso-min and iso-max values could also be drawn using this trace." - }, - "type": "volume" - }, - "waterfall": { - "animatable": false, - "attributes": { - "alignmentgroup": { - "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "base": { - "arrayOk": false, - "description": "Sets where the bar base is drawn (in position axis units).", - "dflt": null, - "editType": "calc", - "valType": "number" - }, - "cliponaxis": { - "description": "Determines whether the text nodes are clipped about the subplot axes. To show the text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", - "dflt": true, - "editType": "plot", - "valType": "boolean" - }, - "connector": { - "editType": "plot", - "line": { - "color": { - "description": "Sets the line color.", - "dflt": "#444", - "editType": "style", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "editType": "plot", - "role": "object", - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "plot", - "min": 0, - "valType": "number" - } - }, - "mode": { - "description": "Sets the shape of connector lines.", - "dflt": "between", - "editType": "plot", - "valType": "enumerated", - "values": [ - "spanning", - "between" - ] - }, - "role": "object", - "visible": { - "description": "Determines if connector lines are drawn. ", - "dflt": true, - "editType": "plot", - "valType": "boolean" - } - }, - "constraintext": { - "description": "Constrain the size of text inside or outside a bar to be no larger than the bar itself.", - "dflt": "both", - "editType": "calc", - "valType": "enumerated", - "values": [ - "inside", - "outside", - "both", - "none" - ] - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", - "editType": "none", - "valType": "string" - }, - "decreasing": { - "editType": "style", - "marker": { - "color": { - "arrayOk": false, - "description": "Sets the marker color of all decreasing values.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "line": { - "color": { - "arrayOk": false, - "description": "Sets the line color of all decreasing values.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object", - "width": { - "arrayOk": false, - "description": "Sets the line width of all decreasing values.", - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "number" - } - }, - "role": "object" - }, - "role": "object" - }, - "dx": { - "description": "Sets the x coordinate step. See `x0` for more info.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "dy": { - "description": "Sets the y coordinate step. See `y0` for more info.", - "dflt": 1, - "editType": "calc", - "valType": "number" - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "name", - "x", - "y", - "text", - "initial", - "delta", - "final" - ], - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", - "editType": "none", - "valType": "string" - }, - "hoverlabel": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", - "dflt": "auto", - "editType": "none", - "valType": "enumerated", - "values": [ - "left", - "right", - "auto" - ] - }, - "alignsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `align`.", - "editType": "none", - "valType": "string" - }, - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", - "editType": "none", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", - "editType": "none", - "valType": "string" - }, - "editType": "none", - "font": { - "color": { - "arrayOk": true, - "editType": "none", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "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.", - "editType": "none", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "none", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "none", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "none", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "none", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "none", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "dflt": 15, - "editType": "none", - "min": -1, - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "showarrow": { - "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", - "dflt": true, - "editType": "none", - "valType": "boolean" - } - }, - "hovertemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `initial`, `delta` and `final`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "hovertemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "none", - "valType": "any" - }, - "hovertemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", - "editType": "none", - "valType": "string" - }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", - "editType": "none", - "valType": "string" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", - "editType": "calc", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on Chart Studio Cloud for `ids`.", - "editType": "none", - "valType": "string" - }, - "increasing": { - "editType": "style", - "marker": { - "color": { - "arrayOk": false, - "description": "Sets the marker color of all increasing values.", - "editType": "style", - "valType": "color" + "layoutAttributes": { + "violingap": { + "description": "Sets the gap (in plot fraction) between violins of adjacent location coordinates. Has no effect on traces that have *width* set.", + "dflt": 0.3, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "violingroupgap": { + "description": "Sets the gap (in plot fraction) between violins of the same location coordinate. Has no effect on traces that have *width* set.", + "dflt": 0.3, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "violinmode": { + "description": "Determines how violins at the same location coordinate are displayed on the graph. If *group*, the violins are plotted next to one another centered around the shared location. If *overlay*, the violins are plotted over one another, you might need to set *opacity* to see them multiple violins. Has no effect on traces that have *width* set.", + "dflt": "overlay", + "editType": "calc", + "valType": "enumerated", + "values": [ + "group", + "overlay" + ] + } }, - "editType": "style", - "line": { - "color": { - "arrayOk": false, - "description": "Sets the line color of all increasing values.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object", - "width": { - "arrayOk": false, - "description": "Sets the line width of all increasing values.", - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "number" - } + "meta": { + "description": "In vertical (horizontal) violin plots, statistics are computed using `y` (`x`) values. By supplying an `x` (`y`) array, one violin per distinct x (y) value is drawn If no `x` (`y`) {array} is provided, a single violin is drawn. That violin position is then positioned with with `name` or with `x0` (`y0`) if provided." }, - "role": "object" - }, - "role": "object" - }, - "insidetextanchor": { - "description": "Determines if texts are kept at center or start/end points in `textposition` *inside* mode.", - "dflt": "end", - "editType": "plot", - "valType": "enumerated", - "values": [ - "end", - "middle", - "start" - ] - }, - "insidetextfont": { - "color": { - "arrayOk": true, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `text` lying inside the bar.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "legend": { - "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", - "dflt": "legend", - "editType": "style", - "valType": "subplotid" + "type": "violin" }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "valType": "string" - }, - "legendgrouptitle": { - "editType": "style", - "font": { - "color": { - "editType": "style", - "valType": "color" - }, - "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.", - "editType": "style", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "lineposition": { - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "style", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "role": "object", - "shadow": { - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "style", - "valType": "string" - }, - "size": { - "editType": "style", - "min": 1, - "valType": "number" - }, - "style": { - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] + "volume": { + "animatable": false, + "attributes": { + "autocolorscale": { + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "caps": { + "editType": "calc", + "role": "object", + "x": { + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "show": { + "description": "Sets the fill ratio of the `slices`. The default fill value of the x `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + } + }, + "y": { + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "show": { + "description": "Sets the fill ratio of the `slices`. The default fill value of the y `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + } + }, + "z": { + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "show": { + "description": "Sets the fill ratio of the `slices`. The default fill value of the z `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + } + } + }, + "cauto": { + "description": "Determines whether or not the color domain is computed with respect to the input data (here `value`) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "description": "Sets the upper bound of the color domain. Value should have the same units as `value` and if set, `cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `value`. Has no effect when `cauto` is `false`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "description": "Sets the lower bound of the color domain. Value should have the same units as `value` and if set, `cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "coloraxis": { + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "calc", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "calc", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "calc", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`.", + "editType": "calc", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "calc", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "calc", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "calc", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ticktext`.", + "editType": "none", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `tickvals`.", + "editType": "none", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` if *v* and defaults to *right* when `orientation` if *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "calc", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "xref": { + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "yref": { + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "contour": { + "color": { + "description": "Sets the color of the contour lines.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object", + "show": { + "description": "Sets whether or not dynamic contours are shown on hover", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "width": { + "description": "Sets the width of the contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "valType": "number" + } + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "flatshading": { + "description": "Determines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "calc", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Same as `text`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "isomax": { + "description": "Sets the maximum boundary for iso-surface plot.", + "editType": "calc", + "valType": "number" + }, + "isomin": { + "description": "Sets the minimum boundary for iso-surface plot.", + "editType": "calc", + "valType": "number" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "lighting": { + "ambient": { + "description": "Ambient light increases overall color visibility but can wash out the image.", + "dflt": 0.8, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "diffuse": { + "description": "Represents the extent that incident rays are reflected in a range of angles.", + "dflt": 0.8, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "editType": "calc", + "facenormalsepsilon": { + "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "fresnel": { + "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", + "dflt": 0.2, + "editType": "calc", + "max": 5, + "min": 0, + "valType": "number" + }, + "role": "object", + "roughness": { + "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", + "dflt": 0.5, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "specular": { + "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", + "dflt": 0.05, + "editType": "calc", + "max": 2, + "min": 0, + "valType": "number" + }, + "vertexnormalsepsilon": { + "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry.", + "dflt": 1e-12, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + }, + "lightposition": { + "editType": "calc", + "role": "object", + "x": { + "description": "Numeric vector, representing the X coordinate for each vertex.", + "dflt": 100000, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + }, + "y": { + "description": "Numeric vector, representing the Y coordinate for each vertex.", + "dflt": 100000, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + }, + "z": { + "description": "Numeric vector, representing the Z coordinate for each vertex.", + "dflt": 0, + "editType": "calc", + "max": 100000, + "min": -100000, + "valType": "number" + } + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "opacityscale": { + "description": "Sets the opacityscale. The opacityscale must be an array containing arrays mapping a normalized value to an opacity value. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have higher opacity values and those in the middle would be more transparent Alternatively, `opacityscale` may be a palette name string of the following list: 'min', 'max', 'extremes' and 'uniform'. The default is 'uniform'.", + "editType": "calc", + "valType": "any" + }, + "reversescale": { + "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "scene": { + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "slices": { + "editType": "calc", + "role": "object", + "x": { + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "locations": { + "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis x except start and end.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "locationssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `locations`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "show": { + "description": "Determines whether or not slice planes about the x dimension are drawn.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "y": { + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "locations": { + "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis y except start and end.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "locationssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `locations`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "show": { + "description": "Determines whether or not slice planes about the y dimension are drawn.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "z": { + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "locations": { + "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis z except start and end.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "locationssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `locations`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "show": { + "description": "Determines whether or not slice planes about the z dimension are drawn.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + } + }, + "spaceframe": { + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the `spaceframe` elements. The default fill value is 1 meaning that they are entirely shaded. Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "show": { + "description": "Displays/hides tetrahedron shapes between minimum and maximum iso-values. Often useful when either caps or surfaces are disabled or filled with values less than 1.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + } + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "surface": { + "count": { + "description": "Sets the number of iso-surfaces between minimum and maximum iso-values. By default this value is 2 meaning that only minimum and maximum surfaces would be drawn.", + "dflt": 2, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "editType": "calc", + "fill": { + "description": "Sets the fill ratio of the iso-surface. The default fill value of the surface is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "pattern": { + "description": "Sets the surface pattern of the iso-surface 3-D sections. The default pattern of the surface is `all` meaning that the rest of surface elements would be shaded. The check options (either 1 or 2) could be used to draw half of the squares on the surface. Using various combinations of capital `A`, `B`, `C`, `D` and `E` may also be used to reduce the number of triangles on the iso-surfaces and creating other patterns of interest.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "odd", + "even" + ], + "flags": [ + "A", + "B", + "C", + "D", + "E" + ], + "valType": "flaglist" + }, + "role": "object", + "show": { + "description": "Hides/displays surfaces between minimum and maximum iso-values.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + } + }, + "text": { + "arrayOk": true, + "description": "Sets the text elements associated with the vertices. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "type": "volume", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "value": { + "description": "Sets the 4th dimension (value) of the vertices.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "valuehoverformat": { + "description": "Sets the hover text formatting rulefor `value` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format.By default the values are formatted using generic number format.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "valuesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `value`.", + "editType": "none", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "Sets the X coordinates of the vertices on X axis.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the Y coordinates of the vertices on Y axis.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "z": { + "description": "Sets the Z coordinates of the vertices on Z axis.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "zhoverformat": { + "description": "Sets the hover text formatting rulefor `z` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `zaxis.hoverformat`.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "zsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `z`.", + "editType": "none", + "valType": "string" + } }, - "textcase": { - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] + "categories": [ + "gl3d", + "showLegend" + ], + "meta": { + "description": "Draws volume trace between iso-min and iso-max values with coordinates given by four 1-dimensional arrays containing the `value`, `x`, `y` and `z` of every vertex of a uniform or non-uniform 3-D grid. Horizontal or vertical slices, caps as well as spaceframe between iso-min and iso-max values could also be drawn using this trace." }, - "variant": { - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "style", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] + "type": "volume" + }, + "waterfall": { + "animatable": false, + "attributes": { + "alignmentgroup": { + "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "base": { + "arrayOk": false, + "description": "Sets where the bar base is drawn (in position axis units).", + "dflt": null, + "editType": "calc", + "valType": "number" + }, + "cliponaxis": { + "description": "Determines whether the text nodes are clipped about the subplot axes. To show the text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", + "dflt": true, + "editType": "plot", + "valType": "boolean" + }, + "connector": { + "editType": "plot", + "line": { + "color": { + "description": "Sets the line color.", + "dflt": "#444", + "editType": "style", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "plot", + "role": "object", + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "plot", + "min": 0, + "valType": "number" + } + }, + "mode": { + "description": "Sets the shape of connector lines.", + "dflt": "between", + "editType": "plot", + "valType": "enumerated", + "values": [ + "spanning", + "between" + ] + }, + "role": "object", + "visible": { + "description": "Determines if connector lines are drawn. ", + "dflt": true, + "editType": "plot", + "valType": "boolean" + } + }, + "constraintext": { + "description": "Constrain the size of text inside or outside a bar to be no larger than the bar itself.", + "dflt": "both", + "editType": "calc", + "valType": "enumerated", + "values": [ + "inside", + "outside", + "both", + "none" + ] + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `customdata`.", + "editType": "none", + "valType": "string" + }, + "decreasing": { + "editType": "style", + "marker": { + "color": { + "arrayOk": false, + "description": "Sets the marker color of all decreasing values.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "line": { + "color": { + "arrayOk": false, + "description": "Sets the line color of all decreasing values.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object", + "width": { + "arrayOk": false, + "description": "Sets the line width of all decreasing values.", + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "role": "object" + }, + "dx": { + "description": "Sets the x coordinate step. See `x0` for more info.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "dy": { + "description": "Sets the y coordinate step. See `y0` for more info.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "name", + "x", + "y", + "text", + "initial", + "delta", + "final" + ], + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hoverinfo`.", + "editType": "none", + "valType": "string" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "alignsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `align`.", + "editType": "none", + "valType": "string" + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bgcolor`.", + "editType": "none", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `bordercolor`.", + "editType": "none", + "valType": "string" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "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.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `namelength`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `initial`, `delta` and `final`. Anything contained in tag `` is displayed in the secondary box, for example `%{fullData.name}`. To hide the secondary box completely, use an empty tag ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.", + "editType": "none", + "valType": "string" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `hovertext`.", + "editType": "none", + "valType": "string" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "editType": "calc", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on Chart Studio Cloud for `ids`.", + "editType": "none", + "valType": "string" + }, + "increasing": { + "editType": "style", + "marker": { + "color": { + "arrayOk": false, + "description": "Sets the marker color of all increasing values.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "line": { + "color": { + "arrayOk": false, + "description": "Sets the line color of all increasing values.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object", + "width": { + "arrayOk": false, + "description": "Sets the line width of all increasing values.", + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "role": "object" + }, + "insidetextanchor": { + "description": "Determines if texts are kept at center or start/end points in `textposition` *inside* mode.", + "dflt": "end", + "editType": "plot", + "valType": "enumerated", + "values": [ + "end", + "middle", + "start" + ] + }, + "insidetextfont": { + "color": { + "arrayOk": true, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `text` lying inside the bar.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "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.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "measure": { + "description": "An array containing types of values. By default the values are considered as 'relative'. However; it is possible to use 'total' to compute the sums. Also 'absolute' could be applied to reset the computed total or to declare an initial value where needed.", + "dflt": [], + "editType": "calc", + "valType": "data_array" + }, + "measuresrc": { + "description": "Sets the source reference on Chart Studio Cloud for `measure`.", + "editType": "none", + "valType": "string" + }, + "meta": { + "arrayOk": true, + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", + "editType": "plot", + "valType": "any" + }, + "metasrc": { + "description": "Sets the source reference on Chart Studio Cloud for `meta`.", + "editType": "none", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "offset": { + "arrayOk": true, + "description": "Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead.", + "dflt": null, + "editType": "calc", + "valType": "number" + }, + "offsetgroup": { + "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "offsetsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `offset`.", + "editType": "none", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "orientation": { + "description": "Sets the orientation of the bars. With *v* (*h*), the value of the each bar spans along the vertical (horizontal).", + "editType": "calc+clearAxisTypes", + "valType": "enumerated", + "values": [ + "v", + "h" + ] + }, + "outsidetextfont": { + "color": { + "arrayOk": true, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `text` lying outside the bar.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + } + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textangle": { + "description": "Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars.", + "dflt": "auto", + "editType": "plot", + "valType": "angle" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `color`.", + "editType": "none", + "valType": "string" + }, + "description": "Sets the font used for `text`.", + "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.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `family`.", + "editType": "none", + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "linepositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", + "editType": "none", + "valType": "string" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "shadowsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `size`.", + "editType": "none", + "valType": "string" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "stylesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `style`.", + "editType": "none", + "valType": "string" + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "textcasesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", + "editType": "none", + "valType": "string" + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "variantsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `variant`.", + "editType": "none", + "valType": "string" + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + }, + "weightsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `weight`.", + "editType": "none", + "valType": "string" + } + }, + "textinfo": { + "arrayOk": false, + "description": "Determines which trace information appear on the graph. In the case of having multiple waterfalls, totals are computed separately (per trace).", + "editType": "plot", + "extras": [ + "none" + ], + "flags": [ + "label", + "text", + "initial", + "delta", + "final" + ], + "valType": "flaglist" + }, + "textposition": { + "arrayOk": true, + "description": "Specifies the location of the `text`. *inside* positions `text` inside, next to the bar end (rotated and scaled if needed). *outside* positions `text` outside, next to the bar end (scaled if needed), unless there is another bar stacked on this one, then the text gets pushed inside. *auto* tries to position `text` inside the bar, but if the bar is too small and no bar is stacked on this one the text is moved outside. If *none*, no text appears.", + "dflt": "auto", + "editType": "calc", + "valType": "enumerated", + "values": [ + "inside", + "outside", + "auto", + "none" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", + "editType": "none", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `text`.", + "editType": "none", + "valType": "string" + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `initial`, `delta`, `final` and `label`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "texttemplatesrc": { + "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", + "editType": "none", + "valType": "string" + }, + "totals": { + "editType": "style", + "marker": { + "color": { + "arrayOk": false, + "description": "Sets the marker color of all intermediate sums and total values.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "line": { + "color": { + "arrayOk": false, + "description": "Sets the line color of all intermediate sums and total values.", + "editType": "style", + "valType": "color" + }, + "editType": "style", + "role": "object", + "width": { + "arrayOk": false, + "description": "Sets the line width of all intermediate sums and total values.", + "dflt": 0, + "editType": "style", + "min": 0, + "valType": "number" + } + }, + "role": "object" + }, + "role": "object" + }, + "type": "waterfall", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", + "editType": "none", + "valType": "any" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "width": { + "arrayOk": true, + "description": "Sets the bar width (in position axis units).", + "dflt": null, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `width`.", + "editType": "none", + "valType": "string" + }, + "x": { + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "x0": { + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "xhoverformat": { + "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "xperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "valType": "any" + }, + "xperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" + }, + "xperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "xsrc": { + "description": "Sets the source reference on Chart Studio Cloud for `x`.", + "editType": "none", + "valType": "string" + }, + "y": { + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "valType": "data_array" + }, + "y0": { + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "valType": "any" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "valType": "subplotid" + }, + "yhoverformat": { + "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "yperiod": { + "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", + "dflt": 0, + "editType": "calc", + "valType": "any" + }, + "yperiod0": { + "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", + "editType": "calc", + "valType": "any" + }, + "yperiodalignment": { + "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", + "dflt": "middle", + "editType": "calc", + "valType": "enumerated", + "values": [ + "start", + "middle", + "end" + ] + }, + "ysrc": { + "description": "Sets the source reference on Chart Studio Cloud for `y`.", + "editType": "none", + "valType": "string" + }, + "zorder": { + "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", + "dflt": 0, + "editType": "plot", + "valType": "integer" + } }, - "weight": { - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "style", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - } - }, - "role": "object", - "text": { - "description": "Sets the title of the legend group.", - "dflt": "", - "editType": "style", - "valType": "string" - } - }, - "legendrank": { - "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", - "dflt": 1000, - "editType": "style", - "valType": "number" - }, - "legendwidth": { - "description": "Sets the width (in px or fraction) of the legend for this trace.", - "editType": "style", - "min": 0, - "valType": "number" - }, - "measure": { - "description": "An array containing types of values. By default the values are considered as 'relative'. However; it is possible to use 'total' to compute the sums. Also 'absolute' could be applied to reset the computed total or to declare an initial value where needed.", - "dflt": [], - "editType": "calc", - "valType": "data_array" - }, - "measuresrc": { - "description": "Sets the source reference on Chart Studio Cloud for `measure`.", - "editType": "none", - "valType": "string" - }, - "meta": { - "arrayOk": true, - "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index.", - "editType": "plot", - "valType": "any" - }, - "metasrc": { - "description": "Sets the source reference on Chart Studio Cloud for `meta`.", - "editType": "none", - "valType": "string" - }, - "name": { - "description": "Sets the trace name. The trace name appears as the legend item and on hover.", - "editType": "style", - "valType": "string" - }, - "offset": { - "arrayOk": true, - "description": "Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead.", - "dflt": null, - "editType": "calc", - "valType": "number" - }, - "offsetgroup": { - "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "offsetsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `offset`.", - "editType": "none", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "valType": "number" - }, - "orientation": { - "description": "Sets the orientation of the bars. With *v* (*h*), the value of the each bar spans along the vertical (horizontal).", - "editType": "calc+clearAxisTypes", - "valType": "enumerated", - "values": [ - "v", - "h" - ] - }, - "outsidetextfont": { - "color": { - "arrayOk": true, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `text` lying outside the bar.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" - ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "selectedpoints": { - "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", - "editType": "calc", - "valType": "any" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, - "min": 0, - "valType": "number" - }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://chart-studio.plotly.com/settings for more details.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "valType": "string" - }, - "textangle": { - "description": "Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars.", - "dflt": "auto", - "editType": "plot", - "valType": "angle" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `color`.", - "editType": "none", - "valType": "string" - }, - "description": "Sets the font used for `text`.", - "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.", - "editType": "calc", - "noBlank": true, - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `family`.", - "editType": "none", - "valType": "string" - }, - "lineposition": { - "arrayOk": true, - "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", - "dflt": "none", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "under", - "over", - "through" - ], - "valType": "flaglist" - }, - "linepositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `lineposition`.", - "editType": "none", - "valType": "string" - }, - "role": "object", - "shadow": { - "arrayOk": true, - "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", - "dflt": "none", - "editType": "calc", - "valType": "string" - }, - "shadowsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `shadow`.", - "editType": "none", - "valType": "string" - }, - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `size`.", - "editType": "none", - "valType": "string" - }, - "style": { - "arrayOk": true, - "description": "Sets whether a font should be styled with a normal or italic face from its family.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "italic" - ] - }, - "stylesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `style`.", - "editType": "none", - "valType": "string" - }, - "textcase": { - "arrayOk": true, - "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "word caps", - "upper", - "lower" - ] - }, - "textcasesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textcase`.", - "editType": "none", - "valType": "string" - }, - "variant": { - "arrayOk": true, - "description": "Sets the variant of the font.", - "dflt": "normal", - "editType": "calc", - "valType": "enumerated", - "values": [ - "normal", - "small-caps", - "all-small-caps", - "all-petite-caps", - "petite-caps", - "unicase" - ] - }, - "variantsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `variant`.", - "editType": "none", - "valType": "string" - }, - "weight": { - "arrayOk": true, - "description": "Sets the weight (or boldness) of the font.", - "dflt": "normal", - "editType": "calc", - "extras": [ - "normal", - "bold" + "categories": [ + "bar-like", + "cartesian", + "svg", + "oriented", + "showLegend", + "zoomScale" ], - "max": 1000, - "min": 1, - "valType": "integer" - }, - "weightsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `weight`.", - "editType": "none", - "valType": "string" - } - }, - "textinfo": { - "arrayOk": false, - "description": "Determines which trace information appear on the graph. In the case of having multiple waterfalls, totals are computed separately (per trace).", - "editType": "plot", - "extras": [ - "none" - ], - "flags": [ - "label", - "text", - "initial", - "delta", - "final" - ], - "valType": "flaglist" - }, - "textposition": { - "arrayOk": true, - "description": "Specifies the location of the `text`. *inside* positions `text` inside, next to the bar end (rotated and scaled if needed). *outside* positions `text` outside, next to the bar end (scaled if needed), unless there is another bar stacked on this one, then the text gets pushed inside. *auto* tries to position `text` inside the bar, but if the bar is too small and no bar is stacked on this one the text is moved outside. If *none*, no text appears.", - "dflt": "auto", - "editType": "calc", - "valType": "enumerated", - "values": [ - "inside", - "outside", - "auto", - "none" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `textposition`.", - "editType": "none", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `text`.", - "editType": "none", - "valType": "string" - }, - "texttemplate": { - "arrayOk": true, - "description": "Template string used for rendering the information text that appears on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `initial`, `delta`, `final` and `label`.", - "dflt": "", - "editType": "plot", - "valType": "string" - }, - "texttemplatefallback": { - "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", - "dflt": "-", - "editType": "plot", - "valType": "any" - }, - "texttemplatesrc": { - "description": "Sets the source reference on Chart Studio Cloud for `texttemplate`.", - "editType": "none", - "valType": "string" - }, - "totals": { - "editType": "style", - "marker": { - "color": { - "arrayOk": false, - "description": "Sets the marker color of all intermediate sums and total values.", - "editType": "style", - "valType": "color" + "layoutAttributes": { + "waterfallgap": { + "description": "Sets the gap (in plot fraction) between bars of adjacent location coordinates.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "waterfallgroupgap": { + "description": "Sets the gap (in plot fraction) between bars of the same location coordinate.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "waterfallmode": { + "description": "Determines how bars at the same location coordinate are displayed on the graph. With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to reduce *opacity* to see multiple bars.", + "dflt": "group", + "editType": "calc", + "valType": "enumerated", + "values": [ + "group", + "overlay" + ] + } }, - "editType": "style", - "line": { - "color": { - "arrayOk": false, - "description": "Sets the line color of all intermediate sums and total values.", - "editType": "style", - "valType": "color" - }, - "editType": "style", - "role": "object", - "width": { - "arrayOk": false, - "description": "Sets the line width of all intermediate sums and total values.", - "dflt": 0, - "editType": "style", - "min": 0, - "valType": "number" - } + "meta": { + "description": "Draws waterfall trace which is useful graph to displays the contribution of various elements (either positive or negative) in a bar chart. The data visualized by the span of the bars is set in `y` if `orientation` is set to *v* (the default) and the labels are set in `x`. By setting `orientation` to *h*, the roles are interchanged." }, - "role": "object" - }, - "role": "object" - }, - "type": "waterfall", - "uid": { - "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", - "editType": "plot", - "valType": "string" - }, - "uirevision": { - "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves.", - "editType": "none", - "valType": "any" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "width": { - "arrayOk": true, - "description": "Sets the bar width (in position axis units).", - "dflt": null, - "editType": "calc", - "min": 0, - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `width`.", - "editType": "none", - "valType": "string" - }, - "x": { - "description": "Sets the x coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "x0": { - "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "xhoverformat": { - "description": "Sets the hover text formatting rulefor `x` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `xaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "xperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the x axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "valType": "any" - }, - "xperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the x0 axis. When `x0period` is round number of weeks, the `x0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "xperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the x axis.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "xsrc": { - "description": "Sets the source reference on Chart Studio Cloud for `x`.", - "editType": "none", - "valType": "string" - }, - "y": { - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", - "valType": "data_array" - }, - "y0": { - "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "valType": "any" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "valType": "subplotid" - }, - "yhoverformat": { - "description": "Sets the hover text formatting rulefor `y` using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*By default the values are formatted using `yaxis.hoverformat`.", - "dflt": "", - "editType": "none", - "valType": "string" - }, - "yperiod": { - "description": "Only relevant when the axis `type` is *date*. Sets the period positioning in milliseconds or *M* on the y axis. Special values in the form of *M* could be used to declare the number of months. In this case `n` must be a positive integer.", - "dflt": 0, - "editType": "calc", - "valType": "any" - }, - "yperiod0": { - "description": "Only relevant when the axis `type` is *date*. Sets the base for period positioning in milliseconds or date string on the y0 axis. When `y0period` is round number of weeks, the `y0period0` by default would be on a Sunday i.e. 2000-01-02, otherwise it would be at 2000-01-01.", - "editType": "calc", - "valType": "any" - }, - "yperiodalignment": { - "description": "Only relevant when the axis `type` is *date*. Sets the alignment of data points on the y axis.", - "dflt": "middle", - "editType": "calc", - "valType": "enumerated", - "values": [ - "start", - "middle", - "end" - ] - }, - "ysrc": { - "description": "Sets the source reference on Chart Studio Cloud for `y`.", - "editType": "none", - "valType": "string" - }, - "zorder": { - "description": "Sets the layer on which this trace is displayed, relative to other SVG traces on the same subplot. SVG traces with higher `zorder` appear in front of those with lower `zorder`.", - "dflt": 0, - "editType": "plot", - "valType": "integer" - } - }, - "categories": [ - "bar-like", - "cartesian", - "svg", - "oriented", - "showLegend", - "zoomScale" - ], - "layoutAttributes": { - "waterfallgap": { - "description": "Sets the gap (in plot fraction) between bars of adjacent location coordinates.", - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "waterfallgroupgap": { - "description": "Sets the gap (in plot fraction) between bars of the same location coordinate.", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - "waterfallmode": { - "description": "Determines how bars at the same location coordinate are displayed on the graph. With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to reduce *opacity* to see multiple bars.", - "dflt": "group", - "editType": "calc", - "valType": "enumerated", - "values": [ - "group", - "overlay" - ] + "type": "waterfall" } - }, - "meta": { - "description": "Draws waterfall trace which is useful graph to displays the contribution of various elements (either positive or negative) in a bar chart. The data visualized by the span of the bars is set in `y` if `orientation` is set to *v* (the default) and the labels are set in `x`. By setting `orientation` to *h*, the roles are interchanged." - }, - "type": "waterfall" } - } } \ No newline at end of file diff --git a/dist/plotly-basic.js b/dist/plotly-basic.js index ccc2fb37b93..1c1aaa7f05c 100644 --- a/dist/plotly-basic.js +++ b/dist/plotly-basic.js @@ -1,5 +1,5 @@ /** -* plotly.js (basic) v3.3.0 +* plotly.js (basic) v3.3.1 * 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.3.0"; + exports.version = "3.3.1"; } }); @@ -8750,7 +8750,7 @@ var Plotly = (() => { var isArrayOrTypedArray = require_array().isArrayOrTypedArray; module.exports = function nestedProperty(container, propStr) { if (isNumeric(propStr)) propStr = String(propStr); - else if (typeof propStr !== "string" || propStr.substr(propStr.length - 4) === "[-1]") { + else if (typeof propStr !== "string" || propStr.slice(-4) === "[-1]") { throw "bad property string"; } var propParts = propStr.split("."); @@ -8769,7 +8769,7 @@ var Plotly = (() => { if (indexed[1]) propParts[j] = indexed[1]; else if (j === 0) propParts.splice(0, 1); else throw "bad property string"; - indices = indexed[2].substr(1, indexed[2].length - 2).split("]["); + indices = indexed[2].slice(1, -1).split("]["); for (i = 0; i < indices.length; i++) { j++; propParts.splice(j, 0, Number(indices[i])); @@ -10847,11 +10847,11 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { key = keys[i]; val = container[key]; - if (key.substr(key.length - 5) === "color") { + if (key.slice(-5) === "color") { if (Array.isArray(val)) { for (j = 0; j < val.length; j++) val[j] = cleanOne(val[j]); } else container[key] = cleanOne(val); - } else if (key.substr(key.length - 10) === "colorscale" && Array.isArray(val)) { + } else if (key.slice(-10) === "colorscale" && Array.isArray(val)) { for (j = 0; j < val.length; j++) { if (Array.isArray(val[j])) val[j][1] = cleanOne(val[j][1]); } @@ -10866,7 +10866,7 @@ var Plotly = (() => { function cleanOne(val) { if (isNumeric(val) || typeof val !== "string") return val; var valTrim = val.trim(); - if (valTrim.substr(0, 3) !== "rgb") return val; + if (valTrim.slice(0, 3) !== "rgb") return val; var match = valTrim.match(/^rgba?\s*\(([^()]*)\)$/); if (!match) return val; var parts = match[1].trim().split(/\s*[\s,]\s*/); @@ -10960,7 +10960,7 @@ var Plotly = (() => { for (var i = 0; i < values.length; i++) { var k = String(values[i]); if (k.charAt(0) === "/" && k.charAt(k.length - 1) === "/") { - var regex = new RegExp(k.substr(1, k.length - 2)); + var regex = new RegExp(k.slice(1, -1)); if (regex.test(v)) return true; } else if (v === values[i]) return true; } @@ -10968,9 +10968,13 @@ var Plotly = (() => { } }, boolean: { - coerceFunction: function(v, propOut, dflt) { - if (v === true || v === false) propOut.set(v); - else propOut.set(dflt); + coerceFunction: function(v, propOut, dflt, opts) { + const isBoolean = (value) => value === true || value === false; + if (isBoolean(v) || opts.arrayOk && Array.isArray(v) && v.length > 0 && v.every(isBoolean)) { + propOut.set(v); + } else { + propOut.set(dflt); + } } }, number: { @@ -11037,11 +11041,12 @@ var Plotly = (() => { subplotid: { coerceFunction: function(v, propOut, dflt, opts) { var regex = opts.regex || counterRegex(dflt); - if (typeof v === "string" && regex.test(v)) { + const isSubplotId = (value) => typeof value === "string" && regex.test(value); + if (isSubplotId(v) || opts.arrayOk && isArrayOrTypedArray(v) && v.length > 0 && v.every(isSubplotId)) { propOut.set(v); - return; + } else { + propOut.set(dflt); } - propOut.set(dflt); }, validateFunction: function(v, opts) { var dflt = opts.dflt; @@ -13747,9 +13752,9 @@ var Plotly = (() => { var require_maplibre_gl = __commonJS({ "node_modules/maplibre-gl/dist/maplibre-gl.css"() { (function() { - if (!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")) { + if (!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")) { var e = document.createElement("style"); - e.id = "ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe"; + e.id = "696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97"; e.textContent = `.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`; document.head.appendChild(e); } @@ -14072,10 +14077,10 @@ var Plotly = (() => { var isWorld = isWorldCalendar(calendar); var s0 = s.charAt(0); if (isWorld && (s0 === "G" || s0 === "g")) { - s = s.substr(1); + s = s.slice(1); calendar = ""; } - var isChinese = isWorld && calendar.substr(0, 7) === "chinese"; + var isChinese = isWorld && calendar.slice(0, 7) === "chinese"; var match = s.match(isChinese ? DATETIME_REGEXP_CN : DATETIME_REGEXP); if (!match) return BADNUM; var y = match[1]; @@ -14119,7 +14124,7 @@ var Plotly = (() => { return exports.dateTime2ms(s, calendar) !== BADNUM; }; function lpad(val, digits) { - return String(val + Math.pow(10, digits)).substr(1); + return String(val + Math.pow(10, digits)).slice(1); } var NINETYDAYS = 90 * ONEDAY; var THREEHOURS = 3 * ONEHOUR; @@ -14139,7 +14144,7 @@ var Plotly = (() => { dateStr = utcFormat("G%Y-%m-%d")(new Date(msRounded)); } if (dateStr.charAt(0) === "-") { - while (dateStr.length < 11) dateStr = "-0" + dateStr.substr(1); + while (dateStr.length < 11) dateStr = "-0" + dateStr.slice(1); } else { while (dateStr.length < 10) dateStr = "0" + dateStr; } @@ -14211,7 +14216,7 @@ var Plotly = (() => { function modDateFormat(fmt, x, formatter, calendar) { fmt = fmt.replace(fracMatch, function(match) { var digits = Math.min(+match.charAt(1) || 6, 6); - var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).substr(2).replace(/0+$/, "") || "0"; + var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).slice(2).replace(/0+$/, "") || "0"; return fracSecs; }); var d = new Date(Math.floor(x + 0.05)); @@ -14234,7 +14239,7 @@ var Plotly = (() => { if (tr !== "M") { if (!isNumeric(tr)) tr = 0; var sec = Math.min(mod(x / ONESEC, 60), MAXSECONDS[tr]); - var secStr = (100 + sec).toFixed(tr).substr(1); + var secStr = (100 + sec).toFixed(tr).slice(1); if (tr > 0) { secStr = secStr.replace(/0+$/, "").replace(/[\.]$/, ""); } @@ -14948,8 +14953,8 @@ var Plotly = (() => { if (part.indexOf("Safari") !== -1) { for (var k = i - 1; k > -1; k--) { var prevPart = allParts[k]; - if (prevPart.substr(0, 8) === "Version/") { - var v = prevPart.substr(8).split(".")[0]; + if (prevPart.slice(0, 8) === "Version/") { + var v = prevPart.slice(8).split(".")[0]; if (isNumeric(v)) v = +v; if (v >= 13) return true; } @@ -15416,7 +15421,7 @@ var Plotly = (() => { return finalStep && finalStep(arg); }; lib.stripTrailingSlash = function(str) { - if (str.substr(-1) === "/") return str.substr(0, str.length - 1); + if (str.slice(-1) === "/") return str.slice(0, -1); return str; }; lib.noneOrAll = function(containerIn, containerOut, attrList) { @@ -15577,7 +15582,7 @@ var Plotly = (() => { } lib.minExtend = minExtend; lib.titleCase = function(s) { - return s.charAt(0).toUpperCase() + s.substr(1); + return s.charAt(0).toUpperCase() + s.slice(1); }; lib.containsAny = function(s, fragments) { for (var i = 0; i < fragments.length; i++) { @@ -17089,7 +17094,7 @@ var Plotly = (() => { if (name.charAt(lastChar) !== "s") { Lib.warn("bad argument to arrayDefaultKey: " + name); } - return name.substr(0, name.length - 1) + "defaults"; + return name.slice(0, -1) + "defaults"; } exports.arrayDefaultKey = arrayDefaultKey; exports.arrayEditor = function(parentIn, containerStr, itemOut) { @@ -17214,13 +17219,13 @@ var Plotly = (() => { var constants = require_constants2(); exports.id2name = function id2name(id) { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; - var axNum = id.split(" ")[0].substr(1); + var axNum = id.split(" ")[0].slice(1); if (axNum === "1") axNum = ""; return id.charAt(0) + "axis" + axNum; }; exports.name2id = function name2id(name) { if (!name.match(constants.AX_NAME_PATTERN)) return; - var axNum = name.substr(5); + var axNum = name.slice(5); if (axNum === "1") axNum = ""; return name.charAt(0) + axNum; }; @@ -17229,7 +17234,7 @@ var Plotly = (() => { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; if (axLetter && id.charAt(0) !== axLetter) return; if (domainTest && !domainId) return; - var axNum = id.split(" ")[0].substr(1).replace(/^0+/, ""); + var axNum = id.split(" ")[0].slice(1).replace(/^0+/, ""); if (axNum === "1") axNum = ""; return id.charAt(0) + axNum + (domainTest && domainId ? " domain" : ""); }; @@ -17241,7 +17246,7 @@ var Plotly = (() => { var i; for (i = 0; i < idList.length; i++) { var idi = idList[i]; - out[i] = fullLayout[idi.charAt(0) + "axis" + idi.substr(1)]; + out[i] = fullLayout[idi.charAt(0) + "axis" + idi.slice(1)]; } if (!only2d) { var sceneIds3D = fullLayout._subplots.gl3d || []; @@ -17272,7 +17277,7 @@ var Plotly = (() => { var ax = null; if (Registry.traceIs(fullTrace, "gl3d")) { var scene = fullTrace.scene; - if (scene.substr(0, 5) === "scene") { + if (scene.slice(0, 5) === "scene") { ax = fullLayout[scene][type + "axis"]; } } else { @@ -17284,7 +17289,7 @@ var Plotly = (() => { var letter1 = id1.charAt(0); var letter2 = id2.charAt(0); if (letter1 !== letter2) return letter1 > letter2 ? 1 : -1; - return +(id1.substr(1) || 1) - +(id2.substr(1) || 1); + return +(id1.slice(1) || 1) - +(id2.slice(1) || 1); }; exports.ref2id = function(ar) { return /^[xyz]/.test(ar) ? ar.split(" ")[0] : false; @@ -18517,7 +18522,12 @@ var Plotly = (() => { _module.attributes.showlegend ? _module.attributes : plots.attributes, "showlegend" ); - coerce("legend"); + Lib.coerce( + traceIn, + traceOut, + _module.attributes.legend ? _module.attributes : plots.attributes, + "legend" + ); coerce("legendwidth"); coerce("legendgroup"); coerce("legendgrouptitle.text"); @@ -18652,7 +18662,7 @@ var Plotly = (() => { Lib.coerce(layoutIn, layoutOut, scatterAttrs, "scattermode"); }; function getComputedSize(attr) { - return typeof attr === "string" && attr.substr(attr.length - 2) === "px" && parseFloat(attr); + return typeof attr === "string" && attr.slice(-2) === "px" && parseFloat(attr); } plots.plotAutoSize = function plotAutoSize(gd, layout, fullLayout) { var context = gd._context || {}; @@ -19092,7 +19102,7 @@ var Plotly = (() => { return; } if (mode === "keepdata") { - if (v.substr(v.length - 3) === "src") { + if (v.slice(-3) === "src") { return; } } else if (mode === "keepstream") { @@ -20324,9 +20334,9 @@ var Plotly = (() => { newParts.pop(); } if (len > eLen) { - newParts.push(p.substr(0, pLen2 - eLen) + ellipsis); + newParts.push(p.slice(0, Math.max(0, pLen2 - eLen)) + ellipsis); } else { - newParts.push(p.substr(0, pLen2)); + newParts.push(p.slice(0, pLen2)); } break; } @@ -20351,7 +20361,7 @@ var Plotly = (() => { var outChar; if (innerMatch.charAt(0) === "#") { outChar = fromCodePoint( - innerMatch.charAt(1) === "x" ? parseInt(innerMatch.substr(2), 16) : parseInt(innerMatch.substr(1), 10) + innerMatch.charAt(1) === "x" ? parseInt(innerMatch.slice(2), 16) : parseInt(innerMatch.slice(1), 10) ); } else outChar = entityToUnicode[innerMatch]; return outChar || fullMatch; @@ -21983,7 +21993,7 @@ var Plotly = (() => { return dtickDflt; } var prefix = dtick.charAt(0); - var dtickNum = dtick.substr(1); + var dtickNum = dtick.slice(1); dtickNum = isNumeric(dtickNum) ? Number(dtickNum) : 0; if (dtickNum <= 0 || !// "M" gives ticks every (integer) n months (isDate && prefix === "M" && dtickNum === Math.round(dtickNum) || // "L" gives ticks linearly spaced in data (not in position) every (float) f @@ -26840,7 +26850,7 @@ var Plotly = (() => { var stats = Lib.findExactDates(data, calendar); var threshold = 0.8; if (stats.exactDays > threshold) { - var numMonths = Number(dtick.substr(1)); + var numMonths = Number(dtick.slice(1)); if (stats.exactYears > threshold && numMonths % 12 === 0) { binStart = axes.tickIncrement(binStart, "M6", "reverse") + ONEDAY * 1.5; } else if (stats.exactMonths > threshold) { @@ -27492,8 +27502,8 @@ var Plotly = (() => { var tick0str = ax.l2r(tick0ms).replace(/(^-|i)/g, ""); var tick0len = tick0str.length; if (String(dtick).charAt(0) === "M") { - if (tick0len > 10 || tick0str.substr(5) !== "01-01") ax._tickround = "d"; - else ax._tickround = +dtick.substr(1) % 12 === 0 ? "y" : "m"; + if (tick0len > 10 || tick0str.slice(5) !== "01-01") ax._tickround = "d"; + else ax._tickround = +dtick.slice(1) % 12 === 0 ? "y" : "m"; } else if (dtick >= ONEDAY && tick0len <= 10 || dtick >= ONEDAY * 15) ax._tickround = "d"; else if (dtick >= ONEMIN && tick0len <= 16 || dtick >= ONEHOUR) ax._tickround = "M"; else if (dtick >= ONESEC && tick0len <= 19 || dtick >= ONEMIN) ax._tickround = "S"; @@ -27504,7 +27514,7 @@ var Plotly = (() => { } } else if (isNumeric(dtick) || dtick.charAt(0) === "L") { var rng = ax.range.map(ax.r2d || Number); - if (!isNumeric(dtick)) dtick = Number(dtick.substr(1)); + if (!isNumeric(dtick)) dtick = Number(dtick.slice(1)); ax._tickround = 2 - Math.floor(Math.log(dtick) / Math.LN10 + 0.01); var maxend = Math.max(Math.abs(rng[0]), Math.abs(rng[1])); var rangeexp = Math.floor(Math.log(maxend) / Math.LN10 + 0.01); @@ -27522,7 +27532,7 @@ var Plotly = (() => { var axSign = axrev ? -1 : 1; if (isNumeric(dtick)) return Lib.increment(x, axSign * dtick); var tType = dtick.charAt(0); - var dtSigned = axSign * Number(dtick.substr(1)); + var dtSigned = axSign * Number(dtick.slice(1)); if (tType === "M") return Lib.incrementMonth(x, dtSigned, calendar); if (tType === "L") return Math.log(Math.pow(10, x) + dtSigned) / Math.LN10; if (tType === "D") { @@ -27549,7 +27559,7 @@ var Plotly = (() => { return tmin; } var tType = dtick.charAt(0); - var dtNum = Number(dtick.substr(1)); + var dtNum = Number(dtick.slice(1)); if (tType === "M") { var cnt = 0; var t0 = tick0; @@ -27679,8 +27689,8 @@ var Plotly = (() => { var headStr; var splitIndex = dateStr.indexOf("\n"); if (splitIndex !== -1) { - headStr = dateStr.substr(splitIndex + 1); - dateStr = dateStr.substr(0, splitIndex); + headStr = dateStr.slice(splitIndex + 1); + dateStr = dateStr.slice(0, splitIndex); } if (extraPrecision) { if (headStr !== void 0 && (dateStr === "00:00:00" || dateStr === "00:00")) { @@ -27901,12 +27911,12 @@ var Plotly = (() => { if (tickRound === 0) v = String(Math.floor(v)); else if (tickRound < 0) { v = String(Math.round(v)); - v = v.substr(0, v.length + tickRound); + v = v.slice(0, Math.max(0, v.length + tickRound)); for (var i = tickRound; i < 0; i++) v += "0"; } else { v = String(v); var dp = v.indexOf(".") + 1; - if (dp) v = v.substr(0, dp + tickRound).replace(/\.?0+$/, ""); + if (dp) v = v.slice(0, dp + tickRound).replace(/\.?0+$/, ""); } v = Lib.numSeparate(v, ax._separators, separatethousands); } @@ -28001,8 +28011,8 @@ var Plotly = (() => { var allSubplots = subplotObj.cartesian.concat(subplotObj.gl2d || []); var out = ax ? axes.findSubplotsWithAxis(allSubplots, ax) : allSubplots; out.sort(function(a, b) { - var aParts = a.substr(1).split("y"); - var bParts = b.substr(1).split("y"); + var aParts = a.slice(1).split("y"); + var bParts = b.slice(1).split("y"); if (aParts[0] === bParts[0]) return +aParts[1] - +bParts[1]; return +aParts[0] - +bParts[0]; }); @@ -29977,7 +29987,7 @@ var Plotly = (() => { for (var i = 0; i < classes.length; i++) { var cls = classes[i]; if (cls.indexOf("cursor-") === 0) { - el3.attr(STASHATTR, cls.substr(7)).classed(cls, false); + el3.attr(STASHATTR, cls.slice(7)).classed(cls, false); } } if (!el3.attr(STASHATTR)) { @@ -30219,8 +30229,33 @@ var Plotly = (() => { var shapesWithLegend = (layoutOut.shapes || []).filter(function(d) { return d.showlegend; }); + function isPieWithLegendArray(trace2) { + return Registry.traceIs(trace2, "pie-like") && trace2._length != null && (Array.isArray(trace2.legend) || Array.isArray(trace2.showlegend)); + } + ; + fullData.filter(isPieWithLegendArray).forEach(function(trace2) { + if (trace2.visible) { + legendTraceCount++; + } + for (var index = 0; index < trace2._length; index++) { + var legend = (Array.isArray(trace2.legend) ? trace2.legend[index] : trace2.legend) || "legend"; + if (legend === legendId) { + const showInLegend = Array.isArray(trace2.showlegend) ? trace2.showlegend[index] : trace2.showlegend; + if (showInLegend || trace2._dfltShowLegend) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + } + if (legendId === "legend" && trace2._length > trace2.legend.length) { + for (var idx = trace2.legend.length; idx < trace2._length; idx++) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + }); var allLegendItems = fullData.concat(shapesWithLegend).filter(function(d) { - return legendId === (d.legend || "legend"); + return !isPieWithLegendArray(trace) && legendId === (d.legend || "legend"); }); for (var i = 0; i < allLegendItems.length; i++) { trace = allLegendItems[i]; @@ -30248,7 +30283,7 @@ var Plotly = (() => { layoutOut, basePlotLayoutAttributes, "showlegend", - legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) + layoutOut.showlegend || legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) ); if (showLegend === false) layoutOut[legendId] = void 0; if (showLegend === false && !containerIn.uirevision) return; @@ -30353,7 +30388,11 @@ var Plotly = (() => { } var legends = ["legend"]; for (i = 0; i < allLegendsData.length; i++) { - Lib.pushUnique(legends, allLegendsData[i].legend); + if (Array.isArray(allLegendsData[i].legend)) { + legends = legends.concat(allLegendsData[i].legend); + } else { + Lib.pushUnique(legends, allLegendsData[i].legend); + } } layoutOut._legends = []; for (i = 0; i < legends.length; i++) { @@ -30644,8 +30683,16 @@ var Plotly = (() => { var lgroup = trace.legendgroup; if (!inHover && (!trace.visible || !trace.showlegend)) continue; if (Registry.traceIs(trace, "pie-like")) { + var legendPerSlice = Array.isArray(trace.legend); + var showlegendPerSlice = Array.isArray(trace.showlegend); if (!slicesShown[lgroup]) slicesShown[lgroup] = {}; for (j = 0; j < cd.length; j++) { + if (showlegendPerSlice && trace.showlegend[cd[j].i] === false) { + continue; + } + if (legendPerSlice) { + lid = trace.legend[cd[j].i] || "legend"; + } var labelj = cd[j].label; if (!slicesShown[lgroup][labelj]) { addOneItem(lid, lgroup, { @@ -31841,7 +31888,11 @@ var Plotly = (() => { } function computeTextDimensions(g, gd, legendObj, aTitle) { var legendItem = g.data()[0][0]; - if (!legendObj._inHover && legendItem && !legendItem.trace.showlegend) { + var showlegend = legendItem && legendItem.trace.showlegend; + if (Array.isArray(showlegend)) { + showlegend = showlegend[legendItem.i] !== false; + } + if (!legendObj._inHover && legendItem && !showlegend) { g.remove(); return; } @@ -35111,7 +35162,7 @@ var Plotly = (() => { segments.forEach(function(segment) { var relevantParamIdx = paramsToUse[segment.charAt(0)].drawn; if (relevantParamIdx === void 0) return; - var params = segment.substr(1).match(constants.paramRE); + var params = segment.slice(1).match(constants.paramRE); if (!params || params.length < relevantParamIdx) return; var str = params[relevantParamIdx]; var pos = isRaw ? str : Lib.cleanNumber(str); @@ -35302,7 +35353,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (xParams[paramNumber]) { if (xSizemode === "pixel") param = x2p(xAnchor) + Number(param); else param = x2p(param); @@ -36311,7 +36362,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (paramNumber >= nParams) return param; if (xParams[paramNumber]) param = moveX(param); else if (yParams[paramNumber]) param = moveY(param); @@ -38034,12 +38085,12 @@ var Plotly = (() => { if (typeof a === "string") { aPrefix = a.match(/^[xy]*/)[0]; aLen = aPrefix.length; - a = +a.substr(aLen); + a = +a.slice(aLen); } if (typeof b === "string") { bPrefix = b.match(/^[xy]*/)[0]; bLen = bPrefix.length; - b = +b.substr(bLen); + b = +b.slice(bLen); } var c = a * b; if (!aLen && !bLen) { @@ -38051,7 +38102,7 @@ var Plotly = (() => { if (aLen === bLen) { return c; } - return (aLen > bLen ? aPrefix.substr(bLen) : bPrefix.substr(aLen)) + c; + return (aLen > bLen ? aPrefix.slice(bLen) : bPrefix.slice(aLen)) + c; } function finalRatios(group, fullLayout) { var size = fullLayout._size; @@ -38064,7 +38115,7 @@ var Plotly = (() => { if (typeof val === "string") { var prefix = val.match(/^[xy]*/)[0]; var pLen = prefix.length; - val = +val.substr(pLen); + val = +val.slice(pLen); var mult = prefix.charAt(0) === "y" ? yRatio : 1 / yRatio; for (var j = 0; j < pLen; j++) { val *= mult; @@ -43681,7 +43732,7 @@ var Plotly = (() => { } if (!arrayStr) arrayStr = rootContainers[rootContainers.indexOf(rootPart)]; if (!arrayStr) return false; - var tail = astr.substr(arrayStr.length); + var tail = astr.slice(arrayStr.length); if (!tail) return { array: arrayStr, index: "", property: "" }; match = tail.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/); if (!match) return false; @@ -44038,7 +44089,7 @@ var Plotly = (() => { for (i = 0; i < minLen; i++) { if (name1.charAt(i) !== name2.charAt(i)) break; } - var out = name1.substr(0, i); + var out = name1.slice(0, i); return out.trim(); } function cleanTextPosition(textposition) { @@ -44119,7 +44170,7 @@ var Plotly = (() => { var ATTR_TAIL_RE = /(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/; function getParent(attr) { var tail = attr.search(ATTR_TAIL_RE); - if (tail > 0) return attr.substr(0, tail); + if (tail > 0) return attr.slice(0, tail); } exports.hasParent = function(aobj, attr) { var attrParent = getParent(attr); @@ -44136,8 +44187,8 @@ var Plotly = (() => { var ax = getFromTrace(gd, trace, AX_LETTERS[j]); if (ax && ax.type !== "log") { var axAttr = ax._name; - var sceneName = ax._id.substr(1); - if (sceneName.substr(0, 5) === "scene") { + var sceneName = ax._id.slice(1); + if (sceneName.slice(0, 5) === "scene") { if (layoutUpdate[sceneName] !== void 0) continue; axAttr = sceneName + "." + axAttr; } @@ -45019,7 +45070,7 @@ var Plotly = (() => { } if (attr in aobj || helpers.hasParent(aobj, attr)) return; var extraparam; - if (attr.substr(0, 6) === "LAYOUT") { + if (attr.slice(0, 6) === "LAYOUT") { extraparam = layoutNP(gd.layout, attr.replace("LAYOUT", "")); } else { var tracei = traces[i2]; @@ -45064,7 +45115,7 @@ var Plotly = (() => { else vi = null; } redoit[ai] = vi; - if (ai.substr(0, 6) === "LAYOUT") { + if (ai.slice(0, 6) === "LAYOUT") { param = layoutNP(gd.layout, ai.replace("LAYOUT", "")); undoit[ai] = [undefinedToNull(param.get())]; param.set(Array.isArray(vi) ? vi[0] : vi); @@ -45081,7 +45132,7 @@ var Plotly = (() => { newVal = Array.isArray(vi) ? vi[i % vi.length] : vi; if (newVal === void 0) continue; var finalPart = param.parts[param.parts.length - 1]; - var prefix = ai.substr(0, ai.length - finalPart.length - 1); + var prefix = ai.slice(0, ai.length - finalPart.length - 1); var prefixDot = prefix ? prefix + "." : ""; var innerContFull = prefix ? nestedProperty(contFull, prefix).get() : contFull; valObject = PlotSchema.getTraceValObject(contFull, param.parts); @@ -45306,7 +45357,7 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { if (keys[i].indexOf("allaxes") === 0) { for (j = 0; j < axes.length; j++) { - var scene = axes[j]._id.substr(1); + var scene = axes[j]._id.slice(1); var axisAttr = scene.indexOf("scene") !== -1 ? scene + "." : ""; var newkey = keys[i].replace("allaxes", axisAttr + axes[j]._name); if (!aobj[newkey]) aobj[newkey] = aobj[keys[i]]; @@ -45614,7 +45665,7 @@ var Plotly = (() => { var match = key.match(spec.pattern); if (match) { var head = match[1] || ""; - return { head, tail: key.substr(head.length + 1), attr: spec.attr }; + return { head, tail: key.slice(head.length + 1), attr: spec.attr }; } } } @@ -45675,7 +45726,7 @@ var Plotly = (() => { } newNP.set(undefinedToNull(nestedProperty(oldFullLayout, key).get())); continue; - } else if (tail === "autorange" || tail.substr(0, 6) === "range[") { + } else if (tail === "autorange" || tail.slice(0, 6) === "range[") { var pre0 = layoutPreGUI[head + ".range[0]"]; var pre1 = layoutPreGUI[head + ".range[1]"]; var preAuto = layoutPreGUI[head + ".autorange"]; @@ -45695,7 +45746,7 @@ var Plotly = (() => { Lib.warn("unrecognized GUI edit: " + key); } delete layoutPreGUI[key]; - if (match && match.tail.substr(0, 6) === "range[") { + if (match && match.tail.slice(0, 6) === "range[") { newRangeAccepted[match.head] = 1; } } @@ -47219,7 +47270,7 @@ var Plotly = (() => { for (var i = 0; i < path.length; i++) { var p = path[i]; if (typeof p === "number") { - astr = astr.substr(0, astr.length - 1) + "[" + p + "]"; + astr = astr.slice(0, -1) + "[" + p + "]"; } else { astr += p; } @@ -49810,7 +49861,7 @@ var Plotly = (() => { prevtrace._nexttrace = trace; } } - trace._ownfill = trace.fill && (trace.fill.substr(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.substr(0, 2) === "to" && !trace._prevtrace); + trace._ownfill = trace.fill && (trace.fill.slice(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.slice(0, 2) === "to" && !trace._prevtrace); prevtraces[group] = trace; } else { trace._prevtrace = trace._nexttrace = trace._ownfill = null; @@ -50013,8 +50064,8 @@ var Plotly = (() => { fullpath = thispath; revpath = thisrevpath; } else if (ownFillDir) { - fullpath += "L" + thispath.substr(1); - revpath = thisrevpath + ("L" + revpath.substr(1)); + fullpath += "L" + thispath.slice(1); + revpath = thisrevpath + ("L" + revpath.slice(1)); } else { fullpath += "Z" + thispath; revpath = thisrevpath + "Z" + revpath; @@ -50079,7 +50130,7 @@ var Plotly = (() => { if (pt0 && pt1) { if (ownFillDir) { pt0[fillAxisIndex] = pt1[fillAxisIndex] = fillAxisZero; - transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.substr(1)).call(Drawing.singleFillStyle, gd); + transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.slice(1)).call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(null); } else { transition(ownFillEl3).attr("d", fullpath + "Z").call(Drawing.singleFillStyle, gd); @@ -50089,13 +50140,13 @@ var Plotly = (() => { trace._polygons = thisPolygons; trace._fillElement = ownFillEl3; } else if (tonext) { - if (trace.fill.substr(0, 6) === "tonext" && fullpath && prevRevpath) { + if (trace.fill.slice(0, 6) === "tonext" && fullpath && prevRevpath) { if (trace.fill === "tonext") { transition(tonext).attr("d", fullpath + "Z" + prevRevpath + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makeSelfPolygons(); trace._polygons = thisPolygons.concat(prevPolygons); } else { - transition(tonext).attr("d", fullpath + "L" + prevRevpath.substr(1) + "Z").call(Drawing.singleFillStyle, gd); + transition(tonext).attr("d", fullpath + "L" + prevRevpath.slice(1) + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(prevFillsegments); trace._polygons = thisPolygons; } @@ -51070,7 +51121,7 @@ var Plotly = (() => { }; function indexOfDay(v) { if (typeof v !== "string") return; - return dayStrToNum[v.substr(0, 3).toLowerCase()]; + return dayStrToNum[v.slice(0, 3).toLowerCase()]; } } }); @@ -51661,10 +51712,10 @@ var Plotly = (() => { if (constants.attrRegex.test(ki)) { var axLetter = ki.charAt(0); if (axLetter === "x") { - if (!xi || +ki.substr(5) < +xi.substr(5)) { + if (!xi || +ki.slice(5) < +xi.slice(5)) { xi = ki; } - } else if (!yi || +ki.substr(5) < +yi.substr(5)) { + } else if (!yi || +ki.slice(5) < +yi.slice(5)) { yi = ki; } } @@ -53888,7 +53939,7 @@ var Plotly = (() => { segment = segments[i]; drawnParam = paramsToUse[segment.charAt(0)].drawn; if (drawnParam === void 0) continue; - params = segments[i].substr(1).match(constants.paramRE); + params = segments[i].slice(1).match(constants.paramRE); if (!params || params.length < drawnParam) continue; val = convertVal(params[drawnParam]); if (val < min) min = val; @@ -56239,9 +56290,9 @@ var Plotly = (() => { var subplots = layoutOut._subplots; if (subplots) { var yIds = subplots.cartesian.filter(function(subplotId) { - return subplotId.substr(0, subplotId.indexOf("y")) === axisIds.name2id(axName); + return subplotId.slice(0, Math.max(0, subplotId.indexOf("y"))) === axisIds.name2id(axName); }).map(function(subplotId) { - return subplotId.substr(subplotId.indexOf("y"), subplotId.length); + return subplotId.slice(subplotId.indexOf("y"), subplotId.length); }); var yNames = Lib.simpleMap(yIds, axisIds.id2name); for (var i = 0; i < yNames.length; i++) { @@ -58243,7 +58294,7 @@ var Plotly = (() => { placeholder: fullLayout._dfltTitle.colorbar, containerGroup: g.select("." + cn.cbtitle) }; - var otherClass = titleClass.charAt(0) === "h" ? titleClass.substr(1) : "h" + titleClass; + var otherClass = titleClass.charAt(0) === "h" ? titleClass.slice(1) : "h" + titleClass; g.selectAll("." + otherClass + ",." + otherClass + "-math-group").remove(); Titles.draw(gd, titleClass, extendFlat(dfltTitleOpts, titleOpts || {})); } @@ -61067,6 +61118,12 @@ var Plotly = (() => { dflt: false, editType: "plot" }, + showlegend: extendFlat({}, baseAttrs.showlegend, { + arrayOk: true + }), + legend: extendFlat({}, baseAttrs.legend, { + arrayOk: true + }), title: { text: { valType: "string", @@ -70401,7 +70458,7 @@ var Plotly = (() => { } else { if (directiveObj === UNKNOWN) replacementPart = UNKNOWN; else replacementPart = cDate.formatDate(directiveObj[modifier]); - fmt = fmt.substr(0, i) + replacementPart + fmt.substr(i + directiveLen); + fmt = fmt.slice(0, i) + replacementPart + fmt.slice(i + directiveLen); i += replacementPart.length; } } diff --git a/dist/plotly-basic.min.js b/dist/plotly-basic.min.js index 26e347c5cc5..b6fd239cd23 100644 --- a/dist/plotly-basic.min.js +++ b/dist/plotly-basic.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (basic - minified) v3.3.0 +* plotly.js (basic - minified) v3.3.1 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,13 +12,13 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var nI=Object.defineProperty,iI=Object.defineProperties;var lI=Object.getOwnPropertyDescriptors;var ob=Object.getOwnPropertySymbols;var oI=Object.prototype.hasOwnProperty,sI=Object.prototype.propertyIsEnumerable;var sb=(e,r,t)=>r in e?nI(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,Kl=(e,r)=>{for(var t in r||(r={}))oI.call(r,t)&&sb(e,t,r[t]);if(ob)for(var t of ob(r))sI.call(r,t)&&sb(e,t,r[t]);return e},ov=(e,r)=>iI(e,lI(r));var Z=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var sv=Z(ub=>{"use strict";ub.version="3.3.0"});var cb=Z((fb,uv)=>{(function(r,t,a){t[r]=t[r]||a(),typeof uv!="undefined"&&uv.exports&&(uv.exports=t[r])})("Promise",typeof window!="undefined"?window:fb,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,M){return Object.defineProperty(w,T,{value:b,writable:!0,configurable:M!==!1})}}catch(_){r=function(T,b,M){return T[b]=M,T}}a=function(){var w,T,b;function M(C,k){this.fn=C,this.self=k,this.next=void 0}return{add:function(k,q){b=new M(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 M=0;M{(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,A=new Array(x);x--;)A[x]=p[x];return A}}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,A){s.call(this,p,x,A+"")},u.setProperty=function(p,x,A){f.call(this,p,x+"",A)}}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,A=c.length,S,L;if(arguments.length===1){for(;++x=L){S=L;break}for(;++xL&&(S=L)}else{for(;++x=L){S=L;break}for(;++xL&&(S=L)}return S},e.max=function(c,p){var x=-1,A=c.length,S,L;if(arguments.length===1){for(;++x=L){S=L;break}for(;++xS&&(S=L)}else{for(;++x=L){S=L;break}for(;++xS&&(S=L)}return S},e.extent=function(c,p){var x=-1,A=c.length,S,L,P;if(arguments.length===1){for(;++x=L){S=P=L;break}for(;++xL&&(S=L),P=L){S=P=L;break}for(;++xL&&(S=L),P1)return P/(N-1)},e.deviation=function(){var c=e.variance.apply(this,arguments);return c&&Math.sqrt(c)};function m(c){return{left:function(p,x,A,S){for(arguments.length<3&&(A=0),arguments.length<4&&(S=p.length);A>>1;c(p[L],x)<0?A=L+1:S=L}return A},right:function(p,x,A,S){for(arguments.length<3&&(A=0),arguments.length<4&&(S=p.length);A>>1;c(p[L],x)>0?S=L:A=L+1}return A}}}var y=m(v);e.bisectLeft=y.left,e.bisect=e.bisectRight=y.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){(A=arguments.length)<3&&(x=c.length,A<2&&(p=0));for(var A=x-p,S,L;A;)L=Math.random()*A--|0,S=c[A+p],c[A+p]=c[L+p],c[L+p]=S;return c},e.permute=function(c,p){for(var x=p.length,A=new Array(x);x--;)A[x]=c[p[x]];return A},e.pairs=function(c){for(var p=0,x=c.length-1,A,S=c[0],L=new Array(x<0?0:x);p=0;)for(P=c[p],x=P.length;--x>=0;)L[--S]=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 A=[],S=w(_(x)),L=-1,P;if(c*=S,p*=S,x*=S,x<0)for(;(P=c+x*++L)>p;)A.push(P/S);else for(;(P=c+x*++L)=p.length)return S?S.call(c,N):A?N.sort(A):N;for(var W=-1,j=N.length,ee=p[G++],he,Te,te,oe=new b,ue;++W=p.length)return E;var G=[],W=x[N++];return E.forEach(function(j,ee){G.push({key:j,values:P(ee,N)})}),W?G.sort(function(j,ee){return W(j.key,ee.key)}):G}return c.map=function(E,N){return L(N,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 A=E,c},c.rollup=function(E){return S=E,c},c},e.set=function(c){var p=new H;if(c)for(var x=0,A=c.length;x=0&&(A=c.slice(x+1),c=c.slice(0,x)),c)return arguments.length<2?this[c].on(A):this[c].on(A,p);if(arguments.length===2){if(p==null)for(c in this)this.hasOwnProperty(c)&&this[c].on(A,null);return this}};function K(c){var p=[],x=new b;function A(){for(var S=p,L=-1,P=S.length,E;++L=0&&(x=c.slice(0,p))!=="xmlns"&&(c=c.slice(p+1)),ye.hasOwnProperty(x)?{space:ye[x],local:c}:c}},ge.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(we(p,c[p]));return this}return this.each(we(c,p))};function we(c,p){c=e.ns.qualify(c);function x(){this.removeAttribute(c)}function A(){this.removeAttributeNS(c.space,c.local)}function S(){this.setAttribute(c,p)}function L(){this.setAttributeNS(c.space,c.local,p)}function P(){var N=p.apply(this,arguments);N==null?this.removeAttribute(c):this.setAttribute(c,N)}function E(){var N=p.apply(this,arguments);N==null?this.removeAttributeNS(c.space,c.local):this.setAttributeNS(c.space,c.local,N)}return p==null?c.local?A:x:typeof p=="function"?c.local?E:P:c.local?L:S}function pe(c){return c.trim().replace(/\s+/g," ")}ge.classed=function(c,p){if(arguments.length<2){if(typeof c=="string"){var x=this.node(),A=(c=Fe(c)).length,S=-1;if(p=x.classList){for(;++S=0;)(L=x[A])&&(S&&S!==L.nextSibling&&S.parentNode.insertBefore(L,S),S=L);return this},ge.sort=function(c){c=be.apply(this,arguments);for(var p=-1,x=this.length;++p=p&&(p=S+1);!(N=P[p])&&++p0&&(c=c.slice(0,S));var P=Oe.get(c);P&&(c=P,L=We);function E(){var W=this[A];W&&(this.removeEventListener(c,W,W.$),delete this[A])}function N(){var W=L(p,t(arguments));E.call(this),this.addEventListener(c,this[A]=W,W.$=x),W._=p}function G(){var W=new RegExp("^__on([^.]+)"+e.requote(c)+"$"),j;for(var ee in this)if(j=ee.match(W)){var he=this[ee];this.removeEventListener(j[1],he,he.$),delete this[ee]}}return S?p?N:E:p?V:G}var Oe=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Oe.forEach(function(c){"on"+c in a&&Oe.remove(c)});function Je(c,p){return function(x){var A=e.event;e.event=x,p[0]=this.__data__;try{c.apply(this,p)}finally{e.event=A}}}function We(c,p){var x=Je(c,p);return function(A){var S=this,L=A.relatedTarget;(!L||L!==S&&!(L.compareDocumentPosition(S)&8))&&x.call(S,A)}}var Ze,lr=0;function tr(c){var p=".dragsuppress-"+ ++lr,x="click"+p,A=e.select(i(c)).on("touchmove"+p,ne).on("dragstart"+p,ne).on("selectstart"+p,ne);if(Ze==null&&(Ze="onselectstart"in c?!1:Y(c.style,"userSelect")),Ze){var S=n(c).style,L=S[Ze];S[Ze]="none"}return function(P){if(A.on(p,null),Ze&&(S[Ze]=L),P){var E=function(){A.on(x,null)};A.on(x,function(){ne(),E()},!0),setTimeout(E,0)}}}e.mouse=function(c){return ze(c,me())};var Qe=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 A=x.createSVGPoint();if(Qe<0){var S=i(c);if(S.scrollX||S.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();Qe=!(L.f||L.e),x.remove()}}return Qe?(A.x=p.pageX,A.y=p.pageY):(A.x=p.clientX,A.y=p.clientY),A=A.matrixTransform(c.getScreenCTM().inverse()),[A.x,A.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 A=0,S=p.length,L;A0?1:c<0?-1:0}function it(c,p,x){return(p[0]-c[0])*(x[1]-c[1])-(p[1]-c[1])*(x[0]-c[0])}function _t(c){return c>1?0:c<-1?De:Math.acos(c)}function yt(c){return c>1?sr:c<-1?-sr:Math.asin(c)}function Dt(c){return((c=Math.exp(c))-1/c)/2}function Kt(c){return((c=Math.exp(c))+1/c)/2}function La(c){return((c=Math.exp(2*c))-1)/(c+1)}function sa(c){return(c=Math.sin(c/2))*c}var ua=Math.SQRT2,vr=2,lt=4;e.interpolateZoom=function(c,p){var x=c[0],A=c[1],S=c[2],L=p[0],P=p[1],E=p[2],N=L-x,G=P-A,W=N*N+G*G,j,ee;if(W0&&(je=je.transition().duration(P)),je.call(Ae.event)}function dr(){oe&&oe.domain(te.range().map(function(je){return(je-c.x)/c.k}).map(te.invert)),xe&&xe.domain(ue.range().map(function(je){return(je-c.y)/c.k}).map(ue.invert))}function pr(je){E++||je({type:"zoomstart"})}function Cr(je){dr(),je({type:"zoom",scale:c.k,translate:[c.x,c.y]})}function mr(je){--E||(je({type:"zoomend"}),x=null)}function Tr(){var je=this,Lr=Te.of(je,arguments),qr=0,Kr=e.select(i(je)).on(G,da).on(W,Da),Tt=ve(e.mouse(je)),Ut=tr(je);av.call(je),pr(Lr);function da(){qr=1,ur(e.mouse(je),Tt),Cr(Lr)}function Da(){Kr.on(G,null).on(W,null),Ut(qr),mr(Lr)}}function Jr(){var je=this,Lr=Te.of(je,arguments),qr={},Kr=0,Tt,Ut=".zoom-"+e.event.changedTouches[0].identifier,da="touchmove"+Ut,Da="touchend"+Ut,Ba=[],Ea=e.select(je),Va=tr(je);Ga(),pr(Lr),Ea.on(N,null).on(ee,Ga);function wa(){var Yn=e.touches(je);return Tt=c.k,Yn.forEach(function(pa){pa.identifier in qr&&(qr[pa.identifier]=ve(pa))}),Yn}function Ga(){var Yn=e.event.target;e.select(Yn).on(da,Xl).on(Da,aI),Ba.push(Yn);for(var pa=e.event.changedTouches,gn=0,vi=pa.length;gn1){var Jl=bn[0],tl=bn[1],lv=Jl[0]-tl[0],lb=Jl[1]-tl[1];Kr=lv*lv+lb*lb}}function Xl(){var Yn=e.touches(je),pa,gn,vi,bn;av.call(je);for(var os=0,Jl=Yn.length;os1?1:p,x=x<0?0:x>1?1:x,S=x<=.5?x*(1+p):x+p-x*p,A=2*x-S;function L(E){return E>360?E-=360:E<0&&(E+=360),E<60?A+(S-A)*E/60:E<180?S:E<240?A+(S-A)*(240-E)/60:A}function P(E){return Math.round(L(E)*255)}return new qa(P(c+120),P(c),P(c-120))}e.hcl=Qt;function Qt(c,p,x){return this instanceof Qt?(this.h=+c,this.c=+p,void(this.l=+x)):arguments.length<2?c instanceof Qt?new Qt(c.h,c.c,c.l):c instanceof St?Nc(c.l,c.a,c.b):Nc((c=or((c=e.rgb(c)).r,c.g,c.b)).l,c.a,c.b):new Qt(c,p,x)}var fi=Qt.prototype=new bt;fi.brighter=function(c){return new Qt(this.h,this.c,Math.min(100,this.l+wt*(arguments.length?c:1)))},fi.darker=function(c){return new Qt(this.h,this.c,Math.max(0,this.l-wt*(arguments.length?c:1)))},fi.rgb=function(){return mn(this.h,this.c,this.l).rgb()};function mn(c,p,x){return isNaN(c)&&(c=0),isNaN(p)&&(p=0),new St(x,Math.cos(c*=Mr)*p,Math.sin(c)*p)}e.lab=St;function St(c,p,x){return this instanceof St?(this.l=+c,this.a=+p,void(this.b=+x)):arguments.length<2?c instanceof St?new St(c.l,c.a,c.b):c instanceof Qt?mn(c.h,c.c,c.l):or((c=qa(c)).r,c.g,c.b):new St(c,p,x)}var wt=18,ca=.95047,Yl=1,Ul=1.08883,el=St.prototype=new bt;el.brighter=function(c){return new St(Math.min(100,this.l+wt*(arguments.length?c:1)),this.a,this.b)},el.darker=function(c){return new St(Math.max(0,this.l-wt*(arguments.length?c:1)),this.a,this.b)},el.rgb=function(){return zc(this.l,this.a,this.b)};function zc(c,p,x){var A=(c+16)/116,S=A+p/500,L=A-x/200;return S=Lu(S)*ca,A=Lu(A)*Yl,L=Lu(L)*Ul,new qa(Du(3.2404542*S-1.5371385*A-.4985314*L),Du(-.969266*S+1.8760108*A+.041556*L),Du(.0556434*S-.2040259*A+1.0572252*L))}function Nc(c,p,x){return c>0?new Qt(Math.atan2(x,p)*Br,Math.sqrt(p*p+x*x),c):new Qt(NaN,NaN,c)}function Lu(c){return c>.206893034?c*c*c:(c-4/29)/7.787037}function qu(c){return c>.008856?Math.pow(c,1/3):7.787037*c+4/29}function Du(c){return Math.round(255*(c<=.00304?12.92*c:1.055*Math.pow(c,1/2.4)-.055))}e.rgb=qa;function qa(c,p,x){return this instanceof qa?(this.r=~~c,this.g=~~p,void(this.b=~~x)):arguments.length<2?c instanceof qa?new qa(c.r,c.g,c.b):Gr(""+c,qa,pn):new qa(c,p,x)}function Fc(c){return new qa(c>>16,c>>8&255,c&255)}function jo(c){return Fc(c)+""}var es=qa.prototype=new bt;es.brighter=function(c){c=Math.pow(.7,arguments.length?c:1);var p=this.r,x=this.g,A=this.b,S=30;return!p&&!x&&!A?new qa(S,S,S):(p&&p>4,A=A>>4|A,S=N&240,S=S>>4|S,L=N&15,L=L<<4|L):c.length===7&&(A=(N&16711680)>>16,S=(N&65280)>>8,L=N&255)),p(A,S,L))}function jr(c,p,x){var A=Math.min(c/=255,p/=255,x/=255),S=Math.max(c,p,x),L=S-A,P,E,N=(S+A)/2;return L?(E=N<.5?L/(S+A):L/(2-S-A),c==S?P=(p-x)/L+(p0&&N<1?0:P),new Qr(P,E,N)}function or(c,p,x){c=va(c),p=va(p),x=va(x);var A=qu((.4124564*c+.3575761*p+.1804375*x)/ca),S=qu((.2126729*c+.7151522*p+.072175*x)/Yl),L=qu((.0193339*c+.119192*p+.9503041*x)/Ul);return St(116*S-16,500*(A-S),200*(S-L))}function va(c){return(c/=255)<=.04045?c/12.92:Math.pow((c+.055)/1.055,2.4)}function ot(c){var p=parseFloat(c);return c.charAt(c.length-1)==="%"?Math.round(p*2.55):p}var ha=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});ha.forEach(function(c,p){ha.set(c,Fc(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,A){return arguments.length===2&&typeof x=="function"&&(A=x,x=null),Vl(p,x,c,A)}}function Vl(c,p,x,A){var S={},L=e.dispatch("beforesend","progress","load","error"),P={},E=new XMLHttpRequest,N=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,j;if(!W&&iN(E)||W>=200&&W<300||W===304){try{j=x.call(S,E)}catch(ee){L.error.call(S,ee);return}L.load.call(S,j)}else L.error.call(S,E)}return E.onprogress=function(W){var j=e.event;e.event=W;try{L.progress.call(S,E)}finally{e.event=j}},S.header=function(W,j){return W=(W+"").toLowerCase(),arguments.length<2?P[W]:(j==null?delete P[W]:P[W]=j+"",S)},S.mimeType=function(W){return arguments.length?(p=W==null?null:W+"",S):p},S.responseType=function(W){return arguments.length?(N=W,S):N},S.response=function(W){return x=W,S},["get","post"].forEach(function(W){S[W]=function(){return S.send.apply(S,[W].concat(t(arguments)))}}),S.send=function(W,j,ee){if(arguments.length===2&&typeof j=="function"&&(ee=j,j=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),N!=null&&(E.responseType=N),ee!=null&&S.on("error",ee).on("load",function(Te){ee(null,Te)}),L.beforesend.call(S,E),E.send(j==null?null:j),S},S.abort=function(){return E.abort(),S},e.rebind(S,L,"on"),A==null?S:S.get(nN(A))}function nN(c){return c.length===1?function(p,x){c(p==null?x:null)}:c}function iN(c){var p=c.responseType;return p&&p!=="text"?c.response:c.responseText}e.dsv=function(c,p){var x=new RegExp('["'+c+` -]`),A=c.charCodeAt(0);function S(G,W,j){arguments.length<3&&(j=W,W=null);var ee=Vl(G,p,W==null?L:P(W),j);return ee.row=function(he){return arguments.length?ee.response((W=he)==null?L:P(he)):W},ee}function L(G){return S.parse(G.responseText)}function P(G){return function(W){return S.parse(W.responseText,G)}}S.parse=function(G,W){var j;return S.parseRows(G,function(ee,he){if(j)return j(ee,he-1);var Te=function(te){for(var oe={},ue=ee.length,xe=0;xe=Te)return ee;if(xe)return xe=!1,j;var Ue=te;if(G.charCodeAt(Ue)===34){for(var nr=Ue;nr++24?(isFinite(p)&&(clearTimeout(Bc),Bc=setTimeout(p1,p)),Oc=0):(Oc=1,W3(p1))}e.timer.flush=function(){Z3(),X3()};function Z3(){for(var c=Date.now(),p=Ic;p;)c>=p.t&&p.c(c-p.t)&&(p.c=null),p=p.n;return c}function X3(){for(var c,p=Ic,x=1/0;p;)p.c?(p.t=0;--E)te.push(S[G[j[E]][2]]);for(E=+he;E1&&it(c[x[A-2]],c[x[A-1]],c[S])<=0;)--A;x[A++]=S}return x.slice(0,A)}function lN(c,p){return c[0]-p[0]||c[1]-p[1]}e.geom.polygon=function(c){return re(c,Uc),c};var Uc=e.geom.polygon.prototype=[];Uc.area=function(){for(var c=-1,p=this.length,x,A=this[p-1],S=0;++cle)E=E.L;else if(P=p-fN(E,x),P>le){if(!E.R){A=E;break}E=E.R}else{L>-le?(A=E.P,S=E):P>-le?(A=E,S=E.N):A=S=E;break}var N=j3(c);if(as.insert(A,N),!(!A&&!S)){if(A===S){is(A),S=j3(A.site),as.insert(N,S),N.edge=S.edge=Ru(A.site,N.site),ns(A),ns(S);return}if(!S){N.edge=Ru(A.site,N.site);return}is(A),is(S);var G=A.site,W=G.x,j=G.y,ee=c.x-W,he=c.y-j,Te=S.site,te=Te.x-W,oe=Te.y-j,ue=2*(ee*oe-he*te),xe=ee*ee+he*he,Ae=te*te+oe*oe,ve={x:(oe*xe-he*Ae)/ue+W,y:(ee*Ae-te*xe)/ue+j};Vc(S.edge,G,Te,ve),N.edge=Ru(G,c,null,ve),S.edge=Ru(c,Te,null,ve),ns(A),ns(S)}}function e5(c,p){var x=c.site,A=x.x,S=x.y,L=S-p;if(!L)return A;var P=c.P;if(!P)return-1/0;x=P.site;var E=x.x,N=x.y,G=N-p;if(!G)return E;var W=E-A,j=1/L-1/G,ee=W/G;return j?(-ee+Math.sqrt(ee*ee-2*j*(W*W/(-2*G)-N+G/2+S-L/2)))/j+A:(A+E)/2}function fN(c,p){var x=c.N;if(x)return e5(x,p);var A=c.site;return A.y===p?A.x:1/0}function r5(c){this.site=c,this.edges=[]}r5.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(t5),c.length};function cN(c){for(var p=c[0][0],x=c[1][0],A=c[0][1],S=c[1][1],L,P,E,N,G=Gl,W=G.length,j,ee,he,Te,te,oe;W--;)if(j=G[W],!(!j||!j.prepare()))for(he=j.edges,Te=he.length,ee=0;eele||_(N-P)>le)&&(he.splice(ee,0,new Gc(mN(j.site,oe,_(E-p)le?{x:p,y:_(L-p)le?{x:_(P-S)le?{x,y:_(L-x)le?{x:_(P-A)=-Le)){var ee=N*N+G*G,he=W*W+oe*oe,Te=(oe*ee-G*he)/j,te=(N*he-W*ee)/j,oe=te+E,ue=$3.pop()||new vN;ue.arc=c,ue.site=S,ue.x=Te+P,ue.y=oe+Math.sqrt(Te*Te+te*te),ue.cy=oe,c.circle=ue;for(var xe=null,Ae=Pu._;Ae;)if(ue.y0)){if(te/=he,he<0){if(te0){if(te>ee)return;te>j&&(j=te)}if(te=x-E,!(!he&&te<0)){if(te/=he,he<0){if(te>ee)return;te>j&&(j=te)}else if(he>0){if(te0)){if(te/=Te,Te<0){if(te0){if(te>ee)return;te>j&&(j=te)}if(te=A-N,!(!Te&&te<0)){if(te/=Te,Te<0){if(te>ee)return;te>j&&(j=te)}else if(Te>0){if(te0&&(S.a={x:E+j*he,y:N+j*Te}),ee<1&&(S.b={x:E+ee*he,y:N+ee*Te}),S}}}}}}function dN(c){for(var p=ts,x=hN(c[0][0],c[0][1],c[1][0],c[1][1]),A=p.length,S;A--;)S=p[A],(!pN(S,c)||!x(S)||_(S.a.x-S.b.x)=L)return;if(W>ee){if(!A)A={x:Te,y:P};else if(A.y>=E)return;x={x:Te,y:E}}else{if(!A)A={x:Te,y:E};else if(A.y1)if(W>ee){if(!A)A={x:(P-ue)/oe,y:P};else if(A.y>=E)return;x={x:(E-ue)/oe,y:E}}else{if(!A)A={x:(E-ue)/oe,y:E};else if(A.y=L)return;x={x:L,y:oe*L+ue}}else{if(!A)A={x:L,y:oe*L+ue};else if(A.x=W&&ue.x<=ee&&ue.y>=j&&ue.y<=he?[[W,he],[ee,he],[ee,j],[W,j]]:[];xe.point=N[te]}),G}function E(N){return N.map(function(G,W){return{x:Math.round(A(G,W)/le)*le,y:Math.round(S(G,W)/le)*le,i:W}})}return P.links=function(N){return _1(E(N)).edges.filter(function(G){return G.l&&G.r}).map(function(G){return{source:N[G.l.i],target:N[G.r.i]}})},P.triangles=function(N){var G=[];return _1(E(N)).cells.forEach(function(W,j){for(var ee=W.site,he=W.edges.sort(t5),Te=-1,te=he.length,oe,ue,xe=he[te-1].edge,Ae=xe.l===ee?xe.r:xe.l;++TeAe&&(Ae=W.x),W.y>ve&&(ve=W.y),he.push(W.x),Te.push(W.y);else for(te=0;teAe&&(Ae=Ue),nr>ve&&(ve=nr),he.push(Ue),Te.push(nr)}var ur=Ae-ue,ir=ve-xe;ur>ir?ve=xe+ur:Ae=ue+ir;function dr(mr,Tr,Jr,Et,rt,je,Lr,qr){if(!(isNaN(Jr)||isNaN(Et)))if(mr.leaf){var Kr=mr.x,Tt=mr.y;if(Kr!=null)if(_(Kr-Jr)+_(Tt-Et)<.01)pr(mr,Tr,Jr,Et,rt,je,Lr,qr);else{var Ut=mr.point;mr.x=mr.y=mr.point=null,pr(mr,Ut,Kr,Tt,rt,je,Lr,qr),pr(mr,Tr,Jr,Et,rt,je,Lr,qr)}else mr.x=Jr,mr.y=Et,mr.point=Tr}else pr(mr,Tr,Jr,Et,rt,je,Lr,qr)}function pr(mr,Tr,Jr,Et,rt,je,Lr,qr){var Kr=(rt+Lr)*.5,Tt=(je+qr)*.5,Ut=Jr>=Kr,da=Et>=Tt,Da=da<<1|Ut;mr.leaf=!1,mr=mr.nodes[Da]||(mr.nodes[Da]=i5()),Ut?rt=Kr:Lr=Kr,da?je=Tt:qr=Tt,dr(mr,Tr,Jr,Et,rt,je,Lr,qr)}var Cr=i5();if(Cr.add=function(mr){dr(Cr,mr,+j(mr,++te),+ee(mr,te),ue,xe,Ae,ve)},Cr.visit=function(mr){Fu(mr,Cr,ue,xe,Ae,ve)},Cr.find=function(mr){return _N(Cr,mr[0],mr[1],ue,xe,Ae,ve)},te=-1,p==null){for(;++teL||ee>P||he=Ue,ir=x>=nr,dr=ir<<1|ur,pr=dr+4;drx&&(L=p.slice(x,L),E[P]?E[P]+=L:E[++P]=L),(A=A[0])===(S=S[0])?E[P]?E[P]+=S:E[++P]=S:(E[++P]=null,N.push({i:P,x:Ri(A,S)})),x=M1.lastIndex;return x=0&&!(A=e.interpolators[x](c,p)););return A}e.interpolators=[function(c,p){var x=typeof p;return(x==="string"?ha.has(p.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(p)?w1:o5:p instanceof bt?w1:Array.isArray(p)?Xc:x==="object"&&isNaN(p)?l5:Ri)(c,p)}],e.interpolateArray=Xc;function Xc(c,p){var x=[],A=[],S=c.length,L=p.length,P=Math.min(c.length,p.length),E;for(E=0;E=0?c.slice(0,p):c,A=p>=0?c.slice(p+1):"in";return x=wN.get(x)||s5,A=TN.get(A)||J,MN(A(x.apply(null,r.call(arguments,1))))};function MN(c){return function(p){return p<=0?0:p>=1?1:c(p)}}function u5(c){return function(p){return 1-c(1-p)}}function f5(c){return function(p){return .5*(p<.5?c(2*p):2-c(2-2*p))}}function AN(c){return c*c}function kN(c){return c*c*c}function SN(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 CN(c){return function(p){return Math.pow(p,c)}}function LN(c){return 1-Math.cos(c*sr)}function qN(c){return Math.pow(2,10*(c-1))}function DN(c){return 1-Math.sqrt(1-c*c)}function EN(c,p){var x;return arguments.length<2&&(p=.45),arguments.length?x=p/ar*Math.asin(1/c):(c=1,x=p/4),function(A){return 1+c*Math.pow(2,-10*A)*Math.sin((A-x)*ar/p)}}function PN(c){return c||(c=1.70158),function(p){return p*p*((c+1)*p-c)}}function RN(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=zN;function zN(c,p){c=e.hcl(c),p=e.hcl(p);var x=c.h,A=c.c,S=c.l,L=p.h-x,P=p.c-A,E=p.l-S;return isNaN(P)&&(P=0,A=isNaN(A)?p.c:A),isNaN(L)?(L=0,x=isNaN(x)?p.h:x):L>180?L-=360:L<-180&&(L+=360),function(N){return mn(x+L*N,A+P*N,S+E*N)+""}}e.interpolateHsl=NN;function NN(c,p){c=e.hsl(c),p=e.hsl(p);var x=c.h,A=c.s,S=c.l,L=p.h-x,P=p.s-A,E=p.l-S;return isNaN(P)&&(P=0,A=isNaN(A)?p.s:A),isNaN(L)?(L=0,x=isNaN(x)?p.h:x):L>180?L-=360:L<-180&&(L+=360),function(N){return pn(x+L*N,A+P*N,S+E*N)+""}}e.interpolateLab=FN;function FN(c,p){c=e.lab(c),p=e.lab(p);var x=c.l,A=c.a,S=c.b,L=p.l-x,P=p.a-A,E=p.b-S;return function(N){return zc(x+L*N,A+P*N,S+E*N)+""}}e.interpolateRound=c5;function c5(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 A=p.transform.baseVal.consolidate()}return new v5(A?A.matrix:HN)})(c)};function v5(c){var p=[c.a,c.b],x=[c.c,c.d],A=d5(p),S=h5(p,x),L=d5(IN(x,p,-S))||0;p[0]*x[1]180?p+=360:p-c>180&&(c+=360),A.push({i:x.push(ls(x)+"rotate(",null,")")-2,x:Ri(c,p)})):p&&x.push(ls(x)+"rotate("+p+")")}function YN(c,p,x,A){c!==p?A.push({i:x.push(ls(x)+"skewX(",null,")")-2,x:Ri(c,p)}):p&&x.push(ls(x)+"skewX("+p+")")}function UN(c,p,x,A){if(c[0]!==p[0]||c[1]!==p[1]){var S=x.push(ls(x)+"scale(",null,",",null,")");A.push({i:S-4,x:Ri(c[0],p[0])},{i:S-2,x:Ri(c[1],p[1])})}else(p[0]!==1||p[1]!==1)&&x.push(ls(x)+"scale("+p+")")}function p5(c,p){var x=[],A=[];return c=e.transform(c),p=e.transform(p),ON(c.translate,p.translate,x,A),BN(c.rotate,p.rotate,x,A),YN(c.skew,p.skew,x,A),UN(c.scale,p.scale,x,A),c=p=null,function(S){for(var L=-1,P=A.length,E;++L0?L=ve:(x.c=null,x.t=NaN,x=null,p.end({type:"end",alpha:L=0})):ve>0&&(p.start({type:"start",alpha:L=ve}),x=Yc(c.tick)),c):L},c.start=function(){var ve,Ue=he.length,nr=Te.length,ur=A[0],ir=A[1],dr,pr;for(ve=0;ve=0;)L.push(W=G[N]),W.parent=E,W.depth=E.depth+1;x&&(E.value=0),E.children=G}else x&&(E.value=+x.call(A,E,E.depth)||0),delete E.children;return ci(S,function(j){var ee,he;c&&(ee=j.children)&&ee.sort(c),x&&(he=j.parent)&&(he.value+=j.value)}),P}return A.sort=function(S){return arguments.length?(c=S,A):c},A.children=function(S){return arguments.length?(p=S,A):p},A.value=function(S){return arguments.length?(x=S,A):x},A.revalue=function(S){return x&&(Hu(S,function(L){L.children&&(L.value=0)}),ci(S,function(L){var P;L.children||(L.value=+x.call(A,L,L.depth)||0),(P=L.parent)&&(P.value+=L.value)})),S},A};function Iu(c,p){return e.rebind(c,p,"sort","children","value"),c.nodes=c,c.links=nF,c}function Hu(c,p){for(var x=[c];(c=x.pop())!=null;)if(p(c),(S=c.children)&&(A=S.length))for(var A,S;--A>=0;)x.push(S[A])}function ci(c,p){for(var x=[c],A=[];(c=x.pop())!=null;)if(A.push(c),(P=c.children)&&(L=P.length))for(var S=-1,L,P;++SS&&(S=E),A.push(E)}for(P=0;PA&&(x=p,A=S);return x}function cF(c){return c.reduce(vF,0)}function vF(c,p){return c+p[1]}e.layout.histogram=function(){var c=!0,p=Number,x=dF,A=hF;function S(L,ee){for(var E=[],N=L.map(p,this),G=x.call(this,N,ee),W=A.call(this,G,N,ee),j,ee=-1,he=N.length,Te=W.length-1,te=c?1:1/he,oe;++ee0)for(ee=-1;++ee=G[0]&&oe<=G[1]&&(j=E[e.bisect(W,oe,1,Te)-1],j.y+=te,j.push(L[ee]));return E}return S.value=function(L){return arguments.length?(p=L,S):p},S.range=function(L){return arguments.length?(x=Rr(L),S):x},S.bins=function(L){return arguments.length?(A=typeof L=="number"?function(P){return b5(P,L)}:Rr(L),S):A},S.frequency=function(L){return arguments.length?(c=!!L,S):c},S};function hF(c,p){return b5(c,Math.ceil(Math.log(p.length)/Math.LN2+1))}function b5(c,p){for(var x=-1,A=+c[0],S=(c[1]-A)/p,L=[];++x<=p;)L[x]=S*x+A;return L}function dF(c){return[e.min(c),e.max(c)]}e.layout.pack=function(){var c=e.layout.hierarchy().sort(pF),p=0,x=[1,1],A;function S(L,P){var E=c.call(this,L,P),N=E[0],G=x[0],W=x[1],j=A==null?Math.sqrt:typeof A=="function"?A:function(){return A};if(N.x=N.y=0,ci(N,function(he){he.r=+j(he.value)}),ci(N,w5),p){var ee=p*(A?1:Math.max(2*N.r/G,2*N.r/W))/2;ci(N,function(he){he.r+=ee}),ci(N,w5),ci(N,function(he){he.r-=ee})}return T5(N,G/2,W/2,A?1:1/Math.max(2*N.r/G,2*N.r/W)),E}return S.size=function(L){return arguments.length?(x=L,S):x},S.radius=function(L){return arguments.length?(A=L==null||typeof L=="function"?L:+L,S):A},S.padding=function(L){return arguments.length?(p=+L,S):p},Iu(S,c)};function pF(c,p){return c.value-p.value}function S1(c,p){var x=c._pack_next;c._pack_next=p,p._pack_prev=c,p._pack_next=x,x._pack_prev=p}function x5(c,p){c._pack_next=p,p._pack_prev=c}function _5(c,p){var x=p.x-c.x,A=p.y-c.y,S=c.r+p.r;return .999*S*S>x*x+A*A}function w5(c){if(!(p=c.children)||!(ee=p.length))return;var p,x=1/0,A=-1/0,S=1/0,L=-1/0,P,E,N,G,W,j,ee;function he(ve){x=Math.min(ve.x-ve.r,x),A=Math.max(ve.x+ve.r,A),S=Math.min(ve.y-ve.r,S),L=Math.max(ve.y+ve.r,L)}if(p.forEach(mF),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(N=p[2],M5(P,E,N),he(N),S1(P,N),P._pack_prev=N,S1(N,E),E=P._pack_next,G=3;Goe.x&&(oe=Ue),Ue.depth>ue.depth&&(ue=Ue)});var xe=p(te,oe)/2-te.x,Ae=x[0]/(oe.x+p(oe,te)/2+xe),ve=x[1]/(ue.depth||1);Hu(he,function(Ue){Ue.x=(Ue.x+xe)*Ae,Ue.y=Ue.depth*ve})}return ee}function L(W){for(var j={A:null,children:[W]},ee=[j],he;(he=ee.pop())!=null;)for(var Te=he.children,te,oe=0,ue=Te.length;oe0&&(gF(xF(te,W,ee),W,Ue),ue+=Ue,xe+=Ue),Ae+=te.m,ue+=he.m,ve+=oe.m,xe+=Te.m;te&&!L1(Te)&&(Te.t=te,Te.m+=Ae-xe),he&&!C1(oe)&&(oe.t=he,oe.m+=ue-ve,ee=W)}return ee}function G(W){W.x*=x[0],W.y=W.depth*x[1]}return S.separation=function(W){return arguments.length?(p=W,S):p},S.size=function(W){return arguments.length?(A=(x=W)==null?G:null,S):A?null:x},S.nodeSize=function(W){return arguments.length?(A=(x=W)==null?null:G,S):A?x:null},Iu(S,c)};function A5(c,p){return c.parent==p.parent?1:2}function C1(c){var p=c.children;return p.length?p[0]:c.t}function L1(c){var p=c.children,x;return(x=p.length)?p[x-1]:c.t}function gF(c,p,x){var A=x/(p.i-c.i);p.c-=A,p.s+=x,c.c+=A,p.z+=x,p.m+=x}function bF(c){for(var p=0,x=0,A=c.children,S=A.length,L;--S>=0;)L=A[S],L.z+=p,L.m+=p,p+=L.s+(x+=L.c)}function xF(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=A5,x=[1,1],A=!1;function S(L,P){var E=c.call(this,L,P),N=E[0],G,W=0;ci(N,function(te){var oe=te.children;oe&&oe.length?(te.x=wF(oe),te.y=_F(oe)):(te.x=G?W+=p(te,G):0,te.y=0,G=te)});var j=k5(N),ee=S5(N),he=j.x-p(j,ee)/2,Te=ee.x+p(ee,j)/2;return ci(N,A?function(te){te.x=(te.x-N.x)*x[0],te.y=(N.y-te.y)*x[1]}:function(te){te.x=(te.x-he)/(Te-he)*x[0],te.y=(1-(N.y?te.y/N.y:1))*x[1]}),E}return S.separation=function(L){return arguments.length?(p=L,S):p},S.size=function(L){return arguments.length?(A=(x=L)==null,S):A?null:x},S.nodeSize=function(L){return arguments.length?(A=(x=L)!=null,S):A?x:null},Iu(S,c)};function _F(c){return 1+e.max(c,function(p){return p.y})}function wF(c){return c.reduce(function(p,x){return p+x.x},0)/c.length}function k5(c){var p=c.children;return p&&p.length?k5(p[0]):c}function S5(c){var p=c.children,x;return p&&(x=p.length)?S5(p[x-1]):c}e.layout.treemap=function(){var c=e.layout.hierarchy(),p=Math.round,x=[1,1],A=null,S=q1,L=!1,P,E="squarify",N=.5*(1+Math.sqrt(5));function G(te,oe){for(var ue=-1,xe=te.length,Ae,ve;++ue0;)xe.push(ve=Ae[ir-1]),xe.area+=ve.area,E!=="squarify"||(nr=ee(xe,ur))<=Ue?(Ae.pop(),Ue=nr):(xe.area-=xe.pop().area,he(xe,ur,ue,!1),ur=Math.min(ue.dx,ue.dy),xe.length=xe.area=0,Ue=1/0);xe.length&&(he(xe,ur,ue,!0),xe.length=xe.area=0),oe.forEach(W)}}function j(te){var oe=te.children;if(oe&&oe.length){var ue=S(te),xe=oe.slice(),Ae,ve=[];for(G(xe,ue.dx*ue.dy/te.value),ve.area=0;Ae=xe.pop();)ve.push(Ae),ve.area+=Ae.area,Ae.z!=null&&(he(ve,Ae.z?ue.dx:ue.dy,ue,!xe.length),ve.length=ve.area=0);oe.forEach(j)}}function ee(te,oe){for(var ue=te.area,xe,Ae=0,ve=1/0,Ue=-1,nr=te.length;++UeAe&&(Ae=xe));return ue*=ue,oe*=oe,ue?Math.max(oe*Ae*N/ue,ue/(oe*ve*N)):1/0}function he(te,oe,ue,xe){var Ae=-1,ve=te.length,Ue=ue.x,nr=ue.y,ur=oe?p(te.area/oe):0,ir;if(oe==ue.dx){for((xe||ur>ue.dy)&&(ur=ue.dy);++Aeue.dx)&&(ur=ue.dx);++Ae1);return c+p*A*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?AF:TF,G=A?GN:VN;return S=N(c,p,G,x),L=N(p,c,G,Wl),E}function E(N){return S(N)}return E.invert=function(N){return L(N)},E.domain=function(N){return arguments.length?(c=N.map(Number),P()):c},E.range=function(N){return arguments.length?(p=N,P()):p},E.rangeRound=function(N){return E.range(N).interpolate(c5)},E.clamp=function(N){return arguments.length?(A=N,P()):A},E.interpolate=function(N){return arguments.length?(x=N,P()):x},E.ticks=function(N){return P1(c,N)},E.tickFormat=function(N,G){return d3_scale_linearTickFormat(c,N,G)},E.nice=function(N){return E5(c,N),P()},E.copy=function(){return q5(c,p,x,A)},P()}function D5(c,p){return e.rebind(c,p,"range","rangeRound","interpolate","clamp")}function E5(c,p){return D1(c,L5(E1(c,p)[2])),D1(c,L5(E1(c,p)[2])),c}function E1(c,p){p==null&&(p=10);var x=Jc(c),A=x[1]-x[0],S=Math.pow(10,Math.floor(Math.log(A/p)/Math.LN10)),L=p/A*S;return L<=.15?S*=10:L<=.35?S*=5:L<=.75&&(S*=2),x[0]=Math.ceil(x[0]/S)*S,x[1]=Math.floor(x[1]/S)*S+S*.5,x[2]=S,x}function P1(c,p){return e.range.apply(e,E1(c,p))}var kF={s:1,g:1,p:1,r:1,e:1};function P5(c){return-Math.floor(Math.log(c)/Math.LN10+.01)}function mie(c,p){var x=P5(p[2]);return c in kF?Math.abs(x-P5(Math.max(_(p[0]),_(p[1]))))+ +(c!=="e"):x-(c==="%")*2}e.scale.log=function(){return R5(e.scale.linear().domain([0,1]),10,!0,[1,10])};function R5(c,p,x,A){function S(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(S(E))}return P.invert=function(E){return L(c.invert(E))},P.domain=function(E){return arguments.length?(x=E[0]>=0,c.domain((A=E.map(Number)).map(S)),P):A},P.base=function(E){return arguments.length?(p=+E,c.domain(A.map(S)),P):p},P.nice=function(){var E=D1(A.map(S),x?Math:SF);return c.domain(E),A=E.map(L),P},P.ticks=function(){var E=Jc(A),N=[],G=E[0],W=E[1],j=Math.floor(S(G)),ee=Math.ceil(S(W)),he=p%1?2:p;if(isFinite(ee-j)){if(x){for(;j0;Te--)N.push(L(j)*Te);for(j=0;N[j]W;ee--);N=N.slice(j,ee)}return N},P.copy=function(){return R5(c.copy(),p,x,A)},D5(P,c)}var SF={floor:function(c){return-Math.ceil(-c)},ceil:function(c){return-Math.floor(-c)}};e.scale.pow=function(){return z5(e.scale.linear(),1,[0,1])};function z5(c,p,x){var A=Qc(p),S=Qc(1/p);function L(P){return c(A(P))}return L.invert=function(P){return S(c.invert(P))},L.domain=function(P){return arguments.length?(c.domain((x=P.map(Number)).map(A)),L):x},L.ticks=function(P){return P1(x,P)},L.tickFormat=function(P,E){return d3_scale_linearTickFormat(x,P,E)},L.nice=function(P){return L.domain(E5(x,P))},L.exponent=function(P){return arguments.length?(A=Qc(p=P),S=Qc(1/p),c.domain(x.map(A)),L):p},L.copy=function(){return z5(c.copy(),p,x)},D5(L,c)}function Qc(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 N5([],{t:"range",a:[[]]})};function N5(c,p){var x,A,S;function L(E){return A[((x.get(E)||(p.t==="range"?x.set(E,c.push(E)):NaN))-1)%A.length]}function P(E,N){return e.range(c.length).map(function(G){return E+N*G})}return L.domain=function(E){if(!arguments.length)return c;c=[],x=new b;for(var N=-1,G=E.length,W;++N0?x[L-1]:c[0],Lee?0:1;if(W=fr)return N(W,Te)+(G?N(G,1-Te):"")+"Z";var te,oe,ue,xe,Ae=0,ve=0,Ue,nr,ur,ir,dr,pr,Cr,mr,Tr=[];if((xe=(+P.apply(this,arguments)||0)/2)&&(ue=A===$c?Math.sqrt(G*G+W*W):+A.apply(this,arguments),Te||(ve*=-1),W&&(ve=yt(ue/W*Math.sin(xe))),G&&(Ae=yt(ue/G*Math.sin(xe)))),W){Ue=W*Math.cos(j+ve),nr=W*Math.sin(j+ve),ur=W*Math.cos(ee-ve),ir=W*Math.sin(ee-ve);var Jr=Math.abs(ee-j-2*ve)<=De?0:1;if(ve&&jc(Ue,nr,ur,ir)===Te^Jr){var Et=(j+ee)/2;Ue=W*Math.cos(Et),nr=W*Math.sin(Et),ur=ir=null}}else Ue=nr=0;if(G){dr=G*Math.cos(ee-Ae),pr=G*Math.sin(ee-Ae),Cr=G*Math.cos(j+Ae),mr=G*Math.sin(j+Ae);var rt=Math.abs(j-ee+2*Ae)<=De?0:1;if(Ae&&jc(dr,pr,Cr,mr)===1-Te^rt){var je=(j+ee)/2;dr=G*Math.cos(je),pr=G*Math.sin(je),Cr=mr=null}}else dr=pr=0;if(he>le&&(te=Math.min(Math.abs(W-G)/2,+x.apply(this,arguments)))>.001){oe=G0?0:1}function ev(c,p,x,A,S){var L=c[0]-p[0],P=c[1]-p[1],E=(S?A:-A)/Math.sqrt(L*L+P*P),N=E*P,G=-E*L,W=c[0]+N,j=c[1]+G,ee=p[0]+N,he=p[1]+G,Te=(W+ee)/2,te=(j+he)/2,oe=ee-W,ue=he-j,xe=oe*oe+ue*ue,Ae=x-A,ve=W*he-ee*j,Ue=(ue<0?-1:1)*Math.sqrt(Math.max(0,Ae*Ae*xe-ve*ve)),nr=(ve*ue-oe*Ue)/xe,ur=(-ve*oe-ue*Ue)/xe,ir=(ve*ue+oe*Ue)/xe,dr=(-ve*oe+ue*Ue)/xe,pr=nr-Te,Cr=ur-te,mr=ir-Te,Tr=dr-te;return pr*pr+Cr*Cr>mr*mr+Tr*Tr&&(nr=ir,ur=dr),[[nr-N,ur-G],[nr*x/Ae,ur*x/Ae]]}function U5(){return!0}function V5(c){var p=rs,x=Eu,A=U5,S=Bn,L=S.key,P=.7;function E(N){var G=[],W=[],j=-1,ee=N.length,he,Te=Rr(p),te=Rr(x);function oe(){G.push("M",S(c(W),P))}for(;++j1?c.join("L"):c+"Z"}function G5(c){return c.join("L")+"Z"}function NF(c){for(var p=0,x=c.length,A=c[0],S=[A[0],",",A[1]];++p1&&S.push("H",A[0]),S.join("")}function z1(c){for(var p=0,x=c.length,A=c[0],S=[A[0],",",A[1]];++p1){E=p[1],L=c[N],N++,A+="C"+(S[0]+P[0])+","+(S[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*A,P[E+1]=L*S));for(E=-1;++E<=N;)L=(c[Math.min(N,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 GF(c){return c.length<3?Bn(c):c[0]+rv(c,VF(c))}e.svg.line.radial=function(){var c=V5(J5);return c.radius=c.x,delete c.x,c.angle=c.y,delete c.y,c};function J5(c){for(var p,x=-1,A=c.length,S,L;++xDe)+",1 "+j}function G(W,j,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?(A=Rr(W),L):A},L.endAngle=function(W){return arguments.length?(S=Rr(W),L):S},L};function WF(c){return c.radius}e.svg.diagonal=function(){var c=Q5,p=$5,x=j5;function A(S,L){var P=c.call(this,S,L),E=p.call(this,S,L),N=(P.y+E.y)/2,G=[P,{x:P.x,y:N},{x:E.x,y:N},E];return G=G.map(x),"M"+G[0]+"C"+G[1]+" "+G[2]+" "+G[3]}return A.source=function(S){return arguments.length?(c=Rr(S),A):c},A.target=function(S){return arguments.length?(p=Rr(S),A):p},A.projection=function(S){return arguments.length?(x=S,A):x},A};function j5(c){return[c.x,c.y]}e.svg.diagonal.radial=function(){var c=e.svg.diagonal(),p=j5,x=c.projection;return c.projection=function(A){return arguments.length?x(ZF(p=A)):p},c};function ZF(c){return function(){var p=c.apply(this,arguments),x=p[0],A=p[1]-sr;return[x*Math.cos(A),x*Math.sin(A)]}}e.svg.symbol=function(){var c=JF,p=XF;function x(A,S){return(rb.get(c.call(this,A,S))||eb)(p.call(this,A,S))}return x.type=function(A){return arguments.length?(c=Rr(A),x):c},x.size=function(A){return arguments.length?(p=Rr(A),x):p},x};function XF(){return 64}function JF(){return"circle"}function eb(c){var p=Math.sqrt(c/De);return"M0,"+p+"A"+p+","+p+" 0 1,1 0,"+-p+"A"+p+","+p+" 0 1,1 0,"+p+"Z"}var rb=e.map({circle:eb,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*tb)),x=p*tb;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/tv),x=p*tv/2;return"M0,"+x+"L"+p+","+-x+" "+-p+","+-x+"Z"},"triangle-up":function(c){var p=Math.sqrt(c/tv),x=p*tv/2;return"M0,"+-x+"L"+p+","+x+" "+-p+","+x+"Z"}});e.svg.symbolTypes=rb.keys();var tv=Math.sqrt(3),tb=Math.tan(30*Mr);ge.transition=function(c){for(var p=Zl||++nb,x=B1(c),A=[],S,L,P=nv||{time:Date.now(),ease:SN,delay:0,duration:250},E=-1,N=this.length;++E0;)j[--xe].call(c,ue);if(oe>=1)return P.event&&P.event.end.call(c,c.__data__,p),--L.count?delete L[A]:delete c[x],1}P||(E=S.time,N=Yc(ee,0,E),P=L[A]={tween:new b,time:E,timer:N,delay:S.delay,duration:S.duration,ease:S.ease,index:p},S=null,++L.count)}e.svg.axis=function(){var c=e.scale.linear(),p=ib,x=6,A=6,S=3,L=[10],P=null,E;function N(G){G.each(function(){var W=e.select(this),j=this.__chart__||c,ee=this.__chart__=c.copy(),he=P==null?ee.ticks?ee.ticks.apply(ee,L):ee.domain():P,Te=E==null?ee.tickFormat?ee.tickFormat.apply(ee,L):J:E,te=W.selectAll(".tick").data(he,ee),oe=te.enter().insert("g",".domain").attr("class","tick").style("opacity",le),ue=e.transition(te.exit()).style("opacity",le).remove(),xe=e.transition(te.order()).style("opacity",1),Ae=Math.max(x,0)+S,ve,Ue=Kc(ee),nr=W.selectAll(".domain").data([0]),ur=(nr.enter().append("path").attr("class","domain"),e.transition(nr));oe.append("line"),oe.append("text");var ir=oe.select("line"),dr=xe.select("line"),pr=te.select("text").text(Te),Cr=oe.select("text"),mr=xe.select("text"),Tr=p==="top"||p==="left"?-1:1,Jr,Et,rt,je;if(p==="bottom"||p==="top"?(ve=$F,Jr="x",rt="y",Et="x2",je="y2",pr.attr("dy",Tr<0?"0em":".71em").style("text-anchor","middle"),ur.attr("d","M"+Ue[0]+","+Tr*A+"V0H"+Ue[1]+"V"+Tr*A)):(ve=jF,Jr="y",rt="x",Et="y2",je="x2",pr.attr("dy",".32em").style("text-anchor",Tr<0?"end":"start"),ur.attr("d","M"+Tr*A+","+Ue[0]+"H0V"+Ue[1]+"H"+Tr*A)),ir.attr(je,Tr*x),Cr.attr(rt,Tr*Ae),dr.attr(Et,0).attr(je,Tr*x),mr.attr(Jr,0).attr(rt,Tr*Ae),ee.rangeBand){var Lr=ee,qr=Lr.rangeBand()/2;j=ee=function(Kr){return Lr(Kr)+qr}}else j.rangeBand?j=ee:ue.call(ve,ee,j);oe.call(ve,j,ee),xe.call(ve,ee,ee)})}return N.scale=function(G){return arguments.length?(c=G,N):c},N.orient=function(G){return arguments.length?(p=G in QF?G+"":ib,N):p},N.ticks=function(){return arguments.length?(L=t(arguments),N):L},N.tickValues=function(G){return arguments.length?(P=G,N):P},N.tickFormat=function(G){return arguments.length?(E=G,N):E},N.tickSize=function(G){var W=arguments.length;return W?(x=+G,A=+arguments[W-1],N):x},N.innerTickSize=function(G){return arguments.length?(x=+G,N):x},N.outerTickSize=function(G){return arguments.length?(A=+G,N):A},N.tickPadding=function(G){return arguments.length?(S=+G,N):S},N.tickSubdivide=function(){return arguments.length&&N},N};var ib="bottom",QF={top:1,right:1,bottom:1,left:1};function $F(c,p,x){c.attr("transform",function(A){var S=p(A);return"translate("+(isFinite(S)?S:x(A))+",0)"})}function jF(c,p,x){c.attr("transform",function(A){var S=p(A);return"translate(0,"+(isFinite(S)?S:x(A))+")"})}e.svg.brush=function(){var c=de(W,"brushstart","brush","brushend"),p=null,x=null,A=[0,0],S=[0,0],L,P,E=!0,N=!0,G=Y1[0];function W(te){te.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),ue=oe.selectAll(".background").data([0]);ue.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 xe=oe.selectAll(".resize").data(G,J);xe.exit().remove(),xe.enter().append("g").attr("class",function(nr){return"resize "+nr}).style("cursor",function(nr){return eI[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"),xe.style("display",W.empty()?"none":null);var Ae=e.transition(oe),ve=e.transition(ue),Ue;p&&(Ue=Kc(p),ve.attr("x",Ue[0]).attr("width",Ue[1]-Ue[0]),ee(Ae)),x&&(Ue=Kc(x),ve.attr("y",Ue[0]).attr("height",Ue[1]-Ue[0]),he(Ae)),j(Ae)})}W.event=function(te){te.each(function(){var oe=c.of(this,arguments),ue={x:A,y:S,i:L,j:P},xe=this.__chart__||ue;this.__chart__=ue,Zl?e.select(this).transition().each("start.brush",function(){L=xe.i,P=xe.j,A=xe.x,S=xe.y,oe({type:"brushstart"})}).tween("brush:brush",function(){var Ae=Xc(A,ue.x),ve=Xc(S,ue.y);return L=P=null,function(Ue){A=ue.x=Ae(Ue),S=ue.y=ve(Ue),oe({type:"brush",mode:"resize"})}}).each("end.brush",function(){L=ue.i,P=ue.j,oe({type:"brush",mode:"resize"}),oe({type:"brushend"})}):(oe({type:"brushstart"}),oe({type:"brush",mode:"resize"}),oe({type:"brushend"}))})};function j(te){te.selectAll(".resize").attr("transform",function(oe){return"translate("+A[+/e$/.test(oe)]+","+S[+/^s/.test(oe)]+")"})}function ee(te){te.select(".extent").attr("x",A[0]),te.selectAll(".extent,.n>rect,.s>rect").attr("width",A[1]-A[0])}function he(te){te.select(".extent").attr("y",S[0]),te.selectAll(".extent,.e>rect,.w>rect").attr("height",S[1]-S[0])}function Te(){var te=this,oe=e.select(e.event.target),ue=c.of(te,arguments),xe=e.select(te),Ae=oe.datum(),ve=!/^(n|s)$/.test(Ae)&&p,Ue=!/^(e|w)$/.test(Ae)&&x,nr=oe.classed("extent"),ur=tr(te),ir,dr=e.mouse(te),pr,Cr=e.select(i(te)).on("keydown.brush",Jr).on("keyup.brush",Et);if(e.event.changedTouches?Cr.on("touchmove.brush",rt).on("touchend.brush",Lr):Cr.on("mousemove.brush",rt).on("mouseup.brush",Lr),xe.interrupt().selectAll("*").interrupt(),nr)dr[0]=A[0]-dr[0],dr[1]=S[0]-dr[1];else if(Ae){var mr=+/w$/.test(Ae),Tr=+/^n/.test(Ae);pr=[A[1-mr]-dr[0],S[1-Tr]-dr[1]],dr[0]=A[mr],dr[1]=S[Tr]}else e.event.altKey&&(ir=dr.slice());xe.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",oe.style("cursor")),ue({type:"brushstart"}),rt();function Jr(){e.event.keyCode==32&&(nr||(ir=null,dr[0]-=A[1],dr[1]-=S[1],nr=2),ne())}function Et(){e.event.keyCode==32&&nr==2&&(dr[0]+=A[1],dr[1]+=S[1],nr=0,ne())}function rt(){var qr=e.mouse(te),Kr=!1;pr&&(qr[0]+=pr[0],qr[1]+=pr[1]),nr||(e.event.altKey?(ir||(ir=[(A[0]+A[1])/2,(S[0]+S[1])/2]),dr[0]=A[+(qr[0]{(function(e,r){typeof cv=="object"&&typeof vb!="undefined"?r(cv):(e=e||self,r(e.d3=e.d3||{}))})(cv,function(e){"use strict";var r=new Date,t=new Date;function a(ie,be,Ke,hr){function Pe(Me){return ie(Me=arguments.length===0?new Date:new Date(+Me)),Me}return Pe.floor=function(Me){return ie(Me=new Date(+Me)),Me},Pe.ceil=function(Me){return ie(Me=new Date(Me-1)),be(Me,1),ie(Me),Me},Pe.round=function(Me){var Se=Pe(Me),Oe=Pe.ceil(Me);return Me-Se0))return Je;do Je.push(We=new Date(+Me)),be(Me,Oe),ie(Me);while(We=Se)for(;ie(Se),!Me(Se);)Se.setTime(Se-1)},function(Se,Oe){if(Se>=Se)if(Oe<0)for(;++Oe<=0;)for(;be(Se,-1),!Me(Se););else for(;--Oe>=0;)for(;be(Se,1),!Me(Se););})},Ke&&(Pe.count=function(Me,Se){return r.setTime(+Me),t.setTime(+Se),ie(r),ie(t),Math.floor(Ke(r,t))},Pe.every=function(Me){return Me=Math.floor(Me),!isFinite(Me)||!(Me>0)?null:Me>1?Pe.filter(hr?function(Se){return hr(Se)%Me===0}:function(Se){return Pe.count(0,Se)%Me===0}):Pe}),Pe}var n=a(function(){},function(ie,be){ie.setTime(+ie+be)},function(ie,be){return be-ie});n.every=function(ie){return ie=Math.floor(ie),!isFinite(ie)||!(ie>0)?null:ie>1?a(function(be){be.setTime(Math.floor(be/ie)*ie)},function(be,Ke){be.setTime(+be+Ke*ie)},function(be,Ke){return(Ke-be)/ie}):n};var i=n.range,l=1e3,o=6e4,s=36e5,u=864e5,f=6048e5,v=a(function(ie){ie.setTime(ie-ie.getMilliseconds())},function(ie,be){ie.setTime(+ie+be*l)},function(ie,be){return(be-ie)/l},function(ie){return ie.getUTCSeconds()}),h=v.range,d=a(function(ie){ie.setTime(ie-ie.getMilliseconds()-ie.getSeconds()*l)},function(ie,be){ie.setTime(+ie+be*o)},function(ie,be){return(be-ie)/o},function(ie){return ie.getMinutes()}),m=d.range,y=a(function(ie){ie.setTime(ie-ie.getMilliseconds()-ie.getSeconds()*l-ie.getMinutes()*o)},function(ie,be){ie.setTime(+ie+be*s)},function(ie,be){return(be-ie)/s},function(ie){return ie.getHours()}),g=y.range,_=a(function(ie){ie.setHours(0,0,0,0)},function(ie,be){ie.setDate(ie.getDate()+be)},function(ie,be){return(be-ie-(be.getTimezoneOffset()-ie.getTimezoneOffset())*o)/u},function(ie){return ie.getDate()-1}),w=_.range;function T(ie){return a(function(be){be.setDate(be.getDate()-(be.getDay()+7-ie)%7),be.setHours(0,0,0,0)},function(be,Ke){be.setDate(be.getDate()+Ke*7)},function(be,Ke){return(Ke-be-(Ke.getTimezoneOffset()-be.getTimezoneOffset())*o)/f})}var b=T(0),M=T(1),C=T(2),k=T(3),q=T(4),D=T(5),R=T(6),z=b.range,F=M.range,I=C.range,H=k.range,J=q.range,X=D.range,Y=R.range,O=a(function(ie){ie.setDate(1),ie.setHours(0,0,0,0)},function(ie,be){ie.setMonth(ie.getMonth()+be)},function(ie,be){return be.getMonth()-ie.getMonth()+(be.getFullYear()-ie.getFullYear())*12},function(ie){return ie.getMonth()}),V=O.range,Q=a(function(ie){ie.setMonth(0,1),ie.setHours(0,0,0,0)},function(ie,be){ie.setFullYear(ie.getFullYear()+be)},function(ie,be){return be.getFullYear()-ie.getFullYear()},function(ie){return ie.getFullYear()});Q.every=function(ie){return!isFinite(ie=Math.floor(ie))||!(ie>0)?null:a(function(be){be.setFullYear(Math.floor(be.getFullYear()/ie)*ie),be.setMonth(0,1),be.setHours(0,0,0,0)},function(be,Ke){be.setFullYear(be.getFullYear()+Ke*ie)})};var K=Q.range,ne=a(function(ie){ie.setUTCSeconds(0,0)},function(ie,be){ie.setTime(+ie+be*o)},function(ie,be){return(be-ie)/o},function(ie){return ie.getUTCMinutes()}),me=ne.range,de=a(function(ie){ie.setUTCMinutes(0,0,0)},function(ie,be){ie.setTime(+ie+be*s)},function(ie,be){return(be-ie)/s},function(ie){return ie.getUTCHours()}),ke=de.range,re=a(function(ie){ie.setUTCHours(0,0,0,0)},function(ie,be){ie.setUTCDate(ie.getUTCDate()+be)},function(ie,be){return(be-ie)/u},function(ie){return ie.getUTCDate()-1}),Ce=re.range;function ce(ie){return a(function(be){be.setUTCDate(be.getUTCDate()-(be.getUTCDay()+7-ie)%7),be.setUTCHours(0,0,0,0)},function(be,Ke){be.setUTCDate(be.getUTCDate()+Ke*7)},function(be,Ke){return(Ke-be)/f})}var _e=ce(0),se=ce(1),ge=ce(2),B=ce(3),$=ce(4),U=ce(5),ye=ce(6),we=_e.range,pe=se.range,Re=ge.range,Fe=B.range,Ee=$.range,Ne=U.range,Be=ye.range,Ge=a(function(ie){ie.setUTCDate(1),ie.setUTCHours(0,0,0,0)},function(ie,be){ie.setUTCMonth(ie.getUTCMonth()+be)},function(ie,be){return be.getUTCMonth()-ie.getUTCMonth()+(be.getUTCFullYear()-ie.getUTCFullYear())*12},function(ie){return ie.getUTCMonth()}),qe=Ge.range,He=a(function(ie){ie.setUTCMonth(0,1),ie.setUTCHours(0,0,0,0)},function(ie,be){ie.setUTCFullYear(ie.getUTCFullYear()+be)},function(ie,be){return be.getUTCFullYear()-ie.getUTCFullYear()},function(ie){return ie.getUTCFullYear()});He.every=function(ie){return!isFinite(ie=Math.floor(ie))||!(ie>0)?null:a(function(be){be.setUTCFullYear(Math.floor(be.getUTCFullYear()/ie)*ie),be.setUTCMonth(0,1),be.setUTCHours(0,0,0,0)},function(be,Ke){be.setUTCFullYear(be.getUTCFullYear()+Ke*ie)})};var Ye=He.range;e.timeDay=_,e.timeDays=w,e.timeFriday=D,e.timeFridays=X,e.timeHour=y,e.timeHours=g,e.timeInterval=a,e.timeMillisecond=n,e.timeMilliseconds=i,e.timeMinute=d,e.timeMinutes=m,e.timeMonday=M,e.timeMondays=F,e.timeMonth=O,e.timeMonths=V,e.timeSaturday=R,e.timeSaturdays=Y,e.timeSecond=v,e.timeSeconds=h,e.timeSunday=b,e.timeSundays=z,e.timeThursday=q,e.timeThursdays=J,e.timeTuesday=C,e.timeTuesdays=I,e.timeWednesday=k,e.timeWednesdays=H,e.timeWeek=b,e.timeWeeks=z,e.timeYear=Q,e.timeYears=K,e.utcDay=re,e.utcDays=Ce,e.utcFriday=U,e.utcFridays=Ne,e.utcHour=de,e.utcHours=ke,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=ne,e.utcMinutes=me,e.utcMonday=se,e.utcMondays=pe,e.utcMonth=Ge,e.utcMonths=qe,e.utcSaturday=ye,e.utcSaturdays=Be,e.utcSecond=v,e.utcSeconds=h,e.utcSunday=_e,e.utcSundays=we,e.utcThursday=$,e.utcThursdays=Ee,e.utcTuesday=ge,e.utcTuesdays=Re,e.utcWednesday=B,e.utcWednesdays=Fe,e.utcWeek=_e,e.utcWeeks=we,e.utcYear=He,e.utcYears=Ye,Object.defineProperty(e,"__esModule",{value:!0})})});var ss=Z((vv,hb)=>{(function(e,r){typeof vv=="object"&&typeof hb!="undefined"?r(vv,U1()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(vv,function(e,r){"use strict";function t(ae){if(0<=ae.y&&ae.y<100){var le=new Date(-1,ae.m,ae.d,ae.H,ae.M,ae.S,ae.L);return le.setFullYear(ae.y),le}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 le=new Date(Date.UTC(-1,ae.m,ae.d,ae.H,ae.M,ae.S,ae.L));return le.setUTCFullYear(ae.y),le}return new Date(Date.UTC(ae.y,ae.m,ae.d,ae.H,ae.M,ae.S,ae.L))}function n(ae,le,Le){return{y:ae,m:le,d:Le,H:0,M:0,S:0,L:0}}function i(ae){var le=ae.dateTime,Le=ae.date,De=ae.time,ar=ae.periods,fr=ae.days,sr=ae.shortDays,Mr=ae.months,Br=ae.shortMonths,$r=h(ar),it=d(ar),_t=h(fr),yt=d(fr),Dt=h(sr),Kt=d(sr),La=h(Mr),sa=d(Mr),ua=h(Br),vr=d(Br),lt={a:Yl,A:Ul,b:el,B:zc,c:null,d:O,e:O,f:me,H:V,I:Q,j:K,L:ne,m:de,M:ke,p:Nc,q:Lu,Q:Se,s:Oe,S:re,u:Ce,U:ce,V:_e,w:se,W:ge,x:null,X:null,y:B,Y:$,Z:U,"%":Me},Xr={a:qu,A:Du,b:qa,B:Fc,c:null,d:ye,e:ye,f:Ee,H:we,I:pe,j:Re,L:Fe,m:Ne,M:Be,p:jo,q:es,Q:Se,s:Oe,S:Ge,u:qe,U:He,V:Ye,w:ie,W:be,x:null,X:null,y:Ke,Y:hr,Z:Pe,"%":Me},ft={a:pn,A:Qt,b:fi,B:mn,c:St,d:q,e:q,f:H,H:R,I:R,j:D,L:I,m:k,M:z,p:fa,q:C,Q:X,s:Y,S:F,u:y,U:g,V:_,w:m,W:w,x:wt,X:ca,y:b,Y:T,Z:M,"%":J};lt.x=kt(Le,lt),lt.X=kt(De,lt),lt.c=kt(le,lt),Xr.x=kt(Le,Xr),Xr.X=kt(De,Xr),Xr.c=kt(le,Xr);function kt(yr,Gr){return function(jr){var or=[],va=-1,ot=0,ha=yr.length,Rr,On,Vl;for(jr instanceof Date||(jr=new Date(+jr));++va53)return null;"w"in or||(or.w=1),"Z"in or?(ot=a(n(or.y,0,1)),ha=ot.getUTCDay(),ot=ha>4||ha===0?r.utcMonday.ceil(ot):r.utcMonday(ot),ot=r.utcDay.offset(ot,(or.V-1)*7),or.y=ot.getUTCFullYear(),or.m=ot.getUTCMonth(),or.d=ot.getUTCDate()+(or.w+6)%7):(ot=t(n(or.y,0,1)),ha=ot.getDay(),ot=ha>4||ha===0?r.timeMonday.ceil(ot):r.timeMonday(ot),ot=r.timeDay.offset(ot,(or.V-1)*7),or.y=ot.getFullYear(),or.m=ot.getMonth(),or.d=ot.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),ha="Z"in or?a(n(or.y,0,1)).getUTCDay():t(n(or.y,0,1)).getDay(),or.m=0,or.d="W"in or?(or.w+6)%7+or.W*7-(ha+5)%7:or.w+or.U*7-(ha+6)%7);return"Z"in or?(or.H+=or.Z/100|0,or.M+=or.Z%100,a(or)):t(or)}}function Qr(yr,Gr,jr,or){for(var va=0,ot=Gr.length,ha=jr.length,Rr,On;va=ha)return-1;if(Rr=Gr.charCodeAt(va++),Rr===37){if(Rr=Gr.charAt(va++),On=ft[Rr in l?Gr.charAt(va++):Rr],!On||(or=On(yr,jr,or))<0)return-1}else if(Rr!=jr.charCodeAt(or++))return-1}return or}function fa(yr,Gr,jr){var or=$r.exec(Gr.slice(jr));return or?(yr.p=it[or[0].toLowerCase()],jr+or[0].length):-1}function pn(yr,Gr,jr){var or=Dt.exec(Gr.slice(jr));return or?(yr.w=Kt[or[0].toLowerCase()],jr+or[0].length):-1}function Qt(yr,Gr,jr){var or=_t.exec(Gr.slice(jr));return or?(yr.w=yt[or[0].toLowerCase()],jr+or[0].length):-1}function fi(yr,Gr,jr){var or=ua.exec(Gr.slice(jr));return or?(yr.m=vr[or[0].toLowerCase()],jr+or[0].length):-1}function mn(yr,Gr,jr){var or=La.exec(Gr.slice(jr));return or?(yr.m=sa[or[0].toLowerCase()],jr+or[0].length):-1}function St(yr,Gr,jr){return Qr(yr,le,Gr,jr)}function wt(yr,Gr,jr){return Qr(yr,Le,Gr,jr)}function ca(yr,Gr,jr){return Qr(yr,De,Gr,jr)}function Yl(yr){return sr[yr.getDay()]}function Ul(yr){return fr[yr.getDay()]}function el(yr){return Br[yr.getMonth()]}function zc(yr){return Mr[yr.getMonth()]}function Nc(yr){return ar[+(yr.getHours()>=12)]}function Lu(yr){return 1+~~(yr.getMonth()/3)}function qu(yr){return sr[yr.getUTCDay()]}function Du(yr){return fr[yr.getUTCDay()]}function qa(yr){return Br[yr.getUTCMonth()]}function Fc(yr){return Mr[yr.getUTCMonth()]}function jo(yr){return ar[+(yr.getUTCHours()>=12)]}function es(yr){return 1+~~(yr.getUTCMonth()/3)}return{format:function(yr){var Gr=kt(yr+="",lt);return Gr.toString=function(){return yr},Gr},parse:function(yr){var Gr=bt(yr+="",!1);return Gr.toString=function(){return yr},Gr},utcFormat:function(yr){var Gr=kt(yr+="",Xr);return Gr.toString=function(){return yr},Gr},utcParse:function(yr){var Gr=bt(yr+="",!0);return Gr.toString=function(){return yr},Gr}}}var l={"-":"",_:" ",0:"0"},o=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(ae,le,Le){var De=ae<0?"-":"",ar=(De?-ae:ae)+"",fr=ar.length;return De+(fr68?1900:2e3),Le+De[0].length):-1}function M(ae,le,Le){var De=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(le.slice(Le,Le+6));return De?(ae.Z=De[1]?0:-(De[2]+(De[3]||"00")),Le+De[0].length):-1}function C(ae,le,Le){var De=o.exec(le.slice(Le,Le+1));return De?(ae.q=De[0]*3-3,Le+De[0].length):-1}function k(ae,le,Le){var De=o.exec(le.slice(Le,Le+2));return De?(ae.m=De[0]-1,Le+De[0].length):-1}function q(ae,le,Le){var De=o.exec(le.slice(Le,Le+2));return De?(ae.d=+De[0],Le+De[0].length):-1}function D(ae,le,Le){var De=o.exec(le.slice(Le,Le+3));return De?(ae.m=0,ae.d=+De[0],Le+De[0].length):-1}function R(ae,le,Le){var De=o.exec(le.slice(Le,Le+2));return De?(ae.H=+De[0],Le+De[0].length):-1}function z(ae,le,Le){var De=o.exec(le.slice(Le,Le+2));return De?(ae.M=+De[0],Le+De[0].length):-1}function F(ae,le,Le){var De=o.exec(le.slice(Le,Le+2));return De?(ae.S=+De[0],Le+De[0].length):-1}function I(ae,le,Le){var De=o.exec(le.slice(Le,Le+3));return De?(ae.L=+De[0],Le+De[0].length):-1}function H(ae,le,Le){var De=o.exec(le.slice(Le,Le+6));return De?(ae.L=Math.floor(De[0]/1e3),Le+De[0].length):-1}function J(ae,le,Le){var De=s.exec(le.slice(Le,Le+1));return De?Le+De[0].length:-1}function X(ae,le,Le){var De=o.exec(le.slice(Le));return De?(ae.Q=+De[0],Le+De[0].length):-1}function Y(ae,le,Le){var De=o.exec(le.slice(Le));return De?(ae.s=+De[0],Le+De[0].length):-1}function O(ae,le){return f(ae.getDate(),le,2)}function V(ae,le){return f(ae.getHours(),le,2)}function Q(ae,le){return f(ae.getHours()%12||12,le,2)}function K(ae,le){return f(1+r.timeDay.count(r.timeYear(ae),ae),le,3)}function ne(ae,le){return f(ae.getMilliseconds(),le,3)}function me(ae,le){return ne(ae,le)+"000"}function de(ae,le){return f(ae.getMonth()+1,le,2)}function ke(ae,le){return f(ae.getMinutes(),le,2)}function re(ae,le){return f(ae.getSeconds(),le,2)}function Ce(ae){var le=ae.getDay();return le===0?7:le}function ce(ae,le){return f(r.timeSunday.count(r.timeYear(ae)-1,ae),le,2)}function _e(ae,le){var Le=ae.getDay();return ae=Le>=4||Le===0?r.timeThursday(ae):r.timeThursday.ceil(ae),f(r.timeThursday.count(r.timeYear(ae),ae)+(r.timeYear(ae).getDay()===4),le,2)}function se(ae){return ae.getDay()}function ge(ae,le){return f(r.timeMonday.count(r.timeYear(ae)-1,ae),le,2)}function B(ae,le){return f(ae.getFullYear()%100,le,2)}function $(ae,le){return f(ae.getFullYear()%1e4,le,4)}function U(ae){var le=ae.getTimezoneOffset();return(le>0?"-":(le*=-1,"+"))+f(le/60|0,"0",2)+f(le%60,"0",2)}function ye(ae,le){return f(ae.getUTCDate(),le,2)}function we(ae,le){return f(ae.getUTCHours(),le,2)}function pe(ae,le){return f(ae.getUTCHours()%12||12,le,2)}function Re(ae,le){return f(1+r.utcDay.count(r.utcYear(ae),ae),le,3)}function Fe(ae,le){return f(ae.getUTCMilliseconds(),le,3)}function Ee(ae,le){return Fe(ae,le)+"000"}function Ne(ae,le){return f(ae.getUTCMonth()+1,le,2)}function Be(ae,le){return f(ae.getUTCMinutes(),le,2)}function Ge(ae,le){return f(ae.getUTCSeconds(),le,2)}function qe(ae){var le=ae.getUTCDay();return le===0?7:le}function He(ae,le){return f(r.utcSunday.count(r.utcYear(ae)-1,ae),le,2)}function Ye(ae,le){var Le=ae.getUTCDay();return ae=Le>=4||Le===0?r.utcThursday(ae):r.utcThursday.ceil(ae),f(r.utcThursday.count(r.utcYear(ae),ae)+(r.utcYear(ae).getUTCDay()===4),le,2)}function ie(ae){return ae.getUTCDay()}function be(ae,le){return f(r.utcMonday.count(r.utcYear(ae)-1,ae),le,2)}function Ke(ae,le){return f(ae.getUTCFullYear()%100,le,2)}function hr(ae,le){return f(ae.getUTCFullYear()%1e4,le,4)}function Pe(){return"+0000"}function Me(){return"%"}function Se(ae){return+ae}function Oe(ae){return Math.floor(+ae/1e3)}var Je;We({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 We(ae){return Je=i(ae),e.timeFormat=Je.format,e.timeParse=Je.parse,e.utcFormat=Je.utcFormat,e.utcParse=Je.utcParse,Je}var Ze="%Y-%m-%dT%H:%M:%S.%LZ";function lr(ae){return ae.toISOString()}var tr=Date.prototype.toISOString?lr:e.utcFormat(Ze);function Qe(ae){var le=new Date(ae);return isNaN(le)?null:le}var ze=+new Date("2000-01-01T00:00:00.000Z")?Qe:e.utcParse(Ze);e.isoFormat=tr,e.isoParse=ze,e.timeFormatDefaultLocale=We,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var V1=Z((hv,db)=>{(function(e,r){typeof hv=="object"&&typeof db!="undefined"?r(hv):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(hv,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,F=[],I=0,H=k[0],J=0;z>0&&H>0&&(J+H+1>R&&(H=Math.max(1,R-J)),F.push(D.substring(z-=H,z+H)),!((J+=H+1)>R));)H=k[I=(I+1)%k.length];return F.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],F=z-(f=Math.max(-8,Math.min(8,Math.floor(z/3)))*3)+1,I=R.length;return F===I?R:F>I?R+new Array(F-I+1).join("0"):F>0?R.slice(0,F)+"."+R.slice(F):"0."+new Array(1-F).join("0")+t(k,Math.max(0,q+F-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 y=Array.prototype.map,g=["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(y.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+"",F=k.numerals===void 0?m:i(y.call(k.numerals,String)),I=k.percent===void 0?"%":k.percent+"",H=k.minus===void 0?"-":k.minus+"",J=k.nan===void 0?"NaN":k.nan+"";function X(O){O=o(O);var V=O.fill,Q=O.align,K=O.sign,ne=O.symbol,me=O.zero,de=O.width,ke=O.comma,re=O.precision,Ce=O.trim,ce=O.type;ce==="n"?(ke=!0,ce="g"):d[ce]||(re===void 0&&(re=12),Ce=!0,ce="g"),(me||V==="0"&&Q==="=")&&(me=!0,V="0",Q="=");var _e=ne==="$"?D:ne==="#"&&/[boxX]/.test(ce)?"0"+ce.toLowerCase():"",se=ne==="$"?R:/[%p]/.test(ce)?I:"",ge=d[ce],B=/[defgprs%]/.test(ce);re=re===void 0?6:/[gprs]/.test(ce)?Math.max(1,Math.min(21,re)):Math.max(0,Math.min(20,re));function $(U){var ye=_e,we=se,pe,Re,Fe;if(ce==="c")we=ge(U)+we,U="";else{U=+U;var Ee=U<0||1/U<0;if(U=isNaN(U)?J:ge(Math.abs(U),re),Ce&&(U=u(U)),Ee&&+U==0&&K!=="+"&&(Ee=!1),ye=(Ee?K==="("?K:H:K==="-"||K==="("?"":K)+ye,we=(ce==="s"?g[8+f/3]:"")+we+(Ee&&K==="("?")":""),B){for(pe=-1,Re=U.length;++peFe||Fe>57){we=(Fe===46?z+U.slice(pe+1):U.slice(pe))+we,U=U.slice(0,pe);break}}}ke&&!me&&(U=q(U,1/0));var Ne=ye.length+U.length+we.length,Be=Ne>1)+ye+U+we+Be.slice(Ne);break;default:U=Be+ye+U+we;break}return F(U)}return $.toString=function(){return O+""},$}function Y(O,V){var Q=X((O=o(O),O.type="f",O)),K=Math.max(-8,Math.min(8,Math.floor(a(V)/3)))*3,ne=Math.pow(10,-K),me=g[8+K/3];return function(de){return Q(ne*de)+me}}return{format:X,formatPrefix:Y}}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 M(k,q){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(q)/3)))*3-a(Math.abs(k)))}function C(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=M,e.precisionRound=C,Object.defineProperty(e,"__esModule",{value:!0})})});var mb=Z((xie,pb)=>{"use strict";pb.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((_ie,yb)=>{"use strict";var uI=mb();yb.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&uI(t))return!1}else if(r!=="number")return!1;return e-e<1}});var Vt=Z((wie,gb)=>{"use strict";gb.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 G1=Z((dv,bb)=>{(function(e,r){typeof dv=="object"&&typeof bb!="undefined"?r(dv):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(dv,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 y=new ArrayBuffer(o),g=new Uint8Array(y);for(u=0;u>4,g[f++]=(h&15)<<4|d>>2,g[f++]=(d&3)<<6|m&63;return y};e.decode=i,e.encode=n,Object.defineProperty(e,"__esModule",{value:!0})})});var al=Z((Tie,xb)=>{"use strict";xb.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 an=Z(Un=>{"use strict";var fI=G1().decode,cI=al(),W1=Array.isArray,vI=ArrayBuffer,hI=DataView;function _b(e){return vI.isView(e)&&!(e instanceof hI)}Un.isTypedArray=_b;function pv(e){return W1(e)||_b(e)}Un.isArrayOrTypedArray=pv;function dI(e){return!pv(e[0])}Un.isArray1D=dI;Un.ensureArray=function(e,r){return W1(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 Z1(e){return e.constructor===ArrayBuffer}Un.isArrayBuffer=Z1;Un.decodeTypedArraySpec=function(e){var r=[],t=pI(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;Z1(l)||(l=fI(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 Tb=Hr(),J1=an().isArrayOrTypedArray;Sb.exports=function(r,t){if(Tb(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 us=mv(),xI=/^\w*$/,_I=0,Cb=1,yv=2,Lb=3,Ql=4;qb.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,l,o,s={};t&&t.length?(o=us(r,t),l=o.get()):l=r,t=t||"";var u={};if(l)for(i=0;i2)return s[d]=s[d]|yv,v.set(h,null);if(f){for(i=d;i{"use strict";var wI=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,TI=/^[^\.\[\]]+$/;Eb.exports=function(e,r){for(;r;){var t=e.match(wI);if(t)e=t[1];else if(e.match(TI))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 gv=Z((Cie,Rb)=>{"use strict";var MI=Hr();Rb.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 MI(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var Fb=Z((Lie,Nb)=>{"use strict";var zb=an().isArrayOrTypedArray,Bu=al();Nb.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(zb(n)&&zb(i)&&Bu(n[0])){if(a==="customdata"||a==="ids")continue;for(var l=Math.min(n.length,i.length),o=0;o{"use strict";function AI(e,r){var t=e%r;return t<0?t+r:t}function kI(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}Ib.exports={mod:AI,modHalf:kI}});var xn=Z((Die,bv)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,l=e.max,o=e.random;function s(B,$){if(B=B||"",$=$||{},B instanceof s)return B;if(!(this instanceof s))return new s(B,$);var U=u(B);this._originalInput=B,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=$.format||U.format,this._gradientType=$.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 B=this.toRgb();return(B.r*299+B.g*587+B.b*114)/1e3},getLuminance:function(){var B=this.toRgb(),$,U,ye,we,pe,Re;return $=B.r/255,U=B.g/255,ye=B.b/255,$<=.03928?we=$/12.92:we=e.pow(($+.055)/1.055,2.4),U<=.03928?pe=U/12.92:pe=e.pow((U+.055)/1.055,2.4),ye<=.03928?Re=ye/12.92:Re=e.pow((ye+.055)/1.055,2.4),.2126*we+.7152*pe+.0722*Re},setAlpha:function(B){return this._a=O(B),this._roundA=n(100*this._a)/100,this},toHsv:function(){var B=d(this._r,this._g,this._b);return{h:B.h*360,s:B.s,v:B.v,a:this._a}},toHsvString:function(){var B=d(this._r,this._g,this._b),$=n(B.h*360),U=n(B.s*100),ye=n(B.v*100);return this._a==1?"hsv("+$+", "+U+"%, "+ye+"%)":"hsva("+$+", "+U+"%, "+ye+"%, "+this._roundA+")"},toHsl:function(){var B=v(this._r,this._g,this._b);return{h:B.h*360,s:B.s,l:B.l,a:this._a}},toHslString:function(){var B=v(this._r,this._g,this._b),$=n(B.h*360),U=n(B.s*100),ye=n(B.l*100);return this._a==1?"hsl("+$+", "+U+"%, "+ye+"%)":"hsla("+$+", "+U+"%, "+ye+"%, "+this._roundA+")"},toHex:function(B){return y(this._r,this._g,this._b,B)},toHexString:function(B){return"#"+this.toHex(B)},toHex8:function(B){return g(this._r,this._g,this._b,this._a,B)},toHex8String:function(B){return"#"+this.toHex8(B)},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[y(this._r,this._g,this._b,!0)]||!1},toFilter:function(B){var $="#"+_(this._r,this._g,this._b,this._a),U=$,ye=this._gradientType?"GradientType = 1, ":"";if(B){var we=s(B);U="#"+_(we._r,we._g,we._b,we._a)}return"progid:DXImageTransform.Microsoft.gradient("+ye+"startColorstr="+$+",endColorstr="+U+")"},toString:function(B){var $=!!B;B=B||this._format;var U=!1,ye=this._a<1&&this._a>=0,we=!$&&ye&&(B==="hex"||B==="hex6"||B==="hex3"||B==="hex4"||B==="hex8"||B==="name");return we?B==="name"&&this._a===0?this.toName():this.toRgbString():(B==="rgb"&&(U=this.toRgbString()),B==="prgb"&&(U=this.toPercentageRgbString()),(B==="hex"||B==="hex6")&&(U=this.toHexString()),B==="hex3"&&(U=this.toHexString(!0)),B==="hex4"&&(U=this.toHex8String(!0)),B==="hex8"&&(U=this.toHex8String()),B==="name"&&(U=this.toName()),B==="hsl"&&(U=this.toHslString()),B==="hsv"&&(U=this.toHsvString()),U||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(B,$){var U=B.apply(null,[this].concat([].slice.call($)));return this._r=U._r,this._g=U._g,this._b=U._b,this.setAlpha(U._a),this},lighten:function(){return this._applyModification(M,arguments)},brighten:function(){return this._applyModification(C,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(B,$){return B.apply(null,[this].concat([].slice.call($)))},analogous:function(){return this._applyCombination(I,arguments)},complement:function(){return this._applyCombination(D,arguments)},monochromatic:function(){return this._applyCombination(H,arguments)},splitcomplement:function(){return this._applyCombination(F,arguments)},triad:function(){return this._applyCombination(R,arguments)},tetrad:function(){return this._applyCombination(z,arguments)}},s.fromRatio=function(B,$){if(typeof B=="object"){var U={};for(var ye in B)B.hasOwnProperty(ye)&&(ye==="a"?U[ye]=B[ye]:U[ye]=ke(B[ye]));B=U}return s(B,$)};function u(B){var $={r:0,g:0,b:0},U=1,ye=null,we=null,pe=null,Re=!1,Fe=!1;return typeof B=="string"&&(B=se(B)),typeof B=="object"&&(_e(B.r)&&_e(B.g)&&_e(B.b)?($=f(B.r,B.g,B.b),Re=!0,Fe=String(B.r).substr(-1)==="%"?"prgb":"rgb"):_e(B.h)&&_e(B.s)&&_e(B.v)?(ye=ke(B.s),we=ke(B.v),$=m(B.h,ye,we),Re=!0,Fe="hsv"):_e(B.h)&&_e(B.s)&&_e(B.l)&&(ye=ke(B.s),pe=ke(B.l),$=h(B.h,ye,pe),Re=!0,Fe="hsl"),B.hasOwnProperty("a")&&(U=B.a)),U=O(U),{ok:Re,format:B.format||Fe,r:i(255,l($.r,0)),g:i(255,l($.g,0)),b:i(255,l($.b,0)),a:U}}function f(B,$,U){return{r:V(B,255)*255,g:V($,255)*255,b:V(U,255)*255}}function v(B,$,U){B=V(B,255),$=V($,255),U=V(U,255);var ye=l(B,$,U),we=i(B,$,U),pe,Re,Fe=(ye+we)/2;if(ye==we)pe=Re=0;else{var Ee=ye-we;switch(Re=Fe>.5?Ee/(2-ye-we):Ee/(ye+we),ye){case B:pe=($-U)/Ee+($1&&(Ge-=1),Ge<1/6?Ne+(Be-Ne)*6*Ge:Ge<1/2?Be:Ge<2/3?Ne+(Be-Ne)*(2/3-Ge)*6:Ne}if($===0)ye=we=pe=U;else{var Fe=U<.5?U*(1+$):U+$-U*$,Ee=2*U-Fe;ye=Re(Ee,Fe,B+1/3),we=Re(Ee,Fe,B),pe=Re(Ee,Fe,B-1/3)}return{r:ye*255,g:we*255,b:pe*255}}function d(B,$,U){B=V(B,255),$=V($,255),U=V(U,255);var ye=l(B,$,U),we=i(B,$,U),pe,Re,Fe=ye,Ee=ye-we;if(Re=ye===0?0:Ee/ye,ye==we)pe=0;else{switch(ye){case B:pe=($-U)/Ee+($>1)+720)%360;--$;)ye.h=(ye.h+we)%360,pe.push(s(ye));return pe}function H(B,$){$=$||6;for(var U=s(B).toHsv(),ye=U.h,we=U.s,pe=U.v,Re=[],Fe=1/$;$--;)Re.push(s({h:ye,s:we,v:pe})),pe=(pe+Fe)%1;return Re}s.mix=function(B,$,U){U=U===0?0:U||50;var ye=s(B).toRgb(),we=s($).toRgb(),pe=U/100,Re={r:(we.r-ye.r)*pe+ye.r,g:(we.g-ye.g)*pe+ye.g,b:(we.b-ye.b)*pe+ye.b,a:(we.a-ye.a)*pe+ye.a};return s(Re)},s.readability=function(B,$){var U=s(B),ye=s($);return(e.max(U.getLuminance(),ye.getLuminance())+.05)/(e.min(U.getLuminance(),ye.getLuminance())+.05)},s.isReadable=function(B,$,U){var ye=s.readability(B,$),we,pe;switch(pe=!1,we=ge(U),we.level+we.size){case"AAsmall":case"AAAlarge":pe=ye>=4.5;break;case"AAlarge":pe=ye>=3;break;case"AAAsmall":pe=ye>=7;break}return pe},s.mostReadable=function(B,$,U){var ye=null,we=0,pe,Re,Fe,Ee;U=U||{},Re=U.includeFallbackColors,Fe=U.level,Ee=U.size;for(var Ne=0;Ne<$.length;Ne++)pe=s.readability(B,$[Ne]),pe>we&&(we=pe,ye=s($[Ne]));return s.isReadable(B,ye,{level:Fe,size:Ee})||!Re?ye:(U.includeFallbackColors=!1,s.mostReadable(B,["#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=Y(J);function Y(B){var $={};for(var U in B)B.hasOwnProperty(U)&&($[B[U]]=U);return $}function O(B){return B=parseFloat(B),(isNaN(B)||B<0||B>1)&&(B=1),B}function V(B,$){ne(B)&&(B="100%");var U=me(B);return B=i($,l(0,parseFloat(B))),U&&(B=parseInt(B*$,10)/100),e.abs(B-$)<1e-6?1:B%$/parseFloat($)}function Q(B){return i(1,l(0,B))}function K(B){return parseInt(B,16)}function ne(B){return typeof B=="string"&&B.indexOf(".")!=-1&&parseFloat(B)===1}function me(B){return typeof B=="string"&&B.indexOf("%")!=-1}function de(B){return B.length==1?"0"+B:""+B}function ke(B){return B<=1&&(B=B*100+"%"),B}function re(B){return e.round(parseFloat(B)*255).toString(16)}function Ce(B){return K(B)/255}var ce=function(){var B="[-\\+]?\\d+%?",$="[-\\+]?\\d*\\.\\d+%?",U="(?:"+$+")|(?:"+B+")",ye="[\\s|\\(]+("+U+")[,|\\s]+("+U+")[,|\\s]+("+U+")\\s*\\)?",we="[\\s|\\(]+("+U+")[,|\\s]+("+U+")[,|\\s]+("+U+")[,|\\s]+("+U+")\\s*\\)?";return{CSS_UNIT:new RegExp(U),rgb:new RegExp("rgb"+ye),rgba:new RegExp("rgba"+we),hsl:new RegExp("hsl"+ye),hsla:new RegExp("hsla"+we),hsv:new RegExp("hsv"+ye),hsva:new RegExp("hsva"+we),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 _e(B){return!!ce.CSS_UNIT.exec(B)}function se(B){B=B.replace(r,"").replace(t,"").toLowerCase();var $=!1;if(J[B])B=J[B],$=!0;else if(B=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var U;return(U=ce.rgb.exec(B))?{r:U[1],g:U[2],b:U[3]}:(U=ce.rgba.exec(B))?{r:U[1],g:U[2],b:U[3],a:U[4]}:(U=ce.hsl.exec(B))?{h:U[1],s:U[2],l:U[3]}:(U=ce.hsla.exec(B))?{h:U[1],s:U[2],l:U[3],a:U[4]}:(U=ce.hsv.exec(B))?{h:U[1],s:U[2],v:U[3]}:(U=ce.hsva.exec(B))?{h:U[1],s:U[2],v:U[3],a:U[4]}:(U=ce.hex8.exec(B))?{r:K(U[1]),g:K(U[2]),b:K(U[3]),a:Ce(U[4]),format:$?"name":"hex8"}:(U=ce.hex6.exec(B))?{r:K(U[1]),g:K(U[2]),b:K(U[3]),format:$?"name":"hex"}:(U=ce.hex4.exec(B))?{r:K(U[1]+""+U[1]),g:K(U[2]+""+U[2]),b:K(U[3]+""+U[3]),a:Ce(U[4]+""+U[4]),format:$?"name":"hex8"}:(U=ce.hex3.exec(B))?{r:K(U[1]+""+U[1]),g:K(U[2]+""+U[2]),b:K(U[3]+""+U[3]),format:$?"name":"hex"}:!1}function ge(B){var $,U;return B=B||{level:"AA",size:"small"},$=(B.level||"AA").toUpperCase(),U=(B.size||"small").toLowerCase(),$!=="AA"&&$!=="AAA"&&($="AA"),U!=="small"&&U!=="large"&&(U="small"),{level:$,size:U}}typeof bv!="undefined"&&bv.exports?bv.exports=s:window.tinycolor=s})(Math)});var Gt=Z(Vu=>{"use strict";var Hb=al(),Yu=Array.isArray;function SI(e,r){var t,a;for(t=0;t{"use strict";Ob.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 Gu=Z((Rie,Bb)=>{"use strict";Bb.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var cs=Z((zie,Vb)=>{"use strict";var Yb=Gu(),Ub=ma(),K1=Ub({editType:"none"});K1.family.dflt=Yb.HOVERFONT;K1.size.dflt=Yb.HOVERFONTSIZE;Vb.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:K1,grouptitlefont:Ub({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var xv=Z((Nie,Gb)=>{"use strict";var CI=ma(),Wu=cs().hoverlabel,Zu=Gt().extendFlat;Gb.exports={hoverlabel:{bgcolor:Zu({},Wu.bgcolor,{arrayOk:!0}),bordercolor:Zu({},Wu.bordercolor,{arrayOk:!0}),font:CI({arrayOk:!0,editType:"none"}),align:Zu({},Wu.align,{arrayOk:!0}),namelength:Zu({},Wu.namelength,{arrayOk:!0}),showarrow:Zu({},Wu.showarrow),editType:"none"}}});var Vn=Z((Fie,Wb)=>{"use strict";var LI=ma(),qI=xv();Wb.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:LI({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:qI.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((Iie,Jb)=>{"use strict";var DI=xn(),_v={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)"]]},Zb=_v.RdBu;function EI(e,r){if(r||(r=Zb),!e)return r;function t(){try{e=_v[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),Xb(e)?e:r}function Xb(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((Oie,Kb)=>{"use strict";var Wa=xn(),RI=Hr(),zI=an().isTypedArray,$t=Kb.exports={},wv=hi();$t.defaults=wv.defaults;var NI=$t.defaultLine=wv.defaultLine;$t.lightLine=wv.lightLine;var $1=$t.background=wv.background;$t.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};$t.rgb=function(e){return $t.tinyRGB(Wa(e))};$t.opacity=function(e){return e?Wa(e).getAlpha():0};$t.addOpacity=function(e,r){var t=Wa(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};$t.combine=function(e,r){var t=Wa(e).toRgb();if(t.a===1)return Wa(e).toRgbString();var a=Wa(r||$1).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()};$t.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()};$t.contrast=function(e,r,t){var a=Wa(e);a.getAlpha()!==1&&(a=Wa($t.combine(e,$1)));var n=a.isDark()?r?a.lighten(r):$1:t?a.darken(t):NI;return n.toString()};$t.stroke=function(e,r){var t=Wa(r);e.style({stroke:$t.tinyRGB(t),"stroke-opacity":t.getAlpha()})};$t.fill=function(e,r){var t=Wa(r);e.style({fill:$t.tinyRGB(t),"fill-opacity":t.getAlpha()})};$t.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 Tv=Z((Bie,Qb)=>{"use strict";Qb.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var vs=Z($b=>{"use strict";$b.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 tx=Z(Za=>{"use strict";var j1=Hr(),jb=xn(),ex=Gt().extendFlat,FI=Vn(),II=$l(),HI=Er(),OI=Tv().DESELECTDIM,hs=mv(),rx=vs().counter,BI=fs().modHalf,di=an().isArrayOrTypedArray,nl=an().isTypedArraySpec,il=an().decodeTypedArraySpec;Za.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(di(e)?e:nl(e)?il(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}nl(e)&&(e=il(e)),e%1||!j1(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){nl(e)&&(e=il(e)),jb(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return jb(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(II.get(e,t))}},angle:{coerceFunction:function(e,r,t){nl(e)&&(e=il(e)),e==="auto"?r.set("auto"):j1(e)?r.set(BI(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||rx(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:!!rx(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 ax={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/un/"},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:{}}},nx={};function ix(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),ix(a,r[t]))}}ix(ax,nx);lx.exports={configAttributes:ax,dfltConfig:nx}});var rp=Z((Gie,ox)=>{"use strict";var ep=Ir(),YI=Hr(),Xu=[];ox.exports=function(e,r){if(Xu.indexOf(e)!==-1)return;Xu.push(e);var t=1e3;YI(r)?t=r:r==="long"&&(t=3e3);var a=ep.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(Xu);function i(l){l.duration(700).style("opacity",0).each("end",function(o){var s=Xu.indexOf(o);s!==-1&&Xu.splice(s,1),ep.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(l){var o=ep.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 ds=eo().dfltConfig,tp=rp(),ap=sx.exports={};ap.log=function(){var e;if(ds.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};ap.warn=function(){var e;if(ds.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};ap.error=function(){var e;if(ds.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var Av=Z((Zie,ux)=>{"use strict";ux.exports=function(){}});var np=Z((Xie,fx)=>{"use strict";fx.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{cx.exports=UI;function UI(){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 dx=Z((Kie,hx)=>{hx.exports=VI;function VI(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 mx=Z((Qie,px)=>{px.exports=GI;function GI(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 ip=Z(($ie,yx)=>{yx.exports=WI;function WI(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 bx=Z((jie,gx)=>{gx.exports=ZI;function ZI(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 _x=Z((ele,xx)=>{xx.exports=XI;function XI(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],y=r[13],g=r[14],_=r[15],w=t*o-a*l,T=t*s-n*l,b=t*u-i*l,M=a*s-n*o,C=a*u-i*o,k=n*u-i*s,q=f*y-v*m,D=f*g-h*m,R=f*_-d*m,z=v*g-h*y,F=v*_-d*y,I=h*_-d*g,H=w*I-T*F+b*z+M*R-C*D+k*q;return H?(H=1/H,e[0]=(o*I-s*F+u*z)*H,e[1]=(n*F-a*I-i*z)*H,e[2]=(y*k-g*C+_*M)*H,e[3]=(h*C-v*k-d*M)*H,e[4]=(s*R-l*I-u*D)*H,e[5]=(t*I-n*R+i*D)*H,e[6]=(g*b-m*k-_*T)*H,e[7]=(f*k-h*b+d*T)*H,e[8]=(l*F-o*R+u*q)*H,e[9]=(a*R-t*F-i*q)*H,e[10]=(m*C-y*b+_*w)*H,e[11]=(v*b-f*C-d*w)*H,e[12]=(o*D-l*z-s*q)*H,e[13]=(t*z-a*D+n*q)*H,e[14]=(y*T-m*M-g*w)*H,e[15]=(f*M-v*T+h*w)*H,e):null}});var Tx=Z((rle,wx)=>{wx.exports=JI;function JI(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],y=r[13],g=r[14],_=r[15];return e[0]=o*(h*_-d*g)-v*(s*_-u*g)+y*(s*d-u*h),e[1]=-(a*(h*_-d*g)-v*(n*_-i*g)+y*(n*d-i*h)),e[2]=a*(s*_-u*g)-o*(n*_-i*g)+y*(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*g)-f*(s*_-u*g)+m*(s*d-u*h)),e[5]=t*(h*_-d*g)-f*(n*_-i*g)+m*(n*d-i*h),e[6]=-(t*(s*_-u*g)-l*(n*_-i*g)+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*y)-f*(o*_-u*y)+m*(o*d-u*v),e[9]=-(t*(v*_-d*y)-f*(a*_-i*y)+m*(a*d-i*v)),e[10]=t*(o*_-u*y)-l*(a*_-i*y)+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*g-h*y)-f*(o*g-s*y)+m*(o*h-s*v)),e[13]=t*(v*g-h*y)-f*(a*g-n*y)+m*(a*h-n*v),e[14]=-(t*(o*g-s*y)-l*(a*g-n*y)+m*(a*s-n*o)),e[15]=t*(o*h-s*v)-l*(a*h-n*v)+f*(a*s-n*o),e}});var Ax=Z((tle,Mx)=>{Mx.exports=KI;function KI(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],y=e[14],g=e[15],_=r*l-t*i,w=r*o-a*i,T=r*s-n*i,b=t*o-a*l,M=t*s-n*l,C=a*s-n*o,k=u*m-f*d,q=u*y-v*d,D=u*g-h*d,R=f*y-v*m,z=f*g-h*m,F=v*g-h*y;return _*F-w*z+T*R+b*D-M*q+C*k}});var Sx=Z((ale,kx)=>{kx.exports=QI;function QI(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],y=r[12],g=r[13],_=r[14],w=r[15],T=t[0],b=t[1],M=t[2],C=t[3];return e[0]=T*a+b*o+M*v+C*y,e[1]=T*n+b*s+M*h+C*g,e[2]=T*i+b*u+M*d+C*_,e[3]=T*l+b*f+M*m+C*w,T=t[4],b=t[5],M=t[6],C=t[7],e[4]=T*a+b*o+M*v+C*y,e[5]=T*n+b*s+M*h+C*g,e[6]=T*i+b*u+M*d+C*_,e[7]=T*l+b*f+M*m+C*w,T=t[8],b=t[9],M=t[10],C=t[11],e[8]=T*a+b*o+M*v+C*y,e[9]=T*n+b*s+M*h+C*g,e[10]=T*i+b*u+M*d+C*_,e[11]=T*l+b*f+M*m+C*w,T=t[12],b=t[13],M=t[14],C=t[15],e[12]=T*a+b*o+M*v+C*y,e[13]=T*n+b*s+M*h+C*g,e[14]=T*i+b*u+M*d+C*_,e[15]=T*l+b*f+M*m+C*w,e}});var Lx=Z((nle,Cx)=>{Cx.exports=$I;function $I(e,r,t){var a=t[0],n=t[1],i=t[2],l,o,s,u,f,v,h,d,m,y,g,_;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],y=r[9],g=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]=y,e[10]=g,e[11]=_,e[12]=l*a+f*n+m*i+r[12],e[13]=o*a+v*n+y*i+r[13],e[14]=s*a+h*n+g*i+r[14],e[15]=u*a+d*n+_*i+r[15]),e}});var Dx=Z((ile,qx)=>{qx.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 Px=Z((lle,Ex)=>{Ex.exports=eH;function eH(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,y,g,_,w,T,b,M,C,k,q,D,R,z,F,I,H,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],y=r[4],g=r[5],_=r[6],w=r[7],T=r[8],b=r[9],M=r[10],C=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,F=l*i*f+n*s,I=n*l*f+i*s,H=i*l*f-n*s,J=l*l*f+u,e[0]=v*k+y*q+T*D,e[1]=h*k+g*q+b*D,e[2]=d*k+_*q+M*D,e[3]=m*k+w*q+C*D,e[4]=v*R+y*z+T*F,e[5]=h*R+g*z+b*F,e[6]=d*R+_*z+M*F,e[7]=m*R+w*z+C*F,e[8]=v*I+y*H+T*J,e[9]=h*I+g*H+b*J,e[10]=d*I+_*H+M*J,e[11]=m*I+w*H+C*J,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var zx=Z((ole,Rx)=>{Rx.exports=rH;function rH(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 Fx=Z((sle,Nx)=>{Nx.exports=tH;function tH(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 Hx=Z((ule,Ix)=>{Ix.exports=aH;function aH(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 Bx=Z((fle,Ox)=>{Ox.exports=nH;function nH(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 Ux=Z((cle,Yx)=>{Yx.exports=iH;function iH(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,y=i*u,g=l*o,_=l*s,w=l*u;return e[0]=1-(d+y),e[1]=v+w,e[2]=h-_,e[3]=0,e[4]=v-w,e[5]=1-(f+y),e[6]=m+g,e[7]=0,e[8]=h+_,e[9]=m-g,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 Gx=Z((vle,Vx)=>{Vx.exports=lH;function lH(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 Zx=Z((hle,Wx)=>{Wx.exports=oH;function oH(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 Jx=Z((dle,Xx)=>{Xx.exports=sH;function sH(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 Qx=Z((ple,Kx)=>{Kx.exports=uH;function uH(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 jx=Z((mle,$x)=>{$x.exports=fH;function fH(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_=Z((yle,e_)=>{e_.exports=cH;function cH(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,y=i*l,g=i*o,_=i*s;return e[0]=1-v-m,e[1]=f+_,e[2]=h-g,e[3]=0,e[4]=f-_,e[5]=1-u-m,e[6]=d+y,e[7]=0,e[8]=h+g,e[9]=d-y,e[10]=1-u-v,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var a_=Z((gle,t_)=>{t_.exports=vH;function vH(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 i_=Z((ble,n_)=>{n_.exports=hH;function hH(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 o_=Z((xle,l_)=>{l_.exports=dH;function dH(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 u_=Z((_le,s_)=>{s_.exports=pH;function pH(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 c_=Z((wle,f_)=>{var mH=ip();f_.exports=yH;function yH(e,r,t,a){var n,i,l,o,s,u,f,v,h,d,m=r[0],y=r[1],g=r[2],_=a[0],w=a[1],T=a[2],b=t[0],M=t[1],C=t[2];return Math.abs(m-b)<1e-6&&Math.abs(y-M)<1e-6&&Math.abs(g-C)<1e-6?mH(e):(f=m-b,v=y-M,h=g-C,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*y+l*g),e[13]=-(o*m+s*y+u*g),e[14]=-(f*m+v*y+h*g),e[15]=1,e)}});var h_=Z((Tle,v_)=>{v_.exports=gH;function gH(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 lp=Z((Mle,d_)=>{d_.exports={create:vx(),clone:dx(),copy:mx(),identity:ip(),transpose:bx(),invert:_x(),adjoint:Tx(),determinant:Ax(),multiply:Sx(),translate:Lx(),scale:Dx(),rotate:Px(),rotateX:zx(),rotateY:Fx(),rotateZ:Hx(),fromRotation:Bx(),fromRotationTranslation:Ux(),fromScaling:Gx(),fromTranslation:Zx(),fromXRotation:Jx(),fromYRotation:Qx(),fromZRotation:jx(),fromQuat:r_(),frustum:a_(),perspective:i_(),perspectiveFromFieldOfView:o_(),ortho:u_(),lookAt:c_(),str:h_()}});var kv=Z(Pt=>{"use strict";var bH=lp();Pt.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var xH=Ir(),p_=ro(),_H=kv(),wH=lp();function TH(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 MH(e){var r=xH.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function m_(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function AH(e,r){y_("global",e,r)}function y_(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):p_.warn("addStyleRule failed"):p_.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function kH(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&m_(t)}function SH(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 CH(e){var r=b_(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=g_(a);if(n){var i=_H.convertCssMatrix(n);t=wH.multiply(t,t,i)}}),t}function g_(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 b_(e){for(var r=[];LH(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function LH(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function qH(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}x_.exports={getGraphDiv:TH,isPlotDiv:MH,removeElement:m_,addStyleRule:AH,addRelatedStyleRule:y_,deleteRelatedStyleRule:kH,setStyleOnHover:SH,getFullTransformMatrix:CH,getElementTransformMatrix:g_,getElementAndAncestors:b_,equalDomRects:qH}});var Ku=Z((Sle,__)=>{"use strict";__.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((Cle,C_)=>{"use strict";var T_=Gt().extendFlat,DH=al(),M_={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},A_={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},EH=M_.flags.slice().concat(["fullReplot"]),PH=A_.flags.slice().concat("layoutReplot");C_.exports={traces:M_,layout:A_,traceFlags:function(){return w_(EH)},layoutFlags:function(){return w_(PH)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";op.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};op.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 sp=Z((qle,L_)=>{"use strict";L_.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 to=Z(ps=>{"use strict";var{DATE_FORMAT_LINK:RH,FORMAT_LINK:zH}=sp(),NH=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function FH({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,zH,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,RH,"for details on the date formatting syntax.",NH].join(" ")}ps.templateFormatStringDescription=FH;ps.hovertemplateAttrs=({editType:e="none",arrayOk:r}={},t={})=>Kl({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});ps.texttemplateAttrs=({editType:e="calc",arrayOk:r}={},t={})=>Kl({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});ps.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:r}={},t={})=>({valType:"string",dflt:"",editType:e});ps.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var Lv=Z((Ple,z_)=>{"use strict";function ll(e,r){return r?r.d2l(e):e}function q_(e,r){return r?r.l2d(e):e}function IH(e){return e.x0}function HH(e){return e.x1}function OH(e){return e.y0}function BH(e){return e.y1}function D_(e){return e.x0shift||0}function E_(e){return e.x1shift||0}function P_(e){return e.y0shift||0}function R_(e){return e.y1shift||0}function Sv(e,r){return ll(e.x1,r)+E_(e)-ll(e.x0,r)-D_(e)}function Cv(e,r,t){return ll(e.y1,t)+R_(e)-ll(e.y0,t)-P_(e)}function YH(e,r){return Math.abs(Sv(e,r))}function UH(e,r,t){return Math.abs(Cv(e,r,t))}function VH(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(Sv(e,r),2)+Math.pow(Cv(e,r,t),2))}function GH(e,r){return q_((ll(e.x1,r)+E_(e)+ll(e.x0,r)+D_(e))/2,r)}function WH(e,r,t){return q_((ll(e.y1,t)+R_(e)+ll(e.y0,t)+P_(e))/2,t)}function ZH(e,r,t){return e.type!=="line"?void 0:Cv(e,r,t)/Sv(e,r)}z_.exports={x0:IH,x1:HH,y0:OH,y1:BH,slope:ZH,dx:Sv,dy:Cv,width:YH,height:UH,length:VH,xcenter:GH,ycenter:WH}});var I_=Z((Rle,F_)=>{"use strict";var XH=pi().overrideAll,ao=Vn(),N_=ma(),JH=mi().dash,ol=Gt().extendFlat,{shapeTexttemplateAttrs:KH,templatefallbackAttrs:QH}=to(),$H=Lv();F_.exports=XH({newshape:{visible:ol({},ao.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:ol({},ao.legend,{}),legendgroup:ol({},ao.legendgroup,{}),legendgrouptitle:{text:ol({},ao.legendgrouptitle.text,{}),font:N_({})},legendrank:ol({},ao.legendrank,{}),legendwidth:ol({},ao.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:ol({},JH,{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:ol({},ao.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:KH({newshape:!0},{keys:Object.keys($H)}),texttemplatefallback:QH({editType:"arraydraw"}),font:N_({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var O_=Z((zle,H_)=>{"use strict";var jH=mi().dash,eO=Gt().extendFlat;H_.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:eO({},jH,{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 qv=Z((Nle,B_)=>{"use strict";B_.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 ms=Z((Fle,G_)=>{"use strict";var up=ma(),rO=Ku(),Dv=hi(),Y_=I_(),U_=O_(),tO=qv(),V_=Gt().extendFlat,Ev=up({editType:"calc"});Ev.family.dflt='"Open Sans", verdana, arial, sans-serif';Ev.size.dflt=12;Ev.color.dflt=Dv.defaultLine;G_.exports={font:Ev,title:{text:{valType:"string",editType:"layoutstyle"},font:up({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:up({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:V_(tO({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:Dv.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:Dv.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:Dv.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:Y_.newshape,activeshape:Y_.activeshape,newselection:U_.newselection,activeselection:U_.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:V_({},rO.transition,{editType:"none"})}});var W_=Z(()=>{(function(){if(!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")){var e=document.createElement("style");e.id="ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var br=Z(zr=>{"use strict";var ys=ro(),Z_=Av(),X_=np(),aO=al(),nO=Ju().addStyleRule,J_=Gt(),iO=Vn(),lO=ms(),oO=J_.extendFlat,fp=J_.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 hO=ss().timeFormat,l4=Hr(),cp=ro(),ul=fs().mod,xs=Vt(),_n=xs.BADNUM,Xa=xs.ONEDAY,Qu=xs.ONEHOUR,sl=xs.ONEMIN,bs=xs.ONESEC,$u=xs.EPOCHJD,zi=br(),e4=ss().utcFormat,dO=/^\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,pO=/^\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,r4=new Date().getFullYear()-70;function Ni(e){return e&&zi.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Rt.dateTick0=function(e,r){var t=mO(e,!!r);if(r<2)return t;var a=Rt.dateTime2ms(t,e);return a+=Xa*(r-1),Rt.ms2DateTime(a,0,e)};function mO(e,r){return Ni(e)?r?zi.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:zi.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}Rt.dfltRange=function(e){return Ni(e)?zi.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Rt.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Rv,zv;Rt.dateTime2ms=function(e,r){if(Rt.isJSDate(e)){var t=e.getTimezoneOffset()*sl,a=(e.getUTCMinutes()-e.getMinutes())*sl+(e.getUTCSeconds()-e.getSeconds())*bs+(e.getUTCMilliseconds()-e.getMilliseconds());if(a){var n=3*sl;t=t-n/2+ul(a-t+n/2,n)}return e=Number(e)-t,e>=Rv&&e<=zv?e:_n}if(typeof e!="string"&&typeof e!="number")return _n;e=String(e);var i=Ni(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?pO:dO);if(!s)return _n;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 _n;u=Number(u);var y;try{var g=zi.getComponentMethod("calendars","getCal")(r);if(o){var _=f.charAt(f.length-1)==="i";f=parseInt(f,10),y=g.newDate(u,g.toMonthIndex(u,f,_),v)}else y=g.newDate(u,Number(f),v)}catch(T){return _n}return y?(y.toJD()-$u)*Xa+h*Qu+d*sl+m*bs:_n}u.length===2?u=(Number(u)+2e3-r4)%100+r4: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?_n:w.getTime()+m*bs};Rv=Rt.MIN_MS=Rt.dateTime2ms("-9999");zv=Rt.MAX_MS=Rt.dateTime2ms("9999-12-31 23:59:59.9999");Rt.isDateTime=function(e,r){return Rt.dateTime2ms(e,r)!==_n};function gs(e,r){return String(e+Math.pow(10,r)).substr(1)}var Pv=90*Xa,t4=3*Qu,a4=5*sl;Rt.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Rv&&e<=zv))return _n;r||(r=0);var a=Math.floor(ul(e+.05,1)*10),n=Math.round(e-a/10),i,l,o,s,u,f;if(Ni(t)){var v=Math.floor(n/Xa)+$u,h=Math.floor(ul(e,Xa));try{i=zi.getComponentMethod("calendars","getCal")(t).fromJD(v).formatDate("yyyy-mm-dd")}catch(d){i=e4("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=Rv+Xa&&e<=zv-Xa))return _n;var r=Math.floor(ul(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=hO("%Y-%m-%d")(t),n=t.getHours(),i=t.getMinutes(),l=t.getSeconds(),o=t.getUTCMilliseconds()*10+r;return o4(a,n,i,l,o)};function o4(e,r,t,a,n){if((r||t||a||n)&&(e+=" "+gs(r,2)+":"+gs(t,2),(a||n)&&(e+=":"+gs(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+gs(n,i)}return e}Rt.cleanDate=function(e,r,t){if(e===_n)return r;if(Rt.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Ni(t))return cp.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=Rt.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!Rt.isDateTime(e,t))return cp.error("unrecognized date",e),r;return e};var yO=/%\d?f/g,gO=/%h/g,bO={1:"1",2:"1",3:"2",4:"2"};function n4(e,r,t,a){e=e.replace(yO,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(gO,function(){return bO[t("%q")(n)]}),Ni(a))try{e=zi.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var xO=[59,59.9,59.99,59.999,59.9999];function _O(e,r){var t=ul(e+.05,Xa),a=gs(Math.floor(t/Qu),2)+":"+gs(ul(Math.floor(t/sl),60),2);if(r!=="M"){l4(r)||(r=0);var n=Math.min(ul(e/bs,60),xO[r]),i=(100+n).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}Rt.formatDate=function(e,r,t,a,n,i){if(n=Ni(n)&&n,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` -`+i.year;else return _O(e,t)+` -`+n4(i.dayMonthYear,e,a,n);return n4(r,e,a,n)};var i4=3*Xa;Rt.incrementMonth=function(e,r,t){t=Ni(t)&&t;var a=ul(e,Xa);if(e=Math.round(e-a),t)try{var n=Math.round(e/Xa)+$u,i=zi.getComponentMethod("calendars","getCal")(t),l=i.fromJD(n);return r%12?i.add(l,r,"m"):i.add(l,r/12,"y"),(l.toJD()-$u)*Xa+a}catch(s){cp.error("invalid ms "+e+" in calendar "+t)}var o=new Date(e+i4);return o.setUTCMonth(o.getUTCMonth()+r)+a-i4};Rt.findExactDates=function(e,r){for(var t=0,a=0,n=0,i=0,l,o,s=Ni(r)&&zi.getComponentMethod("calendars","getCal")(r),u=0;u{"use strict";u4.exports=function(r){return r}});var dp=Z(Fi=>{"use strict";var wO=Hr(),TO=ro(),MO=vp(),AO=Vt().BADNUM,hp=1e-9;Fi.findBin=function(e,r,t){if(wO(r.start))return t?Math.ceil((e-r.start)/r.size-hp)-1:Math.floor((e-r.start)/r.size+hp);var a=0,n=r.length,i=0,l=n>1?(r[n-1]-r[0])/(n-1):1,o,s;for(l>=0?s=t?kO:SO:s=t?LO:CO,e+=l*hp*(t?-1:1)*(l>=0?1:-1);a90&&TO.log("Long binary search..."),a-1};function kO(e,r){return er}function LO(e,r){return e>=r}Fi.sorterAsc=function(e,r){return e-r};Fi.sorterDes=function(e,r){return r-e};Fi.distinctVals=function(e){var r=e.slice();r.sort(Fi.sorterAsc);var t;for(t=r.length-1;t>-1&&r[t]===AO;t--);for(var a=r[t]-r[0]||1,n=a/(t||1)/1e4,i=[],l,o=0;o<=t;o++){var s=r[o],u=s-l;l===void 0?(i.push(s),l=s):u>n&&(a=Math.min(a,u),i.push(s),l=s)}return{vals:i,minDiff:a}};Fi.roundUp=function(e,r,t){for(var a=0,n=r.length-1,i,l=0,o=t?0:1,s=t?1:0,u=t?Math.ceil:Math.floor;a0&&(a=1),t&&a)return e.sort(r)}return a?e:e.reverse()};Fi.findIndexOfMin=function(e,r){r=r||MO;for(var t=1/0,a,n=0;n{"use strict";f4.exports=function(r){return Object.keys(r).sort()}});var c4=Z(zt=>{"use strict";var ju=Hr(),qO=an().isArrayOrTypedArray;zt.aggNums=function(e,r,t,a){var n,i;if((!a||a>t.length)&&(a=t.length),ju(r)||(r=!1),qO(t[0])){for(i=new Array(a),n=0;ne.length-1)return e[e.length-1];var t=r%1;return t*e[Math.ceil(r)]+(1-t)*e[Math.floor(r)]}});var m4=Z((Wle,p4)=>{"use strict";var v4=fs(),mp=v4.mod,DO=v4.modHalf,ef=Math.PI,fl=2*ef;function EO(e){return e/180*ef}function PO(e){return e/ef*180}function yp(e){return Math.abs(e[1]-e[0])>fl-1e-14}function h4(e,r){return DO(r-e,fl)}function RO(e,r){return Math.abs(h4(e,r))}function d4(e,r){if(yp(r))return!0;var t,a;r[0]a&&(a+=fl);var n=mp(e,fl),i=n+fl;return n>=t&&n<=a||i>=t&&i<=a}function zO(e,r,t,a){if(!d4(r,a))return!1;var n,i;return t[0]=n&&e<=i}function gp(e,r,t,a,n,i,l){n=n||0,i=i||0;var o=yp([t,a]),s,u,f,v,h;o?(s=0,u=ef,f=fl):t{"use strict";no.isLeftAnchor=function(r){return r.xanchor==="left"||r.xanchor==="auto"&&r.x<=1/3};no.isCenterAnchor=function(r){return r.xanchor==="center"||r.xanchor==="auto"&&r.x>1/3&&r.x<2/3};no.isRightAnchor=function(r){return r.xanchor==="right"||r.xanchor==="auto"&&r.x>=2/3};no.isTopAnchor=function(r){return r.yanchor==="top"||r.yanchor==="auto"&&r.y>=2/3};no.isMiddleAnchor=function(r){return r.yanchor==="middle"||r.yanchor==="auto"&&r.y>1/3&&r.y<2/3};no.isBottomAnchor=function(r){return r.yanchor==="bottom"||r.yanchor==="auto"&&r.y<=1/3}});var x4=Z(io=>{"use strict";var bp=fs().mod;io.segmentsIntersect=b4;function b4(e,r,t,a,n,i,l,o){var s=t-e,u=n-e,f=l-n,v=a-r,h=i-r,d=o-i,m=s*d-f*v;if(m===0)return null;var y=(u*d-f*h)/m,g=(u*v-s*h)/m;return g<0||g>1||y<0||y>1?null:{x:e+s*y,y:r+v*y}}io.segmentDistance=function(r,t,a,n,i,l,o,s){if(b4(r,t,a,n,i,l,o,s))return 0;var u=a-r,f=n-t,v=o-i,h=s-l,d=u*u+f*f,m=v*v+h*h,y=Math.min(Nv(u,f,d,i-r,l-t),Nv(u,f,d,o-r,s-t),Nv(v,h,m,r-i,t-l),Nv(v,h,m,a-i,n-l));return Math.sqrt(y)};function Nv(e,r,t,a,n){var i=a*e+n*r;if(i<0)return a*a+n*n;if(i>t){var l=a-e,o=n-r;return l*l+o*o}else{var s=a*r-n*e;return s*s/t}}var Fv,xp,g4;io.getTextLocation=function(r,t,a,n){if((r!==xp||n!==g4)&&(Fv={},xp=r,g4=n),Fv[a])return Fv[a];var i=r.getPointAtLength(bp(a-n/2,t)),l=r.getPointAtLength(bp(a+n/2,t)),o=Math.atan((l.y-i.y)/(l.x-i.x)),s=r.getPointAtLength(bp(a,t)),u=(s.x*4+i.x+l.x)/6,f=(s.y*4+i.y+l.y)/6,v={x:u,y:f,theta:o};return Fv[a]=v,v};io.clearLocationCache=function(){xp=null};io.getVisibleSegment=function(r,t,a){var n=t.left,i=t.right,l=t.top,o=t.bottom,s=0,u=r.getTotalLength(),f=u,v,h;function d(y){var g=r.getPointAtLength(y);y===0?v=g:y===u&&(h=g);var _=g.xi?g.x-i:0,w=g.yo?g.y-o:0;return Math.sqrt(_*_+w*w)}for(var m=d(s);m;){if(s+=m+a,s>f)return;m=d(s)}for(m=d(f);m;){if(f-=m+a,s>f)return;m=d(f)}return{min:s,max:f,len:f-s,total:u,isClosed:s===0&&f===u&&Math.abs(v.x-h.x)<.1&&Math.abs(v.y-h.y)<.1}};io.findPointOnPath=function(r,t,a,n){n=n||{};for(var i=n.pathLength||r.getTotalLength(),l=n.tolerance||.001,o=n.iterationLimit||30,s=r.getPointAtLength(0)[a]>r.getPointAtLength(i)[a]?-1:1,u=0,f=0,v=i,h,d,m;u0?v=h:f=h,u++}return d}});var Iv=Z(rf=>{"use strict";var Ii={};rf.throttle=function(r,t,a){var n=Ii[r],i=Date.now();if(!n){for(var l in Ii)Ii[l].tsn.ts+t){o();return}n.timer=setTimeout(function(){o(),n.timer=null},t)};rf.done=function(e){var r=Ii[e];return!r||!r.timer?Promise.resolve():new Promise(function(t){var a=r.onDone;r.onDone=function(){a&&a(),t(),r.onDone=null}})};rf.clear=function(e){if(e)_4(Ii[e]),delete Ii[e];else for(var r in Ii)rf.clear(r)};function _4(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var T4=Z((Kle,w4)=>{"use strict";w4.exports=function(r){r._responsiveChartHandler&&(window.removeEventListener("resize",r._responsiveChartHandler),delete r._responsiveChartHandler)}});var M4=Z((Qle,Hv)=>{"use strict";Hv.exports=_p;Hv.exports.isMobile=_p;Hv.exports.default=_p;var HO=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,OO=/CrOS/,BO=/android|ipad|playbook|silk/i;function _p(e){e||(e={});let r=e.ua;if(!r&&typeof navigator!="undefined"&&(r=navigator.userAgent),r&&r.headers&&typeof r.headers["user-agent"]=="string"&&(r=r.headers["user-agent"]),typeof r!="string")return!1;let t=HO.test(r)&&!OO.test(r)||!!e.tablet&&BO.test(r);return!t&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&r.indexOf("Macintosh")!==-1&&r.indexOf("Safari")!==-1&&(t=!0),t}});var k4=Z(($le,A4)=>{"use strict";var YO=Hr(),UO=M4();A4.exports=function(r){var t;if(r&&r.hasOwnProperty("userAgent")?t=r.userAgent:t=VO(),typeof t!="string")return!0;var a=UO({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!a)for(var n=t.split(" "),i=1;i-1;o--){var s=n[o];if(s.substr(0,8)==="Version/"){var u=s.substr(8).split(".")[0];if(YO(u)&&(u=+u),u>=13)return!0}}}return a};function VO(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var C4=Z((jle,S4)=>{"use strict";var GO=Ir();S4.exports=function(r,t,a){var n=r.selectAll("g."+a.replace(/\s/g,".")).data(t,function(l){return l[0].trace.uid});n.exit().remove(),n.enter().append("g").attr("class",a),n.order();var i=r.classed("rangeplot")?"nodeRangePlot3":"node3";return n.each(function(l){l[0][i]=GO.select(this)}),n}});var q4=Z((eoe,L4)=>{"use strict";var WO=br();L4.exports=function(r,t){for(var a=r._context.locale,n=0;n<2;n++){for(var i=r._context.locales,l=0;l<2;l++){var o=(i[a]||{}).dictionary;if(o){var s=o[t];if(s)return s}i=WO.localeRegistry}var u=a.split("-")[0];if(u===a)break;a=u}return t}});var E4=Z((roe,D4)=>{"use strict";D4.exports=function(r){for(var t={},a=[],n=0,i=0;i{"use strict";P4.exports=function(r){for(var t=JO(r)?XO:ZO,a=[],n=0;n{"use strict";z4.exports=function(r,t){if(!t)return r;var a=1/Math.abs(t),n=a>1?(a*r+a*t)/a:r+t,i=String(n).length;if(i>16){var l=String(t).length,o=String(r).length;if(i>=o+l){var s=parseFloat(n).toPrecision(12);s.indexOf("e+")===-1&&(n=+s)}}return n}});var I4=Z((noe,F4)=>{"use strict";var KO=Hr(),QO=Vt().BADNUM,$O=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;F4.exports=function(r){return typeof r=="string"&&(r=r.replace($O,"")),KO(r)?Number(r):QO}});var Ie=Z((ioe,Q4)=>{"use strict";var tf=Ir(),jO=ss().utcFormat,eB=V1().format,V4=Hr(),G4=Vt(),W4=G4.FP_SAFE,rB=-W4,H4=G4.BADNUM,fe=Q4.exports={};fe.adjustFormat=function(r){return!r||/^\d[.]\df/.test(r)||/[.]\d%/.test(r)?r:r==="0.f"?"~f":/^\d%/.test(r)?"~%":/^\ds/.test(r)?"~s":!/^[~,.0$]/.test(r)&&/[&fps]/.test(r)?"~"+r:r};var O4={};fe.warnBadFormat=function(e){var r=String(e);O4[r]||(O4[r]=1,fe.warn('encountered bad format: "'+r+'"'))};fe.noFormat=function(e){return String(e)};fe.numberFormat=function(e){var r;try{r=eB(fe.adjustFormat(e))}catch(t){return fe.warnBadFormat(e),fe.noFormat}return r};fe.nestedProperty=mv();fe.keyedContainer=Db();fe.relativeAttr=Pb();fe.isPlainObject=al();fe.toLogRange=gv();fe.relinkPrivateKeys=Fb();var cl=an();fe.isArrayBuffer=cl.isArrayBuffer;fe.isTypedArray=cl.isTypedArray;fe.isArrayOrTypedArray=cl.isArrayOrTypedArray;fe.isArray1D=cl.isArray1D;fe.ensureArray=cl.ensureArray;fe.concat=cl.concat;fe.maxRowLength=cl.maxRowLength;fe.minRowLength=cl.minRowLength;var Z4=fs();fe.mod=Z4.mod;fe.modHalf=Z4.modHalf;var vl=tx();fe.valObjectMeta=vl.valObjectMeta;fe.coerce=vl.coerce;fe.coerce2=vl.coerce2;fe.coerceFont=vl.coerceFont;fe.coercePattern=vl.coercePattern;fe.coerceHoverinfo=vl.coerceHoverinfo;fe.coerceSelectionMarkerOpacity=vl.coerceSelectionMarkerOpacity;fe.validate=vl.validate;var nn=s4();fe.dateTime2ms=nn.dateTime2ms;fe.isDateTime=nn.isDateTime;fe.ms2DateTime=nn.ms2DateTime;fe.ms2DateTimeLocal=nn.ms2DateTimeLocal;fe.cleanDate=nn.cleanDate;fe.isJSDate=nn.isJSDate;fe.formatDate=nn.formatDate;fe.incrementMonth=nn.incrementMonth;fe.dateTick0=nn.dateTick0;fe.dfltRange=nn.dfltRange;fe.findExactDates=nn.findExactDates;fe.MIN_MS=nn.MIN_MS;fe.MAX_MS=nn.MAX_MS;var lo=dp();fe.findBin=lo.findBin;fe.sorterAsc=lo.sorterAsc;fe.sorterDes=lo.sorterDes;fe.distinctVals=lo.distinctVals;fe.roundUp=lo.roundUp;fe.sort=lo.sort;fe.findIndexOfMin=lo.findIndexOfMin;fe.sortObjectKeys=pp();var Hi=c4();fe.aggNums=Hi.aggNums;fe.len=Hi.len;fe.mean=Hi.mean;fe.geometricMean=Hi.geometricMean;fe.median=Hi.median;fe.midRange=Hi.midRange;fe.variance=Hi.variance;fe.stdev=Hi.stdev;fe.interp=Hi.interp;var Gn=kv();fe.init2dArray=Gn.init2dArray;fe.transposeRagged=Gn.transposeRagged;fe.dot=Gn.dot;fe.translationMatrix=Gn.translationMatrix;fe.rotationMatrix=Gn.rotationMatrix;fe.rotationXYMatrix=Gn.rotationXYMatrix;fe.apply3DTransform=Gn.apply3DTransform;fe.apply2DTransform=Gn.apply2DTransform;fe.apply2DTransform2=Gn.apply2DTransform2;fe.convertCssMatrix=Gn.convertCssMatrix;fe.inverseTransformMatrix=Gn.inverseTransformMatrix;var yi=m4();fe.deg2rad=yi.deg2rad;fe.rad2deg=yi.rad2deg;fe.angleDelta=yi.angleDelta;fe.angleDist=yi.angleDist;fe.isFullCircle=yi.isFullCircle;fe.isAngleInsideSector=yi.isAngleInsideSector;fe.isPtInsideSector=yi.isPtInsideSector;fe.pathArc=yi.pathArc;fe.pathSector=yi.pathSector;fe.pathAnnulus=yi.pathAnnulus;var ws=y4();fe.isLeftAnchor=ws.isLeftAnchor;fe.isCenterAnchor=ws.isCenterAnchor;fe.isRightAnchor=ws.isRightAnchor;fe.isTopAnchor=ws.isTopAnchor;fe.isMiddleAnchor=ws.isMiddleAnchor;fe.isBottomAnchor=ws.isBottomAnchor;var Ts=x4();fe.segmentsIntersect=Ts.segmentsIntersect;fe.segmentDistance=Ts.segmentDistance;fe.getTextLocation=Ts.getTextLocation;fe.clearLocationCache=Ts.clearLocationCache;fe.getVisibleSegment=Ts.getVisibleSegment;fe.findPointOnPath=Ts.findPointOnPath;var Yv=Gt();fe.extendFlat=Yv.extendFlat;fe.extendDeep=Yv.extendDeep;fe.extendDeepAll=Yv.extendDeepAll;fe.extendDeepNoArrays=Yv.extendDeepNoArrays;var wp=ro();fe.log=wp.log;fe.warn=wp.warn;fe.error=wp.error;var tB=vs();fe.counterRegex=tB.counter;var Tp=Iv();fe.throttle=Tp.throttle;fe.throttleDone=Tp.done;fe.clearThrottle=Tp.clear;var Wn=Ju();fe.getGraphDiv=Wn.getGraphDiv;fe.isPlotDiv=Wn.isPlotDiv;fe.removeElement=Wn.removeElement;fe.addStyleRule=Wn.addStyleRule;fe.addRelatedStyleRule=Wn.addRelatedStyleRule;fe.deleteRelatedStyleRule=Wn.deleteRelatedStyleRule;fe.setStyleOnHover=Wn.setStyleOnHover;fe.getFullTransformMatrix=Wn.getFullTransformMatrix;fe.getElementTransformMatrix=Wn.getElementTransformMatrix;fe.getElementAndAncestors=Wn.getElementAndAncestors;fe.equalDomRects=Wn.equalDomRects;fe.clearResponsive=T4();fe.preserveDrawingBuffer=k4();fe.makeTraceGroups=C4();fe._=q4();fe.notifier=rp();fe.filterUnique=E4();fe.filterVisible=R4();fe.pushUnique=np();fe.increment=N4();fe.cleanNumber=I4();fe.ensureNumber=function(r){return V4(r)?(r=Number(r),r>W4||r=r?!1:V4(e)&&e>=0&&e%1===0};fe.noop=Av();fe.identity=vp();fe.repeat=function(e,r){for(var t=new Array(r),a=0;at?Math.max(t,Math.min(r,e)):Math.max(r,Math.min(t,e))};fe.bBoxIntersect=function(e,r,t){return t=t||0,e.left<=r.right+t&&r.left<=e.right+t&&e.top<=r.bottom+t&&r.top<=e.bottom+t};fe.simpleMap=function(e,r,t,a,n){for(var i=e.length,l=new Array(i),o=0;o=Math.pow(2,t)?n>10?(fe.warn("randstr failed uniqueness"),l):e(r,t,a,(n||0)+1):l};fe.OptionControl=function(e,r){e||(e={}),r||(r="opt");var t={};return t.optionList=[],t._newoption=function(a){a[r]=e,t[a.name]=a,t.optionList.push(a)},t["_"+r]=e,t};fe.smooth=function(e,r){if(r=Math.round(r)||0,r<2)return e;var t=e.length,a=2*t,n=2*r-1,i=new Array(n),l=new Array(t),o,s,u,f;for(o=0;o=a&&(u-=a*Math.floor(u/a)),u<0?u=-1-u:u>=t&&(u=a-1-u),f+=e[u]*i[s];l[o]=f}return l};fe.syncOrAsync=function(e,r,t){var a,n;function i(){return fe.syncOrAsync(e,r,t)}for(;e.length;)if(n=e.splice(0,1)[0],a=n(r),a&&a.then)return a.then(i);return t&&t(r)};fe.stripTrailingSlash=function(e){return e.substr(-1)==="/"?e.substr(0,e.length-1):e};fe.noneOrAll=function(e,r,t){if(e){var a=!1,n=!0,i,l;for(i=0;i0?n:0})};fe.fillArray=function(e,r,t,a){if(a=a||fe.identity,fe.isArrayOrTypedArray(e))for(var n=0;niB.test(window.navigator.userAgent);var lB=/Firefox\/(\d+)\.\d+/;fe.getFirefoxVersion=function(){var e=lB.exec(window.navigator.userAgent);if(e&&e.length===2){var r=parseInt(e[1]);if(!isNaN(r))return r}return null};fe.isD3Selection=function(e){return e instanceof tf.selection};fe.ensureSingle=function(e,r,t,a){var n=e.select(r+(t?"."+t:""));if(n.size())return n;var i=e.append(r);return t&&i.classed(t,!0),a&&i.call(a),i};fe.ensureSingleById=function(e,r,t,a){var n=e.select(r+"#"+t);if(n.size())return n;var i=e.append(r).attr("id",t);return a&&i.call(a),i};fe.objectFromPath=function(e,r){for(var t=e.split("."),a,n=a={},i=0;i1?n+l[1]:"";if(i&&(l.length>1||o.length>4||t))for(;a.test(o);)o=o.replace(a,"$1"+i+"$2");return o+s};fe.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var K4=/^\w*$/;fe.templateString=function(e,r){var t={};return e.replace(fe.TEMPLATE_STRING_REGEX,function(a,n){var i;return K4.test(n)?i=r[n]:(t[n]=t[n]||fe.nestedProperty(r,n).get,i=t[n](!0)),i!==void 0?i:""})};var uB={max:10,count:0,name:"hovertemplate"};fe.hovertemplateString=e=>Mp(ov(Kl({},e),{opts:uB}));var fB={max:10,count:0,name:"texttemplate"};fe.texttemplateString=e=>Mp(ov(Kl({},e),{opts:fB}));var cB=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function vB(e){var r=e.match(cB);return r?{key:r[1],op:r[2],number:Number(r[3])}:{key:e,op:null,number:null}}var hB={max:10,count:0,name:"texttemplate",parseMultDiv:!0};fe.texttemplateStringForShapes=e=>Mp(ov(Kl({},e),{opts:hB}));var B4=/^[:|\|]/;function Mp({data:e=[],locale:r,fallback:t,labels:a={},opts:n,template:i}){return i.replace(fe.TEMPLATE_STRING_REGEX,(l,o,s)=>{let u=["xother","yother"].includes(o),f=["_xother","_yother"].includes(o),v=["_xother_","_yother_"].includes(o),h=["xother_","yother_"].includes(o),d=u||f||h||v;(f||v)&&(o=o.substring(1)),(h||v)&&(o=o.substring(0,o.length-1));let m=null,y=null;if(n.parseMultDiv){var g=vB(o);o=g.key,m=g.op,y=g.number}let _;if(d){if(a[o]===void 0)return"";_=a[o]}else for(let M of e)if(M){if(M.hasOwnProperty(o)){_=M[o];break}if(K4.test(o)||(_=fe.nestedProperty(M,o).get(!0)),_!==void 0)break}if(_===void 0){let{count:M,max:C,name:k}=n,q=t===!1?l:t;return M=Bv&&l<=Y4,u=o>=Bv&&o<=Y4;if(s&&(a=10*a+l-Bv),u&&(n=10*n+o-Bv),!s||!u){if(a!==n)return a-n;if(l!==o)return l-o}}return n-a};var _s=2e9;fe.seedPseudoRandom=function(){_s=2e9};fe.pseudoRandom=function(){var e=_s;return _s=(69069*_s+1)%4294967296,Math.abs(_s-e)<429496729?fe.pseudoRandom():_s/4294967296};fe.fillText=function(e,r,t){var a=Array.isArray(t)?function(l){t.push(l)}:function(l){t.text=l},n=fe.extractOption(e,r,"htx","hovertext");if(fe.isValidTextValue(n))return a(n);var i=fe.extractOption(e,r,"tx","text");if(fe.isValidTextValue(i))return a(i)};fe.isValidTextValue=function(e){return e||e===0};fe.formatPercent=function(e,r){r=r||0;for(var t=(Math.round(100*e*Math.pow(10,r))*Math.pow(.1,r)).toFixed(r)+"%",a=0;a1&&(u=1):u=0,fe.strTranslate(n-u*(t+l),i-u*(a+o))+fe.strScale(u)+(s?"rotate("+s+(r?"":" "+t+" "+a)+")":"")};fe.setTransormAndDisplay=function(e,r){e.attr("transform",fe.getTextTransform(r)),e.style("display",r.scale?null:"none")};fe.ensureUniformFontSize=function(e,r){var t=fe.extendFlat({},r);return t.size=Math.max(r.size,e._fullLayout.uniformtext.minsize||0),t};fe.join2=function(e,r,t){var a=e.length;return a>1?e.slice(0,-1).join(r)+t+e[a-1]:e.join(r)};fe.bigFont=function(e){return Math.round(1.2*e)};var U4=fe.getFirefoxVersion(),dB=U4!==null&&U4<86;fe.getPositionFromD3Event=function(){return dB?[tf.event.layerX,tf.event.layerY]:[tf.event.offsetX,tf.event.offsetY]}});var e6=Z(()=>{"use strict";var pB=Ie(),$4={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(Ap in $4)j4=Ap.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),pB.addStyleRule(j4,$4[Ap]);var j4,Ap});var kp=Z((uoe,r6)=>{r6.exports=!0});var Cp=Z((foe,t6)=>{"use strict";var mB=kp(),Sp;typeof window.matchMedia=="function"?Sp=!window.matchMedia("(hover: none)").matches:Sp=mB;t6.exports=Sp});var Gv=Z((coe,Lp)=>{"use strict";var Ms=typeof Reflect=="object"?Reflect:null,a6=Ms&&typeof Ms.apply=="function"?Ms.apply:function(r,t,a){return Function.prototype.apply.call(r,t,a)},Uv;Ms&&typeof Ms.ownKeys=="function"?Uv=Ms.ownKeys:Object.getOwnPropertySymbols?Uv=function(r){return Object.getOwnPropertyNames(r).concat(Object.getOwnPropertySymbols(r))}:Uv=function(r){return Object.getOwnPropertyNames(r)};function yB(e){console&&console.warn&&console.warn(e)}var i6=Number.isNaN||function(r){return r!==r};function vt(){vt.init.call(this)}Lp.exports=vt;Lp.exports.once=_B;vt.EventEmitter=vt;vt.prototype._events=void 0;vt.prototype._eventsCount=0;vt.prototype._maxListeners=void 0;var n6=10;function Vv(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(vt,"defaultMaxListeners",{enumerable:!0,get:function(){return n6},set:function(e){if(typeof e!="number"||e<0||i6(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");n6=e}});vt.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};vt.prototype.setMaxListeners=function(r){if(typeof r!="number"||r<0||i6(r))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+r+".");return this._maxListeners=r,this};function l6(e){return e._maxListeners===void 0?vt.defaultMaxListeners:e._maxListeners}vt.prototype.getMaxListeners=function(){return l6(this)};vt.prototype.emit=function(r){for(var t=[],a=1;a0&&(l=t[0]),l instanceof Error)throw l;var o=new Error("Unhandled error."+(l?" ("+l.message+")":""));throw o.context=l,o}var s=i[r];if(s===void 0)return!1;if(typeof s=="function")a6(s,this,t);else for(var u=s.length,f=c6(s,u),a=0;a0&&l.length>n&&!l.warned){l.warned=!0;var o=new Error("Possible EventEmitter memory leak detected. "+l.length+" "+String(r)+" listeners added. Use emitter.setMaxListeners() to increase limit");o.name="MaxListenersExceededWarning",o.emitter=e,o.type=r,o.count=l.length,yB(o)}return e}vt.prototype.addListener=function(r,t){return o6(this,r,t,!1)};vt.prototype.on=vt.prototype.addListener;vt.prototype.prependListener=function(r,t){return o6(this,r,t,!0)};function gB(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function s6(e,r,t){var a={fired:!1,wrapFn:void 0,target:e,type:r,listener:t},n=gB.bind(a);return n.listener=t,a.wrapFn=n,n}vt.prototype.once=function(r,t){return Vv(t),this.on(r,s6(this,r,t)),this};vt.prototype.prependOnceListener=function(r,t){return Vv(t),this.prependListener(r,s6(this,r,t)),this};vt.prototype.removeListener=function(r,t){var a,n,i,l,o;if(Vv(t),n=this._events,n===void 0)return this;if(a=n[r],a===void 0)return this;if(a===t||a.listener===t)--this._eventsCount===0?this._events=Object.create(null):(delete n[r],n.removeListener&&this.emit("removeListener",r,a.listener||t));else if(typeof a!="function"){for(i=-1,l=a.length-1;l>=0;l--)if(a[l]===t||a[l].listener===t){o=a[l].listener,i=l;break}if(i<0)return this;i===0?a.shift():bB(a,i),a.length===1&&(n[r]=a[0]),n.removeListener!==void 0&&this.emit("removeListener",r,o||t)}return this};vt.prototype.off=vt.prototype.removeListener;vt.prototype.removeAllListeners=function(r){var t,a,n;if(a=this._events,a===void 0)return this;if(a.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):a[r]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete a[r]),this;if(arguments.length===0){var i=Object.keys(a),l;for(n=0;n=0;n--)this.removeListener(r,t[n]);return this};function u6(e,r,t){var a=e._events;if(a===void 0)return[];var n=a[r];return n===void 0?[]:typeof n=="function"?t?[n.listener||n]:[n]:t?xB(n):c6(n,n.length)}vt.prototype.listeners=function(r){return u6(this,r,!0)};vt.prototype.rawListeners=function(r){return u6(this,r,!1)};vt.listenerCount=function(e,r){return typeof e.listenerCount=="function"?e.listenerCount(r):f6.call(e,r)};vt.prototype.listenerCount=f6;function f6(e){var r=this._events;if(r!==void 0){var t=r[e];if(typeof t=="function")return 1;if(t!==void 0)return t.length}return 0}vt.prototype.eventNames=function(){return this._eventsCount>0?Uv(this._events):[]};function c6(e,r){for(var t=new Array(r),a=0;a{"use strict";var qp=Gv().EventEmitter,TB={init:function(e){if(e._ev instanceof qp)return e;var r=new qp,t=new qp;return e._ev=r,e._internalEv=t,e.on=r.on.bind(r),e.once=r.once.bind(r),e.removeListener=r.removeListener.bind(r),e.removeAllListeners=r.removeAllListeners.bind(r),e._internalOn=t.on.bind(t),e._internalOnce=t.once.bind(t),e._removeInternalListener=t.removeListener.bind(t),e._removeAllInternalListeners=t.removeAllListeners.bind(t),e.emit=function(a,n){r.emit(a,n),t.emit(a,n)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,r,t){var a,n=e._ev;if(!n)return;var i=n._events[r];if(!i)return;function l(s){if(s.listener){if(n.removeListener(r,s.listener),!s.fired)return s.fired=!0,s.listener.apply(n,[t])}else return s.apply(n,[t])}i=Array.isArray(i)?i:[i];var o;for(o=0;o{"use strict";var d6=Ie(),MB=eo().dfltConfig;function AB(e,r){for(var t=[],a,n=0;nMB.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};Oi.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};Oi.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};Oi.undo=function(r){var t,a;if(!(r.undoQueue===void 0||isNaN(r.undoQueue.index)||r.undoQueue.index<=0)){for(r.undoQueue.index--,t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a=r.undoQueue.queue.length)){for(t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a{"use strict";y6.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var Ss=Z(Wt=>{"use strict";var wn=br(),nf=Ie(),Zv=Vn(),Ep=ms(),kB=Dp(),SB=Ku(),CB=eo().configAttributes,g6=pi(),Zn=nf.extendDeepAll,As=nf.isPlainObject,LB=nf.isArrayOrTypedArray,Xv=nf.nestedProperty,qB=nf.valObjectMeta,Pp="_isSubplotObj",Jv="_isLinkedToArray",DB="_arrayAttrRegexps",x6="_deprecated",Rp=[Pp,Jv,DB,x6];Wt.IS_SUBPLOT_OBJ=Pp;Wt.IS_LINKED_TO_ARRAY=Jv;Wt.DEPRECATED=x6;Wt.UNDERSCORE_ATTRS=Rp;Wt.get=function(){var e={};return wn.allTypes.forEach(function(r){e[r]=PB(r)}),{defs:{valObjects:qB,metaKeys:Rp.concat(["description","role","editType","impliedEdits"]),editType:{traces:g6.traces,layout:g6.layout},impliedEdits:{}},traces:e,layout:RB(),frames:zB(),animation:ks(SB),config:ks(CB)}};Wt.crawl=function(e,r,t,a){var n=t||0;a=a||"",Object.keys(e).forEach(function(i){var l=e[i];if(Rp.indexOf(i)===-1){var o=(a?a+".":"")+i;r(l,i,e,n,o),!Wt.isValObject(l)&&As(l)&&i!=="impliedEdits"&&Wt.crawl(l,r,n+1,o)}})};Wt.isValObject=function(e){return e&&e.valType!==void 0};Wt.findArrayAttributes=function(e){var r=[],t=[],a=[],n,i;function l(s,u,f,v){t=t.slice(0,v).concat([u]),a=a.slice(0,v).concat([s&&s._isLinkedToArray]);var h=s&&(s.valType==="data_array"||s.arrayOk===!0)&&!(t[v-1]==="colorbar"&&(u==="ticktext"||u==="tickvals"));h&&o(n,0,"")}function o(s,u,f){var v=s[t[u]],h=f+t[u];if(u===t.length-1)LB(v)&&r.push(i+h);else if(a[u]){if(Array.isArray(v))for(var d=0;d=i.length)return!1;if(e.dimensions===2){if(t++,r.length===t)return e;var l=r[t];if(!Wv(l))return!1;e=i[n][l]}else e=i[n]}else e=i}}return e}function Wv(e){return e===Math.round(e)&&e>=0}function PB(e){var r,t;r=wn.modules[e]._module,t=r.basePlotModule;var a={};a.type=null;var n=Zn({},Zv),i=Zn({},r.attributes);Wt.crawl(i,function(s,u,f,v,h){Xv(n,h).set(void 0),s===void 0&&Xv(i,h).set(void 0)}),Zn(a,n),wn.traceIs(e,"noOpacity")&&delete a.opacity,wn.traceIs(e,"showLegend")||(delete a.showlegend,delete a.legendgroup),wn.traceIs(e,"noHover")&&(delete a.hoverinfo,delete a.hoverlabel),r.selectPoints||delete a.selectedpoints,Zn(a,i),t.attributes&&Zn(a,t.attributes),a.type=e;var l={meta:r.meta||{},categories:r.categories||{},animatable:!!r.animatable,type:e,attributes:ks(a)};if(r.layoutAttributes){var o={};Zn(o,r.layoutAttributes),l.layoutAttributes=ks(o)}return r.animatable||Wt.crawl(l,function(s){Wt.isValObject(s)&&"anim"in s&&delete s.anim}),l}function RB(){var e={},r,t;Zn(e,Ep);for(r in wn.subplotsRegistry)if(t=wn.subplotsRegistry[r],!!t.layoutAttributes)if(Array.isArray(t.attr))for(var a=0;a{"use strict";var Cs=Ie(),OB=Vn(),hl="templateitemname",zp={name:{valType:"string",editType:"none"}};zp[hl]={valType:"string",editType:"calc"};oo.templatedArray=function(e,r){return r._isLinkedToArray=e,r.name=zp.name,r[hl]=zp[hl],r};oo.traceTemplater=function(e){var r={},t,a;for(t in e)a=e[t],Array.isArray(a)&&a.length&&(r[t]=0);function n(i){t=Cs.coerce(i,{},OB,"type");var l={type:t,_template:null};if(t in r){a=e[t];var o=r[t]%a.length;r[t]++,l._template=a[o]}return l}return{newTrace:n}};oo.newContainer=function(e,r,t){var a=e._template,n=a&&(a[r]||t&&a[t]);Cs.isPlainObject(n)||(n=null);var i=e[r]={_template:n};return i};oo.arrayTemplater=function(e,r,t){var a=e._template,n=a&&a[T6(r)],i=a&&a[r];(!Array.isArray(i)||!i.length)&&(i=[]);var l={};function o(u){var f={name:u.name,_input:u},v=f[hl]=u[hl];if(!w6(v))return f._template=n,f;for(var h=0;h=a&&(t._input||{})._templateitemname;i&&(n=a);var l=r+"["+n+"]",o;function s(){o={},i&&(o[l]={},o[l][hl]=i)}s();function u(d,m){o[d]=m}function f(d,m){i?Cs.nestedProperty(o[l],d).set(m):o[l+"."+d]=m}function v(){var d=o;return s(),d}function h(d,m){d&&f(d,m);var y=v();for(var g in y)Cs.nestedProperty(e,g).set(y[g])}return{modifyBase:u,modifyItem:f,getUpdateObj:v,applyUpdate:h}}});var ya=Z((yoe,M6)=>{"use strict";var lf=vs().counter;M6.exports={idRegex:{x:lf("x","( domain)?"),y:lf("y","( domain)?")},attrRegex:lf("[xy]axis"),xAxisMatch:lf("xaxis"),yAxisMatch:lf("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var Zt=Z(Ja=>{"use strict";var BB=br(),Np=ya();Ja.id2name=function(r){if(!(typeof r!="string"||!r.match(Np.AX_ID_PATTERN))){var t=r.split(" ")[0].substr(1);return t==="1"&&(t=""),r.charAt(0)+"axis"+t}};Ja.name2id=function(r){if(r.match(Np.AX_NAME_PATTERN)){var t=r.substr(5);return t==="1"&&(t=""),r.charAt(0)+t}};Ja.cleanId=function(r,t,a){var n=/( domain)$/.test(r);if(!(typeof r!="string"||!r.match(Np.AX_ID_PATTERN))&&!(t&&r.charAt(0)!==t)&&!(n&&!a)){var i=r.split(" ")[0].substr(1).replace(/^0+/,"");return i==="1"&&(i=""),r.charAt(0)+i+(n&&a?" domain":"")}};Ja.list=function(e,r,t){var a=e._fullLayout;if(!a)return[];var n=Ja.listIds(e,r),i=new Array(n.length),l;for(l=0;la?1:-1:+(e.substr(1)||1)-+(r.substr(1)||1)};Ja.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function A6(e,r){if(r&&r.length){for(var t=0;t{"use strict";function YB(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".outline-controllers").remove()}function UB(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}k6.exports={clearOutlineControllers:YB,clearOutline:UB}});var Kv=Z((xoe,S6)=>{"use strict";S6.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var Fp=Z($v=>{"use strict";var Qv=br(),_oe=ya().SUBPLOT_PATTERN;$v.getSubplotCalcData=function(e,r,t){var a=Qv.subplotsRegistry[r];if(!a)return[];for(var n=a.attr,i=[],l=0;l{"use strict";var VB=br(),Ls=Ie();so.manageCommandObserver=function(e,r,t,a){var n={},i=!0;r&&r._commandObserver&&(n=r._commandObserver),n.cache||(n.cache={}),n.lookupTable={};var l=so.hasSimpleAPICommandBindings(e,t,n.lookupTable);if(r&&r._commandObserver){if(l)return n;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,n}if(l){C6(e,l,n.cache),n.check=function(){if(i){var f=C6(e,l,n.cache);return f.changed&&a&&n.lookupTable[f.value]!==void 0&&(n.disable(),Promise.resolve(a({value:f.value,type:l.type,prop:l.prop,traces:l.traces,index:n.lookupTable[f.value]})).then(n.enable,n.enable)),f.changed}};for(var o=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],s=0;s0?".":"")+n;Ls.isPlainObject(i)?Ip(i,r,l,a+1):r(l,n,i)}})}});var Ft=Z((Moe,G6)=>{"use strict";var I6=Ir(),WB=ss().timeFormatLocale,ZB=V1().formatLocale,of=Hr(),XB=G1(),Wr=br(),H6=Ss(),JB=ct(),cr=Ie(),O6=Er(),E6=Vt().BADNUM,Ka=Zt(),KB=dl().clearOutline,QB=Kv(),Hp=Ku(),$B=Dp(),jB=Fp().getModuleCalcData,P6=cr.relinkPrivateKeys,uo=cr._,$e=G6.exports={};cr.extendFlat($e,Wr);$e.attributes=Vn();$e.attributes.type.values=$e.allTypes;$e.fontAttrs=ma();$e.layoutAttributes=ms();var e0=D6();$e.executeAPICommand=e0.executeAPICommand;$e.computeAPICommandBindings=e0.computeAPICommandBindings;$e.manageCommandObserver=e0.manageCommandObserver;$e.hasSimpleAPICommandBindings=e0.hasSimpleAPICommandBindings;$e.redrawText=function(e){return e=cr.getGraphDiv(e),new Promise(function(r){setTimeout(function(){e._fullLayout&&(Wr.getComponentMethod("annotations","draw")(e),Wr.getComponentMethod("legend","draw")(e),Wr.getComponentMethod("colorbar","draw")(e),r($e.previousPromises(e)))},300)})};$e.resize=function(e){e=cr.getGraphDiv(e);var r,t=new Promise(function(a,n){(!e||cr.isHidden(e))&&n(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(r=e._resolveResize),e._resolveResize=a,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||cr.isHidden(e)){a(e);return}delete e.layout.width,delete e.layout.height;var i=e.changed;e.autoplay=!0,Wr.call("relayout",e,{autosize:!0}).then(function(){e.changed=i,e._resolveResize===a&&(delete e._resolveResize,a(e))})},100)});return r&&r(t),t};$e.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};$e.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var r=e._fullLayout,t=cr.ensureSingle(r._paper,"text","js-plot-link-container",function(s){s.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:O6.defaultLine,"pointer-events":"all"}).each(function(){var u=I6.select(this);u.append("tspan").classed("js-link-to-tool",!0),u.append("tspan").classed("js-link-spacer",!0),u.append("tspan").classed("js-sourcelinks",!0)})}),a=t.node(),n={y:r._paper.attr("height")-9};document.body.contains(a)&&a.getComputedTextLength()>=r.width-20?(n["text-anchor"]="start",n.x=5):(n["text-anchor"]="end",n.x=r._paper.attr("width")-7),t.attr(n);var i=t.select(".js-link-to-tool"),l=t.select(".js-link-spacer"),o=t.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&eY(e,i),l.text(i.text()&&o.text()?" - ":"")}};function eY(e,r){r.text("");var t=r.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)t.on("click",function(){$e.sendDataToCloud(e)});else{var a=window.location.pathname.split("/"),n=window.location.search;t.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+a[2].split(".")[0]+"/"+a[1]+n})}}$e.sendDataToCloud=function(e){var r=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(r){e.emit("plotly_beforeexport");var t=I6.select(e).append("div").attr("id","hiddenform").style("display","none"),a=t.append("form").attr({action:r+"/external",method:"post",target:"_blank"}),n=a.append("input").attr({type:"text",name:"data"});return n.node().value=$e.graphJson(e,!1,"keepdata"),a.node().submit(),t.remove(),e.emit("plotly_afterexport"),!1}};var rY=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],tY=["year","month","dayMonth","dayMonthYear"];$e.supplyDefaults=function(e,r){var t=r&&r.skipUpdateCalc,a=e._fullLayout||{};if(a._skipDefaults){delete a._skipDefaults;return}var n=e._fullLayout={},i=e.layout||{},l=e._fullData||[],o=e._fullData=[],s=e.data||[],u=e.calcdata||[],f=e._context||{},v;e._transitionData||$e.createTransitionData(e),n._dfltTitle={plot:uo(e,"Click to enter Plot title"),subtitle:uo(e,"Click to enter Plot subtitle"),x:uo(e,"Click to enter X axis title"),y:uo(e,"Click to enter Y axis title"),colorbar:uo(e,"Click to enter Colorscale title"),annotation:uo(e,"new text")},n._traceWord=uo(e,"trace");var h=R6(e,rY);if(n._mapboxAccessToken=f.mapboxAccessToken,a._initialAutoSizeIsDone){var d=a.width,m=a.height;$e.supplyLayoutGlobalDefaults(i,n,h),i.width||(n.width=d),i.height||(n.height=m),$e.sanitizeMargins(n)}else{$e.supplyLayoutGlobalDefaults(i,n,h);var y=!i.width||!i.height,g=n.autosize,_=f.autosizable,w=y&&(g||_);w?$e.plotAutoSize(e,i,n):y&&$e.sanitizeMargins(n),!g&&y&&(i.width=n.width,i.height=n.height)}n._d3locale=iY(h,n.separators),n._extraFormat=R6(e,tY),n._initialAutoSizeIsDone=!0,n._dataLength=s.length,n._modules=[],n._visibleModules=[],n._basePlotModules=[];var T=n._subplots=nY(),b=n._splomAxes={x:{},y:{}},M=n._splomSubplots={};n._splomGridDflt={},n._scatterStackOpts={},n._firstScatter={},n._alignmentOpts={},n._colorAxes={},n._requestRangeslider={},n._traceUids=aY(l,s),$e.supplyDataDefaults(s,o,i,n);var C=Object.keys(b.x),k=Object.keys(b.y);if(C.length>1&&k.length>1){for(Wr.getComponentMethod("grid","sizeDefaults")(i,n),v=0;v15&&k.length>15&&n.shapes.length===0&&n.images.length===0,$e.linkSubplots(o,n,l,a),$e.cleanPlot(o,n,l,a);var F=!!(a._has&&a._has("cartesian")),I=!!(n._has&&n._has("cartesian")),H=F,J=I;H&&!J?a._bgLayer.remove():J&&!H&&(n._shouldCreateBgLayer=!0),a._zoomlayer&&!e._dragging&&KB({_fullLayout:a}),lY(o,n),P6(n,a),Wr.getComponentMethod("colorscale","crossTraceDefaults")(o,n),n._preGUI||(n._preGUI={}),n._tracePreGUI||(n._tracePreGUI={});var X=n._tracePreGUI,Y={},O;for(O in X)Y[O]="old";for(v=0;v0){var f=1-2*i;l=Math.round(f*l),o=Math.round(f*o)}}var v=$e.layoutAttributes.width.min,h=$e.layoutAttributes.height.min;l1,m=!t.height&&Math.abs(a.height-o)>1;(m||d)&&(d&&(a.width=l),m&&(a.height=o)),r._initialAutoSize||(r._initialAutoSize={width:l,height:o}),$e.sanitizeMargins(a)};$e.supplyLayoutModuleDefaults=function(e,r,t,a){var n=Wr.componentsRegistry,i=r._basePlotModules,l,o,s,u=Wr.subplotsRegistry.cartesian;for(l in n)s=n[l],s.includeBasePlot&&s.includeBasePlot(e,r);i.length||i.push(u),r._has("cartesian")&&(Wr.getComponentMethod("grid","contentDefaults")(e,r),u.finalizeSubplots(e,r));for(var f in r._subplots)r._subplots[f].sort(cr.subplotSort);for(o=0;o1&&(t.l/=g,t.r/=g)}if(h){var _=(t.t+t.b)/h;_>1&&(t.t/=_,t.b/=_)}var w=t.xl!==void 0?t.xl:t.x,T=t.xr!==void 0?t.xr:t.x,b=t.yt!==void 0?t.yt:t.y,M=t.yb!==void 0?t.yb:t.y;d[r]={l:{val:w,size:t.l+y},r:{val:T,size:t.r+y},b:{val:M,size:t.b+y},t:{val:b,size:t.t+y}},m[r]=1}if(!a._replotting)return $e.doAutoMargin(e)}};function sY(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var r=Ka.list(e,"",!0);for(var t in r)if(r[t].autoshift||r[t].shift)return!0;return!1}$e.doAutoMargin=function(e){var r=e._fullLayout,t=r.width,a=r.height;r._size||(r._size={}),B6(r);var n=r._size,i=r.margin,l={t:0,b:0,l:0,r:0},o=cr.extendFlat({},n),s=i.l,u=i.r,f=i.t,v=i.b,h=r._pushmargin,d=r._pushmarginIds,m=r.minreducedwidth,y=r.minreducedheight;if(i.autoexpand!==!1){for(var g in h)d[g]||delete h[g];var _=e._fullLayout._reservedMargin;for(var w in _)for(var T in _[w]){var b=_[w][T];l[T]=Math.max(l[T],b)}h.base={l:{val:0,size:s},r:{val:1,size:u},t:{val:1,size:f},b:{val:0,size:v}};for(var M in l){var C=0;for(var k in h)k!=="base"&&of(h[k][M].size)&&(C=h[k][M].size>C?h[k][M].size:C);var q=Math.max(0,i[M]-C);l[M]=Math.max(0,l[M]-q)}for(var D in h){var R=h[D].l||{},z=h[D].b||{},F=R.val,I=R.size,H=z.val,J=z.size,X=t-l.r-l.l,Y=a-l.t-l.b;for(var O in h){if(of(I)&&h[O].r){var V=h[O].r.val,Q=h[O].r.size;if(V>F){var K=(I*V+(Q-X)*F)/(V-F),ne=(Q*(1-F)+(I-X)*(1-V))/(V-F);K+ne>s+u&&(s=K,u=ne)}}if(of(J)&&h[O].t){var me=h[O].t.val,de=h[O].t.size;if(me>H){var ke=(J*me+(de-Y)*H)/(me-H),re=(de*(1-H)+(J-Y)*(1-me))/(me-H);ke+re>v+f&&(v=ke,f=re)}}}}}var Ce=cr.constrain(t-i.l-i.r,Y6,m),ce=cr.constrain(a-i.t-i.b,U6,y),_e=Math.max(0,t-Ce),se=Math.max(0,a-ce);if(_e){var ge=(s+u)/_e;ge>1&&(s/=ge,u/=ge)}if(se){var B=(v+f)/se;B>1&&(v/=B,f/=B)}if(n.l=Math.round(s)+l.l,n.r=Math.round(u)+l.r,n.t=Math.round(f)+l.t,n.b=Math.round(v)+l.b,n.p=Math.round(i.pad),n.w=Math.round(t)-n.l-n.r,n.h=Math.round(a)-n.t-n.b,!r._replotting&&($e.didMarginChange(o,n)||sY(e))){"_redrawFromAutoMarginCount"in r?r._redrawFromAutoMarginCount++:r._redrawFromAutoMarginCount=1;var $=3*(1+Object.keys(d).length);if(r._redrawFromAutoMarginCount<$)return Wr.call("_doPlot",e);r._size=o,cr.warn("Too many auto-margin redraws.")}uY(e)};function uY(e){var r=Ka.list(e,"",!0);["_adjustTickLabelsOverflow","_hideCounterAxisInsideTickLabels"].forEach(function(t){for(var a=0;a1)return!0}return!1};$e.graphJson=function(e,r,t,a,n,i){(n&&r&&!e._fullData||n&&!r&&!e._fullLayout)&&$e.supplyDefaults(e);var l=n?e._fullData:e.data,o=n?e._fullLayout:e.layout,s=(e._transitionData||{})._frames;function u(h,d){if(typeof h=="function")return d?"_function_":null;if(cr.isPlainObject(h)){var m={},y;return Object.keys(h).sort().forEach(function(T){if(["_","["].indexOf(T.charAt(0))===-1){if(typeof h[T]=="function"){d&&(m[T]="_function");return}if(t==="keepdata"){if(T.substr(T.length-3)==="src")return}else if(t==="keepstream"){if(y=h[T+"src"],typeof y=="string"&&y.indexOf(":")>0&&!cr.isPlainObject(h.stream))return}else if(t!=="keepall"&&(y=h[T+"src"],typeof y=="string"&&y.indexOf(":")>0))return;m[T]=u(h[T],d)}}),m}var g=Array.isArray(h),_=cr.isTypedArray(h);if((g||_)&&h.dtype&&h.shape){var w=h.bdata;return u({dtype:h.dtype,shape:h.shape,bdata:cr.isArrayBuffer(w)?XB.encode(w):w},d)}return g?h.map(function(T){return u(T,d)}):_?cr.simpleMap(h,cr.identity):cr.isJSDate(h)?cr.ms2DateTimeLocal(+h):h}var f={data:(l||[]).map(function(h){var d=u(h);return r&&delete d.fit,d})};if(!r&&(f.layout=u(o),n)){var v=o._size;f.layout.computed={margin:{b:v.b,l:v.l,r:v.r,t:v.t}}}return s&&(f.frames=u(s)),i&&(f.config=u(e._context,!0)),a==="object"?f:JSON.stringify(f)};$e.modifyFrames=function(e,r){var t,a,n,i=e._transitionData._frames,l=e._transitionData._frameHash;for(t=0;t0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){a=!0}),t.redraw&&e._transitionData._interruptCallbacks.push(function(){return Wr.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var h=0,d=0;function m(){return h++,function(){d++,!a&&d===h&&o(v)}}t.runFn(m),setTimeout(m())})}function o(v){if(e._transitionData)return i(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(t.redraw)return Wr.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(v)}function s(){if(e._transitionData)return e._transitioning=!1,n(e._transitionData._interruptCallbacks)}var u=[$e.previousPromises,s,t.prepareFn,$e.rehover,$e.reselect,l],f=cr.syncOrAsync(u,e);return(!f||!f.then)&&(f=Promise.resolve()),f.then(function(){return e})}$e.doCalcdata=function(e,r){var t=Ka.list(e),a=e._fullData,n=e._fullLayout,i,l,o,s,u=new Array(a.length),f=(e.calcdata||[]).slice();for(e.calcdata=u,n._numBoxes=0,n._numViolins=0,n._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,n._piecolormap={},n._sunburstcolormap={},n._treemapcolormap={},n._iciclecolormap={},n._funnelareacolormap={},o=0;o=0;s--)if(M[s].enabled){i._indexToPoints=M[s]._indexToPoints;break}l&&l.calc&&(b=l.calc(e,i))}(!Array.isArray(b)||!b[0])&&(b=[{x:E6,y:E6}]),b[0].t||(b[0].t={}),b[0].trace=i,u[w]=b}}for(N6(t,a,n),o=0;o{"use strict";fo.xmlns="http://www.w3.org/2000/xmlns/";fo.svg="http://www.w3.org/2000/svg";fo.xlink="http://www.w3.org/1999/xlink";fo.svgAttrs={xmlns:fo.svg,"xmlns:xlink":fo.xlink}});var Pa=Z((koe,W6)=>{"use strict";W6.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var Ta=Z(Tn=>{"use strict";var It=Ir(),Bi=Ie(),vY=Bi.strTranslate,Op=co(),hY=Pa().LINE_SPACING,dY=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;Tn.convertToTspans=function(e,r,t){var a=e.text(),n=!e.attr("data-notex")&&r&&r._context.typesetMath&&typeof MathJax!="undefined"&&a.match(dY),i=It.select(e.node().parentNode);if(i.empty())return;var l=e.attr("class")?e.attr("class").split(" ")[0]:"text";l+="-math",i.selectAll("svg."+l).remove(),i.selectAll("g."+l+"-group").remove(),e.style("display",null).attr({"data-unformatted":a,"data-math":"N"});function o(){i.empty()||(l=e.attr("class")+"-math",i.select("svg."+l).remove()),e.text("").style("white-space","pre");var s=SY(e.node(),a);s&&e.style("pointer-events","all"),Tn.positionText(e),t&&t.call(e)}return n?(r&&r._promises||[]).push(new Promise(function(s){e.style("display","none");var u=parseInt(e.node().style.fontSize,10),f={fontSize:u};gY(n[2],f,function(v,h,d){i.selectAll("svg."+l).remove(),i.selectAll("g."+l+"-group").remove();var m=v&&v.select("svg");if(!m||!m.node()){o(),s();return}var y=i.append("g").classed(l+"-group",!0).attr({"pointer-events":"none","data-unformatted":a,"data-math":"Y"});y.node().appendChild(m.node()),h&&h.node()&&m.node().insertBefore(h.node().cloneNode(!0),m.node().firstChild);var g=d.width,_=d.height;m.attr({class:l,height:_,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var w=e.node().style.fill||"black",T=m.select("g");T.attr({fill:w,stroke:w});var b=T.node().getBoundingClientRect(),M=b.width,C=b.height;(M>g||C>_)&&(m.style("overflow","hidden"),b=m.node().getBoundingClientRect(),M=b.width,C=b.height);var k=+e.attr("x"),q=+e.attr("y"),D=u||e.node().getBoundingClientRect().height,R=-D/4;if(l[0]==="y")y.attr({transform:"rotate("+[-90,k,q]+")"+vY(-M/2,R-C/2)});else if(l[0]==="l")q=R-C/2;else if(l[0]==="a"&&l.indexOf("atitle")!==0)k=0,q=R;else{var z=e.attr("text-anchor");k=k-M*(z==="middle"?.5:z==="end"?1:0),q=q+R-C/2}m.attr({x:k,y:q}),t&&t.call(e,y),s(y)})})):o(),e};var pY=/(<|<|<)/g,mY=/(>|>|>)/g;function yY(e){return e.replace(pY,"\\lt ").replace(mY,"\\gt ")}var Z6=[["$","$"],["\\(","\\)"]];function gY(e,r,t){var a=parseInt((MathJax.version||"").split(".")[0]);if(a!==2&&a!==3){Bi.warn("No MathJax version:",MathJax.version);return}var n,i,l,o,s=function(){return i=Bi.extendDeepAll({},MathJax.Hub.config),l=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:Z6},displayAlign:"left"})},u=function(){i=Bi.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=Z6},f=function(){if(n=MathJax.Hub.config.menuSettings.renderer,n!=="SVG")return MathJax.Hub.setRenderer("SVG")},v=function(){n=MathJax.config.startup.output,n!=="svg"&&(MathJax.config.startup.output="svg")},h=function(){var w="math-output-"+Bi.randstr({},64);o=It.select("body").append("div").attr({id:w}).style({visibility:"hidden",position:"absolute","font-size":r.fontSize+"px"}).text(yY(e));var T=o.node();return a===2?MathJax.Hub.Typeset(T):MathJax.typeset([T])},d=function(){var w=o.select(a===2?".MathJax_SVG":".MathJax"),T=!w.empty()&&o.select("svg").node();if(!T)Bi.log("There was an error in the tex syntax.",e),t();else{var b=T.getBoundingClientRect(),M;a===2?M=It.select("body").select("#MathJax_SVG_glyphs"):M=w.select("defs"),t(w,M,b)}o.remove()},m=function(){if(n!=="SVG")return MathJax.Hub.setRenderer(n)},y=function(){n!=="svg"&&(MathJax.config.startup.output=n)},g=function(){return l!==void 0&&(MathJax.Hub.processSectionDelay=l),MathJax.Hub.Config(i)},_=function(){MathJax.config=i};a===2?MathJax.Hub.Queue(s,f,h,d,m,g):a===3&&(u(),v(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){h(),d(),y(),_()}))}var Q6={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},bY={sub:"0.3em",sup:"-0.6em"},xY={sub:"-0.21em",sup:"0.42em"},X6="\u200B",J6=["http:","https:","mailto:","",void 0,":"],$6=Tn.NEWLINES=/(\r\n?|\n)/g,Yp=/(<[^<>]*>)/,Up=/<(\/?)([^ >]*)(\s+(.*))?>/i,_Y=//i;Tn.BR_TAG_ALL=//gi;var j6=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,e7=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,r7=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,wY=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function vo(e,r){if(!e)return null;var t=e.match(r),a=t&&(t[3]||t[4]);return a&&r0(a)}var TY=/(^|;)\s*color:/;Tn.plainText=function(e,r){r=r||{};for(var t=r.len!==void 0&&r.len!==-1?r.len:1/0,a=r.allowedTags!==void 0?r.allowedTags:["br"],n="...",i=n.length,l=e.split(Yp),o=[],s="",u=0,f=0;fi?o.push(v.substr(0,y-i)+n):o.push(v.substr(0,y));break}s=""}}return o.join("")};var MY={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},AY=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function r0(e){return e.replace(AY,function(r,t){var a;return t.charAt(0)==="#"?a=kY(t.charAt(1)==="x"?parseInt(t.substr(2),16):parseInt(t.substr(1),10)):a=MY[t],a||r})}Tn.convertEntities=r0;function kY(e){if(!(e>1114111)){var r=String.fromCodePoint;if(r)return r(e);var t=String.fromCharCode;return e<=65535?t(e):t((e>>10)+55232,e%1024+56320)}}function SY(e,r){r=r.replace($6," ");var t=!1,a=[],n,i=-1;function l(){i++;var C=document.createElementNS(Op.svg,"tspan");It.select(C).attr({class:"line",dy:i*hY+"em"}),e.appendChild(C),n=C;var k=a;if(a=[{node:C}],k.length>1)for(var q=1;q.",r);return}var k=a.pop();C!==k.type&&Bi.log("Start tag <"+k.type+"> doesnt match end tag <"+C+">. Pretending it did match.",r),n=a[a.length-1].node}var f=_Y.test(r);f?l():(n=e,a=[{node:e}]);for(var v=r.split(Yp),h=0;h{"use strict";var CY=Ir(),a0=xn(),uf=Hr(),t0=Ie(),a7=Er(),LY=$l().isValid;function qY(e,r,t){var a=r?t0.nestedProperty(e,r).get()||{}:e,n=a[t||"color"];n&&n._inputArray&&(n=n._inputArray);var i=!1;if(t0.isArrayOrTypedArray(n)){for(var l=0;l=0;a--,n++){var i=e[a];t[n]=[1-i[0],i[1]]}return t}function u7(e,r){r=r||{};for(var t=e.domain,a=e.range,n=a.length,i=new Array(n),l=0;l{"use strict";var c7=sp(),EY=c7.FORMAT_LINK,PY=c7.DATE_FORMAT_LINK;function RY(e,r){return{valType:"string",dflt:"",editType:"none",description:(r?Vp:v7)("hover text",e)+["By default the values are formatted using "+(r?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function Vp(e,r){return["Sets the "+e+" formatting rule"+(r?"for `"+r+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+EY+"."].join(" ")}function v7(e,r){return Vp(e,r)+[" And for dates see: "+PY+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}h7.exports={axisHoverFormat:RY,descriptionOnlyNumbers:Vp,descriptionWithDates:v7}});var Xn=Z((Doe,q7)=>{"use strict";var d7=ma(),qs=hi(),L7=mi().dash,Wp=Gt().extendFlat,p7=ct().templatedArray,qoe=to().templateFormatStringDescription,m7=n0().descriptionWithDates,zY=Vt().ONEDAY,gi=ya(),NY=gi.HOUR_PATTERN,FY=gi.WEEKDAY_PATTERN,Gp={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},IY=Wp({},Gp,{values:Gp.values.slice().concat(["sync"])});function y7(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var g7={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},b7={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},x7={valType:"data_array",editType:"ticks"},_7={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function w7(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=5),r}function T7(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var M7={valType:"color",dflt:qs.defaultLine,editType:"ticks"},A7={valType:"color",dflt:qs.lightLine,editType:"ticks"};function k7(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var S7=Wp({},L7,{editType:"ticks"}),C7={valType:"boolean",editType:"ticks"};q7.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:qs.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:d7({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[gi.idRegex.x.toString(),gi.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[gi.idRegex.x.toString(),gi.idRegex.y.toString()],editType:"calc"},rangebreaks:p7("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[FY,NY,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:zY},editType:"calc"}),tickmode:IY,nticks:y7(),tick0:g7,dtick:b7,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:x7,ticktext:{valType:"data_array",editType:"ticks"},ticks:_7,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:w7(),tickwidth:T7(),tickcolor:M7,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:Wp({},L7,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:d7({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:m7("tick label")},tickformatstops:p7("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:m7("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:qs.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:C7,gridcolor:A7,gridwidth:k7(),griddash:S7,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:qs.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:qs.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",gi.idRegex.x.toString(),gi.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",gi.idRegex.x.toString(),gi.idRegex.y.toString()],editType:"plot"},minor:{tickmode:Gp,nticks:y7("minor"),tick0:g7,dtick:b7,tickvals:x7,ticks:_7,ticklen:w7("minor"),tickwidth:T7("minor"),tickcolor:M7,gridcolor:A7,gridwidth:k7("minor"),griddash:S7,showgrid:C7,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var i0=Z((Eoe,P7)=>{"use strict";var ht=Xn(),D7=ma(),E7=Gt().extendFlat,HY=pi().overrideAll;P7.exports=HY({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:ht.linecolor,outlinewidth:ht.linewidth,bordercolor:ht.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:ht.minor.tickmode,nticks:ht.nticks,tick0:ht.tick0,dtick:ht.dtick,tickvals:ht.tickvals,ticktext:ht.ticktext,ticks:E7({},ht.ticks,{dflt:""}),ticklabeloverflow:E7({},ht.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:ht.ticklen,tickwidth:ht.tickwidth,tickcolor:ht.tickcolor,ticklabelstep:ht.ticklabelstep,showticklabels:ht.showticklabels,labelalias:ht.labelalias,tickfont:D7({}),tickangle:ht.tickangle,tickformat:ht.tickformat,tickformatstops:ht.tickformatstops,tickprefix:ht.tickprefix,showtickprefix:ht.showtickprefix,ticksuffix:ht.ticksuffix,showticksuffix:ht.showticksuffix,separatethousands:ht.separatethousands,exponentformat:ht.exponentformat,minexponent:ht.minexponent,showexponent:ht.showexponent,title:{text:{valType:"string"},font:D7({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var ff=Z((Roe,z7)=>{"use strict";var OY=i0(),BY=vs().counter,YY=pp(),R7=$l().scales,Poe=YY(R7);function l0(e){return"`"+e+"`"}z7.exports=function(r,t){r=r||"",t=t||{};var a=t.cLetter||"c",n="onlyIfNumerical"in t?t.onlyIfNumerical:!!r,i="noScale"in t?t.noScale:r==="marker.line",l="showScaleDflt"in t?t.showScaleDflt:a==="z",o=typeof t.colorscaleDflt=="string"?R7[t.colorscaleDflt]:null,s=t.editTypeOverride||"",u=r?r+".":"",f,v;"colorAttr"in t?(f=t.colorAttr,v=t.colorAttr):(f={z:"z",c:"color"}[a],v="in "+l0(u+f));var h=n?" Has an effect only if "+v+" is set to a numerical array.":"",d=a+"auto",m=a+"min",y=a+"max",g=a+"mid",_=l0(u+d),w=l0(u+m),T=l0(u+y),b=w+" and "+T,M={};M[m]=M[y]=void 0;var C={};C[d]=!1;var k={};return f==="color"&&(k.color={valType:"color",arrayOk:!0,editType:s||"style"},t.anim&&(k.color.anim=!0)),k[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:M},k[m]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:C},k[y]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:C},k[g]={valType:"number",dflt:null,editType:"calc",impliedEdits:M},k.colorscale={valType:"colorscale",editType:"calc",dflt:o,impliedEdits:{autocolorscale:!1}},k.autocolorscale={valType:"boolean",dflt:t.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},k.reversescale={valType:"boolean",dflt:!1,editType:"plot"},i||(k.showscale={valType:"boolean",dflt:l,editType:"calc"},k.colorbar=OY),t.noColorAxis||(k.coloraxis={valType:"subplotid",regex:BY("coloraxis"),dflt:null,editType:"calc"}),k}});var Xp=Z((zoe,N7)=>{"use strict";var UY=Gt().extendFlat,VY=ff(),Zp=$l().scales;N7.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:Zp.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:Zp.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:Zp.RdBu,editType:"calc"}},coloraxis:UY({_isSubplotObj:!0,editType:"calc"},VY("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var Jp=Z((Noe,F7)=>{"use strict";var GY=Ie();F7.exports=function(r){return GY.isPlainObject(r.colorbar)}});var $p=Z(Qp=>{"use strict";var Kp=Hr(),I7=Ie(),H7=Vt(),WY=H7.ONEDAY,ZY=H7.ONEWEEK;Qp.dtick=function(e,r){var t=r==="log",a=r==="date",n=r==="category",i=a?WY:1;if(!e)return i;if(Kp(e))return e=Number(e),e<=0?i:n?Math.max(1,Math.round(e)):a?Math.max(.1,e):e;if(typeof e!="string"||!(a||t))return i;var l=e.charAt(0),o=e.substr(1);return o=Kp(o)?Number(o):0,o<=0||!(a&&l==="M"&&o===Math.round(o)||t&&l==="L"||t&&l==="D"&&(o===1||o===2))?i:e};Qp.tick0=function(e,r,t,a){if(r==="date")return I7.cleanDate(e,I7.dateTick0(t,a%ZY===0?1:0));if(!(a==="D1"||a==="D2"))return Kp(e)?Number(e):0}});var jp=Z((Ioe,B7)=>{"use strict";var O7=$p(),XY=Ie().isArrayOrTypedArray,JY=an().isTypedArraySpec,KY=an().decodeTypedArraySpec;B7.exports=function(r,t,a,n,i){i||(i={});var l=i.isMinor,o=l?r.minor||{}:r,s=l?t.minor:t,u=l?"minor.":"";function f(w){var T=o[w];return JY(T)&&(T=KY(T)),T!==void 0?T:(s._template||{})[w]}var v=f("tick0"),h=f("dtick"),d=f("tickvals"),m=XY(d)?"array":h?"linear":"auto",y=a(u+"tickmode",m);if(y==="auto"||y==="sync")a(u+"nticks");else if(y==="linear"){var g=s.dtick=O7.dtick(h,n);s.tick0=O7.tick0(v,n,t.calendar,g)}else if(n!=="multicategory"){var _=a(u+"tickvals");_===void 0?s.tickmode="auto":l||a("ticktext")}}});var rm=Z((Hoe,U7)=>{"use strict";var em=Ie(),Y7=Xn();U7.exports=function(r,t,a,n){var i=n.isMinor,l=i?r.minor||{}:r,o=i?t.minor:t,s=i?Y7.minor:Y7,u=i?"minor.":"",f=em.coerce2(l,o,s,"ticklen",i?(t.ticklen||5)*.6:void 0),v=em.coerce2(l,o,s,"tickwidth",i?t.tickwidth||1:void 0),h=em.coerce2(l,o,s,"tickcolor",(i?t.tickcolor:void 0)||o.color),d=a(u+"ticks",!i&&n.outerTicks||f||v||h?"outside":"");d||(delete o.ticklen,delete o.tickwidth,delete o.tickcolor)}});var tm=Z((Ooe,V7)=>{"use strict";V7.exports=function(r){var t=["showexponent","showtickprefix","showticksuffix"],a=t.filter(function(i){return r[i]!==void 0}),n=function(i){return r[i]===r[a[0]]};if(a.every(n)||a.length===1)return r[a[0]]}});var Jn=Z((Boe,G7)=>{"use strict";var o0=Ie(),QY=ct();G7.exports=function(r,t,a){var n=a.name,i=a.inclusionAttr||"visible",l=t[n],o=o0.isArrayOrTypedArray(r[n])?r[n]:[],s=t[n]=[],u=QY.arrayTemplater(t,n,i),f,v;for(f=0;f{"use strict";var am=Ie(),$Y=Er().contrast,W7=Xn(),jY=tm(),eU=Jn();Z7.exports=function(r,t,a,n,i){i||(i={});var l=a("labelalias");am.isPlainObject(l)||delete t.labelalias;var o=jY(r),s=a("showticklabels");if(s){i.noTicklabelshift||a("ticklabelshift"),i.noTicklabelstandoff||a("ticklabelstandoff");var u=i.font||{},f=t.color,v=t.ticklabelposition||"",h=v.indexOf("inside")!==-1?$Y(i.bgColor):f&&f!==W7.color.dflt?f:u.color;if(am.coerceFont(a,"tickfont",u,{overrideDflt:{color:h}}),!i.noTicklabelstep&&n!=="multicategory"&&n!=="log"&&a("ticklabelstep"),!i.noAng){var d=a("tickangle");!i.noAutotickangles&&d==="auto"&&a("autotickangles")}if(n!=="category"){var m=a("tickformat");eU(r,t,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:rU}),t.tickformatstops.length||delete t.tickformatstops,!i.noExp&&!m&&n!=="date"&&(a("showexponent",o),a("exponentformat"),a("minexponent"),a("separatethousands"))}!i.noMinorloglabels&&n==="log"&&a("minorloglabels")}};function rU(e,r){function t(n,i){return am.coerce(e,r,W7.tickformatstops,n,i)}var a=t("enabled");a&&(t("dtickrange"),t("value"))}});var im=Z((Uoe,X7)=>{"use strict";var tU=tm();X7.exports=function(r,t,a,n,i){i||(i={});var l=i.tickSuffixDflt,o=tU(r),s=a("tickprefix");s&&a("showtickprefix",o);var u=a("ticksuffix",l);u&&a("showticksuffix",o)}});var lm=Z((Voe,J7)=>{"use strict";var pl=Ie(),aU=ct(),nU=jp(),iU=rm(),lU=nm(),oU=im(),sU=i0();J7.exports=function(r,t,a){var n=aU.newContainer(t,"colorbar"),i=r.colorbar||{};function l(z,F){return pl.coerce(i,n,sU,z,F)}var o=a.margin||{t:0,b:0,l:0,r:0},s=a.width-o.l-o.r,u=a.height-o.t-o.b,f=l("orientation"),v=f==="v",h=l("thicknessmode");l("thickness",h==="fraction"?30/(v?s:u):30);var d=l("lenmode");l("len",d==="fraction"?1:v?u:s);var m=l("yref"),y=l("xref"),g=m==="paper",_=y==="paper",w,T,b,M="left";v?(b="middle",M=_?"left":"right",w=_?1.02:1,T=.5):(b=g?"bottom":"top",M="center",w=.5,T=g?1.02:1),pl.coerce(i,n,{x:{valType:"number",min:_?-2:0,max:_?3:1,dflt:w}},"x"),pl.coerce(i,n,{y:{valType:"number",min:g?-2:0,max:g?3:1,dflt:T}},"y"),l("xanchor",M),l("xpad"),l("yanchor",b),l("ypad"),pl.noneOrAll(i,n,["x","y"]),l("outlinecolor"),l("outlinewidth"),l("bordercolor"),l("borderwidth"),l("bgcolor");var C=pl.coerce(i,n,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:v?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");l("ticklabeloverflow",C.indexOf("inside")!==-1?"hide past domain":"hide past div"),nU(i,n,l,"linear");var k=a.font,q={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:k};C.indexOf("inside")!==-1&&(q.bgColor="black"),oU(i,n,l,"linear",q),lU(i,n,l,"linear",q),iU(i,n,l,"linear",q),l("title.text",a._dfltTitle.colorbar);var D=n.showticklabels?n.tickfont:k,R=pl.extendFlat({},k,{family:D.family,size:pl.bigFont(D.size)});pl.coerceFont(l,"title.font",R),l("title.side",v?"top":"right")}});var Ds=Z((Goe,$7)=>{"use strict";var K7=Hr(),sm=Ie(),uU=Jp(),fU=lm(),Q7=$l().isValid,cU=br().traceIs;function om(e,r){var t=r.slice(0,r.length-1);return r?sm.nestedProperty(e,t).get()||{}:e}$7.exports=function e(r,t,a,n,i){var l=i.prefix,o=i.cLetter,s="_module"in t,u=om(r,l),f=om(t,l),v=om(t._template||{},l)||{},h=function(){return delete r.coloraxis,delete t.coloraxis,e(r,t,a,n,i)};if(s){var d=a._colorAxes||{},m=n(l+"coloraxis");if(m){var y=cU(t,"contour")&&sm.nestedProperty(t,"contours.coloring").get()||"heatmap",g=d[m];g?(g[2].push(h),g[0]!==y&&(g[0]=!1,sm.warn(["Ignoring coloraxis:",m,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[m]=[y,t,[h]];return}}var _=u[o+"min"],w=u[o+"max"],T=K7(_)&&K7(w)&&_{"use strict";var j7=Ie(),vU=ct(),e9=Xp(),hU=Ds();r9.exports=function(r,t){function a(v,h){return j7.coerce(r,t,e9,v,h)}a("colorscale.sequential"),a("colorscale.sequentialminus"),a("colorscale.diverging");var n=t._colorAxes,i,l;function o(v,h){return j7.coerce(i,l,e9.coloraxis,v,h)}for(var s in n){var u=n[s];if(u[0])i=r[s]||{},l=vU.newContainer(t,s,"coloraxis"),l._name=s,hU(i,l,t,o,{prefix:"",cLetter:"c"});else{for(var f=0;f{"use strict";var dU=Ie(),pU=Mn().hasColorscale,mU=Mn().extractOpts;a9.exports=function(r,t){function a(f,v){var h=f["_"+v];h!==void 0&&(f[v]=h)}function n(f,v){var h=v.container?dU.nestedProperty(f,v.container).get():f;if(h)if(h.coloraxis)h._colorAx=t[h.coloraxis];else{var d=mU(h),m=d.auto;(m||d.min===void 0)&&a(h,v.min),(m||d.max===void 0)&&a(h,v.max),d.autocolorscale&&a(h,"colorscale")}}for(var i=0;i{"use strict";var i9=Hr(),um=Ie(),yU=Mn().extractOpts;l9.exports=function(r,t,a){var n=r._fullLayout,i=a.vals,l=a.containerStr,o=l?um.nestedProperty(t,l).get():t,s=yU(o),u=s.auto!==!1,f=s.min,v=s.max,h=s.mid,d=function(){return um.aggNums(Math.min,null,i)},m=function(){return um.aggNums(Math.max,null,i)};if(f===void 0?f=d():u&&(o._colorAx&&i9(f)?f=Math.min(f,d()):f=d()),v===void 0?v=m():u&&(o._colorAx&&i9(v)?v=Math.max(v,m()):v=m()),u&&h!==void 0&&(v-h>h-f?f=h-(v-h):v-h=0?y=n.colorscale.sequential:y=n.colorscale.sequentialminus,s._sync("colorscale",y)}}});var fm=Z((Joe,o9)=>{"use strict";var u0=$l(),Es=Mn();o9.exports={moduleType:"component",name:"colorscale",attributes:ff(),layoutAttributes:Xp(),supplyLayoutDefaults:t9(),handleDefaults:Ds(),crossTraceDefaults:n9(),calc:s0(),scales:u0.scales,defaultScale:u0.defaultScale,getScale:u0.get,isValidScale:u0.isValid,hasColorscale:Es.hasColorscale,extractOpts:Es.extractOpts,extractScale:Es.extractScale,flipScale:Es.flipScale,makeColorScaleFunc:Es.makeColorScaleFunc,makeColorScaleFuncFromTrace:Es.makeColorScaleFuncFromTrace}});var ln=Z((Koe,u9)=>{"use strict";var s9=Ie(),gU=an().isTypedArraySpec;u9.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var r=e.marker;return s9.isPlainObject(r)&&(s9.isArrayOrTypedArray(r.size)||gU(r.size))}}});var c9=Z((Qoe,f9)=>{"use strict";var bU=Hr();f9.exports=function(r,t){t||(t=2);var a=r.marker,n=a.sizeref||1,i=a.sizemin||0,l=a.sizemode==="area"?function(o){return Math.sqrt(o/n)}:function(o){return o/n};return function(o){var s=l(o/t);return bU(s)&&s>0?Math.max(s,i):0}}});var bi=Z(Ma=>{"use strict";var f0=Ie();Ma.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};Ma.isTraceInSubplots=function(e,r){if(e.type==="splom"){for(var t=e.xaxes||[],a=e.yaxes||[],n=0;n=0&&t.index{d9.exports=MU;var cm={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},TU=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function MU(e){var r=[];return e.replace(TU,function(t,a,n){var i=a.toLowerCase();for(n=kU(n),i=="m"&&n.length>2&&(r.push([a].concat(n.splice(0,2))),i="l",a=a=="m"?"l":"L");;){if(n.length==cm[i])return n.unshift(a),r.push(n);if(n.length{"use strict";var SU=vm(),Xe=function(e,r){return r?Math.round(e*(r=Math.pow(10,r)))/r:Math.round(e)},Ar="M0,0Z",p9=Math.sqrt(2),ml=Math.sqrt(3),hm=Math.PI,dm=Math.cos,pm=Math.sin;x9.exports={circle:{n:0,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n="M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z";return t?Sr(r,t,n):n}},square:{n:1,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")}},diamond:{n:2,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.3,2);return Sr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"Z")}},cross:{n:3,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.4,2),n=Xe(e*1.2,2);return Sr(r,t,"M"+n+","+a+"H"+a+"V"+n+"H-"+a+"V"+a+"H-"+n+"V-"+a+"H-"+a+"V-"+n+"H"+a+"V-"+a+"H"+n+"Z")}},x:{n:4,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.8/p9,2),n="l"+a+","+a,i="l"+a+",-"+a,l="l-"+a+",-"+a,o="l-"+a+","+a;return Sr(r,t,"M0,"+a+n+i+l+i+l+o+l+o+n+o+n+"Z")}},"triangle-up":{n:5,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2/ml,2),n=Xe(e/2,2),i=Xe(e,2);return Sr(r,t,"M-"+a+","+n+"H"+a+"L0,-"+i+"Z")}},"triangle-down":{n:6,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2/ml,2),n=Xe(e/2,2),i=Xe(e,2);return Sr(r,t,"M-"+a+",-"+n+"H"+a+"L0,"+i+"Z")}},"triangle-left":{n:7,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2/ml,2),n=Xe(e/2,2),i=Xe(e,2);return Sr(r,t,"M"+n+",-"+a+"V"+a+"L-"+i+",0Z")}},"triangle-right":{n:8,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2/ml,2),n=Xe(e/2,2),i=Xe(e,2);return Sr(r,t,"M-"+n+",-"+a+"V"+a+"L"+i+",0Z")}},"triangle-ne":{n:9,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.6,2),n=Xe(e*1.2,2);return Sr(r,t,"M-"+n+",-"+a+"H"+a+"V"+n+"Z")}},"triangle-se":{n:10,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.6,2),n=Xe(e*1.2,2);return Sr(r,t,"M"+a+",-"+n+"V"+a+"H-"+n+"Z")}},"triangle-sw":{n:11,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.6,2),n=Xe(e*1.2,2);return Sr(r,t,"M"+n+","+a+"H-"+a+"V-"+n+"Z")}},"triangle-nw":{n:12,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.6,2),n=Xe(e*1.2,2);return Sr(r,t,"M-"+a+","+n+"V-"+a+"H"+n+"Z")}},pentagon:{n:13,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.951,2),n=Xe(e*.588,2),i=Xe(-e,2),l=Xe(e*-.309,2),o=Xe(e*.809,2);return Sr(r,t,"M"+a+","+l+"L"+n+","+o+"H-"+n+"L-"+a+","+l+"L0,"+i+"Z")}},hexagon:{n:14,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n=Xe(e/2,2),i=Xe(e*ml/2,2);return Sr(r,t,"M"+i+",-"+n+"V"+n+"L0,"+a+"L-"+i+","+n+"V-"+n+"L0,-"+a+"Z")}},hexagon2:{n:15,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n=Xe(e/2,2),i=Xe(e*ml/2,2);return Sr(r,t,"M-"+n+","+i+"H"+n+"L"+a+",0L"+n+",-"+i+"H-"+n+"L-"+a+",0Z")}},octagon:{n:16,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.924,2),n=Xe(e*.383,2);return Sr(r,t,"M-"+n+",-"+a+"H"+n+"L"+a+",-"+n+"V"+n+"L"+n+","+a+"H-"+n+"L-"+a+","+n+"V-"+n+"Z")}},star:{n:17,f:function(e,r,t){if(kr(r))return Ar;var a=e*1.4,n=Xe(a*.225,2),i=Xe(a*.951,2),l=Xe(a*.363,2),o=Xe(a*.588,2),s=Xe(-a,2),u=Xe(a*-.309,2),f=Xe(a*.118,2),v=Xe(a*.809,2),h=Xe(a*.382,2);return Sr(r,t,"M"+n+","+u+"H"+i+"L"+l+","+f+"L"+o+","+v+"L0,"+h+"L-"+o+","+v+"L-"+l+","+f+"L-"+i+","+u+"H-"+n+"L0,"+s+"Z")}},hexagram:{n:18,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.66,2),n=Xe(e*.38,2),i=Xe(e*.76,2);return Sr(r,t,"M-"+i+",0l-"+n+",-"+a+"h"+i+"l"+n+",-"+a+"l"+n+","+a+"h"+i+"l-"+n+","+a+"l"+n+","+a+"h-"+i+"l-"+n+","+a+"l-"+n+",-"+a+"h-"+i+"Z")}},"star-triangle-up":{n:19,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*ml*.8,2),n=Xe(e*.8,2),i=Xe(e*1.6,2),l=Xe(e*4,2),o="A "+l+","+l+" 0 0 1 ";return Sr(r,t,"M-"+a+","+n+o+a+","+n+o+"0,-"+i+o+"-"+a+","+n+"Z")}},"star-triangle-down":{n:20,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*ml*.8,2),n=Xe(e*.8,2),i=Xe(e*1.6,2),l=Xe(e*4,2),o="A "+l+","+l+" 0 0 1 ";return Sr(r,t,"M"+a+",-"+n+o+"-"+a+",-"+n+o+"0,"+i+o+a+",-"+n+"Z")}},"star-square":{n:21,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.1,2),n=Xe(e*2,2),i="A "+n+","+n+" 0 0 1 ";return Sr(r,t,"M-"+a+",-"+a+i+"-"+a+","+a+i+a+","+a+i+a+",-"+a+i+"-"+a+",-"+a+"Z")}},"star-diamond":{n:22,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.4,2),n=Xe(e*1.9,2),i="A "+n+","+n+" 0 0 1 ";return Sr(r,t,"M-"+a+",0"+i+"0,"+a+i+a+",0"+i+"0,-"+a+i+"-"+a+",0Z")}},"diamond-tall":{n:23,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.7,2),n=Xe(e*1.4,2);return Sr(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},"diamond-wide":{n:24,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.4,2),n=Xe(e*.7,2);return Sr(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},hourglass:{n:25,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M"+a+","+a+"H-"+a+"L"+a+",-"+a+"H-"+a+"Z")},noDot:!0},bowtie:{n:26,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M"+a+","+a+"V-"+a+"L-"+a+","+a+"V-"+a+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n=Xe(e/p9,2);return Sr(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.3,2);return Sr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM0,-"+a+"V"+a+"M-"+a+",0H"+a)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.3,2),n=Xe(e*.65,2);return Sr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM-"+n+",-"+n+"L"+n+","+n+"M-"+n+","+n+"L"+n+",-"+n)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.4,2);return Sr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.2,2),n=Xe(e*.85,2);return Sr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e/2,2),n=Xe(e,2);return Sr(r,t,"M"+a+","+n+"V-"+n+"M"+(a-n)+",-"+n+"V"+n+"M"+n+","+a+"H-"+n+"M-"+n+","+(a-n)+"H"+n)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.2,2),n=Xe(e*1.6,2),i=Xe(e*.8,2);return Sr(r,t,"M-"+a+","+i+"L0,0M"+a+","+i+"L0,0M0,-"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.2,2),n=Xe(e*1.6,2),i=Xe(e*.8,2);return Sr(r,t,"M-"+a+",-"+i+"L0,0M"+a+",-"+i+"L0,0M0,"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.2,2),n=Xe(e*1.6,2),i=Xe(e*.8,2);return Sr(r,t,"M"+i+","+a+"L0,0M"+i+",-"+a+"L0,0M-"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.2,2),n=Xe(e*1.6,2),i=Xe(e*.8,2);return Sr(r,t,"M-"+i+","+a+"L0,0M-"+i+",-"+a+"L0,0M"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.4,2);return Sr(r,t,"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.4,2);return Sr(r,t,"M0,"+a+"V-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M"+a+","+a+"L-"+a+",-"+a)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n=Xe(e*2,2);return Sr(r,t,"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n=Xe(e*2,2);return Sr(r,t,"M0,0L-"+a+",-"+n+"H"+a+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2,2),n=Xe(e,2);return Sr(r,t,"M0,0L"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2,2),n=Xe(e,2);return Sr(r,t,"M0,0L-"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n=Xe(e*2,2);return Sr(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n=Xe(e*2,2);return Sr(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+",-"+n+"H"+a+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2,2),n=Xe(e,2);return Sr(r,t,"M0,-"+n+"V"+n+"M0,0L"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2,2),n=Xe(e,2);return Sr(r,t,"M0,-"+n+"V"+n+"M0,0L-"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,r,t){if(kr(r))return Ar;var a=hm/2.5,n=2*e*dm(a),i=2*e*pm(a);return Sr(r,t,"M0,0L"+-n+","+i+"L"+n+","+i+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,r,t){if(kr(r))return Ar;var a=hm/4,n=2*e*dm(a),i=2*e*pm(a);return Sr(r,t,"M0,0L"+-n+","+i+"A "+2*e+","+2*e+" 0 0 1 "+n+","+i+"Z")},backoff:.4,noDot:!0}};function kr(e){return e===null}var m9,y9,g9,b9;function Sr(e,r,t){if((!e||e%360===0)&&!r)return t;if(g9===e&&b9===r&&m9===t)return y9;g9=e,b9=r,m9=t;function a(g,_){var w=dm(g),T=pm(g),b=_[0],M=_[1]+(r||0);return[b*w-M*T,b*T+M*w]}for(var n=e/180*hm,i=0,l=0,o=SU(t),s="",u=0;u{"use strict";var jt=Ir(),tt=Ie(),CU=tt.numberFormat,yo=Hr(),_m=xn(),v0=br(),ga=Er(),LU=fm(),vf=tt.strTranslate,h0=Ta(),qU=co(),DU=Pa(),EU=DU.LINE_SPACING,D9=Tv().DESELECTDIM,PU=ln(),RU=c9(),zU=bi().appendArrayPointValue,er=B9.exports={};er.font=function(e,r){var t=r.variant,a=r.style,n=r.weight,i=r.color,l=r.size,o=r.family,s=r.shadow,u=r.lineposition,f=r.textcase;o&&e.style("font-family",o),l+1&&e.style("font-size",l+"px"),i&&e.call(ga.fill,i),n&&e.style("font-weight",n),a&&e.style("font-style",a),t&&e.style("font-variant",t),f&&e.style("text-transform",mm(FU(f))),s&&e.style("text-shadow",s==="auto"?h0.makeTextShadow(ga.contrast(i)):mm(s)),u&&e.style("text-decoration-line",mm(IU(u)))};function mm(e){return e==="none"?void 0:e}var NU={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function FU(e){return NU[e]}function IU(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}er.setPosition=function(e,r,t){e.attr("x",r).attr("y",t)};er.setSize=function(e,r,t){e.attr("width",r).attr("height",t)};er.setRect=function(e,r,t,a,n){e.call(er.setPosition,r,t).call(er.setSize,a,n)};er.translatePoint=function(e,r,t,a){var n=t.c2p(e.x),i=a.c2p(e.y);if(yo(n)&&yo(i)&&r.node())r.node().nodeName==="text"?r.attr("x",n).attr("y",i):r.attr("transform",vf(n,i));else return!1;return!0};er.translatePoints=function(e,r,t){e.each(function(a){var n=jt.select(this);er.translatePoint(a,n,r,t)})};er.hideOutsideRangePoint=function(e,r,t,a,n,i){r.attr("display",t.isPtWithinRange(e,n)&&a.isPtWithinRange(e,i)?null:"none")};er.hideOutsideRangePoints=function(e,r){if(r._hasClipOnAxisFalse){var t=r.xaxis,a=r.yaxis;e.each(function(n){var i=n[0].trace,l=i.xcalendar,o=i.ycalendar,s=v0.traceIs(i,"bar-like")?".bartext":".point,.textpoint";e.selectAll(s).each(function(u){er.hideOutsideRangePoint(u,jt.select(this),t,a,l,o)})})}};er.crispRound=function(e,r,t){return!r||!yo(r)?t||0:e._context.staticPlot?r:r<1?1:Math.round(r)};er.singleLineStyle=function(e,r,t,a,n){r.style("fill","none");var i=(((e||[])[0]||{}).trace||{}).line||{},l=t||i.width||0,o=n||i.dash||"";ga.stroke(r,a||i.color),er.dashLine(r,o,l)};er.lineGroupStyle=function(e,r,t,a){e.style("fill","none").each(function(n){var i=(((n||[])[0]||{}).trace||{}).line||{},l=r||i.width||0,o=a||i.dash||"";jt.select(this).call(ga.stroke,t||i.color).call(er.dashLine,o,l)})};er.dashLine=function(e,r,t){t=+t||0,r=er.dashStyle(r,t),e.style({"stroke-dasharray":r,"stroke-width":t+"px"})};er.dashStyle=function(e,r){r=+r||1;var t=Math.max(r,3);return e==="solid"?e="":e==="dot"?e=t+"px,"+t+"px":e==="dash"?e=3*t+"px,"+3*t+"px":e==="longdash"?e=5*t+"px,"+5*t+"px":e==="dashdot"?e=3*t+"px,"+t+"px,"+t+"px,"+t+"px":e==="longdashdot"&&(e=5*t+"px,"+2*t+"px,"+t+"px,"+2*t+"px"),e};function E9(e,r,t,a){var n=r.fillpattern,i=r.fillgradient,l=er.getPatternAttr,o=n&&(l(n.shape,0,"")||l(n.path,0,""));if(o){var s=l(n.bgcolor,0,null),u=l(n.fgcolor,0,null),f=n.fgopacity,v=l(n.size,0,8),h=l(n.solidity,0,.3),d=r.uid;er.pattern(e,"point",t,d,o,v,h,void 0,n.fillmode,s,u,f)}else if(i&&i.type!=="none"){var m=i.type,y="scatterfill-"+r.uid;if(a&&(y="legendfill-"+r.uid),!a&&(i.start!==void 0||i.stop!==void 0)){var g,_;m==="horizontal"?(g={x:i.start,y:0},_={x:i.stop,y:0}):m==="vertical"&&(g={x:0,y:i.start},_={x:0,y:i.stop}),g.x=r._xA.c2p(g.x===void 0?r._extremes.x.min[0].val:g.x,!0),g.y=r._yA.c2p(g.y===void 0?r._extremes.y.min[0].val:g.y,!0),_.x=r._xA.c2p(_.x===void 0?r._extremes.x.max[0].val:_.x,!0),_.y=r._yA.c2p(_.y===void 0?r._extremes.y.max[0].val:_.y,!0),e.call(z9,t,y,"linear",i.colorscale,"fill",g,_,!0,!1)}else m==="horizontal"&&(m=m+"reversed"),e.call(er.gradient,t,y,m,i.colorscale,"fill")}else r.fillcolor&&e.call(ga.fill,r.fillcolor)}er.singleFillStyle=function(e,r){var t=jt.select(e.node()),a=t.data(),n=((a[0]||[])[0]||{}).trace||{};E9(e,n,r,!1)};er.fillGroupStyle=function(e,r,t){e.style("stroke-width",0).each(function(a){var n=jt.select(this);a[0].trace&&E9(n,a[0].trace,r,t)})};var w9=_9();er.symbolNames=[];er.symbolFuncs=[];er.symbolBackOffs=[];er.symbolNeedLines={};er.symbolNoDot={};er.symbolNoFill={};er.symbolList=[];Object.keys(w9).forEach(function(e){var r=w9[e],t=r.n;er.symbolList.push(t,String(t),e,t+100,String(t+100),e+"-open"),er.symbolNames[t]=e,er.symbolFuncs[t]=r.f,er.symbolBackOffs[t]=r.backoff||0,r.needLine&&(er.symbolNeedLines[t]=!0),r.noDot?er.symbolNoDot[t]=!0:er.symbolList.push(t+200,String(t+200),e+"-dot",t+300,String(t+300),e+"-open-dot"),r.noFill&&(er.symbolNoFill[t]=!0)});var HU=er.symbolNames.length,OU="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";er.symbolNumber=function(e){if(yo(e))e=+e;else if(typeof e=="string"){var r=0;e.indexOf("-open")>0&&(r=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(r+=200,e=e.replace("-dot","")),e=er.symbolNames.indexOf(e),e>=0&&(e+=r)}return e%100>=HU||e>=400?0:Math.floor(Math.max(e,0))};function P9(e,r,t,a){var n=e%100;return er.symbolFuncs[n](r,t,a)+(e>=200?OU:"")}var T9=CU("~f"),R9={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};er.gradient=function(e,r,t,a,n,i){var l=R9[a];return z9(e,r,t,l.type,n,i,l.start,l.stop,!1,l.reversed)};function z9(e,r,t,a,n,i,l,o,s,u){var f=n.length,v;a==="linear"?v={node:"linearGradient",attrs:{x1:l.x,y1:l.y,x2:o.x,y2:o.y,gradientUnits:s?"userSpaceOnUse":"objectBoundingBox"},reversed:u}:a==="radial"&&(v={node:"radialGradient",reversed:u});for(var h=new Array(f),d=0;d=0&&e.i===void 0&&(e.i=i.i),r.style("opacity",a.selectedOpacityFn?a.selectedOpacityFn(e):e.mo===void 0?l.opacity:e.mo),a.ms2mrc){var s;e.ms==="various"||l.size==="various"?s=3:s=a.ms2mrc(e.ms),e.mrc=s,a.selectedSizeFn&&(s=e.mrc=a.selectedSizeFn(e));var u=er.symbolNumber(e.mx||l.symbol)||0;e.om=u%200>=100;var f=Mm(e,t),v=Tm(e,t);r.attr("d",P9(u,s,f,v))}var h=!1,d,m,y;if(e.so)y=o.outlierwidth,m=o.outliercolor,d=l.outliercolor;else{var g=(o||{}).width;y=(e.mlw+1||g+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?m=e.mlcc=a.lineScale(e.mlc):tt.isArrayOrTypedArray(o.color)?m=ga.defaultLine:m=o.color,tt.isArrayOrTypedArray(l.color)&&(d=ga.defaultLine,h=!0),"mc"in e?d=e.mcc=a.markerScale(e.mc):d=l.color||l.colors||"rgba(0,0,0,0)",a.selectedColorFn&&(d=a.selectedColorFn(e))}if(e.om)r.call(ga.stroke,d).style({"stroke-width":(y||1)+"px",fill:"none"});else{r.style("stroke-width",(e.isBlank?0:y)+"px");var _=l.gradient,w=e.mgt;w?h=!0:w=_&&_.type,tt.isArrayOrTypedArray(w)&&(w=w[0],R9[w]||(w=0));var T=l.pattern,b=er.getPatternAttr,M=T&&(b(T.shape,e.i,"")||b(T.path,e.i,""));if(w&&w!=="none"){var C=e.mgc;C?h=!0:C=_.color;var k=t.uid;h&&(k+="-"+e.i),er.gradient(r,n,k,w,[[0,C],[1,d]],"fill")}else if(M){var q=!1,D=T.fgcolor;!D&&i&&i.color&&(D=i.color,q=!0);var R=b(D,e.i,i&&i.color||null),z=b(T.bgcolor,e.i,null),F=T.fgopacity,I=b(T.size,e.i,8),H=b(T.solidity,e.i,.3);q=q||e.mcc||tt.isArrayOrTypedArray(T.shape)||tt.isArrayOrTypedArray(T.path)||tt.isArrayOrTypedArray(T.bgcolor)||tt.isArrayOrTypedArray(T.fgcolor)||tt.isArrayOrTypedArray(T.size)||tt.isArrayOrTypedArray(T.solidity);var J=t.uid;q&&(J+="-"+e.i),er.pattern(r,"point",n,J,M,I,H,e.mcc,T.fillmode,z,R,F)}else tt.isArrayOrTypedArray(d)?ga.fill(r,d[e.i]):ga.fill(r,d);y&&ga.stroke(r,m)}};er.makePointStyleFns=function(e){var r={},t=e.marker;return r.markerScale=er.tryColorscale(t,""),r.lineScale=er.tryColorscale(t,"line"),v0.traceIs(e,"symbols")&&(r.ms2mrc=PU.isBubble(e)?RU(e):function(){return(t.size||6)/2}),e.selectedpoints&&tt.extendFlat(r,er.makeSelectedPointStyleFns(e)),r};er.makeSelectedPointStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.marker||{},i=t.marker||{},l=a.marker||{},o=n.opacity,s=i.opacity,u=l.opacity,f=s!==void 0,v=u!==void 0;(tt.isArrayOrTypedArray(o)||f||v)&&(r.selectedOpacityFn=function(b){var M=b.mo===void 0?n.opacity:b.mo;return b.selected?f?s:M:v?u:D9*M});var h=n.color,d=i.color,m=l.color;(d||m)&&(r.selectedColorFn=function(b){var M=b.mcc||h;return b.selected?d||M:m||M});var y=n.size,g=i.size,_=l.size,w=g!==void 0,T=_!==void 0;return v0.traceIs(e,"symbols")&&(w||T)&&(r.selectedSizeFn=function(b){var M=b.mrc||y/2;return b.selected?w?g/2:M:T?_/2:M}),r};er.makeSelectedTextStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.textfont||{},i=t.textfont||{},l=a.textfont||{},o=n.color,s=i.color,u=l.color;return r.selectedTextColorFn=function(f){var v=f.tc||o;return f.selected?s||v:u||(s?v:ga.addOpacity(v,D9))},r};er.selectedPointStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=er.makeSelectedPointStyleFns(r),a=r.marker||{},n=[];t.selectedOpacityFn&&n.push(function(i,l){i.style("opacity",t.selectedOpacityFn(l))}),t.selectedColorFn&&n.push(function(i,l){ga.fill(i,t.selectedColorFn(l))}),t.selectedSizeFn&&n.push(function(i,l){var o=l.mx||a.symbol||0,s=t.selectedSizeFn(l);i.attr("d",P9(er.symbolNumber(o),s,Mm(l,r),Tm(l,r))),l.mrc2=s}),n.length&&e.each(function(i){for(var l=jt.select(this),o=0;o0?t:0}er.textPointStyle=function(e,r,t){if(e.size()){var a;if(r.selectedpoints){var n=er.makeSelectedTextStyleFns(r);a=n.selectedTextColorFn}var i=r.texttemplate,l=t._fullLayout;e.each(function(o){var s=jt.select(this),u=i?tt.extractOption(o,r,"txt","texttemplate"):tt.extractOption(o,r,"tx","text");if(!u&&u!==0){s.remove();return}if(i){var f=r._module.formatLabels,v=f?f(o,r,l):{},h={};zU(h,r,o.i),u=tt.texttemplateString({data:[h,o,r._meta],fallback:r.texttemplatefallback,labels:v,locale:l._d3locale,template:u})}var d=o.tp||r.textposition,m=F9(o,r),y=a?a(o):o.tc||r.textfont.color;s.call(er.font,{family:o.tf||r.textfont.family,weight:o.tw||r.textfont.weight,style:o.ty||r.textfont.style,variant:o.tv||r.textfont.variant,textcase:o.tC||r.textfont.textcase,lineposition:o.tE||r.textfont.lineposition,shadow:o.tS||r.textfont.shadow,size:m,color:y}).text(u).call(h0.convertToTspans,t).call(N9,d,m,o.mrc)})}};er.selectedTextStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=er.makeSelectedTextStyleFns(r);e.each(function(a){var n=jt.select(this),i=t.selectedTextColorFn(a),l=a.tp||r.textposition,o=F9(a,r);ga.fill(n,i);var s=v0.traceIs(r,"bar-like");N9(n,l,o,a.mrc2||a.mrc,s)})}};var M9=.5;er.smoothopen=function(e,r){if(e.length<3)return"M"+e.join("L");var t="M"+e[0],a=[],n;for(n=1;n=s||b>=f&&b<=s)&&(M<=v&&M>=u||M>=v&&M<=u)&&(e=[b,M])}return e}er.applyBackoff=O9;er.makeTester=function(){var e=tt.ensureSingleById(jt.select("body"),"svg","js-plotly-tester",function(t){t.attr(qU.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),r=tt.ensureSingle(e,"path","js-reference-point",function(t){t.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});er.tester=e,er.testref=r};er.savedBBoxes={};var gm=0,UU=1e4;er.bBox=function(e,r,t){t||(t=A9(e));var a;if(t){if(a=er.savedBBoxes[t],a)return tt.extendFlat({},a)}else if(e.childNodes.length===1){var n=e.childNodes[0];if(t=A9(n),t){var i=+n.getAttribute("x")||0,l=+n.getAttribute("y")||0,o=n.getAttribute("transform");if(!o){var s=er.bBox(n,!1,t);return i&&(s.left+=i,s.right+=i),l&&(s.top+=l,s.bottom+=l),s}if(t+="~"+i+"~"+l+"~"+o,a=er.savedBBoxes[t],a)return tt.extendFlat({},a)}}var u,f;r?u=e:(f=er.tester.node(),u=e.cloneNode(!0),f.appendChild(u)),jt.select(u).attr("transform",null).call(h0.positionText,0,0);var v=u.getBoundingClientRect(),h=er.testref.node().getBoundingClientRect();r||f.removeChild(u);var d={height:v.height,width:v.width,left:v.left-h.left,top:v.top-h.top,right:v.right-h.left,bottom:v.bottom-h.top};return gm>=UU&&(er.savedBBoxes={},gm=0),t&&(er.savedBBoxes[t]=d),gm++,tt.extendFlat({},d)};function A9(e){var r=e.getAttribute("data-unformatted");if(r!==null)return r+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}er.setClipUrl=function(e,r,t){e.attr("clip-path",wm(r,t))};function wm(e,r){if(!e)return null;var t=r._context,a=t._exportedPlot?"":t._baseUrl||"";return a?"url('"+a+"#"+e+"')":"url(#"+e+")"}er.getTranslate=function(e){var r=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,l,o){return[l,o].join(" ")}).split(" ");return{x:+n[0]||0,y:+n[1]||0}};er.setTranslate=function(e,r,t){var a=/(\btranslate\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",l=e[n]("transform")||"";return r=r||0,t=t||0,l=l.replace(a,"").trim(),l+=vf(r,t),l=l.trim(),e[i]("transform",l),l};er.getScale=function(e){var r=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,l,o){return[l,o].join(" ")}).split(" ");return{x:+n[0]||1,y:+n[1]||1}};er.setScale=function(e,r,t){var a=/(\bscale\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",l=e[n]("transform")||"";return r=r||1,t=t||1,l=l.replace(a,"").trim(),l+="scale("+r+","+t+")",l=l.trim(),e[i]("transform",l),l};var VU=/\s*sc.*/;er.setPointGroupScale=function(e,r,t){if(r=r||1,t=t||1,!!e){var a=r===1&&t===1?"":"scale("+r+","+t+")";e.each(function(){var n=(this.getAttribute("transform")||"").replace(VU,"");n+=a,n=n.trim(),this.setAttribute("transform",n)})}};var GU=/translate\([^)]*\)\s*$/;er.setTextPointsScale=function(e,r,t){e&&e.each(function(){var a,n=jt.select(this),i=n.select("text");if(i.node()){var l=parseFloat(i.attr("x")||0),o=parseFloat(i.attr("y")||0),s=(n.attr("transform")||"").match(GU);r===1&&t===1?a=[]:a=[vf(l,o),"scale("+r+","+t+")",vf(-l,-o)],s&&a.push(s),n.attr("transform",a.join(""))}})};function Tm(e,r){var t;return e&&(t=e.mf),t===void 0&&(t=r.marker&&r.marker.standoff||0),!r._geo&&!r._xA?-t:t}er.getMarkerStandoff=Tm;var cf=Math.atan2,ho=Math.cos,Rs=Math.sin;function k9(e,r){var t=r[0],a=r[1];return[t*ho(e)-a*Rs(e),t*Rs(e)+a*ho(e)]}var S9,C9,L9,q9,bm,xm;function Mm(e,r){var t=e.ma;t===void 0&&(t=r.marker.angle,(!t||tt.isArrayOrTypedArray(t))&&(t=0));var a,n,i=r.marker.angleref;if(i==="previous"||i==="north"){if(r._geo){var l=r._geo.project(e.lonlat);a=l[0],n=l[1]}else{var o=r._xA,s=r._yA;if(o&&s)a=o.c2p(e.x),n=s.c2p(e.y);else return 90}if(r._geo){var u=e.lonlat[0],f=e.lonlat[1],v=r._geo.project([u,f+1e-5]),h=r._geo.project([u+1e-5,f]),d=cf(h[1]-n,h[0]-a),m=cf(v[1]-n,v[0]-a),y;if(i==="north")y=t/180*Math.PI;else if(i==="previous"){var g=u/180*Math.PI,_=f/180*Math.PI,w=S9/180*Math.PI,T=C9/180*Math.PI,b=w-g,M=ho(T)*Rs(b),C=Rs(T)*ho(_)-ho(T)*Rs(_)*ho(b);y=-cf(M,C)-Math.PI,S9=u,C9=f}var k=k9(d,[ho(y),0]),q=k9(m,[Rs(y),0]);t=cf(k[1]+q[1],k[0]+q[0])/Math.PI*180,i==="previous"&&!(xm===r.uid&&e.i===bm+1)&&(t=null)}if(i==="previous"&&!r._geo)if(xm===r.uid&&e.i===bm+1&&yo(a)&&yo(n)){var D=a-L9,R=n-q9,z=r.line&&r.line.shape||"",F=z.slice(z.length-1);F==="h"&&(R=0),F==="v"&&(D=0),t+=cf(R,D)/Math.PI*180+90}else t=null}return L9=a,q9=n,bm=e.i,xm=r.uid,t}er.getMarkerAngle=Mm});var hf=Z((tse,G9)=>{"use strict";var zs=Ir(),WU=Hr(),ZU=Ft(),Am=br(),go=Ie(),Y9=go.strTranslate,d0=at(),p0=Er(),Ns=Ta(),U9=Tv(),XU=Pa().OPPOSITE_SIDE,V9=/ [XY][0-9]* /,km=1.6,Sm=1.6;function JU(e,r,t){var a=e._fullLayout,n=t.propContainer,i=t.propName,l=t.placeholder,o=t.traceIndex,s=t.avoid||{},u=t.attributes,f=t.transform,v=t.containerGroup,h=1,d=n.title,m=(d&&d.text?d.text:"").trim(),y=!1,g=d&&d.font?d.font:{},_=g.family,w=g.size,T=g.color,b=g.weight,M=g.style,C=g.variant,k=g.textcase,q=g.lineposition,D=g.shadow,R=t.subtitlePropName,z=!!R,F=t.subtitlePlaceholder,I=(n.title||{}).subtitle||{text:"",font:{}},H=(I.text||"").trim(),J=!1,X=1,Y=I.font,O=Y.family,V=Y.size,Q=Y.color,K=Y.weight,ne=Y.style,me=Y.variant,de=Y.textcase,ke=Y.lineposition,re=Y.shadow,Ce;i==="title.text"?Ce="titleText":i.indexOf("axis")!==-1?Ce="axisTitleText":i.indexOf("colorbar")!==-1&&(Ce="colorbarTitleText");var ce=e._context.edits[Ce];function _e(Be,Ge){return Be===void 0||Ge===void 0?!1:Be.replace(V9," % ")===Ge.replace(V9," % ")}m===""?h=0:_e(m,l)&&(ce||(m=""),h=.2,y=!0),z&&(H===""?X=0:_e(H,F)&&(ce||(H=""),X=.2,J=!0)),t._meta?m=go.templateString(m,t._meta):a._meta&&(m=go.templateString(m,a._meta));var se=m||H||ce,ge;v||(v=go.ensureSingle(a._infolayer,"g","g-"+r),ge=a._hColorbarMoveTitle);var B=v.selectAll("text."+r).data(se?[0]:[]);B.enter().append("text"),B.text(m).attr("class",r),B.exit().remove();var $=null,U=r+"-subtitle",ye=H||ce;if(z&&($=v.selectAll("text."+U).data(ye?[0]:[]),$.enter().append("text"),$.text(H).attr("class",U),$.exit().remove()),!se)return v;function we(Be,Ge){go.syncOrAsync([pe,Re],{title:Be,subtitle:Ge})}function pe(Be){var Ge=Be.title,qe=Be.subtitle,He;!f&&ge&&(f={}),f?(He="",f.rotate&&(He+="rotate("+[f.rotate,u.x,u.y]+")"),(f.offset||ge)&&(He+=Y9(0,(f.offset||0)-(ge||0)))):He=null,Ge.attr("transform",He);function Ye(Me){if(Me){var Se=zs.select(Me.node().parentNode).select("."+U);if(!Se.empty()){var Oe=Me.node().getBBox();if(Oe.height){var Je=Oe.y+Oe.height+km*V;Se.attr("y",Je)}}}}if(Ge.style("opacity",h*p0.opacity(T)).call(d0.font,{color:p0.rgb(T),size:zs.round(w,2),family:_,weight:b,style:M,variant:C,textcase:k,shadow:D,lineposition:q}).attr(u).call(Ns.convertToTspans,e,Ye),qe&&!qe.empty()){var ie=v.select("."+r+"-math-group"),be=Ge.node().getBBox(),Ke=ie.node()?ie.node().getBBox():void 0,hr=Ke?Ke.y+Ke.height+km*V:be.y+be.height+Sm*V,Pe=go.extendFlat({},u,{y:hr});qe.attr("transform",He),qe.style("opacity",X*p0.opacity(Q)).call(d0.font,{color:p0.rgb(Q),size:zs.round(V,2),family:O,weight:K,style:ne,variant:me,textcase:de,shadow:re,lineposition:ke}).attr(Pe).call(Ns.convertToTspans,e)}return ZU.previousPromises(e)}function Re(Be){var Ge=Be.title,qe=zs.select(Ge.node().parentNode);if(s&&s.selection&&s.side&&m){qe.attr("transform",null);var He=XU[s.side],Ye=s.side==="left"||s.side==="top"?-1:1,ie=WU(s.pad)?s.pad:2,be=d0.bBox(qe.node()),Ke={t:0,b:0,l:0,r:0},hr=e._fullLayout._reservedMargin;for(var Pe in hr)for(var Me in hr[Pe]){var Se=hr[Pe][Me];Ke[Me]=Math.max(Ke[Me],Se)}var Oe={left:Ke.l,top:Ke.t,right:a.width-Ke.r,bottom:a.height-Ke.b},Je=s.maxShift||Ye*(Oe[s.side]-be[s.side]),We=0;if(Je<0)We=Je;else{var Ze=s.offsetLeft||0,lr=s.offsetTop||0;be.left-=Ze,be.right-=Ze,be.top-=lr,be.bottom-=lr,s.selection.each(function(){var Qe=d0.bBox(this);go.bBoxIntersect(be,Qe,ie)&&(We=Math.max(We,Ye*(Qe[s.side]-be[He])+ie))}),We=Math.min(Je,We),n._titleScoot=Math.abs(We)}if(We>0||Je<0){var tr={left:[-We,0],right:[We,0],top:[0,-We],bottom:[0,We]}[s.side];qe.attr("transform",Y9(tr[0],tr[1]))}}}B.call(we,$);function Fe(Be,Ge){Be.text(Ge).on("mouseover.opacity",function(){zs.select(this).transition().duration(U9.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){zs.select(this).transition().duration(U9.HIDE_PLACEHOLDER).style("opacity",0)})}if(ce&&(m?B.on(".opacity",null):(Fe(B,l),y=!0),B.call(Ns.makeEditable,{gd:e}).on("edit",function(Be){o!==void 0?Am.call("_guiRestyle",e,i,Be,o):Am.call("_guiRelayout",e,i,Be)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(we)}).on("input",function(Be){this.text(Be||" ").call(Ns.positionText,u.x,u.y)}),z)){if(z&&!m){var Ee=B.node().getBBox(),Ne=Ee.y+Ee.height+Sm*V;$.attr("y",Ne)}H?$.on(".opacity",null):(Fe($,F),J=!0),$.call(Ns.makeEditable,{gd:e}).on("edit",function(Be){Am.call("_guiRelayout",e,"title.subtitle.text",Be)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(we)}).on("input",function(Be){this.text(Be||" ").call(Ns.positionText,$.attr("x"),$.attr("y"))})}return B.classed("js-placeholder",y),$&&!$.empty()&&$.classed("js-placeholder",J),v}G9.exports={draw:JU,SUBTITLE_PADDING_EM:Sm,SUBTITLE_PADDING_MATHJAX_EM:km}});var T0=Z((ase,K9)=>{"use strict";var KU=Ir(),QU=ss().utcFormat,nt=Ie(),$U=nt.numberFormat,xi=Hr(),yl=nt.cleanNumber,jU=nt.ms2DateTime,W9=nt.dateTime2ms,_i=nt.ensureNumber,Z9=nt.isArrayOrTypedArray,gl=Vt(),m0=gl.FP_SAFE,Kn=gl.BADNUM,eV=gl.LOG_CLIP,rV=gl.ONEWEEK,y0=gl.ONEDAY,g0=gl.ONEHOUR,X9=gl.ONEMIN,J9=gl.ONESEC,b0=Zt(),w0=ya(),x0=w0.HOUR_PATTERN,_0=w0.WEEKDAY_PATTERN;function df(e){return Math.pow(10,e)}function Cm(e){return e!=null}K9.exports=function(r,t){t=t||{};var a=r._id||"x",n=a.charAt(0);function i(b,M){if(b>0)return Math.log(b)/Math.LN10;if(b<=0&&M&&r.range&&r.range.length===2){var C=r.range[0],k=r.range[1];return .5*(C+k-2*eV*Math.abs(C-k))}else return Kn}function l(b,M,C,k){if((k||{}).msUTC&&xi(b))return+b;var q=W9(b,C||r.calendar);if(q===Kn)if(xi(b)){b=+b;var D=Math.floor(nt.mod(b+.05,1)*10),R=Math.round(b-D/10);q=W9(new Date(R))+D/10}else return Kn;return q}function o(b,M,C){return jU(b,M,C||r.calendar)}function s(b){return r._categories[Math.round(b)]}function u(b){if(Cm(b)){if(r._categoriesMap===void 0&&(r._categoriesMap={}),r._categoriesMap[b]!==void 0)return r._categoriesMap[b];r._categories.push(typeof b=="number"?String(b):b);var M=r._categories.length-1;return r._categoriesMap[b]=M,M}return Kn}function f(b,M){for(var C=new Array(M),k=0;kr.range[1]&&(C=!C);for(var k=C?-1:1,q=k*b,D=0,R=0;RF)D=R+1;else{D=q<(z+F)/2?R:R+1;break}}var I=r._B[D]||0;return isFinite(I)?m(b,r._m2,I):0},_=function(b){var M=r._rangebreaks.length;if(!M)return y(b,r._m,r._b);for(var C=0,k=0;kr._rangebreaks[k].pmax&&(C=k+1);return y(b,r._m2,r._B[C])}}r.c2l=r.type==="log"?i:_i,r.l2c=r.type==="log"?df:_i,r.l2p=g,r.p2l=_,r.c2p=r.type==="log"?function(b,M){return g(i(b,M))}:g,r.p2c=r.type==="log"?function(b){return df(_(b))}:_,["linear","-"].indexOf(r.type)!==-1?(r.d2r=r.r2d=r.d2c=r.r2c=r.d2l=r.r2l=yl,r.c2d=r.c2r=r.l2d=r.l2r=_i,r.d2p=r.r2p=function(b){return r.l2p(yl(b))},r.p2d=r.p2r=_,r.cleanPos=_i):r.type==="log"?(r.d2r=r.d2l=function(b,M){return i(yl(b),M)},r.r2d=r.r2c=function(b){return df(yl(b))},r.d2c=r.r2l=yl,r.c2d=r.l2r=_i,r.c2r=i,r.l2d=df,r.d2p=function(b,M){return r.l2p(r.d2r(b,M))},r.p2d=function(b){return df(_(b))},r.r2p=function(b){return r.l2p(yl(b))},r.p2r=_,r.cleanPos=_i):r.type==="date"?(r.d2r=r.r2d=nt.identity,r.d2c=r.r2c=r.d2l=r.r2l=l,r.c2d=r.c2r=r.l2d=r.l2r=o,r.d2p=r.r2p=function(b,M,C){return r.l2p(l(b,0,C))},r.p2d=r.p2r=function(b,M,C){return o(_(b),M,C)},r.cleanPos=function(b){return nt.cleanDate(b,Kn,r.calendar)}):r.type==="category"?(r.d2c=r.d2l=u,r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=h,r.r2c=function(b){var M=d(b);return M!==void 0?M:r.fraction2r(.5)},r.l2r=r.c2r=_i,r.r2l=d,r.d2p=function(b){return r.l2p(r.r2c(b))},r.p2d=function(b){return s(_(b))},r.r2p=r.d2p,r.p2r=_,r.cleanPos=function(b){return typeof b=="string"&&b!==""?b:_i(b)}):r.type==="multicategory"&&(r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=h,r.r2c=function(b){var M=h(b);return M!==void 0?M:r.fraction2r(.5)},r.r2c_just_indices=v,r.l2r=r.c2r=_i,r.r2l=h,r.d2p=function(b){return r.l2p(r.r2c(b))},r.p2d=function(b){return s(_(b))},r.r2p=r.d2p,r.p2r=_,r.cleanPos=function(b){return Array.isArray(b)||typeof b=="string"&&b!==""?b:_i(b)},r.setupMultiCategory=function(b){var M=r._traceIndices,C,k,q=r._matchGroup;if(q&&r._categories.length===0){for(var D in q)if(D!==a){var R=t[b0.id2name(D)];M=M.concat(R._traceIndices)}}var z=[[0,{}],[0,{}]],F=[];for(C=0;CR[1]&&(k[D?0:1]=C),k[0]===k[1]){var z=r.l2r(M),F=r.l2r(C);if(M!==void 0){var I=z+1;C!==void 0&&(I=Math.min(I,F)),k[D?1:0]=I}if(C!==void 0){var H=F+1;M!==void 0&&(H=Math.max(H,z)),k[D?0:1]=H}}}},r.cleanRange=function(b,M){r._cleanRange(b,M),r.limitRange(b)},r._cleanRange=function(b,M){M||(M={}),b||(b="range");var C=nt.nestedProperty(r,b).get(),k,q;if(r.type==="date"?q=nt.dfltRange(r.calendar):n==="y"?q=w0.DFLTRANGEY:r._name==="realaxis"?q=[0,1]:q=M.dfltRange||w0.DFLTRANGEX,q=q.slice(),(r.rangemode==="tozero"||r.rangemode==="nonnegative")&&(q[0]=0),!C||C.length!==2){nt.nestedProperty(r,b).set(q);return}var D=C[0]===null,R=C[1]===null;for(r.type==="date"&&!r.autorange&&(C[0]=nt.cleanDate(C[0],Kn,r.calendar),C[1]=nt.cleanDate(C[1],Kn,r.calendar)),k=0;k<2;k++)if(r.type==="date"){if(!nt.isDateTime(C[k],r.calendar)){r[b]=q;break}if(r.r2l(C[0])===r.r2l(C[1])){var z=nt.constrain(r.r2l(C[0]),nt.MIN_MS+1e3,nt.MAX_MS-1e3);C[0]=r.l2r(z-1e3),C[1]=r.l2r(z+1e3);break}}else{if(!xi(C[k]))if(!(D||R)&&xi(C[1-k]))C[k]=C[1-k]*(k?10:.1);else{r[b]=q;break}if(C[k]<-m0?C[k]=-m0:C[k]>m0&&(C[k]=m0),C[0]===C[1]){var F=Math.max(1,Math.abs(C[0]*1e-6));C[0]-=F,C[1]+=F}}},r.setScale=function(b){var M=t._size;if(r.overlaying){var C=b0.getFromId({_fullLayout:t},r.overlaying);r.domain=C.domain}var k=b&&r._r?"_r":"range",q=r.calendar;r.cleanRange(k);var D=r.r2l(r[k][0],q),R=r.r2l(r[k][1],q),z=n==="y";if(z?(r._offset=M.t+(1-r.domain[1])*M.h,r._length=M.h*(r.domain[1]-r.domain[0]),r._m=r._length/(D-R),r._b=-r._m*R):(r._offset=M.l+r.domain[0]*M.w,r._length=M.w*(r.domain[1]-r.domain[0]),r._m=r._length/(R-D),r._b=-r._m*D),r._rangebreaks=[],r._lBreaks=0,r._m2=0,r._B=[],r.rangebreaks){var F,I;if(r._rangebreaks=r.locateBreaks(Math.min(D,R),Math.max(D,R)),r._rangebreaks.length){for(F=0;FR&&(H=!H),H&&r._rangebreaks.reverse();var J=H?-1:1;for(r._m2=J*r._length/(Math.abs(R-D)-r._lBreaks),r._B.push(-r._m2*(z?R:D)),F=0;Fq&&(q+=7,Dq&&(q+=24,D=k&&D=k&&b=re.min&&(nere.max&&(re.max=me),de=!1)}de&&R.push({min:ne,max:me})}};for(C=0;C{"use strict";var Q9=Hr(),Lm=Ie(),tV=Vt().BADNUM,M0=Lm.isArrayOrTypedArray,aV=Lm.isDateTime,nV=Lm.cleanNumber,$9=Math.round;e8.exports=function(r,t,a){var n=r,i=a.noMultiCategory;if(M0(n)&&!n.length)return"-";if(!i&&uV(n))return"multicategory";if(i&&Array.isArray(n[0])){for(var l=[],o=0;oi*2}function j9(e){return Math.max(1,(e-1)/1e3)}function sV(e,r){for(var t=e.length,a=j9(t),n=0,i=0,l={},o=0;on*2}function uV(e){return M0(e[0])&&M0(e[1])}});var pf=Z((ise,s8)=>{"use strict";var fV=Ir(),n8=Hr(),bl=Ie(),A0=Vt().FP_SAFE,cV=br(),vV=at(),i8=Zt(),hV=i8.getFromId,dV=i8.isLinked;s8.exports={applyAutorangeOptions:o8,getAutoRange:Dm,makePadFn:Em,doAutoRange:mV,findExtremes:yV,concatExtremes:zm};function Dm(e,r){var t,a,n=[],i=e._fullLayout,l=Em(i,r,0),o=Em(i,r,1),s=zm(e,r),u=s.min,f=s.max;if(u.length===0||f.length===0)return bl.simpleMap(r.range,r.r2l);var v=u[0].val,h=f[0].val;for(t=1;t0&&(R=T-l(C)-o(k),R>b?z/R>M&&(q=C,D=k,M=z/R):z/T>M&&(q={val:C.val,nopad:1},D={val:k.val,nopad:1},M=z/T));function F(Y,O){return Math.max(Y,o(O))}if(v===h){var I=v-1,H=v+1;if(_)if(v===0)n=[0,1];else{var J=(v>0?f:u).reduce(F,0),X=v/(1-Math.min(.5,J/T));n=v>0?[0,X]:[X,0]}else w?n=[Math.max(0,I),Math.max(1,H)]:n=[I,H]}else _?(q.val>=0&&(q={val:0,nopad:1}),D.val<=0&&(D={val:0,nopad:1})):w&&(q.val-M*l(q)<0&&(q={val:0,nopad:1}),D.val<=0&&(D={val:1,nopad:1})),M=(D.val-q.val-r8(r,C.val,k.val))/(T-l(q)-o(D)),n=[q.val-M*l(q),D.val+M*o(D)];return n=o8(n,r),r.limitRange&&r.limitRange(),m&&n.reverse(),bl.simpleMap(n,r.l2r||Number)}function r8(e,r,t){var a=0;if(e.rangebreaks)for(var n=e.locateBreaks(r,t),i=0;i0?t.ppadplus:t.ppadminus)||t.ppad||0),C=b((e._m>0?t.ppadminus:t.ppadplus)||t.ppad||0),k=b(t.vpadplus||t.vpad),q=b(t.vpadminus||t.vpad);if(!u){if(w=1/0,T=-1/0,s)for(v=0;v0&&(w=h),h>T&&h-A0&&(w=h),h>T&&h=z;v--)R(v);return{min:a,max:n,opts:t}}function Pm(e,r,t,a){l8(e,r,t,a,gV)}function Rm(e,r,t,a){l8(e,r,t,a,bV)}function l8(e,r,t,a,n){for(var i=a.tozero,l=a.extrapad,o=!0,s=0;s=t&&(u.extrapad||!l)){o=!1;break}else n(r,u.val)&&u.pad<=t&&(l||!u.extrapad)&&(e.splice(s,1),s--)}if(o){var f=i&&r===0;e.push({val:r,pad:f?0:t,extrapad:f?!1:l})}}function a8(e){return n8(e)&&Math.abs(e)=r}function xV(e,r){var t=r.autorangeoptions;return t&&t.minallowed!==void 0&&k0(r,t.minallowed,t.maxallowed)?t.minallowed:t&&t.clipmin!==void 0&&k0(r,t.clipmin,t.clipmax)?Math.max(e,r.d2l(t.clipmin)):e}function _V(e,r){var t=r.autorangeoptions;return t&&t.maxallowed!==void 0&&k0(r,t.minallowed,t.maxallowed)?t.maxallowed:t&&t.clipmax!==void 0&&k0(r,t.clipmin,t.clipmax)?Math.min(e,r.d2l(t.clipmax)):e}function k0(e,r,t){return r!==void 0&&t!==void 0?(r=e.d2l(r),t=e.d2l(t),r=s&&(i=s,t=s),l<=s&&(l=s,a=s)}}return t=xV(t,r),a=_V(a,r),[t,a]}});var dt=Z((lse,D8)=>{"use strict";var An=Ir(),Ht=Hr(),Fs=Ft(),yf=br(),gr=Ie(),Is=gr.strTranslate,bo=Ta(),wV=hf(),gf=Er(),on=at(),TV=Xn(),u8=$p(),ba=Vt(),MV=ba.ONEMAXYEAR,L0=ba.ONEAVGYEAR,q0=ba.ONEMINYEAR,AV=ba.ONEMAXQUARTER,Hm=ba.ONEAVGQUARTER,D0=ba.ONEMINQUARTER,kV=ba.ONEMAXMONTH,Hs=ba.ONEAVGMONTH,E0=ba.ONEMINMONTH,sn=ba.ONEWEEK,Ra=ba.ONEDAY,xl=Ra/2,Ti=ba.ONEHOUR,bf=ba.ONEMIN,P0=ba.ONESEC,SV=ba.ONEMILLI,CV=ba.ONEMICROSEC,xo=ba.MINUS_SIGN,z0=ba.BADNUM,Om={K:"zeroline"},Bm={K:"gridline",L:"path"},Ym={K:"minor-gridline",L:"path"},x8={K:"tick",L:"path"},f8={K:"tick",L:"text"},c8={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},N0=Pa(),mf=N0.MID_SHIFT,_o=N0.CAP_SHIFT,xf=N0.LINE_SPACING,LV=N0.OPPOSITE_SIDE,R0=3,Ve=D8.exports={};Ve.setConvert=T0();var qV=qm(),Yi=Zt(),DV=Yi.idSort,EV=Yi.isLinked;Ve.id2name=Yi.id2name;Ve.name2id=Yi.name2id;Ve.cleanId=Yi.cleanId;Ve.list=Yi.list;Ve.listIds=Yi.listIds;Ve.getFromId=Yi.getFromId;Ve.getFromTrace=Yi.getFromTrace;var _8=pf();Ve.getAutoRange=_8.getAutoRange;Ve.findExtremes=_8.findExtremes;var PV=1e-4;function Wm(e){var r=(e[1]-e[0])*PV;return[e[0]-r,e[1]+r]}Ve.coerceRef=function(e,r,t,a,n,i){var l=a.charAt(a.length-1),o=t._fullLayout._subplots[l+"axis"],s=a+"ref",u={};return n||(n=o[0]||(typeof i=="string"?i:i[0])),i||(i=n),o=o.concat(o.map(function(f){return f+" domain"})),u[s]={valType:"enumerated",values:o.concat(i?typeof i=="string"?[i]:i:[]),dflt:n},gr.coerce(e,r,u,s)};Ve.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};Ve.coercePosition=function(e,r,t,a,n,i){var l,o,s=Ve.getRefType(a);if(s!=="range")l=gr.ensureNumber,o=t(n,i);else{var u=Ve.getFromId(r,a);i=u.fraction2r(i),o=t(n,i),l=u.cleanPos}e[n]=l(o)};Ve.cleanPosition=function(e,r,t){var a=t==="paper"||t==="pixel"?gr.ensureNumber:Ve.getFromId(r,t).cleanPos;return a(e)};Ve.redrawComponents=function(e,r){r=r||Ve.listIds(e);var t=e._fullLayout;function a(n,i,l,o){for(var s=yf.getComponentMethod(n,i),u={},f=0;f2e-6||((t-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};Ve.saveRangeInitial=function(e,r){for(var t=Ve.list(e,"",!0),a=!1,n=0;nv*.3||u(a)||u(n))){var h=t.dtick/2;e+=e+hl){var o=Number(t.substr(1));i.exactYears>l&&o%12===0?e=Ve.tickIncrement(e,"M6","reverse")+Ra*1.5:i.exactMonths>l?e=Ve.tickIncrement(e,"M1","reverse")+Ra*15.5:e-=xl;var s=Ve.tickIncrement(e,t);if(s<=a)return s}return e}Ve.prepMinorTicks=function(e,r,t){if(!r.minor.dtick){delete e.dtick;var a=r.dtick&&Ht(r._tmin),n;if(a){var i=Ve.tickIncrement(r._tmin,r.dtick,!0);n=[r._tmin,i*.99+r._tmin*.01]}else{var l=gr.simpleMap(r.range,r.r2l);n=[l[0],.8*l[0]+.2*l[1]]}if(e.range=gr.simpleMap(n,r.l2r),e._isMinor=!0,Ve.prepTicks(e,t),a){var o=Ht(r.dtick),s=Ht(e.dtick),u=o?r.dtick:+r.dtick.substring(1),f=s?e.dtick:+e.dtick.substring(1);o&&s?Nm(u,f)?u===2*sn&&f===2*Ra&&(e.dtick=sn):u===2*sn&&f===3*Ra?e.dtick=sn:u===sn&&!(r._input.minor||{}).nticks?e.dtick=Ra:d8(u/f,2.5)?e.dtick=u/2:e.dtick=u:String(r.dtick).charAt(0)==="M"?s?e.dtick="M1":Nm(u,f)?u>=12&&f===2&&(e.dtick="M3"):e.dtick=r.dtick:String(e.dtick).charAt(0)==="L"?String(r.dtick).charAt(0)==="L"?Nm(u,f)||(e.dtick=d8(u/f,2.5)?r.dtick/2:r.dtick):e.dtick="D1":e.dtick==="D2"&&+r.dtick>1&&(e.dtick=1)}e.range=r.range}r.minor._tick0Init===void 0&&(e.tick0=r.tick0)};function Nm(e,r){return Math.abs((e/r+.5)%1-.5)<.001}function d8(e,r){return Math.abs(e/r-1)<.001}Ve.prepTicks=function(e,r){var t=gr.simpleMap(e.range,e.r2l,void 0,void 0,r);if(e.tickmode==="auto"||!e.dtick){var a=e.nticks,n;a||(e.type==="category"||e.type==="multicategory"?(n=e.tickfont?gr.bigFont(e.tickfont.size||12):15,a=e._length/n):(n=e._id.charAt(0)==="y"?40:80,a=gr.constrain(e._length/n,4,9)+1),e._name==="radialaxis"&&(a*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(a*=100),e._roughDTick=Math.abs(t[1]-t[0])/a,Ve.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(i=a-1,l=a):(i=a,l=a);var o=e[i].value,s=e[l].value,u=Math.abs(s-o),f=t||u,v=0;f>=q0?u>=q0&&u<=MV?v=u:v=L0:t===Hm&&f>=D0?u>=D0&&u<=AV?v=u:v=Hm:f>=E0?u>=E0&&u<=kV?v=u:v=Hs:t===sn&&f>=sn?v=sn:f>=Ra?v=Ra:t===xl&&f>=xl?v=xl:t===Ti&&f>=Ti&&(v=Ti);var h;v>=u&&(v=u,h=!0);var d=n+v;if(r.rangebreaks&&v>0){for(var m=84,y=0,g=0;gsn&&(v=u)}(v>0||a===0)&&(e[a].periodX=n+v/2)}}Ve.calcTicks=function(r,t){for(var a=r.type,n=r.calendar,i=r.ticklabelstep,l=r.ticklabelmode==="period",o=r.range[0]>r.range[1],s=!r.ticklabelindex||gr.isArrayOrTypedArray(r.ticklabelindex)?r.ticklabelindex:[r.ticklabelindex],u=gr.simpleMap(r.range,r.r2l,void 0,void 0,t),f=u[1]=(T?0:1);b--){var M=!b;b?(r._dtickInit=r.dtick,r._tick0Init=r.tick0):(r.minor._dtickInit=r.minor.dtick,r.minor._tick0Init=r.minor.tick0);var C=b?r:gr.extendFlat({},r,r.minor);if(M?Ve.prepMinorTicks(C,r,t):Ve.prepTicks(C,t),C.tickmode==="array"){b?(g=[],m=p8(r,!M)):(_=[],y=p8(r,!M));continue}if(C.tickmode==="sync"){g=[],m=HV(r);continue}var k=Wm(u),q=k[0],D=k[1],R=Ht(C.dtick),z=a==="log"&&!(R||C.dtick.charAt(0)==="L"),F=Ve.tickFirst(C,t);if(b){if(r._tmin=F,F=D:H<=D;H=Ve.tickIncrement(H,Y,f,n)){if(b&&J++,C.rangebreaks&&!f){if(H=h)break}if(g.length>d||H===I)break;I=H;var O={value:H};b?(z&&H!==(H|0)&&(O.simpleLabel=!0),i>1&&J%i&&(O.skipLabel=!0),g.push(O)):(O.minor=!0,_.push(O))}}if(!_||_.length<2)s=!1;else{var V=(_[1].value-_[0].value)*(o?-1:1);fG(V,r.tickformat)||(s=!1)}if(!s)w=g;else{var Q=g.concat(_);l&&g.length&&(Q=Q.slice(1)),Q=Q.sort(function(Ne,Be){return Ne.value-Be.value}).filter(function(Ne,Be,Ge){return Be===0||Ne.value!==Ge[Be-1].value});var K=Q.map(function(Ne,Be){return Ne.minor===void 0&&!Ne.skipLabel?Be:null}).filter(function(Ne){return Ne!==null});K.forEach(function(Ne){s.map(function(Be){var Ge=Ne+Be;Ge>=0&&Ge-1;se--){if(g[se].drop){g.splice(se,1);continue}g[se].value=Im(g[se].value,r);var U=r.c2p(g[se].value);(ge?$>U-B:$h||qeh&&(Ge.periodX=h),qen&&hL0)r/=L0,a=n(10),e.dtick="M"+12*wi(r,a,S0);else if(i>Hs)r/=Hs,e.dtick="M"+wi(r,1,m8);else if(i>Ra){if(e.dtick=wi(r,Ra,e._hasDayOfWeekBreaks?[1,2,7,14]:OV),!t){var l=Ve.getTickFormat(e),o=e.ticklabelmode==="period";o&&(e._rawTick0=e.tick0),/%[uVW]/.test(l)?e.tick0=gr.dateTick0(e.calendar,2):e.tick0=gr.dateTick0(e.calendar,1),o&&(e._dowTick0=e.tick0)}}else i>Ti?e.dtick=wi(r,Ti,m8):i>bf?e.dtick=wi(r,bf,y8):i>P0?e.dtick=wi(r,P0,y8):(a=n(10),e.dtick=wi(r,a,S0))}else if(e.type==="log"){e.tick0=0;var s=gr.simpleMap(e.range,e.r2l);if(e._isMinor&&(r*=1.5),r>.7)e.dtick=Math.ceil(r);else if(Math.abs(s[1]-s[0])<1){var u=1.5*Math.abs((s[1]-s[0])/r);r=Math.abs(Math.pow(10,s[1])-Math.pow(10,s[0]))/u,a=n(10),e.dtick="L"+wi(r,a,S0)}else e.dtick=r>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(r,1))):Km(e)?(e.tick0=0,a=1,e.dtick=wi(r,a,BV)):(e.tick0=0,a=n(10),e.dtick=wi(r,a,S0));if(e.dtick===0&&(e.dtick=1),!Ht(e.dtick)&&typeof e.dtick!="string"){var f=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(f)}};function A8(e){var r=e.dtick;if(e._tickexponent=0,!Ht(r)&&typeof r!="string"&&(r=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var t=e.r2l(e.tick0),a=e.l2r(t).replace(/(^-|i)/g,""),n=a.length;if(String(r).charAt(0)==="M")n>10||a.substr(5)!=="01-01"?e._tickround="d":e._tickround=+r.substr(1)%12===0?"y":"m";else if(r>=Ra&&n<=10||r>=Ra*15)e._tickround="d";else if(r>=bf&&n<=16||r>=Ti)e._tickround="M";else if(r>=P0&&n<=19||r>=bf)e._tickround="S";else{var i=e.l2r(t+r).replace(/^-/,"").length;e._tickround=Math.max(n,i)-20,e._tickround<0&&(e._tickround=4)}}else if(Ht(r)||r.charAt(0)==="L"){var l=e.range.map(e.r2d||Number);Ht(r)||(r=Number(r.substr(1))),e._tickround=2-Math.floor(Math.log(r)/Math.LN10+.01);var o=Math.max(Math.abs(l[0]),Math.abs(l[1])),s=Math.floor(Math.log(o)/Math.LN10+.01),u=e.minexponent===void 0?3:e.minexponent;Math.abs(s)>u&&(Os(e.exponentformat)&&e.exponentformat!=="SI extended"&&!Zm(s)||Os(e.exponentformat)&&e.exponentformat==="SI extended"&&!Xm(s)?e._tickexponent=3*Math.round((s-1)/3):e._tickexponent=s)}else e._tickround=null}Ve.tickIncrement=function(e,r,t,a){var n=t?-1:1;if(Ht(r))return gr.increment(e,n*r);var i=r.charAt(0),l=n*Number(r.substr(1));if(i==="M")return gr.incrementMonth(e,l,a);if(i==="L")return Math.log(Math.pow(10,e)+l)/Math.LN10;if(i==="D"){var o=r==="D2"?M8:T8,s=e+n*.01,u=gr.roundUp(gr.mod(s,1),o,t);return Math.floor(s)+Math.log(An.round(Math.pow(10,u),1))/Math.LN10}throw"unrecognized dtick "+String(r)};Ve.tickFirst=function(e,r){var t=e.r2l||Number,a=gr.simpleMap(e.range,t,void 0,void 0,r),n=a[1]=0&&_<=e._length?g:null};if(i&&gr.isArrayOrTypedArray(e.ticktext)){var v=gr.simpleMap(e.range,e.r2l),h=(Math.abs(v[1]-v[0])-(e._lBreaks||0))/1e4;for(u=0;u"+o;else{var u=wf(e),f=e._trueSide||e.side;(!u&&f==="top"||u&&f==="bottom")&&(l+="
")}r.text=l}function UV(e,r,t,a,n){var i=e.dtick,l=r.x,o=e.tickformat,s=typeof i=="string"&&i.charAt(0);if(n==="never"&&(n=""),a&&s!=="L"&&(i="L3",s="L"),o||s==="L")r.text=_f(Math.pow(10,l),e,n,a);else if(Ht(i)||s==="D"&&(e.minorloglabels==="complete"||gr.mod(l+.01,1)<.1)){var u;e.minorloglabels==="complete"&&!(gr.mod(l+.01,1)<.1)&&(u=!0,r.fontSize*=.75);var f=Math.pow(10,l).toExponential(0),v=f.split("e"),h=+v[1],d=Math.abs(h),m=e.exponentformat;m==="power"||Os(m)&&m!=="SI extended"&&Zm(h)||Os(m)&&m==="SI extended"&&Xm(h)?(r.text=v[0],d>0&&(r.text+="x10"),r.text==="1x10"&&(r.text="10"),h!==0&&h!==1&&(r.text+=""+(h>0?"":xo)+d+""),r.fontSize*=1.25):(m==="e"||m==="E")&&d>2?r.text=v[0]+m+(h>0?"+":xo)+d:(r.text=_f(Math.pow(10,l),e,"","fakehover"),i==="D1"&&e._id.charAt(0)==="y"&&(r.dy-=r.fontSize/6))}else if(s==="D")r.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,gr.mod(l,1)))),r.fontSize*=.75;else throw"unrecognized dtick "+String(i);if(e.dtick==="D1"){var y=String(r.text).charAt(0);(y==="0"||y==="1")&&(e._id.charAt(0)==="y"?r.dx-=r.fontSize/4:(r.dy+=r.fontSize/2,r.dx+=(e.range[1]>e.range[0]?1:-1)*r.fontSize*(l<0?.5:.25)))}}function VV(e,r){var t=e._categories[Math.round(r.x)];t===void 0&&(t=""),r.text=String(t)}function GV(e,r,t){var a=Math.round(r.x),n=e._categories[a]||[],i=n[1]===void 0?"":String(n[1]),l=n[0]===void 0?"":String(n[0]);t?r.text=l+" - "+i:(r.text=i,r.text2=l)}function WV(e,r,t,a,n){n==="never"?n="":e.showexponent==="all"&&Math.abs(r.x/e.dtick)<1e-6&&(n="hide"),r.text=_f(r.x,e,n,a)}function ZV(e,r,t,a,n){if(e.thetaunit==="radians"&&!t){var i=r.x/180;if(i===0)r.text="0";else{var l=XV(i);if(l[1]>=100)r.text=_f(gr.deg2rad(r.x),e,n,a);else{var o=r.x<0;l[1]===1?l[0]===1?r.text="\u03C0":r.text=l[0]+"\u03C0":r.text=["",l[0],"","\u2044","",l[1],"","\u03C0"].join(""),o&&(r.text=xo+r.text)}}}else r.text=_f(r.x,e,n,a)}function XV(e){function r(o,s){return Math.abs(o-s)<=1e-6}function t(o,s){return r(s,0)?o:t(s,o%s)}function a(o){for(var s=1;!r(Math.round(o*s)/s,o);)s*=10;return s}var n=a(e),i=e*n,l=Math.abs(t(i,n));return[Math.round(i/l),Math.round(n/l)]}var S8=["f","p","n","\u03BC","m","","k","M","G","T"],JV=["q","r","y","z","a",...S8,"P","E","Z","Y","R","Q"],Os=e=>["SI","SI extended","B"].includes(e);function Zm(e){return e>14||e<-15}function Xm(e){return e>32||e<-30}function KV(e,r){return Os(r)?!!(r==="SI extended"&&Xm(e)||r!=="SI extended"&&Zm(e)):!1}function _f(e,r,t,a){var n=e<0,i=r._tickround,l=t||r.exponentformat||"B",o=r._tickexponent,s=Ve.getTickFormat(r),u=r.separatethousands;if(a){var f={exponentformat:l,minexponent:r.minexponent,dtick:r.showexponent==="none"?r.dtick:Ht(e)&&Math.abs(e)||1,range:r.showexponent==="none"?r.range.map(r.r2d):[0,e||1]};A8(f),i=(Number(f._tickround)||0)+4,o=f._tickexponent,r.hoverformat&&(s=r.hoverformat)}if(s)return r._numFormat(s)(e).replace(/-/g,xo);var v=Math.pow(10,-i)/2;if(l==="none"&&(o=0),e=Math.abs(e),e"+m+"
":l==="B"&&o===9?e+="B":Os(l)&&(e+=l==="SI extended"?JV[o/3+10]:S8[o/3+5])}return n?xo+e:e}Ve.getTickFormat=function(e){var r;function t(s){return typeof s!="string"?s:Number(s.replace("M",""))*Hs}function a(s,u){var f=["L","D"];if(typeof s==typeof u){if(typeof s=="number")return s-u;var v=f.indexOf(s.charAt(0)),h=f.indexOf(u.charAt(0));return v===h?Number(s.replace(/(L|D)/g,""))-Number(u.replace(/(L|D)/g,"")):v-h}else return typeof s=="number"?1:-1}function n(s,u,f){var v=f||function(m){return m},h=u[0],d=u[1];return(!h&&typeof h!="number"||v(h)<=v(s))&&(!d&&typeof d!="number"||v(d)>=v(s))}function i(s,u){var f=u[0]===null,v=u[1]===null,h=a(s,u[0])>=0,d=a(s,u[1])<=0;return(f||h)&&(v||d)}var l,o;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(r=0;r=0&&n.unshift(n.splice(f,1).shift())}});var o={false:{left:0,right:0}};return gr.syncOrAsync(n.map(function(s){return function(){if(s){var u=Ve.getFromId(e,s);t||(t={}),t.axShifts=o,t.overlayingShiftedAx=l;var f=Ve.drawOne(e,u,t);return u._shiftPusher&&Gm(u,u._fullDepth||0,o,!0),u._r=u.range.slice(),u._rl=gr.simpleMap(u._r,u.r2l),f}}}))};Ve.drawOne=function(e,r,t){t=t||{};var a=t.axShifts||{},n=t.overlayingShiftedAx||[],i,l,o;r.setScale();var s=e._fullLayout,u=r._id,f=u.charAt(0),v=Ve.counterLetter(u),h=s._plots[r._mainSubplot],d=r.zerolinelayer==="above traces";if(!h)return;if(r._shiftPusher=r.autoshift||n.indexOf(r._id)!==-1||n.indexOf(r.overlaying)!==-1,r._shiftPusher&r.anchor==="free"){var m=r.linewidth/2||0;r.ticks==="inside"&&(m+=r.ticklen),Gm(r,m,a,!0),Gm(r,r.shift||0,a,!1)}(t.skipTitle!==!0||r._shift===void 0)&&(r._shift=uG(r,a));var y=h[f+"axislayer"],g=r._mainLinePosition,_=g+=r._shift,w=r._mainMirrorPosition,T=r._vals=Ve.calcTicks(r),b=[r.mirror,_,w].join("_");for(i=0;i0?qe.bottom-Be:0,Ge))));var be=0,Ke=0;if(r._shiftPusher&&(be=Math.max(Ge,qe.height>0?Ee==="l"?Be-qe.left:qe.right-Be:0),r.title.text!==s._dfltTitle[f]&&(Ke=(r._titleStandoff||0)+(r._titleScoot||0),Ee==="l"&&(Ke+=b8(r))),r._fullDepth=Math.max(be,Ke)),r.automargin){He={x:0,y:0,r:0,l:0,t:0,b:0};var hr=[0,1],Pe=typeof r._shift=="number"?r._shift:0;if(f==="x"){if(Ee==="b"?He[Ee]=r._depth:(He[Ee]=r._depth=Math.max(qe.width>0?Be-qe.top:0,Ge),hr.reverse()),qe.width>0){var Me=qe.right-(r._offset+r._length);Me>0&&(He.xr=1,He.r=Me);var Se=r._offset-qe.left;Se>0&&(He.xl=0,He.l=Se)}}else if(Ee==="l"?(r._depth=Math.max(qe.height>0?Be-qe.left:0,Ge),He[Ee]=r._depth-Pe):(r._depth=Math.max(qe.height>0?qe.right-Be:0,Ge),He[Ee]=r._depth+Pe,hr.reverse()),qe.height>0){var Oe=qe.bottom-(r._offset+r._length);Oe>0&&(He.yb=0,He.b=Oe);var Je=r._offset-qe.top;Je>0&&(He.yt=1,He.t=Je)}He[v]=r.anchor==="free"?r.position:r._anchorAxis.domain[hr[0]],r.title.text!==s._dfltTitle[f]&&(He[Ee]+=b8(r)+(r.title.standoff||0)),r.mirror&&r.anchor!=="free"&&(Ye={x:0,y:0,r:0,l:0,t:0,b:0},Ye[Ne]=r.linewidth,r.mirror&&r.mirror!==!0&&(Ye[Ne]+=Ge),r.mirror===!0||r.mirror==="ticks"?Ye[v]=r._anchorAxis.domain[hr[1]]:(r.mirror==="all"||r.mirror==="allticks")&&(Ye[v]=[r._counterDomainMin,r._counterDomainMax][hr[1]]))}Fe&&(ie=yf.getComponentMethod("rangeslider","autoMarginOpts")(e,r)),typeof r.automargin=="string"&&(g8(He,r.automargin),g8(Ye,r.automargin)),Fs.autoMargin(e,Jm(r),He),Fs.autoMargin(e,L8(r),Ye),Fs.autoMargin(e,q8(r),ie)}),gr.syncOrAsync(pe)}};function g8(e,r){if(e){var t=Object.keys(c8).reduce(function(a,n){return r.indexOf(n)!==-1&&c8[n].forEach(function(i){a[i]=1}),a},{});Object.keys(e).forEach(function(a){t[a]||(a.length===1?e[a]=0:delete e[a])})}}function QV(e,r){var t=[],a,n=function(i,l){var o=i.xbnd[l];o!==null&&t.push(gr.extendFlat({},i,{x:o}))};if(r.length){for(a=0;ae.range[1],o=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,s=!o;if(t){var u=l?-1:1;t=t*u}if(a){var f=e.side,v=o&&(f==="top"||f==="left")||s&&(f==="bottom"||f==="right")?1:-1;a=a*v}return e._id.charAt(0)==="x"?function(h){return Is(n+e._offset+e.l2p(Um(h))+t,i+a)}:function(h){return Is(i+a,n+e._offset+e.l2p(Um(h))+t)}};function Um(e){return e.periodX!==void 0?e.periodX:e.x}function rG(e){var r=e.ticklabelposition||"",t=e.tickson||"",a=function(m){return r.indexOf(m)!==-1},n=a("top"),i=a("left"),l=a("right"),o=a("bottom"),s=a("inside"),u=t!=="boundaries"&&(o||i||n||l);if(!u&&!s)return[0,0];var f=e.side,v=u?(e.tickwidth||0)/2:0,h=R0,d=e.tickfont?e.tickfont.size:12;return(o||n)&&(v+=d*_o,h+=(e.linewidth||0)/2),(i||l)&&(v+=(e.linewidth||0)/2,h+=R0),s&&f==="top"&&(h-=d*(1-_o)),(i||n)&&(v=-v),(f==="bottom"||f==="right")&&(h=-h),[u?v:0,s?h:0]}Ve.makeTickPath=function(e,r,t,a){a||(a={});var n=a.minor;if(n&&!e.minor)return"";var i=a.len!==void 0?a.len:n?e.minor.ticklen:e.ticklen,l=e._id.charAt(0),o=(e.linewidth||1)/2;return l==="x"?"M0,"+(r+o*t)+"v"+i*t:"M"+(r+o*t)+",0h"+i*t};Ve.makeLabelFns=function(e,r,t){var a=e.ticklabelposition||"",n=e.tickson||"",i=function(I){return a.indexOf(I)!==-1},l=i("top"),o=i("left"),s=i("right"),u=i("bottom"),f=n!=="boundaries"&&(u||o||l||s),v=i("inside"),h=a==="inside"&&e.ticks==="inside"||!v&&e.ticks==="outside"&&n!=="boundaries",d=0,m=0,y=h?e.ticklen:0;if(v?y*=-1:f&&(y=0),h&&(d+=y,t)){var g=gr.deg2rad(t);d=y*Math.cos(g)+1,m=y*Math.sin(g)}e.showticklabels&&(h||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(v?-1:1);var _={labelStandoff:d,labelShift:m},w,T,b,M,C=0,k=e.side,q=e._id.charAt(0),D=e.tickangle,R;if(q==="x")R=!v&&k==="bottom"||v&&k==="top",M=R?1:-1,v&&(M*=-1),w=m*M,T=r+d*M,b=R?1:-.2,Math.abs(D)===90&&(v?b+=mf:D===-90&&k==="bottom"?b=_o:D===90&&k==="top"?b=mf:b=.5,C=mf/2*(D/90)),_.xFn=function(I){return I.dx+w+C*I.fontSize},_.yFn=function(I){return I.dy+T+I.fontSize*b},_.anchorFn=function(I,H){if(f){if(o)return"end";if(s)return"start"}return!Ht(H)||H===0||H===180?"middle":H*M<0!==v?"end":"start"},_.heightFn=function(I,H,J){return H<-60||H>60?-.5*J:e.side==="top"!==v?-J:0};else if(q==="y"){if(R=!v&&k==="left"||v&&k==="right",M=R?1:-1,v&&(M*=-1),w=d,T=m*M,b=0,!v&&Math.abs(D)===90&&(D===-90&&k==="left"||D===90&&k==="right"?b=_o:b=.5),v){var z=Ht(D)?+D:0;if(z!==0){var F=gr.deg2rad(z);C=Math.abs(Math.sin(F))*_o*M,b=0}}_.xFn=function(I){return I.dx+r-(w+I.fontSize*b)*M+C*I.fontSize},_.yFn=function(I){return I.dy+T+I.fontSize*mf},_.anchorFn=function(I,H){return Ht(H)&&Math.abs(H)===90?"middle":R?"end":"start"},_.heightFn=function(I,H,J){return e.side==="right"&&(H*=-1),H<-30?-J:H<30?-.5*J:0}}return _};function F0(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}Ve.drawTicks=function(e,r,t){t=t||{};var a=r._id+"tick",n=[].concat(r.minor&&r.minor.ticks?t.vals.filter(function(l){return l.minor&&!l.noTick}):[]).concat(r.ticks?t.vals.filter(function(l){return!l.minor&&!l.noTick}):[]),i=t.layer.selectAll("path."+a).data(n,F0);i.exit().remove(),i.enter().append("path").classed(a,1).classed("ticks",1).classed("crisp",t.crisp!==!1).each(function(l){return gf.stroke(An.select(this),l.minor?r.minor.tickcolor:r.tickcolor)}).style("stroke-width",function(l){return on.crispRound(e,l.minor?r.minor.tickwidth:r.tickwidth,1)+"px"}).attr("d",t.path).style("display",null),I0(r,[x8]),i.attr("transform",t.transFn)};Ve.drawGrid=function(e,r,t){if(t=t||{},r.tickmode!=="sync"){var a=r._id+"grid",n=r.minor&&r.minor.showgrid,i=n?t.vals.filter(function(_){return _.minor}):[],l=r.showgrid?t.vals.filter(function(_){return!_.minor}):[],o=t.counterAxis;if(o&&Ve.shouldShowZeroLine(e,r,o))for(var s=r.tickmode==="array",u=0;u=0;m--){var y=m?h:d;if(y){var g=y.selectAll("path."+a).data(m?l:i,F0);g.exit().remove(),g.enter().append("path").classed(a,1).classed("crisp",t.crisp!==!1),g.attr("transform",t.transFn).attr("d",t.path).each(function(_){return gf.stroke(An.select(this),_.minor?r.minor.gridcolor:r.gridcolor||"#ddd")}).style("stroke-dasharray",function(_){return on.dashStyle(_.minor?r.minor.griddash:r.griddash,_.minor?r.minor.gridwidth:r.gridwidth)}).style("stroke-width",function(_){return(_.minor?v:r._gw)+"px"}).style("display",null),typeof t.path=="function"&&g.attr("d",t.path)}}I0(r,[Bm,Ym])}};Ve.drawZeroLine=function(e,r,t){t=t||t;var a=r._id+"zl",n=Ve.shouldShowZeroLine(e,r,t.counterAxis),i=t.layer.selectAll("path."+a).data(n?[{x:0,id:r._id}]:[]);i.exit().remove(),i.enter().append("path").classed(a,1).classed("zl",1).classed("crisp",t.crisp!==!1).each(function(){t.layer.selectAll("path").sort(function(l,o){return DV(l.id,o.id)})}),i.attr("transform",t.transFn).attr("d",t.path).call(gf.stroke,r.zerolinecolor||gf.defaultLine).style("stroke-width",on.crispRound(e,r.zerolinewidth,r._gw||1)+"px").style("display",null),I0(r,[Om])};Ve.drawLabels=function(e,r,t){t=t||{};var a=e._fullLayout,n=r._id,i=r.zerolinelayer==="above traces",l=t.cls||n+"tick",o=t.vals.filter(function(V){return V.text}),s=t.labelFns,u=t.secondary?0:r.tickangle,f=(r._prevTickAngles||{})[l],v=t.layer.selectAll("g."+l).data(r.showticklabels?o:[],F0),h=[];v.enter().append("g").classed(l,1).append("text").attr("text-anchor","middle").each(function(V){var Q=An.select(this),K=e._promises.length;Q.call(bo.positionText,s.xFn(V),s.yFn(V)).call(on.font,{family:V.font,size:V.fontSize,color:V.fontColor,weight:V.fontWeight,style:V.fontStyle,variant:V.fontVariant,textcase:V.fontTextcase,lineposition:V.fontLineposition,shadow:V.fontShadow}).text(V.text).call(bo.convertToTspans,e),e._promises[K]?h.push(e._promises.pop().then(function(){d(Q,u)})):d(Q,u)}),I0(r,[f8]),v.exit().remove(),t.repositionOnUpdate&&v.each(function(V){An.select(this).select("text").call(bo.positionText,s.xFn(V),s.yFn(V))});function d(V,Q){V.each(function(K){var ne=An.select(this),me=ne.select(".text-math-group"),de=s.anchorFn(K,Q),ke=t.transFn.call(ne.node(),K)+(Ht(Q)&&+Q!=0?" rotate("+Q+","+s.xFn(K)+","+(s.yFn(K)-K.fontSize/2)+")":""),re=bo.lineCount(ne),Ce=xf*K.fontSize,ce=s.heightFn(K,Ht(Q)?+Q:0,(re-1)*Ce);if(ce&&(ke+=Is(0,ce)),me.empty()){var _e=ne.select("text");_e.attr({transform:ke,"text-anchor":de}),_e.style("display",null),r._adjustTickLabelsOverflow&&r._adjustTickLabelsOverflow()}else{var se=on.bBox(me.node()).width,ge=se*{end:-.5,start:.5}[de];me.attr("transform",ke+Is(ge,0))}})}r._adjustTickLabelsOverflow=function(){var V=r.ticklabeloverflow;if(!(!V||V==="allow")){var Q=V.indexOf("hide")!==-1,K=r._id.charAt(0)==="x",ne=0,me=K?e._fullLayout.width:e._fullLayout.height;if(V.indexOf("domain")!==-1){var de=gr.simpleMap(r.range,r.r2l);ne=r.l2p(de[0])+r._offset,me=r.l2p(de[1])+r._offset}var ke=Math.min(ne,me),re=Math.max(ne,me),Ce=r.side,ce=1/0,_e=-1/0;v.each(function($){var U=An.select(this),ye=U.select(".text-math-group");if(ye.empty()){var we=on.bBox(U.node()),pe=0;K?(we.right>re||we.leftre||we.top+(r.tickangle?0:$.fontSize/4)r["_visibleLabelMin_"+de._id]?U.style("display","none"):re.K==="tick"&&!ke&&U.node().style.display!=="none"&&U.style("display",null)})})})})},d(v,f+1?f:u);function m(){return h.length&&Promise.all(h)}var y=null;function g(){if(d(v,u),o.length&&r.autotickangles&&(r.type!=="log"||String(r.dtick).charAt(0)!=="D")){y=r.autotickangles[0];var V=0,Q=[],K,ne=1;v.each(function(He){V=Math.max(V,He.fontSize);var Ye=r.l2p(He.x),ie=Vm(this),be=on.bBox(ie.node());ne=Math.max(ne,bo.lineCount(ie)),Q.push({top:0,bottom:10,height:10,left:Ye-be.width/2,right:Ye+be.width/2+2,width:be.width+2})});var me=(r.tickson==="boundaries"||r.showdividers)&&!t.secondary,de=o.length,ke=Math.abs((o[de-1].x-o[0].x)*r._m)/(de-1),re=me?ke/2:ke,Ce=me?r.ticklen:V*1.25*ne,ce=Math.sqrt(Math.pow(re,2)+Math.pow(Ce,2)),_e=re/ce,se=r.autotickangles.map(function(He){return He*Math.PI/180}),ge=se.find(function(He){return Math.abs(Math.cos(He))<=_e});ge===void 0&&(ge=se.reduce(function(He,Ye){return Math.abs(Math.cos(He))X*J&&(F=J,D[q]=R[q]=I[q])}var Y=Math.abs(F-z);Y-M>0?(Y-=M,M*=1+M/Y):M=0,r._id.charAt(0)!=="y"&&(M=-M),D[k]=T.p2r(T.r2p(R[k])+C*M),T.autorange==="min"||T.autorange==="max reversed"?(D[0]=null,T._rangeInitial0=void 0,T._rangeInitial1=void 0):(T.autorange==="max"||T.autorange==="min reversed")&&(D[1]=null,T._rangeInitial0=void 0,T._rangeInitial1=void 0),a._insideTickLabelsUpdaterange[T._name+".range"]=D}var O=gr.syncOrAsync(_);return O&&O.then&&e._promises.push(O),O};function tG(e,r,t){var a=r._id+"divider",n=t.vals,i=t.layer.selectAll("path."+a).data(n,F0);i.exit().remove(),i.enter().insert("path",":first-child").classed(a,1).classed("crisp",1).call(gf.stroke,r.dividercolor).style("stroke-width",on.crispRound(e,r.dividerwidth,1)+"px"),i.attr("transform",t.transFn).attr("d",t.path)}Ve.getPxPosition=function(e,r){var t=e._fullLayout._size,a=r._id.charAt(0),n=r.side,i;if(r.anchor!=="free"?i=r._anchorAxis:a==="x"?i={_offset:t.t+(1-(r.position||0))*t.h,_length:0}:a==="y"&&(i={_offset:t.l+(r.position||0)*t.w+r._shift,_length:0}),n==="top"||n==="left")return i._offset;if(n==="bottom"||n==="right")return i._offset+i._length};function b8(e){var r=e.title.font.size,t=(e.title.text.match(bo.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?r*(_o+t*xf):t?r*(t+1)*xf:r}function aG(e,r){var t=e._fullLayout,a=r._id,n=a.charAt(0),i=r.title.font.size,l,o=(r.title.text.match(bo.BR_TAG_ALL)||[]).length;if(r.title.hasOwnProperty("standoff"))r.side==="bottom"||r.side==="right"?l=r._depth+r.title.standoff+i*_o:(r.side==="top"||r.side==="left")&&(l=r._depth+r.title.standoff+i*(mf+o*xf));else{var s=wf(r);if(r.type==="multicategory")l=r._depth;else{var u=1.5*i;s&&(u=.5*i,r.ticks==="outside"&&(u+=r.ticklen)),l=10+u+(r.linewidth?r.linewidth-1:0)}s||(n==="x"?l+=r.side==="top"?i*(r.showticklabels?1:0):i*(r.showticklabels?1.5:.5):l+=r.side==="right"?i*(r.showticklabels?1:.5):i*(r.showticklabels?.5:0))}var f=Ve.getPxPosition(e,r),v,h,d;n==="x"?(h=r._offset+r._length/2,d=r.side==="top"?f-l:f+l):(d=r._offset+r._length/2,h=r.side==="right"?f+l:f-l,v={rotate:"-90",offset:0});var m;if(r.type!=="multicategory"){var y=r._selections[r._id+"tick"];if(m={selection:y,side:r.side},y&&y.node()&&y.node().parentNode){var g=on.getTranslate(y.node().parentNode);m.offsetLeft=g.x,m.offsetTop=g.y}r.title.hasOwnProperty("standoff")&&(m.pad=0)}return r._titleStandoff=l,wV.draw(e,a+"title",{propContainer:r,propName:r._name+".title.text",placeholder:t._dfltTitle[n],avoid:m,transform:v,attributes:{x:h,y:d,"text-anchor":"middle"}})}Ve.shouldShowZeroLine=function(e,r,t){var a=gr.simpleMap(r.range,r.r2l);return a[0]*a[1]<=0&&r.zeroline&&(r.type==="linear"||r.type==="-")&&!(r.rangebreaks&&r.maskBreaks(0)===z0)&&(C8(r,0)||!nG(e,r,t,a)||iG(e,r))};Ve.clipEnds=function(e,r){return r.filter(function(t){return C8(e,t.x)})};function C8(e,r){var t=e.l2p(r);return t>1&&t1)for(n=1;n=n.min&&e=CV:/%L/.test(r)?e>=SV:/%[SX]/.test(r)?e>=P0:/%M/.test(r)?e>=bf:/%[HI]/.test(r)?e>=Ti:/%p/.test(r)?e>=xl:/%[Aadejuwx]/.test(r)?e>=Ra:/%[UVW]/.test(r)?e>=sn:/%[Bbm]/.test(r)?e>=E0:/%[q]/.test(r)?e>=D0:/%[Yy]/.test(r)?e>=q0:!0}});var P8=Z((ose,E8)=>{"use strict";E8.exports=function(r,t,a){var n,i;if(a){var l=t==="reversed"||t==="min reversed"||t==="max reversed";n=a[l?1:0],i=a[l?0:1]}var o=r("autorangeoptions.minallowed",i===null?n:void 0),s=r("autorangeoptions.maxallowed",n===null?i:void 0);o===void 0&&r("autorangeoptions.clipmin"),s===void 0&&r("autorangeoptions.clipmax"),r("autorangeoptions.include")}});var Qm=Z((sse,R8)=>{"use strict";var cG=P8();R8.exports=function(r,t,a,n){var i=t._template||{},l=t.type||i.type||"-";a("minallowed"),a("maxallowed");var o=a("range");if(!o){var s;!n.noInsiderange&&l!=="log"&&(s=a("insiderange"),s&&(s[0]===null||s[1]===null)&&(t.insiderange=!1,s=void 0),s&&(o=a("range",s)))}var u=t.getAutorangeDflt(o,n),f=a("autorange",u),v;o&&(o[0]===null&&o[1]===null||(o[0]===null||o[1]===null)&&(f==="reversed"||f===!0)||o[0]!==null&&(f==="min"||f==="max reversed")||o[1]!==null&&(f==="max"||f==="min reversed"))&&(o=void 0,delete t.range,t.autorange=!0,v=!0),v||(u=t.getAutorangeDflt(o,n),f=a("autorange",u)),f&&(cG(a,f,o),(l==="linear"||l==="-")&&a("rangemode")),t.cleanRange()}});var N8=Z((use,z8)=>{var vG={left:0,top:0};z8.exports=hG;function hG(e,r,t){r=r||e.currentTarget||e.srcElement,Array.isArray(t)||(t=[0,0]);var a=e.clientX||0,n=e.clientY||0,i=dG(r);return t[0]=a-i.left,t[1]=n-i.top,t}function dG(e){return e===window||e===document||e===document.body?vG:e.getBoundingClientRect()}});var $m=Z((fse,F8)=>{"use strict";var pG=kp();function mG(){var e=!1;try{var r=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,r),window.removeEventListener("test",null,r)}catch(t){e=!1}return e}F8.exports=pG&&mG()});var H8=Z((cse,I8)=>{"use strict";I8.exports=function(r,t,a,n,i){var l=(r-a)/(n-a),o=l+t/(n-a),s=(l+o)/2;return i==="left"||i==="bottom"?l:i==="center"||i==="middle"?s:i==="right"||i==="top"?o:l<2/3-s?l:o>4/3-s?o:s}});var Y8=Z((vse,B8)=>{"use strict";var O8=Ie(),yG=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];B8.exports=function(r,t,a,n){return a==="left"?r=0:a==="center"?r=1:a==="right"?r=2:r=O8.constrain(Math.floor(r*3),0,2),n==="bottom"?t=0:n==="middle"?t=1:n==="top"?t=2:t=O8.constrain(Math.floor(t*3),0,2),yG[t][r]}});var V8=Z((hse,U8)=>{"use strict";var gG=af(),bG=Iv(),xG=Ju().getGraphDiv,_G=Gu(),jm=U8.exports={};jm.wrapped=function(e,r,t){e=xG(e),e._fullLayout&&bG.clear(e._fullLayout._uid+_G.HOVERID),jm.raw(e,r,t)};jm.raw=function(r,t){var a=r._fullLayout,n=r._hoverdata;t||(t={}),!(t.target&&!r._dragged&&gG.triggerHandler(r,"plotly_beforehover",t)===!1)&&(a._hoverlayer.selectAll("g").remove(),a._hoverlayer.selectAll("line").remove(),a._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,t.target&&n&&r.emit("plotly_unhover",{event:t,points:n}))}});var Qn=Z((dse,X8)=>{"use strict";var wG=N8(),ey=Cp(),TG=$m(),MG=Ie().removeElement,AG=ya(),wo=X8.exports={};wo.align=H8();wo.getCursor=Y8();var W8=V8();wo.unhover=W8.wrapped;wo.unhoverRaw=W8.raw;wo.init=function(r){var t=r.gd,a=1,n=t._context.doubleClickDelay,i=r.element,l,o,s,u,f,v,h,d;t._mouseDownTime||(t._mouseDownTime=0),i.style.pointerEvents="all",i.onmousedown=g,TG?(i._ontouchstart&&i.removeEventListener("touchstart",i._ontouchstart),i._ontouchstart=g,i.addEventListener("touchstart",g,{passive:!1})):i.ontouchstart=g;function m(T,b,M){return Math.abs(T)n&&(a=Math.max(a-1,1)),t._dragged)r.doneFn&&r.doneFn();else{var b;v.target===h?b=v:(b={target:h,srcElement:h,toElement:h},Object.keys(v).concat(Object.keys(v.__proto__)).forEach(M=>{var C=v[M];!b[M]&&typeof C!="function"&&(b[M]=C)})),r.clickFn&&r.clickFn(a,b),d||h.dispatchEvent(new MouseEvent("click",T))}t._dragging=!1,t._dragged=!1}};function Z8(){var e=document.createElement("div");e.className="dragcover";var r=e.style;return r.position="fixed",r.left=0,r.right=0,r.top=0,r.bottom=0,r.zIndex=999999999,r.background="none",document.body.appendChild(e),e}wo.coverSlip=Z8;function G8(e){return wG(e.changedTouches?e.changedTouches[0]:e,document.body)}});var _l=Z((pse,J8)=>{"use strict";J8.exports=function(r,t){(r.attr("class")||"").split(" ").forEach(function(a){a.indexOf("cursor-")===0&&r.classed(a,!1)}),t&&r.classed("cursor-"+t,!0)}});var $8=Z((mse,Q8)=>{"use strict";var ry=_l(),Tf="data-savedcursor",K8="!!";Q8.exports=function(r,t){var a=r.attr(Tf);if(t){if(!a){for(var n=(r.attr("class")||"").split(" "),i=0;i{"use strict";var ty=ma(),kG=hi();j8.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:kG.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:ty({editType:"legend"}),grouptitlefont:ty({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:ty({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var O0=Z(H0=>{"use strict";H0.isGrouped=function(r){return(r.traceorder||"").indexOf("grouped")!==-1};H0.isVertical=function(r){return r.orientation!=="h"};H0.isReversed=function(r){return(r.traceorder||"").indexOf("reversed")!==-1}});var ly=Z((bse,ew)=>{"use strict";var ny=br(),un=Ie(),SG=ct(),CG=Vn(),LG=ay(),qG=ms(),iy=O0();function DG(e,r,t,a){var n=r[e]||{},i=SG.newContainer(t,e);function l(Y,O){return un.coerce(n,i,LG,Y,O)}var o=un.coerceFont(l,"font",t.font);l("bgcolor",t.paper_bgcolor),l("bordercolor");var s=l("visible");if(s){for(var u,f=function(Y,O){var V=u._input,Q=u;return un.coerce(V,Q,CG,Y,O)},v=t.font||{},h=un.coerceFont(l,"grouptitlefont",v,{overrideDflt:{size:Math.round(v.size*1.1)}}),d=0,m=!1,y="normal",g=(t.shapes||[]).filter(function(Y){return Y.showlegend}),_=a.concat(g).filter(function(Y){return e===(Y.legend||"legend")}),w=0;w<_.length;w++)if(u=_[w],!!u.visible){var T=u._isShape;(u.showlegend||u._dfltShowLegend&&!(u._module&&u._module.attributes&&u._module.attributes.showlegend&&u._module.attributes.showlegend.dflt===!1))&&(d++,u.showlegend&&(m=!0,(!T&&ny.traceIs(u,"pie-like")||u._input.showlegend===!0)&&d++),un.coerceFont(f,"legendgrouptitle.font",h)),(!T&&ny.traceIs(u,"bar")&&t.barmode==="stack"||["tonextx","tonexty"].indexOf(u.fill)!==-1)&&(y=iy.isGrouped({traceorder:y})?"grouped+reversed":"reversed"),u.legendgroup!==void 0&&u.legendgroup!==""&&(y=iy.isReversed({traceorder:y})?"reversed+grouped":"grouped")}var b=un.coerce(r,t,qG,"showlegend",m&&d>(e==="legend"?1:0));if(b===!1&&(t[e]=void 0),!(b===!1&&!n.uirevision)&&(l("uirevision",t.uirevision),b!==!1)){l("borderwidth");var M=l("orientation"),C=l("yref"),k=l("xref"),q=M==="h",D=C==="paper",R=k==="paper",z,F,I,H="left";q?(z=0,ny.getComponentMethod("rangeslider","isVisible")(r.xaxis)?D?(F=1.1,I="bottom"):(F=1,I="top"):D?(F=-.1,I="top"):(F=0,I="bottom")):(F=1,I="auto",R?z=1.02:(z=1,H="right")),un.coerce(n,i,{x:{valType:"number",editType:"legend",min:R?-2:0,max:R?3:1,dflt:z}},"x"),un.coerce(n,i,{y:{valType:"number",editType:"legend",min:D?-2:0,max:D?3:1,dflt:F}},"y"),l("traceorder",y),iy.isGrouped(t[e])&&l("tracegroupgap"),l("entrywidth"),l("entrywidthmode"),l("indentation"),l("itemsizing"),l("itemwidth"),l("itemclick"),l("itemdoubleclick"),l("groupclick"),l("xanchor",H),l("yanchor",I),l("maxheight"),l("valign"),un.noneOrAll(n,i,["x","y"]);var J=l("title.text");if(J){l("title.side",q?"left":"top");var X=un.extendFlat({},o,{size:un.bigFont(o.size)});un.coerceFont(l,"title.font",X)}}}}ew.exports=function(r,t,a){var n,i=a.slice(),l=t.shapes;if(l)for(n=0;n{"use strict";var Bs=br(),sy=Ie(),EG=sy.pushUnique,oy=!0;rw.exports=function(r,t,a){var n=t._fullLayout;if(t._dragged||t._editing)return;var i=n.legend.itemclick,l=n.legend.itemdoubleclick,o=n.legend.groupclick;a===1&&i==="toggle"&&l==="toggleothers"&&oy&&t.data&&t._context.showTips&&sy.notifier(sy._(t,"Double-click on legend to isolate one trace"),"long"),oy=!1;var s;if(a===1?s=i:a===2&&(s=l),!s)return;var u=o==="togglegroup",f=n.hiddenlabels?n.hiddenlabels.slice():[],v=r.data()[0][0];if(v.groupTitle&&v.noClick)return;var h=t._fullData,d=(n.shapes||[]).filter(function(Ne){return Ne.showlegend}),m=h.concat(d),y=v.trace;y._isShape&&(y=y._fullInput);var g=y.legendgroup,_,w,T,b,M,C,k={},q=[],D=[],R=[];function z(Ne,Be){var Ge=q.indexOf(Ne),qe=k.visible;return qe||(qe=k.visible=[]),q.indexOf(Ne)===-1&&(q.push(Ne),Ge=q.length-1),qe[Ge]=Be,Ge}var F=(n.shapes||[]).map(function(Ne){return Ne._input}),I=!1;function H(Ne,Be){F[Ne].visible=Be,I=!0}function J(Ne,Be){if(!(v.groupTitle&&!u)){var Ge=Ne._fullInput||Ne,qe=Ge._isShape,He=Ge.index;He===void 0&&(He=Ge._index);var Ye=Ge.visible===!1?!1:Be;qe?H(He,Ye):z(He,Ye)}}var X=y.legend,Y=y._fullInput,O=Y&&Y._isShape;if(!O&&Bs.traceIs(y,"pie-like")){var V=v.label,Q=f.indexOf(V);if(s==="toggle")Q===-1?f.push(V):f.splice(Q,1);else if(s==="toggleothers"){var K=Q!==-1,ne=[];for(_=0;_{"use strict";aw.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var lw=Z((wse,iw)=>{"use strict";var nw=br(),fy=O0();iw.exports=function(r,t,a){var n=t._inHover,i=fy.isGrouped(t),l=fy.isReversed(t),o={},s=[],u=!1,f={},v=0,h=0,d,m;function y(Y,O,V){if(t.visible!==!1&&!(a&&Y!==t._id))if(O===""||!fy.isGrouped(t)){var Q="~~i"+v;s.push(Q),o[Q]=[V],v++}else s.indexOf(O)===-1?(s.push(O),u=!0,o[O]=[V]):o[O].push(V)}for(d=0;dR&&(D=R)}k[d][0]._groupMinRank=D,k[d][0]._preGroupSort=d}var z=function(Y,O){return Y[0]._groupMinRank-O[0]._groupMinRank||Y[0]._preGroupSort-O[0]._preGroupSort},F=function(Y,O){return Y.trace.legendrank-O.trace.legendrank||Y._preSort-O._preSort};for(k.forEach(function(Y,O){Y[0]._preGroupSort=O}),k.sort(z),d=0;d{"use strict";var B0=Ie();function ow(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}To.formatPiePercent=function(r,t){var a=ow((r*100).toPrecision(3));return B0.numSeparate(a,t)+"%"};To.formatPieValue=function(r,t){var a=ow(r.toPrecision(10));return B0.numSeparate(a,t)};To.getFirstFilled=function(r,t){if(B0.isArrayOrTypedArray(r))for(var a=0;a{"use strict";var PG=at(),RG=Er();sw.exports=function(r,t,a,n){var i=a.marker.pattern;i&&i.shape?PG.pointStyle(r,a,n,t):RG.fill(r,t.color)}});var U0=Z((Ase,vw)=>{"use strict";var fw=Er(),cw=Y0().castOption,zG=uw();vw.exports=function(r,t,a,n){var i=a.marker.line,l=cw(i.color,t.pts)||fw.defaultLine,o=cw(i.width,t.pts)||0;r.call(zG,t,a,n).style("stroke-width",o).call(fw.stroke,l)}});var dy=Z((kse,gw)=>{"use strict";var za=Ir(),cy=br(),Aa=Ie(),hw=Aa.strTranslate,fn=at(),kn=Er(),vy=Mn().extractOpts,V0=ln(),NG=U0(),FG=Y0().castOption,IG=uy(),dw=12,pw=5,Mo=2,HG=10,Ys=5;gw.exports=function(r,t,a){var n=t._fullLayout;a||(a=n.legend);var i=a.itemsizing==="constant",l=a.itemwidth,o=(l+IG.itemGap*2)/2,s=hw(o,0),u=function(k,q,D,R){var z;if(k+1)z=k;else if(q&&q.width>0)z=q.width;else return 0;return i?R:Math.min(z,D)};r.each(function(k){var q=za.select(this),D=Aa.ensureSingle(q,"g","layers");D.style("opacity",k[0].trace.opacity);var R=a.indentation,z=a.valign,F=k[0].lineHeight,I=k[0].height;if(z==="middle"&&R===0||!F||!I)D.attr("transform",null);else{var H={top:1,bottom:-1}[z],J=H*(.5*(F-I+3))||0,X=a.indentation;D.attr("transform",hw(X,J))}var Y=D.selectAll("g.legendfill").data([k]);Y.enter().append("g").classed("legendfill",!0);var O=D.selectAll("g.legendlines").data([k]);O.enter().append("g").classed("legendlines",!0);var V=D.selectAll("g.legendsymbols").data([k]);V.enter().append("g").classed("legendsymbols",!0),V.selectAll("g.legendpoints").data([k]).enter().append("g").classed("legendpoints",!0)}).each(C).each(h).each(m).each(d).each(g).each(b).each(T).each(f).each(v).each(_).each(w);function f(k){var q=mw(k),D=q.showFill,R=q.showLine,z=q.showGradientLine,F=q.showGradientFill,I=q.anyFill,H=q.anyLine,J=k[0],X=J.trace,Y,O,V=vy(X),Q=V.colorscale,K=V.reversescale,ne=function(_e){if(_e.size())if(D)fn.fillGroupStyle(_e,t,!0);else{var se="legendfill-"+X.uid;fn.gradient(_e,t,se,hy(K),Q,"fill")}},me=function(_e){if(_e.size()){var se="legendline-"+X.uid;fn.lineGroupStyle(_e),fn.gradient(_e,t,se,hy(K),Q,"stroke")}},de=V0.hasMarkers(X)||!I?"M5,0":H?"M5,-2":"M5,-3",ke=za.select(this),re=ke.select(".legendfill").selectAll("path").data(D||F?[k]:[]);if(re.enter().append("path").classed("js-fill",!0),re.exit().remove(),re.attr("d",de+"h"+l+"v6h-"+l+"z").call(ne),R||z){var Ce=u(void 0,X.line,HG,pw);O=Aa.minExtend(X,{line:{width:Ce}}),Y=[Aa.minExtend(J,{trace:O})]}var ce=ke.select(".legendlines").selectAll("path").data(R||z?[Y]:[]);ce.enter().append("path").classed("js-line",!0),ce.exit().remove(),ce.attr("d",de+(z?"l"+l+",0.0001":"h"+l)).call(R?fn.lineGroupStyle:me)}function v(k){var q=mw(k),D=q.anyFill,R=q.anyLine,z=q.showLine,F=q.showMarker,I=k[0],H=I.trace,J=!F&&!R&&!D&&V0.hasText(H),X,Y;function O(re,Ce,ce,_e){var se=Aa.nestedProperty(H,re).get(),ge=Aa.isArrayOrTypedArray(se)&&Ce?Ce(se):se;if(i&&ge&&_e!==void 0&&(ge=_e),ce){if(gece[1])return ce[1]}return ge}function V(re){return I._distinct&&I.index&&re[I.index]?re[I.index]:re[0]}if(F||J||z){var Q={},K={};if(F){Q.mc=O("marker.color",V),Q.mx=O("marker.symbol",V),Q.mo=O("marker.opacity",Aa.mean,[.2,1]),Q.mlc=O("marker.line.color",V),Q.mlw=O("marker.line.width",Aa.mean,[0,5],Mo),K.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var ne=O("marker.size",Aa.mean,[2,16],dw);Q.ms=ne,K.marker.size=ne}z&&(K.line={width:O("line.width",V,[0,10],pw)}),J&&(Q.tx="Aa",Q.tp=O("textposition",V),Q.ts=10,Q.tc=O("textfont.color",V),Q.tf=O("textfont.family",V),Q.tw=O("textfont.weight",V),Q.ty=O("textfont.style",V),Q.tv=O("textfont.variant",V),Q.tC=O("textfont.textcase",V),Q.tE=O("textfont.lineposition",V),Q.tS=O("textfont.shadow",V)),X=[Aa.minExtend(I,Q)],Y=Aa.minExtend(H,K),Y.selectedpoints=null,Y.texttemplate=null}var me=za.select(this).select("g.legendpoints"),de=me.selectAll("path.scatterpts").data(F?X:[]);de.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",s),de.exit().remove(),de.call(fn.pointStyle,Y,t),F&&(X[0].mrc=3);var ke=me.selectAll("g.pointtext").data(J?X:[]);ke.enter().append("g").classed("pointtext",!0).append("text").attr("transform",s),ke.exit().remove(),ke.selectAll("text").call(fn.textPointStyle,Y,t)}function h(k){var q=k[0].trace,D=q.type==="waterfall";if(k[0]._distinct&&D){var R=k[0].trace[k[0].dir].marker;return k[0].mc=R.color,k[0].mlw=R.line.width,k[0].mlc=R.line.color,y(k,this,"waterfall")}var z=[];q.visible&&D&&(z=k[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var F=za.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(z);F.enter().append("path").classed("legendwaterfall",!0).attr("transform",s).style("stroke-miterlimit",1),F.exit().remove(),F.each(function(I){var H=za.select(this),J=q[I[0]].marker,X=u(void 0,J.line,Ys,Mo);H.attr("d",I[1]).style("stroke-width",X+"px").call(kn.fill,J.color),X&&H.call(kn.stroke,J.line.color)})}function d(k){y(k,this)}function m(k){y(k,this,"funnel")}function y(k,q,D){var R=k[0].trace,z=R.marker||{},F=z.line||{},I=z.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",H=D?R.visible&&R.type===D:cy.traceIs(R,"bar"),J=za.select(q).select("g.legendpoints").selectAll("path.legend"+D).data(H?[k]:[]);J.enter().append("path").classed("legend"+D,!0).attr("d",I).attr("transform",s),J.exit().remove(),J.each(function(X){var Y=za.select(this),O=X[0],V=u(O.mlw,z.line,Ys,Mo);Y.style("stroke-width",V+"px");var Q=O.mcc;if(!a._inHover&&"mc"in O){var K=vy(z),ne=K.mid;ne===void 0&&(ne=(K.max+K.min)/2),Q=fn.tryColorscale(z,"")(ne)}var me=Q||O.mc||z.color,de=z.pattern,ke=fn.getPatternAttr,re=de&&(ke(de.shape,0,"")||ke(de.path,0,""));if(re){var Ce=ke(de.bgcolor,0,null),ce=ke(de.fgcolor,0,null),_e=de.fgopacity,se=yw(de.size,8,10),ge=yw(de.solidity,.5,1),B="legend-"+R.uid;Y.call(fn.pattern,"legend",t,B,re,se,ge,Q,de.fillmode,Ce,ce,_e)}else Y.call(kn.fill,me);V&&kn.stroke(Y,O.mlc||F.color)})}function g(k){var q=k[0].trace,D=za.select(this).select("g.legendpoints").selectAll("path.legendbox").data(q.visible&&cy.traceIs(q,"box-violin")?[k]:[]);D.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),D.exit().remove(),D.each(function(){var R=za.select(this);if((q.boxpoints==="all"||q.points==="all")&&kn.opacity(q.fillcolor)===0&&kn.opacity((q.line||{}).color)===0){var z=Aa.minExtend(q,{marker:{size:i?dw:Aa.constrain(q.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});D.call(fn.pointStyle,z,t)}else{var F=u(void 0,q.line,Ys,Mo);R.style("stroke-width",F+"px").call(kn.fill,q.fillcolor),F&&kn.stroke(R,q.line.color)}})}function _(k){var q=k[0].trace,D=za.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(q.visible&&q.type==="candlestick"?[k,k]:[]);D.enter().append("path").classed("legendcandle",!0).attr("d",function(R,z){return z?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",s).style("stroke-miterlimit",1),D.exit().remove(),D.each(function(R,z){var F=za.select(this),I=q[z?"increasing":"decreasing"],H=u(void 0,I.line,Ys,Mo);F.style("stroke-width",H+"px").call(kn.fill,I.fillcolor),H&&kn.stroke(F,I.line.color)})}function w(k){var q=k[0].trace,D=za.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(q.visible&&q.type==="ohlc"?[k,k]:[]);D.enter().append("path").classed("legendohlc",!0).attr("d",function(R,z){return z?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",s).style("stroke-miterlimit",1),D.exit().remove(),D.each(function(R,z){var F=za.select(this),I=q[z?"increasing":"decreasing"],H=u(void 0,I.line,Ys,Mo);F.style("fill","none").call(fn.dashLine,I.line.dash,H),H&&kn.stroke(F,I.line.color)})}function T(k){M(k,this,"pie")}function b(k){M(k,this,"funnelarea")}function M(k,q,D){var R=k[0],z=R.trace,F=D?z.visible&&z.type===D:cy.traceIs(z,D),I=za.select(q).select("g.legendpoints").selectAll("path.legend"+D).data(F?[k]:[]);if(I.enter().append("path").classed("legend"+D,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),I.exit().remove(),I.size()){var H=z.marker||{},J=u(FG(H.line.width,R.pts),H.line,Ys,Mo),X="pieLike",Y=Aa.minExtend(z,{marker:{line:{width:J}}},X),O=Aa.minExtend(R,{trace:Y},X);NG(I,O,Y,t)}}function C(k){var q=k[0].trace,D,R=[];if(q.visible)switch(q.type){case"histogram2d":case"heatmap":R=[["M-15,-2V4H15V-2Z"]],D=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":R=[["M-6,-6V6H6V-6Z"]],D=!0;break;case"densitymapbox":case"densitymap":R=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],D="radial";break;case"cone":R=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],D=!1;break;case"streamtube":R=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],D=!1;break;case"surface":R=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],D=!0;break;case"mesh3d":R=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],D=!1;break;case"volume":R=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],D=!0;break;case"isosurface":R=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],D=!1;break}var z=za.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(R);z.enter().append("path").classed("legend3dandfriends",!0).attr("transform",s).style("stroke-miterlimit",1),z.exit().remove(),z.each(function(F,I){var H=za.select(this),J=vy(q),X=J.colorscale,Y=J.reversescale,O=function(ne){if(ne.size()){var me="legendfill-"+q.uid;fn.gradient(ne,t,me,hy(Y,D==="radial"),X,"fill")}},V;if(X){if(!D){var K=X.length;V=I===0?X[Y?K-1:0][1]:I===1?X[Y?0:K-1][1]:X[Math.floor((K-1)/2)][1]}}else{var Q=q.vertexcolor||q.facecolor||q.color;V=Aa.isArrayOrTypedArray(Q)?Q[I]||Q[0]:Q}H.attr("d",F[0]),V?H.call(kn.fill,V):H.call(O)})}};function hy(e,r){var t=r?"radial":"horizontal";return t+(e?"":"reversed")}function mw(e){var r=e[0].trace,t=r.contours,a=V0.hasLines(r),n=V0.hasMarkers(r),i=r.visible&&r.fill&&r.fill!=="none",l=!1,o=!1;if(t){var s=t.coloring;s==="lines"?l=!0:a=s==="none"||s==="heatmap"||t.showlines,t.type==="constraint"?i=t._operation!=="=":(s==="fill"||s==="heatmap")&&(o=!0)}return{showMarker:n,showLine:a,showFill:i,showGradientLine:l,showGradientFill:o,anyLine:a||l,anyFill:i||o}}function yw(e,r,t){return e&&Aa.isArrayOrTypedArray(e)?r:e>t?t:e}});var gy=Z((Sse,Cw)=>{"use strict";var Qa=Ir(),Ot=Ie(),my=Ft(),Gs=br(),bw=af(),py=Qn(),Bt=at(),W0=Er(),Ao=Ta(),xw=tw(),Xt=uy(),yy=Pa(),kw=yy.LINE_SPACING,Vs=yy.FROM_TL,_w=yy.FROM_BR,ww=lw(),OG=dy(),Tw=O0(),Us=1,BG=/^legend[0-9]*$/;Cw.exports=function(r,t){if(t)Mw(r,t);else{var a=r._fullLayout,n=a._legends,i=a._infolayer.selectAll('[class^="legend"]');i.each(function(){var u=Qa.select(this),f=u.attr("class"),v=f.split(" ")[0];v.match(BG)&&n.indexOf(v)===-1&&u.remove()});for(var l=0;l1)}var m=a.hiddenlabels||[];if(!o&&(!a.showlegend||!s.length))return l.selectAll("."+n).remove(),a._topdefs.select("#"+i).remove(),my.autoMargin(e,n);var y=Ot.ensureSingle(l,"g",n,function(q){o||q.attr("pointer-events","all")}),g=Ot.ensureSingleById(a._topdefs,"clipPath",i,function(q){q.append("rect")}),_=Ot.ensureSingle(y,"rect","bg",function(q){q.attr("shape-rendering","crispEdges")});_.call(W0.stroke,t.bordercolor).call(W0.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px");var w=Ot.ensureSingle(y,"g","scrollbox"),T=t.title;t._titleWidth=0,t._titleHeight=0;var b;T.text?(b=Ot.ensureSingle(w,"text",n+"titletext"),b.attr("text-anchor","start").call(Bt.font,T.font).text(T.text),Z0(b,w,e,t,Us)):w.selectAll("."+n+"titletext").remove();var M=Ot.ensureSingle(y,"rect","scrollbar",function(q){q.attr(Xt.scrollBarEnterAttrs).call(W0.fill,Xt.scrollBarColor)}),C=w.selectAll("g.groups").data(s);C.enter().append("g").attr("class","groups"),C.exit().remove();var k=C.selectAll("g.traces").data(Ot.identity);k.enter().append("g").attr("class","traces"),k.exit().remove(),k.style("opacity",function(q){var D=q[0].trace;return Gs.traceIs(D,"pie-like")?m.indexOf(q[0].label)!==-1?.5:1:D.visible==="legendonly"?.5:1}).each(function(){Qa.select(this).call(UG,e,t)}).call(OG,e,t).each(function(){o||Qa.select(this).call(VG,e,n)}),Ot.syncOrAsync([my.previousPromises,function(){return ZG(e,C,k,t)},function(){var q=a._size,D=t.borderwidth,R=t.xref==="paper",z=t.yref==="paper";if(T.text&&YG(b,t,D),!o){var F,I;R?F=q.l+q.w*t.x-Vs[X0(t)]*t._width:F=a.width*t.x-Vs[X0(t)]*t._width,z?I=q.t+q.h*(1-t.y)-Vs[J0(t)]*t._effHeight:I=a.height*(1-t.y)-Vs[J0(t)]*t._effHeight;var H=XG(e,n,F,I);if(H)return;if(a.margin.autoexpand){var J=F,X=I;F=R?Ot.constrain(F,0,a.width-t._width):J,I=z?Ot.constrain(I,0,a.height-t._effHeight):X,F!==J&&Ot.log("Constrain "+n+".x to make legend fit inside graph"),I!==X&&Ot.log("Constrain "+n+".y to make legend fit inside graph")}Bt.setTranslate(y,F,I)}if(M.on(".drag",null),y.on("wheel",null),o||t._height<=t._maxHeight||e._context.staticPlot){var Y=t._effHeight;o&&(Y=t._height),_.attr({width:t._width-D,height:Y-D,x:D/2,y:D/2}),Bt.setTranslate(w,0,0),g.select("rect").attr({width:t._width-2*D,height:Y-2*D,x:D,y:D}),Bt.setClipUrl(w,i,e),Bt.setRect(M,0,0,0,0),delete t._scrollY}else{var O=Math.max(Xt.scrollBarMinHeight,t._effHeight*t._effHeight/t._height),V=t._effHeight-O-2*Xt.scrollBarMargin,Q=t._height-t._effHeight,K=V/Q,ne=Math.min(t._scrollY||0,Q);_.attr({width:t._width-2*D+Xt.scrollBarWidth+Xt.scrollBarMargin,height:t._effHeight-D,x:D/2,y:D/2}),g.select("rect").attr({width:t._width-2*D+Xt.scrollBarWidth+Xt.scrollBarMargin,height:t._effHeight-2*D,x:D,y:D+ne}),Bt.setClipUrl(w,i,e),se(ne,O,K),y.on("wheel",function(){ne=Ot.constrain(t._scrollY+Qa.event.deltaY/Q*V,0,Q),se(ne,O,K),ne!==0&&ne!==Q&&Qa.event.preventDefault()});var me,de,ke,re=function(ye,we,pe){var Re=(pe-we)/K+ye;return Ot.constrain(Re,0,Q)},Ce=function(ye,we,pe){var Re=(we-pe)/K+ye;return Ot.constrain(Re,0,Q)},ce=Qa.behavior.drag().on("dragstart",function(){var ye=Qa.event.sourceEvent;ye.type==="touchstart"?me=ye.changedTouches[0].clientY:me=ye.clientY,ke=ne}).on("drag",function(){var ye=Qa.event.sourceEvent;ye.buttons===2||ye.ctrlKey||(ye.type==="touchmove"?de=ye.changedTouches[0].clientY:de=ye.clientY,ne=re(ke,me,de),se(ne,O,K))});M.call(ce);var _e=Qa.behavior.drag().on("dragstart",function(){var ye=Qa.event.sourceEvent;ye.type==="touchstart"&&(me=ye.changedTouches[0].clientY,ke=ne)}).on("drag",function(){var ye=Qa.event.sourceEvent;ye.type==="touchmove"&&(de=ye.changedTouches[0].clientY,ne=Ce(ke,me,de),se(ne,O,K))});w.call(_e)}function se(ye,we,pe){t._scrollY=e._fullLayout[n]._scrollY=ye,Bt.setTranslate(w,0,-ye),Bt.setRect(M,t._width,Xt.scrollBarMargin+ye*pe,Xt.scrollBarWidth,we),g.select("rect").attr("y",D+ye)}if(e._context.edits.legendPosition){var ge,B,$,U;y.classed("cursor-move",!0),py.init({element:y.node(),gd:e,prepFn:function(ye){if(ye.target!==M.node()){var we=Bt.getTranslate(y);$=we.x,U=we.y}},moveFn:function(ye,we){if($!==void 0&&U!==void 0){var pe=$+ye,Re=U+we;Bt.setTranslate(y,pe,Re),ge=py.align(pe,t._width,q.l,q.l+q.w,t.xanchor),B=py.align(Re+t._height,-t._height,q.t+q.h,q.t,t.yanchor)}},doneFn:function(){if(ge!==void 0&&B!==void 0){var ye={};ye[n+".x"]=ge,ye[n+".y"]=B,Gs.call("_guiRelayout",e,ye)}},clickFn:function(ye,we){var pe=l.selectAll("g.traces").filter(function(){var Re=this.getBoundingClientRect();return we.clientX>=Re.left&&we.clientX<=Re.right&&we.clientY>=Re.top&&we.clientY<=Re.bottom});pe.size()>0&&Sw(e,y,pe,ye,we)}})}}],e)}}function G0(e,r,t){var a=e[0],n=a.width,i=r.entrywidthmode,l=a.trace.legendwidth||r.entrywidth;return i==="fraction"?r._maxWidth*l:t+(l||n)}function Sw(e,r,t,a,n){var i=t.data()[0][0].trace,l={event:n,node:t.node(),curveNumber:i.index,expandedIndex:i.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};i._group&&(l.group=i._group),Gs.traceIs(i,"pie-like")&&(l.label=t.datum()[0].label);var o=bw.triggerHandler(e,"plotly_legendclick",l);if(a===1){if(o===!1)return;r._clickTimeout=setTimeout(function(){e._fullLayout&&xw(t,e,a)},e._context.doubleClickDelay)}else if(a===2){r._clickTimeout&&clearTimeout(r._clickTimeout),e._legendMouseDownTime=0;var s=bw.triggerHandler(e,"plotly_legenddoubleclick",l);s!==!1&&o!==!1&&xw(t,e,a)}}function UG(e,r,t){var a=K0(t),n=e.data()[0][0],i=n.trace,l=Gs.traceIs(i,"pie-like"),o=!t._inHover&&r._context.edits.legendText&&!l,s=t._maxNameLength,u,f;n.groupTitle?(u=n.groupTitle.text,f=n.groupTitle.font):(f=t.font,t.entries?u=n.text:(u=l?n.label:i.name,i._meta&&(u=Ot.templateString(u,i._meta))));var v=Ot.ensureSingle(e,"text",a+"text");v.attr("text-anchor","start").call(Bt.font,f).text(o?Aw(u,s):u);var h=t.indentation+t.itemwidth+Xt.itemGap*2;Ao.positionText(v,h,0),o?v.call(Ao.makeEditable,{gd:r,text:u}).call(Z0,e,r,t).on("edit",function(d){this.text(Aw(d,s)).call(Z0,e,r,t);var m=n.trace._fullInput||{},y={};return y.name=d,m._isShape?Gs.call("_guiRelayout",r,"shapes["+i.index+"].name",y.name):Gs.call("_guiRestyle",r,y,i.index)}):Z0(v,e,r,t)}function Aw(e,r){var t=Math.max(4,r);if(e&&e.trim().length>=t/2)return e;e=e||"";for(var a=t-e.length;a>0;a--)e+=" ";return e}function VG(e,r,t){var a=r._context.doubleClickDelay,n,i=1,l=Ot.ensureSingle(e,"rect",t+"toggle",function(o){r._context.staticPlot||o.style("cursor","pointer").attr("pointer-events","all"),o.call(W0.fill,"rgba(0,0,0,0)")});r._context.staticPlot||(l.on("mousedown",function(){n=new Date().getTime(),n-r._legendMouseDownTimea&&(i=Math.max(i-1,1)),Sw(r,o,e,i,Qa.event)}}))}function Z0(e,r,t,a,n){a._inHover&&e.attr("data-notex",!0),Ao.convertToTspans(e,t,function(){GG(r,t,a,n)})}function GG(e,r,t,a){var n=e.data()[0][0];if(!t._inHover&&n&&!n.trace.showlegend){e.remove();return}var i=e.select("g[class*=math-group]"),l=i.node(),o=K0(t);t||(t=r._fullLayout[o]);var s=t.borderwidth,u;a===Us?u=t.title.font:n.groupTitle?u=n.groupTitle.font:u=t.font;var f=u.size*kw,v,h;if(l){var d=Bt.bBox(l);v=d.height,h=d.width,a===Us?Bt.setTranslate(i,s,s+v*.75):Bt.setTranslate(i,0,v*.25)}else{var m="."+o+(a===Us?"title":"")+"text",y=e.select(m),g=Ao.lineCount(y),_=y.node();if(v=f*g,h=_?Bt.bBox(_).width:0,a===Us)t.title.side==="left"&&(h+=Xt.itemGap*2),Ao.positionText(y,s+Xt.titlePad,s+f);else{var w=Xt.itemGap*2+t.indentation+t.itemwidth;n.groupTitle&&(w=Xt.itemGap,h-=t.indentation+t.itemwidth),Ao.positionText(y,w,-f*((g-1)/2-.3))}}a===Us?(t._titleWidth=h,t._titleHeight=v):(n.lineHeight=f,n.height=Math.max(v,16)+3,n.width=h)}function WG(e){var r=0,t=0,a=e.title.side;return a&&(a.indexOf("left")!==-1&&(r=e._titleWidth),a.indexOf("top")!==-1&&(t=e._titleHeight)),[r,t]}function ZG(e,r,t,a){var n=e._fullLayout,i=K0(a);a||(a=n[i]);var l=n._size,o=Tw.isVertical(a),s=Tw.isGrouped(a),u=a.entrywidthmode==="fraction",f=a.borderwidth,v=2*f,h=Xt.itemGap,d=a.indentation+a.itemwidth+h*2,m=2*(f+h),y=J0(a),g=a.y<0||a.y===0&&y==="top",_=a.y>1||a.y===1&&y==="bottom",w=a.tracegroupgap,T={};let{orientation:b,yref:M}=a,{maxheight:C}=a,k=g||_||b!=="v"||M!=="paper";C||(C=k?.5:1);let q=k?n.height:l.h;a._maxHeight=Math.max(C>1?C:C*q,30);var D=0;a._width=0,a._height=0;var R=WG(a);if(o)t.each(function(se){var ge=se[0].height;Bt.setTranslate(this,f+R[0],f+R[1]+a._height+ge/2+h),a._height+=ge,a._width=Math.max(a._width,se[0].width)}),D=d+a._width,a._width+=h+d+v,a._height+=m,s&&(r.each(function(se,ge){Bt.setTranslate(this,0,ge*a.tracegroupgap)}),a._height+=(a._lgroupsLength-1)*a.tracegroupgap);else{var z=X0(a),F=a.x<0||a.x===0&&z==="right",I=a.x>1||a.x===1&&z==="left",H=_||g,J=n.width/2;a._maxWidth=Math.max(F?H&&z==="left"?l.l+l.w:J:I?H&&z==="right"?l.r+l.w:J:l.w,2*d);var X=0,Y=0;t.each(function(se){var ge=G0(se,a,d);X=Math.max(X,ge),Y+=ge}),D=null;var O=0;if(s){var V=0,Q=0,K=0;r.each(function(){var se=0,ge=0;Qa.select(this).selectAll("g.traces").each(function($){var U=G0($,a,d),ye=$[0].height;Bt.setTranslate(this,R[0],R[1]+f+h+ye/2+ge),ge+=ye,se=Math.max(se,U),T[$[0].trace.legendgroup]=se});var B=se+h;Q>0&&B+f+Q>a._maxWidth?(O=Math.max(O,Q),Q=0,K+=V+w,V=ge):V=Math.max(V,ge),Bt.setTranslate(this,Q,K),Q+=B}),a._width=Math.max(O,Q)+f,a._height=K+V+m}else{var ne=t.size(),me=Y+v+(ne-1)*h=a._maxWidth&&(O=Math.max(O,Ce),ke=0,re+=de,a._height+=de,de=0),Bt.setTranslate(this,R[0]+f+ke,R[1]+f+re+ge/2+h),Ce=ke+B+h,ke+=$,de=Math.max(de,ge)}),me?(a._width=ke+v,a._height=de+m):(a._width=Math.max(O,Ce)+v,a._height+=de+m)}}a._width=Math.ceil(Math.max(a._width+R[0],a._titleWidth+2*(f+Xt.titlePad))),a._height=Math.ceil(Math.max(a._height+R[1],a._titleHeight+2*(f+Xt.itemGap))),a._effHeight=Math.min(a._height,a._maxHeight);var ce=e._context.edits,_e=ce.legendText||ce.legendPosition;t.each(function(se){var ge=Qa.select(this).select("."+i+"toggle"),B=se[0].height,$=se[0].trace.legendgroup,U=G0(se,a,d);s&&$!==""&&(U=T[$]);var ye=_e?d:D||U;!o&&!u&&(ye+=h/2),Bt.setRect(ge,0,-B/2,ye,B)})}function XG(e,r,t,a){var n=e._fullLayout,i=n[r],l=X0(i),o=J0(i),s=i.xref==="paper",u=i.yref==="paper";e._fullLayout._reservedMargin[r]={};var f=i.y<.5?"b":"t",v=i.x<.5?"l":"r",h={r:n.width-t,l:t+i._width,b:n.height-a,t:a+i._effHeight};if(s&&u)return my.autoMargin(e,r,{x:i.x,y:i.y,l:i._width*Vs[l],r:i._width*_w[l],b:i._effHeight*_w[o],t:i._effHeight*Vs[o]});s?e._fullLayout._reservedMargin[r][f]=h[f]:u||i.orientation==="v"?e._fullLayout._reservedMargin[r][v]=h[v]:e._fullLayout._reservedMargin[r][f]=h[f]}function X0(e){return Ot.isRightAnchor(e)?"right":Ot.isCenterAnchor(e)?"center":"left"}function J0(e){return Ot.isBottomAnchor(e)?"bottom":Ot.isMiddleAnchor(e)?"middle":"top"}function K0(e){return e._id||"legend"}});var wy=Z(_y=>{"use strict";var ko=Ir(),Ui=Hr(),Lw=xn(),Mt=Ie(),JG=Mt.pushUnique,by=Mt.strTranslate,KG=Mt.strRotate,QG=af(),Sn=Ta(),$G=$8(),Mi=at(),ea=Er(),Q0=Qn(),Ai=dt(),jG=ya().zindexSeparator,Zs=br(),$n=bi(),So=Gu(),eW=ly(),rW=gy(),Fw=So.YANGLE,xy=Math.PI*Fw/180,tW=1/Math.sin(xy),aW=Math.cos(xy),nW=Math.sin(xy),pt=So.HOVERARROWSIZE,Or=So.HOVERTEXTPAD,qw={box:!0,ohlc:!0,violin:!0,candlestick:!0},iW={scatter:!0,scattergl:!0,splom:!0};function Dw(e,r){return e.distance-r.distance}_y.hover=function(r,t,a,n){r=Mt.getGraphDiv(r);var i=t.target;Mt.throttle(r._fullLayout._uid+So.HOVERID,So.HOVERMINTIME,function(){lW(r,t,a,n,i)})};_y.loneHover=function(r,t){var a=!0;Array.isArray(r)||(a=!1,r=[r]);var n=t.gd,i=Yw(n),l=Uw(n),o=r.map(function(g){var _=g._x0||g.x0||g.x||0,w=g._x1||g.x1||g.x||0,T=g._y0||g.y0||g.y||0,b=g._y1||g.y1||g.y||0,M=g.eventData;if(M){var C=Math.min(_,w),k=Math.max(_,w),q=Math.min(T,b),D=Math.max(T,b),R=g.trace;if(Zs.traceIs(R,"gl3d")){var z=n._fullLayout[R.scene]._scene.container,F=z.offsetLeft,I=z.offsetTop;C+=F,k+=F,q+=I,D+=I}M.bbox={x0:C+l,x1:k+l,y0:q+i,y1:D+i},t.inOut_bbox&&t.inOut_bbox.push(M.bbox)}else M=!1;return{color:g.color||ea.defaultLine,x0:g.x0||g.x||0,x1:g.x1||g.x||0,y0:g.y0||g.y||0,y1:g.y1||g.y||0,xLabel:g.xLabel,yLabel:g.yLabel,zLabel:g.zLabel,text:g.text,name:g.name,idealAlign:g.idealAlign,borderColor:g.borderColor,fontFamily:g.fontFamily,fontSize:g.fontSize,fontColor:g.fontColor,fontWeight:g.fontWeight,fontStyle:g.fontStyle,fontVariant:g.fontVariant,nameLength:g.nameLength,textAlign:g.textAlign,trace:g.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:g.hovertemplate||!1,hovertemplateLabels:g.hovertemplateLabels||!1,eventData:M}}),s=!1,u=Hw(o,{gd:n,hovermode:"closest",rotateLabels:s,bgColor:t.bgColor||ea.background,container:ko.select(t.container),outerContainer:t.outerContainer||t.container}),f=u.hoverLabels,v=5,h=0,d=0;f.sort(function(g,_){return g.y0-_.y0}).each(function(g,_){var w=g.y0-g.by/2;w-vk[0]._length||U<0||U>q[0]._length)return Q0.unhoverRaw(e,r)}if(r.pointerX=$+k[0]._offset,r.pointerY=U+q[0]._offset,"xval"in r?X=$n.flat(i,r.xval):X=$n.p2c(k,$),"yval"in r?Y=$n.flat(i,r.yval):Y=$n.p2c(q,U),!Ui(X[0])||!Ui(Y[0]))return Mt.warn("Fx.hover failed",r,e),Q0.unhoverRaw(e,r)}var pe=1/0;function Re(vr,lt){for(V=0;Vce&&(H.splice(0,ce),pe=H[0].distance),v&&I!==0&&H.length===0){Ce.distance=I,Ce.index=!1;var Qr=K._module.hoverPoints(Ce,ke,re,"closest",{hoverLayer:o._hoverlayer});if(Qr&&(Qr=Qr.filter(function(St){return St.spikeDistance<=I})),Qr&&Qr.length){var fa,pn=Qr.filter(function(St){return St.xa.showspikes&&St.xa.spikesnap!=="hovered data"});if(pn.length){var Qt=pn[0];Ui(Qt.x0)&&Ui(Qt.y0)&&(fa=Ee(Qt),(!_e.vLinePoint||_e.vLinePoint.spikeDistance>fa.spikeDistance)&&(_e.vLinePoint=fa))}var fi=Qr.filter(function(St){return St.ya.showspikes&&St.ya.spikesnap!=="hovered data"});if(fi.length){var mn=fi[0];Ui(mn.x0)&&Ui(mn.y0)&&(fa=Ee(mn),(!_e.hLinePoint||_e.hLinePoint.spikeDistance>fa.spikeDistance)&&(_e.hLinePoint=fa))}}}}}Re();function Fe(vr,lt,Xr){for(var ft=null,kt=1/0,bt,Qr=0;Qrvr.trace.index===Me.trace.index):H=[Me];var Se=H.length,Oe=Nw("x",Me,o),Je=Nw("y",Me,o);Re(Oe,Je);var We=[],Ze={},lr=0,tr=function(vr){var lt=qw[vr.trace.type]?Iw(vr):vr.trace.index;if(!Ze[lt])lr++,Ze[lt]=lr,We.push(vr);else{var Xr=Ze[lt]-1,ft=We[Xr];Xr>0&&Math.abs(vr.distance)Se-1;Qe--)tr(H[Qe]);H=We,qe()}var ze=e._hoverdata,ae=[],le=Yw(e),Le=Uw(e);for(let vr of H){var De=$n.makeEventData(vr,vr.trace,vr.cd);if(vr.hovertemplate!==!1){var ar=!1;vr.cd[vr.index]&&vr.cd[vr.index].ht&&(ar=vr.cd[vr.index].ht),vr.hovertemplate=ar||vr.trace.hovertemplate||!1}if(vr.xa&&vr.ya){var fr=vr.x0+vr.xa._offset,sr=vr.x1+vr.xa._offset,Mr=vr.y0+vr.ya._offset,Br=vr.y1+vr.ya._offset,$r=Math.min(fr,sr),it=Math.max(fr,sr),_t=Math.min(Mr,Br),yt=Math.max(Mr,Br);De.bbox={x0:$r+Le,x1:it+Le,y0:_t+le,y1:yt+le}}vr.eventData=[De],ae.push(De)}e._hoverdata=ae;var Dt=h==="y"&&(J.length>1||H.length>1)||h==="closest"&&se&&H.length>1,Kt=ea.combine(o.plot_bgcolor||ea.background,o.paper_bgcolor),La=Hw(H,{gd:e,hovermode:h,rotateLabels:Dt,bgColor:Kt,container:o._hoverlayer,outerContainer:o._paper.node(),commonLabelOpts:o.hoverlabel,hoverdistance:o.hoverdistance}),sa=La.hoverLabels;if($n.isUnifiedHover(h)||(sW(sa,Dt,o,La.commonLabelBoundingBox),Bw(sa,Dt,o._invScaleX,o._invScaleY)),n&&n.tagName){var ua=Zs.getComponentMethod("annotations","hasClickToShow")(e,ae);$G(ko.select(n),ua?"pointer":"")}!n||a||!cW(e,r,ze)||(ze&&e.emit("plotly_unhover",{event:r,points:ze}),e.emit("plotly_hover",{event:r,points:e._hoverdata,xaxes:k,yaxes:q,xvals:X,yvals:Y}))}function Iw(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var oW=/([\s\S]*)<\/extra>/;function Hw(e,r){var t=r.gd,a=t._fullLayout,n=r.hovermode,i=r.rotateLabels,l=r.bgColor,o=r.container,s=r.outerContainer,u=r.commonLabelOpts||{};if(e.length===0)return[[]];var f=r.fontFamily||So.HOVERFONT,v=r.fontSize||So.HOVERFONTSIZE,h=r.fontWeight||a.font.weight,d=r.fontStyle||a.font.style,m=r.fontVariant||a.font.variant,y=r.fontTextcase||a.font.textcase,g=r.fontLineposition||a.font.lineposition,_=r.fontShadow||a.font.shadow,w=e[0],T=w.xa,b=w.ya,M=n.charAt(0),C=M+"Label",k=w[C];if(k===void 0&&T.type==="multicategory")for(var q=0;qa.width-le&&(Le=a.width-le),Me.attr("d","M"+(Qe-Le)+",0L"+(Qe-Le+pt)+","+ae+pt+"H"+le+"v"+ae+(Or*2+tr.height)+"H"+-le+"V"+ae+pt+"H"+(Qe-Le-pt)+"Z"),Qe=Le,V.minX=Qe-le,V.maxX=Qe+le,T.side==="top"?(V.minY=ze-(Or*2+tr.height),V.maxY=ze-Or):(V.minY=ze+Or,V.maxY=ze+(Or*2+tr.height))}else{var De,ar,fr;b.side==="right"?(De="start",ar=1,fr="",Qe=T._offset+T._length):(De="end",ar=-1,fr="-",Qe=T._offset),ze=b._offset+(w.y0+w.y1)/2,Se.attr("text-anchor",De),Me.attr("d","M0,0L"+fr+pt+","+pt+"V"+(Or+tr.height/2)+"h"+fr+(Or*2+tr.width)+"V-"+(Or+tr.height/2)+"H"+fr+pt+"V-"+pt+"Z"),V.minY=ze-(Or+tr.height/2),V.maxY=ze+(Or+tr.height/2),b.side==="right"?(V.minX=Qe+pt,V.maxX=Qe+pt+(Or*2+tr.width)):(V.minX=Qe-pt-(Or*2+tr.width),V.maxX=Qe-pt);var sr=tr.height/2,Mr=R-tr.top-sr,Br="clip"+a._uid+"commonlabel"+b._id,$r;if(QeMe.hoverinfo!=="none");if(Pe.length===0)return[];var Q=a.hoverlabel,K=Q.font,ne=Pe[0],me=((n==="x unified"?ne.xa:ne.ya).unifiedhovertitle||{}).text,de=me?Mt.hovertemplateString({data:n==="x unified"?[{xa:ne.xa,x:ne.xVal}]:[{ya:ne.ya,y:ne.yVal}],fallback:ne.trace.hovertemplatefallback,locale:a._d3locale,template:me}):k,ke={showlegend:!0,legend:{title:{text:de,font:K},font:K,bgcolor:Q.bgcolor,bordercolor:Q.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:a.legend?a.legend.traceorder:void 0,orientation:"v"}},re={font:K};eW(ke,re,t._fullData);var Ce=re.legend;Ce.entries=[];for(var ce=0;ce=0?be=qe:He+we=0?be=He:Ye+we=0?Ke=Be:Ge+pe=0?Ke=Ge:ie+pe=0,(Pe.idealAlign==="top"||!yt)&&Dt?(fr-=Mr/2,Pe.anchor="end"):yt?(fr+=Mr/2,Pe.anchor="start"):Pe.anchor="middle",Pe.crossPos=fr;else{if(Pe.pos=fr,yt=ar+sr/2+_t<=z,Dt=ar-sr/2-_t>=0,(Pe.idealAlign==="left"||!yt)&&Dt)ar-=sr/2,Pe.anchor="end";else if(yt)ar+=sr/2,Pe.anchor="start";else{Pe.anchor="middle";var Kt=_t/2,La=ar+Kt-z,sa=ar-Kt;La>0&&(ar-=La),sa<0&&(ar+=-sa)}Pe.crossPos=ar}ze.attr("text-anchor",Pe.anchor),le&&ae.attr("text-anchor",Pe.anchor),Me.attr("transform",by(ar,fr)+(i?KG(Fw):""))}),{hoverLabels:hr,commonLabelBoundingBox:V}}function Ew(e,r,t,a,n,i){var v,h;var l="",o="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=Mt.templateString(e.name,e.trace._meta)),l=zw(e.name,e.nameLength));var s=t.charAt(0),u=s==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(o+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(o+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(o+=(o?"z: ":"")+e.zLabel)):r&&e[s+"Label"]===n?o=e[u+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(o=e.yLabel):e.yLabel===void 0?o=e.xLabel:o="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(o+=(o?"
":"")+e.text),e.extraText!==void 0&&(o+=(o?"
":"")+e.extraText),i&&o===""&&!e.hovertemplate&&(l===""&&i.remove(),o=l),(h=(v=e.trace)==null?void 0:v.hoverlabel)!=null&&h.split&&(e.hovertemplate="");let{hovertemplate:f=!1}=e;if(f){let d=e.hovertemplateLabels||e;e[s+"Label"]!==n&&(d[s+"other"]=d[s+"Val"],d[s+"otherLabel"]=d[s+"Label"]),o=Mt.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:a._d3locale,template:f}),o=o.replace(oW,(m,y)=>(l=zw(y,e.nameLength),""))}return[o,l]}function sW(e,r,t,a){var n=r?"xa":"ya",i=r?"ya":"xa",l=0,o=1,s=e.size(),u=new Array(s),f=0,v=a.minX,h=a.maxX,d=a.minY,m=a.maxY,y=function(X){return X*t._invScaleX},g=function(X){return X*t._invScaleY};e.each(function(X){var Y=X[n],O=X[i],V=Y._id.charAt(0)==="x",Q=Y.range;f===0&&Q&&Q[0]>Q[1]!==V&&(o=-1);var K=0,ne=V?t.width:t.height;if(t.hovermode==="x"||t.hovermode==="y"){var me=Ow(X,r),de=X.anchor,ke=de==="end"?-1:1,re,Ce;if(de==="middle")re=X.crossPos+(V?g(me.y-X.by/2):y(X.bx/2+X.tx2width/2)),Ce=re+(V?g(X.by):y(X.bx));else if(V)re=X.crossPos+g(pt+me.y)-g(X.by/2-pt),Ce=re+g(X.by);else{var ce=y(ke*pt+me.x),_e=ce+y(ke*X.bx);re=X.crossPos+Math.min(ce,_e),Ce=X.crossPos+Math.max(ce,_e)}V?d!==void 0&&m!==void 0&&Math.min(Ce,m)-Math.max(re,d)>1&&(O.side==="left"?(K=O._mainLinePosition,ne=t.width):ne=O._mainLinePosition):v!==void 0&&h!==void 0&&Math.min(Ce,h)-Math.max(re,v)>1&&(O.side==="top"?(K=O._mainLinePosition,ne=t.height):ne=O._mainLinePosition)}u[f++]=[{datum:X,traceIndex:X.trace.index,dp:0,pos:X.pos,posref:X.posref,size:X.by*(V?tW:1)/2,pmin:K,pmax:ne}]}),u.sort(function(X,Y){return X[0].posref-Y[0].posref||o*(Y[0].traceIndex-X[0].traceIndex)});var _,w,T,b,M,C,k;function q(X){var Y=X[0],O=X[X.length-1];if(w=Y.pmin-Y.pos-Y.dp+Y.size,T=O.pos+O.dp+O.size-Y.pmax,w>.01){for(M=X.length-1;M>=0;M--)X[M].dp+=w;_=!1}if(!(T<.01)){if(w<-.01){for(M=X.length-1;M>=0;M--)X[M].dp-=T;_=!1}if(_){var V=0;for(b=0;bY.pmax&&V++;for(b=X.length-1;b>=0&&!(V<=0);b--)C=X[b],C.pos>Y.pmax-1&&(C.del=!0,V--);for(b=0;b=0;M--)X[M].dp-=T;for(b=X.length-1;b>=0&&!(V<=0);b--)C=X[b],C.pos+C.dp+C.size>Y.pmax&&(C.del=!0,V--)}}}for(;!_&&l<=s;){for(l++,_=!0,b=0;b.01){for(M=R.length-1;M>=0;M--)R[M].dp+=w;for(D.push.apply(D,R),u.splice(b+1,1),k=0,M=D.length-1;M>=0;M--)k+=D[M].dp;for(T=k/D.length,M=D.length-1;M>=0;M--)D[M].dp-=T;_=!1}else b++}u.forEach(q)}for(b=u.length-1;b>=0;b--){var I=u[b];for(M=I.length-1;M>=0;M--){var H=I[M],J=H.datum;J.offset=H.dp,J.del=H.del}}}function Ow(e,r){var t=0,a=e.offset;return r&&(a*=-nW,t=e.offset*aW),{x:t,y:a}}function uW(e){var r={start:1,end:-1,middle:0}[e.anchor],t=r*(pt+Or),a=t+r*(e.txwidth+Or),n=e.anchor==="middle";return n&&(t-=e.tx2width/2,a+=e.txwidth/2+Or),{alignShift:r,textShiftX:t,text2ShiftX:a}}function Bw(e,r,t,a){var n=function(l){return l*t},i=function(l){return l*a};e.each(function(l){var o=ko.select(this);if(l.del)return o.remove();var s=o.select("text.nums"),u=l.anchor,f=u==="end"?-1:1,v=uW(l),h=Ow(l,r),d=h.x,m=h.y,y=u==="middle",g="hoverlabel"in l.trace?l.trace.hoverlabel.showarrow:!0,_;y?_="M-"+n(l.bx/2+l.tx2width/2)+","+i(m-l.by/2)+"h"+n(l.bx)+"v"+i(l.by)+"h-"+n(l.bx)+"Z":g?_="M0,0L"+n(f*pt+d)+","+i(pt+m)+"v"+i(l.by/2-pt)+"h"+n(f*l.bx)+"v-"+i(l.by)+"H"+n(f*pt+d)+"V"+i(m-pt)+"Z":_="M"+n(f*pt+d)+","+i(m-l.by/2)+"h"+n(f*l.bx)+"v"+i(l.by)+"h"+n(-f*l.bx)+"Z",o.select("path").attr("d",_);var w=d+v.textShiftX,T=m+l.ty0-l.by/2+Or,b=l.textAlign||"auto";b!=="auto"&&(b==="left"&&u!=="start"?(s.attr("text-anchor","start"),w=y?-l.bx/2-l.tx2width/2+Or:-l.bx-Or):b==="right"&&u!=="end"&&(s.attr("text-anchor","end"),w=y?l.bx/2-l.tx2width/2-Or:l.bx+Or)),s.call(Sn.positionText,n(w),i(T)),l.tx2width&&(o.select("text.name").call(Sn.positionText,n(v.text2ShiftX+v.alignShift*Or+d),i(m+l.ty0-l.by/2+Or)),o.select("rect").call(Mi.setRect,n(v.text2ShiftX+(v.alignShift-1)*l.tx2width/2+d),i(m-l.by/2-1),n(l.tx2width),i(l.by+2)))})}function fW(e,r){var t=e.index,a=e.trace||{},n=e.cd[0],i=e.cd[t]||{};function l(h){return h||Ui(h)&&h===0}var o=Array.isArray(t)?function(h,d){var m=Mt.castOption(n,t,h);return l(m)?m:Mt.extractOption({},a,"",d)}:function(h,d){return Mt.extractOption(i,a,h,d)};function s(h,d,m){var y=o(d,m);l(y)&&(e[h]=y)}if(s("hoverinfo","hi","hoverinfo"),s("bgcolor","hbg","hoverlabel.bgcolor"),s("borderColor","hbc","hoverlabel.bordercolor"),s("fontFamily","htf","hoverlabel.font.family"),s("fontSize","hts","hoverlabel.font.size"),s("fontColor","htc","hoverlabel.font.color"),s("fontWeight","htw","hoverlabel.font.weight"),s("fontStyle","hty","hoverlabel.font.style"),s("fontVariant","htv","hoverlabel.font.variant"),s("nameLength","hnl","hoverlabel.namelength"),s("textAlign","hta","hoverlabel.align"),e.posref=r==="y"||r==="closest"&&a.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=Mt.constrain(e.x0,0,e.xa._length),e.x1=Mt.constrain(e.x1,0,e.xa._length),e.y0=Mt.constrain(e.y0,0,e.ya._length),e.y1=Mt.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:Ai.hoverLabelText(e.xa,e.xLabelVal,a.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:Ai.hoverLabelText(e.ya,e.yLabelVal,a.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var u=Ai.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+u+" / -"+Ai.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+u,r==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var f=Ai.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+f+" / -"+Ai.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+f,r==="y"&&(e.distance+=1)}var v=e.hoverinfo||e.trace.hoverinfo;return v&&v!=="all"&&(v=Array.isArray(v)?v:v.split("+"),v.indexOf("x")===-1&&(e.xLabel=void 0),v.indexOf("y")===-1&&(e.yLabel=void 0),v.indexOf("z")===-1&&(e.zLabel=void 0),v.indexOf("text")===-1&&(e.text=void 0),v.indexOf("name")===-1&&(e.name=void 0)),e}function Pw(e,r,t){var a=t.container,n=t.fullLayout,i=n._size,l=t.event,o=!!r.hLinePoint,s=!!r.vLinePoint,u,f;if(a.selectAll(".spikeline").remove(),!!(s||o)){var v=ea.combine(n.plot_bgcolor,n.paper_bgcolor);if(o){var h=r.hLinePoint,d,m;u=h&&h.xa,f=h&&h.ya;var y=f.spikesnap;y==="cursor"?(d=l.pointerX,m=l.pointerY):(d=u._offset+h.x,m=f._offset+h.y);var g=Lw.readability(h.color,v)<1.5?ea.contrast(v):h.color,_=f.spikemode,w=f.spikethickness,T=f.spikecolor||g,b=Ai.getPxPosition(e,f),M,C;if(_.indexOf("toaxis")!==-1||_.indexOf("across")!==-1){if(_.indexOf("toaxis")!==-1&&(M=b,C=d),_.indexOf("across")!==-1){var k=f._counterDomainMin,q=f._counterDomainMax;f.anchor==="free"&&(k=Math.min(k,f.position),q=Math.max(q,f.position)),M=i.l+k*i.w,C=i.l+q*i.w}a.insert("line",":first-child").attr({x1:M,x2:C,y1:m,y2:m,"stroke-width":w,stroke:T,"stroke-dasharray":Mi.dashStyle(f.spikedash,w)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:M,x2:C,y1:m,y2:m,"stroke-width":w+2,stroke:v}).classed("spikeline",!0).classed("crisp",!0)}_.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:b+(f.side!=="right"?w:-w),cy:m,r:w,fill:T}).classed("spikeline",!0)}if(s){var D=r.vLinePoint,R,z;u=D&&D.xa,f=D&&D.ya;var F=u.spikesnap;F==="cursor"?(R=l.pointerX,z=l.pointerY):(R=u._offset+D.x,z=f._offset+D.y);var I=Lw.readability(D.color,v)<1.5?ea.contrast(v):D.color,H=u.spikemode,J=u.spikethickness,X=u.spikecolor||I,Y=Ai.getPxPosition(e,u),O,V;if(H.indexOf("toaxis")!==-1||H.indexOf("across")!==-1){if(H.indexOf("toaxis")!==-1&&(O=Y,V=z),H.indexOf("across")!==-1){var Q=u._counterDomainMin,K=u._counterDomainMax;u.anchor==="free"&&(Q=Math.min(Q,u.position),K=Math.max(K,u.position)),O=i.t+(1-K)*i.h,V=i.t+(1-Q)*i.h}a.insert("line",":first-child").attr({x1:R,x2:R,y1:O,y2:V,"stroke-width":J,stroke:X,"stroke-dasharray":Mi.dashStyle(u.spikedash,J)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:R,x2:R,y1:O,y2:V,"stroke-width":J+2,stroke:v}).classed("spikeline",!0).classed("crisp",!0)}H.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:R,cy:Y-(u.side!=="top"?J:-J),r:J,fill:X}).classed("spikeline",!0)}}}function cW(e,r,t){if(!t||t.length!==e._hoverdata.length)return!0;for(var a=t.length-1;a>=0;a--){var n=t[a],i=e._hoverdata[a];if(n.curveNumber!==i.curveNumber||String(n.pointNumber)!==String(i.pointNumber)||String(n.pointNumbers)!==String(i.pointNumbers)||n.binNumber!==i.binNumber)return!0}return!1}function Rw(e,r){return!r||r.vLinePoint!==e._spikepoints.vLinePoint||r.hLinePoint!==e._spikepoints.hLinePoint}function zw(e,r){return Sn.plainText(e||"",{len:r,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function vW(e,r){for(var t=r.charAt(0),a=[],n=[],i=[],l=0;le.offsetTop+e.clientTop,Uw=e=>e.offsetLeft+e.clientLeft;function Ws(e,r){var t=e._fullLayout,a=r.getBoundingClientRect(),n=a.left,i=a.top,l=n+a.width,o=i+a.height,s=Mt.apply3DTransform(t._invTransform)(n,i),u=Mt.apply3DTransform(t._invTransform)(l,o),f=s[0],v=s[1],h=u[0],d=u[1];return{x:f,y:v,width:h-f,height:d-v,top:Math.min(v,d),left:Math.min(f,h),right:Math.max(f,h),bottom:Math.max(v,d)}}});var $0=Z((Lse,Vw)=>{"use strict";var hW=Ie(),dW=Er(),pW=bi().isUnifiedHover;Vw.exports=function(r,t,a,n){n=n||{};var i=t.legend;function l(o){n.font[o]||(n.font[o]=i?t.legend.font[o]:t.font[o])}t&&pW(t.hovermode)&&(n.font||(n.font={}),l("size"),l("family"),l("color"),l("weight"),l("style"),l("variant"),i?(n.bgcolor||(n.bgcolor=dW.combine(t.legend.bgcolor,t.paper_bgcolor)),n.bordercolor||(n.bordercolor=t.legend.bordercolor)):n.bgcolor||(n.bgcolor=t.paper_bgcolor)),a("hoverlabel.bgcolor",n.bgcolor),a("hoverlabel.bordercolor",n.bordercolor),a("hoverlabel.namelength",n.namelength),a("hoverlabel.showarrow",n.showarrow),hW.coerceFont(a,"hoverlabel.font",n.font),a("hoverlabel.align",n.align)}});var Ww=Z((qse,Gw)=>{"use strict";var mW=Ie(),yW=$0(),gW=cs();Gw.exports=function(r,t){function a(n,i){return mW.coerce(r,t,gW,n,i)}yW(r,t,a)}});var Jw=Z((Dse,Xw)=>{"use strict";var Zw=Ie(),bW=xv(),xW=$0();Xw.exports=function(r,t,a,n){function i(o,s){return Zw.coerce(r,t,bW,o,s)}var l=Zw.extendFlat({},n.hoverlabel);t.hovertemplate&&(l.namelength=-1),xW(r,t,i,l)}});var Ty=Z((Ese,Kw)=>{"use strict";var _W=Ie(),wW=cs();Kw.exports=function(r,t){function a(n,i){return t[n]!==void 0?t[n]:_W.coerce(r,t,wW,n,i)}return a("clickmode"),a("hoversubplots"),a("hovermode")}});var jw=Z((Pse,$w)=>{"use strict";var Qw=Ie(),TW=cs(),MW=Ty(),AW=$0();$w.exports=function(r,t){function a(f,v){return Qw.coerce(r,t,TW,f,v)}var n=MW(r,t);n&&(a("hoverdistance"),a("spikedistance"));var i=a("dragmode");i==="select"&&a("selectdirection");var l=t._has("mapbox"),o=t._has("map"),s=t._has("geo"),u=t._basePlotModules.length;t.dragmode==="zoom"&&((l||o||s)&&u===1||(l||o)&&s&&u===2)&&(t.dragmode="pan"),AW(r,t,a),Qw.coerceFont(a,"hoverlabel.grouptitlefont",t.hoverlabel.font)}});var tT=Z((Rse,rT)=>{"use strict";var My=Ie(),eT=br();rT.exports=function(r){var t=r.calcdata,a=r._fullLayout;function n(u){return function(f){return My.coerceHoverinfo({hoverinfo:f},{_module:u._module},a)}}for(var i=0;i{"use strict";var SW=br(),CW=wy().hover;aT.exports=function(r,t,a){var n=SW.getComponentMethod("annotations","onClick")(r,r._hoverdata);a!==void 0&&CW(r,t,a,!0);function i(){r.emit("plotly_click",{points:r._hoverdata,event:t})}r._hoverdata&&t&&t.target&&(n&&n.then?n.then(i):i(),t.stopImmediatePropagation&&t.stopImmediatePropagation())}});var ki=Z((Nse,oT)=>{"use strict";var LW=Ir(),j0=Ie(),qW=Qn(),Mf=bi(),iT=cs(),lT=wy();oT.exports={moduleType:"component",name:"fx",constants:Gu(),schema:{layout:iT},attributes:xv(),layoutAttributes:iT,supplyLayoutGlobalDefaults:Ww(),supplyDefaults:Jw(),supplyLayoutDefaults:jw(),calc:tT(),getDistanceFunction:Mf.getDistanceFunction,getClosest:Mf.getClosest,inbox:Mf.inbox,quadrature:Mf.quadrature,appendArrayPointValue:Mf.appendArrayPointValue,castHoverOption:EW,castHoverinfo:PW,hover:lT.hover,unhover:qW.unhover,loneHover:lT.loneHover,loneUnhover:DW,click:nT()};function DW(e){var r=j0.isD3Selection(e)?e:LW.select(e);r.selectAll("g.hovertext").remove(),r.selectAll(".spikeline").remove()}function EW(e,r,t){return j0.castOption(e,r,"hoverlabel."+t)}function PW(e,r,t){function a(n){return j0.coerceHoverinfo({hoverinfo:n},{_module:e._module},r)}return j0.castOption(e,t,"hoverinfo",a)}});var Xs=Z(Vi=>{"use strict";Vi.selectMode=function(e){return e==="lasso"||e==="select"};Vi.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Vi.openMode=function(e){return e==="drawline"||e==="drawopenpath"};Vi.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Vi.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};Vi.selectingOrDrawing=function(e){return Vi.freeMode(e)||Vi.rectMode(e)}});var eh=Z((Ise,sT)=>{"use strict";sT.exports=function(r){var t=r._fullLayout;t._glcanvas&&t._glcanvas.size()&&t._glcanvas.each(function(a){a.regl&&a.regl.clear({color:!0,depth:!0})})}});var rh=Z((Hse,uT)=>{"use strict";uT.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var ah=Z((Ose,fT)=>{"use strict";var th=32;fT.exports={CIRCLE_SIDES:th,i000:0,i090:th/4,i180:th/2,i270:th/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var nh=Z((Bse,vT)=>{"use strict";var RW=Ie().strTranslate;function cT(e,r){switch(e.type){case"log":return e.p2d(r);case"date":return e.p2r(r,0,e.calendar);default:return e.p2r(r)}}function zW(e,r){switch(e.type){case"log":return e.d2p(r);case"date":return e.r2p(r,0,e.calendar);default:return e.r2p(r)}}function NW(e){var r=e._id.charAt(0)==="y"?1:0;return function(t){return cT(e,t[r])}}function FW(e){return RW(e.xaxis._offset,e.yaxis._offset)}vT.exports={p2r:cT,r2p:zW,axValue:NW,getTransform:FW}});var wl=Z(Gi=>{"use strict";var IW=vm(),pT=ah(),Js=pT.CIRCLE_SIDES,Ay=pT.SQRT2,mT=nh(),hT=mT.p2r,dT=mT.r2p,HW=[0,3,4,5,6,1,2],OW=[0,3,4,1,2];Gi.writePaths=function(e){var r=e.length;if(!r)return"M0,0Z";for(var t="",a=0;a0&&s{"use strict";var yT=Zt(),wT=Xs(),BW=wT.drawMode,YW=wT.openMode,Ks=ah(),gT=Ks.i000,bT=Ks.i090,xT=Ks.i180,_T=Ks.i270,UW=Ks.cos45,VW=Ks.sin45,TT=nh(),lh=TT.p2r,Tl=TT.r2p,GW=dl(),WW=GW.clearOutline,oh=wl(),ZW=oh.readPaths,XW=oh.writePaths,JW=oh.ellipseOver,KW=oh.fixDatesForPaths;function QW(e,r){if(e.length){var t=e[0][0];if(t){var a=r.gd,n=r.isActiveShape,i=r.dragmode,l=(a.layout||{}).shapes||[];if(!BW(i)&&n!==void 0){var o=a._fullLayout._activeShapeIndex;if(o{"use strict";var $W=Xs(),jW=$W.selectMode,eZ=dl(),rZ=eZ.clearOutline,ky=wl(),tZ=ky.readPaths,aZ=ky.writePaths,nZ=ky.fixDatesForPaths;kT.exports=function(r,t){if(r.length){var a=r[0][0];if(a){var n=a.getAttribute("d"),i=t.gd,l=i._fullLayout.newselection,o=t.plotinfo,s=o.xaxis,u=o.yaxis,f=t.isActiveSelection,v=t.dragmode,h=(i.layout||{}).selections||[];if(!jW(v)&&f!==void 0){var d=i._fullLayout._activeSelectionIndex;if(d{"use strict";ST.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var Ml=Z(ia=>{"use strict";var Co=kf(),CT=Ie(),uh=dt();ia.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(r){return r}};ia.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(r){return r}};ia.decodeDate=function(e){return function(r){return r.replace&&(r=r.replace("_"," ")),e(r)}};ia.encodeDate=function(e){return function(r){return e(r).replace(" ","_")}};ia.extractPathCoords=function(e,r,t){var a=[],n=e.match(Co.segmentRE);return n.forEach(function(i){var l=r[i.charAt(0)].drawn;if(l!==void 0){var o=i.substr(1).match(Co.paramRE);if(!(!o||o.lengthd&&(y="X"),y});return u>d&&(m=m.replace(/[\s,]*X.*/,""),CT.log("Ignoring extra params in segment "+s)),f+m})}function Sf(e,r){r=r||0;var t=0;return r&&e&&(e.type==="category"||e.type==="multicategory")&&(t=(e.r2p(1)-e.r2p(0))*r),t}});var Ly=Z((Zse,ET)=>{"use strict";var lZ=Ie(),Qs=dt(),LT=Ta(),qT=at(),oZ=wl().readPaths,Cy=Ml(),sZ=Cy.getPathString,DT=Lv(),uZ=Pa().FROM_TL;ET.exports=function(r,t,a,n){if(n.selectAll(".shape-label").remove(),!!(a.label.text||a.label.texttemplate)){var i;if(a.label.texttemplate){var l={};if(a.type!=="path"){var o=Qs.getFromId(r,a.xref),s=Qs.getFromId(r,a.yref);for(var u in DT){var f=DT[u](a,o,s);f!==void 0&&(l[u]=f)}}i=lZ.texttemplateStringForShapes({data:[l],fallback:a.label.texttemplatefallback,locale:r._fullLayout._d3locale,template:a.label.texttemplate})}else i=a.label.text;var v={"data-index":t},h=a.label.font,d={"data-notex":1},m=n.append("g").attr(v).classed("shape-label",!0),y=m.append("text").attr(d).classed("shape-label-text",!0).text(i),g,_,w,T;if(a.path){var b=sZ(r,a),M=oZ(b,r);g=1/0,w=1/0,_=-1/0,T=-1/0;for(var C=0;C=e?n=r-a:n=a-r,-180/Math.PI*Math.atan2(n,i)}function cZ(e,r,t,a,n,i,l){var o=n.label.textposition,s=n.label.textangle,u=n.label.padding,f=n.type,v=Math.PI/180*i,h=Math.sin(v),d=Math.cos(v),m=n.label.xanchor,y=n.label.yanchor,g,_,w,T;if(f==="line"){o==="start"?(g=e,_=r):o==="end"?(g=t,_=a):(g=(e+t)/2,_=(r+a)/2),m==="auto"&&(o==="start"?s==="auto"?t>e?m="left":te?m="right":te?m="right":te?m="left":t{"use strict";var vZ=Ie(),hZ=vZ.strTranslate,PT=Qn(),NT=Xs(),dZ=NT.drawMode,FT=NT.selectMode,IT=br(),RT=Er(),ch=ah(),pZ=ch.i000,mZ=ch.i090,yZ=ch.i180,gZ=ch.i270,bZ=dl(),HT=bZ.clearOutlineControllers,Dy=wl(),fh=Dy.pointsOnRectangle,qy=Dy.pointsOnEllipse,xZ=Dy.writePaths,_Z=sh().newShapes,wZ=sh().createShapeObj,TZ=Sy(),MZ=Ly();OT.exports=function e(r,t,a,n){n||(n=0);var i=a.gd;function l(){e(r,t,a,n++),(qy(r[0])||a.hasText)&&o({redrawing:!0})}function o(Y){var O={};a.isActiveShape!==void 0&&(a.isActiveShape=!1,O=_Z(t,a)),a.isActiveSelection!==void 0&&(a.isActiveSelection=!1,O=TZ(t,a),i._fullLayout._reselect=!0),Object.keys(O).length&&IT.call((Y||{}).redrawing?"relayout":"_guiRelayout",i,O)}var s=i._fullLayout,u=s._zoomlayer,f=a.dragmode,v=dZ(f),h=FT(f);(v||h)&&(i._fullLayout._outlining=!0),HT(i),t.attr("d",xZ(r));var d,m,y,g,_;if(!n&&(a.isActiveShape||a.isActiveSelection)){_=AZ([],r);var w=u.append("g").attr("class","outline-controllers");R(w),X()}if(v&&a.hasText){var T=u.select(".label-temp"),b=wZ(t,a,a.dragmode);MZ(i,"label-temp",b,T)}function M(Y){y=+Y.srcElement.getAttribute("data-i"),g=+Y.srcElement.getAttribute("data-j"),d[y][g].moveFn=C}function C(Y,O){if(r.length){var V=_[y][g][1],Q=_[y][g][2],K=r[y],ne=K.length;if(fh(K)){var me=Y,de=O;if(a.isActiveSelection){var ke=zT(K,g);ke[1]===K[g][1]?de=0:me=0}for(var re=0;re1&&!(Y.length===2&&Y[1][0]==="Z")&&(g===0&&(Y[0][0]="M"),r[y]=Y,l(),o())}}function D(Y,O){if(Y===2){y=+O.srcElement.getAttribute("data-i"),g=+O.srcElement.getAttribute("data-j");var V=r[y];!fh(V)&&!qy(V)&&q()}}function R(Y){d=[];for(var O=0;O{"use strict";var SZ=Ir(),WT=br(),BT=Ie(),$s=dt(),CZ=wl().readPaths,LZ=vh(),dh=Ly(),ZT=dl().clearOutlineControllers,Ey=Er(),Ry=at(),qZ=ct().arrayEditor,YT=Qn(),UT=_l(),Lo=kf(),$a=Ml(),Py=$a.getPathString;KT.exports={draw:zy,drawOne:XT,eraseActiveShape:PZ,drawLabel:dh};function zy(e){var r=e._fullLayout;r._shapeUpperLayer.selectAll("path").remove(),r._shapeLowerLayer.selectAll("path").remove(),r._shapeUpperLayer.selectAll("text").remove(),r._shapeLowerLayer.selectAll("text").remove();for(var t in r._plots){var a=r._plots[t].shapelayer;a&&(a.selectAll("path").remove(),a.selectAll("text").remove())}for(var n=0;nl&&Be>o&&!Fe.shiftKey?YT.getCursor(Ge/Ne,1-qe/Be):"move";UT(r,He),Ce=He.split("-")[0]}}function ge(Fe){hh(e)||(s&&(_=K(t.xanchor)),u&&(w=ne(t.yanchor)),t.type==="path"?z=t.path:(d=s?t.x0:K(t.x0),m=u?t.y0:ne(t.y0),y=s?t.x1:K(t.x1),g=u?t.y1:ne(t.y1)),dg?(T=m,k="y0",b=g,q="y1"):(T=g,k="y1",b=m,q="y0"),se(Fe),we(n,t),Re(r,t,e),re.moveFn=Ce==="move"?U:ye,re.altKey=Fe.altKey)}function B(){hh(e)||(UT(r),pe(n),JT(r,e,t),WT.call("_guiRelayout",e,i.getUpdateObj()))}function $(){hh(e)||pe(n)}function U(Fe,Ee){if(t.type==="path"){var Ne=function(qe){return qe},Be=Ne,Ge=Ne;s?h("xanchor",t.xanchor=me(_+Fe)):(Be=function(He){return me(K(He)+Fe)},I&&I.type==="date"&&(Be=$a.encodeDate(Be))),u?h("yanchor",t.yanchor=de(w+Ee)):(Ge=function(He){return de(ne(He)+Ee)},J&&J.type==="date"&&(Ge=$a.encodeDate(Ge))),h("path",t.path=VT(z,Be,Ge))}else s?h("xanchor",t.xanchor=me(_+Fe)):(h("x0",t.x0=me(d+Fe)),h("x1",t.x1=me(y+Fe))),u?h("yanchor",t.yanchor=de(w+Ee)):(h("y0",t.y0=de(m+Ee)),h("y1",t.y1=de(g+Ee)));r.attr("d",Py(e,t)),we(n,t),dh(e,a,t,F)}function ye(Fe,Ee){if(v){var Ne=function(Ze){return Ze},Be=Ne,Ge=Ne;s?h("xanchor",t.xanchor=me(_+Fe)):(Be=function(lr){return me(K(lr)+Fe)},I&&I.type==="date"&&(Be=$a.encodeDate(Be))),u?h("yanchor",t.yanchor=de(w+Ee)):(Ge=function(lr){return de(ne(lr)+Ee)},J&&J.type==="date"&&(Ge=$a.encodeDate(Ge))),h("path",t.path=VT(z,Be,Ge))}else if(f){if(Ce==="resize-over-start-point"){var qe=d+Fe,He=u?m-Ee:m+Ee;h("x0",t.x0=s?qe:me(qe)),h("y0",t.y0=u?He:de(He))}else if(Ce==="resize-over-end-point"){var Ye=y+Fe,ie=u?g-Ee:g+Ee;h("x1",t.x1=s?Ye:me(Ye)),h("y1",t.y1=u?ie:de(ie))}}else{var be=function(Ze){return Ce.indexOf(Ze)!==-1},Ke=be("n"),hr=be("s"),Pe=be("w"),Me=be("e"),Se=Ke?T+Ee:T,Oe=hr?b+Ee:b,Je=Pe?M+Fe:M,We=Me?C+Fe:C;u&&(Ke&&(Se=T-Ee),hr&&(Oe=b-Ee)),(!u&&Oe-Se>o||u&&Se-Oe>o)&&(h(k,t[k]=u?Se:de(Se)),h(q,t[q]=u?Oe:de(Oe))),We-Je>l&&(h(D,t[D]=s?Je:me(Je)),h(R,t[R]=s?We:me(We)))}r.attr("d",Py(e,t)),we(n,t),dh(e,a,t,F)}function we(Fe,Ee){(s||u)&&Ne();function Ne(){var Be=Ee.type!=="path",Ge=Fe.selectAll(".visual-cue").data([0]),qe=1;Ge.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":qe}).classed("visual-cue",!0);var He=K(s?Ee.xanchor:BT.midRange(Be?[Ee.x0,Ee.x1]:$a.extractPathCoords(Ee.path,Lo.paramIsX))),Ye=ne(u?Ee.yanchor:BT.midRange(Be?[Ee.y0,Ee.y1]:$a.extractPathCoords(Ee.path,Lo.paramIsY)));if(He=$a.roundPositionForSharpStrokeRendering(He,qe),Ye=$a.roundPositionForSharpStrokeRendering(Ye,qe),s&&u){var ie="M"+(He-1-qe)+","+(Ye-1-qe)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Ge.attr("d",ie)}else if(s){var be="M"+(He-1-qe)+","+(Ye-9-qe)+"v18 h2 v-18 Z";Ge.attr("d",be)}else{var Ke="M"+(He-9-qe)+","+(Ye-1-qe)+"h18 v2 h-18 Z";Ge.attr("d",Ke)}}}function pe(Fe){Fe.selectAll(".visual-cue").remove()}function Re(Fe,Ee,Ne){var Be=Ee.xref,Ge=Ee.yref,qe=$s.getFromId(Ne,Be),He=$s.getFromId(Ne,Ge),Ye="";Be!=="paper"&&!qe.autorange&&(Ye+=Be),Ge!=="paper"&&!He.autorange&&(Ye+=Ge),Ry.setClipUrl(Fe,Ye?"clip"+Ne._fullLayout._uid+Ye:null,Ne)}}function VT(e,r,t){return e.replace(Lo.segmentRE,function(a){var n=0,i=a.charAt(0),l=Lo.paramIsX[i],o=Lo.paramIsY[i],s=Lo.numParams[i],u=a.substr(1).replace(Lo.paramRE,function(f){return n>=s||(l[n]?f=r(f):o[n]&&(f=t(f)),n++),f});return i+u})}function EZ(e,r){if(ph(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeShapeIndex){GT(e);return}e._fullLayout._activeShapeIndex=a,e._fullLayout._deactivateShape=GT,zy(e)}}}function GT(e){if(ph(e)){var r=e._fullLayout._activeShapeIndex;r>=0&&(ZT(e),delete e._fullLayout._activeShapeIndex,zy(e))}}function PZ(e){if(ph(e)){ZT(e);var r=e._fullLayout._activeShapeIndex,t=(e.layout||{}).shapes||[];if(r{"use strict";var Cn=br(),QT=Ft(),$T=Zt(),Ur=rh(),RZ=mh().eraseActiveShape,yh=Ie(),Nr=yh._,Vr=iM.exports={};Vr.toImage={name:"toImage",title:function(e){var r=e._context.toImageButtonOptions||{},t=r.format||"png";return t==="png"?Nr(e,"Download plot as a PNG"):Nr(e,"Download plot")},icon:Ur.camera,click:function(e){var r=e._context.toImageButtonOptions,t={format:r.format||"png"};yh.notifier(Nr(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(a){a in r&&(t[a]=r[a])}),Cn.call("downloadImage",e,t).then(function(a){yh.notifier(Nr(e,"Snapshot succeeded")+" - "+a,"long")}).catch(function(){yh.notifier(Nr(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Vr.sendDataToCloud={name:"sendDataToCloud",title:function(e){return Nr(e,"Edit in Chart Studio")},icon:Ur.disk,click:function(e){QT.sendDataToCloud(e)}};Vr.editInChartStudio={name:"editInChartStudio",title:function(e){return Nr(e,"Edit in Chart Studio")},icon:Ur.pencil,click:function(e){QT.sendDataToCloud(e)}};Vr.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return Nr(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Ur.zoombox,click:Na};Vr.pan2d={name:"pan2d",_cat:"pan",title:function(e){return Nr(e,"Pan")},attr:"dragmode",val:"pan",icon:Ur.pan,click:Na};Vr.select2d={name:"select2d",_cat:"select",title:function(e){return Nr(e,"Box Select")},attr:"dragmode",val:"select",icon:Ur.selectbox,click:Na};Vr.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return Nr(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Ur.lasso,click:Na};Vr.drawclosedpath={name:"drawclosedpath",title:function(e){return Nr(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Ur.drawclosedpath,click:Na};Vr.drawopenpath={name:"drawopenpath",title:function(e){return Nr(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Ur.drawopenpath,click:Na};Vr.drawline={name:"drawline",title:function(e){return Nr(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Ur.drawline,click:Na};Vr.drawrect={name:"drawrect",title:function(e){return Nr(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Ur.drawrect,click:Na};Vr.drawcircle={name:"drawcircle",title:function(e){return Nr(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Ur.drawcircle,click:Na};Vr.eraseshape={name:"eraseshape",title:function(e){return Nr(e,"Erase active shape")},icon:Ur.eraseshape,click:RZ};Vr.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return Nr(e,"Zoom in")},attr:"zoom",val:"in",icon:Ur.zoom_plus,click:Na};Vr.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return Nr(e,"Zoom out")},attr:"zoom",val:"out",icon:Ur.zoom_minus,click:Na};Vr.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return Nr(e,"Autoscale")},attr:"zoom",val:"auto",icon:Ur.autoscale,click:Na};Vr.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return Nr(e,"Reset axes")},attr:"zoom",val:"reset",icon:Ur.home,click:Na};Vr.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return Nr(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Ur.tooltip_basic,gravity:"ne",click:Na};Vr.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return Nr(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Ur.tooltip_compare,gravity:"ne",click:Na};function Na(e,r){var t=r.currentTarget,a=t.getAttribute("data-attr"),n=t.getAttribute("data-val")||!0,i=e._fullLayout,l={},o=$T.list(e,null,!0),s=i._cartesianSpikesEnabled,u,f;if(a==="zoom"){var v=n==="in"?.5:2,h=(1+v)/2,d=(1-v)/2,m,y;for(f=0;f{"use strict";var lM=Iy(),FZ=Object.keys(lM),oM=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],sM=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(oM),eu=[],IZ=function(e){if(sM.indexOf(e._cat||e.name)===-1){var r=e.name,t=(e._cat||e.name).toLowerCase();eu.indexOf(r)===-1&&eu.push(r),eu.indexOf(t)===-1&&eu.push(t)}};FZ.forEach(function(e){IZ(lM[e])});eu.sort();uM.exports={DRAW_MODES:oM,backButtons:sM,foreButtons:eu}});var Oy=Z((jse,fM)=>{"use strict";var $se=Hy();fM.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var vM=Z((eue,cM)=>{"use strict";var HZ=Ie(),Cf=Er(),OZ=ct(),BZ=Oy();cM.exports=function(r,t){var a=r.modebar||{},n=OZ.newContainer(t,"modebar");function i(o,s){return HZ.coerce(a,n,BZ,o,s)}i("orientation"),i("bgcolor",Cf.addOpacity(t.paper_bgcolor,.5));var l=Cf.contrast(Cf.rgb(t.modebar.bgcolor));i("color",Cf.addOpacity(l,.3)),i("activecolor",Cf.addOpacity(l,.7)),i("uirevision",t.uirevision),i("add"),i("remove")}});var mM=Z((rue,pM)=>{"use strict";var By=Ir(),YZ=Hr(),bh=Ie(),hM=rh(),UZ=sv().version,VZ=new DOMParser;function dM(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Si=dM.prototype;Si.update=function(e,r){this.graphInfo=e;var t=this.graphInfo._context,a=this.graphInfo._fullLayout,n="modebar-"+a._uid;this.element.setAttribute("id",n),this.element.setAttribute("role","toolbar"),this._uid=n,this.element.className="modebar modebar--custom",t.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),a.modebar.orientation==="v"&&(this.element.className+=" vertical",r=r.reverse());var i=a.modebar,l="#"+n+" .modebar-group";document.querySelectorAll(l).forEach(function(v){v.style.backgroundColor=i.bgcolor});var o=!this.hasButtons(r),s=this.hasLogo!==t.displaylogo,u=this.locale!==t.locale;if(this.locale=t.locale,(o||s||u)&&(this.removeAllButtons(),this.updateButtons(r),t.watermark||t.displaylogo)){var f=this.getLogo();t.watermark&&(f.className=f.className+" watermark"),a.modebar.orientation==="v"?this.element.insertBefore(f,this.element.childNodes[0]):this.element.appendChild(f),this.hasLogo=!0}this.updateActiveButton(),bh.setStyleOnHover("#"+n+" .modebar-btn",".active",".icon path","fill: "+i.activecolor,"fill: "+i.color,this.element)};Si.updateButtons=function(e){var r=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(t){var a=r.createGroup();t.forEach(function(n){var i=n.name;if(!i)throw new Error("must provide button 'name' in button config");if(r.buttonsNames.indexOf(i)!==-1)throw new Error("button name '"+i+"' is taken");r.buttonsNames.push(i);var l=r.createButton(n);r.buttonElements.push(l),a.appendChild(l)}),r.element.appendChild(a)})};Si.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var r=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=r.bgcolor,e};Si.createButton=function(e){var r=this,t=document.createElement("button");t.setAttribute("type","button"),t.setAttribute("rel","tooltip"),t.className="modebar-btn";var a=e.title;a===void 0?a=e.name:typeof a=="function"&&(a=a(this.graphInfo)),(a||a===0)&&(t.setAttribute("data-title",a),t.setAttribute("aria-label",a)),e.attr!==void 0&&t.setAttribute("data-attr",e.attr);var n=e.val;n!==void 0&&(typeof n=="function"&&(n=n(this.graphInfo)),t.setAttribute("data-val",n));var i=e.click;if(typeof i!="function")throw new Error("must provide button 'click' function in button config");t.addEventListener("click",function(o){e.click(r.graphInfo,o),r.updateActiveButton(o.currentTarget)}),t.setAttribute("data-toggle",e.toggle||!1),e.toggle&&By.select(t).classed("active",!0);var l=e.icon;return typeof l=="function"?t.appendChild(l()):t.appendChild(this.createIcon(l||hM.question)),t.setAttribute("data-gravity",e.gravity||"n"),t};Si.createIcon=function(e){var r=YZ(e.height)?Number(e.height):e.ascent-e.descent,t="http://www.w3.org/2000/svg",a;if(e.path){a=document.createElementNS(t,"svg"),a.setAttribute("viewBox",[0,0,e.width,r].join(" ")),a.setAttribute("class","icon");var n=document.createElementNS(t,"path");n.setAttribute("d",e.path),e.transform?n.setAttribute("transform",e.transform):e.ascent!==void 0&&n.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),a.appendChild(n)}if(e.svg){var i=VZ.parseFromString(e.svg,"application/xml");a=i.childNodes[0]}return a.setAttribute("height","1em"),a.setAttribute("width","1em"),a};Si.updateActiveButton=function(e){var r=this.graphInfo._fullLayout,t=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(a){var n=a.getAttribute("data-val")||!0,i=a.getAttribute("data-attr"),l=a.getAttribute("data-toggle")==="true",o=By.select(a),s=function(v,h){var d=r.modebar,m=v.querySelector(".icon path");m&&(h||v.matches(":hover")?m.style.fill=d.activecolor:m.style.fill=d.color)};if(l){if(i===t){var u=!o.classed("active");o.classed("active",u),s(a,u)}}else{var f=i===null?i:bh.nestedProperty(r,i).get();o.classed("active",f===n),s(a,f===n)}})};Si.hasButtons=function(e){var r=this.buttons;if(!r||e.length!==r.length)return!1;for(var t=0;t{"use strict";var ZZ=Zt(),yM=ln(),Yy=br(),XZ=bi().isUnifiedHover,JZ=mM(),xh=Iy(),KZ=Hy().DRAW_MODES,QZ=Ie().extendDeep;gM.exports=function(r){var t=r._fullLayout,a=r._context,n=t._modeBar;if(!a.displayModeBar&&!a.watermark){n&&(n.destroy(),delete t._modeBar);return}if(!Array.isArray(a.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(a.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var i=a.modeBarButtons,l;Array.isArray(i)&&i.length?l=aX(i):!a.displayModeBar&&a.watermark?l=[]:l=$Z(r),n?n.update(r,l):t._modeBar=JZ(r,l)};function $Z(e){var r=e._fullLayout,t=e._fullData,a=e._context;function n(O,V){if(typeof V=="string"){if(V.toLowerCase()===O.toLowerCase())return!0}else{var Q=V.name,K=V._cat||V.name;if(Q===O||K===O.toLowerCase())return!0}return!1}var i=r.modebar.add;typeof i=="string"&&(i=[i]);var l=r.modebar.remove;typeof l=="string"&&(l=[l]);var o=a.modeBarButtonsToAdd.concat(i.filter(function(O){for(var V=0;V1?(R=["toggleHover"],z=["resetViews"]):v?(D=["zoomInGeo","zoomOutGeo"],R=["hoverClosestGeo"],z=["resetGeo"]):f?(R=["hoverClosest3d"],z=["resetCameraDefault3d","resetCameraLastSave3d"]):y?(D=["zoomInMapbox","zoomOutMapbox"],R=["toggleHover"],z=["resetViewMapbox"]):g?(D=["zoomInMap","zoomOutMap"],R=["toggleHover"],z=["resetViewMap"]):h?R=["hoverClosestPie"]:T?(R=["hoverClosestCartesian","hoverCompareCartesian"],z=["resetViewSankey"]):R=["toggleHover"],u&&R.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(rX(t)||M)&&(R=[]),u&&!b&&(D=["zoomIn2d","zoomOut2d","autoScale2d"],z[0]!=="resetViews"&&(z=["resetScale2d"])),f?F=["zoom3d","pan3d","orbitRotation","tableRotation"]:u&&!b||m?F=["zoom2d","pan2d"]:y||g||v?F=["pan2d"]:_&&(F=["zoom2d"]),eX(t)&&F.push("select2d","lasso2d");var I=[],H=function(O){I.indexOf(O)===-1&&R.indexOf(O)!==-1&&I.push(O)};if(Array.isArray(o)){for(var J=[],X=0;X{"use strict";xM.exports={moduleType:"component",name:"modebar",layoutAttributes:Oy(),supplyLayoutDefaults:vM(),manage:bM()}});var Vy=Z((nue,_M)=>{"use strict";var nX=Pa().FROM_BL;_M.exports=function(r,t,a){a===void 0&&(a=nX[r.constraintoward||"center"]);var n=[r.r2l(r.range[0]),r.r2l(r.range[1])],i=n[0]+(n[1]-n[0])*a;r.range=r._input.range=[r.l2r(i+(n[0]-i)*t),r.l2r(i+(n[1]-i)*t)],r.setScale()}});var qf=Z(Lf=>{"use strict";var qo=Ie(),Gy=pf(),jn=Zt().id2name,iX=Xn(),wM=Vy(),lX=T0(),oX=Vt().ALMOST_EQUAL,sX=Pa().FROM_BL;Lf.handleDefaults=function(e,r,t){var a=t.axIds,n=t.axHasImage,i=r._axisConstraintGroups=[],l=r._axisMatchGroups=[],o,s,u,f,v,h,d,m;for(o=0;oi?t.substr(i):a.substr(n))+l}function fX(e,r){for(var t=r._size,a=t.h/t.w,n={},i=Object.keys(e),l=0;loX*m&&!w)){for(i=0;iF&&QR&&(R=Q);var ne=(R-D)/(2*z);v/=ne,D=s.l2r(D),R=s.l2r(R),s.range=s._input.range=C{"use strict";var wh=Ir(),Fa=br(),cn=Ft(),Ln=Ie(),Xy=Ta(),Jy=eh(),Df=Er(),ru=at(),kM=hf(),DM=Uy(),Ef=dt(),Wi=Pa(),EM=qf(),cX=EM.enforce,vX=EM.clean,SM=pf().doAutoRange,PM="start",hX="middle",RM="end",dX=ya().zindexSeparator;ra.layoutStyles=function(e){return Ln.syncOrAsync([cn.doAutoMargin,mX],e)};function pX(e,r,t){for(var a=0;a=e[1]||n[1]<=e[0])&&i[0]r[0])return!0}return!1}function mX(e){var r=e._fullLayout,t=r._size,a=t.p,n=Ef.list(e,"",!0),i,l,o,s,u,f;if(r._paperdiv.style({width:e._context.responsive&&r.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":r.width+"px",height:e._context.responsive&&r.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":r.height+"px"}).selectAll(".main-svg").call(ru.setSize,r.width,r.height),e._context.setBackground(e,r.paper_bgcolor),ra.drawMainTitle(e),DM.manage(e),!r._has("cartesian"))return cn.previousPromises(e);function v(ge,B,$){var U=ge._lw/2;if(ge._id.charAt(0)==="x"){if(B){if($==="top")return B._offset-a-U}else return t.t+t.h*(1-(ge.position||0))+U%1;return B._offset+B._length+a+U}if(B){if($==="right")return B._offset+B._length+a+U}else return t.l+t.w*(ge.position||0)+U%1;return B._offset-a-U}for(i=0;i0){xX(e,i,u,s),o.attr({x:l,y:i,"text-anchor":a,dy:qM(r.yanchor)}).call(Xy.positionText,l,i);var f=(r.text.match(Xy.BR_TAG_ALL)||[]).length;if(f){var v=Wi.LINE_SPACING*f+Wi.MID_SHIFT;r.y===0&&(v=-v),o.selectAll(".line").each(function(){var g=+this.getAttribute("dy").slice(0,-2)-v+"em";this.setAttribute("dy",g)})}var h=wh.select(e).selectAll(".gtitle-subtitle");if(h.node()){var d=o.node().getBBox(),m=d.y+d.height,y=m+kM.SUBTITLE_PADDING_EM*r.subtitle.font.size;h.attr({x:l,y,"text-anchor":a,dy:qM(r.yanchor)}).call(Xy.positionText,l,y)}}}};function yX(e,r,t,a,n){var i=r.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,l=Ln.isTopAnchor(r)?a:a-n,o=t==="b"?i-l:l;return Ln.isTopAnchor(r)&&t==="t"||Ln.isBottomAnchor(r)&&t==="b"?!1:o.5?"t":"b",l=e._fullLayout.margin[i],o=0;return r.yref==="paper"?o=t+r.pad.t+r.pad.b:r.yref==="container"&&(o=gX(i,a,n,e._fullLayout.height,t)+r.pad.t+r.pad.b),o>l?o:0}function xX(e,r,t,a){var n="title.automargin",i=e._fullLayout.title,l=i.y>.5?"t":"b",o={x:i.x,y:i.y,t:0,b:0},s={};i.yref==="paper"&&yX(e,i,l,r,a)?o[l]=t:i.yref==="container"&&(s[l]=t,e._fullLayout._reservedMargin[n]=s),cn.allowAutoMargin(e,n),cn.autoMargin(e,n,o)}function _X(e,r){var t=e.title,a=e._size,n=0;switch(r===PM?n=t.pad.l:r===RM&&(n=-t.pad.r),t.xref){case"paper":return a.l+a.w*t.x+n;case"container":default:return e.width*t.x+n}}function wX(e,r){var t=e.title,a=e._size,n=0;if(r==="0em"||!r?n=-t.pad.b:r===Wi.CAP_SHIFT+"em"&&(n=t.pad.t),t.y==="auto")return a.t/2;switch(t.yref){case"paper":return a.t+a.h-a.h*t.y+n;case"container":default:return e.height-e.height*t.y+n}}function qM(e){return e==="top"?Wi.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":Wi.MID_SHIFT+"em"}function TX(e){var r=e.title,t=hX;return Ln.isRightAnchor(r)?t=RM:Ln.isLeftAnchor(r)&&(t=PM),t}function MX(e){var r=e.title,t="0em";return Ln.isTopAnchor(r)?t=Wi.CAP_SHIFT+"em":Ln.isMiddleAnchor(r)&&(t=Wi.MID_SHIFT+"em"),t}ra.doTraceStyle=function(e){var r=e.calcdata,t=[],a;for(a=0;a{"use strict";var AX=wl().readPaths,kX=vh(),zM=dl().clearOutlineControllers,Ky=Er(),NM=at(),SX=ct().arrayEditor,FM=Ml(),CX=FM.getPathString;HM.exports={draw:Mh,drawOne:IM,activateLastSelection:DX};function Mh(e){var r=e._fullLayout;zM(e),r._selectionLayer.selectAll("path").remove();for(var t in r._plots){var a=r._plots[t].selectionLayer;a&&a.selectAll("path").remove()}for(var n=0;n=0;g--){var _=l.append("path").attr(s).style("opacity",g?.1:u).call(Ky.stroke,v).call(Ky.fill,f).call(NM.dashLine,g?"solid":d,g?4+h:h);if(LX(_,e,a),m){var w=SX(e.layout,"selections",a);_.style({cursor:"move"});var T={element:_.node(),plotinfo:n,gd:e,editHelpers:w,isActiveSelection:!0},b=AX(o,e);kX(b,_,T)}else _.style("pointer-events",g?"all":"none");y[g]=_}var M=y[0],C=y[1];C.node().addEventListener("click",function(){return qX(e,M)})}}function LX(e,r,t){var a=t.xref+t.yref;NM.setClipUrl(e,"clip"+r._fullLayout._uid+a,r)}function qX(e,r){if(Ah(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeSelectionIndex){Qy(e);return}e._fullLayout._activeSelectionIndex=a,e._fullLayout._deactivateSelection=Qy,Mh(e)}}}function DX(e){if(Ah(e)){var r=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=r,e._fullLayout._deactivateSelection=Qy,Mh(e)}}function Qy(e){if(Ah(e)){var r=e._fullLayout._activeSelectionIndex;r>=0&&(zM(e),delete e._fullLayout._activeSelectionIndex,Mh(e))}}});var BM=Z((sue,OM)=>{function EX(){var e,r=0,t=!1;function a(n,i){return e.list.push({type:n,data:i?JSON.parse(JSON.stringify(i)):void 0}),e}return e={list:[],segmentId:function(){return r++},checkIntersection:function(n,i){return a("check",{seg1:n,seg2:i})},segmentChop:function(n,i){return a("div_seg",{seg:n,pt:i}),a("chop",{seg:n,pt:i})},statusRemove:function(n){return a("pop_seg",{seg:n})},segmentUpdate:function(n){return a("seg_update",{seg:n})},segmentNew:function(n,i){return a("new_seg",{seg:n,primary:i})},segmentRemove:function(n){return a("rem_seg",{seg:n})},tempStatus:function(n,i,l){return a("temp_status",{seg:n,above:i,below:l})},rewind:function(n){return a("rewind",{seg:n})},status:function(n,i,l){return a("status",{seg:n,above:i,below:l})},vert:function(n){return n===t?e:(t=n,a("vert",{x:n}))},log:function(n){return typeof n!="string"&&(n=JSON.stringify(n,!1," ")),a("log",{txt:n})},reset:function(){return a("reset")},selected:function(n){return a("selected",{segs:n})},chainStart:function(n){return a("chain_start",{seg:n})},chainRemoveHead:function(n,i){return a("chain_rem_head",{index:n,pt:i})},chainRemoveTail:function(n,i){return a("chain_rem_tail",{index:n,pt:i})},chainNew:function(n,i){return a("chain_new",{pt1:n,pt2:i})},chainMatch:function(n){return a("chain_match",{index:n})},chainClose:function(n){return a("chain_close",{index:n})},chainAddHead:function(n,i){return a("chain_add_head",{index:n,pt:i})},chainAddTail:function(n,i){return a("chain_add_tail",{index:n,pt:i})},chainConnect:function(n,i){return a("chain_con",{index1:n,index2:i})},chainReverse:function(n){return a("chain_rev",{index:n})},chainJoin:function(n,i){return a("chain_join",{index1:n,index2:i})},done:function(){return a("done")}},e}OM.exports=EX});var UM=Z((uue,YM)=>{function PX(e){typeof e!="number"&&(e=1e-10);var r={epsilon:function(t){return typeof t=="number"&&(e=t),e},pointAboveOrOnLine:function(t,a,n){var i=a[0],l=a[1],o=n[0],s=n[1],u=t[0],f=t[1];return(o-i)*(f-l)-(s-l)*(u-i)>=-e},pointBetween:function(t,a,n){var i=t[1]-a[1],l=n[0]-a[0],o=t[0]-a[0],s=n[1]-a[1],u=o*l+i*s;if(u-e)},pointsSameX:function(t,a){return Math.abs(t[0]-a[0])e!=o-i>e&&(l-f)*(i-v)/(o-v)+f-n>e&&(s=!s),l=f,o=v}return s}};return r}YM.exports=PX});var GM=Z((fue,VM)=>{var RX={create:function(){var e={root:{root:!0,next:null},exists:function(r){return!(r===null||r===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(r,t){for(var a=e.root,n=e.root.next;n!==null;){if(t(n)){r.prev=n.prev,r.next=n,n.prev.next=r,n.prev=r;return}a=n,n=n.next}a.next=r,r.prev=a,r.next=null},findTransition:function(r){for(var t=e.root,a=e.root.next;a!==null&&!r(a);)t=a,a=a.next;return{before:t===e.root?null:t,after:a,insert:function(n){return n.prev=t,n.next=a,t.next=n,a!==null&&(a.prev=n),n}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};VM.exports=RX});var ZM=Z((cue,WM)=>{var Pf=GM();function zX(e,r,t){function a(m,y){return{id:t?t.segmentId():-1,start:m,end:y,myFill:{above:null,below:null},otherFill:null}}function n(m,y,g){return{id:t?t.segmentId():-1,start:m,end:y,myFill:{above:g.myFill.above,below:g.myFill.below},otherFill:null}}var i=Pf.create();function l(m,y,g,_,w,T){var b=r.pointsCompare(y,w);return b!==0?b:r.pointsSame(g,T)?0:m!==_?m?1:-1:r.pointAboveOrOnLine(g,_?w:T,_?T:w)?1:-1}function o(m,y){i.insertBefore(m,function(g){var _=l(m.isStart,m.pt,y,g.isStart,g.pt,g.other.pt);return _<0})}function s(m,y){var g=Pf.node({isStart:!0,pt:m.start,seg:m,primary:y,other:null,status:null});return o(g,m.end),g}function u(m,y,g){var _=Pf.node({isStart:!1,pt:y.end,seg:y,primary:g,other:m,status:null});m.other=_,o(_,m.pt)}function f(m,y){var g=s(m,y);return u(g,m,y),g}function v(m,y){t&&t.segmentChop(m.seg,y),m.other.remove(),m.seg.end=y,m.other.pt=y,o(m.other,m.pt)}function h(m,y){var g=n(y,m.seg.end,m.seg);return v(m,y),f(g,m.primary)}function d(m,y){var g=Pf.create();function _(J,X){var Y=J.seg.start,O=J.seg.end,V=X.seg.start,Q=X.seg.end;return r.pointsCollinear(Y,V,Q)?r.pointsCollinear(O,V,Q)||r.pointAboveOrOnLine(O,V,Q)?1:-1:r.pointAboveOrOnLine(Y,V,Q)?1:-1}function w(J){return g.findTransition(function(X){var Y=_(J,X.ev);return Y>0})}function T(J,X){var Y=J.seg,O=X.seg,V=Y.start,Q=Y.end,K=O.start,ne=O.end;t&&t.checkIntersection(Y,O);var me=r.linesIntersect(V,Q,K,ne);if(me===!1){if(!r.pointsCollinear(V,Q,K)||r.pointsSame(V,ne)||r.pointsSame(Q,K))return!1;var de=r.pointsSame(V,K),ke=r.pointsSame(Q,ne);if(de&&ke)return X;var re=!de&&r.pointBetween(V,K,ne),Ce=!ke&&r.pointBetween(Q,K,ne);if(de)return Ce?h(X,Q):h(J,ne),X;re&&(ke||(Ce?h(X,Q):h(J,ne)),h(X,V))}else me.alongA===0&&(me.alongB===-1?h(J,K):me.alongB===0?h(J,me.pt):me.alongB===1&&h(J,ne)),me.alongB===0&&(me.alongA===-1?h(X,V):me.alongA===0?h(X,me.pt):me.alongA===1&&h(X,Q));return!1}for(var b=[];!i.isEmpty();){var M=i.getHead();if(t&&t.vert(M.pt[0]),M.isStart){let J=function(){if(k){var X=T(M,k);if(X)return X}return q?T(M,q):!1};var H=J;t&&t.segmentNew(M.seg,M.primary);var C=w(M),k=C.before?C.before.ev:null,q=C.after?C.after.ev:null;t&&t.tempStatus(M.seg,k?k.seg:!1,q?q.seg:!1);var D=J();if(D){if(e){var R;M.seg.myFill.below===null?R=!0:R=M.seg.myFill.above!==M.seg.myFill.below,R&&(D.seg.myFill.above=!D.seg.myFill.above)}else D.seg.otherFill=M.seg.myFill;t&&t.segmentUpdate(D.seg),M.other.remove(),M.remove()}if(i.getHead()!==M){t&&t.rewind(M.seg);continue}if(e){var R;M.seg.myFill.below===null?R=!0:R=M.seg.myFill.above!==M.seg.myFill.below,q?M.seg.myFill.below=q.seg.myFill.above:M.seg.myFill.below=m,R?M.seg.myFill.above=!M.seg.myFill.below:M.seg.myFill.above=M.seg.myFill.below}else if(M.seg.otherFill===null){var z;q?M.primary===q.primary?z=q.seg.otherFill.above:z=q.seg.myFill.above:z=M.primary?y:m,M.seg.otherFill={above:z,below:z}}t&&t.status(M.seg,k?k.seg:!1,q?q.seg:!1),M.other.status=C.insert(Pf.node({ev:M}))}else{var F=M.status;if(F===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(g.exists(F.prev)&&g.exists(F.next)&&T(F.prev.ev,F.next.ev),t&&t.statusRemove(F.ev.seg),F.remove(),!M.primary){var I=M.seg.myFill;M.seg.myFill=M.seg.otherFill,M.seg.otherFill=I}b.push(M.seg)}i.getHead().remove()}return t&&t.done(),b}return e?{addRegion:function(m){for(var y,g=m[m.length-1],_=0;_{function NX(e,r,t){var a=[],n=[];return e.forEach(function(i){var l=i.start,o=i.end;if(r.pointsSame(l,o)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}t&&t.chainStart(i);var s={index:0,matches_head:!1,matches_pt1:!1},u={index:0,matches_head:!1,matches_pt1:!1},f=s;function v(H,J,X){return f.index=H,f.matches_head=J,f.matches_pt1=X,f===s?(f=u,!1):(f=null,!0)}for(var h=0;h{function Rf(e,r,t){var a=[];return e.forEach(function(n){var i=(n.myFill.above?8:0)+(n.myFill.below?4:0)+(n.otherFill&&n.otherFill.above?2:0)+(n.otherFill&&n.otherFill.below?1:0);r[i]!==0&&a.push({id:t?t.segmentId():-1,start:n.start,end:n.end,myFill:{above:r[i]===1,below:r[i]===2},otherFill:null})}),t&&t.selected(a),a}var FX={union:function(e,r){return Rf(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],r)},intersect:function(e,r){return Rf(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],r)},difference:function(e,r){return Rf(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],r)},differenceRev:function(e,r){return Rf(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],r)},xor:function(e,r){return Rf(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],r)}};KM.exports=FX});var jM=Z((due,$M)=>{var IX={toPolygon:function(e,r){function t(i){if(i.length<=0)return e.segments({inverted:!1,regions:[]});function l(u){var f=u.slice(0,u.length-1);return e.segments({inverted:!1,regions:[f]})}for(var o=l(i[0]),s=1;s{var HX=BM(),OX=UM(),eA=ZM(),BX=JM(),zf=QM(),rA=jM(),qn=!1,Nf=OX(),ja;ja={buildLog:function(e){return e===!0?qn=HX():e===!1&&(qn=!1),qn===!1?!1:qn.list},epsilon:function(e){return Nf.epsilon(e)},segments:function(e){var r=eA(!0,Nf,qn);return e.regions.forEach(r.addRegion),{segments:r.calculate(e.inverted),inverted:e.inverted}},combine:function(e,r){var t=eA(!1,Nf,qn);return{combined:t.calculate(e.segments,e.inverted,r.segments,r.inverted),inverted1:e.inverted,inverted2:r.inverted}},selectUnion:function(e){return{segments:zf.union(e.combined,qn),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:zf.intersect(e.combined,qn),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:zf.difference(e.combined,qn),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:zf.differenceRev(e.combined,qn),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:zf.xor(e.combined,qn),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:BX(e.segments,Nf,qn),inverted:e.inverted}},polygonFromGeoJSON:function(e){return rA.toPolygon(ja,e)},polygonToGeoJSON:function(e){return rA.fromPolygon(ja,Nf,e)},union:function(e,r){return Ff(e,r,ja.selectUnion)},intersect:function(e,r){return Ff(e,r,ja.selectIntersect)},difference:function(e,r){return Ff(e,r,ja.selectDifference)},differenceRev:function(e,r){return Ff(e,r,ja.selectDifferenceRev)},xor:function(e,r){return Ff(e,r,ja.selectXor)}};function Ff(e,r,t){var a=ja.segments(e),n=ja.segments(r),i=ja.combine(a,n),l=t(i);return ja.polygon(l)}typeof window=="object"&&(window.PolyBool=ja);tA.exports=ja});var iA=Z((mue,nA)=>{nA.exports=function(r,t,a,n){var i=r[0],l=r[1],o=!1;a===void 0&&(a=0),n===void 0&&(n=t.length);for(var s=n-a,u=0,f=s-1;ul!=m>l&&i<(d-v)*(l-h)/(m-h)+v;y&&(o=!o)}return o}});var eg=Z((yue,lA)=>{"use strict";var jy=kv().dot,kh=Vt().BADNUM,Sh=lA.exports={};Sh.tester=function(r){var t=r.slice(),a=t[0][0],n=a,i=t[0][1],l=i,o;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),o=1;on||_===kh||_l||y&&u(m))}function v(m,y){var g=m[0],_=m[1];if(g===kh||gn||_===kh||_l)return!1;var w=t.length,T=t[0][0],b=t[0][1],M=0,C,k,q,D,R;for(C=1;CMath.max(k,T)||_>Math.max(q,b)))if(_o||Math.abs(jy(v,u))>n)return!0;return!1};Sh.filter=function(r,t){var a=[r[0]],n=0,i=0;function l(s){r.push(s);var u=a.length,f=n;a.splice(i+1);for(var v=f+1;v1){var o=r.pop();l(o)}return{addPt:l,raw:r,filtered:a}}});var sA=Z((gue,oA)=>{"use strict";oA.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var qA=Z((bue,LA)=>{"use strict";var uA=aA(),YX=iA(),Of=br(),UX=at().dashStyle,If=Er(),VX=ki(),GX=bi().makeEventData,Gf=Xs(),WX=Gf.freeMode,ZX=Gf.rectMode,Bf=Gf.drawMode,ng=Gf.openMode,ig=Gf.selectMode,fA=Ml(),cA=kf(),mA=vh(),yA=dl().clearOutline,gA=wl(),rg=gA.handleEllipse,XX=gA.readPaths,JX=sh().newShapes,KX=Sy(),QX=$y().activateLastSelection,Lh=Ie(),$X=Lh.sorterAsc,bA=eg(),Hf=Iv(),Dn=Zt().getFromId,jX=eh(),eJ=Th().redrawReglTraces,qh=sA(),Ci=qh.MINSELECT,rJ=bA.filter,lg=bA.tester,og=nh(),vA=og.p2r,tJ=og.axValue,aJ=og.getTransform;function sg(e){return e.subplot!==void 0}function nJ(e,r,t,a,n){var i=!sg(a),l=WX(n),o=ZX(n),s=ng(n),u=Bf(n),f=ig(n),v=n==="drawline",h=n==="drawcircle",d=v||h,m=a.gd,y=m._fullLayout,g=f&&y.newselection.mode==="immediate"&&i,_=y._zoomlayer,w=a.element.getBoundingClientRect(),T=a.plotinfo,b=aJ(T),M=r-w.left,C=t-w.top;y._calcInverseTransform(m);var k=Lh.apply3DTransform(y._invTransform)(M,C);M=k[0],C=k[1];var q=y._invScaleX,D=y._invScaleY,R=M,z=C,F="M"+M+","+C,I=a.xaxes[0],H=a.yaxes[0],J=I._length,X=H._length,Y=e.altKey&&!(Bf(n)&&s),O,V,Q,K,ne,me,de;_A(e,m,a),l&&(O=rJ([[M,C]],qh.BENDPX));var ke=_.selectAll("path.select-outline-"+T.id).data([1]),re=u?y.newshape:y.newselection;u&&(a.hasText=re.label.text||re.label.texttemplate);var Ce=u&&!s?re.fillcolor:"rgba(0,0,0,0)",ce=re.line.color||(i?If.contrast(m._fullLayout.plot_bgcolor):"#7f7f7f");ke.enter().append("path").attr("class","select-outline select-outline-"+T.id).style({opacity:u?re.opacity/2:1,"stroke-dasharray":UX(re.line.dash,re.line.width),"stroke-width":re.line.width+"px","shape-rendering":"crispEdges"}).call(If.stroke,ce).call(If.fill,Ce).attr("fill-rule","evenodd").classed("cursor-move",!!u).attr("transform",b).attr("d",F+"Z");var _e=_.append("path").attr("class","zoombox-corners").style({fill:If.background,stroke:If.defaultLine,"stroke-width":1}).attr("transform",b).attr("d","M0,0Z");if(u&&a.hasText){var se=_.select(".label-temp");se.empty()&&(se=_.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var ge=y._uid+qh.SELECTID,B=[],$=Dh(m,a.xaxes,a.yaxes,a.subplot);g&&!e.shiftKey&&(a._clearSubplotSelections=function(){if(i){var ye=I._id,we=H._id;kA(m,ye,we,$);for(var pe=(m.layout||{}).selections||[],Re=[],Fe=!1,Ee=0;Ee=0){m._fullLayout._deactivateShape(m);return}if(!u){var pe=y.clickmode;Hf.done(ge).then(function(){if(Hf.clear(ge),ye===2){for(ke.remove(),ne=0;ne<$.length;ne++)me=$[ne],me._module.selectPoints(me,!1);if(Uf(m,$),Yf(a),cg(m),$.length){var Re=$[0].xaxis,Fe=$[0].yaxis;if(Re&&Fe){for(var Ee=[],Ne=m._fullLayout.selections,Be=0;Be-1&&xA(we,m,a.xaxes,a.yaxes,a.subplot,a,ke),pe==="event"&&Vf(m,void 0);VX.click(m,we,T.id)}).catch(Lh.error)}},a.doneFn=function(){_e.remove(),Hf.done(ge).then(function(){Hf.clear(ge),!g&&K&&a.selectionDefs&&(K.subtract=Y,a.selectionDefs.push(K),a.mergedPolygons.length=0,[].push.apply(a.mergedPolygons,Q)),(g||u)&&Yf(a,g),a.doneFnCompleted&&a.doneFnCompleted(B),f&&Vf(m,de)}).catch(Lh.error)}}function xA(e,r,t,a,n,i,l){var o=r._hoverdata,s=r._fullLayout,u=s.clickmode,f=u.indexOf("event")>-1,v=[],h,d,m,y,g,_,w,T,b,M;if(uJ(o)){_A(e,r,i),h=Dh(r,t,a,n);var C=fJ(o,h),k=C.pointNumbers.length>0;if(k?cJ(h,C):vJ(h)&&(w=dA(C))){for(l&&l.remove(),M=0;M=0}function sJ(e){return e._fullLayout._activeSelectionIndex>=0}function Yf(e,r){var t=e.dragmode,a=e.plotinfo,n=e.gd;oJ(n)&&n._fullLayout._deactivateShape(n),sJ(n)&&n._fullLayout._deactivateSelection(n);var i=n._fullLayout,l=i._zoomlayer,o=Bf(t),s=ig(t);if(o||s){var u=l.selectAll(".select-outline-"+a.id);if(u&&n._fullLayout._outlining){var f;o&&(f=JX(u,e)),f&&Of.call("_guiRelayout",n,{shapes:f});var v;s&&!sg(e)&&(v=KX(u,e)),v&&(n._fullLayout._noEmitSelectedAtStart=!0,Of.call("_guiRelayout",n,{selections:v}).then(function(){r&&QX(n)})),n._fullLayout._outlining=!1}}a.selection={},a.selection.selectionDefs=e.selectionDefs=[],a.selection.mergedPolygons=e.mergedPolygons=[]}function hA(e){return e._id}function Dh(e,r,t,a){if(!e.calcdata)return[];var n=[],i=r.map(hA),l=t.map(hA),o,s,u;for(u=0;u0,i=n?a[0]:t;return r.selectedpoints?r.selectedpoints.indexOf(i)>-1:!1}function cJ(e,r){var t=[],a,n,i,l;for(l=0;l0&&t.push(a);if(t.length===1&&(i=t[0]===r.searchInfo,i&&(n=r.searchInfo.cd[0].trace,n.selectedpoints.length===r.pointNumbers.length))){for(l=0;l1||(r+=a.selectedpoints.length,r>1)))return!1;return r===1}function Uf(e,r,t){var a;for(a=0;a-1&&r;if(!l&&r){var ye=pA(e,!0);if(ye.length){var we=ye[0].xref,pe=ye[0].yref;if(we&&pe){var Re=SA(ye),Fe=CA([Dn(e,we,"x"),Dn(e,pe,"y")]);Fe(B,Re)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:U&&Vf(e,B),h._reselect=!1}if(!l&&h._deselect){var Ee=h._deselect;o=Ee.xref,s=Ee.yref,pJ(o,s,f)||kA(e,o,s,a),U&&(B.points.length?Vf(e,B):cg(e)),h._deselect=!1}return{eventData:B,selectionTesters:t}}function dJ(e){var r=e.calcdata;if(r)for(var t=0;t{"use strict";DA.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var Wf=Z((_ue,EA)=>{"use strict";EA.exports={axisRefDescription:function(e,r,t){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",r,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",r,"("+t+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",r,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",r,"and the",t,"of the domain of the","second",e,"axis."].join(" ")}}});var tu=Z((Tue,zA)=>{"use strict";var PA=vg(),RA=ma(),Eh=ya(),xJ=ct().templatedArray,wue=Wf();zA.exports=xJ("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:RA({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:PA.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:PA.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",Eh.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",Eh.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",Eh.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",Eh.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:RA({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Ph=Z((Mue,NA)=>{"use strict";NA.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var IA=Z((Aue,FA)=>{"use strict";FA.exports=function(r){return{valType:"color",editType:"style",anim:!0}}});var Do=Z((kue,GA)=>{"use strict";var HA=n0().axisHoverFormat,{hovertemplateAttrs:_J,texttemplateAttrs:wJ,templatefallbackAttrs:OA}=to(),BA=ff(),TJ=ma(),MJ=mi().dash,AJ=mi().pattern,kJ=at(),SJ=Ph(),Rh=Gt().extendFlat,CJ=IA();function YA(e){return{valType:"any",dflt:0,editType:"calc"}}function UA(e){return{valType:"any",editType:"calc"}}function VA(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}GA.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:YA("x"),yperiod:YA("y"),xperiod0:UA("x0"),yperiod0:UA("y0"),xperiodalignment:VA("x"),yperiodalignment:VA("y"),xhoverformat:HA("x"),yhoverformat:HA("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:wJ(),texttemplatefallback:OA({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:_J({},{keys:SJ.eventDataKeys}),hovertemplatefallback:OA(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:Rh({},MJ,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:CJ(!0),fillgradient:Rh({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:AJ,marker:Rh({symbol:{valType:"enumerated",values:kJ.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:Rh({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},BA("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},BA("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:TJ({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var hg=Z((Cue,XA)=>{"use strict";var WA=tu(),ZA=Do().line,LJ=mi().dash,zh=Gt().extendFlat,qJ=pi().overrideAll,DJ=ct().templatedArray,Sue=Wf();XA.exports=qJ(DJ("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:zh({},WA.xref,{}),yref:zh({},WA.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:ZA.color,width:zh({},ZA.width,{min:1,dflt:1}),dash:zh({},LJ,{dflt:"dot"})}}),"arraydraw","from-root")});var $A=Z((Lue,QA)=>{"use strict";var JA=Ie(),Nh=dt(),EJ=Jn(),PJ=hg(),KA=Ml();QA.exports=function(r,t){EJ(r,t,{name:"selections",handleItemDefaults:RJ});for(var a=t.selections,n=0;n{"use strict";jA.exports=function(r,t,a){a("newselection.mode");var n=a("newselection.line.width");n&&(a("newselection.line.color"),a("newselection.line.dash")),a("activeselection.fillcolor"),a("activeselection.opacity")}});var Zf=Z((Due,ak)=>{"use strict";var zJ=br(),rk=Ie(),tk=Zt();ak.exports=function(r){return function(a,n){var i=a[r];if(Array.isArray(i))for(var l=zJ.subplotsRegistry.cartesian,o=l.idRegex,s=n._subplots,u=s.xaxis,f=s.yaxis,v=s.cartesian,h=n._has("cartesian"),d=0;d{"use strict";var nk=$y(),Xf=qA();ik.exports={moduleType:"component",name:"selections",layoutAttributes:hg(),supplyLayoutDefaults:$A(),supplyDrawNewSelectionDefaults:ek(),includeBasePlot:Zf()("selections"),draw:nk.draw,drawOne:nk.drawOne,reselect:Xf.reselect,prepSelect:Xf.prepSelect,clearOutline:Xf.clearOutline,clearSelectionsCache:Xf.clearSelectionsCache,selectOnClick:Xf.selectOnClick}});var kk=Z((Pue,Ak)=>{"use strict";var gg=Ir(),En=Ie(),lk=En.numberFormat,NJ=xn(),FJ=$m(),Fh=br(),pk=En.strTranslate,IJ=Ta(),ok=Er(),kl=at(),HJ=ki(),sk=dt(),OJ=_l(),BJ=Qn(),mk=Xs(),Ih=mk.selectingOrDrawing,YJ=mk.freeMode,UJ=Pa().FROM_TL,VJ=eh(),GJ=Th().redrawReglTraces,WJ=Ft(),pg=Zt().getFromId,ZJ=au().prepSelect,XJ=au().clearOutline,JJ=au().selectOnClick,dg=Vy(),bg=ya(),uk=bg.MINDRAG,Ya=bg.MINZOOM,fk=!0;function KJ(e,r,t,a,n,i,l,o){var s=e._fullLayout._zoomlayer,u=l+o==="nsew",f=(l+o).length===1,v,h,d,m,y,g,_,w,T,b,M,C,k,q,D,R,z,F,I,H,J,X,Y;t+=r.yaxis._shift;function O(){if(v=r.xaxis,h=r.yaxis,T=v._length,b=h._length,_=v._offset,w=h._offset,d={},d[v._id]=v,m={},m[h._id]=h,l&&o)for(var Me=r.overlays,Se=0;Se=0){Oe._fullLayout._deactivateShape(Oe);return}var Je=Oe._fullLayout.clickmode;if(yg(Oe),Me===2&&!f&&Ye(),u)Je.indexOf("select")>-1&&JJ(Se,Oe,y,g,r.id,K),Je.indexOf("event")>-1&&HJ.click(Oe,Se,r.id);else if(Me===1&&f){var We=l?h:v,Ze=l==="s"||o==="w"?0:1,lr=We._name+".range["+Ze+"]",tr=QJ(We,Ze),Qe="left",ze="middle";if(We.fixedrange)return;l?(ze=l==="n"?"top":"bottom",We.side==="right"&&(Qe="right")):o==="e"&&(Qe="right"),Oe._context.showAxisRangeEntryBoxes&&gg.select(Q).call(IJ.makeEditable,{gd:Oe,immediate:!0,background:Oe._fullLayout.paper_bgcolor,text:String(tr),fill:We.tickfont?We.tickfont.color:"#444",horizontalAlign:Qe,verticalAlign:ze}).on("edit",function(ae){var le=We.d2r(ae);le!==void 0&&Fh.call("_guiRelayout",Oe,lr,le)})}}BJ.init(K);var de,ke,re,Ce,ce,_e,se,ge,B,$;function U(Me,Se,Oe){var Je=Q.getBoundingClientRect();de=Se-Je.left,ke=Oe-Je.top,e._fullLayout._calcInverseTransform(e);var We=En.apply3DTransform(e._fullLayout._invTransform)(de,ke);de=We[0],ke=We[1],re={l:de,r:de,w:0,t:ke,b:ke,h:0},Ce=e._hmpixcount?e._hmlumcount/e._hmpixcount:NJ(e._fullLayout.plot_bgcolor).getLuminance(),ce="M0,0H"+T+"V"+b+"H0V0",_e=!1,se="xy",$=!1,ge=bk(s,Ce,_,w,ce),B=xk(s,_,w)}function ye(Me,Se){if(e._transitioningWithDuration)return!1;var Oe=Math.max(0,Math.min(T,X*Me+de)),Je=Math.max(0,Math.min(b,Y*Se+ke)),We=Math.abs(Oe-de),Ze=Math.abs(Je-ke);re.l=Math.min(de,Oe),re.r=Math.max(de,Oe),re.t=Math.min(ke,Je),re.b=Math.max(ke,Je);function lr(){se="",re.r=re.l,re.t=re.b,B.attr("d","M0,0Z")}if(M.isSubplotConstrained)We>Ya||Ze>Ya?(se="xy",We/T>Ze/b?(Ze=We*b/T,ke>Je?re.t=ke-Ze:re.b=ke+Ze):(We=Ze*T/b,de>Oe?re.l=de-We:re.r=de+We),B.attr("d",Hh(re))):lr();else if(C.isSubplotConstrained)if(We>Ya||Ze>Ya){se="xy";var tr=Math.min(re.l/T,(b-re.b)/b),Qe=Math.max(re.r/T,(b-re.t)/b);re.l=tr*T,re.r=Qe*T,re.b=(1-tr)*b,re.t=(1-Qe)*b,B.attr("d",Hh(re))}else lr();else!q||Ze0){var ae;if(C.isSubplotConstrained||!k&&q.length===1){for(ae=0;ae1&&(lr.maxallowed!==void 0&&R===(lr.range[0]1&&(tr.maxallowed!==void 0&&z===(tr.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function jJ(e,r,t){return e?e==="nsew"?t?"":r==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function bk(e,r,t,a,n){return e.append("path").attr("class","zoombox").style({fill:r>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",pk(t,a)).attr("d",n+"Z")}function xk(e,r,t){return e.append("path").attr("class","zoombox-corners").style({fill:ok.background,stroke:ok.defaultLine,"stroke-width":1,opacity:0}).attr("transform",pk(r,t)).attr("d","M0,0Z")}function _k(e,r,t,a,n,i){e.attr("d",a+"M"+t.l+","+t.t+"v"+t.h+"h"+t.w+"v-"+t.h+"h-"+t.w+"Z"),wk(e,r,n,i)}function wk(e,r,t,a){t||(e.transition().style("fill",a>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),r.transition().style("opacity",1).duration(200))}function yg(e){gg.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function Tk(e){fk&&e.data&&e._context.showTips&&(En.notifier(En._(e,"Double-click to zoom back out"),"long"),fk=!1)}function eK(e,r){return"M"+(e.l-.5)+","+(r-Ya-.5)+"h-3v"+(2*Ya+1)+"h3ZM"+(e.r+.5)+","+(r-Ya-.5)+"h3v"+(2*Ya+1)+"h-3Z"}function rK(e,r){return"M"+(r-Ya-.5)+","+(e.t-.5)+"v-3h"+(2*Ya+1)+"v3ZM"+(r-Ya-.5)+","+(e.b+.5)+"v3h"+(2*Ya+1)+"v-3Z"}function Hh(e){var r=Math.floor(Math.min(e.b-e.t,e.r-e.l,Ya)/2);return"M"+(e.l-3.5)+","+(e.t-.5+r)+"h3v"+-r+"h"+r+"v-3h-"+(r+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+r)+"h-3v"+-r+"h"+-r+"v-3h"+(r+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-r)+"h-3v"+r+"h"+-r+"v3h"+(r+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-r)+"h3v"+r+"h"+r+"v3h-"+(r+3)+"Z"}function hk(e,r,t,a,n){for(var i=!1,l={},o={},s,u,f,v,h=(n||{}).xaHash,d=(n||{}).yaHash,m=0;m{"use strict";var tK=Ir(),Oh=ki(),aK=Qn(),nK=_l(),ei=kk().makeDragBox,ta=ya().DRAGGERSIZE;Bh.initInteractions=function(r){var t=r._fullLayout;if(r._context.staticPlot){tK.select(r).selectAll(".drag").remove();return}if(!(!t._has("cartesian")&&!t._has("splom"))){var a=Object.keys(t._plots||{}).sort(function(i,l){if((t._plots[i].mainplot&&!0)===(t._plots[l].mainplot&&!0)){var o=i.split("y"),s=l.split("y");return o[0]===s[0]?Number(o[1]||1)-Number(s[1]||1):Number(o[0]||1)-Number(s[0]||1)}return t._plots[i].mainplot?1:-1});a.forEach(function(i){var l=t._plots[i],o=l.xaxis,s=l.yaxis;if(!l.mainplot){var u=ei(r,l,o._offset,s._offset,o._length,s._length,"ns","ew");u.onmousemove=function(h){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===i&&r._fullLayout._plots[i]&&Oh.hover(r,h,i)},Oh.hover(r,h,i),r._fullLayout._lasthover=u,r._fullLayout._hoversubplot=i},u.onmouseout=function(h){r._dragging||(r._fullLayout._hoversubplot=null,aK.unhover(r,h))},r._context.showAxisDragHandles&&(ei(r,l,o._offset-ta,s._offset-ta,ta,ta,"n","w"),ei(r,l,o._offset+o._length,s._offset-ta,ta,ta,"n","e"),ei(r,l,o._offset-ta,s._offset+s._length,ta,ta,"s","w"),ei(r,l,o._offset+o._length,s._offset+s._length,ta,ta,"s","e"))}if(r._context.showAxisDragHandles){if(i===o._mainSubplot){var f=o._mainLinePosition;o.side==="top"&&(f-=ta),ei(r,l,o._offset+o._length*.1,f,o._length*.8,ta,"","ew"),ei(r,l,o._offset,f,o._length*.1,ta,"","w"),ei(r,l,o._offset+o._length*.9,f,o._length*.1,ta,"","e")}if(i===s._mainSubplot){var v=s._mainLinePosition;s.side!=="right"&&(v-=ta),ei(r,l,v,s._offset+s._length*.1,ta,s._length*.8,"ns",""),ei(r,l,v,s._offset+s._length*.9,ta,s._length*.1,"s",""),ei(r,l,v,s._offset,ta,s._length*.1,"n","")}}});var n=t._hoverlayer.node();n.onmousemove=function(i){i.target=r._fullLayout._lasthover,Oh.hover(r,i,t._hoversubplot)},n.onclick=function(i){i.target=r._fullLayout._lasthover,Oh.click(r,i)},n.onmousedown=function(i){r._fullLayout._lasthover.onmousedown(i)},Bh.updateFx(r)}};Bh.updateFx=function(e){var r=e._fullLayout,t=r.dragmode==="pan"?"move":"crosshair";nK(r._draggers,t)}});var Lk=Z((zue,Ck)=>{"use strict";var Sk=br();Ck.exports=function(r){for(var t=Sk.layoutArrayContainers,a=Sk.layoutArrayRegexes,n=r.split("[")[0],i,l,o=0;o{"use strict";var iK=al(),_g=Av(),Jf=ro(),lK=dp().sorterAsc,wg=br();Kf.containerArrayMatch=Lk();var oK=Kf.isAddVal=function(r){return r==="add"||iK(r)},qk=Kf.isRemoveVal=function(r){return r===null||r==="remove"};Kf.applyContainerArrayChanges=function(r,t,a,n,i){var l=t.astr,o=wg.getComponentMethod(l,"supplyLayoutDefaults"),s=wg.getComponentMethod(l,"draw"),u=wg.getComponentMethod(l,"drawOne"),f=n.replot||n.recalc||o===_g||s===_g,v=r.layout,h=r._fullLayout;if(a[""]){Object.keys(a).length>1&&Jf.warn("Full array edits are incompatible with other edits",l);var d=a[""][""];if(qk(d))t.set(null);else if(Array.isArray(d))t.set(d);else return Jf.warn("Unrecognized full array edit value",l,d),!0;return f?!1:(o(v,h),s(r),!0)}var m=Object.keys(a).map(Number).sort(lK),y=t.get(),g=y||[],_=i(h,l).get(),w=[],T=-1,b=g.length,M,C,k,q,D,R,z,F;for(M=0;Mg.length-(z?0:1)){Jf.warn("index out of range",l,k);continue}if(R!==void 0)D.length>1&&Jf.warn("Insertion & removal are incompatible with edits to the same index.",l,k),qk(R)?w.push(k):z?(R==="add"&&(R={}),g.splice(k,0,R),_&&_.splice(k,0,{})):Jf.warn("Unrecognized full object edit value",l,k,R),T===-1&&(T=k);else for(C=0;C=0;M--)g.splice(w[M],1),_&&_.splice(w[M],1);if(g.length?y||t.set(g):t.set(null),f)return!1;if(o(v,h),u!==_g){var I;if(T===-1)I=m;else{for(b=Math.max(g.length,b),I=[],M=0;M=T));M++)I.push(k);for(M=T;M{"use strict";var zk=Hr(),Nk=br(),Ia=Ie(),Qf=Ft(),Fk=Zt(),Ik=Er(),$f=Fk.cleanId,sK=Fk.getFromTrace,Tg=Nk.traceIs,uK=["x","y","z"];Pn.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&Ia.log("Clearing previous rejected promises from queue."),e._promises=[]};Pn.cleanLayout=function(e){var r,t;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var a=(Qf.subplotsRegistry.cartesian||{}).attrRegex,n=(Qf.subplotsRegistry.polar||{}).attrRegex,i=(Qf.subplotsRegistry.ternary||{}).attrRegex,l=(Qf.subplotsRegistry.gl3d||{}).attrRegex,o=Object.keys(e);for(r=0;r3?(g.x=1.02,g.xanchor="left"):g.x<-2&&(g.x=-.02,g.xanchor="right"),g.y>3?(g.y=1.02,g.yanchor="bottom"):g.y<-2&&(g.y=-.02,g.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),Ik.clean(e),e.template&&e.template.layout&&Pn.cleanLayout(e.template.layout),e};function nu(e,r){var t=e[r],a=r.charAt(0);t&&t!=="paper"&&(e[r]=$f(t,a,!0))}Pn.cleanData=function(e){for(var r=0;r0)return e.substr(0,r)}Pn.hasParent=function(e,r){for(var t=Rk(r);t;){if(t in e)return!0;t=Rk(t)}return!1};Pn.clearAxisTypes=function(e,r,t){for(var a=0;a{let t=(...a)=>a.every(n=>Ia.isPlainObject(n))||a.every(n=>Array.isArray(n));if([e,r].every(a=>Array.isArray(a))){if(e.length!==r.length)return!1;for(let a=0;aIa.isPlainObject(a))){if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let a in e){if(a.startsWith("_"))continue;let n=e[a],i=r[a];if(n!==i&&!(t(n,i)?Mg(n,i):!1))return!1}return!0}return!1};Pn.collectionsAreEqual=Mg});var qg=Z(Yr=>{"use strict";var Gh=Ir(),vK=Hr(),hK=Cp(),rr=Ie(),st=rr.nestedProperty,Sg=af(),Ua=m6(),Rn=br(),$h=Ss(),xr=Ft(),Ha=dt(),dK=Qm(),pK=Xn(),Ag=at(),mK=Er(),yK=xg().initInteractions,gK=co(),bK=au().clearOutline,Vk=eo().dfltConfig,Uh=Dk(),Nt=Hk(),et=Th(),Sl=pi(),xK=ya().AX_NAME_PATTERN,kg=0,Ok=5;function _K(e,r,t,a){var n;if(e=rr.getGraphDiv(e),Sg.init(e),rr.isPlainObject(r)){var i=r;r=i.data,t=i.layout,a=i.config,n=i.frames}var l=Sg.triggerHandler(e,"plotly_beforeplot",[r,t,a]);if(l===!1)return Promise.reject();!r&&!t&&!rr.isPlotDiv(e)&&rr.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function o(){if(n)return Yr.addFrames(e,n)}Wk(e,a),t||(t={}),Gh.select(e).classed("js-plotly-plot",!0),Ag.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var s=(e.data||[]).length===0&&Array.isArray(r);Array.isArray(r)&&(Nt.cleanData(r),s?e.data=r:e.data.push.apply(e.data,r),e.empty=!1),(!e.layout||s)&&(e.layout=Nt.cleanLayout(t)),xr.supplyDefaults(e);var u=e._fullLayout,f=u._has("cartesian");u._replotting=!0,(s||u._shouldCreateBgLayer)&&(VK(e),u._shouldCreateBgLayer&&delete u._shouldCreateBgLayer),Ag.initGradients(e),Ag.initPatterns(e),s&&Ha.saveShowSpikeInitial(e);var v=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;v&&xr.doCalcdata(e);for(var h=0;h=e.data.length||n<-e.data.length)throw new Error(t+" must be valid indices for gd.data.");if(r.indexOf(n,a+1)>-1||n>=0&&r.indexOf(-e.data.length+n)>-1||n<0&&r.indexOf(e.data.length+n)>-1)throw new Error("each index in "+t+" must be unique.")}}function Zk(e,r,t){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(r)||(r=[r]),Zh(e,r,"currentIndices"),typeof t!="undefined"&&!Array.isArray(t)&&(t=[t]),typeof t!="undefined"&&Zh(e,t,"newIndices"),typeof t!="undefined"&&r.length!==t.length)throw new Error("current and new indices must be of equal length.")}function kK(e,r,t){var a,n;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("traces must be defined.");for(Array.isArray(r)||(r=[r]),a=0;a=0&&f=0&&f0&&typeof q.parts[z]!="string";)z--;var F=q.parts[z],I=q.parts[z-1]+"."+F,H=q.parts.slice(0,z).join("."),J=st(e.layout,H).get(),X=st(a,H).get(),Y=q.get();if(D!==void 0){_[k]=D,w[k]=F==="reverse"?D:Zi(Y);var O=$h.getLayoutValObject(a,q.parts);if(O&&O.impliedEdits&&D!==null)for(var V in O.impliedEdits)T(rr.relativeAttr(k,V),O.impliedEdits[V]);if(["width","height"].indexOf(k)!==-1)if(D){T("autosize",null);var Q=k==="height"?"width":"height";T(Q,a[Q])}else a[k]=e._initialAutoSize[k];else if(k==="autosize")T("width",D?null:a.width),T("height",D?null:a.height);else if(I.match(tS))C(I),st(a,H+"._inputRange").set(null);else if(I.match(aS)){C(I),st(a,H+"._inputRange").set(null);var K=st(a,H).get();K._inputDomain&&(K._input.domain=K._inputDomain.slice())}else I.match(qK)&&st(a,H+"._inputDomain").set(null);if(F==="type"){M=J;var ne=X.type==="linear"&&D==="log",me=X.type==="log"&&D==="linear";if(ne||me){if(!M||!M.range)T(H+".autorange",!0);else if(X.autorange)ne&&(M.range=M.range[1]>M.range[0]?[1,2]:[2,1]);else{var de=M.range[0],ke=M.range[1];ne?(de<=0&&ke<=0&&T(H+".autorange",!0),de<=0?de=ke/1e6:ke<=0&&(ke=de/1e6),T(H+".range[0]",Math.log(de)/Math.LN10),T(H+".range[1]",Math.log(ke)/Math.LN10)):(T(H+".range[0]",Math.pow(10,de)),T(H+".range[1]",Math.pow(10,ke)))}Array.isArray(a._subplots.polar)&&a._subplots.polar.length&&a[q.parts[0]]&&q.parts[1]==="radialaxis"&&delete a[q.parts[0]]._subplot.viewInitial["radialaxis.range"],Rn.getComponentMethod("annotations","convertCoords")(e,X,D,T),Rn.getComponentMethod("images","convertCoords")(e,X,D,T)}else T(H+".autorange",!0),T(H+".range",null);st(a,H+"._inputRange").set(null)}else if(F.match(xK)){var re=st(a,k).get(),Ce=(D||{}).type;(!Ce||Ce==="-")&&(Ce="linear"),Rn.getComponentMethod("annotations","convertCoords")(e,re,Ce,T),Rn.getComponentMethod("images","convertCoords")(e,re,Ce,T)}var ce=Uh.containerArrayMatch(k);if(ce){f=ce.array,v=ce.index;var _e=ce.property,se=O||{editType:"calc"};v!==""&&_e===""&&(Uh.isAddVal(D)?w[k]=null:Uh.isRemoveVal(D)?w[k]=(st(t,f).get()||[])[v]:rr.warn("unrecognized full object value",r)),Sl.update(g,se),u[f]||(u[f]={});var ge=u[f][v];ge||(ge=u[f][v]={}),ge[_e]=D,delete r[k]}else F==="reverse"?(J.range?J.range.reverse():(T(H+".autorange",!0),J.range=[1,0]),X.autorange?g.calc=!0:g.plot=!0):(k==="dragmode"&&(D===!1&&Y!==!1||D!==!1&&Y===!1)||a._has("scatter-like")&&a._has("regl")&&k==="dragmode"&&(D==="lasso"||D==="select")&&!(Y==="lasso"||Y==="select")?g.plot=!0:O?Sl.update(g,O):g.calc=!0,q.set(D))}}for(f in u){var B=Uh.applyContainerArrayChanges(e,i(t,f),u[f],g,i);B||(g.plot=!0)}for(var $ in b){M=Ha.getFromId(e,$);var U=M&&M._constraintGroup;if(U){g.calc=!0;for(var ye in U)b[ye]||(Ha.getFromId(e,ye)._constraintShrinkable=!0)}}(iS(e)||r.height||r.width)&&(g.plot=!0);var we=a.shapes;for(v=0;v1;)if(a.pop(),t=st(r,a.join(".")+".uirevision").get(),t!==void 0)return t;return r.uirevision}function PK(e,r){for(var t=0;t[H,e._ev.listeners(H)]);i=Yr.newPlot(e,r,t,a).then(()=>{for(let[H,J]of I)J.forEach(X=>e.on(H,X));return Yr.react(e,r,t,a)})}else{e.data=r||[],Nt.cleanData(e.data),e.layout=t||{},Nt.cleanLayout(e.layout),zK(e.data,e.layout,o,s),xr.supplyDefaults(e,{skipUpdateCalc:!0});var v=e._fullData,h=e._fullLayout,d=h.datarevision===void 0,m=h.transition,y=IK(e,s,h,d,m),g=y.newDataRevision,_=FK(e,o,v,d,m,g);if(iS(e)&&(y.layoutReplot=!0),_.calc||y.calc){e.calcdata=void 0;for(var w=Object.getOwnPropertyNames(h),T=0;T(f||e.emit("plotly_react",{config:a,data:r,layout:t}),e))}function FK(e,r,t,a,n,i){var l=r.length===t.length;if(!n&&!l)return{fullReplot:!0,calc:!0};var o=Sl.traceFlags();o.arrays={},o.nChanges=0,o.nChangesAnim=0;var s,u;function f(d){var m=$h.getTraceValObject(u,d);return!u._module.animatable&&m.anim&&(m.anim=!1),m}var v={getValObject:f,flags:o,immutable:a,transition:n,newDataRevision:i,gd:e},h={};for(s=0;s=n.length?n[0]:n[u]:n}function o(u){return Array.isArray(i)?u>=i.length?i[0]:i[u]:i}function s(u,f){var v=0;return function(){if(u&&++v===f)return u()}}return new Promise(function(u,f){function v(){if(a._frameQueue.length!==0){for(;a._frameQueue.length;){var F=a._frameQueue.pop();F.onInterrupt&&F.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function h(F){if(F.length!==0){for(var I=0;Ia._timeToNext&&m()};F()}var g=0;function _(F){return Array.isArray(n)?g>=n.length?F.transitionOpts=n[g]:F.transitionOpts=n[0]:F.transitionOpts=n,g++,F}var w,T,b=[],M=r==null,C=Array.isArray(r),k=!M&&!C&&rr.isPlainObject(r);if(k)b.push({type:"object",data:_(rr.extendFlat({},r))});else if(M||["string","number"].indexOf(typeof r)!==-1)for(w=0;w0&&RR)&&z.push(T);b=z}}b.length>0?h(b):(e.emit("plotly_animated"),u())})}function OK(e,r,t){if(e=rr.getGraphDiv(e),r==null)return Promise.resolve();if(!rr.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var a,n,i,l,o=e._transitionData._frames,s=e._transitionData._frameHash;if(!Array.isArray(r))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+r);var u=o.length+r.length*2,f=[],v={};for(a=r.length-1;a>=0;a--)if(rr.isPlainObject(r[a])){var h=r[a].name,d=(s[h]||v[h]||{}).name,m=r[a].name,y=s[d]||v[d];d&&m&&typeof m=="number"&&y&&kgq.index?-1:k.index=0;a--){if(n=f[a].frame,typeof n.name=="number"&&rr.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!n.name)for(;s[n.name="frame "+e._transitionData._counter++];);if(s[n.name]){for(i=0;i=0;t--)a=r[t],i.push({type:"delete",index:a}),l.unshift({type:"insert",index:a,value:n[a]});var o=xr.modifyFrames,s=xr.modifyFrames,u=[e,l],f=[e,i];return Ua&&Ua.add(e,o,u,s,f),xr.modifyFrames(e,i)}function YK(e){e=rr.getGraphDiv(e);var r=e._fullLayout||{},t=e._fullData||[];return xr.cleanPlot([],{},t,r),xr.purge(e),Sg.purge(e),r._container&&r._container.remove(),delete e._context,e}function UK(e){var r=e._fullLayout,t=e.getBoundingClientRect();if(!rr.equalDomRects(t,r._lastBBox)){var a=r._invTransform=rr.inverseTransformMatrix(rr.getFullTransformMatrix(e));r._invScaleX=Math.sqrt(a[0][0]*a[0][0]+a[0][1]*a[0][1]+a[0][2]*a[0][2]),r._invScaleY=Math.sqrt(a[1][0]*a[1][0]+a[1][1]*a[1][1]+a[1][2]*a[1][2]),r._lastBBox=t}}function VK(e){var r=Gh.select(e),t=e._fullLayout;if(t._calcInverseTransform=UK,t._calcInverseTransform(e),t._container=r.selectAll(".plot-container").data([0]),t._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),t._paperdiv=t._container.selectAll(".svg-container").data([0]),t._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),t._glcontainer=t._paperdiv.selectAll(".gl-container").data([{}]),t._glcontainer.enter().append("div").classed("gl-container",!0),t._paperdiv.selectAll(".main-svg").remove(),t._paperdiv.select(".modebar-container").remove(),t._paper=t._paperdiv.insert("svg",":first-child").classed("main-svg",!0),t._toppaper=t._paperdiv.append("svg").classed("main-svg",!0),t._modebardiv=t._paperdiv.append("div"),delete t._modeBar,t._hoverpaper=t._paperdiv.append("svg").classed("main-svg",!0),!t._uid){var a={};Gh.selectAll("defs").each(function(){this.id&&(a[this.id.split("-")[1]]=1)}),t._uid=rr.randstr(a)}t._paperdiv.selectAll(".main-svg").attr(gK.svgAttrs),t._defs=t._paper.append("defs").attr("id","defs-"+t._uid),t._clips=t._defs.append("g").classed("clips",!0),t._topdefs=t._toppaper.append("defs").attr("id","topdefs-"+t._uid),t._topclips=t._topdefs.append("g").classed("clips",!0),t._bgLayer=t._paper.append("g").classed("bglayer",!0),t._draggers=t._paper.append("g").classed("draglayer",!0);var n=t._paper.append("g").classed("layer-below",!0);t._imageLowerLayer=n.append("g").classed("imagelayer",!0),t._shapeLowerLayer=n.append("g").classed("shapelayer",!0),t._cartesianlayer=t._paper.append("g").classed("cartesianlayer",!0),t._polarlayer=t._paper.append("g").classed("polarlayer",!0),t._smithlayer=t._paper.append("g").classed("smithlayer",!0),t._ternarylayer=t._paper.append("g").classed("ternarylayer",!0),t._geolayer=t._paper.append("g").classed("geolayer",!0),t._funnelarealayer=t._paper.append("g").classed("funnelarealayer",!0),t._pielayer=t._paper.append("g").classed("pielayer",!0),t._iciclelayer=t._paper.append("g").classed("iciclelayer",!0),t._treemaplayer=t._paper.append("g").classed("treemaplayer",!0),t._sunburstlayer=t._paper.append("g").classed("sunburstlayer",!0),t._indicatorlayer=t._toppaper.append("g").classed("indicatorlayer",!0),t._glimages=t._paper.append("g").classed("glimages",!0);var i=t._toppaper.append("g").classed("layer-above",!0);t._imageUpperLayer=i.append("g").classed("imagelayer",!0),t._shapeUpperLayer=i.append("g").classed("shapelayer",!0),t._selectionLayer=t._toppaper.append("g").classed("selectionlayer",!0),t._infolayer=t._toppaper.append("g").classed("infolayer",!0),t._menulayer=t._toppaper.append("g").classed("menulayer",!0),t._zoomlayer=t._toppaper.append("g").classed("zoomlayer",!0),t._hoverlayer=t._hoverpaper.append("g").classed("hoverlayer",!0),t._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}Yr.animate=HK;Yr.addFrames=OK;Yr.deleteFrames=BK;Yr.addTraces=$k;Yr.deleteTraces=jk;Yr.extendTraces=Kk;Yr.moveTraces=Cg;Yr.prependTraces=Qk;Yr.newPlot=AK;Yr._doPlot=_K;Yr.purge=YK;Yr.react=NK;Yr.redraw=MK;Yr.relayout=jf;Yr.restyle=Xh;Yr.setPlotConfig=wK;Yr.update=Kh;Yr._guiRelayout=Lg(jf);Yr._guiRestyle=Lg(Xh);Yr._guiUpdate=Lg(Kh);Yr._storeDirectGUIEdit=LK});var Eo=Z(Li=>{"use strict";var GK=br();Li.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Li.getRedrawFunc=function(e){return function(){GK.getComponentMethod("colorbar","draw")(e)}};Li.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Li.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var lS=window.URL||window.webkitURL;Li.createObjectURL=function(e){return lS.createObjectURL(e)};Li.revokeObjectURL=function(e){return lS.revokeObjectURL(e)};Li.createBlob=function(e,r){if(r==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(r==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var t=WK(window.atob(e));return new window.Blob([t],{type:"image/"+r})};Li.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function WK(e){for(var r=e.length,t=new ArrayBuffer(r),a=new Uint8Array(t),n=0;n{"use strict";var Eg=Ir(),Oue=Ie(),ZK=at(),XK=Er(),Bue=co(),Dg=/"/g,rc="TOBESTRIPPED",JK=new RegExp('("'+rc+")|("+rc+'")',"g");function KK(e){var r=Eg.select("body").append("div").style({display:"none"}).html(""),t=e.replace(/(&[^;]*;)/gi,function(a){return a==="<"?"<":a==="&rt;"?">":a.indexOf("<")!==-1||a.indexOf(">")!==-1?"":r.html(a).text()});return r.remove(),t}function QK(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}oS.exports=function(r,t,a){var n=r._fullLayout,i=n._paper,l=n._toppaper,o=n.width,s=n.height,u;i.insert("rect",":first-child").call(ZK.setRect,0,0,o,s).call(XK.fill,n.paper_bgcolor);var f=n._basePlotModules||[];for(u=0;u{"use strict";var $K=Ie(),jK=Gv().EventEmitter,tc=Eo();function eQ(e){var r=e.emitter||new jK,t=new Promise(function(a,n){var i=window.Image,l=e.svg,o=e.format||"png",s=e.canvas,u=e.scale||1,f=e.width||300,v=e.height||150,h=u*f,d=u*v,m=s.getContext("2d",{willReadFrequently:!0}),y=new i,g,_;o==="svg"||$K.isSafari()?_=tc.encodeSVG(l):(g=tc.createBlob(l,"svg"),_=tc.createObjectURL(g)),s.width=h,s.height=d,y.onload=function(){var w;switch(g=null,tc.revokeObjectURL(_),o!=="svg"&&m.drawImage(y,0,0,h,d),o){case"jpeg":w=s.toDataURL("image/jpeg");break;case"png":w=s.toDataURL("image/png");break;case"webp":w=s.toDataURL("image/webp");break;case"svg":w=_;break;default:var T="Image format is not jpeg, png, svg or webp.";if(n(new Error(T)),!e.promise)return r.emit("error",T)}a(w),e.promise||r.emit("success",w)},y.onerror=function(w){if(g=null,tc.revokeObjectURL(_),n(w),!e.promise)return r.emit("error",w)},y.src=_});return e.promise?t:r}sS.exports=eQ});var Rg=Z((Vue,cS)=>{"use strict";var uS=Hr(),fS=qg(),rQ=Ft(),qi=Ie(),ac=Eo(),tQ=ed(),aQ=rd(),nQ=sv().version,Pg={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function iQ(e,r){r=r||{};var t,a,n,i;qi.isPlainObject(e)?(t=e.data||[],a=e.layout||{},n=e.config||{},i={}):(e=qi.getGraphDiv(e),t=qi.extendDeep([],e.data),a=qi.extendDeep({},e.layout),n=e._context,i=e._fullLayout||{});function l(C){return!(C in r)||qi.validate(r[C],Pg[C])}if(!l("width")&&r.width!==null||!l("height")&&r.height!==null)throw new Error("Height and width should be pixel values.");if(!l("format"))throw new Error("Export format is not "+qi.join2(Pg.format.values,", "," or ")+".");var o={};function s(C,k){return qi.coerce(r,o,Pg,C,k)}var u=s("format"),f=s("width"),v=s("height"),h=s("scale"),d=s("setBackground"),m=s("imageDataOnly"),y=document.createElement("div");y.style.position="absolute",y.style.left="-5000px",document.body.appendChild(y);var g=qi.extendFlat({},a);f?g.width=f:r.width===null&&uS(i.width)&&(g.width=i.width),v?g.height=v:r.height===null&&uS(i.height)&&(g.height=i.height);var _=qi.extendFlat({},n,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),w=ac.getRedrawFunc(y);function T(){return new Promise(function(C){setTimeout(C,ac.getDelay(y._fullLayout))})}function b(){return new Promise(function(C,k){var q=tQ(y,u,h),D=y._fullLayout.width,R=y._fullLayout.height;function z(){fS.purge(y),document.body.removeChild(y)}if(u==="full-json"){var F=rQ.graphJson(y,!1,"keepdata","object",!0,!0);return F.version=nQ,F=JSON.stringify(F),z(),C(m?F:ac.encodeJSON(F))}if(z(),u==="svg")return C(m?q:ac.encodeSVG(q));var I=document.createElement("canvas");I.id=qi.randstr(),aQ({format:u,width:D,height:R,scale:h,canvas:I,svg:q,promise:!0}).then(C).catch(k)})}function M(C){return m?C.replace(ac.IMAGE_URL_PREFIX,""):C}return new Promise(function(C,k){fS.newPlot(y,t,g,_).then(w).then(T).then(b).then(function(q){C(M(q))}).catch(function(q){k(q)})})}cS.exports=iQ});var dS=Z((Gue,hS)=>{"use strict";var zn=Ie(),lQ=Ft(),oQ=Ss(),sQ=eo().dfltConfig,ri=zn.isPlainObject,Ro=Array.isArray,zg=zn.isArrayOrTypedArray;hS.exports=function(r,t){r===void 0&&(r=[]),t===void 0&&(t={});var a=oQ.get(),n=[],i={_context:zn.extendFlat({},sQ)},l,o;Ro(r)?(i.data=zn.extendDeep([],r),l=r):(i.data=[],l=[],n.push(aa("array","data"))),ri(t)?(i.layout=zn.extendDeep({},t),o=t):(i.layout={},o={},arguments.length>1&&n.push(aa("object","layout"))),lQ.supplyDefaults(i);for(var s=i._fullData,u=l.length,f=0;fv.length&&a.push(aa("unused",n,u.concat(v.length)));var _=v.length,w=Array.isArray(g);w&&(_=Math.min(_,g.length));var T,b,M,C,k;if(h.dimensions===2)for(b=0;b<_;b++)if(Ro(f[b])){f[b].length>v[b].length&&a.push(aa("unused",n,u.concat(b,v[b].length)));var q=v[b].length;for(T=0;T<(w?Math.min(q,g[b].length):q);T++)M=w?g[b][T]:g,C=f[b][T],k=v[b][T],zn.validate(C,M)?k!==C&&k!==+C&&a.push(aa("dynamic",n,u.concat(b,T),C,k)):a.push(aa("value",n,u.concat(b,T),C))}else a.push(aa("array",n,u.concat(b),f[b]));else for(b=0;b<_;b++)M=w?g[b]:g,C=f[b],k=v[b],zn.validate(C,M)?k!==C&&k!==+C&&a.push(aa("dynamic",n,u.concat(b),C,k)):a.push(aa("value",n,u.concat(b),C))}else if(h.items&&!m&&Ro(f)){var D=g[Object.keys(g)[0]],R=[],z,F;for(z=0;z{"use strict";var pQ=Ie(),ad=Eo();function mQ(e,r,t){var a=document.createElement("a"),n="download"in a,i=new Promise(function(l,o){var s,u;if(n)return s=ad.createBlob(e,t),u=ad.createObjectURL(s),a.href=u,a.download=r,document.body.appendChild(a),a.click(),document.body.removeChild(a),ad.revokeObjectURL(u),s=null,l(r);if(pQ.isSafari()){var f=t==="svg"?",":";base64,";return ad.octetStream(f+encodeURIComponent(e)),l(r)}o(new Error("download error"))});return i}pS.exports=mQ});var Ng=Z((Xue,gS)=>{"use strict";var yS=Ie(),yQ=Rg(),gQ=mS(),Zue=Eo();function bQ(e,r){var t;return yS.isPlainObject(e)||(t=yS.getGraphDiv(e)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(a,n){t&&t._snapshotInProgress&&n(new Error("Snapshotting already in progress.")),t&&(t._snapshotInProgress=!0);var i=yQ(e,r),l=r.filename||e.fn||"newplot";l+="."+r.format.replace("-","."),i.then(function(o){return t&&(t._snapshotInProgress=!1),gQ(o,l,r.format)}).then(function(o){a(o)}).catch(function(o){t&&(t._snapshotInProgress=!1),n(o)})})}gS.exports=bQ});var TS=Z(Fg=>{"use strict";var en=Ie(),rn=en.isPlainObject,bS=Ss(),xS=Ft(),xQ=Vn(),_S=ct(),wS=eo().dfltConfig;Fg.makeTemplate=function(e){e=en.isPlainObject(e)?e:en.getGraphDiv(e),e=en.extendDeep({_context:wS},{data:e.data,layout:e.layout}),xS.supplyDefaults(e);var r=e.data||[],t=e.layout||{};t._basePlotModules=e._fullLayout._basePlotModules,t._modules=e._fullLayout._modules;var a={data:{},layout:{}};r.forEach(function(d){var m={};nc(d,m,wQ.bind(null,d));var y=en.coerce(d,{},xQ,"type"),g=a.data[y];g||(g=a.data[y]=[]),g.push(m)}),nc(t,a.layout,_Q.bind(null,t)),delete a.layout.template;var n=t.template;if(rn(n)){var i=n.layout,l,o,s,u,f,v;rn(i)&&nd(i,a.layout);var h=n.data;if(rn(h)){for(o in a.data)if(s=h[o],Array.isArray(s)){for(f=a.data[o],v=f.length,u=s.length,l=0;l_?l.push({code:"unused",traceType:d,templateCount:g,dataCount:_}):_>g&&l.push({code:"reused",traceType:d,templateCount:g,dataCount:_})}}function w(T,b){for(var M in T)if(M.charAt(0)!=="_"){var C=T[M],k=Nn(T,M,b);rn(C)?(Array.isArray(T)&&C._template===!1&&C.templateitemname&&l.push({code:"missing",path:k,templateitemname:C.templateitemname}),w(C,k)):Array.isArray(C)&&TQ(C)&&w(C,k)}}if(w({data:s,layout:o},""),l.length)return l.map(MQ)};function TQ(e){for(var r=0;r{"use strict";var Jt=qg();mt._doPlot=Jt._doPlot;mt.newPlot=Jt.newPlot;mt.restyle=Jt.restyle;mt.relayout=Jt.relayout;mt.redraw=Jt.redraw;mt.update=Jt.update;mt._guiRestyle=Jt._guiRestyle;mt._guiRelayout=Jt._guiRelayout;mt._guiUpdate=Jt._guiUpdate;mt._storeDirectGUIEdit=Jt._storeDirectGUIEdit;mt.react=Jt.react;mt.extendTraces=Jt.extendTraces;mt.prependTraces=Jt.prependTraces;mt.addTraces=Jt.addTraces;mt.deleteTraces=Jt.deleteTraces;mt.moveTraces=Jt.moveTraces;mt.purge=Jt.purge;mt.addFrames=Jt.addFrames;mt.deleteFrames=Jt.deleteFrames;mt.animate=Jt.animate;mt.setPlotConfig=Jt.setPlotConfig;var AQ=Ju().getGraphDiv,kQ=mh().eraseActiveShape;mt.deleteActiveShape=function(e){return kQ(AQ(e))};mt.toImage=Rg();mt.validate=dS();mt.downloadImage=Ng();var MS=TS();mt.makeTemplate=MS.makeTemplate;mt.validateTemplate=MS.validateTemplate});var Hg=Z((Que,kS)=>{"use strict";var Ig=Ie(),SQ=br();kS.exports=function(r,t,a,n){var i=n("x"),l=n("y"),o,s=SQ.getComponentMethod("calendars","handleTraceDefaults");if(s(r,t,["x","y"],a),i){var u=Ig.minRowLength(i);l?o=Math.min(u,Ig.minRowLength(l)):(o=u,n("y0"),n("dy"))}else{if(!l)return 0;o=Ig.minRowLength(l),n("x0"),n("dx")}return t._length=o,o}});var Og=Z(($ue,LS)=>{"use strict";var SS=Ie().dateTick0,CQ=Vt(),LQ=CQ.ONEWEEK;function CS(e,r){return e%LQ===0?SS(r,1):SS(r,0)}LS.exports=function(r,t,a,n,i){if(i||(i={x:!0,y:!0}),i.x){var l=n("xperiod");l&&(n("xperiod0",CS(l,t.xcalendar)),n("xperiodalignment"))}if(i.y){var o=n("yperiod");o&&(n("yperiod0",CS(o,t.ycalendar)),n("yperiodalignment"))}}});var ES=Z((jue,DS)=>{"use strict";var qS=["orientation","groupnorm","stackgaps"];DS.exports=function(r,t,a,n){var i=a._scatterStackOpts,l=n("stackgroup");if(l){var o=t.xaxis+t.yaxis,s=i[o];s||(s=i[o]={});var u=s[l],f=!1;u?u.traces.push(t):(u=s[l]={traceIndices:[],traces:[t]},f=!0);for(var v={orientation:t.x&&!t.y?"h":"v"},h=0;h{"use strict";var PS=Er(),RS=Mn().hasColorscale,zS=Ds(),qQ=ln();NS.exports=function(r,t,a,n,i,l){var o=qQ.isBubble(r),s=(r.line||{}).color,u;if(l=l||{},s&&(a=s),i("marker.symbol"),i("marker.opacity",o?.7:1),i("marker.size"),l.noAngle||(i("marker.angle"),l.noAngleRef||i("marker.angleref"),l.noStandOff||i("marker.standoff")),i("marker.color",a),RS(r,"marker")&&zS(r,t,n,i,{prefix:"marker.",cLetter:"c"}),l.noSelect||(i("selected.marker.color"),i("unselected.marker.color"),i("selected.marker.size"),i("unselected.marker.size")),l.noLine||(s&&!Array.isArray(s)&&t.marker.color!==s?u=s:o?u=PS.background:u=PS.defaultLine,i("marker.line.color",u),RS(r,"marker.line")&&zS(r,t,n,i,{prefix:"marker.line.",cLetter:"c"}),i("marker.line.width",o?1:0)),o&&(i("marker.sizeref"),i("marker.sizemin"),i("marker.sizemode")),l.gradient){var f=i("marker.gradient.type");f!=="none"&&i("marker.gradient.color")}}});var HS=Z((rfe,IS)=>{"use strict";var DQ=Ie().isArrayOrTypedArray,EQ=Mn().hasColorscale,PQ=Ds();IS.exports=function(r,t,a,n,i,l){l||(l={});var o=(r.marker||{}).color;if(o&&o._inputArray&&(o=o._inputArray),i("line.color",a),EQ(r,"line"))PQ(r,t,n,i,{prefix:"line.",cLetter:"c"});else{var s=(DQ(o)?!1:o)||a;i("line.color",s)}i("line.width"),l.noDash||i("line.dash"),l.backoff&&i("line.backoff")}});var BS=Z((tfe,OS)=>{"use strict";OS.exports=function(r,t,a){var n=a("line.shape");n==="spline"&&a("line.smoothing")}});var US=Z((afe,YS)=>{"use strict";var RQ=Ie();YS.exports=function(e,r,t,a,n){n=n||{},a("textposition"),RQ.coerceFont(a,"textfont",n.font||t.font,n),n.noSelect||(a("selected.textfont.color"),a("unselected.textfont.color"))}});var WS=Z((nfe,GS)=>{"use strict";var ld=Er(),VS=Ie().isArrayOrTypedArray;function zQ(e){for(var r=ld.interpolate(e[0][1],e[1][1],.5),t=2;t{"use strict";var ZS=Ie(),NQ=br(),FQ=Do(),IQ=Ph(),iu=ln(),HQ=Hg(),OQ=Og(),BQ=ES(),YQ=FS(),UQ=HS(),XS=BS(),VQ=US(),GQ=WS(),WQ=Ie().coercePattern;JS.exports=function(r,t,a,n){function i(d,m){return ZS.coerce(r,t,FQ,d,m)}var l=HQ(r,t,n,i);if(l||(t.visible=!1),!!t.visible){OQ(r,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder");var o=BQ(r,t,n,i);n.scattermode==="group"&&t.orientation===void 0&&i("orientation","v");var s=!o&&l{"use strict";var ZQ=qf().getAxisGroup;QS.exports=function(r,t,a,n,i){var l=t.orientation,o=t[{v:"x",h:"y"}[l]+"axis"],s=ZQ(a,o)+l,u=a._alignmentOpts||{},f=n("alignmentgroup"),v=u[s];v||(v=u[s]={});var h=v[f];h?h.traces.push(t):h=v[f]={traces:[t],alignmentIndex:Object.keys(v).length,offsetGroups:{}};var d=n("offsetgroup")||"",m=h.offsetGroups,y=m[d];t._offsetIndex=0,(i!=="group"||d)&&(y||(y=m[d]={offsetIndex:Object.keys(m).length}),t._offsetIndex=y.offsetIndex)}});var jS=Z((ofe,$S)=>{"use strict";var XQ=Ie(),JQ=Bg(),KQ=Do();$S.exports=function(r,t){var a,n,i,l=t.scattermode;function o(h){return XQ.coerce(n._input,n,KQ,h)}if(t.scattermode==="group")for(i=0;i=0;f--){var v=r[f];if(v.type==="scatter"&&v.xaxis===s.xaxis&&v.yaxis===s.yaxis){v.opacity=void 0;break}}}}}});var rC=Z((sfe,eC)=>{"use strict";var QQ=Ie(),$Q=Kv();eC.exports=function(e,r){function t(n,i){return QQ.coerce(e,r,$Q,n,i)}var a=r.barmode==="group";r.scattermode==="group"&&t("scattergap",a?r.bargap:.2)}});var Yg=Z((ufe,aC)=>{"use strict";var jQ=Hr(),tC=Ie(),e$=tC.dateTime2ms,od=tC.incrementMonth,r$=Vt(),t$=r$.ONEAVGMONTH;aC.exports=function(r,t,a,n){if(t.type!=="date")return{vals:n};var i=r[a+"periodalignment"];if(!i)return{vals:n};var l=r[a+"period"],o;if(jQ(l)){if(l=+l,l<=0)return{vals:n}}else if(typeof l=="string"&&l.charAt(0)==="M"){var s=+l.substring(1);if(s>0&&Math.round(s)===s)o=s;else return{vals:n}}for(var u=t.calendar,f=i==="start",v=i==="end",h=r[a+"period0"],d=e$(h,u)||0,m=[],y=[],g=[],_=n.length,w=0;w<_;w++){var T=n[w],b,M,C;if(o){for(b=Math.round((T-d)/(o*t$)),C=od(d,o*b,u);C>T;)C=od(C,-o,u);for(;C<=T;)C=od(C,o,u);M=od(C,-o,u)}else{for(b=Math.round((T-d)/l),C=d+b*l;C>T;)C-=l;for(;C<=T;)C+=l;M=C-l}m[w]=f?M:v?C:(M+C)/2,y[w]=M,g[w]=C}return{vals:m,starts:y,ends:g}}});var lC=Z((ffe,iC)=>{"use strict";var Ug=Mn().hasColorscale,Vg=s0(),nC=ln();iC.exports=function(r,t){nC.hasLines(t)&&Ug(t,"line")&&Vg(r,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),nC.hasMarkers(t)&&(Ug(t,"marker")&&Vg(r,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),Ug(t,"marker.line")&&Vg(r,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var Gg=Z((cfe,oC)=>{"use strict";var Ct=Ie();oC.exports=function(r,t){for(var a=0;a{"use strict";var sC=Ie();uC.exports=function(r,t){sC.isArrayOrTypedArray(t.selectedpoints)&&sC.tagSelected(r,t)}});var Qg=Z((hfe,mC)=>{"use strict";var fC=Hr(),Xg=Ie(),ic=dt(),cC=Yg(),Zg=Vt().BADNUM,Jg=ln(),a$=lC(),n$=Gg(),i$=Wg();function l$(e,r){var t=e._fullLayout,a=r._xA=ic.getFromId(e,r.xaxis||"x","x"),n=r._yA=ic.getFromId(e,r.yaxis||"y","y"),i=a.makeCalcdata(r,"x"),l=n.makeCalcdata(r,"y"),o=cC(r,a,"x",i),s=cC(r,n,"y",l),u=o.vals,f=s.vals,v=r._length,h=new Array(v),d=r.ids,m=Kg(r,t,a,n),y=!1,g,_,w,T,b,M;dC(t,r);var C="x",k="y",q;if(m)Xg.pushUnique(m.traceIndices,r.index),g=m.orientation==="v",g?(k="s",q="x"):(C="s",q="y"),b=m.stackgaps==="interpolate";else{var D=hC(r,v);vC(e,r,a,n,u,f,D)}var R=!!r.xperiodalignment,z=!!r.yperiodalignment;for(_=0;__&&h[T].gap;)T--;for(M=h[T].s,w=h.length-1;w>T;w--)h[w].s=M;for(;_{"use strict";yC.exports=sd;var o$=Ie().distinctVals;function sd(e,r){this.traces=e,this.sepNegVal=r.sepNegVal,this.overlapNoMerge=r.overlapNoMerge;for(var t=1/0,a=r.posAxis._id.charAt(0),n=[],i=0;i{"use strict";var Fn=Hr(),Cl=Ie().isArrayOrTypedArray,lu=Vt().BADNUM,s$=br(),lc=dt(),u$=qf().getAxisGroup,ud=gC();function f$(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,l=e.calcdata,o=[],s=[],u=0;us+l||!Fn(o))}for(var f=0;f{"use strict";var TC=Qg(),MC=t2().setGroupPositions;function w$(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,l=e.calcdata,o=[],s=[],u=0;uD[f]&&f{"use strict";var M$=at(),qC=Vt(),oc=qC.BADNUM,DC=qC.LOG_CLIP,SC=DC+.5,CC=DC-.5,fd=Ie(),A$=fd.segmentsIntersect,LC=fd.constrain,n2=Ph();EC.exports=function(r,t){var a=t.trace||{},n=t.xaxis,i=t.yaxis,l=n.type==="log",o=i.type==="log",s=n._length,u=i._length,f=t.backoff,v=a.marker,h=t.connectGaps,d=t.baseTolerance,m=t.shape,y=m==="linear",g=a.fill&&a.fill!=="none",_=[],w=n2.minTolerance,T=r.length,b=new Array(T),M=0,C,k,q,D,R,z,F,I,H,J,X,Y,O,V,Q,K;function ne(ze){var ae=r[ze];if(!ae)return!1;var le=t.linearized?n.l2p(ae.x):n.c2p(ae.x),Le=t.linearized?i.l2p(ae.y):i.c2p(ae.y);if(le===oc){if(l&&(le=n.c2p(ae.x,!0)),le===oc)return!1;o&&Le===oc&&(le*=Math.abs(n._m*u*(n._m>0?SC:CC)/(i._m*s*(i._m>0?SC:CC)))),le*=1e3}if(Le===oc){if(o&&(Le=i.c2p(ae.y,!0)),Le===oc)return!1;Le*=1e3}return[le,Le]}function me(ze,ae,le,Le){var De=le-ze,ar=Le-ae,fr=.5-ze,sr=.5-ae,Mr=De*De+ar*ar,Br=De*fr+ar*sr;if(Br>0&&Br1||Math.abs(fr.y-le[0][1])>1)&&(fr=[fr.x,fr.y],Le&&Ce(fr,ze)se||ze[1]B)return[LC(ze[0],_e,se),LC(ze[1],ge,B)]}function Be(ze,ae){if(ze[0]===ae[0]&&(ze[0]===_e||ze[0]===se)||ze[1]===ae[1]&&(ze[1]===ge||ze[1]===B))return!0}function Ge(ze,ae){var le=[],Le=Ne(ze),De=Ne(ae);return Le&&De&&Be(Le,De)||(Le&&le.push(Le),De&&le.push(De)),le}function qe(ze,ae,le){return function(Le,De){var ar=Ne(Le),fr=Ne(De),sr=[];if(ar&&fr&&Be(ar,fr))return sr;ar&&sr.push(ar),fr&&sr.push(fr);var Mr=2*fd.constrain((Le[ze]+De[ze])/2,ae,le)-((ar||Le)[ze]+(fr||De)[ze]);if(Mr){var Br;ar&&fr?Br=Mr>0==ar[ze]>fr[ze]?ar:fr:Br=ar||fr,Br[ze]+=Mr}return sr}}var He;m==="linear"||m==="spline"?He=Ee:m==="hv"||m==="vh"?He=Ge:m==="hvh"?He=qe(0,_e,se):m==="vhv"&&(He=qe(1,ge,B));function Ye(ze,ae){var le=ae[0]-ze[0],Le=(ae[1]-ze[1])/le,De=(ze[1]*ae[0]-ae[1]*ze[0])/le;return De>0?[Le>0?_e:se,B]:[Le>0?se:_e,ge]}function ie(ze){var ae=ze[0],le=ze[1],Le=ae===b[M-1][0],De=le===b[M-1][1];if(!(Le&&De))if(M>1){var ar=ae===b[M-2][0],fr=le===b[M-2][1];Le&&(ae===_e||ae===se)&&ar?fr?M--:b[M-1]=ze:De&&(le===ge||le===B)&&fr?ar?M--:b[M-1]=ze:b[M++]=ze}else b[M++]=ze}function be(ze){b[M-1][0]!==ze[0]&&b[M-1][1]!==ze[1]&&ie([we,pe]),ie(ze),Re=null,we=pe=0}var Ke=fd.isArrayOrTypedArray(v);function hr(ze){if(ze&&f&&(ze.i=C,ze.d=r,ze.trace=a,ze.marker=Ke?v[ze.i]:v,ze.backoff=f),de=ze[0]/s,ke=ze[1]/u,U=ze[0]<_e?_e:ze[0]>se?se:0,ye=ze[1]B?B:0,U||ye){if(!M)b[M++]=[U||ze[0],ye||ze[1]];else if(Re){var ae=He(Re,ze);ae.length>1&&(be(ae[0]),b[M++]=ae[1])}else Fe=He(b[M-1],ze)[0],b[M++]=Fe;var le=b[M-1];U&&ye&&(le[0]!==U||le[1]!==ye)?(Re&&(we!==U&&pe!==ye?ie(we&&pe?Ye(Re,ze):[we||U,pe||ye]):we&&pe&&ie([we,pe])),ie([U,ye])):we-U&&pe-ye&&ie([U||we,ye||pe]),Re=ze,we=U,pe=ye}else Re&&be(He(Re,ze)[0]),b[M++]=ze}for(C=0;Cre(z,Pe))break;q=z,O=H[0]*I[0]+H[1]*I[1],O>X?(X=O,D=z,F=!1):O=r.length||!z)break;hr(z),k=z}}Re&&ie([we||Re[0],pe||Re[1]]),_.push(b.slice(0,M))}var Me=m.slice(m.length-1);if(f&&Me!=="h"&&Me!=="v"){for(var Se=!1,Oe=-1,Je=[],We=0;We<_.length;We++)for(var Ze=0;Ze<_[We].length-1;Ze++){var lr=_[We][Ze],tr=_[We][Ze+1],Qe=M$.applyBackoff(tr,lr);(Qe[0]!==tr[0]||Qe[1]!==tr[1])&&(Se=!0),Je[Oe+1]||(Oe++,Je[Oe]=[lr,[Qe[0],Qe[1]]])}return Se?Je:_}return _}});var NC=Z((gfe,zC)=>{"use strict";var RC={tonextx:1,tonexty:1,tonext:1};zC.exports=function(r,t,a){var n,i,l,o,s,u={},f=!1,v=-1,h=0,d=-1;for(i=0;i=0?s=d:(s=d=h,h++),s{"use strict";var ti=Ir(),k$=br(),sc=Ie(),su=sc.ensureSingle,IC=sc.identity,Lt=at(),uu=ln(),S$=PC(),C$=NC(),cd=eg().tester;HC.exports=function(r,t,a,n,i,l){var o,s,u=!i,f=!!i&&i.duration>0,v=C$(r,t,a);if(o=n.selectAll("g.trace").data(v,function(d){return d[0].trace.uid}),o.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),o.order(),L$(r,o,t),f){l&&(s=l());var h=ti.transition().duration(i.duration).ease(i.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});h.each(function(){n.selectAll("g.trace").each(function(d,m){FC(r,m,t,d,v,this,i)})})}else o.each(function(d,m){FC(r,m,t,d,v,this,i)});u&&o.exit().remove(),n.selectAll("path:not([d])").remove()};function L$(e,r,t){r.each(function(a){var n=su(ti.select(this),"g","fills");Lt.setClipUrl(n,t.layerClipId,e);var i=a[0].trace,l=[];i._ownfill&&l.push("_ownFill"),i._nexttrace&&l.push("_nextFill");var o=n.selectAll("g").data(l,IC);o.enter().append("g"),o.exit().each(function(s){i[s]=null}).remove(),o.order().each(function(s){i[s]=su(ti.select(this),"path","js-fill")})})}function FC(e,r,t,a,n,i,l){var o=e._context.staticPlot,s;q$(e,r,t,a,n);var u=!!l&&l.duration>0;function f(qe){return u?qe.transition():qe}var v=t.xaxis,h=t.yaxis,d=a[0].trace,m=d.line,y=ti.select(i),g=su(y,"g","errorbars"),_=su(y,"g","lines"),w=su(y,"g","points"),T=su(y,"g","text");if(k$.getComponentMethod("errorbars","plot")(e,g,t,l),d.visible!==!0)return;f(y).style("opacity",d.opacity);var b,M,C=d.fill.charAt(d.fill.length-1);C!=="x"&&C!=="y"&&(C="");var k,q;C==="y"?(k=1,q=h.c2p(0,!0)):C==="x"&&(k=0,q=v.c2p(0,!0)),a[0][t.isRangePlot?"nodeRangePlot3":"node3"]=y;var D="",R=[],z=d._prevtrace,F=null,I=null;z&&(D=z._prevRevpath||"",M=z._nextFill,R=z._ownPolygons,F=z._fillsegments,I=z._fillElement);var H,J,X="",Y="",O,V,Q,K,ne,me,de=[];d._polygons=[];var ke=[],re=[],Ce=sc.noop;if(b=d._ownFill,uu.hasLines(d)||d.fill!=="none"){M&&M.datum(a),["hv","vh","hvh","vhv"].indexOf(m.shape)!==-1?(O=Lt.steps(m.shape),V=Lt.steps(m.shape.split("").reverse().join(""))):m.shape==="spline"?O=V=function(qe){var He=qe[qe.length-1];return qe.length>1&&qe[0][0]===He[0]&&qe[0][1]===He[1]?Lt.smoothclosed(qe.slice(1),m.smoothing):Lt.smoothopen(qe,m.smoothing)}:O=V=function(qe){return"M"+qe.join("L")},Q=function(qe){return V(qe.reverse())},re=S$(a,{xaxis:v,yaxis:h,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(m.width||1,3)/4,shape:m.shape,backoff:m.backoff,simplify:m.simplify,fill:d.fill}),ke=new Array(re.length);var ce=0;for(s=0;s=o[0]&&y.x<=o[1]&&y.y>=s[0]&&y.y<=s[1]}),h=Math.ceil(v.length/f),d=0;n.forEach(function(y,g){var _=y[0].trace;uu.hasMarkers(_)&&_.marker.maxdisplayed>0&&g{"use strict";BC.exports={container:"marker",min:"cmin",max:"cmax"}});var UC=Z((_fe,YC)=>{"use strict";var vd=dt();YC.exports=function(r,t,a){var n={},i={_fullLayout:a},l=vd.getFromTrace(i,t,"x"),o=vd.getFromTrace(i,t,"y"),s=r.orig_x;s===void 0&&(s=r.x);var u=r.orig_y;return u===void 0&&(u=r.y),n.xLabel=vd.tickText(l,l.c2l(s),!0).text,n.yLabel=vd.tickText(o,o.c2l(u),!0).text,n}});var u2=Z((wfe,VC)=>{"use strict";var l2=Ir(),fu=at(),D$=br();function E$(e){var r=l2.select(e).selectAll("g.trace.scatter");r.style("opacity",function(t){return t[0].trace.opacity}),r.selectAll("g.points").each(function(t){var a=l2.select(this),n=t.trace||t[0].trace;o2(a,n,e)}),r.selectAll("g.text").each(function(t){var a=l2.select(this),n=t.trace||t[0].trace;s2(a,n,e)}),r.selectAll("g.trace path.js-line").call(fu.lineGroupStyle),r.selectAll("g.trace path.js-fill").call(fu.fillGroupStyle,e,!1),D$.getComponentMethod("errorbars","style")(r)}function o2(e,r,t){fu.pointStyle(e.selectAll("path.point"),r,t)}function s2(e,r,t){fu.textPointStyle(e.selectAll("text"),r,t)}function P$(e,r,t){var a=r[0].trace;a.selectedpoints?(fu.selectedPointStyle(t.selectAll("path.point"),a),fu.selectedTextStyle(t.selectAll("text"),a)):(o2(t,a,e),s2(t,a,e))}VC.exports={style:E$,stylePoints:o2,styleText:s2,styleOnSelect:P$}});var WC=Z((Tfe,GC)=>{"use strict";var cu=Er(),R$=ln();GC.exports=function(r,t){var a,n;if(r.mode==="lines")return a=r.line.color,a&&cu.opacity(a)?a:r.fillcolor;if(r.mode==="none")return r.fill?r.fillcolor:"";var i=t.mcc||(r.marker||{}).color,l=t.mlcc||((r.marker||{}).line||{}).color;return n=i&&cu.opacity(i)?i:l&&cu.opacity(l)&&(t.mlw||((r.marker||{}).line||{}).width)?l:"",n?cu.opacity(n)<.3?cu.addOpacity(n,.3):n:(a=(r.line||{}).color,a&&cu.opacity(a)&&R$.hasLines(r)&&r.line.width?a:r.fillcolor)}});var JC=Z((Mfe,XC)=>{"use strict";var hd=Ie(),ZC=ki(),z$=br(),N$=WC(),f2=Er(),F$=hd.fillText;XC.exports=function(r,t,a,n){var i=r.cd,l=i[0].trace,o=r.xa,s=r.ya,u=o.c2p(t),f=s.c2p(a),v=[u,f],h=l.hoveron||"",d=l.mode.indexOf("markers")!==-1?3:.5,m=!!l.xperiodalignment,y=!!l.yperiodalignment;if(h.indexOf("points")!==-1){var g=function(Y){if(m){var O=o.c2p(Y.xStart),V=o.c2p(Y.xEnd);return u>=Math.min(O,V)&&u<=Math.max(O,V)?0:1/0}var Q=Math.max(3,Y.mrc||0),K=1-1/Q,ne=Math.abs(o.c2p(Y.x)-u);return ne=Math.min(O,V)&&f<=Math.max(O,V)?0:1/0}var Q=Math.max(3,Y.mrc||0),K=1-1/Q,ne=Math.abs(s.c2p(Y.y)-f);return nede!=B>=de&&(_e=Ce[re-1][0],se=Ce[re][0],B-ge&&(ce=_e+(se-_e)*(de-ge)/(B-ge),Q=Math.min(Q,ce),K=Math.max(K,ce)));return Q=Math.max(Q,0),K=Math.min(K,o._length),{x0:Q,x1:K,y0:de,y1:de}}if(h.indexOf("fills")!==-1&&l._fillElement){var H=F(l._fillElement)&&!F(l._fillExclusionElement);if(H){var J=I(l._polygons);J===null&&(J={x0:v[0],x1:v[0],y0:v[1],y1:v[1]});var X=f2.defaultLine;return f2.opacity(l.fillcolor)?X=l.fillcolor:f2.opacity((l.line||{}).color)&&(X=l.line.color),hd.extendFlat(r,{distance:r.maxHoverDistance,x0:J.x0,x1:J.x1,y0:J.y0,y1:J.y1,color:X,hovertemplate:!1}),delete r.index,l.text&&!hd.isArrayOrTypedArray(l.text)?r.text=String(l.text):r.text=l.name,[r]}}}});var $C=Z((Afe,QC)=>{"use strict";var KC=ln();QC.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,l=[],o=a[0].trace,s,u,f,v,h=!KC.hasMarkers(o)&&!KC.hasText(o);if(h)return[];if(t===!1)for(s=0;s{"use strict";jC.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var nL=Z((Sfe,aL)=>{"use strict";var uc=br().traceIs,c2=qm();aL.exports=function(r,t,a,n){a("autotypenumbers",n.autotypenumbersDflt);var i=a("type",(n.splomStash||{}).type);i==="-"&&(I$(t,n.data),t.type==="-"?t.type="linear":r.type=t.type)};function I$(e,r){if(e.type==="-"){var t=e._id,a=t.charAt(0),n;t.indexOf("scene")!==-1&&(t=a);var i=H$(r,t,a);if(i){if(i.type==="histogram"&&a==={v:"y",h:"x"}[i.orientation||"v"]){e.type="linear";return}var l=a+"calendar",o=i[l],s={noMultiCategory:!uc(i,"cartesian")||uc(i,"noMultiCategory")};if(i.type==="box"&&i._hasPreCompStats&&a==={h:"x",v:"y"}[i.orientation||"v"]&&(s.noMultiCategory=!0),s.autotypenumbers=e.autotypenumbers,tL(i,a)){var u=rL(i),f=[];for(n=0;n0&&(n["_"+t+"axes"]||{})[r])return n;if((n[t+"axis"]||t)===r){if(tL(n,t))return n;if((n[t]||[]).length||n[t+"0"])return n}}}function rL(e){return{v:"x",h:"y"}[e.orientation||"v"]}function tL(e,r){var t=rL(e),a=uc(e,"box-violin"),n=uc(e._fullInput||{},"candlestick");return a&&!n&&r===t&&e[t]===void 0&&e[t+"0"]===void 0}});var lL=Z((Cfe,iL)=>{"use strict";var O$=an().isTypedArraySpec;function B$(e,r){var t=r.dataAttr||e._id.charAt(0),a={},n,i,l;if(r.axData)n=r.axData;else for(n=[],i=0;i0||O$(i),o;l&&(o="array");var s=a("categoryorder",o),u;s==="array"&&(u=a("categoryarray")),!l&&s==="array"&&(s=t.categoryorder="trace"),s==="trace"?t._initialCategories=[]:s==="array"?t._initialCategories=u.slice():(u=B$(t,n).sort(),s==="category ascending"?t._initialCategories=u:s==="category descending"&&(t._initialCategories=u.reverse()))}}});var uL=Z((Lfe,sL)=>{"use strict";var oL=xn().mix,Y$=hi(),U$=Ie();sL.exports=function(r,t,a,n){n=n||{};var i=n.dfltColor;function l(q,D){return U$.coerce2(r,t,n.attributes,q,D)}var o=l("linecolor",i),s=l("linewidth"),u=a("showline",n.showLine||!!o||!!s);u||(delete t.linecolor,delete t.linewidth);var f=oL(i,n.bgColor,n.blend||Y$.lightFraction).toRgbString(),v=l("gridcolor",f),h=l("gridwidth"),d=l("griddash"),m=a("showgrid",n.showGrid||!!v||!!h||!!d);if(m||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),n.hasMinor){var y=oL(t.gridcolor,n.bgColor,67).toRgbString(),g=l("minor.gridcolor",y),_=l("minor.gridwidth",t.gridwidth||1),w=l("minor.griddash",t.griddash||"solid"),T=a("minor.showgrid",!!g||!!_||!!w);T||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!n.noZeroLine){var b=l("zerolinelayer"),M=l("zerolinecolor",i),C=l("zerolinewidth"),k=a("zeroline",n.showGrid||!!M||!!C);k||(delete t.zerolinelayer,delete t.zerolinecolor,delete t.zerolinewidth)}}});var h2=Z((qfe,pL)=>{"use strict";var fL=Hr(),V$=br(),fc=Ie(),G$=ct(),W$=Jn(),v2=Xn(),cL=jp(),vL=rm(),Z$=nm(),X$=im(),J$=lL(),K$=uL(),Q$=Qm(),hL=T0(),dd=ya().WEEKDAY_PATTERN,$$=ya().HOUR_PATTERN;pL.exports=function(r,t,a,n,i){var l=n.letter,o=n.font||{},s=n.splomStash||{},u=a("visible",!n.visibleDflt),f=t._template||{},v=t.type||f.type||"-",h;if(v==="date"){var d=V$.getComponentMethod("calendars","handleDefaults");d(r,t,"calendar",n.calendar),n.noTicklabelmode||(h=a("ticklabelmode"))}!n.noTicklabelindex&&(v==="date"||v==="linear")&&a("ticklabelindex");var m="";(!n.noTicklabelposition||v==="multicategory")&&(m=fc.coerce(r,t,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h==="period"?["outside","inside"]:l==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),n.noTicklabeloverflow||a("ticklabeloverflow",m.indexOf("inside")!==-1?"hide past domain":v==="category"||v==="multicategory"?"allow":"hide past div"),hL(t,i),Q$(r,t,a,n),J$(r,t,a,n),n.noHover||(v!=="category"&&a("hoverformat"),n.noUnifiedhovertitle||a("unifiedhovertitle.text"));var y=a("color"),g=y!==v2.color.dflt?y:o.color,_=s.label||i._dfltTitle[l];if(X$(r,t,a,v,n),!u)return t;a("title.text",_),fc.coerceFont(a,"title.font",o,{overrideDflt:{size:fc.bigFont(o.size),color:g}}),cL(r,t,a,v);var w=n.hasMinor;if(w&&(G$.newContainer(t,"minor"),cL(r,t,a,v,{isMinor:!0})),Z$(r,t,a,v,n),vL(r,t,a,n),w){var T=n.isMinor;n.isMinor=!0,vL(r,t,a,n),n.isMinor=T}K$(r,t,a,{dfltColor:y,bgColor:n.bgColor,showGrid:n.showGrid,hasMinor:w,attributes:v2}),w&&!t.minor.ticks&&!t.minor.showgrid&&delete t.minor,(t.showline||t.ticks)&&a("mirror");var b=v==="multicategory";if(!n.noTickson&&(v==="category"||b)&&(t.ticks||t.showgrid)&&(b?(a("tickson","boundaries"),delete t.ticklabelposition):a("tickson")),b){var M=a("showdividers");M&&(a("dividercolor"),a("dividerwidth"))}if(v==="date")if(W$(r,t,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:j$}),!t.rangebreaks.length)delete t.rangebreaks;else{for(var C=0;C=2){var l="",o,s;if(i.length===2){for(o=0;o<2;o++)if(s=dL(i[o]),s){l=dd;break}}var u=a("pattern",l);if(u===dd)for(o=0;o<2;o++)s=dL(i[o]),s&&(r.bounds[o]=i[o]=s-1);if(u)for(o=0;o<2;o++)switch(s=i[o],u){case dd:if(!fL(s)){r.enabled=!1;return}if(s=+s,s!==Math.floor(s)||s<0||s>=7){r.enabled=!1;return}r.bounds[o]=i[o]=s;break;case $$:if(!fL(s)){r.enabled=!1;return}if(s=+s,s<0||s>24){r.enabled=!1;return}r.bounds[o]=i[o]=s;break}if(t.autorange===!1){var f=t.range;if(f[0]f[1]){r.enabled=!1;return}}else if(i[0]>f[0]&&i[1]{"use strict";var rj=Hr(),pd=Ie();mL.exports=function(r,t,a,n){var i=n.counterAxes||[],l=n.overlayableAxes||[],o=n.letter,s=n.grid,u=n.overlayingDomain,f,v,h,d,m,y;s&&(v=s._domains[o][s._axisMap[t._id]],f=s._anchors[t._id],v&&(h=s[o+"side"].split(" ")[0],d=s.domain[o][h==="right"||h==="top"?1:0])),v=v||[0,1],f=f||(rj(r.position)?"free":i[0]||"free"),h=h||(o==="x"?"bottom":"left"),d=d||0,m=0,y=!1;var g=pd.coerce(r,t,{anchor:{valType:"enumerated",values:["free"].concat(i),dflt:f}},"anchor"),_=pd.coerce(r,t,{side:{valType:"enumerated",values:o==="x"?["bottom","top"]:["left","right"],dflt:h}},"side");if(g==="free"){if(o==="y"){var w=a("autoshift");w&&(d=_==="left"?u[0]:u[1],y=t.automargin?t.automargin:!0,m=_==="left"?-3:3),a("shift",m)}a("position",d)}a("automargin",y);var T=!1;if(l.length&&(T=pd.coerce(r,t,{overlaying:{valType:"enumerated",values:[!1].concat(l),dflt:!1}},"overlaying")),!T){var b=a("domain",v);b[0]>b[1]-1/4096&&(t.domain=v),pd.noneOrAll(r.domain,t.domain,v),t.tickmode==="sync"&&(t.tickmode="auto")}return a("layer"),t}});var AL=Z((Efe,ML)=>{"use strict";var zo=Ie(),yL=Er(),tj=bi().isUnifiedHover,aj=Ty(),gL=ct(),nj=ms(),bL=Xn(),ij=nL(),xL=h2(),lj=qf(),_L=d2(),m2=Zt(),Di=m2.id2name,wL=m2.name2id,oj=ya().AX_ID_PATTERN,TL=br(),md=TL.traceIs,p2=TL.getComponentMethod;function yd(e,r,t){Array.isArray(e[r])?e[r].push(t):e[r]=[t]}ML.exports=function(r,t,a){var n=t.autotypenumbers,i={},l={},o={},s={},u={},f={},v={},h={},d={},m={},y,g;for(y=0;y{"use strict";var sj=Ir(),kL=br(),gd=Ie(),vn=at(),bd=dt();SL.exports=function(r,t,a,n){var i=r._fullLayout;if(t.length===0){bd.redrawComponents(r);return}function l(g){var _=g.xaxis,w=g.yaxis;i._defs.select("#"+g.clipId+"> rect").call(vn.setTranslate,0,0).call(vn.setScale,1,1),g.plot.call(vn.setTranslate,_._offset,w._offset).call(vn.setScale,1,1);var T=g.plot.selectAll(".scatterlayer .trace");T.selectAll(".point").call(vn.setPointGroupScale,1,1),T.selectAll(".textpoint").call(vn.setTextPointsScale,1,1),T.call(vn.hideOutsideRangePoints,g)}function o(g,_){var w=g.plotinfo,T=w.xaxis,b=w.yaxis,M=T._length,C=b._length,k=!!g.xr1,q=!!g.yr1,D=[];if(k){var R=gd.simpleMap(g.xr0,T.r2l),z=gd.simpleMap(g.xr1,T.r2l),F=R[1]-R[0],I=z[1]-z[0];D[0]=(R[0]*(1-_)+_*z[0]-R[0])/(R[1]-R[0])*M,D[2]=M*(1-_+_*I/F),T.range[0]=T.l2r(R[0]*(1-_)+_*z[0]),T.range[1]=T.l2r(R[1]*(1-_)+_*z[1])}else D[0]=0,D[2]=M;if(q){var H=gd.simpleMap(g.yr0,b.r2l),J=gd.simpleMap(g.yr1,b.r2l),X=H[1]-H[0],Y=J[1]-J[0];D[1]=(H[1]*(1-_)+_*J[1]-H[1])/(H[0]-H[1])*C,D[3]=C*(1-_+_*Y/X),b.range[0]=T.l2r(H[0]*(1-_)+_*J[0]),b.range[1]=b.l2r(H[1]*(1-_)+_*J[1])}else D[1]=0,D[3]=C;bd.drawOne(r,T,{skipTitle:!0}),bd.drawOne(r,b,{skipTitle:!0}),bd.redrawComponents(r,[T._id,b._id]);var O=k?M/D[2]:1,V=q?C/D[3]:1,Q=k?D[0]:0,K=q?D[1]:0,ne=k?D[0]/D[2]*M:0,me=q?D[1]/D[3]*C:0,de=T._offset-ne,ke=b._offset-me;w.clipRect.call(vn.setTranslate,Q,K).call(vn.setScale,1/O,1/V),w.plot.call(vn.setTranslate,de,ke).call(vn.setScale,O,V),vn.setPointGroupScale(w.zoomScalePts,1/O,1/V),vn.setTextPointsScale(w.zoomScaleTxt,1/O,1/V)}var s;n&&(s=n());function u(){for(var g={},_=0;_a.duration?(u(),d=window.cancelAnimationFrame(y)):d=window.requestAnimationFrame(y)}return v=Date.now(),d=window.requestAnimationFrame(y),Promise.resolve()}});var wd=Z(ka=>{"use strict";var _d=Ir(),LL=br(),No=Ie(),uj=Ft(),fj=at(),qL=Fp().getModuleCalcData,Ll=Zt(),ai=ya(),cj=co(),Zr=No.ensureSingle;function xd(e,r,t){return No.ensureSingle(e,r,t,function(a){a.datum(t)})}var Fo=ai.zindexSeparator;ka.name="cartesian";ka.attr=["xaxis","yaxis"];ka.idRoot=["x","y"];ka.idRegex=ai.idRegex;ka.attrRegex=ai.attrRegex;ka.attributes=eL();ka.layoutAttributes=Xn();ka.supplyLayoutDefaults=AL();ka.transitionAxes=CL();ka.finalizeSubplots=function(e,r){var t=r._subplots,a=t.xaxis,n=t.yaxis,i=t.cartesian,l=i,o={},s={},u,f,v;for(u=0;u0){var d=h.id;if(d.indexOf(Fo)!==-1)continue;d+=Fo+(u+1),h=No.extendFlat({},h,{id:d,plot:n._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var m=[],y,g=0;g1&&(M+=Fo+b),T.push(o+M),l=0;l1,v=r.mainplotinfo;if(!r.mainplot||f)if(u)r.xlines=Zr(a,"path","xlines-above"),r.ylines=Zr(a,"path","ylines-above"),r.xaxislayer=Zr(a,"g","xaxislayer-above"),r.yaxislayer=Zr(a,"g","yaxislayer-above");else{if(!l){var h=Zr(a,"g","layer-subplot");r.shapelayer=Zr(h,"g","shapelayer"),r.imagelayer=Zr(h,"g","imagelayer"),v&&f?(r.minorGridlayer=v.minorGridlayer,r.gridlayer=v.gridlayer,r.zerolinelayer=v.zerolinelayer):(r.minorGridlayer=Zr(a,"g","minor-gridlayer"),r.gridlayer=Zr(a,"g","gridlayer"),r.zerolinelayer=Zr(a,"g","zerolinelayer"));var d=Zr(a,"g","layer-between");r.shapelayerBetween=Zr(d,"g","shapelayer"),r.imagelayerBetween=Zr(d,"g","imagelayer"),Zr(a,"path","xlines-below"),Zr(a,"path","ylines-below"),r.overlinesBelow=Zr(a,"g","overlines-below"),Zr(a,"g","xaxislayer-below"),Zr(a,"g","yaxislayer-below"),r.overaxesBelow=Zr(a,"g","overaxes-below")}r.overplot=Zr(a,"g","overplot"),r.plot=Zr(r.overplot,"g",n),v&&f?r.zerolinelayerAbove=v.zerolinelayerAbove:r.zerolinelayerAbove=Zr(a,"g","zerolinelayer-above"),l||(r.xlines=Zr(a,"path","xlines-above"),r.ylines=Zr(a,"path","ylines-above"),r.overlinesAbove=Zr(a,"g","overlines-above"),Zr(a,"g","xaxislayer-above"),Zr(a,"g","yaxislayer-above"),r.overaxesAbove=Zr(a,"g","overaxes-above"),r.xlines=a.select(".xlines-"+o),r.ylines=a.select(".ylines-"+s),r.xaxislayer=a.select(".xaxislayer-"+o),r.yaxislayer=a.select(".yaxislayer-"+s))}else{var m=v.plotgroup,y=n+"-x",g=n+"-y";r.minorGridlayer=v.minorGridlayer,r.gridlayer=v.gridlayer,r.zerolinelayer=v.zerolinelayer,r.zerolinelayerAbove=v.zerolinelayerAbove,Zr(v.overlinesBelow,"path",y),Zr(v.overlinesBelow,"path",g),Zr(v.overaxesBelow,"g",y),Zr(v.overaxesBelow,"g",g),r.plot=Zr(v.overplot,"g",n),Zr(v.overlinesAbove,"path",y),Zr(v.overlinesAbove,"path",g),Zr(v.overaxesAbove,"g",y),Zr(v.overaxesAbove,"g",g),r.xlines=m.select(".overlines-"+o).select("."+y),r.ylines=m.select(".overlines-"+s).select("."+g),r.xaxislayer=m.select(".overaxes-"+o).select("."+y),r.yaxislayer=m.select(".overaxes-"+s).select("."+g)}l||(u||(xd(r.minorGridlayer,"g",r.xaxis._id),xd(r.minorGridlayer,"g",r.yaxis._id),r.minorGridlayer.selectAll("g").map(function(_){return _[0]}).sort(Ll.idSort),xd(r.gridlayer,"g",r.xaxis._id),xd(r.gridlayer,"g",r.yaxis._id),r.gridlayer.selectAll("g").map(function(_){return _[0]}).sort(Ll.idSort)),r.xlines.style("fill","none").classed("crisp",!0),r.ylines.style("fill","none").classed("crisp",!0))}function PL(e,r){if(e){var t={};e.each(function(s){var u=s[0],f=_d.select(this);f.remove(),RL(u,r),t[u]=!0});for(var a in r._plots)for(var n=r._plots[a],i=n.overlays||[],l=0;l{"use strict";var Td=ln();zL.exports={hasLines:Td.hasLines,hasMarkers:Td.hasMarkers,hasText:Td.hasText,isBubble:Td.isBubble,attributes:Do(),layoutAttributes:Kv(),supplyDefaults:KS(),crossTraceDefaults:jS(),supplyLayoutDefaults:rC(),calc:Qg().calc,crossTraceCalc:kC(),arraysToCalcdata:Gg(),plot:OC(),colorbar:i2(),formatLabels:UC(),style:u2().style,styleOnSelect:u2().styleOnSelect,hoverPoints:JC(),selectPoints:$C(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:wd(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var HL=Z((Nfe,IL)=>{"use strict";var hj=Ir(),dj=Er(),FL=vg(),y2=Ie(),pj=y2.strScale,mj=y2.strRotate,yj=y2.strTranslate;IL.exports=function(r,t,a){var n=r.node(),i=FL[a.arrowhead||0],l=FL[a.startarrowhead||0],o=(a.arrowwidth||1)*(a.arrowsize||1),s=(a.arrowwidth||1)*(a.startarrowsize||1),u=t.indexOf("start")>=0,f=t.indexOf("end")>=0,v=i.backoff*o+a.standoff,h=l.backoff*s+a.startstandoff,d,m,y,g;if(n.nodeName==="line"){d={x:+r.attr("x1"),y:+r.attr("y1")},m={x:+r.attr("x2"),y:+r.attr("y2")};var _=d.x-m.x,w=d.y-m.y;if(y=Math.atan2(w,_),g=y+Math.PI,v&&h&&v+h>Math.sqrt(_*_+w*w)){H();return}if(v){if(v*v>_*_+w*w){H();return}var T=v*Math.cos(y),b=v*Math.sin(y);m.x+=T,m.y+=b,r.attr({x2:m.x,y2:m.y})}if(h){if(h*h>_*_+w*w){H();return}var M=h*Math.cos(y),C=h*Math.sin(y);d.x-=M,d.y-=C,r.attr({x1:d.x,y1:d.y})}}else if(n.nodeName==="path"){var k=n.getTotalLength(),q="";if(k{"use strict";var OL=Ir(),g2=br(),gj=Ft(),Dl=Ie(),b2=Dl.strTranslate,vc=dt(),Io=Er(),Xi=at(),BL=ki(),x2=Ta(),_2=_l(),cc=Qn(),bj=ct().arrayEditor,xj=HL();VL.exports={draw:_j,drawOne:YL,drawRaw:UL};function _j(e){var r=e._fullLayout;r._infolayer.selectAll(".annotation").remove();for(var t=0;t2/3?De="right":De="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[De]}for(var ge=!1,B=["x","y"],$=0;$1)&&(we===ye?(Pe=pe.r2fraction(r["a"+U]),(Pe<0||Pe>1)&&(ge=!0)):ge=!0),He=pe._offset+pe.r2p(r[U]),be=.5}else{var Me=hr==="domain";U==="x"?(ie=r[U],He=Me?pe._offset+pe._length*ie:He=o.l+o.w*ie):(ie=1-r[U],He=Me?pe._offset+pe._length*ie:He=o.t+o.h*ie),be=r.showarrow?.5:ie}if(r.showarrow){qe.head=He;var Se=r["a"+U];if(Ke=Fe*se(.5,r.xanchor)-Ee*se(.5,r.yanchor),we===ye){var Oe=vc.getRefType(we);Oe==="domain"?(U==="y"&&(Se=1-Se),qe.tail=pe._offset+pe._length*Se):Oe==="paper"?U==="y"?(Se=1-Se,qe.tail=o.t+o.h*Se):qe.tail=o.l+o.w*Se:qe.tail=pe._offset+pe.r2p(Se),Ye=Ke}else qe.tail=He+Se,Ye=Ke+Se;qe.text=qe.tail+Ke;var Je=l[U==="x"?"width":"height"];if(ye==="paper"&&(qe.head=Dl.constrain(qe.head,1,Je-1)),we==="pixel"){var We=-Math.max(qe.tail-3,qe.text),Ze=Math.min(qe.tail+3,qe.text)-Je;We>0?(qe.tail+=We,qe.text+=We):Ze>0&&(qe.tail-=Ze,qe.text-=Ze)}qe.tail+=Ge,qe.head+=Ge}else Ke=Ne*se(be,Be),Ye=Ke,qe.text=He+Ke;qe.text+=Ge,Ke+=Ge,Ye+=Ge,r["_"+U+"padplus"]=Ne/2+Ye,r["_"+U+"padminus"]=Ne/2-Ye,r["_"+U+"size"]=Ne,r["_"+U+"shift"]=Ke}if(ge){k.remove();return}var lr=0,tr=0;if(r.align!=="left"&&(lr=(re-de)*(r.align==="center"?.5:1)),r.valign!=="top"&&(tr=(Ce-ke)*(r.valign==="middle"?.5:1)),ne)K.select("svg").attr({x:R+lr-1,y:R+tr}).call(Xi.setClipUrl,F?y:null,e);else{var Qe=R+tr-me.top,ze=R+lr-me.left;X.call(x2.positionText,ze,Qe).call(Xi.setClipUrl,F?y:null,e)}I.select("rect").call(Xi.setRect,R,R,re,Ce),z.call(Xi.setRect,q/2,q/2,ce-q,_e-q),k.call(Xi.setTranslate,Math.round(g.x.text-ce/2),Math.round(g.y.text-_e/2)),T.attr({transform:"rotate("+_+","+g.x.text+","+g.y.text+")"});var ae=function(Le,De){w.selectAll(".annotation-arrow-g").remove();var ar=g.x.head,fr=g.y.head,sr=g.x.tail+Le,Mr=g.y.tail+De,Br=g.x.text+Le,$r=g.y.text+De,it=Dl.rotationXYMatrix(_,Br,$r),_t=Dl.apply2DTransform(it),yt=Dl.apply2DTransform2(it),Dt=+z.attr("width"),Kt=+z.attr("height"),La=Br-.5*Dt,sa=La+Dt,ua=$r-.5*Kt,vr=ua+Kt,lt=[[La,ua,La,vr],[La,vr,sa,vr],[sa,vr,sa,ua],[sa,ua,La,ua]].map(yt);if(!lt.reduce(function(wt,ca){return wt^!!Dl.segmentsIntersect(ar,fr,ar+1e6,fr+1e6,ca[0],ca[1],ca[2],ca[3])},!1)){lt.forEach(function(wt){var ca=Dl.segmentsIntersect(sr,Mr,ar,fr,wt[0],wt[1],wt[2],wt[3]);ca&&(sr=ca.x,Mr=ca.y)});var Xr=r.arrowwidth,ft=r.arrowcolor,kt=r.arrowside,bt=w.append("g").style({opacity:Io.opacity(ft)}).classed("annotation-arrow-g",!0),Qr=bt.append("path").attr("d","M"+sr+","+Mr+"L"+ar+","+fr).style("stroke-width",Xr+"px").call(Io.stroke,Io.rgb(ft));if(xj(Qr,kt,r),s.annotationPosition&&Qr.node().parentNode&&!a){var fa=ar,pn=fr;if(r.standoff){var Qt=Math.sqrt(Math.pow(ar-sr,2)+Math.pow(fr-Mr,2));fa+=r.standoff*(sr-ar)/Qt,pn+=r.standoff*(Mr-fr)/Qt}var fi=bt.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(sr-fa)+","+(Mr-pn),transform:b2(fa,pn)}).style("stroke-width",Xr+6+"px").call(Io.stroke,"rgba(0,0,0,0)").call(Io.fill,"rgba(0,0,0,0)"),mn,St;cc.init({element:fi.node(),gd:e,prepFn:function(){var wt=Xi.getTranslate(k);mn=wt.x,St=wt.y,n&&n.autorange&&h(n._name+".autorange",!0),i&&i.autorange&&h(i._name+".autorange",!0)},moveFn:function(wt,ca){var Yl=_t(mn,St),Ul=Yl[0]+wt,el=Yl[1]+ca;k.call(Xi.setTranslate,Ul,el),d("x",ql(n,wt,"x",o,r)),d("y",ql(i,ca,"y",o,r)),r.axref===r.xref&&d("ax",ql(n,wt,"ax",o,r)),r.ayref===r.yref&&d("ay",ql(i,ca,"ay",o,r)),bt.attr("transform",b2(wt,ca)),T.attr({transform:"rotate("+_+","+Ul+","+el+")"})},doneFn:function(){g2.call("_guiRelayout",e,m());var wt=document.querySelector(".js-notes-box-panel");wt&&wt.redraw(wt.selectedObj)}})}}};if(r.showarrow&&ae(0,0),b){var le;cc.init({element:k.node(),gd:e,prepFn:function(){le=T.attr("transform")},moveFn:function(Le,De){var ar="pointer";if(r.showarrow)r.axref===r.xref?d("ax",ql(n,Le,"ax",o,r)):d("ax",r.ax+Le),r.ayref===r.yref?d("ay",ql(i,De,"ay",o.w,r)):d("ay",r.ay+De),ae(Le,De);else{if(a)return;var fr,sr;if(n)fr=ql(n,Le,"x",o,r);else{var Mr=r._xsize/o.w,Br=r.x+(r._xshift-r.xshift)/o.w-Mr/2;fr=cc.align(Br+Le/o.w,Mr,0,1,r.xanchor)}if(i)sr=ql(i,De,"y",o,r);else{var $r=r._ysize/o.h,it=r.y-(r._yshift+r.yshift)/o.h-$r/2;sr=cc.align(it-De/o.h,$r,0,1,r.yanchor)}d("x",fr),d("y",sr),(!n||!i)&&(ar=cc.getCursor(n?.5:fr,i?.5:sr,r.xanchor,r.yanchor))}T.attr({transform:b2(Le,De)+le}),_2(k,ar)},clickFn:function(Le,De){r.captureevents&&e.emit("plotly_clickannotation",C(De))},doneFn:function(){_2(k),g2.call("_guiRelayout",e,m());var Le=document.querySelector(".js-notes-box-panel");Le&&Le.redraw(Le.selectedObj)}})}}s.annotationText?X.call(x2.makeEditable,{delegate:k,gd:e}).call(Y).on("edit",function(V){r.text=V,this.call(Y),d("text",V),n&&n.autorange&&h(n._name+".autorange",!0),i&&i.autorange&&h(i._name+".autorange",!0),g2.call("_guiRelayout",e,m())}):X.call(Y)}});var KL=Z((Ife,JL)=>{"use strict";var GL=Ie(),wj=br(),WL=ct().arrayEditor;JL.exports={hasClickToShow:Tj,onClick:Mj};function Tj(e,r){var t=XL(e,r);return t.on.length>0||t.explicitOff.length>0}function Mj(e,r){var t=XL(e,r),a=t.on,n=t.off.concat(t.explicitOff),i={},l=e._fullLayout.annotations,o,s;if(a.length||n.length){for(o=0;o{"use strict";var w2=Ie(),vu=Er();QL.exports=function(r,t,a,n){n("opacity");var i=n("bgcolor"),l=n("bordercolor"),o=vu.opacity(l);n("borderpad");var s=n("borderwidth"),u=n("showarrow");n("text",u?" ":a._dfltTitle.annotation),n("textangle"),w2.coerceFont(n,"font",a.font),n("width"),n("align");var f=n("height");if(f&&n("valign"),u){var v=n("arrowside"),h,d;v.indexOf("end")!==-1&&(h=n("arrowhead"),d=n("arrowsize")),v.indexOf("start")!==-1&&(n("startarrowhead",h),n("startarrowsize",d)),n("arrowcolor",o?t.bordercolor:vu.defaultLine),n("arrowwidth",(o&&s||1)*2),n("standoff"),n("startstandoff")}var m=n("hovertext"),y=a.hoverlabel||{};if(m){var g=n("hoverlabel.bgcolor",y.bgcolor||(vu.opacity(i)?vu.rgb(i):vu.defaultLine)),_=n("hoverlabel.bordercolor",y.bordercolor||vu.contrast(g)),w=w2.extendFlat({},y.font);w.color||(w.color=_),w2.coerceFont(n,"hoverlabel.font",w)}n("captureevents",!!m)}});var jL=Z((Ofe,$L)=>{"use strict";var M2=Ie(),Ho=dt(),Aj=Jn(),kj=T2(),Sj=tu();$L.exports=function(r,t){Aj(r,t,{name:"annotations",handleItemDefaults:Cj})};function Cj(e,r,t){function a(T,b){return M2.coerce(e,r,Sj,T,b)}var n=a("visible"),i=a("clicktoshow");if(n||i){kj(e,r,t,a);for(var l=r.showarrow,o=["x","y"],s=[-10,-30],u={_fullLayout:t},f=0;f<2;f++){var v=o[f],h=Ho.coerceRef(e,r,u,v,"","paper");if(h!=="paper"){var d=Ho.getFromId(u,h);d._annIndices.push(r._index)}if(Ho.coercePosition(r,u,a,h,v,.5),l){var m="a"+v,y=Ho.coerceRef(e,r,u,m,"pixel",["pixel","paper"]);y!=="pixel"&&y!==h&&(y=r[m]="pixel");var g=y==="pixel"?s[f]:.4;Ho.coercePosition(r,u,a,y,m,g)}a(v+"anchor"),a(v+"shift")}if(M2.noneOrAll(e,r,["x","y"]),l&&M2.noneOrAll(e,r,["ax","ay"]),i){var _=a("xclick"),w=a("yclick");r._xclick=_===void 0?r.x:Ho.cleanPosition(_,u,r.xref),r._yclick=w===void 0?r.y:Ho.cleanPosition(w,u,r.yref)}}}});var tq=Z((Bfe,rq)=>{"use strict";var A2=Ie(),Oo=dt(),Lj=Md().draw;rq.exports=function(r){var t=r._fullLayout,a=A2.filterVisible(t.annotations);if(a.length&&r._fullData.length)return A2.syncOrAsync([Lj,qj],r)};function qj(e){var r=e._fullLayout;A2.filterVisible(r.annotations).forEach(function(t){var a=Oo.getFromId(e,t.xref),n=Oo.getFromId(e,t.yref),i=Oo.getRefType(t.xref),l=Oo.getRefType(t.yref);t._extremes={},i==="range"&&eq(t,a),l==="range"&&eq(t,n)})}function eq(e,r){var t=r._id,a=t.charAt(0),n=e[a],i=e["a"+a],l=e[a+"ref"],o=e["a"+a+"ref"],s=e["_"+a+"padplus"],u=e["_"+a+"padminus"],f={x:1,y:-1}[a]*e[a+"shift"],v=3*e.arrowsize*e.arrowwidth||0,h=v+f,d=v-f,m=3*e.startarrowsize*e.arrowwidth||0,y=m+f,g=m-f,_;if(o===l){var w=Oo.findExtremes(r,[r.r2c(n)],{ppadplus:h,ppadminus:d}),T=Oo.findExtremes(r,[r.r2c(i)],{ppadplus:Math.max(s,y),ppadminus:Math.max(u,g)});_={min:[w.min[0],T.min[0]],max:[w.max[0],T.max[0]]}}else y=i?y+i:y,g=i?g-i:g,_=Oo.findExtremes(r,[r.r2c(n)],{ppadplus:Math.max(s,h,y),ppadminus:Math.max(u,d,g)});e._extremes[t]=_}});var nq=Z((Yfe,aq)=>{"use strict";var Dj=Hr(),Ej=gv();aq.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",l=a==="linear"&&t.type==="log";if(!(i||l))return;var o=r._fullLayout.annotations,s=t._id.charAt(0),u,f;function v(d){var m=u[d],y=null;i?y=Ej(m,t.range):y=Math.pow(10,m),Dj(y)||(y=null),n(f+d,y)}for(var h=0;h{"use strict";var k2=Md(),iq=KL();lq.exports={moduleType:"component",name:"annotations",layoutAttributes:tu(),supplyLayoutDefaults:jL(),includeBasePlot:Zf()("annotations"),calcAutorange:tq(),draw:k2.draw,drawOne:k2.drawOne,drawRaw:k2.drawRaw,hasClickToShow:iq.hasClickToShow,onClick:iq.onClick,convertCoords:nq()}});var Ad=Z((Vfe,sq)=>{"use strict";var ut=tu(),Pj=pi().overrideAll,Rj=ct().templatedArray;sq.exports=Pj(Rj("annotation",{visible:ut.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:ut.xanchor,xshift:ut.xshift,yanchor:ut.yanchor,yshift:ut.yshift,text:ut.text,textangle:ut.textangle,font:ut.font,width:ut.width,height:ut.height,opacity:ut.opacity,align:ut.align,valign:ut.valign,bgcolor:ut.bgcolor,bordercolor:ut.bordercolor,borderpad:ut.borderpad,borderwidth:ut.borderwidth,showarrow:ut.showarrow,arrowcolor:ut.arrowcolor,arrowhead:ut.arrowhead,startarrowhead:ut.startarrowhead,arrowside:ut.arrowside,arrowsize:ut.arrowsize,startarrowsize:ut.startarrowsize,arrowwidth:ut.arrowwidth,standoff:ut.standoff,startstandoff:ut.startstandoff,hovertext:ut.hovertext,hoverlabel:ut.hoverlabel,captureevents:ut.captureevents}),"calc","from-root")});var fq=Z((Gfe,uq)=>{"use strict";var S2=Ie(),zj=dt(),Nj=Jn(),Fj=T2(),Ij=Ad();uq.exports=function(r,t,a){Nj(r,t,{name:"annotations",handleItemDefaults:Hj,fullLayout:a.fullLayout})};function Hj(e,r,t,a){function n(o,s){return S2.coerce(e,r,Ij,o,s)}function i(o){var s=o+"axis",u={_fullLayout:{}};return u._fullLayout[s]=t[s],zj.coercePosition(r,u,n,o,o,.5)}var l=n("visible");l&&(Fj(e,r,a.fullLayout,n),i("x"),i("y"),i("z"),S2.noneOrAll(e,r,["x","y","z"]),r.xref="x",r.yref="y",r.zref="z",n("xanchor"),n("yanchor"),n("xshift"),n("yshift"),r.showarrow&&(r.axref="pixel",r.ayref="pixel",n("ax",-10),n("ay",-30),S2.noneOrAll(e,r,["ax","ay"])))}});var dq=Z((Wfe,hq)=>{"use strict";var cq=Ie(),vq=dt();hq.exports=function(r){for(var t=r.fullSceneLayout,a=t.annotations,n=0;n{"use strict";function C2(e,r){var t=[0,0,0,0],a,n;for(a=0;a<4;++a)for(n=0;n<4;++n)t[n]+=e[4*a+n]*r[a];return t}function Bj(e,r){var t=C2(e.projection,C2(e.view,C2(e.model,[r[0],r[1],r[2],1])));return t}pq.exports=Bj});var gq=Z((Xfe,yq)=>{"use strict";var Yj=Md().drawRaw,Uj=mq(),Vj=["x","y","z"];yq.exports=function(r){for(var t=r.fullSceneLayout,a=r.dataScale,n=t.annotations,i=0;i1){o=!0;break}}o?r.fullLayout._infolayer.select(".annotation-"+r.id+'[data-index="'+i+'"]').remove():(l._pdata=Uj(r.glplot.cameraParams,[t.xaxis.r2l(l.x)*a[0],t.yaxis.r2l(l.y)*a[1],t.zaxis.r2l(l.z)*a[2]]),Yj(r.graphDiv,l,i,r.id,l._xa,l._ya))}}});var _q=Z((Jfe,xq)=>{"use strict";var Gj=br(),bq=Ie();xq.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:Ad()}}},layoutAttributes:Ad(),handleDefaults:fq(),includeBasePlot:Wj,convert:dq(),draw:gq()};function Wj(e,r){var t=Gj.subplotsRegistry.gl3d;if(t)for(var a=t.attrRegex,n=Object.keys(e),i=0;i{"use strict";var wq=tu(),Tq=ma(),Mq=Do().line,Zj=mi().dash,ni=Gt().extendFlat,Xj=ct().templatedArray,Kfe=Wf(),hu=Vn(),{shapeTexttemplateAttrs:Jj,templatefallbackAttrs:Kj}=to(),Qj=Lv();Aq.exports=Xj("shape",{visible:ni({},hu.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:ni({},hu.legend,{editType:"calc+arraydraw"}),legendgroup:ni({},hu.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:ni({},hu.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:Tq({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:ni({},hu.legendrank,{editType:"calc+arraydraw"}),legendwidth:ni({},hu.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:ni({},wq.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:ni({},wq.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:ni({},Mq.color,{editType:"arraydraw"}),width:ni({},Mq.width,{editType:"calc+arraydraw"}),dash:ni({},Zj,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:Jj({},{keys:Object.keys(Qj)}),texttemplatefallback:Kj({editType:"arraydraw"}),font:Tq({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var Cq=Z(($fe,Sq)=>{"use strict";var hc=Ie(),du=dt(),$j=Jn(),jj=L2(),kq=Ml();Sq.exports=function(r,t){$j(r,t,{name:"shapes",handleItemDefaults:ree})};function eee(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}function ree(e,r,t){function a(V,Q){return hc.coerce(e,r,jj,V,Q)}r._isShape=!0;var n=a("visible");if(n){var i=a("showlegend");i&&(a("legend"),a("legendwidth"),a("legendgroup"),a("legendgrouptitle.text"),hc.coerceFont(a,"legendgrouptitle.font"),a("legendrank"));var l=a("path"),o=l?"path":"rect",s=a("type",o),u=s!=="path";u&&delete r.path,a("editable"),a("layer"),a("opacity"),a("fillcolor"),a("fillrule");var f=a("line.width");f&&(a("line.color"),a("line.dash"));for(var v=a("xsizemode"),h=a("ysizemode"),d=["x","y"],m=0;m<2;m++){var y=d[m],g=y+"anchor",_=y==="x"?v:h,w={_fullLayout:t},T,b,M,C=du.coerceRef(e,r,w,y,void 0,"paper"),k=du.getRefType(C);if(k==="range"?(T=du.getFromId(w,C),T._shapeIndices.push(r._index),M=kq.rangeToShapePosition(T),b=kq.shapePositionToRange(T),(T.type==="category"||T.type==="multicategory")&&(a(y+"0shift"),a(y+"1shift"))):b=M=hc.identity,u){var q=.25,D=.75,R=y+"0",z=y+"1",F=e[R],I=e[z];e[R]=b(e[R],!0),e[z]=b(e[z],!0),_==="pixel"?(a(R,0),a(z,10)):(du.coercePosition(r,w,a,C,R,q),du.coercePosition(r,w,a,C,z,D)),r[R]=M(r[R]),r[z]=M(r[z]),e[R]=F,e[z]=I}if(_==="pixel"){var H=e[g];e[g]=b(e[g],!0),du.coercePosition(r,w,a,C,g,.25),r[g]=M(r[g]),e[g]=H}}u&&hc.noneOrAll(e,r,["x0","x1","y0","y1"]);var J=s==="line",X,Y;if(u&&(X=a("label.texttemplate"),a("label.texttemplatefallback")),X||(Y=a("label.text")),Y||X){a("label.textangle");var O=a("label.textposition",J?"middle":"middle center");a("label.xanchor"),a("label.yanchor",eee(J,O)),a("label.padding"),hc.coerceFont(a,"label.font",t.font)}}}});var Dq=Z((jfe,qq)=>{"use strict";var tee=Er(),Lq=Ie();function aee(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}qq.exports=function(r,t,a){a("newshape.visible"),a("newshape.name"),a("newshape.showlegend"),a("newshape.legend"),a("newshape.legendwidth"),a("newshape.legendgroup"),a("newshape.legendgrouptitle.text"),Lq.coerceFont(a,"newshape.legendgrouptitle.font"),a("newshape.legendrank"),a("newshape.drawdirection"),a("newshape.layer"),a("newshape.fillcolor"),a("newshape.fillrule"),a("newshape.opacity");var n=a("newshape.line.width");if(n){var i=(r||{}).plot_bgcolor||"#FFF";a("newshape.line.color",tee.contrast(i)),a("newshape.line.dash")}var l=r.dragmode==="drawline",o=a("newshape.label.text"),s=a("newshape.label.texttemplate");if(a("newshape.label.texttemplatefallback"),o||s){a("newshape.label.textangle");var u=a("newshape.label.textposition",l?"middle":"middle center");a("newshape.label.xanchor"),a("newshape.label.yanchor",aee(l,u)),a("newshape.label.padding"),Lq.coerceFont(a,"newshape.label.font",t.font)}a("activeshape.fillcolor"),a("activeshape.opacity")}});var Nq=Z((ece,zq)=>{"use strict";var q2=Ie(),pu=dt(),mu=kf(),Pq=Ml();zq.exports=function(r){var t=r._fullLayout,a=q2.filterVisible(t.shapes);if(!(!a.length||!r._fullData.length))for(var n=0;n0?u+l:l;return{ppad:l,ppadplus:o?v:h,ppadminus:o?h:v}}else return{ppad:l}}function Eq(e,r,t){var a=e._id.charAt(0)==="x"?"x":"y",n=e.type==="category"||e.type==="multicategory",i,l,o=0,s=0,u=n?e.r2c:e.d2c,f=r[a+"sizemode"]==="scaled";if(f?(i=r[a+"0"],l=r[a+"1"],n&&(o=r[a+"0shift"],s=r[a+"1shift"])):(i=r[a+"anchor"],l=r[a+"anchor"]),i!==void 0)return[u(i)+o,u(l)+s];if(r.path){var v=1/0,h=-1/0,d=r.path.match(mu.segmentRE),m,y,g,_,w;for(e.type==="date"&&(u=Pq.decodeDate(u)),m=0;mh&&(h=w)));if(h>=v)return[v,h]}}});var Hq=Z((rce,Iq)=>{"use strict";var Fq=mh();Iq.exports={moduleType:"component",name:"shapes",layoutAttributes:L2(),supplyLayoutDefaults:Cq(),supplyDrawNewShapeDefaults:Dq(),includeBasePlot:Zf()("shapes"),calcAutorange:Nq(),draw:Fq.draw,drawOne:Fq.drawOne}});var D2=Z((ace,Bq)=>{"use strict";var Oq=ya(),lee=ct().templatedArray,tce=Wf();Bq.exports=lee("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",Oq.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",Oq.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var Uq=Z((nce,Yq)=>{"use strict";var oee=Ie(),E2=dt(),see=Jn(),uee=D2(),fee="images";Yq.exports=function(r,t){var a={name:fee,handleItemDefaults:cee};see(r,t,a)};function cee(e,r,t){function a(h,d){return oee.coerce(e,r,uee,h,d)}var n=a("source"),i=a("visible",!!n);if(!i)return r;a("layer"),a("xanchor"),a("yanchor"),a("sizex"),a("sizey"),a("sizing"),a("opacity");for(var l={_fullLayout:t},o=["x","y"],s=0;s<2;s++){var u=o[s],f=E2.coerceRef(e,r,l,u,"paper",void 0);if(f!=="paper"){var v=E2.getFromId(l,f);v._imgIndices.push(r._index)}E2.coercePosition(r,l,a,f,u,0)}return r}});var Zq=Z((ice,Wq)=>{"use strict";var Vq=Ir(),vee=at(),yu=dt(),Gq=Zt(),hee=co();Wq.exports=function(r){var t=r._fullLayout,a=[],n={},i=[],l,o;for(o=0;o{"use strict";var Xq=Hr(),dee=gv();Jq.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",l=a==="linear"&&t.type==="log";if(i||l){for(var o=r._fullLayout.images,s=t._id.charAt(0),u,f,v=0;v{"use strict";Qq.exports={moduleType:"component",name:"images",layoutAttributes:D2(),supplyLayoutDefaults:Uq(),includeBasePlot:Zf()("images"),draw:Zq(),convertCoords:Kq()}});var kd=Z((sce,jq)=>{"use strict";jq.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var P2=Z((uce,rD)=>{"use strict";var pee=ma(),mee=hi(),yee=Gt().extendFlat,gee=pi().overrideAll,bee=qv(),eD=ct().templatedArray,xee=eD("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});rD.exports=gee(eD("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:xee,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:yee(bee({editType:"arraydraw"}),{}),font:pee({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:mee.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var iD=Z((fce,nD)=>{"use strict";var Sd=Ie(),tD=Jn(),aD=P2(),_ee=kd(),wee=_ee.name,Tee=aD.buttons;nD.exports=function(r,t){var a={name:wee,handleItemDefaults:Mee};tD(r,t,a)};function Mee(e,r,t){function a(l,o){return Sd.coerce(e,r,aD,l,o)}var n=tD(e,r,{name:"buttons",handleItemDefaults:Aee}),i=a("visible",n.length>0);i&&(a("active"),a("direction"),a("type"),a("showactive"),a("x"),a("y"),Sd.noneOrAll(e,r,["x","y"]),a("xanchor"),a("yanchor"),a("pad.t"),a("pad.r"),a("pad.b"),a("pad.l"),Sd.coerceFont(a,"font",t.font),a("bgcolor",t.paper_bgcolor),a("bordercolor"),a("borderwidth"))}function Aee(e,r){function t(n,i){return Sd.coerce(e,r,Tee,n,i)}var a=t("visible",e.method==="skip"||Array.isArray(e.args));a&&(t("method"),t("args"),t("args2"),t("label"),t("execute"))}});var sD=Z((cce,oD)=>{"use strict";oD.exports=xt;var ii=Ir(),lD=Er(),gu=at(),Cd=Ie();function xt(e,r,t){this.gd=e,this.container=r,this.id=t,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}xt.barWidth=2;xt.barLength=20;xt.barRadius=2;xt.barPad=1;xt.barColor="#808BA4";xt.prototype.enable=function(r,t,a){var n=this.gd._fullLayout,i=n.width,l=n.height;this.position=r;var o=this.position.l,s=this.position.w,u=this.position.t,f=this.position.h,v=this.position.direction,h=v==="down",d=v==="left",m=v==="right",y=v==="up",g=s,_=f,w,T,b,M;!h&&!d&&!m&&!y&&(this.position.direction="down",h=!0);var C=h||y;C?(w=o,T=w+g,h?(b=u,M=Math.min(b+_,l),_=M-b):(M=u+_,b=Math.max(M-_,0),_=M-b)):(b=u,M=b+_,d?(T=o+g,w=Math.max(T-g,0),g=T-w):(w=o,T=Math.min(w+g,i),g=T-w)),this._box={l:w,t:b,w:g,h:_};var k=s>g,q=xt.barLength+2*xt.barPad,D=xt.barWidth+2*xt.barPad,R=o,z=u+f;z+D>l&&(z=l-D);var F=this.container.selectAll("rect.scrollbar-horizontal").data(k?[0]:[]);F.exit().on(".drag",null).remove(),F.enter().append("rect").classed("scrollbar-horizontal",!0).call(lD.fill,xt.barColor),k?(this.hbar=F.attr({rx:xt.barRadius,ry:xt.barRadius,x:R,y:z,width:q,height:D}),this._hbarXMin=R+q/2,this._hbarTranslateMax=g-q):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var I=f>_,H=xt.barWidth+2*xt.barPad,J=xt.barLength+2*xt.barPad,X=o+s,Y=u;X+H>i&&(X=i-H);var O=this.container.selectAll("rect.scrollbar-vertical").data(I?[0]:[]);O.exit().on(".drag",null).remove(),O.enter().append("rect").classed("scrollbar-vertical",!0).call(lD.fill,xt.barColor),I?(this.vbar=O.attr({rx:xt.barRadius,ry:xt.barRadius,x:X,y:Y,width:H,height:J}),this._vbarYMin=Y+J/2,this._vbarTranslateMax=_-J):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var V=this.id,Q=w-.5,K=I?T+H+.5:T+.5,ne=b-.5,me=k?M+D+.5:M+.5,de=n._topdefs.selectAll("#"+V).data(k||I?[0]:[]);if(de.exit().remove(),de.enter().append("clipPath").attr("id",V).append("rect"),k||I?(this._clipRect=de.select("rect").attr({x:Math.floor(Q),y:Math.floor(ne),width:Math.ceil(K)-Math.floor(Q),height:Math.ceil(me)-Math.floor(ne)}),this.container.call(gu.setClipUrl,V,this.gd),this.bg.attr({x:o,y:u,width:s,height:f})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(gu.setClipUrl,null),delete this._clipRect),k||I){var ke=ii.behavior.drag().on("dragstart",function(){ii.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(ke);var re=ii.behavior.drag().on("dragstart",function(){ii.event.sourceEvent.preventDefault(),ii.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));k&&this.hbar.on(".drag",null).call(re),I&&this.vbar.on(".drag",null).call(re)}this.setTranslate(t,a)};xt.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(gu.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};xt.prototype._onBoxDrag=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r-=ii.event.dx),this.vbar&&(t-=ii.event.dy),this.setTranslate(r,t)};xt.prototype._onBoxWheel=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r+=ii.event.deltaY),this.vbar&&(t+=ii.event.deltaY),this.setTranslate(r,t)};xt.prototype._onBarDrag=function(){var r=this.translateX,t=this.translateY;if(this.hbar){var a=r+this._hbarXMin,n=a+this._hbarTranslateMax,i=Cd.constrain(ii.event.x,a,n),l=(i-a)/(n-a),o=this.position.w-this._box.w;r=l*o}if(this.vbar){var s=t+this._vbarYMin,u=s+this._vbarTranslateMax,f=Cd.constrain(ii.event.y,s,u),v=(f-s)/(u-s),h=this.position.h-this._box.h;t=v*h}this.setTranslate(r,t)};xt.prototype.setTranslate=function(r,t){var a=this.position.w-this._box.w,n=this.position.h-this._box.h;if(r=Cd.constrain(r||0,0,a),t=Cd.constrain(t||0,0,n),this.translateX=r,this.translateY=t,this.container.call(gu.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-t),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+t-.5)}),this.hbar){var i=r/a;this.hbar.call(gu.setTranslate,r+i*this._hbarTranslateMax,t)}if(this.vbar){var l=t/n;this.vbar.call(gu.setTranslate,r,t+l*this._vbarTranslateMax)}}});var gD=Z((vce,yD)=>{"use strict";var bu=Ir(),dc=Ft(),pc=Er(),xu=at(),hn=Ie(),Ld=Ta(),kee=ct().arrayEditor,fD=Pa().LINE_SPACING,_r=kd(),See=sD();yD.exports=function(r){var t=r._fullLayout,a=hn.filterVisible(t[_r.name]);function n(h){dc.autoMargin(r,pD(h))}var i=t._menulayer.selectAll("g."+_r.containerClassName).data(a.length>0?[0]:[]);if(i.enter().append("g").classed(_r.containerClassName,!0).style("cursor","pointer"),i.exit().each(function(){bu.select(this).selectAll("g."+_r.headerGroupClassName).each(n)}).remove(),a.length!==0){var l=i.selectAll("g."+_r.headerGroupClassName).data(a,Cee);l.enter().append("g").classed(_r.headerGroupClassName,!0);for(var o=hn.ensureSingle(i,"g",_r.dropdownButtonGroupClassName,function(h){h.style("pointer-events","all")}),s=0;s{"use strict";var zee=kd();bD.exports={moduleType:"component",name:zee.name,layoutAttributes:P2(),supplyLayoutDefaults:iD(),draw:gD()}});var yc=Z((dce,_D)=>{"use strict";_D.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var F2=Z((pce,MD)=>{"use strict";var wD=ma(),Nee=qv(),Fee=Gt().extendDeepAll,Iee=pi().overrideAll,Hee=Ku(),TD=ct().templatedArray,Bo=yc(),Oee=TD("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});MD.exports=Iee(TD("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:Oee,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:Fee(Nee({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:Hee.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:wD({})},font:wD({}),activebgcolor:{valType:"color",dflt:Bo.gripBgActiveColor},bgcolor:{valType:"color",dflt:Bo.railBgColor},bordercolor:{valType:"color",dflt:Bo.railBorderColor},borderwidth:{valType:"number",min:0,dflt:Bo.railBorderWidth},ticklen:{valType:"number",min:0,dflt:Bo.tickLength},tickcolor:{valType:"color",dflt:Bo.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:Bo.minorTickLength}}),"arraydraw","from-root")});var CD=Z((mce,SD)=>{"use strict";var _u=Ie(),AD=Jn(),kD=F2(),Bee=yc(),Yee=Bee.name,Uee=kD.steps;SD.exports=function(r,t){AD(r,t,{name:Yee,handleItemDefaults:Vee})};function Vee(e,r,t){function a(v,h){return _u.coerce(e,r,kD,v,h)}for(var n=AD(e,r,{name:"steps",handleItemDefaults:Gee}),i=0,l=0;l{"use strict";var li=Ir(),qd=Ft(),El=Er(),oi=at(),dn=Ie(),Wee=dn.strTranslate,gc=Ta(),Zee=ct().arrayEditor,Dr=yc(),O2=Pa(),DD=O2.LINE_SPACING,I2=O2.FROM_TL,H2=O2.FROM_BR;FD.exports=function(r){var t=r._context.staticPlot,a=r._fullLayout,n=Xee(a,r),i=a._infolayer.selectAll("g."+Dr.containerClassName).data(n.length>0?[0]:[]);i.enter().append("g").classed(Dr.containerClassName,!0).style("cursor",t?null:"ew-resize");function l(f){f._commandObserver&&(f._commandObserver.remove(),delete f._commandObserver),qd.autoMargin(r,ED(f))}if(i.exit().each(function(){li.select(this).selectAll("g."+Dr.groupClassName).each(l)}).remove(),n.length!==0){var o=i.selectAll("g."+Dr.groupClassName).data(n,Jee);o.enter().append("g").classed(Dr.groupClassName,!0),o.exit().each(l).remove();for(var s=0;s0&&(o=o.transition().duration(r.transition.duration).ease(r.transition.easing)),o.attr("transform",Wee(l-Dr.gripWidth*.5,r._dims.currentValueTotalHeight))}}function B2(e,r){var t=e._dims;return t.inputAreaStart+Dr.stepInset+(t.inputAreaLength-2*Dr.stepInset)*Math.min(1,Math.max(0,r))}function qD(e,r){var t=e._dims;return Math.min(1,Math.max(0,(r-Dr.stepInset-t.inputAreaStart)/(t.inputAreaLength-2*Dr.stepInset-2*t.inputAreaStart)))}function tre(e,r,t){var a=t._dims,n=dn.ensureSingle(e,"rect",Dr.railTouchRectClass,function(i){i.call(zD,r,e,t).style("pointer-events","all")});n.attr({width:a.inputAreaLength,height:Math.max(a.inputAreaWidth,Dr.tickOffset+t.ticklen+a.labelHeight)}).call(El.fill,t.bgcolor).attr("opacity",0),oi.setTranslate(n,0,a.currentValueTotalHeight)}function are(e,r){var t=r._dims,a=t.inputAreaLength-Dr.railInset*2,n=dn.ensureSingle(e,"rect",Dr.railRectClass);n.attr({width:a,height:Dr.railWidth,rx:Dr.railRadius,ry:Dr.railRadius,"shape-rendering":"crispEdges"}).call(El.stroke,r.bordercolor).call(El.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px"),oi.setTranslate(n,Dr.railInset,(t.inputAreaWidth-Dr.railWidth)*.5+t.currentValueTotalHeight)}});var OD=Z((gce,HD)=>{"use strict";var nre=yc();HD.exports={moduleType:"component",name:nre.name,layoutAttributes:F2(),supplyLayoutDefaults:CD(),draw:ID()}});var Ed=Z((bce,YD)=>{"use strict";var BD=hi();YD.exports={bgcolor:{valType:"color",dflt:BD.background,editType:"plot"},bordercolor:{valType:"color",dflt:BD.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var Y2=Z((xce,UD)=>{"use strict";UD.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var Pd=Z((_ce,VD)=>{"use strict";VD.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var ZD=Z(zd=>{"use strict";var ire=Zt(),lre=Ta(),GD=Pd(),ore=Pa().LINE_SPACING,Rd=GD.name;function WD(e){var r=e&&e[Rd];return r&&r.visible}zd.isVisible=WD;zd.makeData=function(e){for(var r=ire.list({_fullLayout:e},"x",!0),t=e.margin,a=[],n=0;n{"use strict";var Nd=Ie(),XD=ct(),JD=Zt(),sre=Ed(),ure=Y2();KD.exports=function(r,t,a){var n=r[a],i=t[a];if(!(n.rangeslider||t._requestRangeslider[i._id]))return;Nd.isPlainObject(n.rangeslider)||(n.rangeslider={});var l=n.rangeslider,o=XD.newContainer(i,"rangeslider");function s(M,C){return Nd.coerce(l,o,sre,M,C)}var u,f;function v(M,C){return Nd.coerce(u,f,ure,M,C)}var h=s("visible");if(h){s("bgcolor",t.plot_bgcolor),s("bordercolor"),s("borderwidth"),s("thickness"),s("autorange",!i.isValidRange(l.range)),s("range");var d=t._subplots;if(d)for(var m=d.cartesian.filter(function(M){return M.substr(0,M.indexOf("y"))===JD.name2id(a)}).map(function(M){return M.substr(M.indexOf("y"),M.length)}),y=Nd.simpleMap(m,JD.id2name),g=0;g{"use strict";var fre=Zt().list,cre=pf().getAutoRange,vre=Pd();$D.exports=function(r){for(var t=fre(r,"x",!0),a=0;a{"use strict";var Fd=Ir(),hre=br(),dre=Ft(),qt=Ie(),Id=qt.strTranslate,rE=at(),Pl=Er(),pre=hf(),mre=wd(),U2=Zt(),yre=Qn(),gre=_l(),Fr=Pd();tE.exports=function(e){for(var r=e._fullLayout,t=r._rangeSliderData,a=0;a=O.max)X=z[Y+1];else if(J=O.pmax)X=z[Y+1];else if(J0?e.touches[0].clientX:0}function bre(e,r,t,a){if(r._context.staticPlot)return;var n=e.select("rect."+Fr.slideBoxClassName).node(),i=e.select("rect."+Fr.grabAreaMinClassName).node(),l=e.select("rect."+Fr.grabAreaMaxClassName).node();function o(){var s=Fd.event,u=s.target,f=eE(s),v=f-e.node().getBoundingClientRect().left,h=a.d2p(t._rl[0]),d=a.d2p(t._rl[1]),m=yre.coverSlip();this.addEventListener("touchmove",y),this.addEventListener("touchend",g),m.addEventListener("mousemove",y),m.addEventListener("mouseup",g);function y(_){var w=eE(_),T=+w-f,b,M,C;switch(u){case n:if(C="ew-resize",h+T>t._length||d+T<0)return;b=h+T,M=d+T;break;case i:if(C="col-resize",h+T>t._length)return;b=h+T,M=d;break;case l:if(C="col-resize",d+T<0)return;b=h,M=d+T;break;default:C="ew-resize",b=v,M=v+T;break}if(M{"use strict";var Lre=Ie(),qre=Ed(),Dre=Y2(),V2=ZD();nE.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:Lre.extendFlat({},qre,{yaxis:Dre})}}},layoutAttributes:Ed(),handleDefaults:QD(),calcAutorange:jD(),draw:aE(),isVisible:V2.isVisible,makeData:V2.makeData,autoMarginOpts:V2.autoMarginOpts}});var Hd=Z((Sce,oE)=>{"use strict";var Ere=ma(),lE=hi(),Pre=ct().templatedArray,Rre=Pre("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});oE.exports={visible:{valType:"boolean",editType:"plot"},buttons:Rre,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:Ere({editType:"plot"}),bgcolor:{valType:"color",dflt:lE.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:lE.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var G2=Z((Cce,sE)=>{"use strict";sE.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var cE=Z((Lce,fE)=>{"use strict";var Od=Ie(),zre=Er(),Nre=ct(),Fre=Jn(),uE=Hd(),W2=G2();fE.exports=function(r,t,a,n,i){var l=r.rangeselector||{},o=Nre.newContainer(t,"rangeselector");function s(d,m){return Od.coerce(l,o,uE,d,m)}var u=Fre(l,o,{name:"buttons",handleItemDefaults:Ire,calendar:i}),f=s("visible",u.length>0);if(f){var v=Hre(t,a,n);s("x",v[0]),s("y",v[1]),Od.noneOrAll(r,t,["x","y"]),s("xanchor"),s("yanchor"),Od.coerceFont(s,"font",a.font);var h=s("bgcolor");s("activecolor",zre.contrast(h,W2.lightAmount,W2.darkAmount)),s("bordercolor"),s("borderwidth")}};function Ire(e,r,t,a){var n=a.calendar;function i(s,u){return Od.coerce(e,r,uE.buttons,s,u)}var l=i("visible");if(l){var o=i("step");o!=="all"&&(n&&n!=="gregorian"&&(o==="month"||o==="year")?r.stepmode="backward":i("stepmode"),i("count")),i("label")}}function Hre(e,r,t){for(var a=t.filter(function(o){return r[o].anchor===e._id}),n=0,i=0;i{"use strict";var Ore=U1(),Bre=Ie().titleCase;vE.exports=function(r,t){var a=r._name,n={};if(t.step==="all")n[a+".autorange"]=!0;else{var i=Yre(r,t);n[a+".range[0]"]=i[0],n[a+".range[1]"]=i[1]}return n};function Yre(e,r){var t=e.range,a=new Date(e.r2l(t[1])),n=r.step,i=Ore["utc"+Bre(n)],l=r.count,o;switch(r.stepmode){case"backward":o=e.l2r(+i.offset(a,-l));break;case"todate":var s=i.offset(a,-l);o=e.l2r(+i.ceil(s));break}var u=t[1];return[o,u]}});var _E=Z((Dce,xE)=>{"use strict";var Yd=Ir(),Ure=br(),Vre=Ft(),dE=Er(),bE=at(),Ji=Ie(),pE=Ji.strTranslate,Bd=Ta(),Gre=Zt(),J2=Pa(),mE=J2.LINE_SPACING,yE=J2.FROM_TL,gE=J2.FROM_BR,X2=G2(),Wre=hE();xE.exports=function(r){var t=r._fullLayout,a=t._infolayer.selectAll(".rangeselector").data(Zre(r),Xre);a.enter().append("g").classed("rangeselector",!0),a.exit().remove(),a.style({cursor:"pointer","pointer-events":"all"}),a.each(function(n){var i=Yd.select(this),l=n,o=l.rangeselector,s=i.selectAll("g.button").data(Ji.filterVisible(o.buttons));s.enter().append("g").classed("button",!0),s.exit().remove(),s.each(function(u){var f=Yd.select(this),v=Wre(l,u);u._isActive=Jre(l,u,v),f.call(Z2,o,u),f.call(Qre,o,u,r),f.on("click",function(){r._dragged||Ure.call("_guiRelayout",r,v)}),f.on("mouseover",function(){u._isHovered=!0,f.call(Z2,o,u)}),f.on("mouseout",function(){u._isHovered=!1,f.call(Z2,o,u)})}),jre(r,s,o,l._name,i)})};function Zre(e){for(var r=Gre.list(e,"x",!0),t=[],a=0;a{"use strict";wE.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:Hd()}}},layoutAttributes:Hd(),handleDefaults:cE(),draw:_E()}});var Ud=Z(K2=>{"use strict";var ME=Gt().extendFlat;K2.attributes=function(e,r){e=e||{},r=r||{};var t={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},a=e.name?e.name+" ":"",n=e.trace?"trace ":"subplot ",i=r.description?" "+r.description:"",l={x:ME({},t,{}),y:ME({},t,{}),editType:e.editType};return e.noGridCell||(l.row={valType:"integer",min:0,dflt:0,editType:e.editType},l.column={valType:"integer",min:0,dflt:0,editType:e.editType}),l};K2.defaults=function(e,r,t,a){var n=a&&a.x||[0,1],i=a&&a.y||[0,1],l=r.grid;if(l){var o=t("domain.column");o!==void 0&&(o{"use strict";var ete=Ie(),rte=vs().counter,tte=Ud().attributes,AE=ya().idRegex,ate=ct(),Q2={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[rte("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[AE.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[AE.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:tte({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function Vd(e,r,t){var a=r[t+"axes"],n=Object.keys((e._splomAxes||{})[t]||{});if(Array.isArray(a))return a;if(n.length)return n}function nte(e,r){var t=e.grid||{},a=Vd(r,t,"x"),n=Vd(r,t,"y");if(!e.grid&&!a&&!n)return;var i=Array.isArray(t.subplots)&&Array.isArray(t.subplots[0]),l=Array.isArray(a),o=Array.isArray(n),s=l&&a!==t.xaxes&&o&&n!==t.yaxes,u,f;i?(u=t.subplots.length,f=t.subplots[0].length):(o&&(u=n.length),l&&(f=a.length));var v=ate.newContainer(r,"grid");function h(C,k){return ete.coerce(t,v,Q2,C,k)}var d=h("rows",u),m=h("columns",f);if(!(d*m>1)){delete r.grid;return}if(!i&&!l&&!o){var y=h("pattern")==="independent";y&&(i=!0)}v._hasSubplotGrid=i;var g=h("roworder"),_=g==="top to bottom",w=i?.2:.1,T=i?.3:.1,b,M;s&&r._splomGridDflt&&(b=r._splomGridDflt.xside,M=r._splomGridDflt.yside),v._domains={x:kE("x",h,w,b,m),y:kE("y",h,T,M,d,_)}}function kE(e,r,t,a,n,i){var l=r(e+"gap",t),o=r("domain."+e);r(e+"side",a);for(var s=new Array(n),u=o[0],f=(o[1]-u)/(n-l),v=f*(1-l),h=0;h{"use strict";qE.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var PE=Z((Nce,EE)=>{"use strict";var DE=Hr(),lte=br(),ote=Ie(),ste=ct(),ute=$2();EE.exports=function(e,r,t,a){var n="error_"+a.axis,i=ste.newContainer(r,n),l=e[n]||{};function o(m,y){return ote.coerce(l,i,ute,m,y)}var s=l.array!==void 0||l.value!==void 0||l.type==="sqrt",u=o("visible",s);if(u!==!1){var f=o("type","array"in l?"data":"percent"),v=!0;f!=="sqrt"&&(v=o("symmetric",!((f==="data"?"arrayminus":"valueminus")in l))),f==="data"?(o("array"),o("traceref"),v||(o("arrayminus"),o("tracerefminus"))):(f==="percent"||f==="constant")&&(o("value"),v||o("valueminus"));var h="copy_"+a.inherit+"style";if(a.inherit){var d=r["error_"+a.inherit];(d||{}).visible&&o(h,!(l.color||DE(l.thickness)||DE(l.width)))}(!a.inherit||!i[h])&&(o("color",t),o("thickness"),o("width",lte.traceIs(r,"gl3d")?0:4))}}});var j2=Z((Fce,zE)=>{"use strict";zE.exports=function(r){var t=r.type,a=r.symmetric;if(t==="data"){var n=r.array||[];if(a)return function(u,f){var v=+n[f];return[v,v]};var i=r.arrayminus||[];return function(u,f){var v=+n[f],h=+i[f];return!isNaN(v)||!isNaN(h)?[h||0,v||0]:[NaN,NaN]}}else{var l=RE(t,r.value),o=RE(t,r.valueminus);return a||r.valueminus===void 0?function(u){var f=l(u);return[f,f]}:function(u){return[o(u),l(u)]}}};function RE(e,r){if(e==="percent")return function(t){return Math.abs(t*r/100)};if(e==="constant")return function(){return Math.abs(r)};if(e==="sqrt")return function(t){return Math.sqrt(Math.abs(t))}}});var IE=Z((Ice,FE)=>{"use strict";var e3=Hr(),fte=br(),r3=dt(),cte=Ie(),vte=j2();FE.exports=function(r){for(var t=r.calcdata,a=0;a{"use strict";var HE=Ir(),Rl=Hr(),hte=at(),dte=ln();OE.exports=function(r,t,a,n){var i,l=a.xaxis,o=a.yaxis,s=n&&n.duration>0,u=r._context.staticPlot;t.each(function(f){var v=f[0].trace,h=v.error_x||{},d=v.error_y||{},m;v.ids&&(m=function(w){return w.id});var y=dte.hasMarkers(v)&&v.marker.maxdisplayed>0;!d.visible&&!h.visible&&(f=[]);var g=HE.select(this).selectAll("g.errorbar").data(f,m);if(g.exit().remove(),!!f.length){h.visible||g.selectAll("path.xerror").remove(),d.visible||g.selectAll("path.yerror").remove(),g.style("opacity",1);var _=g.enter().append("g").classed("errorbar",!0);s&&_.style("opacity",0).transition().duration(n.duration).style("opacity",1),hte.setClipUrl(g,a.layerClipId,r),g.each(function(w){var T=HE.select(this),b=pte(w,l,o);if(!(y&&!w.vis)){var M,C=T.select("path.yerror");if(d.visible&&Rl(b.x)&&Rl(b.yh)&&Rl(b.ys)){var k=d.width;M="M"+(b.x-k)+","+b.yh+"h"+2*k+"m-"+k+",0V"+b.ys,b.noYS||(M+="m-"+k+",0h"+2*k),i=!C.size(),i?C=T.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("yerror",!0):s&&(C=C.transition().duration(n.duration).ease(n.easing)),C.attr("d",M)}else C.remove();var q=T.select("path.xerror");if(h.visible&&Rl(b.y)&&Rl(b.xh)&&Rl(b.xs)){var D=(h.copy_ystyle?d:h).width;M="M"+b.xh+","+(b.y-D)+"v"+2*D+"m0,-"+D+"H"+b.xs,b.noXS||(M+="m0,-"+D+"v"+2*D),i=!q.size(),i?q=T.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("xerror",!0):s&&(q=q.transition().duration(n.duration).ease(n.easing)),q.attr("d",M)}else q.remove()}})}})};function pte(e,r,t){var a={x:r.c2p(e.x),y:t.c2p(e.y)};return e.yh!==void 0&&(a.yh=t.c2p(e.yh),a.ys=t.c2p(e.ys),Rl(a.ys)||(a.noYS=!0,a.ys=t.c2p(e.ys,!0))),e.xh!==void 0&&(a.xh=r.c2p(e.xh),a.xs=r.c2p(e.xs),Rl(a.xs)||(a.noXS=!0,a.xs=r.c2p(e.xs,!0))),a}});var VE=Z((Oce,UE)=>{"use strict";var mte=Ir(),YE=Er();UE.exports=function(r){r.each(function(t){var a=t[0].trace,n=a.error_y||{},i=a.error_x||{},l=mte.select(this);l.selectAll("path.yerror").style("stroke-width",n.thickness+"px").call(YE.stroke,n.color),i.copy_ystyle&&(i=n),l.selectAll("path.xerror").style("stroke-width",i.thickness+"px").call(YE.stroke,i.color)})}});var ZE=Z((Bce,WE)=>{"use strict";var bc=Ie(),GE=pi().overrideAll,xc=$2(),Yo={error_x:bc.extendFlat({},xc),error_y:bc.extendFlat({},xc)};delete Yo.error_x.copy_zstyle;delete Yo.error_y.copy_zstyle;delete Yo.error_y.copy_ystyle;var _c={error_x:bc.extendFlat({},xc),error_y:bc.extendFlat({},xc),error_z:bc.extendFlat({},xc)};delete _c.error_x.copy_ystyle;delete _c.error_y.copy_ystyle;delete _c.error_z.copy_ystyle;delete _c.error_z.copy_zstyle;WE.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Yo,bar:Yo,histogram:Yo,scatter3d:GE(_c,"calc","nested"),scattergl:GE(Yo,"calc","nested")}},supplyDefaults:PE(),calc:IE(),makeComputeError:j2(),plot:BE(),style:VE(),hoverInfo:yte};function yte(e,r,t){(r.error_y||{}).visible&&(t.yerr=e.yh-e.y,r.error_y.symmetric||(t.yerrneg=e.y-e.ys)),(r.error_x||{}).visible&&(t.xerr=e.xh-e.x,r.error_x.symmetric||(t.xerrneg=e.x-e.xs))}});var JE=Z((Yce,XE)=>{"use strict";XE.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var tP=Z((Uce,rP)=>{"use strict";var zl=Ir(),t3=xn(),Wd=Ft(),KE=br(),Ki=dt(),Gd=Qn(),In=Ie(),ui=In.strTranslate,eP=Gt().extendFlat,a3=_l(),si=at(),n3=Er(),gte=hf(),bte=Ta(),xte=Mn().flipScale,_te=h2(),wte=d2(),Tte=Xn(),i3=Pa(),QE=i3.LINE_SPACING,$E=i3.FROM_TL,jE=i3.FROM_BR,gt=JE().cn;function Mte(e){var r=e._fullLayout,t=r._infolayer.selectAll("g."+gt.colorbar).data(Ate(e),function(a){return a._id});t.enter().append("g").attr("class",function(a){return a._id}).classed(gt.colorbar,!0),t.each(function(a){var n=zl.select(this);In.ensureSingle(n,"rect",gt.cbbg),In.ensureSingle(n,"g",gt.cbfills),In.ensureSingle(n,"g",gt.cblines),In.ensureSingle(n,"g",gt.cbaxis,function(l){l.classed(gt.crisp,!0)}),In.ensureSingle(n,"g",gt.cbtitleunshift,function(l){l.append("g").classed(gt.cbtitle,!0)}),In.ensureSingle(n,"rect",gt.cboutline);var i=kte(n,a,e);i&&i.then&&(e._promises||[]).push(i),e._context.edits.colorbarPosition&&Ste(n,a,e)}),t.exit().each(function(a){Wd.autoMargin(e,a._id)}).remove(),t.order()}function Ate(e){var r=e._fullLayout,t=e.calcdata,a=[],n,i,l,o;function s(T){return eP(T,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function u(){typeof o.calc=="function"?o.calc(e,l,n):(n._fillgradient=i.reversescale?xte(i.colorscale):i.colorscale,n._zrange=[i[o.min],i[o.max]])}for(var f=0;f1){var $=Math.pow(10,Math.floor(Math.log(B)/Math.LN10));se*=$*In.roundUp(B/$,[2,5,10]),(Math.abs(F.start)/F.size+1e-6)%1<2e-6&&(ce.tick0=0)}ce.dtick=se}ce.domain=a?[re+m/b.h,re+V-m/b.h]:[re+d/b.w,re+V-d/b.w],ce.setScale(),e.attr("transform",ui(Math.round(b.l),Math.round(b.t)));var U=e.select("."+gt.cbtitleunshift).attr("transform",ui(-Math.round(b.l),-Math.round(b.t))),ye=ce.ticklabelposition,we=ce.title.font.size,pe=e.select("."+gt.cbaxis),Re,Fe=0,Ee=0;function Ne(Ye,ie){var be={propContainer:ce,propName:r._propPrefix+"title.text",traceIndex:r._traceIndex,_meta:r._meta,placeholder:T._dfltTitle.colorbar,containerGroup:e.select("."+gt.cbtitle)},Ke=Ye.charAt(0)==="h"?Ye.substr(1):"h"+Ye;e.selectAll("."+Ke+",."+Ke+"-math-group").remove(),gte.draw(t,Ye,eP(be,ie||{}))}function Be(){if(a&&_e||!a&&!_e){var Ye,ie;q==="top"&&(Ye=d+b.l+Q*y,ie=m+b.t+K*(1-re-V)+3+we*.75),q==="bottom"&&(Ye=d+b.l+Q*y,ie=m+b.t+K*(1-re)-3-we*.25),q==="right"&&(ie=m+b.t+K*g+3+we*.75,Ye=d+b.l+Q*re),Ne(ce._id+"title",{attributes:{x:Ye,y:ie,"text-anchor":a?"start":"middle"}})}}function Ge(){if(a&&!_e||!a&&_e){var Ye=ce.position||0,ie=ce._offset+ce._length/2,be,Ke;if(q==="right")Ke=ie,be=b.l+Q*Ye+10+we*(ce.showticklabels?1:.5);else if(be=ie,q==="bottom"&&(Ke=b.t+K*Ye+10+(ye.indexOf("inside")===-1?ce.tickfont.size:0)+(ce.ticks!=="inside"&&r.ticklen||0)),q==="top"){var hr=k.text.split("
").length;Ke=b.t+K*Ye+10-X-QE*we*hr}Ne((a?"h":"v")+ce._id+"title",{avoid:{selection:zl.select(t).selectAll("g."+ce._id+"tick"),side:q,offsetTop:a?0:b.t,offsetLeft:a?b.l:0,maxShift:a?T.width:T.height},attributes:{x:be,y:Ke,"text-anchor":"middle"},transform:{rotate:a?-90:0,offset:0}})}}function qe(){if(!a&&!_e||a&&_e){var Ye=e.select("."+gt.cbtitle),ie=Ye.select("text"),be=[-s/2,s/2],Ke=Ye.select(".h"+ce._id+"title-math-group").node(),hr=15.6;ie.node()&&(hr=parseInt(ie.node().style.fontSize,10)*QE);var Pe;if(Ke?(Pe=si.bBox(Ke),Ee=Pe.width,Fe=Pe.height,Fe>hr&&(be[1]-=(Fe-hr)/2)):ie.node()&&!ie.classed(gt.jsPlaceholder)&&(Pe=si.bBox(ie.node()),Ee=Pe.width,Fe=Pe.height),a){if(Fe){if(Fe+=5,q==="top")ce.domain[1]-=Fe/b.h,be[1]*=-1;else{ce.domain[0]+=Fe/b.h;var Me=bte.lineCount(ie);be[1]+=(1-Me)*hr}Ye.attr("transform",ui(be[0],be[1])),ce.setScale()}}else Ee&&(q==="right"&&(ce.domain[0]+=(Ee+we/2)/b.w),Ye.attr("transform",ui(be[0],be[1])),ce.setScale())}e.selectAll("."+gt.cbfills+",."+gt.cblines).attr("transform",a?ui(0,Math.round(b.h*(1-ce.domain[1]))):ui(Math.round(b.w*ce.domain[0]),0)),pe.attr("transform",a?ui(0,Math.round(-b.t)):ui(Math.round(-b.l),0));var Se=e.select("."+gt.cbfills).selectAll("rect."+gt.cbfill).attr("style","").data(H);Se.enter().append("rect").classed(gt.cbfill,!0).attr("style",""),Se.exit().remove();var Oe=D.map(ce.c2p).map(Math.round).sort(function(tr,Qe){return tr-Qe});Se.each(function(tr,Qe){var ze=[Qe===0?D[0]:(H[Qe]+H[Qe-1])/2,Qe===H.length-1?D[1]:(H[Qe]+H[Qe+1])/2].map(ce.c2p).map(Math.round);a&&(ze[1]=In.constrain(ze[1]+(ze[1]>ze[0])?1:-1,Oe[0],Oe[1]));var ae=zl.select(this).attr(a?"x":"y",ne).attr(a?"y":"x",zl.min(ze)).attr(a?"width":"height",Math.max(X,2)).attr(a?"height":"width",Math.max(zl.max(ze)-zl.min(ze),2));if(r._fillgradient)si.gradient(ae,t,r._id,a?"vertical":"horizontalreversed",r._fillgradient,"fill");else{var le=z(tr).replace("e-","");ae.attr("fill",t3(le).toHexString())}});var Je=e.select("."+gt.cblines).selectAll("path."+gt.cbline).data(C.color&&C.width?J:[]);Je.enter().append("path").classed(gt.cbline,!0),Je.exit().remove(),Je.each(function(tr){var Qe=ne,ze=Math.round(ce.c2p(tr))+C.width/2%1;zl.select(this).attr("d","M"+(a?Qe+","+ze:ze+","+Qe)+(a?"h":"v")+X).call(si.lineGroupStyle,C.width,R(tr),C.dash)}),pe.selectAll("g."+ce._id+"tick,path").remove();var We=ne+X+(s||0)/2-(r.ticks==="outside"?1:0),Ze=Ki.calcTicks(ce),lr=Ki.getTickSigns(ce)[2];return Ki.drawTicks(t,ce,{vals:ce.ticks==="inside"?Ki.clipEnds(ce,Ze):Ze,layer:pe,path:Ki.makeTickPath(ce,We,lr),transFn:Ki.makeTransTickFn(ce)}),Ki.drawLabels(t,ce,{vals:Ze,layer:pe,transFn:Ki.makeTransTickLabelFn(ce),labelFns:Ki.makeLabelFns(ce,We)})}function He(){var Ye,ie=X+s/2;ye.indexOf("inside")===-1&&(Ye=si.bBox(pe.node()),ie+=a?Ye.width:Ye.height),Re=U.select("text");var be=0,Ke=a&&q==="top",hr=!a&&q==="right",Pe=0;if(Re.node()&&!Re.classed(gt.jsPlaceholder)){var Me,Se=U.select(".h"+ce._id+"title-math-group").node();Se&&(a&&_e||!a&&!_e)?(Ye=si.bBox(Se),be=Ye.width,Me=Ye.height):(Ye=si.bBox(U.node()),be=Ye.right-b.l-(a?ne:Ce),Me=Ye.bottom-b.t-(a?Ce:ne),!a&&q==="top"&&(ie+=Ye.height,Pe=Ye.height)),hr&&(Re.attr("transform",ui(be/2+we/2,0)),be*=2),ie=Math.max(ie,a?be:Me)}var Oe=(a?d:m)*2+ie+u+s/2,Je=0;!a&&k.text&&h==="bottom"&&g<=0&&(Je=Oe/2,Oe+=Je,Pe+=Je),T._hColorbarMoveTitle=Je,T._hColorbarMoveCBTitle=Pe;var We=u+s,Ze=(a?ne:Ce)-We/2-(a?d:0),lr=(a?Ce:ne)-(a?O:m+Pe-Je);e.select("."+gt.cbbg).attr("x",Ze).attr("y",lr).attr(a?"width":"height",Math.max(Oe-Je,2)).attr(a?"height":"width",Math.max(O+We,2)).call(n3.fill,f).call(n3.stroke,r.bordercolor).style("stroke-width",u);var tr=hr?Math.max(be-10,0):0;e.selectAll("."+gt.cboutline).attr("x",(a?ne:Ce+d)+tr).attr("y",(a?Ce+m-O:ne)+(Ke?Fe:0)).attr(a?"width":"height",Math.max(X,2)).attr(a?"height":"width",Math.max(O-(a?2*m+Fe:2*d+tr),2)).call(n3.stroke,r.outlinecolor).style({fill:"none","stroke-width":s});var Qe=a?me*Oe:0,ze=a?0:(1-de)*Oe-Pe;if(Qe=w?b.l-Qe:-Qe,ze=_?b.t-ze:-ze,e.attr("transform",ui(Qe,ze)),!a&&(u||t3(f).getAlpha()&&!t3.equals(T.paper_bgcolor,f))){var ae=pe.selectAll("text"),le=ae[0].length,Le=e.select("."+gt.cbbg).node(),De=si.bBox(Le),ar=si.getTranslate(e),fr=2;ae.each(function(La,sa){var ua=0,vr=le-1;if(sa===ua||sa===vr){var lt=si.bBox(this),Xr=si.getTranslate(this),ft;if(sa===vr){var kt=lt.right+Xr.x,bt=De.right+ar.x+Ce-u-fr+y;ft=bt-kt,ft>0&&(ft=0)}else if(sa===ua){var Qr=lt.left+Xr.x,fa=De.left+ar.x+Ce+u+fr;ft=fa-Qr,ft<0&&(ft=0)}ft&&(le<3?this.setAttribute("transform","translate("+ft+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var sr={},Mr=$E[v],Br=jE[v],$r=$E[h],it=jE[h],_t=Oe-X;a?(i==="pixels"?(sr.y=g,sr.t=O*$r,sr.b=O*it):(sr.t=sr.b=0,sr.yt=g+n*$r,sr.yb=g-n*it),o==="pixels"?(sr.x=y,sr.l=Oe*Mr,sr.r=Oe*Br):(sr.l=_t*Mr,sr.r=_t*Br,sr.xl=y-l*Mr,sr.xr=y+l*Br)):(i==="pixels"?(sr.x=y,sr.l=O*Mr,sr.r=O*Br):(sr.l=sr.r=0,sr.xl=y+n*Mr,sr.xr=y-n*Br),o==="pixels"?(sr.y=1-g,sr.t=Oe*$r,sr.b=Oe*it):(sr.t=_t*$r,sr.b=_t*it,sr.yt=g-l*$r,sr.yb=g+l*it));var yt=r.y<.5?"b":"t",Dt=r.x<.5?"l":"r";t._fullLayout._reservedMargin[r._id]={};var Kt={r:T.width-Ze-Qe,l:Ze+sr.r,b:T.height-lr-ze,t:lr+sr.b};w&&_?Wd.autoMargin(t,r._id,sr):w?t._fullLayout._reservedMargin[r._id][yt]=Kt[yt]:_||a?t._fullLayout._reservedMargin[r._id][Dt]=Kt[Dt]:t._fullLayout._reservedMargin[r._id][yt]=Kt[yt]}return In.syncOrAsync([Wd.previousPromises,Be,qe,Ge,Wd.previousPromises,He],t)}function Ste(e,r,t){var a=r.orientation==="v",n=t._fullLayout,i=n._size,l,o,s;Gd.init({element:e.node(),gd:t,prepFn:function(){l=e.attr("transform"),a3(e)},moveFn:function(u,f){e.attr("transform",l+ui(u,f)),o=Gd.align((a?r._uFrac:r._vFrac)+u/i.w,a?r._thickFrac:r._lenFrac,0,1,r.xanchor),s=Gd.align((a?r._vFrac:1-r._uFrac)-f/i.h,a?r._lenFrac:r._thickFrac,0,1,r.yanchor);var v=Gd.getCursor(o,s,r.xanchor,r.yanchor);a3(e,v)},doneFn:function(){if(a3(e),o!==void 0&&s!==void 0){var u={};u[r._propPrefix+"x"]=o,u[r._propPrefix+"y"]=s,r._traceIndex!==void 0?KE.call("_guiRestyle",t,u,r._traceIndex):KE.call("_guiRelayout",t,u)}}})}function Cte(e,r,t){var a=r._levels,n=[],i=[],l,o,s=a.end+a.size/100,u=a.size,f=1.001*t[0]-.001*t[1],v=1.001*t[1]-.001*t[0];for(o=0;o<1e5&&(l=a.start+o*u,!(u>0?l>=s:l<=s));o++)l>f&&l0?l>=s:l<=s));o++)l>t[0]&&l{"use strict";aP.exports={moduleType:"component",name:"colorbar",attributes:i0(),supplyDefaults:lm(),draw:tP().draw,hasColorbar:Jp()}});var lP=Z((Gce,iP)=>{"use strict";iP.exports={moduleType:"component",name:"legend",layoutAttributes:ay(),supplyLayoutDefaults:ly(),draw:gy(),style:dy()}});var sP=Z((Wce,oP)=>{"use strict";oP.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var fP=Z((Zce,uP)=>{"use strict";uP.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var o3=Z((Xce,dP)=>{"use strict";var qte=br(),hP=Ie(),l3=hP.extendFlat,cP=hP.extendDeep;function vP(e){var r;switch(e){case"themes__thumb":r={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":r={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:r={}}return r}function Dte(e){var r=["xaxis","yaxis","zaxis"];return r.indexOf(e.slice(0,5))>-1}dP.exports=function(r,t){var a,n=r.data,i=r.layout,l=cP([],n),o=cP({},i,vP(t.tileClass)),s=r._context||{};if(t.width&&(o.width=t.width),t.height&&(o.height=t.height),t.tileClass==="thumbnail"||t.tileClass==="themes__thumb"){o.annotations=[];var u=Object.keys(o);for(a=0;a{"use strict";var Ete=Gv().EventEmitter,Pte=br(),Rte=Ie(),pP=Eo(),zte=o3(),Nte=ed(),Fte=rd();function Ite(e,r){var t=new Ete,a=zte(e,{format:"png"}),n=a.gd;n.style.position="absolute",n.style.left="-5000px",document.body.appendChild(n);function i(){var o=pP.getDelay(n._fullLayout);setTimeout(function(){var s=Nte(n),u=document.createElement("canvas");u.id=Rte.randstr(),t=Fte({format:r.format,width:n._fullLayout.width,height:n._fullLayout.height,canvas:u,emitter:t,svg:s}),t.clean=function(){n&&document.body.removeChild(n)}},o)}var l=pP.getRedrawFunc(n);return Pte.call("_doPlot",n,a.data,a.layout,a.config).then(l).then(i).catch(function(o){t.emit("error",o)}),t}mP.exports=Ite});var xP=Z((Kce,bP)=>{"use strict";var gP=Eo(),Hte={getDelay:gP.getDelay,getRedrawFunc:gP.getRedrawFunc,clone:o3(),toSVG:ed(),svgToImg:rd(),toImage:yP(),downloadImage:Ng()};bP.exports=Hte});var wP=Z(Qi=>{"use strict";Qi.version=sv().version;cb();e6();var Ote=br(),wc=Qi.register=Ote.register,u3=AS(),_P=Object.keys(u3);for(Zd=0;Zd<_P.length;Zd++)wu=_P[Zd],wu.charAt(0)!=="_"&&(Qi[wu]=u3[wu]),wc({moduleType:"apiMethod",name:wu,fn:u3[wu]});var wu,Zd;wc(NL());wc([oq(),_q(),au(),Hq(),$q(),xD(),OD(),iE(),TE(),LE(),ZE(),fm(),nP(),lP(),ki(),Uy()]);wc([sP(),fP()]);window.PlotlyLocales&&Array.isArray(window.PlotlyLocales)&&(wc(window.PlotlyLocales),delete window.PlotlyLocales);Qi.Icons=rh();var Xd=ki(),s3=Ft();Qi.Plots={resize:s3.resize,graphJson:s3.graphJson,sendDataToCloud:s3.sendDataToCloud};Qi.Fx={hover:Xd.hover,unhover:Xd.unhover,loneHover:Xd.loneHover,loneUnhover:Xd.loneUnhover};Qi.Snapshot=xP();Qi.PlotSchema=Ss()});var MP=Z(($ce,TP)=>{"use strict";TP.exports=wP()});var Jd=Z((jce,AP)=>{"use strict";AP.exports={TEXTPAD:3,eventDataKeys:["value","label"]}});var Tc=Z((eve,qP)=>{"use strict";var At=Do(),kP=n0().axisHoverFormat,{hovertemplateAttrs:Bte,texttemplateAttrs:Yte,templatefallbackAttrs:SP}=to(),LP=ff(),Ute=ma(),CP=Jd(),Vte=mi().pattern,Uo=Gt().extendFlat,f3=Ute({editType:"calc",arrayOk:!0,colorEditType:"style"}),Gte=At.marker,Wte=Gte.line,Zte=Uo({},Wte.width,{dflt:0}),Xte=Uo({width:Zte,editType:"calc"},LP("marker.line")),Jte=Uo({line:Xte,editType:"calc"},LP("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:Vte,cornerradius:{valType:"any",editType:"calc"}});qP.exports={x:At.x,x0:At.x0,dx:At.dx,y:At.y,y0:At.y0,dy:At.dy,xperiod:At.xperiod,yperiod:At.yperiod,xperiod0:At.xperiod0,yperiod0:At.yperiod0,xperiodalignment:At.xperiodalignment,yperiodalignment:At.yperiodalignment,xhoverformat:kP("x"),yhoverformat:kP("y"),text:At.text,texttemplate:Yte({editType:"plot"},{keys:CP.eventDataKeys}),texttemplatefallback:SP({editType:"plot"}),hovertext:At.hovertext,hovertemplate:Bte({},{keys:CP.eventDataKeys}),hovertemplatefallback:SP(),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:Uo({},f3,{}),insidetextfont:Uo({},f3,{}),outsidetextfont:Uo({},f3,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:Uo({},At.cliponaxis,{}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc"},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc"},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc"},marker:Jte,offsetgroup:At.offsetgroup,alignmentgroup:At.alignmentgroup,selected:{marker:{opacity:At.selected.marker.opacity,color:At.selected.marker.color,editType:"style"},textfont:At.selected.textfont,editType:"style"},unselected:{marker:{opacity:At.unselected.marker.opacity,color:At.unselected.marker.color,editType:"style"},textfont:At.unselected.textfont,editType:"style"},zorder:At.zorder}});var c3=Z((rve,DP)=>{"use strict";DP.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}});var zP=Z((tve,RP)=>{"use strict";var Kte=Er(),EP=Mn().hasColorscale,PP=Ds(),Qte=Ie().coercePattern;RP.exports=function(r,t,a,n,i){var l=a("marker.color",n),o=EP(r,"marker");o&&PP(r,t,i,a,{prefix:"marker.",cLetter:"c"}),a("marker.line.color",Kte.defaultLine),EP(r,"marker.line")&&PP(r,t,i,a,{prefix:"marker.line.",cLetter:"c"}),a("marker.line.width"),a("marker.opacity"),Qte(a,"marker.pattern",l,o),a("selected.marker.color"),a("unselected.marker.color")}});var Mc=Z((ave,BP)=>{"use strict";var NP=Hr(),Tu=Ie(),FP=Er(),$te=br(),jte=Hg(),eae=Og(),rae=zP(),tae=Bg(),IP=Tc(),Kd=Tu.coerceFont;function aae(e,r,t,a){function n(u,f){return Tu.coerce(e,r,IP,u,f)}var i=jte(e,r,a,n);if(!i){r.visible=!1;return}eae(e,r,a,n),n("xhoverformat"),n("yhoverformat"),n("zorder"),n("orientation",r.x&&!r.y?"h":"v"),n("base"),n("offset"),n("width"),n("text"),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback");var l=n("textposition");OP(e,r,a,n,l,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),rae(e,r,n,t,a);var o=(r.marker.line||{}).color,s=$te.getComponentMethod("errorbars","supplyDefaults");s(e,r,o||FP.defaultLine,{axis:"y"}),s(e,r,o||FP.defaultLine,{axis:"x",inherit:"y"}),Tu.coerceSelectionMarkerOpacity(r,n)}function nae(e,r){var t,a;function n(o,s){return Tu.coerce(a._input,a,IP,o,s)}for(var i=0;i=0)return e}else if(typeof e=="string"&&(e=e.trim(),e.slice(-1)==="%"&&NP(e.slice(0,-1))&&(e=+e.slice(0,-1),e>=0)))return e+"%"}function OP(e,r,t,a,n,i){i=i||{};var l=i.moduleHasSelected!==!1,o=i.moduleHasUnselected!==!1,s=i.moduleHasConstrain!==!1,u=i.moduleHasCliponaxis!==!1,f=i.moduleHasTextangle!==!1,v=i.moduleHasInsideanchor!==!1,h=!!i.hasPathbar,d=Array.isArray(n)||n==="auto",m=d||n==="inside",y=d||n==="outside";if(m||y){var g=Kd(a,"textfont",t.font),_=Tu.extendFlat({},g),w=e.textfont&&e.textfont.color,T=!w;if(T&&delete _.color,Kd(a,"insidetextfont",_),h){var b=Tu.extendFlat({},g);T&&delete b.color,Kd(a,"pathbar.textfont",b)}y&&Kd(a,"outsidetextfont",g),l&&a("selected.textfont.color"),o&&a("unselected.textfont.color"),s&&a("constraintext"),u&&a("cliponaxis"),f&&a("textangle"),a("texttemplate"),a("texttemplatefallback")}m&&v&&a("insidetextanchor")}BP.exports={supplyDefaults:aae,crossTraceDefaults:nae,handleText:OP,validateCornerradius:HP}});var UP=Z((nve,YP)=>{"use strict";var iae=br(),lae=dt(),oae=Ie(),sae=c3(),uae=Mc().validateCornerradius;YP.exports=function(e,r,t){function a(y,g){return oae.coerce(e,r,sae,y,g)}for(var n=!1,i=!1,l=!1,o={},s=a("barmode"),u=s==="group",f=0;f0&&!o[h]&&(l=!0),o[h]=!0),v.visible&&v.type==="histogram"){var d=lae.getFromId({_fullLayout:r},v[v.orientation==="v"?"xaxis":"yaxis"]);d.type!=="category"&&(i=!0)}}if(!n){delete r.barmode;return}s!=="overlay"&&a("barnorm"),a("bargap",i&&!l?0:.2),a("bargroupgap");var m=a("barcornerradius");r.barcornerradius=uae(m)}});var v3=Z((ive,VP)=>{"use strict";var Mu=Ie();VP.exports=function(r,t){for(var a=0;a{"use strict";var GP=dt(),WP=Yg(),ZP=Mn().hasColorscale,XP=s0(),fae=v3(),cae=Wg();JP.exports=function(r,t){var a=GP.getFromId(r,t.xaxis||"x"),n=GP.getFromId(r,t.yaxis||"y"),i,l,o,s,u,f,v={msUTC:!!(t.base||t.base===0)};t.orientation==="h"?(i=a.makeCalcdata(t,"x",v),o=n.makeCalcdata(t,"y"),s=WP(t,n,"y",o),u=!!t.yperiodalignment,f="y"):(i=n.makeCalcdata(t,"y",v),o=a.makeCalcdata(t,"x"),s=WP(t,a,"x",o),u=!!t.xperiodalignment,f="x"),l=s.vals;for(var h=Math.min(l.length,i.length),d=new Array(h),m=0;m{"use strict";var vae=Ir(),hae=Ie();function dae(e,r,t){var a=e._fullLayout,n=a["_"+t+"Text_minsize"];if(n){var i=a.uniformtext.mode==="hide",l;switch(t){case"funnelarea":case"pie":case"sunburst":l="g.slice";break;case"treemap":case"icicle":l="g.slice, g.pathbar";break;default:l="g.points > g.point"}r.selectAll(l).each(function(o){var s=o.transform;if(s){s.scale=i&&s.hide?0:n/s.fontSize;var u=vae.select(this).select("text");hae.setTransormAndDisplay(u,s)}})}}function pae(e,r,t){if(t.uniformtext.mode){var a=QP(e),n=t.uniformtext.minsize,i=r.scale*r.fontSize;r.hide=i{"use strict";var yae=Hr(),gae=xn(),jP=Ie().isArrayOrTypedArray;Vo.coerceString=function(e,r,t){if(typeof r=="string"){if(r||!e.noBlank)return r}else if((typeof r=="number"||r===!0)&&!e.strict)return String(r);return t!==void 0?t:e.dflt};Vo.coerceNumber=function(e,r,t){if(yae(r)){r=+r;var a=e.min,n=e.max,i=a!==void 0&&rn;if(!i)return r}return t!==void 0?t:e.dflt};Vo.coerceColor=function(e,r,t){return gae(r).isValid()?r:t!==void 0?t:e.dflt};Vo.coerceEnumerated=function(e,r,t){return e.coerceNumber&&(r=+r),e.values.indexOf(r)!==-1?r:t!==void 0?t:e.dflt};Vo.getValue=function(e,r){var t;return jP(e)?r{"use strict";var kc=Ir(),bae=Er(),Sc=at(),eR=Ie(),rR=br(),tR=Ac().resizeText,h3=Tc(),xae=h3.textfont,_ae=h3.insidetextfont,wae=h3.outsidetextfont,xa=Qd();function Tae(e){var r=kc.select(e).selectAll('g[class^="barlayer"]').selectAll("g.trace");tR(e,r,"bar");var t=r.size(),a=e._fullLayout;r.style("opacity",function(n){return n[0].trace.opacity}).each(function(n){(a.barmode==="stack"&&t>1||a.bargap===0&&a.bargroupgap===0&&!n[0].trace.marker.line.width)&&kc.select(this).attr("shape-rendering","crispEdges")}),r.selectAll("g.points").each(function(n){var i=kc.select(this),l=n[0].trace;aR(i,l,e)}),rR.getComponentMethod("errorbars","style")(r)}function aR(e,r,t){Sc.pointStyle(e.selectAll("path"),r,t),nR(e,r,t)}function nR(e,r,t){e.selectAll("text").each(function(a){var n=kc.select(this),i=eR.ensureUniformFontSize(t,iR(n,a,r,t));Sc.font(n,i)})}function Mae(e,r,t){var a=r[0].trace;a.selectedpoints?Aae(t,a,e):(aR(t,a,e),rR.getComponentMethod("errorbars","style")(t))}function Aae(e,r,t){Sc.selectedPointStyle(e.selectAll("path"),r),kae(e.selectAll("text"),r,t)}function kae(e,r,t){e.each(function(a){var n=kc.select(this),i;if(a.selected){i=eR.ensureUniformFontSize(t,iR(n,a,r,t));var l=r.selected.textfont&&r.selected.textfont.color;l&&(i.color=l),Sc.font(n,i)}else Sc.selectedTextStyle(n,r)})}function iR(e,r,t,a){var n=a._fullLayout.font,i=t.textfont;if(e.classed("bartext-inside")){var l=uR(r,t);i=oR(t,r.i,n,l)}else e.classed("bartext-outside")&&(i=sR(t,r.i,n));return i}function lR(e,r,t){return d3(xae,e.textfont,r,t)}function oR(e,r,t,a){var n=lR(e,r,t),i=e._input.textfont===void 0||e._input.textfont.color===void 0||Array.isArray(e.textfont.color)&&e.textfont.color[r]===void 0;return i&&(n={color:bae.contrast(a),family:n.family,size:n.size,weight:n.weight,style:n.style,variant:n.variant,textcase:n.textcase,lineposition:n.lineposition,shadow:n.shadow}),d3(_ae,e.insidetextfont,r,n)}function sR(e,r,t){var a=lR(e,r,t);return d3(wae,e.outsidetextfont,r,a)}function d3(e,r,t,a){r=r||{};var n=xa.getValue(r.family,t),i=xa.getValue(r.size,t),l=xa.getValue(r.color,t),o=xa.getValue(r.weight,t),s=xa.getValue(r.style,t),u=xa.getValue(r.variant,t),f=xa.getValue(r.textcase,t),v=xa.getValue(r.lineposition,t),h=xa.getValue(r.shadow,t);return{family:xa.coerceString(e.family,n,a.family),size:xa.coerceNumber(e.size,i,a.size),color:xa.coerceColor(e.color,l,a.color),weight:xa.coerceString(e.weight,o,a.weight),style:xa.coerceString(e.style,s,a.style),variant:xa.coerceString(e.variant,u,a.variant),textcase:xa.coerceString(e.variant,f,a.textcase),lineposition:xa.coerceString(e.variant,v,a.lineposition),shadow:xa.coerceString(e.variant,h,a.shadow)}}function uR(e,r){return r.type==="waterfall"?r[e.dir].marker.color:e.mcc||e.mc||r.marker.color}fR.exports={style:Tae,styleTextPoints:nR,styleOnSelect:Mae,getInsideTextFont:oR,getOutsideTextFont:sR,getBarColor:uR,resizeText:tR}});var bR=Z((fve,gR)=>{"use strict";var jd=Ir(),e1=Hr(),la=Ie(),Sae=Ta(),Cae=Er(),Nl=at(),Lae=br(),r1=dt().tickText,cR=Ac(),qae=cR.recordMinTextSize,Dae=cR.clearMinTextSize,p3=$d(),Au=Qd(),Eae=Jd(),vR=Tc(),Pae=vR.text,Rae=vR.textposition,zae=bi().appendArrayPointValue,Oa=Eae.TEXTPAD;function Nae(e){return e.id}function Fae(e){if(e.ids)return Nae}function m3(e){return(e>0)-(e<0)}function Ei(e,r){return e0}function Hae(e,r,t,a,n,i){var l=r.xaxis,o=r.yaxis,s=e._fullLayout,u=e._context.staticPlot;n||(n={mode:s.barmode,norm:s.barmode,gap:s.bargap,groupgap:s.bargroupgap},Dae("bar",s));var f=la.makeTraceGroups(a,t,"trace bars").each(function(v){var h=jd.select(this),d=v[0].trace,m=v[0].t,y=d.type==="waterfall",g=d.type==="funnel",_=d.type==="histogram",w=d.type==="bar",T=w||g,b=0;y&&d.connector.visible&&d.connector.mode==="between"&&(b=d.connector.line.width/2);var M=d.orientation==="h",C=dR(n),k=la.ensureSingle(h,"g","points"),q=Fae(d),D=k.selectAll("g.point").data(la.identity,q);D.enter().append("g").classed("point",!0),D.exit().remove(),D.each(function(z,F){var I=jd.select(this),H=Iae(z,l,o,M),J=H[0][0],X=H[0][1],Y=H[1][0],O=H[1][1],V=(M?X-J:O-Y)===0;V&&T&&Au.getLineWidth(d,z)&&(V=!1),V||(V=!e1(J)||!e1(X)||!e1(Y)||!e1(O)),z.isBlank=V,V&&(M?X=J:O=Y),b&&!V&&(M?(J-=Ei(J,X)*b,X+=Ei(J,X)*b):(Y-=Ei(Y,O)*b,O+=Ei(Y,O)*b));var Q,K;if(d.type==="waterfall"){if(!V){var ne=d[z.dir].marker;Q=ne.line.width,K=ne.color}}else Q=Au.getLineWidth(d,z),K=z.mc||d.marker.color;function me(ie){var be=jd.round(Q/2%1,2);return n.gap===0&&n.groupgap===0?jd.round(Math.round(ie)-be,2):ie}function de(ie,be,Ke){return Ke&&ie===be?ie:Math.abs(ie-be)>=2?me(ie):ie>be?Math.ceil(ie):Math.floor(ie)}var ke=Cae.opacity(K),re=ke<1||Q>.01?me:de;e._context.staticPlot||(J=re(J,X,M),X=re(X,J,M),Y=re(Y,O,!M),O=re(O,Y,!M));var Ce=M?l.c2p:o.c2p,ce;z.s0>0?ce=z._sMax:z.s0<0?ce=z._sMin:ce=z.s1>0?z._sMax:z._sMin;function _e(ie,be){if(!ie)return 0;var Ke=Math.abs(M?O-Y:X-J),hr=Math.abs(M?X-J:O-Y),Pe=re(Math.abs(Ce(ce,!0)-Ce(0,!0))),Me=z.hasB?Math.min(Ke/2,hr/2):Math.min(Ke/2,Pe),Se;if(be==="%"){var Oe=Math.min(50,ie);Se=Ke*(Oe/100)}else Se=ie;return re(Math.max(Math.min(Se,Me),0))}var se=w||_?_e(m.cornerradiusvalue,m.cornerradiusform):0,ge,B,$="M"+J+","+Y+"V"+O+"H"+X+"V"+Y+"Z",U=0;if(se&&z.s){var ye=m3(z.s0)===0||m3(z.s)===m3(z.s0)?z.s1:z.s0;if(U=re(z.hasB?0:Math.abs(Ce(ce,!0)-Ce(ye,!0))),U0?Math.sqrt(U*(2*se-U)):0,Ne=we>0?Math.max:Math.min;ge="M"+J+","+Y+"V"+(O-Fe*pe)+"H"+Ne(X-(se-U)*we,J)+"A "+se+","+se+" 0 0 "+Re+" "+X+","+(O-se*pe-Ee)+"V"+(Y+se*pe+Ee)+"A "+se+","+se+" 0 0 "+Re+" "+Ne(X-(se-U)*we,J)+","+(Y+Fe*pe)+"Z"}else if(z.hasB)ge="M"+(J+se*we)+","+Y+"A "+se+","+se+" 0 0 "+Re+" "+J+","+(Y+se*pe)+"V"+(O-se*pe)+"A "+se+","+se+" 0 0 "+Re+" "+(J+se*we)+","+O+"H"+(X-se*we)+"A "+se+","+se+" 0 0 "+Re+" "+X+","+(O-se*pe)+"V"+(Y+se*pe)+"A "+se+","+se+" 0 0 "+Re+" "+(X-se*we)+","+Y+"Z";else{B=Math.abs(O-Y)+U;var Be=B0?Math.sqrt(U*(2*se-U)):0,qe=pe>0?Math.max:Math.min;ge="M"+(J+Be*we)+","+Y+"V"+qe(O-(se-U)*pe,Y)+"A "+se+","+se+" 0 0 "+Re+" "+(J+se*we-Ge)+","+O+"H"+(X-se*we+Ge)+"A "+se+","+se+" 0 0 "+Re+" "+(X-Be*we)+","+qe(O-(se-U)*pe,Y)+"V"+Y+"Z"}}else ge=$}else ge=$;var He=hR(la.ensureSingle(I,"path"),s,n,i);if(He.style("vector-effect",u?"none":"non-scaling-stroke").attr("d",isNaN((X-J)*(O-Y))||V&&e._context.staticPlot?"M0,0Z":ge).call(Nl.setClipUrl,r.layerClipId,e),!s.uniformtext.mode&&C){var Ye=Nl.makePointStyleFns(d);Nl.singlePointStyle(z,He,d,Ye,e)}Oae(e,r,I,v,F,J,X,Y,O,se,U,n,i),r.layerClipId&&Nl.hideOutsideRangePoint(z,I.select("text"),l,o,d.xcalendar,d.ycalendar)});var R=d.cliponaxis===!1;Nl.setClipUrl(h,R?null:r.layerClipId,e)});Lae.getComponentMethod("errorbars","plot")(e,f,r,n)}function Oae(e,r,t,a,n,i,l,o,s,u,f,v,h){var d=r.xaxis,m=r.yaxis,y=e._fullLayout,g;function _(B,$,U){var ye=la.ensureSingle(B,"text").text($).attr({class:"bartext bartext-"+g,"text-anchor":"middle","data-notex":1}).call(Nl.font,U).call(Sae.convertToTspans,e);return ye}var w=a[0].trace,T=w.orientation==="h",b=Uae(y,a,n,d,m);g=Vae(w,n);var M=v.mode==="stack"||v.mode==="relative",C=a[n],k=!M||C._outmost,q=C.hasB,D=u&&u-f>Oa;if(!b||g==="none"||(C.isBlank||i===l||o===s)&&(g==="auto"||g==="inside")){t.select("text").remove();return}var R=y.font,z=p3.getBarColor(a[n],w),F=p3.getInsideTextFont(w,n,R,z),I=p3.getOutsideTextFont(w,n,R),H=w.insidetextanchor||"end",J=t.datum();T?d.type==="log"&&J.s0<=0&&(d.range[0]0&&me>0,re;D?q?re=Go(O-2*u,V,ne,me,T)||Go(O,V-2*u,ne,me,T):T?re=Go(O-(u-f),V,ne,me,T)||Go(O,V-2*(u-f),ne,me,T):re=Go(O,V-(u-f),ne,me,T)||Go(O-2*(u-f),V,ne,me,T):re=Go(O,V,ne,me,T),ke&&re?g="inside":(g="outside",Q.remove(),Q=null)}else g="inside";if(!Q){de=la.ensureUniformFontSize(e,g==="outside"?I:F),Q=_(t,b,de);var Ce=Q.attr("transform");if(Q.attr("transform",""),K=Nl.bBox(Q.node()),ne=K.width,me=K.height,Q.attr("transform",Ce),ne<=0||me<=0){Q.remove();return}}var ce=w.textangle,_e,se;g==="outside"?(se=w.constraintext==="both"||w.constraintext==="outside",_e=Yae(i,l,o,s,K,{isHorizontal:T,constrained:se,angle:ce})):(se=w.constraintext==="both"||w.constraintext==="inside",_e=yR(i,l,o,s,K,{isHorizontal:T,constrained:se,angle:ce,anchor:H,hasB:q,r:u,overhead:f})),_e.fontSize=de.size,qae(w.type==="histogram"?"bar":w.type,_e,y),C.transform=_e;var ge=hR(Q,y,v,h);la.setTransormAndDisplay(ge,_e)}function Go(e,r,t,a,n){if(e<0||r<0)return!1;var i=t<=e&&a<=r,l=t<=r&&a<=e,o=n?e>=t*(r/a):r>=a*(e/t);return i||l||o}function pR(e){return e==="auto"?0:e}function mR(e,r){var t=Math.PI/180*r,a=Math.abs(Math.sin(t)),n=Math.abs(Math.cos(t));return{x:e.width*n+e.height*a,y:e.width*a+e.height*n}}function yR(e,r,t,a,n,i){var l=!!i.isHorizontal,o=!!i.constrained,s=i.angle||0,u=i.anchor,f=u==="end",v=u==="start",h=i.leftToRight||0,d=(h+1)/2,m=1-d,y=i.hasB,g=i.r,_=i.overhead,w=n.width,T=n.height,b=Math.abs(r-e),M=Math.abs(a-t),C=b>2*Oa&&M>2*Oa?Oa:0;b-=2*C,M-=2*C;var k=pR(s);s==="auto"&&!(w<=b&&T<=M)&&(w>b||T>M)&&(!(w>M||T>b)||wOa){var z=Bae(e,r,t,a,q,g,_,l,y);D=z.scale,R=z.pad}else D=1,o&&(D=Math.min(1,b/q.x,M/q.y)),R=0;var F=n.left*m+n.right*d,I=(n.top+n.bottom)/2,H=(e+Oa)*m+(r-Oa)*d,J=(t+a)/2,X=0,Y=0;if(v||f){var O=(l?q.x:q.y)/2;g&&(f||y)&&(C+=R);var V=l?Ei(e,r):Ei(t,a);l?v?(H=e+V*C,X=-V*O):(H=r-V*C,X=V*O):v?(J=t+V*C,Y=-V*O):(J=a-V*C,Y=V*O)}return{textX:F,textY:I,targetX:H,targetY:J,anchorX:X,anchorY:Y,scale:D,rotate:k}}function Bae(e,r,t,a,n,i,l,o,s){var u=Math.max(0,Math.abs(r-e)-2*Oa),f=Math.max(0,Math.abs(a-t)-2*Oa),v=i-Oa,h=l?v-Math.sqrt(v*v-(v-l)*(v-l)):v,d=s?v*2:o?v-l:2*h,m=s?v*2:o?2*h:v-l,y,g,_,w,T;return n.y/n.x>=f/(u-d)?w=f/n.y:n.y/n.x<=(f-m)/u?w=u/n.x:!s&&o?(y=n.x*n.x+n.y*n.y/4,g=-2*n.x*(u-v)-n.y*(f/2-v),_=(u-v)*(u-v)+(f/2-v)*(f/2-v)-v*v,w=(-g+Math.sqrt(g*g-4*y*_))/(2*y)):s?(y=(n.x*n.x+n.y*n.y)/4,g=-n.x*(u/2-v)-n.y*(f/2-v),_=(u/2-v)*(u/2-v)+(f/2-v)*(f/2-v)-v*v,w=(-g+Math.sqrt(g*g-4*y*_))/(2*y)):(y=n.x*n.x/4+n.y*n.y,g=-n.x*(u/2-v)-2*n.y*(f-v),_=(u/2-v)*(u/2-v)+(f-v)*(f-v)-v*v,w=(-g+Math.sqrt(g*g-4*y*_))/(2*y)),w=Math.min(1,w),o?T=Math.max(0,v-Math.sqrt(Math.max(0,v*v-(v-(f-n.y*w)/2)*(v-(f-n.y*w)/2)))-l):T=Math.max(0,v-Math.sqrt(Math.max(0,v*v-(v-(u-n.x*w)/2)*(v-(u-n.x*w)/2)))-l),{scale:w,pad:T}}function Yae(e,r,t,a,n,i){var l=!!i.isHorizontal,o=!!i.constrained,s=i.angle||0,u=n.width,f=n.height,v=Math.abs(r-e),h=Math.abs(a-t),d;l?d=h>2*Oa?Oa:0:d=v>2*Oa?Oa:0;var m=1;o&&(m=l?Math.min(1,h/f):Math.min(1,v/u));var y=pR(s),g=mR(n,y),_=(l?g.x:g.y)/2,w=(n.left+n.right)/2,T=(n.top+n.bottom)/2,b=(e+r)/2,M=(t+a)/2,C=0,k=0,q=l?Ei(r,e):Ei(t,a);return l?(b=r-q*d,C=q*_):(M=a+q*d,k=-q*_),{textX:w,textY:T,targetX:b,targetY:M,anchorX:C,anchorY:k,scale:m,rotate:y}}function Uae(e,r,t,a,n){var i=r[0].trace,l=i.texttemplate,o;return l?o=Gae(e,r,t,a,n):i.textinfo?o=Wae(r,t,a,n):o=Au.getValue(i.text,t),Au.coerceString(Pae,o)}function Vae(e,r){var t=Au.getValue(e.textposition,r);return Au.coerceEnumerated(Rae,t)}function Gae(e,r,t,a,n){var i=r[0].trace,l=la.castOption(i,t,"texttemplate");if(!l)return"";var o=i.type==="histogram",s=i.type==="waterfall",u=i.type==="funnel",f=i.orientation==="h",v,h,d,m;f?(v="y",h=n,d="x",m=a):(v="x",h=a,d="y",m=n);function y(C){return r1(h,h.c2l(C),!0).text}function g(C){return r1(m,m.c2l(C),!0).text}var _=r[t],w={};w.label=_.p,w.labelLabel=w[v+"Label"]=y(_.p);var T=la.castOption(i,_.i,"text");(T===0||T)&&(w.text=T),w.value=_.s,w.valueLabel=w[d+"Label"]=g(_.s);var b={};zae(b,i,_.i),(o||b.x===void 0)&&(b.x=f?w.value:w.label),(o||b.y===void 0)&&(b.y=f?w.label:w.value),(o||b.xLabel===void 0)&&(b.xLabel=f?w.valueLabel:w.labelLabel),(o||b.yLabel===void 0)&&(b.yLabel=f?w.labelLabel:w.valueLabel),s&&(w.delta=+_.rawS||_.s,w.deltaLabel=g(w.delta),w.final=_.v,w.finalLabel=g(w.final),w.initial=w.final-w.delta,w.initialLabel=g(w.initial)),u&&(w.value=_.s,w.valueLabel=g(w.value),w.percentInitial=_.begR,w.percentInitialLabel=la.formatPercent(_.begR),w.percentPrevious=_.difR,w.percentPreviousLabel=la.formatPercent(_.difR),w.percentTotal=_.sumR,w.percenTotalLabel=la.formatPercent(_.sumR));var M=la.castOption(i,_.i,"customdata");return M&&(w.customdata=M),la.texttemplateString({data:[b,w,i._meta],fallback:i.texttemplatefallback,labels:w,locale:e._d3locale,template:l})}function Wae(e,r,t,a){var n=e[0].trace,i=n.orientation==="h",l=n.type==="waterfall",o=n.type==="funnel";function s(M){var C=i?a:t;return r1(C,M,!0).text}function u(M){var C=i?t:a;return r1(C,+M,!0).text}var f=n.textinfo,v=e[r],h=f.split("+"),d=[],m,y=function(M){return h.indexOf(M)!==-1};if(y("label")&&d.push(s(e[r].p)),y("text")&&(m=la.castOption(n,v.i,"text"),(m===0||m)&&d.push(m)),l){var g=+v.rawS||v.s,_=v.v,w=_-g;y("initial")&&d.push(u(w)),y("delta")&&d.push(u(g)),y("final")&&d.push(u(_))}if(o){y("value")&&d.push(u(v.s));var T=0;y("percent initial")&&T++,y("percent previous")&&T++,y("percent total")&&T++;var b=T>1;y("percent initial")&&(m=la.formatPercent(v.begR),b&&(m+=" of initial"),d.push(m)),y("percent previous")&&(m=la.formatPercent(v.difR),b&&(m+=" of previous"),d.push(m)),y("percent total")&&(m=la.formatPercent(v.sumR),b&&(m+=" of total"),d.push(m))}return d.join("
")}gR.exports={plot:Hae,toMoveInsideBar:yR}});var MR=Z((cve,TR)=>{"use strict";var Cc=ki(),Zae=br(),xR=Er(),Xae=Ie().fillText,Jae=Qd().getLineWidth,y3=dt().hoverLabelText,Kae=Vt().BADNUM;function Qae(e,r,t,a,n){var i=_R(e,r,t,a,n);if(i){var l=i.cd,o=l[0].trace,s=l[i.index];return i.color=wR(o,s),Zae.getComponentMethod("errorbars","hoverInfo")(s,o,i),[i]}}function _R(e,r,t,a,n){var i=e.cd,l=i[0].trace,o=i[0].t,s=a==="closest",u=l.type==="waterfall",f=e.maxHoverDistance,v=e.maxSpikeDistance,h,d,m,y,g,_,w;l.orientation==="h"?(h=t,d=r,m="y",y="x",g=J,_=F):(h=r,d=t,m="x",y="y",_=J,g=F);var T=l[m+"period"],b=s||T;function M(re){return k(re,-1)}function C(re){return k(re,1)}function k(re,Ce){var ce=re.w;return re[m]+Ce*ce/2}function q(re){return re[m+"End"]-re[m+"Start"]}var D=s?M:T?function(re){return re.p-q(re)/2}:function(re){return Math.min(M(re),re.p-o.bardelta/2)},R=s?C:T?function(re){return re.p+q(re)/2}:function(re){return Math.max(C(re),re.p+o.bardelta/2)};function z(re,Ce,ce){return n.finiteRange&&(ce=0),Cc.inbox(re-h,Ce-h,ce+Math.min(1,Math.abs(Ce-re)/w)-1)}function F(re){return z(D(re),R(re),f)}function I(re){return z(M(re),C(re),v)}function H(re){var Ce=re[y];if(u){var ce=Math.abs(re.rawS)||0;d>0?Ce+=ce:d<0&&(Ce-=ce)}return Ce}function J(re){var Ce=d,ce=re.b,_e=H(re);return Cc.inbox(ce-Ce,_e-Ce,f+(_e-Ce)/(_e-ce)-1)}function X(re){var Ce=d,ce=re.b,_e=H(re);return Cc.inbox(ce-Ce,_e-Ce,v+(_e-Ce)/(_e-ce)-1)}var Y=e[m+"a"],O=e[y+"a"];w=Math.abs(Y.r2c(Y.range[1])-Y.r2c(Y.range[0]));function V(re){return(g(re)+_(re))/2}var Q=Cc.getDistanceFunction(a,g,_,V);if(Cc.getClosest(i,Q,e),e.index!==!1&&i[e.index].p!==Kae){b||(D=function(re){return Math.min(M(re),re.p-o.bargroupwidth/2)},R=function(re){return Math.max(C(re),re.p+o.bargroupwidth/2)});var K=e.index,ne=i[K],me=l.base?ne.b+ne.s:ne.s;e[y+"0"]=e[y+"1"]=O.c2p(ne[y],!0),e[y+"LabelVal"]=me;var de=o.extents[o.extents.round(ne.p)];e[m+"0"]=Y.c2p(s?D(ne):de[0],!0),e[m+"1"]=Y.c2p(s?R(ne):de[1],!0);var ke=ne.orig_p!==void 0;return e[m+"LabelVal"]=ke?ne.orig_p:ne.p,e.labelLabel=y3(Y,e[m+"LabelVal"],l[m+"hoverformat"]),e.valueLabel=y3(O,e[y+"LabelVal"],l[y+"hoverformat"]),e.baseLabel=y3(O,ne.b,l[y+"hoverformat"]),e.spikeDistance=(X(ne)+I(ne))/2,e[m+"Spike"]=Y.c2p(ne.p,!0),Xae(ne,l,e),e.hovertemplate=l.hovertemplate,e}}function wR(e,r){var t=r.mcc||e.marker.color,a=r.mlcc||e.marker.line.color,n=Jae(e,r);if(xR.opacity(t))return t;if(xR.opacity(a)&&n)return a}TR.exports={hoverPoints:Qae,hoverOnBars:_R,getTraceColor:wR}});var kR=Z((vve,AR)=>{"use strict";AR.exports=function(r,t,a){return r.x="xVal"in t?t.xVal:t.x,r.y="yVal"in t?t.yVal:t.y,t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),a.orientation==="h"?(r.label=r.y,r.value=r.x):(r.label=r.x,r.value=r.y),r}});var CR=Z((hve,SR)=>{"use strict";SR.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,l=a[0].trace,o=l.type==="funnel",s=l.orientation==="h",u=[],f;if(t===!1)for(f=0;f{"use strict";LR.exports={attributes:Tc(),layoutAttributes:c3(),supplyDefaults:Mc().supplyDefaults,crossTraceDefaults:Mc().crossTraceDefaults,supplyLayoutDefaults:UP(),calc:KP(),crossTraceCalc:t2().crossTraceCalc,colorbar:i2(),arraysToCalcdata:v3(),plot:bR().plot,style:$d().style,styleOnSelect:$d().styleOnSelect,hoverPoints:MR().hoverPoints,eventData:kR(),selectPoints:CR(),moduleType:"trace",name:"bar",basePlotModule:wd(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}});var ER=Z((pve,DR)=>{"use strict";DR.exports=qR()});var g3=Z((mve,RR)=>{"use strict";var jae=Vn(),ene=Ud().attributes,rne=ma(),tne=hi(),{hovertemplateAttrs:ane,texttemplateAttrs:nne,templatefallbackAttrs:PR}=to(),Lc=Gt().extendFlat,ine=mi().pattern,t1=rne({editType:"plot",arrayOk:!0,colorEditType:"plot"});RR.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:tne.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:ine,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:Lc({},jae.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:ane({},{keys:["label","color","value","percent","text"]}),hovertemplatefallback:PR(),texttemplate:nne({editType:"plot"},{keys:["label","color","value","percent","text"]}),texttemplatefallback:PR({editType:"plot"}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:Lc({},t1,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:Lc({},t1,{}),outsidetextfont:Lc({},t1,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:Lc({},t1,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:ene({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}});var IR=Z((yve,FR)=>{"use strict";var lne=Hr(),qc=Ie(),one=g3(),sne=Ud().defaults,une=Mc().handleText,fne=Ie().coercePattern;function zR(e,r){var t=qc.isArrayOrTypedArray(e),a=qc.isArrayOrTypedArray(r),n=Math.min(t?e.length:1/0,a?r.length:1/0);if(isFinite(n)||(n=0),n&&a){for(var i,l=0;l0){i=!0;break}}i||(n=0)}return{hasLabels:t,hasValues:a,len:n}}function NR(e,r,t,a,n){var i=a("marker.line.width");i&&a("marker.line.color",n?void 0:t.paper_bgcolor);var l=a("marker.colors");fne(a,"marker.pattern",l),e.marker&&!r.marker.pattern.fgcolor&&(r.marker.pattern.fgcolor=e.marker.colors),r.marker.pattern.bgcolor||(r.marker.pattern.bgcolor=t.paper_bgcolor)}function cne(e,r,t,a){function n(w,T){return qc.coerce(e,r,one,w,T)}var i=n("labels"),l=n("values"),o=zR(i,l),s=o.len;if(r._hasLabels=o.hasLabels,r._hasValues=o.hasValues,!r._hasLabels&&r._hasValues&&(n("label0"),n("dlabel")),!s){r.visible=!1;return}r._length=s,NR(e,r,a,n,!0),n("scalegroup");var u=n("text"),f=n("texttemplate");n("texttemplatefallback");var v;if(f||(v=n("textinfo",qc.isArrayOrTypedArray(u)?"text+percent":"percent")),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback"),f||v&&v!=="none"){var h=n("textposition");une(e,r,a,n,h,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var d=Array.isArray(h)||h==="auto",m=d||h==="outside";m&&n("automargin"),(h==="inside"||h==="auto"||Array.isArray(h))&&n("insidetextorientation")}else v==="none"&&n("textposition","none");sne(r,a,n);var y=n("hole"),g=n("title.text");if(g){var _=n("title.position",y?"middle center":"top center");!y&&_==="middle center"&&(r.title.position="top center"),qc.coerceFont(n,"title.font",a.font)}n("sort"),n("direction"),n("rotation"),n("pull")}FR.exports={handleLabelsAndValues:zR,handleMarkerDefaults:NR,supplyDefaults:cne}});var b3=Z((gve,HR)=>{"use strict";HR.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var BR=Z((bve,OR)=>{"use strict";var vne=Ie(),hne=b3();OR.exports=function(r,t){function a(n,i){return vne.coerce(r,t,hne,n,i)}a("hiddenlabels"),a("piecolorway",t.colorway),a("extendpiecolors")}});var _3=Z((xve,VR)=>{"use strict";var dne=Hr(),x3=xn(),pne=Er(),mne={};function yne(e,r){var t=[],a=e._fullLayout,n=a.hiddenlabels||[],i=r.labels,l=r.marker.colors||[],o=r.values,s=r._length,u=r._hasValues&&s,f,v;if(r.dlabel)for(i=new Array(s),f=0;f=0});var b=r.type==="funnelarea"?y:r.sort;return b&&t.sort(function(M,C){return C.v-M.v}),t[0]&&(t[0].vTotal=m),t}function YR(e){return function(t,a){return!t||(t=x3(t),!t.isValid())?!1:(t=pne.addOpacity(t,t.getAlpha()),e[a]||(e[a]=t),t)}}function gne(e,r){var t=(r||{}).type;t||(t="pie");var a=e._fullLayout,n=e.calcdata,i=a[t+"colorway"],l=a["_"+t+"colormap"];a["extend"+t+"colors"]&&(i=UR(i,mne));for(var o=0,s=0;s{"use strict";var bne=bi().appendArrayMultiPointValues;GR.exports=function(r,t){var a={curveNumber:t.index,pointNumbers:r.pts,data:t._input,fullData:t,label:r.label,color:r.color,value:r.v,percent:r.percent,text:r.text,bbox:r.bbox,v:r.v};return r.pts.length===1&&(a.pointNumber=a.i=r.pts[0]),bne(a,t,r.pts),t.type==="funnelarea"&&(delete a.v,delete a.i),a}});var dz=Z((wve,hz)=>{"use strict";var tn=Ir(),xne=Ft(),a1=ki(),$R=Er(),$i=at(),_a=Ie(),_ne=_a.strScale,ZR=_a.strTranslate,w3=Ta(),jR=Ac(),wne=jR.recordMinTextSize,Tne=jR.clearMinTextSize,ez=Jd().TEXTPAD,wr=Y0(),n1=WR(),XR=Ie().isValidTextValue;function Mne(e,r){var t=e._context.staticPlot,a=e._fullLayout,n=a._size;Tne("pie",a),az(r,e),fz(r,n);var i=_a.makeTraceGroups(a._pielayer,r,"trace").each(function(l){var o=tn.select(this),s=l[0],u=s.trace;Pne(l),o.attr("stroke-linejoin","round"),o.each(function(){var f=tn.select(this).selectAll("g.slice").data(l);f.enter().append("g").classed("slice",!0),f.exit().remove();var v=[[[],[]],[[],[]]],h=!1;f.each(function(b,M){if(b.hidden){tn.select(this).selectAll("path,g").remove();return}b.pointNumber=b.i,b.curveNumber=u.index,v[b.pxmid[1]<0?0:1][b.pxmid[0]<0?0:1].push(b);var C=s.cx,k=s.cy,q=tn.select(this),D=q.selectAll("path.surface").data([b]);if(D.enter().append("path").classed("surface",!0).style({"pointer-events":t?"none":"all"}),q.call(rz,e,l),u.pull){var R=+wr.castOption(u.pull,b.pts)||0;R>0&&(C+=R*b.pxmid[0],k+=R*b.pxmid[1])}b.cxFinal=C,b.cyFinal=k;function z(O,V,Q,K){var ne=K*(V[0]-O[0]),me=K*(V[1]-O[1]);return"a"+K*s.r+","+K*s.r+" 0 "+b.largeArc+(Q?" 1 ":" 0 ")+ne+","+me}var F=u.hole;if(b.v===s.vTotal){var I="M"+(C+b.px0[0])+","+(k+b.px0[1])+z(b.px0,b.pxmid,!0,1)+z(b.pxmid,b.px0,!0,1)+"Z";F?D.attr("d","M"+(C+F*b.px0[0])+","+(k+F*b.px0[1])+z(b.px0,b.pxmid,!1,F)+z(b.pxmid,b.px0,!1,F)+"Z"+I):D.attr("d",I)}else{var H=z(b.px0,b.px1,!0,1);if(F){var J=1-F;D.attr("d","M"+(C+F*b.px1[0])+","+(k+F*b.px1[1])+z(b.px1,b.px0,!1,F)+"l"+J*b.px0[0]+","+J*b.px0[1]+H+"Z")}else D.attr("d","M"+C+","+k+"l"+b.px0[0]+","+b.px0[1]+H+"Z")}cz(e,b,s);var X=wr.castOption(u.textposition,b.pts),Y=q.selectAll("g.slicetext").data(b.text&&X!=="none"?[0]:[]);Y.enter().append("g").classed("slicetext",!0),Y.exit().remove(),Y.each(function(){var O=_a.ensureSingle(tn.select(this),"text","",function(re){re.attr("data-notex",1)}),V=_a.ensureUniformFontSize(e,X==="outside"?kne(u,b,a.font):tz(u,b,a.font));O.text(b.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call($i.font,V).call(w3.convertToTspans,e);var Q=$i.bBox(O.node()),K;if(X==="outside")K=QR(Q,b);else if(K=nz(Q,b,s),X==="auto"&&K.scale<1){var ne=_a.ensureUniformFontSize(e,u.outsidetextfont);O.call($i.font,ne),Q=$i.bBox(O.node()),K=QR(Q,b)}var me=K.textPosAngle,de=me===void 0?b.pxmid:i1(s.r,me);if(K.targetX=C+de[0]*K.rCenter+(K.x||0),K.targetY=k+de[1]*K.rCenter+(K.y||0),vz(K,Q),K.outside){var ke=K.targetY;b.yLabelMin=ke-Q.height/2,b.yLabelMid=ke,b.yLabelMax=ke+Q.height/2,b.labelExtraX=0,b.labelExtraY=0,h=!0}K.fontSize=V.size,wne(u.type,K,a),l[M].transform=K,_a.setTransormAndDisplay(O,K)})});var d=tn.select(this).selectAll("g.titletext").data(u.title.text?[0]:[]);if(d.enter().append("g").classed("titletext",!0),d.exit().remove(),d.each(function(){var b=_a.ensureSingle(tn.select(this),"text","",function(k){k.attr("data-notex",1)}),M=u.title.text;u._meta&&(M=_a.templateString(M,u._meta)),b.text(M).attr({class:"titletext",transform:"","text-anchor":"middle"}).call($i.font,u.title.font).call(w3.convertToTspans,e);var C;u.title.position==="middle center"?C=Lne(s):C=sz(s,n),b.attr("transform",ZR(C.x,C.y)+_ne(Math.min(1,C.scale))+ZR(C.tx,C.ty))}),h&&Dne(v,u),Ane(f,u),h&&u.automargin){var m=$i.bBox(o.node()),y=u.domain,g=n.w*(y.x[1]-y.x[0]),_=n.h*(y.y[1]-y.y[0]),w=(.5*g-s.r)/n.w,T=(.5*_-s.r)/n.h;xne.autoMargin(e,"pie."+u.uid+".automargin",{xl:y.x[0]-w,xr:y.x[1]+w,yb:y.y[0]-T,yt:y.y[1]+T,l:Math.max(s.cx-s.r-m.left,0),r:Math.max(m.right-(s.cx+s.r),0),b:Math.max(m.bottom-(s.cy+s.r),0),t:Math.max(s.cy-s.r-m.top,0),pad:5})}})});setTimeout(function(){i.selectAll("tspan").each(function(){var l=tn.select(this);l.attr("dy")&&l.attr("dy",l.attr("dy"))})},0)}function Ane(e,r){e.each(function(t){var a=tn.select(this);if(!t.labelExtraX&&!t.labelExtraY){a.select("path.textline").remove();return}var n=a.select("g.slicetext text");t.transform.targetX+=t.labelExtraX,t.transform.targetY+=t.labelExtraY,_a.setTransormAndDisplay(n,t.transform);var i=t.cxFinal+t.pxmid[0],l=t.cyFinal+t.pxmid[1],o="M"+i+","+l,s=(t.yLabelMax-t.yLabelMin)*(t.pxmid[0]<0?-1:1)/4;if(t.labelExtraX){var u=t.labelExtraX*t.pxmid[1]/t.pxmid[0],f=t.yLabelMid+t.labelExtraY-(t.cyFinal+t.pxmid[1]);Math.abs(u)>Math.abs(f)?o+="l"+f*t.pxmid[0]/t.pxmid[1]+","+f+"H"+(i+t.labelExtraX+s):o+="l"+t.labelExtraX+","+u+"v"+(f-u)+"h"+s}else o+="V"+(t.yLabelMid+t.labelExtraY)+"h"+s;_a.ensureSingle(a,"path","textline").call($R.stroke,r.outsidetextfont.color).attr({"stroke-width":Math.min(2,r.outsidetextfont.size/8),d:o,fill:"none"})})}function rz(e,r,t){var a=t[0],n=a.cx,i=a.cy,l=a.trace,o=l.type==="funnelarea";"_hasHoverLabel"in l||(l._hasHoverLabel=!1),"_hasHoverEvent"in l||(l._hasHoverEvent=!1),e.on("mouseover",function(s){var u=r._fullLayout,f=r._fullData[l.index];if(!(r._dragging||u.hovermode===!1)){var v=f.hoverinfo;if(Array.isArray(v)&&(v=a1.castHoverinfo({hoverinfo:[wr.castOption(v,s.pts)],_module:l._module},u,0)),v==="all"&&(v="label+text+value+percent+name"),f.hovertemplate||v!=="none"&&v!=="skip"&&v){var h=s.rInscribed||0,d=n+s.pxmid[0]*(1-h),m=i+s.pxmid[1]*(1-h),y=u.separators,g=[];if(v&&v.indexOf("label")!==-1&&g.push(s.label),s.text=wr.castOption(f.hovertext||f.text,s.pts),v&&v.indexOf("text")!==-1){var _=s.text;_a.isValidTextValue(_)&&g.push(_)}s.value=s.v,s.valueLabel=wr.formatPieValue(s.v,y),v&&v.indexOf("value")!==-1&&g.push(s.valueLabel),s.percent=s.v/a.vTotal,s.percentLabel=wr.formatPiePercent(s.percent,y),v&&v.indexOf("percent")!==-1&&g.push(s.percentLabel);var w=f.hoverlabel,T=w.font,b=[];a1.loneHover({trace:l,x0:d-h*a.r,x1:d+h*a.r,y:m,_x0:o?n+s.TL[0]:d-h*a.r,_x1:o?n+s.TR[0]:d+h*a.r,_y0:o?i+s.TL[1]:m-h*a.r,_y1:o?i+s.BL[1]:m+h*a.r,text:g.join("
"),name:f.hovertemplate||v.indexOf("name")!==-1?f.name:void 0,idealAlign:s.pxmid[0]<0?"left":"right",color:wr.castOption(w.bgcolor,s.pts)||s.color,borderColor:wr.castOption(w.bordercolor,s.pts),fontFamily:wr.castOption(T.family,s.pts),fontSize:wr.castOption(T.size,s.pts),fontColor:wr.castOption(T.color,s.pts),nameLength:wr.castOption(w.namelength,s.pts),textAlign:wr.castOption(w.align,s.pts),hovertemplate:wr.castOption(f.hovertemplate,s.pts),hovertemplateLabels:s,eventData:[n1(s,f)]},{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:r,inOut_bbox:b}),s.bbox=b[0],l._hasHoverLabel=!0}l._hasHoverEvent=!0,r.emit("plotly_hover",{points:[n1(s,f)],event:tn.event})}}),e.on("mouseout",function(s){var u=r._fullLayout,f=r._fullData[l.index],v=tn.select(this).datum();l._hasHoverEvent&&(s.originalEvent=tn.event,r.emit("plotly_unhover",{points:[n1(v,f)],event:tn.event}),l._hasHoverEvent=!1),l._hasHoverLabel&&(a1.loneUnhover(u._hoverlayer.node()),l._hasHoverLabel=!1)}),e.on("click",function(s){var u=r._fullLayout,f=r._fullData[l.index];r._dragging||u.hovermode===!1||(r._hoverdata=[n1(s,f)],a1.click(r,tn.event))})}function kne(e,r,t){var a=wr.castOption(e.outsidetextfont.color,r.pts)||wr.castOption(e.textfont.color,r.pts)||t.color,n=wr.castOption(e.outsidetextfont.family,r.pts)||wr.castOption(e.textfont.family,r.pts)||t.family,i=wr.castOption(e.outsidetextfont.size,r.pts)||wr.castOption(e.textfont.size,r.pts)||t.size,l=wr.castOption(e.outsidetextfont.weight,r.pts)||wr.castOption(e.textfont.weight,r.pts)||t.weight,o=wr.castOption(e.outsidetextfont.style,r.pts)||wr.castOption(e.textfont.style,r.pts)||t.style,s=wr.castOption(e.outsidetextfont.variant,r.pts)||wr.castOption(e.textfont.variant,r.pts)||t.variant,u=wr.castOption(e.outsidetextfont.textcase,r.pts)||wr.castOption(e.textfont.textcase,r.pts)||t.textcase,f=wr.castOption(e.outsidetextfont.lineposition,r.pts)||wr.castOption(e.textfont.lineposition,r.pts)||t.lineposition,v=wr.castOption(e.outsidetextfont.shadow,r.pts)||wr.castOption(e.textfont.shadow,r.pts)||t.shadow;return{color:a,family:n,size:i,weight:l,style:o,variant:s,textcase:u,lineposition:f,shadow:v}}function tz(e,r,t){var a=wr.castOption(e.insidetextfont.color,r.pts);!a&&e._input.textfont&&(a=wr.castOption(e._input.textfont.color,r.pts));var n=wr.castOption(e.insidetextfont.family,r.pts)||wr.castOption(e.textfont.family,r.pts)||t.family,i=wr.castOption(e.insidetextfont.size,r.pts)||wr.castOption(e.textfont.size,r.pts)||t.size,l=wr.castOption(e.insidetextfont.weight,r.pts)||wr.castOption(e.textfont.weight,r.pts)||t.weight,o=wr.castOption(e.insidetextfont.style,r.pts)||wr.castOption(e.textfont.style,r.pts)||t.style,s=wr.castOption(e.insidetextfont.variant,r.pts)||wr.castOption(e.textfont.variant,r.pts)||t.variant,u=wr.castOption(e.insidetextfont.textcase,r.pts)||wr.castOption(e.textfont.textcase,r.pts)||t.textcase,f=wr.castOption(e.insidetextfont.lineposition,r.pts)||wr.castOption(e.textfont.lineposition,r.pts)||t.lineposition,v=wr.castOption(e.insidetextfont.shadow,r.pts)||wr.castOption(e.textfont.shadow,r.pts)||t.shadow;return{color:a||$R.contrast(r.color),family:n,size:i,weight:l,style:o,variant:s,textcase:u,lineposition:f,shadow:v}}function az(e,r){for(var t,a,n=0;n=-4;w-=2)_(Math.PI*w,"tan");for(w=4;w>=-4;w-=2)_(Math.PI*(w+1),"tan")}if(v||d){for(w=4;w>=-4;w-=2)_(Math.PI*(w+1.5),"rad");for(w=4;w>=-4;w-=2)_(Math.PI*(w+.5),"rad")}}if(o||m||v){var T=Math.sqrt(e.width*e.width+e.height*e.height);if(g={scale:n*a*2/T,rCenter:1-n,rotate:0},g.textPosAngle=(r.startangle+r.stopangle)/2,g.scale>=1)return g;y.push(g)}(m||d)&&(g=JR(e,a,l,s,u),g.textPosAngle=(r.startangle+r.stopangle)/2,y.push(g)),(m||h)&&(g=KR(e,a,l,s,u),g.textPosAngle=(r.startangle+r.stopangle)/2,y.push(g));for(var b=0,M=0,C=0;C=1)break}return y[b]}function Sne(e,r){var t=e.startangle,a=e.stopangle;return t>r&&r>a||t0?1:-1)/2,y:i/(1+t*t/(a*a)),outside:!0}}function Lne(e){var r=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/r,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}function sz(e,r){var t=1,a=1,n,i=e.trace,l={x:e.cx,y:e.cy},o={tx:0,ty:0};o.ty+=i.title.font.size,n=uz(i),i.title.position.indexOf("top")!==-1?(l.y-=(1+n)*e.r,o.ty-=e.titleBox.height):i.title.position.indexOf("bottom")!==-1&&(l.y+=(1+n)*e.r);var s=qne(e.r,e.trace.aspectratio),u=r.w*(i.domain.x[1]-i.domain.x[0])/2;return i.title.position.indexOf("left")!==-1?(u=u+s,l.x-=(1+n)*s,o.tx+=e.titleBox.width/2):i.title.position.indexOf("center")!==-1?u*=2:i.title.position.indexOf("right")!==-1&&(u=u+s,l.x+=(1+n)*s,o.tx-=e.titleBox.width/2),t=u/e.titleBox.width,a=T3(e,r)/e.titleBox.height,{x:l.x,y:l.y,scale:Math.min(t,a),tx:o.tx,ty:o.ty}}function qne(e,r){return e/(r===void 0?1:r)}function T3(e,r){var t=e.trace,a=r.h*(t.domain.y[1]-t.domain.y[0]);return Math.min(e.titleBox.height,a/2)}function uz(e){var r=e.pull;if(!r)return 0;var t;if(_a.isArrayOrTypedArray(r))for(r=0,t=0;tr&&(r=e.pull[t]);return r}function Dne(e,r){var t,a,n,i,l,o,s,u,f,v,h,d,m;function y(T,b){return T.pxmid[1]-b.pxmid[1]}function g(T,b){return b.pxmid[1]-T.pxmid[1]}function _(T,b){b||(b={});var M=b.labelExtraY+(a?b.yLabelMax:b.yLabelMin),C=a?T.yLabelMin:T.yLabelMax,k=a?T.yLabelMax:T.yLabelMin,q=T.cyFinal+l(T.px0[1],T.px1[1]),D=M-C,R,z,F,I,H,J;if(D*s>0&&(T.labelExtraY=D),!!_a.isArrayOrTypedArray(r.pull))for(z=0;z=(wr.castOption(r.pull,F.pts)||0))&&((T.pxmid[1]-F.pxmid[1])*s>0?(I=F.cyFinal+l(F.px0[1],F.px1[1]),D=I-C-T.labelExtraY,D*s>0&&(T.labelExtraY+=D)):(k+T.labelExtraY-q)*s>0&&(R=3*o*Math.abs(z-v.indexOf(T)),H=F.cxFinal+i(F.px0[0],F.px1[0]),J=H+R-(T.cxFinal+T.pxmid[0])-T.labelExtraX,J*o>0&&(T.labelExtraX+=J)))}for(a=0;a<2;a++)for(n=a?y:g,l=a?Math.max:Math.min,s=a?1:-1,t=0;t<2;t++){for(i=t?Math.max:Math.min,o=t?1:-1,u=e[a][t],u.sort(n),f=e[1-a][t],v=f.concat(u),d=[],h=0;h1?(u=t.r,f=u/n.aspectratio):(f=t.r,u=f*n.aspectratio),u*=(1+n.baseratio)/2,s=u*f}l=Math.min(l,s/t.vTotal)}for(a=0;ar.vTotal/2?1:0,u.halfangle=Math.PI*Math.min(u.v/r.vTotal,.5),u.ring=1-a.hole,u.rInscribed=Cne(u,r))}function i1(e,r){return[e*Math.sin(r),-e*Math.cos(r)]}function cz(e,r,t){var a=e._fullLayout,n=t.trace,i=n.texttemplate,l=n.textinfo;if(!i&&l&&l!=="none"){var o=l.split("+"),s=function(b){return o.indexOf(b)!==-1},u=s("label"),f=s("text"),v=s("value"),h=s("percent"),d=a.separators,m;if(m=u?[r.label]:[],f){var y=wr.getFirstFilled(n.text,r.pts);XR(y)&&m.push(y)}v&&m.push(wr.formatPieValue(r.v,d)),h&&m.push(wr.formatPiePercent(r.v/t.vTotal,d)),r.text=m.join("
")}function g(b){return{label:b.label,value:b.v,valueLabel:wr.formatPieValue(b.v,a.separators),percent:b.v/t.vTotal,percentLabel:wr.formatPiePercent(b.v/t.vTotal,a.separators),color:b.color,text:b.text,customdata:_a.castOption(n,b.i,"customdata")}}if(i){var _=_a.castOption(n,r.i,"texttemplate");if(!_)r.text="";else{var w=g(r),T=wr.getFirstFilled(n.text,r.pts);(XR(T)||T==="")&&(w.text=T),r.text=_a.texttemplateString({data:[w,n._meta],fallback:n.texttemplatefallback,labels:w,locale:e._fullLayout._d3locale,template:_})}}}function vz(e,r){var t=e.rotate*Math.PI/180,a=Math.cos(t),n=Math.sin(t),i=(r.left+r.right)/2,l=(r.top+r.bottom)/2;e.textX=i*a-l*n,e.textY=i*n+l*a,e.noCenter=!0}hz.exports={plot:Mne,formatSliceLabel:cz,transformInsideText:nz,determineInsideTextFont:tz,positionTitleOutside:sz,prerenderTitles:az,layoutAreas:fz,attachFxHandlers:rz,computeTransform:vz}});var yz=Z((Tve,mz)=>{"use strict";var pz=Ir(),Rne=U0(),zne=Ac().resizeText;mz.exports=function(r){var t=r._fullLayout._pielayer.selectAll(".trace");zne(r,t,"pie"),t.each(function(a){var n=a[0],i=n.trace,l=pz.select(this);l.style({opacity:i.opacity}),l.selectAll("path.surface").each(function(o){pz.select(this).call(Rne,o,i,r)})})}});var bz=Z(ku=>{"use strict";var gz=Ft();ku.name="pie";ku.plot=function(e,r,t,a){gz.plotBasePlot(ku.name,e,r,t,a)};ku.clean=function(e,r,t,a){gz.cleanBasePlot(ku.name,e,r,t,a)}});var _z=Z((Ave,xz)=>{"use strict";xz.exports={attributes:g3(),supplyDefaults:IR().supplyDefaults,supplyLayoutDefaults:BR(),layoutAttributes:b3(),calc:_3().calc,crossTraceCalc:_3().crossTraceCalc,plot:dz().plot,style:yz(),styleOne:U0(),moduleType:"trace",name:"pie",basePlotModule:bz(),categories:["pie-like","pie","showLegend"],meta:{}}});var Tz=Z((kve,wz)=>{"use strict";wz.exports=_z()});var Sa=Z((Sve,Az)=>{"use strict";var Mz=Object.getOwnPropertySymbols,Nne=Object.prototype.hasOwnProperty,Fne=Object.prototype.propertyIsEnumerable;function Ine(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function Hne(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var r={},t=0;t<10;t++)r["_"+String.fromCharCode(t)]=t;var a=Object.getOwnPropertyNames(r).map(function(i){return r[i]});if(a.join("")!=="0123456789")return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach(function(i){n[i]=i}),Object.keys(Object.assign({},n)).join("")==="abcdefghijklmnopqrst"}catch(i){return!1}}Az.exports=Hne()?Object.assign:function(e,r){for(var t,a=Ine(e),n,i=1;i{var o1=Sa();function kz(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}o1(kz.prototype,{instance:function(e,r){e=(e||"gregorian").toLowerCase(),r=r||"";var t=this._localCals[e+"-"+r];if(!t&&this.calendars[e]&&(t=new this.calendars[e](r),this._localCals[e+"-"+r]=t),!t)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return t},newDate:function(e,r,t,a,n){return a=(e!=null&&e.year?e.calendar():typeof a=="string"?this.instance(a,n):a)||this.instance(),a.newDate(e,r,t)},substituteDigits:function(e){return function(r){return(r+"").replace(/[0-9]/g,function(t){return e[t]})}},substituteChineseDigits:function(e,r){return function(t){for(var a="",n=0;t>0;){var i=t%10;a=(i===0?"":e[i]+r[n])+a,n++,t=Math.floor(t/10)}return a.indexOf(e[1]+r[1])===0&&(a=a.substr(1)),a||e[0]}}});function M3(e,r,t,a){if(this._calendar=e,this._year=r,this._month=t,this._day=a,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function l1(e,r){return e=""+e,"000000".substring(0,r-e.length)+e}o1(M3.prototype,{newDate:function(e,r,t){return this._calendar.newDate(e==null?this:e,r,t)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,r,t){if(!this._calendar.isValid(e,r,t))throw(Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=r,this._day=t,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,r){return this._calendar.add(this,e,r)},set:function(e,r){return this._calendar.set(this,e,r)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(Pr.local.differentCalendars||Pr.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var r=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return r===0?0:r<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+l1(Math.abs(this.year()),4)+"-"+l1(this.month(),2)+"-"+l1(this.day(),2)}});function A3(){this.shortYearCutoff="+10"}o1(A3.prototype,{_validateLevel:0,newDate:function(e,r,t){return e==null?this.today():(e.year&&(this._validate(e,r,t,Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate),t=e.day(),r=e.month(),e=e.year()),new M3(this,e,r,t))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var r=this._validate(e,this.minMonth,this.minDay,Pr.local.invalidYear||Pr.regionalOptions[""].invalidYear);return r.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Pr.local.invalidYear||Pr.regionalOptions[""].invalidYear);return(r.year()<0?"-":"")+l1(Math.abs(r.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Pr.local.invalidYear||Pr.regionalOptions[""].invalidYear),12},monthOfYear:function(e,r){var t=this._validate(e,r,this.minDay,Pr.local.invalidMonth||Pr.regionalOptions[""].invalidMonth);return(t.month()+this.monthsInYear(t)-this.firstMonth)%this.monthsInYear(t)+this.minMonth},fromMonthOfYear:function(e,r){var t=(r+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,t,this.minDay,Pr.local.invalidMonth||Pr.regionalOptions[""].invalidMonth),t},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Pr.local.invalidYear||Pr.regionalOptions[""].invalidYear);return this.leapYear(r)?366:365},dayOfYear:function(e,r,t){var a=this._validate(e,r,t,Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate);return a.toJD()-this.newDate(a.year(),this.fromMonthOfYear(a.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(a))+2)%this.daysInWeek()},extraInfo:function(e,r,t){return this._validate(e,r,t,Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate),{}},add:function(e,r,t){return this._validate(e,this.minMonth,this.minDay,Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,r,t),r,t)},_add:function(e,r,t){if(this._validateLevel++,t==="d"||t==="w"){var a=e.toJD()+r*(t==="w"?this.daysInWeek():1),n=e.calendar().fromJD(a);return this._validateLevel--,[n.year(),n.month(),n.day()]}try{var i=e.year()+(t==="y"?r:0),l=e.monthOfYear()+(t==="m"?r:0),n=e.day(),o=function(f){for(;lv-1+f.minMonth;)i++,l-=v,v=f.monthsInYear(i)};t==="y"?(e.month()!==this.fromMonthOfYear(i,l)&&(l=this.newDate(i,e.month(),this.minDay).monthOfYear()),l=Math.min(l,this.monthsInYear(i)),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,l)))):t==="m"&&(o(this),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,l))));var s=[i,this.fromMonthOfYear(i,l),n];return this._validateLevel--,s}catch(u){throw this._validateLevel--,u}},_correctAdd:function(e,r,t,a){if(!this.hasYearZero&&(a==="y"||a==="m")&&(r[0]===0||e.year()>0!=r[0]>0)){var n={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[a],i=t<0?-1:1;r=this._add(e,t*n[0]+i*n[1],n[2])}return e.date(r[0],r[1],r[2])},set:function(e,r,t){this._validate(e,this.minMonth,this.minDay,Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate);var a=t==="y"?r:e.year(),n=t==="m"?r:e.month(),i=t==="d"?r:e.day();return(t==="y"||t==="m")&&(i=Math.min(i,this.daysInMonth(a,n))),e.date(a,n,i)},isValid:function(e,r,t){this._validateLevel++;var a=this.hasYearZero||e!==0;if(a){var n=this.newDate(e,r,this.minDay);a=r>=this.minMonth&&r-this.minMonth=this.minDay&&t-this.minDay13.5?13:1),u=n-(s>2.5?4716:4715);return u<=0&&u--,this.newDate(u,s,o)},toJSDate:function(e,r,t){var a=this._validate(e,r,t,Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate),n=new Date(a.year(),a.month()-1,a.day());return n.setHours(0),n.setMinutes(0),n.setSeconds(0),n.setMilliseconds(0),n.setHours(n.getHours()>12?n.getHours()+2:0),n},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var Pr=Sz.exports=new kz;Pr.cdate=M3;Pr.baseCalendar=A3;Pr.calendars.gregorian=k3});var Cz=Z(()=>{var S3=Sa(),oa=Ca();S3(oa.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});oa.local=oa.regionalOptions[""];S3(oa.cdate.prototype,{formatDate:function(e,r){return typeof e!="string"&&(r=e,e=""),this._calendar.formatDate(e||"",this,r)}});S3(oa.baseCalendar.prototype,{UNIX_EPOCH:oa.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:oa.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,r,t){if(typeof e!="string"&&(t=r,r=e,e=""),!r)return"";if(r.calendar()!==this)throw oa.local.invalidFormat||oa.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,t=t||{};for(var a=t.dayNamesShort||this.local.dayNamesShort,n=t.dayNames||this.local.dayNames,i=t.monthNumbers||this.local.monthNumbers,l=t.monthNamesShort||this.local.monthNamesShort,o=t.monthNames||this.local.monthNames,s=t.calculateWeek||this.local.calculateWeek,u=function(b,M){for(var C=1;T+C1},f=function(b,M,C,k){var q=""+M;if(u(b,k))for(;q.length1},w=function(F,I){var H=_(F,I),J=[2,3,H?4:2,H?4:2,10,11,20]["oyYJ@!".indexOf(F)+1],X=new RegExp("^-?\\d{1,"+J+"}"),Y=r.substring(q).match(X);if(!Y)throw(oa.local.missingNumberAt||oa.regionalOptions[""].missingNumberAt).replace(/\{0\}/,q);return q+=Y[0].length,parseInt(Y[0],10)},T=this,b=function(){if(typeof o=="function"){_("m");var F=o.call(T,r.substring(q));return q+=F.length,F}return w("m")},M=function(F,I,H,J){for(var X=_(F,J)?H:I,Y=0;Y-1){h=1,d=m;for(var z=this.daysInMonth(v,h);d>z;z=this.daysInMonth(v,h))h++,d-=z}return f>-1?this.fromJD(f):this.newDate(v,h,d)},determineDate:function(e,r,t,a,n){t&&typeof t!="object"&&(n=a,a=t,t=null),typeof a!="string"&&(n=a,a="");var i=this,l=function(o){try{return i.parseDate(a,o,n)}catch(v){}o=o.toLowerCase();for(var s=(o.match(/^c/)&&t?t.newDate():null)||i.today(),u=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,f=u.exec(o);f;)s.add(parseInt(f[1],10),f[2]||"d"),f=u.exec(o);return s};return r=r?r.newDate():null,e=e==null?r:typeof e=="string"?l(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?r:i.today().add(e,"d"):i.newDate(e),e}})});var Lz=Z(()=>{var Fl=Ca(),One=Sa(),C3=Fl.instance();function s1(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}s1.prototype=new Fl.baseCalendar;One(s1.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,r){if(typeof e=="string"){var t=e.match(Yne);return t?t[0]:""}var a=this._validateYear(e),n=e.month(),i=""+this.toChineseMonth(a,n);return r&&i.length<2&&(i="0"+i),this.isIntercalaryMonth(a,n)&&(i+="i"),i},monthNames:function(e){if(typeof e=="string"){var r=e.match(Une);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},monthNamesShort:function(e){if(typeof e=="string"){var r=e.match(Vne);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},parseMonth:function(e,r){e=this._validateYear(e);var t=parseInt(r),a;if(isNaN(t))r[0]==="\u95F0"&&(a=!0,r=r.substring(1)),r[r.length-1]==="\u6708"&&(r=r.substring(0,r.length-1)),t=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(r);else{var n=r[r.length-1];a=n==="i"||n==="I"}var i=this.toMonthIndex(e,t,a);return i},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,r){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw r.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,r,t){var a=this.intercalaryMonth(e),n=t&&r!==a;if(n||r<1||r>12)throw Fl.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return a?!t&&r<=a?i=r-1:i=r:i=r-1,i},toChineseMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e),a=t?12:11;if(r<0||r>a)throw Fl.local.invalidMonth.replace(/\{0\}/,this.local.name);var n;return t?r>13;return t},isIntercalaryMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e);return!!t&&t===r},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,r,t){var a=this._validateYear(e,Fl.local.invalidyear),n=Hl[a-Hl[0]],i=n>>9&4095,l=n>>5&15,o=n&31,s;s=C3.newDate(i,l,o),s.add(4-(s.dayOfWeek()||7),"d");var u=this.toJD(e,r,t)-s.toJD();return 1+Math.floor(u/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,r){e.year&&(r=e.month(),e=e.year()),e=this._validateYear(e);var t=Il[e-Il[0]],a=t>>13,n=a?12:11;if(r>n)throw Fl.local.invalidMonth.replace(/\{0\}/,this.local.name);var i=t&1<<12-r?30:29;return i},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,i,t,Fl.local.invalidDate);e=this._validateYear(a.year()),r=a.month(),t=a.day();var n=this.isIntercalaryMonth(e,r),i=this.toChineseMonth(e,r),l=Wne(e,i,t,n);return C3.toJD(l.year,l.month,l.day)},fromJD:function(e){var r=C3.fromJD(e),t=Gne(r.year(),r.month(),r.day()),a=this.toMonthIndex(t.year,t.month,t.isIntercalary);return this.newDate(t.year,a,t.day)},fromString:function(e){var r=e.match(Bne),t=this._validateYear(+r[1]),a=+r[2],n=!!r[3],i=this.toMonthIndex(t,a,n),l=+r[4];return this.newDate(t,i,l)},add:function(e,r,t){var a=e.year(),n=e.month(),i=this.isIntercalaryMonth(a,n),l=this.toChineseMonth(a,n),o=Object.getPrototypeOf(s1.prototype).add.call(this,e,r,t);if(t==="y"){var s=o.year(),u=o.month(),f=this.isIntercalaryMonth(s,l),v=i&&f?this.toMonthIndex(s,l,!0):this.toMonthIndex(s,l,!1);v!==u&&o.month(v)}return o}});var Bne=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,Yne=/^\d?\d[iI]?/m,Une=/^闰?十?[一二三四五六七八九]?月/m,Vne=/^闰?十?[一二三四五六七八九]?/m;Fl.calendars.chinese=s1;var Il=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],Hl=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function Gne(e,r,t,a){var n,i;if(typeof e=="object")n=e,i=r||{};else{var l=typeof e=="number"&&e>=1888&&e<=2111;if(!l)throw new Error("Solar year outside range 1888-2111");var o=typeof r=="number"&&r>=1&&r<=12;if(!o)throw new Error("Solar month outside range 1 - 12");var s=typeof t=="number"&&t>=1&&t<=31;if(!s)throw new Error("Solar day outside range 1 - 31");n={year:e,month:r,day:t},i=a||{}}var u=Hl[n.year-Hl[0]],f=n.year<<9|n.month<<5|n.day;i.year=f>=u?n.year:n.year-1,u=Hl[i.year-Hl[0]];var v=u>>9&4095,h=u>>5&15,d=u&31,m,y=new Date(v,h-1,d),g=new Date(n.year,n.month-1,n.day);m=Math.round((g-y)/(24*3600*1e3));var _=Il[i.year-Il[0]],w;for(w=0;w<13;w++){var T=_&1<<12-w?30:29;if(m>13;return!b||w=1888&&e<=2111;if(!o)throw new Error("Lunar year outside range 1888-2111");var s=typeof r=="number"&&r>=1&&r<=12;if(!s)throw new Error("Lunar month outside range 1 - 12");var u=typeof t=="number"&&t>=1&&t<=30;if(!u)throw new Error("Lunar day outside range 1 - 30");var f;typeof a=="object"?(f=!1,i=a):(f=!!a,i=n||{}),l={year:e,month:r,day:t,isIntercalary:f}}var v;v=l.day-1;var h=Il[l.year-Il[0]],d=h>>13,m;d&&(l.month>d||l.isIntercalary)?m=l.month:m=l.month-1;for(var y=0;y>9&4095,T=_>>5&15,b=_&31,M=new Date(w,T-1,b+v);return i.year=M.getFullYear(),i.month=1+M.getMonth(),i.day=M.getDate(),i}});var qz=Z(()=>{var Wo=Ca(),Zne=Sa();function L3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}L3.prototype=new Wo.baseCalendar;Zne(L3.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Wo.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Wo.local.invalidYear||Wo.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Wo.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,Wo.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});Wo.calendars.coptic=L3});var Dz=Z(()=>{var ji=Ca(),Xne=Sa();function q3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}q3.prototype=new ji.baseCalendar;Xne(q3.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,ji.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ji.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ji.local.invalidYear),400},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/8)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,ji.local.invalidMonth);return this.daysPerMonth[t.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,ji.local.invalidDate);return(a.day()+1)%8},weekDay:function(e,r,t){var a=this.dayOfWeek(e,r,t);return a>=2&&a<=6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,ji.local.invalidDate);return{century:Jne[Math.floor((a.year()-1)/100)+1]||""}},toJD:function(e,r,t){var a=this._validate(e,r,t,ji.local.invalidDate);return e=a.year()+(a.year()<0?1:0),r=a.month(),t=a.day(),t+(r>1?16:0)+(r>2?(r-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var r=Math.floor(e/400)+1;e-=(r-1)*400,e+=e>15?16:0;var t=Math.floor(e/32)+1,a=e-(t-1)*32+1;return this.newDate(r<=0?r-1:r,t,a)}});var Jne={20:"Fruitbat",21:"Anchovy"};ji.calendars.discworld=q3});var Ez=Z(()=>{var Zo=Ca(),Kne=Sa();function D3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}D3.prototype=new Zo.baseCalendar;Kne(D3.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Zo.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Zo.local.invalidYear||Zo.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Zo.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,Zo.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});Zo.calendars.ethiopian=D3});var Pz=Z(()=>{var Ol=Ca(),Qne=Sa();function E3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}E3.prototype=new Ol.baseCalendar;Qne(E3.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Ol.local.invalidYear);return this._leapYear(r.year())},_leapYear:function(e){return e=e<0?e+1:e,u1(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ol.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Ol.local.invalidYear);return e=r.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,Ol.local.invalidMonth),r===12&&this.leapYear(e)||r===8&&u1(this.daysInYear(e),10)===5?30:r===9&&u1(this.daysInYear(e),10)===3?29:this.daysPerMonth[r-1]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Ol.local.invalidDate);return{yearType:(this.leapYear(a)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(a)%10-3]}},toJD:function(e,r,t){var a=this._validate(e,r,t,Ol.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=e<=0?e+1:e,i=this.jdEpoch+this._delay1(n)+this._delay2(n)+t+1;if(r<7){for(var l=7;l<=this.monthsInYear(e);l++)i+=this.daysInMonth(e,l);for(var l=1;l=this.toJD(r===-1?1:r+1,7,1);)r++;for(var t=ethis.toJD(r,t,this.daysInMonth(r,t));)t++;var a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});function u1(e,r){return e-r*Math.floor(e/r)}Ol.calendars.hebrew=E3});var Rz=Z(()=>{var Dc=Ca(),$ne=Sa();function P3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}P3.prototype=new Dc.baseCalendar;$ne(P3.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Dc.local.invalidYear);return(r.year()*11+14)%30<11},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Dc.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,Dc.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e=e<=0?e+1:e,t+Math.ceil(29.5*(r-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=Math.floor((30*(e-this.jdEpoch)+10646)/10631);r=r<=0?r-1:r;var t=Math.min(12,Math.ceil((e-29-this.toJD(r,1,1))/29.5)+1),a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});Dc.calendars.islamic=P3});var zz=Z(()=>{var Ec=Ca(),jne=Sa();function R3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}R3.prototype=new Ec.baseCalendar;jne(R3.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Ec.local.invalidYear),t=r.year()<0?r.year()+1:r.year();return t%4===0},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(4-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Ec.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,Ec.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e<0&&e++,r<=2&&(e--,r+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(r+1))+t-1524.5},fromJD:function(e){var r=Math.floor(e+.5),t=r+1524,a=Math.floor((t-122.1)/365.25),n=Math.floor(365.25*a),i=Math.floor((t-n)/30.6001),l=i-Math.floor(i<14?1:13),o=a-Math.floor(l>2?4716:4715),s=t-n-Math.floor(30.6001*i);return o<=0&&o--,this.newDate(o,l,s)}});Ec.calendars.julian=R3});var Fz=Z(()=>{var Hn=Ca(),eie=Sa();function N3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}N3.prototype=new Hn.baseCalendar;eie(N3.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Hn.local.invalidYear),!1},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Hn.local.invalidYear);e=r.year();var t=Math.floor(e/400);e=e%400,e+=e<0?400:0;var a=Math.floor(e/20);return t+"."+a+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var r=0,t=0;t19||t>0&&a<0)throw"Invalid Mayan year";r=r*20+a}return r},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Hn.local.invalidYear),18},weekOfYear:function(e,r,t){return this._validate(e,r,t,Hn.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Hn.local.invalidYear),360},daysInMonth:function(e,r){return this._validate(e,r,this.minDay,Hn.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Hn.local.invalidDate);return a.day()},weekDay:function(e,r,t){return this._validate(e,r,t,Hn.local.invalidDate),!0},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Hn.local.invalidDate),n=a.toJD(),i=this._toHaab(n),l=this._toTzolkin(n);return{haabMonthName:this.local.haabMonths[i[0]-1],haabMonth:i[0],haabDay:i[1],tzolkinDayName:this.local.tzolkinMonths[l[0]-1],tzolkinDay:l[0],tzolkinTrecena:l[1]}},_toHaab:function(e){e-=this.jdEpoch;var r=z3(e+8+17*20,365);return[Math.floor(r/20)+1,z3(r,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[Nz(e+20,20),Nz(e+4,13)]},toJD:function(e,r,t){var a=this._validate(e,r,t,Hn.local.invalidDate);return a.day()+a.month()*20+a.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var r=Math.floor(e/360);e=e%360,e+=e<0?360:0;var t=Math.floor(e/20),a=e%20;return this.newDate(r,t,a)}});function z3(e,r){return e-r*Math.floor(e/r)}function Nz(e,r){return z3(e-1,r)+1}Hn.calendars.mayan=N3});var Hz=Z(()=>{var Xo=Ca(),rie=Sa();function F3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}F3.prototype=new Xo.baseCalendar;var Iz=Xo.instance("gregorian");rie(F3.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Xo.local.invalidYear||Xo.regionalOptions[""].invalidYear);return Iz.leapYear(r.year()+(r.year()<1?1:0)+1469)},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(1-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Xo.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,Xo.local.invalidMonth),n=a.year();n<0&&n++;for(var i=a.day(),l=1;l=this.toJD(r+1,1,1);)r++;for(var t=e-Math.floor(this.toJD(r,1,1)+.5)+1,a=1;t>this.daysInMonth(r,a);)t-=this.daysInMonth(r,a),a++;return this.newDate(r,a,t)}});Xo.calendars.nanakshahi=F3});var Oz=Z(()=>{var Jo=Ca(),tie=Sa();function I3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}I3.prototype=new Jo.baseCalendar;tie(I3.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Jo.local.invalidYear);if(e=r.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var t=0,a=this.minMonth;a<=12;a++)t+=this.NEPALI_CALENDAR_DATA[e][a];return t},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,Jo.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[r-1]:this.NEPALI_CALENDAR_DATA[e][r]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},toJD:function(e,r,t){var a=this._validate(e,r,t,Jo.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=Jo.instance(),i=0,l=r,o=e;this._createMissingCalendarData(e);var s=e-(l>9||l===9&&t>=this.NEPALI_CALENDAR_DATA[o][0]?56:57);for(r!==9&&(i=t,l--);l!==9;)l<=0&&(l=12,o--),i+=this.NEPALI_CALENDAR_DATA[o][l],l--;return r===9?(i+=t-this.NEPALI_CALENDAR_DATA[o][0],i<0&&(i+=n.daysInYear(s))):i+=this.NEPALI_CALENDAR_DATA[o][9]-this.NEPALI_CALENDAR_DATA[o][0],n.newDate(s,1,1).add(i,"d").toJD()},fromJD:function(e){var r=Jo.instance(),t=r.fromJD(e),a=t.year(),n=t.dayOfYear(),i=a+56;this._createMissingCalendarData(i);for(var l=9,o=this.NEPALI_CALENDAR_DATA[i][0],s=this.NEPALI_CALENDAR_DATA[i][l]-o+1;n>s;)l++,l>12&&(l=1,i++),s+=this.NEPALI_CALENDAR_DATA[i][l];var u=this.NEPALI_CALENDAR_DATA[i][l]-(s-n);return this.newDate(i,l,u)},_createMissingCalendarData:function(e){var r=this.daysPerMonth.slice(0);r.unshift(17);for(var t=e-1;t{var Su=Ca(),aie=Sa();function c1(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function f1(e){var r=e-475;e<0&&r++;var t=.242197,a=t*r,n=t*(r+1),i=a-Math.floor(a),l=n-Math.floor(n);return i>l}c1.prototype=new Su.baseCalendar;aie(c1.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Su.local.invalidYear);return f1(r.year())},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-((a.dayOfWeek()+1)%7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Su.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,Su.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=0;if(e>0)for(var i=1;i0?e-1:e)*365+n+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=475+(e-this.toJD(475,1,1))/365.242197,t=Math.floor(r);t<=0&&t--,e>this.toJD(t,12,f1(t)?30:29)&&(t++,t===0&&t++);var a=e-this.toJD(t,1,1)+1,n=a<=186?Math.ceil(a/31):Math.ceil((a-6)/30),i=e-this.toJD(t,n,1)+1;return this.newDate(t,n,i)}});Su.calendars.persian=c1;Su.calendars.jalali=c1});var Yz=Z(()=>{var Ko=Ca(),nie=Sa(),v1=Ko.instance();function H3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}H3.prototype=new Ko.baseCalendar;nie(H3.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Ko.local.invalidYear),t=this._t2gYear(r.year());return v1.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,Ko.local.invalidYear),n=this._t2gYear(a.year());return v1.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Ko.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,Ko.local.invalidDate),n=this._t2gYear(a.year());return v1.toJD(n,a.month(),a.day())},fromJD:function(e){var r=v1.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Ko.calendars.taiwan=H3});var Uz=Z(()=>{var Qo=Ca(),iie=Sa(),h1=Qo.instance();function O3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}O3.prototype=new Qo.baseCalendar;iie(O3.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Qo.local.invalidYear),t=this._t2gYear(r.year());return h1.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,Qo.local.invalidYear),n=this._t2gYear(a.year());return h1.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Qo.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,Qo.local.invalidDate),n=this._t2gYear(a.year());return h1.toJD(n,a.month(),a.day())},fromJD:function(e){var r=h1.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});Qo.calendars.thai=O3});var Vz=Z(()=>{var $o=Ca(),lie=Sa();function B3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}B3.prototype=new $o.baseCalendar;lie(B3.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,$o.local.invalidYear);return this.daysInYear(r.year())===355},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var r=0,t=1;t<=12;t++)r+=this.daysInMonth(e,t);return r},daysInMonth:function(e,r){for(var t=this._validate(e,r,this.minDay,$o.local.invalidMonth),a=t.toJD()-24e5+.5,n=0,i=0;ia)return Bl[n]-Bl[n-1];n++}return 30},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,$o.local.invalidDate),n=12*(a.year()-1)+a.month()-15292,i=a.day()+Bl[n-1]-1;return i+24e5-.5},fromJD:function(e){for(var r=e-24e5+.5,t=0,a=0;ar);a++)t++;var n=t+15292,i=Math.floor((n-1)/12),l=i+1,o=n-12*i,s=r-Bl[t-1]+1;return this.newDate(l,o,s)},isValid:function(e,r,t){var a=$o.baseCalendar.prototype.isValid.apply(this,arguments);return a&&(e=e.year!=null?e.year:e,a=e>=1276&&e<=1500),a},_validate:function(e,r,t,a){var n=$o.baseCalendar.prototype._validate.apply(this,arguments);if(n.year<1276||n.year>1500)throw a.replace(/\{0\}/,this.local.name);return n}});$o.calendars.ummalqura=B3;var Bl=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var Wz=Z((i0e,Gz)=>{"use strict";Gz.exports=Ca();Cz();Lz();qz();Dz();Ez();Pz();Rz();zz();Fz();Hz();Oz();Bz();Yz();Uz();Vz()});var jz=Z((l0e,$z)=>{"use strict";var Xz=Wz(),Pc=Ie(),Jz=Vt(),oie=Jz.EPOCHJD,sie=Jz.ONEDAY,V3={valType:"enumerated",values:Pc.sortObjectKeys(Xz.calendars),editType:"calc",dflt:"gregorian"},Kz=function(e,r,t,a){var n={};return n[t]=V3,Pc.coerce(e,r,n,t,a)},uie=function(e,r,t,a){for(var n=0;n{"use strict";eN.exports=jz()});var pie=Z((s0e,aN)=>{var tN=MP();tN.register([ER(),Tz(),rN()]);aN.exports=tN});return pie();})(); +"use strict";var Plotly=(()=>{var iI=Object.defineProperty,lI=Object.defineProperties;var oI=Object.getOwnPropertyDescriptors;var sb=Object.getOwnPropertySymbols;var sI=Object.prototype.hasOwnProperty,uI=Object.prototype.propertyIsEnumerable;var ub=(e,r,t)=>r in e?iI(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,Kl=(e,r)=>{for(var t in r||(r={}))sI.call(r,t)&&ub(e,t,r[t]);if(sb)for(var t of sb(r))uI.call(r,t)&&ub(e,t,r[t]);return e},ov=(e,r)=>lI(e,oI(r));var Z=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var sv=Z(fb=>{"use strict";fb.version="3.3.1"});var vb=Z((cb,uv)=>{(function(r,t,a){t[r]=t[r]||a(),typeof uv!="undefined"&&uv.exports&&(uv.exports=t[r])})("Promise",typeof window!="undefined"?window:cb,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,M){return Object.defineProperty(w,T,{value:b,writable:!0,configurable:M!==!1})}}catch(_){r=function(T,b,M){return T[b]=M,T}}a=function(){var w,T,b;function M(C,k){this.fn=C,this.self=k,this.next=void 0}return{add:function(k,q){b=new M(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 M=0;M{(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,A=new Array(x);x--;)A[x]=p[x];return A}}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,A){s.call(this,p,x,A+"")},u.setProperty=function(p,x,A){f.call(this,p,x+"",A)}}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,A=c.length,S,L;if(arguments.length===1){for(;++x=L){S=L;break}for(;++xL&&(S=L)}else{for(;++x=L){S=L;break}for(;++xL&&(S=L)}return S},e.max=function(c,p){var x=-1,A=c.length,S,L;if(arguments.length===1){for(;++x=L){S=L;break}for(;++xS&&(S=L)}else{for(;++x=L){S=L;break}for(;++xS&&(S=L)}return S},e.extent=function(c,p){var x=-1,A=c.length,S,L,P;if(arguments.length===1){for(;++x=L){S=P=L;break}for(;++xL&&(S=L),P=L){S=P=L;break}for(;++xL&&(S=L),P1)return P/(N-1)},e.deviation=function(){var c=e.variance.apply(this,arguments);return c&&Math.sqrt(c)};function m(c){return{left:function(p,x,A,S){for(arguments.length<3&&(A=0),arguments.length<4&&(S=p.length);A>>1;c(p[L],x)<0?A=L+1:S=L}return A},right:function(p,x,A,S){for(arguments.length<3&&(A=0),arguments.length<4&&(S=p.length);A>>1;c(p[L],x)>0?S=L:A=L+1}return A}}}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){(A=arguments.length)<3&&(x=c.length,A<2&&(p=0));for(var A=x-p,S,L;A;)L=Math.random()*A--|0,S=c[A+p],c[A+p]=c[L+p],c[L+p]=S;return c},e.permute=function(c,p){for(var x=p.length,A=new Array(x);x--;)A[x]=c[p[x]];return A},e.pairs=function(c){for(var p=0,x=c.length-1,A,S=c[0],L=new Array(x<0?0:x);p=0;)for(P=c[p],x=P.length;--x>=0;)L[--S]=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 A=[],S=w(_(x)),L=-1,P;if(c*=S,p*=S,x*=S,x<0)for(;(P=c+x*++L)>p;)A.push(P/S);else for(;(P=c+x*++L)=p.length)return S?S.call(c,N):A?N.sort(A):N;for(var W=-1,j=N.length,ee=p[V++],he,Te,te,oe=new b,ue;++W=p.length)return E;var V=[],W=x[N++];return E.forEach(function(j,ee){V.push({key:j,values:P(ee,N)})}),W?V.sort(function(j,ee){return W(j.key,ee.key)}):V}return c.map=function(E,N){return L(N,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 A=E,c},c.rollup=function(E){return S=E,c},c},e.set=function(c){var p=new O;if(c)for(var x=0,A=c.length;x=0&&(A=c.slice(x+1),c=c.slice(0,x)),c)return arguments.length<2?this[c].on(A):this[c].on(A,p);if(arguments.length===2){if(p==null)for(c in this)this.hasOwnProperty(c)&&this[c].on(A,null);return this}};function Q(c){var p=[],x=new b;function A(){for(var S=p,L=-1,P=S.length,E;++L=0&&(x=c.slice(0,p))!=="xmlns"&&(c=c.slice(p+1)),ye.hasOwnProperty(x)?{space:ye[x],local:c}:c}},ge.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(we(p,c[p]));return this}return this.each(we(c,p))};function we(c,p){c=e.ns.qualify(c);function x(){this.removeAttribute(c)}function A(){this.removeAttributeNS(c.space,c.local)}function S(){this.setAttribute(c,p)}function L(){this.setAttributeNS(c.space,c.local,p)}function P(){var N=p.apply(this,arguments);N==null?this.removeAttribute(c):this.setAttribute(c,N)}function E(){var N=p.apply(this,arguments);N==null?this.removeAttributeNS(c.space,c.local):this.setAttributeNS(c.space,c.local,N)}return p==null?c.local?A:x:typeof p=="function"?c.local?E:P:c.local?L:S}function pe(c){return c.trim().replace(/\s+/g," ")}ge.classed=function(c,p){if(arguments.length<2){if(typeof c=="string"){var x=this.node(),A=(c=Fe(c)).length,S=-1;if(p=x.classList){for(;++S=0;)(L=x[A])&&(S&&S!==L.nextSibling&&S.parentNode.insertBefore(L,S),S=L);return this},ge.sort=function(c){c=be.apply(this,arguments);for(var p=-1,x=this.length;++p=p&&(p=S+1);!(N=P[p])&&++p0&&(c=c.slice(0,S));var P=Oe.get(c);P&&(c=P,L=We);function E(){var W=this[A];W&&(this.removeEventListener(c,W,W.$),delete this[A])}function N(){var W=L(p,t(arguments));E.call(this),this.addEventListener(c,this[A]=W,W.$=x),W._=p}function V(){var W=new RegExp("^__on([^.]+)"+e.requote(c)+"$"),j;for(var ee in this)if(j=ee.match(W)){var he=this[ee];this.removeEventListener(j[1],he,he.$),delete this[ee]}}return S?p?N:E:p?Y:V}var Oe=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Oe.forEach(function(c){"on"+c in a&&Oe.remove(c)});function Je(c,p){return function(x){var A=e.event;e.event=x,p[0]=this.__data__;try{c.apply(this,p)}finally{e.event=A}}}function We(c,p){var x=Je(c,p);return function(A){var S=this,L=A.relatedTarget;(!L||L!==S&&!(L.compareDocumentPosition(S)&8))&&x.call(S,A)}}var Ze,lr=0;function tr(c){var p=".dragsuppress-"+ ++lr,x="click"+p,A=e.select(i(c)).on("touchmove"+p,ne).on("dragstart"+p,ne).on("selectstart"+p,ne);if(Ze==null&&(Ze="onselectstart"in c?!1:G(c.style,"userSelect")),Ze){var S=n(c).style,L=S[Ze];S[Ze]="none"}return function(P){if(A.on(p,null),Ze&&(S[Ze]=L),P){var E=function(){A.on(x,null)};A.on(x,function(){ne(),E()},!0),setTimeout(E,0)}}}e.mouse=function(c){return ze(c,me())};var Qe=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 A=x.createSVGPoint();if(Qe<0){var S=i(c);if(S.scrollX||S.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();Qe=!(L.f||L.e),x.remove()}}return Qe?(A.x=p.pageX,A.y=p.pageY):(A.x=p.clientX,A.y=p.clientY),A=A.matrixTransform(c.getScreenCTM().inverse()),[A.x,A.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 A=0,S=p.length,L;A0?1:c<0?-1:0}function it(c,p,x){return(p[0]-c[0])*(x[1]-c[1])-(p[1]-c[1])*(x[0]-c[0])}function _t(c){return c>1?0:c<-1?De:Math.acos(c)}function yt(c){return c>1?sr:c<-1?-sr:Math.asin(c)}function Dt(c){return((c=Math.exp(c))-1/c)/2}function Kt(c){return((c=Math.exp(c))+1/c)/2}function La(c){return((c=Math.exp(2*c))-1)/(c+1)}function sa(c){return(c=Math.sin(c/2))*c}var ua=Math.SQRT2,vr=2,lt=4;e.interpolateZoom=function(c,p){var x=c[0],A=c[1],S=c[2],L=p[0],P=p[1],E=p[2],N=L-x,V=P-A,W=N*N+V*V,j,ee;if(W0&&(je=je.transition().duration(P)),je.call(Ae.event)}function dr(){oe&&oe.domain(te.range().map(function(je){return(je-c.x)/c.k}).map(te.invert)),xe&&xe.domain(ue.range().map(function(je){return(je-c.y)/c.k}).map(ue.invert))}function pr(je){E++||je({type:"zoomstart"})}function Cr(je){dr(),je({type:"zoom",scale:c.k,translate:[c.x,c.y]})}function mr(je){--E||(je({type:"zoomend"}),x=null)}function Tr(){var je=this,Lr=Te.of(je,arguments),qr=0,Kr=e.select(i(je)).on(V,da).on(W,Da),Tt=ve(e.mouse(je)),Ut=tr(je);av.call(je),pr(Lr);function da(){qr=1,ur(e.mouse(je),Tt),Cr(Lr)}function Da(){Kr.on(V,null).on(W,null),Ut(qr),mr(Lr)}}function Jr(){var je=this,Lr=Te.of(je,arguments),qr={},Kr=0,Tt,Ut=".zoom-"+e.event.changedTouches[0].identifier,da="touchmove"+Ut,Da="touchend"+Ut,Ba=[],Ea=e.select(je),Va=tr(je);Ga(),pr(Lr),Ea.on(N,null).on(ee,Ga);function wa(){var Yn=e.touches(je);return Tt=c.k,Yn.forEach(function(pa){pa.identifier in qr&&(qr[pa.identifier]=ve(pa))}),Yn}function Ga(){var Yn=e.event.target;e.select(Yn).on(da,Xl).on(Da,nI),Ba.push(Yn);for(var pa=e.event.changedTouches,gn=0,hi=pa.length;gn1){var Jl=bn[0],tl=bn[1],lv=Jl[0]-tl[0],ob=Jl[1]-tl[1];Kr=lv*lv+ob*ob}}function Xl(){var Yn=e.touches(je),pa,gn,hi,bn;av.call(je);for(var ss=0,Jl=Yn.length;ss1?1:p,x=x<0?0:x>1?1:x,S=x<=.5?x*(1+p):x+p-x*p,A=2*x-S;function L(E){return E>360?E-=360:E<0&&(E+=360),E<60?A+(S-A)*E/60:E<180?S:E<240?A+(S-A)*(240-E)/60:A}function P(E){return Math.round(L(E)*255)}return new qa(P(c+120),P(c),P(c-120))}e.hcl=Qt;function Qt(c,p,x){return this instanceof Qt?(this.h=+c,this.c=+p,void(this.l=+x)):arguments.length<2?c instanceof Qt?new Qt(c.h,c.c,c.l):c instanceof St?Nc(c.l,c.a,c.b):Nc((c=or((c=e.rgb(c)).r,c.g,c.b)).l,c.a,c.b):new Qt(c,p,x)}var ci=Qt.prototype=new bt;ci.brighter=function(c){return new Qt(this.h,this.c,Math.min(100,this.l+wt*(arguments.length?c:1)))},ci.darker=function(c){return new Qt(this.h,this.c,Math.max(0,this.l-wt*(arguments.length?c:1)))},ci.rgb=function(){return mn(this.h,this.c,this.l).rgb()};function mn(c,p,x){return isNaN(c)&&(c=0),isNaN(p)&&(p=0),new St(x,Math.cos(c*=Mr)*p,Math.sin(c)*p)}e.lab=St;function St(c,p,x){return this instanceof St?(this.l=+c,this.a=+p,void(this.b=+x)):arguments.length<2?c instanceof St?new St(c.l,c.a,c.b):c instanceof Qt?mn(c.h,c.c,c.l):or((c=qa(c)).r,c.g,c.b):new St(c,p,x)}var wt=18,ca=.95047,Yl=1,Ul=1.08883,el=St.prototype=new bt;el.brighter=function(c){return new St(Math.min(100,this.l+wt*(arguments.length?c:1)),this.a,this.b)},el.darker=function(c){return new St(Math.max(0,this.l-wt*(arguments.length?c:1)),this.a,this.b)},el.rgb=function(){return zc(this.l,this.a,this.b)};function zc(c,p,x){var A=(c+16)/116,S=A+p/500,L=A-x/200;return S=qu(S)*ca,A=qu(A)*Yl,L=qu(L)*Ul,new qa(Eu(3.2404542*S-1.5371385*A-.4985314*L),Eu(-.969266*S+1.8760108*A+.041556*L),Eu(.0556434*S-.2040259*A+1.0572252*L))}function Nc(c,p,x){return c>0?new Qt(Math.atan2(x,p)*Br,Math.sqrt(p*p+x*x),c):new Qt(NaN,NaN,c)}function qu(c){return c>.206893034?c*c*c:(c-4/29)/7.787037}function Du(c){return c>.008856?Math.pow(c,1/3):7.787037*c+4/29}function Eu(c){return Math.round(255*(c<=.00304?12.92*c:1.055*Math.pow(c,1/2.4)-.055))}e.rgb=qa;function qa(c,p,x){return this instanceof qa?(this.r=~~c,this.g=~~p,void(this.b=~~x)):arguments.length<2?c instanceof qa?new qa(c.r,c.g,c.b):Gr(""+c,qa,pn):new qa(c,p,x)}function Fc(c){return new qa(c>>16,c>>8&255,c&255)}function es(c){return Fc(c)+""}var rs=qa.prototype=new bt;rs.brighter=function(c){c=Math.pow(.7,arguments.length?c:1);var p=this.r,x=this.g,A=this.b,S=30;return!p&&!x&&!A?new qa(S,S,S):(p&&p>4,A=A>>4|A,S=N&240,S=S>>4|S,L=N&15,L=L<<4|L):c.length===7&&(A=(N&16711680)>>16,S=(N&65280)>>8,L=N&255)),p(A,S,L))}function jr(c,p,x){var A=Math.min(c/=255,p/=255,x/=255),S=Math.max(c,p,x),L=S-A,P,E,N=(S+A)/2;return L?(E=N<.5?L/(S+A):L/(2-S-A),c==S?P=(p-x)/L+(p0&&N<1?0:P),new Qr(P,E,N)}function or(c,p,x){c=va(c),p=va(p),x=va(x);var A=Du((.4124564*c+.3575761*p+.1804375*x)/ca),S=Du((.2126729*c+.7151522*p+.072175*x)/Yl),L=Du((.0193339*c+.119192*p+.9503041*x)/Ul);return St(116*S-16,500*(A-S),200*(S-L))}function va(c){return(c/=255)<=.04045?c/12.92:Math.pow((c+.055)/1.055,2.4)}function ot(c){var p=parseFloat(c);return c.charAt(c.length-1)==="%"?Math.round(p*2.55):p}var ha=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});ha.forEach(function(c,p){ha.set(c,Fc(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,A){return arguments.length===2&&typeof x=="function"&&(A=x,x=null),Vl(p,x,c,A)}}function Vl(c,p,x,A){var S={},L=e.dispatch("beforesend","progress","load","error"),P={},E=new XMLHttpRequest,N=null;self.XDomainRequest&&!("withCredentials"in E)&&/^(http(s)?:)?\/\//.test(c)&&(E=new XDomainRequest),"onload"in E?E.onload=E.onerror=V:E.onreadystatechange=function(){E.readyState>3&&V()};function V(){var W=E.status,j;if(!W&&lN(E)||W>=200&&W<300||W===304){try{j=x.call(S,E)}catch(ee){L.error.call(S,ee);return}L.load.call(S,j)}else L.error.call(S,E)}return E.onprogress=function(W){var j=e.event;e.event=W;try{L.progress.call(S,E)}finally{e.event=j}},S.header=function(W,j){return W=(W+"").toLowerCase(),arguments.length<2?P[W]:(j==null?delete P[W]:P[W]=j+"",S)},S.mimeType=function(W){return arguments.length?(p=W==null?null:W+"",S):p},S.responseType=function(W){return arguments.length?(N=W,S):N},S.response=function(W){return x=W,S},["get","post"].forEach(function(W){S[W]=function(){return S.send.apply(S,[W].concat(t(arguments)))}}),S.send=function(W,j,ee){if(arguments.length===2&&typeof j=="function"&&(ee=j,j=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),N!=null&&(E.responseType=N),ee!=null&&S.on("error",ee).on("load",function(Te){ee(null,Te)}),L.beforesend.call(S,E),E.send(j==null?null:j),S},S.abort=function(){return E.abort(),S},e.rebind(S,L,"on"),A==null?S:S.get(iN(A))}function iN(c){return c.length===1?function(p,x){c(p==null?x:null)}:c}function lN(c){var p=c.responseType;return p&&p!=="text"?c.response:c.responseText}e.dsv=function(c,p){var x=new RegExp('["'+c+` +]`),A=c.charCodeAt(0);function S(V,W,j){arguments.length<3&&(j=W,W=null);var ee=Vl(V,p,W==null?L:P(W),j);return ee.row=function(he){return arguments.length?ee.response((W=he)==null?L:P(he)):W},ee}function L(V){return S.parse(V.responseText)}function P(V){return function(W){return S.parse(W.responseText,V)}}S.parse=function(V,W){var j;return S.parseRows(V,function(ee,he){if(j)return j(ee,he-1);var Te=function(te){for(var oe={},ue=ee.length,xe=0;xe=Te)return ee;if(xe)return xe=!1,j;var Ue=te;if(V.charCodeAt(Ue)===34){for(var nr=Ue;nr++24?(isFinite(p)&&(clearTimeout(Bc),Bc=setTimeout(m1,p)),Oc=0):(Oc=1,Z3(m1))}e.timer.flush=function(){X3(),J3()};function X3(){for(var c=Date.now(),p=Ic;p;)c>=p.t&&p.c(c-p.t)&&(p.c=null),p=p.n;return c}function J3(){for(var c,p=Ic,x=1/0;p;)p.c?(p.t=0;--E)te.push(S[V[j[E]][2]]);for(E=+he;E1&&it(c[x[A-2]],c[x[A-1]],c[S])<=0;)--A;x[A++]=S}return x.slice(0,A)}function oN(c,p){return c[0]-p[0]||c[1]-p[1]}e.geom.polygon=function(c){return re(c,Uc),c};var Uc=e.geom.polygon.prototype=[];Uc.area=function(){for(var c=-1,p=this.length,x,A=this[p-1],S=0;++cle)E=E.L;else if(P=p-cN(E,x),P>le){if(!E.R){A=E;break}E=E.R}else{L>-le?(A=E.P,S=E):P>-le?(A=E,S=E.N):A=S=E;break}var N=e5(c);if(ns.insert(A,N),!(!A&&!S)){if(A===S){ls(A),S=e5(A.site),ns.insert(N,S),N.edge=S.edge=zu(A.site,N.site),is(A),is(S);return}if(!S){N.edge=zu(A.site,N.site);return}ls(A),ls(S);var V=A.site,W=V.x,j=V.y,ee=c.x-W,he=c.y-j,Te=S.site,te=Te.x-W,oe=Te.y-j,ue=2*(ee*oe-he*te),xe=ee*ee+he*he,Ae=te*te+oe*oe,ve={x:(oe*xe-he*Ae)/ue+W,y:(ee*Ae-te*xe)/ue+j};Vc(S.edge,V,Te,ve),N.edge=zu(V,c,null,ve),S.edge=zu(c,Te,null,ve),is(A),is(S)}}function r5(c,p){var x=c.site,A=x.x,S=x.y,L=S-p;if(!L)return A;var P=c.P;if(!P)return-1/0;x=P.site;var E=x.x,N=x.y,V=N-p;if(!V)return E;var W=E-A,j=1/L-1/V,ee=W/V;return j?(-ee+Math.sqrt(ee*ee-2*j*(W*W/(-2*V)-N+V/2+S-L/2)))/j+A:(A+E)/2}function cN(c,p){var x=c.N;if(x)return r5(x,p);var A=c.site;return A.y===p?A.x:1/0}function t5(c){this.site=c,this.edges=[]}t5.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(a5),c.length};function vN(c){for(var p=c[0][0],x=c[1][0],A=c[0][1],S=c[1][1],L,P,E,N,V=Gl,W=V.length,j,ee,he,Te,te,oe;W--;)if(j=V[W],!(!j||!j.prepare()))for(he=j.edges,Te=he.length,ee=0;eele||_(N-P)>le)&&(he.splice(ee,0,new Gc(yN(j.site,oe,_(E-p)le?{x:p,y:_(L-p)le?{x:_(P-S)le?{x,y:_(L-x)le?{x:_(P-A)=-Le)){var ee=N*N+V*V,he=W*W+oe*oe,Te=(oe*ee-V*he)/j,te=(N*he-W*ee)/j,oe=te+E,ue=j3.pop()||new hN;ue.arc=c,ue.site=S,ue.x=Te+P,ue.y=oe+Math.sqrt(Te*Te+te*te),ue.cy=oe,c.circle=ue;for(var xe=null,Ae=Ru._;Ae;)if(ue.y0)){if(te/=he,he<0){if(te0){if(te>ee)return;te>j&&(j=te)}if(te=x-E,!(!he&&te<0)){if(te/=he,he<0){if(te>ee)return;te>j&&(j=te)}else if(he>0){if(te0)){if(te/=Te,Te<0){if(te0){if(te>ee)return;te>j&&(j=te)}if(te=A-N,!(!Te&&te<0)){if(te/=Te,Te<0){if(te>ee)return;te>j&&(j=te)}else if(Te>0){if(te0&&(S.a={x:E+j*he,y:N+j*Te}),ee<1&&(S.b={x:E+ee*he,y:N+ee*Te}),S}}}}}}function pN(c){for(var p=as,x=dN(c[0][0],c[0][1],c[1][0],c[1][1]),A=p.length,S;A--;)S=p[A],(!mN(S,c)||!x(S)||_(S.a.x-S.b.x)=L)return;if(W>ee){if(!A)A={x:Te,y:P};else if(A.y>=E)return;x={x:Te,y:E}}else{if(!A)A={x:Te,y:E};else if(A.y1)if(W>ee){if(!A)A={x:(P-ue)/oe,y:P};else if(A.y>=E)return;x={x:(E-ue)/oe,y:E}}else{if(!A)A={x:(E-ue)/oe,y:E};else if(A.y=L)return;x={x:L,y:oe*L+ue}}else{if(!A)A={x:L,y:oe*L+ue};else if(A.x=W&&ue.x<=ee&&ue.y>=j&&ue.y<=he?[[W,he],[ee,he],[ee,j],[W,j]]:[];xe.point=N[te]}),V}function E(N){return N.map(function(V,W){return{x:Math.round(A(V,W)/le)*le,y:Math.round(S(V,W)/le)*le,i:W}})}return P.links=function(N){return w1(E(N)).edges.filter(function(V){return V.l&&V.r}).map(function(V){return{source:N[V.l.i],target:N[V.r.i]}})},P.triangles=function(N){var V=[];return w1(E(N)).cells.forEach(function(W,j){for(var ee=W.site,he=W.edges.sort(a5),Te=-1,te=he.length,oe,ue,xe=he[te-1].edge,Ae=xe.l===ee?xe.r:xe.l;++TeAe&&(Ae=W.x),W.y>ve&&(ve=W.y),he.push(W.x),Te.push(W.y);else for(te=0;teAe&&(Ae=Ue),nr>ve&&(ve=nr),he.push(Ue),Te.push(nr)}var ur=Ae-ue,ir=ve-xe;ur>ir?ve=xe+ur:Ae=ue+ir;function dr(mr,Tr,Jr,Et,rt,je,Lr,qr){if(!(isNaN(Jr)||isNaN(Et)))if(mr.leaf){var Kr=mr.x,Tt=mr.y;if(Kr!=null)if(_(Kr-Jr)+_(Tt-Et)<.01)pr(mr,Tr,Jr,Et,rt,je,Lr,qr);else{var Ut=mr.point;mr.x=mr.y=mr.point=null,pr(mr,Ut,Kr,Tt,rt,je,Lr,qr),pr(mr,Tr,Jr,Et,rt,je,Lr,qr)}else mr.x=Jr,mr.y=Et,mr.point=Tr}else pr(mr,Tr,Jr,Et,rt,je,Lr,qr)}function pr(mr,Tr,Jr,Et,rt,je,Lr,qr){var Kr=(rt+Lr)*.5,Tt=(je+qr)*.5,Ut=Jr>=Kr,da=Et>=Tt,Da=da<<1|Ut;mr.leaf=!1,mr=mr.nodes[Da]||(mr.nodes[Da]=l5()),Ut?rt=Kr:Lr=Kr,da?je=Tt:qr=Tt,dr(mr,Tr,Jr,Et,rt,je,Lr,qr)}var Cr=l5();if(Cr.add=function(mr){dr(Cr,mr,+j(mr,++te),+ee(mr,te),ue,xe,Ae,ve)},Cr.visit=function(mr){Iu(mr,Cr,ue,xe,Ae,ve)},Cr.find=function(mr){return wN(Cr,mr[0],mr[1],ue,xe,Ae,ve)},te=-1,p==null){for(;++teL||ee>P||he=Ue,ir=x>=nr,dr=ir<<1|ur,pr=dr+4;drx&&(L=p.slice(x,L),E[P]?E[P]+=L:E[++P]=L),(A=A[0])===(S=S[0])?E[P]?E[P]+=S:E[++P]=S:(E[++P]=null,N.push({i:P,x:Ri(A,S)})),x=A1.lastIndex;return x=0&&!(A=e.interpolators[x](c,p)););return A}e.interpolators=[function(c,p){var x=typeof p;return(x==="string"?ha.has(p.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(p)?T1:s5:p instanceof bt?T1:Array.isArray(p)?Xc:x==="object"&&isNaN(p)?o5:Ri)(c,p)}],e.interpolateArray=Xc;function Xc(c,p){var x=[],A=[],S=c.length,L=p.length,P=Math.min(c.length,p.length),E;for(E=0;E=0?c.slice(0,p):c,A=p>=0?c.slice(p+1):"in";return x=TN.get(x)||u5,A=MN.get(A)||J,AN(A(x.apply(null,r.call(arguments,1))))};function AN(c){return function(p){return p<=0?0:p>=1?1:c(p)}}function f5(c){return function(p){return 1-c(1-p)}}function c5(c){return function(p){return .5*(p<.5?c(2*p):2-c(2-2*p))}}function kN(c){return c*c}function SN(c){return c*c*c}function CN(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 LN(c){return function(p){return Math.pow(p,c)}}function qN(c){return 1-Math.cos(c*sr)}function DN(c){return Math.pow(2,10*(c-1))}function EN(c){return 1-Math.sqrt(1-c*c)}function PN(c,p){var x;return arguments.length<2&&(p=.45),arguments.length?x=p/ar*Math.asin(1/c):(c=1,x=p/4),function(A){return 1+c*Math.pow(2,-10*A)*Math.sin((A-x)*ar/p)}}function RN(c){return c||(c=1.70158),function(p){return p*p*((c+1)*p-c)}}function zN(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=NN;function NN(c,p){c=e.hcl(c),p=e.hcl(p);var x=c.h,A=c.c,S=c.l,L=p.h-x,P=p.c-A,E=p.l-S;return isNaN(P)&&(P=0,A=isNaN(A)?p.c:A),isNaN(L)?(L=0,x=isNaN(x)?p.h:x):L>180?L-=360:L<-180&&(L+=360),function(N){return mn(x+L*N,A+P*N,S+E*N)+""}}e.interpolateHsl=FN;function FN(c,p){c=e.hsl(c),p=e.hsl(p);var x=c.h,A=c.s,S=c.l,L=p.h-x,P=p.s-A,E=p.l-S;return isNaN(P)&&(P=0,A=isNaN(A)?p.s:A),isNaN(L)?(L=0,x=isNaN(x)?p.h:x):L>180?L-=360:L<-180&&(L+=360),function(N){return pn(x+L*N,A+P*N,S+E*N)+""}}e.interpolateLab=IN;function IN(c,p){c=e.lab(c),p=e.lab(p);var x=c.l,A=c.a,S=c.b,L=p.l-x,P=p.a-A,E=p.b-S;return function(N){return zc(x+L*N,A+P*N,S+E*N)+""}}e.interpolateRound=v5;function v5(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 A=p.transform.baseVal.consolidate()}return new h5(A?A.matrix:ON)})(c)};function h5(c){var p=[c.a,c.b],x=[c.c,c.d],A=p5(p),S=d5(p,x),L=p5(HN(x,p,-S))||0;p[0]*x[1]180?p+=360:p-c>180&&(c+=360),A.push({i:x.push(os(x)+"rotate(",null,")")-2,x:Ri(c,p)})):p&&x.push(os(x)+"rotate("+p+")")}function UN(c,p,x,A){c!==p?A.push({i:x.push(os(x)+"skewX(",null,")")-2,x:Ri(c,p)}):p&&x.push(os(x)+"skewX("+p+")")}function VN(c,p,x,A){if(c[0]!==p[0]||c[1]!==p[1]){var S=x.push(os(x)+"scale(",null,",",null,")");A.push({i:S-4,x:Ri(c[0],p[0])},{i:S-2,x:Ri(c[1],p[1])})}else(p[0]!==1||p[1]!==1)&&x.push(os(x)+"scale("+p+")")}function m5(c,p){var x=[],A=[];return c=e.transform(c),p=e.transform(p),BN(c.translate,p.translate,x,A),YN(c.rotate,p.rotate,x,A),UN(c.skew,p.skew,x,A),VN(c.scale,p.scale,x,A),c=p=null,function(S){for(var L=-1,P=A.length,E;++L0?L=ve:(x.c=null,x.t=NaN,x=null,p.end({type:"end",alpha:L=0})):ve>0&&(p.start({type:"start",alpha:L=ve}),x=Yc(c.tick)),c):L},c.start=function(){var ve,Ue=he.length,nr=Te.length,ur=A[0],ir=A[1],dr,pr;for(ve=0;ve=0;)L.push(W=V[N]),W.parent=E,W.depth=E.depth+1;x&&(E.value=0),E.children=V}else x&&(E.value=+x.call(A,E,E.depth)||0),delete E.children;return vi(S,function(j){var ee,he;c&&(ee=j.children)&&ee.sort(c),x&&(he=j.parent)&&(he.value+=j.value)}),P}return A.sort=function(S){return arguments.length?(c=S,A):c},A.children=function(S){return arguments.length?(p=S,A):p},A.value=function(S){return arguments.length?(x=S,A):x},A.revalue=function(S){return x&&(Ou(S,function(L){L.children&&(L.value=0)}),vi(S,function(L){var P;L.children||(L.value=+x.call(A,L,L.depth)||0),(P=L.parent)&&(P.value+=L.value)})),S},A};function Hu(c,p){return e.rebind(c,p,"sort","children","value"),c.nodes=c,c.links=iF,c}function Ou(c,p){for(var x=[c];(c=x.pop())!=null;)if(p(c),(S=c.children)&&(A=S.length))for(var A,S;--A>=0;)x.push(S[A])}function vi(c,p){for(var x=[c],A=[];(c=x.pop())!=null;)if(A.push(c),(P=c.children)&&(L=P.length))for(var S=-1,L,P;++SS&&(S=E),A.push(E)}for(P=0;PA&&(x=p,A=S);return x}function vF(c){return c.reduce(hF,0)}function hF(c,p){return c+p[1]}e.layout.histogram=function(){var c=!0,p=Number,x=pF,A=dF;function S(L,ee){for(var E=[],N=L.map(p,this),V=x.call(this,N,ee),W=A.call(this,V,N,ee),j,ee=-1,he=N.length,Te=W.length-1,te=c?1:1/he,oe;++ee0)for(ee=-1;++ee=V[0]&&oe<=V[1]&&(j=E[e.bisect(W,oe,1,Te)-1],j.y+=te,j.push(L[ee]));return E}return S.value=function(L){return arguments.length?(p=L,S):p},S.range=function(L){return arguments.length?(x=Rr(L),S):x},S.bins=function(L){return arguments.length?(A=typeof L=="number"?function(P){return x5(P,L)}:Rr(L),S):A},S.frequency=function(L){return arguments.length?(c=!!L,S):c},S};function dF(c,p){return x5(c,Math.ceil(Math.log(p.length)/Math.LN2+1))}function x5(c,p){for(var x=-1,A=+c[0],S=(c[1]-A)/p,L=[];++x<=p;)L[x]=S*x+A;return L}function pF(c){return[e.min(c),e.max(c)]}e.layout.pack=function(){var c=e.layout.hierarchy().sort(mF),p=0,x=[1,1],A;function S(L,P){var E=c.call(this,L,P),N=E[0],V=x[0],W=x[1],j=A==null?Math.sqrt:typeof A=="function"?A:function(){return A};if(N.x=N.y=0,vi(N,function(he){he.r=+j(he.value)}),vi(N,T5),p){var ee=p*(A?1:Math.max(2*N.r/V,2*N.r/W))/2;vi(N,function(he){he.r+=ee}),vi(N,T5),vi(N,function(he){he.r-=ee})}return M5(N,V/2,W/2,A?1:1/Math.max(2*N.r/V,2*N.r/W)),E}return S.size=function(L){return arguments.length?(x=L,S):x},S.radius=function(L){return arguments.length?(A=L==null||typeof L=="function"?L:+L,S):A},S.padding=function(L){return arguments.length?(p=+L,S):p},Hu(S,c)};function mF(c,p){return c.value-p.value}function C1(c,p){var x=c._pack_next;c._pack_next=p,p._pack_prev=c,p._pack_next=x,x._pack_prev=p}function _5(c,p){c._pack_next=p,p._pack_prev=c}function w5(c,p){var x=p.x-c.x,A=p.y-c.y,S=c.r+p.r;return .999*S*S>x*x+A*A}function T5(c){if(!(p=c.children)||!(ee=p.length))return;var p,x=1/0,A=-1/0,S=1/0,L=-1/0,P,E,N,V,W,j,ee;function he(ve){x=Math.min(ve.x-ve.r,x),A=Math.max(ve.x+ve.r,A),S=Math.min(ve.y-ve.r,S),L=Math.max(ve.y+ve.r,L)}if(p.forEach(yF),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(N=p[2],A5(P,E,N),he(N),C1(P,N),P._pack_prev=N,C1(N,E),E=P._pack_next,V=3;Voe.x&&(oe=Ue),Ue.depth>ue.depth&&(ue=Ue)});var xe=p(te,oe)/2-te.x,Ae=x[0]/(oe.x+p(oe,te)/2+xe),ve=x[1]/(ue.depth||1);Ou(he,function(Ue){Ue.x=(Ue.x+xe)*Ae,Ue.y=Ue.depth*ve})}return ee}function L(W){for(var j={A:null,children:[W]},ee=[j],he;(he=ee.pop())!=null;)for(var Te=he.children,te,oe=0,ue=Te.length;oe0&&(bF(_F(te,W,ee),W,Ue),ue+=Ue,xe+=Ue),Ae+=te.m,ue+=he.m,ve+=oe.m,xe+=Te.m;te&&!q1(Te)&&(Te.t=te,Te.m+=Ae-xe),he&&!L1(oe)&&(oe.t=he,oe.m+=ue-ve,ee=W)}return ee}function V(W){W.x*=x[0],W.y=W.depth*x[1]}return S.separation=function(W){return arguments.length?(p=W,S):p},S.size=function(W){return arguments.length?(A=(x=W)==null?V:null,S):A?null:x},S.nodeSize=function(W){return arguments.length?(A=(x=W)==null?null:V,S):A?x:null},Hu(S,c)};function k5(c,p){return c.parent==p.parent?1:2}function L1(c){var p=c.children;return p.length?p[0]:c.t}function q1(c){var p=c.children,x;return(x=p.length)?p[x-1]:c.t}function bF(c,p,x){var A=x/(p.i-c.i);p.c-=A,p.s+=x,c.c+=A,p.z+=x,p.m+=x}function xF(c){for(var p=0,x=0,A=c.children,S=A.length,L;--S>=0;)L=A[S],L.z+=p,L.m+=p,p+=L.s+(x+=L.c)}function _F(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=k5,x=[1,1],A=!1;function S(L,P){var E=c.call(this,L,P),N=E[0],V,W=0;vi(N,function(te){var oe=te.children;oe&&oe.length?(te.x=TF(oe),te.y=wF(oe)):(te.x=V?W+=p(te,V):0,te.y=0,V=te)});var j=S5(N),ee=C5(N),he=j.x-p(j,ee)/2,Te=ee.x+p(ee,j)/2;return vi(N,A?function(te){te.x=(te.x-N.x)*x[0],te.y=(N.y-te.y)*x[1]}:function(te){te.x=(te.x-he)/(Te-he)*x[0],te.y=(1-(N.y?te.y/N.y:1))*x[1]}),E}return S.separation=function(L){return arguments.length?(p=L,S):p},S.size=function(L){return arguments.length?(A=(x=L)==null,S):A?null:x},S.nodeSize=function(L){return arguments.length?(A=(x=L)!=null,S):A?x:null},Hu(S,c)};function wF(c){return 1+e.max(c,function(p){return p.y})}function TF(c){return c.reduce(function(p,x){return p+x.x},0)/c.length}function S5(c){var p=c.children;return p&&p.length?S5(p[0]):c}function C5(c){var p=c.children,x;return p&&(x=p.length)?C5(p[x-1]):c}e.layout.treemap=function(){var c=e.layout.hierarchy(),p=Math.round,x=[1,1],A=null,S=D1,L=!1,P,E="squarify",N=.5*(1+Math.sqrt(5));function V(te,oe){for(var ue=-1,xe=te.length,Ae,ve;++ue0;)xe.push(ve=Ae[ir-1]),xe.area+=ve.area,E!=="squarify"||(nr=ee(xe,ur))<=Ue?(Ae.pop(),Ue=nr):(xe.area-=xe.pop().area,he(xe,ur,ue,!1),ur=Math.min(ue.dx,ue.dy),xe.length=xe.area=0,Ue=1/0);xe.length&&(he(xe,ur,ue,!0),xe.length=xe.area=0),oe.forEach(W)}}function j(te){var oe=te.children;if(oe&&oe.length){var ue=S(te),xe=oe.slice(),Ae,ve=[];for(V(xe,ue.dx*ue.dy/te.value),ve.area=0;Ae=xe.pop();)ve.push(Ae),ve.area+=Ae.area,Ae.z!=null&&(he(ve,Ae.z?ue.dx:ue.dy,ue,!xe.length),ve.length=ve.area=0);oe.forEach(j)}}function ee(te,oe){for(var ue=te.area,xe,Ae=0,ve=1/0,Ue=-1,nr=te.length;++UeAe&&(Ae=xe));return ue*=ue,oe*=oe,ue?Math.max(oe*Ae*N/ue,ue/(oe*ve*N)):1/0}function he(te,oe,ue,xe){var Ae=-1,ve=te.length,Ue=ue.x,nr=ue.y,ur=oe?p(te.area/oe):0,ir;if(oe==ue.dx){for((xe||ur>ue.dy)&&(ur=ue.dy);++Aeue.dx)&&(ur=ue.dx);++Ae1);return c+p*A*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?kF:MF,V=A?WN:GN;return S=N(c,p,V,x),L=N(p,c,V,Wl),E}function E(N){return S(N)}return E.invert=function(N){return L(N)},E.domain=function(N){return arguments.length?(c=N.map(Number),P()):c},E.range=function(N){return arguments.length?(p=N,P()):p},E.rangeRound=function(N){return E.range(N).interpolate(v5)},E.clamp=function(N){return arguments.length?(A=N,P()):A},E.interpolate=function(N){return arguments.length?(x=N,P()):x},E.ticks=function(N){return R1(c,N)},E.tickFormat=function(N,V){return d3_scale_linearTickFormat(c,N,V)},E.nice=function(N){return P5(c,N),P()},E.copy=function(){return D5(c,p,x,A)},P()}function E5(c,p){return e.rebind(c,p,"range","rangeRound","interpolate","clamp")}function P5(c,p){return E1(c,q5(P1(c,p)[2])),E1(c,q5(P1(c,p)[2])),c}function P1(c,p){p==null&&(p=10);var x=Jc(c),A=x[1]-x[0],S=Math.pow(10,Math.floor(Math.log(A/p)/Math.LN10)),L=p/A*S;return L<=.15?S*=10:L<=.35?S*=5:L<=.75&&(S*=2),x[0]=Math.ceil(x[0]/S)*S,x[1]=Math.floor(x[1]/S)*S+S*.5,x[2]=S,x}function R1(c,p){return e.range.apply(e,P1(c,p))}var SF={s:1,g:1,p:1,r:1,e:1};function R5(c){return-Math.floor(Math.log(c)/Math.LN10+.01)}function mie(c,p){var x=R5(p[2]);return c in SF?Math.abs(x-R5(Math.max(_(p[0]),_(p[1]))))+ +(c!=="e"):x-(c==="%")*2}e.scale.log=function(){return z5(e.scale.linear().domain([0,1]),10,!0,[1,10])};function z5(c,p,x,A){function S(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(S(E))}return P.invert=function(E){return L(c.invert(E))},P.domain=function(E){return arguments.length?(x=E[0]>=0,c.domain((A=E.map(Number)).map(S)),P):A},P.base=function(E){return arguments.length?(p=+E,c.domain(A.map(S)),P):p},P.nice=function(){var E=E1(A.map(S),x?Math:CF);return c.domain(E),A=E.map(L),P},P.ticks=function(){var E=Jc(A),N=[],V=E[0],W=E[1],j=Math.floor(S(V)),ee=Math.ceil(S(W)),he=p%1?2:p;if(isFinite(ee-j)){if(x){for(;j0;Te--)N.push(L(j)*Te);for(j=0;N[j]W;ee--);N=N.slice(j,ee)}return N},P.copy=function(){return z5(c.copy(),p,x,A)},E5(P,c)}var CF={floor:function(c){return-Math.ceil(-c)},ceil:function(c){return-Math.floor(-c)}};e.scale.pow=function(){return N5(e.scale.linear(),1,[0,1])};function N5(c,p,x){var A=Qc(p),S=Qc(1/p);function L(P){return c(A(P))}return L.invert=function(P){return S(c.invert(P))},L.domain=function(P){return arguments.length?(c.domain((x=P.map(Number)).map(A)),L):x},L.ticks=function(P){return R1(x,P)},L.tickFormat=function(P,E){return d3_scale_linearTickFormat(x,P,E)},L.nice=function(P){return L.domain(P5(x,P))},L.exponent=function(P){return arguments.length?(A=Qc(p=P),S=Qc(1/p),c.domain(x.map(A)),L):p},L.copy=function(){return N5(c.copy(),p,x)},E5(L,c)}function Qc(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 F5([],{t:"range",a:[[]]})};function F5(c,p){var x,A,S;function L(E){return A[((x.get(E)||(p.t==="range"?x.set(E,c.push(E)):NaN))-1)%A.length]}function P(E,N){return e.range(c.length).map(function(V){return E+N*V})}return L.domain=function(E){if(!arguments.length)return c;c=[],x=new b;for(var N=-1,V=E.length,W;++N0?x[L-1]:c[0],Lee?0:1;if(W=cr)return N(W,Te)+(V?N(V,1-Te):"")+"Z";var te,oe,ue,xe,Ae=0,ve=0,Ue,nr,ur,ir,dr,pr,Cr,mr,Tr=[];if((xe=(+P.apply(this,arguments)||0)/2)&&(ue=A===$c?Math.sqrt(V*V+W*W):+A.apply(this,arguments),Te||(ve*=-1),W&&(ve=yt(ue/W*Math.sin(xe))),V&&(Ae=yt(ue/V*Math.sin(xe)))),W){Ue=W*Math.cos(j+ve),nr=W*Math.sin(j+ve),ur=W*Math.cos(ee-ve),ir=W*Math.sin(ee-ve);var Jr=Math.abs(ee-j-2*ve)<=De?0:1;if(ve&&jc(Ue,nr,ur,ir)===Te^Jr){var Et=(j+ee)/2;Ue=W*Math.cos(Et),nr=W*Math.sin(Et),ur=ir=null}}else Ue=nr=0;if(V){dr=V*Math.cos(ee-Ae),pr=V*Math.sin(ee-Ae),Cr=V*Math.cos(j+Ae),mr=V*Math.sin(j+Ae);var rt=Math.abs(j-ee+2*Ae)<=De?0:1;if(Ae&&jc(dr,pr,Cr,mr)===1-Te^rt){var je=(j+ee)/2;dr=V*Math.cos(je),pr=V*Math.sin(je),Cr=mr=null}}else dr=pr=0;if(he>le&&(te=Math.min(Math.abs(W-V)/2,+x.apply(this,arguments)))>.001){oe=V0?0:1}function ev(c,p,x,A,S){var L=c[0]-p[0],P=c[1]-p[1],E=(S?A:-A)/Math.sqrt(L*L+P*P),N=E*P,V=-E*L,W=c[0]+N,j=c[1]+V,ee=p[0]+N,he=p[1]+V,Te=(W+ee)/2,te=(j+he)/2,oe=ee-W,ue=he-j,xe=oe*oe+ue*ue,Ae=x-A,ve=W*he-ee*j,Ue=(ue<0?-1:1)*Math.sqrt(Math.max(0,Ae*Ae*xe-ve*ve)),nr=(ve*ue-oe*Ue)/xe,ur=(-ve*oe-ue*Ue)/xe,ir=(ve*ue+oe*Ue)/xe,dr=(-ve*oe+ue*Ue)/xe,pr=nr-Te,Cr=ur-te,mr=ir-Te,Tr=dr-te;return pr*pr+Cr*Cr>mr*mr+Tr*Tr&&(nr=ir,ur=dr),[[nr-N,ur-V],[nr*x/Ae,ur*x/Ae]]}function V5(){return!0}function G5(c){var p=ts,x=Pu,A=V5,S=Bn,L=S.key,P=.7;function E(N){var V=[],W=[],j=-1,ee=N.length,he,Te=Rr(p),te=Rr(x);function oe(){V.push("M",S(c(W),P))}for(;++j1?c.join("L"):c+"Z"}function W5(c){return c.join("L")+"Z"}function FF(c){for(var p=0,x=c.length,A=c[0],S=[A[0],",",A[1]];++p1&&S.push("H",A[0]),S.join("")}function N1(c){for(var p=0,x=c.length,A=c[0],S=[A[0],",",A[1]];++p1){E=p[1],L=c[N],N++,A+="C"+(S[0]+P[0])+","+(S[1]+P[1])+","+(L[0]-E[0])+","+(L[1]-E[1])+","+L[0]+","+L[1];for(var V=2;V9&&(L=x*3/Math.sqrt(L),P[E]=L*A,P[E+1]=L*S));for(E=-1;++E<=N;)L=(c[Math.min(N,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 WF(c){return c.length<3?Bn(c):c[0]+rv(c,GF(c))}e.svg.line.radial=function(){var c=G5(K5);return c.radius=c.x,delete c.x,c.angle=c.y,delete c.y,c};function K5(c){for(var p,x=-1,A=c.length,S,L;++xDe)+",1 "+j}function V(W,j,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?(A=Rr(W),L):A},L.endAngle=function(W){return arguments.length?(S=Rr(W),L):S},L};function ZF(c){return c.radius}e.svg.diagonal=function(){var c=$5,p=j5,x=eb;function A(S,L){var P=c.call(this,S,L),E=p.call(this,S,L),N=(P.y+E.y)/2,V=[P,{x:P.x,y:N},{x:E.x,y:N},E];return V=V.map(x),"M"+V[0]+"C"+V[1]+" "+V[2]+" "+V[3]}return A.source=function(S){return arguments.length?(c=Rr(S),A):c},A.target=function(S){return arguments.length?(p=Rr(S),A):p},A.projection=function(S){return arguments.length?(x=S,A):x},A};function eb(c){return[c.x,c.y]}e.svg.diagonal.radial=function(){var c=e.svg.diagonal(),p=eb,x=c.projection;return c.projection=function(A){return arguments.length?x(XF(p=A)):p},c};function XF(c){return function(){var p=c.apply(this,arguments),x=p[0],A=p[1]-sr;return[x*Math.cos(A),x*Math.sin(A)]}}e.svg.symbol=function(){var c=KF,p=JF;function x(A,S){return(tb.get(c.call(this,A,S))||rb)(p.call(this,A,S))}return x.type=function(A){return arguments.length?(c=Rr(A),x):c},x.size=function(A){return arguments.length?(p=Rr(A),x):p},x};function JF(){return 64}function KF(){return"circle"}function rb(c){var p=Math.sqrt(c/De);return"M0,"+p+"A"+p+","+p+" 0 1,1 0,"+-p+"A"+p+","+p+" 0 1,1 0,"+p+"Z"}var tb=e.map({circle:rb,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*ab)),x=p*ab;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/tv),x=p*tv/2;return"M0,"+x+"L"+p+","+-x+" "+-p+","+-x+"Z"},"triangle-up":function(c){var p=Math.sqrt(c/tv),x=p*tv/2;return"M0,"+-x+"L"+p+","+x+" "+-p+","+x+"Z"}});e.svg.symbolTypes=tb.keys();var tv=Math.sqrt(3),ab=Math.tan(30*Mr);ge.transition=function(c){for(var p=Zl||++ib,x=Y1(c),A=[],S,L,P=nv||{time:Date.now(),ease:CN,delay:0,duration:250},E=-1,N=this.length;++E0;)j[--xe].call(c,ue);if(oe>=1)return P.event&&P.event.end.call(c,c.__data__,p),--L.count?delete L[A]:delete c[x],1}P||(E=S.time,N=Yc(ee,0,E),P=L[A]={tween:new b,time:E,timer:N,delay:S.delay,duration:S.duration,ease:S.ease,index:p},S=null,++L.count)}e.svg.axis=function(){var c=e.scale.linear(),p=lb,x=6,A=6,S=3,L=[10],P=null,E;function N(V){V.each(function(){var W=e.select(this),j=this.__chart__||c,ee=this.__chart__=c.copy(),he=P==null?ee.ticks?ee.ticks.apply(ee,L):ee.domain():P,Te=E==null?ee.tickFormat?ee.tickFormat.apply(ee,L):J:E,te=W.selectAll(".tick").data(he,ee),oe=te.enter().insert("g",".domain").attr("class","tick").style("opacity",le),ue=e.transition(te.exit()).style("opacity",le).remove(),xe=e.transition(te.order()).style("opacity",1),Ae=Math.max(x,0)+S,ve,Ue=Kc(ee),nr=W.selectAll(".domain").data([0]),ur=(nr.enter().append("path").attr("class","domain"),e.transition(nr));oe.append("line"),oe.append("text");var ir=oe.select("line"),dr=xe.select("line"),pr=te.select("text").text(Te),Cr=oe.select("text"),mr=xe.select("text"),Tr=p==="top"||p==="left"?-1:1,Jr,Et,rt,je;if(p==="bottom"||p==="top"?(ve=jF,Jr="x",rt="y",Et="x2",je="y2",pr.attr("dy",Tr<0?"0em":".71em").style("text-anchor","middle"),ur.attr("d","M"+Ue[0]+","+Tr*A+"V0H"+Ue[1]+"V"+Tr*A)):(ve=eI,Jr="y",rt="x",Et="y2",je="x2",pr.attr("dy",".32em").style("text-anchor",Tr<0?"end":"start"),ur.attr("d","M"+Tr*A+","+Ue[0]+"H0V"+Ue[1]+"H"+Tr*A)),ir.attr(je,Tr*x),Cr.attr(rt,Tr*Ae),dr.attr(Et,0).attr(je,Tr*x),mr.attr(Jr,0).attr(rt,Tr*Ae),ee.rangeBand){var Lr=ee,qr=Lr.rangeBand()/2;j=ee=function(Kr){return Lr(Kr)+qr}}else j.rangeBand?j=ee:ue.call(ve,ee,j);oe.call(ve,j,ee),xe.call(ve,ee,ee)})}return N.scale=function(V){return arguments.length?(c=V,N):c},N.orient=function(V){return arguments.length?(p=V in $F?V+"":lb,N):p},N.ticks=function(){return arguments.length?(L=t(arguments),N):L},N.tickValues=function(V){return arguments.length?(P=V,N):P},N.tickFormat=function(V){return arguments.length?(E=V,N):E},N.tickSize=function(V){var W=arguments.length;return W?(x=+V,A=+arguments[W-1],N):x},N.innerTickSize=function(V){return arguments.length?(x=+V,N):x},N.outerTickSize=function(V){return arguments.length?(A=+V,N):A},N.tickPadding=function(V){return arguments.length?(S=+V,N):S},N.tickSubdivide=function(){return arguments.length&&N},N};var lb="bottom",$F={top:1,right:1,bottom:1,left:1};function jF(c,p,x){c.attr("transform",function(A){var S=p(A);return"translate("+(isFinite(S)?S:x(A))+",0)"})}function eI(c,p,x){c.attr("transform",function(A){var S=p(A);return"translate(0,"+(isFinite(S)?S:x(A))+")"})}e.svg.brush=function(){var c=de(W,"brushstart","brush","brushend"),p=null,x=null,A=[0,0],S=[0,0],L,P,E=!0,N=!0,V=U1[0];function W(te){te.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),ue=oe.selectAll(".background").data([0]);ue.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 xe=oe.selectAll(".resize").data(V,J);xe.exit().remove(),xe.enter().append("g").attr("class",function(nr){return"resize "+nr}).style("cursor",function(nr){return rI[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"),xe.style("display",W.empty()?"none":null);var Ae=e.transition(oe),ve=e.transition(ue),Ue;p&&(Ue=Kc(p),ve.attr("x",Ue[0]).attr("width",Ue[1]-Ue[0]),ee(Ae)),x&&(Ue=Kc(x),ve.attr("y",Ue[0]).attr("height",Ue[1]-Ue[0]),he(Ae)),j(Ae)})}W.event=function(te){te.each(function(){var oe=c.of(this,arguments),ue={x:A,y:S,i:L,j:P},xe=this.__chart__||ue;this.__chart__=ue,Zl?e.select(this).transition().each("start.brush",function(){L=xe.i,P=xe.j,A=xe.x,S=xe.y,oe({type:"brushstart"})}).tween("brush:brush",function(){var Ae=Xc(A,ue.x),ve=Xc(S,ue.y);return L=P=null,function(Ue){A=ue.x=Ae(Ue),S=ue.y=ve(Ue),oe({type:"brush",mode:"resize"})}}).each("end.brush",function(){L=ue.i,P=ue.j,oe({type:"brush",mode:"resize"}),oe({type:"brushend"})}):(oe({type:"brushstart"}),oe({type:"brush",mode:"resize"}),oe({type:"brushend"}))})};function j(te){te.selectAll(".resize").attr("transform",function(oe){return"translate("+A[+/e$/.test(oe)]+","+S[+/^s/.test(oe)]+")"})}function ee(te){te.select(".extent").attr("x",A[0]),te.selectAll(".extent,.n>rect,.s>rect").attr("width",A[1]-A[0])}function he(te){te.select(".extent").attr("y",S[0]),te.selectAll(".extent,.e>rect,.w>rect").attr("height",S[1]-S[0])}function Te(){var te=this,oe=e.select(e.event.target),ue=c.of(te,arguments),xe=e.select(te),Ae=oe.datum(),ve=!/^(n|s)$/.test(Ae)&&p,Ue=!/^(e|w)$/.test(Ae)&&x,nr=oe.classed("extent"),ur=tr(te),ir,dr=e.mouse(te),pr,Cr=e.select(i(te)).on("keydown.brush",Jr).on("keyup.brush",Et);if(e.event.changedTouches?Cr.on("touchmove.brush",rt).on("touchend.brush",Lr):Cr.on("mousemove.brush",rt).on("mouseup.brush",Lr),xe.interrupt().selectAll("*").interrupt(),nr)dr[0]=A[0]-dr[0],dr[1]=S[0]-dr[1];else if(Ae){var mr=+/w$/.test(Ae),Tr=+/^n/.test(Ae);pr=[A[1-mr]-dr[0],S[1-Tr]-dr[1]],dr[0]=A[mr],dr[1]=S[Tr]}else e.event.altKey&&(ir=dr.slice());xe.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",oe.style("cursor")),ue({type:"brushstart"}),rt();function Jr(){e.event.keyCode==32&&(nr||(ir=null,dr[0]-=A[1],dr[1]-=S[1],nr=2),ne())}function Et(){e.event.keyCode==32&&nr==2&&(dr[0]+=A[1],dr[1]+=S[1],nr=0,ne())}function rt(){var qr=e.mouse(te),Kr=!1;pr&&(qr[0]+=pr[0],qr[1]+=pr[1]),nr||(e.event.altKey?(ir||(ir=[(A[0]+A[1])/2,(S[0]+S[1])/2]),dr[0]=A[+(qr[0]{(function(e,r){typeof cv=="object"&&typeof hb!="undefined"?r(cv):(e=e||self,r(e.d3=e.d3||{}))})(cv,function(e){"use strict";var r=new Date,t=new Date;function a(ie,be,Ke,hr){function Pe(Me){return ie(Me=arguments.length===0?new Date:new Date(+Me)),Me}return Pe.floor=function(Me){return ie(Me=new Date(+Me)),Me},Pe.ceil=function(Me){return ie(Me=new Date(Me-1)),be(Me,1),ie(Me),Me},Pe.round=function(Me){var Se=Pe(Me),Oe=Pe.ceil(Me);return Me-Se0))return Je;do Je.push(We=new Date(+Me)),be(Me,Oe),ie(Me);while(We=Se)for(;ie(Se),!Me(Se);)Se.setTime(Se-1)},function(Se,Oe){if(Se>=Se)if(Oe<0)for(;++Oe<=0;)for(;be(Se,-1),!Me(Se););else for(;--Oe>=0;)for(;be(Se,1),!Me(Se););})},Ke&&(Pe.count=function(Me,Se){return r.setTime(+Me),t.setTime(+Se),ie(r),ie(t),Math.floor(Ke(r,t))},Pe.every=function(Me){return Me=Math.floor(Me),!isFinite(Me)||!(Me>0)?null:Me>1?Pe.filter(hr?function(Se){return hr(Se)%Me===0}:function(Se){return Pe.count(0,Se)%Me===0}):Pe}),Pe}var n=a(function(){},function(ie,be){ie.setTime(+ie+be)},function(ie,be){return be-ie});n.every=function(ie){return ie=Math.floor(ie),!isFinite(ie)||!(ie>0)?null:ie>1?a(function(be){be.setTime(Math.floor(be/ie)*ie)},function(be,Ke){be.setTime(+be+Ke*ie)},function(be,Ke){return(Ke-be)/ie}):n};var i=n.range,l=1e3,o=6e4,s=36e5,u=864e5,f=6048e5,v=a(function(ie){ie.setTime(ie-ie.getMilliseconds())},function(ie,be){ie.setTime(+ie+be*l)},function(ie,be){return(be-ie)/l},function(ie){return ie.getUTCSeconds()}),h=v.range,d=a(function(ie){ie.setTime(ie-ie.getMilliseconds()-ie.getSeconds()*l)},function(ie,be){ie.setTime(+ie+be*o)},function(ie,be){return(be-ie)/o},function(ie){return ie.getMinutes()}),m=d.range,g=a(function(ie){ie.setTime(ie-ie.getMilliseconds()-ie.getSeconds()*l-ie.getMinutes()*o)},function(ie,be){ie.setTime(+ie+be*s)},function(ie,be){return(be-ie)/s},function(ie){return ie.getHours()}),y=g.range,_=a(function(ie){ie.setHours(0,0,0,0)},function(ie,be){ie.setDate(ie.getDate()+be)},function(ie,be){return(be-ie-(be.getTimezoneOffset()-ie.getTimezoneOffset())*o)/u},function(ie){return ie.getDate()-1}),w=_.range;function T(ie){return a(function(be){be.setDate(be.getDate()-(be.getDay()+7-ie)%7),be.setHours(0,0,0,0)},function(be,Ke){be.setDate(be.getDate()+Ke*7)},function(be,Ke){return(Ke-be-(Ke.getTimezoneOffset()-be.getTimezoneOffset())*o)/f})}var b=T(0),M=T(1),C=T(2),k=T(3),q=T(4),D=T(5),R=T(6),z=b.range,F=M.range,H=C.range,O=k.range,J=q.range,X=D.range,G=R.range,I=a(function(ie){ie.setDate(1),ie.setHours(0,0,0,0)},function(ie,be){ie.setMonth(ie.getMonth()+be)},function(ie,be){return be.getMonth()-ie.getMonth()+(be.getFullYear()-ie.getFullYear())*12},function(ie){return ie.getMonth()}),Y=I.range,K=a(function(ie){ie.setMonth(0,1),ie.setHours(0,0,0,0)},function(ie,be){ie.setFullYear(ie.getFullYear()+be)},function(ie,be){return be.getFullYear()-ie.getFullYear()},function(ie){return ie.getFullYear()});K.every=function(ie){return!isFinite(ie=Math.floor(ie))||!(ie>0)?null:a(function(be){be.setFullYear(Math.floor(be.getFullYear()/ie)*ie),be.setMonth(0,1),be.setHours(0,0,0,0)},function(be,Ke){be.setFullYear(be.getFullYear()+Ke*ie)})};var Q=K.range,ne=a(function(ie){ie.setUTCSeconds(0,0)},function(ie,be){ie.setTime(+ie+be*o)},function(ie,be){return(be-ie)/o},function(ie){return ie.getUTCMinutes()}),me=ne.range,de=a(function(ie){ie.setUTCMinutes(0,0,0)},function(ie,be){ie.setTime(+ie+be*s)},function(ie,be){return(be-ie)/s},function(ie){return ie.getUTCHours()}),ke=de.range,re=a(function(ie){ie.setUTCHours(0,0,0,0)},function(ie,be){ie.setUTCDate(ie.getUTCDate()+be)},function(ie,be){return(be-ie)/u},function(ie){return ie.getUTCDate()-1}),Ce=re.range;function ce(ie){return a(function(be){be.setUTCDate(be.getUTCDate()-(be.getUTCDay()+7-ie)%7),be.setUTCHours(0,0,0,0)},function(be,Ke){be.setUTCDate(be.getUTCDate()+Ke*7)},function(be,Ke){return(Ke-be)/f})}var _e=ce(0),se=ce(1),ge=ce(2),B=ce(3),$=ce(4),U=ce(5),ye=ce(6),we=_e.range,pe=se.range,Re=ge.range,Fe=B.range,Ee=$.range,Ne=U.range,Be=ye.range,Ge=a(function(ie){ie.setUTCDate(1),ie.setUTCHours(0,0,0,0)},function(ie,be){ie.setUTCMonth(ie.getUTCMonth()+be)},function(ie,be){return be.getUTCMonth()-ie.getUTCMonth()+(be.getUTCFullYear()-ie.getUTCFullYear())*12},function(ie){return ie.getUTCMonth()}),qe=Ge.range,He=a(function(ie){ie.setUTCMonth(0,1),ie.setUTCHours(0,0,0,0)},function(ie,be){ie.setUTCFullYear(ie.getUTCFullYear()+be)},function(ie,be){return be.getUTCFullYear()-ie.getUTCFullYear()},function(ie){return ie.getUTCFullYear()});He.every=function(ie){return!isFinite(ie=Math.floor(ie))||!(ie>0)?null:a(function(be){be.setUTCFullYear(Math.floor(be.getUTCFullYear()/ie)*ie),be.setUTCMonth(0,1),be.setUTCHours(0,0,0,0)},function(be,Ke){be.setUTCFullYear(be.getUTCFullYear()+Ke*ie)})};var Ye=He.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=M,e.timeMondays=F,e.timeMonth=I,e.timeMonths=Y,e.timeSaturday=R,e.timeSaturdays=G,e.timeSecond=v,e.timeSeconds=h,e.timeSunday=b,e.timeSundays=z,e.timeThursday=q,e.timeThursdays=J,e.timeTuesday=C,e.timeTuesdays=H,e.timeWednesday=k,e.timeWednesdays=O,e.timeWeek=b,e.timeWeeks=z,e.timeYear=K,e.timeYears=Q,e.utcDay=re,e.utcDays=Ce,e.utcFriday=U,e.utcFridays=Ne,e.utcHour=de,e.utcHours=ke,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=ne,e.utcMinutes=me,e.utcMonday=se,e.utcMondays=pe,e.utcMonth=Ge,e.utcMonths=qe,e.utcSaturday=ye,e.utcSaturdays=Be,e.utcSecond=v,e.utcSeconds=h,e.utcSunday=_e,e.utcSundays=we,e.utcThursday=$,e.utcThursdays=Ee,e.utcTuesday=ge,e.utcTuesdays=Re,e.utcWednesday=B,e.utcWednesdays=Fe,e.utcWeek=_e,e.utcWeeks=we,e.utcYear=He,e.utcYears=Ye,Object.defineProperty(e,"__esModule",{value:!0})})});var us=Z((vv,db)=>{(function(e,r){typeof vv=="object"&&typeof db!="undefined"?r(vv,V1()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(vv,function(e,r){"use strict";function t(ae){if(0<=ae.y&&ae.y<100){var le=new Date(-1,ae.m,ae.d,ae.H,ae.M,ae.S,ae.L);return le.setFullYear(ae.y),le}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 le=new Date(Date.UTC(-1,ae.m,ae.d,ae.H,ae.M,ae.S,ae.L));return le.setUTCFullYear(ae.y),le}return new Date(Date.UTC(ae.y,ae.m,ae.d,ae.H,ae.M,ae.S,ae.L))}function n(ae,le,Le){return{y:ae,m:le,d:Le,H:0,M:0,S:0,L:0}}function i(ae){var le=ae.dateTime,Le=ae.date,De=ae.time,ar=ae.periods,cr=ae.days,sr=ae.shortDays,Mr=ae.months,Br=ae.shortMonths,$r=h(ar),it=d(ar),_t=h(cr),yt=d(cr),Dt=h(sr),Kt=d(sr),La=h(Mr),sa=d(Mr),ua=h(Br),vr=d(Br),lt={a:Yl,A:Ul,b:el,B:zc,c:null,d:I,e:I,f:me,H:Y,I:K,j:Q,L:ne,m:de,M:ke,p:Nc,q:qu,Q:Se,s:Oe,S:re,u:Ce,U:ce,V:_e,w:se,W:ge,x:null,X:null,y:B,Y:$,Z:U,"%":Me},Xr={a:Du,A:Eu,b:qa,B:Fc,c:null,d:ye,e:ye,f:Ee,H:we,I:pe,j:Re,L:Fe,m:Ne,M:Be,p:es,q:rs,Q:Se,s:Oe,S:Ge,u:qe,U:He,V:Ye,w:ie,W:be,x:null,X:null,y:Ke,Y:hr,Z:Pe,"%":Me},ft={a:pn,A:Qt,b:ci,B:mn,c:St,d:q,e:q,f:O,H:R,I:R,j:D,L:H,m:k,M:z,p:fa,q:C,Q:X,s:G,S:F,u:g,U:y,V:_,w:m,W:w,x:wt,X:ca,y:b,Y:T,Z:M,"%":J};lt.x=kt(Le,lt),lt.X=kt(De,lt),lt.c=kt(le,lt),Xr.x=kt(Le,Xr),Xr.X=kt(De,Xr),Xr.c=kt(le,Xr);function kt(yr,Gr){return function(jr){var or=[],va=-1,ot=0,ha=yr.length,Rr,On,Vl;for(jr instanceof Date||(jr=new Date(+jr));++va53)return null;"w"in or||(or.w=1),"Z"in or?(ot=a(n(or.y,0,1)),ha=ot.getUTCDay(),ot=ha>4||ha===0?r.utcMonday.ceil(ot):r.utcMonday(ot),ot=r.utcDay.offset(ot,(or.V-1)*7),or.y=ot.getUTCFullYear(),or.m=ot.getUTCMonth(),or.d=ot.getUTCDate()+(or.w+6)%7):(ot=t(n(or.y,0,1)),ha=ot.getDay(),ot=ha>4||ha===0?r.timeMonday.ceil(ot):r.timeMonday(ot),ot=r.timeDay.offset(ot,(or.V-1)*7),or.y=ot.getFullYear(),or.m=ot.getMonth(),or.d=ot.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),ha="Z"in or?a(n(or.y,0,1)).getUTCDay():t(n(or.y,0,1)).getDay(),or.m=0,or.d="W"in or?(or.w+6)%7+or.W*7-(ha+5)%7:or.w+or.U*7-(ha+6)%7);return"Z"in or?(or.H+=or.Z/100|0,or.M+=or.Z%100,a(or)):t(or)}}function Qr(yr,Gr,jr,or){for(var va=0,ot=Gr.length,ha=jr.length,Rr,On;va=ha)return-1;if(Rr=Gr.charCodeAt(va++),Rr===37){if(Rr=Gr.charAt(va++),On=ft[Rr in l?Gr.charAt(va++):Rr],!On||(or=On(yr,jr,or))<0)return-1}else if(Rr!=jr.charCodeAt(or++))return-1}return or}function fa(yr,Gr,jr){var or=$r.exec(Gr.slice(jr));return or?(yr.p=it[or[0].toLowerCase()],jr+or[0].length):-1}function pn(yr,Gr,jr){var or=Dt.exec(Gr.slice(jr));return or?(yr.w=Kt[or[0].toLowerCase()],jr+or[0].length):-1}function Qt(yr,Gr,jr){var or=_t.exec(Gr.slice(jr));return or?(yr.w=yt[or[0].toLowerCase()],jr+or[0].length):-1}function ci(yr,Gr,jr){var or=ua.exec(Gr.slice(jr));return or?(yr.m=vr[or[0].toLowerCase()],jr+or[0].length):-1}function mn(yr,Gr,jr){var or=La.exec(Gr.slice(jr));return or?(yr.m=sa[or[0].toLowerCase()],jr+or[0].length):-1}function St(yr,Gr,jr){return Qr(yr,le,Gr,jr)}function wt(yr,Gr,jr){return Qr(yr,Le,Gr,jr)}function ca(yr,Gr,jr){return Qr(yr,De,Gr,jr)}function Yl(yr){return sr[yr.getDay()]}function Ul(yr){return cr[yr.getDay()]}function el(yr){return Br[yr.getMonth()]}function zc(yr){return Mr[yr.getMonth()]}function Nc(yr){return ar[+(yr.getHours()>=12)]}function qu(yr){return 1+~~(yr.getMonth()/3)}function Du(yr){return sr[yr.getUTCDay()]}function Eu(yr){return cr[yr.getUTCDay()]}function qa(yr){return Br[yr.getUTCMonth()]}function Fc(yr){return Mr[yr.getUTCMonth()]}function es(yr){return ar[+(yr.getUTCHours()>=12)]}function rs(yr){return 1+~~(yr.getUTCMonth()/3)}return{format:function(yr){var Gr=kt(yr+="",lt);return Gr.toString=function(){return yr},Gr},parse:function(yr){var Gr=bt(yr+="",!1);return Gr.toString=function(){return yr},Gr},utcFormat:function(yr){var Gr=kt(yr+="",Xr);return Gr.toString=function(){return yr},Gr},utcParse:function(yr){var Gr=bt(yr+="",!0);return Gr.toString=function(){return yr},Gr}}}var l={"-":"",_:" ",0:"0"},o=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(ae,le,Le){var De=ae<0?"-":"",ar=(De?-ae:ae)+"",cr=ar.length;return De+(cr68?1900:2e3),Le+De[0].length):-1}function M(ae,le,Le){var De=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(le.slice(Le,Le+6));return De?(ae.Z=De[1]?0:-(De[2]+(De[3]||"00")),Le+De[0].length):-1}function C(ae,le,Le){var De=o.exec(le.slice(Le,Le+1));return De?(ae.q=De[0]*3-3,Le+De[0].length):-1}function k(ae,le,Le){var De=o.exec(le.slice(Le,Le+2));return De?(ae.m=De[0]-1,Le+De[0].length):-1}function q(ae,le,Le){var De=o.exec(le.slice(Le,Le+2));return De?(ae.d=+De[0],Le+De[0].length):-1}function D(ae,le,Le){var De=o.exec(le.slice(Le,Le+3));return De?(ae.m=0,ae.d=+De[0],Le+De[0].length):-1}function R(ae,le,Le){var De=o.exec(le.slice(Le,Le+2));return De?(ae.H=+De[0],Le+De[0].length):-1}function z(ae,le,Le){var De=o.exec(le.slice(Le,Le+2));return De?(ae.M=+De[0],Le+De[0].length):-1}function F(ae,le,Le){var De=o.exec(le.slice(Le,Le+2));return De?(ae.S=+De[0],Le+De[0].length):-1}function H(ae,le,Le){var De=o.exec(le.slice(Le,Le+3));return De?(ae.L=+De[0],Le+De[0].length):-1}function O(ae,le,Le){var De=o.exec(le.slice(Le,Le+6));return De?(ae.L=Math.floor(De[0]/1e3),Le+De[0].length):-1}function J(ae,le,Le){var De=s.exec(le.slice(Le,Le+1));return De?Le+De[0].length:-1}function X(ae,le,Le){var De=o.exec(le.slice(Le));return De?(ae.Q=+De[0],Le+De[0].length):-1}function G(ae,le,Le){var De=o.exec(le.slice(Le));return De?(ae.s=+De[0],Le+De[0].length):-1}function I(ae,le){return f(ae.getDate(),le,2)}function Y(ae,le){return f(ae.getHours(),le,2)}function K(ae,le){return f(ae.getHours()%12||12,le,2)}function Q(ae,le){return f(1+r.timeDay.count(r.timeYear(ae),ae),le,3)}function ne(ae,le){return f(ae.getMilliseconds(),le,3)}function me(ae,le){return ne(ae,le)+"000"}function de(ae,le){return f(ae.getMonth()+1,le,2)}function ke(ae,le){return f(ae.getMinutes(),le,2)}function re(ae,le){return f(ae.getSeconds(),le,2)}function Ce(ae){var le=ae.getDay();return le===0?7:le}function ce(ae,le){return f(r.timeSunday.count(r.timeYear(ae)-1,ae),le,2)}function _e(ae,le){var Le=ae.getDay();return ae=Le>=4||Le===0?r.timeThursday(ae):r.timeThursday.ceil(ae),f(r.timeThursday.count(r.timeYear(ae),ae)+(r.timeYear(ae).getDay()===4),le,2)}function se(ae){return ae.getDay()}function ge(ae,le){return f(r.timeMonday.count(r.timeYear(ae)-1,ae),le,2)}function B(ae,le){return f(ae.getFullYear()%100,le,2)}function $(ae,le){return f(ae.getFullYear()%1e4,le,4)}function U(ae){var le=ae.getTimezoneOffset();return(le>0?"-":(le*=-1,"+"))+f(le/60|0,"0",2)+f(le%60,"0",2)}function ye(ae,le){return f(ae.getUTCDate(),le,2)}function we(ae,le){return f(ae.getUTCHours(),le,2)}function pe(ae,le){return f(ae.getUTCHours()%12||12,le,2)}function Re(ae,le){return f(1+r.utcDay.count(r.utcYear(ae),ae),le,3)}function Fe(ae,le){return f(ae.getUTCMilliseconds(),le,3)}function Ee(ae,le){return Fe(ae,le)+"000"}function Ne(ae,le){return f(ae.getUTCMonth()+1,le,2)}function Be(ae,le){return f(ae.getUTCMinutes(),le,2)}function Ge(ae,le){return f(ae.getUTCSeconds(),le,2)}function qe(ae){var le=ae.getUTCDay();return le===0?7:le}function He(ae,le){return f(r.utcSunday.count(r.utcYear(ae)-1,ae),le,2)}function Ye(ae,le){var Le=ae.getUTCDay();return ae=Le>=4||Le===0?r.utcThursday(ae):r.utcThursday.ceil(ae),f(r.utcThursday.count(r.utcYear(ae),ae)+(r.utcYear(ae).getUTCDay()===4),le,2)}function ie(ae){return ae.getUTCDay()}function be(ae,le){return f(r.utcMonday.count(r.utcYear(ae)-1,ae),le,2)}function Ke(ae,le){return f(ae.getUTCFullYear()%100,le,2)}function hr(ae,le){return f(ae.getUTCFullYear()%1e4,le,4)}function Pe(){return"+0000"}function Me(){return"%"}function Se(ae){return+ae}function Oe(ae){return Math.floor(+ae/1e3)}var Je;We({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 We(ae){return Je=i(ae),e.timeFormat=Je.format,e.timeParse=Je.parse,e.utcFormat=Je.utcFormat,e.utcParse=Je.utcParse,Je}var Ze="%Y-%m-%dT%H:%M:%S.%LZ";function lr(ae){return ae.toISOString()}var tr=Date.prototype.toISOString?lr:e.utcFormat(Ze);function Qe(ae){var le=new Date(ae);return isNaN(le)?null:le}var ze=+new Date("2000-01-01T00:00:00.000Z")?Qe:e.utcParse(Ze);e.isoFormat=tr,e.isoParse=ze,e.timeFormatDefaultLocale=We,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var G1=Z((hv,pb)=>{(function(e,r){typeof hv=="object"&&typeof pb!="undefined"?r(hv):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(hv,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,F=[],H=0,O=k[0],J=0;z>0&&O>0&&(J+O+1>R&&(O=Math.max(1,R-J)),F.push(D.substring(z-=O,z+O)),!((J+=O+1)>R));)O=k[H=(H+1)%k.length];return F.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],F=z-(f=Math.max(-8,Math.min(8,Math.floor(z/3)))*3)+1,H=R.length;return F===H?R:F>H?R+new Array(F-H+1).join("0"):F>0?R.slice(0,F)+"."+R.slice(F):"0."+new Array(1-F).join("0")+t(k,Math.max(0,q+F-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+"",F=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 Y=I.fill,K=I.align,Q=I.sign,ne=I.symbol,me=I.zero,de=I.width,ke=I.comma,re=I.precision,Ce=I.trim,ce=I.type;ce==="n"?(ke=!0,ce="g"):d[ce]||(re===void 0&&(re=12),Ce=!0,ce="g"),(me||Y==="0"&&K==="=")&&(me=!0,Y="0",K="=");var _e=ne==="$"?D:ne==="#"&&/[boxX]/.test(ce)?"0"+ce.toLowerCase():"",se=ne==="$"?R:/[%p]/.test(ce)?H:"",ge=d[ce],B=/[defgprs%]/.test(ce);re=re===void 0?6:/[gprs]/.test(ce)?Math.max(1,Math.min(21,re)):Math.max(0,Math.min(20,re));function $(U){var ye=_e,we=se,pe,Re,Fe;if(ce==="c")we=ge(U)+we,U="";else{U=+U;var Ee=U<0||1/U<0;if(U=isNaN(U)?J:ge(Math.abs(U),re),Ce&&(U=u(U)),Ee&&+U==0&&Q!=="+"&&(Ee=!1),ye=(Ee?Q==="("?Q:O:Q==="-"||Q==="("?"":Q)+ye,we=(ce==="s"?y[8+f/3]:"")+we+(Ee&&Q==="("?")":""),B){for(pe=-1,Re=U.length;++peFe||Fe>57){we=(Fe===46?z+U.slice(pe+1):U.slice(pe))+we,U=U.slice(0,pe);break}}}ke&&!me&&(U=q(U,1/0));var Ne=ye.length+U.length+we.length,Be=Ne>1)+ye+U+we+Be.slice(Ne);break;default:U=Be+ye+U+we;break}return F(U)}return $.toString=function(){return I+""},$}function G(I,Y){var K=X((I=o(I),I.type="f",I)),Q=Math.max(-8,Math.min(8,Math.floor(a(Y)/3)))*3,ne=Math.pow(10,-Q),me=y[8+Q/3];return function(de){return K(ne*de)+me}}return{format:X,formatPrefix:G}}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 M(k,q){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(q)/3)))*3-a(Math.abs(k)))}function C(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=M,e.precisionRound=C,Object.defineProperty(e,"__esModule",{value:!0})})});var yb=Z((xie,mb)=>{"use strict";mb.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((_ie,gb)=>{"use strict";var fI=yb();gb.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&fI(t))return!1}else if(r!=="number")return!1;return e-e<1}});var Vt=Z((wie,bb)=>{"use strict";bb.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 W1=Z((dv,xb)=>{(function(e,r){typeof dv=="object"&&typeof xb!="undefined"?r(dv):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(dv,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 al=Z((Tie,_b)=>{"use strict";_b.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 an=Z(Un=>{"use strict";var cI=W1().decode,vI=al(),Z1=Array.isArray,hI=ArrayBuffer,dI=DataView;function wb(e){return hI.isView(e)&&!(e instanceof dI)}Un.isTypedArray=wb;function pv(e){return Z1(e)||wb(e)}Un.isArrayOrTypedArray=pv;function pI(e){return!pv(e[0])}Un.isArray1D=pI;Un.ensureArray=function(e,r){return Z1(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 X1(e){return e.constructor===ArrayBuffer}Un.isArrayBuffer=X1;Un.decodeTypedArraySpec=function(e){var r=[],t=mI(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;X1(l)||(l=cI(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 Mb=Hr(),K1=an().isArrayOrTypedArray;Cb.exports=function(r,t){if(Mb(t))t=String(t);else if(typeof t!="string"||t.slice(-4)==="[-1]")throw"bad property string";var a=t.split("."),n,i,l,o;for(o=0;o{"use strict";var fs=mv(),_I=/^\w*$/,wI=0,Lb=1,yv=2,qb=3,Ql=4;Db.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,l,o,s={};t&&t.length?(o=fs(r,t),l=o.get()):l=r,t=t||"";var u={};if(l)for(i=0;i2)return s[d]=s[d]|yv,v.set(h,null);if(f){for(i=d;i{"use strict";var TI=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,MI=/^[^\.\[\]]+$/;Pb.exports=function(e,r){for(;r;){var t=e.match(TI);if(t)e=t[1];else if(e.match(MI))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 gv=Z((Cie,zb)=>{"use strict";var AI=Hr();zb.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 AI(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var Ib=Z((Lie,Fb)=>{"use strict";var Nb=an().isArrayOrTypedArray,Yu=al();Fb.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(Nb(n)&&Nb(i)&&Yu(n[0])){if(a==="customdata"||a==="ids")continue;for(var l=Math.min(n.length,i.length),o=0;o{"use strict";function kI(e,r){var t=e%r;return t<0?t+r:t}function SI(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}Hb.exports={mod:kI,modHalf:SI}});var xn=Z((Die,bv)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,l=e.max,o=e.random;function s(B,$){if(B=B||"",$=$||{},B instanceof s)return B;if(!(this instanceof s))return new s(B,$);var U=u(B);this._originalInput=B,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=$.format||U.format,this._gradientType=$.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 B=this.toRgb();return(B.r*299+B.g*587+B.b*114)/1e3},getLuminance:function(){var B=this.toRgb(),$,U,ye,we,pe,Re;return $=B.r/255,U=B.g/255,ye=B.b/255,$<=.03928?we=$/12.92:we=e.pow(($+.055)/1.055,2.4),U<=.03928?pe=U/12.92:pe=e.pow((U+.055)/1.055,2.4),ye<=.03928?Re=ye/12.92:Re=e.pow((ye+.055)/1.055,2.4),.2126*we+.7152*pe+.0722*Re},setAlpha:function(B){return this._a=I(B),this._roundA=n(100*this._a)/100,this},toHsv:function(){var B=d(this._r,this._g,this._b);return{h:B.h*360,s:B.s,v:B.v,a:this._a}},toHsvString:function(){var B=d(this._r,this._g,this._b),$=n(B.h*360),U=n(B.s*100),ye=n(B.v*100);return this._a==1?"hsv("+$+", "+U+"%, "+ye+"%)":"hsva("+$+", "+U+"%, "+ye+"%, "+this._roundA+")"},toHsl:function(){var B=v(this._r,this._g,this._b);return{h:B.h*360,s:B.s,l:B.l,a:this._a}},toHslString:function(){var B=v(this._r,this._g,this._b),$=n(B.h*360),U=n(B.s*100),ye=n(B.l*100);return this._a==1?"hsl("+$+", "+U+"%, "+ye+"%)":"hsla("+$+", "+U+"%, "+ye+"%, "+this._roundA+")"},toHex:function(B){return g(this._r,this._g,this._b,B)},toHexString:function(B){return"#"+this.toHex(B)},toHex8:function(B){return y(this._r,this._g,this._b,this._a,B)},toHex8String:function(B){return"#"+this.toHex8(B)},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(Y(this._r,255)*100)+"%",g:n(Y(this._g,255)*100)+"%",b:n(Y(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+n(Y(this._r,255)*100)+"%, "+n(Y(this._g,255)*100)+"%, "+n(Y(this._b,255)*100)+"%)":"rgba("+n(Y(this._r,255)*100)+"%, "+n(Y(this._g,255)*100)+"%, "+n(Y(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(B){var $="#"+_(this._r,this._g,this._b,this._a),U=$,ye=this._gradientType?"GradientType = 1, ":"";if(B){var we=s(B);U="#"+_(we._r,we._g,we._b,we._a)}return"progid:DXImageTransform.Microsoft.gradient("+ye+"startColorstr="+$+",endColorstr="+U+")"},toString:function(B){var $=!!B;B=B||this._format;var U=!1,ye=this._a<1&&this._a>=0,we=!$&&ye&&(B==="hex"||B==="hex6"||B==="hex3"||B==="hex4"||B==="hex8"||B==="name");return we?B==="name"&&this._a===0?this.toName():this.toRgbString():(B==="rgb"&&(U=this.toRgbString()),B==="prgb"&&(U=this.toPercentageRgbString()),(B==="hex"||B==="hex6")&&(U=this.toHexString()),B==="hex3"&&(U=this.toHexString(!0)),B==="hex4"&&(U=this.toHex8String(!0)),B==="hex8"&&(U=this.toHex8String()),B==="name"&&(U=this.toName()),B==="hsl"&&(U=this.toHslString()),B==="hsv"&&(U=this.toHsvString()),U||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(B,$){var U=B.apply(null,[this].concat([].slice.call($)));return this._r=U._r,this._g=U._g,this._b=U._b,this.setAlpha(U._a),this},lighten:function(){return this._applyModification(M,arguments)},brighten:function(){return this._applyModification(C,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(B,$){return B.apply(null,[this].concat([].slice.call($)))},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(F,arguments)},triad:function(){return this._applyCombination(R,arguments)},tetrad:function(){return this._applyCombination(z,arguments)}},s.fromRatio=function(B,$){if(typeof B=="object"){var U={};for(var ye in B)B.hasOwnProperty(ye)&&(ye==="a"?U[ye]=B[ye]:U[ye]=ke(B[ye]));B=U}return s(B,$)};function u(B){var $={r:0,g:0,b:0},U=1,ye=null,we=null,pe=null,Re=!1,Fe=!1;return typeof B=="string"&&(B=se(B)),typeof B=="object"&&(_e(B.r)&&_e(B.g)&&_e(B.b)?($=f(B.r,B.g,B.b),Re=!0,Fe=String(B.r).substr(-1)==="%"?"prgb":"rgb"):_e(B.h)&&_e(B.s)&&_e(B.v)?(ye=ke(B.s),we=ke(B.v),$=m(B.h,ye,we),Re=!0,Fe="hsv"):_e(B.h)&&_e(B.s)&&_e(B.l)&&(ye=ke(B.s),pe=ke(B.l),$=h(B.h,ye,pe),Re=!0,Fe="hsl"),B.hasOwnProperty("a")&&(U=B.a)),U=I(U),{ok:Re,format:B.format||Fe,r:i(255,l($.r,0)),g:i(255,l($.g,0)),b:i(255,l($.b,0)),a:U}}function f(B,$,U){return{r:Y(B,255)*255,g:Y($,255)*255,b:Y(U,255)*255}}function v(B,$,U){B=Y(B,255),$=Y($,255),U=Y(U,255);var ye=l(B,$,U),we=i(B,$,U),pe,Re,Fe=(ye+we)/2;if(ye==we)pe=Re=0;else{var Ee=ye-we;switch(Re=Fe>.5?Ee/(2-ye-we):Ee/(ye+we),ye){case B:pe=($-U)/Ee+($1&&(Ge-=1),Ge<1/6?Ne+(Be-Ne)*6*Ge:Ge<1/2?Be:Ge<2/3?Ne+(Be-Ne)*(2/3-Ge)*6:Ne}if($===0)ye=we=pe=U;else{var Fe=U<.5?U*(1+$):U+$-U*$,Ee=2*U-Fe;ye=Re(Ee,Fe,B+1/3),we=Re(Ee,Fe,B),pe=Re(Ee,Fe,B-1/3)}return{r:ye*255,g:we*255,b:pe*255}}function d(B,$,U){B=Y(B,255),$=Y($,255),U=Y(U,255);var ye=l(B,$,U),we=i(B,$,U),pe,Re,Fe=ye,Ee=ye-we;if(Re=ye===0?0:Ee/ye,ye==we)pe=0;else{switch(ye){case B:pe=($-U)/Ee+($>1)+720)%360;--$;)ye.h=(ye.h+we)%360,pe.push(s(ye));return pe}function O(B,$){$=$||6;for(var U=s(B).toHsv(),ye=U.h,we=U.s,pe=U.v,Re=[],Fe=1/$;$--;)Re.push(s({h:ye,s:we,v:pe})),pe=(pe+Fe)%1;return Re}s.mix=function(B,$,U){U=U===0?0:U||50;var ye=s(B).toRgb(),we=s($).toRgb(),pe=U/100,Re={r:(we.r-ye.r)*pe+ye.r,g:(we.g-ye.g)*pe+ye.g,b:(we.b-ye.b)*pe+ye.b,a:(we.a-ye.a)*pe+ye.a};return s(Re)},s.readability=function(B,$){var U=s(B),ye=s($);return(e.max(U.getLuminance(),ye.getLuminance())+.05)/(e.min(U.getLuminance(),ye.getLuminance())+.05)},s.isReadable=function(B,$,U){var ye=s.readability(B,$),we,pe;switch(pe=!1,we=ge(U),we.level+we.size){case"AAsmall":case"AAAlarge":pe=ye>=4.5;break;case"AAlarge":pe=ye>=3;break;case"AAAsmall":pe=ye>=7;break}return pe},s.mostReadable=function(B,$,U){var ye=null,we=0,pe,Re,Fe,Ee;U=U||{},Re=U.includeFallbackColors,Fe=U.level,Ee=U.size;for(var Ne=0;Ne<$.length;Ne++)pe=s.readability(B,$[Ne]),pe>we&&(we=pe,ye=s($[Ne]));return s.isReadable(B,ye,{level:Fe,size:Ee})||!Re?ye:(U.includeFallbackColors=!1,s.mostReadable(B,["#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=G(J);function G(B){var $={};for(var U in B)B.hasOwnProperty(U)&&($[B[U]]=U);return $}function I(B){return B=parseFloat(B),(isNaN(B)||B<0||B>1)&&(B=1),B}function Y(B,$){ne(B)&&(B="100%");var U=me(B);return B=i($,l(0,parseFloat(B))),U&&(B=parseInt(B*$,10)/100),e.abs(B-$)<1e-6?1:B%$/parseFloat($)}function K(B){return i(1,l(0,B))}function Q(B){return parseInt(B,16)}function ne(B){return typeof B=="string"&&B.indexOf(".")!=-1&&parseFloat(B)===1}function me(B){return typeof B=="string"&&B.indexOf("%")!=-1}function de(B){return B.length==1?"0"+B:""+B}function ke(B){return B<=1&&(B=B*100+"%"),B}function re(B){return e.round(parseFloat(B)*255).toString(16)}function Ce(B){return Q(B)/255}var ce=function(){var B="[-\\+]?\\d+%?",$="[-\\+]?\\d*\\.\\d+%?",U="(?:"+$+")|(?:"+B+")",ye="[\\s|\\(]+("+U+")[,|\\s]+("+U+")[,|\\s]+("+U+")\\s*\\)?",we="[\\s|\\(]+("+U+")[,|\\s]+("+U+")[,|\\s]+("+U+")[,|\\s]+("+U+")\\s*\\)?";return{CSS_UNIT:new RegExp(U),rgb:new RegExp("rgb"+ye),rgba:new RegExp("rgba"+we),hsl:new RegExp("hsl"+ye),hsla:new RegExp("hsla"+we),hsv:new RegExp("hsv"+ye),hsva:new RegExp("hsva"+we),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 _e(B){return!!ce.CSS_UNIT.exec(B)}function se(B){B=B.replace(r,"").replace(t,"").toLowerCase();var $=!1;if(J[B])B=J[B],$=!0;else if(B=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var U;return(U=ce.rgb.exec(B))?{r:U[1],g:U[2],b:U[3]}:(U=ce.rgba.exec(B))?{r:U[1],g:U[2],b:U[3],a:U[4]}:(U=ce.hsl.exec(B))?{h:U[1],s:U[2],l:U[3]}:(U=ce.hsla.exec(B))?{h:U[1],s:U[2],l:U[3],a:U[4]}:(U=ce.hsv.exec(B))?{h:U[1],s:U[2],v:U[3]}:(U=ce.hsva.exec(B))?{h:U[1],s:U[2],v:U[3],a:U[4]}:(U=ce.hex8.exec(B))?{r:Q(U[1]),g:Q(U[2]),b:Q(U[3]),a:Ce(U[4]),format:$?"name":"hex8"}:(U=ce.hex6.exec(B))?{r:Q(U[1]),g:Q(U[2]),b:Q(U[3]),format:$?"name":"hex"}:(U=ce.hex4.exec(B))?{r:Q(U[1]+""+U[1]),g:Q(U[2]+""+U[2]),b:Q(U[3]+""+U[3]),a:Ce(U[4]+""+U[4]),format:$?"name":"hex8"}:(U=ce.hex3.exec(B))?{r:Q(U[1]+""+U[1]),g:Q(U[2]+""+U[2]),b:Q(U[3]+""+U[3]),format:$?"name":"hex"}:!1}function ge(B){var $,U;return B=B||{level:"AA",size:"small"},$=(B.level||"AA").toUpperCase(),U=(B.size||"small").toLowerCase(),$!=="AA"&&$!=="AAA"&&($="AA"),U!=="small"&&U!=="large"&&(U="small"),{level:$,size:U}}typeof bv!="undefined"&&bv.exports?bv.exports=s:window.tinycolor=s})(Math)});var Gt=Z(Gu=>{"use strict";var Ob=al(),Uu=Array.isArray;function CI(e,r){var t,a;for(t=0;t{"use strict";Bb.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 Wu=Z((Rie,Yb)=>{"use strict";Yb.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var vs=Z((zie,Gb)=>{"use strict";var Ub=Wu(),Vb=ma(),Q1=Vb({editType:"none"});Q1.family.dflt=Ub.HOVERFONT;Q1.size.dflt=Ub.HOVERFONTSIZE;Gb.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:Q1,grouptitlefont:Vb({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var xv=Z((Nie,Wb)=>{"use strict";var LI=ma(),Zu=vs().hoverlabel,Xu=Gt().extendFlat;Wb.exports={hoverlabel:{bgcolor:Xu({},Zu.bgcolor,{arrayOk:!0}),bordercolor:Xu({},Zu.bordercolor,{arrayOk:!0}),font:LI({arrayOk:!0,editType:"none"}),align:Xu({},Zu.align,{arrayOk:!0}),namelength:Xu({},Zu.namelength,{arrayOk:!0}),showarrow:Xu({},Zu.showarrow),editType:"none"}}});var Vn=Z((Fie,Zb)=>{"use strict";var qI=ma(),DI=xv();Zb.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:qI({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:DI.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((Iie,Kb)=>{"use strict";var EI=xn(),_v={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)"]]},Xb=_v.RdBu;function PI(e,r){if(r||(r=Xb),!e)return r;function t(){try{e=_v[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),Jb(e)?e:r}function Jb(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((Oie,Qb)=>{"use strict";var Wa=xn(),zI=Hr(),NI=an().isTypedArray,$t=Qb.exports={},wv=di();$t.defaults=wv.defaults;var FI=$t.defaultLine=wv.defaultLine;$t.lightLine=wv.lightLine;var j1=$t.background=wv.background;$t.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};$t.rgb=function(e){return $t.tinyRGB(Wa(e))};$t.opacity=function(e){return e?Wa(e).getAlpha():0};$t.addOpacity=function(e,r){var t=Wa(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};$t.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()};$t.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()};$t.contrast=function(e,r,t){var a=Wa(e);a.getAlpha()!==1&&(a=Wa($t.combine(e,j1)));var n=a.isDark()?r?a.lighten(r):j1:t?a.darken(t):FI;return n.toString()};$t.stroke=function(e,r){var t=Wa(r);e.style({stroke:$t.tinyRGB(t),"stroke-opacity":t.getAlpha()})};$t.fill=function(e,r){var t=Wa(r);e.style({fill:$t.tinyRGB(t),"fill-opacity":t.getAlpha()})};$t.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 Tv=Z((Bie,$b)=>{"use strict";$b.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var hs=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 ax=Z(Za=>{"use strict";var ep=Hr(),ex=xn(),rx=Gt().extendFlat,II=Vn(),HI=$l(),OI=Er(),BI=Tv().DESELECTDIM,ds=mv(),tx=hs().counter,YI=cs().modHalf,Gn=an().isArrayOrTypedArray,nl=an().isTypedArraySpec,il=an().decodeTypedArraySpec;Za.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(Gn(e)?e:nl(e)?il(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;ai===!0||i===!1;n(e)||a.arrayOk&&Array.isArray(e)&&e.length>0&&e.every(n)?r.set(e):r.set(t)}},number:{coerceFunction:function(e,r,t,a){nl(e)&&(e=il(e)),!ep(e)||a.min!==void 0&&ea.max?r.set(t):r.set(+e)}},integer:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}nl(e)&&(e=il(e)),e%1||!ep(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){nl(e)&&(e=il(e)),ex(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return ex(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(HI.get(e,t))}},angle:{coerceFunction:function(e,r,t){nl(e)&&(e=il(e)),e==="auto"?r.set("auto"):ep(e)?r.set(YI(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||tx(t);let i=l=>typeof l=="string"&&n.test(l);i(e)||a.arrayOk&&Gn(e)&&e.length>0&&e.every(i)?r.set(e):r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!tx(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 nx={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/un/"},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:{}}},ix={};function lx(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),lx(a,r[t]))}}lx(nx,ix);ox.exports={configAttributes:nx,dfltConfig:ix}});var tp=Z((Gie,sx)=>{"use strict";var rp=Ir(),UI=Hr(),Ju=[];sx.exports=function(e,r){if(Ju.indexOf(e)!==-1)return;Ju.push(e);var t=1e3;UI(r)?t=r:r==="long"&&(t=3e3);var a=rp.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(Ju);function i(l){l.duration(700).style("opacity",0).each("end",function(o){var s=Ju.indexOf(o);s!==-1&&Ju.splice(s,1),rp.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(l){var o=rp.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 ps=eo().dfltConfig,ap=tp(),np=ux.exports={};np.log=function(){var e;if(ps.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};np.warn=function(){var e;if(ps.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};np.error=function(){var e;if(ps.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var Av=Z((Zie,fx)=>{"use strict";fx.exports=function(){}});var ip=Z((Xie,cx)=>{"use strict";cx.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{vx.exports=VI;function VI(){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 px=Z((Kie,dx)=>{dx.exports=GI;function GI(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 yx=Z((Qie,mx)=>{mx.exports=WI;function WI(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 lp=Z(($ie,gx)=>{gx.exports=ZI;function ZI(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 xx=Z((jie,bx)=>{bx.exports=XI;function XI(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 wx=Z((ele,_x)=>{_x.exports=JI;function JI(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,M=a*s-n*o,C=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,F=v*_-d*g,H=h*_-d*y,O=w*H-T*F+b*z+M*R-C*D+k*q;return O?(O=1/O,e[0]=(o*H-s*F+u*z)*O,e[1]=(n*F-a*H-i*z)*O,e[2]=(g*k-y*C+_*M)*O,e[3]=(h*C-v*k-d*M)*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*F-o*R+u*q)*O,e[9]=(a*R-t*F-i*q)*O,e[10]=(m*C-g*b+_*w)*O,e[11]=(v*b-f*C-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*M-y*w)*O,e[15]=(f*M-v*T+h*w)*O,e):null}});var Mx=Z((rle,Tx)=>{Tx.exports=KI;function KI(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 kx=Z((tle,Ax)=>{Ax.exports=QI;function QI(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,M=t*s-n*l,C=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,F=v*y-h*g;return _*F-w*z+T*R+b*D-M*q+C*k}});var Cx=Z((ale,Sx)=>{Sx.exports=$I;function $I(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],M=t[2],C=t[3];return e[0]=T*a+b*o+M*v+C*g,e[1]=T*n+b*s+M*h+C*y,e[2]=T*i+b*u+M*d+C*_,e[3]=T*l+b*f+M*m+C*w,T=t[4],b=t[5],M=t[6],C=t[7],e[4]=T*a+b*o+M*v+C*g,e[5]=T*n+b*s+M*h+C*y,e[6]=T*i+b*u+M*d+C*_,e[7]=T*l+b*f+M*m+C*w,T=t[8],b=t[9],M=t[10],C=t[11],e[8]=T*a+b*o+M*v+C*g,e[9]=T*n+b*s+M*h+C*y,e[10]=T*i+b*u+M*d+C*_,e[11]=T*l+b*f+M*m+C*w,T=t[12],b=t[13],M=t[14],C=t[15],e[12]=T*a+b*o+M*v+C*g,e[13]=T*n+b*s+M*h+C*y,e[14]=T*i+b*u+M*d+C*_,e[15]=T*l+b*f+M*m+C*w,e}});var qx=Z((nle,Lx)=>{Lx.exports=jI;function jI(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 Ex=Z((ile,Dx)=>{Dx.exports=eH;function eH(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 Rx=Z((lle,Px)=>{Px.exports=rH;function rH(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,M,C,k,q,D,R,z,F,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],M=r[10],C=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,F=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+M*D,e[3]=m*k+w*q+C*D,e[4]=v*R+g*z+T*F,e[5]=h*R+y*z+b*F,e[6]=d*R+_*z+M*F,e[7]=m*R+w*z+C*F,e[8]=v*H+g*O+T*J,e[9]=h*H+y*O+b*J,e[10]=d*H+_*O+M*J,e[11]=m*H+w*O+C*J,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var Nx=Z((ole,zx)=>{zx.exports=tH;function tH(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 Ix=Z((sle,Fx)=>{Fx.exports=aH;function aH(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 Ox=Z((ule,Hx)=>{Hx.exports=nH;function nH(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 Yx=Z((fle,Bx)=>{Bx.exports=iH;function iH(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 Vx=Z((cle,Ux)=>{Ux.exports=lH;function lH(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 Wx=Z((vle,Gx)=>{Gx.exports=oH;function oH(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 Xx=Z((hle,Zx)=>{Zx.exports=sH;function sH(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 Kx=Z((dle,Jx)=>{Jx.exports=uH;function uH(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 $x=Z((ple,Qx)=>{Qx.exports=fH;function fH(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 e_=Z((mle,jx)=>{jx.exports=cH;function cH(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 t_=Z((yle,r_)=>{r_.exports=vH;function vH(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 n_=Z((gle,a_)=>{a_.exports=hH;function hH(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 l_=Z((ble,i_)=>{i_.exports=dH;function dH(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 s_=Z((xle,o_)=>{o_.exports=pH;function pH(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 f_=Z((_le,u_)=>{u_.exports=mH;function mH(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 v_=Z((wle,c_)=>{var yH=lp();c_.exports=gH;function gH(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],M=t[1],C=t[2];return Math.abs(m-b)<1e-6&&Math.abs(g-M)<1e-6&&Math.abs(y-C)<1e-6?yH(e):(f=m-b,v=g-M,h=y-C,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 d_=Z((Tle,h_)=>{h_.exports=bH;function bH(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 op=Z((Mle,p_)=>{p_.exports={create:hx(),clone:px(),copy:yx(),identity:lp(),transpose:xx(),invert:wx(),adjoint:Mx(),determinant:kx(),multiply:Cx(),translate:qx(),scale:Ex(),rotate:Rx(),rotateX:Nx(),rotateY:Ix(),rotateZ:Ox(),fromRotation:Yx(),fromRotationTranslation:Vx(),fromScaling:Wx(),fromTranslation:Xx(),fromXRotation:Kx(),fromYRotation:$x(),fromZRotation:e_(),fromQuat:t_(),frustum:n_(),perspective:l_(),perspectiveFromFieldOfView:s_(),ortho:f_(),lookAt:v_(),str:d_()}});var kv=Z(Pt=>{"use strict";var xH=op();Pt.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var _H=Ir(),m_=ro(),wH=kv(),TH=op();function MH(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 AH(e){var r=_H.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function y_(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function kH(e,r){g_("global",e,r)}function g_(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):m_.warn("addStyleRule failed"):m_.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function SH(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&y_(t)}function CH(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 LH(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(a){var n=b_(a);if(n){var i=wH.convertCssMatrix(n);t=TH.multiply(t,t,i)}}),t}function b_(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 x_(e){for(var r=[];qH(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function qH(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function DH(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}__.exports={getGraphDiv:MH,isPlotDiv:AH,removeElement:y_,addStyleRule:kH,addRelatedStyleRule:g_,deleteRelatedStyleRule:SH,setStyleOnHover:CH,getFullTransformMatrix:LH,getElementTransformMatrix:b_,getElementAndAncestors:x_,equalDomRects:DH}});var Qu=Z((Sle,w_)=>{"use strict";w_.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((Cle,L_)=>{"use strict";var M_=Gt().extendFlat,EH=al(),A_={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},k_={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},PH=A_.flags.slice().concat(["fullReplot"]),RH=k_.flags.slice().concat("layoutReplot");L_.exports={traces:A_,layout:k_,traceFlags:function(){return T_(PH)},layoutFlags:function(){return T_(RH)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";sp.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};sp.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 up=Z((qle,q_)=>{"use strict";q_.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 to=Z(ms=>{"use strict";var{DATE_FORMAT_LINK:zH,FORMAT_LINK:NH}=up(),FH=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function IH({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,NH,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,zH,"for details on the date formatting syntax.",FH].join(" ")}ms.templateFormatStringDescription=IH;ms.hovertemplateAttrs=({editType:e="none",arrayOk:r}={},t={})=>Kl({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});ms.texttemplateAttrs=({editType:e="calc",arrayOk:r}={},t={})=>Kl({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});ms.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:r}={},t={})=>({valType:"string",dflt:"",editType:e});ms.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var Lv=Z((Ple,N_)=>{"use strict";function ll(e,r){return r?r.d2l(e):e}function D_(e,r){return r?r.l2d(e):e}function HH(e){return e.x0}function OH(e){return e.x1}function BH(e){return e.y0}function YH(e){return e.y1}function E_(e){return e.x0shift||0}function P_(e){return e.x1shift||0}function R_(e){return e.y0shift||0}function z_(e){return e.y1shift||0}function Sv(e,r){return ll(e.x1,r)+P_(e)-ll(e.x0,r)-E_(e)}function Cv(e,r,t){return ll(e.y1,t)+z_(e)-ll(e.y0,t)-R_(e)}function UH(e,r){return Math.abs(Sv(e,r))}function VH(e,r,t){return Math.abs(Cv(e,r,t))}function GH(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(Sv(e,r),2)+Math.pow(Cv(e,r,t),2))}function WH(e,r){return D_((ll(e.x1,r)+P_(e)+ll(e.x0,r)+E_(e))/2,r)}function ZH(e,r,t){return D_((ll(e.y1,t)+z_(e)+ll(e.y0,t)+R_(e))/2,t)}function XH(e,r,t){return e.type!=="line"?void 0:Cv(e,r,t)/Sv(e,r)}N_.exports={x0:HH,x1:OH,y0:BH,y1:YH,slope:XH,dx:Sv,dy:Cv,width:UH,height:VH,length:GH,xcenter:WH,ycenter:ZH}});var H_=Z((Rle,I_)=>{"use strict";var JH=pi().overrideAll,ao=Vn(),F_=ma(),KH=mi().dash,ol=Gt().extendFlat,{shapeTexttemplateAttrs:QH,templatefallbackAttrs:$H}=to(),jH=Lv();I_.exports=JH({newshape:{visible:ol({},ao.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:ol({},ao.legend,{}),legendgroup:ol({},ao.legendgroup,{}),legendgrouptitle:{text:ol({},ao.legendgrouptitle.text,{}),font:F_({})},legendrank:ol({},ao.legendrank,{}),legendwidth:ol({},ao.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:ol({},KH,{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:ol({},ao.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:QH({newshape:!0},{keys:Object.keys(jH)}),texttemplatefallback:$H({editType:"arraydraw"}),font:F_({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var B_=Z((zle,O_)=>{"use strict";var eO=mi().dash,rO=Gt().extendFlat;O_.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:rO({},eO,{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 qv=Z((Nle,Y_)=>{"use strict";Y_.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 ys=Z((Fle,W_)=>{"use strict";var fp=ma(),tO=Qu(),Dv=di(),U_=H_(),V_=B_(),aO=qv(),G_=Gt().extendFlat,Ev=fp({editType:"calc"});Ev.family.dflt='"Open Sans", verdana, arial, sans-serif';Ev.size.dflt=12;Ev.color.dflt=Dv.defaultLine;W_.exports={font:Ev,title:{text:{valType:"string",editType:"layoutstyle"},font:fp({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:fp({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:G_(aO({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:Dv.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:Dv.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:Dv.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:U_.newshape,activeshape:U_.activeshape,newselection:V_.newselection,activeselection:V_.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:G_({},tO.transition,{editType:"none"})}});var Z_=Z(()=>{(function(){if(!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")){var e=document.createElement("style");e.id="696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var br=Z(zr=>{"use strict";var gs=ro(),X_=Av(),J_=ip(),nO=al(),iO=Ku().addStyleRule,K_=Gt(),lO=Vn(),oO=ys(),sO=K_.extendFlat,cp=K_.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 dO=us().timeFormat,o4=Hr(),vp=ro(),ul=cs().mod,_s=Vt(),_n=_s.BADNUM,Xa=_s.ONEDAY,$u=_s.ONEHOUR,sl=_s.ONEMIN,xs=_s.ONESEC,ju=_s.EPOCHJD,zi=br(),r4=us().utcFormat,pO=/^\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,mO=/^\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,t4=new Date().getFullYear()-70;function Ni(e){return e&&zi.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Rt.dateTick0=function(e,r){var t=yO(e,!!r);if(r<2)return t;var a=Rt.dateTime2ms(t,e);return a+=Xa*(r-1),Rt.ms2DateTime(a,0,e)};function yO(e,r){return Ni(e)?r?zi.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:zi.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}Rt.dfltRange=function(e){return Ni(e)?zi.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Rt.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Rv,zv;Rt.dateTime2ms=function(e,r){if(Rt.isJSDate(e)){var t=e.getTimezoneOffset()*sl,a=(e.getUTCMinutes()-e.getMinutes())*sl+(e.getUTCSeconds()-e.getSeconds())*xs+(e.getUTCMilliseconds()-e.getMilliseconds());if(a){var n=3*sl;t=t-n/2+ul(a-t+n/2,n)}return e=Number(e)-t,e>=Rv&&e<=zv?e:_n}if(typeof e!="string"&&typeof e!="number")return _n;e=String(e);var i=Ni(r),l=e.charAt(0);i&&(l==="G"||l==="g")&&(e=e.slice(1),r="");var o=i&&r.slice(0,7)==="chinese",s=e.match(o?mO:pO);if(!s)return _n;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 _n;u=Number(u);var g;try{var y=zi.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 _n}return g?(g.toJD()-ju)*Xa+h*$u+d*sl+m*xs:_n}u.length===2?u=(Number(u)+2e3-t4)%100+t4: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?_n:w.getTime()+m*xs};Rv=Rt.MIN_MS=Rt.dateTime2ms("-9999");zv=Rt.MAX_MS=Rt.dateTime2ms("9999-12-31 23:59:59.9999");Rt.isDateTime=function(e,r){return Rt.dateTime2ms(e,r)!==_n};function bs(e,r){return String(e+Math.pow(10,r)).slice(1)}var Pv=90*Xa,a4=3*$u,n4=5*sl;Rt.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Rv&&e<=zv))return _n;r||(r=0);var a=Math.floor(ul(e+.05,1)*10),n=Math.round(e-a/10),i,l,o,s,u,f;if(Ni(t)){var v=Math.floor(n/Xa)+ju,h=Math.floor(ul(e,Xa));try{i=zi.getComponentMethod("calendars","getCal")(t).fromJD(v).formatDate("yyyy-mm-dd")}catch(d){i=r4("G%Y-%m-%d")(new Date(n))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.slice(1);else for(;i.length<10;)i="0"+i;l=r=Rv+Xa&&e<=zv-Xa))return _n;var r=Math.floor(ul(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=dO("%Y-%m-%d")(t),n=t.getHours(),i=t.getMinutes(),l=t.getSeconds(),o=t.getUTCMilliseconds()*10+r;return s4(a,n,i,l,o)};function s4(e,r,t,a,n){if((r||t||a||n)&&(e+=" "+bs(r,2)+":"+bs(t,2),(a||n)&&(e+=":"+bs(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+bs(n,i)}return e}Rt.cleanDate=function(e,r,t){if(e===_n)return r;if(Rt.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Ni(t))return vp.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=Rt.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!Rt.isDateTime(e,t))return vp.error("unrecognized date",e),r;return e};var gO=/%\d?f/g,bO=/%h/g,xO={1:"1",2:"1",3:"2",4:"2"};function i4(e,r,t,a){e=e.replace(gO,function(i){var l=Math.min(+i.charAt(1)||6,6),o=(r/1e3%1+2).toFixed(l).slice(2).replace(/0+$/,"")||"0";return o});var n=new Date(Math.floor(r+.05));if(e=e.replace(bO,function(){return xO[t("%q")(n)]}),Ni(a))try{e=zi.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var _O=[59,59.9,59.99,59.999,59.9999];function wO(e,r){var t=ul(e+.05,Xa),a=bs(Math.floor(t/$u),2)+":"+bs(ul(Math.floor(t/sl),60),2);if(r!=="M"){o4(r)||(r=0);var n=Math.min(ul(e/xs,60),_O[r]),i=(100+n).toFixed(r).slice(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}Rt.formatDate=function(e,r,t,a,n,i){if(n=Ni(n)&&n,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` +`+i.year;else return wO(e,t)+` +`+i4(i.dayMonthYear,e,a,n);return i4(r,e,a,n)};var l4=3*Xa;Rt.incrementMonth=function(e,r,t){t=Ni(t)&&t;var a=ul(e,Xa);if(e=Math.round(e-a),t)try{var n=Math.round(e/Xa)+ju,i=zi.getComponentMethod("calendars","getCal")(t),l=i.fromJD(n);return r%12?i.add(l,r,"m"):i.add(l,r/12,"y"),(l.toJD()-ju)*Xa+a}catch(s){vp.error("invalid ms "+e+" in calendar "+t)}var o=new Date(e+l4);return o.setUTCMonth(o.getUTCMonth()+r)+a-l4};Rt.findExactDates=function(e,r){for(var t=0,a=0,n=0,i=0,l,o,s=Ni(r)&&zi.getComponentMethod("calendars","getCal")(r),u=0;u{"use strict";f4.exports=function(r){return r}});var pp=Z(Fi=>{"use strict";var TO=Hr(),MO=ro(),AO=hp(),kO=Vt().BADNUM,dp=1e-9;Fi.findBin=function(e,r,t){if(TO(r.start))return t?Math.ceil((e-r.start)/r.size-dp)-1:Math.floor((e-r.start)/r.size+dp);var a=0,n=r.length,i=0,l=n>1?(r[n-1]-r[0])/(n-1):1,o,s;for(l>=0?s=t?SO:CO:s=t?qO:LO,e+=l*dp*(t?-1:1)*(l>=0?1:-1);a90&&MO.log("Long binary search..."),a-1};function SO(e,r){return er}function qO(e,r){return e>=r}Fi.sorterAsc=function(e,r){return e-r};Fi.sorterDes=function(e,r){return r-e};Fi.distinctVals=function(e){var r=e.slice();r.sort(Fi.sorterAsc);var t;for(t=r.length-1;t>-1&&r[t]===kO;t--);for(var a=r[t]-r[0]||1,n=a/(t||1)/1e4,i=[],l,o=0;o<=t;o++){var s=r[o],u=s-l;l===void 0?(i.push(s),l=s):u>n&&(a=Math.min(a,u),i.push(s),l=s)}return{vals:i,minDiff:a}};Fi.roundUp=function(e,r,t){for(var a=0,n=r.length-1,i,l=0,o=t?0:1,s=t?1:0,u=t?Math.ceil:Math.floor;a0&&(a=1),t&&a)return e.sort(r)}return a?e:e.reverse()};Fi.findIndexOfMin=function(e,r){r=r||AO;for(var t=1/0,a,n=0;n{"use strict";c4.exports=function(r){return Object.keys(r).sort()}});var v4=Z(zt=>{"use strict";var ef=Hr(),DO=an().isArrayOrTypedArray;zt.aggNums=function(e,r,t,a){var n,i;if((!a||a>t.length)&&(a=t.length),ef(r)||(r=!1),DO(t[0])){for(i=new Array(a),n=0;ne.length-1)return e[e.length-1];var t=r%1;return t*e[Math.ceil(r)]+(1-t)*e[Math.floor(r)]}});var y4=Z((Wle,m4)=>{"use strict";var h4=cs(),yp=h4.mod,EO=h4.modHalf,rf=Math.PI,fl=2*rf;function PO(e){return e/180*rf}function RO(e){return e/rf*180}function gp(e){return Math.abs(e[1]-e[0])>fl-1e-14}function d4(e,r){return EO(r-e,fl)}function zO(e,r){return Math.abs(d4(e,r))}function p4(e,r){if(gp(r))return!0;var t,a;r[0]a&&(a+=fl);var n=yp(e,fl),i=n+fl;return n>=t&&n<=a||i>=t&&i<=a}function NO(e,r,t,a){if(!p4(r,a))return!1;var n,i;return t[0]=n&&e<=i}function bp(e,r,t,a,n,i,l){n=n||0,i=i||0;var o=gp([t,a]),s,u,f,v,h;o?(s=0,u=rf,f=fl):t{"use strict";no.isLeftAnchor=function(r){return r.xanchor==="left"||r.xanchor==="auto"&&r.x<=1/3};no.isCenterAnchor=function(r){return r.xanchor==="center"||r.xanchor==="auto"&&r.x>1/3&&r.x<2/3};no.isRightAnchor=function(r){return r.xanchor==="right"||r.xanchor==="auto"&&r.x>=2/3};no.isTopAnchor=function(r){return r.yanchor==="top"||r.yanchor==="auto"&&r.y>=2/3};no.isMiddleAnchor=function(r){return r.yanchor==="middle"||r.yanchor==="auto"&&r.y>1/3&&r.y<2/3};no.isBottomAnchor=function(r){return r.yanchor==="bottom"||r.yanchor==="auto"&&r.y<=1/3}});var _4=Z(io=>{"use strict";var xp=cs().mod;io.segmentsIntersect=x4;function x4(e,r,t,a,n,i,l,o){var s=t-e,u=n-e,f=l-n,v=a-r,h=i-r,d=o-i,m=s*d-f*v;if(m===0)return null;var g=(u*d-f*h)/m,y=(u*v-s*h)/m;return y<0||y>1||g<0||g>1?null:{x:e+s*g,y:r+v*g}}io.segmentDistance=function(r,t,a,n,i,l,o,s){if(x4(r,t,a,n,i,l,o,s))return 0;var u=a-r,f=n-t,v=o-i,h=s-l,d=u*u+f*f,m=v*v+h*h,g=Math.min(Nv(u,f,d,i-r,l-t),Nv(u,f,d,o-r,s-t),Nv(v,h,m,r-i,t-l),Nv(v,h,m,a-i,n-l));return Math.sqrt(g)};function Nv(e,r,t,a,n){var i=a*e+n*r;if(i<0)return a*a+n*n;if(i>t){var l=a-e,o=n-r;return l*l+o*o}else{var s=a*r-n*e;return s*s/t}}var Fv,_p,b4;io.getTextLocation=function(r,t,a,n){if((r!==_p||n!==b4)&&(Fv={},_p=r,b4=n),Fv[a])return Fv[a];var i=r.getPointAtLength(xp(a-n/2,t)),l=r.getPointAtLength(xp(a+n/2,t)),o=Math.atan((l.y-i.y)/(l.x-i.x)),s=r.getPointAtLength(xp(a,t)),u=(s.x*4+i.x+l.x)/6,f=(s.y*4+i.y+l.y)/6,v={x:u,y:f,theta:o};return Fv[a]=v,v};io.clearLocationCache=function(){_p=null};io.getVisibleSegment=function(r,t,a){var n=t.left,i=t.right,l=t.top,o=t.bottom,s=0,u=r.getTotalLength(),f=u,v,h;function d(g){var y=r.getPointAtLength(g);g===0?v=y:g===u&&(h=y);var _=y.xi?y.x-i:0,w=y.yo?y.y-o:0;return Math.sqrt(_*_+w*w)}for(var m=d(s);m;){if(s+=m+a,s>f)return;m=d(s)}for(m=d(f);m;){if(f-=m+a,s>f)return;m=d(f)}return{min:s,max:f,len:f-s,total:u,isClosed:s===0&&f===u&&Math.abs(v.x-h.x)<.1&&Math.abs(v.y-h.y)<.1}};io.findPointOnPath=function(r,t,a,n){n=n||{};for(var i=n.pathLength||r.getTotalLength(),l=n.tolerance||.001,o=n.iterationLimit||30,s=r.getPointAtLength(0)[a]>r.getPointAtLength(i)[a]?-1:1,u=0,f=0,v=i,h,d,m;u0?v=h:f=h,u++}return d}});var Iv=Z(tf=>{"use strict";var Ii={};tf.throttle=function(r,t,a){var n=Ii[r],i=Date.now();if(!n){for(var l in Ii)Ii[l].tsn.ts+t){o();return}n.timer=setTimeout(function(){o(),n.timer=null},t)};tf.done=function(e){var r=Ii[e];return!r||!r.timer?Promise.resolve():new Promise(function(t){var a=r.onDone;r.onDone=function(){a&&a(),t(),r.onDone=null}})};tf.clear=function(e){if(e)w4(Ii[e]),delete Ii[e];else for(var r in Ii)tf.clear(r)};function w4(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var M4=Z((Kle,T4)=>{"use strict";T4.exports=function(r){r._responsiveChartHandler&&(window.removeEventListener("resize",r._responsiveChartHandler),delete r._responsiveChartHandler)}});var A4=Z((Qle,Hv)=>{"use strict";Hv.exports=wp;Hv.exports.isMobile=wp;Hv.exports.default=wp;var OO=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,BO=/CrOS/,YO=/android|ipad|playbook|silk/i;function wp(e){e||(e={});let r=e.ua;if(!r&&typeof navigator!="undefined"&&(r=navigator.userAgent),r&&r.headers&&typeof r.headers["user-agent"]=="string"&&(r=r.headers["user-agent"]),typeof r!="string")return!1;let t=OO.test(r)&&!BO.test(r)||!!e.tablet&&YO.test(r);return!t&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&r.indexOf("Macintosh")!==-1&&r.indexOf("Safari")!==-1&&(t=!0),t}});var S4=Z(($le,k4)=>{"use strict";var UO=Hr(),VO=A4();k4.exports=function(r){var t;if(r&&r.hasOwnProperty("userAgent")?t=r.userAgent:t=GO(),typeof t!="string")return!0;var a=VO({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!a)for(var n=t.split(" "),i=1;i-1;o--){var s=n[o];if(s.slice(0,8)==="Version/"){var u=s.slice(8).split(".")[0];if(UO(u)&&(u=+u),u>=13)return!0}}}return a};function GO(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var L4=Z((jle,C4)=>{"use strict";var WO=Ir();C4.exports=function(r,t,a){var n=r.selectAll("g."+a.replace(/\s/g,".")).data(t,function(l){return l[0].trace.uid});n.exit().remove(),n.enter().append("g").attr("class",a),n.order();var i=r.classed("rangeplot")?"nodeRangePlot3":"node3";return n.each(function(l){l[0][i]=WO.select(this)}),n}});var D4=Z((eoe,q4)=>{"use strict";var ZO=br();q4.exports=function(r,t){for(var a=r._context.locale,n=0;n<2;n++){for(var i=r._context.locales,l=0;l<2;l++){var o=(i[a]||{}).dictionary;if(o){var s=o[t];if(s)return s}i=ZO.localeRegistry}var u=a.split("-")[0];if(u===a)break;a=u}return t}});var P4=Z((roe,E4)=>{"use strict";E4.exports=function(r){for(var t={},a=[],n=0,i=0;i{"use strict";R4.exports=function(r){for(var t=KO(r)?JO:XO,a=[],n=0;n{"use strict";N4.exports=function(r,t){if(!t)return r;var a=1/Math.abs(t),n=a>1?(a*r+a*t)/a:r+t,i=String(n).length;if(i>16){var l=String(t).length,o=String(r).length;if(i>=o+l){var s=parseFloat(n).toPrecision(12);s.indexOf("e+")===-1&&(n=+s)}}return n}});var H4=Z((noe,I4)=>{"use strict";var QO=Hr(),$O=Vt().BADNUM,jO=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;I4.exports=function(r){return typeof r=="string"&&(r=r.replace(jO,"")),QO(r)?Number(r):$O}});var Ie=Z((ioe,$4)=>{"use strict";var af=Ir(),eB=us().utcFormat,rB=G1().format,G4=Hr(),W4=Vt(),Z4=W4.FP_SAFE,tB=-Z4,O4=W4.BADNUM,fe=$4.exports={};fe.adjustFormat=function(r){return!r||/^\d[.]\df/.test(r)||/[.]\d%/.test(r)?r:r==="0.f"?"~f":/^\d%/.test(r)?"~%":/^\ds/.test(r)?"~s":!/^[~,.0$]/.test(r)&&/[&fps]/.test(r)?"~"+r:r};var B4={};fe.warnBadFormat=function(e){var r=String(e);B4[r]||(B4[r]=1,fe.warn('encountered bad format: "'+r+'"'))};fe.noFormat=function(e){return String(e)};fe.numberFormat=function(e){var r;try{r=rB(fe.adjustFormat(e))}catch(t){return fe.warnBadFormat(e),fe.noFormat}return r};fe.nestedProperty=mv();fe.keyedContainer=Eb();fe.relativeAttr=Rb();fe.isPlainObject=al();fe.toLogRange=gv();fe.relinkPrivateKeys=Ib();var cl=an();fe.isArrayBuffer=cl.isArrayBuffer;fe.isTypedArray=cl.isTypedArray;fe.isArrayOrTypedArray=cl.isArrayOrTypedArray;fe.isArray1D=cl.isArray1D;fe.ensureArray=cl.ensureArray;fe.concat=cl.concat;fe.maxRowLength=cl.maxRowLength;fe.minRowLength=cl.minRowLength;var X4=cs();fe.mod=X4.mod;fe.modHalf=X4.modHalf;var vl=ax();fe.valObjectMeta=vl.valObjectMeta;fe.coerce=vl.coerce;fe.coerce2=vl.coerce2;fe.coerceFont=vl.coerceFont;fe.coercePattern=vl.coercePattern;fe.coerceHoverinfo=vl.coerceHoverinfo;fe.coerceSelectionMarkerOpacity=vl.coerceSelectionMarkerOpacity;fe.validate=vl.validate;var nn=u4();fe.dateTime2ms=nn.dateTime2ms;fe.isDateTime=nn.isDateTime;fe.ms2DateTime=nn.ms2DateTime;fe.ms2DateTimeLocal=nn.ms2DateTimeLocal;fe.cleanDate=nn.cleanDate;fe.isJSDate=nn.isJSDate;fe.formatDate=nn.formatDate;fe.incrementMonth=nn.incrementMonth;fe.dateTick0=nn.dateTick0;fe.dfltRange=nn.dfltRange;fe.findExactDates=nn.findExactDates;fe.MIN_MS=nn.MIN_MS;fe.MAX_MS=nn.MAX_MS;var lo=pp();fe.findBin=lo.findBin;fe.sorterAsc=lo.sorterAsc;fe.sorterDes=lo.sorterDes;fe.distinctVals=lo.distinctVals;fe.roundUp=lo.roundUp;fe.sort=lo.sort;fe.findIndexOfMin=lo.findIndexOfMin;fe.sortObjectKeys=mp();var Hi=v4();fe.aggNums=Hi.aggNums;fe.len=Hi.len;fe.mean=Hi.mean;fe.geometricMean=Hi.geometricMean;fe.median=Hi.median;fe.midRange=Hi.midRange;fe.variance=Hi.variance;fe.stdev=Hi.stdev;fe.interp=Hi.interp;var Wn=kv();fe.init2dArray=Wn.init2dArray;fe.transposeRagged=Wn.transposeRagged;fe.dot=Wn.dot;fe.translationMatrix=Wn.translationMatrix;fe.rotationMatrix=Wn.rotationMatrix;fe.rotationXYMatrix=Wn.rotationXYMatrix;fe.apply3DTransform=Wn.apply3DTransform;fe.apply2DTransform=Wn.apply2DTransform;fe.apply2DTransform2=Wn.apply2DTransform2;fe.convertCssMatrix=Wn.convertCssMatrix;fe.inverseTransformMatrix=Wn.inverseTransformMatrix;var yi=y4();fe.deg2rad=yi.deg2rad;fe.rad2deg=yi.rad2deg;fe.angleDelta=yi.angleDelta;fe.angleDist=yi.angleDist;fe.isFullCircle=yi.isFullCircle;fe.isAngleInsideSector=yi.isAngleInsideSector;fe.isPtInsideSector=yi.isPtInsideSector;fe.pathArc=yi.pathArc;fe.pathSector=yi.pathSector;fe.pathAnnulus=yi.pathAnnulus;var Ts=g4();fe.isLeftAnchor=Ts.isLeftAnchor;fe.isCenterAnchor=Ts.isCenterAnchor;fe.isRightAnchor=Ts.isRightAnchor;fe.isTopAnchor=Ts.isTopAnchor;fe.isMiddleAnchor=Ts.isMiddleAnchor;fe.isBottomAnchor=Ts.isBottomAnchor;var Ms=_4();fe.segmentsIntersect=Ms.segmentsIntersect;fe.segmentDistance=Ms.segmentDistance;fe.getTextLocation=Ms.getTextLocation;fe.clearLocationCache=Ms.clearLocationCache;fe.getVisibleSegment=Ms.getVisibleSegment;fe.findPointOnPath=Ms.findPointOnPath;var Yv=Gt();fe.extendFlat=Yv.extendFlat;fe.extendDeep=Yv.extendDeep;fe.extendDeepAll=Yv.extendDeepAll;fe.extendDeepNoArrays=Yv.extendDeepNoArrays;var Tp=ro();fe.log=Tp.log;fe.warn=Tp.warn;fe.error=Tp.error;var aB=hs();fe.counterRegex=aB.counter;var Mp=Iv();fe.throttle=Mp.throttle;fe.throttleDone=Mp.done;fe.clearThrottle=Mp.clear;var Zn=Ku();fe.getGraphDiv=Zn.getGraphDiv;fe.isPlotDiv=Zn.isPlotDiv;fe.removeElement=Zn.removeElement;fe.addStyleRule=Zn.addStyleRule;fe.addRelatedStyleRule=Zn.addRelatedStyleRule;fe.deleteRelatedStyleRule=Zn.deleteRelatedStyleRule;fe.setStyleOnHover=Zn.setStyleOnHover;fe.getFullTransformMatrix=Zn.getFullTransformMatrix;fe.getElementTransformMatrix=Zn.getElementTransformMatrix;fe.getElementAndAncestors=Zn.getElementAndAncestors;fe.equalDomRects=Zn.equalDomRects;fe.clearResponsive=M4();fe.preserveDrawingBuffer=S4();fe.makeTraceGroups=L4();fe._=D4();fe.notifier=tp();fe.filterUnique=P4();fe.filterVisible=z4();fe.pushUnique=ip();fe.increment=F4();fe.cleanNumber=H4();fe.ensureNumber=function(r){return G4(r)?(r=Number(r),r>Z4||r=r?!1:G4(e)&&e>=0&&e%1===0};fe.noop=Av();fe.identity=hp();fe.repeat=function(e,r){for(var t=new Array(r),a=0;at?Math.max(t,Math.min(r,e)):Math.max(r,Math.min(t,e))};fe.bBoxIntersect=function(e,r,t){return t=t||0,e.left<=r.right+t&&r.left<=e.right+t&&e.top<=r.bottom+t&&r.top<=e.bottom+t};fe.simpleMap=function(e,r,t,a,n){for(var i=e.length,l=new Array(i),o=0;o=Math.pow(2,t)?n>10?(fe.warn("randstr failed uniqueness"),l):e(r,t,a,(n||0)+1):l};fe.OptionControl=function(e,r){e||(e={}),r||(r="opt");var t={};return t.optionList=[],t._newoption=function(a){a[r]=e,t[a.name]=a,t.optionList.push(a)},t["_"+r]=e,t};fe.smooth=function(e,r){if(r=Math.round(r)||0,r<2)return e;var t=e.length,a=2*t,n=2*r-1,i=new Array(n),l=new Array(t),o,s,u,f;for(o=0;o=a&&(u-=a*Math.floor(u/a)),u<0?u=-1-u:u>=t&&(u=a-1-u),f+=e[u]*i[s];l[o]=f}return l};fe.syncOrAsync=function(e,r,t){var a,n;function i(){return fe.syncOrAsync(e,r,t)}for(;e.length;)if(n=e.splice(0,1)[0],a=n(r),a&&a.then)return a.then(i);return t&&t(r)};fe.stripTrailingSlash=function(e){return e.slice(-1)==="/"?e.slice(0,-1):e};fe.noneOrAll=function(e,r,t){if(e){var a=!1,n=!0,i,l;for(i=0;i0?n:0})};fe.fillArray=function(e,r,t,a){if(a=a||fe.identity,fe.isArrayOrTypedArray(e))for(var n=0;nlB.test(window.navigator.userAgent);var oB=/Firefox\/(\d+)\.\d+/;fe.getFirefoxVersion=function(){var e=oB.exec(window.navigator.userAgent);if(e&&e.length===2){var r=parseInt(e[1]);if(!isNaN(r))return r}return null};fe.isD3Selection=function(e){return e instanceof af.selection};fe.ensureSingle=function(e,r,t,a){var n=e.select(r+(t?"."+t:""));if(n.size())return n;var i=e.append(r);return t&&i.classed(t,!0),a&&i.call(a),i};fe.ensureSingleById=function(e,r,t,a){var n=e.select(r+"#"+t);if(n.size())return n;var i=e.append(r).attr("id",t);return a&&i.call(a),i};fe.objectFromPath=function(e,r){for(var t=e.split("."),a,n=a={},i=0;i1?n+l[1]:"";if(i&&(l.length>1||o.length>4||t))for(;a.test(o);)o=o.replace(a,"$1"+i+"$2");return o+s};fe.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var Q4=/^\w*$/;fe.templateString=function(e,r){var t={};return e.replace(fe.TEMPLATE_STRING_REGEX,function(a,n){var i;return Q4.test(n)?i=r[n]:(t[n]=t[n]||fe.nestedProperty(r,n).get,i=t[n](!0)),i!==void 0?i:""})};var fB={max:10,count:0,name:"hovertemplate"};fe.hovertemplateString=e=>Ap(ov(Kl({},e),{opts:fB}));var cB={max:10,count:0,name:"texttemplate"};fe.texttemplateString=e=>Ap(ov(Kl({},e),{opts:cB}));var vB=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function hB(e){var r=e.match(vB);return r?{key:r[1],op:r[2],number:Number(r[3])}:{key:e,op:null,number:null}}var dB={max:10,count:0,name:"texttemplate",parseMultDiv:!0};fe.texttemplateStringForShapes=e=>Ap(ov(Kl({},e),{opts:dB}));var Y4=/^[:|\|]/;function Ap({data:e=[],locale:r,fallback:t,labels:a={},opts:n,template:i}){return i.replace(fe.TEMPLATE_STRING_REGEX,(l,o,s)=>{let u=["xother","yother"].includes(o),f=["_xother","_yother"].includes(o),v=["_xother_","_yother_"].includes(o),h=["xother_","yother_"].includes(o),d=u||f||h||v;(f||v)&&(o=o.substring(1)),(h||v)&&(o=o.substring(0,o.length-1));let m=null,g=null;if(n.parseMultDiv){var y=hB(o);o=y.key,m=y.op,g=y.number}let _;if(d){if(a[o]===void 0)return"";_=a[o]}else for(let M of e)if(M){if(M.hasOwnProperty(o)){_=M[o];break}if(Q4.test(o)||(_=fe.nestedProperty(M,o).get(!0)),_!==void 0)break}if(_===void 0){let{count:M,max:C,name:k}=n,q=t===!1?l:t;return M=Bv&&l<=U4,u=o>=Bv&&o<=U4;if(s&&(a=10*a+l-Bv),u&&(n=10*n+o-Bv),!s||!u){if(a!==n)return a-n;if(l!==o)return l-o}}return n-a};var ws=2e9;fe.seedPseudoRandom=function(){ws=2e9};fe.pseudoRandom=function(){var e=ws;return ws=(69069*ws+1)%4294967296,Math.abs(ws-e)<429496729?fe.pseudoRandom():ws/4294967296};fe.fillText=function(e,r,t){var a=Array.isArray(t)?function(l){t.push(l)}:function(l){t.text=l},n=fe.extractOption(e,r,"htx","hovertext");if(fe.isValidTextValue(n))return a(n);var i=fe.extractOption(e,r,"tx","text");if(fe.isValidTextValue(i))return a(i)};fe.isValidTextValue=function(e){return e||e===0};fe.formatPercent=function(e,r){r=r||0;for(var t=(Math.round(100*e*Math.pow(10,r))*Math.pow(.1,r)).toFixed(r)+"%",a=0;a1&&(u=1):u=0,fe.strTranslate(n-u*(t+l),i-u*(a+o))+fe.strScale(u)+(s?"rotate("+s+(r?"":" "+t+" "+a)+")":"")};fe.setTransormAndDisplay=function(e,r){e.attr("transform",fe.getTextTransform(r)),e.style("display",r.scale?null:"none")};fe.ensureUniformFontSize=function(e,r){var t=fe.extendFlat({},r);return t.size=Math.max(r.size,e._fullLayout.uniformtext.minsize||0),t};fe.join2=function(e,r,t){var a=e.length;return a>1?e.slice(0,-1).join(r)+t+e[a-1]:e.join(r)};fe.bigFont=function(e){return Math.round(1.2*e)};var V4=fe.getFirefoxVersion(),pB=V4!==null&&V4<86;fe.getPositionFromD3Event=function(){return pB?[af.event.layerX,af.event.layerY]:[af.event.offsetX,af.event.offsetY]}});var r6=Z(()=>{"use strict";var mB=Ie(),j4={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(kp in j4)e6=kp.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),mB.addStyleRule(e6,j4[kp]);var e6,kp});var Sp=Z((uoe,t6)=>{t6.exports=!0});var Lp=Z((foe,a6)=>{"use strict";var yB=Sp(),Cp;typeof window.matchMedia=="function"?Cp=!window.matchMedia("(hover: none)").matches:Cp=yB;a6.exports=Cp});var Gv=Z((coe,qp)=>{"use strict";var As=typeof Reflect=="object"?Reflect:null,n6=As&&typeof As.apply=="function"?As.apply:function(r,t,a){return Function.prototype.apply.call(r,t,a)},Uv;As&&typeof As.ownKeys=="function"?Uv=As.ownKeys:Object.getOwnPropertySymbols?Uv=function(r){return Object.getOwnPropertyNames(r).concat(Object.getOwnPropertySymbols(r))}:Uv=function(r){return Object.getOwnPropertyNames(r)};function gB(e){console&&console.warn&&console.warn(e)}var l6=Number.isNaN||function(r){return r!==r};function vt(){vt.init.call(this)}qp.exports=vt;qp.exports.once=wB;vt.EventEmitter=vt;vt.prototype._events=void 0;vt.prototype._eventsCount=0;vt.prototype._maxListeners=void 0;var i6=10;function Vv(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(vt,"defaultMaxListeners",{enumerable:!0,get:function(){return i6},set:function(e){if(typeof e!="number"||e<0||l6(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");i6=e}});vt.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};vt.prototype.setMaxListeners=function(r){if(typeof r!="number"||r<0||l6(r))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+r+".");return this._maxListeners=r,this};function o6(e){return e._maxListeners===void 0?vt.defaultMaxListeners:e._maxListeners}vt.prototype.getMaxListeners=function(){return o6(this)};vt.prototype.emit=function(r){for(var t=[],a=1;a0&&(l=t[0]),l instanceof Error)throw l;var o=new Error("Unhandled error."+(l?" ("+l.message+")":""));throw o.context=l,o}var s=i[r];if(s===void 0)return!1;if(typeof s=="function")n6(s,this,t);else for(var u=s.length,f=v6(s,u),a=0;a0&&l.length>n&&!l.warned){l.warned=!0;var o=new Error("Possible EventEmitter memory leak detected. "+l.length+" "+String(r)+" listeners added. Use emitter.setMaxListeners() to increase limit");o.name="MaxListenersExceededWarning",o.emitter=e,o.type=r,o.count=l.length,gB(o)}return e}vt.prototype.addListener=function(r,t){return s6(this,r,t,!1)};vt.prototype.on=vt.prototype.addListener;vt.prototype.prependListener=function(r,t){return s6(this,r,t,!0)};function bB(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function u6(e,r,t){var a={fired:!1,wrapFn:void 0,target:e,type:r,listener:t},n=bB.bind(a);return n.listener=t,a.wrapFn=n,n}vt.prototype.once=function(r,t){return Vv(t),this.on(r,u6(this,r,t)),this};vt.prototype.prependOnceListener=function(r,t){return Vv(t),this.prependListener(r,u6(this,r,t)),this};vt.prototype.removeListener=function(r,t){var a,n,i,l,o;if(Vv(t),n=this._events,n===void 0)return this;if(a=n[r],a===void 0)return this;if(a===t||a.listener===t)--this._eventsCount===0?this._events=Object.create(null):(delete n[r],n.removeListener&&this.emit("removeListener",r,a.listener||t));else if(typeof a!="function"){for(i=-1,l=a.length-1;l>=0;l--)if(a[l]===t||a[l].listener===t){o=a[l].listener,i=l;break}if(i<0)return this;i===0?a.shift():xB(a,i),a.length===1&&(n[r]=a[0]),n.removeListener!==void 0&&this.emit("removeListener",r,o||t)}return this};vt.prototype.off=vt.prototype.removeListener;vt.prototype.removeAllListeners=function(r){var t,a,n;if(a=this._events,a===void 0)return this;if(a.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):a[r]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete a[r]),this;if(arguments.length===0){var i=Object.keys(a),l;for(n=0;n=0;n--)this.removeListener(r,t[n]);return this};function f6(e,r,t){var a=e._events;if(a===void 0)return[];var n=a[r];return n===void 0?[]:typeof n=="function"?t?[n.listener||n]:[n]:t?_B(n):v6(n,n.length)}vt.prototype.listeners=function(r){return f6(this,r,!0)};vt.prototype.rawListeners=function(r){return f6(this,r,!1)};vt.listenerCount=function(e,r){return typeof e.listenerCount=="function"?e.listenerCount(r):c6.call(e,r)};vt.prototype.listenerCount=c6;function c6(e){var r=this._events;if(r!==void 0){var t=r[e];if(typeof t=="function")return 1;if(t!==void 0)return t.length}return 0}vt.prototype.eventNames=function(){return this._eventsCount>0?Uv(this._events):[]};function v6(e,r){for(var t=new Array(r),a=0;a{"use strict";var Dp=Gv().EventEmitter,MB={init:function(e){if(e._ev instanceof Dp)return e;var r=new Dp,t=new Dp;return e._ev=r,e._internalEv=t,e.on=r.on.bind(r),e.once=r.once.bind(r),e.removeListener=r.removeListener.bind(r),e.removeAllListeners=r.removeAllListeners.bind(r),e._internalOn=t.on.bind(t),e._internalOnce=t.once.bind(t),e._removeInternalListener=t.removeListener.bind(t),e._removeAllInternalListeners=t.removeAllListeners.bind(t),e.emit=function(a,n){r.emit(a,n),t.emit(a,n)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,r,t){var a,n=e._ev;if(!n)return;var i=n._events[r];if(!i)return;function l(s){if(s.listener){if(n.removeListener(r,s.listener),!s.fired)return s.fired=!0,s.listener.apply(n,[t])}else return s.apply(n,[t])}i=Array.isArray(i)?i:[i];var o;for(o=0;o{"use strict";var p6=Ie(),AB=eo().dfltConfig;function kB(e,r){for(var t=[],a,n=0;nAB.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};Oi.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};Oi.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};Oi.undo=function(r){var t,a;if(!(r.undoQueue===void 0||isNaN(r.undoQueue.index)||r.undoQueue.index<=0)){for(r.undoQueue.index--,t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a=r.undoQueue.queue.length)){for(t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a{"use strict";g6.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var Cs=Z(Wt=>{"use strict";var wn=br(),lf=Ie(),Zv=Vn(),Pp=ys(),SB=Ep(),CB=Qu(),LB=eo().configAttributes,b6=pi(),Xn=lf.extendDeepAll,ks=lf.isPlainObject,qB=lf.isArrayOrTypedArray,Xv=lf.nestedProperty,DB=lf.valObjectMeta,Rp="_isSubplotObj",Jv="_isLinkedToArray",EB="_arrayAttrRegexps",_6="_deprecated",zp=[Rp,Jv,EB,_6];Wt.IS_SUBPLOT_OBJ=Rp;Wt.IS_LINKED_TO_ARRAY=Jv;Wt.DEPRECATED=_6;Wt.UNDERSCORE_ATTRS=zp;Wt.get=function(){var e={};return wn.allTypes.forEach(function(r){e[r]=RB(r)}),{defs:{valObjects:DB,metaKeys:zp.concat(["description","role","editType","impliedEdits"]),editType:{traces:b6.traces,layout:b6.layout},impliedEdits:{}},traces:e,layout:zB(),frames:NB(),animation:Ss(CB),config:Ss(LB)}};Wt.crawl=function(e,r,t,a){var n=t||0;a=a||"",Object.keys(e).forEach(function(i){var l=e[i];if(zp.indexOf(i)===-1){var o=(a?a+".":"")+i;r(l,i,e,n,o),!Wt.isValObject(l)&&ks(l)&&i!=="impliedEdits"&&Wt.crawl(l,r,n+1,o)}})};Wt.isValObject=function(e){return e&&e.valType!==void 0};Wt.findArrayAttributes=function(e){var r=[],t=[],a=[],n,i;function l(s,u,f,v){t=t.slice(0,v).concat([u]),a=a.slice(0,v).concat([s&&s._isLinkedToArray]);var h=s&&(s.valType==="data_array"||s.arrayOk===!0)&&!(t[v-1]==="colorbar"&&(u==="ticktext"||u==="tickvals"));h&&o(n,0,"")}function o(s,u,f){var v=s[t[u]],h=f+t[u];if(u===t.length-1)qB(v)&&r.push(i+h);else if(a[u]){if(Array.isArray(v))for(var d=0;d=i.length)return!1;if(e.dimensions===2){if(t++,r.length===t)return e;var l=r[t];if(!Wv(l))return!1;e=i[n][l]}else e=i[n]}else e=i}}return e}function Wv(e){return e===Math.round(e)&&e>=0}function RB(e){var r,t;r=wn.modules[e]._module,t=r.basePlotModule;var a={};a.type=null;var n=Xn({},Zv),i=Xn({},r.attributes);Wt.crawl(i,function(s,u,f,v,h){Xv(n,h).set(void 0),s===void 0&&Xv(i,h).set(void 0)}),Xn(a,n),wn.traceIs(e,"noOpacity")&&delete a.opacity,wn.traceIs(e,"showLegend")||(delete a.showlegend,delete a.legendgroup),wn.traceIs(e,"noHover")&&(delete a.hoverinfo,delete a.hoverlabel),r.selectPoints||delete a.selectedpoints,Xn(a,i),t.attributes&&Xn(a,t.attributes),a.type=e;var l={meta:r.meta||{},categories:r.categories||{},animatable:!!r.animatable,type:e,attributes:Ss(a)};if(r.layoutAttributes){var o={};Xn(o,r.layoutAttributes),l.layoutAttributes=Ss(o)}return r.animatable||Wt.crawl(l,function(s){Wt.isValObject(s)&&"anim"in s&&delete s.anim}),l}function zB(){var e={},r,t;Xn(e,Pp);for(r in wn.subplotsRegistry)if(t=wn.subplotsRegistry[r],!!t.layoutAttributes)if(Array.isArray(t.attr))for(var a=0;a{"use strict";var Ls=Ie(),BB=Vn(),hl="templateitemname",Np={name:{valType:"string",editType:"none"}};Np[hl]={valType:"string",editType:"calc"};oo.templatedArray=function(e,r){return r._isLinkedToArray=e,r.name=Np.name,r[hl]=Np[hl],r};oo.traceTemplater=function(e){var r={},t,a;for(t in e)a=e[t],Array.isArray(a)&&a.length&&(r[t]=0);function n(i){t=Ls.coerce(i,{},BB,"type");var l={type:t,_template:null};if(t in r){a=e[t];var o=r[t]%a.length;r[t]++,l._template=a[o]}return l}return{newTrace:n}};oo.newContainer=function(e,r,t){var a=e._template,n=a&&(a[r]||t&&a[t]);Ls.isPlainObject(n)||(n=null);var i=e[r]={_template:n};return i};oo.arrayTemplater=function(e,r,t){var a=e._template,n=a&&a[M6(r)],i=a&&a[r];(!Array.isArray(i)||!i.length)&&(i=[]);var l={};function o(u){var f={name:u.name,_input:u},v=f[hl]=u[hl];if(!T6(v))return f._template=n,f;for(var h=0;h=a&&(t._input||{})._templateitemname;i&&(n=a);var l=r+"["+n+"]",o;function s(){o={},i&&(o[l]={},o[l][hl]=i)}s();function u(d,m){o[d]=m}function f(d,m){i?Ls.nestedProperty(o[l],d).set(m):o[l+"."+d]=m}function v(){var d=o;return s(),d}function h(d,m){d&&f(d,m);var g=v();for(var y in g)Ls.nestedProperty(e,y).set(g[y])}return{modifyBase:u,modifyItem:f,getUpdateObj:v,applyUpdate:h}}});var ya=Z((yoe,A6)=>{"use strict";var of=hs().counter;A6.exports={idRegex:{x:of("x","( domain)?"),y:of("y","( domain)?")},attrRegex:of("[xy]axis"),xAxisMatch:of("xaxis"),yAxisMatch:of("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var Zt=Z(Ja=>{"use strict";var YB=br(),Fp=ya();Ja.id2name=function(r){if(!(typeof r!="string"||!r.match(Fp.AX_ID_PATTERN))){var t=r.split(" ")[0].slice(1);return t==="1"&&(t=""),r.charAt(0)+"axis"+t}};Ja.name2id=function(r){if(r.match(Fp.AX_NAME_PATTERN)){var t=r.slice(5);return t==="1"&&(t=""),r.charAt(0)+t}};Ja.cleanId=function(r,t,a){var n=/( domain)$/.test(r);if(!(typeof r!="string"||!r.match(Fp.AX_ID_PATTERN))&&!(t&&r.charAt(0)!==t)&&!(n&&!a)){var i=r.split(" ")[0].slice(1).replace(/^0+/,"");return i==="1"&&(i=""),r.charAt(0)+i+(n&&a?" domain":"")}};Ja.list=function(e,r,t){var a=e._fullLayout;if(!a)return[];var n=Ja.listIds(e,r),i=new Array(n.length),l;for(l=0;la?1:-1:+(e.slice(1)||1)-+(r.slice(1)||1)};Ja.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function k6(e,r){if(r&&r.length){for(var t=0;t{"use strict";function UB(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".outline-controllers").remove()}function VB(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}S6.exports={clearOutlineControllers:UB,clearOutline:VB}});var Kv=Z((xoe,C6)=>{"use strict";C6.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var Ip=Z($v=>{"use strict";var Qv=br(),_oe=ya().SUBPLOT_PATTERN;$v.getSubplotCalcData=function(e,r,t){var a=Qv.subplotsRegistry[r];if(!a)return[];for(var n=a.attr,i=[],l=0;l{"use strict";var GB=br(),qs=Ie();so.manageCommandObserver=function(e,r,t,a){var n={},i=!0;r&&r._commandObserver&&(n=r._commandObserver),n.cache||(n.cache={}),n.lookupTable={};var l=so.hasSimpleAPICommandBindings(e,t,n.lookupTable);if(r&&r._commandObserver){if(l)return n;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,n}if(l){L6(e,l,n.cache),n.check=function(){if(i){var f=L6(e,l,n.cache);return f.changed&&a&&n.lookupTable[f.value]!==void 0&&(n.disable(),Promise.resolve(a({value:f.value,type:l.type,prop:l.prop,traces:l.traces,index:n.lookupTable[f.value]})).then(n.enable,n.enable)),f.changed}};for(var o=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],s=0;s0?".":"")+n;qs.isPlainObject(i)?Hp(i,r,l,a+1):r(l,n,i)}})}});var Ft=Z((Moe,W6)=>{"use strict";var H6=Ir(),ZB=us().timeFormatLocale,XB=G1().formatLocale,sf=Hr(),JB=W1(),Wr=br(),O6=Cs(),KB=ct(),fr=Ie(),B6=Er(),P6=Vt().BADNUM,Ka=Zt(),QB=dl().clearOutline,$B=Kv(),Op=Qu(),jB=Ep(),eY=Ip().getModuleCalcData,R6=fr.relinkPrivateKeys,uo=fr._,$e=W6.exports={};fr.extendFlat($e,Wr);$e.attributes=Vn();$e.attributes.type.values=$e.allTypes;$e.fontAttrs=ma();$e.layoutAttributes=ys();var e0=E6();$e.executeAPICommand=e0.executeAPICommand;$e.computeAPICommandBindings=e0.computeAPICommandBindings;$e.manageCommandObserver=e0.manageCommandObserver;$e.hasSimpleAPICommandBindings=e0.hasSimpleAPICommandBindings;$e.redrawText=function(e){return e=fr.getGraphDiv(e),new Promise(function(r){setTimeout(function(){e._fullLayout&&(Wr.getComponentMethod("annotations","draw")(e),Wr.getComponentMethod("legend","draw")(e),Wr.getComponentMethod("colorbar","draw")(e),r($e.previousPromises(e)))},300)})};$e.resize=function(e){e=fr.getGraphDiv(e);var r,t=new Promise(function(a,n){(!e||fr.isHidden(e))&&n(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(r=e._resolveResize),e._resolveResize=a,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||fr.isHidden(e)){a(e);return}delete e.layout.width,delete e.layout.height;var i=e.changed;e.autoplay=!0,Wr.call("relayout",e,{autosize:!0}).then(function(){e.changed=i,e._resolveResize===a&&(delete e._resolveResize,a(e))})},100)});return r&&r(t),t};$e.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};$e.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var r=e._fullLayout,t=fr.ensureSingle(r._paper,"text","js-plot-link-container",function(s){s.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:B6.defaultLine,"pointer-events":"all"}).each(function(){var u=H6.select(this);u.append("tspan").classed("js-link-to-tool",!0),u.append("tspan").classed("js-link-spacer",!0),u.append("tspan").classed("js-sourcelinks",!0)})}),a=t.node(),n={y:r._paper.attr("height")-9};document.body.contains(a)&&a.getComputedTextLength()>=r.width-20?(n["text-anchor"]="start",n.x=5):(n["text-anchor"]="end",n.x=r._paper.attr("width")-7),t.attr(n);var i=t.select(".js-link-to-tool"),l=t.select(".js-link-spacer"),o=t.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&rY(e,i),l.text(i.text()&&o.text()?" - ":"")}};function rY(e,r){r.text("");var t=r.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)t.on("click",function(){$e.sendDataToCloud(e)});else{var a=window.location.pathname.split("/"),n=window.location.search;t.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+a[2].split(".")[0]+"/"+a[1]+n})}}$e.sendDataToCloud=function(e){var r=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(r){e.emit("plotly_beforeexport");var t=H6.select(e).append("div").attr("id","hiddenform").style("display","none"),a=t.append("form").attr({action:r+"/external",method:"post",target:"_blank"}),n=a.append("input").attr({type:"text",name:"data"});return n.node().value=$e.graphJson(e,!1,"keepdata"),a.node().submit(),t.remove(),e.emit("plotly_afterexport"),!1}};var tY=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],aY=["year","month","dayMonth","dayMonthYear"];$e.supplyDefaults=function(e,r){var t=r&&r.skipUpdateCalc,a=e._fullLayout||{};if(a._skipDefaults){delete a._skipDefaults;return}var n=e._fullLayout={},i=e.layout||{},l=e._fullData||[],o=e._fullData=[],s=e.data||[],u=e.calcdata||[],f=e._context||{},v;e._transitionData||$e.createTransitionData(e),n._dfltTitle={plot:uo(e,"Click to enter Plot title"),subtitle:uo(e,"Click to enter Plot subtitle"),x:uo(e,"Click to enter X axis title"),y:uo(e,"Click to enter Y axis title"),colorbar:uo(e,"Click to enter Colorscale title"),annotation:uo(e,"new text")},n._traceWord=uo(e,"trace");var h=z6(e,tY);if(n._mapboxAccessToken=f.mapboxAccessToken,a._initialAutoSizeIsDone){var d=a.width,m=a.height;$e.supplyLayoutGlobalDefaults(i,n,h),i.width||(n.width=d),i.height||(n.height=m),$e.sanitizeMargins(n)}else{$e.supplyLayoutGlobalDefaults(i,n,h);var g=!i.width||!i.height,y=n.autosize,_=f.autosizable,w=g&&(y||_);w?$e.plotAutoSize(e,i,n):g&&$e.sanitizeMargins(n),!y&&g&&(i.width=n.width,i.height=n.height)}n._d3locale=lY(h,n.separators),n._extraFormat=z6(e,aY),n._initialAutoSizeIsDone=!0,n._dataLength=s.length,n._modules=[],n._visibleModules=[],n._basePlotModules=[];var T=n._subplots=iY(),b=n._splomAxes={x:{},y:{}},M=n._splomSubplots={};n._splomGridDflt={},n._scatterStackOpts={},n._firstScatter={},n._alignmentOpts={},n._colorAxes={},n._requestRangeslider={},n._traceUids=nY(l,s),$e.supplyDataDefaults(s,o,i,n);var C=Object.keys(b.x),k=Object.keys(b.y);if(C.length>1&&k.length>1){for(Wr.getComponentMethod("grid","sizeDefaults")(i,n),v=0;v15&&k.length>15&&n.shapes.length===0&&n.images.length===0,$e.linkSubplots(o,n,l,a),$e.cleanPlot(o,n,l,a);var F=!!(a._has&&a._has("cartesian")),H=!!(n._has&&n._has("cartesian")),O=F,J=H;O&&!J?a._bgLayer.remove():J&&!O&&(n._shouldCreateBgLayer=!0),a._zoomlayer&&!e._dragging&&QB({_fullLayout:a}),oY(o,n),R6(n,a),Wr.getComponentMethod("colorscale","crossTraceDefaults")(o,n),n._preGUI||(n._preGUI={}),n._tracePreGUI||(n._tracePreGUI={});var X=n._tracePreGUI,G={},I;for(I in X)G[I]="old";for(v=0;v0){var f=1-2*i;l=Math.round(f*l),o=Math.round(f*o)}}var v=$e.layoutAttributes.width.min,h=$e.layoutAttributes.height.min;l1,m=!t.height&&Math.abs(a.height-o)>1;(m||d)&&(d&&(a.width=l),m&&(a.height=o)),r._initialAutoSize||(r._initialAutoSize={width:l,height:o}),$e.sanitizeMargins(a)};$e.supplyLayoutModuleDefaults=function(e,r,t,a){var n=Wr.componentsRegistry,i=r._basePlotModules,l,o,s,u=Wr.subplotsRegistry.cartesian;for(l in n)s=n[l],s.includeBasePlot&&s.includeBasePlot(e,r);i.length||i.push(u),r._has("cartesian")&&(Wr.getComponentMethod("grid","contentDefaults")(e,r),u.finalizeSubplots(e,r));for(var f in r._subplots)r._subplots[f].sort(fr.subplotSort);for(o=0;o1&&(t.l/=y,t.r/=y)}if(h){var _=(t.t+t.b)/h;_>1&&(t.t/=_,t.b/=_)}var w=t.xl!==void 0?t.xl:t.x,T=t.xr!==void 0?t.xr:t.x,b=t.yt!==void 0?t.yt:t.y,M=t.yb!==void 0?t.yb:t.y;d[r]={l:{val:w,size:t.l+g},r:{val:T,size:t.r+g},b:{val:M,size:t.b+g},t:{val:b,size:t.t+g}},m[r]=1}if(!a._replotting)return $e.doAutoMargin(e)}};function uY(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var r=Ka.list(e,"",!0);for(var t in r)if(r[t].autoshift||r[t].shift)return!0;return!1}$e.doAutoMargin=function(e){var r=e._fullLayout,t=r.width,a=r.height;r._size||(r._size={}),Y6(r);var n=r._size,i=r.margin,l={t:0,b:0,l:0,r:0},o=fr.extendFlat({},n),s=i.l,u=i.r,f=i.t,v=i.b,h=r._pushmargin,d=r._pushmarginIds,m=r.minreducedwidth,g=r.minreducedheight;if(i.autoexpand!==!1){for(var y in h)d[y]||delete h[y];var _=e._fullLayout._reservedMargin;for(var w in _)for(var T in _[w]){var b=_[w][T];l[T]=Math.max(l[T],b)}h.base={l:{val:0,size:s},r:{val:1,size:u},t:{val:1,size:f},b:{val:0,size:v}};for(var M in l){var C=0;for(var k in h)k!=="base"&&sf(h[k][M].size)&&(C=h[k][M].size>C?h[k][M].size:C);var q=Math.max(0,i[M]-C);l[M]=Math.max(0,l[M]-q)}for(var D in h){var R=h[D].l||{},z=h[D].b||{},F=R.val,H=R.size,O=z.val,J=z.size,X=t-l.r-l.l,G=a-l.t-l.b;for(var I in h){if(sf(H)&&h[I].r){var Y=h[I].r.val,K=h[I].r.size;if(Y>F){var Q=(H*Y+(K-X)*F)/(Y-F),ne=(K*(1-F)+(H-X)*(1-Y))/(Y-F);Q+ne>s+u&&(s=Q,u=ne)}}if(sf(J)&&h[I].t){var me=h[I].t.val,de=h[I].t.size;if(me>O){var ke=(J*me+(de-G)*O)/(me-O),re=(de*(1-O)+(J-G)*(1-me))/(me-O);ke+re>v+f&&(v=ke,f=re)}}}}}var Ce=fr.constrain(t-i.l-i.r,U6,m),ce=fr.constrain(a-i.t-i.b,V6,g),_e=Math.max(0,t-Ce),se=Math.max(0,a-ce);if(_e){var ge=(s+u)/_e;ge>1&&(s/=ge,u/=ge)}if(se){var B=(v+f)/se;B>1&&(v/=B,f/=B)}if(n.l=Math.round(s)+l.l,n.r=Math.round(u)+l.r,n.t=Math.round(f)+l.t,n.b=Math.round(v)+l.b,n.p=Math.round(i.pad),n.w=Math.round(t)-n.l-n.r,n.h=Math.round(a)-n.t-n.b,!r._replotting&&($e.didMarginChange(o,n)||uY(e))){"_redrawFromAutoMarginCount"in r?r._redrawFromAutoMarginCount++:r._redrawFromAutoMarginCount=1;var $=3*(1+Object.keys(d).length);if(r._redrawFromAutoMarginCount<$)return Wr.call("_doPlot",e);r._size=o,fr.warn("Too many auto-margin redraws.")}fY(e)};function fY(e){var r=Ka.list(e,"",!0);["_adjustTickLabelsOverflow","_hideCounterAxisInsideTickLabels"].forEach(function(t){for(var a=0;a1)return!0}return!1};$e.graphJson=function(e,r,t,a,n,i){(n&&r&&!e._fullData||n&&!r&&!e._fullLayout)&&$e.supplyDefaults(e);var l=n?e._fullData:e.data,o=n?e._fullLayout:e.layout,s=(e._transitionData||{})._frames;function u(h,d){if(typeof h=="function")return d?"_function_":null;if(fr.isPlainObject(h)){var m={},g;return Object.keys(h).sort().forEach(function(T){if(["_","["].indexOf(T.charAt(0))===-1){if(typeof h[T]=="function"){d&&(m[T]="_function");return}if(t==="keepdata"){if(T.slice(-3)==="src")return}else if(t==="keepstream"){if(g=h[T+"src"],typeof g=="string"&&g.indexOf(":")>0&&!fr.isPlainObject(h.stream))return}else if(t!=="keepall"&&(g=h[T+"src"],typeof g=="string"&&g.indexOf(":")>0))return;m[T]=u(h[T],d)}}),m}var y=Array.isArray(h),_=fr.isTypedArray(h);if((y||_)&&h.dtype&&h.shape){var w=h.bdata;return u({dtype:h.dtype,shape:h.shape,bdata:fr.isArrayBuffer(w)?JB.encode(w):w},d)}return y?h.map(function(T){return u(T,d)}):_?fr.simpleMap(h,fr.identity):fr.isJSDate(h)?fr.ms2DateTimeLocal(+h):h}var f={data:(l||[]).map(function(h){var d=u(h);return r&&delete d.fit,d})};if(!r&&(f.layout=u(o),n)){var v=o._size;f.layout.computed={margin:{b:v.b,l:v.l,r:v.r,t:v.t}}}return s&&(f.frames=u(s)),i&&(f.config=u(e._context,!0)),a==="object"?f:JSON.stringify(f)};$e.modifyFrames=function(e,r){var t,a,n,i=e._transitionData._frames,l=e._transitionData._frameHash;for(t=0;t0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){a=!0}),t.redraw&&e._transitionData._interruptCallbacks.push(function(){return Wr.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var h=0,d=0;function m(){return h++,function(){d++,!a&&d===h&&o(v)}}t.runFn(m),setTimeout(m())})}function o(v){if(e._transitionData)return i(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(t.redraw)return Wr.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(v)}function s(){if(e._transitionData)return e._transitioning=!1,n(e._transitionData._interruptCallbacks)}var u=[$e.previousPromises,s,t.prepareFn,$e.rehover,$e.reselect,l],f=fr.syncOrAsync(u,e);return(!f||!f.then)&&(f=Promise.resolve()),f.then(function(){return e})}$e.doCalcdata=function(e,r){var t=Ka.list(e),a=e._fullData,n=e._fullLayout,i,l,o,s,u=new Array(a.length),f=(e.calcdata||[]).slice();for(e.calcdata=u,n._numBoxes=0,n._numViolins=0,n._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,n._piecolormap={},n._sunburstcolormap={},n._treemapcolormap={},n._iciclecolormap={},n._funnelareacolormap={},o=0;o=0;s--)if(M[s].enabled){i._indexToPoints=M[s]._indexToPoints;break}l&&l.calc&&(b=l.calc(e,i))}(!Array.isArray(b)||!b[0])&&(b=[{x:P6,y:P6}]),b[0].t||(b[0].t={}),b[0].trace=i,u[w]=b}}for(F6(t,a,n),o=0;o{"use strict";fo.xmlns="http://www.w3.org/2000/xmlns/";fo.svg="http://www.w3.org/2000/svg";fo.xlink="http://www.w3.org/1999/xlink";fo.svgAttrs={xmlns:fo.svg,"xmlns:xlink":fo.xlink}});var Pa=Z((koe,Z6)=>{"use strict";Z6.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var Ta=Z(Tn=>{"use strict";var It=Ir(),Bi=Ie(),hY=Bi.strTranslate,Bp=co(),dY=Pa().LINE_SPACING,pY=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;Tn.convertToTspans=function(e,r,t){var a=e.text(),n=!e.attr("data-notex")&&r&&r._context.typesetMath&&typeof MathJax!="undefined"&&a.match(pY),i=It.select(e.node().parentNode);if(i.empty())return;var l=e.attr("class")?e.attr("class").split(" ")[0]:"text";l+="-math",i.selectAll("svg."+l).remove(),i.selectAll("g."+l+"-group").remove(),e.style("display",null).attr({"data-unformatted":a,"data-math":"N"});function o(){i.empty()||(l=e.attr("class")+"-math",i.select("svg."+l).remove()),e.text("").style("white-space","pre");var s=CY(e.node(),a);s&&e.style("pointer-events","all"),Tn.positionText(e),t&&t.call(e)}return n?(r&&r._promises||[]).push(new Promise(function(s){e.style("display","none");var u=parseInt(e.node().style.fontSize,10),f={fontSize:u};bY(n[2],f,function(v,h,d){i.selectAll("svg."+l).remove(),i.selectAll("g."+l+"-group").remove();var m=v&&v.select("svg");if(!m||!m.node()){o(),s();return}var g=i.append("g").classed(l+"-group",!0).attr({"pointer-events":"none","data-unformatted":a,"data-math":"Y"});g.node().appendChild(m.node()),h&&h.node()&&m.node().insertBefore(h.node().cloneNode(!0),m.node().firstChild);var y=d.width,_=d.height;m.attr({class:l,height:_,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var w=e.node().style.fill||"black",T=m.select("g");T.attr({fill:w,stroke:w});var b=T.node().getBoundingClientRect(),M=b.width,C=b.height;(M>y||C>_)&&(m.style("overflow","hidden"),b=m.node().getBoundingClientRect(),M=b.width,C=b.height);var k=+e.attr("x"),q=+e.attr("y"),D=u||e.node().getBoundingClientRect().height,R=-D/4;if(l[0]==="y")g.attr({transform:"rotate("+[-90,k,q]+")"+hY(-M/2,R-C/2)});else if(l[0]==="l")q=R-C/2;else if(l[0]==="a"&&l.indexOf("atitle")!==0)k=0,q=R;else{var z=e.attr("text-anchor");k=k-M*(z==="middle"?.5:z==="end"?1:0),q=q+R-C/2}m.attr({x:k,y:q}),t&&t.call(e,g),s(g)})})):o(),e};var mY=/(<|<|<)/g,yY=/(>|>|>)/g;function gY(e){return e.replace(mY,"\\lt ").replace(yY,"\\gt ")}var X6=[["$","$"],["\\(","\\)"]];function bY(e,r,t){var a=parseInt((MathJax.version||"").split(".")[0]);if(a!==2&&a!==3){Bi.warn("No MathJax version:",MathJax.version);return}var n,i,l,o,s=function(){return i=Bi.extendDeepAll({},MathJax.Hub.config),l=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:X6},displayAlign:"left"})},u=function(){i=Bi.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=X6},f=function(){if(n=MathJax.Hub.config.menuSettings.renderer,n!=="SVG")return MathJax.Hub.setRenderer("SVG")},v=function(){n=MathJax.config.startup.output,n!=="svg"&&(MathJax.config.startup.output="svg")},h=function(){var w="math-output-"+Bi.randstr({},64);o=It.select("body").append("div").attr({id:w}).style({visibility:"hidden",position:"absolute","font-size":r.fontSize+"px"}).text(gY(e));var T=o.node();return a===2?MathJax.Hub.Typeset(T):MathJax.typeset([T])},d=function(){var w=o.select(a===2?".MathJax_SVG":".MathJax"),T=!w.empty()&&o.select("svg").node();if(!T)Bi.log("There was an error in the tex syntax.",e),t();else{var b=T.getBoundingClientRect(),M;a===2?M=It.select("body").select("#MathJax_SVG_glyphs"):M=w.select("defs"),t(w,M,b)}o.remove()},m=function(){if(n!=="SVG")return MathJax.Hub.setRenderer(n)},g=function(){n!=="svg"&&(MathJax.config.startup.output=n)},y=function(){return l!==void 0&&(MathJax.Hub.processSectionDelay=l),MathJax.Hub.Config(i)},_=function(){MathJax.config=i};a===2?MathJax.Hub.Queue(s,f,h,d,m,y):a===3&&(u(),v(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){h(),d(),g(),_()}))}var $6={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},xY={sub:"0.3em",sup:"-0.6em"},_Y={sub:"-0.21em",sup:"0.42em"},J6="\u200B",K6=["http:","https:","mailto:","",void 0,":"],j6=Tn.NEWLINES=/(\r\n?|\n)/g,Up=/(<[^<>]*>)/,Vp=/<(\/?)([^ >]*)(\s+(.*))?>/i,wY=//i;Tn.BR_TAG_ALL=//gi;var e7=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,r7=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,t7=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,TY=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function vo(e,r){if(!e)return null;var t=e.match(r),a=t&&(t[3]||t[4]);return a&&r0(a)}var MY=/(^|;)\s*color:/;Tn.plainText=function(e,r){r=r||{};for(var t=r.len!==void 0&&r.len!==-1?r.len:1/0,a=r.allowedTags!==void 0?r.allowedTags:["br"],n="...",i=n.length,l=e.split(Up),o=[],s="",u=0,f=0;fi?o.push(v.slice(0,Math.max(0,g-i))+n):o.push(v.slice(0,g));break}s=""}}return o.join("")};var AY={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},kY=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function r0(e){return e.replace(kY,function(r,t){var a;return t.charAt(0)==="#"?a=SY(t.charAt(1)==="x"?parseInt(t.slice(2),16):parseInt(t.slice(1),10)):a=AY[t],a||r})}Tn.convertEntities=r0;function SY(e){if(!(e>1114111)){var r=String.fromCodePoint;if(r)return r(e);var t=String.fromCharCode;return e<=65535?t(e):t((e>>10)+55232,e%1024+56320)}}function CY(e,r){r=r.replace(j6," ");var t=!1,a=[],n,i=-1;function l(){i++;var C=document.createElementNS(Bp.svg,"tspan");It.select(C).attr({class:"line",dy:i*dY+"em"}),e.appendChild(C),n=C;var k=a;if(a=[{node:C}],k.length>1)for(var q=1;q.",r);return}var k=a.pop();C!==k.type&&Bi.log("Start tag <"+k.type+"> doesnt match end tag <"+C+">. Pretending it did match.",r),n=a[a.length-1].node}var f=wY.test(r);f?l():(n=e,a=[{node:e}]);for(var v=r.split(Up),h=0;h{"use strict";var LY=Ir(),a0=xn(),ff=Hr(),t0=Ie(),n7=Er(),qY=$l().isValid;function DY(e,r,t){var a=r?t0.nestedProperty(e,r).get()||{}:e,n=a[t||"color"];n&&n._inputArray&&(n=n._inputArray);var i=!1;if(t0.isArrayOrTypedArray(n)){for(var l=0;l=0;a--,n++){var i=e[a];t[n]=[1-i[0],i[1]]}return t}function f7(e,r){r=r||{};for(var t=e.domain,a=e.range,n=a.length,i=new Array(n),l=0;l{"use strict";var v7=up(),PY=v7.FORMAT_LINK,RY=v7.DATE_FORMAT_LINK;function zY(e,r){return{valType:"string",dflt:"",editType:"none",description:(r?Gp:h7)("hover text",e)+["By default the values are formatted using "+(r?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function Gp(e,r){return["Sets the "+e+" formatting rule"+(r?"for `"+r+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+PY+"."].join(" ")}function h7(e,r){return Gp(e,r)+[" And for dates see: "+RY+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}d7.exports={axisHoverFormat:zY,descriptionOnlyNumbers:Gp,descriptionWithDates:h7}});var Jn=Z((Doe,D7)=>{"use strict";var p7=ma(),Ds=di(),q7=mi().dash,Zp=Gt().extendFlat,m7=ct().templatedArray,qoe=to().templateFormatStringDescription,y7=n0().descriptionWithDates,NY=Vt().ONEDAY,gi=ya(),FY=gi.HOUR_PATTERN,IY=gi.WEEKDAY_PATTERN,Wp={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},HY=Zp({},Wp,{values:Wp.values.slice().concat(["sync"])});function g7(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var b7={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},x7={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},_7={valType:"data_array",editType:"ticks"},w7={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function T7(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=5),r}function M7(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var A7={valType:"color",dflt:Ds.defaultLine,editType:"ticks"},k7={valType:"color",dflt:Ds.lightLine,editType:"ticks"};function S7(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var C7=Zp({},q7,{editType:"ticks"}),L7={valType:"boolean",editType:"ticks"};D7.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:Ds.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:p7({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[gi.idRegex.x.toString(),gi.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[gi.idRegex.x.toString(),gi.idRegex.y.toString()],editType:"calc"},rangebreaks:m7("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[IY,FY,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:NY},editType:"calc"}),tickmode:HY,nticks:g7(),tick0:b7,dtick:x7,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:_7,ticktext:{valType:"data_array",editType:"ticks"},ticks:w7,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:T7(),tickwidth:M7(),tickcolor:A7,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:Zp({},q7,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:p7({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:y7("tick label")},tickformatstops:m7("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:y7("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:Ds.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:L7,gridcolor:k7,gridwidth:S7(),griddash:C7,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:Ds.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:Ds.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",gi.idRegex.x.toString(),gi.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",gi.idRegex.x.toString(),gi.idRegex.y.toString()],editType:"plot"},minor:{tickmode:Wp,nticks:g7("minor"),tick0:b7,dtick:x7,tickvals:_7,ticks:w7,ticklen:T7("minor"),tickwidth:M7("minor"),tickcolor:A7,gridcolor:k7,gridwidth:S7("minor"),griddash:C7,showgrid:L7,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var i0=Z((Eoe,R7)=>{"use strict";var ht=Jn(),E7=ma(),P7=Gt().extendFlat,OY=pi().overrideAll;R7.exports=OY({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:ht.linecolor,outlinewidth:ht.linewidth,bordercolor:ht.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:ht.minor.tickmode,nticks:ht.nticks,tick0:ht.tick0,dtick:ht.dtick,tickvals:ht.tickvals,ticktext:ht.ticktext,ticks:P7({},ht.ticks,{dflt:""}),ticklabeloverflow:P7({},ht.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:ht.ticklen,tickwidth:ht.tickwidth,tickcolor:ht.tickcolor,ticklabelstep:ht.ticklabelstep,showticklabels:ht.showticklabels,labelalias:ht.labelalias,tickfont:E7({}),tickangle:ht.tickangle,tickformat:ht.tickformat,tickformatstops:ht.tickformatstops,tickprefix:ht.tickprefix,showtickprefix:ht.showtickprefix,ticksuffix:ht.ticksuffix,showticksuffix:ht.showticksuffix,separatethousands:ht.separatethousands,exponentformat:ht.exponentformat,minexponent:ht.minexponent,showexponent:ht.showexponent,title:{text:{valType:"string"},font:E7({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var cf=Z((Roe,N7)=>{"use strict";var BY=i0(),YY=hs().counter,UY=mp(),z7=$l().scales,Poe=UY(z7);function l0(e){return"`"+e+"`"}N7.exports=function(r,t){r=r||"",t=t||{};var a=t.cLetter||"c",n="onlyIfNumerical"in t?t.onlyIfNumerical:!!r,i="noScale"in t?t.noScale:r==="marker.line",l="showScaleDflt"in t?t.showScaleDflt:a==="z",o=typeof t.colorscaleDflt=="string"?z7[t.colorscaleDflt]:null,s=t.editTypeOverride||"",u=r?r+".":"",f,v;"colorAttr"in t?(f=t.colorAttr,v=t.colorAttr):(f={z:"z",c:"color"}[a],v="in "+l0(u+f));var h=n?" Has an effect only if "+v+" is set to a numerical array.":"",d=a+"auto",m=a+"min",g=a+"max",y=a+"mid",_=l0(u+d),w=l0(u+m),T=l0(u+g),b=w+" and "+T,M={};M[m]=M[g]=void 0;var C={};C[d]=!1;var k={};return f==="color"&&(k.color={valType:"color",arrayOk:!0,editType:s||"style"},t.anim&&(k.color.anim=!0)),k[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:M},k[m]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:C},k[g]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:C},k[y]={valType:"number",dflt:null,editType:"calc",impliedEdits:M},k.colorscale={valType:"colorscale",editType:"calc",dflt:o,impliedEdits:{autocolorscale:!1}},k.autocolorscale={valType:"boolean",dflt:t.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},k.reversescale={valType:"boolean",dflt:!1,editType:"plot"},i||(k.showscale={valType:"boolean",dflt:l,editType:"calc"},k.colorbar=BY),t.noColorAxis||(k.coloraxis={valType:"subplotid",regex:YY("coloraxis"),dflt:null,editType:"calc"}),k}});var Jp=Z((zoe,F7)=>{"use strict";var VY=Gt().extendFlat,GY=cf(),Xp=$l().scales;F7.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:Xp.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:Xp.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:Xp.RdBu,editType:"calc"}},coloraxis:VY({_isSubplotObj:!0,editType:"calc"},GY("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var Kp=Z((Noe,I7)=>{"use strict";var WY=Ie();I7.exports=function(r){return WY.isPlainObject(r.colorbar)}});var jp=Z($p=>{"use strict";var Qp=Hr(),H7=Ie(),O7=Vt(),ZY=O7.ONEDAY,XY=O7.ONEWEEK;$p.dtick=function(e,r){var t=r==="log",a=r==="date",n=r==="category",i=a?ZY:1;if(!e)return i;if(Qp(e))return e=Number(e),e<=0?i:n?Math.max(1,Math.round(e)):a?Math.max(.1,e):e;if(typeof e!="string"||!(a||t))return i;var l=e.charAt(0),o=e.slice(1);return o=Qp(o)?Number(o):0,o<=0||!(a&&l==="M"&&o===Math.round(o)||t&&l==="L"||t&&l==="D"&&(o===1||o===2))?i:e};$p.tick0=function(e,r,t,a){if(r==="date")return H7.cleanDate(e,H7.dateTick0(t,a%XY===0?1:0));if(!(a==="D1"||a==="D2"))return Qp(e)?Number(e):0}});var em=Z((Ioe,Y7)=>{"use strict";var B7=jp(),JY=Ie().isArrayOrTypedArray,KY=an().isTypedArraySpec,QY=an().decodeTypedArraySpec;Y7.exports=function(r,t,a,n,i){i||(i={});var l=i.isMinor,o=l?r.minor||{}:r,s=l?t.minor:t,u=l?"minor.":"";function f(w){var T=o[w];return KY(T)&&(T=QY(T)),T!==void 0?T:(s._template||{})[w]}var v=f("tick0"),h=f("dtick"),d=f("tickvals"),m=JY(d)?"array":h?"linear":"auto",g=a(u+"tickmode",m);if(g==="auto"||g==="sync")a(u+"nticks");else if(g==="linear"){var y=s.dtick=B7.dtick(h,n);s.tick0=B7.tick0(v,n,t.calendar,y)}else if(n!=="multicategory"){var _=a(u+"tickvals");_===void 0?s.tickmode="auto":l||a("ticktext")}}});var tm=Z((Hoe,V7)=>{"use strict";var rm=Ie(),U7=Jn();V7.exports=function(r,t,a,n){var i=n.isMinor,l=i?r.minor||{}:r,o=i?t.minor:t,s=i?U7.minor:U7,u=i?"minor.":"",f=rm.coerce2(l,o,s,"ticklen",i?(t.ticklen||5)*.6:void 0),v=rm.coerce2(l,o,s,"tickwidth",i?t.tickwidth||1:void 0),h=rm.coerce2(l,o,s,"tickcolor",(i?t.tickcolor:void 0)||o.color),d=a(u+"ticks",!i&&n.outerTicks||f||v||h?"outside":"");d||(delete o.ticklen,delete o.tickwidth,delete o.tickcolor)}});var am=Z((Ooe,G7)=>{"use strict";G7.exports=function(r){var t=["showexponent","showtickprefix","showticksuffix"],a=t.filter(function(i){return r[i]!==void 0}),n=function(i){return r[i]===r[a[0]]};if(a.every(n)||a.length===1)return r[a[0]]}});var Kn=Z((Boe,W7)=>{"use strict";var o0=Ie(),$Y=ct();W7.exports=function(r,t,a){var n=a.name,i=a.inclusionAttr||"visible",l=t[n],o=o0.isArrayOrTypedArray(r[n])?r[n]:[],s=t[n]=[],u=$Y.arrayTemplater(t,n,i),f,v;for(f=0;f{"use strict";var nm=Ie(),jY=Er().contrast,Z7=Jn(),eU=am(),rU=Kn();X7.exports=function(r,t,a,n,i){i||(i={});var l=a("labelalias");nm.isPlainObject(l)||delete t.labelalias;var o=eU(r),s=a("showticklabels");if(s){i.noTicklabelshift||a("ticklabelshift"),i.noTicklabelstandoff||a("ticklabelstandoff");var u=i.font||{},f=t.color,v=t.ticklabelposition||"",h=v.indexOf("inside")!==-1?jY(i.bgColor):f&&f!==Z7.color.dflt?f:u.color;if(nm.coerceFont(a,"tickfont",u,{overrideDflt:{color:h}}),!i.noTicklabelstep&&n!=="multicategory"&&n!=="log"&&a("ticklabelstep"),!i.noAng){var d=a("tickangle");!i.noAutotickangles&&d==="auto"&&a("autotickangles")}if(n!=="category"){var m=a("tickformat");rU(r,t,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:tU}),t.tickformatstops.length||delete t.tickformatstops,!i.noExp&&!m&&n!=="date"&&(a("showexponent",o),a("exponentformat"),a("minexponent"),a("separatethousands"))}!i.noMinorloglabels&&n==="log"&&a("minorloglabels")}};function tU(e,r){function t(n,i){return nm.coerce(e,r,Z7.tickformatstops,n,i)}var a=t("enabled");a&&(t("dtickrange"),t("value"))}});var lm=Z((Uoe,J7)=>{"use strict";var aU=am();J7.exports=function(r,t,a,n,i){i||(i={});var l=i.tickSuffixDflt,o=aU(r),s=a("tickprefix");s&&a("showtickprefix",o);var u=a("ticksuffix",l);u&&a("showticksuffix",o)}});var om=Z((Voe,K7)=>{"use strict";var pl=Ie(),nU=ct(),iU=em(),lU=tm(),oU=im(),sU=lm(),uU=i0();K7.exports=function(r,t,a){var n=nU.newContainer(t,"colorbar"),i=r.colorbar||{};function l(z,F){return pl.coerce(i,n,uU,z,F)}var o=a.margin||{t:0,b:0,l:0,r:0},s=a.width-o.l-o.r,u=a.height-o.t-o.b,f=l("orientation"),v=f==="v",h=l("thicknessmode");l("thickness",h==="fraction"?30/(v?s:u):30);var d=l("lenmode");l("len",d==="fraction"?1:v?u:s);var m=l("yref"),g=l("xref"),y=m==="paper",_=g==="paper",w,T,b,M="left";v?(b="middle",M=_?"left":"right",w=_?1.02:1,T=.5):(b=y?"bottom":"top",M="center",w=.5,T=y?1.02:1),pl.coerce(i,n,{x:{valType:"number",min:_?-2:0,max:_?3:1,dflt:w}},"x"),pl.coerce(i,n,{y:{valType:"number",min:y?-2:0,max:y?3:1,dflt:T}},"y"),l("xanchor",M),l("xpad"),l("yanchor",b),l("ypad"),pl.noneOrAll(i,n,["x","y"]),l("outlinecolor"),l("outlinewidth"),l("bordercolor"),l("borderwidth"),l("bgcolor");var C=pl.coerce(i,n,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:v?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");l("ticklabeloverflow",C.indexOf("inside")!==-1?"hide past domain":"hide past div"),iU(i,n,l,"linear");var k=a.font,q={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:k};C.indexOf("inside")!==-1&&(q.bgColor="black"),sU(i,n,l,"linear",q),oU(i,n,l,"linear",q),lU(i,n,l,"linear",q),l("title.text",a._dfltTitle.colorbar);var D=n.showticklabels?n.tickfont:k,R=pl.extendFlat({},k,{family:D.family,size:pl.bigFont(D.size)});pl.coerceFont(l,"title.font",R),l("title.side",v?"top":"right")}});var Es=Z((Goe,j7)=>{"use strict";var Q7=Hr(),um=Ie(),fU=Kp(),cU=om(),$7=$l().isValid,vU=br().traceIs;function sm(e,r){var t=r.slice(0,r.length-1);return r?um.nestedProperty(e,t).get()||{}:e}j7.exports=function e(r,t,a,n,i){var l=i.prefix,o=i.cLetter,s="_module"in t,u=sm(r,l),f=sm(t,l),v=sm(t._template||{},l)||{},h=function(){return delete r.coloraxis,delete t.coloraxis,e(r,t,a,n,i)};if(s){var d=a._colorAxes||{},m=n(l+"coloraxis");if(m){var g=vU(t,"contour")&&um.nestedProperty(t,"contours.coloring").get()||"heatmap",y=d[m];y?(y[2].push(h),y[0]!==g&&(y[0]=!1,um.warn(["Ignoring coloraxis:",m,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[m]=[g,t,[h]];return}}var _=u[o+"min"],w=u[o+"max"],T=Q7(_)&&Q7(w)&&_{"use strict";var e9=Ie(),hU=ct(),r9=Jp(),dU=Es();t9.exports=function(r,t){function a(v,h){return e9.coerce(r,t,r9,v,h)}a("colorscale.sequential"),a("colorscale.sequentialminus"),a("colorscale.diverging");var n=t._colorAxes,i,l;function o(v,h){return e9.coerce(i,l,r9.coloraxis,v,h)}for(var s in n){var u=n[s];if(u[0])i=r[s]||{},l=hU.newContainer(t,s,"coloraxis"),l._name=s,dU(i,l,t,o,{prefix:"",cLetter:"c"});else{for(var f=0;f{"use strict";var pU=Ie(),mU=Mn().hasColorscale,yU=Mn().extractOpts;n9.exports=function(r,t){function a(f,v){var h=f["_"+v];h!==void 0&&(f[v]=h)}function n(f,v){var h=v.container?pU.nestedProperty(f,v.container).get():f;if(h)if(h.coloraxis)h._colorAx=t[h.coloraxis];else{var d=yU(h),m=d.auto;(m||d.min===void 0)&&a(h,v.min),(m||d.max===void 0)&&a(h,v.max),d.autocolorscale&&a(h,"colorscale")}}for(var i=0;i{"use strict";var l9=Hr(),fm=Ie(),gU=Mn().extractOpts;o9.exports=function(r,t,a){var n=r._fullLayout,i=a.vals,l=a.containerStr,o=l?fm.nestedProperty(t,l).get():t,s=gU(o),u=s.auto!==!1,f=s.min,v=s.max,h=s.mid,d=function(){return fm.aggNums(Math.min,null,i)},m=function(){return fm.aggNums(Math.max,null,i)};if(f===void 0?f=d():u&&(o._colorAx&&l9(f)?f=Math.min(f,d()):f=d()),v===void 0?v=m():u&&(o._colorAx&&l9(v)?v=Math.max(v,m()):v=m()),u&&h!==void 0&&(v-h>h-f?f=h-(v-h):v-h=0?g=n.colorscale.sequential:g=n.colorscale.sequentialminus,s._sync("colorscale",g)}}});var cm=Z((Joe,s9)=>{"use strict";var u0=$l(),Ps=Mn();s9.exports={moduleType:"component",name:"colorscale",attributes:cf(),layoutAttributes:Jp(),supplyLayoutDefaults:a9(),handleDefaults:Es(),crossTraceDefaults:i9(),calc:s0(),scales:u0.scales,defaultScale:u0.defaultScale,getScale:u0.get,isValidScale:u0.isValid,hasColorscale:Ps.hasColorscale,extractOpts:Ps.extractOpts,extractScale:Ps.extractScale,flipScale:Ps.flipScale,makeColorScaleFunc:Ps.makeColorScaleFunc,makeColorScaleFuncFromTrace:Ps.makeColorScaleFuncFromTrace}});var ln=Z((Koe,f9)=>{"use strict";var u9=Ie(),bU=an().isTypedArraySpec;f9.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var r=e.marker;return u9.isPlainObject(r)&&(u9.isArrayOrTypedArray(r.size)||bU(r.size))}}});var v9=Z((Qoe,c9)=>{"use strict";var xU=Hr();c9.exports=function(r,t){t||(t=2);var a=r.marker,n=a.sizeref||1,i=a.sizemin||0,l=a.sizemode==="area"?function(o){return Math.sqrt(o/n)}:function(o){return o/n};return function(o){var s=l(o/t);return xU(s)&&s>0?Math.max(s,i):0}}});var bi=Z(Ma=>{"use strict";var f0=Ie();Ma.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};Ma.isTraceInSubplots=function(e,r){if(e.type==="splom"){for(var t=e.xaxes||[],a=e.yaxes||[],n=0;n=0&&t.index{p9.exports=AU;var vm={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},MU=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function AU(e){var r=[];return e.replace(MU,function(t,a,n){var i=a.toLowerCase();for(n=SU(n),i=="m"&&n.length>2&&(r.push([a].concat(n.splice(0,2))),i="l",a=a=="m"?"l":"L");;){if(n.length==vm[i])return n.unshift(a),r.push(n);if(n.length{"use strict";var CU=hm(),Xe=function(e,r){return r?Math.round(e*(r=Math.pow(10,r)))/r:Math.round(e)},Ar="M0,0Z",m9=Math.sqrt(2),ml=Math.sqrt(3),dm=Math.PI,pm=Math.cos,mm=Math.sin;_9.exports={circle:{n:0,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n="M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z";return t?Sr(r,t,n):n}},square:{n:1,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")}},diamond:{n:2,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.3,2);return Sr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"Z")}},cross:{n:3,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.4,2),n=Xe(e*1.2,2);return Sr(r,t,"M"+n+","+a+"H"+a+"V"+n+"H-"+a+"V"+a+"H-"+n+"V-"+a+"H-"+a+"V-"+n+"H"+a+"V-"+a+"H"+n+"Z")}},x:{n:4,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.8/m9,2),n="l"+a+","+a,i="l"+a+",-"+a,l="l-"+a+",-"+a,o="l-"+a+","+a;return Sr(r,t,"M0,"+a+n+i+l+i+l+o+l+o+n+o+n+"Z")}},"triangle-up":{n:5,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2/ml,2),n=Xe(e/2,2),i=Xe(e,2);return Sr(r,t,"M-"+a+","+n+"H"+a+"L0,-"+i+"Z")}},"triangle-down":{n:6,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2/ml,2),n=Xe(e/2,2),i=Xe(e,2);return Sr(r,t,"M-"+a+",-"+n+"H"+a+"L0,"+i+"Z")}},"triangle-left":{n:7,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2/ml,2),n=Xe(e/2,2),i=Xe(e,2);return Sr(r,t,"M"+n+",-"+a+"V"+a+"L-"+i+",0Z")}},"triangle-right":{n:8,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2/ml,2),n=Xe(e/2,2),i=Xe(e,2);return Sr(r,t,"M-"+n+",-"+a+"V"+a+"L"+i+",0Z")}},"triangle-ne":{n:9,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.6,2),n=Xe(e*1.2,2);return Sr(r,t,"M-"+n+",-"+a+"H"+a+"V"+n+"Z")}},"triangle-se":{n:10,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.6,2),n=Xe(e*1.2,2);return Sr(r,t,"M"+a+",-"+n+"V"+a+"H-"+n+"Z")}},"triangle-sw":{n:11,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.6,2),n=Xe(e*1.2,2);return Sr(r,t,"M"+n+","+a+"H-"+a+"V-"+n+"Z")}},"triangle-nw":{n:12,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.6,2),n=Xe(e*1.2,2);return Sr(r,t,"M-"+a+","+n+"V-"+a+"H"+n+"Z")}},pentagon:{n:13,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.951,2),n=Xe(e*.588,2),i=Xe(-e,2),l=Xe(e*-.309,2),o=Xe(e*.809,2);return Sr(r,t,"M"+a+","+l+"L"+n+","+o+"H-"+n+"L-"+a+","+l+"L0,"+i+"Z")}},hexagon:{n:14,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n=Xe(e/2,2),i=Xe(e*ml/2,2);return Sr(r,t,"M"+i+",-"+n+"V"+n+"L0,"+a+"L-"+i+","+n+"V-"+n+"L0,-"+a+"Z")}},hexagon2:{n:15,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n=Xe(e/2,2),i=Xe(e*ml/2,2);return Sr(r,t,"M-"+n+","+i+"H"+n+"L"+a+",0L"+n+",-"+i+"H-"+n+"L-"+a+",0Z")}},octagon:{n:16,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.924,2),n=Xe(e*.383,2);return Sr(r,t,"M-"+n+",-"+a+"H"+n+"L"+a+",-"+n+"V"+n+"L"+n+","+a+"H-"+n+"L-"+a+","+n+"V-"+n+"Z")}},star:{n:17,f:function(e,r,t){if(kr(r))return Ar;var a=e*1.4,n=Xe(a*.225,2),i=Xe(a*.951,2),l=Xe(a*.363,2),o=Xe(a*.588,2),s=Xe(-a,2),u=Xe(a*-.309,2),f=Xe(a*.118,2),v=Xe(a*.809,2),h=Xe(a*.382,2);return Sr(r,t,"M"+n+","+u+"H"+i+"L"+l+","+f+"L"+o+","+v+"L0,"+h+"L-"+o+","+v+"L-"+l+","+f+"L-"+i+","+u+"H-"+n+"L0,"+s+"Z")}},hexagram:{n:18,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.66,2),n=Xe(e*.38,2),i=Xe(e*.76,2);return Sr(r,t,"M-"+i+",0l-"+n+",-"+a+"h"+i+"l"+n+",-"+a+"l"+n+","+a+"h"+i+"l-"+n+","+a+"l"+n+","+a+"h-"+i+"l-"+n+","+a+"l-"+n+",-"+a+"h-"+i+"Z")}},"star-triangle-up":{n:19,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*ml*.8,2),n=Xe(e*.8,2),i=Xe(e*1.6,2),l=Xe(e*4,2),o="A "+l+","+l+" 0 0 1 ";return Sr(r,t,"M-"+a+","+n+o+a+","+n+o+"0,-"+i+o+"-"+a+","+n+"Z")}},"star-triangle-down":{n:20,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*ml*.8,2),n=Xe(e*.8,2),i=Xe(e*1.6,2),l=Xe(e*4,2),o="A "+l+","+l+" 0 0 1 ";return Sr(r,t,"M"+a+",-"+n+o+"-"+a+",-"+n+o+"0,"+i+o+a+",-"+n+"Z")}},"star-square":{n:21,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.1,2),n=Xe(e*2,2),i="A "+n+","+n+" 0 0 1 ";return Sr(r,t,"M-"+a+",-"+a+i+"-"+a+","+a+i+a+","+a+i+a+",-"+a+i+"-"+a+",-"+a+"Z")}},"star-diamond":{n:22,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.4,2),n=Xe(e*1.9,2),i="A "+n+","+n+" 0 0 1 ";return Sr(r,t,"M-"+a+",0"+i+"0,"+a+i+a+",0"+i+"0,-"+a+i+"-"+a+",0Z")}},"diamond-tall":{n:23,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*.7,2),n=Xe(e*1.4,2);return Sr(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},"diamond-wide":{n:24,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.4,2),n=Xe(e*.7,2);return Sr(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},hourglass:{n:25,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M"+a+","+a+"H-"+a+"L"+a+",-"+a+"H-"+a+"Z")},noDot:!0},bowtie:{n:26,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M"+a+","+a+"V-"+a+"L-"+a+","+a+"V-"+a+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n=Xe(e/m9,2);return Sr(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.3,2);return Sr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM0,-"+a+"V"+a+"M-"+a+",0H"+a)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.3,2),n=Xe(e*.65,2);return Sr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM-"+n+",-"+n+"L"+n+","+n+"M-"+n+","+n+"L"+n+",-"+n)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.4,2);return Sr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.2,2),n=Xe(e*.85,2);return Sr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e/2,2),n=Xe(e,2);return Sr(r,t,"M"+a+","+n+"V-"+n+"M"+(a-n)+",-"+n+"V"+n+"M"+n+","+a+"H-"+n+"M-"+n+","+(a-n)+"H"+n)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.2,2),n=Xe(e*1.6,2),i=Xe(e*.8,2);return Sr(r,t,"M-"+a+","+i+"L0,0M"+a+","+i+"L0,0M0,-"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.2,2),n=Xe(e*1.6,2),i=Xe(e*.8,2);return Sr(r,t,"M-"+a+",-"+i+"L0,0M"+a+",-"+i+"L0,0M0,"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.2,2),n=Xe(e*1.6,2),i=Xe(e*.8,2);return Sr(r,t,"M"+i+","+a+"L0,0M"+i+",-"+a+"L0,0M-"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.2,2),n=Xe(e*1.6,2),i=Xe(e*.8,2);return Sr(r,t,"M-"+i+","+a+"L0,0M-"+i+",-"+a+"L0,0M"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.4,2);return Sr(r,t,"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*1.4,2);return Sr(r,t,"M0,"+a+"V-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2);return Sr(r,t,"M"+a+","+a+"L-"+a+",-"+a)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n=Xe(e*2,2);return Sr(r,t,"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n=Xe(e*2,2);return Sr(r,t,"M0,0L-"+a+",-"+n+"H"+a+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2,2),n=Xe(e,2);return Sr(r,t,"M0,0L"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2,2),n=Xe(e,2);return Sr(r,t,"M0,0L-"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n=Xe(e*2,2);return Sr(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e,2),n=Xe(e*2,2);return Sr(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+",-"+n+"H"+a+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2,2),n=Xe(e,2);return Sr(r,t,"M0,-"+n+"V"+n+"M0,0L"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,r,t){if(kr(r))return Ar;var a=Xe(e*2,2),n=Xe(e,2);return Sr(r,t,"M0,-"+n+"V"+n+"M0,0L-"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,r,t){if(kr(r))return Ar;var a=dm/2.5,n=2*e*pm(a),i=2*e*mm(a);return Sr(r,t,"M0,0L"+-n+","+i+"L"+n+","+i+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,r,t){if(kr(r))return Ar;var a=dm/4,n=2*e*pm(a),i=2*e*mm(a);return Sr(r,t,"M0,0L"+-n+","+i+"A "+2*e+","+2*e+" 0 0 1 "+n+","+i+"Z")},backoff:.4,noDot:!0}};function kr(e){return e===null}var y9,g9,b9,x9;function Sr(e,r,t){if((!e||e%360===0)&&!r)return t;if(b9===e&&x9===r&&y9===t)return g9;b9=e,x9=r,y9=t;function a(y,_){var w=pm(y),T=mm(y),b=_[0],M=_[1]+(r||0);return[b*w-M*T,b*T+M*w]}for(var n=e/180*dm,i=0,l=0,o=CU(t),s="",u=0;u{"use strict";var jt=Ir(),tt=Ie(),LU=tt.numberFormat,yo=Hr(),wm=xn(),v0=br(),ga=Er(),qU=cm(),hf=tt.strTranslate,h0=Ta(),DU=co(),EU=Pa(),PU=EU.LINE_SPACING,E9=Tv().DESELECTDIM,RU=ln(),zU=v9(),NU=bi().appendArrayPointValue,er=Y9.exports={};er.font=function(e,r){var t=r.variant,a=r.style,n=r.weight,i=r.color,l=r.size,o=r.family,s=r.shadow,u=r.lineposition,f=r.textcase;o&&e.style("font-family",o),l+1&&e.style("font-size",l+"px"),i&&e.call(ga.fill,i),n&&e.style("font-weight",n),a&&e.style("font-style",a),t&&e.style("font-variant",t),f&&e.style("text-transform",ym(IU(f))),s&&e.style("text-shadow",s==="auto"?h0.makeTextShadow(ga.contrast(i)):ym(s)),u&&e.style("text-decoration-line",ym(HU(u)))};function ym(e){return e==="none"?void 0:e}var FU={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function IU(e){return FU[e]}function HU(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}er.setPosition=function(e,r,t){e.attr("x",r).attr("y",t)};er.setSize=function(e,r,t){e.attr("width",r).attr("height",t)};er.setRect=function(e,r,t,a,n){e.call(er.setPosition,r,t).call(er.setSize,a,n)};er.translatePoint=function(e,r,t,a){var n=t.c2p(e.x),i=a.c2p(e.y);if(yo(n)&&yo(i)&&r.node())r.node().nodeName==="text"?r.attr("x",n).attr("y",i):r.attr("transform",hf(n,i));else return!1;return!0};er.translatePoints=function(e,r,t){e.each(function(a){var n=jt.select(this);er.translatePoint(a,n,r,t)})};er.hideOutsideRangePoint=function(e,r,t,a,n,i){r.attr("display",t.isPtWithinRange(e,n)&&a.isPtWithinRange(e,i)?null:"none")};er.hideOutsideRangePoints=function(e,r){if(r._hasClipOnAxisFalse){var t=r.xaxis,a=r.yaxis;e.each(function(n){var i=n[0].trace,l=i.xcalendar,o=i.ycalendar,s=v0.traceIs(i,"bar-like")?".bartext":".point,.textpoint";e.selectAll(s).each(function(u){er.hideOutsideRangePoint(u,jt.select(this),t,a,l,o)})})}};er.crispRound=function(e,r,t){return!r||!yo(r)?t||0:e._context.staticPlot?r:r<1?1:Math.round(r)};er.singleLineStyle=function(e,r,t,a,n){r.style("fill","none");var i=(((e||[])[0]||{}).trace||{}).line||{},l=t||i.width||0,o=n||i.dash||"";ga.stroke(r,a||i.color),er.dashLine(r,o,l)};er.lineGroupStyle=function(e,r,t,a){e.style("fill","none").each(function(n){var i=(((n||[])[0]||{}).trace||{}).line||{},l=r||i.width||0,o=a||i.dash||"";jt.select(this).call(ga.stroke,t||i.color).call(er.dashLine,o,l)})};er.dashLine=function(e,r,t){t=+t||0,r=er.dashStyle(r,t),e.style({"stroke-dasharray":r,"stroke-width":t+"px"})};er.dashStyle=function(e,r){r=+r||1;var t=Math.max(r,3);return e==="solid"?e="":e==="dot"?e=t+"px,"+t+"px":e==="dash"?e=3*t+"px,"+3*t+"px":e==="longdash"?e=5*t+"px,"+5*t+"px":e==="dashdot"?e=3*t+"px,"+t+"px,"+t+"px,"+t+"px":e==="longdashdot"&&(e=5*t+"px,"+2*t+"px,"+t+"px,"+2*t+"px"),e};function P9(e,r,t,a){var n=r.fillpattern,i=r.fillgradient,l=er.getPatternAttr,o=n&&(l(n.shape,0,"")||l(n.path,0,""));if(o){var s=l(n.bgcolor,0,null),u=l(n.fgcolor,0,null),f=n.fgopacity,v=l(n.size,0,8),h=l(n.solidity,0,.3),d=r.uid;er.pattern(e,"point",t,d,o,v,h,void 0,n.fillmode,s,u,f)}else if(i&&i.type!=="none"){var m=i.type,g="scatterfill-"+r.uid;if(a&&(g="legendfill-"+r.uid),!a&&(i.start!==void 0||i.stop!==void 0)){var y,_;m==="horizontal"?(y={x:i.start,y:0},_={x:i.stop,y:0}):m==="vertical"&&(y={x:0,y:i.start},_={x:0,y:i.stop}),y.x=r._xA.c2p(y.x===void 0?r._extremes.x.min[0].val:y.x,!0),y.y=r._yA.c2p(y.y===void 0?r._extremes.y.min[0].val:y.y,!0),_.x=r._xA.c2p(_.x===void 0?r._extremes.x.max[0].val:_.x,!0),_.y=r._yA.c2p(_.y===void 0?r._extremes.y.max[0].val:_.y,!0),e.call(N9,t,g,"linear",i.colorscale,"fill",y,_,!0,!1)}else m==="horizontal"&&(m=m+"reversed"),e.call(er.gradient,t,g,m,i.colorscale,"fill")}else r.fillcolor&&e.call(ga.fill,r.fillcolor)}er.singleFillStyle=function(e,r){var t=jt.select(e.node()),a=t.data(),n=((a[0]||[])[0]||{}).trace||{};P9(e,n,r,!1)};er.fillGroupStyle=function(e,r,t){e.style("stroke-width",0).each(function(a){var n=jt.select(this);a[0].trace&&P9(n,a[0].trace,r,t)})};var T9=w9();er.symbolNames=[];er.symbolFuncs=[];er.symbolBackOffs=[];er.symbolNeedLines={};er.symbolNoDot={};er.symbolNoFill={};er.symbolList=[];Object.keys(T9).forEach(function(e){var r=T9[e],t=r.n;er.symbolList.push(t,String(t),e,t+100,String(t+100),e+"-open"),er.symbolNames[t]=e,er.symbolFuncs[t]=r.f,er.symbolBackOffs[t]=r.backoff||0,r.needLine&&(er.symbolNeedLines[t]=!0),r.noDot?er.symbolNoDot[t]=!0:er.symbolList.push(t+200,String(t+200),e+"-dot",t+300,String(t+300),e+"-open-dot"),r.noFill&&(er.symbolNoFill[t]=!0)});var OU=er.symbolNames.length,BU="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";er.symbolNumber=function(e){if(yo(e))e=+e;else if(typeof e=="string"){var r=0;e.indexOf("-open")>0&&(r=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(r+=200,e=e.replace("-dot","")),e=er.symbolNames.indexOf(e),e>=0&&(e+=r)}return e%100>=OU||e>=400?0:Math.floor(Math.max(e,0))};function R9(e,r,t,a){var n=e%100;return er.symbolFuncs[n](r,t,a)+(e>=200?BU:"")}var M9=LU("~f"),z9={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};er.gradient=function(e,r,t,a,n,i){var l=z9[a];return N9(e,r,t,l.type,n,i,l.start,l.stop,!1,l.reversed)};function N9(e,r,t,a,n,i,l,o,s,u){var f=n.length,v;a==="linear"?v={node:"linearGradient",attrs:{x1:l.x,y1:l.y,x2:o.x,y2:o.y,gradientUnits:s?"userSpaceOnUse":"objectBoundingBox"},reversed:u}:a==="radial"&&(v={node:"radialGradient",reversed:u});for(var h=new Array(f),d=0;d=0&&e.i===void 0&&(e.i=i.i),r.style("opacity",a.selectedOpacityFn?a.selectedOpacityFn(e):e.mo===void 0?l.opacity:e.mo),a.ms2mrc){var s;e.ms==="various"||l.size==="various"?s=3:s=a.ms2mrc(e.ms),e.mrc=s,a.selectedSizeFn&&(s=e.mrc=a.selectedSizeFn(e));var u=er.symbolNumber(e.mx||l.symbol)||0;e.om=u%200>=100;var f=Am(e,t),v=Mm(e,t);r.attr("d",R9(u,s,f,v))}var h=!1,d,m,g;if(e.so)g=o.outlierwidth,m=o.outliercolor,d=l.outliercolor;else{var y=(o||{}).width;g=(e.mlw+1||y+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?m=e.mlcc=a.lineScale(e.mlc):tt.isArrayOrTypedArray(o.color)?m=ga.defaultLine:m=o.color,tt.isArrayOrTypedArray(l.color)&&(d=ga.defaultLine,h=!0),"mc"in e?d=e.mcc=a.markerScale(e.mc):d=l.color||l.colors||"rgba(0,0,0,0)",a.selectedColorFn&&(d=a.selectedColorFn(e))}if(e.om)r.call(ga.stroke,d).style({"stroke-width":(g||1)+"px",fill:"none"});else{r.style("stroke-width",(e.isBlank?0:g)+"px");var _=l.gradient,w=e.mgt;w?h=!0:w=_&&_.type,tt.isArrayOrTypedArray(w)&&(w=w[0],z9[w]||(w=0));var T=l.pattern,b=er.getPatternAttr,M=T&&(b(T.shape,e.i,"")||b(T.path,e.i,""));if(w&&w!=="none"){var C=e.mgc;C?h=!0:C=_.color;var k=t.uid;h&&(k+="-"+e.i),er.gradient(r,n,k,w,[[0,C],[1,d]],"fill")}else if(M){var q=!1,D=T.fgcolor;!D&&i&&i.color&&(D=i.color,q=!0);var R=b(D,e.i,i&&i.color||null),z=b(T.bgcolor,e.i,null),F=T.fgopacity,H=b(T.size,e.i,8),O=b(T.solidity,e.i,.3);q=q||e.mcc||tt.isArrayOrTypedArray(T.shape)||tt.isArrayOrTypedArray(T.path)||tt.isArrayOrTypedArray(T.bgcolor)||tt.isArrayOrTypedArray(T.fgcolor)||tt.isArrayOrTypedArray(T.size)||tt.isArrayOrTypedArray(T.solidity);var J=t.uid;q&&(J+="-"+e.i),er.pattern(r,"point",n,J,M,H,O,e.mcc,T.fillmode,z,R,F)}else tt.isArrayOrTypedArray(d)?ga.fill(r,d[e.i]):ga.fill(r,d);g&&ga.stroke(r,m)}};er.makePointStyleFns=function(e){var r={},t=e.marker;return r.markerScale=er.tryColorscale(t,""),r.lineScale=er.tryColorscale(t,"line"),v0.traceIs(e,"symbols")&&(r.ms2mrc=RU.isBubble(e)?zU(e):function(){return(t.size||6)/2}),e.selectedpoints&&tt.extendFlat(r,er.makeSelectedPointStyleFns(e)),r};er.makeSelectedPointStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.marker||{},i=t.marker||{},l=a.marker||{},o=n.opacity,s=i.opacity,u=l.opacity,f=s!==void 0,v=u!==void 0;(tt.isArrayOrTypedArray(o)||f||v)&&(r.selectedOpacityFn=function(b){var M=b.mo===void 0?n.opacity:b.mo;return b.selected?f?s:M:v?u:E9*M});var h=n.color,d=i.color,m=l.color;(d||m)&&(r.selectedColorFn=function(b){var M=b.mcc||h;return b.selected?d||M:m||M});var g=n.size,y=i.size,_=l.size,w=y!==void 0,T=_!==void 0;return v0.traceIs(e,"symbols")&&(w||T)&&(r.selectedSizeFn=function(b){var M=b.mrc||g/2;return b.selected?w?y/2:M:T?_/2:M}),r};er.makeSelectedTextStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.textfont||{},i=t.textfont||{},l=a.textfont||{},o=n.color,s=i.color,u=l.color;return r.selectedTextColorFn=function(f){var v=f.tc||o;return f.selected?s||v:u||(s?v:ga.addOpacity(v,E9))},r};er.selectedPointStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=er.makeSelectedPointStyleFns(r),a=r.marker||{},n=[];t.selectedOpacityFn&&n.push(function(i,l){i.style("opacity",t.selectedOpacityFn(l))}),t.selectedColorFn&&n.push(function(i,l){ga.fill(i,t.selectedColorFn(l))}),t.selectedSizeFn&&n.push(function(i,l){var o=l.mx||a.symbol||0,s=t.selectedSizeFn(l);i.attr("d",R9(er.symbolNumber(o),s,Am(l,r),Mm(l,r))),l.mrc2=s}),n.length&&e.each(function(i){for(var l=jt.select(this),o=0;o0?t:0}er.textPointStyle=function(e,r,t){if(e.size()){var a;if(r.selectedpoints){var n=er.makeSelectedTextStyleFns(r);a=n.selectedTextColorFn}var i=r.texttemplate,l=t._fullLayout;e.each(function(o){var s=jt.select(this),u=i?tt.extractOption(o,r,"txt","texttemplate"):tt.extractOption(o,r,"tx","text");if(!u&&u!==0){s.remove();return}if(i){var f=r._module.formatLabels,v=f?f(o,r,l):{},h={};NU(h,r,o.i),u=tt.texttemplateString({data:[h,o,r._meta],fallback:r.texttemplatefallback,labels:v,locale:l._d3locale,template:u})}var d=o.tp||r.textposition,m=I9(o,r),g=a?a(o):o.tc||r.textfont.color;s.call(er.font,{family:o.tf||r.textfont.family,weight:o.tw||r.textfont.weight,style:o.ty||r.textfont.style,variant:o.tv||r.textfont.variant,textcase:o.tC||r.textfont.textcase,lineposition:o.tE||r.textfont.lineposition,shadow:o.tS||r.textfont.shadow,size:m,color:g}).text(u).call(h0.convertToTspans,t).call(F9,d,m,o.mrc)})}};er.selectedTextStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=er.makeSelectedTextStyleFns(r);e.each(function(a){var n=jt.select(this),i=t.selectedTextColorFn(a),l=a.tp||r.textposition,o=I9(a,r);ga.fill(n,i);var s=v0.traceIs(r,"bar-like");F9(n,l,o,a.mrc2||a.mrc,s)})}};var A9=.5;er.smoothopen=function(e,r){if(e.length<3)return"M"+e.join("L");var t="M"+e[0],a=[],n;for(n=1;n=s||b>=f&&b<=s)&&(M<=v&&M>=u||M>=v&&M<=u)&&(e=[b,M])}return e}er.applyBackoff=B9;er.makeTester=function(){var e=tt.ensureSingleById(jt.select("body"),"svg","js-plotly-tester",function(t){t.attr(DU.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),r=tt.ensureSingle(e,"path","js-reference-point",function(t){t.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});er.tester=e,er.testref=r};er.savedBBoxes={};var bm=0,VU=1e4;er.bBox=function(e,r,t){t||(t=k9(e));var a;if(t){if(a=er.savedBBoxes[t],a)return tt.extendFlat({},a)}else if(e.childNodes.length===1){var n=e.childNodes[0];if(t=k9(n),t){var i=+n.getAttribute("x")||0,l=+n.getAttribute("y")||0,o=n.getAttribute("transform");if(!o){var s=er.bBox(n,!1,t);return i&&(s.left+=i,s.right+=i),l&&(s.top+=l,s.bottom+=l),s}if(t+="~"+i+"~"+l+"~"+o,a=er.savedBBoxes[t],a)return tt.extendFlat({},a)}}var u,f;r?u=e:(f=er.tester.node(),u=e.cloneNode(!0),f.appendChild(u)),jt.select(u).attr("transform",null).call(h0.positionText,0,0);var v=u.getBoundingClientRect(),h=er.testref.node().getBoundingClientRect();r||f.removeChild(u);var d={height:v.height,width:v.width,left:v.left-h.left,top:v.top-h.top,right:v.right-h.left,bottom:v.bottom-h.top};return bm>=VU&&(er.savedBBoxes={},bm=0),t&&(er.savedBBoxes[t]=d),bm++,tt.extendFlat({},d)};function k9(e){var r=e.getAttribute("data-unformatted");if(r!==null)return r+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}er.setClipUrl=function(e,r,t){e.attr("clip-path",Tm(r,t))};function Tm(e,r){if(!e)return null;var t=r._context,a=t._exportedPlot?"":t._baseUrl||"";return a?"url('"+a+"#"+e+"')":"url(#"+e+")"}er.getTranslate=function(e){var r=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,l,o){return[l,o].join(" ")}).split(" ");return{x:+n[0]||0,y:+n[1]||0}};er.setTranslate=function(e,r,t){var a=/(\btranslate\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",l=e[n]("transform")||"";return r=r||0,t=t||0,l=l.replace(a,"").trim(),l+=hf(r,t),l=l.trim(),e[i]("transform",l),l};er.getScale=function(e){var r=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,l,o){return[l,o].join(" ")}).split(" ");return{x:+n[0]||1,y:+n[1]||1}};er.setScale=function(e,r,t){var a=/(\bscale\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",l=e[n]("transform")||"";return r=r||1,t=t||1,l=l.replace(a,"").trim(),l+="scale("+r+","+t+")",l=l.trim(),e[i]("transform",l),l};var GU=/\s*sc.*/;er.setPointGroupScale=function(e,r,t){if(r=r||1,t=t||1,!!e){var a=r===1&&t===1?"":"scale("+r+","+t+")";e.each(function(){var n=(this.getAttribute("transform")||"").replace(GU,"");n+=a,n=n.trim(),this.setAttribute("transform",n)})}};var WU=/translate\([^)]*\)\s*$/;er.setTextPointsScale=function(e,r,t){e&&e.each(function(){var a,n=jt.select(this),i=n.select("text");if(i.node()){var l=parseFloat(i.attr("x")||0),o=parseFloat(i.attr("y")||0),s=(n.attr("transform")||"").match(WU);r===1&&t===1?a=[]:a=[hf(l,o),"scale("+r+","+t+")",hf(-l,-o)],s&&a.push(s),n.attr("transform",a.join(""))}})};function Mm(e,r){var t;return e&&(t=e.mf),t===void 0&&(t=r.marker&&r.marker.standoff||0),!r._geo&&!r._xA?-t:t}er.getMarkerStandoff=Mm;var vf=Math.atan2,ho=Math.cos,zs=Math.sin;function S9(e,r){var t=r[0],a=r[1];return[t*ho(e)-a*zs(e),t*zs(e)+a*ho(e)]}var C9,L9,q9,D9,xm,_m;function Am(e,r){var t=e.ma;t===void 0&&(t=r.marker.angle,(!t||tt.isArrayOrTypedArray(t))&&(t=0));var a,n,i=r.marker.angleref;if(i==="previous"||i==="north"){if(r._geo){var l=r._geo.project(e.lonlat);a=l[0],n=l[1]}else{var o=r._xA,s=r._yA;if(o&&s)a=o.c2p(e.x),n=s.c2p(e.y);else return 90}if(r._geo){var u=e.lonlat[0],f=e.lonlat[1],v=r._geo.project([u,f+1e-5]),h=r._geo.project([u+1e-5,f]),d=vf(h[1]-n,h[0]-a),m=vf(v[1]-n,v[0]-a),g;if(i==="north")g=t/180*Math.PI;else if(i==="previous"){var y=u/180*Math.PI,_=f/180*Math.PI,w=C9/180*Math.PI,T=L9/180*Math.PI,b=w-y,M=ho(T)*zs(b),C=zs(T)*ho(_)-ho(T)*zs(_)*ho(b);g=-vf(M,C)-Math.PI,C9=u,L9=f}var k=S9(d,[ho(g),0]),q=S9(m,[zs(g),0]);t=vf(k[1]+q[1],k[0]+q[0])/Math.PI*180,i==="previous"&&!(_m===r.uid&&e.i===xm+1)&&(t=null)}if(i==="previous"&&!r._geo)if(_m===r.uid&&e.i===xm+1&&yo(a)&&yo(n)){var D=a-q9,R=n-D9,z=r.line&&r.line.shape||"",F=z.slice(z.length-1);F==="h"&&(R=0),F==="v"&&(D=0),t+=vf(R,D)/Math.PI*180+90}else t=null}return q9=a,D9=n,xm=e.i,_m=r.uid,t}er.getMarkerAngle=Am});var df=Z((tse,W9)=>{"use strict";var Ns=Ir(),ZU=Hr(),XU=Ft(),km=br(),go=Ie(),U9=go.strTranslate,d0=at(),p0=Er(),Fs=Ta(),V9=Tv(),JU=Pa().OPPOSITE_SIDE,G9=/ [XY][0-9]* /,Sm=1.6,Cm=1.6;function KU(e,r,t){var a=e._fullLayout,n=t.propContainer,i=t.propName,l=t.placeholder,o=t.traceIndex,s=t.avoid||{},u=t.attributes,f=t.transform,v=t.containerGroup,h=1,d=n.title,m=(d&&d.text?d.text:"").trim(),g=!1,y=d&&d.font?d.font:{},_=y.family,w=y.size,T=y.color,b=y.weight,M=y.style,C=y.variant,k=y.textcase,q=y.lineposition,D=y.shadow,R=t.subtitlePropName,z=!!R,F=t.subtitlePlaceholder,H=(n.title||{}).subtitle||{text:"",font:{}},O=(H.text||"").trim(),J=!1,X=1,G=H.font,I=G.family,Y=G.size,K=G.color,Q=G.weight,ne=G.style,me=G.variant,de=G.textcase,ke=G.lineposition,re=G.shadow,Ce;i==="title.text"?Ce="titleText":i.indexOf("axis")!==-1?Ce="axisTitleText":i.indexOf("colorbar")!==-1&&(Ce="colorbarTitleText");var ce=e._context.edits[Ce];function _e(Be,Ge){return Be===void 0||Ge===void 0?!1:Be.replace(G9," % ")===Ge.replace(G9," % ")}m===""?h=0:_e(m,l)&&(ce||(m=""),h=.2,g=!0),z&&(O===""?X=0:_e(O,F)&&(ce||(O=""),X=.2,J=!0)),t._meta?m=go.templateString(m,t._meta):a._meta&&(m=go.templateString(m,a._meta));var se=m||O||ce,ge;v||(v=go.ensureSingle(a._infolayer,"g","g-"+r),ge=a._hColorbarMoveTitle);var B=v.selectAll("text."+r).data(se?[0]:[]);B.enter().append("text"),B.text(m).attr("class",r),B.exit().remove();var $=null,U=r+"-subtitle",ye=O||ce;if(z&&($=v.selectAll("text."+U).data(ye?[0]:[]),$.enter().append("text"),$.text(O).attr("class",U),$.exit().remove()),!se)return v;function we(Be,Ge){go.syncOrAsync([pe,Re],{title:Be,subtitle:Ge})}function pe(Be){var Ge=Be.title,qe=Be.subtitle,He;!f&&ge&&(f={}),f?(He="",f.rotate&&(He+="rotate("+[f.rotate,u.x,u.y]+")"),(f.offset||ge)&&(He+=U9(0,(f.offset||0)-(ge||0)))):He=null,Ge.attr("transform",He);function Ye(Me){if(Me){var Se=Ns.select(Me.node().parentNode).select("."+U);if(!Se.empty()){var Oe=Me.node().getBBox();if(Oe.height){var Je=Oe.y+Oe.height+Sm*Y;Se.attr("y",Je)}}}}if(Ge.style("opacity",h*p0.opacity(T)).call(d0.font,{color:p0.rgb(T),size:Ns.round(w,2),family:_,weight:b,style:M,variant:C,textcase:k,shadow:D,lineposition:q}).attr(u).call(Fs.convertToTspans,e,Ye),qe&&!qe.empty()){var ie=v.select("."+r+"-math-group"),be=Ge.node().getBBox(),Ke=ie.node()?ie.node().getBBox():void 0,hr=Ke?Ke.y+Ke.height+Sm*Y:be.y+be.height+Cm*Y,Pe=go.extendFlat({},u,{y:hr});qe.attr("transform",He),qe.style("opacity",X*p0.opacity(K)).call(d0.font,{color:p0.rgb(K),size:Ns.round(Y,2),family:I,weight:Q,style:ne,variant:me,textcase:de,shadow:re,lineposition:ke}).attr(Pe).call(Fs.convertToTspans,e)}return XU.previousPromises(e)}function Re(Be){var Ge=Be.title,qe=Ns.select(Ge.node().parentNode);if(s&&s.selection&&s.side&&m){qe.attr("transform",null);var He=JU[s.side],Ye=s.side==="left"||s.side==="top"?-1:1,ie=ZU(s.pad)?s.pad:2,be=d0.bBox(qe.node()),Ke={t:0,b:0,l:0,r:0},hr=e._fullLayout._reservedMargin;for(var Pe in hr)for(var Me in hr[Pe]){var Se=hr[Pe][Me];Ke[Me]=Math.max(Ke[Me],Se)}var Oe={left:Ke.l,top:Ke.t,right:a.width-Ke.r,bottom:a.height-Ke.b},Je=s.maxShift||Ye*(Oe[s.side]-be[s.side]),We=0;if(Je<0)We=Je;else{var Ze=s.offsetLeft||0,lr=s.offsetTop||0;be.left-=Ze,be.right-=Ze,be.top-=lr,be.bottom-=lr,s.selection.each(function(){var Qe=d0.bBox(this);go.bBoxIntersect(be,Qe,ie)&&(We=Math.max(We,Ye*(Qe[s.side]-be[He])+ie))}),We=Math.min(Je,We),n._titleScoot=Math.abs(We)}if(We>0||Je<0){var tr={left:[-We,0],right:[We,0],top:[0,-We],bottom:[0,We]}[s.side];qe.attr("transform",U9(tr[0],tr[1]))}}}B.call(we,$);function Fe(Be,Ge){Be.text(Ge).on("mouseover.opacity",function(){Ns.select(this).transition().duration(V9.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){Ns.select(this).transition().duration(V9.HIDE_PLACEHOLDER).style("opacity",0)})}if(ce&&(m?B.on(".opacity",null):(Fe(B,l),g=!0),B.call(Fs.makeEditable,{gd:e}).on("edit",function(Be){o!==void 0?km.call("_guiRestyle",e,i,Be,o):km.call("_guiRelayout",e,i,Be)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(we)}).on("input",function(Be){this.text(Be||" ").call(Fs.positionText,u.x,u.y)}),z)){if(z&&!m){var Ee=B.node().getBBox(),Ne=Ee.y+Ee.height+Cm*Y;$.attr("y",Ne)}O?$.on(".opacity",null):(Fe($,F),J=!0),$.call(Fs.makeEditable,{gd:e}).on("edit",function(Be){km.call("_guiRelayout",e,"title.subtitle.text",Be)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(we)}).on("input",function(Be){this.text(Be||" ").call(Fs.positionText,$.attr("x"),$.attr("y"))})}return B.classed("js-placeholder",g),$&&!$.empty()&&$.classed("js-placeholder",J),v}W9.exports={draw:KU,SUBTITLE_PADDING_EM:Cm,SUBTITLE_PADDING_MATHJAX_EM:Sm}});var T0=Z((ase,Q9)=>{"use strict";var QU=Ir(),$U=us().utcFormat,nt=Ie(),jU=nt.numberFormat,xi=Hr(),yl=nt.cleanNumber,eV=nt.ms2DateTime,Z9=nt.dateTime2ms,_i=nt.ensureNumber,X9=nt.isArrayOrTypedArray,gl=Vt(),m0=gl.FP_SAFE,Qn=gl.BADNUM,rV=gl.LOG_CLIP,tV=gl.ONEWEEK,y0=gl.ONEDAY,g0=gl.ONEHOUR,J9=gl.ONEMIN,K9=gl.ONESEC,b0=Zt(),w0=ya(),x0=w0.HOUR_PATTERN,_0=w0.WEEKDAY_PATTERN;function pf(e){return Math.pow(10,e)}function Lm(e){return e!=null}Q9.exports=function(r,t){t=t||{};var a=r._id||"x",n=a.charAt(0);function i(b,M){if(b>0)return Math.log(b)/Math.LN10;if(b<=0&&M&&r.range&&r.range.length===2){var C=r.range[0],k=r.range[1];return .5*(C+k-2*rV*Math.abs(C-k))}else return Qn}function l(b,M,C,k){if((k||{}).msUTC&&xi(b))return+b;var q=Z9(b,C||r.calendar);if(q===Qn)if(xi(b)){b=+b;var D=Math.floor(nt.mod(b+.05,1)*10),R=Math.round(b-D/10);q=Z9(new Date(R))+D/10}else return Qn;return q}function o(b,M,C){return eV(b,M,C||r.calendar)}function s(b){return r._categories[Math.round(b)]}function u(b){if(Lm(b)){if(r._categoriesMap===void 0&&(r._categoriesMap={}),r._categoriesMap[b]!==void 0)return r._categoriesMap[b];r._categories.push(typeof b=="number"?String(b):b);var M=r._categories.length-1;return r._categoriesMap[b]=M,M}return Qn}function f(b,M){for(var C=new Array(M),k=0;kr.range[1]&&(C=!C);for(var k=C?-1:1,q=k*b,D=0,R=0;RF)D=R+1;else{D=q<(z+F)/2?R:R+1;break}}var H=r._B[D]||0;return isFinite(H)?m(b,r._m2,H):0},_=function(b){var M=r._rangebreaks.length;if(!M)return g(b,r._m,r._b);for(var C=0,k=0;kr._rangebreaks[k].pmax&&(C=k+1);return g(b,r._m2,r._B[C])}}r.c2l=r.type==="log"?i:_i,r.l2c=r.type==="log"?pf:_i,r.l2p=y,r.p2l=_,r.c2p=r.type==="log"?function(b,M){return y(i(b,M))}:y,r.p2c=r.type==="log"?function(b){return pf(_(b))}:_,["linear","-"].indexOf(r.type)!==-1?(r.d2r=r.r2d=r.d2c=r.r2c=r.d2l=r.r2l=yl,r.c2d=r.c2r=r.l2d=r.l2r=_i,r.d2p=r.r2p=function(b){return r.l2p(yl(b))},r.p2d=r.p2r=_,r.cleanPos=_i):r.type==="log"?(r.d2r=r.d2l=function(b,M){return i(yl(b),M)},r.r2d=r.r2c=function(b){return pf(yl(b))},r.d2c=r.r2l=yl,r.c2d=r.l2r=_i,r.c2r=i,r.l2d=pf,r.d2p=function(b,M){return r.l2p(r.d2r(b,M))},r.p2d=function(b){return pf(_(b))},r.r2p=function(b){return r.l2p(yl(b))},r.p2r=_,r.cleanPos=_i):r.type==="date"?(r.d2r=r.r2d=nt.identity,r.d2c=r.r2c=r.d2l=r.r2l=l,r.c2d=r.c2r=r.l2d=r.l2r=o,r.d2p=r.r2p=function(b,M,C){return r.l2p(l(b,0,C))},r.p2d=r.p2r=function(b,M,C){return o(_(b),M,C)},r.cleanPos=function(b){return nt.cleanDate(b,Qn,r.calendar)}):r.type==="category"?(r.d2c=r.d2l=u,r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=h,r.r2c=function(b){var M=d(b);return M!==void 0?M:r.fraction2r(.5)},r.l2r=r.c2r=_i,r.r2l=d,r.d2p=function(b){return r.l2p(r.r2c(b))},r.p2d=function(b){return s(_(b))},r.r2p=r.d2p,r.p2r=_,r.cleanPos=function(b){return typeof b=="string"&&b!==""?b:_i(b)}):r.type==="multicategory"&&(r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=h,r.r2c=function(b){var M=h(b);return M!==void 0?M:r.fraction2r(.5)},r.r2c_just_indices=v,r.l2r=r.c2r=_i,r.r2l=h,r.d2p=function(b){return r.l2p(r.r2c(b))},r.p2d=function(b){return s(_(b))},r.r2p=r.d2p,r.p2r=_,r.cleanPos=function(b){return Array.isArray(b)||typeof b=="string"&&b!==""?b:_i(b)},r.setupMultiCategory=function(b){var M=r._traceIndices,C,k,q=r._matchGroup;if(q&&r._categories.length===0){for(var D in q)if(D!==a){var R=t[b0.id2name(D)];M=M.concat(R._traceIndices)}}var z=[[0,{}],[0,{}]],F=[];for(C=0;CR[1]&&(k[D?0:1]=C),k[0]===k[1]){var z=r.l2r(M),F=r.l2r(C);if(M!==void 0){var H=z+1;C!==void 0&&(H=Math.min(H,F)),k[D?1:0]=H}if(C!==void 0){var O=F+1;M!==void 0&&(O=Math.max(O,z)),k[D?0:1]=O}}}},r.cleanRange=function(b,M){r._cleanRange(b,M),r.limitRange(b)},r._cleanRange=function(b,M){M||(M={}),b||(b="range");var C=nt.nestedProperty(r,b).get(),k,q;if(r.type==="date"?q=nt.dfltRange(r.calendar):n==="y"?q=w0.DFLTRANGEY:r._name==="realaxis"?q=[0,1]:q=M.dfltRange||w0.DFLTRANGEX,q=q.slice(),(r.rangemode==="tozero"||r.rangemode==="nonnegative")&&(q[0]=0),!C||C.length!==2){nt.nestedProperty(r,b).set(q);return}var D=C[0]===null,R=C[1]===null;for(r.type==="date"&&!r.autorange&&(C[0]=nt.cleanDate(C[0],Qn,r.calendar),C[1]=nt.cleanDate(C[1],Qn,r.calendar)),k=0;k<2;k++)if(r.type==="date"){if(!nt.isDateTime(C[k],r.calendar)){r[b]=q;break}if(r.r2l(C[0])===r.r2l(C[1])){var z=nt.constrain(r.r2l(C[0]),nt.MIN_MS+1e3,nt.MAX_MS-1e3);C[0]=r.l2r(z-1e3),C[1]=r.l2r(z+1e3);break}}else{if(!xi(C[k]))if(!(D||R)&&xi(C[1-k]))C[k]=C[1-k]*(k?10:.1);else{r[b]=q;break}if(C[k]<-m0?C[k]=-m0:C[k]>m0&&(C[k]=m0),C[0]===C[1]){var F=Math.max(1,Math.abs(C[0]*1e-6));C[0]-=F,C[1]+=F}}},r.setScale=function(b){var M=t._size;if(r.overlaying){var C=b0.getFromId({_fullLayout:t},r.overlaying);r.domain=C.domain}var k=b&&r._r?"_r":"range",q=r.calendar;r.cleanRange(k);var D=r.r2l(r[k][0],q),R=r.r2l(r[k][1],q),z=n==="y";if(z?(r._offset=M.t+(1-r.domain[1])*M.h,r._length=M.h*(r.domain[1]-r.domain[0]),r._m=r._length/(D-R),r._b=-r._m*R):(r._offset=M.l+r.domain[0]*M.w,r._length=M.w*(r.domain[1]-r.domain[0]),r._m=r._length/(R-D),r._b=-r._m*D),r._rangebreaks=[],r._lBreaks=0,r._m2=0,r._B=[],r.rangebreaks){var F,H;if(r._rangebreaks=r.locateBreaks(Math.min(D,R),Math.max(D,R)),r._rangebreaks.length){for(F=0;FR&&(O=!O),O&&r._rangebreaks.reverse();var J=O?-1:1;for(r._m2=J*r._length/(Math.abs(R-D)-r._lBreaks),r._B.push(-r._m2*(z?R:D)),F=0;Fq&&(q+=7,Dq&&(q+=24,D=k&&D=k&&b=re.min&&(nere.max&&(re.max=me),de=!1)}de&&R.push({min:ne,max:me})}};for(C=0;C{"use strict";var $9=Hr(),qm=Ie(),aV=Vt().BADNUM,M0=qm.isArrayOrTypedArray,nV=qm.isDateTime,iV=qm.cleanNumber,j9=Math.round;r8.exports=function(r,t,a){var n=r,i=a.noMultiCategory;if(M0(n)&&!n.length)return"-";if(!i&&fV(n))return"multicategory";if(i&&Array.isArray(n[0])){for(var l=[],o=0;oi*2}function e8(e){return Math.max(1,(e-1)/1e3)}function uV(e,r){for(var t=e.length,a=e8(t),n=0,i=0,l={},o=0;on*2}function fV(e){return M0(e[0])&&M0(e[1])}});var mf=Z((ise,u8)=>{"use strict";var cV=Ir(),i8=Hr(),bl=Ie(),A0=Vt().FP_SAFE,vV=br(),hV=at(),l8=Zt(),dV=l8.getFromId,pV=l8.isLinked;u8.exports={applyAutorangeOptions:s8,getAutoRange:Em,makePadFn:Pm,doAutoRange:yV,findExtremes:gV,concatExtremes:Nm};function Em(e,r){var t,a,n=[],i=e._fullLayout,l=Pm(i,r,0),o=Pm(i,r,1),s=Nm(e,r),u=s.min,f=s.max;if(u.length===0||f.length===0)return bl.simpleMap(r.range,r.r2l);var v=u[0].val,h=f[0].val;for(t=1;t0&&(R=T-l(C)-o(k),R>b?z/R>M&&(q=C,D=k,M=z/R):z/T>M&&(q={val:C.val,nopad:1},D={val:k.val,nopad:1},M=z/T));function F(G,I){return Math.max(G,o(I))}if(v===h){var H=v-1,O=v+1;if(_)if(v===0)n=[0,1];else{var J=(v>0?f:u).reduce(F,0),X=v/(1-Math.min(.5,J/T));n=v>0?[0,X]:[X,0]}else w?n=[Math.max(0,H),Math.max(1,O)]:n=[H,O]}else _?(q.val>=0&&(q={val:0,nopad:1}),D.val<=0&&(D={val:0,nopad:1})):w&&(q.val-M*l(q)<0&&(q={val:0,nopad:1}),D.val<=0&&(D={val:1,nopad:1})),M=(D.val-q.val-t8(r,C.val,k.val))/(T-l(q)-o(D)),n=[q.val-M*l(q),D.val+M*o(D)];return n=s8(n,r),r.limitRange&&r.limitRange(),m&&n.reverse(),bl.simpleMap(n,r.l2r||Number)}function t8(e,r,t){var a=0;if(e.rangebreaks)for(var n=e.locateBreaks(r,t),i=0;i0?t.ppadplus:t.ppadminus)||t.ppad||0),C=b((e._m>0?t.ppadminus:t.ppadplus)||t.ppad||0),k=b(t.vpadplus||t.vpad),q=b(t.vpadminus||t.vpad);if(!u){if(w=1/0,T=-1/0,s)for(v=0;v0&&(w=h),h>T&&h-A0&&(w=h),h>T&&h=z;v--)R(v);return{min:a,max:n,opts:t}}function Rm(e,r,t,a){o8(e,r,t,a,bV)}function zm(e,r,t,a){o8(e,r,t,a,xV)}function o8(e,r,t,a,n){for(var i=a.tozero,l=a.extrapad,o=!0,s=0;s=t&&(u.extrapad||!l)){o=!1;break}else n(r,u.val)&&u.pad<=t&&(l||!u.extrapad)&&(e.splice(s,1),s--)}if(o){var f=i&&r===0;e.push({val:r,pad:f?0:t,extrapad:f?!1:l})}}function n8(e){return i8(e)&&Math.abs(e)=r}function _V(e,r){var t=r.autorangeoptions;return t&&t.minallowed!==void 0&&k0(r,t.minallowed,t.maxallowed)?t.minallowed:t&&t.clipmin!==void 0&&k0(r,t.clipmin,t.clipmax)?Math.max(e,r.d2l(t.clipmin)):e}function wV(e,r){var t=r.autorangeoptions;return t&&t.maxallowed!==void 0&&k0(r,t.minallowed,t.maxallowed)?t.maxallowed:t&&t.clipmax!==void 0&&k0(r,t.clipmin,t.clipmax)?Math.min(e,r.d2l(t.clipmax)):e}function k0(e,r,t){return r!==void 0&&t!==void 0?(r=e.d2l(r),t=e.d2l(t),r=s&&(i=s,t=s),l<=s&&(l=s,a=s)}}return t=_V(t,r),a=wV(a,r),[t,a]}});var dt=Z((lse,E8)=>{"use strict";var An=Ir(),Ht=Hr(),Is=Ft(),gf=br(),gr=Ie(),Hs=gr.strTranslate,bo=Ta(),TV=df(),bf=Er(),on=at(),MV=Jn(),f8=jp(),ba=Vt(),AV=ba.ONEMAXYEAR,L0=ba.ONEAVGYEAR,q0=ba.ONEMINYEAR,kV=ba.ONEMAXQUARTER,Om=ba.ONEAVGQUARTER,D0=ba.ONEMINQUARTER,SV=ba.ONEMAXMONTH,Os=ba.ONEAVGMONTH,E0=ba.ONEMINMONTH,sn=ba.ONEWEEK,Ra=ba.ONEDAY,xl=Ra/2,Ti=ba.ONEHOUR,xf=ba.ONEMIN,P0=ba.ONESEC,CV=ba.ONEMILLI,LV=ba.ONEMICROSEC,xo=ba.MINUS_SIGN,z0=ba.BADNUM,Bm={K:"zeroline"},Ym={K:"gridline",L:"path"},Um={K:"minor-gridline",L:"path"},_8={K:"tick",L:"path"},c8={K:"tick",L:"text"},v8={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},N0=Pa(),yf=N0.MID_SHIFT,_o=N0.CAP_SHIFT,_f=N0.LINE_SPACING,qV=N0.OPPOSITE_SIDE,R0=3,Ve=E8.exports={};Ve.setConvert=T0();var DV=Dm(),Yi=Zt(),EV=Yi.idSort,PV=Yi.isLinked;Ve.id2name=Yi.id2name;Ve.name2id=Yi.name2id;Ve.cleanId=Yi.cleanId;Ve.list=Yi.list;Ve.listIds=Yi.listIds;Ve.getFromId=Yi.getFromId;Ve.getFromTrace=Yi.getFromTrace;var w8=mf();Ve.getAutoRange=w8.getAutoRange;Ve.findExtremes=w8.findExtremes;var RV=1e-4;function Zm(e){var r=(e[1]-e[0])*RV;return[e[0]-r,e[1]+r]}Ve.coerceRef=function(e,r,t,a,n,i){var l=a.charAt(a.length-1),o=t._fullLayout._subplots[l+"axis"],s=a+"ref",u={};return n||(n=o[0]||(typeof i=="string"?i:i[0])),i||(i=n),o=o.concat(o.map(function(f){return f+" domain"})),u[s]={valType:"enumerated",values:o.concat(i?typeof i=="string"?[i]:i:[]),dflt:n},gr.coerce(e,r,u,s)};Ve.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};Ve.coercePosition=function(e,r,t,a,n,i){var l,o,s=Ve.getRefType(a);if(s!=="range")l=gr.ensureNumber,o=t(n,i);else{var u=Ve.getFromId(r,a);i=u.fraction2r(i),o=t(n,i),l=u.cleanPos}e[n]=l(o)};Ve.cleanPosition=function(e,r,t){var a=t==="paper"||t==="pixel"?gr.ensureNumber:Ve.getFromId(r,t).cleanPos;return a(e)};Ve.redrawComponents=function(e,r){r=r||Ve.listIds(e);var t=e._fullLayout;function a(n,i,l,o){for(var s=gf.getComponentMethod(n,i),u={},f=0;f2e-6||((t-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};Ve.saveRangeInitial=function(e,r){for(var t=Ve.list(e,"",!0),a=!1,n=0;nv*.3||u(a)||u(n))){var h=t.dtick/2;e+=e+hl){var o=Number(t.slice(1));i.exactYears>l&&o%12===0?e=Ve.tickIncrement(e,"M6","reverse")+Ra*1.5:i.exactMonths>l?e=Ve.tickIncrement(e,"M1","reverse")+Ra*15.5:e-=xl;var s=Ve.tickIncrement(e,t);if(s<=a)return s}return e}Ve.prepMinorTicks=function(e,r,t){if(!r.minor.dtick){delete e.dtick;var a=r.dtick&&Ht(r._tmin),n;if(a){var i=Ve.tickIncrement(r._tmin,r.dtick,!0);n=[r._tmin,i*.99+r._tmin*.01]}else{var l=gr.simpleMap(r.range,r.r2l);n=[l[0],.8*l[0]+.2*l[1]]}if(e.range=gr.simpleMap(n,r.l2r),e._isMinor=!0,Ve.prepTicks(e,t),a){var o=Ht(r.dtick),s=Ht(e.dtick),u=o?r.dtick:+r.dtick.substring(1),f=s?e.dtick:+e.dtick.substring(1);o&&s?Fm(u,f)?u===2*sn&&f===2*Ra&&(e.dtick=sn):u===2*sn&&f===3*Ra?e.dtick=sn:u===sn&&!(r._input.minor||{}).nticks?e.dtick=Ra:p8(u/f,2.5)?e.dtick=u/2:e.dtick=u:String(r.dtick).charAt(0)==="M"?s?e.dtick="M1":Fm(u,f)?u>=12&&f===2&&(e.dtick="M3"):e.dtick=r.dtick:String(e.dtick).charAt(0)==="L"?String(r.dtick).charAt(0)==="L"?Fm(u,f)||(e.dtick=p8(u/f,2.5)?r.dtick/2:r.dtick):e.dtick="D1":e.dtick==="D2"&&+r.dtick>1&&(e.dtick=1)}e.range=r.range}r.minor._tick0Init===void 0&&(e.tick0=r.tick0)};function Fm(e,r){return Math.abs((e/r+.5)%1-.5)<.001}function p8(e,r){return Math.abs(e/r-1)<.001}Ve.prepTicks=function(e,r){var t=gr.simpleMap(e.range,e.r2l,void 0,void 0,r);if(e.tickmode==="auto"||!e.dtick){var a=e.nticks,n;a||(e.type==="category"||e.type==="multicategory"?(n=e.tickfont?gr.bigFont(e.tickfont.size||12):15,a=e._length/n):(n=e._id.charAt(0)==="y"?40:80,a=gr.constrain(e._length/n,4,9)+1),e._name==="radialaxis"&&(a*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(a*=100),e._roughDTick=Math.abs(t[1]-t[0])/a,Ve.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(i=a-1,l=a):(i=a,l=a);var o=e[i].value,s=e[l].value,u=Math.abs(s-o),f=t||u,v=0;f>=q0?u>=q0&&u<=AV?v=u:v=L0:t===Om&&f>=D0?u>=D0&&u<=kV?v=u:v=Om:f>=E0?u>=E0&&u<=SV?v=u:v=Os:t===sn&&f>=sn?v=sn:f>=Ra?v=Ra:t===xl&&f>=xl?v=xl:t===Ti&&f>=Ti&&(v=Ti);var h;v>=u&&(v=u,h=!0);var d=n+v;if(r.rangebreaks&&v>0){for(var m=84,g=0,y=0;ysn&&(v=u)}(v>0||a===0)&&(e[a].periodX=n+v/2)}}Ve.calcTicks=function(r,t){for(var a=r.type,n=r.calendar,i=r.ticklabelstep,l=r.ticklabelmode==="period",o=r.range[0]>r.range[1],s=!r.ticklabelindex||gr.isArrayOrTypedArray(r.ticklabelindex)?r.ticklabelindex:[r.ticklabelindex],u=gr.simpleMap(r.range,r.r2l,void 0,void 0,t),f=u[1]=(T?0:1);b--){var M=!b;b?(r._dtickInit=r.dtick,r._tick0Init=r.tick0):(r.minor._dtickInit=r.minor.dtick,r.minor._tick0Init=r.minor.tick0);var C=b?r:gr.extendFlat({},r,r.minor);if(M?Ve.prepMinorTicks(C,r,t):Ve.prepTicks(C,t),C.tickmode==="array"){b?(y=[],m=m8(r,!M)):(_=[],g=m8(r,!M));continue}if(C.tickmode==="sync"){y=[],m=OV(r);continue}var k=Zm(u),q=k[0],D=k[1],R=Ht(C.dtick),z=a==="log"&&!(R||C.dtick.charAt(0)==="L"),F=Ve.tickFirst(C,t);if(b){if(r._tmin=F,F=D:O<=D;O=Ve.tickIncrement(O,G,f,n)){if(b&&J++,C.rangebreaks&&!f){if(O=h)break}if(y.length>d||O===H)break;H=O;var I={value:O};b?(z&&O!==(O|0)&&(I.simpleLabel=!0),i>1&&J%i&&(I.skipLabel=!0),y.push(I)):(I.minor=!0,_.push(I))}}if(!_||_.length<2)s=!1;else{var Y=(_[1].value-_[0].value)*(o?-1:1);cG(Y,r.tickformat)||(s=!1)}if(!s)w=y;else{var K=y.concat(_);l&&y.length&&(K=K.slice(1)),K=K.sort(function(Ne,Be){return Ne.value-Be.value}).filter(function(Ne,Be,Ge){return Be===0||Ne.value!==Ge[Be-1].value});var Q=K.map(function(Ne,Be){return Ne.minor===void 0&&!Ne.skipLabel?Be:null}).filter(function(Ne){return Ne!==null});Q.forEach(function(Ne){s.map(function(Be){var Ge=Ne+Be;Ge>=0&&Ge-1;se--){if(y[se].drop){y.splice(se,1);continue}y[se].value=Hm(y[se].value,r);var U=r.c2p(y[se].value);(ge?$>U-B:$h||qeh&&(Ge.periodX=h),qen&&hL0)r/=L0,a=n(10),e.dtick="M"+12*wi(r,a,S0);else if(i>Os)r/=Os,e.dtick="M"+wi(r,1,y8);else if(i>Ra){if(e.dtick=wi(r,Ra,e._hasDayOfWeekBreaks?[1,2,7,14]:BV),!t){var l=Ve.getTickFormat(e),o=e.ticklabelmode==="period";o&&(e._rawTick0=e.tick0),/%[uVW]/.test(l)?e.tick0=gr.dateTick0(e.calendar,2):e.tick0=gr.dateTick0(e.calendar,1),o&&(e._dowTick0=e.tick0)}}else i>Ti?e.dtick=wi(r,Ti,y8):i>xf?e.dtick=wi(r,xf,g8):i>P0?e.dtick=wi(r,P0,g8):(a=n(10),e.dtick=wi(r,a,S0))}else if(e.type==="log"){e.tick0=0;var s=gr.simpleMap(e.range,e.r2l);if(e._isMinor&&(r*=1.5),r>.7)e.dtick=Math.ceil(r);else if(Math.abs(s[1]-s[0])<1){var u=1.5*Math.abs((s[1]-s[0])/r);r=Math.abs(Math.pow(10,s[1])-Math.pow(10,s[0]))/u,a=n(10),e.dtick="L"+wi(r,a,S0)}else e.dtick=r>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(r,1))):Qm(e)?(e.tick0=0,a=1,e.dtick=wi(r,a,YV)):(e.tick0=0,a=n(10),e.dtick=wi(r,a,S0));if(e.dtick===0&&(e.dtick=1),!Ht(e.dtick)&&typeof e.dtick!="string"){var f=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(f)}};function k8(e){var r=e.dtick;if(e._tickexponent=0,!Ht(r)&&typeof r!="string"&&(r=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var t=e.r2l(e.tick0),a=e.l2r(t).replace(/(^-|i)/g,""),n=a.length;if(String(r).charAt(0)==="M")n>10||a.slice(5)!=="01-01"?e._tickround="d":e._tickround=+r.slice(1)%12===0?"y":"m";else if(r>=Ra&&n<=10||r>=Ra*15)e._tickround="d";else if(r>=xf&&n<=16||r>=Ti)e._tickround="M";else if(r>=P0&&n<=19||r>=xf)e._tickround="S";else{var i=e.l2r(t+r).replace(/^-/,"").length;e._tickround=Math.max(n,i)-20,e._tickround<0&&(e._tickround=4)}}else if(Ht(r)||r.charAt(0)==="L"){var l=e.range.map(e.r2d||Number);Ht(r)||(r=Number(r.slice(1))),e._tickround=2-Math.floor(Math.log(r)/Math.LN10+.01);var o=Math.max(Math.abs(l[0]),Math.abs(l[1])),s=Math.floor(Math.log(o)/Math.LN10+.01),u=e.minexponent===void 0?3:e.minexponent;Math.abs(s)>u&&(Bs(e.exponentformat)&&e.exponentformat!=="SI extended"&&!Xm(s)||Bs(e.exponentformat)&&e.exponentformat==="SI extended"&&!Jm(s)?e._tickexponent=3*Math.round((s-1)/3):e._tickexponent=s)}else e._tickround=null}Ve.tickIncrement=function(e,r,t,a){var n=t?-1:1;if(Ht(r))return gr.increment(e,n*r);var i=r.charAt(0),l=n*Number(r.slice(1));if(i==="M")return gr.incrementMonth(e,l,a);if(i==="L")return Math.log(Math.pow(10,e)+l)/Math.LN10;if(i==="D"){var o=r==="D2"?A8:M8,s=e+n*.01,u=gr.roundUp(gr.mod(s,1),o,t);return Math.floor(s)+Math.log(An.round(Math.pow(10,u),1))/Math.LN10}throw"unrecognized dtick "+String(r)};Ve.tickFirst=function(e,r){var t=e.r2l||Number,a=gr.simpleMap(e.range,t,void 0,void 0,r),n=a[1]=0&&_<=e._length?y:null};if(i&&gr.isArrayOrTypedArray(e.ticktext)){var v=gr.simpleMap(e.range,e.r2l),h=(Math.abs(v[1]-v[0])-(e._lBreaks||0))/1e4;for(u=0;u"+o;else{var u=Tf(e),f=e._trueSide||e.side;(!u&&f==="top"||u&&f==="bottom")&&(l+="
")}r.text=l}function VV(e,r,t,a,n){var i=e.dtick,l=r.x,o=e.tickformat,s=typeof i=="string"&&i.charAt(0);if(n==="never"&&(n=""),a&&s!=="L"&&(i="L3",s="L"),o||s==="L")r.text=wf(Math.pow(10,l),e,n,a);else if(Ht(i)||s==="D"&&(e.minorloglabels==="complete"||gr.mod(l+.01,1)<.1)){var u;e.minorloglabels==="complete"&&!(gr.mod(l+.01,1)<.1)&&(u=!0,r.fontSize*=.75);var f=Math.pow(10,l).toExponential(0),v=f.split("e"),h=+v[1],d=Math.abs(h),m=e.exponentformat;m==="power"||Bs(m)&&m!=="SI extended"&&Xm(h)||Bs(m)&&m==="SI extended"&&Jm(h)?(r.text=v[0],d>0&&(r.text+="x10"),r.text==="1x10"&&(r.text="10"),h!==0&&h!==1&&(r.text+=""+(h>0?"":xo)+d+""),r.fontSize*=1.25):(m==="e"||m==="E")&&d>2?r.text=v[0]+m+(h>0?"+":xo)+d:(r.text=wf(Math.pow(10,l),e,"","fakehover"),i==="D1"&&e._id.charAt(0)==="y"&&(r.dy-=r.fontSize/6))}else if(s==="D")r.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,gr.mod(l,1)))),r.fontSize*=.75;else throw"unrecognized dtick "+String(i);if(e.dtick==="D1"){var g=String(r.text).charAt(0);(g==="0"||g==="1")&&(e._id.charAt(0)==="y"?r.dx-=r.fontSize/4:(r.dy+=r.fontSize/2,r.dx+=(e.range[1]>e.range[0]?1:-1)*r.fontSize*(l<0?.5:.25)))}}function GV(e,r){var t=e._categories[Math.round(r.x)];t===void 0&&(t=""),r.text=String(t)}function WV(e,r,t){var a=Math.round(r.x),n=e._categories[a]||[],i=n[1]===void 0?"":String(n[1]),l=n[0]===void 0?"":String(n[0]);t?r.text=l+" - "+i:(r.text=i,r.text2=l)}function ZV(e,r,t,a,n){n==="never"?n="":e.showexponent==="all"&&Math.abs(r.x/e.dtick)<1e-6&&(n="hide"),r.text=wf(r.x,e,n,a)}function XV(e,r,t,a,n){if(e.thetaunit==="radians"&&!t){var i=r.x/180;if(i===0)r.text="0";else{var l=JV(i);if(l[1]>=100)r.text=wf(gr.deg2rad(r.x),e,n,a);else{var o=r.x<0;l[1]===1?l[0]===1?r.text="\u03C0":r.text=l[0]+"\u03C0":r.text=["",l[0],"","\u2044","",l[1],"","\u03C0"].join(""),o&&(r.text=xo+r.text)}}}else r.text=wf(r.x,e,n,a)}function JV(e){function r(o,s){return Math.abs(o-s)<=1e-6}function t(o,s){return r(s,0)?o:t(s,o%s)}function a(o){for(var s=1;!r(Math.round(o*s)/s,o);)s*=10;return s}var n=a(e),i=e*n,l=Math.abs(t(i,n));return[Math.round(i/l),Math.round(n/l)]}var C8=["f","p","n","\u03BC","m","","k","M","G","T"],KV=["q","r","y","z","a",...C8,"P","E","Z","Y","R","Q"],Bs=e=>["SI","SI extended","B"].includes(e);function Xm(e){return e>14||e<-15}function Jm(e){return e>32||e<-30}function QV(e,r){return Bs(r)?!!(r==="SI extended"&&Jm(e)||r!=="SI extended"&&Xm(e)):!1}function wf(e,r,t,a){var n=e<0,i=r._tickround,l=t||r.exponentformat||"B",o=r._tickexponent,s=Ve.getTickFormat(r),u=r.separatethousands;if(a){var f={exponentformat:l,minexponent:r.minexponent,dtick:r.showexponent==="none"?r.dtick:Ht(e)&&Math.abs(e)||1,range:r.showexponent==="none"?r.range.map(r.r2d):[0,e||1]};k8(f),i=(Number(f._tickround)||0)+4,o=f._tickexponent,r.hoverformat&&(s=r.hoverformat)}if(s)return r._numFormat(s)(e).replace(/-/g,xo);var v=Math.pow(10,-i)/2;if(l==="none"&&(o=0),e=Math.abs(e),e"+m+"
":l==="B"&&o===9?e+="B":Bs(l)&&(e+=l==="SI extended"?KV[o/3+10]:C8[o/3+5])}return n?xo+e:e}Ve.getTickFormat=function(e){var r;function t(s){return typeof s!="string"?s:Number(s.replace("M",""))*Os}function a(s,u){var f=["L","D"];if(typeof s==typeof u){if(typeof s=="number")return s-u;var v=f.indexOf(s.charAt(0)),h=f.indexOf(u.charAt(0));return v===h?Number(s.replace(/(L|D)/g,""))-Number(u.replace(/(L|D)/g,"")):v-h}else return typeof s=="number"?1:-1}function n(s,u,f){var v=f||function(m){return m},h=u[0],d=u[1];return(!h&&typeof h!="number"||v(h)<=v(s))&&(!d&&typeof d!="number"||v(d)>=v(s))}function i(s,u){var f=u[0]===null,v=u[1]===null,h=a(s,u[0])>=0,d=a(s,u[1])<=0;return(f||h)&&(v||d)}var l,o;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(r=0;r=0&&n.unshift(n.splice(f,1).shift())}});var o={false:{left:0,right:0}};return gr.syncOrAsync(n.map(function(s){return function(){if(s){var u=Ve.getFromId(e,s);t||(t={}),t.axShifts=o,t.overlayingShiftedAx=l;var f=Ve.drawOne(e,u,t);return u._shiftPusher&&Wm(u,u._fullDepth||0,o,!0),u._r=u.range.slice(),u._rl=gr.simpleMap(u._r,u.r2l),f}}}))};Ve.drawOne=function(e,r,t){t=t||{};var a=t.axShifts||{},n=t.overlayingShiftedAx||[],i,l,o;r.setScale();var s=e._fullLayout,u=r._id,f=u.charAt(0),v=Ve.counterLetter(u),h=s._plots[r._mainSubplot],d=r.zerolinelayer==="above traces";if(!h)return;if(r._shiftPusher=r.autoshift||n.indexOf(r._id)!==-1||n.indexOf(r.overlaying)!==-1,r._shiftPusher&r.anchor==="free"){var m=r.linewidth/2||0;r.ticks==="inside"&&(m+=r.ticklen),Wm(r,m,a,!0),Wm(r,r.shift||0,a,!1)}(t.skipTitle!==!0||r._shift===void 0)&&(r._shift=fG(r,a));var g=h[f+"axislayer"],y=r._mainLinePosition,_=y+=r._shift,w=r._mainMirrorPosition,T=r._vals=Ve.calcTicks(r),b=[r.mirror,_,w].join("_");for(i=0;i0?qe.bottom-Be:0,Ge))));var be=0,Ke=0;if(r._shiftPusher&&(be=Math.max(Ge,qe.height>0?Ee==="l"?Be-qe.left:qe.right-Be:0),r.title.text!==s._dfltTitle[f]&&(Ke=(r._titleStandoff||0)+(r._titleScoot||0),Ee==="l"&&(Ke+=x8(r))),r._fullDepth=Math.max(be,Ke)),r.automargin){He={x:0,y:0,r:0,l:0,t:0,b:0};var hr=[0,1],Pe=typeof r._shift=="number"?r._shift:0;if(f==="x"){if(Ee==="b"?He[Ee]=r._depth:(He[Ee]=r._depth=Math.max(qe.width>0?Be-qe.top:0,Ge),hr.reverse()),qe.width>0){var Me=qe.right-(r._offset+r._length);Me>0&&(He.xr=1,He.r=Me);var Se=r._offset-qe.left;Se>0&&(He.xl=0,He.l=Se)}}else if(Ee==="l"?(r._depth=Math.max(qe.height>0?Be-qe.left:0,Ge),He[Ee]=r._depth-Pe):(r._depth=Math.max(qe.height>0?qe.right-Be:0,Ge),He[Ee]=r._depth+Pe,hr.reverse()),qe.height>0){var Oe=qe.bottom-(r._offset+r._length);Oe>0&&(He.yb=0,He.b=Oe);var Je=r._offset-qe.top;Je>0&&(He.yt=1,He.t=Je)}He[v]=r.anchor==="free"?r.position:r._anchorAxis.domain[hr[0]],r.title.text!==s._dfltTitle[f]&&(He[Ee]+=x8(r)+(r.title.standoff||0)),r.mirror&&r.anchor!=="free"&&(Ye={x:0,y:0,r:0,l:0,t:0,b:0},Ye[Ne]=r.linewidth,r.mirror&&r.mirror!==!0&&(Ye[Ne]+=Ge),r.mirror===!0||r.mirror==="ticks"?Ye[v]=r._anchorAxis.domain[hr[1]]:(r.mirror==="all"||r.mirror==="allticks")&&(Ye[v]=[r._counterDomainMin,r._counterDomainMax][hr[1]]))}Fe&&(ie=gf.getComponentMethod("rangeslider","autoMarginOpts")(e,r)),typeof r.automargin=="string"&&(b8(He,r.automargin),b8(Ye,r.automargin)),Is.autoMargin(e,Km(r),He),Is.autoMargin(e,q8(r),Ye),Is.autoMargin(e,D8(r),ie)}),gr.syncOrAsync(pe)}};function b8(e,r){if(e){var t=Object.keys(v8).reduce(function(a,n){return r.indexOf(n)!==-1&&v8[n].forEach(function(i){a[i]=1}),a},{});Object.keys(e).forEach(function(a){t[a]||(a.length===1?e[a]=0:delete e[a])})}}function $V(e,r){var t=[],a,n=function(i,l){var o=i.xbnd[l];o!==null&&t.push(gr.extendFlat({},i,{x:o}))};if(r.length){for(a=0;ae.range[1],o=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,s=!o;if(t){var u=l?-1:1;t=t*u}if(a){var f=e.side,v=o&&(f==="top"||f==="left")||s&&(f==="bottom"||f==="right")?1:-1;a=a*v}return e._id.charAt(0)==="x"?function(h){return Hs(n+e._offset+e.l2p(Vm(h))+t,i+a)}:function(h){return Hs(i+a,n+e._offset+e.l2p(Vm(h))+t)}};function Vm(e){return e.periodX!==void 0?e.periodX:e.x}function tG(e){var r=e.ticklabelposition||"",t=e.tickson||"",a=function(m){return r.indexOf(m)!==-1},n=a("top"),i=a("left"),l=a("right"),o=a("bottom"),s=a("inside"),u=t!=="boundaries"&&(o||i||n||l);if(!u&&!s)return[0,0];var f=e.side,v=u?(e.tickwidth||0)/2:0,h=R0,d=e.tickfont?e.tickfont.size:12;return(o||n)&&(v+=d*_o,h+=(e.linewidth||0)/2),(i||l)&&(v+=(e.linewidth||0)/2,h+=R0),s&&f==="top"&&(h-=d*(1-_o)),(i||n)&&(v=-v),(f==="bottom"||f==="right")&&(h=-h),[u?v:0,s?h:0]}Ve.makeTickPath=function(e,r,t,a){a||(a={});var n=a.minor;if(n&&!e.minor)return"";var i=a.len!==void 0?a.len:n?e.minor.ticklen:e.ticklen,l=e._id.charAt(0),o=(e.linewidth||1)/2;return l==="x"?"M0,"+(r+o*t)+"v"+i*t:"M"+(r+o*t)+",0h"+i*t};Ve.makeLabelFns=function(e,r,t){var a=e.ticklabelposition||"",n=e.tickson||"",i=function(H){return a.indexOf(H)!==-1},l=i("top"),o=i("left"),s=i("right"),u=i("bottom"),f=n!=="boundaries"&&(u||o||l||s),v=i("inside"),h=a==="inside"&&e.ticks==="inside"||!v&&e.ticks==="outside"&&n!=="boundaries",d=0,m=0,g=h?e.ticklen:0;if(v?g*=-1:f&&(g=0),h&&(d+=g,t)){var y=gr.deg2rad(t);d=g*Math.cos(y)+1,m=g*Math.sin(y)}e.showticklabels&&(h||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(v?-1:1);var _={labelStandoff:d,labelShift:m},w,T,b,M,C=0,k=e.side,q=e._id.charAt(0),D=e.tickangle,R;if(q==="x")R=!v&&k==="bottom"||v&&k==="top",M=R?1:-1,v&&(M*=-1),w=m*M,T=r+d*M,b=R?1:-.2,Math.abs(D)===90&&(v?b+=yf:D===-90&&k==="bottom"?b=_o:D===90&&k==="top"?b=yf:b=.5,C=yf/2*(D/90)),_.xFn=function(H){return H.dx+w+C*H.fontSize},_.yFn=function(H){return H.dy+T+H.fontSize*b},_.anchorFn=function(H,O){if(f){if(o)return"end";if(s)return"start"}return!Ht(O)||O===0||O===180?"middle":O*M<0!==v?"end":"start"},_.heightFn=function(H,O,J){return O<-60||O>60?-.5*J:e.side==="top"!==v?-J:0};else if(q==="y"){if(R=!v&&k==="left"||v&&k==="right",M=R?1:-1,v&&(M*=-1),w=d,T=m*M,b=0,!v&&Math.abs(D)===90&&(D===-90&&k==="left"||D===90&&k==="right"?b=_o:b=.5),v){var z=Ht(D)?+D:0;if(z!==0){var F=gr.deg2rad(z);C=Math.abs(Math.sin(F))*_o*M,b=0}}_.xFn=function(H){return H.dx+r-(w+H.fontSize*b)*M+C*H.fontSize},_.yFn=function(H){return H.dy+T+H.fontSize*yf},_.anchorFn=function(H,O){return Ht(O)&&Math.abs(O)===90?"middle":R?"end":"start"},_.heightFn=function(H,O,J){return e.side==="right"&&(O*=-1),O<-30?-J:O<30?-.5*J:0}}return _};function F0(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}Ve.drawTicks=function(e,r,t){t=t||{};var a=r._id+"tick",n=[].concat(r.minor&&r.minor.ticks?t.vals.filter(function(l){return l.minor&&!l.noTick}):[]).concat(r.ticks?t.vals.filter(function(l){return!l.minor&&!l.noTick}):[]),i=t.layer.selectAll("path."+a).data(n,F0);i.exit().remove(),i.enter().append("path").classed(a,1).classed("ticks",1).classed("crisp",t.crisp!==!1).each(function(l){return bf.stroke(An.select(this),l.minor?r.minor.tickcolor:r.tickcolor)}).style("stroke-width",function(l){return on.crispRound(e,l.minor?r.minor.tickwidth:r.tickwidth,1)+"px"}).attr("d",t.path).style("display",null),I0(r,[_8]),i.attr("transform",t.transFn)};Ve.drawGrid=function(e,r,t){if(t=t||{},r.tickmode!=="sync"){var a=r._id+"grid",n=r.minor&&r.minor.showgrid,i=n?t.vals.filter(function(_){return _.minor}):[],l=r.showgrid?t.vals.filter(function(_){return!_.minor}):[],o=t.counterAxis;if(o&&Ve.shouldShowZeroLine(e,r,o))for(var s=r.tickmode==="array",u=0;u=0;m--){var g=m?h:d;if(g){var y=g.selectAll("path."+a).data(m?l:i,F0);y.exit().remove(),y.enter().append("path").classed(a,1).classed("crisp",t.crisp!==!1),y.attr("transform",t.transFn).attr("d",t.path).each(function(_){return bf.stroke(An.select(this),_.minor?r.minor.gridcolor:r.gridcolor||"#ddd")}).style("stroke-dasharray",function(_){return on.dashStyle(_.minor?r.minor.griddash:r.griddash,_.minor?r.minor.gridwidth:r.gridwidth)}).style("stroke-width",function(_){return(_.minor?v:r._gw)+"px"}).style("display",null),typeof t.path=="function"&&y.attr("d",t.path)}}I0(r,[Ym,Um])}};Ve.drawZeroLine=function(e,r,t){t=t||t;var a=r._id+"zl",n=Ve.shouldShowZeroLine(e,r,t.counterAxis),i=t.layer.selectAll("path."+a).data(n?[{x:0,id:r._id}]:[]);i.exit().remove(),i.enter().append("path").classed(a,1).classed("zl",1).classed("crisp",t.crisp!==!1).each(function(){t.layer.selectAll("path").sort(function(l,o){return EV(l.id,o.id)})}),i.attr("transform",t.transFn).attr("d",t.path).call(bf.stroke,r.zerolinecolor||bf.defaultLine).style("stroke-width",on.crispRound(e,r.zerolinewidth,r._gw||1)+"px").style("display",null),I0(r,[Bm])};Ve.drawLabels=function(e,r,t){t=t||{};var a=e._fullLayout,n=r._id,i=r.zerolinelayer==="above traces",l=t.cls||n+"tick",o=t.vals.filter(function(Y){return Y.text}),s=t.labelFns,u=t.secondary?0:r.tickangle,f=(r._prevTickAngles||{})[l],v=t.layer.selectAll("g."+l).data(r.showticklabels?o:[],F0),h=[];v.enter().append("g").classed(l,1).append("text").attr("text-anchor","middle").each(function(Y){var K=An.select(this),Q=e._promises.length;K.call(bo.positionText,s.xFn(Y),s.yFn(Y)).call(on.font,{family:Y.font,size:Y.fontSize,color:Y.fontColor,weight:Y.fontWeight,style:Y.fontStyle,variant:Y.fontVariant,textcase:Y.fontTextcase,lineposition:Y.fontLineposition,shadow:Y.fontShadow}).text(Y.text).call(bo.convertToTspans,e),e._promises[Q]?h.push(e._promises.pop().then(function(){d(K,u)})):d(K,u)}),I0(r,[c8]),v.exit().remove(),t.repositionOnUpdate&&v.each(function(Y){An.select(this).select("text").call(bo.positionText,s.xFn(Y),s.yFn(Y))});function d(Y,K){Y.each(function(Q){var ne=An.select(this),me=ne.select(".text-math-group"),de=s.anchorFn(Q,K),ke=t.transFn.call(ne.node(),Q)+(Ht(K)&&+K!=0?" rotate("+K+","+s.xFn(Q)+","+(s.yFn(Q)-Q.fontSize/2)+")":""),re=bo.lineCount(ne),Ce=_f*Q.fontSize,ce=s.heightFn(Q,Ht(K)?+K:0,(re-1)*Ce);if(ce&&(ke+=Hs(0,ce)),me.empty()){var _e=ne.select("text");_e.attr({transform:ke,"text-anchor":de}),_e.style("display",null),r._adjustTickLabelsOverflow&&r._adjustTickLabelsOverflow()}else{var se=on.bBox(me.node()).width,ge=se*{end:-.5,start:.5}[de];me.attr("transform",ke+Hs(ge,0))}})}r._adjustTickLabelsOverflow=function(){var Y=r.ticklabeloverflow;if(!(!Y||Y==="allow")){var K=Y.indexOf("hide")!==-1,Q=r._id.charAt(0)==="x",ne=0,me=Q?e._fullLayout.width:e._fullLayout.height;if(Y.indexOf("domain")!==-1){var de=gr.simpleMap(r.range,r.r2l);ne=r.l2p(de[0])+r._offset,me=r.l2p(de[1])+r._offset}var ke=Math.min(ne,me),re=Math.max(ne,me),Ce=r.side,ce=1/0,_e=-1/0;v.each(function($){var U=An.select(this),ye=U.select(".text-math-group");if(ye.empty()){var we=on.bBox(U.node()),pe=0;Q?(we.right>re||we.leftre||we.top+(r.tickangle?0:$.fontSize/4)r["_visibleLabelMin_"+de._id]?U.style("display","none"):re.K==="tick"&&!ke&&U.node().style.display!=="none"&&U.style("display",null)})})})})},d(v,f+1?f:u);function m(){return h.length&&Promise.all(h)}var g=null;function y(){if(d(v,u),o.length&&r.autotickangles&&(r.type!=="log"||String(r.dtick).charAt(0)!=="D")){g=r.autotickangles[0];var Y=0,K=[],Q,ne=1;v.each(function(He){Y=Math.max(Y,He.fontSize);var Ye=r.l2p(He.x),ie=Gm(this),be=on.bBox(ie.node());ne=Math.max(ne,bo.lineCount(ie)),K.push({top:0,bottom:10,height:10,left:Ye-be.width/2,right:Ye+be.width/2+2,width:be.width+2})});var me=(r.tickson==="boundaries"||r.showdividers)&&!t.secondary,de=o.length,ke=Math.abs((o[de-1].x-o[0].x)*r._m)/(de-1),re=me?ke/2:ke,Ce=me?r.ticklen:Y*1.25*ne,ce=Math.sqrt(Math.pow(re,2)+Math.pow(Ce,2)),_e=re/ce,se=r.autotickangles.map(function(He){return He*Math.PI/180}),ge=se.find(function(He){return Math.abs(Math.cos(He))<=_e});ge===void 0&&(ge=se.reduce(function(He,Ye){return Math.abs(Math.cos(He))X*J&&(F=J,D[q]=R[q]=H[q])}var G=Math.abs(F-z);G-M>0?(G-=M,M*=1+M/G):M=0,r._id.charAt(0)!=="y"&&(M=-M),D[k]=T.p2r(T.r2p(R[k])+C*M),T.autorange==="min"||T.autorange==="max reversed"?(D[0]=null,T._rangeInitial0=void 0,T._rangeInitial1=void 0):(T.autorange==="max"||T.autorange==="min reversed")&&(D[1]=null,T._rangeInitial0=void 0,T._rangeInitial1=void 0),a._insideTickLabelsUpdaterange[T._name+".range"]=D}var I=gr.syncOrAsync(_);return I&&I.then&&e._promises.push(I),I};function aG(e,r,t){var a=r._id+"divider",n=t.vals,i=t.layer.selectAll("path."+a).data(n,F0);i.exit().remove(),i.enter().insert("path",":first-child").classed(a,1).classed("crisp",1).call(bf.stroke,r.dividercolor).style("stroke-width",on.crispRound(e,r.dividerwidth,1)+"px"),i.attr("transform",t.transFn).attr("d",t.path)}Ve.getPxPosition=function(e,r){var t=e._fullLayout._size,a=r._id.charAt(0),n=r.side,i;if(r.anchor!=="free"?i=r._anchorAxis:a==="x"?i={_offset:t.t+(1-(r.position||0))*t.h,_length:0}:a==="y"&&(i={_offset:t.l+(r.position||0)*t.w+r._shift,_length:0}),n==="top"||n==="left")return i._offset;if(n==="bottom"||n==="right")return i._offset+i._length};function x8(e){var r=e.title.font.size,t=(e.title.text.match(bo.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?r*(_o+t*_f):t?r*(t+1)*_f:r}function nG(e,r){var t=e._fullLayout,a=r._id,n=a.charAt(0),i=r.title.font.size,l,o=(r.title.text.match(bo.BR_TAG_ALL)||[]).length;if(r.title.hasOwnProperty("standoff"))r.side==="bottom"||r.side==="right"?l=r._depth+r.title.standoff+i*_o:(r.side==="top"||r.side==="left")&&(l=r._depth+r.title.standoff+i*(yf+o*_f));else{var s=Tf(r);if(r.type==="multicategory")l=r._depth;else{var u=1.5*i;s&&(u=.5*i,r.ticks==="outside"&&(u+=r.ticklen)),l=10+u+(r.linewidth?r.linewidth-1:0)}s||(n==="x"?l+=r.side==="top"?i*(r.showticklabels?1:0):i*(r.showticklabels?1.5:.5):l+=r.side==="right"?i*(r.showticklabels?1:.5):i*(r.showticklabels?.5:0))}var f=Ve.getPxPosition(e,r),v,h,d;n==="x"?(h=r._offset+r._length/2,d=r.side==="top"?f-l:f+l):(d=r._offset+r._length/2,h=r.side==="right"?f+l:f-l,v={rotate:"-90",offset:0});var m;if(r.type!=="multicategory"){var g=r._selections[r._id+"tick"];if(m={selection:g,side:r.side},g&&g.node()&&g.node().parentNode){var y=on.getTranslate(g.node().parentNode);m.offsetLeft=y.x,m.offsetTop=y.y}r.title.hasOwnProperty("standoff")&&(m.pad=0)}return r._titleStandoff=l,TV.draw(e,a+"title",{propContainer:r,propName:r._name+".title.text",placeholder:t._dfltTitle[n],avoid:m,transform:v,attributes:{x:h,y:d,"text-anchor":"middle"}})}Ve.shouldShowZeroLine=function(e,r,t){var a=gr.simpleMap(r.range,r.r2l);return a[0]*a[1]<=0&&r.zeroline&&(r.type==="linear"||r.type==="-")&&!(r.rangebreaks&&r.maskBreaks(0)===z0)&&(L8(r,0)||!iG(e,r,t,a)||lG(e,r))};Ve.clipEnds=function(e,r){return r.filter(function(t){return L8(e,t.x)})};function L8(e,r){var t=e.l2p(r);return t>1&&t1)for(n=1;n=n.min&&e=LV:/%L/.test(r)?e>=CV:/%[SX]/.test(r)?e>=P0:/%M/.test(r)?e>=xf:/%[HI]/.test(r)?e>=Ti:/%p/.test(r)?e>=xl:/%[Aadejuwx]/.test(r)?e>=Ra:/%[UVW]/.test(r)?e>=sn:/%[Bbm]/.test(r)?e>=E0:/%[q]/.test(r)?e>=D0:/%[Yy]/.test(r)?e>=q0:!0}});var R8=Z((ose,P8)=>{"use strict";P8.exports=function(r,t,a){var n,i;if(a){var l=t==="reversed"||t==="min reversed"||t==="max reversed";n=a[l?1:0],i=a[l?0:1]}var o=r("autorangeoptions.minallowed",i===null?n:void 0),s=r("autorangeoptions.maxallowed",n===null?i:void 0);o===void 0&&r("autorangeoptions.clipmin"),s===void 0&&r("autorangeoptions.clipmax"),r("autorangeoptions.include")}});var $m=Z((sse,z8)=>{"use strict";var vG=R8();z8.exports=function(r,t,a,n){var i=t._template||{},l=t.type||i.type||"-";a("minallowed"),a("maxallowed");var o=a("range");if(!o){var s;!n.noInsiderange&&l!=="log"&&(s=a("insiderange"),s&&(s[0]===null||s[1]===null)&&(t.insiderange=!1,s=void 0),s&&(o=a("range",s)))}var u=t.getAutorangeDflt(o,n),f=a("autorange",u),v;o&&(o[0]===null&&o[1]===null||(o[0]===null||o[1]===null)&&(f==="reversed"||f===!0)||o[0]!==null&&(f==="min"||f==="max reversed")||o[1]!==null&&(f==="max"||f==="min reversed"))&&(o=void 0,delete t.range,t.autorange=!0,v=!0),v||(u=t.getAutorangeDflt(o,n),f=a("autorange",u)),f&&(vG(a,f,o),(l==="linear"||l==="-")&&a("rangemode")),t.cleanRange()}});var F8=Z((use,N8)=>{var hG={left:0,top:0};N8.exports=dG;function dG(e,r,t){r=r||e.currentTarget||e.srcElement,Array.isArray(t)||(t=[0,0]);var a=e.clientX||0,n=e.clientY||0,i=pG(r);return t[0]=a-i.left,t[1]=n-i.top,t}function pG(e){return e===window||e===document||e===document.body?hG:e.getBoundingClientRect()}});var jm=Z((fse,I8)=>{"use strict";var mG=Sp();function yG(){var e=!1;try{var r=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,r),window.removeEventListener("test",null,r)}catch(t){e=!1}return e}I8.exports=mG&&yG()});var O8=Z((cse,H8)=>{"use strict";H8.exports=function(r,t,a,n,i){var l=(r-a)/(n-a),o=l+t/(n-a),s=(l+o)/2;return i==="left"||i==="bottom"?l:i==="center"||i==="middle"?s:i==="right"||i==="top"?o:l<2/3-s?l:o>4/3-s?o:s}});var U8=Z((vse,Y8)=>{"use strict";var B8=Ie(),gG=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];Y8.exports=function(r,t,a,n){return a==="left"?r=0:a==="center"?r=1:a==="right"?r=2:r=B8.constrain(Math.floor(r*3),0,2),n==="bottom"?t=0:n==="middle"?t=1:n==="top"?t=2:t=B8.constrain(Math.floor(t*3),0,2),gG[t][r]}});var G8=Z((hse,V8)=>{"use strict";var bG=nf(),xG=Iv(),_G=Ku().getGraphDiv,wG=Wu(),ey=V8.exports={};ey.wrapped=function(e,r,t){e=_G(e),e._fullLayout&&xG.clear(e._fullLayout._uid+wG.HOVERID),ey.raw(e,r,t)};ey.raw=function(r,t){var a=r._fullLayout,n=r._hoverdata;t||(t={}),!(t.target&&!r._dragged&&bG.triggerHandler(r,"plotly_beforehover",t)===!1)&&(a._hoverlayer.selectAll("g").remove(),a._hoverlayer.selectAll("line").remove(),a._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,t.target&&n&&r.emit("plotly_unhover",{event:t,points:n}))}});var $n=Z((dse,J8)=>{"use strict";var TG=F8(),ry=Lp(),MG=jm(),AG=Ie().removeElement,kG=ya(),wo=J8.exports={};wo.align=O8();wo.getCursor=U8();var Z8=G8();wo.unhover=Z8.wrapped;wo.unhoverRaw=Z8.raw;wo.init=function(r){var t=r.gd,a=1,n=t._context.doubleClickDelay,i=r.element,l,o,s,u,f,v,h,d;t._mouseDownTime||(t._mouseDownTime=0),i.style.pointerEvents="all",i.onmousedown=y,MG?(i._ontouchstart&&i.removeEventListener("touchstart",i._ontouchstart),i._ontouchstart=y,i.addEventListener("touchstart",y,{passive:!1})):i.ontouchstart=y;function m(T,b,M){return Math.abs(T)n&&(a=Math.max(a-1,1)),t._dragged)r.doneFn&&r.doneFn();else{var b;v.target===h?b=v:(b={target:h,srcElement:h,toElement:h},Object.keys(v).concat(Object.keys(v.__proto__)).forEach(M=>{var C=v[M];!b[M]&&typeof C!="function"&&(b[M]=C)})),r.clickFn&&r.clickFn(a,b),d||h.dispatchEvent(new MouseEvent("click",T))}t._dragging=!1,t._dragged=!1}};function X8(){var e=document.createElement("div");e.className="dragcover";var r=e.style;return r.position="fixed",r.left=0,r.right=0,r.top=0,r.bottom=0,r.zIndex=999999999,r.background="none",document.body.appendChild(e),e}wo.coverSlip=X8;function W8(e){return TG(e.changedTouches?e.changedTouches[0]:e,document.body)}});var _l=Z((pse,K8)=>{"use strict";K8.exports=function(r,t){(r.attr("class")||"").split(" ").forEach(function(a){a.indexOf("cursor-")===0&&r.classed(a,!1)}),t&&r.classed("cursor-"+t,!0)}});var j8=Z((mse,$8)=>{"use strict";var ty=_l(),Mf="data-savedcursor",Q8="!!";$8.exports=function(r,t){var a=r.attr(Mf);if(t){if(!a){for(var n=(r.attr("class")||"").split(" "),i=0;i{"use strict";var ay=ma(),SG=di();ew.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:SG.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:ay({editType:"legend"}),grouptitlefont:ay({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:ay({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var O0=Z(H0=>{"use strict";H0.isGrouped=function(r){return(r.traceorder||"").indexOf("grouped")!==-1};H0.isVertical=function(r){return r.orientation!=="h"};H0.isReversed=function(r){return(r.traceorder||"").indexOf("reversed")!==-1}});var ly=Z((bse,rw)=>{"use strict";var B0=br(),un=Ie(),CG=ct(),LG=Vn(),qG=ny(),DG=ys(),iy=O0();function EG(e,r,t,a){var n=r[e]||{},i=CG.newContainer(t,e);function l(I,Y){return un.coerce(n,i,qG,I,Y)}var o=un.coerceFont(l,"font",t.font);l("bgcolor",t.paper_bgcolor),l("bordercolor");var s=l("visible");if(!s)return;var u,f=function(I,Y){var K=u._input,Q=u;return un.coerce(K,Q,LG,I,Y)},v=t.font||{},h=un.coerceFont(l,"grouptitlefont",v,{overrideDflt:{size:Math.round(v.size*1.1)}}),d=0,m=!1,g="normal",y=(t.shapes||[]).filter(function(I){return I.showlegend});function _(I){return B0.traceIs(I,"pie-like")&&I._length!=null&&(Array.isArray(I.legend)||Array.isArray(I.showlegend))}a.filter(_).forEach(function(I){I.visible&&d++;for(var Y=0;YI.legend.length)for(var Q=I.legend.length;Q(e==="legend"?1:0));if(M===!1&&(t[e]=void 0),!(M===!1&&!n.uirevision)&&(l("uirevision",t.uirevision),M!==!1)){l("borderwidth");var C=l("orientation"),k=l("yref"),q=l("xref"),D=C==="h",R=k==="paper",z=q==="paper",F,H,O,J="left";D?(F=0,B0.getComponentMethod("rangeslider","isVisible")(r.xaxis)?R?(H=1.1,O="bottom"):(H=1,O="top"):R?(H=-.1,O="top"):(H=0,O="bottom")):(H=1,O="auto",z?F=1.02:(F=1,J="right")),un.coerce(n,i,{x:{valType:"number",editType:"legend",min:z?-2:0,max:z?3:1,dflt:F}},"x"),un.coerce(n,i,{y:{valType:"number",editType:"legend",min:R?-2:0,max:R?3:1,dflt:H}},"y"),l("traceorder",g),iy.isGrouped(t[e])&&l("tracegroupgap"),l("entrywidth"),l("entrywidthmode"),l("indentation"),l("itemsizing"),l("itemwidth"),l("itemclick"),l("itemdoubleclick"),l("groupclick"),l("xanchor",J),l("yanchor",O),l("maxheight"),l("valign"),un.noneOrAll(n,i,["x","y"]);var X=l("title.text");if(X){l("title.side",D?"left":"top");var G=un.extendFlat({},o,{size:un.bigFont(o.size)});un.coerceFont(l,"title.font",G)}}}rw.exports=function(r,t,a){var n,i=a.slice(),l=t.shapes;if(l)for(n=0;n{"use strict";var Ys=br(),sy=Ie(),PG=sy.pushUnique,oy=!0;tw.exports=function(r,t,a){var n=t._fullLayout;if(t._dragged||t._editing)return;var i=n.legend.itemclick,l=n.legend.itemdoubleclick,o=n.legend.groupclick;a===1&&i==="toggle"&&l==="toggleothers"&&oy&&t.data&&t._context.showTips&&sy.notifier(sy._(t,"Double-click on legend to isolate one trace"),"long"),oy=!1;var s;if(a===1?s=i:a===2&&(s=l),!s)return;var u=o==="togglegroup",f=n.hiddenlabels?n.hiddenlabels.slice():[],v=r.data()[0][0];if(v.groupTitle&&v.noClick)return;var h=t._fullData,d=(n.shapes||[]).filter(function(Ne){return Ne.showlegend}),m=h.concat(d),g=v.trace;g._isShape&&(g=g._fullInput);var y=g.legendgroup,_,w,T,b,M,C,k={},q=[],D=[],R=[];function z(Ne,Be){var Ge=q.indexOf(Ne),qe=k.visible;return qe||(qe=k.visible=[]),q.indexOf(Ne)===-1&&(q.push(Ne),Ge=q.length-1),qe[Ge]=Be,Ge}var F=(n.shapes||[]).map(function(Ne){return Ne._input}),H=!1;function O(Ne,Be){F[Ne].visible=Be,H=!0}function J(Ne,Be){if(!(v.groupTitle&&!u)){var Ge=Ne._fullInput||Ne,qe=Ge._isShape,He=Ge.index;He===void 0&&(He=Ge._index);var Ye=Ge.visible===!1?!1:Be;qe?O(He,Ye):z(He,Ye)}}var X=g.legend,G=g._fullInput,I=G&&G._isShape;if(!I&&Ys.traceIs(g,"pie-like")){var Y=v.label,K=f.indexOf(Y);if(s==="toggle")K===-1?f.push(Y):f.splice(K,1);else if(s==="toggleothers"){var Q=K!==-1,ne=[];for(_=0;_{"use strict";nw.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var ow=Z((wse,lw)=>{"use strict";var iw=br(),fy=O0();lw.exports=function(r,t,a){var n=t._inHover,i=fy.isGrouped(t),l=fy.isReversed(t),o={},s=[],u=!1,f={},v=0,h=0,d,m;function g(Y,K,Q){if(t.visible!==!1&&!(a&&Y!==t._id))if(K===""||!fy.isGrouped(t)){var ne="~~i"+v;s.push(ne),o[ne]=[Q],v++}else s.indexOf(K)===-1?(s.push(K),u=!0,o[K]=[Q]):o[K].push(Q)}for(d=0;dF&&(z=F)}D[d][0]._groupMinRank=z,D[d][0]._preGroupSort=d}var H=function(Y,K){return Y[0]._groupMinRank-K[0]._groupMinRank||Y[0]._preGroupSort-K[0]._preGroupSort},O=function(Y,K){return Y.trace.legendrank-K.trace.legendrank||Y._preSort-K._preSort};for(D.forEach(function(Y,K){Y[0]._preGroupSort=K}),D.sort(H),d=0;d{"use strict";var Y0=Ie();function sw(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}To.formatPiePercent=function(r,t){var a=sw((r*100).toPrecision(3));return Y0.numSeparate(a,t)+"%"};To.formatPieValue=function(r,t){var a=sw(r.toPrecision(10));return Y0.numSeparate(a,t)};To.getFirstFilled=function(r,t){if(Y0.isArrayOrTypedArray(r))for(var a=0;a{"use strict";var RG=at(),zG=Er();uw.exports=function(r,t,a,n){var i=a.marker.pattern;i&&i.shape?RG.pointStyle(r,a,n,t):zG.fill(r,t.color)}});var V0=Z((Ase,hw)=>{"use strict";var cw=Er(),vw=U0().castOption,NG=fw();hw.exports=function(r,t,a,n){var i=a.marker.line,l=vw(i.color,t.pts)||cw.defaultLine,o=vw(i.width,t.pts)||0;r.call(NG,t,a,n).style("stroke-width",o).call(cw.stroke,l)}});var dy=Z((kse,bw)=>{"use strict";var za=Ir(),cy=br(),Aa=Ie(),dw=Aa.strTranslate,fn=at(),kn=Er(),vy=Mn().extractOpts,G0=ln(),FG=V0(),IG=U0().castOption,HG=uy(),pw=12,mw=5,Mo=2,OG=10,Us=5;bw.exports=function(r,t,a){var n=t._fullLayout;a||(a=n.legend);var i=a.itemsizing==="constant",l=a.itemwidth,o=(l+HG.itemGap*2)/2,s=dw(o,0),u=function(k,q,D,R){var z;if(k+1)z=k;else if(q&&q.width>0)z=q.width;else return 0;return i?R:Math.min(z,D)};r.each(function(k){var q=za.select(this),D=Aa.ensureSingle(q,"g","layers");D.style("opacity",k[0].trace.opacity);var R=a.indentation,z=a.valign,F=k[0].lineHeight,H=k[0].height;if(z==="middle"&&R===0||!F||!H)D.attr("transform",null);else{var O={top:1,bottom:-1}[z],J=O*(.5*(F-H+3))||0,X=a.indentation;D.attr("transform",dw(X,J))}var G=D.selectAll("g.legendfill").data([k]);G.enter().append("g").classed("legendfill",!0);var I=D.selectAll("g.legendlines").data([k]);I.enter().append("g").classed("legendlines",!0);var Y=D.selectAll("g.legendsymbols").data([k]);Y.enter().append("g").classed("legendsymbols",!0),Y.selectAll("g.legendpoints").data([k]).enter().append("g").classed("legendpoints",!0)}).each(C).each(h).each(m).each(d).each(y).each(b).each(T).each(f).each(v).each(_).each(w);function f(k){var q=yw(k),D=q.showFill,R=q.showLine,z=q.showGradientLine,F=q.showGradientFill,H=q.anyFill,O=q.anyLine,J=k[0],X=J.trace,G,I,Y=vy(X),K=Y.colorscale,Q=Y.reversescale,ne=function(_e){if(_e.size())if(D)fn.fillGroupStyle(_e,t,!0);else{var se="legendfill-"+X.uid;fn.gradient(_e,t,se,hy(Q),K,"fill")}},me=function(_e){if(_e.size()){var se="legendline-"+X.uid;fn.lineGroupStyle(_e),fn.gradient(_e,t,se,hy(Q),K,"stroke")}},de=G0.hasMarkers(X)||!H?"M5,0":O?"M5,-2":"M5,-3",ke=za.select(this),re=ke.select(".legendfill").selectAll("path").data(D||F?[k]:[]);if(re.enter().append("path").classed("js-fill",!0),re.exit().remove(),re.attr("d",de+"h"+l+"v6h-"+l+"z").call(ne),R||z){var Ce=u(void 0,X.line,OG,mw);I=Aa.minExtend(X,{line:{width:Ce}}),G=[Aa.minExtend(J,{trace:I})]}var ce=ke.select(".legendlines").selectAll("path").data(R||z?[G]:[]);ce.enter().append("path").classed("js-line",!0),ce.exit().remove(),ce.attr("d",de+(z?"l"+l+",0.0001":"h"+l)).call(R?fn.lineGroupStyle:me)}function v(k){var q=yw(k),D=q.anyFill,R=q.anyLine,z=q.showLine,F=q.showMarker,H=k[0],O=H.trace,J=!F&&!R&&!D&&G0.hasText(O),X,G;function I(re,Ce,ce,_e){var se=Aa.nestedProperty(O,re).get(),ge=Aa.isArrayOrTypedArray(se)&&Ce?Ce(se):se;if(i&&ge&&_e!==void 0&&(ge=_e),ce){if(gece[1])return ce[1]}return ge}function Y(re){return H._distinct&&H.index&&re[H.index]?re[H.index]:re[0]}if(F||J||z){var K={},Q={};if(F){K.mc=I("marker.color",Y),K.mx=I("marker.symbol",Y),K.mo=I("marker.opacity",Aa.mean,[.2,1]),K.mlc=I("marker.line.color",Y),K.mlw=I("marker.line.width",Aa.mean,[0,5],Mo),Q.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var ne=I("marker.size",Aa.mean,[2,16],pw);K.ms=ne,Q.marker.size=ne}z&&(Q.line={width:I("line.width",Y,[0,10],mw)}),J&&(K.tx="Aa",K.tp=I("textposition",Y),K.ts=10,K.tc=I("textfont.color",Y),K.tf=I("textfont.family",Y),K.tw=I("textfont.weight",Y),K.ty=I("textfont.style",Y),K.tv=I("textfont.variant",Y),K.tC=I("textfont.textcase",Y),K.tE=I("textfont.lineposition",Y),K.tS=I("textfont.shadow",Y)),X=[Aa.minExtend(H,K)],G=Aa.minExtend(O,Q),G.selectedpoints=null,G.texttemplate=null}var me=za.select(this).select("g.legendpoints"),de=me.selectAll("path.scatterpts").data(F?X:[]);de.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",s),de.exit().remove(),de.call(fn.pointStyle,G,t),F&&(X[0].mrc=3);var ke=me.selectAll("g.pointtext").data(J?X:[]);ke.enter().append("g").classed("pointtext",!0).append("text").attr("transform",s),ke.exit().remove(),ke.selectAll("text").call(fn.textPointStyle,G,t)}function h(k){var q=k[0].trace,D=q.type==="waterfall";if(k[0]._distinct&&D){var R=k[0].trace[k[0].dir].marker;return k[0].mc=R.color,k[0].mlw=R.line.width,k[0].mlc=R.line.color,g(k,this,"waterfall")}var z=[];q.visible&&D&&(z=k[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var F=za.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(z);F.enter().append("path").classed("legendwaterfall",!0).attr("transform",s).style("stroke-miterlimit",1),F.exit().remove(),F.each(function(H){var O=za.select(this),J=q[H[0]].marker,X=u(void 0,J.line,Us,Mo);O.attr("d",H[1]).style("stroke-width",X+"px").call(kn.fill,J.color),X&&O.call(kn.stroke,J.line.color)})}function d(k){g(k,this)}function m(k){g(k,this,"funnel")}function g(k,q,D){var R=k[0].trace,z=R.marker||{},F=z.line||{},H=z.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",O=D?R.visible&&R.type===D:cy.traceIs(R,"bar"),J=za.select(q).select("g.legendpoints").selectAll("path.legend"+D).data(O?[k]:[]);J.enter().append("path").classed("legend"+D,!0).attr("d",H).attr("transform",s),J.exit().remove(),J.each(function(X){var G=za.select(this),I=X[0],Y=u(I.mlw,z.line,Us,Mo);G.style("stroke-width",Y+"px");var K=I.mcc;if(!a._inHover&&"mc"in I){var Q=vy(z),ne=Q.mid;ne===void 0&&(ne=(Q.max+Q.min)/2),K=fn.tryColorscale(z,"")(ne)}var me=K||I.mc||z.color,de=z.pattern,ke=fn.getPatternAttr,re=de&&(ke(de.shape,0,"")||ke(de.path,0,""));if(re){var Ce=ke(de.bgcolor,0,null),ce=ke(de.fgcolor,0,null),_e=de.fgopacity,se=gw(de.size,8,10),ge=gw(de.solidity,.5,1),B="legend-"+R.uid;G.call(fn.pattern,"legend",t,B,re,se,ge,K,de.fillmode,Ce,ce,_e)}else G.call(kn.fill,me);Y&&kn.stroke(G,I.mlc||F.color)})}function y(k){var q=k[0].trace,D=za.select(this).select("g.legendpoints").selectAll("path.legendbox").data(q.visible&&cy.traceIs(q,"box-violin")?[k]:[]);D.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),D.exit().remove(),D.each(function(){var R=za.select(this);if((q.boxpoints==="all"||q.points==="all")&&kn.opacity(q.fillcolor)===0&&kn.opacity((q.line||{}).color)===0){var z=Aa.minExtend(q,{marker:{size:i?pw:Aa.constrain(q.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});D.call(fn.pointStyle,z,t)}else{var F=u(void 0,q.line,Us,Mo);R.style("stroke-width",F+"px").call(kn.fill,q.fillcolor),F&&kn.stroke(R,q.line.color)}})}function _(k){var q=k[0].trace,D=za.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(q.visible&&q.type==="candlestick"?[k,k]:[]);D.enter().append("path").classed("legendcandle",!0).attr("d",function(R,z){return z?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",s).style("stroke-miterlimit",1),D.exit().remove(),D.each(function(R,z){var F=za.select(this),H=q[z?"increasing":"decreasing"],O=u(void 0,H.line,Us,Mo);F.style("stroke-width",O+"px").call(kn.fill,H.fillcolor),O&&kn.stroke(F,H.line.color)})}function w(k){var q=k[0].trace,D=za.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(q.visible&&q.type==="ohlc"?[k,k]:[]);D.enter().append("path").classed("legendohlc",!0).attr("d",function(R,z){return z?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",s).style("stroke-miterlimit",1),D.exit().remove(),D.each(function(R,z){var F=za.select(this),H=q[z?"increasing":"decreasing"],O=u(void 0,H.line,Us,Mo);F.style("fill","none").call(fn.dashLine,H.line.dash,O),O&&kn.stroke(F,H.line.color)})}function T(k){M(k,this,"pie")}function b(k){M(k,this,"funnelarea")}function M(k,q,D){var R=k[0],z=R.trace,F=D?z.visible&&z.type===D:cy.traceIs(z,D),H=za.select(q).select("g.legendpoints").selectAll("path.legend"+D).data(F?[k]:[]);if(H.enter().append("path").classed("legend"+D,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),H.exit().remove(),H.size()){var O=z.marker||{},J=u(IG(O.line.width,R.pts),O.line,Us,Mo),X="pieLike",G=Aa.minExtend(z,{marker:{line:{width:J}}},X),I=Aa.minExtend(R,{trace:G},X);FG(H,I,G,t)}}function C(k){var q=k[0].trace,D,R=[];if(q.visible)switch(q.type){case"histogram2d":case"heatmap":R=[["M-15,-2V4H15V-2Z"]],D=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":R=[["M-6,-6V6H6V-6Z"]],D=!0;break;case"densitymapbox":case"densitymap":R=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],D="radial";break;case"cone":R=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],D=!1;break;case"streamtube":R=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],D=!1;break;case"surface":R=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],D=!0;break;case"mesh3d":R=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],D=!1;break;case"volume":R=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],D=!0;break;case"isosurface":R=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],D=!1;break}var z=za.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(R);z.enter().append("path").classed("legend3dandfriends",!0).attr("transform",s).style("stroke-miterlimit",1),z.exit().remove(),z.each(function(F,H){var O=za.select(this),J=vy(q),X=J.colorscale,G=J.reversescale,I=function(ne){if(ne.size()){var me="legendfill-"+q.uid;fn.gradient(ne,t,me,hy(G,D==="radial"),X,"fill")}},Y;if(X){if(!D){var Q=X.length;Y=H===0?X[G?Q-1:0][1]:H===1?X[G?0:Q-1][1]:X[Math.floor((Q-1)/2)][1]}}else{var K=q.vertexcolor||q.facecolor||q.color;Y=Aa.isArrayOrTypedArray(K)?K[H]||K[0]:K}O.attr("d",F[0]),Y?O.call(kn.fill,Y):O.call(I)})}};function hy(e,r){var t=r?"radial":"horizontal";return t+(e?"":"reversed")}function yw(e){var r=e[0].trace,t=r.contours,a=G0.hasLines(r),n=G0.hasMarkers(r),i=r.visible&&r.fill&&r.fill!=="none",l=!1,o=!1;if(t){var s=t.coloring;s==="lines"?l=!0:a=s==="none"||s==="heatmap"||t.showlines,t.type==="constraint"?i=t._operation!=="=":(s==="fill"||s==="heatmap")&&(o=!0)}return{showMarker:n,showLine:a,showFill:i,showGradientLine:l,showGradientFill:o,anyLine:a||l,anyFill:i||o}}function gw(e,r,t){return e&&Aa.isArrayOrTypedArray(e)?r:e>t?t:e}});var gy=Z((Sse,Lw)=>{"use strict";var Qa=Ir(),Ot=Ie(),my=Ft(),Ws=br(),xw=nf(),py=$n(),Bt=at(),Z0=Er(),Ao=Ta(),_w=aw(),Xt=uy(),yy=Pa(),Sw=yy.LINE_SPACING,Gs=yy.FROM_TL,ww=yy.FROM_BR,Tw=ow(),BG=dy(),Mw=O0(),Vs=1,YG=/^legend[0-9]*$/;Lw.exports=function(r,t){if(t)Aw(r,t);else{var a=r._fullLayout,n=a._legends,i=a._infolayer.selectAll('[class^="legend"]');i.each(function(){var u=Qa.select(this),f=u.attr("class"),v=f.split(" ")[0];v.match(YG)&&n.indexOf(v)===-1&&u.remove()});for(var l=0;l1)}var m=a.hiddenlabels||[];if(!o&&(!a.showlegend||!s.length))return l.selectAll("."+n).remove(),a._topdefs.select("#"+i).remove(),my.autoMargin(e,n);var g=Ot.ensureSingle(l,"g",n,function(q){o||q.attr("pointer-events","all")}),y=Ot.ensureSingleById(a._topdefs,"clipPath",i,function(q){q.append("rect")}),_=Ot.ensureSingle(g,"rect","bg",function(q){q.attr("shape-rendering","crispEdges")});_.call(Z0.stroke,t.bordercolor).call(Z0.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px");var w=Ot.ensureSingle(g,"g","scrollbox"),T=t.title;t._titleWidth=0,t._titleHeight=0;var b;T.text?(b=Ot.ensureSingle(w,"text",n+"titletext"),b.attr("text-anchor","start").call(Bt.font,T.font).text(T.text),X0(b,w,e,t,Vs)):w.selectAll("."+n+"titletext").remove();var M=Ot.ensureSingle(g,"rect","scrollbar",function(q){q.attr(Xt.scrollBarEnterAttrs).call(Z0.fill,Xt.scrollBarColor)}),C=w.selectAll("g.groups").data(s);C.enter().append("g").attr("class","groups"),C.exit().remove();var k=C.selectAll("g.traces").data(Ot.identity);k.enter().append("g").attr("class","traces"),k.exit().remove(),k.style("opacity",function(q){var D=q[0].trace;return Ws.traceIs(D,"pie-like")?m.indexOf(q[0].label)!==-1?.5:1:D.visible==="legendonly"?.5:1}).each(function(){Qa.select(this).call(VG,e,t)}).call(BG,e,t).each(function(){o||Qa.select(this).call(GG,e,n)}),Ot.syncOrAsync([my.previousPromises,function(){return XG(e,C,k,t)},function(){var q=a._size,D=t.borderwidth,R=t.xref==="paper",z=t.yref==="paper";if(T.text&&UG(b,t,D),!o){var F,H;R?F=q.l+q.w*t.x-Gs[J0(t)]*t._width:F=a.width*t.x-Gs[J0(t)]*t._width,z?H=q.t+q.h*(1-t.y)-Gs[K0(t)]*t._effHeight:H=a.height*(1-t.y)-Gs[K0(t)]*t._effHeight;var O=JG(e,n,F,H);if(O)return;if(a.margin.autoexpand){var J=F,X=H;F=R?Ot.constrain(F,0,a.width-t._width):J,H=z?Ot.constrain(H,0,a.height-t._effHeight):X,F!==J&&Ot.log("Constrain "+n+".x to make legend fit inside graph"),H!==X&&Ot.log("Constrain "+n+".y to make legend fit inside graph")}Bt.setTranslate(g,F,H)}if(M.on(".drag",null),g.on("wheel",null),o||t._height<=t._maxHeight||e._context.staticPlot){var G=t._effHeight;o&&(G=t._height),_.attr({width:t._width-D,height:G-D,x:D/2,y:D/2}),Bt.setTranslate(w,0,0),y.select("rect").attr({width:t._width-2*D,height:G-2*D,x:D,y:D}),Bt.setClipUrl(w,i,e),Bt.setRect(M,0,0,0,0),delete t._scrollY}else{var I=Math.max(Xt.scrollBarMinHeight,t._effHeight*t._effHeight/t._height),Y=t._effHeight-I-2*Xt.scrollBarMargin,K=t._height-t._effHeight,Q=Y/K,ne=Math.min(t._scrollY||0,K);_.attr({width:t._width-2*D+Xt.scrollBarWidth+Xt.scrollBarMargin,height:t._effHeight-D,x:D/2,y:D/2}),y.select("rect").attr({width:t._width-2*D+Xt.scrollBarWidth+Xt.scrollBarMargin,height:t._effHeight-2*D,x:D,y:D+ne}),Bt.setClipUrl(w,i,e),se(ne,I,Q),g.on("wheel",function(){ne=Ot.constrain(t._scrollY+Qa.event.deltaY/K*Y,0,K),se(ne,I,Q),ne!==0&&ne!==K&&Qa.event.preventDefault()});var me,de,ke,re=function(ye,we,pe){var Re=(pe-we)/Q+ye;return Ot.constrain(Re,0,K)},Ce=function(ye,we,pe){var Re=(we-pe)/Q+ye;return Ot.constrain(Re,0,K)},ce=Qa.behavior.drag().on("dragstart",function(){var ye=Qa.event.sourceEvent;ye.type==="touchstart"?me=ye.changedTouches[0].clientY:me=ye.clientY,ke=ne}).on("drag",function(){var ye=Qa.event.sourceEvent;ye.buttons===2||ye.ctrlKey||(ye.type==="touchmove"?de=ye.changedTouches[0].clientY:de=ye.clientY,ne=re(ke,me,de),se(ne,I,Q))});M.call(ce);var _e=Qa.behavior.drag().on("dragstart",function(){var ye=Qa.event.sourceEvent;ye.type==="touchstart"&&(me=ye.changedTouches[0].clientY,ke=ne)}).on("drag",function(){var ye=Qa.event.sourceEvent;ye.type==="touchmove"&&(de=ye.changedTouches[0].clientY,ne=Ce(ke,me,de),se(ne,I,Q))});w.call(_e)}function se(ye,we,pe){t._scrollY=e._fullLayout[n]._scrollY=ye,Bt.setTranslate(w,0,-ye),Bt.setRect(M,t._width,Xt.scrollBarMargin+ye*pe,Xt.scrollBarWidth,we),y.select("rect").attr("y",D+ye)}if(e._context.edits.legendPosition){var ge,B,$,U;g.classed("cursor-move",!0),py.init({element:g.node(),gd:e,prepFn:function(ye){if(ye.target!==M.node()){var we=Bt.getTranslate(g);$=we.x,U=we.y}},moveFn:function(ye,we){if($!==void 0&&U!==void 0){var pe=$+ye,Re=U+we;Bt.setTranslate(g,pe,Re),ge=py.align(pe,t._width,q.l,q.l+q.w,t.xanchor),B=py.align(Re+t._height,-t._height,q.t+q.h,q.t,t.yanchor)}},doneFn:function(){if(ge!==void 0&&B!==void 0){var ye={};ye[n+".x"]=ge,ye[n+".y"]=B,Ws.call("_guiRelayout",e,ye)}},clickFn:function(ye,we){var pe=l.selectAll("g.traces").filter(function(){var Re=this.getBoundingClientRect();return we.clientX>=Re.left&&we.clientX<=Re.right&&we.clientY>=Re.top&&we.clientY<=Re.bottom});pe.size()>0&&Cw(e,g,pe,ye,we)}})}}],e)}}function W0(e,r,t){var a=e[0],n=a.width,i=r.entrywidthmode,l=a.trace.legendwidth||r.entrywidth;return i==="fraction"?r._maxWidth*l:t+(l||n)}function Cw(e,r,t,a,n){var i=t.data()[0][0].trace,l={event:n,node:t.node(),curveNumber:i.index,expandedIndex:i.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};i._group&&(l.group=i._group),Ws.traceIs(i,"pie-like")&&(l.label=t.datum()[0].label);var o=xw.triggerHandler(e,"plotly_legendclick",l);if(a===1){if(o===!1)return;r._clickTimeout=setTimeout(function(){e._fullLayout&&_w(t,e,a)},e._context.doubleClickDelay)}else if(a===2){r._clickTimeout&&clearTimeout(r._clickTimeout),e._legendMouseDownTime=0;var s=xw.triggerHandler(e,"plotly_legenddoubleclick",l);s!==!1&&o!==!1&&_w(t,e,a)}}function VG(e,r,t){var a=Q0(t),n=e.data()[0][0],i=n.trace,l=Ws.traceIs(i,"pie-like"),o=!t._inHover&&r._context.edits.legendText&&!l,s=t._maxNameLength,u,f;n.groupTitle?(u=n.groupTitle.text,f=n.groupTitle.font):(f=t.font,t.entries?u=n.text:(u=l?n.label:i.name,i._meta&&(u=Ot.templateString(u,i._meta))));var v=Ot.ensureSingle(e,"text",a+"text");v.attr("text-anchor","start").call(Bt.font,f).text(o?kw(u,s):u);var h=t.indentation+t.itemwidth+Xt.itemGap*2;Ao.positionText(v,h,0),o?v.call(Ao.makeEditable,{gd:r,text:u}).call(X0,e,r,t).on("edit",function(d){this.text(kw(d,s)).call(X0,e,r,t);var m=n.trace._fullInput||{},g={};return g.name=d,m._isShape?Ws.call("_guiRelayout",r,"shapes["+i.index+"].name",g.name):Ws.call("_guiRestyle",r,g,i.index)}):X0(v,e,r,t)}function kw(e,r){var t=Math.max(4,r);if(e&&e.trim().length>=t/2)return e;e=e||"";for(var a=t-e.length;a>0;a--)e+=" ";return e}function GG(e,r,t){var a=r._context.doubleClickDelay,n,i=1,l=Ot.ensureSingle(e,"rect",t+"toggle",function(o){r._context.staticPlot||o.style("cursor","pointer").attr("pointer-events","all"),o.call(Z0.fill,"rgba(0,0,0,0)")});r._context.staticPlot||(l.on("mousedown",function(){n=new Date().getTime(),n-r._legendMouseDownTimea&&(i=Math.max(i-1,1)),Cw(r,o,e,i,Qa.event)}}))}function X0(e,r,t,a,n){a._inHover&&e.attr("data-notex",!0),Ao.convertToTspans(e,t,function(){WG(r,t,a,n)})}function WG(e,r,t,a){var n=e.data()[0][0],i=n&&n.trace.showlegend;if(Array.isArray(i)&&(i=i[n.i]!==!1),!t._inHover&&n&&!i){e.remove();return}var l=e.select("g[class*=math-group]"),o=l.node(),s=Q0(t);t||(t=r._fullLayout[s]);var u=t.borderwidth,f;a===Vs?f=t.title.font:n.groupTitle?f=n.groupTitle.font:f=t.font;var v=f.size*Sw,h,d;if(o){var m=Bt.bBox(o);h=m.height,d=m.width,a===Vs?Bt.setTranslate(l,u,u+h*.75):Bt.setTranslate(l,0,h*.25)}else{var g="."+s+(a===Vs?"title":"")+"text",y=e.select(g),_=Ao.lineCount(y),w=y.node();if(h=v*_,d=w?Bt.bBox(w).width:0,a===Vs)t.title.side==="left"&&(d+=Xt.itemGap*2),Ao.positionText(y,u+Xt.titlePad,u+v);else{var T=Xt.itemGap*2+t.indentation+t.itemwidth;n.groupTitle&&(T=Xt.itemGap,d-=t.indentation+t.itemwidth),Ao.positionText(y,T,-v*((_-1)/2-.3))}}a===Vs?(t._titleWidth=d,t._titleHeight=h):(n.lineHeight=v,n.height=Math.max(h,16)+3,n.width=d)}function ZG(e){var r=0,t=0,a=e.title.side;return a&&(a.indexOf("left")!==-1&&(r=e._titleWidth),a.indexOf("top")!==-1&&(t=e._titleHeight)),[r,t]}function XG(e,r,t,a){var n=e._fullLayout,i=Q0(a);a||(a=n[i]);var l=n._size,o=Mw.isVertical(a),s=Mw.isGrouped(a),u=a.entrywidthmode==="fraction",f=a.borderwidth,v=2*f,h=Xt.itemGap,d=a.indentation+a.itemwidth+h*2,m=2*(f+h),g=K0(a),y=a.y<0||a.y===0&&g==="top",_=a.y>1||a.y===1&&g==="bottom",w=a.tracegroupgap,T={};let{orientation:b,yref:M}=a,{maxheight:C}=a,k=y||_||b!=="v"||M!=="paper";C||(C=k?.5:1);let q=k?n.height:l.h;a._maxHeight=Math.max(C>1?C:C*q,30);var D=0;a._width=0,a._height=0;var R=ZG(a);if(o)t.each(function(se){var ge=se[0].height;Bt.setTranslate(this,f+R[0],f+R[1]+a._height+ge/2+h),a._height+=ge,a._width=Math.max(a._width,se[0].width)}),D=d+a._width,a._width+=h+d+v,a._height+=m,s&&(r.each(function(se,ge){Bt.setTranslate(this,0,ge*a.tracegroupgap)}),a._height+=(a._lgroupsLength-1)*a.tracegroupgap);else{var z=J0(a),F=a.x<0||a.x===0&&z==="right",H=a.x>1||a.x===1&&z==="left",O=_||y,J=n.width/2;a._maxWidth=Math.max(F?O&&z==="left"?l.l+l.w:J:H?O&&z==="right"?l.r+l.w:J:l.w,2*d);var X=0,G=0;t.each(function(se){var ge=W0(se,a,d);X=Math.max(X,ge),G+=ge}),D=null;var I=0;if(s){var Y=0,K=0,Q=0;r.each(function(){var se=0,ge=0;Qa.select(this).selectAll("g.traces").each(function($){var U=W0($,a,d),ye=$[0].height;Bt.setTranslate(this,R[0],R[1]+f+h+ye/2+ge),ge+=ye,se=Math.max(se,U),T[$[0].trace.legendgroup]=se});var B=se+h;K>0&&B+f+K>a._maxWidth?(I=Math.max(I,K),K=0,Q+=Y+w,Y=ge):Y=Math.max(Y,ge),Bt.setTranslate(this,K,Q),K+=B}),a._width=Math.max(I,K)+f,a._height=Q+Y+m}else{var ne=t.size(),me=G+v+(ne-1)*h=a._maxWidth&&(I=Math.max(I,Ce),ke=0,re+=de,a._height+=de,de=0),Bt.setTranslate(this,R[0]+f+ke,R[1]+f+re+ge/2+h),Ce=ke+B+h,ke+=$,de=Math.max(de,ge)}),me?(a._width=ke+v,a._height=de+m):(a._width=Math.max(I,Ce)+v,a._height+=de+m)}}a._width=Math.ceil(Math.max(a._width+R[0],a._titleWidth+2*(f+Xt.titlePad))),a._height=Math.ceil(Math.max(a._height+R[1],a._titleHeight+2*(f+Xt.itemGap))),a._effHeight=Math.min(a._height,a._maxHeight);var ce=e._context.edits,_e=ce.legendText||ce.legendPosition;t.each(function(se){var ge=Qa.select(this).select("."+i+"toggle"),B=se[0].height,$=se[0].trace.legendgroup,U=W0(se,a,d);s&&$!==""&&(U=T[$]);var ye=_e?d:D||U;!o&&!u&&(ye+=h/2),Bt.setRect(ge,0,-B/2,ye,B)})}function JG(e,r,t,a){var n=e._fullLayout,i=n[r],l=J0(i),o=K0(i),s=i.xref==="paper",u=i.yref==="paper";e._fullLayout._reservedMargin[r]={};var f=i.y<.5?"b":"t",v=i.x<.5?"l":"r",h={r:n.width-t,l:t+i._width,b:n.height-a,t:a+i._effHeight};if(s&&u)return my.autoMargin(e,r,{x:i.x,y:i.y,l:i._width*Gs[l],r:i._width*ww[l],b:i._effHeight*ww[o],t:i._effHeight*Gs[o]});s?e._fullLayout._reservedMargin[r][f]=h[f]:u||i.orientation==="v"?e._fullLayout._reservedMargin[r][v]=h[v]:e._fullLayout._reservedMargin[r][f]=h[f]}function J0(e){return Ot.isRightAnchor(e)?"right":Ot.isCenterAnchor(e)?"center":"left"}function K0(e){return Ot.isBottomAnchor(e)?"bottom":Ot.isMiddleAnchor(e)?"middle":"top"}function Q0(e){return e._id||"legend"}});var wy=Z(_y=>{"use strict";var ko=Ir(),Ui=Hr(),qw=xn(),Mt=Ie(),KG=Mt.pushUnique,by=Mt.strTranslate,QG=Mt.strRotate,$G=nf(),Sn=Ta(),jG=j8(),Mi=at(),ea=Er(),$0=$n(),Ai=dt(),eW=ya().zindexSeparator,Xs=br(),jn=bi(),So=Wu(),rW=ly(),tW=gy(),Iw=So.YANGLE,xy=Math.PI*Iw/180,aW=1/Math.sin(xy),nW=Math.cos(xy),iW=Math.sin(xy),pt=So.HOVERARROWSIZE,Or=So.HOVERTEXTPAD,Dw={box:!0,ohlc:!0,violin:!0,candlestick:!0},lW={scatter:!0,scattergl:!0,splom:!0};function Ew(e,r){return e.distance-r.distance}_y.hover=function(r,t,a,n){r=Mt.getGraphDiv(r);var i=t.target;Mt.throttle(r._fullLayout._uid+So.HOVERID,So.HOVERMINTIME,function(){oW(r,t,a,n,i)})};_y.loneHover=function(r,t){var a=!0;Array.isArray(r)||(a=!1,r=[r]);var n=t.gd,i=Uw(n),l=Vw(n),o=r.map(function(y){var _=y._x0||y.x0||y.x||0,w=y._x1||y.x1||y.x||0,T=y._y0||y.y0||y.y||0,b=y._y1||y.y1||y.y||0,M=y.eventData;if(M){var C=Math.min(_,w),k=Math.max(_,w),q=Math.min(T,b),D=Math.max(T,b),R=y.trace;if(Xs.traceIs(R,"gl3d")){var z=n._fullLayout[R.scene]._scene.container,F=z.offsetLeft,H=z.offsetTop;C+=F,k+=F,q+=H,D+=H}M.bbox={x0:C+l,x1:k+l,y0:q+i,y1:D+i},t.inOut_bbox&&t.inOut_bbox.push(M.bbox)}else M=!1;return{color:y.color||ea.defaultLine,x0:y.x0||y.x||0,x1:y.x1||y.x||0,y0:y.y0||y.y||0,y1:y.y1||y.y||0,xLabel:y.xLabel,yLabel:y.yLabel,zLabel:y.zLabel,text:y.text,name:y.name,idealAlign:y.idealAlign,borderColor:y.borderColor,fontFamily:y.fontFamily,fontSize:y.fontSize,fontColor:y.fontColor,fontWeight:y.fontWeight,fontStyle:y.fontStyle,fontVariant:y.fontVariant,nameLength:y.nameLength,textAlign:y.textAlign,trace:y.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:y.hovertemplate||!1,hovertemplateLabels:y.hovertemplateLabels||!1,eventData:M}}),s=!1,u=Ow(o,{gd:n,hovermode:"closest",rotateLabels:s,bgColor:t.bgColor||ea.background,container:ko.select(t.container),outerContainer:t.outerContainer||t.container}),f=u.hoverLabels,v=5,h=0,d=0;f.sort(function(y,_){return y.y0-_.y0}).each(function(y,_){var w=y.y0-y.by/2;w-vk[0]._length||U<0||U>q[0]._length)return $0.unhoverRaw(e,r)}if(r.pointerX=$+k[0]._offset,r.pointerY=U+q[0]._offset,"xval"in r?X=jn.flat(i,r.xval):X=jn.p2c(k,$),"yval"in r?G=jn.flat(i,r.yval):G=jn.p2c(q,U),!Ui(X[0])||!Ui(G[0]))return Mt.warn("Fx.hover failed",r,e),$0.unhoverRaw(e,r)}var pe=1/0;function Re(vr,lt){for(Y=0;Yce&&(O.splice(0,ce),pe=O[0].distance),v&&H!==0&&O.length===0){Ce.distance=H,Ce.index=!1;var Qr=Q._module.hoverPoints(Ce,ke,re,"closest",{hoverLayer:o._hoverlayer});if(Qr&&(Qr=Qr.filter(function(St){return St.spikeDistance<=H})),Qr&&Qr.length){var fa,pn=Qr.filter(function(St){return St.xa.showspikes&&St.xa.spikesnap!=="hovered data"});if(pn.length){var Qt=pn[0];Ui(Qt.x0)&&Ui(Qt.y0)&&(fa=Ee(Qt),(!_e.vLinePoint||_e.vLinePoint.spikeDistance>fa.spikeDistance)&&(_e.vLinePoint=fa))}var ci=Qr.filter(function(St){return St.ya.showspikes&&St.ya.spikesnap!=="hovered data"});if(ci.length){var mn=ci[0];Ui(mn.x0)&&Ui(mn.y0)&&(fa=Ee(mn),(!_e.hLinePoint||_e.hLinePoint.spikeDistance>fa.spikeDistance)&&(_e.hLinePoint=fa))}}}}}Re();function Fe(vr,lt,Xr){for(var ft=null,kt=1/0,bt,Qr=0;Qrvr.trace.index===Me.trace.index):O=[Me];var Se=O.length,Oe=Fw("x",Me,o),Je=Fw("y",Me,o);Re(Oe,Je);var We=[],Ze={},lr=0,tr=function(vr){var lt=Dw[vr.trace.type]?Hw(vr):vr.trace.index;if(!Ze[lt])lr++,Ze[lt]=lr,We.push(vr);else{var Xr=Ze[lt]-1,ft=We[Xr];Xr>0&&Math.abs(vr.distance)Se-1;Qe--)tr(O[Qe]);O=We,qe()}var ze=e._hoverdata,ae=[],le=Uw(e),Le=Vw(e);for(let vr of O){var De=jn.makeEventData(vr,vr.trace,vr.cd);if(vr.hovertemplate!==!1){var ar=!1;vr.cd[vr.index]&&vr.cd[vr.index].ht&&(ar=vr.cd[vr.index].ht),vr.hovertemplate=ar||vr.trace.hovertemplate||!1}if(vr.xa&&vr.ya){var cr=vr.x0+vr.xa._offset,sr=vr.x1+vr.xa._offset,Mr=vr.y0+vr.ya._offset,Br=vr.y1+vr.ya._offset,$r=Math.min(cr,sr),it=Math.max(cr,sr),_t=Math.min(Mr,Br),yt=Math.max(Mr,Br);De.bbox={x0:$r+Le,x1:it+Le,y0:_t+le,y1:yt+le}}vr.eventData=[De],ae.push(De)}e._hoverdata=ae;var Dt=h==="y"&&(J.length>1||O.length>1)||h==="closest"&&se&&O.length>1,Kt=ea.combine(o.plot_bgcolor||ea.background,o.paper_bgcolor),La=Ow(O,{gd:e,hovermode:h,rotateLabels:Dt,bgColor:Kt,container:o._hoverlayer,outerContainer:o._paper.node(),commonLabelOpts:o.hoverlabel,hoverdistance:o.hoverdistance}),sa=La.hoverLabels;if(jn.isUnifiedHover(h)||(uW(sa,Dt,o,La.commonLabelBoundingBox),Yw(sa,Dt,o._invScaleX,o._invScaleY)),n&&n.tagName){var ua=Xs.getComponentMethod("annotations","hasClickToShow")(e,ae);jG(ko.select(n),ua?"pointer":"")}!n||a||!vW(e,r,ze)||(ze&&e.emit("plotly_unhover",{event:r,points:ze}),e.emit("plotly_hover",{event:r,points:e._hoverdata,xaxes:k,yaxes:q,xvals:X,yvals:G}))}function Hw(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var sW=/([\s\S]*)<\/extra>/;function Ow(e,r){var t=r.gd,a=t._fullLayout,n=r.hovermode,i=r.rotateLabels,l=r.bgColor,o=r.container,s=r.outerContainer,u=r.commonLabelOpts||{};if(e.length===0)return[[]];var f=r.fontFamily||So.HOVERFONT,v=r.fontSize||So.HOVERFONTSIZE,h=r.fontWeight||a.font.weight,d=r.fontStyle||a.font.style,m=r.fontVariant||a.font.variant,g=r.fontTextcase||a.font.textcase,y=r.fontLineposition||a.font.lineposition,_=r.fontShadow||a.font.shadow,w=e[0],T=w.xa,b=w.ya,M=n.charAt(0),C=M+"Label",k=w[C];if(k===void 0&&T.type==="multicategory")for(var q=0;qa.width-le&&(Le=a.width-le),Me.attr("d","M"+(Qe-Le)+",0L"+(Qe-Le+pt)+","+ae+pt+"H"+le+"v"+ae+(Or*2+tr.height)+"H"+-le+"V"+ae+pt+"H"+(Qe-Le-pt)+"Z"),Qe=Le,Y.minX=Qe-le,Y.maxX=Qe+le,T.side==="top"?(Y.minY=ze-(Or*2+tr.height),Y.maxY=ze-Or):(Y.minY=ze+Or,Y.maxY=ze+(Or*2+tr.height))}else{var De,ar,cr;b.side==="right"?(De="start",ar=1,cr="",Qe=T._offset+T._length):(De="end",ar=-1,cr="-",Qe=T._offset),ze=b._offset+(w.y0+w.y1)/2,Se.attr("text-anchor",De),Me.attr("d","M0,0L"+cr+pt+","+pt+"V"+(Or+tr.height/2)+"h"+cr+(Or*2+tr.width)+"V-"+(Or+tr.height/2)+"H"+cr+pt+"V-"+pt+"Z"),Y.minY=ze-(Or+tr.height/2),Y.maxY=ze+(Or+tr.height/2),b.side==="right"?(Y.minX=Qe+pt,Y.maxX=Qe+pt+(Or*2+tr.width)):(Y.minX=Qe-pt-(Or*2+tr.width),Y.maxX=Qe-pt);var sr=tr.height/2,Mr=R-tr.top-sr,Br="clip"+a._uid+"commonlabel"+b._id,$r;if(QeMe.hoverinfo!=="none");if(Pe.length===0)return[];var K=a.hoverlabel,Q=K.font,ne=Pe[0],me=((n==="x unified"?ne.xa:ne.ya).unifiedhovertitle||{}).text,de=me?Mt.hovertemplateString({data:n==="x unified"?[{xa:ne.xa,x:ne.xVal}]:[{ya:ne.ya,y:ne.yVal}],fallback:ne.trace.hovertemplatefallback,locale:a._d3locale,template:me}):k,ke={showlegend:!0,legend:{title:{text:de,font:Q},font:Q,bgcolor:K.bgcolor,bordercolor:K.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:a.legend?a.legend.traceorder:void 0,orientation:"v"}},re={font:Q};rW(ke,re,t._fullData);var Ce=re.legend;Ce.entries=[];for(var ce=0;ce=0?be=qe:He+we=0?be=He:Ye+we=0?Ke=Be:Ge+pe=0?Ke=Ge:ie+pe=0,(Pe.idealAlign==="top"||!yt)&&Dt?(cr-=Mr/2,Pe.anchor="end"):yt?(cr+=Mr/2,Pe.anchor="start"):Pe.anchor="middle",Pe.crossPos=cr;else{if(Pe.pos=cr,yt=ar+sr/2+_t<=z,Dt=ar-sr/2-_t>=0,(Pe.idealAlign==="left"||!yt)&&Dt)ar-=sr/2,Pe.anchor="end";else if(yt)ar+=sr/2,Pe.anchor="start";else{Pe.anchor="middle";var Kt=_t/2,La=ar+Kt-z,sa=ar-Kt;La>0&&(ar-=La),sa<0&&(ar+=-sa)}Pe.crossPos=ar}ze.attr("text-anchor",Pe.anchor),le&&ae.attr("text-anchor",Pe.anchor),Me.attr("transform",by(ar,cr)+(i?QG(Iw):""))}),{hoverLabels:hr,commonLabelBoundingBox:Y}}function Pw(e,r,t,a,n,i){var v,h;var l="",o="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=Mt.templateString(e.name,e.trace._meta)),l=Nw(e.name,e.nameLength));var s=t.charAt(0),u=s==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(o+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(o+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(o+=(o?"z: ":"")+e.zLabel)):r&&e[s+"Label"]===n?o=e[u+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(o=e.yLabel):e.yLabel===void 0?o=e.xLabel:o="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(o+=(o?"
":"")+e.text),e.extraText!==void 0&&(o+=(o?"
":"")+e.extraText),i&&o===""&&!e.hovertemplate&&(l===""&&i.remove(),o=l),(h=(v=e.trace)==null?void 0:v.hoverlabel)!=null&&h.split&&(e.hovertemplate="");let{hovertemplate:f=!1}=e;if(f){let d=e.hovertemplateLabels||e;e[s+"Label"]!==n&&(d[s+"other"]=d[s+"Val"],d[s+"otherLabel"]=d[s+"Label"]),o=Mt.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:a._d3locale,template:f}),o=o.replace(sW,(m,g)=>(l=Nw(g,e.nameLength),""))}return[o,l]}function uW(e,r,t,a){var n=r?"xa":"ya",i=r?"ya":"xa",l=0,o=1,s=e.size(),u=new Array(s),f=0,v=a.minX,h=a.maxX,d=a.minY,m=a.maxY,g=function(X){return X*t._invScaleX},y=function(X){return X*t._invScaleY};e.each(function(X){var G=X[n],I=X[i],Y=G._id.charAt(0)==="x",K=G.range;f===0&&K&&K[0]>K[1]!==Y&&(o=-1);var Q=0,ne=Y?t.width:t.height;if(t.hovermode==="x"||t.hovermode==="y"){var me=Bw(X,r),de=X.anchor,ke=de==="end"?-1:1,re,Ce;if(de==="middle")re=X.crossPos+(Y?y(me.y-X.by/2):g(X.bx/2+X.tx2width/2)),Ce=re+(Y?y(X.by):g(X.bx));else if(Y)re=X.crossPos+y(pt+me.y)-y(X.by/2-pt),Ce=re+y(X.by);else{var ce=g(ke*pt+me.x),_e=ce+g(ke*X.bx);re=X.crossPos+Math.min(ce,_e),Ce=X.crossPos+Math.max(ce,_e)}Y?d!==void 0&&m!==void 0&&Math.min(Ce,m)-Math.max(re,d)>1&&(I.side==="left"?(Q=I._mainLinePosition,ne=t.width):ne=I._mainLinePosition):v!==void 0&&h!==void 0&&Math.min(Ce,h)-Math.max(re,v)>1&&(I.side==="top"?(Q=I._mainLinePosition,ne=t.height):ne=I._mainLinePosition)}u[f++]=[{datum:X,traceIndex:X.trace.index,dp:0,pos:X.pos,posref:X.posref,size:X.by*(Y?aW:1)/2,pmin:Q,pmax:ne}]}),u.sort(function(X,G){return X[0].posref-G[0].posref||o*(G[0].traceIndex-X[0].traceIndex)});var _,w,T,b,M,C,k;function q(X){var G=X[0],I=X[X.length-1];if(w=G.pmin-G.pos-G.dp+G.size,T=I.pos+I.dp+I.size-G.pmax,w>.01){for(M=X.length-1;M>=0;M--)X[M].dp+=w;_=!1}if(!(T<.01)){if(w<-.01){for(M=X.length-1;M>=0;M--)X[M].dp-=T;_=!1}if(_){var Y=0;for(b=0;bG.pmax&&Y++;for(b=X.length-1;b>=0&&!(Y<=0);b--)C=X[b],C.pos>G.pmax-1&&(C.del=!0,Y--);for(b=0;b=0;M--)X[M].dp-=T;for(b=X.length-1;b>=0&&!(Y<=0);b--)C=X[b],C.pos+C.dp+C.size>G.pmax&&(C.del=!0,Y--)}}}for(;!_&&l<=s;){for(l++,_=!0,b=0;b.01){for(M=R.length-1;M>=0;M--)R[M].dp+=w;for(D.push.apply(D,R),u.splice(b+1,1),k=0,M=D.length-1;M>=0;M--)k+=D[M].dp;for(T=k/D.length,M=D.length-1;M>=0;M--)D[M].dp-=T;_=!1}else b++}u.forEach(q)}for(b=u.length-1;b>=0;b--){var H=u[b];for(M=H.length-1;M>=0;M--){var O=H[M],J=O.datum;J.offset=O.dp,J.del=O.del}}}function Bw(e,r){var t=0,a=e.offset;return r&&(a*=-iW,t=e.offset*nW),{x:t,y:a}}function fW(e){var r={start:1,end:-1,middle:0}[e.anchor],t=r*(pt+Or),a=t+r*(e.txwidth+Or),n=e.anchor==="middle";return n&&(t-=e.tx2width/2,a+=e.txwidth/2+Or),{alignShift:r,textShiftX:t,text2ShiftX:a}}function Yw(e,r,t,a){var n=function(l){return l*t},i=function(l){return l*a};e.each(function(l){var o=ko.select(this);if(l.del)return o.remove();var s=o.select("text.nums"),u=l.anchor,f=u==="end"?-1:1,v=fW(l),h=Bw(l,r),d=h.x,m=h.y,g=u==="middle",y="hoverlabel"in l.trace?l.trace.hoverlabel.showarrow:!0,_;g?_="M-"+n(l.bx/2+l.tx2width/2)+","+i(m-l.by/2)+"h"+n(l.bx)+"v"+i(l.by)+"h-"+n(l.bx)+"Z":y?_="M0,0L"+n(f*pt+d)+","+i(pt+m)+"v"+i(l.by/2-pt)+"h"+n(f*l.bx)+"v-"+i(l.by)+"H"+n(f*pt+d)+"V"+i(m-pt)+"Z":_="M"+n(f*pt+d)+","+i(m-l.by/2)+"h"+n(f*l.bx)+"v"+i(l.by)+"h"+n(-f*l.bx)+"Z",o.select("path").attr("d",_);var w=d+v.textShiftX,T=m+l.ty0-l.by/2+Or,b=l.textAlign||"auto";b!=="auto"&&(b==="left"&&u!=="start"?(s.attr("text-anchor","start"),w=g?-l.bx/2-l.tx2width/2+Or:-l.bx-Or):b==="right"&&u!=="end"&&(s.attr("text-anchor","end"),w=g?l.bx/2-l.tx2width/2-Or:l.bx+Or)),s.call(Sn.positionText,n(w),i(T)),l.tx2width&&(o.select("text.name").call(Sn.positionText,n(v.text2ShiftX+v.alignShift*Or+d),i(m+l.ty0-l.by/2+Or)),o.select("rect").call(Mi.setRect,n(v.text2ShiftX+(v.alignShift-1)*l.tx2width/2+d),i(m-l.by/2-1),n(l.tx2width),i(l.by+2)))})}function cW(e,r){var t=e.index,a=e.trace||{},n=e.cd[0],i=e.cd[t]||{};function l(h){return h||Ui(h)&&h===0}var o=Array.isArray(t)?function(h,d){var m=Mt.castOption(n,t,h);return l(m)?m:Mt.extractOption({},a,"",d)}:function(h,d){return Mt.extractOption(i,a,h,d)};function s(h,d,m){var g=o(d,m);l(g)&&(e[h]=g)}if(s("hoverinfo","hi","hoverinfo"),s("bgcolor","hbg","hoverlabel.bgcolor"),s("borderColor","hbc","hoverlabel.bordercolor"),s("fontFamily","htf","hoverlabel.font.family"),s("fontSize","hts","hoverlabel.font.size"),s("fontColor","htc","hoverlabel.font.color"),s("fontWeight","htw","hoverlabel.font.weight"),s("fontStyle","hty","hoverlabel.font.style"),s("fontVariant","htv","hoverlabel.font.variant"),s("nameLength","hnl","hoverlabel.namelength"),s("textAlign","hta","hoverlabel.align"),e.posref=r==="y"||r==="closest"&&a.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=Mt.constrain(e.x0,0,e.xa._length),e.x1=Mt.constrain(e.x1,0,e.xa._length),e.y0=Mt.constrain(e.y0,0,e.ya._length),e.y1=Mt.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:Ai.hoverLabelText(e.xa,e.xLabelVal,a.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:Ai.hoverLabelText(e.ya,e.yLabelVal,a.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var u=Ai.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+u+" / -"+Ai.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+u,r==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var f=Ai.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+f+" / -"+Ai.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+f,r==="y"&&(e.distance+=1)}var v=e.hoverinfo||e.trace.hoverinfo;return v&&v!=="all"&&(v=Array.isArray(v)?v:v.split("+"),v.indexOf("x")===-1&&(e.xLabel=void 0),v.indexOf("y")===-1&&(e.yLabel=void 0),v.indexOf("z")===-1&&(e.zLabel=void 0),v.indexOf("text")===-1&&(e.text=void 0),v.indexOf("name")===-1&&(e.name=void 0)),e}function Rw(e,r,t){var a=t.container,n=t.fullLayout,i=n._size,l=t.event,o=!!r.hLinePoint,s=!!r.vLinePoint,u,f;if(a.selectAll(".spikeline").remove(),!!(s||o)){var v=ea.combine(n.plot_bgcolor,n.paper_bgcolor);if(o){var h=r.hLinePoint,d,m;u=h&&h.xa,f=h&&h.ya;var g=f.spikesnap;g==="cursor"?(d=l.pointerX,m=l.pointerY):(d=u._offset+h.x,m=f._offset+h.y);var y=qw.readability(h.color,v)<1.5?ea.contrast(v):h.color,_=f.spikemode,w=f.spikethickness,T=f.spikecolor||y,b=Ai.getPxPosition(e,f),M,C;if(_.indexOf("toaxis")!==-1||_.indexOf("across")!==-1){if(_.indexOf("toaxis")!==-1&&(M=b,C=d),_.indexOf("across")!==-1){var k=f._counterDomainMin,q=f._counterDomainMax;f.anchor==="free"&&(k=Math.min(k,f.position),q=Math.max(q,f.position)),M=i.l+k*i.w,C=i.l+q*i.w}a.insert("line",":first-child").attr({x1:M,x2:C,y1:m,y2:m,"stroke-width":w,stroke:T,"stroke-dasharray":Mi.dashStyle(f.spikedash,w)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:M,x2:C,y1:m,y2:m,"stroke-width":w+2,stroke:v}).classed("spikeline",!0).classed("crisp",!0)}_.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:b+(f.side!=="right"?w:-w),cy:m,r:w,fill:T}).classed("spikeline",!0)}if(s){var D=r.vLinePoint,R,z;u=D&&D.xa,f=D&&D.ya;var F=u.spikesnap;F==="cursor"?(R=l.pointerX,z=l.pointerY):(R=u._offset+D.x,z=f._offset+D.y);var H=qw.readability(D.color,v)<1.5?ea.contrast(v):D.color,O=u.spikemode,J=u.spikethickness,X=u.spikecolor||H,G=Ai.getPxPosition(e,u),I,Y;if(O.indexOf("toaxis")!==-1||O.indexOf("across")!==-1){if(O.indexOf("toaxis")!==-1&&(I=G,Y=z),O.indexOf("across")!==-1){var K=u._counterDomainMin,Q=u._counterDomainMax;u.anchor==="free"&&(K=Math.min(K,u.position),Q=Math.max(Q,u.position)),I=i.t+(1-Q)*i.h,Y=i.t+(1-K)*i.h}a.insert("line",":first-child").attr({x1:R,x2:R,y1:I,y2:Y,"stroke-width":J,stroke:X,"stroke-dasharray":Mi.dashStyle(u.spikedash,J)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:R,x2:R,y1:I,y2:Y,"stroke-width":J+2,stroke:v}).classed("spikeline",!0).classed("crisp",!0)}O.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:R,cy:G-(u.side!=="top"?J:-J),r:J,fill:X}).classed("spikeline",!0)}}}function vW(e,r,t){if(!t||t.length!==e._hoverdata.length)return!0;for(var a=t.length-1;a>=0;a--){var n=t[a],i=e._hoverdata[a];if(n.curveNumber!==i.curveNumber||String(n.pointNumber)!==String(i.pointNumber)||String(n.pointNumbers)!==String(i.pointNumbers)||n.binNumber!==i.binNumber)return!0}return!1}function zw(e,r){return!r||r.vLinePoint!==e._spikepoints.vLinePoint||r.hLinePoint!==e._spikepoints.hLinePoint}function Nw(e,r){return Sn.plainText(e||"",{len:r,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function hW(e,r){for(var t=r.charAt(0),a=[],n=[],i=[],l=0;le.offsetTop+e.clientTop,Vw=e=>e.offsetLeft+e.clientLeft;function Zs(e,r){var t=e._fullLayout,a=r.getBoundingClientRect(),n=a.left,i=a.top,l=n+a.width,o=i+a.height,s=Mt.apply3DTransform(t._invTransform)(n,i),u=Mt.apply3DTransform(t._invTransform)(l,o),f=s[0],v=s[1],h=u[0],d=u[1];return{x:f,y:v,width:h-f,height:d-v,top:Math.min(v,d),left:Math.min(f,h),right:Math.max(f,h),bottom:Math.max(v,d)}}});var j0=Z((Lse,Gw)=>{"use strict";var dW=Ie(),pW=Er(),mW=bi().isUnifiedHover;Gw.exports=function(r,t,a,n){n=n||{};var i=t.legend;function l(o){n.font[o]||(n.font[o]=i?t.legend.font[o]:t.font[o])}t&&mW(t.hovermode)&&(n.font||(n.font={}),l("size"),l("family"),l("color"),l("weight"),l("style"),l("variant"),i?(n.bgcolor||(n.bgcolor=pW.combine(t.legend.bgcolor,t.paper_bgcolor)),n.bordercolor||(n.bordercolor=t.legend.bordercolor)):n.bgcolor||(n.bgcolor=t.paper_bgcolor)),a("hoverlabel.bgcolor",n.bgcolor),a("hoverlabel.bordercolor",n.bordercolor),a("hoverlabel.namelength",n.namelength),a("hoverlabel.showarrow",n.showarrow),dW.coerceFont(a,"hoverlabel.font",n.font),a("hoverlabel.align",n.align)}});var Zw=Z((qse,Ww)=>{"use strict";var yW=Ie(),gW=j0(),bW=vs();Ww.exports=function(r,t){function a(n,i){return yW.coerce(r,t,bW,n,i)}gW(r,t,a)}});var Kw=Z((Dse,Jw)=>{"use strict";var Xw=Ie(),xW=xv(),_W=j0();Jw.exports=function(r,t,a,n){function i(o,s){return Xw.coerce(r,t,xW,o,s)}var l=Xw.extendFlat({},n.hoverlabel);t.hovertemplate&&(l.namelength=-1),_W(r,t,i,l)}});var Ty=Z((Ese,Qw)=>{"use strict";var wW=Ie(),TW=vs();Qw.exports=function(r,t){function a(n,i){return t[n]!==void 0?t[n]:wW.coerce(r,t,TW,n,i)}return a("clickmode"),a("hoversubplots"),a("hovermode")}});var eT=Z((Pse,jw)=>{"use strict";var $w=Ie(),MW=vs(),AW=Ty(),kW=j0();jw.exports=function(r,t){function a(f,v){return $w.coerce(r,t,MW,f,v)}var n=AW(r,t);n&&(a("hoverdistance"),a("spikedistance"));var i=a("dragmode");i==="select"&&a("selectdirection");var l=t._has("mapbox"),o=t._has("map"),s=t._has("geo"),u=t._basePlotModules.length;t.dragmode==="zoom"&&((l||o||s)&&u===1||(l||o)&&s&&u===2)&&(t.dragmode="pan"),kW(r,t,a),$w.coerceFont(a,"hoverlabel.grouptitlefont",t.hoverlabel.font)}});var aT=Z((Rse,tT)=>{"use strict";var My=Ie(),rT=br();tT.exports=function(r){var t=r.calcdata,a=r._fullLayout;function n(u){return function(f){return My.coerceHoverinfo({hoverinfo:f},{_module:u._module},a)}}for(var i=0;i{"use strict";var CW=br(),LW=wy().hover;nT.exports=function(r,t,a){var n=CW.getComponentMethod("annotations","onClick")(r,r._hoverdata);a!==void 0&&LW(r,t,a,!0);function i(){r.emit("plotly_click",{points:r._hoverdata,event:t})}r._hoverdata&&t&&t.target&&(n&&n.then?n.then(i):i(),t.stopImmediatePropagation&&t.stopImmediatePropagation())}});var ki=Z((Nse,sT)=>{"use strict";var qW=Ir(),eh=Ie(),DW=$n(),Af=bi(),lT=vs(),oT=wy();sT.exports={moduleType:"component",name:"fx",constants:Wu(),schema:{layout:lT},attributes:xv(),layoutAttributes:lT,supplyLayoutGlobalDefaults:Zw(),supplyDefaults:Kw(),supplyLayoutDefaults:eT(),calc:aT(),getDistanceFunction:Af.getDistanceFunction,getClosest:Af.getClosest,inbox:Af.inbox,quadrature:Af.quadrature,appendArrayPointValue:Af.appendArrayPointValue,castHoverOption:PW,castHoverinfo:RW,hover:oT.hover,unhover:DW.unhover,loneHover:oT.loneHover,loneUnhover:EW,click:iT()};function EW(e){var r=eh.isD3Selection(e)?e:qW.select(e);r.selectAll("g.hovertext").remove(),r.selectAll(".spikeline").remove()}function PW(e,r,t){return eh.castOption(e,r,"hoverlabel."+t)}function RW(e,r,t){function a(n){return eh.coerceHoverinfo({hoverinfo:n},{_module:e._module},r)}return eh.castOption(e,t,"hoverinfo",a)}});var Js=Z(Vi=>{"use strict";Vi.selectMode=function(e){return e==="lasso"||e==="select"};Vi.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Vi.openMode=function(e){return e==="drawline"||e==="drawopenpath"};Vi.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Vi.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};Vi.selectingOrDrawing=function(e){return Vi.freeMode(e)||Vi.rectMode(e)}});var rh=Z((Ise,uT)=>{"use strict";uT.exports=function(r){var t=r._fullLayout;t._glcanvas&&t._glcanvas.size()&&t._glcanvas.each(function(a){a.regl&&a.regl.clear({color:!0,depth:!0})})}});var th=Z((Hse,fT)=>{"use strict";fT.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var nh=Z((Ose,cT)=>{"use strict";var ah=32;cT.exports={CIRCLE_SIDES:ah,i000:0,i090:ah/4,i180:ah/2,i270:ah/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var ih=Z((Bse,hT)=>{"use strict";var zW=Ie().strTranslate;function vT(e,r){switch(e.type){case"log":return e.p2d(r);case"date":return e.p2r(r,0,e.calendar);default:return e.p2r(r)}}function NW(e,r){switch(e.type){case"log":return e.d2p(r);case"date":return e.r2p(r,0,e.calendar);default:return e.r2p(r)}}function FW(e){var r=e._id.charAt(0)==="y"?1:0;return function(t){return vT(e,t[r])}}function IW(e){return zW(e.xaxis._offset,e.yaxis._offset)}hT.exports={p2r:vT,r2p:NW,axValue:FW,getTransform:IW}});var wl=Z(Gi=>{"use strict";var HW=hm(),mT=nh(),Ks=mT.CIRCLE_SIDES,Ay=mT.SQRT2,yT=ih(),dT=yT.p2r,pT=yT.r2p,OW=[0,3,4,5,6,1,2],BW=[0,3,4,1,2];Gi.writePaths=function(e){var r=e.length;if(!r)return"M0,0Z";for(var t="",a=0;a0&&s{"use strict";var gT=Zt(),TT=Js(),YW=TT.drawMode,UW=TT.openMode,Qs=nh(),bT=Qs.i000,xT=Qs.i090,_T=Qs.i180,wT=Qs.i270,VW=Qs.cos45,GW=Qs.sin45,MT=ih(),oh=MT.p2r,Tl=MT.r2p,WW=dl(),ZW=WW.clearOutline,sh=wl(),XW=sh.readPaths,JW=sh.writePaths,KW=sh.ellipseOver,QW=sh.fixDatesForPaths;function $W(e,r){if(e.length){var t=e[0][0];if(t){var a=r.gd,n=r.isActiveShape,i=r.dragmode,l=(a.layout||{}).shapes||[];if(!YW(i)&&n!==void 0){var o=a._fullLayout._activeShapeIndex;if(o{"use strict";var jW=Js(),eZ=jW.selectMode,rZ=dl(),tZ=rZ.clearOutline,ky=wl(),aZ=ky.readPaths,nZ=ky.writePaths,iZ=ky.fixDatesForPaths;ST.exports=function(r,t){if(r.length){var a=r[0][0];if(a){var n=a.getAttribute("d"),i=t.gd,l=i._fullLayout.newselection,o=t.plotinfo,s=o.xaxis,u=o.yaxis,f=t.isActiveSelection,v=t.dragmode,h=(i.layout||{}).selections||[];if(!eZ(v)&&f!==void 0){var d=i._fullLayout._activeSelectionIndex;if(d{"use strict";CT.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var Ml=Z(ia=>{"use strict";var Co=Sf(),LT=Ie(),fh=dt();ia.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(r){return r}};ia.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(r){return r}};ia.decodeDate=function(e){return function(r){return r.replace&&(r=r.replace("_"," ")),e(r)}};ia.encodeDate=function(e){return function(r){return e(r).replace(" ","_")}};ia.extractPathCoords=function(e,r,t){var a=[],n=e.match(Co.segmentRE);return n.forEach(function(i){var l=r[i.charAt(0)].drawn;if(l!==void 0){var o=i.slice(1).match(Co.paramRE);if(!(!o||o.lengthd&&(g="X"),g});return u>d&&(m=m.replace(/[\s,]*X.*/,""),LT.log("Ignoring extra params in segment "+s)),f+m})}function Cf(e,r){r=r||0;var t=0;return r&&e&&(e.type==="category"||e.type==="multicategory")&&(t=(e.r2p(1)-e.r2p(0))*r),t}});var Ly=Z((Zse,PT)=>{"use strict";var oZ=Ie(),$s=dt(),qT=Ta(),DT=at(),sZ=wl().readPaths,Cy=Ml(),uZ=Cy.getPathString,ET=Lv(),fZ=Pa().FROM_TL;PT.exports=function(r,t,a,n){if(n.selectAll(".shape-label").remove(),!!(a.label.text||a.label.texttemplate)){var i;if(a.label.texttemplate){var l={};if(a.type!=="path"){var o=$s.getFromId(r,a.xref),s=$s.getFromId(r,a.yref);for(var u in ET){var f=ET[u](a,o,s);f!==void 0&&(l[u]=f)}}i=oZ.texttemplateStringForShapes({data:[l],fallback:a.label.texttemplatefallback,locale:r._fullLayout._d3locale,template:a.label.texttemplate})}else i=a.label.text;var v={"data-index":t},h=a.label.font,d={"data-notex":1},m=n.append("g").attr(v).classed("shape-label",!0),g=m.append("text").attr(d).classed("shape-label-text",!0).text(i),y,_,w,T;if(a.path){var b=uZ(r,a),M=sZ(b,r);y=1/0,w=1/0,_=-1/0,T=-1/0;for(var C=0;C=e?n=r-a:n=a-r,-180/Math.PI*Math.atan2(n,i)}function vZ(e,r,t,a,n,i,l){var o=n.label.textposition,s=n.label.textangle,u=n.label.padding,f=n.type,v=Math.PI/180*i,h=Math.sin(v),d=Math.cos(v),m=n.label.xanchor,g=n.label.yanchor,y,_,w,T;if(f==="line"){o==="start"?(y=e,_=r):o==="end"?(y=t,_=a):(y=(e+t)/2,_=(r+a)/2),m==="auto"&&(o==="start"?s==="auto"?t>e?m="left":te?m="right":te?m="right":te?m="left":t{"use strict";var hZ=Ie(),dZ=hZ.strTranslate,RT=$n(),FT=Js(),pZ=FT.drawMode,IT=FT.selectMode,HT=br(),zT=Er(),vh=nh(),mZ=vh.i000,yZ=vh.i090,gZ=vh.i180,bZ=vh.i270,xZ=dl(),OT=xZ.clearOutlineControllers,Dy=wl(),ch=Dy.pointsOnRectangle,qy=Dy.pointsOnEllipse,_Z=Dy.writePaths,wZ=uh().newShapes,TZ=uh().createShapeObj,MZ=Sy(),AZ=Ly();BT.exports=function e(r,t,a,n){n||(n=0);var i=a.gd;function l(){e(r,t,a,n++),(qy(r[0])||a.hasText)&&o({redrawing:!0})}function o(G){var I={};a.isActiveShape!==void 0&&(a.isActiveShape=!1,I=wZ(t,a)),a.isActiveSelection!==void 0&&(a.isActiveSelection=!1,I=MZ(t,a),i._fullLayout._reselect=!0),Object.keys(I).length&&HT.call((G||{}).redrawing?"relayout":"_guiRelayout",i,I)}var s=i._fullLayout,u=s._zoomlayer,f=a.dragmode,v=pZ(f),h=IT(f);(v||h)&&(i._fullLayout._outlining=!0),OT(i),t.attr("d",_Z(r));var d,m,g,y,_;if(!n&&(a.isActiveShape||a.isActiveSelection)){_=kZ([],r);var w=u.append("g").attr("class","outline-controllers");R(w),X()}if(v&&a.hasText){var T=u.select(".label-temp"),b=TZ(t,a,a.dragmode);AZ(i,"label-temp",b,T)}function M(G){g=+G.srcElement.getAttribute("data-i"),y=+G.srcElement.getAttribute("data-j"),d[g][y].moveFn=C}function C(G,I){if(r.length){var Y=_[g][y][1],K=_[g][y][2],Q=r[g],ne=Q.length;if(ch(Q)){var me=G,de=I;if(a.isActiveSelection){var ke=NT(Q,y);ke[1]===Q[y][1]?de=0:me=0}for(var re=0;re1&&!(G.length===2&&G[1][0]==="Z")&&(y===0&&(G[0][0]="M"),r[g]=G,l(),o())}}function D(G,I){if(G===2){g=+I.srcElement.getAttribute("data-i"),y=+I.srcElement.getAttribute("data-j");var Y=r[g];!ch(Y)&&!qy(Y)&&q()}}function R(G){d=[];for(var I=0;I{"use strict";var CZ=Ir(),ZT=br(),YT=Ie(),js=dt(),LZ=wl().readPaths,qZ=hh(),ph=Ly(),XT=dl().clearOutlineControllers,Ey=Er(),Ry=at(),DZ=ct().arrayEditor,UT=$n(),VT=_l(),Lo=Sf(),$a=Ml(),Py=$a.getPathString;QT.exports={draw:zy,drawOne:JT,eraseActiveShape:RZ,drawLabel:ph};function zy(e){var r=e._fullLayout;r._shapeUpperLayer.selectAll("path").remove(),r._shapeLowerLayer.selectAll("path").remove(),r._shapeUpperLayer.selectAll("text").remove(),r._shapeLowerLayer.selectAll("text").remove();for(var t in r._plots){var a=r._plots[t].shapelayer;a&&(a.selectAll("path").remove(),a.selectAll("text").remove())}for(var n=0;nl&&Be>o&&!Fe.shiftKey?UT.getCursor(Ge/Ne,1-qe/Be):"move";VT(r,He),Ce=He.split("-")[0]}}function ge(Fe){dh(e)||(s&&(_=Q(t.xanchor)),u&&(w=ne(t.yanchor)),t.type==="path"?z=t.path:(d=s?t.x0:Q(t.x0),m=u?t.y0:ne(t.y0),g=s?t.x1:Q(t.x1),y=u?t.y1:ne(t.y1)),dy?(T=m,k="y0",b=y,q="y1"):(T=y,k="y1",b=m,q="y0"),se(Fe),we(n,t),Re(r,t,e),re.moveFn=Ce==="move"?U:ye,re.altKey=Fe.altKey)}function B(){dh(e)||(VT(r),pe(n),KT(r,e,t),ZT.call("_guiRelayout",e,i.getUpdateObj()))}function $(){dh(e)||pe(n)}function U(Fe,Ee){if(t.type==="path"){var Ne=function(qe){return qe},Be=Ne,Ge=Ne;s?h("xanchor",t.xanchor=me(_+Fe)):(Be=function(He){return me(Q(He)+Fe)},H&&H.type==="date"&&(Be=$a.encodeDate(Be))),u?h("yanchor",t.yanchor=de(w+Ee)):(Ge=function(He){return de(ne(He)+Ee)},J&&J.type==="date"&&(Ge=$a.encodeDate(Ge))),h("path",t.path=GT(z,Be,Ge))}else s?h("xanchor",t.xanchor=me(_+Fe)):(h("x0",t.x0=me(d+Fe)),h("x1",t.x1=me(g+Fe))),u?h("yanchor",t.yanchor=de(w+Ee)):(h("y0",t.y0=de(m+Ee)),h("y1",t.y1=de(y+Ee)));r.attr("d",Py(e,t)),we(n,t),ph(e,a,t,F)}function ye(Fe,Ee){if(v){var Ne=function(Ze){return Ze},Be=Ne,Ge=Ne;s?h("xanchor",t.xanchor=me(_+Fe)):(Be=function(lr){return me(Q(lr)+Fe)},H&&H.type==="date"&&(Be=$a.encodeDate(Be))),u?h("yanchor",t.yanchor=de(w+Ee)):(Ge=function(lr){return de(ne(lr)+Ee)},J&&J.type==="date"&&(Ge=$a.encodeDate(Ge))),h("path",t.path=GT(z,Be,Ge))}else if(f){if(Ce==="resize-over-start-point"){var qe=d+Fe,He=u?m-Ee:m+Ee;h("x0",t.x0=s?qe:me(qe)),h("y0",t.y0=u?He:de(He))}else if(Ce==="resize-over-end-point"){var Ye=g+Fe,ie=u?y-Ee:y+Ee;h("x1",t.x1=s?Ye:me(Ye)),h("y1",t.y1=u?ie:de(ie))}}else{var be=function(Ze){return Ce.indexOf(Ze)!==-1},Ke=be("n"),hr=be("s"),Pe=be("w"),Me=be("e"),Se=Ke?T+Ee:T,Oe=hr?b+Ee:b,Je=Pe?M+Fe:M,We=Me?C+Fe:C;u&&(Ke&&(Se=T-Ee),hr&&(Oe=b-Ee)),(!u&&Oe-Se>o||u&&Se-Oe>o)&&(h(k,t[k]=u?Se:de(Se)),h(q,t[q]=u?Oe:de(Oe))),We-Je>l&&(h(D,t[D]=s?Je:me(Je)),h(R,t[R]=s?We:me(We)))}r.attr("d",Py(e,t)),we(n,t),ph(e,a,t,F)}function we(Fe,Ee){(s||u)&&Ne();function Ne(){var Be=Ee.type!=="path",Ge=Fe.selectAll(".visual-cue").data([0]),qe=1;Ge.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":qe}).classed("visual-cue",!0);var He=Q(s?Ee.xanchor:YT.midRange(Be?[Ee.x0,Ee.x1]:$a.extractPathCoords(Ee.path,Lo.paramIsX))),Ye=ne(u?Ee.yanchor:YT.midRange(Be?[Ee.y0,Ee.y1]:$a.extractPathCoords(Ee.path,Lo.paramIsY)));if(He=$a.roundPositionForSharpStrokeRendering(He,qe),Ye=$a.roundPositionForSharpStrokeRendering(Ye,qe),s&&u){var ie="M"+(He-1-qe)+","+(Ye-1-qe)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Ge.attr("d",ie)}else if(s){var be="M"+(He-1-qe)+","+(Ye-9-qe)+"v18 h2 v-18 Z";Ge.attr("d",be)}else{var Ke="M"+(He-9-qe)+","+(Ye-1-qe)+"h18 v2 h-18 Z";Ge.attr("d",Ke)}}}function pe(Fe){Fe.selectAll(".visual-cue").remove()}function Re(Fe,Ee,Ne){var Be=Ee.xref,Ge=Ee.yref,qe=js.getFromId(Ne,Be),He=js.getFromId(Ne,Ge),Ye="";Be!=="paper"&&!qe.autorange&&(Ye+=Be),Ge!=="paper"&&!He.autorange&&(Ye+=Ge),Ry.setClipUrl(Fe,Ye?"clip"+Ne._fullLayout._uid+Ye:null,Ne)}}function GT(e,r,t){return e.replace(Lo.segmentRE,function(a){var n=0,i=a.charAt(0),l=Lo.paramIsX[i],o=Lo.paramIsY[i],s=Lo.numParams[i],u=a.slice(1).replace(Lo.paramRE,function(f){return n>=s||(l[n]?f=r(f):o[n]&&(f=t(f)),n++),f});return i+u})}function PZ(e,r){if(mh(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeShapeIndex){WT(e);return}e._fullLayout._activeShapeIndex=a,e._fullLayout._deactivateShape=WT,zy(e)}}}function WT(e){if(mh(e)){var r=e._fullLayout._activeShapeIndex;r>=0&&(XT(e),delete e._fullLayout._activeShapeIndex,zy(e))}}function RZ(e){if(mh(e)){XT(e);var r=e._fullLayout._activeShapeIndex,t=(e.layout||{}).shapes||[];if(r{"use strict";var Cn=br(),$T=Ft(),jT=Zt(),Ur=th(),zZ=yh().eraseActiveShape,gh=Ie(),Nr=gh._,Vr=lM.exports={};Vr.toImage={name:"toImage",title:function(e){var r=e._context.toImageButtonOptions||{},t=r.format||"png";return t==="png"?Nr(e,"Download plot as a PNG"):Nr(e,"Download plot")},icon:Ur.camera,click:function(e){var r=e._context.toImageButtonOptions,t={format:r.format||"png"};gh.notifier(Nr(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(a){a in r&&(t[a]=r[a])}),Cn.call("downloadImage",e,t).then(function(a){gh.notifier(Nr(e,"Snapshot succeeded")+" - "+a,"long")}).catch(function(){gh.notifier(Nr(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Vr.sendDataToCloud={name:"sendDataToCloud",title:function(e){return Nr(e,"Edit in Chart Studio")},icon:Ur.disk,click:function(e){$T.sendDataToCloud(e)}};Vr.editInChartStudio={name:"editInChartStudio",title:function(e){return Nr(e,"Edit in Chart Studio")},icon:Ur.pencil,click:function(e){$T.sendDataToCloud(e)}};Vr.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return Nr(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Ur.zoombox,click:Na};Vr.pan2d={name:"pan2d",_cat:"pan",title:function(e){return Nr(e,"Pan")},attr:"dragmode",val:"pan",icon:Ur.pan,click:Na};Vr.select2d={name:"select2d",_cat:"select",title:function(e){return Nr(e,"Box Select")},attr:"dragmode",val:"select",icon:Ur.selectbox,click:Na};Vr.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return Nr(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Ur.lasso,click:Na};Vr.drawclosedpath={name:"drawclosedpath",title:function(e){return Nr(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Ur.drawclosedpath,click:Na};Vr.drawopenpath={name:"drawopenpath",title:function(e){return Nr(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Ur.drawopenpath,click:Na};Vr.drawline={name:"drawline",title:function(e){return Nr(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Ur.drawline,click:Na};Vr.drawrect={name:"drawrect",title:function(e){return Nr(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Ur.drawrect,click:Na};Vr.drawcircle={name:"drawcircle",title:function(e){return Nr(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Ur.drawcircle,click:Na};Vr.eraseshape={name:"eraseshape",title:function(e){return Nr(e,"Erase active shape")},icon:Ur.eraseshape,click:zZ};Vr.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return Nr(e,"Zoom in")},attr:"zoom",val:"in",icon:Ur.zoom_plus,click:Na};Vr.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return Nr(e,"Zoom out")},attr:"zoom",val:"out",icon:Ur.zoom_minus,click:Na};Vr.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return Nr(e,"Autoscale")},attr:"zoom",val:"auto",icon:Ur.autoscale,click:Na};Vr.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return Nr(e,"Reset axes")},attr:"zoom",val:"reset",icon:Ur.home,click:Na};Vr.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return Nr(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Ur.tooltip_basic,gravity:"ne",click:Na};Vr.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return Nr(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Ur.tooltip_compare,gravity:"ne",click:Na};function Na(e,r){var t=r.currentTarget,a=t.getAttribute("data-attr"),n=t.getAttribute("data-val")||!0,i=e._fullLayout,l={},o=jT.list(e,null,!0),s=i._cartesianSpikesEnabled,u,f;if(a==="zoom"){var v=n==="in"?.5:2,h=(1+v)/2,d=(1-v)/2,m,g;for(f=0;f{"use strict";var oM=Iy(),IZ=Object.keys(oM),sM=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],uM=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(sM),ru=[],HZ=function(e){if(uM.indexOf(e._cat||e.name)===-1){var r=e.name,t=(e._cat||e.name).toLowerCase();ru.indexOf(r)===-1&&ru.push(r),ru.indexOf(t)===-1&&ru.push(t)}};IZ.forEach(function(e){HZ(oM[e])});ru.sort();fM.exports={DRAW_MODES:sM,backButtons:uM,foreButtons:ru}});var Oy=Z((jse,cM)=>{"use strict";var $se=Hy();cM.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var hM=Z((eue,vM)=>{"use strict";var OZ=Ie(),Lf=Er(),BZ=ct(),YZ=Oy();vM.exports=function(r,t){var a=r.modebar||{},n=BZ.newContainer(t,"modebar");function i(o,s){return OZ.coerce(a,n,YZ,o,s)}i("orientation"),i("bgcolor",Lf.addOpacity(t.paper_bgcolor,.5));var l=Lf.contrast(Lf.rgb(t.modebar.bgcolor));i("color",Lf.addOpacity(l,.3)),i("activecolor",Lf.addOpacity(l,.7)),i("uirevision",t.uirevision),i("add"),i("remove")}});var yM=Z((rue,mM)=>{"use strict";var By=Ir(),UZ=Hr(),xh=Ie(),dM=th(),VZ=sv().version,GZ=new DOMParser;function pM(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Si=pM.prototype;Si.update=function(e,r){this.graphInfo=e;var t=this.graphInfo._context,a=this.graphInfo._fullLayout,n="modebar-"+a._uid;this.element.setAttribute("id",n),this.element.setAttribute("role","toolbar"),this._uid=n,this.element.className="modebar modebar--custom",t.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),a.modebar.orientation==="v"&&(this.element.className+=" vertical",r=r.reverse());var i=a.modebar,l="#"+n+" .modebar-group";document.querySelectorAll(l).forEach(function(v){v.style.backgroundColor=i.bgcolor});var o=!this.hasButtons(r),s=this.hasLogo!==t.displaylogo,u=this.locale!==t.locale;if(this.locale=t.locale,(o||s||u)&&(this.removeAllButtons(),this.updateButtons(r),t.watermark||t.displaylogo)){var f=this.getLogo();t.watermark&&(f.className=f.className+" watermark"),a.modebar.orientation==="v"?this.element.insertBefore(f,this.element.childNodes[0]):this.element.appendChild(f),this.hasLogo=!0}this.updateActiveButton(),xh.setStyleOnHover("#"+n+" .modebar-btn",".active",".icon path","fill: "+i.activecolor,"fill: "+i.color,this.element)};Si.updateButtons=function(e){var r=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(t){var a=r.createGroup();t.forEach(function(n){var i=n.name;if(!i)throw new Error("must provide button 'name' in button config");if(r.buttonsNames.indexOf(i)!==-1)throw new Error("button name '"+i+"' is taken");r.buttonsNames.push(i);var l=r.createButton(n);r.buttonElements.push(l),a.appendChild(l)}),r.element.appendChild(a)})};Si.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var r=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=r.bgcolor,e};Si.createButton=function(e){var r=this,t=document.createElement("button");t.setAttribute("type","button"),t.setAttribute("rel","tooltip"),t.className="modebar-btn";var a=e.title;a===void 0?a=e.name:typeof a=="function"&&(a=a(this.graphInfo)),(a||a===0)&&(t.setAttribute("data-title",a),t.setAttribute("aria-label",a)),e.attr!==void 0&&t.setAttribute("data-attr",e.attr);var n=e.val;n!==void 0&&(typeof n=="function"&&(n=n(this.graphInfo)),t.setAttribute("data-val",n));var i=e.click;if(typeof i!="function")throw new Error("must provide button 'click' function in button config");t.addEventListener("click",function(o){e.click(r.graphInfo,o),r.updateActiveButton(o.currentTarget)}),t.setAttribute("data-toggle",e.toggle||!1),e.toggle&&By.select(t).classed("active",!0);var l=e.icon;return typeof l=="function"?t.appendChild(l()):t.appendChild(this.createIcon(l||dM.question)),t.setAttribute("data-gravity",e.gravity||"n"),t};Si.createIcon=function(e){var r=UZ(e.height)?Number(e.height):e.ascent-e.descent,t="http://www.w3.org/2000/svg",a;if(e.path){a=document.createElementNS(t,"svg"),a.setAttribute("viewBox",[0,0,e.width,r].join(" ")),a.setAttribute("class","icon");var n=document.createElementNS(t,"path");n.setAttribute("d",e.path),e.transform?n.setAttribute("transform",e.transform):e.ascent!==void 0&&n.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),a.appendChild(n)}if(e.svg){var i=GZ.parseFromString(e.svg,"application/xml");a=i.childNodes[0]}return a.setAttribute("height","1em"),a.setAttribute("width","1em"),a};Si.updateActiveButton=function(e){var r=this.graphInfo._fullLayout,t=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(a){var n=a.getAttribute("data-val")||!0,i=a.getAttribute("data-attr"),l=a.getAttribute("data-toggle")==="true",o=By.select(a),s=function(v,h){var d=r.modebar,m=v.querySelector(".icon path");m&&(h||v.matches(":hover")?m.style.fill=d.activecolor:m.style.fill=d.color)};if(l){if(i===t){var u=!o.classed("active");o.classed("active",u),s(a,u)}}else{var f=i===null?i:xh.nestedProperty(r,i).get();o.classed("active",f===n),s(a,f===n)}})};Si.hasButtons=function(e){var r=this.buttons;if(!r||e.length!==r.length)return!1;for(var t=0;t{"use strict";var XZ=Zt(),gM=ln(),Yy=br(),JZ=bi().isUnifiedHover,KZ=yM(),_h=Iy(),QZ=Hy().DRAW_MODES,$Z=Ie().extendDeep;bM.exports=function(r){var t=r._fullLayout,a=r._context,n=t._modeBar;if(!a.displayModeBar&&!a.watermark){n&&(n.destroy(),delete t._modeBar);return}if(!Array.isArray(a.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(a.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var i=a.modeBarButtons,l;Array.isArray(i)&&i.length?l=nX(i):!a.displayModeBar&&a.watermark?l=[]:l=jZ(r),n?n.update(r,l):t._modeBar=KZ(r,l)};function jZ(e){var r=e._fullLayout,t=e._fullData,a=e._context;function n(I,Y){if(typeof Y=="string"){if(Y.toLowerCase()===I.toLowerCase())return!0}else{var K=Y.name,Q=Y._cat||Y.name;if(K===I||Q===I.toLowerCase())return!0}return!1}var i=r.modebar.add;typeof i=="string"&&(i=[i]);var l=r.modebar.remove;typeof l=="string"&&(l=[l]);var o=a.modeBarButtonsToAdd.concat(i.filter(function(I){for(var Y=0;Y1?(R=["toggleHover"],z=["resetViews"]):v?(D=["zoomInGeo","zoomOutGeo"],R=["hoverClosestGeo"],z=["resetGeo"]):f?(R=["hoverClosest3d"],z=["resetCameraDefault3d","resetCameraLastSave3d"]):g?(D=["zoomInMapbox","zoomOutMapbox"],R=["toggleHover"],z=["resetViewMapbox"]):y?(D=["zoomInMap","zoomOutMap"],R=["toggleHover"],z=["resetViewMap"]):h?R=["hoverClosestPie"]:T?(R=["hoverClosestCartesian","hoverCompareCartesian"],z=["resetViewSankey"]):R=["toggleHover"],u&&R.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(tX(t)||M)&&(R=[]),u&&!b&&(D=["zoomIn2d","zoomOut2d","autoScale2d"],z[0]!=="resetViews"&&(z=["resetScale2d"])),f?F=["zoom3d","pan3d","orbitRotation","tableRotation"]:u&&!b||m?F=["zoom2d","pan2d"]:g||y||v?F=["pan2d"]:_&&(F=["zoom2d"]),rX(t)&&F.push("select2d","lasso2d");var H=[],O=function(I){H.indexOf(I)===-1&&R.indexOf(I)!==-1&&H.push(I)};if(Array.isArray(o)){for(var J=[],X=0;X{"use strict";_M.exports={moduleType:"component",name:"modebar",layoutAttributes:Oy(),supplyLayoutDefaults:hM(),manage:xM()}});var Vy=Z((nue,wM)=>{"use strict";var iX=Pa().FROM_BL;wM.exports=function(r,t,a){a===void 0&&(a=iX[r.constraintoward||"center"]);var n=[r.r2l(r.range[0]),r.r2l(r.range[1])],i=n[0]+(n[1]-n[0])*a;r.range=r._input.range=[r.l2r(i+(n[0]-i)*t),r.l2r(i+(n[1]-i)*t)],r.setScale()}});var Df=Z(qf=>{"use strict";var qo=Ie(),Gy=mf(),ei=Zt().id2name,lX=Jn(),TM=Vy(),oX=T0(),sX=Vt().ALMOST_EQUAL,uX=Pa().FROM_BL;qf.handleDefaults=function(e,r,t){var a=t.axIds,n=t.axHasImage,i=r._axisConstraintGroups=[],l=r._axisMatchGroups=[],o,s,u,f,v,h,d,m;for(o=0;oi?t.slice(i):a.slice(n))+l}function cX(e,r){for(var t=r._size,a=t.h/t.w,n={},i=Object.keys(e),l=0;lsX*m&&!w)){for(i=0;iF&&KR&&(R=K);var ne=(R-D)/(2*z);v/=ne,D=s.l2r(D),R=s.l2r(R),s.range=s._input.range=C{"use strict";var Th=Ir(),Fa=br(),cn=Ft(),Ln=Ie(),Xy=Ta(),Jy=rh(),Ef=Er(),tu=at(),SM=df(),EM=Uy(),Pf=dt(),Wi=Pa(),PM=Df(),vX=PM.enforce,hX=PM.clean,CM=mf().doAutoRange,RM="start",dX="middle",zM="end",pX=ya().zindexSeparator;ra.layoutStyles=function(e){return Ln.syncOrAsync([cn.doAutoMargin,yX],e)};function mX(e,r,t){for(var a=0;a=e[1]||n[1]<=e[0])&&i[0]r[0])return!0}return!1}function yX(e){var r=e._fullLayout,t=r._size,a=t.p,n=Pf.list(e,"",!0),i,l,o,s,u,f;if(r._paperdiv.style({width:e._context.responsive&&r.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":r.width+"px",height:e._context.responsive&&r.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":r.height+"px"}).selectAll(".main-svg").call(tu.setSize,r.width,r.height),e._context.setBackground(e,r.paper_bgcolor),ra.drawMainTitle(e),EM.manage(e),!r._has("cartesian"))return cn.previousPromises(e);function v(ge,B,$){var U=ge._lw/2;if(ge._id.charAt(0)==="x"){if(B){if($==="top")return B._offset-a-U}else return t.t+t.h*(1-(ge.position||0))+U%1;return B._offset+B._length+a+U}if(B){if($==="right")return B._offset+B._length+a+U}else return t.l+t.w*(ge.position||0)+U%1;return B._offset-a-U}for(i=0;i0){_X(e,i,u,s),o.attr({x:l,y:i,"text-anchor":a,dy:DM(r.yanchor)}).call(Xy.positionText,l,i);var f=(r.text.match(Xy.BR_TAG_ALL)||[]).length;if(f){var v=Wi.LINE_SPACING*f+Wi.MID_SHIFT;r.y===0&&(v=-v),o.selectAll(".line").each(function(){var y=+this.getAttribute("dy").slice(0,-2)-v+"em";this.setAttribute("dy",y)})}var h=Th.select(e).selectAll(".gtitle-subtitle");if(h.node()){var d=o.node().getBBox(),m=d.y+d.height,g=m+SM.SUBTITLE_PADDING_EM*r.subtitle.font.size;h.attr({x:l,y:g,"text-anchor":a,dy:DM(r.yanchor)}).call(Xy.positionText,l,g)}}}};function gX(e,r,t,a,n){var i=r.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,l=Ln.isTopAnchor(r)?a:a-n,o=t==="b"?i-l:l;return Ln.isTopAnchor(r)&&t==="t"||Ln.isBottomAnchor(r)&&t==="b"?!1:o.5?"t":"b",l=e._fullLayout.margin[i],o=0;return r.yref==="paper"?o=t+r.pad.t+r.pad.b:r.yref==="container"&&(o=bX(i,a,n,e._fullLayout.height,t)+r.pad.t+r.pad.b),o>l?o:0}function _X(e,r,t,a){var n="title.automargin",i=e._fullLayout.title,l=i.y>.5?"t":"b",o={x:i.x,y:i.y,t:0,b:0},s={};i.yref==="paper"&&gX(e,i,l,r,a)?o[l]=t:i.yref==="container"&&(s[l]=t,e._fullLayout._reservedMargin[n]=s),cn.allowAutoMargin(e,n),cn.autoMargin(e,n,o)}function wX(e,r){var t=e.title,a=e._size,n=0;switch(r===RM?n=t.pad.l:r===zM&&(n=-t.pad.r),t.xref){case"paper":return a.l+a.w*t.x+n;case"container":default:return e.width*t.x+n}}function TX(e,r){var t=e.title,a=e._size,n=0;if(r==="0em"||!r?n=-t.pad.b:r===Wi.CAP_SHIFT+"em"&&(n=t.pad.t),t.y==="auto")return a.t/2;switch(t.yref){case"paper":return a.t+a.h-a.h*t.y+n;case"container":default:return e.height-e.height*t.y+n}}function DM(e){return e==="top"?Wi.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":Wi.MID_SHIFT+"em"}function MX(e){var r=e.title,t=dX;return Ln.isRightAnchor(r)?t=zM:Ln.isLeftAnchor(r)&&(t=RM),t}function AX(e){var r=e.title,t="0em";return Ln.isTopAnchor(r)?t=Wi.CAP_SHIFT+"em":Ln.isMiddleAnchor(r)&&(t=Wi.MID_SHIFT+"em"),t}ra.doTraceStyle=function(e){var r=e.calcdata,t=[],a;for(a=0;a{"use strict";var kX=wl().readPaths,SX=hh(),NM=dl().clearOutlineControllers,Ky=Er(),FM=at(),CX=ct().arrayEditor,IM=Ml(),LX=IM.getPathString;OM.exports={draw:Ah,drawOne:HM,activateLastSelection:EX};function Ah(e){var r=e._fullLayout;NM(e),r._selectionLayer.selectAll("path").remove();for(var t in r._plots){var a=r._plots[t].selectionLayer;a&&a.selectAll("path").remove()}for(var n=0;n=0;y--){var _=l.append("path").attr(s).style("opacity",y?.1:u).call(Ky.stroke,v).call(Ky.fill,f).call(FM.dashLine,y?"solid":d,y?4+h:h);if(qX(_,e,a),m){var w=CX(e.layout,"selections",a);_.style({cursor:"move"});var T={element:_.node(),plotinfo:n,gd:e,editHelpers:w,isActiveSelection:!0},b=kX(o,e);SX(b,_,T)}else _.style("pointer-events",y?"all":"none");g[y]=_}var M=g[0],C=g[1];C.node().addEventListener("click",function(){return DX(e,M)})}}function qX(e,r,t){var a=t.xref+t.yref;FM.setClipUrl(e,"clip"+r._fullLayout._uid+a,r)}function DX(e,r){if(kh(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeSelectionIndex){Qy(e);return}e._fullLayout._activeSelectionIndex=a,e._fullLayout._deactivateSelection=Qy,Ah(e)}}}function EX(e){if(kh(e)){var r=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=r,e._fullLayout._deactivateSelection=Qy,Ah(e)}}function Qy(e){if(kh(e)){var r=e._fullLayout._activeSelectionIndex;r>=0&&(NM(e),delete e._fullLayout._activeSelectionIndex,Ah(e))}}});var YM=Z((sue,BM)=>{function PX(){var e,r=0,t=!1;function a(n,i){return e.list.push({type:n,data:i?JSON.parse(JSON.stringify(i)):void 0}),e}return e={list:[],segmentId:function(){return r++},checkIntersection:function(n,i){return a("check",{seg1:n,seg2:i})},segmentChop:function(n,i){return a("div_seg",{seg:n,pt:i}),a("chop",{seg:n,pt:i})},statusRemove:function(n){return a("pop_seg",{seg:n})},segmentUpdate:function(n){return a("seg_update",{seg:n})},segmentNew:function(n,i){return a("new_seg",{seg:n,primary:i})},segmentRemove:function(n){return a("rem_seg",{seg:n})},tempStatus:function(n,i,l){return a("temp_status",{seg:n,above:i,below:l})},rewind:function(n){return a("rewind",{seg:n})},status:function(n,i,l){return a("status",{seg:n,above:i,below:l})},vert:function(n){return n===t?e:(t=n,a("vert",{x:n}))},log:function(n){return typeof n!="string"&&(n=JSON.stringify(n,!1," ")),a("log",{txt:n})},reset:function(){return a("reset")},selected:function(n){return a("selected",{segs:n})},chainStart:function(n){return a("chain_start",{seg:n})},chainRemoveHead:function(n,i){return a("chain_rem_head",{index:n,pt:i})},chainRemoveTail:function(n,i){return a("chain_rem_tail",{index:n,pt:i})},chainNew:function(n,i){return a("chain_new",{pt1:n,pt2:i})},chainMatch:function(n){return a("chain_match",{index:n})},chainClose:function(n){return a("chain_close",{index:n})},chainAddHead:function(n,i){return a("chain_add_head",{index:n,pt:i})},chainAddTail:function(n,i){return a("chain_add_tail",{index:n,pt:i})},chainConnect:function(n,i){return a("chain_con",{index1:n,index2:i})},chainReverse:function(n){return a("chain_rev",{index:n})},chainJoin:function(n,i){return a("chain_join",{index1:n,index2:i})},done:function(){return a("done")}},e}BM.exports=PX});var VM=Z((uue,UM)=>{function RX(e){typeof e!="number"&&(e=1e-10);var r={epsilon:function(t){return typeof t=="number"&&(e=t),e},pointAboveOrOnLine:function(t,a,n){var i=a[0],l=a[1],o=n[0],s=n[1],u=t[0],f=t[1];return(o-i)*(f-l)-(s-l)*(u-i)>=-e},pointBetween:function(t,a,n){var i=t[1]-a[1],l=n[0]-a[0],o=t[0]-a[0],s=n[1]-a[1],u=o*l+i*s;if(u-e)},pointsSameX:function(t,a){return Math.abs(t[0]-a[0])e!=o-i>e&&(l-f)*(i-v)/(o-v)+f-n>e&&(s=!s),l=f,o=v}return s}};return r}UM.exports=RX});var WM=Z((fue,GM)=>{var zX={create:function(){var e={root:{root:!0,next:null},exists:function(r){return!(r===null||r===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(r,t){for(var a=e.root,n=e.root.next;n!==null;){if(t(n)){r.prev=n.prev,r.next=n,n.prev.next=r,n.prev=r;return}a=n,n=n.next}a.next=r,r.prev=a,r.next=null},findTransition:function(r){for(var t=e.root,a=e.root.next;a!==null&&!r(a);)t=a,a=a.next;return{before:t===e.root?null:t,after:a,insert:function(n){return n.prev=t,n.next=a,t.next=n,a!==null&&(a.prev=n),n}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};GM.exports=zX});var XM=Z((cue,ZM)=>{var Rf=WM();function NX(e,r,t){function a(m,g){return{id:t?t.segmentId():-1,start:m,end:g,myFill:{above:null,below:null},otherFill:null}}function n(m,g,y){return{id:t?t.segmentId():-1,start:m,end:g,myFill:{above:y.myFill.above,below:y.myFill.below},otherFill:null}}var i=Rf.create();function l(m,g,y,_,w,T){var b=r.pointsCompare(g,w);return b!==0?b:r.pointsSame(y,T)?0:m!==_?m?1:-1:r.pointAboveOrOnLine(y,_?w:T,_?T:w)?1:-1}function o(m,g){i.insertBefore(m,function(y){var _=l(m.isStart,m.pt,g,y.isStart,y.pt,y.other.pt);return _<0})}function s(m,g){var y=Rf.node({isStart:!0,pt:m.start,seg:m,primary:g,other:null,status:null});return o(y,m.end),y}function u(m,g,y){var _=Rf.node({isStart:!1,pt:g.end,seg:g,primary:y,other:m,status:null});m.other=_,o(_,m.pt)}function f(m,g){var y=s(m,g);return u(y,m,g),y}function v(m,g){t&&t.segmentChop(m.seg,g),m.other.remove(),m.seg.end=g,m.other.pt=g,o(m.other,m.pt)}function h(m,g){var y=n(g,m.seg.end,m.seg);return v(m,g),f(y,m.primary)}function d(m,g){var y=Rf.create();function _(J,X){var G=J.seg.start,I=J.seg.end,Y=X.seg.start,K=X.seg.end;return r.pointsCollinear(G,Y,K)?r.pointsCollinear(I,Y,K)||r.pointAboveOrOnLine(I,Y,K)?1:-1:r.pointAboveOrOnLine(G,Y,K)?1:-1}function w(J){return y.findTransition(function(X){var G=_(J,X.ev);return G>0})}function T(J,X){var G=J.seg,I=X.seg,Y=G.start,K=G.end,Q=I.start,ne=I.end;t&&t.checkIntersection(G,I);var me=r.linesIntersect(Y,K,Q,ne);if(me===!1){if(!r.pointsCollinear(Y,K,Q)||r.pointsSame(Y,ne)||r.pointsSame(K,Q))return!1;var de=r.pointsSame(Y,Q),ke=r.pointsSame(K,ne);if(de&&ke)return X;var re=!de&&r.pointBetween(Y,Q,ne),Ce=!ke&&r.pointBetween(K,Q,ne);if(de)return Ce?h(X,K):h(J,ne),X;re&&(ke||(Ce?h(X,K):h(J,ne)),h(X,Y))}else me.alongA===0&&(me.alongB===-1?h(J,Q):me.alongB===0?h(J,me.pt):me.alongB===1&&h(J,ne)),me.alongB===0&&(me.alongA===-1?h(X,Y):me.alongA===0?h(X,me.pt):me.alongA===1&&h(X,K));return!1}for(var b=[];!i.isEmpty();){var M=i.getHead();if(t&&t.vert(M.pt[0]),M.isStart){let J=function(){if(k){var X=T(M,k);if(X)return X}return q?T(M,q):!1};var O=J;t&&t.segmentNew(M.seg,M.primary);var C=w(M),k=C.before?C.before.ev:null,q=C.after?C.after.ev:null;t&&t.tempStatus(M.seg,k?k.seg:!1,q?q.seg:!1);var D=J();if(D){if(e){var R;M.seg.myFill.below===null?R=!0:R=M.seg.myFill.above!==M.seg.myFill.below,R&&(D.seg.myFill.above=!D.seg.myFill.above)}else D.seg.otherFill=M.seg.myFill;t&&t.segmentUpdate(D.seg),M.other.remove(),M.remove()}if(i.getHead()!==M){t&&t.rewind(M.seg);continue}if(e){var R;M.seg.myFill.below===null?R=!0:R=M.seg.myFill.above!==M.seg.myFill.below,q?M.seg.myFill.below=q.seg.myFill.above:M.seg.myFill.below=m,R?M.seg.myFill.above=!M.seg.myFill.below:M.seg.myFill.above=M.seg.myFill.below}else if(M.seg.otherFill===null){var z;q?M.primary===q.primary?z=q.seg.otherFill.above:z=q.seg.myFill.above:z=M.primary?g:m,M.seg.otherFill={above:z,below:z}}t&&t.status(M.seg,k?k.seg:!1,q?q.seg:!1),M.other.status=C.insert(Rf.node({ev:M}))}else{var F=M.status;if(F===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(y.exists(F.prev)&&y.exists(F.next)&&T(F.prev.ev,F.next.ev),t&&t.statusRemove(F.ev.seg),F.remove(),!M.primary){var H=M.seg.myFill;M.seg.myFill=M.seg.otherFill,M.seg.otherFill=H}b.push(M.seg)}i.getHead().remove()}return t&&t.done(),b}return e?{addRegion:function(m){for(var g,y=m[m.length-1],_=0;_{function FX(e,r,t){var a=[],n=[];return e.forEach(function(i){var l=i.start,o=i.end;if(r.pointsSame(l,o)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}t&&t.chainStart(i);var s={index:0,matches_head:!1,matches_pt1:!1},u={index:0,matches_head:!1,matches_pt1:!1},f=s;function v(O,J,X){return f.index=O,f.matches_head=J,f.matches_pt1=X,f===s?(f=u,!1):(f=null,!0)}for(var h=0;h{function zf(e,r,t){var a=[];return e.forEach(function(n){var i=(n.myFill.above?8:0)+(n.myFill.below?4:0)+(n.otherFill&&n.otherFill.above?2:0)+(n.otherFill&&n.otherFill.below?1:0);r[i]!==0&&a.push({id:t?t.segmentId():-1,start:n.start,end:n.end,myFill:{above:r[i]===1,below:r[i]===2},otherFill:null})}),t&&t.selected(a),a}var IX={union:function(e,r){return zf(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],r)},intersect:function(e,r){return zf(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],r)},difference:function(e,r){return zf(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],r)},differenceRev:function(e,r){return zf(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],r)},xor:function(e,r){return zf(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],r)}};QM.exports=IX});var eA=Z((due,jM)=>{var HX={toPolygon:function(e,r){function t(i){if(i.length<=0)return e.segments({inverted:!1,regions:[]});function l(u){var f=u.slice(0,u.length-1);return e.segments({inverted:!1,regions:[f]})}for(var o=l(i[0]),s=1;s{var OX=YM(),BX=VM(),rA=XM(),YX=KM(),Nf=$M(),tA=eA(),qn=!1,Ff=BX(),ja;ja={buildLog:function(e){return e===!0?qn=OX():e===!1&&(qn=!1),qn===!1?!1:qn.list},epsilon:function(e){return Ff.epsilon(e)},segments:function(e){var r=rA(!0,Ff,qn);return e.regions.forEach(r.addRegion),{segments:r.calculate(e.inverted),inverted:e.inverted}},combine:function(e,r){var t=rA(!1,Ff,qn);return{combined:t.calculate(e.segments,e.inverted,r.segments,r.inverted),inverted1:e.inverted,inverted2:r.inverted}},selectUnion:function(e){return{segments:Nf.union(e.combined,qn),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:Nf.intersect(e.combined,qn),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:Nf.difference(e.combined,qn),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:Nf.differenceRev(e.combined,qn),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:Nf.xor(e.combined,qn),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:YX(e.segments,Ff,qn),inverted:e.inverted}},polygonFromGeoJSON:function(e){return tA.toPolygon(ja,e)},polygonToGeoJSON:function(e){return tA.fromPolygon(ja,Ff,e)},union:function(e,r){return If(e,r,ja.selectUnion)},intersect:function(e,r){return If(e,r,ja.selectIntersect)},difference:function(e,r){return If(e,r,ja.selectDifference)},differenceRev:function(e,r){return If(e,r,ja.selectDifferenceRev)},xor:function(e,r){return If(e,r,ja.selectXor)}};function If(e,r,t){var a=ja.segments(e),n=ja.segments(r),i=ja.combine(a,n),l=t(i);return ja.polygon(l)}typeof window=="object"&&(window.PolyBool=ja);aA.exports=ja});var lA=Z((mue,iA)=>{iA.exports=function(r,t,a,n){var i=r[0],l=r[1],o=!1;a===void 0&&(a=0),n===void 0&&(n=t.length);for(var s=n-a,u=0,f=s-1;ul!=m>l&&i<(d-v)*(l-h)/(m-h)+v;g&&(o=!o)}return o}});var eg=Z((yue,oA)=>{"use strict";var jy=kv().dot,Sh=Vt().BADNUM,Ch=oA.exports={};Ch.tester=function(r){var t=r.slice(),a=t[0][0],n=a,i=t[0][1],l=i,o;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),o=1;on||_===Sh||_l||g&&u(m))}function v(m,g){var y=m[0],_=m[1];if(y===Sh||yn||_===Sh||_l)return!1;var w=t.length,T=t[0][0],b=t[0][1],M=0,C,k,q,D,R;for(C=1;CMath.max(k,T)||_>Math.max(q,b)))if(_o||Math.abs(jy(v,u))>n)return!0;return!1};Ch.filter=function(r,t){var a=[r[0]],n=0,i=0;function l(s){r.push(s);var u=a.length,f=n;a.splice(i+1);for(var v=f+1;v1){var o=r.pop();l(o)}return{addPt:l,raw:r,filtered:a}}});var uA=Z((gue,sA)=>{"use strict";sA.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var DA=Z((bue,qA)=>{"use strict";var fA=nA(),UX=lA(),Bf=br(),VX=at().dashStyle,Hf=Er(),GX=ki(),WX=bi().makeEventData,Wf=Js(),ZX=Wf.freeMode,XX=Wf.rectMode,Yf=Wf.drawMode,ng=Wf.openMode,ig=Wf.selectMode,cA=Ml(),vA=Sf(),yA=hh(),gA=dl().clearOutline,bA=wl(),rg=bA.handleEllipse,JX=bA.readPaths,KX=uh().newShapes,QX=Sy(),$X=$y().activateLastSelection,qh=Ie(),jX=qh.sorterAsc,xA=eg(),Of=Iv(),Dn=Zt().getFromId,eJ=rh(),rJ=Mh().redrawReglTraces,Dh=uA(),Ci=Dh.MINSELECT,tJ=xA.filter,lg=xA.tester,og=ih(),hA=og.p2r,aJ=og.axValue,nJ=og.getTransform;function sg(e){return e.subplot!==void 0}function iJ(e,r,t,a,n){var i=!sg(a),l=ZX(n),o=XX(n),s=ng(n),u=Yf(n),f=ig(n),v=n==="drawline",h=n==="drawcircle",d=v||h,m=a.gd,g=m._fullLayout,y=f&&g.newselection.mode==="immediate"&&i,_=g._zoomlayer,w=a.element.getBoundingClientRect(),T=a.plotinfo,b=nJ(T),M=r-w.left,C=t-w.top;g._calcInverseTransform(m);var k=qh.apply3DTransform(g._invTransform)(M,C);M=k[0],C=k[1];var q=g._invScaleX,D=g._invScaleY,R=M,z=C,F="M"+M+","+C,H=a.xaxes[0],O=a.yaxes[0],J=H._length,X=O._length,G=e.altKey&&!(Yf(n)&&s),I,Y,K,Q,ne,me,de;wA(e,m,a),l&&(I=tJ([[M,C]],Dh.BENDPX));var ke=_.selectAll("path.select-outline-"+T.id).data([1]),re=u?g.newshape:g.newselection;u&&(a.hasText=re.label.text||re.label.texttemplate);var Ce=u&&!s?re.fillcolor:"rgba(0,0,0,0)",ce=re.line.color||(i?Hf.contrast(m._fullLayout.plot_bgcolor):"#7f7f7f");ke.enter().append("path").attr("class","select-outline select-outline-"+T.id).style({opacity:u?re.opacity/2:1,"stroke-dasharray":VX(re.line.dash,re.line.width),"stroke-width":re.line.width+"px","shape-rendering":"crispEdges"}).call(Hf.stroke,ce).call(Hf.fill,Ce).attr("fill-rule","evenodd").classed("cursor-move",!!u).attr("transform",b).attr("d",F+"Z");var _e=_.append("path").attr("class","zoombox-corners").style({fill:Hf.background,stroke:Hf.defaultLine,"stroke-width":1}).attr("transform",b).attr("d","M0,0Z");if(u&&a.hasText){var se=_.select(".label-temp");se.empty()&&(se=_.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var ge=g._uid+Dh.SELECTID,B=[],$=Eh(m,a.xaxes,a.yaxes,a.subplot);y&&!e.shiftKey&&(a._clearSubplotSelections=function(){if(i){var ye=H._id,we=O._id;SA(m,ye,we,$);for(var pe=(m.layout||{}).selections||[],Re=[],Fe=!1,Ee=0;Ee=0){m._fullLayout._deactivateShape(m);return}if(!u){var pe=g.clickmode;Of.done(ge).then(function(){if(Of.clear(ge),ye===2){for(ke.remove(),ne=0;ne<$.length;ne++)me=$[ne],me._module.selectPoints(me,!1);if(Vf(m,$),Uf(a),cg(m),$.length){var Re=$[0].xaxis,Fe=$[0].yaxis;if(Re&&Fe){for(var Ee=[],Ne=m._fullLayout.selections,Be=0;Be-1&&_A(we,m,a.xaxes,a.yaxes,a.subplot,a,ke),pe==="event"&&Gf(m,void 0);GX.click(m,we,T.id)}).catch(qh.error)}},a.doneFn=function(){_e.remove(),Of.done(ge).then(function(){Of.clear(ge),!y&&Q&&a.selectionDefs&&(Q.subtract=G,a.selectionDefs.push(Q),a.mergedPolygons.length=0,[].push.apply(a.mergedPolygons,K)),(y||u)&&Uf(a,y),a.doneFnCompleted&&a.doneFnCompleted(B),f&&Gf(m,de)}).catch(qh.error)}}function _A(e,r,t,a,n,i,l){var o=r._hoverdata,s=r._fullLayout,u=s.clickmode,f=u.indexOf("event")>-1,v=[],h,d,m,g,y,_,w,T,b,M;if(fJ(o)){wA(e,r,i),h=Eh(r,t,a,n);var C=cJ(o,h),k=C.pointNumbers.length>0;if(k?vJ(h,C):hJ(h)&&(w=pA(C))){for(l&&l.remove(),M=0;M=0}function uJ(e){return e._fullLayout._activeSelectionIndex>=0}function Uf(e,r){var t=e.dragmode,a=e.plotinfo,n=e.gd;sJ(n)&&n._fullLayout._deactivateShape(n),uJ(n)&&n._fullLayout._deactivateSelection(n);var i=n._fullLayout,l=i._zoomlayer,o=Yf(t),s=ig(t);if(o||s){var u=l.selectAll(".select-outline-"+a.id);if(u&&n._fullLayout._outlining){var f;o&&(f=KX(u,e)),f&&Bf.call("_guiRelayout",n,{shapes:f});var v;s&&!sg(e)&&(v=QX(u,e)),v&&(n._fullLayout._noEmitSelectedAtStart=!0,Bf.call("_guiRelayout",n,{selections:v}).then(function(){r&&$X(n)})),n._fullLayout._outlining=!1}}a.selection={},a.selection.selectionDefs=e.selectionDefs=[],a.selection.mergedPolygons=e.mergedPolygons=[]}function dA(e){return e._id}function Eh(e,r,t,a){if(!e.calcdata)return[];var n=[],i=r.map(dA),l=t.map(dA),o,s,u;for(u=0;u0,i=n?a[0]:t;return r.selectedpoints?r.selectedpoints.indexOf(i)>-1:!1}function vJ(e,r){var t=[],a,n,i,l;for(l=0;l0&&t.push(a);if(t.length===1&&(i=t[0]===r.searchInfo,i&&(n=r.searchInfo.cd[0].trace,n.selectedpoints.length===r.pointNumbers.length))){for(l=0;l1||(r+=a.selectedpoints.length,r>1)))return!1;return r===1}function Vf(e,r,t){var a;for(a=0;a-1&&r;if(!l&&r){var ye=mA(e,!0);if(ye.length){var we=ye[0].xref,pe=ye[0].yref;if(we&&pe){var Re=CA(ye),Fe=LA([Dn(e,we,"x"),Dn(e,pe,"y")]);Fe(B,Re)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:U&&Gf(e,B),h._reselect=!1}if(!l&&h._deselect){var Ee=h._deselect;o=Ee.xref,s=Ee.yref,mJ(o,s,f)||SA(e,o,s,a),U&&(B.points.length?Gf(e,B):cg(e)),h._deselect=!1}return{eventData:B,selectionTesters:t}}function pJ(e){var r=e.calcdata;if(r)for(var t=0;t{"use strict";EA.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var Zf=Z((_ue,PA)=>{"use strict";PA.exports={axisRefDescription:function(e,r,t){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",r,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",r,"("+t+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",r,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",r,"and the",t,"of the domain of the","second",e,"axis."].join(" ")}}});var au=Z((Tue,NA)=>{"use strict";var RA=vg(),zA=ma(),Ph=ya(),_J=ct().templatedArray,wue=Zf();NA.exports=_J("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:zA({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:RA.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:RA.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",Ph.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",Ph.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",Ph.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",Ph.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:zA({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Rh=Z((Mue,FA)=>{"use strict";FA.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var HA=Z((Aue,IA)=>{"use strict";IA.exports=function(r){return{valType:"color",editType:"style",anim:!0}}});var Do=Z((kue,WA)=>{"use strict";var OA=n0().axisHoverFormat,{hovertemplateAttrs:wJ,texttemplateAttrs:TJ,templatefallbackAttrs:BA}=to(),YA=cf(),MJ=ma(),AJ=mi().dash,kJ=mi().pattern,SJ=at(),CJ=Rh(),zh=Gt().extendFlat,LJ=HA();function UA(e){return{valType:"any",dflt:0,editType:"calc"}}function VA(e){return{valType:"any",editType:"calc"}}function GA(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}WA.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:UA("x"),yperiod:UA("y"),xperiod0:VA("x0"),yperiod0:VA("y0"),xperiodalignment:GA("x"),yperiodalignment:GA("y"),xhoverformat:OA("x"),yhoverformat:OA("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:TJ(),texttemplatefallback:BA({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:wJ({},{keys:CJ.eventDataKeys}),hovertemplatefallback:BA(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:zh({},AJ,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:LJ(!0),fillgradient:zh({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:kJ,marker:zh({symbol:{valType:"enumerated",values:SJ.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:zh({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},YA("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},YA("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:MJ({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var hg=Z((Cue,JA)=>{"use strict";var ZA=au(),XA=Do().line,qJ=mi().dash,Nh=Gt().extendFlat,DJ=pi().overrideAll,EJ=ct().templatedArray,Sue=Zf();JA.exports=DJ(EJ("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:Nh({},ZA.xref,{}),yref:Nh({},ZA.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:XA.color,width:Nh({},XA.width,{min:1,dflt:1}),dash:Nh({},qJ,{dflt:"dot"})}}),"arraydraw","from-root")});var jA=Z((Lue,$A)=>{"use strict";var KA=Ie(),Fh=dt(),PJ=Kn(),RJ=hg(),QA=Ml();$A.exports=function(r,t){PJ(r,t,{name:"selections",handleItemDefaults:zJ});for(var a=t.selections,n=0;n{"use strict";ek.exports=function(r,t,a){a("newselection.mode");var n=a("newselection.line.width");n&&(a("newselection.line.color"),a("newselection.line.dash")),a("activeselection.fillcolor"),a("activeselection.opacity")}});var Xf=Z((Due,nk)=>{"use strict";var NJ=br(),tk=Ie(),ak=Zt();nk.exports=function(r){return function(a,n){var i=a[r];if(Array.isArray(i))for(var l=NJ.subplotsRegistry.cartesian,o=l.idRegex,s=n._subplots,u=s.xaxis,f=s.yaxis,v=s.cartesian,h=n._has("cartesian"),d=0;d{"use strict";var ik=$y(),Jf=DA();lk.exports={moduleType:"component",name:"selections",layoutAttributes:hg(),supplyLayoutDefaults:jA(),supplyDrawNewSelectionDefaults:rk(),includeBasePlot:Xf()("selections"),draw:ik.draw,drawOne:ik.drawOne,reselect:Jf.reselect,prepSelect:Jf.prepSelect,clearOutline:Jf.clearOutline,clearSelectionsCache:Jf.clearSelectionsCache,selectOnClick:Jf.selectOnClick}});var Sk=Z((Pue,kk)=>{"use strict";var gg=Ir(),En=Ie(),ok=En.numberFormat,FJ=xn(),IJ=jm(),Ih=br(),mk=En.strTranslate,HJ=Ta(),sk=Er(),kl=at(),OJ=ki(),uk=dt(),BJ=_l(),YJ=$n(),yk=Js(),Hh=yk.selectingOrDrawing,UJ=yk.freeMode,VJ=Pa().FROM_TL,GJ=rh(),WJ=Mh().redrawReglTraces,ZJ=Ft(),pg=Zt().getFromId,XJ=nu().prepSelect,JJ=nu().clearOutline,KJ=nu().selectOnClick,dg=Vy(),bg=ya(),fk=bg.MINDRAG,Ya=bg.MINZOOM,ck=!0;function QJ(e,r,t,a,n,i,l,o){var s=e._fullLayout._zoomlayer,u=l+o==="nsew",f=(l+o).length===1,v,h,d,m,g,y,_,w,T,b,M,C,k,q,D,R,z,F,H,O,J,X,G;t+=r.yaxis._shift;function I(){if(v=r.xaxis,h=r.yaxis,T=v._length,b=h._length,_=v._offset,w=h._offset,d={},d[v._id]=v,m={},m[h._id]=h,l&&o)for(var Me=r.overlays,Se=0;Se=0){Oe._fullLayout._deactivateShape(Oe);return}var Je=Oe._fullLayout.clickmode;if(yg(Oe),Me===2&&!f&&Ye(),u)Je.indexOf("select")>-1&&KJ(Se,Oe,g,y,r.id,Q),Je.indexOf("event")>-1&&OJ.click(Oe,Se,r.id);else if(Me===1&&f){var We=l?h:v,Ze=l==="s"||o==="w"?0:1,lr=We._name+".range["+Ze+"]",tr=$J(We,Ze),Qe="left",ze="middle";if(We.fixedrange)return;l?(ze=l==="n"?"top":"bottom",We.side==="right"&&(Qe="right")):o==="e"&&(Qe="right"),Oe._context.showAxisRangeEntryBoxes&&gg.select(K).call(HJ.makeEditable,{gd:Oe,immediate:!0,background:Oe._fullLayout.paper_bgcolor,text:String(tr),fill:We.tickfont?We.tickfont.color:"#444",horizontalAlign:Qe,verticalAlign:ze}).on("edit",function(ae){var le=We.d2r(ae);le!==void 0&&Ih.call("_guiRelayout",Oe,lr,le)})}}YJ.init(Q);var de,ke,re,Ce,ce,_e,se,ge,B,$;function U(Me,Se,Oe){var Je=K.getBoundingClientRect();de=Se-Je.left,ke=Oe-Je.top,e._fullLayout._calcInverseTransform(e);var We=En.apply3DTransform(e._fullLayout._invTransform)(de,ke);de=We[0],ke=We[1],re={l:de,r:de,w:0,t:ke,b:ke,h:0},Ce=e._hmpixcount?e._hmlumcount/e._hmpixcount:FJ(e._fullLayout.plot_bgcolor).getLuminance(),ce="M0,0H"+T+"V"+b+"H0V0",_e=!1,se="xy",$=!1,ge=xk(s,Ce,_,w,ce),B=_k(s,_,w)}function ye(Me,Se){if(e._transitioningWithDuration)return!1;var Oe=Math.max(0,Math.min(T,X*Me+de)),Je=Math.max(0,Math.min(b,G*Se+ke)),We=Math.abs(Oe-de),Ze=Math.abs(Je-ke);re.l=Math.min(de,Oe),re.r=Math.max(de,Oe),re.t=Math.min(ke,Je),re.b=Math.max(ke,Je);function lr(){se="",re.r=re.l,re.t=re.b,B.attr("d","M0,0Z")}if(M.isSubplotConstrained)We>Ya||Ze>Ya?(se="xy",We/T>Ze/b?(Ze=We*b/T,ke>Je?re.t=ke-Ze:re.b=ke+Ze):(We=Ze*T/b,de>Oe?re.l=de-We:re.r=de+We),B.attr("d",Oh(re))):lr();else if(C.isSubplotConstrained)if(We>Ya||Ze>Ya){se="xy";var tr=Math.min(re.l/T,(b-re.b)/b),Qe=Math.max(re.r/T,(b-re.t)/b);re.l=tr*T,re.r=Qe*T,re.b=(1-tr)*b,re.t=(1-Qe)*b,B.attr("d",Oh(re))}else lr();else!q||Ze0){var ae;if(C.isSubplotConstrained||!k&&q.length===1){for(ae=0;ae1&&(lr.maxallowed!==void 0&&R===(lr.range[0]1&&(tr.maxallowed!==void 0&&z===(tr.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function eK(e,r,t){return e?e==="nsew"?t?"":r==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function xk(e,r,t,a,n){return e.append("path").attr("class","zoombox").style({fill:r>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",mk(t,a)).attr("d",n+"Z")}function _k(e,r,t){return e.append("path").attr("class","zoombox-corners").style({fill:sk.background,stroke:sk.defaultLine,"stroke-width":1,opacity:0}).attr("transform",mk(r,t)).attr("d","M0,0Z")}function wk(e,r,t,a,n,i){e.attr("d",a+"M"+t.l+","+t.t+"v"+t.h+"h"+t.w+"v-"+t.h+"h-"+t.w+"Z"),Tk(e,r,n,i)}function Tk(e,r,t,a){t||(e.transition().style("fill",a>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),r.transition().style("opacity",1).duration(200))}function yg(e){gg.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function Mk(e){ck&&e.data&&e._context.showTips&&(En.notifier(En._(e,"Double-click to zoom back out"),"long"),ck=!1)}function rK(e,r){return"M"+(e.l-.5)+","+(r-Ya-.5)+"h-3v"+(2*Ya+1)+"h3ZM"+(e.r+.5)+","+(r-Ya-.5)+"h3v"+(2*Ya+1)+"h-3Z"}function tK(e,r){return"M"+(r-Ya-.5)+","+(e.t-.5)+"v-3h"+(2*Ya+1)+"v3ZM"+(r-Ya-.5)+","+(e.b+.5)+"v3h"+(2*Ya+1)+"v-3Z"}function Oh(e){var r=Math.floor(Math.min(e.b-e.t,e.r-e.l,Ya)/2);return"M"+(e.l-3.5)+","+(e.t-.5+r)+"h3v"+-r+"h"+r+"v-3h-"+(r+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+r)+"h-3v"+-r+"h"+-r+"v-3h"+(r+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-r)+"h-3v"+r+"h"+-r+"v3h"+(r+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-r)+"h3v"+r+"h"+r+"v3h-"+(r+3)+"Z"}function dk(e,r,t,a,n){for(var i=!1,l={},o={},s,u,f,v,h=(n||{}).xaHash,d=(n||{}).yaHash,m=0;m{"use strict";var aK=Ir(),Bh=ki(),nK=$n(),iK=_l(),ri=Sk().makeDragBox,ta=ya().DRAGGERSIZE;Yh.initInteractions=function(r){var t=r._fullLayout;if(r._context.staticPlot){aK.select(r).selectAll(".drag").remove();return}if(!(!t._has("cartesian")&&!t._has("splom"))){var a=Object.keys(t._plots||{}).sort(function(i,l){if((t._plots[i].mainplot&&!0)===(t._plots[l].mainplot&&!0)){var o=i.split("y"),s=l.split("y");return o[0]===s[0]?Number(o[1]||1)-Number(s[1]||1):Number(o[0]||1)-Number(s[0]||1)}return t._plots[i].mainplot?1:-1});a.forEach(function(i){var l=t._plots[i],o=l.xaxis,s=l.yaxis;if(!l.mainplot){var u=ri(r,l,o._offset,s._offset,o._length,s._length,"ns","ew");u.onmousemove=function(h){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===i&&r._fullLayout._plots[i]&&Bh.hover(r,h,i)},Bh.hover(r,h,i),r._fullLayout._lasthover=u,r._fullLayout._hoversubplot=i},u.onmouseout=function(h){r._dragging||(r._fullLayout._hoversubplot=null,nK.unhover(r,h))},r._context.showAxisDragHandles&&(ri(r,l,o._offset-ta,s._offset-ta,ta,ta,"n","w"),ri(r,l,o._offset+o._length,s._offset-ta,ta,ta,"n","e"),ri(r,l,o._offset-ta,s._offset+s._length,ta,ta,"s","w"),ri(r,l,o._offset+o._length,s._offset+s._length,ta,ta,"s","e"))}if(r._context.showAxisDragHandles){if(i===o._mainSubplot){var f=o._mainLinePosition;o.side==="top"&&(f-=ta),ri(r,l,o._offset+o._length*.1,f,o._length*.8,ta,"","ew"),ri(r,l,o._offset,f,o._length*.1,ta,"","w"),ri(r,l,o._offset+o._length*.9,f,o._length*.1,ta,"","e")}if(i===s._mainSubplot){var v=s._mainLinePosition;s.side!=="right"&&(v-=ta),ri(r,l,v,s._offset+s._length*.1,ta,s._length*.8,"ns",""),ri(r,l,v,s._offset+s._length*.9,ta,s._length*.1,"s",""),ri(r,l,v,s._offset,ta,s._length*.1,"n","")}}});var n=t._hoverlayer.node();n.onmousemove=function(i){i.target=r._fullLayout._lasthover,Bh.hover(r,i,t._hoversubplot)},n.onclick=function(i){i.target=r._fullLayout._lasthover,Bh.click(r,i)},n.onmousedown=function(i){r._fullLayout._lasthover.onmousedown(i)},Yh.updateFx(r)}};Yh.updateFx=function(e){var r=e._fullLayout,t=r.dragmode==="pan"?"move":"crosshair";iK(r._draggers,t)}});var qk=Z((zue,Lk)=>{"use strict";var Ck=br();Lk.exports=function(r){for(var t=Ck.layoutArrayContainers,a=Ck.layoutArrayRegexes,n=r.split("[")[0],i,l,o=0;o{"use strict";var lK=al(),_g=Av(),Kf=ro(),oK=pp().sorterAsc,wg=br();Qf.containerArrayMatch=qk();var sK=Qf.isAddVal=function(r){return r==="add"||lK(r)},Dk=Qf.isRemoveVal=function(r){return r===null||r==="remove"};Qf.applyContainerArrayChanges=function(r,t,a,n,i){var l=t.astr,o=wg.getComponentMethod(l,"supplyLayoutDefaults"),s=wg.getComponentMethod(l,"draw"),u=wg.getComponentMethod(l,"drawOne"),f=n.replot||n.recalc||o===_g||s===_g,v=r.layout,h=r._fullLayout;if(a[""]){Object.keys(a).length>1&&Kf.warn("Full array edits are incompatible with other edits",l);var d=a[""][""];if(Dk(d))t.set(null);else if(Array.isArray(d))t.set(d);else return Kf.warn("Unrecognized full array edit value",l,d),!0;return f?!1:(o(v,h),s(r),!0)}var m=Object.keys(a).map(Number).sort(oK),g=t.get(),y=g||[],_=i(h,l).get(),w=[],T=-1,b=y.length,M,C,k,q,D,R,z,F;for(M=0;My.length-(z?0:1)){Kf.warn("index out of range",l,k);continue}if(R!==void 0)D.length>1&&Kf.warn("Insertion & removal are incompatible with edits to the same index.",l,k),Dk(R)?w.push(k):z?(R==="add"&&(R={}),y.splice(k,0,R),_&&_.splice(k,0,{})):Kf.warn("Unrecognized full object edit value",l,k,R),T===-1&&(T=k);else for(C=0;C=0;M--)y.splice(w[M],1),_&&_.splice(w[M],1);if(y.length?g||t.set(y):t.set(null),f)return!1;if(o(v,h),u!==_g){var H;if(T===-1)H=m;else{for(b=Math.max(y.length,b),H=[],M=0;M=T));M++)H.push(k);for(M=T;M{"use strict";var Nk=Hr(),Fk=br(),Ia=Ie(),$f=Ft(),Ik=Zt(),Hk=Er(),jf=Ik.cleanId,uK=Ik.getFromTrace,Tg=Fk.traceIs,fK=["x","y","z"];Pn.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&Ia.log("Clearing previous rejected promises from queue."),e._promises=[]};Pn.cleanLayout=function(e){var r,t;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var a=($f.subplotsRegistry.cartesian||{}).attrRegex,n=($f.subplotsRegistry.polar||{}).attrRegex,i=($f.subplotsRegistry.ternary||{}).attrRegex,l=($f.subplotsRegistry.gl3d||{}).attrRegex,o=Object.keys(e);for(r=0;r3?(y.x=1.02,y.xanchor="left"):y.x<-2&&(y.x=-.02,y.xanchor="right"),y.y>3?(y.y=1.02,y.yanchor="bottom"):y.y<-2&&(y.y=-.02,y.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),Hk.clean(e),e.template&&e.template.layout&&Pn.cleanLayout(e.template.layout),e};function iu(e,r){var t=e[r],a=r.charAt(0);t&&t!=="paper"&&(e[r]=jf(t,a,!0))}Pn.cleanData=function(e){for(var r=0;r0)return e.slice(0,r)}Pn.hasParent=function(e,r){for(var t=zk(r);t;){if(t in e)return!0;t=zk(t)}return!1};Pn.clearAxisTypes=function(e,r,t){for(var a=0;a{let t=(...a)=>a.every(n=>Ia.isPlainObject(n))||a.every(n=>Array.isArray(n));if([e,r].every(a=>Array.isArray(a))){if(e.length!==r.length)return!1;for(let a=0;aIa.isPlainObject(a))){if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let a in e){if(a.startsWith("_"))continue;let n=e[a],i=r[a];if(n!==i&&!(t(n,i)?Mg(n,i):!1))return!1}return!0}return!1};Pn.collectionsAreEqual=Mg});var qg=Z(Yr=>{"use strict";var Wh=Ir(),hK=Hr(),dK=Lp(),rr=Ie(),st=rr.nestedProperty,Sg=nf(),Ua=y6(),Rn=br(),jh=Cs(),xr=Ft(),Ha=dt(),pK=$m(),mK=Jn(),Ag=at(),yK=Er(),gK=xg().initInteractions,bK=co(),xK=nu().clearOutline,Gk=eo().dfltConfig,Vh=Ek(),Nt=Ok(),et=Mh(),Sl=pi(),_K=ya().AX_NAME_PATTERN,kg=0,Bk=5;function wK(e,r,t,a){var n;if(e=rr.getGraphDiv(e),Sg.init(e),rr.isPlainObject(r)){var i=r;r=i.data,t=i.layout,a=i.config,n=i.frames}var l=Sg.triggerHandler(e,"plotly_beforeplot",[r,t,a]);if(l===!1)return Promise.reject();!r&&!t&&!rr.isPlotDiv(e)&&rr.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function o(){if(n)return Yr.addFrames(e,n)}Zk(e,a),t||(t={}),Wh.select(e).classed("js-plotly-plot",!0),Ag.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var s=(e.data||[]).length===0&&Array.isArray(r);Array.isArray(r)&&(Nt.cleanData(r),s?e.data=r:e.data.push.apply(e.data,r),e.empty=!1),(!e.layout||s)&&(e.layout=Nt.cleanLayout(t)),xr.supplyDefaults(e);var u=e._fullLayout,f=u._has("cartesian");u._replotting=!0,(s||u._shouldCreateBgLayer)&&(GK(e),u._shouldCreateBgLayer&&delete u._shouldCreateBgLayer),Ag.initGradients(e),Ag.initPatterns(e),s&&Ha.saveShowSpikeInitial(e);var v=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;v&&xr.doCalcdata(e);for(var h=0;h=e.data.length||n<-e.data.length)throw new Error(t+" must be valid indices for gd.data.");if(r.indexOf(n,a+1)>-1||n>=0&&r.indexOf(-e.data.length+n)>-1||n<0&&r.indexOf(e.data.length+n)>-1)throw new Error("each index in "+t+" must be unique.")}}function Xk(e,r,t){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(r)||(r=[r]),Xh(e,r,"currentIndices"),typeof t!="undefined"&&!Array.isArray(t)&&(t=[t]),typeof t!="undefined"&&Xh(e,t,"newIndices"),typeof t!="undefined"&&r.length!==t.length)throw new Error("current and new indices must be of equal length.")}function SK(e,r,t){var a,n;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("traces must be defined.");for(Array.isArray(r)||(r=[r]),a=0;a=0&&f=0&&f0&&typeof q.parts[z]!="string";)z--;var F=q.parts[z],H=q.parts[z-1]+"."+F,O=q.parts.slice(0,z).join("."),J=st(e.layout,O).get(),X=st(a,O).get(),G=q.get();if(D!==void 0){_[k]=D,w[k]=F==="reverse"?D:Zi(G);var I=jh.getLayoutValObject(a,q.parts);if(I&&I.impliedEdits&&D!==null)for(var Y in I.impliedEdits)T(rr.relativeAttr(k,Y),I.impliedEdits[Y]);if(["width","height"].indexOf(k)!==-1)if(D){T("autosize",null);var K=k==="height"?"width":"height";T(K,a[K])}else a[k]=e._initialAutoSize[k];else if(k==="autosize")T("width",D?null:a.width),T("height",D?null:a.height);else if(H.match(aS))C(H),st(a,O+"._inputRange").set(null);else if(H.match(nS)){C(H),st(a,O+"._inputRange").set(null);var Q=st(a,O).get();Q._inputDomain&&(Q._input.domain=Q._inputDomain.slice())}else H.match(DK)&&st(a,O+"._inputDomain").set(null);if(F==="type"){M=J;var ne=X.type==="linear"&&D==="log",me=X.type==="log"&&D==="linear";if(ne||me){if(!M||!M.range)T(O+".autorange",!0);else if(X.autorange)ne&&(M.range=M.range[1]>M.range[0]?[1,2]:[2,1]);else{var de=M.range[0],ke=M.range[1];ne?(de<=0&&ke<=0&&T(O+".autorange",!0),de<=0?de=ke/1e6:ke<=0&&(ke=de/1e6),T(O+".range[0]",Math.log(de)/Math.LN10),T(O+".range[1]",Math.log(ke)/Math.LN10)):(T(O+".range[0]",Math.pow(10,de)),T(O+".range[1]",Math.pow(10,ke)))}Array.isArray(a._subplots.polar)&&a._subplots.polar.length&&a[q.parts[0]]&&q.parts[1]==="radialaxis"&&delete a[q.parts[0]]._subplot.viewInitial["radialaxis.range"],Rn.getComponentMethod("annotations","convertCoords")(e,X,D,T),Rn.getComponentMethod("images","convertCoords")(e,X,D,T)}else T(O+".autorange",!0),T(O+".range",null);st(a,O+"._inputRange").set(null)}else if(F.match(_K)){var re=st(a,k).get(),Ce=(D||{}).type;(!Ce||Ce==="-")&&(Ce="linear"),Rn.getComponentMethod("annotations","convertCoords")(e,re,Ce,T),Rn.getComponentMethod("images","convertCoords")(e,re,Ce,T)}var ce=Vh.containerArrayMatch(k);if(ce){f=ce.array,v=ce.index;var _e=ce.property,se=I||{editType:"calc"};v!==""&&_e===""&&(Vh.isAddVal(D)?w[k]=null:Vh.isRemoveVal(D)?w[k]=(st(t,f).get()||[])[v]:rr.warn("unrecognized full object value",r)),Sl.update(y,se),u[f]||(u[f]={});var ge=u[f][v];ge||(ge=u[f][v]={}),ge[_e]=D,delete r[k]}else F==="reverse"?(J.range?J.range.reverse():(T(O+".autorange",!0),J.range=[1,0]),X.autorange?y.calc=!0:y.plot=!0):(k==="dragmode"&&(D===!1&&G!==!1||D!==!1&&G===!1)||a._has("scatter-like")&&a._has("regl")&&k==="dragmode"&&(D==="lasso"||D==="select")&&!(G==="lasso"||G==="select")?y.plot=!0:I?Sl.update(y,I):y.calc=!0,q.set(D))}}for(f in u){var B=Vh.applyContainerArrayChanges(e,i(t,f),u[f],y,i);B||(y.plot=!0)}for(var $ in b){M=Ha.getFromId(e,$);var U=M&&M._constraintGroup;if(U){y.calc=!0;for(var ye in U)b[ye]||(Ha.getFromId(e,ye)._constraintShrinkable=!0)}}(lS(e)||r.height||r.width)&&(y.plot=!0);var we=a.shapes;for(v=0;v1;)if(a.pop(),t=st(r,a.join(".")+".uirevision").get(),t!==void 0)return t;return r.uirevision}function RK(e,r){for(var t=0;t[O,e._ev.listeners(O)]);i=Yr.newPlot(e,r,t,a).then(()=>{for(let[O,J]of H)J.forEach(X=>e.on(O,X));return Yr.react(e,r,t,a)})}else{e.data=r||[],Nt.cleanData(e.data),e.layout=t||{},Nt.cleanLayout(e.layout),NK(e.data,e.layout,o,s),xr.supplyDefaults(e,{skipUpdateCalc:!0});var v=e._fullData,h=e._fullLayout,d=h.datarevision===void 0,m=h.transition,g=HK(e,s,h,d,m),y=g.newDataRevision,_=IK(e,o,v,d,m,y);if(lS(e)&&(g.layoutReplot=!0),_.calc||g.calc){e.calcdata=void 0;for(var w=Object.getOwnPropertyNames(h),T=0;T(f||e.emit("plotly_react",{config:a,data:r,layout:t}),e))}function IK(e,r,t,a,n,i){var l=r.length===t.length;if(!n&&!l)return{fullReplot:!0,calc:!0};var o=Sl.traceFlags();o.arrays={},o.nChanges=0,o.nChangesAnim=0;var s,u;function f(d){var m=jh.getTraceValObject(u,d);return!u._module.animatable&&m.anim&&(m.anim=!1),m}var v={getValObject:f,flags:o,immutable:a,transition:n,newDataRevision:i,gd:e},h={};for(s=0;s=n.length?n[0]:n[u]:n}function o(u){return Array.isArray(i)?u>=i.length?i[0]:i[u]:i}function s(u,f){var v=0;return function(){if(u&&++v===f)return u()}}return new Promise(function(u,f){function v(){if(a._frameQueue.length!==0){for(;a._frameQueue.length;){var F=a._frameQueue.pop();F.onInterrupt&&F.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function h(F){if(F.length!==0){for(var H=0;Ha._timeToNext&&m()};F()}var y=0;function _(F){return Array.isArray(n)?y>=n.length?F.transitionOpts=n[y]:F.transitionOpts=n[0]:F.transitionOpts=n,y++,F}var w,T,b=[],M=r==null,C=Array.isArray(r),k=!M&&!C&&rr.isPlainObject(r);if(k)b.push({type:"object",data:_(rr.extendFlat({},r))});else if(M||["string","number"].indexOf(typeof r)!==-1)for(w=0;w0&&RR)&&z.push(T);b=z}}b.length>0?h(b):(e.emit("plotly_animated"),u())})}function BK(e,r,t){if(e=rr.getGraphDiv(e),r==null)return Promise.resolve();if(!rr.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var a,n,i,l,o=e._transitionData._frames,s=e._transitionData._frameHash;if(!Array.isArray(r))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+r);var u=o.length+r.length*2,f=[],v={};for(a=r.length-1;a>=0;a--)if(rr.isPlainObject(r[a])){var h=r[a].name,d=(s[h]||v[h]||{}).name,m=r[a].name,g=s[d]||v[d];d&&m&&typeof m=="number"&&g&&kgq.index?-1:k.index=0;a--){if(n=f[a].frame,typeof n.name=="number"&&rr.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!n.name)for(;s[n.name="frame "+e._transitionData._counter++];);if(s[n.name]){for(i=0;i=0;t--)a=r[t],i.push({type:"delete",index:a}),l.unshift({type:"insert",index:a,value:n[a]});var o=xr.modifyFrames,s=xr.modifyFrames,u=[e,l],f=[e,i];return Ua&&Ua.add(e,o,u,s,f),xr.modifyFrames(e,i)}function UK(e){e=rr.getGraphDiv(e);var r=e._fullLayout||{},t=e._fullData||[];return xr.cleanPlot([],{},t,r),xr.purge(e),Sg.purge(e),r._container&&r._container.remove(),delete e._context,e}function VK(e){var r=e._fullLayout,t=e.getBoundingClientRect();if(!rr.equalDomRects(t,r._lastBBox)){var a=r._invTransform=rr.inverseTransformMatrix(rr.getFullTransformMatrix(e));r._invScaleX=Math.sqrt(a[0][0]*a[0][0]+a[0][1]*a[0][1]+a[0][2]*a[0][2]),r._invScaleY=Math.sqrt(a[1][0]*a[1][0]+a[1][1]*a[1][1]+a[1][2]*a[1][2]),r._lastBBox=t}}function GK(e){var r=Wh.select(e),t=e._fullLayout;if(t._calcInverseTransform=VK,t._calcInverseTransform(e),t._container=r.selectAll(".plot-container").data([0]),t._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),t._paperdiv=t._container.selectAll(".svg-container").data([0]),t._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),t._glcontainer=t._paperdiv.selectAll(".gl-container").data([{}]),t._glcontainer.enter().append("div").classed("gl-container",!0),t._paperdiv.selectAll(".main-svg").remove(),t._paperdiv.select(".modebar-container").remove(),t._paper=t._paperdiv.insert("svg",":first-child").classed("main-svg",!0),t._toppaper=t._paperdiv.append("svg").classed("main-svg",!0),t._modebardiv=t._paperdiv.append("div"),delete t._modeBar,t._hoverpaper=t._paperdiv.append("svg").classed("main-svg",!0),!t._uid){var a={};Wh.selectAll("defs").each(function(){this.id&&(a[this.id.split("-")[1]]=1)}),t._uid=rr.randstr(a)}t._paperdiv.selectAll(".main-svg").attr(bK.svgAttrs),t._defs=t._paper.append("defs").attr("id","defs-"+t._uid),t._clips=t._defs.append("g").classed("clips",!0),t._topdefs=t._toppaper.append("defs").attr("id","topdefs-"+t._uid),t._topclips=t._topdefs.append("g").classed("clips",!0),t._bgLayer=t._paper.append("g").classed("bglayer",!0),t._draggers=t._paper.append("g").classed("draglayer",!0);var n=t._paper.append("g").classed("layer-below",!0);t._imageLowerLayer=n.append("g").classed("imagelayer",!0),t._shapeLowerLayer=n.append("g").classed("shapelayer",!0),t._cartesianlayer=t._paper.append("g").classed("cartesianlayer",!0),t._polarlayer=t._paper.append("g").classed("polarlayer",!0),t._smithlayer=t._paper.append("g").classed("smithlayer",!0),t._ternarylayer=t._paper.append("g").classed("ternarylayer",!0),t._geolayer=t._paper.append("g").classed("geolayer",!0),t._funnelarealayer=t._paper.append("g").classed("funnelarealayer",!0),t._pielayer=t._paper.append("g").classed("pielayer",!0),t._iciclelayer=t._paper.append("g").classed("iciclelayer",!0),t._treemaplayer=t._paper.append("g").classed("treemaplayer",!0),t._sunburstlayer=t._paper.append("g").classed("sunburstlayer",!0),t._indicatorlayer=t._toppaper.append("g").classed("indicatorlayer",!0),t._glimages=t._paper.append("g").classed("glimages",!0);var i=t._toppaper.append("g").classed("layer-above",!0);t._imageUpperLayer=i.append("g").classed("imagelayer",!0),t._shapeUpperLayer=i.append("g").classed("shapelayer",!0),t._selectionLayer=t._toppaper.append("g").classed("selectionlayer",!0),t._infolayer=t._toppaper.append("g").classed("infolayer",!0),t._menulayer=t._toppaper.append("g").classed("menulayer",!0),t._zoomlayer=t._toppaper.append("g").classed("zoomlayer",!0),t._hoverlayer=t._hoverpaper.append("g").classed("hoverlayer",!0),t._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}Yr.animate=OK;Yr.addFrames=BK;Yr.deleteFrames=YK;Yr.addTraces=jk;Yr.deleteTraces=eS;Yr.extendTraces=Qk;Yr.moveTraces=Cg;Yr.prependTraces=$k;Yr.newPlot=kK;Yr._doPlot=wK;Yr.purge=UK;Yr.react=FK;Yr.redraw=AK;Yr.relayout=ec;Yr.restyle=Jh;Yr.setPlotConfig=TK;Yr.update=Qh;Yr._guiRelayout=Lg(ec);Yr._guiRestyle=Lg(Jh);Yr._guiUpdate=Lg(Qh);Yr._storeDirectGUIEdit=qK});var Eo=Z(Li=>{"use strict";var WK=br();Li.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Li.getRedrawFunc=function(e){return function(){WK.getComponentMethod("colorbar","draw")(e)}};Li.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Li.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var oS=window.URL||window.webkitURL;Li.createObjectURL=function(e){return oS.createObjectURL(e)};Li.revokeObjectURL=function(e){return oS.revokeObjectURL(e)};Li.createBlob=function(e,r){if(r==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(r==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var t=ZK(window.atob(e));return new window.Blob([t],{type:"image/"+r})};Li.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function ZK(e){for(var r=e.length,t=new ArrayBuffer(r),a=new Uint8Array(t),n=0;n{"use strict";var Eg=Ir(),Oue=Ie(),XK=at(),JK=Er(),Bue=co(),Dg=/"/g,tc="TOBESTRIPPED",KK=new RegExp('("'+tc+")|("+tc+'")',"g");function QK(e){var r=Eg.select("body").append("div").style({display:"none"}).html(""),t=e.replace(/(&[^;]*;)/gi,function(a){return a==="<"?"<":a==="&rt;"?">":a.indexOf("<")!==-1||a.indexOf(">")!==-1?"":r.html(a).text()});return r.remove(),t}function $K(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}sS.exports=function(r,t,a){var n=r._fullLayout,i=n._paper,l=n._toppaper,o=n.width,s=n.height,u;i.insert("rect",":first-child").call(XK.setRect,0,0,o,s).call(JK.fill,n.paper_bgcolor);var f=n._basePlotModules||[];for(u=0;u{"use strict";var jK=Ie(),eQ=Gv().EventEmitter,ac=Eo();function rQ(e){var r=e.emitter||new eQ,t=new Promise(function(a,n){var i=window.Image,l=e.svg,o=e.format||"png",s=e.canvas,u=e.scale||1,f=e.width||300,v=e.height||150,h=u*f,d=u*v,m=s.getContext("2d",{willReadFrequently:!0}),g=new i,y,_;o==="svg"||jK.isSafari()?_=ac.encodeSVG(l):(y=ac.createBlob(l,"svg"),_=ac.createObjectURL(y)),s.width=h,s.height=d,g.onload=function(){var w;switch(y=null,ac.revokeObjectURL(_),o!=="svg"&&m.drawImage(g,0,0,h,d),o){case"jpeg":w=s.toDataURL("image/jpeg");break;case"png":w=s.toDataURL("image/png");break;case"webp":w=s.toDataURL("image/webp");break;case"svg":w=_;break;default:var T="Image format is not jpeg, png, svg or webp.";if(n(new Error(T)),!e.promise)return r.emit("error",T)}a(w),e.promise||r.emit("success",w)},g.onerror=function(w){if(y=null,ac.revokeObjectURL(_),n(w),!e.promise)return r.emit("error",w)},g.src=_});return e.promise?t:r}uS.exports=rQ});var Rg=Z((Vue,vS)=>{"use strict";var fS=Hr(),cS=qg(),tQ=Ft(),qi=Ie(),nc=Eo(),aQ=rd(),nQ=td(),iQ=sv().version,Pg={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function lQ(e,r){r=r||{};var t,a,n,i;qi.isPlainObject(e)?(t=e.data||[],a=e.layout||{},n=e.config||{},i={}):(e=qi.getGraphDiv(e),t=qi.extendDeep([],e.data),a=qi.extendDeep({},e.layout),n=e._context,i=e._fullLayout||{});function l(C){return!(C in r)||qi.validate(r[C],Pg[C])}if(!l("width")&&r.width!==null||!l("height")&&r.height!==null)throw new Error("Height and width should be pixel values.");if(!l("format"))throw new Error("Export format is not "+qi.join2(Pg.format.values,", "," or ")+".");var o={};function s(C,k){return qi.coerce(r,o,Pg,C,k)}var u=s("format"),f=s("width"),v=s("height"),h=s("scale"),d=s("setBackground"),m=s("imageDataOnly"),g=document.createElement("div");g.style.position="absolute",g.style.left="-5000px",document.body.appendChild(g);var y=qi.extendFlat({},a);f?y.width=f:r.width===null&&fS(i.width)&&(y.width=i.width),v?y.height=v:r.height===null&&fS(i.height)&&(y.height=i.height);var _=qi.extendFlat({},n,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),w=nc.getRedrawFunc(g);function T(){return new Promise(function(C){setTimeout(C,nc.getDelay(g._fullLayout))})}function b(){return new Promise(function(C,k){var q=aQ(g,u,h),D=g._fullLayout.width,R=g._fullLayout.height;function z(){cS.purge(g),document.body.removeChild(g)}if(u==="full-json"){var F=tQ.graphJson(g,!1,"keepdata","object",!0,!0);return F.version=iQ,F=JSON.stringify(F),z(),C(m?F:nc.encodeJSON(F))}if(z(),u==="svg")return C(m?q:nc.encodeSVG(q));var H=document.createElement("canvas");H.id=qi.randstr(),nQ({format:u,width:D,height:R,scale:h,canvas:H,svg:q,promise:!0}).then(C).catch(k)})}function M(C){return m?C.replace(nc.IMAGE_URL_PREFIX,""):C}return new Promise(function(C,k){cS.newPlot(g,t,y,_).then(w).then(T).then(b).then(function(q){C(M(q))}).catch(function(q){k(q)})})}vS.exports=lQ});var pS=Z((Gue,dS)=>{"use strict";var zn=Ie(),oQ=Ft(),sQ=Cs(),uQ=eo().dfltConfig,ti=zn.isPlainObject,Ro=Array.isArray,zg=zn.isArrayOrTypedArray;dS.exports=function(r,t){r===void 0&&(r=[]),t===void 0&&(t={});var a=sQ.get(),n=[],i={_context:zn.extendFlat({},uQ)},l,o;Ro(r)?(i.data=zn.extendDeep([],r),l=r):(i.data=[],l=[],n.push(aa("array","data"))),ti(t)?(i.layout=zn.extendDeep({},t),o=t):(i.layout={},o={},arguments.length>1&&n.push(aa("object","layout"))),oQ.supplyDefaults(i);for(var s=i._fullData,u=l.length,f=0;fv.length&&a.push(aa("unused",n,u.concat(v.length)));var _=v.length,w=Array.isArray(y);w&&(_=Math.min(_,y.length));var T,b,M,C,k;if(h.dimensions===2)for(b=0;b<_;b++)if(Ro(f[b])){f[b].length>v[b].length&&a.push(aa("unused",n,u.concat(b,v[b].length)));var q=v[b].length;for(T=0;T<(w?Math.min(q,y[b].length):q);T++)M=w?y[b][T]:y,C=f[b][T],k=v[b][T],zn.validate(C,M)?k!==C&&k!==+C&&a.push(aa("dynamic",n,u.concat(b,T),C,k)):a.push(aa("value",n,u.concat(b,T),C))}else a.push(aa("array",n,u.concat(b),f[b]));else for(b=0;b<_;b++)M=w?y[b]:y,C=f[b],k=v[b],zn.validate(C,M)?k!==C&&k!==+C&&a.push(aa("dynamic",n,u.concat(b),C,k)):a.push(aa("value",n,u.concat(b),C))}else if(h.items&&!m&&Ro(f)){var D=y[Object.keys(y)[0]],R=[],z,F;for(z=0;z{"use strict";var mQ=Ie(),nd=Eo();function yQ(e,r,t){var a=document.createElement("a"),n="download"in a,i=new Promise(function(l,o){var s,u;if(n)return s=nd.createBlob(e,t),u=nd.createObjectURL(s),a.href=u,a.download=r,document.body.appendChild(a),a.click(),document.body.removeChild(a),nd.revokeObjectURL(u),s=null,l(r);if(mQ.isSafari()){var f=t==="svg"?",":";base64,";return nd.octetStream(f+encodeURIComponent(e)),l(r)}o(new Error("download error"))});return i}mS.exports=yQ});var Ng=Z((Xue,bS)=>{"use strict";var gS=Ie(),gQ=Rg(),bQ=yS(),Zue=Eo();function xQ(e,r){var t;return gS.isPlainObject(e)||(t=gS.getGraphDiv(e)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(a,n){t&&t._snapshotInProgress&&n(new Error("Snapshotting already in progress.")),t&&(t._snapshotInProgress=!0);var i=gQ(e,r),l=r.filename||e.fn||"newplot";l+="."+r.format.replace("-","."),i.then(function(o){return t&&(t._snapshotInProgress=!1),bQ(o,l,r.format)}).then(function(o){a(o)}).catch(function(o){t&&(t._snapshotInProgress=!1),n(o)})})}bS.exports=xQ});var MS=Z(Fg=>{"use strict";var en=Ie(),rn=en.isPlainObject,xS=Cs(),_S=Ft(),_Q=Vn(),wS=ct(),TS=eo().dfltConfig;Fg.makeTemplate=function(e){e=en.isPlainObject(e)?e:en.getGraphDiv(e),e=en.extendDeep({_context:TS},{data:e.data,layout:e.layout}),_S.supplyDefaults(e);var r=e.data||[],t=e.layout||{};t._basePlotModules=e._fullLayout._basePlotModules,t._modules=e._fullLayout._modules;var a={data:{},layout:{}};r.forEach(function(d){var m={};ic(d,m,TQ.bind(null,d));var g=en.coerce(d,{},_Q,"type"),y=a.data[g];y||(y=a.data[g]=[]),y.push(m)}),ic(t,a.layout,wQ.bind(null,t)),delete a.layout.template;var n=t.template;if(rn(n)){var i=n.layout,l,o,s,u,f,v;rn(i)&&id(i,a.layout);var h=n.data;if(rn(h)){for(o in a.data)if(s=h[o],Array.isArray(s)){for(f=a.data[o],v=f.length,u=s.length,l=0;l_?l.push({code:"unused",traceType:d,templateCount:y,dataCount:_}):_>y&&l.push({code:"reused",traceType:d,templateCount:y,dataCount:_})}}function w(T,b){for(var M in T)if(M.charAt(0)!=="_"){var C=T[M],k=Nn(T,M,b);rn(C)?(Array.isArray(T)&&C._template===!1&&C.templateitemname&&l.push({code:"missing",path:k,templateitemname:C.templateitemname}),w(C,k)):Array.isArray(C)&&MQ(C)&&w(C,k)}}if(w({data:s,layout:o},""),l.length)return l.map(AQ)};function MQ(e){for(var r=0;r{"use strict";var Jt=qg();mt._doPlot=Jt._doPlot;mt.newPlot=Jt.newPlot;mt.restyle=Jt.restyle;mt.relayout=Jt.relayout;mt.redraw=Jt.redraw;mt.update=Jt.update;mt._guiRestyle=Jt._guiRestyle;mt._guiRelayout=Jt._guiRelayout;mt._guiUpdate=Jt._guiUpdate;mt._storeDirectGUIEdit=Jt._storeDirectGUIEdit;mt.react=Jt.react;mt.extendTraces=Jt.extendTraces;mt.prependTraces=Jt.prependTraces;mt.addTraces=Jt.addTraces;mt.deleteTraces=Jt.deleteTraces;mt.moveTraces=Jt.moveTraces;mt.purge=Jt.purge;mt.addFrames=Jt.addFrames;mt.deleteFrames=Jt.deleteFrames;mt.animate=Jt.animate;mt.setPlotConfig=Jt.setPlotConfig;var kQ=Ku().getGraphDiv,SQ=yh().eraseActiveShape;mt.deleteActiveShape=function(e){return SQ(kQ(e))};mt.toImage=Rg();mt.validate=pS();mt.downloadImage=Ng();var AS=MS();mt.makeTemplate=AS.makeTemplate;mt.validateTemplate=AS.validateTemplate});var Hg=Z((Que,SS)=>{"use strict";var Ig=Ie(),CQ=br();SS.exports=function(r,t,a,n){var i=n("x"),l=n("y"),o,s=CQ.getComponentMethod("calendars","handleTraceDefaults");if(s(r,t,["x","y"],a),i){var u=Ig.minRowLength(i);l?o=Math.min(u,Ig.minRowLength(l)):(o=u,n("y0"),n("dy"))}else{if(!l)return 0;o=Ig.minRowLength(l),n("x0"),n("dx")}return t._length=o,o}});var Og=Z(($ue,qS)=>{"use strict";var CS=Ie().dateTick0,LQ=Vt(),qQ=LQ.ONEWEEK;function LS(e,r){return e%qQ===0?CS(r,1):CS(r,0)}qS.exports=function(r,t,a,n,i){if(i||(i={x:!0,y:!0}),i.x){var l=n("xperiod");l&&(n("xperiod0",LS(l,t.xcalendar)),n("xperiodalignment"))}if(i.y){var o=n("yperiod");o&&(n("yperiod0",LS(o,t.ycalendar)),n("yperiodalignment"))}}});var PS=Z((jue,ES)=>{"use strict";var DS=["orientation","groupnorm","stackgaps"];ES.exports=function(r,t,a,n){var i=a._scatterStackOpts,l=n("stackgroup");if(l){var o=t.xaxis+t.yaxis,s=i[o];s||(s=i[o]={});var u=s[l],f=!1;u?u.traces.push(t):(u=s[l]={traceIndices:[],traces:[t]},f=!0);for(var v={orientation:t.x&&!t.y?"h":"v"},h=0;h{"use strict";var RS=Er(),zS=Mn().hasColorscale,NS=Es(),DQ=ln();FS.exports=function(r,t,a,n,i,l){var o=DQ.isBubble(r),s=(r.line||{}).color,u;if(l=l||{},s&&(a=s),i("marker.symbol"),i("marker.opacity",o?.7:1),i("marker.size"),l.noAngle||(i("marker.angle"),l.noAngleRef||i("marker.angleref"),l.noStandOff||i("marker.standoff")),i("marker.color",a),zS(r,"marker")&&NS(r,t,n,i,{prefix:"marker.",cLetter:"c"}),l.noSelect||(i("selected.marker.color"),i("unselected.marker.color"),i("selected.marker.size"),i("unselected.marker.size")),l.noLine||(s&&!Array.isArray(s)&&t.marker.color!==s?u=s:o?u=RS.background:u=RS.defaultLine,i("marker.line.color",u),zS(r,"marker.line")&&NS(r,t,n,i,{prefix:"marker.line.",cLetter:"c"}),i("marker.line.width",o?1:0)),o&&(i("marker.sizeref"),i("marker.sizemin"),i("marker.sizemode")),l.gradient){var f=i("marker.gradient.type");f!=="none"&&i("marker.gradient.color")}}});var OS=Z((rfe,HS)=>{"use strict";var EQ=Ie().isArrayOrTypedArray,PQ=Mn().hasColorscale,RQ=Es();HS.exports=function(r,t,a,n,i,l){l||(l={});var o=(r.marker||{}).color;if(o&&o._inputArray&&(o=o._inputArray),i("line.color",a),PQ(r,"line"))RQ(r,t,n,i,{prefix:"line.",cLetter:"c"});else{var s=(EQ(o)?!1:o)||a;i("line.color",s)}i("line.width"),l.noDash||i("line.dash"),l.backoff&&i("line.backoff")}});var YS=Z((tfe,BS)=>{"use strict";BS.exports=function(r,t,a){var n=a("line.shape");n==="spline"&&a("line.smoothing")}});var VS=Z((afe,US)=>{"use strict";var zQ=Ie();US.exports=function(e,r,t,a,n){n=n||{},a("textposition"),zQ.coerceFont(a,"textfont",n.font||t.font,n),n.noSelect||(a("selected.textfont.color"),a("unselected.textfont.color"))}});var ZS=Z((nfe,WS)=>{"use strict";var od=Er(),GS=Ie().isArrayOrTypedArray;function NQ(e){for(var r=od.interpolate(e[0][1],e[1][1],.5),t=2;t{"use strict";var XS=Ie(),FQ=br(),IQ=Do(),HQ=Rh(),lu=ln(),OQ=Hg(),BQ=Og(),YQ=PS(),UQ=IS(),VQ=OS(),JS=YS(),GQ=VS(),WQ=ZS(),ZQ=Ie().coercePattern;KS.exports=function(r,t,a,n){function i(d,m){return XS.coerce(r,t,IQ,d,m)}var l=OQ(r,t,n,i);if(l||(t.visible=!1),!!t.visible){BQ(r,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder");var o=YQ(r,t,n,i);n.scattermode==="group"&&t.orientation===void 0&&i("orientation","v");var s=!o&&l{"use strict";var XQ=Df().getAxisGroup;$S.exports=function(r,t,a,n,i){var l=t.orientation,o=t[{v:"x",h:"y"}[l]+"axis"],s=XQ(a,o)+l,u=a._alignmentOpts||{},f=n("alignmentgroup"),v=u[s];v||(v=u[s]={});var h=v[f];h?h.traces.push(t):h=v[f]={traces:[t],alignmentIndex:Object.keys(v).length,offsetGroups:{}};var d=n("offsetgroup")||"",m=h.offsetGroups,g=m[d];t._offsetIndex=0,(i!=="group"||d)&&(g||(g=m[d]={offsetIndex:Object.keys(m).length}),t._offsetIndex=g.offsetIndex)}});var eC=Z((ofe,jS)=>{"use strict";var JQ=Ie(),KQ=Bg(),QQ=Do();jS.exports=function(r,t){var a,n,i,l=t.scattermode;function o(h){return JQ.coerce(n._input,n,QQ,h)}if(t.scattermode==="group")for(i=0;i=0;f--){var v=r[f];if(v.type==="scatter"&&v.xaxis===s.xaxis&&v.yaxis===s.yaxis){v.opacity=void 0;break}}}}}});var tC=Z((sfe,rC)=>{"use strict";var $Q=Ie(),jQ=Kv();rC.exports=function(e,r){function t(n,i){return $Q.coerce(e,r,jQ,n,i)}var a=r.barmode==="group";r.scattermode==="group"&&t("scattergap",a?r.bargap:.2)}});var Yg=Z((ufe,nC)=>{"use strict";var e$=Hr(),aC=Ie(),r$=aC.dateTime2ms,sd=aC.incrementMonth,t$=Vt(),a$=t$.ONEAVGMONTH;nC.exports=function(r,t,a,n){if(t.type!=="date")return{vals:n};var i=r[a+"periodalignment"];if(!i)return{vals:n};var l=r[a+"period"],o;if(e$(l)){if(l=+l,l<=0)return{vals:n}}else if(typeof l=="string"&&l.charAt(0)==="M"){var s=+l.substring(1);if(s>0&&Math.round(s)===s)o=s;else return{vals:n}}for(var u=t.calendar,f=i==="start",v=i==="end",h=r[a+"period0"],d=r$(h,u)||0,m=[],g=[],y=[],_=n.length,w=0;w<_;w++){var T=n[w],b,M,C;if(o){for(b=Math.round((T-d)/(o*a$)),C=sd(d,o*b,u);C>T;)C=sd(C,-o,u);for(;C<=T;)C=sd(C,o,u);M=sd(C,-o,u)}else{for(b=Math.round((T-d)/l),C=d+b*l;C>T;)C-=l;for(;C<=T;)C+=l;M=C-l}m[w]=f?M:v?C:(M+C)/2,g[w]=M,y[w]=C}return{vals:m,starts:g,ends:y}}});var oC=Z((ffe,lC)=>{"use strict";var Ug=Mn().hasColorscale,Vg=s0(),iC=ln();lC.exports=function(r,t){iC.hasLines(t)&&Ug(t,"line")&&Vg(r,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),iC.hasMarkers(t)&&(Ug(t,"marker")&&Vg(r,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),Ug(t,"marker.line")&&Vg(r,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var Gg=Z((cfe,sC)=>{"use strict";var Ct=Ie();sC.exports=function(r,t){for(var a=0;a{"use strict";var uC=Ie();fC.exports=function(r,t){uC.isArrayOrTypedArray(t.selectedpoints)&&uC.tagSelected(r,t)}});var Qg=Z((hfe,yC)=>{"use strict";var cC=Hr(),Xg=Ie(),lc=dt(),vC=Yg(),Zg=Vt().BADNUM,Jg=ln(),n$=oC(),i$=Gg(),l$=Wg();function o$(e,r){var t=e._fullLayout,a=r._xA=lc.getFromId(e,r.xaxis||"x","x"),n=r._yA=lc.getFromId(e,r.yaxis||"y","y"),i=a.makeCalcdata(r,"x"),l=n.makeCalcdata(r,"y"),o=vC(r,a,"x",i),s=vC(r,n,"y",l),u=o.vals,f=s.vals,v=r._length,h=new Array(v),d=r.ids,m=Kg(r,t,a,n),g=!1,y,_,w,T,b,M;pC(t,r);var C="x",k="y",q;if(m)Xg.pushUnique(m.traceIndices,r.index),y=m.orientation==="v",y?(k="s",q="x"):(C="s",q="y"),b=m.stackgaps==="interpolate";else{var D=dC(r,v);hC(e,r,a,n,u,f,D)}var R=!!r.xperiodalignment,z=!!r.yperiodalignment;for(_=0;__&&h[T].gap;)T--;for(M=h[T].s,w=h.length-1;w>T;w--)h[w].s=M;for(;_{"use strict";gC.exports=ud;var s$=Ie().distinctVals;function ud(e,r){this.traces=e,this.sepNegVal=r.sepNegVal,this.overlapNoMerge=r.overlapNoMerge;for(var t=1/0,a=r.posAxis._id.charAt(0),n=[],i=0;i{"use strict";var Fn=Hr(),Cl=Ie().isArrayOrTypedArray,ou=Vt().BADNUM,u$=br(),oc=dt(),f$=Df().getAxisGroup,fd=bC();function c$(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,l=e.calcdata,o=[],s=[],u=0;us+l||!Fn(o))}for(var f=0;f{"use strict";var MC=Qg(),AC=t2().setGroupPositions;function T$(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,l=e.calcdata,o=[],s=[],u=0;uD[f]&&f{"use strict";var A$=at(),DC=Vt(),sc=DC.BADNUM,EC=DC.LOG_CLIP,CC=EC+.5,LC=EC-.5,cd=Ie(),k$=cd.segmentsIntersect,qC=cd.constrain,n2=Rh();PC.exports=function(r,t){var a=t.trace||{},n=t.xaxis,i=t.yaxis,l=n.type==="log",o=i.type==="log",s=n._length,u=i._length,f=t.backoff,v=a.marker,h=t.connectGaps,d=t.baseTolerance,m=t.shape,g=m==="linear",y=a.fill&&a.fill!=="none",_=[],w=n2.minTolerance,T=r.length,b=new Array(T),M=0,C,k,q,D,R,z,F,H,O,J,X,G,I,Y,K,Q;function ne(ze){var ae=r[ze];if(!ae)return!1;var le=t.linearized?n.l2p(ae.x):n.c2p(ae.x),Le=t.linearized?i.l2p(ae.y):i.c2p(ae.y);if(le===sc){if(l&&(le=n.c2p(ae.x,!0)),le===sc)return!1;o&&Le===sc&&(le*=Math.abs(n._m*u*(n._m>0?CC:LC)/(i._m*s*(i._m>0?CC:LC)))),le*=1e3}if(Le===sc){if(o&&(Le=i.c2p(ae.y,!0)),Le===sc)return!1;Le*=1e3}return[le,Le]}function me(ze,ae,le,Le){var De=le-ze,ar=Le-ae,cr=.5-ze,sr=.5-ae,Mr=De*De+ar*ar,Br=De*cr+ar*sr;if(Br>0&&Br1||Math.abs(cr.y-le[0][1])>1)&&(cr=[cr.x,cr.y],Le&&Ce(cr,ze)se||ze[1]B)return[qC(ze[0],_e,se),qC(ze[1],ge,B)]}function Be(ze,ae){if(ze[0]===ae[0]&&(ze[0]===_e||ze[0]===se)||ze[1]===ae[1]&&(ze[1]===ge||ze[1]===B))return!0}function Ge(ze,ae){var le=[],Le=Ne(ze),De=Ne(ae);return Le&&De&&Be(Le,De)||(Le&&le.push(Le),De&&le.push(De)),le}function qe(ze,ae,le){return function(Le,De){var ar=Ne(Le),cr=Ne(De),sr=[];if(ar&&cr&&Be(ar,cr))return sr;ar&&sr.push(ar),cr&&sr.push(cr);var Mr=2*cd.constrain((Le[ze]+De[ze])/2,ae,le)-((ar||Le)[ze]+(cr||De)[ze]);if(Mr){var Br;ar&&cr?Br=Mr>0==ar[ze]>cr[ze]?ar:cr:Br=ar||cr,Br[ze]+=Mr}return sr}}var He;m==="linear"||m==="spline"?He=Ee:m==="hv"||m==="vh"?He=Ge:m==="hvh"?He=qe(0,_e,se):m==="vhv"&&(He=qe(1,ge,B));function Ye(ze,ae){var le=ae[0]-ze[0],Le=(ae[1]-ze[1])/le,De=(ze[1]*ae[0]-ae[1]*ze[0])/le;return De>0?[Le>0?_e:se,B]:[Le>0?se:_e,ge]}function ie(ze){var ae=ze[0],le=ze[1],Le=ae===b[M-1][0],De=le===b[M-1][1];if(!(Le&&De))if(M>1){var ar=ae===b[M-2][0],cr=le===b[M-2][1];Le&&(ae===_e||ae===se)&&ar?cr?M--:b[M-1]=ze:De&&(le===ge||le===B)&&cr?ar?M--:b[M-1]=ze:b[M++]=ze}else b[M++]=ze}function be(ze){b[M-1][0]!==ze[0]&&b[M-1][1]!==ze[1]&&ie([we,pe]),ie(ze),Re=null,we=pe=0}var Ke=cd.isArrayOrTypedArray(v);function hr(ze){if(ze&&f&&(ze.i=C,ze.d=r,ze.trace=a,ze.marker=Ke?v[ze.i]:v,ze.backoff=f),de=ze[0]/s,ke=ze[1]/u,U=ze[0]<_e?_e:ze[0]>se?se:0,ye=ze[1]B?B:0,U||ye){if(!M)b[M++]=[U||ze[0],ye||ze[1]];else if(Re){var ae=He(Re,ze);ae.length>1&&(be(ae[0]),b[M++]=ae[1])}else Fe=He(b[M-1],ze)[0],b[M++]=Fe;var le=b[M-1];U&&ye&&(le[0]!==U||le[1]!==ye)?(Re&&(we!==U&&pe!==ye?ie(we&&pe?Ye(Re,ze):[we||U,pe||ye]):we&&pe&&ie([we,pe])),ie([U,ye])):we-U&&pe-ye&&ie([U||we,ye||pe]),Re=ze,we=U,pe=ye}else Re&&be(He(Re,ze)[0]),b[M++]=ze}for(C=0;Cre(z,Pe))break;q=z,I=O[0]*H[0]+O[1]*H[1],I>X?(X=I,D=z,F=!1):I=r.length||!z)break;hr(z),k=z}}Re&&ie([we||Re[0],pe||Re[1]]),_.push(b.slice(0,M))}var Me=m.slice(m.length-1);if(f&&Me!=="h"&&Me!=="v"){for(var Se=!1,Oe=-1,Je=[],We=0;We<_.length;We++)for(var Ze=0;Ze<_[We].length-1;Ze++){var lr=_[We][Ze],tr=_[We][Ze+1],Qe=A$.applyBackoff(tr,lr);(Qe[0]!==tr[0]||Qe[1]!==tr[1])&&(Se=!0),Je[Oe+1]||(Oe++,Je[Oe]=[lr,[Qe[0],Qe[1]]])}return Se?Je:_}return _}});var FC=Z((gfe,NC)=>{"use strict";var zC={tonextx:1,tonexty:1,tonext:1};NC.exports=function(r,t,a){var n,i,l,o,s,u={},f=!1,v=-1,h=0,d=-1;for(i=0;i=0?s=d:(s=d=h,h++),s{"use strict";var ai=Ir(),S$=br(),uc=Ie(),uu=uc.ensureSingle,HC=uc.identity,Lt=at(),fu=ln(),C$=RC(),L$=FC(),vd=eg().tester;OC.exports=function(r,t,a,n,i,l){var o,s,u=!i,f=!!i&&i.duration>0,v=L$(r,t,a);if(o=n.selectAll("g.trace").data(v,function(d){return d[0].trace.uid}),o.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),o.order(),q$(r,o,t),f){l&&(s=l());var h=ai.transition().duration(i.duration).ease(i.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});h.each(function(){n.selectAll("g.trace").each(function(d,m){IC(r,m,t,d,v,this,i)})})}else o.each(function(d,m){IC(r,m,t,d,v,this,i)});u&&o.exit().remove(),n.selectAll("path:not([d])").remove()};function q$(e,r,t){r.each(function(a){var n=uu(ai.select(this),"g","fills");Lt.setClipUrl(n,t.layerClipId,e);var i=a[0].trace,l=[];i._ownfill&&l.push("_ownFill"),i._nexttrace&&l.push("_nextFill");var o=n.selectAll("g").data(l,HC);o.enter().append("g"),o.exit().each(function(s){i[s]=null}).remove(),o.order().each(function(s){i[s]=uu(ai.select(this),"path","js-fill")})})}function IC(e,r,t,a,n,i,l){var o=e._context.staticPlot,s;D$(e,r,t,a,n);var u=!!l&&l.duration>0;function f(qe){return u?qe.transition():qe}var v=t.xaxis,h=t.yaxis,d=a[0].trace,m=d.line,g=ai.select(i),y=uu(g,"g","errorbars"),_=uu(g,"g","lines"),w=uu(g,"g","points"),T=uu(g,"g","text");if(S$.getComponentMethod("errorbars","plot")(e,y,t,l),d.visible!==!0)return;f(g).style("opacity",d.opacity);var b,M,C=d.fill.charAt(d.fill.length-1);C!=="x"&&C!=="y"&&(C="");var k,q;C==="y"?(k=1,q=h.c2p(0,!0)):C==="x"&&(k=0,q=v.c2p(0,!0)),a[0][t.isRangePlot?"nodeRangePlot3":"node3"]=g;var D="",R=[],z=d._prevtrace,F=null,H=null;z&&(D=z._prevRevpath||"",M=z._nextFill,R=z._ownPolygons,F=z._fillsegments,H=z._fillElement);var O,J,X="",G="",I,Y,K,Q,ne,me,de=[];d._polygons=[];var ke=[],re=[],Ce=uc.noop;if(b=d._ownFill,fu.hasLines(d)||d.fill!=="none"){M&&M.datum(a),["hv","vh","hvh","vhv"].indexOf(m.shape)!==-1?(I=Lt.steps(m.shape),Y=Lt.steps(m.shape.split("").reverse().join(""))):m.shape==="spline"?I=Y=function(qe){var He=qe[qe.length-1];return qe.length>1&&qe[0][0]===He[0]&&qe[0][1]===He[1]?Lt.smoothclosed(qe.slice(1),m.smoothing):Lt.smoothopen(qe,m.smoothing)}:I=Y=function(qe){return"M"+qe.join("L")},K=function(qe){return Y(qe.reverse())},re=C$(a,{xaxis:v,yaxis:h,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(m.width||1,3)/4,shape:m.shape,backoff:m.backoff,simplify:m.simplify,fill:d.fill}),ke=new Array(re.length);var ce=0;for(s=0;s=o[0]&&g.x<=o[1]&&g.y>=s[0]&&g.y<=s[1]}),h=Math.ceil(v.length/f),d=0;n.forEach(function(g,y){var _=g[0].trace;fu.hasMarkers(_)&&_.marker.maxdisplayed>0&&y{"use strict";YC.exports={container:"marker",min:"cmin",max:"cmax"}});var VC=Z((_fe,UC)=>{"use strict";var hd=dt();UC.exports=function(r,t,a){var n={},i={_fullLayout:a},l=hd.getFromTrace(i,t,"x"),o=hd.getFromTrace(i,t,"y"),s=r.orig_x;s===void 0&&(s=r.x);var u=r.orig_y;return u===void 0&&(u=r.y),n.xLabel=hd.tickText(l,l.c2l(s),!0).text,n.yLabel=hd.tickText(o,o.c2l(u),!0).text,n}});var u2=Z((wfe,GC)=>{"use strict";var l2=Ir(),cu=at(),E$=br();function P$(e){var r=l2.select(e).selectAll("g.trace.scatter");r.style("opacity",function(t){return t[0].trace.opacity}),r.selectAll("g.points").each(function(t){var a=l2.select(this),n=t.trace||t[0].trace;o2(a,n,e)}),r.selectAll("g.text").each(function(t){var a=l2.select(this),n=t.trace||t[0].trace;s2(a,n,e)}),r.selectAll("g.trace path.js-line").call(cu.lineGroupStyle),r.selectAll("g.trace path.js-fill").call(cu.fillGroupStyle,e,!1),E$.getComponentMethod("errorbars","style")(r)}function o2(e,r,t){cu.pointStyle(e.selectAll("path.point"),r,t)}function s2(e,r,t){cu.textPointStyle(e.selectAll("text"),r,t)}function R$(e,r,t){var a=r[0].trace;a.selectedpoints?(cu.selectedPointStyle(t.selectAll("path.point"),a),cu.selectedTextStyle(t.selectAll("text"),a)):(o2(t,a,e),s2(t,a,e))}GC.exports={style:P$,stylePoints:o2,styleText:s2,styleOnSelect:R$}});var ZC=Z((Tfe,WC)=>{"use strict";var vu=Er(),z$=ln();WC.exports=function(r,t){var a,n;if(r.mode==="lines")return a=r.line.color,a&&vu.opacity(a)?a:r.fillcolor;if(r.mode==="none")return r.fill?r.fillcolor:"";var i=t.mcc||(r.marker||{}).color,l=t.mlcc||((r.marker||{}).line||{}).color;return n=i&&vu.opacity(i)?i:l&&vu.opacity(l)&&(t.mlw||((r.marker||{}).line||{}).width)?l:"",n?vu.opacity(n)<.3?vu.addOpacity(n,.3):n:(a=(r.line||{}).color,a&&vu.opacity(a)&&z$.hasLines(r)&&r.line.width?a:r.fillcolor)}});var KC=Z((Mfe,JC)=>{"use strict";var dd=Ie(),XC=ki(),N$=br(),F$=ZC(),f2=Er(),I$=dd.fillText;JC.exports=function(r,t,a,n){var i=r.cd,l=i[0].trace,o=r.xa,s=r.ya,u=o.c2p(t),f=s.c2p(a),v=[u,f],h=l.hoveron||"",d=l.mode.indexOf("markers")!==-1?3:.5,m=!!l.xperiodalignment,g=!!l.yperiodalignment;if(h.indexOf("points")!==-1){var y=function(G){if(m){var I=o.c2p(G.xStart),Y=o.c2p(G.xEnd);return u>=Math.min(I,Y)&&u<=Math.max(I,Y)?0:1/0}var K=Math.max(3,G.mrc||0),Q=1-1/K,ne=Math.abs(o.c2p(G.x)-u);return ne=Math.min(I,Y)&&f<=Math.max(I,Y)?0:1/0}var K=Math.max(3,G.mrc||0),Q=1-1/K,ne=Math.abs(s.c2p(G.y)-f);return nede!=B>=de&&(_e=Ce[re-1][0],se=Ce[re][0],B-ge&&(ce=_e+(se-_e)*(de-ge)/(B-ge),K=Math.min(K,ce),Q=Math.max(Q,ce)));return K=Math.max(K,0),Q=Math.min(Q,o._length),{x0:K,x1:Q,y0:de,y1:de}}if(h.indexOf("fills")!==-1&&l._fillElement){var O=F(l._fillElement)&&!F(l._fillExclusionElement);if(O){var J=H(l._polygons);J===null&&(J={x0:v[0],x1:v[0],y0:v[1],y1:v[1]});var X=f2.defaultLine;return f2.opacity(l.fillcolor)?X=l.fillcolor:f2.opacity((l.line||{}).color)&&(X=l.line.color),dd.extendFlat(r,{distance:r.maxHoverDistance,x0:J.x0,x1:J.x1,y0:J.y0,y1:J.y1,color:X,hovertemplate:!1}),delete r.index,l.text&&!dd.isArrayOrTypedArray(l.text)?r.text=String(l.text):r.text=l.name,[r]}}}});var jC=Z((Afe,$C)=>{"use strict";var QC=ln();$C.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,l=[],o=a[0].trace,s,u,f,v,h=!QC.hasMarkers(o)&&!QC.hasText(o);if(h)return[];if(t===!1)for(s=0;s{"use strict";eL.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var iL=Z((Sfe,nL)=>{"use strict";var fc=br().traceIs,c2=Dm();nL.exports=function(r,t,a,n){a("autotypenumbers",n.autotypenumbersDflt);var i=a("type",(n.splomStash||{}).type);i==="-"&&(H$(t,n.data),t.type==="-"?t.type="linear":r.type=t.type)};function H$(e,r){if(e.type==="-"){var t=e._id,a=t.charAt(0),n;t.indexOf("scene")!==-1&&(t=a);var i=O$(r,t,a);if(i){if(i.type==="histogram"&&a==={v:"y",h:"x"}[i.orientation||"v"]){e.type="linear";return}var l=a+"calendar",o=i[l],s={noMultiCategory:!fc(i,"cartesian")||fc(i,"noMultiCategory")};if(i.type==="box"&&i._hasPreCompStats&&a==={h:"x",v:"y"}[i.orientation||"v"]&&(s.noMultiCategory=!0),s.autotypenumbers=e.autotypenumbers,aL(i,a)){var u=tL(i),f=[];for(n=0;n0&&(n["_"+t+"axes"]||{})[r])return n;if((n[t+"axis"]||t)===r){if(aL(n,t))return n;if((n[t]||[]).length||n[t+"0"])return n}}}function tL(e){return{v:"x",h:"y"}[e.orientation||"v"]}function aL(e,r){var t=tL(e),a=fc(e,"box-violin"),n=fc(e._fullInput||{},"candlestick");return a&&!n&&r===t&&e[t]===void 0&&e[t+"0"]===void 0}});var oL=Z((Cfe,lL)=>{"use strict";var B$=an().isTypedArraySpec;function Y$(e,r){var t=r.dataAttr||e._id.charAt(0),a={},n,i,l;if(r.axData)n=r.axData;else for(n=[],i=0;i0||B$(i),o;l&&(o="array");var s=a("categoryorder",o),u;s==="array"&&(u=a("categoryarray")),!l&&s==="array"&&(s=t.categoryorder="trace"),s==="trace"?t._initialCategories=[]:s==="array"?t._initialCategories=u.slice():(u=Y$(t,n).sort(),s==="category ascending"?t._initialCategories=u:s==="category descending"&&(t._initialCategories=u.reverse()))}}});var fL=Z((Lfe,uL)=>{"use strict";var sL=xn().mix,U$=di(),V$=Ie();uL.exports=function(r,t,a,n){n=n||{};var i=n.dfltColor;function l(q,D){return V$.coerce2(r,t,n.attributes,q,D)}var o=l("linecolor",i),s=l("linewidth"),u=a("showline",n.showLine||!!o||!!s);u||(delete t.linecolor,delete t.linewidth);var f=sL(i,n.bgColor,n.blend||U$.lightFraction).toRgbString(),v=l("gridcolor",f),h=l("gridwidth"),d=l("griddash"),m=a("showgrid",n.showGrid||!!v||!!h||!!d);if(m||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),n.hasMinor){var g=sL(t.gridcolor,n.bgColor,67).toRgbString(),y=l("minor.gridcolor",g),_=l("minor.gridwidth",t.gridwidth||1),w=l("minor.griddash",t.griddash||"solid"),T=a("minor.showgrid",!!y||!!_||!!w);T||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!n.noZeroLine){var b=l("zerolinelayer"),M=l("zerolinecolor",i),C=l("zerolinewidth"),k=a("zeroline",n.showGrid||!!M||!!C);k||(delete t.zerolinelayer,delete t.zerolinecolor,delete t.zerolinewidth)}}});var h2=Z((qfe,mL)=>{"use strict";var cL=Hr(),G$=br(),cc=Ie(),W$=ct(),Z$=Kn(),v2=Jn(),vL=em(),hL=tm(),X$=im(),J$=lm(),K$=oL(),Q$=fL(),$$=$m(),dL=T0(),pd=ya().WEEKDAY_PATTERN,j$=ya().HOUR_PATTERN;mL.exports=function(r,t,a,n,i){var l=n.letter,o=n.font||{},s=n.splomStash||{},u=a("visible",!n.visibleDflt),f=t._template||{},v=t.type||f.type||"-",h;if(v==="date"){var d=G$.getComponentMethod("calendars","handleDefaults");d(r,t,"calendar",n.calendar),n.noTicklabelmode||(h=a("ticklabelmode"))}!n.noTicklabelindex&&(v==="date"||v==="linear")&&a("ticklabelindex");var m="";(!n.noTicklabelposition||v==="multicategory")&&(m=cc.coerce(r,t,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h==="period"?["outside","inside"]:l==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),n.noTicklabeloverflow||a("ticklabeloverflow",m.indexOf("inside")!==-1?"hide past domain":v==="category"||v==="multicategory"?"allow":"hide past div"),dL(t,i),$$(r,t,a,n),K$(r,t,a,n),n.noHover||(v!=="category"&&a("hoverformat"),n.noUnifiedhovertitle||a("unifiedhovertitle.text"));var g=a("color"),y=g!==v2.color.dflt?g:o.color,_=s.label||i._dfltTitle[l];if(J$(r,t,a,v,n),!u)return t;a("title.text",_),cc.coerceFont(a,"title.font",o,{overrideDflt:{size:cc.bigFont(o.size),color:y}}),vL(r,t,a,v);var w=n.hasMinor;if(w&&(W$.newContainer(t,"minor"),vL(r,t,a,v,{isMinor:!0})),X$(r,t,a,v,n),hL(r,t,a,n),w){var T=n.isMinor;n.isMinor=!0,hL(r,t,a,n),n.isMinor=T}Q$(r,t,a,{dfltColor:g,bgColor:n.bgColor,showGrid:n.showGrid,hasMinor:w,attributes:v2}),w&&!t.minor.ticks&&!t.minor.showgrid&&delete t.minor,(t.showline||t.ticks)&&a("mirror");var b=v==="multicategory";if(!n.noTickson&&(v==="category"||b)&&(t.ticks||t.showgrid)&&(b?(a("tickson","boundaries"),delete t.ticklabelposition):a("tickson")),b){var M=a("showdividers");M&&(a("dividercolor"),a("dividerwidth"))}if(v==="date")if(Z$(r,t,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:ej}),!t.rangebreaks.length)delete t.rangebreaks;else{for(var C=0;C=2){var l="",o,s;if(i.length===2){for(o=0;o<2;o++)if(s=pL(i[o]),s){l=pd;break}}var u=a("pattern",l);if(u===pd)for(o=0;o<2;o++)s=pL(i[o]),s&&(r.bounds[o]=i[o]=s-1);if(u)for(o=0;o<2;o++)switch(s=i[o],u){case pd:if(!cL(s)){r.enabled=!1;return}if(s=+s,s!==Math.floor(s)||s<0||s>=7){r.enabled=!1;return}r.bounds[o]=i[o]=s;break;case j$:if(!cL(s)){r.enabled=!1;return}if(s=+s,s<0||s>24){r.enabled=!1;return}r.bounds[o]=i[o]=s;break}if(t.autorange===!1){var f=t.range;if(f[0]f[1]){r.enabled=!1;return}}else if(i[0]>f[0]&&i[1]{"use strict";var tj=Hr(),md=Ie();yL.exports=function(r,t,a,n){var i=n.counterAxes||[],l=n.overlayableAxes||[],o=n.letter,s=n.grid,u=n.overlayingDomain,f,v,h,d,m,g;s&&(v=s._domains[o][s._axisMap[t._id]],f=s._anchors[t._id],v&&(h=s[o+"side"].split(" ")[0],d=s.domain[o][h==="right"||h==="top"?1:0])),v=v||[0,1],f=f||(tj(r.position)?"free":i[0]||"free"),h=h||(o==="x"?"bottom":"left"),d=d||0,m=0,g=!1;var y=md.coerce(r,t,{anchor:{valType:"enumerated",values:["free"].concat(i),dflt:f}},"anchor"),_=md.coerce(r,t,{side:{valType:"enumerated",values:o==="x"?["bottom","top"]:["left","right"],dflt:h}},"side");if(y==="free"){if(o==="y"){var w=a("autoshift");w&&(d=_==="left"?u[0]:u[1],g=t.automargin?t.automargin:!0,m=_==="left"?-3:3),a("shift",m)}a("position",d)}a("automargin",g);var T=!1;if(l.length&&(T=md.coerce(r,t,{overlaying:{valType:"enumerated",values:[!1].concat(l),dflt:!1}},"overlaying")),!T){var b=a("domain",v);b[0]>b[1]-1/4096&&(t.domain=v),md.noneOrAll(r.domain,t.domain,v),t.tickmode==="sync"&&(t.tickmode="auto")}return a("layer"),t}});var kL=Z((Efe,AL)=>{"use strict";var zo=Ie(),gL=Er(),aj=bi().isUnifiedHover,nj=Ty(),bL=ct(),ij=ys(),xL=Jn(),lj=iL(),_L=h2(),oj=Df(),wL=d2(),m2=Zt(),Di=m2.id2name,TL=m2.name2id,sj=ya().AX_ID_PATTERN,ML=br(),yd=ML.traceIs,p2=ML.getComponentMethod;function gd(e,r,t){Array.isArray(e[r])?e[r].push(t):e[r]=[t]}AL.exports=function(r,t,a){var n=t.autotypenumbers,i={},l={},o={},s={},u={},f={},v={},h={},d={},m={},g,y;for(g=0;g{"use strict";var uj=Ir(),SL=br(),bd=Ie(),vn=at(),xd=dt();CL.exports=function(r,t,a,n){var i=r._fullLayout;if(t.length===0){xd.redrawComponents(r);return}function l(y){var _=y.xaxis,w=y.yaxis;i._defs.select("#"+y.clipId+"> rect").call(vn.setTranslate,0,0).call(vn.setScale,1,1),y.plot.call(vn.setTranslate,_._offset,w._offset).call(vn.setScale,1,1);var T=y.plot.selectAll(".scatterlayer .trace");T.selectAll(".point").call(vn.setPointGroupScale,1,1),T.selectAll(".textpoint").call(vn.setTextPointsScale,1,1),T.call(vn.hideOutsideRangePoints,y)}function o(y,_){var w=y.plotinfo,T=w.xaxis,b=w.yaxis,M=T._length,C=b._length,k=!!y.xr1,q=!!y.yr1,D=[];if(k){var R=bd.simpleMap(y.xr0,T.r2l),z=bd.simpleMap(y.xr1,T.r2l),F=R[1]-R[0],H=z[1]-z[0];D[0]=(R[0]*(1-_)+_*z[0]-R[0])/(R[1]-R[0])*M,D[2]=M*(1-_+_*H/F),T.range[0]=T.l2r(R[0]*(1-_)+_*z[0]),T.range[1]=T.l2r(R[1]*(1-_)+_*z[1])}else D[0]=0,D[2]=M;if(q){var O=bd.simpleMap(y.yr0,b.r2l),J=bd.simpleMap(y.yr1,b.r2l),X=O[1]-O[0],G=J[1]-J[0];D[1]=(O[1]*(1-_)+_*J[1]-O[1])/(O[0]-O[1])*C,D[3]=C*(1-_+_*G/X),b.range[0]=T.l2r(O[0]*(1-_)+_*J[0]),b.range[1]=b.l2r(O[1]*(1-_)+_*J[1])}else D[1]=0,D[3]=C;xd.drawOne(r,T,{skipTitle:!0}),xd.drawOne(r,b,{skipTitle:!0}),xd.redrawComponents(r,[T._id,b._id]);var I=k?M/D[2]:1,Y=q?C/D[3]:1,K=k?D[0]:0,Q=q?D[1]:0,ne=k?D[0]/D[2]*M:0,me=q?D[1]/D[3]*C:0,de=T._offset-ne,ke=b._offset-me;w.clipRect.call(vn.setTranslate,K,Q).call(vn.setScale,1/I,1/Y),w.plot.call(vn.setTranslate,de,ke).call(vn.setScale,I,Y),vn.setPointGroupScale(w.zoomScalePts,1/I,1/Y),vn.setTextPointsScale(w.zoomScaleTxt,1/I,1/Y)}var s;n&&(s=n());function u(){for(var y={},_=0;_a.duration?(u(),d=window.cancelAnimationFrame(g)):d=window.requestAnimationFrame(g)}return v=Date.now(),d=window.requestAnimationFrame(g),Promise.resolve()}});var Td=Z(ka=>{"use strict";var wd=Ir(),qL=br(),No=Ie(),fj=Ft(),cj=at(),DL=Ip().getModuleCalcData,Ll=Zt(),ni=ya(),vj=co(),Zr=No.ensureSingle;function _d(e,r,t){return No.ensureSingle(e,r,t,function(a){a.datum(t)})}var Fo=ni.zindexSeparator;ka.name="cartesian";ka.attr=["xaxis","yaxis"];ka.idRoot=["x","y"];ka.idRegex=ni.idRegex;ka.attrRegex=ni.attrRegex;ka.attributes=rL();ka.layoutAttributes=Jn();ka.supplyLayoutDefaults=kL();ka.transitionAxes=LL();ka.finalizeSubplots=function(e,r){var t=r._subplots,a=t.xaxis,n=t.yaxis,i=t.cartesian,l=i,o={},s={},u,f,v;for(u=0;u0){var d=h.id;if(d.indexOf(Fo)!==-1)continue;d+=Fo+(u+1),h=No.extendFlat({},h,{id:d,plot:n._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var m=[],g,y=0;y1&&(M+=Fo+b),T.push(o+M),l=0;l1,v=r.mainplotinfo;if(!r.mainplot||f)if(u)r.xlines=Zr(a,"path","xlines-above"),r.ylines=Zr(a,"path","ylines-above"),r.xaxislayer=Zr(a,"g","xaxislayer-above"),r.yaxislayer=Zr(a,"g","yaxislayer-above");else{if(!l){var h=Zr(a,"g","layer-subplot");r.shapelayer=Zr(h,"g","shapelayer"),r.imagelayer=Zr(h,"g","imagelayer"),v&&f?(r.minorGridlayer=v.minorGridlayer,r.gridlayer=v.gridlayer,r.zerolinelayer=v.zerolinelayer):(r.minorGridlayer=Zr(a,"g","minor-gridlayer"),r.gridlayer=Zr(a,"g","gridlayer"),r.zerolinelayer=Zr(a,"g","zerolinelayer"));var d=Zr(a,"g","layer-between");r.shapelayerBetween=Zr(d,"g","shapelayer"),r.imagelayerBetween=Zr(d,"g","imagelayer"),Zr(a,"path","xlines-below"),Zr(a,"path","ylines-below"),r.overlinesBelow=Zr(a,"g","overlines-below"),Zr(a,"g","xaxislayer-below"),Zr(a,"g","yaxislayer-below"),r.overaxesBelow=Zr(a,"g","overaxes-below")}r.overplot=Zr(a,"g","overplot"),r.plot=Zr(r.overplot,"g",n),v&&f?r.zerolinelayerAbove=v.zerolinelayerAbove:r.zerolinelayerAbove=Zr(a,"g","zerolinelayer-above"),l||(r.xlines=Zr(a,"path","xlines-above"),r.ylines=Zr(a,"path","ylines-above"),r.overlinesAbove=Zr(a,"g","overlines-above"),Zr(a,"g","xaxislayer-above"),Zr(a,"g","yaxislayer-above"),r.overaxesAbove=Zr(a,"g","overaxes-above"),r.xlines=a.select(".xlines-"+o),r.ylines=a.select(".ylines-"+s),r.xaxislayer=a.select(".xaxislayer-"+o),r.yaxislayer=a.select(".yaxislayer-"+s))}else{var m=v.plotgroup,g=n+"-x",y=n+"-y";r.minorGridlayer=v.minorGridlayer,r.gridlayer=v.gridlayer,r.zerolinelayer=v.zerolinelayer,r.zerolinelayerAbove=v.zerolinelayerAbove,Zr(v.overlinesBelow,"path",g),Zr(v.overlinesBelow,"path",y),Zr(v.overaxesBelow,"g",g),Zr(v.overaxesBelow,"g",y),r.plot=Zr(v.overplot,"g",n),Zr(v.overlinesAbove,"path",g),Zr(v.overlinesAbove,"path",y),Zr(v.overaxesAbove,"g",g),Zr(v.overaxesAbove,"g",y),r.xlines=m.select(".overlines-"+o).select("."+g),r.ylines=m.select(".overlines-"+s).select("."+y),r.xaxislayer=m.select(".overaxes-"+o).select("."+g),r.yaxislayer=m.select(".overaxes-"+s).select("."+y)}l||(u||(_d(r.minorGridlayer,"g",r.xaxis._id),_d(r.minorGridlayer,"g",r.yaxis._id),r.minorGridlayer.selectAll("g").map(function(_){return _[0]}).sort(Ll.idSort),_d(r.gridlayer,"g",r.xaxis._id),_d(r.gridlayer,"g",r.yaxis._id),r.gridlayer.selectAll("g").map(function(_){return _[0]}).sort(Ll.idSort)),r.xlines.style("fill","none").classed("crisp",!0),r.ylines.style("fill","none").classed("crisp",!0))}function RL(e,r){if(e){var t={};e.each(function(s){var u=s[0],f=wd.select(this);f.remove(),zL(u,r),t[u]=!0});for(var a in r._plots)for(var n=r._plots[a],i=n.overlays||[],l=0;l{"use strict";var Md=ln();NL.exports={hasLines:Md.hasLines,hasMarkers:Md.hasMarkers,hasText:Md.hasText,isBubble:Md.isBubble,attributes:Do(),layoutAttributes:Kv(),supplyDefaults:QS(),crossTraceDefaults:eC(),supplyLayoutDefaults:tC(),calc:Qg().calc,crossTraceCalc:SC(),arraysToCalcdata:Gg(),plot:BC(),colorbar:i2(),formatLabels:VC(),style:u2().style,styleOnSelect:u2().styleOnSelect,hoverPoints:KC(),selectPoints:jC(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:Td(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var OL=Z((Nfe,HL)=>{"use strict";var dj=Ir(),pj=Er(),IL=vg(),y2=Ie(),mj=y2.strScale,yj=y2.strRotate,gj=y2.strTranslate;HL.exports=function(r,t,a){var n=r.node(),i=IL[a.arrowhead||0],l=IL[a.startarrowhead||0],o=(a.arrowwidth||1)*(a.arrowsize||1),s=(a.arrowwidth||1)*(a.startarrowsize||1),u=t.indexOf("start")>=0,f=t.indexOf("end")>=0,v=i.backoff*o+a.standoff,h=l.backoff*s+a.startstandoff,d,m,g,y;if(n.nodeName==="line"){d={x:+r.attr("x1"),y:+r.attr("y1")},m={x:+r.attr("x2"),y:+r.attr("y2")};var _=d.x-m.x,w=d.y-m.y;if(g=Math.atan2(w,_),y=g+Math.PI,v&&h&&v+h>Math.sqrt(_*_+w*w)){O();return}if(v){if(v*v>_*_+w*w){O();return}var T=v*Math.cos(g),b=v*Math.sin(g);m.x+=T,m.y+=b,r.attr({x2:m.x,y2:m.y})}if(h){if(h*h>_*_+w*w){O();return}var M=h*Math.cos(g),C=h*Math.sin(g);d.x-=M,d.y-=C,r.attr({x1:d.x,y1:d.y})}}else if(n.nodeName==="path"){var k=n.getTotalLength(),q="";if(k{"use strict";var BL=Ir(),g2=br(),bj=Ft(),Dl=Ie(),b2=Dl.strTranslate,hc=dt(),Io=Er(),Xi=at(),YL=ki(),x2=Ta(),_2=_l(),vc=$n(),xj=ct().arrayEditor,_j=OL();GL.exports={draw:wj,drawOne:UL,drawRaw:VL};function wj(e){var r=e._fullLayout;r._infolayer.selectAll(".annotation").remove();for(var t=0;t2/3?De="right":De="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[De]}for(var ge=!1,B=["x","y"],$=0;$1)&&(we===ye?(Pe=pe.r2fraction(r["a"+U]),(Pe<0||Pe>1)&&(ge=!0)):ge=!0),He=pe._offset+pe.r2p(r[U]),be=.5}else{var Me=hr==="domain";U==="x"?(ie=r[U],He=Me?pe._offset+pe._length*ie:He=o.l+o.w*ie):(ie=1-r[U],He=Me?pe._offset+pe._length*ie:He=o.t+o.h*ie),be=r.showarrow?.5:ie}if(r.showarrow){qe.head=He;var Se=r["a"+U];if(Ke=Fe*se(.5,r.xanchor)-Ee*se(.5,r.yanchor),we===ye){var Oe=hc.getRefType(we);Oe==="domain"?(U==="y"&&(Se=1-Se),qe.tail=pe._offset+pe._length*Se):Oe==="paper"?U==="y"?(Se=1-Se,qe.tail=o.t+o.h*Se):qe.tail=o.l+o.w*Se:qe.tail=pe._offset+pe.r2p(Se),Ye=Ke}else qe.tail=He+Se,Ye=Ke+Se;qe.text=qe.tail+Ke;var Je=l[U==="x"?"width":"height"];if(ye==="paper"&&(qe.head=Dl.constrain(qe.head,1,Je-1)),we==="pixel"){var We=-Math.max(qe.tail-3,qe.text),Ze=Math.min(qe.tail+3,qe.text)-Je;We>0?(qe.tail+=We,qe.text+=We):Ze>0&&(qe.tail-=Ze,qe.text-=Ze)}qe.tail+=Ge,qe.head+=Ge}else Ke=Ne*se(be,Be),Ye=Ke,qe.text=He+Ke;qe.text+=Ge,Ke+=Ge,Ye+=Ge,r["_"+U+"padplus"]=Ne/2+Ye,r["_"+U+"padminus"]=Ne/2-Ye,r["_"+U+"size"]=Ne,r["_"+U+"shift"]=Ke}if(ge){k.remove();return}var lr=0,tr=0;if(r.align!=="left"&&(lr=(re-de)*(r.align==="center"?.5:1)),r.valign!=="top"&&(tr=(Ce-ke)*(r.valign==="middle"?.5:1)),ne)Q.select("svg").attr({x:R+lr-1,y:R+tr}).call(Xi.setClipUrl,F?g:null,e);else{var Qe=R+tr-me.top,ze=R+lr-me.left;X.call(x2.positionText,ze,Qe).call(Xi.setClipUrl,F?g:null,e)}H.select("rect").call(Xi.setRect,R,R,re,Ce),z.call(Xi.setRect,q/2,q/2,ce-q,_e-q),k.call(Xi.setTranslate,Math.round(y.x.text-ce/2),Math.round(y.y.text-_e/2)),T.attr({transform:"rotate("+_+","+y.x.text+","+y.y.text+")"});var ae=function(Le,De){w.selectAll(".annotation-arrow-g").remove();var ar=y.x.head,cr=y.y.head,sr=y.x.tail+Le,Mr=y.y.tail+De,Br=y.x.text+Le,$r=y.y.text+De,it=Dl.rotationXYMatrix(_,Br,$r),_t=Dl.apply2DTransform(it),yt=Dl.apply2DTransform2(it),Dt=+z.attr("width"),Kt=+z.attr("height"),La=Br-.5*Dt,sa=La+Dt,ua=$r-.5*Kt,vr=ua+Kt,lt=[[La,ua,La,vr],[La,vr,sa,vr],[sa,vr,sa,ua],[sa,ua,La,ua]].map(yt);if(!lt.reduce(function(wt,ca){return wt^!!Dl.segmentsIntersect(ar,cr,ar+1e6,cr+1e6,ca[0],ca[1],ca[2],ca[3])},!1)){lt.forEach(function(wt){var ca=Dl.segmentsIntersect(sr,Mr,ar,cr,wt[0],wt[1],wt[2],wt[3]);ca&&(sr=ca.x,Mr=ca.y)});var Xr=r.arrowwidth,ft=r.arrowcolor,kt=r.arrowside,bt=w.append("g").style({opacity:Io.opacity(ft)}).classed("annotation-arrow-g",!0),Qr=bt.append("path").attr("d","M"+sr+","+Mr+"L"+ar+","+cr).style("stroke-width",Xr+"px").call(Io.stroke,Io.rgb(ft));if(_j(Qr,kt,r),s.annotationPosition&&Qr.node().parentNode&&!a){var fa=ar,pn=cr;if(r.standoff){var Qt=Math.sqrt(Math.pow(ar-sr,2)+Math.pow(cr-Mr,2));fa+=r.standoff*(sr-ar)/Qt,pn+=r.standoff*(Mr-cr)/Qt}var ci=bt.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(sr-fa)+","+(Mr-pn),transform:b2(fa,pn)}).style("stroke-width",Xr+6+"px").call(Io.stroke,"rgba(0,0,0,0)").call(Io.fill,"rgba(0,0,0,0)"),mn,St;vc.init({element:ci.node(),gd:e,prepFn:function(){var wt=Xi.getTranslate(k);mn=wt.x,St=wt.y,n&&n.autorange&&h(n._name+".autorange",!0),i&&i.autorange&&h(i._name+".autorange",!0)},moveFn:function(wt,ca){var Yl=_t(mn,St),Ul=Yl[0]+wt,el=Yl[1]+ca;k.call(Xi.setTranslate,Ul,el),d("x",ql(n,wt,"x",o,r)),d("y",ql(i,ca,"y",o,r)),r.axref===r.xref&&d("ax",ql(n,wt,"ax",o,r)),r.ayref===r.yref&&d("ay",ql(i,ca,"ay",o,r)),bt.attr("transform",b2(wt,ca)),T.attr({transform:"rotate("+_+","+Ul+","+el+")"})},doneFn:function(){g2.call("_guiRelayout",e,m());var wt=document.querySelector(".js-notes-box-panel");wt&&wt.redraw(wt.selectedObj)}})}}};if(r.showarrow&&ae(0,0),b){var le;vc.init({element:k.node(),gd:e,prepFn:function(){le=T.attr("transform")},moveFn:function(Le,De){var ar="pointer";if(r.showarrow)r.axref===r.xref?d("ax",ql(n,Le,"ax",o,r)):d("ax",r.ax+Le),r.ayref===r.yref?d("ay",ql(i,De,"ay",o.w,r)):d("ay",r.ay+De),ae(Le,De);else{if(a)return;var cr,sr;if(n)cr=ql(n,Le,"x",o,r);else{var Mr=r._xsize/o.w,Br=r.x+(r._xshift-r.xshift)/o.w-Mr/2;cr=vc.align(Br+Le/o.w,Mr,0,1,r.xanchor)}if(i)sr=ql(i,De,"y",o,r);else{var $r=r._ysize/o.h,it=r.y-(r._yshift+r.yshift)/o.h-$r/2;sr=vc.align(it-De/o.h,$r,0,1,r.yanchor)}d("x",cr),d("y",sr),(!n||!i)&&(ar=vc.getCursor(n?.5:cr,i?.5:sr,r.xanchor,r.yanchor))}T.attr({transform:b2(Le,De)+le}),_2(k,ar)},clickFn:function(Le,De){r.captureevents&&e.emit("plotly_clickannotation",C(De))},doneFn:function(){_2(k),g2.call("_guiRelayout",e,m());var Le=document.querySelector(".js-notes-box-panel");Le&&Le.redraw(Le.selectedObj)}})}}s.annotationText?X.call(x2.makeEditable,{delegate:k,gd:e}).call(G).on("edit",function(Y){r.text=Y,this.call(G),d("text",Y),n&&n.autorange&&h(n._name+".autorange",!0),i&&i.autorange&&h(i._name+".autorange",!0),g2.call("_guiRelayout",e,m())}):X.call(G)}});var QL=Z((Ife,KL)=>{"use strict";var WL=Ie(),Tj=br(),ZL=ct().arrayEditor;KL.exports={hasClickToShow:Mj,onClick:Aj};function Mj(e,r){var t=JL(e,r);return t.on.length>0||t.explicitOff.length>0}function Aj(e,r){var t=JL(e,r),a=t.on,n=t.off.concat(t.explicitOff),i={},l=e._fullLayout.annotations,o,s;if(a.length||n.length){for(o=0;o{"use strict";var w2=Ie(),hu=Er();$L.exports=function(r,t,a,n){n("opacity");var i=n("bgcolor"),l=n("bordercolor"),o=hu.opacity(l);n("borderpad");var s=n("borderwidth"),u=n("showarrow");n("text",u?" ":a._dfltTitle.annotation),n("textangle"),w2.coerceFont(n,"font",a.font),n("width"),n("align");var f=n("height");if(f&&n("valign"),u){var v=n("arrowside"),h,d;v.indexOf("end")!==-1&&(h=n("arrowhead"),d=n("arrowsize")),v.indexOf("start")!==-1&&(n("startarrowhead",h),n("startarrowsize",d)),n("arrowcolor",o?t.bordercolor:hu.defaultLine),n("arrowwidth",(o&&s||1)*2),n("standoff"),n("startstandoff")}var m=n("hovertext"),g=a.hoverlabel||{};if(m){var y=n("hoverlabel.bgcolor",g.bgcolor||(hu.opacity(i)?hu.rgb(i):hu.defaultLine)),_=n("hoverlabel.bordercolor",g.bordercolor||hu.contrast(y)),w=w2.extendFlat({},g.font);w.color||(w.color=_),w2.coerceFont(n,"hoverlabel.font",w)}n("captureevents",!!m)}});var eq=Z((Ofe,jL)=>{"use strict";var M2=Ie(),Ho=dt(),kj=Kn(),Sj=T2(),Cj=au();jL.exports=function(r,t){kj(r,t,{name:"annotations",handleItemDefaults:Lj})};function Lj(e,r,t){function a(T,b){return M2.coerce(e,r,Cj,T,b)}var n=a("visible"),i=a("clicktoshow");if(n||i){Sj(e,r,t,a);for(var l=r.showarrow,o=["x","y"],s=[-10,-30],u={_fullLayout:t},f=0;f<2;f++){var v=o[f],h=Ho.coerceRef(e,r,u,v,"","paper");if(h!=="paper"){var d=Ho.getFromId(u,h);d._annIndices.push(r._index)}if(Ho.coercePosition(r,u,a,h,v,.5),l){var m="a"+v,g=Ho.coerceRef(e,r,u,m,"pixel",["pixel","paper"]);g!=="pixel"&&g!==h&&(g=r[m]="pixel");var y=g==="pixel"?s[f]:.4;Ho.coercePosition(r,u,a,g,m,y)}a(v+"anchor"),a(v+"shift")}if(M2.noneOrAll(e,r,["x","y"]),l&&M2.noneOrAll(e,r,["ax","ay"]),i){var _=a("xclick"),w=a("yclick");r._xclick=_===void 0?r.x:Ho.cleanPosition(_,u,r.xref),r._yclick=w===void 0?r.y:Ho.cleanPosition(w,u,r.yref)}}}});var aq=Z((Bfe,tq)=>{"use strict";var A2=Ie(),Oo=dt(),qj=Ad().draw;tq.exports=function(r){var t=r._fullLayout,a=A2.filterVisible(t.annotations);if(a.length&&r._fullData.length)return A2.syncOrAsync([qj,Dj],r)};function Dj(e){var r=e._fullLayout;A2.filterVisible(r.annotations).forEach(function(t){var a=Oo.getFromId(e,t.xref),n=Oo.getFromId(e,t.yref),i=Oo.getRefType(t.xref),l=Oo.getRefType(t.yref);t._extremes={},i==="range"&&rq(t,a),l==="range"&&rq(t,n)})}function rq(e,r){var t=r._id,a=t.charAt(0),n=e[a],i=e["a"+a],l=e[a+"ref"],o=e["a"+a+"ref"],s=e["_"+a+"padplus"],u=e["_"+a+"padminus"],f={x:1,y:-1}[a]*e[a+"shift"],v=3*e.arrowsize*e.arrowwidth||0,h=v+f,d=v-f,m=3*e.startarrowsize*e.arrowwidth||0,g=m+f,y=m-f,_;if(o===l){var w=Oo.findExtremes(r,[r.r2c(n)],{ppadplus:h,ppadminus:d}),T=Oo.findExtremes(r,[r.r2c(i)],{ppadplus:Math.max(s,g),ppadminus:Math.max(u,y)});_={min:[w.min[0],T.min[0]],max:[w.max[0],T.max[0]]}}else g=i?g+i:g,y=i?y-i:y,_=Oo.findExtremes(r,[r.r2c(n)],{ppadplus:Math.max(s,h,g),ppadminus:Math.max(u,d,y)});e._extremes[t]=_}});var iq=Z((Yfe,nq)=>{"use strict";var Ej=Hr(),Pj=gv();nq.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",l=a==="linear"&&t.type==="log";if(!(i||l))return;var o=r._fullLayout.annotations,s=t._id.charAt(0),u,f;function v(d){var m=u[d],g=null;i?g=Pj(m,t.range):g=Math.pow(10,m),Ej(g)||(g=null),n(f+d,g)}for(var h=0;h{"use strict";var k2=Ad(),lq=QL();oq.exports={moduleType:"component",name:"annotations",layoutAttributes:au(),supplyLayoutDefaults:eq(),includeBasePlot:Xf()("annotations"),calcAutorange:aq(),draw:k2.draw,drawOne:k2.drawOne,drawRaw:k2.drawRaw,hasClickToShow:lq.hasClickToShow,onClick:lq.onClick,convertCoords:iq()}});var kd=Z((Vfe,uq)=>{"use strict";var ut=au(),Rj=pi().overrideAll,zj=ct().templatedArray;uq.exports=Rj(zj("annotation",{visible:ut.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:ut.xanchor,xshift:ut.xshift,yanchor:ut.yanchor,yshift:ut.yshift,text:ut.text,textangle:ut.textangle,font:ut.font,width:ut.width,height:ut.height,opacity:ut.opacity,align:ut.align,valign:ut.valign,bgcolor:ut.bgcolor,bordercolor:ut.bordercolor,borderpad:ut.borderpad,borderwidth:ut.borderwidth,showarrow:ut.showarrow,arrowcolor:ut.arrowcolor,arrowhead:ut.arrowhead,startarrowhead:ut.startarrowhead,arrowside:ut.arrowside,arrowsize:ut.arrowsize,startarrowsize:ut.startarrowsize,arrowwidth:ut.arrowwidth,standoff:ut.standoff,startstandoff:ut.startstandoff,hovertext:ut.hovertext,hoverlabel:ut.hoverlabel,captureevents:ut.captureevents}),"calc","from-root")});var cq=Z((Gfe,fq)=>{"use strict";var S2=Ie(),Nj=dt(),Fj=Kn(),Ij=T2(),Hj=kd();fq.exports=function(r,t,a){Fj(r,t,{name:"annotations",handleItemDefaults:Oj,fullLayout:a.fullLayout})};function Oj(e,r,t,a){function n(o,s){return S2.coerce(e,r,Hj,o,s)}function i(o){var s=o+"axis",u={_fullLayout:{}};return u._fullLayout[s]=t[s],Nj.coercePosition(r,u,n,o,o,.5)}var l=n("visible");l&&(Ij(e,r,a.fullLayout,n),i("x"),i("y"),i("z"),S2.noneOrAll(e,r,["x","y","z"]),r.xref="x",r.yref="y",r.zref="z",n("xanchor"),n("yanchor"),n("xshift"),n("yshift"),r.showarrow&&(r.axref="pixel",r.ayref="pixel",n("ax",-10),n("ay",-30),S2.noneOrAll(e,r,["ax","ay"])))}});var pq=Z((Wfe,dq)=>{"use strict";var vq=Ie(),hq=dt();dq.exports=function(r){for(var t=r.fullSceneLayout,a=t.annotations,n=0;n{"use strict";function C2(e,r){var t=[0,0,0,0],a,n;for(a=0;a<4;++a)for(n=0;n<4;++n)t[n]+=e[4*a+n]*r[a];return t}function Yj(e,r){var t=C2(e.projection,C2(e.view,C2(e.model,[r[0],r[1],r[2],1])));return t}mq.exports=Yj});var bq=Z((Xfe,gq)=>{"use strict";var Uj=Ad().drawRaw,Vj=yq(),Gj=["x","y","z"];gq.exports=function(r){for(var t=r.fullSceneLayout,a=r.dataScale,n=t.annotations,i=0;i1){o=!0;break}}o?r.fullLayout._infolayer.select(".annotation-"+r.id+'[data-index="'+i+'"]').remove():(l._pdata=Vj(r.glplot.cameraParams,[t.xaxis.r2l(l.x)*a[0],t.yaxis.r2l(l.y)*a[1],t.zaxis.r2l(l.z)*a[2]]),Uj(r.graphDiv,l,i,r.id,l._xa,l._ya))}}});var wq=Z((Jfe,_q)=>{"use strict";var Wj=br(),xq=Ie();_q.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:kd()}}},layoutAttributes:kd(),handleDefaults:cq(),includeBasePlot:Zj,convert:pq(),draw:bq()};function Zj(e,r){var t=Wj.subplotsRegistry.gl3d;if(t)for(var a=t.attrRegex,n=Object.keys(e),i=0;i{"use strict";var Tq=au(),Mq=ma(),Aq=Do().line,Xj=mi().dash,ii=Gt().extendFlat,Jj=ct().templatedArray,Kfe=Zf(),du=Vn(),{shapeTexttemplateAttrs:Kj,templatefallbackAttrs:Qj}=to(),$j=Lv();kq.exports=Jj("shape",{visible:ii({},du.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:ii({},du.legend,{editType:"calc+arraydraw"}),legendgroup:ii({},du.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:ii({},du.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:Mq({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:ii({},du.legendrank,{editType:"calc+arraydraw"}),legendwidth:ii({},du.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:ii({},Tq.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:ii({},Tq.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:ii({},Aq.color,{editType:"arraydraw"}),width:ii({},Aq.width,{editType:"calc+arraydraw"}),dash:ii({},Xj,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:Kj({},{keys:Object.keys($j)}),texttemplatefallback:Qj({editType:"arraydraw"}),font:Mq({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var Lq=Z(($fe,Cq)=>{"use strict";var dc=Ie(),pu=dt(),jj=Kn(),eee=L2(),Sq=Ml();Cq.exports=function(r,t){jj(r,t,{name:"shapes",handleItemDefaults:tee})};function ree(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}function tee(e,r,t){function a(Y,K){return dc.coerce(e,r,eee,Y,K)}r._isShape=!0;var n=a("visible");if(n){var i=a("showlegend");i&&(a("legend"),a("legendwidth"),a("legendgroup"),a("legendgrouptitle.text"),dc.coerceFont(a,"legendgrouptitle.font"),a("legendrank"));var l=a("path"),o=l?"path":"rect",s=a("type",o),u=s!=="path";u&&delete r.path,a("editable"),a("layer"),a("opacity"),a("fillcolor"),a("fillrule");var f=a("line.width");f&&(a("line.color"),a("line.dash"));for(var v=a("xsizemode"),h=a("ysizemode"),d=["x","y"],m=0;m<2;m++){var g=d[m],y=g+"anchor",_=g==="x"?v:h,w={_fullLayout:t},T,b,M,C=pu.coerceRef(e,r,w,g,void 0,"paper"),k=pu.getRefType(C);if(k==="range"?(T=pu.getFromId(w,C),T._shapeIndices.push(r._index),M=Sq.rangeToShapePosition(T),b=Sq.shapePositionToRange(T),(T.type==="category"||T.type==="multicategory")&&(a(g+"0shift"),a(g+"1shift"))):b=M=dc.identity,u){var q=.25,D=.75,R=g+"0",z=g+"1",F=e[R],H=e[z];e[R]=b(e[R],!0),e[z]=b(e[z],!0),_==="pixel"?(a(R,0),a(z,10)):(pu.coercePosition(r,w,a,C,R,q),pu.coercePosition(r,w,a,C,z,D)),r[R]=M(r[R]),r[z]=M(r[z]),e[R]=F,e[z]=H}if(_==="pixel"){var O=e[y];e[y]=b(e[y],!0),pu.coercePosition(r,w,a,C,y,.25),r[y]=M(r[y]),e[y]=O}}u&&dc.noneOrAll(e,r,["x0","x1","y0","y1"]);var J=s==="line",X,G;if(u&&(X=a("label.texttemplate"),a("label.texttemplatefallback")),X||(G=a("label.text")),G||X){a("label.textangle");var I=a("label.textposition",J?"middle":"middle center");a("label.xanchor"),a("label.yanchor",ree(J,I)),a("label.padding"),dc.coerceFont(a,"label.font",t.font)}}}});var Eq=Z((jfe,Dq)=>{"use strict";var aee=Er(),qq=Ie();function nee(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}Dq.exports=function(r,t,a){a("newshape.visible"),a("newshape.name"),a("newshape.showlegend"),a("newshape.legend"),a("newshape.legendwidth"),a("newshape.legendgroup"),a("newshape.legendgrouptitle.text"),qq.coerceFont(a,"newshape.legendgrouptitle.font"),a("newshape.legendrank"),a("newshape.drawdirection"),a("newshape.layer"),a("newshape.fillcolor"),a("newshape.fillrule"),a("newshape.opacity");var n=a("newshape.line.width");if(n){var i=(r||{}).plot_bgcolor||"#FFF";a("newshape.line.color",aee.contrast(i)),a("newshape.line.dash")}var l=r.dragmode==="drawline",o=a("newshape.label.text"),s=a("newshape.label.texttemplate");if(a("newshape.label.texttemplatefallback"),o||s){a("newshape.label.textangle");var u=a("newshape.label.textposition",l?"middle":"middle center");a("newshape.label.xanchor"),a("newshape.label.yanchor",nee(l,u)),a("newshape.label.padding"),qq.coerceFont(a,"newshape.label.font",t.font)}a("activeshape.fillcolor"),a("activeshape.opacity")}});var Fq=Z((ece,Nq)=>{"use strict";var q2=Ie(),mu=dt(),yu=Sf(),Rq=Ml();Nq.exports=function(r){var t=r._fullLayout,a=q2.filterVisible(t.shapes);if(!(!a.length||!r._fullData.length))for(var n=0;n0?u+l:l;return{ppad:l,ppadplus:o?v:h,ppadminus:o?h:v}}else return{ppad:l}}function Pq(e,r,t){var a=e._id.charAt(0)==="x"?"x":"y",n=e.type==="category"||e.type==="multicategory",i,l,o=0,s=0,u=n?e.r2c:e.d2c,f=r[a+"sizemode"]==="scaled";if(f?(i=r[a+"0"],l=r[a+"1"],n&&(o=r[a+"0shift"],s=r[a+"1shift"])):(i=r[a+"anchor"],l=r[a+"anchor"]),i!==void 0)return[u(i)+o,u(l)+s];if(r.path){var v=1/0,h=-1/0,d=r.path.match(yu.segmentRE),m,g,y,_,w;for(e.type==="date"&&(u=Rq.decodeDate(u)),m=0;mh&&(h=w)));if(h>=v)return[v,h]}}});var Oq=Z((rce,Hq)=>{"use strict";var Iq=yh();Hq.exports={moduleType:"component",name:"shapes",layoutAttributes:L2(),supplyLayoutDefaults:Lq(),supplyDrawNewShapeDefaults:Eq(),includeBasePlot:Xf()("shapes"),calcAutorange:Fq(),draw:Iq.draw,drawOne:Iq.drawOne}});var D2=Z((ace,Yq)=>{"use strict";var Bq=ya(),oee=ct().templatedArray,tce=Zf();Yq.exports=oee("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",Bq.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",Bq.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var Vq=Z((nce,Uq)=>{"use strict";var see=Ie(),E2=dt(),uee=Kn(),fee=D2(),cee="images";Uq.exports=function(r,t){var a={name:cee,handleItemDefaults:vee};uee(r,t,a)};function vee(e,r,t){function a(h,d){return see.coerce(e,r,fee,h,d)}var n=a("source"),i=a("visible",!!n);if(!i)return r;a("layer"),a("xanchor"),a("yanchor"),a("sizex"),a("sizey"),a("sizing"),a("opacity");for(var l={_fullLayout:t},o=["x","y"],s=0;s<2;s++){var u=o[s],f=E2.coerceRef(e,r,l,u,"paper",void 0);if(f!=="paper"){var v=E2.getFromId(l,f);v._imgIndices.push(r._index)}E2.coercePosition(r,l,a,f,u,0)}return r}});var Xq=Z((ice,Zq)=>{"use strict";var Gq=Ir(),hee=at(),gu=dt(),Wq=Zt(),dee=co();Zq.exports=function(r){var t=r._fullLayout,a=[],n={},i=[],l,o;for(o=0;o{"use strict";var Jq=Hr(),pee=gv();Kq.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",l=a==="linear"&&t.type==="log";if(i||l){for(var o=r._fullLayout.images,s=t._id.charAt(0),u,f,v=0;v{"use strict";$q.exports={moduleType:"component",name:"images",layoutAttributes:D2(),supplyLayoutDefaults:Vq(),includeBasePlot:Xf()("images"),draw:Xq(),convertCoords:Qq()}});var Sd=Z((sce,eD)=>{"use strict";eD.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var P2=Z((uce,tD)=>{"use strict";var mee=ma(),yee=di(),gee=Gt().extendFlat,bee=pi().overrideAll,xee=qv(),rD=ct().templatedArray,_ee=rD("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});tD.exports=bee(rD("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:_ee,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:gee(xee({editType:"arraydraw"}),{}),font:mee({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:yee.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var lD=Z((fce,iD)=>{"use strict";var Cd=Ie(),aD=Kn(),nD=P2(),wee=Sd(),Tee=wee.name,Mee=nD.buttons;iD.exports=function(r,t){var a={name:Tee,handleItemDefaults:Aee};aD(r,t,a)};function Aee(e,r,t){function a(l,o){return Cd.coerce(e,r,nD,l,o)}var n=aD(e,r,{name:"buttons",handleItemDefaults:kee}),i=a("visible",n.length>0);i&&(a("active"),a("direction"),a("type"),a("showactive"),a("x"),a("y"),Cd.noneOrAll(e,r,["x","y"]),a("xanchor"),a("yanchor"),a("pad.t"),a("pad.r"),a("pad.b"),a("pad.l"),Cd.coerceFont(a,"font",t.font),a("bgcolor",t.paper_bgcolor),a("bordercolor"),a("borderwidth"))}function kee(e,r){function t(n,i){return Cd.coerce(e,r,Mee,n,i)}var a=t("visible",e.method==="skip"||Array.isArray(e.args));a&&(t("method"),t("args"),t("args2"),t("label"),t("execute"))}});var uD=Z((cce,sD)=>{"use strict";sD.exports=xt;var li=Ir(),oD=Er(),bu=at(),Ld=Ie();function xt(e,r,t){this.gd=e,this.container=r,this.id=t,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}xt.barWidth=2;xt.barLength=20;xt.barRadius=2;xt.barPad=1;xt.barColor="#808BA4";xt.prototype.enable=function(r,t,a){var n=this.gd._fullLayout,i=n.width,l=n.height;this.position=r;var o=this.position.l,s=this.position.w,u=this.position.t,f=this.position.h,v=this.position.direction,h=v==="down",d=v==="left",m=v==="right",g=v==="up",y=s,_=f,w,T,b,M;!h&&!d&&!m&&!g&&(this.position.direction="down",h=!0);var C=h||g;C?(w=o,T=w+y,h?(b=u,M=Math.min(b+_,l),_=M-b):(M=u+_,b=Math.max(M-_,0),_=M-b)):(b=u,M=b+_,d?(T=o+y,w=Math.max(T-y,0),y=T-w):(w=o,T=Math.min(w+y,i),y=T-w)),this._box={l:w,t:b,w:y,h:_};var k=s>y,q=xt.barLength+2*xt.barPad,D=xt.barWidth+2*xt.barPad,R=o,z=u+f;z+D>l&&(z=l-D);var F=this.container.selectAll("rect.scrollbar-horizontal").data(k?[0]:[]);F.exit().on(".drag",null).remove(),F.enter().append("rect").classed("scrollbar-horizontal",!0).call(oD.fill,xt.barColor),k?(this.hbar=F.attr({rx:xt.barRadius,ry:xt.barRadius,x:R,y:z,width:q,height:D}),this._hbarXMin=R+q/2,this._hbarTranslateMax=y-q):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var H=f>_,O=xt.barWidth+2*xt.barPad,J=xt.barLength+2*xt.barPad,X=o+s,G=u;X+O>i&&(X=i-O);var I=this.container.selectAll("rect.scrollbar-vertical").data(H?[0]:[]);I.exit().on(".drag",null).remove(),I.enter().append("rect").classed("scrollbar-vertical",!0).call(oD.fill,xt.barColor),H?(this.vbar=I.attr({rx:xt.barRadius,ry:xt.barRadius,x:X,y:G,width:O,height:J}),this._vbarYMin=G+J/2,this._vbarTranslateMax=_-J):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var Y=this.id,K=w-.5,Q=H?T+O+.5:T+.5,ne=b-.5,me=k?M+D+.5:M+.5,de=n._topdefs.selectAll("#"+Y).data(k||H?[0]:[]);if(de.exit().remove(),de.enter().append("clipPath").attr("id",Y).append("rect"),k||H?(this._clipRect=de.select("rect").attr({x:Math.floor(K),y:Math.floor(ne),width:Math.ceil(Q)-Math.floor(K),height:Math.ceil(me)-Math.floor(ne)}),this.container.call(bu.setClipUrl,Y,this.gd),this.bg.attr({x:o,y:u,width:s,height:f})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(bu.setClipUrl,null),delete this._clipRect),k||H){var ke=li.behavior.drag().on("dragstart",function(){li.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(ke);var re=li.behavior.drag().on("dragstart",function(){li.event.sourceEvent.preventDefault(),li.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));k&&this.hbar.on(".drag",null).call(re),H&&this.vbar.on(".drag",null).call(re)}this.setTranslate(t,a)};xt.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(bu.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};xt.prototype._onBoxDrag=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r-=li.event.dx),this.vbar&&(t-=li.event.dy),this.setTranslate(r,t)};xt.prototype._onBoxWheel=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r+=li.event.deltaY),this.vbar&&(t+=li.event.deltaY),this.setTranslate(r,t)};xt.prototype._onBarDrag=function(){var r=this.translateX,t=this.translateY;if(this.hbar){var a=r+this._hbarXMin,n=a+this._hbarTranslateMax,i=Ld.constrain(li.event.x,a,n),l=(i-a)/(n-a),o=this.position.w-this._box.w;r=l*o}if(this.vbar){var s=t+this._vbarYMin,u=s+this._vbarTranslateMax,f=Ld.constrain(li.event.y,s,u),v=(f-s)/(u-s),h=this.position.h-this._box.h;t=v*h}this.setTranslate(r,t)};xt.prototype.setTranslate=function(r,t){var a=this.position.w-this._box.w,n=this.position.h-this._box.h;if(r=Ld.constrain(r||0,0,a),t=Ld.constrain(t||0,0,n),this.translateX=r,this.translateY=t,this.container.call(bu.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-t),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+t-.5)}),this.hbar){var i=r/a;this.hbar.call(bu.setTranslate,r+i*this._hbarTranslateMax,t)}if(this.vbar){var l=t/n;this.vbar.call(bu.setTranslate,r,t+l*this._vbarTranslateMax)}}});var bD=Z((vce,gD)=>{"use strict";var xu=Ir(),pc=Ft(),mc=Er(),_u=at(),hn=Ie(),qd=Ta(),See=ct().arrayEditor,cD=Pa().LINE_SPACING,_r=Sd(),Cee=uD();gD.exports=function(r){var t=r._fullLayout,a=hn.filterVisible(t[_r.name]);function n(h){pc.autoMargin(r,mD(h))}var i=t._menulayer.selectAll("g."+_r.containerClassName).data(a.length>0?[0]:[]);if(i.enter().append("g").classed(_r.containerClassName,!0).style("cursor","pointer"),i.exit().each(function(){xu.select(this).selectAll("g."+_r.headerGroupClassName).each(n)}).remove(),a.length!==0){var l=i.selectAll("g."+_r.headerGroupClassName).data(a,Lee);l.enter().append("g").classed(_r.headerGroupClassName,!0);for(var o=hn.ensureSingle(i,"g",_r.dropdownButtonGroupClassName,function(h){h.style("pointer-events","all")}),s=0;s{"use strict";var Nee=Sd();xD.exports={moduleType:"component",name:Nee.name,layoutAttributes:P2(),supplyLayoutDefaults:lD(),draw:bD()}});var gc=Z((dce,wD)=>{"use strict";wD.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var F2=Z((pce,AD)=>{"use strict";var TD=ma(),Fee=qv(),Iee=Gt().extendDeepAll,Hee=pi().overrideAll,Oee=Qu(),MD=ct().templatedArray,Bo=gc(),Bee=MD("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});AD.exports=Hee(MD("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:Bee,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:Iee(Fee({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:Oee.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:TD({})},font:TD({}),activebgcolor:{valType:"color",dflt:Bo.gripBgActiveColor},bgcolor:{valType:"color",dflt:Bo.railBgColor},bordercolor:{valType:"color",dflt:Bo.railBorderColor},borderwidth:{valType:"number",min:0,dflt:Bo.railBorderWidth},ticklen:{valType:"number",min:0,dflt:Bo.tickLength},tickcolor:{valType:"color",dflt:Bo.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:Bo.minorTickLength}}),"arraydraw","from-root")});var LD=Z((mce,CD)=>{"use strict";var wu=Ie(),kD=Kn(),SD=F2(),Yee=gc(),Uee=Yee.name,Vee=SD.steps;CD.exports=function(r,t){kD(r,t,{name:Uee,handleItemDefaults:Gee})};function Gee(e,r,t){function a(v,h){return wu.coerce(e,r,SD,v,h)}for(var n=kD(e,r,{name:"steps",handleItemDefaults:Wee}),i=0,l=0;l{"use strict";var oi=Ir(),Dd=Ft(),El=Er(),si=at(),dn=Ie(),Zee=dn.strTranslate,bc=Ta(),Xee=ct().arrayEditor,Dr=gc(),O2=Pa(),ED=O2.LINE_SPACING,I2=O2.FROM_TL,H2=O2.FROM_BR;ID.exports=function(r){var t=r._context.staticPlot,a=r._fullLayout,n=Jee(a,r),i=a._infolayer.selectAll("g."+Dr.containerClassName).data(n.length>0?[0]:[]);i.enter().append("g").classed(Dr.containerClassName,!0).style("cursor",t?null:"ew-resize");function l(f){f._commandObserver&&(f._commandObserver.remove(),delete f._commandObserver),Dd.autoMargin(r,PD(f))}if(i.exit().each(function(){oi.select(this).selectAll("g."+Dr.groupClassName).each(l)}).remove(),n.length!==0){var o=i.selectAll("g."+Dr.groupClassName).data(n,Kee);o.enter().append("g").classed(Dr.groupClassName,!0),o.exit().each(l).remove();for(var s=0;s0&&(o=o.transition().duration(r.transition.duration).ease(r.transition.easing)),o.attr("transform",Zee(l-Dr.gripWidth*.5,r._dims.currentValueTotalHeight))}}function B2(e,r){var t=e._dims;return t.inputAreaStart+Dr.stepInset+(t.inputAreaLength-2*Dr.stepInset)*Math.min(1,Math.max(0,r))}function DD(e,r){var t=e._dims;return Math.min(1,Math.max(0,(r-Dr.stepInset-t.inputAreaStart)/(t.inputAreaLength-2*Dr.stepInset-2*t.inputAreaStart)))}function are(e,r,t){var a=t._dims,n=dn.ensureSingle(e,"rect",Dr.railTouchRectClass,function(i){i.call(ND,r,e,t).style("pointer-events","all")});n.attr({width:a.inputAreaLength,height:Math.max(a.inputAreaWidth,Dr.tickOffset+t.ticklen+a.labelHeight)}).call(El.fill,t.bgcolor).attr("opacity",0),si.setTranslate(n,0,a.currentValueTotalHeight)}function nre(e,r){var t=r._dims,a=t.inputAreaLength-Dr.railInset*2,n=dn.ensureSingle(e,"rect",Dr.railRectClass);n.attr({width:a,height:Dr.railWidth,rx:Dr.railRadius,ry:Dr.railRadius,"shape-rendering":"crispEdges"}).call(El.stroke,r.bordercolor).call(El.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px"),si.setTranslate(n,Dr.railInset,(t.inputAreaWidth-Dr.railWidth)*.5+t.currentValueTotalHeight)}});var BD=Z((gce,OD)=>{"use strict";var ire=gc();OD.exports={moduleType:"component",name:ire.name,layoutAttributes:F2(),supplyLayoutDefaults:LD(),draw:HD()}});var Pd=Z((bce,UD)=>{"use strict";var YD=di();UD.exports={bgcolor:{valType:"color",dflt:YD.background,editType:"plot"},bordercolor:{valType:"color",dflt:YD.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var Y2=Z((xce,VD)=>{"use strict";VD.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var Rd=Z((_ce,GD)=>{"use strict";GD.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var XD=Z(Nd=>{"use strict";var lre=Zt(),ore=Ta(),WD=Rd(),sre=Pa().LINE_SPACING,zd=WD.name;function ZD(e){var r=e&&e[zd];return r&&r.visible}Nd.isVisible=ZD;Nd.makeData=function(e){for(var r=lre.list({_fullLayout:e},"x",!0),t=e.margin,a=[],n=0;n{"use strict";var Fd=Ie(),JD=ct(),KD=Zt(),ure=Pd(),fre=Y2();QD.exports=function(r,t,a){var n=r[a],i=t[a];if(!(n.rangeslider||t._requestRangeslider[i._id]))return;Fd.isPlainObject(n.rangeslider)||(n.rangeslider={});var l=n.rangeslider,o=JD.newContainer(i,"rangeslider");function s(M,C){return Fd.coerce(l,o,ure,M,C)}var u,f;function v(M,C){return Fd.coerce(u,f,fre,M,C)}var h=s("visible");if(h){s("bgcolor",t.plot_bgcolor),s("bordercolor"),s("borderwidth"),s("thickness"),s("autorange",!i.isValidRange(l.range)),s("range");var d=t._subplots;if(d)for(var m=d.cartesian.filter(function(M){return M.slice(0,Math.max(0,M.indexOf("y")))===KD.name2id(a)}).map(function(M){return M.slice(M.indexOf("y"),M.length)}),g=Fd.simpleMap(m,KD.id2name),y=0;y{"use strict";var cre=Zt().list,vre=mf().getAutoRange,hre=Rd();jD.exports=function(r){for(var t=cre(r,"x",!0),a=0;a{"use strict";var Id=Ir(),dre=br(),pre=Ft(),qt=Ie(),Hd=qt.strTranslate,tE=at(),Pl=Er(),mre=df(),yre=Td(),U2=Zt(),gre=$n(),bre=_l(),Fr=Rd();aE.exports=function(e){for(var r=e._fullLayout,t=r._rangeSliderData,a=0;a=I.max)X=z[G+1];else if(J=I.pmax)X=z[G+1];else if(J0?e.touches[0].clientX:0}function xre(e,r,t,a){if(r._context.staticPlot)return;var n=e.select("rect."+Fr.slideBoxClassName).node(),i=e.select("rect."+Fr.grabAreaMinClassName).node(),l=e.select("rect."+Fr.grabAreaMaxClassName).node();function o(){var s=Id.event,u=s.target,f=rE(s),v=f-e.node().getBoundingClientRect().left,h=a.d2p(t._rl[0]),d=a.d2p(t._rl[1]),m=gre.coverSlip();this.addEventListener("touchmove",g),this.addEventListener("touchend",y),m.addEventListener("mousemove",g),m.addEventListener("mouseup",y);function g(_){var w=rE(_),T=+w-f,b,M,C;switch(u){case n:if(C="ew-resize",h+T>t._length||d+T<0)return;b=h+T,M=d+T;break;case i:if(C="col-resize",h+T>t._length)return;b=h+T,M=d;break;case l:if(C="col-resize",d+T<0)return;b=h,M=d+T;break;default:C="ew-resize",b=v,M=v+T;break}if(M{"use strict";var qre=Ie(),Dre=Pd(),Ere=Y2(),V2=XD();iE.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:qre.extendFlat({},Dre,{yaxis:Ere})}}},layoutAttributes:Pd(),handleDefaults:$D(),calcAutorange:eE(),draw:nE(),isVisible:V2.isVisible,makeData:V2.makeData,autoMarginOpts:V2.autoMarginOpts}});var Od=Z((Sce,sE)=>{"use strict";var Pre=ma(),oE=di(),Rre=ct().templatedArray,zre=Rre("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});sE.exports={visible:{valType:"boolean",editType:"plot"},buttons:zre,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:Pre({editType:"plot"}),bgcolor:{valType:"color",dflt:oE.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:oE.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var G2=Z((Cce,uE)=>{"use strict";uE.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var vE=Z((Lce,cE)=>{"use strict";var Bd=Ie(),Nre=Er(),Fre=ct(),Ire=Kn(),fE=Od(),W2=G2();cE.exports=function(r,t,a,n,i){var l=r.rangeselector||{},o=Fre.newContainer(t,"rangeselector");function s(d,m){return Bd.coerce(l,o,fE,d,m)}var u=Ire(l,o,{name:"buttons",handleItemDefaults:Hre,calendar:i}),f=s("visible",u.length>0);if(f){var v=Ore(t,a,n);s("x",v[0]),s("y",v[1]),Bd.noneOrAll(r,t,["x","y"]),s("xanchor"),s("yanchor"),Bd.coerceFont(s,"font",a.font);var h=s("bgcolor");s("activecolor",Nre.contrast(h,W2.lightAmount,W2.darkAmount)),s("bordercolor"),s("borderwidth")}};function Hre(e,r,t,a){var n=a.calendar;function i(s,u){return Bd.coerce(e,r,fE.buttons,s,u)}var l=i("visible");if(l){var o=i("step");o!=="all"&&(n&&n!=="gregorian"&&(o==="month"||o==="year")?r.stepmode="backward":i("stepmode"),i("count")),i("label")}}function Ore(e,r,t){for(var a=t.filter(function(o){return r[o].anchor===e._id}),n=0,i=0;i{"use strict";var Bre=V1(),Yre=Ie().titleCase;hE.exports=function(r,t){var a=r._name,n={};if(t.step==="all")n[a+".autorange"]=!0;else{var i=Ure(r,t);n[a+".range[0]"]=i[0],n[a+".range[1]"]=i[1]}return n};function Ure(e,r){var t=e.range,a=new Date(e.r2l(t[1])),n=r.step,i=Bre["utc"+Yre(n)],l=r.count,o;switch(r.stepmode){case"backward":o=e.l2r(+i.offset(a,-l));break;case"todate":var s=i.offset(a,-l);o=e.l2r(+i.ceil(s));break}var u=t[1];return[o,u]}});var wE=Z((Dce,_E)=>{"use strict";var Ud=Ir(),Vre=br(),Gre=Ft(),pE=Er(),xE=at(),Ji=Ie(),mE=Ji.strTranslate,Yd=Ta(),Wre=Zt(),J2=Pa(),yE=J2.LINE_SPACING,gE=J2.FROM_TL,bE=J2.FROM_BR,X2=G2(),Zre=dE();_E.exports=function(r){var t=r._fullLayout,a=t._infolayer.selectAll(".rangeselector").data(Xre(r),Jre);a.enter().append("g").classed("rangeselector",!0),a.exit().remove(),a.style({cursor:"pointer","pointer-events":"all"}),a.each(function(n){var i=Ud.select(this),l=n,o=l.rangeselector,s=i.selectAll("g.button").data(Ji.filterVisible(o.buttons));s.enter().append("g").classed("button",!0),s.exit().remove(),s.each(function(u){var f=Ud.select(this),v=Zre(l,u);u._isActive=Kre(l,u,v),f.call(Z2,o,u),f.call($re,o,u,r),f.on("click",function(){r._dragged||Vre.call("_guiRelayout",r,v)}),f.on("mouseover",function(){u._isHovered=!0,f.call(Z2,o,u)}),f.on("mouseout",function(){u._isHovered=!1,f.call(Z2,o,u)})}),ete(r,s,o,l._name,i)})};function Xre(e){for(var r=Wre.list(e,"x",!0),t=[],a=0;a{"use strict";TE.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:Od()}}},layoutAttributes:Od(),handleDefaults:vE(),draw:wE()}});var Vd=Z(K2=>{"use strict";var AE=Gt().extendFlat;K2.attributes=function(e,r){e=e||{},r=r||{};var t={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},a=e.name?e.name+" ":"",n=e.trace?"trace ":"subplot ",i=r.description?" "+r.description:"",l={x:AE({},t,{}),y:AE({},t,{}),editType:e.editType};return e.noGridCell||(l.row={valType:"integer",min:0,dflt:0,editType:e.editType},l.column={valType:"integer",min:0,dflt:0,editType:e.editType}),l};K2.defaults=function(e,r,t,a){var n=a&&a.x||[0,1],i=a&&a.y||[0,1],l=r.grid;if(l){var o=t("domain.column");o!==void 0&&(o{"use strict";var rte=Ie(),tte=hs().counter,ate=Vd().attributes,kE=ya().idRegex,nte=ct(),Q2={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[tte("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[kE.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[kE.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:ate({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function Gd(e,r,t){var a=r[t+"axes"],n=Object.keys((e._splomAxes||{})[t]||{});if(Array.isArray(a))return a;if(n.length)return n}function ite(e,r){var t=e.grid||{},a=Gd(r,t,"x"),n=Gd(r,t,"y");if(!e.grid&&!a&&!n)return;var i=Array.isArray(t.subplots)&&Array.isArray(t.subplots[0]),l=Array.isArray(a),o=Array.isArray(n),s=l&&a!==t.xaxes&&o&&n!==t.yaxes,u,f;i?(u=t.subplots.length,f=t.subplots[0].length):(o&&(u=n.length),l&&(f=a.length));var v=nte.newContainer(r,"grid");function h(C,k){return rte.coerce(t,v,Q2,C,k)}var d=h("rows",u),m=h("columns",f);if(!(d*m>1)){delete r.grid;return}if(!i&&!l&&!o){var g=h("pattern")==="independent";g&&(i=!0)}v._hasSubplotGrid=i;var y=h("roworder"),_=y==="top to bottom",w=i?.2:.1,T=i?.3:.1,b,M;s&&r._splomGridDflt&&(b=r._splomGridDflt.xside,M=r._splomGridDflt.yside),v._domains={x:SE("x",h,w,b,m),y:SE("y",h,T,M,d,_)}}function SE(e,r,t,a,n,i){var l=r(e+"gap",t),o=r("domain."+e);r(e+"side",a);for(var s=new Array(n),u=o[0],f=(o[1]-u)/(n-l),v=f*(1-l),h=0;h{"use strict";DE.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var RE=Z((Nce,PE)=>{"use strict";var EE=Hr(),ote=br(),ste=Ie(),ute=ct(),fte=$2();PE.exports=function(e,r,t,a){var n="error_"+a.axis,i=ute.newContainer(r,n),l=e[n]||{};function o(m,g){return ste.coerce(l,i,fte,m,g)}var s=l.array!==void 0||l.value!==void 0||l.type==="sqrt",u=o("visible",s);if(u!==!1){var f=o("type","array"in l?"data":"percent"),v=!0;f!=="sqrt"&&(v=o("symmetric",!((f==="data"?"arrayminus":"valueminus")in l))),f==="data"?(o("array"),o("traceref"),v||(o("arrayminus"),o("tracerefminus"))):(f==="percent"||f==="constant")&&(o("value"),v||o("valueminus"));var h="copy_"+a.inherit+"style";if(a.inherit){var d=r["error_"+a.inherit];(d||{}).visible&&o(h,!(l.color||EE(l.thickness)||EE(l.width)))}(!a.inherit||!i[h])&&(o("color",t),o("thickness"),o("width",ote.traceIs(r,"gl3d")?0:4))}}});var j2=Z((Fce,NE)=>{"use strict";NE.exports=function(r){var t=r.type,a=r.symmetric;if(t==="data"){var n=r.array||[];if(a)return function(u,f){var v=+n[f];return[v,v]};var i=r.arrayminus||[];return function(u,f){var v=+n[f],h=+i[f];return!isNaN(v)||!isNaN(h)?[h||0,v||0]:[NaN,NaN]}}else{var l=zE(t,r.value),o=zE(t,r.valueminus);return a||r.valueminus===void 0?function(u){var f=l(u);return[f,f]}:function(u){return[o(u),l(u)]}}};function zE(e,r){if(e==="percent")return function(t){return Math.abs(t*r/100)};if(e==="constant")return function(){return Math.abs(r)};if(e==="sqrt")return function(t){return Math.sqrt(Math.abs(t))}}});var HE=Z((Ice,IE)=>{"use strict";var e3=Hr(),cte=br(),r3=dt(),vte=Ie(),hte=j2();IE.exports=function(r){for(var t=r.calcdata,a=0;a{"use strict";var OE=Ir(),Rl=Hr(),dte=at(),pte=ln();BE.exports=function(r,t,a,n){var i,l=a.xaxis,o=a.yaxis,s=n&&n.duration>0,u=r._context.staticPlot;t.each(function(f){var v=f[0].trace,h=v.error_x||{},d=v.error_y||{},m;v.ids&&(m=function(w){return w.id});var g=pte.hasMarkers(v)&&v.marker.maxdisplayed>0;!d.visible&&!h.visible&&(f=[]);var y=OE.select(this).selectAll("g.errorbar").data(f,m);if(y.exit().remove(),!!f.length){h.visible||y.selectAll("path.xerror").remove(),d.visible||y.selectAll("path.yerror").remove(),y.style("opacity",1);var _=y.enter().append("g").classed("errorbar",!0);s&&_.style("opacity",0).transition().duration(n.duration).style("opacity",1),dte.setClipUrl(y,a.layerClipId,r),y.each(function(w){var T=OE.select(this),b=mte(w,l,o);if(!(g&&!w.vis)){var M,C=T.select("path.yerror");if(d.visible&&Rl(b.x)&&Rl(b.yh)&&Rl(b.ys)){var k=d.width;M="M"+(b.x-k)+","+b.yh+"h"+2*k+"m-"+k+",0V"+b.ys,b.noYS||(M+="m-"+k+",0h"+2*k),i=!C.size(),i?C=T.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("yerror",!0):s&&(C=C.transition().duration(n.duration).ease(n.easing)),C.attr("d",M)}else C.remove();var q=T.select("path.xerror");if(h.visible&&Rl(b.y)&&Rl(b.xh)&&Rl(b.xs)){var D=(h.copy_ystyle?d:h).width;M="M"+b.xh+","+(b.y-D)+"v"+2*D+"m0,-"+D+"H"+b.xs,b.noXS||(M+="m0,-"+D+"v"+2*D),i=!q.size(),i?q=T.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("xerror",!0):s&&(q=q.transition().duration(n.duration).ease(n.easing)),q.attr("d",M)}else q.remove()}})}})};function mte(e,r,t){var a={x:r.c2p(e.x),y:t.c2p(e.y)};return e.yh!==void 0&&(a.yh=t.c2p(e.yh),a.ys=t.c2p(e.ys),Rl(a.ys)||(a.noYS=!0,a.ys=t.c2p(e.ys,!0))),e.xh!==void 0&&(a.xh=r.c2p(e.xh),a.xs=r.c2p(e.xs),Rl(a.xs)||(a.noXS=!0,a.xs=r.c2p(e.xs,!0))),a}});var GE=Z((Oce,VE)=>{"use strict";var yte=Ir(),UE=Er();VE.exports=function(r){r.each(function(t){var a=t[0].trace,n=a.error_y||{},i=a.error_x||{},l=yte.select(this);l.selectAll("path.yerror").style("stroke-width",n.thickness+"px").call(UE.stroke,n.color),i.copy_ystyle&&(i=n),l.selectAll("path.xerror").style("stroke-width",i.thickness+"px").call(UE.stroke,i.color)})}});var XE=Z((Bce,ZE)=>{"use strict";var xc=Ie(),WE=pi().overrideAll,_c=$2(),Yo={error_x:xc.extendFlat({},_c),error_y:xc.extendFlat({},_c)};delete Yo.error_x.copy_zstyle;delete Yo.error_y.copy_zstyle;delete Yo.error_y.copy_ystyle;var wc={error_x:xc.extendFlat({},_c),error_y:xc.extendFlat({},_c),error_z:xc.extendFlat({},_c)};delete wc.error_x.copy_ystyle;delete wc.error_y.copy_ystyle;delete wc.error_z.copy_ystyle;delete wc.error_z.copy_zstyle;ZE.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Yo,bar:Yo,histogram:Yo,scatter3d:WE(wc,"calc","nested"),scattergl:WE(Yo,"calc","nested")}},supplyDefaults:RE(),calc:HE(),makeComputeError:j2(),plot:YE(),style:GE(),hoverInfo:gte};function gte(e,r,t){(r.error_y||{}).visible&&(t.yerr=e.yh-e.y,r.error_y.symmetric||(t.yerrneg=e.y-e.ys)),(r.error_x||{}).visible&&(t.xerr=e.xh-e.x,r.error_x.symmetric||(t.xerrneg=e.x-e.xs))}});var KE=Z((Yce,JE)=>{"use strict";JE.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var aP=Z((Uce,tP)=>{"use strict";var zl=Ir(),t3=xn(),Zd=Ft(),QE=br(),Ki=dt(),Wd=$n(),In=Ie(),fi=In.strTranslate,rP=Gt().extendFlat,a3=_l(),ui=at(),n3=Er(),bte=df(),xte=Ta(),_te=Mn().flipScale,wte=h2(),Tte=d2(),Mte=Jn(),i3=Pa(),$E=i3.LINE_SPACING,jE=i3.FROM_TL,eP=i3.FROM_BR,gt=KE().cn;function Ate(e){var r=e._fullLayout,t=r._infolayer.selectAll("g."+gt.colorbar).data(kte(e),function(a){return a._id});t.enter().append("g").attr("class",function(a){return a._id}).classed(gt.colorbar,!0),t.each(function(a){var n=zl.select(this);In.ensureSingle(n,"rect",gt.cbbg),In.ensureSingle(n,"g",gt.cbfills),In.ensureSingle(n,"g",gt.cblines),In.ensureSingle(n,"g",gt.cbaxis,function(l){l.classed(gt.crisp,!0)}),In.ensureSingle(n,"g",gt.cbtitleunshift,function(l){l.append("g").classed(gt.cbtitle,!0)}),In.ensureSingle(n,"rect",gt.cboutline);var i=Ste(n,a,e);i&&i.then&&(e._promises||[]).push(i),e._context.edits.colorbarPosition&&Cte(n,a,e)}),t.exit().each(function(a){Zd.autoMargin(e,a._id)}).remove(),t.order()}function kte(e){var r=e._fullLayout,t=e.calcdata,a=[],n,i,l,o;function s(T){return rP(T,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function u(){typeof o.calc=="function"?o.calc(e,l,n):(n._fillgradient=i.reversescale?_te(i.colorscale):i.colorscale,n._zrange=[i[o.min],i[o.max]])}for(var f=0;f1){var $=Math.pow(10,Math.floor(Math.log(B)/Math.LN10));se*=$*In.roundUp(B/$,[2,5,10]),(Math.abs(F.start)/F.size+1e-6)%1<2e-6&&(ce.tick0=0)}ce.dtick=se}ce.domain=a?[re+m/b.h,re+Y-m/b.h]:[re+d/b.w,re+Y-d/b.w],ce.setScale(),e.attr("transform",fi(Math.round(b.l),Math.round(b.t)));var U=e.select("."+gt.cbtitleunshift).attr("transform",fi(-Math.round(b.l),-Math.round(b.t))),ye=ce.ticklabelposition,we=ce.title.font.size,pe=e.select("."+gt.cbaxis),Re,Fe=0,Ee=0;function Ne(Ye,ie){var be={propContainer:ce,propName:r._propPrefix+"title.text",traceIndex:r._traceIndex,_meta:r._meta,placeholder:T._dfltTitle.colorbar,containerGroup:e.select("."+gt.cbtitle)},Ke=Ye.charAt(0)==="h"?Ye.slice(1):"h"+Ye;e.selectAll("."+Ke+",."+Ke+"-math-group").remove(),bte.draw(t,Ye,rP(be,ie||{}))}function Be(){if(a&&_e||!a&&!_e){var Ye,ie;q==="top"&&(Ye=d+b.l+K*g,ie=m+b.t+Q*(1-re-Y)+3+we*.75),q==="bottom"&&(Ye=d+b.l+K*g,ie=m+b.t+Q*(1-re)-3-we*.25),q==="right"&&(ie=m+b.t+Q*y+3+we*.75,Ye=d+b.l+K*re),Ne(ce._id+"title",{attributes:{x:Ye,y:ie,"text-anchor":a?"start":"middle"}})}}function Ge(){if(a&&!_e||!a&&_e){var Ye=ce.position||0,ie=ce._offset+ce._length/2,be,Ke;if(q==="right")Ke=ie,be=b.l+K*Ye+10+we*(ce.showticklabels?1:.5);else if(be=ie,q==="bottom"&&(Ke=b.t+Q*Ye+10+(ye.indexOf("inside")===-1?ce.tickfont.size:0)+(ce.ticks!=="inside"&&r.ticklen||0)),q==="top"){var hr=k.text.split("
").length;Ke=b.t+Q*Ye+10-X-$E*we*hr}Ne((a?"h":"v")+ce._id+"title",{avoid:{selection:zl.select(t).selectAll("g."+ce._id+"tick"),side:q,offsetTop:a?0:b.t,offsetLeft:a?b.l:0,maxShift:a?T.width:T.height},attributes:{x:be,y:Ke,"text-anchor":"middle"},transform:{rotate:a?-90:0,offset:0}})}}function qe(){if(!a&&!_e||a&&_e){var Ye=e.select("."+gt.cbtitle),ie=Ye.select("text"),be=[-s/2,s/2],Ke=Ye.select(".h"+ce._id+"title-math-group").node(),hr=15.6;ie.node()&&(hr=parseInt(ie.node().style.fontSize,10)*$E);var Pe;if(Ke?(Pe=ui.bBox(Ke),Ee=Pe.width,Fe=Pe.height,Fe>hr&&(be[1]-=(Fe-hr)/2)):ie.node()&&!ie.classed(gt.jsPlaceholder)&&(Pe=ui.bBox(ie.node()),Ee=Pe.width,Fe=Pe.height),a){if(Fe){if(Fe+=5,q==="top")ce.domain[1]-=Fe/b.h,be[1]*=-1;else{ce.domain[0]+=Fe/b.h;var Me=xte.lineCount(ie);be[1]+=(1-Me)*hr}Ye.attr("transform",fi(be[0],be[1])),ce.setScale()}}else Ee&&(q==="right"&&(ce.domain[0]+=(Ee+we/2)/b.w),Ye.attr("transform",fi(be[0],be[1])),ce.setScale())}e.selectAll("."+gt.cbfills+",."+gt.cblines).attr("transform",a?fi(0,Math.round(b.h*(1-ce.domain[1]))):fi(Math.round(b.w*ce.domain[0]),0)),pe.attr("transform",a?fi(0,Math.round(-b.t)):fi(Math.round(-b.l),0));var Se=e.select("."+gt.cbfills).selectAll("rect."+gt.cbfill).attr("style","").data(O);Se.enter().append("rect").classed(gt.cbfill,!0).attr("style",""),Se.exit().remove();var Oe=D.map(ce.c2p).map(Math.round).sort(function(tr,Qe){return tr-Qe});Se.each(function(tr,Qe){var ze=[Qe===0?D[0]:(O[Qe]+O[Qe-1])/2,Qe===O.length-1?D[1]:(O[Qe]+O[Qe+1])/2].map(ce.c2p).map(Math.round);a&&(ze[1]=In.constrain(ze[1]+(ze[1]>ze[0])?1:-1,Oe[0],Oe[1]));var ae=zl.select(this).attr(a?"x":"y",ne).attr(a?"y":"x",zl.min(ze)).attr(a?"width":"height",Math.max(X,2)).attr(a?"height":"width",Math.max(zl.max(ze)-zl.min(ze),2));if(r._fillgradient)ui.gradient(ae,t,r._id,a?"vertical":"horizontalreversed",r._fillgradient,"fill");else{var le=z(tr).replace("e-","");ae.attr("fill",t3(le).toHexString())}});var Je=e.select("."+gt.cblines).selectAll("path."+gt.cbline).data(C.color&&C.width?J:[]);Je.enter().append("path").classed(gt.cbline,!0),Je.exit().remove(),Je.each(function(tr){var Qe=ne,ze=Math.round(ce.c2p(tr))+C.width/2%1;zl.select(this).attr("d","M"+(a?Qe+","+ze:ze+","+Qe)+(a?"h":"v")+X).call(ui.lineGroupStyle,C.width,R(tr),C.dash)}),pe.selectAll("g."+ce._id+"tick,path").remove();var We=ne+X+(s||0)/2-(r.ticks==="outside"?1:0),Ze=Ki.calcTicks(ce),lr=Ki.getTickSigns(ce)[2];return Ki.drawTicks(t,ce,{vals:ce.ticks==="inside"?Ki.clipEnds(ce,Ze):Ze,layer:pe,path:Ki.makeTickPath(ce,We,lr),transFn:Ki.makeTransTickFn(ce)}),Ki.drawLabels(t,ce,{vals:Ze,layer:pe,transFn:Ki.makeTransTickLabelFn(ce),labelFns:Ki.makeLabelFns(ce,We)})}function He(){var Ye,ie=X+s/2;ye.indexOf("inside")===-1&&(Ye=ui.bBox(pe.node()),ie+=a?Ye.width:Ye.height),Re=U.select("text");var be=0,Ke=a&&q==="top",hr=!a&&q==="right",Pe=0;if(Re.node()&&!Re.classed(gt.jsPlaceholder)){var Me,Se=U.select(".h"+ce._id+"title-math-group").node();Se&&(a&&_e||!a&&!_e)?(Ye=ui.bBox(Se),be=Ye.width,Me=Ye.height):(Ye=ui.bBox(U.node()),be=Ye.right-b.l-(a?ne:Ce),Me=Ye.bottom-b.t-(a?Ce:ne),!a&&q==="top"&&(ie+=Ye.height,Pe=Ye.height)),hr&&(Re.attr("transform",fi(be/2+we/2,0)),be*=2),ie=Math.max(ie,a?be:Me)}var Oe=(a?d:m)*2+ie+u+s/2,Je=0;!a&&k.text&&h==="bottom"&&y<=0&&(Je=Oe/2,Oe+=Je,Pe+=Je),T._hColorbarMoveTitle=Je,T._hColorbarMoveCBTitle=Pe;var We=u+s,Ze=(a?ne:Ce)-We/2-(a?d:0),lr=(a?Ce:ne)-(a?I:m+Pe-Je);e.select("."+gt.cbbg).attr("x",Ze).attr("y",lr).attr(a?"width":"height",Math.max(Oe-Je,2)).attr(a?"height":"width",Math.max(I+We,2)).call(n3.fill,f).call(n3.stroke,r.bordercolor).style("stroke-width",u);var tr=hr?Math.max(be-10,0):0;e.selectAll("."+gt.cboutline).attr("x",(a?ne:Ce+d)+tr).attr("y",(a?Ce+m-I:ne)+(Ke?Fe:0)).attr(a?"width":"height",Math.max(X,2)).attr(a?"height":"width",Math.max(I-(a?2*m+Fe:2*d+tr),2)).call(n3.stroke,r.outlinecolor).style({fill:"none","stroke-width":s});var Qe=a?me*Oe:0,ze=a?0:(1-de)*Oe-Pe;if(Qe=w?b.l-Qe:-Qe,ze=_?b.t-ze:-ze,e.attr("transform",fi(Qe,ze)),!a&&(u||t3(f).getAlpha()&&!t3.equals(T.paper_bgcolor,f))){var ae=pe.selectAll("text"),le=ae[0].length,Le=e.select("."+gt.cbbg).node(),De=ui.bBox(Le),ar=ui.getTranslate(e),cr=2;ae.each(function(La,sa){var ua=0,vr=le-1;if(sa===ua||sa===vr){var lt=ui.bBox(this),Xr=ui.getTranslate(this),ft;if(sa===vr){var kt=lt.right+Xr.x,bt=De.right+ar.x+Ce-u-cr+g;ft=bt-kt,ft>0&&(ft=0)}else if(sa===ua){var Qr=lt.left+Xr.x,fa=De.left+ar.x+Ce+u+cr;ft=fa-Qr,ft<0&&(ft=0)}ft&&(le<3?this.setAttribute("transform","translate("+ft+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var sr={},Mr=jE[v],Br=eP[v],$r=jE[h],it=eP[h],_t=Oe-X;a?(i==="pixels"?(sr.y=y,sr.t=I*$r,sr.b=I*it):(sr.t=sr.b=0,sr.yt=y+n*$r,sr.yb=y-n*it),o==="pixels"?(sr.x=g,sr.l=Oe*Mr,sr.r=Oe*Br):(sr.l=_t*Mr,sr.r=_t*Br,sr.xl=g-l*Mr,sr.xr=g+l*Br)):(i==="pixels"?(sr.x=g,sr.l=I*Mr,sr.r=I*Br):(sr.l=sr.r=0,sr.xl=g+n*Mr,sr.xr=g-n*Br),o==="pixels"?(sr.y=1-y,sr.t=Oe*$r,sr.b=Oe*it):(sr.t=_t*$r,sr.b=_t*it,sr.yt=y-l*$r,sr.yb=y+l*it));var yt=r.y<.5?"b":"t",Dt=r.x<.5?"l":"r";t._fullLayout._reservedMargin[r._id]={};var Kt={r:T.width-Ze-Qe,l:Ze+sr.r,b:T.height-lr-ze,t:lr+sr.b};w&&_?Zd.autoMargin(t,r._id,sr):w?t._fullLayout._reservedMargin[r._id][yt]=Kt[yt]:_||a?t._fullLayout._reservedMargin[r._id][Dt]=Kt[Dt]:t._fullLayout._reservedMargin[r._id][yt]=Kt[yt]}return In.syncOrAsync([Zd.previousPromises,Be,qe,Ge,Zd.previousPromises,He],t)}function Cte(e,r,t){var a=r.orientation==="v",n=t._fullLayout,i=n._size,l,o,s;Wd.init({element:e.node(),gd:t,prepFn:function(){l=e.attr("transform"),a3(e)},moveFn:function(u,f){e.attr("transform",l+fi(u,f)),o=Wd.align((a?r._uFrac:r._vFrac)+u/i.w,a?r._thickFrac:r._lenFrac,0,1,r.xanchor),s=Wd.align((a?r._vFrac:1-r._uFrac)-f/i.h,a?r._lenFrac:r._thickFrac,0,1,r.yanchor);var v=Wd.getCursor(o,s,r.xanchor,r.yanchor);a3(e,v)},doneFn:function(){if(a3(e),o!==void 0&&s!==void 0){var u={};u[r._propPrefix+"x"]=o,u[r._propPrefix+"y"]=s,r._traceIndex!==void 0?QE.call("_guiRestyle",t,u,r._traceIndex):QE.call("_guiRelayout",t,u)}}})}function Lte(e,r,t){var a=r._levels,n=[],i=[],l,o,s=a.end+a.size/100,u=a.size,f=1.001*t[0]-.001*t[1],v=1.001*t[1]-.001*t[0];for(o=0;o<1e5&&(l=a.start+o*u,!(u>0?l>=s:l<=s));o++)l>f&&l0?l>=s:l<=s));o++)l>t[0]&&l{"use strict";nP.exports={moduleType:"component",name:"colorbar",attributes:i0(),supplyDefaults:om(),draw:aP().draw,hasColorbar:Kp()}});var oP=Z((Gce,lP)=>{"use strict";lP.exports={moduleType:"component",name:"legend",layoutAttributes:ny(),supplyLayoutDefaults:ly(),draw:gy(),style:dy()}});var uP=Z((Wce,sP)=>{"use strict";sP.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var cP=Z((Zce,fP)=>{"use strict";fP.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var o3=Z((Xce,pP)=>{"use strict";var Dte=br(),dP=Ie(),l3=dP.extendFlat,vP=dP.extendDeep;function hP(e){var r;switch(e){case"themes__thumb":r={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":r={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:r={}}return r}function Ete(e){var r=["xaxis","yaxis","zaxis"];return r.indexOf(e.slice(0,5))>-1}pP.exports=function(r,t){var a,n=r.data,i=r.layout,l=vP([],n),o=vP({},i,hP(t.tileClass)),s=r._context||{};if(t.width&&(o.width=t.width),t.height&&(o.height=t.height),t.tileClass==="thumbnail"||t.tileClass==="themes__thumb"){o.annotations=[];var u=Object.keys(o);for(a=0;a{"use strict";var Pte=Gv().EventEmitter,Rte=br(),zte=Ie(),mP=Eo(),Nte=o3(),Fte=rd(),Ite=td();function Hte(e,r){var t=new Pte,a=Nte(e,{format:"png"}),n=a.gd;n.style.position="absolute",n.style.left="-5000px",document.body.appendChild(n);function i(){var o=mP.getDelay(n._fullLayout);setTimeout(function(){var s=Fte(n),u=document.createElement("canvas");u.id=zte.randstr(),t=Ite({format:r.format,width:n._fullLayout.width,height:n._fullLayout.height,canvas:u,emitter:t,svg:s}),t.clean=function(){n&&document.body.removeChild(n)}},o)}var l=mP.getRedrawFunc(n);return Rte.call("_doPlot",n,a.data,a.layout,a.config).then(l).then(i).catch(function(o){t.emit("error",o)}),t}yP.exports=Hte});var _P=Z((Kce,xP)=>{"use strict";var bP=Eo(),Ote={getDelay:bP.getDelay,getRedrawFunc:bP.getRedrawFunc,clone:o3(),toSVG:rd(),svgToImg:td(),toImage:gP(),downloadImage:Ng()};xP.exports=Ote});var TP=Z(Qi=>{"use strict";Qi.version=sv().version;vb();r6();var Bte=br(),Tc=Qi.register=Bte.register,u3=kS(),wP=Object.keys(u3);for(Xd=0;Xd{"use strict";MP.exports=TP()});var Kd=Z((jce,kP)=>{"use strict";kP.exports={TEXTPAD:3,eventDataKeys:["value","label"]}});var Mc=Z((eve,DP)=>{"use strict";var At=Do(),SP=n0().axisHoverFormat,{hovertemplateAttrs:Yte,texttemplateAttrs:Ute,templatefallbackAttrs:CP}=to(),qP=cf(),Vte=ma(),LP=Kd(),Gte=mi().pattern,Uo=Gt().extendFlat,f3=Vte({editType:"calc",arrayOk:!0,colorEditType:"style"}),Wte=At.marker,Zte=Wte.line,Xte=Uo({},Zte.width,{dflt:0}),Jte=Uo({width:Xte,editType:"calc"},qP("marker.line")),Kte=Uo({line:Jte,editType:"calc"},qP("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:Gte,cornerradius:{valType:"any",editType:"calc"}});DP.exports={x:At.x,x0:At.x0,dx:At.dx,y:At.y,y0:At.y0,dy:At.dy,xperiod:At.xperiod,yperiod:At.yperiod,xperiod0:At.xperiod0,yperiod0:At.yperiod0,xperiodalignment:At.xperiodalignment,yperiodalignment:At.yperiodalignment,xhoverformat:SP("x"),yhoverformat:SP("y"),text:At.text,texttemplate:Ute({editType:"plot"},{keys:LP.eventDataKeys}),texttemplatefallback:CP({editType:"plot"}),hovertext:At.hovertext,hovertemplate:Yte({},{keys:LP.eventDataKeys}),hovertemplatefallback:CP(),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:Uo({},f3,{}),insidetextfont:Uo({},f3,{}),outsidetextfont:Uo({},f3,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:Uo({},At.cliponaxis,{}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc"},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc"},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc"},marker:Kte,offsetgroup:At.offsetgroup,alignmentgroup:At.alignmentgroup,selected:{marker:{opacity:At.selected.marker.opacity,color:At.selected.marker.color,editType:"style"},textfont:At.selected.textfont,editType:"style"},unselected:{marker:{opacity:At.unselected.marker.opacity,color:At.unselected.marker.color,editType:"style"},textfont:At.unselected.textfont,editType:"style"},zorder:At.zorder}});var c3=Z((rve,EP)=>{"use strict";EP.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}});var NP=Z((tve,zP)=>{"use strict";var Qte=Er(),PP=Mn().hasColorscale,RP=Es(),$te=Ie().coercePattern;zP.exports=function(r,t,a,n,i){var l=a("marker.color",n),o=PP(r,"marker");o&&RP(r,t,i,a,{prefix:"marker.",cLetter:"c"}),a("marker.line.color",Qte.defaultLine),PP(r,"marker.line")&&RP(r,t,i,a,{prefix:"marker.line.",cLetter:"c"}),a("marker.line.width"),a("marker.opacity"),$te(a,"marker.pattern",l,o),a("selected.marker.color"),a("unselected.marker.color")}});var Ac=Z((ave,YP)=>{"use strict";var FP=Hr(),Mu=Ie(),IP=Er(),jte=br(),eae=Hg(),rae=Og(),tae=NP(),aae=Bg(),HP=Mc(),Qd=Mu.coerceFont;function nae(e,r,t,a){function n(u,f){return Mu.coerce(e,r,HP,u,f)}var i=eae(e,r,a,n);if(!i){r.visible=!1;return}rae(e,r,a,n),n("xhoverformat"),n("yhoverformat"),n("zorder"),n("orientation",r.x&&!r.y?"h":"v"),n("base"),n("offset"),n("width"),n("text"),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback");var l=n("textposition");BP(e,r,a,n,l,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),tae(e,r,n,t,a);var o=(r.marker.line||{}).color,s=jte.getComponentMethod("errorbars","supplyDefaults");s(e,r,o||IP.defaultLine,{axis:"y"}),s(e,r,o||IP.defaultLine,{axis:"x",inherit:"y"}),Mu.coerceSelectionMarkerOpacity(r,n)}function iae(e,r){var t,a;function n(o,s){return Mu.coerce(a._input,a,HP,o,s)}for(var i=0;i=0)return e}else if(typeof e=="string"&&(e=e.trim(),e.slice(-1)==="%"&&FP(e.slice(0,-1))&&(e=+e.slice(0,-1),e>=0)))return e+"%"}function BP(e,r,t,a,n,i){i=i||{};var l=i.moduleHasSelected!==!1,o=i.moduleHasUnselected!==!1,s=i.moduleHasConstrain!==!1,u=i.moduleHasCliponaxis!==!1,f=i.moduleHasTextangle!==!1,v=i.moduleHasInsideanchor!==!1,h=!!i.hasPathbar,d=Array.isArray(n)||n==="auto",m=d||n==="inside",g=d||n==="outside";if(m||g){var y=Qd(a,"textfont",t.font),_=Mu.extendFlat({},y),w=e.textfont&&e.textfont.color,T=!w;if(T&&delete _.color,Qd(a,"insidetextfont",_),h){var b=Mu.extendFlat({},y);T&&delete b.color,Qd(a,"pathbar.textfont",b)}g&&Qd(a,"outsidetextfont",y),l&&a("selected.textfont.color"),o&&a("unselected.textfont.color"),s&&a("constraintext"),u&&a("cliponaxis"),f&&a("textangle"),a("texttemplate"),a("texttemplatefallback")}m&&v&&a("insidetextanchor")}YP.exports={supplyDefaults:nae,crossTraceDefaults:iae,handleText:BP,validateCornerradius:OP}});var VP=Z((nve,UP)=>{"use strict";var lae=br(),oae=dt(),sae=Ie(),uae=c3(),fae=Ac().validateCornerradius;UP.exports=function(e,r,t){function a(g,y){return sae.coerce(e,r,uae,g,y)}for(var n=!1,i=!1,l=!1,o={},s=a("barmode"),u=s==="group",f=0;f0&&!o[h]&&(l=!0),o[h]=!0),v.visible&&v.type==="histogram"){var d=oae.getFromId({_fullLayout:r},v[v.orientation==="v"?"xaxis":"yaxis"]);d.type!=="category"&&(i=!0)}}if(!n){delete r.barmode;return}s!=="overlay"&&a("barnorm"),a("bargap",i&&!l?0:.2),a("bargroupgap");var m=a("barcornerradius");r.barcornerradius=fae(m)}});var v3=Z((ive,GP)=>{"use strict";var Au=Ie();GP.exports=function(r,t){for(var a=0;a{"use strict";var WP=dt(),ZP=Yg(),XP=Mn().hasColorscale,JP=s0(),cae=v3(),vae=Wg();KP.exports=function(r,t){var a=WP.getFromId(r,t.xaxis||"x"),n=WP.getFromId(r,t.yaxis||"y"),i,l,o,s,u,f,v={msUTC:!!(t.base||t.base===0)};t.orientation==="h"?(i=a.makeCalcdata(t,"x",v),o=n.makeCalcdata(t,"y"),s=ZP(t,n,"y",o),u=!!t.yperiodalignment,f="y"):(i=n.makeCalcdata(t,"y",v),o=a.makeCalcdata(t,"x"),s=ZP(t,a,"x",o),u=!!t.xperiodalignment,f="x"),l=s.vals;for(var h=Math.min(l.length,i.length),d=new Array(h),m=0;m{"use strict";var hae=Ir(),dae=Ie();function pae(e,r,t){var a=e._fullLayout,n=a["_"+t+"Text_minsize"];if(n){var i=a.uniformtext.mode==="hide",l;switch(t){case"funnelarea":case"pie":case"sunburst":l="g.slice";break;case"treemap":case"icicle":l="g.slice, g.pathbar";break;default:l="g.points > g.point"}r.selectAll(l).each(function(o){var s=o.transform;if(s){s.scale=i&&s.hide?0:n/s.fontSize;var u=hae.select(this).select("text");dae.setTransormAndDisplay(u,s)}})}}function mae(e,r,t){if(t.uniformtext.mode){var a=$P(e),n=t.uniformtext.minsize,i=r.scale*r.fontSize;r.hide=i{"use strict";var gae=Hr(),bae=xn(),eR=Ie().isArrayOrTypedArray;Vo.coerceString=function(e,r,t){if(typeof r=="string"){if(r||!e.noBlank)return r}else if((typeof r=="number"||r===!0)&&!e.strict)return String(r);return t!==void 0?t:e.dflt};Vo.coerceNumber=function(e,r,t){if(gae(r)){r=+r;var a=e.min,n=e.max,i=a!==void 0&&rn;if(!i)return r}return t!==void 0?t:e.dflt};Vo.coerceColor=function(e,r,t){return bae(r).isValid()?r:t!==void 0?t:e.dflt};Vo.coerceEnumerated=function(e,r,t){return e.coerceNumber&&(r=+r),e.values.indexOf(r)!==-1?r:t!==void 0?t:e.dflt};Vo.getValue=function(e,r){var t;return eR(e)?r{"use strict";var Sc=Ir(),xae=Er(),Cc=at(),rR=Ie(),tR=br(),aR=kc().resizeText,h3=Mc(),_ae=h3.textfont,wae=h3.insidetextfont,Tae=h3.outsidetextfont,xa=$d();function Mae(e){var r=Sc.select(e).selectAll('g[class^="barlayer"]').selectAll("g.trace");aR(e,r,"bar");var t=r.size(),a=e._fullLayout;r.style("opacity",function(n){return n[0].trace.opacity}).each(function(n){(a.barmode==="stack"&&t>1||a.bargap===0&&a.bargroupgap===0&&!n[0].trace.marker.line.width)&&Sc.select(this).attr("shape-rendering","crispEdges")}),r.selectAll("g.points").each(function(n){var i=Sc.select(this),l=n[0].trace;nR(i,l,e)}),tR.getComponentMethod("errorbars","style")(r)}function nR(e,r,t){Cc.pointStyle(e.selectAll("path"),r,t),iR(e,r,t)}function iR(e,r,t){e.selectAll("text").each(function(a){var n=Sc.select(this),i=rR.ensureUniformFontSize(t,lR(n,a,r,t));Cc.font(n,i)})}function Aae(e,r,t){var a=r[0].trace;a.selectedpoints?kae(t,a,e):(nR(t,a,e),tR.getComponentMethod("errorbars","style")(t))}function kae(e,r,t){Cc.selectedPointStyle(e.selectAll("path"),r),Sae(e.selectAll("text"),r,t)}function Sae(e,r,t){e.each(function(a){var n=Sc.select(this),i;if(a.selected){i=rR.ensureUniformFontSize(t,lR(n,a,r,t));var l=r.selected.textfont&&r.selected.textfont.color;l&&(i.color=l),Cc.font(n,i)}else Cc.selectedTextStyle(n,r)})}function lR(e,r,t,a){var n=a._fullLayout.font,i=t.textfont;if(e.classed("bartext-inside")){var l=fR(r,t);i=sR(t,r.i,n,l)}else e.classed("bartext-outside")&&(i=uR(t,r.i,n));return i}function oR(e,r,t){return d3(_ae,e.textfont,r,t)}function sR(e,r,t,a){var n=oR(e,r,t),i=e._input.textfont===void 0||e._input.textfont.color===void 0||Array.isArray(e.textfont.color)&&e.textfont.color[r]===void 0;return i&&(n={color:xae.contrast(a),family:n.family,size:n.size,weight:n.weight,style:n.style,variant:n.variant,textcase:n.textcase,lineposition:n.lineposition,shadow:n.shadow}),d3(wae,e.insidetextfont,r,n)}function uR(e,r,t){var a=oR(e,r,t);return d3(Tae,e.outsidetextfont,r,a)}function d3(e,r,t,a){r=r||{};var n=xa.getValue(r.family,t),i=xa.getValue(r.size,t),l=xa.getValue(r.color,t),o=xa.getValue(r.weight,t),s=xa.getValue(r.style,t),u=xa.getValue(r.variant,t),f=xa.getValue(r.textcase,t),v=xa.getValue(r.lineposition,t),h=xa.getValue(r.shadow,t);return{family:xa.coerceString(e.family,n,a.family),size:xa.coerceNumber(e.size,i,a.size),color:xa.coerceColor(e.color,l,a.color),weight:xa.coerceString(e.weight,o,a.weight),style:xa.coerceString(e.style,s,a.style),variant:xa.coerceString(e.variant,u,a.variant),textcase:xa.coerceString(e.variant,f,a.textcase),lineposition:xa.coerceString(e.variant,v,a.lineposition),shadow:xa.coerceString(e.variant,h,a.shadow)}}function fR(e,r){return r.type==="waterfall"?r[e.dir].marker.color:e.mcc||e.mc||r.marker.color}cR.exports={style:Mae,styleTextPoints:iR,styleOnSelect:Aae,getInsideTextFont:sR,getOutsideTextFont:uR,getBarColor:fR,resizeText:aR}});var xR=Z((fve,bR)=>{"use strict";var e1=Ir(),r1=Hr(),la=Ie(),Cae=Ta(),Lae=Er(),Nl=at(),qae=br(),t1=dt().tickText,vR=kc(),Dae=vR.recordMinTextSize,Eae=vR.clearMinTextSize,p3=jd(),ku=$d(),Pae=Kd(),hR=Mc(),Rae=hR.text,zae=hR.textposition,Nae=bi().appendArrayPointValue,Oa=Pae.TEXTPAD;function Fae(e){return e.id}function Iae(e){if(e.ids)return Fae}function m3(e){return(e>0)-(e<0)}function Ei(e,r){return e0}function Oae(e,r,t,a,n,i){var l=r.xaxis,o=r.yaxis,s=e._fullLayout,u=e._context.staticPlot;n||(n={mode:s.barmode,norm:s.barmode,gap:s.bargap,groupgap:s.bargroupgap},Eae("bar",s));var f=la.makeTraceGroups(a,t,"trace bars").each(function(v){var h=e1.select(this),d=v[0].trace,m=v[0].t,g=d.type==="waterfall",y=d.type==="funnel",_=d.type==="histogram",w=d.type==="bar",T=w||y,b=0;g&&d.connector.visible&&d.connector.mode==="between"&&(b=d.connector.line.width/2);var M=d.orientation==="h",C=pR(n),k=la.ensureSingle(h,"g","points"),q=Iae(d),D=k.selectAll("g.point").data(la.identity,q);D.enter().append("g").classed("point",!0),D.exit().remove(),D.each(function(z,F){var H=e1.select(this),O=Hae(z,l,o,M),J=O[0][0],X=O[0][1],G=O[1][0],I=O[1][1],Y=(M?X-J:I-G)===0;Y&&T&&ku.getLineWidth(d,z)&&(Y=!1),Y||(Y=!r1(J)||!r1(X)||!r1(G)||!r1(I)),z.isBlank=Y,Y&&(M?X=J:I=G),b&&!Y&&(M?(J-=Ei(J,X)*b,X+=Ei(J,X)*b):(G-=Ei(G,I)*b,I+=Ei(G,I)*b));var K,Q;if(d.type==="waterfall"){if(!Y){var ne=d[z.dir].marker;K=ne.line.width,Q=ne.color}}else K=ku.getLineWidth(d,z),Q=z.mc||d.marker.color;function me(ie){var be=e1.round(K/2%1,2);return n.gap===0&&n.groupgap===0?e1.round(Math.round(ie)-be,2):ie}function de(ie,be,Ke){return Ke&&ie===be?ie:Math.abs(ie-be)>=2?me(ie):ie>be?Math.ceil(ie):Math.floor(ie)}var ke=Lae.opacity(Q),re=ke<1||K>.01?me:de;e._context.staticPlot||(J=re(J,X,M),X=re(X,J,M),G=re(G,I,!M),I=re(I,G,!M));var Ce=M?l.c2p:o.c2p,ce;z.s0>0?ce=z._sMax:z.s0<0?ce=z._sMin:ce=z.s1>0?z._sMax:z._sMin;function _e(ie,be){if(!ie)return 0;var Ke=Math.abs(M?I-G:X-J),hr=Math.abs(M?X-J:I-G),Pe=re(Math.abs(Ce(ce,!0)-Ce(0,!0))),Me=z.hasB?Math.min(Ke/2,hr/2):Math.min(Ke/2,Pe),Se;if(be==="%"){var Oe=Math.min(50,ie);Se=Ke*(Oe/100)}else Se=ie;return re(Math.max(Math.min(Se,Me),0))}var se=w||_?_e(m.cornerradiusvalue,m.cornerradiusform):0,ge,B,$="M"+J+","+G+"V"+I+"H"+X+"V"+G+"Z",U=0;if(se&&z.s){var ye=m3(z.s0)===0||m3(z.s)===m3(z.s0)?z.s1:z.s0;if(U=re(z.hasB?0:Math.abs(Ce(ce,!0)-Ce(ye,!0))),U0?Math.sqrt(U*(2*se-U)):0,Ne=we>0?Math.max:Math.min;ge="M"+J+","+G+"V"+(I-Fe*pe)+"H"+Ne(X-(se-U)*we,J)+"A "+se+","+se+" 0 0 "+Re+" "+X+","+(I-se*pe-Ee)+"V"+(G+se*pe+Ee)+"A "+se+","+se+" 0 0 "+Re+" "+Ne(X-(se-U)*we,J)+","+(G+Fe*pe)+"Z"}else if(z.hasB)ge="M"+(J+se*we)+","+G+"A "+se+","+se+" 0 0 "+Re+" "+J+","+(G+se*pe)+"V"+(I-se*pe)+"A "+se+","+se+" 0 0 "+Re+" "+(J+se*we)+","+I+"H"+(X-se*we)+"A "+se+","+se+" 0 0 "+Re+" "+X+","+(I-se*pe)+"V"+(G+se*pe)+"A "+se+","+se+" 0 0 "+Re+" "+(X-se*we)+","+G+"Z";else{B=Math.abs(I-G)+U;var Be=B0?Math.sqrt(U*(2*se-U)):0,qe=pe>0?Math.max:Math.min;ge="M"+(J+Be*we)+","+G+"V"+qe(I-(se-U)*pe,G)+"A "+se+","+se+" 0 0 "+Re+" "+(J+se*we-Ge)+","+I+"H"+(X-se*we+Ge)+"A "+se+","+se+" 0 0 "+Re+" "+(X-Be*we)+","+qe(I-(se-U)*pe,G)+"V"+G+"Z"}}else ge=$}else ge=$;var He=dR(la.ensureSingle(H,"path"),s,n,i);if(He.style("vector-effect",u?"none":"non-scaling-stroke").attr("d",isNaN((X-J)*(I-G))||Y&&e._context.staticPlot?"M0,0Z":ge).call(Nl.setClipUrl,r.layerClipId,e),!s.uniformtext.mode&&C){var Ye=Nl.makePointStyleFns(d);Nl.singlePointStyle(z,He,d,Ye,e)}Bae(e,r,H,v,F,J,X,G,I,se,U,n,i),r.layerClipId&&Nl.hideOutsideRangePoint(z,H.select("text"),l,o,d.xcalendar,d.ycalendar)});var R=d.cliponaxis===!1;Nl.setClipUrl(h,R?null:r.layerClipId,e)});qae.getComponentMethod("errorbars","plot")(e,f,r,n)}function Bae(e,r,t,a,n,i,l,o,s,u,f,v,h){var d=r.xaxis,m=r.yaxis,g=e._fullLayout,y;function _(B,$,U){var ye=la.ensureSingle(B,"text").text($).attr({class:"bartext bartext-"+y,"text-anchor":"middle","data-notex":1}).call(Nl.font,U).call(Cae.convertToTspans,e);return ye}var w=a[0].trace,T=w.orientation==="h",b=Vae(g,a,n,d,m);y=Gae(w,n);var M=v.mode==="stack"||v.mode==="relative",C=a[n],k=!M||C._outmost,q=C.hasB,D=u&&u-f>Oa;if(!b||y==="none"||(C.isBlank||i===l||o===s)&&(y==="auto"||y==="inside")){t.select("text").remove();return}var R=g.font,z=p3.getBarColor(a[n],w),F=p3.getInsideTextFont(w,n,R,z),H=p3.getOutsideTextFont(w,n,R),O=w.insidetextanchor||"end",J=t.datum();T?d.type==="log"&&J.s0<=0&&(d.range[0]0&&me>0,re;D?q?re=Go(I-2*u,Y,ne,me,T)||Go(I,Y-2*u,ne,me,T):T?re=Go(I-(u-f),Y,ne,me,T)||Go(I,Y-2*(u-f),ne,me,T):re=Go(I,Y-(u-f),ne,me,T)||Go(I-2*(u-f),Y,ne,me,T):re=Go(I,Y,ne,me,T),ke&&re?y="inside":(y="outside",K.remove(),K=null)}else y="inside";if(!K){de=la.ensureUniformFontSize(e,y==="outside"?H:F),K=_(t,b,de);var Ce=K.attr("transform");if(K.attr("transform",""),Q=Nl.bBox(K.node()),ne=Q.width,me=Q.height,K.attr("transform",Ce),ne<=0||me<=0){K.remove();return}}var ce=w.textangle,_e,se;y==="outside"?(se=w.constraintext==="both"||w.constraintext==="outside",_e=Uae(i,l,o,s,Q,{isHorizontal:T,constrained:se,angle:ce})):(se=w.constraintext==="both"||w.constraintext==="inside",_e=gR(i,l,o,s,Q,{isHorizontal:T,constrained:se,angle:ce,anchor:O,hasB:q,r:u,overhead:f})),_e.fontSize=de.size,Dae(w.type==="histogram"?"bar":w.type,_e,g),C.transform=_e;var ge=dR(K,g,v,h);la.setTransormAndDisplay(ge,_e)}function Go(e,r,t,a,n){if(e<0||r<0)return!1;var i=t<=e&&a<=r,l=t<=r&&a<=e,o=n?e>=t*(r/a):r>=a*(e/t);return i||l||o}function mR(e){return e==="auto"?0:e}function yR(e,r){var t=Math.PI/180*r,a=Math.abs(Math.sin(t)),n=Math.abs(Math.cos(t));return{x:e.width*n+e.height*a,y:e.width*a+e.height*n}}function gR(e,r,t,a,n,i){var l=!!i.isHorizontal,o=!!i.constrained,s=i.angle||0,u=i.anchor,f=u==="end",v=u==="start",h=i.leftToRight||0,d=(h+1)/2,m=1-d,g=i.hasB,y=i.r,_=i.overhead,w=n.width,T=n.height,b=Math.abs(r-e),M=Math.abs(a-t),C=b>2*Oa&&M>2*Oa?Oa:0;b-=2*C,M-=2*C;var k=mR(s);s==="auto"&&!(w<=b&&T<=M)&&(w>b||T>M)&&(!(w>M||T>b)||wOa){var z=Yae(e,r,t,a,q,y,_,l,g);D=z.scale,R=z.pad}else D=1,o&&(D=Math.min(1,b/q.x,M/q.y)),R=0;var F=n.left*m+n.right*d,H=(n.top+n.bottom)/2,O=(e+Oa)*m+(r-Oa)*d,J=(t+a)/2,X=0,G=0;if(v||f){var I=(l?q.x:q.y)/2;y&&(f||g)&&(C+=R);var Y=l?Ei(e,r):Ei(t,a);l?v?(O=e+Y*C,X=-Y*I):(O=r-Y*C,X=Y*I):v?(J=t+Y*C,G=-Y*I):(J=a-Y*C,G=Y*I)}return{textX:F,textY:H,targetX:O,targetY:J,anchorX:X,anchorY:G,scale:D,rotate:k}}function Yae(e,r,t,a,n,i,l,o,s){var u=Math.max(0,Math.abs(r-e)-2*Oa),f=Math.max(0,Math.abs(a-t)-2*Oa),v=i-Oa,h=l?v-Math.sqrt(v*v-(v-l)*(v-l)):v,d=s?v*2:o?v-l:2*h,m=s?v*2:o?2*h:v-l,g,y,_,w,T;return n.y/n.x>=f/(u-d)?w=f/n.y:n.y/n.x<=(f-m)/u?w=u/n.x:!s&&o?(g=n.x*n.x+n.y*n.y/4,y=-2*n.x*(u-v)-n.y*(f/2-v),_=(u-v)*(u-v)+(f/2-v)*(f/2-v)-v*v,w=(-y+Math.sqrt(y*y-4*g*_))/(2*g)):s?(g=(n.x*n.x+n.y*n.y)/4,y=-n.x*(u/2-v)-n.y*(f/2-v),_=(u/2-v)*(u/2-v)+(f/2-v)*(f/2-v)-v*v,w=(-y+Math.sqrt(y*y-4*g*_))/(2*g)):(g=n.x*n.x/4+n.y*n.y,y=-n.x*(u/2-v)-2*n.y*(f-v),_=(u/2-v)*(u/2-v)+(f-v)*(f-v)-v*v,w=(-y+Math.sqrt(y*y-4*g*_))/(2*g)),w=Math.min(1,w),o?T=Math.max(0,v-Math.sqrt(Math.max(0,v*v-(v-(f-n.y*w)/2)*(v-(f-n.y*w)/2)))-l):T=Math.max(0,v-Math.sqrt(Math.max(0,v*v-(v-(u-n.x*w)/2)*(v-(u-n.x*w)/2)))-l),{scale:w,pad:T}}function Uae(e,r,t,a,n,i){var l=!!i.isHorizontal,o=!!i.constrained,s=i.angle||0,u=n.width,f=n.height,v=Math.abs(r-e),h=Math.abs(a-t),d;l?d=h>2*Oa?Oa:0:d=v>2*Oa?Oa:0;var m=1;o&&(m=l?Math.min(1,h/f):Math.min(1,v/u));var g=mR(s),y=yR(n,g),_=(l?y.x:y.y)/2,w=(n.left+n.right)/2,T=(n.top+n.bottom)/2,b=(e+r)/2,M=(t+a)/2,C=0,k=0,q=l?Ei(r,e):Ei(t,a);return l?(b=r-q*d,C=q*_):(M=a+q*d,k=-q*_),{textX:w,textY:T,targetX:b,targetY:M,anchorX:C,anchorY:k,scale:m,rotate:g}}function Vae(e,r,t,a,n){var i=r[0].trace,l=i.texttemplate,o;return l?o=Wae(e,r,t,a,n):i.textinfo?o=Zae(r,t,a,n):o=ku.getValue(i.text,t),ku.coerceString(Rae,o)}function Gae(e,r){var t=ku.getValue(e.textposition,r);return ku.coerceEnumerated(zae,t)}function Wae(e,r,t,a,n){var i=r[0].trace,l=la.castOption(i,t,"texttemplate");if(!l)return"";var o=i.type==="histogram",s=i.type==="waterfall",u=i.type==="funnel",f=i.orientation==="h",v,h,d,m;f?(v="y",h=n,d="x",m=a):(v="x",h=a,d="y",m=n);function g(C){return t1(h,h.c2l(C),!0).text}function y(C){return t1(m,m.c2l(C),!0).text}var _=r[t],w={};w.label=_.p,w.labelLabel=w[v+"Label"]=g(_.p);var T=la.castOption(i,_.i,"text");(T===0||T)&&(w.text=T),w.value=_.s,w.valueLabel=w[d+"Label"]=y(_.s);var b={};Nae(b,i,_.i),(o||b.x===void 0)&&(b.x=f?w.value:w.label),(o||b.y===void 0)&&(b.y=f?w.label:w.value),(o||b.xLabel===void 0)&&(b.xLabel=f?w.valueLabel:w.labelLabel),(o||b.yLabel===void 0)&&(b.yLabel=f?w.labelLabel:w.valueLabel),s&&(w.delta=+_.rawS||_.s,w.deltaLabel=y(w.delta),w.final=_.v,w.finalLabel=y(w.final),w.initial=w.final-w.delta,w.initialLabel=y(w.initial)),u&&(w.value=_.s,w.valueLabel=y(w.value),w.percentInitial=_.begR,w.percentInitialLabel=la.formatPercent(_.begR),w.percentPrevious=_.difR,w.percentPreviousLabel=la.formatPercent(_.difR),w.percentTotal=_.sumR,w.percenTotalLabel=la.formatPercent(_.sumR));var M=la.castOption(i,_.i,"customdata");return M&&(w.customdata=M),la.texttemplateString({data:[b,w,i._meta],fallback:i.texttemplatefallback,labels:w,locale:e._d3locale,template:l})}function Zae(e,r,t,a){var n=e[0].trace,i=n.orientation==="h",l=n.type==="waterfall",o=n.type==="funnel";function s(M){var C=i?a:t;return t1(C,M,!0).text}function u(M){var C=i?t:a;return t1(C,+M,!0).text}var f=n.textinfo,v=e[r],h=f.split("+"),d=[],m,g=function(M){return h.indexOf(M)!==-1};if(g("label")&&d.push(s(e[r].p)),g("text")&&(m=la.castOption(n,v.i,"text"),(m===0||m)&&d.push(m)),l){var y=+v.rawS||v.s,_=v.v,w=_-y;g("initial")&&d.push(u(w)),g("delta")&&d.push(u(y)),g("final")&&d.push(u(_))}if(o){g("value")&&d.push(u(v.s));var T=0;g("percent initial")&&T++,g("percent previous")&&T++,g("percent total")&&T++;var b=T>1;g("percent initial")&&(m=la.formatPercent(v.begR),b&&(m+=" of initial"),d.push(m)),g("percent previous")&&(m=la.formatPercent(v.difR),b&&(m+=" of previous"),d.push(m)),g("percent total")&&(m=la.formatPercent(v.sumR),b&&(m+=" of total"),d.push(m))}return d.join("
")}bR.exports={plot:Oae,toMoveInsideBar:gR}});var AR=Z((cve,MR)=>{"use strict";var Lc=ki(),Xae=br(),_R=Er(),Jae=Ie().fillText,Kae=$d().getLineWidth,y3=dt().hoverLabelText,Qae=Vt().BADNUM;function $ae(e,r,t,a,n){var i=wR(e,r,t,a,n);if(i){var l=i.cd,o=l[0].trace,s=l[i.index];return i.color=TR(o,s),Xae.getComponentMethod("errorbars","hoverInfo")(s,o,i),[i]}}function wR(e,r,t,a,n){var i=e.cd,l=i[0].trace,o=i[0].t,s=a==="closest",u=l.type==="waterfall",f=e.maxHoverDistance,v=e.maxSpikeDistance,h,d,m,g,y,_,w;l.orientation==="h"?(h=t,d=r,m="y",g="x",y=J,_=F):(h=r,d=t,m="x",g="y",_=J,y=F);var T=l[m+"period"],b=s||T;function M(re){return k(re,-1)}function C(re){return k(re,1)}function k(re,Ce){var ce=re.w;return re[m]+Ce*ce/2}function q(re){return re[m+"End"]-re[m+"Start"]}var D=s?M:T?function(re){return re.p-q(re)/2}:function(re){return Math.min(M(re),re.p-o.bardelta/2)},R=s?C:T?function(re){return re.p+q(re)/2}:function(re){return Math.max(C(re),re.p+o.bardelta/2)};function z(re,Ce,ce){return n.finiteRange&&(ce=0),Lc.inbox(re-h,Ce-h,ce+Math.min(1,Math.abs(Ce-re)/w)-1)}function F(re){return z(D(re),R(re),f)}function H(re){return z(M(re),C(re),v)}function O(re){var Ce=re[g];if(u){var ce=Math.abs(re.rawS)||0;d>0?Ce+=ce:d<0&&(Ce-=ce)}return Ce}function J(re){var Ce=d,ce=re.b,_e=O(re);return Lc.inbox(ce-Ce,_e-Ce,f+(_e-Ce)/(_e-ce)-1)}function X(re){var Ce=d,ce=re.b,_e=O(re);return Lc.inbox(ce-Ce,_e-Ce,v+(_e-Ce)/(_e-ce)-1)}var G=e[m+"a"],I=e[g+"a"];w=Math.abs(G.r2c(G.range[1])-G.r2c(G.range[0]));function Y(re){return(y(re)+_(re))/2}var K=Lc.getDistanceFunction(a,y,_,Y);if(Lc.getClosest(i,K,e),e.index!==!1&&i[e.index].p!==Qae){b||(D=function(re){return Math.min(M(re),re.p-o.bargroupwidth/2)},R=function(re){return Math.max(C(re),re.p+o.bargroupwidth/2)});var Q=e.index,ne=i[Q],me=l.base?ne.b+ne.s:ne.s;e[g+"0"]=e[g+"1"]=I.c2p(ne[g],!0),e[g+"LabelVal"]=me;var de=o.extents[o.extents.round(ne.p)];e[m+"0"]=G.c2p(s?D(ne):de[0],!0),e[m+"1"]=G.c2p(s?R(ne):de[1],!0);var ke=ne.orig_p!==void 0;return e[m+"LabelVal"]=ke?ne.orig_p:ne.p,e.labelLabel=y3(G,e[m+"LabelVal"],l[m+"hoverformat"]),e.valueLabel=y3(I,e[g+"LabelVal"],l[g+"hoverformat"]),e.baseLabel=y3(I,ne.b,l[g+"hoverformat"]),e.spikeDistance=(X(ne)+H(ne))/2,e[m+"Spike"]=G.c2p(ne.p,!0),Jae(ne,l,e),e.hovertemplate=l.hovertemplate,e}}function TR(e,r){var t=r.mcc||e.marker.color,a=r.mlcc||e.marker.line.color,n=Kae(e,r);if(_R.opacity(t))return t;if(_R.opacity(a)&&n)return a}MR.exports={hoverPoints:$ae,hoverOnBars:wR,getTraceColor:TR}});var SR=Z((vve,kR)=>{"use strict";kR.exports=function(r,t,a){return r.x="xVal"in t?t.xVal:t.x,r.y="yVal"in t?t.yVal:t.y,t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),a.orientation==="h"?(r.label=r.y,r.value=r.x):(r.label=r.x,r.value=r.y),r}});var LR=Z((hve,CR)=>{"use strict";CR.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,l=a[0].trace,o=l.type==="funnel",s=l.orientation==="h",u=[],f;if(t===!1)for(f=0;f{"use strict";qR.exports={attributes:Mc(),layoutAttributes:c3(),supplyDefaults:Ac().supplyDefaults,crossTraceDefaults:Ac().crossTraceDefaults,supplyLayoutDefaults:VP(),calc:QP(),crossTraceCalc:t2().crossTraceCalc,colorbar:i2(),arraysToCalcdata:v3(),plot:xR().plot,style:jd().style,styleOnSelect:jd().styleOnSelect,hoverPoints:AR().hoverPoints,eventData:SR(),selectPoints:LR(),moduleType:"trace",name:"bar",basePlotModule:Td(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}});var PR=Z((pve,ER)=>{"use strict";ER.exports=DR()});var b3=Z((mve,zR)=>{"use strict";var g3=Vn(),ene=Vd().attributes,rne=ma(),tne=di(),{hovertemplateAttrs:ane,texttemplateAttrs:nne,templatefallbackAttrs:RR}=to(),Wo=Gt().extendFlat,ine=mi().pattern,a1=rne({editType:"plot",arrayOk:!0,colorEditType:"plot"});zR.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:tne.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:ine,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:Wo({},g3.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:ane({},{keys:["label","color","value","percent","text"]}),hovertemplatefallback:RR(),texttemplate:nne({editType:"plot"},{keys:["label","color","value","percent","text"]}),texttemplatefallback:RR({editType:"plot"}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:Wo({},a1,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:Wo({},a1,{}),outsidetextfont:Wo({},a1,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:Wo({},g3.showlegend,{arrayOk:!0}),legend:Wo({},g3.legend,{arrayOk:!0}),title:{text:{valType:"string",dflt:"",editType:"plot"},font:Wo({},a1,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:ene({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}});var HR=Z((yve,IR)=>{"use strict";var lne=Hr(),qc=Ie(),one=b3(),sne=Vd().defaults,une=Ac().handleText,fne=Ie().coercePattern;function NR(e,r){var t=qc.isArrayOrTypedArray(e),a=qc.isArrayOrTypedArray(r),n=Math.min(t?e.length:1/0,a?r.length:1/0);if(isFinite(n)||(n=0),n&&a){for(var i,l=0;l0){i=!0;break}}i||(n=0)}return{hasLabels:t,hasValues:a,len:n}}function FR(e,r,t,a,n){var i=a("marker.line.width");i&&a("marker.line.color",n?void 0:t.paper_bgcolor);var l=a("marker.colors");fne(a,"marker.pattern",l),e.marker&&!r.marker.pattern.fgcolor&&(r.marker.pattern.fgcolor=e.marker.colors),r.marker.pattern.bgcolor||(r.marker.pattern.bgcolor=t.paper_bgcolor)}function cne(e,r,t,a){function n(w,T){return qc.coerce(e,r,one,w,T)}var i=n("labels"),l=n("values"),o=NR(i,l),s=o.len;if(r._hasLabels=o.hasLabels,r._hasValues=o.hasValues,!r._hasLabels&&r._hasValues&&(n("label0"),n("dlabel")),!s){r.visible=!1;return}r._length=s,FR(e,r,a,n,!0),n("scalegroup");var u=n("text"),f=n("texttemplate");n("texttemplatefallback");var v;if(f||(v=n("textinfo",qc.isArrayOrTypedArray(u)?"text+percent":"percent")),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback"),f||v&&v!=="none"){var h=n("textposition");une(e,r,a,n,h,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var d=Array.isArray(h)||h==="auto",m=d||h==="outside";m&&n("automargin"),(h==="inside"||h==="auto"||Array.isArray(h))&&n("insidetextorientation")}else v==="none"&&n("textposition","none");sne(r,a,n);var g=n("hole"),y=n("title.text");if(y){var _=n("title.position",g?"middle center":"top center");!g&&_==="middle center"&&(r.title.position="top center"),qc.coerceFont(n,"title.font",a.font)}n("sort"),n("direction"),n("rotation"),n("pull")}IR.exports={handleLabelsAndValues:NR,handleMarkerDefaults:FR,supplyDefaults:cne}});var x3=Z((gve,OR)=>{"use strict";OR.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var YR=Z((bve,BR)=>{"use strict";var vne=Ie(),hne=x3();BR.exports=function(r,t){function a(n,i){return vne.coerce(r,t,hne,n,i)}a("hiddenlabels"),a("piecolorway",t.colorway),a("extendpiecolors")}});var w3=Z((xve,GR)=>{"use strict";var dne=Hr(),_3=xn(),pne=Er(),mne={};function yne(e,r){var t=[],a=e._fullLayout,n=a.hiddenlabels||[],i=r.labels,l=r.marker.colors||[],o=r.values,s=r._length,u=r._hasValues&&s,f,v;if(r.dlabel)for(i=new Array(s),f=0;f=0});var b=r.type==="funnelarea"?g:r.sort;return b&&t.sort(function(M,C){return C.v-M.v}),t[0]&&(t[0].vTotal=m),t}function UR(e){return function(t,a){return!t||(t=_3(t),!t.isValid())?!1:(t=pne.addOpacity(t,t.getAlpha()),e[a]||(e[a]=t),t)}}function gne(e,r){var t=(r||{}).type;t||(t="pie");var a=e._fullLayout,n=e.calcdata,i=a[t+"colorway"],l=a["_"+t+"colormap"];a["extend"+t+"colors"]&&(i=VR(i,mne));for(var o=0,s=0;s{"use strict";var bne=bi().appendArrayMultiPointValues;WR.exports=function(r,t){var a={curveNumber:t.index,pointNumbers:r.pts,data:t._input,fullData:t,label:r.label,color:r.color,value:r.v,percent:r.percent,text:r.text,bbox:r.bbox,v:r.v};return r.pts.length===1&&(a.pointNumber=a.i=r.pts[0]),bne(a,t,r.pts),t.type==="funnelarea"&&(delete a.v,delete a.i),a}});var pz=Z((wve,dz)=>{"use strict";var tn=Ir(),xne=Ft(),n1=ki(),jR=Er(),$i=at(),_a=Ie(),_ne=_a.strScale,XR=_a.strTranslate,T3=Ta(),ez=kc(),wne=ez.recordMinTextSize,Tne=ez.clearMinTextSize,rz=Kd().TEXTPAD,wr=U0(),i1=ZR(),JR=Ie().isValidTextValue;function Mne(e,r){var t=e._context.staticPlot,a=e._fullLayout,n=a._size;Tne("pie",a),nz(r,e),cz(r,n);var i=_a.makeTraceGroups(a._pielayer,r,"trace").each(function(l){var o=tn.select(this),s=l[0],u=s.trace;Pne(l),o.attr("stroke-linejoin","round"),o.each(function(){var f=tn.select(this).selectAll("g.slice").data(l);f.enter().append("g").classed("slice",!0),f.exit().remove();var v=[[[],[]],[[],[]]],h=!1;f.each(function(b,M){if(b.hidden){tn.select(this).selectAll("path,g").remove();return}b.pointNumber=b.i,b.curveNumber=u.index,v[b.pxmid[1]<0?0:1][b.pxmid[0]<0?0:1].push(b);var C=s.cx,k=s.cy,q=tn.select(this),D=q.selectAll("path.surface").data([b]);if(D.enter().append("path").classed("surface",!0).style({"pointer-events":t?"none":"all"}),q.call(tz,e,l),u.pull){var R=+wr.castOption(u.pull,b.pts)||0;R>0&&(C+=R*b.pxmid[0],k+=R*b.pxmid[1])}b.cxFinal=C,b.cyFinal=k;function z(I,Y,K,Q){var ne=Q*(Y[0]-I[0]),me=Q*(Y[1]-I[1]);return"a"+Q*s.r+","+Q*s.r+" 0 "+b.largeArc+(K?" 1 ":" 0 ")+ne+","+me}var F=u.hole;if(b.v===s.vTotal){var H="M"+(C+b.px0[0])+","+(k+b.px0[1])+z(b.px0,b.pxmid,!0,1)+z(b.pxmid,b.px0,!0,1)+"Z";F?D.attr("d","M"+(C+F*b.px0[0])+","+(k+F*b.px0[1])+z(b.px0,b.pxmid,!1,F)+z(b.pxmid,b.px0,!1,F)+"Z"+H):D.attr("d",H)}else{var O=z(b.px0,b.px1,!0,1);if(F){var J=1-F;D.attr("d","M"+(C+F*b.px1[0])+","+(k+F*b.px1[1])+z(b.px1,b.px0,!1,F)+"l"+J*b.px0[0]+","+J*b.px0[1]+O+"Z")}else D.attr("d","M"+C+","+k+"l"+b.px0[0]+","+b.px0[1]+O+"Z")}vz(e,b,s);var X=wr.castOption(u.textposition,b.pts),G=q.selectAll("g.slicetext").data(b.text&&X!=="none"?[0]:[]);G.enter().append("g").classed("slicetext",!0),G.exit().remove(),G.each(function(){var I=_a.ensureSingle(tn.select(this),"text","",function(re){re.attr("data-notex",1)}),Y=_a.ensureUniformFontSize(e,X==="outside"?kne(u,b,a.font):az(u,b,a.font));I.text(b.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call($i.font,Y).call(T3.convertToTspans,e);var K=$i.bBox(I.node()),Q;if(X==="outside")Q=$R(K,b);else if(Q=iz(K,b,s),X==="auto"&&Q.scale<1){var ne=_a.ensureUniformFontSize(e,u.outsidetextfont);I.call($i.font,ne),K=$i.bBox(I.node()),Q=$R(K,b)}var me=Q.textPosAngle,de=me===void 0?b.pxmid:l1(s.r,me);if(Q.targetX=C+de[0]*Q.rCenter+(Q.x||0),Q.targetY=k+de[1]*Q.rCenter+(Q.y||0),hz(Q,K),Q.outside){var ke=Q.targetY;b.yLabelMin=ke-K.height/2,b.yLabelMid=ke,b.yLabelMax=ke+K.height/2,b.labelExtraX=0,b.labelExtraY=0,h=!0}Q.fontSize=Y.size,wne(u.type,Q,a),l[M].transform=Q,_a.setTransormAndDisplay(I,Q)})});var d=tn.select(this).selectAll("g.titletext").data(u.title.text?[0]:[]);if(d.enter().append("g").classed("titletext",!0),d.exit().remove(),d.each(function(){var b=_a.ensureSingle(tn.select(this),"text","",function(k){k.attr("data-notex",1)}),M=u.title.text;u._meta&&(M=_a.templateString(M,u._meta)),b.text(M).attr({class:"titletext",transform:"","text-anchor":"middle"}).call($i.font,u.title.font).call(T3.convertToTspans,e);var C;u.title.position==="middle center"?C=Lne(s):C=uz(s,n),b.attr("transform",XR(C.x,C.y)+_ne(Math.min(1,C.scale))+XR(C.tx,C.ty))}),h&&Dne(v,u),Ane(f,u),h&&u.automargin){var m=$i.bBox(o.node()),g=u.domain,y=n.w*(g.x[1]-g.x[0]),_=n.h*(g.y[1]-g.y[0]),w=(.5*y-s.r)/n.w,T=(.5*_-s.r)/n.h;xne.autoMargin(e,"pie."+u.uid+".automargin",{xl:g.x[0]-w,xr:g.x[1]+w,yb:g.y[0]-T,yt:g.y[1]+T,l:Math.max(s.cx-s.r-m.left,0),r:Math.max(m.right-(s.cx+s.r),0),b:Math.max(m.bottom-(s.cy+s.r),0),t:Math.max(s.cy-s.r-m.top,0),pad:5})}})});setTimeout(function(){i.selectAll("tspan").each(function(){var l=tn.select(this);l.attr("dy")&&l.attr("dy",l.attr("dy"))})},0)}function Ane(e,r){e.each(function(t){var a=tn.select(this);if(!t.labelExtraX&&!t.labelExtraY){a.select("path.textline").remove();return}var n=a.select("g.slicetext text");t.transform.targetX+=t.labelExtraX,t.transform.targetY+=t.labelExtraY,_a.setTransormAndDisplay(n,t.transform);var i=t.cxFinal+t.pxmid[0],l=t.cyFinal+t.pxmid[1],o="M"+i+","+l,s=(t.yLabelMax-t.yLabelMin)*(t.pxmid[0]<0?-1:1)/4;if(t.labelExtraX){var u=t.labelExtraX*t.pxmid[1]/t.pxmid[0],f=t.yLabelMid+t.labelExtraY-(t.cyFinal+t.pxmid[1]);Math.abs(u)>Math.abs(f)?o+="l"+f*t.pxmid[0]/t.pxmid[1]+","+f+"H"+(i+t.labelExtraX+s):o+="l"+t.labelExtraX+","+u+"v"+(f-u)+"h"+s}else o+="V"+(t.yLabelMid+t.labelExtraY)+"h"+s;_a.ensureSingle(a,"path","textline").call(jR.stroke,r.outsidetextfont.color).attr({"stroke-width":Math.min(2,r.outsidetextfont.size/8),d:o,fill:"none"})})}function tz(e,r,t){var a=t[0],n=a.cx,i=a.cy,l=a.trace,o=l.type==="funnelarea";"_hasHoverLabel"in l||(l._hasHoverLabel=!1),"_hasHoverEvent"in l||(l._hasHoverEvent=!1),e.on("mouseover",function(s){var u=r._fullLayout,f=r._fullData[l.index];if(!(r._dragging||u.hovermode===!1)){var v=f.hoverinfo;if(Array.isArray(v)&&(v=n1.castHoverinfo({hoverinfo:[wr.castOption(v,s.pts)],_module:l._module},u,0)),v==="all"&&(v="label+text+value+percent+name"),f.hovertemplate||v!=="none"&&v!=="skip"&&v){var h=s.rInscribed||0,d=n+s.pxmid[0]*(1-h),m=i+s.pxmid[1]*(1-h),g=u.separators,y=[];if(v&&v.indexOf("label")!==-1&&y.push(s.label),s.text=wr.castOption(f.hovertext||f.text,s.pts),v&&v.indexOf("text")!==-1){var _=s.text;_a.isValidTextValue(_)&&y.push(_)}s.value=s.v,s.valueLabel=wr.formatPieValue(s.v,g),v&&v.indexOf("value")!==-1&&y.push(s.valueLabel),s.percent=s.v/a.vTotal,s.percentLabel=wr.formatPiePercent(s.percent,g),v&&v.indexOf("percent")!==-1&&y.push(s.percentLabel);var w=f.hoverlabel,T=w.font,b=[];n1.loneHover({trace:l,x0:d-h*a.r,x1:d+h*a.r,y:m,_x0:o?n+s.TL[0]:d-h*a.r,_x1:o?n+s.TR[0]:d+h*a.r,_y0:o?i+s.TL[1]:m-h*a.r,_y1:o?i+s.BL[1]:m+h*a.r,text:y.join("
"),name:f.hovertemplate||v.indexOf("name")!==-1?f.name:void 0,idealAlign:s.pxmid[0]<0?"left":"right",color:wr.castOption(w.bgcolor,s.pts)||s.color,borderColor:wr.castOption(w.bordercolor,s.pts),fontFamily:wr.castOption(T.family,s.pts),fontSize:wr.castOption(T.size,s.pts),fontColor:wr.castOption(T.color,s.pts),nameLength:wr.castOption(w.namelength,s.pts),textAlign:wr.castOption(w.align,s.pts),hovertemplate:wr.castOption(f.hovertemplate,s.pts),hovertemplateLabels:s,eventData:[i1(s,f)]},{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:r,inOut_bbox:b}),s.bbox=b[0],l._hasHoverLabel=!0}l._hasHoverEvent=!0,r.emit("plotly_hover",{points:[i1(s,f)],event:tn.event})}}),e.on("mouseout",function(s){var u=r._fullLayout,f=r._fullData[l.index],v=tn.select(this).datum();l._hasHoverEvent&&(s.originalEvent=tn.event,r.emit("plotly_unhover",{points:[i1(v,f)],event:tn.event}),l._hasHoverEvent=!1),l._hasHoverLabel&&(n1.loneUnhover(u._hoverlayer.node()),l._hasHoverLabel=!1)}),e.on("click",function(s){var u=r._fullLayout,f=r._fullData[l.index];r._dragging||u.hovermode===!1||(r._hoverdata=[i1(s,f)],n1.click(r,tn.event))})}function kne(e,r,t){var a=wr.castOption(e.outsidetextfont.color,r.pts)||wr.castOption(e.textfont.color,r.pts)||t.color,n=wr.castOption(e.outsidetextfont.family,r.pts)||wr.castOption(e.textfont.family,r.pts)||t.family,i=wr.castOption(e.outsidetextfont.size,r.pts)||wr.castOption(e.textfont.size,r.pts)||t.size,l=wr.castOption(e.outsidetextfont.weight,r.pts)||wr.castOption(e.textfont.weight,r.pts)||t.weight,o=wr.castOption(e.outsidetextfont.style,r.pts)||wr.castOption(e.textfont.style,r.pts)||t.style,s=wr.castOption(e.outsidetextfont.variant,r.pts)||wr.castOption(e.textfont.variant,r.pts)||t.variant,u=wr.castOption(e.outsidetextfont.textcase,r.pts)||wr.castOption(e.textfont.textcase,r.pts)||t.textcase,f=wr.castOption(e.outsidetextfont.lineposition,r.pts)||wr.castOption(e.textfont.lineposition,r.pts)||t.lineposition,v=wr.castOption(e.outsidetextfont.shadow,r.pts)||wr.castOption(e.textfont.shadow,r.pts)||t.shadow;return{color:a,family:n,size:i,weight:l,style:o,variant:s,textcase:u,lineposition:f,shadow:v}}function az(e,r,t){var a=wr.castOption(e.insidetextfont.color,r.pts);!a&&e._input.textfont&&(a=wr.castOption(e._input.textfont.color,r.pts));var n=wr.castOption(e.insidetextfont.family,r.pts)||wr.castOption(e.textfont.family,r.pts)||t.family,i=wr.castOption(e.insidetextfont.size,r.pts)||wr.castOption(e.textfont.size,r.pts)||t.size,l=wr.castOption(e.insidetextfont.weight,r.pts)||wr.castOption(e.textfont.weight,r.pts)||t.weight,o=wr.castOption(e.insidetextfont.style,r.pts)||wr.castOption(e.textfont.style,r.pts)||t.style,s=wr.castOption(e.insidetextfont.variant,r.pts)||wr.castOption(e.textfont.variant,r.pts)||t.variant,u=wr.castOption(e.insidetextfont.textcase,r.pts)||wr.castOption(e.textfont.textcase,r.pts)||t.textcase,f=wr.castOption(e.insidetextfont.lineposition,r.pts)||wr.castOption(e.textfont.lineposition,r.pts)||t.lineposition,v=wr.castOption(e.insidetextfont.shadow,r.pts)||wr.castOption(e.textfont.shadow,r.pts)||t.shadow;return{color:a||jR.contrast(r.color),family:n,size:i,weight:l,style:o,variant:s,textcase:u,lineposition:f,shadow:v}}function nz(e,r){for(var t,a,n=0;n=-4;w-=2)_(Math.PI*w,"tan");for(w=4;w>=-4;w-=2)_(Math.PI*(w+1),"tan")}if(v||d){for(w=4;w>=-4;w-=2)_(Math.PI*(w+1.5),"rad");for(w=4;w>=-4;w-=2)_(Math.PI*(w+.5),"rad")}}if(o||m||v){var T=Math.sqrt(e.width*e.width+e.height*e.height);if(y={scale:n*a*2/T,rCenter:1-n,rotate:0},y.textPosAngle=(r.startangle+r.stopangle)/2,y.scale>=1)return y;g.push(y)}(m||d)&&(y=KR(e,a,l,s,u),y.textPosAngle=(r.startangle+r.stopangle)/2,g.push(y)),(m||h)&&(y=QR(e,a,l,s,u),y.textPosAngle=(r.startangle+r.stopangle)/2,g.push(y));for(var b=0,M=0,C=0;C=1)break}return g[b]}function Sne(e,r){var t=e.startangle,a=e.stopangle;return t>r&&r>a||t0?1:-1)/2,y:i/(1+t*t/(a*a)),outside:!0}}function Lne(e){var r=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/r,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}function uz(e,r){var t=1,a=1,n,i=e.trace,l={x:e.cx,y:e.cy},o={tx:0,ty:0};o.ty+=i.title.font.size,n=fz(i),i.title.position.indexOf("top")!==-1?(l.y-=(1+n)*e.r,o.ty-=e.titleBox.height):i.title.position.indexOf("bottom")!==-1&&(l.y+=(1+n)*e.r);var s=qne(e.r,e.trace.aspectratio),u=r.w*(i.domain.x[1]-i.domain.x[0])/2;return i.title.position.indexOf("left")!==-1?(u=u+s,l.x-=(1+n)*s,o.tx+=e.titleBox.width/2):i.title.position.indexOf("center")!==-1?u*=2:i.title.position.indexOf("right")!==-1&&(u=u+s,l.x+=(1+n)*s,o.tx-=e.titleBox.width/2),t=u/e.titleBox.width,a=M3(e,r)/e.titleBox.height,{x:l.x,y:l.y,scale:Math.min(t,a),tx:o.tx,ty:o.ty}}function qne(e,r){return e/(r===void 0?1:r)}function M3(e,r){var t=e.trace,a=r.h*(t.domain.y[1]-t.domain.y[0]);return Math.min(e.titleBox.height,a/2)}function fz(e){var r=e.pull;if(!r)return 0;var t;if(_a.isArrayOrTypedArray(r))for(r=0,t=0;tr&&(r=e.pull[t]);return r}function Dne(e,r){var t,a,n,i,l,o,s,u,f,v,h,d,m;function g(T,b){return T.pxmid[1]-b.pxmid[1]}function y(T,b){return b.pxmid[1]-T.pxmid[1]}function _(T,b){b||(b={});var M=b.labelExtraY+(a?b.yLabelMax:b.yLabelMin),C=a?T.yLabelMin:T.yLabelMax,k=a?T.yLabelMax:T.yLabelMin,q=T.cyFinal+l(T.px0[1],T.px1[1]),D=M-C,R,z,F,H,O,J;if(D*s>0&&(T.labelExtraY=D),!!_a.isArrayOrTypedArray(r.pull))for(z=0;z=(wr.castOption(r.pull,F.pts)||0))&&((T.pxmid[1]-F.pxmid[1])*s>0?(H=F.cyFinal+l(F.px0[1],F.px1[1]),D=H-C-T.labelExtraY,D*s>0&&(T.labelExtraY+=D)):(k+T.labelExtraY-q)*s>0&&(R=3*o*Math.abs(z-v.indexOf(T)),O=F.cxFinal+i(F.px0[0],F.px1[0]),J=O+R-(T.cxFinal+T.pxmid[0])-T.labelExtraX,J*o>0&&(T.labelExtraX+=J)))}for(a=0;a<2;a++)for(n=a?g:y,l=a?Math.max:Math.min,s=a?1:-1,t=0;t<2;t++){for(i=t?Math.max:Math.min,o=t?1:-1,u=e[a][t],u.sort(n),f=e[1-a][t],v=f.concat(u),d=[],h=0;h1?(u=t.r,f=u/n.aspectratio):(f=t.r,u=f*n.aspectratio),u*=(1+n.baseratio)/2,s=u*f}l=Math.min(l,s/t.vTotal)}for(a=0;ar.vTotal/2?1:0,u.halfangle=Math.PI*Math.min(u.v/r.vTotal,.5),u.ring=1-a.hole,u.rInscribed=Cne(u,r))}function l1(e,r){return[e*Math.sin(r),-e*Math.cos(r)]}function vz(e,r,t){var a=e._fullLayout,n=t.trace,i=n.texttemplate,l=n.textinfo;if(!i&&l&&l!=="none"){var o=l.split("+"),s=function(b){return o.indexOf(b)!==-1},u=s("label"),f=s("text"),v=s("value"),h=s("percent"),d=a.separators,m;if(m=u?[r.label]:[],f){var g=wr.getFirstFilled(n.text,r.pts);JR(g)&&m.push(g)}v&&m.push(wr.formatPieValue(r.v,d)),h&&m.push(wr.formatPiePercent(r.v/t.vTotal,d)),r.text=m.join("
")}function y(b){return{label:b.label,value:b.v,valueLabel:wr.formatPieValue(b.v,a.separators),percent:b.v/t.vTotal,percentLabel:wr.formatPiePercent(b.v/t.vTotal,a.separators),color:b.color,text:b.text,customdata:_a.castOption(n,b.i,"customdata")}}if(i){var _=_a.castOption(n,r.i,"texttemplate");if(!_)r.text="";else{var w=y(r),T=wr.getFirstFilled(n.text,r.pts);(JR(T)||T==="")&&(w.text=T),r.text=_a.texttemplateString({data:[w,n._meta],fallback:n.texttemplatefallback,labels:w,locale:e._fullLayout._d3locale,template:_})}}}function hz(e,r){var t=e.rotate*Math.PI/180,a=Math.cos(t),n=Math.sin(t),i=(r.left+r.right)/2,l=(r.top+r.bottom)/2;e.textX=i*a-l*n,e.textY=i*n+l*a,e.noCenter=!0}dz.exports={plot:Mne,formatSliceLabel:vz,transformInsideText:iz,determineInsideTextFont:az,positionTitleOutside:uz,prerenderTitles:nz,layoutAreas:cz,attachFxHandlers:tz,computeTransform:hz}});var gz=Z((Tve,yz)=>{"use strict";var mz=Ir(),Rne=V0(),zne=kc().resizeText;yz.exports=function(r){var t=r._fullLayout._pielayer.selectAll(".trace");zne(r,t,"pie"),t.each(function(a){var n=a[0],i=n.trace,l=mz.select(this);l.style({opacity:i.opacity}),l.selectAll("path.surface").each(function(o){mz.select(this).call(Rne,o,i,r)})})}});var xz=Z(Su=>{"use strict";var bz=Ft();Su.name="pie";Su.plot=function(e,r,t,a){bz.plotBasePlot(Su.name,e,r,t,a)};Su.clean=function(e,r,t,a){bz.cleanBasePlot(Su.name,e,r,t,a)}});var wz=Z((Ave,_z)=>{"use strict";_z.exports={attributes:b3(),supplyDefaults:HR().supplyDefaults,supplyLayoutDefaults:YR(),layoutAttributes:x3(),calc:w3().calc,crossTraceCalc:w3().crossTraceCalc,plot:pz().plot,style:gz(),styleOne:V0(),moduleType:"trace",name:"pie",basePlotModule:xz(),categories:["pie-like","pie","showLegend"],meta:{}}});var Mz=Z((kve,Tz)=>{"use strict";Tz.exports=wz()});var Sa=Z((Sve,kz)=>{"use strict";var Az=Object.getOwnPropertySymbols,Nne=Object.prototype.hasOwnProperty,Fne=Object.prototype.propertyIsEnumerable;function Ine(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function Hne(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var r={},t=0;t<10;t++)r["_"+String.fromCharCode(t)]=t;var a=Object.getOwnPropertyNames(r).map(function(i){return r[i]});if(a.join("")!=="0123456789")return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach(function(i){n[i]=i}),Object.keys(Object.assign({},n)).join("")==="abcdefghijklmnopqrst"}catch(i){return!1}}kz.exports=Hne()?Object.assign:function(e,r){for(var t,a=Ine(e),n,i=1;i{var s1=Sa();function Sz(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}s1(Sz.prototype,{instance:function(e,r){e=(e||"gregorian").toLowerCase(),r=r||"";var t=this._localCals[e+"-"+r];if(!t&&this.calendars[e]&&(t=new this.calendars[e](r),this._localCals[e+"-"+r]=t),!t)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return t},newDate:function(e,r,t,a,n){return a=(e!=null&&e.year?e.calendar():typeof a=="string"?this.instance(a,n):a)||this.instance(),a.newDate(e,r,t)},substituteDigits:function(e){return function(r){return(r+"").replace(/[0-9]/g,function(t){return e[t]})}},substituteChineseDigits:function(e,r){return function(t){for(var a="",n=0;t>0;){var i=t%10;a=(i===0?"":e[i]+r[n])+a,n++,t=Math.floor(t/10)}return a.indexOf(e[1]+r[1])===0&&(a=a.substr(1)),a||e[0]}}});function A3(e,r,t,a){if(this._calendar=e,this._year=r,this._month=t,this._day=a,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function o1(e,r){return e=""+e,"000000".substring(0,r-e.length)+e}s1(A3.prototype,{newDate:function(e,r,t){return this._calendar.newDate(e==null?this:e,r,t)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,r,t){if(!this._calendar.isValid(e,r,t))throw(Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=r,this._day=t,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,r){return this._calendar.add(this,e,r)},set:function(e,r){return this._calendar.set(this,e,r)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(Pr.local.differentCalendars||Pr.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var r=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return r===0?0:r<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+o1(Math.abs(this.year()),4)+"-"+o1(this.month(),2)+"-"+o1(this.day(),2)}});function k3(){this.shortYearCutoff="+10"}s1(k3.prototype,{_validateLevel:0,newDate:function(e,r,t){return e==null?this.today():(e.year&&(this._validate(e,r,t,Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate),t=e.day(),r=e.month(),e=e.year()),new A3(this,e,r,t))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var r=this._validate(e,this.minMonth,this.minDay,Pr.local.invalidYear||Pr.regionalOptions[""].invalidYear);return r.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Pr.local.invalidYear||Pr.regionalOptions[""].invalidYear);return(r.year()<0?"-":"")+o1(Math.abs(r.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Pr.local.invalidYear||Pr.regionalOptions[""].invalidYear),12},monthOfYear:function(e,r){var t=this._validate(e,r,this.minDay,Pr.local.invalidMonth||Pr.regionalOptions[""].invalidMonth);return(t.month()+this.monthsInYear(t)-this.firstMonth)%this.monthsInYear(t)+this.minMonth},fromMonthOfYear:function(e,r){var t=(r+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,t,this.minDay,Pr.local.invalidMonth||Pr.regionalOptions[""].invalidMonth),t},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Pr.local.invalidYear||Pr.regionalOptions[""].invalidYear);return this.leapYear(r)?366:365},dayOfYear:function(e,r,t){var a=this._validate(e,r,t,Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate);return a.toJD()-this.newDate(a.year(),this.fromMonthOfYear(a.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(a))+2)%this.daysInWeek()},extraInfo:function(e,r,t){return this._validate(e,r,t,Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate),{}},add:function(e,r,t){return this._validate(e,this.minMonth,this.minDay,Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,r,t),r,t)},_add:function(e,r,t){if(this._validateLevel++,t==="d"||t==="w"){var a=e.toJD()+r*(t==="w"?this.daysInWeek():1),n=e.calendar().fromJD(a);return this._validateLevel--,[n.year(),n.month(),n.day()]}try{var i=e.year()+(t==="y"?r:0),l=e.monthOfYear()+(t==="m"?r:0),n=e.day(),o=function(f){for(;lv-1+f.minMonth;)i++,l-=v,v=f.monthsInYear(i)};t==="y"?(e.month()!==this.fromMonthOfYear(i,l)&&(l=this.newDate(i,e.month(),this.minDay).monthOfYear()),l=Math.min(l,this.monthsInYear(i)),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,l)))):t==="m"&&(o(this),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,l))));var s=[i,this.fromMonthOfYear(i,l),n];return this._validateLevel--,s}catch(u){throw this._validateLevel--,u}},_correctAdd:function(e,r,t,a){if(!this.hasYearZero&&(a==="y"||a==="m")&&(r[0]===0||e.year()>0!=r[0]>0)){var n={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[a],i=t<0?-1:1;r=this._add(e,t*n[0]+i*n[1],n[2])}return e.date(r[0],r[1],r[2])},set:function(e,r,t){this._validate(e,this.minMonth,this.minDay,Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate);var a=t==="y"?r:e.year(),n=t==="m"?r:e.month(),i=t==="d"?r:e.day();return(t==="y"||t==="m")&&(i=Math.min(i,this.daysInMonth(a,n))),e.date(a,n,i)},isValid:function(e,r,t){this._validateLevel++;var a=this.hasYearZero||e!==0;if(a){var n=this.newDate(e,r,this.minDay);a=r>=this.minMonth&&r-this.minMonth=this.minDay&&t-this.minDay13.5?13:1),u=n-(s>2.5?4716:4715);return u<=0&&u--,this.newDate(u,s,o)},toJSDate:function(e,r,t){var a=this._validate(e,r,t,Pr.local.invalidDate||Pr.regionalOptions[""].invalidDate),n=new Date(a.year(),a.month()-1,a.day());return n.setHours(0),n.setMinutes(0),n.setSeconds(0),n.setMilliseconds(0),n.setHours(n.getHours()>12?n.getHours()+2:0),n},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var Pr=Cz.exports=new Sz;Pr.cdate=A3;Pr.baseCalendar=k3;Pr.calendars.gregorian=S3});var Lz=Z(()=>{var C3=Sa(),oa=Ca();C3(oa.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});oa.local=oa.regionalOptions[""];C3(oa.cdate.prototype,{formatDate:function(e,r){return typeof e!="string"&&(r=e,e=""),this._calendar.formatDate(e||"",this,r)}});C3(oa.baseCalendar.prototype,{UNIX_EPOCH:oa.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:oa.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,r,t){if(typeof e!="string"&&(t=r,r=e,e=""),!r)return"";if(r.calendar()!==this)throw oa.local.invalidFormat||oa.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,t=t||{};for(var a=t.dayNamesShort||this.local.dayNamesShort,n=t.dayNames||this.local.dayNames,i=t.monthNumbers||this.local.monthNumbers,l=t.monthNamesShort||this.local.monthNamesShort,o=t.monthNames||this.local.monthNames,s=t.calculateWeek||this.local.calculateWeek,u=function(b,M){for(var C=1;T+C1},f=function(b,M,C,k){var q=""+M;if(u(b,k))for(;q.length1},w=function(F,H){var O=_(F,H),J=[2,3,O?4:2,O?4:2,10,11,20]["oyYJ@!".indexOf(F)+1],X=new RegExp("^-?\\d{1,"+J+"}"),G=r.substring(q).match(X);if(!G)throw(oa.local.missingNumberAt||oa.regionalOptions[""].missingNumberAt).replace(/\{0\}/,q);return q+=G[0].length,parseInt(G[0],10)},T=this,b=function(){if(typeof o=="function"){_("m");var F=o.call(T,r.substring(q));return q+=F.length,F}return w("m")},M=function(F,H,O,J){for(var X=_(F,J)?O:H,G=0;G-1){h=1,d=m;for(var z=this.daysInMonth(v,h);d>z;z=this.daysInMonth(v,h))h++,d-=z}return f>-1?this.fromJD(f):this.newDate(v,h,d)},determineDate:function(e,r,t,a,n){t&&typeof t!="object"&&(n=a,a=t,t=null),typeof a!="string"&&(n=a,a="");var i=this,l=function(o){try{return i.parseDate(a,o,n)}catch(v){}o=o.toLowerCase();for(var s=(o.match(/^c/)&&t?t.newDate():null)||i.today(),u=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,f=u.exec(o);f;)s.add(parseInt(f[1],10),f[2]||"d"),f=u.exec(o);return s};return r=r?r.newDate():null,e=e==null?r:typeof e=="string"?l(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?r:i.today().add(e,"d"):i.newDate(e),e}})});var qz=Z(()=>{var Fl=Ca(),One=Sa(),L3=Fl.instance();function u1(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}u1.prototype=new Fl.baseCalendar;One(u1.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,r){if(typeof e=="string"){var t=e.match(Yne);return t?t[0]:""}var a=this._validateYear(e),n=e.month(),i=""+this.toChineseMonth(a,n);return r&&i.length<2&&(i="0"+i),this.isIntercalaryMonth(a,n)&&(i+="i"),i},monthNames:function(e){if(typeof e=="string"){var r=e.match(Une);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},monthNamesShort:function(e){if(typeof e=="string"){var r=e.match(Vne);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},parseMonth:function(e,r){e=this._validateYear(e);var t=parseInt(r),a;if(isNaN(t))r[0]==="\u95F0"&&(a=!0,r=r.substring(1)),r[r.length-1]==="\u6708"&&(r=r.substring(0,r.length-1)),t=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(r);else{var n=r[r.length-1];a=n==="i"||n==="I"}var i=this.toMonthIndex(e,t,a);return i},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,r){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw r.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,r,t){var a=this.intercalaryMonth(e),n=t&&r!==a;if(n||r<1||r>12)throw Fl.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return a?!t&&r<=a?i=r-1:i=r:i=r-1,i},toChineseMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e),a=t?12:11;if(r<0||r>a)throw Fl.local.invalidMonth.replace(/\{0\}/,this.local.name);var n;return t?r>13;return t},isIntercalaryMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e);return!!t&&t===r},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,r,t){var a=this._validateYear(e,Fl.local.invalidyear),n=Hl[a-Hl[0]],i=n>>9&4095,l=n>>5&15,o=n&31,s;s=L3.newDate(i,l,o),s.add(4-(s.dayOfWeek()||7),"d");var u=this.toJD(e,r,t)-s.toJD();return 1+Math.floor(u/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,r){e.year&&(r=e.month(),e=e.year()),e=this._validateYear(e);var t=Il[e-Il[0]],a=t>>13,n=a?12:11;if(r>n)throw Fl.local.invalidMonth.replace(/\{0\}/,this.local.name);var i=t&1<<12-r?30:29;return i},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,i,t,Fl.local.invalidDate);e=this._validateYear(a.year()),r=a.month(),t=a.day();var n=this.isIntercalaryMonth(e,r),i=this.toChineseMonth(e,r),l=Wne(e,i,t,n);return L3.toJD(l.year,l.month,l.day)},fromJD:function(e){var r=L3.fromJD(e),t=Gne(r.year(),r.month(),r.day()),a=this.toMonthIndex(t.year,t.month,t.isIntercalary);return this.newDate(t.year,a,t.day)},fromString:function(e){var r=e.match(Bne),t=this._validateYear(+r[1]),a=+r[2],n=!!r[3],i=this.toMonthIndex(t,a,n),l=+r[4];return this.newDate(t,i,l)},add:function(e,r,t){var a=e.year(),n=e.month(),i=this.isIntercalaryMonth(a,n),l=this.toChineseMonth(a,n),o=Object.getPrototypeOf(u1.prototype).add.call(this,e,r,t);if(t==="y"){var s=o.year(),u=o.month(),f=this.isIntercalaryMonth(s,l),v=i&&f?this.toMonthIndex(s,l,!0):this.toMonthIndex(s,l,!1);v!==u&&o.month(v)}return o}});var Bne=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,Yne=/^\d?\d[iI]?/m,Une=/^闰?十?[一二三四五六七八九]?月/m,Vne=/^闰?十?[一二三四五六七八九]?/m;Fl.calendars.chinese=u1;var Il=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],Hl=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function Gne(e,r,t,a){var n,i;if(typeof e=="object")n=e,i=r||{};else{var l=typeof e=="number"&&e>=1888&&e<=2111;if(!l)throw new Error("Solar year outside range 1888-2111");var o=typeof r=="number"&&r>=1&&r<=12;if(!o)throw new Error("Solar month outside range 1 - 12");var s=typeof t=="number"&&t>=1&&t<=31;if(!s)throw new Error("Solar day outside range 1 - 31");n={year:e,month:r,day:t},i=a||{}}var u=Hl[n.year-Hl[0]],f=n.year<<9|n.month<<5|n.day;i.year=f>=u?n.year:n.year-1,u=Hl[i.year-Hl[0]];var v=u>>9&4095,h=u>>5&15,d=u&31,m,g=new Date(v,h-1,d),y=new Date(n.year,n.month-1,n.day);m=Math.round((y-g)/(24*3600*1e3));var _=Il[i.year-Il[0]],w;for(w=0;w<13;w++){var T=_&1<<12-w?30:29;if(m>13;return!b||w=1888&&e<=2111;if(!o)throw new Error("Lunar year outside range 1888-2111");var s=typeof r=="number"&&r>=1&&r<=12;if(!s)throw new Error("Lunar month outside range 1 - 12");var u=typeof t=="number"&&t>=1&&t<=30;if(!u)throw new Error("Lunar day outside range 1 - 30");var f;typeof a=="object"?(f=!1,i=a):(f=!!a,i=n||{}),l={year:e,month:r,day:t,isIntercalary:f}}var v;v=l.day-1;var h=Il[l.year-Il[0]],d=h>>13,m;d&&(l.month>d||l.isIntercalary)?m=l.month:m=l.month-1;for(var g=0;g>9&4095,T=_>>5&15,b=_&31,M=new Date(w,T-1,b+v);return i.year=M.getFullYear(),i.month=1+M.getMonth(),i.day=M.getDate(),i}});var Dz=Z(()=>{var Zo=Ca(),Zne=Sa();function q3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}q3.prototype=new Zo.baseCalendar;Zne(q3.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Zo.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Zo.local.invalidYear||Zo.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Zo.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,Zo.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});Zo.calendars.coptic=q3});var Ez=Z(()=>{var ji=Ca(),Xne=Sa();function D3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}D3.prototype=new ji.baseCalendar;Xne(D3.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,ji.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ji.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ji.local.invalidYear),400},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/8)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,ji.local.invalidMonth);return this.daysPerMonth[t.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,ji.local.invalidDate);return(a.day()+1)%8},weekDay:function(e,r,t){var a=this.dayOfWeek(e,r,t);return a>=2&&a<=6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,ji.local.invalidDate);return{century:Jne[Math.floor((a.year()-1)/100)+1]||""}},toJD:function(e,r,t){var a=this._validate(e,r,t,ji.local.invalidDate);return e=a.year()+(a.year()<0?1:0),r=a.month(),t=a.day(),t+(r>1?16:0)+(r>2?(r-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var r=Math.floor(e/400)+1;e-=(r-1)*400,e+=e>15?16:0;var t=Math.floor(e/32)+1,a=e-(t-1)*32+1;return this.newDate(r<=0?r-1:r,t,a)}});var Jne={20:"Fruitbat",21:"Anchovy"};ji.calendars.discworld=D3});var Pz=Z(()=>{var Xo=Ca(),Kne=Sa();function E3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}E3.prototype=new Xo.baseCalendar;Kne(E3.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Xo.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Xo.local.invalidYear||Xo.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Xo.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,Xo.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});Xo.calendars.ethiopian=E3});var Rz=Z(()=>{var Ol=Ca(),Qne=Sa();function P3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}P3.prototype=new Ol.baseCalendar;Qne(P3.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Ol.local.invalidYear);return this._leapYear(r.year())},_leapYear:function(e){return e=e<0?e+1:e,f1(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ol.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Ol.local.invalidYear);return e=r.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,Ol.local.invalidMonth),r===12&&this.leapYear(e)||r===8&&f1(this.daysInYear(e),10)===5?30:r===9&&f1(this.daysInYear(e),10)===3?29:this.daysPerMonth[r-1]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Ol.local.invalidDate);return{yearType:(this.leapYear(a)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(a)%10-3]}},toJD:function(e,r,t){var a=this._validate(e,r,t,Ol.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=e<=0?e+1:e,i=this.jdEpoch+this._delay1(n)+this._delay2(n)+t+1;if(r<7){for(var l=7;l<=this.monthsInYear(e);l++)i+=this.daysInMonth(e,l);for(var l=1;l=this.toJD(r===-1?1:r+1,7,1);)r++;for(var t=ethis.toJD(r,t,this.daysInMonth(r,t));)t++;var a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});function f1(e,r){return e-r*Math.floor(e/r)}Ol.calendars.hebrew=P3});var zz=Z(()=>{var Dc=Ca(),$ne=Sa();function R3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}R3.prototype=new Dc.baseCalendar;$ne(R3.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Dc.local.invalidYear);return(r.year()*11+14)%30<11},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Dc.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,Dc.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e=e<=0?e+1:e,t+Math.ceil(29.5*(r-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=Math.floor((30*(e-this.jdEpoch)+10646)/10631);r=r<=0?r-1:r;var t=Math.min(12,Math.ceil((e-29-this.toJD(r,1,1))/29.5)+1),a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});Dc.calendars.islamic=R3});var Nz=Z(()=>{var Ec=Ca(),jne=Sa();function z3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}z3.prototype=new Ec.baseCalendar;jne(z3.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Ec.local.invalidYear),t=r.year()<0?r.year()+1:r.year();return t%4===0},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(4-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Ec.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,Ec.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e<0&&e++,r<=2&&(e--,r+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(r+1))+t-1524.5},fromJD:function(e){var r=Math.floor(e+.5),t=r+1524,a=Math.floor((t-122.1)/365.25),n=Math.floor(365.25*a),i=Math.floor((t-n)/30.6001),l=i-Math.floor(i<14?1:13),o=a-Math.floor(l>2?4716:4715),s=t-n-Math.floor(30.6001*i);return o<=0&&o--,this.newDate(o,l,s)}});Ec.calendars.julian=z3});var Iz=Z(()=>{var Hn=Ca(),eie=Sa();function F3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}F3.prototype=new Hn.baseCalendar;eie(F3.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Hn.local.invalidYear),!1},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Hn.local.invalidYear);e=r.year();var t=Math.floor(e/400);e=e%400,e+=e<0?400:0;var a=Math.floor(e/20);return t+"."+a+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var r=0,t=0;t19||t>0&&a<0)throw"Invalid Mayan year";r=r*20+a}return r},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Hn.local.invalidYear),18},weekOfYear:function(e,r,t){return this._validate(e,r,t,Hn.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Hn.local.invalidYear),360},daysInMonth:function(e,r){return this._validate(e,r,this.minDay,Hn.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Hn.local.invalidDate);return a.day()},weekDay:function(e,r,t){return this._validate(e,r,t,Hn.local.invalidDate),!0},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Hn.local.invalidDate),n=a.toJD(),i=this._toHaab(n),l=this._toTzolkin(n);return{haabMonthName:this.local.haabMonths[i[0]-1],haabMonth:i[0],haabDay:i[1],tzolkinDayName:this.local.tzolkinMonths[l[0]-1],tzolkinDay:l[0],tzolkinTrecena:l[1]}},_toHaab:function(e){e-=this.jdEpoch;var r=N3(e+8+17*20,365);return[Math.floor(r/20)+1,N3(r,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[Fz(e+20,20),Fz(e+4,13)]},toJD:function(e,r,t){var a=this._validate(e,r,t,Hn.local.invalidDate);return a.day()+a.month()*20+a.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var r=Math.floor(e/360);e=e%360,e+=e<0?360:0;var t=Math.floor(e/20),a=e%20;return this.newDate(r,t,a)}});function N3(e,r){return e-r*Math.floor(e/r)}function Fz(e,r){return N3(e-1,r)+1}Hn.calendars.mayan=F3});var Oz=Z(()=>{var Jo=Ca(),rie=Sa();function I3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}I3.prototype=new Jo.baseCalendar;var Hz=Jo.instance("gregorian");rie(I3.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Jo.local.invalidYear||Jo.regionalOptions[""].invalidYear);return Hz.leapYear(r.year()+(r.year()<1?1:0)+1469)},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(1-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Jo.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,Jo.local.invalidMonth),n=a.year();n<0&&n++;for(var i=a.day(),l=1;l=this.toJD(r+1,1,1);)r++;for(var t=e-Math.floor(this.toJD(r,1,1)+.5)+1,a=1;t>this.daysInMonth(r,a);)t-=this.daysInMonth(r,a),a++;return this.newDate(r,a,t)}});Jo.calendars.nanakshahi=I3});var Bz=Z(()=>{var Ko=Ca(),tie=Sa();function H3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}H3.prototype=new Ko.baseCalendar;tie(H3.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Ko.local.invalidYear);if(e=r.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var t=0,a=this.minMonth;a<=12;a++)t+=this.NEPALI_CALENDAR_DATA[e][a];return t},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,Ko.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[r-1]:this.NEPALI_CALENDAR_DATA[e][r]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},toJD:function(e,r,t){var a=this._validate(e,r,t,Ko.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=Ko.instance(),i=0,l=r,o=e;this._createMissingCalendarData(e);var s=e-(l>9||l===9&&t>=this.NEPALI_CALENDAR_DATA[o][0]?56:57);for(r!==9&&(i=t,l--);l!==9;)l<=0&&(l=12,o--),i+=this.NEPALI_CALENDAR_DATA[o][l],l--;return r===9?(i+=t-this.NEPALI_CALENDAR_DATA[o][0],i<0&&(i+=n.daysInYear(s))):i+=this.NEPALI_CALENDAR_DATA[o][9]-this.NEPALI_CALENDAR_DATA[o][0],n.newDate(s,1,1).add(i,"d").toJD()},fromJD:function(e){var r=Ko.instance(),t=r.fromJD(e),a=t.year(),n=t.dayOfYear(),i=a+56;this._createMissingCalendarData(i);for(var l=9,o=this.NEPALI_CALENDAR_DATA[i][0],s=this.NEPALI_CALENDAR_DATA[i][l]-o+1;n>s;)l++,l>12&&(l=1,i++),s+=this.NEPALI_CALENDAR_DATA[i][l];var u=this.NEPALI_CALENDAR_DATA[i][l]-(s-n);return this.newDate(i,l,u)},_createMissingCalendarData:function(e){var r=this.daysPerMonth.slice(0);r.unshift(17);for(var t=e-1;t{var Cu=Ca(),aie=Sa();function v1(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function c1(e){var r=e-475;e<0&&r++;var t=.242197,a=t*r,n=t*(r+1),i=a-Math.floor(a),l=n-Math.floor(n);return i>l}v1.prototype=new Cu.baseCalendar;aie(v1.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Cu.local.invalidYear);return c1(r.year())},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-((a.dayOfWeek()+1)%7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Cu.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,Cu.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=0;if(e>0)for(var i=1;i0?e-1:e)*365+n+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=475+(e-this.toJD(475,1,1))/365.242197,t=Math.floor(r);t<=0&&t--,e>this.toJD(t,12,c1(t)?30:29)&&(t++,t===0&&t++);var a=e-this.toJD(t,1,1)+1,n=a<=186?Math.ceil(a/31):Math.ceil((a-6)/30),i=e-this.toJD(t,n,1)+1;return this.newDate(t,n,i)}});Cu.calendars.persian=v1;Cu.calendars.jalali=v1});var Uz=Z(()=>{var Qo=Ca(),nie=Sa(),h1=Qo.instance();function O3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}O3.prototype=new Qo.baseCalendar;nie(O3.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Qo.local.invalidYear),t=this._t2gYear(r.year());return h1.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,Qo.local.invalidYear),n=this._t2gYear(a.year());return h1.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Qo.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,Qo.local.invalidDate),n=this._t2gYear(a.year());return h1.toJD(n,a.month(),a.day())},fromJD:function(e){var r=h1.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Qo.calendars.taiwan=O3});var Vz=Z(()=>{var $o=Ca(),iie=Sa(),d1=$o.instance();function B3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}B3.prototype=new $o.baseCalendar;iie(B3.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,$o.local.invalidYear),t=this._t2gYear(r.year());return d1.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,$o.local.invalidYear),n=this._t2gYear(a.year());return d1.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,$o.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,$o.local.invalidDate),n=this._t2gYear(a.year());return d1.toJD(n,a.month(),a.day())},fromJD:function(e){var r=d1.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});$o.calendars.thai=B3});var Gz=Z(()=>{var jo=Ca(),lie=Sa();function Y3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Y3.prototype=new jo.baseCalendar;lie(Y3.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,jo.local.invalidYear);return this.daysInYear(r.year())===355},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var r=0,t=1;t<=12;t++)r+=this.daysInMonth(e,t);return r},daysInMonth:function(e,r){for(var t=this._validate(e,r,this.minDay,jo.local.invalidMonth),a=t.toJD()-24e5+.5,n=0,i=0;ia)return Bl[n]-Bl[n-1];n++}return 30},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,jo.local.invalidDate),n=12*(a.year()-1)+a.month()-15292,i=a.day()+Bl[n-1]-1;return i+24e5-.5},fromJD:function(e){for(var r=e-24e5+.5,t=0,a=0;ar);a++)t++;var n=t+15292,i=Math.floor((n-1)/12),l=i+1,o=n-12*i,s=r-Bl[t-1]+1;return this.newDate(l,o,s)},isValid:function(e,r,t){var a=jo.baseCalendar.prototype.isValid.apply(this,arguments);return a&&(e=e.year!=null?e.year:e,a=e>=1276&&e<=1500),a},_validate:function(e,r,t,a){var n=jo.baseCalendar.prototype._validate.apply(this,arguments);if(n.year<1276||n.year>1500)throw a.replace(/\{0\}/,this.local.name);return n}});jo.calendars.ummalqura=Y3;var Bl=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var Zz=Z((i0e,Wz)=>{"use strict";Wz.exports=Ca();Lz();qz();Dz();Ez();Pz();Rz();zz();Nz();Iz();Oz();Bz();Yz();Uz();Vz();Gz()});var eN=Z((l0e,jz)=>{"use strict";var Jz=Zz(),Pc=Ie(),Kz=Vt(),oie=Kz.EPOCHJD,sie=Kz.ONEDAY,G3={valType:"enumerated",values:Pc.sortObjectKeys(Jz.calendars),editType:"calc",dflt:"gregorian"},Qz=function(e,r,t,a){var n={};return n[t]=G3,Pc.coerce(e,r,n,t,a)},uie=function(e,r,t,a){for(var n=0;n{"use strict";rN.exports=eN()});var pie=Z((s0e,nN)=>{var aN=AP();aN.register([PR(),Mz(),tN()]);nN.exports=aN});return pie();})(); /*! Bundled license information: native-promise-only/lib/npo.src.js: diff --git a/dist/plotly-cartesian.js b/dist/plotly-cartesian.js index 8504588af97..b75baf0f0be 100644 --- a/dist/plotly-cartesian.js +++ b/dist/plotly-cartesian.js @@ -1,5 +1,5 @@ /** -* plotly.js (cartesian) v3.3.0 +* plotly.js (cartesian) v3.3.1 * 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.3.0"; + exports.version = "3.3.1"; } }); @@ -8750,7 +8750,7 @@ var Plotly = (() => { var isArrayOrTypedArray = require_array().isArrayOrTypedArray; module.exports = function nestedProperty(container, propStr) { if (isNumeric(propStr)) propStr = String(propStr); - else if (typeof propStr !== "string" || propStr.substr(propStr.length - 4) === "[-1]") { + else if (typeof propStr !== "string" || propStr.slice(-4) === "[-1]") { throw "bad property string"; } var propParts = propStr.split("."); @@ -8769,7 +8769,7 @@ var Plotly = (() => { if (indexed[1]) propParts[j] = indexed[1]; else if (j === 0) propParts.splice(0, 1); else throw "bad property string"; - indices = indexed[2].substr(1, indexed[2].length - 2).split("]["); + indices = indexed[2].slice(1, -1).split("]["); for (i = 0; i < indices.length; i++) { j++; propParts.splice(j, 0, Number(indices[i])); @@ -10847,11 +10847,11 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { key = keys[i]; val = container[key]; - if (key.substr(key.length - 5) === "color") { + if (key.slice(-5) === "color") { if (Array.isArray(val)) { for (j = 0; j < val.length; j++) val[j] = cleanOne(val[j]); } else container[key] = cleanOne(val); - } else if (key.substr(key.length - 10) === "colorscale" && Array.isArray(val)) { + } else if (key.slice(-10) === "colorscale" && Array.isArray(val)) { for (j = 0; j < val.length; j++) { if (Array.isArray(val[j])) val[j][1] = cleanOne(val[j][1]); } @@ -10866,7 +10866,7 @@ var Plotly = (() => { function cleanOne(val) { if (isNumeric(val) || typeof val !== "string") return val; var valTrim = val.trim(); - if (valTrim.substr(0, 3) !== "rgb") return val; + if (valTrim.slice(0, 3) !== "rgb") return val; var match = valTrim.match(/^rgba?\s*\(([^()]*)\)$/); if (!match) return val; var parts = match[1].trim().split(/\s*[\s,]\s*/); @@ -10960,7 +10960,7 @@ var Plotly = (() => { for (var i = 0; i < values.length; i++) { var k = String(values[i]); if (k.charAt(0) === "/" && k.charAt(k.length - 1) === "/") { - var regex = new RegExp(k.substr(1, k.length - 2)); + var regex = new RegExp(k.slice(1, -1)); if (regex.test(v)) return true; } else if (v === values[i]) return true; } @@ -10968,9 +10968,13 @@ var Plotly = (() => { } }, boolean: { - coerceFunction: function(v, propOut, dflt) { - if (v === true || v === false) propOut.set(v); - else propOut.set(dflt); + coerceFunction: function(v, propOut, dflt, opts) { + const isBoolean = (value) => value === true || value === false; + if (isBoolean(v) || opts.arrayOk && Array.isArray(v) && v.length > 0 && v.every(isBoolean)) { + propOut.set(v); + } else { + propOut.set(dflt); + } } }, number: { @@ -11037,11 +11041,12 @@ var Plotly = (() => { subplotid: { coerceFunction: function(v, propOut, dflt, opts) { var regex = opts.regex || counterRegex(dflt); - if (typeof v === "string" && regex.test(v)) { + const isSubplotId = (value) => typeof value === "string" && regex.test(value); + if (isSubplotId(v) || opts.arrayOk && isArrayOrTypedArray(v) && v.length > 0 && v.every(isSubplotId)) { propOut.set(v); - return; + } else { + propOut.set(dflt); } - propOut.set(dflt); }, validateFunction: function(v, opts) { var dflt = opts.dflt; @@ -13747,9 +13752,9 @@ var Plotly = (() => { var require_maplibre_gl = __commonJS({ "node_modules/maplibre-gl/dist/maplibre-gl.css"() { (function() { - if (!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")) { + if (!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")) { var e = document.createElement("style"); - e.id = "ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe"; + e.id = "696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97"; e.textContent = `.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`; document.head.appendChild(e); } @@ -14072,10 +14077,10 @@ var Plotly = (() => { var isWorld = isWorldCalendar(calendar); var s0 = s.charAt(0); if (isWorld && (s0 === "G" || s0 === "g")) { - s = s.substr(1); + s = s.slice(1); calendar = ""; } - var isChinese = isWorld && calendar.substr(0, 7) === "chinese"; + var isChinese = isWorld && calendar.slice(0, 7) === "chinese"; var match = s.match(isChinese ? DATETIME_REGEXP_CN : DATETIME_REGEXP); if (!match) return BADNUM; var y = match[1]; @@ -14119,7 +14124,7 @@ var Plotly = (() => { return exports.dateTime2ms(s, calendar) !== BADNUM; }; function lpad(val, digits) { - return String(val + Math.pow(10, digits)).substr(1); + return String(val + Math.pow(10, digits)).slice(1); } var NINETYDAYS = 90 * ONEDAY; var THREEHOURS = 3 * ONEHOUR; @@ -14139,7 +14144,7 @@ var Plotly = (() => { dateStr = utcFormat("G%Y-%m-%d")(new Date(msRounded)); } if (dateStr.charAt(0) === "-") { - while (dateStr.length < 11) dateStr = "-0" + dateStr.substr(1); + while (dateStr.length < 11) dateStr = "-0" + dateStr.slice(1); } else { while (dateStr.length < 10) dateStr = "0" + dateStr; } @@ -14211,7 +14216,7 @@ var Plotly = (() => { function modDateFormat(fmt, x, formatter, calendar) { fmt = fmt.replace(fracMatch, function(match) { var digits = Math.min(+match.charAt(1) || 6, 6); - var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).substr(2).replace(/0+$/, "") || "0"; + var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).slice(2).replace(/0+$/, "") || "0"; return fracSecs; }); var d = new Date(Math.floor(x + 0.05)); @@ -14234,7 +14239,7 @@ var Plotly = (() => { if (tr !== "M") { if (!isNumeric(tr)) tr = 0; var sec = Math.min(mod(x / ONESEC, 60), MAXSECONDS[tr]); - var secStr = (100 + sec).toFixed(tr).substr(1); + var secStr = (100 + sec).toFixed(tr).slice(1); if (tr > 0) { secStr = secStr.replace(/0+$/, "").replace(/[\.]$/, ""); } @@ -14948,8 +14953,8 @@ var Plotly = (() => { if (part.indexOf("Safari") !== -1) { for (var k = i - 1; k > -1; k--) { var prevPart = allParts[k]; - if (prevPart.substr(0, 8) === "Version/") { - var v = prevPart.substr(8).split(".")[0]; + if (prevPart.slice(0, 8) === "Version/") { + var v = prevPart.slice(8).split(".")[0]; if (isNumeric(v)) v = +v; if (v >= 13) return true; } @@ -15416,7 +15421,7 @@ var Plotly = (() => { return finalStep && finalStep(arg); }; lib.stripTrailingSlash = function(str) { - if (str.substr(-1) === "/") return str.substr(0, str.length - 1); + if (str.slice(-1) === "/") return str.slice(0, -1); return str; }; lib.noneOrAll = function(containerIn, containerOut, attrList) { @@ -15577,7 +15582,7 @@ var Plotly = (() => { } lib.minExtend = minExtend; lib.titleCase = function(s) { - return s.charAt(0).toUpperCase() + s.substr(1); + return s.charAt(0).toUpperCase() + s.slice(1); }; lib.containsAny = function(s, fragments) { for (var i = 0; i < fragments.length; i++) { @@ -17089,7 +17094,7 @@ var Plotly = (() => { if (name.charAt(lastChar) !== "s") { Lib.warn("bad argument to arrayDefaultKey: " + name); } - return name.substr(0, name.length - 1) + "defaults"; + return name.slice(0, -1) + "defaults"; } exports.arrayDefaultKey = arrayDefaultKey; exports.arrayEditor = function(parentIn, containerStr, itemOut) { @@ -17214,13 +17219,13 @@ var Plotly = (() => { var constants = require_constants2(); exports.id2name = function id2name(id) { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; - var axNum = id.split(" ")[0].substr(1); + var axNum = id.split(" ")[0].slice(1); if (axNum === "1") axNum = ""; return id.charAt(0) + "axis" + axNum; }; exports.name2id = function name2id(name) { if (!name.match(constants.AX_NAME_PATTERN)) return; - var axNum = name.substr(5); + var axNum = name.slice(5); if (axNum === "1") axNum = ""; return name.charAt(0) + axNum; }; @@ -17229,7 +17234,7 @@ var Plotly = (() => { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; if (axLetter && id.charAt(0) !== axLetter) return; if (domainTest && !domainId) return; - var axNum = id.split(" ")[0].substr(1).replace(/^0+/, ""); + var axNum = id.split(" ")[0].slice(1).replace(/^0+/, ""); if (axNum === "1") axNum = ""; return id.charAt(0) + axNum + (domainTest && domainId ? " domain" : ""); }; @@ -17241,7 +17246,7 @@ var Plotly = (() => { var i; for (i = 0; i < idList.length; i++) { var idi = idList[i]; - out[i] = fullLayout[idi.charAt(0) + "axis" + idi.substr(1)]; + out[i] = fullLayout[idi.charAt(0) + "axis" + idi.slice(1)]; } if (!only2d) { var sceneIds3D = fullLayout._subplots.gl3d || []; @@ -17272,7 +17277,7 @@ var Plotly = (() => { var ax = null; if (Registry.traceIs(fullTrace, "gl3d")) { var scene = fullTrace.scene; - if (scene.substr(0, 5) === "scene") { + if (scene.slice(0, 5) === "scene") { ax = fullLayout[scene][type + "axis"]; } } else { @@ -17284,7 +17289,7 @@ var Plotly = (() => { var letter1 = id1.charAt(0); var letter2 = id2.charAt(0); if (letter1 !== letter2) return letter1 > letter2 ? 1 : -1; - return +(id1.substr(1) || 1) - +(id2.substr(1) || 1); + return +(id1.slice(1) || 1) - +(id2.slice(1) || 1); }; exports.ref2id = function(ar) { return /^[xyz]/.test(ar) ? ar.split(" ")[0] : false; @@ -18517,7 +18522,12 @@ var Plotly = (() => { _module.attributes.showlegend ? _module.attributes : plots.attributes, "showlegend" ); - coerce("legend"); + Lib.coerce( + traceIn, + traceOut, + _module.attributes.legend ? _module.attributes : plots.attributes, + "legend" + ); coerce("legendwidth"); coerce("legendgroup"); coerce("legendgrouptitle.text"); @@ -18652,7 +18662,7 @@ var Plotly = (() => { Lib.coerce(layoutIn, layoutOut, scatterAttrs, "scattermode"); }; function getComputedSize(attr) { - return typeof attr === "string" && attr.substr(attr.length - 2) === "px" && parseFloat(attr); + return typeof attr === "string" && attr.slice(-2) === "px" && parseFloat(attr); } plots.plotAutoSize = function plotAutoSize(gd, layout, fullLayout) { var context = gd._context || {}; @@ -19092,7 +19102,7 @@ var Plotly = (() => { return; } if (mode === "keepdata") { - if (v.substr(v.length - 3) === "src") { + if (v.slice(-3) === "src") { return; } } else if (mode === "keepstream") { @@ -20324,9 +20334,9 @@ var Plotly = (() => { newParts.pop(); } if (len > eLen) { - newParts.push(p.substr(0, pLen2 - eLen) + ellipsis); + newParts.push(p.slice(0, Math.max(0, pLen2 - eLen)) + ellipsis); } else { - newParts.push(p.substr(0, pLen2)); + newParts.push(p.slice(0, pLen2)); } break; } @@ -20351,7 +20361,7 @@ var Plotly = (() => { var outChar; if (innerMatch.charAt(0) === "#") { outChar = fromCodePoint( - innerMatch.charAt(1) === "x" ? parseInt(innerMatch.substr(2), 16) : parseInt(innerMatch.substr(1), 10) + innerMatch.charAt(1) === "x" ? parseInt(innerMatch.slice(2), 16) : parseInt(innerMatch.slice(1), 10) ); } else outChar = entityToUnicode[innerMatch]; return outChar || fullMatch; @@ -21983,7 +21993,7 @@ var Plotly = (() => { return dtickDflt; } var prefix = dtick.charAt(0); - var dtickNum = dtick.substr(1); + var dtickNum = dtick.slice(1); dtickNum = isNumeric(dtickNum) ? Number(dtickNum) : 0; if (dtickNum <= 0 || !// "M" gives ticks every (integer) n months (isDate && prefix === "M" && dtickNum === Math.round(dtickNum) || // "L" gives ticks linearly spaced in data (not in position) every (float) f @@ -26840,7 +26850,7 @@ var Plotly = (() => { var stats = Lib.findExactDates(data, calendar); var threshold = 0.8; if (stats.exactDays > threshold) { - var numMonths = Number(dtick.substr(1)); + var numMonths = Number(dtick.slice(1)); if (stats.exactYears > threshold && numMonths % 12 === 0) { binStart = axes.tickIncrement(binStart, "M6", "reverse") + ONEDAY * 1.5; } else if (stats.exactMonths > threshold) { @@ -27492,8 +27502,8 @@ var Plotly = (() => { var tick0str = ax.l2r(tick0ms).replace(/(^-|i)/g, ""); var tick0len = tick0str.length; if (String(dtick).charAt(0) === "M") { - if (tick0len > 10 || tick0str.substr(5) !== "01-01") ax._tickround = "d"; - else ax._tickround = +dtick.substr(1) % 12 === 0 ? "y" : "m"; + if (tick0len > 10 || tick0str.slice(5) !== "01-01") ax._tickround = "d"; + else ax._tickround = +dtick.slice(1) % 12 === 0 ? "y" : "m"; } else if (dtick >= ONEDAY && tick0len <= 10 || dtick >= ONEDAY * 15) ax._tickround = "d"; else if (dtick >= ONEMIN && tick0len <= 16 || dtick >= ONEHOUR) ax._tickround = "M"; else if (dtick >= ONESEC && tick0len <= 19 || dtick >= ONEMIN) ax._tickround = "S"; @@ -27504,7 +27514,7 @@ var Plotly = (() => { } } else if (isNumeric(dtick) || dtick.charAt(0) === "L") { var rng = ax.range.map(ax.r2d || Number); - if (!isNumeric(dtick)) dtick = Number(dtick.substr(1)); + if (!isNumeric(dtick)) dtick = Number(dtick.slice(1)); ax._tickround = 2 - Math.floor(Math.log(dtick) / Math.LN10 + 0.01); var maxend = Math.max(Math.abs(rng[0]), Math.abs(rng[1])); var rangeexp = Math.floor(Math.log(maxend) / Math.LN10 + 0.01); @@ -27522,7 +27532,7 @@ var Plotly = (() => { var axSign = axrev ? -1 : 1; if (isNumeric(dtick)) return Lib.increment(x, axSign * dtick); var tType = dtick.charAt(0); - var dtSigned = axSign * Number(dtick.substr(1)); + var dtSigned = axSign * Number(dtick.slice(1)); if (tType === "M") return Lib.incrementMonth(x, dtSigned, calendar); if (tType === "L") return Math.log(Math.pow(10, x) + dtSigned) / Math.LN10; if (tType === "D") { @@ -27549,7 +27559,7 @@ var Plotly = (() => { return tmin; } var tType = dtick.charAt(0); - var dtNum = Number(dtick.substr(1)); + var dtNum = Number(dtick.slice(1)); if (tType === "M") { var cnt = 0; var t0 = tick0; @@ -27679,8 +27689,8 @@ var Plotly = (() => { var headStr; var splitIndex = dateStr.indexOf("\n"); if (splitIndex !== -1) { - headStr = dateStr.substr(splitIndex + 1); - dateStr = dateStr.substr(0, splitIndex); + headStr = dateStr.slice(splitIndex + 1); + dateStr = dateStr.slice(0, splitIndex); } if (extraPrecision) { if (headStr !== void 0 && (dateStr === "00:00:00" || dateStr === "00:00")) { @@ -27901,12 +27911,12 @@ var Plotly = (() => { if (tickRound === 0) v = String(Math.floor(v)); else if (tickRound < 0) { v = String(Math.round(v)); - v = v.substr(0, v.length + tickRound); + v = v.slice(0, Math.max(0, v.length + tickRound)); for (var i = tickRound; i < 0; i++) v += "0"; } else { v = String(v); var dp = v.indexOf(".") + 1; - if (dp) v = v.substr(0, dp + tickRound).replace(/\.?0+$/, ""); + if (dp) v = v.slice(0, dp + tickRound).replace(/\.?0+$/, ""); } v = Lib.numSeparate(v, ax._separators, separatethousands); } @@ -28001,8 +28011,8 @@ var Plotly = (() => { var allSubplots = subplotObj.cartesian.concat(subplotObj.gl2d || []); var out = ax ? axes.findSubplotsWithAxis(allSubplots, ax) : allSubplots; out.sort(function(a, b) { - var aParts = a.substr(1).split("y"); - var bParts = b.substr(1).split("y"); + var aParts = a.slice(1).split("y"); + var bParts = b.slice(1).split("y"); if (aParts[0] === bParts[0]) return +aParts[1] - +bParts[1]; return +aParts[0] - +bParts[0]; }); @@ -29977,7 +29987,7 @@ var Plotly = (() => { for (var i = 0; i < classes.length; i++) { var cls = classes[i]; if (cls.indexOf("cursor-") === 0) { - el3.attr(STASHATTR, cls.substr(7)).classed(cls, false); + el3.attr(STASHATTR, cls.slice(7)).classed(cls, false); } } if (!el3.attr(STASHATTR)) { @@ -30219,8 +30229,33 @@ var Plotly = (() => { var shapesWithLegend = (layoutOut.shapes || []).filter(function(d) { return d.showlegend; }); + function isPieWithLegendArray(trace2) { + return Registry.traceIs(trace2, "pie-like") && trace2._length != null && (Array.isArray(trace2.legend) || Array.isArray(trace2.showlegend)); + } + ; + fullData.filter(isPieWithLegendArray).forEach(function(trace2) { + if (trace2.visible) { + legendTraceCount++; + } + for (var index = 0; index < trace2._length; index++) { + var legend = (Array.isArray(trace2.legend) ? trace2.legend[index] : trace2.legend) || "legend"; + if (legend === legendId) { + const showInLegend = Array.isArray(trace2.showlegend) ? trace2.showlegend[index] : trace2.showlegend; + if (showInLegend || trace2._dfltShowLegend) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + } + if (legendId === "legend" && trace2._length > trace2.legend.length) { + for (var idx = trace2.legend.length; idx < trace2._length; idx++) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + }); var allLegendItems = fullData.concat(shapesWithLegend).filter(function(d) { - return legendId === (d.legend || "legend"); + return !isPieWithLegendArray(trace) && legendId === (d.legend || "legend"); }); for (var i = 0; i < allLegendItems.length; i++) { trace = allLegendItems[i]; @@ -30248,7 +30283,7 @@ var Plotly = (() => { layoutOut, basePlotLayoutAttributes, "showlegend", - legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) + layoutOut.showlegend || legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) ); if (showLegend === false) layoutOut[legendId] = void 0; if (showLegend === false && !containerIn.uirevision) return; @@ -30353,7 +30388,11 @@ var Plotly = (() => { } var legends = ["legend"]; for (i = 0; i < allLegendsData.length; i++) { - Lib.pushUnique(legends, allLegendsData[i].legend); + if (Array.isArray(allLegendsData[i].legend)) { + legends = legends.concat(allLegendsData[i].legend); + } else { + Lib.pushUnique(legends, allLegendsData[i].legend); + } } layoutOut._legends = []; for (i = 0; i < legends.length; i++) { @@ -30644,8 +30683,16 @@ var Plotly = (() => { var lgroup = trace.legendgroup; if (!inHover && (!trace.visible || !trace.showlegend)) continue; if (Registry.traceIs(trace, "pie-like")) { + var legendPerSlice = Array.isArray(trace.legend); + var showlegendPerSlice = Array.isArray(trace.showlegend); if (!slicesShown[lgroup]) slicesShown[lgroup] = {}; for (j = 0; j < cd.length; j++) { + if (showlegendPerSlice && trace.showlegend[cd[j].i] === false) { + continue; + } + if (legendPerSlice) { + lid = trace.legend[cd[j].i] || "legend"; + } var labelj = cd[j].label; if (!slicesShown[lgroup][labelj]) { addOneItem(lid, lgroup, { @@ -31841,7 +31888,11 @@ var Plotly = (() => { } function computeTextDimensions(g, gd, legendObj, aTitle) { var legendItem = g.data()[0][0]; - if (!legendObj._inHover && legendItem && !legendItem.trace.showlegend) { + var showlegend = legendItem && legendItem.trace.showlegend; + if (Array.isArray(showlegend)) { + showlegend = showlegend[legendItem.i] !== false; + } + if (!legendObj._inHover && legendItem && !showlegend) { g.remove(); return; } @@ -35111,7 +35162,7 @@ var Plotly = (() => { segments.forEach(function(segment) { var relevantParamIdx = paramsToUse[segment.charAt(0)].drawn; if (relevantParamIdx === void 0) return; - var params = segment.substr(1).match(constants.paramRE); + var params = segment.slice(1).match(constants.paramRE); if (!params || params.length < relevantParamIdx) return; var str = params[relevantParamIdx]; var pos = isRaw ? str : Lib.cleanNumber(str); @@ -35302,7 +35353,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (xParams[paramNumber]) { if (xSizemode === "pixel") param = x2p(xAnchor) + Number(param); else param = x2p(param); @@ -36311,7 +36362,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (paramNumber >= nParams) return param; if (xParams[paramNumber]) param = moveX(param); else if (yParams[paramNumber]) param = moveY(param); @@ -38034,12 +38085,12 @@ var Plotly = (() => { if (typeof a === "string") { aPrefix = a.match(/^[xy]*/)[0]; aLen = aPrefix.length; - a = +a.substr(aLen); + a = +a.slice(aLen); } if (typeof b === "string") { bPrefix = b.match(/^[xy]*/)[0]; bLen = bPrefix.length; - b = +b.substr(bLen); + b = +b.slice(bLen); } var c = a * b; if (!aLen && !bLen) { @@ -38051,7 +38102,7 @@ var Plotly = (() => { if (aLen === bLen) { return c; } - return (aLen > bLen ? aPrefix.substr(bLen) : bPrefix.substr(aLen)) + c; + return (aLen > bLen ? aPrefix.slice(bLen) : bPrefix.slice(aLen)) + c; } function finalRatios(group, fullLayout) { var size = fullLayout._size; @@ -38064,7 +38115,7 @@ var Plotly = (() => { if (typeof val === "string") { var prefix = val.match(/^[xy]*/)[0]; var pLen = prefix.length; - val = +val.substr(pLen); + val = +val.slice(pLen); var mult = prefix.charAt(0) === "y" ? yRatio : 1 / yRatio; for (var j = 0; j < pLen; j++) { val *= mult; @@ -43681,7 +43732,7 @@ var Plotly = (() => { } if (!arrayStr) arrayStr = rootContainers[rootContainers.indexOf(rootPart)]; if (!arrayStr) return false; - var tail = astr.substr(arrayStr.length); + var tail = astr.slice(arrayStr.length); if (!tail) return { array: arrayStr, index: "", property: "" }; match = tail.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/); if (!match) return false; @@ -44038,7 +44089,7 @@ var Plotly = (() => { for (i = 0; i < minLen; i++) { if (name1.charAt(i) !== name2.charAt(i)) break; } - var out = name1.substr(0, i); + var out = name1.slice(0, i); return out.trim(); } function cleanTextPosition(textposition) { @@ -44119,7 +44170,7 @@ var Plotly = (() => { var ATTR_TAIL_RE = /(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/; function getParent(attr) { var tail = attr.search(ATTR_TAIL_RE); - if (tail > 0) return attr.substr(0, tail); + if (tail > 0) return attr.slice(0, tail); } exports.hasParent = function(aobj, attr) { var attrParent = getParent(attr); @@ -44136,8 +44187,8 @@ var Plotly = (() => { var ax = getFromTrace(gd, trace, AX_LETTERS[j]); if (ax && ax.type !== "log") { var axAttr = ax._name; - var sceneName = ax._id.substr(1); - if (sceneName.substr(0, 5) === "scene") { + var sceneName = ax._id.slice(1); + if (sceneName.slice(0, 5) === "scene") { if (layoutUpdate[sceneName] !== void 0) continue; axAttr = sceneName + "." + axAttr; } @@ -45019,7 +45070,7 @@ var Plotly = (() => { } if (attr in aobj || helpers.hasParent(aobj, attr)) return; var extraparam; - if (attr.substr(0, 6) === "LAYOUT") { + if (attr.slice(0, 6) === "LAYOUT") { extraparam = layoutNP(gd.layout, attr.replace("LAYOUT", "")); } else { var tracei = traces[i2]; @@ -45064,7 +45115,7 @@ var Plotly = (() => { else vi = null; } redoit[ai] = vi; - if (ai.substr(0, 6) === "LAYOUT") { + if (ai.slice(0, 6) === "LAYOUT") { param = layoutNP(gd.layout, ai.replace("LAYOUT", "")); undoit[ai] = [undefinedToNull(param.get())]; param.set(Array.isArray(vi) ? vi[0] : vi); @@ -45081,7 +45132,7 @@ var Plotly = (() => { newVal = Array.isArray(vi) ? vi[i % vi.length] : vi; if (newVal === void 0) continue; var finalPart = param.parts[param.parts.length - 1]; - var prefix = ai.substr(0, ai.length - finalPart.length - 1); + var prefix = ai.slice(0, ai.length - finalPart.length - 1); var prefixDot = prefix ? prefix + "." : ""; var innerContFull = prefix ? nestedProperty(contFull, prefix).get() : contFull; valObject = PlotSchema.getTraceValObject(contFull, param.parts); @@ -45306,7 +45357,7 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { if (keys[i].indexOf("allaxes") === 0) { for (j = 0; j < axes.length; j++) { - var scene = axes[j]._id.substr(1); + var scene = axes[j]._id.slice(1); var axisAttr = scene.indexOf("scene") !== -1 ? scene + "." : ""; var newkey = keys[i].replace("allaxes", axisAttr + axes[j]._name); if (!aobj[newkey]) aobj[newkey] = aobj[keys[i]]; @@ -45614,7 +45665,7 @@ var Plotly = (() => { var match = key.match(spec.pattern); if (match) { var head = match[1] || ""; - return { head, tail: key.substr(head.length + 1), attr: spec.attr }; + return { head, tail: key.slice(head.length + 1), attr: spec.attr }; } } } @@ -45675,7 +45726,7 @@ var Plotly = (() => { } newNP.set(undefinedToNull(nestedProperty(oldFullLayout, key).get())); continue; - } else if (tail === "autorange" || tail.substr(0, 6) === "range[") { + } else if (tail === "autorange" || tail.slice(0, 6) === "range[") { var pre0 = layoutPreGUI[head + ".range[0]"]; var pre1 = layoutPreGUI[head + ".range[1]"]; var preAuto = layoutPreGUI[head + ".autorange"]; @@ -45695,7 +45746,7 @@ var Plotly = (() => { Lib.warn("unrecognized GUI edit: " + key); } delete layoutPreGUI[key]; - if (match && match.tail.substr(0, 6) === "range[") { + if (match && match.tail.slice(0, 6) === "range[") { newRangeAccepted[match.head] = 1; } } @@ -47219,7 +47270,7 @@ var Plotly = (() => { for (var i = 0; i < path.length; i++) { var p = path[i]; if (typeof p === "number") { - astr = astr.substr(0, astr.length - 1) + "[" + p + "]"; + astr = astr.slice(0, -1) + "[" + p + "]"; } else { astr += p; } @@ -49810,7 +49861,7 @@ var Plotly = (() => { prevtrace._nexttrace = trace; } } - trace._ownfill = trace.fill && (trace.fill.substr(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.substr(0, 2) === "to" && !trace._prevtrace); + trace._ownfill = trace.fill && (trace.fill.slice(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.slice(0, 2) === "to" && !trace._prevtrace); prevtraces[group] = trace; } else { trace._prevtrace = trace._nexttrace = trace._ownfill = null; @@ -50013,8 +50064,8 @@ var Plotly = (() => { fullpath = thispath; revpath = thisrevpath; } else if (ownFillDir) { - fullpath += "L" + thispath.substr(1); - revpath = thisrevpath + ("L" + revpath.substr(1)); + fullpath += "L" + thispath.slice(1); + revpath = thisrevpath + ("L" + revpath.slice(1)); } else { fullpath += "Z" + thispath; revpath = thisrevpath + "Z" + revpath; @@ -50079,7 +50130,7 @@ var Plotly = (() => { if (pt0 && pt1) { if (ownFillDir) { pt0[fillAxisIndex] = pt1[fillAxisIndex] = fillAxisZero; - transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.substr(1)).call(Drawing.singleFillStyle, gd); + transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.slice(1)).call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(null); } else { transition(ownFillEl3).attr("d", fullpath + "Z").call(Drawing.singleFillStyle, gd); @@ -50089,13 +50140,13 @@ var Plotly = (() => { trace._polygons = thisPolygons; trace._fillElement = ownFillEl3; } else if (tonext) { - if (trace.fill.substr(0, 6) === "tonext" && fullpath && prevRevpath) { + if (trace.fill.slice(0, 6) === "tonext" && fullpath && prevRevpath) { if (trace.fill === "tonext") { transition(tonext).attr("d", fullpath + "Z" + prevRevpath + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makeSelfPolygons(); trace._polygons = thisPolygons.concat(prevPolygons); } else { - transition(tonext).attr("d", fullpath + "L" + prevRevpath.substr(1) + "Z").call(Drawing.singleFillStyle, gd); + transition(tonext).attr("d", fullpath + "L" + prevRevpath.slice(1) + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(prevFillsegments); trace._polygons = thisPolygons; } @@ -51070,7 +51121,7 @@ var Plotly = (() => { }; function indexOfDay(v) { if (typeof v !== "string") return; - return dayStrToNum[v.substr(0, 3).toLowerCase()]; + return dayStrToNum[v.slice(0, 3).toLowerCase()]; } } }); @@ -51661,10 +51712,10 @@ var Plotly = (() => { if (constants.attrRegex.test(ki)) { var axLetter = ki.charAt(0); if (axLetter === "x") { - if (!xi || +ki.substr(5) < +xi.substr(5)) { + if (!xi || +ki.slice(5) < +xi.slice(5)) { xi = ki; } - } else if (!yi || +ki.substr(5) < +yi.substr(5)) { + } else if (!yi || +ki.slice(5) < +yi.slice(5)) { yi = ki; } } @@ -53888,7 +53939,7 @@ var Plotly = (() => { segment = segments[i]; drawnParam = paramsToUse[segment.charAt(0)].drawn; if (drawnParam === void 0) continue; - params = segments[i].substr(1).match(constants.paramRE); + params = segments[i].slice(1).match(constants.paramRE); if (!params || params.length < drawnParam) continue; val = convertVal(params[drawnParam]); if (val < min) min = val; @@ -56239,9 +56290,9 @@ var Plotly = (() => { var subplots = layoutOut._subplots; if (subplots) { var yIds = subplots.cartesian.filter(function(subplotId) { - return subplotId.substr(0, subplotId.indexOf("y")) === axisIds.name2id(axName); + return subplotId.slice(0, Math.max(0, subplotId.indexOf("y"))) === axisIds.name2id(axName); }).map(function(subplotId) { - return subplotId.substr(subplotId.indexOf("y"), subplotId.length); + return subplotId.slice(subplotId.indexOf("y"), subplotId.length); }); var yNames = Lib.simpleMap(yIds, axisIds.id2name); for (var i = 0; i < yNames.length; i++) { @@ -58243,7 +58294,7 @@ var Plotly = (() => { placeholder: fullLayout._dfltTitle.colorbar, containerGroup: g.select("." + cn.cbtitle) }; - var otherClass = titleClass.charAt(0) === "h" ? titleClass.substr(1) : "h" + titleClass; + var otherClass = titleClass.charAt(0) === "h" ? titleClass.slice(1) : "h" + titleClass; g.selectAll("." + otherClass + ",." + otherClass + "-math-group").remove(); Titles.draw(gd, titleClass, extendFlat(dfltTitleOpts, titleOpts || {})); } @@ -63038,7 +63089,7 @@ var Plotly = (() => { return function(v, isRightEdge) { var dateStr = pa.c2d(v, oneYear, calendar); var dashPos = dateStr.indexOf("-", dashExclude); - if (dashPos > 0) dateStr = dateStr.substr(0, dashPos); + if (dashPos > 0) dateStr = dateStr.slice(0, dashPos); var roundedV = pa.d2c(dateStr, 0, calendar); if (roundedV < v) { var nextV = tickIncrement(roundedV, increment, false, calendar); @@ -68288,7 +68339,7 @@ var Plotly = (() => { proto.drawAxes = function(doTitles) { var _this = this; var gd = _this.graphDiv; - var titlesuffix = _this.id.substr(7) + "title"; + var titlesuffix = _this.id.slice(7) + "title"; var layers = _this.layers; var aaxis = _this.aaxis; var baxis = _this.baxis; @@ -69444,7 +69495,7 @@ var Plotly = (() => { pathNeg = makePath(pts, trace); } if (hasBothSides) { - path = pathPos + "L" + pathNeg.substr(1) + "Z"; + path = pathPos + "L" + pathNeg.slice(1) + "Z"; } else { var startPt = [posCenterPx, valAxis.c2p(density[0].t)]; var endPt = [posCenterPx, valAxis.c2p(density[len - 1].t)]; @@ -69453,9 +69504,9 @@ var Plotly = (() => { endPt.reverse(); } if (hasPositiveSide) { - path = "M" + startPt + "L" + pathPos.substr(1) + "L" + endPt; + path = "M" + startPt + "L" + pathPos.slice(1) + "L" + endPt; } else { - path = "M" + endPt + "L" + pathNeg.substr(1) + "L" + startPt; + path = "M" + endPt + "L" + pathNeg.slice(1) + "L" + startPt; } } pathSel.attr("d", path); @@ -81380,6 +81431,12 @@ var Plotly = (() => { dflt: false, editType: "plot" }, + showlegend: extendFlat({}, baseAttrs.showlegend, { + arrayOk: true + }), + legend: extendFlat({}, baseAttrs.legend, { + arrayOk: true + }), title: { text: { valType: "string", @@ -90714,7 +90771,7 @@ var Plotly = (() => { } else { if (directiveObj === UNKNOWN) replacementPart = UNKNOWN; else replacementPart = cDate.formatDate(directiveObj[modifier]); - fmt = fmt.substr(0, i) + replacementPart + fmt.substr(i + directiveLen); + fmt = fmt.slice(0, i) + replacementPart + fmt.slice(i + directiveLen); i += replacementPart.length; } } diff --git a/dist/plotly-cartesian.min.js b/dist/plotly-cartesian.min.js index 3b633ad1911..411d245e705 100644 --- a/dist/plotly-cartesian.min.js +++ b/dist/plotly-cartesian.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (cartesian - minified) v3.3.0 +* plotly.js (cartesian - minified) v3.3.1 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,90 +12,90 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var Qie=Object.defineProperty,eoe=Object.defineProperties;var roe=Object.getOwnPropertyDescriptors;var UA=Object.getOwnPropertySymbols;var toe=Object.prototype.hasOwnProperty,aoe=Object.prototype.propertyIsEnumerable;var GA=(e,r,t)=>r in e?Qie(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,Vs=(e,r)=>{for(var t in r||(r={}))toe.call(r,t)&&GA(e,t,r[t]);if(UA)for(var t of UA(r))aoe.call(r,t)&&GA(e,t,r[t]);return e},lp=(e,r)=>eoe(e,roe(r));var N=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var sp=N(VA=>{"use strict";VA.version="3.3.0"});var jA=N((YA,up)=>{(function(r,t,a){t[r]=t[r]||a(),typeof up!="undefined"&&up.exports&&(up.exports=t[r])})("Promise",typeof window!="undefined"?window:YA,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,_,b,T){return Object.defineProperty(w,_,{value:b,writable:!0,configurable:T!==!1})}}catch(x){r=function(_,b,T){return _[b]=T,_}}a=function(){var w,_,b;function T(k,M){this.fn=k,this.self=M,this.next=void 0}return{add:function(M,q){b=new T(M,q),_?_.next=b:w=b,_=b,b=void 0},drain:function(){var M=w;for(w=_=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(x,w){a.add(x,w),t||(t=i(a.drain))}function l(x){var w,_=typeof x;return x!=null&&(_=="object"||_=="function")&&(w=x.then),typeof w=="function"?w:!1}function s(){for(var x=0;x0&&o(s,_))}catch(b){c.call(new d(_),b)}}}function c(x){var w=this;w.triggered||(w.triggered=!0,w.def&&(w=w.def),w.msg=x,w.state=2,w.chain.length>0&&o(s,w))}function v(x,w,_,b){for(var T=0;T{(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,S=new Array(A);A--;)S[A]=g[A];return S}}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,S){s.call(this,g,A,S+"")},u.setProperty=function(g,A,S){f.call(this,g,A+"",S)}}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,S=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,S=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,S=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/(H-1)},e.deviation=function(){var h=e.variance.apply(this,arguments);return h&&Math.sqrt(h)};function p(h){return{left:function(g,A,S,L){for(arguments.length<3&&(S=0),arguments.length<4&&(L=g.length);S>>1;h(g[C],A)<0?S=C+1:L=C}return S},right:function(g,A,S,L){for(arguments.length<3&&(S=0),arguments.length<4&&(L=g.length);S>>1;h(g[C],A)>0?L=C:S=C+1}return S}}}var y=p(c);e.bisectLeft=y.left,e.bisect=e.bisectRight=y.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){(S=arguments.length)<3&&(A=h.length,S<2&&(g=0));for(var S=A-g,L,C;S;)C=Math.random()*S--|0,L=h[S+g],h[S+g]=h[C+g],h[C+g]=L;return h},e.permute=function(h,g){for(var A=g.length,S=new Array(A);A--;)S[A]=h[g[A]];return S},e.pairs=function(h){for(var g=0,A=h.length-1,S,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 S=[],L=w(x(A)),C=-1,I;if(h*=L,g*=L,A*=L,A<0)for(;(I=h+A*++C)>g;)S.push(I/L);else for(;(I=h+A*++C)=g.length)return L?L.call(h,H):S?H.sort(S):H;for(var $=-1,re=H.length,te=g[X++],we,ke,ae,de=new b,ge;++$=g.length)return F;var X=[],$=A[H++];return F.forEach(function(re,te){X.push({key:re,values:I(te,H)})}),$?X.sort(function(re,te){return $(re.key,te.key)}):X}return h.map=function(F,H){return C(H,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 S=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,S=h.length;A=0&&(S=h.slice(A+1),h=h.slice(0,A)),h)return arguments.length<2?this[h].on(S):this[h].on(S,g);if(arguments.length===2){if(g==null)for(h in this)this.hasOwnProperty(h)&&this[h].on(S,null);return this}};function Z(h){var g=[],A=new b;function S(){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}},ce.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 S(){this.removeAttributeNS(h.space,h.local)}function L(){this.setAttribute(h,g)}function C(){this.setAttributeNS(h.space,h.local,g)}function I(){var H=g.apply(this,arguments);H==null?this.removeAttribute(h):this.setAttribute(h,H)}function F(){var H=g.apply(this,arguments);H==null?this.removeAttributeNS(h.space,h.local):this.setAttributeNS(h.space,h.local,H)}return g==null?h.local?S:A:typeof g=="function"?h.local?F:I:h.local?C:L}function ye(h){return h.trim().replace(/\s+/g," ")}ce.classed=function(h,g){if(arguments.length<2){if(typeof h=="string"){var A=this.node(),S=(h=Ne(h)).length,L=-1;if(g=A.classList){for(;++L=0;)(C=A[S])&&(L&&L!==C.nextSibling&&L.parentNode.insertBefore(C,L),L=C);return this},ce.sort=function(h){h=Ae.apply(this,arguments);for(var g=-1,A=this.length;++g=g&&(g=L+1);!(H=I[g])&&++g0&&(h=h.slice(0,L));var I=Ge.get(h);I&&(h=I,C=Ve);function F(){var $=this[S];$&&(this.removeEventListener(h,$,$.$),delete this[S])}function H(){var $=C(g,t(arguments));F.call(this),this.addEventListener(h,this[S]=$,$.$=A),$._=g}function X(){var $=new RegExp("^__on([^.]+)"+e.requote(h)+"$"),re;for(var te in this)if(re=te.match($)){var we=this[te];this.removeEventListener(re[1],we,we.$),delete this[te]}}return L?g?H:F:g?V:X}var Ge=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Ge.forEach(function(h){"on"+h in a&&Ge.remove(h)});function Je(h,g){return function(A){var S=e.event;e.event=A,g[0]=this.__data__;try{h.apply(this,g)}finally{e.event=S}}}function Ve(h,g){var A=Je(h,g);return function(S){var L=this,C=S.relatedTarget;(!C||C!==L&&!(C.compareDocumentPosition(L)&8))&&A.call(L,S)}}var Ze,or=0;function rr(h){var g=".dragsuppress-"+ ++or,A="click"+g,S=e.select(i(h)).on("touchmove"+g,ee).on("dragstart"+g,ee).on("selectstart"+g,ee);if(Ze==null&&(Ze="onselectstart"in h?!1:G(h.style,"userSelect")),Ze){var L=n(h).style,C=L[Ze];L[Ze]="none"}return function(I){if(S.on(g,null),Ze&&(L[Ze]=C),I){var F=function(){S.on(A,null)};S.on(A,function(){ee(),F()},!0),setTimeout(F,0)}}}e.mouse=function(h){return ze(h,fe())};var Ke=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function ze(h,g){g.changedTouches&&(g=g.changedTouches[0]);var A=h.ownerSVGElement||h;if(A.createSVGPoint){var S=A.createSVGPoint();if(Ke<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();Ke=!(C.f||C.e),A.remove()}}return Ke?(S.x=g.pageX,S.y=g.pageY):(S.x=g.clientX,S.y=g.clientY),S=S.matrixTransform(h.getScreenCTM().inverse()),[S.x,S.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 S=0,L=g.length,C;S0?1:h<0?-1:0}function et(h,g,A){return(g[0]-h[0])*(A[1]-h[1])-(g[1]-h[1])*(A[0]-h[0])}function qt(h){return h>1?0:h<-1?Re:Math.acos(h)}function ft(h){return h>1?sr:h<-1?-sr:Math.asin(h)}function Ft(h){return((h=Math.exp(h))-1/h)/2}function Tt(h){return((h=Math.exp(h))+1/h)/2}function da(h){return((h=Math.exp(2*h))-1)/(h+1)}function $t(h){return(h=Math.sin(h/2))*h}var oa=Math.SQRT2,dr=2,yt=4;e.interpolateZoom=function(h,g){var A=h[0],S=h[1],L=h[2],C=g[0],I=g[1],F=g[2],H=C-A,X=I-S,$=H*H+X*X,re,te;if($0&&(tr=tr.transition().duration(I)),tr.call(Se.event)}function pr(){de&&de.domain(ae.range().map(function(tr){return(tr-h.x)/h.k}).map(ae.invert)),Me&&Me.domain(ge.range().map(function(tr){return(tr-h.y)/h.k}).map(ge.invert))}function yr(tr){F++||tr({type:"zoomstart"})}function Er(tr){pr(),tr({type:"zoom",scale:h.k,translate:[h.x,h.y]})}function gr(tr){--F||(tr({type:"zoomend"}),A=null)}function Mr(){var tr=this,Dr=ke.of(tr,arguments),Pr=0,nt=e.select(i(tr)).on(X,Ia).on($,tn),Gt=xe(e.mouse(tr)),ya=rr(tr);ap.call(tr),yr(Dr);function Ia(){Pr=1,cr(e.mouse(tr),Gt),Er(Dr)}function tn(){nt.on(X,null).on($,null),ya(Pr),gr(Dr)}}function at(){var tr=this,Dr=ke.of(tr,arguments),Pr={},nt=0,Gt,ya=".zoom-"+e.event.changedTouches[0].identifier,Ia="touchmove"+ya,tn="touchend"+ya,mn=[],an=e.select(tr),An=rr(tr);Mn(),yr(Dr),an.on(H,null).on(te,Mn);function ja(){var Zi=e.touches(tr);return Gt=h.k,Zi.forEach(function(Oa){Oa.identifier in Pr&&(Pr[Oa.identifier]=xe(Oa))}),Zi}function Mn(){var Zi=e.event.target;e.select(Zi).on(Ia,Us).on(tn,Kie),mn.push(Zi);for(var Oa=e.event.changedTouches,oi=0,wo=Oa.length;oi1){var Gs=li[0],Nl=li[1],op=Gs[0]-Nl[0],HA=Gs[1]-Nl[1];nt=op*op+HA*HA}}function Us(){var Zi=e.touches(tr),Oa,oi,wo,li;ap.call(tr);for(var xf=0,Gs=Zi.length;xf1?1:g,A=A<0?0:A>1?1:A,L=A<=.5?A*(1+g):A+g-A*g,S=2*A-L;function C(F){return F>360?F-=360:F<0&&(F+=360),F<60?S+(L-S)*F/60:F<180?L:F<240?S+(L-S)*(240-F)/60:S}function I(F){return Math.round(C(F)*255)}return new Wt(I(h+120),I(h),I(h-120))}e.hcl=jt;function jt(h,g,A){return this instanceof jt?(this.h=+h,this.c=+g,void(this.l=+A)):arguments.length<2?h instanceof jt?new jt(h.h,h.c,h.l):h instanceof Nt?zt(h.l,h.a,h.b):zt((h=ur((h=e.rgb(h)).r,h.g,h.b)).l,h.a,h.b):new jt(h,g,A)}var dn=jt.prototype=new Lt;dn.brighter=function(h){return new jt(this.h,this.c,Math.min(100,this.l+Ct*(arguments.length?h:1)))},dn.darker=function(h){return new jt(this.h,this.c,Math.max(0,this.l-Ct*(arguments.length?h:1)))},dn.rgb=function(){return pn(this.h,this.c,this.l).rgb()};function pn(h,g,A){return isNaN(h)&&(h=0),isNaN(g)&&(g=0),new Nt(A,Math.cos(h*=kr)*g,Math.sin(h)*g)}e.lab=Nt;function Nt(h,g,A){return this instanceof Nt?(this.l=+h,this.a=+g,void(this.b=+A)):arguments.length<2?h instanceof Nt?new Nt(h.l,h.a,h.b):h instanceof jt?pn(h.h,h.c,h.l):ur((h=Wt(h)).r,h.g,h.b):new Nt(h,g,A)}var Ct=18,_a=.95047,Qo=1,el=1.08883,ct=Nt.prototype=new Lt;ct.brighter=function(h){return new Nt(Math.min(100,this.l+Ct*(arguments.length?h:1)),this.a,this.b)},ct.darker=function(h){return new Nt(Math.max(0,this.l-Ct*(arguments.length?h:1)),this.a,this.b)},ct.rgb=function(){return Tn(this.l,this.a,this.b)};function Tn(h,g,A){var S=(h+16)/116,L=S+g/500,C=S-A/200;return L=zs(L)*_a,S=zs(S)*Qo,C=zs(C)*el,new Wt(Vi(3.2404542*L-1.5371385*S-.4985314*C),Vi(-.969266*L+1.8760108*S+.041556*C),Vi(.0556434*L-.2040259*S+1.0572252*C))}function zt(h,g,A){return h>0?new jt(Math.atan2(A,g)*Ir,Math.sqrt(g*g+A*A),h):new jt(NaN,NaN,h)}function zs(h){return h>.206893034?h*h*h:(h-4/29)/7.787037}function yn(h){return h>.008856?Math.pow(h,1/3):7.787037*h+4/29}function Vi(h){return Math.round(255*(h<=.00304?12.92*h:1.055*Math.pow(h,1/2.4)-.055))}e.rgb=Wt;function Wt(h,g,A){return this instanceof Wt?(this.r=~~h,this.g=~~g,void(this.b=~~A)):arguments.length<2?h instanceof Wt?new Wt(h.r,h.g,h.b):Kr(""+h,Wt,rn):new Wt(h,g,A)}function Yi(h){return new Wt(h>>16,h>>8&255,h&255)}function Rl(h){return Yi(h)+""}var Pl=Wt.prototype=new Lt;Pl.brighter=function(h){h=Math.pow(.7,arguments.length?h:1);var g=this.r,A=this.g,S=this.b,L=30;return!g&&!A&&!S?new Wt(L,L,L):(g&&g>4,S=S>>4|S,L=H&240,L=L>>4|L,C=H&15,C=C<<4|C):h.length===7&&(S=(H&16711680)>>16,L=(H&65280)>>8,C=H&255)),g(S,L,C))}function vt(h,g,A){var S=Math.min(h/=255,g/=255,A/=255),L=Math.max(h,g,A),C=L-S,I,F,H=(L+S)/2;return C?(F=H<.5?C/(L+S):C/(2-L-S),h==L?I=(g-A)/C+(g0&&H<1?0:I),new Gr(I,F,H)}function ur(h,g,A){h=Na(h),g=Na(g),A=Na(A);var S=yn((.4124564*h+.3575761*g+.1804375*A)/_a),L=yn((.2126729*h+.7151522*g+.072175*A)/Qo),C=yn((.0193339*h+.119192*g+.9503041*A)/el);return Nt(116*L-16,500*(S-L),200*(L-C))}function Na(h){return(h/=255)<=.04045?h/12.92:Math.pow((h+.055)/1.055,2.4)}function At(h){var g=parseFloat(h);return h.charAt(h.length-1)==="%"?Math.round(g*2.55):g}var za=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});za.forEach(function(h,g){za.set(h,Yi(g))});function Or(h){return typeof h=="function"?h:function(){return h}}e.functor=Or,e.xhr=ji(B);function ji(h){return function(g,A,S){return arguments.length===2&&typeof A=="function"&&(S=A,A=null),Is(g,A,h,S)}}function Is(h,g,A,S){var L={},C=e.dispatch("beforesend","progress","load","error"),I={},F=new XMLHttpRequest,H=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 $=F.status,re;if(!$&&ene(F)||$>=200&&$<300||$===304){try{re=A.call(L,F)}catch(te){C.error.call(L,te);return}C.load.call(L,re)}else C.error.call(L,F)}return F.onprogress=function($){var re=e.event;e.event=$;try{C.progress.call(L,F)}finally{e.event=re}},L.header=function($,re){return $=($+"").toLowerCase(),arguments.length<2?I[$]:(re==null?delete I[$]:I[$]=re+"",L)},L.mimeType=function($){return arguments.length?(g=$==null?null:$+"",L):g},L.responseType=function($){return arguments.length?(H=$,L):H},L.response=function($){return A=$,L},["get","post"].forEach(function($){L[$]=function(){return L.send.apply(L,[$].concat(t(arguments)))}}),L.send=function($,re,te){if(arguments.length===2&&typeof re=="function"&&(te=re,re=null),F.open($,h,!0),g!=null&&!("accept"in I)&&(I.accept=g+",*/*"),F.setRequestHeader)for(var we in I)F.setRequestHeader(we,I[we]);return g!=null&&F.overrideMimeType&&F.overrideMimeType(g),H!=null&&(F.responseType=H),te!=null&&L.on("error",te).on("load",function(ke){te(null,ke)}),C.beforesend.call(L,F),F.send(re==null?null:re),L},L.abort=function(){return F.abort(),L},e.rebind(L,C,"on"),S==null?L:L.get(Qae(S))}function Qae(h){return h.length===1?function(g,A){h(g==null?A:null)}:h}function ene(h){var g=h.responseType;return g&&g!=="text"?h.response:h.responseText}e.dsv=function(h,g){var A=new RegExp('["'+h+` -]`),S=h.charCodeAt(0);function L(X,$,re){arguments.length<3&&(re=$,$=null);var te=Is(X,g,$==null?C:I($),re);return te.row=function(we){return arguments.length?te.response(($=we)==null?C:I(we)):$},te}function C(X){return L.parse(X.responseText)}function I(X){return function($){return L.parse($.responseText,X)}}L.parse=function(X,$){var re;return L.parseRows(X,function(te,we){if(re)return re(te,we-1);var ke=function(ae){for(var de={},ge=te.length,Me=0;Me=ke)return te;if(Me)return Me=!1,re;var Ye=ae;if(X.charCodeAt(Ye)===34){for(var ir=Ye;ir++24?(isFinite(g)&&(clearTimeout(Hd),Hd=setTimeout(S3,g)),Bd=0):(Bd=1,S8(S3))}e.timer.flush=function(){q8(),L8()};function q8(){for(var h=Date.now(),g=Id;g;)h>=g.t&&g.c(h-g.t)&&(g.c=null),g=g.n;return h}function L8(){for(var h,g=Id,A=1/0;g;)g.c?(g.t=0;--F)ae.push(L[X[re[F]][2]]);for(F=+we;F1&&et(h[A[S-2]],h[A[S-1]],h[L])<=0;)--S;A[S++]=L}return A.slice(0,S)}function rne(h,g){return h[0]-g[0]||h[1]-g[1]}e.geom.polygon=function(h){return K(h,Gd),h};var Gd=e.geom.polygon.prototype=[];Gd.area=function(){for(var h=-1,g=this.length,A,S=this[g-1],L=0;++hve)F=F.L;else if(I=g-ine(F,A),I>ve){if(!F.R){S=F;break}F=F.R}else{C>-ve?(S=F.P,L=F):I>-ve?(S=F,L=F.N):S=L=F;break}var H=P8(h);if(yf.insert(S,H),!(!S&&!L)){if(S===L){gf(S),L=P8(S.site),yf.insert(H,L),H.edge=L.edge=Iv(S.site,H.site),mf(S),mf(L);return}if(!L){H.edge=Iv(S.site,H.site);return}gf(S),gf(L);var X=S.site,$=X.x,re=X.y,te=h.x-$,we=h.y-re,ke=L.site,ae=ke.x-$,de=ke.y-re,ge=2*(te*de-we*ae),Me=te*te+we*we,Se=ae*ae+de*de,xe={x:(de*Me-we*Se)/ge+$,y:(te*Se-ae*Me)/ge+re};Vd(L.edge,X,ke,xe),H.edge=Iv(X,h,null,xe),L.edge=Iv(h,ke,null,xe),mf(S),mf(L)}}function F8(h,g){var A=h.site,S=A.x,L=A.y,C=L-g;if(!C)return S;var I=h.P;if(!I)return-1/0;A=I.site;var F=A.x,H=A.y,X=H-g;if(!X)return F;var $=F-S,re=1/C-1/X,te=$/X;return re?(-te+Math.sqrt(te*te-2*re*($*$/(-2*X)-H+X/2+L-C/2)))/re+S:(S+F)/2}function ine(h,g){var A=h.N;if(A)return F8(A,g);var S=h.site;return S.y===g?S.x:1/0}function N8(h){this.site=h,this.edges=[]}N8.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(z8),h.length};function one(h){for(var g=h[0][0],A=h[1][0],S=h[0][1],L=h[1][1],C,I,F,H,X=Os,$=X.length,re,te,we,ke,ae,de;$--;)if(re=X[$],!(!re||!re.prepare()))for(we=re.edges,ke=we.length,te=0;teve||x(H-I)>ve)&&(we.splice(te,0,new Yd(cne(re.site,de,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-S)=-De)){var te=H*H+X*X,we=$*$+de*de,ke=(de*te-X*we)/re,ae=(H*we-$*te)/re,de=ae+F,ge=R8.pop()||new lne;ge.arc=h,ge.site=L,ge.x=ke+I,ge.y=de+Math.sqrt(ke*ke+ae*ae),ge.cy=de,h.circle=ge;for(var Me=null,Se=zv._;Se;)if(ge.y0)){if(ae/=we,we<0){if(ae0){if(ae>te)return;ae>re&&(re=ae)}if(ae=A-F,!(!we&&ae<0)){if(ae/=we,we<0){if(ae>te)return;ae>re&&(re=ae)}else if(we>0){if(ae0)){if(ae/=ke,ke<0){if(ae0){if(ae>te)return;ae>re&&(re=ae)}if(ae=S-H,!(!ke&&ae<0)){if(ae/=ke,ke<0){if(ae>te)return;ae>re&&(re=ae)}else if(ke>0){if(ae0&&(L.a={x:F+re*we,y:H+re*ke}),te<1&&(L.b={x:F+te*we,y:H+te*ke}),L}}}}}}function une(h){for(var g=pf,A=sne(h[0][0],h[0][1],h[1][0],h[1][1]),S=g.length,L;S--;)L=g[S],(!fne(L,h)||!A(L)||x(L.a.x-L.b.x)=C)return;if($>te){if(!S)S={x:ke,y:I};else if(S.y>=F)return;A={x:ke,y:F}}else{if(!S)S={x:ke,y:F};else if(S.y1)if($>te){if(!S)S={x:(I-ge)/de,y:I};else if(S.y>=F)return;A={x:(F-ge)/de,y:F}}else{if(!S)S={x:(F-ge)/de,y:F};else if(S.y=C)return;A={x:C,y:de*C+ge}}else{if(!S)S={x:C,y:de*C+ge};else if(S.x=$&&ge.x<=te&&ge.y>=re&&ge.y<=we?[[$,we],[te,we],[te,re],[$,re]]:[];Me.point=H[ae]}),X}function F(H){return H.map(function(X,$){return{x:Math.round(S(X,$)/ve)*ve,y:Math.round(L(X,$)/ve)*ve,i:$}})}return I.links=function(H){return R3(F(H)).edges.filter(function(X){return X.l&&X.r}).map(function(X){return{source:H[X.l.i],target:H[X.r.i]}})},I.triangles=function(H){var X=[];return R3(F(H)).cells.forEach(function($,re){for(var te=$.site,we=$.edges.sort(z8),ke=-1,ae=we.length,de,ge,Me=we[ae-1].edge,Se=Me.l===te?Me.r:Me.l;++keSe&&(Se=$.x),$.y>xe&&(xe=$.y),we.push($.x),ke.push($.y);else for(ae=0;aeSe&&(Se=Ye),ir>xe&&(xe=ir),we.push(Ye),ke.push(ir)}var cr=Se-ge,lr=xe-Me;cr>lr?xe=Me+cr:Se=ge+lr;function pr(gr,Mr,at,Kt,dt,tr,Dr,Pr){if(!(isNaN(at)||isNaN(Kt)))if(gr.leaf){var nt=gr.x,Gt=gr.y;if(nt!=null)if(x(nt-at)+x(Gt-Kt)<.01)yr(gr,Mr,at,Kt,dt,tr,Dr,Pr);else{var ya=gr.point;gr.x=gr.y=gr.point=null,yr(gr,ya,nt,Gt,dt,tr,Dr,Pr),yr(gr,Mr,at,Kt,dt,tr,Dr,Pr)}else gr.x=at,gr.y=Kt,gr.point=Mr}else yr(gr,Mr,at,Kt,dt,tr,Dr,Pr)}function yr(gr,Mr,at,Kt,dt,tr,Dr,Pr){var nt=(dt+Dr)*.5,Gt=(tr+Pr)*.5,ya=at>=nt,Ia=Kt>=Gt,tn=Ia<<1|ya;gr.leaf=!1,gr=gr.nodes[tn]||(gr.nodes[tn]=B8()),ya?dt=nt:Dr=nt,Ia?tr=Gt:Pr=Gt,pr(gr,Mr,at,Kt,dt,tr,Dr,Pr)}var Er=B8();if(Er.add=function(gr){pr(Er,gr,+re(gr,++ae),+te(gr,ae),ge,Me,Se,xe)},Er.visit=function(gr){Hv(gr,Er,ge,Me,Se,xe)},Er.find=function(gr){return yne(Er,gr[0],gr[1],ge,Me,Se,xe)},ae=-1,g==null){for(;++aeC||te>I||we=Ye,lr=A>=ir,pr=lr<<1|cr,yr=pr+4;prA&&(C=g.slice(A,C),F[I]?F[I]+=C:F[++I]=C),(S=S[0])===(L=L[0])?F[I]?F[I]+=L:F[++I]=L:(F[++I]=null,H.push({i:I,x:rl(S,L)})),A=N3.lastIndex;return A=0&&!(S=e.interpolators[A](h,g)););return S}e.interpolators=[function(h,g){var A=typeof g;return(A==="string"?za.has(g.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(g)?P3:U8:g instanceof Lt?P3:Array.isArray(g)?Zd:A==="object"&&isNaN(g)?H8:rl)(h,g)}],e.interpolateArray=Zd;function Zd(h,g){var A=[],S=[],L=h.length,C=g.length,I=Math.min(h.length,g.length),F;for(F=0;F=0?h.slice(0,g):h,S=g>=0?h.slice(g+1):"in";return A=mne.get(A)||G8,S=gne.get(S)||B,bne(S(A.apply(null,r.call(arguments,1))))};function bne(h){return function(g){return g<=0?0:g>=1?1:h(g)}}function V8(h){return function(g){return 1-h(1-g)}}function Y8(h){return function(g){return .5*(g<.5?h(2*g):2-h(2-2*g))}}function xne(h){return h*h}function _ne(h){return h*h*h}function wne(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 Tne(h){return function(g){return Math.pow(g,h)}}function Ane(h){return 1-Math.cos(h*sr)}function Mne(h){return Math.pow(2,10*(h-1))}function kne(h){return 1-Math.sqrt(1-h*h)}function Sne(h,g){var A;return arguments.length<2&&(g=.45),arguments.length?A=g/Qe*Math.asin(1/h):(h=1,A=g/4),function(S){return 1+h*Math.pow(2,-10*S)*Math.sin((S-A)*Qe/g)}}function qne(h){return h||(h=1.70158),function(g){return g*g*((h+1)*g-h)}}function Lne(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=Cne;function Cne(h,g){h=e.hcl(h),g=e.hcl(g);var A=h.h,S=h.c,L=h.l,C=g.h-A,I=g.c-S,F=g.l-L;return isNaN(I)&&(I=0,S=isNaN(S)?g.c:S),isNaN(C)?(C=0,A=isNaN(A)?g.h:A):C>180?C-=360:C<-180&&(C+=360),function(H){return pn(A+C*H,S+I*H,L+F*H)+""}}e.interpolateHsl=Ene;function Ene(h,g){h=e.hsl(h),g=e.hsl(g);var A=h.h,S=h.s,L=h.l,C=g.h-A,I=g.s-S,F=g.l-L;return isNaN(I)&&(I=0,S=isNaN(S)?g.s:S),isNaN(C)?(C=0,A=isNaN(A)?g.h:A):C>180?C-=360:C<-180&&(C+=360),function(H){return rn(A+C*H,S+I*H,L+F*H)+""}}e.interpolateLab=Dne;function Dne(h,g){h=e.lab(h),g=e.lab(g);var A=h.l,S=h.a,L=h.b,C=g.l-A,I=g.a-S,F=g.b-L;return function(H){return Tn(A+C*H,S+I*H,L+F*H)+""}}e.interpolateRound=j8;function j8(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 S=g.transform.baseVal.consolidate()}return new W8(S?S.matrix:Pne)})(h)};function W8(h){var g=[h.a,h.b],A=[h.c,h.d],S=X8(g),L=Z8(g,A),C=X8(Rne(A,g,-L))||0;g[0]*A[1]180?g+=360:g-h>180&&(h+=360),S.push({i:A.push(bf(A)+"rotate(",null,")")-2,x:rl(h,g)})):g&&A.push(bf(A)+"rotate("+g+")")}function zne(h,g,A,S){h!==g?S.push({i:A.push(bf(A)+"skewX(",null,")")-2,x:rl(h,g)}):g&&A.push(bf(A)+"skewX("+g+")")}function Ine(h,g,A,S){if(h[0]!==g[0]||h[1]!==g[1]){var L=A.push(bf(A)+"scale(",null,",",null,")");S.push({i:L-4,x:rl(h[0],g[0])},{i:L-2,x:rl(h[1],g[1])})}else(g[0]!==1||g[1]!==1)&&A.push(bf(A)+"scale("+g+")")}function J8(h,g){var A=[],S=[];return h=e.transform(h),g=e.transform(g),Fne(h.translate,g.translate,A,S),Nne(h.rotate,g.rotate,A,S),zne(h.skew,g.skew,A,S),Ine(h.scale,g.scale,A,S),h=g=null,function(L){for(var C=-1,I=S.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=Ud(h.tick)),h):C},h.start=function(){var xe,Ye=we.length,ir=ke.length,cr=S[0],lr=S[1],pr,yr;for(xe=0;xe=0;)C.push($=X[H]),$.parent=F,$.depth=F.depth+1;A&&(F.value=0),F.children=X}else A&&(F.value=+A.call(S,F,F.depth)||0),delete F.children;return _o(L,function(re){var te,we;h&&(te=re.children)&&te.sort(h),A&&(we=re.parent)&&(we.value+=re.value)}),I}return S.sort=function(L){return arguments.length?(h=L,S):h},S.children=function(L){return arguments.length?(g=L,S):g},S.value=function(L){return arguments.length?(A=L,S):A},S.revalue=function(L){return A&&(Gv(L,function(C){C.children&&(C.value=0)}),_o(L,function(C){var I;C.children||(C.value=+A.call(S,C,C.depth)||0),(I=C.parent)&&(I.value+=C.value)})),L},S};function Uv(h,g){return e.rebind(h,g,"sort","children","value"),h.nodes=h,h.links=Qne,h}function Gv(h,g){for(var A=[h];(h=A.pop())!=null;)if(g(h),(L=h.children)&&(S=L.length))for(var S,L;--S>=0;)A.push(L[S])}function _o(h,g){for(var A=[h],S=[];(h=A.pop())!=null;)if(S.push(h),(I=h.children)&&(C=I.length))for(var L=-1,C,I;++LL&&(L=F),S.push(F)}for(I=0;IS&&(A=g,S=L);return A}function oie(h){return h.reduce(lie,0)}function lie(h,g){return h+g[1]}e.layout.histogram=function(){var h=!0,g=Number,A=uie,S=sie;function L(C,te){for(var F=[],H=C.map(g,this),X=A.call(this,H,te),$=S.call(this,X,H,te),re,te=-1,we=H.length,ke=$.length-1,ae=h?1:1/we,de;++te0)for(te=-1;++te=X[0]&&de<=X[1]&&(re=F[e.bisect($,de,1,ke)-1],re.y+=ae,re.push(C[te]));return F}return L.value=function(C){return arguments.length?(g=C,L):g},L.range=function(C){return arguments.length?(A=Or(C),L):A},L.bins=function(C){return arguments.length?(S=typeof C=="number"?function(I){return eA(I,C)}:Or(C),L):S},L.frequency=function(C){return arguments.length?(h=!!C,L):h},L};function sie(h,g){return eA(h,Math.ceil(Math.log(g.length)/Math.LN2+1))}function eA(h,g){for(var A=-1,S=+h[0],L=(h[1]-S)/g,C=[];++A<=g;)C[A]=L*A+S;return C}function uie(h){return[e.min(h),e.max(h)]}e.layout.pack=function(){var h=e.layout.hierarchy().sort(fie),g=0,A=[1,1],S;function L(C,I){var F=h.call(this,C,I),H=F[0],X=A[0],$=A[1],re=S==null?Math.sqrt:typeof S=="function"?S:function(){return S};if(H.x=H.y=0,_o(H,function(we){we.r=+re(we.value)}),_o(H,aA),g){var te=g*(S?1:Math.max(2*H.r/X,2*H.r/$))/2;_o(H,function(we){we.r+=te}),_o(H,aA),_o(H,function(we){we.r-=te})}return nA(H,X/2,$/2,S?1:1/Math.max(2*H.r/X,2*H.r/$)),F}return L.size=function(C){return arguments.length?(A=C,L):A},L.radius=function(C){return arguments.length?(S=C==null||typeof C=="function"?C:+C,L):S},L.padding=function(C){return arguments.length?(g=+C,L):g},Uv(L,h)};function fie(h,g){return h.value-g.value}function O3(h,g){var A=h._pack_next;h._pack_next=g,g._pack_prev=h,g._pack_next=A,A._pack_prev=g}function rA(h,g){h._pack_next=g,g._pack_prev=h}function tA(h,g){var A=g.x-h.x,S=g.y-h.y,L=h.r+g.r;return .999*L*L>A*A+S*S}function aA(h){if(!(g=h.children)||!(te=g.length))return;var g,A=1/0,S=-1/0,L=1/0,C=-1/0,I,F,H,X,$,re,te;function we(xe){A=Math.min(xe.x-xe.r,A),S=Math.max(xe.x+xe.r,S),L=Math.min(xe.y-xe.r,L),C=Math.max(xe.y+xe.r,C)}if(g.forEach(cie),I=g[0],I.x=-I.r,I.y=0,we(I),te>1&&(F=g[1],F.x=F.r,F.y=0,we(F),te>2))for(H=g[2],iA(I,F,H),we(H),O3(I,H),I._pack_prev=H,O3(H,F),F=I._pack_next,X=3;Xde.x&&(de=Ye),Ye.depth>ge.depth&&(ge=Ye)});var Me=g(ae,de)/2-ae.x,Se=A[0]/(de.x+g(de,ae)/2+Me),xe=A[1]/(ge.depth||1);Gv(we,function(Ye){Ye.x=(Ye.x+Me)*Se,Ye.y=Ye.depth*xe})}return te}function C($){for(var re={A:null,children:[$]},te=[re],we;(we=te.pop())!=null;)for(var ke=we.children,ae,de=0,ge=ke.length;de0&&(hie(pie(ae,$,te),$,Ye),ge+=Ye,Me+=Ye),Se+=ae.m,ge+=we.m,xe+=de.m,Me+=ke.m;ae&&!H3(ke)&&(ke.t=ae,ke.m+=Se-Me),we&&!B3(de)&&(de.t=we,de.m+=ge-xe,te=$)}return te}function X($){$.x*=A[0],$.y=$.depth*A[1]}return L.separation=function($){return arguments.length?(g=$,L):g},L.size=function($){return arguments.length?(S=(A=$)==null?X:null,L):S?null:A},L.nodeSize=function($){return arguments.length?(S=(A=$)==null?null:X,L):S?A:null},Uv(L,h)};function oA(h,g){return h.parent==g.parent?1:2}function B3(h){var g=h.children;return g.length?g[0]:h.t}function H3(h){var g=h.children,A;return(A=g.length)?g[A-1]:h.t}function hie(h,g,A){var S=A/(g.i-h.i);g.c-=S,g.s+=A,h.c+=S,g.z+=A,g.m+=A}function die(h){for(var g=0,A=0,S=h.children,L=S.length,C;--L>=0;)C=S[L],C.z+=g,C.m+=g,g+=C.s+(A+=C.c)}function pie(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=oA,A=[1,1],S=!1;function L(C,I){var F=h.call(this,C,I),H=F[0],X,$=0;_o(H,function(ae){var de=ae.children;de&&de.length?(ae.x=mie(de),ae.y=yie(de)):(ae.x=X?$+=g(ae,X):0,ae.y=0,X=ae)});var re=lA(H),te=sA(H),we=re.x-g(re,te)/2,ke=te.x+g(te,re)/2;return _o(H,S?function(ae){ae.x=(ae.x-H.x)*A[0],ae.y=(H.y-ae.y)*A[1]}:function(ae){ae.x=(ae.x-we)/(ke-we)*A[0],ae.y=(1-(H.y?ae.y/H.y:1))*A[1]}),F}return L.separation=function(C){return arguments.length?(g=C,L):g},L.size=function(C){return arguments.length?(S=(A=C)==null,L):S?null:A},L.nodeSize=function(C){return arguments.length?(S=(A=C)!=null,L):S?A:null},Uv(L,h)};function yie(h){return 1+e.max(h,function(g){return g.y})}function mie(h){return h.reduce(function(g,A){return g+A.x},0)/h.length}function lA(h){var g=h.children;return g&&g.length?lA(g[0]):h}function sA(h){var g=h.children,A;return g&&(A=g.length)?sA(g[A-1]):h}e.layout.treemap=function(){var h=e.layout.hierarchy(),g=Math.round,A=[1,1],S=null,L=U3,C=!1,I,F="squarify",H=.5*(1+Math.sqrt(5));function X(ae,de){for(var ge=-1,Me=ae.length,Se,xe;++ge0;)Me.push(xe=Se[lr-1]),Me.area+=xe.area,F!=="squarify"||(ir=te(Me,cr))<=Ye?(Se.pop(),Ye=ir):(Me.area-=Me.pop().area,we(Me,cr,ge,!1),cr=Math.min(ge.dx,ge.dy),Me.length=Me.area=0,Ye=1/0);Me.length&&(we(Me,cr,ge,!0),Me.length=Me.area=0),de.forEach($)}}function re(ae){var de=ae.children;if(de&&de.length){var ge=L(ae),Me=de.slice(),Se,xe=[];for(X(Me,ge.dx*ge.dy/ae.value),xe.area=0;Se=Me.pop();)xe.push(Se),xe.area+=Se.area,Se.z!=null&&(we(xe,Se.z?ge.dx:ge.dy,ge,!Me.length),xe.length=xe.area=0);de.forEach(re)}}function te(ae,de){for(var ge=ae.area,Me,Se=0,xe=1/0,Ye=-1,ir=ae.length;++YeSe&&(Se=Me));return ge*=ge,de*=de,ge?Math.max(de*Se*H/ge,ge/(de*xe*H)):1/0}function we(ae,de,ge,Me){var Se=-1,xe=ae.length,Ye=ge.x,ir=ge.y,cr=de?g(ae.area/de):0,lr;if(de==ge.dx){for((Me||cr>ge.dy)&&(cr=ge.dy);++Sege.dx)&&(cr=ge.dx);++Se1);return h+g*S*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?xie:gie,X=S?Bne:One;return L=H(h,g,X,A),C=H(g,h,X,Bs),F}function F(H){return L(H)}return F.invert=function(H){return C(H)},F.domain=function(H){return arguments.length?(h=H.map(Number),I()):h},F.range=function(H){return arguments.length?(g=H,I()):g},F.rangeRound=function(H){return F.range(H).interpolate(j8)},F.clamp=function(H){return arguments.length?(S=H,I()):S},F.interpolate=function(H){return arguments.length?(A=H,I()):A},F.ticks=function(H){return Y3(h,H)},F.tickFormat=function(H,X){return d3_scale_linearTickFormat(h,H,X)},F.nice=function(H){return hA(h,H),I()},F.copy=function(){return cA(h,g,A,S)},I()}function vA(h,g){return e.rebind(h,g,"range","rangeRound","interpolate","clamp")}function hA(h,g){return G3(h,fA(V3(h,g)[2])),G3(h,fA(V3(h,g)[2])),h}function V3(h,g){g==null&&(g=10);var A=Xd(h),S=A[1]-A[0],L=Math.pow(10,Math.floor(Math.log(S/g)/Math.LN10)),C=g/S*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 Y3(h,g){return e.range.apply(e,V3(h,g))}var _ie={s:1,g:1,p:1,r:1,e:1};function dA(h){return-Math.floor(Math.log(h)/Math.LN10+.01)}function mCe(h,g){var A=dA(g[2]);return h in _ie?Math.abs(A-dA(Math.max(x(g[0]),x(g[1]))))+ +(h!=="e"):A-(h==="%")*2}e.scale.log=function(){return pA(e.scale.linear().domain([0,1]),10,!0,[1,10])};function pA(h,g,A,S){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((S=F.map(Number)).map(L)),I):S},I.base=function(F){return arguments.length?(g=+F,h.domain(S.map(L)),I):g},I.nice=function(){var F=G3(S.map(L),A?Math:wie);return h.domain(F),S=F.map(C),I},I.ticks=function(){var F=Xd(S),H=[],X=F[0],$=F[1],re=Math.floor(L(X)),te=Math.ceil(L($)),we=g%1?2:g;if(isFinite(te-re)){if(A){for(;re0;ke--)H.push(C(re)*ke);for(re=0;H[re]$;te--);H=H.slice(re,te)}return H},I.copy=function(){return pA(h.copy(),g,A,S)},vA(I,h)}var wie={floor:function(h){return-Math.ceil(-h)},ceil:function(h){return-Math.floor(-h)}};e.scale.pow=function(){return yA(e.scale.linear(),1,[0,1])};function yA(h,g,A){var S=$d(g),L=$d(1/g);function C(I){return h(S(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(S)),C):A},C.ticks=function(I){return Y3(A,I)},C.tickFormat=function(I,F){return d3_scale_linearTickFormat(A,I,F)},C.nice=function(I){return C.domain(hA(A,I))},C.exponent=function(I){return arguments.length?(S=$d(g=I),L=$d(1/g),h.domain(A.map(S)),C):g},C.copy=function(){return yA(h.copy(),g,A)},vA(C,h)}function $d(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 mA([],{t:"range",a:[[]]})};function mA(h,g){var A,S,L;function C(F){return S[((A.get(F)||(g.t==="range"?A.set(F,h.push(F)):NaN))-1)%S.length]}function I(F,H){return e.range(h.length).map(function(X){return F+H*X})}return C.domain=function(F){if(!arguments.length)return h;h=[],A=new b;for(var H=-1,X=F.length,$;++H0?A[C-1]:h[0],Cte?0:1;if($=fr)return H($,ke)+(X?H(X,1-ke):"")+"Z";var ae,de,ge,Me,Se=0,xe=0,Ye,ir,cr,lr,pr,yr,Er,gr,Mr=[];if((Me=(+I.apply(this,arguments)||0)/2)&&(ge=S===Kd?Math.sqrt(X*X+$*$):+S.apply(this,arguments),ke||(xe*=-1),$&&(xe=ft(ge/$*Math.sin(Me))),X&&(Se=ft(ge/X*Math.sin(Me)))),$){Ye=$*Math.cos(re+xe),ir=$*Math.sin(re+xe),cr=$*Math.cos(te-xe),lr=$*Math.sin(te-xe);var at=Math.abs(te-re-2*xe)<=Re?0:1;if(xe&&Qd(Ye,ir,cr,lr)===ke^at){var Kt=(re+te)/2;Ye=$*Math.cos(Kt),ir=$*Math.sin(Kt),cr=lr=null}}else Ye=ir=0;if(X){pr=X*Math.cos(te-Se),yr=X*Math.sin(te-Se),Er=X*Math.cos(re+Se),gr=X*Math.sin(re+Se);var dt=Math.abs(re-te+2*Se)<=Re?0:1;if(Se&&Qd(pr,yr,Er,gr)===1-ke^dt){var tr=(re+te)/2;pr=X*Math.cos(tr),yr=X*Math.sin(tr),Er=gr=null}}else pr=yr=0;if(we>ve&&(ae=Math.min(Math.abs($-X)/2,+A.apply(this,arguments)))>.001){de=X<$^ke?0:1;var Dr=ae,Pr=ae;if(we0?0:1}function ep(h,g,A,S,L){var C=h[0]-g[0],I=h[1]-g[1],F=(L?S:-S)/Math.sqrt(C*C+I*I),H=F*I,X=-F*C,$=h[0]+H,re=h[1]+X,te=g[0]+H,we=g[1]+X,ke=($+te)/2,ae=(re+we)/2,de=te-$,ge=we-re,Me=de*de+ge*ge,Se=A-S,xe=$*we-te*re,Ye=(ge<0?-1:1)*Math.sqrt(Math.max(0,Se*Se*Me-xe*xe)),ir=(xe*ge-de*Ye)/Me,cr=(-xe*de-ge*Ye)/Me,lr=(xe*ge+de*Ye)/Me,pr=(-xe*de+ge*Ye)/Me,yr=ir-ke,Er=cr-ae,gr=lr-ke,Mr=pr-ae;return yr*yr+Er*Er>gr*gr+Mr*Mr&&(ir=lr,cr=pr),[[ir-H,cr-X],[ir*A/Se,cr*A/Se]]}function AA(){return!0}function MA(h){var g=df,A=Nv,S=AA,L=Wi,C=L.key,I=.7;function F(H){var X=[],$=[],re=-1,te=H.length,we,ke=Or(g),ae=Or(A);function de(){X.push("M",L(h($),I))}for(;++re1?h.join("L"):h+"Z"}function kA(h){return h.join("L")+"Z"}function Eie(h){for(var g=0,A=h.length,S=h[0],L=[S[0],",",S[1]];++g1&&L.push("H",S[0]),L.join("")}function W3(h){for(var g=0,A=h.length,S=h[0],L=[S[0],",",S[1]];++g1){F=g[1],C=h[H],H++,S+="C"+(L[0]+I[0])+","+(L[1]+I[1])+","+(C[0]-F[0])+","+(C[1]-F[1])+","+C[0]+","+C[1];for(var X=2;X9&&(C=A*3/Math.sqrt(C),I[F]=C*S,I[F+1]=C*L));for(F=-1;++F<=H;)C=(h[Math.min(H,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 Bie(h){return h.length<3?Wi(h):h[0]+rp(h,Oie(h))}e.svg.line.radial=function(){var h=MA(CA);return h.radius=h.x,delete h.x,h.angle=h.y,delete h.y,h};function CA(h){for(var g,A=-1,S=h.length,L,C;++ARe)+",1 "+re}function X($,re,te,we){return"Q 0,0 "+we}return C.radius=function($){return arguments.length?(A=Or($),C):A},C.source=function($){return arguments.length?(h=Or($),C):h},C.target=function($){return arguments.length?(g=Or($),C):g},C.startAngle=function($){return arguments.length?(S=Or($),C):S},C.endAngle=function($){return arguments.length?(L=Or($),C):L},C};function Hie(h){return h.radius}e.svg.diagonal=function(){var h=DA,g=RA,A=PA;function S(L,C){var I=h.call(this,L,C),F=g.call(this,L,C),H=(I.y+F.y)/2,X=[I,{x:I.x,y:H},{x:F.x,y:H},F];return X=X.map(A),"M"+X[0]+"C"+X[1]+" "+X[2]+" "+X[3]}return S.source=function(L){return arguments.length?(h=Or(L),S):h},S.target=function(L){return arguments.length?(g=Or(L),S):g},S.projection=function(L){return arguments.length?(A=L,S):A},S};function PA(h){return[h.x,h.y]}e.svg.diagonal.radial=function(){var h=e.svg.diagonal(),g=PA,A=h.projection;return h.projection=function(S){return arguments.length?A(Uie(g=S)):g},h};function Uie(h){return function(){var g=h.apply(this,arguments),A=g[0],S=g[1]-sr;return[A*Math.cos(S),A*Math.sin(S)]}}e.svg.symbol=function(){var h=Vie,g=Gie;function A(S,L){return(NA.get(h.call(this,S,L))||FA)(g.call(this,S,L))}return A.type=function(S){return arguments.length?(h=Or(S),A):h},A.size=function(S){return arguments.length?(g=Or(S),A):g},A};function Gie(){return 64}function Vie(){return"circle"}function FA(h){var g=Math.sqrt(h/Re);return"M0,"+g+"A"+g+","+g+" 0 1,1 0,"+-g+"A"+g+","+g+" 0 1,1 0,"+g+"Z"}var NA=e.map({circle:FA,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*zA)),A=g*zA;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/tp),A=g*tp/2;return"M0,"+A+"L"+g+","+-A+" "+-g+","+-A+"Z"},"triangle-up":function(h){var g=Math.sqrt(h/tp),A=g*tp/2;return"M0,"+-A+"L"+g+","+A+" "+-g+","+A+"Z"}});e.svg.symbolTypes=NA.keys();var tp=Math.sqrt(3),zA=Math.tan(30*kr);ce.transition=function(h){for(var g=Hs||++OA,A=Q3(h),S=[],L,C,I=np||{time:Date.now(),ease:wne,delay:0,duration:250},F=-1,H=this.length;++F0;)re[--Me].call(h,ge);if(de>=1)return I.event&&I.event.end.call(h,h.__data__,g),--C.count?delete C[S]:delete h[A],1}I||(F=L.time,H=Ud(te,0,F),I=C[S]={tween:new b,time:F,timer:H,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=BA,A=6,S=6,L=3,C=[10],I=null,F;function H(X){X.each(function(){var $=e.select(this),re=this.__chart__||h,te=this.__chart__=h.copy(),we=I==null?te.ticks?te.ticks.apply(te,C):te.domain():I,ke=F==null?te.tickFormat?te.tickFormat.apply(te,C):B:F,ae=$.selectAll(".tick").data(we,te),de=ae.enter().insert("g",".domain").attr("class","tick").style("opacity",ve),ge=e.transition(ae.exit()).style("opacity",ve).remove(),Me=e.transition(ae.order()).style("opacity",1),Se=Math.max(A,0)+L,xe,Ye=Jd(te),ir=$.selectAll(".domain").data([0]),cr=(ir.enter().append("path").attr("class","domain"),e.transition(ir));de.append("line"),de.append("text");var lr=de.select("line"),pr=Me.select("line"),yr=ae.select("text").text(ke),Er=de.select("text"),gr=Me.select("text"),Mr=g==="top"||g==="left"?-1:1,at,Kt,dt,tr;if(g==="bottom"||g==="top"?(xe=Wie,at="x",dt="y",Kt="x2",tr="y2",yr.attr("dy",Mr<0?"0em":".71em").style("text-anchor","middle"),cr.attr("d","M"+Ye[0]+","+Mr*S+"V0H"+Ye[1]+"V"+Mr*S)):(xe=Zie,at="y",dt="x",Kt="y2",tr="x2",yr.attr("dy",".32em").style("text-anchor",Mr<0?"end":"start"),cr.attr("d","M"+Mr*S+","+Ye[0]+"H0V"+Ye[1]+"H"+Mr*S)),lr.attr(tr,Mr*A),Er.attr(dt,Mr*Se),pr.attr(Kt,0).attr(tr,Mr*A),gr.attr(at,0).attr(dt,Mr*Se),te.rangeBand){var Dr=te,Pr=Dr.rangeBand()/2;re=te=function(nt){return Dr(nt)+Pr}}else re.rangeBand?re=te:ge.call(xe,te,re);de.call(xe,re,te),Me.call(xe,te,te)})}return H.scale=function(X){return arguments.length?(h=X,H):h},H.orient=function(X){return arguments.length?(g=X in jie?X+"":BA,H):g},H.ticks=function(){return arguments.length?(C=t(arguments),H):C},H.tickValues=function(X){return arguments.length?(I=X,H):I},H.tickFormat=function(X){return arguments.length?(F=X,H):F},H.tickSize=function(X){var $=arguments.length;return $?(A=+X,S=+arguments[$-1],H):A},H.innerTickSize=function(X){return arguments.length?(A=+X,H):A},H.outerTickSize=function(X){return arguments.length?(S=+X,H):S},H.tickPadding=function(X){return arguments.length?(L=+X,H):L},H.tickSubdivide=function(){return arguments.length&&H},H};var BA="bottom",jie={top:1,right:1,bottom:1,left:1};function Wie(h,g,A){h.attr("transform",function(S){var L=g(S);return"translate("+(isFinite(L)?L:A(S))+",0)"})}function Zie(h,g,A){h.attr("transform",function(S){var L=g(S);return"translate(0,"+(isFinite(L)?L:A(S))+")"})}e.svg.brush=function(){var h=ie($,"brushstart","brush","brushend"),g=null,A=null,S=[0,0],L=[0,0],C,I,F=!0,H=!0,X=eb[0];function $(ae){ae.each(function(){var de=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",ke).on("touchstart.brush",ke),ge=de.selectAll(".background").data([0]);ge.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),de.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Me=de.selectAll(".resize").data(X,B);Me.exit().remove(),Me.enter().append("g").attr("class",function(ir){return"resize "+ir}).style("cursor",function(ir){return Xie[ir]}).append("rect").attr("x",function(ir){return/[ew]$/.test(ir)?-3:null}).attr("y",function(ir){return/^[ns]/.test(ir)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Me.style("display",$.empty()?"none":null);var Se=e.transition(de),xe=e.transition(ge),Ye;g&&(Ye=Jd(g),xe.attr("x",Ye[0]).attr("width",Ye[1]-Ye[0]),te(Se)),A&&(Ye=Jd(A),xe.attr("y",Ye[0]).attr("height",Ye[1]-Ye[0]),we(Se)),re(Se)})}$.event=function(ae){ae.each(function(){var de=h.of(this,arguments),ge={x:S,y:L,i:C,j:I},Me=this.__chart__||ge;this.__chart__=ge,Hs?e.select(this).transition().each("start.brush",function(){C=Me.i,I=Me.j,S=Me.x,L=Me.y,de({type:"brushstart"})}).tween("brush:brush",function(){var Se=Zd(S,ge.x),xe=Zd(L,ge.y);return C=I=null,function(Ye){S=ge.x=Se(Ye),L=ge.y=xe(Ye),de({type:"brush",mode:"resize"})}}).each("end.brush",function(){C=ge.i,I=ge.j,de({type:"brush",mode:"resize"}),de({type:"brushend"})}):(de({type:"brushstart"}),de({type:"brush",mode:"resize"}),de({type:"brushend"}))})};function re(ae){ae.selectAll(".resize").attr("transform",function(de){return"translate("+S[+/e$/.test(de)]+","+L[+/^s/.test(de)]+")"})}function te(ae){ae.select(".extent").attr("x",S[0]),ae.selectAll(".extent,.n>rect,.s>rect").attr("width",S[1]-S[0])}function we(ae){ae.select(".extent").attr("y",L[0]),ae.selectAll(".extent,.e>rect,.w>rect").attr("height",L[1]-L[0])}function ke(){var ae=this,de=e.select(e.event.target),ge=h.of(ae,arguments),Me=e.select(ae),Se=de.datum(),xe=!/^(n|s)$/.test(Se)&&g,Ye=!/^(e|w)$/.test(Se)&&A,ir=de.classed("extent"),cr=rr(ae),lr,pr=e.mouse(ae),yr,Er=e.select(i(ae)).on("keydown.brush",at).on("keyup.brush",Kt);if(e.event.changedTouches?Er.on("touchmove.brush",dt).on("touchend.brush",Dr):Er.on("mousemove.brush",dt).on("mouseup.brush",Dr),Me.interrupt().selectAll("*").interrupt(),ir)pr[0]=S[0]-pr[0],pr[1]=L[0]-pr[1];else if(Se){var gr=+/w$/.test(Se),Mr=+/^n/.test(Se);yr=[S[1-gr]-pr[0],L[1-Mr]-pr[1]],pr[0]=S[gr],pr[1]=L[Mr]}else e.event.altKey&&(lr=pr.slice());Me.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",de.style("cursor")),ge({type:"brushstart"}),dt();function at(){e.event.keyCode==32&&(ir||(lr=null,pr[0]-=S[1],pr[1]-=L[1],ir=2),ee())}function Kt(){e.event.keyCode==32&&ir==2&&(pr[0]+=S[1],pr[1]+=L[1],ir=0,ee())}function dt(){var Pr=e.mouse(ae),nt=!1;yr&&(Pr[0]+=yr[0],Pr[1]+=yr[1]),ir||(e.event.altKey?(lr||(lr=[(S[0]+S[1])/2,(L[0]+L[1])/2]),pr[0]=S[+(Pr[0]{(function(e,r){typeof cp=="object"&&typeof WA!="undefined"?r(cp):(e=e||self,r(e.d3=e.d3||{}))})(cp,function(e){"use strict";var r=new Date,t=new Date;function a(se,Ae,Xe,vr){function Fe(Te){return se(Te=arguments.length===0?new Date:new Date(+Te)),Te}return Fe.floor=function(Te){return se(Te=new Date(+Te)),Te},Fe.ceil=function(Te){return se(Te=new Date(Te-1)),Ae(Te,1),se(Te),Te},Fe.round=function(Te){var qe=Fe(Te),Ge=Fe.ceil(Te);return Te-qe0))return Je;do Je.push(Ve=new Date(+Te)),Ae(Te,Ge),se(Te);while(Ve=qe)for(;se(qe),!Te(qe);)qe.setTime(qe-1)},function(qe,Ge){if(qe>=qe)if(Ge<0)for(;++Ge<=0;)for(;Ae(qe,-1),!Te(qe););else for(;--Ge>=0;)for(;Ae(qe,1),!Te(qe););})},Xe&&(Fe.count=function(Te,qe){return r.setTime(+Te),t.setTime(+qe),se(r),se(t),Math.floor(Xe(r,t))},Fe.every=function(Te){return Te=Math.floor(Te),!isFinite(Te)||!(Te>0)?null:Te>1?Fe.filter(vr?function(qe){return vr(qe)%Te===0}:function(qe){return Fe.count(0,qe)%Te===0}):Fe}),Fe}var n=a(function(){},function(se,Ae){se.setTime(+se+Ae)},function(se,Ae){return Ae-se});n.every=function(se){return se=Math.floor(se),!isFinite(se)||!(se>0)?null:se>1?a(function(Ae){Ae.setTime(Math.floor(Ae/se)*se)},function(Ae,Xe){Ae.setTime(+Ae+Xe*se)},function(Ae,Xe){return(Xe-Ae)/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,Ae){se.setTime(+se+Ae*o)},function(se,Ae){return(Ae-se)/o},function(se){return se.getUTCSeconds()}),v=c.range,d=a(function(se){se.setTime(se-se.getMilliseconds()-se.getSeconds()*o)},function(se,Ae){se.setTime(+se+Ae*l)},function(se,Ae){return(Ae-se)/l},function(se){return se.getMinutes()}),p=d.range,y=a(function(se){se.setTime(se-se.getMilliseconds()-se.getSeconds()*o-se.getMinutes()*l)},function(se,Ae){se.setTime(+se+Ae*s)},function(se,Ae){return(Ae-se)/s},function(se){return se.getHours()}),m=y.range,x=a(function(se){se.setHours(0,0,0,0)},function(se,Ae){se.setDate(se.getDate()+Ae)},function(se,Ae){return(Ae-se-(Ae.getTimezoneOffset()-se.getTimezoneOffset())*l)/u},function(se){return se.getDate()-1}),w=x.range;function _(se){return a(function(Ae){Ae.setDate(Ae.getDate()-(Ae.getDay()+7-se)%7),Ae.setHours(0,0,0,0)},function(Ae,Xe){Ae.setDate(Ae.getDate()+Xe*7)},function(Ae,Xe){return(Xe-Ae-(Xe.getTimezoneOffset()-Ae.getTimezoneOffset())*l)/f})}var b=_(0),T=_(1),k=_(2),M=_(3),q=_(4),E=_(5),D=_(6),P=b.range,R=T.range,z=k.range,O=M.range,B=q.range,Y=E.range,G=D.range,U=a(function(se){se.setDate(1),se.setHours(0,0,0,0)},function(se,Ae){se.setMonth(se.getMonth()+Ae)},function(se,Ae){return Ae.getMonth()-se.getMonth()+(Ae.getFullYear()-se.getFullYear())*12},function(se){return se.getMonth()}),V=U.range,J=a(function(se){se.setMonth(0,1),se.setHours(0,0,0,0)},function(se,Ae){se.setFullYear(se.getFullYear()+Ae)},function(se,Ae){return Ae.getFullYear()-se.getFullYear()},function(se){return se.getFullYear()});J.every=function(se){return!isFinite(se=Math.floor(se))||!(se>0)?null:a(function(Ae){Ae.setFullYear(Math.floor(Ae.getFullYear()/se)*se),Ae.setMonth(0,1),Ae.setHours(0,0,0,0)},function(Ae,Xe){Ae.setFullYear(Ae.getFullYear()+Xe*se)})};var Z=J.range,ee=a(function(se){se.setUTCSeconds(0,0)},function(se,Ae){se.setTime(+se+Ae*l)},function(se,Ae){return(Ae-se)/l},function(se){return se.getUTCMinutes()}),fe=ee.range,ie=a(function(se){se.setUTCMinutes(0,0,0)},function(se,Ae){se.setTime(+se+Ae*s)},function(se,Ae){return(Ae-se)/s},function(se){return se.getUTCHours()}),ue=ie.range,K=a(function(se){se.setUTCHours(0,0,0,0)},function(se,Ae){se.setUTCDate(se.getUTCDate()+Ae)},function(se,Ae){return(Ae-se)/u},function(se){return se.getUTCDate()-1}),_e=K.range;function le(se){return a(function(Ae){Ae.setUTCDate(Ae.getUTCDate()-(Ae.getUTCDay()+7-se)%7),Ae.setUTCHours(0,0,0,0)},function(Ae,Xe){Ae.setUTCDate(Ae.getUTCDate()+Xe*7)},function(Ae,Xe){return(Xe-Ae)/f})}var he=le(0),oe=le(1),ce=le(2),j=le(3),Q=le(4),W=le(5),pe=le(6),me=he.range,ye=oe.range,Pe=ce.range,Ne=j.range,Ee=Q.range,Ie=W.range,Ue=pe.range,Be=a(function(se){se.setUTCDate(1),se.setUTCHours(0,0,0,0)},function(se,Ae){se.setUTCMonth(se.getUTCMonth()+Ae)},function(se,Ae){return Ae.getUTCMonth()-se.getUTCMonth()+(Ae.getUTCFullYear()-se.getUTCFullYear())*12},function(se){return se.getUTCMonth()}),Ce=Be.range,Oe=a(function(se){se.setUTCMonth(0,1),se.setUTCHours(0,0,0,0)},function(se,Ae){se.setUTCFullYear(se.getUTCFullYear()+Ae)},function(se,Ae){return Ae.getUTCFullYear()-se.getUTCFullYear()},function(se){return se.getUTCFullYear()});Oe.every=function(se){return!isFinite(se=Math.floor(se))||!(se>0)?null:a(function(Ae){Ae.setUTCFullYear(Math.floor(Ae.getUTCFullYear()/se)*se),Ae.setUTCMonth(0,1),Ae.setUTCHours(0,0,0,0)},function(Ae,Xe){Ae.setUTCFullYear(Ae.getUTCFullYear()+Xe*se)})};var He=Oe.range;e.timeDay=x,e.timeDays=w,e.timeFriday=E,e.timeFridays=Y,e.timeHour=y,e.timeHours=m,e.timeInterval=a,e.timeMillisecond=n,e.timeMilliseconds=i,e.timeMinute=d,e.timeMinutes=p,e.timeMonday=T,e.timeMondays=R,e.timeMonth=U,e.timeMonths=V,e.timeSaturday=D,e.timeSaturdays=G,e.timeSecond=c,e.timeSeconds=v,e.timeSunday=b,e.timeSundays=P,e.timeThursday=q,e.timeThursdays=B,e.timeTuesday=k,e.timeTuesdays=z,e.timeWednesday=M,e.timeWednesdays=O,e.timeWeek=b,e.timeWeeks=P,e.timeYear=J,e.timeYears=Z,e.utcDay=K,e.utcDays=_e,e.utcFriday=W,e.utcFridays=Ie,e.utcHour=ie,e.utcHours=ue,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=ee,e.utcMinutes=fe,e.utcMonday=oe,e.utcMondays=ye,e.utcMonth=Be,e.utcMonths=Ce,e.utcSaturday=pe,e.utcSaturdays=Ue,e.utcSecond=c,e.utcSeconds=v,e.utcSunday=he,e.utcSundays=me,e.utcThursday=Q,e.utcThursdays=Ee,e.utcTuesday=ce,e.utcTuesdays=Pe,e.utcWednesday=j,e.utcWednesdays=Ne,e.utcWeek=he,e.utcWeeks=me,e.utcYear=Oe,e.utcYears=He,Object.defineProperty(e,"__esModule",{value:!0})})});var _f=N((vp,ZA)=>{(function(e,r){typeof vp=="object"&&typeof ZA!="undefined"?r(vp,rb()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(vp,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,Re=ne.time,Qe=ne.periods,fr=ne.days,sr=ne.shortDays,kr=ne.months,Ir=ne.shortMonths,Yr=v(Qe),et=d(Qe),qt=v(fr),ft=d(fr),Ft=v(sr),Tt=d(sr),da=v(kr),$t=d(kr),oa=v(Ir),dr=d(Ir),yt={a:Qo,A:el,b:ct,B:Tn,c:null,d:U,e:U,f:fe,H:V,I:J,j:Z,L:ee,m:ie,M:ue,p:zt,q:zs,Q:qe,s:Ge,S:K,u:_e,U:le,V:he,w:oe,W:ce,x:null,X:null,y:j,Y:Q,Z:W,"%":Te},Zr={a:yn,A:Vi,b:Wt,B:Yi,c:null,d:pe,e:pe,f:Ee,H:me,I:ye,j:Pe,L:Ne,m:Ie,M:Ue,p:Rl,q:Pl,Q:qe,s:Ge,S:Be,u:Ce,U:Oe,V:He,w:se,W:Ae,x:null,X:null,y:Xe,Y:vr,Z:Fe,"%":Te},$r={a:rn,A:jt,b:dn,B:pn,c:Nt,d:q,e:q,f:O,H:D,I:D,j:E,L:z,m:M,M:P,p:Bt,q:k,Q:Y,s:G,S:R,u:y,U:m,V:x,w:p,W:w,x:Ct,X:_a,y:b,Y:_,Z:T,"%":B};yt.x=mt(De,yt),yt.X=mt(Re,yt),yt.c=mt(ve,yt),Zr.x=mt(De,Zr),Zr.X=mt(Re,Zr),Zr.c=mt(ve,Zr);function mt(mr,Kr){return function(vt){var ur=[],Na=-1,At=0,za=mr.length,Or,ji,Is;for(vt instanceof Date||(vt=new Date(+vt));++Na53)return null;"w"in ur||(ur.w=1),"Z"in ur?(At=a(n(ur.y,0,1)),za=At.getUTCDay(),At=za>4||za===0?r.utcMonday.ceil(At):r.utcMonday(At),At=r.utcDay.offset(At,(ur.V-1)*7),ur.y=At.getUTCFullYear(),ur.m=At.getUTCMonth(),ur.d=At.getUTCDate()+(ur.w+6)%7):(At=t(n(ur.y,0,1)),za=At.getDay(),At=za>4||za===0?r.timeMonday.ceil(At):r.timeMonday(At),At=r.timeDay.offset(At,(ur.V-1)*7),ur.y=At.getFullYear(),ur.m=At.getMonth(),ur.d=At.getDate()+(ur.w+6)%7)}else("W"in ur||"U"in ur)&&("w"in ur||(ur.w="u"in ur?ur.u%7:"W"in ur?1:0),za="Z"in ur?a(n(ur.y,0,1)).getUTCDay():t(n(ur.y,0,1)).getDay(),ur.m=0,ur.d="W"in ur?(ur.w+6)%7+ur.W*7-(za+5)%7:ur.w+ur.U*7-(za+6)%7);return"Z"in ur?(ur.H+=ur.Z/100|0,ur.M+=ur.Z%100,a(ur)):t(ur)}}function Gr(mr,Kr,vt,ur){for(var Na=0,At=Kr.length,za=vt.length,Or,ji;Na=za)return-1;if(Or=Kr.charCodeAt(Na++),Or===37){if(Or=Kr.charAt(Na++),ji=$r[Or in o?Kr.charAt(Na++):Or],!ji||(ur=ji(mr,vt,ur))<0)return-1}else if(Or!=vt.charCodeAt(ur++))return-1}return ur}function Bt(mr,Kr,vt){var ur=Yr.exec(Kr.slice(vt));return ur?(mr.p=et[ur[0].toLowerCase()],vt+ur[0].length):-1}function rn(mr,Kr,vt){var ur=Ft.exec(Kr.slice(vt));return ur?(mr.w=Tt[ur[0].toLowerCase()],vt+ur[0].length):-1}function jt(mr,Kr,vt){var ur=qt.exec(Kr.slice(vt));return ur?(mr.w=ft[ur[0].toLowerCase()],vt+ur[0].length):-1}function dn(mr,Kr,vt){var ur=oa.exec(Kr.slice(vt));return ur?(mr.m=dr[ur[0].toLowerCase()],vt+ur[0].length):-1}function pn(mr,Kr,vt){var ur=da.exec(Kr.slice(vt));return ur?(mr.m=$t[ur[0].toLowerCase()],vt+ur[0].length):-1}function Nt(mr,Kr,vt){return Gr(mr,ve,Kr,vt)}function Ct(mr,Kr,vt){return Gr(mr,De,Kr,vt)}function _a(mr,Kr,vt){return Gr(mr,Re,Kr,vt)}function Qo(mr){return sr[mr.getDay()]}function el(mr){return fr[mr.getDay()]}function ct(mr){return Ir[mr.getMonth()]}function Tn(mr){return kr[mr.getMonth()]}function zt(mr){return Qe[+(mr.getHours()>=12)]}function zs(mr){return 1+~~(mr.getMonth()/3)}function yn(mr){return sr[mr.getUTCDay()]}function Vi(mr){return fr[mr.getUTCDay()]}function Wt(mr){return Ir[mr.getUTCMonth()]}function Yi(mr){return kr[mr.getUTCMonth()]}function Rl(mr){return Qe[+(mr.getUTCHours()>=12)]}function Pl(mr){return 1+~~(mr.getUTCMonth()/3)}return{format:function(mr){var Kr=mt(mr+="",yt);return Kr.toString=function(){return mr},Kr},parse:function(mr){var Kr=Lt(mr+="",!1);return Kr.toString=function(){return mr},Kr},utcFormat:function(mr){var Kr=mt(mr+="",Zr);return Kr.toString=function(){return mr},Kr},utcParse:function(mr){var Kr=Lt(mr+="",!0);return Kr.toString=function(){return mr},Kr}}}var o={"-":"",_:" ",0:"0"},l=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(ne,ve,De){var Re=ne<0?"-":"",Qe=(Re?-ne:ne)+"",fr=Qe.length;return Re+(fr68?1900:2e3),De+Re[0].length):-1}function T(ne,ve,De){var Re=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(ve.slice(De,De+6));return Re?(ne.Z=Re[1]?0:-(Re[2]+(Re[3]||"00")),De+Re[0].length):-1}function k(ne,ve,De){var Re=l.exec(ve.slice(De,De+1));return Re?(ne.q=Re[0]*3-3,De+Re[0].length):-1}function M(ne,ve,De){var Re=l.exec(ve.slice(De,De+2));return Re?(ne.m=Re[0]-1,De+Re[0].length):-1}function q(ne,ve,De){var Re=l.exec(ve.slice(De,De+2));return Re?(ne.d=+Re[0],De+Re[0].length):-1}function E(ne,ve,De){var Re=l.exec(ve.slice(De,De+3));return Re?(ne.m=0,ne.d=+Re[0],De+Re[0].length):-1}function D(ne,ve,De){var Re=l.exec(ve.slice(De,De+2));return Re?(ne.H=+Re[0],De+Re[0].length):-1}function P(ne,ve,De){var Re=l.exec(ve.slice(De,De+2));return Re?(ne.M=+Re[0],De+Re[0].length):-1}function R(ne,ve,De){var Re=l.exec(ve.slice(De,De+2));return Re?(ne.S=+Re[0],De+Re[0].length):-1}function z(ne,ve,De){var Re=l.exec(ve.slice(De,De+3));return Re?(ne.L=+Re[0],De+Re[0].length):-1}function O(ne,ve,De){var Re=l.exec(ve.slice(De,De+6));return Re?(ne.L=Math.floor(Re[0]/1e3),De+Re[0].length):-1}function B(ne,ve,De){var Re=s.exec(ve.slice(De,De+1));return Re?De+Re[0].length:-1}function Y(ne,ve,De){var Re=l.exec(ve.slice(De));return Re?(ne.Q=+Re[0],De+Re[0].length):-1}function G(ne,ve,De){var Re=l.exec(ve.slice(De));return Re?(ne.s=+Re[0],De+Re[0].length):-1}function U(ne,ve){return f(ne.getDate(),ve,2)}function V(ne,ve){return f(ne.getHours(),ve,2)}function J(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 ee(ne,ve){return f(ne.getMilliseconds(),ve,3)}function fe(ne,ve){return ee(ne,ve)+"000"}function ie(ne,ve){return f(ne.getMonth()+1,ve,2)}function ue(ne,ve){return f(ne.getMinutes(),ve,2)}function K(ne,ve){return f(ne.getSeconds(),ve,2)}function _e(ne){var ve=ne.getDay();return ve===0?7:ve}function le(ne,ve){return f(r.timeSunday.count(r.timeYear(ne)-1,ne),ve,2)}function he(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 oe(ne){return ne.getDay()}function ce(ne,ve){return f(r.timeMonday.count(r.timeYear(ne)-1,ne),ve,2)}function j(ne,ve){return f(ne.getFullYear()%100,ve,2)}function Q(ne,ve){return f(ne.getFullYear()%1e4,ve,4)}function W(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 ye(ne,ve){return f(ne.getUTCHours()%12||12,ve,2)}function Pe(ne,ve){return f(1+r.utcDay.count(r.utcYear(ne),ne),ve,3)}function Ne(ne,ve){return f(ne.getUTCMilliseconds(),ve,3)}function Ee(ne,ve){return Ne(ne,ve)+"000"}function Ie(ne,ve){return f(ne.getUTCMonth()+1,ve,2)}function Ue(ne,ve){return f(ne.getUTCMinutes(),ve,2)}function Be(ne,ve){return f(ne.getUTCSeconds(),ve,2)}function Ce(ne){var ve=ne.getUTCDay();return ve===0?7:ve}function Oe(ne,ve){return f(r.utcSunday.count(r.utcYear(ne)-1,ne),ve,2)}function He(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 Ae(ne,ve){return f(r.utcMonday.count(r.utcYear(ne)-1,ne),ve,2)}function Xe(ne,ve){return f(ne.getUTCFullYear()%100,ve,2)}function vr(ne,ve){return f(ne.getUTCFullYear()%1e4,ve,4)}function Fe(){return"+0000"}function Te(){return"%"}function qe(ne){return+ne}function Ge(ne){return Math.floor(+ne/1e3)}var Je;Ve({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 Ve(ne){return Je=i(ne),e.timeFormat=Je.format,e.timeParse=Je.parse,e.utcFormat=Je.utcFormat,e.utcParse=Je.utcParse,Je}var Ze="%Y-%m-%dT%H:%M:%S.%LZ";function or(ne){return ne.toISOString()}var rr=Date.prototype.toISOString?or:e.utcFormat(Ze);function Ke(ne){var ve=new Date(ne);return isNaN(ve)?null:ve}var ze=+new Date("2000-01-01T00:00:00.000Z")?Ke:e.utcParse(Ze);e.isoFormat=rr,e.isoParse=ze,e.timeFormatDefaultLocale=Ve,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var tb=N((hp,XA)=>{(function(e,r){typeof hp=="object"&&typeof XA!="undefined"?r(hp):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(hp,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,q){if((E=(M=q?M.toExponential(q-1):M.toExponential()).indexOf("e"))<0)return null;var E,D=M.slice(0,E);return[D.length>1?D[0]+D.slice(2):D,+M.slice(E+1)]}function a(M){return M=t(Math.abs(M)),M?M[1]:NaN}function n(M,q){return function(E,D){for(var P=E.length,R=[],z=0,O=M[0],B=0;P>0&&O>0&&(B+O+1>D&&(O=Math.max(1,D-B)),R.push(E.substring(P-=O,P+O)),!((B+=O+1)>D));)O=M[z=(z+1)%M.length];return R.reverse().join(q)}}function i(M){return function(q){return q.replace(/[0-9]/g,function(E){return M[+E]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function l(M){if(!(q=o.exec(M)))throw new Error("invalid format: "+M);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]})}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 q=M.length,E=1,D=-1,P;E0&&(D=0);break}return D>0?M.slice(0,D)+M.slice(P+1):M}var f;function c(M,q){var E=t(M,q);if(!E)return M+"";var D=E[0],P=E[1],R=P-(f=Math.max(-8,Math.min(8,Math.floor(P/3)))*3)+1,z=D.length;return R===z?D:R>z?D+new Array(R-z+1).join("0"):R>0?D.slice(0,R)+"."+D.slice(R):"0."+new Array(1-R).join("0")+t(M,Math.max(0,q+R-1))[0]}function v(M,q){var E=t(M,q);if(!E)return M+"";var D=E[0],P=E[1];return P<0?"0."+new Array(-P).join("0")+D:D.length>P+1?D.slice(0,P+1)+"."+D.slice(P+1):D+new Array(P-D.length+2).join("0")}var d={"%":function(M,q){return(M*100).toFixed(q)},b:function(M){return Math.round(M).toString(2)},c:function(M){return M+""},d:r,e:function(M,q){return M.toExponential(q)},f:function(M,q){return M.toFixed(q)},g:function(M,q){return M.toPrecision(q)},o:function(M){return Math.round(M).toString(8)},p:function(M,q){return v(M*100,q)},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 y=Array.prototype.map,m=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function x(M){var q=M.grouping===void 0||M.thousands===void 0?p:n(y.call(M.grouping,Number),M.thousands+""),E=M.currency===void 0?"":M.currency[0]+"",D=M.currency===void 0?"":M.currency[1]+"",P=M.decimal===void 0?".":M.decimal+"",R=M.numerals===void 0?p:i(y.call(M.numerals,String)),z=M.percent===void 0?"%":M.percent+"",O=M.minus===void 0?"-":M.minus+"",B=M.nan===void 0?"NaN":M.nan+"";function Y(U){U=l(U);var V=U.fill,J=U.align,Z=U.sign,ee=U.symbol,fe=U.zero,ie=U.width,ue=U.comma,K=U.precision,_e=U.trim,le=U.type;le==="n"?(ue=!0,le="g"):d[le]||(K===void 0&&(K=12),_e=!0,le="g"),(fe||V==="0"&&J==="=")&&(fe=!0,V="0",J="=");var he=ee==="$"?E:ee==="#"&&/[boxX]/.test(le)?"0"+le.toLowerCase():"",oe=ee==="$"?D:/[%p]/.test(le)?z:"",ce=d[le],j=/[defgprs%]/.test(le);K=K===void 0?6:/[gprs]/.test(le)?Math.max(1,Math.min(21,K)):Math.max(0,Math.min(20,K));function Q(W){var pe=he,me=oe,ye,Pe,Ne;if(le==="c")me=ce(W)+me,W="";else{W=+W;var Ee=W<0||1/W<0;if(W=isNaN(W)?B:ce(Math.abs(W),K),_e&&(W=u(W)),Ee&&+W==0&&Z!=="+"&&(Ee=!1),pe=(Ee?Z==="("?Z:O:Z==="-"||Z==="("?"":Z)+pe,me=(le==="s"?m[8+f/3]:"")+me+(Ee&&Z==="("?")":""),j){for(ye=-1,Pe=W.length;++yeNe||Ne>57){me=(Ne===46?P+W.slice(ye+1):W.slice(ye))+me,W=W.slice(0,ye);break}}}ue&&!fe&&(W=q(W,1/0));var Ie=pe.length+W.length+me.length,Ue=Ie>1)+pe+W+me+Ue.slice(Ie);break;default:W=Ue+pe+W+me;break}return R(W)}return Q.toString=function(){return U+""},Q}function G(U,V){var J=Y((U=l(U),U.type="f",U)),Z=Math.max(-8,Math.min(8,Math.floor(a(V)/3)))*3,ee=Math.pow(10,-Z),fe=m[8+Z/3];return function(ie){return J(ee*ie)+fe}}return{format:Y,formatPrefix:G}}var w;_({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function _(M){return w=x(M),e.format=w.format,e.formatPrefix=w.formatPrefix,w}function b(M){return Math.max(0,-a(Math.abs(M)))}function T(M,q){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(q)/3)))*3-a(Math.abs(M)))}function k(M,q){return M=Math.abs(M),q=Math.abs(q)-M,Math.max(0,a(q)-a(M))+1}e.FormatSpecifier=s,e.formatDefaultLocale=_,e.formatLocale=x,e.formatSpecifier=l,e.precisionFixed=b,e.precisionPrefix=T,e.precisionRound=k,Object.defineProperty(e,"__esModule",{value:!0})})});var $A=N((_Ce,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 Rr=N((wCe,KA)=>{"use strict";var noe=$A();KA.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&noe(t))return!1}else if(r!=="number")return!1;return e-e<1}});var It=N((TCe,QA)=>{"use strict";QA.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 ab=N((dp,eM)=>{(function(e,r){typeof dp=="object"&&typeof eM!="undefined"?r(dp):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(dp,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 y=new ArrayBuffer(l),m=new Uint8Array(y);for(u=0;u>4,m[f++]=(v&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 zl=N((ACe,rM)=>{"use strict";rM.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 Vn=N(Xi=>{"use strict";var ioe=ab().decode,ooe=zl(),nb=Array.isArray,loe=ArrayBuffer,soe=DataView;function tM(e){return loe.isView(e)&&!(e instanceof soe)}Xi.isTypedArray=tM;function pp(e){return nb(e)||tM(e)}Xi.isArrayOrTypedArray=pp;function uoe(e){return!pp(e[0])}Xi.isArray1D=uoe;Xi.ensureArray=function(e,r){return nb(e)||(e=[]),e.length=r,e};var La={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};La.uint8c=La.u1c;La.uint8=La.u1;La.int8=La.i1;La.uint16=La.u2;La.int16=La.i2;La.uint32=La.u4;La.int32=La.i4;La.float32=La.f4;La.float64=La.f8;function ib(e){return e.constructor===ArrayBuffer}Xi.isArrayBuffer=ib;Xi.decodeTypedArraySpec=function(e){var r=[],t=foe(e),a=t.dtype,n=La[a];if(!n)throw new Error('Error in dtype: "'+a+'"');var i=n.BYTES_PER_ELEMENT,o=t.bdata;ib(o)||(o=ioe(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 nM=Rr(),lb=Vn().isArrayOrTypedArray;sM.exports=function(r,t){if(nM(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 wf=yp(),poe=/^\w*$/,yoe=0,uM=1,mp=2,fM=3,Ys=4;cM.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,o,l,s={};t&&t.length?(l=wf(r,t),o=l.get()):o=r,t=t||"";var u={};if(o)for(i=0;i2)return s[d]=s[d]|mp,c.set(v,null);if(f){for(i=d;i{"use strict";var moe=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,goe=/^[^\.\[\]]+$/;hM.exports=function(e,r){for(;r;){var t=e.match(moe);if(t)e=t[1];else if(e.match(goe))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 gp=N((LCe,pM)=>{"use strict";var boe=Rr();pM.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 boe(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var gM=N((CCe,mM)=>{"use strict";var yM=Vn().isArrayOrTypedArray,Yv=zl();mM.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(yM(n)&&yM(i)&&Yv(n[0])){if(a==="customdata"||a==="ids")continue;for(var o=Math.min(n.length,i.length),l=0;l{"use strict";function xoe(e,r){var t=e%r;return t<0?t+r:t}function _oe(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}bM.exports={mod:xoe,modHalf:_oe}});var kn=N((DCe,bp)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,o=e.max,l=e.random;function s(j,Q){if(j=j||"",Q=Q||{},j instanceof s)return j;if(!(this instanceof s))return new s(j,Q);var W=u(j);this._originalInput=j,this._r=W.r,this._g=W.g,this._b=W.b,this._a=W.a,this._roundA=n(100*this._a)/100,this._format=Q.format||W.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=W.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 j=this.toRgb();return(j.r*299+j.g*587+j.b*114)/1e3},getLuminance:function(){var j=this.toRgb(),Q,W,pe,me,ye,Pe;return Q=j.r/255,W=j.g/255,pe=j.b/255,Q<=.03928?me=Q/12.92:me=e.pow((Q+.055)/1.055,2.4),W<=.03928?ye=W/12.92:ye=e.pow((W+.055)/1.055,2.4),pe<=.03928?Pe=pe/12.92:Pe=e.pow((pe+.055)/1.055,2.4),.2126*me+.7152*ye+.0722*Pe},setAlpha:function(j){return this._a=U(j),this._roundA=n(100*this._a)/100,this},toHsv:function(){var j=d(this._r,this._g,this._b);return{h:j.h*360,s:j.s,v:j.v,a:this._a}},toHsvString:function(){var j=d(this._r,this._g,this._b),Q=n(j.h*360),W=n(j.s*100),pe=n(j.v*100);return this._a==1?"hsv("+Q+", "+W+"%, "+pe+"%)":"hsva("+Q+", "+W+"%, "+pe+"%, "+this._roundA+")"},toHsl:function(){var j=c(this._r,this._g,this._b);return{h:j.h*360,s:j.s,l:j.l,a:this._a}},toHslString:function(){var j=c(this._r,this._g,this._b),Q=n(j.h*360),W=n(j.s*100),pe=n(j.l*100);return this._a==1?"hsl("+Q+", "+W+"%, "+pe+"%)":"hsla("+Q+", "+W+"%, "+pe+"%, "+this._roundA+")"},toHex:function(j){return y(this._r,this._g,this._b,j)},toHexString:function(j){return"#"+this.toHex(j)},toHex8:function(j){return m(this._r,this._g,this._b,this._a,j)},toHex8String:function(j){return"#"+this.toHex8(j)},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[y(this._r,this._g,this._b,!0)]||!1},toFilter:function(j){var Q="#"+x(this._r,this._g,this._b,this._a),W=Q,pe=this._gradientType?"GradientType = 1, ":"";if(j){var me=s(j);W="#"+x(me._r,me._g,me._b,me._a)}return"progid:DXImageTransform.Microsoft.gradient("+pe+"startColorstr="+Q+",endColorstr="+W+")"},toString:function(j){var Q=!!j;j=j||this._format;var W=!1,pe=this._a<1&&this._a>=0,me=!Q&&pe&&(j==="hex"||j==="hex6"||j==="hex3"||j==="hex4"||j==="hex8"||j==="name");return me?j==="name"&&this._a===0?this.toName():this.toRgbString():(j==="rgb"&&(W=this.toRgbString()),j==="prgb"&&(W=this.toPercentageRgbString()),(j==="hex"||j==="hex6")&&(W=this.toHexString()),j==="hex3"&&(W=this.toHexString(!0)),j==="hex4"&&(W=this.toHex8String(!0)),j==="hex8"&&(W=this.toHex8String()),j==="name"&&(W=this.toName()),j==="hsl"&&(W=this.toHslString()),j==="hsv"&&(W=this.toHsvString()),W||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(j,Q){var W=j.apply(null,[this].concat([].slice.call(Q)));return this._r=W._r,this._g=W._g,this._b=W._b,this.setAlpha(W._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(w,arguments)},saturate:function(){return this._applyModification(_,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(q,arguments)},_applyCombination:function(j,Q){return j.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(R,arguments)},triad:function(){return this._applyCombination(D,arguments)},tetrad:function(){return this._applyCombination(P,arguments)}},s.fromRatio=function(j,Q){if(typeof j=="object"){var W={};for(var pe in j)j.hasOwnProperty(pe)&&(pe==="a"?W[pe]=j[pe]:W[pe]=ue(j[pe]));j=W}return s(j,Q)};function u(j){var Q={r:0,g:0,b:0},W=1,pe=null,me=null,ye=null,Pe=!1,Ne=!1;return typeof j=="string"&&(j=oe(j)),typeof j=="object"&&(he(j.r)&&he(j.g)&&he(j.b)?(Q=f(j.r,j.g,j.b),Pe=!0,Ne=String(j.r).substr(-1)==="%"?"prgb":"rgb"):he(j.h)&&he(j.s)&&he(j.v)?(pe=ue(j.s),me=ue(j.v),Q=p(j.h,pe,me),Pe=!0,Ne="hsv"):he(j.h)&&he(j.s)&&he(j.l)&&(pe=ue(j.s),ye=ue(j.l),Q=v(j.h,pe,ye),Pe=!0,Ne="hsl"),j.hasOwnProperty("a")&&(W=j.a)),W=U(W),{ok:Pe,format:j.format||Ne,r:i(255,o(Q.r,0)),g:i(255,o(Q.g,0)),b:i(255,o(Q.b,0)),a:W}}function f(j,Q,W){return{r:V(j,255)*255,g:V(Q,255)*255,b:V(W,255)*255}}function c(j,Q,W){j=V(j,255),Q=V(Q,255),W=V(W,255);var pe=o(j,Q,W),me=i(j,Q,W),ye,Pe,Ne=(pe+me)/2;if(pe==me)ye=Pe=0;else{var Ee=pe-me;switch(Pe=Ne>.5?Ee/(2-pe-me):Ee/(pe+me),pe){case j:ye=(Q-W)/Ee+(Q1&&(Be-=1),Be<1/6?Ie+(Ue-Ie)*6*Be:Be<1/2?Ue:Be<2/3?Ie+(Ue-Ie)*(2/3-Be)*6:Ie}if(Q===0)pe=me=ye=W;else{var Ne=W<.5?W*(1+Q):W+Q-W*Q,Ee=2*W-Ne;pe=Pe(Ee,Ne,j+1/3),me=Pe(Ee,Ne,j),ye=Pe(Ee,Ne,j-1/3)}return{r:pe*255,g:me*255,b:ye*255}}function d(j,Q,W){j=V(j,255),Q=V(Q,255),W=V(W,255);var pe=o(j,Q,W),me=i(j,Q,W),ye,Pe,Ne=pe,Ee=pe-me;if(Pe=pe===0?0:Ee/pe,pe==me)ye=0;else{switch(pe){case j:ye=(Q-W)/Ee+(Q>1)+720)%360;--Q;)pe.h=(pe.h+me)%360,ye.push(s(pe));return ye}function O(j,Q){Q=Q||6;for(var W=s(j).toHsv(),pe=W.h,me=W.s,ye=W.v,Pe=[],Ne=1/Q;Q--;)Pe.push(s({h:pe,s:me,v:ye})),ye=(ye+Ne)%1;return Pe}s.mix=function(j,Q,W){W=W===0?0:W||50;var pe=s(j).toRgb(),me=s(Q).toRgb(),ye=W/100,Pe={r:(me.r-pe.r)*ye+pe.r,g:(me.g-pe.g)*ye+pe.g,b:(me.b-pe.b)*ye+pe.b,a:(me.a-pe.a)*ye+pe.a};return s(Pe)},s.readability=function(j,Q){var W=s(j),pe=s(Q);return(e.max(W.getLuminance(),pe.getLuminance())+.05)/(e.min(W.getLuminance(),pe.getLuminance())+.05)},s.isReadable=function(j,Q,W){var pe=s.readability(j,Q),me,ye;switch(ye=!1,me=ce(W),me.level+me.size){case"AAsmall":case"AAAlarge":ye=pe>=4.5;break;case"AAlarge":ye=pe>=3;break;case"AAAsmall":ye=pe>=7;break}return ye},s.mostReadable=function(j,Q,W){var pe=null,me=0,ye,Pe,Ne,Ee;W=W||{},Pe=W.includeFallbackColors,Ne=W.level,Ee=W.size;for(var Ie=0;Ieme&&(me=ye,pe=s(Q[Ie]));return s.isReadable(j,pe,{level:Ne,size:Ee})||!Pe?pe:(W.includeFallbackColors=!1,s.mostReadable(j,["#fff","#000"],W))};var B=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(B);function G(j){var Q={};for(var W in j)j.hasOwnProperty(W)&&(Q[j[W]]=W);return Q}function U(j){return j=parseFloat(j),(isNaN(j)||j<0||j>1)&&(j=1),j}function V(j,Q){ee(j)&&(j="100%");var W=fe(j);return j=i(Q,o(0,parseFloat(j))),W&&(j=parseInt(j*Q,10)/100),e.abs(j-Q)<1e-6?1:j%Q/parseFloat(Q)}function J(j){return i(1,o(0,j))}function Z(j){return parseInt(j,16)}function ee(j){return typeof j=="string"&&j.indexOf(".")!=-1&&parseFloat(j)===1}function fe(j){return typeof j=="string"&&j.indexOf("%")!=-1}function ie(j){return j.length==1?"0"+j:""+j}function ue(j){return j<=1&&(j=j*100+"%"),j}function K(j){return e.round(parseFloat(j)*255).toString(16)}function _e(j){return Z(j)/255}var le=function(){var j="[-\\+]?\\d+%?",Q="[-\\+]?\\d*\\.\\d+%?",W="(?:"+Q+")|(?:"+j+")",pe="[\\s|\\(]+("+W+")[,|\\s]+("+W+")[,|\\s]+("+W+")\\s*\\)?",me="[\\s|\\(]+("+W+")[,|\\s]+("+W+")[,|\\s]+("+W+")[,|\\s]+("+W+")\\s*\\)?";return{CSS_UNIT:new RegExp(W),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 he(j){return!!le.CSS_UNIT.exec(j)}function oe(j){j=j.replace(r,"").replace(t,"").toLowerCase();var Q=!1;if(B[j])j=B[j],Q=!0;else if(j=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var W;return(W=le.rgb.exec(j))?{r:W[1],g:W[2],b:W[3]}:(W=le.rgba.exec(j))?{r:W[1],g:W[2],b:W[3],a:W[4]}:(W=le.hsl.exec(j))?{h:W[1],s:W[2],l:W[3]}:(W=le.hsla.exec(j))?{h:W[1],s:W[2],l:W[3],a:W[4]}:(W=le.hsv.exec(j))?{h:W[1],s:W[2],v:W[3]}:(W=le.hsva.exec(j))?{h:W[1],s:W[2],v:W[3],a:W[4]}:(W=le.hex8.exec(j))?{r:Z(W[1]),g:Z(W[2]),b:Z(W[3]),a:_e(W[4]),format:Q?"name":"hex8"}:(W=le.hex6.exec(j))?{r:Z(W[1]),g:Z(W[2]),b:Z(W[3]),format:Q?"name":"hex"}:(W=le.hex4.exec(j))?{r:Z(W[1]+""+W[1]),g:Z(W[2]+""+W[2]),b:Z(W[3]+""+W[3]),a:_e(W[4]+""+W[4]),format:Q?"name":"hex8"}:(W=le.hex3.exec(j))?{r:Z(W[1]+""+W[1]),g:Z(W[2]+""+W[2]),b:Z(W[3]+""+W[3]),format:Q?"name":"hex"}:!1}function ce(j){var Q,W;return j=j||{level:"AA",size:"small"},Q=(j.level||"AA").toUpperCase(),W=(j.size||"small").toLowerCase(),Q!=="AA"&&Q!=="AAA"&&(Q="AA"),W!=="small"&&W!=="large"&&(W="small"),{level:Q,size:W}}typeof bp!="undefined"&&bp.exports?bp.exports=s:window.tinycolor=s})(Math)});var bt=N(Zv=>{"use strict";var xM=zl(),jv=Array.isArray;function woe(e,r){var t,a;for(t=0;t{"use strict";_M.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 Xv=N((FCe,wM)=>{"use strict";wM.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var Af=N((NCe,MM)=>{"use strict";var TM=Xv(),AM=ma(),sb=AM({editType:"none"});sb.family.dflt=TM.HOVERFONT;sb.size.dflt=TM.HOVERFONTSIZE;MM.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:sb,grouptitlefont:AM({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var xp=N((zCe,kM)=>{"use strict";var Toe=ma(),Jv=Af().hoverlabel,$v=bt().extendFlat;kM.exports={hoverlabel:{bgcolor:$v({},Jv.bgcolor,{arrayOk:!0}),bordercolor:$v({},Jv.bordercolor,{arrayOk:!0}),font:Toe({arrayOk:!0,editType:"none"}),align:$v({},Jv.align,{arrayOk:!0}),namelength:$v({},Jv.namelength,{arrayOk:!0}),showarrow:$v({},Jv.showarrow),editType:"none"}}});var gn=N((ICe,SM)=>{"use strict";var Aoe=ma(),Moe=xp();SM.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:Aoe({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:Moe.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 js=N((OCe,CM)=>{"use strict";var koe=kn(),_p={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)"]]},qM=_p.RdBu;function Soe(e,r){if(r||(r=qM),!e)return r;function t(){try{e=_p[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),LM(e)?e:r}function LM(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((HCe,EM)=>{"use strict";var Sn=kn(),Loe=Rr(),Coe=Vn().isTypedArray,wa=EM.exports={},wp=si();wa.defaults=wp.defaults;var Eoe=wa.defaultLine=wp.defaultLine;wa.lightLine=wp.lightLine;var fb=wa.background=wp.background;wa.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};wa.rgb=function(e){return wa.tinyRGB(Sn(e))};wa.opacity=function(e){return e?Sn(e).getAlpha():0};wa.addOpacity=function(e,r){var t=Sn(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};wa.combine=function(e,r){var t=Sn(e).toRgb();if(t.a===1)return Sn(e).toRgbString();var a=Sn(r||fb).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 Sn(i).toRgbString()};wa.interpolate=function(e,r,t){var a=Sn(e).toRgb(),n=Sn(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 Sn(i).toRgbString()};wa.contrast=function(e,r,t){var a=Sn(e);a.getAlpha()!==1&&(a=Sn(wa.combine(e,fb)));var n=a.isDark()?r?a.lighten(r):fb:t?a.darken(t):Eoe;return n.toString()};wa.stroke=function(e,r){var t=Sn(r);e.style({stroke:wa.tinyRGB(t),"stroke-opacity":t.getAlpha()})};wa.fill=function(e,r){var t=Sn(r);e.style({fill:wa.tinyRGB(t),"fill-opacity":t.getAlpha()})};wa.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 Tp=N((UCe,DM)=>{"use strict";DM.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var Mf=N(RM=>{"use strict";RM.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 zM=N(qn=>{"use strict";var cb=Rr(),PM=kn(),FM=bt().extendFlat,Doe=gn(),Roe=js(),Poe=Tr(),Foe=Tp().DESELECTDIM,kf=yp(),NM=Mf().counter,Noe=Tf().modHalf,To=Vn().isArrayOrTypedArray,Il=Vn().isTypedArraySpec,Ol=Vn().decodeTypedArraySpec;qn.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||!cb(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)),PM(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return PM(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(Roe.get(e,t))}},angle:{coerceFunction:function(e,r,t){Il(e)&&(e=Ol(e)),e==="auto"?r.set("auto"):cb(e)?r.set(Noe(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||NM(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:!!NM(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 IM={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/un/"},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:{}}},OM={};function BM(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),BM(a,r[t]))}}BM(IM,OM);HM.exports={configAttributes:IM,dfltConfig:OM}});var hb=N((jCe,UM)=>{"use strict";var vb=Sr(),zoe=Rr(),Kv=[];UM.exports=function(e,r){if(Kv.indexOf(e)!==-1)return;Kv.push(e);var t=1e3;zoe(r)?t=r:r==="long"&&(t=3e3);var a=vb.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(Kv);function i(o){o.duration(700).style("opacity",0).each("end",function(l){var s=Kv.indexOf(l);s!==-1&&Kv.splice(s,1),vb.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var l=vb.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 Sf=Zs().dfltConfig,db=hb(),pb=GM.exports={};pb.log=function(){var e;if(Sf.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};pb.warn=function(){var e;if(Sf.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};pb.error=function(){var e;if(Sf.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var Mp=N((ZCe,VM)=>{"use strict";VM.exports=function(){}});var yb=N((XCe,YM)=>{"use strict";YM.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{jM.exports=Ioe;function Ioe(){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 XM=N(($Ce,ZM)=>{ZM.exports=Ooe;function Ooe(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 $M=N((KCe,JM)=>{JM.exports=Boe;function Boe(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 mb=N((QCe,KM)=>{KM.exports=Hoe;function Hoe(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 e9=N((eEe,QM)=>{QM.exports=Uoe;function Uoe(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 t9=N((rEe,r9)=>{r9.exports=Goe;function Goe(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],y=r[13],m=r[14],x=r[15],w=t*l-a*o,_=t*s-n*o,b=t*u-i*o,T=a*s-n*l,k=a*u-i*l,M=n*u-i*s,q=f*y-c*p,E=f*m-v*p,D=f*x-d*p,P=c*m-v*y,R=c*x-d*y,z=v*x-d*m,O=w*z-_*R+b*P+T*D-k*E+M*q;return O?(O=1/O,e[0]=(l*z-s*R+u*P)*O,e[1]=(n*R-a*z-i*P)*O,e[2]=(y*M-m*k+x*T)*O,e[3]=(v*k-c*M-d*T)*O,e[4]=(s*D-o*z-u*E)*O,e[5]=(t*z-n*D+i*E)*O,e[6]=(m*b-p*M-x*_)*O,e[7]=(f*M-v*b+d*_)*O,e[8]=(o*R-l*D+u*q)*O,e[9]=(a*D-t*R-i*q)*O,e[10]=(p*k-y*b+x*w)*O,e[11]=(c*b-f*k-d*w)*O,e[12]=(l*E-o*P-s*q)*O,e[13]=(t*P-a*E+n*q)*O,e[14]=(y*_-p*T-m*w)*O,e[15]=(f*T-c*_+v*w)*O,e):null}});var n9=N((tEe,a9)=>{a9.exports=Voe;function Voe(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],y=r[13],m=r[14],x=r[15];return e[0]=l*(v*x-d*m)-c*(s*x-u*m)+y*(s*d-u*v),e[1]=-(a*(v*x-d*m)-c*(n*x-i*m)+y*(n*d-i*v)),e[2]=a*(s*x-u*m)-l*(n*x-i*m)+y*(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*m)-f*(s*x-u*m)+p*(s*d-u*v)),e[5]=t*(v*x-d*m)-f*(n*x-i*m)+p*(n*d-i*v),e[6]=-(t*(s*x-u*m)-o*(n*x-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*x-d*y)-f*(l*x-u*y)+p*(l*d-u*c),e[9]=-(t*(c*x-d*y)-f*(a*x-i*y)+p*(a*d-i*c)),e[10]=t*(l*x-u*y)-o*(a*x-i*y)+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*y)-f*(l*m-s*y)+p*(l*v-s*c)),e[13]=t*(c*m-v*y)-f*(a*m-n*y)+p*(a*v-n*c),e[14]=-(t*(l*m-s*y)-o*(a*m-n*y)+p*(a*s-n*l)),e[15]=t*(l*v-s*c)-o*(a*v-n*c)+f*(a*s-n*l),e}});var o9=N((aEe,i9)=>{i9.exports=Yoe;function Yoe(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],y=e[14],m=e[15],x=r*o-t*i,w=r*l-a*i,_=r*s-n*i,b=t*l-a*o,T=t*s-n*o,k=a*s-n*l,M=u*p-f*d,q=u*y-c*d,E=u*m-v*d,D=f*y-c*p,P=f*m-v*p,R=c*m-v*y;return x*R-w*P+_*D+b*E-T*q+k*M}});var s9=N((nEe,l9)=>{l9.exports=joe;function joe(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],y=r[12],m=r[13],x=r[14],w=r[15],_=t[0],b=t[1],T=t[2],k=t[3];return e[0]=_*a+b*l+T*c+k*y,e[1]=_*n+b*s+T*v+k*m,e[2]=_*i+b*u+T*d+k*x,e[3]=_*o+b*f+T*p+k*w,_=t[4],b=t[5],T=t[6],k=t[7],e[4]=_*a+b*l+T*c+k*y,e[5]=_*n+b*s+T*v+k*m,e[6]=_*i+b*u+T*d+k*x,e[7]=_*o+b*f+T*p+k*w,_=t[8],b=t[9],T=t[10],k=t[11],e[8]=_*a+b*l+T*c+k*y,e[9]=_*n+b*s+T*v+k*m,e[10]=_*i+b*u+T*d+k*x,e[11]=_*o+b*f+T*p+k*w,_=t[12],b=t[13],T=t[14],k=t[15],e[12]=_*a+b*l+T*c+k*y,e[13]=_*n+b*s+T*v+k*m,e[14]=_*i+b*u+T*d+k*x,e[15]=_*o+b*f+T*p+k*w,e}});var f9=N((iEe,u9)=>{u9.exports=Woe;function Woe(e,r,t){var a=t[0],n=t[1],i=t[2],o,l,s,u,f,c,v,d,p,y,m,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],y=r[9],m=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]=y,e[10]=m,e[11]=x,e[12]=o*a+f*n+p*i+r[12],e[13]=l*a+c*n+y*i+r[13],e[14]=s*a+v*n+m*i+r[14],e[15]=u*a+d*n+x*i+r[15]),e}});var v9=N((oEe,c9)=>{c9.exports=Zoe;function Zoe(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 d9=N((lEe,h9)=>{h9.exports=Xoe;function Xoe(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,y,m,x,w,_,b,T,k,M,q,E,D,P,R,z,O,B;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],y=r[4],m=r[5],x=r[6],w=r[7],_=r[8],b=r[9],T=r[10],k=r[11],M=n*n*f+u,q=i*n*f+o*s,E=o*n*f-i*s,D=n*i*f-o*s,P=i*i*f+u,R=o*i*f+n*s,z=n*o*f+i*s,O=i*o*f-n*s,B=o*o*f+u,e[0]=c*M+y*q+_*E,e[1]=v*M+m*q+b*E,e[2]=d*M+x*q+T*E,e[3]=p*M+w*q+k*E,e[4]=c*D+y*P+_*R,e[5]=v*D+m*P+b*R,e[6]=d*D+x*P+T*R,e[7]=p*D+w*P+k*R,e[8]=c*z+y*O+_*B,e[9]=v*z+m*O+b*B,e[10]=d*z+x*O+T*B,e[11]=p*z+w*O+k*B,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var y9=N((sEe,p9)=>{p9.exports=Joe;function Joe(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 g9=N((uEe,m9)=>{m9.exports=$oe;function $oe(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 x9=N((fEe,b9)=>{b9.exports=Koe;function Koe(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 w9=N((cEe,_9)=>{_9.exports=Qoe;function Qoe(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 A9=N((vEe,T9)=>{T9.exports=ele;function ele(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,y=i*u,m=o*l,x=o*s,w=o*u;return e[0]=1-(d+y),e[1]=c+w,e[2]=v-x,e[3]=0,e[4]=c-w,e[5]=1-(f+y),e[6]=p+m,e[7]=0,e[8]=v+x,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 k9=N((hEe,M9)=>{M9.exports=rle;function rle(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 q9=N((dEe,S9)=>{S9.exports=tle;function tle(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 C9=N((pEe,L9)=>{L9.exports=ale;function ale(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 D9=N((yEe,E9)=>{E9.exports=nle;function nle(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 P9=N((mEe,R9)=>{R9.exports=ile;function ile(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 N9=N((gEe,F9)=>{F9.exports=ole;function ole(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,y=i*o,m=i*l,x=i*s;return e[0]=1-c-p,e[1]=f+x,e[2]=v-m,e[3]=0,e[4]=f-x,e[5]=1-u-p,e[6]=d+y,e[7]=0,e[8]=v+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 I9=N((bEe,z9)=>{z9.exports=lle;function lle(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 B9=N((xEe,O9)=>{O9.exports=sle;function sle(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 U9=N((_Ee,H9)=>{H9.exports=ule;function ule(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 V9=N((wEe,G9)=>{G9.exports=fle;function fle(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 j9=N((TEe,Y9)=>{var cle=mb();Y9.exports=vle;function vle(e,r,t,a){var n,i,o,l,s,u,f,c,v,d,p=r[0],y=r[1],m=r[2],x=a[0],w=a[1],_=a[2],b=t[0],T=t[1],k=t[2];return Math.abs(p-b)<1e-6&&Math.abs(y-T)<1e-6&&Math.abs(m-k)<1e-6?cle(e):(f=p-b,c=y-T,v=m-k,d=1/Math.sqrt(f*f+c*c+v*v),f*=d,c*=d,v*=d,n=w*v-_*c,i=_*f-x*v,o=x*c-w*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*y+o*m),e[13]=-(l*p+s*y+u*m),e[14]=-(f*p+c*y+v*m),e[15]=1,e)}});var Z9=N((AEe,W9)=>{W9.exports=hle;function hle(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=N((MEe,X9)=>{X9.exports={create:WM(),clone:XM(),copy:$M(),identity:mb(),transpose:e9(),invert:t9(),adjoint:n9(),determinant:o9(),multiply:s9(),translate:f9(),scale:v9(),rotate:d9(),rotateX:y9(),rotateY:g9(),rotateZ:x9(),fromRotation:w9(),fromRotationTranslation:A9(),fromScaling:k9(),fromTranslation:q9(),fromXRotation:C9(),fromYRotation:D9(),fromZRotation:P9(),fromQuat:N9(),frustum:I9(),perspective:B9(),perspectiveFromFieldOfView:U9(),ortho:V9(),lookAt:j9(),str:Z9()}});var kp=N(Qt=>{"use strict";var dle=gb();Qt.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var ple=Sr(),J9=Xs(),yle=kp(),mle=gb();function gle(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 ble(e){var r=ple.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function $9(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function xle(e,r){K9("global",e,r)}function K9(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):J9.warn("addStyleRule failed"):J9.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function _le(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&$9(t)}function wle(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 Tle(e){var r=ek(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=Q9(a);if(n){var i=yle.convertCssMatrix(n);t=mle.multiply(t,t,i)}}),t}function Q9(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 ek(e){for(var r=[];Ale(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function Ale(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function Mle(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}rk.exports={getGraphDiv:gle,isPlotDiv:ble,removeElement:$9,addStyleRule:xle,addRelatedStyleRule:K9,deleteRelatedStyleRule:_le,setStyleOnHover:wle,getFullTransformMatrix:Tle,getElementTransformMatrix:Q9,getElementAndAncestors:ek,equalDomRects:Mle}});var eh=N((qEe,tk)=>{"use strict";tk.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 Ji=N((LEe,uk)=>{"use strict";var nk=bt().extendFlat,kle=zl(),ik={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},ok={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},Sle=ik.flags.slice().concat(["fullReplot"]),qle=ok.flags.slice().concat("layoutReplot");uk.exports={traces:ik,layout:ok,traceFlags:function(){return ak(Sle)},layoutFlags:function(){return ak(qle)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";bb.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};bb.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 xb=N((EEe,fk)=>{"use strict";fk.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 Yn=N(qf=>{"use strict";var{DATE_FORMAT_LINK:Lle,FORMAT_LINK:Cle}=xb(),Ele=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function Dle({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,Cle,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,Lle,"for details on the date formatting syntax.",Ele].join(" ")}qf.templateFormatStringDescription=Dle;qf.hovertemplateAttrs=({editType:e="none",arrayOk:r}={},t={})=>Vs({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});qf.texttemplateAttrs=({editType:e="calc",arrayOk:r}={},t={})=>Vs({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});qf.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:r}={},t={})=>({valType:"string",dflt:"",editType:e});qf.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var Lp=N((PEe,yk)=>{"use strict";function Bl(e,r){return r?r.d2l(e):e}function ck(e,r){return r?r.l2d(e):e}function Rle(e){return e.x0}function Ple(e){return e.x1}function Fle(e){return e.y0}function Nle(e){return e.y1}function vk(e){return e.x0shift||0}function hk(e){return e.x1shift||0}function dk(e){return e.y0shift||0}function pk(e){return e.y1shift||0}function Sp(e,r){return Bl(e.x1,r)+hk(e)-Bl(e.x0,r)-vk(e)}function qp(e,r,t){return Bl(e.y1,t)+pk(e)-Bl(e.y0,t)-dk(e)}function zle(e,r){return Math.abs(Sp(e,r))}function Ile(e,r,t){return Math.abs(qp(e,r,t))}function Ole(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(Sp(e,r),2)+Math.pow(qp(e,r,t),2))}function Ble(e,r){return ck((Bl(e.x1,r)+hk(e)+Bl(e.x0,r)+vk(e))/2,r)}function Hle(e,r,t){return ck((Bl(e.y1,t)+pk(e)+Bl(e.y0,t)+dk(e))/2,t)}function Ule(e,r,t){return e.type!=="line"?void 0:qp(e,r,t)/Sp(e,r)}yk.exports={x0:Rle,x1:Ple,y0:Fle,y1:Nle,slope:Ule,dx:Sp,dy:qp,width:zle,height:Ile,length:Ole,xcenter:Ble,ycenter:Hle}});var bk=N((FEe,gk)=>{"use strict";var Gle=Ji().overrideAll,Js=gn(),mk=ma(),Vle=ui().dash,Hl=bt().extendFlat,{shapeTexttemplateAttrs:Yle,templatefallbackAttrs:jle}=Yn(),Wle=Lp();gk.exports=Gle({newshape:{visible:Hl({},Js.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:Hl({},Js.legend,{}),legendgroup:Hl({},Js.legendgroup,{}),legendgrouptitle:{text:Hl({},Js.legendgrouptitle.text,{}),font:mk({})},legendrank:Hl({},Js.legendrank,{}),legendwidth:Hl({},Js.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Hl({},Vle,{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({},Js.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:Yle({newshape:!0},{keys:Object.keys(Wle)}),texttemplatefallback:jle({editType:"arraydraw"}),font:mk({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var _k=N((NEe,xk)=>{"use strict";var Zle=ui().dash,Xle=bt().extendFlat;xk.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:Xle({},Zle,{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 Cp=N((zEe,wk)=>{"use strict";wk.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 Lf=N((IEe,kk)=>{"use strict";var _b=ma(),Jle=eh(),Ep=si(),Tk=bk(),Ak=_k(),$le=Cp(),Mk=bt().extendFlat,Dp=_b({editType:"calc"});Dp.family.dflt='"Open Sans", verdana, arial, sans-serif';Dp.size.dflt=12;Dp.color.dflt=Ep.defaultLine;kk.exports={font:Dp,title:{text:{valType:"string",editType:"layoutstyle"},font:_b({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:_b({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:Mk($le({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:Ep.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:Ep.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:Ep.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:Tk.newshape,activeshape:Tk.activeshape,newselection:Ak.newselection,activeselection:Ak.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:Mk({},Jle.transition,{editType:"none"})}});var Sk=N(()=>{(function(){if(!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")){var e=document.createElement("style");e.id="ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var br=N(Br=>{"use strict";var Cf=Xs(),qk=Mp(),Lk=yb(),Kle=zl(),Qle=Qv().addStyleRule,Ck=bt(),ese=gn(),rse=Lf(),tse=Ck.extendFlat,wb=Ck.extendDeepAll;Br.modules={};Br.allCategories={};Br.allTypes=[];Br.subplotsRegistry={};Br.componentsRegistry={};Br.layoutArrayContainers=[];Br.layoutArrayRegexes=[];Br.traceLayoutAttributes={};Br.localeRegistry={};Br.apiMethodRegistry={};Br.collectableSubplotTypes=null;Br.register=function(r){if(Br.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 sse=_f().timeFormat,Hk=Rr(),Tb=Xs(),Gl=Tf().mod,Rf=It(),fi=Rf.BADNUM,Ln=Rf.ONEDAY,rh=Rf.ONEHOUR,Ul=Rf.ONEMIN,Df=Rf.ONESEC,th=Rf.EPOCHJD,tl=br(),Fk=_f().utcFormat,use=/^\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,fse=/^\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,Nk=new Date().getFullYear()-70;function al(e){return e&&tl.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}ea.dateTick0=function(e,r){var t=cse(e,!!r);if(r<2)return t;var a=ea.dateTime2ms(t,e);return a+=Ln*(r-1),ea.ms2DateTime(a,0,e)};function cse(e,r){return al(e)?r?tl.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:tl.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}ea.dfltRange=function(e){return al(e)?tl.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};ea.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Pp,Fp;ea.dateTime2ms=function(e,r){if(ea.isJSDate(e)){var t=e.getTimezoneOffset()*Ul,a=(e.getUTCMinutes()-e.getMinutes())*Ul+(e.getUTCSeconds()-e.getSeconds())*Df+(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>=Pp&&e<=Fp?e:fi}if(typeof e!="string"&&typeof e!="number")return fi;e=String(e);var i=al(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?fse:use);if(!s)return fi;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 fi;u=Number(u);var y;try{var m=tl.getComponentMethod("calendars","getCal")(r);if(l){var x=f.charAt(f.length-1)==="i";f=parseInt(f,10),y=m.newDate(u,m.toMonthIndex(u,f,x),c)}else y=m.newDate(u,Number(f),c)}catch(_){return fi}return y?(y.toJD()-th)*Ln+v*rh+d*Ul+p*Df:fi}u.length===2?u=(Number(u)+2e3-Nk)%100+Nk:u=Number(u),f-=1;var w=new Date(Date.UTC(2e3,f,c,v,d));return w.setUTCFullYear(u),w.getUTCMonth()!==f||w.getUTCDate()!==c?fi:w.getTime()+p*Df};Pp=ea.MIN_MS=ea.dateTime2ms("-9999");Fp=ea.MAX_MS=ea.dateTime2ms("9999-12-31 23:59:59.9999");ea.isDateTime=function(e,r){return ea.dateTime2ms(e,r)!==fi};function Ef(e,r){return String(e+Math.pow(10,r)).substr(1)}var Rp=90*Ln,zk=3*rh,Ik=5*Ul;ea.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Pp&&e<=Fp))return fi;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(al(t)){var c=Math.floor(n/Ln)+th,v=Math.floor(Gl(e,Ln));try{i=tl.getComponentMethod("calendars","getCal")(t).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){i=Fk("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=Pp+Ln&&e<=Fp-Ln))return fi;var r=Math.floor(Gl(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=sse("%Y-%m-%d")(t),n=t.getHours(),i=t.getMinutes(),o=t.getSeconds(),l=t.getUTCMilliseconds()*10+r;return Uk(a,n,i,o,l)};function Uk(e,r,t,a,n){if((r||t||a||n)&&(e+=" "+Ef(r,2)+":"+Ef(t,2),(a||n)&&(e+=":"+Ef(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+Ef(n,i)}return e}ea.cleanDate=function(e,r,t){if(e===fi)return r;if(ea.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(al(t))return Tb.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=ea.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!ea.isDateTime(e,t))return Tb.error("unrecognized date",e),r;return e};var vse=/%\d?f/g,hse=/%h/g,dse={1:"1",2:"1",3:"2",4:"2"};function Ok(e,r,t,a){e=e.replace(vse,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(hse,function(){return dse[t("%q")(n)]}),al(a))try{e=tl.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var pse=[59,59.9,59.99,59.999,59.9999];function yse(e,r){var t=Gl(e+.05,Ln),a=Ef(Math.floor(t/rh),2)+":"+Ef(Gl(Math.floor(t/Ul),60),2);if(r!=="M"){Hk(r)||(r=0);var n=Math.min(Gl(e/Df,60),pse[r]),i=(100+n).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}ea.formatDate=function(e,r,t,a,n,i){if(n=al(n)&&n,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` -`+i.year;else return yse(e,t)+` -`+Ok(i.dayMonthYear,e,a,n);return Ok(r,e,a,n)};var Bk=3*Ln;ea.incrementMonth=function(e,r,t){t=al(t)&&t;var a=Gl(e,Ln);if(e=Math.round(e-a),t)try{var n=Math.round(e/Ln)+th,i=tl.getComponentMethod("calendars","getCal")(t),o=i.fromJD(n);return r%12?i.add(o,r,"m"):i.add(o,r/12,"y"),(o.toJD()-th)*Ln+a}catch(s){Tb.error("invalid ms "+e+" in calendar "+t)}var l=new Date(e+Bk);return l.setUTCMonth(l.getUTCMonth()+r)+a-Bk};ea.findExactDates=function(e,r){for(var t=0,a=0,n=0,i=0,o,l,s=al(r)&&tl.getComponentMethod("calendars","getCal")(r),u=0;u{"use strict";Vk.exports=function(r){return r}});var kb=N(nl=>{"use strict";var mse=Rr(),gse=Xs(),bse=Ab(),xse=It().BADNUM,Mb=1e-9;nl.findBin=function(e,r,t){if(mse(r.start))return t?Math.ceil((e-r.start)/r.size-Mb)-1:Math.floor((e-r.start)/r.size+Mb);var a=0,n=r.length,i=0,o=n>1?(r[n-1]-r[0])/(n-1):1,l,s;for(o>=0?s=t?_se:wse:s=t?Ase:Tse,e+=o*Mb*(t?-1:1)*(o>=0?1:-1);a90&&gse.log("Long binary search..."),a-1};function _se(e,r){return er}function Ase(e,r){return e>=r}nl.sorterAsc=function(e,r){return e-r};nl.sorterDes=function(e,r){return r-e};nl.distinctVals=function(e){var r=e.slice();r.sort(nl.sorterAsc);var t;for(t=r.length-1;t>-1&&r[t]===xse;t--);for(var a=r[t]-r[0]||1,n=a/(t||1)/1e4,i=[],o,l=0;l<=t;l++){var s=r[l],u=s-o;o===void 0?(i.push(s),o=s):u>n&&(a=Math.min(a,u),i.push(s),o=s)}return{vals:i,minDiff:a}};nl.roundUp=function(e,r,t){for(var a=0,n=r.length-1,i,o=0,l=t?0:1,s=t?1:0,u=t?Math.ceil:Math.floor;a0&&(a=1),t&&a)return e.sort(r)}return a?e:e.reverse()};nl.findIndexOfMin=function(e,r){r=r||bse;for(var t=1/0,a,n=0;n{"use strict";Yk.exports=function(r){return Object.keys(r).sort()}});var jk=N(ra=>{"use strict";var ah=Rr(),Mse=Vn().isArrayOrTypedArray;ra.aggNums=function(e,r,t,a){var n,i;if((!a||a>t.length)&&(a=t.length),ah(r)||(r=!1),Mse(t[0])){for(i=new Array(a),n=0;ne.length-1)return e[e.length-1];var t=r%1;return t*e[Math.ceil(r)]+(1-t)*e[Math.floor(r)]}});var $k=N((WEe,Jk)=>{"use strict";var Wk=Tf(),qb=Wk.mod,kse=Wk.modHalf,nh=Math.PI,Vl=2*nh;function Sse(e){return e/180*nh}function qse(e){return e/nh*180}function Lb(e){return Math.abs(e[1]-e[0])>Vl-1e-14}function Zk(e,r){return kse(r-e,Vl)}function Lse(e,r){return Math.abs(Zk(e,r))}function Xk(e,r){if(Lb(r))return!0;var t,a;r[0]a&&(a+=Vl);var n=qb(e,Vl),i=n+Vl;return n>=t&&n<=a||i>=t&&i<=a}function Cse(e,r,t,a){if(!Xk(r,a))return!1;var n,i;return t[0]=n&&e<=i}function Cb(e,r,t,a,n,i,o){n=n||0,i=i||0;var l=Lb([t,a]),s,u,f,c,v;l?(s=0,u=nh,f=Vl):t{"use strict";$s.isLeftAnchor=function(r){return r.xanchor==="left"||r.xanchor==="auto"&&r.x<=1/3};$s.isCenterAnchor=function(r){return r.xanchor==="center"||r.xanchor==="auto"&&r.x>1/3&&r.x<2/3};$s.isRightAnchor=function(r){return r.xanchor==="right"||r.xanchor==="auto"&&r.x>=2/3};$s.isTopAnchor=function(r){return r.yanchor==="top"||r.yanchor==="auto"&&r.y>=2/3};$s.isMiddleAnchor=function(r){return r.yanchor==="middle"||r.yanchor==="auto"&&r.y>1/3&&r.y<2/3};$s.isBottomAnchor=function(r){return r.yanchor==="bottom"||r.yanchor==="auto"&&r.y<=1/3}});var rS=N(Ks=>{"use strict";var Eb=Tf().mod;Ks.segmentsIntersect=eS;function eS(e,r,t,a,n,i,o,l){var s=t-e,u=n-e,f=o-n,c=a-r,v=i-r,d=l-i,p=s*d-f*c;if(p===0)return null;var y=(u*d-f*v)/p,m=(u*c-s*v)/p;return m<0||m>1||y<0||y>1?null:{x:e+s*y,y:r+c*y}}Ks.segmentDistance=function(r,t,a,n,i,o,l,s){if(eS(r,t,a,n,i,o,l,s))return 0;var u=a-r,f=n-t,c=l-i,v=s-o,d=u*u+f*f,p=c*c+v*v,y=Math.min(Np(u,f,d,i-r,o-t),Np(u,f,d,l-r,s-t),Np(c,v,p,r-i,t-o),Np(c,v,p,a-i,n-o));return Math.sqrt(y)};function Np(e,r,t,a,n){var i=a*e+n*r;if(i<0)return a*a+n*n;if(i>t){var o=a-e,l=n-r;return o*o+l*l}else{var s=a*r-n*e;return s*s/t}}var zp,Db,Qk;Ks.getTextLocation=function(r,t,a,n){if((r!==Db||n!==Qk)&&(zp={},Db=r,Qk=n),zp[a])return zp[a];var i=r.getPointAtLength(Eb(a-n/2,t)),o=r.getPointAtLength(Eb(a+n/2,t)),l=Math.atan((o.y-i.y)/(o.x-i.x)),s=r.getPointAtLength(Eb(a,t)),u=(s.x*4+i.x+o.x)/6,f=(s.y*4+i.y+o.y)/6,c={x:u,y:f,theta:l};return zp[a]=c,c};Ks.clearLocationCache=function(){Db=null};Ks.getVisibleSegment=function(r,t,a){var n=t.left,i=t.right,o=t.top,l=t.bottom,s=0,u=r.getTotalLength(),f=u,c,v;function d(y){var m=r.getPointAtLength(y);y===0?c=m:y===u&&(v=m);var x=m.xi?m.x-i:0,w=m.yl?m.y-l:0;return Math.sqrt(x*x+w*w)}for(var p=d(s);p;){if(s+=p+a,s>f)return;p=d(s)}for(p=d(f);p;){if(f-=p+a,s>f)return;p=d(f)}return{min:s,max:f,len:f-s,total:u,isClosed:s===0&&f===u&&Math.abs(c.x-v.x)<.1&&Math.abs(c.y-v.y)<.1}};Ks.findPointOnPath=function(r,t,a,n){n=n||{};for(var i=n.pathLength||r.getTotalLength(),o=n.tolerance||.001,l=n.iterationLimit||30,s=r.getPointAtLength(0)[a]>r.getPointAtLength(i)[a]?-1:1,u=0,f=0,c=i,v,d,p;u0?c=v:f=v,u++}return d}});var Ip=N(ih=>{"use strict";var il={};ih.throttle=function(r,t,a){var n=il[r],i=Date.now();if(!n){for(var o in il)il[o].tsn.ts+t){l();return}n.timer=setTimeout(function(){l(),n.timer=null},t)};ih.done=function(e){var r=il[e];return!r||!r.timer?Promise.resolve():new Promise(function(t){var a=r.onDone;r.onDone=function(){a&&a(),t(),r.onDone=null}})};ih.clear=function(e){if(e)tS(il[e]),delete il[e];else for(var r in il)ih.clear(r)};function tS(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var nS=N(($Ee,aS)=>{"use strict";aS.exports=function(r){r._responsiveChartHandler&&(window.removeEventListener("resize",r._responsiveChartHandler),delete r._responsiveChartHandler)}});var iS=N((KEe,Op)=>{"use strict";Op.exports=Rb;Op.exports.isMobile=Rb;Op.exports.default=Rb;var Pse=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,Fse=/CrOS/,Nse=/android|ipad|playbook|silk/i;function Rb(e){e||(e={});let r=e.ua;if(!r&&typeof navigator!="undefined"&&(r=navigator.userAgent),r&&r.headers&&typeof r.headers["user-agent"]=="string"&&(r=r.headers["user-agent"]),typeof r!="string")return!1;let t=Pse.test(r)&&!Fse.test(r)||!!e.tablet&&Nse.test(r);return!t&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&r.indexOf("Macintosh")!==-1&&r.indexOf("Safari")!==-1&&(t=!0),t}});var lS=N((QEe,oS)=>{"use strict";var zse=Rr(),Ise=iS();oS.exports=function(r){var t;if(r&&r.hasOwnProperty("userAgent")?t=r.userAgent:t=Ose(),typeof t!="string")return!0;var a=Ise({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!a)for(var n=t.split(" "),i=1;i-1;l--){var s=n[l];if(s.substr(0,8)==="Version/"){var u=s.substr(8).split(".")[0];if(zse(u)&&(u=+u),u>=13)return!0}}}return a};function Ose(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var uS=N((eDe,sS)=>{"use strict";var Bse=Sr();sS.exports=function(r,t,a){var n=r.selectAll("g."+a.replace(/\s/g,".")).data(t,function(o){return o[0].trace.uid});n.exit().remove(),n.enter().append("g").attr("class",a),n.order();var i=r.classed("rangeplot")?"nodeRangePlot3":"node3";return n.each(function(o){o[0][i]=Bse.select(this)}),n}});var cS=N((rDe,fS)=>{"use strict";var Hse=br();fS.exports=function(r,t){for(var a=r._context.locale,n=0;n<2;n++){for(var i=r._context.locales,o=0;o<2;o++){var l=(i[a]||{}).dictionary;if(l){var s=l[t];if(s)return s}i=Hse.localeRegistry}var u=a.split("-")[0];if(u===a)break;a=u}return t}});var hS=N((tDe,vS)=>{"use strict";vS.exports=function(r){for(var t={},a=[],n=0,i=0;i{"use strict";dS.exports=function(r){for(var t=Vse(r)?Gse:Use,a=[],n=0;n{"use strict";yS.exports=function(r,t){if(!t)return r;var a=1/Math.abs(t),n=a>1?(a*r+a*t)/a:r+t,i=String(n).length;if(i>16){var o=String(t).length,l=String(r).length;if(i>=l+o){var s=parseFloat(n).toPrecision(12);s.indexOf("e+")===-1&&(n=+s)}}return n}});var bS=N((iDe,gS)=>{"use strict";var Yse=Rr(),jse=It().BADNUM,Wse=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;gS.exports=function(r){return typeof r=="string"&&(r=r.replace(Wse,"")),Yse(r)?Number(r):jse}});var Le=N((oDe,DS)=>{"use strict";var oh=Sr(),Zse=_f().utcFormat,Xse=tb().format,MS=Rr(),kS=It(),SS=kS.FP_SAFE,Jse=-SS,xS=kS.BADNUM,be=DS.exports={};be.adjustFormat=function(r){return!r||/^\d[.]\df/.test(r)||/[.]\d%/.test(r)?r:r==="0.f"?"~f":/^\d%/.test(r)?"~%":/^\ds/.test(r)?"~s":!/^[~,.0$]/.test(r)&&/[&fps]/.test(r)?"~"+r:r};var _S={};be.warnBadFormat=function(e){var r=String(e);_S[r]||(_S[r]=1,be.warn('encountered bad format: "'+r+'"'))};be.noFormat=function(e){return String(e)};be.numberFormat=function(e){var r;try{r=Xse(be.adjustFormat(e))}catch(t){return be.warnBadFormat(e),be.noFormat}return r};be.nestedProperty=yp();be.keyedContainer=vM();be.relativeAttr=dM();be.isPlainObject=zl();be.toLogRange=gp();be.relinkPrivateKeys=gM();var Yl=Vn();be.isArrayBuffer=Yl.isArrayBuffer;be.isTypedArray=Yl.isTypedArray;be.isArrayOrTypedArray=Yl.isArrayOrTypedArray;be.isArray1D=Yl.isArray1D;be.ensureArray=Yl.ensureArray;be.concat=Yl.concat;be.maxRowLength=Yl.maxRowLength;be.minRowLength=Yl.minRowLength;var qS=Tf();be.mod=qS.mod;be.modHalf=qS.modHalf;var jl=zM();be.valObjectMeta=jl.valObjectMeta;be.coerce=jl.coerce;be.coerce2=jl.coerce2;be.coerceFont=jl.coerceFont;be.coercePattern=jl.coercePattern;be.coerceHoverinfo=jl.coerceHoverinfo;be.coerceSelectionMarkerOpacity=jl.coerceSelectionMarkerOpacity;be.validate=jl.validate;var jn=Gk();be.dateTime2ms=jn.dateTime2ms;be.isDateTime=jn.isDateTime;be.ms2DateTime=jn.ms2DateTime;be.ms2DateTimeLocal=jn.ms2DateTimeLocal;be.cleanDate=jn.cleanDate;be.isJSDate=jn.isJSDate;be.formatDate=jn.formatDate;be.incrementMonth=jn.incrementMonth;be.dateTick0=jn.dateTick0;be.dfltRange=jn.dfltRange;be.findExactDates=jn.findExactDates;be.MIN_MS=jn.MIN_MS;be.MAX_MS=jn.MAX_MS;var Qs=kb();be.findBin=Qs.findBin;be.sorterAsc=Qs.sorterAsc;be.sorterDes=Qs.sorterDes;be.distinctVals=Qs.distinctVals;be.roundUp=Qs.roundUp;be.sort=Qs.sort;be.findIndexOfMin=Qs.findIndexOfMin;be.sortObjectKeys=Sb();var ol=jk();be.aggNums=ol.aggNums;be.len=ol.len;be.mean=ol.mean;be.geometricMean=ol.geometricMean;be.median=ol.median;be.midRange=ol.midRange;be.variance=ol.variance;be.stdev=ol.stdev;be.interp=ol.interp;var $i=kp();be.init2dArray=$i.init2dArray;be.transposeRagged=$i.transposeRagged;be.dot=$i.dot;be.translationMatrix=$i.translationMatrix;be.rotationMatrix=$i.rotationMatrix;be.rotationXYMatrix=$i.rotationXYMatrix;be.apply3DTransform=$i.apply3DTransform;be.apply2DTransform=$i.apply2DTransform;be.apply2DTransform2=$i.apply2DTransform2;be.convertCssMatrix=$i.convertCssMatrix;be.inverseTransformMatrix=$i.inverseTransformMatrix;var Ao=$k();be.deg2rad=Ao.deg2rad;be.rad2deg=Ao.rad2deg;be.angleDelta=Ao.angleDelta;be.angleDist=Ao.angleDist;be.isFullCircle=Ao.isFullCircle;be.isAngleInsideSector=Ao.isAngleInsideSector;be.isPtInsideSector=Ao.isPtInsideSector;be.pathArc=Ao.pathArc;be.pathSector=Ao.pathSector;be.pathAnnulus=Ao.pathAnnulus;var Ff=Kk();be.isLeftAnchor=Ff.isLeftAnchor;be.isCenterAnchor=Ff.isCenterAnchor;be.isRightAnchor=Ff.isRightAnchor;be.isTopAnchor=Ff.isTopAnchor;be.isMiddleAnchor=Ff.isMiddleAnchor;be.isBottomAnchor=Ff.isBottomAnchor;var Nf=rS();be.segmentsIntersect=Nf.segmentsIntersect;be.segmentDistance=Nf.segmentDistance;be.getTextLocation=Nf.getTextLocation;be.clearLocationCache=Nf.clearLocationCache;be.getVisibleSegment=Nf.getVisibleSegment;be.findPointOnPath=Nf.findPointOnPath;var Up=bt();be.extendFlat=Up.extendFlat;be.extendDeep=Up.extendDeep;be.extendDeepAll=Up.extendDeepAll;be.extendDeepNoArrays=Up.extendDeepNoArrays;var Pb=Xs();be.log=Pb.log;be.warn=Pb.warn;be.error=Pb.error;var $se=Mf();be.counterRegex=$se.counter;var Fb=Ip();be.throttle=Fb.throttle;be.throttleDone=Fb.done;be.clearThrottle=Fb.clear;var Ki=Qv();be.getGraphDiv=Ki.getGraphDiv;be.isPlotDiv=Ki.isPlotDiv;be.removeElement=Ki.removeElement;be.addStyleRule=Ki.addStyleRule;be.addRelatedStyleRule=Ki.addRelatedStyleRule;be.deleteRelatedStyleRule=Ki.deleteRelatedStyleRule;be.setStyleOnHover=Ki.setStyleOnHover;be.getFullTransformMatrix=Ki.getFullTransformMatrix;be.getElementTransformMatrix=Ki.getElementTransformMatrix;be.getElementAndAncestors=Ki.getElementAndAncestors;be.equalDomRects=Ki.equalDomRects;be.clearResponsive=nS();be.preserveDrawingBuffer=lS();be.makeTraceGroups=uS();be._=cS();be.notifier=hb();be.filterUnique=hS();be.filterVisible=pS();be.pushUnique=yb();be.increment=mS();be.cleanNumber=bS();be.ensureNumber=function(r){return MS(r)?(r=Number(r),r>SS||r=r?!1:MS(e)&&e>=0&&e%1===0};be.noop=Mp();be.identity=Ab();be.repeat=function(e,r){for(var t=new Array(r),a=0;at?Math.max(t,Math.min(r,e)):Math.max(r,Math.min(t,e))};be.bBoxIntersect=function(e,r,t){return t=t||0,e.left<=r.right+t&&r.left<=e.right+t&&e.top<=r.bottom+t&&r.top<=e.bottom+t};be.simpleMap=function(e,r,t,a,n){for(var i=e.length,o=new Array(i),l=0;l=Math.pow(2,t)?n>10?(be.warn("randstr failed uniqueness"),o):e(r,t,a,(n||0)+1):o};be.OptionControl=function(e,r){e||(e={}),r||(r="opt");var t={};return t.optionList=[],t._newoption=function(a){a[r]=e,t[a.name]=a,t.optionList.push(a)},t["_"+r]=e,t};be.smooth=function(e,r){if(r=Math.round(r)||0,r<2)return e;var t=e.length,a=2*t,n=2*r-1,i=new Array(n),o=new Array(t),l,s,u,f;for(l=0;l=a&&(u-=a*Math.floor(u/a)),u<0?u=-1-u:u>=t&&(u=a-1-u),f+=e[u]*i[s];o[l]=f}return o};be.syncOrAsync=function(e,r,t){var a,n;function i(){return be.syncOrAsync(e,r,t)}for(;e.length;)if(n=e.splice(0,1)[0],a=n(r),a&&a.then)return a.then(i);return t&&t(r)};be.stripTrailingSlash=function(e){return e.substr(-1)==="/"?e.substr(0,e.length-1):e};be.noneOrAll=function(e,r,t){if(e){var a=!1,n=!0,i,o;for(i=0;i0?n:0})};be.fillArray=function(e,r,t,a){if(a=a||be.identity,be.isArrayOrTypedArray(e))for(var n=0;neue.test(window.navigator.userAgent);var rue=/Firefox\/(\d+)\.\d+/;be.getFirefoxVersion=function(){var e=rue.exec(window.navigator.userAgent);if(e&&e.length===2){var r=parseInt(e[1]);if(!isNaN(r))return r}return null};be.isD3Selection=function(e){return e instanceof oh.selection};be.ensureSingle=function(e,r,t,a){var n=e.select(r+(t?"."+t:""));if(n.size())return n;var i=e.append(r);return t&&i.classed(t,!0),a&&i.call(a),i};be.ensureSingleById=function(e,r,t,a){var n=e.select(r+"#"+t);if(n.size())return n;var i=e.append(r).attr("id",t);return a&&i.call(a),i};be.objectFromPath=function(e,r){for(var t=e.split("."),a,n=a={},i=0;i1?n+o[1]:"";if(i&&(o.length>1||l.length>4||t))for(;a.test(l);)l=l.replace(a,"$1"+i+"$2");return l+s};be.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var ES=/^\w*$/;be.templateString=function(e,r){var t={};return e.replace(be.TEMPLATE_STRING_REGEX,function(a,n){var i;return ES.test(n)?i=r[n]:(t[n]=t[n]||be.nestedProperty(r,n).get,i=t[n](!0)),i!==void 0?i:""})};var nue={max:10,count:0,name:"hovertemplate"};be.hovertemplateString=e=>Nb(lp(Vs({},e),{opts:nue}));var iue={max:10,count:0,name:"texttemplate"};be.texttemplateString=e=>Nb(lp(Vs({},e),{opts:iue}));var oue=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function lue(e){var r=e.match(oue);return r?{key:r[1],op:r[2],number:Number(r[3])}:{key:e,op:null,number:null}}var sue={max:10,count:0,name:"texttemplate",parseMultDiv:!0};be.texttemplateStringForShapes=e=>Nb(lp(Vs({},e),{opts:sue}));var wS=/^[:|\|]/;function Nb({data:e=[],locale:r,fallback:t,labels:a={},opts:n,template:i}){return i.replace(be.TEMPLATE_STRING_REGEX,(o,l,s)=>{let u=["xother","yother"].includes(l),f=["_xother","_yother"].includes(l),c=["_xother_","_yother_"].includes(l),v=["xother_","yother_"].includes(l),d=u||f||v||c;(f||c)&&(l=l.substring(1)),(v||c)&&(l=l.substring(0,l.length-1));let p=null,y=null;if(n.parseMultDiv){var m=lue(l);l=m.key,p=m.op,y=m.number}let x;if(d){if(a[l]===void 0)return"";x=a[l]}else for(let T of e)if(T){if(T.hasOwnProperty(l)){x=T[l];break}if(ES.test(l)||(x=be.nestedProperty(T,l).get(!0)),x!==void 0)break}if(x===void 0){let{count:T,max:k,name:M}=n,q=t===!1?o:t;return T=Hp&&o<=TS,u=l>=Hp&&l<=TS;if(s&&(a=10*a+o-Hp),u&&(n=10*n+l-Hp),!s||!u){if(a!==n)return a-n;if(o!==l)return o-l}}return n-a};var Pf=2e9;be.seedPseudoRandom=function(){Pf=2e9};be.pseudoRandom=function(){var e=Pf;return Pf=(69069*Pf+1)%4294967296,Math.abs(Pf-e)<429496729?be.pseudoRandom():Pf/4294967296};be.fillText=function(e,r,t){var a=Array.isArray(t)?function(o){t.push(o)}:function(o){t.text=o},n=be.extractOption(e,r,"htx","hovertext");if(be.isValidTextValue(n))return a(n);var i=be.extractOption(e,r,"tx","text");if(be.isValidTextValue(i))return a(i)};be.isValidTextValue=function(e){return e||e===0};be.formatPercent=function(e,r){r=r||0;for(var t=(Math.round(100*e*Math.pow(10,r))*Math.pow(.1,r)).toFixed(r)+"%",a=0;a1&&(u=1):u=0,be.strTranslate(n-u*(t+o),i-u*(a+l))+be.strScale(u)+(s?"rotate("+s+(r?"":" "+t+" "+a)+")":"")};be.setTransormAndDisplay=function(e,r){e.attr("transform",be.getTextTransform(r)),e.style("display",r.scale?null:"none")};be.ensureUniformFontSize=function(e,r){var t=be.extendFlat({},r);return t.size=Math.max(r.size,e._fullLayout.uniformtext.minsize||0),t};be.join2=function(e,r,t){var a=e.length;return a>1?e.slice(0,-1).join(r)+t+e[a-1]:e.join(r)};be.bigFont=function(e){return Math.round(1.2*e)};var AS=be.getFirefoxVersion(),uue=AS!==null&&AS<86;be.getPositionFromD3Event=function(){return uue?[oh.event.layerX,oh.event.layerY]:[oh.event.offsetX,oh.event.offsetY]}});var FS=N(()=>{"use strict";var fue=Le(),RS={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(zb in RS)PS=zb.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),fue.addStyleRule(PS,RS[zb]);var PS,zb});var Ib=N((fDe,NS)=>{NS.exports=!0});var Bb=N((cDe,zS)=>{"use strict";var cue=Ib(),Ob;typeof window.matchMedia=="function"?Ob=!window.matchMedia("(hover: none)").matches:Ob=cue;zS.exports=Ob});var eu=N((vDe,Hb)=>{"use strict";var zf=typeof Reflect=="object"?Reflect:null,IS=zf&&typeof zf.apply=="function"?zf.apply:function(r,t,a){return Function.prototype.apply.call(r,t,a)},Gp;zf&&typeof zf.ownKeys=="function"?Gp=zf.ownKeys:Object.getOwnPropertySymbols?Gp=function(r){return Object.getOwnPropertyNames(r).concat(Object.getOwnPropertySymbols(r))}:Gp=function(r){return Object.getOwnPropertyNames(r)};function vue(e){console&&console.warn&&console.warn(e)}var BS=Number.isNaN||function(r){return r!==r};function Et(){Et.init.call(this)}Hb.exports=Et;Hb.exports.once=yue;Et.EventEmitter=Et;Et.prototype._events=void 0;Et.prototype._eventsCount=0;Et.prototype._maxListeners=void 0;var OS=10;function Vp(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(Et,"defaultMaxListeners",{enumerable:!0,get:function(){return OS},set:function(e){if(typeof e!="number"||e<0||BS(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");OS=e}});Et.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};Et.prototype.setMaxListeners=function(r){if(typeof r!="number"||r<0||BS(r))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+r+".");return this._maxListeners=r,this};function HS(e){return e._maxListeners===void 0?Et.defaultMaxListeners:e._maxListeners}Et.prototype.getMaxListeners=function(){return HS(this)};Et.prototype.emit=function(r){for(var t=[],a=1;a0&&(o=t[0]),o instanceof Error)throw o;var l=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw l.context=o,l}var s=i[r];if(s===void 0)return!1;if(typeof s=="function")IS(s,this,t);else for(var u=s.length,f=jS(s,u),a=0;a0&&o.length>n&&!o.warned){o.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(r)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=r,l.count=o.length,vue(l)}return e}Et.prototype.addListener=function(r,t){return US(this,r,t,!1)};Et.prototype.on=Et.prototype.addListener;Et.prototype.prependListener=function(r,t){return US(this,r,t,!0)};function hue(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function GS(e,r,t){var a={fired:!1,wrapFn:void 0,target:e,type:r,listener:t},n=hue.bind(a);return n.listener=t,a.wrapFn=n,n}Et.prototype.once=function(r,t){return Vp(t),this.on(r,GS(this,r,t)),this};Et.prototype.prependOnceListener=function(r,t){return Vp(t),this.prependListener(r,GS(this,r,t)),this};Et.prototype.removeListener=function(r,t){var a,n,i,o,l;if(Vp(t),n=this._events,n===void 0)return this;if(a=n[r],a===void 0)return this;if(a===t||a.listener===t)--this._eventsCount===0?this._events=Object.create(null):(delete n[r],n.removeListener&&this.emit("removeListener",r,a.listener||t));else if(typeof a!="function"){for(i=-1,o=a.length-1;o>=0;o--)if(a[o]===t||a[o].listener===t){l=a[o].listener,i=o;break}if(i<0)return this;i===0?a.shift():due(a,i),a.length===1&&(n[r]=a[0]),n.removeListener!==void 0&&this.emit("removeListener",r,l||t)}return this};Et.prototype.off=Et.prototype.removeListener;Et.prototype.removeAllListeners=function(r){var t,a,n;if(a=this._events,a===void 0)return this;if(a.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):a[r]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete a[r]),this;if(arguments.length===0){var i=Object.keys(a),o;for(n=0;n=0;n--)this.removeListener(r,t[n]);return this};function VS(e,r,t){var a=e._events;if(a===void 0)return[];var n=a[r];return n===void 0?[]:typeof n=="function"?t?[n.listener||n]:[n]:t?pue(n):jS(n,n.length)}Et.prototype.listeners=function(r){return VS(this,r,!0)};Et.prototype.rawListeners=function(r){return VS(this,r,!1)};Et.listenerCount=function(e,r){return typeof e.listenerCount=="function"?e.listenerCount(r):YS.call(e,r)};Et.prototype.listenerCount=YS;function YS(e){var r=this._events;if(r!==void 0){var t=r[e];if(typeof t=="function")return 1;if(t!==void 0)return t.length}return 0}Et.prototype.eventNames=function(){return this._eventsCount>0?Gp(this._events):[]};function jS(e,r){for(var t=new Array(r),a=0;a{"use strict";var Ub=eu().EventEmitter,gue={init:function(e){if(e._ev instanceof Ub)return e;var r=new Ub,t=new Ub;return e._ev=r,e._internalEv=t,e.on=r.on.bind(r),e.once=r.once.bind(r),e.removeListener=r.removeListener.bind(r),e.removeAllListeners=r.removeAllListeners.bind(r),e._internalOn=t.on.bind(t),e._internalOnce=t.once.bind(t),e._removeInternalListener=t.removeListener.bind(t),e._removeAllInternalListeners=t.removeAllListeners.bind(t),e.emit=function(a,n){r.emit(a,n),t.emit(a,n)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,r,t){var a,n=e._ev;if(!n)return;var i=n._events[r];if(!i)return;function o(s){if(s.listener){if(n.removeListener(r,s.listener),!s.fired)return s.fired=!0,s.listener.apply(n,[t])}else return s.apply(n,[t])}i=Array.isArray(i)?i:[i];var l;for(l=0;l{"use strict";var XS=Le(),bue=Zs().dfltConfig;function xue(e,r){for(var t=[],a,n=0;nbue.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};ll.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};ll.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};ll.undo=function(r){var t,a;if(!(r.undoQueue===void 0||isNaN(r.undoQueue.index)||r.undoQueue.index<=0)){for(r.undoQueue.index--,t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a=r.undoQueue.queue.length)){for(t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a{"use strict";KS.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var Bf=N(ga=>{"use strict";var ci=br(),sh=Le(),jp=gn(),Vb=Lf(),_ue=Gb(),wue=eh(),Tue=Zs().configAttributes,QS=Ji(),Qi=sh.extendDeepAll,If=sh.isPlainObject,Aue=sh.isArrayOrTypedArray,Wp=sh.nestedProperty,Mue=sh.valObjectMeta,Yb="_isSubplotObj",Zp="_isLinkedToArray",kue="_arrayAttrRegexps",rq="_deprecated",jb=[Yb,Zp,kue,rq];ga.IS_SUBPLOT_OBJ=Yb;ga.IS_LINKED_TO_ARRAY=Zp;ga.DEPRECATED=rq;ga.UNDERSCORE_ATTRS=jb;ga.get=function(){var e={};return ci.allTypes.forEach(function(r){e[r]=que(r)}),{defs:{valObjects:Mue,metaKeys:jb.concat(["description","role","editType","impliedEdits"]),editType:{traces:QS.traces,layout:QS.layout},impliedEdits:{}},traces:e,layout:Lue(),frames:Cue(),animation:Of(wue),config:Of(Tue)}};ga.crawl=function(e,r,t,a){var n=t||0;a=a||"",Object.keys(e).forEach(function(i){var o=e[i];if(jb.indexOf(i)===-1){var l=(a?a+".":"")+i;r(o,i,e,n,l),!ga.isValObject(o)&&If(o)&&i!=="impliedEdits"&&ga.crawl(o,r,n+1,l)}})};ga.isValObject=function(e){return e&&e.valType!==void 0};ga.findArrayAttributes=function(e){var r=[],t=[],a=[],n,i;function o(s,u,f,c){t=t.slice(0,c).concat([u]),a=a.slice(0,c).concat([s&&s._isLinkedToArray]);var v=s&&(s.valType==="data_array"||s.arrayOk===!0)&&!(t[c-1]==="colorbar"&&(u==="ticktext"||u==="tickvals"));v&&l(n,0,"")}function l(s,u,f){var c=s[t[u]],v=f+t[u];if(u===t.length-1)Aue(c)&&r.push(i+v);else if(a[u]){if(Array.isArray(c))for(var d=0;d=i.length)return!1;if(e.dimensions===2){if(t++,r.length===t)return e;var o=r[t];if(!Yp(o))return!1;e=i[n][o]}else e=i[n]}else e=i}}return e}function Yp(e){return e===Math.round(e)&&e>=0}function que(e){var r,t;r=ci.modules[e]._module,t=r.basePlotModule;var a={};a.type=null;var n=Qi({},jp),i=Qi({},r.attributes);ga.crawl(i,function(s,u,f,c,v){Wp(n,v).set(void 0),s===void 0&&Wp(i,v).set(void 0)}),Qi(a,n),ci.traceIs(e,"noOpacity")&&delete a.opacity,ci.traceIs(e,"showLegend")||(delete a.showlegend,delete a.legendgroup),ci.traceIs(e,"noHover")&&(delete a.hoverinfo,delete a.hoverlabel),r.selectPoints||delete a.selectedpoints,Qi(a,i),t.attributes&&Qi(a,t.attributes),a.type=e;var o={meta:r.meta||{},categories:r.categories||{},animatable:!!r.animatable,type:e,attributes:Of(a)};if(r.layoutAttributes){var l={};Qi(l,r.layoutAttributes),o.layoutAttributes=Of(l)}return r.animatable||ga.crawl(o,function(s){ga.isValObject(s)&&"anim"in s&&delete s.anim}),o}function Lue(){var e={},r,t;Qi(e,Vb);for(r in ci.subplotsRegistry)if(t=ci.subplotsRegistry[r],!!t.layoutAttributes)if(Array.isArray(t.attr))for(var a=0;a{"use strict";var Hf=Le(),Fue=gn(),Wl="templateitemname",Wb={name:{valType:"string",editType:"none"}};Wb[Wl]={valType:"string",editType:"calc"};ru.templatedArray=function(e,r){return r._isLinkedToArray=e,r.name=Wb.name,r[Wl]=Wb[Wl],r};ru.traceTemplater=function(e){var r={},t,a;for(t in e)a=e[t],Array.isArray(a)&&a.length&&(r[t]=0);function n(i){t=Hf.coerce(i,{},Fue,"type");var o={type:t,_template:null};if(t in r){a=e[t];var l=r[t]%a.length;r[t]++,o._template=a[l]}return o}return{newTrace:n}};ru.newContainer=function(e,r,t){var a=e._template,n=a&&(a[r]||t&&a[t]);Hf.isPlainObject(n)||(n=null);var i=e[r]={_template:n};return i};ru.arrayTemplater=function(e,r,t){var a=e._template,n=a&&a[nq(r)],i=a&&a[r];(!Array.isArray(i)||!i.length)&&(i=[]);var o={};function l(u){var f={name:u.name,_input:u},c=f[Wl]=u[Wl];if(!aq(c))return f._template=n,f;for(var v=0;v=a&&(t._input||{})._templateitemname;i&&(n=a);var o=r+"["+n+"]",l;function s(){l={},i&&(l[o]={},l[o][Wl]=i)}s();function u(d,p){l[d]=p}function f(d,p){i?Hf.nestedProperty(l[o],d).set(p):l[o+"."+d]=p}function c(){var d=l;return s(),d}function v(d,p){d&&f(d,p);var y=c();for(var m in y)Hf.nestedProperty(e,m).set(y[m])}return{modifyBase:u,modifyItem:f,getUpdateObj:c,applyUpdate:v}}});var Ca=N((gDe,iq)=>{"use strict";var uh=Mf().counter;iq.exports={idRegex:{x:uh("x","( domain)?"),y:uh("y","( domain)?")},attrRegex:uh("[xy]axis"),xAxisMatch:uh("xaxis"),yAxisMatch:uh("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var la=N(Cn=>{"use strict";var Nue=br(),Zb=Ca();Cn.id2name=function(r){if(!(typeof r!="string"||!r.match(Zb.AX_ID_PATTERN))){var t=r.split(" ")[0].substr(1);return t==="1"&&(t=""),r.charAt(0)+"axis"+t}};Cn.name2id=function(r){if(r.match(Zb.AX_NAME_PATTERN)){var t=r.substr(5);return t==="1"&&(t=""),r.charAt(0)+t}};Cn.cleanId=function(r,t,a){var n=/( domain)$/.test(r);if(!(typeof r!="string"||!r.match(Zb.AX_ID_PATTERN))&&!(t&&r.charAt(0)!==t)&&!(n&&!a)){var i=r.split(" ")[0].substr(1).replace(/^0+/,"");return i==="1"&&(i=""),r.charAt(0)+i+(n&&a?" domain":"")}};Cn.list=function(e,r,t){var a=e._fullLayout;if(!a)return[];var n=Cn.listIds(e,r),i=new Array(n.length),o;for(o=0;oa?1:-1:+(e.substr(1)||1)-+(r.substr(1)||1)};Cn.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function oq(e,r){if(r&&r.length){for(var t=0;t{"use strict";function zue(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".outline-controllers").remove()}function Iue(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}lq.exports={clearOutlineControllers:zue,clearOutline:Iue}});var Xp=N((_De,sq)=>{"use strict";sq.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var Kp=N($p=>{"use strict";var Jp=br(),wDe=Ca().SUBPLOT_PATTERN;$p.getSubplotCalcData=function(e,r,t){var a=Jp.subplotsRegistry[r];if(!a)return[];for(var n=a.attr,i=[],o=0;o{"use strict";var Oue=br(),Uf=Le();tu.manageCommandObserver=function(e,r,t,a){var n={},i=!0;r&&r._commandObserver&&(n=r._commandObserver),n.cache||(n.cache={}),n.lookupTable={};var o=tu.hasSimpleAPICommandBindings(e,t,n.lookupTable);if(r&&r._commandObserver){if(o)return n;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,n}if(o){uq(e,o,n.cache),n.check=function(){if(i){var f=uq(e,o,n.cache);return f.changed&&a&&n.lookupTable[f.value]!==void 0&&(n.disable(),Promise.resolve(a({value:f.value,type:o.type,prop:o.prop,traces:o.traces,index:n.lookupTable[f.value]})).then(n.enable,n.enable)),f.changed}};for(var l=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],s=0;s0?".":"")+n;Uf.isPlainObject(i)?Xb(i,r,o,a+1):r(o,n,i)}})}});var ta=N((MDe,kq)=>{"use strict";var bq=Sr(),Hue=_f().timeFormatLocale,Uue=tb().formatLocale,fh=Rr(),Gue=ab(),Qr=br(),xq=Bf(),Vue=_t(),hr=Le(),_q=Tr(),hq=It().BADNUM,En=la(),Yue=Zl().clearOutline,jue=Xp(),Jb=eh(),Wue=Gb(),Zue=Kp().getModuleCalcData,dq=hr.relinkPrivateKeys,au=hr._,er=kq.exports={};hr.extendFlat(er,Qr);er.attributes=gn();er.attributes.type.values=er.allTypes;er.fontAttrs=ma();er.layoutAttributes=Lf();var e1=vq();er.executeAPICommand=e1.executeAPICommand;er.computeAPICommandBindings=e1.computeAPICommandBindings;er.manageCommandObserver=e1.manageCommandObserver;er.hasSimpleAPICommandBindings=e1.hasSimpleAPICommandBindings;er.redrawText=function(e){return e=hr.getGraphDiv(e),new Promise(function(r){setTimeout(function(){e._fullLayout&&(Qr.getComponentMethod("annotations","draw")(e),Qr.getComponentMethod("legend","draw")(e),Qr.getComponentMethod("colorbar","draw")(e),r(er.previousPromises(e)))},300)})};er.resize=function(e){e=hr.getGraphDiv(e);var r,t=new Promise(function(a,n){(!e||hr.isHidden(e))&&n(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(r=e._resolveResize),e._resolveResize=a,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||hr.isHidden(e)){a(e);return}delete e.layout.width,delete e.layout.height;var i=e.changed;e.autoplay=!0,Qr.call("relayout",e,{autosize:!0}).then(function(){e.changed=i,e._resolveResize===a&&(delete e._resolveResize,a(e))})},100)});return r&&r(t),t};er.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};er.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var r=e._fullLayout,t=hr.ensureSingle(r._paper,"text","js-plot-link-container",function(s){s.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:_q.defaultLine,"pointer-events":"all"}).each(function(){var u=bq.select(this);u.append("tspan").classed("js-link-to-tool",!0),u.append("tspan").classed("js-link-spacer",!0),u.append("tspan").classed("js-sourcelinks",!0)})}),a=t.node(),n={y:r._paper.attr("height")-9};document.body.contains(a)&&a.getComputedTextLength()>=r.width-20?(n["text-anchor"]="start",n.x=5):(n["text-anchor"]="end",n.x=r._paper.attr("width")-7),t.attr(n);var i=t.select(".js-link-to-tool"),o=t.select(".js-link-spacer"),l=t.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&Xue(e,i),o.text(i.text()&&l.text()?" - ":"")}};function Xue(e,r){r.text("");var t=r.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)t.on("click",function(){er.sendDataToCloud(e)});else{var a=window.location.pathname.split("/"),n=window.location.search;t.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+a[2].split(".")[0]+"/"+a[1]+n})}}er.sendDataToCloud=function(e){var r=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(r){e.emit("plotly_beforeexport");var t=bq.select(e).append("div").attr("id","hiddenform").style("display","none"),a=t.append("form").attr({action:r+"/external",method:"post",target:"_blank"}),n=a.append("input").attr({type:"text",name:"data"});return n.node().value=er.graphJson(e,!1,"keepdata"),a.node().submit(),t.remove(),e.emit("plotly_afterexport"),!1}};var Jue=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],$ue=["year","month","dayMonth","dayMonthYear"];er.supplyDefaults=function(e,r){var t=r&&r.skipUpdateCalc,a=e._fullLayout||{};if(a._skipDefaults){delete a._skipDefaults;return}var n=e._fullLayout={},i=e.layout||{},o=e._fullData||[],l=e._fullData=[],s=e.data||[],u=e.calcdata||[],f=e._context||{},c;e._transitionData||er.createTransitionData(e),n._dfltTitle={plot:au(e,"Click to enter Plot title"),subtitle:au(e,"Click to enter Plot subtitle"),x:au(e,"Click to enter X axis title"),y:au(e,"Click to enter Y axis title"),colorbar:au(e,"Click to enter Colorscale title"),annotation:au(e,"new text")},n._traceWord=au(e,"trace");var v=pq(e,Jue);if(n._mapboxAccessToken=f.mapboxAccessToken,a._initialAutoSizeIsDone){var d=a.width,p=a.height;er.supplyLayoutGlobalDefaults(i,n,v),i.width||(n.width=d),i.height||(n.height=p),er.sanitizeMargins(n)}else{er.supplyLayoutGlobalDefaults(i,n,v);var y=!i.width||!i.height,m=n.autosize,x=f.autosizable,w=y&&(m||x);w?er.plotAutoSize(e,i,n):y&&er.sanitizeMargins(n),!m&&y&&(i.width=n.width,i.height=n.height)}n._d3locale=efe(v,n.separators),n._extraFormat=pq(e,$ue),n._initialAutoSizeIsDone=!0,n._dataLength=s.length,n._modules=[],n._visibleModules=[],n._basePlotModules=[];var _=n._subplots=Que(),b=n._splomAxes={x:{},y:{}},T=n._splomSubplots={};n._splomGridDflt={},n._scatterStackOpts={},n._firstScatter={},n._alignmentOpts={},n._colorAxes={},n._requestRangeslider={},n._traceUids=Kue(o,s),er.supplyDataDefaults(s,l,i,n);var k=Object.keys(b.x),M=Object.keys(b.y);if(k.length>1&&M.length>1){for(Qr.getComponentMethod("grid","sizeDefaults")(i,n),c=0;c15&&M.length>15&&n.shapes.length===0&&n.images.length===0,er.linkSubplots(l,n,o,a),er.cleanPlot(l,n,o,a);var R=!!(a._has&&a._has("cartesian")),z=!!(n._has&&n._has("cartesian")),O=R,B=z;O&&!B?a._bgLayer.remove():B&&!O&&(n._shouldCreateBgLayer=!0),a._zoomlayer&&!e._dragging&&Yue({_fullLayout:a}),rfe(l,n),dq(n,a),Qr.getComponentMethod("colorscale","crossTraceDefaults")(l,n),n._preGUI||(n._preGUI={}),n._tracePreGUI||(n._tracePreGUI={});var Y=n._tracePreGUI,G={},U;for(U in Y)G[U]="old";for(c=0;c0){var f=1-2*i;o=Math.round(f*o),l=Math.round(f*l)}}var c=er.layoutAttributes.width.min,v=er.layoutAttributes.height.min;o1,p=!t.height&&Math.abs(a.height-l)>1;(p||d)&&(d&&(a.width=o),p&&(a.height=l)),r._initialAutoSize||(r._initialAutoSize={width:o,height:l}),er.sanitizeMargins(a)};er.supplyLayoutModuleDefaults=function(e,r,t,a){var n=Qr.componentsRegistry,i=r._basePlotModules,o,l,s,u=Qr.subplotsRegistry.cartesian;for(o in n)s=n[o],s.includeBasePlot&&s.includeBasePlot(e,r);i.length||i.push(u),r._has("cartesian")&&(Qr.getComponentMethod("grid","contentDefaults")(e,r),u.finalizeSubplots(e,r));for(var f in r._subplots)r._subplots[f].sort(hr.subplotSort);for(l=0;l1&&(t.l/=m,t.r/=m)}if(v){var x=(t.t+t.b)/v;x>1&&(t.t/=x,t.b/=x)}var w=t.xl!==void 0?t.xl:t.x,_=t.xr!==void 0?t.xr:t.x,b=t.yt!==void 0?t.yt:t.y,T=t.yb!==void 0?t.yb:t.y;d[r]={l:{val:w,size:t.l+y},r:{val:_,size:t.r+y},b:{val:T,size:t.b+y},t:{val:b,size:t.t+y}},p[r]=1}if(!a._replotting)return er.doAutoMargin(e)}};function afe(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var r=En.list(e,"",!0);for(var t in r)if(r[t].autoshift||r[t].shift)return!0;return!1}er.doAutoMargin=function(e){var r=e._fullLayout,t=r.width,a=r.height;r._size||(r._size={}),wq(r);var n=r._size,i=r.margin,o={t:0,b:0,l:0,r:0},l=hr.extendFlat({},n),s=i.l,u=i.r,f=i.t,c=i.b,v=r._pushmargin,d=r._pushmarginIds,p=r.minreducedwidth,y=r.minreducedheight;if(i.autoexpand!==!1){for(var m in v)d[m]||delete v[m];var x=e._fullLayout._reservedMargin;for(var w in x)for(var _ in x[w]){var b=x[w][_];o[_]=Math.max(o[_],b)}v.base={l:{val:0,size:s},r:{val:1,size:u},t:{val:1,size:f},b:{val:0,size:c}};for(var T in o){var k=0;for(var M in v)M!=="base"&&fh(v[M][T].size)&&(k=v[M][T].size>k?v[M][T].size:k);var q=Math.max(0,i[T]-k);o[T]=Math.max(0,o[T]-q)}for(var E in v){var D=v[E].l||{},P=v[E].b||{},R=D.val,z=D.size,O=P.val,B=P.size,Y=t-o.r-o.l,G=a-o.t-o.b;for(var U in v){if(fh(z)&&v[U].r){var V=v[U].r.val,J=v[U].r.size;if(V>R){var Z=(z*V+(J-Y)*R)/(V-R),ee=(J*(1-R)+(z-Y)*(1-V))/(V-R);Z+ee>s+u&&(s=Z,u=ee)}}if(fh(B)&&v[U].t){var fe=v[U].t.val,ie=v[U].t.size;if(fe>O){var ue=(B*fe+(ie-G)*O)/(fe-O),K=(ie*(1-O)+(B-G)*(1-fe))/(fe-O);ue+K>c+f&&(c=ue,f=K)}}}}}var _e=hr.constrain(t-i.l-i.r,Tq,p),le=hr.constrain(a-i.t-i.b,Aq,y),he=Math.max(0,t-_e),oe=Math.max(0,a-le);if(he){var ce=(s+u)/he;ce>1&&(s/=ce,u/=ce)}if(oe){var j=(c+f)/oe;j>1&&(c/=j,f/=j)}if(n.l=Math.round(s)+o.l,n.r=Math.round(u)+o.r,n.t=Math.round(f)+o.t,n.b=Math.round(c)+o.b,n.p=Math.round(i.pad),n.w=Math.round(t)-n.l-n.r,n.h=Math.round(a)-n.t-n.b,!r._replotting&&(er.didMarginChange(l,n)||afe(e))){"_redrawFromAutoMarginCount"in r?r._redrawFromAutoMarginCount++:r._redrawFromAutoMarginCount=1;var Q=3*(1+Object.keys(d).length);if(r._redrawFromAutoMarginCount1)return!0}return!1};er.graphJson=function(e,r,t,a,n,i){(n&&r&&!e._fullData||n&&!r&&!e._fullLayout)&&er.supplyDefaults(e);var o=n?e._fullData:e.data,l=n?e._fullLayout:e.layout,s=(e._transitionData||{})._frames;function u(v,d){if(typeof v=="function")return d?"_function_":null;if(hr.isPlainObject(v)){var p={},y;return Object.keys(v).sort().forEach(function(_){if(["_","["].indexOf(_.charAt(0))===-1){if(typeof v[_]=="function"){d&&(p[_]="_function");return}if(t==="keepdata"){if(_.substr(_.length-3)==="src")return}else if(t==="keepstream"){if(y=v[_+"src"],typeof y=="string"&&y.indexOf(":")>0&&!hr.isPlainObject(v.stream))return}else if(t!=="keepall"&&(y=v[_+"src"],typeof y=="string"&&y.indexOf(":")>0))return;p[_]=u(v[_],d)}}),p}var m=Array.isArray(v),x=hr.isTypedArray(v);if((m||x)&&v.dtype&&v.shape){var w=v.bdata;return u({dtype:v.dtype,shape:v.shape,bdata:hr.isArrayBuffer(w)?Gue.encode(w):w},d)}return m?v.map(function(_){return u(_,d)}):x?hr.simpleMap(v,hr.identity):hr.isJSDate(v)?hr.ms2DateTimeLocal(+v):v}var f={data:(o||[]).map(function(v){var d=u(v);return r&&delete d.fit,d})};if(!r&&(f.layout=u(l),n)){var c=l._size;f.layout.computed={margin:{b:c.b,l:c.l,r:c.r,t:c.t}}}return s&&(f.frames=u(s)),i&&(f.config=u(e._context,!0)),a==="object"?f:JSON.stringify(f)};er.modifyFrames=function(e,r){var t,a,n,i=e._transitionData._frames,o=e._transitionData._frameHash;for(t=0;t0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){a=!0}),t.redraw&&e._transitionData._interruptCallbacks.push(function(){return Qr.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var v=0,d=0;function p(){return v++,function(){d++,!a&&d===v&&l(c)}}t.runFn(p),setTimeout(p())})}function l(c){if(e._transitionData)return i(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(t.redraw)return Qr.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(c)}function s(){if(e._transitionData)return e._transitioning=!1,n(e._transitionData._interruptCallbacks)}var u=[er.previousPromises,s,t.prepareFn,er.rehover,er.reselect,o],f=hr.syncOrAsync(u,e);return(!f||!f.then)&&(f=Promise.resolve()),f.then(function(){return e})}er.doCalcdata=function(e,r){var t=En.list(e),a=e._fullData,n=e._fullLayout,i,o,l,s,u=new Array(a.length),f=(e.calcdata||[]).slice();for(e.calcdata=u,n._numBoxes=0,n._numViolins=0,n._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,n._piecolormap={},n._sunburstcolormap={},n._treemapcolormap={},n._iciclecolormap={},n._funnelareacolormap={},l=0;l=0;s--)if(T[s].enabled){i._indexToPoints=T[s]._indexToPoints;break}o&&o.calc&&(b=o.calc(e,i))}(!Array.isArray(b)||!b[0])&&(b=[{x:hq,y:hq}]),b[0].t||(b[0].t={}),b[0].trace=i,u[w]=b}}for(mq(t,a,n),l=0;l{"use strict";nu.xmlns="http://www.w3.org/2000/xmlns/";nu.svg="http://www.w3.org/2000/svg";nu.xlink="http://www.w3.org/1999/xlink";nu.svgAttrs={xmlns:nu.svg,"xmlns:xlink":nu.xlink}});var Wa=N((SDe,Sq)=>{"use strict";Sq.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var Ea=N(vi=>{"use strict";var sa=Sr(),ul=Le(),lfe=ul.strTranslate,$b=sl(),sfe=Wa().LINE_SPACING,ufe=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;vi.convertToTspans=function(e,r,t){var a=e.text(),n=!e.attr("data-notex")&&r&&r._context.typesetMath&&typeof MathJax!="undefined"&&a.match(ufe),i=sa.select(e.node().parentNode);if(i.empty())return;var o=e.attr("class")?e.attr("class").split(" ")[0]:"text";o+="-math",i.selectAll("svg."+o).remove(),i.selectAll("g."+o+"-group").remove(),e.style("display",null).attr({"data-unformatted":a,"data-math":"N"});function l(){i.empty()||(o=e.attr("class")+"-math",i.select("svg."+o).remove()),e.text("").style("white-space","pre");var s=wfe(e.node(),a);s&&e.style("pointer-events","all"),vi.positionText(e),t&&t.call(e)}return n?(r&&r._promises||[]).push(new Promise(function(s){e.style("display","none");var u=parseInt(e.node().style.fontSize,10),f={fontSize:u};hfe(n[2],f,function(c,v,d){i.selectAll("svg."+o).remove(),i.selectAll("g."+o+"-group").remove();var p=c&&c.select("svg");if(!p||!p.node()){l(),s();return}var y=i.append("g").classed(o+"-group",!0).attr({"pointer-events":"none","data-unformatted":a,"data-math":"Y"});y.node().appendChild(p.node()),v&&v.node()&&p.node().insertBefore(v.node().cloneNode(!0),p.node().firstChild);var m=d.width,x=d.height;p.attr({class:o,height:x,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var w=e.node().style.fill||"black",_=p.select("g");_.attr({fill:w,stroke:w});var b=_.node().getBoundingClientRect(),T=b.width,k=b.height;(T>m||k>x)&&(p.style("overflow","hidden"),b=p.node().getBoundingClientRect(),T=b.width,k=b.height);var M=+e.attr("x"),q=+e.attr("y"),E=u||e.node().getBoundingClientRect().height,D=-E/4;if(o[0]==="y")y.attr({transform:"rotate("+[-90,M,q]+")"+lfe(-T/2,D-k/2)});else if(o[0]==="l")q=D-k/2;else if(o[0]==="a"&&o.indexOf("atitle")!==0)M=0,q=D;else{var P=e.attr("text-anchor");M=M-T*(P==="middle"?.5:P==="end"?1:0),q=q+D-k/2}p.attr({x:M,y:q}),t&&t.call(e,y),s(y)})})):l(),e};var ffe=/(<|<|<)/g,cfe=/(>|>|>)/g;function vfe(e){return e.replace(ffe,"\\lt ").replace(cfe,"\\gt ")}var qq=[["$","$"],["\\(","\\)"]];function hfe(e,r,t){var a=parseInt((MathJax.version||"").split(".")[0]);if(a!==2&&a!==3){ul.warn("No MathJax version:",MathJax.version);return}var n,i,o,l,s=function(){return i=ul.extendDeepAll({},MathJax.Hub.config),o=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:qq},displayAlign:"left"})},u=function(){i=ul.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=qq},f=function(){if(n=MathJax.Hub.config.menuSettings.renderer,n!=="SVG")return MathJax.Hub.setRenderer("SVG")},c=function(){n=MathJax.config.startup.output,n!=="svg"&&(MathJax.config.startup.output="svg")},v=function(){var w="math-output-"+ul.randstr({},64);l=sa.select("body").append("div").attr({id:w}).style({visibility:"hidden",position:"absolute","font-size":r.fontSize+"px"}).text(vfe(e));var _=l.node();return a===2?MathJax.Hub.Typeset(_):MathJax.typeset([_])},d=function(){var w=l.select(a===2?".MathJax_SVG":".MathJax"),_=!w.empty()&&l.select("svg").node();if(!_)ul.log("There was an error in the tex syntax.",e),t();else{var b=_.getBoundingClientRect(),T;a===2?T=sa.select("body").select("#MathJax_SVG_glyphs"):T=w.select("defs"),t(w,T,b)}l.remove()},p=function(){if(n!=="SVG")return MathJax.Hub.setRenderer(n)},y=function(){n!=="svg"&&(MathJax.config.startup.output=n)},m=function(){return o!==void 0&&(MathJax.Hub.processSectionDelay=o),MathJax.Hub.Config(i)},x=function(){MathJax.config=i};a===2?MathJax.Hub.Queue(s,f,v,d,p,m):a===3&&(u(),c(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){v(),d(),y(),x()}))}var Dq={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},dfe={sub:"0.3em",sup:"-0.6em"},pfe={sub:"-0.21em",sup:"0.42em"},Lq="\u200B",Cq=["http:","https:","mailto:","",void 0,":"],Rq=vi.NEWLINES=/(\r\n?|\n)/g,Qb=/(<[^<>]*>)/,ex=/<(\/?)([^ >]*)(\s+(.*))?>/i,yfe=//i;vi.BR_TAG_ALL=//gi;var Pq=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,Fq=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,Nq=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,mfe=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function iu(e,r){if(!e)return null;var t=e.match(r),a=t&&(t[3]||t[4]);return a&&r1(a)}var gfe=/(^|;)\s*color:/;vi.plainText=function(e,r){r=r||{};for(var t=r.len!==void 0&&r.len!==-1?r.len:1/0,a=r.allowedTags!==void 0?r.allowedTags:["br"],n="...",i=n.length,o=e.split(Qb),l=[],s="",u=0,f=0;fi?l.push(c.substr(0,y-i)+n):l.push(c.substr(0,y));break}s=""}}return l.join("")};var bfe={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},xfe=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function r1(e){return e.replace(xfe,function(r,t){var a;return t.charAt(0)==="#"?a=_fe(t.charAt(1)==="x"?parseInt(t.substr(2),16):parseInt(t.substr(1),10)):a=bfe[t],a||r})}vi.convertEntities=r1;function _fe(e){if(!(e>1114111)){var r=String.fromCodePoint;if(r)return r(e);var t=String.fromCharCode;return e<=65535?t(e):t((e>>10)+55232,e%1024+56320)}}function wfe(e,r){r=r.replace(Rq," ");var t=!1,a=[],n,i=-1;function o(){i++;var k=document.createElementNS($b.svg,"tspan");sa.select(k).attr({class:"line",dy:i*sfe+"em"}),e.appendChild(k),n=k;var M=a;if(a=[{node:k}],M.length>1)for(var q=1;q.",r);return}var M=a.pop();k!==M.type&&ul.log("Start tag <"+M.type+"> doesnt match end tag <"+k+">. Pretending it did match.",r),n=a[a.length-1].node}var f=yfe.test(r);f?o():(n=e,a=[{node:e}]);for(var c=r.split(Qb),v=0;v{"use strict";var Tfe=Sr(),a1=kn(),vh=Rr(),t1=Le(),Iq=Tr(),Afe=js().isValid;function Mfe(e,r,t){var a=r?t1.nestedProperty(e,r).get()||{}:e,n=a[t||"color"];n&&n._inputArray&&(n=n._inputArray);var i=!1;if(t1.isArrayOrTypedArray(n)){for(var o=0;o=0;a--,n++){var i=e[a];t[n]=[1-i[0],i[1]]}return t}function Vq(e,r){r=r||{};for(var t=e.domain,a=e.range,n=a.length,i=new Array(n),o=0;o{"use strict";var jq=xb(),Sfe=jq.FORMAT_LINK,qfe=jq.DATE_FORMAT_LINK;function Lfe(e,r){return{valType:"string",dflt:"",editType:"none",description:(r?rx:Wq)("hover text",e)+["By default the values are formatted using "+(r?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function rx(e,r){return["Sets the "+e+" formatting rule"+(r?"for `"+r+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+Sfe+"."].join(" ")}function Wq(e,r){return rx(e,r)+[" And for dates see: "+qfe+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}Zq.exports={axisHoverFormat:Lfe,descriptionOnlyNumbers:rx,descriptionWithDates:Wq}});var hi=N((DDe,cL)=>{"use strict";var Xq=ma(),Gf=si(),fL=ui().dash,ax=bt().extendFlat,Jq=_t().templatedArray,EDe=Yn().templateFormatStringDescription,$q=eo().descriptionWithDates,Cfe=It().ONEDAY,Mo=Ca(),Efe=Mo.HOUR_PATTERN,Dfe=Mo.WEEKDAY_PATTERN,tx={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},Rfe=ax({},tx,{values:tx.values.slice().concat(["sync"])});function Kq(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var Qq={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},eL={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},rL={valType:"data_array",editType:"ticks"},tL={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function aL(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=5),r}function nL(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var iL={valType:"color",dflt:Gf.defaultLine,editType:"ticks"},oL={valType:"color",dflt:Gf.lightLine,editType:"ticks"};function lL(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var sL=ax({},fL,{editType:"ticks"}),uL={valType:"boolean",editType:"ticks"};cL.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:Gf.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:Xq({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[Mo.idRegex.x.toString(),Mo.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[Mo.idRegex.x.toString(),Mo.idRegex.y.toString()],editType:"calc"},rangebreaks:Jq("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[Dfe,Efe,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:Cfe},editType:"calc"}),tickmode:Rfe,nticks:Kq(),tick0:Qq,dtick:eL,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:rL,ticktext:{valType:"data_array",editType:"ticks"},ticks:tL,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:aL(),tickwidth:nL(),tickcolor:iL,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:ax({},fL,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:Xq({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:$q("tick label")},tickformatstops:Jq("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:$q("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:Gf.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:uL,gridcolor:oL,gridwidth:lL(),griddash:sL,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:Gf.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:Gf.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",Mo.idRegex.x.toString(),Mo.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",Mo.idRegex.x.toString(),Mo.idRegex.y.toString()],editType:"plot"},minor:{tickmode:tx,nticks:Kq("minor"),tick0:Qq,dtick:eL,tickvals:rL,ticks:tL,ticklen:aL("minor"),tickwidth:nL("minor"),tickcolor:iL,gridcolor:oL,gridwidth:lL("minor"),griddash:sL,showgrid:uL,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var n1=N((RDe,dL)=>{"use strict";var Dt=hi(),vL=ma(),hL=bt().extendFlat,Pfe=Ji().overrideAll;dL.exports=Pfe({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:Dt.linecolor,outlinewidth:Dt.linewidth,bordercolor:Dt.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:Dt.minor.tickmode,nticks:Dt.nticks,tick0:Dt.tick0,dtick:Dt.dtick,tickvals:Dt.tickvals,ticktext:Dt.ticktext,ticks:hL({},Dt.ticks,{dflt:""}),ticklabeloverflow:hL({},Dt.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:Dt.ticklen,tickwidth:Dt.tickwidth,tickcolor:Dt.tickcolor,ticklabelstep:Dt.ticklabelstep,showticklabels:Dt.showticklabels,labelalias:Dt.labelalias,tickfont:vL({}),tickangle:Dt.tickangle,tickformat:Dt.tickformat,tickformatstops:Dt.tickformatstops,tickprefix:Dt.tickprefix,showtickprefix:Dt.showtickprefix,ticksuffix:Dt.ticksuffix,showticksuffix:Dt.showticksuffix,separatethousands:Dt.separatethousands,exponentformat:Dt.exponentformat,minexponent:Dt.minexponent,showexponent:Dt.showexponent,title:{text:{valType:"string"},font:vL({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var ko=N((FDe,yL)=>{"use strict";var Ffe=n1(),Nfe=Mf().counter,zfe=Sb(),pL=js().scales,PDe=zfe(pL);function i1(e){return"`"+e+"`"}yL.exports=function(r,t){r=r||"",t=t||{};var a=t.cLetter||"c",n="onlyIfNumerical"in t?t.onlyIfNumerical:!!r,i="noScale"in t?t.noScale:r==="marker.line",o="showScaleDflt"in t?t.showScaleDflt:a==="z",l=typeof t.colorscaleDflt=="string"?pL[t.colorscaleDflt]:null,s=t.editTypeOverride||"",u=r?r+".":"",f,c;"colorAttr"in t?(f=t.colorAttr,c=t.colorAttr):(f={z:"z",c:"color"}[a],c="in "+i1(u+f));var v=n?" Has an effect only if "+c+" is set to a numerical array.":"",d=a+"auto",p=a+"min",y=a+"max",m=a+"mid",x=i1(u+d),w=i1(u+p),_=i1(u+y),b=w+" and "+_,T={};T[p]=T[y]=void 0;var k={};k[d]=!1;var M={};return f==="color"&&(M.color={valType:"color",arrayOk:!0,editType:s||"style"},t.anim&&(M.color.anim=!0)),M[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:T},M[p]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:k},M[y]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:k},M[m]={valType:"number",dflt:null,editType:"calc",impliedEdits:T},M.colorscale={valType:"colorscale",editType:"calc",dflt:l,impliedEdits:{autocolorscale:!1}},M.autocolorscale={valType:"boolean",dflt:t.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},M.reversescale={valType:"boolean",dflt:!1,editType:"plot"},i||(M.showscale={valType:"boolean",dflt:o,editType:"calc"},M.colorbar=Ffe),t.noColorAxis||(M.coloraxis={valType:"subplotid",regex:Nfe("coloraxis"),dflt:null,editType:"calc"}),M}});var ix=N((NDe,mL)=>{"use strict";var Ife=bt().extendFlat,Ofe=ko(),nx=js().scales;mL.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:nx.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:nx.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:nx.RdBu,editType:"calc"}},coloraxis:Ife({_isSubplotObj:!0,editType:"calc"},Ofe("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var ox=N((zDe,gL)=>{"use strict";var Bfe=Le();gL.exports=function(r){return Bfe.isPlainObject(r.colorbar)}});var ux=N(sx=>{"use strict";var lx=Rr(),bL=Le(),xL=It(),Hfe=xL.ONEDAY,Ufe=xL.ONEWEEK;sx.dtick=function(e,r){var t=r==="log",a=r==="date",n=r==="category",i=a?Hfe:1;if(!e)return i;if(lx(e))return e=Number(e),e<=0?i:n?Math.max(1,Math.round(e)):a?Math.max(.1,e):e;if(typeof e!="string"||!(a||t))return i;var o=e.charAt(0),l=e.substr(1);return l=lx(l)?Number(l):0,l<=0||!(a&&o==="M"&&l===Math.round(l)||t&&o==="L"||t&&o==="D"&&(l===1||l===2))?i:e};sx.tick0=function(e,r,t,a){if(r==="date")return bL.cleanDate(e,bL.dateTick0(t,a%Ufe===0?1:0));if(!(a==="D1"||a==="D2"))return lx(e)?Number(e):0}});var o1=N((ODe,wL)=>{"use strict";var _L=ux(),Gfe=Le().isArrayOrTypedArray,Vfe=Vn().isTypedArraySpec,Yfe=Vn().decodeTypedArraySpec;wL.exports=function(r,t,a,n,i){i||(i={});var o=i.isMinor,l=o?r.minor||{}:r,s=o?t.minor:t,u=o?"minor.":"";function f(w){var _=l[w];return Vfe(_)&&(_=Yfe(_)),_!==void 0?_:(s._template||{})[w]}var c=f("tick0"),v=f("dtick"),d=f("tickvals"),p=Gfe(d)?"array":v?"linear":"auto",y=a(u+"tickmode",p);if(y==="auto"||y==="sync")a(u+"nticks");else if(y==="linear"){var m=s.dtick=_L.dtick(v,n);s.tick0=_L.tick0(c,n,t.calendar,m)}else if(n!=="multicategory"){var x=a(u+"tickvals");x===void 0?s.tickmode="auto":o||a("ticktext")}}});var l1=N((BDe,AL)=>{"use strict";var fx=Le(),TL=hi();AL.exports=function(r,t,a,n){var i=n.isMinor,o=i?r.minor||{}:r,l=i?t.minor:t,s=i?TL.minor:TL,u=i?"minor.":"",f=fx.coerce2(o,l,s,"ticklen",i?(t.ticklen||5)*.6:void 0),c=fx.coerce2(o,l,s,"tickwidth",i?t.tickwidth||1:void 0),v=fx.coerce2(o,l,s,"tickcolor",(i?t.tickcolor:void 0)||l.color),d=a(u+"ticks",!i&&n.outerTicks||f||c||v?"outside":"");d||(delete l.ticklen,delete l.tickwidth,delete l.tickcolor)}});var cx=N((HDe,ML)=>{"use strict";ML.exports=function(r){var t=["showexponent","showtickprefix","showticksuffix"],a=t.filter(function(i){return r[i]!==void 0}),n=function(i){return r[i]===r[a[0]]};if(a.every(n)||a.length===1)return r[a[0]]}});var ro=N((UDe,kL)=>{"use strict";var s1=Le(),jfe=_t();kL.exports=function(r,t,a){var n=a.name,i=a.inclusionAttr||"visible",o=t[n],l=s1.isArrayOrTypedArray(r[n])?r[n]:[],s=t[n]=[],u=jfe.arrayTemplater(t,n,i),f,c;for(f=0;f{"use strict";var vx=Le(),Wfe=Tr().contrast,SL=hi(),Zfe=cx(),Xfe=ro();qL.exports=function(r,t,a,n,i){i||(i={});var o=a("labelalias");vx.isPlainObject(o)||delete t.labelalias;var l=Zfe(r),s=a("showticklabels");if(s){i.noTicklabelshift||a("ticklabelshift"),i.noTicklabelstandoff||a("ticklabelstandoff");var u=i.font||{},f=t.color,c=t.ticklabelposition||"",v=c.indexOf("inside")!==-1?Wfe(i.bgColor):f&&f!==SL.color.dflt?f:u.color;if(vx.coerceFont(a,"tickfont",u,{overrideDflt:{color:v}}),!i.noTicklabelstep&&n!=="multicategory"&&n!=="log"&&a("ticklabelstep"),!i.noAng){var d=a("tickangle");!i.noAutotickangles&&d==="auto"&&a("autotickangles")}if(n!=="category"){var p=a("tickformat");Xfe(r,t,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:Jfe}),t.tickformatstops.length||delete t.tickformatstops,!i.noExp&&!p&&n!=="date"&&(a("showexponent",l),a("exponentformat"),a("minexponent"),a("separatethousands"))}!i.noMinorloglabels&&n==="log"&&a("minorloglabels")}};function Jfe(e,r){function t(n,i){return vx.coerce(e,r,SL.tickformatstops,n,i)}var a=t("enabled");a&&(t("dtickrange"),t("value"))}});var f1=N((VDe,LL)=>{"use strict";var $fe=cx();LL.exports=function(r,t,a,n,i){i||(i={});var o=i.tickSuffixDflt,l=$fe(r),s=a("tickprefix");s&&a("showtickprefix",l);var u=a("ticksuffix",o);u&&a("showticksuffix",l)}});var hx=N((YDe,CL)=>{"use strict";var Xl=Le(),Kfe=_t(),Qfe=o1(),ece=l1(),rce=u1(),tce=f1(),ace=n1();CL.exports=function(r,t,a){var n=Kfe.newContainer(t,"colorbar"),i=r.colorbar||{};function o(P,R){return Xl.coerce(i,n,ace,P,R)}var l=a.margin||{t:0,b:0,l:0,r:0},s=a.width-l.l-l.r,u=a.height-l.t-l.b,f=o("orientation"),c=f==="v",v=o("thicknessmode");o("thickness",v==="fraction"?30/(c?s:u):30);var d=o("lenmode");o("len",d==="fraction"?1:c?u:s);var p=o("yref"),y=o("xref"),m=p==="paper",x=y==="paper",w,_,b,T="left";c?(b="middle",T=x?"left":"right",w=x?1.02:1,_=.5):(b=m?"bottom":"top",T="center",w=.5,_=m?1.02:1),Xl.coerce(i,n,{x:{valType:"number",min:x?-2:0,max:x?3:1,dflt:w}},"x"),Xl.coerce(i,n,{y:{valType:"number",min:m?-2:0,max:m?3:1,dflt:_}},"y"),o("xanchor",T),o("xpad"),o("yanchor",b),o("ypad"),Xl.noneOrAll(i,n,["x","y"]),o("outlinecolor"),o("outlinewidth"),o("bordercolor"),o("borderwidth"),o("bgcolor");var k=Xl.coerce(i,n,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:c?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");o("ticklabeloverflow",k.indexOf("inside")!==-1?"hide past domain":"hide past div"),Qfe(i,n,o,"linear");var M=a.font,q={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:M};k.indexOf("inside")!==-1&&(q.bgColor="black"),tce(i,n,o,"linear",q),rce(i,n,o,"linear",q),ece(i,n,o,"linear",q),o("title.text",a._dfltTitle.colorbar);var E=n.showticklabels?n.tickfont:M,D=Xl.extendFlat({},M,{family:E.family,size:Xl.bigFont(E.size)});Xl.coerceFont(o,"title.font",D),o("title.side",c?"top":"right")}});var fl=N((jDe,RL)=>{"use strict";var EL=Rr(),px=Le(),nce=ox(),ice=hx(),DL=js().isValid,oce=br().traceIs;function dx(e,r){var t=r.slice(0,r.length-1);return r?px.nestedProperty(e,t).get()||{}:e}RL.exports=function e(r,t,a,n,i){var o=i.prefix,l=i.cLetter,s="_module"in t,u=dx(r,o),f=dx(t,o),c=dx(t._template||{},o)||{},v=function(){return delete r.coloraxis,delete t.coloraxis,e(r,t,a,n,i)};if(s){var d=a._colorAxes||{},p=n(o+"coloraxis");if(p){var y=oce(t,"contour")&&px.nestedProperty(t,"contours.coloring").get()||"heatmap",m=d[p];m?(m[2].push(v),m[0]!==y&&(m[0]=!1,px.warn(["Ignoring coloraxis:",p,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[p]=[y,t,[v]];return}}var x=u[l+"min"],w=u[l+"max"],_=EL(x)&&EL(w)&&x{"use strict";var PL=Le(),lce=_t(),FL=ix(),sce=fl();NL.exports=function(r,t){function a(c,v){return PL.coerce(r,t,FL,c,v)}a("colorscale.sequential"),a("colorscale.sequentialminus"),a("colorscale.diverging");var n=t._colorAxes,i,o;function l(c,v){return PL.coerce(i,o,FL.coloraxis,c,v)}for(var s in n){var u=n[s];if(u[0])i=r[s]||{},o=lce.newContainer(t,s,"coloraxis"),o._name=s,sce(i,o,t,l,{prefix:"",cLetter:"c"});else{for(var f=0;f{"use strict";var uce=Le(),fce=Wn().hasColorscale,cce=Wn().extractOpts;IL.exports=function(r,t){function a(f,c){var v=f["_"+c];v!==void 0&&(f[c]=v)}function n(f,c){var v=c.container?uce.nestedProperty(f,c.container).get():f;if(v)if(v.coloraxis)v._colorAx=t[v.coloraxis];else{var d=cce(v),p=d.auto;(p||d.min===void 0)&&a(v,c.min),(p||d.max===void 0)&&a(v,c.max),d.autocolorscale&&a(v,"colorscale")}}for(var i=0;i{"use strict";var BL=Rr(),yx=Le(),vce=Wn().extractOpts;HL.exports=function(r,t,a){var n=r._fullLayout,i=a.vals,o=a.containerStr,l=o?yx.nestedProperty(t,o).get():t,s=vce(l),u=s.auto!==!1,f=s.min,c=s.max,v=s.mid,d=function(){return yx.aggNums(Math.min,null,i)},p=function(){return yx.aggNums(Math.max,null,i)};if(f===void 0?f=d():u&&(l._colorAx&&BL(f)?f=Math.min(f,d()):f=d()),c===void 0?c=p():u&&(l._colorAx&&BL(c)?c=Math.max(c,p()):c=p()),u&&v!==void 0&&(c-v>v-f?f=v-(c-v):c-v=0?y=n.colorscale.sequential:y=n.colorscale.sequentialminus,s._sync("colorscale",y)}}});var So=N((JDe,UL)=>{"use strict";var c1=js(),Yf=Wn();UL.exports={moduleType:"component",name:"colorscale",attributes:ko(),layoutAttributes:ix(),supplyLayoutDefaults:zL(),handleDefaults:fl(),crossTraceDefaults:OL(),calc:Vf(),scales:c1.scales,defaultScale:c1.defaultScale,getScale:c1.get,isValidScale:c1.isValid,hasColorscale:Yf.hasColorscale,extractOpts:Yf.extractOpts,extractScale:Yf.extractScale,flipScale:Yf.flipScale,makeColorScaleFunc:Yf.makeColorScaleFunc,makeColorScaleFuncFromTrace:Yf.makeColorScaleFuncFromTrace}});var Dn=N(($De,VL)=>{"use strict";var GL=Le(),hce=Vn().isTypedArraySpec;VL.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var r=e.marker;return GL.isPlainObject(r)&&(GL.isArrayOrTypedArray(r.size)||hce(r.size))}}});var jL=N((KDe,YL)=>{"use strict";var dce=Rr();YL.exports=function(r,t){t||(t=2);var a=r.marker,n=a.sizeref||1,i=a.sizemin||0,o=a.sizemode==="area"?function(l){return Math.sqrt(l/n)}:function(l){return l/n};return function(l){var s=o(l/t);return dce(s)&&s>0?Math.max(s,i):0}}});var qo=N(Za=>{"use strict";var v1=Le();Za.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};Za.isTraceInSubplots=function(e,r){if(e.type==="splom"){for(var t=e.xaxes||[],a=e.yaxes||[],n=0;n=0&&t.index{XL.exports=bce;var mx={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},gce=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function bce(e){var r=[];return e.replace(gce,function(t,a,n){var i=a.toLowerCase();for(n=_ce(n),i=="m"&&n.length>2&&(r.push([a].concat(n.splice(0,2))),i="l",a=a=="m"?"l":"L");;){if(n.length==mx[i])return n.unshift(a),r.push(n);if(n.length{"use strict";var wce=gx(),$e=function(e,r){return r?Math.round(e*(r=Math.pow(10,r)))/r:Math.round(e)},qr="M0,0Z",JL=Math.sqrt(2),Jl=Math.sqrt(3),bx=Math.PI,xx=Math.cos,_x=Math.sin;rC.exports={circle:{n:0,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n="M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z";return t?Cr(r,t,n):n}},square:{n:1,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")}},diamond:{n:2,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.3,2);return Cr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"Z")}},cross:{n:3,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.4,2),n=$e(e*1.2,2);return Cr(r,t,"M"+n+","+a+"H"+a+"V"+n+"H-"+a+"V"+a+"H-"+n+"V-"+a+"H-"+a+"V-"+n+"H"+a+"V-"+a+"H"+n+"Z")}},x:{n:4,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.8/JL,2),n="l"+a+","+a,i="l"+a+",-"+a,o="l-"+a+",-"+a,l="l-"+a+","+a;return Cr(r,t,"M0,"+a+n+i+o+i+o+l+o+l+n+l+n+"Z")}},"triangle-up":{n:5,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2/Jl,2),n=$e(e/2,2),i=$e(e,2);return Cr(r,t,"M-"+a+","+n+"H"+a+"L0,-"+i+"Z")}},"triangle-down":{n:6,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2/Jl,2),n=$e(e/2,2),i=$e(e,2);return Cr(r,t,"M-"+a+",-"+n+"H"+a+"L0,"+i+"Z")}},"triangle-left":{n:7,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2/Jl,2),n=$e(e/2,2),i=$e(e,2);return Cr(r,t,"M"+n+",-"+a+"V"+a+"L-"+i+",0Z")}},"triangle-right":{n:8,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2/Jl,2),n=$e(e/2,2),i=$e(e,2);return Cr(r,t,"M-"+n+",-"+a+"V"+a+"L"+i+",0Z")}},"triangle-ne":{n:9,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.6,2),n=$e(e*1.2,2);return Cr(r,t,"M-"+n+",-"+a+"H"+a+"V"+n+"Z")}},"triangle-se":{n:10,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.6,2),n=$e(e*1.2,2);return Cr(r,t,"M"+a+",-"+n+"V"+a+"H-"+n+"Z")}},"triangle-sw":{n:11,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.6,2),n=$e(e*1.2,2);return Cr(r,t,"M"+n+","+a+"H-"+a+"V-"+n+"Z")}},"triangle-nw":{n:12,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.6,2),n=$e(e*1.2,2);return Cr(r,t,"M-"+a+","+n+"V-"+a+"H"+n+"Z")}},pentagon:{n:13,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.951,2),n=$e(e*.588,2),i=$e(-e,2),o=$e(e*-.309,2),l=$e(e*.809,2);return Cr(r,t,"M"+a+","+o+"L"+n+","+l+"H-"+n+"L-"+a+","+o+"L0,"+i+"Z")}},hexagon:{n:14,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n=$e(e/2,2),i=$e(e*Jl/2,2);return Cr(r,t,"M"+i+",-"+n+"V"+n+"L0,"+a+"L-"+i+","+n+"V-"+n+"L0,-"+a+"Z")}},hexagon2:{n:15,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n=$e(e/2,2),i=$e(e*Jl/2,2);return Cr(r,t,"M-"+n+","+i+"H"+n+"L"+a+",0L"+n+",-"+i+"H-"+n+"L-"+a+",0Z")}},octagon:{n:16,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.924,2),n=$e(e*.383,2);return Cr(r,t,"M-"+n+",-"+a+"H"+n+"L"+a+",-"+n+"V"+n+"L"+n+","+a+"H-"+n+"L-"+a+","+n+"V-"+n+"Z")}},star:{n:17,f:function(e,r,t){if(Lr(r))return qr;var a=e*1.4,n=$e(a*.225,2),i=$e(a*.951,2),o=$e(a*.363,2),l=$e(a*.588,2),s=$e(-a,2),u=$e(a*-.309,2),f=$e(a*.118,2),c=$e(a*.809,2),v=$e(a*.382,2);return Cr(r,t,"M"+n+","+u+"H"+i+"L"+o+","+f+"L"+l+","+c+"L0,"+v+"L-"+l+","+c+"L-"+o+","+f+"L-"+i+","+u+"H-"+n+"L0,"+s+"Z")}},hexagram:{n:18,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.66,2),n=$e(e*.38,2),i=$e(e*.76,2);return Cr(r,t,"M-"+i+",0l-"+n+",-"+a+"h"+i+"l"+n+",-"+a+"l"+n+","+a+"h"+i+"l-"+n+","+a+"l"+n+","+a+"h-"+i+"l-"+n+","+a+"l-"+n+",-"+a+"h-"+i+"Z")}},"star-triangle-up":{n:19,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*Jl*.8,2),n=$e(e*.8,2),i=$e(e*1.6,2),o=$e(e*4,2),l="A "+o+","+o+" 0 0 1 ";return Cr(r,t,"M-"+a+","+n+l+a+","+n+l+"0,-"+i+l+"-"+a+","+n+"Z")}},"star-triangle-down":{n:20,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*Jl*.8,2),n=$e(e*.8,2),i=$e(e*1.6,2),o=$e(e*4,2),l="A "+o+","+o+" 0 0 1 ";return Cr(r,t,"M"+a+",-"+n+l+"-"+a+",-"+n+l+"0,"+i+l+a+",-"+n+"Z")}},"star-square":{n:21,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.1,2),n=$e(e*2,2),i="A "+n+","+n+" 0 0 1 ";return Cr(r,t,"M-"+a+",-"+a+i+"-"+a+","+a+i+a+","+a+i+a+",-"+a+i+"-"+a+",-"+a+"Z")}},"star-diamond":{n:22,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.4,2),n=$e(e*1.9,2),i="A "+n+","+n+" 0 0 1 ";return Cr(r,t,"M-"+a+",0"+i+"0,"+a+i+a+",0"+i+"0,-"+a+i+"-"+a+",0Z")}},"diamond-tall":{n:23,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.7,2),n=$e(e*1.4,2);return Cr(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},"diamond-wide":{n:24,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.4,2),n=$e(e*.7,2);return Cr(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},hourglass:{n:25,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M"+a+","+a+"H-"+a+"L"+a+",-"+a+"H-"+a+"Z")},noDot:!0},bowtie:{n:26,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M"+a+","+a+"V-"+a+"L-"+a+","+a+"V-"+a+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n=$e(e/JL,2);return Cr(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.3,2);return Cr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM0,-"+a+"V"+a+"M-"+a+",0H"+a)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.3,2),n=$e(e*.65,2);return Cr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM-"+n+",-"+n+"L"+n+","+n+"M-"+n+","+n+"L"+n+",-"+n)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.4,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.2,2),n=$e(e*.85,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e/2,2),n=$e(e,2);return Cr(r,t,"M"+a+","+n+"V-"+n+"M"+(a-n)+",-"+n+"V"+n+"M"+n+","+a+"H-"+n+"M-"+n+","+(a-n)+"H"+n)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.2,2),n=$e(e*1.6,2),i=$e(e*.8,2);return Cr(r,t,"M-"+a+","+i+"L0,0M"+a+","+i+"L0,0M0,-"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.2,2),n=$e(e*1.6,2),i=$e(e*.8,2);return Cr(r,t,"M-"+a+",-"+i+"L0,0M"+a+",-"+i+"L0,0M0,"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.2,2),n=$e(e*1.6,2),i=$e(e*.8,2);return Cr(r,t,"M"+i+","+a+"L0,0M"+i+",-"+a+"L0,0M-"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.2,2),n=$e(e*1.6,2),i=$e(e*.8,2);return Cr(r,t,"M-"+i+","+a+"L0,0M-"+i+",-"+a+"L0,0M"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.4,2);return Cr(r,t,"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.4,2);return Cr(r,t,"M0,"+a+"V-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M"+a+","+a+"L-"+a+",-"+a)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n=$e(e*2,2);return Cr(r,t,"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n=$e(e*2,2);return Cr(r,t,"M0,0L-"+a+",-"+n+"H"+a+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2,2),n=$e(e,2);return Cr(r,t,"M0,0L"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2,2),n=$e(e,2);return Cr(r,t,"M0,0L-"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n=$e(e*2,2);return Cr(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n=$e(e*2,2);return Cr(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+",-"+n+"H"+a+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2,2),n=$e(e,2);return Cr(r,t,"M0,-"+n+"V"+n+"M0,0L"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2,2),n=$e(e,2);return Cr(r,t,"M0,-"+n+"V"+n+"M0,0L-"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,r,t){if(Lr(r))return qr;var a=bx/2.5,n=2*e*xx(a),i=2*e*_x(a);return Cr(r,t,"M0,0L"+-n+","+i+"L"+n+","+i+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,r,t){if(Lr(r))return qr;var a=bx/4,n=2*e*xx(a),i=2*e*_x(a);return Cr(r,t,"M0,0L"+-n+","+i+"A "+2*e+","+2*e+" 0 0 1 "+n+","+i+"Z")},backoff:.4,noDot:!0}};function Lr(e){return e===null}var $L,KL,QL,eC;function Cr(e,r,t){if((!e||e%360===0)&&!r)return t;if(QL===e&&eC===r&&$L===t)return KL;QL=e,eC=r,$L=t;function a(m,x){var w=xx(m),_=_x(m),b=x[0],T=x[1]+(r||0);return[b*w-T*_,b*_+T*w]}for(var n=e/180*bx,i=0,o=0,l=wce(t),s="",u=0;u{"use strict";var Ta=Sr(),pt=Le(),Tce=pt.numberFormat,uu=Rr(),Sx=kn(),d1=br(),Ba=Tr(),Ace=So(),dh=pt.strTranslate,p1=Ea(),Mce=sl(),kce=Wa(),Sce=kce.LINE_SPACING,vC=Tp().DESELECTDIM,qce=Dn(),Lce=jL(),Cce=qo().appendArrayPointValue,ar=wC.exports={};ar.font=function(e,r){var t=r.variant,a=r.style,n=r.weight,i=r.color,o=r.size,l=r.family,s=r.shadow,u=r.lineposition,f=r.textcase;l&&e.style("font-family",l),o+1&&e.style("font-size",o+"px"),i&&e.call(Ba.fill,i),n&&e.style("font-weight",n),a&&e.style("font-style",a),t&&e.style("font-variant",t),f&&e.style("text-transform",wx(Dce(f))),s&&e.style("text-shadow",s==="auto"?p1.makeTextShadow(Ba.contrast(i)):wx(s)),u&&e.style("text-decoration-line",wx(Rce(u)))};function wx(e){return e==="none"?void 0:e}var Ece={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function Dce(e){return Ece[e]}function Rce(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}ar.setPosition=function(e,r,t){e.attr("x",r).attr("y",t)};ar.setSize=function(e,r,t){e.attr("width",r).attr("height",t)};ar.setRect=function(e,r,t,a,n){e.call(ar.setPosition,r,t).call(ar.setSize,a,n)};ar.translatePoint=function(e,r,t,a){var n=t.c2p(e.x),i=a.c2p(e.y);if(uu(n)&&uu(i)&&r.node())r.node().nodeName==="text"?r.attr("x",n).attr("y",i):r.attr("transform",dh(n,i));else return!1;return!0};ar.translatePoints=function(e,r,t){e.each(function(a){var n=Ta.select(this);ar.translatePoint(a,n,r,t)})};ar.hideOutsideRangePoint=function(e,r,t,a,n,i){r.attr("display",t.isPtWithinRange(e,n)&&a.isPtWithinRange(e,i)?null:"none")};ar.hideOutsideRangePoints=function(e,r){if(r._hasClipOnAxisFalse){var t=r.xaxis,a=r.yaxis;e.each(function(n){var i=n[0].trace,o=i.xcalendar,l=i.ycalendar,s=d1.traceIs(i,"bar-like")?".bartext":".point,.textpoint";e.selectAll(s).each(function(u){ar.hideOutsideRangePoint(u,Ta.select(this),t,a,o,l)})})}};ar.crispRound=function(e,r,t){return!r||!uu(r)?t||0:e._context.staticPlot?r:r<1?1:Math.round(r)};ar.singleLineStyle=function(e,r,t,a,n){r.style("fill","none");var i=(((e||[])[0]||{}).trace||{}).line||{},o=t||i.width||0,l=n||i.dash||"";Ba.stroke(r,a||i.color),ar.dashLine(r,l,o)};ar.lineGroupStyle=function(e,r,t,a){e.style("fill","none").each(function(n){var i=(((n||[])[0]||{}).trace||{}).line||{},o=r||i.width||0,l=a||i.dash||"";Ta.select(this).call(Ba.stroke,t||i.color).call(ar.dashLine,l,o)})};ar.dashLine=function(e,r,t){t=+t||0,r=ar.dashStyle(r,t),e.style({"stroke-dasharray":r,"stroke-width":t+"px"})};ar.dashStyle=function(e,r){r=+r||1;var t=Math.max(r,3);return e==="solid"?e="":e==="dot"?e=t+"px,"+t+"px":e==="dash"?e=3*t+"px,"+3*t+"px":e==="longdash"?e=5*t+"px,"+5*t+"px":e==="dashdot"?e=3*t+"px,"+t+"px,"+t+"px,"+t+"px":e==="longdashdot"&&(e=5*t+"px,"+2*t+"px,"+t+"px,"+2*t+"px"),e};function hC(e,r,t,a){var n=r.fillpattern,i=r.fillgradient,o=ar.getPatternAttr,l=n&&(o(n.shape,0,"")||o(n.path,0,""));if(l){var s=o(n.bgcolor,0,null),u=o(n.fgcolor,0,null),f=n.fgopacity,c=o(n.size,0,8),v=o(n.solidity,0,.3),d=r.uid;ar.pattern(e,"point",t,d,l,c,v,void 0,n.fillmode,s,u,f)}else if(i&&i.type!=="none"){var p=i.type,y="scatterfill-"+r.uid;if(a&&(y="legendfill-"+r.uid),!a&&(i.start!==void 0||i.stop!==void 0)){var m,x;p==="horizontal"?(m={x:i.start,y:0},x={x:i.stop,y:0}):p==="vertical"&&(m={x:0,y:i.start},x={x:0,y:i.stop}),m.x=r._xA.c2p(m.x===void 0?r._extremes.x.min[0].val:m.x,!0),m.y=r._yA.c2p(m.y===void 0?r._extremes.y.min[0].val:m.y,!0),x.x=r._xA.c2p(x.x===void 0?r._extremes.x.max[0].val:x.x,!0),x.y=r._yA.c2p(x.y===void 0?r._extremes.y.max[0].val:x.y,!0),e.call(yC,t,y,"linear",i.colorscale,"fill",m,x,!0,!1)}else p==="horizontal"&&(p=p+"reversed"),e.call(ar.gradient,t,y,p,i.colorscale,"fill")}else r.fillcolor&&e.call(Ba.fill,r.fillcolor)}ar.singleFillStyle=function(e,r){var t=Ta.select(e.node()),a=t.data(),n=((a[0]||[])[0]||{}).trace||{};hC(e,n,r,!1)};ar.fillGroupStyle=function(e,r,t){e.style("stroke-width",0).each(function(a){var n=Ta.select(this);a[0].trace&&hC(n,a[0].trace,r,t)})};var aC=tC();ar.symbolNames=[];ar.symbolFuncs=[];ar.symbolBackOffs=[];ar.symbolNeedLines={};ar.symbolNoDot={};ar.symbolNoFill={};ar.symbolList=[];Object.keys(aC).forEach(function(e){var r=aC[e],t=r.n;ar.symbolList.push(t,String(t),e,t+100,String(t+100),e+"-open"),ar.symbolNames[t]=e,ar.symbolFuncs[t]=r.f,ar.symbolBackOffs[t]=r.backoff||0,r.needLine&&(ar.symbolNeedLines[t]=!0),r.noDot?ar.symbolNoDot[t]=!0:ar.symbolList.push(t+200,String(t+200),e+"-dot",t+300,String(t+300),e+"-open-dot"),r.noFill&&(ar.symbolNoFill[t]=!0)});var Pce=ar.symbolNames.length,Fce="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";ar.symbolNumber=function(e){if(uu(e))e=+e;else if(typeof e=="string"){var r=0;e.indexOf("-open")>0&&(r=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(r+=200,e=e.replace("-dot","")),e=ar.symbolNames.indexOf(e),e>=0&&(e+=r)}return e%100>=Pce||e>=400?0:Math.floor(Math.max(e,0))};function dC(e,r,t,a){var n=e%100;return ar.symbolFuncs[n](r,t,a)+(e>=200?Fce:"")}var nC=Tce("~f"),pC={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};ar.gradient=function(e,r,t,a,n,i){var o=pC[a];return yC(e,r,t,o.type,n,i,o.start,o.stop,!1,o.reversed)};function yC(e,r,t,a,n,i,o,l,s,u){var f=n.length,c;a==="linear"?c={node:"linearGradient",attrs:{x1:o.x,y1:o.y,x2:l.x,y2:l.y,gradientUnits:s?"userSpaceOnUse":"objectBoundingBox"},reversed:u}:a==="radial"&&(c={node:"radialGradient",reversed:u});for(var v=new Array(f),d=0;d=0&&e.i===void 0&&(e.i=i.i),r.style("opacity",a.selectedOpacityFn?a.selectedOpacityFn(e):e.mo===void 0?o.opacity:e.mo),a.ms2mrc){var s;e.ms==="various"||o.size==="various"?s=3:s=a.ms2mrc(e.ms),e.mrc=s,a.selectedSizeFn&&(s=e.mrc=a.selectedSizeFn(e));var u=ar.symbolNumber(e.mx||o.symbol)||0;e.om=u%200>=100;var f=Cx(e,t),c=Lx(e,t);r.attr("d",dC(u,s,f,c))}var v=!1,d,p,y;if(e.so)y=l.outlierwidth,p=l.outliercolor,d=o.outliercolor;else{var m=(l||{}).width;y=(e.mlw+1||m+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?p=e.mlcc=a.lineScale(e.mlc):pt.isArrayOrTypedArray(l.color)?p=Ba.defaultLine:p=l.color,pt.isArrayOrTypedArray(o.color)&&(d=Ba.defaultLine,v=!0),"mc"in e?d=e.mcc=a.markerScale(e.mc):d=o.color||o.colors||"rgba(0,0,0,0)",a.selectedColorFn&&(d=a.selectedColorFn(e))}if(e.om)r.call(Ba.stroke,d).style({"stroke-width":(y||1)+"px",fill:"none"});else{r.style("stroke-width",(e.isBlank?0:y)+"px");var x=o.gradient,w=e.mgt;w?v=!0:w=x&&x.type,pt.isArrayOrTypedArray(w)&&(w=w[0],pC[w]||(w=0));var _=o.pattern,b=ar.getPatternAttr,T=_&&(b(_.shape,e.i,"")||b(_.path,e.i,""));if(w&&w!=="none"){var k=e.mgc;k?v=!0:k=x.color;var M=t.uid;v&&(M+="-"+e.i),ar.gradient(r,n,M,w,[[0,k],[1,d]],"fill")}else if(T){var q=!1,E=_.fgcolor;!E&&i&&i.color&&(E=i.color,q=!0);var D=b(E,e.i,i&&i.color||null),P=b(_.bgcolor,e.i,null),R=_.fgopacity,z=b(_.size,e.i,8),O=b(_.solidity,e.i,.3);q=q||e.mcc||pt.isArrayOrTypedArray(_.shape)||pt.isArrayOrTypedArray(_.path)||pt.isArrayOrTypedArray(_.bgcolor)||pt.isArrayOrTypedArray(_.fgcolor)||pt.isArrayOrTypedArray(_.size)||pt.isArrayOrTypedArray(_.solidity);var B=t.uid;q&&(B+="-"+e.i),ar.pattern(r,"point",n,B,T,z,O,e.mcc,_.fillmode,P,D,R)}else pt.isArrayOrTypedArray(d)?Ba.fill(r,d[e.i]):Ba.fill(r,d);y&&Ba.stroke(r,p)}};ar.makePointStyleFns=function(e){var r={},t=e.marker;return r.markerScale=ar.tryColorscale(t,""),r.lineScale=ar.tryColorscale(t,"line"),d1.traceIs(e,"symbols")&&(r.ms2mrc=qce.isBubble(e)?Lce(e):function(){return(t.size||6)/2}),e.selectedpoints&&pt.extendFlat(r,ar.makeSelectedPointStyleFns(e)),r};ar.makeSelectedPointStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.marker||{},i=t.marker||{},o=a.marker||{},l=n.opacity,s=i.opacity,u=o.opacity,f=s!==void 0,c=u!==void 0;(pt.isArrayOrTypedArray(l)||f||c)&&(r.selectedOpacityFn=function(b){var T=b.mo===void 0?n.opacity:b.mo;return b.selected?f?s:T:c?u:vC*T});var v=n.color,d=i.color,p=o.color;(d||p)&&(r.selectedColorFn=function(b){var T=b.mcc||v;return b.selected?d||T:p||T});var y=n.size,m=i.size,x=o.size,w=m!==void 0,_=x!==void 0;return d1.traceIs(e,"symbols")&&(w||_)&&(r.selectedSizeFn=function(b){var T=b.mrc||y/2;return b.selected?w?m/2:T:_?x/2:T}),r};ar.makeSelectedTextStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.textfont||{},i=t.textfont||{},o=a.textfont||{},l=n.color,s=i.color,u=o.color;return r.selectedTextColorFn=function(f){var c=f.tc||l;return f.selected?s||c:u||(s?c:Ba.addOpacity(c,vC))},r};ar.selectedPointStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=ar.makeSelectedPointStyleFns(r),a=r.marker||{},n=[];t.selectedOpacityFn&&n.push(function(i,o){i.style("opacity",t.selectedOpacityFn(o))}),t.selectedColorFn&&n.push(function(i,o){Ba.fill(i,t.selectedColorFn(o))}),t.selectedSizeFn&&n.push(function(i,o){var l=o.mx||a.symbol||0,s=t.selectedSizeFn(o);i.attr("d",dC(ar.symbolNumber(l),s,Cx(o,r),Lx(o,r))),o.mrc2=s}),n.length&&e.each(function(i){for(var o=Ta.select(this),l=0;l0?t:0}ar.textPointStyle=function(e,r,t){if(e.size()){var a;if(r.selectedpoints){var n=ar.makeSelectedTextStyleFns(r);a=n.selectedTextColorFn}var i=r.texttemplate,o=t._fullLayout;e.each(function(l){var s=Ta.select(this),u=i?pt.extractOption(l,r,"txt","texttemplate"):pt.extractOption(l,r,"tx","text");if(!u&&u!==0){s.remove();return}if(i){var f=r._module.formatLabels,c=f?f(l,r,o):{},v={};Cce(v,r,l.i),u=pt.texttemplateString({data:[v,l,r._meta],fallback:r.texttemplatefallback,labels:c,locale:o._d3locale,template:u})}var d=l.tp||r.textposition,p=gC(l,r),y=a?a(l):l.tc||r.textfont.color;s.call(ar.font,{family:l.tf||r.textfont.family,weight:l.tw||r.textfont.weight,style:l.ty||r.textfont.style,variant:l.tv||r.textfont.variant,textcase:l.tC||r.textfont.textcase,lineposition:l.tE||r.textfont.lineposition,shadow:l.tS||r.textfont.shadow,size:p,color:y}).text(u).call(p1.convertToTspans,t).call(mC,d,p,l.mrc)})}};ar.selectedTextStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=ar.makeSelectedTextStyleFns(r);e.each(function(a){var n=Ta.select(this),i=t.selectedTextColorFn(a),o=a.tp||r.textposition,l=gC(a,r);Ba.fill(n,i);var s=d1.traceIs(r,"bar-like");mC(n,o,l,a.mrc2||a.mrc,s)})}};var iC=.5;ar.smoothopen=function(e,r){if(e.length<3)return"M"+e.join("L");var t="M"+e[0],a=[],n;for(n=1;n=s||b>=f&&b<=s)&&(T<=c&&T>=u||T>=c&&T<=u)&&(e=[b,T])}return e}ar.applyBackoff=_C;ar.makeTester=function(){var e=pt.ensureSingleById(Ta.select("body"),"svg","js-plotly-tester",function(t){t.attr(Mce.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),r=pt.ensureSingle(e,"path","js-reference-point",function(t){t.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});ar.tester=e,ar.testref=r};ar.savedBBoxes={};var Ax=0,Ice=1e4;ar.bBox=function(e,r,t){t||(t=oC(e));var a;if(t){if(a=ar.savedBBoxes[t],a)return pt.extendFlat({},a)}else if(e.childNodes.length===1){var n=e.childNodes[0];if(t=oC(n),t){var i=+n.getAttribute("x")||0,o=+n.getAttribute("y")||0,l=n.getAttribute("transform");if(!l){var s=ar.bBox(n,!1,t);return i&&(s.left+=i,s.right+=i),o&&(s.top+=o,s.bottom+=o),s}if(t+="~"+i+"~"+o+"~"+l,a=ar.savedBBoxes[t],a)return pt.extendFlat({},a)}}var u,f;r?u=e:(f=ar.tester.node(),u=e.cloneNode(!0),f.appendChild(u)),Ta.select(u).attr("transform",null).call(p1.positionText,0,0);var c=u.getBoundingClientRect(),v=ar.testref.node().getBoundingClientRect();r||f.removeChild(u);var d={height:c.height,width:c.width,left:c.left-v.left,top:c.top-v.top,right:c.right-v.left,bottom:c.bottom-v.top};return Ax>=Ice&&(ar.savedBBoxes={},Ax=0),t&&(ar.savedBBoxes[t]=d),Ax++,pt.extendFlat({},d)};function oC(e){var r=e.getAttribute("data-unformatted");if(r!==null)return r+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}ar.setClipUrl=function(e,r,t){e.attr("clip-path",qx(r,t))};function qx(e,r){if(!e)return null;var t=r._context,a=t._exportedPlot?"":t._baseUrl||"";return a?"url('"+a+"#"+e+"')":"url(#"+e+")"}ar.getTranslate=function(e){var r=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,o,l){return[o,l].join(" ")}).split(" ");return{x:+n[0]||0,y:+n[1]||0}};ar.setTranslate=function(e,r,t){var a=/(\btranslate\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",o=e[n]("transform")||"";return r=r||0,t=t||0,o=o.replace(a,"").trim(),o+=dh(r,t),o=o.trim(),e[i]("transform",o),o};ar.getScale=function(e){var r=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,o,l){return[o,l].join(" ")}).split(" ");return{x:+n[0]||1,y:+n[1]||1}};ar.setScale=function(e,r,t){var a=/(\bscale\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",o=e[n]("transform")||"";return r=r||1,t=t||1,o=o.replace(a,"").trim(),o+="scale("+r+","+t+")",o=o.trim(),e[i]("transform",o),o};var Oce=/\s*sc.*/;ar.setPointGroupScale=function(e,r,t){if(r=r||1,t=t||1,!!e){var a=r===1&&t===1?"":"scale("+r+","+t+")";e.each(function(){var n=(this.getAttribute("transform")||"").replace(Oce,"");n+=a,n=n.trim(),this.setAttribute("transform",n)})}};var Bce=/translate\([^)]*\)\s*$/;ar.setTextPointsScale=function(e,r,t){e&&e.each(function(){var a,n=Ta.select(this),i=n.select("text");if(i.node()){var o=parseFloat(i.attr("x")||0),l=parseFloat(i.attr("y")||0),s=(n.attr("transform")||"").match(Bce);r===1&&t===1?a=[]:a=[dh(o,l),"scale("+r+","+t+")",dh(-o,-l)],s&&a.push(s),n.attr("transform",a.join(""))}})};function Lx(e,r){var t;return e&&(t=e.mf),t===void 0&&(t=r.marker&&r.marker.standoff||0),!r._geo&&!r._xA?-t:t}ar.getMarkerStandoff=Lx;var hh=Math.atan2,ou=Math.cos,Wf=Math.sin;function lC(e,r){var t=r[0],a=r[1];return[t*ou(e)-a*Wf(e),t*Wf(e)+a*ou(e)]}var sC,uC,fC,cC,Mx,kx;function Cx(e,r){var t=e.ma;t===void 0&&(t=r.marker.angle,(!t||pt.isArrayOrTypedArray(t))&&(t=0));var a,n,i=r.marker.angleref;if(i==="previous"||i==="north"){if(r._geo){var o=r._geo.project(e.lonlat);a=o[0],n=o[1]}else{var l=r._xA,s=r._yA;if(l&&s)a=l.c2p(e.x),n=s.c2p(e.y);else return 90}if(r._geo){var u=e.lonlat[0],f=e.lonlat[1],c=r._geo.project([u,f+1e-5]),v=r._geo.project([u+1e-5,f]),d=hh(v[1]-n,v[0]-a),p=hh(c[1]-n,c[0]-a),y;if(i==="north")y=t/180*Math.PI;else if(i==="previous"){var m=u/180*Math.PI,x=f/180*Math.PI,w=sC/180*Math.PI,_=uC/180*Math.PI,b=w-m,T=ou(_)*Wf(b),k=Wf(_)*ou(x)-ou(_)*Wf(x)*ou(b);y=-hh(T,k)-Math.PI,sC=u,uC=f}var M=lC(d,[ou(y),0]),q=lC(p,[Wf(y),0]);t=hh(M[1]+q[1],M[0]+q[0])/Math.PI*180,i==="previous"&&!(kx===r.uid&&e.i===Mx+1)&&(t=null)}if(i==="previous"&&!r._geo)if(kx===r.uid&&e.i===Mx+1&&uu(a)&&uu(n)){var E=a-fC,D=n-cC,P=r.line&&r.line.shape||"",R=P.slice(P.length-1);R==="h"&&(D=0),R==="v"&&(E=0),t+=hh(D,E)/Math.PI*180+90}else t=null}return fC=a,cC=n,Mx=e.i,kx=r.uid,t}ar.getMarkerAngle=Cx});var Jf=N((aRe,kC)=>{"use strict";var Zf=Sr(),Hce=Rr(),Uce=ta(),Ex=br(),fu=Le(),TC=fu.strTranslate,y1=jr(),m1=Tr(),Xf=Ea(),AC=Tp(),Gce=Wa().OPPOSITE_SIDE,MC=/ [XY][0-9]* /,Dx=1.6,Rx=1.6;function Vce(e,r,t){var a=e._fullLayout,n=t.propContainer,i=t.propName,o=t.placeholder,l=t.traceIndex,s=t.avoid||{},u=t.attributes,f=t.transform,c=t.containerGroup,v=1,d=n.title,p=(d&&d.text?d.text:"").trim(),y=!1,m=d&&d.font?d.font:{},x=m.family,w=m.size,_=m.color,b=m.weight,T=m.style,k=m.variant,M=m.textcase,q=m.lineposition,E=m.shadow,D=t.subtitlePropName,P=!!D,R=t.subtitlePlaceholder,z=(n.title||{}).subtitle||{text:"",font:{}},O=(z.text||"").trim(),B=!1,Y=1,G=z.font,U=G.family,V=G.size,J=G.color,Z=G.weight,ee=G.style,fe=G.variant,ie=G.textcase,ue=G.lineposition,K=G.shadow,_e;i==="title.text"?_e="titleText":i.indexOf("axis")!==-1?_e="axisTitleText":i.indexOf("colorbar")!==-1&&(_e="colorbarTitleText");var le=e._context.edits[_e];function he(Ue,Be){return Ue===void 0||Be===void 0?!1:Ue.replace(MC," % ")===Be.replace(MC," % ")}p===""?v=0:he(p,o)&&(le||(p=""),v=.2,y=!0),P&&(O===""?Y=0:he(O,R)&&(le||(O=""),Y=.2,B=!0)),t._meta?p=fu.templateString(p,t._meta):a._meta&&(p=fu.templateString(p,a._meta));var oe=p||O||le,ce;c||(c=fu.ensureSingle(a._infolayer,"g","g-"+r),ce=a._hColorbarMoveTitle);var j=c.selectAll("text."+r).data(oe?[0]:[]);j.enter().append("text"),j.text(p).attr("class",r),j.exit().remove();var Q=null,W=r+"-subtitle",pe=O||le;if(P&&(Q=c.selectAll("text."+W).data(pe?[0]:[]),Q.enter().append("text"),Q.text(O).attr("class",W),Q.exit().remove()),!oe)return c;function me(Ue,Be){fu.syncOrAsync([ye,Pe],{title:Ue,subtitle:Be})}function ye(Ue){var Be=Ue.title,Ce=Ue.subtitle,Oe;!f&&ce&&(f={}),f?(Oe="",f.rotate&&(Oe+="rotate("+[f.rotate,u.x,u.y]+")"),(f.offset||ce)&&(Oe+=TC(0,(f.offset||0)-(ce||0)))):Oe=null,Be.attr("transform",Oe);function He(Te){if(Te){var qe=Zf.select(Te.node().parentNode).select("."+W);if(!qe.empty()){var Ge=Te.node().getBBox();if(Ge.height){var Je=Ge.y+Ge.height+Dx*V;qe.attr("y",Je)}}}}if(Be.style("opacity",v*m1.opacity(_)).call(y1.font,{color:m1.rgb(_),size:Zf.round(w,2),family:x,weight:b,style:T,variant:k,textcase:M,shadow:E,lineposition:q}).attr(u).call(Xf.convertToTspans,e,He),Ce&&!Ce.empty()){var se=c.select("."+r+"-math-group"),Ae=Be.node().getBBox(),Xe=se.node()?se.node().getBBox():void 0,vr=Xe?Xe.y+Xe.height+Dx*V:Ae.y+Ae.height+Rx*V,Fe=fu.extendFlat({},u,{y:vr});Ce.attr("transform",Oe),Ce.style("opacity",Y*m1.opacity(J)).call(y1.font,{color:m1.rgb(J),size:Zf.round(V,2),family:U,weight:Z,style:ee,variant:fe,textcase:ie,shadow:K,lineposition:ue}).attr(Fe).call(Xf.convertToTspans,e)}return Uce.previousPromises(e)}function Pe(Ue){var Be=Ue.title,Ce=Zf.select(Be.node().parentNode);if(s&&s.selection&&s.side&&p){Ce.attr("transform",null);var Oe=Gce[s.side],He=s.side==="left"||s.side==="top"?-1:1,se=Hce(s.pad)?s.pad:2,Ae=y1.bBox(Ce.node()),Xe={t:0,b:0,l:0,r:0},vr=e._fullLayout._reservedMargin;for(var Fe in vr)for(var Te in vr[Fe]){var qe=vr[Fe][Te];Xe[Te]=Math.max(Xe[Te],qe)}var Ge={left:Xe.l,top:Xe.t,right:a.width-Xe.r,bottom:a.height-Xe.b},Je=s.maxShift||He*(Ge[s.side]-Ae[s.side]),Ve=0;if(Je<0)Ve=Je;else{var Ze=s.offsetLeft||0,or=s.offsetTop||0;Ae.left-=Ze,Ae.right-=Ze,Ae.top-=or,Ae.bottom-=or,s.selection.each(function(){var Ke=y1.bBox(this);fu.bBoxIntersect(Ae,Ke,se)&&(Ve=Math.max(Ve,He*(Ke[s.side]-Ae[Oe])+se))}),Ve=Math.min(Je,Ve),n._titleScoot=Math.abs(Ve)}if(Ve>0||Je<0){var rr={left:[-Ve,0],right:[Ve,0],top:[0,-Ve],bottom:[0,Ve]}[s.side];Ce.attr("transform",TC(rr[0],rr[1]))}}}j.call(me,Q);function Ne(Ue,Be){Ue.text(Be).on("mouseover.opacity",function(){Zf.select(this).transition().duration(AC.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){Zf.select(this).transition().duration(AC.HIDE_PLACEHOLDER).style("opacity",0)})}if(le&&(p?j.on(".opacity",null):(Ne(j,o),y=!0),j.call(Xf.makeEditable,{gd:e}).on("edit",function(Ue){l!==void 0?Ex.call("_guiRestyle",e,i,Ue,l):Ex.call("_guiRelayout",e,i,Ue)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(me)}).on("input",function(Ue){this.text(Ue||" ").call(Xf.positionText,u.x,u.y)}),P)){if(P&&!p){var Ee=j.node().getBBox(),Ie=Ee.y+Ee.height+Rx*V;Q.attr("y",Ie)}O?Q.on(".opacity",null):(Ne(Q,R),B=!0),Q.call(Xf.makeEditable,{gd:e}).on("edit",function(Ue){Ex.call("_guiRelayout",e,"title.subtitle.text",Ue)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(me)}).on("input",function(Ue){this.text(Ue||" ").call(Xf.positionText,Q.attr("x"),Q.attr("y"))})}return j.classed("js-placeholder",y),Q&&!Q.empty()&&Q.classed("js-placeholder",B),c}kC.exports={draw:Vce,SUBTITLE_PADDING_EM:Rx,SUBTITLE_PADDING_MATHJAX_EM:Dx}});var $f=N((nRe,EC)=>{"use strict";var Yce=Sr(),jce=_f().utcFormat,wt=Le(),Wce=wt.numberFormat,Lo=Rr(),$l=wt.cleanNumber,Zce=wt.ms2DateTime,SC=wt.dateTime2ms,Co=wt.ensureNumber,qC=wt.isArrayOrTypedArray,Kl=It(),g1=Kl.FP_SAFE,to=Kl.BADNUM,Xce=Kl.LOG_CLIP,Jce=Kl.ONEWEEK,b1=Kl.ONEDAY,x1=Kl.ONEHOUR,LC=Kl.ONEMIN,CC=Kl.ONESEC,_1=la(),A1=Ca(),w1=A1.HOUR_PATTERN,T1=A1.WEEKDAY_PATTERN;function ph(e){return Math.pow(10,e)}function Px(e){return e!=null}EC.exports=function(r,t){t=t||{};var a=r._id||"x",n=a.charAt(0);function i(b,T){if(b>0)return Math.log(b)/Math.LN10;if(b<=0&&T&&r.range&&r.range.length===2){var k=r.range[0],M=r.range[1];return .5*(k+M-2*Xce*Math.abs(k-M))}else return to}function o(b,T,k,M){if((M||{}).msUTC&&Lo(b))return+b;var q=SC(b,k||r.calendar);if(q===to)if(Lo(b)){b=+b;var E=Math.floor(wt.mod(b+.05,1)*10),D=Math.round(b-E/10);q=SC(new Date(D))+E/10}else return to;return q}function l(b,T,k){return Zce(b,T,k||r.calendar)}function s(b){return r._categories[Math.round(b)]}function u(b){if(Px(b)){if(r._categoriesMap===void 0&&(r._categoriesMap={}),r._categoriesMap[b]!==void 0)return r._categoriesMap[b];r._categories.push(typeof b=="number"?String(b):b);var T=r._categories.length-1;return r._categoriesMap[b]=T,T}return to}function f(b,T){for(var k=new Array(T),M=0;Mr.range[1]&&(k=!k);for(var M=k?-1:1,q=M*b,E=0,D=0;DR)E=D+1;else{E=q<(P+R)/2?D:D+1;break}}var z=r._B[E]||0;return isFinite(z)?p(b,r._m2,z):0},x=function(b){var T=r._rangebreaks.length;if(!T)return y(b,r._m,r._b);for(var k=0,M=0;Mr._rangebreaks[M].pmax&&(k=M+1);return y(b,r._m2,r._B[k])}}r.c2l=r.type==="log"?i:Co,r.l2c=r.type==="log"?ph:Co,r.l2p=m,r.p2l=x,r.c2p=r.type==="log"?function(b,T){return m(i(b,T))}:m,r.p2c=r.type==="log"?function(b){return ph(x(b))}:x,["linear","-"].indexOf(r.type)!==-1?(r.d2r=r.r2d=r.d2c=r.r2c=r.d2l=r.r2l=$l,r.c2d=r.c2r=r.l2d=r.l2r=Co,r.d2p=r.r2p=function(b){return r.l2p($l(b))},r.p2d=r.p2r=x,r.cleanPos=Co):r.type==="log"?(r.d2r=r.d2l=function(b,T){return i($l(b),T)},r.r2d=r.r2c=function(b){return ph($l(b))},r.d2c=r.r2l=$l,r.c2d=r.l2r=Co,r.c2r=i,r.l2d=ph,r.d2p=function(b,T){return r.l2p(r.d2r(b,T))},r.p2d=function(b){return ph(x(b))},r.r2p=function(b){return r.l2p($l(b))},r.p2r=x,r.cleanPos=Co):r.type==="date"?(r.d2r=r.r2d=wt.identity,r.d2c=r.r2c=r.d2l=r.r2l=o,r.c2d=r.c2r=r.l2d=r.l2r=l,r.d2p=r.r2p=function(b,T,k){return r.l2p(o(b,0,k))},r.p2d=r.p2r=function(b,T,k){return l(x(b),T,k)},r.cleanPos=function(b){return wt.cleanDate(b,to,r.calendar)}):r.type==="category"?(r.d2c=r.d2l=u,r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=v,r.r2c=function(b){var T=d(b);return T!==void 0?T:r.fraction2r(.5)},r.l2r=r.c2r=Co,r.r2l=d,r.d2p=function(b){return r.l2p(r.r2c(b))},r.p2d=function(b){return s(x(b))},r.r2p=r.d2p,r.p2r=x,r.cleanPos=function(b){return typeof b=="string"&&b!==""?b:Co(b)}):r.type==="multicategory"&&(r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=v,r.r2c=function(b){var T=v(b);return T!==void 0?T:r.fraction2r(.5)},r.r2c_just_indices=c,r.l2r=r.c2r=Co,r.r2l=v,r.d2p=function(b){return r.l2p(r.r2c(b))},r.p2d=function(b){return s(x(b))},r.r2p=r.d2p,r.p2r=x,r.cleanPos=function(b){return Array.isArray(b)||typeof b=="string"&&b!==""?b:Co(b)},r.setupMultiCategory=function(b){var T=r._traceIndices,k,M,q=r._matchGroup;if(q&&r._categories.length===0){for(var E in q)if(E!==a){var D=t[_1.id2name(E)];T=T.concat(D._traceIndices)}}var P=[[0,{}],[0,{}]],R=[];for(k=0;kD[1]&&(M[E?0:1]=k),M[0]===M[1]){var P=r.l2r(T),R=r.l2r(k);if(T!==void 0){var z=P+1;k!==void 0&&(z=Math.min(z,R)),M[E?1:0]=z}if(k!==void 0){var O=R+1;T!==void 0&&(O=Math.max(O,P)),M[E?0:1]=O}}}},r.cleanRange=function(b,T){r._cleanRange(b,T),r.limitRange(b)},r._cleanRange=function(b,T){T||(T={}),b||(b="range");var k=wt.nestedProperty(r,b).get(),M,q;if(r.type==="date"?q=wt.dfltRange(r.calendar):n==="y"?q=A1.DFLTRANGEY:r._name==="realaxis"?q=[0,1]:q=T.dfltRange||A1.DFLTRANGEX,q=q.slice(),(r.rangemode==="tozero"||r.rangemode==="nonnegative")&&(q[0]=0),!k||k.length!==2){wt.nestedProperty(r,b).set(q);return}var E=k[0]===null,D=k[1]===null;for(r.type==="date"&&!r.autorange&&(k[0]=wt.cleanDate(k[0],to,r.calendar),k[1]=wt.cleanDate(k[1],to,r.calendar)),M=0;M<2;M++)if(r.type==="date"){if(!wt.isDateTime(k[M],r.calendar)){r[b]=q;break}if(r.r2l(k[0])===r.r2l(k[1])){var P=wt.constrain(r.r2l(k[0]),wt.MIN_MS+1e3,wt.MAX_MS-1e3);k[0]=r.l2r(P-1e3),k[1]=r.l2r(P+1e3);break}}else{if(!Lo(k[M]))if(!(E||D)&&Lo(k[1-M]))k[M]=k[1-M]*(M?10:.1);else{r[b]=q;break}if(k[M]<-g1?k[M]=-g1:k[M]>g1&&(k[M]=g1),k[0]===k[1]){var R=Math.max(1,Math.abs(k[0]*1e-6));k[0]-=R,k[1]+=R}}},r.setScale=function(b){var T=t._size;if(r.overlaying){var k=_1.getFromId({_fullLayout:t},r.overlaying);r.domain=k.domain}var M=b&&r._r?"_r":"range",q=r.calendar;r.cleanRange(M);var E=r.r2l(r[M][0],q),D=r.r2l(r[M][1],q),P=n==="y";if(P?(r._offset=T.t+(1-r.domain[1])*T.h,r._length=T.h*(r.domain[1]-r.domain[0]),r._m=r._length/(E-D),r._b=-r._m*D):(r._offset=T.l+r.domain[0]*T.w,r._length=T.w*(r.domain[1]-r.domain[0]),r._m=r._length/(D-E),r._b=-r._m*E),r._rangebreaks=[],r._lBreaks=0,r._m2=0,r._B=[],r.rangebreaks){var R,z;if(r._rangebreaks=r.locateBreaks(Math.min(E,D),Math.max(E,D)),r._rangebreaks.length){for(R=0;RD&&(O=!O),O&&r._rangebreaks.reverse();var B=O?-1:1;for(r._m2=B*r._length/(Math.abs(D-E)-r._lBreaks),r._B.push(-r._m2*(P?D:E)),R=0;Rq&&(q+=7,Eq&&(q+=24,E=M&&E=M&&b=K.min&&(eeK.max&&(K.max=fe),ie=!1)}ie&&D.push({min:ee,max:fe})}};for(k=0;k{"use strict";var DC=Rr(),Fx=Le(),$ce=It().BADNUM,M1=Fx.isArrayOrTypedArray,Kce=Fx.isDateTime,Qce=Fx.cleanNumber,RC=Math.round;FC.exports=function(r,t,a){var n=r,i=a.noMultiCategory;if(M1(n)&&!n.length)return"-";if(!i&&nve(n))return"multicategory";if(i&&Array.isArray(n[0])){for(var o=[],l=0;li*2}function PC(e){return Math.max(1,(e-1)/1e3)}function ave(e,r){for(var t=e.length,a=PC(t),n=0,i=0,o={},l=0;ln*2}function nve(e){return M1(e[0])&&M1(e[1])}});var yh=N((oRe,GC)=>{"use strict";var ive=Sr(),OC=Rr(),Ql=Le(),S1=It().FP_SAFE,ove=br(),lve=jr(),BC=la(),sve=BC.getFromId,uve=BC.isLinked;GC.exports={applyAutorangeOptions:UC,getAutoRange:Nx,makePadFn:zx,doAutoRange:cve,findExtremes:vve,concatExtremes:Bx};function Nx(e,r){var t,a,n=[],i=e._fullLayout,o=zx(i,r,0),l=zx(i,r,1),s=Bx(e,r),u=s.min,f=s.max;if(u.length===0||f.length===0)return Ql.simpleMap(r.range,r.r2l);var c=u[0].val,v=f[0].val;for(t=1;t0&&(D=_-o(k)-l(M),D>b?P/D>T&&(q=k,E=M,T=P/D):P/_>T&&(q={val:k.val,nopad:1},E={val:M.val,nopad:1},T=P/_));function R(G,U){return Math.max(G,l(U))}if(c===v){var z=c-1,O=c+1;if(x)if(c===0)n=[0,1];else{var B=(c>0?f:u).reduce(R,0),Y=c/(1-Math.min(.5,B/_));n=c>0?[0,Y]:[Y,0]}else w?n=[Math.max(0,z),Math.max(1,O)]:n=[z,O]}else x?(q.val>=0&&(q={val:0,nopad:1}),E.val<=0&&(E={val:0,nopad:1})):w&&(q.val-T*o(q)<0&&(q={val:0,nopad:1}),E.val<=0&&(E={val:1,nopad:1})),T=(E.val-q.val-NC(r,k.val,M.val))/(_-o(q)-l(E)),n=[q.val-T*o(q),E.val+T*l(E)];return n=UC(n,r),r.limitRange&&r.limitRange(),p&&n.reverse(),Ql.simpleMap(n,r.l2r||Number)}function NC(e,r,t){var a=0;if(e.rangebreaks)for(var n=e.locateBreaks(r,t),i=0;i0?t.ppadplus:t.ppadminus)||t.ppad||0),k=b((e._m>0?t.ppadminus:t.ppadplus)||t.ppad||0),M=b(t.vpadplus||t.vpad),q=b(t.vpadminus||t.vpad);if(!u){if(w=1/0,_=-1/0,s)for(c=0;c0&&(w=v),v>_&&v-S1&&(w=v),v>_&&v=P;c--)D(c);return{min:a,max:n,opts:t}}function Ix(e,r,t,a){HC(e,r,t,a,hve)}function Ox(e,r,t,a){HC(e,r,t,a,dve)}function HC(e,r,t,a,n){for(var i=a.tozero,o=a.extrapad,l=!0,s=0;s=t&&(u.extrapad||!o)){l=!1;break}else n(r,u.val)&&u.pad<=t&&(o||!u.extrapad)&&(e.splice(s,1),s--)}if(l){var f=i&&r===0;e.push({val:r,pad:f?0:t,extrapad:f?!1:o})}}function IC(e){return OC(e)&&Math.abs(e)=r}function pve(e,r){var t=r.autorangeoptions;return t&&t.minallowed!==void 0&&q1(r,t.minallowed,t.maxallowed)?t.minallowed:t&&t.clipmin!==void 0&&q1(r,t.clipmin,t.clipmax)?Math.max(e,r.d2l(t.clipmin)):e}function yve(e,r){var t=r.autorangeoptions;return t&&t.maxallowed!==void 0&&q1(r,t.minallowed,t.maxallowed)?t.maxallowed:t&&t.clipmax!==void 0&&q1(r,t.clipmin,t.clipmax)?Math.min(e,r.d2l(t.clipmax)):e}function q1(e,r,t){return r!==void 0&&t!==void 0?(r=e.d2l(r),t=e.d2l(t),r=s&&(i=s,t=s),o<=s&&(o=s,a=s)}}return t=pve(t,r),a=yve(a,r),[t,a]}});var zr=N((lRe,vE)=>{"use strict";var di=Sr(),ua=Rr(),Kf=ta(),gh=br(),xr=Le(),Qf=xr.strTranslate,cu=Ea(),mve=Jf(),bh=Tr(),Zn=jr(),gve=hi(),VC=ux(),Ha=It(),bve=Ha.ONEMAXYEAR,E1=Ha.ONEAVGYEAR,D1=Ha.ONEMINYEAR,xve=Ha.ONEMAXQUARTER,Vx=Ha.ONEAVGQUARTER,R1=Ha.ONEMINQUARTER,_ve=Ha.ONEMAXMONTH,ec=Ha.ONEAVGMONTH,P1=Ha.ONEMINMONTH,Xn=Ha.ONEWEEK,nn=Ha.ONEDAY,es=nn/2,Do=Ha.ONEHOUR,xh=Ha.ONEMIN,F1=Ha.ONESEC,wve=Ha.ONEMILLI,Tve=Ha.ONEMICROSEC,vu=Ha.MINUS_SIGN,z1=Ha.BADNUM,Yx={K:"zeroline"},jx={K:"gridline",L:"path"},Wx={K:"minor-gridline",L:"path"},rE={K:"tick",L:"path"},YC={K:"tick",L:"text"},jC={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},I1=Wa(),mh=I1.MID_SHIFT,hu=I1.CAP_SHIFT,_h=I1.LINE_SPACING,Ave=I1.OPPOSITE_SIDE,N1=3,je=vE.exports={};je.setConvert=$f();var Mve=k1(),cl=la(),kve=cl.idSort,Sve=cl.isLinked;je.id2name=cl.id2name;je.name2id=cl.name2id;je.cleanId=cl.cleanId;je.list=cl.list;je.listIds=cl.listIds;je.getFromId=cl.getFromId;je.getFromTrace=cl.getFromTrace;var tE=yh();je.getAutoRange=tE.getAutoRange;je.findExtremes=tE.findExtremes;var qve=1e-4;function $x(e){var r=(e[1]-e[0])*qve;return[e[0]-r,e[1]+r]}je.coerceRef=function(e,r,t,a,n,i){var o=a.charAt(a.length-1),l=t._fullLayout._subplots[o+"axis"],s=a+"ref",u={};return n||(n=l[0]||(typeof i=="string"?i:i[0])),i||(i=n),l=l.concat(l.map(function(f){return f+" domain"})),u[s]={valType:"enumerated",values:l.concat(i?typeof i=="string"?[i]:i:[]),dflt:n},xr.coerce(e,r,u,s)};je.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};je.coercePosition=function(e,r,t,a,n,i){var o,l,s=je.getRefType(a);if(s!=="range")o=xr.ensureNumber,l=t(n,i);else{var u=je.getFromId(r,a);i=u.fraction2r(i),l=t(n,i),o=u.cleanPos}e[n]=o(l)};je.cleanPosition=function(e,r,t){var a=t==="paper"||t==="pixel"?xr.ensureNumber:je.getFromId(r,t).cleanPos;return a(e)};je.redrawComponents=function(e,r){r=r||je.listIds(e);var t=e._fullLayout;function a(n,i,o,l){for(var s=gh.getComponentMethod(n,i),u={},f=0;f2e-6||((t-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};je.saveRangeInitial=function(e,r){for(var t=je.list(e,"",!0),a=!1,n=0;nc*.3||u(a)||u(n))){var v=t.dtick/2;e+=e+vo){var l=Number(t.substr(1));i.exactYears>o&&l%12===0?e=je.tickIncrement(e,"M6","reverse")+nn*1.5:i.exactMonths>o?e=je.tickIncrement(e,"M1","reverse")+nn*15.5:e-=es;var s=je.tickIncrement(e,t);if(s<=a)return s}return e}je.prepMinorTicks=function(e,r,t){if(!r.minor.dtick){delete e.dtick;var a=r.dtick&&ua(r._tmin),n;if(a){var i=je.tickIncrement(r._tmin,r.dtick,!0);n=[r._tmin,i*.99+r._tmin*.01]}else{var o=xr.simpleMap(r.range,r.r2l);n=[o[0],.8*o[0]+.2*o[1]]}if(e.range=xr.simpleMap(n,r.l2r),e._isMinor=!0,je.prepTicks(e,t),a){var l=ua(r.dtick),s=ua(e.dtick),u=l?r.dtick:+r.dtick.substring(1),f=s?e.dtick:+e.dtick.substring(1);l&&s?Hx(u,f)?u===2*Xn&&f===2*nn&&(e.dtick=Xn):u===2*Xn&&f===3*nn?e.dtick=Xn:u===Xn&&!(r._input.minor||{}).nticks?e.dtick=nn:XC(u/f,2.5)?e.dtick=u/2:e.dtick=u:String(r.dtick).charAt(0)==="M"?s?e.dtick="M1":Hx(u,f)?u>=12&&f===2&&(e.dtick="M3"):e.dtick=r.dtick:String(e.dtick).charAt(0)==="L"?String(r.dtick).charAt(0)==="L"?Hx(u,f)||(e.dtick=XC(u/f,2.5)?r.dtick/2:r.dtick):e.dtick="D1":e.dtick==="D2"&&+r.dtick>1&&(e.dtick=1)}e.range=r.range}r.minor._tick0Init===void 0&&(e.tick0=r.tick0)};function Hx(e,r){return Math.abs((e/r+.5)%1-.5)<.001}function XC(e,r){return Math.abs(e/r-1)<.001}je.prepTicks=function(e,r){var t=xr.simpleMap(e.range,e.r2l,void 0,void 0,r);if(e.tickmode==="auto"||!e.dtick){var a=e.nticks,n;a||(e.type==="category"||e.type==="multicategory"?(n=e.tickfont?xr.bigFont(e.tickfont.size||12):15,a=e._length/n):(n=e._id.charAt(0)==="y"?40:80,a=xr.constrain(e._length/n,4,9)+1),e._name==="radialaxis"&&(a*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(a*=100),e._roughDTick=Math.abs(t[1]-t[0])/a,je.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(i=a-1,o=a):(i=a,o=a);var l=e[i].value,s=e[o].value,u=Math.abs(s-l),f=t||u,c=0;f>=D1?u>=D1&&u<=bve?c=u:c=E1:t===Vx&&f>=R1?u>=R1&&u<=xve?c=u:c=Vx:f>=P1?u>=P1&&u<=_ve?c=u:c=ec:t===Xn&&f>=Xn?c=Xn:f>=nn?c=nn:t===es&&f>=es?c=es:t===Do&&f>=Do&&(c=Do);var v;c>=u&&(c=u,v=!0);var d=n+c;if(r.rangebreaks&&c>0){for(var p=84,y=0,m=0;mXn&&(c=u)}(c>0||a===0)&&(e[a].periodX=n+c/2)}}je.calcTicks=function(r,t){for(var a=r.type,n=r.calendar,i=r.ticklabelstep,o=r.ticklabelmode==="period",l=r.range[0]>r.range[1],s=!r.ticklabelindex||xr.isArrayOrTypedArray(r.ticklabelindex)?r.ticklabelindex:[r.ticklabelindex],u=xr.simpleMap(r.range,r.r2l,void 0,void 0,t),f=u[1]=(_?0:1);b--){var T=!b;b?(r._dtickInit=r.dtick,r._tick0Init=r.tick0):(r.minor._dtickInit=r.minor.dtick,r.minor._tick0Init=r.minor.tick0);var k=b?r:xr.extendFlat({},r,r.minor);if(T?je.prepMinorTicks(k,r,t):je.prepTicks(k,t),k.tickmode==="array"){b?(m=[],p=JC(r,!T)):(x=[],y=JC(r,!T));continue}if(k.tickmode==="sync"){m=[],p=Pve(r);continue}var M=$x(u),q=M[0],E=M[1],D=ua(k.dtick),P=a==="log"&&!(D||k.dtick.charAt(0)==="L"),R=je.tickFirst(k,t);if(b){if(r._tmin=R,R=E:O<=E;O=je.tickIncrement(O,G,f,n)){if(b&&B++,k.rangebreaks&&!f){if(O=v)break}if(m.length>d||O===z)break;z=O;var U={value:O};b?(P&&O!==(O|0)&&(U.simpleLabel=!0),i>1&&B%i&&(U.skipLabel=!0),m.push(U)):(U.minor=!0,x.push(U))}}if(!x||x.length<2)s=!1;else{var V=(x[1].value-x[0].value)*(l?-1:1);ihe(V,r.tickformat)||(s=!1)}if(!s)w=m;else{var J=m.concat(x);o&&m.length&&(J=J.slice(1)),J=J.sort(function(Ie,Ue){return Ie.value-Ue.value}).filter(function(Ie,Ue,Be){return Ue===0||Ie.value!==Be[Ue-1].value});var Z=J.map(function(Ie,Ue){return Ie.minor===void 0&&!Ie.skipLabel?Ue:null}).filter(function(Ie){return Ie!==null});Z.forEach(function(Ie){s.map(function(Ue){var Be=Ie+Ue;Be>=0&&Be-1;oe--){if(m[oe].drop){m.splice(oe,1);continue}m[oe].value=Gx(m[oe].value,r);var W=r.c2p(m[oe].value);(ce?Q>W-j:Qv||Cev&&(Be.periodX=v),Cen&&vE1)r/=E1,a=n(10),e.dtick="M"+12*Eo(r,a,L1);else if(i>ec)r/=ec,e.dtick="M"+Eo(r,1,$C);else if(i>nn){if(e.dtick=Eo(r,nn,e._hasDayOfWeekBreaks?[1,2,7,14]:Fve),!t){var o=je.getTickFormat(e),l=e.ticklabelmode==="period";l&&(e._rawTick0=e.tick0),/%[uVW]/.test(o)?e.tick0=xr.dateTick0(e.calendar,2):e.tick0=xr.dateTick0(e.calendar,1),l&&(e._dowTick0=e.tick0)}}else i>Do?e.dtick=Eo(r,Do,$C):i>xh?e.dtick=Eo(r,xh,KC):i>F1?e.dtick=Eo(r,F1,KC):(a=n(10),e.dtick=Eo(r,a,L1))}else if(e.type==="log"){e.tick0=0;var s=xr.simpleMap(e.range,e.r2l);if(e._isMinor&&(r*=1.5),r>.7)e.dtick=Math.ceil(r);else if(Math.abs(s[1]-s[0])<1){var u=1.5*Math.abs((s[1]-s[0])/r);r=Math.abs(Math.pow(10,s[1])-Math.pow(10,s[0]))/u,a=n(10),e.dtick="L"+Eo(r,a,L1)}else e.dtick=r>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(r,1))):r5(e)?(e.tick0=0,a=1,e.dtick=Eo(r,a,Nve)):(e.tick0=0,a=n(10),e.dtick=Eo(r,a,L1));if(e.dtick===0&&(e.dtick=1),!ua(e.dtick)&&typeof e.dtick!="string"){var f=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(f)}};function oE(e){var r=e.dtick;if(e._tickexponent=0,!ua(r)&&typeof r!="string"&&(r=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var t=e.r2l(e.tick0),a=e.l2r(t).replace(/(^-|i)/g,""),n=a.length;if(String(r).charAt(0)==="M")n>10||a.substr(5)!=="01-01"?e._tickround="d":e._tickround=+r.substr(1)%12===0?"y":"m";else if(r>=nn&&n<=10||r>=nn*15)e._tickround="d";else if(r>=xh&&n<=16||r>=Do)e._tickround="M";else if(r>=F1&&n<=19||r>=xh)e._tickround="S";else{var i=e.l2r(t+r).replace(/^-/,"").length;e._tickround=Math.max(n,i)-20,e._tickround<0&&(e._tickround=4)}}else if(ua(r)||r.charAt(0)==="L"){var o=e.range.map(e.r2d||Number);ua(r)||(r=Number(r.substr(1))),e._tickround=2-Math.floor(Math.log(r)/Math.LN10+.01);var l=Math.max(Math.abs(o[0]),Math.abs(o[1])),s=Math.floor(Math.log(l)/Math.LN10+.01),u=e.minexponent===void 0?3:e.minexponent;Math.abs(s)>u&&(rc(e.exponentformat)&&e.exponentformat!=="SI extended"&&!Kx(s)||rc(e.exponentformat)&&e.exponentformat==="SI extended"&&!Qx(s)?e._tickexponent=3*Math.round((s-1)/3):e._tickexponent=s)}else e._tickround=null}je.tickIncrement=function(e,r,t,a){var n=t?-1:1;if(ua(r))return xr.increment(e,n*r);var i=r.charAt(0),o=n*Number(r.substr(1));if(i==="M")return xr.incrementMonth(e,o,a);if(i==="L")return Math.log(Math.pow(10,e)+o)/Math.LN10;if(i==="D"){var l=r==="D2"?iE:nE,s=e+n*.01,u=xr.roundUp(xr.mod(s,1),l,t);return Math.floor(s)+Math.log(di.round(Math.pow(10,u),1))/Math.LN10}throw"unrecognized dtick "+String(r)};je.tickFirst=function(e,r){var t=e.r2l||Number,a=xr.simpleMap(e.range,t,void 0,void 0,r),n=a[1]=0&&x<=e._length?m:null};if(i&&xr.isArrayOrTypedArray(e.ticktext)){var c=xr.simpleMap(e.range,e.r2l),v=(Math.abs(c[1]-c[0])-(e._lBreaks||0))/1e4;for(u=0;u"+l;else{var u=Th(e),f=e._trueSide||e.side;(!u&&f==="top"||u&&f==="bottom")&&(o+="
")}r.text=o}function Ive(e,r,t,a,n){var i=e.dtick,o=r.x,l=e.tickformat,s=typeof i=="string"&&i.charAt(0);if(n==="never"&&(n=""),a&&s!=="L"&&(i="L3",s="L"),l||s==="L")r.text=wh(Math.pow(10,o),e,n,a);else if(ua(i)||s==="D"&&(e.minorloglabels==="complete"||xr.mod(o+.01,1)<.1)){var u;e.minorloglabels==="complete"&&!(xr.mod(o+.01,1)<.1)&&(u=!0,r.fontSize*=.75);var f=Math.pow(10,o).toExponential(0),c=f.split("e"),v=+c[1],d=Math.abs(v),p=e.exponentformat;p==="power"||rc(p)&&p!=="SI extended"&&Kx(v)||rc(p)&&p==="SI extended"&&Qx(v)?(r.text=c[0],d>0&&(r.text+="x10"),r.text==="1x10"&&(r.text="10"),v!==0&&v!==1&&(r.text+=""+(v>0?"":vu)+d+""),r.fontSize*=1.25):(p==="e"||p==="E")&&d>2?r.text=c[0]+p+(v>0?"+":vu)+d:(r.text=wh(Math.pow(10,o),e,"","fakehover"),i==="D1"&&e._id.charAt(0)==="y"&&(r.dy-=r.fontSize/6))}else if(s==="D")r.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,xr.mod(o,1)))),r.fontSize*=.75;else throw"unrecognized dtick "+String(i);if(e.dtick==="D1"){var y=String(r.text).charAt(0);(y==="0"||y==="1")&&(e._id.charAt(0)==="y"?r.dx-=r.fontSize/4:(r.dy+=r.fontSize/2,r.dx+=(e.range[1]>e.range[0]?1:-1)*r.fontSize*(o<0?.5:.25)))}}function Ove(e,r){var t=e._categories[Math.round(r.x)];t===void 0&&(t=""),r.text=String(t)}function Bve(e,r,t){var a=Math.round(r.x),n=e._categories[a]||[],i=n[1]===void 0?"":String(n[1]),o=n[0]===void 0?"":String(n[0]);t?r.text=o+" - "+i:(r.text=i,r.text2=o)}function Hve(e,r,t,a,n){n==="never"?n="":e.showexponent==="all"&&Math.abs(r.x/e.dtick)<1e-6&&(n="hide"),r.text=wh(r.x,e,n,a)}function Uve(e,r,t,a,n){if(e.thetaunit==="radians"&&!t){var i=r.x/180;if(i===0)r.text="0";else{var o=Gve(i);if(o[1]>=100)r.text=wh(xr.deg2rad(r.x),e,n,a);else{var l=r.x<0;o[1]===1?o[0]===1?r.text="\u03C0":r.text=o[0]+"\u03C0":r.text=["",o[0],"","\u2044","",o[1],"","\u03C0"].join(""),l&&(r.text=vu+r.text)}}}else r.text=wh(r.x,e,n,a)}function Gve(e){function r(l,s){return Math.abs(l-s)<=1e-6}function t(l,s){return r(s,0)?l:t(s,l%s)}function a(l){for(var s=1;!r(Math.round(l*s)/s,l);)s*=10;return s}var n=a(e),i=e*n,o=Math.abs(t(i,n));return[Math.round(i/o),Math.round(n/o)]}var sE=["f","p","n","\u03BC","m","","k","M","G","T"],Vve=["q","r","y","z","a",...sE,"P","E","Z","Y","R","Q"],rc=e=>["SI","SI extended","B"].includes(e);function Kx(e){return e>14||e<-15}function Qx(e){return e>32||e<-30}function Yve(e,r){return rc(r)?!!(r==="SI extended"&&Qx(e)||r!=="SI extended"&&Kx(e)):!1}function wh(e,r,t,a){var n=e<0,i=r._tickround,o=t||r.exponentformat||"B",l=r._tickexponent,s=je.getTickFormat(r),u=r.separatethousands;if(a){var f={exponentformat:o,minexponent:r.minexponent,dtick:r.showexponent==="none"?r.dtick:ua(e)&&Math.abs(e)||1,range:r.showexponent==="none"?r.range.map(r.r2d):[0,e||1]};oE(f),i=(Number(f._tickround)||0)+4,l=f._tickexponent,r.hoverformat&&(s=r.hoverformat)}if(s)return r._numFormat(s)(e).replace(/-/g,vu);var c=Math.pow(10,-i)/2;if(o==="none"&&(l=0),e=Math.abs(e),e"+p+"
":o==="B"&&l===9?e+="B":rc(o)&&(e+=o==="SI extended"?Vve[l/3+10]:sE[l/3+5])}return n?vu+e:e}je.getTickFormat=function(e){var r;function t(s){return typeof s!="string"?s:Number(s.replace("M",""))*ec}function a(s,u){var f=["L","D"];if(typeof s==typeof u){if(typeof s=="number")return s-u;var c=f.indexOf(s.charAt(0)),v=f.indexOf(u.charAt(0));return c===v?Number(s.replace(/(L|D)/g,""))-Number(u.replace(/(L|D)/g,"")):c-v}else return typeof s=="number"?1:-1}function n(s,u,f){var c=f||function(p){return p},v=u[0],d=u[1];return(!v&&typeof v!="number"||c(v)<=c(s))&&(!d&&typeof d!="number"||c(d)>=c(s))}function i(s,u){var f=u[0]===null,c=u[1]===null,v=a(s,u[0])>=0,d=a(s,u[1])<=0;return(f||v)&&(c||d)}var o,l;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(r=0;r=0&&n.unshift(n.splice(f,1).shift())}});var l={false:{left:0,right:0}};return xr.syncOrAsync(n.map(function(s){return function(){if(s){var u=je.getFromId(e,s);t||(t={}),t.axShifts=l,t.overlayingShiftedAx=o;var f=je.drawOne(e,u,t);return u._shiftPusher&&Jx(u,u._fullDepth||0,l,!0),u._r=u.range.slice(),u._rl=xr.simpleMap(u._r,u.r2l),f}}}))};je.drawOne=function(e,r,t){t=t||{};var a=t.axShifts||{},n=t.overlayingShiftedAx||[],i,o,l;r.setScale();var s=e._fullLayout,u=r._id,f=u.charAt(0),c=je.counterLetter(u),v=s._plots[r._mainSubplot],d=r.zerolinelayer==="above traces";if(!v)return;if(r._shiftPusher=r.autoshift||n.indexOf(r._id)!==-1||n.indexOf(r.overlaying)!==-1,r._shiftPusher&r.anchor==="free"){var p=r.linewidth/2||0;r.ticks==="inside"&&(p+=r.ticklen),Jx(r,p,a,!0),Jx(r,r.shift||0,a,!1)}(t.skipTitle!==!0||r._shift===void 0)&&(r._shift=nhe(r,a));var y=v[f+"axislayer"],m=r._mainLinePosition,x=m+=r._shift,w=r._mainMirrorPosition,_=r._vals=je.calcTicks(r),b=[r.mirror,x,w].join("_");for(i=0;i<_.length;i++)_[i].axInfo=b;r._selections={},r._tickAngles&&(r._prevTickAngles=r._tickAngles),r._tickAngles={},r._depth=null;var T={};function k(Ee){var Ie=u+(Ee||"tick");return T[Ie]||(T[Ie]=Xve(r,Ie,x)),T[Ie]}if(r.visible){var M=je.makeTransTickFn(r),q=je.makeTransTickLabelFn(r),E,D,P=r.ticks==="inside",R=r.ticks==="outside";if(r.tickson==="boundaries"){var z=jve(r,_);D=je.clipEnds(r,z),E=P?D:z}else D=je.clipEnds(r,_),E=P&&r.ticklabelmode!=="period"?D:_;var O=r._gridVals=D,B=Zve(r,_);if(!s._hasOnlyLargeSploms){var Y=r._subplotsWith,G={};for(i=0;i0?Ce.bottom-Ue:0,Be))));var Ae=0,Xe=0;if(r._shiftPusher&&(Ae=Math.max(Be,Ce.height>0?Ee==="l"?Ue-Ce.left:Ce.right-Ue:0),r.title.text!==s._dfltTitle[f]&&(Xe=(r._titleStandoff||0)+(r._titleScoot||0),Ee==="l"&&(Xe+=eE(r))),r._fullDepth=Math.max(Ae,Xe)),r.automargin){Oe={x:0,y:0,r:0,l:0,t:0,b:0};var vr=[0,1],Fe=typeof r._shift=="number"?r._shift:0;if(f==="x"){if(Ee==="b"?Oe[Ee]=r._depth:(Oe[Ee]=r._depth=Math.max(Ce.width>0?Ue-Ce.top:0,Be),vr.reverse()),Ce.width>0){var Te=Ce.right-(r._offset+r._length);Te>0&&(Oe.xr=1,Oe.r=Te);var qe=r._offset-Ce.left;qe>0&&(Oe.xl=0,Oe.l=qe)}}else if(Ee==="l"?(r._depth=Math.max(Ce.height>0?Ue-Ce.left:0,Be),Oe[Ee]=r._depth-Fe):(r._depth=Math.max(Ce.height>0?Ce.right-Ue:0,Be),Oe[Ee]=r._depth+Fe,vr.reverse()),Ce.height>0){var Ge=Ce.bottom-(r._offset+r._length);Ge>0&&(Oe.yb=0,Oe.b=Ge);var Je=r._offset-Ce.top;Je>0&&(Oe.yt=1,Oe.t=Je)}Oe[c]=r.anchor==="free"?r.position:r._anchorAxis.domain[vr[0]],r.title.text!==s._dfltTitle[f]&&(Oe[Ee]+=eE(r)+(r.title.standoff||0)),r.mirror&&r.anchor!=="free"&&(He={x:0,y:0,r:0,l:0,t:0,b:0},He[Ie]=r.linewidth,r.mirror&&r.mirror!==!0&&(He[Ie]+=Be),r.mirror===!0||r.mirror==="ticks"?He[c]=r._anchorAxis.domain[vr[1]]:(r.mirror==="all"||r.mirror==="allticks")&&(He[c]=[r._counterDomainMin,r._counterDomainMax][vr[1]]))}Ne&&(se=gh.getComponentMethod("rangeslider","autoMarginOpts")(e,r)),typeof r.automargin=="string"&&(QC(Oe,r.automargin),QC(He,r.automargin)),Kf.autoMargin(e,e5(r),Oe),Kf.autoMargin(e,fE(r),He),Kf.autoMargin(e,cE(r),se)}),xr.syncOrAsync(ye)}};function QC(e,r){if(e){var t=Object.keys(jC).reduce(function(a,n){return r.indexOf(n)!==-1&&jC[n].forEach(function(i){a[i]=1}),a},{});Object.keys(e).forEach(function(a){t[a]||(a.length===1?e[a]=0:delete e[a])})}}function jve(e,r){var t=[],a,n=function(i,o){var l=i.xbnd[o];l!==null&&t.push(xr.extendFlat({},i,{x:l}))};if(r.length){for(a=0;ae.range[1],l=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,s=!l;if(t){var u=o?-1:1;t=t*u}if(a){var f=e.side,c=l&&(f==="top"||f==="left")||s&&(f==="bottom"||f==="right")?1:-1;a=a*c}return e._id.charAt(0)==="x"?function(v){return Qf(n+e._offset+e.l2p(Zx(v))+t,i+a)}:function(v){return Qf(i+a,n+e._offset+e.l2p(Zx(v))+t)}};function Zx(e){return e.periodX!==void 0?e.periodX:e.x}function Jve(e){var r=e.ticklabelposition||"",t=e.tickson||"",a=function(p){return r.indexOf(p)!==-1},n=a("top"),i=a("left"),o=a("right"),l=a("bottom"),s=a("inside"),u=t!=="boundaries"&&(l||i||n||o);if(!u&&!s)return[0,0];var f=e.side,c=u?(e.tickwidth||0)/2:0,v=N1,d=e.tickfont?e.tickfont.size:12;return(l||n)&&(c+=d*hu,v+=(e.linewidth||0)/2),(i||o)&&(c+=(e.linewidth||0)/2,v+=N1),s&&f==="top"&&(v-=d*(1-hu)),(i||n)&&(c=-c),(f==="bottom"||f==="right")&&(v=-v),[u?c:0,s?v:0]}je.makeTickPath=function(e,r,t,a){a||(a={});var n=a.minor;if(n&&!e.minor)return"";var i=a.len!==void 0?a.len:n?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),l=(e.linewidth||1)/2;return o==="x"?"M0,"+(r+l*t)+"v"+i*t:"M"+(r+l*t)+",0h"+i*t};je.makeLabelFns=function(e,r,t){var a=e.ticklabelposition||"",n=e.tickson||"",i=function(z){return a.indexOf(z)!==-1},o=i("top"),l=i("left"),s=i("right"),u=i("bottom"),f=n!=="boundaries"&&(u||l||o||s),c=i("inside"),v=a==="inside"&&e.ticks==="inside"||!c&&e.ticks==="outside"&&n!=="boundaries",d=0,p=0,y=v?e.ticklen:0;if(c?y*=-1:f&&(y=0),v&&(d+=y,t)){var m=xr.deg2rad(t);d=y*Math.cos(m)+1,p=y*Math.sin(m)}e.showticklabels&&(v||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(c?-1:1);var x={labelStandoff:d,labelShift:p},w,_,b,T,k=0,M=e.side,q=e._id.charAt(0),E=e.tickangle,D;if(q==="x")D=!c&&M==="bottom"||c&&M==="top",T=D?1:-1,c&&(T*=-1),w=p*T,_=r+d*T,b=D?1:-.2,Math.abs(E)===90&&(c?b+=mh:E===-90&&M==="bottom"?b=hu:E===90&&M==="top"?b=mh:b=.5,k=mh/2*(E/90)),x.xFn=function(z){return z.dx+w+k*z.fontSize},x.yFn=function(z){return z.dy+_+z.fontSize*b},x.anchorFn=function(z,O){if(f){if(l)return"end";if(s)return"start"}return!ua(O)||O===0||O===180?"middle":O*T<0!==c?"end":"start"},x.heightFn=function(z,O,B){return O<-60||O>60?-.5*B:e.side==="top"!==c?-B:0};else if(q==="y"){if(D=!c&&M==="left"||c&&M==="right",T=D?1:-1,c&&(T*=-1),w=d,_=p*T,b=0,!c&&Math.abs(E)===90&&(E===-90&&M==="left"||E===90&&M==="right"?b=hu:b=.5),c){var P=ua(E)?+E:0;if(P!==0){var R=xr.deg2rad(P);k=Math.abs(Math.sin(R))*hu*T,b=0}}x.xFn=function(z){return z.dx+r-(w+z.fontSize*b)*T+k*z.fontSize},x.yFn=function(z){return z.dy+_+z.fontSize*mh},x.anchorFn=function(z,O){return ua(O)&&Math.abs(O)===90?"middle":D?"end":"start"},x.heightFn=function(z,O,B){return e.side==="right"&&(O*=-1),O<-30?-B:O<30?-.5*B:0}}return x};function O1(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}je.drawTicks=function(e,r,t){t=t||{};var a=r._id+"tick",n=[].concat(r.minor&&r.minor.ticks?t.vals.filter(function(o){return o.minor&&!o.noTick}):[]).concat(r.ticks?t.vals.filter(function(o){return!o.minor&&!o.noTick}):[]),i=t.layer.selectAll("path."+a).data(n,O1);i.exit().remove(),i.enter().append("path").classed(a,1).classed("ticks",1).classed("crisp",t.crisp!==!1).each(function(o){return bh.stroke(di.select(this),o.minor?r.minor.tickcolor:r.tickcolor)}).style("stroke-width",function(o){return Zn.crispRound(e,o.minor?r.minor.tickwidth:r.tickwidth,1)+"px"}).attr("d",t.path).style("display",null),B1(r,[rE]),i.attr("transform",t.transFn)};je.drawGrid=function(e,r,t){if(t=t||{},r.tickmode!=="sync"){var a=r._id+"grid",n=r.minor&&r.minor.showgrid,i=n?t.vals.filter(function(x){return x.minor}):[],o=r.showgrid?t.vals.filter(function(x){return!x.minor}):[],l=t.counterAxis;if(l&&je.shouldShowZeroLine(e,r,l))for(var s=r.tickmode==="array",u=0;u=0;p--){var y=p?v:d;if(y){var m=y.selectAll("path."+a).data(p?o:i,O1);m.exit().remove(),m.enter().append("path").classed(a,1).classed("crisp",t.crisp!==!1),m.attr("transform",t.transFn).attr("d",t.path).each(function(x){return bh.stroke(di.select(this),x.minor?r.minor.gridcolor:r.gridcolor||"#ddd")}).style("stroke-dasharray",function(x){return Zn.dashStyle(x.minor?r.minor.griddash:r.griddash,x.minor?r.minor.gridwidth:r.gridwidth)}).style("stroke-width",function(x){return(x.minor?c:r._gw)+"px"}).style("display",null),typeof t.path=="function"&&m.attr("d",t.path)}}B1(r,[jx,Wx])}};je.drawZeroLine=function(e,r,t){t=t||t;var a=r._id+"zl",n=je.shouldShowZeroLine(e,r,t.counterAxis),i=t.layer.selectAll("path."+a).data(n?[{x:0,id:r._id}]:[]);i.exit().remove(),i.enter().append("path").classed(a,1).classed("zl",1).classed("crisp",t.crisp!==!1).each(function(){t.layer.selectAll("path").sort(function(o,l){return kve(o.id,l.id)})}),i.attr("transform",t.transFn).attr("d",t.path).call(bh.stroke,r.zerolinecolor||bh.defaultLine).style("stroke-width",Zn.crispRound(e,r.zerolinewidth,r._gw||1)+"px").style("display",null),B1(r,[Yx])};je.drawLabels=function(e,r,t){t=t||{};var a=e._fullLayout,n=r._id,i=r.zerolinelayer==="above traces",o=t.cls||n+"tick",l=t.vals.filter(function(V){return V.text}),s=t.labelFns,u=t.secondary?0:r.tickangle,f=(r._prevTickAngles||{})[o],c=t.layer.selectAll("g."+o).data(r.showticklabels?l:[],O1),v=[];c.enter().append("g").classed(o,1).append("text").attr("text-anchor","middle").each(function(V){var J=di.select(this),Z=e._promises.length;J.call(cu.positionText,s.xFn(V),s.yFn(V)).call(Zn.font,{family:V.font,size:V.fontSize,color:V.fontColor,weight:V.fontWeight,style:V.fontStyle,variant:V.fontVariant,textcase:V.fontTextcase,lineposition:V.fontLineposition,shadow:V.fontShadow}).text(V.text).call(cu.convertToTspans,e),e._promises[Z]?v.push(e._promises.pop().then(function(){d(J,u)})):d(J,u)}),B1(r,[YC]),c.exit().remove(),t.repositionOnUpdate&&c.each(function(V){di.select(this).select("text").call(cu.positionText,s.xFn(V),s.yFn(V))});function d(V,J){V.each(function(Z){var ee=di.select(this),fe=ee.select(".text-math-group"),ie=s.anchorFn(Z,J),ue=t.transFn.call(ee.node(),Z)+(ua(J)&&+J!=0?" rotate("+J+","+s.xFn(Z)+","+(s.yFn(Z)-Z.fontSize/2)+")":""),K=cu.lineCount(ee),_e=_h*Z.fontSize,le=s.heightFn(Z,ua(J)?+J:0,(K-1)*_e);if(le&&(ue+=Qf(0,le)),fe.empty()){var he=ee.select("text");he.attr({transform:ue,"text-anchor":ie}),he.style("display",null),r._adjustTickLabelsOverflow&&r._adjustTickLabelsOverflow()}else{var oe=Zn.bBox(fe.node()).width,ce=oe*{end:-.5,start:.5}[ie];fe.attr("transform",ue+Qf(ce,0))}})}r._adjustTickLabelsOverflow=function(){var V=r.ticklabeloverflow;if(!(!V||V==="allow")){var J=V.indexOf("hide")!==-1,Z=r._id.charAt(0)==="x",ee=0,fe=Z?e._fullLayout.width:e._fullLayout.height;if(V.indexOf("domain")!==-1){var ie=xr.simpleMap(r.range,r.r2l);ee=r.l2p(ie[0])+r._offset,fe=r.l2p(ie[1])+r._offset}var ue=Math.min(ee,fe),K=Math.max(ee,fe),_e=r.side,le=1/0,he=-1/0;c.each(function(Q){var W=di.select(this),pe=W.select(".text-math-group");if(pe.empty()){var me=Zn.bBox(W.node()),ye=0;Z?(me.right>K||me.leftK||me.top+(r.tickangle?0:Q.fontSize/4)r["_visibleLabelMin_"+ie._id]?W.style("display","none"):K.K==="tick"&&!ue&&W.node().style.display!=="none"&&W.style("display",null)})})})})},d(c,f+1?f:u);function p(){return v.length&&Promise.all(v)}var y=null;function m(){if(d(c,u),l.length&&r.autotickangles&&(r.type!=="log"||String(r.dtick).charAt(0)!=="D")){y=r.autotickangles[0];var V=0,J=[],Z,ee=1;c.each(function(Oe){V=Math.max(V,Oe.fontSize);var He=r.l2p(Oe.x),se=Xx(this),Ae=Zn.bBox(se.node());ee=Math.max(ee,cu.lineCount(se)),J.push({top:0,bottom:10,height:10,left:He-Ae.width/2,right:He+Ae.width/2+2,width:Ae.width+2})});var fe=(r.tickson==="boundaries"||r.showdividers)&&!t.secondary,ie=l.length,ue=Math.abs((l[ie-1].x-l[0].x)*r._m)/(ie-1),K=fe?ue/2:ue,_e=fe?r.ticklen:V*1.25*ee,le=Math.sqrt(Math.pow(K,2)+Math.pow(_e,2)),he=K/le,oe=r.autotickangles.map(function(Oe){return Oe*Math.PI/180}),ce=oe.find(function(Oe){return Math.abs(Math.cos(Oe))<=he});ce===void 0&&(ce=oe.reduce(function(Oe,He){return Math.abs(Math.cos(Oe))Y*B&&(R=B,E[q]=D[q]=z[q])}var G=Math.abs(R-P);G-T>0?(G-=T,T*=1+T/G):T=0,r._id.charAt(0)!=="y"&&(T=-T),E[M]=_.p2r(_.r2p(D[M])+k*T),_.autorange==="min"||_.autorange==="max reversed"?(E[0]=null,_._rangeInitial0=void 0,_._rangeInitial1=void 0):(_.autorange==="max"||_.autorange==="min reversed")&&(E[1]=null,_._rangeInitial0=void 0,_._rangeInitial1=void 0),a._insideTickLabelsUpdaterange[_._name+".range"]=E}var U=xr.syncOrAsync(x);return U&&U.then&&e._promises.push(U),U};function $ve(e,r,t){var a=r._id+"divider",n=t.vals,i=t.layer.selectAll("path."+a).data(n,O1);i.exit().remove(),i.enter().insert("path",":first-child").classed(a,1).classed("crisp",1).call(bh.stroke,r.dividercolor).style("stroke-width",Zn.crispRound(e,r.dividerwidth,1)+"px"),i.attr("transform",t.transFn).attr("d",t.path)}je.getPxPosition=function(e,r){var t=e._fullLayout._size,a=r._id.charAt(0),n=r.side,i;if(r.anchor!=="free"?i=r._anchorAxis:a==="x"?i={_offset:t.t+(1-(r.position||0))*t.h,_length:0}:a==="y"&&(i={_offset:t.l+(r.position||0)*t.w+r._shift,_length:0}),n==="top"||n==="left")return i._offset;if(n==="bottom"||n==="right")return i._offset+i._length};function eE(e){var r=e.title.font.size,t=(e.title.text.match(cu.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?r*(hu+t*_h):t?r*(t+1)*_h:r}function Kve(e,r){var t=e._fullLayout,a=r._id,n=a.charAt(0),i=r.title.font.size,o,l=(r.title.text.match(cu.BR_TAG_ALL)||[]).length;if(r.title.hasOwnProperty("standoff"))r.side==="bottom"||r.side==="right"?o=r._depth+r.title.standoff+i*hu:(r.side==="top"||r.side==="left")&&(o=r._depth+r.title.standoff+i*(mh+l*_h));else{var s=Th(r);if(r.type==="multicategory")o=r._depth;else{var u=1.5*i;s&&(u=.5*i,r.ticks==="outside"&&(u+=r.ticklen)),o=10+u+(r.linewidth?r.linewidth-1:0)}s||(n==="x"?o+=r.side==="top"?i*(r.showticklabels?1:0):i*(r.showticklabels?1.5:.5):o+=r.side==="right"?i*(r.showticklabels?1:.5):i*(r.showticklabels?.5:0))}var f=je.getPxPosition(e,r),c,v,d;n==="x"?(v=r._offset+r._length/2,d=r.side==="top"?f-o:f+o):(d=r._offset+r._length/2,v=r.side==="right"?f+o:f-o,c={rotate:"-90",offset:0});var p;if(r.type!=="multicategory"){var y=r._selections[r._id+"tick"];if(p={selection:y,side:r.side},y&&y.node()&&y.node().parentNode){var m=Zn.getTranslate(y.node().parentNode);p.offsetLeft=m.x,p.offsetTop=m.y}r.title.hasOwnProperty("standoff")&&(p.pad=0)}return r._titleStandoff=o,mve.draw(e,a+"title",{propContainer:r,propName:r._name+".title.text",placeholder:t._dfltTitle[n],avoid:p,transform:c,attributes:{x:v,y:d,"text-anchor":"middle"}})}je.shouldShowZeroLine=function(e,r,t){var a=xr.simpleMap(r.range,r.r2l);return a[0]*a[1]<=0&&r.zeroline&&(r.type==="linear"||r.type==="-")&&!(r.rangebreaks&&r.maskBreaks(0)===z1)&&(uE(r,0)||!Qve(e,r,t,a)||ehe(e,r))};je.clipEnds=function(e,r){return r.filter(function(t){return uE(e,t.x)})};function uE(e,r){var t=e.l2p(r);return t>1&&t1)for(n=1;n=n.min&&e=Tve:/%L/.test(r)?e>=wve:/%[SX]/.test(r)?e>=F1:/%M/.test(r)?e>=xh:/%[HI]/.test(r)?e>=Do:/%p/.test(r)?e>=es:/%[Aadejuwx]/.test(r)?e>=nn:/%[UVW]/.test(r)?e>=Xn:/%[Bbm]/.test(r)?e>=P1:/%[q]/.test(r)?e>=R1:/%[Yy]/.test(r)?e>=D1:!0}});var dE=N((sRe,hE)=>{"use strict";hE.exports=function(r,t,a){var n,i;if(a){var o=t==="reversed"||t==="min reversed"||t==="max reversed";n=a[o?1:0],i=a[o?0:1]}var l=r("autorangeoptions.minallowed",i===null?n:void 0),s=r("autorangeoptions.maxallowed",n===null?i:void 0);l===void 0&&r("autorangeoptions.clipmin"),s===void 0&&r("autorangeoptions.clipmax"),r("autorangeoptions.include")}});var t5=N((uRe,pE)=>{"use strict";var ohe=dE();pE.exports=function(r,t,a,n){var i=t._template||{},o=t.type||i.type||"-";a("minallowed"),a("maxallowed");var l=a("range");if(!l){var s;!n.noInsiderange&&o!=="log"&&(s=a("insiderange"),s&&(s[0]===null||s[1]===null)&&(t.insiderange=!1,s=void 0),s&&(l=a("range",s)))}var u=t.getAutorangeDflt(l,n),f=a("autorange",u),c;l&&(l[0]===null&&l[1]===null||(l[0]===null||l[1]===null)&&(f==="reversed"||f===!0)||l[0]!==null&&(f==="min"||f==="max reversed")||l[1]!==null&&(f==="max"||f==="min reversed"))&&(l=void 0,delete t.range,t.autorange=!0,c=!0),c||(u=t.getAutorangeDflt(l,n),f=a("autorange",u)),f&&(ohe(a,f,l),(o==="linear"||o==="-")&&a("rangemode")),t.cleanRange()}});var mE=N((fRe,yE)=>{var lhe={left:0,top:0};yE.exports=she;function she(e,r,t){r=r||e.currentTarget||e.srcElement,Array.isArray(t)||(t=[0,0]);var a=e.clientX||0,n=e.clientY||0,i=uhe(r);return t[0]=a-i.left,t[1]=n-i.top,t}function uhe(e){return e===window||e===document||e===document.body?lhe:e.getBoundingClientRect()}});var a5=N((cRe,gE)=>{"use strict";var fhe=Ib();function che(){var e=!1;try{var r=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,r),window.removeEventListener("test",null,r)}catch(t){e=!1}return e}gE.exports=fhe&&che()});var xE=N((vRe,bE)=>{"use strict";bE.exports=function(r,t,a,n,i){var o=(r-a)/(n-a),l=o+t/(n-a),s=(o+l)/2;return i==="left"||i==="bottom"?o:i==="center"||i==="middle"?s:i==="right"||i==="top"?l:o<2/3-s?o:l>4/3-s?l:s}});var TE=N((hRe,wE)=>{"use strict";var _E=Le(),vhe=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];wE.exports=function(r,t,a,n){return a==="left"?r=0:a==="center"?r=1:a==="right"?r=2:r=_E.constrain(Math.floor(r*3),0,2),n==="bottom"?t=0:n==="middle"?t=1:n==="top"?t=2:t=_E.constrain(Math.floor(t*3),0,2),vhe[t][r]}});var ME=N((dRe,AE)=>{"use strict";var hhe=lh(),dhe=Ip(),phe=Qv().getGraphDiv,yhe=Xv(),n5=AE.exports={};n5.wrapped=function(e,r,t){e=phe(e),e._fullLayout&&dhe.clear(e._fullLayout._uid+yhe.HOVERID),n5.raw(e,r,t)};n5.raw=function(r,t){var a=r._fullLayout,n=r._hoverdata;t||(t={}),!(t.target&&!r._dragged&&hhe.triggerHandler(r,"plotly_beforehover",t)===!1)&&(a._hoverlayer.selectAll("g").remove(),a._hoverlayer.selectAll("line").remove(),a._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,t.target&&n&&r.emit("plotly_unhover",{event:t,points:n}))}});var pi=N((pRe,LE)=>{"use strict";var mhe=mE(),i5=Bb(),ghe=a5(),bhe=Le().removeElement,xhe=Ca(),du=LE.exports={};du.align=xE();du.getCursor=TE();var SE=ME();du.unhover=SE.wrapped;du.unhoverRaw=SE.raw;du.init=function(r){var t=r.gd,a=1,n=t._context.doubleClickDelay,i=r.element,o,l,s,u,f,c,v,d;t._mouseDownTime||(t._mouseDownTime=0),i.style.pointerEvents="all",i.onmousedown=m,ghe?(i._ontouchstart&&i.removeEventListener("touchstart",i._ontouchstart),i._ontouchstart=m,i.addEventListener("touchstart",m,{passive:!1})):i.ontouchstart=m;function p(_,b,T){return Math.abs(_)n&&(a=Math.max(a-1,1)),t._dragged)r.doneFn&&r.doneFn();else{var b;c.target===v?b=c:(b={target:v,srcElement:v,toElement:v},Object.keys(c).concat(Object.keys(c.__proto__)).forEach(T=>{var k=c[T];!b[T]&&typeof k!="function"&&(b[T]=k)})),r.clickFn&&r.clickFn(a,b),d||v.dispatchEvent(new MouseEvent("click",_))}t._dragging=!1,t._dragged=!1}};function qE(){var e=document.createElement("div");e.className="dragcover";var r=e.style;return r.position="fixed",r.left=0,r.right=0,r.top=0,r.bottom=0,r.zIndex=999999999,r.background="none",document.body.appendChild(e),e}du.coverSlip=qE;function kE(e){return mhe(e.changedTouches?e.changedTouches[0]:e,document.body)}});var rs=N((yRe,CE)=>{"use strict";CE.exports=function(r,t){(r.attr("class")||"").split(" ").forEach(function(a){a.indexOf("cursor-")===0&&r.classed(a,!1)}),t&&r.classed("cursor-"+t,!0)}});var RE=N((mRe,DE)=>{"use strict";var o5=rs(),Ah="data-savedcursor",EE="!!";DE.exports=function(r,t){var a=r.attr(Ah);if(t){if(!a){for(var n=(r.attr("class")||"").split(" "),i=0;i{"use strict";var l5=ma(),_he=si();PE.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:_he.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:l5({editType:"legend"}),grouptitlefont:l5({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:l5({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var U1=N(H1=>{"use strict";H1.isGrouped=function(r){return(r.traceorder||"").indexOf("grouped")!==-1};H1.isVertical=function(r){return r.orientation!=="h"};H1.isReversed=function(r){return(r.traceorder||"").indexOf("reversed")!==-1}});var c5=N((xRe,FE)=>{"use strict";var u5=br(),Jn=Le(),whe=_t(),The=gn(),Ahe=s5(),Mhe=Lf(),f5=U1();function khe(e,r,t,a){var n=r[e]||{},i=whe.newContainer(t,e);function o(G,U){return Jn.coerce(n,i,Ahe,G,U)}var l=Jn.coerceFont(o,"font",t.font);o("bgcolor",t.paper_bgcolor),o("bordercolor");var s=o("visible");if(s){for(var u,f=function(G,U){var V=u._input,J=u;return Jn.coerce(V,J,The,G,U)},c=t.font||{},v=Jn.coerceFont(o,"grouptitlefont",c,{overrideDflt:{size:Math.round(c.size*1.1)}}),d=0,p=!1,y="normal",m=(t.shapes||[]).filter(function(G){return G.showlegend}),x=a.concat(m).filter(function(G){return e===(G.legend||"legend")}),w=0;w(e==="legend"?1:0));if(b===!1&&(t[e]=void 0),!(b===!1&&!n.uirevision)&&(o("uirevision",t.uirevision),b!==!1)){o("borderwidth");var T=o("orientation"),k=o("yref"),M=o("xref"),q=T==="h",E=k==="paper",D=M==="paper",P,R,z,O="left";q?(P=0,u5.getComponentMethod("rangeslider","isVisible")(r.xaxis)?E?(R=1.1,z="bottom"):(R=1,z="top"):E?(R=-.1,z="top"):(R=0,z="bottom")):(R=1,z="auto",D?P=1.02:(P=1,O="right")),Jn.coerce(n,i,{x:{valType:"number",editType:"legend",min:D?-2:0,max:D?3:1,dflt:P}},"x"),Jn.coerce(n,i,{y:{valType:"number",editType:"legend",min:E?-2:0,max:E?3:1,dflt:R}},"y"),o("traceorder",y),f5.isGrouped(t[e])&&o("tracegroupgap"),o("entrywidth"),o("entrywidthmode"),o("indentation"),o("itemsizing"),o("itemwidth"),o("itemclick"),o("itemdoubleclick"),o("groupclick"),o("xanchor",O),o("yanchor",z),o("maxheight"),o("valign"),Jn.noneOrAll(n,i,["x","y"]);var B=o("title.text");if(B){o("title.side",q?"left":"top");var Y=Jn.extendFlat({},l,{size:Jn.bigFont(l.size)});Jn.coerceFont(o,"title.font",Y)}}}}FE.exports=function(r,t,a){var n,i=a.slice(),o=t.shapes;if(o)for(n=0;n{"use strict";var tc=br(),h5=Le(),She=h5.pushUnique,v5=!0;NE.exports=function(r,t,a){var n=t._fullLayout;if(t._dragged||t._editing)return;var i=n.legend.itemclick,o=n.legend.itemdoubleclick,l=n.legend.groupclick;a===1&&i==="toggle"&&o==="toggleothers"&&v5&&t.data&&t._context.showTips&&h5.notifier(h5._(t,"Double-click on legend to isolate one trace"),"long"),v5=!1;var s;if(a===1?s=i:a===2&&(s=o),!s)return;var u=l==="togglegroup",f=n.hiddenlabels?n.hiddenlabels.slice():[],c=r.data()[0][0];if(c.groupTitle&&c.noClick)return;var v=t._fullData,d=(n.shapes||[]).filter(function(Ie){return Ie.showlegend}),p=v.concat(d),y=c.trace;y._isShape&&(y=y._fullInput);var m=y.legendgroup,x,w,_,b,T,k,M={},q=[],E=[],D=[];function P(Ie,Ue){var Be=q.indexOf(Ie),Ce=M.visible;return Ce||(Ce=M.visible=[]),q.indexOf(Ie)===-1&&(q.push(Ie),Be=q.length-1),Ce[Be]=Ue,Be}var R=(n.shapes||[]).map(function(Ie){return Ie._input}),z=!1;function O(Ie,Ue){R[Ie].visible=Ue,z=!0}function B(Ie,Ue){if(!(c.groupTitle&&!u)){var Be=Ie._fullInput||Ie,Ce=Be._isShape,Oe=Be.index;Oe===void 0&&(Oe=Be._index);var He=Be.visible===!1?!1:Ue;Ce?O(Oe,He):P(Oe,He)}}var Y=y.legend,G=y._fullInput,U=G&&G._isShape;if(!U&&tc.traceIs(y,"pie-like")){var V=c.label,J=f.indexOf(V);if(s==="toggle")J===-1?f.push(V):f.splice(J,1);else if(s==="toggleothers"){var Z=J!==-1,ee=[];for(x=0;x{"use strict";IE.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var HE=N((TRe,BE)=>{"use strict";var OE=br(),p5=U1();BE.exports=function(r,t,a){var n=t._inHover,i=p5.isGrouped(t),o=p5.isReversed(t),l={},s=[],u=!1,f={},c=0,v=0,d,p;function y(G,U,V){if(t.visible!==!1&&!(a&&G!==t._id))if(U===""||!p5.isGrouped(t)){var J="~~i"+c;s.push(J),l[J]=[V],c++}else s.indexOf(U)===-1?(s.push(U),u=!0,l[U]=[V]):l[U].push(V)}for(d=0;dD&&(E=D)}M[d][0]._groupMinRank=E,M[d][0]._preGroupSort=d}var P=function(G,U){return G[0]._groupMinRank-U[0]._groupMinRank||G[0]._preGroupSort-U[0]._preGroupSort},R=function(G,U){return G.trace.legendrank-U.trace.legendrank||G._preSort-U._preSort};for(M.forEach(function(G,U){G[0]._preGroupSort=U}),M.sort(P),d=0;d{"use strict";var G1=Le();function UE(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}pu.formatPiePercent=function(r,t){var a=UE((r*100).toPrecision(3));return G1.numSeparate(a,t)+"%"};pu.formatPieValue=function(r,t){var a=UE(r.toPrecision(10));return G1.numSeparate(a,t)};pu.getFirstFilled=function(r,t){if(G1.isArrayOrTypedArray(r))for(var a=0;a{"use strict";var qhe=jr(),Lhe=Tr();GE.exports=function(r,t,a,n){var i=a.marker.pattern;i&&i.shape?qhe.pointStyle(r,a,n,t):Lhe.fill(r,t.color)}});var Y1=N((kRe,WE)=>{"use strict";var YE=Tr(),jE=V1().castOption,Che=VE();WE.exports=function(r,t,a,n){var i=a.marker.line,o=jE(i.color,t.pts)||YE.defaultLine,l=jE(i.width,t.pts)||0;r.call(Che,t,a,n).style("stroke-width",l).call(YE.stroke,o)}});var b5=N((SRe,QE)=>{"use strict";var on=Sr(),y5=br(),Xa=Le(),ZE=Xa.strTranslate,$n=jr(),yi=Tr(),m5=Wn().extractOpts,j1=Dn(),Ehe=Y1(),Dhe=V1().castOption,Rhe=d5(),XE=12,JE=5,yu=2,Phe=10,ac=5;QE.exports=function(r,t,a){var n=t._fullLayout;a||(a=n.legend);var i=a.itemsizing==="constant",o=a.itemwidth,l=(o+Rhe.itemGap*2)/2,s=ZE(l,0),u=function(M,q,E,D){var P;if(M+1)P=M;else if(q&&q.width>0)P=q.width;else return 0;return i?D:Math.min(P,E)};r.each(function(M){var q=on.select(this),E=Xa.ensureSingle(q,"g","layers");E.style("opacity",M[0].trace.opacity);var D=a.indentation,P=a.valign,R=M[0].lineHeight,z=M[0].height;if(P==="middle"&&D===0||!R||!z)E.attr("transform",null);else{var O={top:1,bottom:-1}[P],B=O*(.5*(R-z+3))||0,Y=a.indentation;E.attr("transform",ZE(Y,B))}var G=E.selectAll("g.legendfill").data([M]);G.enter().append("g").classed("legendfill",!0);var U=E.selectAll("g.legendlines").data([M]);U.enter().append("g").classed("legendlines",!0);var V=E.selectAll("g.legendsymbols").data([M]);V.enter().append("g").classed("legendsymbols",!0),V.selectAll("g.legendpoints").data([M]).enter().append("g").classed("legendpoints",!0)}).each(k).each(v).each(p).each(d).each(m).each(b).each(_).each(f).each(c).each(x).each(w);function f(M){var q=$E(M),E=q.showFill,D=q.showLine,P=q.showGradientLine,R=q.showGradientFill,z=q.anyFill,O=q.anyLine,B=M[0],Y=B.trace,G,U,V=m5(Y),J=V.colorscale,Z=V.reversescale,ee=function(he){if(he.size())if(E)$n.fillGroupStyle(he,t,!0);else{var oe="legendfill-"+Y.uid;$n.gradient(he,t,oe,g5(Z),J,"fill")}},fe=function(he){if(he.size()){var oe="legendline-"+Y.uid;$n.lineGroupStyle(he),$n.gradient(he,t,oe,g5(Z),J,"stroke")}},ie=j1.hasMarkers(Y)||!z?"M5,0":O?"M5,-2":"M5,-3",ue=on.select(this),K=ue.select(".legendfill").selectAll("path").data(E||R?[M]:[]);if(K.enter().append("path").classed("js-fill",!0),K.exit().remove(),K.attr("d",ie+"h"+o+"v6h-"+o+"z").call(ee),D||P){var _e=u(void 0,Y.line,Phe,JE);U=Xa.minExtend(Y,{line:{width:_e}}),G=[Xa.minExtend(B,{trace:U})]}var le=ue.select(".legendlines").selectAll("path").data(D||P?[G]:[]);le.enter().append("path").classed("js-line",!0),le.exit().remove(),le.attr("d",ie+(P?"l"+o+",0.0001":"h"+o)).call(D?$n.lineGroupStyle:fe)}function c(M){var q=$E(M),E=q.anyFill,D=q.anyLine,P=q.showLine,R=q.showMarker,z=M[0],O=z.trace,B=!R&&!D&&!E&&j1.hasText(O),Y,G;function U(K,_e,le,he){var oe=Xa.nestedProperty(O,K).get(),ce=Xa.isArrayOrTypedArray(oe)&&_e?_e(oe):oe;if(i&&ce&&he!==void 0&&(ce=he),le){if(cele[1])return le[1]}return ce}function V(K){return z._distinct&&z.index&&K[z.index]?K[z.index]:K[0]}if(R||B||P){var J={},Z={};if(R){J.mc=U("marker.color",V),J.mx=U("marker.symbol",V),J.mo=U("marker.opacity",Xa.mean,[.2,1]),J.mlc=U("marker.line.color",V),J.mlw=U("marker.line.width",Xa.mean,[0,5],yu),Z.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var ee=U("marker.size",Xa.mean,[2,16],XE);J.ms=ee,Z.marker.size=ee}P&&(Z.line={width:U("line.width",V,[0,10],JE)}),B&&(J.tx="Aa",J.tp=U("textposition",V),J.ts=10,J.tc=U("textfont.color",V),J.tf=U("textfont.family",V),J.tw=U("textfont.weight",V),J.ty=U("textfont.style",V),J.tv=U("textfont.variant",V),J.tC=U("textfont.textcase",V),J.tE=U("textfont.lineposition",V),J.tS=U("textfont.shadow",V)),Y=[Xa.minExtend(z,J)],G=Xa.minExtend(O,Z),G.selectedpoints=null,G.texttemplate=null}var fe=on.select(this).select("g.legendpoints"),ie=fe.selectAll("path.scatterpts").data(R?Y:[]);ie.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",s),ie.exit().remove(),ie.call($n.pointStyle,G,t),R&&(Y[0].mrc=3);var ue=fe.selectAll("g.pointtext").data(B?Y:[]);ue.enter().append("g").classed("pointtext",!0).append("text").attr("transform",s),ue.exit().remove(),ue.selectAll("text").call($n.textPointStyle,G,t)}function v(M){var q=M[0].trace,E=q.type==="waterfall";if(M[0]._distinct&&E){var D=M[0].trace[M[0].dir].marker;return M[0].mc=D.color,M[0].mlw=D.line.width,M[0].mlc=D.line.color,y(M,this,"waterfall")}var P=[];q.visible&&E&&(P=M[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var R=on.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(P);R.enter().append("path").classed("legendwaterfall",!0).attr("transform",s).style("stroke-miterlimit",1),R.exit().remove(),R.each(function(z){var O=on.select(this),B=q[z[0]].marker,Y=u(void 0,B.line,ac,yu);O.attr("d",z[1]).style("stroke-width",Y+"px").call(yi.fill,B.color),Y&&O.call(yi.stroke,B.line.color)})}function d(M){y(M,this)}function p(M){y(M,this,"funnel")}function y(M,q,E){var D=M[0].trace,P=D.marker||{},R=P.line||{},z=P.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",O=E?D.visible&&D.type===E:y5.traceIs(D,"bar"),B=on.select(q).select("g.legendpoints").selectAll("path.legend"+E).data(O?[M]:[]);B.enter().append("path").classed("legend"+E,!0).attr("d",z).attr("transform",s),B.exit().remove(),B.each(function(Y){var G=on.select(this),U=Y[0],V=u(U.mlw,P.line,ac,yu);G.style("stroke-width",V+"px");var J=U.mcc;if(!a._inHover&&"mc"in U){var Z=m5(P),ee=Z.mid;ee===void 0&&(ee=(Z.max+Z.min)/2),J=$n.tryColorscale(P,"")(ee)}var fe=J||U.mc||P.color,ie=P.pattern,ue=$n.getPatternAttr,K=ie&&(ue(ie.shape,0,"")||ue(ie.path,0,""));if(K){var _e=ue(ie.bgcolor,0,null),le=ue(ie.fgcolor,0,null),he=ie.fgopacity,oe=KE(ie.size,8,10),ce=KE(ie.solidity,.5,1),j="legend-"+D.uid;G.call($n.pattern,"legend",t,j,K,oe,ce,J,ie.fillmode,_e,le,he)}else G.call(yi.fill,fe);V&&yi.stroke(G,U.mlc||R.color)})}function m(M){var q=M[0].trace,E=on.select(this).select("g.legendpoints").selectAll("path.legendbox").data(q.visible&&y5.traceIs(q,"box-violin")?[M]:[]);E.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),E.exit().remove(),E.each(function(){var D=on.select(this);if((q.boxpoints==="all"||q.points==="all")&&yi.opacity(q.fillcolor)===0&&yi.opacity((q.line||{}).color)===0){var P=Xa.minExtend(q,{marker:{size:i?XE:Xa.constrain(q.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});E.call($n.pointStyle,P,t)}else{var R=u(void 0,q.line,ac,yu);D.style("stroke-width",R+"px").call(yi.fill,q.fillcolor),R&&yi.stroke(D,q.line.color)}})}function x(M){var q=M[0].trace,E=on.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(q.visible&&q.type==="candlestick"?[M,M]:[]);E.enter().append("path").classed("legendcandle",!0).attr("d",function(D,P){return P?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",s).style("stroke-miterlimit",1),E.exit().remove(),E.each(function(D,P){var R=on.select(this),z=q[P?"increasing":"decreasing"],O=u(void 0,z.line,ac,yu);R.style("stroke-width",O+"px").call(yi.fill,z.fillcolor),O&&yi.stroke(R,z.line.color)})}function w(M){var q=M[0].trace,E=on.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(q.visible&&q.type==="ohlc"?[M,M]:[]);E.enter().append("path").classed("legendohlc",!0).attr("d",function(D,P){return P?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",s).style("stroke-miterlimit",1),E.exit().remove(),E.each(function(D,P){var R=on.select(this),z=q[P?"increasing":"decreasing"],O=u(void 0,z.line,ac,yu);R.style("fill","none").call($n.dashLine,z.line.dash,O),O&&yi.stroke(R,z.line.color)})}function _(M){T(M,this,"pie")}function b(M){T(M,this,"funnelarea")}function T(M,q,E){var D=M[0],P=D.trace,R=E?P.visible&&P.type===E:y5.traceIs(P,E),z=on.select(q).select("g.legendpoints").selectAll("path.legend"+E).data(R?[M]:[]);if(z.enter().append("path").classed("legend"+E,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),z.exit().remove(),z.size()){var O=P.marker||{},B=u(Dhe(O.line.width,D.pts),O.line,ac,yu),Y="pieLike",G=Xa.minExtend(P,{marker:{line:{width:B}}},Y),U=Xa.minExtend(D,{trace:G},Y);Ehe(z,U,G,t)}}function k(M){var q=M[0].trace,E,D=[];if(q.visible)switch(q.type){case"histogram2d":case"heatmap":D=[["M-15,-2V4H15V-2Z"]],E=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":D=[["M-6,-6V6H6V-6Z"]],E=!0;break;case"densitymapbox":case"densitymap":D=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],E="radial";break;case"cone":D=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],E=!1;break;case"streamtube":D=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],E=!1;break;case"surface":D=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],E=!0;break;case"mesh3d":D=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],E=!1;break;case"volume":D=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],E=!0;break;case"isosurface":D=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],E=!1;break}var P=on.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(D);P.enter().append("path").classed("legend3dandfriends",!0).attr("transform",s).style("stroke-miterlimit",1),P.exit().remove(),P.each(function(R,z){var O=on.select(this),B=m5(q),Y=B.colorscale,G=B.reversescale,U=function(ee){if(ee.size()){var fe="legendfill-"+q.uid;$n.gradient(ee,t,fe,g5(G,E==="radial"),Y,"fill")}},V;if(Y){if(!E){var Z=Y.length;V=z===0?Y[G?Z-1:0][1]:z===1?Y[G?0:Z-1][1]:Y[Math.floor((Z-1)/2)][1]}}else{var J=q.vertexcolor||q.facecolor||q.color;V=Xa.isArrayOrTypedArray(J)?J[z]||J[0]:J}O.attr("d",R[0]),V?O.call(yi.fill,V):O.call(U)})}};function g5(e,r){var t=r?"radial":"horizontal";return t+(e?"":"reversed")}function $E(e){var r=e[0].trace,t=r.contours,a=j1.hasLines(r),n=j1.hasMarkers(r),i=r.visible&&r.fill&&r.fill!=="none",o=!1,l=!1;if(t){var s=t.coloring;s==="lines"?o=!0:a=s==="none"||s==="heatmap"||t.showlines,t.type==="constraint"?i=t._operation!=="=":(s==="fill"||s==="heatmap")&&(l=!0)}return{showMarker:n,showLine:a,showFill:i,showGradientLine:o,showGradientFill:l,anyLine:a||o,anyFill:i||l}}function KE(e,r,t){return e&&Xa.isArrayOrTypedArray(e)?r:e>t?t:e}});var T5=N((qRe,uD)=>{"use strict";var Rn=Sr(),fa=Le(),_5=ta(),oc=br(),eD=lh(),x5=pi(),ca=jr(),Z1=Tr(),mu=Ea(),rD=zE(),ba=d5(),w5=Wa(),lD=w5.LINE_SPACING,ic=w5.FROM_TL,tD=w5.FROM_BR,aD=HE(),Fhe=b5(),nD=U1(),nc=1,Nhe=/^legend[0-9]*$/;uD.exports=function(r,t){if(t)iD(r,t);else{var a=r._fullLayout,n=a._legends,i=a._infolayer.selectAll('[class^="legend"]');i.each(function(){var u=Rn.select(this),f=u.attr("class"),c=f.split(" ")[0];c.match(Nhe)&&n.indexOf(c)===-1&&u.remove()});for(var o=0;o1)}var p=a.hiddenlabels||[];if(!l&&(!a.showlegend||!s.length))return o.selectAll("."+n).remove(),a._topdefs.select("#"+i).remove(),_5.autoMargin(e,n);var y=fa.ensureSingle(o,"g",n,function(q){l||q.attr("pointer-events","all")}),m=fa.ensureSingleById(a._topdefs,"clipPath",i,function(q){q.append("rect")}),x=fa.ensureSingle(y,"rect","bg",function(q){q.attr("shape-rendering","crispEdges")});x.call(Z1.stroke,t.bordercolor).call(Z1.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px");var w=fa.ensureSingle(y,"g","scrollbox"),_=t.title;t._titleWidth=0,t._titleHeight=0;var b;_.text?(b=fa.ensureSingle(w,"text",n+"titletext"),b.attr("text-anchor","start").call(ca.font,_.font).text(_.text),X1(b,w,e,t,nc)):w.selectAll("."+n+"titletext").remove();var T=fa.ensureSingle(y,"rect","scrollbar",function(q){q.attr(ba.scrollBarEnterAttrs).call(Z1.fill,ba.scrollBarColor)}),k=w.selectAll("g.groups").data(s);k.enter().append("g").attr("class","groups"),k.exit().remove();var M=k.selectAll("g.traces").data(fa.identity);M.enter().append("g").attr("class","traces"),M.exit().remove(),M.style("opacity",function(q){var E=q[0].trace;return oc.traceIs(E,"pie-like")?p.indexOf(q[0].label)!==-1?.5:1:E.visible==="legendonly"?.5:1}).each(function(){Rn.select(this).call(Ihe,e,t)}).call(Fhe,e,t).each(function(){l||Rn.select(this).call(Ohe,e,n)}),fa.syncOrAsync([_5.previousPromises,function(){return Uhe(e,k,M,t)},function(){var q=a._size,E=t.borderwidth,D=t.xref==="paper",P=t.yref==="paper";if(_.text&&zhe(b,t,E),!l){var R,z;D?R=q.l+q.w*t.x-ic[J1(t)]*t._width:R=a.width*t.x-ic[J1(t)]*t._width,P?z=q.t+q.h*(1-t.y)-ic[$1(t)]*t._effHeight:z=a.height*(1-t.y)-ic[$1(t)]*t._effHeight;var O=Ghe(e,n,R,z);if(O)return;if(a.margin.autoexpand){var B=R,Y=z;R=D?fa.constrain(R,0,a.width-t._width):B,z=P?fa.constrain(z,0,a.height-t._effHeight):Y,R!==B&&fa.log("Constrain "+n+".x to make legend fit inside graph"),z!==Y&&fa.log("Constrain "+n+".y to make legend fit inside graph")}ca.setTranslate(y,R,z)}if(T.on(".drag",null),y.on("wheel",null),l||t._height<=t._maxHeight||e._context.staticPlot){var G=t._effHeight;l&&(G=t._height),x.attr({width:t._width-E,height:G-E,x:E/2,y:E/2}),ca.setTranslate(w,0,0),m.select("rect").attr({width:t._width-2*E,height:G-2*E,x:E,y:E}),ca.setClipUrl(w,i,e),ca.setRect(T,0,0,0,0),delete t._scrollY}else{var U=Math.max(ba.scrollBarMinHeight,t._effHeight*t._effHeight/t._height),V=t._effHeight-U-2*ba.scrollBarMargin,J=t._height-t._effHeight,Z=V/J,ee=Math.min(t._scrollY||0,J);x.attr({width:t._width-2*E+ba.scrollBarWidth+ba.scrollBarMargin,height:t._effHeight-E,x:E/2,y:E/2}),m.select("rect").attr({width:t._width-2*E+ba.scrollBarWidth+ba.scrollBarMargin,height:t._effHeight-2*E,x:E,y:E+ee}),ca.setClipUrl(w,i,e),oe(ee,U,Z),y.on("wheel",function(){ee=fa.constrain(t._scrollY+Rn.event.deltaY/J*V,0,J),oe(ee,U,Z),ee!==0&&ee!==J&&Rn.event.preventDefault()});var fe,ie,ue,K=function(pe,me,ye){var Pe=(ye-me)/Z+pe;return fa.constrain(Pe,0,J)},_e=function(pe,me,ye){var Pe=(me-ye)/Z+pe;return fa.constrain(Pe,0,J)},le=Rn.behavior.drag().on("dragstart",function(){var pe=Rn.event.sourceEvent;pe.type==="touchstart"?fe=pe.changedTouches[0].clientY:fe=pe.clientY,ue=ee}).on("drag",function(){var pe=Rn.event.sourceEvent;pe.buttons===2||pe.ctrlKey||(pe.type==="touchmove"?ie=pe.changedTouches[0].clientY:ie=pe.clientY,ee=K(ue,fe,ie),oe(ee,U,Z))});T.call(le);var he=Rn.behavior.drag().on("dragstart",function(){var pe=Rn.event.sourceEvent;pe.type==="touchstart"&&(fe=pe.changedTouches[0].clientY,ue=ee)}).on("drag",function(){var pe=Rn.event.sourceEvent;pe.type==="touchmove"&&(ie=pe.changedTouches[0].clientY,ee=_e(ue,fe,ie),oe(ee,U,Z))});w.call(he)}function oe(pe,me,ye){t._scrollY=e._fullLayout[n]._scrollY=pe,ca.setTranslate(w,0,-pe),ca.setRect(T,t._width,ba.scrollBarMargin+pe*ye,ba.scrollBarWidth,me),m.select("rect").attr("y",E+pe)}if(e._context.edits.legendPosition){var ce,j,Q,W;y.classed("cursor-move",!0),x5.init({element:y.node(),gd:e,prepFn:function(pe){if(pe.target!==T.node()){var me=ca.getTranslate(y);Q=me.x,W=me.y}},moveFn:function(pe,me){if(Q!==void 0&&W!==void 0){var ye=Q+pe,Pe=W+me;ca.setTranslate(y,ye,Pe),ce=x5.align(ye,t._width,q.l,q.l+q.w,t.xanchor),j=x5.align(Pe+t._height,-t._height,q.t+q.h,q.t,t.yanchor)}},doneFn:function(){if(ce!==void 0&&j!==void 0){var pe={};pe[n+".x"]=ce,pe[n+".y"]=j,oc.call("_guiRelayout",e,pe)}},clickFn:function(pe,me){var ye=o.selectAll("g.traces").filter(function(){var Pe=this.getBoundingClientRect();return me.clientX>=Pe.left&&me.clientX<=Pe.right&&me.clientY>=Pe.top&&me.clientY<=Pe.bottom});ye.size()>0&&sD(e,y,ye,pe,me)}})}}],e)}}function W1(e,r,t){var a=e[0],n=a.width,i=r.entrywidthmode,o=a.trace.legendwidth||r.entrywidth;return i==="fraction"?r._maxWidth*o:t+(o||n)}function sD(e,r,t,a,n){var i=t.data()[0][0].trace,o={event:n,node:t.node(),curveNumber:i.index,expandedIndex:i.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};i._group&&(o.group=i._group),oc.traceIs(i,"pie-like")&&(o.label=t.datum()[0].label);var l=eD.triggerHandler(e,"plotly_legendclick",o);if(a===1){if(l===!1)return;r._clickTimeout=setTimeout(function(){e._fullLayout&&rD(t,e,a)},e._context.doubleClickDelay)}else if(a===2){r._clickTimeout&&clearTimeout(r._clickTimeout),e._legendMouseDownTime=0;var s=eD.triggerHandler(e,"plotly_legenddoubleclick",o);s!==!1&&l!==!1&&rD(t,e,a)}}function Ihe(e,r,t){var a=K1(t),n=e.data()[0][0],i=n.trace,o=oc.traceIs(i,"pie-like"),l=!t._inHover&&r._context.edits.legendText&&!o,s=t._maxNameLength,u,f;n.groupTitle?(u=n.groupTitle.text,f=n.groupTitle.font):(f=t.font,t.entries?u=n.text:(u=o?n.label:i.name,i._meta&&(u=fa.templateString(u,i._meta))));var c=fa.ensureSingle(e,"text",a+"text");c.attr("text-anchor","start").call(ca.font,f).text(l?oD(u,s):u);var v=t.indentation+t.itemwidth+ba.itemGap*2;mu.positionText(c,v,0),l?c.call(mu.makeEditable,{gd:r,text:u}).call(X1,e,r,t).on("edit",function(d){this.text(oD(d,s)).call(X1,e,r,t);var p=n.trace._fullInput||{},y={};return y.name=d,p._isShape?oc.call("_guiRelayout",r,"shapes["+i.index+"].name",y.name):oc.call("_guiRestyle",r,y,i.index)}):X1(c,e,r,t)}function oD(e,r){var t=Math.max(4,r);if(e&&e.trim().length>=t/2)return e;e=e||"";for(var a=t-e.length;a>0;a--)e+=" ";return e}function Ohe(e,r,t){var a=r._context.doubleClickDelay,n,i=1,o=fa.ensureSingle(e,"rect",t+"toggle",function(l){r._context.staticPlot||l.style("cursor","pointer").attr("pointer-events","all"),l.call(Z1.fill,"rgba(0,0,0,0)")});r._context.staticPlot||(o.on("mousedown",function(){n=new Date().getTime(),n-r._legendMouseDownTimea&&(i=Math.max(i-1,1)),sD(r,l,e,i,Rn.event)}}))}function X1(e,r,t,a,n){a._inHover&&e.attr("data-notex",!0),mu.convertToTspans(e,t,function(){Bhe(r,t,a,n)})}function Bhe(e,r,t,a){var n=e.data()[0][0];if(!t._inHover&&n&&!n.trace.showlegend){e.remove();return}var i=e.select("g[class*=math-group]"),o=i.node(),l=K1(t);t||(t=r._fullLayout[l]);var s=t.borderwidth,u;a===nc?u=t.title.font:n.groupTitle?u=n.groupTitle.font:u=t.font;var f=u.size*lD,c,v;if(o){var d=ca.bBox(o);c=d.height,v=d.width,a===nc?ca.setTranslate(i,s,s+c*.75):ca.setTranslate(i,0,c*.25)}else{var p="."+l+(a===nc?"title":"")+"text",y=e.select(p),m=mu.lineCount(y),x=y.node();if(c=f*m,v=x?ca.bBox(x).width:0,a===nc)t.title.side==="left"&&(v+=ba.itemGap*2),mu.positionText(y,s+ba.titlePad,s+f);else{var w=ba.itemGap*2+t.indentation+t.itemwidth;n.groupTitle&&(w=ba.itemGap,v-=t.indentation+t.itemwidth),mu.positionText(y,w,-f*((m-1)/2-.3))}}a===nc?(t._titleWidth=v,t._titleHeight=c):(n.lineHeight=f,n.height=Math.max(c,16)+3,n.width=v)}function Hhe(e){var r=0,t=0,a=e.title.side;return a&&(a.indexOf("left")!==-1&&(r=e._titleWidth),a.indexOf("top")!==-1&&(t=e._titleHeight)),[r,t]}function Uhe(e,r,t,a){var n=e._fullLayout,i=K1(a);a||(a=n[i]);var o=n._size,l=nD.isVertical(a),s=nD.isGrouped(a),u=a.entrywidthmode==="fraction",f=a.borderwidth,c=2*f,v=ba.itemGap,d=a.indentation+a.itemwidth+v*2,p=2*(f+v),y=$1(a),m=a.y<0||a.y===0&&y==="top",x=a.y>1||a.y===1&&y==="bottom",w=a.tracegroupgap,_={};let{orientation:b,yref:T}=a,{maxheight:k}=a,M=m||x||b!=="v"||T!=="paper";k||(k=M?.5:1);let q=M?n.height:o.h;a._maxHeight=Math.max(k>1?k:k*q,30);var E=0;a._width=0,a._height=0;var D=Hhe(a);if(l)t.each(function(oe){var ce=oe[0].height;ca.setTranslate(this,f+D[0],f+D[1]+a._height+ce/2+v),a._height+=ce,a._width=Math.max(a._width,oe[0].width)}),E=d+a._width,a._width+=v+d+c,a._height+=p,s&&(r.each(function(oe,ce){ca.setTranslate(this,0,ce*a.tracegroupgap)}),a._height+=(a._lgroupsLength-1)*a.tracegroupgap);else{var P=J1(a),R=a.x<0||a.x===0&&P==="right",z=a.x>1||a.x===1&&P==="left",O=x||m,B=n.width/2;a._maxWidth=Math.max(R?O&&P==="left"?o.l+o.w:B:z?O&&P==="right"?o.r+o.w:B:o.w,2*d);var Y=0,G=0;t.each(function(oe){var ce=W1(oe,a,d);Y=Math.max(Y,ce),G+=ce}),E=null;var U=0;if(s){var V=0,J=0,Z=0;r.each(function(){var oe=0,ce=0;Rn.select(this).selectAll("g.traces").each(function(Q){var W=W1(Q,a,d),pe=Q[0].height;ca.setTranslate(this,D[0],D[1]+f+v+pe/2+ce),ce+=pe,oe=Math.max(oe,W),_[Q[0].trace.legendgroup]=oe});var j=oe+v;J>0&&j+f+J>a._maxWidth?(U=Math.max(U,J),J=0,Z+=V+w,V=ce):V=Math.max(V,ce),ca.setTranslate(this,J,Z),J+=j}),a._width=Math.max(U,J)+f,a._height=Z+V+p}else{var ee=t.size(),fe=G+c+(ee-1)*v=a._maxWidth&&(U=Math.max(U,_e),ue=0,K+=ie,a._height+=ie,ie=0),ca.setTranslate(this,D[0]+f+ue,D[1]+f+K+ce/2+v),_e=ue+j+v,ue+=Q,ie=Math.max(ie,ce)}),fe?(a._width=ue+c,a._height=ie+p):(a._width=Math.max(U,_e)+c,a._height+=ie+p)}}a._width=Math.ceil(Math.max(a._width+D[0],a._titleWidth+2*(f+ba.titlePad))),a._height=Math.ceil(Math.max(a._height+D[1],a._titleHeight+2*(f+ba.itemGap))),a._effHeight=Math.min(a._height,a._maxHeight);var le=e._context.edits,he=le.legendText||le.legendPosition;t.each(function(oe){var ce=Rn.select(this).select("."+i+"toggle"),j=oe[0].height,Q=oe[0].trace.legendgroup,W=W1(oe,a,d);s&&Q!==""&&(W=_[Q]);var pe=he?d:E||W;!l&&!u&&(pe+=v/2),ca.setRect(ce,0,-j/2,pe,j)})}function Ghe(e,r,t,a){var n=e._fullLayout,i=n[r],o=J1(i),l=$1(i),s=i.xref==="paper",u=i.yref==="paper";e._fullLayout._reservedMargin[r]={};var f=i.y<.5?"b":"t",c=i.x<.5?"l":"r",v={r:n.width-t,l:t+i._width,b:n.height-a,t:a+i._effHeight};if(s&&u)return _5.autoMargin(e,r,{x:i.x,y:i.y,l:i._width*ic[o],r:i._width*tD[o],b:i._effHeight*tD[l],t:i._effHeight*ic[l]});s?e._fullLayout._reservedMargin[r][f]=v[f]:u||i.orientation==="v"?e._fullLayout._reservedMargin[r][c]=v[c]:e._fullLayout._reservedMargin[r][f]=v[f]}function J1(e){return fa.isRightAnchor(e)?"right":fa.isCenterAnchor(e)?"center":"left"}function $1(e){return fa.isBottomAnchor(e)?"bottom":fa.isMiddleAnchor(e)?"middle":"top"}function K1(e){return e._id||"legend"}});var S5=N(k5=>{"use strict";var gu=Sr(),vl=Rr(),fD=kn(),Vt=Le(),Vhe=Vt.pushUnique,A5=Vt.strTranslate,Yhe=Vt.strRotate,jhe=lh(),mi=Ea(),Whe=RE(),Ro=jr(),Aa=Tr(),Q1=pi(),Po=zr(),Zhe=Ca().zindexSeparator,sc=br(),ao=qo(),bu=Xv(),Xhe=c5(),Jhe=T5(),gD=bu.YANGLE,M5=Math.PI*gD/180,$he=1/Math.sin(M5),Khe=Math.cos(M5),Qhe=Math.sin(M5),Rt=bu.HOVERARROWSIZE,Vr=bu.HOVERTEXTPAD,cD={box:!0,ohlc:!0,violin:!0,candlestick:!0},e0e={scatter:!0,scattergl:!0,splom:!0};function vD(e,r){return e.distance-r.distance}k5.hover=function(r,t,a,n){r=Vt.getGraphDiv(r);var i=t.target;Vt.throttle(r._fullLayout._uid+bu.HOVERID,bu.HOVERMINTIME,function(){r0e(r,t,a,n,i)})};k5.loneHover=function(r,t){var a=!0;Array.isArray(r)||(a=!1,r=[r]);var n=t.gd,i=TD(n),o=AD(n),l=r.map(function(m){var x=m._x0||m.x0||m.x||0,w=m._x1||m.x1||m.x||0,_=m._y0||m.y0||m.y||0,b=m._y1||m.y1||m.y||0,T=m.eventData;if(T){var k=Math.min(x,w),M=Math.max(x,w),q=Math.min(_,b),E=Math.max(_,b),D=m.trace;if(sc.traceIs(D,"gl3d")){var P=n._fullLayout[D.scene]._scene.container,R=P.offsetLeft,z=P.offsetTop;k+=R,M+=R,q+=z,E+=z}T.bbox={x0:k+o,x1:M+o,y0:q+i,y1:E+i},t.inOut_bbox&&t.inOut_bbox.push(T.bbox)}else T=!1;return{color:m.color||Aa.defaultLine,x0:m.x0||m.x||0,x1:m.x1||m.x||0,y0:m.y0||m.y||0,y1:m.y1||m.y||0,xLabel:m.xLabel,yLabel:m.yLabel,zLabel:m.zLabel,text:m.text,name:m.name,idealAlign:m.idealAlign,borderColor:m.borderColor,fontFamily:m.fontFamily,fontSize:m.fontSize,fontColor:m.fontColor,fontWeight:m.fontWeight,fontStyle:m.fontStyle,fontVariant:m.fontVariant,nameLength:m.nameLength,textAlign:m.textAlign,trace:m.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:m.hovertemplate||!1,hovertemplateLabels:m.hovertemplateLabels||!1,eventData:T}}),s=!1,u=xD(l,{gd:n,hovermode:"closest",rotateLabels:s,bgColor:t.bgColor||Aa.background,container:gu.select(t.container),outerContainer:t.outerContainer||t.container}),f=u.hoverLabels,c=5,v=0,d=0;f.sort(function(m,x){return m.y0-x.y0}).each(function(m,x){var w=m.y0-m.by/2;w-cM[0]._length||W<0||W>q[0]._length)return Q1.unhoverRaw(e,r)}if(r.pointerX=Q+M[0]._offset,r.pointerY=W+q[0]._offset,"xval"in r?Y=ao.flat(i,r.xval):Y=ao.p2c(M,Q),"yval"in r?G=ao.flat(i,r.yval):G=ao.p2c(q,W),!vl(Y[0])||!vl(G[0]))return Vt.warn("Fx.hover failed",r,e),Q1.unhoverRaw(e,r)}var ye=1/0;function Pe(dr,yt){for(V=0;Vle&&(O.splice(0,le),ye=O[0].distance),c&&z!==0&&O.length===0){_e.distance=z,_e.index=!1;var Gr=Z._module.hoverPoints(_e,ue,K,"closest",{hoverLayer:l._hoverlayer});if(Gr&&(Gr=Gr.filter(function(Nt){return Nt.spikeDistance<=z})),Gr&&Gr.length){var Bt,rn=Gr.filter(function(Nt){return Nt.xa.showspikes&&Nt.xa.spikesnap!=="hovered data"});if(rn.length){var jt=rn[0];vl(jt.x0)&&vl(jt.y0)&&(Bt=Ee(jt),(!he.vLinePoint||he.vLinePoint.spikeDistance>Bt.spikeDistance)&&(he.vLinePoint=Bt))}var dn=Gr.filter(function(Nt){return Nt.ya.showspikes&&Nt.ya.spikesnap!=="hovered data"});if(dn.length){var pn=dn[0];vl(pn.x0)&&vl(pn.y0)&&(Bt=Ee(pn),(!he.hLinePoint||he.hLinePoint.spikeDistance>Bt.spikeDistance)&&(he.hLinePoint=Bt))}}}}}Pe();function Ne(dr,yt,Zr){for(var $r=null,mt=1/0,Lt,Gr=0;Grdr.trace.index===Te.trace.index):O=[Te];var qe=O.length,Ge=mD("x",Te,l),Je=mD("y",Te,l);Pe(Ge,Je);var Ve=[],Ze={},or=0,rr=function(dr){var yt=cD[dr.trace.type]?bD(dr):dr.trace.index;if(!Ze[yt])or++,Ze[yt]=or,Ve.push(dr);else{var Zr=Ze[yt]-1,$r=Ve[Zr];Zr>0&&Math.abs(dr.distance)qe-1;Ke--)rr(O[Ke]);O=Ve,Ce()}var ze=e._hoverdata,ne=[],ve=TD(e),De=AD(e);for(let dr of O){var Re=ao.makeEventData(dr,dr.trace,dr.cd);if(dr.hovertemplate!==!1){var Qe=!1;dr.cd[dr.index]&&dr.cd[dr.index].ht&&(Qe=dr.cd[dr.index].ht),dr.hovertemplate=Qe||dr.trace.hovertemplate||!1}if(dr.xa&&dr.ya){var fr=dr.x0+dr.xa._offset,sr=dr.x1+dr.xa._offset,kr=dr.y0+dr.ya._offset,Ir=dr.y1+dr.ya._offset,Yr=Math.min(fr,sr),et=Math.max(fr,sr),qt=Math.min(kr,Ir),ft=Math.max(kr,Ir);Re.bbox={x0:Yr+De,x1:et+De,y0:qt+ve,y1:ft+ve}}dr.eventData=[Re],ne.push(Re)}e._hoverdata=ne;var Ft=v==="y"&&(B.length>1||O.length>1)||v==="closest"&&oe&&O.length>1,Tt=Aa.combine(l.plot_bgcolor||Aa.background,l.paper_bgcolor),da=xD(O,{gd:e,hovermode:v,rotateLabels:Ft,bgColor:Tt,container:l._hoverlayer,outerContainer:l._paper.node(),commonLabelOpts:l.hoverlabel,hoverdistance:l.hoverdistance}),$t=da.hoverLabels;if(ao.isUnifiedHover(v)||(a0e($t,Ft,l,da.commonLabelBoundingBox),wD($t,Ft,l._invScaleX,l._invScaleY)),n&&n.tagName){var oa=sc.getComponentMethod("annotations","hasClickToShow")(e,ne);Whe(gu.select(n),oa?"pointer":"")}!n||a||!o0e(e,r,ze)||(ze&&e.emit("plotly_unhover",{event:r,points:ze}),e.emit("plotly_hover",{event:r,points:e._hoverdata,xaxes:M,yaxes:q,xvals:Y,yvals:G}))}function bD(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var t0e=/([\s\S]*)<\/extra>/;function xD(e,r){var t=r.gd,a=t._fullLayout,n=r.hovermode,i=r.rotateLabels,o=r.bgColor,l=r.container,s=r.outerContainer,u=r.commonLabelOpts||{};if(e.length===0)return[[]];var f=r.fontFamily||bu.HOVERFONT,c=r.fontSize||bu.HOVERFONTSIZE,v=r.fontWeight||a.font.weight,d=r.fontStyle||a.font.style,p=r.fontVariant||a.font.variant,y=r.fontTextcase||a.font.textcase,m=r.fontLineposition||a.font.lineposition,x=r.fontShadow||a.font.shadow,w=e[0],_=w.xa,b=w.ya,T=n.charAt(0),k=T+"Label",M=w[k];if(M===void 0&&_.type==="multicategory")for(var q=0;qa.width-ve&&(De=a.width-ve),Te.attr("d","M"+(Ke-De)+",0L"+(Ke-De+Rt)+","+ne+Rt+"H"+ve+"v"+ne+(Vr*2+rr.height)+"H"+-ve+"V"+ne+Rt+"H"+(Ke-De-Rt)+"Z"),Ke=De,V.minX=Ke-ve,V.maxX=Ke+ve,_.side==="top"?(V.minY=ze-(Vr*2+rr.height),V.maxY=ze-Vr):(V.minY=ze+Vr,V.maxY=ze+(Vr*2+rr.height))}else{var Re,Qe,fr;b.side==="right"?(Re="start",Qe=1,fr="",Ke=_._offset+_._length):(Re="end",Qe=-1,fr="-",Ke=_._offset),ze=b._offset+(w.y0+w.y1)/2,qe.attr("text-anchor",Re),Te.attr("d","M0,0L"+fr+Rt+","+Rt+"V"+(Vr+rr.height/2)+"h"+fr+(Vr*2+rr.width)+"V-"+(Vr+rr.height/2)+"H"+fr+Rt+"V-"+Rt+"Z"),V.minY=ze-(Vr+rr.height/2),V.maxY=ze+(Vr+rr.height/2),b.side==="right"?(V.minX=Ke+Rt,V.maxX=Ke+Rt+(Vr*2+rr.width)):(V.minX=Ke-Rt-(Vr*2+rr.width),V.maxX=Ke-Rt);var sr=rr.height/2,kr=D-rr.top-sr,Ir="clip"+a._uid+"commonlabel"+b._id,Yr;if(KeTe.hoverinfo!=="none");if(Fe.length===0)return[];var J=a.hoverlabel,Z=J.font,ee=Fe[0],fe=((n==="x unified"?ee.xa:ee.ya).unifiedhovertitle||{}).text,ie=fe?Vt.hovertemplateString({data:n==="x unified"?[{xa:ee.xa,x:ee.xVal}]:[{ya:ee.ya,y:ee.yVal}],fallback:ee.trace.hovertemplatefallback,locale:a._d3locale,template:fe}):M,ue={showlegend:!0,legend:{title:{text:ie,font:Z},font:Z,bgcolor:J.bgcolor,bordercolor:J.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:a.legend?a.legend.traceorder:void 0,orientation:"v"}},K={font:Z};Xhe(ue,K,t._fullData);var _e=K.legend;_e.entries=[];for(var le=0;le=0?Ae=Ce:Oe+me=0?Ae=Oe:He+me=0?Xe=Ue:Be+ye=0?Xe=Be:se+ye=0,(Fe.idealAlign==="top"||!ft)&&Ft?(fr-=kr/2,Fe.anchor="end"):ft?(fr+=kr/2,Fe.anchor="start"):Fe.anchor="middle",Fe.crossPos=fr;else{if(Fe.pos=fr,ft=Qe+sr/2+qt<=P,Ft=Qe-sr/2-qt>=0,(Fe.idealAlign==="left"||!ft)&&Ft)Qe-=sr/2,Fe.anchor="end";else if(ft)Qe+=sr/2,Fe.anchor="start";else{Fe.anchor="middle";var Tt=qt/2,da=Qe+Tt-P,$t=Qe-Tt;da>0&&(Qe-=da),$t<0&&(Qe+=-$t)}Fe.crossPos=Qe}ze.attr("text-anchor",Fe.anchor),ve&&ne.attr("text-anchor",Fe.anchor),Te.attr("transform",A5(Qe,fr)+(i?Yhe(gD):""))}),{hoverLabels:vr,commonLabelBoundingBox:V}}function hD(e,r,t,a,n,i){var c,v;var o="",l="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=Vt.templateString(e.name,e.trace._meta)),o=yD(e.name,e.nameLength));var s=t.charAt(0),u=s==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(l+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(l+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(l+=(l?"z: ":"")+e.zLabel)):r&&e[s+"Label"]===n?l=e[u+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(l=e.yLabel):e.yLabel===void 0?l=e.xLabel:l="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(l+=(l?"
":"")+e.text),e.extraText!==void 0&&(l+=(l?"
":"")+e.extraText),i&&l===""&&!e.hovertemplate&&(o===""&&i.remove(),l=o),(v=(c=e.trace)==null?void 0:c.hoverlabel)!=null&&v.split&&(e.hovertemplate="");let{hovertemplate:f=!1}=e;if(f){let d=e.hovertemplateLabels||e;e[s+"Label"]!==n&&(d[s+"other"]=d[s+"Val"],d[s+"otherLabel"]=d[s+"Label"]),l=Vt.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:a._d3locale,template:f}),l=l.replace(t0e,(p,y)=>(o=yD(y,e.nameLength),""))}return[l,o]}function a0e(e,r,t,a){var n=r?"xa":"ya",i=r?"ya":"xa",o=0,l=1,s=e.size(),u=new Array(s),f=0,c=a.minX,v=a.maxX,d=a.minY,p=a.maxY,y=function(Y){return Y*t._invScaleX},m=function(Y){return Y*t._invScaleY};e.each(function(Y){var G=Y[n],U=Y[i],V=G._id.charAt(0)==="x",J=G.range;f===0&&J&&J[0]>J[1]!==V&&(l=-1);var Z=0,ee=V?t.width:t.height;if(t.hovermode==="x"||t.hovermode==="y"){var fe=_D(Y,r),ie=Y.anchor,ue=ie==="end"?-1:1,K,_e;if(ie==="middle")K=Y.crossPos+(V?m(fe.y-Y.by/2):y(Y.bx/2+Y.tx2width/2)),_e=K+(V?m(Y.by):y(Y.bx));else if(V)K=Y.crossPos+m(Rt+fe.y)-m(Y.by/2-Rt),_e=K+m(Y.by);else{var le=y(ue*Rt+fe.x),he=le+y(ue*Y.bx);K=Y.crossPos+Math.min(le,he),_e=Y.crossPos+Math.max(le,he)}V?d!==void 0&&p!==void 0&&Math.min(_e,p)-Math.max(K,d)>1&&(U.side==="left"?(Z=U._mainLinePosition,ee=t.width):ee=U._mainLinePosition):c!==void 0&&v!==void 0&&Math.min(_e,v)-Math.max(K,c)>1&&(U.side==="top"?(Z=U._mainLinePosition,ee=t.height):ee=U._mainLinePosition)}u[f++]=[{datum:Y,traceIndex:Y.trace.index,dp:0,pos:Y.pos,posref:Y.posref,size:Y.by*(V?$he:1)/2,pmin:Z,pmax:ee}]}),u.sort(function(Y,G){return Y[0].posref-G[0].posref||l*(G[0].traceIndex-Y[0].traceIndex)});var x,w,_,b,T,k,M;function q(Y){var G=Y[0],U=Y[Y.length-1];if(w=G.pmin-G.pos-G.dp+G.size,_=U.pos+U.dp+U.size-G.pmax,w>.01){for(T=Y.length-1;T>=0;T--)Y[T].dp+=w;x=!1}if(!(_<.01)){if(w<-.01){for(T=Y.length-1;T>=0;T--)Y[T].dp-=_;x=!1}if(x){var V=0;for(b=0;bG.pmax&&V++;for(b=Y.length-1;b>=0&&!(V<=0);b--)k=Y[b],k.pos>G.pmax-1&&(k.del=!0,V--);for(b=0;b=0;T--)Y[T].dp-=_;for(b=Y.length-1;b>=0&&!(V<=0);b--)k=Y[b],k.pos+k.dp+k.size>G.pmax&&(k.del=!0,V--)}}}for(;!x&&o<=s;){for(o++,x=!0,b=0;b.01){for(T=D.length-1;T>=0;T--)D[T].dp+=w;for(E.push.apply(E,D),u.splice(b+1,1),M=0,T=E.length-1;T>=0;T--)M+=E[T].dp;for(_=M/E.length,T=E.length-1;T>=0;T--)E[T].dp-=_;x=!1}else b++}u.forEach(q)}for(b=u.length-1;b>=0;b--){var z=u[b];for(T=z.length-1;T>=0;T--){var O=z[T],B=O.datum;B.offset=O.dp,B.del=O.del}}}function _D(e,r){var t=0,a=e.offset;return r&&(a*=-Qhe,t=e.offset*Khe),{x:t,y:a}}function n0e(e){var r={start:1,end:-1,middle:0}[e.anchor],t=r*(Rt+Vr),a=t+r*(e.txwidth+Vr),n=e.anchor==="middle";return n&&(t-=e.tx2width/2,a+=e.txwidth/2+Vr),{alignShift:r,textShiftX:t,text2ShiftX:a}}function wD(e,r,t,a){var n=function(o){return o*t},i=function(o){return o*a};e.each(function(o){var l=gu.select(this);if(o.del)return l.remove();var s=l.select("text.nums"),u=o.anchor,f=u==="end"?-1:1,c=n0e(o),v=_D(o,r),d=v.x,p=v.y,y=u==="middle",m="hoverlabel"in o.trace?o.trace.hoverlabel.showarrow:!0,x;y?x="M-"+n(o.bx/2+o.tx2width/2)+","+i(p-o.by/2)+"h"+n(o.bx)+"v"+i(o.by)+"h-"+n(o.bx)+"Z":m?x="M0,0L"+n(f*Rt+d)+","+i(Rt+p)+"v"+i(o.by/2-Rt)+"h"+n(f*o.bx)+"v-"+i(o.by)+"H"+n(f*Rt+d)+"V"+i(p-Rt)+"Z":x="M"+n(f*Rt+d)+","+i(p-o.by/2)+"h"+n(f*o.bx)+"v"+i(o.by)+"h"+n(-f*o.bx)+"Z",l.select("path").attr("d",x);var w=d+c.textShiftX,_=p+o.ty0-o.by/2+Vr,b=o.textAlign||"auto";b!=="auto"&&(b==="left"&&u!=="start"?(s.attr("text-anchor","start"),w=y?-o.bx/2-o.tx2width/2+Vr:-o.bx-Vr):b==="right"&&u!=="end"&&(s.attr("text-anchor","end"),w=y?o.bx/2-o.tx2width/2-Vr:o.bx+Vr)),s.call(mi.positionText,n(w),i(_)),o.tx2width&&(l.select("text.name").call(mi.positionText,n(c.text2ShiftX+c.alignShift*Vr+d),i(p+o.ty0-o.by/2+Vr)),l.select("rect").call(Ro.setRect,n(c.text2ShiftX+(c.alignShift-1)*o.tx2width/2+d),i(p-o.by/2-1),n(o.tx2width),i(o.by+2)))})}function i0e(e,r){var t=e.index,a=e.trace||{},n=e.cd[0],i=e.cd[t]||{};function o(v){return v||vl(v)&&v===0}var l=Array.isArray(t)?function(v,d){var p=Vt.castOption(n,t,v);return o(p)?p:Vt.extractOption({},a,"",d)}:function(v,d){return Vt.extractOption(i,a,v,d)};function s(v,d,p){var y=l(d,p);o(y)&&(e[v]=y)}if(s("hoverinfo","hi","hoverinfo"),s("bgcolor","hbg","hoverlabel.bgcolor"),s("borderColor","hbc","hoverlabel.bordercolor"),s("fontFamily","htf","hoverlabel.font.family"),s("fontSize","hts","hoverlabel.font.size"),s("fontColor","htc","hoverlabel.font.color"),s("fontWeight","htw","hoverlabel.font.weight"),s("fontStyle","hty","hoverlabel.font.style"),s("fontVariant","htv","hoverlabel.font.variant"),s("nameLength","hnl","hoverlabel.namelength"),s("textAlign","hta","hoverlabel.align"),e.posref=r==="y"||r==="closest"&&a.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=Vt.constrain(e.x0,0,e.xa._length),e.x1=Vt.constrain(e.x1,0,e.xa._length),e.y0=Vt.constrain(e.y0,0,e.ya._length),e.y1=Vt.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:Po.hoverLabelText(e.xa,e.xLabelVal,a.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:Po.hoverLabelText(e.ya,e.yLabelVal,a.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var u=Po.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+u+" / -"+Po.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+u,r==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var f=Po.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+f+" / -"+Po.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+f,r==="y"&&(e.distance+=1)}var c=e.hoverinfo||e.trace.hoverinfo;return c&&c!=="all"&&(c=Array.isArray(c)?c:c.split("+"),c.indexOf("x")===-1&&(e.xLabel=void 0),c.indexOf("y")===-1&&(e.yLabel=void 0),c.indexOf("z")===-1&&(e.zLabel=void 0),c.indexOf("text")===-1&&(e.text=void 0),c.indexOf("name")===-1&&(e.name=void 0)),e}function dD(e,r,t){var a=t.container,n=t.fullLayout,i=n._size,o=t.event,l=!!r.hLinePoint,s=!!r.vLinePoint,u,f;if(a.selectAll(".spikeline").remove(),!!(s||l)){var c=Aa.combine(n.plot_bgcolor,n.paper_bgcolor);if(l){var v=r.hLinePoint,d,p;u=v&&v.xa,f=v&&v.ya;var y=f.spikesnap;y==="cursor"?(d=o.pointerX,p=o.pointerY):(d=u._offset+v.x,p=f._offset+v.y);var m=fD.readability(v.color,c)<1.5?Aa.contrast(c):v.color,x=f.spikemode,w=f.spikethickness,_=f.spikecolor||m,b=Po.getPxPosition(e,f),T,k;if(x.indexOf("toaxis")!==-1||x.indexOf("across")!==-1){if(x.indexOf("toaxis")!==-1&&(T=b,k=d),x.indexOf("across")!==-1){var M=f._counterDomainMin,q=f._counterDomainMax;f.anchor==="free"&&(M=Math.min(M,f.position),q=Math.max(q,f.position)),T=i.l+M*i.w,k=i.l+q*i.w}a.insert("line",":first-child").attr({x1:T,x2:k,y1:p,y2:p,"stroke-width":w,stroke:_,"stroke-dasharray":Ro.dashStyle(f.spikedash,w)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:T,x2:k,y1:p,y2:p,"stroke-width":w+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}x.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:b+(f.side!=="right"?w:-w),cy:p,r:w,fill:_}).classed("spikeline",!0)}if(s){var E=r.vLinePoint,D,P;u=E&&E.xa,f=E&&E.ya;var R=u.spikesnap;R==="cursor"?(D=o.pointerX,P=o.pointerY):(D=u._offset+E.x,P=f._offset+E.y);var z=fD.readability(E.color,c)<1.5?Aa.contrast(c):E.color,O=u.spikemode,B=u.spikethickness,Y=u.spikecolor||z,G=Po.getPxPosition(e,u),U,V;if(O.indexOf("toaxis")!==-1||O.indexOf("across")!==-1){if(O.indexOf("toaxis")!==-1&&(U=G,V=P),O.indexOf("across")!==-1){var J=u._counterDomainMin,Z=u._counterDomainMax;u.anchor==="free"&&(J=Math.min(J,u.position),Z=Math.max(Z,u.position)),U=i.t+(1-Z)*i.h,V=i.t+(1-J)*i.h}a.insert("line",":first-child").attr({x1:D,x2:D,y1:U,y2:V,"stroke-width":B,stroke:Y,"stroke-dasharray":Ro.dashStyle(u.spikedash,B)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:D,x2:D,y1:U,y2:V,"stroke-width":B+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}O.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:D,cy:G-(u.side!=="top"?B:-B),r:B,fill:Y}).classed("spikeline",!0)}}}function o0e(e,r,t){if(!t||t.length!==e._hoverdata.length)return!0;for(var a=t.length-1;a>=0;a--){var n=t[a],i=e._hoverdata[a];if(n.curveNumber!==i.curveNumber||String(n.pointNumber)!==String(i.pointNumber)||String(n.pointNumbers)!==String(i.pointNumbers)||n.binNumber!==i.binNumber)return!0}return!1}function pD(e,r){return!r||r.vLinePoint!==e._spikepoints.vLinePoint||r.hLinePoint!==e._spikepoints.hLinePoint}function yD(e,r){return mi.plainText(e||"",{len:r,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function l0e(e,r){for(var t=r.charAt(0),a=[],n=[],i=[],o=0;oe.offsetTop+e.clientTop,AD=e=>e.offsetLeft+e.clientLeft;function lc(e,r){var t=e._fullLayout,a=r.getBoundingClientRect(),n=a.left,i=a.top,o=n+a.width,l=i+a.height,s=Vt.apply3DTransform(t._invTransform)(n,i),u=Vt.apply3DTransform(t._invTransform)(o,l),f=s[0],c=s[1],v=u[0],d=u[1];return{x:f,y:c,width:v-f,height:d-c,top:Math.min(c,d),left:Math.min(f,v),right:Math.max(f,v),bottom:Math.max(c,d)}}});var ey=N((CRe,MD)=>{"use strict";var s0e=Le(),u0e=Tr(),f0e=qo().isUnifiedHover;MD.exports=function(r,t,a,n){n=n||{};var i=t.legend;function o(l){n.font[l]||(n.font[l]=i?t.legend.font[l]:t.font[l])}t&&f0e(t.hovermode)&&(n.font||(n.font={}),o("size"),o("family"),o("color"),o("weight"),o("style"),o("variant"),i?(n.bgcolor||(n.bgcolor=u0e.combine(t.legend.bgcolor,t.paper_bgcolor)),n.bordercolor||(n.bordercolor=t.legend.bordercolor)):n.bgcolor||(n.bgcolor=t.paper_bgcolor)),a("hoverlabel.bgcolor",n.bgcolor),a("hoverlabel.bordercolor",n.bordercolor),a("hoverlabel.namelength",n.namelength),a("hoverlabel.showarrow",n.showarrow),s0e.coerceFont(a,"hoverlabel.font",n.font),a("hoverlabel.align",n.align)}});var SD=N((ERe,kD)=>{"use strict";var c0e=Le(),v0e=ey(),h0e=Af();kD.exports=function(r,t){function a(n,i){return c0e.coerce(r,t,h0e,n,i)}v0e(r,t,a)}});var CD=N((DRe,LD)=>{"use strict";var qD=Le(),d0e=xp(),p0e=ey();LD.exports=function(r,t,a,n){function i(l,s){return qD.coerce(r,t,d0e,l,s)}var o=qD.extendFlat({},n.hoverlabel);t.hovertemplate&&(o.namelength=-1),p0e(r,t,i,o)}});var q5=N((RRe,ED)=>{"use strict";var y0e=Le(),m0e=Af();ED.exports=function(r,t){function a(n,i){return t[n]!==void 0?t[n]:y0e.coerce(r,t,m0e,n,i)}return a("clickmode"),a("hoversubplots"),a("hovermode")}});var PD=N((PRe,RD)=>{"use strict";var DD=Le(),g0e=Af(),b0e=q5(),x0e=ey();RD.exports=function(r,t){function a(f,c){return DD.coerce(r,t,g0e,f,c)}var n=b0e(r,t);n&&(a("hoverdistance"),a("spikedistance"));var i=a("dragmode");i==="select"&&a("selectdirection");var o=t._has("mapbox"),l=t._has("map"),s=t._has("geo"),u=t._basePlotModules.length;t.dragmode==="zoom"&&((o||l||s)&&u===1||(o||l)&&s&&u===2)&&(t.dragmode="pan"),x0e(r,t,a),DD.coerceFont(a,"hoverlabel.grouptitlefont",t.hoverlabel.font)}});var zD=N((FRe,ND)=>{"use strict";var L5=Le(),FD=br();ND.exports=function(r){var t=r.calcdata,a=r._fullLayout;function n(u){return function(f){return L5.coerceHoverinfo({hoverinfo:f},{_module:u._module},a)}}for(var i=0;i{"use strict";var w0e=br(),T0e=S5().hover;ID.exports=function(r,t,a){var n=w0e.getComponentMethod("annotations","onClick")(r,r._hoverdata);a!==void 0&&T0e(r,t,a,!0);function i(){r.emit("plotly_click",{points:r._hoverdata,event:t})}r._hoverdata&&t&&t.target&&(n&&n.then?n.then(i):i(),t.stopImmediatePropagation&&t.stopImmediatePropagation())}});var Pn=N((zRe,UD)=>{"use strict";var A0e=Sr(),ry=Le(),M0e=pi(),Mh=qo(),BD=Af(),HD=S5();UD.exports={moduleType:"component",name:"fx",constants:Xv(),schema:{layout:BD},attributes:xp(),layoutAttributes:BD,supplyLayoutGlobalDefaults:SD(),supplyDefaults:CD(),supplyLayoutDefaults:PD(),calc:zD(),getDistanceFunction:Mh.getDistanceFunction,getClosest:Mh.getClosest,inbox:Mh.inbox,quadrature:Mh.quadrature,appendArrayPointValue:Mh.appendArrayPointValue,castHoverOption:S0e,castHoverinfo:q0e,hover:HD.hover,unhover:M0e.unhover,loneHover:HD.loneHover,loneUnhover:k0e,click:OD()};function k0e(e){var r=ry.isD3Selection(e)?e:A0e.select(e);r.selectAll("g.hovertext").remove(),r.selectAll(".spikeline").remove()}function S0e(e,r,t){return ry.castOption(e,r,"hoverlabel."+t)}function q0e(e,r,t){function a(n){return ry.coerceHoverinfo({hoverinfo:n},{_module:e._module},r)}return ry.castOption(e,t,"hoverinfo",a)}});var xu=N(hl=>{"use strict";hl.selectMode=function(e){return e==="lasso"||e==="select"};hl.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};hl.openMode=function(e){return e==="drawline"||e==="drawopenpath"};hl.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};hl.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};hl.selectingOrDrawing=function(e){return hl.freeMode(e)||hl.rectMode(e)}});var ty=N((ORe,GD)=>{"use strict";GD.exports=function(r){var t=r._fullLayout;t._glcanvas&&t._glcanvas.size()&&t._glcanvas.each(function(a){a.regl&&a.regl.clear({color:!0,depth:!0})})}});var ay=N((BRe,VD)=>{"use strict";VD.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var iy=N((HRe,YD)=>{"use strict";var ny=32;YD.exports={CIRCLE_SIDES:ny,i000:0,i090:ny/4,i180:ny/2,i270:ny/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var oy=N((URe,WD)=>{"use strict";var L0e=Le().strTranslate;function jD(e,r){switch(e.type){case"log":return e.p2d(r);case"date":return e.p2r(r,0,e.calendar);default:return e.p2r(r)}}function C0e(e,r){switch(e.type){case"log":return e.d2p(r);case"date":return e.r2p(r,0,e.calendar);default:return e.r2p(r)}}function E0e(e){var r=e._id.charAt(0)==="y"?1:0;return function(t){return jD(e,t[r])}}function D0e(e){return L0e(e.xaxis._offset,e.yaxis._offset)}WD.exports={p2r:jD,r2p:C0e,axValue:E0e,getTransform:D0e}});var ts=N(dl=>{"use strict";var R0e=gx(),JD=iy(),uc=JD.CIRCLE_SIDES,C5=JD.SQRT2,$D=oy(),ZD=$D.p2r,XD=$D.r2p,P0e=[0,3,4,5,6,1,2],F0e=[0,3,4,1,2];dl.writePaths=function(e){var r=e.length;if(!r)return"M0,0Z";for(var t="",a=0;a0&&s{"use strict";var KD=la(),aR=xu(),N0e=aR.drawMode,z0e=aR.openMode,fc=iy(),QD=fc.i000,eR=fc.i090,rR=fc.i180,tR=fc.i270,I0e=fc.cos45,O0e=fc.sin45,nR=oy(),sy=nR.p2r,as=nR.r2p,B0e=Zl(),H0e=B0e.clearOutline,uy=ts(),U0e=uy.readPaths,G0e=uy.writePaths,V0e=uy.ellipseOver,Y0e=uy.fixDatesForPaths;function j0e(e,r){if(e.length){var t=e[0][0];if(t){var a=r.gd,n=r.isActiveShape,i=r.dragmode,o=(a.layout||{}).shapes||[];if(!N0e(i)&&n!==void 0){var l=a._fullLayout._activeShapeIndex;if(l{"use strict";var W0e=xu(),Z0e=W0e.selectMode,X0e=Zl(),J0e=X0e.clearOutline,E5=ts(),$0e=E5.readPaths,K0e=E5.writePaths,Q0e=E5.fixDatesForPaths;lR.exports=function(r,t){if(r.length){var a=r[0][0];if(a){var n=a.getAttribute("d"),i=t.gd,o=i._fullLayout.newselection,l=t.plotinfo,s=l.xaxis,u=l.yaxis,f=t.isActiveSelection,c=t.dragmode,v=(i.layout||{}).selections||[];if(!Z0e(c)&&f!==void 0){var d=i._fullLayout._activeSelectionIndex;if(d{"use strict";sR.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var ns=N(Da=>{"use strict";var _u=Sh(),uR=Le(),cy=zr();Da.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(r){return r}};Da.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(r){return r}};Da.decodeDate=function(e){return function(r){return r.replace&&(r=r.replace("_"," ")),e(r)}};Da.encodeDate=function(e){return function(r){return e(r).replace(" ","_")}};Da.extractPathCoords=function(e,r,t){var a=[],n=e.match(_u.segmentRE);return n.forEach(function(i){var o=r[i.charAt(0)].drawn;if(o!==void 0){var l=i.substr(1).match(_u.paramRE);if(!(!l||l.lengthd&&(y="X"),y});return u>d&&(p=p.replace(/[\s,]*X.*/,""),uR.log("Ignoring extra params in segment "+s)),f+p})}function qh(e,r){r=r||0;var t=0;return r&&e&&(e.type==="category"||e.type==="multicategory")&&(t=(e.r2p(1)-e.r2p(0))*r),t}});var P5=N((ZRe,hR)=>{"use strict";var rde=Le(),cc=zr(),fR=Ea(),cR=jr(),tde=ts().readPaths,R5=ns(),ade=R5.getPathString,vR=Lp(),nde=Wa().FROM_TL;hR.exports=function(r,t,a,n){if(n.selectAll(".shape-label").remove(),!!(a.label.text||a.label.texttemplate)){var i;if(a.label.texttemplate){var o={};if(a.type!=="path"){var l=cc.getFromId(r,a.xref),s=cc.getFromId(r,a.yref);for(var u in vR){var f=vR[u](a,l,s);f!==void 0&&(o[u]=f)}}i=rde.texttemplateStringForShapes({data:[o],fallback:a.label.texttemplatefallback,locale:r._fullLayout._d3locale,template:a.label.texttemplate})}else i=a.label.text;var c={"data-index":t},v=a.label.font,d={"data-notex":1},p=n.append("g").attr(c).classed("shape-label",!0),y=p.append("text").attr(d).classed("shape-label-text",!0).text(i),m,x,w,_;if(a.path){var b=ade(r,a),T=tde(b,r);m=1/0,w=1/0,x=-1/0,_=-1/0;for(var k=0;k=e?n=r-a:n=a-r,-180/Math.PI*Math.atan2(n,i)}function ode(e,r,t,a,n,i,o){var l=n.label.textposition,s=n.label.textangle,u=n.label.padding,f=n.type,c=Math.PI/180*i,v=Math.sin(c),d=Math.cos(c),p=n.label.xanchor,y=n.label.yanchor,m,x,w,_;if(f==="line"){l==="start"?(m=e,x=r):l==="end"?(m=t,x=a):(m=(e+t)/2,x=(r+a)/2),p==="auto"&&(l==="start"?s==="auto"?t>e?p="left":te?p="right":te?p="right":te?p="left":t{"use strict";var lde=Le(),sde=lde.strTranslate,dR=pi(),mR=xu(),ude=mR.drawMode,gR=mR.selectMode,bR=br(),pR=Tr(),hy=iy(),fde=hy.i000,cde=hy.i090,vde=hy.i180,hde=hy.i270,dde=Zl(),xR=dde.clearOutlineControllers,N5=ts(),vy=N5.pointsOnRectangle,F5=N5.pointsOnEllipse,pde=N5.writePaths,yde=fy().newShapes,mde=fy().createShapeObj,gde=D5(),bde=P5();_R.exports=function e(r,t,a,n){n||(n=0);var i=a.gd;function o(){e(r,t,a,n++),(F5(r[0])||a.hasText)&&l({redrawing:!0})}function l(G){var U={};a.isActiveShape!==void 0&&(a.isActiveShape=!1,U=yde(t,a)),a.isActiveSelection!==void 0&&(a.isActiveSelection=!1,U=gde(t,a),i._fullLayout._reselect=!0),Object.keys(U).length&&bR.call((G||{}).redrawing?"relayout":"_guiRelayout",i,U)}var s=i._fullLayout,u=s._zoomlayer,f=a.dragmode,c=ude(f),v=gR(f);(c||v)&&(i._fullLayout._outlining=!0),xR(i),t.attr("d",pde(r));var d,p,y,m,x;if(!n&&(a.isActiveShape||a.isActiveSelection)){x=xde([],r);var w=u.append("g").attr("class","outline-controllers");D(w),Y()}if(c&&a.hasText){var _=u.select(".label-temp"),b=mde(t,a,a.dragmode);bde(i,"label-temp",b,_)}function T(G){y=+G.srcElement.getAttribute("data-i"),m=+G.srcElement.getAttribute("data-j"),d[y][m].moveFn=k}function k(G,U){if(r.length){var V=x[y][m][1],J=x[y][m][2],Z=r[y],ee=Z.length;if(vy(Z)){var fe=G,ie=U;if(a.isActiveSelection){var ue=yR(Z,m);ue[1]===Z[m][1]?ie=0:fe=0}for(var K=0;K1&&!(G.length===2&&G[1][0]==="Z")&&(m===0&&(G[0][0]="M"),r[y]=G,o(),l())}}function E(G,U){if(G===2){y=+U.srcElement.getAttribute("data-i"),m=+U.srcElement.getAttribute("data-j");var V=r[y];!vy(V)&&!F5(V)&&q()}}function D(G){d=[];for(var U=0;U{"use strict";var wde=Sr(),SR=br(),wR=Le(),vc=zr(),Tde=ts().readPaths,Ade=dy(),yy=P5(),qR=Zl().clearOutlineControllers,z5=Tr(),O5=jr(),Mde=_t().arrayEditor,TR=pi(),AR=rs(),wu=Sh(),Fn=ns(),I5=Fn.getPathString;ER.exports={draw:B5,drawOne:LR,eraseActiveShape:qde,drawLabel:yy};function B5(e){var r=e._fullLayout;r._shapeUpperLayer.selectAll("path").remove(),r._shapeLowerLayer.selectAll("path").remove(),r._shapeUpperLayer.selectAll("text").remove(),r._shapeLowerLayer.selectAll("text").remove();for(var t in r._plots){var a=r._plots[t].shapelayer;a&&(a.selectAll("path").remove(),a.selectAll("text").remove())}for(var n=0;no&&Ue>l&&!Ne.shiftKey?TR.getCursor(Be/Ie,1-Ce/Ue):"move";AR(r,Oe),_e=Oe.split("-")[0]}}function ce(Ne){py(e)||(s&&(x=Z(t.xanchor)),u&&(w=ee(t.yanchor)),t.type==="path"?P=t.path:(d=s?t.x0:Z(t.x0),p=u?t.y0:ee(t.y0),y=s?t.x1:Z(t.x1),m=u?t.y1:ee(t.y1)),dm?(_=p,M="y0",b=m,q="y1"):(_=m,M="y1",b=p,q="y0"),oe(Ne),me(n,t),Pe(r,t,e),K.moveFn=_e==="move"?W:pe,K.altKey=Ne.altKey)}function j(){py(e)||(AR(r),ye(n),CR(r,e,t),SR.call("_guiRelayout",e,i.getUpdateObj()))}function Q(){py(e)||ye(n)}function W(Ne,Ee){if(t.type==="path"){var Ie=function(Ce){return Ce},Ue=Ie,Be=Ie;s?v("xanchor",t.xanchor=fe(x+Ne)):(Ue=function(Oe){return fe(Z(Oe)+Ne)},z&&z.type==="date"&&(Ue=Fn.encodeDate(Ue))),u?v("yanchor",t.yanchor=ie(w+Ee)):(Be=function(Oe){return ie(ee(Oe)+Ee)},B&&B.type==="date"&&(Be=Fn.encodeDate(Be))),v("path",t.path=MR(P,Ue,Be))}else s?v("xanchor",t.xanchor=fe(x+Ne)):(v("x0",t.x0=fe(d+Ne)),v("x1",t.x1=fe(y+Ne))),u?v("yanchor",t.yanchor=ie(w+Ee)):(v("y0",t.y0=ie(p+Ee)),v("y1",t.y1=ie(m+Ee)));r.attr("d",I5(e,t)),me(n,t),yy(e,a,t,R)}function pe(Ne,Ee){if(c){var Ie=function(Ze){return Ze},Ue=Ie,Be=Ie;s?v("xanchor",t.xanchor=fe(x+Ne)):(Ue=function(or){return fe(Z(or)+Ne)},z&&z.type==="date"&&(Ue=Fn.encodeDate(Ue))),u?v("yanchor",t.yanchor=ie(w+Ee)):(Be=function(or){return ie(ee(or)+Ee)},B&&B.type==="date"&&(Be=Fn.encodeDate(Be))),v("path",t.path=MR(P,Ue,Be))}else if(f){if(_e==="resize-over-start-point"){var Ce=d+Ne,Oe=u?p-Ee:p+Ee;v("x0",t.x0=s?Ce:fe(Ce)),v("y0",t.y0=u?Oe:ie(Oe))}else if(_e==="resize-over-end-point"){var He=y+Ne,se=u?m-Ee:m+Ee;v("x1",t.x1=s?He:fe(He)),v("y1",t.y1=u?se:ie(se))}}else{var Ae=function(Ze){return _e.indexOf(Ze)!==-1},Xe=Ae("n"),vr=Ae("s"),Fe=Ae("w"),Te=Ae("e"),qe=Xe?_+Ee:_,Ge=vr?b+Ee:b,Je=Fe?T+Ne:T,Ve=Te?k+Ne:k;u&&(Xe&&(qe=_-Ee),vr&&(Ge=b-Ee)),(!u&&Ge-qe>l||u&&qe-Ge>l)&&(v(M,t[M]=u?qe:ie(qe)),v(q,t[q]=u?Ge:ie(Ge))),Ve-Je>o&&(v(E,t[E]=s?Je:fe(Je)),v(D,t[D]=s?Ve:fe(Ve)))}r.attr("d",I5(e,t)),me(n,t),yy(e,a,t,R)}function me(Ne,Ee){(s||u)&&Ie();function Ie(){var Ue=Ee.type!=="path",Be=Ne.selectAll(".visual-cue").data([0]),Ce=1;Be.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":Ce}).classed("visual-cue",!0);var Oe=Z(s?Ee.xanchor:wR.midRange(Ue?[Ee.x0,Ee.x1]:Fn.extractPathCoords(Ee.path,wu.paramIsX))),He=ee(u?Ee.yanchor:wR.midRange(Ue?[Ee.y0,Ee.y1]:Fn.extractPathCoords(Ee.path,wu.paramIsY)));if(Oe=Fn.roundPositionForSharpStrokeRendering(Oe,Ce),He=Fn.roundPositionForSharpStrokeRendering(He,Ce),s&&u){var se="M"+(Oe-1-Ce)+","+(He-1-Ce)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Be.attr("d",se)}else if(s){var Ae="M"+(Oe-1-Ce)+","+(He-9-Ce)+"v18 h2 v-18 Z";Be.attr("d",Ae)}else{var Xe="M"+(Oe-9-Ce)+","+(He-1-Ce)+"h18 v2 h-18 Z";Be.attr("d",Xe)}}}function ye(Ne){Ne.selectAll(".visual-cue").remove()}function Pe(Ne,Ee,Ie){var Ue=Ee.xref,Be=Ee.yref,Ce=vc.getFromId(Ie,Ue),Oe=vc.getFromId(Ie,Be),He="";Ue!=="paper"&&!Ce.autorange&&(He+=Ue),Be!=="paper"&&!Oe.autorange&&(He+=Be),O5.setClipUrl(Ne,He?"clip"+Ie._fullLayout._uid+He:null,Ie)}}function MR(e,r,t){return e.replace(wu.segmentRE,function(a){var n=0,i=a.charAt(0),o=wu.paramIsX[i],l=wu.paramIsY[i],s=wu.numParams[i],u=a.substr(1).replace(wu.paramRE,function(f){return n>=s||(o[n]?f=r(f):l[n]&&(f=t(f)),n++),f});return i+u})}function Sde(e,r){if(my(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeShapeIndex){kR(e);return}e._fullLayout._activeShapeIndex=a,e._fullLayout._deactivateShape=kR,B5(e)}}}function kR(e){if(my(e)){var r=e._fullLayout._activeShapeIndex;r>=0&&(qR(e),delete e._fullLayout._activeShapeIndex,B5(e))}}function qde(e){if(my(e)){qR(e);var r=e._fullLayout._activeShapeIndex,t=(e.layout||{}).shapes||[];if(r{"use strict";var gi=br(),DR=ta(),RR=la(),Xr=ay(),Lde=gy().eraseActiveShape,by=Le(),Hr=by._,Jr=BR.exports={};Jr.toImage={name:"toImage",title:function(e){var r=e._context.toImageButtonOptions||{},t=r.format||"png";return t==="png"?Hr(e,"Download plot as a PNG"):Hr(e,"Download plot")},icon:Xr.camera,click:function(e){var r=e._context.toImageButtonOptions,t={format:r.format||"png"};by.notifier(Hr(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(a){a in r&&(t[a]=r[a])}),gi.call("downloadImage",e,t).then(function(a){by.notifier(Hr(e,"Snapshot succeeded")+" - "+a,"long")}).catch(function(){by.notifier(Hr(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Jr.sendDataToCloud={name:"sendDataToCloud",title:function(e){return Hr(e,"Edit in Chart Studio")},icon:Xr.disk,click:function(e){DR.sendDataToCloud(e)}};Jr.editInChartStudio={name:"editInChartStudio",title:function(e){return Hr(e,"Edit in Chart Studio")},icon:Xr.pencil,click:function(e){DR.sendDataToCloud(e)}};Jr.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return Hr(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Xr.zoombox,click:ln};Jr.pan2d={name:"pan2d",_cat:"pan",title:function(e){return Hr(e,"Pan")},attr:"dragmode",val:"pan",icon:Xr.pan,click:ln};Jr.select2d={name:"select2d",_cat:"select",title:function(e){return Hr(e,"Box Select")},attr:"dragmode",val:"select",icon:Xr.selectbox,click:ln};Jr.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return Hr(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Xr.lasso,click:ln};Jr.drawclosedpath={name:"drawclosedpath",title:function(e){return Hr(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Xr.drawclosedpath,click:ln};Jr.drawopenpath={name:"drawopenpath",title:function(e){return Hr(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Xr.drawopenpath,click:ln};Jr.drawline={name:"drawline",title:function(e){return Hr(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Xr.drawline,click:ln};Jr.drawrect={name:"drawrect",title:function(e){return Hr(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Xr.drawrect,click:ln};Jr.drawcircle={name:"drawcircle",title:function(e){return Hr(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Xr.drawcircle,click:ln};Jr.eraseshape={name:"eraseshape",title:function(e){return Hr(e,"Erase active shape")},icon:Xr.eraseshape,click:Lde};Jr.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return Hr(e,"Zoom in")},attr:"zoom",val:"in",icon:Xr.zoom_plus,click:ln};Jr.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return Hr(e,"Zoom out")},attr:"zoom",val:"out",icon:Xr.zoom_minus,click:ln};Jr.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return Hr(e,"Autoscale")},attr:"zoom",val:"auto",icon:Xr.autoscale,click:ln};Jr.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return Hr(e,"Reset axes")},attr:"zoom",val:"reset",icon:Xr.home,click:ln};Jr.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return Hr(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Xr.tooltip_basic,gravity:"ne",click:ln};Jr.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return Hr(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Xr.tooltip_compare,gravity:"ne",click:ln};function ln(e,r){var t=r.currentTarget,a=t.getAttribute("data-attr"),n=t.getAttribute("data-val")||!0,i=e._fullLayout,o={},l=RR.list(e,null,!0),s=i._cartesianSpikesEnabled,u,f;if(a==="zoom"){var c=n==="in"?.5:2,v=(1+c)/2,d=(1-c)/2,p,y;for(f=0;f{"use strict";var HR=G5(),Dde=Object.keys(HR),UR=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],GR=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(UR),dc=[],Rde=function(e){if(GR.indexOf(e._cat||e.name)===-1){var r=e.name,t=(e._cat||e.name).toLowerCase();dc.indexOf(r)===-1&&dc.push(r),dc.indexOf(t)===-1&&dc.push(t)}};Dde.forEach(function(e){Rde(HR[e])});dc.sort();VR.exports={DRAW_MODES:UR,backButtons:GR,foreButtons:dc}});var Y5=N((ePe,YR)=>{"use strict";var QRe=V5();YR.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var WR=N((rPe,jR)=>{"use strict";var Pde=Le(),Lh=Tr(),Fde=_t(),Nde=Y5();jR.exports=function(r,t){var a=r.modebar||{},n=Fde.newContainer(t,"modebar");function i(l,s){return Pde.coerce(a,n,Nde,l,s)}i("orientation"),i("bgcolor",Lh.addOpacity(t.paper_bgcolor,.5));var o=Lh.contrast(Lh.rgb(t.modebar.bgcolor));i("color",Lh.addOpacity(o,.3)),i("activecolor",Lh.addOpacity(o,.7)),i("uirevision",t.uirevision),i("add"),i("remove")}});var $R=N((tPe,JR)=>{"use strict";var j5=Sr(),zde=Rr(),_y=Le(),ZR=ay(),Ide=sp().version,Ode=new DOMParser;function XR(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Fo=XR.prototype;Fo.update=function(e,r){this.graphInfo=e;var t=this.graphInfo._context,a=this.graphInfo._fullLayout,n="modebar-"+a._uid;this.element.setAttribute("id",n),this.element.setAttribute("role","toolbar"),this._uid=n,this.element.className="modebar modebar--custom",t.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),a.modebar.orientation==="v"&&(this.element.className+=" vertical",r=r.reverse());var i=a.modebar,o="#"+n+" .modebar-group";document.querySelectorAll(o).forEach(function(c){c.style.backgroundColor=i.bgcolor});var l=!this.hasButtons(r),s=this.hasLogo!==t.displaylogo,u=this.locale!==t.locale;if(this.locale=t.locale,(l||s||u)&&(this.removeAllButtons(),this.updateButtons(r),t.watermark||t.displaylogo)){var f=this.getLogo();t.watermark&&(f.className=f.className+" watermark"),a.modebar.orientation==="v"?this.element.insertBefore(f,this.element.childNodes[0]):this.element.appendChild(f),this.hasLogo=!0}this.updateActiveButton(),_y.setStyleOnHover("#"+n+" .modebar-btn",".active",".icon path","fill: "+i.activecolor,"fill: "+i.color,this.element)};Fo.updateButtons=function(e){var r=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(t){var a=r.createGroup();t.forEach(function(n){var i=n.name;if(!i)throw new Error("must provide button 'name' in button config");if(r.buttonsNames.indexOf(i)!==-1)throw new Error("button name '"+i+"' is taken");r.buttonsNames.push(i);var o=r.createButton(n);r.buttonElements.push(o),a.appendChild(o)}),r.element.appendChild(a)})};Fo.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var r=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=r.bgcolor,e};Fo.createButton=function(e){var r=this,t=document.createElement("button");t.setAttribute("type","button"),t.setAttribute("rel","tooltip"),t.className="modebar-btn";var a=e.title;a===void 0?a=e.name:typeof a=="function"&&(a=a(this.graphInfo)),(a||a===0)&&(t.setAttribute("data-title",a),t.setAttribute("aria-label",a)),e.attr!==void 0&&t.setAttribute("data-attr",e.attr);var n=e.val;n!==void 0&&(typeof n=="function"&&(n=n(this.graphInfo)),t.setAttribute("data-val",n));var i=e.click;if(typeof i!="function")throw new Error("must provide button 'click' function in button config");t.addEventListener("click",function(l){e.click(r.graphInfo,l),r.updateActiveButton(l.currentTarget)}),t.setAttribute("data-toggle",e.toggle||!1),e.toggle&&j5.select(t).classed("active",!0);var o=e.icon;return typeof o=="function"?t.appendChild(o()):t.appendChild(this.createIcon(o||ZR.question)),t.setAttribute("data-gravity",e.gravity||"n"),t};Fo.createIcon=function(e){var r=zde(e.height)?Number(e.height):e.ascent-e.descent,t="http://www.w3.org/2000/svg",a;if(e.path){a=document.createElementNS(t,"svg"),a.setAttribute("viewBox",[0,0,e.width,r].join(" ")),a.setAttribute("class","icon");var n=document.createElementNS(t,"path");n.setAttribute("d",e.path),e.transform?n.setAttribute("transform",e.transform):e.ascent!==void 0&&n.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),a.appendChild(n)}if(e.svg){var i=Ode.parseFromString(e.svg,"application/xml");a=i.childNodes[0]}return a.setAttribute("height","1em"),a.setAttribute("width","1em"),a};Fo.updateActiveButton=function(e){var r=this.graphInfo._fullLayout,t=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(a){var n=a.getAttribute("data-val")||!0,i=a.getAttribute("data-attr"),o=a.getAttribute("data-toggle")==="true",l=j5.select(a),s=function(c,v){var d=r.modebar,p=c.querySelector(".icon path");p&&(v||c.matches(":hover")?p.style.fill=d.activecolor:p.style.fill=d.color)};if(o){if(i===t){var u=!l.classed("active");l.classed("active",u),s(a,u)}}else{var f=i===null?i:_y.nestedProperty(r,i).get();l.classed("active",f===n),s(a,f===n)}})};Fo.hasButtons=function(e){var r=this.buttons;if(!r||e.length!==r.length)return!1;for(var t=0;t{"use strict";var Ude=la(),KR=Dn(),W5=br(),Gde=qo().isUnifiedHover,Vde=$R(),wy=G5(),Yde=V5().DRAW_MODES,jde=Le().extendDeep;QR.exports=function(r){var t=r._fullLayout,a=r._context,n=t._modeBar;if(!a.displayModeBar&&!a.watermark){n&&(n.destroy(),delete t._modeBar);return}if(!Array.isArray(a.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(a.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var i=a.modeBarButtons,o;Array.isArray(i)&&i.length?o=Kde(i):!a.displayModeBar&&a.watermark?o=[]:o=Wde(r),n?n.update(r,o):t._modeBar=Vde(r,o)};function Wde(e){var r=e._fullLayout,t=e._fullData,a=e._context;function n(U,V){if(typeof V=="string"){if(V.toLowerCase()===U.toLowerCase())return!0}else{var J=V.name,Z=V._cat||V.name;if(J===U||Z===U.toLowerCase())return!0}return!1}var i=r.modebar.add;typeof i=="string"&&(i=[i]);var o=r.modebar.remove;typeof o=="string"&&(o=[o]);var l=a.modeBarButtonsToAdd.concat(i.filter(function(U){for(var V=0;V1?(D=["toggleHover"],P=["resetViews"]):c?(E=["zoomInGeo","zoomOutGeo"],D=["hoverClosestGeo"],P=["resetGeo"]):f?(D=["hoverClosest3d"],P=["resetCameraDefault3d","resetCameraLastSave3d"]):y?(E=["zoomInMapbox","zoomOutMapbox"],D=["toggleHover"],P=["resetViewMapbox"]):m?(E=["zoomInMap","zoomOutMap"],D=["toggleHover"],P=["resetViewMap"]):v?D=["hoverClosestPie"]:_?(D=["hoverClosestCartesian","hoverCompareCartesian"],P=["resetViewSankey"]):D=["toggleHover"],u&&D.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(Jde(t)||T)&&(D=[]),u&&!b&&(E=["zoomIn2d","zoomOut2d","autoScale2d"],P[0]!=="resetViews"&&(P=["resetScale2d"])),f?R=["zoom3d","pan3d","orbitRotation","tableRotation"]:u&&!b||p?R=["zoom2d","pan2d"]:y||m||c?R=["pan2d"]:x&&(R=["zoom2d"]),Xde(t)&&R.push("select2d","lasso2d");var z=[],O=function(U){z.indexOf(U)===-1&&D.indexOf(U)!==-1&&z.push(U)};if(Array.isArray(l)){for(var B=[],Y=0;Y{"use strict";rP.exports={moduleType:"component",name:"modebar",layoutAttributes:Y5(),supplyLayoutDefaults:WR(),manage:eP()}});var X5=N((iPe,tP)=>{"use strict";var Qde=Wa().FROM_BL;tP.exports=function(r,t,a){a===void 0&&(a=Qde[r.constraintoward||"center"]);var n=[r.r2l(r.range[0]),r.r2l(r.range[1])],i=n[0]+(n[1]-n[0])*a;r.range=r._input.range=[r.l2r(i+(n[0]-i)*t),r.l2r(i+(n[1]-i)*t)],r.setScale()}});var Au=N(Ch=>{"use strict";var Tu=Le(),J5=yh(),no=la().id2name,epe=hi(),aP=X5(),rpe=$f(),tpe=It().ALMOST_EQUAL,ape=Wa().FROM_BL;Ch.handleDefaults=function(e,r,t){var a=t.axIds,n=t.axHasImage,i=r._axisConstraintGroups=[],o=r._axisMatchGroups=[],l,s,u,f,c,v,d,p;for(l=0;li?t.substr(i):a.substr(n))+o}function ipe(e,r){for(var t=r._size,a=t.h/t.w,n={},i=Object.keys(e),o=0;otpe*p&&!w)){for(i=0;iR&&JD&&(D=J);var ee=(D-E)/(2*P);c/=ee,E=s.l2r(E),D=s.l2r(D),s.range=s._input.range=k{"use strict";var Ay=Sr(),sn=br(),Kn=ta(),bi=Le(),Q5=Ea(),e_=ty(),Eh=Tr(),pc=jr(),lP=Jf(),vP=Z5(),Dh=zr(),pl=Wa(),hP=Au(),ope=hP.enforce,lpe=hP.clean,sP=yh().doAutoRange,dP="start",spe="middle",pP="end",upe=Ca().zindexSeparator;Ma.layoutStyles=function(e){return bi.syncOrAsync([Kn.doAutoMargin,cpe],e)};function fpe(e,r,t){for(var a=0;a=e[1]||n[1]<=e[0])&&i[0]r[0])return!0}return!1}function cpe(e){var r=e._fullLayout,t=r._size,a=t.p,n=Dh.list(e,"",!0),i,o,l,s,u,f;if(r._paperdiv.style({width:e._context.responsive&&r.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":r.width+"px",height:e._context.responsive&&r.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":r.height+"px"}).selectAll(".main-svg").call(pc.setSize,r.width,r.height),e._context.setBackground(e,r.paper_bgcolor),Ma.drawMainTitle(e),vP.manage(e),!r._has("cartesian"))return Kn.previousPromises(e);function c(ce,j,Q){var W=ce._lw/2;if(ce._id.charAt(0)==="x"){if(j){if(Q==="top")return j._offset-a-W}else return t.t+t.h*(1-(ce.position||0))+W%1;return j._offset+j._length+a+W}if(j){if(Q==="right")return j._offset+j._length+a+W}else return t.l+t.w*(ce.position||0)+W%1;return j._offset-a-W}for(i=0;i0){ppe(e,i,u,s),l.attr({x:o,y:i,"text-anchor":a,dy:cP(r.yanchor)}).call(Q5.positionText,o,i);var f=(r.text.match(Q5.BR_TAG_ALL)||[]).length;if(f){var c=pl.LINE_SPACING*f+pl.MID_SHIFT;r.y===0&&(c=-c),l.selectAll(".line").each(function(){var m=+this.getAttribute("dy").slice(0,-2)-c+"em";this.setAttribute("dy",m)})}var v=Ay.select(e).selectAll(".gtitle-subtitle");if(v.node()){var d=l.node().getBBox(),p=d.y+d.height,y=p+lP.SUBTITLE_PADDING_EM*r.subtitle.font.size;v.attr({x:o,y,"text-anchor":a,dy:cP(r.yanchor)}).call(Q5.positionText,o,y)}}}};function vpe(e,r,t,a,n){var i=r.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,o=bi.isTopAnchor(r)?a:a-n,l=t==="b"?i-o:o;return bi.isTopAnchor(r)&&t==="t"||bi.isBottomAnchor(r)&&t==="b"?!1:l.5?"t":"b",o=e._fullLayout.margin[i],l=0;return r.yref==="paper"?l=t+r.pad.t+r.pad.b:r.yref==="container"&&(l=hpe(i,a,n,e._fullLayout.height,t)+r.pad.t+r.pad.b),l>o?l:0}function ppe(e,r,t,a){var n="title.automargin",i=e._fullLayout.title,o=i.y>.5?"t":"b",l={x:i.x,y:i.y,t:0,b:0},s={};i.yref==="paper"&&vpe(e,i,o,r,a)?l[o]=t:i.yref==="container"&&(s[o]=t,e._fullLayout._reservedMargin[n]=s),Kn.allowAutoMargin(e,n),Kn.autoMargin(e,n,l)}function ype(e,r){var t=e.title,a=e._size,n=0;switch(r===dP?n=t.pad.l:r===pP&&(n=-t.pad.r),t.xref){case"paper":return a.l+a.w*t.x+n;case"container":default:return e.width*t.x+n}}function mpe(e,r){var t=e.title,a=e._size,n=0;if(r==="0em"||!r?n=-t.pad.b:r===pl.CAP_SHIFT+"em"&&(n=t.pad.t),t.y==="auto")return a.t/2;switch(t.yref){case"paper":return a.t+a.h-a.h*t.y+n;case"container":default:return e.height-e.height*t.y+n}}function cP(e){return e==="top"?pl.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":pl.MID_SHIFT+"em"}function gpe(e){var r=e.title,t=spe;return bi.isRightAnchor(r)?t=pP:bi.isLeftAnchor(r)&&(t=dP),t}function bpe(e){var r=e.title,t="0em";return bi.isTopAnchor(r)?t=pl.CAP_SHIFT+"em":bi.isMiddleAnchor(r)&&(t=pl.MID_SHIFT+"em"),t}Ma.doTraceStyle=function(e){var r=e.calcdata,t=[],a;for(a=0;a{"use strict";var xpe=ts().readPaths,_pe=dy(),yP=Zl().clearOutlineControllers,r_=Tr(),mP=jr(),wpe=_t().arrayEditor,gP=ns(),Tpe=gP.getPathString;xP.exports={draw:ky,drawOne:bP,activateLastSelection:kpe};function ky(e){var r=e._fullLayout;yP(e),r._selectionLayer.selectAll("path").remove();for(var t in r._plots){var a=r._plots[t].selectionLayer;a&&a.selectAll("path").remove()}for(var n=0;n=0;m--){var x=o.append("path").attr(s).style("opacity",m?.1:u).call(r_.stroke,c).call(r_.fill,f).call(mP.dashLine,m?"solid":d,m?4+v:v);if(Ape(x,e,a),p){var w=wpe(e.layout,"selections",a);x.style({cursor:"move"});var _={element:x.node(),plotinfo:n,gd:e,editHelpers:w,isActiveSelection:!0},b=xpe(l,e);_pe(b,x,_)}else x.style("pointer-events",m?"all":"none");y[m]=x}var T=y[0],k=y[1];k.node().addEventListener("click",function(){return Mpe(e,T)})}}function Ape(e,r,t){var a=t.xref+t.yref;mP.setClipUrl(e,"clip"+r._fullLayout._uid+a,r)}function Mpe(e,r){if(Sy(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeSelectionIndex){t_(e);return}e._fullLayout._activeSelectionIndex=a,e._fullLayout._deactivateSelection=t_,ky(e)}}}function kpe(e){if(Sy(e)){var r=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=r,e._fullLayout._deactivateSelection=t_,ky(e)}}function t_(e){if(Sy(e)){var r=e._fullLayout._activeSelectionIndex;r>=0&&(yP(e),delete e._fullLayout._activeSelectionIndex,ky(e))}}});var wP=N((uPe,_P)=>{function Spe(){var e,r=0,t=!1;function a(n,i){return e.list.push({type:n,data:i?JSON.parse(JSON.stringify(i)):void 0}),e}return e={list:[],segmentId:function(){return r++},checkIntersection:function(n,i){return a("check",{seg1:n,seg2:i})},segmentChop:function(n,i){return a("div_seg",{seg:n,pt:i}),a("chop",{seg:n,pt:i})},statusRemove:function(n){return a("pop_seg",{seg:n})},segmentUpdate:function(n){return a("seg_update",{seg:n})},segmentNew:function(n,i){return a("new_seg",{seg:n,primary:i})},segmentRemove:function(n){return a("rem_seg",{seg:n})},tempStatus:function(n,i,o){return a("temp_status",{seg:n,above:i,below:o})},rewind:function(n){return a("rewind",{seg:n})},status:function(n,i,o){return a("status",{seg:n,above:i,below:o})},vert:function(n){return n===t?e:(t=n,a("vert",{x:n}))},log:function(n){return typeof n!="string"&&(n=JSON.stringify(n,!1," ")),a("log",{txt:n})},reset:function(){return a("reset")},selected:function(n){return a("selected",{segs:n})},chainStart:function(n){return a("chain_start",{seg:n})},chainRemoveHead:function(n,i){return a("chain_rem_head",{index:n,pt:i})},chainRemoveTail:function(n,i){return a("chain_rem_tail",{index:n,pt:i})},chainNew:function(n,i){return a("chain_new",{pt1:n,pt2:i})},chainMatch:function(n){return a("chain_match",{index:n})},chainClose:function(n){return a("chain_close",{index:n})},chainAddHead:function(n,i){return a("chain_add_head",{index:n,pt:i})},chainAddTail:function(n,i){return a("chain_add_tail",{index:n,pt:i})},chainConnect:function(n,i){return a("chain_con",{index1:n,index2:i})},chainReverse:function(n){return a("chain_rev",{index:n})},chainJoin:function(n,i){return a("chain_join",{index1:n,index2:i})},done:function(){return a("done")}},e}_P.exports=Spe});var AP=N((fPe,TP)=>{function qpe(e){typeof e!="number"&&(e=1e-10);var r={epsilon:function(t){return typeof t=="number"&&(e=t),e},pointAboveOrOnLine:function(t,a,n){var i=a[0],o=a[1],l=n[0],s=n[1],u=t[0],f=t[1];return(l-i)*(f-o)-(s-o)*(u-i)>=-e},pointBetween:function(t,a,n){var i=t[1]-a[1],o=n[0]-a[0],l=t[0]-a[0],s=n[1]-a[1],u=l*o+i*s;if(u-e)},pointsSameX:function(t,a){return Math.abs(t[0]-a[0])e!=l-i>e&&(o-f)*(i-c)/(l-c)+f-n>e&&(s=!s),o=f,l=c}return s}};return r}TP.exports=qpe});var kP=N((cPe,MP)=>{var Lpe={create:function(){var e={root:{root:!0,next:null},exists:function(r){return!(r===null||r===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(r,t){for(var a=e.root,n=e.root.next;n!==null;){if(t(n)){r.prev=n.prev,r.next=n,n.prev.next=r,n.prev=r;return}a=n,n=n.next}a.next=r,r.prev=a,r.next=null},findTransition:function(r){for(var t=e.root,a=e.root.next;a!==null&&!r(a);)t=a,a=a.next;return{before:t===e.root?null:t,after:a,insert:function(n){return n.prev=t,n.next=a,t.next=n,a!==null&&(a.prev=n),n}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};MP.exports=Lpe});var qP=N((vPe,SP)=>{var Rh=kP();function Cpe(e,r,t){function a(p,y){return{id:t?t.segmentId():-1,start:p,end:y,myFill:{above:null,below:null},otherFill:null}}function n(p,y,m){return{id:t?t.segmentId():-1,start:p,end:y,myFill:{above:m.myFill.above,below:m.myFill.below},otherFill:null}}var i=Rh.create();function o(p,y,m,x,w,_){var b=r.pointsCompare(y,w);return b!==0?b:r.pointsSame(m,_)?0:p!==x?p?1:-1:r.pointAboveOrOnLine(m,x?w:_,x?_:w)?1:-1}function l(p,y){i.insertBefore(p,function(m){var x=o(p.isStart,p.pt,y,m.isStart,m.pt,m.other.pt);return x<0})}function s(p,y){var m=Rh.node({isStart:!0,pt:p.start,seg:p,primary:y,other:null,status:null});return l(m,p.end),m}function u(p,y,m){var x=Rh.node({isStart:!1,pt:y.end,seg:y,primary:m,other:p,status:null});p.other=x,l(x,p.pt)}function f(p,y){var m=s(p,y);return u(m,p,y),m}function c(p,y){t&&t.segmentChop(p.seg,y),p.other.remove(),p.seg.end=y,p.other.pt=y,l(p.other,p.pt)}function v(p,y){var m=n(y,p.seg.end,p.seg);return c(p,y),f(m,p.primary)}function d(p,y){var m=Rh.create();function x(B,Y){var G=B.seg.start,U=B.seg.end,V=Y.seg.start,J=Y.seg.end;return r.pointsCollinear(G,V,J)?r.pointsCollinear(U,V,J)||r.pointAboveOrOnLine(U,V,J)?1:-1:r.pointAboveOrOnLine(G,V,J)?1:-1}function w(B){return m.findTransition(function(Y){var G=x(B,Y.ev);return G>0})}function _(B,Y){var G=B.seg,U=Y.seg,V=G.start,J=G.end,Z=U.start,ee=U.end;t&&t.checkIntersection(G,U);var fe=r.linesIntersect(V,J,Z,ee);if(fe===!1){if(!r.pointsCollinear(V,J,Z)||r.pointsSame(V,ee)||r.pointsSame(J,Z))return!1;var ie=r.pointsSame(V,Z),ue=r.pointsSame(J,ee);if(ie&&ue)return Y;var K=!ie&&r.pointBetween(V,Z,ee),_e=!ue&&r.pointBetween(J,Z,ee);if(ie)return _e?v(Y,J):v(B,ee),Y;K&&(ue||(_e?v(Y,J):v(B,ee)),v(Y,V))}else fe.alongA===0&&(fe.alongB===-1?v(B,Z):fe.alongB===0?v(B,fe.pt):fe.alongB===1&&v(B,ee)),fe.alongB===0&&(fe.alongA===-1?v(Y,V):fe.alongA===0?v(Y,fe.pt):fe.alongA===1&&v(Y,J));return!1}for(var b=[];!i.isEmpty();){var T=i.getHead();if(t&&t.vert(T.pt[0]),T.isStart){let B=function(){if(M){var Y=_(T,M);if(Y)return Y}return q?_(T,q):!1};var O=B;t&&t.segmentNew(T.seg,T.primary);var k=w(T),M=k.before?k.before.ev:null,q=k.after?k.after.ev:null;t&&t.tempStatus(T.seg,M?M.seg:!1,q?q.seg:!1);var E=B();if(E){if(e){var D;T.seg.myFill.below===null?D=!0:D=T.seg.myFill.above!==T.seg.myFill.below,D&&(E.seg.myFill.above=!E.seg.myFill.above)}else E.seg.otherFill=T.seg.myFill;t&&t.segmentUpdate(E.seg),T.other.remove(),T.remove()}if(i.getHead()!==T){t&&t.rewind(T.seg);continue}if(e){var D;T.seg.myFill.below===null?D=!0:D=T.seg.myFill.above!==T.seg.myFill.below,q?T.seg.myFill.below=q.seg.myFill.above:T.seg.myFill.below=p,D?T.seg.myFill.above=!T.seg.myFill.below:T.seg.myFill.above=T.seg.myFill.below}else if(T.seg.otherFill===null){var P;q?T.primary===q.primary?P=q.seg.otherFill.above:P=q.seg.myFill.above:P=T.primary?y:p,T.seg.otherFill={above:P,below:P}}t&&t.status(T.seg,M?M.seg:!1,q?q.seg:!1),T.other.status=k.insert(Rh.node({ev:T}))}else{var R=T.status;if(R===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(m.exists(R.prev)&&m.exists(R.next)&&_(R.prev.ev,R.next.ev),t&&t.statusRemove(R.ev.seg),R.remove(),!T.primary){var z=T.seg.myFill;T.seg.myFill=T.seg.otherFill,T.seg.otherFill=z}b.push(T.seg)}i.getHead().remove()}return t&&t.done(),b}return e?{addRegion:function(p){for(var y,m=p[p.length-1],x=0;x{function Epe(e,r,t){var a=[],n=[];return e.forEach(function(i){var o=i.start,l=i.end;if(r.pointsSame(o,l)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}t&&t.chainStart(i);var s={index:0,matches_head:!1,matches_pt1:!1},u={index:0,matches_head:!1,matches_pt1:!1},f=s;function c(O,B,Y){return f.index=O,f.matches_head=B,f.matches_pt1=Y,f===s?(f=u,!1):(f=null,!0)}for(var v=0;v{function Ph(e,r,t){var a=[];return e.forEach(function(n){var i=(n.myFill.above?8:0)+(n.myFill.below?4:0)+(n.otherFill&&n.otherFill.above?2:0)+(n.otherFill&&n.otherFill.below?1:0);r[i]!==0&&a.push({id:t?t.segmentId():-1,start:n.start,end:n.end,myFill:{above:r[i]===1,below:r[i]===2},otherFill:null})}),t&&t.selected(a),a}var Dpe={union:function(e,r){return Ph(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],r)},intersect:function(e,r){return Ph(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],r)},difference:function(e,r){return Ph(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],r)},differenceRev:function(e,r){return Ph(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],r)},xor:function(e,r){return Ph(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],r)}};EP.exports=Dpe});var PP=N((pPe,RP)=>{var Rpe={toPolygon:function(e,r){function t(i){if(i.length<=0)return e.segments({inverted:!1,regions:[]});function o(u){var f=u.slice(0,u.length-1);return e.segments({inverted:!1,regions:[f]})}for(var l=o(i[0]),s=1;s{var Ppe=wP(),Fpe=AP(),FP=qP(),Npe=CP(),Fh=DP(),NP=PP(),xi=!1,Nh=Fpe(),Nn;Nn={buildLog:function(e){return e===!0?xi=Ppe():e===!1&&(xi=!1),xi===!1?!1:xi.list},epsilon:function(e){return Nh.epsilon(e)},segments:function(e){var r=FP(!0,Nh,xi);return e.regions.forEach(r.addRegion),{segments:r.calculate(e.inverted),inverted:e.inverted}},combine:function(e,r){var t=FP(!1,Nh,xi);return{combined:t.calculate(e.segments,e.inverted,r.segments,r.inverted),inverted1:e.inverted,inverted2:r.inverted}},selectUnion:function(e){return{segments:Fh.union(e.combined,xi),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:Fh.intersect(e.combined,xi),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:Fh.difference(e.combined,xi),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:Fh.differenceRev(e.combined,xi),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:Fh.xor(e.combined,xi),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:Npe(e.segments,Nh,xi),inverted:e.inverted}},polygonFromGeoJSON:function(e){return NP.toPolygon(Nn,e)},polygonToGeoJSON:function(e){return NP.fromPolygon(Nn,Nh,e)},union:function(e,r){return zh(e,r,Nn.selectUnion)},intersect:function(e,r){return zh(e,r,Nn.selectIntersect)},difference:function(e,r){return zh(e,r,Nn.selectDifference)},differenceRev:function(e,r){return zh(e,r,Nn.selectDifferenceRev)},xor:function(e,r){return zh(e,r,Nn.selectXor)}};function zh(e,r,t){var a=Nn.segments(e),n=Nn.segments(r),i=Nn.combine(a,n),o=t(i);return Nn.polygon(o)}typeof window=="object"&&(window.PolyBool=Nn);zP.exports=Nn});var BP=N((mPe,OP)=>{OP.exports=function(r,t,a,n){var i=r[0],o=r[1],l=!1;a===void 0&&(a=0),n===void 0&&(n=t.length);for(var s=n-a,u=0,f=s-1;uo!=p>o&&i<(d-c)*(o-v)/(p-v)+c;y&&(l=!l)}return l}});var i_=N((gPe,HP)=>{"use strict";var n_=kp().dot,qy=It().BADNUM,Ly=HP.exports={};Ly.tester=function(r){var t=r.slice(),a=t[0][0],n=a,i=t[0][1],o=i,l;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),l=1;ln||x===qy||xo||y&&u(p))}function c(p,y){var m=p[0],x=p[1];if(m===qy||mn||x===qy||xo)return!1;var w=t.length,_=t[0][0],b=t[0][1],T=0,k,M,q,E,D;for(k=1;kMath.max(M,_)||x>Math.max(q,b)))if(xl||Math.abs(n_(c,u))>n)return!0;return!1};Ly.filter=function(r,t){var a=[r[0]],n=0,i=0;function o(s){r.push(s);var u=a.length,f=n;a.splice(i+1);for(var c=f+1;c1){var l=r.pop();o(l)}return{addPt:o,raw:r,filtered:a}}});var GP=N((bPe,UP)=>{"use strict";UP.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var cF=N((xPe,fF)=>{"use strict";var VP=IP(),zpe=BP(),Bh=br(),Ipe=jr().dashStyle,Ih=Tr(),Ope=Pn(),Bpe=qo().makeEventData,Yh=xu(),Hpe=Yh.freeMode,Upe=Yh.rectMode,Hh=Yh.drawMode,u_=Yh.openMode,f_=Yh.selectMode,YP=ns(),jP=Sh(),$P=dy(),KP=Zl().clearOutline,QP=ts(),o_=QP.handleEllipse,Gpe=QP.readPaths,Vpe=fy().newShapes,Ype=D5(),jpe=a_().activateLastSelection,Ey=Le(),Wpe=Ey.sorterAsc,eF=i_(),Oh=Ip(),_i=la().getFromId,Zpe=ty(),Xpe=My().redrawReglTraces,Dy=GP(),No=Dy.MINSELECT,Jpe=eF.filter,c_=eF.tester,v_=oy(),WP=v_.p2r,$pe=v_.axValue,Kpe=v_.getTransform;function h_(e){return e.subplot!==void 0}function Qpe(e,r,t,a,n){var i=!h_(a),o=Hpe(n),l=Upe(n),s=u_(n),u=Hh(n),f=f_(n),c=n==="drawline",v=n==="drawcircle",d=c||v,p=a.gd,y=p._fullLayout,m=f&&y.newselection.mode==="immediate"&&i,x=y._zoomlayer,w=a.element.getBoundingClientRect(),_=a.plotinfo,b=Kpe(_),T=r-w.left,k=t-w.top;y._calcInverseTransform(p);var M=Ey.apply3DTransform(y._invTransform)(T,k);T=M[0],k=M[1];var q=y._invScaleX,E=y._invScaleY,D=T,P=k,R="M"+T+","+k,z=a.xaxes[0],O=a.yaxes[0],B=z._length,Y=O._length,G=e.altKey&&!(Hh(n)&&s),U,V,J,Z,ee,fe,ie;tF(e,p,a),o&&(U=Jpe([[T,k]],Dy.BENDPX));var ue=x.selectAll("path.select-outline-"+_.id).data([1]),K=u?y.newshape:y.newselection;u&&(a.hasText=K.label.text||K.label.texttemplate);var _e=u&&!s?K.fillcolor:"rgba(0,0,0,0)",le=K.line.color||(i?Ih.contrast(p._fullLayout.plot_bgcolor):"#7f7f7f");ue.enter().append("path").attr("class","select-outline select-outline-"+_.id).style({opacity:u?K.opacity/2:1,"stroke-dasharray":Ipe(K.line.dash,K.line.width),"stroke-width":K.line.width+"px","shape-rendering":"crispEdges"}).call(Ih.stroke,le).call(Ih.fill,_e).attr("fill-rule","evenodd").classed("cursor-move",!!u).attr("transform",b).attr("d",R+"Z");var he=x.append("path").attr("class","zoombox-corners").style({fill:Ih.background,stroke:Ih.defaultLine,"stroke-width":1}).attr("transform",b).attr("d","M0,0Z");if(u&&a.hasText){var oe=x.select(".label-temp");oe.empty()&&(oe=x.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var ce=y._uid+Dy.SELECTID,j=[],Q=Ry(p,a.xaxes,a.yaxes,a.subplot);m&&!e.shiftKey&&(a._clearSubplotSelections=function(){if(i){var pe=z._id,me=O._id;lF(p,pe,me,Q);for(var ye=(p.layout||{}).selections||[],Pe=[],Ne=!1,Ee=0;Ee=0){p._fullLayout._deactivateShape(p);return}if(!u){var ye=y.clickmode;Oh.done(ce).then(function(){if(Oh.clear(ce),pe===2){for(ue.remove(),ee=0;ee-1&&rF(me,p,a.xaxes,a.yaxes,a.subplot,a,ue),ye==="event"&&Vh(p,void 0);Ope.click(p,me,_.id)}).catch(Ey.error)}},a.doneFn=function(){he.remove(),Oh.done(ce).then(function(){Oh.clear(ce),!m&&Z&&a.selectionDefs&&(Z.subtract=G,a.selectionDefs.push(Z),a.mergedPolygons.length=0,[].push.apply(a.mergedPolygons,J)),(m||u)&&Uh(a,m),a.doneFnCompleted&&a.doneFnCompleted(j),f&&Vh(p,ie)}).catch(Ey.error)}}function rF(e,r,t,a,n,i,o){var l=r._hoverdata,s=r._fullLayout,u=s.clickmode,f=u.indexOf("event")>-1,c=[],v,d,p,y,m,x,w,_,b,T;if(n1e(l)){tF(e,r,i),v=Ry(r,t,a,n);var k=i1e(l,v),M=k.pointNumbers.length>0;if(M?o1e(v,k):l1e(v)&&(w=XP(k))){for(o&&o.remove(),T=0;T=0}function a1e(e){return e._fullLayout._activeSelectionIndex>=0}function Uh(e,r){var t=e.dragmode,a=e.plotinfo,n=e.gd;t1e(n)&&n._fullLayout._deactivateShape(n),a1e(n)&&n._fullLayout._deactivateSelection(n);var i=n._fullLayout,o=i._zoomlayer,l=Hh(t),s=f_(t);if(l||s){var u=o.selectAll(".select-outline-"+a.id);if(u&&n._fullLayout._outlining){var f;l&&(f=Vpe(u,e)),f&&Bh.call("_guiRelayout",n,{shapes:f});var c;s&&!h_(e)&&(c=Ype(u,e)),c&&(n._fullLayout._noEmitSelectedAtStart=!0,Bh.call("_guiRelayout",n,{selections:c}).then(function(){r&&jpe(n)})),n._fullLayout._outlining=!1}}a.selection={},a.selection.selectionDefs=e.selectionDefs=[],a.selection.mergedPolygons=e.mergedPolygons=[]}function ZP(e){return e._id}function Ry(e,r,t,a){if(!e.calcdata)return[];var n=[],i=r.map(ZP),o=t.map(ZP),l,s,u;for(u=0;u0,i=n?a[0]:t;return r.selectedpoints?r.selectedpoints.indexOf(i)>-1:!1}function o1e(e,r){var t=[],a,n,i,o;for(o=0;o0&&t.push(a);if(t.length===1&&(i=t[0]===r.searchInfo,i&&(n=r.searchInfo.cd[0].trace,n.selectedpoints.length===r.pointNumbers.length))){for(o=0;o1||(r+=a.selectedpoints.length,r>1)))return!1;return r===1}function Gh(e,r,t){var a;for(a=0;a-1&&r;if(!o&&r){var pe=JP(e,!0);if(pe.length){var me=pe[0].xref,ye=pe[0].yref;if(me&&ye){var Pe=sF(pe),Ne=uF([_i(e,me,"x"),_i(e,ye,"y")]);Ne(j,Pe)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:W&&Vh(e,j),v._reselect=!1}if(!o&&v._deselect){var Ee=v._deselect;l=Ee.xref,s=Ee.yref,f1e(l,s,f)||lF(e,l,s,a),W&&(j.points.length?Vh(e,j):y_(e)),v._deselect=!1}return{eventData:j,selectionTesters:t}}function u1e(e){var r=e.calcdata;if(r)for(var t=0;t{"use strict";vF.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var jh=N((wPe,hF)=>{"use strict";hF.exports={axisRefDescription:function(e,r,t){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",r,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",r,"("+t+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",r,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",r,"and the",t,"of the domain of the","second",e,"axis."].join(" ")}}});var yc=N((APe,yF)=>{"use strict";var dF=m_(),pF=ma(),Py=Ca(),p1e=_t().templatedArray,TPe=jh();yF.exports=p1e("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:pF({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:dF.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:dF.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",Py.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",Py.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",Py.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",Py.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:pF({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Wh=N((MPe,mF)=>{"use strict";mF.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var Fy=N((kPe,gF)=>{"use strict";gF.exports=function(r){return{valType:"color",editType:"style",anim:!0}}});var wi=N((SPe,MF)=>{"use strict";var bF=eo().axisHoverFormat,{hovertemplateAttrs:y1e,texttemplateAttrs:m1e,templatefallbackAttrs:xF}=Yn(),_F=ko(),g1e=ma(),b1e=ui().dash,x1e=ui().pattern,_1e=jr(),w1e=Wh(),Ny=bt().extendFlat,T1e=Fy();function wF(e){return{valType:"any",dflt:0,editType:"calc"}}function TF(e){return{valType:"any",editType:"calc"}}function AF(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}MF.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:wF("x"),yperiod:wF("y"),xperiod0:TF("x0"),yperiod0:TF("y0"),xperiodalignment:AF("x"),yperiodalignment:AF("y"),xhoverformat:bF("x"),yhoverformat:bF("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:m1e(),texttemplatefallback:xF({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:y1e({},{keys:w1e.eventDataKeys}),hovertemplatefallback:xF(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:Ny({},b1e,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:T1e(!0),fillgradient:Ny({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:x1e,marker:Ny({symbol:{valType:"enumerated",values:_1e.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:Ny({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},_F("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},_F("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:g1e({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var g_=N((LPe,qF)=>{"use strict";var kF=yc(),SF=wi().line,A1e=ui().dash,zy=bt().extendFlat,M1e=Ji().overrideAll,k1e=_t().templatedArray,qPe=jh();qF.exports=M1e(k1e("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:zy({},kF.xref,{}),yref:zy({},kF.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:SF.color,width:zy({},SF.width,{min:1,dflt:1}),dash:zy({},A1e,{dflt:"dot"})}}),"arraydraw","from-root")});var DF=N((CPe,EF)=>{"use strict";var LF=Le(),Iy=zr(),S1e=ro(),q1e=g_(),CF=ns();EF.exports=function(r,t){S1e(r,t,{name:"selections",handleItemDefaults:L1e});for(var a=t.selections,n=0;n{"use strict";RF.exports=function(r,t,a){a("newselection.mode");var n=a("newselection.line.width");n&&(a("newselection.line.color"),a("newselection.line.dash")),a("activeselection.fillcolor"),a("activeselection.opacity")}});var Zh=N((DPe,zF)=>{"use strict";var C1e=br(),FF=Le(),NF=la();zF.exports=function(r){return function(a,n){var i=a[r];if(Array.isArray(i))for(var o=C1e.subplotsRegistry.cartesian,l=o.idRegex,s=n._subplots,u=s.xaxis,f=s.yaxis,c=s.cartesian,v=n._has("cartesian"),d=0;d{"use strict";var IF=a_(),Xh=cF();OF.exports={moduleType:"component",name:"selections",layoutAttributes:g_(),supplyLayoutDefaults:DF(),supplyDrawNewSelectionDefaults:PF(),includeBasePlot:Zh()("selections"),draw:IF.draw,drawOne:IF.drawOne,reselect:Xh.reselect,prepSelect:Xh.prepSelect,clearOutline:Xh.clearOutline,clearSelectionsCache:Xh.clearSelectionsCache,selectOnClick:Xh.selectOnClick}});var oN=N((PPe,iN)=>{"use strict";var T_=Sr(),Ti=Le(),BF=Ti.numberFormat,E1e=kn(),D1e=a5(),Oy=br(),XF=Ti.strTranslate,R1e=Ea(),HF=Tr(),os=jr(),P1e=Pn(),UF=zr(),F1e=rs(),N1e=pi(),JF=xu(),By=JF.selectingOrDrawing,z1e=JF.freeMode,I1e=Wa().FROM_TL,O1e=ty(),B1e=My().redrawReglTraces,H1e=ta(),x_=la().getFromId,U1e=zo().prepSelect,G1e=zo().clearOutline,V1e=zo().selectOnClick,b_=X5(),A_=Ca(),GF=A_.MINDRAG,bn=A_.MINZOOM,VF=!0;function Y1e(e,r,t,a,n,i,o,l){var s=e._fullLayout._zoomlayer,u=o+l==="nsew",f=(o+l).length===1,c,v,d,p,y,m,x,w,_,b,T,k,M,q,E,D,P,R,z,O,B,Y,G;t+=r.yaxis._shift;function U(){if(c=r.xaxis,v=r.yaxis,_=c._length,b=v._length,x=c._offset,w=v._offset,d={},d[c._id]=c,p={},p[v._id]=v,o&&l)for(var Te=r.overlays,qe=0;qe=0){Ge._fullLayout._deactivateShape(Ge);return}var Je=Ge._fullLayout.clickmode;if(w_(Ge),Te===2&&!f&&He(),u)Je.indexOf("select")>-1&&V1e(qe,Ge,y,m,r.id,Z),Je.indexOf("event")>-1&&P1e.click(Ge,qe,r.id);else if(Te===1&&f){var Ve=o?v:c,Ze=o==="s"||l==="w"?0:1,or=Ve._name+".range["+Ze+"]",rr=j1e(Ve,Ze),Ke="left",ze="middle";if(Ve.fixedrange)return;o?(ze=o==="n"?"top":"bottom",Ve.side==="right"&&(Ke="right")):l==="e"&&(Ke="right"),Ge._context.showAxisRangeEntryBoxes&&T_.select(J).call(R1e.makeEditable,{gd:Ge,immediate:!0,background:Ge._fullLayout.paper_bgcolor,text:String(rr),fill:Ve.tickfont?Ve.tickfont.color:"#444",horizontalAlign:Ke,verticalAlign:ze}).on("edit",function(ne){var ve=Ve.d2r(ne);ve!==void 0&&Oy.call("_guiRelayout",Ge,or,ve)})}}N1e.init(Z);var ie,ue,K,_e,le,he,oe,ce,j,Q;function W(Te,qe,Ge){var Je=J.getBoundingClientRect();ie=qe-Je.left,ue=Ge-Je.top,e._fullLayout._calcInverseTransform(e);var Ve=Ti.apply3DTransform(e._fullLayout._invTransform)(ie,ue);ie=Ve[0],ue=Ve[1],K={l:ie,r:ie,w:0,t:ue,b:ue,h:0},_e=e._hmpixcount?e._hmlumcount/e._hmpixcount:E1e(e._fullLayout.plot_bgcolor).getLuminance(),le="M0,0H"+_+"V"+b+"H0V0",he=!1,oe="xy",Q=!1,ce=QF(s,_e,x,w,le),j=eN(s,x,w)}function pe(Te,qe){if(e._transitioningWithDuration)return!1;var Ge=Math.max(0,Math.min(_,Y*Te+ie)),Je=Math.max(0,Math.min(b,G*qe+ue)),Ve=Math.abs(Ge-ie),Ze=Math.abs(Je-ue);K.l=Math.min(ie,Ge),K.r=Math.max(ie,Ge),K.t=Math.min(ue,Je),K.b=Math.max(ue,Je);function or(){oe="",K.r=K.l,K.t=K.b,j.attr("d","M0,0Z")}if(T.isSubplotConstrained)Ve>bn||Ze>bn?(oe="xy",Ve/_>Ze/b?(Ze=Ve*b/_,ue>Je?K.t=ue-Ze:K.b=ue+Ze):(Ve=Ze*_/b,ie>Ge?K.l=ie-Ve:K.r=ie+Ve),j.attr("d",Hy(K))):or();else if(k.isSubplotConstrained)if(Ve>bn||Ze>bn){oe="xy";var rr=Math.min(K.l/_,(b-K.b)/b),Ke=Math.max(K.r/_,(b-K.t)/b);K.l=rr*_,K.r=Ke*_,K.b=(1-rr)*b,K.t=(1-Ke)*b,j.attr("d",Hy(K))}else or();else!q||Ze0){var ne;if(k.isSubplotConstrained||!M&&q.length===1){for(ne=0;ne1&&(or.maxallowed!==void 0&&D===(or.range[0]1&&(rr.maxallowed!==void 0&&P===(rr.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function Z1e(e,r,t){return e?e==="nsew"?t?"":r==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function QF(e,r,t,a,n){return e.append("path").attr("class","zoombox").style({fill:r>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",XF(t,a)).attr("d",n+"Z")}function eN(e,r,t){return e.append("path").attr("class","zoombox-corners").style({fill:HF.background,stroke:HF.defaultLine,"stroke-width":1,opacity:0}).attr("transform",XF(r,t)).attr("d","M0,0Z")}function rN(e,r,t,a,n,i){e.attr("d",a+"M"+t.l+","+t.t+"v"+t.h+"h"+t.w+"v-"+t.h+"h-"+t.w+"Z"),tN(e,r,n,i)}function tN(e,r,t,a){t||(e.transition().style("fill",a>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),r.transition().style("opacity",1).duration(200))}function w_(e){T_.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function aN(e){VF&&e.data&&e._context.showTips&&(Ti.notifier(Ti._(e,"Double-click to zoom back out"),"long"),VF=!1)}function X1e(e,r){return"M"+(e.l-.5)+","+(r-bn-.5)+"h-3v"+(2*bn+1)+"h3ZM"+(e.r+.5)+","+(r-bn-.5)+"h3v"+(2*bn+1)+"h-3Z"}function J1e(e,r){return"M"+(r-bn-.5)+","+(e.t-.5)+"v-3h"+(2*bn+1)+"v3ZM"+(r-bn-.5)+","+(e.b+.5)+"v3h"+(2*bn+1)+"v-3Z"}function Hy(e){var r=Math.floor(Math.min(e.b-e.t,e.r-e.l,bn)/2);return"M"+(e.l-3.5)+","+(e.t-.5+r)+"h3v"+-r+"h"+r+"v-3h-"+(r+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+r)+"h-3v"+-r+"h"+-r+"v-3h"+(r+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-r)+"h-3v"+r+"h"+-r+"v3h"+(r+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-r)+"h3v"+r+"h"+r+"v3h-"+(r+3)+"Z"}function WF(e,r,t,a,n){for(var i=!1,o={},l={},s,u,f,c,v=(n||{}).xaHash,d=(n||{}).yaHash,p=0;p{"use strict";var $1e=Sr(),Uy=Pn(),K1e=pi(),Q1e=rs(),io=oN().makeDragBox,ka=Ca().DRAGGERSIZE;Gy.initInteractions=function(r){var t=r._fullLayout;if(r._context.staticPlot){$1e.select(r).selectAll(".drag").remove();return}if(!(!t._has("cartesian")&&!t._has("splom"))){var a=Object.keys(t._plots||{}).sort(function(i,o){if((t._plots[i].mainplot&&!0)===(t._plots[o].mainplot&&!0)){var l=i.split("y"),s=o.split("y");return l[0]===s[0]?Number(l[1]||1)-Number(s[1]||1):Number(l[0]||1)-Number(s[0]||1)}return t._plots[i].mainplot?1:-1});a.forEach(function(i){var o=t._plots[i],l=o.xaxis,s=o.yaxis;if(!o.mainplot){var u=io(r,o,l._offset,s._offset,l._length,s._length,"ns","ew");u.onmousemove=function(v){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===i&&r._fullLayout._plots[i]&&Uy.hover(r,v,i)},Uy.hover(r,v,i),r._fullLayout._lasthover=u,r._fullLayout._hoversubplot=i},u.onmouseout=function(v){r._dragging||(r._fullLayout._hoversubplot=null,K1e.unhover(r,v))},r._context.showAxisDragHandles&&(io(r,o,l._offset-ka,s._offset-ka,ka,ka,"n","w"),io(r,o,l._offset+l._length,s._offset-ka,ka,ka,"n","e"),io(r,o,l._offset-ka,s._offset+s._length,ka,ka,"s","w"),io(r,o,l._offset+l._length,s._offset+s._length,ka,ka,"s","e"))}if(r._context.showAxisDragHandles){if(i===l._mainSubplot){var f=l._mainLinePosition;l.side==="top"&&(f-=ka),io(r,o,l._offset+l._length*.1,f,l._length*.8,ka,"","ew"),io(r,o,l._offset,f,l._length*.1,ka,"","w"),io(r,o,l._offset+l._length*.9,f,l._length*.1,ka,"","e")}if(i===s._mainSubplot){var c=s._mainLinePosition;s.side!=="right"&&(c-=ka),io(r,o,c,s._offset+s._length*.1,ka,s._length*.8,"ns",""),io(r,o,c,s._offset+s._length*.9,ka,s._length*.1,"s",""),io(r,o,c,s._offset,ka,s._length*.1,"n","")}}});var n=t._hoverlayer.node();n.onmousemove=function(i){i.target=r._fullLayout._lasthover,Uy.hover(r,i,t._hoversubplot)},n.onclick=function(i){i.target=r._fullLayout._lasthover,Uy.click(r,i)},n.onmousedown=function(i){r._fullLayout._lasthover.onmousedown(i)},Gy.updateFx(r)}};Gy.updateFx=function(e){var r=e._fullLayout,t=r.dragmode==="pan"?"move":"crosshair";Q1e(r._draggers,t)}});var uN=N((NPe,sN)=>{"use strict";var lN=br();sN.exports=function(r){for(var t=lN.layoutArrayContainers,a=lN.layoutArrayRegexes,n=r.split("[")[0],i,o,l=0;l{"use strict";var eye=zl(),k_=Mp(),Jh=Xs(),rye=kb().sorterAsc,S_=br();$h.containerArrayMatch=uN();var tye=$h.isAddVal=function(r){return r==="add"||eye(r)},fN=$h.isRemoveVal=function(r){return r===null||r==="remove"};$h.applyContainerArrayChanges=function(r,t,a,n,i){var o=t.astr,l=S_.getComponentMethod(o,"supplyLayoutDefaults"),s=S_.getComponentMethod(o,"draw"),u=S_.getComponentMethod(o,"drawOne"),f=n.replot||n.recalc||l===k_||s===k_,c=r.layout,v=r._fullLayout;if(a[""]){Object.keys(a).length>1&&Jh.warn("Full array edits are incompatible with other edits",o);var d=a[""][""];if(fN(d))t.set(null);else if(Array.isArray(d))t.set(d);else return Jh.warn("Unrecognized full array edit value",o,d),!0;return f?!1:(l(c,v),s(r),!0)}var p=Object.keys(a).map(Number).sort(rye),y=t.get(),m=y||[],x=i(v,o).get(),w=[],_=-1,b=m.length,T,k,M,q,E,D,P,R;for(T=0;Tm.length-(P?0:1)){Jh.warn("index out of range",o,M);continue}if(D!==void 0)E.length>1&&Jh.warn("Insertion & removal are incompatible with edits to the same index.",o,M),fN(D)?w.push(M):P?(D==="add"&&(D={}),m.splice(M,0,D),x&&x.splice(M,0,{})):Jh.warn("Unrecognized full object edit value",o,M,D),_===-1&&(_=M);else for(k=0;k=0;T--)m.splice(w[T],1),x&&x.splice(w[T],1);if(m.length?y||t.set(m):t.set(null),f)return!1;if(l(c,v),u!==k_){var z;if(_===-1)z=p;else{for(b=Math.max(m.length,b),z=[],T=0;T=_));T++)z.push(M);for(T=_;T{"use strict";var pN=Rr(),yN=br(),un=Le(),Kh=ta(),mN=la(),gN=Tr(),Qh=mN.cleanId,aye=mN.getFromTrace,q_=yN.traceIs,nye=["x","y","z"];Ai.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&un.log("Clearing previous rejected promises from queue."),e._promises=[]};Ai.cleanLayout=function(e){var r,t;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var a=(Kh.subplotsRegistry.cartesian||{}).attrRegex,n=(Kh.subplotsRegistry.polar||{}).attrRegex,i=(Kh.subplotsRegistry.ternary||{}).attrRegex,o=(Kh.subplotsRegistry.gl3d||{}).attrRegex,l=Object.keys(e);for(r=0;r3?(m.x=1.02,m.xanchor="left"):m.x<-2&&(m.x=-.02,m.xanchor="right"),m.y>3?(m.y=1.02,m.yanchor="bottom"):m.y<-2&&(m.y=-.02,m.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),gN.clean(e),e.template&&e.template.layout&&Ai.cleanLayout(e.template.layout),e};function mc(e,r){var t=e[r],a=r.charAt(0);t&&t!=="paper"&&(e[r]=Qh(t,a,!0))}Ai.cleanData=function(e){for(var r=0;r0)return e.substr(0,r)}Ai.hasParent=function(e,r){for(var t=dN(r);t;){if(t in e)return!0;t=dN(t)}return!1};Ai.clearAxisTypes=function(e,r,t){for(var a=0;a{let t=(...a)=>a.every(n=>un.isPlainObject(n))||a.every(n=>Array.isArray(n));if([e,r].every(a=>Array.isArray(a))){if(e.length!==r.length)return!1;for(let a=0;aun.isPlainObject(a))){if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let a in e){if(a.startsWith("_"))continue;let n=e[a],i=r[a];if(n!==i&&!(t(n,i)?L_(n,i):!1))return!1}return!0}return!1};Ai.collectionsAreEqual=L_});var F_=N(Wr=>{"use strict";var Wy=Sr(),lye=Rr(),sye=Bb(),nr=Le(),Mt=nr.nestedProperty,D_=lh(),xn=$S(),Mi=br(),em=Bf(),_r=ta(),fn=zr(),uye=t5(),fye=hi(),C_=jr(),cye=Tr(),vye=M_().initInteractions,hye=sl(),dye=zo().clearOutline,AN=Zs().dfltConfig,Yy=cN(),aa=bN(),ht=My(),ls=Ji(),pye=Ca().AX_NAME_PATTERN,E_=0,xN=5;function yye(e,r,t,a){var n;if(e=nr.getGraphDiv(e),D_.init(e),nr.isPlainObject(r)){var i=r;r=i.data,t=i.layout,a=i.config,n=i.frames}var o=D_.triggerHandler(e,"plotly_beforeplot",[r,t,a]);if(o===!1)return Promise.reject();!r&&!t&&!nr.isPlotDiv(e)&&nr.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function l(){if(n)return Wr.addFrames(e,n)}kN(e,a),t||(t={}),Wy.select(e).classed("js-plotly-plot",!0),C_.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var s=(e.data||[]).length===0&&Array.isArray(r);Array.isArray(r)&&(aa.cleanData(r),s?e.data=r:e.data.push.apply(e.data,r),e.empty=!1),(!e.layout||s)&&(e.layout=aa.cleanLayout(t)),_r.supplyDefaults(e);var u=e._fullLayout,f=u._has("cartesian");u._replotting=!0,(s||u._shouldCreateBgLayer)&&(Oye(e),u._shouldCreateBgLayer&&delete u._shouldCreateBgLayer),C_.initGradients(e),C_.initPatterns(e),s&&fn.saveShowSpikeInitial(e);var c=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;c&&_r.doCalcdata(e);for(var v=0;v=e.data.length||n<-e.data.length)throw new Error(t+" must be valid indices for gd.data.");if(r.indexOf(n,a+1)>-1||n>=0&&r.indexOf(-e.data.length+n)>-1||n<0&&r.indexOf(e.data.length+n)>-1)throw new Error("each index in "+t+" must be unique.")}}function SN(e,r,t){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(r)||(r=[r]),Xy(e,r,"currentIndices"),typeof t!="undefined"&&!Array.isArray(t)&&(t=[t]),typeof t!="undefined"&&Xy(e,t,"newIndices"),typeof t!="undefined"&&r.length!==t.length)throw new Error("current and new indices must be of equal length.")}function _ye(e,r,t){var a,n;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("traces must be defined.");for(Array.isArray(r)||(r=[r]),a=0;a=0&&f=0&&f0&&typeof q.parts[P]!="string";)P--;var R=q.parts[P],z=q.parts[P-1]+"."+R,O=q.parts.slice(0,P).join("."),B=Mt(e.layout,O).get(),Y=Mt(a,O).get(),G=q.get();if(E!==void 0){x[M]=E,w[M]=R==="reverse"?E:yl(G);var U=em.getLayoutValObject(a,q.parts);if(U&&U.impliedEdits&&E!==null)for(var V in U.impliedEdits)_(nr.relativeAttr(M,V),U.impliedEdits[V]);if(["width","height"].indexOf(M)!==-1)if(E){_("autosize",null);var J=M==="height"?"width":"height";_(J,a[J])}else a[M]=e._initialAutoSize[M];else if(M==="autosize")_("width",E?null:a.width),_("height",E?null:a.height);else if(z.match(NN))k(z),Mt(a,O+"._inputRange").set(null);else if(z.match(zN)){k(z),Mt(a,O+"._inputRange").set(null);var Z=Mt(a,O).get();Z._inputDomain&&(Z._input.domain=Z._inputDomain.slice())}else z.match(Mye)&&Mt(a,O+"._inputDomain").set(null);if(R==="type"){T=B;var ee=Y.type==="linear"&&E==="log",fe=Y.type==="log"&&E==="linear";if(ee||fe){if(!T||!T.range)_(O+".autorange",!0);else if(Y.autorange)ee&&(T.range=T.range[1]>T.range[0]?[1,2]:[2,1]);else{var ie=T.range[0],ue=T.range[1];ee?(ie<=0&&ue<=0&&_(O+".autorange",!0),ie<=0?ie=ue/1e6:ue<=0&&(ue=ie/1e6),_(O+".range[0]",Math.log(ie)/Math.LN10),_(O+".range[1]",Math.log(ue)/Math.LN10)):(_(O+".range[0]",Math.pow(10,ie)),_(O+".range[1]",Math.pow(10,ue)))}Array.isArray(a._subplots.polar)&&a._subplots.polar.length&&a[q.parts[0]]&&q.parts[1]==="radialaxis"&&delete a[q.parts[0]]._subplot.viewInitial["radialaxis.range"],Mi.getComponentMethod("annotations","convertCoords")(e,Y,E,_),Mi.getComponentMethod("images","convertCoords")(e,Y,E,_)}else _(O+".autorange",!0),_(O+".range",null);Mt(a,O+"._inputRange").set(null)}else if(R.match(pye)){var K=Mt(a,M).get(),_e=(E||{}).type;(!_e||_e==="-")&&(_e="linear"),Mi.getComponentMethod("annotations","convertCoords")(e,K,_e,_),Mi.getComponentMethod("images","convertCoords")(e,K,_e,_)}var le=Yy.containerArrayMatch(M);if(le){f=le.array,c=le.index;var he=le.property,oe=U||{editType:"calc"};c!==""&&he===""&&(Yy.isAddVal(E)?w[M]=null:Yy.isRemoveVal(E)?w[M]=(Mt(t,f).get()||[])[c]:nr.warn("unrecognized full object value",r)),ls.update(m,oe),u[f]||(u[f]={});var ce=u[f][c];ce||(ce=u[f][c]={}),ce[he]=E,delete r[M]}else R==="reverse"?(B.range?B.range.reverse():(_(O+".autorange",!0),B.range=[1,0]),Y.autorange?m.calc=!0:m.plot=!0):(M==="dragmode"&&(E===!1&&G!==!1||E!==!1&&G===!1)||a._has("scatter-like")&&a._has("regl")&&M==="dragmode"&&(E==="lasso"||E==="select")&&!(G==="lasso"||G==="select")?m.plot=!0:U?ls.update(m,U):m.calc=!0,q.set(E))}}for(f in u){var j=Yy.applyContainerArrayChanges(e,i(t,f),u[f],m,i);j||(m.plot=!0)}for(var Q in b){T=fn.getFromId(e,Q);var W=T&&T._constraintGroup;if(W){m.calc=!0;for(var pe in W)b[pe]||(fn.getFromId(e,pe)._constraintShrinkable=!0)}}(ON(e)||r.height||r.width)&&(m.plot=!0);var me=a.shapes;for(c=0;c1;)if(a.pop(),t=Mt(r,a.join(".")+".uirevision").get(),t!==void 0)return t;return r.uirevision}function qye(e,r){for(var t=0;t[O,e._ev.listeners(O)]);i=Wr.newPlot(e,r,t,a).then(()=>{for(let[O,B]of z)B.forEach(Y=>e.on(O,Y));return Wr.react(e,r,t,a)})}else{e.data=r||[],aa.cleanData(e.data),e.layout=t||{},aa.cleanLayout(e.layout),Cye(e.data,e.layout,l,s),_r.supplyDefaults(e,{skipUpdateCalc:!0});var c=e._fullData,v=e._fullLayout,d=v.datarevision===void 0,p=v.transition,y=Rye(e,s,v,d,p),m=y.newDataRevision,x=Dye(e,l,c,d,p,m);if(ON(e)&&(y.layoutReplot=!0),x.calc||y.calc){e.calcdata=void 0;for(var w=Object.getOwnPropertyNames(v),_=0;_(f||e.emit("plotly_react",{config:a,data:r,layout:t}),e))}function Dye(e,r,t,a,n,i){var o=r.length===t.length;if(!n&&!o)return{fullReplot:!0,calc:!0};var l=ls.traceFlags();l.arrays={},l.nChanges=0,l.nChangesAnim=0;var s,u;function f(d){var p=em.getTraceValObject(u,d);return!u._module.animatable&&p.anim&&(p.anim=!1),p}var c={getValObject:f,flags:l,immutable:a,transition:n,newDataRevision:i,gd:e},v={};for(s=0;s=n.length?n[0]:n[u]:n}function l(u){return Array.isArray(i)?u>=i.length?i[0]:i[u]:i}function s(u,f){var c=0;return function(){if(u&&++c===f)return u()}}return new Promise(function(u,f){function c(){if(a._frameQueue.length!==0){for(;a._frameQueue.length;){var R=a._frameQueue.pop();R.onInterrupt&&R.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function v(R){if(R.length!==0){for(var z=0;za._timeToNext&&p()};R()}var m=0;function x(R){return Array.isArray(n)?m>=n.length?R.transitionOpts=n[m]:R.transitionOpts=n[0]:R.transitionOpts=n,m++,R}var w,_,b=[],T=r==null,k=Array.isArray(r),M=!T&&!k&&nr.isPlainObject(r);if(M)b.push({type:"object",data:x(nr.extendFlat({},r))});else if(T||["string","number"].indexOf(typeof r)!==-1)for(w=0;w0&&DD)&&P.push(_);b=P}}b.length>0?v(b):(e.emit("plotly_animated"),u())})}function Fye(e,r,t){if(e=nr.getGraphDiv(e),r==null)return Promise.resolve();if(!nr.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var a,n,i,o,l=e._transitionData._frames,s=e._transitionData._frameHash;if(!Array.isArray(r))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+r);var u=l.length+r.length*2,f=[],c={};for(a=r.length-1;a>=0;a--)if(nr.isPlainObject(r[a])){var v=r[a].name,d=(s[v]||c[v]||{}).name,p=r[a].name,y=s[d]||c[d];d&&p&&typeof p=="number"&&y&&E_q.index?-1:M.index=0;a--){if(n=f[a].frame,typeof n.name=="number"&&nr.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!n.name)for(;s[n.name="frame "+e._transitionData._counter++];);if(s[n.name]){for(i=0;i=0;t--)a=r[t],i.push({type:"delete",index:a}),o.unshift({type:"insert",index:a,value:n[a]});var l=_r.modifyFrames,s=_r.modifyFrames,u=[e,o],f=[e,i];return xn&&xn.add(e,l,u,s,f),_r.modifyFrames(e,i)}function zye(e){e=nr.getGraphDiv(e);var r=e._fullLayout||{},t=e._fullData||[];return _r.cleanPlot([],{},t,r),_r.purge(e),D_.purge(e),r._container&&r._container.remove(),delete e._context,e}function Iye(e){var r=e._fullLayout,t=e.getBoundingClientRect();if(!nr.equalDomRects(t,r._lastBBox)){var a=r._invTransform=nr.inverseTransformMatrix(nr.getFullTransformMatrix(e));r._invScaleX=Math.sqrt(a[0][0]*a[0][0]+a[0][1]*a[0][1]+a[0][2]*a[0][2]),r._invScaleY=Math.sqrt(a[1][0]*a[1][0]+a[1][1]*a[1][1]+a[1][2]*a[1][2]),r._lastBBox=t}}function Oye(e){var r=Wy.select(e),t=e._fullLayout;if(t._calcInverseTransform=Iye,t._calcInverseTransform(e),t._container=r.selectAll(".plot-container").data([0]),t._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),t._paperdiv=t._container.selectAll(".svg-container").data([0]),t._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),t._glcontainer=t._paperdiv.selectAll(".gl-container").data([{}]),t._glcontainer.enter().append("div").classed("gl-container",!0),t._paperdiv.selectAll(".main-svg").remove(),t._paperdiv.select(".modebar-container").remove(),t._paper=t._paperdiv.insert("svg",":first-child").classed("main-svg",!0),t._toppaper=t._paperdiv.append("svg").classed("main-svg",!0),t._modebardiv=t._paperdiv.append("div"),delete t._modeBar,t._hoverpaper=t._paperdiv.append("svg").classed("main-svg",!0),!t._uid){var a={};Wy.selectAll("defs").each(function(){this.id&&(a[this.id.split("-")[1]]=1)}),t._uid=nr.randstr(a)}t._paperdiv.selectAll(".main-svg").attr(hye.svgAttrs),t._defs=t._paper.append("defs").attr("id","defs-"+t._uid),t._clips=t._defs.append("g").classed("clips",!0),t._topdefs=t._toppaper.append("defs").attr("id","topdefs-"+t._uid),t._topclips=t._topdefs.append("g").classed("clips",!0),t._bgLayer=t._paper.append("g").classed("bglayer",!0),t._draggers=t._paper.append("g").classed("draglayer",!0);var n=t._paper.append("g").classed("layer-below",!0);t._imageLowerLayer=n.append("g").classed("imagelayer",!0),t._shapeLowerLayer=n.append("g").classed("shapelayer",!0),t._cartesianlayer=t._paper.append("g").classed("cartesianlayer",!0),t._polarlayer=t._paper.append("g").classed("polarlayer",!0),t._smithlayer=t._paper.append("g").classed("smithlayer",!0),t._ternarylayer=t._paper.append("g").classed("ternarylayer",!0),t._geolayer=t._paper.append("g").classed("geolayer",!0),t._funnelarealayer=t._paper.append("g").classed("funnelarealayer",!0),t._pielayer=t._paper.append("g").classed("pielayer",!0),t._iciclelayer=t._paper.append("g").classed("iciclelayer",!0),t._treemaplayer=t._paper.append("g").classed("treemaplayer",!0),t._sunburstlayer=t._paper.append("g").classed("sunburstlayer",!0),t._indicatorlayer=t._toppaper.append("g").classed("indicatorlayer",!0),t._glimages=t._paper.append("g").classed("glimages",!0);var i=t._toppaper.append("g").classed("layer-above",!0);t._imageUpperLayer=i.append("g").classed("imagelayer",!0),t._shapeUpperLayer=i.append("g").classed("shapelayer",!0),t._selectionLayer=t._toppaper.append("g").classed("selectionlayer",!0),t._infolayer=t._toppaper.append("g").classed("infolayer",!0),t._menulayer=t._toppaper.append("g").classed("menulayer",!0),t._zoomlayer=t._toppaper.append("g").classed("zoomlayer",!0),t._hoverlayer=t._hoverpaper.append("g").classed("hoverlayer",!0),t._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}Wr.animate=Pye;Wr.addFrames=Fye;Wr.deleteFrames=Nye;Wr.addTraces=DN;Wr.deleteTraces=RN;Wr.extendTraces=CN;Wr.moveTraces=R_;Wr.prependTraces=EN;Wr.newPlot=xye;Wr._doPlot=yye;Wr.purge=zye;Wr.react=Eye;Wr.redraw=bye;Wr.relayout=e0;Wr.restyle=Jy;Wr.setPlotConfig=mye;Wr.update=Ky;Wr._guiRelayout=P_(e0);Wr._guiRestyle=P_(Jy);Wr._guiUpdate=P_(Ky);Wr._storeDirectGUIEdit=Aye});var ml=N(Io=>{"use strict";var Bye=br();Io.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Io.getRedrawFunc=function(e){return function(){Bye.getComponentMethod("colorbar","draw")(e)}};Io.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Io.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var BN=window.URL||window.webkitURL;Io.createObjectURL=function(e){return BN.createObjectURL(e)};Io.revokeObjectURL=function(e){return BN.revokeObjectURL(e)};Io.createBlob=function(e,r){if(r==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(r==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var t=Hye(window.atob(e));return new window.Blob([t],{type:"image/"+r})};Io.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function Hye(e){for(var r=e.length,t=new ArrayBuffer(r),a=new Uint8Array(t),n=0;n{"use strict";var z_=Sr(),HPe=Le(),Uye=jr(),Gye=Tr(),UPe=sl(),N_=/"/g,t0="TOBESTRIPPED",Vye=new RegExp('("'+t0+")|("+t0+'")',"g");function Yye(e){var r=z_.select("body").append("div").style({display:"none"}).html(""),t=e.replace(/(&[^;]*;)/gi,function(a){return a==="<"?"<":a==="&rt;"?">":a.indexOf("<")!==-1||a.indexOf(">")!==-1?"":r.html(a).text()});return r.remove(),t}function jye(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}HN.exports=function(r,t,a){var n=r._fullLayout,i=n._paper,o=n._toppaper,l=n.width,s=n.height,u;i.insert("rect",":first-child").call(Uye.setRect,0,0,l,s).call(Gye.fill,n.paper_bgcolor);var f=n._basePlotModules||[];for(u=0;u{"use strict";var Wye=Le(),Zye=eu().EventEmitter,a0=ml();function Xye(e){var r=e.emitter||new Zye,t=new Promise(function(a,n){var i=window.Image,o=e.svg,l=e.format||"png",s=e.canvas,u=e.scale||1,f=e.width||300,c=e.height||150,v=u*f,d=u*c,p=s.getContext("2d",{willReadFrequently:!0}),y=new i,m,x;l==="svg"||Wye.isSafari()?x=a0.encodeSVG(o):(m=a0.createBlob(o,"svg"),x=a0.createObjectURL(m)),s.width=v,s.height=d,y.onload=function(){var w;switch(m=null,a0.revokeObjectURL(x),l!=="svg"&&p.drawImage(y,0,0,v,d),l){case"jpeg":w=s.toDataURL("image/jpeg");break;case"png":w=s.toDataURL("image/png");break;case"webp":w=s.toDataURL("image/webp");break;case"svg":w=x;break;default:var _="Image format is not jpeg, png, svg or webp.";if(n(new Error(_)),!e.promise)return r.emit("error",_)}a(w),e.promise||r.emit("success",w)},y.onerror=function(w){if(m=null,a0.revokeObjectURL(x),n(w),!e.promise)return r.emit("error",w)},y.src=x});return e.promise?t:r}UN.exports=Xye});var O_=N((YPe,YN)=>{"use strict";var GN=Rr(),VN=F_(),Jye=ta(),Oo=Le(),n0=ml(),$ye=tm(),Kye=am(),Qye=sp().version,I_={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function eme(e,r){r=r||{};var t,a,n,i;Oo.isPlainObject(e)?(t=e.data||[],a=e.layout||{},n=e.config||{},i={}):(e=Oo.getGraphDiv(e),t=Oo.extendDeep([],e.data),a=Oo.extendDeep({},e.layout),n=e._context,i=e._fullLayout||{});function o(k){return!(k in r)||Oo.validate(r[k],I_[k])}if(!o("width")&&r.width!==null||!o("height")&&r.height!==null)throw new Error("Height and width should be pixel values.");if(!o("format"))throw new Error("Export format is not "+Oo.join2(I_.format.values,", "," or ")+".");var l={};function s(k,M){return Oo.coerce(r,l,I_,k,M)}var u=s("format"),f=s("width"),c=s("height"),v=s("scale"),d=s("setBackground"),p=s("imageDataOnly"),y=document.createElement("div");y.style.position="absolute",y.style.left="-5000px",document.body.appendChild(y);var m=Oo.extendFlat({},a);f?m.width=f:r.width===null&&GN(i.width)&&(m.width=i.width),c?m.height=c:r.height===null&&GN(i.height)&&(m.height=i.height);var x=Oo.extendFlat({},n,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),w=n0.getRedrawFunc(y);function _(){return new Promise(function(k){setTimeout(k,n0.getDelay(y._fullLayout))})}function b(){return new Promise(function(k,M){var q=$ye(y,u,v),E=y._fullLayout.width,D=y._fullLayout.height;function P(){VN.purge(y),document.body.removeChild(y)}if(u==="full-json"){var R=Jye.graphJson(y,!1,"keepdata","object",!0,!0);return R.version=Qye,R=JSON.stringify(R),P(),k(p?R:n0.encodeJSON(R))}if(P(),u==="svg")return k(p?q:n0.encodeSVG(q));var z=document.createElement("canvas");z.id=Oo.randstr(),Kye({format:u,width:E,height:D,scale:v,canvas:z,svg:q,promise:!0}).then(k).catch(M)})}function T(k){return p?k.replace(n0.IMAGE_URL_PREFIX,""):k}return new Promise(function(k,M){VN.newPlot(y,t,m,x).then(w).then(_).then(b).then(function(q){k(T(q))}).catch(function(q){M(q)})})}YN.exports=eme});var ZN=N((jPe,WN)=>{"use strict";var ki=Le(),rme=ta(),tme=Bf(),ame=Zs().dfltConfig,oo=ki.isPlainObject,ku=Array.isArray,B_=ki.isArrayOrTypedArray;WN.exports=function(r,t){r===void 0&&(r=[]),t===void 0&&(t={});var a=tme.get(),n=[],i={_context:ki.extendFlat({},ame)},o,l;ku(r)?(i.data=ki.extendDeep([],r),o=r):(i.data=[],o=[],n.push(Sa("array","data"))),oo(t)?(i.layout=ki.extendDeep({},t),l=t):(i.layout={},l={},arguments.length>1&&n.push(Sa("object","layout"))),rme.supplyDefaults(i);for(var s=i._fullData,u=o.length,f=0;fc.length&&a.push(Sa("unused",n,u.concat(c.length)));var x=c.length,w=Array.isArray(m);w&&(x=Math.min(x,m.length));var _,b,T,k,M;if(v.dimensions===2)for(b=0;bc[b].length&&a.push(Sa("unused",n,u.concat(b,c[b].length)));var q=c[b].length;for(_=0;_<(w?Math.min(q,m[b].length):q);_++)T=w?m[b][_]:m,k=f[b][_],M=c[b][_],ki.validate(k,T)?M!==k&&M!==+k&&a.push(Sa("dynamic",n,u.concat(b,_),k,M)):a.push(Sa("value",n,u.concat(b,_),k))}else a.push(Sa("array",n,u.concat(b),f[b]));else for(b=0;b{"use strict";var fme=Le(),im=ml();function cme(e,r,t){var a=document.createElement("a"),n="download"in a,i=new Promise(function(o,l){var s,u;if(n)return s=im.createBlob(e,t),u=im.createObjectURL(s),a.href=u,a.download=r,document.body.appendChild(a),a.click(),document.body.removeChild(a),im.revokeObjectURL(u),s=null,o(r);if(fme.isSafari()){var f=t==="svg"?",":";base64,";return im.octetStream(f+encodeURIComponent(e)),o(r)}l(new Error("download error"))});return i}XN.exports=cme});var H_=N((XPe,KN)=>{"use strict";var $N=Le(),vme=O_(),hme=JN(),ZPe=ml();function dme(e,r){var t;return $N.isPlainObject(e)||(t=$N.getGraphDiv(e)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(a,n){t&&t._snapshotInProgress&&n(new Error("Snapshotting already in progress.")),t&&(t._snapshotInProgress=!0);var i=vme(e,r),o=r.filename||e.fn||"newplot";o+="."+r.format.replace("-","."),i.then(function(l){return t&&(t._snapshotInProgress=!1),hme(l,o,r.format)}).then(function(l){a(l)}).catch(function(l){t&&(t._snapshotInProgress=!1),n(l)})})}KN.exports=dme});var az=N(U_=>{"use strict";var zn=Le(),In=zn.isPlainObject,QN=Bf(),ez=ta(),pme=gn(),rz=_t(),tz=Zs().dfltConfig;U_.makeTemplate=function(e){e=zn.isPlainObject(e)?e:zn.getGraphDiv(e),e=zn.extendDeep({_context:tz},{data:e.data,layout:e.layout}),ez.supplyDefaults(e);var r=e.data||[],t=e.layout||{};t._basePlotModules=e._fullLayout._basePlotModules,t._modules=e._fullLayout._modules;var a={data:{},layout:{}};r.forEach(function(d){var p={};i0(d,p,mme.bind(null,d));var y=zn.coerce(d,{},pme,"type"),m=a.data[y];m||(m=a.data[y]=[]),m.push(p)}),i0(t,a.layout,yme.bind(null,t)),delete a.layout.template;var n=t.template;if(In(n)){var i=n.layout,o,l,s,u,f,c;In(i)&&om(i,a.layout);var v=n.data;if(In(v)){for(l in a.data)if(s=v[l],Array.isArray(s)){for(f=a.data[l],c=f.length,u=s.length,o=0;ox?o.push({code:"unused",traceType:d,templateCount:m,dataCount:x}):x>m&&o.push({code:"reused",traceType:d,templateCount:m,dataCount:x})}}function w(_,b){for(var T in _)if(T.charAt(0)!=="_"){var k=_[T],M=Si(_,T,b);In(k)?(Array.isArray(_)&&k._template===!1&&k.templateitemname&&o.push({code:"missing",path:M,templateitemname:k.templateitemname}),w(k,M)):Array.isArray(k)&&gme(k)&&w(k,M)}}if(w({data:s,layout:l},""),o.length)return o.map(bme)};function gme(e){for(var r=0;r{"use strict";var xa=F_();Pt._doPlot=xa._doPlot;Pt.newPlot=xa.newPlot;Pt.restyle=xa.restyle;Pt.relayout=xa.relayout;Pt.redraw=xa.redraw;Pt.update=xa.update;Pt._guiRestyle=xa._guiRestyle;Pt._guiRelayout=xa._guiRelayout;Pt._guiUpdate=xa._guiUpdate;Pt._storeDirectGUIEdit=xa._storeDirectGUIEdit;Pt.react=xa.react;Pt.extendTraces=xa.extendTraces;Pt.prependTraces=xa.prependTraces;Pt.addTraces=xa.addTraces;Pt.deleteTraces=xa.deleteTraces;Pt.moveTraces=xa.moveTraces;Pt.purge=xa.purge;Pt.addFrames=xa.addFrames;Pt.deleteFrames=xa.deleteFrames;Pt.animate=xa.animate;Pt.setPlotConfig=xa.setPlotConfig;var xme=Qv().getGraphDiv,_me=gy().eraseActiveShape;Pt.deleteActiveShape=function(e){return _me(xme(e))};Pt.toImage=O_();Pt.validate=ZN();Pt.downloadImage=H_();var nz=az();Pt.makeTemplate=nz.makeTemplate;Pt.validateTemplate=nz.validateTemplate});var V_=N((KPe,oz)=>{"use strict";var G_=Le(),wme=br();oz.exports=function(r,t,a,n){var i=n("x"),o=n("y"),l,s=wme.getComponentMethod("calendars","handleTraceDefaults");if(s(r,t,["x","y"],a),i){var u=G_.minRowLength(i);o?l=Math.min(u,G_.minRowLength(o)):(l=u,n("y0"),n("dy"))}else{if(!o)return 0;l=G_.minRowLength(o),n("x0"),n("dx")}return t._length=l,l}});var gc=N((QPe,uz)=>{"use strict";var lz=Le().dateTick0,Tme=It(),Ame=Tme.ONEWEEK;function sz(e,r){return e%Ame===0?lz(r,1):lz(r,0)}uz.exports=function(r,t,a,n,i){if(i||(i={x:!0,y:!0}),i.x){var o=n("xperiod");o&&(n("xperiod0",sz(o,t.xcalendar)),n("xperiodalignment"))}if(i.y){var l=n("yperiod");l&&(n("yperiod0",sz(l,t.ycalendar)),n("yperiodalignment"))}}});var vz=N((eFe,cz)=>{"use strict";var fz=["orientation","groupnorm","stackgaps"];cz.exports=function(r,t,a,n){var i=a._scatterStackOpts,o=n("stackgroup");if(o){var l=t.xaxis+t.yaxis,s=i[l];s||(s=i[l]={});var u=s[o],f=!1;u?u.traces.push(t):(u=s[o]={traceIndices:[],traces:[t]},f=!0);for(var c={orientation:t.x&&!t.y?"h":"v"},v=0;v{"use strict";var hz=Tr(),dz=Wn().hasColorscale,pz=fl(),Mme=Dn();yz.exports=function(r,t,a,n,i,o){var l=Mme.isBubble(r),s=(r.line||{}).color,u;if(o=o||{},s&&(a=s),i("marker.symbol"),i("marker.opacity",l?.7:1),i("marker.size"),o.noAngle||(i("marker.angle"),o.noAngleRef||i("marker.angleref"),o.noStandOff||i("marker.standoff")),i("marker.color",a),dz(r,"marker")&&pz(r,t,n,i,{prefix:"marker.",cLetter:"c"}),o.noSelect||(i("selected.marker.color"),i("unselected.marker.color"),i("selected.marker.size"),i("unselected.marker.size")),o.noLine||(s&&!Array.isArray(s)&&t.marker.color!==s?u=s:l?u=hz.background:u=hz.defaultLine,i("marker.line.color",u),dz(r,"marker.line")&&pz(r,t,n,i,{prefix:"marker.line.",cLetter:"c"}),i("marker.line.width",l?1:0)),l&&(i("marker.sizeref"),i("marker.sizemin"),i("marker.sizemode")),o.gradient){var f=i("marker.gradient.type");f!=="none"&&i("marker.gradient.color")}}});var j_=N((tFe,mz)=>{"use strict";var kme=Le().isArrayOrTypedArray,Sme=Wn().hasColorscale,qme=fl();mz.exports=function(r,t,a,n,i,o){o||(o={});var l=(r.marker||{}).color;if(l&&l._inputArray&&(l=l._inputArray),i("line.color",a),Sme(r,"line"))qme(r,t,n,i,{prefix:"line.",cLetter:"c"});else{var s=(kme(l)?!1:l)||a;i("line.color",s)}i("line.width"),o.noDash||i("line.dash"),o.backoff&&i("line.backoff")}});var W_=N((aFe,gz)=>{"use strict";gz.exports=function(r,t,a){var n=a("line.shape");n==="spline"&&a("line.smoothing")}});var Z_=N((nFe,bz)=>{"use strict";var Lme=Le();bz.exports=function(e,r,t,a,n){n=n||{},a("textposition"),Lme.coerceFont(a,"textfont",n.font||t.font,n),n.noSelect||(a("selected.textfont.color"),a("unselected.textfont.color"))}});var X_=N((iFe,_z)=>{"use strict";var sm=Tr(),xz=Le().isArrayOrTypedArray;function Cme(e){for(var r=sm.interpolate(e[0][1],e[1][1],.5),t=2;t{"use strict";var wz=Le(),Eme=br(),Dme=wi(),Rme=Wh(),bc=Dn(),Pme=V_(),Fme=gc(),Nme=vz(),zme=Y_(),Ime=j_(),Tz=W_(),Ome=Z_(),Bme=X_(),Hme=Le().coercePattern;Az.exports=function(r,t,a,n){function i(d,p){return wz.coerce(r,t,Dme,d,p)}var o=Pme(r,t,n,i);if(o||(t.visible=!1),!!t.visible){Fme(r,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder");var l=Nme(r,t,n,i);n.scattermode==="group"&&t.orientation===void 0&&i("orientation","v");var s=!l&&o{"use strict";var Ume=Au().getAxisGroup;kz.exports=function(r,t,a,n,i){var o=t.orientation,l=t[{v:"x",h:"y"}[o]+"axis"],s=Ume(a,l)+o,u=a._alignmentOpts||{},f=n("alignmentgroup"),c=u[s];c||(c=u[s]={});var v=c[f];v?v.traces.push(t):v=c[f]={traces:[t],alignmentIndex:Object.keys(c).length,offsetGroups:{}};var d=n("offsetgroup")||"",p=v.offsetGroups,y=p[d];t._offsetIndex=0,(i!=="group"||d)&&(y||(y=p[d]={offsetIndex:Object.keys(p).length}),t._offsetIndex=y.offsetIndex)}});var qz=N((sFe,Sz)=>{"use strict";var Gme=Le(),Vme=o0(),Yme=wi();Sz.exports=function(r,t){var a,n,i,o=t.scattermode;function l(v){return Gme.coerce(n._input,n,Yme,v)}if(t.scattermode==="group")for(i=0;i=0;f--){var c=r[f];if(c.type==="scatter"&&c.xaxis===s.xaxis&&c.yaxis===s.yaxis){c.opacity=void 0;break}}}}}});var Cz=N((uFe,Lz)=>{"use strict";var jme=Le(),Wme=Xp();Lz.exports=function(e,r){function t(n,i){return jme.coerce(e,r,Wme,n,i)}var a=r.barmode==="group";r.scattermode==="group"&&t("scattergap",a?r.bargap:.2)}});var xc=N((fFe,Dz)=>{"use strict";var Zme=Rr(),Ez=Le(),Xme=Ez.dateTime2ms,um=Ez.incrementMonth,Jme=It(),$me=Jme.ONEAVGMONTH;Dz.exports=function(r,t,a,n){if(t.type!=="date")return{vals:n};var i=r[a+"periodalignment"];if(!i)return{vals:n};var o=r[a+"period"],l;if(Zme(o)){if(o=+o,o<=0)return{vals:n}}else if(typeof o=="string"&&o.charAt(0)==="M"){var s=+o.substring(1);if(s>0&&Math.round(s)===s)l=s;else return{vals:n}}for(var u=t.calendar,f=i==="start",c=i==="end",v=r[a+"period0"],d=Xme(v,u)||0,p=[],y=[],m=[],x=n.length,w=0;w_;)k=um(k,-l,u);for(;k<=_;)k=um(k,l,u);T=um(k,-l,u)}else{for(b=Math.round((_-d)/o),k=d+b*o;k>_;)k-=o;for(;k<=_;)k+=o;T=k-o}p[w]=f?T:c?k:(T+k)/2,y[w]=T,m[w]=k}return{vals:p,starts:y,ends:m}}});var K_=N((cFe,Pz)=>{"use strict";var J_=Wn().hasColorscale,$_=Vf(),Rz=Dn();Pz.exports=function(r,t){Rz.hasLines(t)&&J_(t,"line")&&$_(r,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),Rz.hasMarkers(t)&&(J_(t,"marker")&&$_(r,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),J_(t,"marker.line")&&$_(r,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var fm=N((vFe,Fz)=>{"use strict";var Zt=Le();Fz.exports=function(r,t){for(var a=0;a{"use strict";var Nz=Le();zz.exports=function(r,t){Nz.isArrayOrTypedArray(t.selectedpoints)&&Nz.tagSelected(r,t)}});var vm=N((dFe,Vz)=>{"use strict";var Iz=Rr(),e4=Le(),l0=zr(),Oz=xc(),Q_=It().BADNUM,r4=Dn(),Kme=K_(),Qme=fm(),ege=cm();function rge(e,r){var t=e._fullLayout,a=r._xA=l0.getFromId(e,r.xaxis||"x","x"),n=r._yA=l0.getFromId(e,r.yaxis||"y","y"),i=a.makeCalcdata(r,"x"),o=n.makeCalcdata(r,"y"),l=Oz(r,a,"x",i),s=Oz(r,n,"y",o),u=l.vals,f=s.vals,c=r._length,v=new Array(c),d=r.ids,p=t4(r,t,a,n),y=!1,m,x,w,_,b,T;Uz(t,r);var k="x",M="y",q;if(p)e4.pushUnique(p.traceIndices,r.index),m=p.orientation==="v",m?(M="s",q="x"):(k="s",q="y"),b=p.stackgaps==="interpolate";else{var E=Hz(r,c);Bz(e,r,a,n,u,f,E)}var D=!!r.xperiodalignment,P=!!r.yperiodalignment;for(x=0;xx&&v[_].gap;)_--;for(T=v[_].s,w=v.length-1;w>_;w--)v[w].s=T;for(;x<_;)if(x++,v[x].gap){for(w=x+1;v[w].gap;)w++;for(var B=v[x-1][q],Y=v[x-1].s,G=(v[w].s-Y)/(v[w][q]-B);x{"use strict";Yz.exports=hm;var tge=Le().distinctVals;function hm(e,r){this.traces=e,this.sepNegVal=r.sepNegVal,this.overlapNoMerge=r.overlapNoMerge;for(var t=1/0,a=r.posAxis._id.charAt(0),n=[],i=0;i{"use strict";var qi=Rr(),ss=Le().isArrayOrTypedArray,_c=It().BADNUM,age=br(),s0=zr(),nge=Au().getAxisGroup,dm=jz();function ige(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,o=e.calcdata,l=[],s=[],u=0;us+o||!qi(l))}for(var f=0;f{"use strict";var $z=vm(),Kz=pm().setGroupPositions;function mge(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,o=e.calcdata,l=[],s=[],u=0;uE[f]&&f{"use strict";var bge=jr(),nI=It(),u0=nI.BADNUM,iI=nI.LOG_CLIP,rI=iI+.5,tI=iI-.5,ym=Le(),xge=ym.segmentsIntersect,aI=ym.constrain,s4=Wh();oI.exports=function(r,t){var a=t.trace||{},n=t.xaxis,i=t.yaxis,o=n.type==="log",l=i.type==="log",s=n._length,u=i._length,f=t.backoff,c=a.marker,v=t.connectGaps,d=t.baseTolerance,p=t.shape,y=p==="linear",m=a.fill&&a.fill!=="none",x=[],w=s4.minTolerance,_=r.length,b=new Array(_),T=0,k,M,q,E,D,P,R,z,O,B,Y,G,U,V,J,Z;function ee(ze){var ne=r[ze];if(!ne)return!1;var ve=t.linearized?n.l2p(ne.x):n.c2p(ne.x),De=t.linearized?i.l2p(ne.y):i.c2p(ne.y);if(ve===u0){if(o&&(ve=n.c2p(ne.x,!0)),ve===u0)return!1;l&&De===u0&&(ve*=Math.abs(n._m*u*(n._m>0?rI:tI)/(i._m*s*(i._m>0?rI:tI)))),ve*=1e3}if(De===u0){if(l&&(De=i.c2p(ne.y,!0)),De===u0)return!1;De*=1e3}return[ve,De]}function fe(ze,ne,ve,De){var Re=ve-ze,Qe=De-ne,fr=.5-ze,sr=.5-ne,kr=Re*Re+Qe*Qe,Ir=Re*fr+Qe*sr;if(Ir>0&&Ir1||Math.abs(fr.y-ve[0][1])>1)&&(fr=[fr.x,fr.y],De&&_e(fr,ze)<_e(ve[0],ze)?ve.unshift(fr):ve.push(fr),De++)}return ve}function Ie(ze){if(ze[0]oe||ze[1]j)return[aI(ze[0],he,oe),aI(ze[1],ce,j)]}function Ue(ze,ne){if(ze[0]===ne[0]&&(ze[0]===he||ze[0]===oe)||ze[1]===ne[1]&&(ze[1]===ce||ze[1]===j))return!0}function Be(ze,ne){var ve=[],De=Ie(ze),Re=Ie(ne);return De&&Re&&Ue(De,Re)||(De&&ve.push(De),Re&&ve.push(Re)),ve}function Ce(ze,ne,ve){return function(De,Re){var Qe=Ie(De),fr=Ie(Re),sr=[];if(Qe&&fr&&Ue(Qe,fr))return sr;Qe&&sr.push(Qe),fr&&sr.push(fr);var kr=2*ym.constrain((De[ze]+Re[ze])/2,ne,ve)-((Qe||De)[ze]+(fr||Re)[ze]);if(kr){var Ir;Qe&&fr?Ir=kr>0==Qe[ze]>fr[ze]?Qe:fr:Ir=Qe||fr,Ir[ze]+=kr}return sr}}var Oe;p==="linear"||p==="spline"?Oe=Ee:p==="hv"||p==="vh"?Oe=Be:p==="hvh"?Oe=Ce(0,he,oe):p==="vhv"&&(Oe=Ce(1,ce,j));function He(ze,ne){var ve=ne[0]-ze[0],De=(ne[1]-ze[1])/ve,Re=(ze[1]*ne[0]-ne[1]*ze[0])/ve;return Re>0?[De>0?he:oe,j]:[De>0?oe:he,ce]}function se(ze){var ne=ze[0],ve=ze[1],De=ne===b[T-1][0],Re=ve===b[T-1][1];if(!(De&&Re))if(T>1){var Qe=ne===b[T-2][0],fr=ve===b[T-2][1];De&&(ne===he||ne===oe)&&Qe?fr?T--:b[T-1]=ze:Re&&(ve===ce||ve===j)&&fr?Qe?T--:b[T-1]=ze:b[T++]=ze}else b[T++]=ze}function Ae(ze){b[T-1][0]!==ze[0]&&b[T-1][1]!==ze[1]&&se([me,ye]),se(ze),Pe=null,me=ye=0}var Xe=ym.isArrayOrTypedArray(c);function vr(ze){if(ze&&f&&(ze.i=k,ze.d=r,ze.trace=a,ze.marker=Xe?c[ze.i]:c,ze.backoff=f),ie=ze[0]/s,ue=ze[1]/u,W=ze[0]oe?oe:0,pe=ze[1]j?j:0,W||pe){if(!T)b[T++]=[W||ze[0],pe||ze[1]];else if(Pe){var ne=Oe(Pe,ze);ne.length>1&&(Ae(ne[0]),b[T++]=ne[1])}else Ne=Oe(b[T-1],ze)[0],b[T++]=Ne;var ve=b[T-1];W&&pe&&(ve[0]!==W||ve[1]!==pe)?(Pe&&(me!==W&&ye!==pe?se(me&&ye?He(Pe,ze):[me||W,ye||pe]):me&&ye&&se([me,ye])),se([W,pe])):me-W&&ye-pe&&se([W||me,pe||ye]),Pe=ze,me=W,ye=pe}else Pe&&Ae(Oe(Pe,ze)[0]),b[T++]=ze}for(k=0;k<_;k++)if(M=ee(k),!!M){for(T=0,Pe=null,vr(M),k++;k<_;k++){if(E=ee(k),!E){if(v)continue;break}if(!y||!t.simplify){vr(E);continue}var Fe=ee(k+1);if(B=_e(E,M),!(!(m&&(T===0||T===_-1))&&BK(P,Fe))break;q=P,U=O[0]*z[0]+O[1]*z[1],U>Y?(Y=U,E=P,R=!1):U=r.length||!P)break;vr(P),M=P}}Pe&&se([me||Pe[0],ye||Pe[1]]),x.push(b.slice(0,T))}var Te=p.slice(p.length-1);if(f&&Te!=="h"&&Te!=="v"){for(var qe=!1,Ge=-1,Je=[],Ve=0;Ve{"use strict";var lI={tonextx:1,tonexty:1,tonext:1};sI.exports=function(r,t,a){var n,i,o,l,s,u={},f=!1,c=-1,v=0,d=-1;for(i=0;i=0?s=d:(s=d=v,v++),s{"use strict";var lo=Sr(),_ge=br(),f0=Le(),Tc=f0.ensureSingle,cI=f0.identity,Xt=jr(),Ac=Dn(),wge=u4(),Tge=uI(),mm=i_().tester;vI.exports=function(r,t,a,n,i,o){var l,s,u=!i,f=!!i&&i.duration>0,c=Tge(r,t,a);if(l=n.selectAll("g.trace").data(c,function(d){return d[0].trace.uid}),l.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),l.order(),Age(r,l,t),f){o&&(s=o());var v=lo.transition().duration(i.duration).ease(i.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});v.each(function(){n.selectAll("g.trace").each(function(d,p){fI(r,p,t,d,c,this,i)})})}else l.each(function(d,p){fI(r,p,t,d,c,this,i)});u&&l.exit().remove(),n.selectAll("path:not([d])").remove()};function Age(e,r,t){r.each(function(a){var n=Tc(lo.select(this),"g","fills");Xt.setClipUrl(n,t.layerClipId,e);var i=a[0].trace,o=[];i._ownfill&&o.push("_ownFill"),i._nexttrace&&o.push("_nextFill");var l=n.selectAll("g").data(o,cI);l.enter().append("g"),l.exit().each(function(s){i[s]=null}).remove(),l.order().each(function(s){i[s]=Tc(lo.select(this),"path","js-fill")})})}function fI(e,r,t,a,n,i,o){var l=e._context.staticPlot,s;Mge(e,r,t,a,n);var u=!!o&&o.duration>0;function f(Ce){return u?Ce.transition():Ce}var c=t.xaxis,v=t.yaxis,d=a[0].trace,p=d.line,y=lo.select(i),m=Tc(y,"g","errorbars"),x=Tc(y,"g","lines"),w=Tc(y,"g","points"),_=Tc(y,"g","text");if(_ge.getComponentMethod("errorbars","plot")(e,m,t,o),d.visible!==!0)return;f(y).style("opacity",d.opacity);var b,T,k=d.fill.charAt(d.fill.length-1);k!=="x"&&k!=="y"&&(k="");var M,q;k==="y"?(M=1,q=v.c2p(0,!0)):k==="x"&&(M=0,q=c.c2p(0,!0)),a[0][t.isRangePlot?"nodeRangePlot3":"node3"]=y;var E="",D=[],P=d._prevtrace,R=null,z=null;P&&(E=P._prevRevpath||"",T=P._nextFill,D=P._ownPolygons,R=P._fillsegments,z=P._fillElement);var O,B,Y="",G="",U,V,J,Z,ee,fe,ie=[];d._polygons=[];var ue=[],K=[],_e=f0.noop;if(b=d._ownFill,Ac.hasLines(d)||d.fill!=="none"){T&&T.datum(a),["hv","vh","hvh","vhv"].indexOf(p.shape)!==-1?(U=Xt.steps(p.shape),V=Xt.steps(p.shape.split("").reverse().join(""))):p.shape==="spline"?U=V=function(Ce){var Oe=Ce[Ce.length-1];return Ce.length>1&&Ce[0][0]===Oe[0]&&Ce[0][1]===Oe[1]?Xt.smoothclosed(Ce.slice(1),p.smoothing):Xt.smoothopen(Ce,p.smoothing)}:U=V=function(Ce){return"M"+Ce.join("L")},J=function(Ce){return V(Ce.reverse())},K=wge(a,{xaxis:c,yaxis:v,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(p.width||1,3)/4,shape:p.shape,backoff:p.backoff,simplify:p.simplify,fill:d.fill}),ue=new Array(K.length);var le=0;for(s=0;s=l[0]&&y.x<=l[1]&&y.y>=s[0]&&y.y<=s[1]}),v=Math.ceil(c.length/f),d=0;n.forEach(function(y,m){var x=y[0].trace;Ac.hasMarkers(x)&&x.marker.maxdisplayed>0&&m{"use strict";hI.exports={container:"marker",min:"cmin",max:"cmax"}});var c4=N((wFe,dI)=>{"use strict";var gm=zr();dI.exports=function(r,t,a){var n={},i={_fullLayout:a},o=gm.getFromTrace(i,t,"x"),l=gm.getFromTrace(i,t,"y"),s=r.orig_x;s===void 0&&(s=r.x);var u=r.orig_y;return u===void 0&&(u=r.y),n.xLabel=gm.tickText(o,o.c2l(s),!0).text,n.yLabel=gm.tickText(l,l.c2l(u),!0).text,n}});var Su=N((TFe,pI)=>{"use strict";var v4=Sr(),Mc=jr(),kge=br();function Sge(e){var r=v4.select(e).selectAll("g.trace.scatter");r.style("opacity",function(t){return t[0].trace.opacity}),r.selectAll("g.points").each(function(t){var a=v4.select(this),n=t.trace||t[0].trace;h4(a,n,e)}),r.selectAll("g.text").each(function(t){var a=v4.select(this),n=t.trace||t[0].trace;d4(a,n,e)}),r.selectAll("g.trace path.js-line").call(Mc.lineGroupStyle),r.selectAll("g.trace path.js-fill").call(Mc.fillGroupStyle,e,!1),kge.getComponentMethod("errorbars","style")(r)}function h4(e,r,t){Mc.pointStyle(e.selectAll("path.point"),r,t)}function d4(e,r,t){Mc.textPointStyle(e.selectAll("text"),r,t)}function qge(e,r,t){var a=r[0].trace;a.selectedpoints?(Mc.selectedPointStyle(t.selectAll("path.point"),a),Mc.selectedTextStyle(t.selectAll("text"),a)):(h4(t,a,e),d4(t,a,e))}pI.exports={style:Sge,stylePoints:h4,styleText:d4,styleOnSelect:qge}});var mI=N((AFe,yI)=>{"use strict";var kc=Tr(),Lge=Dn();yI.exports=function(r,t){var a,n;if(r.mode==="lines")return a=r.line.color,a&&kc.opacity(a)?a:r.fillcolor;if(r.mode==="none")return r.fill?r.fillcolor:"";var i=t.mcc||(r.marker||{}).color,o=t.mlcc||((r.marker||{}).line||{}).color;return n=i&&kc.opacity(i)?i:o&&kc.opacity(o)&&(t.mlw||((r.marker||{}).line||{}).width)?o:"",n?kc.opacity(n)<.3?kc.addOpacity(n,.3):n:(a=(r.line||{}).color,a&&kc.opacity(a)&&Lge.hasLines(r)&&r.line.width?a:r.fillcolor)}});var y4=N((MFe,bI)=>{"use strict";var bm=Le(),gI=Pn(),Cge=br(),Ege=mI(),p4=Tr(),Dge=bm.fillText;bI.exports=function(r,t,a,n){var i=r.cd,o=i[0].trace,l=r.xa,s=r.ya,u=l.c2p(t),f=s.c2p(a),c=[u,f],v=o.hoveron||"",d=o.mode.indexOf("markers")!==-1?3:.5,p=!!o.xperiodalignment,y=!!o.yperiodalignment;if(v.indexOf("points")!==-1){var m=function(G){if(p){var U=l.c2p(G.xStart),V=l.c2p(G.xEnd);return u>=Math.min(U,V)&&u<=Math.max(U,V)?0:1/0}var J=Math.max(3,G.mrc||0),Z=1-1/J,ee=Math.abs(l.c2p(G.x)-u);return ee=Math.min(U,V)&&f<=Math.max(U,V)?0:1/0}var J=Math.max(3,G.mrc||0),Z=1-1/J,ee=Math.abs(s.c2p(G.y)-f);return eeie!=j>=ie&&(he=_e[K-1][0],oe=_e[K][0],j-ce&&(le=he+(oe-he)*(ie-ce)/(j-ce),J=Math.min(J,le),Z=Math.max(Z,le)));return J=Math.max(J,0),Z=Math.min(Z,l._length),{x0:J,x1:Z,y0:ie,y1:ie}}if(v.indexOf("fills")!==-1&&o._fillElement){var O=R(o._fillElement)&&!R(o._fillExclusionElement);if(O){var B=z(o._polygons);B===null&&(B={x0:c[0],x1:c[0],y0:c[1],y1:c[1]});var Y=p4.defaultLine;return p4.opacity(o.fillcolor)?Y=o.fillcolor:p4.opacity((o.line||{}).color)&&(Y=o.line.color),bm.extendFlat(r,{distance:r.maxHoverDistance,x0:B.x0,x1:B.x1,y0:B.y0,y1:B.y1,color:Y,hovertemplate:!1}),delete r.index,o.text&&!bm.isArrayOrTypedArray(o.text)?r.text=String(o.text):r.text=o.name,[r]}}}});var m4=N((kFe,_I)=>{"use strict";var xI=Dn();_I.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,o=[],l=a[0].trace,s,u,f,c,v=!xI.hasMarkers(l)&&!xI.hasText(l);if(v)return[];if(t===!1)for(s=0;s{"use strict";wI.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var SI=N((qFe,kI)=>{"use strict";var v0=br().traceIs,g4=k1();kI.exports=function(r,t,a,n){a("autotypenumbers",n.autotypenumbersDflt);var i=a("type",(n.splomStash||{}).type);i==="-"&&(Rge(t,n.data),t.type==="-"?t.type="linear":r.type=t.type)};function Rge(e,r){if(e.type==="-"){var t=e._id,a=t.charAt(0),n;t.indexOf("scene")!==-1&&(t=a);var i=Pge(r,t,a);if(i){if(i.type==="histogram"&&a==={v:"y",h:"x"}[i.orientation||"v"]){e.type="linear";return}var o=a+"calendar",l=i[o],s={noMultiCategory:!v0(i,"cartesian")||v0(i,"noMultiCategory")};if(i.type==="box"&&i._hasPreCompStats&&a==={h:"x",v:"y"}[i.orientation||"v"]&&(s.noMultiCategory=!0),s.autotypenumbers=e.autotypenumbers,MI(i,a)){var u=AI(i),f=[];for(n=0;n0&&(n["_"+t+"axes"]||{})[r])return n;if((n[t+"axis"]||t)===r){if(MI(n,t))return n;if((n[t]||[]).length||n[t+"0"])return n}}}function AI(e){return{v:"x",h:"y"}[e.orientation||"v"]}function MI(e,r){var t=AI(e),a=v0(e,"box-violin"),n=v0(e._fullInput||{},"candlestick");return a&&!n&&r===t&&e[t]===void 0&&e[t+"0"]===void 0}});var LI=N((LFe,qI)=>{"use strict";var Fge=Vn().isTypedArraySpec;function Nge(e,r){var t=r.dataAttr||e._id.charAt(0),a={},n,i,o;if(r.axData)n=r.axData;else for(n=[],i=0;i0||Fge(i),l;o&&(l="array");var s=a("categoryorder",l),u;s==="array"&&(u=a("categoryarray")),!o&&s==="array"&&(s=t.categoryorder="trace"),s==="trace"?t._initialCategories=[]:s==="array"?t._initialCategories=u.slice():(u=Nge(t,n).sort(),s==="category ascending"?t._initialCategories=u:s==="category descending"&&(t._initialCategories=u.reverse()))}}});var b4=N((CFe,EI)=>{"use strict";var CI=kn().mix,zge=si(),Ige=Le();EI.exports=function(r,t,a,n){n=n||{};var i=n.dfltColor;function o(q,E){return Ige.coerce2(r,t,n.attributes,q,E)}var l=o("linecolor",i),s=o("linewidth"),u=a("showline",n.showLine||!!l||!!s);u||(delete t.linecolor,delete t.linewidth);var f=CI(i,n.bgColor,n.blend||zge.lightFraction).toRgbString(),c=o("gridcolor",f),v=o("gridwidth"),d=o("griddash"),p=a("showgrid",n.showGrid||!!c||!!v||!!d);if(p||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),n.hasMinor){var y=CI(t.gridcolor,n.bgColor,67).toRgbString(),m=o("minor.gridcolor",y),x=o("minor.gridwidth",t.gridwidth||1),w=o("minor.griddash",t.griddash||"solid"),_=a("minor.showgrid",!!m||!!x||!!w);_||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!n.noZeroLine){var b=o("zerolinelayer"),T=o("zerolinecolor",i),k=o("zerolinewidth"),M=a("zeroline",n.showGrid||!!T||!!k);M||(delete t.zerolinelayer,delete t.zerolinecolor,delete t.zerolinewidth)}}});var _4=N((EFe,zI)=>{"use strict";var DI=Rr(),Oge=br(),h0=Le(),Bge=_t(),Hge=ro(),x4=hi(),RI=o1(),PI=l1(),Uge=u1(),Gge=f1(),Vge=LI(),Yge=b4(),jge=t5(),FI=$f(),xm=Ca().WEEKDAY_PATTERN,Wge=Ca().HOUR_PATTERN;zI.exports=function(r,t,a,n,i){var o=n.letter,l=n.font||{},s=n.splomStash||{},u=a("visible",!n.visibleDflt),f=t._template||{},c=t.type||f.type||"-",v;if(c==="date"){var d=Oge.getComponentMethod("calendars","handleDefaults");d(r,t,"calendar",n.calendar),n.noTicklabelmode||(v=a("ticklabelmode"))}!n.noTicklabelindex&&(c==="date"||c==="linear")&&a("ticklabelindex");var p="";(!n.noTicklabelposition||c==="multicategory")&&(p=h0.coerce(r,t,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:v==="period"?["outside","inside"]:o==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),n.noTicklabeloverflow||a("ticklabeloverflow",p.indexOf("inside")!==-1?"hide past domain":c==="category"||c==="multicategory"?"allow":"hide past div"),FI(t,i),jge(r,t,a,n),Vge(r,t,a,n),n.noHover||(c!=="category"&&a("hoverformat"),n.noUnifiedhovertitle||a("unifiedhovertitle.text"));var y=a("color"),m=y!==x4.color.dflt?y:l.color,x=s.label||i._dfltTitle[o];if(Gge(r,t,a,c,n),!u)return t;a("title.text",x),h0.coerceFont(a,"title.font",l,{overrideDflt:{size:h0.bigFont(l.size),color:m}}),RI(r,t,a,c);var w=n.hasMinor;if(w&&(Bge.newContainer(t,"minor"),RI(r,t,a,c,{isMinor:!0})),Uge(r,t,a,c,n),PI(r,t,a,n),w){var _=n.isMinor;n.isMinor=!0,PI(r,t,a,n),n.isMinor=_}Yge(r,t,a,{dfltColor:y,bgColor:n.bgColor,showGrid:n.showGrid,hasMinor:w,attributes:x4}),w&&!t.minor.ticks&&!t.minor.showgrid&&delete t.minor,(t.showline||t.ticks)&&a("mirror");var b=c==="multicategory";if(!n.noTickson&&(c==="category"||b)&&(t.ticks||t.showgrid)&&(b?(a("tickson","boundaries"),delete t.ticklabelposition):a("tickson")),b){var T=a("showdividers");T&&(a("dividercolor"),a("dividerwidth"))}if(c==="date")if(Hge(r,t,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:Zge}),!t.rangebreaks.length)delete t.rangebreaks;else{for(var k=0;k=2){var o="",l,s;if(i.length===2){for(l=0;l<2;l++)if(s=NI(i[l]),s){o=xm;break}}var u=a("pattern",o);if(u===xm)for(l=0;l<2;l++)s=NI(i[l]),s&&(r.bounds[l]=i[l]=s-1);if(u)for(l=0;l<2;l++)switch(s=i[l],u){case xm:if(!DI(s)){r.enabled=!1;return}if(s=+s,s!==Math.floor(s)||s<0||s>=7){r.enabled=!1;return}r.bounds[l]=i[l]=s;break;case Wge:if(!DI(s)){r.enabled=!1;return}if(s=+s,s<0||s>24){r.enabled=!1;return}r.bounds[l]=i[l]=s;break}if(t.autorange===!1){var f=t.range;if(f[0]f[1]){r.enabled=!1;return}}else if(i[0]>f[0]&&i[1]{"use strict";var Jge=Rr(),_m=Le();II.exports=function(r,t,a,n){var i=n.counterAxes||[],o=n.overlayableAxes||[],l=n.letter,s=n.grid,u=n.overlayingDomain,f,c,v,d,p,y;s&&(c=s._domains[l][s._axisMap[t._id]],f=s._anchors[t._id],c&&(v=s[l+"side"].split(" ")[0],d=s.domain[l][v==="right"||v==="top"?1:0])),c=c||[0,1],f=f||(Jge(r.position)?"free":i[0]||"free"),v=v||(l==="x"?"bottom":"left"),d=d||0,p=0,y=!1;var m=_m.coerce(r,t,{anchor:{valType:"enumerated",values:["free"].concat(i),dflt:f}},"anchor"),x=_m.coerce(r,t,{side:{valType:"enumerated",values:l==="x"?["bottom","top"]:["left","right"],dflt:v}},"side");if(m==="free"){if(l==="y"){var w=a("autoshift");w&&(d=x==="left"?u[0]:u[1],y=t.automargin?t.automargin:!0,p=x==="left"?-3:3),a("shift",p)}a("position",d)}a("automargin",y);var _=!1;if(o.length&&(_=_m.coerce(r,t,{overlaying:{valType:"enumerated",values:[!1].concat(o),dflt:!1}},"overlaying")),!_){var b=a("domain",c);b[0]>b[1]-1/4096&&(t.domain=c),_m.noneOrAll(r.domain,t.domain,c),t.tickmode==="sync"&&(t.tickmode="auto")}return a("layer"),t}});var WI=N((RFe,jI)=>{"use strict";var qu=Le(),OI=Tr(),$ge=qo().isUnifiedHover,Kge=q5(),BI=_t(),Qge=Lf(),HI=hi(),e2e=SI(),UI=_4(),r2e=Au(),GI=w4(),A4=la(),Bo=A4.id2name,VI=A4.name2id,t2e=Ca().AX_ID_PATTERN,YI=br(),wm=YI.traceIs,T4=YI.getComponentMethod;function Tm(e,r,t){Array.isArray(e[r])?e[r].push(t):e[r]=[t]}jI.exports=function(r,t,a){var n=t.autotypenumbers,i={},o={},l={},s={},u={},f={},c={},v={},d={},p={},y,m;for(y=0;y{"use strict";var a2e=Sr(),ZI=br(),Am=Le(),Qn=jr(),Mm=zr();XI.exports=function(r,t,a,n){var i=r._fullLayout;if(t.length===0){Mm.redrawComponents(r);return}function o(m){var x=m.xaxis,w=m.yaxis;i._defs.select("#"+m.clipId+"> rect").call(Qn.setTranslate,0,0).call(Qn.setScale,1,1),m.plot.call(Qn.setTranslate,x._offset,w._offset).call(Qn.setScale,1,1);var _=m.plot.selectAll(".scatterlayer .trace");_.selectAll(".point").call(Qn.setPointGroupScale,1,1),_.selectAll(".textpoint").call(Qn.setTextPointsScale,1,1),_.call(Qn.hideOutsideRangePoints,m)}function l(m,x){var w=m.plotinfo,_=w.xaxis,b=w.yaxis,T=_._length,k=b._length,M=!!m.xr1,q=!!m.yr1,E=[];if(M){var D=Am.simpleMap(m.xr0,_.r2l),P=Am.simpleMap(m.xr1,_.r2l),R=D[1]-D[0],z=P[1]-P[0];E[0]=(D[0]*(1-x)+x*P[0]-D[0])/(D[1]-D[0])*T,E[2]=T*(1-x+x*z/R),_.range[0]=_.l2r(D[0]*(1-x)+x*P[0]),_.range[1]=_.l2r(D[1]*(1-x)+x*P[1])}else E[0]=0,E[2]=T;if(q){var O=Am.simpleMap(m.yr0,b.r2l),B=Am.simpleMap(m.yr1,b.r2l),Y=O[1]-O[0],G=B[1]-B[0];E[1]=(O[1]*(1-x)+x*B[1]-O[1])/(O[0]-O[1])*k,E[3]=k*(1-x+x*G/Y),b.range[0]=_.l2r(O[0]*(1-x)+x*B[0]),b.range[1]=b.l2r(O[1]*(1-x)+x*B[1])}else E[1]=0,E[3]=k;Mm.drawOne(r,_,{skipTitle:!0}),Mm.drawOne(r,b,{skipTitle:!0}),Mm.redrawComponents(r,[_._id,b._id]);var U=M?T/E[2]:1,V=q?k/E[3]:1,J=M?E[0]:0,Z=q?E[1]:0,ee=M?E[0]/E[2]*T:0,fe=q?E[1]/E[3]*k:0,ie=_._offset-ee,ue=b._offset-fe;w.clipRect.call(Qn.setTranslate,J,Z).call(Qn.setScale,1/U,1/V),w.plot.call(Qn.setTranslate,ie,ue).call(Qn.setScale,U,V),Qn.setPointGroupScale(w.zoomScalePts,1/U,1/V),Qn.setTextPointsScale(w.zoomScaleTxt,1/U,1/V)}var s;n&&(s=n());function u(){for(var m={},x=0;xa.duration?(u(),d=window.cancelAnimationFrame(y)):d=window.requestAnimationFrame(y)}return c=Date.now(),d=window.requestAnimationFrame(y),Promise.resolve()}});var Li=N(Ja=>{"use strict";var Sm=Sr(),$I=br(),Lu=Le(),n2e=ta(),i2e=jr(),KI=Kp().getModuleCalcData,us=la(),so=Ca(),o2e=sl(),rt=Lu.ensureSingle;function km(e,r,t){return Lu.ensureSingle(e,r,t,function(a){a.datum(t)})}var Cu=so.zindexSeparator;Ja.name="cartesian";Ja.attr=["xaxis","yaxis"];Ja.idRoot=["x","y"];Ja.idRegex=so.idRegex;Ja.attrRegex=so.attrRegex;Ja.attributes=TI();Ja.layoutAttributes=hi();Ja.supplyLayoutDefaults=WI();Ja.transitionAxes=JI();Ja.finalizeSubplots=function(e,r){var t=r._subplots,a=t.xaxis,n=t.yaxis,i=t.cartesian,o=i,l={},s={},u,f,c;for(u=0;u0){var d=v.id;if(d.indexOf(Cu)!==-1)continue;d+=Cu+(u+1),v=Lu.extendFlat({},v,{id:d,plot:n._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var p=[],y,m=0;m1&&(T+=Cu+b),_.push(l+T),o=0;o1,c=r.mainplotinfo;if(!r.mainplot||f)if(u)r.xlines=rt(a,"path","xlines-above"),r.ylines=rt(a,"path","ylines-above"),r.xaxislayer=rt(a,"g","xaxislayer-above"),r.yaxislayer=rt(a,"g","yaxislayer-above");else{if(!o){var v=rt(a,"g","layer-subplot");r.shapelayer=rt(v,"g","shapelayer"),r.imagelayer=rt(v,"g","imagelayer"),c&&f?(r.minorGridlayer=c.minorGridlayer,r.gridlayer=c.gridlayer,r.zerolinelayer=c.zerolinelayer):(r.minorGridlayer=rt(a,"g","minor-gridlayer"),r.gridlayer=rt(a,"g","gridlayer"),r.zerolinelayer=rt(a,"g","zerolinelayer"));var d=rt(a,"g","layer-between");r.shapelayerBetween=rt(d,"g","shapelayer"),r.imagelayerBetween=rt(d,"g","imagelayer"),rt(a,"path","xlines-below"),rt(a,"path","ylines-below"),r.overlinesBelow=rt(a,"g","overlines-below"),rt(a,"g","xaxislayer-below"),rt(a,"g","yaxislayer-below"),r.overaxesBelow=rt(a,"g","overaxes-below")}r.overplot=rt(a,"g","overplot"),r.plot=rt(r.overplot,"g",n),c&&f?r.zerolinelayerAbove=c.zerolinelayerAbove:r.zerolinelayerAbove=rt(a,"g","zerolinelayer-above"),o||(r.xlines=rt(a,"path","xlines-above"),r.ylines=rt(a,"path","ylines-above"),r.overlinesAbove=rt(a,"g","overlines-above"),rt(a,"g","xaxislayer-above"),rt(a,"g","yaxislayer-above"),r.overaxesAbove=rt(a,"g","overaxes-above"),r.xlines=a.select(".xlines-"+l),r.ylines=a.select(".ylines-"+s),r.xaxislayer=a.select(".xaxislayer-"+l),r.yaxislayer=a.select(".yaxislayer-"+s))}else{var p=c.plotgroup,y=n+"-x",m=n+"-y";r.minorGridlayer=c.minorGridlayer,r.gridlayer=c.gridlayer,r.zerolinelayer=c.zerolinelayer,r.zerolinelayerAbove=c.zerolinelayerAbove,rt(c.overlinesBelow,"path",y),rt(c.overlinesBelow,"path",m),rt(c.overaxesBelow,"g",y),rt(c.overaxesBelow,"g",m),r.plot=rt(c.overplot,"g",n),rt(c.overlinesAbove,"path",y),rt(c.overlinesAbove,"path",m),rt(c.overaxesAbove,"g",y),rt(c.overaxesAbove,"g",m),r.xlines=p.select(".overlines-"+l).select("."+y),r.ylines=p.select(".overlines-"+s).select("."+m),r.xaxislayer=p.select(".overaxes-"+l).select("."+y),r.yaxislayer=p.select(".overaxes-"+s).select("."+m)}o||(u||(km(r.minorGridlayer,"g",r.xaxis._id),km(r.minorGridlayer,"g",r.yaxis._id),r.minorGridlayer.selectAll("g").map(function(x){return x[0]}).sort(us.idSort),km(r.gridlayer,"g",r.xaxis._id),km(r.gridlayer,"g",r.yaxis._id),r.gridlayer.selectAll("g").map(function(x){return x[0]}).sort(us.idSort)),r.xlines.style("fill","none").classed("crisp",!0),r.ylines.style("fill","none").classed("crisp",!0))}function rO(e,r){if(e){var t={};e.each(function(s){var u=s[0],f=Sm.select(this);f.remove(),tO(u,r),t[u]=!0});for(var a in r._plots)for(var n=r._plots[a],i=n.overlays||[],o=0;o{"use strict";var qm=Dn();aO.exports={hasLines:qm.hasLines,hasMarkers:qm.hasMarkers,hasText:qm.hasText,isBubble:qm.isBubble,attributes:wi(),layoutAttributes:Xp(),supplyDefaults:Mz(),crossTraceDefaults:qz(),supplyLayoutDefaults:Cz(),calc:vm().calc,crossTraceCalc:eI(),arraysToCalcdata:fm(),plot:f4(),colorbar:c0(),formatLabels:c4(),style:Su().style,styleOnSelect:Su().styleOnSelect,hoverPoints:y4(),selectPoints:m4(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:Li(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var lO=N((zFe,oO)=>{"use strict";var s2e=Sr(),u2e=Tr(),iO=m_(),M4=Le(),f2e=M4.strScale,c2e=M4.strRotate,v2e=M4.strTranslate;oO.exports=function(r,t,a){var n=r.node(),i=iO[a.arrowhead||0],o=iO[a.startarrowhead||0],l=(a.arrowwidth||1)*(a.arrowsize||1),s=(a.arrowwidth||1)*(a.startarrowsize||1),u=t.indexOf("start")>=0,f=t.indexOf("end")>=0,c=i.backoff*l+a.standoff,v=o.backoff*s+a.startstandoff,d,p,y,m;if(n.nodeName==="line"){d={x:+r.attr("x1"),y:+r.attr("y1")},p={x:+r.attr("x2"),y:+r.attr("y2")};var x=d.x-p.x,w=d.y-p.y;if(y=Math.atan2(w,x),m=y+Math.PI,c&&v&&c+v>Math.sqrt(x*x+w*w)){O();return}if(c){if(c*c>x*x+w*w){O();return}var _=c*Math.cos(y),b=c*Math.sin(y);p.x+=_,p.y+=b,r.attr({x2:p.x,y2:p.y})}if(v){if(v*v>x*x+w*w){O();return}var T=v*Math.cos(y),k=v*Math.sin(y);d.x-=T,d.y-=k,r.attr({x1:d.x,y1:d.y})}}else if(n.nodeName==="path"){var M=n.getTotalLength(),q="";if(M{"use strict";var sO=Sr(),k4=br(),h2e=ta(),cs=Le(),S4=cs.strTranslate,p0=zr(),Eu=Tr(),gl=jr(),uO=Pn(),q4=Ea(),L4=rs(),d0=pi(),d2e=_t().arrayEditor,p2e=lO();vO.exports={draw:y2e,drawOne:fO,drawRaw:cO};function y2e(e){var r=e._fullLayout;r._infolayer.selectAll(".annotation").remove();for(var t=0;t2/3?Re="right":Re="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[Re]}for(var ce=!1,j=["x","y"],Q=0;Q1)&&(me===pe?(Fe=ye.r2fraction(r["a"+W]),(Fe<0||Fe>1)&&(ce=!0)):ce=!0),Oe=ye._offset+ye.r2p(r[W]),Ae=.5}else{var Te=vr==="domain";W==="x"?(se=r[W],Oe=Te?ye._offset+ye._length*se:Oe=l.l+l.w*se):(se=1-r[W],Oe=Te?ye._offset+ye._length*se:Oe=l.t+l.h*se),Ae=r.showarrow?.5:se}if(r.showarrow){Ce.head=Oe;var qe=r["a"+W];if(Xe=Ne*oe(.5,r.xanchor)-Ee*oe(.5,r.yanchor),me===pe){var Ge=p0.getRefType(me);Ge==="domain"?(W==="y"&&(qe=1-qe),Ce.tail=ye._offset+ye._length*qe):Ge==="paper"?W==="y"?(qe=1-qe,Ce.tail=l.t+l.h*qe):Ce.tail=l.l+l.w*qe:Ce.tail=ye._offset+ye.r2p(qe),He=Xe}else Ce.tail=Oe+qe,He=Xe+qe;Ce.text=Ce.tail+Xe;var Je=o[W==="x"?"width":"height"];if(pe==="paper"&&(Ce.head=cs.constrain(Ce.head,1,Je-1)),me==="pixel"){var Ve=-Math.max(Ce.tail-3,Ce.text),Ze=Math.min(Ce.tail+3,Ce.text)-Je;Ve>0?(Ce.tail+=Ve,Ce.text+=Ve):Ze>0&&(Ce.tail-=Ze,Ce.text-=Ze)}Ce.tail+=Be,Ce.head+=Be}else Xe=Ie*oe(Ae,Ue),He=Xe,Ce.text=Oe+Xe;Ce.text+=Be,Xe+=Be,He+=Be,r["_"+W+"padplus"]=Ie/2+He,r["_"+W+"padminus"]=Ie/2-He,r["_"+W+"size"]=Ie,r["_"+W+"shift"]=Xe}if(ce){M.remove();return}var or=0,rr=0;if(r.align!=="left"&&(or=(K-ie)*(r.align==="center"?.5:1)),r.valign!=="top"&&(rr=(_e-ue)*(r.valign==="middle"?.5:1)),ee)Z.select("svg").attr({x:D+or-1,y:D+rr}).call(gl.setClipUrl,R?y:null,e);else{var Ke=D+rr-fe.top,ze=D+or-fe.left;Y.call(q4.positionText,ze,Ke).call(gl.setClipUrl,R?y:null,e)}z.select("rect").call(gl.setRect,D,D,K,_e),P.call(gl.setRect,q/2,q/2,le-q,he-q),M.call(gl.setTranslate,Math.round(m.x.text-le/2),Math.round(m.y.text-he/2)),_.attr({transform:"rotate("+x+","+m.x.text+","+m.y.text+")"});var ne=function(De,Re){w.selectAll(".annotation-arrow-g").remove();var Qe=m.x.head,fr=m.y.head,sr=m.x.tail+De,kr=m.y.tail+Re,Ir=m.x.text+De,Yr=m.y.text+Re,et=cs.rotationXYMatrix(x,Ir,Yr),qt=cs.apply2DTransform(et),ft=cs.apply2DTransform2(et),Ft=+P.attr("width"),Tt=+P.attr("height"),da=Ir-.5*Ft,$t=da+Ft,oa=Yr-.5*Tt,dr=oa+Tt,yt=[[da,oa,da,dr],[da,dr,$t,dr],[$t,dr,$t,oa],[$t,oa,da,oa]].map(ft);if(!yt.reduce(function(Ct,_a){return Ct^!!cs.segmentsIntersect(Qe,fr,Qe+1e6,fr+1e6,_a[0],_a[1],_a[2],_a[3])},!1)){yt.forEach(function(Ct){var _a=cs.segmentsIntersect(sr,kr,Qe,fr,Ct[0],Ct[1],Ct[2],Ct[3]);_a&&(sr=_a.x,kr=_a.y)});var Zr=r.arrowwidth,$r=r.arrowcolor,mt=r.arrowside,Lt=w.append("g").style({opacity:Eu.opacity($r)}).classed("annotation-arrow-g",!0),Gr=Lt.append("path").attr("d","M"+sr+","+kr+"L"+Qe+","+fr).style("stroke-width",Zr+"px").call(Eu.stroke,Eu.rgb($r));if(p2e(Gr,mt,r),s.annotationPosition&&Gr.node().parentNode&&!a){var Bt=Qe,rn=fr;if(r.standoff){var jt=Math.sqrt(Math.pow(Qe-sr,2)+Math.pow(fr-kr,2));Bt+=r.standoff*(sr-Qe)/jt,rn+=r.standoff*(kr-fr)/jt}var dn=Lt.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(sr-Bt)+","+(kr-rn),transform:S4(Bt,rn)}).style("stroke-width",Zr+6+"px").call(Eu.stroke,"rgba(0,0,0,0)").call(Eu.fill,"rgba(0,0,0,0)"),pn,Nt;d0.init({element:dn.node(),gd:e,prepFn:function(){var Ct=gl.getTranslate(M);pn=Ct.x,Nt=Ct.y,n&&n.autorange&&v(n._name+".autorange",!0),i&&i.autorange&&v(i._name+".autorange",!0)},moveFn:function(Ct,_a){var Qo=qt(pn,Nt),el=Qo[0]+Ct,ct=Qo[1]+_a;M.call(gl.setTranslate,el,ct),d("x",fs(n,Ct,"x",l,r)),d("y",fs(i,_a,"y",l,r)),r.axref===r.xref&&d("ax",fs(n,Ct,"ax",l,r)),r.ayref===r.yref&&d("ay",fs(i,_a,"ay",l,r)),Lt.attr("transform",S4(Ct,_a)),_.attr({transform:"rotate("+x+","+el+","+ct+")"})},doneFn:function(){k4.call("_guiRelayout",e,p());var Ct=document.querySelector(".js-notes-box-panel");Ct&&Ct.redraw(Ct.selectedObj)}})}}};if(r.showarrow&&ne(0,0),b){var ve;d0.init({element:M.node(),gd:e,prepFn:function(){ve=_.attr("transform")},moveFn:function(De,Re){var Qe="pointer";if(r.showarrow)r.axref===r.xref?d("ax",fs(n,De,"ax",l,r)):d("ax",r.ax+De),r.ayref===r.yref?d("ay",fs(i,Re,"ay",l.w,r)):d("ay",r.ay+Re),ne(De,Re);else{if(a)return;var fr,sr;if(n)fr=fs(n,De,"x",l,r);else{var kr=r._xsize/l.w,Ir=r.x+(r._xshift-r.xshift)/l.w-kr/2;fr=d0.align(Ir+De/l.w,kr,0,1,r.xanchor)}if(i)sr=fs(i,Re,"y",l,r);else{var Yr=r._ysize/l.h,et=r.y-(r._yshift+r.yshift)/l.h-Yr/2;sr=d0.align(et-Re/l.h,Yr,0,1,r.yanchor)}d("x",fr),d("y",sr),(!n||!i)&&(Qe=d0.getCursor(n?.5:fr,i?.5:sr,r.xanchor,r.yanchor))}_.attr({transform:S4(De,Re)+ve}),L4(M,Qe)},clickFn:function(De,Re){r.captureevents&&e.emit("plotly_clickannotation",k(Re))},doneFn:function(){L4(M),k4.call("_guiRelayout",e,p());var De=document.querySelector(".js-notes-box-panel");De&&De.redraw(De.selectedObj)}})}}s.annotationText?Y.call(q4.makeEditable,{delegate:M,gd:e}).call(G).on("edit",function(V){r.text=V,this.call(G),d("text",V),n&&n.autorange&&v(n._name+".autorange",!0),i&&i.autorange&&v(i._name+".autorange",!0),k4.call("_guiRelayout",e,p())}):Y.call(G)}});var gO=N((OFe,mO)=>{"use strict";var hO=Le(),m2e=br(),dO=_t().arrayEditor;mO.exports={hasClickToShow:g2e,onClick:b2e};function g2e(e,r){var t=yO(e,r);return t.on.length>0||t.explicitOff.length>0}function b2e(e,r){var t=yO(e,r),a=t.on,n=t.off.concat(t.explicitOff),i={},o=e._fullLayout.annotations,l,s;if(a.length||n.length){for(l=0;l{"use strict";var C4=Le(),Sc=Tr();bO.exports=function(r,t,a,n){n("opacity");var i=n("bgcolor"),o=n("bordercolor"),l=Sc.opacity(o);n("borderpad");var s=n("borderwidth"),u=n("showarrow");n("text",u?" ":a._dfltTitle.annotation),n("textangle"),C4.coerceFont(n,"font",a.font),n("width"),n("align");var f=n("height");if(f&&n("valign"),u){var c=n("arrowside"),v,d;c.indexOf("end")!==-1&&(v=n("arrowhead"),d=n("arrowsize")),c.indexOf("start")!==-1&&(n("startarrowhead",v),n("startarrowsize",d)),n("arrowcolor",l?t.bordercolor:Sc.defaultLine),n("arrowwidth",(l&&s||1)*2),n("standoff"),n("startstandoff")}var p=n("hovertext"),y=a.hoverlabel||{};if(p){var m=n("hoverlabel.bgcolor",y.bgcolor||(Sc.opacity(i)?Sc.rgb(i):Sc.defaultLine)),x=n("hoverlabel.bordercolor",y.bordercolor||Sc.contrast(m)),w=C4.extendFlat({},y.font);w.color||(w.color=x),C4.coerceFont(n,"hoverlabel.font",w)}n("captureevents",!!p)}});var _O=N((HFe,xO)=>{"use strict";var D4=Le(),Du=zr(),x2e=ro(),_2e=E4(),w2e=yc();xO.exports=function(r,t){x2e(r,t,{name:"annotations",handleItemDefaults:T2e})};function T2e(e,r,t){function a(_,b){return D4.coerce(e,r,w2e,_,b)}var n=a("visible"),i=a("clicktoshow");if(n||i){_2e(e,r,t,a);for(var o=r.showarrow,l=["x","y"],s=[-10,-30],u={_fullLayout:t},f=0;f<2;f++){var c=l[f],v=Du.coerceRef(e,r,u,c,"","paper");if(v!=="paper"){var d=Du.getFromId(u,v);d._annIndices.push(r._index)}if(Du.coercePosition(r,u,a,v,c,.5),o){var p="a"+c,y=Du.coerceRef(e,r,u,p,"pixel",["pixel","paper"]);y!=="pixel"&&y!==v&&(y=r[p]="pixel");var m=y==="pixel"?s[f]:.4;Du.coercePosition(r,u,a,y,p,m)}a(c+"anchor"),a(c+"shift")}if(D4.noneOrAll(e,r,["x","y"]),o&&D4.noneOrAll(e,r,["ax","ay"]),i){var x=a("xclick"),w=a("yclick");r._xclick=x===void 0?r.x:Du.cleanPosition(x,u,r.xref),r._yclick=w===void 0?r.y:Du.cleanPosition(w,u,r.yref)}}}});var AO=N((UFe,TO)=>{"use strict";var R4=Le(),Ru=zr(),A2e=Lm().draw;TO.exports=function(r){var t=r._fullLayout,a=R4.filterVisible(t.annotations);if(a.length&&r._fullData.length)return R4.syncOrAsync([A2e,M2e],r)};function M2e(e){var r=e._fullLayout;R4.filterVisible(r.annotations).forEach(function(t){var a=Ru.getFromId(e,t.xref),n=Ru.getFromId(e,t.yref),i=Ru.getRefType(t.xref),o=Ru.getRefType(t.yref);t._extremes={},i==="range"&&wO(t,a),o==="range"&&wO(t,n)})}function wO(e,r){var t=r._id,a=t.charAt(0),n=e[a],i=e["a"+a],o=e[a+"ref"],l=e["a"+a+"ref"],s=e["_"+a+"padplus"],u=e["_"+a+"padminus"],f={x:1,y:-1}[a]*e[a+"shift"],c=3*e.arrowsize*e.arrowwidth||0,v=c+f,d=c-f,p=3*e.startarrowsize*e.arrowwidth||0,y=p+f,m=p-f,x;if(l===o){var w=Ru.findExtremes(r,[r.r2c(n)],{ppadplus:v,ppadminus:d}),_=Ru.findExtremes(r,[r.r2c(i)],{ppadplus:Math.max(s,y),ppadminus:Math.max(u,m)});x={min:[w.min[0],_.min[0]],max:[w.max[0],_.max[0]]}}else y=i?y+i:y,m=i?m-i:m,x=Ru.findExtremes(r,[r.r2c(n)],{ppadplus:Math.max(s,v,y),ppadminus:Math.max(u,d,m)});e._extremes[t]=x}});var kO=N((GFe,MO)=>{"use strict";var k2e=Rr(),S2e=gp();MO.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",o=a==="linear"&&t.type==="log";if(!(i||o))return;var l=r._fullLayout.annotations,s=t._id.charAt(0),u,f;function c(d){var p=u[d],y=null;i?y=S2e(p,t.range):y=Math.pow(10,p),k2e(y)||(y=null),n(f+d,y)}for(var v=0;v{"use strict";var P4=Lm(),SO=gO();qO.exports={moduleType:"component",name:"annotations",layoutAttributes:yc(),supplyLayoutDefaults:_O(),includeBasePlot:Zh()("annotations"),calcAutorange:AO(),draw:P4.draw,drawOne:P4.drawOne,drawRaw:P4.drawRaw,hasClickToShow:SO.hasClickToShow,onClick:SO.onClick,convertCoords:kO()}});var Cm=N((YFe,CO)=>{"use strict";var kt=yc(),q2e=Ji().overrideAll,L2e=_t().templatedArray;CO.exports=q2e(L2e("annotation",{visible:kt.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:kt.xanchor,xshift:kt.xshift,yanchor:kt.yanchor,yshift:kt.yshift,text:kt.text,textangle:kt.textangle,font:kt.font,width:kt.width,height:kt.height,opacity:kt.opacity,align:kt.align,valign:kt.valign,bgcolor:kt.bgcolor,bordercolor:kt.bordercolor,borderpad:kt.borderpad,borderwidth:kt.borderwidth,showarrow:kt.showarrow,arrowcolor:kt.arrowcolor,arrowhead:kt.arrowhead,startarrowhead:kt.startarrowhead,arrowside:kt.arrowside,arrowsize:kt.arrowsize,startarrowsize:kt.startarrowsize,arrowwidth:kt.arrowwidth,standoff:kt.standoff,startstandoff:kt.startstandoff,hovertext:kt.hovertext,hoverlabel:kt.hoverlabel,captureevents:kt.captureevents}),"calc","from-root")});var DO=N((jFe,EO)=>{"use strict";var F4=Le(),C2e=zr(),E2e=ro(),D2e=E4(),R2e=Cm();EO.exports=function(r,t,a){E2e(r,t,{name:"annotations",handleItemDefaults:P2e,fullLayout:a.fullLayout})};function P2e(e,r,t,a){function n(l,s){return F4.coerce(e,r,R2e,l,s)}function i(l){var s=l+"axis",u={_fullLayout:{}};return u._fullLayout[s]=t[s],C2e.coercePosition(r,u,n,l,l,.5)}var o=n("visible");o&&(D2e(e,r,a.fullLayout,n),i("x"),i("y"),i("z"),F4.noneOrAll(e,r,["x","y","z"]),r.xref="x",r.yref="y",r.zref="z",n("xanchor"),n("yanchor"),n("xshift"),n("yshift"),r.showarrow&&(r.axref="pixel",r.ayref="pixel",n("ax",-10),n("ay",-30),F4.noneOrAll(e,r,["ax","ay"])))}});var NO=N((WFe,FO)=>{"use strict";var RO=Le(),PO=zr();FO.exports=function(r){for(var t=r.fullSceneLayout,a=t.annotations,n=0;n{"use strict";function N4(e,r){var t=[0,0,0,0],a,n;for(a=0;a<4;++a)for(n=0;n<4;++n)t[n]+=e[4*a+n]*r[a];return t}function N2e(e,r){var t=N4(e.projection,N4(e.view,N4(e.model,[r[0],r[1],r[2],1])));return t}zO.exports=N2e});var BO=N((XFe,OO)=>{"use strict";var z2e=Lm().drawRaw,I2e=IO(),O2e=["x","y","z"];OO.exports=function(r){for(var t=r.fullSceneLayout,a=r.dataScale,n=t.annotations,i=0;i1){l=!0;break}}l?r.fullLayout._infolayer.select(".annotation-"+r.id+'[data-index="'+i+'"]').remove():(o._pdata=I2e(r.glplot.cameraParams,[t.xaxis.r2l(o.x)*a[0],t.yaxis.r2l(o.y)*a[1],t.zaxis.r2l(o.z)*a[2]]),z2e(r.graphDiv,o,i,r.id,o._xa,o._ya))}}});var GO=N((JFe,UO)=>{"use strict";var B2e=br(),HO=Le();UO.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:Cm()}}},layoutAttributes:Cm(),handleDefaults:DO(),includeBasePlot:H2e,convert:NO(),draw:BO()};function H2e(e,r){var t=B2e.subplotsRegistry.gl3d;if(t)for(var a=t.attrRegex,n=Object.keys(e),i=0;i{"use strict";var VO=yc(),YO=ma(),jO=wi().line,U2e=ui().dash,uo=bt().extendFlat,G2e=_t().templatedArray,$Fe=jh(),qc=gn(),{shapeTexttemplateAttrs:V2e,templatefallbackAttrs:Y2e}=Yn(),j2e=Lp();WO.exports=G2e("shape",{visible:uo({},qc.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:uo({},qc.legend,{editType:"calc+arraydraw"}),legendgroup:uo({},qc.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:uo({},qc.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:YO({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:uo({},qc.legendrank,{editType:"calc+arraydraw"}),legendwidth:uo({},qc.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:uo({},VO.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:uo({},VO.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:uo({},jO.color,{editType:"arraydraw"}),width:uo({},jO.width,{editType:"calc+arraydraw"}),dash:uo({},U2e,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:V2e({},{keys:Object.keys(j2e)}),texttemplatefallback:Y2e({editType:"arraydraw"}),font:YO({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var JO=N((QFe,XO)=>{"use strict";var y0=Le(),Lc=zr(),W2e=ro(),Z2e=z4(),ZO=ns();XO.exports=function(r,t){W2e(r,t,{name:"shapes",handleItemDefaults:J2e})};function X2e(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}function J2e(e,r,t){function a(V,J){return y0.coerce(e,r,Z2e,V,J)}r._isShape=!0;var n=a("visible");if(n){var i=a("showlegend");i&&(a("legend"),a("legendwidth"),a("legendgroup"),a("legendgrouptitle.text"),y0.coerceFont(a,"legendgrouptitle.font"),a("legendrank"));var o=a("path"),l=o?"path":"rect",s=a("type",l),u=s!=="path";u&&delete r.path,a("editable"),a("layer"),a("opacity"),a("fillcolor"),a("fillrule");var f=a("line.width");f&&(a("line.color"),a("line.dash"));for(var c=a("xsizemode"),v=a("ysizemode"),d=["x","y"],p=0;p<2;p++){var y=d[p],m=y+"anchor",x=y==="x"?c:v,w={_fullLayout:t},_,b,T,k=Lc.coerceRef(e,r,w,y,void 0,"paper"),M=Lc.getRefType(k);if(M==="range"?(_=Lc.getFromId(w,k),_._shapeIndices.push(r._index),T=ZO.rangeToShapePosition(_),b=ZO.shapePositionToRange(_),(_.type==="category"||_.type==="multicategory")&&(a(y+"0shift"),a(y+"1shift"))):b=T=y0.identity,u){var q=.25,E=.75,D=y+"0",P=y+"1",R=e[D],z=e[P];e[D]=b(e[D],!0),e[P]=b(e[P],!0),x==="pixel"?(a(D,0),a(P,10)):(Lc.coercePosition(r,w,a,k,D,q),Lc.coercePosition(r,w,a,k,P,E)),r[D]=T(r[D]),r[P]=T(r[P]),e[D]=R,e[P]=z}if(x==="pixel"){var O=e[m];e[m]=b(e[m],!0),Lc.coercePosition(r,w,a,k,m,.25),r[m]=T(r[m]),e[m]=O}}u&&y0.noneOrAll(e,r,["x0","x1","y0","y1"]);var B=s==="line",Y,G;if(u&&(Y=a("label.texttemplate"),a("label.texttemplatefallback")),Y||(G=a("label.text")),G||Y){a("label.textangle");var U=a("label.textposition",B?"middle":"middle center");a("label.xanchor"),a("label.yanchor",X2e(B,U)),a("label.padding"),y0.coerceFont(a,"label.font",t.font)}}}});var QO=N((eNe,KO)=>{"use strict";var $2e=Tr(),$O=Le();function K2e(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}KO.exports=function(r,t,a){a("newshape.visible"),a("newshape.name"),a("newshape.showlegend"),a("newshape.legend"),a("newshape.legendwidth"),a("newshape.legendgroup"),a("newshape.legendgrouptitle.text"),$O.coerceFont(a,"newshape.legendgrouptitle.font"),a("newshape.legendrank"),a("newshape.drawdirection"),a("newshape.layer"),a("newshape.fillcolor"),a("newshape.fillrule"),a("newshape.opacity");var n=a("newshape.line.width");if(n){var i=(r||{}).plot_bgcolor||"#FFF";a("newshape.line.color",$2e.contrast(i)),a("newshape.line.dash")}var o=r.dragmode==="drawline",l=a("newshape.label.text"),s=a("newshape.label.texttemplate");if(a("newshape.label.texttemplatefallback"),l||s){a("newshape.label.textangle");var u=a("newshape.label.textposition",o?"middle":"middle center");a("newshape.label.xanchor"),a("newshape.label.yanchor",K2e(o,u)),a("newshape.label.padding"),$O.coerceFont(a,"newshape.label.font",t.font)}a("activeshape.fillcolor"),a("activeshape.opacity")}});var nB=N((rNe,aB)=>{"use strict";var I4=Le(),Cc=zr(),Ec=Sh(),rB=ns();aB.exports=function(r){var t=r._fullLayout,a=I4.filterVisible(t.shapes);if(!(!a.length||!r._fullData.length))for(var n=0;n0?u+o:o;return{ppad:o,ppadplus:l?c:v,ppadminus:l?v:c}}else return{ppad:o}}function eB(e,r,t){var a=e._id.charAt(0)==="x"?"x":"y",n=e.type==="category"||e.type==="multicategory",i,o,l=0,s=0,u=n?e.r2c:e.d2c,f=r[a+"sizemode"]==="scaled";if(f?(i=r[a+"0"],o=r[a+"1"],n&&(l=r[a+"0shift"],s=r[a+"1shift"])):(i=r[a+"anchor"],o=r[a+"anchor"]),i!==void 0)return[u(i)+l,u(o)+s];if(r.path){var c=1/0,v=-1/0,d=r.path.match(Ec.segmentRE),p,y,m,x,w;for(e.type==="date"&&(u=rB.decodeDate(u)),p=0;pv&&(v=w)));if(v>=c)return[c,v]}}});var lB=N((tNe,oB)=>{"use strict";var iB=gy();oB.exports={moduleType:"component",name:"shapes",layoutAttributes:z4(),supplyLayoutDefaults:JO(),supplyDrawNewShapeDefaults:QO(),includeBasePlot:Zh()("shapes"),calcAutorange:nB(),draw:iB.draw,drawOne:iB.drawOne}});var O4=N((nNe,uB)=>{"use strict";var sB=Ca(),r3e=_t().templatedArray,aNe=jh();uB.exports=r3e("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",sB.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",sB.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var cB=N((iNe,fB)=>{"use strict";var t3e=Le(),B4=zr(),a3e=ro(),n3e=O4(),i3e="images";fB.exports=function(r,t){var a={name:i3e,handleItemDefaults:o3e};a3e(r,t,a)};function o3e(e,r,t){function a(v,d){return t3e.coerce(e,r,n3e,v,d)}var n=a("source"),i=a("visible",!!n);if(!i)return r;a("layer"),a("xanchor"),a("yanchor"),a("sizex"),a("sizey"),a("sizing"),a("opacity");for(var o={_fullLayout:t},l=["x","y"],s=0;s<2;s++){var u=l[s],f=B4.coerceRef(e,r,o,u,"paper",void 0);if(f!=="paper"){var c=B4.getFromId(o,f);c._imgIndices.push(r._index)}B4.coercePosition(r,o,a,f,u,0)}return r}});var pB=N((oNe,dB)=>{"use strict";var vB=Sr(),l3e=jr(),Dc=zr(),hB=la(),s3e=sl();dB.exports=function(r){var t=r._fullLayout,a=[],n={},i=[],o,l;for(l=0;l{"use strict";var yB=Rr(),u3e=gp();mB.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",o=a==="linear"&&t.type==="log";if(i||o){for(var l=r._fullLayout.images,s=t._id.charAt(0),u,f,c=0;c{"use strict";bB.exports={moduleType:"component",name:"images",layoutAttributes:O4(),supplyLayoutDefaults:cB(),includeBasePlot:Zh()("images"),draw:pB(),convertCoords:gB()}});var Em=N((uNe,_B)=>{"use strict";_B.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var H4=N((fNe,TB)=>{"use strict";var f3e=ma(),c3e=si(),v3e=bt().extendFlat,h3e=Ji().overrideAll,d3e=Cp(),wB=_t().templatedArray,p3e=wB("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});TB.exports=h3e(wB("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:p3e,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:v3e(d3e({editType:"arraydraw"}),{}),font:f3e({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:c3e.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var SB=N((cNe,kB)=>{"use strict";var Dm=Le(),AB=ro(),MB=H4(),y3e=Em(),m3e=y3e.name,g3e=MB.buttons;kB.exports=function(r,t){var a={name:m3e,handleItemDefaults:b3e};AB(r,t,a)};function b3e(e,r,t){function a(o,l){return Dm.coerce(e,r,MB,o,l)}var n=AB(e,r,{name:"buttons",handleItemDefaults:x3e}),i=a("visible",n.length>0);i&&(a("active"),a("direction"),a("type"),a("showactive"),a("x"),a("y"),Dm.noneOrAll(e,r,["x","y"]),a("xanchor"),a("yanchor"),a("pad.t"),a("pad.r"),a("pad.b"),a("pad.l"),Dm.coerceFont(a,"font",t.font),a("bgcolor",t.paper_bgcolor),a("bordercolor"),a("borderwidth"))}function x3e(e,r){function t(n,i){return Dm.coerce(e,r,g3e,n,i)}var a=t("visible",e.method==="skip"||Array.isArray(e.args));a&&(t("method"),t("args"),t("args2"),t("label"),t("execute"))}});var CB=N((vNe,LB)=>{"use strict";LB.exports=Ht;var fo=Sr(),qB=Tr(),Rc=jr(),Rm=Le();function Ht(e,r,t){this.gd=e,this.container=r,this.id=t,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}Ht.barWidth=2;Ht.barLength=20;Ht.barRadius=2;Ht.barPad=1;Ht.barColor="#808BA4";Ht.prototype.enable=function(r,t,a){var n=this.gd._fullLayout,i=n.width,o=n.height;this.position=r;var l=this.position.l,s=this.position.w,u=this.position.t,f=this.position.h,c=this.position.direction,v=c==="down",d=c==="left",p=c==="right",y=c==="up",m=s,x=f,w,_,b,T;!v&&!d&&!p&&!y&&(this.position.direction="down",v=!0);var k=v||y;k?(w=l,_=w+m,v?(b=u,T=Math.min(b+x,o),x=T-b):(T=u+x,b=Math.max(T-x,0),x=T-b)):(b=u,T=b+x,d?(_=l+m,w=Math.max(_-m,0),m=_-w):(w=l,_=Math.min(w+m,i),m=_-w)),this._box={l:w,t:b,w:m,h:x};var M=s>m,q=Ht.barLength+2*Ht.barPad,E=Ht.barWidth+2*Ht.barPad,D=l,P=u+f;P+E>o&&(P=o-E);var R=this.container.selectAll("rect.scrollbar-horizontal").data(M?[0]:[]);R.exit().on(".drag",null).remove(),R.enter().append("rect").classed("scrollbar-horizontal",!0).call(qB.fill,Ht.barColor),M?(this.hbar=R.attr({rx:Ht.barRadius,ry:Ht.barRadius,x:D,y:P,width:q,height:E}),this._hbarXMin=D+q/2,this._hbarTranslateMax=m-q):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var z=f>x,O=Ht.barWidth+2*Ht.barPad,B=Ht.barLength+2*Ht.barPad,Y=l+s,G=u;Y+O>i&&(Y=i-O);var U=this.container.selectAll("rect.scrollbar-vertical").data(z?[0]:[]);U.exit().on(".drag",null).remove(),U.enter().append("rect").classed("scrollbar-vertical",!0).call(qB.fill,Ht.barColor),z?(this.vbar=U.attr({rx:Ht.barRadius,ry:Ht.barRadius,x:Y,y:G,width:O,height:B}),this._vbarYMin=G+B/2,this._vbarTranslateMax=x-B):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var V=this.id,J=w-.5,Z=z?_+O+.5:_+.5,ee=b-.5,fe=M?T+E+.5:T+.5,ie=n._topdefs.selectAll("#"+V).data(M||z?[0]:[]);if(ie.exit().remove(),ie.enter().append("clipPath").attr("id",V).append("rect"),M||z?(this._clipRect=ie.select("rect").attr({x:Math.floor(J),y:Math.floor(ee),width:Math.ceil(Z)-Math.floor(J),height:Math.ceil(fe)-Math.floor(ee)}),this.container.call(Rc.setClipUrl,V,this.gd),this.bg.attr({x:l,y:u,width:s,height:f})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Rc.setClipUrl,null),delete this._clipRect),M||z){var ue=fo.behavior.drag().on("dragstart",function(){fo.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(ue);var K=fo.behavior.drag().on("dragstart",function(){fo.event.sourceEvent.preventDefault(),fo.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));M&&this.hbar.on(".drag",null).call(K),z&&this.vbar.on(".drag",null).call(K)}this.setTranslate(t,a)};Ht.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Rc.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};Ht.prototype._onBoxDrag=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r-=fo.event.dx),this.vbar&&(t-=fo.event.dy),this.setTranslate(r,t)};Ht.prototype._onBoxWheel=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r+=fo.event.deltaY),this.vbar&&(t+=fo.event.deltaY),this.setTranslate(r,t)};Ht.prototype._onBarDrag=function(){var r=this.translateX,t=this.translateY;if(this.hbar){var a=r+this._hbarXMin,n=a+this._hbarTranslateMax,i=Rm.constrain(fo.event.x,a,n),o=(i-a)/(n-a),l=this.position.w-this._box.w;r=o*l}if(this.vbar){var s=t+this._vbarYMin,u=s+this._vbarTranslateMax,f=Rm.constrain(fo.event.y,s,u),c=(f-s)/(u-s),v=this.position.h-this._box.h;t=c*v}this.setTranslate(r,t)};Ht.prototype.setTranslate=function(r,t){var a=this.position.w-this._box.w,n=this.position.h-this._box.h;if(r=Rm.constrain(r||0,0,a),t=Rm.constrain(t||0,0,n),this.translateX=r,this.translateY=t,this.container.call(Rc.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-t),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+t-.5)}),this.hbar){var i=r/a;this.hbar.call(Rc.setTranslate,r+i*this._hbarTranslateMax,t)}if(this.vbar){var o=t/n;this.vbar.call(Rc.setTranslate,r,t+o*this._vbarTranslateMax)}}});var BB=N((hNe,OB)=>{"use strict";var Pc=Sr(),m0=ta(),g0=Tr(),Fc=jr(),ei=Le(),Pm=Ea(),_3e=_t().arrayEditor,DB=Wa().LINE_SPACING,wr=Em(),w3e=CB();OB.exports=function(r){var t=r._fullLayout,a=ei.filterVisible(t[wr.name]);function n(v){m0.autoMargin(r,zB(v))}var i=t._menulayer.selectAll("g."+wr.containerClassName).data(a.length>0?[0]:[]);if(i.enter().append("g").classed(wr.containerClassName,!0).style("cursor","pointer"),i.exit().each(function(){Pc.select(this).selectAll("g."+wr.headerGroupClassName).each(n)}).remove(),a.length!==0){var o=i.selectAll("g."+wr.headerGroupClassName).data(a,T3e);o.enter().append("g").classed(wr.headerGroupClassName,!0);for(var l=ei.ensureSingle(i,"g",wr.dropdownButtonGroupClassName,function(v){v.style("pointer-events","all")}),s=0;s{"use strict";var C3e=Em();HB.exports={moduleType:"component",name:C3e.name,layoutAttributes:H4(),supplyLayoutDefaults:SB(),draw:BB()}});var x0=N((pNe,GB)=>{"use strict";GB.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var Y4=N((yNe,jB)=>{"use strict";var VB=ma(),E3e=Cp(),D3e=bt().extendDeepAll,R3e=Ji().overrideAll,P3e=eh(),YB=_t().templatedArray,Pu=x0(),F3e=YB("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});jB.exports=R3e(YB("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:F3e,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:D3e(E3e({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:P3e.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:VB({})},font:VB({}),activebgcolor:{valType:"color",dflt:Pu.gripBgActiveColor},bgcolor:{valType:"color",dflt:Pu.railBgColor},bordercolor:{valType:"color",dflt:Pu.railBorderColor},borderwidth:{valType:"number",min:0,dflt:Pu.railBorderWidth},ticklen:{valType:"number",min:0,dflt:Pu.tickLength},tickcolor:{valType:"color",dflt:Pu.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:Pu.minorTickLength}}),"arraydraw","from-root")});var JB=N((mNe,XB)=>{"use strict";var Nc=Le(),WB=ro(),ZB=Y4(),N3e=x0(),z3e=N3e.name,I3e=ZB.steps;XB.exports=function(r,t){WB(r,t,{name:z3e,handleItemDefaults:O3e})};function O3e(e,r,t){function a(c,v){return Nc.coerce(e,r,ZB,c,v)}for(var n=WB(e,r,{name:"steps",handleItemDefaults:B3e}),i=0,o=0;o{"use strict";var co=Sr(),Fm=ta(),vs=Tr(),vo=jr(),ri=Le(),H3e=ri.strTranslate,_0=Ea(),U3e=_t().arrayEditor,Fr=x0(),Z4=Wa(),QB=Z4.LINE_SPACING,j4=Z4.FROM_TL,W4=Z4.FROM_BR;iH.exports=function(r){var t=r._context.staticPlot,a=r._fullLayout,n=G3e(a,r),i=a._infolayer.selectAll("g."+Fr.containerClassName).data(n.length>0?[0]:[]);i.enter().append("g").classed(Fr.containerClassName,!0).style("cursor",t?null:"ew-resize");function o(f){f._commandObserver&&(f._commandObserver.remove(),delete f._commandObserver),Fm.autoMargin(r,eH(f))}if(i.exit().each(function(){co.select(this).selectAll("g."+Fr.groupClassName).each(o)}).remove(),n.length!==0){var l=i.selectAll("g."+Fr.groupClassName).data(n,V3e);l.enter().append("g").classed(Fr.groupClassName,!0),l.exit().each(o).remove();for(var s=0;s0&&(l=l.transition().duration(r.transition.duration).ease(r.transition.easing)),l.attr("transform",H3e(o-Fr.gripWidth*.5,r._dims.currentValueTotalHeight))}}function X4(e,r){var t=e._dims;return t.inputAreaStart+Fr.stepInset+(t.inputAreaLength-2*Fr.stepInset)*Math.min(1,Math.max(0,r))}function KB(e,r){var t=e._dims;return Math.min(1,Math.max(0,(r-Fr.stepInset-t.inputAreaStart)/(t.inputAreaLength-2*Fr.stepInset-2*t.inputAreaStart)))}function $3e(e,r,t){var a=t._dims,n=ri.ensureSingle(e,"rect",Fr.railTouchRectClass,function(i){i.call(aH,r,e,t).style("pointer-events","all")});n.attr({width:a.inputAreaLength,height:Math.max(a.inputAreaWidth,Fr.tickOffset+t.ticklen+a.labelHeight)}).call(vs.fill,t.bgcolor).attr("opacity",0),vo.setTranslate(n,0,a.currentValueTotalHeight)}function K3e(e,r){var t=r._dims,a=t.inputAreaLength-Fr.railInset*2,n=ri.ensureSingle(e,"rect",Fr.railRectClass);n.attr({width:a,height:Fr.railWidth,rx:Fr.railRadius,ry:Fr.railRadius,"shape-rendering":"crispEdges"}).call(vs.stroke,r.bordercolor).call(vs.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px"),vo.setTranslate(n,Fr.railInset,(t.inputAreaWidth-Fr.railWidth)*.5+t.currentValueTotalHeight)}});var sH=N((bNe,lH)=>{"use strict";var Q3e=x0();lH.exports={moduleType:"component",name:Q3e.name,layoutAttributes:Y4(),supplyLayoutDefaults:JB(),draw:oH()}});var zm=N((xNe,fH)=>{"use strict";var uH=si();fH.exports={bgcolor:{valType:"color",dflt:uH.background,editType:"plot"},bordercolor:{valType:"color",dflt:uH.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var J4=N((_Ne,cH)=>{"use strict";cH.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var Im=N((wNe,vH)=>{"use strict";vH.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var pH=N(Bm=>{"use strict";var ebe=la(),rbe=Ea(),hH=Im(),tbe=Wa().LINE_SPACING,Om=hH.name;function dH(e){var r=e&&e[Om];return r&&r.visible}Bm.isVisible=dH;Bm.makeData=function(e){for(var r=ebe.list({_fullLayout:e},"x",!0),t=e.margin,a=[],n=0;n{"use strict";var Hm=Le(),yH=_t(),mH=la(),abe=zm(),nbe=J4();gH.exports=function(r,t,a){var n=r[a],i=t[a];if(!(n.rangeslider||t._requestRangeslider[i._id]))return;Hm.isPlainObject(n.rangeslider)||(n.rangeslider={});var o=n.rangeslider,l=yH.newContainer(i,"rangeslider");function s(T,k){return Hm.coerce(o,l,abe,T,k)}var u,f;function c(T,k){return Hm.coerce(u,f,nbe,T,k)}var v=s("visible");if(v){s("bgcolor",t.plot_bgcolor),s("bordercolor"),s("borderwidth"),s("thickness"),s("autorange",!i.isValidRange(o.range)),s("range");var d=t._subplots;if(d)for(var p=d.cartesian.filter(function(T){return T.substr(0,T.indexOf("y"))===mH.name2id(a)}).map(function(T){return T.substr(T.indexOf("y"),T.length)}),y=Hm.simpleMap(p,mH.id2name),m=0;m{"use strict";var ibe=la().list,obe=yh().getAutoRange,lbe=Im();xH.exports=function(r){for(var t=ibe(r,"x",!0),a=0;a{"use strict";var Um=Sr(),sbe=br(),ube=ta(),Jt=Le(),Gm=Jt.strTranslate,TH=jr(),hs=Tr(),fbe=Jf(),cbe=Li(),$4=la(),vbe=pi(),hbe=rs(),Ur=Im();AH.exports=function(e){for(var r=e._fullLayout,t=r._rangeSliderData,a=0;a=U.max)Y=P[G+1];else if(B=U.pmax)Y=P[G+1];else if(B0?e.touches[0].clientX:0}function dbe(e,r,t,a){if(r._context.staticPlot)return;var n=e.select("rect."+Ur.slideBoxClassName).node(),i=e.select("rect."+Ur.grabAreaMinClassName).node(),o=e.select("rect."+Ur.grabAreaMaxClassName).node();function l(){var s=Um.event,u=s.target,f=wH(s),c=f-e.node().getBoundingClientRect().left,v=a.d2p(t._rl[0]),d=a.d2p(t._rl[1]),p=vbe.coverSlip();this.addEventListener("touchmove",y),this.addEventListener("touchend",m),p.addEventListener("mousemove",y),p.addEventListener("mouseup",m);function y(x){var w=wH(x),_=+w-f,b,T,k;switch(u){case n:if(k="ew-resize",v+_>t._length||d+_<0)return;b=v+_,T=d+_;break;case i:if(k="col-resize",v+_>t._length)return;b=v+_,T=d;break;case o:if(k="col-resize",d+_<0)return;b=v,T=d+_;break;default:k="ew-resize",b=c,T=c+_;break}if(T{"use strict";var Abe=Le(),Mbe=zm(),kbe=J4(),K4=pH();kH.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:Abe.extendFlat({},Mbe,{yaxis:kbe})}}},layoutAttributes:zm(),handleDefaults:bH(),calcAutorange:_H(),draw:MH(),isVisible:K4.isVisible,makeData:K4.makeData,autoMarginOpts:K4.autoMarginOpts}});var Vm=N((qNe,LH)=>{"use strict";var Sbe=ma(),qH=si(),qbe=_t().templatedArray,Lbe=qbe("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});LH.exports={visible:{valType:"boolean",editType:"plot"},buttons:Lbe,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:Sbe({editType:"plot"}),bgcolor:{valType:"color",dflt:qH.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:qH.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var Q4=N((LNe,CH)=>{"use strict";CH.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var RH=N((CNe,DH)=>{"use strict";var Ym=Le(),Cbe=Tr(),Ebe=_t(),Dbe=ro(),EH=Vm(),ew=Q4();DH.exports=function(r,t,a,n,i){var o=r.rangeselector||{},l=Ebe.newContainer(t,"rangeselector");function s(d,p){return Ym.coerce(o,l,EH,d,p)}var u=Dbe(o,l,{name:"buttons",handleItemDefaults:Rbe,calendar:i}),f=s("visible",u.length>0);if(f){var c=Pbe(t,a,n);s("x",c[0]),s("y",c[1]),Ym.noneOrAll(r,t,["x","y"]),s("xanchor"),s("yanchor"),Ym.coerceFont(s,"font",a.font);var v=s("bgcolor");s("activecolor",Cbe.contrast(v,ew.lightAmount,ew.darkAmount)),s("bordercolor"),s("borderwidth")}};function Rbe(e,r,t,a){var n=a.calendar;function i(s,u){return Ym.coerce(e,r,EH.buttons,s,u)}var o=i("visible");if(o){var l=i("step");l!=="all"&&(n&&n!=="gregorian"&&(l==="month"||l==="year")?r.stepmode="backward":i("stepmode"),i("count")),i("label")}}function Pbe(e,r,t){for(var a=t.filter(function(l){return r[l].anchor===e._id}),n=0,i=0;i{"use strict";var Fbe=rb(),Nbe=Le().titleCase;PH.exports=function(r,t){var a=r._name,n={};if(t.step==="all")n[a+".autorange"]=!0;else{var i=zbe(r,t);n[a+".range[0]"]=i[0],n[a+".range[1]"]=i[1]}return n};function zbe(e,r){var t=e.range,a=new Date(e.r2l(t[1])),n=r.step,i=Fbe["utc"+Nbe(n)],o=r.count,l;switch(r.stepmode){case"backward":l=e.l2r(+i.offset(a,-o));break;case"todate":var s=i.offset(a,-o);l=e.l2r(+i.ceil(s));break}var u=t[1];return[l,u]}});var GH=N((DNe,UH)=>{"use strict";var Wm=Sr(),Ibe=br(),Obe=ta(),NH=Tr(),HH=jr(),bl=Le(),zH=bl.strTranslate,jm=Ea(),Bbe=la(),aw=Wa(),IH=aw.LINE_SPACING,OH=aw.FROM_TL,BH=aw.FROM_BR,tw=Q4(),Hbe=FH();UH.exports=function(r){var t=r._fullLayout,a=t._infolayer.selectAll(".rangeselector").data(Ube(r),Gbe);a.enter().append("g").classed("rangeselector",!0),a.exit().remove(),a.style({cursor:"pointer","pointer-events":"all"}),a.each(function(n){var i=Wm.select(this),o=n,l=o.rangeselector,s=i.selectAll("g.button").data(bl.filterVisible(l.buttons));s.enter().append("g").classed("button",!0),s.exit().remove(),s.each(function(u){var f=Wm.select(this),c=Hbe(o,u);u._isActive=Vbe(o,u,c),f.call(rw,l,u),f.call(jbe,l,u,r),f.on("click",function(){r._dragged||Ibe.call("_guiRelayout",r,c)}),f.on("mouseover",function(){u._isHovered=!0,f.call(rw,l,u)}),f.on("mouseout",function(){u._isHovered=!1,f.call(rw,l,u)})}),Zbe(r,s,l,o._name,i)})};function Ube(e){for(var r=Bbe.list(e,"x",!0),t=[],a=0;a{"use strict";VH.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:Vm()}}},layoutAttributes:Vm(),handleDefaults:RH(),draw:GH()}});var zc=N(nw=>{"use strict";var jH=bt().extendFlat;nw.attributes=function(e,r){e=e||{},r=r||{};var t={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},a=e.name?e.name+" ":"",n=e.trace?"trace ":"subplot ",i=r.description?" "+r.description:"",o={x:jH({},t,{}),y:jH({},t,{}),editType:e.editType};return e.noGridCell||(o.row={valType:"integer",min:0,dflt:0,editType:e.editType},o.column={valType:"integer",min:0,dflt:0,editType:e.editType}),o};nw.defaults=function(e,r,t,a){var n=a&&a.x||[0,1],i=a&&a.y||[0,1],o=r.grid;if(o){var l=t("domain.column");l!==void 0&&(l{"use strict";var Xbe=Le(),Jbe=Mf().counter,$be=zc().attributes,WH=Ca().idRegex,Kbe=_t(),iw={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[Jbe("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[WH.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[WH.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:$be({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function Zm(e,r,t){var a=r[t+"axes"],n=Object.keys((e._splomAxes||{})[t]||{});if(Array.isArray(a))return a;if(n.length)return n}function Qbe(e,r){var t=e.grid||{},a=Zm(r,t,"x"),n=Zm(r,t,"y");if(!e.grid&&!a&&!n)return;var i=Array.isArray(t.subplots)&&Array.isArray(t.subplots[0]),o=Array.isArray(a),l=Array.isArray(n),s=o&&a!==t.xaxes&&l&&n!==t.yaxes,u,f;i?(u=t.subplots.length,f=t.subplots[0].length):(l&&(u=n.length),o&&(f=a.length));var c=Kbe.newContainer(r,"grid");function v(k,M){return Xbe.coerce(t,c,iw,k,M)}var d=v("rows",u),p=v("columns",f);if(!(d*p>1)){delete r.grid;return}if(!i&&!o&&!l){var y=v("pattern")==="independent";y&&(i=!0)}c._hasSubplotGrid=i;var m=v("roworder"),x=m==="top to bottom",w=i?.2:.1,_=i?.3:.1,b,T;s&&r._splomGridDflt&&(b=r._splomGridDflt.xside,T=r._splomGridDflt.yside),c._domains={x:ZH("x",v,w,b,p),y:ZH("y",v,_,T,d,x)}}function ZH(e,r,t,a,n,i){var o=r(e+"gap",t),l=r("domain."+e);r(e+"side",a);for(var s=new Array(n),u=l[0],f=(l[1]-u)/(n-o),c=f*(1-o),v=0;v{"use strict";KH.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var rU=N((zNe,eU)=>{"use strict";var QH=Rr(),rxe=br(),txe=Le(),axe=_t(),nxe=ow();eU.exports=function(e,r,t,a){var n="error_"+a.axis,i=axe.newContainer(r,n),o=e[n]||{};function l(p,y){return txe.coerce(o,i,nxe,p,y)}var s=o.array!==void 0||o.value!==void 0||o.type==="sqrt",u=l("visible",s);if(u!==!1){var f=l("type","array"in o?"data":"percent"),c=!0;f!=="sqrt"&&(c=l("symmetric",!((f==="data"?"arrayminus":"valueminus")in o))),f==="data"?(l("array"),l("traceref"),c||(l("arrayminus"),l("tracerefminus"))):(f==="percent"||f==="constant")&&(l("value"),c||l("valueminus"));var v="copy_"+a.inherit+"style";if(a.inherit){var d=r["error_"+a.inherit];(d||{}).visible&&l(v,!(o.color||QH(o.thickness)||QH(o.width)))}(!a.inherit||!i[v])&&(l("color",t),l("thickness"),l("width",rxe.traceIs(r,"gl3d")?0:4))}}});var lw=N((INe,aU)=>{"use strict";aU.exports=function(r){var t=r.type,a=r.symmetric;if(t==="data"){var n=r.array||[];if(a)return function(u,f){var c=+n[f];return[c,c]};var i=r.arrayminus||[];return function(u,f){var c=+n[f],v=+i[f];return!isNaN(c)||!isNaN(v)?[v||0,c||0]:[NaN,NaN]}}else{var o=tU(t,r.value),l=tU(t,r.valueminus);return a||r.valueminus===void 0?function(u){var f=o(u);return[f,f]}:function(u){return[l(u),o(u)]}}};function tU(e,r){if(e==="percent")return function(t){return Math.abs(t*r/100)};if(e==="constant")return function(){return Math.abs(r)};if(e==="sqrt")return function(t){return Math.sqrt(Math.abs(t))}}});var oU=N((ONe,iU)=>{"use strict";var sw=Rr(),ixe=br(),uw=zr(),oxe=Le(),lxe=lw();iU.exports=function(r){for(var t=r.calcdata,a=0;a{"use strict";var lU=Sr(),ds=Rr(),sxe=jr(),uxe=Dn();sU.exports=function(r,t,a,n){var i,o=a.xaxis,l=a.yaxis,s=n&&n.duration>0,u=r._context.staticPlot;t.each(function(f){var c=f[0].trace,v=c.error_x||{},d=c.error_y||{},p;c.ids&&(p=function(w){return w.id});var y=uxe.hasMarkers(c)&&c.marker.maxdisplayed>0;!d.visible&&!v.visible&&(f=[]);var m=lU.select(this).selectAll("g.errorbar").data(f,p);if(m.exit().remove(),!!f.length){v.visible||m.selectAll("path.xerror").remove(),d.visible||m.selectAll("path.yerror").remove(),m.style("opacity",1);var x=m.enter().append("g").classed("errorbar",!0);s&&x.style("opacity",0).transition().duration(n.duration).style("opacity",1),sxe.setClipUrl(m,a.layerClipId,r),m.each(function(w){var _=lU.select(this),b=fxe(w,o,l);if(!(y&&!w.vis)){var T,k=_.select("path.yerror");if(d.visible&&ds(b.x)&&ds(b.yh)&&ds(b.ys)){var M=d.width;T="M"+(b.x-M)+","+b.yh+"h"+2*M+"m-"+M+",0V"+b.ys,b.noYS||(T+="m-"+M+",0h"+2*M),i=!k.size(),i?k=_.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("yerror",!0):s&&(k=k.transition().duration(n.duration).ease(n.easing)),k.attr("d",T)}else k.remove();var q=_.select("path.xerror");if(v.visible&&ds(b.y)&&ds(b.xh)&&ds(b.xs)){var E=(v.copy_ystyle?d:v).width;T="M"+b.xh+","+(b.y-E)+"v"+2*E+"m0,-"+E+"H"+b.xs,b.noXS||(T+="m0,-"+E+"v"+2*E),i=!q.size(),i?q=_.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("xerror",!0):s&&(q=q.transition().duration(n.duration).ease(n.easing)),q.attr("d",T)}else q.remove()}})}})};function fxe(e,r,t){var a={x:r.c2p(e.x),y:t.c2p(e.y)};return e.yh!==void 0&&(a.yh=t.c2p(e.yh),a.ys=t.c2p(e.ys),ds(a.ys)||(a.noYS=!0,a.ys=t.c2p(e.ys,!0))),e.xh!==void 0&&(a.xh=r.c2p(e.xh),a.xs=r.c2p(e.xs),ds(a.xs)||(a.noXS=!0,a.xs=r.c2p(e.xs,!0))),a}});var vU=N((HNe,cU)=>{"use strict";var cxe=Sr(),fU=Tr();cU.exports=function(r){r.each(function(t){var a=t[0].trace,n=a.error_y||{},i=a.error_x||{},o=cxe.select(this);o.selectAll("path.yerror").style("stroke-width",n.thickness+"px").call(fU.stroke,n.color),i.copy_ystyle&&(i=n),o.selectAll("path.xerror").style("stroke-width",i.thickness+"px").call(fU.stroke,i.color)})}});var pU=N((UNe,dU)=>{"use strict";var w0=Le(),hU=Ji().overrideAll,T0=ow(),Fu={error_x:w0.extendFlat({},T0),error_y:w0.extendFlat({},T0)};delete Fu.error_x.copy_zstyle;delete Fu.error_y.copy_zstyle;delete Fu.error_y.copy_ystyle;var A0={error_x:w0.extendFlat({},T0),error_y:w0.extendFlat({},T0),error_z:w0.extendFlat({},T0)};delete A0.error_x.copy_ystyle;delete A0.error_y.copy_ystyle;delete A0.error_z.copy_ystyle;delete A0.error_z.copy_zstyle;dU.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Fu,bar:Fu,histogram:Fu,scatter3d:hU(A0,"calc","nested"),scattergl:hU(Fu,"calc","nested")}},supplyDefaults:rU(),calc:oU(),makeComputeError:lw(),plot:uU(),style:vU(),hoverInfo:vxe};function vxe(e,r,t){(r.error_y||{}).visible&&(t.yerr=e.yh-e.y,r.error_y.symmetric||(t.yerrneg=e.y-e.ys)),(r.error_x||{}).visible&&(t.xerr=e.xh-e.x,r.error_x.symmetric||(t.xerrneg=e.x-e.xs))}});var mU=N((GNe,yU)=>{"use strict";yU.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var AU=N((VNe,TU)=>{"use strict";var ps=Sr(),fw=kn(),Jm=ta(),gU=br(),xl=zr(),Xm=pi(),Ci=Le(),po=Ci.strTranslate,wU=bt().extendFlat,cw=rs(),ho=jr(),vw=Tr(),hxe=Jf(),dxe=Ea(),pxe=Wn().flipScale,yxe=_4(),mxe=w4(),gxe=hi(),hw=Wa(),bU=hw.LINE_SPACING,xU=hw.FROM_TL,_U=hw.FROM_BR,Ot=mU().cn;function bxe(e){var r=e._fullLayout,t=r._infolayer.selectAll("g."+Ot.colorbar).data(xxe(e),function(a){return a._id});t.enter().append("g").attr("class",function(a){return a._id}).classed(Ot.colorbar,!0),t.each(function(a){var n=ps.select(this);Ci.ensureSingle(n,"rect",Ot.cbbg),Ci.ensureSingle(n,"g",Ot.cbfills),Ci.ensureSingle(n,"g",Ot.cblines),Ci.ensureSingle(n,"g",Ot.cbaxis,function(o){o.classed(Ot.crisp,!0)}),Ci.ensureSingle(n,"g",Ot.cbtitleunshift,function(o){o.append("g").classed(Ot.cbtitle,!0)}),Ci.ensureSingle(n,"rect",Ot.cboutline);var i=_xe(n,a,e);i&&i.then&&(e._promises||[]).push(i),e._context.edits.colorbarPosition&&wxe(n,a,e)}),t.exit().each(function(a){Jm.autoMargin(e,a._id)}).remove(),t.order()}function xxe(e){var r=e._fullLayout,t=e.calcdata,a=[],n,i,o,l;function s(_){return wU(_,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function u(){typeof l.calc=="function"?l.calc(e,o,n):(n._fillgradient=i.reversescale?pxe(i.colorscale):i.colorscale,n._zrange=[i[l.min],i[l.max]])}for(var f=0;f1){var Q=Math.pow(10,Math.floor(Math.log(j)/Math.LN10));oe*=Q*Ci.roundUp(j/Q,[2,5,10]),(Math.abs(R.start)/R.size+1e-6)%1<2e-6&&(le.tick0=0)}le.dtick=oe}le.domain=a?[K+p/b.h,K+V-p/b.h]:[K+d/b.w,K+V-d/b.w],le.setScale(),e.attr("transform",po(Math.round(b.l),Math.round(b.t)));var W=e.select("."+Ot.cbtitleunshift).attr("transform",po(-Math.round(b.l),-Math.round(b.t))),pe=le.ticklabelposition,me=le.title.font.size,ye=e.select("."+Ot.cbaxis),Pe,Ne=0,Ee=0;function Ie(He,se){var Ae={propContainer:le,propName:r._propPrefix+"title.text",traceIndex:r._traceIndex,_meta:r._meta,placeholder:_._dfltTitle.colorbar,containerGroup:e.select("."+Ot.cbtitle)},Xe=He.charAt(0)==="h"?He.substr(1):"h"+He;e.selectAll("."+Xe+",."+Xe+"-math-group").remove(),hxe.draw(t,He,wU(Ae,se||{}))}function Ue(){if(a&&he||!a&&!he){var He,se;q==="top"&&(He=d+b.l+J*y,se=p+b.t+Z*(1-K-V)+3+me*.75),q==="bottom"&&(He=d+b.l+J*y,se=p+b.t+Z*(1-K)-3-me*.25),q==="right"&&(se=p+b.t+Z*m+3+me*.75,He=d+b.l+J*K),Ie(le._id+"title",{attributes:{x:He,y:se,"text-anchor":a?"start":"middle"}})}}function Be(){if(a&&!he||!a&&he){var He=le.position||0,se=le._offset+le._length/2,Ae,Xe;if(q==="right")Xe=se,Ae=b.l+J*He+10+me*(le.showticklabels?1:.5);else if(Ae=se,q==="bottom"&&(Xe=b.t+Z*He+10+(pe.indexOf("inside")===-1?le.tickfont.size:0)+(le.ticks!=="inside"&&r.ticklen||0)),q==="top"){var vr=M.text.split("
").length;Xe=b.t+Z*He+10-Y-bU*me*vr}Ie((a?"h":"v")+le._id+"title",{avoid:{selection:ps.select(t).selectAll("g."+le._id+"tick"),side:q,offsetTop:a?0:b.t,offsetLeft:a?b.l:0,maxShift:a?_.width:_.height},attributes:{x:Ae,y:Xe,"text-anchor":"middle"},transform:{rotate:a?-90:0,offset:0}})}}function Ce(){if(!a&&!he||a&&he){var He=e.select("."+Ot.cbtitle),se=He.select("text"),Ae=[-s/2,s/2],Xe=He.select(".h"+le._id+"title-math-group").node(),vr=15.6;se.node()&&(vr=parseInt(se.node().style.fontSize,10)*bU);var Fe;if(Xe?(Fe=ho.bBox(Xe),Ee=Fe.width,Ne=Fe.height,Ne>vr&&(Ae[1]-=(Ne-vr)/2)):se.node()&&!se.classed(Ot.jsPlaceholder)&&(Fe=ho.bBox(se.node()),Ee=Fe.width,Ne=Fe.height),a){if(Ne){if(Ne+=5,q==="top")le.domain[1]-=Ne/b.h,Ae[1]*=-1;else{le.domain[0]+=Ne/b.h;var Te=dxe.lineCount(se);Ae[1]+=(1-Te)*vr}He.attr("transform",po(Ae[0],Ae[1])),le.setScale()}}else Ee&&(q==="right"&&(le.domain[0]+=(Ee+me/2)/b.w),He.attr("transform",po(Ae[0],Ae[1])),le.setScale())}e.selectAll("."+Ot.cbfills+",."+Ot.cblines).attr("transform",a?po(0,Math.round(b.h*(1-le.domain[1]))):po(Math.round(b.w*le.domain[0]),0)),ye.attr("transform",a?po(0,Math.round(-b.t)):po(Math.round(-b.l),0));var qe=e.select("."+Ot.cbfills).selectAll("rect."+Ot.cbfill).attr("style","").data(O);qe.enter().append("rect").classed(Ot.cbfill,!0).attr("style",""),qe.exit().remove();var Ge=E.map(le.c2p).map(Math.round).sort(function(rr,Ke){return rr-Ke});qe.each(function(rr,Ke){var ze=[Ke===0?E[0]:(O[Ke]+O[Ke-1])/2,Ke===O.length-1?E[1]:(O[Ke]+O[Ke+1])/2].map(le.c2p).map(Math.round);a&&(ze[1]=Ci.constrain(ze[1]+(ze[1]>ze[0])?1:-1,Ge[0],Ge[1]));var ne=ps.select(this).attr(a?"x":"y",ee).attr(a?"y":"x",ps.min(ze)).attr(a?"width":"height",Math.max(Y,2)).attr(a?"height":"width",Math.max(ps.max(ze)-ps.min(ze),2));if(r._fillgradient)ho.gradient(ne,t,r._id,a?"vertical":"horizontalreversed",r._fillgradient,"fill");else{var ve=P(rr).replace("e-","");ne.attr("fill",fw(ve).toHexString())}});var Je=e.select("."+Ot.cblines).selectAll("path."+Ot.cbline).data(k.color&&k.width?B:[]);Je.enter().append("path").classed(Ot.cbline,!0),Je.exit().remove(),Je.each(function(rr){var Ke=ee,ze=Math.round(le.c2p(rr))+k.width/2%1;ps.select(this).attr("d","M"+(a?Ke+","+ze:ze+","+Ke)+(a?"h":"v")+Y).call(ho.lineGroupStyle,k.width,D(rr),k.dash)}),ye.selectAll("g."+le._id+"tick,path").remove();var Ve=ee+Y+(s||0)/2-(r.ticks==="outside"?1:0),Ze=xl.calcTicks(le),or=xl.getTickSigns(le)[2];return xl.drawTicks(t,le,{vals:le.ticks==="inside"?xl.clipEnds(le,Ze):Ze,layer:ye,path:xl.makeTickPath(le,Ve,or),transFn:xl.makeTransTickFn(le)}),xl.drawLabels(t,le,{vals:Ze,layer:ye,transFn:xl.makeTransTickLabelFn(le),labelFns:xl.makeLabelFns(le,Ve)})}function Oe(){var He,se=Y+s/2;pe.indexOf("inside")===-1&&(He=ho.bBox(ye.node()),se+=a?He.width:He.height),Pe=W.select("text");var Ae=0,Xe=a&&q==="top",vr=!a&&q==="right",Fe=0;if(Pe.node()&&!Pe.classed(Ot.jsPlaceholder)){var Te,qe=W.select(".h"+le._id+"title-math-group").node();qe&&(a&&he||!a&&!he)?(He=ho.bBox(qe),Ae=He.width,Te=He.height):(He=ho.bBox(W.node()),Ae=He.right-b.l-(a?ee:_e),Te=He.bottom-b.t-(a?_e:ee),!a&&q==="top"&&(se+=He.height,Fe=He.height)),vr&&(Pe.attr("transform",po(Ae/2+me/2,0)),Ae*=2),se=Math.max(se,a?Ae:Te)}var Ge=(a?d:p)*2+se+u+s/2,Je=0;!a&&M.text&&v==="bottom"&&m<=0&&(Je=Ge/2,Ge+=Je,Fe+=Je),_._hColorbarMoveTitle=Je,_._hColorbarMoveCBTitle=Fe;var Ve=u+s,Ze=(a?ee:_e)-Ve/2-(a?d:0),or=(a?_e:ee)-(a?U:p+Fe-Je);e.select("."+Ot.cbbg).attr("x",Ze).attr("y",or).attr(a?"width":"height",Math.max(Ge-Je,2)).attr(a?"height":"width",Math.max(U+Ve,2)).call(vw.fill,f).call(vw.stroke,r.bordercolor).style("stroke-width",u);var rr=vr?Math.max(Ae-10,0):0;e.selectAll("."+Ot.cboutline).attr("x",(a?ee:_e+d)+rr).attr("y",(a?_e+p-U:ee)+(Xe?Ne:0)).attr(a?"width":"height",Math.max(Y,2)).attr(a?"height":"width",Math.max(U-(a?2*p+Ne:2*d+rr),2)).call(vw.stroke,r.outlinecolor).style({fill:"none","stroke-width":s});var Ke=a?fe*Ge:0,ze=a?0:(1-ie)*Ge-Fe;if(Ke=w?b.l-Ke:-Ke,ze=x?b.t-ze:-ze,e.attr("transform",po(Ke,ze)),!a&&(u||fw(f).getAlpha()&&!fw.equals(_.paper_bgcolor,f))){var ne=ye.selectAll("text"),ve=ne[0].length,De=e.select("."+Ot.cbbg).node(),Re=ho.bBox(De),Qe=ho.getTranslate(e),fr=2;ne.each(function(da,$t){var oa=0,dr=ve-1;if($t===oa||$t===dr){var yt=ho.bBox(this),Zr=ho.getTranslate(this),$r;if($t===dr){var mt=yt.right+Zr.x,Lt=Re.right+Qe.x+_e-u-fr+y;$r=Lt-mt,$r>0&&($r=0)}else if($t===oa){var Gr=yt.left+Zr.x,Bt=Re.left+Qe.x+_e+u+fr;$r=Bt-Gr,$r<0&&($r=0)}$r&&(ve<3?this.setAttribute("transform","translate("+$r+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var sr={},kr=xU[c],Ir=_U[c],Yr=xU[v],et=_U[v],qt=Ge-Y;a?(i==="pixels"?(sr.y=m,sr.t=U*Yr,sr.b=U*et):(sr.t=sr.b=0,sr.yt=m+n*Yr,sr.yb=m-n*et),l==="pixels"?(sr.x=y,sr.l=Ge*kr,sr.r=Ge*Ir):(sr.l=qt*kr,sr.r=qt*Ir,sr.xl=y-o*kr,sr.xr=y+o*Ir)):(i==="pixels"?(sr.x=y,sr.l=U*kr,sr.r=U*Ir):(sr.l=sr.r=0,sr.xl=y+n*kr,sr.xr=y-n*Ir),l==="pixels"?(sr.y=1-m,sr.t=Ge*Yr,sr.b=Ge*et):(sr.t=qt*Yr,sr.b=qt*et,sr.yt=m-o*Yr,sr.yb=m+o*et));var ft=r.y<.5?"b":"t",Ft=r.x<.5?"l":"r";t._fullLayout._reservedMargin[r._id]={};var Tt={r:_.width-Ze-Ke,l:Ze+sr.r,b:_.height-or-ze,t:or+sr.b};w&&x?Jm.autoMargin(t,r._id,sr):w?t._fullLayout._reservedMargin[r._id][ft]=Tt[ft]:x||a?t._fullLayout._reservedMargin[r._id][Ft]=Tt[Ft]:t._fullLayout._reservedMargin[r._id][ft]=Tt[ft]}return Ci.syncOrAsync([Jm.previousPromises,Ue,Ce,Be,Jm.previousPromises,Oe],t)}function wxe(e,r,t){var a=r.orientation==="v",n=t._fullLayout,i=n._size,o,l,s;Xm.init({element:e.node(),gd:t,prepFn:function(){o=e.attr("transform"),cw(e)},moveFn:function(u,f){e.attr("transform",o+po(u,f)),l=Xm.align((a?r._uFrac:r._vFrac)+u/i.w,a?r._thickFrac:r._lenFrac,0,1,r.xanchor),s=Xm.align((a?r._vFrac:1-r._uFrac)-f/i.h,a?r._lenFrac:r._thickFrac,0,1,r.yanchor);var c=Xm.getCursor(l,s,r.xanchor,r.yanchor);cw(e,c)},doneFn:function(){if(cw(e),l!==void 0&&s!==void 0){var u={};u[r._propPrefix+"x"]=l,u[r._propPrefix+"y"]=s,r._traceIndex!==void 0?gU.call("_guiRestyle",t,u,r._traceIndex):gU.call("_guiRelayout",t,u)}}})}function Txe(e,r,t){var a=r._levels,n=[],i=[],o,l,s=a.end+a.size/100,u=a.size,f=1.001*t[0]-.001*t[1],c=1.001*t[1]-.001*t[0];for(l=0;l<1e5&&(o=a.start+l*u,!(u>0?o>=s:o<=s));l++)o>f&&o0?o>=s:o<=s));l++)o>t[0]&&o{"use strict";MU.exports={moduleType:"component",name:"colorbar",attributes:n1(),supplyDefaults:hx(),draw:AU().draw,hasColorbar:ox()}});var qU=N((jNe,SU)=>{"use strict";SU.exports={moduleType:"component",name:"legend",layoutAttributes:s5(),supplyLayoutDefaults:c5(),draw:T5(),style:b5()}});var CU=N((WNe,LU)=>{"use strict";LU.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var DU=N((ZNe,EU)=>{"use strict";EU.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var pw=N((XNe,NU)=>{"use strict";var Mxe=br(),FU=Le(),dw=FU.extendFlat,RU=FU.extendDeep;function PU(e){var r;switch(e){case"themes__thumb":r={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":r={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:r={}}return r}function kxe(e){var r=["xaxis","yaxis","zaxis"];return r.indexOf(e.slice(0,5))>-1}NU.exports=function(r,t){var a,n=r.data,i=r.layout,o=RU([],n),l=RU({},i,PU(t.tileClass)),s=r._context||{};if(t.width&&(l.width=t.width),t.height&&(l.height=t.height),t.tileClass==="thumbnail"||t.tileClass==="themes__thumb"){l.annotations=[];var u=Object.keys(l);for(a=0;a{"use strict";var Sxe=eu().EventEmitter,qxe=br(),Lxe=Le(),zU=ml(),Cxe=pw(),Exe=tm(),Dxe=am();function Rxe(e,r){var t=new Sxe,a=Cxe(e,{format:"png"}),n=a.gd;n.style.position="absolute",n.style.left="-5000px",document.body.appendChild(n);function i(){var l=zU.getDelay(n._fullLayout);setTimeout(function(){var s=Exe(n),u=document.createElement("canvas");u.id=Lxe.randstr(),t=Dxe({format:r.format,width:n._fullLayout.width,height:n._fullLayout.height,canvas:u,emitter:t,svg:s}),t.clean=function(){n&&document.body.removeChild(n)}},l)}var o=zU.getRedrawFunc(n);return qxe.call("_doPlot",n,a.data,a.layout,a.config).then(o).then(i).catch(function(l){t.emit("error",l)}),t}IU.exports=Rxe});var UU=N(($Ne,HU)=>{"use strict";var BU=ml(),Pxe={getDelay:BU.getDelay,getRedrawFunc:BU.getRedrawFunc,clone:pw(),toSVG:tm(),svgToImg:am(),toImage:OU(),downloadImage:H_()};HU.exports=Pxe});var VU=N(_l=>{"use strict";_l.version=sp().version;jA();FS();var Fxe=br(),M0=_l.register=Fxe.register,mw=iz(),GU=Object.keys(mw);for($m=0;$m{"use strict";YU.exports=VU()});var Qm=N((eze,WU)=>{"use strict";WU.exports={TEXTPAD:3,eventDataKeys:["value","label"]}});var zu=N((rze,KU)=>{"use strict";var Yt=wi(),ZU=eo().axisHoverFormat,{hovertemplateAttrs:Nxe,texttemplateAttrs:zxe,templatefallbackAttrs:XU}=Yn(),$U=ko(),Ixe=ma(),JU=Qm(),Oxe=ui().pattern,Nu=bt().extendFlat,gw=Ixe({editType:"calc",arrayOk:!0,colorEditType:"style"}),Bxe=Yt.marker,Hxe=Bxe.line,Uxe=Nu({},Hxe.width,{dflt:0}),Gxe=Nu({width:Uxe,editType:"calc"},$U("marker.line")),Vxe=Nu({line:Gxe,editType:"calc"},$U("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:Oxe,cornerradius:{valType:"any",editType:"calc"}});KU.exports={x:Yt.x,x0:Yt.x0,dx:Yt.dx,y:Yt.y,y0:Yt.y0,dy:Yt.dy,xperiod:Yt.xperiod,yperiod:Yt.yperiod,xperiod0:Yt.xperiod0,yperiod0:Yt.yperiod0,xperiodalignment:Yt.xperiodalignment,yperiodalignment:Yt.yperiodalignment,xhoverformat:ZU("x"),yhoverformat:ZU("y"),text:Yt.text,texttemplate:zxe({editType:"plot"},{keys:JU.eventDataKeys}),texttemplatefallback:XU({editType:"plot"}),hovertext:Yt.hovertext,hovertemplate:Nxe({},{keys:JU.eventDataKeys}),hovertemplatefallback:XU(),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:Nu({},gw,{}),insidetextfont:Nu({},gw,{}),outsidetextfont:Nu({},gw,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:Nu({},Yt.cliponaxis,{}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc"},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc"},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc"},marker:Vxe,offsetgroup:Yt.offsetgroup,alignmentgroup:Yt.alignmentgroup,selected:{marker:{opacity:Yt.selected.marker.opacity,color:Yt.selected.marker.color,editType:"style"},textfont:Yt.selected.textfont,editType:"style"},unselected:{marker:{opacity:Yt.unselected.marker.opacity,color:Yt.unselected.marker.color,editType:"style"},textfont:Yt.unselected.textfont,editType:"style"},zorder:Yt.zorder}});var eg=N((tze,QU)=>{"use strict";QU.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}});var bw=N((aze,tG)=>{"use strict";var Yxe=Tr(),eG=Wn().hasColorscale,rG=fl(),jxe=Le().coercePattern;tG.exports=function(r,t,a,n,i){var o=a("marker.color",n),l=eG(r,"marker");l&&rG(r,t,i,a,{prefix:"marker.",cLetter:"c"}),a("marker.line.color",Yxe.defaultLine),eG(r,"marker.line")&&rG(r,t,i,a,{prefix:"marker.line.",cLetter:"c"}),a("marker.line.width"),a("marker.opacity"),jxe(a,"marker.pattern",o,l),a("selected.marker.color"),a("unselected.marker.color")}});var Iu=N((nze,sG)=>{"use strict";var aG=Rr(),Oc=Le(),nG=Tr(),Wxe=br(),Zxe=V_(),Xxe=gc(),Jxe=bw(),$xe=o0(),iG=zu(),rg=Oc.coerceFont;function Kxe(e,r,t,a){function n(u,f){return Oc.coerce(e,r,iG,u,f)}var i=Zxe(e,r,a,n);if(!i){r.visible=!1;return}Xxe(e,r,a,n),n("xhoverformat"),n("yhoverformat"),n("zorder"),n("orientation",r.x&&!r.y?"h":"v"),n("base"),n("offset"),n("width"),n("text"),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback");var o=n("textposition");lG(e,r,a,n,o,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),Jxe(e,r,n,t,a);var l=(r.marker.line||{}).color,s=Wxe.getComponentMethod("errorbars","supplyDefaults");s(e,r,l||nG.defaultLine,{axis:"y"}),s(e,r,l||nG.defaultLine,{axis:"x",inherit:"y"}),Oc.coerceSelectionMarkerOpacity(r,n)}function Qxe(e,r){var t,a;function n(l,s){return Oc.coerce(a._input,a,iG,l,s)}for(var i=0;i=0)return e}else if(typeof e=="string"&&(e=e.trim(),e.slice(-1)==="%"&&aG(e.slice(0,-1))&&(e=+e.slice(0,-1),e>=0)))return e+"%"}function lG(e,r,t,a,n,i){i=i||{};var o=i.moduleHasSelected!==!1,l=i.moduleHasUnselected!==!1,s=i.moduleHasConstrain!==!1,u=i.moduleHasCliponaxis!==!1,f=i.moduleHasTextangle!==!1,c=i.moduleHasInsideanchor!==!1,v=!!i.hasPathbar,d=Array.isArray(n)||n==="auto",p=d||n==="inside",y=d||n==="outside";if(p||y){var m=rg(a,"textfont",t.font),x=Oc.extendFlat({},m),w=e.textfont&&e.textfont.color,_=!w;if(_&&delete x.color,rg(a,"insidetextfont",x),v){var b=Oc.extendFlat({},m);_&&delete b.color,rg(a,"pathbar.textfont",b)}y&&rg(a,"outsidetextfont",m),o&&a("selected.textfont.color"),l&&a("unselected.textfont.color"),s&&a("constraintext"),u&&a("cliponaxis"),f&&a("textangle"),a("texttemplate"),a("texttemplatefallback")}p&&c&&a("insidetextanchor")}sG.exports={supplyDefaults:Kxe,crossTraceDefaults:Qxe,handleText:lG,validateCornerradius:oG}});var xw=N((ize,uG)=>{"use strict";var e5e=br(),r5e=zr(),t5e=Le(),a5e=eg(),n5e=Iu().validateCornerradius;uG.exports=function(e,r,t){function a(y,m){return t5e.coerce(e,r,a5e,y,m)}for(var n=!1,i=!1,o=!1,l={},s=a("barmode"),u=s==="group",f=0;f0&&!l[v]&&(o=!0),l[v]=!0),c.visible&&c.type==="histogram"){var d=r5e.getFromId({_fullLayout:r},c[c.orientation==="v"?"xaxis":"yaxis"]);d.type!=="category"&&(i=!0)}}if(!n){delete r.barmode;return}s!=="overlay"&&a("barnorm"),a("bargap",i&&!o?0:.2),a("bargroupgap");var p=a("barcornerradius");r.barcornerradius=n5e(p)}});var tg=N((oze,fG)=>{"use strict";var Bc=Le();fG.exports=function(r,t){for(var a=0;a{"use strict";var cG=zr(),vG=xc(),hG=Wn().hasColorscale,dG=Vf(),i5e=tg(),o5e=cm();pG.exports=function(r,t){var a=cG.getFromId(r,t.xaxis||"x"),n=cG.getFromId(r,t.yaxis||"y"),i,o,l,s,u,f,c={msUTC:!!(t.base||t.base===0)};t.orientation==="h"?(i=a.makeCalcdata(t,"x",c),l=n.makeCalcdata(t,"y"),s=vG(t,n,"y",l),u=!!t.yperiodalignment,f="y"):(i=n.makeCalcdata(t,"y",c),l=a.makeCalcdata(t,"x"),s=vG(t,a,"x",l),u=!!t.xperiodalignment,f="x"),o=s.vals;for(var v=Math.min(o.length,i.length),d=new Array(v),p=0;p{"use strict";var l5e=Sr(),s5e=Le();function u5e(e,r,t){var a=e._fullLayout,n=a["_"+t+"Text_minsize"];if(n){var i=a.uniformtext.mode==="hide",o;switch(t){case"funnelarea":case"pie":case"sunburst":o="g.slice";break;case"treemap":case"icicle":o="g.slice, g.pathbar";break;default:o="g.points > g.point"}r.selectAll(o).each(function(l){var s=l.transform;if(s){s.scale=i&&s.hide?0:n/s.fontSize;var u=l5e.select(this).select("text");s5e.setTransormAndDisplay(u,s)}})}}function f5e(e,r,t){if(t.uniformtext.mode){var a=mG(e),n=t.uniformtext.minsize,i=r.scale*r.fontSize;r.hide=i{"use strict";var v5e=Rr(),h5e=kn(),bG=Le().isArrayOrTypedArray;Ou.coerceString=function(e,r,t){if(typeof r=="string"){if(r||!e.noBlank)return r}else if((typeof r=="number"||r===!0)&&!e.strict)return String(r);return t!==void 0?t:e.dflt};Ou.coerceNumber=function(e,r,t){if(v5e(r)){r=+r;var a=e.min,n=e.max,i=a!==void 0&&rn;if(!i)return r}return t!==void 0?t:e.dflt};Ou.coerceColor=function(e,r,t){return h5e(r).isValid()?r:t!==void 0?t:e.dflt};Ou.coerceEnumerated=function(e,r,t){return e.coerceNumber&&(r=+r),e.values.indexOf(r)!==-1?r:t!==void 0?t:e.dflt};Ou.getValue=function(e,r){var t;return bG(e)?r{"use strict";var S0=Sr(),d5e=Tr(),q0=jr(),xG=Le(),_G=br(),wG=k0().resizeText,_w=zu(),p5e=_w.textfont,y5e=_w.insidetextfont,m5e=_w.outsidetextfont,Ua=ag();function g5e(e){var r=S0.select(e).selectAll('g[class^="barlayer"]').selectAll("g.trace");wG(e,r,"bar");var t=r.size(),a=e._fullLayout;r.style("opacity",function(n){return n[0].trace.opacity}).each(function(n){(a.barmode==="stack"&&t>1||a.bargap===0&&a.bargroupgap===0&&!n[0].trace.marker.line.width)&&S0.select(this).attr("shape-rendering","crispEdges")}),r.selectAll("g.points").each(function(n){var i=S0.select(this),o=n[0].trace;TG(i,o,e)}),_G.getComponentMethod("errorbars","style")(r)}function TG(e,r,t){q0.pointStyle(e.selectAll("path"),r,t),AG(e,r,t)}function AG(e,r,t){e.selectAll("text").each(function(a){var n=S0.select(this),i=xG.ensureUniformFontSize(t,MG(n,a,r,t));q0.font(n,i)})}function b5e(e,r,t){var a=r[0].trace;a.selectedpoints?x5e(t,a,e):(TG(t,a,e),_G.getComponentMethod("errorbars","style")(t))}function x5e(e,r,t){q0.selectedPointStyle(e.selectAll("path"),r),_5e(e.selectAll("text"),r,t)}function _5e(e,r,t){e.each(function(a){var n=S0.select(this),i;if(a.selected){i=xG.ensureUniformFontSize(t,MG(n,a,r,t));var o=r.selected.textfont&&r.selected.textfont.color;o&&(i.color=o),q0.font(n,i)}else q0.selectedTextStyle(n,r)})}function MG(e,r,t,a){var n=a._fullLayout.font,i=t.textfont;if(e.classed("bartext-inside")){var o=LG(r,t);i=SG(t,r.i,n,o)}else e.classed("bartext-outside")&&(i=qG(t,r.i,n));return i}function kG(e,r,t){return ww(p5e,e.textfont,r,t)}function SG(e,r,t,a){var n=kG(e,r,t),i=e._input.textfont===void 0||e._input.textfont.color===void 0||Array.isArray(e.textfont.color)&&e.textfont.color[r]===void 0;return i&&(n={color:d5e.contrast(a),family:n.family,size:n.size,weight:n.weight,style:n.style,variant:n.variant,textcase:n.textcase,lineposition:n.lineposition,shadow:n.shadow}),ww(y5e,e.insidetextfont,r,n)}function qG(e,r,t){var a=kG(e,r,t);return ww(m5e,e.outsidetextfont,r,a)}function ww(e,r,t,a){r=r||{};var n=Ua.getValue(r.family,t),i=Ua.getValue(r.size,t),o=Ua.getValue(r.color,t),l=Ua.getValue(r.weight,t),s=Ua.getValue(r.style,t),u=Ua.getValue(r.variant,t),f=Ua.getValue(r.textcase,t),c=Ua.getValue(r.lineposition,t),v=Ua.getValue(r.shadow,t);return{family:Ua.coerceString(e.family,n,a.family),size:Ua.coerceNumber(e.size,i,a.size),color:Ua.coerceColor(e.color,o,a.color),weight:Ua.coerceString(e.weight,l,a.weight),style:Ua.coerceString(e.style,s,a.style),variant:Ua.coerceString(e.variant,u,a.variant),textcase:Ua.coerceString(e.variant,f,a.textcase),lineposition:Ua.coerceString(e.variant,c,a.lineposition),shadow:Ua.coerceString(e.variant,v,a.shadow)}}function LG(e,r){return r.type==="waterfall"?r[e.dir].marker.color:e.mcc||e.mc||r.marker.color}CG.exports={style:g5e,styleTextPoints:AG,styleOnSelect:b5e,getInsideTextFont:SG,getOutsideTextFont:qG,getBarColor:LG,resizeText:wG}});var Mw=N((cze,IG)=>{"use strict";var ng=Sr(),ig=Rr(),Ra=Le(),w5e=Ea(),T5e=Tr(),ys=jr(),A5e=br(),og=zr().tickText,EG=k0(),M5e=EG.recordMinTextSize,k5e=EG.clearMinTextSize,Tw=Hc(),Uc=ag(),S5e=Qm(),DG=zu(),q5e=DG.text,L5e=DG.textposition,C5e=qo().appendArrayPointValue,cn=S5e.TEXTPAD;function E5e(e){return e.id}function D5e(e){if(e.ids)return E5e}function Aw(e){return(e>0)-(e<0)}function Ho(e,r){return e0}function P5e(e,r,t,a,n,i){var o=r.xaxis,l=r.yaxis,s=e._fullLayout,u=e._context.staticPlot;n||(n={mode:s.barmode,norm:s.barmode,gap:s.bargap,groupgap:s.bargroupgap},k5e("bar",s));var f=Ra.makeTraceGroups(a,t,"trace bars").each(function(c){var v=ng.select(this),d=c[0].trace,p=c[0].t,y=d.type==="waterfall",m=d.type==="funnel",x=d.type==="histogram",w=d.type==="bar",_=w||m,b=0;y&&d.connector.visible&&d.connector.mode==="between"&&(b=d.connector.line.width/2);var T=d.orientation==="h",k=PG(n),M=Ra.ensureSingle(v,"g","points"),q=D5e(d),E=M.selectAll("g.point").data(Ra.identity,q);E.enter().append("g").classed("point",!0),E.exit().remove(),E.each(function(P,R){var z=ng.select(this),O=R5e(P,o,l,T),B=O[0][0],Y=O[0][1],G=O[1][0],U=O[1][1],V=(T?Y-B:U-G)===0;V&&_&&Uc.getLineWidth(d,P)&&(V=!1),V||(V=!ig(B)||!ig(Y)||!ig(G)||!ig(U)),P.isBlank=V,V&&(T?Y=B:U=G),b&&!V&&(T?(B-=Ho(B,Y)*b,Y+=Ho(B,Y)*b):(G-=Ho(G,U)*b,U+=Ho(G,U)*b));var J,Z;if(d.type==="waterfall"){if(!V){var ee=d[P.dir].marker;J=ee.line.width,Z=ee.color}}else J=Uc.getLineWidth(d,P),Z=P.mc||d.marker.color;function fe(se){var Ae=ng.round(J/2%1,2);return n.gap===0&&n.groupgap===0?ng.round(Math.round(se)-Ae,2):se}function ie(se,Ae,Xe){return Xe&&se===Ae?se:Math.abs(se-Ae)>=2?fe(se):se>Ae?Math.ceil(se):Math.floor(se)}var ue=T5e.opacity(Z),K=ue<1||J>.01?fe:ie;e._context.staticPlot||(B=K(B,Y,T),Y=K(Y,B,T),G=K(G,U,!T),U=K(U,G,!T));var _e=T?o.c2p:l.c2p,le;P.s0>0?le=P._sMax:P.s0<0?le=P._sMin:le=P.s1>0?P._sMax:P._sMin;function he(se,Ae){if(!se)return 0;var Xe=Math.abs(T?U-G:Y-B),vr=Math.abs(T?Y-B:U-G),Fe=K(Math.abs(_e(le,!0)-_e(0,!0))),Te=P.hasB?Math.min(Xe/2,vr/2):Math.min(Xe/2,Fe),qe;if(Ae==="%"){var Ge=Math.min(50,se);qe=Xe*(Ge/100)}else qe=se;return K(Math.max(Math.min(qe,Te),0))}var oe=w||x?he(p.cornerradiusvalue,p.cornerradiusform):0,ce,j,Q="M"+B+","+G+"V"+U+"H"+Y+"V"+G+"Z",W=0;if(oe&&P.s){var pe=Aw(P.s0)===0||Aw(P.s)===Aw(P.s0)?P.s1:P.s0;if(W=K(P.hasB?0:Math.abs(_e(le,!0)-_e(pe,!0))),W0?Math.sqrt(W*(2*oe-W)):0,Ie=me>0?Math.max:Math.min;ce="M"+B+","+G+"V"+(U-Ne*ye)+"H"+Ie(Y-(oe-W)*me,B)+"A "+oe+","+oe+" 0 0 "+Pe+" "+Y+","+(U-oe*ye-Ee)+"V"+(G+oe*ye+Ee)+"A "+oe+","+oe+" 0 0 "+Pe+" "+Ie(Y-(oe-W)*me,B)+","+(G+Ne*ye)+"Z"}else if(P.hasB)ce="M"+(B+oe*me)+","+G+"A "+oe+","+oe+" 0 0 "+Pe+" "+B+","+(G+oe*ye)+"V"+(U-oe*ye)+"A "+oe+","+oe+" 0 0 "+Pe+" "+(B+oe*me)+","+U+"H"+(Y-oe*me)+"A "+oe+","+oe+" 0 0 "+Pe+" "+Y+","+(U-oe*ye)+"V"+(G+oe*ye)+"A "+oe+","+oe+" 0 0 "+Pe+" "+(Y-oe*me)+","+G+"Z";else{j=Math.abs(U-G)+W;var Ue=j0?Math.sqrt(W*(2*oe-W)):0,Ce=ye>0?Math.max:Math.min;ce="M"+(B+Ue*me)+","+G+"V"+Ce(U-(oe-W)*ye,G)+"A "+oe+","+oe+" 0 0 "+Pe+" "+(B+oe*me-Be)+","+U+"H"+(Y-oe*me+Be)+"A "+oe+","+oe+" 0 0 "+Pe+" "+(Y-Ue*me)+","+Ce(U-(oe-W)*ye,G)+"V"+G+"Z"}}else ce=Q}else ce=Q;var Oe=RG(Ra.ensureSingle(z,"path"),s,n,i);if(Oe.style("vector-effect",u?"none":"non-scaling-stroke").attr("d",isNaN((Y-B)*(U-G))||V&&e._context.staticPlot?"M0,0Z":ce).call(ys.setClipUrl,r.layerClipId,e),!s.uniformtext.mode&&k){var He=ys.makePointStyleFns(d);ys.singlePointStyle(P,Oe,d,He,e)}F5e(e,r,z,c,R,B,Y,G,U,oe,W,n,i),r.layerClipId&&ys.hideOutsideRangePoint(P,z.select("text"),o,l,d.xcalendar,d.ycalendar)});var D=d.cliponaxis===!1;ys.setClipUrl(v,D?null:r.layerClipId,e)});A5e.getComponentMethod("errorbars","plot")(e,f,r,n)}function F5e(e,r,t,a,n,i,o,l,s,u,f,c,v){var d=r.xaxis,p=r.yaxis,y=e._fullLayout,m;function x(j,Q,W){var pe=Ra.ensureSingle(j,"text").text(Q).attr({class:"bartext bartext-"+m,"text-anchor":"middle","data-notex":1}).call(ys.font,W).call(w5e.convertToTspans,e);return pe}var w=a[0].trace,_=w.orientation==="h",b=I5e(y,a,n,d,p);m=O5e(w,n);var T=c.mode==="stack"||c.mode==="relative",k=a[n],M=!T||k._outmost,q=k.hasB,E=u&&u-f>cn;if(!b||m==="none"||(k.isBlank||i===o||l===s)&&(m==="auto"||m==="inside")){t.select("text").remove();return}var D=y.font,P=Tw.getBarColor(a[n],w),R=Tw.getInsideTextFont(w,n,D,P),z=Tw.getOutsideTextFont(w,n,D),O=w.insidetextanchor||"end",B=t.datum();_?d.type==="log"&&B.s0<=0&&(d.range[0]0&&fe>0,K;E?q?K=Bu(U-2*u,V,ee,fe,_)||Bu(U,V-2*u,ee,fe,_):_?K=Bu(U-(u-f),V,ee,fe,_)||Bu(U,V-2*(u-f),ee,fe,_):K=Bu(U,V-(u-f),ee,fe,_)||Bu(U-2*(u-f),V,ee,fe,_):K=Bu(U,V,ee,fe,_),ue&&K?m="inside":(m="outside",J.remove(),J=null)}else m="inside";if(!J){ie=Ra.ensureUniformFontSize(e,m==="outside"?z:R),J=x(t,b,ie);var _e=J.attr("transform");if(J.attr("transform",""),Z=ys.bBox(J.node()),ee=Z.width,fe=Z.height,J.attr("transform",_e),ee<=0||fe<=0){J.remove();return}}var le=w.textangle,he,oe;m==="outside"?(oe=w.constraintext==="both"||w.constraintext==="outside",he=z5e(i,o,l,s,Z,{isHorizontal:_,constrained:oe,angle:le})):(oe=w.constraintext==="both"||w.constraintext==="inside",he=zG(i,o,l,s,Z,{isHorizontal:_,constrained:oe,angle:le,anchor:O,hasB:q,r:u,overhead:f})),he.fontSize=ie.size,M5e(w.type==="histogram"?"bar":w.type,he,y),k.transform=he;var ce=RG(J,y,c,v);Ra.setTransormAndDisplay(ce,he)}function Bu(e,r,t,a,n){if(e<0||r<0)return!1;var i=t<=e&&a<=r,o=t<=r&&a<=e,l=n?e>=t*(r/a):r>=a*(e/t);return i||o||l}function FG(e){return e==="auto"?0:e}function NG(e,r){var t=Math.PI/180*r,a=Math.abs(Math.sin(t)),n=Math.abs(Math.cos(t));return{x:e.width*n+e.height*a,y:e.width*a+e.height*n}}function zG(e,r,t,a,n,i){var o=!!i.isHorizontal,l=!!i.constrained,s=i.angle||0,u=i.anchor,f=u==="end",c=u==="start",v=i.leftToRight||0,d=(v+1)/2,p=1-d,y=i.hasB,m=i.r,x=i.overhead,w=n.width,_=n.height,b=Math.abs(r-e),T=Math.abs(a-t),k=b>2*cn&&T>2*cn?cn:0;b-=2*k,T-=2*k;var M=FG(s);s==="auto"&&!(w<=b&&_<=T)&&(w>b||_>T)&&(!(w>T||_>b)||w<_!=bcn){var P=N5e(e,r,t,a,q,m,x,o,y);E=P.scale,D=P.pad}else E=1,l&&(E=Math.min(1,b/q.x,T/q.y)),D=0;var R=n.left*p+n.right*d,z=(n.top+n.bottom)/2,O=(e+cn)*p+(r-cn)*d,B=(t+a)/2,Y=0,G=0;if(c||f){var U=(o?q.x:q.y)/2;m&&(f||y)&&(k+=D);var V=o?Ho(e,r):Ho(t,a);o?c?(O=e+V*k,Y=-V*U):(O=r-V*k,Y=V*U):c?(B=t+V*k,G=-V*U):(B=a-V*k,G=V*U)}return{textX:R,textY:z,targetX:O,targetY:B,anchorX:Y,anchorY:G,scale:E,rotate:M}}function N5e(e,r,t,a,n,i,o,l,s){var u=Math.max(0,Math.abs(r-e)-2*cn),f=Math.max(0,Math.abs(a-t)-2*cn),c=i-cn,v=o?c-Math.sqrt(c*c-(c-o)*(c-o)):c,d=s?c*2:l?c-o:2*v,p=s?c*2:l?2*v:c-o,y,m,x,w,_;return n.y/n.x>=f/(u-d)?w=f/n.y:n.y/n.x<=(f-p)/u?w=u/n.x:!s&&l?(y=n.x*n.x+n.y*n.y/4,m=-2*n.x*(u-c)-n.y*(f/2-c),x=(u-c)*(u-c)+(f/2-c)*(f/2-c)-c*c,w=(-m+Math.sqrt(m*m-4*y*x))/(2*y)):s?(y=(n.x*n.x+n.y*n.y)/4,m=-n.x*(u/2-c)-n.y*(f/2-c),x=(u/2-c)*(u/2-c)+(f/2-c)*(f/2-c)-c*c,w=(-m+Math.sqrt(m*m-4*y*x))/(2*y)):(y=n.x*n.x/4+n.y*n.y,m=-n.x*(u/2-c)-2*n.y*(f-c),x=(u/2-c)*(u/2-c)+(f-c)*(f-c)-c*c,w=(-m+Math.sqrt(m*m-4*y*x))/(2*y)),w=Math.min(1,w),l?_=Math.max(0,c-Math.sqrt(Math.max(0,c*c-(c-(f-n.y*w)/2)*(c-(f-n.y*w)/2)))-o):_=Math.max(0,c-Math.sqrt(Math.max(0,c*c-(c-(u-n.x*w)/2)*(c-(u-n.x*w)/2)))-o),{scale:w,pad:_}}function z5e(e,r,t,a,n,i){var o=!!i.isHorizontal,l=!!i.constrained,s=i.angle||0,u=n.width,f=n.height,c=Math.abs(r-e),v=Math.abs(a-t),d;o?d=v>2*cn?cn:0:d=c>2*cn?cn:0;var p=1;l&&(p=o?Math.min(1,v/f):Math.min(1,c/u));var y=FG(s),m=NG(n,y),x=(o?m.x:m.y)/2,w=(n.left+n.right)/2,_=(n.top+n.bottom)/2,b=(e+r)/2,T=(t+a)/2,k=0,M=0,q=o?Ho(r,e):Ho(t,a);return o?(b=r-q*d,k=q*x):(T=a+q*d,M=-q*x),{textX:w,textY:_,targetX:b,targetY:T,anchorX:k,anchorY:M,scale:p,rotate:y}}function I5e(e,r,t,a,n){var i=r[0].trace,o=i.texttemplate,l;return o?l=B5e(e,r,t,a,n):i.textinfo?l=H5e(r,t,a,n):l=Uc.getValue(i.text,t),Uc.coerceString(q5e,l)}function O5e(e,r){var t=Uc.getValue(e.textposition,r);return Uc.coerceEnumerated(L5e,t)}function B5e(e,r,t,a,n){var i=r[0].trace,o=Ra.castOption(i,t,"texttemplate");if(!o)return"";var l=i.type==="histogram",s=i.type==="waterfall",u=i.type==="funnel",f=i.orientation==="h",c,v,d,p;f?(c="y",v=n,d="x",p=a):(c="x",v=a,d="y",p=n);function y(k){return og(v,v.c2l(k),!0).text}function m(k){return og(p,p.c2l(k),!0).text}var x=r[t],w={};w.label=x.p,w.labelLabel=w[c+"Label"]=y(x.p);var _=Ra.castOption(i,x.i,"text");(_===0||_)&&(w.text=_),w.value=x.s,w.valueLabel=w[d+"Label"]=m(x.s);var b={};C5e(b,i,x.i),(l||b.x===void 0)&&(b.x=f?w.value:w.label),(l||b.y===void 0)&&(b.y=f?w.label:w.value),(l||b.xLabel===void 0)&&(b.xLabel=f?w.valueLabel:w.labelLabel),(l||b.yLabel===void 0)&&(b.yLabel=f?w.labelLabel:w.valueLabel),s&&(w.delta=+x.rawS||x.s,w.deltaLabel=m(w.delta),w.final=x.v,w.finalLabel=m(w.final),w.initial=w.final-w.delta,w.initialLabel=m(w.initial)),u&&(w.value=x.s,w.valueLabel=m(w.value),w.percentInitial=x.begR,w.percentInitialLabel=Ra.formatPercent(x.begR),w.percentPrevious=x.difR,w.percentPreviousLabel=Ra.formatPercent(x.difR),w.percentTotal=x.sumR,w.percenTotalLabel=Ra.formatPercent(x.sumR));var T=Ra.castOption(i,x.i,"customdata");return T&&(w.customdata=T),Ra.texttemplateString({data:[b,w,i._meta],fallback:i.texttemplatefallback,labels:w,locale:e._d3locale,template:o})}function H5e(e,r,t,a){var n=e[0].trace,i=n.orientation==="h",o=n.type==="waterfall",l=n.type==="funnel";function s(T){var k=i?a:t;return og(k,T,!0).text}function u(T){var k=i?t:a;return og(k,+T,!0).text}var f=n.textinfo,c=e[r],v=f.split("+"),d=[],p,y=function(T){return v.indexOf(T)!==-1};if(y("label")&&d.push(s(e[r].p)),y("text")&&(p=Ra.castOption(n,c.i,"text"),(p===0||p)&&d.push(p)),o){var m=+c.rawS||c.s,x=c.v,w=x-m;y("initial")&&d.push(u(w)),y("delta")&&d.push(u(m)),y("final")&&d.push(u(x))}if(l){y("value")&&d.push(u(c.s));var _=0;y("percent initial")&&_++,y("percent previous")&&_++,y("percent total")&&_++;var b=_>1;y("percent initial")&&(p=Ra.formatPercent(c.begR),b&&(p+=" of initial"),d.push(p)),y("percent previous")&&(p=Ra.formatPercent(c.difR),b&&(p+=" of previous"),d.push(p)),y("percent total")&&(p=Ra.formatPercent(c.sumR),b&&(p+=" of total"),d.push(p))}return d.join("
")}IG.exports={plot:P5e,toMoveInsideBar:zG}});var Sw=N((vze,UG)=>{"use strict";var L0=Pn(),U5e=br(),OG=Tr(),G5e=Le().fillText,V5e=ag().getLineWidth,kw=zr().hoverLabelText,Y5e=It().BADNUM;function j5e(e,r,t,a,n){var i=BG(e,r,t,a,n);if(i){var o=i.cd,l=o[0].trace,s=o[i.index];return i.color=HG(l,s),U5e.getComponentMethod("errorbars","hoverInfo")(s,l,i),[i]}}function BG(e,r,t,a,n){var i=e.cd,o=i[0].trace,l=i[0].t,s=a==="closest",u=o.type==="waterfall",f=e.maxHoverDistance,c=e.maxSpikeDistance,v,d,p,y,m,x,w;o.orientation==="h"?(v=t,d=r,p="y",y="x",m=B,x=R):(v=r,d=t,p="x",y="y",x=B,m=R);var _=o[p+"period"],b=s||_;function T(K){return M(K,-1)}function k(K){return M(K,1)}function M(K,_e){var le=K.w;return K[p]+_e*le/2}function q(K){return K[p+"End"]-K[p+"Start"]}var E=s?T:_?function(K){return K.p-q(K)/2}:function(K){return Math.min(T(K),K.p-l.bardelta/2)},D=s?k:_?function(K){return K.p+q(K)/2}:function(K){return Math.max(k(K),K.p+l.bardelta/2)};function P(K,_e,le){return n.finiteRange&&(le=0),L0.inbox(K-v,_e-v,le+Math.min(1,Math.abs(_e-K)/w)-1)}function R(K){return P(E(K),D(K),f)}function z(K){return P(T(K),k(K),c)}function O(K){var _e=K[y];if(u){var le=Math.abs(K.rawS)||0;d>0?_e+=le:d<0&&(_e-=le)}return _e}function B(K){var _e=d,le=K.b,he=O(K);return L0.inbox(le-_e,he-_e,f+(he-_e)/(he-le)-1)}function Y(K){var _e=d,le=K.b,he=O(K);return L0.inbox(le-_e,he-_e,c+(he-_e)/(he-le)-1)}var G=e[p+"a"],U=e[y+"a"];w=Math.abs(G.r2c(G.range[1])-G.r2c(G.range[0]));function V(K){return(m(K)+x(K))/2}var J=L0.getDistanceFunction(a,m,x,V);if(L0.getClosest(i,J,e),e.index!==!1&&i[e.index].p!==Y5e){b||(E=function(K){return Math.min(T(K),K.p-l.bargroupwidth/2)},D=function(K){return Math.max(k(K),K.p+l.bargroupwidth/2)});var Z=e.index,ee=i[Z],fe=o.base?ee.b+ee.s:ee.s;e[y+"0"]=e[y+"1"]=U.c2p(ee[y],!0),e[y+"LabelVal"]=fe;var ie=l.extents[l.extents.round(ee.p)];e[p+"0"]=G.c2p(s?E(ee):ie[0],!0),e[p+"1"]=G.c2p(s?D(ee):ie[1],!0);var ue=ee.orig_p!==void 0;return e[p+"LabelVal"]=ue?ee.orig_p:ee.p,e.labelLabel=kw(G,e[p+"LabelVal"],o[p+"hoverformat"]),e.valueLabel=kw(U,e[y+"LabelVal"],o[y+"hoverformat"]),e.baseLabel=kw(U,ee.b,o[y+"hoverformat"]),e.spikeDistance=(Y(ee)+z(ee))/2,e[p+"Spike"]=G.c2p(ee.p,!0),G5e(ee,o,e),e.hovertemplate=o.hovertemplate,e}}function HG(e,r){var t=r.mcc||e.marker.color,a=r.mlcc||e.marker.line.color,n=V5e(e,r);if(OG.opacity(t))return t;if(OG.opacity(a)&&n)return a}UG.exports={hoverPoints:j5e,hoverOnBars:BG,getTraceColor:HG}});var VG=N((hze,GG)=>{"use strict";GG.exports=function(r,t,a){return r.x="xVal"in t?t.xVal:t.x,r.y="yVal"in t?t.yVal:t.y,t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),a.orientation==="h"?(r.label=r.y,r.value=r.x):(r.label=r.x,r.value=r.y),r}});var qw=N((dze,YG)=>{"use strict";YG.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,o=a[0].trace,l=o.type==="funnel",s=o.orientation==="h",u=[],f;if(t===!1)for(f=0;f{"use strict";jG.exports={attributes:zu(),layoutAttributes:eg(),supplyDefaults:Iu().supplyDefaults,crossTraceDefaults:Iu().crossTraceDefaults,supplyLayoutDefaults:xw(),calc:yG(),crossTraceCalc:pm().crossTraceCalc,colorbar:c0(),arraysToCalcdata:tg(),plot:Mw().plot,style:Hc().style,styleOnSelect:Hc().styleOnSelect,hoverPoints:Sw().hoverPoints,eventData:VG(),selectPoints:qw(),moduleType:"trace",name:"bar",basePlotModule:Li(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}});var XG=N((yze,ZG)=>{"use strict";ZG.exports=WG()});var lg=N((mze,QG)=>{"use strict";var Z5e=Fy(),Ei=wi(),JG=zu(),X5e=si(),$G=eo().axisHoverFormat,{hovertemplateAttrs:J5e,templatefallbackAttrs:$5e}=Yn(),wl=bt().extendFlat,Gc=Ei.marker,KG=Gc.line;QG.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:Ei.xperiod,yperiod:Ei.yperiod,xperiod0:Ei.xperiod0,yperiod0:Ei.yperiod0,xperiodalignment:Ei.xperiodalignment,yperiodalignment:Ei.yperiodalignment,xhoverformat:$G("x"),yhoverformat:$G("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:wl({},Gc.symbol,{arrayOk:!1,editType:"plot"}),opacity:wl({},Gc.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:wl({},Gc.angle,{arrayOk:!1,editType:"calc"}),size:wl({},Gc.size,{arrayOk:!1,editType:"calc"}),color:wl({},Gc.color,{arrayOk:!1,editType:"style"}),line:{color:wl({},KG.color,{arrayOk:!1,dflt:X5e.defaultLine,editType:"style"}),width:wl({},KG.width,{arrayOk:!1,dflt:0,editType:"style"}),outliercolor:{valType:"color",editType:"style"},outlierwidth:{valType:"number",min:0,dflt:1,editType:"style"},editType:"style"},editType:"plot"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:Z5e(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},showwhiskers:{valType:"boolean",editType:"calc"},offsetgroup:JG.offsetgroup,alignmentgroup:JG.alignmentgroup,selected:{marker:Ei.selected.marker,editType:"style"},unselected:{marker:Ei.unselected.marker,editType:"style"},text:wl({},Ei.text,{}),hovertext:wl({},Ei.hovertext,{}),hovertemplate:J5e({}),hovertemplatefallback:$5e(),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"},zorder:Ei.zorder}});var sg=N((gze,eV)=>{"use strict";eV.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"}}});var E0=N((bze,nV)=>{"use strict";var Di=Le(),K5e=br(),Q5e=Tr(),e_e=gc(),r_e=o0(),rV=k1(),C0=lg();function t_e(e,r,t,a){function n(p,y){return Di.coerce(e,r,C0,p,y)}if(tV(e,r,n,a),r.visible!==!1){e_e(e,r,a,n),n("xhoverformat"),n("yhoverformat");var i=r._hasPreCompStats;i&&(n("lowerfence"),n("upperfence")),n("line.color",(e.marker||{}).color||t),n("line.width"),n("fillcolor",Q5e.addOpacity(r.line.color,.5));var o=!1;if(i){var l=n("mean"),s=n("sd");l&&l.length&&(o=!0,s&&s.length&&(o="sd"))}n("whiskerwidth");var u=n("sizemode"),f;u==="quartiles"&&(f=n("boxmean",o)),n("showwhiskers",u==="quartiles"),(u==="sd"||f==="sd")&&n("sdmultiple"),n("width"),n("quartilemethod");var c=!1;if(i){var v=n("notchspan");v&&v.length&&(c=!0)}else Di.validate(e.notchwidth,C0.notchwidth)&&(c=!0);var d=n("notched",c);d&&n("notchwidth"),aV(e,r,n,{prefix:"box"}),n("zorder")}}function tV(e,r,t,a){function n(D){var P=0;return D&&D.length&&(P+=1,Di.isArrayOrTypedArray(D[0])&&D[0].length&&(P+=1)),P}function i(D){return Di.validate(e[D],C0[D])}var o=t("y"),l=t("x"),s;if(r.type==="box"){var u=t("q1"),f=t("median"),c=t("q3");r._hasPreCompStats=u&&u.length&&f&&f.length&&c&&c.length,s=Math.min(Di.minRowLength(u),Di.minRowLength(f),Di.minRowLength(c))}var v=n(o),d=n(l),p=v&&Di.minRowLength(o),y=d&&Di.minRowLength(l),m=a.calendar,x={autotypenumbers:a.autotypenumbers},w,_;if(r._hasPreCompStats)switch(String(d)+String(v)){case"00":var b=i("x0")||i("dx"),T=i("y0")||i("dy");T&&!b?w="h":w="v",_=s;break;case"10":w="v",_=Math.min(s,y);break;case"20":w="h",_=Math.min(s,l.length);break;case"01":w="h",_=Math.min(s,p);break;case"02":w="v",_=Math.min(s,o.length);break;case"12":w="v",_=Math.min(s,y,o.length);break;case"21":w="h",_=Math.min(s,l.length,p);break;case"11":_=0;break;case"22":var k=!1,M;for(M=0;M0?(w="v",d>0?_=Math.min(y,p):_=Math.min(p)):d>0?(w="h",_=Math.min(y)):_=0;if(!_){r.visible=!1;return}r._length=_;var q=t("orientation",w);r._hasPreCompStats?q==="v"&&d===0?(t("x0",0),t("dx",1)):q==="h"&&v===0&&(t("y0",0),t("dy",1)):q==="v"&&d===0?t("x0"):q==="h"&&v===0&&t("y0");var E=K5e.getComponentMethod("calendars","handleTraceDefaults");E(e,r,["x","y"],a)}function aV(e,r,t,a){var n=a.prefix,i=Di.coerce2(e,r,C0,"marker.outliercolor"),o=t("marker.line.outliercolor"),l="outliers";r._hasPreCompStats?l="all":(i||o)&&(l="suspectedoutliers");var s=t(n+"points",l);s?(t("jitter",s==="all"?.3:0),t("pointpos",s==="all"?-1.5:0),t("marker.symbol"),t("marker.opacity"),t("marker.size"),t("marker.angle"),t("marker.color",r.line.color),t("marker.line.color"),t("marker.line.width"),s==="suspectedoutliers"&&(t("marker.line.outliercolor",r.marker.color),t("marker.line.outlierwidth")),t("selected.marker.color"),t("unselected.marker.color"),t("selected.marker.size"),t("unselected.marker.size"),t("text"),t("hovertext")):delete r.marker;var u=t("hoveron");(u==="all"||u.indexOf("points")!==-1)&&(t("hovertemplate"),t("hovertemplatefallback")),Di.coerceSelectionMarkerOpacity(r,t)}function a_e(e,r){var t,a;function n(s){return Di.coerce(a._input,a,C0,s)}for(var i=0;i{"use strict";var n_e=br(),i_e=Le(),o_e=sg();function iV(e,r,t,a,n){for(var i=n+"Layout",o=!1,l=0;l{"use strict";var Ew=Rr(),ug=zr(),s_e=xc(),na=Le(),ti=It().BADNUM,Tl=na._;pV.exports=function(r,t){var a=r._fullLayout,n=ug.getFromId(r,t.xaxis||"x"),i=ug.getFromId(r,t.yaxis||"y"),o=[],l=t.type==="violin"?"_numViolins":"_numBoxes",s,u,f,c,v,d,p;t.orientation==="h"?(f=n,c="x",v=i,d="y",p=!!t.yperiodalignment):(f=i,c="y",v=n,d="x",p=!!t.xperiodalignment);var y=u_e(t,d,v,a[l]),m=y[0],x=y[1],w=na.distinctVals(m,v),_=w.vals,b=w.minDiff/2,T,k,M,q,E,D,P=(t.boxpoints||t.points)==="all"?na.identity:function(Pe){return Pe.vT.uf};if(t._hasPreCompStats){var R=t[c],z=function(Pe){return f.d2c((t[Pe]||[])[s])},O=1/0,B=-1/0;for(s=0;s=T.q1&&T.q3>=T.med){var G=z("lowerfence");T.lf=G!==ti&&G<=T.q1?G:fV(T,M,q);var U=z("upperfence");T.uf=U!==ti&&U>=T.q3?U:cV(T,M,q);var V=z("mean");T.mean=V!==ti?V:q?na.mean(M,q):(T.q1+T.q3)/2;var J=z("sd");T.sd=V!==ti&&J>=0?J:q?na.stdev(M,q,T.mean):T.q3-T.q1,T.lo=vV(T),T.uo=hV(T);var Z=z("notchspan");Z=Z!==ti&&Z>0?Z:dV(T,q),T.ln=T.med-Z,T.un=T.med+Z;var ee=T.lf,fe=T.uf;t.boxpoints&&M.length&&(ee=Math.min(ee,M[0]),fe=Math.max(fe,M[q-1])),t.notched&&(ee=Math.min(ee,T.ln),fe=Math.max(fe,T.un)),T.min=ee,T.max=fe}else{na.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+T.q1,"median = "+T.med,"q3 = "+T.q3].join(` -`));var ie;T.med!==ti?ie=T.med:T.q1!==ti?T.q3!==ti?ie=(T.q1+T.q3)/2:ie=T.q1:T.q3!==ti?ie=T.q3:ie=0,T.med=ie,T.q1=T.q3=ie,T.lf=T.uf=ie,T.mean=T.sd=ie,T.ln=T.un=ie,T.min=T.max=ie}O=Math.min(O,T.min),B=Math.max(B,T.max),T.pts2=k.filter(P),o.push(T)}}t._extremes[f._id]=ug.findExtremes(f,[O,B],{padded:!0})}else{var ue=f.makeCalcdata(t,c),K=f_e(_,b),_e=_.length,le=c_e(_e);for(s=0;s=0&&he<_e&&(E={v:D,i:s},lV(E,t,s),le[he].push(E))}var oe=1/0,ce=-1/0,j=t.quartilemethod,Q=j==="exclusive",W=j==="inclusive";for(s=0;s<_e;s++)if(le[s].length>0){if(T={},T.pos=T[d]=_[s],k=T.pts=le[s].sort(sV),M=T[c]=k.map(uV),q=M.length,T.min=M[0],T.max=M[q-1],T.mean=na.mean(M,q),T.sd=na.stdev(M,q,T.mean)*t.sdmultiple,T.med=na.interp(M,.5),q%2&&(Q||W)){var pe,me;Q?(pe=M.slice(0,q/2),me=M.slice(q/2+1)):W&&(pe=M.slice(0,q/2+1),me=M.slice(q/2)),T.q1=na.interp(pe,.5),T.q3=na.interp(me,.5)}else T.q1=na.interp(M,.25),T.q3=na.interp(M,.75);T.lf=fV(T,M,q),T.uf=cV(T,M,q),T.lo=vV(T),T.uo=hV(T);var ye=dV(T,q);T.ln=T.med-ye,T.un=T.med+ye,oe=Math.min(oe,T.ln),ce=Math.max(ce,T.un),T.pts2=k.filter(P),o.push(T)}t.notched&&na.isTypedArray(ue)&&(ue=Array.from(ue)),t._extremes[f._id]=ug.findExtremes(f,t.notched?ue.concat([oe,ce]):ue,{padded:!0})}return v_e(o,t),o.length>0?(o[0].t={num:a[l],dPos:b,posLetter:d,valLetter:c,labels:{med:Tl(r,"median:"),min:Tl(r,"min:"),q1:Tl(r,"q1:"),q3:Tl(r,"q3:"),max:Tl(r,"max:"),mean:t.boxmean==="sd"||t.sizemode==="sd"?Tl(r,"mean \xB1 \u03C3:").replace("\u03C3",t.sdmultiple===1?"\u03C3":t.sdmultiple+"\u03C3"):Tl(r,"mean:"),lf:Tl(r,"lower fence:"),uf:Tl(r,"upper fence:")}},a[l]++,o):[{t:{empty:!0}}]};function u_e(e,r,t,a){var n=r in e,i=r+"0"in e,o="d"+r in e;if(n||i&&o){var l=t.makeCalcdata(e,r),s=s_e(e,t,r,l).vals;return[s,l]}var u;i?u=e[r+"0"]:"name"in e&&(t.type==="category"||Ew(e.name)&&["linear","log"].indexOf(t.type)!==-1||na.isDateTime(e.name)&&t.type==="date")?u=e.name:u=a;for(var f=t.type==="multicategory"?t.r2c_just_indices(u):t.d2c(u,0,e[r+"calendar"]),c=e._length,v=new Array(c),d=0;d{"use strict";var yV=zr(),h_e=Le(),d_e=Au().getAxisGroup,mV=["v","h"];function p_e(e,r){for(var t=e.calcdata,a=r.xaxis,n=r.yaxis,i=0;i1,w=1-i[e+"gap"],_=1-i[e+"groupgap"];for(s=0;s0;if(M==="positive"?(U=q*(k?1:.5),Z=J,V=Z=D):M==="negative"?(U=Z=D,V=q*(k?1:.5),ee=J):(U=V=q,Z=ee=J),le){var he=b.pointpos,oe=b.jitter,ce=b.marker.size/2,j=0;he+oe>=0&&(j=J*(he+oe),j>U?(_e=!0,ue=ce,fe=j):j>Z&&(ue=ce,fe=U)),j<=U&&(fe=U);var Q=0;he-oe<=0&&(Q=-J*(he-oe),Q>V?(_e=!0,K=ce,ie=Q):Q>ee&&(K=ce,ie=V)),Q<=V&&(ie=V)}else fe=U,ie=V;var W=new Array(f.length);for(u=0;u{"use strict";var Vc=Sr(),Hu=Le(),y_e=jr(),xV=5,m_e=.01;function g_e(e,r,t,a){var n=e._context.staticPlot,i=r.xaxis,o=r.yaxis;Hu.makeTraceGroups(a,t,"trace boxes").each(function(l){var s=Vc.select(this),u=l[0],f=u.t,c=u.trace;if(f.wdPos=f.bdPos*c.whiskerwidth,c.visible!==!0||f.empty){s.remove();return}var v,d;c.orientation==="h"?(v=o,d=i):(v=i,d=o),_V(s,{pos:v,val:d},c,f,n),wV(s,{x:i,y:o},c,f),TV(s,{pos:v,val:d},c,f)})}function _V(e,r,t,a,n){var i=t.orientation==="h",o=r.val,l=r.pos,s=!!l.rangebreaks,u=a.bPos,f=a.wdPos||0,c=a.bPosPxOffset||0,v=t.whiskerwidth||0,d=t.showwhiskers!==!1,p=t.notched||!1,y=p?1-2*t.notchwidth:1,m,x;Array.isArray(a.bdPos)?(m=a.bdPos[0],x=a.bdPos[1]):(m=a.bdPos,x=a.bdPos);var w=e.selectAll("path.box").data(t.type!=="violin"||t.box.visible?Hu.identity:[]);w.enter().append("path").style("vector-effect",n?"none":"non-scaling-stroke").attr("class","box"),w.exit().remove(),w.each(function(_){if(_.empty)return Vc.select(this).attr("d","M0,0Z");var b=l.c2l(_.pos+u,!0),T=l.l2p(b-m)+c,k=l.l2p(b+x)+c,M=s?(T+k)/2:l.l2p(b)+c,q=t.whiskerwidth,E=s?T*q+(1-q)*M:l.l2p(b-f)+c,D=s?k*q+(1-q)*M:l.l2p(b+f)+c,P=l.l2p(b-m*y)+c,R=l.l2p(b+x*y)+c,z=t.sizemode==="sd",O=o.c2p(z?_.mean-_.sd:_.q1,!0),B=z?o.c2p(_.mean+_.sd,!0):o.c2p(_.q3,!0),Y=Hu.constrain(z?o.c2p(_.mean,!0):o.c2p(_.med,!0),Math.min(O,B)+1,Math.max(O,B)-1),G=_.lf===void 0||t.boxpoints===!1||z,U=o.c2p(G?_.min:_.lf,!0),V=o.c2p(G?_.max:_.uf,!0),J=o.c2p(_.ln,!0),Z=o.c2p(_.un,!0);i?Vc.select(this).attr("d","M"+Y+","+P+"V"+R+"M"+O+","+T+"V"+k+(p?"H"+J+"L"+Y+","+R+"L"+Z+","+k:"")+"H"+B+"V"+T+(p?"H"+Z+"L"+Y+","+P+"L"+J+","+T:"")+"Z"+(d?"M"+O+","+M+"H"+U+"M"+B+","+M+"H"+V+(v===0?"":"M"+U+","+E+"V"+D+"M"+V+","+E+"V"+D):"")):Vc.select(this).attr("d","M"+P+","+Y+"H"+R+"M"+T+","+O+"H"+k+(p?"V"+J+"L"+R+","+Y+"L"+k+","+Z:"")+"V"+B+"H"+T+(p?"V"+Z+"L"+P+","+Y+"L"+T+","+J:"")+"Z"+(d?"M"+M+","+O+"V"+U+"M"+M+","+B+"V"+V+(v===0?"":"M"+E+","+U+"H"+D+"M"+E+","+V+"H"+D):""))})}function wV(e,r,t,a){var n=r.x,i=r.y,o=a.bdPos,l=a.bPos,s=t.boxpoints||t.points;Hu.seedPseudoRandom();var u=function(v){return v.forEach(function(d){d.t=a,d.trace=t}),v},f=e.selectAll("g.points").data(s?u:[]);f.enter().append("g").attr("class","points"),f.exit().remove();var c=f.selectAll("path").data(function(v){var d,p=v.pts2,y=Math.max((v.max-v.min)/10,v.q3-v.q1),m=y*1e-9,x=y*m_e,w=[],_=0,b;if(t.jitter){if(y===0)for(_=1,w=new Array(p.length),d=0;dv.lo&&(D.so=!0)}return p});c.enter().append("path").classed("point",!0),c.exit().remove(),c.call(y_e.translatePoints,n,i)}function TV(e,r,t,a){var n=r.val,i=r.pos,o=!!i.rangebreaks,l=a.bPos,s=a.bPosPxOffset||0,u=t.boxmean||(t.meanline||{}).visible,f,c;Array.isArray(a.bdPos)?(f=a.bdPos[0],c=a.bdPos[1]):(f=a.bdPos,c=a.bdPos);var v=e.selectAll("path.mean").data(t.type==="box"&&t.boxmean||t.type==="violin"&&t.box.visible&&t.meanline.visible?Hu.identity:[]);v.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),v.exit().remove(),v.each(function(d){var p=i.c2l(d.pos+l,!0),y=i.l2p(p-f)+s,m=i.l2p(p+c)+s,x=o?(y+m)/2:i.l2p(p)+s,w=n.c2p(d.mean,!0),_=n.c2p(d.mean-d.sd,!0),b=n.c2p(d.mean+d.sd,!0);t.orientation==="h"?Vc.select(this).attr("d","M"+w+","+y+"V"+m+(u==="sd"?"m0,0L"+_+","+x+"L"+w+","+y+"L"+b+","+x+"Z":"")):Vc.select(this).attr("d","M"+y+","+w+"H"+m+(u==="sd"?"m0,0L"+x+","+_+"L"+y+","+w+"L"+x+","+b+"Z":""))})}AV.exports={plot:g_e,plotBoxAndWhiskers:_V,plotPoints:wV,plotBoxMean:TV}});var Iw=N((Aze,MV)=>{"use strict";var Fw=Sr(),Nw=Tr(),zw=jr();function b_e(e,r,t){var a=t||Fw.select(e).selectAll("g.trace.boxes");a.style("opacity",function(n){return n[0].trace.opacity}),a.each(function(n){var i=Fw.select(this),o=n[0].trace,l=o.line.width;function s(c,v,d,p){c.style("stroke-width",v+"px").call(Nw.stroke,d).call(Nw.fill,p)}var u=i.selectAll("path.box");if(o.type==="candlestick")u.each(function(c){if(!c.empty){var v=Fw.select(this),d=o[c.dir];s(v,d.line.width,d.line.color,d.fillcolor),v.style("opacity",o.selectedpoints&&!c.selected?.3:1)}});else{s(u,l,o.line.color,o.fillcolor),i.selectAll("path.mean").style({"stroke-width":l,"stroke-dasharray":2*l+"px,"+l+"px"}).call(Nw.stroke,o.line.color);var f=i.selectAll("path.point");zw.pointStyle(f,o,e)}})}function x_e(e,r,t){var a=r[0].trace,n=t.selectAll("path.point");a.selectedpoints?zw.selectedPointStyle(n,a):zw.pointStyle(n,a,e)}MV.exports={style:b_e,styleOnSelect:x_e}});var Bw=N((Mze,LV)=>{"use strict";var __e=zr(),Ow=Le(),ms=Pn(),kV=Tr(),w_e=Ow.fillText;function T_e(e,r,t,a){var n=e.cd,i=n[0].trace,o=i.hoveron,l=[],s;return o.indexOf("boxes")!==-1&&(l=l.concat(SV(e,r,t,a))),o.indexOf("points")!==-1&&(s=qV(e,r,t)),a==="closest"?s?[s]:l:(s&&l.push(s),l)}function SV(e,r,t,a){var n=e.cd,i=e.xa,o=e.ya,l=n[0].trace,s=n[0].t,u=l.type==="violin",f,c,v,d,p,y,m,x,w,_,b,T=s.bdPos,k,M,q=s.wHover,E=function(ce){return v.c2l(ce.pos)+s.bPos-v.c2l(y)};u&&l.side!=="both"?(l.side==="positive"&&(w=function(ce){var j=E(ce);return ms.inbox(j,j+q,_)},k=T,M=0),l.side==="negative"&&(w=function(ce){var j=E(ce);return ms.inbox(j-q,j,_)},k=0,M=T)):(w=function(ce){var j=E(ce);return ms.inbox(j-q,j+q,_)},k=M=T);var D;u?D=function(ce){return ms.inbox(ce.span[0]-p,ce.span[1]-p,_)}:D=function(ce){return ms.inbox(ce.min-p,ce.max-p,_)},l.orientation==="h"?(p=r,y=t,m=D,x=w,f="y",v=o,c="x",d=i):(p=t,y=r,m=w,x=D,f="x",v=i,c="y",d=o);var P=Math.min(1,T/Math.abs(v.r2c(v.range[1])-v.r2c(v.range[0])));_=e.maxHoverDistance-P,b=e.maxSpikeDistance-P;function R(ce){return(m(ce)+x(ce))/2}var z=ms.getDistanceFunction(a,m,x,R);if(ms.getClosest(n,z,e),e.index===!1)return[];var O=n[e.index],B=l.line.color,Y=(l.marker||{}).color;kV.opacity(B)&&l.line.width?e.color=B:kV.opacity(Y)&&l.boxpoints?e.color=Y:e.color=l.fillcolor,e[f+"0"]=v.c2p(O.pos+s.bPos-M,!0),e[f+"1"]=v.c2p(O.pos+s.bPos+k,!0),e[f+"LabelVal"]=O.orig_p!==void 0?O.orig_p:O.pos;var G=f+"Spike";e.spikeDistance=R(O)*b/_,e[G]=v.c2p(O.pos,!0);var U=l.boxmean||l.sizemode==="sd"||(l.meanline||{}).visible,V=l.boxpoints||l.points,J=V&&U?["max","uf","q3","med","mean","q1","lf","min"]:V&&!U?["max","uf","q3","med","q1","lf","min"]:!V&&U?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],Z=d.range[1]{"use strict";CV.exports=function(r,t){return t.hoverOnBox&&(r.hoverOnBox=t.hoverOnBox),"xVal"in t&&(r.x=t.xVal),"yVal"in t&&(r.y=t.yVal),t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),r}});var Hw=N((Sze,DV)=>{"use strict";DV.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,o=[],l,s;if(t===!1)for(l=0;l{"use strict";RV.exports={attributes:lg(),layoutAttributes:sg(),supplyDefaults:E0().supplyDefaults,crossTraceDefaults:E0().crossTraceDefaults,supplyLayoutDefaults:Lw().supplyLayoutDefaults,calc:Dw(),crossTraceCalc:Rw().crossTraceCalc,plot:Pw().plot,style:Iw().style,styleOnSelect:Iw().styleOnSelect,hoverPoints:Bw().hoverPoints,eventData:EV(),selectPoints:Hw(),moduleType:"trace",name:"box",basePlotModule:Li(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{}}});var NV=N((Lze,FV)=>{"use strict";FV.exports=PV()});var D0=N((Cze,IV)=>{"use strict";var A_e=ko(),{extendFlat:On}=bt(),M_e=gn(),{axisHoverFormat:Uw}=eo(),k_e=ma(),{hovertemplateAttrs:S_e,templatefallbackAttrs:zV,texttemplateAttrs:q_e}=Yn(),ai=wi();IV.exports=On({z:{valType:"data_array",editType:"calc"},x:On({},ai.x,{impliedEdits:{xtype:"array"}}),x0:On({},ai.x0,{impliedEdits:{xtype:"scaled"}}),dx:On({},ai.dx,{impliedEdits:{xtype:"scaled"}}),y:On({},ai.y,{impliedEdits:{ytype:"array"}}),y0:On({},ai.y0,{impliedEdits:{ytype:"scaled"}}),dy:On({},ai.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:On({},ai.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:On({},ai.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:On({},ai.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:On({},ai.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:On({},ai.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:On({},ai.yperiodalignment,{impliedEdits:{ytype:"scaled"}}),text:{valType:"data_array",editType:"calc"},hovertext:{valType:"data_array",editType:"calc"},transpose:{valType:"boolean",dflt:!1,editType:"calc"},xtype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},ytype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},zsmooth:{valType:"enumerated",values:["fast","best",!1],dflt:!1,editType:"calc"},hoverongaps:{valType:"boolean",dflt:!0,editType:"none"},connectgaps:{valType:"boolean",editType:"calc"},xgap:{valType:"number",dflt:0,min:0,editType:"plot"},ygap:{valType:"number",dflt:0,min:0,editType:"plot"},xhoverformat:Uw("x"),yhoverformat:Uw("y"),zhoverformat:Uw("z",1),hovertemplate:S_e(),hovertemplatefallback:zV(),texttemplate:q_e({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),texttemplatefallback:zV({editType:"plot"}),textfont:k_e({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:On({},M_e.showlegend,{dflt:!1}),zorder:ai.zorder},A_e("",{cLetter:"z",autoColorDflt:!1}))});var Gw=N((Eze,BV)=>{"use strict";var L_e=Rr(),fg=Le(),C_e=br();BV.exports=function(r,t,a,n,i,o){var l=a("z");i=i||"x",o=o||"y";var s,u;if(l===void 0||!l.length)return 0;if(fg.isArray1D(l)){s=a(i),u=a(o);var f=fg.minRowLength(s),c=fg.minRowLength(u);if(f===0||c===0)return 0;t._length=Math.min(f,c,l.length)}else{if(s=OV(i,a),u=OV(o,a),!E_e(l))return 0;a("transpose"),t._length=null}var v=C_e.getComponentMethod("calendars","handleTraceDefaults");return v(r,t,[i,o],n),!0};function OV(e,r){var t=r(e),a=t?r(e+"type","array"):"scaled";return a==="scaled"&&(r(e+"0"),r("d"+e)),t}function E_e(e){for(var r=!0,t=!1,a=!1,n,i=0;i0&&(t=!0);for(var o=0;o{"use strict";var HV=Le();UV.exports=function(r,t){r("texttemplate"),r("texttemplatefallback");var a=HV.extendFlat({},t.font,{color:"auto",size:"auto"});HV.coerceFont(r,"textfont",a)}});var Vw=N((Rze,GV)=>{"use strict";GV.exports=function(r,t,a){var n=a("zsmooth");n===!1&&(a("xgap"),a("ygap")),a("zhoverformat")}});var jV=N((Pze,YV)=>{"use strict";var VV=Le(),D_e=Gw(),R_e=R0(),P_e=gc(),F_e=Vw(),N_e=fl(),z_e=D0();YV.exports=function(r,t,a,n){function i(l,s){return VV.coerce(r,t,z_e,l,s)}var o=D_e(r,t,i,n);if(!o){t.visible=!1;return}P_e(r,t,n,i),i("xhoverformat"),i("yhoverformat"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),R_e(i,n),F_e(r,t,i,n),i("hoverongaps"),i("connectgaps",VV.isArray1D(t.z)&&t.zsmooth!==!1),N_e(r,t,n,i,{prefix:"",cLetter:"z"}),i("zorder")}});var Yw=N((Fze,WV)=>{"use strict";var Yc=Rr();WV.exports={count:function(e,r,t){return t[e]++,1},sum:function(e,r,t,a){var n=a[r];return Yc(n)?(n=Number(n),t[e]+=n,n):0},avg:function(e,r,t,a,n){var i=a[r];return Yc(i)&&(i=Number(i),t[e]+=i,n[e]++),0},min:function(e,r,t,a){var n=a[r];if(Yc(n))if(n=Number(n),Yc(t[e])){if(t[e]>n){var i=n-t[e];return t[e]=n,i}}else return t[e]=n,n;return 0},max:function(e,r,t,a){var n=a[r];if(Yc(n))if(n=Number(n),Yc(t[e])){if(t[e]{"use strict";ZV.exports={percent:function(e,r){for(var t=e.length,a=100/r,n=0;n{"use strict";XV.exports=function(r,t){for(var a=r.length,n=0,i=0;i{"use strict";var jc=It(),Uu=jc.ONEAVGYEAR,JV=jc.ONEAVGMONTH,vg=jc.ONEDAY,$V=jc.ONEHOUR,KV=jc.ONEMIN,QV=jc.ONESEC,eY=zr().tickIncrement;aY.exports=function(r,t,a,n,i){var o=-1.1*t,l=-.1*t,s=r-l,u=a[0],f=a[1],c=Math.min(cg(u+l,u+s,n,i),cg(f+l,f+s,n,i)),v=Math.min(cg(u+o,u+l,n,i),cg(f+o,f+l,n,i)),d,p;if(c>v&&vvg){var y=d===Uu?1:6,m=d===Uu?"M12":"M1";return function(x,w){var _=n.c2d(x,Uu,i),b=_.indexOf("-",y);b>0&&(_=_.substr(0,b));var T=n.d2c(_,0,i);if(TQV?e>vg?e>Uu*1.1?Uu:e>JV*1.1?JV:vg:e>$V?$V:e>KV?KV:QV:Math.pow(10,Math.floor(Math.log(e)/Math.LN10))}function I_e(e,r,t,a,n,i){if(a&&e>vg){var o=tY(r,n,i),l=tY(t,n,i),s=e===Uu?0:1;return o[s]!==l[s]}return Math.floor(t/e)-Math.floor(r/e)>.1}function tY(e,r,t){var a=r.c2d(e,Uu,t).split("-");return a[0]===""&&(a.unshift(),a[0]="-"+a[0]),a}});var $w=N((Oze,sY)=>{"use strict";var Xw=Rr(),vn=Le(),nY=br(),Ri=zr(),{hasColorscale:iY}=Wn(),oY=Vf(),O_e=tg(),lY=Yw(),B_e=jw(),H_e=Ww(),U_e=Zw();function G_e(e,r){var t=[],a=[],n=r.orientation==="h",i=Ri.getFromId(e,n?r.yaxis:r.xaxis),o=n?"y":"x",l={x:"y",y:"x"}[o],s=r[o+"calendar"],u=r.cumulative,f,c=Jw(e,r,i,o),v=c[0],d=c[1],p=typeof v.size=="string",y=[],m=p?y:v,x=[],w=[],_=[],b=0,T=r.histnorm,k=r.histfunc,M=T.indexOf("density")!==-1,q,E,D;u.enabled&&M&&(T=T.replace(/ ?density$/,""),M=!1);var P=k==="max"||k==="min",R=P?null:0,z=lY.count,O=B_e[T],B=!1,Y=function(j){return i.r2c(j,0,s)},G;for(vn.isArrayOrTypedArray(r[l])&&k!=="count"&&(G=r[l],B=k==="avg",z=lY[k]),f=Y(v.start),E=Y(v.end)+(f-Ri.tickIncrement(f,v.size,!1,s))/1e6;f=0&&D=he;f--)if(a[f]){oe=f;break}for(f=he;f<=oe;f++)if(Xw(t[f])&&Xw(a[f])){var ce={p:t[f],s:a[f],b:0};u.enabled||(ce.pts=_[f],Z?ce.ph0=ce.ph1=_[f].length?d[_[f][0]]:t[f]:(r._computePh=!0,ce.ph0=K(y[f]),ce.ph1=K(y[f+1],!0))),le.push(ce)}return le.length===1&&(le[0].width1=Ri.tickIncrement(le[0].p,v.size,!1,s)-le[0].p),iY(r,"marker")&&oY(e,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),iY(r,"marker.line")&&oY(e,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}),O_e(le,r),vn.isArrayOrTypedArray(r.selectedpoints)&&vn.tagSelected(le,r,ie),le}function Jw(e,r,t,a,n){var i=a+"bins",o=e._fullLayout,l=r["_"+a+"bingroup"],s=o._histogramBinOpts[l],u=o.barmode==="overlay",f,c,v,d,p,y,m,x=function(ue){return t.r2c(ue,0,d)},w=function(ue){return t.c2r(ue,0,d)},_=t.type==="date"?function(ue){return ue||ue===0?vn.cleanDate(ue,null,d):null}:function(ue){return Xw(ue)?Number(ue):null};function b(ue,K,_e){K[ue+"Found"]?(K[ue]=_(K[ue]),K[ue]===null&&(K[ue]=_e[ue])):(y[ue]=K[ue]=_e[ue],vn.nestedProperty(c[0],i+"."+ue).set(_e[ue]))}if(r["_"+a+"autoBinFinished"])delete r["_"+a+"autoBinFinished"];else{c=s.traces;var T=[],k=!0,M=!1,q=!1;for(f=0;ft.r2l(G)&&(V=Ri.tickIncrement(V,s.size,!0,d)),z.start=t.l2r(V),Y||vn.nestedProperty(r,i+".start").set(z.start)}var J=s.end,Z=t.r2l(R.end),ee=Z!==void 0;if((s.endFound||ee)&&Z!==t.r2l(J)){var fe=ee?Z:vn.aggNums(Math.max,null,p);z.end=t.l2r(fe),ee||vn.nestedProperty(r,i+".start").set(z.end)}var ie="autobin"+a;return r._input[ie]===!1&&(r._input[i]=vn.extendFlat({},r[i]||{}),delete r._input[ie],delete r[ie]),[z,p]}function V_e(e,r,t,a,n){var i=e._fullLayout,o=Y_e(e,r),l=!1,s=1/0,u=[r],f,c,v;for(f=0;f=0;a--)l(a);else if(r==="increasing"){for(a=1;a=0;a--)e[a]+=e[a+1];t==="exclude"&&(e.push(0),e.shift())}}sY.exports={calc:G_e,calcAllAutoBins:Jw}});var yY=N((Bze,pY)=>{"use strict";var uY=Le(),Wc=zr(),fY=Yw(),W_e=jw(),Z_e=Ww(),X_e=Zw(),cY=$w().calcAllAutoBins;pY.exports=function(r,t){var a=Wc.getFromId(r,t.xaxis),n=Wc.getFromId(r,t.yaxis),i=t.xcalendar,o=t.ycalendar,l=function(Te){return a.r2c(Te,0,i)},s=function(Te){return n.r2c(Te,0,o)},u=function(Te){return a.c2r(Te,0,i)},f=function(Te){return n.c2r(Te,0,o)},c,v,d,p,y=cY(r,t,a,"x"),m=y[0],x=y[1],w=cY(r,t,n,"y"),_=w[0],b=w[1],T=t._length;x.length>T&&x.splice(T,x.length-T),b.length>T&&b.splice(T,b.length-T);var k=[],M=[],q=[],E=typeof m.size=="string",D=typeof _.size=="string",P=[],R=[],z=E?P:m,O=D?R:_,B=0,Y=[],G=[],U=t.histnorm,V=t.histfunc,J=U.indexOf("density")!==-1,Z=V==="max"||V==="min",ee=Z?null:0,fe=fY.count,ie=W_e[U],ue=!1,K=[],_e=[],le="z"in t?t.z:"marker"in t&&Array.isArray(t.marker.color)?t.marker.color:"";le&&V!=="count"&&(ue=V==="avg",fe=fY[V]);var he=m.size,oe=l(m.start),ce=l(m.end)+(oe-Wc.tickIncrement(oe,he,!1,i))/1e6;for(c=oe;c=0&&d=0&&p{"use strict";var Uo=Le(),mY=It().BADNUM,gY=xc();bY.exports=function(r,t,a,n,i,o){var l=r._length,s=t.makeCalcdata(r,n),u=a.makeCalcdata(r,i);s=gY(r,t,n,s).vals,u=gY(r,a,i,u).vals;var f=r.text,c=f!==void 0&&Uo.isArray1D(f),v=r.hovertext,d=v!==void 0&&Uo.isArray1D(v),p,y,m=Uo.distinctVals(s),x=m.vals,w=Uo.distinctVals(u),_=w.vals,b=[],T,k,M=_.length,q=x.length;for(p=0;p{"use strict";var J_e=Rr(),$_e=Le(),hg=It().BADNUM;_Y.exports=function(r,t,a,n){var i,o,l,s,u,f;function c(x){if(J_e(x))return+x}if(t&&t.transpose){for(i=0,u=0;u{"use strict";var K_e=Le(),TY=.01,Q_e=[[-1,0],[1,0],[0,-1],[0,1]];function e4e(e){return .5-.25*Math.min(1,e*.5)}MY.exports=function(r,t){var a=1,n;for(AY(r,t),n=0;nTY;n++)a=AY(r,t,e4e(a));return a>TY&&K_e.log("interp2d didn't converge quickly",a),r};function AY(e,r,t){var a=0,n,i,o,l,s,u,f,c,v,d,p,y,m;for(l=0;ly&&(a=Math.max(a,Math.abs(e[i][o]-p)/(m-y))))}return a}});var qY=N((Vze,SY)=>{"use strict";var r4e=Le().maxRowLength;SY.exports=function(r){var t=[],a={},n=[],i=r[0],o=[],l=[0,0,0],s=r4e(r),u,f,c,v,d,p,y,m;for(f=0;f=0;d--)v=n[d],f=v[0],c=v[1],p=((a[[f-1,c]]||l)[2]+(a[[f+1,c]]||l)[2]+(a[[f,c-1]]||l)[2]+(a[[f,c+1]]||l)[2])/20,p&&(y[v]=[f,c,p],n.splice(d,1),m=!0);if(!m)throw"findEmpties iterated with no new neighbors";for(v in y)a[v]=y[v],t.push(y[v])}return t.sort(function(x,w){return w[2]-x[2]})}});var DY=N((Yze,EY)=>{"use strict";var LY=br(),CY=Le().isArrayOrTypedArray;EY.exports=function(r,t,a,n,i,o){var l=[],s=LY.traceIs(r,"contour"),u=LY.traceIs(r,"histogram"),f,c,v,d=CY(t)&&t.length>1;if(d&&!u&&o.type!=="category"){var p=t.length;if(p<=i){if(s)l=Array.from(t).slice(0,i);else if(i===1)o.type==="log"?l=[.5*t[0],2*t[0]]:l=[t[0]-.5,t[0]+.5];else if(o.type==="log"){for(l=[Math.pow(t[0],1.5)/Math.pow(t[1],.5)],v=1;v{"use strict";var RY=br(),Kw=Le(),dg=zr(),PY=xc(),t4e=yY(),a4e=Vf(),n4e=xY(),i4e=wY(),o4e=kY(),l4e=qY(),pg=DY(),Qw=It().BADNUM;NY.exports=function(r,t){var a=dg.getFromId(r,t.xaxis||"x"),n=dg.getFromId(r,t.yaxis||"y"),i=RY.traceIs(t,"contour"),o=RY.traceIs(t,"histogram"),l=i?"best":t.zsmooth,s,u,f,c,v,d,p,y,m,x,w;if(a._minDtick=0,n._minDtick=0,o)w=t4e(r,t),c=w.orig_x,s=w.x,u=w.x0,f=w.dx,y=w.orig_y,v=w.y,d=w.y0,p=w.dy,m=w.z;else{var _=t.z;Kw.isArray1D(_)?(n4e(t,a,n,"x","y",["z"]),s=t._x,v=t._y,_=t._z):(c=t.x?a.makeCalcdata(t,"x"):[],y=t.y?n.makeCalcdata(t,"y"):[],s=PY(t,a,"x",c).vals,v=PY(t,n,"y",y).vals,t._x=s,t._y=v),u=t.x0,f=t.dx,d=t.y0,p=t.dy,m=i4e(_,t,a,n)}(a.rangebreaks||n.rangebreaks)&&(m=s4e(s,v,m),o||(s=FY(s),v=FY(v),t._x=s,t._y=v)),!o&&(i||t.connectgaps)&&(t._emptypoints=l4e(m),o4e(m,t._emptypoints));function b(z){l=t._input.zsmooth=t.zsmooth=!1,Kw.warn('cannot use zsmooth: "fast": '+z)}function T(z){if(z.length>1){var O=(z[z.length-1]-z[0])/(z.length-1),B=Math.abs(O/100);for(x=0;xB)return!1}return!0}t._islinear=!1,a.type==="log"||n.type==="log"?l==="fast"&&b("log axis found"):T(s)?T(v)?t._islinear=!0:l==="fast"&&b("y scale is not linear"):l==="fast"&&b("x scale is not linear");var k=Kw.maxRowLength(m),M=t.xtype==="scaled"?"":s,q=pg(t,M,u,f,k,a),E=t.ytype==="scaled"?"":v,D=pg(t,E,d,p,m.length,n);t._extremes[a._id]=dg.findExtremes(a,q),t._extremes[n._id]=dg.findExtremes(n,D);var P={x:q,y:D,z:m,text:t._text||t.text,hovertext:t._hovertext||t.hovertext};if(t.xperiodalignment&&c&&(P.orig_x=c),t.yperiodalignment&&y&&(P.orig_y=y),M&&M.length===q.length-1&&(P.xCenter=M),E&&E.length===D.length-1&&(P.yCenter=E),o&&(P.xRanges=w.xRanges,P.yRanges=w.yRanges,P.pts=w.pts),i||a4e(r,t,{vals:m,cLetter:"z"}),i&&t.contours&&t.contours.coloring==="heatmap"){var R={type:t.type==="contour"?"heatmap":"histogram2d",xcalendar:t.xcalendar,ycalendar:t.ycalendar};P.xfill=pg(R,M,u,f,k,a),P.yfill=pg(R,E,d,p,m.length,n)}return[P]};function FY(e){for(var r=[],t=e.length,a=0;a{"use strict";mg.CSS_DECLARATIONS=[["image-rendering","optimizeSpeed"],["image-rendering","-moz-crisp-edges"],["image-rendering","-o-crisp-edges"],["image-rendering","-webkit-optimize-contrast"],["image-rendering","optimize-contrast"],["image-rendering","crisp-edges"],["image-rendering","pixelated"]];mg.STYLE=mg.CSS_DECLARATIONS.map(function(e){return e.join(": ")+"; "}).join("")});var r6=N((Zze,IY)=>{"use strict";var zY=gg(),u4e=jr(),e6=Le(),Zc=null;function f4e(){if(Zc!==null)return Zc;Zc=!1;var e=e6.isSafari()||e6.isMacWKWebView()||e6.isIOS();if(window.navigator.userAgent&&!e){var r=Array.from(zY.CSS_DECLARATIONS).reverse(),t=window.CSS&&window.CSS.supports||window.supportsCSS;if(typeof t=="function")Zc=r.some(function(o){return t.apply(null,o)});else{var a=u4e.tester.append("image").attr("style",zY.STYLE),n=window.getComputedStyle(a.node()),i=n.imageRendering;Zc=r.some(function(o){var l=o[1];return i===l||i===l.toLowerCase()}),a.remove()}}return Zc}IY.exports=f4e});var bg=N((Xze,WY)=>{"use strict";var OY=Sr(),c4e=kn(),v4e=br(),h4e=jr(),d4e=zr(),Pi=Le(),BY=Ea(),p4e=c4(),y4e=Tr(),m4e=So().extractOpts,g4e=So().makeColorScaleFuncFromTrace,b4e=sl(),x4e=Wa(),t6=x4e.LINE_SPACING,_4e=r6(),w4e=gg().STYLE,YY="heatmap-label";function jY(e){return e.selectAll("g."+YY)}function HY(e){jY(e).remove()}WY.exports=function(e,r,t,a){var n=r.xaxis,i=r.yaxis;Pi.makeTraceGroups(a,t,"hm").each(function(o){var l=OY.select(this),s=o[0],u=s.trace,f=u.xgap||0,c=u.ygap||0,v=s.z,d=s.x,p=s.y,y=s.xCenter,m=s.yCenter,x=v4e.traceIs(u,"contour"),w=x?"best":u.zsmooth,_=v.length,b=Pi.maxRowLength(v),T=!1,k=!1,M,q,E,D,P,R,z,O;for(R=0;M===void 0&&R0;)q=n.c2p(d[R]),R--;for(q0;)P=i.c2p(p[R]),R--;P=n._length||q<=0||D>=i._length||P<=0;if(V){var J=l.selectAll("image").data([]);J.exit().remove(),HY(l);return}var Z,ee;B==="fast"?(Z=b,ee=_):(Z=G,ee=U);var fe=document.createElement("canvas");fe.width=Z,fe.height=ee;var ie=fe.getContext("2d",{willReadFrequently:!0}),ue=g4e(u,{noNumericCheck:!0,returnArray:!0}),K,_e;B==="fast"?(K=T?function(ct){return b-1-ct}:Pi.identity,_e=k?function(ct){return _-1-ct}:Pi.identity):(K=function(ct){return Pi.constrain(Math.round(n.c2p(d[ct])-M),0,G)},_e=function(ct){return Pi.constrain(Math.round(i.c2p(p[ct])-D),0,U)});var le=_e(0),he=[le,le],oe=T?0:1,ce=k?0:1,j=0,Q=0,W=0,pe=0,me,ye,Pe,Ne,Ee;function Ie(ct,Tn){if(ct!==void 0){var zt=ue(ct);return zt[0]=Math.round(zt[0]),zt[1]=Math.round(zt[1]),zt[2]=Math.round(zt[2]),j+=Tn,Q+=zt[0]*Tn,W+=zt[1]*Tn,pe+=zt[2]*Tn,zt}return[0,0,0,0]}function Ue(ct,Tn,zt,zs){var yn=ct[zt.bin0];if(yn===void 0)return Ie(void 0,1);var Vi=ct[zt.bin1],Wt=Tn[zt.bin0],Yi=Tn[zt.bin1],Rl=Vi-yn||0,Pl=Wt-yn||0,mr;return Vi===void 0?Yi===void 0?mr=0:Wt===void 0?mr=2*(Yi-yn):mr=(2*Yi-Wt-yn)*2/3:Yi===void 0?Wt===void 0?mr=0:mr=(2*yn-Vi-Wt)*2/3:Wt===void 0?mr=(2*Yi-Vi-yn)*2/3:mr=Yi+yn-Vi-Wt,Ie(yn+zt.frac*Rl+zs.frac*(Pl+zt.frac*mr))}if(B!=="default"){var Be=0,Ce;try{Ce=new Uint8Array(Z*ee*4)}catch(ct){Ce=new Array(Z*ee*4)}if(B==="smooth"){var Oe=y||d,He=m||p,se=new Array(Oe.length),Ae=new Array(He.length),Xe=new Array(G),vr=y?GY:UY,Fe=m?GY:UY,Te,qe,Ge;for(R=0;Rqt||qt>i._length))for(z=kr;zFt||Ft>n._length)){var Tt=p4e({x:ft,y:et},u,e._fullLayout);Tt.x=ft,Tt.y=et;var da=s.z[R][z];da===void 0?(Tt.z="",Tt.zLabel=""):(Tt.z=da,Tt.zLabel=d4e.tickText(De,da,"hover").text);var $t=s.text&&s.text[R]&&s.text[R][z];($t===void 0||$t===!1)&&($t=""),Tt.text=$t;var oa=Pi.texttemplateString({data:[Tt,u._meta],fallback:u.texttemplatefallback,labels:Tt,locale:e._fullLayout._d3locale,template:ne});if(oa){var dr=oa.split("
"),yt=dr.length,Zr=0;for(O=0;O{"use strict";ZY.exports={min:"zmin",max:"zmax"}});var xg=N(($ze,XY)=>{"use strict";var T4e=Sr();XY.exports=function(r){T4e.select(r).selectAll(".hm image").style("opacity",function(t){return t.trace.opacity})}});var wg=N((Kze,$Y)=>{"use strict";var JY=Pn(),P0=Le(),_g=P0.isArrayOrTypedArray,A4e=zr(),M4e=So().extractOpts;$Y.exports=function(r,t,a,n,i){i||(i={});var o=i.isContour,l=r.cd[0],s=l.trace,u=r.xa,f=r.ya,c=l.x,v=l.y,d=l.z,p=l.xCenter,y=l.yCenter,m=l.zmask,x=s.zhoverformat,w=c,_=v,b,T,k,M;if(r.index!==!1){try{k=Math.round(r.index[1]),M=Math.round(r.index[0])}catch(J){P0.error("Error hovering on heatmap, pointNumber must be [row,col], found:",r.index);return}if(k<0||k>=d[0].length||M<0||M>d.length)return}else{if(JY.inbox(t-c[0],t-c[c.length-1],0)>0||JY.inbox(a-v[0],a-v[v.length-1],0)>0)return;if(o){var q;for(w=[2*c[0]-c[1]],q=1;q{"use strict";KY.exports={attributes:D0(),supplyDefaults:jV(),calc:yg(),plot:bg(),colorbar:a6(),style:xg(),hoverPoints:wg(),moduleType:"trace",name:"heatmap",basePlotModule:Li(),categories:["cartesian","svg","2dMap","showLegend"],meta:{}}});var rj=N((eIe,ej)=>{"use strict";ej.exports=QY()});var n6=N((rIe,tj)=>{"use strict";tj.exports=function(r,t){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}});var nj=N((tIe,aj)=>{"use strict";aj.exports={eventDataKeys:["binNumber"]}});var Tg=N((aIe,sj)=>{"use strict";var Bn=zu(),ij=eo().axisHoverFormat,{hovertemplateAttrs:k4e,texttemplateAttrs:S4e,templatefallbackAttrs:oj}=Yn(),i6=ma(),lj=n6(),q4e=nj(),o6=bt().extendFlat;sj.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:ij("x"),yhoverformat:ij("y"),text:o6({},Bn.text,{}),hovertext:o6({},Bn.hovertext,{}),orientation:Bn.orientation,histfunc:{valType:"enumerated",values:["count","sum","avg","min","max"],dflt:"count",editType:"calc"},histnorm:{valType:"enumerated",values:["","percent","probability","density","probability density"],dflt:"",editType:"calc"},cumulative:{enabled:{valType:"boolean",dflt:!1,editType:"calc"},direction:{valType:"enumerated",values:["increasing","decreasing"],dflt:"increasing",editType:"calc"},currentbin:{valType:"enumerated",values:["include","exclude","half"],dflt:"include",editType:"calc"},editType:"calc"},nbinsx:{valType:"integer",min:0,dflt:0,editType:"calc"},xbins:lj("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:lj("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:k4e({},{keys:q4e.eventDataKeys}),hovertemplatefallback:oj(),texttemplate:S4e({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),texttemplatefallback:oj({editType:"plot"}),textposition:o6({},Bn.textposition,{arrayOk:!1}),textfont:i6({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:i6({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:i6({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:Bn.insidetextanchor,textangle:Bn.textangle,cliponaxis:Bn.cliponaxis,constraintext:Bn.constraintext,marker:Bn.marker,offsetgroup:Bn.offsetgroup,alignmentgroup:Bn.alignmentgroup,selected:Bn.selected,unselected:Bn.unselected,zorder:Bn.zorder}});var vj=N((nIe,cj)=>{"use strict";var uj=br(),F0=Le(),fj=Tr(),L4e=Iu().handleText,C4e=bw(),E4e=Tg();cj.exports=function(r,t,a,n){function i(w,_){return F0.coerce(r,t,E4e,w,_)}var o=i("x"),l=i("y"),s=i("cumulative.enabled");s&&(i("cumulative.direction"),i("cumulative.currentbin")),i("text");var u=i("textposition");L4e(r,t,n,i,u,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),i("xhoverformat"),i("yhoverformat");var f=i("orientation",l&&!o?"h":"v"),c=f==="v"?"x":"y",v=f==="v"?"y":"x",d=o&&l?Math.min(F0.minRowLength(o)&&F0.minRowLength(l)):F0.minRowLength(t[c]||[]);if(!d){t.visible=!1;return}t._length=d;var p=uj.getComponentMethod("calendars","handleTraceDefaults");p(r,t,["x","y"],n);var y=t[v];y&&i("histfunc"),i("histnorm"),i("autobin"+c),C4e(r,t,i,a,n),F0.coerceSelectionMarkerOpacity(t,i);var m=(t.marker.line||{}).color,x=uj.getComponentMethod("errorbars","supplyDefaults");x(r,t,m||fj.defaultLine,{axis:"y"}),x(r,t,m||fj.defaultLine,{axis:"x",inherit:"y"}),i("zorder")}});var Mg=N((iIe,pj)=>{"use strict";var N0=Le(),D4e=la(),Ag=br().traceIs,R4e=o0(),P4e=Iu().validateCornerradius,hj=N0.nestedProperty,l6=Au().getAxisGroup,dj=[{aStr:{x:"xbins.start",y:"ybins.start"},name:"start"},{aStr:{x:"xbins.end",y:"ybins.end"},name:"end"},{aStr:{x:"xbins.size",y:"ybins.size"},name:"size"},{aStr:{x:"nbinsx",y:"nbinsy"},name:"nbins"}],F4e=["x","y"];pj.exports=function(r,t){var a=t._histogramBinOpts={},n=[],i={},o=[],l,s,u,f,c,v,d;function p(B,Y){return N0.coerce(l._input,l,l._module.attributes,B,Y)}function y(B){return B.orientation==="v"?"x":"y"}function m(B,Y){var G=D4e.getFromTrace({_fullLayout:t},B,Y);return G.type}function x(B,Y,G){var U=B.uid+"__"+G;Y||(Y=U);var V=m(B,G),J=B[G+"calendar"]||"",Z=a[Y],ee=!0;Z&&(V===Z.axType&&J===Z.calendar?(ee=!1,Z.traces.push(B),Z.dirs.push(G)):(Y=U,V!==Z.axType&&N0.warn(["Attempted to group the bins of trace",B.index,"set on a","type:"+V,"axis","with bins on","type:"+Z.axType,"axis."].join(" ")),J!==Z.calendar&&N0.warn(["Attempted to group the bins of trace",B.index,"set with a",J,"calendar","with bins",Z.calendar?"on a "+Z.calendar+" calendar":"w/o a set calendar"].join(" ")))),ee&&(a[Y]={traces:[B],dirs:[G],axType:V,calendar:B[G+"calendar"]||""}),B["_"+G+"bingroup"]=Y}for(c=0;c{"use strict";var N4e=Sw().hoverPoints,z4e=zr().hoverLabelText;yj.exports=function(r,t,a,n,i){var o=N4e(r,t,a,n,i);if(o){r=o[0];var l=r.cd[r.index],s=r.cd[0].trace;if(!s.cumulative.enabled){var u=s.orientation==="h"?"y":"x";r[u+"Label"]=z4e(r[u+"a"],[l.ph0,l.ph1],s[u+"hoverformat"])}return o}}});var s6=N((lIe,gj)=>{"use strict";gj.exports=function(r,t,a,n,i){if(r.x="xVal"in t?t.xVal:t.x,r.y="yVal"in t?t.yVal:t.y,"zLabelVal"in t&&(r.z=t.zLabelVal),t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),!(a.cumulative||{}).enabled){var o=Array.isArray(i)?n[0].pts[i[0]][i[1]]:n[i].pts;r.pointNumbers=o,r.binNumber=r.pointNumber,delete r.pointNumber,delete r.pointIndex;var l;if(a._indexToPoints){l=[];for(var s=0;s{"use strict";bj.exports={attributes:Tg(),layoutAttributes:eg(),supplyDefaults:vj(),crossTraceDefaults:Mg(),supplyLayoutDefaults:xw(),calc:$w().calc,crossTraceCalc:pm().crossTraceCalc,plot:Mw().plot,layerName:"barlayer",style:Hc().style,styleOnSelect:Hc().styleOnSelect,colorbar:c0(),hoverPoints:mj(),selectPoints:qw(),eventData:s6(),moduleType:"trace",name:"histogram",basePlotModule:Li(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}});var wj=N((uIe,_j)=>{"use strict";_j.exports=xj()});var Sg=N((fIe,Mj)=>{"use strict";var yo=Tg(),Tj=n6(),kg=D0(),I4e=gn(),u6=eo().axisHoverFormat,{hovertemplateAttrs:O4e,texttemplateAttrs:B4e,templatefallbackAttrs:Aj}=Yn(),H4e=ko(),z0=bt().extendFlat;Mj.exports=z0({x:yo.x,y:yo.y,z:{valType:"data_array",editType:"calc"},marker:{color:{valType:"data_array",editType:"calc"},editType:"calc"},histnorm:yo.histnorm,histfunc:yo.histfunc,nbinsx:yo.nbinsx,xbins:Tj("x"),nbinsy:yo.nbinsy,ybins:Tj("y"),autobinx:yo.autobinx,autobiny:yo.autobiny,bingroup:z0({},yo.bingroup,{}),xbingroup:z0({},yo.bingroup,{}),ybingroup:z0({},yo.bingroup,{}),xgap:kg.xgap,ygap:kg.ygap,zsmooth:kg.zsmooth,xhoverformat:u6("x"),yhoverformat:u6("y"),zhoverformat:u6("z",1),hovertemplate:O4e({},{keys:["z"]}),hovertemplatefallback:Aj(),texttemplate:B4e({arrayOk:!1,editType:"plot"},{keys:["z"]}),texttemplatefallback:Aj({editType:"plot"}),textfont:kg.textfont,showlegend:z0({},I4e.showlegend,{dflt:!1})},H4e("",{cLetter:"z",autoColorDflt:!1}))});var f6=N((cIe,Sj)=>{"use strict";var U4e=br(),kj=Le();Sj.exports=function(r,t,a,n){var i=a("x"),o=a("y"),l=kj.minRowLength(i),s=kj.minRowLength(o);if(!l||!s){t.visible=!1;return}t._length=Math.min(l,s);var u=U4e.getComponentMethod("calendars","handleTraceDefaults");u(r,t,["x","y"],n);var f=a("z")||a("marker.color");f&&a("histfunc"),a("histnorm"),a("autobinx"),a("autobiny")}});var Lj=N((vIe,qj)=>{"use strict";var G4e=Le(),V4e=f6(),Y4e=Vw(),j4e=fl(),W4e=R0(),Z4e=Sg();qj.exports=function(r,t,a,n){function i(o,l){return G4e.coerce(r,t,Z4e,o,l)}V4e(r,t,i,n),t.visible!==!1&&(Y4e(r,t,i,n),j4e(r,t,n,i,{prefix:"",cLetter:"z"}),i("hovertemplate"),i("hovertemplatefallback"),W4e(i,n),i("xhoverformat"),i("yhoverformat"))}});var Dj=N((hIe,Ej)=>{"use strict";var X4e=wg(),Cj=zr().hoverLabelText;Ej.exports=function(r,t,a,n,i){var o=X4e(r,t,a,n,i);if(o){r=o[0];var l=r.index,s=l[0],u=l[1],f=r.cd[0],c=f.trace,v=f.xRanges[u],d=f.yRanges[s];return r.xLabel=Cj(r.xa,[v[0],v[1]],c.xhoverformat),r.yLabel=Cj(r.ya,[d[0],d[1]],c.yhoverformat),o}}});var Pj=N((dIe,Rj)=>{"use strict";Rj.exports={attributes:Sg(),supplyDefaults:Lj(),crossTraceDefaults:Mg(),calc:yg(),plot:bg(),layerName:"heatmaplayer",colorbar:a6(),style:xg(),hoverPoints:Dj(),eventData:s6(),moduleType:"trace",name:"histogram2d",basePlotModule:Li(),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{}}});var Nj=N((pIe,Fj)=>{"use strict";Fj.exports=Pj()});var qg=N((yIe,zj)=>{"use strict";zj.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}});var Cg=N((mIe,Hj)=>{"use strict";var ia=D0(),Lg=wi(),Oj=eo(),c6=Oj.axisHoverFormat,J4e=Oj.descriptionOnlyNumbers,$4e=ko(),K4e=ui().dash,Q4e=ma(),Xc=bt().extendFlat,Bj=qg(),ewe=Bj.COMPARISON_OPS2,rwe=Bj.INTERVAL_OPS,Ij=Lg.line;Hj.exports=Xc({z:ia.z,x:ia.x,x0:ia.x0,dx:ia.dx,y:ia.y,y0:ia.y0,dy:ia.dy,xperiod:ia.xperiod,yperiod:ia.yperiod,xperiod0:Lg.xperiod0,yperiod0:Lg.yperiod0,xperiodalignment:ia.xperiodalignment,yperiodalignment:ia.yperiodalignment,text:ia.text,hovertext:ia.hovertext,transpose:ia.transpose,xtype:ia.xtype,ytype:ia.ytype,xhoverformat:c6("x"),yhoverformat:c6("y"),zhoverformat:c6("z",1),hovertemplate:ia.hovertemplate,hovertemplatefallback:ia.hovertemplatefallback,texttemplate:Xc({},ia.texttemplate,{}),texttemplatefallback:ia.texttemplatefallback,textfont:Xc({},ia.textfont,{}),hoverongaps:ia.hoverongaps,connectgaps:Xc({},ia.connectgaps,{}),fillcolor:{valType:"color",editType:"calc"},autocontour:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"contours.start":void 0,"contours.end":void 0,"contours.size":void 0}},ncontours:{valType:"integer",dflt:15,min:1,editType:"calc"},contours:{type:{valType:"enumerated",values:["levels","constraint"],dflt:"levels",editType:"calc"},start:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},end:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},size:{valType:"number",dflt:null,min:0,editType:"plot",impliedEdits:{"^autocontour":!1}},coloring:{valType:"enumerated",values:["fill","heatmap","lines","none"],dflt:"fill",editType:"calc"},showlines:{valType:"boolean",dflt:!0,editType:"plot"},showlabels:{valType:"boolean",dflt:!1,editType:"plot"},labelfont:Q4e({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:J4e("contour label")},operation:{valType:"enumerated",values:[].concat(ewe).concat(rwe),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:Xc({},Ij.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:K4e,smoothing:Xc({},Ij.smoothing,{}),editType:"plot"},zorder:Lg.zorder},$4e("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))});var h6=N((gIe,Gj)=>{"use strict";var $a=Sg(),Go=Cg(),twe=ko(),v6=eo().axisHoverFormat,Uj=bt().extendFlat;Gj.exports=Uj({x:$a.x,y:$a.y,z:$a.z,marker:$a.marker,histnorm:$a.histnorm,histfunc:$a.histfunc,nbinsx:$a.nbinsx,xbins:$a.xbins,nbinsy:$a.nbinsy,ybins:$a.ybins,autobinx:$a.autobinx,autobiny:$a.autobiny,bingroup:$a.bingroup,xbingroup:$a.xbingroup,ybingroup:$a.ybingroup,autocontour:Go.autocontour,ncontours:Go.ncontours,contours:Go.contours,line:{color:Go.line.color,width:Uj({},Go.line.width,{dflt:.5}),dash:Go.line.dash,smoothing:Go.line.smoothing,editType:"plot"},xhoverformat:v6("x"),yhoverformat:v6("y"),zhoverformat:v6("z",1),hovertemplate:$a.hovertemplate,hovertemplatefallback:$a.hovertemplatefallback,texttemplate:Go.texttemplate,texttemplatefallback:Go.texttemplatefallback,textfont:Go.textfont},twe("",{cLetter:"z",editTypeOverride:"calc"}))});var d6=N((bIe,Vj)=>{"use strict";Vj.exports=function(r,t,a,n){var i=n("contours.start"),o=n("contours.end"),l=i===!1||o===!1,s=a("contours.size"),u;l?u=t.autocontour=!0:u=a("autocontour",!1),(u||!s)&&a("ncontours")}});var p6=N((xIe,Yj)=>{"use strict";var awe=Le();Yj.exports=function(r,t,a,n){n||(n={});var i=r("contours.showlabels");if(i){var o=t.font;awe.coerceFont(r,"contours.labelfont",o,{overrideDflt:{color:a}}),r("contours.labelformat")}n.hasHover!==!1&&r("zhoverformat")}});var y6=N((_Ie,jj)=>{"use strict";var nwe=fl(),iwe=p6();jj.exports=function(r,t,a,n,i){var o=a("contours.coloring"),l,s="";o==="fill"&&(l=a("contours.showlines")),l!==!1&&(o!=="lines"&&(s=a("line.color","#000")),a("line.width",.5),a("line.dash")),o!=="none"&&(r.showlegend!==!0&&(t.showlegend=!1),t._dfltShowLegend=!1,nwe(r,t,n,a,{prefix:"",cLetter:"z"})),a("line.smoothing"),iwe(a,n,s,i)}});var Jj=N((wIe,Xj)=>{"use strict";var Wj=Le(),owe=f6(),lwe=d6(),swe=y6(),uwe=R0(),Zj=h6();Xj.exports=function(r,t,a,n){function i(l,s){return Wj.coerce(r,t,Zj,l,s)}function o(l){return Wj.coerce2(r,t,Zj,l)}owe(r,t,i,n),t.visible!==!1&&(lwe(r,t,i,o),swe(r,t,i,n),i("xhoverformat"),i("yhoverformat"),i("hovertemplate"),i("hovertemplatefallback"),t.contours&&t.contours.coloring==="heatmap"&&uwe(i,n))}});var Qj=N((TIe,Kj)=>{"use strict";var g6=zr(),m6=Le();Kj.exports=function(r,t){var a=r.contours;if(r.autocontour){var n=r.zmin,i=r.zmax;(r.zauto||n===void 0)&&(n=m6.aggNums(Math.min,null,t)),(r.zauto||i===void 0)&&(i=m6.aggNums(Math.max,null,t));var o=$j(n,i,r.ncontours);a.size=o.dtick,a.start=g6.tickFirst(o),o.range.reverse(),a.end=g6.tickFirst(o),a.start===n&&(a.start+=a.size),a.end===i&&(a.end-=a.size),a.start>a.end&&(a.start=a.end=(a.start+a.end)/2),r._input.contours||(r._input.contours={}),m6.extendFlat(r._input.contours,{start:a.start,end:a.end,size:a.size}),r._input.autocontour=!0}else if(a.type!=="constraint"){var l=a.start,s=a.end,u=r._input.contours;if(l>s&&(a.start=u.start=s,s=a.end=u.end=l,l=a.start),!(a.size>0)){var f;l===s?f=1:f=$j(l,s,r.ncontours).dtick,u.size=a.size=f}}};function $j(e,r,t){var a={type:"linear",range:[e,r]};return g6.autoTicks(a,(r-e)/(t||15)),a}});var I0=N((AIe,eW)=>{"use strict";eW.exports=function(r){return r.end+r.size/1e6}});var b6=N((MIe,tW)=>{"use strict";var rW=So(),fwe=yg(),cwe=Qj(),vwe=I0();tW.exports=function(r,t){var a=fwe(r,t),n=a[0].z;cwe(t,n);var i=t.contours,o=rW.extractOpts(t),l;if(i.coloring==="heatmap"&&o.auto&&t.autocontour===!1){var s=i.start,u=vwe(i),f=i.size||1,c=Math.floor((u-s)/f)+1;isFinite(f)||(f=1,c=1);var v=s-f/2,d=v+c*f;l=[v,d]}else l=n;return rW.calc(r,t,{vals:l,cLetter:"z"}),a}});var Eg=N((kIe,aW)=>{"use strict";aW.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}});var iW=N((SIe,nW)=>{"use strict";var Dg=Eg();nW.exports=function(r){var t=r[0].z,a=t.length,n=t[0].length,i=a===2||n===2,o,l,s,u,f,c,v,d,p;for(l=0;le?0:1)+(r[0][1]>e?0:2)+(r[1][1]>e?0:4)+(r[1][0]>e?0:8);if(t===5||t===10){var a=(r[0][0]+r[0][1]+r[1][0]+r[1][1])/4;return e>a?t===5?713:1114:t===5?104:208}return t===15?0:t}});var uW=N((qIe,sW)=>{"use strict";var Rg=Le(),Jc=Eg();sW.exports=function(r,t,a){var n,i,o,l,s;for(t=t||.01,a=a||.01,o=0;o20?(o=Jc.CHOOSESADDLE[o][(l[0]||l[1])<0?0:1],e.crossings[i]=Jc.SADDLEREMAINDER[o]):delete e.crossings[i],l=Jc.NEWDELTA[o],!l){Rg.log("Found bad marching index:",o,r,e.level);break}s.push(lW(e,r,l)),r[0]+=l[0],r[1]+=l[1],i=r.join(","),O0(s[s.length-1],s[s.length-2],a,n)&&s.pop();var p=l[0]&&(r[0]<0||r[0]>f-2)||l[1]&&(r[1]<0||r[1]>u-2),y=r[0]===c[0]&&r[1]===c[1]&&l[0]===v[0]&&l[1]===v[1];if(y||t&&p)break;o=e.crossings[i]}d===1e4&&Rg.log("Infinite loop in contour?");var m=O0(s[0],s[s.length-1],a,n),x=0,w=.2*e.smoothing,_=[],b=0,T,k,M,q,E,D,P,R,z,O,B;for(d=1;d=b;d--)if(T=_[d],T=b&&T+_[k]R&&z--,e.edgepaths[z]=B.concat(s,O));break}V||(e.edgepaths[R]=s.concat(O))}for(R=0;R20&&r?e===208||e===1114?a=t[0]===0?1:-1:n=t[1]===0?1:-1:Jc.BOTTOMSTART.indexOf(e)!==-1?n=1:Jc.LEFTSTART.indexOf(e)!==-1?a=1:Jc.TOPSTART.indexOf(e)!==-1?n=-1:a=-1,[a,n]}function lW(e,r,t){var a=r[0]+Math.max(t[0],0),n=r[1]+Math.max(t[1],0),i=e.z[n][a],o=e.xaxis,l=e.yaxis;if(t[1]){var s=(e.level-i)/(e.z[n][a+1]-i),u=(s!==1?(1-s)*o.c2l(e.x[a]):0)+(s!==0?s*o.c2l(e.x[a+1]):0);return[o.c2p(o.l2c(u),!0),l.c2p(e.y[n],!0),a+s,n]}else{var f=(e.level-i)/(e.z[n+1][a]-i),c=(f!==1?(1-f)*l.c2l(e.y[n]):0)+(f!==0?f*l.c2l(e.y[n+1]):0);return[o.c2p(e.x[a],!0),l.c2p(l.l2c(c),!0),a,n+f]}}});var hW=N((LIe,vW)=>{"use strict";var x6=qg(),ywe=Rr();vW.exports={"[]":fW("[]"),"][":fW("]["),">":_6(">"),"<":_6("<"),"=":_6("=")};function cW(e,r){var t=Array.isArray(r),a;function n(i){return ywe(i)?+i:null}return x6.COMPARISON_OPS2.indexOf(e)!==-1?a=n(t?r[0]:r):x6.INTERVAL_OPS.indexOf(e)!==-1?a=t?[n(r[0]),n(r[1])]:[n(r),n(r)]:x6.SET_OPS.indexOf(e)!==-1&&(a=t?r.map(n):[n(r)]),a}function fW(e){return function(r){r=cW(e,r);var t=Math.min(r[0],r[1]),a=Math.max(r[0],r[1]);return{start:t,end:a,size:a-t}}}function _6(e){return function(r){return r=cW(e,r),{start:r,end:1/0,size:1/0}}}});var yW=N((CIe,pW)=>{"use strict";var dW=Le(),mwe=hW(),gwe=I0();pW.exports=function(r,t,a){for(var n=r.type==="constraint"?mwe[r._operation](r.value):r,i=n.size,o=[],l=gwe(n),s=a.trace._carpetTrace,u=s?{xaxis:s.aaxis,yaxis:s.baxis,x:a.a,y:a.b}:{xaxis:t.xaxis,yaxis:t.yaxis,x:a.x,y:a.y},f=n.start;f1e3){dW.warn("Too many contours, clipping at 1000",r);break}return o}});var bW=N((EIe,gW)=>{"use strict";var $c=Le();gW.exports=function(e,r){var t,a,n,i=function(s){return s.reverse()},o=function(s){return s};switch(r){case"=":case"<":return e;case">":for(e.length!==1&&$c.warn("Contour data invalid for the specified inequality operation."),a=e[0],t=0;t{"use strict";xW.exports=function(e,r){var t=e[0],a=t.z,n;switch(r.type){case"levels":var i=Math.min(a[0][0],a[0][1]);for(n=0;no.level||o.starts.length&&i===o.level)}break;case"constraint":if(t.prefixBoundary=!1,t.edgepaths.length)return;var l=t.x.length,s=t.y.length,u=-1/0,f=1/0;for(n=0;n":c>u&&(t.prefixBoundary=!0);break;case"<":(cu||t.starts.length&&d===f)&&(t.prefixBoundary=!0);break;case"][":v=Math.min(c[0],c[1]),d=Math.max(c[0],c[1]),vu&&(t.prefixBoundary=!0);break}break}}});var w6=N(hn=>{"use strict";var H0=Sr(),Pa=Le(),Al=jr(),bwe=So(),AW=Ea(),wW=zr(),TW=$f(),xwe=bg(),MW=iW(),kW=uW(),_we=yW(),wwe=bW(),SW=_W(),B0=Eg(),Vo=B0.LABELOPTIMIZER;hn.plot=function(r,t,a,n){var i=t.xaxis,o=t.yaxis;Pa.makeTraceGroups(n,a,"contour").each(function(l){var s=H0.select(this),u=l[0],f=u.trace,c=u.x,v=u.y,d=f.contours,p=_we(d,t,u),y=Pa.ensureSingle(s,"g","heatmapcoloring"),m=[];d.coloring==="heatmap"&&(m=[l]),xwe(r,t,m,y),MW(p),kW(p);var x=i.c2p(c[0],!0),w=i.c2p(c[c.length-1],!0),_=o.c2p(v[0],!0),b=o.c2p(v[v.length-1],!0),T=[[x,b],[w,b],[w,_],[x,_]],k=p;d.type==="constraint"&&(k=wwe(p,d._operation)),Twe(s,T,d),Awe(s,k,T,d),Mwe(s,p,r,u,d),Swe(s,t,r,u,T)})};function Twe(e,r,t){var a=Pa.ensureSingle(e,"g","contourbg"),n=a.selectAll("path").data(t.coloring==="fill"?[0]:[]);n.enter().append("path"),n.exit().remove(),n.attr("d","M"+r.join("L")+"Z").style("stroke","none")}function Awe(e,r,t,a){var n=a.coloring==="fill"||a.type==="constraint"&&a._operation!=="=",i="M"+t.join("L")+"Z";n&&SW(r,a);var o=Pa.ensureSingle(e,"g","contourfill"),l=o.selectAll("path").data(n?r:[]);l.enter().append("path"),l.exit().remove(),l.each(function(s){var u=(s.prefixBoundary?i:"")+qW(s,t);u?H0.select(this).attr("d",u).style("stroke","none"):H0.select(this).remove()})}function qW(e,r){var t="",a=0,n=e.edgepaths.map(function(x,w){return w}),i=!0,o,l,s,u,f,c;function v(x){return Math.abs(x[1]-r[0][1])<.01}function d(x){return Math.abs(x[1]-r[2][1])<.01}function p(x){return Math.abs(x[0]-r[0][0])<.01}function y(x){return Math.abs(x[0]-r[2][0])<.01}for(;n.length;){for(c=Al.smoothopen(e.edgepaths[a],e.smoothing),t+=i?c:c.replace(/^M/,"L"),n.splice(n.indexOf(a),1),o=e.edgepaths[a][e.edgepaths[a].length-1],u=-1,s=0;s<4;s++){if(!o){Pa.log("Missing end?",a,e);break}for(v(o)&&!y(o)?l=r[1]:p(o)?l=r[0]:d(o)?l=r[3]:y(o)&&(l=r[2]),f=0;f=0&&(l=m,u=f):Math.abs(o[1]-l[1])<.01?Math.abs(o[1]-m[1])<.01&&(m[0]-o[0])*(l[0]-m[0])>=0&&(l=m,u=f):Pa.log("endpt to newendpt is not vert. or horz.",o,l,m)}if(o=l,u>=0)break;t+="L"+l}if(u===e.edgepaths.length){Pa.log("unclosed perimeter path");break}a=u,i=n.indexOf(a)===-1,i&&(a=n[0],t+="Z")}for(a=0;aVo.MAXCOST*2)break;v&&(l/=2),o=u-l/2,s=o+l*1.5}if(c<=Vo.MAXCOST)return f};function kwe(e,r,t,a){var n=r.width/2,i=r.height/2,o=e.x,l=e.y,s=e.theta,u=Math.cos(s)*n,f=Math.sin(s)*n,c=(o>a.center?a.right-o:o-a.left)/(u+Math.abs(Math.sin(s)*i)),v=(l>a.middle?a.bottom-l:l-a.top)/(Math.abs(f)+Math.cos(s)*i);if(c<1||v<1)return 1/0;var d=Vo.EDGECOST*(1/(c-1)+1/(v-1));d+=Vo.ANGLECOST*s*s;for(var p=o-u,y=l-f,m=o+u,x=l+f,w=0;w{"use strict";var Lwe=Sr(),T6=So(),Cwe=I0();LW.exports=function(r){var t=r.contours,a=t.start,n=Cwe(t),i=t.size||1,o=Math.floor((n-a)/i)+1,l=t.coloring==="lines"?0:1,s=T6.extractOpts(r);isFinite(i)||(i=1,o=1);var u=s.reversescale?T6.flipScale(s.colorscale):s.colorscale,f=u.length,c=new Array(f),v=new Array(f),d,p,y=s.min,m=s.max;if(t.coloring==="heatmap"){for(p=0;p=m)&&(a<=y&&(a=y),n>=m&&(n=m),o=Math.floor((n-a)/i)+1,l=0),p=0;py&&(c.unshift(y),v.unshift(v[0])),c[c.length-1]{"use strict";var Pg=Sr(),CW=jr(),Ewe=xg(),Dwe=A6();EW.exports=function(r){var t=Pg.select(r).selectAll("g.contour");t.style("opacity",function(a){return a[0].trace.opacity}),t.each(function(a){var n=Pg.select(this),i=a[0].trace,o=i.contours,l=i.line,s=o.size||1,u=o.start,f=o.type==="constraint",c=!f&&o.coloring==="lines",v=!f&&o.coloring==="fill",d=c||v?Dwe(i):null;n.selectAll("g.contourlevel").each(function(m){Pg.select(this).selectAll("path").call(CW.lineGroupStyle,l.width,c?d(m.level):l.color,l.dash)});var p=o.labelfont;if(n.selectAll("g.contourlabels text").each(function(m){CW.font(Pg.select(this),{weight:p.weight,style:p.style,variant:p.variant,textcase:p.textcase,lineposition:p.lineposition,shadow:p.shadow,family:p.family,size:p.size,color:p.color||(c?d(m.level):l.color)})}),f)n.selectAll("g.contourfill path").style("fill",i.fillcolor);else if(v){var y;n.selectAll("g.contourfill path").style("fill",function(m){return y===void 0&&(y=m.level),d(m.level+.5*s)}),y===void 0&&(y=u),n.selectAll("g.contourbg path").style("fill",d(y-.5*s))}}),Ewe(r)}});var k6=N((NIe,RW)=>{"use strict";var DW=So(),Rwe=A6(),Pwe=I0();function Fwe(e,r,t){var a=r.contours,n=r.line,i=a.size||1,o=a.coloring,l=Rwe(r,{isColorbar:!0});if(o==="heatmap"){var s=DW.extractOpts(r);t._fillgradient=s.reversescale?DW.flipScale(s.colorscale):s.colorscale,t._zrange=[s.min,s.max]}else o==="fill"&&(t._fillcolor=l);t._line={color:o==="lines"?l:n.color,width:a.showlines!==!1?n.width:0,dash:n.dash},t._levels={start:a.start,end:Pwe(a),size:i}}RW.exports={min:"zmin",max:"zmax",calc:Fwe}});var S6=N((zIe,PW)=>{"use strict";var Fg=Tr(),Nwe=wg();PW.exports=function(r,t,a,n,i){i||(i={}),i.isContour=!0;var o=Nwe(r,t,a,n,i);return o&&o.forEach(function(l){var s=l.trace;s.contours.type==="constraint"&&(s.fillcolor&&Fg.opacity(s.fillcolor)?l.color=Fg.addOpacity(s.fillcolor,1):s.contours.showlines&&Fg.opacity(s.line.color)&&(l.color=Fg.addOpacity(s.line.color,1)))}),o}});var NW=N((IIe,FW)=>{"use strict";FW.exports={attributes:h6(),supplyDefaults:Jj(),crossTraceDefaults:Mg(),calc:b6(),plot:w6().plot,layerName:"contourlayer",style:M6(),colorbar:k6(),hoverPoints:S6(),moduleType:"trace",name:"histogram2dcontour",basePlotModule:Li(),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{}}});var IW=N((OIe,zW)=>{"use strict";zW.exports=NW()});var YW=N((BIe,VW)=>{"use strict";var OW=Rr(),zwe=p6(),UW=Tr(),BW=UW.addOpacity,Iwe=UW.opacity,GW=qg(),HW=Le().isArrayOrTypedArray,Owe=GW.CONSTRAINT_REDUCTION,Bwe=GW.COMPARISON_OPS2;VW.exports=function(r,t,a,n,i,o){var l=t.contours,s,u,f,c=a("contours.operation");if(l._operation=Owe[c],Hwe(a,l),c==="="?s=l.showlines=!0:(s=a("contours.showlines"),f=a("fillcolor",BW((r.line||{}).color||i,.5))),s){var v=f&&Iwe(f)?BW(t.fillcolor,1):i;u=a("line.color",v),a("line.width",2),a("line.dash")}a("line.smoothing"),zwe(a,n,u,o)};function Hwe(e,r){var t;Bwe.indexOf(r.operation)===-1?(e("contours.value",[0,1]),HW(r.value)?r.value.length>2?r.value=r.value.slice(2):r.length===0?r.value=[0,1]:r.length<2?(t=parseFloat(r.value[0]),r.value=[t,t+1]):r.value=[parseFloat(r.value[0]),parseFloat(r.value[1])]:OW(r.value)&&(t=parseFloat(r.value),r.value=[t,t+1])):(e("contours.value",0),OW(r.value)||(HW(r.value)?r.value=parseFloat(r.value[0]):r.value=0))}});var ZW=N((HIe,WW)=>{"use strict";var q6=Le(),Uwe=Gw(),Gwe=gc(),Vwe=YW(),Ywe=d6(),jwe=y6(),Wwe=R0(),jW=Cg();WW.exports=function(r,t,a,n){function i(u,f){return q6.coerce(r,t,jW,u,f)}function o(u){return q6.coerce2(r,t,jW,u)}var l=Uwe(r,t,i,n);if(!l){t.visible=!1;return}Gwe(r,t,n,i),i("xhoverformat"),i("yhoverformat"),i("text"),i("hovertext"),i("hoverongaps"),i("hovertemplate"),i("hovertemplatefallback");var s=i("contours.type")==="constraint";i("connectgaps",q6.isArray1D(t.z)),s?Vwe(r,t,i,n,a):(Ywe(r,t,i,o),jwe(r,t,i,n)),t.contours&&t.contours.coloring==="heatmap"&&Wwe(i,n),i("zorder")}});var JW=N((UIe,XW)=>{"use strict";XW.exports={attributes:Cg(),supplyDefaults:ZW(),calc:b6(),plot:w6().plot,style:M6(),colorbar:k6(),hoverPoints:S6(),moduleType:"trace",name:"contour",basePlotModule:Li(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}});var KW=N((GIe,$W)=>{"use strict";$W.exports=JW()});var L6=N((VIe,rZ)=>{"use strict";var{hovertemplateAttrs:Zwe,texttemplateAttrs:Xwe,templatefallbackAttrs:QW}=Yn(),Jwe=Fy(),ni=wi(),$we=gn(),eZ=ko(),Kwe=ui().dash,gs=bt().extendFlat,Fi=ni.marker,U0=ni.line,Qwe=Fi.line;rZ.exports={a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},c:{valType:"data_array",editType:"calc"},sum:{valType:"number",dflt:0,min:0,editType:"calc"},mode:gs({},ni.mode,{dflt:"markers"}),text:gs({},ni.text,{}),texttemplate:Xwe({editType:"plot"},{keys:["a","b","c","text"]}),texttemplatefallback:QW({editType:"plot"}),hovertext:gs({},ni.hovertext,{}),line:{color:U0.color,width:U0.width,dash:Kwe,backoff:U0.backoff,shape:gs({},U0.shape,{values:["linear","spline"]}),smoothing:U0.smoothing,editType:"calc"},connectgaps:ni.connectgaps,cliponaxis:ni.cliponaxis,fill:gs({},ni.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:Jwe(),marker:gs({symbol:Fi.symbol,opacity:Fi.opacity,angle:Fi.angle,angleref:Fi.angleref,standoff:Fi.standoff,maxdisplayed:Fi.maxdisplayed,size:Fi.size,sizeref:Fi.sizeref,sizemin:Fi.sizemin,sizemode:Fi.sizemode,line:gs({width:Qwe.width,editType:"calc"},eZ("marker.line")),gradient:Fi.gradient,editType:"calc"},eZ("marker")),textfont:ni.textfont,textposition:ni.textposition,selected:ni.selected,unselected:ni.unselected,hoverinfo:gs({},$we.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:ni.hoveron,hovertemplate:Zwe(),hovertemplatefallback:QW()}});var iZ=N((YIe,nZ)=>{"use strict";var tZ=Le(),e6e=Wh(),Kc=Dn(),r6e=Y_(),t6e=j_(),aZ=W_(),a6e=Z_(),n6e=X_(),i6e=L6();nZ.exports=function(r,t,a,n){function i(v,d){return tZ.coerce(r,t,i6e,v,d)}var o=i("a"),l=i("b"),s=i("c"),u;if(o?(u=o.length,l?(u=Math.min(u,l.length),s&&(u=Math.min(u,s.length))):s?u=Math.min(u,s.length):u=0):l&&s&&(u=Math.min(l.length,s.length)),!u){t.visible=!1;return}t._length=u,i("sum"),i("text"),i("hovertext"),t.hoveron!=="fills"&&(i("hovertemplate"),i("hovertemplatefallback"));var f=u{"use strict";var C6=zr();oZ.exports=function(r,t,a){var n={},i=a[t.subplot]._subplot;return n.aLabel=C6.tickText(i.aaxis,r.a,!0).text,n.bLabel=C6.tickText(i.baxis,r.b,!0).text,n.cLabel=C6.tickText(i.caxis,r.c,!0).text,n}});var cZ=N((WIe,fZ)=>{"use strict";var E6=Rr(),o6e=K_(),l6e=fm(),s6e=cm(),u6e=vm().calcMarkerSize,sZ=["a","b","c"],uZ={a:["b","c"],b:["a","c"],c:["a","b"]};fZ.exports=function(r,t){var a=r._fullLayout[t.subplot],n=a.sum,i=t.sum||n,o={a:t.a,b:t.b,c:t.c},l=t.ids,s,u,f,c,v,d;for(s=0;s{"use strict";var f6e=f4();vZ.exports=function(r,t,a){var n=t.plotContainer;n.select(".scatterlayer").selectAll("*").remove();for(var i=t.xaxis,o=t.yaxis,l={xaxis:i,yaxis:o,plot:n,layerClipId:t._hasClipOnAxisFalse?t.clipIdRelative:null},s=t.layers.frontplot.select("g.scatterlayer"),u=0;u{"use strict";var c6e=y4();dZ.exports=function(r,t,a,n){var i=c6e(r,t,a,n);if(!i||i[0].index===!1)return;var o=i[0];if(o.index===void 0){var l=1-o.y0/r.ya._length,s=r.xa._length,u=s*l/2,f=s-u;return o.x0=Math.max(Math.min(o.x0,f),u),o.x1=Math.max(Math.min(o.x1,f),u),i}var c=o.cd[o.index],v=o.trace,d=o.subplot;o.a=c.a,o.b=c.b,o.c=c.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var p={};p[v.subplot]={_subplot:d};var y=v._module.formatLabels(c,v,p);o.aLabel=y.aLabel,o.bLabel=y.bLabel,o.cLabel=y.cLabel;var m=c.hi||v.hoverinfo,x=[];function w(b,T){x.push(b._hovertitle+": "+T)}if(!v.hovertemplate){var _=m.split("+");_.indexOf("all")!==-1&&(_=["a","b","c"]),_.indexOf("a")!==-1&&w(d.aaxis,o.aLabel),_.indexOf("b")!==-1&&w(d.baxis,o.bLabel),_.indexOf("c")!==-1&&w(d.caxis,o.cLabel)}return o.extraText=x.join("
"),o.hovertemplate=v.hovertemplate,i}});var mZ=N((JIe,yZ)=>{"use strict";yZ.exports=function(r,t,a,n,i){if(t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),n[i]){var o=n[i];r.a=o.a,r.b=o.b,r.c=o.c}else r.a=t.a,r.b=t.b,r.c=t.c;return r}});var qZ=N(($Ie,SZ)=>{"use strict";var TZ=Sr(),v6e=kn(),D6=br(),Ml=Le(),Yo=Ml.strTranslate,Ng=Ml._,ev=Tr(),zg=jr(),G0=$f(),R6=bt().extendFlat,h6e=ta(),bs=zr(),gZ=pi(),bZ=Pn(),AZ=xu(),xZ=AZ.freeMode,d6e=AZ.rectMode,P6=Jf(),p6e=zo().prepSelect,y6e=zo().selectOnClick,m6e=zo().clearOutline,g6e=zo().clearSelectionsCache,MZ=Ca();function kZ(e,r){this.id=e.id,this.graphDiv=e.graphDiv,this.init(r),this.makeFramework(r),this.updateFx(r),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}SZ.exports=kZ;var jo=kZ.prototype;jo.init=function(e){this.container=e._ternarylayer,this.defs=e._defs,this.layoutId=e._uid,this.traceHash={},this.layers={}};jo.plot=function(e,r){var t=this,a=r[t.id],n=r._size;t._hasClipOnAxisFalse=!1;for(var i=0;iQc*u?(x=u,m=x*Qc):(m=s,x=m/Qc),w=o*m/s,_=l*x/u,p=r.l+r.w*n-m/2,y=r.t+r.h*(1-i)-x/2,t.x0=p,t.y0=y,t.w=m,t.h=x,t.sum=f,t.xaxis={type:"linear",range:[c+2*d-f,f-c-2*v],domain:[n-w/2,n+w/2],_id:"x"},G0(t.xaxis,t.graphDiv._fullLayout),t.xaxis.setScale(),t.xaxis.isPtWithinRange=function(O){return O.a>=t.aaxis.range[0]&&O.a<=t.aaxis.range[1]&&O.b>=t.baxis.range[1]&&O.b<=t.baxis.range[0]&&O.c>=t.caxis.range[1]&&O.c<=t.caxis.range[0]},t.yaxis={type:"linear",range:[c,f-v-d],domain:[i-_/2,i+_/2],_id:"y"},G0(t.yaxis,t.graphDiv._fullLayout),t.yaxis.setScale(),t.yaxis.isPtWithinRange=function(){return!0};var b=t.yaxis.domain[0],T=t.aaxis=R6({},e.aaxis,{range:[c,f-v-d],side:"left",tickangle:(+e.aaxis.tickangle||0)-30,domain:[b,b+_*Qc],anchor:"free",position:0,_id:"y",_length:m});G0(T,t.graphDiv._fullLayout),T.setScale();var k=t.baxis=R6({},e.baxis,{range:[f-c-d,v],side:"bottom",domain:t.xaxis.domain,anchor:"free",position:0,_id:"x",_length:m});G0(k,t.graphDiv._fullLayout),k.setScale();var M=t.caxis=R6({},e.caxis,{range:[f-c-v,d],side:"right",tickangle:(+e.caxis.tickangle||0)+30,domain:[b,b+_*Qc],anchor:"free",position:0,_id:"y",_length:m});G0(M,t.graphDiv._fullLayout),M.setScale();var q="M"+p+","+(y+x)+"h"+m+"l-"+m/2+",-"+x+"Z";t.clipDef.select("path").attr("d",q),t.layers.plotbg.select("path").attr("d",q);var E="M0,"+x+"h"+m+"l-"+m/2+",-"+x+"Z";t.clipDefRelative.select("path").attr("d",E);var D=Yo(p,y);t.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",D),t.clipDefRelative.select("path").attr("transform",null);var P=Yo(p-k._offset,y+x);t.layers.baxis.attr("transform",P),t.layers.bgrid.attr("transform",P);var R=Yo(p+m/2,y)+"rotate(30)"+Yo(0,-T._offset);t.layers.aaxis.attr("transform",R),t.layers.agrid.attr("transform",R);var z=Yo(p+m/2,y)+"rotate(-30)"+Yo(0,-M._offset);t.layers.caxis.attr("transform",z),t.layers.cgrid.attr("transform",z),t.drawAxes(!0),t.layers.aline.select("path").attr("d",T.showline?"M"+p+","+(y+x)+"l"+m/2+",-"+x:"M0,0").call(ev.stroke,T.linecolor||"#000").style("stroke-width",(T.linewidth||0)+"px"),t.layers.bline.select("path").attr("d",k.showline?"M"+p+","+(y+x)+"h"+m:"M0,0").call(ev.stroke,k.linecolor||"#000").style("stroke-width",(k.linewidth||0)+"px"),t.layers.cline.select("path").attr("d",M.showline?"M"+(p+m/2)+","+y+"l"+m/2+","+x:"M0,0").call(ev.stroke,M.linecolor||"#000").style("stroke-width",(M.linewidth||0)+"px"),t.graphDiv._context.staticPlot||t.initInteractions(),zg.setClipUrl(t.layers.frontplot,t._hasClipOnAxisFalse?null:t.clipId,t.graphDiv)};jo.drawAxes=function(e){var r=this,t=r.graphDiv,a=r.id.substr(7)+"title",n=r.layers,i=r.aaxis,o=r.baxis,l=r.caxis;if(r.drawAx(i),r.drawAx(o),r.drawAx(l),e){var s=Math.max(i.showticklabels?i.tickfont.size/2:0,(l.showticklabels?l.tickfont.size*.75:0)+(l.ticks==="outside"?l.ticklen*.87:0)),u=(o.showticklabels?o.tickfont.size:0)+(o.ticks==="outside"?o.ticklen:0)+3;n["a-title"]=P6.draw(t,"a"+a,{propContainer:i,propName:r.id+".aaxis.title.text",placeholder:Ng(t,"Click to enter Component A title"),attributes:{x:r.x0+r.w/2,y:r.y0-i.title.font.size/3-s,"text-anchor":"middle"}}),n["b-title"]=P6.draw(t,"b"+a,{propContainer:o,propName:r.id+".baxis.title.text",placeholder:Ng(t,"Click to enter Component B title"),attributes:{x:r.x0-u,y:r.y0+r.h+o.title.font.size*.83+u,"text-anchor":"middle"}}),n["c-title"]=P6.draw(t,"c"+a,{propContainer:l,propName:r.id+".caxis.title.text",placeholder:Ng(t,"Click to enter Component C title"),attributes:{x:r.x0+r.w+u,y:r.y0+r.h+l.title.font.size*.83+u,"text-anchor":"middle"}})}};jo.drawAx=function(e){var r=this,t=r.graphDiv,a=e._name,n=a.charAt(0),i=e._id,o=r.layers[a],l=30,s=n+"tickLayout",u=b6e(e);r[s]!==u&&(o.selectAll("."+i+"tick").remove(),r[s]=u),e.setScale();var f=bs.calcTicks(e),c=bs.clipEnds(e,f),v=bs.makeTransTickFn(e),d=bs.getTickSigns(e)[2],p=Ml.deg2rad(l),y=d*(e.linewidth||1)/2,m=d*e.ticklen,x=r.w,w=r.h,_=n==="b"?"M0,"+y+"l"+Math.sin(p)*m+","+Math.cos(p)*m:"M"+y+",0l"+Math.cos(p)*m+","+-Math.sin(p)*m,b={a:"M0,0l"+w+",-"+x/2,b:"M0,0l-"+x/2+",-"+w,c:"M0,0l-"+w+","+x/2}[n];bs.drawTicks(t,e,{vals:e.ticks==="inside"?c:f,layer:o,path:_,transFn:v,crisp:!1}),bs.drawGrid(t,e,{vals:c,layer:r.layers[n+"grid"],path:b,transFn:v,crisp:!1}),bs.drawLabels(t,e,{vals:f,layer:o,transFn:v,labelFns:bs.makeLabelFns(e,0,l)})};function b6e(e){return e.ticks+String(e.ticklen)+String(e.showticklabels)}var qa=MZ.MINZOOM/2+.87,x6e="m-0.87,.5h"+qa+"v3h-"+(qa+5.2)+"l"+(qa/2+2.6)+",-"+(qa*.87+4.5)+"l2.6,1.5l-"+qa/2+","+qa*.87+"Z",_6e="m0.87,.5h-"+qa+"v3h"+(qa+5.2)+"l-"+(qa/2+2.6)+",-"+(qa*.87+4.5)+"l-2.6,1.5l"+qa/2+","+qa*.87+"Z",w6e="m0,1l"+qa/2+","+qa*.87+"l2.6,-1.5l-"+(qa/2+2.6)+",-"+(qa*.87+4.5)+"l-"+(qa/2+2.6)+","+(qa*.87+4.5)+"l2.6,1.5l"+qa/2+",-"+qa*.87+"Z",T6e="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",_Z=!0;jo.clearOutline=function(){g6e(this.dragOptions),m6e(this.dragOptions.gd)};jo.initInteractions=function(){var e=this,r=e.layers.plotbg.select("path").node(),t=e.graphDiv,a=t._fullLayout._zoomlayer,n,i;this.dragOptions={element:r,gd:t,plotinfo:{id:e.id,domain:t._fullLayout[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis},subplot:e.id,prepFn:function(P,R,z){e.dragOptions.xaxes=[e.xaxis],e.dragOptions.yaxes=[e.yaxis],n=t._fullLayout._invScaleX,i=t._fullLayout._invScaleY;var O=e.dragOptions.dragmode=t._fullLayout.dragmode;xZ(O)?e.dragOptions.minDrag=1:e.dragOptions.minDrag=void 0,O==="zoom"?(e.dragOptions.moveFn=k,e.dragOptions.clickFn=x,e.dragOptions.doneFn=M,w(P,R,z)):O==="pan"?(e.dragOptions.moveFn=E,e.dragOptions.clickFn=x,e.dragOptions.doneFn=D,q(),e.clearOutline(t)):(d6e(O)||xZ(O))&&p6e(P,R,z,e.dragOptions,O)}};var o,l,s,u,f,c,v,d,p,y;function m(P){var R={};return R[e.id+".aaxis.min"]=P.a,R[e.id+".baxis.min"]=P.b,R[e.id+".caxis.min"]=P.c,R}function x(P,R){var z=t._fullLayout.clickmode;wZ(t),P===2&&(t.emit("plotly_doubleclick",null),D6.call("_guiRelayout",t,m({a:0,b:0,c:0}))),z.indexOf("select")>-1&&P===1&&y6e(R,t,[e.xaxis],[e.yaxis],e.id,e.dragOptions),z.indexOf("event")>-1&&bZ.click(t,R,e.id)}function w(P,R,z){var O=r.getBoundingClientRect();o=R-O.left,l=z-O.top,t._fullLayout._calcInverseTransform(t);var B=t._fullLayout._invTransform,Y=Ml.apply3DTransform(B)(o,l);o=Y[0],l=Y[1],s={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},f=s,u=e.aaxis.range[1]-s.a,c=v6e(e.graphDiv._fullLayout[e.id].bgcolor).getLuminance(),v="M0,"+e.h+"L"+e.w/2+", 0L"+e.w+","+e.h+"Z",d=!1,p=a.append("path").attr("class","zoombox").attr("transform",Yo(e.x0,e.y0)).style({fill:c>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",v),y=a.append("path").attr("class","zoombox-corners").attr("transform",Yo(e.x0,e.y0)).style({fill:ev.background,stroke:ev.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),e.clearOutline(t)}function _(P,R){return 1-R/e.h}function b(P,R){return 1-(P+(e.h-R)/Math.sqrt(3))/e.w}function T(P,R){return(P-(e.h-R)/Math.sqrt(3))/e.w}function k(P,R){var z=o+P*n,O=l+R*i,B=Math.max(0,Math.min(1,_(o,l),_(z,O))),Y=Math.max(0,Math.min(1,b(o,l),b(z,O))),G=Math.max(0,Math.min(1,T(o,l),T(z,O))),U=(B/2+G)*e.w,V=(1-B/2-Y)*e.w,J=(U+V)/2,Z=V-U,ee=(1-B)*e.h,fe=ee-Z/Qc;Z.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),y.transition().style("opacity",1).duration(200),d=!0),t.emit("plotly_relayouting",m(f))}function M(){wZ(t),f!==s&&(D6.call("_guiRelayout",t,m(f)),_Z&&t.data&&t._context.showTips&&(Ml.notifier(Ng(t,"Double-click to zoom back out"),"long"),_Z=!1))}function q(){s={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},f=s}function E(P,R){var z=P/e.xaxis._m,O=R/e.yaxis._m;f={a:s.a-O,b:s.b+(z+O)/2,c:s.c-(z-O)/2};var B=[f.a,f.b,f.c].sort(Ml.sorterAsc),Y={a:B.indexOf(f.a),b:B.indexOf(f.b),c:B.indexOf(f.c)};B[0]<0&&(B[1]+B[0]/2<0?(B[2]+=B[0]+B[1],B[0]=B[1]=0):(B[2]+=B[0]/2,B[1]+=B[0]/2,B[0]=0),f={a:B[Y.a],b:B[Y.b],c:B[Y.c]},R=(s.a-f.a)*e.yaxis._m,P=(s.c-f.c-s.b+f.b)*e.xaxis._m);var G=Yo(e.x0+P,e.y0+R);e.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",G);var U=Yo(-P,-R);e.clipDefRelative.select("path").attr("transform",U),e.aaxis.range=[f.a,e.sum-f.b-f.c],e.baxis.range=[e.sum-f.a-f.c,f.b],e.caxis.range=[e.sum-f.a-f.b,f.c],e.drawAxes(!1),e._hasClipOnAxisFalse&&e.plotContainer.select(".scatterlayer").selectAll(".trace").call(zg.hideOutsideRangePoints,e),t.emit("plotly_relayouting",m(f))}function D(){D6.call("_guiRelayout",t,m(f))}r.onmousemove=function(P){bZ.hover(t,P,e.id),t._fullLayout._lasthover=r,t._fullLayout._hoversubplot=e.id},r.onmouseout=function(P){t._dragging||gZ.unhover(t,P)},gZ.init(this.dragOptions)};function wZ(e){TZ.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}});var z6=N((KIe,LZ)=>{"use strict";var A6e=si(),M6e=zc().attributes,it=hi(),k6e=Ji().overrideAll,F6=bt().extendFlat,N6={title:{text:it.title.text,font:it.title.font},color:it.color,tickmode:it.minor.tickmode,nticks:F6({},it.nticks,{dflt:6,min:1}),tick0:it.tick0,dtick:it.dtick,tickvals:it.tickvals,ticktext:it.ticktext,ticks:it.ticks,ticklen:it.ticklen,tickwidth:it.tickwidth,tickcolor:it.tickcolor,ticklabelstep:it.ticklabelstep,showticklabels:it.showticklabels,labelalias:it.labelalias,showtickprefix:it.showtickprefix,tickprefix:it.tickprefix,showticksuffix:it.showticksuffix,ticksuffix:it.ticksuffix,showexponent:it.showexponent,exponentformat:it.exponentformat,minexponent:it.minexponent,separatethousands:it.separatethousands,tickfont:it.tickfont,tickangle:it.tickangle,tickformat:it.tickformat,tickformatstops:it.tickformatstops,hoverformat:it.hoverformat,showline:F6({},it.showline,{dflt:!0}),linecolor:it.linecolor,linewidth:it.linewidth,showgrid:F6({},it.showgrid,{dflt:!0}),gridcolor:it.gridcolor,gridwidth:it.gridwidth,griddash:it.griddash,layer:it.layer,min:{valType:"number",dflt:0,min:0}},Ig=LZ.exports=k6e({domain:M6e({name:"ternary"}),bgcolor:{valType:"color",dflt:A6e.background},sum:{valType:"number",dflt:1,min:0},aaxis:N6,baxis:N6,caxis:N6},"plot","from-root");Ig.uirevision={valType:"any",editType:"none"};Ig.aaxis.uirevision=Ig.baxis.uirevision=Ig.caxis.uirevision={valType:"any",editType:"none"}});var EZ=N((QIe,CZ)=>{"use strict";var S6e=Le(),q6e=_t(),L6e=zc().defaults;CZ.exports=function(r,t,a,n){var i=n.type,o=n.attributes,l=n.handleDefaults,s=n.partition||"x",u=t._subplots[i],f=u.length,c=f&&u[0].replace(/\d+$/,""),v,d;function p(w,_){return S6e.coerce(v,d,o,w,_)}for(var y=0;y{"use strict";var C6e=Tr(),E6e=_t(),Og=Le(),D6e=EZ(),R6e=u1(),P6e=f1(),F6e=l1(),N6e=o1(),z6e=b4(),RZ=z6(),DZ=["aaxis","baxis","caxis"];PZ.exports=function(r,t,a){D6e(r,t,a,{type:"ternary",attributes:RZ,handleDefaults:I6e,font:t.font,paper_bgcolor:t.paper_bgcolor})};function I6e(e,r,t,a){var n=t("bgcolor"),i=t("sum");a.bgColor=C6e.combine(n,a.paper_bgcolor);for(var o,l,s,u=0;u=i&&(f.min=0,c.min=0,v.min=0,e.aaxis&&delete e.aaxis.min,e.baxis&&delete e.baxis.min,e.caxis&&delete e.caxis.min)}function O6e(e,r,t,a){var n=RZ[r._name];function i(d,p){return Og.coerce(e,r,n,d,p)}i("uirevision",a.uirevision),r.type="linear";var o=i("color"),l=o!==n.color.dflt?o:t.font.color,s=r._name,u=s.charAt(0).toUpperCase(),f="Component "+u,c=i("title.text",f);r._hovertitle=c===f?c:u,Og.coerceFont(i,"title.font",t.font,{overrideDflt:{size:Og.bigFont(t.font.size),color:l}}),i("min"),N6e(e,r,i,"linear"),P6e(e,r,i,"linear"),R6e(e,r,i,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),F6e(e,r,i,{outerTicks:!0});var v=i("showticklabels");v&&(Og.coerceFont(i,"tickfont",t.font,{overrideDflt:{color:l}}),i("tickangle"),i("tickformat")),z6e(e,r,i,{dfltColor:o,bgColor:t.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:n}),i("hoverformat"),i("layer")}});var NZ=N(Ni=>{"use strict";var B6e=qZ(),H6e=Kp().getSubplotCalcData,U6e=Le().counterRegex,rv="ternary";Ni.name=rv;var G6e=Ni.attr="subplot";Ni.idRoot=rv;Ni.idRegex=Ni.attrRegex=U6e(rv);var V6e=Ni.attributes={};V6e[G6e]={valType:"subplotid",dflt:"ternary",editType:"calc"};Ni.layoutAttributes=z6();Ni.supplyLayoutDefaults=FZ();Ni.plot=function(r){for(var t=r._fullLayout,a=r.calcdata,n=t._subplots[rv],i=0;i{"use strict";zZ.exports={attributes:L6(),supplyDefaults:iZ(),colorbar:c0(),formatLabels:lZ(),calc:cZ(),plot:hZ(),style:Su().style,styleOnSelect:Su().styleOnSelect,hoverPoints:pZ(),selectPoints:m4(),eventData:mZ(),moduleType:"trace",name:"scatterternary",basePlotModule:NZ(),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}});var BZ=N((aOe,OZ)=>{"use strict";OZ.exports=IZ()});var I6=N((nOe,UZ)=>{"use strict";var va=lg(),tv=bt().extendFlat,HZ=eo().axisHoverFormat;UZ.exports={y:va.y,x:va.x,x0:va.x0,y0:va.y0,xhoverformat:HZ("x"),yhoverformat:HZ("y"),name:tv({},va.name,{}),orientation:tv({},va.orientation,{}),bandwidth:{valType:"number",min:0,editType:"calc"},scalegroup:{valType:"string",dflt:"",editType:"calc"},scalemode:{valType:"enumerated",values:["width","count"],dflt:"width",editType:"calc"},spanmode:{valType:"enumerated",values:["soft","hard","manual"],dflt:"soft",editType:"calc"},span:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:va.fillcolor,points:tv({},va.boxpoints,{}),jitter:tv({},va.jitter,{}),pointpos:tv({},va.pointpos,{}),width:tv({},va.width,{}),marker:va.marker,text:va.text,hovertext:va.hovertext,hovertemplate:va.hovertemplate,hovertemplatefallback:va.hovertemplatefallback,quartilemethod:va.quartilemethod,box:{visible:{valType:"boolean",dflt:!1,editType:"plot"},width:{valType:"number",min:0,max:1,dflt:.25,editType:"plot"},fillcolor:{valType:"color",editType:"style"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"style"},editType:"plot"},meanline:{visible:{valType:"boolean",dflt:!1,editType:"plot"},color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"plot"},side:{valType:"enumerated",values:["both","positive","negative"],dflt:"both",editType:"calc"},offsetgroup:va.offsetgroup,alignmentgroup:va.alignmentgroup,selected:va.selected,unselected:va.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style"},zorder:va.zorder}});var H6=N((iOe,GZ)=>{"use strict";var O6=sg(),B6=Le().extendFlat;GZ.exports={violinmode:B6({},O6.boxmode,{}),violingap:B6({},O6.boxgap,{}),violingroupgap:B6({},O6.boxgroupgap,{})}});var ZZ=N((oOe,WZ)=>{"use strict";var VZ=Le(),Y6e=Tr(),YZ=E0(),jZ=I6();WZ.exports=function(r,t,a,n){function i(T,k){return VZ.coerce(r,t,jZ,T,k)}function o(T,k){return VZ.coerce2(r,t,jZ,T,k)}if(YZ.handleSampleDefaults(r,t,i,n),t.visible!==!1){i("bandwidth"),i("side");var l=i("width");l||(i("scalegroup",t.name),i("scalemode"));var s=i("span"),u;Array.isArray(s)&&(u="manual"),i("spanmode",u);var f=i("line.color",(r.marker||{}).color||a),c=i("line.width"),v=i("fillcolor",Y6e.addOpacity(t.line.color,.5));YZ.handlePointsDefaults(r,t,i,{prefix:""});var d=o("box.width"),p=o("box.fillcolor",v),y=o("box.line.color",f),m=o("box.line.width",c),x=i("box.visible",!!(d||p||y||m));x||(t.box={visible:!1});var w=o("meanline.color",f),_=o("meanline.width",c),b=i("meanline.visible",!!(w||_));b||(t.meanline={visible:!1}),i("quartilemethod"),i("zorder")}}});var JZ=N((lOe,XZ)=>{"use strict";var j6e=Le(),W6e=H6(),Z6e=Lw();XZ.exports=function(r,t,a){function n(i,o){return j6e.coerce(r,t,W6e,i,o)}Z6e._supply(r,t,a,n,"violin")}});var Bg=N(Gu=>{"use strict";var X6e=Le(),J6e={gaussian:function(e){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*e*e)}};Gu.makeKDE=function(e,r,t){var a=t.length,n=J6e.gaussian,i=e.bandwidth,o=1/(a*i);return function(l){for(var s=0,u=0;u{"use strict";var U6=Le(),G6=zr(),$6e=Dw(),$Z=Bg(),K6e=It().BADNUM;KZ.exports=function(r,t){var a=$6e(r,t);if(a[0].t.empty)return a;for(var n=r._fullLayout,i=G6.getFromId(r,t[t.orientation==="h"?"xaxis":"yaxis"]),o=1/0,l=-1/0,s=0,u=0,f=0;f{"use strict";var t7e=Rw().setPositionOffset,eX=["v","h"];rX.exports=function(r,t){for(var a=r.calcdata,n=t.xaxis,i=t.yaxis,o=0;o{"use strict";var V6=Sr(),Y6=Le(),a7e=jr(),j6=Pw(),n7e=u4(),i7e=Bg();aX.exports=function(r,t,a,n){var i=r._context.staticPlot,o=r._fullLayout,l=t.xaxis,s=t.yaxis;function u(f,c){var v=n7e(f,{xaxis:l,yaxis:s,trace:c,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return a7e.smoothopen(v[0],1)}Y6.makeTraceGroups(n,a,"trace violins").each(function(f){var c=V6.select(this),v=f[0],d=v.t,p=v.trace;if(p.visible!==!0||d.empty){c.remove();return}var y=d.bPos,m=d.bdPos,x=t[d.valLetter+"axis"],w=t[d.posLetter+"axis"],_=p.side==="both",b=_||p.side==="positive",T=_||p.side==="negative",k=c.selectAll("path.violin").data(Y6.identity);k.enter().append("path").style("vector-effect",i?"none":"non-scaling-stroke").attr("class","violin"),k.exit().remove(),k.each(function(O){var B=V6.select(this),Y=O.density,G=Y.length,U=w.c2l(O.pos+y,!0),V=w.l2p(U),J;if(p.width)J=d.maxKDE/m;else{var Z=o._violinScaleGroupStats[p.scalegroup];J=p.scalemode==="count"?Z.maxKDE/m*(Z.maxCount/O.pts.length):Z.maxKDE/m}var ee,fe,ie,ue,K,_e,le;if(b){for(_e=new Array(G),ue=0;ue{"use strict";var iX=Sr(),av=Tr(),o7e=Su().stylePoints;oX.exports=function(r){var t=iX.select(r).selectAll("g.trace.violins");t.style("opacity",function(a){return a[0].trace.opacity}),t.each(function(a){var n=a[0].trace,i=iX.select(this),o=n.box||{},l=o.line||{},s=n.meanline||{},u=s.width;i.selectAll("path.violin").style("stroke-width",n.line.width+"px").call(av.stroke,n.line.color).call(av.fill,n.fillcolor),i.selectAll("path.box").style("stroke-width",l.width+"px").call(av.stroke,l.color).call(av.fill,o.fillcolor);var f={"stroke-width":u+"px","stroke-dasharray":2*u+"px,"+u+"px"};i.selectAll("path.mean").style(f).call(av.stroke,s.color),i.selectAll("path.meanline").style(f).call(av.stroke,s.color),o7e(i,n,r)})}});var cX=N((hOe,fX)=>{"use strict";var l7e=Tr(),W6=Le(),s7e=zr(),sX=Bw(),uX=Bg();fX.exports=function(r,t,a,n,i){i||(i={});var o=i.hoverLayer,l=r.cd,s=l[0].trace,u=s.hoveron,f=u.indexOf("violins")!==-1,c=u.indexOf("kde")!==-1,v=[],d,p;if(f||c){var y=sX.hoverOnBoxes(r,t,a,n);if(c&&y.length>0){var m=r.xa,x=r.ya,w,_,b,T,k;s.orientation==="h"?(k=t,w="y",b=x,_="x",T=m):(k=a,w="x",b=m,_="y",T=x);var M=l[r.index];if(k>=M.span[0]&&k<=M.span[1]){var q=W6.extendFlat({},r),E=T.c2p(k,!0),D=uX.getKdeValue(M,s,k),P=uX.getPositionOnKdePath(M,s,E),R=b._offset,z=b._length;q[w+"0"]=P[0],q[w+"1"]=P[1],q[_+"0"]=q[_+"1"]=E,q[_+"Label"]=_+": "+s7e.hoverLabelText(T,k,s[_+"hoverformat"])+", "+l[0].t.labels.kde+" "+D.toFixed(3);for(var O=0,B=0;B{"use strict";vX.exports={attributes:I6(),layoutAttributes:H6(),supplyDefaults:ZZ(),crossTraceDefaults:E0().crossTraceDefaults,supplyLayoutDefaults:JZ(),calc:QZ(),crossTraceCalc:tX(),plot:nX(),style:lX(),styleOnSelect:Su().styleOnSelect,hoverPoints:cX(),selectPoints:Hw(),moduleType:"trace",name:"violin",basePlotModule:Li(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{}}});var pX=N((pOe,dX)=>{"use strict";dX.exports=hX()});var nv=N((yOe,yX)=>{"use strict";yX.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(e){return e.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(e){var r=e.slice(0,3);return r[1]=r[1]+"%",r[2]=r[2]+"%",r},suffix:["\xB0","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(e){var r=e.slice(0,4);return r[1]=r[1]+"%",r[2]=r[2]+"%",r},suffix:["\xB0","%","%",""]}}}});var Z6=N((mOe,gX)=>{"use strict";var u7e=gn(),f7e=wi().zorder,{hovertemplateAttrs:c7e,templatefallbackAttrs:v7e}=Yn(),mX=bt().extendFlat,h7e=nv().colormodel,Y0=["rgb","rgba","rgba256","hsl","hsla"],d7e=[],p7e=[];for(iv=0;iv{"use strict";var y7e=Le(),m7e=Z6(),bX=nv(),g7e=ml().IMAGE_URL_PREFIX;xX.exports=function(r,t){function a(o,l){return y7e.coerce(r,t,m7e,o,l)}a("source"),t.source&&!t.source.match(g7e)&&delete t.source,t._hasSource=!!t.source;var n=a("z");if(t._hasZ=!(n===void 0||!n.length||!n[0]||!n[0].length),!t._hasZ&&!t._hasSource){t.visible=!1;return}a("x0"),a("y0"),a("dx"),a("dy");var i;t._hasZ?(a("colormodel","rgb"),i=bX.colormodel[t.colormodel],a("zmin",i.zminDflt||i.min),a("zmax",i.zmaxDflt||i.max)):t._hasSource&&(t.colormodel="rgba256",i=bX.colormodel[t.colormodel],t.zmin=i.zminDflt,t.zmax=i.zmaxDflt),a("zsmooth"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),t._length=null,a("zorder")}});var kl=N((bOe,X6)=>{typeof Object.create=="function"?X6.exports=function(r,t){t&&(r.super_=t,r.prototype=Object.create(t.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}))}:X6.exports=function(r,t){if(t){r.super_=t;var a=function(){};a.prototype=t.prototype,r.prototype=new a,r.prototype.constructor=r}}});var J6=N((xOe,wX)=>{wX.exports=eu().EventEmitter});var MX=N(Hg=>{"use strict";Hg.byteLength=x7e;Hg.toByteArray=w7e;Hg.fromByteArray=M7e;var Wo=[],zi=[],b7e=typeof Uint8Array!="undefined"?Uint8Array:Array,$6="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(Vu=0,TX=$6.length;Vu0)throw new Error("Invalid string. Length must be a multiple of 4");var t=e.indexOf("=");t===-1&&(t=r);var a=t===r?0:4-t%4;return[t,a]}function x7e(e){var r=AX(e),t=r[0],a=r[1];return(t+a)*3/4-a}function _7e(e,r,t){return(r+t)*3/4-t}function w7e(e){var r,t=AX(e),a=t[0],n=t[1],i=new b7e(_7e(e,a,n)),o=0,l=n>0?a-4:a,s;for(s=0;s>16&255,i[o++]=r>>8&255,i[o++]=r&255;return n===2&&(r=zi[e.charCodeAt(s)]<<2|zi[e.charCodeAt(s+1)]>>4,i[o++]=r&255),n===1&&(r=zi[e.charCodeAt(s)]<<10|zi[e.charCodeAt(s+1)]<<4|zi[e.charCodeAt(s+2)]>>2,i[o++]=r>>8&255,i[o++]=r&255),i}function T7e(e){return Wo[e>>18&63]+Wo[e>>12&63]+Wo[e>>6&63]+Wo[e&63]}function A7e(e,r,t){for(var a,n=[],i=r;il?l:o+i));return a===1?(r=e[t-1],n.push(Wo[r>>2]+Wo[r<<4&63]+"==")):a===2&&(r=(e[t-2]<<8)+e[t-1],n.push(Wo[r>>10]+Wo[r>>4&63]+Wo[r<<2&63]+"=")),n.join("")}});var kX=N(K6=>{K6.read=function(e,r,t,a,n){var i,o,l=n*8-a-1,s=(1<>1,f=-7,c=t?n-1:0,v=t?-1:1,d=e[r+c];for(c+=v,i=d&(1<<-f)-1,d>>=-f,f+=l;f>0;i=i*256+e[r+c],c+=v,f-=8);for(o=i&(1<<-f)-1,i>>=-f,f+=a;f>0;o=o*256+e[r+c],c+=v,f-=8);if(i===0)i=1-u;else{if(i===s)return o?NaN:(d?-1:1)*(1/0);o=o+Math.pow(2,a),i=i-u}return(d?-1:1)*o*Math.pow(2,i-a)};K6.write=function(e,r,t,a,n,i){var o,l,s,u=i*8-n-1,f=(1<>1,v=n===23?Math.pow(2,-24)-Math.pow(2,-77):0,d=a?0:i-1,p=a?1:-1,y=r<0||r===0&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(l=isNaN(r)?1:0,o=f):(o=Math.floor(Math.log(r)/Math.LN2),r*(s=Math.pow(2,-o))<1&&(o--,s*=2),o+c>=1?r+=v/s:r+=v*Math.pow(2,1-c),r*s>=2&&(o++,s/=2),o+c>=f?(l=0,o=f):o+c>=1?(l=(r*s-1)*Math.pow(2,n),o=o+c):(l=r*Math.pow(2,c-1)*Math.pow(2,n),o=0));n>=8;e[t+d]=l&255,d+=p,l/=256,n-=8);for(o=o<0;e[t+d]=o&255,d+=p,o/=256,u-=8);e[t+d-p]|=y*128}});var fv=N(uv=>{"use strict";var Q6=MX(),lv=kX(),SX=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;uv.Buffer=We;uv.SlowBuffer=E7e;uv.INSPECT_MAX_BYTES=50;var Ug=2147483647;uv.kMaxLength=Ug;We.TYPED_ARRAY_SUPPORT=k7e();!We.TYPED_ARRAY_SUPPORT&&typeof console!="undefined"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function k7e(){try{let e=new Uint8Array(1),r={foo:function(){return 42}};return Object.setPrototypeOf(r,Uint8Array.prototype),Object.setPrototypeOf(e,r),e.foo()===42}catch(e){return!1}}Object.defineProperty(We.prototype,"parent",{enumerable:!0,get:function(){if(We.isBuffer(this))return this.buffer}});Object.defineProperty(We.prototype,"offset",{enumerable:!0,get:function(){if(We.isBuffer(this))return this.byteOffset}});function Sl(e){if(e>Ug)throw new RangeError('The value "'+e+'" is invalid for option "size"');let r=new Uint8Array(e);return Object.setPrototypeOf(r,We.prototype),r}function We(e,r,t){if(typeof e=="number"){if(typeof r=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return a7(e)}return EX(e,r,t)}We.poolSize=8192;function EX(e,r,t){if(typeof e=="string")return q7e(e,r);if(ArrayBuffer.isView(e))return L7e(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(Zo(e,ArrayBuffer)||e&&Zo(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(Zo(e,SharedArrayBuffer)||e&&Zo(e.buffer,SharedArrayBuffer)))return r7(e,r,t);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let a=e.valueOf&&e.valueOf();if(a!=null&&a!==e)return We.from(a,r,t);let n=C7e(e);if(n)return n;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return We.from(e[Symbol.toPrimitive]("string"),r,t);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}We.from=function(e,r,t){return EX(e,r,t)};Object.setPrototypeOf(We.prototype,Uint8Array.prototype);Object.setPrototypeOf(We,Uint8Array);function DX(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function S7e(e,r,t){return DX(e),e<=0?Sl(e):r!==void 0?typeof t=="string"?Sl(e).fill(r,t):Sl(e).fill(r):Sl(e)}We.alloc=function(e,r,t){return S7e(e,r,t)};function a7(e){return DX(e),Sl(e<0?0:n7(e)|0)}We.allocUnsafe=function(e){return a7(e)};We.allocUnsafeSlow=function(e){return a7(e)};function q7e(e,r){if((typeof r!="string"||r==="")&&(r="utf8"),!We.isEncoding(r))throw new TypeError("Unknown encoding: "+r);let t=RX(e,r)|0,a=Sl(t),n=a.write(e,r);return n!==t&&(a=a.slice(0,n)),a}function e7(e){let r=e.length<0?0:n7(e.length)|0,t=Sl(r);for(let a=0;a=Ug)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Ug.toString(16)+" bytes");return e|0}function E7e(e){return+e!=e&&(e=0),We.alloc(+e)}We.isBuffer=function(r){return r!=null&&r._isBuffer===!0&&r!==We.prototype};We.compare=function(r,t){if(Zo(r,Uint8Array)&&(r=We.from(r,r.offset,r.byteLength)),Zo(t,Uint8Array)&&(t=We.from(t,t.offset,t.byteLength)),!We.isBuffer(r)||!We.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(r===t)return 0;let a=r.length,n=t.length;for(let i=0,o=Math.min(a,n);in.length?(We.isBuffer(o)||(o=We.from(o)),o.copy(n,i)):Uint8Array.prototype.set.call(n,o,i);else if(We.isBuffer(o))o.copy(n,i);else throw new TypeError('"list" argument must be an Array of Buffers');i+=o.length}return n};function RX(e,r){if(We.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||Zo(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let t=e.length,a=arguments.length>2&&arguments[2]===!0;if(!a&&t===0)return 0;let n=!1;for(;;)switch(r){case"ascii":case"latin1":case"binary":return t;case"utf8":case"utf-8":return t7(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return t*2;case"hex":return t>>>1;case"base64":return UX(e).length;default:if(n)return a?-1:t7(e).length;r=(""+r).toLowerCase(),n=!0}}We.byteLength=RX;function D7e(e,r,t){let a=!1;if((r===void 0||r<0)&&(r=0),r>this.length||((t===void 0||t>this.length)&&(t=this.length),t<=0)||(t>>>=0,r>>>=0,t<=r))return"";for(e||(e="utf8");;)switch(e){case"hex":return U7e(this,r,t);case"utf8":case"utf-8":return FX(this,r,t);case"ascii":return B7e(this,r,t);case"latin1":case"binary":return H7e(this,r,t);case"base64":return I7e(this,r,t);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return G7e(this,r,t);default:if(a)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),a=!0}}We.prototype._isBuffer=!0;function Yu(e,r,t){let a=e[r];e[r]=e[t],e[t]=a}We.prototype.swap16=function(){let r=this.length;if(r%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tt&&(r+=" ... "),""};SX&&(We.prototype[SX]=We.prototype.inspect);We.prototype.compare=function(r,t,a,n,i){if(Zo(r,Uint8Array)&&(r=We.from(r,r.offset,r.byteLength)),!We.isBuffer(r))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof r);if(t===void 0&&(t=0),a===void 0&&(a=r?r.length:0),n===void 0&&(n=0),i===void 0&&(i=this.length),t<0||a>r.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=a)return 0;if(n>=i)return-1;if(t>=a)return 1;if(t>>>=0,a>>>=0,n>>>=0,i>>>=0,this===r)return 0;let o=i-n,l=a-t,s=Math.min(o,l),u=this.slice(n,i),f=r.slice(t,a);for(let c=0;c2147483647?t=2147483647:t<-2147483648&&(t=-2147483648),t=+t,o7(t)&&(t=n?0:e.length-1),t<0&&(t=e.length+t),t>=e.length){if(n)return-1;t=e.length-1}else if(t<0)if(n)t=0;else return-1;if(typeof r=="string"&&(r=We.from(r,a)),We.isBuffer(r))return r.length===0?-1:qX(e,r,t,a,n);if(typeof r=="number")return r=r&255,typeof Uint8Array.prototype.indexOf=="function"?n?Uint8Array.prototype.indexOf.call(e,r,t):Uint8Array.prototype.lastIndexOf.call(e,r,t):qX(e,[r],t,a,n);throw new TypeError("val must be string, number or Buffer")}function qX(e,r,t,a,n){let i=1,o=e.length,l=r.length;if(a!==void 0&&(a=String(a).toLowerCase(),a==="ucs2"||a==="ucs-2"||a==="utf16le"||a==="utf-16le")){if(e.length<2||r.length<2)return-1;i=2,o/=2,l/=2,t/=2}function s(f,c){return i===1?f[c]:f.readUInt16BE(c*i)}let u;if(n){let f=-1;for(u=t;uo&&(t=o-l),u=t;u>=0;u--){let f=!0;for(let c=0;cn&&(a=n)):a=n;let i=r.length;a>i/2&&(a=i/2);let o;for(o=0;o>>0,isFinite(a)?(a=a>>>0,n===void 0&&(n="utf8")):(n=a,a=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let i=this.length-t;if((a===void 0||a>i)&&(a=i),r.length>0&&(a<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return R7e(this,r,t,a);case"utf8":case"utf-8":return P7e(this,r,t,a);case"ascii":case"latin1":case"binary":return F7e(this,r,t,a);case"base64":return N7e(this,r,t,a);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return z7e(this,r,t,a);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}};We.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function I7e(e,r,t){return r===0&&t===e.length?Q6.fromByteArray(e):Q6.fromByteArray(e.slice(r,t))}function FX(e,r,t){t=Math.min(e.length,t);let a=[],n=r;for(;n239?4:i>223?3:i>191?2:1;if(n+l<=t){let s,u,f,c;switch(l){case 1:i<128&&(o=i);break;case 2:s=e[n+1],(s&192)===128&&(c=(i&31)<<6|s&63,c>127&&(o=c));break;case 3:s=e[n+1],u=e[n+2],(s&192)===128&&(u&192)===128&&(c=(i&15)<<12|(s&63)<<6|u&63,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:s=e[n+1],u=e[n+2],f=e[n+3],(s&192)===128&&(u&192)===128&&(f&192)===128&&(c=(i&15)<<18|(s&63)<<12|(u&63)<<6|f&63,c>65535&&c<1114112&&(o=c))}}o===null?(o=65533,l=1):o>65535&&(o-=65536,a.push(o>>>10&1023|55296),o=56320|o&1023),a.push(o),n+=l}return O7e(a)}var LX=4096;function O7e(e){let r=e.length;if(r<=LX)return String.fromCharCode.apply(String,e);let t="",a=0;for(;aa)&&(t=a);let n="";for(let i=r;ia&&(r=a),t<0?(t+=a,t<0&&(t=0)):t>a&&(t=a),tt)throw new RangeError("Trying to access beyond buffer length")}We.prototype.readUintLE=We.prototype.readUIntLE=function(r,t,a){r=r>>>0,t=t>>>0,a||Ga(r,t,this.length);let n=this[r],i=1,o=0;for(;++o>>0,t=t>>>0,a||Ga(r,t,this.length);let n=this[r+--t],i=1;for(;t>0&&(i*=256);)n+=this[r+--t]*i;return n};We.prototype.readUint8=We.prototype.readUInt8=function(r,t){return r=r>>>0,t||Ga(r,1,this.length),this[r]};We.prototype.readUint16LE=We.prototype.readUInt16LE=function(r,t){return r=r>>>0,t||Ga(r,2,this.length),this[r]|this[r+1]<<8};We.prototype.readUint16BE=We.prototype.readUInt16BE=function(r,t){return r=r>>>0,t||Ga(r,2,this.length),this[r]<<8|this[r+1]};We.prototype.readUint32LE=We.prototype.readUInt32LE=function(r,t){return r=r>>>0,t||Ga(r,4,this.length),(this[r]|this[r+1]<<8|this[r+2]<<16)+this[r+3]*16777216};We.prototype.readUint32BE=We.prototype.readUInt32BE=function(r,t){return r=r>>>0,t||Ga(r,4,this.length),this[r]*16777216+(this[r+1]<<16|this[r+2]<<8|this[r+3])};We.prototype.readBigUInt64LE=xs(function(r){r=r>>>0,sv(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&j0(r,this.length-8);let n=t+this[++r]*2**8+this[++r]*2**16+this[++r]*2**24,i=this[++r]+this[++r]*2**8+this[++r]*2**16+a*2**24;return BigInt(n)+(BigInt(i)<>>0,sv(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&j0(r,this.length-8);let n=t*2**24+this[++r]*2**16+this[++r]*2**8+this[++r],i=this[++r]*2**24+this[++r]*2**16+this[++r]*2**8+a;return(BigInt(n)<>>0,t=t>>>0,a||Ga(r,t,this.length);let n=this[r],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n};We.prototype.readIntBE=function(r,t,a){r=r>>>0,t=t>>>0,a||Ga(r,t,this.length);let n=t,i=1,o=this[r+--n];for(;n>0&&(i*=256);)o+=this[r+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o};We.prototype.readInt8=function(r,t){return r=r>>>0,t||Ga(r,1,this.length),this[r]&128?(255-this[r]+1)*-1:this[r]};We.prototype.readInt16LE=function(r,t){r=r>>>0,t||Ga(r,2,this.length);let a=this[r]|this[r+1]<<8;return a&32768?a|4294901760:a};We.prototype.readInt16BE=function(r,t){r=r>>>0,t||Ga(r,2,this.length);let a=this[r+1]|this[r]<<8;return a&32768?a|4294901760:a};We.prototype.readInt32LE=function(r,t){return r=r>>>0,t||Ga(r,4,this.length),this[r]|this[r+1]<<8|this[r+2]<<16|this[r+3]<<24};We.prototype.readInt32BE=function(r,t){return r=r>>>0,t||Ga(r,4,this.length),this[r]<<24|this[r+1]<<16|this[r+2]<<8|this[r+3]};We.prototype.readBigInt64LE=xs(function(r){r=r>>>0,sv(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&j0(r,this.length-8);let n=this[r+4]+this[r+5]*2**8+this[r+6]*2**16+(a<<24);return(BigInt(n)<>>0,sv(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&j0(r,this.length-8);let n=(t<<24)+this[++r]*2**16+this[++r]*2**8+this[++r];return(BigInt(n)<>>0,t||Ga(r,4,this.length),lv.read(this,r,!0,23,4)};We.prototype.readFloatBE=function(r,t){return r=r>>>0,t||Ga(r,4,this.length),lv.read(this,r,!1,23,4)};We.prototype.readDoubleLE=function(r,t){return r=r>>>0,t||Ga(r,8,this.length),lv.read(this,r,!0,52,8)};We.prototype.readDoubleBE=function(r,t){return r=r>>>0,t||Ga(r,8,this.length),lv.read(this,r,!1,52,8)};function Hn(e,r,t,a,n,i){if(!We.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(r>n||re.length)throw new RangeError("Index out of range")}We.prototype.writeUintLE=We.prototype.writeUIntLE=function(r,t,a,n){if(r=+r,t=t>>>0,a=a>>>0,!n){let l=Math.pow(2,8*a)-1;Hn(this,r,t,a,l,0)}let i=1,o=0;for(this[t]=r&255;++o>>0,a=a>>>0,!n){let l=Math.pow(2,8*a)-1;Hn(this,r,t,a,l,0)}let i=a-1,o=1;for(this[t+i]=r&255;--i>=0&&(o*=256);)this[t+i]=r/o&255;return t+a};We.prototype.writeUint8=We.prototype.writeUInt8=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,1,255,0),this[t]=r&255,t+1};We.prototype.writeUint16LE=We.prototype.writeUInt16LE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,2,65535,0),this[t]=r&255,this[t+1]=r>>>8,t+2};We.prototype.writeUint16BE=We.prototype.writeUInt16BE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,2,65535,0),this[t]=r>>>8,this[t+1]=r&255,t+2};We.prototype.writeUint32LE=We.prototype.writeUInt32LE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,4,4294967295,0),this[t+3]=r>>>24,this[t+2]=r>>>16,this[t+1]=r>>>8,this[t]=r&255,t+4};We.prototype.writeUint32BE=We.prototype.writeUInt32BE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,4,4294967295,0),this[t]=r>>>24,this[t+1]=r>>>16,this[t+2]=r>>>8,this[t+3]=r&255,t+4};function NX(e,r,t,a,n){HX(r,a,n,e,t,7);let i=Number(r&BigInt(4294967295));e[t++]=i,i=i>>8,e[t++]=i,i=i>>8,e[t++]=i,i=i>>8,e[t++]=i;let o=Number(r>>BigInt(32)&BigInt(4294967295));return e[t++]=o,o=o>>8,e[t++]=o,o=o>>8,e[t++]=o,o=o>>8,e[t++]=o,t}function zX(e,r,t,a,n){HX(r,a,n,e,t,7);let i=Number(r&BigInt(4294967295));e[t+7]=i,i=i>>8,e[t+6]=i,i=i>>8,e[t+5]=i,i=i>>8,e[t+4]=i;let o=Number(r>>BigInt(32)&BigInt(4294967295));return e[t+3]=o,o=o>>8,e[t+2]=o,o=o>>8,e[t+1]=o,o=o>>8,e[t]=o,t+8}We.prototype.writeBigUInt64LE=xs(function(r,t=0){return NX(this,r,t,BigInt(0),BigInt("0xffffffffffffffff"))});We.prototype.writeBigUInt64BE=xs(function(r,t=0){return zX(this,r,t,BigInt(0),BigInt("0xffffffffffffffff"))});We.prototype.writeIntLE=function(r,t,a,n){if(r=+r,t=t>>>0,!n){let s=Math.pow(2,8*a-1);Hn(this,r,t,a,s-1,-s)}let i=0,o=1,l=0;for(this[t]=r&255;++i>0)-l&255;return t+a};We.prototype.writeIntBE=function(r,t,a,n){if(r=+r,t=t>>>0,!n){let s=Math.pow(2,8*a-1);Hn(this,r,t,a,s-1,-s)}let i=a-1,o=1,l=0;for(this[t+i]=r&255;--i>=0&&(o*=256);)r<0&&l===0&&this[t+i+1]!==0&&(l=1),this[t+i]=(r/o>>0)-l&255;return t+a};We.prototype.writeInt8=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,1,127,-128),r<0&&(r=255+r+1),this[t]=r&255,t+1};We.prototype.writeInt16LE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,2,32767,-32768),this[t]=r&255,this[t+1]=r>>>8,t+2};We.prototype.writeInt16BE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,2,32767,-32768),this[t]=r>>>8,this[t+1]=r&255,t+2};We.prototype.writeInt32LE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,4,2147483647,-2147483648),this[t]=r&255,this[t+1]=r>>>8,this[t+2]=r>>>16,this[t+3]=r>>>24,t+4};We.prototype.writeInt32BE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,4,2147483647,-2147483648),r<0&&(r=4294967295+r+1),this[t]=r>>>24,this[t+1]=r>>>16,this[t+2]=r>>>8,this[t+3]=r&255,t+4};We.prototype.writeBigInt64LE=xs(function(r,t=0){return NX(this,r,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});We.prototype.writeBigInt64BE=xs(function(r,t=0){return zX(this,r,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function IX(e,r,t,a,n,i){if(t+a>e.length)throw new RangeError("Index out of range");if(t<0)throw new RangeError("Index out of range")}function OX(e,r,t,a,n){return r=+r,t=t>>>0,n||IX(e,r,t,4,34028234663852886e22,-34028234663852886e22),lv.write(e,r,t,a,23,4),t+4}We.prototype.writeFloatLE=function(r,t,a){return OX(this,r,t,!0,a)};We.prototype.writeFloatBE=function(r,t,a){return OX(this,r,t,!1,a)};function BX(e,r,t,a,n){return r=+r,t=t>>>0,n||IX(e,r,t,8,17976931348623157e292,-17976931348623157e292),lv.write(e,r,t,a,52,8),t+8}We.prototype.writeDoubleLE=function(r,t,a){return BX(this,r,t,!0,a)};We.prototype.writeDoubleBE=function(r,t,a){return BX(this,r,t,!1,a)};We.prototype.copy=function(r,t,a,n){if(!We.isBuffer(r))throw new TypeError("argument should be a Buffer");if(a||(a=0),!n&&n!==0&&(n=this.length),t>=r.length&&(t=r.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),r.length-t>>0,a=a===void 0?this.length:a>>>0,r||(r=0);let i;if(typeof r=="number")for(i=t;i2**32?n=CX(String(t)):typeof t=="bigint"&&(n=String(t),(t>BigInt(2)**BigInt(32)||t<-(BigInt(2)**BigInt(32)))&&(n=CX(n)),n+="n"),a+=` It must be ${r}. Received ${n}`,a},RangeError);function CX(e){let r="",t=e.length,a=e[0]==="-"?1:0;for(;t>=a+4;t-=3)r=`_${e.slice(t-3,t)}${r}`;return`${e.slice(0,t)}${r}`}function V7e(e,r,t){sv(r,"offset"),(e[r]===void 0||e[r+t]===void 0)&&j0(r,e.length-(t+1))}function HX(e,r,t,a,n,i){if(e>t||e3?r===0||r===BigInt(0)?l=`>= 0${o} and < 2${o} ** ${(i+1)*8}${o}`:l=`>= -(2${o} ** ${(i+1)*8-1}${o}) and < 2 ** ${(i+1)*8-1}${o}`:l=`>= ${r}${o} and <= ${t}${o}`,new ov.ERR_OUT_OF_RANGE("value",l,e)}V7e(a,n,i)}function sv(e,r){if(typeof e!="number")throw new ov.ERR_INVALID_ARG_TYPE(r,"number",e)}function j0(e,r,t){throw Math.floor(e)!==e?(sv(e,t),new ov.ERR_OUT_OF_RANGE(t||"offset","an integer",e)):r<0?new ov.ERR_BUFFER_OUT_OF_BOUNDS:new ov.ERR_OUT_OF_RANGE(t||"offset",`>= ${t?1:0} and <= ${r}`,e)}var Y7e=/[^+/0-9A-Za-z-_]/g;function j7e(e){if(e=e.split("=")[0],e=e.trim().replace(Y7e,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function t7(e,r){r=r||1/0;let t,a=e.length,n=null,i=[];for(let o=0;o55295&&t<57344){if(!n){if(t>56319){(r-=3)>-1&&i.push(239,191,189);continue}else if(o+1===a){(r-=3)>-1&&i.push(239,191,189);continue}n=t;continue}if(t<56320){(r-=3)>-1&&i.push(239,191,189),n=t;continue}t=(n-55296<<10|t-56320)+65536}else n&&(r-=3)>-1&&i.push(239,191,189);if(n=null,t<128){if((r-=1)<0)break;i.push(t)}else if(t<2048){if((r-=2)<0)break;i.push(t>>6|192,t&63|128)}else if(t<65536){if((r-=3)<0)break;i.push(t>>12|224,t>>6&63|128,t&63|128)}else if(t<1114112){if((r-=4)<0)break;i.push(t>>18|240,t>>12&63|128,t>>6&63|128,t&63|128)}else throw new Error("Invalid code point")}return i}function W7e(e){let r=[];for(let t=0;t>8,n=t%256,i.push(n),i.push(a);return i}function UX(e){return Q6.toByteArray(j7e(e))}function Gg(e,r,t,a){let n;for(n=0;n=r.length||n>=e.length);++n)r[n+t]=e[n];return n}function Zo(e,r){return e instanceof r||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===r.name}function o7(e){return e!==e}var X7e=function(){let e="0123456789abcdef",r=new Array(256);for(let t=0;t<16;++t){let a=t*16;for(let n=0;n<16;++n)r[a+n]=e[t]+e[n]}return r}();function xs(e){return typeof BigInt=="undefined"?J7e:e}function J7e(){throw new Error("BigInt not supported")}});var Vg=N((MOe,GX)=>{"use strict";GX.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var r={},t=Symbol("test"),a=Object(t);if(typeof t=="string"||Object.prototype.toString.call(t)!=="[object Symbol]"||Object.prototype.toString.call(a)!=="[object Symbol]")return!1;var n=42;r[t]=n;for(var i in r)return!1;if(typeof Object.keys=="function"&&Object.keys(r).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(r).length!==0)return!1;var o=Object.getOwnPropertySymbols(r);if(o.length!==1||o[0]!==t||!Object.prototype.propertyIsEnumerable.call(r,t))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var l=Object.getOwnPropertyDescriptor(r,t);if(l.value!==n||l.enumerable!==!0)return!1}return!0}});var W0=N((kOe,VX)=>{"use strict";var $7e=Vg();VX.exports=function(){return $7e()&&!!Symbol.toStringTag}});var l7=N((SOe,YX)=>{"use strict";YX.exports=Object});var WX=N((qOe,jX)=>{"use strict";jX.exports=Error});var XX=N((LOe,ZX)=>{"use strict";ZX.exports=EvalError});var $X=N((COe,JX)=>{"use strict";JX.exports=RangeError});var QX=N((EOe,KX)=>{"use strict";KX.exports=ReferenceError});var s7=N((DOe,eJ)=>{"use strict";eJ.exports=SyntaxError});var cv=N((ROe,rJ)=>{"use strict";rJ.exports=TypeError});var aJ=N((POe,tJ)=>{"use strict";tJ.exports=URIError});var iJ=N((FOe,nJ)=>{"use strict";nJ.exports=Math.abs});var lJ=N((NOe,oJ)=>{"use strict";oJ.exports=Math.floor});var uJ=N((zOe,sJ)=>{"use strict";sJ.exports=Math.max});var cJ=N((IOe,fJ)=>{"use strict";fJ.exports=Math.min});var hJ=N((OOe,vJ)=>{"use strict";vJ.exports=Math.pow});var pJ=N((BOe,dJ)=>{"use strict";dJ.exports=Math.round});var mJ=N((HOe,yJ)=>{"use strict";yJ.exports=Number.isNaN||function(r){return r!==r}});var bJ=N((UOe,gJ)=>{"use strict";var K7e=mJ();gJ.exports=function(r){return K7e(r)||r===0?r:r<0?-1:1}});var _J=N((GOe,xJ)=>{"use strict";xJ.exports=Object.getOwnPropertyDescriptor});var ju=N((VOe,wJ)=>{"use strict";var Yg=_J();if(Yg)try{Yg([],"length")}catch(e){Yg=null}wJ.exports=Yg});var Z0=N((YOe,TJ)=>{"use strict";var jg=Object.defineProperty||!1;if(jg)try{jg({},"a",{value:1})}catch(e){jg=!1}TJ.exports=jg});var kJ=N((jOe,MJ)=>{"use strict";var AJ=typeof Symbol!="undefined"&&Symbol,Q7e=Vg();MJ.exports=function(){return typeof AJ!="function"||typeof Symbol!="function"||typeof AJ("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:Q7e()}});var u7=N((WOe,SJ)=>{"use strict";SJ.exports=typeof Reflect!="undefined"&&Reflect.getPrototypeOf||null});var f7=N((ZOe,qJ)=>{"use strict";var eTe=l7();qJ.exports=eTe.getPrototypeOf||null});var EJ=N((XOe,CJ)=>{"use strict";var rTe="Function.prototype.bind called on incompatible ",tTe=Object.prototype.toString,aTe=Math.max,nTe="[object Function]",LJ=function(r,t){for(var a=[],n=0;n{"use strict";var lTe=EJ();DJ.exports=Function.prototype.bind||lTe});var Wg=N(($Oe,RJ)=>{"use strict";RJ.exports=Function.prototype.call});var c7=N((KOe,PJ)=>{"use strict";PJ.exports=Function.prototype.apply});var NJ=N((QOe,FJ)=>{"use strict";FJ.exports=typeof Reflect!="undefined"&&Reflect&&Reflect.apply});var IJ=N((eBe,zJ)=>{"use strict";var sTe=vv(),uTe=c7(),fTe=Wg(),cTe=NJ();zJ.exports=cTe||sTe.call(fTe,uTe)});var BJ=N((rBe,OJ)=>{"use strict";var vTe=vv(),hTe=cv(),dTe=Wg(),pTe=IJ();OJ.exports=function(r){if(r.length<1||typeof r[0]!="function")throw new hTe("a function is required");return pTe(vTe,dTe,r)}});var jJ=N((tBe,YJ)=>{"use strict";var yTe=BJ(),HJ=ju(),GJ;try{GJ=[].__proto__===Array.prototype}catch(e){if(!e||typeof e!="object"||!("code"in e)||e.code!=="ERR_PROTO_ACCESS")throw e}var v7=!!GJ&&HJ&&HJ(Object.prototype,"__proto__"),VJ=Object,UJ=VJ.getPrototypeOf;YJ.exports=v7&&typeof v7.get=="function"?yTe([v7.get]):typeof UJ=="function"?function(r){return UJ(r==null?r:VJ(r))}:!1});var $J=N((aBe,JJ)=>{"use strict";var WJ=u7(),ZJ=f7(),XJ=jJ();JJ.exports=WJ?function(r){return WJ(r)}:ZJ?function(r){if(!r||typeof r!="object"&&typeof r!="function")throw new TypeError("getProto: not an object");return ZJ(r)}:XJ?function(r){return XJ(r)}:null});var QJ=N((nBe,KJ)=>{"use strict";var mTe=Function.prototype.call,gTe=Object.prototype.hasOwnProperty,bTe=vv();KJ.exports=bTe.call(mTe,gTe)});var Jg=N((iBe,i$)=>{"use strict";var ot,xTe=l7(),_Te=WX(),wTe=XX(),TTe=$X(),ATe=QX(),yv=s7(),pv=cv(),MTe=aJ(),kTe=iJ(),STe=lJ(),qTe=uJ(),LTe=cJ(),CTe=hJ(),ETe=pJ(),DTe=bJ(),a$=Function,h7=function(e){try{return a$('"use strict"; return ('+e+").constructor;")()}catch(r){}},X0=ju(),RTe=Z0(),d7=function(){throw new pv},PTe=X0?function(){try{return arguments.callee,d7}catch(e){try{return X0(arguments,"callee").get}catch(r){return d7}}}():d7,hv=kJ()(),Va=$J(),FTe=f7(),NTe=u7(),n$=c7(),J0=Wg(),dv={},zTe=typeof Uint8Array=="undefined"||!Va?ot:Va(Uint8Array),Wu={__proto__:null,"%AggregateError%":typeof AggregateError=="undefined"?ot:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer=="undefined"?ot:ArrayBuffer,"%ArrayIteratorPrototype%":hv&&Va?Va([][Symbol.iterator]()):ot,"%AsyncFromSyncIteratorPrototype%":ot,"%AsyncFunction%":dv,"%AsyncGenerator%":dv,"%AsyncGeneratorFunction%":dv,"%AsyncIteratorPrototype%":dv,"%Atomics%":typeof Atomics=="undefined"?ot:Atomics,"%BigInt%":typeof BigInt=="undefined"?ot:BigInt,"%BigInt64Array%":typeof BigInt64Array=="undefined"?ot:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array=="undefined"?ot:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView=="undefined"?ot:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":_Te,"%eval%":eval,"%EvalError%":wTe,"%Float16Array%":typeof Float16Array=="undefined"?ot:Float16Array,"%Float32Array%":typeof Float32Array=="undefined"?ot:Float32Array,"%Float64Array%":typeof Float64Array=="undefined"?ot:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry=="undefined"?ot:FinalizationRegistry,"%Function%":a$,"%GeneratorFunction%":dv,"%Int8Array%":typeof Int8Array=="undefined"?ot:Int8Array,"%Int16Array%":typeof Int16Array=="undefined"?ot:Int16Array,"%Int32Array%":typeof Int32Array=="undefined"?ot:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":hv&&Va?Va(Va([][Symbol.iterator]())):ot,"%JSON%":typeof JSON=="object"?JSON:ot,"%Map%":typeof Map=="undefined"?ot:Map,"%MapIteratorPrototype%":typeof Map=="undefined"||!hv||!Va?ot:Va(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":xTe,"%Object.getOwnPropertyDescriptor%":X0,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise=="undefined"?ot:Promise,"%Proxy%":typeof Proxy=="undefined"?ot:Proxy,"%RangeError%":TTe,"%ReferenceError%":ATe,"%Reflect%":typeof Reflect=="undefined"?ot:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set=="undefined"?ot:Set,"%SetIteratorPrototype%":typeof Set=="undefined"||!hv||!Va?ot:Va(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer=="undefined"?ot:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":hv&&Va?Va(""[Symbol.iterator]()):ot,"%Symbol%":hv?Symbol:ot,"%SyntaxError%":yv,"%ThrowTypeError%":PTe,"%TypedArray%":zTe,"%TypeError%":pv,"%Uint8Array%":typeof Uint8Array=="undefined"?ot:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray=="undefined"?ot:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array=="undefined"?ot:Uint16Array,"%Uint32Array%":typeof Uint32Array=="undefined"?ot:Uint32Array,"%URIError%":MTe,"%WeakMap%":typeof WeakMap=="undefined"?ot:WeakMap,"%WeakRef%":typeof WeakRef=="undefined"?ot:WeakRef,"%WeakSet%":typeof WeakSet=="undefined"?ot:WeakSet,"%Function.prototype.call%":J0,"%Function.prototype.apply%":n$,"%Object.defineProperty%":RTe,"%Object.getPrototypeOf%":FTe,"%Math.abs%":kTe,"%Math.floor%":STe,"%Math.max%":qTe,"%Math.min%":LTe,"%Math.pow%":CTe,"%Math.round%":ETe,"%Math.sign%":DTe,"%Reflect.getPrototypeOf%":NTe};if(Va)try{null.error}catch(e){e$=Va(Va(e)),Wu["%Error.prototype%"]=e$}var e$,ITe=function e(r){var t;if(r==="%AsyncFunction%")t=h7("async function () {}");else if(r==="%GeneratorFunction%")t=h7("function* () {}");else if(r==="%AsyncGeneratorFunction%")t=h7("async function* () {}");else if(r==="%AsyncGenerator%"){var a=e("%AsyncGeneratorFunction%");a&&(t=a.prototype)}else if(r==="%AsyncIteratorPrototype%"){var n=e("%AsyncGenerator%");n&&Va&&(t=Va(n.prototype))}return Wu[r]=t,t},r$={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},$0=vv(),Zg=QJ(),OTe=$0.call(J0,Array.prototype.concat),BTe=$0.call(n$,Array.prototype.splice),t$=$0.call(J0,String.prototype.replace),Xg=$0.call(J0,String.prototype.slice),HTe=$0.call(J0,RegExp.prototype.exec),UTe=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,GTe=/\\(\\)?/g,VTe=function(r){var t=Xg(r,0,1),a=Xg(r,-1);if(t==="%"&&a!=="%")throw new yv("invalid intrinsic syntax, expected closing `%`");if(a==="%"&&t!=="%")throw new yv("invalid intrinsic syntax, expected opening `%`");var n=[];return t$(r,UTe,function(i,o,l,s){n[n.length]=l?t$(s,GTe,"$1"):o||i}),n},YTe=function(r,t){var a=r,n;if(Zg(r$,a)&&(n=r$[a],a="%"+n[0]+"%"),Zg(Wu,a)){var i=Wu[a];if(i===dv&&(i=ITe(a)),typeof i=="undefined"&&!t)throw new pv("intrinsic "+r+" exists, but is not available. Please file an issue!");return{alias:n,name:a,value:i}}throw new yv("intrinsic "+r+" does not exist!")};i$.exports=function(r,t){if(typeof r!="string"||r.length===0)throw new pv("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof t!="boolean")throw new pv('"allowMissing" argument must be a boolean');if(HTe(/^%?[^%]*%?$/,r)===null)throw new yv("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var a=VTe(r),n=a.length>0?a[0]:"",i=YTe("%"+n+"%",t),o=i.name,l=i.value,s=!1,u=i.alias;u&&(n=u[0],BTe(a,OTe([0,1],u)));for(var f=1,c=!0;f=a.length){var y=X0(l,v);c=!!y,c&&"get"in y&&!("originalValue"in y.get)?l=y.get:l=l[v]}else c=Zg(l,v),l=l[v];c&&!s&&(Wu[o]=l)}}return l}});var u$=N((oBe,s$)=>{"use strict";var o$=Z0(),jTe=s7(),mv=cv(),l$=ju();s$.exports=function(r,t,a){if(!r||typeof r!="object"&&typeof r!="function")throw new mv("`obj` must be an object or a function`");if(typeof t!="string"&&typeof t!="symbol")throw new mv("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new mv("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new mv("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new mv("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new mv("`loose`, if provided, must be a boolean");var n=arguments.length>3?arguments[3]:null,i=arguments.length>4?arguments[4]:null,o=arguments.length>5?arguments[5]:null,l=arguments.length>6?arguments[6]:!1,s=!!l$&&l$(r,t);if(o$)o$(r,t,{configurable:o===null&&s?s.configurable:!o,enumerable:n===null&&s?s.enumerable:!n,value:a,writable:i===null&&s?s.writable:!i});else if(l||!n&&!i&&!o)r[t]=a;else throw new jTe("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var y7=N((lBe,c$)=>{"use strict";var p7=Z0(),f$=function(){return!!p7};f$.hasArrayLengthDefineBug=function(){if(!p7)return null;try{return p7([],"length",{value:1}).length!==1}catch(r){return!0}};c$.exports=f$});var y$=N((sBe,p$)=>{"use strict";var WTe=Jg(),v$=u$(),ZTe=y7()(),h$=ju(),d$=cv(),XTe=WTe("%Math.floor%");p$.exports=function(r,t){if(typeof r!="function")throw new d$("`fn` is not a function");if(typeof t!="number"||t<0||t>4294967295||XTe(t)!==t)throw new d$("`length` must be a positive 32-bit integer");var a=arguments.length>2&&!!arguments[2],n=!0,i=!0;if("length"in r&&h$){var o=h$(r,"length");o&&!o.configurable&&(n=!1),o&&!o.writable&&(i=!1)}return(n||i||!a)&&(ZTe?v$(r,"length",t,!0,!0):v$(r,"length",t)),r}});var K0=N((uBe,$g)=>{"use strict";var m7=vv(),Kg=Jg(),JTe=y$(),$Te=cv(),b$=Kg("%Function.prototype.apply%"),x$=Kg("%Function.prototype.call%"),_$=Kg("%Reflect.apply%",!0)||m7.call(x$,b$),m$=Z0(),KTe=Kg("%Math.max%");$g.exports=function(r){if(typeof r!="function")throw new $Te("a function is required");var t=_$(m7,x$,arguments);return JTe(t,1+KTe(0,r.length-(arguments.length-1)),!0)};var g$=function(){return _$(m7,b$,arguments)};m$?m$($g.exports,"apply",{value:g$}):$g.exports.apply=g$});var gv=N((fBe,A$)=>{"use strict";var w$=Jg(),T$=K0(),QTe=T$(w$("String.prototype.indexOf"));A$.exports=function(r,t){var a=w$(r,!!t);return typeof a=="function"&&QTe(r,".prototype.")>-1?T$(a):a}});var S$=N((cBe,k$)=>{"use strict";var e8e=W0()(),r8e=gv(),g7=r8e("Object.prototype.toString"),Qg=function(r){return e8e&&r&&typeof r=="object"&&Symbol.toStringTag in r?!1:g7(r)==="[object Arguments]"},M$=function(r){return Qg(r)?!0:r!==null&&typeof r=="object"&&typeof r.length=="number"&&r.length>=0&&g7(r)!=="[object Array]"&&g7(r.callee)==="[object Function]"},t8e=function(){return Qg(arguments)}();Qg.isLegacyArguments=M$;k$.exports=t8e?Qg:M$});var C$=N((vBe,L$)=>{"use strict";var a8e=Object.prototype.toString,n8e=Function.prototype.toString,i8e=/^\s*(?:function)?\*/,q$=W0()(),b7=Object.getPrototypeOf,o8e=function(){if(!q$)return!1;try{return Function("return function*() {}")()}catch(e){}},x7;L$.exports=function(r){if(typeof r!="function")return!1;if(i8e.test(n8e.call(r)))return!0;if(!q$){var t=a8e.call(r);return t==="[object GeneratorFunction]"}if(!b7)return!1;if(typeof x7=="undefined"){var a=o8e();x7=a?b7(a):!1}return b7(r)===x7}});var P$=N((hBe,R$)=>{"use strict";var D$=Function.prototype.toString,bv=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,w7,e2;if(typeof bv=="function"&&typeof Object.defineProperty=="function")try{w7=Object.defineProperty({},"length",{get:function(){throw e2}}),e2={},bv(function(){throw 42},null,w7)}catch(e){e!==e2&&(bv=null)}else bv=null;var l8e=/^\s*class\b/,T7=function(r){try{var t=D$.call(r);return l8e.test(t)}catch(a){return!1}},_7=function(r){try{return T7(r)?!1:(D$.call(r),!0)}catch(t){return!1}},r2=Object.prototype.toString,s8e="[object Object]",u8e="[object Function]",f8e="[object GeneratorFunction]",c8e="[object HTMLAllCollection]",v8e="[object HTML document.all class]",h8e="[object HTMLCollection]",d8e=typeof Symbol=="function"&&!!Symbol.toStringTag,p8e=!(0 in[,]),A7=function(){return!1};typeof document=="object"&&(E$=document.all,r2.call(E$)===r2.call(document.all)&&(A7=function(r){if((p8e||!r)&&(typeof r=="undefined"||typeof r=="object"))try{var t=r2.call(r);return(t===c8e||t===v8e||t===h8e||t===s8e)&&r("")==null}catch(a){}return!1}));var E$;R$.exports=bv?function(r){if(A7(r))return!0;if(!r||typeof r!="function"&&typeof r!="object")return!1;try{bv(r,null,w7)}catch(t){if(t!==e2)return!1}return!T7(r)&&_7(r)}:function(r){if(A7(r))return!0;if(!r||typeof r!="function"&&typeof r!="object")return!1;if(d8e)return _7(r);if(T7(r))return!1;var t=r2.call(r);return t!==u8e&&t!==f8e&&!/^\[object HTML/.test(t)?!1:_7(r)}});var M7=N((dBe,N$)=>{"use strict";var y8e=P$(),m8e=Object.prototype.toString,F$=Object.prototype.hasOwnProperty,g8e=function(r,t,a){for(var n=0,i=r.length;n=3&&(n=a),m8e.call(r)==="[object Array]"?g8e(r,t,n):typeof r=="string"?b8e(r,t,n):x8e(r,t,n)};N$.exports=_8e});var S7=N((pBe,z$)=>{"use strict";var k7=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],w8e=typeof globalThis=="undefined"?window:globalThis;z$.exports=function(){for(var r=[],t=0;t{"use strict";var a2=M7(),T8e=S7(),I$=K0(),C7=gv(),t2=ju(),A8e=C7("Object.prototype.toString"),B$=W0()(),O$=typeof globalThis=="undefined"?window:globalThis,L7=T8e(),E7=C7("String.prototype.slice"),q7=Object.getPrototypeOf,M8e=C7("Array.prototype.indexOf",!0)||function(r,t){for(var a=0;a-1?t:t!=="Object"?!1:S8e(r)}return t2?k8e(r):null}});var Z$=N((mBe,W$)=>{"use strict";var G$=M7(),q8e=S7(),R7=gv(),L8e=R7("Object.prototype.toString"),V$=W0()(),i2=ju(),C8e=typeof globalThis=="undefined"?window:globalThis,Y$=q8e(),E8e=R7("Array.prototype.indexOf",!0)||function(r,t){for(var a=0;a-1}return i2?R8e(r):!1}});var N7=N(lt=>{"use strict";var P8e=S$(),F8e=C$(),mo=U$(),X$=Z$();function xv(e){return e.call.bind(e)}var J$=typeof BigInt!="undefined",$$=typeof Symbol!="undefined",Ii=xv(Object.prototype.toString),N8e=xv(Number.prototype.valueOf),z8e=xv(String.prototype.valueOf),I8e=xv(Boolean.prototype.valueOf);J$&&(K$=xv(BigInt.prototype.valueOf));var K$;$$&&(Q$=xv(Symbol.prototype.valueOf));var Q$;function ed(e,r){if(typeof e!="object")return!1;try{return r(e),!0}catch(t){return!1}}lt.isArgumentsObject=P8e;lt.isGeneratorFunction=F8e;lt.isTypedArray=X$;function O8e(e){return typeof Promise!="undefined"&&e instanceof Promise||e!==null&&typeof e=="object"&&typeof e.then=="function"&&typeof e.catch=="function"}lt.isPromise=O8e;function B8e(e){return typeof ArrayBuffer!="undefined"&&ArrayBuffer.isView?ArrayBuffer.isView(e):X$(e)||rK(e)}lt.isArrayBufferView=B8e;function H8e(e){return mo(e)==="Uint8Array"}lt.isUint8Array=H8e;function U8e(e){return mo(e)==="Uint8ClampedArray"}lt.isUint8ClampedArray=U8e;function G8e(e){return mo(e)==="Uint16Array"}lt.isUint16Array=G8e;function V8e(e){return mo(e)==="Uint32Array"}lt.isUint32Array=V8e;function Y8e(e){return mo(e)==="Int8Array"}lt.isInt8Array=Y8e;function j8e(e){return mo(e)==="Int16Array"}lt.isInt16Array=j8e;function W8e(e){return mo(e)==="Int32Array"}lt.isInt32Array=W8e;function Z8e(e){return mo(e)==="Float32Array"}lt.isFloat32Array=Z8e;function X8e(e){return mo(e)==="Float64Array"}lt.isFloat64Array=X8e;function J8e(e){return mo(e)==="BigInt64Array"}lt.isBigInt64Array=J8e;function $8e(e){return mo(e)==="BigUint64Array"}lt.isBigUint64Array=$8e;function o2(e){return Ii(e)==="[object Map]"}o2.working=typeof Map!="undefined"&&o2(new Map);function K8e(e){return typeof Map=="undefined"?!1:o2.working?o2(e):e instanceof Map}lt.isMap=K8e;function l2(e){return Ii(e)==="[object Set]"}l2.working=typeof Set!="undefined"&&l2(new Set);function Q8e(e){return typeof Set=="undefined"?!1:l2.working?l2(e):e instanceof Set}lt.isSet=Q8e;function s2(e){return Ii(e)==="[object WeakMap]"}s2.working=typeof WeakMap!="undefined"&&s2(new WeakMap);function eAe(e){return typeof WeakMap=="undefined"?!1:s2.working?s2(e):e instanceof WeakMap}lt.isWeakMap=eAe;function F7(e){return Ii(e)==="[object WeakSet]"}F7.working=typeof WeakSet!="undefined"&&F7(new WeakSet);function rAe(e){return F7(e)}lt.isWeakSet=rAe;function u2(e){return Ii(e)==="[object ArrayBuffer]"}u2.working=typeof ArrayBuffer!="undefined"&&u2(new ArrayBuffer);function eK(e){return typeof ArrayBuffer=="undefined"?!1:u2.working?u2(e):e instanceof ArrayBuffer}lt.isArrayBuffer=eK;function f2(e){return Ii(e)==="[object DataView]"}f2.working=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined"&&f2(new DataView(new ArrayBuffer(1),0,1));function rK(e){return typeof DataView=="undefined"?!1:f2.working?f2(e):e instanceof DataView}lt.isDataView=rK;var P7=typeof SharedArrayBuffer!="undefined"?SharedArrayBuffer:void 0;function Q0(e){return Ii(e)==="[object SharedArrayBuffer]"}function tK(e){return typeof P7=="undefined"?!1:(typeof Q0.working=="undefined"&&(Q0.working=Q0(new P7)),Q0.working?Q0(e):e instanceof P7)}lt.isSharedArrayBuffer=tK;function tAe(e){return Ii(e)==="[object AsyncFunction]"}lt.isAsyncFunction=tAe;function aAe(e){return Ii(e)==="[object Map Iterator]"}lt.isMapIterator=aAe;function nAe(e){return Ii(e)==="[object Set Iterator]"}lt.isSetIterator=nAe;function iAe(e){return Ii(e)==="[object Generator]"}lt.isGeneratorObject=iAe;function oAe(e){return Ii(e)==="[object WebAssembly.Module]"}lt.isWebAssemblyCompiledModule=oAe;function aK(e){return ed(e,N8e)}lt.isNumberObject=aK;function nK(e){return ed(e,z8e)}lt.isStringObject=nK;function iK(e){return ed(e,I8e)}lt.isBooleanObject=iK;function oK(e){return J$&&ed(e,K$)}lt.isBigIntObject=oK;function lK(e){return $$&&ed(e,Q$)}lt.isSymbolObject=lK;function lAe(e){return aK(e)||nK(e)||iK(e)||oK(e)||lK(e)}lt.isBoxedPrimitive=lAe;function sAe(e){return typeof Uint8Array!="undefined"&&(eK(e)||tK(e))}lt.isAnyArrayBuffer=sAe;["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(e){Object.defineProperty(lt,e,{enumerable:!1,value:function(){throw new Error(e+" is not supported in userland")}})})});var z7=N((bBe,sK)=>{sK.exports=function(r){return r&&typeof r=="object"&&typeof r.copy=="function"&&typeof r.fill=="function"&&typeof r.readUInt8=="function"}});var G7=N(st=>{var uK=Object.getOwnPropertyDescriptors||function(r){for(var t=Object.keys(r),a={},n=0;n=n)return l;switch(l){case"%s":return String(a[t++]);case"%d":return Number(a[t++]);case"%j":try{return JSON.stringify(a[t++])}catch(s){return"[Circular]"}default:return l}}),o=a[t];t=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),H7(r)?t.showHidden=r:r&&st._extend(t,r),Xu(t.showHidden)&&(t.showHidden=!1),Xu(t.depth)&&(t.depth=2),Xu(t.colors)&&(t.colors=!1),Xu(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=fAe),d2(t,e,t.depth)}st.inspect=_s;_s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};_s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function fAe(e,r){var t=_s.styles[r];return t?"\x1B["+_s.colors[t][0]+"m"+e+"\x1B["+_s.colors[t][1]+"m":e}function cAe(e,r){return e}function vAe(e){var r={};return e.forEach(function(t,a){r[t]=!0}),r}function d2(e,r,t){if(e.customInspect&&r&&h2(r.inspect)&&r.inspect!==st.inspect&&!(r.constructor&&r.constructor.prototype===r)){var a=r.inspect(t,e);return m2(a)||(a=d2(e,a,t)),a}var n=hAe(e,r);if(n)return n;var i=Object.keys(r),o=vAe(i);if(e.showHidden&&(i=Object.getOwnPropertyNames(r)),td(r)&&(i.indexOf("message")>=0||i.indexOf("description")>=0))return I7(r);if(i.length===0){if(h2(r)){var l=r.name?": "+r.name:"";return e.stylize("[Function"+l+"]","special")}if(rd(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(p2(r))return e.stylize(Date.prototype.toString.call(r),"date");if(td(r))return I7(r)}var s="",u=!1,f=["{","}"];if(cK(r)&&(u=!0,f=["[","]"]),h2(r)){var c=r.name?": "+r.name:"";s=" [Function"+c+"]"}if(rd(r)&&(s=" "+RegExp.prototype.toString.call(r)),p2(r)&&(s=" "+Date.prototype.toUTCString.call(r)),td(r)&&(s=" "+I7(r)),i.length===0&&(!u||r.length==0))return f[0]+s+f[1];if(t<0)return rd(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special");e.seen.push(r);var v;return u?v=dAe(e,r,t,o,i):v=i.map(function(d){return B7(e,r,t,o,d,u)}),e.seen.pop(),pAe(v,s,f)}function hAe(e,r){if(Xu(r))return e.stylize("undefined","undefined");if(m2(r)){var t="'"+JSON.stringify(r).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(t,"string")}if(vK(r))return e.stylize(""+r,"number");if(H7(r))return e.stylize(""+r,"boolean");if(y2(r))return e.stylize("null","null")}function I7(e){return"["+Error.prototype.toString.call(e)+"]"}function dAe(e,r,t,a,n){for(var i=[],o=0,l=r.length;o{var eoe=Object.defineProperty,roe=Object.defineProperties;var toe=Object.getOwnPropertyDescriptors;var GA=Object.getOwnPropertySymbols;var aoe=Object.prototype.hasOwnProperty,noe=Object.prototype.propertyIsEnumerable;var VA=(e,r,t)=>r in e?eoe(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,Vs=(e,r)=>{for(var t in r||(r={}))aoe.call(r,t)&&VA(e,t,r[t]);if(GA)for(var t of GA(r))noe.call(r,t)&&VA(e,t,r[t]);return e},lp=(e,r)=>roe(e,toe(r));var N=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var sp=N(YA=>{"use strict";YA.version="3.3.1"});var jA=N((WA,up)=>{(function(r,t,a){t[r]=t[r]||a(),typeof up!="undefined"&&up.exports&&(up.exports=t[r])})("Promise",typeof window!="undefined"?window:WA,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,_,b,T){return Object.defineProperty(w,_,{value:b,writable:!0,configurable:T!==!1})}}catch(x){r=function(_,b,T){return _[b]=T,_}}a=function(){var w,_,b;function T(k,M){this.fn=k,this.self=M,this.next=void 0}return{add:function(M,q){b=new T(M,q),_?_.next=b:w=b,_=b,b=void 0},drain:function(){var M=w;for(w=_=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(x,w){a.add(x,w),t||(t=i(a.drain))}function l(x){var w,_=typeof x;return x!=null&&(_=="object"||_=="function")&&(w=x.then),typeof w=="function"?w:!1}function s(){for(var x=0;x0&&o(s,_))}catch(b){c.call(new d(_),b)}}}function c(x){var w=this;w.triggered||(w.triggered=!0,w.def&&(w=w.def),w.msg=x,w.state=2,w.chain.length>0&&o(s,w))}function v(x,w,_,b){for(var T=0;T{(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,S=new Array(A);A--;)S[A]=g[A];return S}}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,S){s.call(this,g,A,S+"")},u.setProperty=function(g,A,S){f.call(this,g,A+"",S)}}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,S=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,S=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,S=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,S,L){for(arguments.length<3&&(S=0),arguments.length<4&&(L=g.length);S>>1;h(g[C],A)<0?S=C+1:L=C}return S},right:function(g,A,S,L){for(arguments.length<3&&(S=0),arguments.length<4&&(L=g.length);S>>1;h(g[C],A)>0?L=C:S=C+1}return S}}}var y=p(c);e.bisectLeft=y.left,e.bisect=e.bisectRight=y.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){(S=arguments.length)<3&&(A=h.length,S<2&&(g=0));for(var S=A-g,L,C;S;)C=Math.random()*S--|0,L=h[S+g],h[S+g]=h[C+g],h[C+g]=L;return h},e.permute=function(h,g){for(var A=g.length,S=new Array(A);A--;)S[A]=h[g[A]];return S},e.pairs=function(h){for(var g=0,A=h.length-1,S,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 S=[],L=w(x(A)),C=-1,I;if(h*=L,g*=L,A*=L,A<0)for(;(I=h+A*++C)>g;)S.push(I/L);else for(;(I=h+A*++C)=g.length)return L?L.call(h,U):S?U.sort(S):U;for(var $=-1,re=U.length,te=g[J++],we,ke,ae,de=new b,ge;++$=g.length)return F;var J=[],$=A[U++];return F.forEach(function(re,te){J.push({key:re,values:I(te,U)})}),$?J.sort(function(re,te){return $(re.key,te.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 S=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,S=h.length;A=0&&(S=h.slice(A+1),h=h.slice(0,A)),h)return arguments.length<2?this[h].on(S):this[h].on(S,g);if(arguments.length===2){if(g==null)for(h in this)this.hasOwnProperty(h)&&this[h].on(S,null);return this}};function Z(h){var g=[],A=new b;function S(){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}},ce.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 S(){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?S:A:typeof g=="function"?h.local?F:I:h.local?C:L}function ye(h){return h.trim().replace(/\s+/g," ")}ce.classed=function(h,g){if(arguments.length<2){if(typeof h=="string"){var A=this.node(),S=(h=Ne(h)).length,L=-1;if(g=A.classList){for(;++L=0;)(C=A[S])&&(L&&L!==C.nextSibling&&L.parentNode.insertBefore(C,L),L=C);return this},ce.sort=function(h){h=Ae.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=Ve);function F(){var $=this[S];$&&(this.removeEventListener(h,$,$.$),delete this[S])}function U(){var $=C(g,t(arguments));F.call(this),this.addEventListener(h,this[S]=$,$.$=A),$._=g}function J(){var $=new RegExp("^__on([^.]+)"+e.requote(h)+"$"),re;for(var te in this)if(re=te.match($)){var we=this[te];this.removeEventListener(re[1],we,we.$),delete this[te]}}return L?g?U:F:g?G:J}var Ge=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Ge.forEach(function(h){"on"+h in a&&Ge.remove(h)});function Je(h,g){return function(A){var S=e.event;e.event=A,g[0]=this.__data__;try{h.apply(this,g)}finally{e.event=S}}}function Ve(h,g){var A=Je(h,g);return function(S){var L=this,C=S.relatedTarget;(!C||C!==L&&!(C.compareDocumentPosition(L)&8))&&A.call(L,S)}}var Ze,or=0;function rr(h){var g=".dragsuppress-"+ ++or,A="click"+g,S=e.select(i(h)).on("touchmove"+g,ee).on("dragstart"+g,ee).on("selectstart"+g,ee);if(Ze==null&&(Ze="onselectstart"in h?!1:V(h.style,"userSelect")),Ze){var L=n(h).style,C=L[Ze];L[Ze]="none"}return function(I){if(S.on(g,null),Ze&&(L[Ze]=C),I){var F=function(){S.on(A,null)};S.on(A,function(){ee(),F()},!0),setTimeout(F,0)}}}e.mouse=function(h){return ze(h,fe())};var Ke=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function ze(h,g){g.changedTouches&&(g=g.changedTouches[0]);var A=h.ownerSVGElement||h;if(A.createSVGPoint){var S=A.createSVGPoint();if(Ke<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();Ke=!(C.f||C.e),A.remove()}}return Ke?(S.x=g.pageX,S.y=g.pageY):(S.x=g.clientX,S.y=g.clientY),S=S.matrixTransform(h.getScreenCTM().inverse()),[S.x,S.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 S=0,L=g.length,C;S0?1:h<0?-1:0}function et(h,g,A){return(g[0]-h[0])*(A[1]-h[1])-(g[1]-h[1])*(A[0]-h[0])}function qt(h){return h>1?0:h<-1?Re:Math.acos(h)}function ft(h){return h>1?sr:h<-1?-sr:Math.asin(h)}function Ft(h){return((h=Math.exp(h))-1/h)/2}function Tt(h){return((h=Math.exp(h))+1/h)/2}function da(h){return((h=Math.exp(2*h))-1)/(h+1)}function $t(h){return(h=Math.sin(h/2))*h}var oa=Math.SQRT2,dr=2,yt=4;e.interpolateZoom=function(h,g){var A=h[0],S=h[1],L=h[2],C=g[0],I=g[1],F=g[2],U=C-A,J=I-S,$=U*U+J*J,re,te;if($0&&(tr=tr.transition().duration(I)),tr.call(Se.event)}function pr(){de&&de.domain(ae.range().map(function(tr){return(tr-h.x)/h.k}).map(ae.invert)),Me&&Me.domain(ge.range().map(function(tr){return(tr-h.y)/h.k}).map(ge.invert))}function yr(tr){F++||tr({type:"zoomstart"})}function Er(tr){pr(),tr({type:"zoom",scale:h.k,translate:[h.x,h.y]})}function gr(tr){--F||(tr({type:"zoomend"}),A=null)}function Mr(){var tr=this,Dr=ke.of(tr,arguments),Pr=0,nt=e.select(i(tr)).on(J,Ia).on($,tn),Gt=xe(e.mouse(tr)),ya=rr(tr);ap.call(tr),yr(Dr);function Ia(){Pr=1,cr(e.mouse(tr),Gt),Er(Dr)}function tn(){nt.on(J,null).on($,null),ya(Pr),gr(Dr)}}function at(){var tr=this,Dr=ke.of(tr,arguments),Pr={},nt=0,Gt,ya=".zoom-"+e.event.changedTouches[0].identifier,Ia="touchmove"+ya,tn="touchend"+ya,mn=[],an=e.select(tr),An=rr(tr);Mn(),yr(Dr),an.on(U,null).on(te,Mn);function Wa(){var Zi=e.touches(tr);return Gt=h.k,Zi.forEach(function(Oa){Oa.identifier in Pr&&(Pr[Oa.identifier]=xe(Oa))}),Zi}function Mn(){var Zi=e.event.target;e.select(Zi).on(Ia,Us).on(tn,Qie),mn.push(Zi);for(var Oa=e.event.changedTouches,oi=0,To=Oa.length;oi1){var Gs=li[0],Nl=li[1],op=Gs[0]-Nl[0],UA=Gs[1]-Nl[1];nt=op*op+UA*UA}}function Us(){var Zi=e.touches(tr),Oa,oi,To,li;ap.call(tr);for(var _f=0,Gs=Zi.length;_f1?1:g,A=A<0?0:A>1?1:A,L=A<=.5?A*(1+g):A+g-A*g,S=2*A-L;function C(F){return F>360?F-=360:F<0&&(F+=360),F<60?S+(L-S)*F/60:F<180?L:F<240?S+(L-S)*(240-F)/60:S}function I(F){return Math.round(C(F)*255)}return new jt(I(h+120),I(h),I(h-120))}e.hcl=Wt;function Wt(h,g,A){return this instanceof Wt?(this.h=+h,this.c=+g,void(this.l=+A)):arguments.length<2?h instanceof Wt?new Wt(h.h,h.c,h.l):h instanceof Nt?zt(h.l,h.a,h.b):zt((h=ur((h=e.rgb(h)).r,h.g,h.b)).l,h.a,h.b):new Wt(h,g,A)}var dn=Wt.prototype=new Lt;dn.brighter=function(h){return new Wt(this.h,this.c,Math.min(100,this.l+Ct*(arguments.length?h:1)))},dn.darker=function(h){return new Wt(this.h,this.c,Math.max(0,this.l-Ct*(arguments.length?h:1)))},dn.rgb=function(){return pn(this.h,this.c,this.l).rgb()};function pn(h,g,A){return isNaN(h)&&(h=0),isNaN(g)&&(g=0),new Nt(A,Math.cos(h*=kr)*g,Math.sin(h)*g)}e.lab=Nt;function Nt(h,g,A){return this instanceof Nt?(this.l=+h,this.a=+g,void(this.b=+A)):arguments.length<2?h instanceof Nt?new Nt(h.l,h.a,h.b):h instanceof Wt?pn(h.h,h.c,h.l):ur((h=jt(h)).r,h.g,h.b):new Nt(h,g,A)}var Ct=18,_a=.95047,Qo=1,el=1.08883,ct=Nt.prototype=new Lt;ct.brighter=function(h){return new Nt(Math.min(100,this.l+Ct*(arguments.length?h:1)),this.a,this.b)},ct.darker=function(h){return new Nt(Math.max(0,this.l-Ct*(arguments.length?h:1)),this.a,this.b)},ct.rgb=function(){return Tn(this.l,this.a,this.b)};function Tn(h,g,A){var S=(h+16)/116,L=S+g/500,C=S-A/200;return L=zs(L)*_a,S=zs(S)*Qo,C=zs(C)*el,new jt(Vi(3.2404542*L-1.5371385*S-.4985314*C),Vi(-.969266*L+1.8760108*S+.041556*C),Vi(.0556434*L-.2040259*S+1.0572252*C))}function zt(h,g,A){return h>0?new Wt(Math.atan2(A,g)*Ir,Math.sqrt(g*g+A*A),h):new Wt(NaN,NaN,h)}function zs(h){return h>.206893034?h*h*h:(h-4/29)/7.787037}function yn(h){return h>.008856?Math.pow(h,1/3):7.787037*h+4/29}function Vi(h){return Math.round(255*(h<=.00304?12.92*h:1.055*Math.pow(h,1/2.4)-.055))}e.rgb=jt;function jt(h,g,A){return this instanceof jt?(this.r=~~h,this.g=~~g,void(this.b=~~A)):arguments.length<2?h instanceof jt?new jt(h.r,h.g,h.b):Kr(""+h,jt,rn):new jt(h,g,A)}function Yi(h){return new jt(h>>16,h>>8&255,h&255)}function Rl(h){return Yi(h)+""}var Pl=jt.prototype=new Lt;Pl.brighter=function(h){h=Math.pow(.7,arguments.length?h:1);var g=this.r,A=this.g,S=this.b,L=30;return!g&&!A&&!S?new jt(L,L,L):(g&&g>4,S=S>>4|S,L=U&240,L=L>>4|L,C=U&15,C=C<<4|C):h.length===7&&(S=(U&16711680)>>16,L=(U&65280)>>8,C=U&255)),g(S,L,C))}function vt(h,g,A){var S=Math.min(h/=255,g/=255,A/=255),L=Math.max(h,g,A),C=L-S,I,F,U=(L+S)/2;return C?(F=U<.5?C/(L+S):C/(2-L-S),h==L?I=(g-A)/C+(g0&&U<1?0:I),new Gr(I,F,U)}function ur(h,g,A){h=Na(h),g=Na(g),A=Na(A);var S=yn((.4124564*h+.3575761*g+.1804375*A)/_a),L=yn((.2126729*h+.7151522*g+.072175*A)/Qo),C=yn((.0193339*h+.119192*g+.9503041*A)/el);return Nt(116*L-16,500*(S-L),200*(L-C))}function Na(h){return(h/=255)<=.04045?h/12.92:Math.pow((h+.055)/1.055,2.4)}function At(h){var g=parseFloat(h);return h.charAt(h.length-1)==="%"?Math.round(g*2.55):g}var za=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});za.forEach(function(h,g){za.set(h,Yi(g))});function Or(h){return typeof h=="function"?h:function(){return h}}e.functor=Or,e.xhr=Wi(B);function Wi(h){return function(g,A,S){return arguments.length===2&&typeof A=="function"&&(S=A,A=null),Is(g,A,h,S)}}function Is(h,g,A,S){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,re;if(!$&&rne(F)||$>=200&&$<300||$===304){try{re=A.call(L,F)}catch(te){C.error.call(L,te);return}C.load.call(L,re)}else C.error.call(L,F)}return F.onprogress=function($){var re=e.event;e.event=$;try{C.progress.call(L,F)}finally{e.event=re}},L.header=function($,re){return $=($+"").toLowerCase(),arguments.length<2?I[$]:(re==null?delete I[$]:I[$]=re+"",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($,re,te){if(arguments.length===2&&typeof re=="function"&&(te=re,re=null),F.open($,h,!0),g!=null&&!("accept"in I)&&(I.accept=g+",*/*"),F.setRequestHeader)for(var we in I)F.setRequestHeader(we,I[we]);return g!=null&&F.overrideMimeType&&F.overrideMimeType(g),U!=null&&(F.responseType=U),te!=null&&L.on("error",te).on("load",function(ke){te(null,ke)}),C.beforesend.call(L,F),F.send(re==null?null:re),L},L.abort=function(){return F.abort(),L},e.rebind(L,C,"on"),S==null?L:L.get(ene(S))}function ene(h){return h.length===1?function(g,A){h(g==null?A:null)}:h}function rne(h){var g=h.responseType;return g&&g!=="text"?h.response:h.responseText}e.dsv=function(h,g){var A=new RegExp('["'+h+` +]`),S=h.charCodeAt(0);function L(J,$,re){arguments.length<3&&(re=$,$=null);var te=Is(J,g,$==null?C:I($),re);return te.row=function(we){return arguments.length?te.response(($=we)==null?C:I(we)):$},te}function C(J){return L.parse(J.responseText)}function I(J){return function($){return L.parse($.responseText,J)}}L.parse=function(J,$){var re;return L.parseRows(J,function(te,we){if(re)return re(te,we-1);var ke=function(ae){for(var de={},ge=te.length,Me=0;Me=ke)return te;if(Me)return Me=!1,re;var Ye=ae;if(J.charCodeAt(Ye)===34){for(var ir=Ye;ir++24?(isFinite(g)&&(clearTimeout(Hd),Hd=setTimeout(q3,g)),Bd=0):(Bd=1,q8(q3))}e.timer.flush=function(){L8(),C8()};function L8(){for(var h=Date.now(),g=Id;g;)h>=g.t&&g.c(h-g.t)&&(g.c=null),g=g.n;return h}function C8(){for(var h,g=Id,A=1/0;g;)g.c?(g.t=0;--F)ae.push(L[J[re[F]][2]]);for(F=+we;F1&&et(h[A[S-2]],h[A[S-1]],h[L])<=0;)--S;A[S++]=L}return A.slice(0,S)}function tne(h,g){return h[0]-g[0]||h[1]-g[1]}e.geom.polygon=function(h){return K(h,Gd),h};var Gd=e.geom.polygon.prototype=[];Gd.area=function(){for(var h=-1,g=this.length,A,S=this[g-1],L=0;++hve)F=F.L;else if(I=g-one(F,A),I>ve){if(!F.R){S=F;break}F=F.R}else{C>-ve?(S=F.P,L=F):I>-ve?(S=F,L=F.N):S=L=F;break}var U=F8(h);if(mf.insert(S,U),!(!S&&!L)){if(S===L){bf(S),L=F8(S.site),mf.insert(U,L),U.edge=L.edge=Ov(S.site,U.site),gf(S),gf(L);return}if(!L){U.edge=Ov(S.site,U.site);return}bf(S),bf(L);var J=S.site,$=J.x,re=J.y,te=h.x-$,we=h.y-re,ke=L.site,ae=ke.x-$,de=ke.y-re,ge=2*(te*de-we*ae),Me=te*te+we*we,Se=ae*ae+de*de,xe={x:(de*Me-we*Se)/ge+$,y:(te*Se-ae*Me)/ge+re};Vd(L.edge,J,ke,xe),U.edge=Ov(J,h,null,xe),L.edge=Ov(h,ke,null,xe),gf(S),gf(L)}}function N8(h,g){var A=h.site,S=A.x,L=A.y,C=L-g;if(!C)return S;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-S,re=1/C-1/J,te=$/J;return re?(-te+Math.sqrt(te*te-2*re*($*$/(-2*J)-U+J/2+L-C/2)))/re+S:(S+F)/2}function one(h,g){var A=h.N;if(A)return N8(A,g);var S=h.site;return S.y===g?S.x:1/0}function z8(h){this.site=h,this.edges=[]}z8.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(I8),h.length};function lne(h){for(var g=h[0][0],A=h[1][0],S=h[0][1],L=h[1][1],C,I,F,U,J=Os,$=J.length,re,te,we,ke,ae,de;$--;)if(re=J[$],!(!re||!re.prepare()))for(we=re.edges,ke=we.length,te=0;teve||x(U-I)>ve)&&(we.splice(te,0,new Yd(vne(re.site,de,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-S)=-De)){var te=U*U+J*J,we=$*$+de*de,ke=(de*te-J*we)/re,ae=(U*we-$*te)/re,de=ae+F,ge=P8.pop()||new sne;ge.arc=h,ge.site=L,ge.x=ke+I,ge.y=de+Math.sqrt(ke*ke+ae*ae),ge.cy=de,h.circle=ge;for(var Me=null,Se=Iv._;Se;)if(ge.y0)){if(ae/=we,we<0){if(ae0){if(ae>te)return;ae>re&&(re=ae)}if(ae=A-F,!(!we&&ae<0)){if(ae/=we,we<0){if(ae>te)return;ae>re&&(re=ae)}else if(we>0){if(ae0)){if(ae/=ke,ke<0){if(ae0){if(ae>te)return;ae>re&&(re=ae)}if(ae=S-U,!(!ke&&ae<0)){if(ae/=ke,ke<0){if(ae>te)return;ae>re&&(re=ae)}else if(ke>0){if(ae0&&(L.a={x:F+re*we,y:U+re*ke}),te<1&&(L.b={x:F+te*we,y:U+te*ke}),L}}}}}}function fne(h){for(var g=yf,A=une(h[0][0],h[0][1],h[1][0],h[1][1]),S=g.length,L;S--;)L=g[S],(!cne(L,h)||!A(L)||x(L.a.x-L.b.x)=C)return;if($>te){if(!S)S={x:ke,y:I};else if(S.y>=F)return;A={x:ke,y:F}}else{if(!S)S={x:ke,y:F};else if(S.y1)if($>te){if(!S)S={x:(I-ge)/de,y:I};else if(S.y>=F)return;A={x:(F-ge)/de,y:F}}else{if(!S)S={x:(F-ge)/de,y:F};else if(S.y=C)return;A={x:C,y:de*C+ge}}else{if(!S)S={x:C,y:de*C+ge};else if(S.x=$&&ge.x<=te&&ge.y>=re&&ge.y<=we?[[$,we],[te,we],[te,re],[$,re]]:[];Me.point=U[ae]}),J}function F(U){return U.map(function(J,$){return{x:Math.round(S(J,$)/ve)*ve,y:Math.round(L(J,$)/ve)*ve,i:$}})}return I.links=function(U){return P3(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 P3(F(U)).cells.forEach(function($,re){for(var te=$.site,we=$.edges.sort(I8),ke=-1,ae=we.length,de,ge,Me=we[ae-1].edge,Se=Me.l===te?Me.r:Me.l;++keSe&&(Se=$.x),$.y>xe&&(xe=$.y),we.push($.x),ke.push($.y);else for(ae=0;aeSe&&(Se=Ye),ir>xe&&(xe=ir),we.push(Ye),ke.push(ir)}var cr=Se-ge,lr=xe-Me;cr>lr?xe=Me+cr:Se=ge+lr;function pr(gr,Mr,at,Kt,dt,tr,Dr,Pr){if(!(isNaN(at)||isNaN(Kt)))if(gr.leaf){var nt=gr.x,Gt=gr.y;if(nt!=null)if(x(nt-at)+x(Gt-Kt)<.01)yr(gr,Mr,at,Kt,dt,tr,Dr,Pr);else{var ya=gr.point;gr.x=gr.y=gr.point=null,yr(gr,ya,nt,Gt,dt,tr,Dr,Pr),yr(gr,Mr,at,Kt,dt,tr,Dr,Pr)}else gr.x=at,gr.y=Kt,gr.point=Mr}else yr(gr,Mr,at,Kt,dt,tr,Dr,Pr)}function yr(gr,Mr,at,Kt,dt,tr,Dr,Pr){var nt=(dt+Dr)*.5,Gt=(tr+Pr)*.5,ya=at>=nt,Ia=Kt>=Gt,tn=Ia<<1|ya;gr.leaf=!1,gr=gr.nodes[tn]||(gr.nodes[tn]=H8()),ya?dt=nt:Dr=nt,Ia?tr=Gt:Pr=Gt,pr(gr,Mr,at,Kt,dt,tr,Dr,Pr)}var Er=H8();if(Er.add=function(gr){pr(Er,gr,+re(gr,++ae),+te(gr,ae),ge,Me,Se,xe)},Er.visit=function(gr){Uv(gr,Er,ge,Me,Se,xe)},Er.find=function(gr){return mne(Er,gr[0],gr[1],ge,Me,Se,xe)},ae=-1,g==null){for(;++aeC||te>I||we=Ye,lr=A>=ir,pr=lr<<1|cr,yr=pr+4;prA&&(C=g.slice(A,C),F[I]?F[I]+=C:F[++I]=C),(S=S[0])===(L=L[0])?F[I]?F[I]+=L:F[++I]=L:(F[++I]=null,U.push({i:I,x:rl(S,L)})),A=z3.lastIndex;return A=0&&!(S=e.interpolators[A](h,g)););return S}e.interpolators=[function(h,g){var A=typeof g;return(A==="string"?za.has(g.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(g)?F3:G8:g instanceof Lt?F3:Array.isArray(g)?Zd:A==="object"&&isNaN(g)?U8:rl)(h,g)}],e.interpolateArray=Zd;function Zd(h,g){var A=[],S=[],L=h.length,C=g.length,I=Math.min(h.length,g.length),F;for(F=0;F=0?h.slice(0,g):h,S=g>=0?h.slice(g+1):"in";return A=gne.get(A)||V8,S=bne.get(S)||B,xne(S(A.apply(null,r.call(arguments,1))))};function xne(h){return function(g){return g<=0?0:g>=1?1:h(g)}}function Y8(h){return function(g){return 1-h(1-g)}}function W8(h){return function(g){return .5*(g<.5?h(2*g):2-h(2-2*g))}}function _ne(h){return h*h}function wne(h){return h*h*h}function Tne(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 Ane(h){return function(g){return Math.pow(g,h)}}function Mne(h){return 1-Math.cos(h*sr)}function kne(h){return Math.pow(2,10*(h-1))}function Sne(h){return 1-Math.sqrt(1-h*h)}function qne(h,g){var A;return arguments.length<2&&(g=.45),arguments.length?A=g/Qe*Math.asin(1/h):(h=1,A=g/4),function(S){return 1+h*Math.pow(2,-10*S)*Math.sin((S-A)*Qe/g)}}function Lne(h){return h||(h=1.70158),function(g){return g*g*((h+1)*g-h)}}function Cne(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=Ene;function Ene(h,g){h=e.hcl(h),g=e.hcl(g);var A=h.h,S=h.c,L=h.l,C=g.h-A,I=g.c-S,F=g.l-L;return isNaN(I)&&(I=0,S=isNaN(S)?g.c:S),isNaN(C)?(C=0,A=isNaN(A)?g.h:A):C>180?C-=360:C<-180&&(C+=360),function(U){return pn(A+C*U,S+I*U,L+F*U)+""}}e.interpolateHsl=Dne;function Dne(h,g){h=e.hsl(h),g=e.hsl(g);var A=h.h,S=h.s,L=h.l,C=g.h-A,I=g.s-S,F=g.l-L;return isNaN(I)&&(I=0,S=isNaN(S)?g.s:S),isNaN(C)?(C=0,A=isNaN(A)?g.h:A):C>180?C-=360:C<-180&&(C+=360),function(U){return rn(A+C*U,S+I*U,L+F*U)+""}}e.interpolateLab=Rne;function Rne(h,g){h=e.lab(h),g=e.lab(g);var A=h.l,S=h.a,L=h.b,C=g.l-A,I=g.a-S,F=g.b-L;return function(U){return Tn(A+C*U,S+I*U,L+F*U)+""}}e.interpolateRound=j8;function j8(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 S=g.transform.baseVal.consolidate()}return new Z8(S?S.matrix:Fne)})(h)};function Z8(h){var g=[h.a,h.b],A=[h.c,h.d],S=J8(g),L=X8(g,A),C=J8(Pne(A,g,-L))||0;g[0]*A[1]180?g+=360:g-h>180&&(h+=360),S.push({i:A.push(xf(A)+"rotate(",null,")")-2,x:rl(h,g)})):g&&A.push(xf(A)+"rotate("+g+")")}function Ine(h,g,A,S){h!==g?S.push({i:A.push(xf(A)+"skewX(",null,")")-2,x:rl(h,g)}):g&&A.push(xf(A)+"skewX("+g+")")}function One(h,g,A,S){if(h[0]!==g[0]||h[1]!==g[1]){var L=A.push(xf(A)+"scale(",null,",",null,")");S.push({i:L-4,x:rl(h[0],g[0])},{i:L-2,x:rl(h[1],g[1])})}else(g[0]!==1||g[1]!==1)&&A.push(xf(A)+"scale("+g+")")}function $8(h,g){var A=[],S=[];return h=e.transform(h),g=e.transform(g),Nne(h.translate,g.translate,A,S),zne(h.rotate,g.rotate,A,S),Ine(h.skew,g.skew,A,S),One(h.scale,g.scale,A,S),h=g=null,function(L){for(var C=-1,I=S.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=Ud(h.tick)),h):C},h.start=function(){var xe,Ye=we.length,ir=ke.length,cr=S[0],lr=S[1],pr,yr;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(S,F,F.depth)||0),delete F.children;return wo(L,function(re){var te,we;h&&(te=re.children)&&te.sort(h),A&&(we=re.parent)&&(we.value+=re.value)}),I}return S.sort=function(L){return arguments.length?(h=L,S):h},S.children=function(L){return arguments.length?(g=L,S):g},S.value=function(L){return arguments.length?(A=L,S):A},S.revalue=function(L){return A&&(Vv(L,function(C){C.children&&(C.value=0)}),wo(L,function(C){var I;C.children||(C.value=+A.call(S,C,C.depth)||0),(I=C.parent)&&(I.value+=C.value)})),L},S};function Gv(h,g){return e.rebind(h,g,"sort","children","value"),h.nodes=h,h.links=eie,h}function Vv(h,g){for(var A=[h];(h=A.pop())!=null;)if(g(h),(L=h.children)&&(S=L.length))for(var S,L;--S>=0;)A.push(L[S])}function wo(h,g){for(var A=[h],S=[];(h=A.pop())!=null;)if(S.push(h),(I=h.children)&&(C=I.length))for(var L=-1,C,I;++LL&&(L=F),S.push(F)}for(I=0;IS&&(A=g,S=L);return A}function lie(h){return h.reduce(sie,0)}function sie(h,g){return h+g[1]}e.layout.histogram=function(){var h=!0,g=Number,A=fie,S=uie;function L(C,te){for(var F=[],U=C.map(g,this),J=A.call(this,U,te),$=S.call(this,J,U,te),re,te=-1,we=U.length,ke=$.length-1,ae=h?1:1/we,de;++te0)for(te=-1;++te=J[0]&&de<=J[1]&&(re=F[e.bisect($,de,1,ke)-1],re.y+=ae,re.push(C[te]));return F}return L.value=function(C){return arguments.length?(g=C,L):g},L.range=function(C){return arguments.length?(A=Or(C),L):A},L.bins=function(C){return arguments.length?(S=typeof C=="number"?function(I){return rA(I,C)}:Or(C),L):S},L.frequency=function(C){return arguments.length?(h=!!C,L):h},L};function uie(h,g){return rA(h,Math.ceil(Math.log(g.length)/Math.LN2+1))}function rA(h,g){for(var A=-1,S=+h[0],L=(h[1]-S)/g,C=[];++A<=g;)C[A]=L*A+S;return C}function fie(h){return[e.min(h),e.max(h)]}e.layout.pack=function(){var h=e.layout.hierarchy().sort(cie),g=0,A=[1,1],S;function L(C,I){var F=h.call(this,C,I),U=F[0],J=A[0],$=A[1],re=S==null?Math.sqrt:typeof S=="function"?S:function(){return S};if(U.x=U.y=0,wo(U,function(we){we.r=+re(we.value)}),wo(U,nA),g){var te=g*(S?1:Math.max(2*U.r/J,2*U.r/$))/2;wo(U,function(we){we.r+=te}),wo(U,nA),wo(U,function(we){we.r-=te})}return iA(U,J/2,$/2,S?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?(S=C==null||typeof C=="function"?C:+C,L):S},L.padding=function(C){return arguments.length?(g=+C,L):g},Gv(L,h)};function cie(h,g){return h.value-g.value}function B3(h,g){var A=h._pack_next;h._pack_next=g,g._pack_prev=h,g._pack_next=A,A._pack_prev=g}function tA(h,g){h._pack_next=g,g._pack_prev=h}function aA(h,g){var A=g.x-h.x,S=g.y-h.y,L=h.r+g.r;return .999*L*L>A*A+S*S}function nA(h){if(!(g=h.children)||!(te=g.length))return;var g,A=1/0,S=-1/0,L=1/0,C=-1/0,I,F,U,J,$,re,te;function we(xe){A=Math.min(xe.x-xe.r,A),S=Math.max(xe.x+xe.r,S),L=Math.min(xe.y-xe.r,L),C=Math.max(xe.y+xe.r,C)}if(g.forEach(vie),I=g[0],I.x=-I.r,I.y=0,we(I),te>1&&(F=g[1],F.x=F.r,F.y=0,we(F),te>2))for(U=g[2],oA(I,F,U),we(U),B3(I,U),I._pack_prev=U,B3(U,F),F=I._pack_next,J=3;Jde.x&&(de=Ye),Ye.depth>ge.depth&&(ge=Ye)});var Me=g(ae,de)/2-ae.x,Se=A[0]/(de.x+g(de,ae)/2+Me),xe=A[1]/(ge.depth||1);Vv(we,function(Ye){Ye.x=(Ye.x+Me)*Se,Ye.y=Ye.depth*xe})}return te}function C($){for(var re={A:null,children:[$]},te=[re],we;(we=te.pop())!=null;)for(var ke=we.children,ae,de=0,ge=ke.length;de0&&(die(yie(ae,$,te),$,Ye),ge+=Ye,Me+=Ye),Se+=ae.m,ge+=we.m,xe+=de.m,Me+=ke.m;ae&&!U3(ke)&&(ke.t=ae,ke.m+=Se-Me),we&&!H3(de)&&(de.t=we,de.m+=ge-xe,te=$)}return te}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?(S=(A=$)==null?J:null,L):S?null:A},L.nodeSize=function($){return arguments.length?(S=(A=$)==null?null:J,L):S?A:null},Gv(L,h)};function lA(h,g){return h.parent==g.parent?1:2}function H3(h){var g=h.children;return g.length?g[0]:h.t}function U3(h){var g=h.children,A;return(A=g.length)?g[A-1]:h.t}function die(h,g,A){var S=A/(g.i-h.i);g.c-=S,g.s+=A,h.c+=S,g.z+=A,g.m+=A}function pie(h){for(var g=0,A=0,S=h.children,L=S.length,C;--L>=0;)C=S[L],C.z+=g,C.m+=g,g+=C.s+(A+=C.c)}function yie(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=lA,A=[1,1],S=!1;function L(C,I){var F=h.call(this,C,I),U=F[0],J,$=0;wo(U,function(ae){var de=ae.children;de&&de.length?(ae.x=gie(de),ae.y=mie(de)):(ae.x=J?$+=g(ae,J):0,ae.y=0,J=ae)});var re=sA(U),te=uA(U),we=re.x-g(re,te)/2,ke=te.x+g(te,re)/2;return wo(U,S?function(ae){ae.x=(ae.x-U.x)*A[0],ae.y=(U.y-ae.y)*A[1]}:function(ae){ae.x=(ae.x-we)/(ke-we)*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?(S=(A=C)==null,L):S?null:A},L.nodeSize=function(C){return arguments.length?(S=(A=C)!=null,L):S?A:null},Gv(L,h)};function mie(h){return 1+e.max(h,function(g){return g.y})}function gie(h){return h.reduce(function(g,A){return g+A.x},0)/h.length}function sA(h){var g=h.children;return g&&g.length?sA(g[0]):h}function uA(h){var g=h.children,A;return g&&(A=g.length)?uA(g[A-1]):h}e.layout.treemap=function(){var h=e.layout.hierarchy(),g=Math.round,A=[1,1],S=null,L=G3,C=!1,I,F="squarify",U=.5*(1+Math.sqrt(5));function J(ae,de){for(var ge=-1,Me=ae.length,Se,xe;++ge0;)Me.push(xe=Se[lr-1]),Me.area+=xe.area,F!=="squarify"||(ir=te(Me,cr))<=Ye?(Se.pop(),Ye=ir):(Me.area-=Me.pop().area,we(Me,cr,ge,!1),cr=Math.min(ge.dx,ge.dy),Me.length=Me.area=0,Ye=1/0);Me.length&&(we(Me,cr,ge,!0),Me.length=Me.area=0),de.forEach($)}}function re(ae){var de=ae.children;if(de&&de.length){var ge=L(ae),Me=de.slice(),Se,xe=[];for(J(Me,ge.dx*ge.dy/ae.value),xe.area=0;Se=Me.pop();)xe.push(Se),xe.area+=Se.area,Se.z!=null&&(we(xe,Se.z?ge.dx:ge.dy,ge,!Me.length),xe.length=xe.area=0);de.forEach(re)}}function te(ae,de){for(var ge=ae.area,Me,Se=0,xe=1/0,Ye=-1,ir=ae.length;++YeSe&&(Se=Me));return ge*=ge,de*=de,ge?Math.max(de*Se*U/ge,ge/(de*xe*U)):1/0}function we(ae,de,ge,Me){var Se=-1,xe=ae.length,Ye=ge.x,ir=ge.y,cr=de?g(ae.area/de):0,lr;if(de==ge.dx){for((Me||cr>ge.dy)&&(cr=ge.dy);++Sege.dx)&&(cr=ge.dx);++Se1);return h+g*S*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?_ie:bie,J=S?Hne:Bne;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(j8)},F.clamp=function(U){return arguments.length?(S=U,I()):S},F.interpolate=function(U){return arguments.length?(A=U,I()):A},F.ticks=function(U){return W3(h,U)},F.tickFormat=function(U,J){return d3_scale_linearTickFormat(h,U,J)},F.nice=function(U){return dA(h,U),I()},F.copy=function(){return vA(h,g,A,S)},I()}function hA(h,g){return e.rebind(h,g,"range","rangeRound","interpolate","clamp")}function dA(h,g){return V3(h,cA(Y3(h,g)[2])),V3(h,cA(Y3(h,g)[2])),h}function Y3(h,g){g==null&&(g=10);var A=Xd(h),S=A[1]-A[0],L=Math.pow(10,Math.floor(Math.log(S/g)/Math.LN10)),C=g/S*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 W3(h,g){return e.range.apply(e,Y3(h,g))}var wie={s:1,g:1,p:1,r:1,e:1};function pA(h){return-Math.floor(Math.log(h)/Math.LN10+.01)}function mCe(h,g){var A=pA(g[2]);return h in wie?Math.abs(A-pA(Math.max(x(g[0]),x(g[1]))))+ +(h!=="e"):A-(h==="%")*2}e.scale.log=function(){return yA(e.scale.linear().domain([0,1]),10,!0,[1,10])};function yA(h,g,A,S){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((S=F.map(Number)).map(L)),I):S},I.base=function(F){return arguments.length?(g=+F,h.domain(S.map(L)),I):g},I.nice=function(){var F=V3(S.map(L),A?Math:Tie);return h.domain(F),S=F.map(C),I},I.ticks=function(){var F=Xd(S),U=[],J=F[0],$=F[1],re=Math.floor(L(J)),te=Math.ceil(L($)),we=g%1?2:g;if(isFinite(te-re)){if(A){for(;re0;ke--)U.push(C(re)*ke);for(re=0;U[re]$;te--);U=U.slice(re,te)}return U},I.copy=function(){return yA(h.copy(),g,A,S)},hA(I,h)}var Tie={floor:function(h){return-Math.ceil(-h)},ceil:function(h){return-Math.floor(-h)}};e.scale.pow=function(){return mA(e.scale.linear(),1,[0,1])};function mA(h,g,A){var S=$d(g),L=$d(1/g);function C(I){return h(S(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(S)),C):A},C.ticks=function(I){return W3(A,I)},C.tickFormat=function(I,F){return d3_scale_linearTickFormat(A,I,F)},C.nice=function(I){return C.domain(dA(A,I))},C.exponent=function(I){return arguments.length?(S=$d(g=I),L=$d(1/g),h.domain(A.map(S)),C):g},C.copy=function(){return mA(h.copy(),g,A)},hA(C,h)}function $d(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 gA([],{t:"range",a:[[]]})};function gA(h,g){var A,S,L;function C(F){return S[((A.get(F)||(g.t==="range"?A.set(F,h.push(F)):NaN))-1)%S.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],Cte?0:1;if($=fr)return U($,ke)+(J?U(J,1-ke):"")+"Z";var ae,de,ge,Me,Se=0,xe=0,Ye,ir,cr,lr,pr,yr,Er,gr,Mr=[];if((Me=(+I.apply(this,arguments)||0)/2)&&(ge=S===Kd?Math.sqrt(J*J+$*$):+S.apply(this,arguments),ke||(xe*=-1),$&&(xe=ft(ge/$*Math.sin(Me))),J&&(Se=ft(ge/J*Math.sin(Me)))),$){Ye=$*Math.cos(re+xe),ir=$*Math.sin(re+xe),cr=$*Math.cos(te-xe),lr=$*Math.sin(te-xe);var at=Math.abs(te-re-2*xe)<=Re?0:1;if(xe&&Qd(Ye,ir,cr,lr)===ke^at){var Kt=(re+te)/2;Ye=$*Math.cos(Kt),ir=$*Math.sin(Kt),cr=lr=null}}else Ye=ir=0;if(J){pr=J*Math.cos(te-Se),yr=J*Math.sin(te-Se),Er=J*Math.cos(re+Se),gr=J*Math.sin(re+Se);var dt=Math.abs(re-te+2*Se)<=Re?0:1;if(Se&&Qd(pr,yr,Er,gr)===1-ke^dt){var tr=(re+te)/2;pr=J*Math.cos(tr),yr=J*Math.sin(tr),Er=gr=null}}else pr=yr=0;if(we>ve&&(ae=Math.min(Math.abs($-J)/2,+A.apply(this,arguments)))>.001){de=J<$^ke?0:1;var Dr=ae,Pr=ae;if(we0?0:1}function ep(h,g,A,S,L){var C=h[0]-g[0],I=h[1]-g[1],F=(L?S:-S)/Math.sqrt(C*C+I*I),U=F*I,J=-F*C,$=h[0]+U,re=h[1]+J,te=g[0]+U,we=g[1]+J,ke=($+te)/2,ae=(re+we)/2,de=te-$,ge=we-re,Me=de*de+ge*ge,Se=A-S,xe=$*we-te*re,Ye=(ge<0?-1:1)*Math.sqrt(Math.max(0,Se*Se*Me-xe*xe)),ir=(xe*ge-de*Ye)/Me,cr=(-xe*de-ge*Ye)/Me,lr=(xe*ge+de*Ye)/Me,pr=(-xe*de+ge*Ye)/Me,yr=ir-ke,Er=cr-ae,gr=lr-ke,Mr=pr-ae;return yr*yr+Er*Er>gr*gr+Mr*Mr&&(ir=lr,cr=pr),[[ir-U,cr-J],[ir*A/Se,cr*A/Se]]}function MA(){return!0}function kA(h){var g=pf,A=zv,S=MA,L=ji,C=L.key,I=.7;function F(U){var J=[],$=[],re=-1,te=U.length,we,ke=Or(g),ae=Or(A);function de(){J.push("M",L(h($),I))}for(;++re1?h.join("L"):h+"Z"}function SA(h){return h.join("L")+"Z"}function Die(h){for(var g=0,A=h.length,S=h[0],L=[S[0],",",S[1]];++g1&&L.push("H",S[0]),L.join("")}function Z3(h){for(var g=0,A=h.length,S=h[0],L=[S[0],",",S[1]];++g1){F=g[1],C=h[U],U++,S+="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*S,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 Hie(h){return h.length<3?ji(h):h[0]+rp(h,Bie(h))}e.svg.line.radial=function(){var h=kA(EA);return h.radius=h.x,delete h.x,h.angle=h.y,delete h.y,h};function EA(h){for(var g,A=-1,S=h.length,L,C;++ARe)+",1 "+re}function J($,re,te,we){return"Q 0,0 "+we}return C.radius=function($){return arguments.length?(A=Or($),C):A},C.source=function($){return arguments.length?(h=Or($),C):h},C.target=function($){return arguments.length?(g=Or($),C):g},C.startAngle=function($){return arguments.length?(S=Or($),C):S},C.endAngle=function($){return arguments.length?(L=Or($),C):L},C};function Uie(h){return h.radius}e.svg.diagonal=function(){var h=RA,g=PA,A=FA;function S(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 S.source=function(L){return arguments.length?(h=Or(L),S):h},S.target=function(L){return arguments.length?(g=Or(L),S):g},S.projection=function(L){return arguments.length?(A=L,S):A},S};function FA(h){return[h.x,h.y]}e.svg.diagonal.radial=function(){var h=e.svg.diagonal(),g=FA,A=h.projection;return h.projection=function(S){return arguments.length?A(Gie(g=S)):g},h};function Gie(h){return function(){var g=h.apply(this,arguments),A=g[0],S=g[1]-sr;return[A*Math.cos(S),A*Math.sin(S)]}}e.svg.symbol=function(){var h=Yie,g=Vie;function A(S,L){return(zA.get(h.call(this,S,L))||NA)(g.call(this,S,L))}return A.type=function(S){return arguments.length?(h=Or(S),A):h},A.size=function(S){return arguments.length?(g=Or(S),A):g},A};function Vie(){return 64}function Yie(){return"circle"}function NA(h){var g=Math.sqrt(h/Re);return"M0,"+g+"A"+g+","+g+" 0 1,1 0,"+-g+"A"+g+","+g+" 0 1,1 0,"+g+"Z"}var zA=e.map({circle:NA,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*IA)),A=g*IA;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/tp),A=g*tp/2;return"M0,"+A+"L"+g+","+-A+" "+-g+","+-A+"Z"},"triangle-up":function(h){var g=Math.sqrt(h/tp),A=g*tp/2;return"M0,"+-A+"L"+g+","+A+" "+-g+","+A+"Z"}});e.svg.symbolTypes=zA.keys();var tp=Math.sqrt(3),IA=Math.tan(30*kr);ce.transition=function(h){for(var g=Hs||++BA,A=eb(h),S=[],L,C,I=np||{time:Date.now(),ease:Tne,delay:0,duration:250},F=-1,U=this.length;++F0;)re[--Me].call(h,ge);if(de>=1)return I.event&&I.event.end.call(h,h.__data__,g),--C.count?delete C[S]:delete h[A],1}I||(F=L.time,U=Ud(te,0,F),I=C[S]={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=HA,A=6,S=6,L=3,C=[10],I=null,F;function U(J){J.each(function(){var $=e.select(this),re=this.__chart__||h,te=this.__chart__=h.copy(),we=I==null?te.ticks?te.ticks.apply(te,C):te.domain():I,ke=F==null?te.tickFormat?te.tickFormat.apply(te,C):B:F,ae=$.selectAll(".tick").data(we,te),de=ae.enter().insert("g",".domain").attr("class","tick").style("opacity",ve),ge=e.transition(ae.exit()).style("opacity",ve).remove(),Me=e.transition(ae.order()).style("opacity",1),Se=Math.max(A,0)+L,xe,Ye=Jd(te),ir=$.selectAll(".domain").data([0]),cr=(ir.enter().append("path").attr("class","domain"),e.transition(ir));de.append("line"),de.append("text");var lr=de.select("line"),pr=Me.select("line"),yr=ae.select("text").text(ke),Er=de.select("text"),gr=Me.select("text"),Mr=g==="top"||g==="left"?-1:1,at,Kt,dt,tr;if(g==="bottom"||g==="top"?(xe=Zie,at="x",dt="y",Kt="x2",tr="y2",yr.attr("dy",Mr<0?"0em":".71em").style("text-anchor","middle"),cr.attr("d","M"+Ye[0]+","+Mr*S+"V0H"+Ye[1]+"V"+Mr*S)):(xe=Xie,at="y",dt="x",Kt="y2",tr="x2",yr.attr("dy",".32em").style("text-anchor",Mr<0?"end":"start"),cr.attr("d","M"+Mr*S+","+Ye[0]+"H0V"+Ye[1]+"H"+Mr*S)),lr.attr(tr,Mr*A),Er.attr(dt,Mr*Se),pr.attr(Kt,0).attr(tr,Mr*A),gr.attr(at,0).attr(dt,Mr*Se),te.rangeBand){var Dr=te,Pr=Dr.rangeBand()/2;re=te=function(nt){return Dr(nt)+Pr}}else re.rangeBand?re=te:ge.call(xe,te,re);de.call(xe,re,te),Me.call(xe,te,te)})}return U.scale=function(J){return arguments.length?(h=J,U):h},U.orient=function(J){return arguments.length?(g=J in jie?J+"":HA,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,S=+arguments[$-1],U):A},U.innerTickSize=function(J){return arguments.length?(A=+J,U):A},U.outerTickSize=function(J){return arguments.length?(S=+J,U):S},U.tickPadding=function(J){return arguments.length?(L=+J,U):L},U.tickSubdivide=function(){return arguments.length&&U},U};var HA="bottom",jie={top:1,right:1,bottom:1,left:1};function Zie(h,g,A){h.attr("transform",function(S){var L=g(S);return"translate("+(isFinite(L)?L:A(S))+",0)"})}function Xie(h,g,A){h.attr("transform",function(S){var L=g(S);return"translate(0,"+(isFinite(L)?L:A(S))+")"})}e.svg.brush=function(){var h=ie($,"brushstart","brush","brushend"),g=null,A=null,S=[0,0],L=[0,0],C,I,F=!0,U=!0,J=rb[0];function $(ae){ae.each(function(){var de=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",ke).on("touchstart.brush",ke),ge=de.selectAll(".background").data([0]);ge.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),de.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Me=de.selectAll(".resize").data(J,B);Me.exit().remove(),Me.enter().append("g").attr("class",function(ir){return"resize "+ir}).style("cursor",function(ir){return Jie[ir]}).append("rect").attr("x",function(ir){return/[ew]$/.test(ir)?-3:null}).attr("y",function(ir){return/^[ns]/.test(ir)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Me.style("display",$.empty()?"none":null);var Se=e.transition(de),xe=e.transition(ge),Ye;g&&(Ye=Jd(g),xe.attr("x",Ye[0]).attr("width",Ye[1]-Ye[0]),te(Se)),A&&(Ye=Jd(A),xe.attr("y",Ye[0]).attr("height",Ye[1]-Ye[0]),we(Se)),re(Se)})}$.event=function(ae){ae.each(function(){var de=h.of(this,arguments),ge={x:S,y:L,i:C,j:I},Me=this.__chart__||ge;this.__chart__=ge,Hs?e.select(this).transition().each("start.brush",function(){C=Me.i,I=Me.j,S=Me.x,L=Me.y,de({type:"brushstart"})}).tween("brush:brush",function(){var Se=Zd(S,ge.x),xe=Zd(L,ge.y);return C=I=null,function(Ye){S=ge.x=Se(Ye),L=ge.y=xe(Ye),de({type:"brush",mode:"resize"})}}).each("end.brush",function(){C=ge.i,I=ge.j,de({type:"brush",mode:"resize"}),de({type:"brushend"})}):(de({type:"brushstart"}),de({type:"brush",mode:"resize"}),de({type:"brushend"}))})};function re(ae){ae.selectAll(".resize").attr("transform",function(de){return"translate("+S[+/e$/.test(de)]+","+L[+/^s/.test(de)]+")"})}function te(ae){ae.select(".extent").attr("x",S[0]),ae.selectAll(".extent,.n>rect,.s>rect").attr("width",S[1]-S[0])}function we(ae){ae.select(".extent").attr("y",L[0]),ae.selectAll(".extent,.e>rect,.w>rect").attr("height",L[1]-L[0])}function ke(){var ae=this,de=e.select(e.event.target),ge=h.of(ae,arguments),Me=e.select(ae),Se=de.datum(),xe=!/^(n|s)$/.test(Se)&&g,Ye=!/^(e|w)$/.test(Se)&&A,ir=de.classed("extent"),cr=rr(ae),lr,pr=e.mouse(ae),yr,Er=e.select(i(ae)).on("keydown.brush",at).on("keyup.brush",Kt);if(e.event.changedTouches?Er.on("touchmove.brush",dt).on("touchend.brush",Dr):Er.on("mousemove.brush",dt).on("mouseup.brush",Dr),Me.interrupt().selectAll("*").interrupt(),ir)pr[0]=S[0]-pr[0],pr[1]=L[0]-pr[1];else if(Se){var gr=+/w$/.test(Se),Mr=+/^n/.test(Se);yr=[S[1-gr]-pr[0],L[1-Mr]-pr[1]],pr[0]=S[gr],pr[1]=L[Mr]}else e.event.altKey&&(lr=pr.slice());Me.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",de.style("cursor")),ge({type:"brushstart"}),dt();function at(){e.event.keyCode==32&&(ir||(lr=null,pr[0]-=S[1],pr[1]-=L[1],ir=2),ee())}function Kt(){e.event.keyCode==32&&ir==2&&(pr[0]+=S[1],pr[1]+=L[1],ir=0,ee())}function dt(){var Pr=e.mouse(ae),nt=!1;yr&&(Pr[0]+=yr[0],Pr[1]+=yr[1]),ir||(e.event.altKey?(lr||(lr=[(S[0]+S[1])/2,(L[0]+L[1])/2]),pr[0]=S[+(Pr[0]{(function(e,r){typeof cp=="object"&&typeof ZA!="undefined"?r(cp):(e=e||self,r(e.d3=e.d3||{}))})(cp,function(e){"use strict";var r=new Date,t=new Date;function a(se,Ae,Xe,hr){function Fe(Te){return se(Te=arguments.length===0?new Date:new Date(+Te)),Te}return Fe.floor=function(Te){return se(Te=new Date(+Te)),Te},Fe.ceil=function(Te){return se(Te=new Date(Te-1)),Ae(Te,1),se(Te),Te},Fe.round=function(Te){var qe=Fe(Te),Ge=Fe.ceil(Te);return Te-qe0))return Je;do Je.push(Ve=new Date(+Te)),Ae(Te,Ge),se(Te);while(Ve=qe)for(;se(qe),!Te(qe);)qe.setTime(qe-1)},function(qe,Ge){if(qe>=qe)if(Ge<0)for(;++Ge<=0;)for(;Ae(qe,-1),!Te(qe););else for(;--Ge>=0;)for(;Ae(qe,1),!Te(qe););})},Xe&&(Fe.count=function(Te,qe){return r.setTime(+Te),t.setTime(+qe),se(r),se(t),Math.floor(Xe(r,t))},Fe.every=function(Te){return Te=Math.floor(Te),!isFinite(Te)||!(Te>0)?null:Te>1?Fe.filter(hr?function(qe){return hr(qe)%Te===0}:function(qe){return Fe.count(0,qe)%Te===0}):Fe}),Fe}var n=a(function(){},function(se,Ae){se.setTime(+se+Ae)},function(se,Ae){return Ae-se});n.every=function(se){return se=Math.floor(se),!isFinite(se)||!(se>0)?null:se>1?a(function(Ae){Ae.setTime(Math.floor(Ae/se)*se)},function(Ae,Xe){Ae.setTime(+Ae+Xe*se)},function(Ae,Xe){return(Xe-Ae)/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,Ae){se.setTime(+se+Ae*o)},function(se,Ae){return(Ae-se)/o},function(se){return se.getUTCSeconds()}),v=c.range,d=a(function(se){se.setTime(se-se.getMilliseconds()-se.getSeconds()*o)},function(se,Ae){se.setTime(+se+Ae*l)},function(se,Ae){return(Ae-se)/l},function(se){return se.getMinutes()}),p=d.range,y=a(function(se){se.setTime(se-se.getMilliseconds()-se.getSeconds()*o-se.getMinutes()*l)},function(se,Ae){se.setTime(+se+Ae*s)},function(se,Ae){return(Ae-se)/s},function(se){return se.getHours()}),m=y.range,x=a(function(se){se.setHours(0,0,0,0)},function(se,Ae){se.setDate(se.getDate()+Ae)},function(se,Ae){return(Ae-se-(Ae.getTimezoneOffset()-se.getTimezoneOffset())*l)/u},function(se){return se.getDate()-1}),w=x.range;function _(se){return a(function(Ae){Ae.setDate(Ae.getDate()-(Ae.getDay()+7-se)%7),Ae.setHours(0,0,0,0)},function(Ae,Xe){Ae.setDate(Ae.getDate()+Xe*7)},function(Ae,Xe){return(Xe-Ae-(Xe.getTimezoneOffset()-Ae.getTimezoneOffset())*l)/f})}var b=_(0),T=_(1),k=_(2),M=_(3),q=_(4),E=_(5),D=_(6),P=b.range,R=T.range,z=k.range,O=M.range,B=q.range,Y=E.range,V=D.range,H=a(function(se){se.setDate(1),se.setHours(0,0,0,0)},function(se,Ae){se.setMonth(se.getMonth()+Ae)},function(se,Ae){return Ae.getMonth()-se.getMonth()+(Ae.getFullYear()-se.getFullYear())*12},function(se){return se.getMonth()}),G=H.range,X=a(function(se){se.setMonth(0,1),se.setHours(0,0,0,0)},function(se,Ae){se.setFullYear(se.getFullYear()+Ae)},function(se,Ae){return Ae.getFullYear()-se.getFullYear()},function(se){return se.getFullYear()});X.every=function(se){return!isFinite(se=Math.floor(se))||!(se>0)?null:a(function(Ae){Ae.setFullYear(Math.floor(Ae.getFullYear()/se)*se),Ae.setMonth(0,1),Ae.setHours(0,0,0,0)},function(Ae,Xe){Ae.setFullYear(Ae.getFullYear()+Xe*se)})};var Z=X.range,ee=a(function(se){se.setUTCSeconds(0,0)},function(se,Ae){se.setTime(+se+Ae*l)},function(se,Ae){return(Ae-se)/l},function(se){return se.getUTCMinutes()}),fe=ee.range,ie=a(function(se){se.setUTCMinutes(0,0,0)},function(se,Ae){se.setTime(+se+Ae*s)},function(se,Ae){return(Ae-se)/s},function(se){return se.getUTCHours()}),ue=ie.range,K=a(function(se){se.setUTCHours(0,0,0,0)},function(se,Ae){se.setUTCDate(se.getUTCDate()+Ae)},function(se,Ae){return(Ae-se)/u},function(se){return se.getUTCDate()-1}),_e=K.range;function le(se){return a(function(Ae){Ae.setUTCDate(Ae.getUTCDate()-(Ae.getUTCDay()+7-se)%7),Ae.setUTCHours(0,0,0,0)},function(Ae,Xe){Ae.setUTCDate(Ae.getUTCDate()+Xe*7)},function(Ae,Xe){return(Xe-Ae)/f})}var he=le(0),oe=le(1),ce=le(2),W=le(3),Q=le(4),j=le(5),pe=le(6),me=he.range,ye=oe.range,Pe=ce.range,Ne=W.range,Ee=Q.range,Ie=j.range,Ue=pe.range,Be=a(function(se){se.setUTCDate(1),se.setUTCHours(0,0,0,0)},function(se,Ae){se.setUTCMonth(se.getUTCMonth()+Ae)},function(se,Ae){return Ae.getUTCMonth()-se.getUTCMonth()+(Ae.getUTCFullYear()-se.getUTCFullYear())*12},function(se){return se.getUTCMonth()}),Ce=Be.range,Oe=a(function(se){se.setUTCMonth(0,1),se.setUTCHours(0,0,0,0)},function(se,Ae){se.setUTCFullYear(se.getUTCFullYear()+Ae)},function(se,Ae){return Ae.getUTCFullYear()-se.getUTCFullYear()},function(se){return se.getUTCFullYear()});Oe.every=function(se){return!isFinite(se=Math.floor(se))||!(se>0)?null:a(function(Ae){Ae.setUTCFullYear(Math.floor(Ae.getUTCFullYear()/se)*se),Ae.setUTCMonth(0,1),Ae.setUTCHours(0,0,0,0)},function(Ae,Xe){Ae.setUTCFullYear(Ae.getUTCFullYear()+Xe*se)})};var He=Oe.range;e.timeDay=x,e.timeDays=w,e.timeFriday=E,e.timeFridays=Y,e.timeHour=y,e.timeHours=m,e.timeInterval=a,e.timeMillisecond=n,e.timeMilliseconds=i,e.timeMinute=d,e.timeMinutes=p,e.timeMonday=T,e.timeMondays=R,e.timeMonth=H,e.timeMonths=G,e.timeSaturday=D,e.timeSaturdays=V,e.timeSecond=c,e.timeSeconds=v,e.timeSunday=b,e.timeSundays=P,e.timeThursday=q,e.timeThursdays=B,e.timeTuesday=k,e.timeTuesdays=z,e.timeWednesday=M,e.timeWednesdays=O,e.timeWeek=b,e.timeWeeks=P,e.timeYear=X,e.timeYears=Z,e.utcDay=K,e.utcDays=_e,e.utcFriday=j,e.utcFridays=Ie,e.utcHour=ie,e.utcHours=ue,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=ee,e.utcMinutes=fe,e.utcMonday=oe,e.utcMondays=ye,e.utcMonth=Be,e.utcMonths=Ce,e.utcSaturday=pe,e.utcSaturdays=Ue,e.utcSecond=c,e.utcSeconds=v,e.utcSunday=he,e.utcSundays=me,e.utcThursday=Q,e.utcThursdays=Ee,e.utcTuesday=ce,e.utcTuesdays=Pe,e.utcWednesday=W,e.utcWednesdays=Ne,e.utcWeek=he,e.utcWeeks=me,e.utcYear=Oe,e.utcYears=He,Object.defineProperty(e,"__esModule",{value:!0})})});var wf=N((vp,XA)=>{(function(e,r){typeof vp=="object"&&typeof XA!="undefined"?r(vp,tb()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(vp,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,Re=ne.time,Qe=ne.periods,fr=ne.days,sr=ne.shortDays,kr=ne.months,Ir=ne.shortMonths,Yr=v(Qe),et=d(Qe),qt=v(fr),ft=d(fr),Ft=v(sr),Tt=d(sr),da=v(kr),$t=d(kr),oa=v(Ir),dr=d(Ir),yt={a:Qo,A:el,b:ct,B:Tn,c:null,d:H,e:H,f:fe,H:G,I:X,j:Z,L:ee,m:ie,M:ue,p:zt,q:zs,Q:qe,s:Ge,S:K,u:_e,U:le,V:he,w:oe,W:ce,x:null,X:null,y:W,Y:Q,Z:j,"%":Te},Zr={a:yn,A:Vi,b:jt,B:Yi,c:null,d:pe,e:pe,f:Ee,H:me,I:ye,j:Pe,L:Ne,m:Ie,M:Ue,p:Rl,q:Pl,Q:qe,s:Ge,S:Be,u:Ce,U:Oe,V:He,w:se,W:Ae,x:null,X:null,y:Xe,Y:hr,Z:Fe,"%":Te},$r={a:rn,A:Wt,b:dn,B:pn,c:Nt,d:q,e:q,f:O,H:D,I:D,j:E,L:z,m:M,M:P,p:Bt,q:k,Q:Y,s:V,S:R,u:y,U:m,V:x,w:p,W:w,x:Ct,X:_a,y:b,Y:_,Z:T,"%":B};yt.x=mt(De,yt),yt.X=mt(Re,yt),yt.c=mt(ve,yt),Zr.x=mt(De,Zr),Zr.X=mt(Re,Zr),Zr.c=mt(ve,Zr);function mt(mr,Kr){return function(vt){var ur=[],Na=-1,At=0,za=mr.length,Or,Wi,Is;for(vt instanceof Date||(vt=new Date(+vt));++Na53)return null;"w"in ur||(ur.w=1),"Z"in ur?(At=a(n(ur.y,0,1)),za=At.getUTCDay(),At=za>4||za===0?r.utcMonday.ceil(At):r.utcMonday(At),At=r.utcDay.offset(At,(ur.V-1)*7),ur.y=At.getUTCFullYear(),ur.m=At.getUTCMonth(),ur.d=At.getUTCDate()+(ur.w+6)%7):(At=t(n(ur.y,0,1)),za=At.getDay(),At=za>4||za===0?r.timeMonday.ceil(At):r.timeMonday(At),At=r.timeDay.offset(At,(ur.V-1)*7),ur.y=At.getFullYear(),ur.m=At.getMonth(),ur.d=At.getDate()+(ur.w+6)%7)}else("W"in ur||"U"in ur)&&("w"in ur||(ur.w="u"in ur?ur.u%7:"W"in ur?1:0),za="Z"in ur?a(n(ur.y,0,1)).getUTCDay():t(n(ur.y,0,1)).getDay(),ur.m=0,ur.d="W"in ur?(ur.w+6)%7+ur.W*7-(za+5)%7:ur.w+ur.U*7-(za+6)%7);return"Z"in ur?(ur.H+=ur.Z/100|0,ur.M+=ur.Z%100,a(ur)):t(ur)}}function Gr(mr,Kr,vt,ur){for(var Na=0,At=Kr.length,za=vt.length,Or,Wi;Na=za)return-1;if(Or=Kr.charCodeAt(Na++),Or===37){if(Or=Kr.charAt(Na++),Wi=$r[Or in o?Kr.charAt(Na++):Or],!Wi||(ur=Wi(mr,vt,ur))<0)return-1}else if(Or!=vt.charCodeAt(ur++))return-1}return ur}function Bt(mr,Kr,vt){var ur=Yr.exec(Kr.slice(vt));return ur?(mr.p=et[ur[0].toLowerCase()],vt+ur[0].length):-1}function rn(mr,Kr,vt){var ur=Ft.exec(Kr.slice(vt));return ur?(mr.w=Tt[ur[0].toLowerCase()],vt+ur[0].length):-1}function Wt(mr,Kr,vt){var ur=qt.exec(Kr.slice(vt));return ur?(mr.w=ft[ur[0].toLowerCase()],vt+ur[0].length):-1}function dn(mr,Kr,vt){var ur=oa.exec(Kr.slice(vt));return ur?(mr.m=dr[ur[0].toLowerCase()],vt+ur[0].length):-1}function pn(mr,Kr,vt){var ur=da.exec(Kr.slice(vt));return ur?(mr.m=$t[ur[0].toLowerCase()],vt+ur[0].length):-1}function Nt(mr,Kr,vt){return Gr(mr,ve,Kr,vt)}function Ct(mr,Kr,vt){return Gr(mr,De,Kr,vt)}function _a(mr,Kr,vt){return Gr(mr,Re,Kr,vt)}function Qo(mr){return sr[mr.getDay()]}function el(mr){return fr[mr.getDay()]}function ct(mr){return Ir[mr.getMonth()]}function Tn(mr){return kr[mr.getMonth()]}function zt(mr){return Qe[+(mr.getHours()>=12)]}function zs(mr){return 1+~~(mr.getMonth()/3)}function yn(mr){return sr[mr.getUTCDay()]}function Vi(mr){return fr[mr.getUTCDay()]}function jt(mr){return Ir[mr.getUTCMonth()]}function Yi(mr){return kr[mr.getUTCMonth()]}function Rl(mr){return Qe[+(mr.getUTCHours()>=12)]}function Pl(mr){return 1+~~(mr.getUTCMonth()/3)}return{format:function(mr){var Kr=mt(mr+="",yt);return Kr.toString=function(){return mr},Kr},parse:function(mr){var Kr=Lt(mr+="",!1);return Kr.toString=function(){return mr},Kr},utcFormat:function(mr){var Kr=mt(mr+="",Zr);return Kr.toString=function(){return mr},Kr},utcParse:function(mr){var Kr=Lt(mr+="",!0);return Kr.toString=function(){return mr},Kr}}}var o={"-":"",_:" ",0:"0"},l=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(ne,ve,De){var Re=ne<0?"-":"",Qe=(Re?-ne:ne)+"",fr=Qe.length;return Re+(fr68?1900:2e3),De+Re[0].length):-1}function T(ne,ve,De){var Re=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(ve.slice(De,De+6));return Re?(ne.Z=Re[1]?0:-(Re[2]+(Re[3]||"00")),De+Re[0].length):-1}function k(ne,ve,De){var Re=l.exec(ve.slice(De,De+1));return Re?(ne.q=Re[0]*3-3,De+Re[0].length):-1}function M(ne,ve,De){var Re=l.exec(ve.slice(De,De+2));return Re?(ne.m=Re[0]-1,De+Re[0].length):-1}function q(ne,ve,De){var Re=l.exec(ve.slice(De,De+2));return Re?(ne.d=+Re[0],De+Re[0].length):-1}function E(ne,ve,De){var Re=l.exec(ve.slice(De,De+3));return Re?(ne.m=0,ne.d=+Re[0],De+Re[0].length):-1}function D(ne,ve,De){var Re=l.exec(ve.slice(De,De+2));return Re?(ne.H=+Re[0],De+Re[0].length):-1}function P(ne,ve,De){var Re=l.exec(ve.slice(De,De+2));return Re?(ne.M=+Re[0],De+Re[0].length):-1}function R(ne,ve,De){var Re=l.exec(ve.slice(De,De+2));return Re?(ne.S=+Re[0],De+Re[0].length):-1}function z(ne,ve,De){var Re=l.exec(ve.slice(De,De+3));return Re?(ne.L=+Re[0],De+Re[0].length):-1}function O(ne,ve,De){var Re=l.exec(ve.slice(De,De+6));return Re?(ne.L=Math.floor(Re[0]/1e3),De+Re[0].length):-1}function B(ne,ve,De){var Re=s.exec(ve.slice(De,De+1));return Re?De+Re[0].length:-1}function Y(ne,ve,De){var Re=l.exec(ve.slice(De));return Re?(ne.Q=+Re[0],De+Re[0].length):-1}function V(ne,ve,De){var Re=l.exec(ve.slice(De));return Re?(ne.s=+Re[0],De+Re[0].length):-1}function H(ne,ve){return f(ne.getDate(),ve,2)}function G(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 ee(ne,ve){return f(ne.getMilliseconds(),ve,3)}function fe(ne,ve){return ee(ne,ve)+"000"}function ie(ne,ve){return f(ne.getMonth()+1,ve,2)}function ue(ne,ve){return f(ne.getMinutes(),ve,2)}function K(ne,ve){return f(ne.getSeconds(),ve,2)}function _e(ne){var ve=ne.getDay();return ve===0?7:ve}function le(ne,ve){return f(r.timeSunday.count(r.timeYear(ne)-1,ne),ve,2)}function he(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 oe(ne){return ne.getDay()}function ce(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 ye(ne,ve){return f(ne.getUTCHours()%12||12,ve,2)}function Pe(ne,ve){return f(1+r.utcDay.count(r.utcYear(ne),ne),ve,3)}function Ne(ne,ve){return f(ne.getUTCMilliseconds(),ve,3)}function Ee(ne,ve){return Ne(ne,ve)+"000"}function Ie(ne,ve){return f(ne.getUTCMonth()+1,ve,2)}function Ue(ne,ve){return f(ne.getUTCMinutes(),ve,2)}function Be(ne,ve){return f(ne.getUTCSeconds(),ve,2)}function Ce(ne){var ve=ne.getUTCDay();return ve===0?7:ve}function Oe(ne,ve){return f(r.utcSunday.count(r.utcYear(ne)-1,ne),ve,2)}function He(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 Ae(ne,ve){return f(r.utcMonday.count(r.utcYear(ne)-1,ne),ve,2)}function Xe(ne,ve){return f(ne.getUTCFullYear()%100,ve,2)}function hr(ne,ve){return f(ne.getUTCFullYear()%1e4,ve,4)}function Fe(){return"+0000"}function Te(){return"%"}function qe(ne){return+ne}function Ge(ne){return Math.floor(+ne/1e3)}var Je;Ve({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 Ve(ne){return Je=i(ne),e.timeFormat=Je.format,e.timeParse=Je.parse,e.utcFormat=Je.utcFormat,e.utcParse=Je.utcParse,Je}var Ze="%Y-%m-%dT%H:%M:%S.%LZ";function or(ne){return ne.toISOString()}var rr=Date.prototype.toISOString?or:e.utcFormat(Ze);function Ke(ne){var ve=new Date(ne);return isNaN(ve)?null:ve}var ze=+new Date("2000-01-01T00:00:00.000Z")?Ke:e.utcParse(Ze);e.isoFormat=rr,e.isoParse=ze,e.timeFormatDefaultLocale=Ve,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var ab=N((hp,JA)=>{(function(e,r){typeof hp=="object"&&typeof JA!="undefined"?r(hp):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(hp,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,q){if((E=(M=q?M.toExponential(q-1):M.toExponential()).indexOf("e"))<0)return null;var E,D=M.slice(0,E);return[D.length>1?D[0]+D.slice(2):D,+M.slice(E+1)]}function a(M){return M=t(Math.abs(M)),M?M[1]:NaN}function n(M,q){return function(E,D){for(var P=E.length,R=[],z=0,O=M[0],B=0;P>0&&O>0&&(B+O+1>D&&(O=Math.max(1,D-B)),R.push(E.substring(P-=O,P+O)),!((B+=O+1)>D));)O=M[z=(z+1)%M.length];return R.reverse().join(q)}}function i(M){return function(q){return q.replace(/[0-9]/g,function(E){return M[+E]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function l(M){if(!(q=o.exec(M)))throw new Error("invalid format: "+M);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]})}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 q=M.length,E=1,D=-1,P;E0&&(D=0);break}return D>0?M.slice(0,D)+M.slice(P+1):M}var f;function c(M,q){var E=t(M,q);if(!E)return M+"";var D=E[0],P=E[1],R=P-(f=Math.max(-8,Math.min(8,Math.floor(P/3)))*3)+1,z=D.length;return R===z?D:R>z?D+new Array(R-z+1).join("0"):R>0?D.slice(0,R)+"."+D.slice(R):"0."+new Array(1-R).join("0")+t(M,Math.max(0,q+R-1))[0]}function v(M,q){var E=t(M,q);if(!E)return M+"";var D=E[0],P=E[1];return P<0?"0."+new Array(-P).join("0")+D:D.length>P+1?D.slice(0,P+1)+"."+D.slice(P+1):D+new Array(P-D.length+2).join("0")}var d={"%":function(M,q){return(M*100).toFixed(q)},b:function(M){return Math.round(M).toString(2)},c:function(M){return M+""},d:r,e:function(M,q){return M.toExponential(q)},f:function(M,q){return M.toFixed(q)},g:function(M,q){return M.toPrecision(q)},o:function(M){return Math.round(M).toString(8)},p:function(M,q){return v(M*100,q)},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 y=Array.prototype.map,m=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function x(M){var q=M.grouping===void 0||M.thousands===void 0?p:n(y.call(M.grouping,Number),M.thousands+""),E=M.currency===void 0?"":M.currency[0]+"",D=M.currency===void 0?"":M.currency[1]+"",P=M.decimal===void 0?".":M.decimal+"",R=M.numerals===void 0?p:i(y.call(M.numerals,String)),z=M.percent===void 0?"%":M.percent+"",O=M.minus===void 0?"-":M.minus+"",B=M.nan===void 0?"NaN":M.nan+"";function Y(H){H=l(H);var G=H.fill,X=H.align,Z=H.sign,ee=H.symbol,fe=H.zero,ie=H.width,ue=H.comma,K=H.precision,_e=H.trim,le=H.type;le==="n"?(ue=!0,le="g"):d[le]||(K===void 0&&(K=12),_e=!0,le="g"),(fe||G==="0"&&X==="=")&&(fe=!0,G="0",X="=");var he=ee==="$"?E:ee==="#"&&/[boxX]/.test(le)?"0"+le.toLowerCase():"",oe=ee==="$"?D:/[%p]/.test(le)?z:"",ce=d[le],W=/[defgprs%]/.test(le);K=K===void 0?6:/[gprs]/.test(le)?Math.max(1,Math.min(21,K)):Math.max(0,Math.min(20,K));function Q(j){var pe=he,me=oe,ye,Pe,Ne;if(le==="c")me=ce(j)+me,j="";else{j=+j;var Ee=j<0||1/j<0;if(j=isNaN(j)?B:ce(Math.abs(j),K),_e&&(j=u(j)),Ee&&+j==0&&Z!=="+"&&(Ee=!1),pe=(Ee?Z==="("?Z:O:Z==="-"||Z==="("?"":Z)+pe,me=(le==="s"?m[8+f/3]:"")+me+(Ee&&Z==="("?")":""),W){for(ye=-1,Pe=j.length;++yeNe||Ne>57){me=(Ne===46?P+j.slice(ye+1):j.slice(ye))+me,j=j.slice(0,ye);break}}}ue&&!fe&&(j=q(j,1/0));var Ie=pe.length+j.length+me.length,Ue=Ie>1)+pe+j+me+Ue.slice(Ie);break;default:j=Ue+pe+j+me;break}return R(j)}return Q.toString=function(){return H+""},Q}function V(H,G){var X=Y((H=l(H),H.type="f",H)),Z=Math.max(-8,Math.min(8,Math.floor(a(G)/3)))*3,ee=Math.pow(10,-Z),fe=m[8+Z/3];return function(ie){return X(ee*ie)+fe}}return{format:Y,formatPrefix:V}}var w;_({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function _(M){return w=x(M),e.format=w.format,e.formatPrefix=w.formatPrefix,w}function b(M){return Math.max(0,-a(Math.abs(M)))}function T(M,q){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(q)/3)))*3-a(Math.abs(M)))}function k(M,q){return M=Math.abs(M),q=Math.abs(q)-M,Math.max(0,a(q)-a(M))+1}e.FormatSpecifier=s,e.formatDefaultLocale=_,e.formatLocale=x,e.formatSpecifier=l,e.precisionFixed=b,e.precisionPrefix=T,e.precisionRound=k,Object.defineProperty(e,"__esModule",{value:!0})})});var KA=N((_Ce,$A)=>{"use strict";$A.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 Rr=N((wCe,QA)=>{"use strict";var ioe=KA();QA.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&ioe(t))return!1}else if(r!=="number")return!1;return e-e<1}});var It=N((TCe,eM)=>{"use strict";eM.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 nb=N((dp,rM)=>{(function(e,r){typeof dp=="object"&&typeof rM!="undefined"?r(dp):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(dp,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 y=new ArrayBuffer(l),m=new Uint8Array(y);for(u=0;u>4,m[f++]=(v&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 zl=N((ACe,tM)=>{"use strict";tM.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 Vn=N(Xi=>{"use strict";var ooe=nb().decode,loe=zl(),ib=Array.isArray,soe=ArrayBuffer,uoe=DataView;function aM(e){return soe.isView(e)&&!(e instanceof uoe)}Xi.isTypedArray=aM;function pp(e){return ib(e)||aM(e)}Xi.isArrayOrTypedArray=pp;function foe(e){return!pp(e[0])}Xi.isArray1D=foe;Xi.ensureArray=function(e,r){return ib(e)||(e=[]),e.length=r,e};var La={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};La.uint8c=La.u1c;La.uint8=La.u1;La.int8=La.i1;La.uint16=La.u2;La.int16=La.i2;La.uint32=La.u4;La.int32=La.i4;La.float32=La.f4;La.float64=La.f8;function ob(e){return e.constructor===ArrayBuffer}Xi.isArrayBuffer=ob;Xi.decodeTypedArraySpec=function(e){var r=[],t=coe(e),a=t.dtype,n=La[a];if(!n)throw new Error('Error in dtype: "'+a+'"');var i=n.BYTES_PER_ELEMENT,o=t.bdata;ob(o)||(o=ooe(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 iM=Rr(),sb=Vn().isArrayOrTypedArray;uM.exports=function(r,t){if(iM(t))t=String(t);else if(typeof t!="string"||t.slice(-4)==="[-1]")throw"bad property string";var a=t.split("."),n,i,o,l;for(l=0;l{"use strict";var Tf=yp(),yoe=/^\w*$/,moe=0,fM=1,mp=2,cM=3,Ys=4;vM.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,o,l,s={};t&&t.length?(l=Tf(r,t),o=l.get()):o=r,t=t||"";var u={};if(o)for(i=0;i2)return s[d]=s[d]|mp,c.set(v,null);if(f){for(i=d;i{"use strict";var goe=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,boe=/^[^\.\[\]]+$/;dM.exports=function(e,r){for(;r;){var t=e.match(goe);if(t)e=t[1];else if(e.match(boe))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 gp=N((LCe,yM)=>{"use strict";var xoe=Rr();yM.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 xoe(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var bM=N((CCe,gM)=>{"use strict";var mM=Vn().isArrayOrTypedArray,Wv=zl();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(mM(n)&&mM(i)&&Wv(n[0])){if(a==="customdata"||a==="ids")continue;for(var o=Math.min(n.length,i.length),l=0;l{"use strict";function _oe(e,r){var t=e%r;return t<0?t+r:t}function woe(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}xM.exports={mod:_oe,modHalf:woe}});var kn=N((DCe,bp)=>{(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,ye,Pe;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?ye=j/12.92:ye=e.pow((j+.055)/1.055,2.4),pe<=.03928?Pe=pe/12.92:Pe=e.pow((pe+.055)/1.055,2.4),.2126*me+.7152*ye+.0722*Pe},setAlpha:function(W){return this._a=H(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 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:Y[y(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(w,arguments)},saturate:function(){return this._applyModification(_,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(q,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(R,arguments)},triad:function(){return this._applyCombination(D,arguments)},tetrad:function(){return this._applyCombination(P,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]=ue(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,ye=null,Pe=!1,Ne=!1;return typeof W=="string"&&(W=oe(W)),typeof W=="object"&&(he(W.r)&&he(W.g)&&he(W.b)?(Q=f(W.r,W.g,W.b),Pe=!0,Ne=String(W.r).substr(-1)==="%"?"prgb":"rgb"):he(W.h)&&he(W.s)&&he(W.v)?(pe=ue(W.s),me=ue(W.v),Q=p(W.h,pe,me),Pe=!0,Ne="hsv"):he(W.h)&&he(W.s)&&he(W.l)&&(pe=ue(W.s),ye=ue(W.l),Q=v(W.h,pe,ye),Pe=!0,Ne="hsl"),W.hasOwnProperty("a")&&(j=W.a)),j=H(j),{ok:Pe,format:W.format||Ne,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:G(W,255)*255,g:G(Q,255)*255,b:G(j,255)*255}}function c(W,Q,j){W=G(W,255),Q=G(Q,255),j=G(j,255);var pe=o(W,Q,j),me=i(W,Q,j),ye,Pe,Ne=(pe+me)/2;if(pe==me)ye=Pe=0;else{var Ee=pe-me;switch(Pe=Ne>.5?Ee/(2-pe-me):Ee/(pe+me),pe){case W:ye=(Q-j)/Ee+(Q1&&(Be-=1),Be<1/6?Ie+(Ue-Ie)*6*Be:Be<1/2?Ue:Be<2/3?Ie+(Ue-Ie)*(2/3-Be)*6:Ie}if(Q===0)pe=me=ye=j;else{var Ne=j<.5?j*(1+Q):j+Q-j*Q,Ee=2*j-Ne;pe=Pe(Ee,Ne,W+1/3),me=Pe(Ee,Ne,W),ye=Pe(Ee,Ne,W-1/3)}return{r:pe*255,g:me*255,b:ye*255}}function d(W,Q,j){W=G(W,255),Q=G(Q,255),j=G(j,255);var pe=o(W,Q,j),me=i(W,Q,j),ye,Pe,Ne=pe,Ee=pe-me;if(Pe=pe===0?0:Ee/pe,pe==me)ye=0;else{switch(pe){case W:ye=(Q-j)/Ee+(Q>1)+720)%360;--Q;)pe.h=(pe.h+me)%360,ye.push(s(pe));return ye}function O(W,Q){Q=Q||6;for(var j=s(W).toHsv(),pe=j.h,me=j.s,ye=j.v,Pe=[],Ne=1/Q;Q--;)Pe.push(s({h:pe,s:me,v:ye})),ye=(ye+Ne)%1;return Pe}s.mix=function(W,Q,j){j=j===0?0:j||50;var pe=s(W).toRgb(),me=s(Q).toRgb(),ye=j/100,Pe={r:(me.r-pe.r)*ye+pe.r,g:(me.g-pe.g)*ye+pe.g,b:(me.b-pe.b)*ye+pe.b,a:(me.a-pe.a)*ye+pe.a};return s(Pe)},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,ye;switch(ye=!1,me=ce(j),me.level+me.size){case"AAsmall":case"AAAlarge":ye=pe>=4.5;break;case"AAlarge":ye=pe>=3;break;case"AAAsmall":ye=pe>=7;break}return ye},s.mostReadable=function(W,Q,j){var pe=null,me=0,ye,Pe,Ne,Ee;j=j||{},Pe=j.includeFallbackColors,Ne=j.level,Ee=j.size;for(var Ie=0;Ieme&&(me=ye,pe=s(Q[Ie]));return s.isReadable(W,pe,{level:Ne,size:Ee})||!Pe?pe:(j.includeFallbackColors=!1,s.mostReadable(W,["#fff","#000"],j))};var B=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=V(B);function V(W){var Q={};for(var j in W)W.hasOwnProperty(j)&&(Q[W[j]]=j);return Q}function H(W){return W=parseFloat(W),(isNaN(W)||W<0||W>1)&&(W=1),W}function G(W,Q){ee(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 ee(W){return typeof W=="string"&&W.indexOf(".")!=-1&&parseFloat(W)===1}function fe(W){return typeof W=="string"&&W.indexOf("%")!=-1}function ie(W){return W.length==1?"0"+W:""+W}function ue(W){return W<=1&&(W=W*100+"%"),W}function K(W){return e.round(parseFloat(W)*255).toString(16)}function _e(W){return Z(W)/255}var le=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 he(W){return!!le.CSS_UNIT.exec(W)}function oe(W){W=W.replace(r,"").replace(t,"").toLowerCase();var Q=!1;if(B[W])W=B[W],Q=!0;else if(W=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var j;return(j=le.rgb.exec(W))?{r:j[1],g:j[2],b:j[3]}:(j=le.rgba.exec(W))?{r:j[1],g:j[2],b:j[3],a:j[4]}:(j=le.hsl.exec(W))?{h:j[1],s:j[2],l:j[3]}:(j=le.hsla.exec(W))?{h:j[1],s:j[2],l:j[3],a:j[4]}:(j=le.hsv.exec(W))?{h:j[1],s:j[2],v:j[3]}:(j=le.hsva.exec(W))?{h:j[1],s:j[2],v:j[3],a:j[4]}:(j=le.hex8.exec(W))?{r:Z(j[1]),g:Z(j[2]),b:Z(j[3]),a:_e(j[4]),format:Q?"name":"hex8"}:(j=le.hex6.exec(W))?{r:Z(j[1]),g:Z(j[2]),b:Z(j[3]),format:Q?"name":"hex"}:(j=le.hex4.exec(W))?{r:Z(j[1]+""+j[1]),g:Z(j[2]+""+j[2]),b:Z(j[3]+""+j[3]),a:_e(j[4]+""+j[4]),format:Q?"name":"hex8"}:(j=le.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 ce(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 bp!="undefined"&&bp.exports?bp.exports=s:window.tinycolor=s})(Math)});var bt=N(Xv=>{"use strict";var _M=zl(),jv=Array.isArray;function Toe(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 Jv=N((FCe,TM)=>{"use strict";TM.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var Mf=N((NCe,kM)=>{"use strict";var AM=Jv(),MM=ma(),ub=MM({editType:"none"});ub.family.dflt=AM.HOVERFONT;ub.size.dflt=AM.HOVERFONTSIZE;kM.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:ub,grouptitlefont:MM({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var xp=N((zCe,SM)=>{"use strict";var Aoe=ma(),$v=Mf().hoverlabel,Kv=bt().extendFlat;SM.exports={hoverlabel:{bgcolor:Kv({},$v.bgcolor,{arrayOk:!0}),bordercolor:Kv({},$v.bordercolor,{arrayOk:!0}),font:Aoe({arrayOk:!0,editType:"none"}),align:Kv({},$v.align,{arrayOk:!0}),namelength:Kv({},$v.namelength,{arrayOk:!0}),showarrow:Kv({},$v.showarrow),editType:"none"}}});var gn=N((ICe,qM)=>{"use strict";var Moe=ma(),koe=xp();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:Moe({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:koe.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 Ws=N((OCe,EM)=>{"use strict";var Soe=kn(),_p={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)"]]},LM=_p.RdBu;function qoe(e,r){if(r||(r=LM),!e)return r;function t(){try{e=_p[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),CM(e)?e:r}function CM(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";js.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];js.defaultLine="#444";js.lightLine="#eee";js.background="#fff";js.borderLine="#BEC8D9";js.lightFraction=100*10/11});var Tr=N((HCe,DM)=>{"use strict";var Sn=kn(),Coe=Rr(),Eoe=Vn().isTypedArray,wa=DM.exports={},wp=si();wa.defaults=wp.defaults;var Doe=wa.defaultLine=wp.defaultLine;wa.lightLine=wp.lightLine;var cb=wa.background=wp.background;wa.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};wa.rgb=function(e){return wa.tinyRGB(Sn(e))};wa.opacity=function(e){return e?Sn(e).getAlpha():0};wa.addOpacity=function(e,r){var t=Sn(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};wa.combine=function(e,r){var t=Sn(e).toRgb();if(t.a===1)return Sn(e).toRgbString();var a=Sn(r||cb).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 Sn(i).toRgbString()};wa.interpolate=function(e,r,t){var a=Sn(e).toRgb(),n=Sn(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 Sn(i).toRgbString()};wa.contrast=function(e,r,t){var a=Sn(e);a.getAlpha()!==1&&(a=Sn(wa.combine(e,cb)));var n=a.isDark()?r?a.lighten(r):cb:t?a.darken(t):Doe;return n.toString()};wa.stroke=function(e,r){var t=Sn(r);e.style({stroke:wa.tinyRGB(t),"stroke-opacity":t.getAlpha()})};wa.fill=function(e,r){var t=Sn(r);e.style({fill:wa.tinyRGB(t),"fill-opacity":t.getAlpha()})};wa.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 Tp=N((UCe,RM)=>{"use strict";RM.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var kf=N(PM=>{"use strict";PM.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 IM=N(qn=>{"use strict";var vb=Rr(),FM=kn(),NM=bt().extendFlat,Roe=gn(),Poe=Ws(),Foe=Tr(),Noe=Tp().DESELECTDIM,Sf=yp(),zM=kf().counter,zoe=Af().modHalf,Ji=Vn().isArrayOrTypedArray,Il=Vn().isTypedArraySpec,Ol=Vn().decodeTypedArraySpec;qn.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(Ji(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;ai===!0||i===!1;n(e)||a.arrayOk&&Array.isArray(e)&&e.length>0&&e.every(n)?r.set(e):r.set(t)}},number:{coerceFunction:function(e,r,t,a){Il(e)&&(e=Ol(e)),!vb(e)||a.min!==void 0&&ea.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||!vb(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)),FM(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return FM(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(Poe.get(e,t))}},angle:{coerceFunction:function(e,r,t){Il(e)&&(e=Ol(e)),e==="auto"?r.set("auto"):vb(e)?r.set(zoe(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||zM(t);let i=o=>typeof o=="string"&&n.test(o);i(e)||a.arrayOk&&Ji(e)&&e.length>0&&e.every(i)?r.set(e):r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!zM(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 OM={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/un/"},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:{}}},BM={};function HM(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),HM(a,r[t]))}}HM(OM,BM);UM.exports={configAttributes:OM,dfltConfig:BM}});var db=N((WCe,GM)=>{"use strict";var hb=Sr(),Ioe=Rr(),Qv=[];GM.exports=function(e,r){if(Qv.indexOf(e)!==-1)return;Qv.push(e);var t=1e3;Ioe(r)?t=r:r==="long"&&(t=3e3);var a=hb.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(Qv);function i(o){o.duration(700).style("opacity",0).each("end",function(l){var s=Qv.indexOf(l);s!==-1&&Qv.splice(s,1),hb.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var l=hb.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 qf=Zs().dfltConfig,pb=db(),yb=VM.exports={};yb.log=function(){var e;if(qf.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};yb.warn=function(){var e;if(qf.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};yb.error=function(){var e;if(qf.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var Mp=N((ZCe,YM)=>{"use strict";YM.exports=function(){}});var mb=N((XCe,WM)=>{"use strict";WM.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{jM.exports=Ooe;function Ooe(){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 JM=N(($Ce,XM)=>{XM.exports=Boe;function Boe(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 KM=N((KCe,$M)=>{$M.exports=Hoe;function Hoe(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 gb=N((QCe,QM)=>{QM.exports=Uoe;function Uoe(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 r9=N((eEe,e9)=>{e9.exports=Goe;function Goe(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 a9=N((rEe,t9)=>{t9.exports=Voe;function Voe(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],y=r[13],m=r[14],x=r[15],w=t*l-a*o,_=t*s-n*o,b=t*u-i*o,T=a*s-n*l,k=a*u-i*l,M=n*u-i*s,q=f*y-c*p,E=f*m-v*p,D=f*x-d*p,P=c*m-v*y,R=c*x-d*y,z=v*x-d*m,O=w*z-_*R+b*P+T*D-k*E+M*q;return O?(O=1/O,e[0]=(l*z-s*R+u*P)*O,e[1]=(n*R-a*z-i*P)*O,e[2]=(y*M-m*k+x*T)*O,e[3]=(v*k-c*M-d*T)*O,e[4]=(s*D-o*z-u*E)*O,e[5]=(t*z-n*D+i*E)*O,e[6]=(m*b-p*M-x*_)*O,e[7]=(f*M-v*b+d*_)*O,e[8]=(o*R-l*D+u*q)*O,e[9]=(a*D-t*R-i*q)*O,e[10]=(p*k-y*b+x*w)*O,e[11]=(c*b-f*k-d*w)*O,e[12]=(l*E-o*P-s*q)*O,e[13]=(t*P-a*E+n*q)*O,e[14]=(y*_-p*T-m*w)*O,e[15]=(f*T-c*_+v*w)*O,e):null}});var i9=N((tEe,n9)=>{n9.exports=Yoe;function Yoe(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],y=r[13],m=r[14],x=r[15];return e[0]=l*(v*x-d*m)-c*(s*x-u*m)+y*(s*d-u*v),e[1]=-(a*(v*x-d*m)-c*(n*x-i*m)+y*(n*d-i*v)),e[2]=a*(s*x-u*m)-l*(n*x-i*m)+y*(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*m)-f*(s*x-u*m)+p*(s*d-u*v)),e[5]=t*(v*x-d*m)-f*(n*x-i*m)+p*(n*d-i*v),e[6]=-(t*(s*x-u*m)-o*(n*x-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*x-d*y)-f*(l*x-u*y)+p*(l*d-u*c),e[9]=-(t*(c*x-d*y)-f*(a*x-i*y)+p*(a*d-i*c)),e[10]=t*(l*x-u*y)-o*(a*x-i*y)+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*y)-f*(l*m-s*y)+p*(l*v-s*c)),e[13]=t*(c*m-v*y)-f*(a*m-n*y)+p*(a*v-n*c),e[14]=-(t*(l*m-s*y)-o*(a*m-n*y)+p*(a*s-n*l)),e[15]=t*(l*v-s*c)-o*(a*v-n*c)+f*(a*s-n*l),e}});var l9=N((aEe,o9)=>{o9.exports=Woe;function Woe(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],y=e[14],m=e[15],x=r*o-t*i,w=r*l-a*i,_=r*s-n*i,b=t*l-a*o,T=t*s-n*o,k=a*s-n*l,M=u*p-f*d,q=u*y-c*d,E=u*m-v*d,D=f*y-c*p,P=f*m-v*p,R=c*m-v*y;return x*R-w*P+_*D+b*E-T*q+k*M}});var u9=N((nEe,s9)=>{s9.exports=joe;function joe(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],y=r[12],m=r[13],x=r[14],w=r[15],_=t[0],b=t[1],T=t[2],k=t[3];return e[0]=_*a+b*l+T*c+k*y,e[1]=_*n+b*s+T*v+k*m,e[2]=_*i+b*u+T*d+k*x,e[3]=_*o+b*f+T*p+k*w,_=t[4],b=t[5],T=t[6],k=t[7],e[4]=_*a+b*l+T*c+k*y,e[5]=_*n+b*s+T*v+k*m,e[6]=_*i+b*u+T*d+k*x,e[7]=_*o+b*f+T*p+k*w,_=t[8],b=t[9],T=t[10],k=t[11],e[8]=_*a+b*l+T*c+k*y,e[9]=_*n+b*s+T*v+k*m,e[10]=_*i+b*u+T*d+k*x,e[11]=_*o+b*f+T*p+k*w,_=t[12],b=t[13],T=t[14],k=t[15],e[12]=_*a+b*l+T*c+k*y,e[13]=_*n+b*s+T*v+k*m,e[14]=_*i+b*u+T*d+k*x,e[15]=_*o+b*f+T*p+k*w,e}});var c9=N((iEe,f9)=>{f9.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,y,m,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],y=r[9],m=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]=y,e[10]=m,e[11]=x,e[12]=o*a+f*n+p*i+r[12],e[13]=l*a+c*n+y*i+r[13],e[14]=s*a+v*n+m*i+r[14],e[15]=u*a+d*n+x*i+r[15]),e}});var h9=N((oEe,v9)=>{v9.exports=Xoe;function Xoe(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 p9=N((lEe,d9)=>{d9.exports=Joe;function Joe(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,y,m,x,w,_,b,T,k,M,q,E,D,P,R,z,O,B;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],y=r[4],m=r[5],x=r[6],w=r[7],_=r[8],b=r[9],T=r[10],k=r[11],M=n*n*f+u,q=i*n*f+o*s,E=o*n*f-i*s,D=n*i*f-o*s,P=i*i*f+u,R=o*i*f+n*s,z=n*o*f+i*s,O=i*o*f-n*s,B=o*o*f+u,e[0]=c*M+y*q+_*E,e[1]=v*M+m*q+b*E,e[2]=d*M+x*q+T*E,e[3]=p*M+w*q+k*E,e[4]=c*D+y*P+_*R,e[5]=v*D+m*P+b*R,e[6]=d*D+x*P+T*R,e[7]=p*D+w*P+k*R,e[8]=c*z+y*O+_*B,e[9]=v*z+m*O+b*B,e[10]=d*z+x*O+T*B,e[11]=p*z+w*O+k*B,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var m9=N((sEe,y9)=>{y9.exports=$oe;function $oe(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 b9=N((uEe,g9)=>{g9.exports=Koe;function Koe(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 _9=N((fEe,x9)=>{x9.exports=Qoe;function Qoe(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 T9=N((cEe,w9)=>{w9.exports=ele;function ele(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 M9=N((vEe,A9)=>{A9.exports=rle;function rle(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,y=i*u,m=o*l,x=o*s,w=o*u;return e[0]=1-(d+y),e[1]=c+w,e[2]=v-x,e[3]=0,e[4]=c-w,e[5]=1-(f+y),e[6]=p+m,e[7]=0,e[8]=v+x,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 S9=N((hEe,k9)=>{k9.exports=tle;function tle(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 L9=N((dEe,q9)=>{q9.exports=ale;function ale(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 E9=N((pEe,C9)=>{C9.exports=nle;function nle(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 R9=N((yEe,D9)=>{D9.exports=ile;function ile(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 F9=N((mEe,P9)=>{P9.exports=ole;function ole(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 z9=N((gEe,N9)=>{N9.exports=lle;function lle(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,y=i*o,m=i*l,x=i*s;return e[0]=1-c-p,e[1]=f+x,e[2]=v-m,e[3]=0,e[4]=f-x,e[5]=1-u-p,e[6]=d+y,e[7]=0,e[8]=v+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 O9=N((bEe,I9)=>{I9.exports=sle;function sle(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 H9=N((xEe,B9)=>{B9.exports=ule;function ule(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 G9=N((_Ee,U9)=>{U9.exports=fle;function fle(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 Y9=N((wEe,V9)=>{V9.exports=cle;function cle(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 j9=N((TEe,W9)=>{var vle=gb();W9.exports=hle;function hle(e,r,t,a){var n,i,o,l,s,u,f,c,v,d,p=r[0],y=r[1],m=r[2],x=a[0],w=a[1],_=a[2],b=t[0],T=t[1],k=t[2];return Math.abs(p-b)<1e-6&&Math.abs(y-T)<1e-6&&Math.abs(m-k)<1e-6?vle(e):(f=p-b,c=y-T,v=m-k,d=1/Math.sqrt(f*f+c*c+v*v),f*=d,c*=d,v*=d,n=w*v-_*c,i=_*f-x*v,o=x*c-w*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*y+o*m),e[13]=-(l*p+s*y+u*m),e[14]=-(f*p+c*y+v*m),e[15]=1,e)}});var X9=N((AEe,Z9)=>{Z9.exports=dle;function dle(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 bb=N((MEe,J9)=>{J9.exports={create:ZM(),clone:JM(),copy:KM(),identity:gb(),transpose:r9(),invert:a9(),adjoint:i9(),determinant:l9(),multiply:u9(),translate:c9(),scale:h9(),rotate:p9(),rotateX:m9(),rotateY:b9(),rotateZ:_9(),fromRotation:T9(),fromRotationTranslation:M9(),fromScaling:S9(),fromTranslation:L9(),fromXRotation:E9(),fromYRotation:R9(),fromZRotation:F9(),fromQuat:z9(),frustum:O9(),perspective:H9(),perspectiveFromFieldOfView:G9(),ortho:Y9(),lookAt:j9(),str:X9()}});var kp=N(Qt=>{"use strict";var ple=bb();Qt.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var yle=Sr(),$9=Xs(),mle=kp(),gle=bb();function ble(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 xle(e){var r=yle.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function K9(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function _le(e,r){Q9("global",e,r)}function Q9(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):$9.warn("addStyleRule failed"):$9.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function wle(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&K9(t)}function Tle(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 Ale(e){var r=rk(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=ek(a);if(n){var i=mle.convertCssMatrix(n);t=gle.multiply(t,t,i)}}),t}function ek(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 rk(e){for(var r=[];Mle(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function Mle(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function kle(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}tk.exports={getGraphDiv:ble,isPlotDiv:xle,removeElement:K9,addStyleRule:_le,addRelatedStyleRule:Q9,deleteRelatedStyleRule:wle,setStyleOnHover:Tle,getFullTransformMatrix:Ale,getElementTransformMatrix:ek,getElementAndAncestors:rk,equalDomRects:kle}});var rh=N((qEe,ak)=>{"use strict";ak.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 $i=N((LEe,fk)=>{"use strict";var ik=bt().extendFlat,Sle=zl(),ok={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"]},qle=ok.flags.slice().concat(["fullReplot"]),Lle=lk.flags.slice().concat("layoutReplot");fk.exports={traces:ok,layout:lk,traceFlags:function(){return nk(qle)},layoutFlags:function(){return nk(Lle)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";xb.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};xb.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 _b=N((EEe,ck)=>{"use strict";ck.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 Yn=N(Lf=>{"use strict";var{DATE_FORMAT_LINK:Cle,FORMAT_LINK:Ele}=_b(),Dle=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function Rle({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,Ele,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,Cle,"for details on the date formatting syntax.",Dle].join(" ")}Lf.templateFormatStringDescription=Rle;Lf.hovertemplateAttrs=({editType:e="none",arrayOk:r}={},t={})=>Vs({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});Lf.texttemplateAttrs=({editType:e="calc",arrayOk:r}={},t={})=>Vs({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});Lf.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:r}={},t={})=>({valType:"string",dflt:"",editType:e});Lf.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var Lp=N((PEe,mk)=>{"use strict";function Bl(e,r){return r?r.d2l(e):e}function vk(e,r){return r?r.l2d(e):e}function Ple(e){return e.x0}function Fle(e){return e.x1}function Nle(e){return e.y0}function zle(e){return e.y1}function hk(e){return e.x0shift||0}function dk(e){return e.x1shift||0}function pk(e){return e.y0shift||0}function yk(e){return e.y1shift||0}function Sp(e,r){return Bl(e.x1,r)+dk(e)-Bl(e.x0,r)-hk(e)}function qp(e,r,t){return Bl(e.y1,t)+yk(e)-Bl(e.y0,t)-pk(e)}function Ile(e,r){return Math.abs(Sp(e,r))}function Ole(e,r,t){return Math.abs(qp(e,r,t))}function Ble(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(Sp(e,r),2)+Math.pow(qp(e,r,t),2))}function Hle(e,r){return vk((Bl(e.x1,r)+dk(e)+Bl(e.x0,r)+hk(e))/2,r)}function Ule(e,r,t){return vk((Bl(e.y1,t)+yk(e)+Bl(e.y0,t)+pk(e))/2,t)}function Gle(e,r,t){return e.type!=="line"?void 0:qp(e,r,t)/Sp(e,r)}mk.exports={x0:Ple,x1:Fle,y0:Nle,y1:zle,slope:Gle,dx:Sp,dy:qp,width:Ile,height:Ole,length:Ble,xcenter:Hle,ycenter:Ule}});var xk=N((FEe,bk)=>{"use strict";var Vle=$i().overrideAll,Js=gn(),gk=ma(),Yle=ui().dash,Hl=bt().extendFlat,{shapeTexttemplateAttrs:Wle,templatefallbackAttrs:jle}=Yn(),Zle=Lp();bk.exports=Vle({newshape:{visible:Hl({},Js.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:Hl({},Js.legend,{}),legendgroup:Hl({},Js.legendgroup,{}),legendgrouptitle:{text:Hl({},Js.legendgrouptitle.text,{}),font:gk({})},legendrank:Hl({},Js.legendrank,{}),legendwidth:Hl({},Js.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Hl({},Yle,{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({},Js.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:Wle({newshape:!0},{keys:Object.keys(Zle)}),texttemplatefallback:jle({editType:"arraydraw"}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var wk=N((NEe,_k)=>{"use strict";var Xle=ui().dash,Jle=bt().extendFlat;_k.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:Jle({},Xle,{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 Cp=N((zEe,Tk)=>{"use strict";Tk.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 Cf=N((IEe,Sk)=>{"use strict";var wb=ma(),$le=rh(),Ep=si(),Ak=xk(),Mk=wk(),Kle=Cp(),kk=bt().extendFlat,Dp=wb({editType:"calc"});Dp.family.dflt='"Open Sans", verdana, arial, sans-serif';Dp.size.dflt=12;Dp.color.dflt=Ep.defaultLine;Sk.exports={font:Dp,title:{text:{valType:"string",editType:"layoutstyle"},font:wb({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:wb({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:kk(Kle({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:Ep.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:Ep.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:Ep.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:Ak.newshape,activeshape:Ak.activeshape,newselection:Mk.newselection,activeselection:Mk.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:kk({},$le.transition,{editType:"none"})}});var qk=N(()=>{(function(){if(!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")){var e=document.createElement("style");e.id="696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var br=N(Br=>{"use strict";var Ef=Xs(),Lk=Mp(),Ck=mb(),Qle=zl(),ese=eh().addStyleRule,Ek=bt(),rse=gn(),tse=Cf(),ase=Ek.extendFlat,Tb=Ek.extendDeepAll;Br.modules={};Br.allCategories={};Br.allTypes=[];Br.subplotsRegistry={};Br.componentsRegistry={};Br.layoutArrayContainers=[];Br.layoutArrayRegexes=[];Br.traceLayoutAttributes={};Br.localeRegistry={};Br.apiMethodRegistry={};Br.collectableSubplotTypes=null;Br.register=function(r){if(Br.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 use=wf().timeFormat,Uk=Rr(),Ab=Xs(),Gl=Af().mod,Pf=It(),fi=Pf.BADNUM,Ln=Pf.ONEDAY,th=Pf.ONEHOUR,Ul=Pf.ONEMIN,Rf=Pf.ONESEC,ah=Pf.EPOCHJD,tl=br(),Nk=wf().utcFormat,fse=/^\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,cse=/^\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,zk=new Date().getFullYear()-70;function al(e){return e&&tl.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}ea.dateTick0=function(e,r){var t=vse(e,!!r);if(r<2)return t;var a=ea.dateTime2ms(t,e);return a+=Ln*(r-1),ea.ms2DateTime(a,0,e)};function vse(e,r){return al(e)?r?tl.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:tl.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}ea.dfltRange=function(e){return al(e)?tl.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};ea.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Pp,Fp;ea.dateTime2ms=function(e,r){if(ea.isJSDate(e)){var t=e.getTimezoneOffset()*Ul,a=(e.getUTCMinutes()-e.getMinutes())*Ul+(e.getUTCSeconds()-e.getSeconds())*Rf+(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>=Pp&&e<=Fp?e:fi}if(typeof e!="string"&&typeof e!="number")return fi;e=String(e);var i=al(r),o=e.charAt(0);i&&(o==="G"||o==="g")&&(e=e.slice(1),r="");var l=i&&r.slice(0,7)==="chinese",s=e.match(l?cse:fse);if(!s)return fi;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 fi;u=Number(u);var y;try{var m=tl.getComponentMethod("calendars","getCal")(r);if(l){var x=f.charAt(f.length-1)==="i";f=parseInt(f,10),y=m.newDate(u,m.toMonthIndex(u,f,x),c)}else y=m.newDate(u,Number(f),c)}catch(_){return fi}return y?(y.toJD()-ah)*Ln+v*th+d*Ul+p*Rf:fi}u.length===2?u=(Number(u)+2e3-zk)%100+zk:u=Number(u),f-=1;var w=new Date(Date.UTC(2e3,f,c,v,d));return w.setUTCFullYear(u),w.getUTCMonth()!==f||w.getUTCDate()!==c?fi:w.getTime()+p*Rf};Pp=ea.MIN_MS=ea.dateTime2ms("-9999");Fp=ea.MAX_MS=ea.dateTime2ms("9999-12-31 23:59:59.9999");ea.isDateTime=function(e,r){return ea.dateTime2ms(e,r)!==fi};function Df(e,r){return String(e+Math.pow(10,r)).slice(1)}var Rp=90*Ln,Ik=3*th,Ok=5*Ul;ea.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Pp&&e<=Fp))return fi;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(al(t)){var c=Math.floor(n/Ln)+ah,v=Math.floor(Gl(e,Ln));try{i=tl.getComponentMethod("calendars","getCal")(t).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){i=Nk("G%Y-%m-%d")(new Date(n))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.slice(1);else for(;i.length<10;)i="0"+i;o=r=Pp+Ln&&e<=Fp-Ln))return fi;var r=Math.floor(Gl(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=use("%Y-%m-%d")(t),n=t.getHours(),i=t.getMinutes(),o=t.getSeconds(),l=t.getUTCMilliseconds()*10+r;return Gk(a,n,i,o,l)};function Gk(e,r,t,a,n){if((r||t||a||n)&&(e+=" "+Df(r,2)+":"+Df(t,2),(a||n)&&(e+=":"+Df(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+Df(n,i)}return e}ea.cleanDate=function(e,r,t){if(e===fi)return r;if(ea.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(al(t))return Ab.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=ea.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!ea.isDateTime(e,t))return Ab.error("unrecognized date",e),r;return e};var hse=/%\d?f/g,dse=/%h/g,pse={1:"1",2:"1",3:"2",4:"2"};function Bk(e,r,t,a){e=e.replace(hse,function(i){var o=Math.min(+i.charAt(1)||6,6),l=(r/1e3%1+2).toFixed(o).slice(2).replace(/0+$/,"")||"0";return l});var n=new Date(Math.floor(r+.05));if(e=e.replace(dse,function(){return pse[t("%q")(n)]}),al(a))try{e=tl.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var yse=[59,59.9,59.99,59.999,59.9999];function mse(e,r){var t=Gl(e+.05,Ln),a=Df(Math.floor(t/th),2)+":"+Df(Gl(Math.floor(t/Ul),60),2);if(r!=="M"){Uk(r)||(r=0);var n=Math.min(Gl(e/Rf,60),yse[r]),i=(100+n).toFixed(r).slice(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}ea.formatDate=function(e,r,t,a,n,i){if(n=al(n)&&n,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` +`+i.year;else return mse(e,t)+` +`+Bk(i.dayMonthYear,e,a,n);return Bk(r,e,a,n)};var Hk=3*Ln;ea.incrementMonth=function(e,r,t){t=al(t)&&t;var a=Gl(e,Ln);if(e=Math.round(e-a),t)try{var n=Math.round(e/Ln)+ah,i=tl.getComponentMethod("calendars","getCal")(t),o=i.fromJD(n);return r%12?i.add(o,r,"m"):i.add(o,r/12,"y"),(o.toJD()-ah)*Ln+a}catch(s){Ab.error("invalid ms "+e+" in calendar "+t)}var l=new Date(e+Hk);return l.setUTCMonth(l.getUTCMonth()+r)+a-Hk};ea.findExactDates=function(e,r){for(var t=0,a=0,n=0,i=0,o,l,s=al(r)&&tl.getComponentMethod("calendars","getCal")(r),u=0;u{"use strict";Yk.exports=function(r){return r}});var Sb=N(nl=>{"use strict";var gse=Rr(),bse=Xs(),xse=Mb(),_se=It().BADNUM,kb=1e-9;nl.findBin=function(e,r,t){if(gse(r.start))return t?Math.ceil((e-r.start)/r.size-kb)-1:Math.floor((e-r.start)/r.size+kb);var a=0,n=r.length,i=0,o=n>1?(r[n-1]-r[0])/(n-1):1,l,s;for(o>=0?s=t?wse:Tse:s=t?Mse:Ase,e+=o*kb*(t?-1:1)*(o>=0?1:-1);a90&&bse.log("Long binary search..."),a-1};function wse(e,r){return er}function Mse(e,r){return e>=r}nl.sorterAsc=function(e,r){return e-r};nl.sorterDes=function(e,r){return r-e};nl.distinctVals=function(e){var r=e.slice();r.sort(nl.sorterAsc);var t;for(t=r.length-1;t>-1&&r[t]===_se;t--);for(var a=r[t]-r[0]||1,n=a/(t||1)/1e4,i=[],o,l=0;l<=t;l++){var s=r[l],u=s-o;o===void 0?(i.push(s),o=s):u>n&&(a=Math.min(a,u),i.push(s),o=s)}return{vals:i,minDiff:a}};nl.roundUp=function(e,r,t){for(var a=0,n=r.length-1,i,o=0,l=t?0:1,s=t?1:0,u=t?Math.ceil:Math.floor;a0&&(a=1),t&&a)return e.sort(r)}return a?e:e.reverse()};nl.findIndexOfMin=function(e,r){r=r||xse;for(var t=1/0,a,n=0;n{"use strict";Wk.exports=function(r){return Object.keys(r).sort()}});var jk=N(ra=>{"use strict";var nh=Rr(),kse=Vn().isArrayOrTypedArray;ra.aggNums=function(e,r,t,a){var n,i;if((!a||a>t.length)&&(a=t.length),nh(r)||(r=!1),kse(t[0])){for(i=new Array(a),n=0;ne.length-1)return e[e.length-1];var t=r%1;return t*e[Math.ceil(r)]+(1-t)*e[Math.floor(r)]}});var Kk=N((jEe,$k)=>{"use strict";var Zk=Af(),Lb=Zk.mod,Sse=Zk.modHalf,ih=Math.PI,Vl=2*ih;function qse(e){return e/180*ih}function Lse(e){return e/ih*180}function Cb(e){return Math.abs(e[1]-e[0])>Vl-1e-14}function Xk(e,r){return Sse(r-e,Vl)}function Cse(e,r){return Math.abs(Xk(e,r))}function Jk(e,r){if(Cb(r))return!0;var t,a;r[0]a&&(a+=Vl);var n=Lb(e,Vl),i=n+Vl;return n>=t&&n<=a||i>=t&&i<=a}function Ese(e,r,t,a){if(!Jk(r,a))return!1;var n,i;return t[0]=n&&e<=i}function Eb(e,r,t,a,n,i,o){n=n||0,i=i||0;var l=Cb([t,a]),s,u,f,c,v;l?(s=0,u=ih,f=Vl):t{"use strict";$s.isLeftAnchor=function(r){return r.xanchor==="left"||r.xanchor==="auto"&&r.x<=1/3};$s.isCenterAnchor=function(r){return r.xanchor==="center"||r.xanchor==="auto"&&r.x>1/3&&r.x<2/3};$s.isRightAnchor=function(r){return r.xanchor==="right"||r.xanchor==="auto"&&r.x>=2/3};$s.isTopAnchor=function(r){return r.yanchor==="top"||r.yanchor==="auto"&&r.y>=2/3};$s.isMiddleAnchor=function(r){return r.yanchor==="middle"||r.yanchor==="auto"&&r.y>1/3&&r.y<2/3};$s.isBottomAnchor=function(r){return r.yanchor==="bottom"||r.yanchor==="auto"&&r.y<=1/3}});var tS=N(Ks=>{"use strict";var Db=Af().mod;Ks.segmentsIntersect=rS;function rS(e,r,t,a,n,i,o,l){var s=t-e,u=n-e,f=o-n,c=a-r,v=i-r,d=l-i,p=s*d-f*c;if(p===0)return null;var y=(u*d-f*v)/p,m=(u*c-s*v)/p;return m<0||m>1||y<0||y>1?null:{x:e+s*y,y:r+c*y}}Ks.segmentDistance=function(r,t,a,n,i,o,l,s){if(rS(r,t,a,n,i,o,l,s))return 0;var u=a-r,f=n-t,c=l-i,v=s-o,d=u*u+f*f,p=c*c+v*v,y=Math.min(Np(u,f,d,i-r,o-t),Np(u,f,d,l-r,s-t),Np(c,v,p,r-i,t-o),Np(c,v,p,a-i,n-o));return Math.sqrt(y)};function Np(e,r,t,a,n){var i=a*e+n*r;if(i<0)return a*a+n*n;if(i>t){var o=a-e,l=n-r;return o*o+l*l}else{var s=a*r-n*e;return s*s/t}}var zp,Rb,eS;Ks.getTextLocation=function(r,t,a,n){if((r!==Rb||n!==eS)&&(zp={},Rb=r,eS=n),zp[a])return zp[a];var i=r.getPointAtLength(Db(a-n/2,t)),o=r.getPointAtLength(Db(a+n/2,t)),l=Math.atan((o.y-i.y)/(o.x-i.x)),s=r.getPointAtLength(Db(a,t)),u=(s.x*4+i.x+o.x)/6,f=(s.y*4+i.y+o.y)/6,c={x:u,y:f,theta:l};return zp[a]=c,c};Ks.clearLocationCache=function(){Rb=null};Ks.getVisibleSegment=function(r,t,a){var n=t.left,i=t.right,o=t.top,l=t.bottom,s=0,u=r.getTotalLength(),f=u,c,v;function d(y){var m=r.getPointAtLength(y);y===0?c=m:y===u&&(v=m);var x=m.xi?m.x-i:0,w=m.yl?m.y-l:0;return Math.sqrt(x*x+w*w)}for(var p=d(s);p;){if(s+=p+a,s>f)return;p=d(s)}for(p=d(f);p;){if(f-=p+a,s>f)return;p=d(f)}return{min:s,max:f,len:f-s,total:u,isClosed:s===0&&f===u&&Math.abs(c.x-v.x)<.1&&Math.abs(c.y-v.y)<.1}};Ks.findPointOnPath=function(r,t,a,n){n=n||{};for(var i=n.pathLength||r.getTotalLength(),o=n.tolerance||.001,l=n.iterationLimit||30,s=r.getPointAtLength(0)[a]>r.getPointAtLength(i)[a]?-1:1,u=0,f=0,c=i,v,d,p;u0?c=v:f=v,u++}return d}});var Ip=N(oh=>{"use strict";var il={};oh.throttle=function(r,t,a){var n=il[r],i=Date.now();if(!n){for(var o in il)il[o].tsn.ts+t){l();return}n.timer=setTimeout(function(){l(),n.timer=null},t)};oh.done=function(e){var r=il[e];return!r||!r.timer?Promise.resolve():new Promise(function(t){var a=r.onDone;r.onDone=function(){a&&a(),t(),r.onDone=null}})};oh.clear=function(e){if(e)aS(il[e]),delete il[e];else for(var r in il)oh.clear(r)};function aS(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var iS=N(($Ee,nS)=>{"use strict";nS.exports=function(r){r._responsiveChartHandler&&(window.removeEventListener("resize",r._responsiveChartHandler),delete r._responsiveChartHandler)}});var oS=N((KEe,Op)=>{"use strict";Op.exports=Pb;Op.exports.isMobile=Pb;Op.exports.default=Pb;var Fse=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,Nse=/CrOS/,zse=/android|ipad|playbook|silk/i;function Pb(e){e||(e={});let r=e.ua;if(!r&&typeof navigator!="undefined"&&(r=navigator.userAgent),r&&r.headers&&typeof r.headers["user-agent"]=="string"&&(r=r.headers["user-agent"]),typeof r!="string")return!1;let t=Fse.test(r)&&!Nse.test(r)||!!e.tablet&&zse.test(r);return!t&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&r.indexOf("Macintosh")!==-1&&r.indexOf("Safari")!==-1&&(t=!0),t}});var sS=N((QEe,lS)=>{"use strict";var Ise=Rr(),Ose=oS();lS.exports=function(r){var t;if(r&&r.hasOwnProperty("userAgent")?t=r.userAgent:t=Bse(),typeof t!="string")return!0;var a=Ose({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!a)for(var n=t.split(" "),i=1;i-1;l--){var s=n[l];if(s.slice(0,8)==="Version/"){var u=s.slice(8).split(".")[0];if(Ise(u)&&(u=+u),u>=13)return!0}}}return a};function Bse(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var fS=N((eDe,uS)=>{"use strict";var Hse=Sr();uS.exports=function(r,t,a){var n=r.selectAll("g."+a.replace(/\s/g,".")).data(t,function(o){return o[0].trace.uid});n.exit().remove(),n.enter().append("g").attr("class",a),n.order();var i=r.classed("rangeplot")?"nodeRangePlot3":"node3";return n.each(function(o){o[0][i]=Hse.select(this)}),n}});var vS=N((rDe,cS)=>{"use strict";var Use=br();cS.exports=function(r,t){for(var a=r._context.locale,n=0;n<2;n++){for(var i=r._context.locales,o=0;o<2;o++){var l=(i[a]||{}).dictionary;if(l){var s=l[t];if(s)return s}i=Use.localeRegistry}var u=a.split("-")[0];if(u===a)break;a=u}return t}});var dS=N((tDe,hS)=>{"use strict";hS.exports=function(r){for(var t={},a=[],n=0,i=0;i{"use strict";pS.exports=function(r){for(var t=Yse(r)?Vse:Gse,a=[],n=0;n{"use strict";mS.exports=function(r,t){if(!t)return r;var a=1/Math.abs(t),n=a>1?(a*r+a*t)/a:r+t,i=String(n).length;if(i>16){var o=String(t).length,l=String(r).length;if(i>=l+o){var s=parseFloat(n).toPrecision(12);s.indexOf("e+")===-1&&(n=+s)}}return n}});var xS=N((iDe,bS)=>{"use strict";var Wse=Rr(),jse=It().BADNUM,Zse=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;bS.exports=function(r){return typeof r=="string"&&(r=r.replace(Zse,"")),Wse(r)?Number(r):jse}});var Le=N((oDe,RS)=>{"use strict";var lh=Sr(),Xse=wf().utcFormat,Jse=ab().format,kS=Rr(),SS=It(),qS=SS.FP_SAFE,$se=-qS,_S=SS.BADNUM,be=RS.exports={};be.adjustFormat=function(r){return!r||/^\d[.]\df/.test(r)||/[.]\d%/.test(r)?r:r==="0.f"?"~f":/^\d%/.test(r)?"~%":/^\ds/.test(r)?"~s":!/^[~,.0$]/.test(r)&&/[&fps]/.test(r)?"~"+r:r};var wS={};be.warnBadFormat=function(e){var r=String(e);wS[r]||(wS[r]=1,be.warn('encountered bad format: "'+r+'"'))};be.noFormat=function(e){return String(e)};be.numberFormat=function(e){var r;try{r=Jse(be.adjustFormat(e))}catch(t){return be.warnBadFormat(e),be.noFormat}return r};be.nestedProperty=yp();be.keyedContainer=hM();be.relativeAttr=pM();be.isPlainObject=zl();be.toLogRange=gp();be.relinkPrivateKeys=bM();var Yl=Vn();be.isArrayBuffer=Yl.isArrayBuffer;be.isTypedArray=Yl.isTypedArray;be.isArrayOrTypedArray=Yl.isArrayOrTypedArray;be.isArray1D=Yl.isArray1D;be.ensureArray=Yl.ensureArray;be.concat=Yl.concat;be.maxRowLength=Yl.maxRowLength;be.minRowLength=Yl.minRowLength;var LS=Af();be.mod=LS.mod;be.modHalf=LS.modHalf;var Wl=IM();be.valObjectMeta=Wl.valObjectMeta;be.coerce=Wl.coerce;be.coerce2=Wl.coerce2;be.coerceFont=Wl.coerceFont;be.coercePattern=Wl.coercePattern;be.coerceHoverinfo=Wl.coerceHoverinfo;be.coerceSelectionMarkerOpacity=Wl.coerceSelectionMarkerOpacity;be.validate=Wl.validate;var Wn=Vk();be.dateTime2ms=Wn.dateTime2ms;be.isDateTime=Wn.isDateTime;be.ms2DateTime=Wn.ms2DateTime;be.ms2DateTimeLocal=Wn.ms2DateTimeLocal;be.cleanDate=Wn.cleanDate;be.isJSDate=Wn.isJSDate;be.formatDate=Wn.formatDate;be.incrementMonth=Wn.incrementMonth;be.dateTick0=Wn.dateTick0;be.dfltRange=Wn.dfltRange;be.findExactDates=Wn.findExactDates;be.MIN_MS=Wn.MIN_MS;be.MAX_MS=Wn.MAX_MS;var Qs=Sb();be.findBin=Qs.findBin;be.sorterAsc=Qs.sorterAsc;be.sorterDes=Qs.sorterDes;be.distinctVals=Qs.distinctVals;be.roundUp=Qs.roundUp;be.sort=Qs.sort;be.findIndexOfMin=Qs.findIndexOfMin;be.sortObjectKeys=qb();var ol=jk();be.aggNums=ol.aggNums;be.len=ol.len;be.mean=ol.mean;be.geometricMean=ol.geometricMean;be.median=ol.median;be.midRange=ol.midRange;be.variance=ol.variance;be.stdev=ol.stdev;be.interp=ol.interp;var Ki=kp();be.init2dArray=Ki.init2dArray;be.transposeRagged=Ki.transposeRagged;be.dot=Ki.dot;be.translationMatrix=Ki.translationMatrix;be.rotationMatrix=Ki.rotationMatrix;be.rotationXYMatrix=Ki.rotationXYMatrix;be.apply3DTransform=Ki.apply3DTransform;be.apply2DTransform=Ki.apply2DTransform;be.apply2DTransform2=Ki.apply2DTransform2;be.convertCssMatrix=Ki.convertCssMatrix;be.inverseTransformMatrix=Ki.inverseTransformMatrix;var Ao=Kk();be.deg2rad=Ao.deg2rad;be.rad2deg=Ao.rad2deg;be.angleDelta=Ao.angleDelta;be.angleDist=Ao.angleDist;be.isFullCircle=Ao.isFullCircle;be.isAngleInsideSector=Ao.isAngleInsideSector;be.isPtInsideSector=Ao.isPtInsideSector;be.pathArc=Ao.pathArc;be.pathSector=Ao.pathSector;be.pathAnnulus=Ao.pathAnnulus;var Nf=Qk();be.isLeftAnchor=Nf.isLeftAnchor;be.isCenterAnchor=Nf.isCenterAnchor;be.isRightAnchor=Nf.isRightAnchor;be.isTopAnchor=Nf.isTopAnchor;be.isMiddleAnchor=Nf.isMiddleAnchor;be.isBottomAnchor=Nf.isBottomAnchor;var zf=tS();be.segmentsIntersect=zf.segmentsIntersect;be.segmentDistance=zf.segmentDistance;be.getTextLocation=zf.getTextLocation;be.clearLocationCache=zf.clearLocationCache;be.getVisibleSegment=zf.getVisibleSegment;be.findPointOnPath=zf.findPointOnPath;var Up=bt();be.extendFlat=Up.extendFlat;be.extendDeep=Up.extendDeep;be.extendDeepAll=Up.extendDeepAll;be.extendDeepNoArrays=Up.extendDeepNoArrays;var Fb=Xs();be.log=Fb.log;be.warn=Fb.warn;be.error=Fb.error;var Kse=kf();be.counterRegex=Kse.counter;var Nb=Ip();be.throttle=Nb.throttle;be.throttleDone=Nb.done;be.clearThrottle=Nb.clear;var Qi=eh();be.getGraphDiv=Qi.getGraphDiv;be.isPlotDiv=Qi.isPlotDiv;be.removeElement=Qi.removeElement;be.addStyleRule=Qi.addStyleRule;be.addRelatedStyleRule=Qi.addRelatedStyleRule;be.deleteRelatedStyleRule=Qi.deleteRelatedStyleRule;be.setStyleOnHover=Qi.setStyleOnHover;be.getFullTransformMatrix=Qi.getFullTransformMatrix;be.getElementTransformMatrix=Qi.getElementTransformMatrix;be.getElementAndAncestors=Qi.getElementAndAncestors;be.equalDomRects=Qi.equalDomRects;be.clearResponsive=iS();be.preserveDrawingBuffer=sS();be.makeTraceGroups=fS();be._=vS();be.notifier=db();be.filterUnique=dS();be.filterVisible=yS();be.pushUnique=mb();be.increment=gS();be.cleanNumber=xS();be.ensureNumber=function(r){return kS(r)?(r=Number(r),r>qS||r<$se?_S:r):_S};be.isIndex=function(e,r){return r!==void 0&&e>=r?!1:kS(e)&&e>=0&&e%1===0};be.noop=Mp();be.identity=Mb();be.repeat=function(e,r){for(var t=new Array(r),a=0;at?Math.max(t,Math.min(r,e)):Math.max(r,Math.min(t,e))};be.bBoxIntersect=function(e,r,t){return t=t||0,e.left<=r.right+t&&r.left<=e.right+t&&e.top<=r.bottom+t&&r.top<=e.bottom+t};be.simpleMap=function(e,r,t,a,n){for(var i=e.length,o=new Array(i),l=0;l=Math.pow(2,t)?n>10?(be.warn("randstr failed uniqueness"),o):e(r,t,a,(n||0)+1):o};be.OptionControl=function(e,r){e||(e={}),r||(r="opt");var t={};return t.optionList=[],t._newoption=function(a){a[r]=e,t[a.name]=a,t.optionList.push(a)},t["_"+r]=e,t};be.smooth=function(e,r){if(r=Math.round(r)||0,r<2)return e;var t=e.length,a=2*t,n=2*r-1,i=new Array(n),o=new Array(t),l,s,u,f;for(l=0;l=a&&(u-=a*Math.floor(u/a)),u<0?u=-1-u:u>=t&&(u=a-1-u),f+=e[u]*i[s];o[l]=f}return o};be.syncOrAsync=function(e,r,t){var a,n;function i(){return be.syncOrAsync(e,r,t)}for(;e.length;)if(n=e.splice(0,1)[0],a=n(r),a&&a.then)return a.then(i);return t&&t(r)};be.stripTrailingSlash=function(e){return e.slice(-1)==="/"?e.slice(0,-1):e};be.noneOrAll=function(e,r,t){if(e){var a=!1,n=!0,i,o;for(i=0;i0?n:0})};be.fillArray=function(e,r,t,a){if(a=a||be.identity,be.isArrayOrTypedArray(e))for(var n=0;nrue.test(window.navigator.userAgent);var tue=/Firefox\/(\d+)\.\d+/;be.getFirefoxVersion=function(){var e=tue.exec(window.navigator.userAgent);if(e&&e.length===2){var r=parseInt(e[1]);if(!isNaN(r))return r}return null};be.isD3Selection=function(e){return e instanceof lh.selection};be.ensureSingle=function(e,r,t,a){var n=e.select(r+(t?"."+t:""));if(n.size())return n;var i=e.append(r);return t&&i.classed(t,!0),a&&i.call(a),i};be.ensureSingleById=function(e,r,t,a){var n=e.select(r+"#"+t);if(n.size())return n;var i=e.append(r).attr("id",t);return a&&i.call(a),i};be.objectFromPath=function(e,r){for(var t=e.split("."),a,n=a={},i=0;i1?n+o[1]:"";if(i&&(o.length>1||l.length>4||t))for(;a.test(l);)l=l.replace(a,"$1"+i+"$2");return l+s};be.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var DS=/^\w*$/;be.templateString=function(e,r){var t={};return e.replace(be.TEMPLATE_STRING_REGEX,function(a,n){var i;return DS.test(n)?i=r[n]:(t[n]=t[n]||be.nestedProperty(r,n).get,i=t[n](!0)),i!==void 0?i:""})};var iue={max:10,count:0,name:"hovertemplate"};be.hovertemplateString=e=>zb(lp(Vs({},e),{opts:iue}));var oue={max:10,count:0,name:"texttemplate"};be.texttemplateString=e=>zb(lp(Vs({},e),{opts:oue}));var lue=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function sue(e){var r=e.match(lue);return r?{key:r[1],op:r[2],number:Number(r[3])}:{key:e,op:null,number:null}}var uue={max:10,count:0,name:"texttemplate",parseMultDiv:!0};be.texttemplateStringForShapes=e=>zb(lp(Vs({},e),{opts:uue}));var TS=/^[:|\|]/;function zb({data:e=[],locale:r,fallback:t,labels:a={},opts:n,template:i}){return i.replace(be.TEMPLATE_STRING_REGEX,(o,l,s)=>{let u=["xother","yother"].includes(l),f=["_xother","_yother"].includes(l),c=["_xother_","_yother_"].includes(l),v=["xother_","yother_"].includes(l),d=u||f||v||c;(f||c)&&(l=l.substring(1)),(v||c)&&(l=l.substring(0,l.length-1));let p=null,y=null;if(n.parseMultDiv){var m=sue(l);l=m.key,p=m.op,y=m.number}let x;if(d){if(a[l]===void 0)return"";x=a[l]}else for(let T of e)if(T){if(T.hasOwnProperty(l)){x=T[l];break}if(DS.test(l)||(x=be.nestedProperty(T,l).get(!0)),x!==void 0)break}if(x===void 0){let{count:T,max:k,name:M}=n,q=t===!1?o:t;return T=Hp&&o<=AS,u=l>=Hp&&l<=AS;if(s&&(a=10*a+o-Hp),u&&(n=10*n+l-Hp),!s||!u){if(a!==n)return a-n;if(o!==l)return o-l}}return n-a};var Ff=2e9;be.seedPseudoRandom=function(){Ff=2e9};be.pseudoRandom=function(){var e=Ff;return Ff=(69069*Ff+1)%4294967296,Math.abs(Ff-e)<429496729?be.pseudoRandom():Ff/4294967296};be.fillText=function(e,r,t){var a=Array.isArray(t)?function(o){t.push(o)}:function(o){t.text=o},n=be.extractOption(e,r,"htx","hovertext");if(be.isValidTextValue(n))return a(n);var i=be.extractOption(e,r,"tx","text");if(be.isValidTextValue(i))return a(i)};be.isValidTextValue=function(e){return e||e===0};be.formatPercent=function(e,r){r=r||0;for(var t=(Math.round(100*e*Math.pow(10,r))*Math.pow(.1,r)).toFixed(r)+"%",a=0;a1&&(u=1):u=0,be.strTranslate(n-u*(t+o),i-u*(a+l))+be.strScale(u)+(s?"rotate("+s+(r?"":" "+t+" "+a)+")":"")};be.setTransormAndDisplay=function(e,r){e.attr("transform",be.getTextTransform(r)),e.style("display",r.scale?null:"none")};be.ensureUniformFontSize=function(e,r){var t=be.extendFlat({},r);return t.size=Math.max(r.size,e._fullLayout.uniformtext.minsize||0),t};be.join2=function(e,r,t){var a=e.length;return a>1?e.slice(0,-1).join(r)+t+e[a-1]:e.join(r)};be.bigFont=function(e){return Math.round(1.2*e)};var MS=be.getFirefoxVersion(),fue=MS!==null&&MS<86;be.getPositionFromD3Event=function(){return fue?[lh.event.layerX,lh.event.layerY]:[lh.event.offsetX,lh.event.offsetY]}});var NS=N(()=>{"use strict";var cue=Le(),PS={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(Ib in PS)FS=Ib.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),cue.addStyleRule(FS,PS[Ib]);var FS,Ib});var Ob=N((fDe,zS)=>{zS.exports=!0});var Hb=N((cDe,IS)=>{"use strict";var vue=Ob(),Bb;typeof window.matchMedia=="function"?Bb=!window.matchMedia("(hover: none)").matches:Bb=vue;IS.exports=Bb});var eu=N((vDe,Ub)=>{"use strict";var If=typeof Reflect=="object"?Reflect:null,OS=If&&typeof If.apply=="function"?If.apply:function(r,t,a){return Function.prototype.apply.call(r,t,a)},Gp;If&&typeof If.ownKeys=="function"?Gp=If.ownKeys:Object.getOwnPropertySymbols?Gp=function(r){return Object.getOwnPropertyNames(r).concat(Object.getOwnPropertySymbols(r))}:Gp=function(r){return Object.getOwnPropertyNames(r)};function hue(e){console&&console.warn&&console.warn(e)}var HS=Number.isNaN||function(r){return r!==r};function Et(){Et.init.call(this)}Ub.exports=Et;Ub.exports.once=mue;Et.EventEmitter=Et;Et.prototype._events=void 0;Et.prototype._eventsCount=0;Et.prototype._maxListeners=void 0;var BS=10;function Vp(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(Et,"defaultMaxListeners",{enumerable:!0,get:function(){return BS},set:function(e){if(typeof e!="number"||e<0||HS(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");BS=e}});Et.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};Et.prototype.setMaxListeners=function(r){if(typeof r!="number"||r<0||HS(r))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+r+".");return this._maxListeners=r,this};function US(e){return e._maxListeners===void 0?Et.defaultMaxListeners:e._maxListeners}Et.prototype.getMaxListeners=function(){return US(this)};Et.prototype.emit=function(r){for(var t=[],a=1;a0&&(o=t[0]),o instanceof Error)throw o;var l=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw l.context=o,l}var s=i[r];if(s===void 0)return!1;if(typeof s=="function")OS(s,this,t);else for(var u=s.length,f=jS(s,u),a=0;a0&&o.length>n&&!o.warned){o.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(r)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=r,l.count=o.length,hue(l)}return e}Et.prototype.addListener=function(r,t){return GS(this,r,t,!1)};Et.prototype.on=Et.prototype.addListener;Et.prototype.prependListener=function(r,t){return GS(this,r,t,!0)};function due(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function VS(e,r,t){var a={fired:!1,wrapFn:void 0,target:e,type:r,listener:t},n=due.bind(a);return n.listener=t,a.wrapFn=n,n}Et.prototype.once=function(r,t){return Vp(t),this.on(r,VS(this,r,t)),this};Et.prototype.prependOnceListener=function(r,t){return Vp(t),this.prependListener(r,VS(this,r,t)),this};Et.prototype.removeListener=function(r,t){var a,n,i,o,l;if(Vp(t),n=this._events,n===void 0)return this;if(a=n[r],a===void 0)return this;if(a===t||a.listener===t)--this._eventsCount===0?this._events=Object.create(null):(delete n[r],n.removeListener&&this.emit("removeListener",r,a.listener||t));else if(typeof a!="function"){for(i=-1,o=a.length-1;o>=0;o--)if(a[o]===t||a[o].listener===t){l=a[o].listener,i=o;break}if(i<0)return this;i===0?a.shift():pue(a,i),a.length===1&&(n[r]=a[0]),n.removeListener!==void 0&&this.emit("removeListener",r,l||t)}return this};Et.prototype.off=Et.prototype.removeListener;Et.prototype.removeAllListeners=function(r){var t,a,n;if(a=this._events,a===void 0)return this;if(a.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):a[r]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete a[r]),this;if(arguments.length===0){var i=Object.keys(a),o;for(n=0;n=0;n--)this.removeListener(r,t[n]);return this};function YS(e,r,t){var a=e._events;if(a===void 0)return[];var n=a[r];return n===void 0?[]:typeof n=="function"?t?[n.listener||n]:[n]:t?yue(n):jS(n,n.length)}Et.prototype.listeners=function(r){return YS(this,r,!0)};Et.prototype.rawListeners=function(r){return YS(this,r,!1)};Et.listenerCount=function(e,r){return typeof e.listenerCount=="function"?e.listenerCount(r):WS.call(e,r)};Et.prototype.listenerCount=WS;function WS(e){var r=this._events;if(r!==void 0){var t=r[e];if(typeof t=="function")return 1;if(t!==void 0)return t.length}return 0}Et.prototype.eventNames=function(){return this._eventsCount>0?Gp(this._events):[]};function jS(e,r){for(var t=new Array(r),a=0;a{"use strict";var Gb=eu().EventEmitter,bue={init:function(e){if(e._ev instanceof Gb)return e;var r=new Gb,t=new Gb;return e._ev=r,e._internalEv=t,e.on=r.on.bind(r),e.once=r.once.bind(r),e.removeListener=r.removeListener.bind(r),e.removeAllListeners=r.removeAllListeners.bind(r),e._internalOn=t.on.bind(t),e._internalOnce=t.once.bind(t),e._removeInternalListener=t.removeListener.bind(t),e._removeAllInternalListeners=t.removeAllListeners.bind(t),e.emit=function(a,n){r.emit(a,n),t.emit(a,n)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,r,t){var a,n=e._ev;if(!n)return;var i=n._events[r];if(!i)return;function o(s){if(s.listener){if(n.removeListener(r,s.listener),!s.fired)return s.fired=!0,s.listener.apply(n,[t])}else return s.apply(n,[t])}i=Array.isArray(i)?i:[i];var l;for(l=0;l{"use strict";var JS=Le(),xue=Zs().dfltConfig;function _ue(e,r){for(var t=[],a,n=0;nxue.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};ll.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};ll.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};ll.undo=function(r){var t,a;if(!(r.undoQueue===void 0||isNaN(r.undoQueue.index)||r.undoQueue.index<=0)){for(r.undoQueue.index--,t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a=r.undoQueue.queue.length)){for(t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a{"use strict";QS.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var Hf=N(ga=>{"use strict";var ci=br(),uh=Le(),Wp=gn(),Yb=Cf(),wue=Vb(),Tue=rh(),Aue=Zs().configAttributes,eq=$i(),eo=uh.extendDeepAll,Of=uh.isPlainObject,Mue=uh.isArrayOrTypedArray,jp=uh.nestedProperty,kue=uh.valObjectMeta,Wb="_isSubplotObj",Zp="_isLinkedToArray",Sue="_arrayAttrRegexps",tq="_deprecated",jb=[Wb,Zp,Sue,tq];ga.IS_SUBPLOT_OBJ=Wb;ga.IS_LINKED_TO_ARRAY=Zp;ga.DEPRECATED=tq;ga.UNDERSCORE_ATTRS=jb;ga.get=function(){var e={};return ci.allTypes.forEach(function(r){e[r]=Lue(r)}),{defs:{valObjects:kue,metaKeys:jb.concat(["description","role","editType","impliedEdits"]),editType:{traces:eq.traces,layout:eq.layout},impliedEdits:{}},traces:e,layout:Cue(),frames:Eue(),animation:Bf(Tue),config:Bf(Aue)}};ga.crawl=function(e,r,t,a){var n=t||0;a=a||"",Object.keys(e).forEach(function(i){var o=e[i];if(jb.indexOf(i)===-1){var l=(a?a+".":"")+i;r(o,i,e,n,l),!ga.isValObject(o)&&Of(o)&&i!=="impliedEdits"&&ga.crawl(o,r,n+1,l)}})};ga.isValObject=function(e){return e&&e.valType!==void 0};ga.findArrayAttributes=function(e){var r=[],t=[],a=[],n,i;function o(s,u,f,c){t=t.slice(0,c).concat([u]),a=a.slice(0,c).concat([s&&s._isLinkedToArray]);var v=s&&(s.valType==="data_array"||s.arrayOk===!0)&&!(t[c-1]==="colorbar"&&(u==="ticktext"||u==="tickvals"));v&&l(n,0,"")}function l(s,u,f){var c=s[t[u]],v=f+t[u];if(u===t.length-1)Mue(c)&&r.push(i+v);else if(a[u]){if(Array.isArray(c))for(var d=0;d=i.length)return!1;if(e.dimensions===2){if(t++,r.length===t)return e;var o=r[t];if(!Yp(o))return!1;e=i[n][o]}else e=i[n]}else e=i}}return e}function Yp(e){return e===Math.round(e)&&e>=0}function Lue(e){var r,t;r=ci.modules[e]._module,t=r.basePlotModule;var a={};a.type=null;var n=eo({},Wp),i=eo({},r.attributes);ga.crawl(i,function(s,u,f,c,v){jp(n,v).set(void 0),s===void 0&&jp(i,v).set(void 0)}),eo(a,n),ci.traceIs(e,"noOpacity")&&delete a.opacity,ci.traceIs(e,"showLegend")||(delete a.showlegend,delete a.legendgroup),ci.traceIs(e,"noHover")&&(delete a.hoverinfo,delete a.hoverlabel),r.selectPoints||delete a.selectedpoints,eo(a,i),t.attributes&&eo(a,t.attributes),a.type=e;var o={meta:r.meta||{},categories:r.categories||{},animatable:!!r.animatable,type:e,attributes:Bf(a)};if(r.layoutAttributes){var l={};eo(l,r.layoutAttributes),o.layoutAttributes=Bf(l)}return r.animatable||ga.crawl(o,function(s){ga.isValObject(s)&&"anim"in s&&delete s.anim}),o}function Cue(){var e={},r,t;eo(e,Yb);for(r in ci.subplotsRegistry)if(t=ci.subplotsRegistry[r],!!t.layoutAttributes)if(Array.isArray(t.attr))for(var a=0;a{"use strict";var Uf=Le(),Nue=gn(),jl="templateitemname",Zb={name:{valType:"string",editType:"none"}};Zb[jl]={valType:"string",editType:"calc"};ru.templatedArray=function(e,r){return r._isLinkedToArray=e,r.name=Zb.name,r[jl]=Zb[jl],r};ru.traceTemplater=function(e){var r={},t,a;for(t in e)a=e[t],Array.isArray(a)&&a.length&&(r[t]=0);function n(i){t=Uf.coerce(i,{},Nue,"type");var o={type:t,_template:null};if(t in r){a=e[t];var l=r[t]%a.length;r[t]++,o._template=a[l]}return o}return{newTrace:n}};ru.newContainer=function(e,r,t){var a=e._template,n=a&&(a[r]||t&&a[t]);Uf.isPlainObject(n)||(n=null);var i=e[r]={_template:n};return i};ru.arrayTemplater=function(e,r,t){var a=e._template,n=a&&a[iq(r)],i=a&&a[r];(!Array.isArray(i)||!i.length)&&(i=[]);var o={};function l(u){var f={name:u.name,_input:u},c=f[jl]=u[jl];if(!nq(c))return f._template=n,f;for(var v=0;v=a&&(t._input||{})._templateitemname;i&&(n=a);var o=r+"["+n+"]",l;function s(){l={},i&&(l[o]={},l[o][jl]=i)}s();function u(d,p){l[d]=p}function f(d,p){i?Uf.nestedProperty(l[o],d).set(p):l[o+"."+d]=p}function c(){var d=l;return s(),d}function v(d,p){d&&f(d,p);var y=c();for(var m in y)Uf.nestedProperty(e,m).set(y[m])}return{modifyBase:u,modifyItem:f,getUpdateObj:c,applyUpdate:v}}});var Ca=N((gDe,oq)=>{"use strict";var fh=kf().counter;oq.exports={idRegex:{x:fh("x","( domain)?"),y:fh("y","( domain)?")},attrRegex:fh("[xy]axis"),xAxisMatch:fh("xaxis"),yAxisMatch:fh("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var la=N(Cn=>{"use strict";var zue=br(),Xb=Ca();Cn.id2name=function(r){if(!(typeof r!="string"||!r.match(Xb.AX_ID_PATTERN))){var t=r.split(" ")[0].slice(1);return t==="1"&&(t=""),r.charAt(0)+"axis"+t}};Cn.name2id=function(r){if(r.match(Xb.AX_NAME_PATTERN)){var t=r.slice(5);return t==="1"&&(t=""),r.charAt(0)+t}};Cn.cleanId=function(r,t,a){var n=/( domain)$/.test(r);if(!(typeof r!="string"||!r.match(Xb.AX_ID_PATTERN))&&!(t&&r.charAt(0)!==t)&&!(n&&!a)){var i=r.split(" ")[0].slice(1).replace(/^0+/,"");return i==="1"&&(i=""),r.charAt(0)+i+(n&&a?" domain":"")}};Cn.list=function(e,r,t){var a=e._fullLayout;if(!a)return[];var n=Cn.listIds(e,r),i=new Array(n.length),o;for(o=0;oa?1:-1:+(e.slice(1)||1)-+(r.slice(1)||1)};Cn.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function lq(e,r){if(r&&r.length){for(var t=0;t{"use strict";function Iue(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".outline-controllers").remove()}function Oue(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}sq.exports={clearOutlineControllers:Iue,clearOutline:Oue}});var Xp=N((_De,uq)=>{"use strict";uq.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var Kp=N($p=>{"use strict";var Jp=br(),wDe=Ca().SUBPLOT_PATTERN;$p.getSubplotCalcData=function(e,r,t){var a=Jp.subplotsRegistry[r];if(!a)return[];for(var n=a.attr,i=[],o=0;o{"use strict";var Bue=br(),Gf=Le();tu.manageCommandObserver=function(e,r,t,a){var n={},i=!0;r&&r._commandObserver&&(n=r._commandObserver),n.cache||(n.cache={}),n.lookupTable={};var o=tu.hasSimpleAPICommandBindings(e,t,n.lookupTable);if(r&&r._commandObserver){if(o)return n;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,n}if(o){fq(e,o,n.cache),n.check=function(){if(i){var f=fq(e,o,n.cache);return f.changed&&a&&n.lookupTable[f.value]!==void 0&&(n.disable(),Promise.resolve(a({value:f.value,type:o.type,prop:o.prop,traces:o.traces,index:n.lookupTable[f.value]})).then(n.enable,n.enable)),f.changed}};for(var l=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],s=0;s0?".":"")+n;Gf.isPlainObject(i)?Jb(i,r,o,a+1):r(o,n,i)}})}});var ta=N((MDe,Sq)=>{"use strict";var xq=Sr(),Uue=wf().timeFormatLocale,Gue=ab().formatLocale,ch=Rr(),Vue=nb(),Qr=br(),_q=Hf(),Yue=_t(),vr=Le(),wq=Tr(),dq=It().BADNUM,En=la(),Wue=Zl().clearOutline,jue=Xp(),$b=rh(),Zue=Vb(),Xue=Kp().getModuleCalcData,pq=vr.relinkPrivateKeys,au=vr._,er=Sq.exports={};vr.extendFlat(er,Qr);er.attributes=gn();er.attributes.type.values=er.allTypes;er.fontAttrs=ma();er.layoutAttributes=Cf();var e1=hq();er.executeAPICommand=e1.executeAPICommand;er.computeAPICommandBindings=e1.computeAPICommandBindings;er.manageCommandObserver=e1.manageCommandObserver;er.hasSimpleAPICommandBindings=e1.hasSimpleAPICommandBindings;er.redrawText=function(e){return e=vr.getGraphDiv(e),new Promise(function(r){setTimeout(function(){e._fullLayout&&(Qr.getComponentMethod("annotations","draw")(e),Qr.getComponentMethod("legend","draw")(e),Qr.getComponentMethod("colorbar","draw")(e),r(er.previousPromises(e)))},300)})};er.resize=function(e){e=vr.getGraphDiv(e);var r,t=new Promise(function(a,n){(!e||vr.isHidden(e))&&n(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(r=e._resolveResize),e._resolveResize=a,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||vr.isHidden(e)){a(e);return}delete e.layout.width,delete e.layout.height;var i=e.changed;e.autoplay=!0,Qr.call("relayout",e,{autosize:!0}).then(function(){e.changed=i,e._resolveResize===a&&(delete e._resolveResize,a(e))})},100)});return r&&r(t),t};er.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};er.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var r=e._fullLayout,t=vr.ensureSingle(r._paper,"text","js-plot-link-container",function(s){s.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:wq.defaultLine,"pointer-events":"all"}).each(function(){var u=xq.select(this);u.append("tspan").classed("js-link-to-tool",!0),u.append("tspan").classed("js-link-spacer",!0),u.append("tspan").classed("js-sourcelinks",!0)})}),a=t.node(),n={y:r._paper.attr("height")-9};document.body.contains(a)&&a.getComputedTextLength()>=r.width-20?(n["text-anchor"]="start",n.x=5):(n["text-anchor"]="end",n.x=r._paper.attr("width")-7),t.attr(n);var i=t.select(".js-link-to-tool"),o=t.select(".js-link-spacer"),l=t.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&Jue(e,i),o.text(i.text()&&l.text()?" - ":"")}};function Jue(e,r){r.text("");var t=r.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)t.on("click",function(){er.sendDataToCloud(e)});else{var a=window.location.pathname.split("/"),n=window.location.search;t.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+a[2].split(".")[0]+"/"+a[1]+n})}}er.sendDataToCloud=function(e){var r=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(r){e.emit("plotly_beforeexport");var t=xq.select(e).append("div").attr("id","hiddenform").style("display","none"),a=t.append("form").attr({action:r+"/external",method:"post",target:"_blank"}),n=a.append("input").attr({type:"text",name:"data"});return n.node().value=er.graphJson(e,!1,"keepdata"),a.node().submit(),t.remove(),e.emit("plotly_afterexport"),!1}};var $ue=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],Kue=["year","month","dayMonth","dayMonthYear"];er.supplyDefaults=function(e,r){var t=r&&r.skipUpdateCalc,a=e._fullLayout||{};if(a._skipDefaults){delete a._skipDefaults;return}var n=e._fullLayout={},i=e.layout||{},o=e._fullData||[],l=e._fullData=[],s=e.data||[],u=e.calcdata||[],f=e._context||{},c;e._transitionData||er.createTransitionData(e),n._dfltTitle={plot:au(e,"Click to enter Plot title"),subtitle:au(e,"Click to enter Plot subtitle"),x:au(e,"Click to enter X axis title"),y:au(e,"Click to enter Y axis title"),colorbar:au(e,"Click to enter Colorscale title"),annotation:au(e,"new text")},n._traceWord=au(e,"trace");var v=yq(e,$ue);if(n._mapboxAccessToken=f.mapboxAccessToken,a._initialAutoSizeIsDone){var d=a.width,p=a.height;er.supplyLayoutGlobalDefaults(i,n,v),i.width||(n.width=d),i.height||(n.height=p),er.sanitizeMargins(n)}else{er.supplyLayoutGlobalDefaults(i,n,v);var y=!i.width||!i.height,m=n.autosize,x=f.autosizable,w=y&&(m||x);w?er.plotAutoSize(e,i,n):y&&er.sanitizeMargins(n),!m&&y&&(i.width=n.width,i.height=n.height)}n._d3locale=rfe(v,n.separators),n._extraFormat=yq(e,Kue),n._initialAutoSizeIsDone=!0,n._dataLength=s.length,n._modules=[],n._visibleModules=[],n._basePlotModules=[];var _=n._subplots=efe(),b=n._splomAxes={x:{},y:{}},T=n._splomSubplots={};n._splomGridDflt={},n._scatterStackOpts={},n._firstScatter={},n._alignmentOpts={},n._colorAxes={},n._requestRangeslider={},n._traceUids=Que(o,s),er.supplyDataDefaults(s,l,i,n);var k=Object.keys(b.x),M=Object.keys(b.y);if(k.length>1&&M.length>1){for(Qr.getComponentMethod("grid","sizeDefaults")(i,n),c=0;c15&&M.length>15&&n.shapes.length===0&&n.images.length===0,er.linkSubplots(l,n,o,a),er.cleanPlot(l,n,o,a);var R=!!(a._has&&a._has("cartesian")),z=!!(n._has&&n._has("cartesian")),O=R,B=z;O&&!B?a._bgLayer.remove():B&&!O&&(n._shouldCreateBgLayer=!0),a._zoomlayer&&!e._dragging&&Wue({_fullLayout:a}),tfe(l,n),pq(n,a),Qr.getComponentMethod("colorscale","crossTraceDefaults")(l,n),n._preGUI||(n._preGUI={}),n._tracePreGUI||(n._tracePreGUI={});var Y=n._tracePreGUI,V={},H;for(H in Y)V[H]="old";for(c=0;c0){var f=1-2*i;o=Math.round(f*o),l=Math.round(f*l)}}var c=er.layoutAttributes.width.min,v=er.layoutAttributes.height.min;o1,p=!t.height&&Math.abs(a.height-l)>1;(p||d)&&(d&&(a.width=o),p&&(a.height=l)),r._initialAutoSize||(r._initialAutoSize={width:o,height:l}),er.sanitizeMargins(a)};er.supplyLayoutModuleDefaults=function(e,r,t,a){var n=Qr.componentsRegistry,i=r._basePlotModules,o,l,s,u=Qr.subplotsRegistry.cartesian;for(o in n)s=n[o],s.includeBasePlot&&s.includeBasePlot(e,r);i.length||i.push(u),r._has("cartesian")&&(Qr.getComponentMethod("grid","contentDefaults")(e,r),u.finalizeSubplots(e,r));for(var f in r._subplots)r._subplots[f].sort(vr.subplotSort);for(l=0;l1&&(t.l/=m,t.r/=m)}if(v){var x=(t.t+t.b)/v;x>1&&(t.t/=x,t.b/=x)}var w=t.xl!==void 0?t.xl:t.x,_=t.xr!==void 0?t.xr:t.x,b=t.yt!==void 0?t.yt:t.y,T=t.yb!==void 0?t.yb:t.y;d[r]={l:{val:w,size:t.l+y},r:{val:_,size:t.r+y},b:{val:T,size:t.b+y},t:{val:b,size:t.t+y}},p[r]=1}if(!a._replotting)return er.doAutoMargin(e)}};function nfe(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var r=En.list(e,"",!0);for(var t in r)if(r[t].autoshift||r[t].shift)return!0;return!1}er.doAutoMargin=function(e){var r=e._fullLayout,t=r.width,a=r.height;r._size||(r._size={}),Tq(r);var n=r._size,i=r.margin,o={t:0,b:0,l:0,r:0},l=vr.extendFlat({},n),s=i.l,u=i.r,f=i.t,c=i.b,v=r._pushmargin,d=r._pushmarginIds,p=r.minreducedwidth,y=r.minreducedheight;if(i.autoexpand!==!1){for(var m in v)d[m]||delete v[m];var x=e._fullLayout._reservedMargin;for(var w in x)for(var _ in x[w]){var b=x[w][_];o[_]=Math.max(o[_],b)}v.base={l:{val:0,size:s},r:{val:1,size:u},t:{val:1,size:f},b:{val:0,size:c}};for(var T in o){var k=0;for(var M in v)M!=="base"&&ch(v[M][T].size)&&(k=v[M][T].size>k?v[M][T].size:k);var q=Math.max(0,i[T]-k);o[T]=Math.max(0,o[T]-q)}for(var E in v){var D=v[E].l||{},P=v[E].b||{},R=D.val,z=D.size,O=P.val,B=P.size,Y=t-o.r-o.l,V=a-o.t-o.b;for(var H in v){if(ch(z)&&v[H].r){var G=v[H].r.val,X=v[H].r.size;if(G>R){var Z=(z*G+(X-Y)*R)/(G-R),ee=(X*(1-R)+(z-Y)*(1-G))/(G-R);Z+ee>s+u&&(s=Z,u=ee)}}if(ch(B)&&v[H].t){var fe=v[H].t.val,ie=v[H].t.size;if(fe>O){var ue=(B*fe+(ie-V)*O)/(fe-O),K=(ie*(1-O)+(B-V)*(1-fe))/(fe-O);ue+K>c+f&&(c=ue,f=K)}}}}}var _e=vr.constrain(t-i.l-i.r,Aq,p),le=vr.constrain(a-i.t-i.b,Mq,y),he=Math.max(0,t-_e),oe=Math.max(0,a-le);if(he){var ce=(s+u)/he;ce>1&&(s/=ce,u/=ce)}if(oe){var W=(c+f)/oe;W>1&&(c/=W,f/=W)}if(n.l=Math.round(s)+o.l,n.r=Math.round(u)+o.r,n.t=Math.round(f)+o.t,n.b=Math.round(c)+o.b,n.p=Math.round(i.pad),n.w=Math.round(t)-n.l-n.r,n.h=Math.round(a)-n.t-n.b,!r._replotting&&(er.didMarginChange(l,n)||nfe(e))){"_redrawFromAutoMarginCount"in r?r._redrawFromAutoMarginCount++:r._redrawFromAutoMarginCount=1;var Q=3*(1+Object.keys(d).length);if(r._redrawFromAutoMarginCount1)return!0}return!1};er.graphJson=function(e,r,t,a,n,i){(n&&r&&!e._fullData||n&&!r&&!e._fullLayout)&&er.supplyDefaults(e);var o=n?e._fullData:e.data,l=n?e._fullLayout:e.layout,s=(e._transitionData||{})._frames;function u(v,d){if(typeof v=="function")return d?"_function_":null;if(vr.isPlainObject(v)){var p={},y;return Object.keys(v).sort().forEach(function(_){if(["_","["].indexOf(_.charAt(0))===-1){if(typeof v[_]=="function"){d&&(p[_]="_function");return}if(t==="keepdata"){if(_.slice(-3)==="src")return}else if(t==="keepstream"){if(y=v[_+"src"],typeof y=="string"&&y.indexOf(":")>0&&!vr.isPlainObject(v.stream))return}else if(t!=="keepall"&&(y=v[_+"src"],typeof y=="string"&&y.indexOf(":")>0))return;p[_]=u(v[_],d)}}),p}var m=Array.isArray(v),x=vr.isTypedArray(v);if((m||x)&&v.dtype&&v.shape){var w=v.bdata;return u({dtype:v.dtype,shape:v.shape,bdata:vr.isArrayBuffer(w)?Vue.encode(w):w},d)}return m?v.map(function(_){return u(_,d)}):x?vr.simpleMap(v,vr.identity):vr.isJSDate(v)?vr.ms2DateTimeLocal(+v):v}var f={data:(o||[]).map(function(v){var d=u(v);return r&&delete d.fit,d})};if(!r&&(f.layout=u(l),n)){var c=l._size;f.layout.computed={margin:{b:c.b,l:c.l,r:c.r,t:c.t}}}return s&&(f.frames=u(s)),i&&(f.config=u(e._context,!0)),a==="object"?f:JSON.stringify(f)};er.modifyFrames=function(e,r){var t,a,n,i=e._transitionData._frames,o=e._transitionData._frameHash;for(t=0;t0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){a=!0}),t.redraw&&e._transitionData._interruptCallbacks.push(function(){return Qr.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var v=0,d=0;function p(){return v++,function(){d++,!a&&d===v&&l(c)}}t.runFn(p),setTimeout(p())})}function l(c){if(e._transitionData)return i(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(t.redraw)return Qr.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(c)}function s(){if(e._transitionData)return e._transitioning=!1,n(e._transitionData._interruptCallbacks)}var u=[er.previousPromises,s,t.prepareFn,er.rehover,er.reselect,o],f=vr.syncOrAsync(u,e);return(!f||!f.then)&&(f=Promise.resolve()),f.then(function(){return e})}er.doCalcdata=function(e,r){var t=En.list(e),a=e._fullData,n=e._fullLayout,i,o,l,s,u=new Array(a.length),f=(e.calcdata||[]).slice();for(e.calcdata=u,n._numBoxes=0,n._numViolins=0,n._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,n._piecolormap={},n._sunburstcolormap={},n._treemapcolormap={},n._iciclecolormap={},n._funnelareacolormap={},l=0;l=0;s--)if(T[s].enabled){i._indexToPoints=T[s]._indexToPoints;break}o&&o.calc&&(b=o.calc(e,i))}(!Array.isArray(b)||!b[0])&&(b=[{x:dq,y:dq}]),b[0].t||(b[0].t={}),b[0].trace=i,u[w]=b}}for(gq(t,a,n),l=0;l{"use strict";nu.xmlns="http://www.w3.org/2000/xmlns/";nu.svg="http://www.w3.org/2000/svg";nu.xlink="http://www.w3.org/1999/xlink";nu.svgAttrs={xmlns:nu.svg,"xmlns:xlink":nu.xlink}});var ja=N((SDe,qq)=>{"use strict";qq.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var Ea=N(vi=>{"use strict";var sa=Sr(),ul=Le(),sfe=ul.strTranslate,Kb=sl(),ufe=ja().LINE_SPACING,ffe=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;vi.convertToTspans=function(e,r,t){var a=e.text(),n=!e.attr("data-notex")&&r&&r._context.typesetMath&&typeof MathJax!="undefined"&&a.match(ffe),i=sa.select(e.node().parentNode);if(i.empty())return;var o=e.attr("class")?e.attr("class").split(" ")[0]:"text";o+="-math",i.selectAll("svg."+o).remove(),i.selectAll("g."+o+"-group").remove(),e.style("display",null).attr({"data-unformatted":a,"data-math":"N"});function l(){i.empty()||(o=e.attr("class")+"-math",i.select("svg."+o).remove()),e.text("").style("white-space","pre");var s=Tfe(e.node(),a);s&&e.style("pointer-events","all"),vi.positionText(e),t&&t.call(e)}return n?(r&&r._promises||[]).push(new Promise(function(s){e.style("display","none");var u=parseInt(e.node().style.fontSize,10),f={fontSize:u};dfe(n[2],f,function(c,v,d){i.selectAll("svg."+o).remove(),i.selectAll("g."+o+"-group").remove();var p=c&&c.select("svg");if(!p||!p.node()){l(),s();return}var y=i.append("g").classed(o+"-group",!0).attr({"pointer-events":"none","data-unformatted":a,"data-math":"Y"});y.node().appendChild(p.node()),v&&v.node()&&p.node().insertBefore(v.node().cloneNode(!0),p.node().firstChild);var m=d.width,x=d.height;p.attr({class:o,height:x,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var w=e.node().style.fill||"black",_=p.select("g");_.attr({fill:w,stroke:w});var b=_.node().getBoundingClientRect(),T=b.width,k=b.height;(T>m||k>x)&&(p.style("overflow","hidden"),b=p.node().getBoundingClientRect(),T=b.width,k=b.height);var M=+e.attr("x"),q=+e.attr("y"),E=u||e.node().getBoundingClientRect().height,D=-E/4;if(o[0]==="y")y.attr({transform:"rotate("+[-90,M,q]+")"+sfe(-T/2,D-k/2)});else if(o[0]==="l")q=D-k/2;else if(o[0]==="a"&&o.indexOf("atitle")!==0)M=0,q=D;else{var P=e.attr("text-anchor");M=M-T*(P==="middle"?.5:P==="end"?1:0),q=q+D-k/2}p.attr({x:M,y:q}),t&&t.call(e,y),s(y)})})):l(),e};var cfe=/(<|<|<)/g,vfe=/(>|>|>)/g;function hfe(e){return e.replace(cfe,"\\lt ").replace(vfe,"\\gt ")}var Lq=[["$","$"],["\\(","\\)"]];function dfe(e,r,t){var a=parseInt((MathJax.version||"").split(".")[0]);if(a!==2&&a!==3){ul.warn("No MathJax version:",MathJax.version);return}var n,i,o,l,s=function(){return i=ul.extendDeepAll({},MathJax.Hub.config),o=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:Lq},displayAlign:"left"})},u=function(){i=ul.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=Lq},f=function(){if(n=MathJax.Hub.config.menuSettings.renderer,n!=="SVG")return MathJax.Hub.setRenderer("SVG")},c=function(){n=MathJax.config.startup.output,n!=="svg"&&(MathJax.config.startup.output="svg")},v=function(){var w="math-output-"+ul.randstr({},64);l=sa.select("body").append("div").attr({id:w}).style({visibility:"hidden",position:"absolute","font-size":r.fontSize+"px"}).text(hfe(e));var _=l.node();return a===2?MathJax.Hub.Typeset(_):MathJax.typeset([_])},d=function(){var w=l.select(a===2?".MathJax_SVG":".MathJax"),_=!w.empty()&&l.select("svg").node();if(!_)ul.log("There was an error in the tex syntax.",e),t();else{var b=_.getBoundingClientRect(),T;a===2?T=sa.select("body").select("#MathJax_SVG_glyphs"):T=w.select("defs"),t(w,T,b)}l.remove()},p=function(){if(n!=="SVG")return MathJax.Hub.setRenderer(n)},y=function(){n!=="svg"&&(MathJax.config.startup.output=n)},m=function(){return o!==void 0&&(MathJax.Hub.processSectionDelay=o),MathJax.Hub.Config(i)},x=function(){MathJax.config=i};a===2?MathJax.Hub.Queue(s,f,v,d,p,m):a===3&&(u(),c(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){v(),d(),y(),x()}))}var Rq={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},pfe={sub:"0.3em",sup:"-0.6em"},yfe={sub:"-0.21em",sup:"0.42em"},Cq="\u200B",Eq=["http:","https:","mailto:","",void 0,":"],Pq=vi.NEWLINES=/(\r\n?|\n)/g,ex=/(<[^<>]*>)/,rx=/<(\/?)([^ >]*)(\s+(.*))?>/i,mfe=//i;vi.BR_TAG_ALL=//gi;var Fq=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,Nq=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,zq=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,gfe=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function iu(e,r){if(!e)return null;var t=e.match(r),a=t&&(t[3]||t[4]);return a&&r1(a)}var bfe=/(^|;)\s*color:/;vi.plainText=function(e,r){r=r||{};for(var t=r.len!==void 0&&r.len!==-1?r.len:1/0,a=r.allowedTags!==void 0?r.allowedTags:["br"],n="...",i=n.length,o=e.split(ex),l=[],s="",u=0,f=0;fi?l.push(c.slice(0,Math.max(0,y-i))+n):l.push(c.slice(0,y));break}s=""}}return l.join("")};var xfe={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},_fe=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function r1(e){return e.replace(_fe,function(r,t){var a;return t.charAt(0)==="#"?a=wfe(t.charAt(1)==="x"?parseInt(t.slice(2),16):parseInt(t.slice(1),10)):a=xfe[t],a||r})}vi.convertEntities=r1;function wfe(e){if(!(e>1114111)){var r=String.fromCodePoint;if(r)return r(e);var t=String.fromCharCode;return e<=65535?t(e):t((e>>10)+55232,e%1024+56320)}}function Tfe(e,r){r=r.replace(Pq," ");var t=!1,a=[],n,i=-1;function o(){i++;var k=document.createElementNS(Kb.svg,"tspan");sa.select(k).attr({class:"line",dy:i*ufe+"em"}),e.appendChild(k),n=k;var M=a;if(a=[{node:k}],M.length>1)for(var q=1;q.",r);return}var M=a.pop();k!==M.type&&ul.log("Start tag <"+M.type+"> doesnt match end tag <"+k+">. Pretending it did match.",r),n=a[a.length-1].node}var f=mfe.test(r);f?o():(n=e,a=[{node:e}]);for(var c=r.split(ex),v=0;v{"use strict";var Afe=Sr(),a1=kn(),hh=Rr(),t1=Le(),Oq=Tr(),Mfe=Ws().isValid;function kfe(e,r,t){var a=r?t1.nestedProperty(e,r).get()||{}:e,n=a[t||"color"];n&&n._inputArray&&(n=n._inputArray);var i=!1;if(t1.isArrayOrTypedArray(n)){for(var o=0;o=0;a--,n++){var i=e[a];t[n]=[1-i[0],i[1]]}return t}function Yq(e,r){r=r||{};for(var t=e.domain,a=e.range,n=a.length,i=new Array(n),o=0;o{"use strict";var jq=_b(),qfe=jq.FORMAT_LINK,Lfe=jq.DATE_FORMAT_LINK;function Cfe(e,r){return{valType:"string",dflt:"",editType:"none",description:(r?tx:Zq)("hover text",e)+["By default the values are formatted using "+(r?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function tx(e,r){return["Sets the "+e+" formatting rule"+(r?"for `"+r+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+qfe+"."].join(" ")}function Zq(e,r){return tx(e,r)+[" And for dates see: "+Lfe+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}Xq.exports={axisHoverFormat:Cfe,descriptionOnlyNumbers:tx,descriptionWithDates:Zq}});var hi=N((DDe,vL)=>{"use strict";var Jq=ma(),Vf=si(),cL=ui().dash,nx=bt().extendFlat,$q=_t().templatedArray,EDe=Yn().templateFormatStringDescription,Kq=ro().descriptionWithDates,Efe=It().ONEDAY,Mo=Ca(),Dfe=Mo.HOUR_PATTERN,Rfe=Mo.WEEKDAY_PATTERN,ax={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},Pfe=nx({},ax,{values:ax.values.slice().concat(["sync"])});function Qq(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var eL={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},rL={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},tL={valType:"data_array",editType:"ticks"},aL={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function nL(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=5),r}function iL(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var oL={valType:"color",dflt:Vf.defaultLine,editType:"ticks"},lL={valType:"color",dflt:Vf.lightLine,editType:"ticks"};function sL(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var uL=nx({},cL,{editType:"ticks"}),fL={valType:"boolean",editType:"ticks"};vL.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:Vf.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:Jq({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[Mo.idRegex.x.toString(),Mo.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[Mo.idRegex.x.toString(),Mo.idRegex.y.toString()],editType:"calc"},rangebreaks:$q("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[Rfe,Dfe,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:Efe},editType:"calc"}),tickmode:Pfe,nticks:Qq(),tick0:eL,dtick:rL,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:tL,ticktext:{valType:"data_array",editType:"ticks"},ticks:aL,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:nL(),tickwidth:iL(),tickcolor:oL,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:nx({},cL,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:Jq({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:Kq("tick label")},tickformatstops:$q("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:Kq("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:Vf.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:fL,gridcolor:lL,gridwidth:sL(),griddash:uL,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:Vf.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:Vf.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",Mo.idRegex.x.toString(),Mo.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",Mo.idRegex.x.toString(),Mo.idRegex.y.toString()],editType:"plot"},minor:{tickmode:ax,nticks:Qq("minor"),tick0:eL,dtick:rL,tickvals:tL,ticks:aL,ticklen:nL("minor"),tickwidth:iL("minor"),tickcolor:oL,gridcolor:lL,gridwidth:sL("minor"),griddash:uL,showgrid:fL,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var n1=N((RDe,pL)=>{"use strict";var Dt=hi(),hL=ma(),dL=bt().extendFlat,Ffe=$i().overrideAll;pL.exports=Ffe({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:Dt.linecolor,outlinewidth:Dt.linewidth,bordercolor:Dt.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:Dt.minor.tickmode,nticks:Dt.nticks,tick0:Dt.tick0,dtick:Dt.dtick,tickvals:Dt.tickvals,ticktext:Dt.ticktext,ticks:dL({},Dt.ticks,{dflt:""}),ticklabeloverflow:dL({},Dt.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:Dt.ticklen,tickwidth:Dt.tickwidth,tickcolor:Dt.tickcolor,ticklabelstep:Dt.ticklabelstep,showticklabels:Dt.showticklabels,labelalias:Dt.labelalias,tickfont:hL({}),tickangle:Dt.tickangle,tickformat:Dt.tickformat,tickformatstops:Dt.tickformatstops,tickprefix:Dt.tickprefix,showtickprefix:Dt.showtickprefix,ticksuffix:Dt.ticksuffix,showticksuffix:Dt.showticksuffix,separatethousands:Dt.separatethousands,exponentformat:Dt.exponentformat,minexponent:Dt.minexponent,showexponent:Dt.showexponent,title:{text:{valType:"string"},font:hL({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var ko=N((FDe,mL)=>{"use strict";var Nfe=n1(),zfe=kf().counter,Ife=qb(),yL=Ws().scales,PDe=Ife(yL);function i1(e){return"`"+e+"`"}mL.exports=function(r,t){r=r||"",t=t||{};var a=t.cLetter||"c",n="onlyIfNumerical"in t?t.onlyIfNumerical:!!r,i="noScale"in t?t.noScale:r==="marker.line",o="showScaleDflt"in t?t.showScaleDflt:a==="z",l=typeof t.colorscaleDflt=="string"?yL[t.colorscaleDflt]:null,s=t.editTypeOverride||"",u=r?r+".":"",f,c;"colorAttr"in t?(f=t.colorAttr,c=t.colorAttr):(f={z:"z",c:"color"}[a],c="in "+i1(u+f));var v=n?" Has an effect only if "+c+" is set to a numerical array.":"",d=a+"auto",p=a+"min",y=a+"max",m=a+"mid",x=i1(u+d),w=i1(u+p),_=i1(u+y),b=w+" and "+_,T={};T[p]=T[y]=void 0;var k={};k[d]=!1;var M={};return f==="color"&&(M.color={valType:"color",arrayOk:!0,editType:s||"style"},t.anim&&(M.color.anim=!0)),M[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:T},M[p]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:k},M[y]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:k},M[m]={valType:"number",dflt:null,editType:"calc",impliedEdits:T},M.colorscale={valType:"colorscale",editType:"calc",dflt:l,impliedEdits:{autocolorscale:!1}},M.autocolorscale={valType:"boolean",dflt:t.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},M.reversescale={valType:"boolean",dflt:!1,editType:"plot"},i||(M.showscale={valType:"boolean",dflt:o,editType:"calc"},M.colorbar=Nfe),t.noColorAxis||(M.coloraxis={valType:"subplotid",regex:zfe("coloraxis"),dflt:null,editType:"calc"}),M}});var ox=N((NDe,gL)=>{"use strict";var Ofe=bt().extendFlat,Bfe=ko(),ix=Ws().scales;gL.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:ix.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:ix.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:ix.RdBu,editType:"calc"}},coloraxis:Ofe({_isSubplotObj:!0,editType:"calc"},Bfe("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var lx=N((zDe,bL)=>{"use strict";var Hfe=Le();bL.exports=function(r){return Hfe.isPlainObject(r.colorbar)}});var fx=N(ux=>{"use strict";var sx=Rr(),xL=Le(),_L=It(),Ufe=_L.ONEDAY,Gfe=_L.ONEWEEK;ux.dtick=function(e,r){var t=r==="log",a=r==="date",n=r==="category",i=a?Ufe:1;if(!e)return i;if(sx(e))return e=Number(e),e<=0?i:n?Math.max(1,Math.round(e)):a?Math.max(.1,e):e;if(typeof e!="string"||!(a||t))return i;var o=e.charAt(0),l=e.slice(1);return l=sx(l)?Number(l):0,l<=0||!(a&&o==="M"&&l===Math.round(l)||t&&o==="L"||t&&o==="D"&&(l===1||l===2))?i:e};ux.tick0=function(e,r,t,a){if(r==="date")return xL.cleanDate(e,xL.dateTick0(t,a%Gfe===0?1:0));if(!(a==="D1"||a==="D2"))return sx(e)?Number(e):0}});var o1=N((ODe,TL)=>{"use strict";var wL=fx(),Vfe=Le().isArrayOrTypedArray,Yfe=Vn().isTypedArraySpec,Wfe=Vn().decodeTypedArraySpec;TL.exports=function(r,t,a,n,i){i||(i={});var o=i.isMinor,l=o?r.minor||{}:r,s=o?t.minor:t,u=o?"minor.":"";function f(w){var _=l[w];return Yfe(_)&&(_=Wfe(_)),_!==void 0?_:(s._template||{})[w]}var c=f("tick0"),v=f("dtick"),d=f("tickvals"),p=Vfe(d)?"array":v?"linear":"auto",y=a(u+"tickmode",p);if(y==="auto"||y==="sync")a(u+"nticks");else if(y==="linear"){var m=s.dtick=wL.dtick(v,n);s.tick0=wL.tick0(c,n,t.calendar,m)}else if(n!=="multicategory"){var x=a(u+"tickvals");x===void 0?s.tickmode="auto":o||a("ticktext")}}});var l1=N((BDe,ML)=>{"use strict";var cx=Le(),AL=hi();ML.exports=function(r,t,a,n){var i=n.isMinor,o=i?r.minor||{}:r,l=i?t.minor:t,s=i?AL.minor:AL,u=i?"minor.":"",f=cx.coerce2(o,l,s,"ticklen",i?(t.ticklen||5)*.6:void 0),c=cx.coerce2(o,l,s,"tickwidth",i?t.tickwidth||1:void 0),v=cx.coerce2(o,l,s,"tickcolor",(i?t.tickcolor:void 0)||l.color),d=a(u+"ticks",!i&&n.outerTicks||f||c||v?"outside":"");d||(delete l.ticklen,delete l.tickwidth,delete l.tickcolor)}});var vx=N((HDe,kL)=>{"use strict";kL.exports=function(r){var t=["showexponent","showtickprefix","showticksuffix"],a=t.filter(function(i){return r[i]!==void 0}),n=function(i){return r[i]===r[a[0]]};if(a.every(n)||a.length===1)return r[a[0]]}});var to=N((UDe,SL)=>{"use strict";var s1=Le(),jfe=_t();SL.exports=function(r,t,a){var n=a.name,i=a.inclusionAttr||"visible",o=t[n],l=s1.isArrayOrTypedArray(r[n])?r[n]:[],s=t[n]=[],u=jfe.arrayTemplater(t,n,i),f,c;for(f=0;f{"use strict";var hx=Le(),Zfe=Tr().contrast,qL=hi(),Xfe=vx(),Jfe=to();LL.exports=function(r,t,a,n,i){i||(i={});var o=a("labelalias");hx.isPlainObject(o)||delete t.labelalias;var l=Xfe(r),s=a("showticklabels");if(s){i.noTicklabelshift||a("ticklabelshift"),i.noTicklabelstandoff||a("ticklabelstandoff");var u=i.font||{},f=t.color,c=t.ticklabelposition||"",v=c.indexOf("inside")!==-1?Zfe(i.bgColor):f&&f!==qL.color.dflt?f:u.color;if(hx.coerceFont(a,"tickfont",u,{overrideDflt:{color:v}}),!i.noTicklabelstep&&n!=="multicategory"&&n!=="log"&&a("ticklabelstep"),!i.noAng){var d=a("tickangle");!i.noAutotickangles&&d==="auto"&&a("autotickangles")}if(n!=="category"){var p=a("tickformat");Jfe(r,t,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:$fe}),t.tickformatstops.length||delete t.tickformatstops,!i.noExp&&!p&&n!=="date"&&(a("showexponent",l),a("exponentformat"),a("minexponent"),a("separatethousands"))}!i.noMinorloglabels&&n==="log"&&a("minorloglabels")}};function $fe(e,r){function t(n,i){return hx.coerce(e,r,qL.tickformatstops,n,i)}var a=t("enabled");a&&(t("dtickrange"),t("value"))}});var f1=N((VDe,CL)=>{"use strict";var Kfe=vx();CL.exports=function(r,t,a,n,i){i||(i={});var o=i.tickSuffixDflt,l=Kfe(r),s=a("tickprefix");s&&a("showtickprefix",l);var u=a("ticksuffix",o);u&&a("showticksuffix",l)}});var dx=N((YDe,EL)=>{"use strict";var Xl=Le(),Qfe=_t(),ece=o1(),rce=l1(),tce=u1(),ace=f1(),nce=n1();EL.exports=function(r,t,a){var n=Qfe.newContainer(t,"colorbar"),i=r.colorbar||{};function o(P,R){return Xl.coerce(i,n,nce,P,R)}var l=a.margin||{t:0,b:0,l:0,r:0},s=a.width-l.l-l.r,u=a.height-l.t-l.b,f=o("orientation"),c=f==="v",v=o("thicknessmode");o("thickness",v==="fraction"?30/(c?s:u):30);var d=o("lenmode");o("len",d==="fraction"?1:c?u:s);var p=o("yref"),y=o("xref"),m=p==="paper",x=y==="paper",w,_,b,T="left";c?(b="middle",T=x?"left":"right",w=x?1.02:1,_=.5):(b=m?"bottom":"top",T="center",w=.5,_=m?1.02:1),Xl.coerce(i,n,{x:{valType:"number",min:x?-2:0,max:x?3:1,dflt:w}},"x"),Xl.coerce(i,n,{y:{valType:"number",min:m?-2:0,max:m?3:1,dflt:_}},"y"),o("xanchor",T),o("xpad"),o("yanchor",b),o("ypad"),Xl.noneOrAll(i,n,["x","y"]),o("outlinecolor"),o("outlinewidth"),o("bordercolor"),o("borderwidth"),o("bgcolor");var k=Xl.coerce(i,n,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:c?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");o("ticklabeloverflow",k.indexOf("inside")!==-1?"hide past domain":"hide past div"),ece(i,n,o,"linear");var M=a.font,q={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:M};k.indexOf("inside")!==-1&&(q.bgColor="black"),ace(i,n,o,"linear",q),tce(i,n,o,"linear",q),rce(i,n,o,"linear",q),o("title.text",a._dfltTitle.colorbar);var E=n.showticklabels?n.tickfont:M,D=Xl.extendFlat({},M,{family:E.family,size:Xl.bigFont(E.size)});Xl.coerceFont(o,"title.font",D),o("title.side",c?"top":"right")}});var fl=N((WDe,PL)=>{"use strict";var DL=Rr(),yx=Le(),ice=lx(),oce=dx(),RL=Ws().isValid,lce=br().traceIs;function px(e,r){var t=r.slice(0,r.length-1);return r?yx.nestedProperty(e,t).get()||{}:e}PL.exports=function e(r,t,a,n,i){var o=i.prefix,l=i.cLetter,s="_module"in t,u=px(r,o),f=px(t,o),c=px(t._template||{},o)||{},v=function(){return delete r.coloraxis,delete t.coloraxis,e(r,t,a,n,i)};if(s){var d=a._colorAxes||{},p=n(o+"coloraxis");if(p){var y=lce(t,"contour")&&yx.nestedProperty(t,"contours.coloring").get()||"heatmap",m=d[p];m?(m[2].push(v),m[0]!==y&&(m[0]=!1,yx.warn(["Ignoring coloraxis:",p,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[p]=[y,t,[v]];return}}var x=u[l+"min"],w=u[l+"max"],_=DL(x)&&DL(w)&&x{"use strict";var FL=Le(),sce=_t(),NL=ox(),uce=fl();zL.exports=function(r,t){function a(c,v){return FL.coerce(r,t,NL,c,v)}a("colorscale.sequential"),a("colorscale.sequentialminus"),a("colorscale.diverging");var n=t._colorAxes,i,o;function l(c,v){return FL.coerce(i,o,NL.coloraxis,c,v)}for(var s in n){var u=n[s];if(u[0])i=r[s]||{},o=sce.newContainer(t,s,"coloraxis"),o._name=s,uce(i,o,t,l,{prefix:"",cLetter:"c"});else{for(var f=0;f{"use strict";var fce=Le(),cce=jn().hasColorscale,vce=jn().extractOpts;OL.exports=function(r,t){function a(f,c){var v=f["_"+c];v!==void 0&&(f[c]=v)}function n(f,c){var v=c.container?fce.nestedProperty(f,c.container).get():f;if(v)if(v.coloraxis)v._colorAx=t[v.coloraxis];else{var d=vce(v),p=d.auto;(p||d.min===void 0)&&a(v,c.min),(p||d.max===void 0)&&a(v,c.max),d.autocolorscale&&a(v,"colorscale")}}for(var i=0;i{"use strict";var HL=Rr(),mx=Le(),hce=jn().extractOpts;UL.exports=function(r,t,a){var n=r._fullLayout,i=a.vals,o=a.containerStr,l=o?mx.nestedProperty(t,o).get():t,s=hce(l),u=s.auto!==!1,f=s.min,c=s.max,v=s.mid,d=function(){return mx.aggNums(Math.min,null,i)},p=function(){return mx.aggNums(Math.max,null,i)};if(f===void 0?f=d():u&&(l._colorAx&&HL(f)?f=Math.min(f,d()):f=d()),c===void 0?c=p():u&&(l._colorAx&&HL(c)?c=Math.max(c,p()):c=p()),u&&v!==void 0&&(c-v>v-f?f=v-(c-v):c-v=0?y=n.colorscale.sequential:y=n.colorscale.sequentialminus,s._sync("colorscale",y)}}});var So=N((JDe,GL)=>{"use strict";var c1=Ws(),Wf=jn();GL.exports={moduleType:"component",name:"colorscale",attributes:ko(),layoutAttributes:ox(),supplyLayoutDefaults:IL(),handleDefaults:fl(),crossTraceDefaults:BL(),calc:Yf(),scales:c1.scales,defaultScale:c1.defaultScale,getScale:c1.get,isValidScale:c1.isValid,hasColorscale:Wf.hasColorscale,extractOpts:Wf.extractOpts,extractScale:Wf.extractScale,flipScale:Wf.flipScale,makeColorScaleFunc:Wf.makeColorScaleFunc,makeColorScaleFuncFromTrace:Wf.makeColorScaleFuncFromTrace}});var Dn=N(($De,YL)=>{"use strict";var VL=Le(),dce=Vn().isTypedArraySpec;YL.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var r=e.marker;return VL.isPlainObject(r)&&(VL.isArrayOrTypedArray(r.size)||dce(r.size))}}});var jL=N((KDe,WL)=>{"use strict";var pce=Rr();WL.exports=function(r,t){t||(t=2);var a=r.marker,n=a.sizeref||1,i=a.sizemin||0,o=a.sizemode==="area"?function(l){return Math.sqrt(l/n)}:function(l){return l/n};return function(l){var s=o(l/t);return pce(s)&&s>0?Math.max(s,i):0}}});var qo=N(Za=>{"use strict";var v1=Le();Za.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};Za.isTraceInSubplots=function(e,r){if(e.type==="splom"){for(var t=e.xaxes||[],a=e.yaxes||[],n=0;n=0&&t.index{JL.exports=xce;var gx={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},bce=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function xce(e){var r=[];return e.replace(bce,function(t,a,n){var i=a.toLowerCase();for(n=wce(n),i=="m"&&n.length>2&&(r.push([a].concat(n.splice(0,2))),i="l",a=a=="m"?"l":"L");;){if(n.length==gx[i])return n.unshift(a),r.push(n);if(n.length{"use strict";var Tce=bx(),$e=function(e,r){return r?Math.round(e*(r=Math.pow(10,r)))/r:Math.round(e)},qr="M0,0Z",$L=Math.sqrt(2),Jl=Math.sqrt(3),xx=Math.PI,_x=Math.cos,wx=Math.sin;tC.exports={circle:{n:0,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n="M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z";return t?Cr(r,t,n):n}},square:{n:1,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")}},diamond:{n:2,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.3,2);return Cr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"Z")}},cross:{n:3,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.4,2),n=$e(e*1.2,2);return Cr(r,t,"M"+n+","+a+"H"+a+"V"+n+"H-"+a+"V"+a+"H-"+n+"V-"+a+"H-"+a+"V-"+n+"H"+a+"V-"+a+"H"+n+"Z")}},x:{n:4,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.8/$L,2),n="l"+a+","+a,i="l"+a+",-"+a,o="l-"+a+",-"+a,l="l-"+a+","+a;return Cr(r,t,"M0,"+a+n+i+o+i+o+l+o+l+n+l+n+"Z")}},"triangle-up":{n:5,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2/Jl,2),n=$e(e/2,2),i=$e(e,2);return Cr(r,t,"M-"+a+","+n+"H"+a+"L0,-"+i+"Z")}},"triangle-down":{n:6,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2/Jl,2),n=$e(e/2,2),i=$e(e,2);return Cr(r,t,"M-"+a+",-"+n+"H"+a+"L0,"+i+"Z")}},"triangle-left":{n:7,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2/Jl,2),n=$e(e/2,2),i=$e(e,2);return Cr(r,t,"M"+n+",-"+a+"V"+a+"L-"+i+",0Z")}},"triangle-right":{n:8,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2/Jl,2),n=$e(e/2,2),i=$e(e,2);return Cr(r,t,"M-"+n+",-"+a+"V"+a+"L"+i+",0Z")}},"triangle-ne":{n:9,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.6,2),n=$e(e*1.2,2);return Cr(r,t,"M-"+n+",-"+a+"H"+a+"V"+n+"Z")}},"triangle-se":{n:10,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.6,2),n=$e(e*1.2,2);return Cr(r,t,"M"+a+",-"+n+"V"+a+"H-"+n+"Z")}},"triangle-sw":{n:11,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.6,2),n=$e(e*1.2,2);return Cr(r,t,"M"+n+","+a+"H-"+a+"V-"+n+"Z")}},"triangle-nw":{n:12,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.6,2),n=$e(e*1.2,2);return Cr(r,t,"M-"+a+","+n+"V-"+a+"H"+n+"Z")}},pentagon:{n:13,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.951,2),n=$e(e*.588,2),i=$e(-e,2),o=$e(e*-.309,2),l=$e(e*.809,2);return Cr(r,t,"M"+a+","+o+"L"+n+","+l+"H-"+n+"L-"+a+","+o+"L0,"+i+"Z")}},hexagon:{n:14,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n=$e(e/2,2),i=$e(e*Jl/2,2);return Cr(r,t,"M"+i+",-"+n+"V"+n+"L0,"+a+"L-"+i+","+n+"V-"+n+"L0,-"+a+"Z")}},hexagon2:{n:15,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n=$e(e/2,2),i=$e(e*Jl/2,2);return Cr(r,t,"M-"+n+","+i+"H"+n+"L"+a+",0L"+n+",-"+i+"H-"+n+"L-"+a+",0Z")}},octagon:{n:16,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.924,2),n=$e(e*.383,2);return Cr(r,t,"M-"+n+",-"+a+"H"+n+"L"+a+",-"+n+"V"+n+"L"+n+","+a+"H-"+n+"L-"+a+","+n+"V-"+n+"Z")}},star:{n:17,f:function(e,r,t){if(Lr(r))return qr;var a=e*1.4,n=$e(a*.225,2),i=$e(a*.951,2),o=$e(a*.363,2),l=$e(a*.588,2),s=$e(-a,2),u=$e(a*-.309,2),f=$e(a*.118,2),c=$e(a*.809,2),v=$e(a*.382,2);return Cr(r,t,"M"+n+","+u+"H"+i+"L"+o+","+f+"L"+l+","+c+"L0,"+v+"L-"+l+","+c+"L-"+o+","+f+"L-"+i+","+u+"H-"+n+"L0,"+s+"Z")}},hexagram:{n:18,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.66,2),n=$e(e*.38,2),i=$e(e*.76,2);return Cr(r,t,"M-"+i+",0l-"+n+",-"+a+"h"+i+"l"+n+",-"+a+"l"+n+","+a+"h"+i+"l-"+n+","+a+"l"+n+","+a+"h-"+i+"l-"+n+","+a+"l-"+n+",-"+a+"h-"+i+"Z")}},"star-triangle-up":{n:19,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*Jl*.8,2),n=$e(e*.8,2),i=$e(e*1.6,2),o=$e(e*4,2),l="A "+o+","+o+" 0 0 1 ";return Cr(r,t,"M-"+a+","+n+l+a+","+n+l+"0,-"+i+l+"-"+a+","+n+"Z")}},"star-triangle-down":{n:20,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*Jl*.8,2),n=$e(e*.8,2),i=$e(e*1.6,2),o=$e(e*4,2),l="A "+o+","+o+" 0 0 1 ";return Cr(r,t,"M"+a+",-"+n+l+"-"+a+",-"+n+l+"0,"+i+l+a+",-"+n+"Z")}},"star-square":{n:21,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.1,2),n=$e(e*2,2),i="A "+n+","+n+" 0 0 1 ";return Cr(r,t,"M-"+a+",-"+a+i+"-"+a+","+a+i+a+","+a+i+a+",-"+a+i+"-"+a+",-"+a+"Z")}},"star-diamond":{n:22,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.4,2),n=$e(e*1.9,2),i="A "+n+","+n+" 0 0 1 ";return Cr(r,t,"M-"+a+",0"+i+"0,"+a+i+a+",0"+i+"0,-"+a+i+"-"+a+",0Z")}},"diamond-tall":{n:23,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*.7,2),n=$e(e*1.4,2);return Cr(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},"diamond-wide":{n:24,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.4,2),n=$e(e*.7,2);return Cr(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},hourglass:{n:25,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M"+a+","+a+"H-"+a+"L"+a+",-"+a+"H-"+a+"Z")},noDot:!0},bowtie:{n:26,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M"+a+","+a+"V-"+a+"L-"+a+","+a+"V-"+a+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n=$e(e/$L,2);return Cr(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.3,2);return Cr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM0,-"+a+"V"+a+"M-"+a+",0H"+a)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.3,2),n=$e(e*.65,2);return Cr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM-"+n+",-"+n+"L"+n+","+n+"M-"+n+","+n+"L"+n+",-"+n)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.4,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.2,2),n=$e(e*.85,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e/2,2),n=$e(e,2);return Cr(r,t,"M"+a+","+n+"V-"+n+"M"+(a-n)+",-"+n+"V"+n+"M"+n+","+a+"H-"+n+"M-"+n+","+(a-n)+"H"+n)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.2,2),n=$e(e*1.6,2),i=$e(e*.8,2);return Cr(r,t,"M-"+a+","+i+"L0,0M"+a+","+i+"L0,0M0,-"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.2,2),n=$e(e*1.6,2),i=$e(e*.8,2);return Cr(r,t,"M-"+a+",-"+i+"L0,0M"+a+",-"+i+"L0,0M0,"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.2,2),n=$e(e*1.6,2),i=$e(e*.8,2);return Cr(r,t,"M"+i+","+a+"L0,0M"+i+",-"+a+"L0,0M-"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.2,2),n=$e(e*1.6,2),i=$e(e*.8,2);return Cr(r,t,"M-"+i+","+a+"L0,0M-"+i+",-"+a+"L0,0M"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.4,2);return Cr(r,t,"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*1.4,2);return Cr(r,t,"M0,"+a+"V-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2);return Cr(r,t,"M"+a+","+a+"L-"+a+",-"+a)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n=$e(e*2,2);return Cr(r,t,"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n=$e(e*2,2);return Cr(r,t,"M0,0L-"+a+",-"+n+"H"+a+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2,2),n=$e(e,2);return Cr(r,t,"M0,0L"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2,2),n=$e(e,2);return Cr(r,t,"M0,0L-"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n=$e(e*2,2);return Cr(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e,2),n=$e(e*2,2);return Cr(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+",-"+n+"H"+a+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2,2),n=$e(e,2);return Cr(r,t,"M0,-"+n+"V"+n+"M0,0L"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,r,t){if(Lr(r))return qr;var a=$e(e*2,2),n=$e(e,2);return Cr(r,t,"M0,-"+n+"V"+n+"M0,0L-"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,r,t){if(Lr(r))return qr;var a=xx/2.5,n=2*e*_x(a),i=2*e*wx(a);return Cr(r,t,"M0,0L"+-n+","+i+"L"+n+","+i+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,r,t){if(Lr(r))return qr;var a=xx/4,n=2*e*_x(a),i=2*e*wx(a);return Cr(r,t,"M0,0L"+-n+","+i+"A "+2*e+","+2*e+" 0 0 1 "+n+","+i+"Z")},backoff:.4,noDot:!0}};function Lr(e){return e===null}var KL,QL,eC,rC;function Cr(e,r,t){if((!e||e%360===0)&&!r)return t;if(eC===e&&rC===r&&KL===t)return QL;eC=e,rC=r,KL=t;function a(m,x){var w=_x(m),_=wx(m),b=x[0],T=x[1]+(r||0);return[b*w-T*_,b*_+T*w]}for(var n=e/180*xx,i=0,o=0,l=Tce(t),s="",u=0;u{"use strict";var Ta=Sr(),pt=Le(),Ace=pt.numberFormat,uu=Rr(),qx=kn(),d1=br(),Ba=Tr(),Mce=So(),ph=pt.strTranslate,p1=Ea(),kce=sl(),Sce=ja(),qce=Sce.LINE_SPACING,hC=Tp().DESELECTDIM,Lce=Dn(),Cce=jL(),Ece=qo().appendArrayPointValue,ar=TC.exports={};ar.font=function(e,r){var t=r.variant,a=r.style,n=r.weight,i=r.color,o=r.size,l=r.family,s=r.shadow,u=r.lineposition,f=r.textcase;l&&e.style("font-family",l),o+1&&e.style("font-size",o+"px"),i&&e.call(Ba.fill,i),n&&e.style("font-weight",n),a&&e.style("font-style",a),t&&e.style("font-variant",t),f&&e.style("text-transform",Tx(Rce(f))),s&&e.style("text-shadow",s==="auto"?p1.makeTextShadow(Ba.contrast(i)):Tx(s)),u&&e.style("text-decoration-line",Tx(Pce(u)))};function Tx(e){return e==="none"?void 0:e}var Dce={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function Rce(e){return Dce[e]}function Pce(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}ar.setPosition=function(e,r,t){e.attr("x",r).attr("y",t)};ar.setSize=function(e,r,t){e.attr("width",r).attr("height",t)};ar.setRect=function(e,r,t,a,n){e.call(ar.setPosition,r,t).call(ar.setSize,a,n)};ar.translatePoint=function(e,r,t,a){var n=t.c2p(e.x),i=a.c2p(e.y);if(uu(n)&&uu(i)&&r.node())r.node().nodeName==="text"?r.attr("x",n).attr("y",i):r.attr("transform",ph(n,i));else return!1;return!0};ar.translatePoints=function(e,r,t){e.each(function(a){var n=Ta.select(this);ar.translatePoint(a,n,r,t)})};ar.hideOutsideRangePoint=function(e,r,t,a,n,i){r.attr("display",t.isPtWithinRange(e,n)&&a.isPtWithinRange(e,i)?null:"none")};ar.hideOutsideRangePoints=function(e,r){if(r._hasClipOnAxisFalse){var t=r.xaxis,a=r.yaxis;e.each(function(n){var i=n[0].trace,o=i.xcalendar,l=i.ycalendar,s=d1.traceIs(i,"bar-like")?".bartext":".point,.textpoint";e.selectAll(s).each(function(u){ar.hideOutsideRangePoint(u,Ta.select(this),t,a,o,l)})})}};ar.crispRound=function(e,r,t){return!r||!uu(r)?t||0:e._context.staticPlot?r:r<1?1:Math.round(r)};ar.singleLineStyle=function(e,r,t,a,n){r.style("fill","none");var i=(((e||[])[0]||{}).trace||{}).line||{},o=t||i.width||0,l=n||i.dash||"";Ba.stroke(r,a||i.color),ar.dashLine(r,l,o)};ar.lineGroupStyle=function(e,r,t,a){e.style("fill","none").each(function(n){var i=(((n||[])[0]||{}).trace||{}).line||{},o=r||i.width||0,l=a||i.dash||"";Ta.select(this).call(Ba.stroke,t||i.color).call(ar.dashLine,l,o)})};ar.dashLine=function(e,r,t){t=+t||0,r=ar.dashStyle(r,t),e.style({"stroke-dasharray":r,"stroke-width":t+"px"})};ar.dashStyle=function(e,r){r=+r||1;var t=Math.max(r,3);return e==="solid"?e="":e==="dot"?e=t+"px,"+t+"px":e==="dash"?e=3*t+"px,"+3*t+"px":e==="longdash"?e=5*t+"px,"+5*t+"px":e==="dashdot"?e=3*t+"px,"+t+"px,"+t+"px,"+t+"px":e==="longdashdot"&&(e=5*t+"px,"+2*t+"px,"+t+"px,"+2*t+"px"),e};function dC(e,r,t,a){var n=r.fillpattern,i=r.fillgradient,o=ar.getPatternAttr,l=n&&(o(n.shape,0,"")||o(n.path,0,""));if(l){var s=o(n.bgcolor,0,null),u=o(n.fgcolor,0,null),f=n.fgopacity,c=o(n.size,0,8),v=o(n.solidity,0,.3),d=r.uid;ar.pattern(e,"point",t,d,l,c,v,void 0,n.fillmode,s,u,f)}else if(i&&i.type!=="none"){var p=i.type,y="scatterfill-"+r.uid;if(a&&(y="legendfill-"+r.uid),!a&&(i.start!==void 0||i.stop!==void 0)){var m,x;p==="horizontal"?(m={x:i.start,y:0},x={x:i.stop,y:0}):p==="vertical"&&(m={x:0,y:i.start},x={x:0,y:i.stop}),m.x=r._xA.c2p(m.x===void 0?r._extremes.x.min[0].val:m.x,!0),m.y=r._yA.c2p(m.y===void 0?r._extremes.y.min[0].val:m.y,!0),x.x=r._xA.c2p(x.x===void 0?r._extremes.x.max[0].val:x.x,!0),x.y=r._yA.c2p(x.y===void 0?r._extremes.y.max[0].val:x.y,!0),e.call(mC,t,y,"linear",i.colorscale,"fill",m,x,!0,!1)}else p==="horizontal"&&(p=p+"reversed"),e.call(ar.gradient,t,y,p,i.colorscale,"fill")}else r.fillcolor&&e.call(Ba.fill,r.fillcolor)}ar.singleFillStyle=function(e,r){var t=Ta.select(e.node()),a=t.data(),n=((a[0]||[])[0]||{}).trace||{};dC(e,n,r,!1)};ar.fillGroupStyle=function(e,r,t){e.style("stroke-width",0).each(function(a){var n=Ta.select(this);a[0].trace&&dC(n,a[0].trace,r,t)})};var nC=aC();ar.symbolNames=[];ar.symbolFuncs=[];ar.symbolBackOffs=[];ar.symbolNeedLines={};ar.symbolNoDot={};ar.symbolNoFill={};ar.symbolList=[];Object.keys(nC).forEach(function(e){var r=nC[e],t=r.n;ar.symbolList.push(t,String(t),e,t+100,String(t+100),e+"-open"),ar.symbolNames[t]=e,ar.symbolFuncs[t]=r.f,ar.symbolBackOffs[t]=r.backoff||0,r.needLine&&(ar.symbolNeedLines[t]=!0),r.noDot?ar.symbolNoDot[t]=!0:ar.symbolList.push(t+200,String(t+200),e+"-dot",t+300,String(t+300),e+"-open-dot"),r.noFill&&(ar.symbolNoFill[t]=!0)});var Fce=ar.symbolNames.length,Nce="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";ar.symbolNumber=function(e){if(uu(e))e=+e;else if(typeof e=="string"){var r=0;e.indexOf("-open")>0&&(r=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(r+=200,e=e.replace("-dot","")),e=ar.symbolNames.indexOf(e),e>=0&&(e+=r)}return e%100>=Fce||e>=400?0:Math.floor(Math.max(e,0))};function pC(e,r,t,a){var n=e%100;return ar.symbolFuncs[n](r,t,a)+(e>=200?Nce:"")}var iC=Ace("~f"),yC={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};ar.gradient=function(e,r,t,a,n,i){var o=yC[a];return mC(e,r,t,o.type,n,i,o.start,o.stop,!1,o.reversed)};function mC(e,r,t,a,n,i,o,l,s,u){var f=n.length,c;a==="linear"?c={node:"linearGradient",attrs:{x1:o.x,y1:o.y,x2:l.x,y2:l.y,gradientUnits:s?"userSpaceOnUse":"objectBoundingBox"},reversed:u}:a==="radial"&&(c={node:"radialGradient",reversed:u});for(var v=new Array(f),d=0;d=0&&e.i===void 0&&(e.i=i.i),r.style("opacity",a.selectedOpacityFn?a.selectedOpacityFn(e):e.mo===void 0?o.opacity:e.mo),a.ms2mrc){var s;e.ms==="various"||o.size==="various"?s=3:s=a.ms2mrc(e.ms),e.mrc=s,a.selectedSizeFn&&(s=e.mrc=a.selectedSizeFn(e));var u=ar.symbolNumber(e.mx||o.symbol)||0;e.om=u%200>=100;var f=Ex(e,t),c=Cx(e,t);r.attr("d",pC(u,s,f,c))}var v=!1,d,p,y;if(e.so)y=l.outlierwidth,p=l.outliercolor,d=o.outliercolor;else{var m=(l||{}).width;y=(e.mlw+1||m+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?p=e.mlcc=a.lineScale(e.mlc):pt.isArrayOrTypedArray(l.color)?p=Ba.defaultLine:p=l.color,pt.isArrayOrTypedArray(o.color)&&(d=Ba.defaultLine,v=!0),"mc"in e?d=e.mcc=a.markerScale(e.mc):d=o.color||o.colors||"rgba(0,0,0,0)",a.selectedColorFn&&(d=a.selectedColorFn(e))}if(e.om)r.call(Ba.stroke,d).style({"stroke-width":(y||1)+"px",fill:"none"});else{r.style("stroke-width",(e.isBlank?0:y)+"px");var x=o.gradient,w=e.mgt;w?v=!0:w=x&&x.type,pt.isArrayOrTypedArray(w)&&(w=w[0],yC[w]||(w=0));var _=o.pattern,b=ar.getPatternAttr,T=_&&(b(_.shape,e.i,"")||b(_.path,e.i,""));if(w&&w!=="none"){var k=e.mgc;k?v=!0:k=x.color;var M=t.uid;v&&(M+="-"+e.i),ar.gradient(r,n,M,w,[[0,k],[1,d]],"fill")}else if(T){var q=!1,E=_.fgcolor;!E&&i&&i.color&&(E=i.color,q=!0);var D=b(E,e.i,i&&i.color||null),P=b(_.bgcolor,e.i,null),R=_.fgopacity,z=b(_.size,e.i,8),O=b(_.solidity,e.i,.3);q=q||e.mcc||pt.isArrayOrTypedArray(_.shape)||pt.isArrayOrTypedArray(_.path)||pt.isArrayOrTypedArray(_.bgcolor)||pt.isArrayOrTypedArray(_.fgcolor)||pt.isArrayOrTypedArray(_.size)||pt.isArrayOrTypedArray(_.solidity);var B=t.uid;q&&(B+="-"+e.i),ar.pattern(r,"point",n,B,T,z,O,e.mcc,_.fillmode,P,D,R)}else pt.isArrayOrTypedArray(d)?Ba.fill(r,d[e.i]):Ba.fill(r,d);y&&Ba.stroke(r,p)}};ar.makePointStyleFns=function(e){var r={},t=e.marker;return r.markerScale=ar.tryColorscale(t,""),r.lineScale=ar.tryColorscale(t,"line"),d1.traceIs(e,"symbols")&&(r.ms2mrc=Lce.isBubble(e)?Cce(e):function(){return(t.size||6)/2}),e.selectedpoints&&pt.extendFlat(r,ar.makeSelectedPointStyleFns(e)),r};ar.makeSelectedPointStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.marker||{},i=t.marker||{},o=a.marker||{},l=n.opacity,s=i.opacity,u=o.opacity,f=s!==void 0,c=u!==void 0;(pt.isArrayOrTypedArray(l)||f||c)&&(r.selectedOpacityFn=function(b){var T=b.mo===void 0?n.opacity:b.mo;return b.selected?f?s:T:c?u:hC*T});var v=n.color,d=i.color,p=o.color;(d||p)&&(r.selectedColorFn=function(b){var T=b.mcc||v;return b.selected?d||T:p||T});var y=n.size,m=i.size,x=o.size,w=m!==void 0,_=x!==void 0;return d1.traceIs(e,"symbols")&&(w||_)&&(r.selectedSizeFn=function(b){var T=b.mrc||y/2;return b.selected?w?m/2:T:_?x/2:T}),r};ar.makeSelectedTextStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.textfont||{},i=t.textfont||{},o=a.textfont||{},l=n.color,s=i.color,u=o.color;return r.selectedTextColorFn=function(f){var c=f.tc||l;return f.selected?s||c:u||(s?c:Ba.addOpacity(c,hC))},r};ar.selectedPointStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=ar.makeSelectedPointStyleFns(r),a=r.marker||{},n=[];t.selectedOpacityFn&&n.push(function(i,o){i.style("opacity",t.selectedOpacityFn(o))}),t.selectedColorFn&&n.push(function(i,o){Ba.fill(i,t.selectedColorFn(o))}),t.selectedSizeFn&&n.push(function(i,o){var l=o.mx||a.symbol||0,s=t.selectedSizeFn(o);i.attr("d",pC(ar.symbolNumber(l),s,Ex(o,r),Cx(o,r))),o.mrc2=s}),n.length&&e.each(function(i){for(var o=Ta.select(this),l=0;l0?t:0}ar.textPointStyle=function(e,r,t){if(e.size()){var a;if(r.selectedpoints){var n=ar.makeSelectedTextStyleFns(r);a=n.selectedTextColorFn}var i=r.texttemplate,o=t._fullLayout;e.each(function(l){var s=Ta.select(this),u=i?pt.extractOption(l,r,"txt","texttemplate"):pt.extractOption(l,r,"tx","text");if(!u&&u!==0){s.remove();return}if(i){var f=r._module.formatLabels,c=f?f(l,r,o):{},v={};Ece(v,r,l.i),u=pt.texttemplateString({data:[v,l,r._meta],fallback:r.texttemplatefallback,labels:c,locale:o._d3locale,template:u})}var d=l.tp||r.textposition,p=bC(l,r),y=a?a(l):l.tc||r.textfont.color;s.call(ar.font,{family:l.tf||r.textfont.family,weight:l.tw||r.textfont.weight,style:l.ty||r.textfont.style,variant:l.tv||r.textfont.variant,textcase:l.tC||r.textfont.textcase,lineposition:l.tE||r.textfont.lineposition,shadow:l.tS||r.textfont.shadow,size:p,color:y}).text(u).call(p1.convertToTspans,t).call(gC,d,p,l.mrc)})}};ar.selectedTextStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=ar.makeSelectedTextStyleFns(r);e.each(function(a){var n=Ta.select(this),i=t.selectedTextColorFn(a),o=a.tp||r.textposition,l=bC(a,r);Ba.fill(n,i);var s=d1.traceIs(r,"bar-like");gC(n,o,l,a.mrc2||a.mrc,s)})}};var oC=.5;ar.smoothopen=function(e,r){if(e.length<3)return"M"+e.join("L");var t="M"+e[0],a=[],n;for(n=1;n=s||b>=f&&b<=s)&&(T<=c&&T>=u||T>=c&&T<=u)&&(e=[b,T])}return e}ar.applyBackoff=wC;ar.makeTester=function(){var e=pt.ensureSingleById(Ta.select("body"),"svg","js-plotly-tester",function(t){t.attr(kce.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),r=pt.ensureSingle(e,"path","js-reference-point",function(t){t.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});ar.tester=e,ar.testref=r};ar.savedBBoxes={};var Mx=0,Oce=1e4;ar.bBox=function(e,r,t){t||(t=lC(e));var a;if(t){if(a=ar.savedBBoxes[t],a)return pt.extendFlat({},a)}else if(e.childNodes.length===1){var n=e.childNodes[0];if(t=lC(n),t){var i=+n.getAttribute("x")||0,o=+n.getAttribute("y")||0,l=n.getAttribute("transform");if(!l){var s=ar.bBox(n,!1,t);return i&&(s.left+=i,s.right+=i),o&&(s.top+=o,s.bottom+=o),s}if(t+="~"+i+"~"+o+"~"+l,a=ar.savedBBoxes[t],a)return pt.extendFlat({},a)}}var u,f;r?u=e:(f=ar.tester.node(),u=e.cloneNode(!0),f.appendChild(u)),Ta.select(u).attr("transform",null).call(p1.positionText,0,0);var c=u.getBoundingClientRect(),v=ar.testref.node().getBoundingClientRect();r||f.removeChild(u);var d={height:c.height,width:c.width,left:c.left-v.left,top:c.top-v.top,right:c.right-v.left,bottom:c.bottom-v.top};return Mx>=Oce&&(ar.savedBBoxes={},Mx=0),t&&(ar.savedBBoxes[t]=d),Mx++,pt.extendFlat({},d)};function lC(e){var r=e.getAttribute("data-unformatted");if(r!==null)return r+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}ar.setClipUrl=function(e,r,t){e.attr("clip-path",Lx(r,t))};function Lx(e,r){if(!e)return null;var t=r._context,a=t._exportedPlot?"":t._baseUrl||"";return a?"url('"+a+"#"+e+"')":"url(#"+e+")"}ar.getTranslate=function(e){var r=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,o,l){return[o,l].join(" ")}).split(" ");return{x:+n[0]||0,y:+n[1]||0}};ar.setTranslate=function(e,r,t){var a=/(\btranslate\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",o=e[n]("transform")||"";return r=r||0,t=t||0,o=o.replace(a,"").trim(),o+=ph(r,t),o=o.trim(),e[i]("transform",o),o};ar.getScale=function(e){var r=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,o,l){return[o,l].join(" ")}).split(" ");return{x:+n[0]||1,y:+n[1]||1}};ar.setScale=function(e,r,t){var a=/(\bscale\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",o=e[n]("transform")||"";return r=r||1,t=t||1,o=o.replace(a,"").trim(),o+="scale("+r+","+t+")",o=o.trim(),e[i]("transform",o),o};var Bce=/\s*sc.*/;ar.setPointGroupScale=function(e,r,t){if(r=r||1,t=t||1,!!e){var a=r===1&&t===1?"":"scale("+r+","+t+")";e.each(function(){var n=(this.getAttribute("transform")||"").replace(Bce,"");n+=a,n=n.trim(),this.setAttribute("transform",n)})}};var Hce=/translate\([^)]*\)\s*$/;ar.setTextPointsScale=function(e,r,t){e&&e.each(function(){var a,n=Ta.select(this),i=n.select("text");if(i.node()){var o=parseFloat(i.attr("x")||0),l=parseFloat(i.attr("y")||0),s=(n.attr("transform")||"").match(Hce);r===1&&t===1?a=[]:a=[ph(o,l),"scale("+r+","+t+")",ph(-o,-l)],s&&a.push(s),n.attr("transform",a.join(""))}})};function Cx(e,r){var t;return e&&(t=e.mf),t===void 0&&(t=r.marker&&r.marker.standoff||0),!r._geo&&!r._xA?-t:t}ar.getMarkerStandoff=Cx;var dh=Math.atan2,ou=Math.cos,Zf=Math.sin;function sC(e,r){var t=r[0],a=r[1];return[t*ou(e)-a*Zf(e),t*Zf(e)+a*ou(e)]}var uC,fC,cC,vC,kx,Sx;function Ex(e,r){var t=e.ma;t===void 0&&(t=r.marker.angle,(!t||pt.isArrayOrTypedArray(t))&&(t=0));var a,n,i=r.marker.angleref;if(i==="previous"||i==="north"){if(r._geo){var o=r._geo.project(e.lonlat);a=o[0],n=o[1]}else{var l=r._xA,s=r._yA;if(l&&s)a=l.c2p(e.x),n=s.c2p(e.y);else return 90}if(r._geo){var u=e.lonlat[0],f=e.lonlat[1],c=r._geo.project([u,f+1e-5]),v=r._geo.project([u+1e-5,f]),d=dh(v[1]-n,v[0]-a),p=dh(c[1]-n,c[0]-a),y;if(i==="north")y=t/180*Math.PI;else if(i==="previous"){var m=u/180*Math.PI,x=f/180*Math.PI,w=uC/180*Math.PI,_=fC/180*Math.PI,b=w-m,T=ou(_)*Zf(b),k=Zf(_)*ou(x)-ou(_)*Zf(x)*ou(b);y=-dh(T,k)-Math.PI,uC=u,fC=f}var M=sC(d,[ou(y),0]),q=sC(p,[Zf(y),0]);t=dh(M[1]+q[1],M[0]+q[0])/Math.PI*180,i==="previous"&&!(Sx===r.uid&&e.i===kx+1)&&(t=null)}if(i==="previous"&&!r._geo)if(Sx===r.uid&&e.i===kx+1&&uu(a)&&uu(n)){var E=a-cC,D=n-vC,P=r.line&&r.line.shape||"",R=P.slice(P.length-1);R==="h"&&(D=0),R==="v"&&(E=0),t+=dh(D,E)/Math.PI*180+90}else t=null}return cC=a,vC=n,kx=e.i,Sx=r.uid,t}ar.getMarkerAngle=Ex});var $f=N((aRe,SC)=>{"use strict";var Xf=Sr(),Uce=Rr(),Gce=ta(),Dx=br(),fu=Le(),AC=fu.strTranslate,y1=Wr(),m1=Tr(),Jf=Ea(),MC=Tp(),Vce=ja().OPPOSITE_SIDE,kC=/ [XY][0-9]* /,Rx=1.6,Px=1.6;function Yce(e,r,t){var a=e._fullLayout,n=t.propContainer,i=t.propName,o=t.placeholder,l=t.traceIndex,s=t.avoid||{},u=t.attributes,f=t.transform,c=t.containerGroup,v=1,d=n.title,p=(d&&d.text?d.text:"").trim(),y=!1,m=d&&d.font?d.font:{},x=m.family,w=m.size,_=m.color,b=m.weight,T=m.style,k=m.variant,M=m.textcase,q=m.lineposition,E=m.shadow,D=t.subtitlePropName,P=!!D,R=t.subtitlePlaceholder,z=(n.title||{}).subtitle||{text:"",font:{}},O=(z.text||"").trim(),B=!1,Y=1,V=z.font,H=V.family,G=V.size,X=V.color,Z=V.weight,ee=V.style,fe=V.variant,ie=V.textcase,ue=V.lineposition,K=V.shadow,_e;i==="title.text"?_e="titleText":i.indexOf("axis")!==-1?_e="axisTitleText":i.indexOf("colorbar")!==-1&&(_e="colorbarTitleText");var le=e._context.edits[_e];function he(Ue,Be){return Ue===void 0||Be===void 0?!1:Ue.replace(kC," % ")===Be.replace(kC," % ")}p===""?v=0:he(p,o)&&(le||(p=""),v=.2,y=!0),P&&(O===""?Y=0:he(O,R)&&(le||(O=""),Y=.2,B=!0)),t._meta?p=fu.templateString(p,t._meta):a._meta&&(p=fu.templateString(p,a._meta));var oe=p||O||le,ce;c||(c=fu.ensureSingle(a._infolayer,"g","g-"+r),ce=a._hColorbarMoveTitle);var W=c.selectAll("text."+r).data(oe?[0]:[]);W.enter().append("text"),W.text(p).attr("class",r),W.exit().remove();var Q=null,j=r+"-subtitle",pe=O||le;if(P&&(Q=c.selectAll("text."+j).data(pe?[0]:[]),Q.enter().append("text"),Q.text(O).attr("class",j),Q.exit().remove()),!oe)return c;function me(Ue,Be){fu.syncOrAsync([ye,Pe],{title:Ue,subtitle:Be})}function ye(Ue){var Be=Ue.title,Ce=Ue.subtitle,Oe;!f&&ce&&(f={}),f?(Oe="",f.rotate&&(Oe+="rotate("+[f.rotate,u.x,u.y]+")"),(f.offset||ce)&&(Oe+=AC(0,(f.offset||0)-(ce||0)))):Oe=null,Be.attr("transform",Oe);function He(Te){if(Te){var qe=Xf.select(Te.node().parentNode).select("."+j);if(!qe.empty()){var Ge=Te.node().getBBox();if(Ge.height){var Je=Ge.y+Ge.height+Rx*G;qe.attr("y",Je)}}}}if(Be.style("opacity",v*m1.opacity(_)).call(y1.font,{color:m1.rgb(_),size:Xf.round(w,2),family:x,weight:b,style:T,variant:k,textcase:M,shadow:E,lineposition:q}).attr(u).call(Jf.convertToTspans,e,He),Ce&&!Ce.empty()){var se=c.select("."+r+"-math-group"),Ae=Be.node().getBBox(),Xe=se.node()?se.node().getBBox():void 0,hr=Xe?Xe.y+Xe.height+Rx*G:Ae.y+Ae.height+Px*G,Fe=fu.extendFlat({},u,{y:hr});Ce.attr("transform",Oe),Ce.style("opacity",Y*m1.opacity(X)).call(y1.font,{color:m1.rgb(X),size:Xf.round(G,2),family:H,weight:Z,style:ee,variant:fe,textcase:ie,shadow:K,lineposition:ue}).attr(Fe).call(Jf.convertToTspans,e)}return Gce.previousPromises(e)}function Pe(Ue){var Be=Ue.title,Ce=Xf.select(Be.node().parentNode);if(s&&s.selection&&s.side&&p){Ce.attr("transform",null);var Oe=Vce[s.side],He=s.side==="left"||s.side==="top"?-1:1,se=Uce(s.pad)?s.pad:2,Ae=y1.bBox(Ce.node()),Xe={t:0,b:0,l:0,r:0},hr=e._fullLayout._reservedMargin;for(var Fe in hr)for(var Te in hr[Fe]){var qe=hr[Fe][Te];Xe[Te]=Math.max(Xe[Te],qe)}var Ge={left:Xe.l,top:Xe.t,right:a.width-Xe.r,bottom:a.height-Xe.b},Je=s.maxShift||He*(Ge[s.side]-Ae[s.side]),Ve=0;if(Je<0)Ve=Je;else{var Ze=s.offsetLeft||0,or=s.offsetTop||0;Ae.left-=Ze,Ae.right-=Ze,Ae.top-=or,Ae.bottom-=or,s.selection.each(function(){var Ke=y1.bBox(this);fu.bBoxIntersect(Ae,Ke,se)&&(Ve=Math.max(Ve,He*(Ke[s.side]-Ae[Oe])+se))}),Ve=Math.min(Je,Ve),n._titleScoot=Math.abs(Ve)}if(Ve>0||Je<0){var rr={left:[-Ve,0],right:[Ve,0],top:[0,-Ve],bottom:[0,Ve]}[s.side];Ce.attr("transform",AC(rr[0],rr[1]))}}}W.call(me,Q);function Ne(Ue,Be){Ue.text(Be).on("mouseover.opacity",function(){Xf.select(this).transition().duration(MC.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){Xf.select(this).transition().duration(MC.HIDE_PLACEHOLDER).style("opacity",0)})}if(le&&(p?W.on(".opacity",null):(Ne(W,o),y=!0),W.call(Jf.makeEditable,{gd:e}).on("edit",function(Ue){l!==void 0?Dx.call("_guiRestyle",e,i,Ue,l):Dx.call("_guiRelayout",e,i,Ue)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(me)}).on("input",function(Ue){this.text(Ue||" ").call(Jf.positionText,u.x,u.y)}),P)){if(P&&!p){var Ee=W.node().getBBox(),Ie=Ee.y+Ee.height+Px*G;Q.attr("y",Ie)}O?Q.on(".opacity",null):(Ne(Q,R),B=!0),Q.call(Jf.makeEditable,{gd:e}).on("edit",function(Ue){Dx.call("_guiRelayout",e,"title.subtitle.text",Ue)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(me)}).on("input",function(Ue){this.text(Ue||" ").call(Jf.positionText,Q.attr("x"),Q.attr("y"))})}return W.classed("js-placeholder",y),Q&&!Q.empty()&&Q.classed("js-placeholder",B),c}SC.exports={draw:Yce,SUBTITLE_PADDING_EM:Px,SUBTITLE_PADDING_MATHJAX_EM:Rx}});var Kf=N((nRe,DC)=>{"use strict";var Wce=Sr(),jce=wf().utcFormat,wt=Le(),Zce=wt.numberFormat,Lo=Rr(),$l=wt.cleanNumber,Xce=wt.ms2DateTime,qC=wt.dateTime2ms,Co=wt.ensureNumber,LC=wt.isArrayOrTypedArray,Kl=It(),g1=Kl.FP_SAFE,ao=Kl.BADNUM,Jce=Kl.LOG_CLIP,$ce=Kl.ONEWEEK,b1=Kl.ONEDAY,x1=Kl.ONEHOUR,CC=Kl.ONEMIN,EC=Kl.ONESEC,_1=la(),A1=Ca(),w1=A1.HOUR_PATTERN,T1=A1.WEEKDAY_PATTERN;function yh(e){return Math.pow(10,e)}function Fx(e){return e!=null}DC.exports=function(r,t){t=t||{};var a=r._id||"x",n=a.charAt(0);function i(b,T){if(b>0)return Math.log(b)/Math.LN10;if(b<=0&&T&&r.range&&r.range.length===2){var k=r.range[0],M=r.range[1];return .5*(k+M-2*Jce*Math.abs(k-M))}else return ao}function o(b,T,k,M){if((M||{}).msUTC&&Lo(b))return+b;var q=qC(b,k||r.calendar);if(q===ao)if(Lo(b)){b=+b;var E=Math.floor(wt.mod(b+.05,1)*10),D=Math.round(b-E/10);q=qC(new Date(D))+E/10}else return ao;return q}function l(b,T,k){return Xce(b,T,k||r.calendar)}function s(b){return r._categories[Math.round(b)]}function u(b){if(Fx(b)){if(r._categoriesMap===void 0&&(r._categoriesMap={}),r._categoriesMap[b]!==void 0)return r._categoriesMap[b];r._categories.push(typeof b=="number"?String(b):b);var T=r._categories.length-1;return r._categoriesMap[b]=T,T}return ao}function f(b,T){for(var k=new Array(T),M=0;Mr.range[1]&&(k=!k);for(var M=k?-1:1,q=M*b,E=0,D=0;DR)E=D+1;else{E=q<(P+R)/2?D:D+1;break}}var z=r._B[E]||0;return isFinite(z)?p(b,r._m2,z):0},x=function(b){var T=r._rangebreaks.length;if(!T)return y(b,r._m,r._b);for(var k=0,M=0;Mr._rangebreaks[M].pmax&&(k=M+1);return y(b,r._m2,r._B[k])}}r.c2l=r.type==="log"?i:Co,r.l2c=r.type==="log"?yh:Co,r.l2p=m,r.p2l=x,r.c2p=r.type==="log"?function(b,T){return m(i(b,T))}:m,r.p2c=r.type==="log"?function(b){return yh(x(b))}:x,["linear","-"].indexOf(r.type)!==-1?(r.d2r=r.r2d=r.d2c=r.r2c=r.d2l=r.r2l=$l,r.c2d=r.c2r=r.l2d=r.l2r=Co,r.d2p=r.r2p=function(b){return r.l2p($l(b))},r.p2d=r.p2r=x,r.cleanPos=Co):r.type==="log"?(r.d2r=r.d2l=function(b,T){return i($l(b),T)},r.r2d=r.r2c=function(b){return yh($l(b))},r.d2c=r.r2l=$l,r.c2d=r.l2r=Co,r.c2r=i,r.l2d=yh,r.d2p=function(b,T){return r.l2p(r.d2r(b,T))},r.p2d=function(b){return yh(x(b))},r.r2p=function(b){return r.l2p($l(b))},r.p2r=x,r.cleanPos=Co):r.type==="date"?(r.d2r=r.r2d=wt.identity,r.d2c=r.r2c=r.d2l=r.r2l=o,r.c2d=r.c2r=r.l2d=r.l2r=l,r.d2p=r.r2p=function(b,T,k){return r.l2p(o(b,0,k))},r.p2d=r.p2r=function(b,T,k){return l(x(b),T,k)},r.cleanPos=function(b){return wt.cleanDate(b,ao,r.calendar)}):r.type==="category"?(r.d2c=r.d2l=u,r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=v,r.r2c=function(b){var T=d(b);return T!==void 0?T:r.fraction2r(.5)},r.l2r=r.c2r=Co,r.r2l=d,r.d2p=function(b){return r.l2p(r.r2c(b))},r.p2d=function(b){return s(x(b))},r.r2p=r.d2p,r.p2r=x,r.cleanPos=function(b){return typeof b=="string"&&b!==""?b:Co(b)}):r.type==="multicategory"&&(r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=v,r.r2c=function(b){var T=v(b);return T!==void 0?T:r.fraction2r(.5)},r.r2c_just_indices=c,r.l2r=r.c2r=Co,r.r2l=v,r.d2p=function(b){return r.l2p(r.r2c(b))},r.p2d=function(b){return s(x(b))},r.r2p=r.d2p,r.p2r=x,r.cleanPos=function(b){return Array.isArray(b)||typeof b=="string"&&b!==""?b:Co(b)},r.setupMultiCategory=function(b){var T=r._traceIndices,k,M,q=r._matchGroup;if(q&&r._categories.length===0){for(var E in q)if(E!==a){var D=t[_1.id2name(E)];T=T.concat(D._traceIndices)}}var P=[[0,{}],[0,{}]],R=[];for(k=0;kD[1]&&(M[E?0:1]=k),M[0]===M[1]){var P=r.l2r(T),R=r.l2r(k);if(T!==void 0){var z=P+1;k!==void 0&&(z=Math.min(z,R)),M[E?1:0]=z}if(k!==void 0){var O=R+1;T!==void 0&&(O=Math.max(O,P)),M[E?0:1]=O}}}},r.cleanRange=function(b,T){r._cleanRange(b,T),r.limitRange(b)},r._cleanRange=function(b,T){T||(T={}),b||(b="range");var k=wt.nestedProperty(r,b).get(),M,q;if(r.type==="date"?q=wt.dfltRange(r.calendar):n==="y"?q=A1.DFLTRANGEY:r._name==="realaxis"?q=[0,1]:q=T.dfltRange||A1.DFLTRANGEX,q=q.slice(),(r.rangemode==="tozero"||r.rangemode==="nonnegative")&&(q[0]=0),!k||k.length!==2){wt.nestedProperty(r,b).set(q);return}var E=k[0]===null,D=k[1]===null;for(r.type==="date"&&!r.autorange&&(k[0]=wt.cleanDate(k[0],ao,r.calendar),k[1]=wt.cleanDate(k[1],ao,r.calendar)),M=0;M<2;M++)if(r.type==="date"){if(!wt.isDateTime(k[M],r.calendar)){r[b]=q;break}if(r.r2l(k[0])===r.r2l(k[1])){var P=wt.constrain(r.r2l(k[0]),wt.MIN_MS+1e3,wt.MAX_MS-1e3);k[0]=r.l2r(P-1e3),k[1]=r.l2r(P+1e3);break}}else{if(!Lo(k[M]))if(!(E||D)&&Lo(k[1-M]))k[M]=k[1-M]*(M?10:.1);else{r[b]=q;break}if(k[M]<-g1?k[M]=-g1:k[M]>g1&&(k[M]=g1),k[0]===k[1]){var R=Math.max(1,Math.abs(k[0]*1e-6));k[0]-=R,k[1]+=R}}},r.setScale=function(b){var T=t._size;if(r.overlaying){var k=_1.getFromId({_fullLayout:t},r.overlaying);r.domain=k.domain}var M=b&&r._r?"_r":"range",q=r.calendar;r.cleanRange(M);var E=r.r2l(r[M][0],q),D=r.r2l(r[M][1],q),P=n==="y";if(P?(r._offset=T.t+(1-r.domain[1])*T.h,r._length=T.h*(r.domain[1]-r.domain[0]),r._m=r._length/(E-D),r._b=-r._m*D):(r._offset=T.l+r.domain[0]*T.w,r._length=T.w*(r.domain[1]-r.domain[0]),r._m=r._length/(D-E),r._b=-r._m*E),r._rangebreaks=[],r._lBreaks=0,r._m2=0,r._B=[],r.rangebreaks){var R,z;if(r._rangebreaks=r.locateBreaks(Math.min(E,D),Math.max(E,D)),r._rangebreaks.length){for(R=0;RD&&(O=!O),O&&r._rangebreaks.reverse();var B=O?-1:1;for(r._m2=B*r._length/(Math.abs(D-E)-r._lBreaks),r._B.push(-r._m2*(P?D:E)),R=0;Rq&&(q+=7,Eq&&(q+=24,E=M&&E=M&&b=K.min&&(eeK.max&&(K.max=fe),ie=!1)}ie&&D.push({min:ee,max:fe})}};for(k=0;k{"use strict";var RC=Rr(),Nx=Le(),Kce=It().BADNUM,M1=Nx.isArrayOrTypedArray,Qce=Nx.isDateTime,eve=Nx.cleanNumber,PC=Math.round;NC.exports=function(r,t,a){var n=r,i=a.noMultiCategory;if(M1(n)&&!n.length)return"-";if(!i&&ive(n))return"multicategory";if(i&&Array.isArray(n[0])){for(var o=[],l=0;li*2}function FC(e){return Math.max(1,(e-1)/1e3)}function nve(e,r){for(var t=e.length,a=FC(t),n=0,i=0,o={},l=0;ln*2}function ive(e){return M1(e[0])&&M1(e[1])}});var mh=N((oRe,VC)=>{"use strict";var ove=Sr(),BC=Rr(),Ql=Le(),S1=It().FP_SAFE,lve=br(),sve=Wr(),HC=la(),uve=HC.getFromId,fve=HC.isLinked;VC.exports={applyAutorangeOptions:GC,getAutoRange:zx,makePadFn:Ix,doAutoRange:vve,findExtremes:hve,concatExtremes:Hx};function zx(e,r){var t,a,n=[],i=e._fullLayout,o=Ix(i,r,0),l=Ix(i,r,1),s=Hx(e,r),u=s.min,f=s.max;if(u.length===0||f.length===0)return Ql.simpleMap(r.range,r.r2l);var c=u[0].val,v=f[0].val;for(t=1;t0&&(D=_-o(k)-l(M),D>b?P/D>T&&(q=k,E=M,T=P/D):P/_>T&&(q={val:k.val,nopad:1},E={val:M.val,nopad:1},T=P/_));function R(V,H){return Math.max(V,l(H))}if(c===v){var z=c-1,O=c+1;if(x)if(c===0)n=[0,1];else{var B=(c>0?f:u).reduce(R,0),Y=c/(1-Math.min(.5,B/_));n=c>0?[0,Y]:[Y,0]}else w?n=[Math.max(0,z),Math.max(1,O)]:n=[z,O]}else x?(q.val>=0&&(q={val:0,nopad:1}),E.val<=0&&(E={val:0,nopad:1})):w&&(q.val-T*o(q)<0&&(q={val:0,nopad:1}),E.val<=0&&(E={val:1,nopad:1})),T=(E.val-q.val-zC(r,k.val,M.val))/(_-o(q)-l(E)),n=[q.val-T*o(q),E.val+T*l(E)];return n=GC(n,r),r.limitRange&&r.limitRange(),p&&n.reverse(),Ql.simpleMap(n,r.l2r||Number)}function zC(e,r,t){var a=0;if(e.rangebreaks)for(var n=e.locateBreaks(r,t),i=0;i0?t.ppadplus:t.ppadminus)||t.ppad||0),k=b((e._m>0?t.ppadminus:t.ppadplus)||t.ppad||0),M=b(t.vpadplus||t.vpad),q=b(t.vpadminus||t.vpad);if(!u){if(w=1/0,_=-1/0,s)for(c=0;c0&&(w=v),v>_&&v-S1&&(w=v),v>_&&v=P;c--)D(c);return{min:a,max:n,opts:t}}function Ox(e,r,t,a){UC(e,r,t,a,dve)}function Bx(e,r,t,a){UC(e,r,t,a,pve)}function UC(e,r,t,a,n){for(var i=a.tozero,o=a.extrapad,l=!0,s=0;s=t&&(u.extrapad||!o)){l=!1;break}else n(r,u.val)&&u.pad<=t&&(o||!u.extrapad)&&(e.splice(s,1),s--)}if(l){var f=i&&r===0;e.push({val:r,pad:f?0:t,extrapad:f?!1:o})}}function OC(e){return BC(e)&&Math.abs(e)=r}function yve(e,r){var t=r.autorangeoptions;return t&&t.minallowed!==void 0&&q1(r,t.minallowed,t.maxallowed)?t.minallowed:t&&t.clipmin!==void 0&&q1(r,t.clipmin,t.clipmax)?Math.max(e,r.d2l(t.clipmin)):e}function mve(e,r){var t=r.autorangeoptions;return t&&t.maxallowed!==void 0&&q1(r,t.minallowed,t.maxallowed)?t.maxallowed:t&&t.clipmax!==void 0&&q1(r,t.clipmin,t.clipmax)?Math.min(e,r.d2l(t.clipmax)):e}function q1(e,r,t){return r!==void 0&&t!==void 0?(r=e.d2l(r),t=e.d2l(t),r=s&&(i=s,t=s),o<=s&&(o=s,a=s)}}return t=yve(t,r),a=mve(a,r),[t,a]}});var zr=N((lRe,hE)=>{"use strict";var di=Sr(),ua=Rr(),Qf=ta(),bh=br(),xr=Le(),ec=xr.strTranslate,cu=Ea(),gve=$f(),xh=Tr(),Zn=Wr(),bve=hi(),YC=fx(),Ha=It(),xve=Ha.ONEMAXYEAR,E1=Ha.ONEAVGYEAR,D1=Ha.ONEMINYEAR,_ve=Ha.ONEMAXQUARTER,Yx=Ha.ONEAVGQUARTER,R1=Ha.ONEMINQUARTER,wve=Ha.ONEMAXMONTH,rc=Ha.ONEAVGMONTH,P1=Ha.ONEMINMONTH,Xn=Ha.ONEWEEK,nn=Ha.ONEDAY,es=nn/2,Do=Ha.ONEHOUR,_h=Ha.ONEMIN,F1=Ha.ONESEC,Tve=Ha.ONEMILLI,Ave=Ha.ONEMICROSEC,vu=Ha.MINUS_SIGN,z1=Ha.BADNUM,Wx={K:"zeroline"},jx={K:"gridline",L:"path"},Zx={K:"minor-gridline",L:"path"},tE={K:"tick",L:"path"},WC={K:"tick",L:"text"},jC={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},I1=ja(),gh=I1.MID_SHIFT,hu=I1.CAP_SHIFT,wh=I1.LINE_SPACING,Mve=I1.OPPOSITE_SIDE,N1=3,We=hE.exports={};We.setConvert=Kf();var kve=k1(),cl=la(),Sve=cl.idSort,qve=cl.isLinked;We.id2name=cl.id2name;We.name2id=cl.name2id;We.cleanId=cl.cleanId;We.list=cl.list;We.listIds=cl.listIds;We.getFromId=cl.getFromId;We.getFromTrace=cl.getFromTrace;var aE=mh();We.getAutoRange=aE.getAutoRange;We.findExtremes=aE.findExtremes;var Lve=1e-4;function Kx(e){var r=(e[1]-e[0])*Lve;return[e[0]-r,e[1]+r]}We.coerceRef=function(e,r,t,a,n,i){var o=a.charAt(a.length-1),l=t._fullLayout._subplots[o+"axis"],s=a+"ref",u={};return n||(n=l[0]||(typeof i=="string"?i:i[0])),i||(i=n),l=l.concat(l.map(function(f){return f+" domain"})),u[s]={valType:"enumerated",values:l.concat(i?typeof i=="string"?[i]:i:[]),dflt:n},xr.coerce(e,r,u,s)};We.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};We.coercePosition=function(e,r,t,a,n,i){var o,l,s=We.getRefType(a);if(s!=="range")o=xr.ensureNumber,l=t(n,i);else{var u=We.getFromId(r,a);i=u.fraction2r(i),l=t(n,i),o=u.cleanPos}e[n]=o(l)};We.cleanPosition=function(e,r,t){var a=t==="paper"||t==="pixel"?xr.ensureNumber:We.getFromId(r,t).cleanPos;return a(e)};We.redrawComponents=function(e,r){r=r||We.listIds(e);var t=e._fullLayout;function a(n,i,o,l){for(var s=bh.getComponentMethod(n,i),u={},f=0;f2e-6||((t-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};We.saveRangeInitial=function(e,r){for(var t=We.list(e,"",!0),a=!1,n=0;nc*.3||u(a)||u(n))){var v=t.dtick/2;e+=e+vo){var l=Number(t.slice(1));i.exactYears>o&&l%12===0?e=We.tickIncrement(e,"M6","reverse")+nn*1.5:i.exactMonths>o?e=We.tickIncrement(e,"M1","reverse")+nn*15.5:e-=es;var s=We.tickIncrement(e,t);if(s<=a)return s}return e}We.prepMinorTicks=function(e,r,t){if(!r.minor.dtick){delete e.dtick;var a=r.dtick&&ua(r._tmin),n;if(a){var i=We.tickIncrement(r._tmin,r.dtick,!0);n=[r._tmin,i*.99+r._tmin*.01]}else{var o=xr.simpleMap(r.range,r.r2l);n=[o[0],.8*o[0]+.2*o[1]]}if(e.range=xr.simpleMap(n,r.l2r),e._isMinor=!0,We.prepTicks(e,t),a){var l=ua(r.dtick),s=ua(e.dtick),u=l?r.dtick:+r.dtick.substring(1),f=s?e.dtick:+e.dtick.substring(1);l&&s?Ux(u,f)?u===2*Xn&&f===2*nn&&(e.dtick=Xn):u===2*Xn&&f===3*nn?e.dtick=Xn:u===Xn&&!(r._input.minor||{}).nticks?e.dtick=nn:JC(u/f,2.5)?e.dtick=u/2:e.dtick=u:String(r.dtick).charAt(0)==="M"?s?e.dtick="M1":Ux(u,f)?u>=12&&f===2&&(e.dtick="M3"):e.dtick=r.dtick:String(e.dtick).charAt(0)==="L"?String(r.dtick).charAt(0)==="L"?Ux(u,f)||(e.dtick=JC(u/f,2.5)?r.dtick/2:r.dtick):e.dtick="D1":e.dtick==="D2"&&+r.dtick>1&&(e.dtick=1)}e.range=r.range}r.minor._tick0Init===void 0&&(e.tick0=r.tick0)};function Ux(e,r){return Math.abs((e/r+.5)%1-.5)<.001}function JC(e,r){return Math.abs(e/r-1)<.001}We.prepTicks=function(e,r){var t=xr.simpleMap(e.range,e.r2l,void 0,void 0,r);if(e.tickmode==="auto"||!e.dtick){var a=e.nticks,n;a||(e.type==="category"||e.type==="multicategory"?(n=e.tickfont?xr.bigFont(e.tickfont.size||12):15,a=e._length/n):(n=e._id.charAt(0)==="y"?40:80,a=xr.constrain(e._length/n,4,9)+1),e._name==="radialaxis"&&(a*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(a*=100),e._roughDTick=Math.abs(t[1]-t[0])/a,We.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(i=a-1,o=a):(i=a,o=a);var l=e[i].value,s=e[o].value,u=Math.abs(s-l),f=t||u,c=0;f>=D1?u>=D1&&u<=xve?c=u:c=E1:t===Yx&&f>=R1?u>=R1&&u<=_ve?c=u:c=Yx:f>=P1?u>=P1&&u<=wve?c=u:c=rc:t===Xn&&f>=Xn?c=Xn:f>=nn?c=nn:t===es&&f>=es?c=es:t===Do&&f>=Do&&(c=Do);var v;c>=u&&(c=u,v=!0);var d=n+c;if(r.rangebreaks&&c>0){for(var p=84,y=0,m=0;mXn&&(c=u)}(c>0||a===0)&&(e[a].periodX=n+c/2)}}We.calcTicks=function(r,t){for(var a=r.type,n=r.calendar,i=r.ticklabelstep,o=r.ticklabelmode==="period",l=r.range[0]>r.range[1],s=!r.ticklabelindex||xr.isArrayOrTypedArray(r.ticklabelindex)?r.ticklabelindex:[r.ticklabelindex],u=xr.simpleMap(r.range,r.r2l,void 0,void 0,t),f=u[1]=(_?0:1);b--){var T=!b;b?(r._dtickInit=r.dtick,r._tick0Init=r.tick0):(r.minor._dtickInit=r.minor.dtick,r.minor._tick0Init=r.minor.tick0);var k=b?r:xr.extendFlat({},r,r.minor);if(T?We.prepMinorTicks(k,r,t):We.prepTicks(k,t),k.tickmode==="array"){b?(m=[],p=$C(r,!T)):(x=[],y=$C(r,!T));continue}if(k.tickmode==="sync"){m=[],p=Fve(r);continue}var M=Kx(u),q=M[0],E=M[1],D=ua(k.dtick),P=a==="log"&&!(D||k.dtick.charAt(0)==="L"),R=We.tickFirst(k,t);if(b){if(r._tmin=R,R=E:O<=E;O=We.tickIncrement(O,V,f,n)){if(b&&B++,k.rangebreaks&&!f){if(O=v)break}if(m.length>d||O===z)break;z=O;var H={value:O};b?(P&&O!==(O|0)&&(H.simpleLabel=!0),i>1&&B%i&&(H.skipLabel=!0),m.push(H)):(H.minor=!0,x.push(H))}}if(!x||x.length<2)s=!1;else{var G=(x[1].value-x[0].value)*(l?-1:1);ohe(G,r.tickformat)||(s=!1)}if(!s)w=m;else{var X=m.concat(x);o&&m.length&&(X=X.slice(1)),X=X.sort(function(Ie,Ue){return Ie.value-Ue.value}).filter(function(Ie,Ue,Be){return Ue===0||Ie.value!==Be[Ue-1].value});var Z=X.map(function(Ie,Ue){return Ie.minor===void 0&&!Ie.skipLabel?Ue:null}).filter(function(Ie){return Ie!==null});Z.forEach(function(Ie){s.map(function(Ue){var Be=Ie+Ue;Be>=0&&Be-1;oe--){if(m[oe].drop){m.splice(oe,1);continue}m[oe].value=Vx(m[oe].value,r);var j=r.c2p(m[oe].value);(ce?Q>j-W:Qv||Cev&&(Be.periodX=v),Cen&&vE1)r/=E1,a=n(10),e.dtick="M"+12*Eo(r,a,L1);else if(i>rc)r/=rc,e.dtick="M"+Eo(r,1,KC);else if(i>nn){if(e.dtick=Eo(r,nn,e._hasDayOfWeekBreaks?[1,2,7,14]:Nve),!t){var o=We.getTickFormat(e),l=e.ticklabelmode==="period";l&&(e._rawTick0=e.tick0),/%[uVW]/.test(o)?e.tick0=xr.dateTick0(e.calendar,2):e.tick0=xr.dateTick0(e.calendar,1),l&&(e._dowTick0=e.tick0)}}else i>Do?e.dtick=Eo(r,Do,KC):i>_h?e.dtick=Eo(r,_h,QC):i>F1?e.dtick=Eo(r,F1,QC):(a=n(10),e.dtick=Eo(r,a,L1))}else if(e.type==="log"){e.tick0=0;var s=xr.simpleMap(e.range,e.r2l);if(e._isMinor&&(r*=1.5),r>.7)e.dtick=Math.ceil(r);else if(Math.abs(s[1]-s[0])<1){var u=1.5*Math.abs((s[1]-s[0])/r);r=Math.abs(Math.pow(10,s[1])-Math.pow(10,s[0]))/u,a=n(10),e.dtick="L"+Eo(r,a,L1)}else e.dtick=r>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(r,1))):t5(e)?(e.tick0=0,a=1,e.dtick=Eo(r,a,zve)):(e.tick0=0,a=n(10),e.dtick=Eo(r,a,L1));if(e.dtick===0&&(e.dtick=1),!ua(e.dtick)&&typeof e.dtick!="string"){var f=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(f)}};function lE(e){var r=e.dtick;if(e._tickexponent=0,!ua(r)&&typeof r!="string"&&(r=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var t=e.r2l(e.tick0),a=e.l2r(t).replace(/(^-|i)/g,""),n=a.length;if(String(r).charAt(0)==="M")n>10||a.slice(5)!=="01-01"?e._tickround="d":e._tickround=+r.slice(1)%12===0?"y":"m";else if(r>=nn&&n<=10||r>=nn*15)e._tickround="d";else if(r>=_h&&n<=16||r>=Do)e._tickround="M";else if(r>=F1&&n<=19||r>=_h)e._tickround="S";else{var i=e.l2r(t+r).replace(/^-/,"").length;e._tickround=Math.max(n,i)-20,e._tickround<0&&(e._tickround=4)}}else if(ua(r)||r.charAt(0)==="L"){var o=e.range.map(e.r2d||Number);ua(r)||(r=Number(r.slice(1))),e._tickround=2-Math.floor(Math.log(r)/Math.LN10+.01);var l=Math.max(Math.abs(o[0]),Math.abs(o[1])),s=Math.floor(Math.log(l)/Math.LN10+.01),u=e.minexponent===void 0?3:e.minexponent;Math.abs(s)>u&&(tc(e.exponentformat)&&e.exponentformat!=="SI extended"&&!Qx(s)||tc(e.exponentformat)&&e.exponentformat==="SI extended"&&!e5(s)?e._tickexponent=3*Math.round((s-1)/3):e._tickexponent=s)}else e._tickround=null}We.tickIncrement=function(e,r,t,a){var n=t?-1:1;if(ua(r))return xr.increment(e,n*r);var i=r.charAt(0),o=n*Number(r.slice(1));if(i==="M")return xr.incrementMonth(e,o,a);if(i==="L")return Math.log(Math.pow(10,e)+o)/Math.LN10;if(i==="D"){var l=r==="D2"?oE:iE,s=e+n*.01,u=xr.roundUp(xr.mod(s,1),l,t);return Math.floor(s)+Math.log(di.round(Math.pow(10,u),1))/Math.LN10}throw"unrecognized dtick "+String(r)};We.tickFirst=function(e,r){var t=e.r2l||Number,a=xr.simpleMap(e.range,t,void 0,void 0,r),n=a[1]=0&&x<=e._length?m:null};if(i&&xr.isArrayOrTypedArray(e.ticktext)){var c=xr.simpleMap(e.range,e.r2l),v=(Math.abs(c[1]-c[0])-(e._lBreaks||0))/1e4;for(u=0;u"+l;else{var u=Ah(e),f=e._trueSide||e.side;(!u&&f==="top"||u&&f==="bottom")&&(o+="
")}r.text=o}function Ove(e,r,t,a,n){var i=e.dtick,o=r.x,l=e.tickformat,s=typeof i=="string"&&i.charAt(0);if(n==="never"&&(n=""),a&&s!=="L"&&(i="L3",s="L"),l||s==="L")r.text=Th(Math.pow(10,o),e,n,a);else if(ua(i)||s==="D"&&(e.minorloglabels==="complete"||xr.mod(o+.01,1)<.1)){var u;e.minorloglabels==="complete"&&!(xr.mod(o+.01,1)<.1)&&(u=!0,r.fontSize*=.75);var f=Math.pow(10,o).toExponential(0),c=f.split("e"),v=+c[1],d=Math.abs(v),p=e.exponentformat;p==="power"||tc(p)&&p!=="SI extended"&&Qx(v)||tc(p)&&p==="SI extended"&&e5(v)?(r.text=c[0],d>0&&(r.text+="x10"),r.text==="1x10"&&(r.text="10"),v!==0&&v!==1&&(r.text+=""+(v>0?"":vu)+d+""),r.fontSize*=1.25):(p==="e"||p==="E")&&d>2?r.text=c[0]+p+(v>0?"+":vu)+d:(r.text=Th(Math.pow(10,o),e,"","fakehover"),i==="D1"&&e._id.charAt(0)==="y"&&(r.dy-=r.fontSize/6))}else if(s==="D")r.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,xr.mod(o,1)))),r.fontSize*=.75;else throw"unrecognized dtick "+String(i);if(e.dtick==="D1"){var y=String(r.text).charAt(0);(y==="0"||y==="1")&&(e._id.charAt(0)==="y"?r.dx-=r.fontSize/4:(r.dy+=r.fontSize/2,r.dx+=(e.range[1]>e.range[0]?1:-1)*r.fontSize*(o<0?.5:.25)))}}function Bve(e,r){var t=e._categories[Math.round(r.x)];t===void 0&&(t=""),r.text=String(t)}function Hve(e,r,t){var a=Math.round(r.x),n=e._categories[a]||[],i=n[1]===void 0?"":String(n[1]),o=n[0]===void 0?"":String(n[0]);t?r.text=o+" - "+i:(r.text=i,r.text2=o)}function Uve(e,r,t,a,n){n==="never"?n="":e.showexponent==="all"&&Math.abs(r.x/e.dtick)<1e-6&&(n="hide"),r.text=Th(r.x,e,n,a)}function Gve(e,r,t,a,n){if(e.thetaunit==="radians"&&!t){var i=r.x/180;if(i===0)r.text="0";else{var o=Vve(i);if(o[1]>=100)r.text=Th(xr.deg2rad(r.x),e,n,a);else{var l=r.x<0;o[1]===1?o[0]===1?r.text="\u03C0":r.text=o[0]+"\u03C0":r.text=["",o[0],"","\u2044","",o[1],"","\u03C0"].join(""),l&&(r.text=vu+r.text)}}}else r.text=Th(r.x,e,n,a)}function Vve(e){function r(l,s){return Math.abs(l-s)<=1e-6}function t(l,s){return r(s,0)?l:t(s,l%s)}function a(l){for(var s=1;!r(Math.round(l*s)/s,l);)s*=10;return s}var n=a(e),i=e*n,o=Math.abs(t(i,n));return[Math.round(i/o),Math.round(n/o)]}var uE=["f","p","n","\u03BC","m","","k","M","G","T"],Yve=["q","r","y","z","a",...uE,"P","E","Z","Y","R","Q"],tc=e=>["SI","SI extended","B"].includes(e);function Qx(e){return e>14||e<-15}function e5(e){return e>32||e<-30}function Wve(e,r){return tc(r)?!!(r==="SI extended"&&e5(e)||r!=="SI extended"&&Qx(e)):!1}function Th(e,r,t,a){var n=e<0,i=r._tickround,o=t||r.exponentformat||"B",l=r._tickexponent,s=We.getTickFormat(r),u=r.separatethousands;if(a){var f={exponentformat:o,minexponent:r.minexponent,dtick:r.showexponent==="none"?r.dtick:ua(e)&&Math.abs(e)||1,range:r.showexponent==="none"?r.range.map(r.r2d):[0,e||1]};lE(f),i=(Number(f._tickround)||0)+4,l=f._tickexponent,r.hoverformat&&(s=r.hoverformat)}if(s)return r._numFormat(s)(e).replace(/-/g,vu);var c=Math.pow(10,-i)/2;if(o==="none"&&(l=0),e=Math.abs(e),e"+p+"
":o==="B"&&l===9?e+="B":tc(o)&&(e+=o==="SI extended"?Yve[l/3+10]:uE[l/3+5])}return n?vu+e:e}We.getTickFormat=function(e){var r;function t(s){return typeof s!="string"?s:Number(s.replace("M",""))*rc}function a(s,u){var f=["L","D"];if(typeof s==typeof u){if(typeof s=="number")return s-u;var c=f.indexOf(s.charAt(0)),v=f.indexOf(u.charAt(0));return c===v?Number(s.replace(/(L|D)/g,""))-Number(u.replace(/(L|D)/g,"")):c-v}else return typeof s=="number"?1:-1}function n(s,u,f){var c=f||function(p){return p},v=u[0],d=u[1];return(!v&&typeof v!="number"||c(v)<=c(s))&&(!d&&typeof d!="number"||c(d)>=c(s))}function i(s,u){var f=u[0]===null,c=u[1]===null,v=a(s,u[0])>=0,d=a(s,u[1])<=0;return(f||v)&&(c||d)}var o,l;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(r=0;r=0&&n.unshift(n.splice(f,1).shift())}});var l={false:{left:0,right:0}};return xr.syncOrAsync(n.map(function(s){return function(){if(s){var u=We.getFromId(e,s);t||(t={}),t.axShifts=l,t.overlayingShiftedAx=o;var f=We.drawOne(e,u,t);return u._shiftPusher&&$x(u,u._fullDepth||0,l,!0),u._r=u.range.slice(),u._rl=xr.simpleMap(u._r,u.r2l),f}}}))};We.drawOne=function(e,r,t){t=t||{};var a=t.axShifts||{},n=t.overlayingShiftedAx||[],i,o,l;r.setScale();var s=e._fullLayout,u=r._id,f=u.charAt(0),c=We.counterLetter(u),v=s._plots[r._mainSubplot],d=r.zerolinelayer==="above traces";if(!v)return;if(r._shiftPusher=r.autoshift||n.indexOf(r._id)!==-1||n.indexOf(r.overlaying)!==-1,r._shiftPusher&r.anchor==="free"){var p=r.linewidth/2||0;r.ticks==="inside"&&(p+=r.ticklen),$x(r,p,a,!0),$x(r,r.shift||0,a,!1)}(t.skipTitle!==!0||r._shift===void 0)&&(r._shift=ihe(r,a));var y=v[f+"axislayer"],m=r._mainLinePosition,x=m+=r._shift,w=r._mainMirrorPosition,_=r._vals=We.calcTicks(r),b=[r.mirror,x,w].join("_");for(i=0;i<_.length;i++)_[i].axInfo=b;r._selections={},r._tickAngles&&(r._prevTickAngles=r._tickAngles),r._tickAngles={},r._depth=null;var T={};function k(Ee){var Ie=u+(Ee||"tick");return T[Ie]||(T[Ie]=Jve(r,Ie,x)),T[Ie]}if(r.visible){var M=We.makeTransTickFn(r),q=We.makeTransTickLabelFn(r),E,D,P=r.ticks==="inside",R=r.ticks==="outside";if(r.tickson==="boundaries"){var z=jve(r,_);D=We.clipEnds(r,z),E=P?D:z}else D=We.clipEnds(r,_),E=P&&r.ticklabelmode!=="period"?D:_;var O=r._gridVals=D,B=Xve(r,_);if(!s._hasOnlyLargeSploms){var Y=r._subplotsWith,V={};for(i=0;i0?Ce.bottom-Ue:0,Be))));var Ae=0,Xe=0;if(r._shiftPusher&&(Ae=Math.max(Be,Ce.height>0?Ee==="l"?Ue-Ce.left:Ce.right-Ue:0),r.title.text!==s._dfltTitle[f]&&(Xe=(r._titleStandoff||0)+(r._titleScoot||0),Ee==="l"&&(Xe+=rE(r))),r._fullDepth=Math.max(Ae,Xe)),r.automargin){Oe={x:0,y:0,r:0,l:0,t:0,b:0};var hr=[0,1],Fe=typeof r._shift=="number"?r._shift:0;if(f==="x"){if(Ee==="b"?Oe[Ee]=r._depth:(Oe[Ee]=r._depth=Math.max(Ce.width>0?Ue-Ce.top:0,Be),hr.reverse()),Ce.width>0){var Te=Ce.right-(r._offset+r._length);Te>0&&(Oe.xr=1,Oe.r=Te);var qe=r._offset-Ce.left;qe>0&&(Oe.xl=0,Oe.l=qe)}}else if(Ee==="l"?(r._depth=Math.max(Ce.height>0?Ue-Ce.left:0,Be),Oe[Ee]=r._depth-Fe):(r._depth=Math.max(Ce.height>0?Ce.right-Ue:0,Be),Oe[Ee]=r._depth+Fe,hr.reverse()),Ce.height>0){var Ge=Ce.bottom-(r._offset+r._length);Ge>0&&(Oe.yb=0,Oe.b=Ge);var Je=r._offset-Ce.top;Je>0&&(Oe.yt=1,Oe.t=Je)}Oe[c]=r.anchor==="free"?r.position:r._anchorAxis.domain[hr[0]],r.title.text!==s._dfltTitle[f]&&(Oe[Ee]+=rE(r)+(r.title.standoff||0)),r.mirror&&r.anchor!=="free"&&(He={x:0,y:0,r:0,l:0,t:0,b:0},He[Ie]=r.linewidth,r.mirror&&r.mirror!==!0&&(He[Ie]+=Be),r.mirror===!0||r.mirror==="ticks"?He[c]=r._anchorAxis.domain[hr[1]]:(r.mirror==="all"||r.mirror==="allticks")&&(He[c]=[r._counterDomainMin,r._counterDomainMax][hr[1]]))}Ne&&(se=bh.getComponentMethod("rangeslider","autoMarginOpts")(e,r)),typeof r.automargin=="string"&&(eE(Oe,r.automargin),eE(He,r.automargin)),Qf.autoMargin(e,r5(r),Oe),Qf.autoMargin(e,cE(r),He),Qf.autoMargin(e,vE(r),se)}),xr.syncOrAsync(ye)}};function eE(e,r){if(e){var t=Object.keys(jC).reduce(function(a,n){return r.indexOf(n)!==-1&&jC[n].forEach(function(i){a[i]=1}),a},{});Object.keys(e).forEach(function(a){t[a]||(a.length===1?e[a]=0:delete e[a])})}}function jve(e,r){var t=[],a,n=function(i,o){var l=i.xbnd[o];l!==null&&t.push(xr.extendFlat({},i,{x:l}))};if(r.length){for(a=0;ae.range[1],l=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,s=!l;if(t){var u=o?-1:1;t=t*u}if(a){var f=e.side,c=l&&(f==="top"||f==="left")||s&&(f==="bottom"||f==="right")?1:-1;a=a*c}return e._id.charAt(0)==="x"?function(v){return ec(n+e._offset+e.l2p(Xx(v))+t,i+a)}:function(v){return ec(i+a,n+e._offset+e.l2p(Xx(v))+t)}};function Xx(e){return e.periodX!==void 0?e.periodX:e.x}function $ve(e){var r=e.ticklabelposition||"",t=e.tickson||"",a=function(p){return r.indexOf(p)!==-1},n=a("top"),i=a("left"),o=a("right"),l=a("bottom"),s=a("inside"),u=t!=="boundaries"&&(l||i||n||o);if(!u&&!s)return[0,0];var f=e.side,c=u?(e.tickwidth||0)/2:0,v=N1,d=e.tickfont?e.tickfont.size:12;return(l||n)&&(c+=d*hu,v+=(e.linewidth||0)/2),(i||o)&&(c+=(e.linewidth||0)/2,v+=N1),s&&f==="top"&&(v-=d*(1-hu)),(i||n)&&(c=-c),(f==="bottom"||f==="right")&&(v=-v),[u?c:0,s?v:0]}We.makeTickPath=function(e,r,t,a){a||(a={});var n=a.minor;if(n&&!e.minor)return"";var i=a.len!==void 0?a.len:n?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),l=(e.linewidth||1)/2;return o==="x"?"M0,"+(r+l*t)+"v"+i*t:"M"+(r+l*t)+",0h"+i*t};We.makeLabelFns=function(e,r,t){var a=e.ticklabelposition||"",n=e.tickson||"",i=function(z){return a.indexOf(z)!==-1},o=i("top"),l=i("left"),s=i("right"),u=i("bottom"),f=n!=="boundaries"&&(u||l||o||s),c=i("inside"),v=a==="inside"&&e.ticks==="inside"||!c&&e.ticks==="outside"&&n!=="boundaries",d=0,p=0,y=v?e.ticklen:0;if(c?y*=-1:f&&(y=0),v&&(d+=y,t)){var m=xr.deg2rad(t);d=y*Math.cos(m)+1,p=y*Math.sin(m)}e.showticklabels&&(v||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(c?-1:1);var x={labelStandoff:d,labelShift:p},w,_,b,T,k=0,M=e.side,q=e._id.charAt(0),E=e.tickangle,D;if(q==="x")D=!c&&M==="bottom"||c&&M==="top",T=D?1:-1,c&&(T*=-1),w=p*T,_=r+d*T,b=D?1:-.2,Math.abs(E)===90&&(c?b+=gh:E===-90&&M==="bottom"?b=hu:E===90&&M==="top"?b=gh:b=.5,k=gh/2*(E/90)),x.xFn=function(z){return z.dx+w+k*z.fontSize},x.yFn=function(z){return z.dy+_+z.fontSize*b},x.anchorFn=function(z,O){if(f){if(l)return"end";if(s)return"start"}return!ua(O)||O===0||O===180?"middle":O*T<0!==c?"end":"start"},x.heightFn=function(z,O,B){return O<-60||O>60?-.5*B:e.side==="top"!==c?-B:0};else if(q==="y"){if(D=!c&&M==="left"||c&&M==="right",T=D?1:-1,c&&(T*=-1),w=d,_=p*T,b=0,!c&&Math.abs(E)===90&&(E===-90&&M==="left"||E===90&&M==="right"?b=hu:b=.5),c){var P=ua(E)?+E:0;if(P!==0){var R=xr.deg2rad(P);k=Math.abs(Math.sin(R))*hu*T,b=0}}x.xFn=function(z){return z.dx+r-(w+z.fontSize*b)*T+k*z.fontSize},x.yFn=function(z){return z.dy+_+z.fontSize*gh},x.anchorFn=function(z,O){return ua(O)&&Math.abs(O)===90?"middle":D?"end":"start"},x.heightFn=function(z,O,B){return e.side==="right"&&(O*=-1),O<-30?-B:O<30?-.5*B:0}}return x};function O1(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}We.drawTicks=function(e,r,t){t=t||{};var a=r._id+"tick",n=[].concat(r.minor&&r.minor.ticks?t.vals.filter(function(o){return o.minor&&!o.noTick}):[]).concat(r.ticks?t.vals.filter(function(o){return!o.minor&&!o.noTick}):[]),i=t.layer.selectAll("path."+a).data(n,O1);i.exit().remove(),i.enter().append("path").classed(a,1).classed("ticks",1).classed("crisp",t.crisp!==!1).each(function(o){return xh.stroke(di.select(this),o.minor?r.minor.tickcolor:r.tickcolor)}).style("stroke-width",function(o){return Zn.crispRound(e,o.minor?r.minor.tickwidth:r.tickwidth,1)+"px"}).attr("d",t.path).style("display",null),B1(r,[tE]),i.attr("transform",t.transFn)};We.drawGrid=function(e,r,t){if(t=t||{},r.tickmode!=="sync"){var a=r._id+"grid",n=r.minor&&r.minor.showgrid,i=n?t.vals.filter(function(x){return x.minor}):[],o=r.showgrid?t.vals.filter(function(x){return!x.minor}):[],l=t.counterAxis;if(l&&We.shouldShowZeroLine(e,r,l))for(var s=r.tickmode==="array",u=0;u=0;p--){var y=p?v:d;if(y){var m=y.selectAll("path."+a).data(p?o:i,O1);m.exit().remove(),m.enter().append("path").classed(a,1).classed("crisp",t.crisp!==!1),m.attr("transform",t.transFn).attr("d",t.path).each(function(x){return xh.stroke(di.select(this),x.minor?r.minor.gridcolor:r.gridcolor||"#ddd")}).style("stroke-dasharray",function(x){return Zn.dashStyle(x.minor?r.minor.griddash:r.griddash,x.minor?r.minor.gridwidth:r.gridwidth)}).style("stroke-width",function(x){return(x.minor?c:r._gw)+"px"}).style("display",null),typeof t.path=="function"&&m.attr("d",t.path)}}B1(r,[jx,Zx])}};We.drawZeroLine=function(e,r,t){t=t||t;var a=r._id+"zl",n=We.shouldShowZeroLine(e,r,t.counterAxis),i=t.layer.selectAll("path."+a).data(n?[{x:0,id:r._id}]:[]);i.exit().remove(),i.enter().append("path").classed(a,1).classed("zl",1).classed("crisp",t.crisp!==!1).each(function(){t.layer.selectAll("path").sort(function(o,l){return Sve(o.id,l.id)})}),i.attr("transform",t.transFn).attr("d",t.path).call(xh.stroke,r.zerolinecolor||xh.defaultLine).style("stroke-width",Zn.crispRound(e,r.zerolinewidth,r._gw||1)+"px").style("display",null),B1(r,[Wx])};We.drawLabels=function(e,r,t){t=t||{};var a=e._fullLayout,n=r._id,i=r.zerolinelayer==="above traces",o=t.cls||n+"tick",l=t.vals.filter(function(G){return G.text}),s=t.labelFns,u=t.secondary?0:r.tickangle,f=(r._prevTickAngles||{})[o],c=t.layer.selectAll("g."+o).data(r.showticklabels?l:[],O1),v=[];c.enter().append("g").classed(o,1).append("text").attr("text-anchor","middle").each(function(G){var X=di.select(this),Z=e._promises.length;X.call(cu.positionText,s.xFn(G),s.yFn(G)).call(Zn.font,{family:G.font,size:G.fontSize,color:G.fontColor,weight:G.fontWeight,style:G.fontStyle,variant:G.fontVariant,textcase:G.fontTextcase,lineposition:G.fontLineposition,shadow:G.fontShadow}).text(G.text).call(cu.convertToTspans,e),e._promises[Z]?v.push(e._promises.pop().then(function(){d(X,u)})):d(X,u)}),B1(r,[WC]),c.exit().remove(),t.repositionOnUpdate&&c.each(function(G){di.select(this).select("text").call(cu.positionText,s.xFn(G),s.yFn(G))});function d(G,X){G.each(function(Z){var ee=di.select(this),fe=ee.select(".text-math-group"),ie=s.anchorFn(Z,X),ue=t.transFn.call(ee.node(),Z)+(ua(X)&&+X!=0?" rotate("+X+","+s.xFn(Z)+","+(s.yFn(Z)-Z.fontSize/2)+")":""),K=cu.lineCount(ee),_e=wh*Z.fontSize,le=s.heightFn(Z,ua(X)?+X:0,(K-1)*_e);if(le&&(ue+=ec(0,le)),fe.empty()){var he=ee.select("text");he.attr({transform:ue,"text-anchor":ie}),he.style("display",null),r._adjustTickLabelsOverflow&&r._adjustTickLabelsOverflow()}else{var oe=Zn.bBox(fe.node()).width,ce=oe*{end:-.5,start:.5}[ie];fe.attr("transform",ue+ec(ce,0))}})}r._adjustTickLabelsOverflow=function(){var G=r.ticklabeloverflow;if(!(!G||G==="allow")){var X=G.indexOf("hide")!==-1,Z=r._id.charAt(0)==="x",ee=0,fe=Z?e._fullLayout.width:e._fullLayout.height;if(G.indexOf("domain")!==-1){var ie=xr.simpleMap(r.range,r.r2l);ee=r.l2p(ie[0])+r._offset,fe=r.l2p(ie[1])+r._offset}var ue=Math.min(ee,fe),K=Math.max(ee,fe),_e=r.side,le=1/0,he=-1/0;c.each(function(Q){var j=di.select(this),pe=j.select(".text-math-group");if(pe.empty()){var me=Zn.bBox(j.node()),ye=0;Z?(me.right>K||me.leftK||me.top+(r.tickangle?0:Q.fontSize/4)r["_visibleLabelMin_"+ie._id]?j.style("display","none"):K.K==="tick"&&!ue&&j.node().style.display!=="none"&&j.style("display",null)})})})})},d(c,f+1?f:u);function p(){return v.length&&Promise.all(v)}var y=null;function m(){if(d(c,u),l.length&&r.autotickangles&&(r.type!=="log"||String(r.dtick).charAt(0)!=="D")){y=r.autotickangles[0];var G=0,X=[],Z,ee=1;c.each(function(Oe){G=Math.max(G,Oe.fontSize);var He=r.l2p(Oe.x),se=Jx(this),Ae=Zn.bBox(se.node());ee=Math.max(ee,cu.lineCount(se)),X.push({top:0,bottom:10,height:10,left:He-Ae.width/2,right:He+Ae.width/2+2,width:Ae.width+2})});var fe=(r.tickson==="boundaries"||r.showdividers)&&!t.secondary,ie=l.length,ue=Math.abs((l[ie-1].x-l[0].x)*r._m)/(ie-1),K=fe?ue/2:ue,_e=fe?r.ticklen:G*1.25*ee,le=Math.sqrt(Math.pow(K,2)+Math.pow(_e,2)),he=K/le,oe=r.autotickangles.map(function(Oe){return Oe*Math.PI/180}),ce=oe.find(function(Oe){return Math.abs(Math.cos(Oe))<=he});ce===void 0&&(ce=oe.reduce(function(Oe,He){return Math.abs(Math.cos(Oe))Y*B&&(R=B,E[q]=D[q]=z[q])}var V=Math.abs(R-P);V-T>0?(V-=T,T*=1+T/V):T=0,r._id.charAt(0)!=="y"&&(T=-T),E[M]=_.p2r(_.r2p(D[M])+k*T),_.autorange==="min"||_.autorange==="max reversed"?(E[0]=null,_._rangeInitial0=void 0,_._rangeInitial1=void 0):(_.autorange==="max"||_.autorange==="min reversed")&&(E[1]=null,_._rangeInitial0=void 0,_._rangeInitial1=void 0),a._insideTickLabelsUpdaterange[_._name+".range"]=E}var H=xr.syncOrAsync(x);return H&&H.then&&e._promises.push(H),H};function Kve(e,r,t){var a=r._id+"divider",n=t.vals,i=t.layer.selectAll("path."+a).data(n,O1);i.exit().remove(),i.enter().insert("path",":first-child").classed(a,1).classed("crisp",1).call(xh.stroke,r.dividercolor).style("stroke-width",Zn.crispRound(e,r.dividerwidth,1)+"px"),i.attr("transform",t.transFn).attr("d",t.path)}We.getPxPosition=function(e,r){var t=e._fullLayout._size,a=r._id.charAt(0),n=r.side,i;if(r.anchor!=="free"?i=r._anchorAxis:a==="x"?i={_offset:t.t+(1-(r.position||0))*t.h,_length:0}:a==="y"&&(i={_offset:t.l+(r.position||0)*t.w+r._shift,_length:0}),n==="top"||n==="left")return i._offset;if(n==="bottom"||n==="right")return i._offset+i._length};function rE(e){var r=e.title.font.size,t=(e.title.text.match(cu.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?r*(hu+t*wh):t?r*(t+1)*wh:r}function Qve(e,r){var t=e._fullLayout,a=r._id,n=a.charAt(0),i=r.title.font.size,o,l=(r.title.text.match(cu.BR_TAG_ALL)||[]).length;if(r.title.hasOwnProperty("standoff"))r.side==="bottom"||r.side==="right"?o=r._depth+r.title.standoff+i*hu:(r.side==="top"||r.side==="left")&&(o=r._depth+r.title.standoff+i*(gh+l*wh));else{var s=Ah(r);if(r.type==="multicategory")o=r._depth;else{var u=1.5*i;s&&(u=.5*i,r.ticks==="outside"&&(u+=r.ticklen)),o=10+u+(r.linewidth?r.linewidth-1:0)}s||(n==="x"?o+=r.side==="top"?i*(r.showticklabels?1:0):i*(r.showticklabels?1.5:.5):o+=r.side==="right"?i*(r.showticklabels?1:.5):i*(r.showticklabels?.5:0))}var f=We.getPxPosition(e,r),c,v,d;n==="x"?(v=r._offset+r._length/2,d=r.side==="top"?f-o:f+o):(d=r._offset+r._length/2,v=r.side==="right"?f+o:f-o,c={rotate:"-90",offset:0});var p;if(r.type!=="multicategory"){var y=r._selections[r._id+"tick"];if(p={selection:y,side:r.side},y&&y.node()&&y.node().parentNode){var m=Zn.getTranslate(y.node().parentNode);p.offsetLeft=m.x,p.offsetTop=m.y}r.title.hasOwnProperty("standoff")&&(p.pad=0)}return r._titleStandoff=o,gve.draw(e,a+"title",{propContainer:r,propName:r._name+".title.text",placeholder:t._dfltTitle[n],avoid:p,transform:c,attributes:{x:v,y:d,"text-anchor":"middle"}})}We.shouldShowZeroLine=function(e,r,t){var a=xr.simpleMap(r.range,r.r2l);return a[0]*a[1]<=0&&r.zeroline&&(r.type==="linear"||r.type==="-")&&!(r.rangebreaks&&r.maskBreaks(0)===z1)&&(fE(r,0)||!ehe(e,r,t,a)||rhe(e,r))};We.clipEnds=function(e,r){return r.filter(function(t){return fE(e,t.x)})};function fE(e,r){var t=e.l2p(r);return t>1&&t1)for(n=1;n=n.min&&e=Ave:/%L/.test(r)?e>=Tve:/%[SX]/.test(r)?e>=F1:/%M/.test(r)?e>=_h:/%[HI]/.test(r)?e>=Do:/%p/.test(r)?e>=es:/%[Aadejuwx]/.test(r)?e>=nn:/%[UVW]/.test(r)?e>=Xn:/%[Bbm]/.test(r)?e>=P1:/%[q]/.test(r)?e>=R1:/%[Yy]/.test(r)?e>=D1:!0}});var pE=N((sRe,dE)=>{"use strict";dE.exports=function(r,t,a){var n,i;if(a){var o=t==="reversed"||t==="min reversed"||t==="max reversed";n=a[o?1:0],i=a[o?0:1]}var l=r("autorangeoptions.minallowed",i===null?n:void 0),s=r("autorangeoptions.maxallowed",n===null?i:void 0);l===void 0&&r("autorangeoptions.clipmin"),s===void 0&&r("autorangeoptions.clipmax"),r("autorangeoptions.include")}});var a5=N((uRe,yE)=>{"use strict";var lhe=pE();yE.exports=function(r,t,a,n){var i=t._template||{},o=t.type||i.type||"-";a("minallowed"),a("maxallowed");var l=a("range");if(!l){var s;!n.noInsiderange&&o!=="log"&&(s=a("insiderange"),s&&(s[0]===null||s[1]===null)&&(t.insiderange=!1,s=void 0),s&&(l=a("range",s)))}var u=t.getAutorangeDflt(l,n),f=a("autorange",u),c;l&&(l[0]===null&&l[1]===null||(l[0]===null||l[1]===null)&&(f==="reversed"||f===!0)||l[0]!==null&&(f==="min"||f==="max reversed")||l[1]!==null&&(f==="max"||f==="min reversed"))&&(l=void 0,delete t.range,t.autorange=!0,c=!0),c||(u=t.getAutorangeDflt(l,n),f=a("autorange",u)),f&&(lhe(a,f,l),(o==="linear"||o==="-")&&a("rangemode")),t.cleanRange()}});var gE=N((fRe,mE)=>{var she={left:0,top:0};mE.exports=uhe;function uhe(e,r,t){r=r||e.currentTarget||e.srcElement,Array.isArray(t)||(t=[0,0]);var a=e.clientX||0,n=e.clientY||0,i=fhe(r);return t[0]=a-i.left,t[1]=n-i.top,t}function fhe(e){return e===window||e===document||e===document.body?she:e.getBoundingClientRect()}});var n5=N((cRe,bE)=>{"use strict";var che=Ob();function vhe(){var e=!1;try{var r=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,r),window.removeEventListener("test",null,r)}catch(t){e=!1}return e}bE.exports=che&&vhe()});var _E=N((vRe,xE)=>{"use strict";xE.exports=function(r,t,a,n,i){var o=(r-a)/(n-a),l=o+t/(n-a),s=(o+l)/2;return i==="left"||i==="bottom"?o:i==="center"||i==="middle"?s:i==="right"||i==="top"?l:o<2/3-s?o:l>4/3-s?l:s}});var AE=N((hRe,TE)=>{"use strict";var wE=Le(),hhe=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];TE.exports=function(r,t,a,n){return a==="left"?r=0:a==="center"?r=1:a==="right"?r=2:r=wE.constrain(Math.floor(r*3),0,2),n==="bottom"?t=0:n==="middle"?t=1:n==="top"?t=2:t=wE.constrain(Math.floor(t*3),0,2),hhe[t][r]}});var kE=N((dRe,ME)=>{"use strict";var dhe=sh(),phe=Ip(),yhe=eh().getGraphDiv,mhe=Jv(),i5=ME.exports={};i5.wrapped=function(e,r,t){e=yhe(e),e._fullLayout&&phe.clear(e._fullLayout._uid+mhe.HOVERID),i5.raw(e,r,t)};i5.raw=function(r,t){var a=r._fullLayout,n=r._hoverdata;t||(t={}),!(t.target&&!r._dragged&&dhe.triggerHandler(r,"plotly_beforehover",t)===!1)&&(a._hoverlayer.selectAll("g").remove(),a._hoverlayer.selectAll("line").remove(),a._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,t.target&&n&&r.emit("plotly_unhover",{event:t,points:n}))}});var pi=N((pRe,CE)=>{"use strict";var ghe=gE(),o5=Hb(),bhe=n5(),xhe=Le().removeElement,_he=Ca(),du=CE.exports={};du.align=_E();du.getCursor=AE();var qE=kE();du.unhover=qE.wrapped;du.unhoverRaw=qE.raw;du.init=function(r){var t=r.gd,a=1,n=t._context.doubleClickDelay,i=r.element,o,l,s,u,f,c,v,d;t._mouseDownTime||(t._mouseDownTime=0),i.style.pointerEvents="all",i.onmousedown=m,bhe?(i._ontouchstart&&i.removeEventListener("touchstart",i._ontouchstart),i._ontouchstart=m,i.addEventListener("touchstart",m,{passive:!1})):i.ontouchstart=m;function p(_,b,T){return Math.abs(_)n&&(a=Math.max(a-1,1)),t._dragged)r.doneFn&&r.doneFn();else{var b;c.target===v?b=c:(b={target:v,srcElement:v,toElement:v},Object.keys(c).concat(Object.keys(c.__proto__)).forEach(T=>{var k=c[T];!b[T]&&typeof k!="function"&&(b[T]=k)})),r.clickFn&&r.clickFn(a,b),d||v.dispatchEvent(new MouseEvent("click",_))}t._dragging=!1,t._dragged=!1}};function LE(){var e=document.createElement("div");e.className="dragcover";var r=e.style;return r.position="fixed",r.left=0,r.right=0,r.top=0,r.bottom=0,r.zIndex=999999999,r.background="none",document.body.appendChild(e),e}du.coverSlip=LE;function SE(e){return ghe(e.changedTouches?e.changedTouches[0]:e,document.body)}});var rs=N((yRe,EE)=>{"use strict";EE.exports=function(r,t){(r.attr("class")||"").split(" ").forEach(function(a){a.indexOf("cursor-")===0&&r.classed(a,!1)}),t&&r.classed("cursor-"+t,!0)}});var PE=N((mRe,RE)=>{"use strict";var l5=rs(),Mh="data-savedcursor",DE="!!";RE.exports=function(r,t){var a=r.attr(Mh);if(t){if(!a){for(var n=(r.attr("class")||"").split(" "),i=0;i{"use strict";var s5=ma(),whe=si();FE.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:whe.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:s5({editType:"legend"}),grouptitlefont:s5({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:s5({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var U1=N(H1=>{"use strict";H1.isGrouped=function(r){return(r.traceorder||"").indexOf("grouped")!==-1};H1.isVertical=function(r){return r.orientation!=="h"};H1.isReversed=function(r){return(r.traceorder||"").indexOf("reversed")!==-1}});var c5=N((xRe,NE)=>{"use strict";var G1=br(),Jn=Le(),The=_t(),Ahe=gn(),Mhe=u5(),khe=Cf(),f5=U1();function She(e,r,t,a){var n=r[e]||{},i=The.newContainer(t,e);function o(H,G){return Jn.coerce(n,i,Mhe,H,G)}var l=Jn.coerceFont(o,"font",t.font);o("bgcolor",t.paper_bgcolor),o("bordercolor");var s=o("visible");if(!s)return;var u,f=function(H,G){var X=u._input,Z=u;return Jn.coerce(X,Z,Ahe,H,G)},c=t.font||{},v=Jn.coerceFont(o,"grouptitlefont",c,{overrideDflt:{size:Math.round(c.size*1.1)}}),d=0,p=!1,y="normal",m=(t.shapes||[]).filter(function(H){return H.showlegend});function x(H){return G1.traceIs(H,"pie-like")&&H._length!=null&&(Array.isArray(H.legend)||Array.isArray(H.showlegend))}a.filter(x).forEach(function(H){H.visible&&d++;for(var G=0;GH.legend.length)for(var Z=H.legend.length;Z(e==="legend"?1:0));if(T===!1&&(t[e]=void 0),!(T===!1&&!n.uirevision)&&(o("uirevision",t.uirevision),T!==!1)){o("borderwidth");var k=o("orientation"),M=o("yref"),q=o("xref"),E=k==="h",D=M==="paper",P=q==="paper",R,z,O,B="left";E?(R=0,G1.getComponentMethod("rangeslider","isVisible")(r.xaxis)?D?(z=1.1,O="bottom"):(z=1,O="top"):D?(z=-.1,O="top"):(z=0,O="bottom")):(z=1,O="auto",P?R=1.02:(R=1,B="right")),Jn.coerce(n,i,{x:{valType:"number",editType:"legend",min:P?-2:0,max:P?3:1,dflt:R}},"x"),Jn.coerce(n,i,{y:{valType:"number",editType:"legend",min:D?-2:0,max:D?3:1,dflt:z}},"y"),o("traceorder",y),f5.isGrouped(t[e])&&o("tracegroupgap"),o("entrywidth"),o("entrywidthmode"),o("indentation"),o("itemsizing"),o("itemwidth"),o("itemclick"),o("itemdoubleclick"),o("groupclick"),o("xanchor",B),o("yanchor",O),o("maxheight"),o("valign"),Jn.noneOrAll(n,i,["x","y"]);var Y=o("title.text");if(Y){o("title.side",E?"left":"top");var V=Jn.extendFlat({},l,{size:Jn.bigFont(l.size)});Jn.coerceFont(o,"title.font",V)}}}NE.exports=function(r,t,a){var n,i=a.slice(),o=t.shapes;if(o)for(n=0;n{"use strict";var ac=br(),h5=Le(),qhe=h5.pushUnique,v5=!0;zE.exports=function(r,t,a){var n=t._fullLayout;if(t._dragged||t._editing)return;var i=n.legend.itemclick,o=n.legend.itemdoubleclick,l=n.legend.groupclick;a===1&&i==="toggle"&&o==="toggleothers"&&v5&&t.data&&t._context.showTips&&h5.notifier(h5._(t,"Double-click on legend to isolate one trace"),"long"),v5=!1;var s;if(a===1?s=i:a===2&&(s=o),!s)return;var u=l==="togglegroup",f=n.hiddenlabels?n.hiddenlabels.slice():[],c=r.data()[0][0];if(c.groupTitle&&c.noClick)return;var v=t._fullData,d=(n.shapes||[]).filter(function(Ie){return Ie.showlegend}),p=v.concat(d),y=c.trace;y._isShape&&(y=y._fullInput);var m=y.legendgroup,x,w,_,b,T,k,M={},q=[],E=[],D=[];function P(Ie,Ue){var Be=q.indexOf(Ie),Ce=M.visible;return Ce||(Ce=M.visible=[]),q.indexOf(Ie)===-1&&(q.push(Ie),Be=q.length-1),Ce[Be]=Ue,Be}var R=(n.shapes||[]).map(function(Ie){return Ie._input}),z=!1;function O(Ie,Ue){R[Ie].visible=Ue,z=!0}function B(Ie,Ue){if(!(c.groupTitle&&!u)){var Be=Ie._fullInput||Ie,Ce=Be._isShape,Oe=Be.index;Oe===void 0&&(Oe=Be._index);var He=Be.visible===!1?!1:Ue;Ce?O(Oe,He):P(Oe,He)}}var Y=y.legend,V=y._fullInput,H=V&&V._isShape;if(!H&&ac.traceIs(y,"pie-like")){var G=c.label,X=f.indexOf(G);if(s==="toggle")X===-1?f.push(G):f.splice(X,1);else if(s==="toggleothers"){var Z=X!==-1,ee=[];for(x=0;x{"use strict";OE.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var UE=N((TRe,HE)=>{"use strict";var BE=br(),p5=U1();HE.exports=function(r,t,a){var n=t._inHover,i=p5.isGrouped(t),o=p5.isReversed(t),l={},s=[],u=!1,f={},c=0,v=0,d,p;function y(G,X,Z){if(t.visible!==!1&&!(a&&G!==t._id))if(X===""||!p5.isGrouped(t)){var ee="~~i"+c;s.push(ee),l[ee]=[Z],c++}else s.indexOf(X)===-1?(s.push(X),u=!0,l[X]=[Z]):l[X].push(Z)}for(d=0;dR&&(P=R)}E[d][0]._groupMinRank=P,E[d][0]._preGroupSort=d}var z=function(G,X){return G[0]._groupMinRank-X[0]._groupMinRank||G[0]._preGroupSort-X[0]._preGroupSort},O=function(G,X){return G.trace.legendrank-X.trace.legendrank||G._preSort-X._preSort};for(E.forEach(function(G,X){G[0]._preGroupSort=X}),E.sort(z),d=0;d{"use strict";var V1=Le();function GE(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}pu.formatPiePercent=function(r,t){var a=GE((r*100).toPrecision(3));return V1.numSeparate(a,t)+"%"};pu.formatPieValue=function(r,t){var a=GE(r.toPrecision(10));return V1.numSeparate(a,t)};pu.getFirstFilled=function(r,t){if(V1.isArrayOrTypedArray(r))for(var a=0;a{"use strict";var Lhe=Wr(),Che=Tr();VE.exports=function(r,t,a,n){var i=a.marker.pattern;i&&i.shape?Lhe.pointStyle(r,a,n,t):Che.fill(r,t.color)}});var W1=N((kRe,ZE)=>{"use strict";var WE=Tr(),jE=Y1().castOption,Ehe=YE();ZE.exports=function(r,t,a,n){var i=a.marker.line,o=jE(i.color,t.pts)||WE.defaultLine,l=jE(i.width,t.pts)||0;r.call(Ehe,t,a,n).style("stroke-width",l).call(WE.stroke,o)}});var b5=N((SRe,eD)=>{"use strict";var on=Sr(),y5=br(),Xa=Le(),XE=Xa.strTranslate,$n=Wr(),yi=Tr(),m5=jn().extractOpts,j1=Dn(),Dhe=W1(),Rhe=Y1().castOption,Phe=d5(),JE=12,$E=5,yu=2,Fhe=10,nc=5;eD.exports=function(r,t,a){var n=t._fullLayout;a||(a=n.legend);var i=a.itemsizing==="constant",o=a.itemwidth,l=(o+Phe.itemGap*2)/2,s=XE(l,0),u=function(M,q,E,D){var P;if(M+1)P=M;else if(q&&q.width>0)P=q.width;else return 0;return i?D:Math.min(P,E)};r.each(function(M){var q=on.select(this),E=Xa.ensureSingle(q,"g","layers");E.style("opacity",M[0].trace.opacity);var D=a.indentation,P=a.valign,R=M[0].lineHeight,z=M[0].height;if(P==="middle"&&D===0||!R||!z)E.attr("transform",null);else{var O={top:1,bottom:-1}[P],B=O*(.5*(R-z+3))||0,Y=a.indentation;E.attr("transform",XE(Y,B))}var V=E.selectAll("g.legendfill").data([M]);V.enter().append("g").classed("legendfill",!0);var H=E.selectAll("g.legendlines").data([M]);H.enter().append("g").classed("legendlines",!0);var G=E.selectAll("g.legendsymbols").data([M]);G.enter().append("g").classed("legendsymbols",!0),G.selectAll("g.legendpoints").data([M]).enter().append("g").classed("legendpoints",!0)}).each(k).each(v).each(p).each(d).each(m).each(b).each(_).each(f).each(c).each(x).each(w);function f(M){var q=KE(M),E=q.showFill,D=q.showLine,P=q.showGradientLine,R=q.showGradientFill,z=q.anyFill,O=q.anyLine,B=M[0],Y=B.trace,V,H,G=m5(Y),X=G.colorscale,Z=G.reversescale,ee=function(he){if(he.size())if(E)$n.fillGroupStyle(he,t,!0);else{var oe="legendfill-"+Y.uid;$n.gradient(he,t,oe,g5(Z),X,"fill")}},fe=function(he){if(he.size()){var oe="legendline-"+Y.uid;$n.lineGroupStyle(he),$n.gradient(he,t,oe,g5(Z),X,"stroke")}},ie=j1.hasMarkers(Y)||!z?"M5,0":O?"M5,-2":"M5,-3",ue=on.select(this),K=ue.select(".legendfill").selectAll("path").data(E||R?[M]:[]);if(K.enter().append("path").classed("js-fill",!0),K.exit().remove(),K.attr("d",ie+"h"+o+"v6h-"+o+"z").call(ee),D||P){var _e=u(void 0,Y.line,Fhe,$E);H=Xa.minExtend(Y,{line:{width:_e}}),V=[Xa.minExtend(B,{trace:H})]}var le=ue.select(".legendlines").selectAll("path").data(D||P?[V]:[]);le.enter().append("path").classed("js-line",!0),le.exit().remove(),le.attr("d",ie+(P?"l"+o+",0.0001":"h"+o)).call(D?$n.lineGroupStyle:fe)}function c(M){var q=KE(M),E=q.anyFill,D=q.anyLine,P=q.showLine,R=q.showMarker,z=M[0],O=z.trace,B=!R&&!D&&!E&&j1.hasText(O),Y,V;function H(K,_e,le,he){var oe=Xa.nestedProperty(O,K).get(),ce=Xa.isArrayOrTypedArray(oe)&&_e?_e(oe):oe;if(i&&ce&&he!==void 0&&(ce=he),le){if(cele[1])return le[1]}return ce}function G(K){return z._distinct&&z.index&&K[z.index]?K[z.index]:K[0]}if(R||B||P){var X={},Z={};if(R){X.mc=H("marker.color",G),X.mx=H("marker.symbol",G),X.mo=H("marker.opacity",Xa.mean,[.2,1]),X.mlc=H("marker.line.color",G),X.mlw=H("marker.line.width",Xa.mean,[0,5],yu),Z.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var ee=H("marker.size",Xa.mean,[2,16],JE);X.ms=ee,Z.marker.size=ee}P&&(Z.line={width:H("line.width",G,[0,10],$E)}),B&&(X.tx="Aa",X.tp=H("textposition",G),X.ts=10,X.tc=H("textfont.color",G),X.tf=H("textfont.family",G),X.tw=H("textfont.weight",G),X.ty=H("textfont.style",G),X.tv=H("textfont.variant",G),X.tC=H("textfont.textcase",G),X.tE=H("textfont.lineposition",G),X.tS=H("textfont.shadow",G)),Y=[Xa.minExtend(z,X)],V=Xa.minExtend(O,Z),V.selectedpoints=null,V.texttemplate=null}var fe=on.select(this).select("g.legendpoints"),ie=fe.selectAll("path.scatterpts").data(R?Y:[]);ie.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",s),ie.exit().remove(),ie.call($n.pointStyle,V,t),R&&(Y[0].mrc=3);var ue=fe.selectAll("g.pointtext").data(B?Y:[]);ue.enter().append("g").classed("pointtext",!0).append("text").attr("transform",s),ue.exit().remove(),ue.selectAll("text").call($n.textPointStyle,V,t)}function v(M){var q=M[0].trace,E=q.type==="waterfall";if(M[0]._distinct&&E){var D=M[0].trace[M[0].dir].marker;return M[0].mc=D.color,M[0].mlw=D.line.width,M[0].mlc=D.line.color,y(M,this,"waterfall")}var P=[];q.visible&&E&&(P=M[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var R=on.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(P);R.enter().append("path").classed("legendwaterfall",!0).attr("transform",s).style("stroke-miterlimit",1),R.exit().remove(),R.each(function(z){var O=on.select(this),B=q[z[0]].marker,Y=u(void 0,B.line,nc,yu);O.attr("d",z[1]).style("stroke-width",Y+"px").call(yi.fill,B.color),Y&&O.call(yi.stroke,B.line.color)})}function d(M){y(M,this)}function p(M){y(M,this,"funnel")}function y(M,q,E){var D=M[0].trace,P=D.marker||{},R=P.line||{},z=P.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",O=E?D.visible&&D.type===E:y5.traceIs(D,"bar"),B=on.select(q).select("g.legendpoints").selectAll("path.legend"+E).data(O?[M]:[]);B.enter().append("path").classed("legend"+E,!0).attr("d",z).attr("transform",s),B.exit().remove(),B.each(function(Y){var V=on.select(this),H=Y[0],G=u(H.mlw,P.line,nc,yu);V.style("stroke-width",G+"px");var X=H.mcc;if(!a._inHover&&"mc"in H){var Z=m5(P),ee=Z.mid;ee===void 0&&(ee=(Z.max+Z.min)/2),X=$n.tryColorscale(P,"")(ee)}var fe=X||H.mc||P.color,ie=P.pattern,ue=$n.getPatternAttr,K=ie&&(ue(ie.shape,0,"")||ue(ie.path,0,""));if(K){var _e=ue(ie.bgcolor,0,null),le=ue(ie.fgcolor,0,null),he=ie.fgopacity,oe=QE(ie.size,8,10),ce=QE(ie.solidity,.5,1),W="legend-"+D.uid;V.call($n.pattern,"legend",t,W,K,oe,ce,X,ie.fillmode,_e,le,he)}else V.call(yi.fill,fe);G&&yi.stroke(V,H.mlc||R.color)})}function m(M){var q=M[0].trace,E=on.select(this).select("g.legendpoints").selectAll("path.legendbox").data(q.visible&&y5.traceIs(q,"box-violin")?[M]:[]);E.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),E.exit().remove(),E.each(function(){var D=on.select(this);if((q.boxpoints==="all"||q.points==="all")&&yi.opacity(q.fillcolor)===0&&yi.opacity((q.line||{}).color)===0){var P=Xa.minExtend(q,{marker:{size:i?JE:Xa.constrain(q.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});E.call($n.pointStyle,P,t)}else{var R=u(void 0,q.line,nc,yu);D.style("stroke-width",R+"px").call(yi.fill,q.fillcolor),R&&yi.stroke(D,q.line.color)}})}function x(M){var q=M[0].trace,E=on.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(q.visible&&q.type==="candlestick"?[M,M]:[]);E.enter().append("path").classed("legendcandle",!0).attr("d",function(D,P){return P?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",s).style("stroke-miterlimit",1),E.exit().remove(),E.each(function(D,P){var R=on.select(this),z=q[P?"increasing":"decreasing"],O=u(void 0,z.line,nc,yu);R.style("stroke-width",O+"px").call(yi.fill,z.fillcolor),O&&yi.stroke(R,z.line.color)})}function w(M){var q=M[0].trace,E=on.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(q.visible&&q.type==="ohlc"?[M,M]:[]);E.enter().append("path").classed("legendohlc",!0).attr("d",function(D,P){return P?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",s).style("stroke-miterlimit",1),E.exit().remove(),E.each(function(D,P){var R=on.select(this),z=q[P?"increasing":"decreasing"],O=u(void 0,z.line,nc,yu);R.style("fill","none").call($n.dashLine,z.line.dash,O),O&&yi.stroke(R,z.line.color)})}function _(M){T(M,this,"pie")}function b(M){T(M,this,"funnelarea")}function T(M,q,E){var D=M[0],P=D.trace,R=E?P.visible&&P.type===E:y5.traceIs(P,E),z=on.select(q).select("g.legendpoints").selectAll("path.legend"+E).data(R?[M]:[]);if(z.enter().append("path").classed("legend"+E,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),z.exit().remove(),z.size()){var O=P.marker||{},B=u(Rhe(O.line.width,D.pts),O.line,nc,yu),Y="pieLike",V=Xa.minExtend(P,{marker:{line:{width:B}}},Y),H=Xa.minExtend(D,{trace:V},Y);Dhe(z,H,V,t)}}function k(M){var q=M[0].trace,E,D=[];if(q.visible)switch(q.type){case"histogram2d":case"heatmap":D=[["M-15,-2V4H15V-2Z"]],E=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":D=[["M-6,-6V6H6V-6Z"]],E=!0;break;case"densitymapbox":case"densitymap":D=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],E="radial";break;case"cone":D=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],E=!1;break;case"streamtube":D=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],E=!1;break;case"surface":D=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],E=!0;break;case"mesh3d":D=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],E=!1;break;case"volume":D=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],E=!0;break;case"isosurface":D=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],E=!1;break}var P=on.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(D);P.enter().append("path").classed("legend3dandfriends",!0).attr("transform",s).style("stroke-miterlimit",1),P.exit().remove(),P.each(function(R,z){var O=on.select(this),B=m5(q),Y=B.colorscale,V=B.reversescale,H=function(ee){if(ee.size()){var fe="legendfill-"+q.uid;$n.gradient(ee,t,fe,g5(V,E==="radial"),Y,"fill")}},G;if(Y){if(!E){var Z=Y.length;G=z===0?Y[V?Z-1:0][1]:z===1?Y[V?0:Z-1][1]:Y[Math.floor((Z-1)/2)][1]}}else{var X=q.vertexcolor||q.facecolor||q.color;G=Xa.isArrayOrTypedArray(X)?X[z]||X[0]:X}O.attr("d",R[0]),G?O.call(yi.fill,G):O.call(H)})}};function g5(e,r){var t=r?"radial":"horizontal";return t+(e?"":"reversed")}function KE(e){var r=e[0].trace,t=r.contours,a=j1.hasLines(r),n=j1.hasMarkers(r),i=r.visible&&r.fill&&r.fill!=="none",o=!1,l=!1;if(t){var s=t.coloring;s==="lines"?o=!0:a=s==="none"||s==="heatmap"||t.showlines,t.type==="constraint"?i=t._operation!=="=":(s==="fill"||s==="heatmap")&&(l=!0)}return{showMarker:n,showLine:a,showFill:i,showGradientLine:o,showGradientFill:l,anyLine:a||o,anyFill:i||l}}function QE(e,r,t){return e&&Xa.isArrayOrTypedArray(e)?r:e>t?t:e}});var T5=N((qRe,fD)=>{"use strict";var Rn=Sr(),fa=Le(),_5=ta(),lc=br(),rD=sh(),x5=pi(),ca=Wr(),X1=Tr(),mu=Ea(),tD=IE(),ba=d5(),w5=ja(),sD=w5.LINE_SPACING,oc=w5.FROM_TL,aD=w5.FROM_BR,nD=UE(),Nhe=b5(),iD=U1(),ic=1,zhe=/^legend[0-9]*$/;fD.exports=function(r,t){if(t)oD(r,t);else{var a=r._fullLayout,n=a._legends,i=a._infolayer.selectAll('[class^="legend"]');i.each(function(){var u=Rn.select(this),f=u.attr("class"),c=f.split(" ")[0];c.match(zhe)&&n.indexOf(c)===-1&&u.remove()});for(var o=0;o1)}var p=a.hiddenlabels||[];if(!l&&(!a.showlegend||!s.length))return o.selectAll("."+n).remove(),a._topdefs.select("#"+i).remove(),_5.autoMargin(e,n);var y=fa.ensureSingle(o,"g",n,function(q){l||q.attr("pointer-events","all")}),m=fa.ensureSingleById(a._topdefs,"clipPath",i,function(q){q.append("rect")}),x=fa.ensureSingle(y,"rect","bg",function(q){q.attr("shape-rendering","crispEdges")});x.call(X1.stroke,t.bordercolor).call(X1.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px");var w=fa.ensureSingle(y,"g","scrollbox"),_=t.title;t._titleWidth=0,t._titleHeight=0;var b;_.text?(b=fa.ensureSingle(w,"text",n+"titletext"),b.attr("text-anchor","start").call(ca.font,_.font).text(_.text),J1(b,w,e,t,ic)):w.selectAll("."+n+"titletext").remove();var T=fa.ensureSingle(y,"rect","scrollbar",function(q){q.attr(ba.scrollBarEnterAttrs).call(X1.fill,ba.scrollBarColor)}),k=w.selectAll("g.groups").data(s);k.enter().append("g").attr("class","groups"),k.exit().remove();var M=k.selectAll("g.traces").data(fa.identity);M.enter().append("g").attr("class","traces"),M.exit().remove(),M.style("opacity",function(q){var E=q[0].trace;return lc.traceIs(E,"pie-like")?p.indexOf(q[0].label)!==-1?.5:1:E.visible==="legendonly"?.5:1}).each(function(){Rn.select(this).call(Ohe,e,t)}).call(Nhe,e,t).each(function(){l||Rn.select(this).call(Bhe,e,n)}),fa.syncOrAsync([_5.previousPromises,function(){return Ghe(e,k,M,t)},function(){var q=a._size,E=t.borderwidth,D=t.xref==="paper",P=t.yref==="paper";if(_.text&&Ihe(b,t,E),!l){var R,z;D?R=q.l+q.w*t.x-oc[$1(t)]*t._width:R=a.width*t.x-oc[$1(t)]*t._width,P?z=q.t+q.h*(1-t.y)-oc[K1(t)]*t._effHeight:z=a.height*(1-t.y)-oc[K1(t)]*t._effHeight;var O=Vhe(e,n,R,z);if(O)return;if(a.margin.autoexpand){var B=R,Y=z;R=D?fa.constrain(R,0,a.width-t._width):B,z=P?fa.constrain(z,0,a.height-t._effHeight):Y,R!==B&&fa.log("Constrain "+n+".x to make legend fit inside graph"),z!==Y&&fa.log("Constrain "+n+".y to make legend fit inside graph")}ca.setTranslate(y,R,z)}if(T.on(".drag",null),y.on("wheel",null),l||t._height<=t._maxHeight||e._context.staticPlot){var V=t._effHeight;l&&(V=t._height),x.attr({width:t._width-E,height:V-E,x:E/2,y:E/2}),ca.setTranslate(w,0,0),m.select("rect").attr({width:t._width-2*E,height:V-2*E,x:E,y:E}),ca.setClipUrl(w,i,e),ca.setRect(T,0,0,0,0),delete t._scrollY}else{var H=Math.max(ba.scrollBarMinHeight,t._effHeight*t._effHeight/t._height),G=t._effHeight-H-2*ba.scrollBarMargin,X=t._height-t._effHeight,Z=G/X,ee=Math.min(t._scrollY||0,X);x.attr({width:t._width-2*E+ba.scrollBarWidth+ba.scrollBarMargin,height:t._effHeight-E,x:E/2,y:E/2}),m.select("rect").attr({width:t._width-2*E+ba.scrollBarWidth+ba.scrollBarMargin,height:t._effHeight-2*E,x:E,y:E+ee}),ca.setClipUrl(w,i,e),oe(ee,H,Z),y.on("wheel",function(){ee=fa.constrain(t._scrollY+Rn.event.deltaY/X*G,0,X),oe(ee,H,Z),ee!==0&&ee!==X&&Rn.event.preventDefault()});var fe,ie,ue,K=function(pe,me,ye){var Pe=(ye-me)/Z+pe;return fa.constrain(Pe,0,X)},_e=function(pe,me,ye){var Pe=(me-ye)/Z+pe;return fa.constrain(Pe,0,X)},le=Rn.behavior.drag().on("dragstart",function(){var pe=Rn.event.sourceEvent;pe.type==="touchstart"?fe=pe.changedTouches[0].clientY:fe=pe.clientY,ue=ee}).on("drag",function(){var pe=Rn.event.sourceEvent;pe.buttons===2||pe.ctrlKey||(pe.type==="touchmove"?ie=pe.changedTouches[0].clientY:ie=pe.clientY,ee=K(ue,fe,ie),oe(ee,H,Z))});T.call(le);var he=Rn.behavior.drag().on("dragstart",function(){var pe=Rn.event.sourceEvent;pe.type==="touchstart"&&(fe=pe.changedTouches[0].clientY,ue=ee)}).on("drag",function(){var pe=Rn.event.sourceEvent;pe.type==="touchmove"&&(ie=pe.changedTouches[0].clientY,ee=_e(ue,fe,ie),oe(ee,H,Z))});w.call(he)}function oe(pe,me,ye){t._scrollY=e._fullLayout[n]._scrollY=pe,ca.setTranslate(w,0,-pe),ca.setRect(T,t._width,ba.scrollBarMargin+pe*ye,ba.scrollBarWidth,me),m.select("rect").attr("y",E+pe)}if(e._context.edits.legendPosition){var ce,W,Q,j;y.classed("cursor-move",!0),x5.init({element:y.node(),gd:e,prepFn:function(pe){if(pe.target!==T.node()){var me=ca.getTranslate(y);Q=me.x,j=me.y}},moveFn:function(pe,me){if(Q!==void 0&&j!==void 0){var ye=Q+pe,Pe=j+me;ca.setTranslate(y,ye,Pe),ce=x5.align(ye,t._width,q.l,q.l+q.w,t.xanchor),W=x5.align(Pe+t._height,-t._height,q.t+q.h,q.t,t.yanchor)}},doneFn:function(){if(ce!==void 0&&W!==void 0){var pe={};pe[n+".x"]=ce,pe[n+".y"]=W,lc.call("_guiRelayout",e,pe)}},clickFn:function(pe,me){var ye=o.selectAll("g.traces").filter(function(){var Pe=this.getBoundingClientRect();return me.clientX>=Pe.left&&me.clientX<=Pe.right&&me.clientY>=Pe.top&&me.clientY<=Pe.bottom});ye.size()>0&&uD(e,y,ye,pe,me)}})}}],e)}}function Z1(e,r,t){var a=e[0],n=a.width,i=r.entrywidthmode,o=a.trace.legendwidth||r.entrywidth;return i==="fraction"?r._maxWidth*o:t+(o||n)}function uD(e,r,t,a,n){var i=t.data()[0][0].trace,o={event:n,node:t.node(),curveNumber:i.index,expandedIndex:i.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};i._group&&(o.group=i._group),lc.traceIs(i,"pie-like")&&(o.label=t.datum()[0].label);var l=rD.triggerHandler(e,"plotly_legendclick",o);if(a===1){if(l===!1)return;r._clickTimeout=setTimeout(function(){e._fullLayout&&tD(t,e,a)},e._context.doubleClickDelay)}else if(a===2){r._clickTimeout&&clearTimeout(r._clickTimeout),e._legendMouseDownTime=0;var s=rD.triggerHandler(e,"plotly_legenddoubleclick",o);s!==!1&&l!==!1&&tD(t,e,a)}}function Ohe(e,r,t){var a=Q1(t),n=e.data()[0][0],i=n.trace,o=lc.traceIs(i,"pie-like"),l=!t._inHover&&r._context.edits.legendText&&!o,s=t._maxNameLength,u,f;n.groupTitle?(u=n.groupTitle.text,f=n.groupTitle.font):(f=t.font,t.entries?u=n.text:(u=o?n.label:i.name,i._meta&&(u=fa.templateString(u,i._meta))));var c=fa.ensureSingle(e,"text",a+"text");c.attr("text-anchor","start").call(ca.font,f).text(l?lD(u,s):u);var v=t.indentation+t.itemwidth+ba.itemGap*2;mu.positionText(c,v,0),l?c.call(mu.makeEditable,{gd:r,text:u}).call(J1,e,r,t).on("edit",function(d){this.text(lD(d,s)).call(J1,e,r,t);var p=n.trace._fullInput||{},y={};return y.name=d,p._isShape?lc.call("_guiRelayout",r,"shapes["+i.index+"].name",y.name):lc.call("_guiRestyle",r,y,i.index)}):J1(c,e,r,t)}function lD(e,r){var t=Math.max(4,r);if(e&&e.trim().length>=t/2)return e;e=e||"";for(var a=t-e.length;a>0;a--)e+=" ";return e}function Bhe(e,r,t){var a=r._context.doubleClickDelay,n,i=1,o=fa.ensureSingle(e,"rect",t+"toggle",function(l){r._context.staticPlot||l.style("cursor","pointer").attr("pointer-events","all"),l.call(X1.fill,"rgba(0,0,0,0)")});r._context.staticPlot||(o.on("mousedown",function(){n=new Date().getTime(),n-r._legendMouseDownTimea&&(i=Math.max(i-1,1)),uD(r,l,e,i,Rn.event)}}))}function J1(e,r,t,a,n){a._inHover&&e.attr("data-notex",!0),mu.convertToTspans(e,t,function(){Hhe(r,t,a,n)})}function Hhe(e,r,t,a){var n=e.data()[0][0],i=n&&n.trace.showlegend;if(Array.isArray(i)&&(i=i[n.i]!==!1),!t._inHover&&n&&!i){e.remove();return}var o=e.select("g[class*=math-group]"),l=o.node(),s=Q1(t);t||(t=r._fullLayout[s]);var u=t.borderwidth,f;a===ic?f=t.title.font:n.groupTitle?f=n.groupTitle.font:f=t.font;var c=f.size*sD,v,d;if(l){var p=ca.bBox(l);v=p.height,d=p.width,a===ic?ca.setTranslate(o,u,u+v*.75):ca.setTranslate(o,0,v*.25)}else{var y="."+s+(a===ic?"title":"")+"text",m=e.select(y),x=mu.lineCount(m),w=m.node();if(v=c*x,d=w?ca.bBox(w).width:0,a===ic)t.title.side==="left"&&(d+=ba.itemGap*2),mu.positionText(m,u+ba.titlePad,u+c);else{var _=ba.itemGap*2+t.indentation+t.itemwidth;n.groupTitle&&(_=ba.itemGap,d-=t.indentation+t.itemwidth),mu.positionText(m,_,-c*((x-1)/2-.3))}}a===ic?(t._titleWidth=d,t._titleHeight=v):(n.lineHeight=c,n.height=Math.max(v,16)+3,n.width=d)}function Uhe(e){var r=0,t=0,a=e.title.side;return a&&(a.indexOf("left")!==-1&&(r=e._titleWidth),a.indexOf("top")!==-1&&(t=e._titleHeight)),[r,t]}function Ghe(e,r,t,a){var n=e._fullLayout,i=Q1(a);a||(a=n[i]);var o=n._size,l=iD.isVertical(a),s=iD.isGrouped(a),u=a.entrywidthmode==="fraction",f=a.borderwidth,c=2*f,v=ba.itemGap,d=a.indentation+a.itemwidth+v*2,p=2*(f+v),y=K1(a),m=a.y<0||a.y===0&&y==="top",x=a.y>1||a.y===1&&y==="bottom",w=a.tracegroupgap,_={};let{orientation:b,yref:T}=a,{maxheight:k}=a,M=m||x||b!=="v"||T!=="paper";k||(k=M?.5:1);let q=M?n.height:o.h;a._maxHeight=Math.max(k>1?k:k*q,30);var E=0;a._width=0,a._height=0;var D=Uhe(a);if(l)t.each(function(oe){var ce=oe[0].height;ca.setTranslate(this,f+D[0],f+D[1]+a._height+ce/2+v),a._height+=ce,a._width=Math.max(a._width,oe[0].width)}),E=d+a._width,a._width+=v+d+c,a._height+=p,s&&(r.each(function(oe,ce){ca.setTranslate(this,0,ce*a.tracegroupgap)}),a._height+=(a._lgroupsLength-1)*a.tracegroupgap);else{var P=$1(a),R=a.x<0||a.x===0&&P==="right",z=a.x>1||a.x===1&&P==="left",O=x||m,B=n.width/2;a._maxWidth=Math.max(R?O&&P==="left"?o.l+o.w:B:z?O&&P==="right"?o.r+o.w:B:o.w,2*d);var Y=0,V=0;t.each(function(oe){var ce=Z1(oe,a,d);Y=Math.max(Y,ce),V+=ce}),E=null;var H=0;if(s){var G=0,X=0,Z=0;r.each(function(){var oe=0,ce=0;Rn.select(this).selectAll("g.traces").each(function(Q){var j=Z1(Q,a,d),pe=Q[0].height;ca.setTranslate(this,D[0],D[1]+f+v+pe/2+ce),ce+=pe,oe=Math.max(oe,j),_[Q[0].trace.legendgroup]=oe});var W=oe+v;X>0&&W+f+X>a._maxWidth?(H=Math.max(H,X),X=0,Z+=G+w,G=ce):G=Math.max(G,ce),ca.setTranslate(this,X,Z),X+=W}),a._width=Math.max(H,X)+f,a._height=Z+G+p}else{var ee=t.size(),fe=V+c+(ee-1)*v=a._maxWidth&&(H=Math.max(H,_e),ue=0,K+=ie,a._height+=ie,ie=0),ca.setTranslate(this,D[0]+f+ue,D[1]+f+K+ce/2+v),_e=ue+W+v,ue+=Q,ie=Math.max(ie,ce)}),fe?(a._width=ue+c,a._height=ie+p):(a._width=Math.max(H,_e)+c,a._height+=ie+p)}}a._width=Math.ceil(Math.max(a._width+D[0],a._titleWidth+2*(f+ba.titlePad))),a._height=Math.ceil(Math.max(a._height+D[1],a._titleHeight+2*(f+ba.itemGap))),a._effHeight=Math.min(a._height,a._maxHeight);var le=e._context.edits,he=le.legendText||le.legendPosition;t.each(function(oe){var ce=Rn.select(this).select("."+i+"toggle"),W=oe[0].height,Q=oe[0].trace.legendgroup,j=Z1(oe,a,d);s&&Q!==""&&(j=_[Q]);var pe=he?d:E||j;!l&&!u&&(pe+=v/2),ca.setRect(ce,0,-W/2,pe,W)})}function Vhe(e,r,t,a){var n=e._fullLayout,i=n[r],o=$1(i),l=K1(i),s=i.xref==="paper",u=i.yref==="paper";e._fullLayout._reservedMargin[r]={};var f=i.y<.5?"b":"t",c=i.x<.5?"l":"r",v={r:n.width-t,l:t+i._width,b:n.height-a,t:a+i._effHeight};if(s&&u)return _5.autoMargin(e,r,{x:i.x,y:i.y,l:i._width*oc[o],r:i._width*aD[o],b:i._effHeight*aD[l],t:i._effHeight*oc[l]});s?e._fullLayout._reservedMargin[r][f]=v[f]:u||i.orientation==="v"?e._fullLayout._reservedMargin[r][c]=v[c]:e._fullLayout._reservedMargin[r][f]=v[f]}function $1(e){return fa.isRightAnchor(e)?"right":fa.isCenterAnchor(e)?"center":"left"}function K1(e){return fa.isBottomAnchor(e)?"bottom":fa.isMiddleAnchor(e)?"middle":"top"}function Q1(e){return e._id||"legend"}});var S5=N(k5=>{"use strict";var gu=Sr(),vl=Rr(),cD=kn(),Vt=Le(),Yhe=Vt.pushUnique,A5=Vt.strTranslate,Whe=Vt.strRotate,jhe=sh(),mi=Ea(),Zhe=PE(),Ro=Wr(),Aa=Tr(),ey=pi(),Po=zr(),Xhe=Ca().zindexSeparator,uc=br(),no=qo(),bu=Jv(),Jhe=c5(),$he=T5(),bD=bu.YANGLE,M5=Math.PI*bD/180,Khe=1/Math.sin(M5),Qhe=Math.cos(M5),e0e=Math.sin(M5),Rt=bu.HOVERARROWSIZE,Vr=bu.HOVERTEXTPAD,vD={box:!0,ohlc:!0,violin:!0,candlestick:!0},r0e={scatter:!0,scattergl:!0,splom:!0};function hD(e,r){return e.distance-r.distance}k5.hover=function(r,t,a,n){r=Vt.getGraphDiv(r);var i=t.target;Vt.throttle(r._fullLayout._uid+bu.HOVERID,bu.HOVERMINTIME,function(){t0e(r,t,a,n,i)})};k5.loneHover=function(r,t){var a=!0;Array.isArray(r)||(a=!1,r=[r]);var n=t.gd,i=AD(n),o=MD(n),l=r.map(function(m){var x=m._x0||m.x0||m.x||0,w=m._x1||m.x1||m.x||0,_=m._y0||m.y0||m.y||0,b=m._y1||m.y1||m.y||0,T=m.eventData;if(T){var k=Math.min(x,w),M=Math.max(x,w),q=Math.min(_,b),E=Math.max(_,b),D=m.trace;if(uc.traceIs(D,"gl3d")){var P=n._fullLayout[D.scene]._scene.container,R=P.offsetLeft,z=P.offsetTop;k+=R,M+=R,q+=z,E+=z}T.bbox={x0:k+o,x1:M+o,y0:q+i,y1:E+i},t.inOut_bbox&&t.inOut_bbox.push(T.bbox)}else T=!1;return{color:m.color||Aa.defaultLine,x0:m.x0||m.x||0,x1:m.x1||m.x||0,y0:m.y0||m.y||0,y1:m.y1||m.y||0,xLabel:m.xLabel,yLabel:m.yLabel,zLabel:m.zLabel,text:m.text,name:m.name,idealAlign:m.idealAlign,borderColor:m.borderColor,fontFamily:m.fontFamily,fontSize:m.fontSize,fontColor:m.fontColor,fontWeight:m.fontWeight,fontStyle:m.fontStyle,fontVariant:m.fontVariant,nameLength:m.nameLength,textAlign:m.textAlign,trace:m.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:m.hovertemplate||!1,hovertemplateLabels:m.hovertemplateLabels||!1,eventData:T}}),s=!1,u=_D(l,{gd:n,hovermode:"closest",rotateLabels:s,bgColor:t.bgColor||Aa.background,container:gu.select(t.container),outerContainer:t.outerContainer||t.container}),f=u.hoverLabels,c=5,v=0,d=0;f.sort(function(m,x){return m.y0-x.y0}).each(function(m,x){var w=m.y0-m.by/2;w-cM[0]._length||j<0||j>q[0]._length)return ey.unhoverRaw(e,r)}if(r.pointerX=Q+M[0]._offset,r.pointerY=j+q[0]._offset,"xval"in r?Y=no.flat(i,r.xval):Y=no.p2c(M,Q),"yval"in r?V=no.flat(i,r.yval):V=no.p2c(q,j),!vl(Y[0])||!vl(V[0]))return Vt.warn("Fx.hover failed",r,e),ey.unhoverRaw(e,r)}var ye=1/0;function Pe(dr,yt){for(G=0;Gle&&(O.splice(0,le),ye=O[0].distance),c&&z!==0&&O.length===0){_e.distance=z,_e.index=!1;var Gr=Z._module.hoverPoints(_e,ue,K,"closest",{hoverLayer:l._hoverlayer});if(Gr&&(Gr=Gr.filter(function(Nt){return Nt.spikeDistance<=z})),Gr&&Gr.length){var Bt,rn=Gr.filter(function(Nt){return Nt.xa.showspikes&&Nt.xa.spikesnap!=="hovered data"});if(rn.length){var Wt=rn[0];vl(Wt.x0)&&vl(Wt.y0)&&(Bt=Ee(Wt),(!he.vLinePoint||he.vLinePoint.spikeDistance>Bt.spikeDistance)&&(he.vLinePoint=Bt))}var dn=Gr.filter(function(Nt){return Nt.ya.showspikes&&Nt.ya.spikesnap!=="hovered data"});if(dn.length){var pn=dn[0];vl(pn.x0)&&vl(pn.y0)&&(Bt=Ee(pn),(!he.hLinePoint||he.hLinePoint.spikeDistance>Bt.spikeDistance)&&(he.hLinePoint=Bt))}}}}}Pe();function Ne(dr,yt,Zr){for(var $r=null,mt=1/0,Lt,Gr=0;Grdr.trace.index===Te.trace.index):O=[Te];var qe=O.length,Ge=gD("x",Te,l),Je=gD("y",Te,l);Pe(Ge,Je);var Ve=[],Ze={},or=0,rr=function(dr){var yt=vD[dr.trace.type]?xD(dr):dr.trace.index;if(!Ze[yt])or++,Ze[yt]=or,Ve.push(dr);else{var Zr=Ze[yt]-1,$r=Ve[Zr];Zr>0&&Math.abs(dr.distance)qe-1;Ke--)rr(O[Ke]);O=Ve,Ce()}var ze=e._hoverdata,ne=[],ve=AD(e),De=MD(e);for(let dr of O){var Re=no.makeEventData(dr,dr.trace,dr.cd);if(dr.hovertemplate!==!1){var Qe=!1;dr.cd[dr.index]&&dr.cd[dr.index].ht&&(Qe=dr.cd[dr.index].ht),dr.hovertemplate=Qe||dr.trace.hovertemplate||!1}if(dr.xa&&dr.ya){var fr=dr.x0+dr.xa._offset,sr=dr.x1+dr.xa._offset,kr=dr.y0+dr.ya._offset,Ir=dr.y1+dr.ya._offset,Yr=Math.min(fr,sr),et=Math.max(fr,sr),qt=Math.min(kr,Ir),ft=Math.max(kr,Ir);Re.bbox={x0:Yr+De,x1:et+De,y0:qt+ve,y1:ft+ve}}dr.eventData=[Re],ne.push(Re)}e._hoverdata=ne;var Ft=v==="y"&&(B.length>1||O.length>1)||v==="closest"&&oe&&O.length>1,Tt=Aa.combine(l.plot_bgcolor||Aa.background,l.paper_bgcolor),da=_D(O,{gd:e,hovermode:v,rotateLabels:Ft,bgColor:Tt,container:l._hoverlayer,outerContainer:l._paper.node(),commonLabelOpts:l.hoverlabel,hoverdistance:l.hoverdistance}),$t=da.hoverLabels;if(no.isUnifiedHover(v)||(n0e($t,Ft,l,da.commonLabelBoundingBox),TD($t,Ft,l._invScaleX,l._invScaleY)),n&&n.tagName){var oa=uc.getComponentMethod("annotations","hasClickToShow")(e,ne);Zhe(gu.select(n),oa?"pointer":"")}!n||a||!l0e(e,r,ze)||(ze&&e.emit("plotly_unhover",{event:r,points:ze}),e.emit("plotly_hover",{event:r,points:e._hoverdata,xaxes:M,yaxes:q,xvals:Y,yvals:V}))}function xD(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var a0e=/([\s\S]*)<\/extra>/;function _D(e,r){var t=r.gd,a=t._fullLayout,n=r.hovermode,i=r.rotateLabels,o=r.bgColor,l=r.container,s=r.outerContainer,u=r.commonLabelOpts||{};if(e.length===0)return[[]];var f=r.fontFamily||bu.HOVERFONT,c=r.fontSize||bu.HOVERFONTSIZE,v=r.fontWeight||a.font.weight,d=r.fontStyle||a.font.style,p=r.fontVariant||a.font.variant,y=r.fontTextcase||a.font.textcase,m=r.fontLineposition||a.font.lineposition,x=r.fontShadow||a.font.shadow,w=e[0],_=w.xa,b=w.ya,T=n.charAt(0),k=T+"Label",M=w[k];if(M===void 0&&_.type==="multicategory")for(var q=0;qa.width-ve&&(De=a.width-ve),Te.attr("d","M"+(Ke-De)+",0L"+(Ke-De+Rt)+","+ne+Rt+"H"+ve+"v"+ne+(Vr*2+rr.height)+"H"+-ve+"V"+ne+Rt+"H"+(Ke-De-Rt)+"Z"),Ke=De,G.minX=Ke-ve,G.maxX=Ke+ve,_.side==="top"?(G.minY=ze-(Vr*2+rr.height),G.maxY=ze-Vr):(G.minY=ze+Vr,G.maxY=ze+(Vr*2+rr.height))}else{var Re,Qe,fr;b.side==="right"?(Re="start",Qe=1,fr="",Ke=_._offset+_._length):(Re="end",Qe=-1,fr="-",Ke=_._offset),ze=b._offset+(w.y0+w.y1)/2,qe.attr("text-anchor",Re),Te.attr("d","M0,0L"+fr+Rt+","+Rt+"V"+(Vr+rr.height/2)+"h"+fr+(Vr*2+rr.width)+"V-"+(Vr+rr.height/2)+"H"+fr+Rt+"V-"+Rt+"Z"),G.minY=ze-(Vr+rr.height/2),G.maxY=ze+(Vr+rr.height/2),b.side==="right"?(G.minX=Ke+Rt,G.maxX=Ke+Rt+(Vr*2+rr.width)):(G.minX=Ke-Rt-(Vr*2+rr.width),G.maxX=Ke-Rt);var sr=rr.height/2,kr=D-rr.top-sr,Ir="clip"+a._uid+"commonlabel"+b._id,Yr;if(KeTe.hoverinfo!=="none");if(Fe.length===0)return[];var X=a.hoverlabel,Z=X.font,ee=Fe[0],fe=((n==="x unified"?ee.xa:ee.ya).unifiedhovertitle||{}).text,ie=fe?Vt.hovertemplateString({data:n==="x unified"?[{xa:ee.xa,x:ee.xVal}]:[{ya:ee.ya,y:ee.yVal}],fallback:ee.trace.hovertemplatefallback,locale:a._d3locale,template:fe}):M,ue={showlegend:!0,legend:{title:{text:ie,font:Z},font:Z,bgcolor:X.bgcolor,bordercolor:X.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:a.legend?a.legend.traceorder:void 0,orientation:"v"}},K={font:Z};Jhe(ue,K,t._fullData);var _e=K.legend;_e.entries=[];for(var le=0;le=0?Ae=Ce:Oe+me=0?Ae=Oe:He+me=0?Xe=Ue:Be+ye=0?Xe=Be:se+ye=0,(Fe.idealAlign==="top"||!ft)&&Ft?(fr-=kr/2,Fe.anchor="end"):ft?(fr+=kr/2,Fe.anchor="start"):Fe.anchor="middle",Fe.crossPos=fr;else{if(Fe.pos=fr,ft=Qe+sr/2+qt<=P,Ft=Qe-sr/2-qt>=0,(Fe.idealAlign==="left"||!ft)&&Ft)Qe-=sr/2,Fe.anchor="end";else if(ft)Qe+=sr/2,Fe.anchor="start";else{Fe.anchor="middle";var Tt=qt/2,da=Qe+Tt-P,$t=Qe-Tt;da>0&&(Qe-=da),$t<0&&(Qe+=-$t)}Fe.crossPos=Qe}ze.attr("text-anchor",Fe.anchor),ve&&ne.attr("text-anchor",Fe.anchor),Te.attr("transform",A5(Qe,fr)+(i?Whe(bD):""))}),{hoverLabels:hr,commonLabelBoundingBox:G}}function dD(e,r,t,a,n,i){var c,v;var o="",l="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=Vt.templateString(e.name,e.trace._meta)),o=mD(e.name,e.nameLength));var s=t.charAt(0),u=s==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(l+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(l+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(l+=(l?"z: ":"")+e.zLabel)):r&&e[s+"Label"]===n?l=e[u+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(l=e.yLabel):e.yLabel===void 0?l=e.xLabel:l="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(l+=(l?"
":"")+e.text),e.extraText!==void 0&&(l+=(l?"
":"")+e.extraText),i&&l===""&&!e.hovertemplate&&(o===""&&i.remove(),l=o),(v=(c=e.trace)==null?void 0:c.hoverlabel)!=null&&v.split&&(e.hovertemplate="");let{hovertemplate:f=!1}=e;if(f){let d=e.hovertemplateLabels||e;e[s+"Label"]!==n&&(d[s+"other"]=d[s+"Val"],d[s+"otherLabel"]=d[s+"Label"]),l=Vt.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:a._d3locale,template:f}),l=l.replace(a0e,(p,y)=>(o=mD(y,e.nameLength),""))}return[l,o]}function n0e(e,r,t,a){var n=r?"xa":"ya",i=r?"ya":"xa",o=0,l=1,s=e.size(),u=new Array(s),f=0,c=a.minX,v=a.maxX,d=a.minY,p=a.maxY,y=function(Y){return Y*t._invScaleX},m=function(Y){return Y*t._invScaleY};e.each(function(Y){var V=Y[n],H=Y[i],G=V._id.charAt(0)==="x",X=V.range;f===0&&X&&X[0]>X[1]!==G&&(l=-1);var Z=0,ee=G?t.width:t.height;if(t.hovermode==="x"||t.hovermode==="y"){var fe=wD(Y,r),ie=Y.anchor,ue=ie==="end"?-1:1,K,_e;if(ie==="middle")K=Y.crossPos+(G?m(fe.y-Y.by/2):y(Y.bx/2+Y.tx2width/2)),_e=K+(G?m(Y.by):y(Y.bx));else if(G)K=Y.crossPos+m(Rt+fe.y)-m(Y.by/2-Rt),_e=K+m(Y.by);else{var le=y(ue*Rt+fe.x),he=le+y(ue*Y.bx);K=Y.crossPos+Math.min(le,he),_e=Y.crossPos+Math.max(le,he)}G?d!==void 0&&p!==void 0&&Math.min(_e,p)-Math.max(K,d)>1&&(H.side==="left"?(Z=H._mainLinePosition,ee=t.width):ee=H._mainLinePosition):c!==void 0&&v!==void 0&&Math.min(_e,v)-Math.max(K,c)>1&&(H.side==="top"?(Z=H._mainLinePosition,ee=t.height):ee=H._mainLinePosition)}u[f++]=[{datum:Y,traceIndex:Y.trace.index,dp:0,pos:Y.pos,posref:Y.posref,size:Y.by*(G?Khe:1)/2,pmin:Z,pmax:ee}]}),u.sort(function(Y,V){return Y[0].posref-V[0].posref||l*(V[0].traceIndex-Y[0].traceIndex)});var x,w,_,b,T,k,M;function q(Y){var V=Y[0],H=Y[Y.length-1];if(w=V.pmin-V.pos-V.dp+V.size,_=H.pos+H.dp+H.size-V.pmax,w>.01){for(T=Y.length-1;T>=0;T--)Y[T].dp+=w;x=!1}if(!(_<.01)){if(w<-.01){for(T=Y.length-1;T>=0;T--)Y[T].dp-=_;x=!1}if(x){var G=0;for(b=0;bV.pmax&&G++;for(b=Y.length-1;b>=0&&!(G<=0);b--)k=Y[b],k.pos>V.pmax-1&&(k.del=!0,G--);for(b=0;b=0;T--)Y[T].dp-=_;for(b=Y.length-1;b>=0&&!(G<=0);b--)k=Y[b],k.pos+k.dp+k.size>V.pmax&&(k.del=!0,G--)}}}for(;!x&&o<=s;){for(o++,x=!0,b=0;b.01){for(T=D.length-1;T>=0;T--)D[T].dp+=w;for(E.push.apply(E,D),u.splice(b+1,1),M=0,T=E.length-1;T>=0;T--)M+=E[T].dp;for(_=M/E.length,T=E.length-1;T>=0;T--)E[T].dp-=_;x=!1}else b++}u.forEach(q)}for(b=u.length-1;b>=0;b--){var z=u[b];for(T=z.length-1;T>=0;T--){var O=z[T],B=O.datum;B.offset=O.dp,B.del=O.del}}}function wD(e,r){var t=0,a=e.offset;return r&&(a*=-e0e,t=e.offset*Qhe),{x:t,y:a}}function i0e(e){var r={start:1,end:-1,middle:0}[e.anchor],t=r*(Rt+Vr),a=t+r*(e.txwidth+Vr),n=e.anchor==="middle";return n&&(t-=e.tx2width/2,a+=e.txwidth/2+Vr),{alignShift:r,textShiftX:t,text2ShiftX:a}}function TD(e,r,t,a){var n=function(o){return o*t},i=function(o){return o*a};e.each(function(o){var l=gu.select(this);if(o.del)return l.remove();var s=l.select("text.nums"),u=o.anchor,f=u==="end"?-1:1,c=i0e(o),v=wD(o,r),d=v.x,p=v.y,y=u==="middle",m="hoverlabel"in o.trace?o.trace.hoverlabel.showarrow:!0,x;y?x="M-"+n(o.bx/2+o.tx2width/2)+","+i(p-o.by/2)+"h"+n(o.bx)+"v"+i(o.by)+"h-"+n(o.bx)+"Z":m?x="M0,0L"+n(f*Rt+d)+","+i(Rt+p)+"v"+i(o.by/2-Rt)+"h"+n(f*o.bx)+"v-"+i(o.by)+"H"+n(f*Rt+d)+"V"+i(p-Rt)+"Z":x="M"+n(f*Rt+d)+","+i(p-o.by/2)+"h"+n(f*o.bx)+"v"+i(o.by)+"h"+n(-f*o.bx)+"Z",l.select("path").attr("d",x);var w=d+c.textShiftX,_=p+o.ty0-o.by/2+Vr,b=o.textAlign||"auto";b!=="auto"&&(b==="left"&&u!=="start"?(s.attr("text-anchor","start"),w=y?-o.bx/2-o.tx2width/2+Vr:-o.bx-Vr):b==="right"&&u!=="end"&&(s.attr("text-anchor","end"),w=y?o.bx/2-o.tx2width/2-Vr:o.bx+Vr)),s.call(mi.positionText,n(w),i(_)),o.tx2width&&(l.select("text.name").call(mi.positionText,n(c.text2ShiftX+c.alignShift*Vr+d),i(p+o.ty0-o.by/2+Vr)),l.select("rect").call(Ro.setRect,n(c.text2ShiftX+(c.alignShift-1)*o.tx2width/2+d),i(p-o.by/2-1),n(o.tx2width),i(o.by+2)))})}function o0e(e,r){var t=e.index,a=e.trace||{},n=e.cd[0],i=e.cd[t]||{};function o(v){return v||vl(v)&&v===0}var l=Array.isArray(t)?function(v,d){var p=Vt.castOption(n,t,v);return o(p)?p:Vt.extractOption({},a,"",d)}:function(v,d){return Vt.extractOption(i,a,v,d)};function s(v,d,p){var y=l(d,p);o(y)&&(e[v]=y)}if(s("hoverinfo","hi","hoverinfo"),s("bgcolor","hbg","hoverlabel.bgcolor"),s("borderColor","hbc","hoverlabel.bordercolor"),s("fontFamily","htf","hoverlabel.font.family"),s("fontSize","hts","hoverlabel.font.size"),s("fontColor","htc","hoverlabel.font.color"),s("fontWeight","htw","hoverlabel.font.weight"),s("fontStyle","hty","hoverlabel.font.style"),s("fontVariant","htv","hoverlabel.font.variant"),s("nameLength","hnl","hoverlabel.namelength"),s("textAlign","hta","hoverlabel.align"),e.posref=r==="y"||r==="closest"&&a.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=Vt.constrain(e.x0,0,e.xa._length),e.x1=Vt.constrain(e.x1,0,e.xa._length),e.y0=Vt.constrain(e.y0,0,e.ya._length),e.y1=Vt.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:Po.hoverLabelText(e.xa,e.xLabelVal,a.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:Po.hoverLabelText(e.ya,e.yLabelVal,a.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var u=Po.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+u+" / -"+Po.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+u,r==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var f=Po.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+f+" / -"+Po.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+f,r==="y"&&(e.distance+=1)}var c=e.hoverinfo||e.trace.hoverinfo;return c&&c!=="all"&&(c=Array.isArray(c)?c:c.split("+"),c.indexOf("x")===-1&&(e.xLabel=void 0),c.indexOf("y")===-1&&(e.yLabel=void 0),c.indexOf("z")===-1&&(e.zLabel=void 0),c.indexOf("text")===-1&&(e.text=void 0),c.indexOf("name")===-1&&(e.name=void 0)),e}function pD(e,r,t){var a=t.container,n=t.fullLayout,i=n._size,o=t.event,l=!!r.hLinePoint,s=!!r.vLinePoint,u,f;if(a.selectAll(".spikeline").remove(),!!(s||l)){var c=Aa.combine(n.plot_bgcolor,n.paper_bgcolor);if(l){var v=r.hLinePoint,d,p;u=v&&v.xa,f=v&&v.ya;var y=f.spikesnap;y==="cursor"?(d=o.pointerX,p=o.pointerY):(d=u._offset+v.x,p=f._offset+v.y);var m=cD.readability(v.color,c)<1.5?Aa.contrast(c):v.color,x=f.spikemode,w=f.spikethickness,_=f.spikecolor||m,b=Po.getPxPosition(e,f),T,k;if(x.indexOf("toaxis")!==-1||x.indexOf("across")!==-1){if(x.indexOf("toaxis")!==-1&&(T=b,k=d),x.indexOf("across")!==-1){var M=f._counterDomainMin,q=f._counterDomainMax;f.anchor==="free"&&(M=Math.min(M,f.position),q=Math.max(q,f.position)),T=i.l+M*i.w,k=i.l+q*i.w}a.insert("line",":first-child").attr({x1:T,x2:k,y1:p,y2:p,"stroke-width":w,stroke:_,"stroke-dasharray":Ro.dashStyle(f.spikedash,w)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:T,x2:k,y1:p,y2:p,"stroke-width":w+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}x.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:b+(f.side!=="right"?w:-w),cy:p,r:w,fill:_}).classed("spikeline",!0)}if(s){var E=r.vLinePoint,D,P;u=E&&E.xa,f=E&&E.ya;var R=u.spikesnap;R==="cursor"?(D=o.pointerX,P=o.pointerY):(D=u._offset+E.x,P=f._offset+E.y);var z=cD.readability(E.color,c)<1.5?Aa.contrast(c):E.color,O=u.spikemode,B=u.spikethickness,Y=u.spikecolor||z,V=Po.getPxPosition(e,u),H,G;if(O.indexOf("toaxis")!==-1||O.indexOf("across")!==-1){if(O.indexOf("toaxis")!==-1&&(H=V,G=P),O.indexOf("across")!==-1){var X=u._counterDomainMin,Z=u._counterDomainMax;u.anchor==="free"&&(X=Math.min(X,u.position),Z=Math.max(Z,u.position)),H=i.t+(1-Z)*i.h,G=i.t+(1-X)*i.h}a.insert("line",":first-child").attr({x1:D,x2:D,y1:H,y2:G,"stroke-width":B,stroke:Y,"stroke-dasharray":Ro.dashStyle(u.spikedash,B)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:D,x2:D,y1:H,y2:G,"stroke-width":B+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}O.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:D,cy:V-(u.side!=="top"?B:-B),r:B,fill:Y}).classed("spikeline",!0)}}}function l0e(e,r,t){if(!t||t.length!==e._hoverdata.length)return!0;for(var a=t.length-1;a>=0;a--){var n=t[a],i=e._hoverdata[a];if(n.curveNumber!==i.curveNumber||String(n.pointNumber)!==String(i.pointNumber)||String(n.pointNumbers)!==String(i.pointNumbers)||n.binNumber!==i.binNumber)return!0}return!1}function yD(e,r){return!r||r.vLinePoint!==e._spikepoints.vLinePoint||r.hLinePoint!==e._spikepoints.hLinePoint}function mD(e,r){return mi.plainText(e||"",{len:r,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function s0e(e,r){for(var t=r.charAt(0),a=[],n=[],i=[],o=0;oe.offsetTop+e.clientTop,MD=e=>e.offsetLeft+e.clientLeft;function sc(e,r){var t=e._fullLayout,a=r.getBoundingClientRect(),n=a.left,i=a.top,o=n+a.width,l=i+a.height,s=Vt.apply3DTransform(t._invTransform)(n,i),u=Vt.apply3DTransform(t._invTransform)(o,l),f=s[0],c=s[1],v=u[0],d=u[1];return{x:f,y:c,width:v-f,height:d-c,top:Math.min(c,d),left:Math.min(f,v),right:Math.max(f,v),bottom:Math.max(c,d)}}});var ry=N((CRe,kD)=>{"use strict";var u0e=Le(),f0e=Tr(),c0e=qo().isUnifiedHover;kD.exports=function(r,t,a,n){n=n||{};var i=t.legend;function o(l){n.font[l]||(n.font[l]=i?t.legend.font[l]:t.font[l])}t&&c0e(t.hovermode)&&(n.font||(n.font={}),o("size"),o("family"),o("color"),o("weight"),o("style"),o("variant"),i?(n.bgcolor||(n.bgcolor=f0e.combine(t.legend.bgcolor,t.paper_bgcolor)),n.bordercolor||(n.bordercolor=t.legend.bordercolor)):n.bgcolor||(n.bgcolor=t.paper_bgcolor)),a("hoverlabel.bgcolor",n.bgcolor),a("hoverlabel.bordercolor",n.bordercolor),a("hoverlabel.namelength",n.namelength),a("hoverlabel.showarrow",n.showarrow),u0e.coerceFont(a,"hoverlabel.font",n.font),a("hoverlabel.align",n.align)}});var qD=N((ERe,SD)=>{"use strict";var v0e=Le(),h0e=ry(),d0e=Mf();SD.exports=function(r,t){function a(n,i){return v0e.coerce(r,t,d0e,n,i)}h0e(r,t,a)}});var ED=N((DRe,CD)=>{"use strict";var LD=Le(),p0e=xp(),y0e=ry();CD.exports=function(r,t,a,n){function i(l,s){return LD.coerce(r,t,p0e,l,s)}var o=LD.extendFlat({},n.hoverlabel);t.hovertemplate&&(o.namelength=-1),y0e(r,t,i,o)}});var q5=N((RRe,DD)=>{"use strict";var m0e=Le(),g0e=Mf();DD.exports=function(r,t){function a(n,i){return t[n]!==void 0?t[n]:m0e.coerce(r,t,g0e,n,i)}return a("clickmode"),a("hoversubplots"),a("hovermode")}});var FD=N((PRe,PD)=>{"use strict";var RD=Le(),b0e=Mf(),x0e=q5(),_0e=ry();PD.exports=function(r,t){function a(f,c){return RD.coerce(r,t,b0e,f,c)}var n=x0e(r,t);n&&(a("hoverdistance"),a("spikedistance"));var i=a("dragmode");i==="select"&&a("selectdirection");var o=t._has("mapbox"),l=t._has("map"),s=t._has("geo"),u=t._basePlotModules.length;t.dragmode==="zoom"&&((o||l||s)&&u===1||(o||l)&&s&&u===2)&&(t.dragmode="pan"),_0e(r,t,a),RD.coerceFont(a,"hoverlabel.grouptitlefont",t.hoverlabel.font)}});var ID=N((FRe,zD)=>{"use strict";var L5=Le(),ND=br();zD.exports=function(r){var t=r.calcdata,a=r._fullLayout;function n(u){return function(f){return L5.coerceHoverinfo({hoverinfo:f},{_module:u._module},a)}}for(var i=0;i{"use strict";var T0e=br(),A0e=S5().hover;OD.exports=function(r,t,a){var n=T0e.getComponentMethod("annotations","onClick")(r,r._hoverdata);a!==void 0&&A0e(r,t,a,!0);function i(){r.emit("plotly_click",{points:r._hoverdata,event:t})}r._hoverdata&&t&&t.target&&(n&&n.then?n.then(i):i(),t.stopImmediatePropagation&&t.stopImmediatePropagation())}});var Pn=N((zRe,GD)=>{"use strict";var M0e=Sr(),ty=Le(),k0e=pi(),kh=qo(),HD=Mf(),UD=S5();GD.exports={moduleType:"component",name:"fx",constants:Jv(),schema:{layout:HD},attributes:xp(),layoutAttributes:HD,supplyLayoutGlobalDefaults:qD(),supplyDefaults:ED(),supplyLayoutDefaults:FD(),calc:ID(),getDistanceFunction:kh.getDistanceFunction,getClosest:kh.getClosest,inbox:kh.inbox,quadrature:kh.quadrature,appendArrayPointValue:kh.appendArrayPointValue,castHoverOption:q0e,castHoverinfo:L0e,hover:UD.hover,unhover:k0e.unhover,loneHover:UD.loneHover,loneUnhover:S0e,click:BD()};function S0e(e){var r=ty.isD3Selection(e)?e:M0e.select(e);r.selectAll("g.hovertext").remove(),r.selectAll(".spikeline").remove()}function q0e(e,r,t){return ty.castOption(e,r,"hoverlabel."+t)}function L0e(e,r,t){function a(n){return ty.coerceHoverinfo({hoverinfo:n},{_module:e._module},r)}return ty.castOption(e,t,"hoverinfo",a)}});var xu=N(hl=>{"use strict";hl.selectMode=function(e){return e==="lasso"||e==="select"};hl.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};hl.openMode=function(e){return e==="drawline"||e==="drawopenpath"};hl.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};hl.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};hl.selectingOrDrawing=function(e){return hl.freeMode(e)||hl.rectMode(e)}});var ay=N((ORe,VD)=>{"use strict";VD.exports=function(r){var t=r._fullLayout;t._glcanvas&&t._glcanvas.size()&&t._glcanvas.each(function(a){a.regl&&a.regl.clear({color:!0,depth:!0})})}});var ny=N((BRe,YD)=>{"use strict";YD.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var oy=N((HRe,WD)=>{"use strict";var iy=32;WD.exports={CIRCLE_SIDES:iy,i000:0,i090:iy/4,i180:iy/2,i270:iy/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var ly=N((URe,ZD)=>{"use strict";var C0e=Le().strTranslate;function jD(e,r){switch(e.type){case"log":return e.p2d(r);case"date":return e.p2r(r,0,e.calendar);default:return e.p2r(r)}}function E0e(e,r){switch(e.type){case"log":return e.d2p(r);case"date":return e.r2p(r,0,e.calendar);default:return e.r2p(r)}}function D0e(e){var r=e._id.charAt(0)==="y"?1:0;return function(t){return jD(e,t[r])}}function R0e(e){return C0e(e.xaxis._offset,e.yaxis._offset)}ZD.exports={p2r:jD,r2p:E0e,axValue:D0e,getTransform:R0e}});var ts=N(dl=>{"use strict";var P0e=bx(),$D=oy(),fc=$D.CIRCLE_SIDES,C5=$D.SQRT2,KD=ly(),XD=KD.p2r,JD=KD.r2p,F0e=[0,3,4,5,6,1,2],N0e=[0,3,4,1,2];dl.writePaths=function(e){var r=e.length;if(!r)return"M0,0Z";for(var t="",a=0;a0&&s{"use strict";var QD=la(),nR=xu(),z0e=nR.drawMode,I0e=nR.openMode,cc=oy(),eR=cc.i000,rR=cc.i090,tR=cc.i180,aR=cc.i270,O0e=cc.cos45,B0e=cc.sin45,iR=ly(),uy=iR.p2r,as=iR.r2p,H0e=Zl(),U0e=H0e.clearOutline,fy=ts(),G0e=fy.readPaths,V0e=fy.writePaths,Y0e=fy.ellipseOver,W0e=fy.fixDatesForPaths;function j0e(e,r){if(e.length){var t=e[0][0];if(t){var a=r.gd,n=r.isActiveShape,i=r.dragmode,o=(a.layout||{}).shapes||[];if(!z0e(i)&&n!==void 0){var l=a._fullLayout._activeShapeIndex;if(l{"use strict";var Z0e=xu(),X0e=Z0e.selectMode,J0e=Zl(),$0e=J0e.clearOutline,E5=ts(),K0e=E5.readPaths,Q0e=E5.writePaths,ede=E5.fixDatesForPaths;sR.exports=function(r,t){if(r.length){var a=r[0][0];if(a){var n=a.getAttribute("d"),i=t.gd,o=i._fullLayout.newselection,l=t.plotinfo,s=l.xaxis,u=l.yaxis,f=t.isActiveSelection,c=t.dragmode,v=(i.layout||{}).selections||[];if(!X0e(c)&&f!==void 0){var d=i._fullLayout._activeSelectionIndex;if(d{"use strict";uR.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var ns=N(Da=>{"use strict";var _u=qh(),fR=Le(),vy=zr();Da.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(r){return r}};Da.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(r){return r}};Da.decodeDate=function(e){return function(r){return r.replace&&(r=r.replace("_"," ")),e(r)}};Da.encodeDate=function(e){return function(r){return e(r).replace(" ","_")}};Da.extractPathCoords=function(e,r,t){var a=[],n=e.match(_u.segmentRE);return n.forEach(function(i){var o=r[i.charAt(0)].drawn;if(o!==void 0){var l=i.slice(1).match(_u.paramRE);if(!(!l||l.lengthd&&(y="X"),y});return u>d&&(p=p.replace(/[\s,]*X.*/,""),fR.log("Ignoring extra params in segment "+s)),f+p})}function Lh(e,r){r=r||0;var t=0;return r&&e&&(e.type==="category"||e.type==="multicategory")&&(t=(e.r2p(1)-e.r2p(0))*r),t}});var P5=N((ZRe,dR)=>{"use strict";var tde=Le(),vc=zr(),cR=Ea(),vR=Wr(),ade=ts().readPaths,R5=ns(),nde=R5.getPathString,hR=Lp(),ide=ja().FROM_TL;dR.exports=function(r,t,a,n){if(n.selectAll(".shape-label").remove(),!!(a.label.text||a.label.texttemplate)){var i;if(a.label.texttemplate){var o={};if(a.type!=="path"){var l=vc.getFromId(r,a.xref),s=vc.getFromId(r,a.yref);for(var u in hR){var f=hR[u](a,l,s);f!==void 0&&(o[u]=f)}}i=tde.texttemplateStringForShapes({data:[o],fallback:a.label.texttemplatefallback,locale:r._fullLayout._d3locale,template:a.label.texttemplate})}else i=a.label.text;var c={"data-index":t},v=a.label.font,d={"data-notex":1},p=n.append("g").attr(c).classed("shape-label",!0),y=p.append("text").attr(d).classed("shape-label-text",!0).text(i),m,x,w,_;if(a.path){var b=nde(r,a),T=ade(b,r);m=1/0,w=1/0,x=-1/0,_=-1/0;for(var k=0;k=e?n=r-a:n=a-r,-180/Math.PI*Math.atan2(n,i)}function lde(e,r,t,a,n,i,o){var l=n.label.textposition,s=n.label.textangle,u=n.label.padding,f=n.type,c=Math.PI/180*i,v=Math.sin(c),d=Math.cos(c),p=n.label.xanchor,y=n.label.yanchor,m,x,w,_;if(f==="line"){l==="start"?(m=e,x=r):l==="end"?(m=t,x=a):(m=(e+t)/2,x=(r+a)/2),p==="auto"&&(l==="start"?s==="auto"?t>e?p="left":te?p="right":te?p="right":te?p="left":t{"use strict";var sde=Le(),ude=sde.strTranslate,pR=pi(),gR=xu(),fde=gR.drawMode,bR=gR.selectMode,xR=br(),yR=Tr(),dy=oy(),cde=dy.i000,vde=dy.i090,hde=dy.i180,dde=dy.i270,pde=Zl(),_R=pde.clearOutlineControllers,N5=ts(),hy=N5.pointsOnRectangle,F5=N5.pointsOnEllipse,yde=N5.writePaths,mde=cy().newShapes,gde=cy().createShapeObj,bde=D5(),xde=P5();wR.exports=function e(r,t,a,n){n||(n=0);var i=a.gd;function o(){e(r,t,a,n++),(F5(r[0])||a.hasText)&&l({redrawing:!0})}function l(V){var H={};a.isActiveShape!==void 0&&(a.isActiveShape=!1,H=mde(t,a)),a.isActiveSelection!==void 0&&(a.isActiveSelection=!1,H=bde(t,a),i._fullLayout._reselect=!0),Object.keys(H).length&&xR.call((V||{}).redrawing?"relayout":"_guiRelayout",i,H)}var s=i._fullLayout,u=s._zoomlayer,f=a.dragmode,c=fde(f),v=bR(f);(c||v)&&(i._fullLayout._outlining=!0),_R(i),t.attr("d",yde(r));var d,p,y,m,x;if(!n&&(a.isActiveShape||a.isActiveSelection)){x=_de([],r);var w=u.append("g").attr("class","outline-controllers");D(w),Y()}if(c&&a.hasText){var _=u.select(".label-temp"),b=gde(t,a,a.dragmode);xde(i,"label-temp",b,_)}function T(V){y=+V.srcElement.getAttribute("data-i"),m=+V.srcElement.getAttribute("data-j"),d[y][m].moveFn=k}function k(V,H){if(r.length){var G=x[y][m][1],X=x[y][m][2],Z=r[y],ee=Z.length;if(hy(Z)){var fe=V,ie=H;if(a.isActiveSelection){var ue=mR(Z,m);ue[1]===Z[m][1]?ie=0:fe=0}for(var K=0;K1&&!(V.length===2&&V[1][0]==="Z")&&(m===0&&(V[0][0]="M"),r[y]=V,o(),l())}}function E(V,H){if(V===2){y=+H.srcElement.getAttribute("data-i"),m=+H.srcElement.getAttribute("data-j");var G=r[y];!hy(G)&&!F5(G)&&q()}}function D(V){d=[];for(var H=0;H{"use strict";var Tde=Sr(),qR=br(),TR=Le(),hc=zr(),Ade=ts().readPaths,Mde=py(),my=P5(),LR=Zl().clearOutlineControllers,z5=Tr(),O5=Wr(),kde=_t().arrayEditor,AR=pi(),MR=rs(),wu=qh(),Fn=ns(),I5=Fn.getPathString;DR.exports={draw:B5,drawOne:CR,eraseActiveShape:Lde,drawLabel:my};function B5(e){var r=e._fullLayout;r._shapeUpperLayer.selectAll("path").remove(),r._shapeLowerLayer.selectAll("path").remove(),r._shapeUpperLayer.selectAll("text").remove(),r._shapeLowerLayer.selectAll("text").remove();for(var t in r._plots){var a=r._plots[t].shapelayer;a&&(a.selectAll("path").remove(),a.selectAll("text").remove())}for(var n=0;no&&Ue>l&&!Ne.shiftKey?AR.getCursor(Be/Ie,1-Ce/Ue):"move";MR(r,Oe),_e=Oe.split("-")[0]}}function ce(Ne){yy(e)||(s&&(x=Z(t.xanchor)),u&&(w=ee(t.yanchor)),t.type==="path"?P=t.path:(d=s?t.x0:Z(t.x0),p=u?t.y0:ee(t.y0),y=s?t.x1:Z(t.x1),m=u?t.y1:ee(t.y1)),dm?(_=p,M="y0",b=m,q="y1"):(_=m,M="y1",b=p,q="y0"),oe(Ne),me(n,t),Pe(r,t,e),K.moveFn=_e==="move"?j:pe,K.altKey=Ne.altKey)}function W(){yy(e)||(MR(r),ye(n),ER(r,e,t),qR.call("_guiRelayout",e,i.getUpdateObj()))}function Q(){yy(e)||ye(n)}function j(Ne,Ee){if(t.type==="path"){var Ie=function(Ce){return Ce},Ue=Ie,Be=Ie;s?v("xanchor",t.xanchor=fe(x+Ne)):(Ue=function(Oe){return fe(Z(Oe)+Ne)},z&&z.type==="date"&&(Ue=Fn.encodeDate(Ue))),u?v("yanchor",t.yanchor=ie(w+Ee)):(Be=function(Oe){return ie(ee(Oe)+Ee)},B&&B.type==="date"&&(Be=Fn.encodeDate(Be))),v("path",t.path=kR(P,Ue,Be))}else s?v("xanchor",t.xanchor=fe(x+Ne)):(v("x0",t.x0=fe(d+Ne)),v("x1",t.x1=fe(y+Ne))),u?v("yanchor",t.yanchor=ie(w+Ee)):(v("y0",t.y0=ie(p+Ee)),v("y1",t.y1=ie(m+Ee)));r.attr("d",I5(e,t)),me(n,t),my(e,a,t,R)}function pe(Ne,Ee){if(c){var Ie=function(Ze){return Ze},Ue=Ie,Be=Ie;s?v("xanchor",t.xanchor=fe(x+Ne)):(Ue=function(or){return fe(Z(or)+Ne)},z&&z.type==="date"&&(Ue=Fn.encodeDate(Ue))),u?v("yanchor",t.yanchor=ie(w+Ee)):(Be=function(or){return ie(ee(or)+Ee)},B&&B.type==="date"&&(Be=Fn.encodeDate(Be))),v("path",t.path=kR(P,Ue,Be))}else if(f){if(_e==="resize-over-start-point"){var Ce=d+Ne,Oe=u?p-Ee:p+Ee;v("x0",t.x0=s?Ce:fe(Ce)),v("y0",t.y0=u?Oe:ie(Oe))}else if(_e==="resize-over-end-point"){var He=y+Ne,se=u?m-Ee:m+Ee;v("x1",t.x1=s?He:fe(He)),v("y1",t.y1=u?se:ie(se))}}else{var Ae=function(Ze){return _e.indexOf(Ze)!==-1},Xe=Ae("n"),hr=Ae("s"),Fe=Ae("w"),Te=Ae("e"),qe=Xe?_+Ee:_,Ge=hr?b+Ee:b,Je=Fe?T+Ne:T,Ve=Te?k+Ne:k;u&&(Xe&&(qe=_-Ee),hr&&(Ge=b-Ee)),(!u&&Ge-qe>l||u&&qe-Ge>l)&&(v(M,t[M]=u?qe:ie(qe)),v(q,t[q]=u?Ge:ie(Ge))),Ve-Je>o&&(v(E,t[E]=s?Je:fe(Je)),v(D,t[D]=s?Ve:fe(Ve)))}r.attr("d",I5(e,t)),me(n,t),my(e,a,t,R)}function me(Ne,Ee){(s||u)&&Ie();function Ie(){var Ue=Ee.type!=="path",Be=Ne.selectAll(".visual-cue").data([0]),Ce=1;Be.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":Ce}).classed("visual-cue",!0);var Oe=Z(s?Ee.xanchor:TR.midRange(Ue?[Ee.x0,Ee.x1]:Fn.extractPathCoords(Ee.path,wu.paramIsX))),He=ee(u?Ee.yanchor:TR.midRange(Ue?[Ee.y0,Ee.y1]:Fn.extractPathCoords(Ee.path,wu.paramIsY)));if(Oe=Fn.roundPositionForSharpStrokeRendering(Oe,Ce),He=Fn.roundPositionForSharpStrokeRendering(He,Ce),s&&u){var se="M"+(Oe-1-Ce)+","+(He-1-Ce)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Be.attr("d",se)}else if(s){var Ae="M"+(Oe-1-Ce)+","+(He-9-Ce)+"v18 h2 v-18 Z";Be.attr("d",Ae)}else{var Xe="M"+(Oe-9-Ce)+","+(He-1-Ce)+"h18 v2 h-18 Z";Be.attr("d",Xe)}}}function ye(Ne){Ne.selectAll(".visual-cue").remove()}function Pe(Ne,Ee,Ie){var Ue=Ee.xref,Be=Ee.yref,Ce=hc.getFromId(Ie,Ue),Oe=hc.getFromId(Ie,Be),He="";Ue!=="paper"&&!Ce.autorange&&(He+=Ue),Be!=="paper"&&!Oe.autorange&&(He+=Be),O5.setClipUrl(Ne,He?"clip"+Ie._fullLayout._uid+He:null,Ie)}}function kR(e,r,t){return e.replace(wu.segmentRE,function(a){var n=0,i=a.charAt(0),o=wu.paramIsX[i],l=wu.paramIsY[i],s=wu.numParams[i],u=a.slice(1).replace(wu.paramRE,function(f){return n>=s||(o[n]?f=r(f):l[n]&&(f=t(f)),n++),f});return i+u})}function qde(e,r){if(gy(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeShapeIndex){SR(e);return}e._fullLayout._activeShapeIndex=a,e._fullLayout._deactivateShape=SR,B5(e)}}}function SR(e){if(gy(e)){var r=e._fullLayout._activeShapeIndex;r>=0&&(LR(e),delete e._fullLayout._activeShapeIndex,B5(e))}}function Lde(e){if(gy(e)){LR(e);var r=e._fullLayout._activeShapeIndex,t=(e.layout||{}).shapes||[];if(r{"use strict";var gi=br(),RR=ta(),PR=la(),Xr=ny(),Cde=by().eraseActiveShape,xy=Le(),Hr=xy._,Jr=HR.exports={};Jr.toImage={name:"toImage",title:function(e){var r=e._context.toImageButtonOptions||{},t=r.format||"png";return t==="png"?Hr(e,"Download plot as a PNG"):Hr(e,"Download plot")},icon:Xr.camera,click:function(e){var r=e._context.toImageButtonOptions,t={format:r.format||"png"};xy.notifier(Hr(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(a){a in r&&(t[a]=r[a])}),gi.call("downloadImage",e,t).then(function(a){xy.notifier(Hr(e,"Snapshot succeeded")+" - "+a,"long")}).catch(function(){xy.notifier(Hr(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Jr.sendDataToCloud={name:"sendDataToCloud",title:function(e){return Hr(e,"Edit in Chart Studio")},icon:Xr.disk,click:function(e){RR.sendDataToCloud(e)}};Jr.editInChartStudio={name:"editInChartStudio",title:function(e){return Hr(e,"Edit in Chart Studio")},icon:Xr.pencil,click:function(e){RR.sendDataToCloud(e)}};Jr.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return Hr(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Xr.zoombox,click:ln};Jr.pan2d={name:"pan2d",_cat:"pan",title:function(e){return Hr(e,"Pan")},attr:"dragmode",val:"pan",icon:Xr.pan,click:ln};Jr.select2d={name:"select2d",_cat:"select",title:function(e){return Hr(e,"Box Select")},attr:"dragmode",val:"select",icon:Xr.selectbox,click:ln};Jr.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return Hr(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Xr.lasso,click:ln};Jr.drawclosedpath={name:"drawclosedpath",title:function(e){return Hr(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Xr.drawclosedpath,click:ln};Jr.drawopenpath={name:"drawopenpath",title:function(e){return Hr(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Xr.drawopenpath,click:ln};Jr.drawline={name:"drawline",title:function(e){return Hr(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Xr.drawline,click:ln};Jr.drawrect={name:"drawrect",title:function(e){return Hr(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Xr.drawrect,click:ln};Jr.drawcircle={name:"drawcircle",title:function(e){return Hr(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Xr.drawcircle,click:ln};Jr.eraseshape={name:"eraseshape",title:function(e){return Hr(e,"Erase active shape")},icon:Xr.eraseshape,click:Cde};Jr.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return Hr(e,"Zoom in")},attr:"zoom",val:"in",icon:Xr.zoom_plus,click:ln};Jr.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return Hr(e,"Zoom out")},attr:"zoom",val:"out",icon:Xr.zoom_minus,click:ln};Jr.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return Hr(e,"Autoscale")},attr:"zoom",val:"auto",icon:Xr.autoscale,click:ln};Jr.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return Hr(e,"Reset axes")},attr:"zoom",val:"reset",icon:Xr.home,click:ln};Jr.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return Hr(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Xr.tooltip_basic,gravity:"ne",click:ln};Jr.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return Hr(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Xr.tooltip_compare,gravity:"ne",click:ln};function ln(e,r){var t=r.currentTarget,a=t.getAttribute("data-attr"),n=t.getAttribute("data-val")||!0,i=e._fullLayout,o={},l=PR.list(e,null,!0),s=i._cartesianSpikesEnabled,u,f;if(a==="zoom"){var c=n==="in"?.5:2,v=(1+c)/2,d=(1-c)/2,p,y;for(f=0;f{"use strict";var UR=G5(),Rde=Object.keys(UR),GR=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],VR=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(GR),pc=[],Pde=function(e){if(VR.indexOf(e._cat||e.name)===-1){var r=e.name,t=(e._cat||e.name).toLowerCase();pc.indexOf(r)===-1&&pc.push(r),pc.indexOf(t)===-1&&pc.push(t)}};Rde.forEach(function(e){Pde(UR[e])});pc.sort();YR.exports={DRAW_MODES:GR,backButtons:VR,foreButtons:pc}});var Y5=N((ePe,WR)=>{"use strict";var QRe=V5();WR.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var ZR=N((rPe,jR)=>{"use strict";var Fde=Le(),Ch=Tr(),Nde=_t(),zde=Y5();jR.exports=function(r,t){var a=r.modebar||{},n=Nde.newContainer(t,"modebar");function i(l,s){return Fde.coerce(a,n,zde,l,s)}i("orientation"),i("bgcolor",Ch.addOpacity(t.paper_bgcolor,.5));var o=Ch.contrast(Ch.rgb(t.modebar.bgcolor));i("color",Ch.addOpacity(o,.3)),i("activecolor",Ch.addOpacity(o,.7)),i("uirevision",t.uirevision),i("add"),i("remove")}});var KR=N((tPe,$R)=>{"use strict";var W5=Sr(),Ide=Rr(),wy=Le(),XR=ny(),Ode=sp().version,Bde=new DOMParser;function JR(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Fo=JR.prototype;Fo.update=function(e,r){this.graphInfo=e;var t=this.graphInfo._context,a=this.graphInfo._fullLayout,n="modebar-"+a._uid;this.element.setAttribute("id",n),this.element.setAttribute("role","toolbar"),this._uid=n,this.element.className="modebar modebar--custom",t.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),a.modebar.orientation==="v"&&(this.element.className+=" vertical",r=r.reverse());var i=a.modebar,o="#"+n+" .modebar-group";document.querySelectorAll(o).forEach(function(c){c.style.backgroundColor=i.bgcolor});var l=!this.hasButtons(r),s=this.hasLogo!==t.displaylogo,u=this.locale!==t.locale;if(this.locale=t.locale,(l||s||u)&&(this.removeAllButtons(),this.updateButtons(r),t.watermark||t.displaylogo)){var f=this.getLogo();t.watermark&&(f.className=f.className+" watermark"),a.modebar.orientation==="v"?this.element.insertBefore(f,this.element.childNodes[0]):this.element.appendChild(f),this.hasLogo=!0}this.updateActiveButton(),wy.setStyleOnHover("#"+n+" .modebar-btn",".active",".icon path","fill: "+i.activecolor,"fill: "+i.color,this.element)};Fo.updateButtons=function(e){var r=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(t){var a=r.createGroup();t.forEach(function(n){var i=n.name;if(!i)throw new Error("must provide button 'name' in button config");if(r.buttonsNames.indexOf(i)!==-1)throw new Error("button name '"+i+"' is taken");r.buttonsNames.push(i);var o=r.createButton(n);r.buttonElements.push(o),a.appendChild(o)}),r.element.appendChild(a)})};Fo.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var r=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=r.bgcolor,e};Fo.createButton=function(e){var r=this,t=document.createElement("button");t.setAttribute("type","button"),t.setAttribute("rel","tooltip"),t.className="modebar-btn";var a=e.title;a===void 0?a=e.name:typeof a=="function"&&(a=a(this.graphInfo)),(a||a===0)&&(t.setAttribute("data-title",a),t.setAttribute("aria-label",a)),e.attr!==void 0&&t.setAttribute("data-attr",e.attr);var n=e.val;n!==void 0&&(typeof n=="function"&&(n=n(this.graphInfo)),t.setAttribute("data-val",n));var i=e.click;if(typeof i!="function")throw new Error("must provide button 'click' function in button config");t.addEventListener("click",function(l){e.click(r.graphInfo,l),r.updateActiveButton(l.currentTarget)}),t.setAttribute("data-toggle",e.toggle||!1),e.toggle&&W5.select(t).classed("active",!0);var o=e.icon;return typeof o=="function"?t.appendChild(o()):t.appendChild(this.createIcon(o||XR.question)),t.setAttribute("data-gravity",e.gravity||"n"),t};Fo.createIcon=function(e){var r=Ide(e.height)?Number(e.height):e.ascent-e.descent,t="http://www.w3.org/2000/svg",a;if(e.path){a=document.createElementNS(t,"svg"),a.setAttribute("viewBox",[0,0,e.width,r].join(" ")),a.setAttribute("class","icon");var n=document.createElementNS(t,"path");n.setAttribute("d",e.path),e.transform?n.setAttribute("transform",e.transform):e.ascent!==void 0&&n.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),a.appendChild(n)}if(e.svg){var i=Bde.parseFromString(e.svg,"application/xml");a=i.childNodes[0]}return a.setAttribute("height","1em"),a.setAttribute("width","1em"),a};Fo.updateActiveButton=function(e){var r=this.graphInfo._fullLayout,t=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(a){var n=a.getAttribute("data-val")||!0,i=a.getAttribute("data-attr"),o=a.getAttribute("data-toggle")==="true",l=W5.select(a),s=function(c,v){var d=r.modebar,p=c.querySelector(".icon path");p&&(v||c.matches(":hover")?p.style.fill=d.activecolor:p.style.fill=d.color)};if(o){if(i===t){var u=!l.classed("active");l.classed("active",u),s(a,u)}}else{var f=i===null?i:wy.nestedProperty(r,i).get();l.classed("active",f===n),s(a,f===n)}})};Fo.hasButtons=function(e){var r=this.buttons;if(!r||e.length!==r.length)return!1;for(var t=0;t{"use strict";var Gde=la(),QR=Dn(),j5=br(),Vde=qo().isUnifiedHover,Yde=KR(),Ty=G5(),Wde=V5().DRAW_MODES,jde=Le().extendDeep;eP.exports=function(r){var t=r._fullLayout,a=r._context,n=t._modeBar;if(!a.displayModeBar&&!a.watermark){n&&(n.destroy(),delete t._modeBar);return}if(!Array.isArray(a.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(a.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var i=a.modeBarButtons,o;Array.isArray(i)&&i.length?o=Qde(i):!a.displayModeBar&&a.watermark?o=[]:o=Zde(r),n?n.update(r,o):t._modeBar=Yde(r,o)};function Zde(e){var r=e._fullLayout,t=e._fullData,a=e._context;function n(H,G){if(typeof G=="string"){if(G.toLowerCase()===H.toLowerCase())return!0}else{var X=G.name,Z=G._cat||G.name;if(X===H||Z===H.toLowerCase())return!0}return!1}var i=r.modebar.add;typeof i=="string"&&(i=[i]);var o=r.modebar.remove;typeof o=="string"&&(o=[o]);var l=a.modeBarButtonsToAdd.concat(i.filter(function(H){for(var G=0;G1?(D=["toggleHover"],P=["resetViews"]):c?(E=["zoomInGeo","zoomOutGeo"],D=["hoverClosestGeo"],P=["resetGeo"]):f?(D=["hoverClosest3d"],P=["resetCameraDefault3d","resetCameraLastSave3d"]):y?(E=["zoomInMapbox","zoomOutMapbox"],D=["toggleHover"],P=["resetViewMapbox"]):m?(E=["zoomInMap","zoomOutMap"],D=["toggleHover"],P=["resetViewMap"]):v?D=["hoverClosestPie"]:_?(D=["hoverClosestCartesian","hoverCompareCartesian"],P=["resetViewSankey"]):D=["toggleHover"],u&&D.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),($de(t)||T)&&(D=[]),u&&!b&&(E=["zoomIn2d","zoomOut2d","autoScale2d"],P[0]!=="resetViews"&&(P=["resetScale2d"])),f?R=["zoom3d","pan3d","orbitRotation","tableRotation"]:u&&!b||p?R=["zoom2d","pan2d"]:y||m||c?R=["pan2d"]:x&&(R=["zoom2d"]),Jde(t)&&R.push("select2d","lasso2d");var z=[],O=function(H){z.indexOf(H)===-1&&D.indexOf(H)!==-1&&z.push(H)};if(Array.isArray(l)){for(var B=[],Y=0;Y{"use strict";tP.exports={moduleType:"component",name:"modebar",layoutAttributes:Y5(),supplyLayoutDefaults:ZR(),manage:rP()}});var X5=N((iPe,aP)=>{"use strict";var epe=ja().FROM_BL;aP.exports=function(r,t,a){a===void 0&&(a=epe[r.constraintoward||"center"]);var n=[r.r2l(r.range[0]),r.r2l(r.range[1])],i=n[0]+(n[1]-n[0])*a;r.range=r._input.range=[r.l2r(i+(n[0]-i)*t),r.l2r(i+(n[1]-i)*t)],r.setScale()}});var Au=N(Eh=>{"use strict";var Tu=Le(),J5=mh(),io=la().id2name,rpe=hi(),nP=X5(),tpe=Kf(),ape=It().ALMOST_EQUAL,npe=ja().FROM_BL;Eh.handleDefaults=function(e,r,t){var a=t.axIds,n=t.axHasImage,i=r._axisConstraintGroups=[],o=r._axisMatchGroups=[],l,s,u,f,c,v,d,p;for(l=0;li?t.slice(i):a.slice(n))+o}function ope(e,r){for(var t=r._size,a=t.h/t.w,n={},i=Object.keys(e),o=0;oape*p&&!w)){for(i=0;iR&&XD&&(D=X);var ee=(D-E)/(2*P);c/=ee,E=s.l2r(E),D=s.l2r(D),s.range=s._input.range=k{"use strict";var My=Sr(),sn=br(),Kn=ta(),bi=Le(),Q5=Ea(),e_=ay(),Dh=Tr(),yc=Wr(),sP=$f(),hP=Z5(),Rh=zr(),pl=ja(),dP=Au(),lpe=dP.enforce,spe=dP.clean,uP=mh().doAutoRange,pP="start",upe="middle",yP="end",fpe=Ca().zindexSeparator;Ma.layoutStyles=function(e){return bi.syncOrAsync([Kn.doAutoMargin,vpe],e)};function cpe(e,r,t){for(var a=0;a=e[1]||n[1]<=e[0])&&i[0]r[0])return!0}return!1}function vpe(e){var r=e._fullLayout,t=r._size,a=t.p,n=Rh.list(e,"",!0),i,o,l,s,u,f;if(r._paperdiv.style({width:e._context.responsive&&r.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":r.width+"px",height:e._context.responsive&&r.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":r.height+"px"}).selectAll(".main-svg").call(yc.setSize,r.width,r.height),e._context.setBackground(e,r.paper_bgcolor),Ma.drawMainTitle(e),hP.manage(e),!r._has("cartesian"))return Kn.previousPromises(e);function c(ce,W,Q){var j=ce._lw/2;if(ce._id.charAt(0)==="x"){if(W){if(Q==="top")return W._offset-a-j}else return t.t+t.h*(1-(ce.position||0))+j%1;return W._offset+W._length+a+j}if(W){if(Q==="right")return W._offset+W._length+a+j}else return t.l+t.w*(ce.position||0)+j%1;return W._offset-a-j}for(i=0;i0){ype(e,i,u,s),l.attr({x:o,y:i,"text-anchor":a,dy:vP(r.yanchor)}).call(Q5.positionText,o,i);var f=(r.text.match(Q5.BR_TAG_ALL)||[]).length;if(f){var c=pl.LINE_SPACING*f+pl.MID_SHIFT;r.y===0&&(c=-c),l.selectAll(".line").each(function(){var m=+this.getAttribute("dy").slice(0,-2)-c+"em";this.setAttribute("dy",m)})}var v=My.select(e).selectAll(".gtitle-subtitle");if(v.node()){var d=l.node().getBBox(),p=d.y+d.height,y=p+sP.SUBTITLE_PADDING_EM*r.subtitle.font.size;v.attr({x:o,y,"text-anchor":a,dy:vP(r.yanchor)}).call(Q5.positionText,o,y)}}}};function hpe(e,r,t,a,n){var i=r.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,o=bi.isTopAnchor(r)?a:a-n,l=t==="b"?i-o:o;return bi.isTopAnchor(r)&&t==="t"||bi.isBottomAnchor(r)&&t==="b"?!1:l.5?"t":"b",o=e._fullLayout.margin[i],l=0;return r.yref==="paper"?l=t+r.pad.t+r.pad.b:r.yref==="container"&&(l=dpe(i,a,n,e._fullLayout.height,t)+r.pad.t+r.pad.b),l>o?l:0}function ype(e,r,t,a){var n="title.automargin",i=e._fullLayout.title,o=i.y>.5?"t":"b",l={x:i.x,y:i.y,t:0,b:0},s={};i.yref==="paper"&&hpe(e,i,o,r,a)?l[o]=t:i.yref==="container"&&(s[o]=t,e._fullLayout._reservedMargin[n]=s),Kn.allowAutoMargin(e,n),Kn.autoMargin(e,n,l)}function mpe(e,r){var t=e.title,a=e._size,n=0;switch(r===pP?n=t.pad.l:r===yP&&(n=-t.pad.r),t.xref){case"paper":return a.l+a.w*t.x+n;case"container":default:return e.width*t.x+n}}function gpe(e,r){var t=e.title,a=e._size,n=0;if(r==="0em"||!r?n=-t.pad.b:r===pl.CAP_SHIFT+"em"&&(n=t.pad.t),t.y==="auto")return a.t/2;switch(t.yref){case"paper":return a.t+a.h-a.h*t.y+n;case"container":default:return e.height-e.height*t.y+n}}function vP(e){return e==="top"?pl.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":pl.MID_SHIFT+"em"}function bpe(e){var r=e.title,t=upe;return bi.isRightAnchor(r)?t=yP:bi.isLeftAnchor(r)&&(t=pP),t}function xpe(e){var r=e.title,t="0em";return bi.isTopAnchor(r)?t=pl.CAP_SHIFT+"em":bi.isMiddleAnchor(r)&&(t=pl.MID_SHIFT+"em"),t}Ma.doTraceStyle=function(e){var r=e.calcdata,t=[],a;for(a=0;a{"use strict";var _pe=ts().readPaths,wpe=py(),mP=Zl().clearOutlineControllers,r_=Tr(),gP=Wr(),Tpe=_t().arrayEditor,bP=ns(),Ape=bP.getPathString;_P.exports={draw:Sy,drawOne:xP,activateLastSelection:Spe};function Sy(e){var r=e._fullLayout;mP(e),r._selectionLayer.selectAll("path").remove();for(var t in r._plots){var a=r._plots[t].selectionLayer;a&&a.selectAll("path").remove()}for(var n=0;n=0;m--){var x=o.append("path").attr(s).style("opacity",m?.1:u).call(r_.stroke,c).call(r_.fill,f).call(gP.dashLine,m?"solid":d,m?4+v:v);if(Mpe(x,e,a),p){var w=Tpe(e.layout,"selections",a);x.style({cursor:"move"});var _={element:x.node(),plotinfo:n,gd:e,editHelpers:w,isActiveSelection:!0},b=_pe(l,e);wpe(b,x,_)}else x.style("pointer-events",m?"all":"none");y[m]=x}var T=y[0],k=y[1];k.node().addEventListener("click",function(){return kpe(e,T)})}}function Mpe(e,r,t){var a=t.xref+t.yref;gP.setClipUrl(e,"clip"+r._fullLayout._uid+a,r)}function kpe(e,r){if(qy(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeSelectionIndex){t_(e);return}e._fullLayout._activeSelectionIndex=a,e._fullLayout._deactivateSelection=t_,Sy(e)}}}function Spe(e){if(qy(e)){var r=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=r,e._fullLayout._deactivateSelection=t_,Sy(e)}}function t_(e){if(qy(e)){var r=e._fullLayout._activeSelectionIndex;r>=0&&(mP(e),delete e._fullLayout._activeSelectionIndex,Sy(e))}}});var TP=N((uPe,wP)=>{function qpe(){var e,r=0,t=!1;function a(n,i){return e.list.push({type:n,data:i?JSON.parse(JSON.stringify(i)):void 0}),e}return e={list:[],segmentId:function(){return r++},checkIntersection:function(n,i){return a("check",{seg1:n,seg2:i})},segmentChop:function(n,i){return a("div_seg",{seg:n,pt:i}),a("chop",{seg:n,pt:i})},statusRemove:function(n){return a("pop_seg",{seg:n})},segmentUpdate:function(n){return a("seg_update",{seg:n})},segmentNew:function(n,i){return a("new_seg",{seg:n,primary:i})},segmentRemove:function(n){return a("rem_seg",{seg:n})},tempStatus:function(n,i,o){return a("temp_status",{seg:n,above:i,below:o})},rewind:function(n){return a("rewind",{seg:n})},status:function(n,i,o){return a("status",{seg:n,above:i,below:o})},vert:function(n){return n===t?e:(t=n,a("vert",{x:n}))},log:function(n){return typeof n!="string"&&(n=JSON.stringify(n,!1," ")),a("log",{txt:n})},reset:function(){return a("reset")},selected:function(n){return a("selected",{segs:n})},chainStart:function(n){return a("chain_start",{seg:n})},chainRemoveHead:function(n,i){return a("chain_rem_head",{index:n,pt:i})},chainRemoveTail:function(n,i){return a("chain_rem_tail",{index:n,pt:i})},chainNew:function(n,i){return a("chain_new",{pt1:n,pt2:i})},chainMatch:function(n){return a("chain_match",{index:n})},chainClose:function(n){return a("chain_close",{index:n})},chainAddHead:function(n,i){return a("chain_add_head",{index:n,pt:i})},chainAddTail:function(n,i){return a("chain_add_tail",{index:n,pt:i})},chainConnect:function(n,i){return a("chain_con",{index1:n,index2:i})},chainReverse:function(n){return a("chain_rev",{index:n})},chainJoin:function(n,i){return a("chain_join",{index1:n,index2:i})},done:function(){return a("done")}},e}wP.exports=qpe});var MP=N((fPe,AP)=>{function Lpe(e){typeof e!="number"&&(e=1e-10);var r={epsilon:function(t){return typeof t=="number"&&(e=t),e},pointAboveOrOnLine:function(t,a,n){var i=a[0],o=a[1],l=n[0],s=n[1],u=t[0],f=t[1];return(l-i)*(f-o)-(s-o)*(u-i)>=-e},pointBetween:function(t,a,n){var i=t[1]-a[1],o=n[0]-a[0],l=t[0]-a[0],s=n[1]-a[1],u=l*o+i*s;if(u-e)},pointsSameX:function(t,a){return Math.abs(t[0]-a[0])e!=l-i>e&&(o-f)*(i-c)/(l-c)+f-n>e&&(s=!s),o=f,l=c}return s}};return r}AP.exports=Lpe});var SP=N((cPe,kP)=>{var Cpe={create:function(){var e={root:{root:!0,next:null},exists:function(r){return!(r===null||r===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(r,t){for(var a=e.root,n=e.root.next;n!==null;){if(t(n)){r.prev=n.prev,r.next=n,n.prev.next=r,n.prev=r;return}a=n,n=n.next}a.next=r,r.prev=a,r.next=null},findTransition:function(r){for(var t=e.root,a=e.root.next;a!==null&&!r(a);)t=a,a=a.next;return{before:t===e.root?null:t,after:a,insert:function(n){return n.prev=t,n.next=a,t.next=n,a!==null&&(a.prev=n),n}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};kP.exports=Cpe});var LP=N((vPe,qP)=>{var Ph=SP();function Epe(e,r,t){function a(p,y){return{id:t?t.segmentId():-1,start:p,end:y,myFill:{above:null,below:null},otherFill:null}}function n(p,y,m){return{id:t?t.segmentId():-1,start:p,end:y,myFill:{above:m.myFill.above,below:m.myFill.below},otherFill:null}}var i=Ph.create();function o(p,y,m,x,w,_){var b=r.pointsCompare(y,w);return b!==0?b:r.pointsSame(m,_)?0:p!==x?p?1:-1:r.pointAboveOrOnLine(m,x?w:_,x?_:w)?1:-1}function l(p,y){i.insertBefore(p,function(m){var x=o(p.isStart,p.pt,y,m.isStart,m.pt,m.other.pt);return x<0})}function s(p,y){var m=Ph.node({isStart:!0,pt:p.start,seg:p,primary:y,other:null,status:null});return l(m,p.end),m}function u(p,y,m){var x=Ph.node({isStart:!1,pt:y.end,seg:y,primary:m,other:p,status:null});p.other=x,l(x,p.pt)}function f(p,y){var m=s(p,y);return u(m,p,y),m}function c(p,y){t&&t.segmentChop(p.seg,y),p.other.remove(),p.seg.end=y,p.other.pt=y,l(p.other,p.pt)}function v(p,y){var m=n(y,p.seg.end,p.seg);return c(p,y),f(m,p.primary)}function d(p,y){var m=Ph.create();function x(B,Y){var V=B.seg.start,H=B.seg.end,G=Y.seg.start,X=Y.seg.end;return r.pointsCollinear(V,G,X)?r.pointsCollinear(H,G,X)||r.pointAboveOrOnLine(H,G,X)?1:-1:r.pointAboveOrOnLine(V,G,X)?1:-1}function w(B){return m.findTransition(function(Y){var V=x(B,Y.ev);return V>0})}function _(B,Y){var V=B.seg,H=Y.seg,G=V.start,X=V.end,Z=H.start,ee=H.end;t&&t.checkIntersection(V,H);var fe=r.linesIntersect(G,X,Z,ee);if(fe===!1){if(!r.pointsCollinear(G,X,Z)||r.pointsSame(G,ee)||r.pointsSame(X,Z))return!1;var ie=r.pointsSame(G,Z),ue=r.pointsSame(X,ee);if(ie&&ue)return Y;var K=!ie&&r.pointBetween(G,Z,ee),_e=!ue&&r.pointBetween(X,Z,ee);if(ie)return _e?v(Y,X):v(B,ee),Y;K&&(ue||(_e?v(Y,X):v(B,ee)),v(Y,G))}else fe.alongA===0&&(fe.alongB===-1?v(B,Z):fe.alongB===0?v(B,fe.pt):fe.alongB===1&&v(B,ee)),fe.alongB===0&&(fe.alongA===-1?v(Y,G):fe.alongA===0?v(Y,fe.pt):fe.alongA===1&&v(Y,X));return!1}for(var b=[];!i.isEmpty();){var T=i.getHead();if(t&&t.vert(T.pt[0]),T.isStart){let B=function(){if(M){var Y=_(T,M);if(Y)return Y}return q?_(T,q):!1};var O=B;t&&t.segmentNew(T.seg,T.primary);var k=w(T),M=k.before?k.before.ev:null,q=k.after?k.after.ev:null;t&&t.tempStatus(T.seg,M?M.seg:!1,q?q.seg:!1);var E=B();if(E){if(e){var D;T.seg.myFill.below===null?D=!0:D=T.seg.myFill.above!==T.seg.myFill.below,D&&(E.seg.myFill.above=!E.seg.myFill.above)}else E.seg.otherFill=T.seg.myFill;t&&t.segmentUpdate(E.seg),T.other.remove(),T.remove()}if(i.getHead()!==T){t&&t.rewind(T.seg);continue}if(e){var D;T.seg.myFill.below===null?D=!0:D=T.seg.myFill.above!==T.seg.myFill.below,q?T.seg.myFill.below=q.seg.myFill.above:T.seg.myFill.below=p,D?T.seg.myFill.above=!T.seg.myFill.below:T.seg.myFill.above=T.seg.myFill.below}else if(T.seg.otherFill===null){var P;q?T.primary===q.primary?P=q.seg.otherFill.above:P=q.seg.myFill.above:P=T.primary?y:p,T.seg.otherFill={above:P,below:P}}t&&t.status(T.seg,M?M.seg:!1,q?q.seg:!1),T.other.status=k.insert(Ph.node({ev:T}))}else{var R=T.status;if(R===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(m.exists(R.prev)&&m.exists(R.next)&&_(R.prev.ev,R.next.ev),t&&t.statusRemove(R.ev.seg),R.remove(),!T.primary){var z=T.seg.myFill;T.seg.myFill=T.seg.otherFill,T.seg.otherFill=z}b.push(T.seg)}i.getHead().remove()}return t&&t.done(),b}return e?{addRegion:function(p){for(var y,m=p[p.length-1],x=0;x{function Dpe(e,r,t){var a=[],n=[];return e.forEach(function(i){var o=i.start,l=i.end;if(r.pointsSame(o,l)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}t&&t.chainStart(i);var s={index:0,matches_head:!1,matches_pt1:!1},u={index:0,matches_head:!1,matches_pt1:!1},f=s;function c(O,B,Y){return f.index=O,f.matches_head=B,f.matches_pt1=Y,f===s?(f=u,!1):(f=null,!0)}for(var v=0;v{function Fh(e,r,t){var a=[];return e.forEach(function(n){var i=(n.myFill.above?8:0)+(n.myFill.below?4:0)+(n.otherFill&&n.otherFill.above?2:0)+(n.otherFill&&n.otherFill.below?1:0);r[i]!==0&&a.push({id:t?t.segmentId():-1,start:n.start,end:n.end,myFill:{above:r[i]===1,below:r[i]===2},otherFill:null})}),t&&t.selected(a),a}var Rpe={union:function(e,r){return Fh(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],r)},intersect:function(e,r){return Fh(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],r)},difference:function(e,r){return Fh(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],r)},differenceRev:function(e,r){return Fh(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],r)},xor:function(e,r){return Fh(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],r)}};DP.exports=Rpe});var FP=N((pPe,PP)=>{var Ppe={toPolygon:function(e,r){function t(i){if(i.length<=0)return e.segments({inverted:!1,regions:[]});function o(u){var f=u.slice(0,u.length-1);return e.segments({inverted:!1,regions:[f]})}for(var l=o(i[0]),s=1;s{var Fpe=TP(),Npe=MP(),NP=LP(),zpe=EP(),Nh=RP(),zP=FP(),xi=!1,zh=Npe(),Nn;Nn={buildLog:function(e){return e===!0?xi=Fpe():e===!1&&(xi=!1),xi===!1?!1:xi.list},epsilon:function(e){return zh.epsilon(e)},segments:function(e){var r=NP(!0,zh,xi);return e.regions.forEach(r.addRegion),{segments:r.calculate(e.inverted),inverted:e.inverted}},combine:function(e,r){var t=NP(!1,zh,xi);return{combined:t.calculate(e.segments,e.inverted,r.segments,r.inverted),inverted1:e.inverted,inverted2:r.inverted}},selectUnion:function(e){return{segments:Nh.union(e.combined,xi),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:Nh.intersect(e.combined,xi),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:Nh.difference(e.combined,xi),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:Nh.differenceRev(e.combined,xi),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:Nh.xor(e.combined,xi),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:zpe(e.segments,zh,xi),inverted:e.inverted}},polygonFromGeoJSON:function(e){return zP.toPolygon(Nn,e)},polygonToGeoJSON:function(e){return zP.fromPolygon(Nn,zh,e)},union:function(e,r){return Ih(e,r,Nn.selectUnion)},intersect:function(e,r){return Ih(e,r,Nn.selectIntersect)},difference:function(e,r){return Ih(e,r,Nn.selectDifference)},differenceRev:function(e,r){return Ih(e,r,Nn.selectDifferenceRev)},xor:function(e,r){return Ih(e,r,Nn.selectXor)}};function Ih(e,r,t){var a=Nn.segments(e),n=Nn.segments(r),i=Nn.combine(a,n),o=t(i);return Nn.polygon(o)}typeof window=="object"&&(window.PolyBool=Nn);IP.exports=Nn});var HP=N((mPe,BP)=>{BP.exports=function(r,t,a,n){var i=r[0],o=r[1],l=!1;a===void 0&&(a=0),n===void 0&&(n=t.length);for(var s=n-a,u=0,f=s-1;uo!=p>o&&i<(d-c)*(o-v)/(p-v)+c;y&&(l=!l)}return l}});var i_=N((gPe,UP)=>{"use strict";var n_=kp().dot,Ly=It().BADNUM,Cy=UP.exports={};Cy.tester=function(r){var t=r.slice(),a=t[0][0],n=a,i=t[0][1],o=i,l;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),l=1;ln||x===Ly||xo||y&&u(p))}function c(p,y){var m=p[0],x=p[1];if(m===Ly||mn||x===Ly||xo)return!1;var w=t.length,_=t[0][0],b=t[0][1],T=0,k,M,q,E,D;for(k=1;kMath.max(M,_)||x>Math.max(q,b)))if(xl||Math.abs(n_(c,u))>n)return!0;return!1};Cy.filter=function(r,t){var a=[r[0]],n=0,i=0;function o(s){r.push(s);var u=a.length,f=n;a.splice(i+1);for(var c=f+1;c1){var l=r.pop();o(l)}return{addPt:o,raw:r,filtered:a}}});var VP=N((bPe,GP)=>{"use strict";GP.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var vF=N((xPe,cF)=>{"use strict";var YP=OP(),Ipe=HP(),Hh=br(),Ope=Wr().dashStyle,Oh=Tr(),Bpe=Pn(),Hpe=qo().makeEventData,Wh=xu(),Upe=Wh.freeMode,Gpe=Wh.rectMode,Uh=Wh.drawMode,u_=Wh.openMode,f_=Wh.selectMode,WP=ns(),jP=qh(),KP=py(),QP=Zl().clearOutline,eF=ts(),o_=eF.handleEllipse,Vpe=eF.readPaths,Ype=cy().newShapes,Wpe=D5(),jpe=a_().activateLastSelection,Dy=Le(),Zpe=Dy.sorterAsc,rF=i_(),Bh=Ip(),_i=la().getFromId,Xpe=ay(),Jpe=ky().redrawReglTraces,Ry=VP(),No=Ry.MINSELECT,$pe=rF.filter,c_=rF.tester,v_=ly(),ZP=v_.p2r,Kpe=v_.axValue,Qpe=v_.getTransform;function h_(e){return e.subplot!==void 0}function e1e(e,r,t,a,n){var i=!h_(a),o=Upe(n),l=Gpe(n),s=u_(n),u=Uh(n),f=f_(n),c=n==="drawline",v=n==="drawcircle",d=c||v,p=a.gd,y=p._fullLayout,m=f&&y.newselection.mode==="immediate"&&i,x=y._zoomlayer,w=a.element.getBoundingClientRect(),_=a.plotinfo,b=Qpe(_),T=r-w.left,k=t-w.top;y._calcInverseTransform(p);var M=Dy.apply3DTransform(y._invTransform)(T,k);T=M[0],k=M[1];var q=y._invScaleX,E=y._invScaleY,D=T,P=k,R="M"+T+","+k,z=a.xaxes[0],O=a.yaxes[0],B=z._length,Y=O._length,V=e.altKey&&!(Uh(n)&&s),H,G,X,Z,ee,fe,ie;aF(e,p,a),o&&(H=$pe([[T,k]],Ry.BENDPX));var ue=x.selectAll("path.select-outline-"+_.id).data([1]),K=u?y.newshape:y.newselection;u&&(a.hasText=K.label.text||K.label.texttemplate);var _e=u&&!s?K.fillcolor:"rgba(0,0,0,0)",le=K.line.color||(i?Oh.contrast(p._fullLayout.plot_bgcolor):"#7f7f7f");ue.enter().append("path").attr("class","select-outline select-outline-"+_.id).style({opacity:u?K.opacity/2:1,"stroke-dasharray":Ope(K.line.dash,K.line.width),"stroke-width":K.line.width+"px","shape-rendering":"crispEdges"}).call(Oh.stroke,le).call(Oh.fill,_e).attr("fill-rule","evenodd").classed("cursor-move",!!u).attr("transform",b).attr("d",R+"Z");var he=x.append("path").attr("class","zoombox-corners").style({fill:Oh.background,stroke:Oh.defaultLine,"stroke-width":1}).attr("transform",b).attr("d","M0,0Z");if(u&&a.hasText){var oe=x.select(".label-temp");oe.empty()&&(oe=x.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var ce=y._uid+Ry.SELECTID,W=[],Q=Py(p,a.xaxes,a.yaxes,a.subplot);m&&!e.shiftKey&&(a._clearSubplotSelections=function(){if(i){var pe=z._id,me=O._id;sF(p,pe,me,Q);for(var ye=(p.layout||{}).selections||[],Pe=[],Ne=!1,Ee=0;Ee=0){p._fullLayout._deactivateShape(p);return}if(!u){var ye=y.clickmode;Bh.done(ce).then(function(){if(Bh.clear(ce),pe===2){for(ue.remove(),ee=0;ee-1&&tF(me,p,a.xaxes,a.yaxes,a.subplot,a,ue),ye==="event"&&Yh(p,void 0);Bpe.click(p,me,_.id)}).catch(Dy.error)}},a.doneFn=function(){he.remove(),Bh.done(ce).then(function(){Bh.clear(ce),!m&&Z&&a.selectionDefs&&(Z.subtract=V,a.selectionDefs.push(Z),a.mergedPolygons.length=0,[].push.apply(a.mergedPolygons,X)),(m||u)&&Gh(a,m),a.doneFnCompleted&&a.doneFnCompleted(W),f&&Yh(p,ie)}).catch(Dy.error)}}function tF(e,r,t,a,n,i,o){var l=r._hoverdata,s=r._fullLayout,u=s.clickmode,f=u.indexOf("event")>-1,c=[],v,d,p,y,m,x,w,_,b,T;if(i1e(l)){aF(e,r,i),v=Py(r,t,a,n);var k=o1e(l,v),M=k.pointNumbers.length>0;if(M?l1e(v,k):s1e(v)&&(w=JP(k))){for(o&&o.remove(),T=0;T=0}function n1e(e){return e._fullLayout._activeSelectionIndex>=0}function Gh(e,r){var t=e.dragmode,a=e.plotinfo,n=e.gd;a1e(n)&&n._fullLayout._deactivateShape(n),n1e(n)&&n._fullLayout._deactivateSelection(n);var i=n._fullLayout,o=i._zoomlayer,l=Uh(t),s=f_(t);if(l||s){var u=o.selectAll(".select-outline-"+a.id);if(u&&n._fullLayout._outlining){var f;l&&(f=Ype(u,e)),f&&Hh.call("_guiRelayout",n,{shapes:f});var c;s&&!h_(e)&&(c=Wpe(u,e)),c&&(n._fullLayout._noEmitSelectedAtStart=!0,Hh.call("_guiRelayout",n,{selections:c}).then(function(){r&&jpe(n)})),n._fullLayout._outlining=!1}}a.selection={},a.selection.selectionDefs=e.selectionDefs=[],a.selection.mergedPolygons=e.mergedPolygons=[]}function XP(e){return e._id}function Py(e,r,t,a){if(!e.calcdata)return[];var n=[],i=r.map(XP),o=t.map(XP),l,s,u;for(u=0;u0,i=n?a[0]:t;return r.selectedpoints?r.selectedpoints.indexOf(i)>-1:!1}function l1e(e,r){var t=[],a,n,i,o;for(o=0;o0&&t.push(a);if(t.length===1&&(i=t[0]===r.searchInfo,i&&(n=r.searchInfo.cd[0].trace,n.selectedpoints.length===r.pointNumbers.length))){for(o=0;o1||(r+=a.selectedpoints.length,r>1)))return!1;return r===1}function Vh(e,r,t){var a;for(a=0;a-1&&r;if(!o&&r){var pe=$P(e,!0);if(pe.length){var me=pe[0].xref,ye=pe[0].yref;if(me&&ye){var Pe=uF(pe),Ne=fF([_i(e,me,"x"),_i(e,ye,"y")]);Ne(W,Pe)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:j&&Yh(e,W),v._reselect=!1}if(!o&&v._deselect){var Ee=v._deselect;l=Ee.xref,s=Ee.yref,c1e(l,s,f)||sF(e,l,s,a),j&&(W.points.length?Yh(e,W):y_(e)),v._deselect=!1}return{eventData:W,selectionTesters:t}}function f1e(e){var r=e.calcdata;if(r)for(var t=0;t{"use strict";hF.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var jh=N((wPe,dF)=>{"use strict";dF.exports={axisRefDescription:function(e,r,t){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",r,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",r,"("+t+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",r,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",r,"and the",t,"of the domain of the","second",e,"axis."].join(" ")}}});var mc=N((APe,mF)=>{"use strict";var pF=m_(),yF=ma(),Fy=Ca(),y1e=_t().templatedArray,TPe=jh();mF.exports=y1e("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:yF({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:pF.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:pF.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",Fy.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",Fy.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",Fy.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",Fy.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:yF({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Zh=N((MPe,gF)=>{"use strict";gF.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var Ny=N((kPe,bF)=>{"use strict";bF.exports=function(r){return{valType:"color",editType:"style",anim:!0}}});var wi=N((SPe,kF)=>{"use strict";var xF=ro().axisHoverFormat,{hovertemplateAttrs:m1e,texttemplateAttrs:g1e,templatefallbackAttrs:_F}=Yn(),wF=ko(),b1e=ma(),x1e=ui().dash,_1e=ui().pattern,w1e=Wr(),T1e=Zh(),zy=bt().extendFlat,A1e=Ny();function TF(e){return{valType:"any",dflt:0,editType:"calc"}}function AF(e){return{valType:"any",editType:"calc"}}function MF(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}kF.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:TF("x"),yperiod:TF("y"),xperiod0:AF("x0"),yperiod0:AF("y0"),xperiodalignment:MF("x"),yperiodalignment:MF("y"),xhoverformat:xF("x"),yhoverformat:xF("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:g1e(),texttemplatefallback:_F({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:m1e({},{keys:T1e.eventDataKeys}),hovertemplatefallback:_F(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:zy({},x1e,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:A1e(!0),fillgradient:zy({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:_1e,marker:zy({symbol:{valType:"enumerated",values:w1e.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:zy({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},wF("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},wF("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:b1e({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var g_=N((LPe,LF)=>{"use strict";var SF=mc(),qF=wi().line,M1e=ui().dash,Iy=bt().extendFlat,k1e=$i().overrideAll,S1e=_t().templatedArray,qPe=jh();LF.exports=k1e(S1e("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:Iy({},SF.xref,{}),yref:Iy({},SF.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:qF.color,width:Iy({},qF.width,{min:1,dflt:1}),dash:Iy({},M1e,{dflt:"dot"})}}),"arraydraw","from-root")});var RF=N((CPe,DF)=>{"use strict";var CF=Le(),Oy=zr(),q1e=to(),L1e=g_(),EF=ns();DF.exports=function(r,t){q1e(r,t,{name:"selections",handleItemDefaults:C1e});for(var a=t.selections,n=0;n{"use strict";PF.exports=function(r,t,a){a("newselection.mode");var n=a("newselection.line.width");n&&(a("newselection.line.color"),a("newselection.line.dash")),a("activeselection.fillcolor"),a("activeselection.opacity")}});var Xh=N((DPe,IF)=>{"use strict";var E1e=br(),NF=Le(),zF=la();IF.exports=function(r){return function(a,n){var i=a[r];if(Array.isArray(i))for(var o=E1e.subplotsRegistry.cartesian,l=o.idRegex,s=n._subplots,u=s.xaxis,f=s.yaxis,c=s.cartesian,v=n._has("cartesian"),d=0;d{"use strict";var OF=a_(),Jh=vF();BF.exports={moduleType:"component",name:"selections",layoutAttributes:g_(),supplyLayoutDefaults:RF(),supplyDrawNewSelectionDefaults:FF(),includeBasePlot:Xh()("selections"),draw:OF.draw,drawOne:OF.drawOne,reselect:Jh.reselect,prepSelect:Jh.prepSelect,clearOutline:Jh.clearOutline,clearSelectionsCache:Jh.clearSelectionsCache,selectOnClick:Jh.selectOnClick}});var lN=N((PPe,oN)=>{"use strict";var T_=Sr(),Ti=Le(),HF=Ti.numberFormat,D1e=kn(),R1e=n5(),By=br(),JF=Ti.strTranslate,P1e=Ea(),UF=Tr(),os=Wr(),F1e=Pn(),GF=zr(),N1e=rs(),z1e=pi(),$F=xu(),Hy=$F.selectingOrDrawing,I1e=$F.freeMode,O1e=ja().FROM_TL,B1e=ay(),H1e=ky().redrawReglTraces,U1e=ta(),x_=la().getFromId,G1e=zo().prepSelect,V1e=zo().clearOutline,Y1e=zo().selectOnClick,b_=X5(),A_=Ca(),VF=A_.MINDRAG,bn=A_.MINZOOM,YF=!0;function W1e(e,r,t,a,n,i,o,l){var s=e._fullLayout._zoomlayer,u=o+l==="nsew",f=(o+l).length===1,c,v,d,p,y,m,x,w,_,b,T,k,M,q,E,D,P,R,z,O,B,Y,V;t+=r.yaxis._shift;function H(){if(c=r.xaxis,v=r.yaxis,_=c._length,b=v._length,x=c._offset,w=v._offset,d={},d[c._id]=c,p={},p[v._id]=v,o&&l)for(var Te=r.overlays,qe=0;qe=0){Ge._fullLayout._deactivateShape(Ge);return}var Je=Ge._fullLayout.clickmode;if(w_(Ge),Te===2&&!f&&He(),u)Je.indexOf("select")>-1&&Y1e(qe,Ge,y,m,r.id,Z),Je.indexOf("event")>-1&&F1e.click(Ge,qe,r.id);else if(Te===1&&f){var Ve=o?v:c,Ze=o==="s"||l==="w"?0:1,or=Ve._name+".range["+Ze+"]",rr=j1e(Ve,Ze),Ke="left",ze="middle";if(Ve.fixedrange)return;o?(ze=o==="n"?"top":"bottom",Ve.side==="right"&&(Ke="right")):l==="e"&&(Ke="right"),Ge._context.showAxisRangeEntryBoxes&&T_.select(X).call(P1e.makeEditable,{gd:Ge,immediate:!0,background:Ge._fullLayout.paper_bgcolor,text:String(rr),fill:Ve.tickfont?Ve.tickfont.color:"#444",horizontalAlign:Ke,verticalAlign:ze}).on("edit",function(ne){var ve=Ve.d2r(ne);ve!==void 0&&By.call("_guiRelayout",Ge,or,ve)})}}z1e.init(Z);var ie,ue,K,_e,le,he,oe,ce,W,Q;function j(Te,qe,Ge){var Je=X.getBoundingClientRect();ie=qe-Je.left,ue=Ge-Je.top,e._fullLayout._calcInverseTransform(e);var Ve=Ti.apply3DTransform(e._fullLayout._invTransform)(ie,ue);ie=Ve[0],ue=Ve[1],K={l:ie,r:ie,w:0,t:ue,b:ue,h:0},_e=e._hmpixcount?e._hmlumcount/e._hmpixcount:D1e(e._fullLayout.plot_bgcolor).getLuminance(),le="M0,0H"+_+"V"+b+"H0V0",he=!1,oe="xy",Q=!1,ce=eN(s,_e,x,w,le),W=rN(s,x,w)}function pe(Te,qe){if(e._transitioningWithDuration)return!1;var Ge=Math.max(0,Math.min(_,Y*Te+ie)),Je=Math.max(0,Math.min(b,V*qe+ue)),Ve=Math.abs(Ge-ie),Ze=Math.abs(Je-ue);K.l=Math.min(ie,Ge),K.r=Math.max(ie,Ge),K.t=Math.min(ue,Je),K.b=Math.max(ue,Je);function or(){oe="",K.r=K.l,K.t=K.b,W.attr("d","M0,0Z")}if(T.isSubplotConstrained)Ve>bn||Ze>bn?(oe="xy",Ve/_>Ze/b?(Ze=Ve*b/_,ue>Je?K.t=ue-Ze:K.b=ue+Ze):(Ve=Ze*_/b,ie>Ge?K.l=ie-Ve:K.r=ie+Ve),W.attr("d",Uy(K))):or();else if(k.isSubplotConstrained)if(Ve>bn||Ze>bn){oe="xy";var rr=Math.min(K.l/_,(b-K.b)/b),Ke=Math.max(K.r/_,(b-K.t)/b);K.l=rr*_,K.r=Ke*_,K.b=(1-rr)*b,K.t=(1-Ke)*b,W.attr("d",Uy(K))}else or();else!q||Ze0){var ne;if(k.isSubplotConstrained||!M&&q.length===1){for(ne=0;ne1&&(or.maxallowed!==void 0&&D===(or.range[0]1&&(rr.maxallowed!==void 0&&P===(rr.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function X1e(e,r,t){return e?e==="nsew"?t?"":r==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function eN(e,r,t,a,n){return e.append("path").attr("class","zoombox").style({fill:r>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",JF(t,a)).attr("d",n+"Z")}function rN(e,r,t){return e.append("path").attr("class","zoombox-corners").style({fill:UF.background,stroke:UF.defaultLine,"stroke-width":1,opacity:0}).attr("transform",JF(r,t)).attr("d","M0,0Z")}function tN(e,r,t,a,n,i){e.attr("d",a+"M"+t.l+","+t.t+"v"+t.h+"h"+t.w+"v-"+t.h+"h-"+t.w+"Z"),aN(e,r,n,i)}function aN(e,r,t,a){t||(e.transition().style("fill",a>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),r.transition().style("opacity",1).duration(200))}function w_(e){T_.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function nN(e){YF&&e.data&&e._context.showTips&&(Ti.notifier(Ti._(e,"Double-click to zoom back out"),"long"),YF=!1)}function J1e(e,r){return"M"+(e.l-.5)+","+(r-bn-.5)+"h-3v"+(2*bn+1)+"h3ZM"+(e.r+.5)+","+(r-bn-.5)+"h3v"+(2*bn+1)+"h-3Z"}function $1e(e,r){return"M"+(r-bn-.5)+","+(e.t-.5)+"v-3h"+(2*bn+1)+"v3ZM"+(r-bn-.5)+","+(e.b+.5)+"v3h"+(2*bn+1)+"v-3Z"}function Uy(e){var r=Math.floor(Math.min(e.b-e.t,e.r-e.l,bn)/2);return"M"+(e.l-3.5)+","+(e.t-.5+r)+"h3v"+-r+"h"+r+"v-3h-"+(r+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+r)+"h-3v"+-r+"h"+-r+"v-3h"+(r+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-r)+"h-3v"+r+"h"+-r+"v3h"+(r+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-r)+"h3v"+r+"h"+r+"v3h-"+(r+3)+"Z"}function ZF(e,r,t,a,n){for(var i=!1,o={},l={},s,u,f,c,v=(n||{}).xaHash,d=(n||{}).yaHash,p=0;p{"use strict";var K1e=Sr(),Gy=Pn(),Q1e=pi(),eye=rs(),oo=lN().makeDragBox,ka=Ca().DRAGGERSIZE;Vy.initInteractions=function(r){var t=r._fullLayout;if(r._context.staticPlot){K1e.select(r).selectAll(".drag").remove();return}if(!(!t._has("cartesian")&&!t._has("splom"))){var a=Object.keys(t._plots||{}).sort(function(i,o){if((t._plots[i].mainplot&&!0)===(t._plots[o].mainplot&&!0)){var l=i.split("y"),s=o.split("y");return l[0]===s[0]?Number(l[1]||1)-Number(s[1]||1):Number(l[0]||1)-Number(s[0]||1)}return t._plots[i].mainplot?1:-1});a.forEach(function(i){var o=t._plots[i],l=o.xaxis,s=o.yaxis;if(!o.mainplot){var u=oo(r,o,l._offset,s._offset,l._length,s._length,"ns","ew");u.onmousemove=function(v){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===i&&r._fullLayout._plots[i]&&Gy.hover(r,v,i)},Gy.hover(r,v,i),r._fullLayout._lasthover=u,r._fullLayout._hoversubplot=i},u.onmouseout=function(v){r._dragging||(r._fullLayout._hoversubplot=null,Q1e.unhover(r,v))},r._context.showAxisDragHandles&&(oo(r,o,l._offset-ka,s._offset-ka,ka,ka,"n","w"),oo(r,o,l._offset+l._length,s._offset-ka,ka,ka,"n","e"),oo(r,o,l._offset-ka,s._offset+s._length,ka,ka,"s","w"),oo(r,o,l._offset+l._length,s._offset+s._length,ka,ka,"s","e"))}if(r._context.showAxisDragHandles){if(i===l._mainSubplot){var f=l._mainLinePosition;l.side==="top"&&(f-=ka),oo(r,o,l._offset+l._length*.1,f,l._length*.8,ka,"","ew"),oo(r,o,l._offset,f,l._length*.1,ka,"","w"),oo(r,o,l._offset+l._length*.9,f,l._length*.1,ka,"","e")}if(i===s._mainSubplot){var c=s._mainLinePosition;s.side!=="right"&&(c-=ka),oo(r,o,c,s._offset+s._length*.1,ka,s._length*.8,"ns",""),oo(r,o,c,s._offset+s._length*.9,ka,s._length*.1,"s",""),oo(r,o,c,s._offset,ka,s._length*.1,"n","")}}});var n=t._hoverlayer.node();n.onmousemove=function(i){i.target=r._fullLayout._lasthover,Gy.hover(r,i,t._hoversubplot)},n.onclick=function(i){i.target=r._fullLayout._lasthover,Gy.click(r,i)},n.onmousedown=function(i){r._fullLayout._lasthover.onmousedown(i)},Vy.updateFx(r)}};Vy.updateFx=function(e){var r=e._fullLayout,t=r.dragmode==="pan"?"move":"crosshair";eye(r._draggers,t)}});var fN=N((NPe,uN)=>{"use strict";var sN=br();uN.exports=function(r){for(var t=sN.layoutArrayContainers,a=sN.layoutArrayRegexes,n=r.split("[")[0],i,o,l=0;l{"use strict";var rye=zl(),k_=Mp(),$h=Xs(),tye=Sb().sorterAsc,S_=br();Kh.containerArrayMatch=fN();var aye=Kh.isAddVal=function(r){return r==="add"||rye(r)},cN=Kh.isRemoveVal=function(r){return r===null||r==="remove"};Kh.applyContainerArrayChanges=function(r,t,a,n,i){var o=t.astr,l=S_.getComponentMethod(o,"supplyLayoutDefaults"),s=S_.getComponentMethod(o,"draw"),u=S_.getComponentMethod(o,"drawOne"),f=n.replot||n.recalc||l===k_||s===k_,c=r.layout,v=r._fullLayout;if(a[""]){Object.keys(a).length>1&&$h.warn("Full array edits are incompatible with other edits",o);var d=a[""][""];if(cN(d))t.set(null);else if(Array.isArray(d))t.set(d);else return $h.warn("Unrecognized full array edit value",o,d),!0;return f?!1:(l(c,v),s(r),!0)}var p=Object.keys(a).map(Number).sort(tye),y=t.get(),m=y||[],x=i(v,o).get(),w=[],_=-1,b=m.length,T,k,M,q,E,D,P,R;for(T=0;Tm.length-(P?0:1)){$h.warn("index out of range",o,M);continue}if(D!==void 0)E.length>1&&$h.warn("Insertion & removal are incompatible with edits to the same index.",o,M),cN(D)?w.push(M):P?(D==="add"&&(D={}),m.splice(M,0,D),x&&x.splice(M,0,{})):$h.warn("Unrecognized full object edit value",o,M,D),_===-1&&(_=M);else for(k=0;k=0;T--)m.splice(w[T],1),x&&x.splice(w[T],1);if(m.length?y||t.set(m):t.set(null),f)return!1;if(l(c,v),u!==k_){var z;if(_===-1)z=p;else{for(b=Math.max(m.length,b),z=[],T=0;T=_));T++)z.push(M);for(T=_;T{"use strict";var yN=Rr(),mN=br(),un=Le(),Qh=ta(),gN=la(),bN=Tr(),e0=gN.cleanId,nye=gN.getFromTrace,q_=mN.traceIs,iye=["x","y","z"];Ai.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&un.log("Clearing previous rejected promises from queue."),e._promises=[]};Ai.cleanLayout=function(e){var r,t;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var a=(Qh.subplotsRegistry.cartesian||{}).attrRegex,n=(Qh.subplotsRegistry.polar||{}).attrRegex,i=(Qh.subplotsRegistry.ternary||{}).attrRegex,o=(Qh.subplotsRegistry.gl3d||{}).attrRegex,l=Object.keys(e);for(r=0;r3?(m.x=1.02,m.xanchor="left"):m.x<-2&&(m.x=-.02,m.xanchor="right"),m.y>3?(m.y=1.02,m.yanchor="bottom"):m.y<-2&&(m.y=-.02,m.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),bN.clean(e),e.template&&e.template.layout&&Ai.cleanLayout(e.template.layout),e};function gc(e,r){var t=e[r],a=r.charAt(0);t&&t!=="paper"&&(e[r]=e0(t,a,!0))}Ai.cleanData=function(e){for(var r=0;r0)return e.slice(0,r)}Ai.hasParent=function(e,r){for(var t=pN(r);t;){if(t in e)return!0;t=pN(t)}return!1};Ai.clearAxisTypes=function(e,r,t){for(var a=0;a{let t=(...a)=>a.every(n=>un.isPlainObject(n))||a.every(n=>Array.isArray(n));if([e,r].every(a=>Array.isArray(a))){if(e.length!==r.length)return!1;for(let a=0;aun.isPlainObject(a))){if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let a in e){if(a.startsWith("_"))continue;let n=e[a],i=r[a];if(n!==i&&!(t(n,i)?L_(n,i):!1))return!1}return!0}return!1};Ai.collectionsAreEqual=L_});var F_=N(jr=>{"use strict";var Zy=Sr(),sye=Rr(),uye=Hb(),nr=Le(),Mt=nr.nestedProperty,D_=sh(),xn=KS(),Mi=br(),rm=Hf(),_r=ta(),fn=zr(),fye=a5(),cye=hi(),C_=Wr(),vye=Tr(),hye=M_().initInteractions,dye=sl(),pye=zo().clearOutline,MN=Zs().dfltConfig,Wy=vN(),aa=xN(),ht=ky(),ls=$i(),yye=Ca().AX_NAME_PATTERN,E_=0,_N=5;function mye(e,r,t,a){var n;if(e=nr.getGraphDiv(e),D_.init(e),nr.isPlainObject(r)){var i=r;r=i.data,t=i.layout,a=i.config,n=i.frames}var o=D_.triggerHandler(e,"plotly_beforeplot",[r,t,a]);if(o===!1)return Promise.reject();!r&&!t&&!nr.isPlotDiv(e)&&nr.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function l(){if(n)return jr.addFrames(e,n)}SN(e,a),t||(t={}),Zy.select(e).classed("js-plotly-plot",!0),C_.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var s=(e.data||[]).length===0&&Array.isArray(r);Array.isArray(r)&&(aa.cleanData(r),s?e.data=r:e.data.push.apply(e.data,r),e.empty=!1),(!e.layout||s)&&(e.layout=aa.cleanLayout(t)),_r.supplyDefaults(e);var u=e._fullLayout,f=u._has("cartesian");u._replotting=!0,(s||u._shouldCreateBgLayer)&&(Bye(e),u._shouldCreateBgLayer&&delete u._shouldCreateBgLayer),C_.initGradients(e),C_.initPatterns(e),s&&fn.saveShowSpikeInitial(e);var c=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;c&&_r.doCalcdata(e);for(var v=0;v=e.data.length||n<-e.data.length)throw new Error(t+" must be valid indices for gd.data.");if(r.indexOf(n,a+1)>-1||n>=0&&r.indexOf(-e.data.length+n)>-1||n<0&&r.indexOf(e.data.length+n)>-1)throw new Error("each index in "+t+" must be unique.")}}function qN(e,r,t){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(r)||(r=[r]),Jy(e,r,"currentIndices"),typeof t!="undefined"&&!Array.isArray(t)&&(t=[t]),typeof t!="undefined"&&Jy(e,t,"newIndices"),typeof t!="undefined"&&r.length!==t.length)throw new Error("current and new indices must be of equal length.")}function wye(e,r,t){var a,n;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("traces must be defined.");for(Array.isArray(r)||(r=[r]),a=0;a=0&&f=0&&f0&&typeof q.parts[P]!="string";)P--;var R=q.parts[P],z=q.parts[P-1]+"."+R,O=q.parts.slice(0,P).join("."),B=Mt(e.layout,O).get(),Y=Mt(a,O).get(),V=q.get();if(E!==void 0){x[M]=E,w[M]=R==="reverse"?E:yl(V);var H=rm.getLayoutValObject(a,q.parts);if(H&&H.impliedEdits&&E!==null)for(var G in H.impliedEdits)_(nr.relativeAttr(M,G),H.impliedEdits[G]);if(["width","height"].indexOf(M)!==-1)if(E){_("autosize",null);var X=M==="height"?"width":"height";_(X,a[X])}else a[M]=e._initialAutoSize[M];else if(M==="autosize")_("width",E?null:a.width),_("height",E?null:a.height);else if(z.match(zN))k(z),Mt(a,O+"._inputRange").set(null);else if(z.match(IN)){k(z),Mt(a,O+"._inputRange").set(null);var Z=Mt(a,O).get();Z._inputDomain&&(Z._input.domain=Z._inputDomain.slice())}else z.match(kye)&&Mt(a,O+"._inputDomain").set(null);if(R==="type"){T=B;var ee=Y.type==="linear"&&E==="log",fe=Y.type==="log"&&E==="linear";if(ee||fe){if(!T||!T.range)_(O+".autorange",!0);else if(Y.autorange)ee&&(T.range=T.range[1]>T.range[0]?[1,2]:[2,1]);else{var ie=T.range[0],ue=T.range[1];ee?(ie<=0&&ue<=0&&_(O+".autorange",!0),ie<=0?ie=ue/1e6:ue<=0&&(ue=ie/1e6),_(O+".range[0]",Math.log(ie)/Math.LN10),_(O+".range[1]",Math.log(ue)/Math.LN10)):(_(O+".range[0]",Math.pow(10,ie)),_(O+".range[1]",Math.pow(10,ue)))}Array.isArray(a._subplots.polar)&&a._subplots.polar.length&&a[q.parts[0]]&&q.parts[1]==="radialaxis"&&delete a[q.parts[0]]._subplot.viewInitial["radialaxis.range"],Mi.getComponentMethod("annotations","convertCoords")(e,Y,E,_),Mi.getComponentMethod("images","convertCoords")(e,Y,E,_)}else _(O+".autorange",!0),_(O+".range",null);Mt(a,O+"._inputRange").set(null)}else if(R.match(yye)){var K=Mt(a,M).get(),_e=(E||{}).type;(!_e||_e==="-")&&(_e="linear"),Mi.getComponentMethod("annotations","convertCoords")(e,K,_e,_),Mi.getComponentMethod("images","convertCoords")(e,K,_e,_)}var le=Wy.containerArrayMatch(M);if(le){f=le.array,c=le.index;var he=le.property,oe=H||{editType:"calc"};c!==""&&he===""&&(Wy.isAddVal(E)?w[M]=null:Wy.isRemoveVal(E)?w[M]=(Mt(t,f).get()||[])[c]:nr.warn("unrecognized full object value",r)),ls.update(m,oe),u[f]||(u[f]={});var ce=u[f][c];ce||(ce=u[f][c]={}),ce[he]=E,delete r[M]}else R==="reverse"?(B.range?B.range.reverse():(_(O+".autorange",!0),B.range=[1,0]),Y.autorange?m.calc=!0:m.plot=!0):(M==="dragmode"&&(E===!1&&V!==!1||E!==!1&&V===!1)||a._has("scatter-like")&&a._has("regl")&&M==="dragmode"&&(E==="lasso"||E==="select")&&!(V==="lasso"||V==="select")?m.plot=!0:H?ls.update(m,H):m.calc=!0,q.set(E))}}for(f in u){var W=Wy.applyContainerArrayChanges(e,i(t,f),u[f],m,i);W||(m.plot=!0)}for(var Q in b){T=fn.getFromId(e,Q);var j=T&&T._constraintGroup;if(j){m.calc=!0;for(var pe in j)b[pe]||(fn.getFromId(e,pe)._constraintShrinkable=!0)}}(BN(e)||r.height||r.width)&&(m.plot=!0);var me=a.shapes;for(c=0;c1;)if(a.pop(),t=Mt(r,a.join(".")+".uirevision").get(),t!==void 0)return t;return r.uirevision}function Lye(e,r){for(var t=0;t[O,e._ev.listeners(O)]);i=jr.newPlot(e,r,t,a).then(()=>{for(let[O,B]of z)B.forEach(Y=>e.on(O,Y));return jr.react(e,r,t,a)})}else{e.data=r||[],aa.cleanData(e.data),e.layout=t||{},aa.cleanLayout(e.layout),Eye(e.data,e.layout,l,s),_r.supplyDefaults(e,{skipUpdateCalc:!0});var c=e._fullData,v=e._fullLayout,d=v.datarevision===void 0,p=v.transition,y=Pye(e,s,v,d,p),m=y.newDataRevision,x=Rye(e,l,c,d,p,m);if(BN(e)&&(y.layoutReplot=!0),x.calc||y.calc){e.calcdata=void 0;for(var w=Object.getOwnPropertyNames(v),_=0;_(f||e.emit("plotly_react",{config:a,data:r,layout:t}),e))}function Rye(e,r,t,a,n,i){var o=r.length===t.length;if(!n&&!o)return{fullReplot:!0,calc:!0};var l=ls.traceFlags();l.arrays={},l.nChanges=0,l.nChangesAnim=0;var s,u;function f(d){var p=rm.getTraceValObject(u,d);return!u._module.animatable&&p.anim&&(p.anim=!1),p}var c={getValObject:f,flags:l,immutable:a,transition:n,newDataRevision:i,gd:e},v={};for(s=0;s=n.length?n[0]:n[u]:n}function l(u){return Array.isArray(i)?u>=i.length?i[0]:i[u]:i}function s(u,f){var c=0;return function(){if(u&&++c===f)return u()}}return new Promise(function(u,f){function c(){if(a._frameQueue.length!==0){for(;a._frameQueue.length;){var R=a._frameQueue.pop();R.onInterrupt&&R.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function v(R){if(R.length!==0){for(var z=0;za._timeToNext&&p()};R()}var m=0;function x(R){return Array.isArray(n)?m>=n.length?R.transitionOpts=n[m]:R.transitionOpts=n[0]:R.transitionOpts=n,m++,R}var w,_,b=[],T=r==null,k=Array.isArray(r),M=!T&&!k&&nr.isPlainObject(r);if(M)b.push({type:"object",data:x(nr.extendFlat({},r))});else if(T||["string","number"].indexOf(typeof r)!==-1)for(w=0;w0&&DD)&&P.push(_);b=P}}b.length>0?v(b):(e.emit("plotly_animated"),u())})}function Nye(e,r,t){if(e=nr.getGraphDiv(e),r==null)return Promise.resolve();if(!nr.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var a,n,i,o,l=e._transitionData._frames,s=e._transitionData._frameHash;if(!Array.isArray(r))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+r);var u=l.length+r.length*2,f=[],c={};for(a=r.length-1;a>=0;a--)if(nr.isPlainObject(r[a])){var v=r[a].name,d=(s[v]||c[v]||{}).name,p=r[a].name,y=s[d]||c[d];d&&p&&typeof p=="number"&&y&&E_<_N&&(E_++,nr.warn('addFrames: overwriting frame "'+(s[d]||c[d]).name+'" with a frame whose name of type "number" also equates to "'+d+'". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),E_===_N&&nr.warn("addFrames: This API call has yielded too many of these warnings. For the rest of this call, further warnings about numeric frame names will be suppressed.")),c[v]={name:v},f.push({frame:_r.supplyFrameDefaults(r[a]),index:t&&t[a]!==void 0&&t[a]!==null?t[a]:u+a})}f.sort(function(M,q){return M.index>q.index?-1:M.index=0;a--){if(n=f[a].frame,typeof n.name=="number"&&nr.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!n.name)for(;s[n.name="frame "+e._transitionData._counter++];);if(s[n.name]){for(i=0;i=0;t--)a=r[t],i.push({type:"delete",index:a}),o.unshift({type:"insert",index:a,value:n[a]});var l=_r.modifyFrames,s=_r.modifyFrames,u=[e,o],f=[e,i];return xn&&xn.add(e,l,u,s,f),_r.modifyFrames(e,i)}function Iye(e){e=nr.getGraphDiv(e);var r=e._fullLayout||{},t=e._fullData||[];return _r.cleanPlot([],{},t,r),_r.purge(e),D_.purge(e),r._container&&r._container.remove(),delete e._context,e}function Oye(e){var r=e._fullLayout,t=e.getBoundingClientRect();if(!nr.equalDomRects(t,r._lastBBox)){var a=r._invTransform=nr.inverseTransformMatrix(nr.getFullTransformMatrix(e));r._invScaleX=Math.sqrt(a[0][0]*a[0][0]+a[0][1]*a[0][1]+a[0][2]*a[0][2]),r._invScaleY=Math.sqrt(a[1][0]*a[1][0]+a[1][1]*a[1][1]+a[1][2]*a[1][2]),r._lastBBox=t}}function Bye(e){var r=Zy.select(e),t=e._fullLayout;if(t._calcInverseTransform=Oye,t._calcInverseTransform(e),t._container=r.selectAll(".plot-container").data([0]),t._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),t._paperdiv=t._container.selectAll(".svg-container").data([0]),t._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),t._glcontainer=t._paperdiv.selectAll(".gl-container").data([{}]),t._glcontainer.enter().append("div").classed("gl-container",!0),t._paperdiv.selectAll(".main-svg").remove(),t._paperdiv.select(".modebar-container").remove(),t._paper=t._paperdiv.insert("svg",":first-child").classed("main-svg",!0),t._toppaper=t._paperdiv.append("svg").classed("main-svg",!0),t._modebardiv=t._paperdiv.append("div"),delete t._modeBar,t._hoverpaper=t._paperdiv.append("svg").classed("main-svg",!0),!t._uid){var a={};Zy.selectAll("defs").each(function(){this.id&&(a[this.id.split("-")[1]]=1)}),t._uid=nr.randstr(a)}t._paperdiv.selectAll(".main-svg").attr(dye.svgAttrs),t._defs=t._paper.append("defs").attr("id","defs-"+t._uid),t._clips=t._defs.append("g").classed("clips",!0),t._topdefs=t._toppaper.append("defs").attr("id","topdefs-"+t._uid),t._topclips=t._topdefs.append("g").classed("clips",!0),t._bgLayer=t._paper.append("g").classed("bglayer",!0),t._draggers=t._paper.append("g").classed("draglayer",!0);var n=t._paper.append("g").classed("layer-below",!0);t._imageLowerLayer=n.append("g").classed("imagelayer",!0),t._shapeLowerLayer=n.append("g").classed("shapelayer",!0),t._cartesianlayer=t._paper.append("g").classed("cartesianlayer",!0),t._polarlayer=t._paper.append("g").classed("polarlayer",!0),t._smithlayer=t._paper.append("g").classed("smithlayer",!0),t._ternarylayer=t._paper.append("g").classed("ternarylayer",!0),t._geolayer=t._paper.append("g").classed("geolayer",!0),t._funnelarealayer=t._paper.append("g").classed("funnelarealayer",!0),t._pielayer=t._paper.append("g").classed("pielayer",!0),t._iciclelayer=t._paper.append("g").classed("iciclelayer",!0),t._treemaplayer=t._paper.append("g").classed("treemaplayer",!0),t._sunburstlayer=t._paper.append("g").classed("sunburstlayer",!0),t._indicatorlayer=t._toppaper.append("g").classed("indicatorlayer",!0),t._glimages=t._paper.append("g").classed("glimages",!0);var i=t._toppaper.append("g").classed("layer-above",!0);t._imageUpperLayer=i.append("g").classed("imagelayer",!0),t._shapeUpperLayer=i.append("g").classed("shapelayer",!0),t._selectionLayer=t._toppaper.append("g").classed("selectionlayer",!0),t._infolayer=t._toppaper.append("g").classed("infolayer",!0),t._menulayer=t._toppaper.append("g").classed("menulayer",!0),t._zoomlayer=t._toppaper.append("g").classed("zoomlayer",!0),t._hoverlayer=t._hoverpaper.append("g").classed("hoverlayer",!0),t._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}jr.animate=Fye;jr.addFrames=Nye;jr.deleteFrames=zye;jr.addTraces=RN;jr.deleteTraces=PN;jr.extendTraces=EN;jr.moveTraces=R_;jr.prependTraces=DN;jr.newPlot=_ye;jr._doPlot=mye;jr.purge=Iye;jr.react=Dye;jr.redraw=xye;jr.relayout=r0;jr.restyle=$y;jr.setPlotConfig=gye;jr.update=Qy;jr._guiRelayout=P_(r0);jr._guiRestyle=P_($y);jr._guiUpdate=P_(Qy);jr._storeDirectGUIEdit=Mye});var ml=N(Io=>{"use strict";var Hye=br();Io.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Io.getRedrawFunc=function(e){return function(){Hye.getComponentMethod("colorbar","draw")(e)}};Io.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Io.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var HN=window.URL||window.webkitURL;Io.createObjectURL=function(e){return HN.createObjectURL(e)};Io.revokeObjectURL=function(e){return HN.revokeObjectURL(e)};Io.createBlob=function(e,r){if(r==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(r==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var t=Uye(window.atob(e));return new window.Blob([t],{type:"image/"+r})};Io.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function Uye(e){for(var r=e.length,t=new ArrayBuffer(r),a=new Uint8Array(t),n=0;n{"use strict";var z_=Sr(),HPe=Le(),Gye=Wr(),Vye=Tr(),UPe=sl(),N_=/"/g,a0="TOBESTRIPPED",Yye=new RegExp('("'+a0+")|("+a0+'")',"g");function Wye(e){var r=z_.select("body").append("div").style({display:"none"}).html(""),t=e.replace(/(&[^;]*;)/gi,function(a){return a==="<"?"<":a==="&rt;"?">":a.indexOf("<")!==-1||a.indexOf(">")!==-1?"":r.html(a).text()});return r.remove(),t}function jye(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}UN.exports=function(r,t,a){var n=r._fullLayout,i=n._paper,o=n._toppaper,l=n.width,s=n.height,u;i.insert("rect",":first-child").call(Gye.setRect,0,0,l,s).call(Vye.fill,n.paper_bgcolor);var f=n._basePlotModules||[];for(u=0;u{"use strict";var Zye=Le(),Xye=eu().EventEmitter,n0=ml();function Jye(e){var r=e.emitter||new Xye,t=new Promise(function(a,n){var i=window.Image,o=e.svg,l=e.format||"png",s=e.canvas,u=e.scale||1,f=e.width||300,c=e.height||150,v=u*f,d=u*c,p=s.getContext("2d",{willReadFrequently:!0}),y=new i,m,x;l==="svg"||Zye.isSafari()?x=n0.encodeSVG(o):(m=n0.createBlob(o,"svg"),x=n0.createObjectURL(m)),s.width=v,s.height=d,y.onload=function(){var w;switch(m=null,n0.revokeObjectURL(x),l!=="svg"&&p.drawImage(y,0,0,v,d),l){case"jpeg":w=s.toDataURL("image/jpeg");break;case"png":w=s.toDataURL("image/png");break;case"webp":w=s.toDataURL("image/webp");break;case"svg":w=x;break;default:var _="Image format is not jpeg, png, svg or webp.";if(n(new Error(_)),!e.promise)return r.emit("error",_)}a(w),e.promise||r.emit("success",w)},y.onerror=function(w){if(m=null,n0.revokeObjectURL(x),n(w),!e.promise)return r.emit("error",w)},y.src=x});return e.promise?t:r}GN.exports=Jye});var O_=N((YPe,WN)=>{"use strict";var VN=Rr(),YN=F_(),$ye=ta(),Oo=Le(),i0=ml(),Kye=am(),Qye=nm(),eme=sp().version,I_={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function rme(e,r){r=r||{};var t,a,n,i;Oo.isPlainObject(e)?(t=e.data||[],a=e.layout||{},n=e.config||{},i={}):(e=Oo.getGraphDiv(e),t=Oo.extendDeep([],e.data),a=Oo.extendDeep({},e.layout),n=e._context,i=e._fullLayout||{});function o(k){return!(k in r)||Oo.validate(r[k],I_[k])}if(!o("width")&&r.width!==null||!o("height")&&r.height!==null)throw new Error("Height and width should be pixel values.");if(!o("format"))throw new Error("Export format is not "+Oo.join2(I_.format.values,", "," or ")+".");var l={};function s(k,M){return Oo.coerce(r,l,I_,k,M)}var u=s("format"),f=s("width"),c=s("height"),v=s("scale"),d=s("setBackground"),p=s("imageDataOnly"),y=document.createElement("div");y.style.position="absolute",y.style.left="-5000px",document.body.appendChild(y);var m=Oo.extendFlat({},a);f?m.width=f:r.width===null&&VN(i.width)&&(m.width=i.width),c?m.height=c:r.height===null&&VN(i.height)&&(m.height=i.height);var x=Oo.extendFlat({},n,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),w=i0.getRedrawFunc(y);function _(){return new Promise(function(k){setTimeout(k,i0.getDelay(y._fullLayout))})}function b(){return new Promise(function(k,M){var q=Kye(y,u,v),E=y._fullLayout.width,D=y._fullLayout.height;function P(){YN.purge(y),document.body.removeChild(y)}if(u==="full-json"){var R=$ye.graphJson(y,!1,"keepdata","object",!0,!0);return R.version=eme,R=JSON.stringify(R),P(),k(p?R:i0.encodeJSON(R))}if(P(),u==="svg")return k(p?q:i0.encodeSVG(q));var z=document.createElement("canvas");z.id=Oo.randstr(),Qye({format:u,width:E,height:D,scale:v,canvas:z,svg:q,promise:!0}).then(k).catch(M)})}function T(k){return p?k.replace(i0.IMAGE_URL_PREFIX,""):k}return new Promise(function(k,M){YN.newPlot(y,t,m,x).then(w).then(_).then(b).then(function(q){k(T(q))}).catch(function(q){M(q)})})}WN.exports=rme});var XN=N((WPe,ZN)=>{"use strict";var ki=Le(),tme=ta(),ame=Hf(),nme=Zs().dfltConfig,lo=ki.isPlainObject,ku=Array.isArray,B_=ki.isArrayOrTypedArray;ZN.exports=function(r,t){r===void 0&&(r=[]),t===void 0&&(t={});var a=ame.get(),n=[],i={_context:ki.extendFlat({},nme)},o,l;ku(r)?(i.data=ki.extendDeep([],r),o=r):(i.data=[],o=[],n.push(Sa("array","data"))),lo(t)?(i.layout=ki.extendDeep({},t),l=t):(i.layout={},l={},arguments.length>1&&n.push(Sa("object","layout"))),tme.supplyDefaults(i);for(var s=i._fullData,u=o.length,f=0;fc.length&&a.push(Sa("unused",n,u.concat(c.length)));var x=c.length,w=Array.isArray(m);w&&(x=Math.min(x,m.length));var _,b,T,k,M;if(v.dimensions===2)for(b=0;bc[b].length&&a.push(Sa("unused",n,u.concat(b,c[b].length)));var q=c[b].length;for(_=0;_<(w?Math.min(q,m[b].length):q);_++)T=w?m[b][_]:m,k=f[b][_],M=c[b][_],ki.validate(k,T)?M!==k&&M!==+k&&a.push(Sa("dynamic",n,u.concat(b,_),k,M)):a.push(Sa("value",n,u.concat(b,_),k))}else a.push(Sa("array",n,u.concat(b),f[b]));else for(b=0;b{"use strict";var cme=Le(),om=ml();function vme(e,r,t){var a=document.createElement("a"),n="download"in a,i=new Promise(function(o,l){var s,u;if(n)return s=om.createBlob(e,t),u=om.createObjectURL(s),a.href=u,a.download=r,document.body.appendChild(a),a.click(),document.body.removeChild(a),om.revokeObjectURL(u),s=null,o(r);if(cme.isSafari()){var f=t==="svg"?",":";base64,";return om.octetStream(f+encodeURIComponent(e)),o(r)}l(new Error("download error"))});return i}JN.exports=vme});var H_=N((XPe,QN)=>{"use strict";var KN=Le(),hme=O_(),dme=$N(),ZPe=ml();function pme(e,r){var t;return KN.isPlainObject(e)||(t=KN.getGraphDiv(e)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(a,n){t&&t._snapshotInProgress&&n(new Error("Snapshotting already in progress.")),t&&(t._snapshotInProgress=!0);var i=hme(e,r),o=r.filename||e.fn||"newplot";o+="."+r.format.replace("-","."),i.then(function(l){return t&&(t._snapshotInProgress=!1),dme(l,o,r.format)}).then(function(l){a(l)}).catch(function(l){t&&(t._snapshotInProgress=!1),n(l)})})}QN.exports=pme});var nz=N(U_=>{"use strict";var zn=Le(),In=zn.isPlainObject,ez=Hf(),rz=ta(),yme=gn(),tz=_t(),az=Zs().dfltConfig;U_.makeTemplate=function(e){e=zn.isPlainObject(e)?e:zn.getGraphDiv(e),e=zn.extendDeep({_context:az},{data:e.data,layout:e.layout}),rz.supplyDefaults(e);var r=e.data||[],t=e.layout||{};t._basePlotModules=e._fullLayout._basePlotModules,t._modules=e._fullLayout._modules;var a={data:{},layout:{}};r.forEach(function(d){var p={};o0(d,p,gme.bind(null,d));var y=zn.coerce(d,{},yme,"type"),m=a.data[y];m||(m=a.data[y]=[]),m.push(p)}),o0(t,a.layout,mme.bind(null,t)),delete a.layout.template;var n=t.template;if(In(n)){var i=n.layout,o,l,s,u,f,c;In(i)&&lm(i,a.layout);var v=n.data;if(In(v)){for(l in a.data)if(s=v[l],Array.isArray(s)){for(f=a.data[l],c=f.length,u=s.length,o=0;ox?o.push({code:"unused",traceType:d,templateCount:m,dataCount:x}):x>m&&o.push({code:"reused",traceType:d,templateCount:m,dataCount:x})}}function w(_,b){for(var T in _)if(T.charAt(0)!=="_"){var k=_[T],M=Si(_,T,b);In(k)?(Array.isArray(_)&&k._template===!1&&k.templateitemname&&o.push({code:"missing",path:M,templateitemname:k.templateitemname}),w(k,M)):Array.isArray(k)&&bme(k)&&w(k,M)}}if(w({data:s,layout:l},""),o.length)return o.map(xme)};function bme(e){for(var r=0;r{"use strict";var xa=F_();Pt._doPlot=xa._doPlot;Pt.newPlot=xa.newPlot;Pt.restyle=xa.restyle;Pt.relayout=xa.relayout;Pt.redraw=xa.redraw;Pt.update=xa.update;Pt._guiRestyle=xa._guiRestyle;Pt._guiRelayout=xa._guiRelayout;Pt._guiUpdate=xa._guiUpdate;Pt._storeDirectGUIEdit=xa._storeDirectGUIEdit;Pt.react=xa.react;Pt.extendTraces=xa.extendTraces;Pt.prependTraces=xa.prependTraces;Pt.addTraces=xa.addTraces;Pt.deleteTraces=xa.deleteTraces;Pt.moveTraces=xa.moveTraces;Pt.purge=xa.purge;Pt.addFrames=xa.addFrames;Pt.deleteFrames=xa.deleteFrames;Pt.animate=xa.animate;Pt.setPlotConfig=xa.setPlotConfig;var _me=eh().getGraphDiv,wme=by().eraseActiveShape;Pt.deleteActiveShape=function(e){return wme(_me(e))};Pt.toImage=O_();Pt.validate=XN();Pt.downloadImage=H_();var iz=nz();Pt.makeTemplate=iz.makeTemplate;Pt.validateTemplate=iz.validateTemplate});var V_=N((KPe,lz)=>{"use strict";var G_=Le(),Tme=br();lz.exports=function(r,t,a,n){var i=n("x"),o=n("y"),l,s=Tme.getComponentMethod("calendars","handleTraceDefaults");if(s(r,t,["x","y"],a),i){var u=G_.minRowLength(i);o?l=Math.min(u,G_.minRowLength(o)):(l=u,n("y0"),n("dy"))}else{if(!o)return 0;l=G_.minRowLength(o),n("x0"),n("dx")}return t._length=l,l}});var bc=N((QPe,fz)=>{"use strict";var sz=Le().dateTick0,Ame=It(),Mme=Ame.ONEWEEK;function uz(e,r){return e%Mme===0?sz(r,1):sz(r,0)}fz.exports=function(r,t,a,n,i){if(i||(i={x:!0,y:!0}),i.x){var o=n("xperiod");o&&(n("xperiod0",uz(o,t.xcalendar)),n("xperiodalignment"))}if(i.y){var l=n("yperiod");l&&(n("yperiod0",uz(l,t.ycalendar)),n("yperiodalignment"))}}});var hz=N((eFe,vz)=>{"use strict";var cz=["orientation","groupnorm","stackgaps"];vz.exports=function(r,t,a,n){var i=a._scatterStackOpts,o=n("stackgroup");if(o){var l=t.xaxis+t.yaxis,s=i[l];s||(s=i[l]={});var u=s[o],f=!1;u?u.traces.push(t):(u=s[o]={traceIndices:[],traces:[t]},f=!0);for(var c={orientation:t.x&&!t.y?"h":"v"},v=0;v{"use strict";var dz=Tr(),pz=jn().hasColorscale,yz=fl(),kme=Dn();mz.exports=function(r,t,a,n,i,o){var l=kme.isBubble(r),s=(r.line||{}).color,u;if(o=o||{},s&&(a=s),i("marker.symbol"),i("marker.opacity",l?.7:1),i("marker.size"),o.noAngle||(i("marker.angle"),o.noAngleRef||i("marker.angleref"),o.noStandOff||i("marker.standoff")),i("marker.color",a),pz(r,"marker")&&yz(r,t,n,i,{prefix:"marker.",cLetter:"c"}),o.noSelect||(i("selected.marker.color"),i("unselected.marker.color"),i("selected.marker.size"),i("unselected.marker.size")),o.noLine||(s&&!Array.isArray(s)&&t.marker.color!==s?u=s:l?u=dz.background:u=dz.defaultLine,i("marker.line.color",u),pz(r,"marker.line")&&yz(r,t,n,i,{prefix:"marker.line.",cLetter:"c"}),i("marker.line.width",l?1:0)),l&&(i("marker.sizeref"),i("marker.sizemin"),i("marker.sizemode")),o.gradient){var f=i("marker.gradient.type");f!=="none"&&i("marker.gradient.color")}}});var W_=N((tFe,gz)=>{"use strict";var Sme=Le().isArrayOrTypedArray,qme=jn().hasColorscale,Lme=fl();gz.exports=function(r,t,a,n,i,o){o||(o={});var l=(r.marker||{}).color;if(l&&l._inputArray&&(l=l._inputArray),i("line.color",a),qme(r,"line"))Lme(r,t,n,i,{prefix:"line.",cLetter:"c"});else{var s=(Sme(l)?!1:l)||a;i("line.color",s)}i("line.width"),o.noDash||i("line.dash"),o.backoff&&i("line.backoff")}});var j_=N((aFe,bz)=>{"use strict";bz.exports=function(r,t,a){var n=a("line.shape");n==="spline"&&a("line.smoothing")}});var Z_=N((nFe,xz)=>{"use strict";var Cme=Le();xz.exports=function(e,r,t,a,n){n=n||{},a("textposition"),Cme.coerceFont(a,"textfont",n.font||t.font,n),n.noSelect||(a("selected.textfont.color"),a("unselected.textfont.color"))}});var X_=N((iFe,wz)=>{"use strict";var um=Tr(),_z=Le().isArrayOrTypedArray;function Eme(e){for(var r=um.interpolate(e[0][1],e[1][1],.5),t=2;t{"use strict";var Tz=Le(),Dme=br(),Rme=wi(),Pme=Zh(),xc=Dn(),Fme=V_(),Nme=bc(),zme=hz(),Ime=Y_(),Ome=W_(),Az=j_(),Bme=Z_(),Hme=X_(),Ume=Le().coercePattern;Mz.exports=function(r,t,a,n){function i(d,p){return Tz.coerce(r,t,Rme,d,p)}var o=Fme(r,t,n,i);if(o||(t.visible=!1),!!t.visible){Nme(r,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder");var l=zme(r,t,n,i);n.scattermode==="group"&&t.orientation===void 0&&i("orientation","v");var s=!l&&o{"use strict";var Gme=Au().getAxisGroup;Sz.exports=function(r,t,a,n,i){var o=t.orientation,l=t[{v:"x",h:"y"}[o]+"axis"],s=Gme(a,l)+o,u=a._alignmentOpts||{},f=n("alignmentgroup"),c=u[s];c||(c=u[s]={});var v=c[f];v?v.traces.push(t):v=c[f]={traces:[t],alignmentIndex:Object.keys(c).length,offsetGroups:{}};var d=n("offsetgroup")||"",p=v.offsetGroups,y=p[d];t._offsetIndex=0,(i!=="group"||d)&&(y||(y=p[d]={offsetIndex:Object.keys(p).length}),t._offsetIndex=y.offsetIndex)}});var Lz=N((sFe,qz)=>{"use strict";var Vme=Le(),Yme=l0(),Wme=wi();qz.exports=function(r,t){var a,n,i,o=t.scattermode;function l(v){return Vme.coerce(n._input,n,Wme,v)}if(t.scattermode==="group")for(i=0;i=0;f--){var c=r[f];if(c.type==="scatter"&&c.xaxis===s.xaxis&&c.yaxis===s.yaxis){c.opacity=void 0;break}}}}}});var Ez=N((uFe,Cz)=>{"use strict";var jme=Le(),Zme=Xp();Cz.exports=function(e,r){function t(n,i){return jme.coerce(e,r,Zme,n,i)}var a=r.barmode==="group";r.scattermode==="group"&&t("scattergap",a?r.bargap:.2)}});var _c=N((fFe,Rz)=>{"use strict";var Xme=Rr(),Dz=Le(),Jme=Dz.dateTime2ms,fm=Dz.incrementMonth,$me=It(),Kme=$me.ONEAVGMONTH;Rz.exports=function(r,t,a,n){if(t.type!=="date")return{vals:n};var i=r[a+"periodalignment"];if(!i)return{vals:n};var o=r[a+"period"],l;if(Xme(o)){if(o=+o,o<=0)return{vals:n}}else if(typeof o=="string"&&o.charAt(0)==="M"){var s=+o.substring(1);if(s>0&&Math.round(s)===s)l=s;else return{vals:n}}for(var u=t.calendar,f=i==="start",c=i==="end",v=r[a+"period0"],d=Jme(v,u)||0,p=[],y=[],m=[],x=n.length,w=0;w_;)k=fm(k,-l,u);for(;k<=_;)k=fm(k,l,u);T=fm(k,-l,u)}else{for(b=Math.round((_-d)/o),k=d+b*o;k>_;)k-=o;for(;k<=_;)k+=o;T=k-o}p[w]=f?T:c?k:(T+k)/2,y[w]=T,m[w]=k}return{vals:p,starts:y,ends:m}}});var K_=N((cFe,Fz)=>{"use strict";var J_=jn().hasColorscale,$_=Yf(),Pz=Dn();Fz.exports=function(r,t){Pz.hasLines(t)&&J_(t,"line")&&$_(r,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),Pz.hasMarkers(t)&&(J_(t,"marker")&&$_(r,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),J_(t,"marker.line")&&$_(r,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var cm=N((vFe,Nz)=>{"use strict";var Zt=Le();Nz.exports=function(r,t){for(var a=0;a{"use strict";var zz=Le();Iz.exports=function(r,t){zz.isArrayOrTypedArray(t.selectedpoints)&&zz.tagSelected(r,t)}});var hm=N((dFe,Yz)=>{"use strict";var Oz=Rr(),e4=Le(),s0=zr(),Bz=_c(),Q_=It().BADNUM,r4=Dn(),Qme=K_(),ege=cm(),rge=vm();function tge(e,r){var t=e._fullLayout,a=r._xA=s0.getFromId(e,r.xaxis||"x","x"),n=r._yA=s0.getFromId(e,r.yaxis||"y","y"),i=a.makeCalcdata(r,"x"),o=n.makeCalcdata(r,"y"),l=Bz(r,a,"x",i),s=Bz(r,n,"y",o),u=l.vals,f=s.vals,c=r._length,v=new Array(c),d=r.ids,p=t4(r,t,a,n),y=!1,m,x,w,_,b,T;Gz(t,r);var k="x",M="y",q;if(p)e4.pushUnique(p.traceIndices,r.index),m=p.orientation==="v",m?(M="s",q="x"):(k="s",q="y"),b=p.stackgaps==="interpolate";else{var E=Uz(r,c);Hz(e,r,a,n,u,f,E)}var D=!!r.xperiodalignment,P=!!r.yperiodalignment;for(x=0;xx&&v[_].gap;)_--;for(T=v[_].s,w=v.length-1;w>_;w--)v[w].s=T;for(;x<_;)if(x++,v[x].gap){for(w=x+1;v[w].gap;)w++;for(var B=v[x-1][q],Y=v[x-1].s,V=(v[w].s-Y)/(v[w][q]-B);x{"use strict";Wz.exports=dm;var age=Le().distinctVals;function dm(e,r){this.traces=e,this.sepNegVal=r.sepNegVal,this.overlapNoMerge=r.overlapNoMerge;for(var t=1/0,a=r.posAxis._id.charAt(0),n=[],i=0;i{"use strict";var qi=Rr(),ss=Le().isArrayOrTypedArray,wc=It().BADNUM,nge=br(),u0=zr(),ige=Au().getAxisGroup,pm=jz();function oge(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,o=e.calcdata,l=[],s=[],u=0;us+o||!qi(l))}for(var f=0;f{"use strict";var Kz=hm(),Qz=ym().setGroupPositions;function gge(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,o=e.calcdata,l=[],s=[],u=0;uE[f]&&f{"use strict";var xge=Wr(),iI=It(),f0=iI.BADNUM,oI=iI.LOG_CLIP,tI=oI+.5,aI=oI-.5,mm=Le(),_ge=mm.segmentsIntersect,nI=mm.constrain,s4=Zh();lI.exports=function(r,t){var a=t.trace||{},n=t.xaxis,i=t.yaxis,o=n.type==="log",l=i.type==="log",s=n._length,u=i._length,f=t.backoff,c=a.marker,v=t.connectGaps,d=t.baseTolerance,p=t.shape,y=p==="linear",m=a.fill&&a.fill!=="none",x=[],w=s4.minTolerance,_=r.length,b=new Array(_),T=0,k,M,q,E,D,P,R,z,O,B,Y,V,H,G,X,Z;function ee(ze){var ne=r[ze];if(!ne)return!1;var ve=t.linearized?n.l2p(ne.x):n.c2p(ne.x),De=t.linearized?i.l2p(ne.y):i.c2p(ne.y);if(ve===f0){if(o&&(ve=n.c2p(ne.x,!0)),ve===f0)return!1;l&&De===f0&&(ve*=Math.abs(n._m*u*(n._m>0?tI:aI)/(i._m*s*(i._m>0?tI:aI)))),ve*=1e3}if(De===f0){if(l&&(De=i.c2p(ne.y,!0)),De===f0)return!1;De*=1e3}return[ve,De]}function fe(ze,ne,ve,De){var Re=ve-ze,Qe=De-ne,fr=.5-ze,sr=.5-ne,kr=Re*Re+Qe*Qe,Ir=Re*fr+Qe*sr;if(Ir>0&&Ir1||Math.abs(fr.y-ve[0][1])>1)&&(fr=[fr.x,fr.y],De&&_e(fr,ze)<_e(ve[0],ze)?ve.unshift(fr):ve.push(fr),De++)}return ve}function Ie(ze){if(ze[0]oe||ze[1]W)return[nI(ze[0],he,oe),nI(ze[1],ce,W)]}function Ue(ze,ne){if(ze[0]===ne[0]&&(ze[0]===he||ze[0]===oe)||ze[1]===ne[1]&&(ze[1]===ce||ze[1]===W))return!0}function Be(ze,ne){var ve=[],De=Ie(ze),Re=Ie(ne);return De&&Re&&Ue(De,Re)||(De&&ve.push(De),Re&&ve.push(Re)),ve}function Ce(ze,ne,ve){return function(De,Re){var Qe=Ie(De),fr=Ie(Re),sr=[];if(Qe&&fr&&Ue(Qe,fr))return sr;Qe&&sr.push(Qe),fr&&sr.push(fr);var kr=2*mm.constrain((De[ze]+Re[ze])/2,ne,ve)-((Qe||De)[ze]+(fr||Re)[ze]);if(kr){var Ir;Qe&&fr?Ir=kr>0==Qe[ze]>fr[ze]?Qe:fr:Ir=Qe||fr,Ir[ze]+=kr}return sr}}var Oe;p==="linear"||p==="spline"?Oe=Ee:p==="hv"||p==="vh"?Oe=Be:p==="hvh"?Oe=Ce(0,he,oe):p==="vhv"&&(Oe=Ce(1,ce,W));function He(ze,ne){var ve=ne[0]-ze[0],De=(ne[1]-ze[1])/ve,Re=(ze[1]*ne[0]-ne[1]*ze[0])/ve;return Re>0?[De>0?he:oe,W]:[De>0?oe:he,ce]}function se(ze){var ne=ze[0],ve=ze[1],De=ne===b[T-1][0],Re=ve===b[T-1][1];if(!(De&&Re))if(T>1){var Qe=ne===b[T-2][0],fr=ve===b[T-2][1];De&&(ne===he||ne===oe)&&Qe?fr?T--:b[T-1]=ze:Re&&(ve===ce||ve===W)&&fr?Qe?T--:b[T-1]=ze:b[T++]=ze}else b[T++]=ze}function Ae(ze){b[T-1][0]!==ze[0]&&b[T-1][1]!==ze[1]&&se([me,ye]),se(ze),Pe=null,me=ye=0}var Xe=mm.isArrayOrTypedArray(c);function hr(ze){if(ze&&f&&(ze.i=k,ze.d=r,ze.trace=a,ze.marker=Xe?c[ze.i]:c,ze.backoff=f),ie=ze[0]/s,ue=ze[1]/u,j=ze[0]oe?oe:0,pe=ze[1]W?W:0,j||pe){if(!T)b[T++]=[j||ze[0],pe||ze[1]];else if(Pe){var ne=Oe(Pe,ze);ne.length>1&&(Ae(ne[0]),b[T++]=ne[1])}else Ne=Oe(b[T-1],ze)[0],b[T++]=Ne;var ve=b[T-1];j&&pe&&(ve[0]!==j||ve[1]!==pe)?(Pe&&(me!==j&&ye!==pe?se(me&&ye?He(Pe,ze):[me||j,ye||pe]):me&&ye&&se([me,ye])),se([j,pe])):me-j&&ye-pe&&se([j||me,pe||ye]),Pe=ze,me=j,ye=pe}else Pe&&Ae(Oe(Pe,ze)[0]),b[T++]=ze}for(k=0;k<_;k++)if(M=ee(k),!!M){for(T=0,Pe=null,hr(M),k++;k<_;k++){if(E=ee(k),!E){if(v)continue;break}if(!y||!t.simplify){hr(E);continue}var Fe=ee(k+1);if(B=_e(E,M),!(!(m&&(T===0||T===_-1))&&BK(P,Fe))break;q=P,H=O[0]*z[0]+O[1]*z[1],H>Y?(Y=H,E=P,R=!1):H=r.length||!P)break;hr(P),M=P}}Pe&&se([me||Pe[0],ye||Pe[1]]),x.push(b.slice(0,T))}var Te=p.slice(p.length-1);if(f&&Te!=="h"&&Te!=="v"){for(var qe=!1,Ge=-1,Je=[],Ve=0;Ve{"use strict";var sI={tonextx:1,tonexty:1,tonext:1};uI.exports=function(r,t,a){var n,i,o,l,s,u={},f=!1,c=-1,v=0,d=-1;for(i=0;i=0?s=d:(s=d=v,v++),s{"use strict";var so=Sr(),wge=br(),c0=Le(),Ac=c0.ensureSingle,vI=c0.identity,Xt=Wr(),Mc=Dn(),Tge=u4(),Age=fI(),gm=i_().tester;hI.exports=function(r,t,a,n,i,o){var l,s,u=!i,f=!!i&&i.duration>0,c=Age(r,t,a);if(l=n.selectAll("g.trace").data(c,function(d){return d[0].trace.uid}),l.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),l.order(),Mge(r,l,t),f){o&&(s=o());var v=so.transition().duration(i.duration).ease(i.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});v.each(function(){n.selectAll("g.trace").each(function(d,p){cI(r,p,t,d,c,this,i)})})}else l.each(function(d,p){cI(r,p,t,d,c,this,i)});u&&l.exit().remove(),n.selectAll("path:not([d])").remove()};function Mge(e,r,t){r.each(function(a){var n=Ac(so.select(this),"g","fills");Xt.setClipUrl(n,t.layerClipId,e);var i=a[0].trace,o=[];i._ownfill&&o.push("_ownFill"),i._nexttrace&&o.push("_nextFill");var l=n.selectAll("g").data(o,vI);l.enter().append("g"),l.exit().each(function(s){i[s]=null}).remove(),l.order().each(function(s){i[s]=Ac(so.select(this),"path","js-fill")})})}function cI(e,r,t,a,n,i,o){var l=e._context.staticPlot,s;kge(e,r,t,a,n);var u=!!o&&o.duration>0;function f(Ce){return u?Ce.transition():Ce}var c=t.xaxis,v=t.yaxis,d=a[0].trace,p=d.line,y=so.select(i),m=Ac(y,"g","errorbars"),x=Ac(y,"g","lines"),w=Ac(y,"g","points"),_=Ac(y,"g","text");if(wge.getComponentMethod("errorbars","plot")(e,m,t,o),d.visible!==!0)return;f(y).style("opacity",d.opacity);var b,T,k=d.fill.charAt(d.fill.length-1);k!=="x"&&k!=="y"&&(k="");var M,q;k==="y"?(M=1,q=v.c2p(0,!0)):k==="x"&&(M=0,q=c.c2p(0,!0)),a[0][t.isRangePlot?"nodeRangePlot3":"node3"]=y;var E="",D=[],P=d._prevtrace,R=null,z=null;P&&(E=P._prevRevpath||"",T=P._nextFill,D=P._ownPolygons,R=P._fillsegments,z=P._fillElement);var O,B,Y="",V="",H,G,X,Z,ee,fe,ie=[];d._polygons=[];var ue=[],K=[],_e=c0.noop;if(b=d._ownFill,Mc.hasLines(d)||d.fill!=="none"){T&&T.datum(a),["hv","vh","hvh","vhv"].indexOf(p.shape)!==-1?(H=Xt.steps(p.shape),G=Xt.steps(p.shape.split("").reverse().join(""))):p.shape==="spline"?H=G=function(Ce){var Oe=Ce[Ce.length-1];return Ce.length>1&&Ce[0][0]===Oe[0]&&Ce[0][1]===Oe[1]?Xt.smoothclosed(Ce.slice(1),p.smoothing):Xt.smoothopen(Ce,p.smoothing)}:H=G=function(Ce){return"M"+Ce.join("L")},X=function(Ce){return G(Ce.reverse())},K=Tge(a,{xaxis:c,yaxis:v,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(p.width||1,3)/4,shape:p.shape,backoff:p.backoff,simplify:p.simplify,fill:d.fill}),ue=new Array(K.length);var le=0;for(s=0;s=l[0]&&y.x<=l[1]&&y.y>=s[0]&&y.y<=s[1]}),v=Math.ceil(c.length/f),d=0;n.forEach(function(y,m){var x=y[0].trace;Mc.hasMarkers(x)&&x.marker.maxdisplayed>0&&m{"use strict";dI.exports={container:"marker",min:"cmin",max:"cmax"}});var c4=N((wFe,pI)=>{"use strict";var bm=zr();pI.exports=function(r,t,a){var n={},i={_fullLayout:a},o=bm.getFromTrace(i,t,"x"),l=bm.getFromTrace(i,t,"y"),s=r.orig_x;s===void 0&&(s=r.x);var u=r.orig_y;return u===void 0&&(u=r.y),n.xLabel=bm.tickText(o,o.c2l(s),!0).text,n.yLabel=bm.tickText(l,l.c2l(u),!0).text,n}});var Su=N((TFe,yI)=>{"use strict";var v4=Sr(),kc=Wr(),Sge=br();function qge(e){var r=v4.select(e).selectAll("g.trace.scatter");r.style("opacity",function(t){return t[0].trace.opacity}),r.selectAll("g.points").each(function(t){var a=v4.select(this),n=t.trace||t[0].trace;h4(a,n,e)}),r.selectAll("g.text").each(function(t){var a=v4.select(this),n=t.trace||t[0].trace;d4(a,n,e)}),r.selectAll("g.trace path.js-line").call(kc.lineGroupStyle),r.selectAll("g.trace path.js-fill").call(kc.fillGroupStyle,e,!1),Sge.getComponentMethod("errorbars","style")(r)}function h4(e,r,t){kc.pointStyle(e.selectAll("path.point"),r,t)}function d4(e,r,t){kc.textPointStyle(e.selectAll("text"),r,t)}function Lge(e,r,t){var a=r[0].trace;a.selectedpoints?(kc.selectedPointStyle(t.selectAll("path.point"),a),kc.selectedTextStyle(t.selectAll("text"),a)):(h4(t,a,e),d4(t,a,e))}yI.exports={style:qge,stylePoints:h4,styleText:d4,styleOnSelect:Lge}});var gI=N((AFe,mI)=>{"use strict";var Sc=Tr(),Cge=Dn();mI.exports=function(r,t){var a,n;if(r.mode==="lines")return a=r.line.color,a&&Sc.opacity(a)?a:r.fillcolor;if(r.mode==="none")return r.fill?r.fillcolor:"";var i=t.mcc||(r.marker||{}).color,o=t.mlcc||((r.marker||{}).line||{}).color;return n=i&&Sc.opacity(i)?i:o&&Sc.opacity(o)&&(t.mlw||((r.marker||{}).line||{}).width)?o:"",n?Sc.opacity(n)<.3?Sc.addOpacity(n,.3):n:(a=(r.line||{}).color,a&&Sc.opacity(a)&&Cge.hasLines(r)&&r.line.width?a:r.fillcolor)}});var y4=N((MFe,xI)=>{"use strict";var xm=Le(),bI=Pn(),Ege=br(),Dge=gI(),p4=Tr(),Rge=xm.fillText;xI.exports=function(r,t,a,n){var i=r.cd,o=i[0].trace,l=r.xa,s=r.ya,u=l.c2p(t),f=s.c2p(a),c=[u,f],v=o.hoveron||"",d=o.mode.indexOf("markers")!==-1?3:.5,p=!!o.xperiodalignment,y=!!o.yperiodalignment;if(v.indexOf("points")!==-1){var m=function(V){if(p){var H=l.c2p(V.xStart),G=l.c2p(V.xEnd);return u>=Math.min(H,G)&&u<=Math.max(H,G)?0:1/0}var X=Math.max(3,V.mrc||0),Z=1-1/X,ee=Math.abs(l.c2p(V.x)-u);return ee=Math.min(H,G)&&f<=Math.max(H,G)?0:1/0}var X=Math.max(3,V.mrc||0),Z=1-1/X,ee=Math.abs(s.c2p(V.y)-f);return eeie!=W>=ie&&(he=_e[K-1][0],oe=_e[K][0],W-ce&&(le=he+(oe-he)*(ie-ce)/(W-ce),X=Math.min(X,le),Z=Math.max(Z,le)));return X=Math.max(X,0),Z=Math.min(Z,l._length),{x0:X,x1:Z,y0:ie,y1:ie}}if(v.indexOf("fills")!==-1&&o._fillElement){var O=R(o._fillElement)&&!R(o._fillExclusionElement);if(O){var B=z(o._polygons);B===null&&(B={x0:c[0],x1:c[0],y0:c[1],y1:c[1]});var Y=p4.defaultLine;return p4.opacity(o.fillcolor)?Y=o.fillcolor:p4.opacity((o.line||{}).color)&&(Y=o.line.color),xm.extendFlat(r,{distance:r.maxHoverDistance,x0:B.x0,x1:B.x1,y0:B.y0,y1:B.y1,color:Y,hovertemplate:!1}),delete r.index,o.text&&!xm.isArrayOrTypedArray(o.text)?r.text=String(o.text):r.text=o.name,[r]}}}});var m4=N((kFe,wI)=>{"use strict";var _I=Dn();wI.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,o=[],l=a[0].trace,s,u,f,c,v=!_I.hasMarkers(l)&&!_I.hasText(l);if(v)return[];if(t===!1)for(s=0;s{"use strict";TI.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var qI=N((qFe,SI)=>{"use strict";var h0=br().traceIs,g4=k1();SI.exports=function(r,t,a,n){a("autotypenumbers",n.autotypenumbersDflt);var i=a("type",(n.splomStash||{}).type);i==="-"&&(Pge(t,n.data),t.type==="-"?t.type="linear":r.type=t.type)};function Pge(e,r){if(e.type==="-"){var t=e._id,a=t.charAt(0),n;t.indexOf("scene")!==-1&&(t=a);var i=Fge(r,t,a);if(i){if(i.type==="histogram"&&a==={v:"y",h:"x"}[i.orientation||"v"]){e.type="linear";return}var o=a+"calendar",l=i[o],s={noMultiCategory:!h0(i,"cartesian")||h0(i,"noMultiCategory")};if(i.type==="box"&&i._hasPreCompStats&&a==={h:"x",v:"y"}[i.orientation||"v"]&&(s.noMultiCategory=!0),s.autotypenumbers=e.autotypenumbers,kI(i,a)){var u=MI(i),f=[];for(n=0;n0&&(n["_"+t+"axes"]||{})[r])return n;if((n[t+"axis"]||t)===r){if(kI(n,t))return n;if((n[t]||[]).length||n[t+"0"])return n}}}function MI(e){return{v:"x",h:"y"}[e.orientation||"v"]}function kI(e,r){var t=MI(e),a=h0(e,"box-violin"),n=h0(e._fullInput||{},"candlestick");return a&&!n&&r===t&&e[t]===void 0&&e[t+"0"]===void 0}});var CI=N((LFe,LI)=>{"use strict";var Nge=Vn().isTypedArraySpec;function zge(e,r){var t=r.dataAttr||e._id.charAt(0),a={},n,i,o;if(r.axData)n=r.axData;else for(n=[],i=0;i0||Nge(i),l;o&&(l="array");var s=a("categoryorder",l),u;s==="array"&&(u=a("categoryarray")),!o&&s==="array"&&(s=t.categoryorder="trace"),s==="trace"?t._initialCategories=[]:s==="array"?t._initialCategories=u.slice():(u=zge(t,n).sort(),s==="category ascending"?t._initialCategories=u:s==="category descending"&&(t._initialCategories=u.reverse()))}}});var b4=N((CFe,DI)=>{"use strict";var EI=kn().mix,Ige=si(),Oge=Le();DI.exports=function(r,t,a,n){n=n||{};var i=n.dfltColor;function o(q,E){return Oge.coerce2(r,t,n.attributes,q,E)}var l=o("linecolor",i),s=o("linewidth"),u=a("showline",n.showLine||!!l||!!s);u||(delete t.linecolor,delete t.linewidth);var f=EI(i,n.bgColor,n.blend||Ige.lightFraction).toRgbString(),c=o("gridcolor",f),v=o("gridwidth"),d=o("griddash"),p=a("showgrid",n.showGrid||!!c||!!v||!!d);if(p||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),n.hasMinor){var y=EI(t.gridcolor,n.bgColor,67).toRgbString(),m=o("minor.gridcolor",y),x=o("minor.gridwidth",t.gridwidth||1),w=o("minor.griddash",t.griddash||"solid"),_=a("minor.showgrid",!!m||!!x||!!w);_||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!n.noZeroLine){var b=o("zerolinelayer"),T=o("zerolinecolor",i),k=o("zerolinewidth"),M=a("zeroline",n.showGrid||!!T||!!k);M||(delete t.zerolinelayer,delete t.zerolinecolor,delete t.zerolinewidth)}}});var _4=N((EFe,II)=>{"use strict";var RI=Rr(),Bge=br(),d0=Le(),Hge=_t(),Uge=to(),x4=hi(),PI=o1(),FI=l1(),Gge=u1(),Vge=f1(),Yge=CI(),Wge=b4(),jge=a5(),NI=Kf(),_m=Ca().WEEKDAY_PATTERN,Zge=Ca().HOUR_PATTERN;II.exports=function(r,t,a,n,i){var o=n.letter,l=n.font||{},s=n.splomStash||{},u=a("visible",!n.visibleDflt),f=t._template||{},c=t.type||f.type||"-",v;if(c==="date"){var d=Bge.getComponentMethod("calendars","handleDefaults");d(r,t,"calendar",n.calendar),n.noTicklabelmode||(v=a("ticklabelmode"))}!n.noTicklabelindex&&(c==="date"||c==="linear")&&a("ticklabelindex");var p="";(!n.noTicklabelposition||c==="multicategory")&&(p=d0.coerce(r,t,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:v==="period"?["outside","inside"]:o==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),n.noTicklabeloverflow||a("ticklabeloverflow",p.indexOf("inside")!==-1?"hide past domain":c==="category"||c==="multicategory"?"allow":"hide past div"),NI(t,i),jge(r,t,a,n),Yge(r,t,a,n),n.noHover||(c!=="category"&&a("hoverformat"),n.noUnifiedhovertitle||a("unifiedhovertitle.text"));var y=a("color"),m=y!==x4.color.dflt?y:l.color,x=s.label||i._dfltTitle[o];if(Vge(r,t,a,c,n),!u)return t;a("title.text",x),d0.coerceFont(a,"title.font",l,{overrideDflt:{size:d0.bigFont(l.size),color:m}}),PI(r,t,a,c);var w=n.hasMinor;if(w&&(Hge.newContainer(t,"minor"),PI(r,t,a,c,{isMinor:!0})),Gge(r,t,a,c,n),FI(r,t,a,n),w){var _=n.isMinor;n.isMinor=!0,FI(r,t,a,n),n.isMinor=_}Wge(r,t,a,{dfltColor:y,bgColor:n.bgColor,showGrid:n.showGrid,hasMinor:w,attributes:x4}),w&&!t.minor.ticks&&!t.minor.showgrid&&delete t.minor,(t.showline||t.ticks)&&a("mirror");var b=c==="multicategory";if(!n.noTickson&&(c==="category"||b)&&(t.ticks||t.showgrid)&&(b?(a("tickson","boundaries"),delete t.ticklabelposition):a("tickson")),b){var T=a("showdividers");T&&(a("dividercolor"),a("dividerwidth"))}if(c==="date")if(Uge(r,t,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:Xge}),!t.rangebreaks.length)delete t.rangebreaks;else{for(var k=0;k=2){var o="",l,s;if(i.length===2){for(l=0;l<2;l++)if(s=zI(i[l]),s){o=_m;break}}var u=a("pattern",o);if(u===_m)for(l=0;l<2;l++)s=zI(i[l]),s&&(r.bounds[l]=i[l]=s-1);if(u)for(l=0;l<2;l++)switch(s=i[l],u){case _m:if(!RI(s)){r.enabled=!1;return}if(s=+s,s!==Math.floor(s)||s<0||s>=7){r.enabled=!1;return}r.bounds[l]=i[l]=s;break;case Zge:if(!RI(s)){r.enabled=!1;return}if(s=+s,s<0||s>24){r.enabled=!1;return}r.bounds[l]=i[l]=s;break}if(t.autorange===!1){var f=t.range;if(f[0]f[1]){r.enabled=!1;return}}else if(i[0]>f[0]&&i[1]{"use strict";var $ge=Rr(),wm=Le();OI.exports=function(r,t,a,n){var i=n.counterAxes||[],o=n.overlayableAxes||[],l=n.letter,s=n.grid,u=n.overlayingDomain,f,c,v,d,p,y;s&&(c=s._domains[l][s._axisMap[t._id]],f=s._anchors[t._id],c&&(v=s[l+"side"].split(" ")[0],d=s.domain[l][v==="right"||v==="top"?1:0])),c=c||[0,1],f=f||($ge(r.position)?"free":i[0]||"free"),v=v||(l==="x"?"bottom":"left"),d=d||0,p=0,y=!1;var m=wm.coerce(r,t,{anchor:{valType:"enumerated",values:["free"].concat(i),dflt:f}},"anchor"),x=wm.coerce(r,t,{side:{valType:"enumerated",values:l==="x"?["bottom","top"]:["left","right"],dflt:v}},"side");if(m==="free"){if(l==="y"){var w=a("autoshift");w&&(d=x==="left"?u[0]:u[1],y=t.automargin?t.automargin:!0,p=x==="left"?-3:3),a("shift",p)}a("position",d)}a("automargin",y);var _=!1;if(o.length&&(_=wm.coerce(r,t,{overlaying:{valType:"enumerated",values:[!1].concat(o),dflt:!1}},"overlaying")),!_){var b=a("domain",c);b[0]>b[1]-1/4096&&(t.domain=c),wm.noneOrAll(r.domain,t.domain,c),t.tickmode==="sync"&&(t.tickmode="auto")}return a("layer"),t}});var ZI=N((RFe,jI)=>{"use strict";var qu=Le(),BI=Tr(),Kge=qo().isUnifiedHover,Qge=q5(),HI=_t(),e2e=Cf(),UI=hi(),r2e=qI(),GI=_4(),t2e=Au(),VI=w4(),A4=la(),Bo=A4.id2name,YI=A4.name2id,a2e=Ca().AX_ID_PATTERN,WI=br(),Tm=WI.traceIs,T4=WI.getComponentMethod;function Am(e,r,t){Array.isArray(e[r])?e[r].push(t):e[r]=[t]}jI.exports=function(r,t,a){var n=t.autotypenumbers,i={},o={},l={},s={},u={},f={},c={},v={},d={},p={},y,m;for(y=0;y{"use strict";var n2e=Sr(),XI=br(),Mm=Le(),Qn=Wr(),km=zr();JI.exports=function(r,t,a,n){var i=r._fullLayout;if(t.length===0){km.redrawComponents(r);return}function o(m){var x=m.xaxis,w=m.yaxis;i._defs.select("#"+m.clipId+"> rect").call(Qn.setTranslate,0,0).call(Qn.setScale,1,1),m.plot.call(Qn.setTranslate,x._offset,w._offset).call(Qn.setScale,1,1);var _=m.plot.selectAll(".scatterlayer .trace");_.selectAll(".point").call(Qn.setPointGroupScale,1,1),_.selectAll(".textpoint").call(Qn.setTextPointsScale,1,1),_.call(Qn.hideOutsideRangePoints,m)}function l(m,x){var w=m.plotinfo,_=w.xaxis,b=w.yaxis,T=_._length,k=b._length,M=!!m.xr1,q=!!m.yr1,E=[];if(M){var D=Mm.simpleMap(m.xr0,_.r2l),P=Mm.simpleMap(m.xr1,_.r2l),R=D[1]-D[0],z=P[1]-P[0];E[0]=(D[0]*(1-x)+x*P[0]-D[0])/(D[1]-D[0])*T,E[2]=T*(1-x+x*z/R),_.range[0]=_.l2r(D[0]*(1-x)+x*P[0]),_.range[1]=_.l2r(D[1]*(1-x)+x*P[1])}else E[0]=0,E[2]=T;if(q){var O=Mm.simpleMap(m.yr0,b.r2l),B=Mm.simpleMap(m.yr1,b.r2l),Y=O[1]-O[0],V=B[1]-B[0];E[1]=(O[1]*(1-x)+x*B[1]-O[1])/(O[0]-O[1])*k,E[3]=k*(1-x+x*V/Y),b.range[0]=_.l2r(O[0]*(1-x)+x*B[0]),b.range[1]=b.l2r(O[1]*(1-x)+x*B[1])}else E[1]=0,E[3]=k;km.drawOne(r,_,{skipTitle:!0}),km.drawOne(r,b,{skipTitle:!0}),km.redrawComponents(r,[_._id,b._id]);var H=M?T/E[2]:1,G=q?k/E[3]:1,X=M?E[0]:0,Z=q?E[1]:0,ee=M?E[0]/E[2]*T:0,fe=q?E[1]/E[3]*k:0,ie=_._offset-ee,ue=b._offset-fe;w.clipRect.call(Qn.setTranslate,X,Z).call(Qn.setScale,1/H,1/G),w.plot.call(Qn.setTranslate,ie,ue).call(Qn.setScale,H,G),Qn.setPointGroupScale(w.zoomScalePts,1/H,1/G),Qn.setTextPointsScale(w.zoomScaleTxt,1/H,1/G)}var s;n&&(s=n());function u(){for(var m={},x=0;xa.duration?(u(),d=window.cancelAnimationFrame(y)):d=window.requestAnimationFrame(y)}return c=Date.now(),d=window.requestAnimationFrame(y),Promise.resolve()}});var Li=N(Ja=>{"use strict";var qm=Sr(),KI=br(),Lu=Le(),i2e=ta(),o2e=Wr(),QI=Kp().getModuleCalcData,us=la(),uo=Ca(),l2e=sl(),rt=Lu.ensureSingle;function Sm(e,r,t){return Lu.ensureSingle(e,r,t,function(a){a.datum(t)})}var Cu=uo.zindexSeparator;Ja.name="cartesian";Ja.attr=["xaxis","yaxis"];Ja.idRoot=["x","y"];Ja.idRegex=uo.idRegex;Ja.attrRegex=uo.attrRegex;Ja.attributes=AI();Ja.layoutAttributes=hi();Ja.supplyLayoutDefaults=ZI();Ja.transitionAxes=$I();Ja.finalizeSubplots=function(e,r){var t=r._subplots,a=t.xaxis,n=t.yaxis,i=t.cartesian,o=i,l={},s={},u,f,c;for(u=0;u0){var d=v.id;if(d.indexOf(Cu)!==-1)continue;d+=Cu+(u+1),v=Lu.extendFlat({},v,{id:d,plot:n._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var p=[],y,m=0;m1&&(T+=Cu+b),_.push(l+T),o=0;o1,c=r.mainplotinfo;if(!r.mainplot||f)if(u)r.xlines=rt(a,"path","xlines-above"),r.ylines=rt(a,"path","ylines-above"),r.xaxislayer=rt(a,"g","xaxislayer-above"),r.yaxislayer=rt(a,"g","yaxislayer-above");else{if(!o){var v=rt(a,"g","layer-subplot");r.shapelayer=rt(v,"g","shapelayer"),r.imagelayer=rt(v,"g","imagelayer"),c&&f?(r.minorGridlayer=c.minorGridlayer,r.gridlayer=c.gridlayer,r.zerolinelayer=c.zerolinelayer):(r.minorGridlayer=rt(a,"g","minor-gridlayer"),r.gridlayer=rt(a,"g","gridlayer"),r.zerolinelayer=rt(a,"g","zerolinelayer"));var d=rt(a,"g","layer-between");r.shapelayerBetween=rt(d,"g","shapelayer"),r.imagelayerBetween=rt(d,"g","imagelayer"),rt(a,"path","xlines-below"),rt(a,"path","ylines-below"),r.overlinesBelow=rt(a,"g","overlines-below"),rt(a,"g","xaxislayer-below"),rt(a,"g","yaxislayer-below"),r.overaxesBelow=rt(a,"g","overaxes-below")}r.overplot=rt(a,"g","overplot"),r.plot=rt(r.overplot,"g",n),c&&f?r.zerolinelayerAbove=c.zerolinelayerAbove:r.zerolinelayerAbove=rt(a,"g","zerolinelayer-above"),o||(r.xlines=rt(a,"path","xlines-above"),r.ylines=rt(a,"path","ylines-above"),r.overlinesAbove=rt(a,"g","overlines-above"),rt(a,"g","xaxislayer-above"),rt(a,"g","yaxislayer-above"),r.overaxesAbove=rt(a,"g","overaxes-above"),r.xlines=a.select(".xlines-"+l),r.ylines=a.select(".ylines-"+s),r.xaxislayer=a.select(".xaxislayer-"+l),r.yaxislayer=a.select(".yaxislayer-"+s))}else{var p=c.plotgroup,y=n+"-x",m=n+"-y";r.minorGridlayer=c.minorGridlayer,r.gridlayer=c.gridlayer,r.zerolinelayer=c.zerolinelayer,r.zerolinelayerAbove=c.zerolinelayerAbove,rt(c.overlinesBelow,"path",y),rt(c.overlinesBelow,"path",m),rt(c.overaxesBelow,"g",y),rt(c.overaxesBelow,"g",m),r.plot=rt(c.overplot,"g",n),rt(c.overlinesAbove,"path",y),rt(c.overlinesAbove,"path",m),rt(c.overaxesAbove,"g",y),rt(c.overaxesAbove,"g",m),r.xlines=p.select(".overlines-"+l).select("."+y),r.ylines=p.select(".overlines-"+s).select("."+m),r.xaxislayer=p.select(".overaxes-"+l).select("."+y),r.yaxislayer=p.select(".overaxes-"+s).select("."+m)}o||(u||(Sm(r.minorGridlayer,"g",r.xaxis._id),Sm(r.minorGridlayer,"g",r.yaxis._id),r.minorGridlayer.selectAll("g").map(function(x){return x[0]}).sort(us.idSort),Sm(r.gridlayer,"g",r.xaxis._id),Sm(r.gridlayer,"g",r.yaxis._id),r.gridlayer.selectAll("g").map(function(x){return x[0]}).sort(us.idSort)),r.xlines.style("fill","none").classed("crisp",!0),r.ylines.style("fill","none").classed("crisp",!0))}function tO(e,r){if(e){var t={};e.each(function(s){var u=s[0],f=qm.select(this);f.remove(),aO(u,r),t[u]=!0});for(var a in r._plots)for(var n=r._plots[a],i=n.overlays||[],o=0;o{"use strict";var Lm=Dn();nO.exports={hasLines:Lm.hasLines,hasMarkers:Lm.hasMarkers,hasText:Lm.hasText,isBubble:Lm.isBubble,attributes:wi(),layoutAttributes:Xp(),supplyDefaults:kz(),crossTraceDefaults:Lz(),supplyLayoutDefaults:Ez(),calc:hm().calc,crossTraceCalc:rI(),arraysToCalcdata:cm(),plot:f4(),colorbar:v0(),formatLabels:c4(),style:Su().style,styleOnSelect:Su().styleOnSelect,hoverPoints:y4(),selectPoints:m4(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:Li(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var sO=N((zFe,lO)=>{"use strict";var u2e=Sr(),f2e=Tr(),oO=m_(),M4=Le(),c2e=M4.strScale,v2e=M4.strRotate,h2e=M4.strTranslate;lO.exports=function(r,t,a){var n=r.node(),i=oO[a.arrowhead||0],o=oO[a.startarrowhead||0],l=(a.arrowwidth||1)*(a.arrowsize||1),s=(a.arrowwidth||1)*(a.startarrowsize||1),u=t.indexOf("start")>=0,f=t.indexOf("end")>=0,c=i.backoff*l+a.standoff,v=o.backoff*s+a.startstandoff,d,p,y,m;if(n.nodeName==="line"){d={x:+r.attr("x1"),y:+r.attr("y1")},p={x:+r.attr("x2"),y:+r.attr("y2")};var x=d.x-p.x,w=d.y-p.y;if(y=Math.atan2(w,x),m=y+Math.PI,c&&v&&c+v>Math.sqrt(x*x+w*w)){O();return}if(c){if(c*c>x*x+w*w){O();return}var _=c*Math.cos(y),b=c*Math.sin(y);p.x+=_,p.y+=b,r.attr({x2:p.x,y2:p.y})}if(v){if(v*v>x*x+w*w){O();return}var T=v*Math.cos(y),k=v*Math.sin(y);d.x-=T,d.y-=k,r.attr({x1:d.x,y1:d.y})}}else if(n.nodeName==="path"){var M=n.getTotalLength(),q="";if(M{"use strict";var uO=Sr(),k4=br(),d2e=ta(),cs=Le(),S4=cs.strTranslate,y0=zr(),Eu=Tr(),gl=Wr(),fO=Pn(),q4=Ea(),L4=rs(),p0=pi(),p2e=_t().arrayEditor,y2e=sO();hO.exports={draw:m2e,drawOne:cO,drawRaw:vO};function m2e(e){var r=e._fullLayout;r._infolayer.selectAll(".annotation").remove();for(var t=0;t2/3?Re="right":Re="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[Re]}for(var ce=!1,W=["x","y"],Q=0;Q1)&&(me===pe?(Fe=ye.r2fraction(r["a"+j]),(Fe<0||Fe>1)&&(ce=!0)):ce=!0),Oe=ye._offset+ye.r2p(r[j]),Ae=.5}else{var Te=hr==="domain";j==="x"?(se=r[j],Oe=Te?ye._offset+ye._length*se:Oe=l.l+l.w*se):(se=1-r[j],Oe=Te?ye._offset+ye._length*se:Oe=l.t+l.h*se),Ae=r.showarrow?.5:se}if(r.showarrow){Ce.head=Oe;var qe=r["a"+j];if(Xe=Ne*oe(.5,r.xanchor)-Ee*oe(.5,r.yanchor),me===pe){var Ge=y0.getRefType(me);Ge==="domain"?(j==="y"&&(qe=1-qe),Ce.tail=ye._offset+ye._length*qe):Ge==="paper"?j==="y"?(qe=1-qe,Ce.tail=l.t+l.h*qe):Ce.tail=l.l+l.w*qe:Ce.tail=ye._offset+ye.r2p(qe),He=Xe}else Ce.tail=Oe+qe,He=Xe+qe;Ce.text=Ce.tail+Xe;var Je=o[j==="x"?"width":"height"];if(pe==="paper"&&(Ce.head=cs.constrain(Ce.head,1,Je-1)),me==="pixel"){var Ve=-Math.max(Ce.tail-3,Ce.text),Ze=Math.min(Ce.tail+3,Ce.text)-Je;Ve>0?(Ce.tail+=Ve,Ce.text+=Ve):Ze>0&&(Ce.tail-=Ze,Ce.text-=Ze)}Ce.tail+=Be,Ce.head+=Be}else Xe=Ie*oe(Ae,Ue),He=Xe,Ce.text=Oe+Xe;Ce.text+=Be,Xe+=Be,He+=Be,r["_"+j+"padplus"]=Ie/2+He,r["_"+j+"padminus"]=Ie/2-He,r["_"+j+"size"]=Ie,r["_"+j+"shift"]=Xe}if(ce){M.remove();return}var or=0,rr=0;if(r.align!=="left"&&(or=(K-ie)*(r.align==="center"?.5:1)),r.valign!=="top"&&(rr=(_e-ue)*(r.valign==="middle"?.5:1)),ee)Z.select("svg").attr({x:D+or-1,y:D+rr}).call(gl.setClipUrl,R?y:null,e);else{var Ke=D+rr-fe.top,ze=D+or-fe.left;Y.call(q4.positionText,ze,Ke).call(gl.setClipUrl,R?y:null,e)}z.select("rect").call(gl.setRect,D,D,K,_e),P.call(gl.setRect,q/2,q/2,le-q,he-q),M.call(gl.setTranslate,Math.round(m.x.text-le/2),Math.round(m.y.text-he/2)),_.attr({transform:"rotate("+x+","+m.x.text+","+m.y.text+")"});var ne=function(De,Re){w.selectAll(".annotation-arrow-g").remove();var Qe=m.x.head,fr=m.y.head,sr=m.x.tail+De,kr=m.y.tail+Re,Ir=m.x.text+De,Yr=m.y.text+Re,et=cs.rotationXYMatrix(x,Ir,Yr),qt=cs.apply2DTransform(et),ft=cs.apply2DTransform2(et),Ft=+P.attr("width"),Tt=+P.attr("height"),da=Ir-.5*Ft,$t=da+Ft,oa=Yr-.5*Tt,dr=oa+Tt,yt=[[da,oa,da,dr],[da,dr,$t,dr],[$t,dr,$t,oa],[$t,oa,da,oa]].map(ft);if(!yt.reduce(function(Ct,_a){return Ct^!!cs.segmentsIntersect(Qe,fr,Qe+1e6,fr+1e6,_a[0],_a[1],_a[2],_a[3])},!1)){yt.forEach(function(Ct){var _a=cs.segmentsIntersect(sr,kr,Qe,fr,Ct[0],Ct[1],Ct[2],Ct[3]);_a&&(sr=_a.x,kr=_a.y)});var Zr=r.arrowwidth,$r=r.arrowcolor,mt=r.arrowside,Lt=w.append("g").style({opacity:Eu.opacity($r)}).classed("annotation-arrow-g",!0),Gr=Lt.append("path").attr("d","M"+sr+","+kr+"L"+Qe+","+fr).style("stroke-width",Zr+"px").call(Eu.stroke,Eu.rgb($r));if(y2e(Gr,mt,r),s.annotationPosition&&Gr.node().parentNode&&!a){var Bt=Qe,rn=fr;if(r.standoff){var Wt=Math.sqrt(Math.pow(Qe-sr,2)+Math.pow(fr-kr,2));Bt+=r.standoff*(sr-Qe)/Wt,rn+=r.standoff*(kr-fr)/Wt}var dn=Lt.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(sr-Bt)+","+(kr-rn),transform:S4(Bt,rn)}).style("stroke-width",Zr+6+"px").call(Eu.stroke,"rgba(0,0,0,0)").call(Eu.fill,"rgba(0,0,0,0)"),pn,Nt;p0.init({element:dn.node(),gd:e,prepFn:function(){var Ct=gl.getTranslate(M);pn=Ct.x,Nt=Ct.y,n&&n.autorange&&v(n._name+".autorange",!0),i&&i.autorange&&v(i._name+".autorange",!0)},moveFn:function(Ct,_a){var Qo=qt(pn,Nt),el=Qo[0]+Ct,ct=Qo[1]+_a;M.call(gl.setTranslate,el,ct),d("x",fs(n,Ct,"x",l,r)),d("y",fs(i,_a,"y",l,r)),r.axref===r.xref&&d("ax",fs(n,Ct,"ax",l,r)),r.ayref===r.yref&&d("ay",fs(i,_a,"ay",l,r)),Lt.attr("transform",S4(Ct,_a)),_.attr({transform:"rotate("+x+","+el+","+ct+")"})},doneFn:function(){k4.call("_guiRelayout",e,p());var Ct=document.querySelector(".js-notes-box-panel");Ct&&Ct.redraw(Ct.selectedObj)}})}}};if(r.showarrow&&ne(0,0),b){var ve;p0.init({element:M.node(),gd:e,prepFn:function(){ve=_.attr("transform")},moveFn:function(De,Re){var Qe="pointer";if(r.showarrow)r.axref===r.xref?d("ax",fs(n,De,"ax",l,r)):d("ax",r.ax+De),r.ayref===r.yref?d("ay",fs(i,Re,"ay",l.w,r)):d("ay",r.ay+Re),ne(De,Re);else{if(a)return;var fr,sr;if(n)fr=fs(n,De,"x",l,r);else{var kr=r._xsize/l.w,Ir=r.x+(r._xshift-r.xshift)/l.w-kr/2;fr=p0.align(Ir+De/l.w,kr,0,1,r.xanchor)}if(i)sr=fs(i,Re,"y",l,r);else{var Yr=r._ysize/l.h,et=r.y-(r._yshift+r.yshift)/l.h-Yr/2;sr=p0.align(et-Re/l.h,Yr,0,1,r.yanchor)}d("x",fr),d("y",sr),(!n||!i)&&(Qe=p0.getCursor(n?.5:fr,i?.5:sr,r.xanchor,r.yanchor))}_.attr({transform:S4(De,Re)+ve}),L4(M,Qe)},clickFn:function(De,Re){r.captureevents&&e.emit("plotly_clickannotation",k(Re))},doneFn:function(){L4(M),k4.call("_guiRelayout",e,p());var De=document.querySelector(".js-notes-box-panel");De&&De.redraw(De.selectedObj)}})}}s.annotationText?Y.call(q4.makeEditable,{delegate:M,gd:e}).call(V).on("edit",function(G){r.text=G,this.call(V),d("text",G),n&&n.autorange&&v(n._name+".autorange",!0),i&&i.autorange&&v(i._name+".autorange",!0),k4.call("_guiRelayout",e,p())}):Y.call(V)}});var bO=N((OFe,gO)=>{"use strict";var dO=Le(),g2e=br(),pO=_t().arrayEditor;gO.exports={hasClickToShow:b2e,onClick:x2e};function b2e(e,r){var t=mO(e,r);return t.on.length>0||t.explicitOff.length>0}function x2e(e,r){var t=mO(e,r),a=t.on,n=t.off.concat(t.explicitOff),i={},o=e._fullLayout.annotations,l,s;if(a.length||n.length){for(l=0;l{"use strict";var C4=Le(),qc=Tr();xO.exports=function(r,t,a,n){n("opacity");var i=n("bgcolor"),o=n("bordercolor"),l=qc.opacity(o);n("borderpad");var s=n("borderwidth"),u=n("showarrow");n("text",u?" ":a._dfltTitle.annotation),n("textangle"),C4.coerceFont(n,"font",a.font),n("width"),n("align");var f=n("height");if(f&&n("valign"),u){var c=n("arrowside"),v,d;c.indexOf("end")!==-1&&(v=n("arrowhead"),d=n("arrowsize")),c.indexOf("start")!==-1&&(n("startarrowhead",v),n("startarrowsize",d)),n("arrowcolor",l?t.bordercolor:qc.defaultLine),n("arrowwidth",(l&&s||1)*2),n("standoff"),n("startstandoff")}var p=n("hovertext"),y=a.hoverlabel||{};if(p){var m=n("hoverlabel.bgcolor",y.bgcolor||(qc.opacity(i)?qc.rgb(i):qc.defaultLine)),x=n("hoverlabel.bordercolor",y.bordercolor||qc.contrast(m)),w=C4.extendFlat({},y.font);w.color||(w.color=x),C4.coerceFont(n,"hoverlabel.font",w)}n("captureevents",!!p)}});var wO=N((HFe,_O)=>{"use strict";var D4=Le(),Du=zr(),_2e=to(),w2e=E4(),T2e=mc();_O.exports=function(r,t){_2e(r,t,{name:"annotations",handleItemDefaults:A2e})};function A2e(e,r,t){function a(_,b){return D4.coerce(e,r,T2e,_,b)}var n=a("visible"),i=a("clicktoshow");if(n||i){w2e(e,r,t,a);for(var o=r.showarrow,l=["x","y"],s=[-10,-30],u={_fullLayout:t},f=0;f<2;f++){var c=l[f],v=Du.coerceRef(e,r,u,c,"","paper");if(v!=="paper"){var d=Du.getFromId(u,v);d._annIndices.push(r._index)}if(Du.coercePosition(r,u,a,v,c,.5),o){var p="a"+c,y=Du.coerceRef(e,r,u,p,"pixel",["pixel","paper"]);y!=="pixel"&&y!==v&&(y=r[p]="pixel");var m=y==="pixel"?s[f]:.4;Du.coercePosition(r,u,a,y,p,m)}a(c+"anchor"),a(c+"shift")}if(D4.noneOrAll(e,r,["x","y"]),o&&D4.noneOrAll(e,r,["ax","ay"]),i){var x=a("xclick"),w=a("yclick");r._xclick=x===void 0?r.x:Du.cleanPosition(x,u,r.xref),r._yclick=w===void 0?r.y:Du.cleanPosition(w,u,r.yref)}}}});var MO=N((UFe,AO)=>{"use strict";var R4=Le(),Ru=zr(),M2e=Cm().draw;AO.exports=function(r){var t=r._fullLayout,a=R4.filterVisible(t.annotations);if(a.length&&r._fullData.length)return R4.syncOrAsync([M2e,k2e],r)};function k2e(e){var r=e._fullLayout;R4.filterVisible(r.annotations).forEach(function(t){var a=Ru.getFromId(e,t.xref),n=Ru.getFromId(e,t.yref),i=Ru.getRefType(t.xref),o=Ru.getRefType(t.yref);t._extremes={},i==="range"&&TO(t,a),o==="range"&&TO(t,n)})}function TO(e,r){var t=r._id,a=t.charAt(0),n=e[a],i=e["a"+a],o=e[a+"ref"],l=e["a"+a+"ref"],s=e["_"+a+"padplus"],u=e["_"+a+"padminus"],f={x:1,y:-1}[a]*e[a+"shift"],c=3*e.arrowsize*e.arrowwidth||0,v=c+f,d=c-f,p=3*e.startarrowsize*e.arrowwidth||0,y=p+f,m=p-f,x;if(l===o){var w=Ru.findExtremes(r,[r.r2c(n)],{ppadplus:v,ppadminus:d}),_=Ru.findExtremes(r,[r.r2c(i)],{ppadplus:Math.max(s,y),ppadminus:Math.max(u,m)});x={min:[w.min[0],_.min[0]],max:[w.max[0],_.max[0]]}}else y=i?y+i:y,m=i?m-i:m,x=Ru.findExtremes(r,[r.r2c(n)],{ppadplus:Math.max(s,v,y),ppadminus:Math.max(u,d,m)});e._extremes[t]=x}});var SO=N((GFe,kO)=>{"use strict";var S2e=Rr(),q2e=gp();kO.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",o=a==="linear"&&t.type==="log";if(!(i||o))return;var l=r._fullLayout.annotations,s=t._id.charAt(0),u,f;function c(d){var p=u[d],y=null;i?y=q2e(p,t.range):y=Math.pow(10,p),S2e(y)||(y=null),n(f+d,y)}for(var v=0;v{"use strict";var P4=Cm(),qO=bO();LO.exports={moduleType:"component",name:"annotations",layoutAttributes:mc(),supplyLayoutDefaults:wO(),includeBasePlot:Xh()("annotations"),calcAutorange:MO(),draw:P4.draw,drawOne:P4.drawOne,drawRaw:P4.drawRaw,hasClickToShow:qO.hasClickToShow,onClick:qO.onClick,convertCoords:SO()}});var Em=N((YFe,EO)=>{"use strict";var kt=mc(),L2e=$i().overrideAll,C2e=_t().templatedArray;EO.exports=L2e(C2e("annotation",{visible:kt.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:kt.xanchor,xshift:kt.xshift,yanchor:kt.yanchor,yshift:kt.yshift,text:kt.text,textangle:kt.textangle,font:kt.font,width:kt.width,height:kt.height,opacity:kt.opacity,align:kt.align,valign:kt.valign,bgcolor:kt.bgcolor,bordercolor:kt.bordercolor,borderpad:kt.borderpad,borderwidth:kt.borderwidth,showarrow:kt.showarrow,arrowcolor:kt.arrowcolor,arrowhead:kt.arrowhead,startarrowhead:kt.startarrowhead,arrowside:kt.arrowside,arrowsize:kt.arrowsize,startarrowsize:kt.startarrowsize,arrowwidth:kt.arrowwidth,standoff:kt.standoff,startstandoff:kt.startstandoff,hovertext:kt.hovertext,hoverlabel:kt.hoverlabel,captureevents:kt.captureevents}),"calc","from-root")});var RO=N((WFe,DO)=>{"use strict";var F4=Le(),E2e=zr(),D2e=to(),R2e=E4(),P2e=Em();DO.exports=function(r,t,a){D2e(r,t,{name:"annotations",handleItemDefaults:F2e,fullLayout:a.fullLayout})};function F2e(e,r,t,a){function n(l,s){return F4.coerce(e,r,P2e,l,s)}function i(l){var s=l+"axis",u={_fullLayout:{}};return u._fullLayout[s]=t[s],E2e.coercePosition(r,u,n,l,l,.5)}var o=n("visible");o&&(R2e(e,r,a.fullLayout,n),i("x"),i("y"),i("z"),F4.noneOrAll(e,r,["x","y","z"]),r.xref="x",r.yref="y",r.zref="z",n("xanchor"),n("yanchor"),n("xshift"),n("yshift"),r.showarrow&&(r.axref="pixel",r.ayref="pixel",n("ax",-10),n("ay",-30),F4.noneOrAll(e,r,["ax","ay"])))}});var zO=N((jFe,NO)=>{"use strict";var PO=Le(),FO=zr();NO.exports=function(r){for(var t=r.fullSceneLayout,a=t.annotations,n=0;n{"use strict";function N4(e,r){var t=[0,0,0,0],a,n;for(a=0;a<4;++a)for(n=0;n<4;++n)t[n]+=e[4*a+n]*r[a];return t}function z2e(e,r){var t=N4(e.projection,N4(e.view,N4(e.model,[r[0],r[1],r[2],1])));return t}IO.exports=z2e});var HO=N((XFe,BO)=>{"use strict";var I2e=Cm().drawRaw,O2e=OO(),B2e=["x","y","z"];BO.exports=function(r){for(var t=r.fullSceneLayout,a=r.dataScale,n=t.annotations,i=0;i1){l=!0;break}}l?r.fullLayout._infolayer.select(".annotation-"+r.id+'[data-index="'+i+'"]').remove():(o._pdata=O2e(r.glplot.cameraParams,[t.xaxis.r2l(o.x)*a[0],t.yaxis.r2l(o.y)*a[1],t.zaxis.r2l(o.z)*a[2]]),I2e(r.graphDiv,o,i,r.id,o._xa,o._ya))}}});var VO=N((JFe,GO)=>{"use strict";var H2e=br(),UO=Le();GO.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:Em()}}},layoutAttributes:Em(),handleDefaults:RO(),includeBasePlot:U2e,convert:zO(),draw:HO()};function U2e(e,r){var t=H2e.subplotsRegistry.gl3d;if(t)for(var a=t.attrRegex,n=Object.keys(e),i=0;i{"use strict";var YO=mc(),WO=ma(),jO=wi().line,G2e=ui().dash,fo=bt().extendFlat,V2e=_t().templatedArray,$Fe=jh(),Lc=gn(),{shapeTexttemplateAttrs:Y2e,templatefallbackAttrs:W2e}=Yn(),j2e=Lp();ZO.exports=V2e("shape",{visible:fo({},Lc.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:fo({},Lc.legend,{editType:"calc+arraydraw"}),legendgroup:fo({},Lc.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:fo({},Lc.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:WO({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:fo({},Lc.legendrank,{editType:"calc+arraydraw"}),legendwidth:fo({},Lc.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:fo({},YO.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:fo({},YO.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:fo({},jO.color,{editType:"arraydraw"}),width:fo({},jO.width,{editType:"calc+arraydraw"}),dash:fo({},G2e,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:Y2e({},{keys:Object.keys(j2e)}),texttemplatefallback:W2e({editType:"arraydraw"}),font:WO({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var $O=N((QFe,JO)=>{"use strict";var m0=Le(),Cc=zr(),Z2e=to(),X2e=z4(),XO=ns();JO.exports=function(r,t){Z2e(r,t,{name:"shapes",handleItemDefaults:$2e})};function J2e(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}function $2e(e,r,t){function a(G,X){return m0.coerce(e,r,X2e,G,X)}r._isShape=!0;var n=a("visible");if(n){var i=a("showlegend");i&&(a("legend"),a("legendwidth"),a("legendgroup"),a("legendgrouptitle.text"),m0.coerceFont(a,"legendgrouptitle.font"),a("legendrank"));var o=a("path"),l=o?"path":"rect",s=a("type",l),u=s!=="path";u&&delete r.path,a("editable"),a("layer"),a("opacity"),a("fillcolor"),a("fillrule");var f=a("line.width");f&&(a("line.color"),a("line.dash"));for(var c=a("xsizemode"),v=a("ysizemode"),d=["x","y"],p=0;p<2;p++){var y=d[p],m=y+"anchor",x=y==="x"?c:v,w={_fullLayout:t},_,b,T,k=Cc.coerceRef(e,r,w,y,void 0,"paper"),M=Cc.getRefType(k);if(M==="range"?(_=Cc.getFromId(w,k),_._shapeIndices.push(r._index),T=XO.rangeToShapePosition(_),b=XO.shapePositionToRange(_),(_.type==="category"||_.type==="multicategory")&&(a(y+"0shift"),a(y+"1shift"))):b=T=m0.identity,u){var q=.25,E=.75,D=y+"0",P=y+"1",R=e[D],z=e[P];e[D]=b(e[D],!0),e[P]=b(e[P],!0),x==="pixel"?(a(D,0),a(P,10)):(Cc.coercePosition(r,w,a,k,D,q),Cc.coercePosition(r,w,a,k,P,E)),r[D]=T(r[D]),r[P]=T(r[P]),e[D]=R,e[P]=z}if(x==="pixel"){var O=e[m];e[m]=b(e[m],!0),Cc.coercePosition(r,w,a,k,m,.25),r[m]=T(r[m]),e[m]=O}}u&&m0.noneOrAll(e,r,["x0","x1","y0","y1"]);var B=s==="line",Y,V;if(u&&(Y=a("label.texttemplate"),a("label.texttemplatefallback")),Y||(V=a("label.text")),V||Y){a("label.textangle");var H=a("label.textposition",B?"middle":"middle center");a("label.xanchor"),a("label.yanchor",J2e(B,H)),a("label.padding"),m0.coerceFont(a,"label.font",t.font)}}}});var eB=N((eNe,QO)=>{"use strict";var K2e=Tr(),KO=Le();function Q2e(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}QO.exports=function(r,t,a){a("newshape.visible"),a("newshape.name"),a("newshape.showlegend"),a("newshape.legend"),a("newshape.legendwidth"),a("newshape.legendgroup"),a("newshape.legendgrouptitle.text"),KO.coerceFont(a,"newshape.legendgrouptitle.font"),a("newshape.legendrank"),a("newshape.drawdirection"),a("newshape.layer"),a("newshape.fillcolor"),a("newshape.fillrule"),a("newshape.opacity");var n=a("newshape.line.width");if(n){var i=(r||{}).plot_bgcolor||"#FFF";a("newshape.line.color",K2e.contrast(i)),a("newshape.line.dash")}var o=r.dragmode==="drawline",l=a("newshape.label.text"),s=a("newshape.label.texttemplate");if(a("newshape.label.texttemplatefallback"),l||s){a("newshape.label.textangle");var u=a("newshape.label.textposition",o?"middle":"middle center");a("newshape.label.xanchor"),a("newshape.label.yanchor",Q2e(o,u)),a("newshape.label.padding"),KO.coerceFont(a,"newshape.label.font",t.font)}a("activeshape.fillcolor"),a("activeshape.opacity")}});var iB=N((rNe,nB)=>{"use strict";var I4=Le(),Ec=zr(),Dc=qh(),tB=ns();nB.exports=function(r){var t=r._fullLayout,a=I4.filterVisible(t.shapes);if(!(!a.length||!r._fullData.length))for(var n=0;n0?u+o:o;return{ppad:o,ppadplus:l?c:v,ppadminus:l?v:c}}else return{ppad:o}}function rB(e,r,t){var a=e._id.charAt(0)==="x"?"x":"y",n=e.type==="category"||e.type==="multicategory",i,o,l=0,s=0,u=n?e.r2c:e.d2c,f=r[a+"sizemode"]==="scaled";if(f?(i=r[a+"0"],o=r[a+"1"],n&&(l=r[a+"0shift"],s=r[a+"1shift"])):(i=r[a+"anchor"],o=r[a+"anchor"]),i!==void 0)return[u(i)+l,u(o)+s];if(r.path){var c=1/0,v=-1/0,d=r.path.match(Dc.segmentRE),p,y,m,x,w;for(e.type==="date"&&(u=tB.decodeDate(u)),p=0;pv&&(v=w)));if(v>=c)return[c,v]}}});var sB=N((tNe,lB)=>{"use strict";var oB=by();lB.exports={moduleType:"component",name:"shapes",layoutAttributes:z4(),supplyLayoutDefaults:$O(),supplyDrawNewShapeDefaults:eB(),includeBasePlot:Xh()("shapes"),calcAutorange:iB(),draw:oB.draw,drawOne:oB.drawOne}});var O4=N((nNe,fB)=>{"use strict";var uB=Ca(),t3e=_t().templatedArray,aNe=jh();fB.exports=t3e("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",uB.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",uB.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var vB=N((iNe,cB)=>{"use strict";var a3e=Le(),B4=zr(),n3e=to(),i3e=O4(),o3e="images";cB.exports=function(r,t){var a={name:o3e,handleItemDefaults:l3e};n3e(r,t,a)};function l3e(e,r,t){function a(v,d){return a3e.coerce(e,r,i3e,v,d)}var n=a("source"),i=a("visible",!!n);if(!i)return r;a("layer"),a("xanchor"),a("yanchor"),a("sizex"),a("sizey"),a("sizing"),a("opacity");for(var o={_fullLayout:t},l=["x","y"],s=0;s<2;s++){var u=l[s],f=B4.coerceRef(e,r,o,u,"paper",void 0);if(f!=="paper"){var c=B4.getFromId(o,f);c._imgIndices.push(r._index)}B4.coercePosition(r,o,a,f,u,0)}return r}});var yB=N((oNe,pB)=>{"use strict";var hB=Sr(),s3e=Wr(),Rc=zr(),dB=la(),u3e=sl();pB.exports=function(r){var t=r._fullLayout,a=[],n={},i=[],o,l;for(l=0;l{"use strict";var mB=Rr(),f3e=gp();gB.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",o=a==="linear"&&t.type==="log";if(i||o){for(var l=r._fullLayout.images,s=t._id.charAt(0),u,f,c=0;c{"use strict";xB.exports={moduleType:"component",name:"images",layoutAttributes:O4(),supplyLayoutDefaults:vB(),includeBasePlot:Xh()("images"),draw:yB(),convertCoords:bB()}});var Dm=N((uNe,wB)=>{"use strict";wB.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var H4=N((fNe,AB)=>{"use strict";var c3e=ma(),v3e=si(),h3e=bt().extendFlat,d3e=$i().overrideAll,p3e=Cp(),TB=_t().templatedArray,y3e=TB("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});AB.exports=d3e(TB("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:y3e,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:h3e(p3e({editType:"arraydraw"}),{}),font:c3e({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:v3e.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var qB=N((cNe,SB)=>{"use strict";var Rm=Le(),MB=to(),kB=H4(),m3e=Dm(),g3e=m3e.name,b3e=kB.buttons;SB.exports=function(r,t){var a={name:g3e,handleItemDefaults:x3e};MB(r,t,a)};function x3e(e,r,t){function a(o,l){return Rm.coerce(e,r,kB,o,l)}var n=MB(e,r,{name:"buttons",handleItemDefaults:_3e}),i=a("visible",n.length>0);i&&(a("active"),a("direction"),a("type"),a("showactive"),a("x"),a("y"),Rm.noneOrAll(e,r,["x","y"]),a("xanchor"),a("yanchor"),a("pad.t"),a("pad.r"),a("pad.b"),a("pad.l"),Rm.coerceFont(a,"font",t.font),a("bgcolor",t.paper_bgcolor),a("bordercolor"),a("borderwidth"))}function _3e(e,r){function t(n,i){return Rm.coerce(e,r,b3e,n,i)}var a=t("visible",e.method==="skip"||Array.isArray(e.args));a&&(t("method"),t("args"),t("args2"),t("label"),t("execute"))}});var EB=N((vNe,CB)=>{"use strict";CB.exports=Ht;var co=Sr(),LB=Tr(),Pc=Wr(),Pm=Le();function Ht(e,r,t){this.gd=e,this.container=r,this.id=t,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}Ht.barWidth=2;Ht.barLength=20;Ht.barRadius=2;Ht.barPad=1;Ht.barColor="#808BA4";Ht.prototype.enable=function(r,t,a){var n=this.gd._fullLayout,i=n.width,o=n.height;this.position=r;var l=this.position.l,s=this.position.w,u=this.position.t,f=this.position.h,c=this.position.direction,v=c==="down",d=c==="left",p=c==="right",y=c==="up",m=s,x=f,w,_,b,T;!v&&!d&&!p&&!y&&(this.position.direction="down",v=!0);var k=v||y;k?(w=l,_=w+m,v?(b=u,T=Math.min(b+x,o),x=T-b):(T=u+x,b=Math.max(T-x,0),x=T-b)):(b=u,T=b+x,d?(_=l+m,w=Math.max(_-m,0),m=_-w):(w=l,_=Math.min(w+m,i),m=_-w)),this._box={l:w,t:b,w:m,h:x};var M=s>m,q=Ht.barLength+2*Ht.barPad,E=Ht.barWidth+2*Ht.barPad,D=l,P=u+f;P+E>o&&(P=o-E);var R=this.container.selectAll("rect.scrollbar-horizontal").data(M?[0]:[]);R.exit().on(".drag",null).remove(),R.enter().append("rect").classed("scrollbar-horizontal",!0).call(LB.fill,Ht.barColor),M?(this.hbar=R.attr({rx:Ht.barRadius,ry:Ht.barRadius,x:D,y:P,width:q,height:E}),this._hbarXMin=D+q/2,this._hbarTranslateMax=m-q):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var z=f>x,O=Ht.barWidth+2*Ht.barPad,B=Ht.barLength+2*Ht.barPad,Y=l+s,V=u;Y+O>i&&(Y=i-O);var H=this.container.selectAll("rect.scrollbar-vertical").data(z?[0]:[]);H.exit().on(".drag",null).remove(),H.enter().append("rect").classed("scrollbar-vertical",!0).call(LB.fill,Ht.barColor),z?(this.vbar=H.attr({rx:Ht.barRadius,ry:Ht.barRadius,x:Y,y:V,width:O,height:B}),this._vbarYMin=V+B/2,this._vbarTranslateMax=x-B):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var G=this.id,X=w-.5,Z=z?_+O+.5:_+.5,ee=b-.5,fe=M?T+E+.5:T+.5,ie=n._topdefs.selectAll("#"+G).data(M||z?[0]:[]);if(ie.exit().remove(),ie.enter().append("clipPath").attr("id",G).append("rect"),M||z?(this._clipRect=ie.select("rect").attr({x:Math.floor(X),y:Math.floor(ee),width:Math.ceil(Z)-Math.floor(X),height:Math.ceil(fe)-Math.floor(ee)}),this.container.call(Pc.setClipUrl,G,this.gd),this.bg.attr({x:l,y:u,width:s,height:f})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Pc.setClipUrl,null),delete this._clipRect),M||z){var ue=co.behavior.drag().on("dragstart",function(){co.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(ue);var K=co.behavior.drag().on("dragstart",function(){co.event.sourceEvent.preventDefault(),co.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));M&&this.hbar.on(".drag",null).call(K),z&&this.vbar.on(".drag",null).call(K)}this.setTranslate(t,a)};Ht.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Pc.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};Ht.prototype._onBoxDrag=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r-=co.event.dx),this.vbar&&(t-=co.event.dy),this.setTranslate(r,t)};Ht.prototype._onBoxWheel=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r+=co.event.deltaY),this.vbar&&(t+=co.event.deltaY),this.setTranslate(r,t)};Ht.prototype._onBarDrag=function(){var r=this.translateX,t=this.translateY;if(this.hbar){var a=r+this._hbarXMin,n=a+this._hbarTranslateMax,i=Pm.constrain(co.event.x,a,n),o=(i-a)/(n-a),l=this.position.w-this._box.w;r=o*l}if(this.vbar){var s=t+this._vbarYMin,u=s+this._vbarTranslateMax,f=Pm.constrain(co.event.y,s,u),c=(f-s)/(u-s),v=this.position.h-this._box.h;t=c*v}this.setTranslate(r,t)};Ht.prototype.setTranslate=function(r,t){var a=this.position.w-this._box.w,n=this.position.h-this._box.h;if(r=Pm.constrain(r||0,0,a),t=Pm.constrain(t||0,0,n),this.translateX=r,this.translateY=t,this.container.call(Pc.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-t),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+t-.5)}),this.hbar){var i=r/a;this.hbar.call(Pc.setTranslate,r+i*this._hbarTranslateMax,t)}if(this.vbar){var o=t/n;this.vbar.call(Pc.setTranslate,r,t+o*this._vbarTranslateMax)}}});var HB=N((hNe,BB)=>{"use strict";var Fc=Sr(),g0=ta(),b0=Tr(),Nc=Wr(),ei=Le(),Fm=Ea(),w3e=_t().arrayEditor,RB=ja().LINE_SPACING,wr=Dm(),T3e=EB();BB.exports=function(r){var t=r._fullLayout,a=ei.filterVisible(t[wr.name]);function n(v){g0.autoMargin(r,IB(v))}var i=t._menulayer.selectAll("g."+wr.containerClassName).data(a.length>0?[0]:[]);if(i.enter().append("g").classed(wr.containerClassName,!0).style("cursor","pointer"),i.exit().each(function(){Fc.select(this).selectAll("g."+wr.headerGroupClassName).each(n)}).remove(),a.length!==0){var o=i.selectAll("g."+wr.headerGroupClassName).data(a,A3e);o.enter().append("g").classed(wr.headerGroupClassName,!0);for(var l=ei.ensureSingle(i,"g",wr.dropdownButtonGroupClassName,function(v){v.style("pointer-events","all")}),s=0;s{"use strict";var E3e=Dm();UB.exports={moduleType:"component",name:E3e.name,layoutAttributes:H4(),supplyLayoutDefaults:qB(),draw:HB()}});var _0=N((pNe,VB)=>{"use strict";VB.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var Y4=N((yNe,jB)=>{"use strict";var YB=ma(),D3e=Cp(),R3e=bt().extendDeepAll,P3e=$i().overrideAll,F3e=rh(),WB=_t().templatedArray,Pu=_0(),N3e=WB("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});jB.exports=P3e(WB("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:N3e,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:R3e(D3e({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:F3e.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:YB({})},font:YB({}),activebgcolor:{valType:"color",dflt:Pu.gripBgActiveColor},bgcolor:{valType:"color",dflt:Pu.railBgColor},bordercolor:{valType:"color",dflt:Pu.railBorderColor},borderwidth:{valType:"number",min:0,dflt:Pu.railBorderWidth},ticklen:{valType:"number",min:0,dflt:Pu.tickLength},tickcolor:{valType:"color",dflt:Pu.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:Pu.minorTickLength}}),"arraydraw","from-root")});var $B=N((mNe,JB)=>{"use strict";var zc=Le(),ZB=to(),XB=Y4(),z3e=_0(),I3e=z3e.name,O3e=XB.steps;JB.exports=function(r,t){ZB(r,t,{name:I3e,handleItemDefaults:B3e})};function B3e(e,r,t){function a(c,v){return zc.coerce(e,r,XB,c,v)}for(var n=ZB(e,r,{name:"steps",handleItemDefaults:H3e}),i=0,o=0;o{"use strict";var vo=Sr(),Nm=ta(),vs=Tr(),ho=Wr(),ri=Le(),U3e=ri.strTranslate,w0=Ea(),G3e=_t().arrayEditor,Fr=_0(),Z4=ja(),eH=Z4.LINE_SPACING,W4=Z4.FROM_TL,j4=Z4.FROM_BR;oH.exports=function(r){var t=r._context.staticPlot,a=r._fullLayout,n=V3e(a,r),i=a._infolayer.selectAll("g."+Fr.containerClassName).data(n.length>0?[0]:[]);i.enter().append("g").classed(Fr.containerClassName,!0).style("cursor",t?null:"ew-resize");function o(f){f._commandObserver&&(f._commandObserver.remove(),delete f._commandObserver),Nm.autoMargin(r,rH(f))}if(i.exit().each(function(){vo.select(this).selectAll("g."+Fr.groupClassName).each(o)}).remove(),n.length!==0){var l=i.selectAll("g."+Fr.groupClassName).data(n,Y3e);l.enter().append("g").classed(Fr.groupClassName,!0),l.exit().each(o).remove();for(var s=0;s0&&(l=l.transition().duration(r.transition.duration).ease(r.transition.easing)),l.attr("transform",U3e(o-Fr.gripWidth*.5,r._dims.currentValueTotalHeight))}}function X4(e,r){var t=e._dims;return t.inputAreaStart+Fr.stepInset+(t.inputAreaLength-2*Fr.stepInset)*Math.min(1,Math.max(0,r))}function QB(e,r){var t=e._dims;return Math.min(1,Math.max(0,(r-Fr.stepInset-t.inputAreaStart)/(t.inputAreaLength-2*Fr.stepInset-2*t.inputAreaStart)))}function K3e(e,r,t){var a=t._dims,n=ri.ensureSingle(e,"rect",Fr.railTouchRectClass,function(i){i.call(nH,r,e,t).style("pointer-events","all")});n.attr({width:a.inputAreaLength,height:Math.max(a.inputAreaWidth,Fr.tickOffset+t.ticklen+a.labelHeight)}).call(vs.fill,t.bgcolor).attr("opacity",0),ho.setTranslate(n,0,a.currentValueTotalHeight)}function Q3e(e,r){var t=r._dims,a=t.inputAreaLength-Fr.railInset*2,n=ri.ensureSingle(e,"rect",Fr.railRectClass);n.attr({width:a,height:Fr.railWidth,rx:Fr.railRadius,ry:Fr.railRadius,"shape-rendering":"crispEdges"}).call(vs.stroke,r.bordercolor).call(vs.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px"),ho.setTranslate(n,Fr.railInset,(t.inputAreaWidth-Fr.railWidth)*.5+t.currentValueTotalHeight)}});var uH=N((bNe,sH)=>{"use strict";var ebe=_0();sH.exports={moduleType:"component",name:ebe.name,layoutAttributes:Y4(),supplyLayoutDefaults:$B(),draw:lH()}});var Im=N((xNe,cH)=>{"use strict";var fH=si();cH.exports={bgcolor:{valType:"color",dflt:fH.background,editType:"plot"},bordercolor:{valType:"color",dflt:fH.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var J4=N((_Ne,vH)=>{"use strict";vH.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var Om=N((wNe,hH)=>{"use strict";hH.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var yH=N(Hm=>{"use strict";var rbe=la(),tbe=Ea(),dH=Om(),abe=ja().LINE_SPACING,Bm=dH.name;function pH(e){var r=e&&e[Bm];return r&&r.visible}Hm.isVisible=pH;Hm.makeData=function(e){for(var r=rbe.list({_fullLayout:e},"x",!0),t=e.margin,a=[],n=0;n{"use strict";var Um=Le(),mH=_t(),gH=la(),nbe=Im(),ibe=J4();bH.exports=function(r,t,a){var n=r[a],i=t[a];if(!(n.rangeslider||t._requestRangeslider[i._id]))return;Um.isPlainObject(n.rangeslider)||(n.rangeslider={});var o=n.rangeslider,l=mH.newContainer(i,"rangeslider");function s(T,k){return Um.coerce(o,l,nbe,T,k)}var u,f;function c(T,k){return Um.coerce(u,f,ibe,T,k)}var v=s("visible");if(v){s("bgcolor",t.plot_bgcolor),s("bordercolor"),s("borderwidth"),s("thickness"),s("autorange",!i.isValidRange(o.range)),s("range");var d=t._subplots;if(d)for(var p=d.cartesian.filter(function(T){return T.slice(0,Math.max(0,T.indexOf("y")))===gH.name2id(a)}).map(function(T){return T.slice(T.indexOf("y"),T.length)}),y=Um.simpleMap(p,gH.id2name),m=0;m{"use strict";var obe=la().list,lbe=mh().getAutoRange,sbe=Om();_H.exports=function(r){for(var t=obe(r,"x",!0),a=0;a{"use strict";var Gm=Sr(),ube=br(),fbe=ta(),Jt=Le(),Vm=Jt.strTranslate,AH=Wr(),hs=Tr(),cbe=$f(),vbe=Li(),$4=la(),hbe=pi(),dbe=rs(),Ur=Om();MH.exports=function(e){for(var r=e._fullLayout,t=r._rangeSliderData,a=0;a=H.max)Y=P[V+1];else if(B=H.pmax)Y=P[V+1];else if(B0?e.touches[0].clientX:0}function pbe(e,r,t,a){if(r._context.staticPlot)return;var n=e.select("rect."+Ur.slideBoxClassName).node(),i=e.select("rect."+Ur.grabAreaMinClassName).node(),o=e.select("rect."+Ur.grabAreaMaxClassName).node();function l(){var s=Gm.event,u=s.target,f=TH(s),c=f-e.node().getBoundingClientRect().left,v=a.d2p(t._rl[0]),d=a.d2p(t._rl[1]),p=hbe.coverSlip();this.addEventListener("touchmove",y),this.addEventListener("touchend",m),p.addEventListener("mousemove",y),p.addEventListener("mouseup",m);function y(x){var w=TH(x),_=+w-f,b,T,k;switch(u){case n:if(k="ew-resize",v+_>t._length||d+_<0)return;b=v+_,T=d+_;break;case i:if(k="col-resize",v+_>t._length)return;b=v+_,T=d;break;case o:if(k="col-resize",d+_<0)return;b=v,T=d+_;break;default:k="ew-resize",b=c,T=c+_;break}if(T{"use strict";var Mbe=Le(),kbe=Im(),Sbe=J4(),K4=yH();SH.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:Mbe.extendFlat({},kbe,{yaxis:Sbe})}}},layoutAttributes:Im(),handleDefaults:xH(),calcAutorange:wH(),draw:kH(),isVisible:K4.isVisible,makeData:K4.makeData,autoMarginOpts:K4.autoMarginOpts}});var Ym=N((qNe,CH)=>{"use strict";var qbe=ma(),LH=si(),Lbe=_t().templatedArray,Cbe=Lbe("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});CH.exports={visible:{valType:"boolean",editType:"plot"},buttons:Cbe,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:qbe({editType:"plot"}),bgcolor:{valType:"color",dflt:LH.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:LH.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var Q4=N((LNe,EH)=>{"use strict";EH.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var PH=N((CNe,RH)=>{"use strict";var Wm=Le(),Ebe=Tr(),Dbe=_t(),Rbe=to(),DH=Ym(),ew=Q4();RH.exports=function(r,t,a,n,i){var o=r.rangeselector||{},l=Dbe.newContainer(t,"rangeselector");function s(d,p){return Wm.coerce(o,l,DH,d,p)}var u=Rbe(o,l,{name:"buttons",handleItemDefaults:Pbe,calendar:i}),f=s("visible",u.length>0);if(f){var c=Fbe(t,a,n);s("x",c[0]),s("y",c[1]),Wm.noneOrAll(r,t,["x","y"]),s("xanchor"),s("yanchor"),Wm.coerceFont(s,"font",a.font);var v=s("bgcolor");s("activecolor",Ebe.contrast(v,ew.lightAmount,ew.darkAmount)),s("bordercolor"),s("borderwidth")}};function Pbe(e,r,t,a){var n=a.calendar;function i(s,u){return Wm.coerce(e,r,DH.buttons,s,u)}var o=i("visible");if(o){var l=i("step");l!=="all"&&(n&&n!=="gregorian"&&(l==="month"||l==="year")?r.stepmode="backward":i("stepmode"),i("count")),i("label")}}function Fbe(e,r,t){for(var a=t.filter(function(l){return r[l].anchor===e._id}),n=0,i=0;i{"use strict";var Nbe=tb(),zbe=Le().titleCase;FH.exports=function(r,t){var a=r._name,n={};if(t.step==="all")n[a+".autorange"]=!0;else{var i=Ibe(r,t);n[a+".range[0]"]=i[0],n[a+".range[1]"]=i[1]}return n};function Ibe(e,r){var t=e.range,a=new Date(e.r2l(t[1])),n=r.step,i=Nbe["utc"+zbe(n)],o=r.count,l;switch(r.stepmode){case"backward":l=e.l2r(+i.offset(a,-o));break;case"todate":var s=i.offset(a,-o);l=e.l2r(+i.ceil(s));break}var u=t[1];return[l,u]}});var VH=N((DNe,GH)=>{"use strict";var Zm=Sr(),Obe=br(),Bbe=ta(),zH=Tr(),UH=Wr(),bl=Le(),IH=bl.strTranslate,jm=Ea(),Hbe=la(),aw=ja(),OH=aw.LINE_SPACING,BH=aw.FROM_TL,HH=aw.FROM_BR,tw=Q4(),Ube=NH();GH.exports=function(r){var t=r._fullLayout,a=t._infolayer.selectAll(".rangeselector").data(Gbe(r),Vbe);a.enter().append("g").classed("rangeselector",!0),a.exit().remove(),a.style({cursor:"pointer","pointer-events":"all"}),a.each(function(n){var i=Zm.select(this),o=n,l=o.rangeselector,s=i.selectAll("g.button").data(bl.filterVisible(l.buttons));s.enter().append("g").classed("button",!0),s.exit().remove(),s.each(function(u){var f=Zm.select(this),c=Ube(o,u);u._isActive=Ybe(o,u,c),f.call(rw,l,u),f.call(jbe,l,u,r),f.on("click",function(){r._dragged||Obe.call("_guiRelayout",r,c)}),f.on("mouseover",function(){u._isHovered=!0,f.call(rw,l,u)}),f.on("mouseout",function(){u._isHovered=!1,f.call(rw,l,u)})}),Xbe(r,s,l,o._name,i)})};function Gbe(e){for(var r=Hbe.list(e,"x",!0),t=[],a=0;a{"use strict";YH.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:Ym()}}},layoutAttributes:Ym(),handleDefaults:PH(),draw:VH()}});var Ic=N(nw=>{"use strict";var jH=bt().extendFlat;nw.attributes=function(e,r){e=e||{},r=r||{};var t={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},a=e.name?e.name+" ":"",n=e.trace?"trace ":"subplot ",i=r.description?" "+r.description:"",o={x:jH({},t,{}),y:jH({},t,{}),editType:e.editType};return e.noGridCell||(o.row={valType:"integer",min:0,dflt:0,editType:e.editType},o.column={valType:"integer",min:0,dflt:0,editType:e.editType}),o};nw.defaults=function(e,r,t,a){var n=a&&a.x||[0,1],i=a&&a.y||[0,1],o=r.grid;if(o){var l=t("domain.column");l!==void 0&&(l{"use strict";var Jbe=Le(),$be=kf().counter,Kbe=Ic().attributes,ZH=Ca().idRegex,Qbe=_t(),iw={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[$be("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[ZH.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[ZH.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:Kbe({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function Xm(e,r,t){var a=r[t+"axes"],n=Object.keys((e._splomAxes||{})[t]||{});if(Array.isArray(a))return a;if(n.length)return n}function exe(e,r){var t=e.grid||{},a=Xm(r,t,"x"),n=Xm(r,t,"y");if(!e.grid&&!a&&!n)return;var i=Array.isArray(t.subplots)&&Array.isArray(t.subplots[0]),o=Array.isArray(a),l=Array.isArray(n),s=o&&a!==t.xaxes&&l&&n!==t.yaxes,u,f;i?(u=t.subplots.length,f=t.subplots[0].length):(l&&(u=n.length),o&&(f=a.length));var c=Qbe.newContainer(r,"grid");function v(k,M){return Jbe.coerce(t,c,iw,k,M)}var d=v("rows",u),p=v("columns",f);if(!(d*p>1)){delete r.grid;return}if(!i&&!o&&!l){var y=v("pattern")==="independent";y&&(i=!0)}c._hasSubplotGrid=i;var m=v("roworder"),x=m==="top to bottom",w=i?.2:.1,_=i?.3:.1,b,T;s&&r._splomGridDflt&&(b=r._splomGridDflt.xside,T=r._splomGridDflt.yside),c._domains={x:XH("x",v,w,b,p),y:XH("y",v,_,T,d,x)}}function XH(e,r,t,a,n,i){var o=r(e+"gap",t),l=r("domain."+e);r(e+"side",a);for(var s=new Array(n),u=l[0],f=(l[1]-u)/(n-o),c=f*(1-o),v=0;v{"use strict";QH.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var tU=N((zNe,rU)=>{"use strict";var eU=Rr(),txe=br(),axe=Le(),nxe=_t(),ixe=ow();rU.exports=function(e,r,t,a){var n="error_"+a.axis,i=nxe.newContainer(r,n),o=e[n]||{};function l(p,y){return axe.coerce(o,i,ixe,p,y)}var s=o.array!==void 0||o.value!==void 0||o.type==="sqrt",u=l("visible",s);if(u!==!1){var f=l("type","array"in o?"data":"percent"),c=!0;f!=="sqrt"&&(c=l("symmetric",!((f==="data"?"arrayminus":"valueminus")in o))),f==="data"?(l("array"),l("traceref"),c||(l("arrayminus"),l("tracerefminus"))):(f==="percent"||f==="constant")&&(l("value"),c||l("valueminus"));var v="copy_"+a.inherit+"style";if(a.inherit){var d=r["error_"+a.inherit];(d||{}).visible&&l(v,!(o.color||eU(o.thickness)||eU(o.width)))}(!a.inherit||!i[v])&&(l("color",t),l("thickness"),l("width",txe.traceIs(r,"gl3d")?0:4))}}});var lw=N((INe,nU)=>{"use strict";nU.exports=function(r){var t=r.type,a=r.symmetric;if(t==="data"){var n=r.array||[];if(a)return function(u,f){var c=+n[f];return[c,c]};var i=r.arrayminus||[];return function(u,f){var c=+n[f],v=+i[f];return!isNaN(c)||!isNaN(v)?[v||0,c||0]:[NaN,NaN]}}else{var o=aU(t,r.value),l=aU(t,r.valueminus);return a||r.valueminus===void 0?function(u){var f=o(u);return[f,f]}:function(u){return[l(u),o(u)]}}};function aU(e,r){if(e==="percent")return function(t){return Math.abs(t*r/100)};if(e==="constant")return function(){return Math.abs(r)};if(e==="sqrt")return function(t){return Math.sqrt(Math.abs(t))}}});var lU=N((ONe,oU)=>{"use strict";var sw=Rr(),oxe=br(),uw=zr(),lxe=Le(),sxe=lw();oU.exports=function(r){for(var t=r.calcdata,a=0;a{"use strict";var sU=Sr(),ds=Rr(),uxe=Wr(),fxe=Dn();uU.exports=function(r,t,a,n){var i,o=a.xaxis,l=a.yaxis,s=n&&n.duration>0,u=r._context.staticPlot;t.each(function(f){var c=f[0].trace,v=c.error_x||{},d=c.error_y||{},p;c.ids&&(p=function(w){return w.id});var y=fxe.hasMarkers(c)&&c.marker.maxdisplayed>0;!d.visible&&!v.visible&&(f=[]);var m=sU.select(this).selectAll("g.errorbar").data(f,p);if(m.exit().remove(),!!f.length){v.visible||m.selectAll("path.xerror").remove(),d.visible||m.selectAll("path.yerror").remove(),m.style("opacity",1);var x=m.enter().append("g").classed("errorbar",!0);s&&x.style("opacity",0).transition().duration(n.duration).style("opacity",1),uxe.setClipUrl(m,a.layerClipId,r),m.each(function(w){var _=sU.select(this),b=cxe(w,o,l);if(!(y&&!w.vis)){var T,k=_.select("path.yerror");if(d.visible&&ds(b.x)&&ds(b.yh)&&ds(b.ys)){var M=d.width;T="M"+(b.x-M)+","+b.yh+"h"+2*M+"m-"+M+",0V"+b.ys,b.noYS||(T+="m-"+M+",0h"+2*M),i=!k.size(),i?k=_.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("yerror",!0):s&&(k=k.transition().duration(n.duration).ease(n.easing)),k.attr("d",T)}else k.remove();var q=_.select("path.xerror");if(v.visible&&ds(b.y)&&ds(b.xh)&&ds(b.xs)){var E=(v.copy_ystyle?d:v).width;T="M"+b.xh+","+(b.y-E)+"v"+2*E+"m0,-"+E+"H"+b.xs,b.noXS||(T+="m0,-"+E+"v"+2*E),i=!q.size(),i?q=_.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("xerror",!0):s&&(q=q.transition().duration(n.duration).ease(n.easing)),q.attr("d",T)}else q.remove()}})}})};function cxe(e,r,t){var a={x:r.c2p(e.x),y:t.c2p(e.y)};return e.yh!==void 0&&(a.yh=t.c2p(e.yh),a.ys=t.c2p(e.ys),ds(a.ys)||(a.noYS=!0,a.ys=t.c2p(e.ys,!0))),e.xh!==void 0&&(a.xh=r.c2p(e.xh),a.xs=r.c2p(e.xs),ds(a.xs)||(a.noXS=!0,a.xs=r.c2p(e.xs,!0))),a}});var hU=N((HNe,vU)=>{"use strict";var vxe=Sr(),cU=Tr();vU.exports=function(r){r.each(function(t){var a=t[0].trace,n=a.error_y||{},i=a.error_x||{},o=vxe.select(this);o.selectAll("path.yerror").style("stroke-width",n.thickness+"px").call(cU.stroke,n.color),i.copy_ystyle&&(i=n),o.selectAll("path.xerror").style("stroke-width",i.thickness+"px").call(cU.stroke,i.color)})}});var yU=N((UNe,pU)=>{"use strict";var T0=Le(),dU=$i().overrideAll,A0=ow(),Fu={error_x:T0.extendFlat({},A0),error_y:T0.extendFlat({},A0)};delete Fu.error_x.copy_zstyle;delete Fu.error_y.copy_zstyle;delete Fu.error_y.copy_ystyle;var M0={error_x:T0.extendFlat({},A0),error_y:T0.extendFlat({},A0),error_z:T0.extendFlat({},A0)};delete M0.error_x.copy_ystyle;delete M0.error_y.copy_ystyle;delete M0.error_z.copy_ystyle;delete M0.error_z.copy_zstyle;pU.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Fu,bar:Fu,histogram:Fu,scatter3d:dU(M0,"calc","nested"),scattergl:dU(Fu,"calc","nested")}},supplyDefaults:tU(),calc:lU(),makeComputeError:lw(),plot:fU(),style:hU(),hoverInfo:hxe};function hxe(e,r,t){(r.error_y||{}).visible&&(t.yerr=e.yh-e.y,r.error_y.symmetric||(t.yerrneg=e.y-e.ys)),(r.error_x||{}).visible&&(t.xerr=e.xh-e.x,r.error_x.symmetric||(t.xerrneg=e.x-e.xs))}});var gU=N((GNe,mU)=>{"use strict";mU.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var MU=N((VNe,AU)=>{"use strict";var ps=Sr(),fw=kn(),$m=ta(),bU=br(),xl=zr(),Jm=pi(),Ci=Le(),yo=Ci.strTranslate,TU=bt().extendFlat,cw=rs(),po=Wr(),vw=Tr(),dxe=$f(),pxe=Ea(),yxe=jn().flipScale,mxe=_4(),gxe=w4(),bxe=hi(),hw=ja(),xU=hw.LINE_SPACING,_U=hw.FROM_TL,wU=hw.FROM_BR,Ot=gU().cn;function xxe(e){var r=e._fullLayout,t=r._infolayer.selectAll("g."+Ot.colorbar).data(_xe(e),function(a){return a._id});t.enter().append("g").attr("class",function(a){return a._id}).classed(Ot.colorbar,!0),t.each(function(a){var n=ps.select(this);Ci.ensureSingle(n,"rect",Ot.cbbg),Ci.ensureSingle(n,"g",Ot.cbfills),Ci.ensureSingle(n,"g",Ot.cblines),Ci.ensureSingle(n,"g",Ot.cbaxis,function(o){o.classed(Ot.crisp,!0)}),Ci.ensureSingle(n,"g",Ot.cbtitleunshift,function(o){o.append("g").classed(Ot.cbtitle,!0)}),Ci.ensureSingle(n,"rect",Ot.cboutline);var i=wxe(n,a,e);i&&i.then&&(e._promises||[]).push(i),e._context.edits.colorbarPosition&&Txe(n,a,e)}),t.exit().each(function(a){$m.autoMargin(e,a._id)}).remove(),t.order()}function _xe(e){var r=e._fullLayout,t=e.calcdata,a=[],n,i,o,l;function s(_){return TU(_,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function u(){typeof l.calc=="function"?l.calc(e,o,n):(n._fillgradient=i.reversescale?yxe(i.colorscale):i.colorscale,n._zrange=[i[l.min],i[l.max]])}for(var f=0;f1){var Q=Math.pow(10,Math.floor(Math.log(W)/Math.LN10));oe*=Q*Ci.roundUp(W/Q,[2,5,10]),(Math.abs(R.start)/R.size+1e-6)%1<2e-6&&(le.tick0=0)}le.dtick=oe}le.domain=a?[K+p/b.h,K+G-p/b.h]:[K+d/b.w,K+G-d/b.w],le.setScale(),e.attr("transform",yo(Math.round(b.l),Math.round(b.t)));var j=e.select("."+Ot.cbtitleunshift).attr("transform",yo(-Math.round(b.l),-Math.round(b.t))),pe=le.ticklabelposition,me=le.title.font.size,ye=e.select("."+Ot.cbaxis),Pe,Ne=0,Ee=0;function Ie(He,se){var Ae={propContainer:le,propName:r._propPrefix+"title.text",traceIndex:r._traceIndex,_meta:r._meta,placeholder:_._dfltTitle.colorbar,containerGroup:e.select("."+Ot.cbtitle)},Xe=He.charAt(0)==="h"?He.slice(1):"h"+He;e.selectAll("."+Xe+",."+Xe+"-math-group").remove(),dxe.draw(t,He,TU(Ae,se||{}))}function Ue(){if(a&&he||!a&&!he){var He,se;q==="top"&&(He=d+b.l+X*y,se=p+b.t+Z*(1-K-G)+3+me*.75),q==="bottom"&&(He=d+b.l+X*y,se=p+b.t+Z*(1-K)-3-me*.25),q==="right"&&(se=p+b.t+Z*m+3+me*.75,He=d+b.l+X*K),Ie(le._id+"title",{attributes:{x:He,y:se,"text-anchor":a?"start":"middle"}})}}function Be(){if(a&&!he||!a&&he){var He=le.position||0,se=le._offset+le._length/2,Ae,Xe;if(q==="right")Xe=se,Ae=b.l+X*He+10+me*(le.showticklabels?1:.5);else if(Ae=se,q==="bottom"&&(Xe=b.t+Z*He+10+(pe.indexOf("inside")===-1?le.tickfont.size:0)+(le.ticks!=="inside"&&r.ticklen||0)),q==="top"){var hr=M.text.split("
").length;Xe=b.t+Z*He+10-Y-xU*me*hr}Ie((a?"h":"v")+le._id+"title",{avoid:{selection:ps.select(t).selectAll("g."+le._id+"tick"),side:q,offsetTop:a?0:b.t,offsetLeft:a?b.l:0,maxShift:a?_.width:_.height},attributes:{x:Ae,y:Xe,"text-anchor":"middle"},transform:{rotate:a?-90:0,offset:0}})}}function Ce(){if(!a&&!he||a&&he){var He=e.select("."+Ot.cbtitle),se=He.select("text"),Ae=[-s/2,s/2],Xe=He.select(".h"+le._id+"title-math-group").node(),hr=15.6;se.node()&&(hr=parseInt(se.node().style.fontSize,10)*xU);var Fe;if(Xe?(Fe=po.bBox(Xe),Ee=Fe.width,Ne=Fe.height,Ne>hr&&(Ae[1]-=(Ne-hr)/2)):se.node()&&!se.classed(Ot.jsPlaceholder)&&(Fe=po.bBox(se.node()),Ee=Fe.width,Ne=Fe.height),a){if(Ne){if(Ne+=5,q==="top")le.domain[1]-=Ne/b.h,Ae[1]*=-1;else{le.domain[0]+=Ne/b.h;var Te=pxe.lineCount(se);Ae[1]+=(1-Te)*hr}He.attr("transform",yo(Ae[0],Ae[1])),le.setScale()}}else Ee&&(q==="right"&&(le.domain[0]+=(Ee+me/2)/b.w),He.attr("transform",yo(Ae[0],Ae[1])),le.setScale())}e.selectAll("."+Ot.cbfills+",."+Ot.cblines).attr("transform",a?yo(0,Math.round(b.h*(1-le.domain[1]))):yo(Math.round(b.w*le.domain[0]),0)),ye.attr("transform",a?yo(0,Math.round(-b.t)):yo(Math.round(-b.l),0));var qe=e.select("."+Ot.cbfills).selectAll("rect."+Ot.cbfill).attr("style","").data(O);qe.enter().append("rect").classed(Ot.cbfill,!0).attr("style",""),qe.exit().remove();var Ge=E.map(le.c2p).map(Math.round).sort(function(rr,Ke){return rr-Ke});qe.each(function(rr,Ke){var ze=[Ke===0?E[0]:(O[Ke]+O[Ke-1])/2,Ke===O.length-1?E[1]:(O[Ke]+O[Ke+1])/2].map(le.c2p).map(Math.round);a&&(ze[1]=Ci.constrain(ze[1]+(ze[1]>ze[0])?1:-1,Ge[0],Ge[1]));var ne=ps.select(this).attr(a?"x":"y",ee).attr(a?"y":"x",ps.min(ze)).attr(a?"width":"height",Math.max(Y,2)).attr(a?"height":"width",Math.max(ps.max(ze)-ps.min(ze),2));if(r._fillgradient)po.gradient(ne,t,r._id,a?"vertical":"horizontalreversed",r._fillgradient,"fill");else{var ve=P(rr).replace("e-","");ne.attr("fill",fw(ve).toHexString())}});var Je=e.select("."+Ot.cblines).selectAll("path."+Ot.cbline).data(k.color&&k.width?B:[]);Je.enter().append("path").classed(Ot.cbline,!0),Je.exit().remove(),Je.each(function(rr){var Ke=ee,ze=Math.round(le.c2p(rr))+k.width/2%1;ps.select(this).attr("d","M"+(a?Ke+","+ze:ze+","+Ke)+(a?"h":"v")+Y).call(po.lineGroupStyle,k.width,D(rr),k.dash)}),ye.selectAll("g."+le._id+"tick,path").remove();var Ve=ee+Y+(s||0)/2-(r.ticks==="outside"?1:0),Ze=xl.calcTicks(le),or=xl.getTickSigns(le)[2];return xl.drawTicks(t,le,{vals:le.ticks==="inside"?xl.clipEnds(le,Ze):Ze,layer:ye,path:xl.makeTickPath(le,Ve,or),transFn:xl.makeTransTickFn(le)}),xl.drawLabels(t,le,{vals:Ze,layer:ye,transFn:xl.makeTransTickLabelFn(le),labelFns:xl.makeLabelFns(le,Ve)})}function Oe(){var He,se=Y+s/2;pe.indexOf("inside")===-1&&(He=po.bBox(ye.node()),se+=a?He.width:He.height),Pe=j.select("text");var Ae=0,Xe=a&&q==="top",hr=!a&&q==="right",Fe=0;if(Pe.node()&&!Pe.classed(Ot.jsPlaceholder)){var Te,qe=j.select(".h"+le._id+"title-math-group").node();qe&&(a&&he||!a&&!he)?(He=po.bBox(qe),Ae=He.width,Te=He.height):(He=po.bBox(j.node()),Ae=He.right-b.l-(a?ee:_e),Te=He.bottom-b.t-(a?_e:ee),!a&&q==="top"&&(se+=He.height,Fe=He.height)),hr&&(Pe.attr("transform",yo(Ae/2+me/2,0)),Ae*=2),se=Math.max(se,a?Ae:Te)}var Ge=(a?d:p)*2+se+u+s/2,Je=0;!a&&M.text&&v==="bottom"&&m<=0&&(Je=Ge/2,Ge+=Je,Fe+=Je),_._hColorbarMoveTitle=Je,_._hColorbarMoveCBTitle=Fe;var Ve=u+s,Ze=(a?ee:_e)-Ve/2-(a?d:0),or=(a?_e:ee)-(a?H:p+Fe-Je);e.select("."+Ot.cbbg).attr("x",Ze).attr("y",or).attr(a?"width":"height",Math.max(Ge-Je,2)).attr(a?"height":"width",Math.max(H+Ve,2)).call(vw.fill,f).call(vw.stroke,r.bordercolor).style("stroke-width",u);var rr=hr?Math.max(Ae-10,0):0;e.selectAll("."+Ot.cboutline).attr("x",(a?ee:_e+d)+rr).attr("y",(a?_e+p-H:ee)+(Xe?Ne:0)).attr(a?"width":"height",Math.max(Y,2)).attr(a?"height":"width",Math.max(H-(a?2*p+Ne:2*d+rr),2)).call(vw.stroke,r.outlinecolor).style({fill:"none","stroke-width":s});var Ke=a?fe*Ge:0,ze=a?0:(1-ie)*Ge-Fe;if(Ke=w?b.l-Ke:-Ke,ze=x?b.t-ze:-ze,e.attr("transform",yo(Ke,ze)),!a&&(u||fw(f).getAlpha()&&!fw.equals(_.paper_bgcolor,f))){var ne=ye.selectAll("text"),ve=ne[0].length,De=e.select("."+Ot.cbbg).node(),Re=po.bBox(De),Qe=po.getTranslate(e),fr=2;ne.each(function(da,$t){var oa=0,dr=ve-1;if($t===oa||$t===dr){var yt=po.bBox(this),Zr=po.getTranslate(this),$r;if($t===dr){var mt=yt.right+Zr.x,Lt=Re.right+Qe.x+_e-u-fr+y;$r=Lt-mt,$r>0&&($r=0)}else if($t===oa){var Gr=yt.left+Zr.x,Bt=Re.left+Qe.x+_e+u+fr;$r=Bt-Gr,$r<0&&($r=0)}$r&&(ve<3?this.setAttribute("transform","translate("+$r+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var sr={},kr=_U[c],Ir=wU[c],Yr=_U[v],et=wU[v],qt=Ge-Y;a?(i==="pixels"?(sr.y=m,sr.t=H*Yr,sr.b=H*et):(sr.t=sr.b=0,sr.yt=m+n*Yr,sr.yb=m-n*et),l==="pixels"?(sr.x=y,sr.l=Ge*kr,sr.r=Ge*Ir):(sr.l=qt*kr,sr.r=qt*Ir,sr.xl=y-o*kr,sr.xr=y+o*Ir)):(i==="pixels"?(sr.x=y,sr.l=H*kr,sr.r=H*Ir):(sr.l=sr.r=0,sr.xl=y+n*kr,sr.xr=y-n*Ir),l==="pixels"?(sr.y=1-m,sr.t=Ge*Yr,sr.b=Ge*et):(sr.t=qt*Yr,sr.b=qt*et,sr.yt=m-o*Yr,sr.yb=m+o*et));var ft=r.y<.5?"b":"t",Ft=r.x<.5?"l":"r";t._fullLayout._reservedMargin[r._id]={};var Tt={r:_.width-Ze-Ke,l:Ze+sr.r,b:_.height-or-ze,t:or+sr.b};w&&x?$m.autoMargin(t,r._id,sr):w?t._fullLayout._reservedMargin[r._id][ft]=Tt[ft]:x||a?t._fullLayout._reservedMargin[r._id][Ft]=Tt[Ft]:t._fullLayout._reservedMargin[r._id][ft]=Tt[ft]}return Ci.syncOrAsync([$m.previousPromises,Ue,Ce,Be,$m.previousPromises,Oe],t)}function Txe(e,r,t){var a=r.orientation==="v",n=t._fullLayout,i=n._size,o,l,s;Jm.init({element:e.node(),gd:t,prepFn:function(){o=e.attr("transform"),cw(e)},moveFn:function(u,f){e.attr("transform",o+yo(u,f)),l=Jm.align((a?r._uFrac:r._vFrac)+u/i.w,a?r._thickFrac:r._lenFrac,0,1,r.xanchor),s=Jm.align((a?r._vFrac:1-r._uFrac)-f/i.h,a?r._lenFrac:r._thickFrac,0,1,r.yanchor);var c=Jm.getCursor(l,s,r.xanchor,r.yanchor);cw(e,c)},doneFn:function(){if(cw(e),l!==void 0&&s!==void 0){var u={};u[r._propPrefix+"x"]=l,u[r._propPrefix+"y"]=s,r._traceIndex!==void 0?bU.call("_guiRestyle",t,u,r._traceIndex):bU.call("_guiRelayout",t,u)}}})}function Axe(e,r,t){var a=r._levels,n=[],i=[],o,l,s=a.end+a.size/100,u=a.size,f=1.001*t[0]-.001*t[1],c=1.001*t[1]-.001*t[0];for(l=0;l<1e5&&(o=a.start+l*u,!(u>0?o>=s:o<=s));l++)o>f&&o0?o>=s:o<=s));l++)o>t[0]&&o{"use strict";kU.exports={moduleType:"component",name:"colorbar",attributes:n1(),supplyDefaults:dx(),draw:MU().draw,hasColorbar:lx()}});var LU=N((WNe,qU)=>{"use strict";qU.exports={moduleType:"component",name:"legend",layoutAttributes:u5(),supplyLayoutDefaults:c5(),draw:T5(),style:b5()}});var EU=N((jNe,CU)=>{"use strict";CU.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var RU=N((ZNe,DU)=>{"use strict";DU.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var pw=N((XNe,zU)=>{"use strict";var kxe=br(),NU=Le(),dw=NU.extendFlat,PU=NU.extendDeep;function FU(e){var r;switch(e){case"themes__thumb":r={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":r={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:r={}}return r}function Sxe(e){var r=["xaxis","yaxis","zaxis"];return r.indexOf(e.slice(0,5))>-1}zU.exports=function(r,t){var a,n=r.data,i=r.layout,o=PU([],n),l=PU({},i,FU(t.tileClass)),s=r._context||{};if(t.width&&(l.width=t.width),t.height&&(l.height=t.height),t.tileClass==="thumbnail"||t.tileClass==="themes__thumb"){l.annotations=[];var u=Object.keys(l);for(a=0;a{"use strict";var qxe=eu().EventEmitter,Lxe=br(),Cxe=Le(),IU=ml(),Exe=pw(),Dxe=am(),Rxe=nm();function Pxe(e,r){var t=new qxe,a=Exe(e,{format:"png"}),n=a.gd;n.style.position="absolute",n.style.left="-5000px",document.body.appendChild(n);function i(){var l=IU.getDelay(n._fullLayout);setTimeout(function(){var s=Dxe(n),u=document.createElement("canvas");u.id=Cxe.randstr(),t=Rxe({format:r.format,width:n._fullLayout.width,height:n._fullLayout.height,canvas:u,emitter:t,svg:s}),t.clean=function(){n&&document.body.removeChild(n)}},l)}var o=IU.getRedrawFunc(n);return Lxe.call("_doPlot",n,a.data,a.layout,a.config).then(o).then(i).catch(function(l){t.emit("error",l)}),t}OU.exports=Pxe});var GU=N(($Ne,UU)=>{"use strict";var HU=ml(),Fxe={getDelay:HU.getDelay,getRedrawFunc:HU.getRedrawFunc,clone:pw(),toSVG:am(),svgToImg:nm(),toImage:BU(),downloadImage:H_()};UU.exports=Fxe});var YU=N(_l=>{"use strict";_l.version=sp().version;jA();NS();var Nxe=br(),k0=_l.register=Nxe.register,mw=oz(),VU=Object.keys(mw);for(Km=0;Km{"use strict";WU.exports=YU()});var eg=N((eze,ZU)=>{"use strict";ZU.exports={TEXTPAD:3,eventDataKeys:["value","label"]}});var zu=N((rze,QU)=>{"use strict";var Yt=wi(),XU=ro().axisHoverFormat,{hovertemplateAttrs:zxe,texttemplateAttrs:Ixe,templatefallbackAttrs:JU}=Yn(),KU=ko(),Oxe=ma(),$U=eg(),Bxe=ui().pattern,Nu=bt().extendFlat,gw=Oxe({editType:"calc",arrayOk:!0,colorEditType:"style"}),Hxe=Yt.marker,Uxe=Hxe.line,Gxe=Nu({},Uxe.width,{dflt:0}),Vxe=Nu({width:Gxe,editType:"calc"},KU("marker.line")),Yxe=Nu({line:Vxe,editType:"calc"},KU("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:Bxe,cornerradius:{valType:"any",editType:"calc"}});QU.exports={x:Yt.x,x0:Yt.x0,dx:Yt.dx,y:Yt.y,y0:Yt.y0,dy:Yt.dy,xperiod:Yt.xperiod,yperiod:Yt.yperiod,xperiod0:Yt.xperiod0,yperiod0:Yt.yperiod0,xperiodalignment:Yt.xperiodalignment,yperiodalignment:Yt.yperiodalignment,xhoverformat:XU("x"),yhoverformat:XU("y"),text:Yt.text,texttemplate:Ixe({editType:"plot"},{keys:$U.eventDataKeys}),texttemplatefallback:JU({editType:"plot"}),hovertext:Yt.hovertext,hovertemplate:zxe({},{keys:$U.eventDataKeys}),hovertemplatefallback:JU(),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:Nu({},gw,{}),insidetextfont:Nu({},gw,{}),outsidetextfont:Nu({},gw,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:Nu({},Yt.cliponaxis,{}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc"},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc"},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc"},marker:Yxe,offsetgroup:Yt.offsetgroup,alignmentgroup:Yt.alignmentgroup,selected:{marker:{opacity:Yt.selected.marker.opacity,color:Yt.selected.marker.color,editType:"style"},textfont:Yt.selected.textfont,editType:"style"},unselected:{marker:{opacity:Yt.unselected.marker.opacity,color:Yt.unselected.marker.color,editType:"style"},textfont:Yt.unselected.textfont,editType:"style"},zorder:Yt.zorder}});var rg=N((tze,eG)=>{"use strict";eG.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}});var bw=N((aze,aG)=>{"use strict";var Wxe=Tr(),rG=jn().hasColorscale,tG=fl(),jxe=Le().coercePattern;aG.exports=function(r,t,a,n,i){var o=a("marker.color",n),l=rG(r,"marker");l&&tG(r,t,i,a,{prefix:"marker.",cLetter:"c"}),a("marker.line.color",Wxe.defaultLine),rG(r,"marker.line")&&tG(r,t,i,a,{prefix:"marker.line.",cLetter:"c"}),a("marker.line.width"),a("marker.opacity"),jxe(a,"marker.pattern",o,l),a("selected.marker.color"),a("unselected.marker.color")}});var Iu=N((nze,uG)=>{"use strict";var nG=Rr(),Bc=Le(),iG=Tr(),Zxe=br(),Xxe=V_(),Jxe=bc(),$xe=bw(),Kxe=l0(),oG=zu(),tg=Bc.coerceFont;function Qxe(e,r,t,a){function n(u,f){return Bc.coerce(e,r,oG,u,f)}var i=Xxe(e,r,a,n);if(!i){r.visible=!1;return}Jxe(e,r,a,n),n("xhoverformat"),n("yhoverformat"),n("zorder"),n("orientation",r.x&&!r.y?"h":"v"),n("base"),n("offset"),n("width"),n("text"),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback");var o=n("textposition");sG(e,r,a,n,o,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),$xe(e,r,n,t,a);var l=(r.marker.line||{}).color,s=Zxe.getComponentMethod("errorbars","supplyDefaults");s(e,r,l||iG.defaultLine,{axis:"y"}),s(e,r,l||iG.defaultLine,{axis:"x",inherit:"y"}),Bc.coerceSelectionMarkerOpacity(r,n)}function e5e(e,r){var t,a;function n(l,s){return Bc.coerce(a._input,a,oG,l,s)}for(var i=0;i=0)return e}else if(typeof e=="string"&&(e=e.trim(),e.slice(-1)==="%"&&nG(e.slice(0,-1))&&(e=+e.slice(0,-1),e>=0)))return e+"%"}function sG(e,r,t,a,n,i){i=i||{};var o=i.moduleHasSelected!==!1,l=i.moduleHasUnselected!==!1,s=i.moduleHasConstrain!==!1,u=i.moduleHasCliponaxis!==!1,f=i.moduleHasTextangle!==!1,c=i.moduleHasInsideanchor!==!1,v=!!i.hasPathbar,d=Array.isArray(n)||n==="auto",p=d||n==="inside",y=d||n==="outside";if(p||y){var m=tg(a,"textfont",t.font),x=Bc.extendFlat({},m),w=e.textfont&&e.textfont.color,_=!w;if(_&&delete x.color,tg(a,"insidetextfont",x),v){var b=Bc.extendFlat({},m);_&&delete b.color,tg(a,"pathbar.textfont",b)}y&&tg(a,"outsidetextfont",m),o&&a("selected.textfont.color"),l&&a("unselected.textfont.color"),s&&a("constraintext"),u&&a("cliponaxis"),f&&a("textangle"),a("texttemplate"),a("texttemplatefallback")}p&&c&&a("insidetextanchor")}uG.exports={supplyDefaults:Qxe,crossTraceDefaults:e5e,handleText:sG,validateCornerradius:lG}});var xw=N((ize,fG)=>{"use strict";var r5e=br(),t5e=zr(),a5e=Le(),n5e=rg(),i5e=Iu().validateCornerradius;fG.exports=function(e,r,t){function a(y,m){return a5e.coerce(e,r,n5e,y,m)}for(var n=!1,i=!1,o=!1,l={},s=a("barmode"),u=s==="group",f=0;f0&&!l[v]&&(o=!0),l[v]=!0),c.visible&&c.type==="histogram"){var d=t5e.getFromId({_fullLayout:r},c[c.orientation==="v"?"xaxis":"yaxis"]);d.type!=="category"&&(i=!0)}}if(!n){delete r.barmode;return}s!=="overlay"&&a("barnorm"),a("bargap",i&&!o?0:.2),a("bargroupgap");var p=a("barcornerradius");r.barcornerradius=i5e(p)}});var ag=N((oze,cG)=>{"use strict";var Hc=Le();cG.exports=function(r,t){for(var a=0;a{"use strict";var vG=zr(),hG=_c(),dG=jn().hasColorscale,pG=Yf(),o5e=ag(),l5e=vm();yG.exports=function(r,t){var a=vG.getFromId(r,t.xaxis||"x"),n=vG.getFromId(r,t.yaxis||"y"),i,o,l,s,u,f,c={msUTC:!!(t.base||t.base===0)};t.orientation==="h"?(i=a.makeCalcdata(t,"x",c),l=n.makeCalcdata(t,"y"),s=hG(t,n,"y",l),u=!!t.yperiodalignment,f="y"):(i=n.makeCalcdata(t,"y",c),l=a.makeCalcdata(t,"x"),s=hG(t,a,"x",l),u=!!t.xperiodalignment,f="x"),o=s.vals;for(var v=Math.min(o.length,i.length),d=new Array(v),p=0;p{"use strict";var s5e=Sr(),u5e=Le();function f5e(e,r,t){var a=e._fullLayout,n=a["_"+t+"Text_minsize"];if(n){var i=a.uniformtext.mode==="hide",o;switch(t){case"funnelarea":case"pie":case"sunburst":o="g.slice";break;case"treemap":case"icicle":o="g.slice, g.pathbar";break;default:o="g.points > g.point"}r.selectAll(o).each(function(l){var s=l.transform;if(s){s.scale=i&&s.hide?0:n/s.fontSize;var u=s5e.select(this).select("text");u5e.setTransormAndDisplay(u,s)}})}}function c5e(e,r,t){if(t.uniformtext.mode){var a=gG(e),n=t.uniformtext.minsize,i=r.scale*r.fontSize;r.hide=i{"use strict";var h5e=Rr(),d5e=kn(),xG=Le().isArrayOrTypedArray;Ou.coerceString=function(e,r,t){if(typeof r=="string"){if(r||!e.noBlank)return r}else if((typeof r=="number"||r===!0)&&!e.strict)return String(r);return t!==void 0?t:e.dflt};Ou.coerceNumber=function(e,r,t){if(h5e(r)){r=+r;var a=e.min,n=e.max,i=a!==void 0&&rn;if(!i)return r}return t!==void 0?t:e.dflt};Ou.coerceColor=function(e,r,t){return d5e(r).isValid()?r:t!==void 0?t:e.dflt};Ou.coerceEnumerated=function(e,r,t){return e.coerceNumber&&(r=+r),e.values.indexOf(r)!==-1?r:t!==void 0?t:e.dflt};Ou.getValue=function(e,r){var t;return xG(e)?r{"use strict";var q0=Sr(),p5e=Tr(),L0=Wr(),_G=Le(),wG=br(),TG=S0().resizeText,_w=zu(),y5e=_w.textfont,m5e=_w.insidetextfont,g5e=_w.outsidetextfont,Ua=ng();function b5e(e){var r=q0.select(e).selectAll('g[class^="barlayer"]').selectAll("g.trace");TG(e,r,"bar");var t=r.size(),a=e._fullLayout;r.style("opacity",function(n){return n[0].trace.opacity}).each(function(n){(a.barmode==="stack"&&t>1||a.bargap===0&&a.bargroupgap===0&&!n[0].trace.marker.line.width)&&q0.select(this).attr("shape-rendering","crispEdges")}),r.selectAll("g.points").each(function(n){var i=q0.select(this),o=n[0].trace;AG(i,o,e)}),wG.getComponentMethod("errorbars","style")(r)}function AG(e,r,t){L0.pointStyle(e.selectAll("path"),r,t),MG(e,r,t)}function MG(e,r,t){e.selectAll("text").each(function(a){var n=q0.select(this),i=_G.ensureUniformFontSize(t,kG(n,a,r,t));L0.font(n,i)})}function x5e(e,r,t){var a=r[0].trace;a.selectedpoints?_5e(t,a,e):(AG(t,a,e),wG.getComponentMethod("errorbars","style")(t))}function _5e(e,r,t){L0.selectedPointStyle(e.selectAll("path"),r),w5e(e.selectAll("text"),r,t)}function w5e(e,r,t){e.each(function(a){var n=q0.select(this),i;if(a.selected){i=_G.ensureUniformFontSize(t,kG(n,a,r,t));var o=r.selected.textfont&&r.selected.textfont.color;o&&(i.color=o),L0.font(n,i)}else L0.selectedTextStyle(n,r)})}function kG(e,r,t,a){var n=a._fullLayout.font,i=t.textfont;if(e.classed("bartext-inside")){var o=CG(r,t);i=qG(t,r.i,n,o)}else e.classed("bartext-outside")&&(i=LG(t,r.i,n));return i}function SG(e,r,t){return ww(y5e,e.textfont,r,t)}function qG(e,r,t,a){var n=SG(e,r,t),i=e._input.textfont===void 0||e._input.textfont.color===void 0||Array.isArray(e.textfont.color)&&e.textfont.color[r]===void 0;return i&&(n={color:p5e.contrast(a),family:n.family,size:n.size,weight:n.weight,style:n.style,variant:n.variant,textcase:n.textcase,lineposition:n.lineposition,shadow:n.shadow}),ww(m5e,e.insidetextfont,r,n)}function LG(e,r,t){var a=SG(e,r,t);return ww(g5e,e.outsidetextfont,r,a)}function ww(e,r,t,a){r=r||{};var n=Ua.getValue(r.family,t),i=Ua.getValue(r.size,t),o=Ua.getValue(r.color,t),l=Ua.getValue(r.weight,t),s=Ua.getValue(r.style,t),u=Ua.getValue(r.variant,t),f=Ua.getValue(r.textcase,t),c=Ua.getValue(r.lineposition,t),v=Ua.getValue(r.shadow,t);return{family:Ua.coerceString(e.family,n,a.family),size:Ua.coerceNumber(e.size,i,a.size),color:Ua.coerceColor(e.color,o,a.color),weight:Ua.coerceString(e.weight,l,a.weight),style:Ua.coerceString(e.style,s,a.style),variant:Ua.coerceString(e.variant,u,a.variant),textcase:Ua.coerceString(e.variant,f,a.textcase),lineposition:Ua.coerceString(e.variant,c,a.lineposition),shadow:Ua.coerceString(e.variant,v,a.shadow)}}function CG(e,r){return r.type==="waterfall"?r[e.dir].marker.color:e.mcc||e.mc||r.marker.color}EG.exports={style:b5e,styleTextPoints:MG,styleOnSelect:x5e,getInsideTextFont:qG,getOutsideTextFont:LG,getBarColor:CG,resizeText:TG}});var Mw=N((cze,OG)=>{"use strict";var ig=Sr(),og=Rr(),Ra=Le(),T5e=Ea(),A5e=Tr(),ys=Wr(),M5e=br(),lg=zr().tickText,DG=S0(),k5e=DG.recordMinTextSize,S5e=DG.clearMinTextSize,Tw=Uc(),Gc=ng(),q5e=eg(),RG=zu(),L5e=RG.text,C5e=RG.textposition,E5e=qo().appendArrayPointValue,cn=q5e.TEXTPAD;function D5e(e){return e.id}function R5e(e){if(e.ids)return D5e}function Aw(e){return(e>0)-(e<0)}function Ho(e,r){return e0}function F5e(e,r,t,a,n,i){var o=r.xaxis,l=r.yaxis,s=e._fullLayout,u=e._context.staticPlot;n||(n={mode:s.barmode,norm:s.barmode,gap:s.bargap,groupgap:s.bargroupgap},S5e("bar",s));var f=Ra.makeTraceGroups(a,t,"trace bars").each(function(c){var v=ig.select(this),d=c[0].trace,p=c[0].t,y=d.type==="waterfall",m=d.type==="funnel",x=d.type==="histogram",w=d.type==="bar",_=w||m,b=0;y&&d.connector.visible&&d.connector.mode==="between"&&(b=d.connector.line.width/2);var T=d.orientation==="h",k=FG(n),M=Ra.ensureSingle(v,"g","points"),q=R5e(d),E=M.selectAll("g.point").data(Ra.identity,q);E.enter().append("g").classed("point",!0),E.exit().remove(),E.each(function(P,R){var z=ig.select(this),O=P5e(P,o,l,T),B=O[0][0],Y=O[0][1],V=O[1][0],H=O[1][1],G=(T?Y-B:H-V)===0;G&&_&&Gc.getLineWidth(d,P)&&(G=!1),G||(G=!og(B)||!og(Y)||!og(V)||!og(H)),P.isBlank=G,G&&(T?Y=B:H=V),b&&!G&&(T?(B-=Ho(B,Y)*b,Y+=Ho(B,Y)*b):(V-=Ho(V,H)*b,H+=Ho(V,H)*b));var X,Z;if(d.type==="waterfall"){if(!G){var ee=d[P.dir].marker;X=ee.line.width,Z=ee.color}}else X=Gc.getLineWidth(d,P),Z=P.mc||d.marker.color;function fe(se){var Ae=ig.round(X/2%1,2);return n.gap===0&&n.groupgap===0?ig.round(Math.round(se)-Ae,2):se}function ie(se,Ae,Xe){return Xe&&se===Ae?se:Math.abs(se-Ae)>=2?fe(se):se>Ae?Math.ceil(se):Math.floor(se)}var ue=A5e.opacity(Z),K=ue<1||X>.01?fe:ie;e._context.staticPlot||(B=K(B,Y,T),Y=K(Y,B,T),V=K(V,H,!T),H=K(H,V,!T));var _e=T?o.c2p:l.c2p,le;P.s0>0?le=P._sMax:P.s0<0?le=P._sMin:le=P.s1>0?P._sMax:P._sMin;function he(se,Ae){if(!se)return 0;var Xe=Math.abs(T?H-V:Y-B),hr=Math.abs(T?Y-B:H-V),Fe=K(Math.abs(_e(le,!0)-_e(0,!0))),Te=P.hasB?Math.min(Xe/2,hr/2):Math.min(Xe/2,Fe),qe;if(Ae==="%"){var Ge=Math.min(50,se);qe=Xe*(Ge/100)}else qe=se;return K(Math.max(Math.min(qe,Te),0))}var oe=w||x?he(p.cornerradiusvalue,p.cornerradiusform):0,ce,W,Q="M"+B+","+V+"V"+H+"H"+Y+"V"+V+"Z",j=0;if(oe&&P.s){var pe=Aw(P.s0)===0||Aw(P.s)===Aw(P.s0)?P.s1:P.s0;if(j=K(P.hasB?0:Math.abs(_e(le,!0)-_e(pe,!0))),j0?Math.sqrt(j*(2*oe-j)):0,Ie=me>0?Math.max:Math.min;ce="M"+B+","+V+"V"+(H-Ne*ye)+"H"+Ie(Y-(oe-j)*me,B)+"A "+oe+","+oe+" 0 0 "+Pe+" "+Y+","+(H-oe*ye-Ee)+"V"+(V+oe*ye+Ee)+"A "+oe+","+oe+" 0 0 "+Pe+" "+Ie(Y-(oe-j)*me,B)+","+(V+Ne*ye)+"Z"}else if(P.hasB)ce="M"+(B+oe*me)+","+V+"A "+oe+","+oe+" 0 0 "+Pe+" "+B+","+(V+oe*ye)+"V"+(H-oe*ye)+"A "+oe+","+oe+" 0 0 "+Pe+" "+(B+oe*me)+","+H+"H"+(Y-oe*me)+"A "+oe+","+oe+" 0 0 "+Pe+" "+Y+","+(H-oe*ye)+"V"+(V+oe*ye)+"A "+oe+","+oe+" 0 0 "+Pe+" "+(Y-oe*me)+","+V+"Z";else{W=Math.abs(H-V)+j;var Ue=W0?Math.sqrt(j*(2*oe-j)):0,Ce=ye>0?Math.max:Math.min;ce="M"+(B+Ue*me)+","+V+"V"+Ce(H-(oe-j)*ye,V)+"A "+oe+","+oe+" 0 0 "+Pe+" "+(B+oe*me-Be)+","+H+"H"+(Y-oe*me+Be)+"A "+oe+","+oe+" 0 0 "+Pe+" "+(Y-Ue*me)+","+Ce(H-(oe-j)*ye,V)+"V"+V+"Z"}}else ce=Q}else ce=Q;var Oe=PG(Ra.ensureSingle(z,"path"),s,n,i);if(Oe.style("vector-effect",u?"none":"non-scaling-stroke").attr("d",isNaN((Y-B)*(H-V))||G&&e._context.staticPlot?"M0,0Z":ce).call(ys.setClipUrl,r.layerClipId,e),!s.uniformtext.mode&&k){var He=ys.makePointStyleFns(d);ys.singlePointStyle(P,Oe,d,He,e)}N5e(e,r,z,c,R,B,Y,V,H,oe,j,n,i),r.layerClipId&&ys.hideOutsideRangePoint(P,z.select("text"),o,l,d.xcalendar,d.ycalendar)});var D=d.cliponaxis===!1;ys.setClipUrl(v,D?null:r.layerClipId,e)});M5e.getComponentMethod("errorbars","plot")(e,f,r,n)}function N5e(e,r,t,a,n,i,o,l,s,u,f,c,v){var d=r.xaxis,p=r.yaxis,y=e._fullLayout,m;function x(W,Q,j){var pe=Ra.ensureSingle(W,"text").text(Q).attr({class:"bartext bartext-"+m,"text-anchor":"middle","data-notex":1}).call(ys.font,j).call(T5e.convertToTspans,e);return pe}var w=a[0].trace,_=w.orientation==="h",b=O5e(y,a,n,d,p);m=B5e(w,n);var T=c.mode==="stack"||c.mode==="relative",k=a[n],M=!T||k._outmost,q=k.hasB,E=u&&u-f>cn;if(!b||m==="none"||(k.isBlank||i===o||l===s)&&(m==="auto"||m==="inside")){t.select("text").remove();return}var D=y.font,P=Tw.getBarColor(a[n],w),R=Tw.getInsideTextFont(w,n,D,P),z=Tw.getOutsideTextFont(w,n,D),O=w.insidetextanchor||"end",B=t.datum();_?d.type==="log"&&B.s0<=0&&(d.range[0]0&&fe>0,K;E?q?K=Bu(H-2*u,G,ee,fe,_)||Bu(H,G-2*u,ee,fe,_):_?K=Bu(H-(u-f),G,ee,fe,_)||Bu(H,G-2*(u-f),ee,fe,_):K=Bu(H,G-(u-f),ee,fe,_)||Bu(H-2*(u-f),G,ee,fe,_):K=Bu(H,G,ee,fe,_),ue&&K?m="inside":(m="outside",X.remove(),X=null)}else m="inside";if(!X){ie=Ra.ensureUniformFontSize(e,m==="outside"?z:R),X=x(t,b,ie);var _e=X.attr("transform");if(X.attr("transform",""),Z=ys.bBox(X.node()),ee=Z.width,fe=Z.height,X.attr("transform",_e),ee<=0||fe<=0){X.remove();return}}var le=w.textangle,he,oe;m==="outside"?(oe=w.constraintext==="both"||w.constraintext==="outside",he=I5e(i,o,l,s,Z,{isHorizontal:_,constrained:oe,angle:le})):(oe=w.constraintext==="both"||w.constraintext==="inside",he=IG(i,o,l,s,Z,{isHorizontal:_,constrained:oe,angle:le,anchor:O,hasB:q,r:u,overhead:f})),he.fontSize=ie.size,k5e(w.type==="histogram"?"bar":w.type,he,y),k.transform=he;var ce=PG(X,y,c,v);Ra.setTransormAndDisplay(ce,he)}function Bu(e,r,t,a,n){if(e<0||r<0)return!1;var i=t<=e&&a<=r,o=t<=r&&a<=e,l=n?e>=t*(r/a):r>=a*(e/t);return i||o||l}function NG(e){return e==="auto"?0:e}function zG(e,r){var t=Math.PI/180*r,a=Math.abs(Math.sin(t)),n=Math.abs(Math.cos(t));return{x:e.width*n+e.height*a,y:e.width*a+e.height*n}}function IG(e,r,t,a,n,i){var o=!!i.isHorizontal,l=!!i.constrained,s=i.angle||0,u=i.anchor,f=u==="end",c=u==="start",v=i.leftToRight||0,d=(v+1)/2,p=1-d,y=i.hasB,m=i.r,x=i.overhead,w=n.width,_=n.height,b=Math.abs(r-e),T=Math.abs(a-t),k=b>2*cn&&T>2*cn?cn:0;b-=2*k,T-=2*k;var M=NG(s);s==="auto"&&!(w<=b&&_<=T)&&(w>b||_>T)&&(!(w>T||_>b)||w<_!=bcn){var P=z5e(e,r,t,a,q,m,x,o,y);E=P.scale,D=P.pad}else E=1,l&&(E=Math.min(1,b/q.x,T/q.y)),D=0;var R=n.left*p+n.right*d,z=(n.top+n.bottom)/2,O=(e+cn)*p+(r-cn)*d,B=(t+a)/2,Y=0,V=0;if(c||f){var H=(o?q.x:q.y)/2;m&&(f||y)&&(k+=D);var G=o?Ho(e,r):Ho(t,a);o?c?(O=e+G*k,Y=-G*H):(O=r-G*k,Y=G*H):c?(B=t+G*k,V=-G*H):(B=a-G*k,V=G*H)}return{textX:R,textY:z,targetX:O,targetY:B,anchorX:Y,anchorY:V,scale:E,rotate:M}}function z5e(e,r,t,a,n,i,o,l,s){var u=Math.max(0,Math.abs(r-e)-2*cn),f=Math.max(0,Math.abs(a-t)-2*cn),c=i-cn,v=o?c-Math.sqrt(c*c-(c-o)*(c-o)):c,d=s?c*2:l?c-o:2*v,p=s?c*2:l?2*v:c-o,y,m,x,w,_;return n.y/n.x>=f/(u-d)?w=f/n.y:n.y/n.x<=(f-p)/u?w=u/n.x:!s&&l?(y=n.x*n.x+n.y*n.y/4,m=-2*n.x*(u-c)-n.y*(f/2-c),x=(u-c)*(u-c)+(f/2-c)*(f/2-c)-c*c,w=(-m+Math.sqrt(m*m-4*y*x))/(2*y)):s?(y=(n.x*n.x+n.y*n.y)/4,m=-n.x*(u/2-c)-n.y*(f/2-c),x=(u/2-c)*(u/2-c)+(f/2-c)*(f/2-c)-c*c,w=(-m+Math.sqrt(m*m-4*y*x))/(2*y)):(y=n.x*n.x/4+n.y*n.y,m=-n.x*(u/2-c)-2*n.y*(f-c),x=(u/2-c)*(u/2-c)+(f-c)*(f-c)-c*c,w=(-m+Math.sqrt(m*m-4*y*x))/(2*y)),w=Math.min(1,w),l?_=Math.max(0,c-Math.sqrt(Math.max(0,c*c-(c-(f-n.y*w)/2)*(c-(f-n.y*w)/2)))-o):_=Math.max(0,c-Math.sqrt(Math.max(0,c*c-(c-(u-n.x*w)/2)*(c-(u-n.x*w)/2)))-o),{scale:w,pad:_}}function I5e(e,r,t,a,n,i){var o=!!i.isHorizontal,l=!!i.constrained,s=i.angle||0,u=n.width,f=n.height,c=Math.abs(r-e),v=Math.abs(a-t),d;o?d=v>2*cn?cn:0:d=c>2*cn?cn:0;var p=1;l&&(p=o?Math.min(1,v/f):Math.min(1,c/u));var y=NG(s),m=zG(n,y),x=(o?m.x:m.y)/2,w=(n.left+n.right)/2,_=(n.top+n.bottom)/2,b=(e+r)/2,T=(t+a)/2,k=0,M=0,q=o?Ho(r,e):Ho(t,a);return o?(b=r-q*d,k=q*x):(T=a+q*d,M=-q*x),{textX:w,textY:_,targetX:b,targetY:T,anchorX:k,anchorY:M,scale:p,rotate:y}}function O5e(e,r,t,a,n){var i=r[0].trace,o=i.texttemplate,l;return o?l=H5e(e,r,t,a,n):i.textinfo?l=U5e(r,t,a,n):l=Gc.getValue(i.text,t),Gc.coerceString(L5e,l)}function B5e(e,r){var t=Gc.getValue(e.textposition,r);return Gc.coerceEnumerated(C5e,t)}function H5e(e,r,t,a,n){var i=r[0].trace,o=Ra.castOption(i,t,"texttemplate");if(!o)return"";var l=i.type==="histogram",s=i.type==="waterfall",u=i.type==="funnel",f=i.orientation==="h",c,v,d,p;f?(c="y",v=n,d="x",p=a):(c="x",v=a,d="y",p=n);function y(k){return lg(v,v.c2l(k),!0).text}function m(k){return lg(p,p.c2l(k),!0).text}var x=r[t],w={};w.label=x.p,w.labelLabel=w[c+"Label"]=y(x.p);var _=Ra.castOption(i,x.i,"text");(_===0||_)&&(w.text=_),w.value=x.s,w.valueLabel=w[d+"Label"]=m(x.s);var b={};E5e(b,i,x.i),(l||b.x===void 0)&&(b.x=f?w.value:w.label),(l||b.y===void 0)&&(b.y=f?w.label:w.value),(l||b.xLabel===void 0)&&(b.xLabel=f?w.valueLabel:w.labelLabel),(l||b.yLabel===void 0)&&(b.yLabel=f?w.labelLabel:w.valueLabel),s&&(w.delta=+x.rawS||x.s,w.deltaLabel=m(w.delta),w.final=x.v,w.finalLabel=m(w.final),w.initial=w.final-w.delta,w.initialLabel=m(w.initial)),u&&(w.value=x.s,w.valueLabel=m(w.value),w.percentInitial=x.begR,w.percentInitialLabel=Ra.formatPercent(x.begR),w.percentPrevious=x.difR,w.percentPreviousLabel=Ra.formatPercent(x.difR),w.percentTotal=x.sumR,w.percenTotalLabel=Ra.formatPercent(x.sumR));var T=Ra.castOption(i,x.i,"customdata");return T&&(w.customdata=T),Ra.texttemplateString({data:[b,w,i._meta],fallback:i.texttemplatefallback,labels:w,locale:e._d3locale,template:o})}function U5e(e,r,t,a){var n=e[0].trace,i=n.orientation==="h",o=n.type==="waterfall",l=n.type==="funnel";function s(T){var k=i?a:t;return lg(k,T,!0).text}function u(T){var k=i?t:a;return lg(k,+T,!0).text}var f=n.textinfo,c=e[r],v=f.split("+"),d=[],p,y=function(T){return v.indexOf(T)!==-1};if(y("label")&&d.push(s(e[r].p)),y("text")&&(p=Ra.castOption(n,c.i,"text"),(p===0||p)&&d.push(p)),o){var m=+c.rawS||c.s,x=c.v,w=x-m;y("initial")&&d.push(u(w)),y("delta")&&d.push(u(m)),y("final")&&d.push(u(x))}if(l){y("value")&&d.push(u(c.s));var _=0;y("percent initial")&&_++,y("percent previous")&&_++,y("percent total")&&_++;var b=_>1;y("percent initial")&&(p=Ra.formatPercent(c.begR),b&&(p+=" of initial"),d.push(p)),y("percent previous")&&(p=Ra.formatPercent(c.difR),b&&(p+=" of previous"),d.push(p)),y("percent total")&&(p=Ra.formatPercent(c.sumR),b&&(p+=" of total"),d.push(p))}return d.join("
")}OG.exports={plot:F5e,toMoveInsideBar:IG}});var Sw=N((vze,GG)=>{"use strict";var C0=Pn(),G5e=br(),BG=Tr(),V5e=Le().fillText,Y5e=ng().getLineWidth,kw=zr().hoverLabelText,W5e=It().BADNUM;function j5e(e,r,t,a,n){var i=HG(e,r,t,a,n);if(i){var o=i.cd,l=o[0].trace,s=o[i.index];return i.color=UG(l,s),G5e.getComponentMethod("errorbars","hoverInfo")(s,l,i),[i]}}function HG(e,r,t,a,n){var i=e.cd,o=i[0].trace,l=i[0].t,s=a==="closest",u=o.type==="waterfall",f=e.maxHoverDistance,c=e.maxSpikeDistance,v,d,p,y,m,x,w;o.orientation==="h"?(v=t,d=r,p="y",y="x",m=B,x=R):(v=r,d=t,p="x",y="y",x=B,m=R);var _=o[p+"period"],b=s||_;function T(K){return M(K,-1)}function k(K){return M(K,1)}function M(K,_e){var le=K.w;return K[p]+_e*le/2}function q(K){return K[p+"End"]-K[p+"Start"]}var E=s?T:_?function(K){return K.p-q(K)/2}:function(K){return Math.min(T(K),K.p-l.bardelta/2)},D=s?k:_?function(K){return K.p+q(K)/2}:function(K){return Math.max(k(K),K.p+l.bardelta/2)};function P(K,_e,le){return n.finiteRange&&(le=0),C0.inbox(K-v,_e-v,le+Math.min(1,Math.abs(_e-K)/w)-1)}function R(K){return P(E(K),D(K),f)}function z(K){return P(T(K),k(K),c)}function O(K){var _e=K[y];if(u){var le=Math.abs(K.rawS)||0;d>0?_e+=le:d<0&&(_e-=le)}return _e}function B(K){var _e=d,le=K.b,he=O(K);return C0.inbox(le-_e,he-_e,f+(he-_e)/(he-le)-1)}function Y(K){var _e=d,le=K.b,he=O(K);return C0.inbox(le-_e,he-_e,c+(he-_e)/(he-le)-1)}var V=e[p+"a"],H=e[y+"a"];w=Math.abs(V.r2c(V.range[1])-V.r2c(V.range[0]));function G(K){return(m(K)+x(K))/2}var X=C0.getDistanceFunction(a,m,x,G);if(C0.getClosest(i,X,e),e.index!==!1&&i[e.index].p!==W5e){b||(E=function(K){return Math.min(T(K),K.p-l.bargroupwidth/2)},D=function(K){return Math.max(k(K),K.p+l.bargroupwidth/2)});var Z=e.index,ee=i[Z],fe=o.base?ee.b+ee.s:ee.s;e[y+"0"]=e[y+"1"]=H.c2p(ee[y],!0),e[y+"LabelVal"]=fe;var ie=l.extents[l.extents.round(ee.p)];e[p+"0"]=V.c2p(s?E(ee):ie[0],!0),e[p+"1"]=V.c2p(s?D(ee):ie[1],!0);var ue=ee.orig_p!==void 0;return e[p+"LabelVal"]=ue?ee.orig_p:ee.p,e.labelLabel=kw(V,e[p+"LabelVal"],o[p+"hoverformat"]),e.valueLabel=kw(H,e[y+"LabelVal"],o[y+"hoverformat"]),e.baseLabel=kw(H,ee.b,o[y+"hoverformat"]),e.spikeDistance=(Y(ee)+z(ee))/2,e[p+"Spike"]=V.c2p(ee.p,!0),V5e(ee,o,e),e.hovertemplate=o.hovertemplate,e}}function UG(e,r){var t=r.mcc||e.marker.color,a=r.mlcc||e.marker.line.color,n=Y5e(e,r);if(BG.opacity(t))return t;if(BG.opacity(a)&&n)return a}GG.exports={hoverPoints:j5e,hoverOnBars:HG,getTraceColor:UG}});var YG=N((hze,VG)=>{"use strict";VG.exports=function(r,t,a){return r.x="xVal"in t?t.xVal:t.x,r.y="yVal"in t?t.yVal:t.y,t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),a.orientation==="h"?(r.label=r.y,r.value=r.x):(r.label=r.x,r.value=r.y),r}});var qw=N((dze,WG)=>{"use strict";WG.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,o=a[0].trace,l=o.type==="funnel",s=o.orientation==="h",u=[],f;if(t===!1)for(f=0;f{"use strict";jG.exports={attributes:zu(),layoutAttributes:rg(),supplyDefaults:Iu().supplyDefaults,crossTraceDefaults:Iu().crossTraceDefaults,supplyLayoutDefaults:xw(),calc:mG(),crossTraceCalc:ym().crossTraceCalc,colorbar:v0(),arraysToCalcdata:ag(),plot:Mw().plot,style:Uc().style,styleOnSelect:Uc().styleOnSelect,hoverPoints:Sw().hoverPoints,eventData:YG(),selectPoints:qw(),moduleType:"trace",name:"bar",basePlotModule:Li(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}});var JG=N((yze,XG)=>{"use strict";XG.exports=ZG()});var sg=N((mze,eV)=>{"use strict";var X5e=Ny(),Ei=wi(),$G=zu(),J5e=si(),KG=ro().axisHoverFormat,{hovertemplateAttrs:$5e,templatefallbackAttrs:K5e}=Yn(),wl=bt().extendFlat,Vc=Ei.marker,QG=Vc.line;eV.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:Ei.xperiod,yperiod:Ei.yperiod,xperiod0:Ei.xperiod0,yperiod0:Ei.yperiod0,xperiodalignment:Ei.xperiodalignment,yperiodalignment:Ei.yperiodalignment,xhoverformat:KG("x"),yhoverformat:KG("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:wl({},Vc.symbol,{arrayOk:!1,editType:"plot"}),opacity:wl({},Vc.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:wl({},Vc.angle,{arrayOk:!1,editType:"calc"}),size:wl({},Vc.size,{arrayOk:!1,editType:"calc"}),color:wl({},Vc.color,{arrayOk:!1,editType:"style"}),line:{color:wl({},QG.color,{arrayOk:!1,dflt:J5e.defaultLine,editType:"style"}),width:wl({},QG.width,{arrayOk:!1,dflt:0,editType:"style"}),outliercolor:{valType:"color",editType:"style"},outlierwidth:{valType:"number",min:0,dflt:1,editType:"style"},editType:"style"},editType:"plot"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:X5e(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},showwhiskers:{valType:"boolean",editType:"calc"},offsetgroup:$G.offsetgroup,alignmentgroup:$G.alignmentgroup,selected:{marker:Ei.selected.marker,editType:"style"},unselected:{marker:Ei.unselected.marker,editType:"style"},text:wl({},Ei.text,{}),hovertext:wl({},Ei.hovertext,{}),hovertemplate:$5e({}),hovertemplatefallback:K5e(),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"},zorder:Ei.zorder}});var ug=N((gze,rV)=>{"use strict";rV.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"}}});var D0=N((bze,iV)=>{"use strict";var Di=Le(),Q5e=br(),e_e=Tr(),r_e=bc(),t_e=l0(),tV=k1(),E0=sg();function a_e(e,r,t,a){function n(p,y){return Di.coerce(e,r,E0,p,y)}if(aV(e,r,n,a),r.visible!==!1){r_e(e,r,a,n),n("xhoverformat"),n("yhoverformat");var i=r._hasPreCompStats;i&&(n("lowerfence"),n("upperfence")),n("line.color",(e.marker||{}).color||t),n("line.width"),n("fillcolor",e_e.addOpacity(r.line.color,.5));var o=!1;if(i){var l=n("mean"),s=n("sd");l&&l.length&&(o=!0,s&&s.length&&(o="sd"))}n("whiskerwidth");var u=n("sizemode"),f;u==="quartiles"&&(f=n("boxmean",o)),n("showwhiskers",u==="quartiles"),(u==="sd"||f==="sd")&&n("sdmultiple"),n("width"),n("quartilemethod");var c=!1;if(i){var v=n("notchspan");v&&v.length&&(c=!0)}else Di.validate(e.notchwidth,E0.notchwidth)&&(c=!0);var d=n("notched",c);d&&n("notchwidth"),nV(e,r,n,{prefix:"box"}),n("zorder")}}function aV(e,r,t,a){function n(D){var P=0;return D&&D.length&&(P+=1,Di.isArrayOrTypedArray(D[0])&&D[0].length&&(P+=1)),P}function i(D){return Di.validate(e[D],E0[D])}var o=t("y"),l=t("x"),s;if(r.type==="box"){var u=t("q1"),f=t("median"),c=t("q3");r._hasPreCompStats=u&&u.length&&f&&f.length&&c&&c.length,s=Math.min(Di.minRowLength(u),Di.minRowLength(f),Di.minRowLength(c))}var v=n(o),d=n(l),p=v&&Di.minRowLength(o),y=d&&Di.minRowLength(l),m=a.calendar,x={autotypenumbers:a.autotypenumbers},w,_;if(r._hasPreCompStats)switch(String(d)+String(v)){case"00":var b=i("x0")||i("dx"),T=i("y0")||i("dy");T&&!b?w="h":w="v",_=s;break;case"10":w="v",_=Math.min(s,y);break;case"20":w="h",_=Math.min(s,l.length);break;case"01":w="h",_=Math.min(s,p);break;case"02":w="v",_=Math.min(s,o.length);break;case"12":w="v",_=Math.min(s,y,o.length);break;case"21":w="h",_=Math.min(s,l.length,p);break;case"11":_=0;break;case"22":var k=!1,M;for(M=0;M0?(w="v",d>0?_=Math.min(y,p):_=Math.min(p)):d>0?(w="h",_=Math.min(y)):_=0;if(!_){r.visible=!1;return}r._length=_;var q=t("orientation",w);r._hasPreCompStats?q==="v"&&d===0?(t("x0",0),t("dx",1)):q==="h"&&v===0&&(t("y0",0),t("dy",1)):q==="v"&&d===0?t("x0"):q==="h"&&v===0&&t("y0");var E=Q5e.getComponentMethod("calendars","handleTraceDefaults");E(e,r,["x","y"],a)}function nV(e,r,t,a){var n=a.prefix,i=Di.coerce2(e,r,E0,"marker.outliercolor"),o=t("marker.line.outliercolor"),l="outliers";r._hasPreCompStats?l="all":(i||o)&&(l="suspectedoutliers");var s=t(n+"points",l);s?(t("jitter",s==="all"?.3:0),t("pointpos",s==="all"?-1.5:0),t("marker.symbol"),t("marker.opacity"),t("marker.size"),t("marker.angle"),t("marker.color",r.line.color),t("marker.line.color"),t("marker.line.width"),s==="suspectedoutliers"&&(t("marker.line.outliercolor",r.marker.color),t("marker.line.outlierwidth")),t("selected.marker.color"),t("unselected.marker.color"),t("selected.marker.size"),t("unselected.marker.size"),t("text"),t("hovertext")):delete r.marker;var u=t("hoveron");(u==="all"||u.indexOf("points")!==-1)&&(t("hovertemplate"),t("hovertemplatefallback")),Di.coerceSelectionMarkerOpacity(r,t)}function n_e(e,r){var t,a;function n(s){return Di.coerce(a._input,a,E0,s)}for(var i=0;i{"use strict";var i_e=br(),o_e=Le(),l_e=ug();function oV(e,r,t,a,n){for(var i=n+"Layout",o=!1,l=0;l{"use strict";var Ew=Rr(),fg=zr(),u_e=_c(),na=Le(),ti=It().BADNUM,Tl=na._;yV.exports=function(r,t){var a=r._fullLayout,n=fg.getFromId(r,t.xaxis||"x"),i=fg.getFromId(r,t.yaxis||"y"),o=[],l=t.type==="violin"?"_numViolins":"_numBoxes",s,u,f,c,v,d,p;t.orientation==="h"?(f=n,c="x",v=i,d="y",p=!!t.yperiodalignment):(f=i,c="y",v=n,d="x",p=!!t.xperiodalignment);var y=f_e(t,d,v,a[l]),m=y[0],x=y[1],w=na.distinctVals(m,v),_=w.vals,b=w.minDiff/2,T,k,M,q,E,D,P=(t.boxpoints||t.points)==="all"?na.identity:function(Pe){return Pe.vT.uf};if(t._hasPreCompStats){var R=t[c],z=function(Pe){return f.d2c((t[Pe]||[])[s])},O=1/0,B=-1/0;for(s=0;s=T.q1&&T.q3>=T.med){var V=z("lowerfence");T.lf=V!==ti&&V<=T.q1?V:cV(T,M,q);var H=z("upperfence");T.uf=H!==ti&&H>=T.q3?H:vV(T,M,q);var G=z("mean");T.mean=G!==ti?G:q?na.mean(M,q):(T.q1+T.q3)/2;var X=z("sd");T.sd=G!==ti&&X>=0?X:q?na.stdev(M,q,T.mean):T.q3-T.q1,T.lo=hV(T),T.uo=dV(T);var Z=z("notchspan");Z=Z!==ti&&Z>0?Z:pV(T,q),T.ln=T.med-Z,T.un=T.med+Z;var ee=T.lf,fe=T.uf;t.boxpoints&&M.length&&(ee=Math.min(ee,M[0]),fe=Math.max(fe,M[q-1])),t.notched&&(ee=Math.min(ee,T.ln),fe=Math.max(fe,T.un)),T.min=ee,T.max=fe}else{na.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+T.q1,"median = "+T.med,"q3 = "+T.q3].join(` +`));var ie;T.med!==ti?ie=T.med:T.q1!==ti?T.q3!==ti?ie=(T.q1+T.q3)/2:ie=T.q1:T.q3!==ti?ie=T.q3:ie=0,T.med=ie,T.q1=T.q3=ie,T.lf=T.uf=ie,T.mean=T.sd=ie,T.ln=T.un=ie,T.min=T.max=ie}O=Math.min(O,T.min),B=Math.max(B,T.max),T.pts2=k.filter(P),o.push(T)}}t._extremes[f._id]=fg.findExtremes(f,[O,B],{padded:!0})}else{var ue=f.makeCalcdata(t,c),K=c_e(_,b),_e=_.length,le=v_e(_e);for(s=0;s=0&&he<_e&&(E={v:D,i:s},sV(E,t,s),le[he].push(E))}var oe=1/0,ce=-1/0,W=t.quartilemethod,Q=W==="exclusive",j=W==="inclusive";for(s=0;s<_e;s++)if(le[s].length>0){if(T={},T.pos=T[d]=_[s],k=T.pts=le[s].sort(uV),M=T[c]=k.map(fV),q=M.length,T.min=M[0],T.max=M[q-1],T.mean=na.mean(M,q),T.sd=na.stdev(M,q,T.mean)*t.sdmultiple,T.med=na.interp(M,.5),q%2&&(Q||j)){var pe,me;Q?(pe=M.slice(0,q/2),me=M.slice(q/2+1)):j&&(pe=M.slice(0,q/2+1),me=M.slice(q/2)),T.q1=na.interp(pe,.5),T.q3=na.interp(me,.5)}else T.q1=na.interp(M,.25),T.q3=na.interp(M,.75);T.lf=cV(T,M,q),T.uf=vV(T,M,q),T.lo=hV(T),T.uo=dV(T);var ye=pV(T,q);T.ln=T.med-ye,T.un=T.med+ye,oe=Math.min(oe,T.ln),ce=Math.max(ce,T.un),T.pts2=k.filter(P),o.push(T)}t.notched&&na.isTypedArray(ue)&&(ue=Array.from(ue)),t._extremes[f._id]=fg.findExtremes(f,t.notched?ue.concat([oe,ce]):ue,{padded:!0})}return h_e(o,t),o.length>0?(o[0].t={num:a[l],dPos:b,posLetter:d,valLetter:c,labels:{med:Tl(r,"median:"),min:Tl(r,"min:"),q1:Tl(r,"q1:"),q3:Tl(r,"q3:"),max:Tl(r,"max:"),mean:t.boxmean==="sd"||t.sizemode==="sd"?Tl(r,"mean \xB1 \u03C3:").replace("\u03C3",t.sdmultiple===1?"\u03C3":t.sdmultiple+"\u03C3"):Tl(r,"mean:"),lf:Tl(r,"lower fence:"),uf:Tl(r,"upper fence:")}},a[l]++,o):[{t:{empty:!0}}]};function f_e(e,r,t,a){var n=r in e,i=r+"0"in e,o="d"+r in e;if(n||i&&o){var l=t.makeCalcdata(e,r),s=u_e(e,t,r,l).vals;return[s,l]}var u;i?u=e[r+"0"]:"name"in e&&(t.type==="category"||Ew(e.name)&&["linear","log"].indexOf(t.type)!==-1||na.isDateTime(e.name)&&t.type==="date")?u=e.name:u=a;for(var f=t.type==="multicategory"?t.r2c_just_indices(u):t.d2c(u,0,e[r+"calendar"]),c=e._length,v=new Array(c),d=0;d{"use strict";var mV=zr(),d_e=Le(),p_e=Au().getAxisGroup,gV=["v","h"];function y_e(e,r){for(var t=e.calcdata,a=r.xaxis,n=r.yaxis,i=0;i1,w=1-i[e+"gap"],_=1-i[e+"groupgap"];for(s=0;s0;if(M==="positive"?(H=q*(k?1:.5),Z=X,G=Z=D):M==="negative"?(H=Z=D,G=q*(k?1:.5),ee=X):(H=G=q,Z=ee=X),le){var he=b.pointpos,oe=b.jitter,ce=b.marker.size/2,W=0;he+oe>=0&&(W=X*(he+oe),W>H?(_e=!0,ue=ce,fe=W):W>Z&&(ue=ce,fe=H)),W<=H&&(fe=H);var Q=0;he-oe<=0&&(Q=-X*(he-oe),Q>G?(_e=!0,K=ce,ie=Q):Q>ee&&(K=ce,ie=G)),Q<=G&&(ie=G)}else fe=H,ie=G;var j=new Array(f.length);for(u=0;u{"use strict";var Yc=Sr(),Hu=Le(),m_e=Wr(),_V=5,g_e=.01;function b_e(e,r,t,a){var n=e._context.staticPlot,i=r.xaxis,o=r.yaxis;Hu.makeTraceGroups(a,t,"trace boxes").each(function(l){var s=Yc.select(this),u=l[0],f=u.t,c=u.trace;if(f.wdPos=f.bdPos*c.whiskerwidth,c.visible!==!0||f.empty){s.remove();return}var v,d;c.orientation==="h"?(v=o,d=i):(v=i,d=o),wV(s,{pos:v,val:d},c,f,n),TV(s,{x:i,y:o},c,f),AV(s,{pos:v,val:d},c,f)})}function wV(e,r,t,a,n){var i=t.orientation==="h",o=r.val,l=r.pos,s=!!l.rangebreaks,u=a.bPos,f=a.wdPos||0,c=a.bPosPxOffset||0,v=t.whiskerwidth||0,d=t.showwhiskers!==!1,p=t.notched||!1,y=p?1-2*t.notchwidth:1,m,x;Array.isArray(a.bdPos)?(m=a.bdPos[0],x=a.bdPos[1]):(m=a.bdPos,x=a.bdPos);var w=e.selectAll("path.box").data(t.type!=="violin"||t.box.visible?Hu.identity:[]);w.enter().append("path").style("vector-effect",n?"none":"non-scaling-stroke").attr("class","box"),w.exit().remove(),w.each(function(_){if(_.empty)return Yc.select(this).attr("d","M0,0Z");var b=l.c2l(_.pos+u,!0),T=l.l2p(b-m)+c,k=l.l2p(b+x)+c,M=s?(T+k)/2:l.l2p(b)+c,q=t.whiskerwidth,E=s?T*q+(1-q)*M:l.l2p(b-f)+c,D=s?k*q+(1-q)*M:l.l2p(b+f)+c,P=l.l2p(b-m*y)+c,R=l.l2p(b+x*y)+c,z=t.sizemode==="sd",O=o.c2p(z?_.mean-_.sd:_.q1,!0),B=z?o.c2p(_.mean+_.sd,!0):o.c2p(_.q3,!0),Y=Hu.constrain(z?o.c2p(_.mean,!0):o.c2p(_.med,!0),Math.min(O,B)+1,Math.max(O,B)-1),V=_.lf===void 0||t.boxpoints===!1||z,H=o.c2p(V?_.min:_.lf,!0),G=o.c2p(V?_.max:_.uf,!0),X=o.c2p(_.ln,!0),Z=o.c2p(_.un,!0);i?Yc.select(this).attr("d","M"+Y+","+P+"V"+R+"M"+O+","+T+"V"+k+(p?"H"+X+"L"+Y+","+R+"L"+Z+","+k:"")+"H"+B+"V"+T+(p?"H"+Z+"L"+Y+","+P+"L"+X+","+T:"")+"Z"+(d?"M"+O+","+M+"H"+H+"M"+B+","+M+"H"+G+(v===0?"":"M"+H+","+E+"V"+D+"M"+G+","+E+"V"+D):"")):Yc.select(this).attr("d","M"+P+","+Y+"H"+R+"M"+T+","+O+"H"+k+(p?"V"+X+"L"+R+","+Y+"L"+k+","+Z:"")+"V"+B+"H"+T+(p?"V"+Z+"L"+P+","+Y+"L"+T+","+X:"")+"Z"+(d?"M"+M+","+O+"V"+H+"M"+M+","+B+"V"+G+(v===0?"":"M"+E+","+H+"H"+D+"M"+E+","+G+"H"+D):""))})}function TV(e,r,t,a){var n=r.x,i=r.y,o=a.bdPos,l=a.bPos,s=t.boxpoints||t.points;Hu.seedPseudoRandom();var u=function(v){return v.forEach(function(d){d.t=a,d.trace=t}),v},f=e.selectAll("g.points").data(s?u:[]);f.enter().append("g").attr("class","points"),f.exit().remove();var c=f.selectAll("path").data(function(v){var d,p=v.pts2,y=Math.max((v.max-v.min)/10,v.q3-v.q1),m=y*1e-9,x=y*g_e,w=[],_=0,b;if(t.jitter){if(y===0)for(_=1,w=new Array(p.length),d=0;dv.lo&&(D.so=!0)}return p});c.enter().append("path").classed("point",!0),c.exit().remove(),c.call(m_e.translatePoints,n,i)}function AV(e,r,t,a){var n=r.val,i=r.pos,o=!!i.rangebreaks,l=a.bPos,s=a.bPosPxOffset||0,u=t.boxmean||(t.meanline||{}).visible,f,c;Array.isArray(a.bdPos)?(f=a.bdPos[0],c=a.bdPos[1]):(f=a.bdPos,c=a.bdPos);var v=e.selectAll("path.mean").data(t.type==="box"&&t.boxmean||t.type==="violin"&&t.box.visible&&t.meanline.visible?Hu.identity:[]);v.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),v.exit().remove(),v.each(function(d){var p=i.c2l(d.pos+l,!0),y=i.l2p(p-f)+s,m=i.l2p(p+c)+s,x=o?(y+m)/2:i.l2p(p)+s,w=n.c2p(d.mean,!0),_=n.c2p(d.mean-d.sd,!0),b=n.c2p(d.mean+d.sd,!0);t.orientation==="h"?Yc.select(this).attr("d","M"+w+","+y+"V"+m+(u==="sd"?"m0,0L"+_+","+x+"L"+w+","+y+"L"+b+","+x+"Z":"")):Yc.select(this).attr("d","M"+y+","+w+"H"+m+(u==="sd"?"m0,0L"+x+","+_+"L"+y+","+w+"L"+x+","+b+"Z":""))})}MV.exports={plot:b_e,plotBoxAndWhiskers:wV,plotPoints:TV,plotBoxMean:AV}});var Iw=N((Aze,kV)=>{"use strict";var Fw=Sr(),Nw=Tr(),zw=Wr();function x_e(e,r,t){var a=t||Fw.select(e).selectAll("g.trace.boxes");a.style("opacity",function(n){return n[0].trace.opacity}),a.each(function(n){var i=Fw.select(this),o=n[0].trace,l=o.line.width;function s(c,v,d,p){c.style("stroke-width",v+"px").call(Nw.stroke,d).call(Nw.fill,p)}var u=i.selectAll("path.box");if(o.type==="candlestick")u.each(function(c){if(!c.empty){var v=Fw.select(this),d=o[c.dir];s(v,d.line.width,d.line.color,d.fillcolor),v.style("opacity",o.selectedpoints&&!c.selected?.3:1)}});else{s(u,l,o.line.color,o.fillcolor),i.selectAll("path.mean").style({"stroke-width":l,"stroke-dasharray":2*l+"px,"+l+"px"}).call(Nw.stroke,o.line.color);var f=i.selectAll("path.point");zw.pointStyle(f,o,e)}})}function __e(e,r,t){var a=r[0].trace,n=t.selectAll("path.point");a.selectedpoints?zw.selectedPointStyle(n,a):zw.pointStyle(n,a,e)}kV.exports={style:x_e,styleOnSelect:__e}});var Bw=N((Mze,CV)=>{"use strict";var w_e=zr(),Ow=Le(),ms=Pn(),SV=Tr(),T_e=Ow.fillText;function A_e(e,r,t,a){var n=e.cd,i=n[0].trace,o=i.hoveron,l=[],s;return o.indexOf("boxes")!==-1&&(l=l.concat(qV(e,r,t,a))),o.indexOf("points")!==-1&&(s=LV(e,r,t)),a==="closest"?s?[s]:l:(s&&l.push(s),l)}function qV(e,r,t,a){var n=e.cd,i=e.xa,o=e.ya,l=n[0].trace,s=n[0].t,u=l.type==="violin",f,c,v,d,p,y,m,x,w,_,b,T=s.bdPos,k,M,q=s.wHover,E=function(ce){return v.c2l(ce.pos)+s.bPos-v.c2l(y)};u&&l.side!=="both"?(l.side==="positive"&&(w=function(ce){var W=E(ce);return ms.inbox(W,W+q,_)},k=T,M=0),l.side==="negative"&&(w=function(ce){var W=E(ce);return ms.inbox(W-q,W,_)},k=0,M=T)):(w=function(ce){var W=E(ce);return ms.inbox(W-q,W+q,_)},k=M=T);var D;u?D=function(ce){return ms.inbox(ce.span[0]-p,ce.span[1]-p,_)}:D=function(ce){return ms.inbox(ce.min-p,ce.max-p,_)},l.orientation==="h"?(p=r,y=t,m=D,x=w,f="y",v=o,c="x",d=i):(p=t,y=r,m=w,x=D,f="x",v=i,c="y",d=o);var P=Math.min(1,T/Math.abs(v.r2c(v.range[1])-v.r2c(v.range[0])));_=e.maxHoverDistance-P,b=e.maxSpikeDistance-P;function R(ce){return(m(ce)+x(ce))/2}var z=ms.getDistanceFunction(a,m,x,R);if(ms.getClosest(n,z,e),e.index===!1)return[];var O=n[e.index],B=l.line.color,Y=(l.marker||{}).color;SV.opacity(B)&&l.line.width?e.color=B:SV.opacity(Y)&&l.boxpoints?e.color=Y:e.color=l.fillcolor,e[f+"0"]=v.c2p(O.pos+s.bPos-M,!0),e[f+"1"]=v.c2p(O.pos+s.bPos+k,!0),e[f+"LabelVal"]=O.orig_p!==void 0?O.orig_p:O.pos;var V=f+"Spike";e.spikeDistance=R(O)*b/_,e[V]=v.c2p(O.pos,!0);var H=l.boxmean||l.sizemode==="sd"||(l.meanline||{}).visible,G=l.boxpoints||l.points,X=G&&H?["max","uf","q3","med","mean","q1","lf","min"]:G&&!H?["max","uf","q3","med","q1","lf","min"]:!G&&H?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],Z=d.range[1]{"use strict";EV.exports=function(r,t){return t.hoverOnBox&&(r.hoverOnBox=t.hoverOnBox),"xVal"in t&&(r.x=t.xVal),"yVal"in t&&(r.y=t.yVal),t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),r}});var Hw=N((Sze,RV)=>{"use strict";RV.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,o=[],l,s;if(t===!1)for(l=0;l{"use strict";PV.exports={attributes:sg(),layoutAttributes:ug(),supplyDefaults:D0().supplyDefaults,crossTraceDefaults:D0().crossTraceDefaults,supplyLayoutDefaults:Lw().supplyLayoutDefaults,calc:Dw(),crossTraceCalc:Rw().crossTraceCalc,plot:Pw().plot,style:Iw().style,styleOnSelect:Iw().styleOnSelect,hoverPoints:Bw().hoverPoints,eventData:DV(),selectPoints:Hw(),moduleType:"trace",name:"box",basePlotModule:Li(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{}}});var zV=N((Lze,NV)=>{"use strict";NV.exports=FV()});var R0=N((Cze,OV)=>{"use strict";var M_e=ko(),{extendFlat:On}=bt(),k_e=gn(),{axisHoverFormat:Uw}=ro(),S_e=ma(),{hovertemplateAttrs:q_e,templatefallbackAttrs:IV,texttemplateAttrs:L_e}=Yn(),ai=wi();OV.exports=On({z:{valType:"data_array",editType:"calc"},x:On({},ai.x,{impliedEdits:{xtype:"array"}}),x0:On({},ai.x0,{impliedEdits:{xtype:"scaled"}}),dx:On({},ai.dx,{impliedEdits:{xtype:"scaled"}}),y:On({},ai.y,{impliedEdits:{ytype:"array"}}),y0:On({},ai.y0,{impliedEdits:{ytype:"scaled"}}),dy:On({},ai.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:On({},ai.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:On({},ai.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:On({},ai.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:On({},ai.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:On({},ai.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:On({},ai.yperiodalignment,{impliedEdits:{ytype:"scaled"}}),text:{valType:"data_array",editType:"calc"},hovertext:{valType:"data_array",editType:"calc"},transpose:{valType:"boolean",dflt:!1,editType:"calc"},xtype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},ytype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},zsmooth:{valType:"enumerated",values:["fast","best",!1],dflt:!1,editType:"calc"},hoverongaps:{valType:"boolean",dflt:!0,editType:"none"},connectgaps:{valType:"boolean",editType:"calc"},xgap:{valType:"number",dflt:0,min:0,editType:"plot"},ygap:{valType:"number",dflt:0,min:0,editType:"plot"},xhoverformat:Uw("x"),yhoverformat:Uw("y"),zhoverformat:Uw("z",1),hovertemplate:q_e(),hovertemplatefallback:IV(),texttemplate:L_e({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),texttemplatefallback:IV({editType:"plot"}),textfont:S_e({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:On({},k_e.showlegend,{dflt:!1}),zorder:ai.zorder},M_e("",{cLetter:"z",autoColorDflt:!1}))});var Gw=N((Eze,HV)=>{"use strict";var C_e=Rr(),cg=Le(),E_e=br();HV.exports=function(r,t,a,n,i,o){var l=a("z");i=i||"x",o=o||"y";var s,u;if(l===void 0||!l.length)return 0;if(cg.isArray1D(l)){s=a(i),u=a(o);var f=cg.minRowLength(s),c=cg.minRowLength(u);if(f===0||c===0)return 0;t._length=Math.min(f,c,l.length)}else{if(s=BV(i,a),u=BV(o,a),!D_e(l))return 0;a("transpose"),t._length=null}var v=E_e.getComponentMethod("calendars","handleTraceDefaults");return v(r,t,[i,o],n),!0};function BV(e,r){var t=r(e),a=t?r(e+"type","array"):"scaled";return a==="scaled"&&(r(e+"0"),r("d"+e)),t}function D_e(e){for(var r=!0,t=!1,a=!1,n,i=0;i0&&(t=!0);for(var o=0;o{"use strict";var UV=Le();GV.exports=function(r,t){r("texttemplate"),r("texttemplatefallback");var a=UV.extendFlat({},t.font,{color:"auto",size:"auto"});UV.coerceFont(r,"textfont",a)}});var Vw=N((Rze,VV)=>{"use strict";VV.exports=function(r,t,a){var n=a("zsmooth");n===!1&&(a("xgap"),a("ygap")),a("zhoverformat")}});var jV=N((Pze,WV)=>{"use strict";var YV=Le(),R_e=Gw(),P_e=P0(),F_e=bc(),N_e=Vw(),z_e=fl(),I_e=R0();WV.exports=function(r,t,a,n){function i(l,s){return YV.coerce(r,t,I_e,l,s)}var o=R_e(r,t,i,n);if(!o){t.visible=!1;return}F_e(r,t,n,i),i("xhoverformat"),i("yhoverformat"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),P_e(i,n),N_e(r,t,i,n),i("hoverongaps"),i("connectgaps",YV.isArray1D(t.z)&&t.zsmooth!==!1),z_e(r,t,n,i,{prefix:"",cLetter:"z"}),i("zorder")}});var Yw=N((Fze,ZV)=>{"use strict";var Wc=Rr();ZV.exports={count:function(e,r,t){return t[e]++,1},sum:function(e,r,t,a){var n=a[r];return Wc(n)?(n=Number(n),t[e]+=n,n):0},avg:function(e,r,t,a,n){var i=a[r];return Wc(i)&&(i=Number(i),t[e]+=i,n[e]++),0},min:function(e,r,t,a){var n=a[r];if(Wc(n))if(n=Number(n),Wc(t[e])){if(t[e]>n){var i=n-t[e];return t[e]=n,i}}else return t[e]=n,n;return 0},max:function(e,r,t,a){var n=a[r];if(Wc(n))if(n=Number(n),Wc(t[e])){if(t[e]{"use strict";XV.exports={percent:function(e,r){for(var t=e.length,a=100/r,n=0;n{"use strict";JV.exports=function(r,t){for(var a=r.length,n=0,i=0;i{"use strict";var jc=It(),Uu=jc.ONEAVGYEAR,$V=jc.ONEAVGMONTH,hg=jc.ONEDAY,KV=jc.ONEHOUR,QV=jc.ONEMIN,eY=jc.ONESEC,rY=zr().tickIncrement;nY.exports=function(r,t,a,n,i){var o=-1.1*t,l=-.1*t,s=r-l,u=a[0],f=a[1],c=Math.min(vg(u+l,u+s,n,i),vg(f+l,f+s,n,i)),v=Math.min(vg(u+o,u+l,n,i),vg(f+o,f+l,n,i)),d,p;if(c>v&&vhg){var y=d===Uu?1:6,m=d===Uu?"M12":"M1";return function(x,w){var _=n.c2d(x,Uu,i),b=_.indexOf("-",y);b>0&&(_=_.slice(0,b));var T=n.d2c(_,0,i);if(TeY?e>hg?e>Uu*1.1?Uu:e>$V*1.1?$V:hg:e>KV?KV:e>QV?QV:eY:Math.pow(10,Math.floor(Math.log(e)/Math.LN10))}function O_e(e,r,t,a,n,i){if(a&&e>hg){var o=aY(r,n,i),l=aY(t,n,i),s=e===Uu?0:1;return o[s]!==l[s]}return Math.floor(t/e)-Math.floor(r/e)>.1}function aY(e,r,t){var a=r.c2d(e,Uu,t).split("-");return a[0]===""&&(a.unshift(),a[0]="-"+a[0]),a}});var $w=N((Oze,uY)=>{"use strict";var Xw=Rr(),vn=Le(),iY=br(),Ri=zr(),{hasColorscale:oY}=jn(),lY=Yf(),B_e=ag(),sY=Yw(),H_e=Ww(),U_e=jw(),G_e=Zw();function V_e(e,r){var t=[],a=[],n=r.orientation==="h",i=Ri.getFromId(e,n?r.yaxis:r.xaxis),o=n?"y":"x",l={x:"y",y:"x"}[o],s=r[o+"calendar"],u=r.cumulative,f,c=Jw(e,r,i,o),v=c[0],d=c[1],p=typeof v.size=="string",y=[],m=p?y:v,x=[],w=[],_=[],b=0,T=r.histnorm,k=r.histfunc,M=T.indexOf("density")!==-1,q,E,D;u.enabled&&M&&(T=T.replace(/ ?density$/,""),M=!1);var P=k==="max"||k==="min",R=P?null:0,z=sY.count,O=H_e[T],B=!1,Y=function(W){return i.r2c(W,0,s)},V;for(vn.isArrayOrTypedArray(r[l])&&k!=="count"&&(V=r[l],B=k==="avg",z=sY[k]),f=Y(v.start),E=Y(v.end)+(f-Ri.tickIncrement(f,v.size,!1,s))/1e6;f=0&&D=he;f--)if(a[f]){oe=f;break}for(f=he;f<=oe;f++)if(Xw(t[f])&&Xw(a[f])){var ce={p:t[f],s:a[f],b:0};u.enabled||(ce.pts=_[f],Z?ce.ph0=ce.ph1=_[f].length?d[_[f][0]]:t[f]:(r._computePh=!0,ce.ph0=K(y[f]),ce.ph1=K(y[f+1],!0))),le.push(ce)}return le.length===1&&(le[0].width1=Ri.tickIncrement(le[0].p,v.size,!1,s)-le[0].p),oY(r,"marker")&&lY(e,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),oY(r,"marker.line")&&lY(e,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}),B_e(le,r),vn.isArrayOrTypedArray(r.selectedpoints)&&vn.tagSelected(le,r,ie),le}function Jw(e,r,t,a,n){var i=a+"bins",o=e._fullLayout,l=r["_"+a+"bingroup"],s=o._histogramBinOpts[l],u=o.barmode==="overlay",f,c,v,d,p,y,m,x=function(ue){return t.r2c(ue,0,d)},w=function(ue){return t.c2r(ue,0,d)},_=t.type==="date"?function(ue){return ue||ue===0?vn.cleanDate(ue,null,d):null}:function(ue){return Xw(ue)?Number(ue):null};function b(ue,K,_e){K[ue+"Found"]?(K[ue]=_(K[ue]),K[ue]===null&&(K[ue]=_e[ue])):(y[ue]=K[ue]=_e[ue],vn.nestedProperty(c[0],i+"."+ue).set(_e[ue]))}if(r["_"+a+"autoBinFinished"])delete r["_"+a+"autoBinFinished"];else{c=s.traces;var T=[],k=!0,M=!1,q=!1;for(f=0;ft.r2l(V)&&(G=Ri.tickIncrement(G,s.size,!0,d)),z.start=t.l2r(G),Y||vn.nestedProperty(r,i+".start").set(z.start)}var X=s.end,Z=t.r2l(R.end),ee=Z!==void 0;if((s.endFound||ee)&&Z!==t.r2l(X)){var fe=ee?Z:vn.aggNums(Math.max,null,p);z.end=t.l2r(fe),ee||vn.nestedProperty(r,i+".start").set(z.end)}var ie="autobin"+a;return r._input[ie]===!1&&(r._input[i]=vn.extendFlat({},r[i]||{}),delete r._input[ie],delete r[ie]),[z,p]}function Y_e(e,r,t,a,n){var i=e._fullLayout,o=W_e(e,r),l=!1,s=1/0,u=[r],f,c,v;for(f=0;f=0;a--)l(a);else if(r==="increasing"){for(a=1;a=0;a--)e[a]+=e[a+1];t==="exclude"&&(e.push(0),e.shift())}}uY.exports={calc:V_e,calcAllAutoBins:Jw}});var mY=N((Bze,yY)=>{"use strict";var fY=Le(),Zc=zr(),cY=Yw(),Z_e=Ww(),X_e=jw(),J_e=Zw(),vY=$w().calcAllAutoBins;yY.exports=function(r,t){var a=Zc.getFromId(r,t.xaxis),n=Zc.getFromId(r,t.yaxis),i=t.xcalendar,o=t.ycalendar,l=function(Te){return a.r2c(Te,0,i)},s=function(Te){return n.r2c(Te,0,o)},u=function(Te){return a.c2r(Te,0,i)},f=function(Te){return n.c2r(Te,0,o)},c,v,d,p,y=vY(r,t,a,"x"),m=y[0],x=y[1],w=vY(r,t,n,"y"),_=w[0],b=w[1],T=t._length;x.length>T&&x.splice(T,x.length-T),b.length>T&&b.splice(T,b.length-T);var k=[],M=[],q=[],E=typeof m.size=="string",D=typeof _.size=="string",P=[],R=[],z=E?P:m,O=D?R:_,B=0,Y=[],V=[],H=t.histnorm,G=t.histfunc,X=H.indexOf("density")!==-1,Z=G==="max"||G==="min",ee=Z?null:0,fe=cY.count,ie=Z_e[H],ue=!1,K=[],_e=[],le="z"in t?t.z:"marker"in t&&Array.isArray(t.marker.color)?t.marker.color:"";le&&G!=="count"&&(ue=G==="avg",fe=cY[G]);var he=m.size,oe=l(m.start),ce=l(m.end)+(oe-Zc.tickIncrement(oe,he,!1,i))/1e6;for(c=oe;c=0&&d=0&&p{"use strict";var Uo=Le(),gY=It().BADNUM,bY=_c();xY.exports=function(r,t,a,n,i,o){var l=r._length,s=t.makeCalcdata(r,n),u=a.makeCalcdata(r,i);s=bY(r,t,n,s).vals,u=bY(r,a,i,u).vals;var f=r.text,c=f!==void 0&&Uo.isArray1D(f),v=r.hovertext,d=v!==void 0&&Uo.isArray1D(v),p,y,m=Uo.distinctVals(s),x=m.vals,w=Uo.distinctVals(u),_=w.vals,b=[],T,k,M=_.length,q=x.length;for(p=0;p{"use strict";var $_e=Rr(),K_e=Le(),dg=It().BADNUM;wY.exports=function(r,t,a,n){var i,o,l,s,u,f;function c(x){if($_e(x))return+x}if(t&&t.transpose){for(i=0,u=0;u{"use strict";var Q_e=Le(),AY=.01,e4e=[[-1,0],[1,0],[0,-1],[0,1]];function r4e(e){return .5-.25*Math.min(1,e*.5)}kY.exports=function(r,t){var a=1,n;for(MY(r,t),n=0;nAY;n++)a=MY(r,t,r4e(a));return a>AY&&Q_e.log("interp2d didn't converge quickly",a),r};function MY(e,r,t){var a=0,n,i,o,l,s,u,f,c,v,d,p,y,m;for(l=0;ly&&(a=Math.max(a,Math.abs(e[i][o]-p)/(m-y))))}return a}});var LY=N((Vze,qY)=>{"use strict";var t4e=Le().maxRowLength;qY.exports=function(r){var t=[],a={},n=[],i=r[0],o=[],l=[0,0,0],s=t4e(r),u,f,c,v,d,p,y,m;for(f=0;f=0;d--)v=n[d],f=v[0],c=v[1],p=((a[[f-1,c]]||l)[2]+(a[[f+1,c]]||l)[2]+(a[[f,c-1]]||l)[2]+(a[[f,c+1]]||l)[2])/20,p&&(y[v]=[f,c,p],n.splice(d,1),m=!0);if(!m)throw"findEmpties iterated with no new neighbors";for(v in y)a[v]=y[v],t.push(y[v])}return t.sort(function(x,w){return w[2]-x[2]})}});var RY=N((Yze,DY)=>{"use strict";var CY=br(),EY=Le().isArrayOrTypedArray;DY.exports=function(r,t,a,n,i,o){var l=[],s=CY.traceIs(r,"contour"),u=CY.traceIs(r,"histogram"),f,c,v,d=EY(t)&&t.length>1;if(d&&!u&&o.type!=="category"){var p=t.length;if(p<=i){if(s)l=Array.from(t).slice(0,i);else if(i===1)o.type==="log"?l=[.5*t[0],2*t[0]]:l=[t[0]-.5,t[0]+.5];else if(o.type==="log"){for(l=[Math.pow(t[0],1.5)/Math.pow(t[1],.5)],v=1;v{"use strict";var PY=br(),Kw=Le(),pg=zr(),FY=_c(),a4e=mY(),n4e=Yf(),i4e=_Y(),o4e=TY(),l4e=SY(),s4e=LY(),yg=RY(),Qw=It().BADNUM;zY.exports=function(r,t){var a=pg.getFromId(r,t.xaxis||"x"),n=pg.getFromId(r,t.yaxis||"y"),i=PY.traceIs(t,"contour"),o=PY.traceIs(t,"histogram"),l=i?"best":t.zsmooth,s,u,f,c,v,d,p,y,m,x,w;if(a._minDtick=0,n._minDtick=0,o)w=a4e(r,t),c=w.orig_x,s=w.x,u=w.x0,f=w.dx,y=w.orig_y,v=w.y,d=w.y0,p=w.dy,m=w.z;else{var _=t.z;Kw.isArray1D(_)?(i4e(t,a,n,"x","y",["z"]),s=t._x,v=t._y,_=t._z):(c=t.x?a.makeCalcdata(t,"x"):[],y=t.y?n.makeCalcdata(t,"y"):[],s=FY(t,a,"x",c).vals,v=FY(t,n,"y",y).vals,t._x=s,t._y=v),u=t.x0,f=t.dx,d=t.y0,p=t.dy,m=o4e(_,t,a,n)}(a.rangebreaks||n.rangebreaks)&&(m=u4e(s,v,m),o||(s=NY(s),v=NY(v),t._x=s,t._y=v)),!o&&(i||t.connectgaps)&&(t._emptypoints=s4e(m),l4e(m,t._emptypoints));function b(z){l=t._input.zsmooth=t.zsmooth=!1,Kw.warn('cannot use zsmooth: "fast": '+z)}function T(z){if(z.length>1){var O=(z[z.length-1]-z[0])/(z.length-1),B=Math.abs(O/100);for(x=0;xB)return!1}return!0}t._islinear=!1,a.type==="log"||n.type==="log"?l==="fast"&&b("log axis found"):T(s)?T(v)?t._islinear=!0:l==="fast"&&b("y scale is not linear"):l==="fast"&&b("x scale is not linear");var k=Kw.maxRowLength(m),M=t.xtype==="scaled"?"":s,q=yg(t,M,u,f,k,a),E=t.ytype==="scaled"?"":v,D=yg(t,E,d,p,m.length,n);t._extremes[a._id]=pg.findExtremes(a,q),t._extremes[n._id]=pg.findExtremes(n,D);var P={x:q,y:D,z:m,text:t._text||t.text,hovertext:t._hovertext||t.hovertext};if(t.xperiodalignment&&c&&(P.orig_x=c),t.yperiodalignment&&y&&(P.orig_y=y),M&&M.length===q.length-1&&(P.xCenter=M),E&&E.length===D.length-1&&(P.yCenter=E),o&&(P.xRanges=w.xRanges,P.yRanges=w.yRanges,P.pts=w.pts),i||n4e(r,t,{vals:m,cLetter:"z"}),i&&t.contours&&t.contours.coloring==="heatmap"){var R={type:t.type==="contour"?"heatmap":"histogram2d",xcalendar:t.xcalendar,ycalendar:t.ycalendar};P.xfill=yg(R,M,u,f,k,a),P.yfill=yg(R,E,d,p,m.length,n)}return[P]};function NY(e){for(var r=[],t=e.length,a=0;a{"use strict";gg.CSS_DECLARATIONS=[["image-rendering","optimizeSpeed"],["image-rendering","-moz-crisp-edges"],["image-rendering","-o-crisp-edges"],["image-rendering","-webkit-optimize-contrast"],["image-rendering","optimize-contrast"],["image-rendering","crisp-edges"],["image-rendering","pixelated"]];gg.STYLE=gg.CSS_DECLARATIONS.map(function(e){return e.join(": ")+"; "}).join("")});var r6=N((Zze,OY)=>{"use strict";var IY=bg(),f4e=Wr(),e6=Le(),Xc=null;function c4e(){if(Xc!==null)return Xc;Xc=!1;var e=e6.isSafari()||e6.isMacWKWebView()||e6.isIOS();if(window.navigator.userAgent&&!e){var r=Array.from(IY.CSS_DECLARATIONS).reverse(),t=window.CSS&&window.CSS.supports||window.supportsCSS;if(typeof t=="function")Xc=r.some(function(o){return t.apply(null,o)});else{var a=f4e.tester.append("image").attr("style",IY.STYLE),n=window.getComputedStyle(a.node()),i=n.imageRendering;Xc=r.some(function(o){var l=o[1];return i===l||i===l.toLowerCase()}),a.remove()}}return Xc}OY.exports=c4e});var xg=N((Xze,ZY)=>{"use strict";var BY=Sr(),v4e=kn(),h4e=br(),d4e=Wr(),p4e=zr(),Pi=Le(),HY=Ea(),y4e=c4(),m4e=Tr(),g4e=So().extractOpts,b4e=So().makeColorScaleFuncFromTrace,x4e=sl(),_4e=ja(),t6=_4e.LINE_SPACING,w4e=r6(),T4e=bg().STYLE,WY="heatmap-label";function jY(e){return e.selectAll("g."+WY)}function UY(e){jY(e).remove()}ZY.exports=function(e,r,t,a){var n=r.xaxis,i=r.yaxis;Pi.makeTraceGroups(a,t,"hm").each(function(o){var l=BY.select(this),s=o[0],u=s.trace,f=u.xgap||0,c=u.ygap||0,v=s.z,d=s.x,p=s.y,y=s.xCenter,m=s.yCenter,x=h4e.traceIs(u,"contour"),w=x?"best":u.zsmooth,_=v.length,b=Pi.maxRowLength(v),T=!1,k=!1,M,q,E,D,P,R,z,O;for(R=0;M===void 0&&R0;)q=n.c2p(d[R]),R--;for(q0;)P=i.c2p(p[R]),R--;P=n._length||q<=0||D>=i._length||P<=0;if(G){var X=l.selectAll("image").data([]);X.exit().remove(),UY(l);return}var Z,ee;B==="fast"?(Z=b,ee=_):(Z=V,ee=H);var fe=document.createElement("canvas");fe.width=Z,fe.height=ee;var ie=fe.getContext("2d",{willReadFrequently:!0}),ue=b4e(u,{noNumericCheck:!0,returnArray:!0}),K,_e;B==="fast"?(K=T?function(ct){return b-1-ct}:Pi.identity,_e=k?function(ct){return _-1-ct}:Pi.identity):(K=function(ct){return Pi.constrain(Math.round(n.c2p(d[ct])-M),0,V)},_e=function(ct){return Pi.constrain(Math.round(i.c2p(p[ct])-D),0,H)});var le=_e(0),he=[le,le],oe=T?0:1,ce=k?0:1,W=0,Q=0,j=0,pe=0,me,ye,Pe,Ne,Ee;function Ie(ct,Tn){if(ct!==void 0){var zt=ue(ct);return zt[0]=Math.round(zt[0]),zt[1]=Math.round(zt[1]),zt[2]=Math.round(zt[2]),W+=Tn,Q+=zt[0]*Tn,j+=zt[1]*Tn,pe+=zt[2]*Tn,zt}return[0,0,0,0]}function Ue(ct,Tn,zt,zs){var yn=ct[zt.bin0];if(yn===void 0)return Ie(void 0,1);var Vi=ct[zt.bin1],jt=Tn[zt.bin0],Yi=Tn[zt.bin1],Rl=Vi-yn||0,Pl=jt-yn||0,mr;return Vi===void 0?Yi===void 0?mr=0:jt===void 0?mr=2*(Yi-yn):mr=(2*Yi-jt-yn)*2/3:Yi===void 0?jt===void 0?mr=0:mr=(2*yn-Vi-jt)*2/3:jt===void 0?mr=(2*Yi-Vi-yn)*2/3:mr=Yi+yn-Vi-jt,Ie(yn+zt.frac*Rl+zs.frac*(Pl+zt.frac*mr))}if(B!=="default"){var Be=0,Ce;try{Ce=new Uint8Array(Z*ee*4)}catch(ct){Ce=new Array(Z*ee*4)}if(B==="smooth"){var Oe=y||d,He=m||p,se=new Array(Oe.length),Ae=new Array(He.length),Xe=new Array(V),hr=y?VY:GY,Fe=m?VY:GY,Te,qe,Ge;for(R=0;Rqt||qt>i._length))for(z=kr;zFt||Ft>n._length)){var Tt=y4e({x:ft,y:et},u,e._fullLayout);Tt.x=ft,Tt.y=et;var da=s.z[R][z];da===void 0?(Tt.z="",Tt.zLabel=""):(Tt.z=da,Tt.zLabel=p4e.tickText(De,da,"hover").text);var $t=s.text&&s.text[R]&&s.text[R][z];($t===void 0||$t===!1)&&($t=""),Tt.text=$t;var oa=Pi.texttemplateString({data:[Tt,u._meta],fallback:u.texttemplatefallback,labels:Tt,locale:e._fullLayout._d3locale,template:ne});if(oa){var dr=oa.split("
"),yt=dr.length,Zr=0;for(O=0;O{"use strict";XY.exports={min:"zmin",max:"zmax"}});var _g=N(($ze,JY)=>{"use strict";var A4e=Sr();JY.exports=function(r){A4e.select(r).selectAll(".hm image").style("opacity",function(t){return t.trace.opacity})}});var Tg=N((Kze,KY)=>{"use strict";var $Y=Pn(),F0=Le(),wg=F0.isArrayOrTypedArray,M4e=zr(),k4e=So().extractOpts;KY.exports=function(r,t,a,n,i){i||(i={});var o=i.isContour,l=r.cd[0],s=l.trace,u=r.xa,f=r.ya,c=l.x,v=l.y,d=l.z,p=l.xCenter,y=l.yCenter,m=l.zmask,x=s.zhoverformat,w=c,_=v,b,T,k,M;if(r.index!==!1){try{k=Math.round(r.index[1]),M=Math.round(r.index[0])}catch(X){F0.error("Error hovering on heatmap, pointNumber must be [row,col], found:",r.index);return}if(k<0||k>=d[0].length||M<0||M>d.length)return}else{if($Y.inbox(t-c[0],t-c[c.length-1],0)>0||$Y.inbox(a-v[0],a-v[v.length-1],0)>0)return;if(o){var q;for(w=[2*c[0]-c[1]],q=1;q{"use strict";QY.exports={attributes:R0(),supplyDefaults:jV(),calc:mg(),plot:xg(),colorbar:a6(),style:_g(),hoverPoints:Tg(),moduleType:"trace",name:"heatmap",basePlotModule:Li(),categories:["cartesian","svg","2dMap","showLegend"],meta:{}}});var tW=N((eIe,rW)=>{"use strict";rW.exports=eW()});var n6=N((rIe,aW)=>{"use strict";aW.exports=function(r,t){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}});var iW=N((tIe,nW)=>{"use strict";nW.exports={eventDataKeys:["binNumber"]}});var Ag=N((aIe,uW)=>{"use strict";var Bn=zu(),oW=ro().axisHoverFormat,{hovertemplateAttrs:S4e,texttemplateAttrs:q4e,templatefallbackAttrs:lW}=Yn(),i6=ma(),sW=n6(),L4e=iW(),o6=bt().extendFlat;uW.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:oW("x"),yhoverformat:oW("y"),text:o6({},Bn.text,{}),hovertext:o6({},Bn.hovertext,{}),orientation:Bn.orientation,histfunc:{valType:"enumerated",values:["count","sum","avg","min","max"],dflt:"count",editType:"calc"},histnorm:{valType:"enumerated",values:["","percent","probability","density","probability density"],dflt:"",editType:"calc"},cumulative:{enabled:{valType:"boolean",dflt:!1,editType:"calc"},direction:{valType:"enumerated",values:["increasing","decreasing"],dflt:"increasing",editType:"calc"},currentbin:{valType:"enumerated",values:["include","exclude","half"],dflt:"include",editType:"calc"},editType:"calc"},nbinsx:{valType:"integer",min:0,dflt:0,editType:"calc"},xbins:sW("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:sW("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:S4e({},{keys:L4e.eventDataKeys}),hovertemplatefallback:lW(),texttemplate:q4e({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),texttemplatefallback:lW({editType:"plot"}),textposition:o6({},Bn.textposition,{arrayOk:!1}),textfont:i6({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:i6({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:i6({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:Bn.insidetextanchor,textangle:Bn.textangle,cliponaxis:Bn.cliponaxis,constraintext:Bn.constraintext,marker:Bn.marker,offsetgroup:Bn.offsetgroup,alignmentgroup:Bn.alignmentgroup,selected:Bn.selected,unselected:Bn.unselected,zorder:Bn.zorder}});var hW=N((nIe,vW)=>{"use strict";var fW=br(),N0=Le(),cW=Tr(),C4e=Iu().handleText,E4e=bw(),D4e=Ag();vW.exports=function(r,t,a,n){function i(w,_){return N0.coerce(r,t,D4e,w,_)}var o=i("x"),l=i("y"),s=i("cumulative.enabled");s&&(i("cumulative.direction"),i("cumulative.currentbin")),i("text");var u=i("textposition");C4e(r,t,n,i,u,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),i("xhoverformat"),i("yhoverformat");var f=i("orientation",l&&!o?"h":"v"),c=f==="v"?"x":"y",v=f==="v"?"y":"x",d=o&&l?Math.min(N0.minRowLength(o)&&N0.minRowLength(l)):N0.minRowLength(t[c]||[]);if(!d){t.visible=!1;return}t._length=d;var p=fW.getComponentMethod("calendars","handleTraceDefaults");p(r,t,["x","y"],n);var y=t[v];y&&i("histfunc"),i("histnorm"),i("autobin"+c),E4e(r,t,i,a,n),N0.coerceSelectionMarkerOpacity(t,i);var m=(t.marker.line||{}).color,x=fW.getComponentMethod("errorbars","supplyDefaults");x(r,t,m||cW.defaultLine,{axis:"y"}),x(r,t,m||cW.defaultLine,{axis:"x",inherit:"y"}),i("zorder")}});var kg=N((iIe,yW)=>{"use strict";var z0=Le(),R4e=la(),Mg=br().traceIs,P4e=l0(),F4e=Iu().validateCornerradius,dW=z0.nestedProperty,l6=Au().getAxisGroup,pW=[{aStr:{x:"xbins.start",y:"ybins.start"},name:"start"},{aStr:{x:"xbins.end",y:"ybins.end"},name:"end"},{aStr:{x:"xbins.size",y:"ybins.size"},name:"size"},{aStr:{x:"nbinsx",y:"nbinsy"},name:"nbins"}],N4e=["x","y"];yW.exports=function(r,t){var a=t._histogramBinOpts={},n=[],i={},o=[],l,s,u,f,c,v,d;function p(B,Y){return z0.coerce(l._input,l,l._module.attributes,B,Y)}function y(B){return B.orientation==="v"?"x":"y"}function m(B,Y){var V=R4e.getFromTrace({_fullLayout:t},B,Y);return V.type}function x(B,Y,V){var H=B.uid+"__"+V;Y||(Y=H);var G=m(B,V),X=B[V+"calendar"]||"",Z=a[Y],ee=!0;Z&&(G===Z.axType&&X===Z.calendar?(ee=!1,Z.traces.push(B),Z.dirs.push(V)):(Y=H,G!==Z.axType&&z0.warn(["Attempted to group the bins of trace",B.index,"set on a","type:"+G,"axis","with bins on","type:"+Z.axType,"axis."].join(" ")),X!==Z.calendar&&z0.warn(["Attempted to group the bins of trace",B.index,"set with a",X,"calendar","with bins",Z.calendar?"on a "+Z.calendar+" calendar":"w/o a set calendar"].join(" ")))),ee&&(a[Y]={traces:[B],dirs:[V],axType:G,calendar:B[V+"calendar"]||""}),B["_"+V+"bingroup"]=Y}for(c=0;c{"use strict";var z4e=Sw().hoverPoints,I4e=zr().hoverLabelText;mW.exports=function(r,t,a,n,i){var o=z4e(r,t,a,n,i);if(o){r=o[0];var l=r.cd[r.index],s=r.cd[0].trace;if(!s.cumulative.enabled){var u=s.orientation==="h"?"y":"x";r[u+"Label"]=I4e(r[u+"a"],[l.ph0,l.ph1],s[u+"hoverformat"])}return o}}});var s6=N((lIe,bW)=>{"use strict";bW.exports=function(r,t,a,n,i){if(r.x="xVal"in t?t.xVal:t.x,r.y="yVal"in t?t.yVal:t.y,"zLabelVal"in t&&(r.z=t.zLabelVal),t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),!(a.cumulative||{}).enabled){var o=Array.isArray(i)?n[0].pts[i[0]][i[1]]:n[i].pts;r.pointNumbers=o,r.binNumber=r.pointNumber,delete r.pointNumber,delete r.pointIndex;var l;if(a._indexToPoints){l=[];for(var s=0;s{"use strict";xW.exports={attributes:Ag(),layoutAttributes:rg(),supplyDefaults:hW(),crossTraceDefaults:kg(),supplyLayoutDefaults:xw(),calc:$w().calc,crossTraceCalc:ym().crossTraceCalc,plot:Mw().plot,layerName:"barlayer",style:Uc().style,styleOnSelect:Uc().styleOnSelect,colorbar:v0(),hoverPoints:gW(),selectPoints:qw(),eventData:s6(),moduleType:"trace",name:"histogram",basePlotModule:Li(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}});var TW=N((uIe,wW)=>{"use strict";wW.exports=_W()});var qg=N((fIe,kW)=>{"use strict";var mo=Ag(),AW=n6(),Sg=R0(),O4e=gn(),u6=ro().axisHoverFormat,{hovertemplateAttrs:B4e,texttemplateAttrs:H4e,templatefallbackAttrs:MW}=Yn(),U4e=ko(),I0=bt().extendFlat;kW.exports=I0({x:mo.x,y:mo.y,z:{valType:"data_array",editType:"calc"},marker:{color:{valType:"data_array",editType:"calc"},editType:"calc"},histnorm:mo.histnorm,histfunc:mo.histfunc,nbinsx:mo.nbinsx,xbins:AW("x"),nbinsy:mo.nbinsy,ybins:AW("y"),autobinx:mo.autobinx,autobiny:mo.autobiny,bingroup:I0({},mo.bingroup,{}),xbingroup:I0({},mo.bingroup,{}),ybingroup:I0({},mo.bingroup,{}),xgap:Sg.xgap,ygap:Sg.ygap,zsmooth:Sg.zsmooth,xhoverformat:u6("x"),yhoverformat:u6("y"),zhoverformat:u6("z",1),hovertemplate:B4e({},{keys:["z"]}),hovertemplatefallback:MW(),texttemplate:H4e({arrayOk:!1,editType:"plot"},{keys:["z"]}),texttemplatefallback:MW({editType:"plot"}),textfont:Sg.textfont,showlegend:I0({},O4e.showlegend,{dflt:!1})},U4e("",{cLetter:"z",autoColorDflt:!1}))});var f6=N((cIe,qW)=>{"use strict";var G4e=br(),SW=Le();qW.exports=function(r,t,a,n){var i=a("x"),o=a("y"),l=SW.minRowLength(i),s=SW.minRowLength(o);if(!l||!s){t.visible=!1;return}t._length=Math.min(l,s);var u=G4e.getComponentMethod("calendars","handleTraceDefaults");u(r,t,["x","y"],n);var f=a("z")||a("marker.color");f&&a("histfunc"),a("histnorm"),a("autobinx"),a("autobiny")}});var CW=N((vIe,LW)=>{"use strict";var V4e=Le(),Y4e=f6(),W4e=Vw(),j4e=fl(),Z4e=P0(),X4e=qg();LW.exports=function(r,t,a,n){function i(o,l){return V4e.coerce(r,t,X4e,o,l)}Y4e(r,t,i,n),t.visible!==!1&&(W4e(r,t,i,n),j4e(r,t,n,i,{prefix:"",cLetter:"z"}),i("hovertemplate"),i("hovertemplatefallback"),Z4e(i,n),i("xhoverformat"),i("yhoverformat"))}});var RW=N((hIe,DW)=>{"use strict";var J4e=Tg(),EW=zr().hoverLabelText;DW.exports=function(r,t,a,n,i){var o=J4e(r,t,a,n,i);if(o){r=o[0];var l=r.index,s=l[0],u=l[1],f=r.cd[0],c=f.trace,v=f.xRanges[u],d=f.yRanges[s];return r.xLabel=EW(r.xa,[v[0],v[1]],c.xhoverformat),r.yLabel=EW(r.ya,[d[0],d[1]],c.yhoverformat),o}}});var FW=N((dIe,PW)=>{"use strict";PW.exports={attributes:qg(),supplyDefaults:CW(),crossTraceDefaults:kg(),calc:mg(),plot:xg(),layerName:"heatmaplayer",colorbar:a6(),style:_g(),hoverPoints:RW(),eventData:s6(),moduleType:"trace",name:"histogram2d",basePlotModule:Li(),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{}}});var zW=N((pIe,NW)=>{"use strict";NW.exports=FW()});var Lg=N((yIe,IW)=>{"use strict";IW.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}});var Eg=N((mIe,UW)=>{"use strict";var ia=R0(),Cg=wi(),BW=ro(),c6=BW.axisHoverFormat,$4e=BW.descriptionOnlyNumbers,K4e=ko(),Q4e=ui().dash,ewe=ma(),Jc=bt().extendFlat,HW=Lg(),rwe=HW.COMPARISON_OPS2,twe=HW.INTERVAL_OPS,OW=Cg.line;UW.exports=Jc({z:ia.z,x:ia.x,x0:ia.x0,dx:ia.dx,y:ia.y,y0:ia.y0,dy:ia.dy,xperiod:ia.xperiod,yperiod:ia.yperiod,xperiod0:Cg.xperiod0,yperiod0:Cg.yperiod0,xperiodalignment:ia.xperiodalignment,yperiodalignment:ia.yperiodalignment,text:ia.text,hovertext:ia.hovertext,transpose:ia.transpose,xtype:ia.xtype,ytype:ia.ytype,xhoverformat:c6("x"),yhoverformat:c6("y"),zhoverformat:c6("z",1),hovertemplate:ia.hovertemplate,hovertemplatefallback:ia.hovertemplatefallback,texttemplate:Jc({},ia.texttemplate,{}),texttemplatefallback:ia.texttemplatefallback,textfont:Jc({},ia.textfont,{}),hoverongaps:ia.hoverongaps,connectgaps:Jc({},ia.connectgaps,{}),fillcolor:{valType:"color",editType:"calc"},autocontour:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"contours.start":void 0,"contours.end":void 0,"contours.size":void 0}},ncontours:{valType:"integer",dflt:15,min:1,editType:"calc"},contours:{type:{valType:"enumerated",values:["levels","constraint"],dflt:"levels",editType:"calc"},start:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},end:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},size:{valType:"number",dflt:null,min:0,editType:"plot",impliedEdits:{"^autocontour":!1}},coloring:{valType:"enumerated",values:["fill","heatmap","lines","none"],dflt:"fill",editType:"calc"},showlines:{valType:"boolean",dflt:!0,editType:"plot"},showlabels:{valType:"boolean",dflt:!1,editType:"plot"},labelfont:ewe({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:$4e("contour label")},operation:{valType:"enumerated",values:[].concat(rwe).concat(twe),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:Jc({},OW.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:Q4e,smoothing:Jc({},OW.smoothing,{}),editType:"plot"},zorder:Cg.zorder},K4e("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))});var h6=N((gIe,VW)=>{"use strict";var $a=qg(),Go=Eg(),awe=ko(),v6=ro().axisHoverFormat,GW=bt().extendFlat;VW.exports=GW({x:$a.x,y:$a.y,z:$a.z,marker:$a.marker,histnorm:$a.histnorm,histfunc:$a.histfunc,nbinsx:$a.nbinsx,xbins:$a.xbins,nbinsy:$a.nbinsy,ybins:$a.ybins,autobinx:$a.autobinx,autobiny:$a.autobiny,bingroup:$a.bingroup,xbingroup:$a.xbingroup,ybingroup:$a.ybingroup,autocontour:Go.autocontour,ncontours:Go.ncontours,contours:Go.contours,line:{color:Go.line.color,width:GW({},Go.line.width,{dflt:.5}),dash:Go.line.dash,smoothing:Go.line.smoothing,editType:"plot"},xhoverformat:v6("x"),yhoverformat:v6("y"),zhoverformat:v6("z",1),hovertemplate:$a.hovertemplate,hovertemplatefallback:$a.hovertemplatefallback,texttemplate:Go.texttemplate,texttemplatefallback:Go.texttemplatefallback,textfont:Go.textfont},awe("",{cLetter:"z",editTypeOverride:"calc"}))});var d6=N((bIe,YW)=>{"use strict";YW.exports=function(r,t,a,n){var i=n("contours.start"),o=n("contours.end"),l=i===!1||o===!1,s=a("contours.size"),u;l?u=t.autocontour=!0:u=a("autocontour",!1),(u||!s)&&a("ncontours")}});var p6=N((xIe,WW)=>{"use strict";var nwe=Le();WW.exports=function(r,t,a,n){n||(n={});var i=r("contours.showlabels");if(i){var o=t.font;nwe.coerceFont(r,"contours.labelfont",o,{overrideDflt:{color:a}}),r("contours.labelformat")}n.hasHover!==!1&&r("zhoverformat")}});var y6=N((_Ie,jW)=>{"use strict";var iwe=fl(),owe=p6();jW.exports=function(r,t,a,n,i){var o=a("contours.coloring"),l,s="";o==="fill"&&(l=a("contours.showlines")),l!==!1&&(o!=="lines"&&(s=a("line.color","#000")),a("line.width",.5),a("line.dash")),o!=="none"&&(r.showlegend!==!0&&(t.showlegend=!1),t._dfltShowLegend=!1,iwe(r,t,n,a,{prefix:"",cLetter:"z"})),a("line.smoothing"),owe(a,n,s,i)}});var $W=N((wIe,JW)=>{"use strict";var ZW=Le(),lwe=f6(),swe=d6(),uwe=y6(),fwe=P0(),XW=h6();JW.exports=function(r,t,a,n){function i(l,s){return ZW.coerce(r,t,XW,l,s)}function o(l){return ZW.coerce2(r,t,XW,l)}lwe(r,t,i,n),t.visible!==!1&&(swe(r,t,i,o),uwe(r,t,i,n),i("xhoverformat"),i("yhoverformat"),i("hovertemplate"),i("hovertemplatefallback"),t.contours&&t.contours.coloring==="heatmap"&&fwe(i,n))}});var ej=N((TIe,QW)=>{"use strict";var g6=zr(),m6=Le();QW.exports=function(r,t){var a=r.contours;if(r.autocontour){var n=r.zmin,i=r.zmax;(r.zauto||n===void 0)&&(n=m6.aggNums(Math.min,null,t)),(r.zauto||i===void 0)&&(i=m6.aggNums(Math.max,null,t));var o=KW(n,i,r.ncontours);a.size=o.dtick,a.start=g6.tickFirst(o),o.range.reverse(),a.end=g6.tickFirst(o),a.start===n&&(a.start+=a.size),a.end===i&&(a.end-=a.size),a.start>a.end&&(a.start=a.end=(a.start+a.end)/2),r._input.contours||(r._input.contours={}),m6.extendFlat(r._input.contours,{start:a.start,end:a.end,size:a.size}),r._input.autocontour=!0}else if(a.type!=="constraint"){var l=a.start,s=a.end,u=r._input.contours;if(l>s&&(a.start=u.start=s,s=a.end=u.end=l,l=a.start),!(a.size>0)){var f;l===s?f=1:f=KW(l,s,r.ncontours).dtick,u.size=a.size=f}}};function KW(e,r,t){var a={type:"linear",range:[e,r]};return g6.autoTicks(a,(r-e)/(t||15)),a}});var O0=N((AIe,rj)=>{"use strict";rj.exports=function(r){return r.end+r.size/1e6}});var b6=N((MIe,aj)=>{"use strict";var tj=So(),cwe=mg(),vwe=ej(),hwe=O0();aj.exports=function(r,t){var a=cwe(r,t),n=a[0].z;vwe(t,n);var i=t.contours,o=tj.extractOpts(t),l;if(i.coloring==="heatmap"&&o.auto&&t.autocontour===!1){var s=i.start,u=hwe(i),f=i.size||1,c=Math.floor((u-s)/f)+1;isFinite(f)||(f=1,c=1);var v=s-f/2,d=v+c*f;l=[v,d]}else l=n;return tj.calc(r,t,{vals:l,cLetter:"z"}),a}});var Dg=N((kIe,nj)=>{"use strict";nj.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}});var oj=N((SIe,ij)=>{"use strict";var Rg=Dg();ij.exports=function(r){var t=r[0].z,a=t.length,n=t[0].length,i=a===2||n===2,o,l,s,u,f,c,v,d,p;for(l=0;le?0:1)+(r[0][1]>e?0:2)+(r[1][1]>e?0:4)+(r[1][0]>e?0:8);if(t===5||t===10){var a=(r[0][0]+r[0][1]+r[1][0]+r[1][1])/4;return e>a?t===5?713:1114:t===5?104:208}return t===15?0:t}});var fj=N((qIe,uj)=>{"use strict";var Pg=Le(),$c=Dg();uj.exports=function(r,t,a){var n,i,o,l,s;for(t=t||.01,a=a||.01,o=0;o20?(o=$c.CHOOSESADDLE[o][(l[0]||l[1])<0?0:1],e.crossings[i]=$c.SADDLEREMAINDER[o]):delete e.crossings[i],l=$c.NEWDELTA[o],!l){Pg.log("Found bad marching index:",o,r,e.level);break}s.push(sj(e,r,l)),r[0]+=l[0],r[1]+=l[1],i=r.join(","),B0(s[s.length-1],s[s.length-2],a,n)&&s.pop();var p=l[0]&&(r[0]<0||r[0]>f-2)||l[1]&&(r[1]<0||r[1]>u-2),y=r[0]===c[0]&&r[1]===c[1]&&l[0]===v[0]&&l[1]===v[1];if(y||t&&p)break;o=e.crossings[i]}d===1e4&&Pg.log("Infinite loop in contour?");var m=B0(s[0],s[s.length-1],a,n),x=0,w=.2*e.smoothing,_=[],b=0,T,k,M,q,E,D,P,R,z,O,B;for(d=1;d=b;d--)if(T=_[d],T=b&&T+_[k]R&&z--,e.edgepaths[z]=B.concat(s,O));break}G||(e.edgepaths[R]=s.concat(O))}for(R=0;R20&&r?e===208||e===1114?a=t[0]===0?1:-1:n=t[1]===0?1:-1:$c.BOTTOMSTART.indexOf(e)!==-1?n=1:$c.LEFTSTART.indexOf(e)!==-1?a=1:$c.TOPSTART.indexOf(e)!==-1?n=-1:a=-1,[a,n]}function sj(e,r,t){var a=r[0]+Math.max(t[0],0),n=r[1]+Math.max(t[1],0),i=e.z[n][a],o=e.xaxis,l=e.yaxis;if(t[1]){var s=(e.level-i)/(e.z[n][a+1]-i),u=(s!==1?(1-s)*o.c2l(e.x[a]):0)+(s!==0?s*o.c2l(e.x[a+1]):0);return[o.c2p(o.l2c(u),!0),l.c2p(e.y[n],!0),a+s,n]}else{var f=(e.level-i)/(e.z[n+1][a]-i),c=(f!==1?(1-f)*l.c2l(e.y[n]):0)+(f!==0?f*l.c2l(e.y[n+1]):0);return[o.c2p(e.x[a],!0),l.c2p(l.l2c(c),!0),a,n+f]}}});var dj=N((LIe,hj)=>{"use strict";var x6=Lg(),mwe=Rr();hj.exports={"[]":cj("[]"),"][":cj("]["),">":_6(">"),"<":_6("<"),"=":_6("=")};function vj(e,r){var t=Array.isArray(r),a;function n(i){return mwe(i)?+i:null}return x6.COMPARISON_OPS2.indexOf(e)!==-1?a=n(t?r[0]:r):x6.INTERVAL_OPS.indexOf(e)!==-1?a=t?[n(r[0]),n(r[1])]:[n(r),n(r)]:x6.SET_OPS.indexOf(e)!==-1&&(a=t?r.map(n):[n(r)]),a}function cj(e){return function(r){r=vj(e,r);var t=Math.min(r[0],r[1]),a=Math.max(r[0],r[1]);return{start:t,end:a,size:a-t}}}function _6(e){return function(r){return r=vj(e,r),{start:r,end:1/0,size:1/0}}}});var mj=N((CIe,yj)=>{"use strict";var pj=Le(),gwe=dj(),bwe=O0();yj.exports=function(r,t,a){for(var n=r.type==="constraint"?gwe[r._operation](r.value):r,i=n.size,o=[],l=bwe(n),s=a.trace._carpetTrace,u=s?{xaxis:s.aaxis,yaxis:s.baxis,x:a.a,y:a.b}:{xaxis:t.xaxis,yaxis:t.yaxis,x:a.x,y:a.y},f=n.start;f1e3){pj.warn("Too many contours, clipping at 1000",r);break}return o}});var xj=N((EIe,bj)=>{"use strict";var Kc=Le();bj.exports=function(e,r){var t,a,n,i=function(s){return s.reverse()},o=function(s){return s};switch(r){case"=":case"<":return e;case">":for(e.length!==1&&Kc.warn("Contour data invalid for the specified inequality operation."),a=e[0],t=0;t{"use strict";_j.exports=function(e,r){var t=e[0],a=t.z,n;switch(r.type){case"levels":var i=Math.min(a[0][0],a[0][1]);for(n=0;no.level||o.starts.length&&i===o.level)}break;case"constraint":if(t.prefixBoundary=!1,t.edgepaths.length)return;var l=t.x.length,s=t.y.length,u=-1/0,f=1/0;for(n=0;n":c>u&&(t.prefixBoundary=!0);break;case"<":(cu||t.starts.length&&d===f)&&(t.prefixBoundary=!0);break;case"][":v=Math.min(c[0],c[1]),d=Math.max(c[0],c[1]),vu&&(t.prefixBoundary=!0);break}break}}});var w6=N(hn=>{"use strict";var U0=Sr(),Pa=Le(),Al=Wr(),xwe=So(),Mj=Ea(),Tj=zr(),Aj=Kf(),_we=xg(),kj=oj(),Sj=fj(),wwe=mj(),Twe=xj(),qj=wj(),H0=Dg(),Vo=H0.LABELOPTIMIZER;hn.plot=function(r,t,a,n){var i=t.xaxis,o=t.yaxis;Pa.makeTraceGroups(n,a,"contour").each(function(l){var s=U0.select(this),u=l[0],f=u.trace,c=u.x,v=u.y,d=f.contours,p=wwe(d,t,u),y=Pa.ensureSingle(s,"g","heatmapcoloring"),m=[];d.coloring==="heatmap"&&(m=[l]),_we(r,t,m,y),kj(p),Sj(p);var x=i.c2p(c[0],!0),w=i.c2p(c[c.length-1],!0),_=o.c2p(v[0],!0),b=o.c2p(v[v.length-1],!0),T=[[x,b],[w,b],[w,_],[x,_]],k=p;d.type==="constraint"&&(k=Twe(p,d._operation)),Awe(s,T,d),Mwe(s,k,T,d),kwe(s,p,r,u,d),qwe(s,t,r,u,T)})};function Awe(e,r,t){var a=Pa.ensureSingle(e,"g","contourbg"),n=a.selectAll("path").data(t.coloring==="fill"?[0]:[]);n.enter().append("path"),n.exit().remove(),n.attr("d","M"+r.join("L")+"Z").style("stroke","none")}function Mwe(e,r,t,a){var n=a.coloring==="fill"||a.type==="constraint"&&a._operation!=="=",i="M"+t.join("L")+"Z";n&&qj(r,a);var o=Pa.ensureSingle(e,"g","contourfill"),l=o.selectAll("path").data(n?r:[]);l.enter().append("path"),l.exit().remove(),l.each(function(s){var u=(s.prefixBoundary?i:"")+Lj(s,t);u?U0.select(this).attr("d",u).style("stroke","none"):U0.select(this).remove()})}function Lj(e,r){var t="",a=0,n=e.edgepaths.map(function(x,w){return w}),i=!0,o,l,s,u,f,c;function v(x){return Math.abs(x[1]-r[0][1])<.01}function d(x){return Math.abs(x[1]-r[2][1])<.01}function p(x){return Math.abs(x[0]-r[0][0])<.01}function y(x){return Math.abs(x[0]-r[2][0])<.01}for(;n.length;){for(c=Al.smoothopen(e.edgepaths[a],e.smoothing),t+=i?c:c.replace(/^M/,"L"),n.splice(n.indexOf(a),1),o=e.edgepaths[a][e.edgepaths[a].length-1],u=-1,s=0;s<4;s++){if(!o){Pa.log("Missing end?",a,e);break}for(v(o)&&!y(o)?l=r[1]:p(o)?l=r[0]:d(o)?l=r[3]:y(o)&&(l=r[2]),f=0;f=0&&(l=m,u=f):Math.abs(o[1]-l[1])<.01?Math.abs(o[1]-m[1])<.01&&(m[0]-o[0])*(l[0]-m[0])>=0&&(l=m,u=f):Pa.log("endpt to newendpt is not vert. or horz.",o,l,m)}if(o=l,u>=0)break;t+="L"+l}if(u===e.edgepaths.length){Pa.log("unclosed perimeter path");break}a=u,i=n.indexOf(a)===-1,i&&(a=n[0],t+="Z")}for(a=0;aVo.MAXCOST*2)break;v&&(l/=2),o=u-l/2,s=o+l*1.5}if(c<=Vo.MAXCOST)return f};function Swe(e,r,t,a){var n=r.width/2,i=r.height/2,o=e.x,l=e.y,s=e.theta,u=Math.cos(s)*n,f=Math.sin(s)*n,c=(o>a.center?a.right-o:o-a.left)/(u+Math.abs(Math.sin(s)*i)),v=(l>a.middle?a.bottom-l:l-a.top)/(Math.abs(f)+Math.cos(s)*i);if(c<1||v<1)return 1/0;var d=Vo.EDGECOST*(1/(c-1)+1/(v-1));d+=Vo.ANGLECOST*s*s;for(var p=o-u,y=l-f,m=o+u,x=l+f,w=0;w{"use strict";var Cwe=Sr(),T6=So(),Ewe=O0();Cj.exports=function(r){var t=r.contours,a=t.start,n=Ewe(t),i=t.size||1,o=Math.floor((n-a)/i)+1,l=t.coloring==="lines"?0:1,s=T6.extractOpts(r);isFinite(i)||(i=1,o=1);var u=s.reversescale?T6.flipScale(s.colorscale):s.colorscale,f=u.length,c=new Array(f),v=new Array(f),d,p,y=s.min,m=s.max;if(t.coloring==="heatmap"){for(p=0;p=m)&&(a<=y&&(a=y),n>=m&&(n=m),o=Math.floor((n-a)/i)+1,l=0),p=0;py&&(c.unshift(y),v.unshift(v[0])),c[c.length-1]{"use strict";var Fg=Sr(),Ej=Wr(),Dwe=_g(),Rwe=A6();Dj.exports=function(r){var t=Fg.select(r).selectAll("g.contour");t.style("opacity",function(a){return a[0].trace.opacity}),t.each(function(a){var n=Fg.select(this),i=a[0].trace,o=i.contours,l=i.line,s=o.size||1,u=o.start,f=o.type==="constraint",c=!f&&o.coloring==="lines",v=!f&&o.coloring==="fill",d=c||v?Rwe(i):null;n.selectAll("g.contourlevel").each(function(m){Fg.select(this).selectAll("path").call(Ej.lineGroupStyle,l.width,c?d(m.level):l.color,l.dash)});var p=o.labelfont;if(n.selectAll("g.contourlabels text").each(function(m){Ej.font(Fg.select(this),{weight:p.weight,style:p.style,variant:p.variant,textcase:p.textcase,lineposition:p.lineposition,shadow:p.shadow,family:p.family,size:p.size,color:p.color||(c?d(m.level):l.color)})}),f)n.selectAll("g.contourfill path").style("fill",i.fillcolor);else if(v){var y;n.selectAll("g.contourfill path").style("fill",function(m){return y===void 0&&(y=m.level),d(m.level+.5*s)}),y===void 0&&(y=u),n.selectAll("g.contourbg path").style("fill",d(y-.5*s))}}),Dwe(r)}});var k6=N((NIe,Pj)=>{"use strict";var Rj=So(),Pwe=A6(),Fwe=O0();function Nwe(e,r,t){var a=r.contours,n=r.line,i=a.size||1,o=a.coloring,l=Pwe(r,{isColorbar:!0});if(o==="heatmap"){var s=Rj.extractOpts(r);t._fillgradient=s.reversescale?Rj.flipScale(s.colorscale):s.colorscale,t._zrange=[s.min,s.max]}else o==="fill"&&(t._fillcolor=l);t._line={color:o==="lines"?l:n.color,width:a.showlines!==!1?n.width:0,dash:n.dash},t._levels={start:a.start,end:Fwe(a),size:i}}Pj.exports={min:"zmin",max:"zmax",calc:Nwe}});var S6=N((zIe,Fj)=>{"use strict";var Ng=Tr(),zwe=Tg();Fj.exports=function(r,t,a,n,i){i||(i={}),i.isContour=!0;var o=zwe(r,t,a,n,i);return o&&o.forEach(function(l){var s=l.trace;s.contours.type==="constraint"&&(s.fillcolor&&Ng.opacity(s.fillcolor)?l.color=Ng.addOpacity(s.fillcolor,1):s.contours.showlines&&Ng.opacity(s.line.color)&&(l.color=Ng.addOpacity(s.line.color,1)))}),o}});var zj=N((IIe,Nj)=>{"use strict";Nj.exports={attributes:h6(),supplyDefaults:$W(),crossTraceDefaults:kg(),calc:b6(),plot:w6().plot,layerName:"contourlayer",style:M6(),colorbar:k6(),hoverPoints:S6(),moduleType:"trace",name:"histogram2dcontour",basePlotModule:Li(),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{}}});var Oj=N((OIe,Ij)=>{"use strict";Ij.exports=zj()});var Wj=N((BIe,Yj)=>{"use strict";var Bj=Rr(),Iwe=p6(),Gj=Tr(),Hj=Gj.addOpacity,Owe=Gj.opacity,Vj=Lg(),Uj=Le().isArrayOrTypedArray,Bwe=Vj.CONSTRAINT_REDUCTION,Hwe=Vj.COMPARISON_OPS2;Yj.exports=function(r,t,a,n,i,o){var l=t.contours,s,u,f,c=a("contours.operation");if(l._operation=Bwe[c],Uwe(a,l),c==="="?s=l.showlines=!0:(s=a("contours.showlines"),f=a("fillcolor",Hj((r.line||{}).color||i,.5))),s){var v=f&&Owe(f)?Hj(t.fillcolor,1):i;u=a("line.color",v),a("line.width",2),a("line.dash")}a("line.smoothing"),Iwe(a,n,u,o)};function Uwe(e,r){var t;Hwe.indexOf(r.operation)===-1?(e("contours.value",[0,1]),Uj(r.value)?r.value.length>2?r.value=r.value.slice(2):r.length===0?r.value=[0,1]:r.length<2?(t=parseFloat(r.value[0]),r.value=[t,t+1]):r.value=[parseFloat(r.value[0]),parseFloat(r.value[1])]:Bj(r.value)&&(t=parseFloat(r.value),r.value=[t,t+1])):(e("contours.value",0),Bj(r.value)||(Uj(r.value)?r.value=parseFloat(r.value[0]):r.value=0))}});var Xj=N((HIe,Zj)=>{"use strict";var q6=Le(),Gwe=Gw(),Vwe=bc(),Ywe=Wj(),Wwe=d6(),jwe=y6(),Zwe=P0(),jj=Eg();Zj.exports=function(r,t,a,n){function i(u,f){return q6.coerce(r,t,jj,u,f)}function o(u){return q6.coerce2(r,t,jj,u)}var l=Gwe(r,t,i,n);if(!l){t.visible=!1;return}Vwe(r,t,n,i),i("xhoverformat"),i("yhoverformat"),i("text"),i("hovertext"),i("hoverongaps"),i("hovertemplate"),i("hovertemplatefallback");var s=i("contours.type")==="constraint";i("connectgaps",q6.isArray1D(t.z)),s?Ywe(r,t,i,n,a):(Wwe(r,t,i,o),jwe(r,t,i,n)),t.contours&&t.contours.coloring==="heatmap"&&Zwe(i,n),i("zorder")}});var $j=N((UIe,Jj)=>{"use strict";Jj.exports={attributes:Eg(),supplyDefaults:Xj(),calc:b6(),plot:w6().plot,style:M6(),colorbar:k6(),hoverPoints:S6(),moduleType:"trace",name:"contour",basePlotModule:Li(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}});var Qj=N((GIe,Kj)=>{"use strict";Kj.exports=$j()});var L6=N((VIe,tZ)=>{"use strict";var{hovertemplateAttrs:Xwe,texttemplateAttrs:Jwe,templatefallbackAttrs:eZ}=Yn(),$we=Ny(),ni=wi(),Kwe=gn(),rZ=ko(),Qwe=ui().dash,gs=bt().extendFlat,Fi=ni.marker,G0=ni.line,e6e=Fi.line;tZ.exports={a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},c:{valType:"data_array",editType:"calc"},sum:{valType:"number",dflt:0,min:0,editType:"calc"},mode:gs({},ni.mode,{dflt:"markers"}),text:gs({},ni.text,{}),texttemplate:Jwe({editType:"plot"},{keys:["a","b","c","text"]}),texttemplatefallback:eZ({editType:"plot"}),hovertext:gs({},ni.hovertext,{}),line:{color:G0.color,width:G0.width,dash:Qwe,backoff:G0.backoff,shape:gs({},G0.shape,{values:["linear","spline"]}),smoothing:G0.smoothing,editType:"calc"},connectgaps:ni.connectgaps,cliponaxis:ni.cliponaxis,fill:gs({},ni.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:$we(),marker:gs({symbol:Fi.symbol,opacity:Fi.opacity,angle:Fi.angle,angleref:Fi.angleref,standoff:Fi.standoff,maxdisplayed:Fi.maxdisplayed,size:Fi.size,sizeref:Fi.sizeref,sizemin:Fi.sizemin,sizemode:Fi.sizemode,line:gs({width:e6e.width,editType:"calc"},rZ("marker.line")),gradient:Fi.gradient,editType:"calc"},rZ("marker")),textfont:ni.textfont,textposition:ni.textposition,selected:ni.selected,unselected:ni.unselected,hoverinfo:gs({},Kwe.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:ni.hoveron,hovertemplate:Xwe(),hovertemplatefallback:eZ()}});var oZ=N((YIe,iZ)=>{"use strict";var aZ=Le(),r6e=Zh(),Qc=Dn(),t6e=Y_(),a6e=W_(),nZ=j_(),n6e=Z_(),i6e=X_(),o6e=L6();iZ.exports=function(r,t,a,n){function i(v,d){return aZ.coerce(r,t,o6e,v,d)}var o=i("a"),l=i("b"),s=i("c"),u;if(o?(u=o.length,l?(u=Math.min(u,l.length),s&&(u=Math.min(u,s.length))):s?u=Math.min(u,s.length):u=0):l&&s&&(u=Math.min(l.length,s.length)),!u){t.visible=!1;return}t._length=u,i("sum"),i("text"),i("hovertext"),t.hoveron!=="fills"&&(i("hovertemplate"),i("hovertemplatefallback"));var f=u{"use strict";var C6=zr();lZ.exports=function(r,t,a){var n={},i=a[t.subplot]._subplot;return n.aLabel=C6.tickText(i.aaxis,r.a,!0).text,n.bLabel=C6.tickText(i.baxis,r.b,!0).text,n.cLabel=C6.tickText(i.caxis,r.c,!0).text,n}});var vZ=N((jIe,cZ)=>{"use strict";var E6=Rr(),l6e=K_(),s6e=cm(),u6e=vm(),f6e=hm().calcMarkerSize,uZ=["a","b","c"],fZ={a:["b","c"],b:["a","c"],c:["a","b"]};cZ.exports=function(r,t){var a=r._fullLayout[t.subplot],n=a.sum,i=t.sum||n,o={a:t.a,b:t.b,c:t.c},l=t.ids,s,u,f,c,v,d;for(s=0;s{"use strict";var c6e=f4();hZ.exports=function(r,t,a){var n=t.plotContainer;n.select(".scatterlayer").selectAll("*").remove();for(var i=t.xaxis,o=t.yaxis,l={xaxis:i,yaxis:o,plot:n,layerClipId:t._hasClipOnAxisFalse?t.clipIdRelative:null},s=t.layers.frontplot.select("g.scatterlayer"),u=0;u{"use strict";var v6e=y4();pZ.exports=function(r,t,a,n){var i=v6e(r,t,a,n);if(!i||i[0].index===!1)return;var o=i[0];if(o.index===void 0){var l=1-o.y0/r.ya._length,s=r.xa._length,u=s*l/2,f=s-u;return o.x0=Math.max(Math.min(o.x0,f),u),o.x1=Math.max(Math.min(o.x1,f),u),i}var c=o.cd[o.index],v=o.trace,d=o.subplot;o.a=c.a,o.b=c.b,o.c=c.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var p={};p[v.subplot]={_subplot:d};var y=v._module.formatLabels(c,v,p);o.aLabel=y.aLabel,o.bLabel=y.bLabel,o.cLabel=y.cLabel;var m=c.hi||v.hoverinfo,x=[];function w(b,T){x.push(b._hovertitle+": "+T)}if(!v.hovertemplate){var _=m.split("+");_.indexOf("all")!==-1&&(_=["a","b","c"]),_.indexOf("a")!==-1&&w(d.aaxis,o.aLabel),_.indexOf("b")!==-1&&w(d.baxis,o.bLabel),_.indexOf("c")!==-1&&w(d.caxis,o.cLabel)}return o.extraText=x.join("
"),o.hovertemplate=v.hovertemplate,i}});var gZ=N((JIe,mZ)=>{"use strict";mZ.exports=function(r,t,a,n,i){if(t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),n[i]){var o=n[i];r.a=o.a,r.b=o.b,r.c=o.c}else r.a=t.a,r.b=t.b,r.c=t.c;return r}});var LZ=N(($Ie,qZ)=>{"use strict";var AZ=Sr(),h6e=kn(),D6=br(),Ml=Le(),Yo=Ml.strTranslate,zg=Ml._,rv=Tr(),Ig=Wr(),V0=Kf(),R6=bt().extendFlat,d6e=ta(),bs=zr(),bZ=pi(),xZ=Pn(),MZ=xu(),_Z=MZ.freeMode,p6e=MZ.rectMode,P6=$f(),y6e=zo().prepSelect,m6e=zo().selectOnClick,g6e=zo().clearOutline,b6e=zo().clearSelectionsCache,kZ=Ca();function SZ(e,r){this.id=e.id,this.graphDiv=e.graphDiv,this.init(r),this.makeFramework(r),this.updateFx(r),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}qZ.exports=SZ;var Wo=SZ.prototype;Wo.init=function(e){this.container=e._ternarylayer,this.defs=e._defs,this.layoutId=e._uid,this.traceHash={},this.layers={}};Wo.plot=function(e,r){var t=this,a=r[t.id],n=r._size;t._hasClipOnAxisFalse=!1;for(var i=0;iev*u?(x=u,m=x*ev):(m=s,x=m/ev),w=o*m/s,_=l*x/u,p=r.l+r.w*n-m/2,y=r.t+r.h*(1-i)-x/2,t.x0=p,t.y0=y,t.w=m,t.h=x,t.sum=f,t.xaxis={type:"linear",range:[c+2*d-f,f-c-2*v],domain:[n-w/2,n+w/2],_id:"x"},V0(t.xaxis,t.graphDiv._fullLayout),t.xaxis.setScale(),t.xaxis.isPtWithinRange=function(O){return O.a>=t.aaxis.range[0]&&O.a<=t.aaxis.range[1]&&O.b>=t.baxis.range[1]&&O.b<=t.baxis.range[0]&&O.c>=t.caxis.range[1]&&O.c<=t.caxis.range[0]},t.yaxis={type:"linear",range:[c,f-v-d],domain:[i-_/2,i+_/2],_id:"y"},V0(t.yaxis,t.graphDiv._fullLayout),t.yaxis.setScale(),t.yaxis.isPtWithinRange=function(){return!0};var b=t.yaxis.domain[0],T=t.aaxis=R6({},e.aaxis,{range:[c,f-v-d],side:"left",tickangle:(+e.aaxis.tickangle||0)-30,domain:[b,b+_*ev],anchor:"free",position:0,_id:"y",_length:m});V0(T,t.graphDiv._fullLayout),T.setScale();var k=t.baxis=R6({},e.baxis,{range:[f-c-d,v],side:"bottom",domain:t.xaxis.domain,anchor:"free",position:0,_id:"x",_length:m});V0(k,t.graphDiv._fullLayout),k.setScale();var M=t.caxis=R6({},e.caxis,{range:[f-c-v,d],side:"right",tickangle:(+e.caxis.tickangle||0)+30,domain:[b,b+_*ev],anchor:"free",position:0,_id:"y",_length:m});V0(M,t.graphDiv._fullLayout),M.setScale();var q="M"+p+","+(y+x)+"h"+m+"l-"+m/2+",-"+x+"Z";t.clipDef.select("path").attr("d",q),t.layers.plotbg.select("path").attr("d",q);var E="M0,"+x+"h"+m+"l-"+m/2+",-"+x+"Z";t.clipDefRelative.select("path").attr("d",E);var D=Yo(p,y);t.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",D),t.clipDefRelative.select("path").attr("transform",null);var P=Yo(p-k._offset,y+x);t.layers.baxis.attr("transform",P),t.layers.bgrid.attr("transform",P);var R=Yo(p+m/2,y)+"rotate(30)"+Yo(0,-T._offset);t.layers.aaxis.attr("transform",R),t.layers.agrid.attr("transform",R);var z=Yo(p+m/2,y)+"rotate(-30)"+Yo(0,-M._offset);t.layers.caxis.attr("transform",z),t.layers.cgrid.attr("transform",z),t.drawAxes(!0),t.layers.aline.select("path").attr("d",T.showline?"M"+p+","+(y+x)+"l"+m/2+",-"+x:"M0,0").call(rv.stroke,T.linecolor||"#000").style("stroke-width",(T.linewidth||0)+"px"),t.layers.bline.select("path").attr("d",k.showline?"M"+p+","+(y+x)+"h"+m:"M0,0").call(rv.stroke,k.linecolor||"#000").style("stroke-width",(k.linewidth||0)+"px"),t.layers.cline.select("path").attr("d",M.showline?"M"+(p+m/2)+","+y+"l"+m/2+","+x:"M0,0").call(rv.stroke,M.linecolor||"#000").style("stroke-width",(M.linewidth||0)+"px"),t.graphDiv._context.staticPlot||t.initInteractions(),Ig.setClipUrl(t.layers.frontplot,t._hasClipOnAxisFalse?null:t.clipId,t.graphDiv)};Wo.drawAxes=function(e){var r=this,t=r.graphDiv,a=r.id.slice(7)+"title",n=r.layers,i=r.aaxis,o=r.baxis,l=r.caxis;if(r.drawAx(i),r.drawAx(o),r.drawAx(l),e){var s=Math.max(i.showticklabels?i.tickfont.size/2:0,(l.showticklabels?l.tickfont.size*.75:0)+(l.ticks==="outside"?l.ticklen*.87:0)),u=(o.showticklabels?o.tickfont.size:0)+(o.ticks==="outside"?o.ticklen:0)+3;n["a-title"]=P6.draw(t,"a"+a,{propContainer:i,propName:r.id+".aaxis.title.text",placeholder:zg(t,"Click to enter Component A title"),attributes:{x:r.x0+r.w/2,y:r.y0-i.title.font.size/3-s,"text-anchor":"middle"}}),n["b-title"]=P6.draw(t,"b"+a,{propContainer:o,propName:r.id+".baxis.title.text",placeholder:zg(t,"Click to enter Component B title"),attributes:{x:r.x0-u,y:r.y0+r.h+o.title.font.size*.83+u,"text-anchor":"middle"}}),n["c-title"]=P6.draw(t,"c"+a,{propContainer:l,propName:r.id+".caxis.title.text",placeholder:zg(t,"Click to enter Component C title"),attributes:{x:r.x0+r.w+u,y:r.y0+r.h+l.title.font.size*.83+u,"text-anchor":"middle"}})}};Wo.drawAx=function(e){var r=this,t=r.graphDiv,a=e._name,n=a.charAt(0),i=e._id,o=r.layers[a],l=30,s=n+"tickLayout",u=x6e(e);r[s]!==u&&(o.selectAll("."+i+"tick").remove(),r[s]=u),e.setScale();var f=bs.calcTicks(e),c=bs.clipEnds(e,f),v=bs.makeTransTickFn(e),d=bs.getTickSigns(e)[2],p=Ml.deg2rad(l),y=d*(e.linewidth||1)/2,m=d*e.ticklen,x=r.w,w=r.h,_=n==="b"?"M0,"+y+"l"+Math.sin(p)*m+","+Math.cos(p)*m:"M"+y+",0l"+Math.cos(p)*m+","+-Math.sin(p)*m,b={a:"M0,0l"+w+",-"+x/2,b:"M0,0l-"+x/2+",-"+w,c:"M0,0l-"+w+","+x/2}[n];bs.drawTicks(t,e,{vals:e.ticks==="inside"?c:f,layer:o,path:_,transFn:v,crisp:!1}),bs.drawGrid(t,e,{vals:c,layer:r.layers[n+"grid"],path:b,transFn:v,crisp:!1}),bs.drawLabels(t,e,{vals:f,layer:o,transFn:v,labelFns:bs.makeLabelFns(e,0,l)})};function x6e(e){return e.ticks+String(e.ticklen)+String(e.showticklabels)}var qa=kZ.MINZOOM/2+.87,_6e="m-0.87,.5h"+qa+"v3h-"+(qa+5.2)+"l"+(qa/2+2.6)+",-"+(qa*.87+4.5)+"l2.6,1.5l-"+qa/2+","+qa*.87+"Z",w6e="m0.87,.5h-"+qa+"v3h"+(qa+5.2)+"l-"+(qa/2+2.6)+",-"+(qa*.87+4.5)+"l-2.6,1.5l"+qa/2+","+qa*.87+"Z",T6e="m0,1l"+qa/2+","+qa*.87+"l2.6,-1.5l-"+(qa/2+2.6)+",-"+(qa*.87+4.5)+"l-"+(qa/2+2.6)+","+(qa*.87+4.5)+"l2.6,1.5l"+qa/2+",-"+qa*.87+"Z",A6e="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",wZ=!0;Wo.clearOutline=function(){b6e(this.dragOptions),g6e(this.dragOptions.gd)};Wo.initInteractions=function(){var e=this,r=e.layers.plotbg.select("path").node(),t=e.graphDiv,a=t._fullLayout._zoomlayer,n,i;this.dragOptions={element:r,gd:t,plotinfo:{id:e.id,domain:t._fullLayout[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis},subplot:e.id,prepFn:function(P,R,z){e.dragOptions.xaxes=[e.xaxis],e.dragOptions.yaxes=[e.yaxis],n=t._fullLayout._invScaleX,i=t._fullLayout._invScaleY;var O=e.dragOptions.dragmode=t._fullLayout.dragmode;_Z(O)?e.dragOptions.minDrag=1:e.dragOptions.minDrag=void 0,O==="zoom"?(e.dragOptions.moveFn=k,e.dragOptions.clickFn=x,e.dragOptions.doneFn=M,w(P,R,z)):O==="pan"?(e.dragOptions.moveFn=E,e.dragOptions.clickFn=x,e.dragOptions.doneFn=D,q(),e.clearOutline(t)):(p6e(O)||_Z(O))&&y6e(P,R,z,e.dragOptions,O)}};var o,l,s,u,f,c,v,d,p,y;function m(P){var R={};return R[e.id+".aaxis.min"]=P.a,R[e.id+".baxis.min"]=P.b,R[e.id+".caxis.min"]=P.c,R}function x(P,R){var z=t._fullLayout.clickmode;TZ(t),P===2&&(t.emit("plotly_doubleclick",null),D6.call("_guiRelayout",t,m({a:0,b:0,c:0}))),z.indexOf("select")>-1&&P===1&&m6e(R,t,[e.xaxis],[e.yaxis],e.id,e.dragOptions),z.indexOf("event")>-1&&xZ.click(t,R,e.id)}function w(P,R,z){var O=r.getBoundingClientRect();o=R-O.left,l=z-O.top,t._fullLayout._calcInverseTransform(t);var B=t._fullLayout._invTransform,Y=Ml.apply3DTransform(B)(o,l);o=Y[0],l=Y[1],s={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},f=s,u=e.aaxis.range[1]-s.a,c=h6e(e.graphDiv._fullLayout[e.id].bgcolor).getLuminance(),v="M0,"+e.h+"L"+e.w/2+", 0L"+e.w+","+e.h+"Z",d=!1,p=a.append("path").attr("class","zoombox").attr("transform",Yo(e.x0,e.y0)).style({fill:c>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",v),y=a.append("path").attr("class","zoombox-corners").attr("transform",Yo(e.x0,e.y0)).style({fill:rv.background,stroke:rv.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),e.clearOutline(t)}function _(P,R){return 1-R/e.h}function b(P,R){return 1-(P+(e.h-R)/Math.sqrt(3))/e.w}function T(P,R){return(P-(e.h-R)/Math.sqrt(3))/e.w}function k(P,R){var z=o+P*n,O=l+R*i,B=Math.max(0,Math.min(1,_(o,l),_(z,O))),Y=Math.max(0,Math.min(1,b(o,l),b(z,O))),V=Math.max(0,Math.min(1,T(o,l),T(z,O))),H=(B/2+V)*e.w,G=(1-B/2-Y)*e.w,X=(H+G)/2,Z=G-H,ee=(1-B)*e.h,fe=ee-Z/ev;Z.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),y.transition().style("opacity",1).duration(200),d=!0),t.emit("plotly_relayouting",m(f))}function M(){TZ(t),f!==s&&(D6.call("_guiRelayout",t,m(f)),wZ&&t.data&&t._context.showTips&&(Ml.notifier(zg(t,"Double-click to zoom back out"),"long"),wZ=!1))}function q(){s={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},f=s}function E(P,R){var z=P/e.xaxis._m,O=R/e.yaxis._m;f={a:s.a-O,b:s.b+(z+O)/2,c:s.c-(z-O)/2};var B=[f.a,f.b,f.c].sort(Ml.sorterAsc),Y={a:B.indexOf(f.a),b:B.indexOf(f.b),c:B.indexOf(f.c)};B[0]<0&&(B[1]+B[0]/2<0?(B[2]+=B[0]+B[1],B[0]=B[1]=0):(B[2]+=B[0]/2,B[1]+=B[0]/2,B[0]=0),f={a:B[Y.a],b:B[Y.b],c:B[Y.c]},R=(s.a-f.a)*e.yaxis._m,P=(s.c-f.c-s.b+f.b)*e.xaxis._m);var V=Yo(e.x0+P,e.y0+R);e.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",V);var H=Yo(-P,-R);e.clipDefRelative.select("path").attr("transform",H),e.aaxis.range=[f.a,e.sum-f.b-f.c],e.baxis.range=[e.sum-f.a-f.c,f.b],e.caxis.range=[e.sum-f.a-f.b,f.c],e.drawAxes(!1),e._hasClipOnAxisFalse&&e.plotContainer.select(".scatterlayer").selectAll(".trace").call(Ig.hideOutsideRangePoints,e),t.emit("plotly_relayouting",m(f))}function D(){D6.call("_guiRelayout",t,m(f))}r.onmousemove=function(P){xZ.hover(t,P,e.id),t._fullLayout._lasthover=r,t._fullLayout._hoversubplot=e.id},r.onmouseout=function(P){t._dragging||bZ.unhover(t,P)},bZ.init(this.dragOptions)};function TZ(e){AZ.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}});var z6=N((KIe,CZ)=>{"use strict";var M6e=si(),k6e=Ic().attributes,it=hi(),S6e=$i().overrideAll,F6=bt().extendFlat,N6={title:{text:it.title.text,font:it.title.font},color:it.color,tickmode:it.minor.tickmode,nticks:F6({},it.nticks,{dflt:6,min:1}),tick0:it.tick0,dtick:it.dtick,tickvals:it.tickvals,ticktext:it.ticktext,ticks:it.ticks,ticklen:it.ticklen,tickwidth:it.tickwidth,tickcolor:it.tickcolor,ticklabelstep:it.ticklabelstep,showticklabels:it.showticklabels,labelalias:it.labelalias,showtickprefix:it.showtickprefix,tickprefix:it.tickprefix,showticksuffix:it.showticksuffix,ticksuffix:it.ticksuffix,showexponent:it.showexponent,exponentformat:it.exponentformat,minexponent:it.minexponent,separatethousands:it.separatethousands,tickfont:it.tickfont,tickangle:it.tickangle,tickformat:it.tickformat,tickformatstops:it.tickformatstops,hoverformat:it.hoverformat,showline:F6({},it.showline,{dflt:!0}),linecolor:it.linecolor,linewidth:it.linewidth,showgrid:F6({},it.showgrid,{dflt:!0}),gridcolor:it.gridcolor,gridwidth:it.gridwidth,griddash:it.griddash,layer:it.layer,min:{valType:"number",dflt:0,min:0}},Og=CZ.exports=S6e({domain:k6e({name:"ternary"}),bgcolor:{valType:"color",dflt:M6e.background},sum:{valType:"number",dflt:1,min:0},aaxis:N6,baxis:N6,caxis:N6},"plot","from-root");Og.uirevision={valType:"any",editType:"none"};Og.aaxis.uirevision=Og.baxis.uirevision=Og.caxis.uirevision={valType:"any",editType:"none"}});var DZ=N((QIe,EZ)=>{"use strict";var q6e=Le(),L6e=_t(),C6e=Ic().defaults;EZ.exports=function(r,t,a,n){var i=n.type,o=n.attributes,l=n.handleDefaults,s=n.partition||"x",u=t._subplots[i],f=u.length,c=f&&u[0].replace(/\d+$/,""),v,d;function p(w,_){return q6e.coerce(v,d,o,w,_)}for(var y=0;y{"use strict";var E6e=Tr(),D6e=_t(),Bg=Le(),R6e=DZ(),P6e=u1(),F6e=f1(),N6e=l1(),z6e=o1(),I6e=b4(),PZ=z6(),RZ=["aaxis","baxis","caxis"];FZ.exports=function(r,t,a){R6e(r,t,a,{type:"ternary",attributes:PZ,handleDefaults:O6e,font:t.font,paper_bgcolor:t.paper_bgcolor})};function O6e(e,r,t,a){var n=t("bgcolor"),i=t("sum");a.bgColor=E6e.combine(n,a.paper_bgcolor);for(var o,l,s,u=0;u=i&&(f.min=0,c.min=0,v.min=0,e.aaxis&&delete e.aaxis.min,e.baxis&&delete e.baxis.min,e.caxis&&delete e.caxis.min)}function B6e(e,r,t,a){var n=PZ[r._name];function i(d,p){return Bg.coerce(e,r,n,d,p)}i("uirevision",a.uirevision),r.type="linear";var o=i("color"),l=o!==n.color.dflt?o:t.font.color,s=r._name,u=s.charAt(0).toUpperCase(),f="Component "+u,c=i("title.text",f);r._hovertitle=c===f?c:u,Bg.coerceFont(i,"title.font",t.font,{overrideDflt:{size:Bg.bigFont(t.font.size),color:l}}),i("min"),z6e(e,r,i,"linear"),F6e(e,r,i,"linear"),P6e(e,r,i,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),N6e(e,r,i,{outerTicks:!0});var v=i("showticklabels");v&&(Bg.coerceFont(i,"tickfont",t.font,{overrideDflt:{color:l}}),i("tickangle"),i("tickformat")),I6e(e,r,i,{dfltColor:o,bgColor:t.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:n}),i("hoverformat"),i("layer")}});var zZ=N(Ni=>{"use strict";var H6e=LZ(),U6e=Kp().getSubplotCalcData,G6e=Le().counterRegex,tv="ternary";Ni.name=tv;var V6e=Ni.attr="subplot";Ni.idRoot=tv;Ni.idRegex=Ni.attrRegex=G6e(tv);var Y6e=Ni.attributes={};Y6e[V6e]={valType:"subplotid",dflt:"ternary",editType:"calc"};Ni.layoutAttributes=z6();Ni.supplyLayoutDefaults=NZ();Ni.plot=function(r){for(var t=r._fullLayout,a=r.calcdata,n=t._subplots[tv],i=0;i{"use strict";IZ.exports={attributes:L6(),supplyDefaults:oZ(),colorbar:v0(),formatLabels:sZ(),calc:vZ(),plot:dZ(),style:Su().style,styleOnSelect:Su().styleOnSelect,hoverPoints:yZ(),selectPoints:m4(),eventData:gZ(),moduleType:"trace",name:"scatterternary",basePlotModule:zZ(),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}});var HZ=N((aOe,BZ)=>{"use strict";BZ.exports=OZ()});var I6=N((nOe,GZ)=>{"use strict";var va=sg(),av=bt().extendFlat,UZ=ro().axisHoverFormat;GZ.exports={y:va.y,x:va.x,x0:va.x0,y0:va.y0,xhoverformat:UZ("x"),yhoverformat:UZ("y"),name:av({},va.name,{}),orientation:av({},va.orientation,{}),bandwidth:{valType:"number",min:0,editType:"calc"},scalegroup:{valType:"string",dflt:"",editType:"calc"},scalemode:{valType:"enumerated",values:["width","count"],dflt:"width",editType:"calc"},spanmode:{valType:"enumerated",values:["soft","hard","manual"],dflt:"soft",editType:"calc"},span:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:va.fillcolor,points:av({},va.boxpoints,{}),jitter:av({},va.jitter,{}),pointpos:av({},va.pointpos,{}),width:av({},va.width,{}),marker:va.marker,text:va.text,hovertext:va.hovertext,hovertemplate:va.hovertemplate,hovertemplatefallback:va.hovertemplatefallback,quartilemethod:va.quartilemethod,box:{visible:{valType:"boolean",dflt:!1,editType:"plot"},width:{valType:"number",min:0,max:1,dflt:.25,editType:"plot"},fillcolor:{valType:"color",editType:"style"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"style"},editType:"plot"},meanline:{visible:{valType:"boolean",dflt:!1,editType:"plot"},color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"plot"},side:{valType:"enumerated",values:["both","positive","negative"],dflt:"both",editType:"calc"},offsetgroup:va.offsetgroup,alignmentgroup:va.alignmentgroup,selected:va.selected,unselected:va.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style"},zorder:va.zorder}});var H6=N((iOe,VZ)=>{"use strict";var O6=ug(),B6=Le().extendFlat;VZ.exports={violinmode:B6({},O6.boxmode,{}),violingap:B6({},O6.boxgap,{}),violingroupgap:B6({},O6.boxgroupgap,{})}});var XZ=N((oOe,ZZ)=>{"use strict";var YZ=Le(),W6e=Tr(),WZ=D0(),jZ=I6();ZZ.exports=function(r,t,a,n){function i(T,k){return YZ.coerce(r,t,jZ,T,k)}function o(T,k){return YZ.coerce2(r,t,jZ,T,k)}if(WZ.handleSampleDefaults(r,t,i,n),t.visible!==!1){i("bandwidth"),i("side");var l=i("width");l||(i("scalegroup",t.name),i("scalemode"));var s=i("span"),u;Array.isArray(s)&&(u="manual"),i("spanmode",u);var f=i("line.color",(r.marker||{}).color||a),c=i("line.width"),v=i("fillcolor",W6e.addOpacity(t.line.color,.5));WZ.handlePointsDefaults(r,t,i,{prefix:""});var d=o("box.width"),p=o("box.fillcolor",v),y=o("box.line.color",f),m=o("box.line.width",c),x=i("box.visible",!!(d||p||y||m));x||(t.box={visible:!1});var w=o("meanline.color",f),_=o("meanline.width",c),b=i("meanline.visible",!!(w||_));b||(t.meanline={visible:!1}),i("quartilemethod"),i("zorder")}}});var $Z=N((lOe,JZ)=>{"use strict";var j6e=Le(),Z6e=H6(),X6e=Lw();JZ.exports=function(r,t,a){function n(i,o){return j6e.coerce(r,t,Z6e,i,o)}X6e._supply(r,t,a,n,"violin")}});var Hg=N(Gu=>{"use strict";var J6e=Le(),$6e={gaussian:function(e){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*e*e)}};Gu.makeKDE=function(e,r,t){var a=t.length,n=$6e.gaussian,i=e.bandwidth,o=1/(a*i);return function(l){for(var s=0,u=0;u{"use strict";var U6=Le(),G6=zr(),K6e=Dw(),KZ=Hg(),Q6e=It().BADNUM;QZ.exports=function(r,t){var a=K6e(r,t);if(a[0].t.empty)return a;for(var n=r._fullLayout,i=G6.getFromId(r,t[t.orientation==="h"?"xaxis":"yaxis"]),o=1/0,l=-1/0,s=0,u=0,f=0;f{"use strict";var a7e=Rw().setPositionOffset,rX=["v","h"];tX.exports=function(r,t){for(var a=r.calcdata,n=t.xaxis,i=t.yaxis,o=0;o{"use strict";var V6=Sr(),Y6=Le(),n7e=Wr(),W6=Pw(),i7e=u4(),o7e=Hg();nX.exports=function(r,t,a,n){var i=r._context.staticPlot,o=r._fullLayout,l=t.xaxis,s=t.yaxis;function u(f,c){var v=i7e(f,{xaxis:l,yaxis:s,trace:c,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return n7e.smoothopen(v[0],1)}Y6.makeTraceGroups(n,a,"trace violins").each(function(f){var c=V6.select(this),v=f[0],d=v.t,p=v.trace;if(p.visible!==!0||d.empty){c.remove();return}var y=d.bPos,m=d.bdPos,x=t[d.valLetter+"axis"],w=t[d.posLetter+"axis"],_=p.side==="both",b=_||p.side==="positive",T=_||p.side==="negative",k=c.selectAll("path.violin").data(Y6.identity);k.enter().append("path").style("vector-effect",i?"none":"non-scaling-stroke").attr("class","violin"),k.exit().remove(),k.each(function(O){var B=V6.select(this),Y=O.density,V=Y.length,H=w.c2l(O.pos+y,!0),G=w.l2p(H),X;if(p.width)X=d.maxKDE/m;else{var Z=o._violinScaleGroupStats[p.scalegroup];X=p.scalemode==="count"?Z.maxKDE/m*(Z.maxCount/O.pts.length):Z.maxKDE/m}var ee,fe,ie,ue,K,_e,le;if(b){for(_e=new Array(V),ue=0;ue{"use strict";var oX=Sr(),nv=Tr(),l7e=Su().stylePoints;lX.exports=function(r){var t=oX.select(r).selectAll("g.trace.violins");t.style("opacity",function(a){return a[0].trace.opacity}),t.each(function(a){var n=a[0].trace,i=oX.select(this),o=n.box||{},l=o.line||{},s=n.meanline||{},u=s.width;i.selectAll("path.violin").style("stroke-width",n.line.width+"px").call(nv.stroke,n.line.color).call(nv.fill,n.fillcolor),i.selectAll("path.box").style("stroke-width",l.width+"px").call(nv.stroke,l.color).call(nv.fill,o.fillcolor);var f={"stroke-width":u+"px","stroke-dasharray":2*u+"px,"+u+"px"};i.selectAll("path.mean").style(f).call(nv.stroke,s.color),i.selectAll("path.meanline").style(f).call(nv.stroke,s.color),l7e(i,n,r)})}});var vX=N((hOe,cX)=>{"use strict";var s7e=Tr(),j6=Le(),u7e=zr(),uX=Bw(),fX=Hg();cX.exports=function(r,t,a,n,i){i||(i={});var o=i.hoverLayer,l=r.cd,s=l[0].trace,u=s.hoveron,f=u.indexOf("violins")!==-1,c=u.indexOf("kde")!==-1,v=[],d,p;if(f||c){var y=uX.hoverOnBoxes(r,t,a,n);if(c&&y.length>0){var m=r.xa,x=r.ya,w,_,b,T,k;s.orientation==="h"?(k=t,w="y",b=x,_="x",T=m):(k=a,w="x",b=m,_="y",T=x);var M=l[r.index];if(k>=M.span[0]&&k<=M.span[1]){var q=j6.extendFlat({},r),E=T.c2p(k,!0),D=fX.getKdeValue(M,s,k),P=fX.getPositionOnKdePath(M,s,E),R=b._offset,z=b._length;q[w+"0"]=P[0],q[w+"1"]=P[1],q[_+"0"]=q[_+"1"]=E,q[_+"Label"]=_+": "+u7e.hoverLabelText(T,k,s[_+"hoverformat"])+", "+l[0].t.labels.kde+" "+D.toFixed(3);for(var O=0,B=0;B{"use strict";hX.exports={attributes:I6(),layoutAttributes:H6(),supplyDefaults:XZ(),crossTraceDefaults:D0().crossTraceDefaults,supplyLayoutDefaults:$Z(),calc:eX(),crossTraceCalc:aX(),plot:iX(),style:sX(),styleOnSelect:Su().styleOnSelect,hoverPoints:vX(),selectPoints:Hw(),moduleType:"trace",name:"violin",basePlotModule:Li(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{}}});var yX=N((pOe,pX)=>{"use strict";pX.exports=dX()});var iv=N((yOe,mX)=>{"use strict";mX.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(e){return e.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(e){var r=e.slice(0,3);return r[1]=r[1]+"%",r[2]=r[2]+"%",r},suffix:["\xB0","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(e){var r=e.slice(0,4);return r[1]=r[1]+"%",r[2]=r[2]+"%",r},suffix:["\xB0","%","%",""]}}}});var Z6=N((mOe,bX)=>{"use strict";var f7e=gn(),c7e=wi().zorder,{hovertemplateAttrs:v7e,templatefallbackAttrs:h7e}=Yn(),gX=bt().extendFlat,d7e=iv().colormodel,W0=["rgb","rgba","rgba256","hsl","hsla"],p7e=[],y7e=[];for(ov=0;ov{"use strict";var m7e=Le(),g7e=Z6(),xX=iv(),b7e=ml().IMAGE_URL_PREFIX;_X.exports=function(r,t){function a(o,l){return m7e.coerce(r,t,g7e,o,l)}a("source"),t.source&&!t.source.match(b7e)&&delete t.source,t._hasSource=!!t.source;var n=a("z");if(t._hasZ=!(n===void 0||!n.length||!n[0]||!n[0].length),!t._hasZ&&!t._hasSource){t.visible=!1;return}a("x0"),a("y0"),a("dx"),a("dy");var i;t._hasZ?(a("colormodel","rgb"),i=xX.colormodel[t.colormodel],a("zmin",i.zminDflt||i.min),a("zmax",i.zmaxDflt||i.max)):t._hasSource&&(t.colormodel="rgba256",i=xX.colormodel[t.colormodel],t.zmin=i.zminDflt,t.zmax=i.zmaxDflt),a("zsmooth"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),t._length=null,a("zorder")}});var kl=N((bOe,X6)=>{typeof Object.create=="function"?X6.exports=function(r,t){t&&(r.super_=t,r.prototype=Object.create(t.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}))}:X6.exports=function(r,t){if(t){r.super_=t;var a=function(){};a.prototype=t.prototype,r.prototype=new a,r.prototype.constructor=r}}});var J6=N((xOe,TX)=>{TX.exports=eu().EventEmitter});var kX=N(Ug=>{"use strict";Ug.byteLength=_7e;Ug.toByteArray=T7e;Ug.fromByteArray=k7e;var jo=[],zi=[],x7e=typeof Uint8Array!="undefined"?Uint8Array:Array,$6="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(Vu=0,AX=$6.length;Vu0)throw new Error("Invalid string. Length must be a multiple of 4");var t=e.indexOf("=");t===-1&&(t=r);var a=t===r?0:4-t%4;return[t,a]}function _7e(e){var r=MX(e),t=r[0],a=r[1];return(t+a)*3/4-a}function w7e(e,r,t){return(r+t)*3/4-t}function T7e(e){var r,t=MX(e),a=t[0],n=t[1],i=new x7e(w7e(e,a,n)),o=0,l=n>0?a-4:a,s;for(s=0;s>16&255,i[o++]=r>>8&255,i[o++]=r&255;return n===2&&(r=zi[e.charCodeAt(s)]<<2|zi[e.charCodeAt(s+1)]>>4,i[o++]=r&255),n===1&&(r=zi[e.charCodeAt(s)]<<10|zi[e.charCodeAt(s+1)]<<4|zi[e.charCodeAt(s+2)]>>2,i[o++]=r>>8&255,i[o++]=r&255),i}function A7e(e){return jo[e>>18&63]+jo[e>>12&63]+jo[e>>6&63]+jo[e&63]}function M7e(e,r,t){for(var a,n=[],i=r;il?l:o+i));return a===1?(r=e[t-1],n.push(jo[r>>2]+jo[r<<4&63]+"==")):a===2&&(r=(e[t-2]<<8)+e[t-1],n.push(jo[r>>10]+jo[r>>4&63]+jo[r<<2&63]+"=")),n.join("")}});var SX=N(K6=>{K6.read=function(e,r,t,a,n){var i,o,l=n*8-a-1,s=(1<>1,f=-7,c=t?n-1:0,v=t?-1:1,d=e[r+c];for(c+=v,i=d&(1<<-f)-1,d>>=-f,f+=l;f>0;i=i*256+e[r+c],c+=v,f-=8);for(o=i&(1<<-f)-1,i>>=-f,f+=a;f>0;o=o*256+e[r+c],c+=v,f-=8);if(i===0)i=1-u;else{if(i===s)return o?NaN:(d?-1:1)*(1/0);o=o+Math.pow(2,a),i=i-u}return(d?-1:1)*o*Math.pow(2,i-a)};K6.write=function(e,r,t,a,n,i){var o,l,s,u=i*8-n-1,f=(1<>1,v=n===23?Math.pow(2,-24)-Math.pow(2,-77):0,d=a?0:i-1,p=a?1:-1,y=r<0||r===0&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(l=isNaN(r)?1:0,o=f):(o=Math.floor(Math.log(r)/Math.LN2),r*(s=Math.pow(2,-o))<1&&(o--,s*=2),o+c>=1?r+=v/s:r+=v*Math.pow(2,1-c),r*s>=2&&(o++,s/=2),o+c>=f?(l=0,o=f):o+c>=1?(l=(r*s-1)*Math.pow(2,n),o=o+c):(l=r*Math.pow(2,c-1)*Math.pow(2,n),o=0));n>=8;e[t+d]=l&255,d+=p,l/=256,n-=8);for(o=o<0;e[t+d]=o&255,d+=p,o/=256,u-=8);e[t+d-p]|=y*128}});var cv=N(fv=>{"use strict";var Q6=kX(),sv=SX(),qX=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;fv.Buffer=je;fv.SlowBuffer=D7e;fv.INSPECT_MAX_BYTES=50;var Gg=2147483647;fv.kMaxLength=Gg;je.TYPED_ARRAY_SUPPORT=S7e();!je.TYPED_ARRAY_SUPPORT&&typeof console!="undefined"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function S7e(){try{let e=new Uint8Array(1),r={foo:function(){return 42}};return Object.setPrototypeOf(r,Uint8Array.prototype),Object.setPrototypeOf(e,r),e.foo()===42}catch(e){return!1}}Object.defineProperty(je.prototype,"parent",{enumerable:!0,get:function(){if(je.isBuffer(this))return this.buffer}});Object.defineProperty(je.prototype,"offset",{enumerable:!0,get:function(){if(je.isBuffer(this))return this.byteOffset}});function Sl(e){if(e>Gg)throw new RangeError('The value "'+e+'" is invalid for option "size"');let r=new Uint8Array(e);return Object.setPrototypeOf(r,je.prototype),r}function je(e,r,t){if(typeof e=="number"){if(typeof r=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return a7(e)}return DX(e,r,t)}je.poolSize=8192;function DX(e,r,t){if(typeof e=="string")return L7e(e,r);if(ArrayBuffer.isView(e))return C7e(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(Zo(e,ArrayBuffer)||e&&Zo(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(Zo(e,SharedArrayBuffer)||e&&Zo(e.buffer,SharedArrayBuffer)))return r7(e,r,t);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let a=e.valueOf&&e.valueOf();if(a!=null&&a!==e)return je.from(a,r,t);let n=E7e(e);if(n)return n;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return je.from(e[Symbol.toPrimitive]("string"),r,t);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}je.from=function(e,r,t){return DX(e,r,t)};Object.setPrototypeOf(je.prototype,Uint8Array.prototype);Object.setPrototypeOf(je,Uint8Array);function RX(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function q7e(e,r,t){return RX(e),e<=0?Sl(e):r!==void 0?typeof t=="string"?Sl(e).fill(r,t):Sl(e).fill(r):Sl(e)}je.alloc=function(e,r,t){return q7e(e,r,t)};function a7(e){return RX(e),Sl(e<0?0:n7(e)|0)}je.allocUnsafe=function(e){return a7(e)};je.allocUnsafeSlow=function(e){return a7(e)};function L7e(e,r){if((typeof r!="string"||r==="")&&(r="utf8"),!je.isEncoding(r))throw new TypeError("Unknown encoding: "+r);let t=PX(e,r)|0,a=Sl(t),n=a.write(e,r);return n!==t&&(a=a.slice(0,n)),a}function e7(e){let r=e.length<0?0:n7(e.length)|0,t=Sl(r);for(let a=0;a=Gg)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Gg.toString(16)+" bytes");return e|0}function D7e(e){return+e!=e&&(e=0),je.alloc(+e)}je.isBuffer=function(r){return r!=null&&r._isBuffer===!0&&r!==je.prototype};je.compare=function(r,t){if(Zo(r,Uint8Array)&&(r=je.from(r,r.offset,r.byteLength)),Zo(t,Uint8Array)&&(t=je.from(t,t.offset,t.byteLength)),!je.isBuffer(r)||!je.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(r===t)return 0;let a=r.length,n=t.length;for(let i=0,o=Math.min(a,n);in.length?(je.isBuffer(o)||(o=je.from(o)),o.copy(n,i)):Uint8Array.prototype.set.call(n,o,i);else if(je.isBuffer(o))o.copy(n,i);else throw new TypeError('"list" argument must be an Array of Buffers');i+=o.length}return n};function PX(e,r){if(je.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||Zo(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let t=e.length,a=arguments.length>2&&arguments[2]===!0;if(!a&&t===0)return 0;let n=!1;for(;;)switch(r){case"ascii":case"latin1":case"binary":return t;case"utf8":case"utf-8":return t7(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return t*2;case"hex":return t>>>1;case"base64":return GX(e).length;default:if(n)return a?-1:t7(e).length;r=(""+r).toLowerCase(),n=!0}}je.byteLength=PX;function R7e(e,r,t){let a=!1;if((r===void 0||r<0)&&(r=0),r>this.length||((t===void 0||t>this.length)&&(t=this.length),t<=0)||(t>>>=0,r>>>=0,t<=r))return"";for(e||(e="utf8");;)switch(e){case"hex":return G7e(this,r,t);case"utf8":case"utf-8":return NX(this,r,t);case"ascii":return H7e(this,r,t);case"latin1":case"binary":return U7e(this,r,t);case"base64":return O7e(this,r,t);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return V7e(this,r,t);default:if(a)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),a=!0}}je.prototype._isBuffer=!0;function Yu(e,r,t){let a=e[r];e[r]=e[t],e[t]=a}je.prototype.swap16=function(){let r=this.length;if(r%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tt&&(r+=" ... "),""};qX&&(je.prototype[qX]=je.prototype.inspect);je.prototype.compare=function(r,t,a,n,i){if(Zo(r,Uint8Array)&&(r=je.from(r,r.offset,r.byteLength)),!je.isBuffer(r))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof r);if(t===void 0&&(t=0),a===void 0&&(a=r?r.length:0),n===void 0&&(n=0),i===void 0&&(i=this.length),t<0||a>r.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=a)return 0;if(n>=i)return-1;if(t>=a)return 1;if(t>>>=0,a>>>=0,n>>>=0,i>>>=0,this===r)return 0;let o=i-n,l=a-t,s=Math.min(o,l),u=this.slice(n,i),f=r.slice(t,a);for(let c=0;c2147483647?t=2147483647:t<-2147483648&&(t=-2147483648),t=+t,o7(t)&&(t=n?0:e.length-1),t<0&&(t=e.length+t),t>=e.length){if(n)return-1;t=e.length-1}else if(t<0)if(n)t=0;else return-1;if(typeof r=="string"&&(r=je.from(r,a)),je.isBuffer(r))return r.length===0?-1:LX(e,r,t,a,n);if(typeof r=="number")return r=r&255,typeof Uint8Array.prototype.indexOf=="function"?n?Uint8Array.prototype.indexOf.call(e,r,t):Uint8Array.prototype.lastIndexOf.call(e,r,t):LX(e,[r],t,a,n);throw new TypeError("val must be string, number or Buffer")}function LX(e,r,t,a,n){let i=1,o=e.length,l=r.length;if(a!==void 0&&(a=String(a).toLowerCase(),a==="ucs2"||a==="ucs-2"||a==="utf16le"||a==="utf-16le")){if(e.length<2||r.length<2)return-1;i=2,o/=2,l/=2,t/=2}function s(f,c){return i===1?f[c]:f.readUInt16BE(c*i)}let u;if(n){let f=-1;for(u=t;uo&&(t=o-l),u=t;u>=0;u--){let f=!0;for(let c=0;cn&&(a=n)):a=n;let i=r.length;a>i/2&&(a=i/2);let o;for(o=0;o>>0,isFinite(a)?(a=a>>>0,n===void 0&&(n="utf8")):(n=a,a=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let i=this.length-t;if((a===void 0||a>i)&&(a=i),r.length>0&&(a<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return P7e(this,r,t,a);case"utf8":case"utf-8":return F7e(this,r,t,a);case"ascii":case"latin1":case"binary":return N7e(this,r,t,a);case"base64":return z7e(this,r,t,a);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I7e(this,r,t,a);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}};je.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function O7e(e,r,t){return r===0&&t===e.length?Q6.fromByteArray(e):Q6.fromByteArray(e.slice(r,t))}function NX(e,r,t){t=Math.min(e.length,t);let a=[],n=r;for(;n239?4:i>223?3:i>191?2:1;if(n+l<=t){let s,u,f,c;switch(l){case 1:i<128&&(o=i);break;case 2:s=e[n+1],(s&192)===128&&(c=(i&31)<<6|s&63,c>127&&(o=c));break;case 3:s=e[n+1],u=e[n+2],(s&192)===128&&(u&192)===128&&(c=(i&15)<<12|(s&63)<<6|u&63,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:s=e[n+1],u=e[n+2],f=e[n+3],(s&192)===128&&(u&192)===128&&(f&192)===128&&(c=(i&15)<<18|(s&63)<<12|(u&63)<<6|f&63,c>65535&&c<1114112&&(o=c))}}o===null?(o=65533,l=1):o>65535&&(o-=65536,a.push(o>>>10&1023|55296),o=56320|o&1023),a.push(o),n+=l}return B7e(a)}var CX=4096;function B7e(e){let r=e.length;if(r<=CX)return String.fromCharCode.apply(String,e);let t="",a=0;for(;aa)&&(t=a);let n="";for(let i=r;ia&&(r=a),t<0?(t+=a,t<0&&(t=0)):t>a&&(t=a),tt)throw new RangeError("Trying to access beyond buffer length")}je.prototype.readUintLE=je.prototype.readUIntLE=function(r,t,a){r=r>>>0,t=t>>>0,a||Ga(r,t,this.length);let n=this[r],i=1,o=0;for(;++o>>0,t=t>>>0,a||Ga(r,t,this.length);let n=this[r+--t],i=1;for(;t>0&&(i*=256);)n+=this[r+--t]*i;return n};je.prototype.readUint8=je.prototype.readUInt8=function(r,t){return r=r>>>0,t||Ga(r,1,this.length),this[r]};je.prototype.readUint16LE=je.prototype.readUInt16LE=function(r,t){return r=r>>>0,t||Ga(r,2,this.length),this[r]|this[r+1]<<8};je.prototype.readUint16BE=je.prototype.readUInt16BE=function(r,t){return r=r>>>0,t||Ga(r,2,this.length),this[r]<<8|this[r+1]};je.prototype.readUint32LE=je.prototype.readUInt32LE=function(r,t){return r=r>>>0,t||Ga(r,4,this.length),(this[r]|this[r+1]<<8|this[r+2]<<16)+this[r+3]*16777216};je.prototype.readUint32BE=je.prototype.readUInt32BE=function(r,t){return r=r>>>0,t||Ga(r,4,this.length),this[r]*16777216+(this[r+1]<<16|this[r+2]<<8|this[r+3])};je.prototype.readBigUInt64LE=xs(function(r){r=r>>>0,uv(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&j0(r,this.length-8);let n=t+this[++r]*2**8+this[++r]*2**16+this[++r]*2**24,i=this[++r]+this[++r]*2**8+this[++r]*2**16+a*2**24;return BigInt(n)+(BigInt(i)<>>0,uv(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&j0(r,this.length-8);let n=t*2**24+this[++r]*2**16+this[++r]*2**8+this[++r],i=this[++r]*2**24+this[++r]*2**16+this[++r]*2**8+a;return(BigInt(n)<>>0,t=t>>>0,a||Ga(r,t,this.length);let n=this[r],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n};je.prototype.readIntBE=function(r,t,a){r=r>>>0,t=t>>>0,a||Ga(r,t,this.length);let n=t,i=1,o=this[r+--n];for(;n>0&&(i*=256);)o+=this[r+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o};je.prototype.readInt8=function(r,t){return r=r>>>0,t||Ga(r,1,this.length),this[r]&128?(255-this[r]+1)*-1:this[r]};je.prototype.readInt16LE=function(r,t){r=r>>>0,t||Ga(r,2,this.length);let a=this[r]|this[r+1]<<8;return a&32768?a|4294901760:a};je.prototype.readInt16BE=function(r,t){r=r>>>0,t||Ga(r,2,this.length);let a=this[r+1]|this[r]<<8;return a&32768?a|4294901760:a};je.prototype.readInt32LE=function(r,t){return r=r>>>0,t||Ga(r,4,this.length),this[r]|this[r+1]<<8|this[r+2]<<16|this[r+3]<<24};je.prototype.readInt32BE=function(r,t){return r=r>>>0,t||Ga(r,4,this.length),this[r]<<24|this[r+1]<<16|this[r+2]<<8|this[r+3]};je.prototype.readBigInt64LE=xs(function(r){r=r>>>0,uv(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&j0(r,this.length-8);let n=this[r+4]+this[r+5]*2**8+this[r+6]*2**16+(a<<24);return(BigInt(n)<>>0,uv(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&j0(r,this.length-8);let n=(t<<24)+this[++r]*2**16+this[++r]*2**8+this[++r];return(BigInt(n)<>>0,t||Ga(r,4,this.length),sv.read(this,r,!0,23,4)};je.prototype.readFloatBE=function(r,t){return r=r>>>0,t||Ga(r,4,this.length),sv.read(this,r,!1,23,4)};je.prototype.readDoubleLE=function(r,t){return r=r>>>0,t||Ga(r,8,this.length),sv.read(this,r,!0,52,8)};je.prototype.readDoubleBE=function(r,t){return r=r>>>0,t||Ga(r,8,this.length),sv.read(this,r,!1,52,8)};function Hn(e,r,t,a,n,i){if(!je.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(r>n||re.length)throw new RangeError("Index out of range")}je.prototype.writeUintLE=je.prototype.writeUIntLE=function(r,t,a,n){if(r=+r,t=t>>>0,a=a>>>0,!n){let l=Math.pow(2,8*a)-1;Hn(this,r,t,a,l,0)}let i=1,o=0;for(this[t]=r&255;++o>>0,a=a>>>0,!n){let l=Math.pow(2,8*a)-1;Hn(this,r,t,a,l,0)}let i=a-1,o=1;for(this[t+i]=r&255;--i>=0&&(o*=256);)this[t+i]=r/o&255;return t+a};je.prototype.writeUint8=je.prototype.writeUInt8=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,1,255,0),this[t]=r&255,t+1};je.prototype.writeUint16LE=je.prototype.writeUInt16LE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,2,65535,0),this[t]=r&255,this[t+1]=r>>>8,t+2};je.prototype.writeUint16BE=je.prototype.writeUInt16BE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,2,65535,0),this[t]=r>>>8,this[t+1]=r&255,t+2};je.prototype.writeUint32LE=je.prototype.writeUInt32LE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,4,4294967295,0),this[t+3]=r>>>24,this[t+2]=r>>>16,this[t+1]=r>>>8,this[t]=r&255,t+4};je.prototype.writeUint32BE=je.prototype.writeUInt32BE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,4,4294967295,0),this[t]=r>>>24,this[t+1]=r>>>16,this[t+2]=r>>>8,this[t+3]=r&255,t+4};function zX(e,r,t,a,n){UX(r,a,n,e,t,7);let i=Number(r&BigInt(4294967295));e[t++]=i,i=i>>8,e[t++]=i,i=i>>8,e[t++]=i,i=i>>8,e[t++]=i;let o=Number(r>>BigInt(32)&BigInt(4294967295));return e[t++]=o,o=o>>8,e[t++]=o,o=o>>8,e[t++]=o,o=o>>8,e[t++]=o,t}function IX(e,r,t,a,n){UX(r,a,n,e,t,7);let i=Number(r&BigInt(4294967295));e[t+7]=i,i=i>>8,e[t+6]=i,i=i>>8,e[t+5]=i,i=i>>8,e[t+4]=i;let o=Number(r>>BigInt(32)&BigInt(4294967295));return e[t+3]=o,o=o>>8,e[t+2]=o,o=o>>8,e[t+1]=o,o=o>>8,e[t]=o,t+8}je.prototype.writeBigUInt64LE=xs(function(r,t=0){return zX(this,r,t,BigInt(0),BigInt("0xffffffffffffffff"))});je.prototype.writeBigUInt64BE=xs(function(r,t=0){return IX(this,r,t,BigInt(0),BigInt("0xffffffffffffffff"))});je.prototype.writeIntLE=function(r,t,a,n){if(r=+r,t=t>>>0,!n){let s=Math.pow(2,8*a-1);Hn(this,r,t,a,s-1,-s)}let i=0,o=1,l=0;for(this[t]=r&255;++i>0)-l&255;return t+a};je.prototype.writeIntBE=function(r,t,a,n){if(r=+r,t=t>>>0,!n){let s=Math.pow(2,8*a-1);Hn(this,r,t,a,s-1,-s)}let i=a-1,o=1,l=0;for(this[t+i]=r&255;--i>=0&&(o*=256);)r<0&&l===0&&this[t+i+1]!==0&&(l=1),this[t+i]=(r/o>>0)-l&255;return t+a};je.prototype.writeInt8=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,1,127,-128),r<0&&(r=255+r+1),this[t]=r&255,t+1};je.prototype.writeInt16LE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,2,32767,-32768),this[t]=r&255,this[t+1]=r>>>8,t+2};je.prototype.writeInt16BE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,2,32767,-32768),this[t]=r>>>8,this[t+1]=r&255,t+2};je.prototype.writeInt32LE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,4,2147483647,-2147483648),this[t]=r&255,this[t+1]=r>>>8,this[t+2]=r>>>16,this[t+3]=r>>>24,t+4};je.prototype.writeInt32BE=function(r,t,a){return r=+r,t=t>>>0,a||Hn(this,r,t,4,2147483647,-2147483648),r<0&&(r=4294967295+r+1),this[t]=r>>>24,this[t+1]=r>>>16,this[t+2]=r>>>8,this[t+3]=r&255,t+4};je.prototype.writeBigInt64LE=xs(function(r,t=0){return zX(this,r,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});je.prototype.writeBigInt64BE=xs(function(r,t=0){return IX(this,r,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function OX(e,r,t,a,n,i){if(t+a>e.length)throw new RangeError("Index out of range");if(t<0)throw new RangeError("Index out of range")}function BX(e,r,t,a,n){return r=+r,t=t>>>0,n||OX(e,r,t,4,34028234663852886e22,-34028234663852886e22),sv.write(e,r,t,a,23,4),t+4}je.prototype.writeFloatLE=function(r,t,a){return BX(this,r,t,!0,a)};je.prototype.writeFloatBE=function(r,t,a){return BX(this,r,t,!1,a)};function HX(e,r,t,a,n){return r=+r,t=t>>>0,n||OX(e,r,t,8,17976931348623157e292,-17976931348623157e292),sv.write(e,r,t,a,52,8),t+8}je.prototype.writeDoubleLE=function(r,t,a){return HX(this,r,t,!0,a)};je.prototype.writeDoubleBE=function(r,t,a){return HX(this,r,t,!1,a)};je.prototype.copy=function(r,t,a,n){if(!je.isBuffer(r))throw new TypeError("argument should be a Buffer");if(a||(a=0),!n&&n!==0&&(n=this.length),t>=r.length&&(t=r.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),r.length-t>>0,a=a===void 0?this.length:a>>>0,r||(r=0);let i;if(typeof r=="number")for(i=t;i2**32?n=EX(String(t)):typeof t=="bigint"&&(n=String(t),(t>BigInt(2)**BigInt(32)||t<-(BigInt(2)**BigInt(32)))&&(n=EX(n)),n+="n"),a+=` It must be ${r}. Received ${n}`,a},RangeError);function EX(e){let r="",t=e.length,a=e[0]==="-"?1:0;for(;t>=a+4;t-=3)r=`_${e.slice(t-3,t)}${r}`;return`${e.slice(0,t)}${r}`}function Y7e(e,r,t){uv(r,"offset"),(e[r]===void 0||e[r+t]===void 0)&&j0(r,e.length-(t+1))}function UX(e,r,t,a,n,i){if(e>t||e3?r===0||r===BigInt(0)?l=`>= 0${o} and < 2${o} ** ${(i+1)*8}${o}`:l=`>= -(2${o} ** ${(i+1)*8-1}${o}) and < 2 ** ${(i+1)*8-1}${o}`:l=`>= ${r}${o} and <= ${t}${o}`,new lv.ERR_OUT_OF_RANGE("value",l,e)}Y7e(a,n,i)}function uv(e,r){if(typeof e!="number")throw new lv.ERR_INVALID_ARG_TYPE(r,"number",e)}function j0(e,r,t){throw Math.floor(e)!==e?(uv(e,t),new lv.ERR_OUT_OF_RANGE(t||"offset","an integer",e)):r<0?new lv.ERR_BUFFER_OUT_OF_BOUNDS:new lv.ERR_OUT_OF_RANGE(t||"offset",`>= ${t?1:0} and <= ${r}`,e)}var W7e=/[^+/0-9A-Za-z-_]/g;function j7e(e){if(e=e.split("=")[0],e=e.trim().replace(W7e,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function t7(e,r){r=r||1/0;let t,a=e.length,n=null,i=[];for(let o=0;o55295&&t<57344){if(!n){if(t>56319){(r-=3)>-1&&i.push(239,191,189);continue}else if(o+1===a){(r-=3)>-1&&i.push(239,191,189);continue}n=t;continue}if(t<56320){(r-=3)>-1&&i.push(239,191,189),n=t;continue}t=(n-55296<<10|t-56320)+65536}else n&&(r-=3)>-1&&i.push(239,191,189);if(n=null,t<128){if((r-=1)<0)break;i.push(t)}else if(t<2048){if((r-=2)<0)break;i.push(t>>6|192,t&63|128)}else if(t<65536){if((r-=3)<0)break;i.push(t>>12|224,t>>6&63|128,t&63|128)}else if(t<1114112){if((r-=4)<0)break;i.push(t>>18|240,t>>12&63|128,t>>6&63|128,t&63|128)}else throw new Error("Invalid code point")}return i}function Z7e(e){let r=[];for(let t=0;t>8,n=t%256,i.push(n),i.push(a);return i}function GX(e){return Q6.toByteArray(j7e(e))}function Vg(e,r,t,a){let n;for(n=0;n=r.length||n>=e.length);++n)r[n+t]=e[n];return n}function Zo(e,r){return e instanceof r||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===r.name}function o7(e){return e!==e}var J7e=function(){let e="0123456789abcdef",r=new Array(256);for(let t=0;t<16;++t){let a=t*16;for(let n=0;n<16;++n)r[a+n]=e[t]+e[n]}return r}();function xs(e){return typeof BigInt=="undefined"?$7e:e}function $7e(){throw new Error("BigInt not supported")}});var Yg=N((MOe,VX)=>{"use strict";VX.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var r={},t=Symbol("test"),a=Object(t);if(typeof t=="string"||Object.prototype.toString.call(t)!=="[object Symbol]"||Object.prototype.toString.call(a)!=="[object Symbol]")return!1;var n=42;r[t]=n;for(var i in r)return!1;if(typeof Object.keys=="function"&&Object.keys(r).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(r).length!==0)return!1;var o=Object.getOwnPropertySymbols(r);if(o.length!==1||o[0]!==t||!Object.prototype.propertyIsEnumerable.call(r,t))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var l=Object.getOwnPropertyDescriptor(r,t);if(l.value!==n||l.enumerable!==!0)return!1}return!0}});var Z0=N((kOe,YX)=>{"use strict";var K7e=Yg();YX.exports=function(){return K7e()&&!!Symbol.toStringTag}});var l7=N((SOe,WX)=>{"use strict";WX.exports=Object});var ZX=N((qOe,jX)=>{"use strict";jX.exports=Error});var JX=N((LOe,XX)=>{"use strict";XX.exports=EvalError});var KX=N((COe,$X)=>{"use strict";$X.exports=RangeError});var eJ=N((EOe,QX)=>{"use strict";QX.exports=ReferenceError});var s7=N((DOe,rJ)=>{"use strict";rJ.exports=SyntaxError});var vv=N((ROe,tJ)=>{"use strict";tJ.exports=TypeError});var nJ=N((POe,aJ)=>{"use strict";aJ.exports=URIError});var oJ=N((FOe,iJ)=>{"use strict";iJ.exports=Math.abs});var sJ=N((NOe,lJ)=>{"use strict";lJ.exports=Math.floor});var fJ=N((zOe,uJ)=>{"use strict";uJ.exports=Math.max});var vJ=N((IOe,cJ)=>{"use strict";cJ.exports=Math.min});var dJ=N((OOe,hJ)=>{"use strict";hJ.exports=Math.pow});var yJ=N((BOe,pJ)=>{"use strict";pJ.exports=Math.round});var gJ=N((HOe,mJ)=>{"use strict";mJ.exports=Number.isNaN||function(r){return r!==r}});var xJ=N((UOe,bJ)=>{"use strict";var Q7e=gJ();bJ.exports=function(r){return Q7e(r)||r===0?r:r<0?-1:1}});var wJ=N((GOe,_J)=>{"use strict";_J.exports=Object.getOwnPropertyDescriptor});var Wu=N((VOe,TJ)=>{"use strict";var Wg=wJ();if(Wg)try{Wg([],"length")}catch(e){Wg=null}TJ.exports=Wg});var X0=N((YOe,AJ)=>{"use strict";var jg=Object.defineProperty||!1;if(jg)try{jg({},"a",{value:1})}catch(e){jg=!1}AJ.exports=jg});var SJ=N((WOe,kJ)=>{"use strict";var MJ=typeof Symbol!="undefined"&&Symbol,eTe=Yg();kJ.exports=function(){return typeof MJ!="function"||typeof Symbol!="function"||typeof MJ("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:eTe()}});var u7=N((jOe,qJ)=>{"use strict";qJ.exports=typeof Reflect!="undefined"&&Reflect.getPrototypeOf||null});var f7=N((ZOe,LJ)=>{"use strict";var rTe=l7();LJ.exports=rTe.getPrototypeOf||null});var DJ=N((XOe,EJ)=>{"use strict";var tTe="Function.prototype.bind called on incompatible ",aTe=Object.prototype.toString,nTe=Math.max,iTe="[object Function]",CJ=function(r,t){for(var a=[],n=0;n{"use strict";var sTe=DJ();RJ.exports=Function.prototype.bind||sTe});var Zg=N(($Oe,PJ)=>{"use strict";PJ.exports=Function.prototype.call});var c7=N((KOe,FJ)=>{"use strict";FJ.exports=Function.prototype.apply});var zJ=N((QOe,NJ)=>{"use strict";NJ.exports=typeof Reflect!="undefined"&&Reflect&&Reflect.apply});var OJ=N((eBe,IJ)=>{"use strict";var uTe=hv(),fTe=c7(),cTe=Zg(),vTe=zJ();IJ.exports=vTe||uTe.call(cTe,fTe)});var HJ=N((rBe,BJ)=>{"use strict";var hTe=hv(),dTe=vv(),pTe=Zg(),yTe=OJ();BJ.exports=function(r){if(r.length<1||typeof r[0]!="function")throw new dTe("a function is required");return yTe(hTe,pTe,r)}});var jJ=N((tBe,WJ)=>{"use strict";var mTe=HJ(),UJ=Wu(),VJ;try{VJ=[].__proto__===Array.prototype}catch(e){if(!e||typeof e!="object"||!("code"in e)||e.code!=="ERR_PROTO_ACCESS")throw e}var v7=!!VJ&&UJ&&UJ(Object.prototype,"__proto__"),YJ=Object,GJ=YJ.getPrototypeOf;WJ.exports=v7&&typeof v7.get=="function"?mTe([v7.get]):typeof GJ=="function"?function(r){return GJ(r==null?r:YJ(r))}:!1});var KJ=N((aBe,$J)=>{"use strict";var ZJ=u7(),XJ=f7(),JJ=jJ();$J.exports=ZJ?function(r){return ZJ(r)}:XJ?function(r){if(!r||typeof r!="object"&&typeof r!="function")throw new TypeError("getProto: not an object");return XJ(r)}:JJ?function(r){return JJ(r)}:null});var e$=N((nBe,QJ)=>{"use strict";var gTe=Function.prototype.call,bTe=Object.prototype.hasOwnProperty,xTe=hv();QJ.exports=xTe.call(gTe,bTe)});var $g=N((iBe,o$)=>{"use strict";var ot,_Te=l7(),wTe=ZX(),TTe=JX(),ATe=KX(),MTe=eJ(),mv=s7(),yv=vv(),kTe=nJ(),STe=oJ(),qTe=sJ(),LTe=fJ(),CTe=vJ(),ETe=dJ(),DTe=yJ(),RTe=xJ(),n$=Function,h7=function(e){try{return n$('"use strict"; return ('+e+").constructor;")()}catch(r){}},J0=Wu(),PTe=X0(),d7=function(){throw new yv},FTe=J0?function(){try{return arguments.callee,d7}catch(e){try{return J0(arguments,"callee").get}catch(r){return d7}}}():d7,dv=SJ()(),Va=KJ(),NTe=f7(),zTe=u7(),i$=c7(),$0=Zg(),pv={},ITe=typeof Uint8Array=="undefined"||!Va?ot:Va(Uint8Array),ju={__proto__:null,"%AggregateError%":typeof AggregateError=="undefined"?ot:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer=="undefined"?ot:ArrayBuffer,"%ArrayIteratorPrototype%":dv&&Va?Va([][Symbol.iterator]()):ot,"%AsyncFromSyncIteratorPrototype%":ot,"%AsyncFunction%":pv,"%AsyncGenerator%":pv,"%AsyncGeneratorFunction%":pv,"%AsyncIteratorPrototype%":pv,"%Atomics%":typeof Atomics=="undefined"?ot:Atomics,"%BigInt%":typeof BigInt=="undefined"?ot:BigInt,"%BigInt64Array%":typeof BigInt64Array=="undefined"?ot:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array=="undefined"?ot:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView=="undefined"?ot:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":wTe,"%eval%":eval,"%EvalError%":TTe,"%Float16Array%":typeof Float16Array=="undefined"?ot:Float16Array,"%Float32Array%":typeof Float32Array=="undefined"?ot:Float32Array,"%Float64Array%":typeof Float64Array=="undefined"?ot:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry=="undefined"?ot:FinalizationRegistry,"%Function%":n$,"%GeneratorFunction%":pv,"%Int8Array%":typeof Int8Array=="undefined"?ot:Int8Array,"%Int16Array%":typeof Int16Array=="undefined"?ot:Int16Array,"%Int32Array%":typeof Int32Array=="undefined"?ot:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":dv&&Va?Va(Va([][Symbol.iterator]())):ot,"%JSON%":typeof JSON=="object"?JSON:ot,"%Map%":typeof Map=="undefined"?ot:Map,"%MapIteratorPrototype%":typeof Map=="undefined"||!dv||!Va?ot:Va(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":_Te,"%Object.getOwnPropertyDescriptor%":J0,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise=="undefined"?ot:Promise,"%Proxy%":typeof Proxy=="undefined"?ot:Proxy,"%RangeError%":ATe,"%ReferenceError%":MTe,"%Reflect%":typeof Reflect=="undefined"?ot:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set=="undefined"?ot:Set,"%SetIteratorPrototype%":typeof Set=="undefined"||!dv||!Va?ot:Va(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer=="undefined"?ot:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":dv&&Va?Va(""[Symbol.iterator]()):ot,"%Symbol%":dv?Symbol:ot,"%SyntaxError%":mv,"%ThrowTypeError%":FTe,"%TypedArray%":ITe,"%TypeError%":yv,"%Uint8Array%":typeof Uint8Array=="undefined"?ot:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray=="undefined"?ot:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array=="undefined"?ot:Uint16Array,"%Uint32Array%":typeof Uint32Array=="undefined"?ot:Uint32Array,"%URIError%":kTe,"%WeakMap%":typeof WeakMap=="undefined"?ot:WeakMap,"%WeakRef%":typeof WeakRef=="undefined"?ot:WeakRef,"%WeakSet%":typeof WeakSet=="undefined"?ot:WeakSet,"%Function.prototype.call%":$0,"%Function.prototype.apply%":i$,"%Object.defineProperty%":PTe,"%Object.getPrototypeOf%":NTe,"%Math.abs%":STe,"%Math.floor%":qTe,"%Math.max%":LTe,"%Math.min%":CTe,"%Math.pow%":ETe,"%Math.round%":DTe,"%Math.sign%":RTe,"%Reflect.getPrototypeOf%":zTe};if(Va)try{null.error}catch(e){r$=Va(Va(e)),ju["%Error.prototype%"]=r$}var r$,OTe=function e(r){var t;if(r==="%AsyncFunction%")t=h7("async function () {}");else if(r==="%GeneratorFunction%")t=h7("function* () {}");else if(r==="%AsyncGeneratorFunction%")t=h7("async function* () {}");else if(r==="%AsyncGenerator%"){var a=e("%AsyncGeneratorFunction%");a&&(t=a.prototype)}else if(r==="%AsyncIteratorPrototype%"){var n=e("%AsyncGenerator%");n&&Va&&(t=Va(n.prototype))}return ju[r]=t,t},t$={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},K0=hv(),Xg=e$(),BTe=K0.call($0,Array.prototype.concat),HTe=K0.call(i$,Array.prototype.splice),a$=K0.call($0,String.prototype.replace),Jg=K0.call($0,String.prototype.slice),UTe=K0.call($0,RegExp.prototype.exec),GTe=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,VTe=/\\(\\)?/g,YTe=function(r){var t=Jg(r,0,1),a=Jg(r,-1);if(t==="%"&&a!=="%")throw new mv("invalid intrinsic syntax, expected closing `%`");if(a==="%"&&t!=="%")throw new mv("invalid intrinsic syntax, expected opening `%`");var n=[];return a$(r,GTe,function(i,o,l,s){n[n.length]=l?a$(s,VTe,"$1"):o||i}),n},WTe=function(r,t){var a=r,n;if(Xg(t$,a)&&(n=t$[a],a="%"+n[0]+"%"),Xg(ju,a)){var i=ju[a];if(i===pv&&(i=OTe(a)),typeof i=="undefined"&&!t)throw new yv("intrinsic "+r+" exists, but is not available. Please file an issue!");return{alias:n,name:a,value:i}}throw new mv("intrinsic "+r+" does not exist!")};o$.exports=function(r,t){if(typeof r!="string"||r.length===0)throw new yv("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof t!="boolean")throw new yv('"allowMissing" argument must be a boolean');if(UTe(/^%?[^%]*%?$/,r)===null)throw new mv("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var a=YTe(r),n=a.length>0?a[0]:"",i=WTe("%"+n+"%",t),o=i.name,l=i.value,s=!1,u=i.alias;u&&(n=u[0],HTe(a,BTe([0,1],u)));for(var f=1,c=!0;f=a.length){var y=J0(l,v);c=!!y,c&&"get"in y&&!("originalValue"in y.get)?l=y.get:l=l[v]}else c=Xg(l,v),l=l[v];c&&!s&&(ju[o]=l)}}return l}});var f$=N((oBe,u$)=>{"use strict";var l$=X0(),jTe=s7(),gv=vv(),s$=Wu();u$.exports=function(r,t,a){if(!r||typeof r!="object"&&typeof r!="function")throw new gv("`obj` must be an object or a function`");if(typeof t!="string"&&typeof t!="symbol")throw new gv("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new gv("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new gv("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new gv("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new gv("`loose`, if provided, must be a boolean");var n=arguments.length>3?arguments[3]:null,i=arguments.length>4?arguments[4]:null,o=arguments.length>5?arguments[5]:null,l=arguments.length>6?arguments[6]:!1,s=!!s$&&s$(r,t);if(l$)l$(r,t,{configurable:o===null&&s?s.configurable:!o,enumerable:n===null&&s?s.enumerable:!n,value:a,writable:i===null&&s?s.writable:!i});else if(l||!n&&!i&&!o)r[t]=a;else throw new jTe("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var y7=N((lBe,v$)=>{"use strict";var p7=X0(),c$=function(){return!!p7};c$.hasArrayLengthDefineBug=function(){if(!p7)return null;try{return p7([],"length",{value:1}).length!==1}catch(r){return!0}};v$.exports=c$});var m$=N((sBe,y$)=>{"use strict";var ZTe=$g(),h$=f$(),XTe=y7()(),d$=Wu(),p$=vv(),JTe=ZTe("%Math.floor%");y$.exports=function(r,t){if(typeof r!="function")throw new p$("`fn` is not a function");if(typeof t!="number"||t<0||t>4294967295||JTe(t)!==t)throw new p$("`length` must be a positive 32-bit integer");var a=arguments.length>2&&!!arguments[2],n=!0,i=!0;if("length"in r&&d$){var o=d$(r,"length");o&&!o.configurable&&(n=!1),o&&!o.writable&&(i=!1)}return(n||i||!a)&&(XTe?h$(r,"length",t,!0,!0):h$(r,"length",t)),r}});var Q0=N((uBe,Kg)=>{"use strict";var m7=hv(),Qg=$g(),$Te=m$(),KTe=vv(),x$=Qg("%Function.prototype.apply%"),_$=Qg("%Function.prototype.call%"),w$=Qg("%Reflect.apply%",!0)||m7.call(_$,x$),g$=X0(),QTe=Qg("%Math.max%");Kg.exports=function(r){if(typeof r!="function")throw new KTe("a function is required");var t=w$(m7,_$,arguments);return $Te(t,1+QTe(0,r.length-(arguments.length-1)),!0)};var b$=function(){return w$(m7,x$,arguments)};g$?g$(Kg.exports,"apply",{value:b$}):Kg.exports.apply=b$});var bv=N((fBe,M$)=>{"use strict";var T$=$g(),A$=Q0(),e8e=A$(T$("String.prototype.indexOf"));M$.exports=function(r,t){var a=T$(r,!!t);return typeof a=="function"&&e8e(r,".prototype.")>-1?A$(a):a}});var q$=N((cBe,S$)=>{"use strict";var r8e=Z0()(),t8e=bv(),g7=t8e("Object.prototype.toString"),e2=function(r){return r8e&&r&&typeof r=="object"&&Symbol.toStringTag in r?!1:g7(r)==="[object Arguments]"},k$=function(r){return e2(r)?!0:r!==null&&typeof r=="object"&&typeof r.length=="number"&&r.length>=0&&g7(r)!=="[object Array]"&&g7(r.callee)==="[object Function]"},a8e=function(){return e2(arguments)}();e2.isLegacyArguments=k$;S$.exports=a8e?e2:k$});var E$=N((vBe,C$)=>{"use strict";var n8e=Object.prototype.toString,i8e=Function.prototype.toString,o8e=/^\s*(?:function)?\*/,L$=Z0()(),b7=Object.getPrototypeOf,l8e=function(){if(!L$)return!1;try{return Function("return function*() {}")()}catch(e){}},x7;C$.exports=function(r){if(typeof r!="function")return!1;if(o8e.test(i8e.call(r)))return!0;if(!L$){var t=n8e.call(r);return t==="[object GeneratorFunction]"}if(!b7)return!1;if(typeof x7=="undefined"){var a=l8e();x7=a?b7(a):!1}return b7(r)===x7}});var F$=N((hBe,P$)=>{"use strict";var R$=Function.prototype.toString,xv=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,w7,r2;if(typeof xv=="function"&&typeof Object.defineProperty=="function")try{w7=Object.defineProperty({},"length",{get:function(){throw r2}}),r2={},xv(function(){throw 42},null,w7)}catch(e){e!==r2&&(xv=null)}else xv=null;var s8e=/^\s*class\b/,T7=function(r){try{var t=R$.call(r);return s8e.test(t)}catch(a){return!1}},_7=function(r){try{return T7(r)?!1:(R$.call(r),!0)}catch(t){return!1}},t2=Object.prototype.toString,u8e="[object Object]",f8e="[object Function]",c8e="[object GeneratorFunction]",v8e="[object HTMLAllCollection]",h8e="[object HTML document.all class]",d8e="[object HTMLCollection]",p8e=typeof Symbol=="function"&&!!Symbol.toStringTag,y8e=!(0 in[,]),A7=function(){return!1};typeof document=="object"&&(D$=document.all,t2.call(D$)===t2.call(document.all)&&(A7=function(r){if((y8e||!r)&&(typeof r=="undefined"||typeof r=="object"))try{var t=t2.call(r);return(t===v8e||t===h8e||t===d8e||t===u8e)&&r("")==null}catch(a){}return!1}));var D$;P$.exports=xv?function(r){if(A7(r))return!0;if(!r||typeof r!="function"&&typeof r!="object")return!1;try{xv(r,null,w7)}catch(t){if(t!==r2)return!1}return!T7(r)&&_7(r)}:function(r){if(A7(r))return!0;if(!r||typeof r!="function"&&typeof r!="object")return!1;if(p8e)return _7(r);if(T7(r))return!1;var t=t2.call(r);return t!==f8e&&t!==c8e&&!/^\[object HTML/.test(t)?!1:_7(r)}});var M7=N((dBe,z$)=>{"use strict";var m8e=F$(),g8e=Object.prototype.toString,N$=Object.prototype.hasOwnProperty,b8e=function(r,t,a){for(var n=0,i=r.length;n=3&&(n=a),g8e.call(r)==="[object Array]"?b8e(r,t,n):typeof r=="string"?x8e(r,t,n):_8e(r,t,n)};z$.exports=w8e});var S7=N((pBe,I$)=>{"use strict";var k7=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],T8e=typeof globalThis=="undefined"?window:globalThis;I$.exports=function(){for(var r=[],t=0;t{"use strict";var n2=M7(),A8e=S7(),O$=Q0(),C7=bv(),a2=Wu(),M8e=C7("Object.prototype.toString"),H$=Z0()(),B$=typeof globalThis=="undefined"?window:globalThis,L7=A8e(),E7=C7("String.prototype.slice"),q7=Object.getPrototypeOf,k8e=C7("Array.prototype.indexOf",!0)||function(r,t){for(var a=0;a-1?t:t!=="Object"?!1:q8e(r)}return a2?S8e(r):null}});var X$=N((mBe,Z$)=>{"use strict";var V$=M7(),L8e=S7(),R7=bv(),C8e=R7("Object.prototype.toString"),Y$=Z0()(),o2=Wu(),E8e=typeof globalThis=="undefined"?window:globalThis,W$=L8e(),D8e=R7("Array.prototype.indexOf",!0)||function(r,t){for(var a=0;a-1}return o2?P8e(r):!1}});var N7=N(lt=>{"use strict";var F8e=q$(),N8e=E$(),go=G$(),J$=X$();function _v(e){return e.call.bind(e)}var $$=typeof BigInt!="undefined",K$=typeof Symbol!="undefined",Ii=_v(Object.prototype.toString),z8e=_v(Number.prototype.valueOf),I8e=_v(String.prototype.valueOf),O8e=_v(Boolean.prototype.valueOf);$$&&(Q$=_v(BigInt.prototype.valueOf));var Q$;K$&&(eK=_v(Symbol.prototype.valueOf));var eK;function rd(e,r){if(typeof e!="object")return!1;try{return r(e),!0}catch(t){return!1}}lt.isArgumentsObject=F8e;lt.isGeneratorFunction=N8e;lt.isTypedArray=J$;function B8e(e){return typeof Promise!="undefined"&&e instanceof Promise||e!==null&&typeof e=="object"&&typeof e.then=="function"&&typeof e.catch=="function"}lt.isPromise=B8e;function H8e(e){return typeof ArrayBuffer!="undefined"&&ArrayBuffer.isView?ArrayBuffer.isView(e):J$(e)||tK(e)}lt.isArrayBufferView=H8e;function U8e(e){return go(e)==="Uint8Array"}lt.isUint8Array=U8e;function G8e(e){return go(e)==="Uint8ClampedArray"}lt.isUint8ClampedArray=G8e;function V8e(e){return go(e)==="Uint16Array"}lt.isUint16Array=V8e;function Y8e(e){return go(e)==="Uint32Array"}lt.isUint32Array=Y8e;function W8e(e){return go(e)==="Int8Array"}lt.isInt8Array=W8e;function j8e(e){return go(e)==="Int16Array"}lt.isInt16Array=j8e;function Z8e(e){return go(e)==="Int32Array"}lt.isInt32Array=Z8e;function X8e(e){return go(e)==="Float32Array"}lt.isFloat32Array=X8e;function J8e(e){return go(e)==="Float64Array"}lt.isFloat64Array=J8e;function $8e(e){return go(e)==="BigInt64Array"}lt.isBigInt64Array=$8e;function K8e(e){return go(e)==="BigUint64Array"}lt.isBigUint64Array=K8e;function l2(e){return Ii(e)==="[object Map]"}l2.working=typeof Map!="undefined"&&l2(new Map);function Q8e(e){return typeof Map=="undefined"?!1:l2.working?l2(e):e instanceof Map}lt.isMap=Q8e;function s2(e){return Ii(e)==="[object Set]"}s2.working=typeof Set!="undefined"&&s2(new Set);function eAe(e){return typeof Set=="undefined"?!1:s2.working?s2(e):e instanceof Set}lt.isSet=eAe;function u2(e){return Ii(e)==="[object WeakMap]"}u2.working=typeof WeakMap!="undefined"&&u2(new WeakMap);function rAe(e){return typeof WeakMap=="undefined"?!1:u2.working?u2(e):e instanceof WeakMap}lt.isWeakMap=rAe;function F7(e){return Ii(e)==="[object WeakSet]"}F7.working=typeof WeakSet!="undefined"&&F7(new WeakSet);function tAe(e){return F7(e)}lt.isWeakSet=tAe;function f2(e){return Ii(e)==="[object ArrayBuffer]"}f2.working=typeof ArrayBuffer!="undefined"&&f2(new ArrayBuffer);function rK(e){return typeof ArrayBuffer=="undefined"?!1:f2.working?f2(e):e instanceof ArrayBuffer}lt.isArrayBuffer=rK;function c2(e){return Ii(e)==="[object DataView]"}c2.working=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined"&&c2(new DataView(new ArrayBuffer(1),0,1));function tK(e){return typeof DataView=="undefined"?!1:c2.working?c2(e):e instanceof DataView}lt.isDataView=tK;var P7=typeof SharedArrayBuffer!="undefined"?SharedArrayBuffer:void 0;function ed(e){return Ii(e)==="[object SharedArrayBuffer]"}function aK(e){return typeof P7=="undefined"?!1:(typeof ed.working=="undefined"&&(ed.working=ed(new P7)),ed.working?ed(e):e instanceof P7)}lt.isSharedArrayBuffer=aK;function aAe(e){return Ii(e)==="[object AsyncFunction]"}lt.isAsyncFunction=aAe;function nAe(e){return Ii(e)==="[object Map Iterator]"}lt.isMapIterator=nAe;function iAe(e){return Ii(e)==="[object Set Iterator]"}lt.isSetIterator=iAe;function oAe(e){return Ii(e)==="[object Generator]"}lt.isGeneratorObject=oAe;function lAe(e){return Ii(e)==="[object WebAssembly.Module]"}lt.isWebAssemblyCompiledModule=lAe;function nK(e){return rd(e,z8e)}lt.isNumberObject=nK;function iK(e){return rd(e,I8e)}lt.isStringObject=iK;function oK(e){return rd(e,O8e)}lt.isBooleanObject=oK;function lK(e){return $$&&rd(e,Q$)}lt.isBigIntObject=lK;function sK(e){return K$&&rd(e,eK)}lt.isSymbolObject=sK;function sAe(e){return nK(e)||iK(e)||oK(e)||lK(e)||sK(e)}lt.isBoxedPrimitive=sAe;function uAe(e){return typeof Uint8Array!="undefined"&&(rK(e)||aK(e))}lt.isAnyArrayBuffer=uAe;["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(e){Object.defineProperty(lt,e,{enumerable:!1,value:function(){throw new Error(e+" is not supported in userland")}})})});var z7=N((bBe,uK)=>{uK.exports=function(r){return r&&typeof r=="object"&&typeof r.copy=="function"&&typeof r.fill=="function"&&typeof r.readUInt8=="function"}});var G7=N(st=>{var fK=Object.getOwnPropertyDescriptors||function(r){for(var t=Object.keys(r),a={},n=0;n=n)return l;switch(l){case"%s":return String(a[t++]);case"%d":return Number(a[t++]);case"%j":try{return JSON.stringify(a[t++])}catch(s){return"[Circular]"}default:return l}}),o=a[t];t=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),H7(r)?t.showHidden=r:r&&st._extend(t,r),Xu(t.showHidden)&&(t.showHidden=!1),Xu(t.depth)&&(t.depth=2),Xu(t.colors)&&(t.colors=!1),Xu(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=cAe),p2(t,e,t.depth)}st.inspect=_s;_s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};_s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function cAe(e,r){var t=_s.styles[r];return t?"\x1B["+_s.colors[t][0]+"m"+e+"\x1B["+_s.colors[t][1]+"m":e}function vAe(e,r){return e}function hAe(e){var r={};return e.forEach(function(t,a){r[t]=!0}),r}function p2(e,r,t){if(e.customInspect&&r&&d2(r.inspect)&&r.inspect!==st.inspect&&!(r.constructor&&r.constructor.prototype===r)){var a=r.inspect(t,e);return g2(a)||(a=p2(e,a,t)),a}var n=dAe(e,r);if(n)return n;var i=Object.keys(r),o=hAe(i);if(e.showHidden&&(i=Object.getOwnPropertyNames(r)),ad(r)&&(i.indexOf("message")>=0||i.indexOf("description")>=0))return I7(r);if(i.length===0){if(d2(r)){var l=r.name?": "+r.name:"";return e.stylize("[Function"+l+"]","special")}if(td(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(y2(r))return e.stylize(Date.prototype.toString.call(r),"date");if(ad(r))return I7(r)}var s="",u=!1,f=["{","}"];if(vK(r)&&(u=!0,f=["[","]"]),d2(r)){var c=r.name?": "+r.name:"";s=" [Function"+c+"]"}if(td(r)&&(s=" "+RegExp.prototype.toString.call(r)),y2(r)&&(s=" "+Date.prototype.toUTCString.call(r)),ad(r)&&(s=" "+I7(r)),i.length===0&&(!u||r.length==0))return f[0]+s+f[1];if(t<0)return td(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special");e.seen.push(r);var v;return u?v=pAe(e,r,t,o,i):v=i.map(function(d){return B7(e,r,t,o,d,u)}),e.seen.pop(),yAe(v,s,f)}function dAe(e,r){if(Xu(r))return e.stylize("undefined","undefined");if(g2(r)){var t="'"+JSON.stringify(r).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(t,"string")}if(hK(r))return e.stylize(""+r,"number");if(H7(r))return e.stylize(""+r,"boolean");if(m2(r))return e.stylize("null","null")}function I7(e){return"["+Error.prototype.toString.call(e)+"]"}function pAe(e,r,t,a,n){for(var i=[],o=0,l=r.length;o-1&&(i?l=l.split(` `).map(function(u){return" "+u}).join(` `).slice(2):l=` `+l.split(` `).map(function(u){return" "+u}).join(` -`))):l=e.stylize("[Circular]","special")),Xu(o)){if(i&&n.match(/^\d+$/))return l;o=JSON.stringify(""+n),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+l}function pAe(e,r,t){var a=0,n=e.reduce(function(i,o){return a++,o.indexOf(` +`))):l=e.stylize("[Circular]","special")),Xu(o)){if(i&&n.match(/^\d+$/))return l;o=JSON.stringify(""+n),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+l}function yAe(e,r,t){var a=0,n=e.reduce(function(i,o){return a++,o.indexOf(` `)>=0&&a++,i+o.replace(/\u001b\[\d\d?m/g,"").length+1},0);return n>60?t[0]+(r===""?"":r+` `)+" "+e.join(`, - `)+" "+t[1]:t[0]+r+" "+e.join(", ")+" "+t[1]}st.types=N7();function cK(e){return Array.isArray(e)}st.isArray=cK;function H7(e){return typeof e=="boolean"}st.isBoolean=H7;function y2(e){return e===null}st.isNull=y2;function yAe(e){return e==null}st.isNullOrUndefined=yAe;function vK(e){return typeof e=="number"}st.isNumber=vK;function m2(e){return typeof e=="string"}st.isString=m2;function mAe(e){return typeof e=="symbol"}st.isSymbol=mAe;function Xu(e){return e===void 0}st.isUndefined=Xu;function rd(e){return _v(e)&&U7(e)==="[object RegExp]"}st.isRegExp=rd;st.types.isRegExp=rd;function _v(e){return typeof e=="object"&&e!==null}st.isObject=_v;function p2(e){return _v(e)&&U7(e)==="[object Date]"}st.isDate=p2;st.types.isDate=p2;function td(e){return _v(e)&&(U7(e)==="[object Error]"||e instanceof Error)}st.isError=td;st.types.isNativeError=td;function h2(e){return typeof e=="function"}st.isFunction=h2;function gAe(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}st.isPrimitive=gAe;st.isBuffer=z7();function U7(e){return Object.prototype.toString.call(e)}function O7(e){return e<10?"0"+e.toString(10):e.toString(10)}var bAe=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function xAe(){var e=new Date,r=[O7(e.getHours()),O7(e.getMinutes()),O7(e.getSeconds())].join(":");return[e.getDate(),bAe[e.getMonth()],r].join(" ")}st.log=function(){console.log("%s - %s",xAe(),st.format.apply(st,arguments))};st.inherits=kl();st._extend=function(e,r){if(!r||!_v(r))return e;for(var t=Object.keys(r),a=t.length;a--;)e[t[a]]=r[t[a]];return e};function hK(e,r){return Object.prototype.hasOwnProperty.call(e,r)}var Zu=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;st.promisify=function(r){if(typeof r!="function")throw new TypeError('The "original" argument must be of type Function');if(Zu&&r[Zu]){var t=r[Zu];if(typeof t!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,Zu,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var a,n,i=new Promise(function(s,u){a=s,n=u}),o=[],l=0;l{"use strict";function dK(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);r&&(a=a.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,a)}return t}function TAe(e){for(var r=1;r0?this.tail.next=a:this.head=a,this.tail=a,++this.length}},{key:"unshift",value:function(t){var a={data:t,next:this.head};this.length===0&&(this.tail=a),this.head=a,++this.length}},{key:"shift",value:function(){if(this.length!==0){var t=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,t}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(t){if(this.length===0)return"";for(var a=this.head,n=""+a.data;a=a.next;)n+=t+a.data;return n}},{key:"concat",value:function(t){if(this.length===0)return g2.alloc(0);for(var a=g2.allocUnsafe(t>>>0),n=this.head,i=0;n;)CAe(n.data,a,i),i+=n.data.length,n=n.next;return a}},{key:"consume",value:function(t,a){var n;return to.length?o.length:t;if(l===o.length?i+=o:i+=o.slice(0,t),t-=l,t===0){l===o.length?(++n,a.next?this.head=a.next:this.head=this.tail=null):(this.head=a,a.data=o.slice(l));break}++n}return this.length-=n,i}},{key:"_getBuffer",value:function(t){var a=g2.allocUnsafe(t),n=this.head,i=1;for(n.data.copy(a),t-=n.data.length;n=n.next;){var o=n.data,l=t>o.length?o.length:t;if(o.copy(a,a.length-t,0,l),t-=l,t===0){l===o.length?(++i,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(l));break}++i}return this.length-=i,a}},{key:LAe,value:function(t,a){return V7(this,TAe({},a,{depth:0,customInspect:!1}))}}]),e}()});var j7=N((wBe,bK)=>{"use strict";function EAe(e,r){var t=this,a=this._readableState&&this._readableState.destroyed,n=this._writableState&&this._writableState.destroyed;return a||n?(r?r(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(Y7,this,e)):process.nextTick(Y7,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(i){!r&&i?t._writableState?t._writableState.errorEmitted?process.nextTick(b2,t):(t._writableState.errorEmitted=!0,process.nextTick(gK,t,i)):process.nextTick(gK,t,i):r?(process.nextTick(b2,t),r(i)):process.nextTick(b2,t)}),this)}function gK(e,r){Y7(e,r),b2(e)}function b2(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function DAe(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function Y7(e,r){e.emit("error",r)}function RAe(e,r){var t=e._readableState,a=e._writableState;t&&t.autoDestroy||a&&a.autoDestroy?e.destroy(r):e.emit("error",r)}bK.exports={destroy:EAe,undestroy:DAe,errorOrDestroy:RAe}});var Ju=N((TBe,wK)=>{"use strict";function PAe(e,r){e.prototype=Object.create(r.prototype),e.prototype.constructor=e,e.__proto__=r}var _K={};function Oi(e,r,t){t||(t=Error);function a(i,o,l){return typeof r=="string"?r:r(i,o,l)}var n=function(i){PAe(o,i);function o(l,s,u){return i.call(this,a(l,s,u))||this}return o}(t);n.prototype.name=t.name,n.prototype.code=e,_K[e]=n}function xK(e,r){if(Array.isArray(e)){var t=e.length;return e=e.map(function(a){return String(a)}),t>2?"one of ".concat(r," ").concat(e.slice(0,t-1).join(", "),", or ")+e[t-1]:t===2?"one of ".concat(r," ").concat(e[0]," or ").concat(e[1]):"of ".concat(r," ").concat(e[0])}else return"of ".concat(r," ").concat(String(e))}function FAe(e,r,t){return e.substr(!t||t<0?0:+t,r.length)===r}function NAe(e,r,t){return(t===void 0||t>e.length)&&(t=e.length),e.substring(t-r.length,t)===r}function zAe(e,r,t){return typeof t!="number"&&(t=0),t+r.length>e.length?!1:e.indexOf(r,t)!==-1}Oi("ERR_INVALID_OPT_VALUE",function(e,r){return'The value "'+r+'" is invalid for option "'+e+'"'},TypeError);Oi("ERR_INVALID_ARG_TYPE",function(e,r,t){var a;typeof r=="string"&&FAe(r,"not ")?(a="must not be",r=r.replace(/^not /,"")):a="must be";var n;if(NAe(e," argument"))n="The ".concat(e," ").concat(a," ").concat(xK(r,"type"));else{var i=zAe(e,".")?"property":"argument";n='The "'.concat(e,'" ').concat(i," ").concat(a," ").concat(xK(r,"type"))}return n+=". Received type ".concat(typeof t),n},TypeError);Oi("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");Oi("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});Oi("ERR_STREAM_PREMATURE_CLOSE","Premature close");Oi("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});Oi("ERR_MULTIPLE_CALLBACK","Callback called multiple times");Oi("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");Oi("ERR_STREAM_WRITE_AFTER_END","write after end");Oi("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);Oi("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);Oi("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");wK.exports.codes=_K});var W7=N((ABe,TK)=>{"use strict";var IAe=Ju().codes.ERR_INVALID_OPT_VALUE;function OAe(e,r,t){return e.highWaterMark!=null?e.highWaterMark:r?e[t]:null}function BAe(e,r,t,a){var n=OAe(r,a,t);if(n!=null){if(!(isFinite(n)&&Math.floor(n)===n)||n<0){var i=a?t:"highWaterMark";throw new IAe(i,n)}return Math.floor(n)}return e.objectMode?16:16*1024}TK.exports={getHighWaterMark:BAe}});var MK=N((MBe,AK)=>{AK.exports=HAe;function HAe(e,r){if(Z7("noDeprecation"))return e;var t=!1;function a(){if(!t){if(Z7("throwDeprecation"))throw new Error(r);Z7("traceDeprecation")?console.trace(r):console.warn(r),t=!0}return e.apply(this,arguments)}return a}function Z7(e){try{if(!window.localStorage)return!1}catch(t){return!1}var r=window.localStorage[e];return r==null?!1:String(r).toLowerCase()==="true"}});var $7=N((kBe,EK)=>{"use strict";EK.exports=ha;function SK(e){var r=this;this.next=null,this.entry=null,this.finish=function(){dMe(r,e)}}var wv;ha.WritableState=nd;var UAe={deprecate:MK()},qK=J6(),_2=fv().Buffer,GAe=window.Uint8Array||function(){};function VAe(e){return _2.from(e)}function YAe(e){return _2.isBuffer(e)||e instanceof GAe}var J7=j7(),jAe=W7(),WAe=jAe.getHighWaterMark,ws=Ju().codes,ZAe=ws.ERR_INVALID_ARG_TYPE,XAe=ws.ERR_METHOD_NOT_IMPLEMENTED,JAe=ws.ERR_MULTIPLE_CALLBACK,$Ae=ws.ERR_STREAM_CANNOT_PIPE,KAe=ws.ERR_STREAM_DESTROYED,QAe=ws.ERR_STREAM_NULL_VALUES,eMe=ws.ERR_STREAM_WRITE_AFTER_END,rMe=ws.ERR_UNKNOWN_ENCODING,Tv=J7.errorOrDestroy;kl()(ha,qK);function tMe(){}function nd(e,r,t){wv=wv||$u(),e=e||{},typeof t!="boolean"&&(t=r instanceof wv),this.objectMode=!!e.objectMode,t&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=WAe(this,e,"writableHighWaterMark",t),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var a=e.decodeStrings===!1;this.decodeStrings=!a,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(n){uMe(r,n)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new SK(this)}nd.prototype.getBuffer=function(){for(var r=this.bufferedRequest,t=[];r;)t.push(r),r=r.next;return t};(function(){try{Object.defineProperty(nd.prototype,"buffer",{get:UAe.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}})();var x2;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(x2=Function.prototype[Symbol.hasInstance],Object.defineProperty(ha,Symbol.hasInstance,{value:function(r){return x2.call(this,r)?!0:this!==ha?!1:r&&r._writableState instanceof nd}})):x2=function(r){return r instanceof this};function ha(e){wv=wv||$u();var r=this instanceof wv;if(!r&&!x2.call(ha,this))return new ha(e);this._writableState=new nd(e,this,r),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),qK.call(this)}ha.prototype.pipe=function(){Tv(this,new $Ae)};function aMe(e,r){var t=new eMe;Tv(e,t),process.nextTick(r,t)}function nMe(e,r,t,a){var n;return t===null?n=new QAe:typeof t!="string"&&!r.objectMode&&(n=new ZAe("chunk",["string","Buffer"],t)),n?(Tv(e,n),process.nextTick(a,n),!1):!0}ha.prototype.write=function(e,r,t){var a=this._writableState,n=!1,i=!a.objectMode&&YAe(e);return i&&!_2.isBuffer(e)&&(e=VAe(e)),typeof r=="function"&&(t=r,r=null),i?r="buffer":r||(r=a.defaultEncoding),typeof t!="function"&&(t=tMe),a.ending?aMe(this,t):(i||nMe(this,a,e,t))&&(a.pendingcb++,n=oMe(this,a,i,e,r,t)),n};ha.prototype.cork=function(){this._writableState.corked++};ha.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&LK(this,e))};ha.prototype.setDefaultEncoding=function(r){if(typeof r=="string"&&(r=r.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((r+"").toLowerCase())>-1))throw new rMe(r);return this._writableState.defaultEncoding=r,this};Object.defineProperty(ha.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function iMe(e,r,t){return!e.objectMode&&e.decodeStrings!==!1&&typeof r=="string"&&(r=_2.from(r,t)),r}Object.defineProperty(ha.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function oMe(e,r,t,a,n,i){if(!t){var o=iMe(r,a,n);a!==o&&(t=!0,n="buffer",a=o)}var l=r.objectMode?1:a.length;r.length+=l;var s=r.length{"use strict";var pMe=Object.keys||function(e){var r=[];for(var t in e)r.push(t);return r};RK.exports=Xo;var DK=eT(),Q7=$7();kl()(Xo,DK);for(K7=pMe(Q7.prototype),w2=0;w2{var A2=fv(),Jo=A2.Buffer;function PK(e,r){for(var t in e)r[t]=e[t]}Jo.from&&Jo.alloc&&Jo.allocUnsafe&&Jo.allocUnsafeSlow?FK.exports=A2:(PK(A2,rT),rT.Buffer=Ku);function Ku(e,r,t){return Jo(e,r,t)}Ku.prototype=Object.create(Jo.prototype);PK(Jo,Ku);Ku.from=function(e,r,t){if(typeof e=="number")throw new TypeError("Argument must not be a number");return Jo(e,r,t)};Ku.alloc=function(e,r,t){if(typeof e!="number")throw new TypeError("Argument must be a number");var a=Jo(e);return r!==void 0?typeof t=="string"?a.fill(r,t):a.fill(r):a.fill(0),a};Ku.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return Jo(e)};Ku.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return A2.SlowBuffer(e)}});var nT=N(IK=>{"use strict";var aT=NK().Buffer,zK=aT.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function gMe(e){if(!e)return"utf8";for(var r;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(r)return;e=(""+e).toLowerCase(),r=!0}}function bMe(e){var r=gMe(e);if(typeof r!="string"&&(aT.isEncoding===zK||!zK(e)))throw new Error("Unknown encoding: "+e);return r||e}IK.StringDecoder=id;function id(e){this.encoding=bMe(e);var r;switch(this.encoding){case"utf16le":this.text=MMe,this.end=kMe,r=4;break;case"utf8":this.fillLast=wMe,r=4;break;case"base64":this.text=SMe,this.end=qMe,r=3;break;default:this.write=LMe,this.end=CMe;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=aT.allocUnsafe(r)}id.prototype.write=function(e){if(e.length===0)return"";var r,t;if(this.lastNeed){if(r=this.fillLast(e),r===void 0)return"";t=this.lastNeed,this.lastNeed=0}else t=0;return t>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function xMe(e,r,t){var a=r.length-1;if(a=0?(n>0&&(e.lastNeed=n-1),n):--a=0?(n>0&&(e.lastNeed=n-2),n):--a=0?(n>0&&(n===2?n=0:e.lastNeed=n-3),n):0))}function _Me(e,r,t){if((r[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&r.length>1){if((r[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&r.length>2&&(r[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function wMe(e){var r=this.lastTotal-this.lastNeed,t=_Me(this,e,r);if(t!==void 0)return t;if(this.lastNeed<=e.length)return e.copy(this.lastChar,r,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,r,0,e.length),this.lastNeed-=e.length}function TMe(e,r){var t=xMe(this,e,r);if(!this.lastNeed)return e.toString("utf8",r);this.lastTotal=t;var a=e.length-(t-this.lastNeed);return e.copy(this.lastChar,0,a),e.toString("utf8",r,a)}function AMe(e){var r=e&&e.length?this.write(e):"";return this.lastNeed?r+"\uFFFD":r}function MMe(e,r){if((e.length-r)%2===0){var t=e.toString("utf16le",r);if(t){var a=t.charCodeAt(t.length-1);if(a>=55296&&a<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],t.slice(0,-1)}return t}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",r,e.length-1)}function kMe(e){var r=e&&e.length?this.write(e):"";if(this.lastNeed){var t=this.lastTotal-this.lastNeed;return r+this.lastChar.toString("utf16le",0,t)}return r}function SMe(e,r){var t=(e.length-r)%3;return t===0?e.toString("base64",r):(this.lastNeed=3-t,this.lastTotal=3,t===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",r,e.length-t))}function qMe(e){var r=e&&e.length?this.write(e):"";return this.lastNeed?r+this.lastChar.toString("base64",0,3-this.lastNeed):r}function LMe(e){return e.toString(this.encoding)}function CMe(e){return e&&e.length?this.write(e):""}});var M2=N((LBe,HK)=>{"use strict";var OK=Ju().codes.ERR_STREAM_PREMATURE_CLOSE;function EMe(e){var r=!1;return function(){if(!r){r=!0;for(var t=arguments.length,a=new Array(t),n=0;n{"use strict";var k2;function Ts(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}var PMe=M2(),As=Symbol("lastResolve"),Qu=Symbol("lastReject"),od=Symbol("error"),S2=Symbol("ended"),ef=Symbol("lastPromise"),iT=Symbol("handlePromise"),rf=Symbol("stream");function Ms(e,r){return{value:e,done:r}}function FMe(e){var r=e[As];if(r!==null){var t=e[rf].read();t!==null&&(e[ef]=null,e[As]=null,e[Qu]=null,r(Ms(t,!1)))}}function NMe(e){process.nextTick(FMe,e)}function zMe(e,r){return function(t,a){e.then(function(){if(r[S2]){t(Ms(void 0,!0));return}r[iT](t,a)},a)}}var IMe=Object.getPrototypeOf(function(){}),OMe=Object.setPrototypeOf((k2={get stream(){return this[rf]},next:function(){var r=this,t=this[od];if(t!==null)return Promise.reject(t);if(this[S2])return Promise.resolve(Ms(void 0,!0));if(this[rf].destroyed)return new Promise(function(o,l){process.nextTick(function(){r[od]?l(r[od]):o(Ms(void 0,!0))})});var a=this[ef],n;if(a)n=new Promise(zMe(a,this));else{var i=this[rf].read();if(i!==null)return Promise.resolve(Ms(i,!1));n=new Promise(this[iT])}return this[ef]=n,n}},Ts(k2,Symbol.asyncIterator,function(){return this}),Ts(k2,"return",function(){var r=this;return new Promise(function(t,a){r[rf].destroy(null,function(n){if(n){a(n);return}t(Ms(void 0,!0))})})}),k2),IMe),BMe=function(r){var t,a=Object.create(OMe,(t={},Ts(t,rf,{value:r,writable:!0}),Ts(t,As,{value:null,writable:!0}),Ts(t,Qu,{value:null,writable:!0}),Ts(t,od,{value:null,writable:!0}),Ts(t,S2,{value:r._readableState.endEmitted,writable:!0}),Ts(t,iT,{value:function(i,o){var l=a[rf].read();l?(a[ef]=null,a[As]=null,a[Qu]=null,i(Ms(l,!1))):(a[As]=i,a[Qu]=o)},writable:!0}),t));return a[ef]=null,PMe(r,function(n){if(n&&n.code!=="ERR_STREAM_PREMATURE_CLOSE"){var i=a[Qu];i!==null&&(a[ef]=null,a[As]=null,a[Qu]=null,i(n)),a[od]=n;return}var o=a[As];o!==null&&(a[ef]=null,a[As]=null,a[Qu]=null,o(Ms(void 0,!0))),a[S2]=!0}),r.on("readable",NMe.bind(null,a)),a};UK.exports=BMe});var YK=N((EBe,VK)=>{VK.exports=function(){throw new Error("Readable.from is not available in the browser")}});var eT=N((RBe,rQ)=>{"use strict";rQ.exports=gt;var Av;gt.ReadableState=XK;var DBe=eu().EventEmitter,ZK=function(r,t){return r.listeners(t).length},sd=J6(),q2=fv().Buffer,HMe=window.Uint8Array||function(){};function UMe(e){return q2.from(e)}function GMe(e){return q2.isBuffer(e)||e instanceof HMe}var oT=G7(),tt;oT&&oT.debuglog?tt=oT.debuglog("stream"):tt=function(){};var VMe=mK(),hT=j7(),YMe=W7(),jMe=YMe.getHighWaterMark,L2=Ju().codes,WMe=L2.ERR_INVALID_ARG_TYPE,ZMe=L2.ERR_STREAM_PUSH_AFTER_EOF,XMe=L2.ERR_METHOD_NOT_IMPLEMENTED,JMe=L2.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,Mv,lT,sT;kl()(gt,sd);var ld=hT.errorOrDestroy,uT=["error","close","destroy","pause","resume"];function $Me(e,r,t){if(typeof e.prependListener=="function")return e.prependListener(r,t);!e._events||!e._events[r]?e.on(r,t):Array.isArray(e._events[r])?e._events[r].unshift(t):e._events[r]=[t,e._events[r]]}function XK(e,r,t){Av=Av||$u(),e=e||{},typeof t!="boolean"&&(t=r instanceof Av),this.objectMode=!!e.objectMode,t&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=jMe(this,e,"readableHighWaterMark",t),this.buffer=new VMe,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(Mv||(Mv=nT().StringDecoder),this.decoder=new Mv(e.encoding),this.encoding=e.encoding)}function gt(e){if(Av=Av||$u(),!(this instanceof gt))return new gt(e);var r=this instanceof Av;this._readableState=new XK(e,this,r),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),sd.call(this)}Object.defineProperty(gt.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(r){this._readableState&&(this._readableState.destroyed=r)}});gt.prototype.destroy=hT.destroy;gt.prototype._undestroy=hT.undestroy;gt.prototype._destroy=function(e,r){r(e)};gt.prototype.push=function(e,r){var t=this._readableState,a;return t.objectMode?a=!0:typeof e=="string"&&(r=r||t.defaultEncoding,r!==t.encoding&&(e=q2.from(e,r),r=""),a=!0),JK(this,e,r,!1,a)};gt.prototype.unshift=function(e){return JK(this,e,null,!0,!1)};function JK(e,r,t,a,n){tt("readableAddChunk",r);var i=e._readableState;if(r===null)i.reading=!1,e9e(e,i);else{var o;if(n||(o=KMe(i,r)),o)ld(e,o);else if(i.objectMode||r&&r.length>0)if(typeof r!="string"&&!i.objectMode&&Object.getPrototypeOf(r)!==q2.prototype&&(r=UMe(r)),a)i.endEmitted?ld(e,new JMe):fT(e,i,r,!0);else if(i.ended)ld(e,new ZMe);else{if(i.destroyed)return!1;i.reading=!1,i.decoder&&!t?(r=i.decoder.write(r),i.objectMode||r.length!==0?fT(e,i,r,!1):vT(e,i)):fT(e,i,r,!1)}else a||(i.reading=!1,vT(e,i))}return!i.ended&&(i.length=jK?e=jK:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function WK(e,r){return e<=0||r.length===0&&r.ended?0:r.objectMode?1:e!==e?r.flowing&&r.length?r.buffer.head.data.length:r.length:(e>r.highWaterMark&&(r.highWaterMark=QMe(e)),e<=r.length?e:r.ended?r.length:(r.needReadable=!0,0))}gt.prototype.read=function(e){tt("read",e),e=parseInt(e,10);var r=this._readableState,t=e;if(e!==0&&(r.emittedReadable=!1),e===0&&r.needReadable&&((r.highWaterMark!==0?r.length>=r.highWaterMark:r.length>0)||r.ended))return tt("read: emitReadable",r.length,r.ended),r.length===0&&r.ended?cT(this):C2(this),null;if(e=WK(e,r),e===0&&r.ended)return r.length===0&&cT(this),null;var a=r.needReadable;tt("need readable",a),(r.length===0||r.length-e0?n=QK(e,r):n=null,n===null?(r.needReadable=r.length<=r.highWaterMark,e=0):(r.length-=e,r.awaitDrain=0),r.length===0&&(r.ended||(r.needReadable=!0),t!==e&&r.ended&&cT(this)),n!==null&&this.emit("data",n),n};function e9e(e,r){if(tt("onEofChunk"),!r.ended){if(r.decoder){var t=r.decoder.end();t&&t.length&&(r.buffer.push(t),r.length+=r.objectMode?1:t.length)}r.ended=!0,r.sync?C2(e):(r.needReadable=!1,r.emittedReadable||(r.emittedReadable=!0,$K(e)))}}function C2(e){var r=e._readableState;tt("emitReadable",r.needReadable,r.emittedReadable),r.needReadable=!1,r.emittedReadable||(tt("emitReadable",r.flowing),r.emittedReadable=!0,process.nextTick($K,e))}function $K(e){var r=e._readableState;tt("emitReadable_",r.destroyed,r.length,r.ended),!r.destroyed&&(r.length||r.ended)&&(e.emit("readable"),r.emittedReadable=!1),r.needReadable=!r.flowing&&!r.ended&&r.length<=r.highWaterMark,dT(e)}function vT(e,r){r.readingMore||(r.readingMore=!0,process.nextTick(r9e,e,r))}function r9e(e,r){for(;!r.reading&&!r.ended&&(r.length1&&eQ(a.pipes,e)!==-1)&&!u&&(tt("false write response, pause",a.awaitDrain),a.awaitDrain++),t.pause())}function v(m){tt("onerror",m),y(),e.removeListener("error",v),ZK(e,"error")===0&&ld(e,m)}$Me(e,"error",v);function d(){e.removeListener("finish",p),y()}e.once("close",d);function p(){tt("onfinish"),e.removeListener("close",d),y()}e.once("finish",p);function y(){tt("unpipe"),t.unpipe(e)}return e.emit("pipe",t),a.flowing||(tt("pipe resume"),t.resume()),e};function t9e(e){return function(){var t=e._readableState;tt("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,t.awaitDrain===0&&ZK(e,"data")&&(t.flowing=!0,dT(e))}}gt.prototype.unpipe=function(e){var r=this._readableState,t={hasUnpiped:!1};if(r.pipesCount===0)return this;if(r.pipesCount===1)return e&&e!==r.pipes?this:(e||(e=r.pipes),r.pipes=null,r.pipesCount=0,r.flowing=!1,e&&e.emit("unpipe",this,t),this);if(!e){var a=r.pipes,n=r.pipesCount;r.pipes=null,r.pipesCount=0,r.flowing=!1;for(var i=0;i0,a.flowing!==!1&&this.resume()):e==="readable"&&!a.endEmitted&&!a.readableListening&&(a.readableListening=a.needReadable=!0,a.flowing=!1,a.emittedReadable=!1,tt("on readable",a.length,a.reading),a.length?C2(this):a.reading||process.nextTick(a9e,this)),t};gt.prototype.addListener=gt.prototype.on;gt.prototype.removeListener=function(e,r){var t=sd.prototype.removeListener.call(this,e,r);return e==="readable"&&process.nextTick(KK,this),t};gt.prototype.removeAllListeners=function(e){var r=sd.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(KK,this),r};function KK(e){var r=e._readableState;r.readableListening=e.listenerCount("readable")>0,r.resumeScheduled&&!r.paused?r.flowing=!0:e.listenerCount("data")>0&&e.resume()}function a9e(e){tt("readable nexttick read 0"),e.read(0)}gt.prototype.resume=function(){var e=this._readableState;return e.flowing||(tt("resume"),e.flowing=!e.readableListening,n9e(this,e)),e.paused=!1,this};function n9e(e,r){r.resumeScheduled||(r.resumeScheduled=!0,process.nextTick(i9e,e,r))}function i9e(e,r){tt("resume",r.reading),r.reading||e.read(0),r.resumeScheduled=!1,e.emit("resume"),dT(e),r.flowing&&!r.reading&&e.read(0)}gt.prototype.pause=function(){return tt("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(tt("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function dT(e){var r=e._readableState;for(tt("flow",r.flowing);r.flowing&&e.read()!==null;);}gt.prototype.wrap=function(e){var r=this,t=this._readableState,a=!1;e.on("end",function(){if(tt("wrapped end"),t.decoder&&!t.ended){var o=t.decoder.end();o&&o.length&&r.push(o)}r.push(null)}),e.on("data",function(o){if(tt("wrapped data"),t.decoder&&(o=t.decoder.write(o)),!(t.objectMode&&o==null)&&!(!t.objectMode&&(!o||!o.length))){var l=r.push(o);l||(a=!0,e.pause())}});for(var n in e)this[n]===void 0&&typeof e[n]=="function"&&(this[n]=function(l){return function(){return e[l].apply(e,arguments)}}(n));for(var i=0;i=r.length?(r.decoder?t=r.buffer.join(""):r.buffer.length===1?t=r.buffer.first():t=r.buffer.concat(r.length),r.buffer.clear()):t=r.buffer.consume(e,r.decoder),t}function cT(e){var r=e._readableState;tt("endReadable",r.endEmitted),r.endEmitted||(r.ended=!0,process.nextTick(o9e,r,e))}function o9e(e,r){if(tt("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,r.readable=!1,r.emit("end"),e.autoDestroy)){var t=r._writableState;(!t||t.autoDestroy&&t.finished)&&r.destroy()}}typeof Symbol=="function"&&(gt.from=function(e,r){return sT===void 0&&(sT=YK()),sT(gt,e,r)});function eQ(e,r){for(var t=0,a=e.length;t{"use strict";aQ.exports=ql;var E2=Ju().codes,l9e=E2.ERR_METHOD_NOT_IMPLEMENTED,s9e=E2.ERR_MULTIPLE_CALLBACK,u9e=E2.ERR_TRANSFORM_ALREADY_TRANSFORMING,f9e=E2.ERR_TRANSFORM_WITH_LENGTH_0,D2=$u();kl()(ql,D2);function c9e(e,r){var t=this._transformState;t.transforming=!1;var a=t.writecb;if(a===null)return this.emit("error",new s9e);t.writechunk=null,t.writecb=null,r!=null&&this.push(r),a(e);var n=this._readableState;n.reading=!1,(n.needReadable||n.length{"use strict";iQ.exports=ud;var nQ=pT();kl()(ud,nQ);function ud(e){if(!(this instanceof ud))return new ud(e);nQ.call(this,e)}ud.prototype._transform=function(e,r,t){t(null,e)}});var cQ=N((NBe,fQ)=>{"use strict";var yT;function h9e(e){var r=!1;return function(){r||(r=!0,e.apply(void 0,arguments))}}var uQ=Ju().codes,d9e=uQ.ERR_MISSING_ARGS,p9e=uQ.ERR_STREAM_DESTROYED;function lQ(e){if(e)throw e}function y9e(e){return e.setHeader&&typeof e.abort=="function"}function m9e(e,r,t,a){a=h9e(a);var n=!1;e.on("close",function(){n=!0}),yT===void 0&&(yT=M2()),yT(e,{readable:r,writable:t},function(o){if(o)return a(o);n=!0,a()});var i=!1;return function(o){if(!n&&!i){if(i=!0,y9e(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();a(o||new p9e("pipe"))}}}function sQ(e){e()}function g9e(e,r){return e.pipe(r)}function b9e(e){return!e.length||typeof e[e.length-1]!="function"?lQ:e.pop()}function x9e(){for(var e=arguments.length,r=new Array(e),t=0;t0;return m9e(o,s,u,function(f){n||(n=f),f&&i.forEach(sQ),!s&&(i.forEach(sQ),a(n))})});return r.reduce(g9e)}fQ.exports=x9e});var hQ=N((zBe,vQ)=>{vQ.exports=Bi;var mT=eu().EventEmitter,_9e=kl();_9e(Bi,mT);Bi.Readable=eT();Bi.Writable=$7();Bi.Duplex=$u();Bi.Transform=pT();Bi.PassThrough=oQ();Bi.finished=M2();Bi.pipeline=cQ();Bi.Stream=Bi;function Bi(){mT.call(this)}Bi.prototype.pipe=function(e,r){var t=this;function a(f){e.writable&&e.write(f)===!1&&t.pause&&t.pause()}t.on("data",a);function n(){t.readable&&t.resume&&t.resume()}e.on("drain",n),!e._isStdio&&(!r||r.end!==!1)&&(t.on("end",o),t.on("close",l));var i=!1;function o(){i||(i=!0,e.end())}function l(){i||(i=!0,typeof e.destroy=="function"&&e.destroy())}function s(f){if(u(),mT.listenerCount(this,"error")===0)throw f}t.on("error",s),e.on("error",s);function u(){t.removeListener("data",a),e.removeListener("drain",n),t.removeListener("end",o),t.removeListener("close",l),t.removeListener("error",s),e.removeListener("error",s),t.removeListener("end",u),t.removeListener("close",u),e.removeListener("close",u)}return t.on("end",u),t.on("close",u),e.on("close",u),e.emit("pipe",t),e}});var Sv=N(ut=>{var dQ=Object.getOwnPropertyDescriptors||function(r){for(var t=Object.keys(r),a={},n=0;n=n)return l;switch(l){case"%s":return String(a[t++]);case"%d":return Number(a[t++]);case"%j":try{return JSON.stringify(a[t++])}catch(s){return"[Circular]"}default:return l}}),o=a[t];t=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),_T(r)?t.showHidden=r:r&&ut._extend(t,r),af(t.showHidden)&&(t.showHidden=!1),af(t.depth)&&(t.depth=2),af(t.colors)&&(t.colors=!1),af(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=T9e),N2(t,e,t.depth)}ut.inspect=ks;ks.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};ks.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function T9e(e,r){var t=ks.styles[r];return t?"\x1B["+ks.colors[t][0]+"m"+e+"\x1B["+ks.colors[t][1]+"m":e}function A9e(e,r){return e}function M9e(e){var r={};return e.forEach(function(t,a){r[t]=!0}),r}function N2(e,r,t){if(e.customInspect&&r&&F2(r.inspect)&&r.inspect!==ut.inspect&&!(r.constructor&&r.constructor.prototype===r)){var a=r.inspect(t,e);return O2(a)||(a=N2(e,a,t)),a}var n=k9e(e,r);if(n)return n;var i=Object.keys(r),o=M9e(i);if(e.showHidden&&(i=Object.getOwnPropertyNames(r)),cd(r)&&(i.indexOf("message")>=0||i.indexOf("description")>=0))return gT(r);if(i.length===0){if(F2(r)){var l=r.name?": "+r.name:"";return e.stylize("[Function"+l+"]","special")}if(fd(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(z2(r))return e.stylize(Date.prototype.toString.call(r),"date");if(cd(r))return gT(r)}var s="",u=!1,f=["{","}"];if(yQ(r)&&(u=!0,f=["[","]"]),F2(r)){var c=r.name?": "+r.name:"";s=" [Function"+c+"]"}if(fd(r)&&(s=" "+RegExp.prototype.toString.call(r)),z2(r)&&(s=" "+Date.prototype.toUTCString.call(r)),cd(r)&&(s=" "+gT(r)),i.length===0&&(!u||r.length==0))return f[0]+s+f[1];if(t<0)return fd(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special");e.seen.push(r);var v;return u?v=S9e(e,r,t,o,i):v=i.map(function(d){return xT(e,r,t,o,d,u)}),e.seen.pop(),q9e(v,s,f)}function k9e(e,r){if(af(r))return e.stylize("undefined","undefined");if(O2(r)){var t="'"+JSON.stringify(r).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(t,"string")}if(mQ(r))return e.stylize(""+r,"number");if(_T(r))return e.stylize(""+r,"boolean");if(I2(r))return e.stylize("null","null")}function gT(e){return"["+Error.prototype.toString.call(e)+"]"}function S9e(e,r,t,a,n){for(var i=[],o=0,l=r.length;o{"use strict";function pK(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);r&&(a=a.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,a)}return t}function AAe(e){for(var r=1;r0?this.tail.next=a:this.head=a,this.tail=a,++this.length}},{key:"unshift",value:function(t){var a={data:t,next:this.head};this.length===0&&(this.tail=a),this.head=a,++this.length}},{key:"shift",value:function(){if(this.length!==0){var t=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,t}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(t){if(this.length===0)return"";for(var a=this.head,n=""+a.data;a=a.next;)n+=t+a.data;return n}},{key:"concat",value:function(t){if(this.length===0)return b2.alloc(0);for(var a=b2.allocUnsafe(t>>>0),n=this.head,i=0;n;)EAe(n.data,a,i),i+=n.data.length,n=n.next;return a}},{key:"consume",value:function(t,a){var n;return to.length?o.length:t;if(l===o.length?i+=o:i+=o.slice(0,t),t-=l,t===0){l===o.length?(++n,a.next?this.head=a.next:this.head=this.tail=null):(this.head=a,a.data=o.slice(l));break}++n}return this.length-=n,i}},{key:"_getBuffer",value:function(t){var a=b2.allocUnsafe(t),n=this.head,i=1;for(n.data.copy(a),t-=n.data.length;n=n.next;){var o=n.data,l=t>o.length?o.length:t;if(o.copy(a,a.length-t,0,l),t-=l,t===0){l===o.length?(++i,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(l));break}++i}return this.length-=i,a}},{key:CAe,value:function(t,a){return V7(this,AAe({},a,{depth:0,customInspect:!1}))}}]),e}()});var W7=N((wBe,xK)=>{"use strict";function DAe(e,r){var t=this,a=this._readableState&&this._readableState.destroyed,n=this._writableState&&this._writableState.destroyed;return a||n?(r?r(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(Y7,this,e)):process.nextTick(Y7,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(i){!r&&i?t._writableState?t._writableState.errorEmitted?process.nextTick(x2,t):(t._writableState.errorEmitted=!0,process.nextTick(bK,t,i)):process.nextTick(bK,t,i):r?(process.nextTick(x2,t),r(i)):process.nextTick(x2,t)}),this)}function bK(e,r){Y7(e,r),x2(e)}function x2(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function RAe(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function Y7(e,r){e.emit("error",r)}function PAe(e,r){var t=e._readableState,a=e._writableState;t&&t.autoDestroy||a&&a.autoDestroy?e.destroy(r):e.emit("error",r)}xK.exports={destroy:DAe,undestroy:RAe,errorOrDestroy:PAe}});var Ju=N((TBe,TK)=>{"use strict";function FAe(e,r){e.prototype=Object.create(r.prototype),e.prototype.constructor=e,e.__proto__=r}var wK={};function Oi(e,r,t){t||(t=Error);function a(i,o,l){return typeof r=="string"?r:r(i,o,l)}var n=function(i){FAe(o,i);function o(l,s,u){return i.call(this,a(l,s,u))||this}return o}(t);n.prototype.name=t.name,n.prototype.code=e,wK[e]=n}function _K(e,r){if(Array.isArray(e)){var t=e.length;return e=e.map(function(a){return String(a)}),t>2?"one of ".concat(r," ").concat(e.slice(0,t-1).join(", "),", or ")+e[t-1]:t===2?"one of ".concat(r," ").concat(e[0]," or ").concat(e[1]):"of ".concat(r," ").concat(e[0])}else return"of ".concat(r," ").concat(String(e))}function NAe(e,r,t){return e.substr(!t||t<0?0:+t,r.length)===r}function zAe(e,r,t){return(t===void 0||t>e.length)&&(t=e.length),e.substring(t-r.length,t)===r}function IAe(e,r,t){return typeof t!="number"&&(t=0),t+r.length>e.length?!1:e.indexOf(r,t)!==-1}Oi("ERR_INVALID_OPT_VALUE",function(e,r){return'The value "'+r+'" is invalid for option "'+e+'"'},TypeError);Oi("ERR_INVALID_ARG_TYPE",function(e,r,t){var a;typeof r=="string"&&NAe(r,"not ")?(a="must not be",r=r.replace(/^not /,"")):a="must be";var n;if(zAe(e," argument"))n="The ".concat(e," ").concat(a," ").concat(_K(r,"type"));else{var i=IAe(e,".")?"property":"argument";n='The "'.concat(e,'" ').concat(i," ").concat(a," ").concat(_K(r,"type"))}return n+=". Received type ".concat(typeof t),n},TypeError);Oi("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");Oi("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});Oi("ERR_STREAM_PREMATURE_CLOSE","Premature close");Oi("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});Oi("ERR_MULTIPLE_CALLBACK","Callback called multiple times");Oi("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");Oi("ERR_STREAM_WRITE_AFTER_END","write after end");Oi("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);Oi("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);Oi("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");TK.exports.codes=wK});var j7=N((ABe,AK)=>{"use strict";var OAe=Ju().codes.ERR_INVALID_OPT_VALUE;function BAe(e,r,t){return e.highWaterMark!=null?e.highWaterMark:r?e[t]:null}function HAe(e,r,t,a){var n=BAe(r,a,t);if(n!=null){if(!(isFinite(n)&&Math.floor(n)===n)||n<0){var i=a?t:"highWaterMark";throw new OAe(i,n)}return Math.floor(n)}return e.objectMode?16:16*1024}AK.exports={getHighWaterMark:HAe}});var kK=N((MBe,MK)=>{MK.exports=UAe;function UAe(e,r){if(Z7("noDeprecation"))return e;var t=!1;function a(){if(!t){if(Z7("throwDeprecation"))throw new Error(r);Z7("traceDeprecation")?console.trace(r):console.warn(r),t=!0}return e.apply(this,arguments)}return a}function Z7(e){try{if(!window.localStorage)return!1}catch(t){return!1}var r=window.localStorage[e];return r==null?!1:String(r).toLowerCase()==="true"}});var $7=N((kBe,DK)=>{"use strict";DK.exports=ha;function qK(e){var r=this;this.next=null,this.entry=null,this.finish=function(){pMe(r,e)}}var Tv;ha.WritableState=id;var GAe={deprecate:kK()},LK=J6(),w2=cv().Buffer,VAe=window.Uint8Array||function(){};function YAe(e){return w2.from(e)}function WAe(e){return w2.isBuffer(e)||e instanceof VAe}var J7=W7(),jAe=j7(),ZAe=jAe.getHighWaterMark,ws=Ju().codes,XAe=ws.ERR_INVALID_ARG_TYPE,JAe=ws.ERR_METHOD_NOT_IMPLEMENTED,$Ae=ws.ERR_MULTIPLE_CALLBACK,KAe=ws.ERR_STREAM_CANNOT_PIPE,QAe=ws.ERR_STREAM_DESTROYED,eMe=ws.ERR_STREAM_NULL_VALUES,rMe=ws.ERR_STREAM_WRITE_AFTER_END,tMe=ws.ERR_UNKNOWN_ENCODING,Av=J7.errorOrDestroy;kl()(ha,LK);function aMe(){}function id(e,r,t){Tv=Tv||$u(),e=e||{},typeof t!="boolean"&&(t=r instanceof Tv),this.objectMode=!!e.objectMode,t&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=ZAe(this,e,"writableHighWaterMark",t),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var a=e.decodeStrings===!1;this.decodeStrings=!a,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(n){fMe(r,n)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new qK(this)}id.prototype.getBuffer=function(){for(var r=this.bufferedRequest,t=[];r;)t.push(r),r=r.next;return t};(function(){try{Object.defineProperty(id.prototype,"buffer",{get:GAe.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}})();var _2;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(_2=Function.prototype[Symbol.hasInstance],Object.defineProperty(ha,Symbol.hasInstance,{value:function(r){return _2.call(this,r)?!0:this!==ha?!1:r&&r._writableState instanceof id}})):_2=function(r){return r instanceof this};function ha(e){Tv=Tv||$u();var r=this instanceof Tv;if(!r&&!_2.call(ha,this))return new ha(e);this._writableState=new id(e,this,r),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),LK.call(this)}ha.prototype.pipe=function(){Av(this,new KAe)};function nMe(e,r){var t=new rMe;Av(e,t),process.nextTick(r,t)}function iMe(e,r,t,a){var n;return t===null?n=new eMe:typeof t!="string"&&!r.objectMode&&(n=new XAe("chunk",["string","Buffer"],t)),n?(Av(e,n),process.nextTick(a,n),!1):!0}ha.prototype.write=function(e,r,t){var a=this._writableState,n=!1,i=!a.objectMode&&WAe(e);return i&&!w2.isBuffer(e)&&(e=YAe(e)),typeof r=="function"&&(t=r,r=null),i?r="buffer":r||(r=a.defaultEncoding),typeof t!="function"&&(t=aMe),a.ending?nMe(this,t):(i||iMe(this,a,e,t))&&(a.pendingcb++,n=lMe(this,a,i,e,r,t)),n};ha.prototype.cork=function(){this._writableState.corked++};ha.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&CK(this,e))};ha.prototype.setDefaultEncoding=function(r){if(typeof r=="string"&&(r=r.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((r+"").toLowerCase())>-1))throw new tMe(r);return this._writableState.defaultEncoding=r,this};Object.defineProperty(ha.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function oMe(e,r,t){return!e.objectMode&&e.decodeStrings!==!1&&typeof r=="string"&&(r=w2.from(r,t)),r}Object.defineProperty(ha.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function lMe(e,r,t,a,n,i){if(!t){var o=oMe(r,a,n);a!==o&&(t=!0,n="buffer",a=o)}var l=r.objectMode?1:a.length;r.length+=l;var s=r.length{"use strict";var yMe=Object.keys||function(e){var r=[];for(var t in e)r.push(t);return r};PK.exports=Xo;var RK=eT(),Q7=$7();kl()(Xo,RK);for(K7=yMe(Q7.prototype),T2=0;T2{var M2=cv(),Jo=M2.Buffer;function FK(e,r){for(var t in e)r[t]=e[t]}Jo.from&&Jo.alloc&&Jo.allocUnsafe&&Jo.allocUnsafeSlow?NK.exports=M2:(FK(M2,rT),rT.Buffer=Ku);function Ku(e,r,t){return Jo(e,r,t)}Ku.prototype=Object.create(Jo.prototype);FK(Jo,Ku);Ku.from=function(e,r,t){if(typeof e=="number")throw new TypeError("Argument must not be a number");return Jo(e,r,t)};Ku.alloc=function(e,r,t){if(typeof e!="number")throw new TypeError("Argument must be a number");var a=Jo(e);return r!==void 0?typeof t=="string"?a.fill(r,t):a.fill(r):a.fill(0),a};Ku.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return Jo(e)};Ku.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return M2.SlowBuffer(e)}});var nT=N(OK=>{"use strict";var aT=zK().Buffer,IK=aT.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function bMe(e){if(!e)return"utf8";for(var r;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(r)return;e=(""+e).toLowerCase(),r=!0}}function xMe(e){var r=bMe(e);if(typeof r!="string"&&(aT.isEncoding===IK||!IK(e)))throw new Error("Unknown encoding: "+e);return r||e}OK.StringDecoder=od;function od(e){this.encoding=xMe(e);var r;switch(this.encoding){case"utf16le":this.text=kMe,this.end=SMe,r=4;break;case"utf8":this.fillLast=TMe,r=4;break;case"base64":this.text=qMe,this.end=LMe,r=3;break;default:this.write=CMe,this.end=EMe;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=aT.allocUnsafe(r)}od.prototype.write=function(e){if(e.length===0)return"";var r,t;if(this.lastNeed){if(r=this.fillLast(e),r===void 0)return"";t=this.lastNeed,this.lastNeed=0}else t=0;return t>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function _Me(e,r,t){var a=r.length-1;if(a=0?(n>0&&(e.lastNeed=n-1),n):--a=0?(n>0&&(e.lastNeed=n-2),n):--a=0?(n>0&&(n===2?n=0:e.lastNeed=n-3),n):0))}function wMe(e,r,t){if((r[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&r.length>1){if((r[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&r.length>2&&(r[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function TMe(e){var r=this.lastTotal-this.lastNeed,t=wMe(this,e,r);if(t!==void 0)return t;if(this.lastNeed<=e.length)return e.copy(this.lastChar,r,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,r,0,e.length),this.lastNeed-=e.length}function AMe(e,r){var t=_Me(this,e,r);if(!this.lastNeed)return e.toString("utf8",r);this.lastTotal=t;var a=e.length-(t-this.lastNeed);return e.copy(this.lastChar,0,a),e.toString("utf8",r,a)}function MMe(e){var r=e&&e.length?this.write(e):"";return this.lastNeed?r+"\uFFFD":r}function kMe(e,r){if((e.length-r)%2===0){var t=e.toString("utf16le",r);if(t){var a=t.charCodeAt(t.length-1);if(a>=55296&&a<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],t.slice(0,-1)}return t}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",r,e.length-1)}function SMe(e){var r=e&&e.length?this.write(e):"";if(this.lastNeed){var t=this.lastTotal-this.lastNeed;return r+this.lastChar.toString("utf16le",0,t)}return r}function qMe(e,r){var t=(e.length-r)%3;return t===0?e.toString("base64",r):(this.lastNeed=3-t,this.lastTotal=3,t===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",r,e.length-t))}function LMe(e){var r=e&&e.length?this.write(e):"";return this.lastNeed?r+this.lastChar.toString("base64",0,3-this.lastNeed):r}function CMe(e){return e.toString(this.encoding)}function EMe(e){return e&&e.length?this.write(e):""}});var k2=N((LBe,UK)=>{"use strict";var BK=Ju().codes.ERR_STREAM_PREMATURE_CLOSE;function DMe(e){var r=!1;return function(){if(!r){r=!0;for(var t=arguments.length,a=new Array(t),n=0;n{"use strict";var S2;function Ts(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}var FMe=k2(),As=Symbol("lastResolve"),Qu=Symbol("lastReject"),ld=Symbol("error"),q2=Symbol("ended"),ef=Symbol("lastPromise"),iT=Symbol("handlePromise"),rf=Symbol("stream");function Ms(e,r){return{value:e,done:r}}function NMe(e){var r=e[As];if(r!==null){var t=e[rf].read();t!==null&&(e[ef]=null,e[As]=null,e[Qu]=null,r(Ms(t,!1)))}}function zMe(e){process.nextTick(NMe,e)}function IMe(e,r){return function(t,a){e.then(function(){if(r[q2]){t(Ms(void 0,!0));return}r[iT](t,a)},a)}}var OMe=Object.getPrototypeOf(function(){}),BMe=Object.setPrototypeOf((S2={get stream(){return this[rf]},next:function(){var r=this,t=this[ld];if(t!==null)return Promise.reject(t);if(this[q2])return Promise.resolve(Ms(void 0,!0));if(this[rf].destroyed)return new Promise(function(o,l){process.nextTick(function(){r[ld]?l(r[ld]):o(Ms(void 0,!0))})});var a=this[ef],n;if(a)n=new Promise(IMe(a,this));else{var i=this[rf].read();if(i!==null)return Promise.resolve(Ms(i,!1));n=new Promise(this[iT])}return this[ef]=n,n}},Ts(S2,Symbol.asyncIterator,function(){return this}),Ts(S2,"return",function(){var r=this;return new Promise(function(t,a){r[rf].destroy(null,function(n){if(n){a(n);return}t(Ms(void 0,!0))})})}),S2),OMe),HMe=function(r){var t,a=Object.create(BMe,(t={},Ts(t,rf,{value:r,writable:!0}),Ts(t,As,{value:null,writable:!0}),Ts(t,Qu,{value:null,writable:!0}),Ts(t,ld,{value:null,writable:!0}),Ts(t,q2,{value:r._readableState.endEmitted,writable:!0}),Ts(t,iT,{value:function(i,o){var l=a[rf].read();l?(a[ef]=null,a[As]=null,a[Qu]=null,i(Ms(l,!1))):(a[As]=i,a[Qu]=o)},writable:!0}),t));return a[ef]=null,FMe(r,function(n){if(n&&n.code!=="ERR_STREAM_PREMATURE_CLOSE"){var i=a[Qu];i!==null&&(a[ef]=null,a[As]=null,a[Qu]=null,i(n)),a[ld]=n;return}var o=a[As];o!==null&&(a[ef]=null,a[As]=null,a[Qu]=null,o(Ms(void 0,!0))),a[q2]=!0}),r.on("readable",zMe.bind(null,a)),a};GK.exports=HMe});var WK=N((EBe,YK)=>{YK.exports=function(){throw new Error("Readable.from is not available in the browser")}});var eT=N((RBe,tQ)=>{"use strict";tQ.exports=gt;var Mv;gt.ReadableState=JK;var DBe=eu().EventEmitter,XK=function(r,t){return r.listeners(t).length},ud=J6(),L2=cv().Buffer,UMe=window.Uint8Array||function(){};function GMe(e){return L2.from(e)}function VMe(e){return L2.isBuffer(e)||e instanceof UMe}var oT=G7(),tt;oT&&oT.debuglog?tt=oT.debuglog("stream"):tt=function(){};var YMe=gK(),hT=W7(),WMe=j7(),jMe=WMe.getHighWaterMark,C2=Ju().codes,ZMe=C2.ERR_INVALID_ARG_TYPE,XMe=C2.ERR_STREAM_PUSH_AFTER_EOF,JMe=C2.ERR_METHOD_NOT_IMPLEMENTED,$Me=C2.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,kv,lT,sT;kl()(gt,ud);var sd=hT.errorOrDestroy,uT=["error","close","destroy","pause","resume"];function KMe(e,r,t){if(typeof e.prependListener=="function")return e.prependListener(r,t);!e._events||!e._events[r]?e.on(r,t):Array.isArray(e._events[r])?e._events[r].unshift(t):e._events[r]=[t,e._events[r]]}function JK(e,r,t){Mv=Mv||$u(),e=e||{},typeof t!="boolean"&&(t=r instanceof Mv),this.objectMode=!!e.objectMode,t&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=jMe(this,e,"readableHighWaterMark",t),this.buffer=new YMe,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(kv||(kv=nT().StringDecoder),this.decoder=new kv(e.encoding),this.encoding=e.encoding)}function gt(e){if(Mv=Mv||$u(),!(this instanceof gt))return new gt(e);var r=this instanceof Mv;this._readableState=new JK(e,this,r),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),ud.call(this)}Object.defineProperty(gt.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(r){this._readableState&&(this._readableState.destroyed=r)}});gt.prototype.destroy=hT.destroy;gt.prototype._undestroy=hT.undestroy;gt.prototype._destroy=function(e,r){r(e)};gt.prototype.push=function(e,r){var t=this._readableState,a;return t.objectMode?a=!0:typeof e=="string"&&(r=r||t.defaultEncoding,r!==t.encoding&&(e=L2.from(e,r),r=""),a=!0),$K(this,e,r,!1,a)};gt.prototype.unshift=function(e){return $K(this,e,null,!0,!1)};function $K(e,r,t,a,n){tt("readableAddChunk",r);var i=e._readableState;if(r===null)i.reading=!1,r9e(e,i);else{var o;if(n||(o=QMe(i,r)),o)sd(e,o);else if(i.objectMode||r&&r.length>0)if(typeof r!="string"&&!i.objectMode&&Object.getPrototypeOf(r)!==L2.prototype&&(r=GMe(r)),a)i.endEmitted?sd(e,new $Me):fT(e,i,r,!0);else if(i.ended)sd(e,new XMe);else{if(i.destroyed)return!1;i.reading=!1,i.decoder&&!t?(r=i.decoder.write(r),i.objectMode||r.length!==0?fT(e,i,r,!1):vT(e,i)):fT(e,i,r,!1)}else a||(i.reading=!1,vT(e,i))}return!i.ended&&(i.length=jK?e=jK:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function ZK(e,r){return e<=0||r.length===0&&r.ended?0:r.objectMode?1:e!==e?r.flowing&&r.length?r.buffer.head.data.length:r.length:(e>r.highWaterMark&&(r.highWaterMark=e9e(e)),e<=r.length?e:r.ended?r.length:(r.needReadable=!0,0))}gt.prototype.read=function(e){tt("read",e),e=parseInt(e,10);var r=this._readableState,t=e;if(e!==0&&(r.emittedReadable=!1),e===0&&r.needReadable&&((r.highWaterMark!==0?r.length>=r.highWaterMark:r.length>0)||r.ended))return tt("read: emitReadable",r.length,r.ended),r.length===0&&r.ended?cT(this):E2(this),null;if(e=ZK(e,r),e===0&&r.ended)return r.length===0&&cT(this),null;var a=r.needReadable;tt("need readable",a),(r.length===0||r.length-e0?n=eQ(e,r):n=null,n===null?(r.needReadable=r.length<=r.highWaterMark,e=0):(r.length-=e,r.awaitDrain=0),r.length===0&&(r.ended||(r.needReadable=!0),t!==e&&r.ended&&cT(this)),n!==null&&this.emit("data",n),n};function r9e(e,r){if(tt("onEofChunk"),!r.ended){if(r.decoder){var t=r.decoder.end();t&&t.length&&(r.buffer.push(t),r.length+=r.objectMode?1:t.length)}r.ended=!0,r.sync?E2(e):(r.needReadable=!1,r.emittedReadable||(r.emittedReadable=!0,KK(e)))}}function E2(e){var r=e._readableState;tt("emitReadable",r.needReadable,r.emittedReadable),r.needReadable=!1,r.emittedReadable||(tt("emitReadable",r.flowing),r.emittedReadable=!0,process.nextTick(KK,e))}function KK(e){var r=e._readableState;tt("emitReadable_",r.destroyed,r.length,r.ended),!r.destroyed&&(r.length||r.ended)&&(e.emit("readable"),r.emittedReadable=!1),r.needReadable=!r.flowing&&!r.ended&&r.length<=r.highWaterMark,dT(e)}function vT(e,r){r.readingMore||(r.readingMore=!0,process.nextTick(t9e,e,r))}function t9e(e,r){for(;!r.reading&&!r.ended&&(r.length1&&rQ(a.pipes,e)!==-1)&&!u&&(tt("false write response, pause",a.awaitDrain),a.awaitDrain++),t.pause())}function v(m){tt("onerror",m),y(),e.removeListener("error",v),XK(e,"error")===0&&sd(e,m)}KMe(e,"error",v);function d(){e.removeListener("finish",p),y()}e.once("close",d);function p(){tt("onfinish"),e.removeListener("close",d),y()}e.once("finish",p);function y(){tt("unpipe"),t.unpipe(e)}return e.emit("pipe",t),a.flowing||(tt("pipe resume"),t.resume()),e};function a9e(e){return function(){var t=e._readableState;tt("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,t.awaitDrain===0&&XK(e,"data")&&(t.flowing=!0,dT(e))}}gt.prototype.unpipe=function(e){var r=this._readableState,t={hasUnpiped:!1};if(r.pipesCount===0)return this;if(r.pipesCount===1)return e&&e!==r.pipes?this:(e||(e=r.pipes),r.pipes=null,r.pipesCount=0,r.flowing=!1,e&&e.emit("unpipe",this,t),this);if(!e){var a=r.pipes,n=r.pipesCount;r.pipes=null,r.pipesCount=0,r.flowing=!1;for(var i=0;i0,a.flowing!==!1&&this.resume()):e==="readable"&&!a.endEmitted&&!a.readableListening&&(a.readableListening=a.needReadable=!0,a.flowing=!1,a.emittedReadable=!1,tt("on readable",a.length,a.reading),a.length?E2(this):a.reading||process.nextTick(n9e,this)),t};gt.prototype.addListener=gt.prototype.on;gt.prototype.removeListener=function(e,r){var t=ud.prototype.removeListener.call(this,e,r);return e==="readable"&&process.nextTick(QK,this),t};gt.prototype.removeAllListeners=function(e){var r=ud.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(QK,this),r};function QK(e){var r=e._readableState;r.readableListening=e.listenerCount("readable")>0,r.resumeScheduled&&!r.paused?r.flowing=!0:e.listenerCount("data")>0&&e.resume()}function n9e(e){tt("readable nexttick read 0"),e.read(0)}gt.prototype.resume=function(){var e=this._readableState;return e.flowing||(tt("resume"),e.flowing=!e.readableListening,i9e(this,e)),e.paused=!1,this};function i9e(e,r){r.resumeScheduled||(r.resumeScheduled=!0,process.nextTick(o9e,e,r))}function o9e(e,r){tt("resume",r.reading),r.reading||e.read(0),r.resumeScheduled=!1,e.emit("resume"),dT(e),r.flowing&&!r.reading&&e.read(0)}gt.prototype.pause=function(){return tt("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(tt("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function dT(e){var r=e._readableState;for(tt("flow",r.flowing);r.flowing&&e.read()!==null;);}gt.prototype.wrap=function(e){var r=this,t=this._readableState,a=!1;e.on("end",function(){if(tt("wrapped end"),t.decoder&&!t.ended){var o=t.decoder.end();o&&o.length&&r.push(o)}r.push(null)}),e.on("data",function(o){if(tt("wrapped data"),t.decoder&&(o=t.decoder.write(o)),!(t.objectMode&&o==null)&&!(!t.objectMode&&(!o||!o.length))){var l=r.push(o);l||(a=!0,e.pause())}});for(var n in e)this[n]===void 0&&typeof e[n]=="function"&&(this[n]=function(l){return function(){return e[l].apply(e,arguments)}}(n));for(var i=0;i=r.length?(r.decoder?t=r.buffer.join(""):r.buffer.length===1?t=r.buffer.first():t=r.buffer.concat(r.length),r.buffer.clear()):t=r.buffer.consume(e,r.decoder),t}function cT(e){var r=e._readableState;tt("endReadable",r.endEmitted),r.endEmitted||(r.ended=!0,process.nextTick(l9e,r,e))}function l9e(e,r){if(tt("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,r.readable=!1,r.emit("end"),e.autoDestroy)){var t=r._writableState;(!t||t.autoDestroy&&t.finished)&&r.destroy()}}typeof Symbol=="function"&&(gt.from=function(e,r){return sT===void 0&&(sT=WK()),sT(gt,e,r)});function rQ(e,r){for(var t=0,a=e.length;t{"use strict";nQ.exports=ql;var D2=Ju().codes,s9e=D2.ERR_METHOD_NOT_IMPLEMENTED,u9e=D2.ERR_MULTIPLE_CALLBACK,f9e=D2.ERR_TRANSFORM_ALREADY_TRANSFORMING,c9e=D2.ERR_TRANSFORM_WITH_LENGTH_0,R2=$u();kl()(ql,R2);function v9e(e,r){var t=this._transformState;t.transforming=!1;var a=t.writecb;if(a===null)return this.emit("error",new u9e);t.writechunk=null,t.writecb=null,r!=null&&this.push(r),a(e);var n=this._readableState;n.reading=!1,(n.needReadable||n.length{"use strict";oQ.exports=fd;var iQ=pT();kl()(fd,iQ);function fd(e){if(!(this instanceof fd))return new fd(e);iQ.call(this,e)}fd.prototype._transform=function(e,r,t){t(null,e)}});var vQ=N((NBe,cQ)=>{"use strict";var yT;function d9e(e){var r=!1;return function(){r||(r=!0,e.apply(void 0,arguments))}}var fQ=Ju().codes,p9e=fQ.ERR_MISSING_ARGS,y9e=fQ.ERR_STREAM_DESTROYED;function sQ(e){if(e)throw e}function m9e(e){return e.setHeader&&typeof e.abort=="function"}function g9e(e,r,t,a){a=d9e(a);var n=!1;e.on("close",function(){n=!0}),yT===void 0&&(yT=k2()),yT(e,{readable:r,writable:t},function(o){if(o)return a(o);n=!0,a()});var i=!1;return function(o){if(!n&&!i){if(i=!0,m9e(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();a(o||new y9e("pipe"))}}}function uQ(e){e()}function b9e(e,r){return e.pipe(r)}function x9e(e){return!e.length||typeof e[e.length-1]!="function"?sQ:e.pop()}function _9e(){for(var e=arguments.length,r=new Array(e),t=0;t0;return g9e(o,s,u,function(f){n||(n=f),f&&i.forEach(uQ),!s&&(i.forEach(uQ),a(n))})});return r.reduce(b9e)}cQ.exports=_9e});var dQ=N((zBe,hQ)=>{hQ.exports=Bi;var mT=eu().EventEmitter,w9e=kl();w9e(Bi,mT);Bi.Readable=eT();Bi.Writable=$7();Bi.Duplex=$u();Bi.Transform=pT();Bi.PassThrough=lQ();Bi.finished=k2();Bi.pipeline=vQ();Bi.Stream=Bi;function Bi(){mT.call(this)}Bi.prototype.pipe=function(e,r){var t=this;function a(f){e.writable&&e.write(f)===!1&&t.pause&&t.pause()}t.on("data",a);function n(){t.readable&&t.resume&&t.resume()}e.on("drain",n),!e._isStdio&&(!r||r.end!==!1)&&(t.on("end",o),t.on("close",l));var i=!1;function o(){i||(i=!0,e.end())}function l(){i||(i=!0,typeof e.destroy=="function"&&e.destroy())}function s(f){if(u(),mT.listenerCount(this,"error")===0)throw f}t.on("error",s),e.on("error",s);function u(){t.removeListener("data",a),e.removeListener("drain",n),t.removeListener("end",o),t.removeListener("close",l),t.removeListener("error",s),e.removeListener("error",s),t.removeListener("end",u),t.removeListener("close",u),e.removeListener("close",u)}return t.on("end",u),t.on("close",u),e.on("close",u),e.emit("pipe",t),e}});var qv=N(ut=>{var pQ=Object.getOwnPropertyDescriptors||function(r){for(var t=Object.keys(r),a={},n=0;n=n)return l;switch(l){case"%s":return String(a[t++]);case"%d":return Number(a[t++]);case"%j":try{return JSON.stringify(a[t++])}catch(s){return"[Circular]"}default:return l}}),o=a[t];t=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),_T(r)?t.showHidden=r:r&&ut._extend(t,r),af(t.showHidden)&&(t.showHidden=!1),af(t.depth)&&(t.depth=2),af(t.colors)&&(t.colors=!1),af(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=A9e),z2(t,e,t.depth)}ut.inspect=ks;ks.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};ks.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function A9e(e,r){var t=ks.styles[r];return t?"\x1B["+ks.colors[t][0]+"m"+e+"\x1B["+ks.colors[t][1]+"m":e}function M9e(e,r){return e}function k9e(e){var r={};return e.forEach(function(t,a){r[t]=!0}),r}function z2(e,r,t){if(e.customInspect&&r&&N2(r.inspect)&&r.inspect!==ut.inspect&&!(r.constructor&&r.constructor.prototype===r)){var a=r.inspect(t,e);return B2(a)||(a=z2(e,a,t)),a}var n=S9e(e,r);if(n)return n;var i=Object.keys(r),o=k9e(i);if(e.showHidden&&(i=Object.getOwnPropertyNames(r)),vd(r)&&(i.indexOf("message")>=0||i.indexOf("description")>=0))return gT(r);if(i.length===0){if(N2(r)){var l=r.name?": "+r.name:"";return e.stylize("[Function"+l+"]","special")}if(cd(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(I2(r))return e.stylize(Date.prototype.toString.call(r),"date");if(vd(r))return gT(r)}var s="",u=!1,f=["{","}"];if(mQ(r)&&(u=!0,f=["[","]"]),N2(r)){var c=r.name?": "+r.name:"";s=" [Function"+c+"]"}if(cd(r)&&(s=" "+RegExp.prototype.toString.call(r)),I2(r)&&(s=" "+Date.prototype.toUTCString.call(r)),vd(r)&&(s=" "+gT(r)),i.length===0&&(!u||r.length==0))return f[0]+s+f[1];if(t<0)return cd(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special");e.seen.push(r);var v;return u?v=q9e(e,r,t,o,i):v=i.map(function(d){return xT(e,r,t,o,d,u)}),e.seen.pop(),L9e(v,s,f)}function S9e(e,r){if(af(r))return e.stylize("undefined","undefined");if(B2(r)){var t="'"+JSON.stringify(r).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(t,"string")}if(gQ(r))return e.stylize(""+r,"number");if(_T(r))return e.stylize(""+r,"boolean");if(O2(r))return e.stylize("null","null")}function gT(e){return"["+Error.prototype.toString.call(e)+"]"}function q9e(e,r,t,a,n){for(var i=[],o=0,l=r.length;o-1&&(i?l=l.split(` `).map(function(u){return" "+u}).join(` `).slice(2):l=` `+l.split(` `).map(function(u){return" "+u}).join(` -`))):l=e.stylize("[Circular]","special")),af(o)){if(i&&n.match(/^\d+$/))return l;o=JSON.stringify(""+n),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+l}function q9e(e,r,t){var a=0,n=e.reduce(function(i,o){return a++,o.indexOf(` +`))):l=e.stylize("[Circular]","special")),af(o)){if(i&&n.match(/^\d+$/))return l;o=JSON.stringify(""+n),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+l}function L9e(e,r,t){var a=0,n=e.reduce(function(i,o){return a++,o.indexOf(` `)>=0&&a++,i+o.replace(/\u001b\[\d\d?m/g,"").length+1},0);return n>60?t[0]+(r===""?"":r+` `)+" "+e.join(`, - `)+" "+t[1]:t[0]+r+" "+e.join(", ")+" "+t[1]}ut.types=N7();function yQ(e){return Array.isArray(e)}ut.isArray=yQ;function _T(e){return typeof e=="boolean"}ut.isBoolean=_T;function I2(e){return e===null}ut.isNull=I2;function L9e(e){return e==null}ut.isNullOrUndefined=L9e;function mQ(e){return typeof e=="number"}ut.isNumber=mQ;function O2(e){return typeof e=="string"}ut.isString=O2;function C9e(e){return typeof e=="symbol"}ut.isSymbol=C9e;function af(e){return e===void 0}ut.isUndefined=af;function fd(e){return kv(e)&&wT(e)==="[object RegExp]"}ut.isRegExp=fd;ut.types.isRegExp=fd;function kv(e){return typeof e=="object"&&e!==null}ut.isObject=kv;function z2(e){return kv(e)&&wT(e)==="[object Date]"}ut.isDate=z2;ut.types.isDate=z2;function cd(e){return kv(e)&&(wT(e)==="[object Error]"||e instanceof Error)}ut.isError=cd;ut.types.isNativeError=cd;function F2(e){return typeof e=="function"}ut.isFunction=F2;function E9e(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}ut.isPrimitive=E9e;ut.isBuffer=z7();function wT(e){return Object.prototype.toString.call(e)}function bT(e){return e<10?"0"+e.toString(10):e.toString(10)}var D9e=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function R9e(){var e=new Date,r=[bT(e.getHours()),bT(e.getMinutes()),bT(e.getSeconds())].join(":");return[e.getDate(),D9e[e.getMonth()],r].join(" ")}ut.log=function(){console.log("%s - %s",R9e(),ut.format.apply(ut,arguments))};ut.inherits=kl();ut._extend=function(e,r){if(!r||!kv(r))return e;for(var t=Object.keys(r),a=t.length;a--;)e[t[a]]=r[t[a]];return e};function gQ(e,r){return Object.prototype.hasOwnProperty.call(e,r)}var tf=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;ut.promisify=function(r){if(typeof r!="function")throw new TypeError('The "original" argument must be of type Function');if(tf&&r[tf]){var t=r[tf];if(typeof t!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,tf,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var a,n,i=new Promise(function(s,u){a=s,n=u}),o=[],l=0;l{"use strict";function Ss(e){"@babel/helpers - typeof";return Ss=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},Ss(e)}function bQ(e,r){for(var t=0;t2?"one of ".concat(r," ").concat(e.slice(0,t-1).join(", "),", or ")+e[t-1]:t===2?"one of ".concat(r," ").concat(e[0]," or ").concat(e[1]):"of ".concat(r," ").concat(e[0])}else return"of ".concat(r," ").concat(String(e))}function Y9e(e,r,t){return e.substr(!t||t<0?0:+t,r.length)===r}function j9e(e,r,t){return(t===void 0||t>e.length)&&(t=e.length),e.substring(t-r.length,t)===r}function W9e(e,r,t){return typeof t!="number"&&(t=0),t+r.length>e.length?!1:e.indexOf(r,t)!==-1}vd("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError);vd("ERR_INVALID_ARG_TYPE",function(e,r,t){qv===void 0&&(qv=H2()),qv(typeof e=="string","'name' must be a string");var a;typeof r=="string"&&Y9e(r,"not ")?(a="must not be",r=r.replace(/^not /,"")):a="must be";var n;if(j9e(e," argument"))n="The ".concat(e," ").concat(a," ").concat(xQ(r,"type"));else{var i=W9e(e,".")?"property":"argument";n='The "'.concat(e,'" ').concat(i," ").concat(a," ").concat(xQ(r,"type"))}return n+=". Received type ".concat(Ss(t)),n},TypeError);vd("ERR_INVALID_ARG_VALUE",function(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";TT===void 0&&(TT=Sv());var a=TT.inspect(r);return a.length>128&&(a="".concat(a.slice(0,128),"...")),"The argument '".concat(e,"' ").concat(t,". Received ").concat(a)},TypeError,RangeError);vd("ERR_INVALID_RETURN_VALUE",function(e,r,t){var a;return t&&t.constructor&&t.constructor.name?a="instance of ".concat(t.constructor.name):a="type ".concat(Ss(t)),"Expected ".concat(e,' to be returned from the "').concat(r,'"')+" function but got ".concat(a,".")},TypeError);vd("ERR_MISSING_ARGS",function(){for(var e=arguments.length,r=new Array(e),t=0;t0,"At least one arg needs to be specified");var a="The ",n=r.length;switch(r=r.map(function(i){return'"'.concat(i,'"')}),n){case 1:a+="".concat(r[0]," argument");break;case 2:a+="".concat(r[0]," and ").concat(r[1]," arguments");break;default:a+=r.slice(0,n-1).join(", "),a+=", and ".concat(r[n-1]," arguments");break}return"".concat(a," must be specified")},TypeError);wQ.exports.codes=_Q});var DQ=N((BBe,EQ)=>{"use strict";function TQ(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);r&&(a=a.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,a)}return t}function AQ(e){for(var r=1;re.length)&&(t=e.length),e.substring(t-r.length,t)===r}function nke(e,r){if(r=Math.floor(r),e.length==0||r==0)return"";var t=e.length*r;for(r=Math.floor(Math.log(r)/Math.log(2));r;)e+=e,r--;return e+=e.substring(0,t-e.length),e}var go="",hd="",dd="",Ka="",nf={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},ike=10;function SQ(e){var r=Object.keys(e),t=Object.create(Object.getPrototypeOf(e));return r.forEach(function(a){t[a]=e[a]}),Object.defineProperty(t,"message",{value:e.message}),t}function pd(e){return qT(e,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function oke(e,r,t){var a="",n="",i=0,o="",l=!1,s=pd(e),u=s.split(` -`),f=pd(r).split(` -`),c=0,v="";if(t==="strictEqual"&&Un(e)==="object"&&Un(r)==="object"&&e!==null&&r!==null&&(t="strictEqualObject"),u.length===1&&f.length===1&&u[0]!==f[0]){var d=u[0].length+f[0].length;if(d<=ike){if((Un(e)!=="object"||e===null)&&(Un(r)!=="object"||r===null)&&(e!==0||r!==0))return"".concat(nf[t],` + `)+" "+t[1]:t[0]+r+" "+e.join(", ")+" "+t[1]}ut.types=N7();function mQ(e){return Array.isArray(e)}ut.isArray=mQ;function _T(e){return typeof e=="boolean"}ut.isBoolean=_T;function O2(e){return e===null}ut.isNull=O2;function C9e(e){return e==null}ut.isNullOrUndefined=C9e;function gQ(e){return typeof e=="number"}ut.isNumber=gQ;function B2(e){return typeof e=="string"}ut.isString=B2;function E9e(e){return typeof e=="symbol"}ut.isSymbol=E9e;function af(e){return e===void 0}ut.isUndefined=af;function cd(e){return Sv(e)&&wT(e)==="[object RegExp]"}ut.isRegExp=cd;ut.types.isRegExp=cd;function Sv(e){return typeof e=="object"&&e!==null}ut.isObject=Sv;function I2(e){return Sv(e)&&wT(e)==="[object Date]"}ut.isDate=I2;ut.types.isDate=I2;function vd(e){return Sv(e)&&(wT(e)==="[object Error]"||e instanceof Error)}ut.isError=vd;ut.types.isNativeError=vd;function N2(e){return typeof e=="function"}ut.isFunction=N2;function D9e(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}ut.isPrimitive=D9e;ut.isBuffer=z7();function wT(e){return Object.prototype.toString.call(e)}function bT(e){return e<10?"0"+e.toString(10):e.toString(10)}var R9e=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function P9e(){var e=new Date,r=[bT(e.getHours()),bT(e.getMinutes()),bT(e.getSeconds())].join(":");return[e.getDate(),R9e[e.getMonth()],r].join(" ")}ut.log=function(){console.log("%s - %s",P9e(),ut.format.apply(ut,arguments))};ut.inherits=kl();ut._extend=function(e,r){if(!r||!Sv(r))return e;for(var t=Object.keys(r),a=t.length;a--;)e[t[a]]=r[t[a]];return e};function bQ(e,r){return Object.prototype.hasOwnProperty.call(e,r)}var tf=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;ut.promisify=function(r){if(typeof r!="function")throw new TypeError('The "original" argument must be of type Function');if(tf&&r[tf]){var t=r[tf];if(typeof t!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,tf,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var a,n,i=new Promise(function(s,u){a=s,n=u}),o=[],l=0;l{"use strict";function Ss(e){"@babel/helpers - typeof";return Ss=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},Ss(e)}function xQ(e,r){for(var t=0;t2?"one of ".concat(r," ").concat(e.slice(0,t-1).join(", "),", or ")+e[t-1]:t===2?"one of ".concat(r," ").concat(e[0]," or ").concat(e[1]):"of ".concat(r," ").concat(e[0])}else return"of ".concat(r," ").concat(String(e))}function W9e(e,r,t){return e.substr(!t||t<0?0:+t,r.length)===r}function j9e(e,r,t){return(t===void 0||t>e.length)&&(t=e.length),e.substring(t-r.length,t)===r}function Z9e(e,r,t){return typeof t!="number"&&(t=0),t+r.length>e.length?!1:e.indexOf(r,t)!==-1}hd("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError);hd("ERR_INVALID_ARG_TYPE",function(e,r,t){Lv===void 0&&(Lv=U2()),Lv(typeof e=="string","'name' must be a string");var a;typeof r=="string"&&W9e(r,"not ")?(a="must not be",r=r.replace(/^not /,"")):a="must be";var n;if(j9e(e," argument"))n="The ".concat(e," ").concat(a," ").concat(_Q(r,"type"));else{var i=Z9e(e,".")?"property":"argument";n='The "'.concat(e,'" ').concat(i," ").concat(a," ").concat(_Q(r,"type"))}return n+=". Received type ".concat(Ss(t)),n},TypeError);hd("ERR_INVALID_ARG_VALUE",function(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";TT===void 0&&(TT=qv());var a=TT.inspect(r);return a.length>128&&(a="".concat(a.slice(0,128),"...")),"The argument '".concat(e,"' ").concat(t,". Received ").concat(a)},TypeError,RangeError);hd("ERR_INVALID_RETURN_VALUE",function(e,r,t){var a;return t&&t.constructor&&t.constructor.name?a="instance of ".concat(t.constructor.name):a="type ".concat(Ss(t)),"Expected ".concat(e,' to be returned from the "').concat(r,'"')+" function but got ".concat(a,".")},TypeError);hd("ERR_MISSING_ARGS",function(){for(var e=arguments.length,r=new Array(e),t=0;t0,"At least one arg needs to be specified");var a="The ",n=r.length;switch(r=r.map(function(i){return'"'.concat(i,'"')}),n){case 1:a+="".concat(r[0]," argument");break;case 2:a+="".concat(r[0]," and ").concat(r[1]," arguments");break;default:a+=r.slice(0,n-1).join(", "),a+=", and ".concat(r[n-1]," arguments");break}return"".concat(a," must be specified")},TypeError);TQ.exports.codes=wQ});var RQ=N((BBe,DQ)=>{"use strict";function AQ(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);r&&(a=a.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,a)}return t}function MQ(e){for(var r=1;re.length)&&(t=e.length),e.substring(t-r.length,t)===r}function ike(e,r){if(r=Math.floor(r),e.length==0||r==0)return"";var t=e.length*r;for(r=Math.floor(Math.log(r)/Math.log(2));r;)e+=e,r--;return e+=e.substring(0,t-e.length),e}var bo="",dd="",pd="",Ka="",nf={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},oke=10;function qQ(e){var r=Object.keys(e),t=Object.create(Object.getPrototypeOf(e));return r.forEach(function(a){t[a]=e[a]}),Object.defineProperty(t,"message",{value:e.message}),t}function yd(e){return qT(e,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function lke(e,r,t){var a="",n="",i=0,o="",l=!1,s=yd(e),u=s.split(` +`),f=yd(r).split(` +`),c=0,v="";if(t==="strictEqual"&&Un(e)==="object"&&Un(r)==="object"&&e!==null&&r!==null&&(t="strictEqualObject"),u.length===1&&f.length===1&&u[0]!==f[0]){var d=u[0].length+f[0].length;if(d<=oke){if((Un(e)!=="object"||e===null)&&(Un(r)!=="object"||r===null)&&(e!==0||r!==0))return"".concat(nf[t],` `)+"".concat(u[0]," !== ").concat(f[0],` `)}else if(t!=="strictEqualObject"){var p=process.stderr&&process.stderr.isTTY?process.stderr.columns:80;if(d2&&(v=` - `.concat(nke(" ",c),"^"),c=0)}}}for(var y=u[u.length-1],m=f[f.length-1];y===m&&(c++<2?o=` + `.concat(ike(" ",c),"^"),c=0)}}}for(var y=u[u.length-1],m=f[f.length-1];y===m&&(c++<2?o=` `.concat(y).concat(o):a=y,u.pop(),f.pop(),!(u.length===0||f.length===0));)y=u[u.length-1],m=f[f.length-1];var x=Math.max(u.length,f.length);if(x===0){var w=s.split(` -`);if(w.length>30)for(w[26]="".concat(go,"...").concat(Ka);w.length>27;)w.pop();return"".concat(nf.notIdentical,` +`);if(w.length>30)for(w[26]="".concat(bo,"...").concat(Ka);w.length>27;)w.pop();return"".concat(nf.notIdentical,` `).concat(w.join(` `),` `)}c>3&&(o=` -`.concat(go,"...").concat(Ka).concat(o),l=!0),a!==""&&(o=` +`.concat(bo,"...").concat(Ka).concat(o),l=!0),a!==""&&(o=` `.concat(a).concat(o),a="");var _=0,b=nf[t]+` -`.concat(hd,"+ actual").concat(Ka," ").concat(dd,"- expected").concat(Ka),T=" ".concat(go,"...").concat(Ka," Lines skipped");for(c=0;c1&&c>2&&(k>4?(n+=` -`.concat(go,"...").concat(Ka),l=!0):k>3&&(n+=` +`.concat(dd,"+ actual").concat(Ka," ").concat(pd,"- expected").concat(Ka),T=" ".concat(bo,"...").concat(Ka," Lines skipped");for(c=0;c1&&c>2&&(k>4?(n+=` +`.concat(bo,"...").concat(Ka),l=!0):k>3&&(n+=` `.concat(f[c-2]),_++),n+=` `.concat(f[c-1]),_++),i=c,a+=` -`.concat(dd,"-").concat(Ka," ").concat(f[c]),_++;else if(f.length1&&c>2&&(k>4?(n+=` -`.concat(go,"...").concat(Ka),l=!0):k>3&&(n+=` +`.concat(pd,"-").concat(Ka," ").concat(f[c]),_++;else if(f.length1&&c>2&&(k>4?(n+=` +`.concat(bo,"...").concat(Ka),l=!0):k>3&&(n+=` `.concat(u[c-2]),_++),n+=` `.concat(u[c-1]),_++),i=c,n+=` -`.concat(hd,"+").concat(Ka," ").concat(u[c]),_++;else{var M=f[c],q=u[c],E=q!==M&&(!kQ(q,",")||q.slice(0,-1)!==M);E&&kQ(M,",")&&M.slice(0,-1)===q&&(E=!1,q+=","),E?(k>1&&c>2&&(k>4?(n+=` -`.concat(go,"...").concat(Ka),l=!0):k>3&&(n+=` +`.concat(dd,"+").concat(Ka," ").concat(u[c]),_++;else{var M=f[c],q=u[c],E=q!==M&&(!SQ(q,",")||q.slice(0,-1)!==M);E&&SQ(M,",")&&M.slice(0,-1)===q&&(E=!1,q+=","),E?(k>1&&c>2&&(k>4?(n+=` +`.concat(bo,"...").concat(Ka),l=!0):k>3&&(n+=` `.concat(u[c-2]),_++),n+=` `.concat(u[c-1]),_++),i=c,n+=` -`.concat(hd,"+").concat(Ka," ").concat(q),a+=` -`.concat(dd,"-").concat(Ka," ").concat(M),_+=2):(n+=a,a="",(k===1||c===0)&&(n+=` +`.concat(dd,"+").concat(Ka," ").concat(q),a+=` +`.concat(pd,"-").concat(Ka," ").concat(M),_+=2):(n+=a,a="",(k===1||c===0)&&(n+=` `.concat(q),_++))}if(_>20&&c30)for(d[26]="".concat(go,"...").concat(Ka);d.length>27;)d.pop();d.length===1?i=t.call(this,"".concat(v," ").concat(d[0])):i=t.call(this,"".concat(v,` +`).concat(bo,"...").concat(Ka).concat(a,` +`)+"".concat(bo,"...").concat(Ka)}return"".concat(b).concat(l?T:"",` +`).concat(n).concat(a).concat(o).concat(v)}var ske=function(e,r){Q9e(a,e);var t=eke(a);function a(n){var i;if(J9e(this,a),Un(n)!=="object"||n===null)throw new nke("options","Object",n);var o=n.message,l=n.operator,s=n.stackStartFn,u=n.actual,f=n.expected,c=Error.stackTraceLimit;if(Error.stackTraceLimit=0,o!=null)i=t.call(this,String(o));else if(process.stderr&&process.stderr.isTTY&&(process.stderr&&process.stderr.getColorDepth&&process.stderr.getColorDepth()!==1?(bo="\x1B[34m",dd="\x1B[32m",Ka="\x1B[39m",pd="\x1B[31m"):(bo="",dd="",Ka="",pd="")),Un(u)==="object"&&u!==null&&Un(f)==="object"&&f!==null&&"stack"in u&&u instanceof Error&&"stack"in f&&f instanceof Error&&(u=qQ(u),f=qQ(f)),l==="deepStrictEqual"||l==="strictEqual")i=t.call(this,lke(u,f,l));else if(l==="notDeepStrictEqual"||l==="notStrictEqual"){var v=nf[l],d=yd(u).split(` +`);if(l==="notStrictEqual"&&Un(u)==="object"&&u!==null&&(v=nf.notStrictEqualObject),d.length>30)for(d[26]="".concat(bo,"...").concat(Ka);d.length>27;)d.pop();d.length===1?i=t.call(this,"".concat(v," ").concat(d[0])):i=t.call(this,"".concat(v,` `).concat(d.join(` `),` -`))}else{var p=pd(u),y="",m=nf[l];l==="notDeepEqual"||l==="notEqual"?(p="".concat(nf[l],` +`))}else{var p=yd(u),y="",m=nf[l];l==="notDeepEqual"||l==="notEqual"?(p="".concat(nf[l],` -`).concat(p),p.length>1024&&(p="".concat(p.slice(0,1021),"..."))):(y="".concat(pd(f)),p.length>512&&(p="".concat(p.slice(0,509),"...")),y.length>512&&(y="".concat(y.slice(0,509),"...")),l==="deepEqual"||l==="equal"?p="".concat(m,` +`).concat(p),p.length>1024&&(p="".concat(p.slice(0,1021),"..."))):(y="".concat(yd(f)),p.length>512&&(p="".concat(p.slice(0,509),"...")),y.length>512&&(y="".concat(y.slice(0,509),"...")),l==="deepEqual"||l==="equal"?p="".concat(m,` `).concat(p,` should equal -`):y=" ".concat(l," ").concat(y)),i=t.call(this,"".concat(p).concat(y))}return Error.stackTraceLimit=c,i.generatedMessage=!o,Object.defineProperty(kT(i),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),i.code="ERR_ASSERTION",i.actual=u,i.expected=f,i.operator=l,Error.captureStackTrace&&Error.captureStackTrace(kT(i),s),i.stack,i.name="AssertionError",LQ(i)}return J9e(a,[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:r,value:function(i,o){return qT(this,AQ(AQ({},o),{},{customInspect:!1,depth:0}))}}]),a}(ST(Error),qT.custom);EQ.exports=lke});var LT=N((HBe,PQ)=>{"use strict";var RQ=Object.prototype.toString;PQ.exports=function(r){var t=RQ.call(r),a=t==="[object Arguments]";return a||(a=t!=="[object Array]"&&r!==null&&typeof r=="object"&&typeof r.length=="number"&&r.length>=0&&RQ.call(r.callee)==="[object Function]"),a}});var GQ=N((UBe,UQ)=>{"use strict";var HQ;Object.keys||(gd=Object.prototype.hasOwnProperty,CT=Object.prototype.toString,FQ=LT(),ET=Object.prototype.propertyIsEnumerable,NQ=!ET.call({toString:null},"toString"),zQ=ET.call(function(){},"prototype"),bd=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],G2=function(e){var r=e.constructor;return r&&r.prototype===e},IQ={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},OQ=function(){if(typeof window=="undefined")return!1;for(var e in window)try{if(!IQ["$"+e]&&gd.call(window,e)&&window[e]!==null&&typeof window[e]=="object")try{G2(window[e])}catch(r){return!0}}catch(r){return!0}return!1}(),BQ=function(e){if(typeof window=="undefined"||!OQ)return G2(e);try{return G2(e)}catch(r){return!1}},HQ=function(r){var t=r!==null&&typeof r=="object",a=CT.call(r)==="[object Function]",n=FQ(r),i=t&&CT.call(r)==="[object String]",o=[];if(!t&&!a&&!n)throw new TypeError("Object.keys called on a non-object");var l=zQ&&a;if(i&&r.length>0&&!gd.call(r,0))for(var s=0;s0)for(var u=0;u{"use strict";var ske=Array.prototype.slice,uke=LT(),VQ=Object.keys,V2=VQ?function(r){return VQ(r)}:GQ(),YQ=Object.keys;V2.shim=function(){if(Object.keys){var r=function(){var t=Object.keys(arguments);return t&&t.length===arguments.length}(1,2);r||(Object.keys=function(a){return uke(a)?YQ(ske.call(a)):YQ(a)})}else Object.keys=V2;return Object.keys||V2};jQ.exports=V2});var KQ=N((VBe,$Q)=>{"use strict";var fke=DT(),XQ=Vg()(),JQ=gv(),WQ=Object,cke=JQ("Array.prototype.push"),ZQ=JQ("Object.prototype.propertyIsEnumerable"),vke=XQ?Object.getOwnPropertySymbols:null;$Q.exports=function(r,t){if(r==null)throw new TypeError("target must be an object");var a=WQ(r);if(arguments.length===1)return a;for(var n=1;n{"use strict";var RT=KQ(),hke=function(){if(!Object.assign)return!1;for(var e="abcdefghijklmnopqrst",r=e.split(""),t={},a=0;a{"use strict";var ree=function(e){return e!==e};tee.exports=function(r,t){return r===0&&t===0?1/r===1/t:!!(r===t||ree(r)&&ree(t))}});var Y2=N((WBe,aee)=>{"use strict";var pke=PT();aee.exports=function(){return typeof Object.is=="function"?Object.is:pke}});var xd=N((ZBe,lee)=>{"use strict";var yke=DT(),mke=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",gke=Object.prototype.toString,bke=Array.prototype.concat,nee=Object.defineProperty,xke=function(e){return typeof e=="function"&&gke.call(e)==="[object Function]"},_ke=y7()(),iee=nee&&_ke,wke=function(e,r,t,a){if(r in e){if(a===!0){if(e[r]===t)return}else if(!xke(a)||!a())return}iee?nee(e,r,{configurable:!0,enumerable:!1,value:t,writable:!0}):e[r]=t},oee=function(e,r){var t=arguments.length>2?arguments[2]:{},a=yke(r);mke&&(a=bke.call(a,Object.getOwnPropertySymbols(r)));for(var n=0;n{"use strict";var Tke=Y2(),Ake=xd();see.exports=function(){var r=Tke();return Ake(Object,{is:r},{is:function(){return Object.is!==r}}),r}});var hee=N((JBe,vee)=>{"use strict";var Mke=xd(),kke=K0(),Ske=PT(),fee=Y2(),qke=uee(),cee=kke(fee(),Object);Mke(cee,{getPolyfill:fee,implementation:Ske,shim:qke});vee.exports=cee});var FT=N(($Be,dee)=>{"use strict";dee.exports=function(r){return r!==r}});var NT=N((KBe,pee)=>{"use strict";var Lke=FT();pee.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:Lke}});var mee=N((QBe,yee)=>{"use strict";var Cke=xd(),Eke=NT();yee.exports=function(){var r=Eke();return Cke(Number,{isNaN:r},{isNaN:function(){return Number.isNaN!==r}}),r}});var _ee=N((eHe,xee)=>{"use strict";var Dke=K0(),Rke=xd(),Pke=FT(),gee=NT(),Fke=mee(),bee=Dke(gee(),Number);Rke(bee,{getPolyfill:gee,implementation:Pke,shim:Fke});xee.exports=bee});var Hee=N((rHe,Bee)=>{"use strict";function wee(e,r){return Oke(e)||Ike(e,r)||zke(e,r)||Nke()}function Nke(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function zke(e,r){if(e){if(typeof e=="string")return Tee(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);if(t==="Object"&&e.constructor&&(t=e.constructor.name),t==="Map"||t==="Set")return Array.from(e);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return Tee(e,r)}}function Tee(e,r){(r==null||r>e.length)&&(r=e.length);for(var t=0,a=new Array(r);t10)return!0;for(var r=0;r57)return!0}return e.length===10&&e>=Math.pow(2,32)}function Z2(e){return Object.keys(e).filter(Zke).concat(J2(e).filter(Object.prototype.propertyIsEnumerable.bind(e)))}function Nee(e,r){if(e===r)return 0;for(var t=e.length,a=r.length,n=0,i=Math.min(t,a);n{"use strict";function bo(e){"@babel/helpers - typeof";return bo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},bo(e)}function Uee(e,r){for(var t=0;t1?t-1:0),n=1;n1?t-1:0),n=1;n1?t-1:0),n=1;n1?t-1:0),n=1;n{"use strict";var PQ=Object.prototype.toString;FQ.exports=function(r){var t=PQ.call(r),a=t==="[object Arguments]";return a||(a=t!=="[object Array]"&&r!==null&&typeof r=="object"&&typeof r.length=="number"&&r.length>=0&&PQ.call(r.callee)==="[object Function]"),a}});var VQ=N((UBe,GQ)=>{"use strict";var UQ;Object.keys||(bd=Object.prototype.hasOwnProperty,CT=Object.prototype.toString,NQ=LT(),ET=Object.prototype.propertyIsEnumerable,zQ=!ET.call({toString:null},"toString"),IQ=ET.call(function(){},"prototype"),xd=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],V2=function(e){var r=e.constructor;return r&&r.prototype===e},OQ={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},BQ=function(){if(typeof window=="undefined")return!1;for(var e in window)try{if(!OQ["$"+e]&&bd.call(window,e)&&window[e]!==null&&typeof window[e]=="object")try{V2(window[e])}catch(r){return!0}}catch(r){return!0}return!1}(),HQ=function(e){if(typeof window=="undefined"||!BQ)return V2(e);try{return V2(e)}catch(r){return!1}},UQ=function(r){var t=r!==null&&typeof r=="object",a=CT.call(r)==="[object Function]",n=NQ(r),i=t&&CT.call(r)==="[object String]",o=[];if(!t&&!a&&!n)throw new TypeError("Object.keys called on a non-object");var l=IQ&&a;if(i&&r.length>0&&!bd.call(r,0))for(var s=0;s0)for(var u=0;u{"use strict";var uke=Array.prototype.slice,fke=LT(),YQ=Object.keys,Y2=YQ?function(r){return YQ(r)}:VQ(),WQ=Object.keys;Y2.shim=function(){if(Object.keys){var r=function(){var t=Object.keys(arguments);return t&&t.length===arguments.length}(1,2);r||(Object.keys=function(a){return fke(a)?WQ(uke.call(a)):WQ(a)})}else Object.keys=Y2;return Object.keys||Y2};jQ.exports=Y2});var QQ=N((VBe,KQ)=>{"use strict";var cke=DT(),JQ=Yg()(),$Q=bv(),ZQ=Object,vke=$Q("Array.prototype.push"),XQ=$Q("Object.prototype.propertyIsEnumerable"),hke=JQ?Object.getOwnPropertySymbols:null;KQ.exports=function(r,t){if(r==null)throw new TypeError("target must be an object");var a=ZQ(r);if(arguments.length===1)return a;for(var n=1;n{"use strict";var RT=QQ(),dke=function(){if(!Object.assign)return!1;for(var e="abcdefghijklmnopqrst",r=e.split(""),t={},a=0;a{"use strict";var tee=function(e){return e!==e};aee.exports=function(r,t){return r===0&&t===0?1/r===1/t:!!(r===t||tee(r)&&tee(t))}});var W2=N((jBe,nee)=>{"use strict";var yke=PT();nee.exports=function(){return typeof Object.is=="function"?Object.is:yke}});var _d=N((ZBe,see)=>{"use strict";var mke=DT(),gke=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",bke=Object.prototype.toString,xke=Array.prototype.concat,iee=Object.defineProperty,_ke=function(e){return typeof e=="function"&&bke.call(e)==="[object Function]"},wke=y7()(),oee=iee&&wke,Tke=function(e,r,t,a){if(r in e){if(a===!0){if(e[r]===t)return}else if(!_ke(a)||!a())return}oee?iee(e,r,{configurable:!0,enumerable:!1,value:t,writable:!0}):e[r]=t},lee=function(e,r){var t=arguments.length>2?arguments[2]:{},a=mke(r);gke&&(a=xke.call(a,Object.getOwnPropertySymbols(r)));for(var n=0;n{"use strict";var Ake=W2(),Mke=_d();uee.exports=function(){var r=Ake();return Mke(Object,{is:r},{is:function(){return Object.is!==r}}),r}});var dee=N((JBe,hee)=>{"use strict";var kke=_d(),Ske=Q0(),qke=PT(),cee=W2(),Lke=fee(),vee=Ske(cee(),Object);kke(vee,{getPolyfill:cee,implementation:qke,shim:Lke});hee.exports=vee});var FT=N(($Be,pee)=>{"use strict";pee.exports=function(r){return r!==r}});var NT=N((KBe,yee)=>{"use strict";var Cke=FT();yee.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:Cke}});var gee=N((QBe,mee)=>{"use strict";var Eke=_d(),Dke=NT();mee.exports=function(){var r=Dke();return Eke(Number,{isNaN:r},{isNaN:function(){return Number.isNaN!==r}}),r}});var wee=N((eHe,_ee)=>{"use strict";var Rke=Q0(),Pke=_d(),Fke=FT(),bee=NT(),Nke=gee(),xee=Rke(bee(),Number);Pke(xee,{getPolyfill:bee,implementation:Fke,shim:Nke});_ee.exports=xee});var Uee=N((rHe,Hee)=>{"use strict";function Tee(e,r){return Bke(e)||Oke(e,r)||Ike(e,r)||zke()}function zke(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Ike(e,r){if(e){if(typeof e=="string")return Aee(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);if(t==="Object"&&e.constructor&&(t=e.constructor.name),t==="Map"||t==="Set")return Array.from(e);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return Aee(e,r)}}function Aee(e,r){(r==null||r>e.length)&&(r=e.length);for(var t=0,a=new Array(r);t10)return!0;for(var r=0;r57)return!0}return e.length===10&&e>=Math.pow(2,32)}function X2(e){return Object.keys(e).filter(Xke).concat($2(e).filter(Object.prototype.propertyIsEnumerable.bind(e)))}function zee(e,r){if(e===r)return 0;for(var t=e.length,a=r.length,n=0,i=Math.min(t,a);n{"use strict";function xo(e){"@babel/helpers - typeof";return xo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},xo(e)}function Gee(e,r){for(var t=0;t1?t-1:0),n=1;n1?t-1:0),n=1;n1?t-1:0),n=1;n1?t-1:0),n=1;n{var Md=1e3,kd=Md*60,Sd=kd*60,qd=Sd*24,xSe=qd*365.25;ore.exports=function(e,r){r=r||{};var t=typeof e;if(t==="string"&&e.length>0)return _Se(e);if(t==="number"&&isNaN(e)===!1)return r.long?TSe(e):wSe(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function _Se(e){if(e=String(e),!(e.length>100)){var r=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(r){var t=parseFloat(r[1]),a=(r[2]||"ms").toLowerCase();switch(a){case"years":case"year":case"yrs":case"yr":case"y":return t*xSe;case"days":case"day":case"d":return t*qd;case"hours":case"hour":case"hrs":case"hr":case"h":return t*Sd;case"minutes":case"minute":case"mins":case"min":case"m":return t*kd;case"seconds":case"second":case"secs":case"sec":case"s":return t*Md;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function wSe(e){return e>=qd?Math.round(e/qd)+"d":e>=Sd?Math.round(e/Sd)+"h":e>=kd?Math.round(e/kd)+"m":e>=Md?Math.round(e/Md)+"s":e+"ms"}function TSe(e){return n3(e,qd,"day")||n3(e,Sd,"hour")||n3(e,kd,"minute")||n3(e,Md,"second")||e+" ms"}function n3(e,r,t){if(!(e{St=sre.exports=GT.debug=GT.default=GT;St.coerce=qSe;St.disable=kSe;St.enable=MSe;St.enabled=SSe;St.humanize=lre();St.names=[];St.skips=[];St.formatters={};var UT;function ASe(e){var r=0,t;for(t in e)r=(r<<5)-r+e.charCodeAt(t),r|=0;return St.colors[Math.abs(r)%St.colors.length]}function GT(e){function r(){if(r.enabled){var t=r,a=+new Date,n=a-(UT||a);t.diff=n,t.prev=UT,t.curr=a,UT=a;for(var i=new Array(arguments.length),o=0;o{wn=cre.exports=ure();wn.log=ESe;wn.formatArgs=CSe;wn.save=DSe;wn.load=fre;wn.useColors=LSe;wn.storage=typeof chrome!="undefined"&&typeof chrome.storage!="undefined"?chrome.storage.local:RSe();wn.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function LSe(){return typeof window!="undefined"&&window.process&&window.process.type==="renderer"?!0:typeof document!="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}wn.formatters.j=function(e){try{return JSON.stringify(e)}catch(r){return"[UnexpectedJSONParseError]: "+r.message}};function CSe(e){var r=this.useColors;if(e[0]=(r?"%c":"")+this.namespace+(r?" %c":" ")+e[0]+(r?"%c ":" ")+"+"+wn.humanize(this.diff),!!r){var t="color: "+this.color;e.splice(1,0,t,"color: inherit");var a=0,n=0;e[0].replace(/%[a-zA-Z%]/g,function(i){i!=="%%"&&(a++,i==="%c"&&(n=a))}),e.splice(n,0,t)}}function ESe(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function DSe(e){try{e==null?wn.storage.removeItem("debug"):wn.storage.debug=e}catch(r){}}function fre(){var e;try{e=wn.storage.debug}catch(r){}return!e&&typeof process!="undefined"&&"env"in process&&(e=process.env.DEBUG),e}wn.enable(fre());function RSe(){try{return window.localStorage}catch(e){}}});var xre=N((nHe,bre)=>{var Cv=H2(),Es=vre()("stream-parser");bre.exports=FSe;var dre=-1,i3=0,PSe=1,pre=2;function FSe(e){var r=e&&typeof e._transform=="function",t=e&&typeof e._write=="function";if(!r&&!t)throw new Error("must pass a Writable or Transform stream in");Es("extending Parser into stream"),e._bytes=NSe,e._skipBytes=zSe,r&&(e._passthrough=ISe),r?e._transform=BSe:e._write=OSe}function Ld(e){Es("initializing parser stream"),e._parserBytesLeft=0,e._parserBuffers=[],e._parserBuffered=0,e._parserState=dre,e._parserCallback=null,typeof e.push=="function"&&(e._parserOutput=e.push.bind(e)),e._parserInit=!0}function NSe(e,r){Cv(!this._parserCallback,'there is already a "callback" set!'),Cv(isFinite(e)&&e>0,'can only buffer a finite number of bytes > 0, got "'+e+'"'),this._parserInit||Ld(this),Es("buffering %o bytes",e),this._parserBytesLeft=e,this._parserCallback=r,this._parserState=i3}function zSe(e,r){Cv(!this._parserCallback,'there is already a "callback" set!'),Cv(e>0,'can only skip > 0 bytes, got "'+e+'"'),this._parserInit||Ld(this),Es("skipping %o bytes",e),this._parserBytesLeft=e,this._parserCallback=r,this._parserState=PSe}function ISe(e,r){Cv(!this._parserCallback,'There is already a "callback" set!'),Cv(e>0,'can only pass through > 0 bytes, got "'+e+'"'),this._parserInit||Ld(this),Es("passing through %o bytes",e),this._parserBytesLeft=e,this._parserCallback=r,this._parserState=pre}function OSe(e,r,t){this._parserInit||Ld(this),Es("write(%o bytes)",e.length),typeof r=="function"&&(t=r),mre(this,e,null,t)}function BSe(e,r,t){this._parserInit||Ld(this),Es("transform(%o bytes)",e.length),typeof r!="function"&&(r=this._parserOutput),mre(this,e,r,t)}function yre(e,r,t,a){return e._parserBytesLeft<=0?a(new Error("got data but not currently parsing anything")):r.length<=e._parserBytesLeft?function(){return hre(e,r,t,a)}:function(){var n=r.slice(0,e._parserBytesLeft);return hre(e,n,t,function(i){if(i)return a(i);if(r.length>n.length)return function(){return yre(e,r.slice(n.length),t,a)}})}}function hre(e,r,t,a){if(e._parserBytesLeft-=r.length,Es("%o bytes left for stream piece",e._parserBytesLeft),e._parserState===i3?(e._parserBuffers.push(r),e._parserBuffered+=r.length):e._parserState===pre&&t(r),e._parserBytesLeft===0){var n=e._parserCallback;if(n&&e._parserState===i3&&e._parserBuffers.length>1&&(r=Buffer.concat(e._parserBuffers,e._parserBuffered)),e._parserState!==i3&&(r=null),e._parserCallback=null,e._parserBuffered=0,e._parserState=dre,e._parserBuffers.splice(0),n){var i=[];r&&i.push(r),t&&i.push(t);var o=n.length>i.length;o&&i.push(gre(a));var l=n.apply(e,i);if(!o||a===l)return a}}else return a}var mre=gre(yre);function gre(e){return function(){for(var r=e.apply(this,arguments);typeof r=="function";)r=r();return r}}});var xt=N(Ll=>{"use strict";var _re=hQ().Transform,HSe=xre();function Cd(){_re.call(this,{readableObjectMode:!0})}Cd.prototype=Object.create(_re.prototype);Cd.prototype.constructor=Cd;HSe(Cd.prototype);Ll.ParserStream=Cd;Ll.sliceEq=function(e,r,t){for(var a=r,n=0;n{"use strict";var Ev=xt().readUInt16BE,YT=xt().readUInt32BE;function Ed(e,r){if(e.length<4+r)return null;var t=YT(e,r);return e.length>4&15,a=e[4]&15,n=e[5]>>4&15,i=Ev(e,6),o=8,l=0;li.width||n.width===i.width&&n.height>i.height?n:i}),t=e.reduce(function(n,i){return n.height>i.height||n.height===i.height&&n.width>i.width?n:i}),a;return r.width>t.height||r.width===t.height&&r.height>t.width?a=r:a=t,a}l3.exports.readSizeFromMeta=function(e){var r={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(jSe(e,r),!!r.sizes.length){var t=WSe(r.sizes),a=1;r.transforms.forEach(function(i){var o={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},l={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if(i.type==="imir"&&(i.value===0?a=l[a]:(a=l[a],a=o[a],a=o[a])),i.type==="irot")for(var s=0;s{"use strict";function s3(e,r){var t=new Error(e);return t.code=r,t}function ZSe(e){try{return decodeURIComponent(escape(e))}catch(r){return e}}function Cl(e,r,t){this.input=e.subarray(r,t),this.start=r;var a=String.fromCharCode.apply(null,this.input.subarray(0,4));if(a!=="II*\0"&&a!=="MM\0*")throw s3("invalid TIFF signature","EBADDATA");this.big_endian=a[0]==="M"}Cl.prototype.each=function(e){this.aborted=!1;var r=this.read_uint32(4);for(this.ifds_to_read=[{id:0,offset:r}];this.ifds_to_read.length>0&&!this.aborted;){var t=this.ifds_to_read.shift();t.offset&&this.scan_ifd(t.id,t.offset,e)}};Cl.prototype.read_uint16=function(e){var r=this.input;if(e+2>r.length)throw s3("unexpected EOF","EBADDATA");return this.big_endian?r[e]*256+r[e+1]:r[e]+r[e+1]*256};Cl.prototype.read_uint32=function(e){var r=this.input;if(e+4>r.length)throw s3("unexpected EOF","EBADDATA");return this.big_endian?r[e]*16777216+r[e+1]*65536+r[e+2]*256+r[e+3]:r[e]+r[e+1]*256+r[e+2]*65536+r[e+3]*16777216};Cl.prototype.is_subifd_link=function(e,r){return e===0&&r===34665||e===0&&r===34853||e===34665&&r===40965};Cl.prototype.exif_format_length=function(e){switch(e){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}};Cl.prototype.exif_format_read=function(e,r){var t;switch(e){case 1:case 2:return t=this.input[r],t;case 6:return t=this.input[r],t|(t&128)*33554430;case 3:return t=this.read_uint16(r),t;case 8:return t=this.read_uint16(r),t|(t&32768)*131070;case 4:return t=this.read_uint32(r),t;case 9:return t=this.read_uint32(r),t|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}};Cl.prototype.scan_ifd=function(e,r,t){var a=this.read_uint16(r);r+=2;for(var n=0;nthis.input.length)throw s3("unexpected EOF","EBADDATA");for(var v=[],d=f,p=0;p0&&(this.ifds_to_read.push({id:i,offset:v[0]}),c=!0);var m={is_big_endian:this.big_endian,ifd:e,tag:i,format:o,count:l,entry_offset:r+this.start,data_length:u,data_offset:f+this.start,value:v,is_subifd_link:c};if(t(m)===!1){this.aborted=!0;return}r+=12}e===0&&this.ifds_to_read.push({id:1,offset:this.read_uint32(r)})};jT.exports.ExifParser=Cl;jT.exports.get_orientation=function(e){var r=0;try{return new Cl(e,0,e.length).each(function(t){if(t.ifd===0&&t.tag===274&&Array.isArray(t.value))return r=t.value[0],!1}),r}catch(t){return-1}}});var Are=N((sHe,Tre)=>{"use strict";var XSe=xt().str2arr,JSe=xt().sliceEq,$Se=xt().readUInt32BE,f3=wre(),KSe=u3(),QSe=XSe("ftyp");Tre.exports=function(e){if(JSe(e,4,QSe)){var r=f3.unbox(e,0);if(r){var t=f3.getMimeType(r.data);if(t){for(var a,n=r.end;;){var i=f3.unbox(e,n);if(!i)break;if(n=i.end,i.boxtype==="mdat")return;if(i.boxtype==="meta"){a=i.data;break}}if(a){var o=f3.readSizeFromMeta(a);if(o){var l={width:o.width,height:o.height,type:t.type,mime:t.mime,wUnits:"px",hUnits:"px"};if(o.variants.length>1&&(l.variants=o.variants),o.orientation&&(l.orientation=o.orientation),o.exif_location&&o.exif_location.offset+o.exif_location.length<=e.length){var s=$Se(e,o.exif_location.offset),u=e.slice(o.exif_location.offset+s+4,o.exif_location.offset+o.exif_location.length),f=KSe.get_orientation(u);f>0&&(l.orientation=f)}return l}}}}}}});var Sre=N((uHe,kre)=>{"use strict";var eqe=xt().str2arr,rqe=xt().sliceEq,Mre=xt().readUInt16LE,tqe=eqe("BM");kre.exports=function(e){if(!(e.length<26)&&rqe(e,0,tqe))return{width:Mre(e,18),height:Mre(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}});var Dre=N((fHe,Ere)=>{"use strict";var Cre=xt().str2arr,qre=xt().sliceEq,Lre=xt().readUInt16LE,aqe=Cre("GIF87a"),nqe=Cre("GIF89a");Ere.exports=function(e){if(!(e.length<10)&&!(!qre(e,0,aqe)&&!qre(e,0,nqe)))return{width:Lre(e,6),height:Lre(e,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}});var Fre=N((cHe,Pre)=>{"use strict";var WT=xt().readUInt16LE,iqe=0,oqe=1,Rre=16;Pre.exports=function(e){var r=WT(e,0),t=WT(e,2),a=WT(e,4);if(!(r!==iqe||t!==oqe||!a)){for(var n=[],i={width:0,height:0},o=0;oi.width||s>i.height)&&(i=u)}return{width:i.width,height:i.height,variants:n,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}});var zre=N((vHe,Nre)=>{"use strict";var ZT=xt().readUInt16BE,lqe=xt().str2arr,sqe=xt().sliceEq,uqe=u3(),fqe=lqe("Exif\0\0");Nre.exports=function(e){if(!(e.length<2)&&!(e[0]!==255||e[1]!==216||e[2]!==255))for(var r=2;;){for(;;){if(e.length-r<2)return;if(e[r++]===255)break}for(var t=e[r++],a;t===255;)t=e[r++];if(208<=t&&t<=217||t===1)a=0;else if(192<=t&&t<=254){if(e.length-r<2)return;a=ZT(e,r)-2,r+=2}else return;if(t===217||t===218)return;var n;if(t===225&&a>=10&&sqe(e,r,fqe)&&(n=uqe.get_orientation(e.slice(r+6,r+a))),a>=5&&192<=t&&t<=207&&t!==196&&t!==200&&t!==204){if(e.length-r0&&(i.orientation=n),i}r+=a}}});var Ure=N((hHe,Hre)=>{"use strict";var Bre=xt().str2arr,Ire=xt().sliceEq,Ore=xt().readUInt32BE,cqe=Bre(`\x89PNG\r +`).concat(e3(e),` +`));var l=new Cs({actual:e,expected:r,message:t,operator:n,stackStartFn:a});throw l.generatedMessage=o,l}}Ut.match=function e(r,t,a){nre(r,t,a,e,"match")};Ut.doesNotMatch=function e(r,t,a){nre(r,t,a,e,"doesNotMatch")};function ire(){for(var e=arguments.length,r=new Array(e),t=0;t{var kd=1e3,Sd=kd*60,qd=Sd*60,Ld=qd*24,_Se=Ld*365.25;lre.exports=function(e,r){r=r||{};var t=typeof e;if(t==="string"&&e.length>0)return wSe(e);if(t==="number"&&isNaN(e)===!1)return r.long?ASe(e):TSe(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function wSe(e){if(e=String(e),!(e.length>100)){var r=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(r){var t=parseFloat(r[1]),a=(r[2]||"ms").toLowerCase();switch(a){case"years":case"year":case"yrs":case"yr":case"y":return t*_Se;case"days":case"day":case"d":return t*Ld;case"hours":case"hour":case"hrs":case"hr":case"h":return t*qd;case"minutes":case"minute":case"mins":case"min":case"m":return t*Sd;case"seconds":case"second":case"secs":case"sec":case"s":return t*kd;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function TSe(e){return e>=Ld?Math.round(e/Ld)+"d":e>=qd?Math.round(e/qd)+"h":e>=Sd?Math.round(e/Sd)+"m":e>=kd?Math.round(e/kd)+"s":e+"ms"}function ASe(e){return i3(e,Ld,"day")||i3(e,qd,"hour")||i3(e,Sd,"minute")||i3(e,kd,"second")||e+" ms"}function i3(e,r,t){if(!(e{St=ure.exports=GT.debug=GT.default=GT;St.coerce=LSe;St.disable=SSe;St.enable=kSe;St.enabled=qSe;St.humanize=sre();St.names=[];St.skips=[];St.formatters={};var UT;function MSe(e){var r=0,t;for(t in e)r=(r<<5)-r+e.charCodeAt(t),r|=0;return St.colors[Math.abs(r)%St.colors.length]}function GT(e){function r(){if(r.enabled){var t=r,a=+new Date,n=a-(UT||a);t.diff=n,t.prev=UT,t.curr=a,UT=a;for(var i=new Array(arguments.length),o=0;o{wn=vre.exports=fre();wn.log=DSe;wn.formatArgs=ESe;wn.save=RSe;wn.load=cre;wn.useColors=CSe;wn.storage=typeof chrome!="undefined"&&typeof chrome.storage!="undefined"?chrome.storage.local:PSe();wn.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function CSe(){return typeof window!="undefined"&&window.process&&window.process.type==="renderer"?!0:typeof document!="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}wn.formatters.j=function(e){try{return JSON.stringify(e)}catch(r){return"[UnexpectedJSONParseError]: "+r.message}};function ESe(e){var r=this.useColors;if(e[0]=(r?"%c":"")+this.namespace+(r?" %c":" ")+e[0]+(r?"%c ":" ")+"+"+wn.humanize(this.diff),!!r){var t="color: "+this.color;e.splice(1,0,t,"color: inherit");var a=0,n=0;e[0].replace(/%[a-zA-Z%]/g,function(i){i!=="%%"&&(a++,i==="%c"&&(n=a))}),e.splice(n,0,t)}}function DSe(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function RSe(e){try{e==null?wn.storage.removeItem("debug"):wn.storage.debug=e}catch(r){}}function cre(){var e;try{e=wn.storage.debug}catch(r){}return!e&&typeof process!="undefined"&&"env"in process&&(e=process.env.DEBUG),e}wn.enable(cre());function PSe(){try{return window.localStorage}catch(e){}}});var _re=N((nHe,xre)=>{var Ev=U2(),Es=hre()("stream-parser");xre.exports=NSe;var pre=-1,o3=0,FSe=1,yre=2;function NSe(e){var r=e&&typeof e._transform=="function",t=e&&typeof e._write=="function";if(!r&&!t)throw new Error("must pass a Writable or Transform stream in");Es("extending Parser into stream"),e._bytes=zSe,e._skipBytes=ISe,r&&(e._passthrough=OSe),r?e._transform=HSe:e._write=BSe}function Cd(e){Es("initializing parser stream"),e._parserBytesLeft=0,e._parserBuffers=[],e._parserBuffered=0,e._parserState=pre,e._parserCallback=null,typeof e.push=="function"&&(e._parserOutput=e.push.bind(e)),e._parserInit=!0}function zSe(e,r){Ev(!this._parserCallback,'there is already a "callback" set!'),Ev(isFinite(e)&&e>0,'can only buffer a finite number of bytes > 0, got "'+e+'"'),this._parserInit||Cd(this),Es("buffering %o bytes",e),this._parserBytesLeft=e,this._parserCallback=r,this._parserState=o3}function ISe(e,r){Ev(!this._parserCallback,'there is already a "callback" set!'),Ev(e>0,'can only skip > 0 bytes, got "'+e+'"'),this._parserInit||Cd(this),Es("skipping %o bytes",e),this._parserBytesLeft=e,this._parserCallback=r,this._parserState=FSe}function OSe(e,r){Ev(!this._parserCallback,'There is already a "callback" set!'),Ev(e>0,'can only pass through > 0 bytes, got "'+e+'"'),this._parserInit||Cd(this),Es("passing through %o bytes",e),this._parserBytesLeft=e,this._parserCallback=r,this._parserState=yre}function BSe(e,r,t){this._parserInit||Cd(this),Es("write(%o bytes)",e.length),typeof r=="function"&&(t=r),gre(this,e,null,t)}function HSe(e,r,t){this._parserInit||Cd(this),Es("transform(%o bytes)",e.length),typeof r!="function"&&(r=this._parserOutput),gre(this,e,r,t)}function mre(e,r,t,a){return e._parserBytesLeft<=0?a(new Error("got data but not currently parsing anything")):r.length<=e._parserBytesLeft?function(){return dre(e,r,t,a)}:function(){var n=r.slice(0,e._parserBytesLeft);return dre(e,n,t,function(i){if(i)return a(i);if(r.length>n.length)return function(){return mre(e,r.slice(n.length),t,a)}})}}function dre(e,r,t,a){if(e._parserBytesLeft-=r.length,Es("%o bytes left for stream piece",e._parserBytesLeft),e._parserState===o3?(e._parserBuffers.push(r),e._parserBuffered+=r.length):e._parserState===yre&&t(r),e._parserBytesLeft===0){var n=e._parserCallback;if(n&&e._parserState===o3&&e._parserBuffers.length>1&&(r=Buffer.concat(e._parserBuffers,e._parserBuffered)),e._parserState!==o3&&(r=null),e._parserCallback=null,e._parserBuffered=0,e._parserState=pre,e._parserBuffers.splice(0),n){var i=[];r&&i.push(r),t&&i.push(t);var o=n.length>i.length;o&&i.push(bre(a));var l=n.apply(e,i);if(!o||a===l)return a}}else return a}var gre=bre(mre);function bre(e){return function(){for(var r=e.apply(this,arguments);typeof r=="function";)r=r();return r}}});var xt=N(Ll=>{"use strict";var wre=dQ().Transform,USe=_re();function Ed(){wre.call(this,{readableObjectMode:!0})}Ed.prototype=Object.create(wre.prototype);Ed.prototype.constructor=Ed;USe(Ed.prototype);Ll.ParserStream=Ed;Ll.sliceEq=function(e,r,t){for(var a=r,n=0;n{"use strict";var Dv=xt().readUInt16BE,YT=xt().readUInt32BE;function Dd(e,r){if(e.length<4+r)return null;var t=YT(e,r);return e.length>4&15,a=e[4]&15,n=e[5]>>4&15,i=Dv(e,6),o=8,l=0;li.width||n.width===i.width&&n.height>i.height?n:i}),t=e.reduce(function(n,i){return n.height>i.height||n.height===i.height&&n.width>i.width?n:i}),a;return r.width>t.height||r.width===t.height&&r.height>t.width?a=r:a=t,a}s3.exports.readSizeFromMeta=function(e){var r={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(jSe(e,r),!!r.sizes.length){var t=ZSe(r.sizes),a=1;r.transforms.forEach(function(i){var o={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},l={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if(i.type==="imir"&&(i.value===0?a=l[a]:(a=l[a],a=o[a],a=o[a])),i.type==="irot")for(var s=0;s{"use strict";function u3(e,r){var t=new Error(e);return t.code=r,t}function XSe(e){try{return decodeURIComponent(escape(e))}catch(r){return e}}function Cl(e,r,t){this.input=e.subarray(r,t),this.start=r;var a=String.fromCharCode.apply(null,this.input.subarray(0,4));if(a!=="II*\0"&&a!=="MM\0*")throw u3("invalid TIFF signature","EBADDATA");this.big_endian=a[0]==="M"}Cl.prototype.each=function(e){this.aborted=!1;var r=this.read_uint32(4);for(this.ifds_to_read=[{id:0,offset:r}];this.ifds_to_read.length>0&&!this.aborted;){var t=this.ifds_to_read.shift();t.offset&&this.scan_ifd(t.id,t.offset,e)}};Cl.prototype.read_uint16=function(e){var r=this.input;if(e+2>r.length)throw u3("unexpected EOF","EBADDATA");return this.big_endian?r[e]*256+r[e+1]:r[e]+r[e+1]*256};Cl.prototype.read_uint32=function(e){var r=this.input;if(e+4>r.length)throw u3("unexpected EOF","EBADDATA");return this.big_endian?r[e]*16777216+r[e+1]*65536+r[e+2]*256+r[e+3]:r[e]+r[e+1]*256+r[e+2]*65536+r[e+3]*16777216};Cl.prototype.is_subifd_link=function(e,r){return e===0&&r===34665||e===0&&r===34853||e===34665&&r===40965};Cl.prototype.exif_format_length=function(e){switch(e){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}};Cl.prototype.exif_format_read=function(e,r){var t;switch(e){case 1:case 2:return t=this.input[r],t;case 6:return t=this.input[r],t|(t&128)*33554430;case 3:return t=this.read_uint16(r),t;case 8:return t=this.read_uint16(r),t|(t&32768)*131070;case 4:return t=this.read_uint32(r),t;case 9:return t=this.read_uint32(r),t|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}};Cl.prototype.scan_ifd=function(e,r,t){var a=this.read_uint16(r);r+=2;for(var n=0;nthis.input.length)throw u3("unexpected EOF","EBADDATA");for(var v=[],d=f,p=0;p0&&(this.ifds_to_read.push({id:i,offset:v[0]}),c=!0);var m={is_big_endian:this.big_endian,ifd:e,tag:i,format:o,count:l,entry_offset:r+this.start,data_length:u,data_offset:f+this.start,value:v,is_subifd_link:c};if(t(m)===!1){this.aborted=!0;return}r+=12}e===0&&this.ifds_to_read.push({id:1,offset:this.read_uint32(r)})};WT.exports.ExifParser=Cl;WT.exports.get_orientation=function(e){var r=0;try{return new Cl(e,0,e.length).each(function(t){if(t.ifd===0&&t.tag===274&&Array.isArray(t.value))return r=t.value[0],!1}),r}catch(t){return-1}}});var Mre=N((sHe,Are)=>{"use strict";var JSe=xt().str2arr,$Se=xt().sliceEq,KSe=xt().readUInt32BE,c3=Tre(),QSe=f3(),eqe=JSe("ftyp");Are.exports=function(e){if($Se(e,4,eqe)){var r=c3.unbox(e,0);if(r){var t=c3.getMimeType(r.data);if(t){for(var a,n=r.end;;){var i=c3.unbox(e,n);if(!i)break;if(n=i.end,i.boxtype==="mdat")return;if(i.boxtype==="meta"){a=i.data;break}}if(a){var o=c3.readSizeFromMeta(a);if(o){var l={width:o.width,height:o.height,type:t.type,mime:t.mime,wUnits:"px",hUnits:"px"};if(o.variants.length>1&&(l.variants=o.variants),o.orientation&&(l.orientation=o.orientation),o.exif_location&&o.exif_location.offset+o.exif_location.length<=e.length){var s=KSe(e,o.exif_location.offset),u=e.slice(o.exif_location.offset+s+4,o.exif_location.offset+o.exif_location.length),f=QSe.get_orientation(u);f>0&&(l.orientation=f)}return l}}}}}}});var qre=N((uHe,Sre)=>{"use strict";var rqe=xt().str2arr,tqe=xt().sliceEq,kre=xt().readUInt16LE,aqe=rqe("BM");Sre.exports=function(e){if(!(e.length<26)&&tqe(e,0,aqe))return{width:kre(e,18),height:kre(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}});var Rre=N((fHe,Dre)=>{"use strict";var Ere=xt().str2arr,Lre=xt().sliceEq,Cre=xt().readUInt16LE,nqe=Ere("GIF87a"),iqe=Ere("GIF89a");Dre.exports=function(e){if(!(e.length<10)&&!(!Lre(e,0,nqe)&&!Lre(e,0,iqe)))return{width:Cre(e,6),height:Cre(e,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}});var Nre=N((cHe,Fre)=>{"use strict";var jT=xt().readUInt16LE,oqe=0,lqe=1,Pre=16;Fre.exports=function(e){var r=jT(e,0),t=jT(e,2),a=jT(e,4);if(!(r!==oqe||t!==lqe||!a)){for(var n=[],i={width:0,height:0},o=0;oi.width||s>i.height)&&(i=u)}return{width:i.width,height:i.height,variants:n,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}});var Ire=N((vHe,zre)=>{"use strict";var ZT=xt().readUInt16BE,sqe=xt().str2arr,uqe=xt().sliceEq,fqe=f3(),cqe=sqe("Exif\0\0");zre.exports=function(e){if(!(e.length<2)&&!(e[0]!==255||e[1]!==216||e[2]!==255))for(var r=2;;){for(;;){if(e.length-r<2)return;if(e[r++]===255)break}for(var t=e[r++],a;t===255;)t=e[r++];if(208<=t&&t<=217||t===1)a=0;else if(192<=t&&t<=254){if(e.length-r<2)return;a=ZT(e,r)-2,r+=2}else return;if(t===217||t===218)return;var n;if(t===225&&a>=10&&uqe(e,r,cqe)&&(n=fqe.get_orientation(e.slice(r+6,r+a))),a>=5&&192<=t&&t<=207&&t!==196&&t!==200&&t!==204){if(e.length-r0&&(i.orientation=n),i}r+=a}}});var Gre=N((hHe,Ure)=>{"use strict";var Hre=xt().str2arr,Ore=xt().sliceEq,Bre=xt().readUInt32BE,vqe=Hre(`\x89PNG\r  -`),vqe=Bre("IHDR");Hre.exports=function(e){if(!(e.length<24)&&Ire(e,0,cqe)&&Ire(e,12,vqe))return{width:Ore(e,16),height:Ore(e,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}});var Yre=N((dHe,Vre)=>{"use strict";var hqe=xt().str2arr,dqe=xt().sliceEq,Gre=xt().readUInt32BE,pqe=hqe("8BPS\0");Vre.exports=function(e){if(!(e.length<22)&&dqe(e,0,pqe))return{width:Gre(e,18),height:Gre(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}});var Zre=N((pHe,Wre)=>{"use strict";function yqe(e){return e===32||e===9||e===13||e===10}function Dv(e){return typeof e=="number"&&isFinite(e)&&e>0}function mqe(e){var r=0,t=e.length;for(e[0]===239&&e[1]===187&&e[2]===191&&(r=3);r]*>/,bqe=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,xqe=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,_qe=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,wqe=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,jre=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function Tqe(e){var r=e.match(xqe),t=e.match(_qe),a=e.match(wqe);return{width:r&&(r[1]||r[2]),height:t&&(t[1]||t[2]),viewbox:a&&(a[1]||a[2])}}function $o(e){return jre.test(e)?e.match(jre)[0]:"px"}Wre.exports=function(e){if(mqe(e)){for(var r="",t=0;t{"use strict";var $re=xt().str2arr,Xre=xt().sliceEq,Aqe=xt().readUInt16LE,Mqe=xt().readUInt16BE,kqe=xt().readUInt32LE,Sqe=xt().readUInt32BE,qqe=$re("II*\0"),Lqe=$re("MM\0*");function c3(e,r,t){return t?Mqe(e,r):Aqe(e,r)}function XT(e,r,t){return t?Sqe(e,r):kqe(e,r)}function Jre(e,r,t){var a=c3(e,r+2,t),n=XT(e,r+4,t);return n!==1||a!==3&&a!==4?null:a===3?c3(e,r+8,t):XT(e,r+8,t)}Kre.exports=function(e){if(!(e.length<8)&&!(!Xre(e,0,qqe)&&!Xre(e,0,Lqe))){var r=e[0]===77,t=XT(e,4,r)-8;if(!(t<0)){var a=t+8;if(!(e.length-a<2)){var n=c3(e,a+0,r)*12;if(!(n<=0)&&(a+=2,!(e.length-a{"use strict";var tte=xt().str2arr,ete=xt().sliceEq,rte=xt().readUInt16LE,JT=xt().readUInt32LE,Cqe=u3(),Eqe=tte("RIFF"),Dqe=tte("WEBP");function Rqe(e,r){if(!(e[r+3]!==157||e[r+4]!==1||e[r+5]!==42))return{width:rte(e,r+6)&16383,height:rte(e,r+8)&16383,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}function Pqe(e,r){if(e[r]===47){var t=JT(e,r+1);return{width:(t&16383)+1,height:(t>>14&16383)+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function Fqe(e,r){return{width:(e[r+6]<<16|e[r+5]<<8|e[r+4])+1,height:(e[r+9]<e.length)){for(;r+8=10?t=t||Rqe(e,r+8):i==="VP8L"&&o>=9?t=t||Pqe(e,r+8):i==="VP8X"&&o>=10?t=t||Fqe(e,r+8):i==="EXIF"&&(a=Cqe.get_orientation(e.slice(r+8,r+8+o)),r=1/0),r+=8+o}if(t)return a>0&&(t.orientation=a),t}}}});var ote=N((gHe,ite)=>{"use strict";ite.exports={avif:Are(),bmp:Sre(),gif:Dre(),ico:Fre(),jpeg:zre(),png:Ure(),psd:Yre(),svg:Zre(),tiff:Qre(),webp:nte()}});var lte=N((bHe,KT)=>{"use strict";var $T=ote();function Nqe(e){for(var r=Object.keys($T),t=0;t{"use strict";var zqe=lte(),Iqe=ml().IMAGE_URL_PREFIX,Oqe=fv().Buffer;ste.getImageSize=function(e){var r=e.replace(Iqe,""),t=new Oqe(r,"base64");return zqe(t)}});var vte=N((_He,cte)=>{"use strict";var fte=Le(),Bqe=nv(),Hqe=Rr(),v3=zr(),Uqe=Le().maxRowLength,Gqe=ute().getImageSize;cte.exports=function(r,t){var a,n;if(t._hasZ)a=t.z.length,n=Uqe(t.z);else if(t._hasSource){var i=Gqe(t.source);a=i.height,n=i.width}var o=v3.getFromId(r,t.xaxis||"x"),l=v3.getFromId(r,t.yaxis||"y"),s=o.d2c(t.x0)-t.dx/2,u=l.d2c(t.y0)-t.dy/2,f,c=[s,s+n*t.dx],v=[u,u+a*t.dy];if(o&&o.type==="log")for(f=0;f{"use strict";var Wqe=Sr(),of=Le(),hte=of.strTranslate,Zqe=sl(),Xqe=nv(),Jqe=r6(),$qe=gg().STYLE;dte.exports=function(r,t,a,n){var i=t.xaxis,o=t.yaxis,l=!r._context._exportedPlot&&Jqe();of.makeTraceGroups(n,a,"im").each(function(s){var u=Wqe.select(this),f=s[0],c=f.trace,v=(c.zsmooth==="fast"||c.zsmooth===!1&&l)&&!c._hasZ&&c._hasSource&&i.type==="linear"&&o.type==="linear";c._realImage=v;var d=f.z,p=f.x0,y=f.y0,m=f.w,x=f.h,w=c.dx,_=c.dy,b,T,k,M,q,E;for(E=0;b===void 0&&E0;)T=i.c2p(p+E*w),E--;for(E=0;M===void 0&&E0;)q=o.c2p(y+E*_),E--;if(TV[0];if(J||Z){var ee=b+P/2,fe=M+R/2;G+="transform:"+hte(ee+"px",fe+"px")+"scale("+(J?-1:1)+","+(Z?-1:1)+")"+hte(-ee+"px",-fe+"px")+";"}}Y.attr("style",G);var ie=new Promise(function(ue){if(c._hasZ)ue();else if(c._hasSource)if(c._canvas&&c._canvas.el.width===m&&c._canvas.el.height===x&&c._canvas.source===c.source)ue();else{var K=document.createElement("canvas");K.width=m,K.height=x;var _e=K.getContext("2d",{willReadFrequently:!0});c._image=c._image||new Image;var le=c._image;le.onload=function(){_e.drawImage(le,0,0),c._canvas={el:K,source:c.source},ue()},le.setAttribute("src",c.source)}}).then(function(){var ue,K;if(c._hasZ)K=B(function(he,oe){var ce=d[oe][he];return of.isTypedArray(ce)&&(ce=Array.from(ce)),ce}),ue=K.toDataURL("image/png");else if(c._hasSource)if(v)ue=c.source;else{var _e=c._canvas.el.getContext("2d",{willReadFrequently:!0}),le=_e.getImageData(0,0,m,x).data;K=B(function(he,oe){var ce=4*(oe*m+he);return[le[ce],le[ce+1],le[ce+2],le[ce+3]]}),ue=K.toDataURL("image/png")}Y.attr({"xlink:href":ue,height:R,width:P,x:b,y:M})});r._promises.push(ie)})}});var mte=N((THe,yte)=>{"use strict";var Kqe=Sr();yte.exports=function(r){Kqe.select(r).selectAll(".im image").style("opacity",function(t){return t[0].trace.opacity})}});var _te=N((AHe,xte)=>{"use strict";var gte=Pn(),bte=Le(),h3=bte.isArrayOrTypedArray,Qqe=nv();xte.exports=function(r,t,a){var n=r.cd[0],i=n.trace,o=r.xa,l=r.ya;if(!(gte.inbox(t-n.x0,t-(n.x0+n.w*i.dx),0)>0||gte.inbox(a-n.y0,a-(n.y0+n.h*i.dy),0)>0)){var s=Math.floor((t-n.x0)/i.dx),u=Math.floor(Math.abs(a-n.y0)/i.dy),f;if(i._hasZ?f=n.z[u][s]:i._hasSource&&(f=i._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(s,u,1,1).data),!!f){var c=n.hi||i.hoverinfo,v;if(c){var d=c.split("+");d.indexOf("all")!==-1&&(d=["color"]),d.indexOf("color")!==-1&&(v=!0)}var p=Qqe.colormodel[i.colormodel],y=p.colormodel||i.colormodel,m=y.length,x=i._scaler(f),w=p.suffix,_=[];(i.hovertemplate||v)&&(_.push("["+[x[0]+w[0],x[1]+w[1],x[2]+w[2]].join(", ")),m===4&&_.push(", "+x[3]+w[3]),_.push("]"),_=_.join(""),r.extraText=y.toUpperCase()+": "+_);var b;h3(i.hovertext)&&h3(i.hovertext[u])?b=i.hovertext[u][s]:h3(i.text)&&h3(i.text[u])&&(b=i.text[u][s]);var T=l.c2p(n.y0+(u+.5)*i.dy),k=n.x0+(s+.5)*i.dx,M=n.y0+(u+.5)*i.dy,q="["+f.slice(0,i.colormodel.length).join(", ")+"]";return[bte.extendFlat(r,{index:[u,s],x0:o.c2p(n.x0+s*i.dx),x1:o.c2p(n.x0+(s+1)*i.dx),y0:T,y1:T,color:x,xVal:k,xLabelVal:k,yVal:M,yLabelVal:M,zLabelVal:q,text:b,hovertemplateLabels:{zLabel:q,colorLabel:_,"color[0]Label":x[0]+w[0],"color[1]Label":x[1]+w[1],"color[2]Label":x[2]+w[2],"color[3]Label":x[3]+w[3]}})]}}}});var Tte=N((MHe,wte)=>{"use strict";wte.exports=function(r,t){return"xVal"in t&&(r.x=t.xVal),"yVal"in t&&(r.y=t.yVal),t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),r.color=t.color,r.colormodel=t.trace.colormodel,r.z||(r.z=t.color),r}});var Mte=N((kHe,Ate)=>{"use strict";Ate.exports={attributes:Z6(),supplyDefaults:_X(),calc:vte(),plot:pte(),style:mte(),hoverPoints:_te(),eventData:Tte(),moduleType:"trace",name:"image",basePlotModule:Li(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}});var Ste=N((SHe,kte)=>{"use strict";kte.exports=Mte()});var QT=N((qHe,Lte)=>{"use strict";var eLe=gn(),rLe=zc().attributes,tLe=ma(),aLe=si(),{hovertemplateAttrs:nLe,texttemplateAttrs:iLe,templatefallbackAttrs:qte}=Yn(),Dd=bt().extendFlat,oLe=ui().pattern,d3=tLe({editType:"plot",arrayOk:!0,colorEditType:"plot"});Lte.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:aLe.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:oLe,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:Dd({},eLe.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:nLe({},{keys:["label","color","value","percent","text"]}),hovertemplatefallback:qte(),texttemplate:iLe({editType:"plot"},{keys:["label","color","value","percent","text"]}),texttemplatefallback:qte({editType:"plot"}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:Dd({},d3,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:Dd({},d3,{}),outsidetextfont:Dd({},d3,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:Dd({},d3,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:rLe({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}});var Rte=N((LHe,Dte)=>{"use strict";var lLe=Rr(),Rd=Le(),sLe=QT(),uLe=zc().defaults,fLe=Iu().handleText,cLe=Le().coercePattern;function Cte(e,r){var t=Rd.isArrayOrTypedArray(e),a=Rd.isArrayOrTypedArray(r),n=Math.min(t?e.length:1/0,a?r.length:1/0);if(isFinite(n)||(n=0),n&&a){for(var i,o=0;o0){i=!0;break}}i||(n=0)}return{hasLabels:t,hasValues:a,len:n}}function Ete(e,r,t,a,n){var i=a("marker.line.width");i&&a("marker.line.color",n?void 0:t.paper_bgcolor);var o=a("marker.colors");cLe(a,"marker.pattern",o),e.marker&&!r.marker.pattern.fgcolor&&(r.marker.pattern.fgcolor=e.marker.colors),r.marker.pattern.bgcolor||(r.marker.pattern.bgcolor=t.paper_bgcolor)}function vLe(e,r,t,a){function n(w,_){return Rd.coerce(e,r,sLe,w,_)}var i=n("labels"),o=n("values"),l=Cte(i,o),s=l.len;if(r._hasLabels=l.hasLabels,r._hasValues=l.hasValues,!r._hasLabels&&r._hasValues&&(n("label0"),n("dlabel")),!s){r.visible=!1;return}r._length=s,Ete(e,r,a,n,!0),n("scalegroup");var u=n("text"),f=n("texttemplate");n("texttemplatefallback");var c;if(f||(c=n("textinfo",Rd.isArrayOrTypedArray(u)?"text+percent":"percent")),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback"),f||c&&c!=="none"){var v=n("textposition");fLe(e,r,a,n,v,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var d=Array.isArray(v)||v==="auto",p=d||v==="outside";p&&n("automargin"),(v==="inside"||v==="auto"||Array.isArray(v))&&n("insidetextorientation")}else c==="none"&&n("textposition","none");uLe(r,a,n);var y=n("hole"),m=n("title.text");if(m){var x=n("title.position",y?"middle center":"top center");!y&&x==="middle center"&&(r.title.position="top center"),Rd.coerceFont(n,"title.font",a.font)}n("sort"),n("direction"),n("rotation"),n("pull")}Dte.exports={handleLabelsAndValues:Cte,handleMarkerDefaults:Ete,supplyDefaults:vLe}});var e8=N((CHe,Pte)=>{"use strict";Pte.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var Nte=N((EHe,Fte)=>{"use strict";var hLe=Le(),dLe=e8();Fte.exports=function(r,t){function a(n,i){return hLe.coerce(r,t,dLe,n,i)}a("hiddenlabels"),a("piecolorway",t.colorway),a("extendpiecolors")}});var t8=N((DHe,Ote)=>{"use strict";var pLe=Rr(),r8=kn(),yLe=Tr(),mLe={};function gLe(e,r){var t=[],a=e._fullLayout,n=a.hiddenlabels||[],i=r.labels,o=r.marker.colors||[],l=r.values,s=r._length,u=r._hasValues&&s,f,c;if(r.dlabel)for(i=new Array(s),f=0;f=0});var b=r.type==="funnelarea"?y:r.sort;return b&&t.sort(function(T,k){return k.v-T.v}),t[0]&&(t[0].vTotal=p),t}function zte(e){return function(t,a){return!t||(t=r8(t),!t.isValid())?!1:(t=yLe.addOpacity(t,t.getAlpha()),e[a]||(e[a]=t),t)}}function bLe(e,r){var t=(r||{}).type;t||(t="pie");var a=e._fullLayout,n=e.calcdata,i=a[t+"colorway"],o=a["_"+t+"colormap"];a["extend"+t+"colors"]&&(i=Ite(i,mLe));for(var l=0,s=0;s{"use strict";var xLe=qo().appendArrayMultiPointValues;Bte.exports=function(r,t){var a={curveNumber:t.index,pointNumbers:r.pts,data:t._input,fullData:t,label:r.label,color:r.color,value:r.v,percent:r.percent,text:r.text,bbox:r.bbox,v:r.v};return r.pts.length===1&&(a.pointNumber=a.i=r.pts[0]),xLe(a,t,r.pts),t.type==="funnelarea"&&(delete a.v,delete a.i),a}});var uae=N((PHe,sae)=>{"use strict";var Gn=Sr(),_Le=ta(),p3=Pn(),Wte=Tr(),El=jr(),Ya=Le(),wLe=Ya.strScale,Ute=Ya.strTranslate,a8=Ea(),Zte=k0(),TLe=Zte.recordMinTextSize,ALe=Zte.clearMinTextSize,Xte=Qm().TEXTPAD,Ar=V1(),y3=Hte(),Gte=Le().isValidTextValue;function MLe(e,r){var t=e._context.staticPlot,a=e._fullLayout,n=a._size;ALe("pie",a),Kte(r,e),iae(r,n);var i=Ya.makeTraceGroups(a._pielayer,r,"trace").each(function(o){var l=Gn.select(this),s=o[0],u=s.trace;PLe(o),l.attr("stroke-linejoin","round"),l.each(function(){var f=Gn.select(this).selectAll("g.slice").data(o);f.enter().append("g").classed("slice",!0),f.exit().remove();var c=[[[],[]],[[],[]]],v=!1;f.each(function(b,T){if(b.hidden){Gn.select(this).selectAll("path,g").remove();return}b.pointNumber=b.i,b.curveNumber=u.index,c[b.pxmid[1]<0?0:1][b.pxmid[0]<0?0:1].push(b);var k=s.cx,M=s.cy,q=Gn.select(this),E=q.selectAll("path.surface").data([b]);if(E.enter().append("path").classed("surface",!0).style({"pointer-events":t?"none":"all"}),q.call(Jte,e,o),u.pull){var D=+Ar.castOption(u.pull,b.pts)||0;D>0&&(k+=D*b.pxmid[0],M+=D*b.pxmid[1])}b.cxFinal=k,b.cyFinal=M;function P(U,V,J,Z){var ee=Z*(V[0]-U[0]),fe=Z*(V[1]-U[1]);return"a"+Z*s.r+","+Z*s.r+" 0 "+b.largeArc+(J?" 1 ":" 0 ")+ee+","+fe}var R=u.hole;if(b.v===s.vTotal){var z="M"+(k+b.px0[0])+","+(M+b.px0[1])+P(b.px0,b.pxmid,!0,1)+P(b.pxmid,b.px0,!0,1)+"Z";R?E.attr("d","M"+(k+R*b.px0[0])+","+(M+R*b.px0[1])+P(b.px0,b.pxmid,!1,R)+P(b.pxmid,b.px0,!1,R)+"Z"+z):E.attr("d",z)}else{var O=P(b.px0,b.px1,!0,1);if(R){var B=1-R;E.attr("d","M"+(k+R*b.px1[0])+","+(M+R*b.px1[1])+P(b.px1,b.px0,!1,R)+"l"+B*b.px0[0]+","+B*b.px0[1]+O+"Z")}else E.attr("d","M"+k+","+M+"l"+b.px0[0]+","+b.px0[1]+O+"Z")}oae(e,b,s);var Y=Ar.castOption(u.textposition,b.pts),G=q.selectAll("g.slicetext").data(b.text&&Y!=="none"?[0]:[]);G.enter().append("g").classed("slicetext",!0),G.exit().remove(),G.each(function(){var U=Ya.ensureSingle(Gn.select(this),"text","",function(K){K.attr("data-notex",1)}),V=Ya.ensureUniformFontSize(e,Y==="outside"?SLe(u,b,a.font):$te(u,b,a.font));U.text(b.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(El.font,V).call(a8.convertToTspans,e);var J=El.bBox(U.node()),Z;if(Y==="outside")Z=jte(J,b);else if(Z=Qte(J,b,s),Y==="auto"&&Z.scale<1){var ee=Ya.ensureUniformFontSize(e,u.outsidetextfont);U.call(El.font,ee),J=El.bBox(U.node()),Z=jte(J,b)}var fe=Z.textPosAngle,ie=fe===void 0?b.pxmid:m3(s.r,fe);if(Z.targetX=k+ie[0]*Z.rCenter+(Z.x||0),Z.targetY=M+ie[1]*Z.rCenter+(Z.y||0),lae(Z,J),Z.outside){var ue=Z.targetY;b.yLabelMin=ue-J.height/2,b.yLabelMid=ue,b.yLabelMax=ue+J.height/2,b.labelExtraX=0,b.labelExtraY=0,v=!0}Z.fontSize=V.size,TLe(u.type,Z,a),o[T].transform=Z,Ya.setTransormAndDisplay(U,Z)})});var d=Gn.select(this).selectAll("g.titletext").data(u.title.text?[0]:[]);if(d.enter().append("g").classed("titletext",!0),d.exit().remove(),d.each(function(){var b=Ya.ensureSingle(Gn.select(this),"text","",function(M){M.attr("data-notex",1)}),T=u.title.text;u._meta&&(T=Ya.templateString(T,u._meta)),b.text(T).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(El.font,u.title.font).call(a8.convertToTspans,e);var k;u.title.position==="middle center"?k=CLe(s):k=aae(s,n),b.attr("transform",Ute(k.x,k.y)+wLe(Math.min(1,k.scale))+Ute(k.tx,k.ty))}),v&&DLe(c,u),kLe(f,u),v&&u.automargin){var p=El.bBox(l.node()),y=u.domain,m=n.w*(y.x[1]-y.x[0]),x=n.h*(y.y[1]-y.y[0]),w=(.5*m-s.r)/n.w,_=(.5*x-s.r)/n.h;_Le.autoMargin(e,"pie."+u.uid+".automargin",{xl:y.x[0]-w,xr:y.x[1]+w,yb:y.y[0]-_,yt:y.y[1]+_,l:Math.max(s.cx-s.r-p.left,0),r:Math.max(p.right-(s.cx+s.r),0),b:Math.max(p.bottom-(s.cy+s.r),0),t:Math.max(s.cy-s.r-p.top,0),pad:5})}})});setTimeout(function(){i.selectAll("tspan").each(function(){var o=Gn.select(this);o.attr("dy")&&o.attr("dy",o.attr("dy"))})},0)}function kLe(e,r){e.each(function(t){var a=Gn.select(this);if(!t.labelExtraX&&!t.labelExtraY){a.select("path.textline").remove();return}var n=a.select("g.slicetext text");t.transform.targetX+=t.labelExtraX,t.transform.targetY+=t.labelExtraY,Ya.setTransormAndDisplay(n,t.transform);var i=t.cxFinal+t.pxmid[0],o=t.cyFinal+t.pxmid[1],l="M"+i+","+o,s=(t.yLabelMax-t.yLabelMin)*(t.pxmid[0]<0?-1:1)/4;if(t.labelExtraX){var u=t.labelExtraX*t.pxmid[1]/t.pxmid[0],f=t.yLabelMid+t.labelExtraY-(t.cyFinal+t.pxmid[1]);Math.abs(u)>Math.abs(f)?l+="l"+f*t.pxmid[0]/t.pxmid[1]+","+f+"H"+(i+t.labelExtraX+s):l+="l"+t.labelExtraX+","+u+"v"+(f-u)+"h"+s}else l+="V"+(t.yLabelMid+t.labelExtraY)+"h"+s;Ya.ensureSingle(a,"path","textline").call(Wte.stroke,r.outsidetextfont.color).attr({"stroke-width":Math.min(2,r.outsidetextfont.size/8),d:l,fill:"none"})})}function Jte(e,r,t){var a=t[0],n=a.cx,i=a.cy,o=a.trace,l=o.type==="funnelarea";"_hasHoverLabel"in o||(o._hasHoverLabel=!1),"_hasHoverEvent"in o||(o._hasHoverEvent=!1),e.on("mouseover",function(s){var u=r._fullLayout,f=r._fullData[o.index];if(!(r._dragging||u.hovermode===!1)){var c=f.hoverinfo;if(Array.isArray(c)&&(c=p3.castHoverinfo({hoverinfo:[Ar.castOption(c,s.pts)],_module:o._module},u,0)),c==="all"&&(c="label+text+value+percent+name"),f.hovertemplate||c!=="none"&&c!=="skip"&&c){var v=s.rInscribed||0,d=n+s.pxmid[0]*(1-v),p=i+s.pxmid[1]*(1-v),y=u.separators,m=[];if(c&&c.indexOf("label")!==-1&&m.push(s.label),s.text=Ar.castOption(f.hovertext||f.text,s.pts),c&&c.indexOf("text")!==-1){var x=s.text;Ya.isValidTextValue(x)&&m.push(x)}s.value=s.v,s.valueLabel=Ar.formatPieValue(s.v,y),c&&c.indexOf("value")!==-1&&m.push(s.valueLabel),s.percent=s.v/a.vTotal,s.percentLabel=Ar.formatPiePercent(s.percent,y),c&&c.indexOf("percent")!==-1&&m.push(s.percentLabel);var w=f.hoverlabel,_=w.font,b=[];p3.loneHover({trace:o,x0:d-v*a.r,x1:d+v*a.r,y:p,_x0:l?n+s.TL[0]:d-v*a.r,_x1:l?n+s.TR[0]:d+v*a.r,_y0:l?i+s.TL[1]:p-v*a.r,_y1:l?i+s.BL[1]:p+v*a.r,text:m.join("
"),name:f.hovertemplate||c.indexOf("name")!==-1?f.name:void 0,idealAlign:s.pxmid[0]<0?"left":"right",color:Ar.castOption(w.bgcolor,s.pts)||s.color,borderColor:Ar.castOption(w.bordercolor,s.pts),fontFamily:Ar.castOption(_.family,s.pts),fontSize:Ar.castOption(_.size,s.pts),fontColor:Ar.castOption(_.color,s.pts),nameLength:Ar.castOption(w.namelength,s.pts),textAlign:Ar.castOption(w.align,s.pts),hovertemplate:Ar.castOption(f.hovertemplate,s.pts),hovertemplateLabels:s,eventData:[y3(s,f)]},{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:r,inOut_bbox:b}),s.bbox=b[0],o._hasHoverLabel=!0}o._hasHoverEvent=!0,r.emit("plotly_hover",{points:[y3(s,f)],event:Gn.event})}}),e.on("mouseout",function(s){var u=r._fullLayout,f=r._fullData[o.index],c=Gn.select(this).datum();o._hasHoverEvent&&(s.originalEvent=Gn.event,r.emit("plotly_unhover",{points:[y3(c,f)],event:Gn.event}),o._hasHoverEvent=!1),o._hasHoverLabel&&(p3.loneUnhover(u._hoverlayer.node()),o._hasHoverLabel=!1)}),e.on("click",function(s){var u=r._fullLayout,f=r._fullData[o.index];r._dragging||u.hovermode===!1||(r._hoverdata=[y3(s,f)],p3.click(r,Gn.event))})}function SLe(e,r,t){var a=Ar.castOption(e.outsidetextfont.color,r.pts)||Ar.castOption(e.textfont.color,r.pts)||t.color,n=Ar.castOption(e.outsidetextfont.family,r.pts)||Ar.castOption(e.textfont.family,r.pts)||t.family,i=Ar.castOption(e.outsidetextfont.size,r.pts)||Ar.castOption(e.textfont.size,r.pts)||t.size,o=Ar.castOption(e.outsidetextfont.weight,r.pts)||Ar.castOption(e.textfont.weight,r.pts)||t.weight,l=Ar.castOption(e.outsidetextfont.style,r.pts)||Ar.castOption(e.textfont.style,r.pts)||t.style,s=Ar.castOption(e.outsidetextfont.variant,r.pts)||Ar.castOption(e.textfont.variant,r.pts)||t.variant,u=Ar.castOption(e.outsidetextfont.textcase,r.pts)||Ar.castOption(e.textfont.textcase,r.pts)||t.textcase,f=Ar.castOption(e.outsidetextfont.lineposition,r.pts)||Ar.castOption(e.textfont.lineposition,r.pts)||t.lineposition,c=Ar.castOption(e.outsidetextfont.shadow,r.pts)||Ar.castOption(e.textfont.shadow,r.pts)||t.shadow;return{color:a,family:n,size:i,weight:o,style:l,variant:s,textcase:u,lineposition:f,shadow:c}}function $te(e,r,t){var a=Ar.castOption(e.insidetextfont.color,r.pts);!a&&e._input.textfont&&(a=Ar.castOption(e._input.textfont.color,r.pts));var n=Ar.castOption(e.insidetextfont.family,r.pts)||Ar.castOption(e.textfont.family,r.pts)||t.family,i=Ar.castOption(e.insidetextfont.size,r.pts)||Ar.castOption(e.textfont.size,r.pts)||t.size,o=Ar.castOption(e.insidetextfont.weight,r.pts)||Ar.castOption(e.textfont.weight,r.pts)||t.weight,l=Ar.castOption(e.insidetextfont.style,r.pts)||Ar.castOption(e.textfont.style,r.pts)||t.style,s=Ar.castOption(e.insidetextfont.variant,r.pts)||Ar.castOption(e.textfont.variant,r.pts)||t.variant,u=Ar.castOption(e.insidetextfont.textcase,r.pts)||Ar.castOption(e.textfont.textcase,r.pts)||t.textcase,f=Ar.castOption(e.insidetextfont.lineposition,r.pts)||Ar.castOption(e.textfont.lineposition,r.pts)||t.lineposition,c=Ar.castOption(e.insidetextfont.shadow,r.pts)||Ar.castOption(e.textfont.shadow,r.pts)||t.shadow;return{color:a||Wte.contrast(r.color),family:n,size:i,weight:o,style:l,variant:s,textcase:u,lineposition:f,shadow:c}}function Kte(e,r){for(var t,a,n=0;n=-4;w-=2)x(Math.PI*w,"tan");for(w=4;w>=-4;w-=2)x(Math.PI*(w+1),"tan")}if(c||d){for(w=4;w>=-4;w-=2)x(Math.PI*(w+1.5),"rad");for(w=4;w>=-4;w-=2)x(Math.PI*(w+.5),"rad")}}if(l||p||c){var _=Math.sqrt(e.width*e.width+e.height*e.height);if(m={scale:n*a*2/_,rCenter:1-n,rotate:0},m.textPosAngle=(r.startangle+r.stopangle)/2,m.scale>=1)return m;y.push(m)}(p||d)&&(m=Vte(e,a,o,s,u),m.textPosAngle=(r.startangle+r.stopangle)/2,y.push(m)),(p||v)&&(m=Yte(e,a,o,s,u),m.textPosAngle=(r.startangle+r.stopangle)/2,y.push(m));for(var b=0,T=0,k=0;k=1)break}return y[b]}function qLe(e,r){var t=e.startangle,a=e.stopangle;return t>r&&r>a||t0?1:-1)/2,y:i/(1+t*t/(a*a)),outside:!0}}function CLe(e){var r=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/r,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}function aae(e,r){var t=1,a=1,n,i=e.trace,o={x:e.cx,y:e.cy},l={tx:0,ty:0};l.ty+=i.title.font.size,n=nae(i),i.title.position.indexOf("top")!==-1?(o.y-=(1+n)*e.r,l.ty-=e.titleBox.height):i.title.position.indexOf("bottom")!==-1&&(o.y+=(1+n)*e.r);var s=ELe(e.r,e.trace.aspectratio),u=r.w*(i.domain.x[1]-i.domain.x[0])/2;return i.title.position.indexOf("left")!==-1?(u=u+s,o.x-=(1+n)*s,l.tx+=e.titleBox.width/2):i.title.position.indexOf("center")!==-1?u*=2:i.title.position.indexOf("right")!==-1&&(u=u+s,o.x+=(1+n)*s,l.tx-=e.titleBox.width/2),t=u/e.titleBox.width,a=n8(e,r)/e.titleBox.height,{x:o.x,y:o.y,scale:Math.min(t,a),tx:l.tx,ty:l.ty}}function ELe(e,r){return e/(r===void 0?1:r)}function n8(e,r){var t=e.trace,a=r.h*(t.domain.y[1]-t.domain.y[0]);return Math.min(e.titleBox.height,a/2)}function nae(e){var r=e.pull;if(!r)return 0;var t;if(Ya.isArrayOrTypedArray(r))for(r=0,t=0;tr&&(r=e.pull[t]);return r}function DLe(e,r){var t,a,n,i,o,l,s,u,f,c,v,d,p;function y(_,b){return _.pxmid[1]-b.pxmid[1]}function m(_,b){return b.pxmid[1]-_.pxmid[1]}function x(_,b){b||(b={});var T=b.labelExtraY+(a?b.yLabelMax:b.yLabelMin),k=a?_.yLabelMin:_.yLabelMax,M=a?_.yLabelMax:_.yLabelMin,q=_.cyFinal+o(_.px0[1],_.px1[1]),E=T-k,D,P,R,z,O,B;if(E*s>0&&(_.labelExtraY=E),!!Ya.isArrayOrTypedArray(r.pull))for(P=0;P=(Ar.castOption(r.pull,R.pts)||0))&&((_.pxmid[1]-R.pxmid[1])*s>0?(z=R.cyFinal+o(R.px0[1],R.px1[1]),E=z-k-_.labelExtraY,E*s>0&&(_.labelExtraY+=E)):(M+_.labelExtraY-q)*s>0&&(D=3*l*Math.abs(P-c.indexOf(_)),O=R.cxFinal+i(R.px0[0],R.px1[0]),B=O+D-(_.cxFinal+_.pxmid[0])-_.labelExtraX,B*l>0&&(_.labelExtraX+=B)))}for(a=0;a<2;a++)for(n=a?y:m,o=a?Math.max:Math.min,s=a?1:-1,t=0;t<2;t++){for(i=t?Math.max:Math.min,l=t?1:-1,u=e[a][t],u.sort(n),f=e[1-a][t],c=f.concat(u),d=[],v=0;v1?(u=t.r,f=u/n.aspectratio):(f=t.r,u=f*n.aspectratio),u*=(1+n.baseratio)/2,s=u*f}o=Math.min(o,s/t.vTotal)}for(a=0;ar.vTotal/2?1:0,u.halfangle=Math.PI*Math.min(u.v/r.vTotal,.5),u.ring=1-a.hole,u.rInscribed=LLe(u,r))}function m3(e,r){return[e*Math.sin(r),-e*Math.cos(r)]}function oae(e,r,t){var a=e._fullLayout,n=t.trace,i=n.texttemplate,o=n.textinfo;if(!i&&o&&o!=="none"){var l=o.split("+"),s=function(b){return l.indexOf(b)!==-1},u=s("label"),f=s("text"),c=s("value"),v=s("percent"),d=a.separators,p;if(p=u?[r.label]:[],f){var y=Ar.getFirstFilled(n.text,r.pts);Gte(y)&&p.push(y)}c&&p.push(Ar.formatPieValue(r.v,d)),v&&p.push(Ar.formatPiePercent(r.v/t.vTotal,d)),r.text=p.join("
")}function m(b){return{label:b.label,value:b.v,valueLabel:Ar.formatPieValue(b.v,a.separators),percent:b.v/t.vTotal,percentLabel:Ar.formatPiePercent(b.v/t.vTotal,a.separators),color:b.color,text:b.text,customdata:Ya.castOption(n,b.i,"customdata")}}if(i){var x=Ya.castOption(n,r.i,"texttemplate");if(!x)r.text="";else{var w=m(r),_=Ar.getFirstFilled(n.text,r.pts);(Gte(_)||_==="")&&(w.text=_),r.text=Ya.texttemplateString({data:[w,n._meta],fallback:n.texttemplatefallback,labels:w,locale:e._fullLayout._d3locale,template:x})}}}function lae(e,r){var t=e.rotate*Math.PI/180,a=Math.cos(t),n=Math.sin(t),i=(r.left+r.right)/2,o=(r.top+r.bottom)/2;e.textX=i*a-o*n,e.textY=i*n+o*a,e.noCenter=!0}sae.exports={plot:MLe,formatSliceLabel:oae,transformInsideText:Qte,determineInsideTextFont:$te,positionTitleOutside:aae,prerenderTitles:Kte,layoutAreas:iae,attachFxHandlers:Jte,computeTransform:lae}});var vae=N((FHe,cae)=>{"use strict";var fae=Sr(),FLe=Y1(),NLe=k0().resizeText;cae.exports=function(r){var t=r._fullLayout._pielayer.selectAll(".trace");NLe(r,t,"pie"),t.each(function(a){var n=a[0],i=n.trace,o=fae.select(this);o.style({opacity:i.opacity}),o.selectAll("path.surface").each(function(l){fae.select(this).call(FLe,l,i,r)})})}});var dae=N(Rv=>{"use strict";var hae=ta();Rv.name="pie";Rv.plot=function(e,r,t,a){hae.plotBasePlot(Rv.name,e,r,t,a)};Rv.clean=function(e,r,t,a){hae.cleanBasePlot(Rv.name,e,r,t,a)}});var yae=N((zHe,pae)=>{"use strict";pae.exports={attributes:QT(),supplyDefaults:Rte().supplyDefaults,supplyLayoutDefaults:Nte(),layoutAttributes:e8(),calc:t8().calc,crossTraceCalc:t8().crossTraceCalc,plot:uae().plot,style:vae(),styleOne:Y1(),moduleType:"trace",name:"pie",basePlotModule:dae(),categories:["pie-like","pie","showLegend"],meta:{}}});var gae=N((IHe,mae)=>{"use strict";mae.exports=yae()});var Qa=N((OHe,xae)=>{"use strict";var bae=Object.getOwnPropertySymbols,zLe=Object.prototype.hasOwnProperty,ILe=Object.prototype.propertyIsEnumerable;function OLe(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function BLe(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var r={},t=0;t<10;t++)r["_"+String.fromCharCode(t)]=t;var a=Object.getOwnPropertyNames(r).map(function(i){return r[i]});if(a.join("")!=="0123456789")return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach(function(i){n[i]=i}),Object.keys(Object.assign({},n)).join("")==="abcdefghijklmnopqrst"}catch(i){return!1}}xae.exports=BLe()?Object.assign:function(e,r){for(var t,a=OLe(e),n,i=1;i{var b3=Qa();function _ae(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}b3(_ae.prototype,{instance:function(e,r){e=(e||"gregorian").toLowerCase(),r=r||"";var t=this._localCals[e+"-"+r];if(!t&&this.calendars[e]&&(t=new this.calendars[e](r),this._localCals[e+"-"+r]=t),!t)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return t},newDate:function(e,r,t,a,n){return a=(e!=null&&e.year?e.calendar():typeof a=="string"?this.instance(a,n):a)||this.instance(),a.newDate(e,r,t)},substituteDigits:function(e){return function(r){return(r+"").replace(/[0-9]/g,function(t){return e[t]})}},substituteChineseDigits:function(e,r){return function(t){for(var a="",n=0;t>0;){var i=t%10;a=(i===0?"":e[i]+r[n])+a,n++,t=Math.floor(t/10)}return a.indexOf(e[1]+r[1])===0&&(a=a.substr(1)),a||e[0]}}});function i8(e,r,t,a){if(this._calendar=e,this._year=r,this._month=t,this._day=a,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function g3(e,r){return e=""+e,"000000".substring(0,r-e.length)+e}b3(i8.prototype,{newDate:function(e,r,t){return this._calendar.newDate(e==null?this:e,r,t)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,r,t){if(!this._calendar.isValid(e,r,t))throw(Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=r,this._day=t,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,r){return this._calendar.add(this,e,r)},set:function(e,r){return this._calendar.set(this,e,r)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(Nr.local.differentCalendars||Nr.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var r=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return r===0?0:r<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+g3(Math.abs(this.year()),4)+"-"+g3(this.month(),2)+"-"+g3(this.day(),2)}});function o8(){this.shortYearCutoff="+10"}b3(o8.prototype,{_validateLevel:0,newDate:function(e,r,t){return e==null?this.today():(e.year&&(this._validate(e,r,t,Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate),t=e.day(),r=e.month(),e=e.year()),new i8(this,e,r,t))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var r=this._validate(e,this.minMonth,this.minDay,Nr.local.invalidYear||Nr.regionalOptions[""].invalidYear);return r.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Nr.local.invalidYear||Nr.regionalOptions[""].invalidYear);return(r.year()<0?"-":"")+g3(Math.abs(r.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Nr.local.invalidYear||Nr.regionalOptions[""].invalidYear),12},monthOfYear:function(e,r){var t=this._validate(e,r,this.minDay,Nr.local.invalidMonth||Nr.regionalOptions[""].invalidMonth);return(t.month()+this.monthsInYear(t)-this.firstMonth)%this.monthsInYear(t)+this.minMonth},fromMonthOfYear:function(e,r){var t=(r+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,t,this.minDay,Nr.local.invalidMonth||Nr.regionalOptions[""].invalidMonth),t},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Nr.local.invalidYear||Nr.regionalOptions[""].invalidYear);return this.leapYear(r)?366:365},dayOfYear:function(e,r,t){var a=this._validate(e,r,t,Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate);return a.toJD()-this.newDate(a.year(),this.fromMonthOfYear(a.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(a))+2)%this.daysInWeek()},extraInfo:function(e,r,t){return this._validate(e,r,t,Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate),{}},add:function(e,r,t){return this._validate(e,this.minMonth,this.minDay,Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,r,t),r,t)},_add:function(e,r,t){if(this._validateLevel++,t==="d"||t==="w"){var a=e.toJD()+r*(t==="w"?this.daysInWeek():1),n=e.calendar().fromJD(a);return this._validateLevel--,[n.year(),n.month(),n.day()]}try{var i=e.year()+(t==="y"?r:0),o=e.monthOfYear()+(t==="m"?r:0),n=e.day(),l=function(f){for(;oc-1+f.minMonth;)i++,o-=c,c=f.monthsInYear(i)};t==="y"?(e.month()!==this.fromMonthOfYear(i,o)&&(o=this.newDate(i,e.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(i)),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,o)))):t==="m"&&(l(this),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,o))));var s=[i,this.fromMonthOfYear(i,o),n];return this._validateLevel--,s}catch(u){throw this._validateLevel--,u}},_correctAdd:function(e,r,t,a){if(!this.hasYearZero&&(a==="y"||a==="m")&&(r[0]===0||e.year()>0!=r[0]>0)){var n={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[a],i=t<0?-1:1;r=this._add(e,t*n[0]+i*n[1],n[2])}return e.date(r[0],r[1],r[2])},set:function(e,r,t){this._validate(e,this.minMonth,this.minDay,Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate);var a=t==="y"?r:e.year(),n=t==="m"?r:e.month(),i=t==="d"?r:e.day();return(t==="y"||t==="m")&&(i=Math.min(i,this.daysInMonth(a,n))),e.date(a,n,i)},isValid:function(e,r,t){this._validateLevel++;var a=this.hasYearZero||e!==0;if(a){var n=this.newDate(e,r,this.minDay);a=r>=this.minMonth&&r-this.minMonth=this.minDay&&t-this.minDay13.5?13:1),u=n-(s>2.5?4716:4715);return u<=0&&u--,this.newDate(u,s,l)},toJSDate:function(e,r,t){var a=this._validate(e,r,t,Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate),n=new Date(a.year(),a.month()-1,a.day());return n.setHours(0),n.setMinutes(0),n.setSeconds(0),n.setMilliseconds(0),n.setHours(n.getHours()>12?n.getHours()+2:0),n},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var Nr=wae.exports=new _ae;Nr.cdate=i8;Nr.baseCalendar=o8;Nr.calendars.gregorian=l8});var Tae=N(()=>{var s8=Qa(),Fa=en();s8(Fa.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});Fa.local=Fa.regionalOptions[""];s8(Fa.cdate.prototype,{formatDate:function(e,r){return typeof e!="string"&&(r=e,e=""),this._calendar.formatDate(e||"",this,r)}});s8(Fa.baseCalendar.prototype,{UNIX_EPOCH:Fa.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:Fa.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,r,t){if(typeof e!="string"&&(t=r,r=e,e=""),!r)return"";if(r.calendar()!==this)throw Fa.local.invalidFormat||Fa.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,t=t||{};for(var a=t.dayNamesShort||this.local.dayNamesShort,n=t.dayNames||this.local.dayNames,i=t.monthNumbers||this.local.monthNumbers,o=t.monthNamesShort||this.local.monthNamesShort,l=t.monthNames||this.local.monthNames,s=t.calculateWeek||this.local.calculateWeek,u=function(b,T){for(var k=1;_+k1},f=function(b,T,k,M){var q=""+T;if(u(b,M))for(;q.length1},w=function(R,z){var O=x(R,z),B=[2,3,O?4:2,O?4:2,10,11,20]["oyYJ@!".indexOf(R)+1],Y=new RegExp("^-?\\d{1,"+B+"}"),G=r.substring(q).match(Y);if(!G)throw(Fa.local.missingNumberAt||Fa.regionalOptions[""].missingNumberAt).replace(/\{0\}/,q);return q+=G[0].length,parseInt(G[0],10)},_=this,b=function(){if(typeof l=="function"){x("m");var R=l.call(_,r.substring(q));return q+=R.length,R}return w("m")},T=function(R,z,O,B){for(var Y=x(R,B)?O:z,G=0;G-1){v=1,d=p;for(var P=this.daysInMonth(c,v);d>P;P=this.daysInMonth(c,v))v++,d-=P}return f>-1?this.fromJD(f):this.newDate(c,v,d)},determineDate:function(e,r,t,a,n){t&&typeof t!="object"&&(n=a,a=t,t=null),typeof a!="string"&&(n=a,a="");var i=this,o=function(l){try{return i.parseDate(a,l,n)}catch(c){}l=l.toLowerCase();for(var s=(l.match(/^c/)&&t?t.newDate():null)||i.today(),u=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,f=u.exec(l);f;)s.add(parseInt(f[1],10),f[2]||"d"),f=u.exec(l);return s};return r=r?r.newDate():null,e=e==null?r:typeof e=="string"?o(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?r:i.today().add(e,"d"):i.newDate(e),e}})});var Aae=N(()=>{var Ds=en(),HLe=Qa(),u8=Ds.instance();function x3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}x3.prototype=new Ds.baseCalendar;HLe(x3.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,r){if(typeof e=="string"){var t=e.match(GLe);return t?t[0]:""}var a=this._validateYear(e),n=e.month(),i=""+this.toChineseMonth(a,n);return r&&i.length<2&&(i="0"+i),this.isIntercalaryMonth(a,n)&&(i+="i"),i},monthNames:function(e){if(typeof e=="string"){var r=e.match(VLe);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},monthNamesShort:function(e){if(typeof e=="string"){var r=e.match(YLe);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},parseMonth:function(e,r){e=this._validateYear(e);var t=parseInt(r),a;if(isNaN(t))r[0]==="\u95F0"&&(a=!0,r=r.substring(1)),r[r.length-1]==="\u6708"&&(r=r.substring(0,r.length-1)),t=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(r);else{var n=r[r.length-1];a=n==="i"||n==="I"}var i=this.toMonthIndex(e,t,a);return i},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,r){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw r.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,r,t){var a=this.intercalaryMonth(e),n=t&&r!==a;if(n||r<1||r>12)throw Ds.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return a?!t&&r<=a?i=r-1:i=r:i=r-1,i},toChineseMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e),a=t?12:11;if(r<0||r>a)throw Ds.local.invalidMonth.replace(/\{0\}/,this.local.name);var n;return t?r>13;return t},isIntercalaryMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e);return!!t&&t===r},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,r,t){var a=this._validateYear(e,Ds.local.invalidyear),n=Ps[a-Ps[0]],i=n>>9&4095,o=n>>5&15,l=n&31,s;s=u8.newDate(i,o,l),s.add(4-(s.dayOfWeek()||7),"d");var u=this.toJD(e,r,t)-s.toJD();return 1+Math.floor(u/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,r){e.year&&(r=e.month(),e=e.year()),e=this._validateYear(e);var t=Rs[e-Rs[0]],a=t>>13,n=a?12:11;if(r>n)throw Ds.local.invalidMonth.replace(/\{0\}/,this.local.name);var i=t&1<<12-r?30:29;return i},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,i,t,Ds.local.invalidDate);e=this._validateYear(a.year()),r=a.month(),t=a.day();var n=this.isIntercalaryMonth(e,r),i=this.toChineseMonth(e,r),o=WLe(e,i,t,n);return u8.toJD(o.year,o.month,o.day)},fromJD:function(e){var r=u8.fromJD(e),t=jLe(r.year(),r.month(),r.day()),a=this.toMonthIndex(t.year,t.month,t.isIntercalary);return this.newDate(t.year,a,t.day)},fromString:function(e){var r=e.match(ULe),t=this._validateYear(+r[1]),a=+r[2],n=!!r[3],i=this.toMonthIndex(t,a,n),o=+r[4];return this.newDate(t,i,o)},add:function(e,r,t){var a=e.year(),n=e.month(),i=this.isIntercalaryMonth(a,n),o=this.toChineseMonth(a,n),l=Object.getPrototypeOf(x3.prototype).add.call(this,e,r,t);if(t==="y"){var s=l.year(),u=l.month(),f=this.isIntercalaryMonth(s,o),c=i&&f?this.toMonthIndex(s,o,!0):this.toMonthIndex(s,o,!1);c!==u&&l.month(c)}return l}});var ULe=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,GLe=/^\d?\d[iI]?/m,VLe=/^闰?十?[一二三四五六七八九]?月/m,YLe=/^闰?十?[一二三四五六七八九]?/m;Ds.calendars.chinese=x3;var Rs=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],Ps=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function jLe(e,r,t,a){var n,i;if(typeof e=="object")n=e,i=r||{};else{var o=typeof e=="number"&&e>=1888&&e<=2111;if(!o)throw new Error("Solar year outside range 1888-2111");var l=typeof r=="number"&&r>=1&&r<=12;if(!l)throw new Error("Solar month outside range 1 - 12");var s=typeof t=="number"&&t>=1&&t<=31;if(!s)throw new Error("Solar day outside range 1 - 31");n={year:e,month:r,day:t},i=a||{}}var u=Ps[n.year-Ps[0]],f=n.year<<9|n.month<<5|n.day;i.year=f>=u?n.year:n.year-1,u=Ps[i.year-Ps[0]];var c=u>>9&4095,v=u>>5&15,d=u&31,p,y=new Date(c,v-1,d),m=new Date(n.year,n.month-1,n.day);p=Math.round((m-y)/(24*3600*1e3));var x=Rs[i.year-Rs[0]],w;for(w=0;w<13;w++){var _=x&1<<12-w?30:29;if(p<_)break;p-=_}var b=x>>13;return!b||w=1888&&e<=2111;if(!l)throw new Error("Lunar year outside range 1888-2111");var s=typeof r=="number"&&r>=1&&r<=12;if(!s)throw new Error("Lunar month outside range 1 - 12");var u=typeof t=="number"&&t>=1&&t<=30;if(!u)throw new Error("Lunar day outside range 1 - 30");var f;typeof a=="object"?(f=!1,i=a):(f=!!a,i=n||{}),o={year:e,month:r,day:t,isIntercalary:f}}var c;c=o.day-1;var v=Rs[o.year-Rs[0]],d=v>>13,p;d&&(o.month>d||o.isIntercalary)?p=o.month:p=o.month-1;for(var y=0;y>9&4095,_=x>>5&15,b=x&31,T=new Date(w,_-1,b+c);return i.year=T.getFullYear(),i.month=1+T.getMonth(),i.day=T.getDate(),i}});var Mae=N(()=>{var lf=en(),ZLe=Qa();function f8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}f8.prototype=new lf.baseCalendar;ZLe(f8.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,lf.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,lf.local.invalidYear||lf.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,lf.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,lf.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});lf.calendars.coptic=f8});var kae=N(()=>{var Dl=en(),XLe=Qa();function c8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}c8.prototype=new Dl.baseCalendar;XLe(c8.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Dl.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Dl.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Dl.local.invalidYear),400},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/8)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Dl.local.invalidMonth);return this.daysPerMonth[t.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Dl.local.invalidDate);return(a.day()+1)%8},weekDay:function(e,r,t){var a=this.dayOfWeek(e,r,t);return a>=2&&a<=6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Dl.local.invalidDate);return{century:JLe[Math.floor((a.year()-1)/100)+1]||""}},toJD:function(e,r,t){var a=this._validate(e,r,t,Dl.local.invalidDate);return e=a.year()+(a.year()<0?1:0),r=a.month(),t=a.day(),t+(r>1?16:0)+(r>2?(r-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var r=Math.floor(e/400)+1;e-=(r-1)*400,e+=e>15?16:0;var t=Math.floor(e/32)+1,a=e-(t-1)*32+1;return this.newDate(r<=0?r-1:r,t,a)}});var JLe={20:"Fruitbat",21:"Anchovy"};Dl.calendars.discworld=c8});var Sae=N(()=>{var sf=en(),$Le=Qa();function v8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}v8.prototype=new sf.baseCalendar;$Le(v8.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,sf.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,sf.local.invalidYear||sf.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,sf.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,sf.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});sf.calendars.ethiopian=v8});var qae=N(()=>{var Fs=en(),KLe=Qa();function h8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}h8.prototype=new Fs.baseCalendar;KLe(h8.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Fs.local.invalidYear);return this._leapYear(r.year())},_leapYear:function(e){return e=e<0?e+1:e,_3(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Fs.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Fs.local.invalidYear);return e=r.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,Fs.local.invalidMonth),r===12&&this.leapYear(e)||r===8&&_3(this.daysInYear(e),10)===5?30:r===9&&_3(this.daysInYear(e),10)===3?29:this.daysPerMonth[r-1]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Fs.local.invalidDate);return{yearType:(this.leapYear(a)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(a)%10-3]}},toJD:function(e,r,t){var a=this._validate(e,r,t,Fs.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=e<=0?e+1:e,i=this.jdEpoch+this._delay1(n)+this._delay2(n)+t+1;if(r<7){for(var o=7;o<=this.monthsInYear(e);o++)i+=this.daysInMonth(e,o);for(var o=1;o=this.toJD(r===-1?1:r+1,7,1);)r++;for(var t=ethis.toJD(r,t,this.daysInMonth(r,t));)t++;var a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});function _3(e,r){return e-r*Math.floor(e/r)}Fs.calendars.hebrew=h8});var Lae=N(()=>{var Pd=en(),QLe=Qa();function d8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}d8.prototype=new Pd.baseCalendar;QLe(d8.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Pd.local.invalidYear);return(r.year()*11+14)%30<11},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Pd.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,Pd.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e=e<=0?e+1:e,t+Math.ceil(29.5*(r-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=Math.floor((30*(e-this.jdEpoch)+10646)/10631);r=r<=0?r-1:r;var t=Math.min(12,Math.ceil((e-29-this.toJD(r,1,1))/29.5)+1),a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});Pd.calendars.islamic=d8});var Cae=N(()=>{var Fd=en(),eCe=Qa();function p8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}p8.prototype=new Fd.baseCalendar;eCe(p8.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Fd.local.invalidYear),t=r.year()<0?r.year()+1:r.year();return t%4===0},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(4-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Fd.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,Fd.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e<0&&e++,r<=2&&(e--,r+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(r+1))+t-1524.5},fromJD:function(e){var r=Math.floor(e+.5),t=r+1524,a=Math.floor((t-122.1)/365.25),n=Math.floor(365.25*a),i=Math.floor((t-n)/30.6001),o=i-Math.floor(i<14?1:13),l=a-Math.floor(o>2?4716:4715),s=t-n-Math.floor(30.6001*i);return l<=0&&l--,this.newDate(l,o,s)}});Fd.calendars.julian=p8});var Dae=N(()=>{var Gi=en(),rCe=Qa();function m8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}m8.prototype=new Gi.baseCalendar;rCe(m8.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Gi.local.invalidYear),!1},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Gi.local.invalidYear);e=r.year();var t=Math.floor(e/400);e=e%400,e+=e<0?400:0;var a=Math.floor(e/20);return t+"."+a+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var r=0,t=0;t19||t>0&&a<0)throw"Invalid Mayan year";r=r*20+a}return r},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Gi.local.invalidYear),18},weekOfYear:function(e,r,t){return this._validate(e,r,t,Gi.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Gi.local.invalidYear),360},daysInMonth:function(e,r){return this._validate(e,r,this.minDay,Gi.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Gi.local.invalidDate);return a.day()},weekDay:function(e,r,t){return this._validate(e,r,t,Gi.local.invalidDate),!0},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Gi.local.invalidDate),n=a.toJD(),i=this._toHaab(n),o=this._toTzolkin(n);return{haabMonthName:this.local.haabMonths[i[0]-1],haabMonth:i[0],haabDay:i[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(e){e-=this.jdEpoch;var r=y8(e+8+17*20,365);return[Math.floor(r/20)+1,y8(r,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[Eae(e+20,20),Eae(e+4,13)]},toJD:function(e,r,t){var a=this._validate(e,r,t,Gi.local.invalidDate);return a.day()+a.month()*20+a.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var r=Math.floor(e/360);e=e%360,e+=e<0?360:0;var t=Math.floor(e/20),a=e%20;return this.newDate(r,t,a)}});function y8(e,r){return e-r*Math.floor(e/r)}function Eae(e,r){return y8(e-1,r)+1}Gi.calendars.mayan=m8});var Pae=N(()=>{var uf=en(),tCe=Qa();function g8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}g8.prototype=new uf.baseCalendar;var Rae=uf.instance("gregorian");tCe(g8.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,uf.local.invalidYear||uf.regionalOptions[""].invalidYear);return Rae.leapYear(r.year()+(r.year()<1?1:0)+1469)},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(1-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,uf.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,uf.local.invalidMonth),n=a.year();n<0&&n++;for(var i=a.day(),o=1;o=this.toJD(r+1,1,1);)r++;for(var t=e-Math.floor(this.toJD(r,1,1)+.5)+1,a=1;t>this.daysInMonth(r,a);)t-=this.daysInMonth(r,a),a++;return this.newDate(r,a,t)}});uf.calendars.nanakshahi=g8});var Fae=N(()=>{var ff=en(),aCe=Qa();function b8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}b8.prototype=new ff.baseCalendar;aCe(b8.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,ff.local.invalidYear);if(e=r.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var t=0,a=this.minMonth;a<=12;a++)t+=this.NEPALI_CALENDAR_DATA[e][a];return t},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,ff.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[r-1]:this.NEPALI_CALENDAR_DATA[e][r]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},toJD:function(e,r,t){var a=this._validate(e,r,t,ff.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=ff.instance(),i=0,o=r,l=e;this._createMissingCalendarData(e);var s=e-(o>9||o===9&&t>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(r!==9&&(i=t,o--);o!==9;)o<=0&&(o=12,l--),i+=this.NEPALI_CALENDAR_DATA[l][o],o--;return r===9?(i+=t-this.NEPALI_CALENDAR_DATA[l][0],i<0&&(i+=n.daysInYear(s))):i+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],n.newDate(s,1,1).add(i,"d").toJD()},fromJD:function(e){var r=ff.instance(),t=r.fromJD(e),a=t.year(),n=t.dayOfYear(),i=a+56;this._createMissingCalendarData(i);for(var o=9,l=this.NEPALI_CALENDAR_DATA[i][0],s=this.NEPALI_CALENDAR_DATA[i][o]-l+1;n>s;)o++,o>12&&(o=1,i++),s+=this.NEPALI_CALENDAR_DATA[i][o];var u=this.NEPALI_CALENDAR_DATA[i][o]-(s-n);return this.newDate(i,o,u)},_createMissingCalendarData:function(e){var r=this.daysPerMonth.slice(0);r.unshift(17);for(var t=e-1;t{var Pv=en(),nCe=Qa();function T3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function w3(e){var r=e-475;e<0&&r++;var t=.242197,a=t*r,n=t*(r+1),i=a-Math.floor(a),o=n-Math.floor(n);return i>o}T3.prototype=new Pv.baseCalendar;nCe(T3.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Pv.local.invalidYear);return w3(r.year())},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-((a.dayOfWeek()+1)%7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Pv.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,Pv.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=0;if(e>0)for(var i=1;i0?e-1:e)*365+n+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=475+(e-this.toJD(475,1,1))/365.242197,t=Math.floor(r);t<=0&&t--,e>this.toJD(t,12,w3(t)?30:29)&&(t++,t===0&&t++);var a=e-this.toJD(t,1,1)+1,n=a<=186?Math.ceil(a/31):Math.ceil((a-6)/30),i=e-this.toJD(t,n,1)+1;return this.newDate(t,n,i)}});Pv.calendars.persian=T3;Pv.calendars.jalali=T3});var zae=N(()=>{var cf=en(),iCe=Qa(),A3=cf.instance();function x8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}x8.prototype=new cf.baseCalendar;iCe(x8.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,cf.local.invalidYear),t=this._t2gYear(r.year());return A3.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,cf.local.invalidYear),n=this._t2gYear(a.year());return A3.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,cf.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,cf.local.invalidDate),n=this._t2gYear(a.year());return A3.toJD(n,a.month(),a.day())},fromJD:function(e){var r=A3.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});cf.calendars.taiwan=x8});var Iae=N(()=>{var vf=en(),oCe=Qa(),M3=vf.instance();function _8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}_8.prototype=new vf.baseCalendar;oCe(_8.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,vf.local.invalidYear),t=this._t2gYear(r.year());return M3.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,vf.local.invalidYear),n=this._t2gYear(a.year());return M3.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,vf.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,vf.local.invalidDate),n=this._t2gYear(a.year());return M3.toJD(n,a.month(),a.day())},fromJD:function(e){var r=M3.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});vf.calendars.thai=_8});var Oae=N(()=>{var hf=en(),lCe=Qa();function w8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}w8.prototype=new hf.baseCalendar;lCe(w8.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,hf.local.invalidYear);return this.daysInYear(r.year())===355},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var r=0,t=1;t<=12;t++)r+=this.daysInMonth(e,t);return r},daysInMonth:function(e,r){for(var t=this._validate(e,r,this.minDay,hf.local.invalidMonth),a=t.toJD()-24e5+.5,n=0,i=0;ia)return Ns[n]-Ns[n-1];n++}return 30},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,hf.local.invalidDate),n=12*(a.year()-1)+a.month()-15292,i=a.day()+Ns[n-1]-1;return i+24e5-.5},fromJD:function(e){for(var r=e-24e5+.5,t=0,a=0;ar);a++)t++;var n=t+15292,i=Math.floor((n-1)/12),o=i+1,l=n-12*i,s=r-Ns[t-1]+1;return this.newDate(o,l,s)},isValid:function(e,r,t){var a=hf.baseCalendar.prototype.isValid.apply(this,arguments);return a&&(e=e.year!=null?e.year:e,a=e>=1276&&e<=1500),a},_validate:function(e,r,t,a){var n=hf.baseCalendar.prototype._validate.apply(this,arguments);if(n.year<1276||n.year>1500)throw a.replace(/\{0\}/,this.local.name);return n}});hf.calendars.ummalqura=w8;var Ns=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var Hae=N((mUe,Bae)=>{"use strict";Bae.exports=en();Tae();Aae();Mae();kae();Sae();qae();Lae();Cae();Dae();Pae();Fae();Nae();zae();Iae();Oae()});var Zae=N((gUe,Wae)=>{"use strict";var Gae=Hae(),Nd=Le(),Vae=It(),sCe=Vae.EPOCHJD,uCe=Vae.ONEDAY,M8={valType:"enumerated",values:Nd.sortObjectKeys(Gae.calendars),editType:"calc",dflt:"gregorian"},Yae=function(e,r,t,a){var n={};return n[t]=M8,Nd.coerce(e,r,n,t,a)},fCe=function(e,r,t,a){for(var n=0;n{"use strict";Xae.exports=Zae()});var yCe=N((xUe,Kae)=>{var $ae=jU();$ae.register([XG(),NV(),rj(),wj(),Nj(),IW(),KW(),BZ(),pX(),Ste(),gae(),Jae()]);Kae.exports=$ae});return yCe();})(); +`),hqe=Hre("IHDR");Ure.exports=function(e){if(!(e.length<24)&&Ore(e,0,vqe)&&Ore(e,12,hqe))return{width:Bre(e,16),height:Bre(e,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}});var Wre=N((dHe,Yre)=>{"use strict";var dqe=xt().str2arr,pqe=xt().sliceEq,Vre=xt().readUInt32BE,yqe=dqe("8BPS\0");Yre.exports=function(e){if(!(e.length<22)&&pqe(e,0,yqe))return{width:Vre(e,18),height:Vre(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}});var Xre=N((pHe,Zre)=>{"use strict";function mqe(e){return e===32||e===9||e===13||e===10}function Rv(e){return typeof e=="number"&&isFinite(e)&&e>0}function gqe(e){var r=0,t=e.length;for(e[0]===239&&e[1]===187&&e[2]===191&&(r=3);r]*>/,xqe=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,_qe=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,wqe=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,Tqe=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,jre=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function Aqe(e){var r=e.match(_qe),t=e.match(wqe),a=e.match(Tqe);return{width:r&&(r[1]||r[2]),height:t&&(t[1]||t[2]),viewbox:a&&(a[1]||a[2])}}function $o(e){return jre.test(e)?e.match(jre)[0]:"px"}Zre.exports=function(e){if(gqe(e)){for(var r="",t=0;t{"use strict";var Kre=xt().str2arr,Jre=xt().sliceEq,Mqe=xt().readUInt16LE,kqe=xt().readUInt16BE,Sqe=xt().readUInt32LE,qqe=xt().readUInt32BE,Lqe=Kre("II*\0"),Cqe=Kre("MM\0*");function v3(e,r,t){return t?kqe(e,r):Mqe(e,r)}function XT(e,r,t){return t?qqe(e,r):Sqe(e,r)}function $re(e,r,t){var a=v3(e,r+2,t),n=XT(e,r+4,t);return n!==1||a!==3&&a!==4?null:a===3?v3(e,r+8,t):XT(e,r+8,t)}Qre.exports=function(e){if(!(e.length<8)&&!(!Jre(e,0,Lqe)&&!Jre(e,0,Cqe))){var r=e[0]===77,t=XT(e,4,r)-8;if(!(t<0)){var a=t+8;if(!(e.length-a<2)){var n=v3(e,a+0,r)*12;if(!(n<=0)&&(a+=2,!(e.length-a{"use strict";var ate=xt().str2arr,rte=xt().sliceEq,tte=xt().readUInt16LE,JT=xt().readUInt32LE,Eqe=f3(),Dqe=ate("RIFF"),Rqe=ate("WEBP");function Pqe(e,r){if(!(e[r+3]!==157||e[r+4]!==1||e[r+5]!==42))return{width:tte(e,r+6)&16383,height:tte(e,r+8)&16383,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}function Fqe(e,r){if(e[r]===47){var t=JT(e,r+1);return{width:(t&16383)+1,height:(t>>14&16383)+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function Nqe(e,r){return{width:(e[r+6]<<16|e[r+5]<<8|e[r+4])+1,height:(e[r+9]<e.length)){for(;r+8=10?t=t||Pqe(e,r+8):i==="VP8L"&&o>=9?t=t||Fqe(e,r+8):i==="VP8X"&&o>=10?t=t||Nqe(e,r+8):i==="EXIF"&&(a=Eqe.get_orientation(e.slice(r+8,r+8+o)),r=1/0),r+=8+o}if(t)return a>0&&(t.orientation=a),t}}}});var lte=N((gHe,ote)=>{"use strict";ote.exports={avif:Mre(),bmp:qre(),gif:Rre(),ico:Nre(),jpeg:Ire(),png:Gre(),psd:Wre(),svg:Xre(),tiff:ete(),webp:ite()}});var ste=N((bHe,KT)=>{"use strict";var $T=lte();function zqe(e){for(var r=Object.keys($T),t=0;t{"use strict";var Iqe=ste(),Oqe=ml().IMAGE_URL_PREFIX,Bqe=cv().Buffer;ute.getImageSize=function(e){var r=e.replace(Oqe,""),t=new Bqe(r,"base64");return Iqe(t)}});var hte=N((_He,vte)=>{"use strict";var cte=Le(),Hqe=iv(),Uqe=Rr(),h3=zr(),Gqe=Le().maxRowLength,Vqe=fte().getImageSize;vte.exports=function(r,t){var a,n;if(t._hasZ)a=t.z.length,n=Gqe(t.z);else if(t._hasSource){var i=Vqe(t.source);a=i.height,n=i.width}var o=h3.getFromId(r,t.xaxis||"x"),l=h3.getFromId(r,t.yaxis||"y"),s=o.d2c(t.x0)-t.dx/2,u=l.d2c(t.y0)-t.dy/2,f,c=[s,s+n*t.dx],v=[u,u+a*t.dy];if(o&&o.type==="log")for(f=0;f{"use strict";var Zqe=Sr(),of=Le(),dte=of.strTranslate,Xqe=sl(),Jqe=iv(),$qe=r6(),Kqe=bg().STYLE;pte.exports=function(r,t,a,n){var i=t.xaxis,o=t.yaxis,l=!r._context._exportedPlot&&$qe();of.makeTraceGroups(n,a,"im").each(function(s){var u=Zqe.select(this),f=s[0],c=f.trace,v=(c.zsmooth==="fast"||c.zsmooth===!1&&l)&&!c._hasZ&&c._hasSource&&i.type==="linear"&&o.type==="linear";c._realImage=v;var d=f.z,p=f.x0,y=f.y0,m=f.w,x=f.h,w=c.dx,_=c.dy,b,T,k,M,q,E;for(E=0;b===void 0&&E0;)T=i.c2p(p+E*w),E--;for(E=0;M===void 0&&E0;)q=o.c2p(y+E*_),E--;if(TG[0];if(X||Z){var ee=b+P/2,fe=M+R/2;V+="transform:"+dte(ee+"px",fe+"px")+"scale("+(X?-1:1)+","+(Z?-1:1)+")"+dte(-ee+"px",-fe+"px")+";"}}Y.attr("style",V);var ie=new Promise(function(ue){if(c._hasZ)ue();else if(c._hasSource)if(c._canvas&&c._canvas.el.width===m&&c._canvas.el.height===x&&c._canvas.source===c.source)ue();else{var K=document.createElement("canvas");K.width=m,K.height=x;var _e=K.getContext("2d",{willReadFrequently:!0});c._image=c._image||new Image;var le=c._image;le.onload=function(){_e.drawImage(le,0,0),c._canvas={el:K,source:c.source},ue()},le.setAttribute("src",c.source)}}).then(function(){var ue,K;if(c._hasZ)K=B(function(he,oe){var ce=d[oe][he];return of.isTypedArray(ce)&&(ce=Array.from(ce)),ce}),ue=K.toDataURL("image/png");else if(c._hasSource)if(v)ue=c.source;else{var _e=c._canvas.el.getContext("2d",{willReadFrequently:!0}),le=_e.getImageData(0,0,m,x).data;K=B(function(he,oe){var ce=4*(oe*m+he);return[le[ce],le[ce+1],le[ce+2],le[ce+3]]}),ue=K.toDataURL("image/png")}Y.attr({"xlink:href":ue,height:R,width:P,x:b,y:M})});r._promises.push(ie)})}});var gte=N((THe,mte)=>{"use strict";var Qqe=Sr();mte.exports=function(r){Qqe.select(r).selectAll(".im image").style("opacity",function(t){return t[0].trace.opacity})}});var wte=N((AHe,_te)=>{"use strict";var bte=Pn(),xte=Le(),d3=xte.isArrayOrTypedArray,eLe=iv();_te.exports=function(r,t,a){var n=r.cd[0],i=n.trace,o=r.xa,l=r.ya;if(!(bte.inbox(t-n.x0,t-(n.x0+n.w*i.dx),0)>0||bte.inbox(a-n.y0,a-(n.y0+n.h*i.dy),0)>0)){var s=Math.floor((t-n.x0)/i.dx),u=Math.floor(Math.abs(a-n.y0)/i.dy),f;if(i._hasZ?f=n.z[u][s]:i._hasSource&&(f=i._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(s,u,1,1).data),!!f){var c=n.hi||i.hoverinfo,v;if(c){var d=c.split("+");d.indexOf("all")!==-1&&(d=["color"]),d.indexOf("color")!==-1&&(v=!0)}var p=eLe.colormodel[i.colormodel],y=p.colormodel||i.colormodel,m=y.length,x=i._scaler(f),w=p.suffix,_=[];(i.hovertemplate||v)&&(_.push("["+[x[0]+w[0],x[1]+w[1],x[2]+w[2]].join(", ")),m===4&&_.push(", "+x[3]+w[3]),_.push("]"),_=_.join(""),r.extraText=y.toUpperCase()+": "+_);var b;d3(i.hovertext)&&d3(i.hovertext[u])?b=i.hovertext[u][s]:d3(i.text)&&d3(i.text[u])&&(b=i.text[u][s]);var T=l.c2p(n.y0+(u+.5)*i.dy),k=n.x0+(s+.5)*i.dx,M=n.y0+(u+.5)*i.dy,q="["+f.slice(0,i.colormodel.length).join(", ")+"]";return[xte.extendFlat(r,{index:[u,s],x0:o.c2p(n.x0+s*i.dx),x1:o.c2p(n.x0+(s+1)*i.dx),y0:T,y1:T,color:x,xVal:k,xLabelVal:k,yVal:M,yLabelVal:M,zLabelVal:q,text:b,hovertemplateLabels:{zLabel:q,colorLabel:_,"color[0]Label":x[0]+w[0],"color[1]Label":x[1]+w[1],"color[2]Label":x[2]+w[2],"color[3]Label":x[3]+w[3]}})]}}}});var Ate=N((MHe,Tte)=>{"use strict";Tte.exports=function(r,t){return"xVal"in t&&(r.x=t.xVal),"yVal"in t&&(r.y=t.yVal),t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),r.color=t.color,r.colormodel=t.trace.colormodel,r.z||(r.z=t.color),r}});var kte=N((kHe,Mte)=>{"use strict";Mte.exports={attributes:Z6(),supplyDefaults:wX(),calc:hte(),plot:yte(),style:gte(),hoverPoints:wte(),eventData:Ate(),moduleType:"trace",name:"image",basePlotModule:Li(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}});var qte=N((SHe,Ste)=>{"use strict";Ste.exports=kte()});var e8=N((qHe,Cte)=>{"use strict";var QT=gn(),rLe=Ic().attributes,tLe=ma(),aLe=si(),{hovertemplateAttrs:nLe,texttemplateAttrs:iLe,templatefallbackAttrs:Lte}=Yn(),lf=bt().extendFlat,oLe=ui().pattern,p3=tLe({editType:"plot",arrayOk:!0,colorEditType:"plot"});Cte.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:aLe.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:oLe,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:lf({},QT.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:nLe({},{keys:["label","color","value","percent","text"]}),hovertemplatefallback:Lte(),texttemplate:iLe({editType:"plot"},{keys:["label","color","value","percent","text"]}),texttemplatefallback:Lte({editType:"plot"}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:lf({},p3,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:lf({},p3,{}),outsidetextfont:lf({},p3,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:lf({},QT.showlegend,{arrayOk:!0}),legend:lf({},QT.legend,{arrayOk:!0}),title:{text:{valType:"string",dflt:"",editType:"plot"},font:lf({},p3,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:rLe({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}});var Pte=N((LHe,Rte)=>{"use strict";var lLe=Rr(),Rd=Le(),sLe=e8(),uLe=Ic().defaults,fLe=Iu().handleText,cLe=Le().coercePattern;function Ete(e,r){var t=Rd.isArrayOrTypedArray(e),a=Rd.isArrayOrTypedArray(r),n=Math.min(t?e.length:1/0,a?r.length:1/0);if(isFinite(n)||(n=0),n&&a){for(var i,o=0;o0){i=!0;break}}i||(n=0)}return{hasLabels:t,hasValues:a,len:n}}function Dte(e,r,t,a,n){var i=a("marker.line.width");i&&a("marker.line.color",n?void 0:t.paper_bgcolor);var o=a("marker.colors");cLe(a,"marker.pattern",o),e.marker&&!r.marker.pattern.fgcolor&&(r.marker.pattern.fgcolor=e.marker.colors),r.marker.pattern.bgcolor||(r.marker.pattern.bgcolor=t.paper_bgcolor)}function vLe(e,r,t,a){function n(w,_){return Rd.coerce(e,r,sLe,w,_)}var i=n("labels"),o=n("values"),l=Ete(i,o),s=l.len;if(r._hasLabels=l.hasLabels,r._hasValues=l.hasValues,!r._hasLabels&&r._hasValues&&(n("label0"),n("dlabel")),!s){r.visible=!1;return}r._length=s,Dte(e,r,a,n,!0),n("scalegroup");var u=n("text"),f=n("texttemplate");n("texttemplatefallback");var c;if(f||(c=n("textinfo",Rd.isArrayOrTypedArray(u)?"text+percent":"percent")),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback"),f||c&&c!=="none"){var v=n("textposition");fLe(e,r,a,n,v,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var d=Array.isArray(v)||v==="auto",p=d||v==="outside";p&&n("automargin"),(v==="inside"||v==="auto"||Array.isArray(v))&&n("insidetextorientation")}else c==="none"&&n("textposition","none");uLe(r,a,n);var y=n("hole"),m=n("title.text");if(m){var x=n("title.position",y?"middle center":"top center");!y&&x==="middle center"&&(r.title.position="top center"),Rd.coerceFont(n,"title.font",a.font)}n("sort"),n("direction"),n("rotation"),n("pull")}Rte.exports={handleLabelsAndValues:Ete,handleMarkerDefaults:Dte,supplyDefaults:vLe}});var r8=N((CHe,Fte)=>{"use strict";Fte.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var zte=N((EHe,Nte)=>{"use strict";var hLe=Le(),dLe=r8();Nte.exports=function(r,t){function a(n,i){return hLe.coerce(r,t,dLe,n,i)}a("hiddenlabels"),a("piecolorway",t.colorway),a("extendpiecolors")}});var a8=N((DHe,Bte)=>{"use strict";var pLe=Rr(),t8=kn(),yLe=Tr(),mLe={};function gLe(e,r){var t=[],a=e._fullLayout,n=a.hiddenlabels||[],i=r.labels,o=r.marker.colors||[],l=r.values,s=r._length,u=r._hasValues&&s,f,c;if(r.dlabel)for(i=new Array(s),f=0;f=0});var b=r.type==="funnelarea"?y:r.sort;return b&&t.sort(function(T,k){return k.v-T.v}),t[0]&&(t[0].vTotal=p),t}function Ite(e){return function(t,a){return!t||(t=t8(t),!t.isValid())?!1:(t=yLe.addOpacity(t,t.getAlpha()),e[a]||(e[a]=t),t)}}function bLe(e,r){var t=(r||{}).type;t||(t="pie");var a=e._fullLayout,n=e.calcdata,i=a[t+"colorway"],o=a["_"+t+"colormap"];a["extend"+t+"colors"]&&(i=Ote(i,mLe));for(var l=0,s=0;s{"use strict";var xLe=qo().appendArrayMultiPointValues;Hte.exports=function(r,t){var a={curveNumber:t.index,pointNumbers:r.pts,data:t._input,fullData:t,label:r.label,color:r.color,value:r.v,percent:r.percent,text:r.text,bbox:r.bbox,v:r.v};return r.pts.length===1&&(a.pointNumber=a.i=r.pts[0]),xLe(a,t,r.pts),t.type==="funnelarea"&&(delete a.v,delete a.i),a}});var fae=N((PHe,uae)=>{"use strict";var Gn=Sr(),_Le=ta(),y3=Pn(),Zte=Tr(),El=Wr(),Ya=Le(),wLe=Ya.strScale,Gte=Ya.strTranslate,n8=Ea(),Xte=S0(),TLe=Xte.recordMinTextSize,ALe=Xte.clearMinTextSize,Jte=eg().TEXTPAD,Ar=Y1(),m3=Ute(),Vte=Le().isValidTextValue;function MLe(e,r){var t=e._context.staticPlot,a=e._fullLayout,n=a._size;ALe("pie",a),Qte(r,e),oae(r,n);var i=Ya.makeTraceGroups(a._pielayer,r,"trace").each(function(o){var l=Gn.select(this),s=o[0],u=s.trace;PLe(o),l.attr("stroke-linejoin","round"),l.each(function(){var f=Gn.select(this).selectAll("g.slice").data(o);f.enter().append("g").classed("slice",!0),f.exit().remove();var c=[[[],[]],[[],[]]],v=!1;f.each(function(b,T){if(b.hidden){Gn.select(this).selectAll("path,g").remove();return}b.pointNumber=b.i,b.curveNumber=u.index,c[b.pxmid[1]<0?0:1][b.pxmid[0]<0?0:1].push(b);var k=s.cx,M=s.cy,q=Gn.select(this),E=q.selectAll("path.surface").data([b]);if(E.enter().append("path").classed("surface",!0).style({"pointer-events":t?"none":"all"}),q.call($te,e,o),u.pull){var D=+Ar.castOption(u.pull,b.pts)||0;D>0&&(k+=D*b.pxmid[0],M+=D*b.pxmid[1])}b.cxFinal=k,b.cyFinal=M;function P(H,G,X,Z){var ee=Z*(G[0]-H[0]),fe=Z*(G[1]-H[1]);return"a"+Z*s.r+","+Z*s.r+" 0 "+b.largeArc+(X?" 1 ":" 0 ")+ee+","+fe}var R=u.hole;if(b.v===s.vTotal){var z="M"+(k+b.px0[0])+","+(M+b.px0[1])+P(b.px0,b.pxmid,!0,1)+P(b.pxmid,b.px0,!0,1)+"Z";R?E.attr("d","M"+(k+R*b.px0[0])+","+(M+R*b.px0[1])+P(b.px0,b.pxmid,!1,R)+P(b.pxmid,b.px0,!1,R)+"Z"+z):E.attr("d",z)}else{var O=P(b.px0,b.px1,!0,1);if(R){var B=1-R;E.attr("d","M"+(k+R*b.px1[0])+","+(M+R*b.px1[1])+P(b.px1,b.px0,!1,R)+"l"+B*b.px0[0]+","+B*b.px0[1]+O+"Z")}else E.attr("d","M"+k+","+M+"l"+b.px0[0]+","+b.px0[1]+O+"Z")}lae(e,b,s);var Y=Ar.castOption(u.textposition,b.pts),V=q.selectAll("g.slicetext").data(b.text&&Y!=="none"?[0]:[]);V.enter().append("g").classed("slicetext",!0),V.exit().remove(),V.each(function(){var H=Ya.ensureSingle(Gn.select(this),"text","",function(K){K.attr("data-notex",1)}),G=Ya.ensureUniformFontSize(e,Y==="outside"?SLe(u,b,a.font):Kte(u,b,a.font));H.text(b.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(El.font,G).call(n8.convertToTspans,e);var X=El.bBox(H.node()),Z;if(Y==="outside")Z=jte(X,b);else if(Z=eae(X,b,s),Y==="auto"&&Z.scale<1){var ee=Ya.ensureUniformFontSize(e,u.outsidetextfont);H.call(El.font,ee),X=El.bBox(H.node()),Z=jte(X,b)}var fe=Z.textPosAngle,ie=fe===void 0?b.pxmid:g3(s.r,fe);if(Z.targetX=k+ie[0]*Z.rCenter+(Z.x||0),Z.targetY=M+ie[1]*Z.rCenter+(Z.y||0),sae(Z,X),Z.outside){var ue=Z.targetY;b.yLabelMin=ue-X.height/2,b.yLabelMid=ue,b.yLabelMax=ue+X.height/2,b.labelExtraX=0,b.labelExtraY=0,v=!0}Z.fontSize=G.size,TLe(u.type,Z,a),o[T].transform=Z,Ya.setTransormAndDisplay(H,Z)})});var d=Gn.select(this).selectAll("g.titletext").data(u.title.text?[0]:[]);if(d.enter().append("g").classed("titletext",!0),d.exit().remove(),d.each(function(){var b=Ya.ensureSingle(Gn.select(this),"text","",function(M){M.attr("data-notex",1)}),T=u.title.text;u._meta&&(T=Ya.templateString(T,u._meta)),b.text(T).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(El.font,u.title.font).call(n8.convertToTspans,e);var k;u.title.position==="middle center"?k=CLe(s):k=nae(s,n),b.attr("transform",Gte(k.x,k.y)+wLe(Math.min(1,k.scale))+Gte(k.tx,k.ty))}),v&&DLe(c,u),kLe(f,u),v&&u.automargin){var p=El.bBox(l.node()),y=u.domain,m=n.w*(y.x[1]-y.x[0]),x=n.h*(y.y[1]-y.y[0]),w=(.5*m-s.r)/n.w,_=(.5*x-s.r)/n.h;_Le.autoMargin(e,"pie."+u.uid+".automargin",{xl:y.x[0]-w,xr:y.x[1]+w,yb:y.y[0]-_,yt:y.y[1]+_,l:Math.max(s.cx-s.r-p.left,0),r:Math.max(p.right-(s.cx+s.r),0),b:Math.max(p.bottom-(s.cy+s.r),0),t:Math.max(s.cy-s.r-p.top,0),pad:5})}})});setTimeout(function(){i.selectAll("tspan").each(function(){var o=Gn.select(this);o.attr("dy")&&o.attr("dy",o.attr("dy"))})},0)}function kLe(e,r){e.each(function(t){var a=Gn.select(this);if(!t.labelExtraX&&!t.labelExtraY){a.select("path.textline").remove();return}var n=a.select("g.slicetext text");t.transform.targetX+=t.labelExtraX,t.transform.targetY+=t.labelExtraY,Ya.setTransormAndDisplay(n,t.transform);var i=t.cxFinal+t.pxmid[0],o=t.cyFinal+t.pxmid[1],l="M"+i+","+o,s=(t.yLabelMax-t.yLabelMin)*(t.pxmid[0]<0?-1:1)/4;if(t.labelExtraX){var u=t.labelExtraX*t.pxmid[1]/t.pxmid[0],f=t.yLabelMid+t.labelExtraY-(t.cyFinal+t.pxmid[1]);Math.abs(u)>Math.abs(f)?l+="l"+f*t.pxmid[0]/t.pxmid[1]+","+f+"H"+(i+t.labelExtraX+s):l+="l"+t.labelExtraX+","+u+"v"+(f-u)+"h"+s}else l+="V"+(t.yLabelMid+t.labelExtraY)+"h"+s;Ya.ensureSingle(a,"path","textline").call(Zte.stroke,r.outsidetextfont.color).attr({"stroke-width":Math.min(2,r.outsidetextfont.size/8),d:l,fill:"none"})})}function $te(e,r,t){var a=t[0],n=a.cx,i=a.cy,o=a.trace,l=o.type==="funnelarea";"_hasHoverLabel"in o||(o._hasHoverLabel=!1),"_hasHoverEvent"in o||(o._hasHoverEvent=!1),e.on("mouseover",function(s){var u=r._fullLayout,f=r._fullData[o.index];if(!(r._dragging||u.hovermode===!1)){var c=f.hoverinfo;if(Array.isArray(c)&&(c=y3.castHoverinfo({hoverinfo:[Ar.castOption(c,s.pts)],_module:o._module},u,0)),c==="all"&&(c="label+text+value+percent+name"),f.hovertemplate||c!=="none"&&c!=="skip"&&c){var v=s.rInscribed||0,d=n+s.pxmid[0]*(1-v),p=i+s.pxmid[1]*(1-v),y=u.separators,m=[];if(c&&c.indexOf("label")!==-1&&m.push(s.label),s.text=Ar.castOption(f.hovertext||f.text,s.pts),c&&c.indexOf("text")!==-1){var x=s.text;Ya.isValidTextValue(x)&&m.push(x)}s.value=s.v,s.valueLabel=Ar.formatPieValue(s.v,y),c&&c.indexOf("value")!==-1&&m.push(s.valueLabel),s.percent=s.v/a.vTotal,s.percentLabel=Ar.formatPiePercent(s.percent,y),c&&c.indexOf("percent")!==-1&&m.push(s.percentLabel);var w=f.hoverlabel,_=w.font,b=[];y3.loneHover({trace:o,x0:d-v*a.r,x1:d+v*a.r,y:p,_x0:l?n+s.TL[0]:d-v*a.r,_x1:l?n+s.TR[0]:d+v*a.r,_y0:l?i+s.TL[1]:p-v*a.r,_y1:l?i+s.BL[1]:p+v*a.r,text:m.join("
"),name:f.hovertemplate||c.indexOf("name")!==-1?f.name:void 0,idealAlign:s.pxmid[0]<0?"left":"right",color:Ar.castOption(w.bgcolor,s.pts)||s.color,borderColor:Ar.castOption(w.bordercolor,s.pts),fontFamily:Ar.castOption(_.family,s.pts),fontSize:Ar.castOption(_.size,s.pts),fontColor:Ar.castOption(_.color,s.pts),nameLength:Ar.castOption(w.namelength,s.pts),textAlign:Ar.castOption(w.align,s.pts),hovertemplate:Ar.castOption(f.hovertemplate,s.pts),hovertemplateLabels:s,eventData:[m3(s,f)]},{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:r,inOut_bbox:b}),s.bbox=b[0],o._hasHoverLabel=!0}o._hasHoverEvent=!0,r.emit("plotly_hover",{points:[m3(s,f)],event:Gn.event})}}),e.on("mouseout",function(s){var u=r._fullLayout,f=r._fullData[o.index],c=Gn.select(this).datum();o._hasHoverEvent&&(s.originalEvent=Gn.event,r.emit("plotly_unhover",{points:[m3(c,f)],event:Gn.event}),o._hasHoverEvent=!1),o._hasHoverLabel&&(y3.loneUnhover(u._hoverlayer.node()),o._hasHoverLabel=!1)}),e.on("click",function(s){var u=r._fullLayout,f=r._fullData[o.index];r._dragging||u.hovermode===!1||(r._hoverdata=[m3(s,f)],y3.click(r,Gn.event))})}function SLe(e,r,t){var a=Ar.castOption(e.outsidetextfont.color,r.pts)||Ar.castOption(e.textfont.color,r.pts)||t.color,n=Ar.castOption(e.outsidetextfont.family,r.pts)||Ar.castOption(e.textfont.family,r.pts)||t.family,i=Ar.castOption(e.outsidetextfont.size,r.pts)||Ar.castOption(e.textfont.size,r.pts)||t.size,o=Ar.castOption(e.outsidetextfont.weight,r.pts)||Ar.castOption(e.textfont.weight,r.pts)||t.weight,l=Ar.castOption(e.outsidetextfont.style,r.pts)||Ar.castOption(e.textfont.style,r.pts)||t.style,s=Ar.castOption(e.outsidetextfont.variant,r.pts)||Ar.castOption(e.textfont.variant,r.pts)||t.variant,u=Ar.castOption(e.outsidetextfont.textcase,r.pts)||Ar.castOption(e.textfont.textcase,r.pts)||t.textcase,f=Ar.castOption(e.outsidetextfont.lineposition,r.pts)||Ar.castOption(e.textfont.lineposition,r.pts)||t.lineposition,c=Ar.castOption(e.outsidetextfont.shadow,r.pts)||Ar.castOption(e.textfont.shadow,r.pts)||t.shadow;return{color:a,family:n,size:i,weight:o,style:l,variant:s,textcase:u,lineposition:f,shadow:c}}function Kte(e,r,t){var a=Ar.castOption(e.insidetextfont.color,r.pts);!a&&e._input.textfont&&(a=Ar.castOption(e._input.textfont.color,r.pts));var n=Ar.castOption(e.insidetextfont.family,r.pts)||Ar.castOption(e.textfont.family,r.pts)||t.family,i=Ar.castOption(e.insidetextfont.size,r.pts)||Ar.castOption(e.textfont.size,r.pts)||t.size,o=Ar.castOption(e.insidetextfont.weight,r.pts)||Ar.castOption(e.textfont.weight,r.pts)||t.weight,l=Ar.castOption(e.insidetextfont.style,r.pts)||Ar.castOption(e.textfont.style,r.pts)||t.style,s=Ar.castOption(e.insidetextfont.variant,r.pts)||Ar.castOption(e.textfont.variant,r.pts)||t.variant,u=Ar.castOption(e.insidetextfont.textcase,r.pts)||Ar.castOption(e.textfont.textcase,r.pts)||t.textcase,f=Ar.castOption(e.insidetextfont.lineposition,r.pts)||Ar.castOption(e.textfont.lineposition,r.pts)||t.lineposition,c=Ar.castOption(e.insidetextfont.shadow,r.pts)||Ar.castOption(e.textfont.shadow,r.pts)||t.shadow;return{color:a||Zte.contrast(r.color),family:n,size:i,weight:o,style:l,variant:s,textcase:u,lineposition:f,shadow:c}}function Qte(e,r){for(var t,a,n=0;n=-4;w-=2)x(Math.PI*w,"tan");for(w=4;w>=-4;w-=2)x(Math.PI*(w+1),"tan")}if(c||d){for(w=4;w>=-4;w-=2)x(Math.PI*(w+1.5),"rad");for(w=4;w>=-4;w-=2)x(Math.PI*(w+.5),"rad")}}if(l||p||c){var _=Math.sqrt(e.width*e.width+e.height*e.height);if(m={scale:n*a*2/_,rCenter:1-n,rotate:0},m.textPosAngle=(r.startangle+r.stopangle)/2,m.scale>=1)return m;y.push(m)}(p||d)&&(m=Yte(e,a,o,s,u),m.textPosAngle=(r.startangle+r.stopangle)/2,y.push(m)),(p||v)&&(m=Wte(e,a,o,s,u),m.textPosAngle=(r.startangle+r.stopangle)/2,y.push(m));for(var b=0,T=0,k=0;k=1)break}return y[b]}function qLe(e,r){var t=e.startangle,a=e.stopangle;return t>r&&r>a||t0?1:-1)/2,y:i/(1+t*t/(a*a)),outside:!0}}function CLe(e){var r=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/r,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}function nae(e,r){var t=1,a=1,n,i=e.trace,o={x:e.cx,y:e.cy},l={tx:0,ty:0};l.ty+=i.title.font.size,n=iae(i),i.title.position.indexOf("top")!==-1?(o.y-=(1+n)*e.r,l.ty-=e.titleBox.height):i.title.position.indexOf("bottom")!==-1&&(o.y+=(1+n)*e.r);var s=ELe(e.r,e.trace.aspectratio),u=r.w*(i.domain.x[1]-i.domain.x[0])/2;return i.title.position.indexOf("left")!==-1?(u=u+s,o.x-=(1+n)*s,l.tx+=e.titleBox.width/2):i.title.position.indexOf("center")!==-1?u*=2:i.title.position.indexOf("right")!==-1&&(u=u+s,o.x+=(1+n)*s,l.tx-=e.titleBox.width/2),t=u/e.titleBox.width,a=i8(e,r)/e.titleBox.height,{x:o.x,y:o.y,scale:Math.min(t,a),tx:l.tx,ty:l.ty}}function ELe(e,r){return e/(r===void 0?1:r)}function i8(e,r){var t=e.trace,a=r.h*(t.domain.y[1]-t.domain.y[0]);return Math.min(e.titleBox.height,a/2)}function iae(e){var r=e.pull;if(!r)return 0;var t;if(Ya.isArrayOrTypedArray(r))for(r=0,t=0;tr&&(r=e.pull[t]);return r}function DLe(e,r){var t,a,n,i,o,l,s,u,f,c,v,d,p;function y(_,b){return _.pxmid[1]-b.pxmid[1]}function m(_,b){return b.pxmid[1]-_.pxmid[1]}function x(_,b){b||(b={});var T=b.labelExtraY+(a?b.yLabelMax:b.yLabelMin),k=a?_.yLabelMin:_.yLabelMax,M=a?_.yLabelMax:_.yLabelMin,q=_.cyFinal+o(_.px0[1],_.px1[1]),E=T-k,D,P,R,z,O,B;if(E*s>0&&(_.labelExtraY=E),!!Ya.isArrayOrTypedArray(r.pull))for(P=0;P=(Ar.castOption(r.pull,R.pts)||0))&&((_.pxmid[1]-R.pxmid[1])*s>0?(z=R.cyFinal+o(R.px0[1],R.px1[1]),E=z-k-_.labelExtraY,E*s>0&&(_.labelExtraY+=E)):(M+_.labelExtraY-q)*s>0&&(D=3*l*Math.abs(P-c.indexOf(_)),O=R.cxFinal+i(R.px0[0],R.px1[0]),B=O+D-(_.cxFinal+_.pxmid[0])-_.labelExtraX,B*l>0&&(_.labelExtraX+=B)))}for(a=0;a<2;a++)for(n=a?y:m,o=a?Math.max:Math.min,s=a?1:-1,t=0;t<2;t++){for(i=t?Math.max:Math.min,l=t?1:-1,u=e[a][t],u.sort(n),f=e[1-a][t],c=f.concat(u),d=[],v=0;v1?(u=t.r,f=u/n.aspectratio):(f=t.r,u=f*n.aspectratio),u*=(1+n.baseratio)/2,s=u*f}o=Math.min(o,s/t.vTotal)}for(a=0;ar.vTotal/2?1:0,u.halfangle=Math.PI*Math.min(u.v/r.vTotal,.5),u.ring=1-a.hole,u.rInscribed=LLe(u,r))}function g3(e,r){return[e*Math.sin(r),-e*Math.cos(r)]}function lae(e,r,t){var a=e._fullLayout,n=t.trace,i=n.texttemplate,o=n.textinfo;if(!i&&o&&o!=="none"){var l=o.split("+"),s=function(b){return l.indexOf(b)!==-1},u=s("label"),f=s("text"),c=s("value"),v=s("percent"),d=a.separators,p;if(p=u?[r.label]:[],f){var y=Ar.getFirstFilled(n.text,r.pts);Vte(y)&&p.push(y)}c&&p.push(Ar.formatPieValue(r.v,d)),v&&p.push(Ar.formatPiePercent(r.v/t.vTotal,d)),r.text=p.join("
")}function m(b){return{label:b.label,value:b.v,valueLabel:Ar.formatPieValue(b.v,a.separators),percent:b.v/t.vTotal,percentLabel:Ar.formatPiePercent(b.v/t.vTotal,a.separators),color:b.color,text:b.text,customdata:Ya.castOption(n,b.i,"customdata")}}if(i){var x=Ya.castOption(n,r.i,"texttemplate");if(!x)r.text="";else{var w=m(r),_=Ar.getFirstFilled(n.text,r.pts);(Vte(_)||_==="")&&(w.text=_),r.text=Ya.texttemplateString({data:[w,n._meta],fallback:n.texttemplatefallback,labels:w,locale:e._fullLayout._d3locale,template:x})}}}function sae(e,r){var t=e.rotate*Math.PI/180,a=Math.cos(t),n=Math.sin(t),i=(r.left+r.right)/2,o=(r.top+r.bottom)/2;e.textX=i*a-o*n,e.textY=i*n+o*a,e.noCenter=!0}uae.exports={plot:MLe,formatSliceLabel:lae,transformInsideText:eae,determineInsideTextFont:Kte,positionTitleOutside:nae,prerenderTitles:Qte,layoutAreas:oae,attachFxHandlers:$te,computeTransform:sae}});var hae=N((FHe,vae)=>{"use strict";var cae=Sr(),FLe=W1(),NLe=S0().resizeText;vae.exports=function(r){var t=r._fullLayout._pielayer.selectAll(".trace");NLe(r,t,"pie"),t.each(function(a){var n=a[0],i=n.trace,o=cae.select(this);o.style({opacity:i.opacity}),o.selectAll("path.surface").each(function(l){cae.select(this).call(FLe,l,i,r)})})}});var pae=N(Pv=>{"use strict";var dae=ta();Pv.name="pie";Pv.plot=function(e,r,t,a){dae.plotBasePlot(Pv.name,e,r,t,a)};Pv.clean=function(e,r,t,a){dae.cleanBasePlot(Pv.name,e,r,t,a)}});var mae=N((zHe,yae)=>{"use strict";yae.exports={attributes:e8(),supplyDefaults:Pte().supplyDefaults,supplyLayoutDefaults:zte(),layoutAttributes:r8(),calc:a8().calc,crossTraceCalc:a8().crossTraceCalc,plot:fae().plot,style:hae(),styleOne:W1(),moduleType:"trace",name:"pie",basePlotModule:pae(),categories:["pie-like","pie","showLegend"],meta:{}}});var bae=N((IHe,gae)=>{"use strict";gae.exports=mae()});var Qa=N((OHe,_ae)=>{"use strict";var xae=Object.getOwnPropertySymbols,zLe=Object.prototype.hasOwnProperty,ILe=Object.prototype.propertyIsEnumerable;function OLe(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function BLe(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var r={},t=0;t<10;t++)r["_"+String.fromCharCode(t)]=t;var a=Object.getOwnPropertyNames(r).map(function(i){return r[i]});if(a.join("")!=="0123456789")return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach(function(i){n[i]=i}),Object.keys(Object.assign({},n)).join("")==="abcdefghijklmnopqrst"}catch(i){return!1}}_ae.exports=BLe()?Object.assign:function(e,r){for(var t,a=OLe(e),n,i=1;i{var x3=Qa();function wae(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}x3(wae.prototype,{instance:function(e,r){e=(e||"gregorian").toLowerCase(),r=r||"";var t=this._localCals[e+"-"+r];if(!t&&this.calendars[e]&&(t=new this.calendars[e](r),this._localCals[e+"-"+r]=t),!t)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return t},newDate:function(e,r,t,a,n){return a=(e!=null&&e.year?e.calendar():typeof a=="string"?this.instance(a,n):a)||this.instance(),a.newDate(e,r,t)},substituteDigits:function(e){return function(r){return(r+"").replace(/[0-9]/g,function(t){return e[t]})}},substituteChineseDigits:function(e,r){return function(t){for(var a="",n=0;t>0;){var i=t%10;a=(i===0?"":e[i]+r[n])+a,n++,t=Math.floor(t/10)}return a.indexOf(e[1]+r[1])===0&&(a=a.substr(1)),a||e[0]}}});function o8(e,r,t,a){if(this._calendar=e,this._year=r,this._month=t,this._day=a,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function b3(e,r){return e=""+e,"000000".substring(0,r-e.length)+e}x3(o8.prototype,{newDate:function(e,r,t){return this._calendar.newDate(e==null?this:e,r,t)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,r,t){if(!this._calendar.isValid(e,r,t))throw(Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=r,this._day=t,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,r){return this._calendar.add(this,e,r)},set:function(e,r){return this._calendar.set(this,e,r)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(Nr.local.differentCalendars||Nr.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var r=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return r===0?0:r<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+b3(Math.abs(this.year()),4)+"-"+b3(this.month(),2)+"-"+b3(this.day(),2)}});function l8(){this.shortYearCutoff="+10"}x3(l8.prototype,{_validateLevel:0,newDate:function(e,r,t){return e==null?this.today():(e.year&&(this._validate(e,r,t,Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate),t=e.day(),r=e.month(),e=e.year()),new o8(this,e,r,t))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var r=this._validate(e,this.minMonth,this.minDay,Nr.local.invalidYear||Nr.regionalOptions[""].invalidYear);return r.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Nr.local.invalidYear||Nr.regionalOptions[""].invalidYear);return(r.year()<0?"-":"")+b3(Math.abs(r.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Nr.local.invalidYear||Nr.regionalOptions[""].invalidYear),12},monthOfYear:function(e,r){var t=this._validate(e,r,this.minDay,Nr.local.invalidMonth||Nr.regionalOptions[""].invalidMonth);return(t.month()+this.monthsInYear(t)-this.firstMonth)%this.monthsInYear(t)+this.minMonth},fromMonthOfYear:function(e,r){var t=(r+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,t,this.minDay,Nr.local.invalidMonth||Nr.regionalOptions[""].invalidMonth),t},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Nr.local.invalidYear||Nr.regionalOptions[""].invalidYear);return this.leapYear(r)?366:365},dayOfYear:function(e,r,t){var a=this._validate(e,r,t,Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate);return a.toJD()-this.newDate(a.year(),this.fromMonthOfYear(a.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(a))+2)%this.daysInWeek()},extraInfo:function(e,r,t){return this._validate(e,r,t,Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate),{}},add:function(e,r,t){return this._validate(e,this.minMonth,this.minDay,Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,r,t),r,t)},_add:function(e,r,t){if(this._validateLevel++,t==="d"||t==="w"){var a=e.toJD()+r*(t==="w"?this.daysInWeek():1),n=e.calendar().fromJD(a);return this._validateLevel--,[n.year(),n.month(),n.day()]}try{var i=e.year()+(t==="y"?r:0),o=e.monthOfYear()+(t==="m"?r:0),n=e.day(),l=function(f){for(;oc-1+f.minMonth;)i++,o-=c,c=f.monthsInYear(i)};t==="y"?(e.month()!==this.fromMonthOfYear(i,o)&&(o=this.newDate(i,e.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(i)),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,o)))):t==="m"&&(l(this),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,o))));var s=[i,this.fromMonthOfYear(i,o),n];return this._validateLevel--,s}catch(u){throw this._validateLevel--,u}},_correctAdd:function(e,r,t,a){if(!this.hasYearZero&&(a==="y"||a==="m")&&(r[0]===0||e.year()>0!=r[0]>0)){var n={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[a],i=t<0?-1:1;r=this._add(e,t*n[0]+i*n[1],n[2])}return e.date(r[0],r[1],r[2])},set:function(e,r,t){this._validate(e,this.minMonth,this.minDay,Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate);var a=t==="y"?r:e.year(),n=t==="m"?r:e.month(),i=t==="d"?r:e.day();return(t==="y"||t==="m")&&(i=Math.min(i,this.daysInMonth(a,n))),e.date(a,n,i)},isValid:function(e,r,t){this._validateLevel++;var a=this.hasYearZero||e!==0;if(a){var n=this.newDate(e,r,this.minDay);a=r>=this.minMonth&&r-this.minMonth=this.minDay&&t-this.minDay13.5?13:1),u=n-(s>2.5?4716:4715);return u<=0&&u--,this.newDate(u,s,l)},toJSDate:function(e,r,t){var a=this._validate(e,r,t,Nr.local.invalidDate||Nr.regionalOptions[""].invalidDate),n=new Date(a.year(),a.month()-1,a.day());return n.setHours(0),n.setMinutes(0),n.setSeconds(0),n.setMilliseconds(0),n.setHours(n.getHours()>12?n.getHours()+2:0),n},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var Nr=Tae.exports=new wae;Nr.cdate=o8;Nr.baseCalendar=l8;Nr.calendars.gregorian=s8});var Aae=N(()=>{var u8=Qa(),Fa=en();u8(Fa.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});Fa.local=Fa.regionalOptions[""];u8(Fa.cdate.prototype,{formatDate:function(e,r){return typeof e!="string"&&(r=e,e=""),this._calendar.formatDate(e||"",this,r)}});u8(Fa.baseCalendar.prototype,{UNIX_EPOCH:Fa.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:Fa.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,r,t){if(typeof e!="string"&&(t=r,r=e,e=""),!r)return"";if(r.calendar()!==this)throw Fa.local.invalidFormat||Fa.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,t=t||{};for(var a=t.dayNamesShort||this.local.dayNamesShort,n=t.dayNames||this.local.dayNames,i=t.monthNumbers||this.local.monthNumbers,o=t.monthNamesShort||this.local.monthNamesShort,l=t.monthNames||this.local.monthNames,s=t.calculateWeek||this.local.calculateWeek,u=function(b,T){for(var k=1;_+k1},f=function(b,T,k,M){var q=""+T;if(u(b,M))for(;q.length1},w=function(R,z){var O=x(R,z),B=[2,3,O?4:2,O?4:2,10,11,20]["oyYJ@!".indexOf(R)+1],Y=new RegExp("^-?\\d{1,"+B+"}"),V=r.substring(q).match(Y);if(!V)throw(Fa.local.missingNumberAt||Fa.regionalOptions[""].missingNumberAt).replace(/\{0\}/,q);return q+=V[0].length,parseInt(V[0],10)},_=this,b=function(){if(typeof l=="function"){x("m");var R=l.call(_,r.substring(q));return q+=R.length,R}return w("m")},T=function(R,z,O,B){for(var Y=x(R,B)?O:z,V=0;V-1){v=1,d=p;for(var P=this.daysInMonth(c,v);d>P;P=this.daysInMonth(c,v))v++,d-=P}return f>-1?this.fromJD(f):this.newDate(c,v,d)},determineDate:function(e,r,t,a,n){t&&typeof t!="object"&&(n=a,a=t,t=null),typeof a!="string"&&(n=a,a="");var i=this,o=function(l){try{return i.parseDate(a,l,n)}catch(c){}l=l.toLowerCase();for(var s=(l.match(/^c/)&&t?t.newDate():null)||i.today(),u=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,f=u.exec(l);f;)s.add(parseInt(f[1],10),f[2]||"d"),f=u.exec(l);return s};return r=r?r.newDate():null,e=e==null?r:typeof e=="string"?o(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?r:i.today().add(e,"d"):i.newDate(e),e}})});var Mae=N(()=>{var Ds=en(),HLe=Qa(),f8=Ds.instance();function _3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}_3.prototype=new Ds.baseCalendar;HLe(_3.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,r){if(typeof e=="string"){var t=e.match(GLe);return t?t[0]:""}var a=this._validateYear(e),n=e.month(),i=""+this.toChineseMonth(a,n);return r&&i.length<2&&(i="0"+i),this.isIntercalaryMonth(a,n)&&(i+="i"),i},monthNames:function(e){if(typeof e=="string"){var r=e.match(VLe);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},monthNamesShort:function(e){if(typeof e=="string"){var r=e.match(YLe);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},parseMonth:function(e,r){e=this._validateYear(e);var t=parseInt(r),a;if(isNaN(t))r[0]==="\u95F0"&&(a=!0,r=r.substring(1)),r[r.length-1]==="\u6708"&&(r=r.substring(0,r.length-1)),t=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(r);else{var n=r[r.length-1];a=n==="i"||n==="I"}var i=this.toMonthIndex(e,t,a);return i},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,r){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw r.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,r,t){var a=this.intercalaryMonth(e),n=t&&r!==a;if(n||r<1||r>12)throw Ds.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return a?!t&&r<=a?i=r-1:i=r:i=r-1,i},toChineseMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e),a=t?12:11;if(r<0||r>a)throw Ds.local.invalidMonth.replace(/\{0\}/,this.local.name);var n;return t?r>13;return t},isIntercalaryMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e);return!!t&&t===r},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,r,t){var a=this._validateYear(e,Ds.local.invalidyear),n=Ps[a-Ps[0]],i=n>>9&4095,o=n>>5&15,l=n&31,s;s=f8.newDate(i,o,l),s.add(4-(s.dayOfWeek()||7),"d");var u=this.toJD(e,r,t)-s.toJD();return 1+Math.floor(u/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,r){e.year&&(r=e.month(),e=e.year()),e=this._validateYear(e);var t=Rs[e-Rs[0]],a=t>>13,n=a?12:11;if(r>n)throw Ds.local.invalidMonth.replace(/\{0\}/,this.local.name);var i=t&1<<12-r?30:29;return i},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,i,t,Ds.local.invalidDate);e=this._validateYear(a.year()),r=a.month(),t=a.day();var n=this.isIntercalaryMonth(e,r),i=this.toChineseMonth(e,r),o=jLe(e,i,t,n);return f8.toJD(o.year,o.month,o.day)},fromJD:function(e){var r=f8.fromJD(e),t=WLe(r.year(),r.month(),r.day()),a=this.toMonthIndex(t.year,t.month,t.isIntercalary);return this.newDate(t.year,a,t.day)},fromString:function(e){var r=e.match(ULe),t=this._validateYear(+r[1]),a=+r[2],n=!!r[3],i=this.toMonthIndex(t,a,n),o=+r[4];return this.newDate(t,i,o)},add:function(e,r,t){var a=e.year(),n=e.month(),i=this.isIntercalaryMonth(a,n),o=this.toChineseMonth(a,n),l=Object.getPrototypeOf(_3.prototype).add.call(this,e,r,t);if(t==="y"){var s=l.year(),u=l.month(),f=this.isIntercalaryMonth(s,o),c=i&&f?this.toMonthIndex(s,o,!0):this.toMonthIndex(s,o,!1);c!==u&&l.month(c)}return l}});var ULe=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,GLe=/^\d?\d[iI]?/m,VLe=/^闰?十?[一二三四五六七八九]?月/m,YLe=/^闰?十?[一二三四五六七八九]?/m;Ds.calendars.chinese=_3;var Rs=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],Ps=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function WLe(e,r,t,a){var n,i;if(typeof e=="object")n=e,i=r||{};else{var o=typeof e=="number"&&e>=1888&&e<=2111;if(!o)throw new Error("Solar year outside range 1888-2111");var l=typeof r=="number"&&r>=1&&r<=12;if(!l)throw new Error("Solar month outside range 1 - 12");var s=typeof t=="number"&&t>=1&&t<=31;if(!s)throw new Error("Solar day outside range 1 - 31");n={year:e,month:r,day:t},i=a||{}}var u=Ps[n.year-Ps[0]],f=n.year<<9|n.month<<5|n.day;i.year=f>=u?n.year:n.year-1,u=Ps[i.year-Ps[0]];var c=u>>9&4095,v=u>>5&15,d=u&31,p,y=new Date(c,v-1,d),m=new Date(n.year,n.month-1,n.day);p=Math.round((m-y)/(24*3600*1e3));var x=Rs[i.year-Rs[0]],w;for(w=0;w<13;w++){var _=x&1<<12-w?30:29;if(p<_)break;p-=_}var b=x>>13;return!b||w=1888&&e<=2111;if(!l)throw new Error("Lunar year outside range 1888-2111");var s=typeof r=="number"&&r>=1&&r<=12;if(!s)throw new Error("Lunar month outside range 1 - 12");var u=typeof t=="number"&&t>=1&&t<=30;if(!u)throw new Error("Lunar day outside range 1 - 30");var f;typeof a=="object"?(f=!1,i=a):(f=!!a,i=n||{}),o={year:e,month:r,day:t,isIntercalary:f}}var c;c=o.day-1;var v=Rs[o.year-Rs[0]],d=v>>13,p;d&&(o.month>d||o.isIntercalary)?p=o.month:p=o.month-1;for(var y=0;y>9&4095,_=x>>5&15,b=x&31,T=new Date(w,_-1,b+c);return i.year=T.getFullYear(),i.month=1+T.getMonth(),i.day=T.getDate(),i}});var kae=N(()=>{var sf=en(),ZLe=Qa();function c8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}c8.prototype=new sf.baseCalendar;ZLe(c8.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,sf.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,sf.local.invalidYear||sf.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,sf.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,sf.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});sf.calendars.coptic=c8});var Sae=N(()=>{var Dl=en(),XLe=Qa();function v8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}v8.prototype=new Dl.baseCalendar;XLe(v8.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Dl.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Dl.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Dl.local.invalidYear),400},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/8)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Dl.local.invalidMonth);return this.daysPerMonth[t.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Dl.local.invalidDate);return(a.day()+1)%8},weekDay:function(e,r,t){var a=this.dayOfWeek(e,r,t);return a>=2&&a<=6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Dl.local.invalidDate);return{century:JLe[Math.floor((a.year()-1)/100)+1]||""}},toJD:function(e,r,t){var a=this._validate(e,r,t,Dl.local.invalidDate);return e=a.year()+(a.year()<0?1:0),r=a.month(),t=a.day(),t+(r>1?16:0)+(r>2?(r-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var r=Math.floor(e/400)+1;e-=(r-1)*400,e+=e>15?16:0;var t=Math.floor(e/32)+1,a=e-(t-1)*32+1;return this.newDate(r<=0?r-1:r,t,a)}});var JLe={20:"Fruitbat",21:"Anchovy"};Dl.calendars.discworld=v8});var qae=N(()=>{var uf=en(),$Le=Qa();function h8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}h8.prototype=new uf.baseCalendar;$Le(h8.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,uf.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,uf.local.invalidYear||uf.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,uf.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,uf.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});uf.calendars.ethiopian=h8});var Lae=N(()=>{var Fs=en(),KLe=Qa();function d8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}d8.prototype=new Fs.baseCalendar;KLe(d8.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Fs.local.invalidYear);return this._leapYear(r.year())},_leapYear:function(e){return e=e<0?e+1:e,w3(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Fs.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Fs.local.invalidYear);return e=r.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,Fs.local.invalidMonth),r===12&&this.leapYear(e)||r===8&&w3(this.daysInYear(e),10)===5?30:r===9&&w3(this.daysInYear(e),10)===3?29:this.daysPerMonth[r-1]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Fs.local.invalidDate);return{yearType:(this.leapYear(a)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(a)%10-3]}},toJD:function(e,r,t){var a=this._validate(e,r,t,Fs.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=e<=0?e+1:e,i=this.jdEpoch+this._delay1(n)+this._delay2(n)+t+1;if(r<7){for(var o=7;o<=this.monthsInYear(e);o++)i+=this.daysInMonth(e,o);for(var o=1;o=this.toJD(r===-1?1:r+1,7,1);)r++;for(var t=ethis.toJD(r,t,this.daysInMonth(r,t));)t++;var a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});function w3(e,r){return e-r*Math.floor(e/r)}Fs.calendars.hebrew=d8});var Cae=N(()=>{var Pd=en(),QLe=Qa();function p8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}p8.prototype=new Pd.baseCalendar;QLe(p8.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Pd.local.invalidYear);return(r.year()*11+14)%30<11},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Pd.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,Pd.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e=e<=0?e+1:e,t+Math.ceil(29.5*(r-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=Math.floor((30*(e-this.jdEpoch)+10646)/10631);r=r<=0?r-1:r;var t=Math.min(12,Math.ceil((e-29-this.toJD(r,1,1))/29.5)+1),a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});Pd.calendars.islamic=p8});var Eae=N(()=>{var Fd=en(),eCe=Qa();function y8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}y8.prototype=new Fd.baseCalendar;eCe(y8.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Fd.local.invalidYear),t=r.year()<0?r.year()+1:r.year();return t%4===0},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(4-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Fd.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,Fd.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e<0&&e++,r<=2&&(e--,r+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(r+1))+t-1524.5},fromJD:function(e){var r=Math.floor(e+.5),t=r+1524,a=Math.floor((t-122.1)/365.25),n=Math.floor(365.25*a),i=Math.floor((t-n)/30.6001),o=i-Math.floor(i<14?1:13),l=a-Math.floor(o>2?4716:4715),s=t-n-Math.floor(30.6001*i);return l<=0&&l--,this.newDate(l,o,s)}});Fd.calendars.julian=y8});var Rae=N(()=>{var Gi=en(),rCe=Qa();function g8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}g8.prototype=new Gi.baseCalendar;rCe(g8.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Gi.local.invalidYear),!1},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Gi.local.invalidYear);e=r.year();var t=Math.floor(e/400);e=e%400,e+=e<0?400:0;var a=Math.floor(e/20);return t+"."+a+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var r=0,t=0;t19||t>0&&a<0)throw"Invalid Mayan year";r=r*20+a}return r},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Gi.local.invalidYear),18},weekOfYear:function(e,r,t){return this._validate(e,r,t,Gi.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Gi.local.invalidYear),360},daysInMonth:function(e,r){return this._validate(e,r,this.minDay,Gi.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Gi.local.invalidDate);return a.day()},weekDay:function(e,r,t){return this._validate(e,r,t,Gi.local.invalidDate),!0},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Gi.local.invalidDate),n=a.toJD(),i=this._toHaab(n),o=this._toTzolkin(n);return{haabMonthName:this.local.haabMonths[i[0]-1],haabMonth:i[0],haabDay:i[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(e){e-=this.jdEpoch;var r=m8(e+8+17*20,365);return[Math.floor(r/20)+1,m8(r,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[Dae(e+20,20),Dae(e+4,13)]},toJD:function(e,r,t){var a=this._validate(e,r,t,Gi.local.invalidDate);return a.day()+a.month()*20+a.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var r=Math.floor(e/360);e=e%360,e+=e<0?360:0;var t=Math.floor(e/20),a=e%20;return this.newDate(r,t,a)}});function m8(e,r){return e-r*Math.floor(e/r)}function Dae(e,r){return m8(e-1,r)+1}Gi.calendars.mayan=g8});var Fae=N(()=>{var ff=en(),tCe=Qa();function b8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}b8.prototype=new ff.baseCalendar;var Pae=ff.instance("gregorian");tCe(b8.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,ff.local.invalidYear||ff.regionalOptions[""].invalidYear);return Pae.leapYear(r.year()+(r.year()<1?1:0)+1469)},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(1-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,ff.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,ff.local.invalidMonth),n=a.year();n<0&&n++;for(var i=a.day(),o=1;o=this.toJD(r+1,1,1);)r++;for(var t=e-Math.floor(this.toJD(r,1,1)+.5)+1,a=1;t>this.daysInMonth(r,a);)t-=this.daysInMonth(r,a),a++;return this.newDate(r,a,t)}});ff.calendars.nanakshahi=b8});var Nae=N(()=>{var cf=en(),aCe=Qa();function x8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}x8.prototype=new cf.baseCalendar;aCe(x8.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,cf.local.invalidYear);if(e=r.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var t=0,a=this.minMonth;a<=12;a++)t+=this.NEPALI_CALENDAR_DATA[e][a];return t},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,cf.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[r-1]:this.NEPALI_CALENDAR_DATA[e][r]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},toJD:function(e,r,t){var a=this._validate(e,r,t,cf.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=cf.instance(),i=0,o=r,l=e;this._createMissingCalendarData(e);var s=e-(o>9||o===9&&t>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(r!==9&&(i=t,o--);o!==9;)o<=0&&(o=12,l--),i+=this.NEPALI_CALENDAR_DATA[l][o],o--;return r===9?(i+=t-this.NEPALI_CALENDAR_DATA[l][0],i<0&&(i+=n.daysInYear(s))):i+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],n.newDate(s,1,1).add(i,"d").toJD()},fromJD:function(e){var r=cf.instance(),t=r.fromJD(e),a=t.year(),n=t.dayOfYear(),i=a+56;this._createMissingCalendarData(i);for(var o=9,l=this.NEPALI_CALENDAR_DATA[i][0],s=this.NEPALI_CALENDAR_DATA[i][o]-l+1;n>s;)o++,o>12&&(o=1,i++),s+=this.NEPALI_CALENDAR_DATA[i][o];var u=this.NEPALI_CALENDAR_DATA[i][o]-(s-n);return this.newDate(i,o,u)},_createMissingCalendarData:function(e){var r=this.daysPerMonth.slice(0);r.unshift(17);for(var t=e-1;t{var Fv=en(),nCe=Qa();function A3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function T3(e){var r=e-475;e<0&&r++;var t=.242197,a=t*r,n=t*(r+1),i=a-Math.floor(a),o=n-Math.floor(n);return i>o}A3.prototype=new Fv.baseCalendar;nCe(A3.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Fv.local.invalidYear);return T3(r.year())},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-((a.dayOfWeek()+1)%7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Fv.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,Fv.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=0;if(e>0)for(var i=1;i0?e-1:e)*365+n+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=475+(e-this.toJD(475,1,1))/365.242197,t=Math.floor(r);t<=0&&t--,e>this.toJD(t,12,T3(t)?30:29)&&(t++,t===0&&t++);var a=e-this.toJD(t,1,1)+1,n=a<=186?Math.ceil(a/31):Math.ceil((a-6)/30),i=e-this.toJD(t,n,1)+1;return this.newDate(t,n,i)}});Fv.calendars.persian=A3;Fv.calendars.jalali=A3});var Iae=N(()=>{var vf=en(),iCe=Qa(),M3=vf.instance();function _8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}_8.prototype=new vf.baseCalendar;iCe(_8.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,vf.local.invalidYear),t=this._t2gYear(r.year());return M3.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,vf.local.invalidYear),n=this._t2gYear(a.year());return M3.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,vf.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,vf.local.invalidDate),n=this._t2gYear(a.year());return M3.toJD(n,a.month(),a.day())},fromJD:function(e){var r=M3.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});vf.calendars.taiwan=_8});var Oae=N(()=>{var hf=en(),oCe=Qa(),k3=hf.instance();function w8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}w8.prototype=new hf.baseCalendar;oCe(w8.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,hf.local.invalidYear),t=this._t2gYear(r.year());return k3.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,hf.local.invalidYear),n=this._t2gYear(a.year());return k3.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,hf.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,hf.local.invalidDate),n=this._t2gYear(a.year());return k3.toJD(n,a.month(),a.day())},fromJD:function(e){var r=k3.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});hf.calendars.thai=w8});var Bae=N(()=>{var df=en(),lCe=Qa();function T8(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}T8.prototype=new df.baseCalendar;lCe(T8.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,df.local.invalidYear);return this.daysInYear(r.year())===355},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var r=0,t=1;t<=12;t++)r+=this.daysInMonth(e,t);return r},daysInMonth:function(e,r){for(var t=this._validate(e,r,this.minDay,df.local.invalidMonth),a=t.toJD()-24e5+.5,n=0,i=0;ia)return Ns[n]-Ns[n-1];n++}return 30},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,df.local.invalidDate),n=12*(a.year()-1)+a.month()-15292,i=a.day()+Ns[n-1]-1;return i+24e5-.5},fromJD:function(e){for(var r=e-24e5+.5,t=0,a=0;ar);a++)t++;var n=t+15292,i=Math.floor((n-1)/12),o=i+1,l=n-12*i,s=r-Ns[t-1]+1;return this.newDate(o,l,s)},isValid:function(e,r,t){var a=df.baseCalendar.prototype.isValid.apply(this,arguments);return a&&(e=e.year!=null?e.year:e,a=e>=1276&&e<=1500),a},_validate:function(e,r,t,a){var n=df.baseCalendar.prototype._validate.apply(this,arguments);if(n.year<1276||n.year>1500)throw a.replace(/\{0\}/,this.local.name);return n}});df.calendars.ummalqura=T8;var Ns=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var Uae=N((mUe,Hae)=>{"use strict";Hae.exports=en();Aae();Mae();kae();Sae();qae();Lae();Cae();Eae();Rae();Fae();Nae();zae();Iae();Oae();Bae()});var Xae=N((gUe,Zae)=>{"use strict";var Vae=Uae(),Nd=Le(),Yae=It(),sCe=Yae.EPOCHJD,uCe=Yae.ONEDAY,k8={valType:"enumerated",values:Nd.sortObjectKeys(Vae.calendars),editType:"calc",dflt:"gregorian"},Wae=function(e,r,t,a){var n={};return n[t]=k8,Nd.coerce(e,r,n,t,a)},fCe=function(e,r,t,a){for(var n=0;n{"use strict";Jae.exports=Xae()});var yCe=N((xUe,Qae)=>{var Kae=jU();Kae.register([JG(),zV(),tW(),TW(),zW(),Oj(),Qj(),HZ(),yX(),qte(),bae(),$ae()]);Qae.exports=Kae});return yCe();})(); /*! Bundled license information: native-promise-only/lib/npo.src.js: diff --git a/dist/plotly-finance.js b/dist/plotly-finance.js index 71ed0e0c79a..eed4cfc1919 100644 --- a/dist/plotly-finance.js +++ b/dist/plotly-finance.js @@ -1,5 +1,5 @@ /** -* plotly.js (finance) v3.3.0 +* plotly.js (finance) v3.3.1 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -59,7 +59,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.3.0"; + exports.version = "3.3.1"; } }); @@ -8767,7 +8767,7 @@ var Plotly = (() => { var isArrayOrTypedArray = require_array().isArrayOrTypedArray; module.exports = function nestedProperty(container, propStr) { if (isNumeric(propStr)) propStr = String(propStr); - else if (typeof propStr !== "string" || propStr.substr(propStr.length - 4) === "[-1]") { + else if (typeof propStr !== "string" || propStr.slice(-4) === "[-1]") { throw "bad property string"; } var propParts = propStr.split("."); @@ -8786,7 +8786,7 @@ var Plotly = (() => { if (indexed[1]) propParts[j] = indexed[1]; else if (j === 0) propParts.splice(0, 1); else throw "bad property string"; - indices = indexed[2].substr(1, indexed[2].length - 2).split("]["); + indices = indexed[2].slice(1, -1).split("]["); for (i = 0; i < indices.length; i++) { j++; propParts.splice(j, 0, Number(indices[i])); @@ -10864,11 +10864,11 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { key = keys[i]; val = container[key]; - if (key.substr(key.length - 5) === "color") { + if (key.slice(-5) === "color") { if (Array.isArray(val)) { for (j = 0; j < val.length; j++) val[j] = cleanOne(val[j]); } else container[key] = cleanOne(val); - } else if (key.substr(key.length - 10) === "colorscale" && Array.isArray(val)) { + } else if (key.slice(-10) === "colorscale" && Array.isArray(val)) { for (j = 0; j < val.length; j++) { if (Array.isArray(val[j])) val[j][1] = cleanOne(val[j][1]); } @@ -10883,7 +10883,7 @@ var Plotly = (() => { function cleanOne(val) { if (isNumeric(val) || typeof val !== "string") return val; var valTrim = val.trim(); - if (valTrim.substr(0, 3) !== "rgb") return val; + if (valTrim.slice(0, 3) !== "rgb") return val; var match = valTrim.match(/^rgba?\s*\(([^()]*)\)$/); if (!match) return val; var parts = match[1].trim().split(/\s*[\s,]\s*/); @@ -10977,7 +10977,7 @@ var Plotly = (() => { for (var i = 0; i < values.length; i++) { var k = String(values[i]); if (k.charAt(0) === "/" && k.charAt(k.length - 1) === "/") { - var regex = new RegExp(k.substr(1, k.length - 2)); + var regex = new RegExp(k.slice(1, -1)); if (regex.test(v)) return true; } else if (v === values[i]) return true; } @@ -10985,9 +10985,13 @@ var Plotly = (() => { } }, boolean: { - coerceFunction: function(v, propOut, dflt) { - if (v === true || v === false) propOut.set(v); - else propOut.set(dflt); + coerceFunction: function(v, propOut, dflt, opts) { + const isBoolean = (value) => value === true || value === false; + if (isBoolean(v) || opts.arrayOk && Array.isArray(v) && v.length > 0 && v.every(isBoolean)) { + propOut.set(v); + } else { + propOut.set(dflt); + } } }, number: { @@ -11054,11 +11058,12 @@ var Plotly = (() => { subplotid: { coerceFunction: function(v, propOut, dflt, opts) { var regex = opts.regex || counterRegex(dflt); - if (typeof v === "string" && regex.test(v)) { + const isSubplotId = (value) => typeof value === "string" && regex.test(value); + if (isSubplotId(v) || opts.arrayOk && isArrayOrTypedArray(v) && v.length > 0 && v.every(isSubplotId)) { propOut.set(v); - return; + } else { + propOut.set(dflt); } - propOut.set(dflt); }, validateFunction: function(v, opts) { var dflt = opts.dflt; @@ -13764,9 +13769,9 @@ var Plotly = (() => { var require_maplibre_gl = __commonJS({ "node_modules/maplibre-gl/dist/maplibre-gl.css"() { (function() { - if (!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")) { + if (!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")) { var e = document.createElement("style"); - e.id = "ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe"; + e.id = "696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97"; e.textContent = `.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`; document.head.appendChild(e); } @@ -14089,10 +14094,10 @@ var Plotly = (() => { var isWorld = isWorldCalendar(calendar); var s0 = s.charAt(0); if (isWorld && (s0 === "G" || s0 === "g")) { - s = s.substr(1); + s = s.slice(1); calendar = ""; } - var isChinese = isWorld && calendar.substr(0, 7) === "chinese"; + var isChinese = isWorld && calendar.slice(0, 7) === "chinese"; var match = s.match(isChinese ? DATETIME_REGEXP_CN : DATETIME_REGEXP); if (!match) return BADNUM; var y = match[1]; @@ -14136,7 +14141,7 @@ var Plotly = (() => { return exports.dateTime2ms(s, calendar) !== BADNUM; }; function lpad(val, digits) { - return String(val + Math.pow(10, digits)).substr(1); + return String(val + Math.pow(10, digits)).slice(1); } var NINETYDAYS = 90 * ONEDAY; var THREEHOURS = 3 * ONEHOUR; @@ -14156,7 +14161,7 @@ var Plotly = (() => { dateStr = utcFormat("G%Y-%m-%d")(new Date(msRounded)); } if (dateStr.charAt(0) === "-") { - while (dateStr.length < 11) dateStr = "-0" + dateStr.substr(1); + while (dateStr.length < 11) dateStr = "-0" + dateStr.slice(1); } else { while (dateStr.length < 10) dateStr = "0" + dateStr; } @@ -14228,7 +14233,7 @@ var Plotly = (() => { function modDateFormat(fmt, x, formatter, calendar) { fmt = fmt.replace(fracMatch, function(match) { var digits = Math.min(+match.charAt(1) || 6, 6); - var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).substr(2).replace(/0+$/, "") || "0"; + var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).slice(2).replace(/0+$/, "") || "0"; return fracSecs; }); var d = new Date(Math.floor(x + 0.05)); @@ -14251,7 +14256,7 @@ var Plotly = (() => { if (tr !== "M") { if (!isNumeric(tr)) tr = 0; var sec = Math.min(mod(x / ONESEC, 60), MAXSECONDS[tr]); - var secStr = (100 + sec).toFixed(tr).substr(1); + var secStr = (100 + sec).toFixed(tr).slice(1); if (tr > 0) { secStr = secStr.replace(/0+$/, "").replace(/[\.]$/, ""); } @@ -14965,8 +14970,8 @@ var Plotly = (() => { if (part.indexOf("Safari") !== -1) { for (var k = i - 1; k > -1; k--) { var prevPart = allParts[k]; - if (prevPart.substr(0, 8) === "Version/") { - var v = prevPart.substr(8).split(".")[0]; + if (prevPart.slice(0, 8) === "Version/") { + var v = prevPart.slice(8).split(".")[0]; if (isNumeric(v)) v = +v; if (v >= 13) return true; } @@ -15433,7 +15438,7 @@ var Plotly = (() => { return finalStep && finalStep(arg); }; lib.stripTrailingSlash = function(str) { - if (str.substr(-1) === "/") return str.substr(0, str.length - 1); + if (str.slice(-1) === "/") return str.slice(0, -1); return str; }; lib.noneOrAll = function(containerIn, containerOut, attrList) { @@ -15594,7 +15599,7 @@ var Plotly = (() => { } lib.minExtend = minExtend; lib.titleCase = function(s) { - return s.charAt(0).toUpperCase() + s.substr(1); + return s.charAt(0).toUpperCase() + s.slice(1); }; lib.containsAny = function(s, fragments) { for (var i = 0; i < fragments.length; i++) { @@ -17106,7 +17111,7 @@ var Plotly = (() => { if (name.charAt(lastChar) !== "s") { Lib.warn("bad argument to arrayDefaultKey: " + name); } - return name.substr(0, name.length - 1) + "defaults"; + return name.slice(0, -1) + "defaults"; } exports.arrayDefaultKey = arrayDefaultKey; exports.arrayEditor = function(parentIn, containerStr, itemOut) { @@ -17231,13 +17236,13 @@ var Plotly = (() => { var constants = require_constants2(); exports.id2name = function id2name(id) { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; - var axNum = id.split(" ")[0].substr(1); + var axNum = id.split(" ")[0].slice(1); if (axNum === "1") axNum = ""; return id.charAt(0) + "axis" + axNum; }; exports.name2id = function name2id(name) { if (!name.match(constants.AX_NAME_PATTERN)) return; - var axNum = name.substr(5); + var axNum = name.slice(5); if (axNum === "1") axNum = ""; return name.charAt(0) + axNum; }; @@ -17246,7 +17251,7 @@ var Plotly = (() => { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; if (axLetter && id.charAt(0) !== axLetter) return; if (domainTest && !domainId) return; - var axNum = id.split(" ")[0].substr(1).replace(/^0+/, ""); + var axNum = id.split(" ")[0].slice(1).replace(/^0+/, ""); if (axNum === "1") axNum = ""; return id.charAt(0) + axNum + (domainTest && domainId ? " domain" : ""); }; @@ -17258,7 +17263,7 @@ var Plotly = (() => { var i; for (i = 0; i < idList.length; i++) { var idi = idList[i]; - out[i] = fullLayout[idi.charAt(0) + "axis" + idi.substr(1)]; + out[i] = fullLayout[idi.charAt(0) + "axis" + idi.slice(1)]; } if (!only2d) { var sceneIds3D = fullLayout._subplots.gl3d || []; @@ -17289,7 +17294,7 @@ var Plotly = (() => { var ax = null; if (Registry.traceIs(fullTrace, "gl3d")) { var scene = fullTrace.scene; - if (scene.substr(0, 5) === "scene") { + if (scene.slice(0, 5) === "scene") { ax = fullLayout[scene][type + "axis"]; } } else { @@ -17301,7 +17306,7 @@ var Plotly = (() => { var letter1 = id1.charAt(0); var letter2 = id2.charAt(0); if (letter1 !== letter2) return letter1 > letter2 ? 1 : -1; - return +(id1.substr(1) || 1) - +(id2.substr(1) || 1); + return +(id1.slice(1) || 1) - +(id2.slice(1) || 1); }; exports.ref2id = function(ar) { return /^[xyz]/.test(ar) ? ar.split(" ")[0] : false; @@ -18534,7 +18539,12 @@ var Plotly = (() => { _module.attributes.showlegend ? _module.attributes : plots.attributes, "showlegend" ); - coerce("legend"); + Lib.coerce( + traceIn, + traceOut, + _module.attributes.legend ? _module.attributes : plots.attributes, + "legend" + ); coerce("legendwidth"); coerce("legendgroup"); coerce("legendgrouptitle.text"); @@ -18669,7 +18679,7 @@ var Plotly = (() => { Lib.coerce(layoutIn, layoutOut, scatterAttrs, "scattermode"); }; function getComputedSize(attr) { - return typeof attr === "string" && attr.substr(attr.length - 2) === "px" && parseFloat(attr); + return typeof attr === "string" && attr.slice(-2) === "px" && parseFloat(attr); } plots.plotAutoSize = function plotAutoSize(gd, layout, fullLayout) { var context = gd._context || {}; @@ -19109,7 +19119,7 @@ var Plotly = (() => { return; } if (mode === "keepdata") { - if (v.substr(v.length - 3) === "src") { + if (v.slice(-3) === "src") { return; } } else if (mode === "keepstream") { @@ -20341,9 +20351,9 @@ var Plotly = (() => { newParts.pop(); } if (len > eLen) { - newParts.push(p.substr(0, pLen2 - eLen) + ellipsis); + newParts.push(p.slice(0, Math.max(0, pLen2 - eLen)) + ellipsis); } else { - newParts.push(p.substr(0, pLen2)); + newParts.push(p.slice(0, pLen2)); } break; } @@ -20368,7 +20378,7 @@ var Plotly = (() => { var outChar; if (innerMatch.charAt(0) === "#") { outChar = fromCodePoint( - innerMatch.charAt(1) === "x" ? parseInt(innerMatch.substr(2), 16) : parseInt(innerMatch.substr(1), 10) + innerMatch.charAt(1) === "x" ? parseInt(innerMatch.slice(2), 16) : parseInt(innerMatch.slice(1), 10) ); } else outChar = entityToUnicode[innerMatch]; return outChar || fullMatch; @@ -22000,7 +22010,7 @@ var Plotly = (() => { return dtickDflt; } var prefix = dtick.charAt(0); - var dtickNum = dtick.substr(1); + var dtickNum = dtick.slice(1); dtickNum = isNumeric(dtickNum) ? Number(dtickNum) : 0; if (dtickNum <= 0 || !// "M" gives ticks every (integer) n months (isDate && prefix === "M" && dtickNum === Math.round(dtickNum) || // "L" gives ticks linearly spaced in data (not in position) every (float) f @@ -26857,7 +26867,7 @@ var Plotly = (() => { var stats = Lib.findExactDates(data, calendar); var threshold = 0.8; if (stats.exactDays > threshold) { - var numMonths = Number(dtick.substr(1)); + var numMonths = Number(dtick.slice(1)); if (stats.exactYears > threshold && numMonths % 12 === 0) { binStart = axes.tickIncrement(binStart, "M6", "reverse") + ONEDAY * 1.5; } else if (stats.exactMonths > threshold) { @@ -27509,8 +27519,8 @@ var Plotly = (() => { var tick0str = ax.l2r(tick0ms).replace(/(^-|i)/g, ""); var tick0len = tick0str.length; if (String(dtick).charAt(0) === "M") { - if (tick0len > 10 || tick0str.substr(5) !== "01-01") ax._tickround = "d"; - else ax._tickround = +dtick.substr(1) % 12 === 0 ? "y" : "m"; + if (tick0len > 10 || tick0str.slice(5) !== "01-01") ax._tickround = "d"; + else ax._tickround = +dtick.slice(1) % 12 === 0 ? "y" : "m"; } else if (dtick >= ONEDAY && tick0len <= 10 || dtick >= ONEDAY * 15) ax._tickround = "d"; else if (dtick >= ONEMIN && tick0len <= 16 || dtick >= ONEHOUR) ax._tickround = "M"; else if (dtick >= ONESEC && tick0len <= 19 || dtick >= ONEMIN) ax._tickround = "S"; @@ -27521,7 +27531,7 @@ var Plotly = (() => { } } else if (isNumeric(dtick) || dtick.charAt(0) === "L") { var rng = ax.range.map(ax.r2d || Number); - if (!isNumeric(dtick)) dtick = Number(dtick.substr(1)); + if (!isNumeric(dtick)) dtick = Number(dtick.slice(1)); ax._tickround = 2 - Math.floor(Math.log(dtick) / Math.LN10 + 0.01); var maxend = Math.max(Math.abs(rng[0]), Math.abs(rng[1])); var rangeexp = Math.floor(Math.log(maxend) / Math.LN10 + 0.01); @@ -27539,7 +27549,7 @@ var Plotly = (() => { var axSign = axrev ? -1 : 1; if (isNumeric(dtick)) return Lib.increment(x, axSign * dtick); var tType = dtick.charAt(0); - var dtSigned = axSign * Number(dtick.substr(1)); + var dtSigned = axSign * Number(dtick.slice(1)); if (tType === "M") return Lib.incrementMonth(x, dtSigned, calendar); if (tType === "L") return Math.log(Math.pow(10, x) + dtSigned) / Math.LN10; if (tType === "D") { @@ -27566,7 +27576,7 @@ var Plotly = (() => { return tmin; } var tType = dtick.charAt(0); - var dtNum = Number(dtick.substr(1)); + var dtNum = Number(dtick.slice(1)); if (tType === "M") { var cnt = 0; var t02 = tick0; @@ -27696,8 +27706,8 @@ var Plotly = (() => { var headStr; var splitIndex = dateStr.indexOf("\n"); if (splitIndex !== -1) { - headStr = dateStr.substr(splitIndex + 1); - dateStr = dateStr.substr(0, splitIndex); + headStr = dateStr.slice(splitIndex + 1); + dateStr = dateStr.slice(0, splitIndex); } if (extraPrecision) { if (headStr !== void 0 && (dateStr === "00:00:00" || dateStr === "00:00")) { @@ -27918,12 +27928,12 @@ var Plotly = (() => { if (tickRound === 0) v = String(Math.floor(v)); else if (tickRound < 0) { v = String(Math.round(v)); - v = v.substr(0, v.length + tickRound); + v = v.slice(0, Math.max(0, v.length + tickRound)); for (var i = tickRound; i < 0; i++) v += "0"; } else { v = String(v); var dp = v.indexOf(".") + 1; - if (dp) v = v.substr(0, dp + tickRound).replace(/\.?0+$/, ""); + if (dp) v = v.slice(0, dp + tickRound).replace(/\.?0+$/, ""); } v = Lib.numSeparate(v, ax._separators, separatethousands); } @@ -28018,8 +28028,8 @@ var Plotly = (() => { var allSubplots = subplotObj.cartesian.concat(subplotObj.gl2d || []); var out = ax ? axes.findSubplotsWithAxis(allSubplots, ax) : allSubplots; out.sort(function(a, b) { - var aParts = a.substr(1).split("y"); - var bParts = b.substr(1).split("y"); + var aParts = a.slice(1).split("y"); + var bParts = b.slice(1).split("y"); if (aParts[0] === bParts[0]) return +aParts[1] - +bParts[1]; return +aParts[0] - +bParts[0]; }); @@ -29994,7 +30004,7 @@ var Plotly = (() => { for (var i = 0; i < classes.length; i++) { var cls = classes[i]; if (cls.indexOf("cursor-") === 0) { - el3.attr(STASHATTR, cls.substr(7)).classed(cls, false); + el3.attr(STASHATTR, cls.slice(7)).classed(cls, false); } } if (!el3.attr(STASHATTR)) { @@ -30236,8 +30246,33 @@ var Plotly = (() => { var shapesWithLegend = (layoutOut.shapes || []).filter(function(d) { return d.showlegend; }); + function isPieWithLegendArray(trace2) { + return Registry.traceIs(trace2, "pie-like") && trace2._length != null && (Array.isArray(trace2.legend) || Array.isArray(trace2.showlegend)); + } + ; + fullData.filter(isPieWithLegendArray).forEach(function(trace2) { + if (trace2.visible) { + legendTraceCount++; + } + for (var index = 0; index < trace2._length; index++) { + var legend = (Array.isArray(trace2.legend) ? trace2.legend[index] : trace2.legend) || "legend"; + if (legend === legendId) { + const showInLegend = Array.isArray(trace2.showlegend) ? trace2.showlegend[index] : trace2.showlegend; + if (showInLegend || trace2._dfltShowLegend) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + } + if (legendId === "legend" && trace2._length > trace2.legend.length) { + for (var idx = trace2.legend.length; idx < trace2._length; idx++) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + }); var allLegendItems = fullData.concat(shapesWithLegend).filter(function(d) { - return legendId === (d.legend || "legend"); + return !isPieWithLegendArray(trace) && legendId === (d.legend || "legend"); }); for (var i = 0; i < allLegendItems.length; i++) { trace = allLegendItems[i]; @@ -30265,7 +30300,7 @@ var Plotly = (() => { layoutOut, basePlotLayoutAttributes, "showlegend", - legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) + layoutOut.showlegend || legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) ); if (showLegend === false) layoutOut[legendId] = void 0; if (showLegend === false && !containerIn.uirevision) return; @@ -30370,7 +30405,11 @@ var Plotly = (() => { } var legends = ["legend"]; for (i = 0; i < allLegendsData.length; i++) { - Lib.pushUnique(legends, allLegendsData[i].legend); + if (Array.isArray(allLegendsData[i].legend)) { + legends = legends.concat(allLegendsData[i].legend); + } else { + Lib.pushUnique(legends, allLegendsData[i].legend); + } } layoutOut._legends = []; for (i = 0; i < legends.length; i++) { @@ -30661,8 +30700,16 @@ var Plotly = (() => { var lgroup = trace.legendgroup; if (!inHover && (!trace.visible || !trace.showlegend)) continue; if (Registry.traceIs(trace, "pie-like")) { + var legendPerSlice = Array.isArray(trace.legend); + var showlegendPerSlice = Array.isArray(trace.showlegend); if (!slicesShown[lgroup]) slicesShown[lgroup] = {}; for (j = 0; j < cd.length; j++) { + if (showlegendPerSlice && trace.showlegend[cd[j].i] === false) { + continue; + } + if (legendPerSlice) { + lid = trace.legend[cd[j].i] || "legend"; + } var labelj = cd[j].label; if (!slicesShown[lgroup][labelj]) { addOneItem(lid, lgroup, { @@ -31858,7 +31905,11 @@ var Plotly = (() => { } function computeTextDimensions(g, gd, legendObj, aTitle) { var legendItem = g.data()[0][0]; - if (!legendObj._inHover && legendItem && !legendItem.trace.showlegend) { + var showlegend = legendItem && legendItem.trace.showlegend; + if (Array.isArray(showlegend)) { + showlegend = showlegend[legendItem.i] !== false; + } + if (!legendObj._inHover && legendItem && !showlegend) { g.remove(); return; } @@ -35128,7 +35179,7 @@ var Plotly = (() => { segments.forEach(function(segment) { var relevantParamIdx = paramsToUse[segment.charAt(0)].drawn; if (relevantParamIdx === void 0) return; - var params = segment.substr(1).match(constants.paramRE); + var params = segment.slice(1).match(constants.paramRE); if (!params || params.length < relevantParamIdx) return; var str = params[relevantParamIdx]; var pos = isRaw ? str : Lib.cleanNumber(str); @@ -35319,7 +35370,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (xParams[paramNumber]) { if (xSizemode === "pixel") param = x2p(xAnchor) + Number(param); else param = x2p(param); @@ -36328,7 +36379,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (paramNumber >= nParams) return param; if (xParams[paramNumber]) param = moveX(param); else if (yParams[paramNumber]) param = moveY(param); @@ -38051,12 +38102,12 @@ var Plotly = (() => { if (typeof a === "string") { aPrefix = a.match(/^[xy]*/)[0]; aLen = aPrefix.length; - a = +a.substr(aLen); + a = +a.slice(aLen); } if (typeof b === "string") { bPrefix = b.match(/^[xy]*/)[0]; bLen = bPrefix.length; - b = +b.substr(bLen); + b = +b.slice(bLen); } var c = a * b; if (!aLen && !bLen) { @@ -38068,7 +38119,7 @@ var Plotly = (() => { if (aLen === bLen) { return c; } - return (aLen > bLen ? aPrefix.substr(bLen) : bPrefix.substr(aLen)) + c; + return (aLen > bLen ? aPrefix.slice(bLen) : bPrefix.slice(aLen)) + c; } function finalRatios(group, fullLayout) { var size = fullLayout._size; @@ -38081,7 +38132,7 @@ var Plotly = (() => { if (typeof val === "string") { var prefix = val.match(/^[xy]*/)[0]; var pLen = prefix.length; - val = +val.substr(pLen); + val = +val.slice(pLen); var mult = prefix.charAt(0) === "y" ? yRatio : 1 / yRatio; for (var j = 0; j < pLen; j++) { val *= mult; @@ -43698,7 +43749,7 @@ var Plotly = (() => { } if (!arrayStr) arrayStr = rootContainers[rootContainers.indexOf(rootPart)]; if (!arrayStr) return false; - var tail = astr.substr(arrayStr.length); + var tail = astr.slice(arrayStr.length); if (!tail) return { array: arrayStr, index: "", property: "" }; match = tail.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/); if (!match) return false; @@ -44055,7 +44106,7 @@ var Plotly = (() => { for (i = 0; i < minLen; i++) { if (name1.charAt(i) !== name2.charAt(i)) break; } - var out = name1.substr(0, i); + var out = name1.slice(0, i); return out.trim(); } function cleanTextPosition(textposition) { @@ -44136,7 +44187,7 @@ var Plotly = (() => { var ATTR_TAIL_RE = /(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/; function getParent(attr) { var tail = attr.search(ATTR_TAIL_RE); - if (tail > 0) return attr.substr(0, tail); + if (tail > 0) return attr.slice(0, tail); } exports.hasParent = function(aobj, attr) { var attrParent = getParent(attr); @@ -44153,8 +44204,8 @@ var Plotly = (() => { var ax = getFromTrace(gd, trace, AX_LETTERS[j]); if (ax && ax.type !== "log") { var axAttr = ax._name; - var sceneName = ax._id.substr(1); - if (sceneName.substr(0, 5) === "scene") { + var sceneName = ax._id.slice(1); + if (sceneName.slice(0, 5) === "scene") { if (layoutUpdate[sceneName] !== void 0) continue; axAttr = sceneName + "." + axAttr; } @@ -45036,7 +45087,7 @@ var Plotly = (() => { } if (attr in aobj || helpers.hasParent(aobj, attr)) return; var extraparam; - if (attr.substr(0, 6) === "LAYOUT") { + if (attr.slice(0, 6) === "LAYOUT") { extraparam = layoutNP(gd.layout, attr.replace("LAYOUT", "")); } else { var tracei = traces[i2]; @@ -45081,7 +45132,7 @@ var Plotly = (() => { else vi = null; } redoit[ai] = vi; - if (ai.substr(0, 6) === "LAYOUT") { + if (ai.slice(0, 6) === "LAYOUT") { param = layoutNP(gd.layout, ai.replace("LAYOUT", "")); undoit[ai] = [undefinedToNull(param.get())]; param.set(Array.isArray(vi) ? vi[0] : vi); @@ -45098,7 +45149,7 @@ var Plotly = (() => { newVal = Array.isArray(vi) ? vi[i % vi.length] : vi; if (newVal === void 0) continue; var finalPart = param.parts[param.parts.length - 1]; - var prefix = ai.substr(0, ai.length - finalPart.length - 1); + var prefix = ai.slice(0, ai.length - finalPart.length - 1); var prefixDot = prefix ? prefix + "." : ""; var innerContFull = prefix ? nestedProperty(contFull, prefix).get() : contFull; valObject = PlotSchema.getTraceValObject(contFull, param.parts); @@ -45323,7 +45374,7 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { if (keys[i].indexOf("allaxes") === 0) { for (j = 0; j < axes.length; j++) { - var scene = axes[j]._id.substr(1); + var scene = axes[j]._id.slice(1); var axisAttr = scene.indexOf("scene") !== -1 ? scene + "." : ""; var newkey = keys[i].replace("allaxes", axisAttr + axes[j]._name); if (!aobj[newkey]) aobj[newkey] = aobj[keys[i]]; @@ -45631,7 +45682,7 @@ var Plotly = (() => { var match = key.match(spec.pattern); if (match) { var head = match[1] || ""; - return { head, tail: key.substr(head.length + 1), attr: spec.attr }; + return { head, tail: key.slice(head.length + 1), attr: spec.attr }; } } } @@ -45692,7 +45743,7 @@ var Plotly = (() => { } newNP.set(undefinedToNull(nestedProperty(oldFullLayout, key).get())); continue; - } else if (tail === "autorange" || tail.substr(0, 6) === "range[") { + } else if (tail === "autorange" || tail.slice(0, 6) === "range[") { var pre0 = layoutPreGUI[head + ".range[0]"]; var pre1 = layoutPreGUI[head + ".range[1]"]; var preAuto = layoutPreGUI[head + ".autorange"]; @@ -45712,7 +45763,7 @@ var Plotly = (() => { Lib.warn("unrecognized GUI edit: " + key); } delete layoutPreGUI[key]; - if (match && match.tail.substr(0, 6) === "range[") { + if (match && match.tail.slice(0, 6) === "range[") { newRangeAccepted[match.head] = 1; } } @@ -47236,7 +47287,7 @@ var Plotly = (() => { for (var i = 0; i < path.length; i++) { var p = path[i]; if (typeof p === "number") { - astr = astr.substr(0, astr.length - 1) + "[" + p + "]"; + astr = astr.slice(0, -1) + "[" + p + "]"; } else { astr += p; } @@ -49827,7 +49878,7 @@ var Plotly = (() => { prevtrace._nexttrace = trace; } } - trace._ownfill = trace.fill && (trace.fill.substr(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.substr(0, 2) === "to" && !trace._prevtrace); + trace._ownfill = trace.fill && (trace.fill.slice(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.slice(0, 2) === "to" && !trace._prevtrace); prevtraces[group] = trace; } else { trace._prevtrace = trace._nexttrace = trace._ownfill = null; @@ -50030,8 +50081,8 @@ var Plotly = (() => { fullpath = thispath; revpath = thisrevpath; } else if (ownFillDir) { - fullpath += "L" + thispath.substr(1); - revpath = thisrevpath + ("L" + revpath.substr(1)); + fullpath += "L" + thispath.slice(1); + revpath = thisrevpath + ("L" + revpath.slice(1)); } else { fullpath += "Z" + thispath; revpath = thisrevpath + "Z" + revpath; @@ -50096,7 +50147,7 @@ var Plotly = (() => { if (pt0 && pt1) { if (ownFillDir) { pt0[fillAxisIndex] = pt1[fillAxisIndex] = fillAxisZero; - transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.substr(1)).call(Drawing.singleFillStyle, gd); + transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.slice(1)).call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(null); } else { transition(ownFillEl3).attr("d", fullpath + "Z").call(Drawing.singleFillStyle, gd); @@ -50106,13 +50157,13 @@ var Plotly = (() => { trace._polygons = thisPolygons; trace._fillElement = ownFillEl3; } else if (tonext) { - if (trace.fill.substr(0, 6) === "tonext" && fullpath && prevRevpath) { + if (trace.fill.slice(0, 6) === "tonext" && fullpath && prevRevpath) { if (trace.fill === "tonext") { transition(tonext).attr("d", fullpath + "Z" + prevRevpath + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makeSelfPolygons(); trace._polygons = thisPolygons.concat(prevPolygons); } else { - transition(tonext).attr("d", fullpath + "L" + prevRevpath.substr(1) + "Z").call(Drawing.singleFillStyle, gd); + transition(tonext).attr("d", fullpath + "L" + prevRevpath.slice(1) + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(prevFillsegments); trace._polygons = thisPolygons; } @@ -51087,7 +51138,7 @@ var Plotly = (() => { }; function indexOfDay(v) { if (typeof v !== "string") return; - return dayStrToNum[v.substr(0, 3).toLowerCase()]; + return dayStrToNum[v.slice(0, 3).toLowerCase()]; } } }); @@ -51678,10 +51729,10 @@ var Plotly = (() => { if (constants.attrRegex.test(ki)) { var axLetter = ki.charAt(0); if (axLetter === "x") { - if (!xi || +ki.substr(5) < +xi.substr(5)) { + if (!xi || +ki.slice(5) < +xi.slice(5)) { xi = ki; } - } else if (!yi || +ki.substr(5) < +yi.substr(5)) { + } else if (!yi || +ki.slice(5) < +yi.slice(5)) { yi = ki; } } @@ -53905,7 +53956,7 @@ var Plotly = (() => { segment = segments[i]; drawnParam = paramsToUse[segment.charAt(0)].drawn; if (drawnParam === void 0) continue; - params = segments[i].substr(1).match(constants.paramRE); + params = segments[i].slice(1).match(constants.paramRE); if (!params || params.length < drawnParam) continue; val = convertVal(params[drawnParam]); if (val < min) min = val; @@ -56256,9 +56307,9 @@ var Plotly = (() => { var subplots = layoutOut._subplots; if (subplots) { var yIds = subplots.cartesian.filter(function(subplotId) { - return subplotId.substr(0, subplotId.indexOf("y")) === axisIds.name2id(axName); + return subplotId.slice(0, Math.max(0, subplotId.indexOf("y"))) === axisIds.name2id(axName); }).map(function(subplotId) { - return subplotId.substr(subplotId.indexOf("y"), subplotId.length); + return subplotId.slice(subplotId.indexOf("y"), subplotId.length); }); var yNames = Lib.simpleMap(yIds, axisIds.id2name); for (var i = 0; i < yNames.length; i++) { @@ -58260,7 +58311,7 @@ var Plotly = (() => { placeholder: fullLayout._dfltTitle.colorbar, containerGroup: g.select("." + cn.cbtitle) }; - var otherClass = titleClass.charAt(0) === "h" ? titleClass.substr(1) : "h" + titleClass; + var otherClass = titleClass.charAt(0) === "h" ? titleClass.slice(1) : "h" + titleClass; g.selectAll("." + otherClass + ",." + otherClass + "-math-group").remove(); Titles.draw(gd, titleClass, extendFlat(dfltTitleOpts, titleOpts || {})); } @@ -61554,7 +61605,7 @@ var Plotly = (() => { return function(v, isRightEdge) { var dateStr = pa.c2d(v, oneYear, calendar); var dashPos = dateStr.indexOf("-", dashExclude); - if (dashPos > 0) dateStr = dateStr.substr(0, dashPos); + if (dashPos > 0) dateStr = dateStr.slice(0, dashPos); var roundedV = pa.d2c(dateStr, 0, calendar); if (roundedV < v) { var nextV = tickIncrement(roundedV, increment, false, calendar); @@ -63627,6 +63678,12 @@ var Plotly = (() => { dflt: false, editType: "plot" }, + showlegend: extendFlat({}, baseAttrs.showlegend, { + arrayOk: true + }), + legend: extendFlat({}, baseAttrs.legend, { + arrayOk: true + }), title: { text: { valType: "string", @@ -77250,7 +77307,7 @@ var Plotly = (() => { } else { if (directiveObj === UNKNOWN) replacementPart = UNKNOWN; else replacementPart = cDate.formatDate(directiveObj[modifier]); - fmt = fmt.substr(0, i) + replacementPart + fmt.substr(i + directiveLen); + fmt = fmt.slice(0, i) + replacementPart + fmt.slice(i + directiveLen); i += replacementPart.length; } } diff --git a/dist/plotly-finance.min.js b/dist/plotly-finance.min.js index b811e77f379..258e5afd2b8 100644 --- a/dist/plotly-finance.min.js +++ b/dist/plotly-finance.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (finance - minified) v3.3.0 +* plotly.js (finance - minified) v3.3.1 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,13 +12,13 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var nh=Object.defineProperty,lX=Object.defineProperties,oX=Object.getOwnPropertyDescriptor,sX=Object.getOwnPropertyDescriptors,uX=Object.getOwnPropertyNames,U4=Object.getOwnPropertySymbols;var X4=Object.prototype.hasOwnProperty,fX=Object.prototype.propertyIsEnumerable;var W4=(e,r,t)=>r in e?nh(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,Ho=(e,r)=>{for(var t in r||(r={}))X4.call(r,t)&&W4(e,t,r[t]);if(U4)for(var t of U4(r))fX.call(r,t)&&W4(e,t,r[t]);return e},ih=(e,r)=>lX(e,sX(r));var it=(e,r)=>()=>(e&&(r=e(e=0)),r);var O=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),cX=(e,r)=>{for(var t in r)nh(e,t,{get:r[t],enumerable:!0})},vX=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of uX(r))!X4.call(e,n)&&n!==t&&nh(e,n,{get:()=>r[n],enumerable:!(a=oX(r,n))||a.enumerable});return e};var Z4=e=>vX(nh({},"__esModule",{value:!0}),e);var lh=O(J4=>{"use strict";J4.version="3.3.0"});var K4=O(($4,oh)=>{(function(r,t,a){t[r]=t[r]||a(),typeof oh!="undefined"&&oh.exports&&(oh.exports=t[r])})("Promise",typeof window!="undefined"?window:$4,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(k,A){this.fn=k,this.self=A,this.next=void 0}return{add:function(A,C){x=new M(A,C),T?T.next=x:_=x,T=x,x=void 0},drain:function(){var A=_;for(_=T=t=void 0;A;)A.fn.call(A.self),A=A.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(A){b.resolve(_[A]).then(function(D){T(A,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 m(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 k={success:typeof x=="function"?x:!0,failure:typeof M=="function"?M:!1};return k.promise=new this.constructor(function(C,D){if(typeof C!="function"||typeof D!="function")throw TypeError("Not a function");k.resolve=C,k.reject=D}),_.chain.push(k),_.state!==0&&l(s,_),k.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 y=r({},"constructor",m,!1);return m.prototype=y,r(y,"__NPO__",0,!1),r(m,"resolve",function(_){var T=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new T(function(M,k){if(typeof M!="function"||typeof k!="function")throw TypeError("Not a function");M(_)})}),r(m,"reject",function(_){return new this(function(x,M){if(typeof x!="function"||typeof M!="function")throw TypeError("Not a function");M(_)})}),r(m,"all",function(_){var T=this;return n.call(_)!="[object Array]"?T.reject(TypeError("Not an array")):_.length===0?T.resolve([]):new T(function(M,k){if(typeof M!="function"||typeof k!="function")throw TypeError("Not a function");var A=_.length,C=Array(A),D=0;h(T,_,function(R,N){C[R]=N,++D===A&&M(C)},k)})}),r(m,"race",function(_){var T=this;return n.call(_)!="[object Array]"?T.reject(TypeError("Not an array")):new T(function(M,k){if(typeof M!="function"||typeof k!="function")throw TypeError("Not a function");h(T,_,function(C,D){M(D)},k)})}),m})});var kr=O((lme,sh)=>{(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,S,L;if(arguments.length===1){for(;++w=L){S=L;break}for(;++wL&&(S=L)}else{for(;++w=L){S=L;break}for(;++wL&&(S=L)}return S},e.max=function(v,g){var w=-1,q=v.length,S,L;if(arguments.length===1){for(;++w=L){S=L;break}for(;++wS&&(S=L)}else{for(;++w=L){S=L;break}for(;++wS&&(S=L)}return S},e.extent=function(v,g){var w=-1,q=v.length,S,L,z;if(arguments.length===1){for(;++w=L){S=z=L;break}for(;++wL&&(S=L),z=L){S=z=L;break}for(;++wL&&(S=L),z1)return z/(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,S){for(arguments.length<3&&(q=0),arguments.length<4&&(S=g.length);q>>1;v(g[L],w)<0?q=L+1:S=L}return q},right:function(g,w,q,S){for(arguments.length<3&&(q=0),arguments.length<4&&(S=g.length);q>>1;v(g[L],w)>0?S=L:q=L+1}return q}}}var m=p(c);e.bisectLeft=m.left,e.bisect=e.bisectRight=m.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,S,L;q;)L=Math.random()*q--|0,S=v[q+g],v[q+g]=v[L+g],v[L+g]=S;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,S=v[0],L=new Array(w<0?0:w);g=0;)for(z=v[g],w=z.length;--w>=0;)L[--S]=z[w];return L};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=[],S=_(b(w)),L=-1,z;if(v*=S,g*=S,w*=S,w<0)for(;(z=v+w*++L)>g;)q.push(z/S);else for(;(z=v+w*++L)=g.length)return S?S.call(v,F):q?F.sort(q):F;for(var $=-1,ee=F.length,te=g[Z++],me,Me,ae,se=new x,he;++$=g.length)return P;var Z=[],$=w[F++];return P.forEach(function(ee,te){Z.push({key:ee,values:z(te,F)})}),$?Z.sort(function(ee,te){return $(ee.key,te.key)}):Z}return v.map=function(P,F){return L(F,P,0)},v.entries=function(P){return z(L(e.map,P,0),0)},v.key=function(P){return g.push(P),v},v.sortKeys=function(P){return w[g.length-1]=P,v},v.sortValues=function(P){return q=P,v},v.rollup=function(P){return S=P,v},v},e.set=function(v){var g=new H;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 J(v){var g=[],w=new x;function q(){for(var S=g,L=-1,z=S.length,P;++L=0&&(w=v.slice(0,g))!=="xmlns"&&(v=v.slice(g+1)),ge.hasOwnProperty(w)?{space:ge[w],local:v}:v}},xe.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(Te(g,v[g]));return this}return this.each(Te(v,g))};function Te(v,g){v=e.ns.qualify(v);function w(){this.removeAttribute(v)}function q(){this.removeAttributeNS(v.space,v.local)}function S(){this.setAttribute(v,g)}function L(){this.setAttributeNS(v.space,v.local,g)}function z(){var F=g.apply(this,arguments);F==null?this.removeAttribute(v):this.setAttribute(v,F)}function P(){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?P:z:v.local?L:S}function ye(v){return v.trim().replace(/\s+/g," ")}xe.classed=function(v,g){if(arguments.length<2){if(typeof v=="string"){var w=this.node(),q=(v=Ie(v)).length,S=-1;if(g=w.classList){for(;++S=0;)(L=w[q])&&(S&&S!==L.nextSibling&&S.parentNode.insertBefore(L,S),S=L);return this},xe.sort=function(v){v=_e.apply(this,arguments);for(var g=-1,w=this.length;++g=g&&(g=S+1);!(F=z[g])&&++g0&&(v=v.slice(0,S));var z=Oe.get(v);z&&(v=z,L=We);function P(){var $=this[q];$&&(this.removeEventListener(v,$,$.$),delete this[q])}function F(){var $=L(g,t(arguments));P.call(this),this.addEventListener(v,this[q]=$,$.$=w),$._=g}function Z(){var $=new RegExp("^__on([^.]+)"+e.requote(v)+"$"),ee;for(var te in this)if(ee=te.match($)){var me=this[te];this.removeEventListener(ee[1],me,me.$),delete this[te]}}return S?g?F:P:g?V:Z}var Oe=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Oe.forEach(function(v){"on"+v in a&&Oe.remove(v)});function Je(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 We(v,g){var w=Je(v,g);return function(q){var S=this,L=q.relatedTarget;(!L||L!==S&&!(L.compareDocumentPosition(S)&8))&&w.call(S,q)}}var Xe,lr=0;function tr(v){var g=".dragsuppress-"+ ++lr,w="click"+g,q=e.select(i(v)).on("touchmove"+g,re).on("dragstart"+g,re).on("selectstart"+g,re);if(Xe==null&&(Xe="onselectstart"in v?!1:Y(v.style,"userSelect")),Xe){var S=n(v).style,L=S[Xe];S[Xe]="none"}return function(z){if(q.on(g,null),Xe&&(S[Xe]=L),z){var P=function(){q.on(w,null)};q.on(w,function(){re(),P()},!0),setTimeout(P,0)}}}e.mouse=function(v){return Ne(v,le())};var Ke=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(Ke<0){var S=i(v);if(S.scrollX||S.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();Ke=!(L.f||L.e),w.remove()}}return Ke?(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 z=v.getBoundingClientRect();return[g.clientX-z.left-v.clientLeft,g.clientY-z.top-v.clientTop]}e.touch=function(v,g,w){if(arguments.length<3&&(w=g,g=le().changedTouches),g){for(var q=0,S=g.length,L;q0?1:v<0?-1:0}function ut(v,g,w){return(g[0]-v[0])*(w[1]-v[1])-(g[1]-v[1])*(w[0]-v[0])}function kt(v){return v>1?0:v<-1?De:Math.acos(v)}function _t(v){return v>1?sr:v<-1?-sr:Math.asin(v)}function Ht(v){return((v=Math.exp(v))-1/v)/2}function ra(v){return((v=Math.exp(v))+1/v)/2}function Ia(v){return((v=Math.exp(2*v))-1)/(v+1)}function ma(v){return(v=Math.sin(v/2))*v}var ya=Math.SQRT2,vr=2,ft=4;e.interpolateZoom=function(v,g){var w=v[0],q=v[1],S=v[2],L=g[0],z=g[1],P=g[2],F=L-w,Z=z-q,$=F*F+Z*Z,ee,te;if($0&&(je=je.transition().duration(z)),je.call(ke.event)}function dr(){se&&se.domain(ae.range().map(function(je){return(je-v.x)/v.k}).map(ae.invert)),we&&we.domain(he.range().map(function(je){return(je-v.y)/v.k}).map(he.invert))}function pr(je){P++||je({type:"zoomstart"})}function Lr(je){dr(),je({type:"zoom",scale:v.k,translate:[v.x,v.y]})}function mr(je){--P||(je({type:"zoomend"}),w=null)}function Mr(){var je=this,Dr=Me.of(je,arguments),Er=0,Qr=e.select(i(je)).on(Z,wa).on($,Oa),St=pe(e.mouse(je)),Kt=tr(je);eh.call(je),pr(Dr);function wa(){Er=1,ur(e.mouse(je),St),Lr(Dr)}function Oa(){Qr.on(Z,null).on($,null),Kt(Er),mr(Dr)}}function Kr(){var je=this,Dr=Me.of(je,arguments),Er={},Qr=0,St,Kt=".zoom-"+e.event.changedTouches[0].identifier,wa="touchmove"+Kt,Oa="touchend"+Kt,$a=[],Ba=e.select(je),en=tr(je);rn(),pr(Dr),Ba.on(F,null).on(te,rn);function Da(){var oi=e.touches(je);return St=v.k,oi.forEach(function(Ta){Ta.identifier in Er&&(Er[Ta.identifier]=pe(Ta))}),oi}function rn(){var oi=e.event.target;e.select(oi).on(wa,Fo).on(Oa,iX),$a.push(oi);for(var Ta=e.event.changedTouches,Rn=0,zi=Ta.length;Rn1){var Io=zn[0],El=zn[1],ah=Io[0]-El[0],G4=Io[1]-El[1];Qr=ah*ah+G4*G4}}function Fo(){var oi=e.touches(je),Ta,Rn,zi,zn;eh.call(je);for(var cu=0,Io=oi.length;cu1?1:g,w=w<0?0:w>1?1:w,S=w<=.5?w*(1+g):w+g-w*g,q=2*w-S;function L(P){return P>360?P-=360:P<0&&(P+=360),P<60?q+(S-q)*P/60:P<180?S:P<240?q+(S-q)*(240-P)/60:q}function z(P){return Math.round(L(P)*255)}return new Ha(z(v+120),z(v),z(v-120))}e.hcl=ta;function ta(v,g,w){return this instanceof ta?(this.h=+v,this.c=+g,void(this.l=+w)):arguments.length<2?v instanceof ta?new ta(v.h,v.c,v.l):v instanceof Pt?P0(v.l,v.a,v.b):P0((v=or((v=e.rgb(v)).r,v.g,v.b)).l,v.a,v.b):new ta(v,g,w)}var Pi=ta.prototype=new Mt;Pi.brighter=function(v){return new ta(this.h,this.c,Math.min(100,this.l+qt*(arguments.length?v:1)))},Pi.darker=function(v){return new ta(this.h,this.c,Math.max(0,this.l-qt*(arguments.length?v:1)))},Pi.rgb=function(){return En(this.h,this.c,this.l).rgb()};function En(v,g,w){return isNaN(v)&&(v=0),isNaN(g)&&(g=0),new Pt(w,Math.cos(v*=Ar)*g,Math.sin(v)*g)}e.lab=Pt;function Pt(v,g,w){return this instanceof Pt?(this.l=+v,this.a=+g,void(this.b=+w)):arguments.length<2?v instanceof Pt?new Pt(v.l,v.a,v.b):v instanceof ta?En(v.h,v.c,v.l):or((v=Ha(v)).r,v.g,v.b):new Pt(v,g,w)}var qt=18,xa=.95047,Do=1,Eo=1.08883,Ll=Pt.prototype=new Mt;Ll.brighter=function(v){return new Pt(Math.min(100,this.l+qt*(arguments.length?v:1)),this.a,this.b)},Ll.darker=function(v){return new Pt(Math.max(0,this.l-qt*(arguments.length?v:1)),this.a,this.b)},Ll.rgb=function(){return E0(this.l,this.a,this.b)};function E0(v,g,w){var q=(v+16)/116,S=q+g/500,L=q-w/200;return S=lc(S)*xa,q=lc(q)*Do,L=lc(L)*Eo,new Ha(sc(3.2404542*S-1.5371385*q-.4985314*L),sc(-.969266*S+1.8760108*q+.041556*L),sc(.0556434*S-.2040259*q+1.0572252*L))}function P0(v,g,w){return v>0?new ta(Math.atan2(w,g)*Br,Math.sqrt(g*g+w*w),v):new ta(NaN,NaN,v)}function lc(v){return v>.206893034?v*v*v:(v-4/29)/7.787037}function oc(v){return v>.008856?Math.pow(v,1/3):7.787037*v+4/29}function sc(v){return Math.round(255*(v<=.00304?12.92*v:1.055*Math.pow(v,1/2.4)-.055))}e.rgb=Ha;function Ha(v,g,w){return this instanceof Ha?(this.r=~~v,this.g=~~g,void(this.b=~~w)):arguments.length<2?v instanceof Ha?new Ha(v.r,v.g,v.b):Wr(""+v,Ha,Dn):new Ha(v,g,w)}function R0(v){return new Ha(v>>16,v>>8&255,v&255)}function au(v){return R0(v)+""}var nu=Ha.prototype=new Mt;nu.brighter=function(v){v=Math.pow(.7,arguments.length?v:1);var g=this.r,w=this.g,q=this.b,S=30;return!g&&!w&&!q?new Ha(S,S,S):(g&&g>4,q=q>>4|q,S=F&240,S=S>>4|S,L=F&15,L=L<<4|L):v.length===7&&(q=(F&16711680)>>16,S=(F&65280)>>8,L=F&255)),g(q,S,L))}function rt(v,g,w){var q=Math.min(v/=255,g/=255,w/=255),S=Math.max(v,g,w),L=S-q,z,P,F=(S+q)/2;return L?(P=F<.5?L/(S+q):L/(2-S-q),v==S?z=(g-w)/L+(g0&&F<1?0:z),new jr(z,P,F)}function or(v,g,w){v=ba(v),g=ba(g),w=ba(w);var q=oc((.4124564*v+.3575761*g+.1804375*w)/xa),S=oc((.2126729*v+.7151522*g+.072175*w)/Do),L=oc((.0193339*v+.119192*g+.9503041*w)/Eo);return Pt(116*S-16,500*(q-S),200*(S-L))}function ba(v){return(v/=255)<=.04045?v/12.92:Math.pow((v+.055)/1.055,2.4)}function ct(v){var g=parseFloat(v);return v.charAt(v.length-1)==="%"?Math.round(g*2.55):g}var _a=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});_a.forEach(function(v,g){_a.set(v,R0(g))});function Nr(v){return typeof v=="function"?v:function(){return v}}e.functor=Nr,e.xhr=ii(G);function ii(v){return function(g,w,q){return arguments.length===2&&typeof w=="function"&&(q=w,w=null),Po(g,w,v,q)}}function Po(v,g,w,q){var S={},L=e.dispatch("beforesend","progress","load","error"),z={},P=new XMLHttpRequest,F=null;self.XDomainRequest&&!("withCredentials"in P)&&/^(http(s)?:)?\/\//.test(v)&&(P=new XDomainRequest),"onload"in P?P.onload=P.onerror=Z:P.onreadystatechange=function(){P.readyState>3&&Z()};function Z(){var $=P.status,ee;if(!$&&oU(P)||$>=200&&$<300||$===304){try{ee=w.call(S,P)}catch(te){L.error.call(S,te);return}L.load.call(S,ee)}else L.error.call(S,P)}return P.onprogress=function($){var ee=e.event;e.event=$;try{L.progress.call(S,P)}finally{e.event=ee}},S.header=function($,ee){return $=($+"").toLowerCase(),arguments.length<2?z[$]:(ee==null?delete z[$]:z[$]=ee+"",S)},S.mimeType=function($){return arguments.length?(g=$==null?null:$+"",S):g},S.responseType=function($){return arguments.length?(F=$,S):F},S.response=function($){return w=$,S},["get","post"].forEach(function($){S[$]=function(){return S.send.apply(S,[$].concat(t(arguments)))}}),S.send=function($,ee,te){if(arguments.length===2&&typeof ee=="function"&&(te=ee,ee=null),P.open($,v,!0),g!=null&&!("accept"in z)&&(z.accept=g+",*/*"),P.setRequestHeader)for(var me in z)P.setRequestHeader(me,z[me]);return g!=null&&P.overrideMimeType&&P.overrideMimeType(g),F!=null&&(P.responseType=F),te!=null&&S.on("error",te).on("load",function(Me){te(null,Me)}),L.beforesend.call(S,P),P.send(ee==null?null:ee),S},S.abort=function(){return P.abort(),S},e.rebind(S,L,"on"),q==null?S:S.get(lU(q))}function lU(v){return v.length===1?function(g,w){v(g==null?w:null)}:v}function oU(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 S(Z,$,ee){arguments.length<3&&(ee=$,$=null);var te=Po(Z,g,$==null?L:z($),ee);return te.row=function(me){return arguments.length?te.response(($=me)==null?L:z(me)):$},te}function L(Z){return S.parse(Z.responseText)}function z(Z){return function($){return S.parse($.responseText,Z)}}S.parse=function(Z,$){var ee;return S.parseRows(Z,function(te,me){if(ee)return ee(te,me-1);var Me=function(ae){for(var se={},he=te.length,we=0;we=Me)return te;if(we)return we=!1,ee;var Ve=ae;if(Z.charCodeAt(Ve)===34){for(var nr=Ve;nr++24?(isFinite(g)&&(clearTimeout(I0),I0=setTimeout(jm,g)),F0=0):(F0=1,L_(jm))}e.timer.flush=function(){D_(),E_()};function D_(){for(var v=Date.now(),g=z0;g;)v>=g.t&&g.c(v-g.t)&&(g.c=null),g=g.n;return v}function E_(){for(var v,g=z0,w=1/0;g;)g.c?(g.t=0;--P)ae.push(S[Z[ee[P]][2]]);for(P=+me;P1&&ut(v[w[q-2]],v[w[q-1]],v[S])<=0;)--q;w[q++]=S}return w.slice(0,q)}function sU(v,g){return v[0]-g[0]||v[1]-g[1]}e.geom.polygon=function(v){return j(v,O0),v};var O0=e.geom.polygon.prototype=[];O0.area=function(){for(var v=-1,g=this.length,w,q=this[g-1],S=0;++voe)P=P.L;else if(z=g-vU(P,w),z>oe){if(!P.R){q=P;break}P=P.R}else{L>-oe?(q=P.P,S=P):z>-oe?(q=P,S=P.N):q=S=P;break}var F=F_(v);if(ou.insert(q,F),!(!q&&!S)){if(q===S){uu(q),S=F_(q.site),ou.insert(F,S),F.edge=S.edge=cc(q.site,F.site),su(q),su(S);return}if(!S){F.edge=cc(q.site,F.site);return}uu(q),uu(S);var Z=q.site,$=Z.x,ee=Z.y,te=v.x-$,me=v.y-ee,Me=S.site,ae=Me.x-$,se=Me.y-ee,he=2*(te*se-me*ae),we=te*te+me*me,ke=ae*ae+se*se,pe={x:(se*we-me*ke)/he+$,y:(te*ke-ae*we)/he+ee};B0(S.edge,Z,Me,pe),F.edge=cc(Z,v,null,pe),S.edge=cc(v,Me,null,pe),su(q),su(S)}}function I_(v,g){var w=v.site,q=w.x,S=w.y,L=S-g;if(!L)return q;var z=v.P;if(!z)return-1/0;w=z.site;var P=w.x,F=w.y,Z=F-g;if(!Z)return P;var $=P-q,ee=1/L-1/Z,te=$/Z;return ee?(-te+Math.sqrt(te*te-2*ee*($*$/(-2*Z)-F+Z/2+S-L/2)))/ee+q:(q+P)/2}function vU(v,g){var w=v.N;if(w)return I_(w,g);var q=v.site;return q.y===g?q.x:1/0}function H_(v){this.site=v,this.edges=[]}H_.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(O_),v.length};function hU(v){for(var g=v[0][0],w=v[1][0],q=v[0][1],S=v[1][1],L,z,P,F,Z=Ro,$=Z.length,ee,te,me,Me,ae,se;$--;)if(ee=Z[$],!(!ee||!ee.prepare()))for(me=ee.edges,Me=me.length,te=0;teoe||b(F-z)>oe)&&(me.splice(te,0,new Y0(gU(ee.site,se,b(P-g)oe?{x:g,y:b(L-g)oe?{x:b(z-S)oe?{x:w,y:b(L-w)oe?{x:b(z-q)=-Ce)){var te=F*F+Z*Z,me=$*$+se*se,Me=(se*te-Z*me)/ee,ae=(F*me-$*te)/ee,se=ae+P,he=N_.pop()||new dU;he.arc=v,he.site=S,he.x=Me+z,he.y=se+Math.sqrt(Me*Me+ae*ae),he.cy=se,v.circle=he;for(var we=null,ke=fc._;ke;)if(he.y0)){if(ae/=me,me<0){if(ae0){if(ae>te)return;ae>ee&&(ee=ae)}if(ae=w-P,!(!me&&ae<0)){if(ae/=me,me<0){if(ae>te)return;ae>ee&&(ee=ae)}else if(me>0){if(ae0)){if(ae/=Me,Me<0){if(ae0){if(ae>te)return;ae>ee&&(ee=ae)}if(ae=q-F,!(!Me&&ae<0)){if(ae/=Me,Me<0){if(ae>te)return;ae>ee&&(ee=ae)}else if(Me>0){if(ae0&&(S.a={x:P+ee*me,y:F+ee*Me}),te<1&&(S.b={x:P+te*me,y:F+te*Me}),S}}}}}}function mU(v){for(var g=lu,w=pU(v[0][0],v[0][1],v[1][0],v[1][1]),q=g.length,S;q--;)S=g[q],(!yU(S,v)||!w(S)||b(S.a.x-S.b.x)=L)return;if($>te){if(!q)q={x:Me,y:z};else if(q.y>=P)return;w={x:Me,y:P}}else{if(!q)q={x:Me,y:P};else if(q.y1)if($>te){if(!q)q={x:(z-he)/se,y:z};else if(q.y>=P)return;w={x:(P-he)/se,y:P}}else{if(!q)q={x:(P-he)/se,y:P};else if(q.y=L)return;w={x:L,y:se*L+he}}else{if(!q)q={x:L,y:se*L+he};else if(q.x=$&&he.x<=te&&he.y>=ee&&he.y<=me?[[$,me],[te,me],[te,ee],[$,ee]]:[];we.point=F[ae]}),Z}function P(F){return F.map(function(Z,$){return{x:Math.round(q(Z,$)/oe)*oe,y:Math.round(S(Z,$)/oe)*oe,i:$}})}return z.links=function(F){return iy(P(F)).edges.filter(function(Z){return Z.l&&Z.r}).map(function(Z){return{source:F[Z.l.i],target:F[Z.r.i]}})},z.triangles=function(F){var Z=[];return iy(P(F)).cells.forEach(function($,ee){for(var te=$.site,me=$.edges.sort(O_),Me=-1,ae=me.length,se,he,we=me[ae-1].edge,ke=we.l===te?we.r:we.l;++Meke&&(ke=$.x),$.y>pe&&(pe=$.y),me.push($.x),Me.push($.y);else for(ae=0;aeke&&(ke=Ve),nr>pe&&(pe=nr),me.push(Ve),Me.push(nr)}var ur=ke-he,ir=pe-we;ur>ir?pe=we+ur:ke=he+ir;function dr(mr,Mr,Kr,Ot,at,je,Dr,Er){if(!(isNaN(Kr)||isNaN(Ot)))if(mr.leaf){var Qr=mr.x,St=mr.y;if(Qr!=null)if(b(Qr-Kr)+b(St-Ot)<.01)pr(mr,Mr,Kr,Ot,at,je,Dr,Er);else{var Kt=mr.point;mr.x=mr.y=mr.point=null,pr(mr,Kt,Qr,St,at,je,Dr,Er),pr(mr,Mr,Kr,Ot,at,je,Dr,Er)}else mr.x=Kr,mr.y=Ot,mr.point=Mr}else pr(mr,Mr,Kr,Ot,at,je,Dr,Er)}function pr(mr,Mr,Kr,Ot,at,je,Dr,Er){var Qr=(at+Dr)*.5,St=(je+Er)*.5,Kt=Kr>=Qr,wa=Ot>=St,Oa=wa<<1|Kt;mr.leaf=!1,mr=mr.nodes[Oa]||(mr.nodes[Oa]=V_()),Kt?at=Qr:Dr=Qr,wa?je=St:Er=St,dr(mr,Mr,Kr,Ot,at,je,Dr,Er)}var Lr=V_();if(Lr.add=function(mr){dr(Lr,mr,+ee(mr,++ae),+te(mr,ae),he,we,ke,pe)},Lr.visit=function(mr){dc(mr,Lr,he,we,ke,pe)},Lr.find=function(mr){return TU(Lr,mr[0],mr[1],he,we,ke,pe)},ae=-1,g==null){for(;++aeL||te>z||me=Ve,ir=w>=nr,dr=ir<<1|ur,pr=dr+4;drw&&(L=g.slice(w,L),P[z]?P[z]+=L:P[++z]=L),(q=q[0])===(S=S[0])?P[z]?P[z]+=S:P[++z]=S:(P[++z]=null,F.push({i:z,x:nl(q,S)})),w=sy.lastIndex;return w=0&&!(q=e.interpolators[w](v,g)););return q}e.interpolators=[function(v,g){var w=typeof g;return(w==="string"?_a.has(g.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(g)?ly:U_:g instanceof Mt?ly:Array.isArray(g)?U0:w==="object"&&isNaN(g)?G_:nl)(v,g)}],e.interpolateArray=U0;function U0(v,g){var w=[],q=[],S=v.length,L=g.length,z=Math.min(v.length,g.length),P;for(P=0;P=0?v.slice(0,g):v,q=g>=0?v.slice(g+1):"in";return w=MU.get(w)||W_,q=AU.get(q)||G,kU(q(w.apply(null,r.call(arguments,1))))};function kU(v){return function(g){return g<=0?0:g>=1?1:v(g)}}function X_(v){return function(g){return 1-v(1-g)}}function Z_(v){return function(g){return .5*(g<.5?v(2*g):2-v(2-2*g))}}function qU(v){return v*v}function SU(v){return v*v*v}function CU(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 LU(v){return function(g){return Math.pow(g,v)}}function DU(v){return 1-Math.cos(v*sr)}function EU(v){return Math.pow(2,10*(v-1))}function PU(v){return 1-Math.sqrt(1-v*v)}function RU(v,g){var w;return arguments.length<2&&(g=.45),arguments.length?w=g/ar*Math.asin(1/v):(v=1,w=g/4),function(q){return 1+v*Math.pow(2,-10*q)*Math.sin((q-w)*ar/g)}}function zU(v){return v||(v=1.70158),function(g){return g*g*((v+1)*g-v)}}function NU(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=FU;function FU(v,g){v=e.hcl(v),g=e.hcl(g);var w=v.h,q=v.c,S=v.l,L=g.h-w,z=g.c-q,P=g.l-S;return isNaN(z)&&(z=0,q=isNaN(q)?g.c:q),isNaN(L)?(L=0,w=isNaN(w)?g.h:w):L>180?L-=360:L<-180&&(L+=360),function(F){return En(w+L*F,q+z*F,S+P*F)+""}}e.interpolateHsl=IU;function IU(v,g){v=e.hsl(v),g=e.hsl(g);var w=v.h,q=v.s,S=v.l,L=g.h-w,z=g.s-q,P=g.l-S;return isNaN(z)&&(z=0,q=isNaN(q)?g.s:q),isNaN(L)?(L=0,w=isNaN(w)?g.h:w):L>180?L-=360:L<-180&&(L+=360),function(F){return Dn(w+L*F,q+z*F,S+P*F)+""}}e.interpolateLab=HU;function HU(v,g){v=e.lab(v),g=e.lab(g);var w=v.l,q=v.a,S=v.b,L=g.l-w,z=g.a-q,P=g.b-S;return function(F){return E0(w+L*F,q+z*F,S+P*F)+""}}e.interpolateRound=J_;function J_(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 $_(q?q.matrix:BU)})(v)};function $_(v){var g=[v.a,v.b],w=[v.c,v.d],q=Q_(g),S=K_(g,w),L=Q_(OU(w,g,-S))||0;g[0]*w[1]180?g+=360:g-v>180&&(v+=360),q.push({i:w.push(fu(w)+"rotate(",null,")")-2,x:nl(v,g)})):g&&w.push(fu(w)+"rotate("+g+")")}function GU(v,g,w,q){v!==g?q.push({i:w.push(fu(w)+"skewX(",null,")")-2,x:nl(v,g)}):g&&w.push(fu(w)+"skewX("+g+")")}function UU(v,g,w,q){if(v[0]!==g[0]||v[1]!==g[1]){var S=w.push(fu(w)+"scale(",null,",",null,")");q.push({i:S-4,x:nl(v[0],g[0])},{i:S-2,x:nl(v[1],g[1])})}else(g[0]!==1||g[1]!==1)&&w.push(fu(w)+"scale("+g+")")}function j_(v,g){var w=[],q=[];return v=e.transform(v),g=e.transform(g),YU(v.translate,g.translate,w,q),VU(v.rotate,g.rotate,w,q),GU(v.skew,g.skew,w,q),UU(v.scale,g.scale,w,q),v=g=null,function(S){for(var L=-1,z=q.length,P;++L0?L=pe:(w.c=null,w.t=NaN,w=null,g.end({type:"end",alpha:L=0})):pe>0&&(g.start({type:"start",alpha:L=pe}),w=H0(v.tick)),v):L},v.start=function(){var pe,Ve=me.length,nr=Me.length,ur=q[0],ir=q[1],dr,pr;for(pe=0;pe=0;)L.push($=Z[F]),$.parent=P,$.depth=P.depth+1;w&&(P.value=0),P.children=Z}else w&&(P.value=+w.call(q,P,P.depth)||0),delete P.children;return Ri(S,function(ee){var te,me;v&&(te=ee.children)&&te.sort(v),w&&(me=ee.parent)&&(me.value+=ee.value)}),z}return q.sort=function(S){return arguments.length?(v=S,q):v},q.children=function(S){return arguments.length?(g=S,q):g},q.value=function(S){return arguments.length?(w=S,q):w},q.revalue=function(S){return w&&(mc(S,function(L){L.children&&(L.value=0)}),Ri(S,function(L){var z;L.children||(L.value=+w.call(q,L,L.depth)||0),(z=L.parent)&&(z.value+=L.value)})),S},q};function pc(v,g){return e.rebind(v,g,"sort","children","value"),v.nodes=v,v.links=lW,v}function mc(v,g){for(var w=[v];(v=w.pop())!=null;)if(g(v),(S=v.children)&&(q=S.length))for(var q,S;--q>=0;)w.push(S[q])}function Ri(v,g){for(var w=[v],q=[];(v=w.pop())!=null;)if(q.push(v),(z=v.children)&&(L=z.length))for(var S=-1,L,z;++SS&&(S=P),q.push(P)}for(z=0;zq&&(w=g,q=S);return w}function hW(v){return v.reduce(dW,0)}function dW(v,g){return v+g[1]}e.layout.histogram=function(){var v=!0,g=Number,w=mW,q=pW;function S(L,te){for(var P=[],F=L.map(g,this),Z=w.call(this,F,te),$=q.call(this,Z,F,te),ee,te=-1,me=F.length,Me=$.length-1,ae=v?1:1/me,se;++te0)for(te=-1;++te=Z[0]&&se<=Z[1]&&(ee=P[e.bisect($,se,1,Me)-1],ee.y+=ae,ee.push(L[te]));return P}return S.value=function(L){return arguments.length?(g=L,S):g},S.range=function(L){return arguments.length?(w=Nr(L),S):w},S.bins=function(L){return arguments.length?(q=typeof L=="number"?function(z){return a4(z,L)}:Nr(L),S):q},S.frequency=function(L){return arguments.length?(v=!!L,S):v},S};function pW(v,g){return a4(v,Math.ceil(Math.log(g.length)/Math.LN2+1))}function a4(v,g){for(var w=-1,q=+v[0],S=(v[1]-q)/g,L=[];++w<=g;)L[w]=S*w+q;return L}function mW(v){return[e.min(v),e.max(v)]}e.layout.pack=function(){var v=e.layout.hierarchy().sort(yW),g=0,w=[1,1],q;function S(L,z){var P=v.call(this,L,z),F=P[0],Z=w[0],$=w[1],ee=q==null?Math.sqrt:typeof q=="function"?q:function(){return q};if(F.x=F.y=0,Ri(F,function(me){me.r=+ee(me.value)}),Ri(F,l4),g){var te=g*(q?1:Math.max(2*F.r/Z,2*F.r/$))/2;Ri(F,function(me){me.r+=te}),Ri(F,l4),Ri(F,function(me){me.r-=te})}return o4(F,Z/2,$/2,q?1:1/Math.max(2*F.r/Z,2*F.r/$)),P}return S.size=function(L){return arguments.length?(w=L,S):w},S.radius=function(L){return arguments.length?(q=L==null||typeof L=="function"?L:+L,S):q},S.padding=function(L){return arguments.length?(g=+L,S):g},pc(S,v)};function yW(v,g){return v.value-g.value}function cy(v,g){var w=v._pack_next;v._pack_next=g,g._pack_prev=v,g._pack_next=w,w._pack_prev=g}function n4(v,g){v._pack_next=g,g._pack_prev=v}function i4(v,g){var w=g.x-v.x,q=g.y-v.y,S=v.r+g.r;return .999*S*S>w*w+q*q}function l4(v){if(!(g=v.children)||!(te=g.length))return;var g,w=1/0,q=-1/0,S=1/0,L=-1/0,z,P,F,Z,$,ee,te;function me(pe){w=Math.min(pe.x-pe.r,w),q=Math.max(pe.x+pe.r,q),S=Math.min(pe.y-pe.r,S),L=Math.max(pe.y+pe.r,L)}if(g.forEach(gW),z=g[0],z.x=-z.r,z.y=0,me(z),te>1&&(P=g[1],P.x=P.r,P.y=0,me(P),te>2))for(F=g[2],s4(z,P,F),me(F),cy(z,F),z._pack_prev=F,cy(F,P),P=z._pack_next,Z=3;Zse.x&&(se=Ve),Ve.depth>he.depth&&(he=Ve)});var we=g(ae,se)/2-ae.x,ke=w[0]/(se.x+g(se,ae)/2+we),pe=w[1]/(he.depth||1);mc(me,function(Ve){Ve.x=(Ve.x+we)*ke,Ve.y=Ve.depth*pe})}return te}function L($){for(var ee={A:null,children:[$]},te=[ee],me;(me=te.pop())!=null;)for(var Me=me.children,ae,se=0,he=Me.length;se0&&(bW(wW(ae,$,te),$,Ve),he+=Ve,we+=Ve),ke+=ae.m,he+=me.m,pe+=se.m,we+=Me.m;ae&&!hy(Me)&&(Me.t=ae,Me.m+=ke-we),me&&!vy(se)&&(se.t=me,se.m+=he-pe,te=$)}return te}function Z($){$.x*=w[0],$.y=$.depth*w[1]}return S.separation=function($){return arguments.length?(g=$,S):g},S.size=function($){return arguments.length?(q=(w=$)==null?Z:null,S):q?null:w},S.nodeSize=function($){return arguments.length?(q=(w=$)==null?null:Z,S):q?w:null},pc(S,v)};function u4(v,g){return v.parent==g.parent?1:2}function vy(v){var g=v.children;return g.length?g[0]:v.t}function hy(v){var g=v.children,w;return(w=g.length)?g[w-1]:v.t}function bW(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 _W(v){for(var g=0,w=0,q=v.children,S=q.length,L;--S>=0;)L=q[S],L.z+=g,L.m+=g,g+=L.s+(w+=L.c)}function wW(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=u4,w=[1,1],q=!1;function S(L,z){var P=v.call(this,L,z),F=P[0],Z,$=0;Ri(F,function(ae){var se=ae.children;se&&se.length?(ae.x=MW(se),ae.y=TW(se)):(ae.x=Z?$+=g(ae,Z):0,ae.y=0,Z=ae)});var ee=f4(F),te=c4(F),me=ee.x-g(ee,te)/2,Me=te.x+g(te,ee)/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)/(Me-me)*w[0],ae.y=(1-(F.y?ae.y/F.y:1))*w[1]}),P}return S.separation=function(L){return arguments.length?(g=L,S):g},S.size=function(L){return arguments.length?(q=(w=L)==null,S):q?null:w},S.nodeSize=function(L){return arguments.length?(q=(w=L)!=null,S):q?w:null},pc(S,v)};function TW(v){return 1+e.max(v,function(g){return g.y})}function MW(v){return v.reduce(function(g,w){return g+w.x},0)/v.length}function f4(v){var g=v.children;return g&&g.length?f4(g[0]):v}function c4(v){var g=v.children,w;return g&&(w=g.length)?c4(g[w-1]):v}e.layout.treemap=function(){var v=e.layout.hierarchy(),g=Math.round,w=[1,1],q=null,S=dy,L=!1,z,P="squarify",F=.5*(1+Math.sqrt(5));function Z(ae,se){for(var he=-1,we=ae.length,ke,pe;++he0;)we.push(pe=ke[ir-1]),we.area+=pe.area,P!=="squarify"||(nr=te(we,ur))<=Ve?(ke.pop(),Ve=nr):(we.area-=we.pop().area,me(we,ur,he,!1),ur=Math.min(he.dx,he.dy),we.length=we.area=0,Ve=1/0);we.length&&(me(we,ur,he,!0),we.length=we.area=0),se.forEach($)}}function ee(ae){var se=ae.children;if(se&&se.length){var he=S(ae),we=se.slice(),ke,pe=[];for(Z(we,he.dx*he.dy/ae.value),pe.area=0;ke=we.pop();)pe.push(ke),pe.area+=ke.area,ke.z!=null&&(me(pe,ke.z?he.dx:he.dy,he,!we.length),pe.length=pe.area=0);se.forEach(ee)}}function te(ae,se){for(var he=ae.area,we,ke=0,pe=1/0,Ve=-1,nr=ae.length;++Veke&&(ke=we));return he*=he,se*=se,he?Math.max(se*ke*F/he,he/(se*pe*F)):1/0}function me(ae,se,he,we){var ke=-1,pe=ae.length,Ve=he.x,nr=he.y,ur=se?g(ae.area/se):0,ir;if(se==he.dx){for((we||ur>he.dy)&&(ur=he.dy);++kehe.dx)&&(ur=he.dx);++ke1);return v+g*q*Math.sqrt(-2*Math.log(L)/L)}},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?qW:AW,Z=q?XU:WU;return S=F(v,g,Z,w),L=F(g,v,Z,zo),P}function P(F){return S(F)}return P.invert=function(F){return L(F)},P.domain=function(F){return arguments.length?(v=F.map(Number),z()):v},P.range=function(F){return arguments.length?(g=F,z()):g},P.rangeRound=function(F){return P.range(F).interpolate(J_)},P.clamp=function(F){return arguments.length?(q=F,z()):q},P.interpolate=function(F){return arguments.length?(w=F,z()):w},P.ticks=function(F){return yy(v,F)},P.tickFormat=function(F,Z){return d3_scale_linearTickFormat(v,F,Z)},P.nice=function(F){return m4(v,F),z()},P.copy=function(){return d4(v,g,w,q)},z()}function p4(v,g){return e.rebind(v,g,"range","rangeRound","interpolate","clamp")}function m4(v,g){return py(v,h4(my(v,g)[2])),py(v,h4(my(v,g)[2])),v}function my(v,g){g==null&&(g=10);var w=W0(v),q=w[1]-w[0],S=Math.pow(10,Math.floor(Math.log(q/g)/Math.LN10)),L=g/q*S;return L<=.15?S*=10:L<=.35?S*=5:L<=.75&&(S*=2),w[0]=Math.ceil(w[0]/S)*S,w[1]=Math.floor(w[1]/S)*S+S*.5,w[2]=S,w}function yy(v,g){return e.range.apply(e,my(v,g))}var SW={s:1,g:1,p:1,r:1,e:1};function y4(v){return-Math.floor(Math.log(v)/Math.LN10+.01)}function ame(v,g){var w=y4(g[2]);return v in SW?Math.abs(w-y4(Math.max(b(g[0]),b(g[1]))))+ +(v!=="e"):w-(v==="%")*2}e.scale.log=function(){return g4(e.scale.linear().domain([0,1]),10,!0,[1,10])};function g4(v,g,w,q){function S(P){return(w?Math.log(P<0?0:P):-Math.log(P>0?0:-P))/Math.log(g)}function L(P){return w?Math.pow(g,P):-Math.pow(g,-P)}function z(P){return v(S(P))}return z.invert=function(P){return L(v.invert(P))},z.domain=function(P){return arguments.length?(w=P[0]>=0,v.domain((q=P.map(Number)).map(S)),z):q},z.base=function(P){return arguments.length?(g=+P,v.domain(q.map(S)),z):g},z.nice=function(){var P=py(q.map(S),w?Math:CW);return v.domain(P),q=P.map(L),z},z.ticks=function(){var P=W0(q),F=[],Z=P[0],$=P[1],ee=Math.floor(S(Z)),te=Math.ceil(S($)),me=g%1?2:g;if(isFinite(te-ee)){if(w){for(;ee0;Me--)F.push(L(ee)*Me);for(ee=0;F[ee]$;te--);F=F.slice(ee,te)}return F},z.copy=function(){return g4(v.copy(),g,w,q)},p4(z,v)}var CW={floor:function(v){return-Math.ceil(-v)},ceil:function(v){return-Math.floor(-v)}};e.scale.pow=function(){return x4(e.scale.linear(),1,[0,1])};function x4(v,g,w){var q=Z0(g),S=Z0(1/g);function L(z){return v(q(z))}return L.invert=function(z){return S(v.invert(z))},L.domain=function(z){return arguments.length?(v.domain((w=z.map(Number)).map(q)),L):w},L.ticks=function(z){return yy(w,z)},L.tickFormat=function(z,P){return d3_scale_linearTickFormat(w,z,P)},L.nice=function(z){return L.domain(m4(w,z))},L.exponent=function(z){return arguments.length?(q=Z0(g=z),S=Z0(1/g),v.domain(w.map(q)),L):g},L.copy=function(){return x4(v.copy(),g,w)},p4(L,v)}function Z0(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 b4([],{t:"range",a:[[]]})};function b4(v,g){var w,q,S;function L(P){return q[((w.get(P)||(g.t==="range"?w.set(P,v.push(P)):NaN))-1)%q.length]}function z(P,F){return e.range(v.length).map(function(Z){return P+F*Z})}return L.domain=function(P){if(!arguments.length)return v;v=[],w=new x;for(var F=-1,Z=P.length,$;++F0?w[L-1]:v[0],Lte?0:1;if($=fr)return F($,Me)+(Z?F(Z,1-Me):"")+"Z";var ae,se,he,we,ke=0,pe=0,Ve,nr,ur,ir,dr,pr,Lr,mr,Mr=[];if((we=(+z.apply(this,arguments)||0)/2)&&(he=q===J0?Math.sqrt(Z*Z+$*$):+q.apply(this,arguments),Me||(pe*=-1),$&&(pe=_t(he/$*Math.sin(we))),Z&&(ke=_t(he/Z*Math.sin(we)))),$){Ve=$*Math.cos(ee+pe),nr=$*Math.sin(ee+pe),ur=$*Math.cos(te-pe),ir=$*Math.sin(te-pe);var Kr=Math.abs(te-ee-2*pe)<=De?0:1;if(pe&&$0(Ve,nr,ur,ir)===Me^Kr){var Ot=(ee+te)/2;Ve=$*Math.cos(Ot),nr=$*Math.sin(Ot),ur=ir=null}}else Ve=nr=0;if(Z){dr=Z*Math.cos(te-ke),pr=Z*Math.sin(te-ke),Lr=Z*Math.cos(ee+ke),mr=Z*Math.sin(ee+ke);var at=Math.abs(ee-te+2*ke)<=De?0:1;if(ke&&$0(dr,pr,Lr,mr)===1-Me^at){var je=(ee+te)/2;dr=Z*Math.cos(je),pr=Z*Math.sin(je),Lr=mr=null}}else dr=pr=0;if(me>oe&&(ae=Math.min(Math.abs($-Z)/2,+w.apply(this,arguments)))>.001){se=Z<$^Me?0:1;var Dr=ae,Er=ae;if(me0?0:1}function K0(v,g,w,q,S){var L=v[0]-g[0],z=v[1]-g[1],P=(S?q:-q)/Math.sqrt(L*L+z*z),F=P*z,Z=-P*L,$=v[0]+F,ee=v[1]+Z,te=g[0]+F,me=g[1]+Z,Me=($+te)/2,ae=(ee+me)/2,se=te-$,he=me-ee,we=se*se+he*he,ke=w-q,pe=$*me-te*ee,Ve=(he<0?-1:1)*Math.sqrt(Math.max(0,ke*ke*we-pe*pe)),nr=(pe*he-se*Ve)/we,ur=(-pe*se-he*Ve)/we,ir=(pe*he+se*Ve)/we,dr=(-pe*se+he*Ve)/we,pr=nr-Me,Lr=ur-ae,mr=ir-Me,Mr=dr-ae;return pr*pr+Lr*Lr>mr*mr+Mr*Mr&&(nr=ir,ur=dr),[[nr-F,ur-Z],[nr*w/ke,ur*w/ke]]}function q4(){return!0}function S4(v){var g=iu,w=uc,q=q4,S=li,L=S.key,z=.7;function P(F){var Z=[],$=[],ee=-1,te=F.length,me,Me=Nr(g),ae=Nr(w);function se(){Z.push("M",S(v($),z))}for(;++ee1?v.join("L"):v+"Z"}function C4(v){return v.join("L")+"Z"}function IW(v){for(var g=0,w=v.length,q=v[0],S=[q[0],",",q[1]];++g1&&S.push("H",q[0]),S.join("")}function xy(v){for(var g=0,w=v.length,q=v[0],S=[q[0],",",q[1]];++g1){P=g[1],L=v[F],F++,q+="C"+(S[0]+z[0])+","+(S[1]+z[1])+","+(L[0]-P[0])+","+(L[1]-P[1])+","+L[0]+","+L[1];for(var Z=2;Z9&&(L=w*3/Math.sqrt(L),z[P]=L*q,z[P+1]=L*S));for(P=-1;++P<=F;)L=(v[Math.min(F,P+1)][0]-v[Math.max(0,P-1)][0])/(6*(1+z[P]*z[P])),g.push([L||0,z[P]*L||0]);return g}function XW(v){return v.length<3?li(v):v[0]+Q0(v,WW(v))}e.svg.line.radial=function(){var v=S4(P4);return v.radius=v.x,delete v.x,v.angle=v.y,delete v.y,v};function P4(v){for(var g,w=-1,q=v.length,S,L;++wDe)+",1 "+ee}function Z($,ee,te,me){return"Q 0,0 "+me}return L.radius=function($){return arguments.length?(w=Nr($),L):w},L.source=function($){return arguments.length?(v=Nr($),L):v},L.target=function($){return arguments.length?(g=Nr($),L):g},L.startAngle=function($){return arguments.length?(q=Nr($),L):q},L.endAngle=function($){return arguments.length?(S=Nr($),L):S},L};function ZW(v){return v.radius}e.svg.diagonal=function(){var v=z4,g=N4,w=F4;function q(S,L){var z=v.call(this,S,L),P=g.call(this,S,L),F=(z.y+P.y)/2,Z=[z,{x:z.x,y:F},{x:P.x,y:F},P];return Z=Z.map(w),"M"+Z[0]+"C"+Z[1]+" "+Z[2]+" "+Z[3]}return q.source=function(S){return arguments.length?(v=Nr(S),q):v},q.target=function(S){return arguments.length?(g=Nr(S),q):g},q.projection=function(S){return arguments.length?(w=S,q):w},q};function F4(v){return[v.x,v.y]}e.svg.diagonal.radial=function(){var v=e.svg.diagonal(),g=F4,w=v.projection;return v.projection=function(q){return arguments.length?w(JW(g=q)):g},v};function JW(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=KW,g=$W;function w(q,S){return(H4.get(v.call(this,q,S))||I4)(g.call(this,q,S))}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 $W(){return 64}function KW(){return"circle"}function I4(v){var g=Math.sqrt(v/De);return"M0,"+g+"A"+g+","+g+" 0 1,1 0,"+-g+"A"+g+","+g+" 0 1,1 0,"+g+"Z"}var H4=e.map({circle:I4,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*O4)),w=g*O4;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/j0),w=g*j0/2;return"M0,"+w+"L"+g+","+-w+" "+-g+","+-w+"Z"},"triangle-up":function(v){var g=Math.sqrt(v/j0),w=g*j0/2;return"M0,"+-w+"L"+g+","+w+" "+-g+","+w+"Z"}});e.svg.symbolTypes=H4.keys();var j0=Math.sqrt(3),O4=Math.tan(30*Ar);xe.transition=function(v){for(var g=No||++Y4,w=Ay(v),q=[],S,L,z=rh||{time:Date.now(),ease:CU,delay:0,duration:250},P=-1,F=this.length;++P0;)ee[--we].call(v,he);if(se>=1)return z.event&&z.event.end.call(v,v.__data__,g),--L.count?delete L[q]:delete v[w],1}z||(P=S.time,F=H0(te,0,P),z=L[q]={tween:new x,time:P,timer:F,delay:S.delay,duration:S.duration,ease:S.ease,index:g},S=null,++L.count)}e.svg.axis=function(){var v=e.scale.linear(),g=V4,w=6,q=6,S=3,L=[10],z=null,P;function F(Z){Z.each(function(){var $=e.select(this),ee=this.__chart__||v,te=this.__chart__=v.copy(),me=z==null?te.ticks?te.ticks.apply(te,L):te.domain():z,Me=P==null?te.tickFormat?te.tickFormat.apply(te,L):G:P,ae=$.selectAll(".tick").data(me,te),se=ae.enter().insert("g",".domain").attr("class","tick").style("opacity",oe),he=e.transition(ae.exit()).style("opacity",oe).remove(),we=e.transition(ae.order()).style("opacity",1),ke=Math.max(w,0)+S,pe,Ve=X0(te),nr=$.selectAll(".domain").data([0]),ur=(nr.enter().append("path").attr("class","domain"),e.transition(nr));se.append("line"),se.append("text");var ir=se.select("line"),dr=we.select("line"),pr=ae.select("text").text(Me),Lr=se.select("text"),mr=we.select("text"),Mr=g==="top"||g==="left"?-1:1,Kr,Ot,at,je;if(g==="bottom"||g==="top"?(pe=eX,Kr="x",at="y",Ot="x2",je="y2",pr.attr("dy",Mr<0?"0em":".71em").style("text-anchor","middle"),ur.attr("d","M"+Ve[0]+","+Mr*q+"V0H"+Ve[1]+"V"+Mr*q)):(pe=rX,Kr="y",at="x",Ot="y2",je="x2",pr.attr("dy",".32em").style("text-anchor",Mr<0?"end":"start"),ur.attr("d","M"+Mr*q+","+Ve[0]+"H0V"+Ve[1]+"H"+Mr*q)),ir.attr(je,Mr*w),Lr.attr(at,Mr*ke),dr.attr(Ot,0).attr(je,Mr*w),mr.attr(Kr,0).attr(at,Mr*ke),te.rangeBand){var Dr=te,Er=Dr.rangeBand()/2;ee=te=function(Qr){return Dr(Qr)+Er}}else ee.rangeBand?ee=te:he.call(pe,te,ee);se.call(pe,ee,te),we.call(pe,te,te)})}return F.scale=function(Z){return arguments.length?(v=Z,F):v},F.orient=function(Z){return arguments.length?(g=Z in jW?Z+"":V4,F):g},F.ticks=function(){return arguments.length?(L=t(arguments),F):L},F.tickValues=function(Z){return arguments.length?(z=Z,F):z},F.tickFormat=function(Z){return arguments.length?(P=Z,F):P},F.tickSize=function(Z){var $=arguments.length;return $?(w=+Z,q=+arguments[$-1],F):w},F.innerTickSize=function(Z){return arguments.length?(w=+Z,F):w},F.outerTickSize=function(Z){return arguments.length?(q=+Z,F):q},F.tickPadding=function(Z){return arguments.length?(S=+Z,F):S},F.tickSubdivide=function(){return arguments.length&&F},F};var V4="bottom",jW={top:1,right:1,bottom:1,left:1};function eX(v,g,w){v.attr("transform",function(q){var S=g(q);return"translate("+(isFinite(S)?S:w(q))+",0)"})}function rX(v,g,w){v.attr("transform",function(q){var S=g(q);return"translate(0,"+(isFinite(S)?S:w(q))+")"})}e.svg.brush=function(){var v=ue($,"brushstart","brush","brushend"),g=null,w=null,q=[0,0],S=[0,0],L,z,P=!0,F=!0,Z=ky[0];function $(ae){ae.each(function(){var se=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),he=se.selectAll(".background").data([0]);he.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),se.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var we=se.selectAll(".resize").data(Z,G);we.exit().remove(),we.enter().append("g").attr("class",function(nr){return"resize "+nr}).style("cursor",function(nr){return tX[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"),we.style("display",$.empty()?"none":null);var ke=e.transition(se),pe=e.transition(he),Ve;g&&(Ve=X0(g),pe.attr("x",Ve[0]).attr("width",Ve[1]-Ve[0]),te(ke)),w&&(Ve=X0(w),pe.attr("y",Ve[0]).attr("height",Ve[1]-Ve[0]),me(ke)),ee(ke)})}$.event=function(ae){ae.each(function(){var se=v.of(this,arguments),he={x:q,y:S,i:L,j:z},we=this.__chart__||he;this.__chart__=he,No?e.select(this).transition().each("start.brush",function(){L=we.i,z=we.j,q=we.x,S=we.y,se({type:"brushstart"})}).tween("brush:brush",function(){var ke=U0(q,he.x),pe=U0(S,he.y);return L=z=null,function(Ve){q=he.x=ke(Ve),S=he.y=pe(Ve),se({type:"brush",mode:"resize"})}}).each("end.brush",function(){L=he.i,z=he.j,se({type:"brush",mode:"resize"}),se({type:"brushend"})}):(se({type:"brushstart"}),se({type:"brush",mode:"resize"}),se({type:"brushend"}))})};function ee(ae){ae.selectAll(".resize").attr("transform",function(se){return"translate("+q[+/e$/.test(se)]+","+S[+/^s/.test(se)]+")"})}function te(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",S[0]),ae.selectAll(".extent,.e>rect,.w>rect").attr("height",S[1]-S[0])}function Me(){var ae=this,se=e.select(e.event.target),he=v.of(ae,arguments),we=e.select(ae),ke=se.datum(),pe=!/^(n|s)$/.test(ke)&&g,Ve=!/^(e|w)$/.test(ke)&&w,nr=se.classed("extent"),ur=tr(ae),ir,dr=e.mouse(ae),pr,Lr=e.select(i(ae)).on("keydown.brush",Kr).on("keyup.brush",Ot);if(e.event.changedTouches?Lr.on("touchmove.brush",at).on("touchend.brush",Dr):Lr.on("mousemove.brush",at).on("mouseup.brush",Dr),we.interrupt().selectAll("*").interrupt(),nr)dr[0]=q[0]-dr[0],dr[1]=S[0]-dr[1];else if(ke){var mr=+/w$/.test(ke),Mr=+/^n/.test(ke);pr=[q[1-mr]-dr[0],S[1-Mr]-dr[1]],dr[0]=q[mr],dr[1]=S[Mr]}else e.event.altKey&&(ir=dr.slice());we.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",se.style("cursor")),he({type:"brushstart"}),at();function Kr(){e.event.keyCode==32&&(nr||(ir=null,dr[0]-=q[1],dr[1]-=S[1],nr=2),re())}function Ot(){e.event.keyCode==32&&nr==2&&(dr[0]+=q[1],dr[1]+=S[1],nr=0,re())}function at(){var Er=e.mouse(ae),Qr=!1;pr&&(Er[0]+=pr[0],Er[1]+=pr[1]),nr||(e.event.altKey?(ir||(ir=[(q[0]+q[1])/2,(S[0]+S[1])/2]),dr[0]=q[+(Er[0]{(function(e,r){typeof uh=="object"&&typeof Q4!="undefined"?r(uh):(e=e||self,r(e.d3=e.d3||{}))})(uh,function(e){"use strict";var r=new Date,t=new Date;function a(ie,_e,$e,hr){function Re(Ae){return ie(Ae=arguments.length===0?new Date:new Date(+Ae)),Ae}return Re.floor=function(Ae){return ie(Ae=new Date(+Ae)),Ae},Re.ceil=function(Ae){return ie(Ae=new Date(Ae-1)),_e(Ae,1),ie(Ae),Ae},Re.round=function(Ae){var Se=Re(Ae),Oe=Re.ceil(Ae);return Ae-Se0))return Je;do Je.push(We=new Date(+Ae)),_e(Ae,Oe),ie(Ae);while(We=Se)for(;ie(Se),!Ae(Se);)Se.setTime(Se-1)},function(Se,Oe){if(Se>=Se)if(Oe<0)for(;++Oe<=0;)for(;_e(Se,-1),!Ae(Se););else for(;--Oe>=0;)for(;_e(Se,1),!Ae(Se););})},$e&&(Re.count=function(Ae,Se){return r.setTime(+Ae),t.setTime(+Se),ie(r),ie(t),Math.floor($e(r,t))},Re.every=function(Ae){return Ae=Math.floor(Ae),!isFinite(Ae)||!(Ae>0)?null:Ae>1?Re.filter(hr?function(Se){return hr(Se)%Ae===0}:function(Se){return Re.count(0,Se)%Ae===0}):Re}),Re}var n=a(function(){},function(ie,_e){ie.setTime(+ie+_e)},function(ie,_e){return _e-ie});n.every=function(ie){return ie=Math.floor(ie),!isFinite(ie)||!(ie>0)?null:ie>1?a(function(_e){_e.setTime(Math.floor(_e/ie)*ie)},function(_e,$e){_e.setTime(+_e+$e*ie)},function(_e,$e){return($e-_e)/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,_e){ie.setTime(+ie+_e*l)},function(ie,_e){return(_e-ie)/l},function(ie){return ie.getUTCSeconds()}),h=c.range,d=a(function(ie){ie.setTime(ie-ie.getMilliseconds()-ie.getSeconds()*l)},function(ie,_e){ie.setTime(+ie+_e*o)},function(ie,_e){return(_e-ie)/o},function(ie){return ie.getMinutes()}),p=d.range,m=a(function(ie){ie.setTime(ie-ie.getMilliseconds()-ie.getSeconds()*l-ie.getMinutes()*o)},function(ie,_e){ie.setTime(+ie+_e*s)},function(ie,_e){return(_e-ie)/s},function(ie){return ie.getHours()}),y=m.range,b=a(function(ie){ie.setHours(0,0,0,0)},function(ie,_e){ie.setDate(ie.getDate()+_e)},function(ie,_e){return(_e-ie-(_e.getTimezoneOffset()-ie.getTimezoneOffset())*o)/u},function(ie){return ie.getDate()-1}),_=b.range;function T(ie){return a(function(_e){_e.setDate(_e.getDate()-(_e.getDay()+7-ie)%7),_e.setHours(0,0,0,0)},function(_e,$e){_e.setDate(_e.getDate()+$e*7)},function(_e,$e){return($e-_e-($e.getTimezoneOffset()-_e.getTimezoneOffset())*o)/f})}var x=T(0),M=T(1),k=T(2),A=T(3),C=T(4),D=T(5),E=T(6),R=x.range,N=M.range,I=k.range,H=A.range,G=C.range,W=D.range,Y=E.range,B=a(function(ie){ie.setDate(1),ie.setHours(0,0,0,0)},function(ie,_e){ie.setMonth(ie.getMonth()+_e)},function(ie,_e){return _e.getMonth()-ie.getMonth()+(_e.getFullYear()-ie.getFullYear())*12},function(ie){return ie.getMonth()}),V=B.range,K=a(function(ie){ie.setMonth(0,1),ie.setHours(0,0,0,0)},function(ie,_e){ie.setFullYear(ie.getFullYear()+_e)},function(ie,_e){return _e.getFullYear()-ie.getFullYear()},function(ie){return ie.getFullYear()});K.every=function(ie){return!isFinite(ie=Math.floor(ie))||!(ie>0)?null:a(function(_e){_e.setFullYear(Math.floor(_e.getFullYear()/ie)*ie),_e.setMonth(0,1),_e.setHours(0,0,0,0)},function(_e,$e){_e.setFullYear(_e.getFullYear()+$e*ie)})};var J=K.range,re=a(function(ie){ie.setUTCSeconds(0,0)},function(ie,_e){ie.setTime(+ie+_e*o)},function(ie,_e){return(_e-ie)/o},function(ie){return ie.getUTCMinutes()}),le=re.range,ue=a(function(ie){ie.setUTCMinutes(0,0,0)},function(ie,_e){ie.setTime(+ie+_e*s)},function(ie,_e){return(_e-ie)/s},function(ie){return ie.getUTCHours()}),ve=ue.range,j=a(function(ie){ie.setUTCHours(0,0,0,0)},function(ie,_e){ie.setUTCDate(ie.getUTCDate()+_e)},function(ie,_e){return(_e-ie)/u},function(ie){return ie.getUTCDate()-1}),qe=j.range;function fe(ie){return a(function(_e){_e.setUTCDate(_e.getUTCDate()-(_e.getUTCDay()+7-ie)%7),_e.setUTCHours(0,0,0,0)},function(_e,$e){_e.setUTCDate(_e.getUTCDate()+$e*7)},function(_e,$e){return($e-_e)/f})}var be=fe(0),ce=fe(1),xe=fe(2),U=fe(3),Q=fe(4),X=fe(5),ge=fe(6),Te=be.range,ye=ce.range,ze=xe.range,Ie=U.range,Ee=Q.range,Fe=X.range,Be=ge.range,Ue=a(function(ie){ie.setUTCDate(1),ie.setUTCHours(0,0,0,0)},function(ie,_e){ie.setUTCMonth(ie.getUTCMonth()+_e)},function(ie,_e){return _e.getUTCMonth()-ie.getUTCMonth()+(_e.getUTCFullYear()-ie.getUTCFullYear())*12},function(ie){return ie.getUTCMonth()}),Le=Ue.range,He=a(function(ie){ie.setUTCMonth(0,1),ie.setUTCHours(0,0,0,0)},function(ie,_e){ie.setUTCFullYear(ie.getUTCFullYear()+_e)},function(ie,_e){return _e.getUTCFullYear()-ie.getUTCFullYear()},function(ie){return ie.getUTCFullYear()});He.every=function(ie){return!isFinite(ie=Math.floor(ie))||!(ie>0)?null:a(function(_e){_e.setUTCFullYear(Math.floor(_e.getUTCFullYear()/ie)*ie),_e.setUTCMonth(0,1),_e.setUTCHours(0,0,0,0)},function(_e,$e){_e.setUTCFullYear(_e.getUTCFullYear()+$e*ie)})};var Ye=He.range;e.timeDay=b,e.timeDays=_,e.timeFriday=D,e.timeFridays=W,e.timeHour=m,e.timeHours=y,e.timeInterval=a,e.timeMillisecond=n,e.timeMilliseconds=i,e.timeMinute=d,e.timeMinutes=p,e.timeMonday=M,e.timeMondays=N,e.timeMonth=B,e.timeMonths=V,e.timeSaturday=E,e.timeSaturdays=Y,e.timeSecond=c,e.timeSeconds=h,e.timeSunday=x,e.timeSundays=R,e.timeThursday=C,e.timeThursdays=G,e.timeTuesday=k,e.timeTuesdays=I,e.timeWednesday=A,e.timeWednesdays=H,e.timeWeek=x,e.timeWeeks=R,e.timeYear=K,e.timeYears=J,e.utcDay=j,e.utcDays=qe,e.utcFriday=X,e.utcFridays=Fe,e.utcHour=ue,e.utcHours=ve,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=re,e.utcMinutes=le,e.utcMonday=ce,e.utcMondays=ye,e.utcMonth=Ue,e.utcMonths=Le,e.utcSaturday=ge,e.utcSaturdays=Be,e.utcSecond=c,e.utcSeconds=h,e.utcSunday=be,e.utcSundays=Te,e.utcThursday=Q,e.utcThursdays=Ee,e.utcTuesday=xe,e.utcTuesdays=ze,e.utcWednesday=U,e.utcWednesdays=Ie,e.utcWeek=be,e.utcWeeks=Te,e.utcYear=He,e.utcYears=Ye,Object.defineProperty(e,"__esModule",{value:!0})})});var vu=O((fh,j4)=>{(function(e,r){typeof fh=="object"&&typeof j4!="undefined"?r(fh,qy()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(fh,function(e,r){"use strict";function t(ne){if(0<=ne.y&&ne.y<100){var oe=new Date(-1,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L);return oe.setFullYear(ne.y),oe}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 oe=new Date(Date.UTC(-1,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L));return oe.setUTCFullYear(ne.y),oe}return new Date(Date.UTC(ne.y,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L))}function n(ne,oe,Ce){return{y:ne,m:oe,d:Ce,H:0,M:0,S:0,L:0}}function i(ne){var oe=ne.dateTime,Ce=ne.date,De=ne.time,ar=ne.periods,fr=ne.days,sr=ne.shortDays,Ar=ne.months,Br=ne.shortMonths,et=h(ar),ut=d(ar),kt=h(fr),_t=d(fr),Ht=h(sr),ra=d(sr),Ia=h(Ar),ma=d(Ar),ya=h(Br),vr=d(Br),ft={a:Do,A:Eo,b:Ll,B:E0,c:null,d:B,e:B,f:le,H:V,I:K,j:J,L:re,m:ue,M:ve,p:P0,q:lc,Q:Se,s:Oe,S:j,u:qe,U:fe,V:be,w:ce,W:xe,x:null,X:null,y:U,Y:Q,Z:X,"%":Ae},$r={a:oc,A:sc,b:Ha,B:R0,c:null,d:ge,e:ge,f:Ee,H:Te,I:ye,j:ze,L:Ie,m:Fe,M:Be,p:au,q:nu,Q:Se,s:Oe,S:Ue,u:Le,U:He,V:Ye,w:ie,W:_e,x:null,X:null,y:$e,Y:hr,Z:Re,"%":Ae},dt={a:Dn,A:ta,b:Pi,B:En,c:Pt,d:C,e:C,f:H,H:E,I:E,j:D,L:I,m:A,M:R,p:ga,q:k,Q:W,s:Y,S:N,u:m,U:y,V:b,w:p,W:_,x:qt,X:xa,y:x,Y:T,Z:M,"%":G};ft.x=Et(Ce,ft),ft.X=Et(De,ft),ft.c=Et(oe,ft),$r.x=Et(Ce,$r),$r.X=Et(De,$r),$r.c=Et(oe,$r);function Et(yr,Wr){return function(rt){var or=[],ba=-1,ct=0,_a=yr.length,Nr,ii,Po;for(rt instanceof Date||(rt=new Date(+rt));++ba<_a;)yr.charCodeAt(ba)===37&&(or.push(yr.slice(ct,ba)),(ii=l[Nr=yr.charAt(++ba)])!=null?Nr=yr.charAt(++ba):ii=Nr==="e"?" ":"0",(Po=Wr[Nr])&&(Nr=Po(rt,ii)),or.push(Nr),ct=ba+1);return or.push(yr.slice(ct,ba)),or.join("")}}function Mt(yr,Wr){return function(rt){var or=n(1900,void 0,1),ba=jr(or,yr,rt+="",0),ct,_a;if(ba!=rt.length)return null;if("Q"in or)return new Date(or.Q);if("s"in or)return new Date(or.s*1e3+("L"in or?or.L:0));if(Wr&&!("Z"in or)&&(or.Z=0),"p"in or&&(or.H=or.H%12+or.p*12),or.m===void 0&&(or.m="q"in or?or.q:0),"V"in or){if(or.V<1||or.V>53)return null;"w"in or||(or.w=1),"Z"in or?(ct=a(n(or.y,0,1)),_a=ct.getUTCDay(),ct=_a>4||_a===0?r.utcMonday.ceil(ct):r.utcMonday(ct),ct=r.utcDay.offset(ct,(or.V-1)*7),or.y=ct.getUTCFullYear(),or.m=ct.getUTCMonth(),or.d=ct.getUTCDate()+(or.w+6)%7):(ct=t(n(or.y,0,1)),_a=ct.getDay(),ct=_a>4||_a===0?r.timeMonday.ceil(ct):r.timeMonday(ct),ct=r.timeDay.offset(ct,(or.V-1)*7),or.y=ct.getFullYear(),or.m=ct.getMonth(),or.d=ct.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),_a="Z"in or?a(n(or.y,0,1)).getUTCDay():t(n(or.y,0,1)).getDay(),or.m=0,or.d="W"in or?(or.w+6)%7+or.W*7-(_a+5)%7:or.w+or.U*7-(_a+6)%7);return"Z"in or?(or.H+=or.Z/100|0,or.M+=or.Z%100,a(or)):t(or)}}function jr(yr,Wr,rt,or){for(var ba=0,ct=Wr.length,_a=rt.length,Nr,ii;ba=_a)return-1;if(Nr=Wr.charCodeAt(ba++),Nr===37){if(Nr=Wr.charAt(ba++),ii=dt[Nr in l?Wr.charAt(ba++):Nr],!ii||(or=ii(yr,rt,or))<0)return-1}else if(Nr!=rt.charCodeAt(or++))return-1}return or}function ga(yr,Wr,rt){var or=et.exec(Wr.slice(rt));return or?(yr.p=ut[or[0].toLowerCase()],rt+or[0].length):-1}function Dn(yr,Wr,rt){var or=Ht.exec(Wr.slice(rt));return or?(yr.w=ra[or[0].toLowerCase()],rt+or[0].length):-1}function ta(yr,Wr,rt){var or=kt.exec(Wr.slice(rt));return or?(yr.w=_t[or[0].toLowerCase()],rt+or[0].length):-1}function Pi(yr,Wr,rt){var or=ya.exec(Wr.slice(rt));return or?(yr.m=vr[or[0].toLowerCase()],rt+or[0].length):-1}function En(yr,Wr,rt){var or=Ia.exec(Wr.slice(rt));return or?(yr.m=ma[or[0].toLowerCase()],rt+or[0].length):-1}function Pt(yr,Wr,rt){return jr(yr,oe,Wr,rt)}function qt(yr,Wr,rt){return jr(yr,Ce,Wr,rt)}function xa(yr,Wr,rt){return jr(yr,De,Wr,rt)}function Do(yr){return sr[yr.getDay()]}function Eo(yr){return fr[yr.getDay()]}function Ll(yr){return Br[yr.getMonth()]}function E0(yr){return Ar[yr.getMonth()]}function P0(yr){return ar[+(yr.getHours()>=12)]}function lc(yr){return 1+~~(yr.getMonth()/3)}function oc(yr){return sr[yr.getUTCDay()]}function sc(yr){return fr[yr.getUTCDay()]}function Ha(yr){return Br[yr.getUTCMonth()]}function R0(yr){return Ar[yr.getUTCMonth()]}function au(yr){return ar[+(yr.getUTCHours()>=12)]}function nu(yr){return 1+~~(yr.getUTCMonth()/3)}return{format:function(yr){var Wr=Et(yr+="",ft);return Wr.toString=function(){return yr},Wr},parse:function(yr){var Wr=Mt(yr+="",!1);return Wr.toString=function(){return yr},Wr},utcFormat:function(yr){var Wr=Et(yr+="",$r);return Wr.toString=function(){return yr},Wr},utcParse:function(yr){var Wr=Mt(yr+="",!0);return Wr.toString=function(){return yr},Wr}}}var l={"-":"",_:" ",0:"0"},o=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(ne,oe,Ce){var De=ne<0?"-":"",ar=(De?-ne:ne)+"",fr=ar.length;return De+(fr68?1900:2e3),Ce+De[0].length):-1}function M(ne,oe,Ce){var De=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(oe.slice(Ce,Ce+6));return De?(ne.Z=De[1]?0:-(De[2]+(De[3]||"00")),Ce+De[0].length):-1}function k(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+1));return De?(ne.q=De[0]*3-3,Ce+De[0].length):-1}function A(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+2));return De?(ne.m=De[0]-1,Ce+De[0].length):-1}function C(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+2));return De?(ne.d=+De[0],Ce+De[0].length):-1}function D(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+3));return De?(ne.m=0,ne.d=+De[0],Ce+De[0].length):-1}function E(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+2));return De?(ne.H=+De[0],Ce+De[0].length):-1}function R(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+2));return De?(ne.M=+De[0],Ce+De[0].length):-1}function N(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+2));return De?(ne.S=+De[0],Ce+De[0].length):-1}function I(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+3));return De?(ne.L=+De[0],Ce+De[0].length):-1}function H(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+6));return De?(ne.L=Math.floor(De[0]/1e3),Ce+De[0].length):-1}function G(ne,oe,Ce){var De=s.exec(oe.slice(Ce,Ce+1));return De?Ce+De[0].length:-1}function W(ne,oe,Ce){var De=o.exec(oe.slice(Ce));return De?(ne.Q=+De[0],Ce+De[0].length):-1}function Y(ne,oe,Ce){var De=o.exec(oe.slice(Ce));return De?(ne.s=+De[0],Ce+De[0].length):-1}function B(ne,oe){return f(ne.getDate(),oe,2)}function V(ne,oe){return f(ne.getHours(),oe,2)}function K(ne,oe){return f(ne.getHours()%12||12,oe,2)}function J(ne,oe){return f(1+r.timeDay.count(r.timeYear(ne),ne),oe,3)}function re(ne,oe){return f(ne.getMilliseconds(),oe,3)}function le(ne,oe){return re(ne,oe)+"000"}function ue(ne,oe){return f(ne.getMonth()+1,oe,2)}function ve(ne,oe){return f(ne.getMinutes(),oe,2)}function j(ne,oe){return f(ne.getSeconds(),oe,2)}function qe(ne){var oe=ne.getDay();return oe===0?7:oe}function fe(ne,oe){return f(r.timeSunday.count(r.timeYear(ne)-1,ne),oe,2)}function be(ne,oe){var Ce=ne.getDay();return ne=Ce>=4||Ce===0?r.timeThursday(ne):r.timeThursday.ceil(ne),f(r.timeThursday.count(r.timeYear(ne),ne)+(r.timeYear(ne).getDay()===4),oe,2)}function ce(ne){return ne.getDay()}function xe(ne,oe){return f(r.timeMonday.count(r.timeYear(ne)-1,ne),oe,2)}function U(ne,oe){return f(ne.getFullYear()%100,oe,2)}function Q(ne,oe){return f(ne.getFullYear()%1e4,oe,4)}function X(ne){var oe=ne.getTimezoneOffset();return(oe>0?"-":(oe*=-1,"+"))+f(oe/60|0,"0",2)+f(oe%60,"0",2)}function ge(ne,oe){return f(ne.getUTCDate(),oe,2)}function Te(ne,oe){return f(ne.getUTCHours(),oe,2)}function ye(ne,oe){return f(ne.getUTCHours()%12||12,oe,2)}function ze(ne,oe){return f(1+r.utcDay.count(r.utcYear(ne),ne),oe,3)}function Ie(ne,oe){return f(ne.getUTCMilliseconds(),oe,3)}function Ee(ne,oe){return Ie(ne,oe)+"000"}function Fe(ne,oe){return f(ne.getUTCMonth()+1,oe,2)}function Be(ne,oe){return f(ne.getUTCMinutes(),oe,2)}function Ue(ne,oe){return f(ne.getUTCSeconds(),oe,2)}function Le(ne){var oe=ne.getUTCDay();return oe===0?7:oe}function He(ne,oe){return f(r.utcSunday.count(r.utcYear(ne)-1,ne),oe,2)}function Ye(ne,oe){var Ce=ne.getUTCDay();return ne=Ce>=4||Ce===0?r.utcThursday(ne):r.utcThursday.ceil(ne),f(r.utcThursday.count(r.utcYear(ne),ne)+(r.utcYear(ne).getUTCDay()===4),oe,2)}function ie(ne){return ne.getUTCDay()}function _e(ne,oe){return f(r.utcMonday.count(r.utcYear(ne)-1,ne),oe,2)}function $e(ne,oe){return f(ne.getUTCFullYear()%100,oe,2)}function hr(ne,oe){return f(ne.getUTCFullYear()%1e4,oe,4)}function Re(){return"+0000"}function Ae(){return"%"}function Se(ne){return+ne}function Oe(ne){return Math.floor(+ne/1e3)}var Je;We({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 We(ne){return Je=i(ne),e.timeFormat=Je.format,e.timeParse=Je.parse,e.utcFormat=Je.utcFormat,e.utcParse=Je.utcParse,Je}var Xe="%Y-%m-%dT%H:%M:%S.%LZ";function lr(ne){return ne.toISOString()}var tr=Date.prototype.toISOString?lr:e.utcFormat(Xe);function Ke(ne){var oe=new Date(ne);return isNaN(oe)?null:oe}var Ne=+new Date("2000-01-01T00:00:00.000Z")?Ke:e.utcParse(Xe);e.isoFormat=tr,e.isoParse=Ne,e.timeFormatDefaultLocale=We,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var Sy=O((ch,e6)=>{(function(e,r){typeof ch=="object"&&typeof e6!="undefined"?r(ch):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(ch,function(e){"use strict";function r(A){return Math.abs(A=Math.round(A))>=1e21?A.toLocaleString("en").replace(/,/g,""):A.toString(10)}function t(A,C){if((D=(A=C?A.toExponential(C-1):A.toExponential()).indexOf("e"))<0)return null;var D,E=A.slice(0,D);return[E.length>1?E[0]+E.slice(2):E,+A.slice(D+1)]}function a(A){return A=t(Math.abs(A)),A?A[1]:NaN}function n(A,C){return function(D,E){for(var R=D.length,N=[],I=0,H=A[0],G=0;R>0&&H>0&&(G+H+1>E&&(H=Math.max(1,E-G)),N.push(D.substring(R-=H,R+H)),!((G+=H+1)>E));)H=A[I=(I+1)%A.length];return N.reverse().join(C)}}function i(A){return function(C){return C.replace(/[0-9]/g,function(D){return A[+D]})}}var l=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(A){if(!(C=l.exec(A)))throw new Error("invalid format: "+A);var C;return new s({fill:C[1],align:C[2],sign:C[3],symbol:C[4],zero:C[5],width:C[6],comma:C[7],precision:C[8]&&C[8].slice(1),trim:C[9],type:C[10]})}o.prototype=s.prototype;function s(A){this.fill=A.fill===void 0?" ":A.fill+"",this.align=A.align===void 0?">":A.align+"",this.sign=A.sign===void 0?"-":A.sign+"",this.symbol=A.symbol===void 0?"":A.symbol+"",this.zero=!!A.zero,this.width=A.width===void 0?void 0:+A.width,this.comma=!!A.comma,this.precision=A.precision===void 0?void 0:+A.precision,this.trim=!!A.trim,this.type=A.type===void 0?"":A.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(A){e:for(var C=A.length,D=1,E=-1,R;D0&&(E=0);break}return E>0?A.slice(0,E)+A.slice(R+1):A}var f;function c(A,C){var D=t(A,C);if(!D)return A+"";var E=D[0],R=D[1],N=R-(f=Math.max(-8,Math.min(8,Math.floor(R/3)))*3)+1,I=E.length;return N===I?E:N>I?E+new Array(N-I+1).join("0"):N>0?E.slice(0,N)+"."+E.slice(N):"0."+new Array(1-N).join("0")+t(A,Math.max(0,C+N-1))[0]}function h(A,C){var D=t(A,C);if(!D)return A+"";var E=D[0],R=D[1];return R<0?"0."+new Array(-R).join("0")+E:E.length>R+1?E.slice(0,R+1)+"."+E.slice(R+1):E+new Array(R-E.length+2).join("0")}var d={"%":function(A,C){return(A*100).toFixed(C)},b:function(A){return Math.round(A).toString(2)},c:function(A){return A+""},d:r,e:function(A,C){return A.toExponential(C)},f:function(A,C){return A.toFixed(C)},g:function(A,C){return A.toPrecision(C)},o:function(A){return Math.round(A).toString(8)},p:function(A,C){return h(A*100,C)},r:h,s:c,X:function(A){return Math.round(A).toString(16).toUpperCase()},x:function(A){return Math.round(A).toString(16)}};function p(A){return A}var m=Array.prototype.map,y=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function b(A){var C=A.grouping===void 0||A.thousands===void 0?p:n(m.call(A.grouping,Number),A.thousands+""),D=A.currency===void 0?"":A.currency[0]+"",E=A.currency===void 0?"":A.currency[1]+"",R=A.decimal===void 0?".":A.decimal+"",N=A.numerals===void 0?p:i(m.call(A.numerals,String)),I=A.percent===void 0?"%":A.percent+"",H=A.minus===void 0?"-":A.minus+"",G=A.nan===void 0?"NaN":A.nan+"";function W(B){B=o(B);var V=B.fill,K=B.align,J=B.sign,re=B.symbol,le=B.zero,ue=B.width,ve=B.comma,j=B.precision,qe=B.trim,fe=B.type;fe==="n"?(ve=!0,fe="g"):d[fe]||(j===void 0&&(j=12),qe=!0,fe="g"),(le||V==="0"&&K==="=")&&(le=!0,V="0",K="=");var be=re==="$"?D:re==="#"&&/[boxX]/.test(fe)?"0"+fe.toLowerCase():"",ce=re==="$"?E:/[%p]/.test(fe)?I:"",xe=d[fe],U=/[defgprs%]/.test(fe);j=j===void 0?6:/[gprs]/.test(fe)?Math.max(1,Math.min(21,j)):Math.max(0,Math.min(20,j));function Q(X){var ge=be,Te=ce,ye,ze,Ie;if(fe==="c")Te=xe(X)+Te,X="";else{X=+X;var Ee=X<0||1/X<0;if(X=isNaN(X)?G:xe(Math.abs(X),j),qe&&(X=u(X)),Ee&&+X==0&&J!=="+"&&(Ee=!1),ge=(Ee?J==="("?J:H:J==="-"||J==="("?"":J)+ge,Te=(fe==="s"?y[8+f/3]:"")+Te+(Ee&&J==="("?")":""),U){for(ye=-1,ze=X.length;++yeIe||Ie>57){Te=(Ie===46?R+X.slice(ye+1):X.slice(ye))+Te,X=X.slice(0,ye);break}}}ve&&!le&&(X=C(X,1/0));var Fe=ge.length+X.length+Te.length,Be=Fe>1)+ge+X+Te+Be.slice(Fe);break;default:X=Be+ge+X+Te;break}return N(X)}return Q.toString=function(){return B+""},Q}function Y(B,V){var K=W((B=o(B),B.type="f",B)),J=Math.max(-8,Math.min(8,Math.floor(a(V)/3)))*3,re=Math.pow(10,-J),le=y[8+J/3];return function(ue){return K(re*ue)+le}}return{format:W,formatPrefix:Y}}var _;T({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function T(A){return _=b(A),e.format=_.format,e.formatPrefix=_.formatPrefix,_}function x(A){return Math.max(0,-a(Math.abs(A)))}function M(A,C){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(C)/3)))*3-a(Math.abs(A)))}function k(A,C){return A=Math.abs(A),C=Math.abs(C)-A,Math.max(0,a(C)-a(A))+1}e.FormatSpecifier=s,e.formatDefaultLocale=T,e.formatLocale=b,e.formatSpecifier=o,e.precisionFixed=x,e.precisionPrefix=M,e.precisionRound=k,Object.defineProperty(e,"__esModule",{value:!0})})});var t6=O((ome,r6)=>{"use strict";r6.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=O((sme,a6)=>{"use strict";var hX=t6();a6.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&hX(t))return!1}else if(r!=="number")return!1;return e-e<1}});var wt=O((ume,n6)=>{"use strict";n6.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 Cy=O((vh,i6)=>{(function(e,r){typeof vh=="object"&&typeof i6!="undefined"?r(vh):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(vh,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 m=new ArrayBuffer(o),y=new Uint8Array(m);for(u=0;u>4,y[f++]=(h&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 Pl=O((fme,l6)=>{"use strict";l6.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 yn=O(si=>{"use strict";var dX=Cy().decode,pX=Pl(),Ly=Array.isArray,mX=ArrayBuffer,yX=DataView;function o6(e){return mX.isView(e)&&!(e instanceof yX)}si.isTypedArray=o6;function hh(e){return Ly(e)||o6(e)}si.isArrayOrTypedArray=hh;function gX(e){return!hh(e[0])}si.isArray1D=gX;si.ensureArray=function(e,r){return Ly(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 Dy(e){return e.constructor===ArrayBuffer}si.isArrayBuffer=Dy;si.decodeTypedArraySpec=function(e){var r=[],t=xX(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;Dy(l)||(l=dX(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 u6=zr(),Py=yn().isArrayOrTypedArray;h6.exports=function(r,t){if(u6(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 hu=dh(),MX=/^\w*$/,AX=0,d6=1,ph=2,p6=3,Oo=4;m6.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,l,o,s={};t&&t.length?(o=hu(r,t),l=o.get()):l=r,t=t||"";var u={};if(l)for(i=0;i2)return s[d]=s[d]|ph,c.set(h,null);if(f){for(i=d;i{"use strict";var kX=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,qX=/^[^\.\[\]]+$/;g6.exports=function(e,r){for(;r;){var t=e.match(kX);if(t)e=t[1];else if(e.match(qX))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 mh=O((pme,b6)=>{"use strict";var SX=zr();b6.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 SX(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var T6=O((mme,w6)=>{"use strict";var _6=yn().isArrayOrTypedArray,gc=Pl();w6.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(_6(n)&&_6(i)&&gc(n[0])){if(a==="customdata"||a==="ids")continue;for(var l=Math.min(n.length,i.length),o=0;o{"use strict";function CX(e,r){var t=e%r;return t<0?t+r:t}function LX(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}M6.exports={mod:CX,modHalf:LX}});var Nn=O((gme,yh)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,l=e.max,o=e.random;function s(U,Q){if(U=U||"",Q=Q||{},U instanceof s)return U;if(!(this instanceof s))return new s(U,Q);var X=u(U);this._originalInput=U,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=Q.format||X.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=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 U=this.toRgb();return(U.r*299+U.g*587+U.b*114)/1e3},getLuminance:function(){var U=this.toRgb(),Q,X,ge,Te,ye,ze;return Q=U.r/255,X=U.g/255,ge=U.b/255,Q<=.03928?Te=Q/12.92:Te=e.pow((Q+.055)/1.055,2.4),X<=.03928?ye=X/12.92:ye=e.pow((X+.055)/1.055,2.4),ge<=.03928?ze=ge/12.92:ze=e.pow((ge+.055)/1.055,2.4),.2126*Te+.7152*ye+.0722*ze},setAlpha:function(U){return this._a=B(U),this._roundA=n(100*this._a)/100,this},toHsv:function(){var U=d(this._r,this._g,this._b);return{h:U.h*360,s:U.s,v:U.v,a:this._a}},toHsvString:function(){var U=d(this._r,this._g,this._b),Q=n(U.h*360),X=n(U.s*100),ge=n(U.v*100);return this._a==1?"hsv("+Q+", "+X+"%, "+ge+"%)":"hsva("+Q+", "+X+"%, "+ge+"%, "+this._roundA+")"},toHsl:function(){var U=c(this._r,this._g,this._b);return{h:U.h*360,s:U.s,l:U.l,a:this._a}},toHslString:function(){var U=c(this._r,this._g,this._b),Q=n(U.h*360),X=n(U.s*100),ge=n(U.l*100);return this._a==1?"hsl("+Q+", "+X+"%, "+ge+"%)":"hsla("+Q+", "+X+"%, "+ge+"%, "+this._roundA+")"},toHex:function(U){return m(this._r,this._g,this._b,U)},toHexString:function(U){return"#"+this.toHex(U)},toHex8:function(U){return y(this._r,this._g,this._b,this._a,U)},toHex8String:function(U){return"#"+this.toHex8(U)},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[m(this._r,this._g,this._b,!0)]||!1},toFilter:function(U){var Q="#"+b(this._r,this._g,this._b,this._a),X=Q,ge=this._gradientType?"GradientType = 1, ":"";if(U){var Te=s(U);X="#"+b(Te._r,Te._g,Te._b,Te._a)}return"progid:DXImageTransform.Microsoft.gradient("+ge+"startColorstr="+Q+",endColorstr="+X+")"},toString:function(U){var Q=!!U;U=U||this._format;var X=!1,ge=this._a<1&&this._a>=0,Te=!Q&&ge&&(U==="hex"||U==="hex6"||U==="hex3"||U==="hex4"||U==="hex8"||U==="name");return Te?U==="name"&&this._a===0?this.toName():this.toRgbString():(U==="rgb"&&(X=this.toRgbString()),U==="prgb"&&(X=this.toPercentageRgbString()),(U==="hex"||U==="hex6")&&(X=this.toHexString()),U==="hex3"&&(X=this.toHexString(!0)),U==="hex4"&&(X=this.toHex8String(!0)),U==="hex8"&&(X=this.toHex8String()),U==="name"&&(X=this.toName()),U==="hsl"&&(X=this.toHslString()),U==="hsv"&&(X=this.toHsvString()),X||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(U,Q){var X=U.apply(null,[this].concat([].slice.call(Q)));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(k,arguments)},darken:function(){return this._applyModification(A,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(C,arguments)},_applyCombination:function(U,Q){return U.apply(null,[this].concat([].slice.call(Q)))},analogous:function(){return this._applyCombination(I,arguments)},complement:function(){return this._applyCombination(D,arguments)},monochromatic:function(){return this._applyCombination(H,arguments)},splitcomplement:function(){return this._applyCombination(N,arguments)},triad:function(){return this._applyCombination(E,arguments)},tetrad:function(){return this._applyCombination(R,arguments)}},s.fromRatio=function(U,Q){if(typeof U=="object"){var X={};for(var ge in U)U.hasOwnProperty(ge)&&(ge==="a"?X[ge]=U[ge]:X[ge]=ve(U[ge]));U=X}return s(U,Q)};function u(U){var Q={r:0,g:0,b:0},X=1,ge=null,Te=null,ye=null,ze=!1,Ie=!1;return typeof U=="string"&&(U=ce(U)),typeof U=="object"&&(be(U.r)&&be(U.g)&&be(U.b)?(Q=f(U.r,U.g,U.b),ze=!0,Ie=String(U.r).substr(-1)==="%"?"prgb":"rgb"):be(U.h)&&be(U.s)&&be(U.v)?(ge=ve(U.s),Te=ve(U.v),Q=p(U.h,ge,Te),ze=!0,Ie="hsv"):be(U.h)&&be(U.s)&&be(U.l)&&(ge=ve(U.s),ye=ve(U.l),Q=h(U.h,ge,ye),ze=!0,Ie="hsl"),U.hasOwnProperty("a")&&(X=U.a)),X=B(X),{ok:ze,format:U.format||Ie,r:i(255,l(Q.r,0)),g:i(255,l(Q.g,0)),b:i(255,l(Q.b,0)),a:X}}function f(U,Q,X){return{r:V(U,255)*255,g:V(Q,255)*255,b:V(X,255)*255}}function c(U,Q,X){U=V(U,255),Q=V(Q,255),X=V(X,255);var ge=l(U,Q,X),Te=i(U,Q,X),ye,ze,Ie=(ge+Te)/2;if(ge==Te)ye=ze=0;else{var Ee=ge-Te;switch(ze=Ie>.5?Ee/(2-ge-Te):Ee/(ge+Te),ge){case U:ye=(Q-X)/Ee+(Q1&&(Ue-=1),Ue<1/6?Fe+(Be-Fe)*6*Ue:Ue<1/2?Be:Ue<2/3?Fe+(Be-Fe)*(2/3-Ue)*6:Fe}if(Q===0)ge=Te=ye=X;else{var Ie=X<.5?X*(1+Q):X+Q-X*Q,Ee=2*X-Ie;ge=ze(Ee,Ie,U+1/3),Te=ze(Ee,Ie,U),ye=ze(Ee,Ie,U-1/3)}return{r:ge*255,g:Te*255,b:ye*255}}function d(U,Q,X){U=V(U,255),Q=V(Q,255),X=V(X,255);var ge=l(U,Q,X),Te=i(U,Q,X),ye,ze,Ie=ge,Ee=ge-Te;if(ze=ge===0?0:Ee/ge,ge==Te)ye=0;else{switch(ge){case U:ye=(Q-X)/Ee+(Q>1)+720)%360;--Q;)ge.h=(ge.h+Te)%360,ye.push(s(ge));return ye}function H(U,Q){Q=Q||6;for(var X=s(U).toHsv(),ge=X.h,Te=X.s,ye=X.v,ze=[],Ie=1/Q;Q--;)ze.push(s({h:ge,s:Te,v:ye})),ye=(ye+Ie)%1;return ze}s.mix=function(U,Q,X){X=X===0?0:X||50;var ge=s(U).toRgb(),Te=s(Q).toRgb(),ye=X/100,ze={r:(Te.r-ge.r)*ye+ge.r,g:(Te.g-ge.g)*ye+ge.g,b:(Te.b-ge.b)*ye+ge.b,a:(Te.a-ge.a)*ye+ge.a};return s(ze)},s.readability=function(U,Q){var X=s(U),ge=s(Q);return(e.max(X.getLuminance(),ge.getLuminance())+.05)/(e.min(X.getLuminance(),ge.getLuminance())+.05)},s.isReadable=function(U,Q,X){var ge=s.readability(U,Q),Te,ye;switch(ye=!1,Te=xe(X),Te.level+Te.size){case"AAsmall":case"AAAlarge":ye=ge>=4.5;break;case"AAlarge":ye=ge>=3;break;case"AAAsmall":ye=ge>=7;break}return ye},s.mostReadable=function(U,Q,X){var ge=null,Te=0,ye,ze,Ie,Ee;X=X||{},ze=X.includeFallbackColors,Ie=X.level,Ee=X.size;for(var Fe=0;FeTe&&(Te=ye,ge=s(Q[Fe]));return s.isReadable(U,ge,{level:Ie,size:Ee})||!ze?ge:(X.includeFallbackColors=!1,s.mostReadable(U,["#fff","#000"],X))};var G=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=Y(G);function Y(U){var Q={};for(var X in U)U.hasOwnProperty(X)&&(Q[U[X]]=X);return Q}function B(U){return U=parseFloat(U),(isNaN(U)||U<0||U>1)&&(U=1),U}function V(U,Q){re(U)&&(U="100%");var X=le(U);return U=i(Q,l(0,parseFloat(U))),X&&(U=parseInt(U*Q,10)/100),e.abs(U-Q)<1e-6?1:U%Q/parseFloat(Q)}function K(U){return i(1,l(0,U))}function J(U){return parseInt(U,16)}function re(U){return typeof U=="string"&&U.indexOf(".")!=-1&&parseFloat(U)===1}function le(U){return typeof U=="string"&&U.indexOf("%")!=-1}function ue(U){return U.length==1?"0"+U:""+U}function ve(U){return U<=1&&(U=U*100+"%"),U}function j(U){return e.round(parseFloat(U)*255).toString(16)}function qe(U){return J(U)/255}var fe=function(){var U="[-\\+]?\\d+%?",Q="[-\\+]?\\d*\\.\\d+%?",X="(?:"+Q+")|(?:"+U+")",ge="[\\s|\\(]+("+X+")[,|\\s]+("+X+")[,|\\s]+("+X+")\\s*\\)?",Te="[\\s|\\(]+("+X+")[,|\\s]+("+X+")[,|\\s]+("+X+")[,|\\s]+("+X+")\\s*\\)?";return{CSS_UNIT:new RegExp(X),rgb:new RegExp("rgb"+ge),rgba:new RegExp("rgba"+Te),hsl:new RegExp("hsl"+ge),hsla:new RegExp("hsla"+Te),hsv:new RegExp("hsv"+ge),hsva:new RegExp("hsva"+Te),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(U){return!!fe.CSS_UNIT.exec(U)}function ce(U){U=U.replace(r,"").replace(t,"").toLowerCase();var Q=!1;if(G[U])U=G[U],Q=!0;else if(U=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var X;return(X=fe.rgb.exec(U))?{r:X[1],g:X[2],b:X[3]}:(X=fe.rgba.exec(U))?{r:X[1],g:X[2],b:X[3],a:X[4]}:(X=fe.hsl.exec(U))?{h:X[1],s:X[2],l:X[3]}:(X=fe.hsla.exec(U))?{h:X[1],s:X[2],l:X[3],a:X[4]}:(X=fe.hsv.exec(U))?{h:X[1],s:X[2],v:X[3]}:(X=fe.hsva.exec(U))?{h:X[1],s:X[2],v:X[3],a:X[4]}:(X=fe.hex8.exec(U))?{r:J(X[1]),g:J(X[2]),b:J(X[3]),a:qe(X[4]),format:Q?"name":"hex8"}:(X=fe.hex6.exec(U))?{r:J(X[1]),g:J(X[2]),b:J(X[3]),format:Q?"name":"hex"}:(X=fe.hex4.exec(U))?{r:J(X[1]+""+X[1]),g:J(X[2]+""+X[2]),b:J(X[3]+""+X[3]),a:qe(X[4]+""+X[4]),format:Q?"name":"hex8"}:(X=fe.hex3.exec(U))?{r:J(X[1]+""+X[1]),g:J(X[2]+""+X[2]),b:J(X[3]+""+X[3]),format:Q?"name":"hex"}:!1}function xe(U){var Q,X;return U=U||{level:"AA",size:"small"},Q=(U.level||"AA").toUpperCase(),X=(U.size||"small").toLowerCase(),Q!=="AA"&&Q!=="AAA"&&(Q="AA"),X!=="small"&&X!=="large"&&(X="small"),{level:Q,size:X}}typeof yh!="undefined"&&yh.exports?yh.exports=s:window.tinycolor=s})(Math)});var mt=O(_c=>{"use strict";var A6=Pl(),xc=Array.isArray;function DX(e,r){var t,a;for(t=0;t{"use strict";k6.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 wc=O((_me,q6)=>{"use strict";q6.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var pu=O((wme,L6)=>{"use strict";var S6=wc(),C6=aa(),Ry=C6({editType:"none"});Ry.family.dflt=S6.HOVERFONT;Ry.size.dflt=S6.HOVERFONTSIZE;L6.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:Ry,grouptitlefont:C6({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var Ac=O((Tme,D6)=>{"use strict";var EX=aa(),Tc=pu().hoverlabel,Mc=mt().extendFlat;D6.exports={hoverlabel:{bgcolor:Mc({},Tc.bgcolor,{arrayOk:!0}),bordercolor:Mc({},Tc.bordercolor,{arrayOk:!0}),font:EX({arrayOk:!0,editType:"none"}),align:Mc({},Tc.align,{arrayOk:!0}),namelength:Mc({},Tc.namelength,{arrayOk:!0}),showarrow:Mc({},Tc.showarrow),editType:"none"}}});var tn=O((Mme,E6)=>{"use strict";var PX=aa(),RX=Ac();E6.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:PX({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:RX.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 Bo=O((Ame,z6)=>{"use strict";var zX=Nn(),gh={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)"]]},P6=gh.RdBu;function NX(e,r){if(r||(r=P6),!e)return r;function t(){try{e=gh[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),R6(e)?e:r}function R6(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";Yo.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];Yo.defaultLine="#444";Yo.lightLine="#eee";Yo.background="#fff";Yo.borderLine="#BEC8D9";Yo.lightFraction=100*10/11});var xr=O((qme,N6)=>{"use strict";var an=Nn(),IX=zr(),HX=yn().isTypedArray,na=N6.exports={},xh=Fn();na.defaults=xh.defaults;var OX=na.defaultLine=xh.defaultLine;na.lightLine=xh.lightLine;var Ny=na.background=xh.background;na.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};na.rgb=function(e){return na.tinyRGB(an(e))};na.opacity=function(e){return e?an(e).getAlpha():0};na.addOpacity=function(e,r){var t=an(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};na.combine=function(e,r){var t=an(e).toRgb();if(t.a===1)return an(e).toRgbString();var a=an(r||Ny).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()};na.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()};na.contrast=function(e,r,t){var a=an(e);a.getAlpha()!==1&&(a=an(na.combine(e,Ny)));var n=a.isDark()?r?a.lighten(r):Ny:t?a.darken(t):OX;return n.toString()};na.stroke=function(e,r){var t=an(r);e.style({stroke:na.tinyRGB(t),"stroke-opacity":t.getAlpha()})};na.fill=function(e,r){var t=an(r);e.style({fill:na.tinyRGB(t),"fill-opacity":t.getAlpha()})};na.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 mu=O((Sme,F6)=>{"use strict";F6.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var yu=O(I6=>{"use strict";I6.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 Y6=O(nn=>{"use strict";var Fy=zr(),H6=Nn(),O6=mt().extendFlat,BX=tn(),YX=Bo(),VX=xr(),GX=mu().DESELECTDIM,gu=dh(),B6=yu().counter,UX=du().modHalf,Ni=yn().isArrayOrTypedArray,Rl=yn().isTypedArraySpec,zl=yn().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||!Fy(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)),H6(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return H6(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(YX.get(e,t))}},angle:{coerceFunction:function(e,r,t){Rl(e)&&(e=zl(e)),e==="auto"?r.set("auto"):Fy(e)?r.set(UX(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||B6(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:!!B6(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 V6={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/un/"},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:{}}},G6={};function U6(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),U6(a,r[t]))}}U6(V6,G6);W6.exports={configAttributes:V6,dfltConfig:G6}});var Hy=O((Eme,X6)=>{"use strict";var Iy=kr(),WX=zr(),kc=[];X6.exports=function(e,r){if(kc.indexOf(e)!==-1)return;kc.push(e);var t=1e3;WX(r)?t=r:r==="long"&&(t=3e3);var a=Iy.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(kc);function i(l){l.duration(700).style("opacity",0).each("end",function(o){var s=kc.indexOf(o);s!==-1&&kc.splice(s,1),Iy.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(l){var o=Iy.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 xu=Vo().dfltConfig,Oy=Hy(),By=Z6.exports={};By.log=function(){var e;if(xu.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};By.warn=function(){var e;if(xu.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};By.error=function(){var e;if(xu.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var _h=O((Rme,J6)=>{"use strict";J6.exports=function(){}});var Yy=O((zme,$6)=>{"use strict";$6.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{K6.exports=XX;function XX(){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 e7=O((Fme,j6)=>{j6.exports=ZX;function ZX(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 t7=O((Ime,r7)=>{r7.exports=JX;function JX(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 Vy=O((Hme,a7)=>{a7.exports=$X;function $X(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 i7=O((Ome,n7)=>{n7.exports=KX;function KX(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 o7=O((Bme,l7)=>{l7.exports=QX;function QX(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],m=r[13],y=r[14],b=r[15],_=t*o-a*l,T=t*s-n*l,x=t*u-i*l,M=a*s-n*o,k=a*u-i*o,A=n*u-i*s,C=f*m-c*p,D=f*y-h*p,E=f*b-d*p,R=c*y-h*m,N=c*b-d*m,I=h*b-d*y,H=_*I-T*N+x*R+M*E-k*D+A*C;return H?(H=1/H,e[0]=(o*I-s*N+u*R)*H,e[1]=(n*N-a*I-i*R)*H,e[2]=(m*A-y*k+b*M)*H,e[3]=(h*k-c*A-d*M)*H,e[4]=(s*E-l*I-u*D)*H,e[5]=(t*I-n*E+i*D)*H,e[6]=(y*x-p*A-b*T)*H,e[7]=(f*A-h*x+d*T)*H,e[8]=(l*N-o*E+u*C)*H,e[9]=(a*E-t*N-i*C)*H,e[10]=(p*k-m*x+b*_)*H,e[11]=(c*x-f*k-d*_)*H,e[12]=(o*D-l*R-s*C)*H,e[13]=(t*R-a*D+n*C)*H,e[14]=(m*T-p*M-y*_)*H,e[15]=(f*M-c*T+h*_)*H,e):null}});var u7=O((Yme,s7)=>{s7.exports=jX;function jX(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],m=r[13],y=r[14],b=r[15];return e[0]=o*(h*b-d*y)-c*(s*b-u*y)+m*(s*d-u*h),e[1]=-(a*(h*b-d*y)-c*(n*b-i*y)+m*(n*d-i*h)),e[2]=a*(s*b-u*y)-o*(n*b-i*y)+m*(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*y)-f*(s*b-u*y)+p*(s*d-u*h)),e[5]=t*(h*b-d*y)-f*(n*b-i*y)+p*(n*d-i*h),e[6]=-(t*(s*b-u*y)-l*(n*b-i*y)+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*m)-f*(o*b-u*m)+p*(o*d-u*c),e[9]=-(t*(c*b-d*m)-f*(a*b-i*m)+p*(a*d-i*c)),e[10]=t*(o*b-u*m)-l*(a*b-i*m)+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*y-h*m)-f*(o*y-s*m)+p*(o*h-s*c)),e[13]=t*(c*y-h*m)-f*(a*y-n*m)+p*(a*h-n*c),e[14]=-(t*(o*y-s*m)-l*(a*y-n*m)+p*(a*s-n*o)),e[15]=t*(o*h-s*c)-l*(a*h-n*c)+f*(a*s-n*o),e}});var c7=O((Vme,f7)=>{f7.exports=eZ;function eZ(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],m=e[14],y=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,k=a*s-n*o,A=u*p-f*d,C=u*m-c*d,D=u*y-h*d,E=f*m-c*p,R=f*y-h*p,N=c*y-h*m;return b*N-_*R+T*E+x*D-M*C+k*A}});var h7=O((Gme,v7)=>{v7.exports=rZ;function rZ(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],m=r[12],y=r[13],b=r[14],_=r[15],T=t[0],x=t[1],M=t[2],k=t[3];return e[0]=T*a+x*o+M*c+k*m,e[1]=T*n+x*s+M*h+k*y,e[2]=T*i+x*u+M*d+k*b,e[3]=T*l+x*f+M*p+k*_,T=t[4],x=t[5],M=t[6],k=t[7],e[4]=T*a+x*o+M*c+k*m,e[5]=T*n+x*s+M*h+k*y,e[6]=T*i+x*u+M*d+k*b,e[7]=T*l+x*f+M*p+k*_,T=t[8],x=t[9],M=t[10],k=t[11],e[8]=T*a+x*o+M*c+k*m,e[9]=T*n+x*s+M*h+k*y,e[10]=T*i+x*u+M*d+k*b,e[11]=T*l+x*f+M*p+k*_,T=t[12],x=t[13],M=t[14],k=t[15],e[12]=T*a+x*o+M*c+k*m,e[13]=T*n+x*s+M*h+k*y,e[14]=T*i+x*u+M*d+k*b,e[15]=T*l+x*f+M*p+k*_,e}});var p7=O((Ume,d7)=>{d7.exports=tZ;function tZ(e,r,t){var a=t[0],n=t[1],i=t[2],l,o,s,u,f,c,h,d,p,m,y,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],m=r[9],y=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]=m,e[10]=y,e[11]=b,e[12]=l*a+f*n+p*i+r[12],e[13]=o*a+c*n+m*i+r[13],e[14]=s*a+h*n+y*i+r[14],e[15]=u*a+d*n+b*i+r[15]),e}});var y7=O((Wme,m7)=>{m7.exports=aZ;function aZ(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 x7=O((Xme,g7)=>{g7.exports=nZ;function nZ(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,m,y,b,_,T,x,M,k,A,C,D,E,R,N,I,H,G;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],m=r[4],y=r[5],b=r[6],_=r[7],T=r[8],x=r[9],M=r[10],k=r[11],A=n*n*f+u,C=i*n*f+l*s,D=l*n*f-i*s,E=n*i*f-l*s,R=i*i*f+u,N=l*i*f+n*s,I=n*l*f+i*s,H=i*l*f-n*s,G=l*l*f+u,e[0]=c*A+m*C+T*D,e[1]=h*A+y*C+x*D,e[2]=d*A+b*C+M*D,e[3]=p*A+_*C+k*D,e[4]=c*E+m*R+T*N,e[5]=h*E+y*R+x*N,e[6]=d*E+b*R+M*N,e[7]=p*E+_*R+k*N,e[8]=c*I+m*H+T*G,e[9]=h*I+y*H+x*G,e[10]=d*I+b*H+M*G,e[11]=p*I+_*H+k*G,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var _7=O((Zme,b7)=>{b7.exports=iZ;function iZ(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 T7=O((Jme,w7)=>{w7.exports=lZ;function lZ(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 A7=O(($me,M7)=>{M7.exports=oZ;function oZ(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 q7=O((Kme,k7)=>{k7.exports=sZ;function sZ(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 C7=O((Qme,S7)=>{S7.exports=uZ;function uZ(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,m=i*u,y=l*o,b=l*s,_=l*u;return e[0]=1-(d+m),e[1]=c+_,e[2]=h-b,e[3]=0,e[4]=c-_,e[5]=1-(f+m),e[6]=p+y,e[7]=0,e[8]=h+b,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 D7=O((jme,L7)=>{L7.exports=fZ;function fZ(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 P7=O((eye,E7)=>{E7.exports=cZ;function cZ(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 z7=O((rye,R7)=>{R7.exports=vZ;function vZ(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 F7=O((tye,N7)=>{N7.exports=hZ;function hZ(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 H7=O((aye,I7)=>{I7.exports=dZ;function dZ(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 B7=O((nye,O7)=>{O7.exports=pZ;function pZ(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,m=i*l,y=i*o,b=i*s;return e[0]=1-c-p,e[1]=f+b,e[2]=h-y,e[3]=0,e[4]=f-b,e[5]=1-u-p,e[6]=d+m,e[7]=0,e[8]=h+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 V7=O((iye,Y7)=>{Y7.exports=mZ;function mZ(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 U7=O((lye,G7)=>{G7.exports=yZ;function yZ(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 X7=O((oye,W7)=>{W7.exports=gZ;function gZ(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 J7=O((sye,Z7)=>{Z7.exports=xZ;function xZ(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 K7=O((uye,$7)=>{var bZ=Vy();$7.exports=_Z;function _Z(e,r,t,a){var n,i,l,o,s,u,f,c,h,d,p=r[0],m=r[1],y=r[2],b=a[0],_=a[1],T=a[2],x=t[0],M=t[1],k=t[2];return Math.abs(p-x)<1e-6&&Math.abs(m-M)<1e-6&&Math.abs(y-k)<1e-6?bZ(e):(f=p-x,c=m-M,h=y-k,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*m+l*y),e[13]=-(o*p+s*m+u*y),e[14]=-(f*p+c*m+h*y),e[15]=1,e)}});var j7=O((fye,Q7)=>{Q7.exports=wZ;function wZ(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=O((cye,ew)=>{ew.exports={create:Q6(),clone:e7(),copy:t7(),identity:Vy(),transpose:i7(),invert:o7(),adjoint:u7(),determinant:c7(),multiply:h7(),translate:p7(),scale:y7(),rotate:x7(),rotateX:_7(),rotateY:T7(),rotateZ:A7(),fromRotation:q7(),fromRotationTranslation:C7(),fromScaling:D7(),fromTranslation:P7(),fromXRotation:z7(),fromYRotation:F7(),fromZRotation:H7(),fromQuat:B7(),frustum:V7(),perspective:U7(),perspectiveFromFieldOfView:X7(),ortho:J7(),lookAt:K7(),str:j7()}});var wh=O(Bt=>{"use strict";var TZ=Gy();Bt.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var MZ=kr(),rw=Go(),AZ=wh(),kZ=Gy();function qZ(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 SZ(e){var r=MZ.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function tw(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function CZ(e,r){aw("global",e,r)}function aw(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):rw.warn("addStyleRule failed"):rw.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function LZ(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&tw(t)}function DZ(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 EZ(e){var r=iw(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=nw(a);if(n){var i=AZ.convertCssMatrix(n);t=kZ.multiply(t,t,i)}}),t}function nw(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 iw(e){for(var r=[];PZ(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function PZ(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function RZ(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}lw.exports={getGraphDiv:qZ,isPlotDiv:SZ,removeElement:tw,addStyleRule:CZ,addRelatedStyleRule:aw,deleteRelatedStyleRule:LZ,setStyleOnHover:DZ,getFullTransformMatrix:EZ,getElementTransformMatrix:nw,getElementAndAncestors:iw,equalDomRects:RZ}});var Sc=O((dye,ow)=>{"use strict";ow.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=O((pye,dw)=>{"use strict";var uw=mt().extendFlat,zZ=Pl(),fw={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},cw={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},NZ=fw.flags.slice().concat(["fullReplot"]),FZ=cw.flags.slice().concat("layoutReplot");dw.exports={traces:fw,layout:cw,traceFlags:function(){return sw(NZ)},layoutFlags:function(){return sw(FZ)},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"},path:{valType:"string",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 Wy=O((yye,pw)=>{"use strict";pw.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 gn=O(bu=>{"use strict";var{DATE_FORMAT_LINK:IZ,FORMAT_LINK:HZ}=Wy(),OZ=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function BZ({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,HZ,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,IZ,"for details on the date formatting syntax.",OZ].join(" ")}bu.templateFormatStringDescription=BZ;bu.hovertemplateAttrs=({editType:e="none",arrayOk:r}={},t={})=>Ho({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});bu.texttemplateAttrs=({editType:e="calc",arrayOk:r}={},t={})=>Ho({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});bu.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:r}={},t={})=>({valType:"string",dflt:"",editType:e});bu.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var Ah=O((bye,_w)=>{"use strict";function Nl(e,r){return r?r.d2l(e):e}function mw(e,r){return r?r.l2d(e):e}function YZ(e){return e.x0}function VZ(e){return e.x1}function GZ(e){return e.y0}function UZ(e){return e.y1}function yw(e){return e.x0shift||0}function gw(e){return e.x1shift||0}function xw(e){return e.y0shift||0}function bw(e){return e.y1shift||0}function Th(e,r){return Nl(e.x1,r)+gw(e)-Nl(e.x0,r)-yw(e)}function Mh(e,r,t){return Nl(e.y1,t)+bw(e)-Nl(e.y0,t)-xw(e)}function WZ(e,r){return Math.abs(Th(e,r))}function XZ(e,r,t){return Math.abs(Mh(e,r,t))}function ZZ(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(Th(e,r),2)+Math.pow(Mh(e,r,t),2))}function JZ(e,r){return mw((Nl(e.x1,r)+gw(e)+Nl(e.x0,r)+yw(e))/2,r)}function $Z(e,r,t){return mw((Nl(e.y1,t)+bw(e)+Nl(e.y0,t)+xw(e))/2,t)}function KZ(e,r,t){return e.type!=="line"?void 0:Mh(e,r,t)/Th(e,r)}_w.exports={x0:YZ,x1:VZ,y0:GZ,y1:UZ,slope:KZ,dx:Th,dy:Mh,width:WZ,height:XZ,length:ZZ,xcenter:JZ,ycenter:$Z}});var Mw=O((_ye,Tw)=>{"use strict";var QZ=ui().overrideAll,Uo=tn(),ww=aa(),jZ=fi().dash,Fl=mt().extendFlat,{shapeTexttemplateAttrs:eJ,templatefallbackAttrs:rJ}=gn(),tJ=Ah();Tw.exports=QZ({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:ww({})},legendrank:Fl({},Uo.legendrank,{}),legendwidth:Fl({},Uo.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Fl({},jZ,{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:eJ({newshape:!0},{keys:Object.keys(tJ)}),texttemplatefallback:rJ({editType:"arraydraw"}),font:ww({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var kw=O((wye,Aw)=>{"use strict";var aJ=fi().dash,nJ=mt().extendFlat;Aw.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:nJ({},aJ,{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 kh=O((Tye,qw)=>{"use strict";qw.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 _u=O((Mye,Dw)=>{"use strict";var Xy=aa(),iJ=Sc(),qh=Fn(),Sw=Mw(),Cw=kw(),lJ=kh(),Lw=mt().extendFlat,Sh=Xy({editType:"calc"});Sh.family.dflt='"Open Sans", verdana, arial, sans-serif';Sh.size.dflt=12;Sh.color.dflt=qh.defaultLine;Dw.exports={font:Sh,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:Lw(lJ({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:qh.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:qh.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:qh.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:Sw.newshape,activeshape:Sw.activeshape,newselection:Cw.newselection,activeselection:Cw.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:Lw({},iJ.transition,{editType:"none"})}});var Ew=O(()=>{(function(){if(!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")){var e=document.createElement("style");e.id="ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var gr=O(Fr=>{"use strict";var wu=Go(),Pw=_h(),Rw=Yy(),oJ=Pl(),sJ=qc().addStyleRule,zw=mt(),uJ=tn(),fJ=_u(),cJ=zw.extendFlat,Zy=zw.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 yJ=vu().timeFormat,Ww=zr(),Jy=Go(),Hl=du().mod,Au=wt(),In=Au.BADNUM,ln=Au.ONEDAY,Cc=Au.ONEHOUR,Il=Au.ONEMIN,Mu=Au.ONESEC,Lc=Au.EPOCHJD,il=gr(),Ow=vu().utcFormat,gJ=/^\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,xJ=/^\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,Bw=new Date().getFullYear()-70;function ll(e){return e&&il.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Yt.dateTick0=function(e,r){var t=bJ(e,!!r);if(r<2)return t;var a=Yt.dateTime2ms(t,e);return a+=ln*(r-1),Yt.ms2DateTime(a,0,e)};function bJ(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"}Yt.dfltRange=function(e){return ll(e)?il.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Yt.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Lh,Dh;Yt.dateTime2ms=function(e,r){if(Yt.isJSDate(e)){var t=e.getTimezoneOffset()*Il,a=(e.getUTCMinutes()-e.getMinutes())*Il+(e.getUTCSeconds()-e.getSeconds())*Mu+(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>=Lh&&e<=Dh?e:In}if(typeof e!="string"&&typeof e!="number")return In;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?xJ:gJ);if(!s)return In;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 In;u=Number(u);var m;try{var y=il.getComponentMethod("calendars","getCal")(r);if(o){var b=f.charAt(f.length-1)==="i";f=parseInt(f,10),m=y.newDate(u,y.toMonthIndex(u,f,b),c)}else m=y.newDate(u,Number(f),c)}catch(T){return In}return m?(m.toJD()-Lc)*ln+h*Cc+d*Il+p*Mu:In}u.length===2?u=(Number(u)+2e3-Bw)%100+Bw:u=Number(u),f-=1;var _=new Date(Date.UTC(2e3,f,c,h,d));return _.setUTCFullYear(u),_.getUTCMonth()!==f||_.getUTCDate()!==c?In:_.getTime()+p*Mu};Lh=Yt.MIN_MS=Yt.dateTime2ms("-9999");Dh=Yt.MAX_MS=Yt.dateTime2ms("9999-12-31 23:59:59.9999");Yt.isDateTime=function(e,r){return Yt.dateTime2ms(e,r)!==In};function Tu(e,r){return String(e+Math.pow(10,r)).substr(1)}var Ch=90*ln,Yw=3*Cc,Vw=5*Il;Yt.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Lh&&e<=Dh))return In;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)+Lc,h=Math.floor(Hl(e,ln));try{i=il.getComponentMethod("calendars","getCal")(t).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){i=Ow("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=Lh+ln&&e<=Dh-ln))return In;var r=Math.floor(Hl(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=yJ("%Y-%m-%d")(t),n=t.getHours(),i=t.getMinutes(),l=t.getSeconds(),o=t.getUTCMilliseconds()*10+r;return Xw(a,n,i,l,o)};function Xw(e,r,t,a,n){if((r||t||a||n)&&(e+=" "+Tu(r,2)+":"+Tu(t,2),(a||n)&&(e+=":"+Tu(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+Tu(n,i)}return e}Yt.cleanDate=function(e,r,t){if(e===In)return r;if(Yt.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=Yt.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!Yt.isDateTime(e,t))return Jy.error("unrecognized date",e),r;return e};var _J=/%\d?f/g,wJ=/%h/g,TJ={1:"1",2:"1",3:"2",4:"2"};function Gw(e,r,t,a){e=e.replace(_J,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(wJ,function(){return TJ[t("%q")(n)]}),ll(a))try{e=il.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var MJ=[59,59.9,59.99,59.999,59.9999];function AJ(e,r){var t=Hl(e+.05,ln),a=Tu(Math.floor(t/Cc),2)+":"+Tu(Hl(Math.floor(t/Il),60),2);if(r!=="M"){Ww(r)||(r=0);var n=Math.min(Hl(e/Mu,60),MJ[r]),i=(100+n).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}Yt.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+` -`+i.year;else return AJ(e,t)+` -`+Gw(i.dayMonthYear,e,a,n);return Gw(r,e,a,n)};var Uw=3*ln;Yt.incrementMonth=function(e,r,t){t=ll(t)&&t;var a=Hl(e,ln);if(e=Math.round(e-a),t)try{var n=Math.round(e/ln)+Lc,i=il.getComponentMethod("calendars","getCal")(t),l=i.fromJD(n);return r%12?i.add(l,r,"m"):i.add(l,r/12,"y"),(l.toJD()-Lc)*ln+a}catch(s){Jy.error("invalid ms "+e+" in calendar "+t)}var o=new Date(e+Uw);return o.setUTCMonth(o.getUTCMonth()+r)+a-Uw};Yt.findExactDates=function(e,r){for(var t=0,a=0,n=0,i=0,l,o,s=ll(r)&&il.getComponentMethod("calendars","getCal")(r),u=0;u{"use strict";Jw.exports=function(r){return r}});var Qy=O(ol=>{"use strict";var kJ=zr(),qJ=Go(),SJ=$y(),CJ=wt().BADNUM,Ky=1e-9;ol.findBin=function(e,r,t){if(kJ(r.start))return t?Math.ceil((e-r.start)/r.size-Ky)-1:Math.floor((e-r.start)/r.size+Ky);var a=0,n=r.length,i=0,l=n>1?(r[n-1]-r[0])/(n-1):1,o,s;for(l>=0?s=t?LJ:DJ:s=t?PJ:EJ,e+=l*Ky*(t?-1:1)*(l>=0?1:-1);a90&&qJ.log("Long binary search..."),a-1};function LJ(e,r){return er}function PJ(e,r){return e>=r}ol.sorterAsc=function(e,r){return e-r};ol.sorterDes=function(e,r){return r-e};ol.distinctVals=function(e){var r=e.slice();r.sort(ol.sorterAsc);var t;for(t=r.length-1;t>-1&&r[t]===CJ;t--);for(var a=r[t]-r[0]||1,n=a/(t||1)/1e4,i=[],l,o=0;o<=t;o++){var s=r[o],u=s-l;l===void 0?(i.push(s),l=s):u>n&&(a=Math.min(a,u),i.push(s),l=s)}return{vals:i,minDiff:a}};ol.roundUp=function(e,r,t){for(var a=0,n=r.length-1,i,l=0,o=t?0:1,s=t?1:0,u=t?Math.ceil:Math.floor;a0&&(a=1),t&&a)return e.sort(r)}return a?e:e.reverse()};ol.findIndexOfMin=function(e,r){r=r||SJ;for(var t=1/0,a,n=0;n{"use strict";$w.exports=function(r){return Object.keys(r).sort()}});var Kw=O(Vt=>{"use strict";var Dc=zr(),RJ=yn().isArrayOrTypedArray;Vt.aggNums=function(e,r,t,a){var n,i;if((!a||a>t.length)&&(a=t.length),Dc(r)||(r=!1),RJ(t[0])){for(i=new Array(a),n=0;ne.length-1)return e[e.length-1];var t=r%1;return t*e[Math.ceil(r)]+(1-t)*e[Math.floor(r)]}});var t8=O((Pye,r8)=>{"use strict";var Qw=du(),eg=Qw.mod,zJ=Qw.modHalf,Ec=Math.PI,Ol=2*Ec;function NJ(e){return e/180*Ec}function FJ(e){return e/Ec*180}function rg(e){return Math.abs(e[1]-e[0])>Ol-1e-14}function jw(e,r){return zJ(r-e,Ol)}function IJ(e,r){return Math.abs(jw(e,r))}function e8(e,r){if(rg(r))return!0;var t,a;r[0]a&&(a+=Ol);var n=eg(e,Ol),i=n+Ol;return n>=t&&n<=a||i>=t&&i<=a}function HJ(e,r,t,a){if(!e8(r,a))return!1;var n,i;return t[0]=n&&e<=i}function tg(e,r,t,a,n,i,l){n=n||0,i=i||0;var o=rg([t,a]),s,u,f,c,h;o?(s=0,u=Ec,f=Ol):t{"use strict";Wo.isLeftAnchor=function(r){return r.xanchor==="left"||r.xanchor==="auto"&&r.x<=1/3};Wo.isCenterAnchor=function(r){return r.xanchor==="center"||r.xanchor==="auto"&&r.x>1/3&&r.x<2/3};Wo.isRightAnchor=function(r){return r.xanchor==="right"||r.xanchor==="auto"&&r.x>=2/3};Wo.isTopAnchor=function(r){return r.yanchor==="top"||r.yanchor==="auto"&&r.y>=2/3};Wo.isMiddleAnchor=function(r){return r.yanchor==="middle"||r.yanchor==="auto"&&r.y>1/3&&r.y<2/3};Wo.isBottomAnchor=function(r){return r.yanchor==="bottom"||r.yanchor==="auto"&&r.y<=1/3}});var l8=O(Xo=>{"use strict";var ag=du().mod;Xo.segmentsIntersect=i8;function i8(e,r,t,a,n,i,l,o){var s=t-e,u=n-e,f=l-n,c=a-r,h=i-r,d=o-i,p=s*d-f*c;if(p===0)return null;var m=(u*d-f*h)/p,y=(u*c-s*h)/p;return y<0||y>1||m<0||m>1?null:{x:e+s*m,y:r+c*m}}Xo.segmentDistance=function(r,t,a,n,i,l,o,s){if(i8(r,t,a,n,i,l,o,s))return 0;var u=a-r,f=n-t,c=o-i,h=s-l,d=u*u+f*f,p=c*c+h*h,m=Math.min(Eh(u,f,d,i-r,l-t),Eh(u,f,d,o-r,s-t),Eh(c,h,p,r-i,t-l),Eh(c,h,p,a-i,n-l));return Math.sqrt(m)};function Eh(e,r,t,a,n){var i=a*e+n*r;if(i<0)return a*a+n*n;if(i>t){var l=a-e,o=n-r;return l*l+o*o}else{var s=a*r-n*e;return s*s/t}}var Ph,ng,n8;Xo.getTextLocation=function(r,t,a,n){if((r!==ng||n!==n8)&&(Ph={},ng=r,n8=n),Ph[a])return Ph[a];var i=r.getPointAtLength(ag(a-n/2,t)),l=r.getPointAtLength(ag(a+n/2,t)),o=Math.atan((l.y-i.y)/(l.x-i.x)),s=r.getPointAtLength(ag(a,t)),u=(s.x*4+i.x+l.x)/6,f=(s.y*4+i.y+l.y)/6,c={x:u,y:f,theta:o};return Ph[a]=c,c};Xo.clearLocationCache=function(){ng=null};Xo.getVisibleSegment=function(r,t,a){var n=t.left,i=t.right,l=t.top,o=t.bottom,s=0,u=r.getTotalLength(),f=u,c,h;function d(m){var y=r.getPointAtLength(m);m===0?c=y:m===u&&(h=y);var b=y.xi?y.x-i:0,_=y.yo?y.y-o:0;return Math.sqrt(b*b+_*_)}for(var p=d(s);p;){if(s+=p+a,s>f)return;p=d(s)}for(p=d(f);p;){if(f-=p+a,s>f)return;p=d(f)}return{min:s,max:f,len:f-s,total:u,isClosed:s===0&&f===u&&Math.abs(c.x-h.x)<.1&&Math.abs(c.y-h.y)<.1}};Xo.findPointOnPath=function(r,t,a,n){n=n||{};for(var i=n.pathLength||r.getTotalLength(),l=n.tolerance||.001,o=n.iterationLimit||30,s=r.getPointAtLength(0)[a]>r.getPointAtLength(i)[a]?-1:1,u=0,f=0,c=i,h,d,p;u0?c=h:f=h,u++}return d}});var Rh=O(Pc=>{"use strict";var sl={};Pc.throttle=function(r,t,a){var n=sl[r],i=Date.now();if(!n){for(var l in sl)sl[l].tsn.ts+t){o();return}n.timer=setTimeout(function(){o(),n.timer=null},t)};Pc.done=function(e){var r=sl[e];return!r||!r.timer?Promise.resolve():new Promise(function(t){var a=r.onDone;r.onDone=function(){a&&a(),t(),r.onDone=null}})};Pc.clear=function(e){if(e)o8(sl[e]),delete sl[e];else for(var r in sl)Pc.clear(r)};function o8(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var u8=O((Fye,s8)=>{"use strict";s8.exports=function(r){r._responsiveChartHandler&&(window.removeEventListener("resize",r._responsiveChartHandler),delete r._responsiveChartHandler)}});var f8=O((Iye,zh)=>{"use strict";zh.exports=ig;zh.exports.isMobile=ig;zh.exports.default=ig;var VJ=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,GJ=/CrOS/,UJ=/android|ipad|playbook|silk/i;function ig(e){e||(e={});let r=e.ua;if(!r&&typeof navigator!="undefined"&&(r=navigator.userAgent),r&&r.headers&&typeof r.headers["user-agent"]=="string"&&(r=r.headers["user-agent"]),typeof r!="string")return!1;let t=VJ.test(r)&&!GJ.test(r)||!!e.tablet&&UJ.test(r);return!t&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&r.indexOf("Macintosh")!==-1&&r.indexOf("Safari")!==-1&&(t=!0),t}});var v8=O((Hye,c8)=>{"use strict";var WJ=zr(),XJ=f8();c8.exports=function(r){var t;if(r&&r.hasOwnProperty("userAgent")?t=r.userAgent:t=ZJ(),typeof t!="string")return!0;var a=XJ({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!a)for(var n=t.split(" "),i=1;i-1;o--){var s=n[o];if(s.substr(0,8)==="Version/"){var u=s.substr(8).split(".")[0];if(WJ(u)&&(u=+u),u>=13)return!0}}}return a};function ZJ(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var d8=O((Oye,h8)=>{"use strict";var JJ=kr();h8.exports=function(r,t,a){var n=r.selectAll("g."+a.replace(/\s/g,".")).data(t,function(l){return l[0].trace.uid});n.exit().remove(),n.enter().append("g").attr("class",a),n.order();var i=r.classed("rangeplot")?"nodeRangePlot3":"node3";return n.each(function(l){l[0][i]=JJ.select(this)}),n}});var m8=O((Bye,p8)=>{"use strict";var $J=gr();p8.exports=function(r,t){for(var a=r._context.locale,n=0;n<2;n++){for(var i=r._context.locales,l=0;l<2;l++){var o=(i[a]||{}).dictionary;if(o){var s=o[t];if(s)return s}i=$J.localeRegistry}var u=a.split("-")[0];if(u===a)break;a=u}return t}});var g8=O((Yye,y8)=>{"use strict";y8.exports=function(r){for(var t={},a=[],n=0,i=0;i{"use strict";x8.exports=function(r){for(var t=jJ(r)?QJ:KJ,a=[],n=0;n{"use strict";_8.exports=function(r,t){if(!t)return r;var a=1/Math.abs(t),n=a>1?(a*r+a*t)/a:r+t,i=String(n).length;if(i>16){var l=String(t).length,o=String(r).length;if(i>=o+l){var s=parseFloat(n).toPrecision(12);s.indexOf("e+")===-1&&(n=+s)}}return n}});var M8=O((Uye,T8)=>{"use strict";var e$=zr(),r$=wt().BADNUM,t$=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;T8.exports=function(r){return typeof r=="string"&&(r=r.replace(t$,"")),e$(r)?Number(r):r$}});var Pe=O((Wye,F8)=>{"use strict";var Rc=kr(),a$=vu().utcFormat,n$=Sy().format,L8=zr(),D8=wt(),E8=D8.FP_SAFE,i$=-E8,A8=D8.BADNUM,de=F8.exports={};de.adjustFormat=function(r){return!r||/^\d[.]\df/.test(r)||/[.]\d%/.test(r)?r:r==="0.f"?"~f":/^\d%/.test(r)?"~%":/^\ds/.test(r)?"~s":!/^[~,.0$]/.test(r)&&/[&fps]/.test(r)?"~"+r:r};var k8={};de.warnBadFormat=function(e){var r=String(e);k8[r]||(k8[r]=1,de.warn('encountered bad format: "'+r+'"'))};de.noFormat=function(e){return String(e)};de.numberFormat=function(e){var r;try{r=n$(de.adjustFormat(e))}catch(t){return de.warnBadFormat(e),de.noFormat}return r};de.nestedProperty=dh();de.keyedContainer=y6();de.relativeAttr=x6();de.isPlainObject=Pl();de.toLogRange=mh();de.relinkPrivateKeys=T6();var Bl=yn();de.isArrayBuffer=Bl.isArrayBuffer;de.isTypedArray=Bl.isTypedArray;de.isArrayOrTypedArray=Bl.isArrayOrTypedArray;de.isArray1D=Bl.isArray1D;de.ensureArray=Bl.ensureArray;de.concat=Bl.concat;de.maxRowLength=Bl.maxRowLength;de.minRowLength=Bl.minRowLength;var P8=du();de.mod=P8.mod;de.modHalf=P8.modHalf;var Yl=Y6();de.valObjectMeta=Yl.valObjectMeta;de.coerce=Yl.coerce;de.coerce2=Yl.coerce2;de.coerceFont=Yl.coerceFont;de.coercePattern=Yl.coercePattern;de.coerceHoverinfo=Yl.coerceHoverinfo;de.coerceSelectionMarkerOpacity=Yl.coerceSelectionMarkerOpacity;de.validate=Yl.validate;var xn=Zw();de.dateTime2ms=xn.dateTime2ms;de.isDateTime=xn.isDateTime;de.ms2DateTime=xn.ms2DateTime;de.ms2DateTimeLocal=xn.ms2DateTimeLocal;de.cleanDate=xn.cleanDate;de.isJSDate=xn.isJSDate;de.formatDate=xn.formatDate;de.incrementMonth=xn.incrementMonth;de.dateTick0=xn.dateTick0;de.dfltRange=xn.dfltRange;de.findExactDates=xn.findExactDates;de.MIN_MS=xn.MIN_MS;de.MAX_MS=xn.MAX_MS;var Zo=Qy();de.findBin=Zo.findBin;de.sorterAsc=Zo.sorterAsc;de.sorterDes=Zo.sorterDes;de.distinctVals=Zo.distinctVals;de.roundUp=Zo.roundUp;de.sort=Zo.sort;de.findIndexOfMin=Zo.findIndexOfMin;de.sortObjectKeys=jy();var ul=Kw();de.aggNums=ul.aggNums;de.len=ul.len;de.mean=ul.mean;de.geometricMean=ul.geometricMean;de.median=ul.median;de.midRange=ul.midRange;de.variance=ul.variance;de.stdev=ul.stdev;de.interp=ul.interp;var ci=wh();de.init2dArray=ci.init2dArray;de.transposeRagged=ci.transposeRagged;de.dot=ci.dot;de.translationMatrix=ci.translationMatrix;de.rotationMatrix=ci.rotationMatrix;de.rotationXYMatrix=ci.rotationXYMatrix;de.apply3DTransform=ci.apply3DTransform;de.apply2DTransform=ci.apply2DTransform;de.apply2DTransform2=ci.apply2DTransform2;de.convertCssMatrix=ci.convertCssMatrix;de.inverseTransformMatrix=ci.inverseTransformMatrix;var Fi=t8();de.deg2rad=Fi.deg2rad;de.rad2deg=Fi.rad2deg;de.angleDelta=Fi.angleDelta;de.angleDist=Fi.angleDist;de.isFullCircle=Fi.isFullCircle;de.isAngleInsideSector=Fi.isAngleInsideSector;de.isPtInsideSector=Fi.isPtInsideSector;de.pathArc=Fi.pathArc;de.pathSector=Fi.pathSector;de.pathAnnulus=Fi.pathAnnulus;var qu=a8();de.isLeftAnchor=qu.isLeftAnchor;de.isCenterAnchor=qu.isCenterAnchor;de.isRightAnchor=qu.isRightAnchor;de.isTopAnchor=qu.isTopAnchor;de.isMiddleAnchor=qu.isMiddleAnchor;de.isBottomAnchor=qu.isBottomAnchor;var Su=l8();de.segmentsIntersect=Su.segmentsIntersect;de.segmentDistance=Su.segmentDistance;de.getTextLocation=Su.getTextLocation;de.clearLocationCache=Su.clearLocationCache;de.getVisibleSegment=Su.getVisibleSegment;de.findPointOnPath=Su.findPointOnPath;var Ih=mt();de.extendFlat=Ih.extendFlat;de.extendDeep=Ih.extendDeep;de.extendDeepAll=Ih.extendDeepAll;de.extendDeepNoArrays=Ih.extendDeepNoArrays;var lg=Go();de.log=lg.log;de.warn=lg.warn;de.error=lg.error;var l$=yu();de.counterRegex=l$.counter;var og=Rh();de.throttle=og.throttle;de.throttleDone=og.done;de.clearThrottle=og.clear;var vi=qc();de.getGraphDiv=vi.getGraphDiv;de.isPlotDiv=vi.isPlotDiv;de.removeElement=vi.removeElement;de.addStyleRule=vi.addStyleRule;de.addRelatedStyleRule=vi.addRelatedStyleRule;de.deleteRelatedStyleRule=vi.deleteRelatedStyleRule;de.setStyleOnHover=vi.setStyleOnHover;de.getFullTransformMatrix=vi.getFullTransformMatrix;de.getElementTransformMatrix=vi.getElementTransformMatrix;de.getElementAndAncestors=vi.getElementAndAncestors;de.equalDomRects=vi.equalDomRects;de.clearResponsive=u8();de.preserveDrawingBuffer=v8();de.makeTraceGroups=d8();de._=m8();de.notifier=Hy();de.filterUnique=g8();de.filterVisible=b8();de.pushUnique=Yy();de.increment=w8();de.cleanNumber=M8();de.ensureNumber=function(r){return L8(r)?(r=Number(r),r>E8||r=r?!1:L8(e)&&e>=0&&e%1===0};de.noop=_h();de.identity=$y();de.repeat=function(e,r){for(var t=new Array(r),a=0;at?Math.max(t,Math.min(r,e)):Math.max(r,Math.min(t,e))};de.bBoxIntersect=function(e,r,t){return t=t||0,e.left<=r.right+t&&r.left<=e.right+t&&e.top<=r.bottom+t&&r.top<=e.bottom+t};de.simpleMap=function(e,r,t,a,n){for(var i=e.length,l=new Array(i),o=0;o=Math.pow(2,t)?n>10?(de.warn("randstr failed uniqueness"),l):e(r,t,a,(n||0)+1):l};de.OptionControl=function(e,r){e||(e={}),r||(r="opt");var t={};return t.optionList=[],t._newoption=function(a){a[r]=e,t[a.name]=a,t.optionList.push(a)},t["_"+r]=e,t};de.smooth=function(e,r){if(r=Math.round(r)||0,r<2)return e;var t=e.length,a=2*t,n=2*r-1,i=new Array(n),l=new Array(t),o,s,u,f;for(o=0;o=a&&(u-=a*Math.floor(u/a)),u<0?u=-1-u:u>=t&&(u=a-1-u),f+=e[u]*i[s];l[o]=f}return l};de.syncOrAsync=function(e,r,t){var a,n;function i(){return de.syncOrAsync(e,r,t)}for(;e.length;)if(n=e.splice(0,1)[0],a=n(r),a&&a.then)return a.then(i);return t&&t(r)};de.stripTrailingSlash=function(e){return e.substr(-1)==="/"?e.substr(0,e.length-1):e};de.noneOrAll=function(e,r,t){if(e){var a=!1,n=!0,i,l;for(i=0;i0?n:0})};de.fillArray=function(e,r,t,a){if(a=a||de.identity,de.isArrayOrTypedArray(e))for(var n=0;nu$.test(window.navigator.userAgent);var f$=/Firefox\/(\d+)\.\d+/;de.getFirefoxVersion=function(){var e=f$.exec(window.navigator.userAgent);if(e&&e.length===2){var r=parseInt(e[1]);if(!isNaN(r))return r}return null};de.isD3Selection=function(e){return e instanceof Rc.selection};de.ensureSingle=function(e,r,t,a){var n=e.select(r+(t?"."+t:""));if(n.size())return n;var i=e.append(r);return t&&i.classed(t,!0),a&&i.call(a),i};de.ensureSingleById=function(e,r,t,a){var n=e.select(r+"#"+t);if(n.size())return n;var i=e.append(r).attr("id",t);return a&&i.call(a),i};de.objectFromPath=function(e,r){for(var t=e.split("."),a,n=a={},i=0;i1?n+l[1]:"";if(i&&(l.length>1||o.length>4||t))for(;a.test(o);)o=o.replace(a,"$1"+i+"$2");return o+s};de.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var N8=/^\w*$/;de.templateString=function(e,r){var t={};return e.replace(de.TEMPLATE_STRING_REGEX,function(a,n){var i;return N8.test(n)?i=r[n]:(t[n]=t[n]||de.nestedProperty(r,n).get,i=t[n](!0)),i!==void 0?i:""})};var h$={max:10,count:0,name:"hovertemplate"};de.hovertemplateString=e=>sg(ih(Ho({},e),{opts:h$}));var d$={max:10,count:0,name:"texttemplate"};de.texttemplateString=e=>sg(ih(Ho({},e),{opts:d$}));var p$=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function m$(e){var r=e.match(p$);return r?{key:r[1],op:r[2],number:Number(r[3])}:{key:e,op:null,number:null}}var y$={max:10,count:0,name:"texttemplate",parseMultDiv:!0};de.texttemplateStringForShapes=e=>sg(ih(Ho({},e),{opts:y$}));var q8=/^[:|\|]/;function sg({data:e=[],locale:r,fallback:t,labels:a={},opts:n,template:i}){return i.replace(de.TEMPLATE_STRING_REGEX,(l,o,s)=>{let u=["xother","yother"].includes(o),f=["_xother","_yother"].includes(o),c=["_xother_","_yother_"].includes(o),h=["xother_","yother_"].includes(o),d=u||f||h||c;(f||c)&&(o=o.substring(1)),(h||c)&&(o=o.substring(0,o.length-1));let p=null,m=null;if(n.parseMultDiv){var y=m$(o);o=y.key,p=y.op,m=y.number}let b;if(d){if(a[o]===void 0)return"";b=a[o]}else for(let M of e)if(M){if(M.hasOwnProperty(o)){b=M[o];break}if(N8.test(o)||(b=de.nestedProperty(M,o).get(!0)),b!==void 0)break}if(b===void 0){let{count:M,max:k,name:A}=n,C=t===!1?l:t;return M=Fh&&l<=S8,u=o>=Fh&&o<=S8;if(s&&(a=10*a+l-Fh),u&&(n=10*n+o-Fh),!s||!u){if(a!==n)return a-n;if(l!==o)return l-o}}return n-a};var ku=2e9;de.seedPseudoRandom=function(){ku=2e9};de.pseudoRandom=function(){var e=ku;return ku=(69069*ku+1)%4294967296,Math.abs(ku-e)<429496729?de.pseudoRandom():ku/4294967296};de.fillText=function(e,r,t){var a=Array.isArray(t)?function(l){t.push(l)}:function(l){t.text=l},n=de.extractOption(e,r,"htx","hovertext");if(de.isValidTextValue(n))return a(n);var i=de.extractOption(e,r,"tx","text");if(de.isValidTextValue(i))return a(i)};de.isValidTextValue=function(e){return e||e===0};de.formatPercent=function(e,r){r=r||0;for(var t=(Math.round(100*e*Math.pow(10,r))*Math.pow(.1,r)).toFixed(r)+"%",a=0;a1&&(u=1):u=0,de.strTranslate(n-u*(t+l),i-u*(a+o))+de.strScale(u)+(s?"rotate("+s+(r?"":" "+t+" "+a)+")":"")};de.setTransormAndDisplay=function(e,r){e.attr("transform",de.getTextTransform(r)),e.style("display",r.scale?null:"none")};de.ensureUniformFontSize=function(e,r){var t=de.extendFlat({},r);return t.size=Math.max(r.size,e._fullLayout.uniformtext.minsize||0),t};de.join2=function(e,r,t){var a=e.length;return a>1?e.slice(0,-1).join(r)+t+e[a-1]:e.join(r)};de.bigFont=function(e){return Math.round(1.2*e)};var C8=de.getFirefoxVersion(),g$=C8!==null&&C8<86;de.getPositionFromD3Event=function(){return g$?[Rc.event.layerX,Rc.event.layerY]:[Rc.event.offsetX,Rc.event.offsetY]}});var O8=O(()=>{"use strict";var x$=Pe(),I8={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(ug in I8)H8=ug.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),x$.addStyleRule(H8,I8[ug]);var H8,ug});var fg=O(($ye,B8)=>{B8.exports=!0});var vg=O((Kye,Y8)=>{"use strict";var b$=fg(),cg;typeof window.matchMedia=="function"?cg=!window.matchMedia("(hover: none)").matches:cg=b$;Y8.exports=cg});var Bh=O((Qye,hg)=>{"use strict";var Cu=typeof Reflect=="object"?Reflect:null,V8=Cu&&typeof Cu.apply=="function"?Cu.apply:function(r,t,a){return Function.prototype.apply.call(r,t,a)},Hh;Cu&&typeof Cu.ownKeys=="function"?Hh=Cu.ownKeys:Object.getOwnPropertySymbols?Hh=function(r){return Object.getOwnPropertyNames(r).concat(Object.getOwnPropertySymbols(r))}:Hh=function(r){return Object.getOwnPropertyNames(r)};function _$(e){console&&console.warn&&console.warn(e)}var U8=Number.isNaN||function(r){return r!==r};function yt(){yt.init.call(this)}hg.exports=yt;hg.exports.once=A$;yt.EventEmitter=yt;yt.prototype._events=void 0;yt.prototype._eventsCount=0;yt.prototype._maxListeners=void 0;var G8=10;function Oh(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(yt,"defaultMaxListeners",{enumerable:!0,get:function(){return G8},set:function(e){if(typeof e!="number"||e<0||U8(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");G8=e}});yt.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};yt.prototype.setMaxListeners=function(r){if(typeof r!="number"||r<0||U8(r))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+r+".");return this._maxListeners=r,this};function W8(e){return e._maxListeners===void 0?yt.defaultMaxListeners:e._maxListeners}yt.prototype.getMaxListeners=function(){return W8(this)};yt.prototype.emit=function(r){for(var t=[],a=1;a0&&(l=t[0]),l instanceof Error)throw l;var o=new Error("Unhandled error."+(l?" ("+l.message+")":""));throw o.context=l,o}var s=i[r];if(s===void 0)return!1;if(typeof s=="function")V8(s,this,t);else for(var u=s.length,f=K8(s,u),a=0;a0&&l.length>n&&!l.warned){l.warned=!0;var o=new Error("Possible EventEmitter memory leak detected. "+l.length+" "+String(r)+" listeners added. Use emitter.setMaxListeners() to increase limit");o.name="MaxListenersExceededWarning",o.emitter=e,o.type=r,o.count=l.length,_$(o)}return e}yt.prototype.addListener=function(r,t){return X8(this,r,t,!1)};yt.prototype.on=yt.prototype.addListener;yt.prototype.prependListener=function(r,t){return X8(this,r,t,!0)};function w$(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function Z8(e,r,t){var a={fired:!1,wrapFn:void 0,target:e,type:r,listener:t},n=w$.bind(a);return n.listener=t,a.wrapFn=n,n}yt.prototype.once=function(r,t){return Oh(t),this.on(r,Z8(this,r,t)),this};yt.prototype.prependOnceListener=function(r,t){return Oh(t),this.prependListener(r,Z8(this,r,t)),this};yt.prototype.removeListener=function(r,t){var a,n,i,l,o;if(Oh(t),n=this._events,n===void 0)return this;if(a=n[r],a===void 0)return this;if(a===t||a.listener===t)--this._eventsCount===0?this._events=Object.create(null):(delete n[r],n.removeListener&&this.emit("removeListener",r,a.listener||t));else if(typeof a!="function"){for(i=-1,l=a.length-1;l>=0;l--)if(a[l]===t||a[l].listener===t){o=a[l].listener,i=l;break}if(i<0)return this;i===0?a.shift():T$(a,i),a.length===1&&(n[r]=a[0]),n.removeListener!==void 0&&this.emit("removeListener",r,o||t)}return this};yt.prototype.off=yt.prototype.removeListener;yt.prototype.removeAllListeners=function(r){var t,a,n;if(a=this._events,a===void 0)return this;if(a.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):a[r]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete a[r]),this;if(arguments.length===0){var i=Object.keys(a),l;for(n=0;n=0;n--)this.removeListener(r,t[n]);return this};function J8(e,r,t){var a=e._events;if(a===void 0)return[];var n=a[r];return n===void 0?[]:typeof n=="function"?t?[n.listener||n]:[n]:t?M$(n):K8(n,n.length)}yt.prototype.listeners=function(r){return J8(this,r,!0)};yt.prototype.rawListeners=function(r){return J8(this,r,!1)};yt.listenerCount=function(e,r){return typeof e.listenerCount=="function"?e.listenerCount(r):$8.call(e,r)};yt.prototype.listenerCount=$8;function $8(e){var r=this._events;if(r!==void 0){var t=r[e];if(typeof t=="function")return 1;if(t!==void 0)return t.length}return 0}yt.prototype.eventNames=function(){return this._eventsCount>0?Hh(this._events):[]};function K8(e,r){for(var t=new Array(r),a=0;a{"use strict";var dg=Bh().EventEmitter,q$={init:function(e){if(e._ev instanceof dg)return e;var r=new dg,t=new dg;return e._ev=r,e._internalEv=t,e.on=r.on.bind(r),e.once=r.once.bind(r),e.removeListener=r.removeListener.bind(r),e.removeAllListeners=r.removeAllListeners.bind(r),e._internalOn=t.on.bind(t),e._internalOnce=t.once.bind(t),e._removeInternalListener=t.removeListener.bind(t),e._removeAllInternalListeners=t.removeAllListeners.bind(t),e.emit=function(a,n){r.emit(a,n),t.emit(a,n)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,r,t){var a,n=e._ev;if(!n)return;var i=n._events[r];if(!i)return;function l(s){if(s.listener){if(n.removeListener(r,s.listener),!s.fired)return s.fired=!0,s.listener.apply(n,[t])}else return s.apply(n,[t])}i=Array.isArray(i)?i:[i];var o;for(o=0;o{"use strict";var e9=Pe(),S$=Vo().dfltConfig;function C$(e,r){for(var t=[],a,n=0;nS$.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};fl.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};fl.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};fl.undo=function(r){var t,a;if(!(r.undoQueue===void 0||isNaN(r.undoQueue.index)||r.undoQueue.index<=0)){for(r.undoQueue.index--,t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a=r.undoQueue.queue.length)){for(t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a{"use strict";a9.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var Eu=O(Qt=>{"use strict";var Hn=gr(),Nc=Pe(),Vh=tn(),mg=_u(),L$=pg(),D$=Sc(),E$=Vo().configAttributes,n9=ui(),hi=Nc.extendDeepAll,Lu=Nc.isPlainObject,P$=Nc.isArrayOrTypedArray,Gh=Nc.nestedProperty,R$=Nc.valObjectMeta,yg="_isSubplotObj",Uh="_isLinkedToArray",z$="_arrayAttrRegexps",l9="_deprecated",gg=[yg,Uh,z$,l9];Qt.IS_SUBPLOT_OBJ=yg;Qt.IS_LINKED_TO_ARRAY=Uh;Qt.DEPRECATED=l9;Qt.UNDERSCORE_ATTRS=gg;Qt.get=function(){var e={};return Hn.allTypes.forEach(function(r){e[r]=F$(r)}),{defs:{valObjects:R$,metaKeys:gg.concat(["description","role","editType","impliedEdits"]),editType:{traces:n9.traces,layout:n9.layout},impliedEdits:{}},traces:e,layout:I$(),frames:H$(),animation:Du(D$),config:Du(E$)}};Qt.crawl=function(e,r,t,a){var n=t||0;a=a||"",Object.keys(e).forEach(function(i){var l=e[i];if(gg.indexOf(i)===-1){var o=(a?a+".":"")+i;r(l,i,e,n,o),!Qt.isValObject(l)&&Lu(l)&&i!=="impliedEdits"&&Qt.crawl(l,r,n+1,o)}})};Qt.isValObject=function(e){return e&&e.valType!==void 0};Qt.findArrayAttributes=function(e){var r=[],t=[],a=[],n,i;function l(s,u,f,c){t=t.slice(0,c).concat([u]),a=a.slice(0,c).concat([s&&s._isLinkedToArray]);var h=s&&(s.valType==="data_array"||s.arrayOk===!0)&&!(t[c-1]==="colorbar"&&(u==="ticktext"||u==="tickvals"));h&&o(n,0,"")}function o(s,u,f){var c=s[t[u]],h=f+t[u];if(u===t.length-1)P$(c)&&r.push(i+h);else if(a[u]){if(Array.isArray(c))for(var d=0;d=i.length)return!1;if(e.dimensions===2){if(t++,r.length===t)return e;var l=r[t];if(!Yh(l))return!1;e=i[n][l]}else e=i[n]}else e=i}}return e}function Yh(e){return e===Math.round(e)&&e>=0}function F$(e){var r,t;r=Hn.modules[e]._module,t=r.basePlotModule;var a={};a.type=null;var n=hi({},Vh),i=hi({},r.attributes);Qt.crawl(i,function(s,u,f,c,h){Gh(n,h).set(void 0),s===void 0&&Gh(i,h).set(void 0)}),hi(a,n),Hn.traceIs(e,"noOpacity")&&delete a.opacity,Hn.traceIs(e,"showLegend")||(delete a.showlegend,delete a.legendgroup),Hn.traceIs(e,"noHover")&&(delete a.hoverinfo,delete a.hoverlabel),r.selectPoints||delete a.selectedpoints,hi(a,i),t.attributes&&hi(a,t.attributes),a.type=e;var l={meta:r.meta||{},categories:r.categories||{},animatable:!!r.animatable,type:e,attributes:Du(a)};if(r.layoutAttributes){var o={};hi(o,r.layoutAttributes),l.layoutAttributes=Du(o)}return r.animatable||Qt.crawl(l,function(s){Qt.isValObject(s)&&"anim"in s&&delete s.anim}),l}function I$(){var e={},r,t;hi(e,mg);for(r in Hn.subplotsRegistry)if(t=Hn.subplotsRegistry[r],!!t.layoutAttributes)if(Array.isArray(t.attr))for(var a=0;a{"use strict";var Pu=Pe(),G$=tn(),Vl="templateitemname",xg={name:{valType:"string",editType:"none"}};xg[Vl]={valType:"string",editType:"calc"};Jo.templatedArray=function(e,r){return r._isLinkedToArray=e,r.name=xg.name,r[Vl]=xg[Vl],r};Jo.traceTemplater=function(e){var r={},t,a;for(t in e)a=e[t],Array.isArray(a)&&a.length&&(r[t]=0);function n(i){t=Pu.coerce(i,{},G$,"type");var l={type:t,_template:null};if(t in r){a=e[t];var o=r[t]%a.length;r[t]++,l._template=a[o]}return l}return{newTrace:n}};Jo.newContainer=function(e,r,t){var a=e._template,n=a&&(a[r]||t&&a[t]);Pu.isPlainObject(n)||(n=null);var i=e[r]={_template:n};return i};Jo.arrayTemplater=function(e,r,t){var a=e._template,n=a&&a[u9(r)],i=a&&a[r];(!Array.isArray(i)||!i.length)&&(i=[]);var l={};function o(u){var f={name:u.name,_input:u},c=f[Vl]=u[Vl];if(!s9(c))return f._template=n,f;for(var h=0;h=a&&(t._input||{})._templateitemname;i&&(n=a);var l=r+"["+n+"]",o;function s(){o={},i&&(o[l]={},o[l][Vl]=i)}s();function u(d,p){o[d]=p}function f(d,p){i?Pu.nestedProperty(o[l],d).set(p):o[l+"."+d]=p}function c(){var d=o;return s(),d}function h(d,p){d&&f(d,p);var m=c();for(var y in m)Pu.nestedProperty(e,y).set(m[y])}return{modifyBase:u,modifyItem:f,getUpdateObj:c,applyUpdate:h}}});var Ma=O((nge,f9)=>{"use strict";var Fc=yu().counter;f9.exports={idRegex:{x:Fc("x","( domain)?"),y:Fc("y","( domain)?")},attrRegex:Fc("[xy]axis"),xAxisMatch:Fc("xaxis"),yAxisMatch:Fc("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var Ut=O(on=>{"use strict";var U$=gr(),bg=Ma();on.id2name=function(r){if(!(typeof r!="string"||!r.match(bg.AX_ID_PATTERN))){var t=r.split(" ")[0].substr(1);return t==="1"&&(t=""),r.charAt(0)+"axis"+t}};on.name2id=function(r){if(r.match(bg.AX_NAME_PATTERN)){var t=r.substr(5);return t==="1"&&(t=""),r.charAt(0)+t}};on.cleanId=function(r,t,a){var n=/( domain)$/.test(r);if(!(typeof r!="string"||!r.match(bg.AX_ID_PATTERN))&&!(t&&r.charAt(0)!==t)&&!(n&&!a)){var i=r.split(" ")[0].substr(1).replace(/^0+/,"");return i==="1"&&(i=""),r.charAt(0)+i+(n&&a?" domain":"")}};on.list=function(e,r,t){var a=e._fullLayout;if(!a)return[];var n=on.listIds(e,r),i=new Array(n.length),l;for(l=0;la?1:-1:+(e.substr(1)||1)-+(r.substr(1)||1)};on.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function c9(e,r){if(r&&r.length){for(var t=0;t{"use strict";function W$(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".outline-controllers").remove()}function X$(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}v9.exports={clearOutlineControllers:W$,clearOutline:X$}});var Wh=O((oge,h9)=>{"use strict";h9.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var _g=O(Zh=>{"use strict";var Xh=gr(),sge=Ma().SUBPLOT_PATTERN;Zh.getSubplotCalcData=function(e,r,t){var a=Xh.subplotsRegistry[r];if(!a)return[];for(var n=a.attr,i=[],l=0;l{"use strict";var Z$=gr(),Ru=Pe();$o.manageCommandObserver=function(e,r,t,a){var n={},i=!0;r&&r._commandObserver&&(n=r._commandObserver),n.cache||(n.cache={}),n.lookupTable={};var l=$o.hasSimpleAPICommandBindings(e,t,n.lookupTable);if(r&&r._commandObserver){if(l)return n;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,n}if(l){d9(e,l,n.cache),n.check=function(){if(i){var f=d9(e,l,n.cache);return f.changed&&a&&n.lookupTable[f.value]!==void 0&&(n.disable(),Promise.resolve(a({value:f.value,type:l.type,prop:l.prop,traces:l.traces,index:n.lookupTable[f.value]})).then(n.enable,n.enable)),f.changed}};for(var o=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],s=0;s0?".":"")+n;Ru.isPlainObject(i)?wg(i,r,l,a+1):r(l,n,i)}})}});var Rt=O((cge,D9)=>{"use strict";var M9=kr(),$$=vu().timeFormatLocale,K$=Sy().formatLocale,Ic=zr(),Q$=Cy(),Xr=gr(),A9=Eu(),j$=lt(),cr=Pe(),k9=xr(),g9=wt().BADNUM,sn=Ut(),eK=Gl().clearOutline,rK=Wh(),Tg=Sc(),tK=pg(),aK=_g().getModuleCalcData,x9=cr.relinkPrivateKeys,Ko=cr._,Qe=D9.exports={};cr.extendFlat(Qe,Xr);Qe.attributes=tn();Qe.attributes.type.values=Qe.allTypes;Qe.fontAttrs=aa();Qe.layoutAttributes=_u();var $h=y9();Qe.executeAPICommand=$h.executeAPICommand;Qe.computeAPICommandBindings=$h.computeAPICommandBindings;Qe.manageCommandObserver=$h.manageCommandObserver;Qe.hasSimpleAPICommandBindings=$h.hasSimpleAPICommandBindings;Qe.redrawText=function(e){return e=cr.getGraphDiv(e),new Promise(function(r){setTimeout(function(){e._fullLayout&&(Xr.getComponentMethod("annotations","draw")(e),Xr.getComponentMethod("legend","draw")(e),Xr.getComponentMethod("colorbar","draw")(e),r(Qe.previousPromises(e)))},300)})};Qe.resize=function(e){e=cr.getGraphDiv(e);var r,t=new Promise(function(a,n){(!e||cr.isHidden(e))&&n(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(r=e._resolveResize),e._resolveResize=a,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||cr.isHidden(e)){a(e);return}delete e.layout.width,delete e.layout.height;var i=e.changed;e.autoplay=!0,Xr.call("relayout",e,{autosize:!0}).then(function(){e.changed=i,e._resolveResize===a&&(delete e._resolveResize,a(e))})},100)});return r&&r(t),t};Qe.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};Qe.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var r=e._fullLayout,t=cr.ensureSingle(r._paper,"text","js-plot-link-container",function(s){s.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:k9.defaultLine,"pointer-events":"all"}).each(function(){var u=M9.select(this);u.append("tspan").classed("js-link-to-tool",!0),u.append("tspan").classed("js-link-spacer",!0),u.append("tspan").classed("js-sourcelinks",!0)})}),a=t.node(),n={y:r._paper.attr("height")-9};document.body.contains(a)&&a.getComputedTextLength()>=r.width-20?(n["text-anchor"]="start",n.x=5):(n["text-anchor"]="end",n.x=r._paper.attr("width")-7),t.attr(n);var i=t.select(".js-link-to-tool"),l=t.select(".js-link-spacer"),o=t.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&nK(e,i),l.text(i.text()&&o.text()?" - ":"")}};function nK(e,r){r.text("");var t=r.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)t.on("click",function(){Qe.sendDataToCloud(e)});else{var a=window.location.pathname.split("/"),n=window.location.search;t.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+a[2].split(".")[0]+"/"+a[1]+n})}}Qe.sendDataToCloud=function(e){var r=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(r){e.emit("plotly_beforeexport");var t=M9.select(e).append("div").attr("id","hiddenform").style("display","none"),a=t.append("form").attr({action:r+"/external",method:"post",target:"_blank"}),n=a.append("input").attr({type:"text",name:"data"});return n.node().value=Qe.graphJson(e,!1,"keepdata"),a.node().submit(),t.remove(),e.emit("plotly_afterexport"),!1}};var iK=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],lK=["year","month","dayMonth","dayMonthYear"];Qe.supplyDefaults=function(e,r){var t=r&&r.skipUpdateCalc,a=e._fullLayout||{};if(a._skipDefaults){delete a._skipDefaults;return}var n=e._fullLayout={},i=e.layout||{},l=e._fullData||[],o=e._fullData=[],s=e.data||[],u=e.calcdata||[],f=e._context||{},c;e._transitionData||Qe.createTransitionData(e),n._dfltTitle={plot:Ko(e,"Click to enter Plot title"),subtitle:Ko(e,"Click to enter Plot subtitle"),x:Ko(e,"Click to enter X axis title"),y:Ko(e,"Click to enter Y axis title"),colorbar:Ko(e,"Click to enter Colorscale title"),annotation:Ko(e,"new text")},n._traceWord=Ko(e,"trace");var h=b9(e,iK);if(n._mapboxAccessToken=f.mapboxAccessToken,a._initialAutoSizeIsDone){var d=a.width,p=a.height;Qe.supplyLayoutGlobalDefaults(i,n,h),i.width||(n.width=d),i.height||(n.height=p),Qe.sanitizeMargins(n)}else{Qe.supplyLayoutGlobalDefaults(i,n,h);var m=!i.width||!i.height,y=n.autosize,b=f.autosizable,_=m&&(y||b);_?Qe.plotAutoSize(e,i,n):m&&Qe.sanitizeMargins(n),!y&&m&&(i.width=n.width,i.height=n.height)}n._d3locale=uK(h,n.separators),n._extraFormat=b9(e,lK),n._initialAutoSizeIsDone=!0,n._dataLength=s.length,n._modules=[],n._visibleModules=[],n._basePlotModules=[];var T=n._subplots=sK(),x=n._splomAxes={x:{},y:{}},M=n._splomSubplots={};n._splomGridDflt={},n._scatterStackOpts={},n._firstScatter={},n._alignmentOpts={},n._colorAxes={},n._requestRangeslider={},n._traceUids=oK(l,s),Qe.supplyDataDefaults(s,o,i,n);var k=Object.keys(x.x),A=Object.keys(x.y);if(k.length>1&&A.length>1){for(Xr.getComponentMethod("grid","sizeDefaults")(i,n),c=0;c15&&A.length>15&&n.shapes.length===0&&n.images.length===0,Qe.linkSubplots(o,n,l,a),Qe.cleanPlot(o,n,l,a);var N=!!(a._has&&a._has("cartesian")),I=!!(n._has&&n._has("cartesian")),H=N,G=I;H&&!G?a._bgLayer.remove():G&&!H&&(n._shouldCreateBgLayer=!0),a._zoomlayer&&!e._dragging&&eK({_fullLayout:a}),fK(o,n),x9(n,a),Xr.getComponentMethod("colorscale","crossTraceDefaults")(o,n),n._preGUI||(n._preGUI={}),n._tracePreGUI||(n._tracePreGUI={});var W=n._tracePreGUI,Y={},B;for(B in W)Y[B]="old";for(c=0;c0){var f=1-2*i;l=Math.round(f*l),o=Math.round(f*o)}}var c=Qe.layoutAttributes.width.min,h=Qe.layoutAttributes.height.min;l1,p=!t.height&&Math.abs(a.height-o)>1;(p||d)&&(d&&(a.width=l),p&&(a.height=o)),r._initialAutoSize||(r._initialAutoSize={width:l,height:o}),Qe.sanitizeMargins(a)};Qe.supplyLayoutModuleDefaults=function(e,r,t,a){var n=Xr.componentsRegistry,i=r._basePlotModules,l,o,s,u=Xr.subplotsRegistry.cartesian;for(l in n)s=n[l],s.includeBasePlot&&s.includeBasePlot(e,r);i.length||i.push(u),r._has("cartesian")&&(Xr.getComponentMethod("grid","contentDefaults")(e,r),u.finalizeSubplots(e,r));for(var f in r._subplots)r._subplots[f].sort(cr.subplotSort);for(o=0;o1&&(t.l/=y,t.r/=y)}if(h){var b=(t.t+t.b)/h;b>1&&(t.t/=b,t.b/=b)}var _=t.xl!==void 0?t.xl:t.x,T=t.xr!==void 0?t.xr:t.x,x=t.yt!==void 0?t.yt:t.y,M=t.yb!==void 0?t.yb:t.y;d[r]={l:{val:_,size:t.l+m},r:{val:T,size:t.r+m},b:{val:M,size:t.b+m},t:{val:x,size:t.t+m}},p[r]=1}if(!a._replotting)return Qe.doAutoMargin(e)}};function vK(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var r=sn.list(e,"",!0);for(var t in r)if(r[t].autoshift||r[t].shift)return!0;return!1}Qe.doAutoMargin=function(e){var r=e._fullLayout,t=r.width,a=r.height;r._size||(r._size={}),q9(r);var n=r._size,i=r.margin,l={t:0,b:0,l:0,r:0},o=cr.extendFlat({},n),s=i.l,u=i.r,f=i.t,c=i.b,h=r._pushmargin,d=r._pushmarginIds,p=r.minreducedwidth,m=r.minreducedheight;if(i.autoexpand!==!1){for(var y in h)d[y]||delete h[y];var b=e._fullLayout._reservedMargin;for(var _ in b)for(var T in b[_]){var x=b[_][T];l[T]=Math.max(l[T],x)}h.base={l:{val:0,size:s},r:{val:1,size:u},t:{val:1,size:f},b:{val:0,size:c}};for(var M in l){var k=0;for(var A in h)A!=="base"&&Ic(h[A][M].size)&&(k=h[A][M].size>k?h[A][M].size:k);var C=Math.max(0,i[M]-k);l[M]=Math.max(0,l[M]-C)}for(var D in h){var E=h[D].l||{},R=h[D].b||{},N=E.val,I=E.size,H=R.val,G=R.size,W=t-l.r-l.l,Y=a-l.t-l.b;for(var B in h){if(Ic(I)&&h[B].r){var V=h[B].r.val,K=h[B].r.size;if(V>N){var J=(I*V+(K-W)*N)/(V-N),re=(K*(1-N)+(I-W)*(1-V))/(V-N);J+re>s+u&&(s=J,u=re)}}if(Ic(G)&&h[B].t){var le=h[B].t.val,ue=h[B].t.size;if(le>H){var ve=(G*le+(ue-Y)*H)/(le-H),j=(ue*(1-H)+(G-Y)*(1-le))/(le-H);ve+j>c+f&&(c=ve,f=j)}}}}}var qe=cr.constrain(t-i.l-i.r,S9,p),fe=cr.constrain(a-i.t-i.b,C9,m),be=Math.max(0,t-qe),ce=Math.max(0,a-fe);if(be){var xe=(s+u)/be;xe>1&&(s/=xe,u/=xe)}if(ce){var U=(c+f)/ce;U>1&&(c/=U,f/=U)}if(n.l=Math.round(s)+l.l,n.r=Math.round(u)+l.r,n.t=Math.round(f)+l.t,n.b=Math.round(c)+l.b,n.p=Math.round(i.pad),n.w=Math.round(t)-n.l-n.r,n.h=Math.round(a)-n.t-n.b,!r._replotting&&(Qe.didMarginChange(o,n)||vK(e))){"_redrawFromAutoMarginCount"in r?r._redrawFromAutoMarginCount++:r._redrawFromAutoMarginCount=1;var Q=3*(1+Object.keys(d).length);if(r._redrawFromAutoMarginCount1)return!0}return!1};Qe.graphJson=function(e,r,t,a,n,i){(n&&r&&!e._fullData||n&&!r&&!e._fullLayout)&&Qe.supplyDefaults(e);var l=n?e._fullData:e.data,o=n?e._fullLayout:e.layout,s=(e._transitionData||{})._frames;function u(h,d){if(typeof h=="function")return d?"_function_":null;if(cr.isPlainObject(h)){var p={},m;return Object.keys(h).sort().forEach(function(T){if(["_","["].indexOf(T.charAt(0))===-1){if(typeof h[T]=="function"){d&&(p[T]="_function");return}if(t==="keepdata"){if(T.substr(T.length-3)==="src")return}else if(t==="keepstream"){if(m=h[T+"src"],typeof m=="string"&&m.indexOf(":")>0&&!cr.isPlainObject(h.stream))return}else if(t!=="keepall"&&(m=h[T+"src"],typeof m=="string"&&m.indexOf(":")>0))return;p[T]=u(h[T],d)}}),p}var y=Array.isArray(h),b=cr.isTypedArray(h);if((y||b)&&h.dtype&&h.shape){var _=h.bdata;return u({dtype:h.dtype,shape:h.shape,bdata:cr.isArrayBuffer(_)?Q$.encode(_):_},d)}return y?h.map(function(T){return u(T,d)}):b?cr.simpleMap(h,cr.identity):cr.isJSDate(h)?cr.ms2DateTimeLocal(+h):h}var f={data:(l||[]).map(function(h){var d=u(h);return r&&delete d.fit,d})};if(!r&&(f.layout=u(o),n)){var c=o._size;f.layout.computed={margin:{b:c.b,l:c.l,r:c.r,t:c.t}}}return s&&(f.frames=u(s)),i&&(f.config=u(e._context,!0)),a==="object"?f:JSON.stringify(f)};Qe.modifyFrames=function(e,r){var t,a,n,i=e._transitionData._frames,l=e._transitionData._frameHash;for(t=0;t0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){a=!0}),t.redraw&&e._transitionData._interruptCallbacks.push(function(){return Xr.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var h=0,d=0;function p(){return h++,function(){d++,!a&&d===h&&o(c)}}t.runFn(p),setTimeout(p())})}function o(c){if(e._transitionData)return i(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(t.redraw)return Xr.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(c)}function s(){if(e._transitionData)return e._transitioning=!1,n(e._transitionData._interruptCallbacks)}var u=[Qe.previousPromises,s,t.prepareFn,Qe.rehover,Qe.reselect,l],f=cr.syncOrAsync(u,e);return(!f||!f.then)&&(f=Promise.resolve()),f.then(function(){return e})}Qe.doCalcdata=function(e,r){var t=sn.list(e),a=e._fullData,n=e._fullLayout,i,l,o,s,u=new Array(a.length),f=(e.calcdata||[]).slice();for(e.calcdata=u,n._numBoxes=0,n._numViolins=0,n._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,n._piecolormap={},n._sunburstcolormap={},n._treemapcolormap={},n._iciclecolormap={},n._funnelareacolormap={},o=0;o=0;s--)if(M[s].enabled){i._indexToPoints=M[s]._indexToPoints;break}l&&l.calc&&(x=l.calc(e,i))}(!Array.isArray(x)||!x[0])&&(x=[{x:g9,y:g9}]),x[0].t||(x[0].t={}),x[0].trace=i,u[_]=x}}for(w9(t,a,n),o=0;o{"use strict";Qo.xmlns="http://www.w3.org/2000/xmlns/";Qo.svg="http://www.w3.org/2000/svg";Qo.xlink="http://www.w3.org/1999/xlink";Qo.svgAttrs={xmlns:Qo.svg,"xmlns:xlink":Qo.xlink}});var Ea=O((hge,E9)=>{"use strict";E9.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var va=O(On=>{"use strict";var Wt=kr(),cl=Pe(),mK=cl.strTranslate,Mg=jo(),yK=Ea().LINE_SPACING,gK=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;On.convertToTspans=function(e,r,t){var a=e.text(),n=!e.attr("data-notex")&&r&&r._context.typesetMath&&typeof MathJax!="undefined"&&a.match(gK),i=Wt.select(e.node().parentNode);if(i.empty())return;var l=e.attr("class")?e.attr("class").split(" ")[0]:"text";l+="-math",i.selectAll("svg."+l).remove(),i.selectAll("g."+l+"-group").remove(),e.style("display",null).attr({"data-unformatted":a,"data-math":"N"});function o(){i.empty()||(l=e.attr("class")+"-math",i.select("svg."+l).remove()),e.text("").style("white-space","pre");var s=DK(e.node(),a);s&&e.style("pointer-events","all"),On.positionText(e),t&&t.call(e)}return n?(r&&r._promises||[]).push(new Promise(function(s){e.style("display","none");var u=parseInt(e.node().style.fontSize,10),f={fontSize:u};wK(n[2],f,function(c,h,d){i.selectAll("svg."+l).remove(),i.selectAll("g."+l+"-group").remove();var p=c&&c.select("svg");if(!p||!p.node()){o(),s();return}var m=i.append("g").classed(l+"-group",!0).attr({"pointer-events":"none","data-unformatted":a,"data-math":"Y"});m.node().appendChild(p.node()),h&&h.node()&&p.node().insertBefore(h.node().cloneNode(!0),p.node().firstChild);var y=d.width,b=d.height;p.attr({class:l,height:b,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var _=e.node().style.fill||"black",T=p.select("g");T.attr({fill:_,stroke:_});var x=T.node().getBoundingClientRect(),M=x.width,k=x.height;(M>y||k>b)&&(p.style("overflow","hidden"),x=p.node().getBoundingClientRect(),M=x.width,k=x.height);var A=+e.attr("x"),C=+e.attr("y"),D=u||e.node().getBoundingClientRect().height,E=-D/4;if(l[0]==="y")m.attr({transform:"rotate("+[-90,A,C]+")"+mK(-M/2,E-k/2)});else if(l[0]==="l")C=E-k/2;else if(l[0]==="a"&&l.indexOf("atitle")!==0)A=0,C=E;else{var R=e.attr("text-anchor");A=A-M*(R==="middle"?.5:R==="end"?1:0),C=C+E-k/2}p.attr({x:A,y:C}),t&&t.call(e,m),s(m)})})):o(),e};var xK=/(<|<|<)/g,bK=/(>|>|>)/g;function _K(e){return e.replace(xK,"\\lt ").replace(bK,"\\gt ")}var P9=[["$","$"],["\\(","\\)"]];function wK(e,r,t){var a=parseInt((MathJax.version||"").split(".")[0]);if(a!==2&&a!==3){cl.warn("No MathJax version:",MathJax.version);return}var n,i,l,o,s=function(){return i=cl.extendDeepAll({},MathJax.Hub.config),l=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:P9},displayAlign:"left"})},u=function(){i=cl.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=P9},f=function(){if(n=MathJax.Hub.config.menuSettings.renderer,n!=="SVG")return MathJax.Hub.setRenderer("SVG")},c=function(){n=MathJax.config.startup.output,n!=="svg"&&(MathJax.config.startup.output="svg")},h=function(){var _="math-output-"+cl.randstr({},64);o=Wt.select("body").append("div").attr({id:_}).style({visibility:"hidden",position:"absolute","font-size":r.fontSize+"px"}).text(_K(e));var T=o.node();return a===2?MathJax.Hub.Typeset(T):MathJax.typeset([T])},d=function(){var _=o.select(a===2?".MathJax_SVG":".MathJax"),T=!_.empty()&&o.select("svg").node();if(!T)cl.log("There was an error in the tex syntax.",e),t();else{var x=T.getBoundingClientRect(),M;a===2?M=Wt.select("body").select("#MathJax_SVG_glyphs"):M=_.select("defs"),t(_,M,x)}o.remove()},p=function(){if(n!=="SVG")return MathJax.Hub.setRenderer(n)},m=function(){n!=="svg"&&(MathJax.config.startup.output=n)},y=function(){return l!==void 0&&(MathJax.Hub.processSectionDelay=l),MathJax.Hub.Config(i)},b=function(){MathJax.config=i};a===2?MathJax.Hub.Queue(s,f,h,d,p,y):a===3&&(u(),c(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){h(),d(),m(),b()}))}var F9={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},TK={sub:"0.3em",sup:"-0.6em"},MK={sub:"-0.21em",sup:"0.42em"},R9="\u200B",z9=["http:","https:","mailto:","",void 0,":"],I9=On.NEWLINES=/(\r\n?|\n)/g,kg=/(<[^<>]*>)/,qg=/<(\/?)([^ >]*)(\s+(.*))?>/i,AK=//i;On.BR_TAG_ALL=//gi;var H9=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,O9=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,B9=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,kK=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function es(e,r){if(!e)return null;var t=e.match(r),a=t&&(t[3]||t[4]);return a&&Kh(a)}var qK=/(^|;)\s*color:/;On.plainText=function(e,r){r=r||{};for(var t=r.len!==void 0&&r.len!==-1?r.len:1/0,a=r.allowedTags!==void 0?r.allowedTags:["br"],n="...",i=n.length,l=e.split(kg),o=[],s="",u=0,f=0;fi?o.push(c.substr(0,m-i)+n):o.push(c.substr(0,m));break}s=""}}return o.join("")};var SK={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},CK=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function Kh(e){return e.replace(CK,function(r,t){var a;return t.charAt(0)==="#"?a=LK(t.charAt(1)==="x"?parseInt(t.substr(2),16):parseInt(t.substr(1),10)):a=SK[t],a||r})}On.convertEntities=Kh;function LK(e){if(!(e>1114111)){var r=String.fromCodePoint;if(r)return r(e);var t=String.fromCharCode;return e<=65535?t(e):t((e>>10)+55232,e%1024+56320)}}function DK(e,r){r=r.replace(I9," ");var t=!1,a=[],n,i=-1;function l(){i++;var k=document.createElementNS(Mg.svg,"tspan");Wt.select(k).attr({class:"line",dy:i*yK+"em"}),e.appendChild(k),n=k;var A=a;if(a=[{node:k}],A.length>1)for(var C=1;C.",r);return}var A=a.pop();k!==A.type&&cl.log("Start tag <"+A.type+"> doesnt match end tag <"+k+">. Pretending it did match.",r),n=a[a.length-1].node}var f=AK.test(r);f?l():(n=e,a=[{node:e}]);for(var c=r.split(kg),h=0;h{"use strict";var EK=kr(),jh=Nn(),Oc=zr(),Qh=Pe(),V9=xr(),PK=Bo().isValid;function RK(e,r,t){var a=r?Qh.nestedProperty(e,r).get()||{}:e,n=a[t||"color"];n&&n._inputArray&&(n=n._inputArray);var i=!1;if(Qh.isArrayOrTypedArray(n)){for(var l=0;l=0;a--,n++){var i=e[a];t[n]=[1-i[0],i[1]]}return t}function J9(e,r){r=r||{};for(var t=e.domain,a=e.range,n=a.length,i=new Array(n),l=0;l{"use strict";var K9=Wy(),NK=K9.FORMAT_LINK,FK=K9.DATE_FORMAT_LINK;function IK(e,r){return{valType:"string",dflt:"",editType:"none",description:(r?Sg:Q9)("hover text",e)+["By default the values are formatted using "+(r?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function Sg(e,r){return["Sets the "+e+" formatting rule"+(r?"for `"+r+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+NK+"."].join(" ")}function Q9(e,r){return Sg(e,r)+[" And for dates see: "+FK+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}j9.exports={axisHoverFormat:IK,descriptionOnlyNumbers:Sg,descriptionWithDates:Q9}});var _n=O((gge,mT)=>{"use strict";var eT=aa(),zu=Fn(),pT=fi().dash,Lg=mt().extendFlat,rT=lt().templatedArray,yge=gn().templateFormatStringDescription,tT=di().descriptionWithDates,HK=wt().ONEDAY,Ii=Ma(),OK=Ii.HOUR_PATTERN,BK=Ii.WEEKDAY_PATTERN,Cg={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},YK=Lg({},Cg,{values:Cg.values.slice().concat(["sync"])});function aT(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var nT={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},iT={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},lT={valType:"data_array",editType:"ticks"},oT={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function sT(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=5),r}function uT(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var fT={valType:"color",dflt:zu.defaultLine,editType:"ticks"},cT={valType:"color",dflt:zu.lightLine,editType:"ticks"};function vT(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var hT=Lg({},pT,{editType:"ticks"}),dT={valType:"boolean",editType:"ticks"};mT.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:zu.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:eT({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[Ii.idRegex.x.toString(),Ii.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[Ii.idRegex.x.toString(),Ii.idRegex.y.toString()],editType:"calc"},rangebreaks:rT("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[BK,OK,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:HK},editType:"calc"}),tickmode:YK,nticks:aT(),tick0:nT,dtick:iT,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:lT,ticktext:{valType:"data_array",editType:"ticks"},ticks:oT,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:sT(),tickwidth:uT(),tickcolor:fT,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:Lg({},pT,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:eT({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:tT("tick label")},tickformatstops:rT("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:tT("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:zu.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:dT,gridcolor:cT,gridwidth:vT(),griddash:hT,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:zu.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:zu.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",Ii.idRegex.x.toString(),Ii.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",Ii.idRegex.x.toString(),Ii.idRegex.y.toString()],editType:"plot"},minor:{tickmode:Cg,nticks:aT("minor"),tick0:nT,dtick:iT,tickvals:lT,ticks:oT,ticklen:sT("minor"),tickwidth:uT("minor"),tickcolor:fT,gridcolor:cT,gridwidth:vT("minor"),griddash:hT,showgrid:dT,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var ed=O((xge,xT)=>{"use strict";var gt=_n(),yT=aa(),gT=mt().extendFlat,VK=ui().overrideAll;xT.exports=VK({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:gt.linecolor,outlinewidth:gt.linewidth,bordercolor:gt.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:gt.minor.tickmode,nticks:gt.nticks,tick0:gt.tick0,dtick:gt.dtick,tickvals:gt.tickvals,ticktext:gt.ticktext,ticks:gT({},gt.ticks,{dflt:""}),ticklabeloverflow:gT({},gt.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:gt.ticklen,tickwidth:gt.tickwidth,tickcolor:gt.tickcolor,ticklabelstep:gt.ticklabelstep,showticklabels:gt.showticklabels,labelalias:gt.labelalias,tickfont:yT({}),tickangle:gt.tickangle,tickformat:gt.tickformat,tickformatstops:gt.tickformatstops,tickprefix:gt.tickprefix,showtickprefix:gt.showtickprefix,ticksuffix:gt.ticksuffix,showticksuffix:gt.showticksuffix,separatethousands:gt.separatethousands,exponentformat:gt.exponentformat,minexponent:gt.minexponent,showexponent:gt.showexponent,title:{text:{valType:"string"},font:yT({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var Bc=O((_ge,_T)=>{"use strict";var GK=ed(),UK=yu().counter,WK=jy(),bT=Bo().scales,bge=WK(bT);function rd(e){return"`"+e+"`"}_T.exports=function(r,t){r=r||"",t=t||{};var a=t.cLetter||"c",n="onlyIfNumerical"in t?t.onlyIfNumerical:!!r,i="noScale"in t?t.noScale:r==="marker.line",l="showScaleDflt"in t?t.showScaleDflt:a==="z",o=typeof t.colorscaleDflt=="string"?bT[t.colorscaleDflt]:null,s=t.editTypeOverride||"",u=r?r+".":"",f,c;"colorAttr"in t?(f=t.colorAttr,c=t.colorAttr):(f={z:"z",c:"color"}[a],c="in "+rd(u+f));var h=n?" Has an effect only if "+c+" is set to a numerical array.":"",d=a+"auto",p=a+"min",m=a+"max",y=a+"mid",b=rd(u+d),_=rd(u+p),T=rd(u+m),x=_+" and "+T,M={};M[p]=M[m]=void 0;var k={};k[d]=!1;var A={};return f==="color"&&(A.color={valType:"color",arrayOk:!0,editType:s||"style"},t.anim&&(A.color.anim=!0)),A[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:M},A[p]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:k},A[m]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:k},A[y]={valType:"number",dflt:null,editType:"calc",impliedEdits:M},A.colorscale={valType:"colorscale",editType:"calc",dflt:o,impliedEdits:{autocolorscale:!1}},A.autocolorscale={valType:"boolean",dflt:t.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},A.reversescale={valType:"boolean",dflt:!1,editType:"plot"},i||(A.showscale={valType:"boolean",dflt:l,editType:"calc"},A.colorbar=GK),t.noColorAxis||(A.coloraxis={valType:"subplotid",regex:UK("coloraxis"),dflt:null,editType:"calc"}),A}});var Eg=O((wge,wT)=>{"use strict";var XK=mt().extendFlat,ZK=Bc(),Dg=Bo().scales;wT.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:Dg.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:Dg.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:Dg.RdBu,editType:"calc"}},coloraxis:XK({_isSubplotObj:!0,editType:"calc"},ZK("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var Pg=O((Tge,TT)=>{"use strict";var JK=Pe();TT.exports=function(r){return JK.isPlainObject(r.colorbar)}});var Ng=O(zg=>{"use strict";var Rg=zr(),MT=Pe(),AT=wt(),$K=AT.ONEDAY,KK=AT.ONEWEEK;zg.dtick=function(e,r){var t=r==="log",a=r==="date",n=r==="category",i=a?$K:1;if(!e)return i;if(Rg(e))return e=Number(e),e<=0?i:n?Math.max(1,Math.round(e)):a?Math.max(.1,e):e;if(typeof e!="string"||!(a||t))return i;var l=e.charAt(0),o=e.substr(1);return o=Rg(o)?Number(o):0,o<=0||!(a&&l==="M"&&o===Math.round(o)||t&&l==="L"||t&&l==="D"&&(o===1||o===2))?i:e};zg.tick0=function(e,r,t,a){if(r==="date")return MT.cleanDate(e,MT.dateTick0(t,a%KK===0?1:0));if(!(a==="D1"||a==="D2"))return Rg(e)?Number(e):0}});var td=O((Age,qT)=>{"use strict";var kT=Ng(),QK=Pe().isArrayOrTypedArray,jK=yn().isTypedArraySpec,eQ=yn().decodeTypedArraySpec;qT.exports=function(r,t,a,n,i){i||(i={});var l=i.isMinor,o=l?r.minor||{}:r,s=l?t.minor:t,u=l?"minor.":"";function f(_){var T=o[_];return jK(T)&&(T=eQ(T)),T!==void 0?T:(s._template||{})[_]}var c=f("tick0"),h=f("dtick"),d=f("tickvals"),p=QK(d)?"array":h?"linear":"auto",m=a(u+"tickmode",p);if(m==="auto"||m==="sync")a(u+"nticks");else if(m==="linear"){var y=s.dtick=kT.dtick(h,n);s.tick0=kT.tick0(c,n,t.calendar,y)}else if(n!=="multicategory"){var b=a(u+"tickvals");b===void 0?s.tickmode="auto":l||a("ticktext")}}});var ad=O((kge,CT)=>{"use strict";var Fg=Pe(),ST=_n();CT.exports=function(r,t,a,n){var i=n.isMinor,l=i?r.minor||{}:r,o=i?t.minor:t,s=i?ST.minor:ST,u=i?"minor.":"",f=Fg.coerce2(l,o,s,"ticklen",i?(t.ticklen||5)*.6:void 0),c=Fg.coerce2(l,o,s,"tickwidth",i?t.tickwidth||1:void 0),h=Fg.coerce2(l,o,s,"tickcolor",(i?t.tickcolor:void 0)||o.color),d=a(u+"ticks",!i&&n.outerTicks||f||c||h?"outside":"");d||(delete o.ticklen,delete o.tickwidth,delete o.tickcolor)}});var Ig=O((qge,LT)=>{"use strict";LT.exports=function(r){var t=["showexponent","showtickprefix","showticksuffix"],a=t.filter(function(i){return r[i]!==void 0}),n=function(i){return r[i]===r[a[0]]};if(a.every(n)||a.length===1)return r[a[0]]}});var Bn=O((Sge,DT)=>{"use strict";var nd=Pe(),rQ=lt();DT.exports=function(r,t,a){var n=a.name,i=a.inclusionAttr||"visible",l=t[n],o=nd.isArrayOrTypedArray(r[n])?r[n]:[],s=t[n]=[],u=rQ.arrayTemplater(t,n,i),f,c;for(f=0;f{"use strict";var Hg=Pe(),tQ=xr().contrast,ET=_n(),aQ=Ig(),nQ=Bn();PT.exports=function(r,t,a,n,i){i||(i={});var l=a("labelalias");Hg.isPlainObject(l)||delete t.labelalias;var o=aQ(r),s=a("showticklabels");if(s){i.noTicklabelshift||a("ticklabelshift"),i.noTicklabelstandoff||a("ticklabelstandoff");var u=i.font||{},f=t.color,c=t.ticklabelposition||"",h=c.indexOf("inside")!==-1?tQ(i.bgColor):f&&f!==ET.color.dflt?f:u.color;if(Hg.coerceFont(a,"tickfont",u,{overrideDflt:{color:h}}),!i.noTicklabelstep&&n!=="multicategory"&&n!=="log"&&a("ticklabelstep"),!i.noAng){var d=a("tickangle");!i.noAutotickangles&&d==="auto"&&a("autotickangles")}if(n!=="category"){var p=a("tickformat");nQ(r,t,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:iQ}),t.tickformatstops.length||delete t.tickformatstops,!i.noExp&&!p&&n!=="date"&&(a("showexponent",o),a("exponentformat"),a("minexponent"),a("separatethousands"))}!i.noMinorloglabels&&n==="log"&&a("minorloglabels")}};function iQ(e,r){function t(n,i){return Hg.coerce(e,r,ET.tickformatstops,n,i)}var a=t("enabled");a&&(t("dtickrange"),t("value"))}});var ld=O((Lge,RT)=>{"use strict";var lQ=Ig();RT.exports=function(r,t,a,n,i){i||(i={});var l=i.tickSuffixDflt,o=lQ(r),s=a("tickprefix");s&&a("showtickprefix",o);var u=a("ticksuffix",l);u&&a("showticksuffix",o)}});var Og=O((Dge,zT)=>{"use strict";var Ul=Pe(),oQ=lt(),sQ=td(),uQ=ad(),fQ=id(),cQ=ld(),vQ=ed();zT.exports=function(r,t,a){var n=oQ.newContainer(t,"colorbar"),i=r.colorbar||{};function l(R,N){return Ul.coerce(i,n,vQ,R,N)}var o=a.margin||{t:0,b:0,l:0,r:0},s=a.width-o.l-o.r,u=a.height-o.t-o.b,f=l("orientation"),c=f==="v",h=l("thicknessmode");l("thickness",h==="fraction"?30/(c?s:u):30);var d=l("lenmode");l("len",d==="fraction"?1:c?u:s);var p=l("yref"),m=l("xref"),y=p==="paper",b=m==="paper",_,T,x,M="left";c?(x="middle",M=b?"left":"right",_=b?1.02:1,T=.5):(x=y?"bottom":"top",M="center",_=.5,T=y?1.02:1),Ul.coerce(i,n,{x:{valType:"number",min:b?-2:0,max:b?3:1,dflt:_}},"x"),Ul.coerce(i,n,{y:{valType:"number",min:y?-2:0,max:y?3:1,dflt:T}},"y"),l("xanchor",M),l("xpad"),l("yanchor",x),l("ypad"),Ul.noneOrAll(i,n,["x","y"]),l("outlinecolor"),l("outlinewidth"),l("bordercolor"),l("borderwidth"),l("bgcolor");var k=Ul.coerce(i,n,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:c?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");l("ticklabeloverflow",k.indexOf("inside")!==-1?"hide past domain":"hide past div"),sQ(i,n,l,"linear");var A=a.font,C={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:A};k.indexOf("inside")!==-1&&(C.bgColor="black"),cQ(i,n,l,"linear",C),fQ(i,n,l,"linear",C),uQ(i,n,l,"linear",C),l("title.text",a._dfltTitle.colorbar);var D=n.showticklabels?n.tickfont:A,E=Ul.extendFlat({},A,{family:D.family,size:Ul.bigFont(D.size)});Ul.coerceFont(l,"title.font",E),l("title.side",c?"top":"right")}});var Nu=O((Ege,IT)=>{"use strict";var NT=zr(),Yg=Pe(),hQ=Pg(),dQ=Og(),FT=Bo().isValid,pQ=gr().traceIs;function Bg(e,r){var t=r.slice(0,r.length-1);return r?Yg.nestedProperty(e,t).get()||{}:e}IT.exports=function e(r,t,a,n,i){var l=i.prefix,o=i.cLetter,s="_module"in t,u=Bg(r,l),f=Bg(t,l),c=Bg(t._template||{},l)||{},h=function(){return delete r.coloraxis,delete t.coloraxis,e(r,t,a,n,i)};if(s){var d=a._colorAxes||{},p=n(l+"coloraxis");if(p){var m=pQ(t,"contour")&&Yg.nestedProperty(t,"contours.coloring").get()||"heatmap",y=d[p];y?(y[2].push(h),y[0]!==m&&(y[0]=!1,Yg.warn(["Ignoring coloraxis:",p,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[p]=[m,t,[h]];return}}var b=u[o+"min"],_=u[o+"max"],T=NT(b)&&NT(_)&&b<_,x=n(l+o+"auto",!T);x?n(l+o+"mid"):(n(l+o+"min"),n(l+o+"max"));var M=u.colorscale,k=c.colorscale,A;if(M!==void 0&&(A=!FT(M)),k!==void 0&&(A=!FT(k)),n(l+"autocolorscale",A),n(l+"colorscale"),n(l+"reversescale"),l!=="marker.line."){var C;l&&s&&(C=hQ(u));var D=n(l+"showscale",C);D&&(l&&c&&(f._template=c),dQ(u,f,a))}}});var YT=O((Pge,BT)=>{"use strict";var HT=Pe(),mQ=lt(),OT=Eg(),yQ=Nu();BT.exports=function(r,t){function a(c,h){return HT.coerce(r,t,OT,c,h)}a("colorscale.sequential"),a("colorscale.sequentialminus"),a("colorscale.diverging");var n=t._colorAxes,i,l;function o(c,h){return HT.coerce(i,l,OT.coloraxis,c,h)}for(var s in n){var u=n[s];if(u[0])i=r[s]||{},l=mQ.newContainer(t,s,"coloraxis"),l._name=s,yQ(i,l,t,o,{prefix:"",cLetter:"c"});else{for(var f=0;f{"use strict";var gQ=Pe(),xQ=bn().hasColorscale,bQ=bn().extractOpts;VT.exports=function(r,t){function a(f,c){var h=f["_"+c];h!==void 0&&(f[c]=h)}function n(f,c){var h=c.container?gQ.nestedProperty(f,c.container).get():f;if(h)if(h.coloraxis)h._colorAx=t[h.coloraxis];else{var d=bQ(h),p=d.auto;(p||d.min===void 0)&&a(h,c.min),(p||d.max===void 0)&&a(h,c.max),d.autocolorscale&&a(h,"colorscale")}}for(var i=0;i{"use strict";var UT=zr(),Vg=Pe(),_Q=bn().extractOpts;WT.exports=function(r,t,a){var n=r._fullLayout,i=a.vals,l=a.containerStr,o=l?Vg.nestedProperty(t,l).get():t,s=_Q(o),u=s.auto!==!1,f=s.min,c=s.max,h=s.mid,d=function(){return Vg.aggNums(Math.min,null,i)},p=function(){return Vg.aggNums(Math.max,null,i)};if(f===void 0?f=d():u&&(o._colorAx&&UT(f)?f=Math.min(f,d()):f=d()),c===void 0?c=p():u&&(o._colorAx&&UT(c)?c=Math.max(c,p()):c=p()),u&&h!==void 0&&(c-h>h-f?f=h-(c-h):c-h=0?m=n.colorscale.sequential:m=n.colorscale.sequentialminus,s._sync("colorscale",m)}}});var Gg=O((Nge,XT)=>{"use strict";var od=Bo(),Fu=bn();XT.exports={moduleType:"component",name:"colorscale",attributes:Bc(),layoutAttributes:Eg(),supplyLayoutDefaults:YT(),handleDefaults:Nu(),crossTraceDefaults:GT(),calc:Yc(),scales:od.scales,defaultScale:od.defaultScale,getScale:od.get,isValidScale:od.isValid,hasColorscale:Fu.hasColorscale,extractOpts:Fu.extractOpts,extractScale:Fu.extractScale,flipScale:Fu.flipScale,makeColorScaleFunc:Fu.makeColorScaleFunc,makeColorScaleFuncFromTrace:Fu.makeColorScaleFuncFromTrace}});var wn=O((Fge,JT)=>{"use strict";var ZT=Pe(),wQ=yn().isTypedArraySpec;JT.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var r=e.marker;return ZT.isPlainObject(r)&&(ZT.isArrayOrTypedArray(r.size)||wQ(r.size))}}});var KT=O((Ige,$T)=>{"use strict";var TQ=zr();$T.exports=function(r,t){t||(t=2);var a=r.marker,n=a.sizeref||1,i=a.sizemin||0,l=a.sizemode==="area"?function(o){return Math.sqrt(o/n)}:function(o){return o/n};return function(o){var s=l(o/t);return TQ(s)&&s>0?Math.max(s,i):0}}});var Hi=O(Pa=>{"use strict";var sd=Pe();Pa.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};Pa.isTraceInSubplots=function(e,r){if(e.type==="splom"){for(var t=e.xaxes||[],a=e.yaxes||[],n=0;n=0&&t.index{eM.exports=SQ;var Ug={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},qQ=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function SQ(e){var r=[];return e.replace(qQ,function(t,a,n){var i=a.toLowerCase();for(n=LQ(n),i=="m"&&n.length>2&&(r.push([a].concat(n.splice(0,2))),i="l",a=a=="m"?"l":"L");;){if(n.length==Ug[i])return n.unshift(a),r.push(n);if(n.length{"use strict";var DQ=Wg(),Ze=function(e,r){return r?Math.round(e*(r=Math.pow(10,r)))/r:Math.round(e)},qr="M0,0Z",rM=Math.sqrt(2),Wl=Math.sqrt(3),Xg=Math.PI,Zg=Math.cos,Jg=Math.sin;lM.exports={circle:{n:0,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n="M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z";return t?Cr(r,t,n):n}},square:{n:1,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")}},diamond:{n:2,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.3,2);return Cr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"Z")}},cross:{n:3,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.4,2),n=Ze(e*1.2,2);return Cr(r,t,"M"+n+","+a+"H"+a+"V"+n+"H-"+a+"V"+a+"H-"+n+"V-"+a+"H-"+a+"V-"+n+"H"+a+"V-"+a+"H"+n+"Z")}},x:{n:4,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.8/rM,2),n="l"+a+","+a,i="l"+a+",-"+a,l="l-"+a+",-"+a,o="l-"+a+","+a;return Cr(r,t,"M0,"+a+n+i+l+i+l+o+l+o+n+o+n+"Z")}},"triangle-up":{n:5,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2/Wl,2),n=Ze(e/2,2),i=Ze(e,2);return Cr(r,t,"M-"+a+","+n+"H"+a+"L0,-"+i+"Z")}},"triangle-down":{n:6,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2/Wl,2),n=Ze(e/2,2),i=Ze(e,2);return Cr(r,t,"M-"+a+",-"+n+"H"+a+"L0,"+i+"Z")}},"triangle-left":{n:7,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2/Wl,2),n=Ze(e/2,2),i=Ze(e,2);return Cr(r,t,"M"+n+",-"+a+"V"+a+"L-"+i+",0Z")}},"triangle-right":{n:8,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2/Wl,2),n=Ze(e/2,2),i=Ze(e,2);return Cr(r,t,"M-"+n+",-"+a+"V"+a+"L"+i+",0Z")}},"triangle-ne":{n:9,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.6,2),n=Ze(e*1.2,2);return Cr(r,t,"M-"+n+",-"+a+"H"+a+"V"+n+"Z")}},"triangle-se":{n:10,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.6,2),n=Ze(e*1.2,2);return Cr(r,t,"M"+a+",-"+n+"V"+a+"H-"+n+"Z")}},"triangle-sw":{n:11,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.6,2),n=Ze(e*1.2,2);return Cr(r,t,"M"+n+","+a+"H-"+a+"V-"+n+"Z")}},"triangle-nw":{n:12,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.6,2),n=Ze(e*1.2,2);return Cr(r,t,"M-"+a+","+n+"V-"+a+"H"+n+"Z")}},pentagon:{n:13,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.951,2),n=Ze(e*.588,2),i=Ze(-e,2),l=Ze(e*-.309,2),o=Ze(e*.809,2);return Cr(r,t,"M"+a+","+l+"L"+n+","+o+"H-"+n+"L-"+a+","+l+"L0,"+i+"Z")}},hexagon:{n:14,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n=Ze(e/2,2),i=Ze(e*Wl/2,2);return Cr(r,t,"M"+i+",-"+n+"V"+n+"L0,"+a+"L-"+i+","+n+"V-"+n+"L0,-"+a+"Z")}},hexagon2:{n:15,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n=Ze(e/2,2),i=Ze(e*Wl/2,2);return Cr(r,t,"M-"+n+","+i+"H"+n+"L"+a+",0L"+n+",-"+i+"H-"+n+"L-"+a+",0Z")}},octagon:{n:16,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.924,2),n=Ze(e*.383,2);return Cr(r,t,"M-"+n+",-"+a+"H"+n+"L"+a+",-"+n+"V"+n+"L"+n+","+a+"H-"+n+"L-"+a+","+n+"V-"+n+"Z")}},star:{n:17,f:function(e,r,t){if(Sr(r))return qr;var a=e*1.4,n=Ze(a*.225,2),i=Ze(a*.951,2),l=Ze(a*.363,2),o=Ze(a*.588,2),s=Ze(-a,2),u=Ze(a*-.309,2),f=Ze(a*.118,2),c=Ze(a*.809,2),h=Ze(a*.382,2);return Cr(r,t,"M"+n+","+u+"H"+i+"L"+l+","+f+"L"+o+","+c+"L0,"+h+"L-"+o+","+c+"L-"+l+","+f+"L-"+i+","+u+"H-"+n+"L0,"+s+"Z")}},hexagram:{n:18,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.66,2),n=Ze(e*.38,2),i=Ze(e*.76,2);return Cr(r,t,"M-"+i+",0l-"+n+",-"+a+"h"+i+"l"+n+",-"+a+"l"+n+","+a+"h"+i+"l-"+n+","+a+"l"+n+","+a+"h-"+i+"l-"+n+","+a+"l-"+n+",-"+a+"h-"+i+"Z")}},"star-triangle-up":{n:19,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*Wl*.8,2),n=Ze(e*.8,2),i=Ze(e*1.6,2),l=Ze(e*4,2),o="A "+l+","+l+" 0 0 1 ";return Cr(r,t,"M-"+a+","+n+o+a+","+n+o+"0,-"+i+o+"-"+a+","+n+"Z")}},"star-triangle-down":{n:20,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*Wl*.8,2),n=Ze(e*.8,2),i=Ze(e*1.6,2),l=Ze(e*4,2),o="A "+l+","+l+" 0 0 1 ";return Cr(r,t,"M"+a+",-"+n+o+"-"+a+",-"+n+o+"0,"+i+o+a+",-"+n+"Z")}},"star-square":{n:21,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.1,2),n=Ze(e*2,2),i="A "+n+","+n+" 0 0 1 ";return Cr(r,t,"M-"+a+",-"+a+i+"-"+a+","+a+i+a+","+a+i+a+",-"+a+i+"-"+a+",-"+a+"Z")}},"star-diamond":{n:22,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.4,2),n=Ze(e*1.9,2),i="A "+n+","+n+" 0 0 1 ";return Cr(r,t,"M-"+a+",0"+i+"0,"+a+i+a+",0"+i+"0,-"+a+i+"-"+a+",0Z")}},"diamond-tall":{n:23,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.7,2),n=Ze(e*1.4,2);return Cr(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},"diamond-wide":{n:24,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.4,2),n=Ze(e*.7,2);return Cr(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},hourglass:{n:25,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M"+a+","+a+"H-"+a+"L"+a+",-"+a+"H-"+a+"Z")},noDot:!0},bowtie:{n:26,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M"+a+","+a+"V-"+a+"L-"+a+","+a+"V-"+a+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n=Ze(e/rM,2);return Cr(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.3,2);return Cr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM0,-"+a+"V"+a+"M-"+a+",0H"+a)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.3,2),n=Ze(e*.65,2);return Cr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM-"+n+",-"+n+"L"+n+","+n+"M-"+n+","+n+"L"+n+",-"+n)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.4,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.2,2),n=Ze(e*.85,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e/2,2),n=Ze(e,2);return Cr(r,t,"M"+a+","+n+"V-"+n+"M"+(a-n)+",-"+n+"V"+n+"M"+n+","+a+"H-"+n+"M-"+n+","+(a-n)+"H"+n)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.2,2),n=Ze(e*1.6,2),i=Ze(e*.8,2);return Cr(r,t,"M-"+a+","+i+"L0,0M"+a+","+i+"L0,0M0,-"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.2,2),n=Ze(e*1.6,2),i=Ze(e*.8,2);return Cr(r,t,"M-"+a+",-"+i+"L0,0M"+a+",-"+i+"L0,0M0,"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.2,2),n=Ze(e*1.6,2),i=Ze(e*.8,2);return Cr(r,t,"M"+i+","+a+"L0,0M"+i+",-"+a+"L0,0M-"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.2,2),n=Ze(e*1.6,2),i=Ze(e*.8,2);return Cr(r,t,"M-"+i+","+a+"L0,0M-"+i+",-"+a+"L0,0M"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.4,2);return Cr(r,t,"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.4,2);return Cr(r,t,"M0,"+a+"V-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M"+a+","+a+"L-"+a+",-"+a)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n=Ze(e*2,2);return Cr(r,t,"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n=Ze(e*2,2);return Cr(r,t,"M0,0L-"+a+",-"+n+"H"+a+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2,2),n=Ze(e,2);return Cr(r,t,"M0,0L"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2,2),n=Ze(e,2);return Cr(r,t,"M0,0L-"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n=Ze(e*2,2);return Cr(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n=Ze(e*2,2);return Cr(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+",-"+n+"H"+a+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2,2),n=Ze(e,2);return Cr(r,t,"M0,-"+n+"V"+n+"M0,0L"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2,2),n=Ze(e,2);return Cr(r,t,"M0,-"+n+"V"+n+"M0,0L-"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,r,t){if(Sr(r))return qr;var a=Xg/2.5,n=2*e*Zg(a),i=2*e*Jg(a);return Cr(r,t,"M0,0L"+-n+","+i+"L"+n+","+i+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,r,t){if(Sr(r))return qr;var a=Xg/4,n=2*e*Zg(a),i=2*e*Jg(a);return Cr(r,t,"M0,0L"+-n+","+i+"A "+2*e+","+2*e+" 0 0 1 "+n+","+i+"Z")},backoff:.4,noDot:!0}};function Sr(e){return e===null}var tM,aM,nM,iM;function Cr(e,r,t){if((!e||e%360===0)&&!r)return t;if(nM===e&&iM===r&&tM===t)return aM;nM=e,iM=r,tM=t;function a(y,b){var _=Zg(y),T=Jg(y),x=b[0],M=b[1]+(r||0);return[x*_-M*T,x*T+M*_]}for(var n=e/180*Xg,i=0,l=0,o=DQ(t),s="",u=0;u{"use strict";var ia=kr(),nt=Pe(),EQ=nt.numberFormat,ns=zr(),r2=Nn(),fd=gr(),Aa=xr(),PQ=Gg(),Gc=nt.strTranslate,cd=va(),RQ=jo(),zQ=Ea(),NQ=zQ.LINE_SPACING,yM=mu().DESELECTDIM,FQ=wn(),IQ=KT(),HQ=Hi().appendArrayPointValue,er=qM.exports={};er.font=function(e,r){var t=r.variant,a=r.style,n=r.weight,i=r.color,l=r.size,o=r.family,s=r.shadow,u=r.lineposition,f=r.textcase;o&&e.style("font-family",o),l+1&&e.style("font-size",l+"px"),i&&e.call(Aa.fill,i),n&&e.style("font-weight",n),a&&e.style("font-style",a),t&&e.style("font-variant",t),f&&e.style("text-transform",$g(BQ(f))),s&&e.style("text-shadow",s==="auto"?cd.makeTextShadow(Aa.contrast(i)):$g(s)),u&&e.style("text-decoration-line",$g(YQ(u)))};function $g(e){return e==="none"?void 0:e}var OQ={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function BQ(e){return OQ[e]}function YQ(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}er.setPosition=function(e,r,t){e.attr("x",r).attr("y",t)};er.setSize=function(e,r,t){e.attr("width",r).attr("height",t)};er.setRect=function(e,r,t,a,n){e.call(er.setPosition,r,t).call(er.setSize,a,n)};er.translatePoint=function(e,r,t,a){var n=t.c2p(e.x),i=a.c2p(e.y);if(ns(n)&&ns(i)&&r.node())r.node().nodeName==="text"?r.attr("x",n).attr("y",i):r.attr("transform",Gc(n,i));else return!1;return!0};er.translatePoints=function(e,r,t){e.each(function(a){var n=ia.select(this);er.translatePoint(a,n,r,t)})};er.hideOutsideRangePoint=function(e,r,t,a,n,i){r.attr("display",t.isPtWithinRange(e,n)&&a.isPtWithinRange(e,i)?null:"none")};er.hideOutsideRangePoints=function(e,r){if(r._hasClipOnAxisFalse){var t=r.xaxis,a=r.yaxis;e.each(function(n){var i=n[0].trace,l=i.xcalendar,o=i.ycalendar,s=fd.traceIs(i,"bar-like")?".bartext":".point,.textpoint";e.selectAll(s).each(function(u){er.hideOutsideRangePoint(u,ia.select(this),t,a,l,o)})})}};er.crispRound=function(e,r,t){return!r||!ns(r)?t||0:e._context.staticPlot?r:r<1?1:Math.round(r)};er.singleLineStyle=function(e,r,t,a,n){r.style("fill","none");var i=(((e||[])[0]||{}).trace||{}).line||{},l=t||i.width||0,o=n||i.dash||"";Aa.stroke(r,a||i.color),er.dashLine(r,o,l)};er.lineGroupStyle=function(e,r,t,a){e.style("fill","none").each(function(n){var i=(((n||[])[0]||{}).trace||{}).line||{},l=r||i.width||0,o=a||i.dash||"";ia.select(this).call(Aa.stroke,t||i.color).call(er.dashLine,o,l)})};er.dashLine=function(e,r,t){t=+t||0,r=er.dashStyle(r,t),e.style({"stroke-dasharray":r,"stroke-width":t+"px"})};er.dashStyle=function(e,r){r=+r||1;var t=Math.max(r,3);return e==="solid"?e="":e==="dot"?e=t+"px,"+t+"px":e==="dash"?e=3*t+"px,"+3*t+"px":e==="longdash"?e=5*t+"px,"+5*t+"px":e==="dashdot"?e=3*t+"px,"+t+"px,"+t+"px,"+t+"px":e==="longdashdot"&&(e=5*t+"px,"+2*t+"px,"+t+"px,"+2*t+"px"),e};function gM(e,r,t,a){var n=r.fillpattern,i=r.fillgradient,l=er.getPatternAttr,o=n&&(l(n.shape,0,"")||l(n.path,0,""));if(o){var s=l(n.bgcolor,0,null),u=l(n.fgcolor,0,null),f=n.fgopacity,c=l(n.size,0,8),h=l(n.solidity,0,.3),d=r.uid;er.pattern(e,"point",t,d,o,c,h,void 0,n.fillmode,s,u,f)}else if(i&&i.type!=="none"){var p=i.type,m="scatterfill-"+r.uid;if(a&&(m="legendfill-"+r.uid),!a&&(i.start!==void 0||i.stop!==void 0)){var y,b;p==="horizontal"?(y={x:i.start,y:0},b={x:i.stop,y:0}):p==="vertical"&&(y={x:0,y:i.start},b={x:0,y:i.stop}),y.x=r._xA.c2p(y.x===void 0?r._extremes.x.min[0].val:y.x,!0),y.y=r._yA.c2p(y.y===void 0?r._extremes.y.min[0].val:y.y,!0),b.x=r._xA.c2p(b.x===void 0?r._extremes.x.max[0].val:b.x,!0),b.y=r._yA.c2p(b.y===void 0?r._extremes.y.max[0].val:b.y,!0),e.call(_M,t,m,"linear",i.colorscale,"fill",y,b,!0,!1)}else p==="horizontal"&&(p=p+"reversed"),e.call(er.gradient,t,m,p,i.colorscale,"fill")}else r.fillcolor&&e.call(Aa.fill,r.fillcolor)}er.singleFillStyle=function(e,r){var t=ia.select(e.node()),a=t.data(),n=((a[0]||[])[0]||{}).trace||{};gM(e,n,r,!1)};er.fillGroupStyle=function(e,r,t){e.style("stroke-width",0).each(function(a){var n=ia.select(this);a[0].trace&&gM(n,a[0].trace,r,t)})};var sM=oM();er.symbolNames=[];er.symbolFuncs=[];er.symbolBackOffs=[];er.symbolNeedLines={};er.symbolNoDot={};er.symbolNoFill={};er.symbolList=[];Object.keys(sM).forEach(function(e){var r=sM[e],t=r.n;er.symbolList.push(t,String(t),e,t+100,String(t+100),e+"-open"),er.symbolNames[t]=e,er.symbolFuncs[t]=r.f,er.symbolBackOffs[t]=r.backoff||0,r.needLine&&(er.symbolNeedLines[t]=!0),r.noDot?er.symbolNoDot[t]=!0:er.symbolList.push(t+200,String(t+200),e+"-dot",t+300,String(t+300),e+"-open-dot"),r.noFill&&(er.symbolNoFill[t]=!0)});var VQ=er.symbolNames.length,GQ="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";er.symbolNumber=function(e){if(ns(e))e=+e;else if(typeof e=="string"){var r=0;e.indexOf("-open")>0&&(r=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(r+=200,e=e.replace("-dot","")),e=er.symbolNames.indexOf(e),e>=0&&(e+=r)}return e%100>=VQ||e>=400?0:Math.floor(Math.max(e,0))};function xM(e,r,t,a){var n=e%100;return er.symbolFuncs[n](r,t,a)+(e>=200?GQ:"")}var uM=EQ("~f"),bM={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};er.gradient=function(e,r,t,a,n,i){var l=bM[a];return _M(e,r,t,l.type,n,i,l.start,l.stop,!1,l.reversed)};function _M(e,r,t,a,n,i,l,o,s,u){var f=n.length,c;a==="linear"?c={node:"linearGradient",attrs:{x1:l.x,y1:l.y,x2:o.x,y2:o.y,gradientUnits:s?"userSpaceOnUse":"objectBoundingBox"},reversed:u}:a==="radial"&&(c={node:"radialGradient",reversed:u});for(var h=new Array(f),d=0;d=0&&e.i===void 0&&(e.i=i.i),r.style("opacity",a.selectedOpacityFn?a.selectedOpacityFn(e):e.mo===void 0?l.opacity:e.mo),a.ms2mrc){var s;e.ms==="various"||l.size==="various"?s=3:s=a.ms2mrc(e.ms),e.mrc=s,a.selectedSizeFn&&(s=e.mrc=a.selectedSizeFn(e));var u=er.symbolNumber(e.mx||l.symbol)||0;e.om=u%200>=100;var f=n2(e,t),c=a2(e,t);r.attr("d",xM(u,s,f,c))}var h=!1,d,p,m;if(e.so)m=o.outlierwidth,p=o.outliercolor,d=l.outliercolor;else{var y=(o||{}).width;m=(e.mlw+1||y+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?p=e.mlcc=a.lineScale(e.mlc):nt.isArrayOrTypedArray(o.color)?p=Aa.defaultLine:p=o.color,nt.isArrayOrTypedArray(l.color)&&(d=Aa.defaultLine,h=!0),"mc"in e?d=e.mcc=a.markerScale(e.mc):d=l.color||l.colors||"rgba(0,0,0,0)",a.selectedColorFn&&(d=a.selectedColorFn(e))}if(e.om)r.call(Aa.stroke,d).style({"stroke-width":(m||1)+"px",fill:"none"});else{r.style("stroke-width",(e.isBlank?0:m)+"px");var b=l.gradient,_=e.mgt;_?h=!0:_=b&&b.type,nt.isArrayOrTypedArray(_)&&(_=_[0],bM[_]||(_=0));var T=l.pattern,x=er.getPatternAttr,M=T&&(x(T.shape,e.i,"")||x(T.path,e.i,""));if(_&&_!=="none"){var k=e.mgc;k?h=!0:k=b.color;var A=t.uid;h&&(A+="-"+e.i),er.gradient(r,n,A,_,[[0,k],[1,d]],"fill")}else if(M){var C=!1,D=T.fgcolor;!D&&i&&i.color&&(D=i.color,C=!0);var E=x(D,e.i,i&&i.color||null),R=x(T.bgcolor,e.i,null),N=T.fgopacity,I=x(T.size,e.i,8),H=x(T.solidity,e.i,.3);C=C||e.mcc||nt.isArrayOrTypedArray(T.shape)||nt.isArrayOrTypedArray(T.path)||nt.isArrayOrTypedArray(T.bgcolor)||nt.isArrayOrTypedArray(T.fgcolor)||nt.isArrayOrTypedArray(T.size)||nt.isArrayOrTypedArray(T.solidity);var G=t.uid;C&&(G+="-"+e.i),er.pattern(r,"point",n,G,M,I,H,e.mcc,T.fillmode,R,E,N)}else nt.isArrayOrTypedArray(d)?Aa.fill(r,d[e.i]):Aa.fill(r,d);m&&Aa.stroke(r,p)}};er.makePointStyleFns=function(e){var r={},t=e.marker;return r.markerScale=er.tryColorscale(t,""),r.lineScale=er.tryColorscale(t,"line"),fd.traceIs(e,"symbols")&&(r.ms2mrc=FQ.isBubble(e)?IQ(e):function(){return(t.size||6)/2}),e.selectedpoints&&nt.extendFlat(r,er.makeSelectedPointStyleFns(e)),r};er.makeSelectedPointStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.marker||{},i=t.marker||{},l=a.marker||{},o=n.opacity,s=i.opacity,u=l.opacity,f=s!==void 0,c=u!==void 0;(nt.isArrayOrTypedArray(o)||f||c)&&(r.selectedOpacityFn=function(x){var M=x.mo===void 0?n.opacity:x.mo;return x.selected?f?s:M:c?u:yM*M});var h=n.color,d=i.color,p=l.color;(d||p)&&(r.selectedColorFn=function(x){var M=x.mcc||h;return x.selected?d||M:p||M});var m=n.size,y=i.size,b=l.size,_=y!==void 0,T=b!==void 0;return fd.traceIs(e,"symbols")&&(_||T)&&(r.selectedSizeFn=function(x){var M=x.mrc||m/2;return x.selected?_?y/2:M:T?b/2:M}),r};er.makeSelectedTextStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.textfont||{},i=t.textfont||{},l=a.textfont||{},o=n.color,s=i.color,u=l.color;return r.selectedTextColorFn=function(f){var c=f.tc||o;return f.selected?s||c:u||(s?c:Aa.addOpacity(c,yM))},r};er.selectedPointStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=er.makeSelectedPointStyleFns(r),a=r.marker||{},n=[];t.selectedOpacityFn&&n.push(function(i,l){i.style("opacity",t.selectedOpacityFn(l))}),t.selectedColorFn&&n.push(function(i,l){Aa.fill(i,t.selectedColorFn(l))}),t.selectedSizeFn&&n.push(function(i,l){var o=l.mx||a.symbol||0,s=t.selectedSizeFn(l);i.attr("d",xM(er.symbolNumber(o),s,n2(l,r),a2(l,r))),l.mrc2=s}),n.length&&e.each(function(i){for(var l=ia.select(this),o=0;o0?t:0}er.textPointStyle=function(e,r,t){if(e.size()){var a;if(r.selectedpoints){var n=er.makeSelectedTextStyleFns(r);a=n.selectedTextColorFn}var i=r.texttemplate,l=t._fullLayout;e.each(function(o){var s=ia.select(this),u=i?nt.extractOption(o,r,"txt","texttemplate"):nt.extractOption(o,r,"tx","text");if(!u&&u!==0){s.remove();return}if(i){var f=r._module.formatLabels,c=f?f(o,r,l):{},h={};HQ(h,r,o.i),u=nt.texttemplateString({data:[h,o,r._meta],fallback:r.texttemplatefallback,labels:c,locale:l._d3locale,template:u})}var d=o.tp||r.textposition,p=TM(o,r),m=a?a(o):o.tc||r.textfont.color;s.call(er.font,{family:o.tf||r.textfont.family,weight:o.tw||r.textfont.weight,style:o.ty||r.textfont.style,variant:o.tv||r.textfont.variant,textcase:o.tC||r.textfont.textcase,lineposition:o.tE||r.textfont.lineposition,shadow:o.tS||r.textfont.shadow,size:p,color:m}).text(u).call(cd.convertToTspans,t).call(wM,d,p,o.mrc)})}};er.selectedTextStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=er.makeSelectedTextStyleFns(r);e.each(function(a){var n=ia.select(this),i=t.selectedTextColorFn(a),l=a.tp||r.textposition,o=TM(a,r);Aa.fill(n,i);var s=fd.traceIs(r,"bar-like");wM(n,l,o,a.mrc2||a.mrc,s)})}};var fM=.5;er.smoothopen=function(e,r){if(e.length<3)return"M"+e.join("L");var t="M"+e[0],a=[],n;for(n=1;n=s||x>=f&&x<=s)&&(M<=c&&M>=u||M>=c&&M<=u)&&(e=[x,M])}return e}er.applyBackoff=kM;er.makeTester=function(){var e=nt.ensureSingleById(ia.select("body"),"svg","js-plotly-tester",function(t){t.attr(RQ.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),r=nt.ensureSingle(e,"path","js-reference-point",function(t){t.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});er.tester=e,er.testref=r};er.savedBBoxes={};var Qg=0,XQ=1e4;er.bBox=function(e,r,t){t||(t=cM(e));var a;if(t){if(a=er.savedBBoxes[t],a)return nt.extendFlat({},a)}else if(e.childNodes.length===1){var n=e.childNodes[0];if(t=cM(n),t){var i=+n.getAttribute("x")||0,l=+n.getAttribute("y")||0,o=n.getAttribute("transform");if(!o){var s=er.bBox(n,!1,t);return i&&(s.left+=i,s.right+=i),l&&(s.top+=l,s.bottom+=l),s}if(t+="~"+i+"~"+l+"~"+o,a=er.savedBBoxes[t],a)return nt.extendFlat({},a)}}var u,f;r?u=e:(f=er.tester.node(),u=e.cloneNode(!0),f.appendChild(u)),ia.select(u).attr("transform",null).call(cd.positionText,0,0);var c=u.getBoundingClientRect(),h=er.testref.node().getBoundingClientRect();r||f.removeChild(u);var d={height:c.height,width:c.width,left:c.left-h.left,top:c.top-h.top,right:c.right-h.left,bottom:c.bottom-h.top};return Qg>=XQ&&(er.savedBBoxes={},Qg=0),t&&(er.savedBBoxes[t]=d),Qg++,nt.extendFlat({},d)};function cM(e){var r=e.getAttribute("data-unformatted");if(r!==null)return r+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}er.setClipUrl=function(e,r,t){e.attr("clip-path",t2(r,t))};function t2(e,r){if(!e)return null;var t=r._context,a=t._exportedPlot?"":t._baseUrl||"";return a?"url('"+a+"#"+e+"')":"url(#"+e+")"}er.getTranslate=function(e){var r=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,l,o){return[l,o].join(" ")}).split(" ");return{x:+n[0]||0,y:+n[1]||0}};er.setTranslate=function(e,r,t){var a=/(\btranslate\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",l=e[n]("transform")||"";return r=r||0,t=t||0,l=l.replace(a,"").trim(),l+=Gc(r,t),l=l.trim(),e[i]("transform",l),l};er.getScale=function(e){var r=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,l,o){return[l,o].join(" ")}).split(" ");return{x:+n[0]||1,y:+n[1]||1}};er.setScale=function(e,r,t){var a=/(\bscale\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",l=e[n]("transform")||"";return r=r||1,t=t||1,l=l.replace(a,"").trim(),l+="scale("+r+","+t+")",l=l.trim(),e[i]("transform",l),l};var ZQ=/\s*sc.*/;er.setPointGroupScale=function(e,r,t){if(r=r||1,t=t||1,!!e){var a=r===1&&t===1?"":"scale("+r+","+t+")";e.each(function(){var n=(this.getAttribute("transform")||"").replace(ZQ,"");n+=a,n=n.trim(),this.setAttribute("transform",n)})}};var JQ=/translate\([^)]*\)\s*$/;er.setTextPointsScale=function(e,r,t){e&&e.each(function(){var a,n=ia.select(this),i=n.select("text");if(i.node()){var l=parseFloat(i.attr("x")||0),o=parseFloat(i.attr("y")||0),s=(n.attr("transform")||"").match(JQ);r===1&&t===1?a=[]:a=[Gc(l,o),"scale("+r+","+t+")",Gc(-l,-o)],s&&a.push(s),n.attr("transform",a.join(""))}})};function a2(e,r){var t;return e&&(t=e.mf),t===void 0&&(t=r.marker&&r.marker.standoff||0),!r._geo&&!r._xA?-t:t}er.getMarkerStandoff=a2;var Vc=Math.atan2,rs=Math.cos,Hu=Math.sin;function vM(e,r){var t=r[0],a=r[1];return[t*rs(e)-a*Hu(e),t*Hu(e)+a*rs(e)]}var hM,dM,pM,mM,jg,e2;function n2(e,r){var t=e.ma;t===void 0&&(t=r.marker.angle,(!t||nt.isArrayOrTypedArray(t))&&(t=0));var a,n,i=r.marker.angleref;if(i==="previous"||i==="north"){if(r._geo){var l=r._geo.project(e.lonlat);a=l[0],n=l[1]}else{var o=r._xA,s=r._yA;if(o&&s)a=o.c2p(e.x),n=s.c2p(e.y);else return 90}if(r._geo){var u=e.lonlat[0],f=e.lonlat[1],c=r._geo.project([u,f+1e-5]),h=r._geo.project([u+1e-5,f]),d=Vc(h[1]-n,h[0]-a),p=Vc(c[1]-n,c[0]-a),m;if(i==="north")m=t/180*Math.PI;else if(i==="previous"){var y=u/180*Math.PI,b=f/180*Math.PI,_=hM/180*Math.PI,T=dM/180*Math.PI,x=_-y,M=rs(T)*Hu(x),k=Hu(T)*rs(b)-rs(T)*Hu(b)*rs(x);m=-Vc(M,k)-Math.PI,hM=u,dM=f}var A=vM(d,[rs(m),0]),C=vM(p,[Hu(m),0]);t=Vc(A[1]+C[1],A[0]+C[0])/Math.PI*180,i==="previous"&&!(e2===r.uid&&e.i===jg+1)&&(t=null)}if(i==="previous"&&!r._geo)if(e2===r.uid&&e.i===jg+1&&ns(a)&&ns(n)){var D=a-pM,E=n-mM,R=r.line&&r.line.shape||"",N=R.slice(R.length-1);N==="h"&&(E=0),N==="v"&&(D=0),t+=Vc(E,D)/Math.PI*180+90}else t=null}return pM=a,mM=n,jg=e.i,e2=r.uid,t}er.getMarkerAngle=n2});var Uc=O((Vge,DM)=>{"use strict";var Ou=kr(),$Q=zr(),KQ=Rt(),i2=gr(),is=Pe(),SM=is.strTranslate,vd=Yr(),hd=xr(),Bu=va(),CM=mu(),QQ=Ea().OPPOSITE_SIDE,LM=/ [XY][0-9]* /,l2=1.6,o2=1.6;function jQ(e,r,t){var a=e._fullLayout,n=t.propContainer,i=t.propName,l=t.placeholder,o=t.traceIndex,s=t.avoid||{},u=t.attributes,f=t.transform,c=t.containerGroup,h=1,d=n.title,p=(d&&d.text?d.text:"").trim(),m=!1,y=d&&d.font?d.font:{},b=y.family,_=y.size,T=y.color,x=y.weight,M=y.style,k=y.variant,A=y.textcase,C=y.lineposition,D=y.shadow,E=t.subtitlePropName,R=!!E,N=t.subtitlePlaceholder,I=(n.title||{}).subtitle||{text:"",font:{}},H=(I.text||"").trim(),G=!1,W=1,Y=I.font,B=Y.family,V=Y.size,K=Y.color,J=Y.weight,re=Y.style,le=Y.variant,ue=Y.textcase,ve=Y.lineposition,j=Y.shadow,qe;i==="title.text"?qe="titleText":i.indexOf("axis")!==-1?qe="axisTitleText":i.indexOf("colorbar")!==-1&&(qe="colorbarTitleText");var fe=e._context.edits[qe];function be(Be,Ue){return Be===void 0||Ue===void 0?!1:Be.replace(LM," % ")===Ue.replace(LM," % ")}p===""?h=0:be(p,l)&&(fe||(p=""),h=.2,m=!0),R&&(H===""?W=0:be(H,N)&&(fe||(H=""),W=.2,G=!0)),t._meta?p=is.templateString(p,t._meta):a._meta&&(p=is.templateString(p,a._meta));var ce=p||H||fe,xe;c||(c=is.ensureSingle(a._infolayer,"g","g-"+r),xe=a._hColorbarMoveTitle);var U=c.selectAll("text."+r).data(ce?[0]:[]);U.enter().append("text"),U.text(p).attr("class",r),U.exit().remove();var Q=null,X=r+"-subtitle",ge=H||fe;if(R&&(Q=c.selectAll("text."+X).data(ge?[0]:[]),Q.enter().append("text"),Q.text(H).attr("class",X),Q.exit().remove()),!ce)return c;function Te(Be,Ue){is.syncOrAsync([ye,ze],{title:Be,subtitle:Ue})}function ye(Be){var Ue=Be.title,Le=Be.subtitle,He;!f&&xe&&(f={}),f?(He="",f.rotate&&(He+="rotate("+[f.rotate,u.x,u.y]+")"),(f.offset||xe)&&(He+=SM(0,(f.offset||0)-(xe||0)))):He=null,Ue.attr("transform",He);function Ye(Ae){if(Ae){var Se=Ou.select(Ae.node().parentNode).select("."+X);if(!Se.empty()){var Oe=Ae.node().getBBox();if(Oe.height){var Je=Oe.y+Oe.height+l2*V;Se.attr("y",Je)}}}}if(Ue.style("opacity",h*hd.opacity(T)).call(vd.font,{color:hd.rgb(T),size:Ou.round(_,2),family:b,weight:x,style:M,variant:k,textcase:A,shadow:D,lineposition:C}).attr(u).call(Bu.convertToTspans,e,Ye),Le&&!Le.empty()){var ie=c.select("."+r+"-math-group"),_e=Ue.node().getBBox(),$e=ie.node()?ie.node().getBBox():void 0,hr=$e?$e.y+$e.height+l2*V:_e.y+_e.height+o2*V,Re=is.extendFlat({},u,{y:hr});Le.attr("transform",He),Le.style("opacity",W*hd.opacity(K)).call(vd.font,{color:hd.rgb(K),size:Ou.round(V,2),family:B,weight:J,style:re,variant:le,textcase:ue,shadow:j,lineposition:ve}).attr(Re).call(Bu.convertToTspans,e)}return KQ.previousPromises(e)}function ze(Be){var Ue=Be.title,Le=Ou.select(Ue.node().parentNode);if(s&&s.selection&&s.side&&p){Le.attr("transform",null);var He=QQ[s.side],Ye=s.side==="left"||s.side==="top"?-1:1,ie=$Q(s.pad)?s.pad:2,_e=vd.bBox(Le.node()),$e={t:0,b:0,l:0,r:0},hr=e._fullLayout._reservedMargin;for(var Re in hr)for(var Ae in hr[Re]){var Se=hr[Re][Ae];$e[Ae]=Math.max($e[Ae],Se)}var Oe={left:$e.l,top:$e.t,right:a.width-$e.r,bottom:a.height-$e.b},Je=s.maxShift||Ye*(Oe[s.side]-_e[s.side]),We=0;if(Je<0)We=Je;else{var Xe=s.offsetLeft||0,lr=s.offsetTop||0;_e.left-=Xe,_e.right-=Xe,_e.top-=lr,_e.bottom-=lr,s.selection.each(function(){var Ke=vd.bBox(this);is.bBoxIntersect(_e,Ke,ie)&&(We=Math.max(We,Ye*(Ke[s.side]-_e[He])+ie))}),We=Math.min(Je,We),n._titleScoot=Math.abs(We)}if(We>0||Je<0){var tr={left:[-We,0],right:[We,0],top:[0,-We],bottom:[0,We]}[s.side];Le.attr("transform",SM(tr[0],tr[1]))}}}U.call(Te,Q);function Ie(Be,Ue){Be.text(Ue).on("mouseover.opacity",function(){Ou.select(this).transition().duration(CM.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){Ou.select(this).transition().duration(CM.HIDE_PLACEHOLDER).style("opacity",0)})}if(fe&&(p?U.on(".opacity",null):(Ie(U,l),m=!0),U.call(Bu.makeEditable,{gd:e}).on("edit",function(Be){o!==void 0?i2.call("_guiRestyle",e,i,Be,o):i2.call("_guiRelayout",e,i,Be)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Te)}).on("input",function(Be){this.text(Be||" ").call(Bu.positionText,u.x,u.y)}),R)){if(R&&!p){var Ee=U.node().getBBox(),Fe=Ee.y+Ee.height+o2*V;Q.attr("y",Fe)}H?Q.on(".opacity",null):(Ie(Q,N),G=!0),Q.call(Bu.makeEditable,{gd:e}).on("edit",function(Be){i2.call("_guiRelayout",e,"title.subtitle.text",Be)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Te)}).on("input",function(Be){this.text(Be||" ").call(Bu.positionText,Q.attr("x"),Q.attr("y"))})}return U.classed("js-placeholder",m),Q&&!Q.empty()&&Q.classed("js-placeholder",G),c}DM.exports={draw:jQ,SUBTITLE_PADDING_EM:o2,SUBTITLE_PADDING_MATHJAX_EM:l2}});var _d=O((Gge,NM)=>{"use strict";var ej=kr(),rj=vu().utcFormat,ot=Pe(),tj=ot.numberFormat,Oi=zr(),Xl=ot.cleanNumber,aj=ot.ms2DateTime,EM=ot.dateTime2ms,Bi=ot.ensureNumber,PM=ot.isArrayOrTypedArray,Zl=wt(),dd=Zl.FP_SAFE,pi=Zl.BADNUM,nj=Zl.LOG_CLIP,ij=Zl.ONEWEEK,pd=Zl.ONEDAY,md=Zl.ONEHOUR,RM=Zl.ONEMIN,zM=Zl.ONESEC,yd=Ut(),bd=Ma(),gd=bd.HOUR_PATTERN,xd=bd.WEEKDAY_PATTERN;function Wc(e){return Math.pow(10,e)}function s2(e){return e!=null}NM.exports=function(r,t){t=t||{};var a=r._id||"x",n=a.charAt(0);function i(x,M){if(x>0)return Math.log(x)/Math.LN10;if(x<=0&&M&&r.range&&r.range.length===2){var k=r.range[0],A=r.range[1];return .5*(k+A-2*nj*Math.abs(k-A))}else return pi}function l(x,M,k,A){if((A||{}).msUTC&&Oi(x))return+x;var C=EM(x,k||r.calendar);if(C===pi)if(Oi(x)){x=+x;var D=Math.floor(ot.mod(x+.05,1)*10),E=Math.round(x-D/10);C=EM(new Date(E))+D/10}else return pi;return C}function o(x,M,k){return aj(x,M,k||r.calendar)}function s(x){return r._categories[Math.round(x)]}function u(x){if(s2(x)){if(r._categoriesMap===void 0&&(r._categoriesMap={}),r._categoriesMap[x]!==void 0)return r._categoriesMap[x];r._categories.push(typeof x=="number"?String(x):x);var M=r._categories.length-1;return r._categoriesMap[x]=M,M}return pi}function f(x,M){for(var k=new Array(M),A=0;Ar.range[1]&&(k=!k);for(var A=k?-1:1,C=A*x,D=0,E=0;EN)D=E+1;else{D=C<(R+N)/2?E:E+1;break}}var I=r._B[D]||0;return isFinite(I)?p(x,r._m2,I):0},b=function(x){var M=r._rangebreaks.length;if(!M)return m(x,r._m,r._b);for(var k=0,A=0;Ar._rangebreaks[A].pmax&&(k=A+1);return m(x,r._m2,r._B[k])}}r.c2l=r.type==="log"?i:Bi,r.l2c=r.type==="log"?Wc:Bi,r.l2p=y,r.p2l=b,r.c2p=r.type==="log"?function(x,M){return y(i(x,M))}:y,r.p2c=r.type==="log"?function(x){return Wc(b(x))}:b,["linear","-"].indexOf(r.type)!==-1?(r.d2r=r.r2d=r.d2c=r.r2c=r.d2l=r.r2l=Xl,r.c2d=r.c2r=r.l2d=r.l2r=Bi,r.d2p=r.r2p=function(x){return r.l2p(Xl(x))},r.p2d=r.p2r=b,r.cleanPos=Bi):r.type==="log"?(r.d2r=r.d2l=function(x,M){return i(Xl(x),M)},r.r2d=r.r2c=function(x){return Wc(Xl(x))},r.d2c=r.r2l=Xl,r.c2d=r.l2r=Bi,r.c2r=i,r.l2d=Wc,r.d2p=function(x,M){return r.l2p(r.d2r(x,M))},r.p2d=function(x){return Wc(b(x))},r.r2p=function(x){return r.l2p(Xl(x))},r.p2r=b,r.cleanPos=Bi):r.type==="date"?(r.d2r=r.r2d=ot.identity,r.d2c=r.r2c=r.d2l=r.r2l=l,r.c2d=r.c2r=r.l2d=r.l2r=o,r.d2p=r.r2p=function(x,M,k){return r.l2p(l(x,0,k))},r.p2d=r.p2r=function(x,M,k){return o(b(x),M,k)},r.cleanPos=function(x){return ot.cleanDate(x,pi,r.calendar)}):r.type==="category"?(r.d2c=r.d2l=u,r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=h,r.r2c=function(x){var M=d(x);return M!==void 0?M:r.fraction2r(.5)},r.l2r=r.c2r=Bi,r.r2l=d,r.d2p=function(x){return r.l2p(r.r2c(x))},r.p2d=function(x){return s(b(x))},r.r2p=r.d2p,r.p2r=b,r.cleanPos=function(x){return typeof x=="string"&&x!==""?x:Bi(x)}):r.type==="multicategory"&&(r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=h,r.r2c=function(x){var M=h(x);return M!==void 0?M:r.fraction2r(.5)},r.r2c_just_indices=c,r.l2r=r.c2r=Bi,r.r2l=h,r.d2p=function(x){return r.l2p(r.r2c(x))},r.p2d=function(x){return s(b(x))},r.r2p=r.d2p,r.p2r=b,r.cleanPos=function(x){return Array.isArray(x)||typeof x=="string"&&x!==""?x:Bi(x)},r.setupMultiCategory=function(x){var M=r._traceIndices,k,A,C=r._matchGroup;if(C&&r._categories.length===0){for(var D in C)if(D!==a){var E=t[yd.id2name(D)];M=M.concat(E._traceIndices)}}var R=[[0,{}],[0,{}]],N=[];for(k=0;kE[1]&&(A[D?0:1]=k),A[0]===A[1]){var R=r.l2r(M),N=r.l2r(k);if(M!==void 0){var I=R+1;k!==void 0&&(I=Math.min(I,N)),A[D?1:0]=I}if(k!==void 0){var H=N+1;M!==void 0&&(H=Math.max(H,R)),A[D?0:1]=H}}}},r.cleanRange=function(x,M){r._cleanRange(x,M),r.limitRange(x)},r._cleanRange=function(x,M){M||(M={}),x||(x="range");var k=ot.nestedProperty(r,x).get(),A,C;if(r.type==="date"?C=ot.dfltRange(r.calendar):n==="y"?C=bd.DFLTRANGEY:r._name==="realaxis"?C=[0,1]:C=M.dfltRange||bd.DFLTRANGEX,C=C.slice(),(r.rangemode==="tozero"||r.rangemode==="nonnegative")&&(C[0]=0),!k||k.length!==2){ot.nestedProperty(r,x).set(C);return}var D=k[0]===null,E=k[1]===null;for(r.type==="date"&&!r.autorange&&(k[0]=ot.cleanDate(k[0],pi,r.calendar),k[1]=ot.cleanDate(k[1],pi,r.calendar)),A=0;A<2;A++)if(r.type==="date"){if(!ot.isDateTime(k[A],r.calendar)){r[x]=C;break}if(r.r2l(k[0])===r.r2l(k[1])){var R=ot.constrain(r.r2l(k[0]),ot.MIN_MS+1e3,ot.MAX_MS-1e3);k[0]=r.l2r(R-1e3),k[1]=r.l2r(R+1e3);break}}else{if(!Oi(k[A]))if(!(D||E)&&Oi(k[1-A]))k[A]=k[1-A]*(A?10:.1);else{r[x]=C;break}if(k[A]<-dd?k[A]=-dd:k[A]>dd&&(k[A]=dd),k[0]===k[1]){var N=Math.max(1,Math.abs(k[0]*1e-6));k[0]-=N,k[1]+=N}}},r.setScale=function(x){var M=t._size;if(r.overlaying){var k=yd.getFromId({_fullLayout:t},r.overlaying);r.domain=k.domain}var A=x&&r._r?"_r":"range",C=r.calendar;r.cleanRange(A);var D=r.r2l(r[A][0],C),E=r.r2l(r[A][1],C),R=n==="y";if(R?(r._offset=M.t+(1-r.domain[1])*M.h,r._length=M.h*(r.domain[1]-r.domain[0]),r._m=r._length/(D-E),r._b=-r._m*E):(r._offset=M.l+r.domain[0]*M.w,r._length=M.w*(r.domain[1]-r.domain[0]),r._m=r._length/(E-D),r._b=-r._m*D),r._rangebreaks=[],r._lBreaks=0,r._m2=0,r._B=[],r.rangebreaks){var N,I;if(r._rangebreaks=r.locateBreaks(Math.min(D,E),Math.max(D,E)),r._rangebreaks.length){for(N=0;NE&&(H=!H),H&&r._rangebreaks.reverse();var G=H?-1:1;for(r._m2=G*r._length/(Math.abs(E-D)-r._lBreaks),r._B.push(-r._m2*(R?E:D)),N=0;NC&&(C+=7,DC&&(C+=24,D=A&&D=A&&x=j.min&&(rej.max&&(j.max=le),ue=!1)}ue&&E.push({min:re,max:le})}};for(k=0;k{"use strict";var FM=zr(),u2=Pe(),lj=wt().BADNUM,wd=u2.isArrayOrTypedArray,oj=u2.isDateTime,sj=u2.cleanNumber,IM=Math.round;OM.exports=function(r,t,a){var n=r,i=a.noMultiCategory;if(wd(n)&&!n.length)return"-";if(!i&&hj(n))return"multicategory";if(i&&Array.isArray(n[0])){for(var l=[],o=0;oi*2}function HM(e){return Math.max(1,(e-1)/1e3)}function vj(e,r){for(var t=e.length,a=HM(t),n=0,i=0,l={},o=0;on*2}function hj(e){return wd(e[0])&&wd(e[1])}});var Xc=O((Wge,ZM)=>{"use strict";var dj=kr(),GM=zr(),Jl=Pe(),Td=wt().FP_SAFE,pj=gr(),mj=Yr(),UM=Ut(),yj=UM.getFromId,gj=UM.isLinked;ZM.exports={applyAutorangeOptions:XM,getAutoRange:c2,makePadFn:v2,doAutoRange:bj,findExtremes:_j,concatExtremes:p2};function c2(e,r){var t,a,n=[],i=e._fullLayout,l=v2(i,r,0),o=v2(i,r,1),s=p2(e,r),u=s.min,f=s.max;if(u.length===0||f.length===0)return Jl.simpleMap(r.range,r.r2l);var c=u[0].val,h=f[0].val;for(t=1;t0&&(E=T-l(k)-o(A),E>x?R/E>M&&(C=k,D=A,M=R/E):R/T>M&&(C={val:k.val,nopad:1},D={val:A.val,nopad:1},M=R/T));function N(Y,B){return Math.max(Y,o(B))}if(c===h){var I=c-1,H=c+1;if(b)if(c===0)n=[0,1];else{var G=(c>0?f:u).reduce(N,0),W=c/(1-Math.min(.5,G/T));n=c>0?[0,W]:[W,0]}else _?n=[Math.max(0,I),Math.max(1,H)]:n=[I,H]}else b?(C.val>=0&&(C={val:0,nopad:1}),D.val<=0&&(D={val:0,nopad:1})):_&&(C.val-M*l(C)<0&&(C={val:0,nopad:1}),D.val<=0&&(D={val:1,nopad:1})),M=(D.val-C.val-BM(r,k.val,A.val))/(T-l(C)-o(D)),n=[C.val-M*l(C),D.val+M*o(D)];return n=XM(n,r),r.limitRange&&r.limitRange(),p&&n.reverse(),Jl.simpleMap(n,r.l2r||Number)}function BM(e,r,t){var a=0;if(e.rangebreaks)for(var n=e.locateBreaks(r,t),i=0;i0?t.ppadplus:t.ppadminus)||t.ppad||0),k=x((e._m>0?t.ppadminus:t.ppadplus)||t.ppad||0),A=x(t.vpadplus||t.vpad),C=x(t.vpadminus||t.vpad);if(!u){if(_=1/0,T=-1/0,s)for(c=0;c0&&(_=h),h>T&&h-Td&&(_=h),h>T&&h=R;c--)E(c);return{min:a,max:n,opts:t}}function h2(e,r,t,a){WM(e,r,t,a,wj)}function d2(e,r,t,a){WM(e,r,t,a,Tj)}function WM(e,r,t,a,n){for(var i=a.tozero,l=a.extrapad,o=!0,s=0;s=t&&(u.extrapad||!l)){o=!1;break}else n(r,u.val)&&u.pad<=t&&(l||!u.extrapad)&&(e.splice(s,1),s--)}if(o){var f=i&&r===0;e.push({val:r,pad:f?0:t,extrapad:f?!1:l})}}function VM(e){return GM(e)&&Math.abs(e)=r}function Mj(e,r){var t=r.autorangeoptions;return t&&t.minallowed!==void 0&&Md(r,t.minallowed,t.maxallowed)?t.minallowed:t&&t.clipmin!==void 0&&Md(r,t.clipmin,t.clipmax)?Math.max(e,r.d2l(t.clipmin)):e}function Aj(e,r){var t=r.autorangeoptions;return t&&t.maxallowed!==void 0&&Md(r,t.minallowed,t.maxallowed)?t.maxallowed:t&&t.clipmax!==void 0&&Md(r,t.clipmin,t.clipmax)?Math.min(e,r.d2l(t.clipmax)):e}function Md(e,r,t){return r!==void 0&&t!==void 0?(r=e.d2l(r),t=e.d2l(t),r=s&&(i=s,t=s),l<=s&&(l=s,a=s)}}return t=Mj(t,r),a=Aj(a,r),[t,a]}});var Zr=O((Xge,yA)=>{"use strict";var Yn=kr(),Xt=zr(),Yu=Rt(),Jc=gr(),br=Pe(),Vu=br.strTranslate,ls=va(),kj=Uc(),$c=xr(),Tn=Yr(),qj=_n(),JM=Ng(),ka=wt(),Sj=ka.ONEMAXYEAR,qd=ka.ONEAVGYEAR,Sd=ka.ONEMINYEAR,Cj=ka.ONEMAXQUARTER,x2=ka.ONEAVGQUARTER,Cd=ka.ONEMINQUARTER,Lj=ka.ONEMAXMONTH,Gu=ka.ONEAVGMONTH,Ld=ka.ONEMINMONTH,Mn=ka.ONEWEEK,Ya=ka.ONEDAY,$l=Ya/2,Vi=ka.ONEHOUR,Kc=ka.ONEMIN,Dd=ka.ONESEC,Dj=ka.ONEMILLI,Ej=ka.ONEMICROSEC,os=ka.MINUS_SIGN,Pd=ka.BADNUM,b2={K:"zeroline"},_2={K:"gridline",L:"path"},w2={K:"minor-gridline",L:"path"},lA={K:"tick",L:"path"},$M={K:"tick",L:"text"},KM={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},Rd=Ea(),Zc=Rd.MID_SHIFT,ss=Rd.CAP_SHIFT,Qc=Rd.LINE_SPACING,Pj=Rd.OPPOSITE_SIDE,Ed=3,Ge=yA.exports={};Ge.setConvert=_d();var Rj=f2(),vl=Ut(),zj=vl.idSort,Nj=vl.isLinked;Ge.id2name=vl.id2name;Ge.name2id=vl.name2id;Ge.cleanId=vl.cleanId;Ge.list=vl.list;Ge.listIds=vl.listIds;Ge.getFromId=vl.getFromId;Ge.getFromTrace=vl.getFromTrace;var oA=Xc();Ge.getAutoRange=oA.getAutoRange;Ge.findExtremes=oA.findExtremes;var Fj=1e-4;function k2(e){var r=(e[1]-e[0])*Fj;return[e[0]-r,e[1]+r]}Ge.coerceRef=function(e,r,t,a,n,i){var l=a.charAt(a.length-1),o=t._fullLayout._subplots[l+"axis"],s=a+"ref",u={};return n||(n=o[0]||(typeof i=="string"?i:i[0])),i||(i=n),o=o.concat(o.map(function(f){return f+" domain"})),u[s]={valType:"enumerated",values:o.concat(i?typeof i=="string"?[i]:i:[]),dflt:n},br.coerce(e,r,u,s)};Ge.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};Ge.coercePosition=function(e,r,t,a,n,i){var l,o,s=Ge.getRefType(a);if(s!=="range")l=br.ensureNumber,o=t(n,i);else{var u=Ge.getFromId(r,a);i=u.fraction2r(i),o=t(n,i),l=u.cleanPos}e[n]=l(o)};Ge.cleanPosition=function(e,r,t){var a=t==="paper"||t==="pixel"?br.ensureNumber:Ge.getFromId(r,t).cleanPos;return a(e)};Ge.redrawComponents=function(e,r){r=r||Ge.listIds(e);var t=e._fullLayout;function a(n,i,l,o){for(var s=Jc.getComponentMethod(n,i),u={},f=0;f2e-6||((t-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};Ge.saveRangeInitial=function(e,r){for(var t=Ge.list(e,"",!0),a=!1,n=0;nc*.3||u(a)||u(n))){var h=t.dtick/2;e+=e+hl){var o=Number(t.substr(1));i.exactYears>l&&o%12===0?e=Ge.tickIncrement(e,"M6","reverse")+Ya*1.5:i.exactMonths>l?e=Ge.tickIncrement(e,"M1","reverse")+Ya*15.5:e-=$l;var s=Ge.tickIncrement(e,t);if(s<=a)return s}return e}Ge.prepMinorTicks=function(e,r,t){if(!r.minor.dtick){delete e.dtick;var a=r.dtick&&Xt(r._tmin),n;if(a){var i=Ge.tickIncrement(r._tmin,r.dtick,!0);n=[r._tmin,i*.99+r._tmin*.01]}else{var l=br.simpleMap(r.range,r.r2l);n=[l[0],.8*l[0]+.2*l[1]]}if(e.range=br.simpleMap(n,r.l2r),e._isMinor=!0,Ge.prepTicks(e,t),a){var o=Xt(r.dtick),s=Xt(e.dtick),u=o?r.dtick:+r.dtick.substring(1),f=s?e.dtick:+e.dtick.substring(1);o&&s?m2(u,f)?u===2*Mn&&f===2*Ya&&(e.dtick=Mn):u===2*Mn&&f===3*Ya?e.dtick=Mn:u===Mn&&!(r._input.minor||{}).nticks?e.dtick=Ya:eA(u/f,2.5)?e.dtick=u/2:e.dtick=u:String(r.dtick).charAt(0)==="M"?s?e.dtick="M1":m2(u,f)?u>=12&&f===2&&(e.dtick="M3"):e.dtick=r.dtick:String(e.dtick).charAt(0)==="L"?String(r.dtick).charAt(0)==="L"?m2(u,f)||(e.dtick=eA(u/f,2.5)?r.dtick/2:r.dtick):e.dtick="D1":e.dtick==="D2"&&+r.dtick>1&&(e.dtick=1)}e.range=r.range}r.minor._tick0Init===void 0&&(e.tick0=r.tick0)};function m2(e,r){return Math.abs((e/r+.5)%1-.5)<.001}function eA(e,r){return Math.abs(e/r-1)<.001}Ge.prepTicks=function(e,r){var t=br.simpleMap(e.range,e.r2l,void 0,void 0,r);if(e.tickmode==="auto"||!e.dtick){var a=e.nticks,n;a||(e.type==="category"||e.type==="multicategory"?(n=e.tickfont?br.bigFont(e.tickfont.size||12):15,a=e._length/n):(n=e._id.charAt(0)==="y"?40:80,a=br.constrain(e._length/n,4,9)+1),e._name==="radialaxis"&&(a*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(a*=100),e._roughDTick=Math.abs(t[1]-t[0])/a,Ge.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(i=a-1,l=a):(i=a,l=a);var o=e[i].value,s=e[l].value,u=Math.abs(s-o),f=t||u,c=0;f>=Sd?u>=Sd&&u<=Sj?c=u:c=qd:t===x2&&f>=Cd?u>=Cd&&u<=Cj?c=u:c=x2:f>=Ld?u>=Ld&&u<=Lj?c=u:c=Gu:t===Mn&&f>=Mn?c=Mn:f>=Ya?c=Ya:t===$l&&f>=$l?c=$l:t===Vi&&f>=Vi&&(c=Vi);var h;c>=u&&(c=u,h=!0);var d=n+c;if(r.rangebreaks&&c>0){for(var p=84,m=0,y=0;yMn&&(c=u)}(c>0||a===0)&&(e[a].periodX=n+c/2)}}Ge.calcTicks=function(r,t){for(var a=r.type,n=r.calendar,i=r.ticklabelstep,l=r.ticklabelmode==="period",o=r.range[0]>r.range[1],s=!r.ticklabelindex||br.isArrayOrTypedArray(r.ticklabelindex)?r.ticklabelindex:[r.ticklabelindex],u=br.simpleMap(r.range,r.r2l,void 0,void 0,t),f=u[1]=(T?0:1);x--){var M=!x;x?(r._dtickInit=r.dtick,r._tick0Init=r.tick0):(r.minor._dtickInit=r.minor.dtick,r.minor._tick0Init=r.minor.tick0);var k=x?r:br.extendFlat({},r,r.minor);if(M?Ge.prepMinorTicks(k,r,t):Ge.prepTicks(k,t),k.tickmode==="array"){x?(y=[],p=rA(r,!M)):(b=[],m=rA(r,!M));continue}if(k.tickmode==="sync"){y=[],p=Vj(r);continue}var A=k2(u),C=A[0],D=A[1],E=Xt(k.dtick),R=a==="log"&&!(E||k.dtick.charAt(0)==="L"),N=Ge.tickFirst(k,t);if(x){if(r._tmin=N,N=D:H<=D;H=Ge.tickIncrement(H,Y,f,n)){if(x&&G++,k.rangebreaks&&!f){if(H=h)break}if(y.length>d||H===I)break;I=H;var B={value:H};x?(R&&H!==(H|0)&&(B.simpleLabel=!0),i>1&&G%i&&(B.skipLabel=!0),y.push(B)):(B.minor=!0,b.push(B))}}if(!b||b.length<2)s=!1;else{var V=(b[1].value-b[0].value)*(o?-1:1);dee(V,r.tickformat)||(s=!1)}if(!s)_=y;else{var K=y.concat(b);l&&y.length&&(K=K.slice(1)),K=K.sort(function(Fe,Be){return Fe.value-Be.value}).filter(function(Fe,Be,Ue){return Be===0||Fe.value!==Ue[Be-1].value});var J=K.map(function(Fe,Be){return Fe.minor===void 0&&!Fe.skipLabel?Be:null}).filter(function(Fe){return Fe!==null});J.forEach(function(Fe){s.map(function(Be){var Ue=Fe+Be;Ue>=0&&Ue-1;ce--){if(y[ce].drop){y.splice(ce,1);continue}y[ce].value=g2(y[ce].value,r);var X=r.c2p(y[ce].value);(xe?Q>X-U:Qh||Leh&&(Ue.periodX=h),Len&&hqd)r/=qd,a=n(10),e.dtick="M"+12*Yi(r,a,Ad);else if(i>Gu)r/=Gu,e.dtick="M"+Yi(r,1,tA);else if(i>Ya){if(e.dtick=Yi(r,Ya,e._hasDayOfWeekBreaks?[1,2,7,14]:Gj),!t){var l=Ge.getTickFormat(e),o=e.ticklabelmode==="period";o&&(e._rawTick0=e.tick0),/%[uVW]/.test(l)?e.tick0=br.dateTick0(e.calendar,2):e.tick0=br.dateTick0(e.calendar,1),o&&(e._dowTick0=e.tick0)}}else i>Vi?e.dtick=Yi(r,Vi,tA):i>Kc?e.dtick=Yi(r,Kc,aA):i>Dd?e.dtick=Yi(r,Dd,aA):(a=n(10),e.dtick=Yi(r,a,Ad))}else if(e.type==="log"){e.tick0=0;var s=br.simpleMap(e.range,e.r2l);if(e._isMinor&&(r*=1.5),r>.7)e.dtick=Math.ceil(r);else if(Math.abs(s[1]-s[0])<1){var u=1.5*Math.abs((s[1]-s[0])/r);r=Math.abs(Math.pow(10,s[1])-Math.pow(10,s[0]))/u,a=n(10),e.dtick="L"+Yi(r,a,Ad)}else e.dtick=r>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(r,1))):L2(e)?(e.tick0=0,a=1,e.dtick=Yi(r,a,Uj)):(e.tick0=0,a=n(10),e.dtick=Yi(r,a,Ad));if(e.dtick===0&&(e.dtick=1),!Xt(e.dtick)&&typeof e.dtick!="string"){var f=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(f)}};function cA(e){var r=e.dtick;if(e._tickexponent=0,!Xt(r)&&typeof r!="string"&&(r=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var t=e.r2l(e.tick0),a=e.l2r(t).replace(/(^-|i)/g,""),n=a.length;if(String(r).charAt(0)==="M")n>10||a.substr(5)!=="01-01"?e._tickround="d":e._tickround=+r.substr(1)%12===0?"y":"m";else if(r>=Ya&&n<=10||r>=Ya*15)e._tickround="d";else if(r>=Kc&&n<=16||r>=Vi)e._tickround="M";else if(r>=Dd&&n<=19||r>=Kc)e._tickround="S";else{var i=e.l2r(t+r).replace(/^-/,"").length;e._tickround=Math.max(n,i)-20,e._tickround<0&&(e._tickround=4)}}else if(Xt(r)||r.charAt(0)==="L"){var l=e.range.map(e.r2d||Number);Xt(r)||(r=Number(r.substr(1))),e._tickround=2-Math.floor(Math.log(r)/Math.LN10+.01);var o=Math.max(Math.abs(l[0]),Math.abs(l[1])),s=Math.floor(Math.log(o)/Math.LN10+.01),u=e.minexponent===void 0?3:e.minexponent;Math.abs(s)>u&&(Uu(e.exponentformat)&&e.exponentformat!=="SI extended"&&!q2(s)||Uu(e.exponentformat)&&e.exponentformat==="SI extended"&&!S2(s)?e._tickexponent=3*Math.round((s-1)/3):e._tickexponent=s)}else e._tickround=null}Ge.tickIncrement=function(e,r,t,a){var n=t?-1:1;if(Xt(r))return br.increment(e,n*r);var i=r.charAt(0),l=n*Number(r.substr(1));if(i==="M")return br.incrementMonth(e,l,a);if(i==="L")return Math.log(Math.pow(10,e)+l)/Math.LN10;if(i==="D"){var o=r==="D2"?fA:uA,s=e+n*.01,u=br.roundUp(br.mod(s,1),o,t);return Math.floor(s)+Math.log(Yn.round(Math.pow(10,u),1))/Math.LN10}throw"unrecognized dtick "+String(r)};Ge.tickFirst=function(e,r){var t=e.r2l||Number,a=br.simpleMap(e.range,t,void 0,void 0,r),n=a[1]=0&&b<=e._length?y:null};if(i&&br.isArrayOrTypedArray(e.ticktext)){var c=br.simpleMap(e.range,e.r2l),h=(Math.abs(c[1]-c[0])-(e._lBreaks||0))/1e4;for(u=0;u"+o;else{var u=ev(e),f=e._trueSide||e.side;(!u&&f==="top"||u&&f==="bottom")&&(l+="
")}r.text=l}function Xj(e,r,t,a,n){var i=e.dtick,l=r.x,o=e.tickformat,s=typeof i=="string"&&i.charAt(0);if(n==="never"&&(n=""),a&&s!=="L"&&(i="L3",s="L"),o||s==="L")r.text=jc(Math.pow(10,l),e,n,a);else if(Xt(i)||s==="D"&&(e.minorloglabels==="complete"||br.mod(l+.01,1)<.1)){var u;e.minorloglabels==="complete"&&!(br.mod(l+.01,1)<.1)&&(u=!0,r.fontSize*=.75);var f=Math.pow(10,l).toExponential(0),c=f.split("e"),h=+c[1],d=Math.abs(h),p=e.exponentformat;p==="power"||Uu(p)&&p!=="SI extended"&&q2(h)||Uu(p)&&p==="SI extended"&&S2(h)?(r.text=c[0],d>0&&(r.text+="x10"),r.text==="1x10"&&(r.text="10"),h!==0&&h!==1&&(r.text+=""+(h>0?"":os)+d+""),r.fontSize*=1.25):(p==="e"||p==="E")&&d>2?r.text=c[0]+p+(h>0?"+":os)+d:(r.text=jc(Math.pow(10,l),e,"","fakehover"),i==="D1"&&e._id.charAt(0)==="y"&&(r.dy-=r.fontSize/6))}else if(s==="D")r.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,br.mod(l,1)))),r.fontSize*=.75;else throw"unrecognized dtick "+String(i);if(e.dtick==="D1"){var m=String(r.text).charAt(0);(m==="0"||m==="1")&&(e._id.charAt(0)==="y"?r.dx-=r.fontSize/4:(r.dy+=r.fontSize/2,r.dx+=(e.range[1]>e.range[0]?1:-1)*r.fontSize*(l<0?.5:.25)))}}function Zj(e,r){var t=e._categories[Math.round(r.x)];t===void 0&&(t=""),r.text=String(t)}function Jj(e,r,t){var a=Math.round(r.x),n=e._categories[a]||[],i=n[1]===void 0?"":String(n[1]),l=n[0]===void 0?"":String(n[0]);t?r.text=l+" - "+i:(r.text=i,r.text2=l)}function $j(e,r,t,a,n){n==="never"?n="":e.showexponent==="all"&&Math.abs(r.x/e.dtick)<1e-6&&(n="hide"),r.text=jc(r.x,e,n,a)}function Kj(e,r,t,a,n){if(e.thetaunit==="radians"&&!t){var i=r.x/180;if(i===0)r.text="0";else{var l=Qj(i);if(l[1]>=100)r.text=jc(br.deg2rad(r.x),e,n,a);else{var o=r.x<0;l[1]===1?l[0]===1?r.text="\u03C0":r.text=l[0]+"\u03C0":r.text=["",l[0],"","\u2044","",l[1],"","\u03C0"].join(""),o&&(r.text=os+r.text)}}}else r.text=jc(r.x,e,n,a)}function Qj(e){function r(o,s){return Math.abs(o-s)<=1e-6}function t(o,s){return r(s,0)?o:t(s,o%s)}function a(o){for(var s=1;!r(Math.round(o*s)/s,o);)s*=10;return s}var n=a(e),i=e*n,l=Math.abs(t(i,n));return[Math.round(i/l),Math.round(n/l)]}var hA=["f","p","n","\u03BC","m","","k","M","G","T"],jj=["q","r","y","z","a",...hA,"P","E","Z","Y","R","Q"],Uu=e=>["SI","SI extended","B"].includes(e);function q2(e){return e>14||e<-15}function S2(e){return e>32||e<-30}function eee(e,r){return Uu(r)?!!(r==="SI extended"&&S2(e)||r!=="SI extended"&&q2(e)):!1}function jc(e,r,t,a){var n=e<0,i=r._tickround,l=t||r.exponentformat||"B",o=r._tickexponent,s=Ge.getTickFormat(r),u=r.separatethousands;if(a){var f={exponentformat:l,minexponent:r.minexponent,dtick:r.showexponent==="none"?r.dtick:Xt(e)&&Math.abs(e)||1,range:r.showexponent==="none"?r.range.map(r.r2d):[0,e||1]};cA(f),i=(Number(f._tickround)||0)+4,o=f._tickexponent,r.hoverformat&&(s=r.hoverformat)}if(s)return r._numFormat(s)(e).replace(/-/g,os);var c=Math.pow(10,-i)/2;if(l==="none"&&(o=0),e=Math.abs(e),e"+p+"":l==="B"&&o===9?e+="B":Uu(l)&&(e+=l==="SI extended"?jj[o/3+10]:hA[o/3+5])}return n?os+e:e}Ge.getTickFormat=function(e){var r;function t(s){return typeof s!="string"?s:Number(s.replace("M",""))*Gu}function a(s,u){var f=["L","D"];if(typeof s==typeof u){if(typeof s=="number")return s-u;var c=f.indexOf(s.charAt(0)),h=f.indexOf(u.charAt(0));return c===h?Number(s.replace(/(L|D)/g,""))-Number(u.replace(/(L|D)/g,"")):c-h}else return typeof s=="number"?1:-1}function n(s,u,f){var c=f||function(p){return p},h=u[0],d=u[1];return(!h&&typeof h!="number"||c(h)<=c(s))&&(!d&&typeof d!="number"||c(d)>=c(s))}function i(s,u){var f=u[0]===null,c=u[1]===null,h=a(s,u[0])>=0,d=a(s,u[1])<=0;return(f||h)&&(c||d)}var l,o;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(r=0;r=0&&n.unshift(n.splice(f,1).shift())}});var o={false:{left:0,right:0}};return br.syncOrAsync(n.map(function(s){return function(){if(s){var u=Ge.getFromId(e,s);t||(t={}),t.axShifts=o,t.overlayingShiftedAx=l;var f=Ge.drawOne(e,u,t);return u._shiftPusher&&A2(u,u._fullDepth||0,o,!0),u._r=u.range.slice(),u._rl=br.simpleMap(u._r,u.r2l),f}}}))};Ge.drawOne=function(e,r,t){t=t||{};var a=t.axShifts||{},n=t.overlayingShiftedAx||[],i,l,o;r.setScale();var s=e._fullLayout,u=r._id,f=u.charAt(0),c=Ge.counterLetter(u),h=s._plots[r._mainSubplot],d=r.zerolinelayer==="above traces";if(!h)return;if(r._shiftPusher=r.autoshift||n.indexOf(r._id)!==-1||n.indexOf(r.overlaying)!==-1,r._shiftPusher&r.anchor==="free"){var p=r.linewidth/2||0;r.ticks==="inside"&&(p+=r.ticklen),A2(r,p,a,!0),A2(r,r.shift||0,a,!1)}(t.skipTitle!==!0||r._shift===void 0)&&(r._shift=hee(r,a));var m=h[f+"axislayer"],y=r._mainLinePosition,b=y+=r._shift,_=r._mainMirrorPosition,T=r._vals=Ge.calcTicks(r),x=[r.mirror,b,_].join("_");for(i=0;i0?Le.bottom-Be:0,Ue))));var _e=0,$e=0;if(r._shiftPusher&&(_e=Math.max(Ue,Le.height>0?Ee==="l"?Be-Le.left:Le.right-Be:0),r.title.text!==s._dfltTitle[f]&&($e=(r._titleStandoff||0)+(r._titleScoot||0),Ee==="l"&&($e+=iA(r))),r._fullDepth=Math.max(_e,$e)),r.automargin){He={x:0,y:0,r:0,l:0,t:0,b:0};var hr=[0,1],Re=typeof r._shift=="number"?r._shift:0;if(f==="x"){if(Ee==="b"?He[Ee]=r._depth:(He[Ee]=r._depth=Math.max(Le.width>0?Be-Le.top:0,Ue),hr.reverse()),Le.width>0){var Ae=Le.right-(r._offset+r._length);Ae>0&&(He.xr=1,He.r=Ae);var Se=r._offset-Le.left;Se>0&&(He.xl=0,He.l=Se)}}else if(Ee==="l"?(r._depth=Math.max(Le.height>0?Be-Le.left:0,Ue),He[Ee]=r._depth-Re):(r._depth=Math.max(Le.height>0?Le.right-Be:0,Ue),He[Ee]=r._depth+Re,hr.reverse()),Le.height>0){var Oe=Le.bottom-(r._offset+r._length);Oe>0&&(He.yb=0,He.b=Oe);var Je=r._offset-Le.top;Je>0&&(He.yt=1,He.t=Je)}He[c]=r.anchor==="free"?r.position:r._anchorAxis.domain[hr[0]],r.title.text!==s._dfltTitle[f]&&(He[Ee]+=iA(r)+(r.title.standoff||0)),r.mirror&&r.anchor!=="free"&&(Ye={x:0,y:0,r:0,l:0,t:0,b:0},Ye[Fe]=r.linewidth,r.mirror&&r.mirror!==!0&&(Ye[Fe]+=Ue),r.mirror===!0||r.mirror==="ticks"?Ye[c]=r._anchorAxis.domain[hr[1]]:(r.mirror==="all"||r.mirror==="allticks")&&(Ye[c]=[r._counterDomainMin,r._counterDomainMax][hr[1]]))}Ie&&(ie=Jc.getComponentMethod("rangeslider","autoMarginOpts")(e,r)),typeof r.automargin=="string"&&(nA(He,r.automargin),nA(Ye,r.automargin)),Yu.autoMargin(e,C2(r),He),Yu.autoMargin(e,pA(r),Ye),Yu.autoMargin(e,mA(r),ie)}),br.syncOrAsync(ye)}};function nA(e,r){if(e){var t=Object.keys(KM).reduce(function(a,n){return r.indexOf(n)!==-1&&KM[n].forEach(function(i){a[i]=1}),a},{});Object.keys(e).forEach(function(a){t[a]||(a.length===1?e[a]=0:delete e[a])})}}function ree(e,r){var t=[],a,n=function(i,l){var o=i.xbnd[l];o!==null&&t.push(br.extendFlat({},i,{x:o}))};if(r.length){for(a=0;ae.range[1],o=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,s=!o;if(t){var u=l?-1:1;t=t*u}if(a){var f=e.side,c=o&&(f==="top"||f==="left")||s&&(f==="bottom"||f==="right")?1:-1;a=a*c}return e._id.charAt(0)==="x"?function(h){return Vu(n+e._offset+e.l2p(T2(h))+t,i+a)}:function(h){return Vu(i+a,n+e._offset+e.l2p(T2(h))+t)}};function T2(e){return e.periodX!==void 0?e.periodX:e.x}function iee(e){var r=e.ticklabelposition||"",t=e.tickson||"",a=function(p){return r.indexOf(p)!==-1},n=a("top"),i=a("left"),l=a("right"),o=a("bottom"),s=a("inside"),u=t!=="boundaries"&&(o||i||n||l);if(!u&&!s)return[0,0];var f=e.side,c=u?(e.tickwidth||0)/2:0,h=Ed,d=e.tickfont?e.tickfont.size:12;return(o||n)&&(c+=d*ss,h+=(e.linewidth||0)/2),(i||l)&&(c+=(e.linewidth||0)/2,h+=Ed),s&&f==="top"&&(h-=d*(1-ss)),(i||n)&&(c=-c),(f==="bottom"||f==="right")&&(h=-h),[u?c:0,s?h:0]}Ge.makeTickPath=function(e,r,t,a){a||(a={});var n=a.minor;if(n&&!e.minor)return"";var i=a.len!==void 0?a.len:n?e.minor.ticklen:e.ticklen,l=e._id.charAt(0),o=(e.linewidth||1)/2;return l==="x"?"M0,"+(r+o*t)+"v"+i*t:"M"+(r+o*t)+",0h"+i*t};Ge.makeLabelFns=function(e,r,t){var a=e.ticklabelposition||"",n=e.tickson||"",i=function(I){return a.indexOf(I)!==-1},l=i("top"),o=i("left"),s=i("right"),u=i("bottom"),f=n!=="boundaries"&&(u||o||l||s),c=i("inside"),h=a==="inside"&&e.ticks==="inside"||!c&&e.ticks==="outside"&&n!=="boundaries",d=0,p=0,m=h?e.ticklen:0;if(c?m*=-1:f&&(m=0),h&&(d+=m,t)){var y=br.deg2rad(t);d=m*Math.cos(y)+1,p=m*Math.sin(y)}e.showticklabels&&(h||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(c?-1:1);var b={labelStandoff:d,labelShift:p},_,T,x,M,k=0,A=e.side,C=e._id.charAt(0),D=e.tickangle,E;if(C==="x")E=!c&&A==="bottom"||c&&A==="top",M=E?1:-1,c&&(M*=-1),_=p*M,T=r+d*M,x=E?1:-.2,Math.abs(D)===90&&(c?x+=Zc:D===-90&&A==="bottom"?x=ss:D===90&&A==="top"?x=Zc:x=.5,k=Zc/2*(D/90)),b.xFn=function(I){return I.dx+_+k*I.fontSize},b.yFn=function(I){return I.dy+T+I.fontSize*x},b.anchorFn=function(I,H){if(f){if(o)return"end";if(s)return"start"}return!Xt(H)||H===0||H===180?"middle":H*M<0!==c?"end":"start"},b.heightFn=function(I,H,G){return H<-60||H>60?-.5*G:e.side==="top"!==c?-G:0};else if(C==="y"){if(E=!c&&A==="left"||c&&A==="right",M=E?1:-1,c&&(M*=-1),_=d,T=p*M,x=0,!c&&Math.abs(D)===90&&(D===-90&&A==="left"||D===90&&A==="right"?x=ss:x=.5),c){var R=Xt(D)?+D:0;if(R!==0){var N=br.deg2rad(R);k=Math.abs(Math.sin(N))*ss*M,x=0}}b.xFn=function(I){return I.dx+r-(_+I.fontSize*x)*M+k*I.fontSize},b.yFn=function(I){return I.dy+T+I.fontSize*Zc},b.anchorFn=function(I,H){return Xt(H)&&Math.abs(H)===90?"middle":E?"end":"start"},b.heightFn=function(I,H,G){return e.side==="right"&&(H*=-1),H<-30?-G:H<30?-.5*G:0}}return b};function zd(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}Ge.drawTicks=function(e,r,t){t=t||{};var a=r._id+"tick",n=[].concat(r.minor&&r.minor.ticks?t.vals.filter(function(l){return l.minor&&!l.noTick}):[]).concat(r.ticks?t.vals.filter(function(l){return!l.minor&&!l.noTick}):[]),i=t.layer.selectAll("path."+a).data(n,zd);i.exit().remove(),i.enter().append("path").classed(a,1).classed("ticks",1).classed("crisp",t.crisp!==!1).each(function(l){return $c.stroke(Yn.select(this),l.minor?r.minor.tickcolor:r.tickcolor)}).style("stroke-width",function(l){return Tn.crispRound(e,l.minor?r.minor.tickwidth:r.tickwidth,1)+"px"}).attr("d",t.path).style("display",null),Nd(r,[lA]),i.attr("transform",t.transFn)};Ge.drawGrid=function(e,r,t){if(t=t||{},r.tickmode!=="sync"){var a=r._id+"grid",n=r.minor&&r.minor.showgrid,i=n?t.vals.filter(function(b){return b.minor}):[],l=r.showgrid?t.vals.filter(function(b){return!b.minor}):[],o=t.counterAxis;if(o&&Ge.shouldShowZeroLine(e,r,o))for(var s=r.tickmode==="array",u=0;u=0;p--){var m=p?h:d;if(m){var y=m.selectAll("path."+a).data(p?l:i,zd);y.exit().remove(),y.enter().append("path").classed(a,1).classed("crisp",t.crisp!==!1),y.attr("transform",t.transFn).attr("d",t.path).each(function(b){return $c.stroke(Yn.select(this),b.minor?r.minor.gridcolor:r.gridcolor||"#ddd")}).style("stroke-dasharray",function(b){return Tn.dashStyle(b.minor?r.minor.griddash:r.griddash,b.minor?r.minor.gridwidth:r.gridwidth)}).style("stroke-width",function(b){return(b.minor?c:r._gw)+"px"}).style("display",null),typeof t.path=="function"&&y.attr("d",t.path)}}Nd(r,[_2,w2])}};Ge.drawZeroLine=function(e,r,t){t=t||t;var a=r._id+"zl",n=Ge.shouldShowZeroLine(e,r,t.counterAxis),i=t.layer.selectAll("path."+a).data(n?[{x:0,id:r._id}]:[]);i.exit().remove(),i.enter().append("path").classed(a,1).classed("zl",1).classed("crisp",t.crisp!==!1).each(function(){t.layer.selectAll("path").sort(function(l,o){return zj(l.id,o.id)})}),i.attr("transform",t.transFn).attr("d",t.path).call($c.stroke,r.zerolinecolor||$c.defaultLine).style("stroke-width",Tn.crispRound(e,r.zerolinewidth,r._gw||1)+"px").style("display",null),Nd(r,[b2])};Ge.drawLabels=function(e,r,t){t=t||{};var a=e._fullLayout,n=r._id,i=r.zerolinelayer==="above traces",l=t.cls||n+"tick",o=t.vals.filter(function(V){return V.text}),s=t.labelFns,u=t.secondary?0:r.tickangle,f=(r._prevTickAngles||{})[l],c=t.layer.selectAll("g."+l).data(r.showticklabels?o:[],zd),h=[];c.enter().append("g").classed(l,1).append("text").attr("text-anchor","middle").each(function(V){var K=Yn.select(this),J=e._promises.length;K.call(ls.positionText,s.xFn(V),s.yFn(V)).call(Tn.font,{family:V.font,size:V.fontSize,color:V.fontColor,weight:V.fontWeight,style:V.fontStyle,variant:V.fontVariant,textcase:V.fontTextcase,lineposition:V.fontLineposition,shadow:V.fontShadow}).text(V.text).call(ls.convertToTspans,e),e._promises[J]?h.push(e._promises.pop().then(function(){d(K,u)})):d(K,u)}),Nd(r,[$M]),c.exit().remove(),t.repositionOnUpdate&&c.each(function(V){Yn.select(this).select("text").call(ls.positionText,s.xFn(V),s.yFn(V))});function d(V,K){V.each(function(J){var re=Yn.select(this),le=re.select(".text-math-group"),ue=s.anchorFn(J,K),ve=t.transFn.call(re.node(),J)+(Xt(K)&&+K!=0?" rotate("+K+","+s.xFn(J)+","+(s.yFn(J)-J.fontSize/2)+")":""),j=ls.lineCount(re),qe=Qc*J.fontSize,fe=s.heightFn(J,Xt(K)?+K:0,(j-1)*qe);if(fe&&(ve+=Vu(0,fe)),le.empty()){var be=re.select("text");be.attr({transform:ve,"text-anchor":ue}),be.style("display",null),r._adjustTickLabelsOverflow&&r._adjustTickLabelsOverflow()}else{var ce=Tn.bBox(le.node()).width,xe=ce*{end:-.5,start:.5}[ue];le.attr("transform",ve+Vu(xe,0))}})}r._adjustTickLabelsOverflow=function(){var V=r.ticklabeloverflow;if(!(!V||V==="allow")){var K=V.indexOf("hide")!==-1,J=r._id.charAt(0)==="x",re=0,le=J?e._fullLayout.width:e._fullLayout.height;if(V.indexOf("domain")!==-1){var ue=br.simpleMap(r.range,r.r2l);re=r.l2p(ue[0])+r._offset,le=r.l2p(ue[1])+r._offset}var ve=Math.min(re,le),j=Math.max(re,le),qe=r.side,fe=1/0,be=-1/0;c.each(function(Q){var X=Yn.select(this),ge=X.select(".text-math-group");if(ge.empty()){var Te=Tn.bBox(X.node()),ye=0;J?(Te.right>j||Te.leftj||Te.top+(r.tickangle?0:Q.fontSize/4)r["_visibleLabelMin_"+ue._id]?X.style("display","none"):j.K==="tick"&&!ve&&X.node().style.display!=="none"&&X.style("display",null)})})})})},d(c,f+1?f:u);function p(){return h.length&&Promise.all(h)}var m=null;function y(){if(d(c,u),o.length&&r.autotickangles&&(r.type!=="log"||String(r.dtick).charAt(0)!=="D")){m=r.autotickangles[0];var V=0,K=[],J,re=1;c.each(function(He){V=Math.max(V,He.fontSize);var Ye=r.l2p(He.x),ie=M2(this),_e=Tn.bBox(ie.node());re=Math.max(re,ls.lineCount(ie)),K.push({top:0,bottom:10,height:10,left:Ye-_e.width/2,right:Ye+_e.width/2+2,width:_e.width+2})});var le=(r.tickson==="boundaries"||r.showdividers)&&!t.secondary,ue=o.length,ve=Math.abs((o[ue-1].x-o[0].x)*r._m)/(ue-1),j=le?ve/2:ve,qe=le?r.ticklen:V*1.25*re,fe=Math.sqrt(Math.pow(j,2)+Math.pow(qe,2)),be=j/fe,ce=r.autotickangles.map(function(He){return He*Math.PI/180}),xe=ce.find(function(He){return Math.abs(Math.cos(He))<=be});xe===void 0&&(xe=ce.reduce(function(He,Ye){return Math.abs(Math.cos(He))W*G&&(N=G,D[C]=E[C]=I[C])}var Y=Math.abs(N-R);Y-M>0?(Y-=M,M*=1+M/Y):M=0,r._id.charAt(0)!=="y"&&(M=-M),D[A]=T.p2r(T.r2p(E[A])+k*M),T.autorange==="min"||T.autorange==="max reversed"?(D[0]=null,T._rangeInitial0=void 0,T._rangeInitial1=void 0):(T.autorange==="max"||T.autorange==="min reversed")&&(D[1]=null,T._rangeInitial0=void 0,T._rangeInitial1=void 0),a._insideTickLabelsUpdaterange[T._name+".range"]=D}var B=br.syncOrAsync(b);return B&&B.then&&e._promises.push(B),B};function lee(e,r,t){var a=r._id+"divider",n=t.vals,i=t.layer.selectAll("path."+a).data(n,zd);i.exit().remove(),i.enter().insert("path",":first-child").classed(a,1).classed("crisp",1).call($c.stroke,r.dividercolor).style("stroke-width",Tn.crispRound(e,r.dividerwidth,1)+"px"),i.attr("transform",t.transFn).attr("d",t.path)}Ge.getPxPosition=function(e,r){var t=e._fullLayout._size,a=r._id.charAt(0),n=r.side,i;if(r.anchor!=="free"?i=r._anchorAxis:a==="x"?i={_offset:t.t+(1-(r.position||0))*t.h,_length:0}:a==="y"&&(i={_offset:t.l+(r.position||0)*t.w+r._shift,_length:0}),n==="top"||n==="left")return i._offset;if(n==="bottom"||n==="right")return i._offset+i._length};function iA(e){var r=e.title.font.size,t=(e.title.text.match(ls.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?r*(ss+t*Qc):t?r*(t+1)*Qc:r}function oee(e,r){var t=e._fullLayout,a=r._id,n=a.charAt(0),i=r.title.font.size,l,o=(r.title.text.match(ls.BR_TAG_ALL)||[]).length;if(r.title.hasOwnProperty("standoff"))r.side==="bottom"||r.side==="right"?l=r._depth+r.title.standoff+i*ss:(r.side==="top"||r.side==="left")&&(l=r._depth+r.title.standoff+i*(Zc+o*Qc));else{var s=ev(r);if(r.type==="multicategory")l=r._depth;else{var u=1.5*i;s&&(u=.5*i,r.ticks==="outside"&&(u+=r.ticklen)),l=10+u+(r.linewidth?r.linewidth-1:0)}s||(n==="x"?l+=r.side==="top"?i*(r.showticklabels?1:0):i*(r.showticklabels?1.5:.5):l+=r.side==="right"?i*(r.showticklabels?1:.5):i*(r.showticklabels?.5:0))}var f=Ge.getPxPosition(e,r),c,h,d;n==="x"?(h=r._offset+r._length/2,d=r.side==="top"?f-l:f+l):(d=r._offset+r._length/2,h=r.side==="right"?f+l:f-l,c={rotate:"-90",offset:0});var p;if(r.type!=="multicategory"){var m=r._selections[r._id+"tick"];if(p={selection:m,side:r.side},m&&m.node()&&m.node().parentNode){var y=Tn.getTranslate(m.node().parentNode);p.offsetLeft=y.x,p.offsetTop=y.y}r.title.hasOwnProperty("standoff")&&(p.pad=0)}return r._titleStandoff=l,kj.draw(e,a+"title",{propContainer:r,propName:r._name+".title.text",placeholder:t._dfltTitle[n],avoid:p,transform:c,attributes:{x:h,y:d,"text-anchor":"middle"}})}Ge.shouldShowZeroLine=function(e,r,t){var a=br.simpleMap(r.range,r.r2l);return a[0]*a[1]<=0&&r.zeroline&&(r.type==="linear"||r.type==="-")&&!(r.rangebreaks&&r.maskBreaks(0)===Pd)&&(dA(r,0)||!see(e,r,t,a)||uee(e,r))};Ge.clipEnds=function(e,r){return r.filter(function(t){return dA(e,t.x)})};function dA(e,r){var t=e.l2p(r);return t>1&&t1)for(n=1;n=n.min&&e=Ej:/%L/.test(r)?e>=Dj:/%[SX]/.test(r)?e>=Dd:/%M/.test(r)?e>=Kc:/%[HI]/.test(r)?e>=Vi:/%p/.test(r)?e>=$l:/%[Aadejuwx]/.test(r)?e>=Ya:/%[UVW]/.test(r)?e>=Mn:/%[Bbm]/.test(r)?e>=Ld:/%[q]/.test(r)?e>=Cd:/%[Yy]/.test(r)?e>=Sd:!0}});var xA=O((Zge,gA)=>{"use strict";gA.exports=function(r,t,a){var n,i;if(a){var l=t==="reversed"||t==="min reversed"||t==="max reversed";n=a[l?1:0],i=a[l?0:1]}var o=r("autorangeoptions.minallowed",i===null?n:void 0),s=r("autorangeoptions.maxallowed",n===null?i:void 0);o===void 0&&r("autorangeoptions.clipmin"),s===void 0&&r("autorangeoptions.clipmax"),r("autorangeoptions.include")}});var D2=O((Jge,bA)=>{"use strict";var pee=xA();bA.exports=function(r,t,a,n){var i=t._template||{},l=t.type||i.type||"-";a("minallowed"),a("maxallowed");var o=a("range");if(!o){var s;!n.noInsiderange&&l!=="log"&&(s=a("insiderange"),s&&(s[0]===null||s[1]===null)&&(t.insiderange=!1,s=void 0),s&&(o=a("range",s)))}var u=t.getAutorangeDflt(o,n),f=a("autorange",u),c;o&&(o[0]===null&&o[1]===null||(o[0]===null||o[1]===null)&&(f==="reversed"||f===!0)||o[0]!==null&&(f==="min"||f==="max reversed")||o[1]!==null&&(f==="max"||f==="min reversed"))&&(o=void 0,delete t.range,t.autorange=!0,c=!0),c||(u=t.getAutorangeDflt(o,n),f=a("autorange",u)),f&&(pee(a,f,o),(l==="linear"||l==="-")&&a("rangemode")),t.cleanRange()}});var wA=O(($ge,_A)=>{var mee={left:0,top:0};_A.exports=yee;function yee(e,r,t){r=r||e.currentTarget||e.srcElement,Array.isArray(t)||(t=[0,0]);var a=e.clientX||0,n=e.clientY||0,i=gee(r);return t[0]=a-i.left,t[1]=n-i.top,t}function gee(e){return e===window||e===document||e===document.body?mee:e.getBoundingClientRect()}});var E2=O((Kge,TA)=>{"use strict";var xee=fg();function bee(){var e=!1;try{var r=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,r),window.removeEventListener("test",null,r)}catch(t){e=!1}return e}TA.exports=xee&&bee()});var AA=O((Qge,MA)=>{"use strict";MA.exports=function(r,t,a,n,i){var l=(r-a)/(n-a),o=l+t/(n-a),s=(l+o)/2;return i==="left"||i==="bottom"?l:i==="center"||i==="middle"?s:i==="right"||i==="top"?o:l<2/3-s?l:o>4/3-s?o:s}});var SA=O((jge,qA)=>{"use strict";var kA=Pe(),_ee=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];qA.exports=function(r,t,a,n){return a==="left"?r=0:a==="center"?r=1:a==="right"?r=2:r=kA.constrain(Math.floor(r*3),0,2),n==="bottom"?t=0:n==="middle"?t=1:n==="top"?t=2:t=kA.constrain(Math.floor(t*3),0,2),_ee[t][r]}});var LA=O((e2e,CA)=>{"use strict";var wee=zc(),Tee=Rh(),Mee=qc().getGraphDiv,Aee=wc(),P2=CA.exports={};P2.wrapped=function(e,r,t){e=Mee(e),e._fullLayout&&Tee.clear(e._fullLayout._uid+Aee.HOVERID),P2.raw(e,r,t)};P2.raw=function(r,t){var a=r._fullLayout,n=r._hoverdata;t||(t={}),!(t.target&&!r._dragged&&wee.triggerHandler(r,"plotly_beforehover",t)===!1)&&(a._hoverlayer.selectAll("g").remove(),a._hoverlayer.selectAll("line").remove(),a._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,t.target&&n&&r.emit("plotly_unhover",{event:t,points:n}))}});var mi=O((r2e,RA)=>{"use strict";var kee=wA(),R2=vg(),qee=E2(),See=Pe().removeElement,Cee=Ma(),us=RA.exports={};us.align=AA();us.getCursor=SA();var EA=LA();us.unhover=EA.wrapped;us.unhoverRaw=EA.raw;us.init=function(r){var t=r.gd,a=1,n=t._context.doubleClickDelay,i=r.element,l,o,s,u,f,c,h,d;t._mouseDownTime||(t._mouseDownTime=0),i.style.pointerEvents="all",i.onmousedown=y,qee?(i._ontouchstart&&i.removeEventListener("touchstart",i._ontouchstart),i._ontouchstart=y,i.addEventListener("touchstart",y,{passive:!1})):i.ontouchstart=y;function p(T,x,M){return Math.abs(T)n&&(a=Math.max(a-1,1)),t._dragged)r.doneFn&&r.doneFn();else{var x;c.target===h?x=c:(x={target:h,srcElement:h,toElement:h},Object.keys(c).concat(Object.keys(c.__proto__)).forEach(M=>{var k=c[M];!x[M]&&typeof k!="function"&&(x[M]=k)})),r.clickFn&&r.clickFn(a,x),d||h.dispatchEvent(new MouseEvent("click",T))}t._dragging=!1,t._dragged=!1}};function PA(){var e=document.createElement("div");e.className="dragcover";var r=e.style;return r.position="fixed",r.left=0,r.right=0,r.top=0,r.bottom=0,r.zIndex=999999999,r.background="none",document.body.appendChild(e),e}us.coverSlip=PA;function DA(e){return kee(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Kl=O((t2e,zA)=>{"use strict";zA.exports=function(r,t){(r.attr("class")||"").split(" ").forEach(function(a){a.indexOf("cursor-")===0&&r.classed(a,!1)}),t&&r.classed("cursor-"+t,!0)}});var IA=O((a2e,FA)=>{"use strict";var z2=Kl(),rv="data-savedcursor",NA="!!";FA.exports=function(r,t){var a=r.attr(rv);if(t){if(!a){for(var n=(r.attr("class")||"").split(" "),i=0;i{"use strict";var N2=aa(),Lee=Fn();HA.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:Lee.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:N2({editType:"legend"}),grouptitlefont:N2({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:N2({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var Id=O(Fd=>{"use strict";Fd.isGrouped=function(r){return(r.traceorder||"").indexOf("grouped")!==-1};Fd.isVertical=function(r){return r.orientation!=="h"};Fd.isReversed=function(r){return(r.traceorder||"").indexOf("reversed")!==-1}});var O2=O((l2e,OA)=>{"use strict";var I2=gr(),An=Pe(),Dee=lt(),Eee=tn(),Pee=F2(),Ree=_u(),H2=Id();function zee(e,r,t,a){var n=r[e]||{},i=Dee.newContainer(t,e);function l(Y,B){return An.coerce(n,i,Pee,Y,B)}var o=An.coerceFont(l,"font",t.font);l("bgcolor",t.paper_bgcolor),l("bordercolor");var s=l("visible");if(s){for(var u,f=function(Y,B){var V=u._input,K=u;return An.coerce(V,K,Eee,Y,B)},c=t.font||{},h=An.coerceFont(l,"grouptitlefont",c,{overrideDflt:{size:Math.round(c.size*1.1)}}),d=0,p=!1,m="normal",y=(t.shapes||[]).filter(function(Y){return Y.showlegend}),b=a.concat(y).filter(function(Y){return e===(Y.legend||"legend")}),_=0;_(e==="legend"?1:0));if(x===!1&&(t[e]=void 0),!(x===!1&&!n.uirevision)&&(l("uirevision",t.uirevision),x!==!1)){l("borderwidth");var M=l("orientation"),k=l("yref"),A=l("xref"),C=M==="h",D=k==="paper",E=A==="paper",R,N,I,H="left";C?(R=0,I2.getComponentMethod("rangeslider","isVisible")(r.xaxis)?D?(N=1.1,I="bottom"):(N=1,I="top"):D?(N=-.1,I="top"):(N=0,I="bottom")):(N=1,I="auto",E?R=1.02:(R=1,H="right")),An.coerce(n,i,{x:{valType:"number",editType:"legend",min:E?-2:0,max:E?3:1,dflt:R}},"x"),An.coerce(n,i,{y:{valType:"number",editType:"legend",min:D?-2:0,max:D?3:1,dflt:N}},"y"),l("traceorder",m),H2.isGrouped(t[e])&&l("tracegroupgap"),l("entrywidth"),l("entrywidthmode"),l("indentation"),l("itemsizing"),l("itemwidth"),l("itemclick"),l("itemdoubleclick"),l("groupclick"),l("xanchor",H),l("yanchor",I),l("maxheight"),l("valign"),An.noneOrAll(n,i,["x","y"]);var G=l("title.text");if(G){l("title.side",C?"left":"top");var W=An.extendFlat({},o,{size:An.bigFont(o.size)});An.coerceFont(l,"title.font",W)}}}}OA.exports=function(r,t,a){var n,i=a.slice(),l=t.shapes;if(l)for(n=0;n{"use strict";var Wu=gr(),Y2=Pe(),Nee=Y2.pushUnique,B2=!0;BA.exports=function(r,t,a){var n=t._fullLayout;if(t._dragged||t._editing)return;var i=n.legend.itemclick,l=n.legend.itemdoubleclick,o=n.legend.groupclick;a===1&&i==="toggle"&&l==="toggleothers"&&B2&&t.data&&t._context.showTips&&Y2.notifier(Y2._(t,"Double-click on legend to isolate one trace"),"long"),B2=!1;var s;if(a===1?s=i:a===2&&(s=l),!s)return;var u=o==="togglegroup",f=n.hiddenlabels?n.hiddenlabels.slice():[],c=r.data()[0][0];if(c.groupTitle&&c.noClick)return;var h=t._fullData,d=(n.shapes||[]).filter(function(Fe){return Fe.showlegend}),p=h.concat(d),m=c.trace;m._isShape&&(m=m._fullInput);var y=m.legendgroup,b,_,T,x,M,k,A={},C=[],D=[],E=[];function R(Fe,Be){var Ue=C.indexOf(Fe),Le=A.visible;return Le||(Le=A.visible=[]),C.indexOf(Fe)===-1&&(C.push(Fe),Ue=C.length-1),Le[Ue]=Be,Ue}var N=(n.shapes||[]).map(function(Fe){return Fe._input}),I=!1;function H(Fe,Be){N[Fe].visible=Be,I=!0}function G(Fe,Be){if(!(c.groupTitle&&!u)){var Ue=Fe._fullInput||Fe,Le=Ue._isShape,He=Ue.index;He===void 0&&(He=Ue._index);var Ye=Ue.visible===!1?!1:Be;Le?H(He,Ye):R(He,Ye)}}var W=m.legend,Y=m._fullInput,B=Y&&Y._isShape;if(!B&&Wu.traceIs(m,"pie-like")){var V=c.label,K=f.indexOf(V);if(s==="toggle")K===-1?f.push(V):f.splice(K,1);else if(s==="toggleothers"){var J=K!==-1,re=[];for(b=0;b{"use strict";VA.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var WA=O((u2e,UA)=>{"use strict";var GA=gr(),G2=Id();UA.exports=function(r,t,a){var n=t._inHover,i=G2.isGrouped(t),l=G2.isReversed(t),o={},s=[],u=!1,f={},c=0,h=0,d,p;function m(Y,B,V){if(t.visible!==!1&&!(a&&Y!==t._id))if(B===""||!G2.isGrouped(t)){var K="~~i"+c;s.push(K),o[K]=[V],c++}else s.indexOf(B)===-1?(s.push(B),u=!0,o[B]=[V]):o[B].push(V)}for(d=0;dE&&(D=E)}A[d][0]._groupMinRank=D,A[d][0]._preGroupSort=d}var R=function(Y,B){return Y[0]._groupMinRank-B[0]._groupMinRank||Y[0]._preGroupSort-B[0]._preGroupSort},N=function(Y,B){return Y.trace.legendrank-B.trace.legendrank||Y._preSort-B._preSort};for(A.forEach(function(Y,B){Y[0]._preGroupSort=B}),A.sort(R),d=0;d{"use strict";var Hd=Pe();function XA(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}fs.formatPiePercent=function(r,t){var a=XA((r*100).toPrecision(3));return Hd.numSeparate(a,t)+"%"};fs.formatPieValue=function(r,t){var a=XA(r.toPrecision(10));return Hd.numSeparate(a,t)};fs.getFirstFilled=function(r,t){if(Hd.isArrayOrTypedArray(r))for(var a=0;a{"use strict";var Fee=Yr(),Iee=xr();ZA.exports=function(r,t,a,n){var i=a.marker.pattern;i&&i.shape?Fee.pointStyle(r,a,n,t):Iee.fill(r,t.color)}});var Xu=O((v2e,QA)=>{"use strict";var $A=xr(),KA=tv().castOption,Hee=JA();QA.exports=function(r,t,a,n){var i=a.marker.line,l=KA(i.color,t.pts)||$A.defaultLine,o=KA(i.width,t.pts)||0;r.call(Hee,t,a,n).style("stroke-width",o).call($A.stroke,l)}});var Z2=O((h2e,nk)=>{"use strict";var Va=kr(),U2=gr(),Ra=Pe(),jA=Ra.strTranslate,kn=Yr(),Vn=xr(),W2=bn().extractOpts,Od=wn(),Oee=Xu(),Bee=tv().castOption,Yee=V2(),ek=12,rk=5,cs=2,Vee=10,Zu=5;nk.exports=function(r,t,a){var n=t._fullLayout;a||(a=n.legend);var i=a.itemsizing==="constant",l=a.itemwidth,o=(l+Yee.itemGap*2)/2,s=jA(o,0),u=function(A,C,D,E){var R;if(A+1)R=A;else if(C&&C.width>0)R=C.width;else return 0;return i?E:Math.min(R,D)};r.each(function(A){var C=Va.select(this),D=Ra.ensureSingle(C,"g","layers");D.style("opacity",A[0].trace.opacity);var E=a.indentation,R=a.valign,N=A[0].lineHeight,I=A[0].height;if(R==="middle"&&E===0||!N||!I)D.attr("transform",null);else{var H={top:1,bottom:-1}[R],G=H*(.5*(N-I+3))||0,W=a.indentation;D.attr("transform",jA(W,G))}var Y=D.selectAll("g.legendfill").data([A]);Y.enter().append("g").classed("legendfill",!0);var B=D.selectAll("g.legendlines").data([A]);B.enter().append("g").classed("legendlines",!0);var V=D.selectAll("g.legendsymbols").data([A]);V.enter().append("g").classed("legendsymbols",!0),V.selectAll("g.legendpoints").data([A]).enter().append("g").classed("legendpoints",!0)}).each(k).each(h).each(p).each(d).each(y).each(x).each(T).each(f).each(c).each(b).each(_);function f(A){var C=tk(A),D=C.showFill,E=C.showLine,R=C.showGradientLine,N=C.showGradientFill,I=C.anyFill,H=C.anyLine,G=A[0],W=G.trace,Y,B,V=W2(W),K=V.colorscale,J=V.reversescale,re=function(be){if(be.size())if(D)kn.fillGroupStyle(be,t,!0);else{var ce="legendfill-"+W.uid;kn.gradient(be,t,ce,X2(J),K,"fill")}},le=function(be){if(be.size()){var ce="legendline-"+W.uid;kn.lineGroupStyle(be),kn.gradient(be,t,ce,X2(J),K,"stroke")}},ue=Od.hasMarkers(W)||!I?"M5,0":H?"M5,-2":"M5,-3",ve=Va.select(this),j=ve.select(".legendfill").selectAll("path").data(D||N?[A]:[]);if(j.enter().append("path").classed("js-fill",!0),j.exit().remove(),j.attr("d",ue+"h"+l+"v6h-"+l+"z").call(re),E||R){var qe=u(void 0,W.line,Vee,rk);B=Ra.minExtend(W,{line:{width:qe}}),Y=[Ra.minExtend(G,{trace:B})]}var fe=ve.select(".legendlines").selectAll("path").data(E||R?[Y]:[]);fe.enter().append("path").classed("js-line",!0),fe.exit().remove(),fe.attr("d",ue+(R?"l"+l+",0.0001":"h"+l)).call(E?kn.lineGroupStyle:le)}function c(A){var C=tk(A),D=C.anyFill,E=C.anyLine,R=C.showLine,N=C.showMarker,I=A[0],H=I.trace,G=!N&&!E&&!D&&Od.hasText(H),W,Y;function B(j,qe,fe,be){var ce=Ra.nestedProperty(H,j).get(),xe=Ra.isArrayOrTypedArray(ce)&&qe?qe(ce):ce;if(i&&xe&&be!==void 0&&(xe=be),fe){if(xefe[1])return fe[1]}return xe}function V(j){return I._distinct&&I.index&&j[I.index]?j[I.index]:j[0]}if(N||G||R){var K={},J={};if(N){K.mc=B("marker.color",V),K.mx=B("marker.symbol",V),K.mo=B("marker.opacity",Ra.mean,[.2,1]),K.mlc=B("marker.line.color",V),K.mlw=B("marker.line.width",Ra.mean,[0,5],cs),J.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var re=B("marker.size",Ra.mean,[2,16],ek);K.ms=re,J.marker.size=re}R&&(J.line={width:B("line.width",V,[0,10],rk)}),G&&(K.tx="Aa",K.tp=B("textposition",V),K.ts=10,K.tc=B("textfont.color",V),K.tf=B("textfont.family",V),K.tw=B("textfont.weight",V),K.ty=B("textfont.style",V),K.tv=B("textfont.variant",V),K.tC=B("textfont.textcase",V),K.tE=B("textfont.lineposition",V),K.tS=B("textfont.shadow",V)),W=[Ra.minExtend(I,K)],Y=Ra.minExtend(H,J),Y.selectedpoints=null,Y.texttemplate=null}var le=Va.select(this).select("g.legendpoints"),ue=le.selectAll("path.scatterpts").data(N?W:[]);ue.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",s),ue.exit().remove(),ue.call(kn.pointStyle,Y,t),N&&(W[0].mrc=3);var ve=le.selectAll("g.pointtext").data(G?W:[]);ve.enter().append("g").classed("pointtext",!0).append("text").attr("transform",s),ve.exit().remove(),ve.selectAll("text").call(kn.textPointStyle,Y,t)}function h(A){var C=A[0].trace,D=C.type==="waterfall";if(A[0]._distinct&&D){var E=A[0].trace[A[0].dir].marker;return A[0].mc=E.color,A[0].mlw=E.line.width,A[0].mlc=E.line.color,m(A,this,"waterfall")}var R=[];C.visible&&D&&(R=A[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var N=Va.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(R);N.enter().append("path").classed("legendwaterfall",!0).attr("transform",s).style("stroke-miterlimit",1),N.exit().remove(),N.each(function(I){var H=Va.select(this),G=C[I[0]].marker,W=u(void 0,G.line,Zu,cs);H.attr("d",I[1]).style("stroke-width",W+"px").call(Vn.fill,G.color),W&&H.call(Vn.stroke,G.line.color)})}function d(A){m(A,this)}function p(A){m(A,this,"funnel")}function m(A,C,D){var E=A[0].trace,R=E.marker||{},N=R.line||{},I=R.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",H=D?E.visible&&E.type===D:U2.traceIs(E,"bar"),G=Va.select(C).select("g.legendpoints").selectAll("path.legend"+D).data(H?[A]:[]);G.enter().append("path").classed("legend"+D,!0).attr("d",I).attr("transform",s),G.exit().remove(),G.each(function(W){var Y=Va.select(this),B=W[0],V=u(B.mlw,R.line,Zu,cs);Y.style("stroke-width",V+"px");var K=B.mcc;if(!a._inHover&&"mc"in B){var J=W2(R),re=J.mid;re===void 0&&(re=(J.max+J.min)/2),K=kn.tryColorscale(R,"")(re)}var le=K||B.mc||R.color,ue=R.pattern,ve=kn.getPatternAttr,j=ue&&(ve(ue.shape,0,"")||ve(ue.path,0,""));if(j){var qe=ve(ue.bgcolor,0,null),fe=ve(ue.fgcolor,0,null),be=ue.fgopacity,ce=ak(ue.size,8,10),xe=ak(ue.solidity,.5,1),U="legend-"+E.uid;Y.call(kn.pattern,"legend",t,U,j,ce,xe,K,ue.fillmode,qe,fe,be)}else Y.call(Vn.fill,le);V&&Vn.stroke(Y,B.mlc||N.color)})}function y(A){var C=A[0].trace,D=Va.select(this).select("g.legendpoints").selectAll("path.legendbox").data(C.visible&&U2.traceIs(C,"box-violin")?[A]:[]);D.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),D.exit().remove(),D.each(function(){var E=Va.select(this);if((C.boxpoints==="all"||C.points==="all")&&Vn.opacity(C.fillcolor)===0&&Vn.opacity((C.line||{}).color)===0){var R=Ra.minExtend(C,{marker:{size:i?ek:Ra.constrain(C.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});D.call(kn.pointStyle,R,t)}else{var N=u(void 0,C.line,Zu,cs);E.style("stroke-width",N+"px").call(Vn.fill,C.fillcolor),N&&Vn.stroke(E,C.line.color)}})}function b(A){var C=A[0].trace,D=Va.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(C.visible&&C.type==="candlestick"?[A,A]:[]);D.enter().append("path").classed("legendcandle",!0).attr("d",function(E,R){return R?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",s).style("stroke-miterlimit",1),D.exit().remove(),D.each(function(E,R){var N=Va.select(this),I=C[R?"increasing":"decreasing"],H=u(void 0,I.line,Zu,cs);N.style("stroke-width",H+"px").call(Vn.fill,I.fillcolor),H&&Vn.stroke(N,I.line.color)})}function _(A){var C=A[0].trace,D=Va.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(C.visible&&C.type==="ohlc"?[A,A]:[]);D.enter().append("path").classed("legendohlc",!0).attr("d",function(E,R){return R?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",s).style("stroke-miterlimit",1),D.exit().remove(),D.each(function(E,R){var N=Va.select(this),I=C[R?"increasing":"decreasing"],H=u(void 0,I.line,Zu,cs);N.style("fill","none").call(kn.dashLine,I.line.dash,H),H&&Vn.stroke(N,I.line.color)})}function T(A){M(A,this,"pie")}function x(A){M(A,this,"funnelarea")}function M(A,C,D){var E=A[0],R=E.trace,N=D?R.visible&&R.type===D:U2.traceIs(R,D),I=Va.select(C).select("g.legendpoints").selectAll("path.legend"+D).data(N?[A]:[]);if(I.enter().append("path").classed("legend"+D,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),I.exit().remove(),I.size()){var H=R.marker||{},G=u(Bee(H.line.width,E.pts),H.line,Zu,cs),W="pieLike",Y=Ra.minExtend(R,{marker:{line:{width:G}}},W),B=Ra.minExtend(E,{trace:Y},W);Oee(I,B,Y,t)}}function k(A){var C=A[0].trace,D,E=[];if(C.visible)switch(C.type){case"histogram2d":case"heatmap":E=[["M-15,-2V4H15V-2Z"]],D=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":E=[["M-6,-6V6H6V-6Z"]],D=!0;break;case"densitymapbox":case"densitymap":E=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],D="radial";break;case"cone":E=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],D=!1;break;case"streamtube":E=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],D=!1;break;case"surface":E=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],D=!0;break;case"mesh3d":E=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],D=!1;break;case"volume":E=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],D=!0;break;case"isosurface":E=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],D=!1;break}var R=Va.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(E);R.enter().append("path").classed("legend3dandfriends",!0).attr("transform",s).style("stroke-miterlimit",1),R.exit().remove(),R.each(function(N,I){var H=Va.select(this),G=W2(C),W=G.colorscale,Y=G.reversescale,B=function(re){if(re.size()){var le="legendfill-"+C.uid;kn.gradient(re,t,le,X2(Y,D==="radial"),W,"fill")}},V;if(W){if(!D){var J=W.length;V=I===0?W[Y?J-1:0][1]:I===1?W[Y?0:J-1][1]:W[Math.floor((J-1)/2)][1]}}else{var K=C.vertexcolor||C.facecolor||C.color;V=Ra.isArrayOrTypedArray(K)?K[I]||K[0]:K}H.attr("d",N[0]),V?H.call(Vn.fill,V):H.call(B)})}};function X2(e,r){var t=r?"radial":"horizontal";return t+(e?"":"reversed")}function tk(e){var r=e[0].trace,t=r.contours,a=Od.hasLines(r),n=Od.hasMarkers(r),i=r.visible&&r.fill&&r.fill!=="none",l=!1,o=!1;if(t){var s=t.coloring;s==="lines"?l=!0:a=s==="none"||s==="heatmap"||t.showlines,t.type==="constraint"?i=t._operation!=="=":(s==="fill"||s==="heatmap")&&(o=!0)}return{showMarker:n,showLine:a,showFill:i,showGradientLine:l,showGradientFill:o,anyLine:a||l,anyFill:i||o}}function ak(e,r,t){return e&&Ra.isArrayOrTypedArray(e)?r:e>t?t:e}});var Q2=O((d2e,dk)=>{"use strict";var un=kr(),Zt=Pe(),$2=Rt(),Ku=gr(),ik=zc(),J2=mi(),Jt=Yr(),Yd=xr(),vs=va(),lk=YA(),jt=V2(),K2=Ea(),vk=K2.LINE_SPACING,$u=K2.FROM_TL,ok=K2.FROM_BR,sk=WA(),Gee=Z2(),uk=Id(),Ju=1,Uee=/^legend[0-9]*$/;dk.exports=function(r,t){if(t)fk(r,t);else{var a=r._fullLayout,n=a._legends,i=a._infolayer.selectAll('[class^="legend"]');i.each(function(){var u=un.select(this),f=u.attr("class"),c=f.split(" ")[0];c.match(Uee)&&n.indexOf(c)===-1&&u.remove()});for(var l=0;l1)}var p=a.hiddenlabels||[];if(!o&&(!a.showlegend||!s.length))return l.selectAll("."+n).remove(),a._topdefs.select("#"+i).remove(),$2.autoMargin(e,n);var m=Zt.ensureSingle(l,"g",n,function(C){o||C.attr("pointer-events","all")}),y=Zt.ensureSingleById(a._topdefs,"clipPath",i,function(C){C.append("rect")}),b=Zt.ensureSingle(m,"rect","bg",function(C){C.attr("shape-rendering","crispEdges")});b.call(Yd.stroke,t.bordercolor).call(Yd.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px");var _=Zt.ensureSingle(m,"g","scrollbox"),T=t.title;t._titleWidth=0,t._titleHeight=0;var x;T.text?(x=Zt.ensureSingle(_,"text",n+"titletext"),x.attr("text-anchor","start").call(Jt.font,T.font).text(T.text),Vd(x,_,e,t,Ju)):_.selectAll("."+n+"titletext").remove();var M=Zt.ensureSingle(m,"rect","scrollbar",function(C){C.attr(jt.scrollBarEnterAttrs).call(Yd.fill,jt.scrollBarColor)}),k=_.selectAll("g.groups").data(s);k.enter().append("g").attr("class","groups"),k.exit().remove();var A=k.selectAll("g.traces").data(Zt.identity);A.enter().append("g").attr("class","traces"),A.exit().remove(),A.style("opacity",function(C){var D=C[0].trace;return Ku.traceIs(D,"pie-like")?p.indexOf(C[0].label)!==-1?.5:1:D.visible==="legendonly"?.5:1}).each(function(){un.select(this).call(Xee,e,t)}).call(Gee,e,t).each(function(){o||un.select(this).call(Zee,e,n)}),Zt.syncOrAsync([$2.previousPromises,function(){return Kee(e,k,A,t)},function(){var C=a._size,D=t.borderwidth,E=t.xref==="paper",R=t.yref==="paper";if(T.text&&Wee(x,t,D),!o){var N,I;E?N=C.l+C.w*t.x-$u[Gd(t)]*t._width:N=a.width*t.x-$u[Gd(t)]*t._width,R?I=C.t+C.h*(1-t.y)-$u[Ud(t)]*t._effHeight:I=a.height*(1-t.y)-$u[Ud(t)]*t._effHeight;var H=Qee(e,n,N,I);if(H)return;if(a.margin.autoexpand){var G=N,W=I;N=E?Zt.constrain(N,0,a.width-t._width):G,I=R?Zt.constrain(I,0,a.height-t._effHeight):W,N!==G&&Zt.log("Constrain "+n+".x to make legend fit inside graph"),I!==W&&Zt.log("Constrain "+n+".y to make legend fit inside graph")}Jt.setTranslate(m,N,I)}if(M.on(".drag",null),m.on("wheel",null),o||t._height<=t._maxHeight||e._context.staticPlot){var Y=t._effHeight;o&&(Y=t._height),b.attr({width:t._width-D,height:Y-D,x:D/2,y:D/2}),Jt.setTranslate(_,0,0),y.select("rect").attr({width:t._width-2*D,height:Y-2*D,x:D,y:D}),Jt.setClipUrl(_,i,e),Jt.setRect(M,0,0,0,0),delete t._scrollY}else{var B=Math.max(jt.scrollBarMinHeight,t._effHeight*t._effHeight/t._height),V=t._effHeight-B-2*jt.scrollBarMargin,K=t._height-t._effHeight,J=V/K,re=Math.min(t._scrollY||0,K);b.attr({width:t._width-2*D+jt.scrollBarWidth+jt.scrollBarMargin,height:t._effHeight-D,x:D/2,y:D/2}),y.select("rect").attr({width:t._width-2*D+jt.scrollBarWidth+jt.scrollBarMargin,height:t._effHeight-2*D,x:D,y:D+re}),Jt.setClipUrl(_,i,e),ce(re,B,J),m.on("wheel",function(){re=Zt.constrain(t._scrollY+un.event.deltaY/K*V,0,K),ce(re,B,J),re!==0&&re!==K&&un.event.preventDefault()});var le,ue,ve,j=function(ge,Te,ye){var ze=(ye-Te)/J+ge;return Zt.constrain(ze,0,K)},qe=function(ge,Te,ye){var ze=(Te-ye)/J+ge;return Zt.constrain(ze,0,K)},fe=un.behavior.drag().on("dragstart",function(){var ge=un.event.sourceEvent;ge.type==="touchstart"?le=ge.changedTouches[0].clientY:le=ge.clientY,ve=re}).on("drag",function(){var ge=un.event.sourceEvent;ge.buttons===2||ge.ctrlKey||(ge.type==="touchmove"?ue=ge.changedTouches[0].clientY:ue=ge.clientY,re=j(ve,le,ue),ce(re,B,J))});M.call(fe);var be=un.behavior.drag().on("dragstart",function(){var ge=un.event.sourceEvent;ge.type==="touchstart"&&(le=ge.changedTouches[0].clientY,ve=re)}).on("drag",function(){var ge=un.event.sourceEvent;ge.type==="touchmove"&&(ue=ge.changedTouches[0].clientY,re=qe(ve,le,ue),ce(re,B,J))});_.call(be)}function ce(ge,Te,ye){t._scrollY=e._fullLayout[n]._scrollY=ge,Jt.setTranslate(_,0,-ge),Jt.setRect(M,t._width,jt.scrollBarMargin+ge*ye,jt.scrollBarWidth,Te),y.select("rect").attr("y",D+ge)}if(e._context.edits.legendPosition){var xe,U,Q,X;m.classed("cursor-move",!0),J2.init({element:m.node(),gd:e,prepFn:function(ge){if(ge.target!==M.node()){var Te=Jt.getTranslate(m);Q=Te.x,X=Te.y}},moveFn:function(ge,Te){if(Q!==void 0&&X!==void 0){var ye=Q+ge,ze=X+Te;Jt.setTranslate(m,ye,ze),xe=J2.align(ye,t._width,C.l,C.l+C.w,t.xanchor),U=J2.align(ze+t._height,-t._height,C.t+C.h,C.t,t.yanchor)}},doneFn:function(){if(xe!==void 0&&U!==void 0){var ge={};ge[n+".x"]=xe,ge[n+".y"]=U,Ku.call("_guiRelayout",e,ge)}},clickFn:function(ge,Te){var ye=l.selectAll("g.traces").filter(function(){var ze=this.getBoundingClientRect();return Te.clientX>=ze.left&&Te.clientX<=ze.right&&Te.clientY>=ze.top&&Te.clientY<=ze.bottom});ye.size()>0&&hk(e,m,ye,ge,Te)}})}}],e)}}function Bd(e,r,t){var a=e[0],n=a.width,i=r.entrywidthmode,l=a.trace.legendwidth||r.entrywidth;return i==="fraction"?r._maxWidth*l:t+(l||n)}function hk(e,r,t,a,n){var i=t.data()[0][0].trace,l={event:n,node:t.node(),curveNumber:i.index,expandedIndex:i.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};i._group&&(l.group=i._group),Ku.traceIs(i,"pie-like")&&(l.label=t.datum()[0].label);var o=ik.triggerHandler(e,"plotly_legendclick",l);if(a===1){if(o===!1)return;r._clickTimeout=setTimeout(function(){e._fullLayout&&lk(t,e,a)},e._context.doubleClickDelay)}else if(a===2){r._clickTimeout&&clearTimeout(r._clickTimeout),e._legendMouseDownTime=0;var s=ik.triggerHandler(e,"plotly_legenddoubleclick",l);s!==!1&&o!==!1&&lk(t,e,a)}}function Xee(e,r,t){var a=Wd(t),n=e.data()[0][0],i=n.trace,l=Ku.traceIs(i,"pie-like"),o=!t._inHover&&r._context.edits.legendText&&!l,s=t._maxNameLength,u,f;n.groupTitle?(u=n.groupTitle.text,f=n.groupTitle.font):(f=t.font,t.entries?u=n.text:(u=l?n.label:i.name,i._meta&&(u=Zt.templateString(u,i._meta))));var c=Zt.ensureSingle(e,"text",a+"text");c.attr("text-anchor","start").call(Jt.font,f).text(o?ck(u,s):u);var h=t.indentation+t.itemwidth+jt.itemGap*2;vs.positionText(c,h,0),o?c.call(vs.makeEditable,{gd:r,text:u}).call(Vd,e,r,t).on("edit",function(d){this.text(ck(d,s)).call(Vd,e,r,t);var p=n.trace._fullInput||{},m={};return m.name=d,p._isShape?Ku.call("_guiRelayout",r,"shapes["+i.index+"].name",m.name):Ku.call("_guiRestyle",r,m,i.index)}):Vd(c,e,r,t)}function ck(e,r){var t=Math.max(4,r);if(e&&e.trim().length>=t/2)return e;e=e||"";for(var a=t-e.length;a>0;a--)e+=" ";return e}function Zee(e,r,t){var a=r._context.doubleClickDelay,n,i=1,l=Zt.ensureSingle(e,"rect",t+"toggle",function(o){r._context.staticPlot||o.style("cursor","pointer").attr("pointer-events","all"),o.call(Yd.fill,"rgba(0,0,0,0)")});r._context.staticPlot||(l.on("mousedown",function(){n=new Date().getTime(),n-r._legendMouseDownTimea&&(i=Math.max(i-1,1)),hk(r,o,e,i,un.event)}}))}function Vd(e,r,t,a,n){a._inHover&&e.attr("data-notex",!0),vs.convertToTspans(e,t,function(){Jee(r,t,a,n)})}function Jee(e,r,t,a){var n=e.data()[0][0];if(!t._inHover&&n&&!n.trace.showlegend){e.remove();return}var i=e.select("g[class*=math-group]"),l=i.node(),o=Wd(t);t||(t=r._fullLayout[o]);var s=t.borderwidth,u;a===Ju?u=t.title.font:n.groupTitle?u=n.groupTitle.font:u=t.font;var f=u.size*vk,c,h;if(l){var d=Jt.bBox(l);c=d.height,h=d.width,a===Ju?Jt.setTranslate(i,s,s+c*.75):Jt.setTranslate(i,0,c*.25)}else{var p="."+o+(a===Ju?"title":"")+"text",m=e.select(p),y=vs.lineCount(m),b=m.node();if(c=f*y,h=b?Jt.bBox(b).width:0,a===Ju)t.title.side==="left"&&(h+=jt.itemGap*2),vs.positionText(m,s+jt.titlePad,s+f);else{var _=jt.itemGap*2+t.indentation+t.itemwidth;n.groupTitle&&(_=jt.itemGap,h-=t.indentation+t.itemwidth),vs.positionText(m,_,-f*((y-1)/2-.3))}}a===Ju?(t._titleWidth=h,t._titleHeight=c):(n.lineHeight=f,n.height=Math.max(c,16)+3,n.width=h)}function $ee(e){var r=0,t=0,a=e.title.side;return a&&(a.indexOf("left")!==-1&&(r=e._titleWidth),a.indexOf("top")!==-1&&(t=e._titleHeight)),[r,t]}function Kee(e,r,t,a){var n=e._fullLayout,i=Wd(a);a||(a=n[i]);var l=n._size,o=uk.isVertical(a),s=uk.isGrouped(a),u=a.entrywidthmode==="fraction",f=a.borderwidth,c=2*f,h=jt.itemGap,d=a.indentation+a.itemwidth+h*2,p=2*(f+h),m=Ud(a),y=a.y<0||a.y===0&&m==="top",b=a.y>1||a.y===1&&m==="bottom",_=a.tracegroupgap,T={};let{orientation:x,yref:M}=a,{maxheight:k}=a,A=y||b||x!=="v"||M!=="paper";k||(k=A?.5:1);let C=A?n.height:l.h;a._maxHeight=Math.max(k>1?k:k*C,30);var D=0;a._width=0,a._height=0;var E=$ee(a);if(o)t.each(function(ce){var xe=ce[0].height;Jt.setTranslate(this,f+E[0],f+E[1]+a._height+xe/2+h),a._height+=xe,a._width=Math.max(a._width,ce[0].width)}),D=d+a._width,a._width+=h+d+c,a._height+=p,s&&(r.each(function(ce,xe){Jt.setTranslate(this,0,xe*a.tracegroupgap)}),a._height+=(a._lgroupsLength-1)*a.tracegroupgap);else{var R=Gd(a),N=a.x<0||a.x===0&&R==="right",I=a.x>1||a.x===1&&R==="left",H=b||y,G=n.width/2;a._maxWidth=Math.max(N?H&&R==="left"?l.l+l.w:G:I?H&&R==="right"?l.r+l.w:G:l.w,2*d);var W=0,Y=0;t.each(function(ce){var xe=Bd(ce,a,d);W=Math.max(W,xe),Y+=xe}),D=null;var B=0;if(s){var V=0,K=0,J=0;r.each(function(){var ce=0,xe=0;un.select(this).selectAll("g.traces").each(function(Q){var X=Bd(Q,a,d),ge=Q[0].height;Jt.setTranslate(this,E[0],E[1]+f+h+ge/2+xe),xe+=ge,ce=Math.max(ce,X),T[Q[0].trace.legendgroup]=ce});var U=ce+h;K>0&&U+f+K>a._maxWidth?(B=Math.max(B,K),K=0,J+=V+_,V=xe):V=Math.max(V,xe),Jt.setTranslate(this,K,J),K+=U}),a._width=Math.max(B,K)+f,a._height=J+V+p}else{var re=t.size(),le=Y+c+(re-1)*h=a._maxWidth&&(B=Math.max(B,qe),ve=0,j+=ue,a._height+=ue,ue=0),Jt.setTranslate(this,E[0]+f+ve,E[1]+f+j+xe/2+h),qe=ve+U+h,ve+=Q,ue=Math.max(ue,xe)}),le?(a._width=ve+c,a._height=ue+p):(a._width=Math.max(B,qe)+c,a._height+=ue+p)}}a._width=Math.ceil(Math.max(a._width+E[0],a._titleWidth+2*(f+jt.titlePad))),a._height=Math.ceil(Math.max(a._height+E[1],a._titleHeight+2*(f+jt.itemGap))),a._effHeight=Math.min(a._height,a._maxHeight);var fe=e._context.edits,be=fe.legendText||fe.legendPosition;t.each(function(ce){var xe=un.select(this).select("."+i+"toggle"),U=ce[0].height,Q=ce[0].trace.legendgroup,X=Bd(ce,a,d);s&&Q!==""&&(X=T[Q]);var ge=be?d:D||X;!o&&!u&&(ge+=h/2),Jt.setRect(xe,0,-U/2,ge,U)})}function Qee(e,r,t,a){var n=e._fullLayout,i=n[r],l=Gd(i),o=Ud(i),s=i.xref==="paper",u=i.yref==="paper";e._fullLayout._reservedMargin[r]={};var f=i.y<.5?"b":"t",c=i.x<.5?"l":"r",h={r:n.width-t,l:t+i._width,b:n.height-a,t:a+i._effHeight};if(s&&u)return $2.autoMargin(e,r,{x:i.x,y:i.y,l:i._width*$u[l],r:i._width*ok[l],b:i._effHeight*ok[o],t:i._effHeight*$u[o]});s?e._fullLayout._reservedMargin[r][f]=h[f]:u||i.orientation==="v"?e._fullLayout._reservedMargin[r][c]=h[c]:e._fullLayout._reservedMargin[r][f]=h[f]}function Gd(e){return Zt.isRightAnchor(e)?"right":Zt.isCenterAnchor(e)?"center":"left"}function Ud(e){return Zt.isBottomAnchor(e)?"bottom":Zt.isMiddleAnchor(e)?"middle":"top"}function Wd(e){return e._id||"legend"}});var t3=O(r3=>{"use strict";var hs=kr(),hl=zr(),pk=Nn(),Ct=Pe(),jee=Ct.pushUnique,j2=Ct.strTranslate,ere=Ct.strRotate,rre=zc(),Gn=va(),tre=IA(),Gi=Yr(),la=xr(),Xd=mi(),Ui=Zr(),are=Ma().zindexSeparator,ju=gr(),yi=Hi(),ds=wc(),nre=O2(),ire=Q2(),Tk=ds.YANGLE,e3=Math.PI*Tk/180,lre=1/Math.sin(e3),ore=Math.cos(e3),sre=Math.sin(e3),xt=ds.HOVERARROWSIZE,Or=ds.HOVERTEXTPAD,mk={box:!0,ohlc:!0,violin:!0,candlestick:!0},ure={scatter:!0,scattergl:!0,splom:!0};function yk(e,r){return e.distance-r.distance}r3.hover=function(r,t,a,n){r=Ct.getGraphDiv(r);var i=t.target;Ct.throttle(r._fullLayout._uid+ds.HOVERID,ds.HOVERMINTIME,function(){fre(r,t,a,n,i)})};r3.loneHover=function(r,t){var a=!0;Array.isArray(r)||(a=!1,r=[r]);var n=t.gd,i=Sk(n),l=Ck(n),o=r.map(function(y){var b=y._x0||y.x0||y.x||0,_=y._x1||y.x1||y.x||0,T=y._y0||y.y0||y.y||0,x=y._y1||y.y1||y.y||0,M=y.eventData;if(M){var k=Math.min(b,_),A=Math.max(b,_),C=Math.min(T,x),D=Math.max(T,x),E=y.trace;if(ju.traceIs(E,"gl3d")){var R=n._fullLayout[E.scene]._scene.container,N=R.offsetLeft,I=R.offsetTop;k+=N,A+=N,C+=I,D+=I}M.bbox={x0:k+l,x1:A+l,y0:C+i,y1:D+i},t.inOut_bbox&&t.inOut_bbox.push(M.bbox)}else M=!1;return{color:y.color||la.defaultLine,x0:y.x0||y.x||0,x1:y.x1||y.x||0,y0:y.y0||y.y||0,y1:y.y1||y.y||0,xLabel:y.xLabel,yLabel:y.yLabel,zLabel:y.zLabel,text:y.text,name:y.name,idealAlign:y.idealAlign,borderColor:y.borderColor,fontFamily:y.fontFamily,fontSize:y.fontSize,fontColor:y.fontColor,fontWeight:y.fontWeight,fontStyle:y.fontStyle,fontVariant:y.fontVariant,nameLength:y.nameLength,textAlign:y.textAlign,trace:y.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:y.hovertemplate||!1,hovertemplateLabels:y.hovertemplateLabels||!1,eventData:M}}),s=!1,u=Ak(o,{gd:n,hovermode:"closest",rotateLabels:s,bgColor:t.bgColor||la.background,container:hs.select(t.container),outerContainer:t.outerContainer||t.container}),f=u.hoverLabels,c=5,h=0,d=0;f.sort(function(y,b){return y.y0-b.y0}).each(function(y,b){var _=y.y0-y.by/2;_-cA[0]._length||X<0||X>C[0]._length)return Xd.unhoverRaw(e,r)}if(r.pointerX=Q+A[0]._offset,r.pointerY=X+C[0]._offset,"xval"in r?W=yi.flat(i,r.xval):W=yi.p2c(A,Q),"yval"in r?Y=yi.flat(i,r.yval):Y=yi.p2c(C,X),!hl(W[0])||!hl(Y[0]))return Ct.warn("Fx.hover failed",r,e),Xd.unhoverRaw(e,r)}var ye=1/0;function ze(vr,ft){for(V=0;Vfe&&(H.splice(0,fe),ye=H[0].distance),c&&I!==0&&H.length===0){qe.distance=I,qe.index=!1;var jr=J._module.hoverPoints(qe,ve,j,"closest",{hoverLayer:o._hoverlayer});if(jr&&(jr=jr.filter(function(Pt){return Pt.spikeDistance<=I})),jr&&jr.length){var ga,Dn=jr.filter(function(Pt){return Pt.xa.showspikes&&Pt.xa.spikesnap!=="hovered data"});if(Dn.length){var ta=Dn[0];hl(ta.x0)&&hl(ta.y0)&&(ga=Ee(ta),(!be.vLinePoint||be.vLinePoint.spikeDistance>ga.spikeDistance)&&(be.vLinePoint=ga))}var Pi=jr.filter(function(Pt){return Pt.ya.showspikes&&Pt.ya.spikesnap!=="hovered data"});if(Pi.length){var En=Pi[0];hl(En.x0)&&hl(En.y0)&&(ga=Ee(En),(!be.hLinePoint||be.hLinePoint.spikeDistance>ga.spikeDistance)&&(be.hLinePoint=ga))}}}}}ze();function Ie(vr,ft,$r){for(var dt=null,Et=1/0,Mt,jr=0;jrvr.trace.index===Ae.trace.index):H=[Ae];var Se=H.length,Oe=wk("x",Ae,o),Je=wk("y",Ae,o);ze(Oe,Je);var We=[],Xe={},lr=0,tr=function(vr){var ft=mk[vr.trace.type]?Mk(vr):vr.trace.index;if(!Xe[ft])lr++,Xe[ft]=lr,We.push(vr);else{var $r=Xe[ft]-1,dt=We[$r];$r>0&&Math.abs(vr.distance)Se-1;Ke--)tr(H[Ke]);H=We,Le()}var Ne=e._hoverdata,ne=[],oe=Sk(e),Ce=Ck(e);for(let vr of H){var De=yi.makeEventData(vr,vr.trace,vr.cd);if(vr.hovertemplate!==!1){var ar=!1;vr.cd[vr.index]&&vr.cd[vr.index].ht&&(ar=vr.cd[vr.index].ht),vr.hovertemplate=ar||vr.trace.hovertemplate||!1}if(vr.xa&&vr.ya){var fr=vr.x0+vr.xa._offset,sr=vr.x1+vr.xa._offset,Ar=vr.y0+vr.ya._offset,Br=vr.y1+vr.ya._offset,et=Math.min(fr,sr),ut=Math.max(fr,sr),kt=Math.min(Ar,Br),_t=Math.max(Ar,Br);De.bbox={x0:et+Ce,x1:ut+Ce,y0:kt+oe,y1:_t+oe}}vr.eventData=[De],ne.push(De)}e._hoverdata=ne;var Ht=h==="y"&&(G.length>1||H.length>1)||h==="closest"&&ce&&H.length>1,ra=la.combine(o.plot_bgcolor||la.background,o.paper_bgcolor),Ia=Ak(H,{gd:e,hovermode:h,rotateLabels:Ht,bgColor:ra,container:o._hoverlayer,outerContainer:o._paper.node(),commonLabelOpts:o.hoverlabel,hoverdistance:o.hoverdistance}),ma=Ia.hoverLabels;if(yi.isUnifiedHover(h)||(vre(ma,Ht,o,Ia.commonLabelBoundingBox),qk(ma,Ht,o._invScaleX,o._invScaleY)),n&&n.tagName){var ya=ju.getComponentMethod("annotations","hasClickToShow")(e,ne);tre(hs.select(n),ya?"pointer":"")}!n||a||!pre(e,r,Ne)||(Ne&&e.emit("plotly_unhover",{event:r,points:Ne}),e.emit("plotly_hover",{event:r,points:e._hoverdata,xaxes:A,yaxes:C,xvals:W,yvals:Y}))}function Mk(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var cre=/([\s\S]*)<\/extra>/;function Ak(e,r){var t=r.gd,a=t._fullLayout,n=r.hovermode,i=r.rotateLabels,l=r.bgColor,o=r.container,s=r.outerContainer,u=r.commonLabelOpts||{};if(e.length===0)return[[]];var f=r.fontFamily||ds.HOVERFONT,c=r.fontSize||ds.HOVERFONTSIZE,h=r.fontWeight||a.font.weight,d=r.fontStyle||a.font.style,p=r.fontVariant||a.font.variant,m=r.fontTextcase||a.font.textcase,y=r.fontLineposition||a.font.lineposition,b=r.fontShadow||a.font.shadow,_=e[0],T=_.xa,x=_.ya,M=n.charAt(0),k=M+"Label",A=_[k];if(A===void 0&&T.type==="multicategory")for(var C=0;Ca.width-oe&&(Ce=a.width-oe),Ae.attr("d","M"+(Ke-Ce)+",0L"+(Ke-Ce+xt)+","+ne+xt+"H"+oe+"v"+ne+(Or*2+tr.height)+"H"+-oe+"V"+ne+xt+"H"+(Ke-Ce-xt)+"Z"),Ke=Ce,V.minX=Ke-oe,V.maxX=Ke+oe,T.side==="top"?(V.minY=Ne-(Or*2+tr.height),V.maxY=Ne-Or):(V.minY=Ne+Or,V.maxY=Ne+(Or*2+tr.height))}else{var De,ar,fr;x.side==="right"?(De="start",ar=1,fr="",Ke=T._offset+T._length):(De="end",ar=-1,fr="-",Ke=T._offset),Ne=x._offset+(_.y0+_.y1)/2,Se.attr("text-anchor",De),Ae.attr("d","M0,0L"+fr+xt+","+xt+"V"+(Or+tr.height/2)+"h"+fr+(Or*2+tr.width)+"V-"+(Or+tr.height/2)+"H"+fr+xt+"V-"+xt+"Z"),V.minY=Ne-(Or+tr.height/2),V.maxY=Ne+(Or+tr.height/2),x.side==="right"?(V.minX=Ke+xt,V.maxX=Ke+xt+(Or*2+tr.width)):(V.minX=Ke-xt-(Or*2+tr.width),V.maxX=Ke-xt);var sr=tr.height/2,Ar=E-tr.top-sr,Br="clip"+a._uid+"commonlabel"+x._id,et;if(KeAe.hoverinfo!=="none");if(Re.length===0)return[];var K=a.hoverlabel,J=K.font,re=Re[0],le=((n==="x unified"?re.xa:re.ya).unifiedhovertitle||{}).text,ue=le?Ct.hovertemplateString({data:n==="x unified"?[{xa:re.xa,x:re.xVal}]:[{ya:re.ya,y:re.yVal}],fallback:re.trace.hovertemplatefallback,locale:a._d3locale,template:le}):A,ve={showlegend:!0,legend:{title:{text:ue,font:J},font:J,bgcolor:K.bgcolor,bordercolor:K.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:a.legend?a.legend.traceorder:void 0,orientation:"v"}},j={font:J};nre(ve,j,t._fullData);var qe=j.legend;qe.entries=[];for(var fe=0;fe=0?_e=Le:He+Te=0?_e=He:Ye+Te=0?$e=Be:Ue+ye=0?$e=Ue:ie+ye=0,(Re.idealAlign==="top"||!_t)&&Ht?(fr-=Ar/2,Re.anchor="end"):_t?(fr+=Ar/2,Re.anchor="start"):Re.anchor="middle",Re.crossPos=fr;else{if(Re.pos=fr,_t=ar+sr/2+kt<=R,Ht=ar-sr/2-kt>=0,(Re.idealAlign==="left"||!_t)&&Ht)ar-=sr/2,Re.anchor="end";else if(_t)ar+=sr/2,Re.anchor="start";else{Re.anchor="middle";var ra=kt/2,Ia=ar+ra-R,ma=ar-ra;Ia>0&&(ar-=Ia),ma<0&&(ar+=-ma)}Re.crossPos=ar}Ne.attr("text-anchor",Re.anchor),oe&&ne.attr("text-anchor",Re.anchor),Ae.attr("transform",j2(ar,fr)+(i?ere(Tk):""))}),{hoverLabels:hr,commonLabelBoundingBox:V}}function gk(e,r,t,a,n,i){var c,h;var l="",o="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=Ct.templateString(e.name,e.trace._meta)),l=_k(e.name,e.nameLength));var s=t.charAt(0),u=s==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(o+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(o+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(o+=(o?"z: ":"")+e.zLabel)):r&&e[s+"Label"]===n?o=e[u+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(o=e.yLabel):e.yLabel===void 0?o=e.xLabel:o="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(o+=(o?"
":"")+e.text),e.extraText!==void 0&&(o+=(o?"
":"")+e.extraText),i&&o===""&&!e.hovertemplate&&(l===""&&i.remove(),o=l),(h=(c=e.trace)==null?void 0:c.hoverlabel)!=null&&h.split&&(e.hovertemplate="");let{hovertemplate:f=!1}=e;if(f){let d=e.hovertemplateLabels||e;e[s+"Label"]!==n&&(d[s+"other"]=d[s+"Val"],d[s+"otherLabel"]=d[s+"Label"]),o=Ct.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:a._d3locale,template:f}),o=o.replace(cre,(p,m)=>(l=_k(m,e.nameLength),""))}return[o,l]}function vre(e,r,t,a){var n=r?"xa":"ya",i=r?"ya":"xa",l=0,o=1,s=e.size(),u=new Array(s),f=0,c=a.minX,h=a.maxX,d=a.minY,p=a.maxY,m=function(W){return W*t._invScaleX},y=function(W){return W*t._invScaleY};e.each(function(W){var Y=W[n],B=W[i],V=Y._id.charAt(0)==="x",K=Y.range;f===0&&K&&K[0]>K[1]!==V&&(o=-1);var J=0,re=V?t.width:t.height;if(t.hovermode==="x"||t.hovermode==="y"){var le=kk(W,r),ue=W.anchor,ve=ue==="end"?-1:1,j,qe;if(ue==="middle")j=W.crossPos+(V?y(le.y-W.by/2):m(W.bx/2+W.tx2width/2)),qe=j+(V?y(W.by):m(W.bx));else if(V)j=W.crossPos+y(xt+le.y)-y(W.by/2-xt),qe=j+y(W.by);else{var fe=m(ve*xt+le.x),be=fe+m(ve*W.bx);j=W.crossPos+Math.min(fe,be),qe=W.crossPos+Math.max(fe,be)}V?d!==void 0&&p!==void 0&&Math.min(qe,p)-Math.max(j,d)>1&&(B.side==="left"?(J=B._mainLinePosition,re=t.width):re=B._mainLinePosition):c!==void 0&&h!==void 0&&Math.min(qe,h)-Math.max(j,c)>1&&(B.side==="top"?(J=B._mainLinePosition,re=t.height):re=B._mainLinePosition)}u[f++]=[{datum:W,traceIndex:W.trace.index,dp:0,pos:W.pos,posref:W.posref,size:W.by*(V?lre:1)/2,pmin:J,pmax:re}]}),u.sort(function(W,Y){return W[0].posref-Y[0].posref||o*(Y[0].traceIndex-W[0].traceIndex)});var b,_,T,x,M,k,A;function C(W){var Y=W[0],B=W[W.length-1];if(_=Y.pmin-Y.pos-Y.dp+Y.size,T=B.pos+B.dp+B.size-Y.pmax,_>.01){for(M=W.length-1;M>=0;M--)W[M].dp+=_;b=!1}if(!(T<.01)){if(_<-.01){for(M=W.length-1;M>=0;M--)W[M].dp-=T;b=!1}if(b){var V=0;for(x=0;xY.pmax&&V++;for(x=W.length-1;x>=0&&!(V<=0);x--)k=W[x],k.pos>Y.pmax-1&&(k.del=!0,V--);for(x=0;x=0;M--)W[M].dp-=T;for(x=W.length-1;x>=0&&!(V<=0);x--)k=W[x],k.pos+k.dp+k.size>Y.pmax&&(k.del=!0,V--)}}}for(;!b&&l<=s;){for(l++,b=!0,x=0;x.01){for(M=E.length-1;M>=0;M--)E[M].dp+=_;for(D.push.apply(D,E),u.splice(x+1,1),A=0,M=D.length-1;M>=0;M--)A+=D[M].dp;for(T=A/D.length,M=D.length-1;M>=0;M--)D[M].dp-=T;b=!1}else x++}u.forEach(C)}for(x=u.length-1;x>=0;x--){var I=u[x];for(M=I.length-1;M>=0;M--){var H=I[M],G=H.datum;G.offset=H.dp,G.del=H.del}}}function kk(e,r){var t=0,a=e.offset;return r&&(a*=-sre,t=e.offset*ore),{x:t,y:a}}function hre(e){var r={start:1,end:-1,middle:0}[e.anchor],t=r*(xt+Or),a=t+r*(e.txwidth+Or),n=e.anchor==="middle";return n&&(t-=e.tx2width/2,a+=e.txwidth/2+Or),{alignShift:r,textShiftX:t,text2ShiftX:a}}function qk(e,r,t,a){var n=function(l){return l*t},i=function(l){return l*a};e.each(function(l){var o=hs.select(this);if(l.del)return o.remove();var s=o.select("text.nums"),u=l.anchor,f=u==="end"?-1:1,c=hre(l),h=kk(l,r),d=h.x,p=h.y,m=u==="middle",y="hoverlabel"in l.trace?l.trace.hoverlabel.showarrow:!0,b;m?b="M-"+n(l.bx/2+l.tx2width/2)+","+i(p-l.by/2)+"h"+n(l.bx)+"v"+i(l.by)+"h-"+n(l.bx)+"Z":y?b="M0,0L"+n(f*xt+d)+","+i(xt+p)+"v"+i(l.by/2-xt)+"h"+n(f*l.bx)+"v-"+i(l.by)+"H"+n(f*xt+d)+"V"+i(p-xt)+"Z":b="M"+n(f*xt+d)+","+i(p-l.by/2)+"h"+n(f*l.bx)+"v"+i(l.by)+"h"+n(-f*l.bx)+"Z",o.select("path").attr("d",b);var _=d+c.textShiftX,T=p+l.ty0-l.by/2+Or,x=l.textAlign||"auto";x!=="auto"&&(x==="left"&&u!=="start"?(s.attr("text-anchor","start"),_=m?-l.bx/2-l.tx2width/2+Or:-l.bx-Or):x==="right"&&u!=="end"&&(s.attr("text-anchor","end"),_=m?l.bx/2-l.tx2width/2-Or:l.bx+Or)),s.call(Gn.positionText,n(_),i(T)),l.tx2width&&(o.select("text.name").call(Gn.positionText,n(c.text2ShiftX+c.alignShift*Or+d),i(p+l.ty0-l.by/2+Or)),o.select("rect").call(Gi.setRect,n(c.text2ShiftX+(c.alignShift-1)*l.tx2width/2+d),i(p-l.by/2-1),n(l.tx2width),i(l.by+2)))})}function dre(e,r){var t=e.index,a=e.trace||{},n=e.cd[0],i=e.cd[t]||{};function l(h){return h||hl(h)&&h===0}var o=Array.isArray(t)?function(h,d){var p=Ct.castOption(n,t,h);return l(p)?p:Ct.extractOption({},a,"",d)}:function(h,d){return Ct.extractOption(i,a,h,d)};function s(h,d,p){var m=o(d,p);l(m)&&(e[h]=m)}if(s("hoverinfo","hi","hoverinfo"),s("bgcolor","hbg","hoverlabel.bgcolor"),s("borderColor","hbc","hoverlabel.bordercolor"),s("fontFamily","htf","hoverlabel.font.family"),s("fontSize","hts","hoverlabel.font.size"),s("fontColor","htc","hoverlabel.font.color"),s("fontWeight","htw","hoverlabel.font.weight"),s("fontStyle","hty","hoverlabel.font.style"),s("fontVariant","htv","hoverlabel.font.variant"),s("nameLength","hnl","hoverlabel.namelength"),s("textAlign","hta","hoverlabel.align"),e.posref=r==="y"||r==="closest"&&a.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=Ct.constrain(e.x0,0,e.xa._length),e.x1=Ct.constrain(e.x1,0,e.xa._length),e.y0=Ct.constrain(e.y0,0,e.ya._length),e.y1=Ct.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:Ui.hoverLabelText(e.xa,e.xLabelVal,a.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:Ui.hoverLabelText(e.ya,e.yLabelVal,a.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var u=Ui.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+u+" / -"+Ui.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+u,r==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var f=Ui.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+f+" / -"+Ui.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+f,r==="y"&&(e.distance+=1)}var c=e.hoverinfo||e.trace.hoverinfo;return c&&c!=="all"&&(c=Array.isArray(c)?c:c.split("+"),c.indexOf("x")===-1&&(e.xLabel=void 0),c.indexOf("y")===-1&&(e.yLabel=void 0),c.indexOf("z")===-1&&(e.zLabel=void 0),c.indexOf("text")===-1&&(e.text=void 0),c.indexOf("name")===-1&&(e.name=void 0)),e}function xk(e,r,t){var a=t.container,n=t.fullLayout,i=n._size,l=t.event,o=!!r.hLinePoint,s=!!r.vLinePoint,u,f;if(a.selectAll(".spikeline").remove(),!!(s||o)){var c=la.combine(n.plot_bgcolor,n.paper_bgcolor);if(o){var h=r.hLinePoint,d,p;u=h&&h.xa,f=h&&h.ya;var m=f.spikesnap;m==="cursor"?(d=l.pointerX,p=l.pointerY):(d=u._offset+h.x,p=f._offset+h.y);var y=pk.readability(h.color,c)<1.5?la.contrast(c):h.color,b=f.spikemode,_=f.spikethickness,T=f.spikecolor||y,x=Ui.getPxPosition(e,f),M,k;if(b.indexOf("toaxis")!==-1||b.indexOf("across")!==-1){if(b.indexOf("toaxis")!==-1&&(M=x,k=d),b.indexOf("across")!==-1){var A=f._counterDomainMin,C=f._counterDomainMax;f.anchor==="free"&&(A=Math.min(A,f.position),C=Math.max(C,f.position)),M=i.l+A*i.w,k=i.l+C*i.w}a.insert("line",":first-child").attr({x1:M,x2:k,y1:p,y2:p,"stroke-width":_,stroke:T,"stroke-dasharray":Gi.dashStyle(f.spikedash,_)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:M,x2:k,y1:p,y2:p,"stroke-width":_+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}b.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:x+(f.side!=="right"?_:-_),cy:p,r:_,fill:T}).classed("spikeline",!0)}if(s){var D=r.vLinePoint,E,R;u=D&&D.xa,f=D&&D.ya;var N=u.spikesnap;N==="cursor"?(E=l.pointerX,R=l.pointerY):(E=u._offset+D.x,R=f._offset+D.y);var I=pk.readability(D.color,c)<1.5?la.contrast(c):D.color,H=u.spikemode,G=u.spikethickness,W=u.spikecolor||I,Y=Ui.getPxPosition(e,u),B,V;if(H.indexOf("toaxis")!==-1||H.indexOf("across")!==-1){if(H.indexOf("toaxis")!==-1&&(B=Y,V=R),H.indexOf("across")!==-1){var K=u._counterDomainMin,J=u._counterDomainMax;u.anchor==="free"&&(K=Math.min(K,u.position),J=Math.max(J,u.position)),B=i.t+(1-J)*i.h,V=i.t+(1-K)*i.h}a.insert("line",":first-child").attr({x1:E,x2:E,y1:B,y2:V,"stroke-width":G,stroke:W,"stroke-dasharray":Gi.dashStyle(u.spikedash,G)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:E,x2:E,y1:B,y2:V,"stroke-width":G+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}H.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:E,cy:Y-(u.side!=="top"?G:-G),r:G,fill:W}).classed("spikeline",!0)}}}function pre(e,r,t){if(!t||t.length!==e._hoverdata.length)return!0;for(var a=t.length-1;a>=0;a--){var n=t[a],i=e._hoverdata[a];if(n.curveNumber!==i.curveNumber||String(n.pointNumber)!==String(i.pointNumber)||String(n.pointNumbers)!==String(i.pointNumbers)||n.binNumber!==i.binNumber)return!0}return!1}function bk(e,r){return!r||r.vLinePoint!==e._spikepoints.vLinePoint||r.hLinePoint!==e._spikepoints.hLinePoint}function _k(e,r){return Gn.plainText(e||"",{len:r,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function mre(e,r){for(var t=r.charAt(0),a=[],n=[],i=[],l=0;le.offsetTop+e.clientTop,Ck=e=>e.offsetLeft+e.clientLeft;function Qu(e,r){var t=e._fullLayout,a=r.getBoundingClientRect(),n=a.left,i=a.top,l=n+a.width,o=i+a.height,s=Ct.apply3DTransform(t._invTransform)(n,i),u=Ct.apply3DTransform(t._invTransform)(l,o),f=s[0],c=s[1],h=u[0],d=u[1];return{x:f,y:c,width:h-f,height:d-c,top:Math.min(c,d),left:Math.min(f,h),right:Math.max(f,h),bottom:Math.max(c,d)}}});var Zd=O((m2e,Lk)=>{"use strict";var yre=Pe(),gre=xr(),xre=Hi().isUnifiedHover;Lk.exports=function(r,t,a,n){n=n||{};var i=t.legend;function l(o){n.font[o]||(n.font[o]=i?t.legend.font[o]:t.font[o])}t&&xre(t.hovermode)&&(n.font||(n.font={}),l("size"),l("family"),l("color"),l("weight"),l("style"),l("variant"),i?(n.bgcolor||(n.bgcolor=gre.combine(t.legend.bgcolor,t.paper_bgcolor)),n.bordercolor||(n.bordercolor=t.legend.bordercolor)):n.bgcolor||(n.bgcolor=t.paper_bgcolor)),a("hoverlabel.bgcolor",n.bgcolor),a("hoverlabel.bordercolor",n.bordercolor),a("hoverlabel.namelength",n.namelength),a("hoverlabel.showarrow",n.showarrow),yre.coerceFont(a,"hoverlabel.font",n.font),a("hoverlabel.align",n.align)}});var Ek=O((y2e,Dk)=>{"use strict";var bre=Pe(),_re=Zd(),wre=pu();Dk.exports=function(r,t){function a(n,i){return bre.coerce(r,t,wre,n,i)}_re(r,t,a)}});var zk=O((g2e,Rk)=>{"use strict";var Pk=Pe(),Tre=Ac(),Mre=Zd();Rk.exports=function(r,t,a,n){function i(o,s){return Pk.coerce(r,t,Tre,o,s)}var l=Pk.extendFlat({},n.hoverlabel);t.hovertemplate&&(l.namelength=-1),Mre(r,t,i,l)}});var a3=O((x2e,Nk)=>{"use strict";var Are=Pe(),kre=pu();Nk.exports=function(r,t){function a(n,i){return t[n]!==void 0?t[n]:Are.coerce(r,t,kre,n,i)}return a("clickmode"),a("hoversubplots"),a("hovermode")}});var Hk=O((b2e,Ik)=>{"use strict";var Fk=Pe(),qre=pu(),Sre=a3(),Cre=Zd();Ik.exports=function(r,t){function a(f,c){return Fk.coerce(r,t,qre,f,c)}var n=Sre(r,t);n&&(a("hoverdistance"),a("spikedistance"));var i=a("dragmode");i==="select"&&a("selectdirection");var l=t._has("mapbox"),o=t._has("map"),s=t._has("geo"),u=t._basePlotModules.length;t.dragmode==="zoom"&&((l||o||s)&&u===1||(l||o)&&s&&u===2)&&(t.dragmode="pan"),Cre(r,t,a),Fk.coerceFont(a,"hoverlabel.grouptitlefont",t.hoverlabel.font)}});var Yk=O((_2e,Bk)=>{"use strict";var n3=Pe(),Ok=gr();Bk.exports=function(r){var t=r.calcdata,a=r._fullLayout;function n(u){return function(f){return n3.coerceHoverinfo({hoverinfo:f},{_module:u._module},a)}}for(var i=0;i{"use strict";var Dre=gr(),Ere=t3().hover;Vk.exports=function(r,t,a){var n=Dre.getComponentMethod("annotations","onClick")(r,r._hoverdata);a!==void 0&&Ere(r,t,a,!0);function i(){r.emit("plotly_click",{points:r._hoverdata,event:t})}r._hoverdata&&t&&t.target&&(n&&n.then?n.then(i):i(),t.stopImmediatePropagation&&t.stopImmediatePropagation())}});var gi=O((T2e,Xk)=>{"use strict";var Pre=kr(),Jd=Pe(),Rre=mi(),av=Hi(),Uk=pu(),Wk=t3();Xk.exports={moduleType:"component",name:"fx",constants:wc(),schema:{layout:Uk},attributes:Ac(),layoutAttributes:Uk,supplyLayoutGlobalDefaults:Ek(),supplyDefaults:zk(),supplyLayoutDefaults:Hk(),calc:Yk(),getDistanceFunction:av.getDistanceFunction,getClosest:av.getClosest,inbox:av.inbox,quadrature:av.quadrature,appendArrayPointValue:av.appendArrayPointValue,castHoverOption:Nre,castHoverinfo:Fre,hover:Wk.hover,unhover:Rre.unhover,loneHover:Wk.loneHover,loneUnhover:zre,click:Gk()};function zre(e){var r=Jd.isD3Selection(e)?e:Pre.select(e);r.selectAll("g.hovertext").remove(),r.selectAll(".spikeline").remove()}function Nre(e,r,t){return Jd.castOption(e,r,"hoverlabel."+t)}function Fre(e,r,t){function a(n){return Jd.coerceHoverinfo({hoverinfo:n},{_module:e._module},r)}return Jd.castOption(e,t,"hoverinfo",a)}});var ef=O(dl=>{"use strict";dl.selectMode=function(e){return e==="lasso"||e==="select"};dl.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};dl.openMode=function(e){return e==="drawline"||e==="drawopenpath"};dl.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};dl.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};dl.selectingOrDrawing=function(e){return dl.freeMode(e)||dl.rectMode(e)}});var $d=O((A2e,Zk)=>{"use strict";Zk.exports=function(r){var t=r._fullLayout;t._glcanvas&&t._glcanvas.size()&&t._glcanvas.each(function(a){a.regl&&a.regl.clear({color:!0,depth:!0})})}});var Kd=O((k2e,Jk)=>{"use strict";Jk.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var jd=O((q2e,$k)=>{"use strict";var Qd=32;$k.exports={CIRCLE_SIDES:Qd,i000:0,i090:Qd/4,i180:Qd/2,i270:Qd/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var e1=O((S2e,Qk)=>{"use strict";var Ire=Pe().strTranslate;function Kk(e,r){switch(e.type){case"log":return e.p2d(r);case"date":return e.p2r(r,0,e.calendar);default:return e.p2r(r)}}function Hre(e,r){switch(e.type){case"log":return e.d2p(r);case"date":return e.r2p(r,0,e.calendar);default:return e.r2p(r)}}function Ore(e){var r=e._id.charAt(0)==="y"?1:0;return function(t){return Kk(e,t[r])}}function Bre(e){return Ire(e.xaxis._offset,e.yaxis._offset)}Qk.exports={p2r:Kk,r2p:Hre,axValue:Ore,getTransform:Bre}});var Ql=O(pl=>{"use strict";var Yre=Wg(),rq=jd(),rf=rq.CIRCLE_SIDES,i3=rq.SQRT2,tq=e1(),jk=tq.p2r,eq=tq.r2p,Vre=[0,3,4,5,6,1,2],Gre=[0,3,4,1,2];pl.writePaths=function(e){var r=e.length;if(!r)return"M0,0Z";for(var t="",a=0;a0&&s{"use strict";var aq=Ut(),sq=ef(),Ure=sq.drawMode,Wre=sq.openMode,tf=jd(),nq=tf.i000,iq=tf.i090,lq=tf.i180,oq=tf.i270,Xre=tf.cos45,Zre=tf.sin45,uq=e1(),t1=uq.p2r,jl=uq.r2p,Jre=Gl(),$re=Jre.clearOutline,a1=Ql(),Kre=a1.readPaths,Qre=a1.writePaths,jre=a1.ellipseOver,ete=a1.fixDatesForPaths;function rte(e,r){if(e.length){var t=e[0][0];if(t){var a=r.gd,n=r.isActiveShape,i=r.dragmode,l=(a.layout||{}).shapes||[];if(!Ure(i)&&n!==void 0){var o=a._fullLayout._activeShapeIndex;if(o{"use strict";var tte=ef(),ate=tte.selectMode,nte=Gl(),ite=nte.clearOutline,l3=Ql(),lte=l3.readPaths,ote=l3.writePaths,ste=l3.fixDatesForPaths;vq.exports=function(r,t){if(r.length){var a=r[0][0];if(a){var n=a.getAttribute("d"),i=t.gd,l=i._fullLayout.newselection,o=t.plotinfo,s=o.xaxis,u=o.yaxis,f=t.isActiveSelection,c=t.dragmode,h=(i.layout||{}).selections||[];if(!ate(c)&&f!==void 0){var d=i._fullLayout._activeSelectionIndex;if(d{"use strict";hq.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var eo=O(ha=>{"use strict";var ps=iv(),dq=Pe(),i1=Zr();ha.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(r){return r}};ha.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(r){return r}};ha.decodeDate=function(e){return function(r){return r.replace&&(r=r.replace("_"," ")),e(r)}};ha.encodeDate=function(e){return function(r){return e(r).replace(" ","_")}};ha.extractPathCoords=function(e,r,t){var a=[],n=e.match(ps.segmentRE);return n.forEach(function(i){var l=r[i.charAt(0)].drawn;if(l!==void 0){var o=i.substr(1).match(ps.paramRE);if(!(!o||o.lengthd&&(m="X"),m});return u>d&&(p=p.replace(/[\s,]*X.*/,""),dq.log("Ignoring extra params in segment "+s)),f+p})}function lv(e,r){r=r||0;var t=0;return r&&e&&(e.type==="category"||e.type==="multicategory")&&(t=(e.r2p(1)-e.r2p(0))*r),t}});var u3=O((R2e,gq)=>{"use strict";var fte=Pe(),af=Zr(),pq=va(),mq=Yr(),cte=Ql().readPaths,s3=eo(),vte=s3.getPathString,yq=Ah(),hte=Ea().FROM_TL;gq.exports=function(r,t,a,n){if(n.selectAll(".shape-label").remove(),!!(a.label.text||a.label.texttemplate)){var i;if(a.label.texttemplate){var l={};if(a.type!=="path"){var o=af.getFromId(r,a.xref),s=af.getFromId(r,a.yref);for(var u in yq){var f=yq[u](a,o,s);f!==void 0&&(l[u]=f)}}i=fte.texttemplateStringForShapes({data:[l],fallback:a.label.texttemplatefallback,locale:r._fullLayout._d3locale,template:a.label.texttemplate})}else i=a.label.text;var c={"data-index":t},h=a.label.font,d={"data-notex":1},p=n.append("g").attr(c).classed("shape-label",!0),m=p.append("text").attr(d).classed("shape-label-text",!0).text(i),y,b,_,T;if(a.path){var x=vte(r,a),M=cte(x,r);y=1/0,_=1/0,b=-1/0,T=-1/0;for(var k=0;k=e?n=r-a:n=a-r,-180/Math.PI*Math.atan2(n,i)}function pte(e,r,t,a,n,i,l){var o=n.label.textposition,s=n.label.textangle,u=n.label.padding,f=n.type,c=Math.PI/180*i,h=Math.sin(c),d=Math.cos(c),p=n.label.xanchor,m=n.label.yanchor,y,b,_,T;if(f==="line"){o==="start"?(y=e,b=r):o==="end"?(y=t,b=a):(y=(e+t)/2,b=(r+a)/2),p==="auto"&&(o==="start"?s==="auto"?t>e?p="left":te?p="right":te?p="right":te?p="left":t{"use strict";var mte=Pe(),yte=mte.strTranslate,xq=mi(),wq=ef(),gte=wq.drawMode,Tq=wq.selectMode,Mq=gr(),bq=xr(),o1=jd(),xte=o1.i000,bte=o1.i090,_te=o1.i180,wte=o1.i270,Tte=Gl(),Aq=Tte.clearOutlineControllers,c3=Ql(),l1=c3.pointsOnRectangle,f3=c3.pointsOnEllipse,Mte=c3.writePaths,Ate=n1().newShapes,kte=n1().createShapeObj,qte=o3(),Ste=u3();kq.exports=function e(r,t,a,n){n||(n=0);var i=a.gd;function l(){e(r,t,a,n++),(f3(r[0])||a.hasText)&&o({redrawing:!0})}function o(Y){var B={};a.isActiveShape!==void 0&&(a.isActiveShape=!1,B=Ate(t,a)),a.isActiveSelection!==void 0&&(a.isActiveSelection=!1,B=qte(t,a),i._fullLayout._reselect=!0),Object.keys(B).length&&Mq.call((Y||{}).redrawing?"relayout":"_guiRelayout",i,B)}var s=i._fullLayout,u=s._zoomlayer,f=a.dragmode,c=gte(f),h=Tq(f);(c||h)&&(i._fullLayout._outlining=!0),Aq(i),t.attr("d",Mte(r));var d,p,m,y,b;if(!n&&(a.isActiveShape||a.isActiveSelection)){b=Cte([],r);var _=u.append("g").attr("class","outline-controllers");E(_),W()}if(c&&a.hasText){var T=u.select(".label-temp"),x=kte(t,a,a.dragmode);Ste(i,"label-temp",x,T)}function M(Y){m=+Y.srcElement.getAttribute("data-i"),y=+Y.srcElement.getAttribute("data-j"),d[m][y].moveFn=k}function k(Y,B){if(r.length){var V=b[m][y][1],K=b[m][y][2],J=r[m],re=J.length;if(l1(J)){var le=Y,ue=B;if(a.isActiveSelection){var ve=_q(J,y);ve[1]===J[y][1]?ue=0:le=0}for(var j=0;j1&&!(Y.length===2&&Y[1][0]==="Z")&&(y===0&&(Y[0][0]="M"),r[m]=Y,l(),o())}}function D(Y,B){if(Y===2){m=+B.srcElement.getAttribute("data-i"),y=+B.srcElement.getAttribute("data-j");var V=r[m];!l1(V)&&!f3(V)&&C()}}function E(Y){d=[];for(var B=0;B{"use strict";var Dte=kr(),Eq=gr(),qq=Pe(),nf=Zr(),Ete=Ql().readPaths,Pte=s1(),f1=u3(),Pq=Gl().clearOutlineControllers,v3=xr(),d3=Yr(),Rte=lt().arrayEditor,Sq=mi(),Cq=Kl(),ms=iv(),fn=eo(),h3=fn.getPathString;Nq.exports={draw:p3,drawOne:Rq,eraseActiveShape:Fte,drawLabel:f1};function p3(e){var r=e._fullLayout;r._shapeUpperLayer.selectAll("path").remove(),r._shapeLowerLayer.selectAll("path").remove(),r._shapeUpperLayer.selectAll("text").remove(),r._shapeLowerLayer.selectAll("text").remove();for(var t in r._plots){var a=r._plots[t].shapelayer;a&&(a.selectAll("path").remove(),a.selectAll("text").remove())}for(var n=0;nl&&Be>o&&!Ie.shiftKey?Sq.getCursor(Ue/Fe,1-Le/Be):"move";Cq(r,He),qe=He.split("-")[0]}}function xe(Ie){u1(e)||(s&&(b=J(t.xanchor)),u&&(_=re(t.yanchor)),t.type==="path"?R=t.path:(d=s?t.x0:J(t.x0),p=u?t.y0:re(t.y0),m=s?t.x1:J(t.x1),y=u?t.y1:re(t.y1)),dy?(T=p,A="y0",x=y,C="y1"):(T=y,A="y1",x=p,C="y0"),ce(Ie),Te(n,t),ze(r,t,e),j.moveFn=qe==="move"?X:ge,j.altKey=Ie.altKey)}function U(){u1(e)||(Cq(r),ye(n),zq(r,e,t),Eq.call("_guiRelayout",e,i.getUpdateObj()))}function Q(){u1(e)||ye(n)}function X(Ie,Ee){if(t.type==="path"){var Fe=function(Le){return Le},Be=Fe,Ue=Fe;s?h("xanchor",t.xanchor=le(b+Ie)):(Be=function(He){return le(J(He)+Ie)},I&&I.type==="date"&&(Be=fn.encodeDate(Be))),u?h("yanchor",t.yanchor=ue(_+Ee)):(Ue=function(He){return ue(re(He)+Ee)},G&&G.type==="date"&&(Ue=fn.encodeDate(Ue))),h("path",t.path=Lq(R,Be,Ue))}else s?h("xanchor",t.xanchor=le(b+Ie)):(h("x0",t.x0=le(d+Ie)),h("x1",t.x1=le(m+Ie))),u?h("yanchor",t.yanchor=ue(_+Ee)):(h("y0",t.y0=ue(p+Ee)),h("y1",t.y1=ue(y+Ee)));r.attr("d",h3(e,t)),Te(n,t),f1(e,a,t,N)}function ge(Ie,Ee){if(c){var Fe=function(Xe){return Xe},Be=Fe,Ue=Fe;s?h("xanchor",t.xanchor=le(b+Ie)):(Be=function(lr){return le(J(lr)+Ie)},I&&I.type==="date"&&(Be=fn.encodeDate(Be))),u?h("yanchor",t.yanchor=ue(_+Ee)):(Ue=function(lr){return ue(re(lr)+Ee)},G&&G.type==="date"&&(Ue=fn.encodeDate(Ue))),h("path",t.path=Lq(R,Be,Ue))}else if(f){if(qe==="resize-over-start-point"){var Le=d+Ie,He=u?p-Ee:p+Ee;h("x0",t.x0=s?Le:le(Le)),h("y0",t.y0=u?He:ue(He))}else if(qe==="resize-over-end-point"){var Ye=m+Ie,ie=u?y-Ee:y+Ee;h("x1",t.x1=s?Ye:le(Ye)),h("y1",t.y1=u?ie:ue(ie))}}else{var _e=function(Xe){return qe.indexOf(Xe)!==-1},$e=_e("n"),hr=_e("s"),Re=_e("w"),Ae=_e("e"),Se=$e?T+Ee:T,Oe=hr?x+Ee:x,Je=Re?M+Ie:M,We=Ae?k+Ie:k;u&&($e&&(Se=T-Ee),hr&&(Oe=x-Ee)),(!u&&Oe-Se>o||u&&Se-Oe>o)&&(h(A,t[A]=u?Se:ue(Se)),h(C,t[C]=u?Oe:ue(Oe))),We-Je>l&&(h(D,t[D]=s?Je:le(Je)),h(E,t[E]=s?We:le(We)))}r.attr("d",h3(e,t)),Te(n,t),f1(e,a,t,N)}function Te(Ie,Ee){(s||u)&&Fe();function Fe(){var Be=Ee.type!=="path",Ue=Ie.selectAll(".visual-cue").data([0]),Le=1;Ue.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":Le}).classed("visual-cue",!0);var He=J(s?Ee.xanchor:qq.midRange(Be?[Ee.x0,Ee.x1]:fn.extractPathCoords(Ee.path,ms.paramIsX))),Ye=re(u?Ee.yanchor:qq.midRange(Be?[Ee.y0,Ee.y1]:fn.extractPathCoords(Ee.path,ms.paramIsY)));if(He=fn.roundPositionForSharpStrokeRendering(He,Le),Ye=fn.roundPositionForSharpStrokeRendering(Ye,Le),s&&u){var ie="M"+(He-1-Le)+","+(Ye-1-Le)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Ue.attr("d",ie)}else if(s){var _e="M"+(He-1-Le)+","+(Ye-9-Le)+"v18 h2 v-18 Z";Ue.attr("d",_e)}else{var $e="M"+(He-9-Le)+","+(Ye-1-Le)+"h18 v2 h-18 Z";Ue.attr("d",$e)}}}function ye(Ie){Ie.selectAll(".visual-cue").remove()}function ze(Ie,Ee,Fe){var Be=Ee.xref,Ue=Ee.yref,Le=nf.getFromId(Fe,Be),He=nf.getFromId(Fe,Ue),Ye="";Be!=="paper"&&!Le.autorange&&(Ye+=Be),Ue!=="paper"&&!He.autorange&&(Ye+=Ue),d3.setClipUrl(Ie,Ye?"clip"+Fe._fullLayout._uid+Ye:null,Fe)}}function Lq(e,r,t){return e.replace(ms.segmentRE,function(a){var n=0,i=a.charAt(0),l=ms.paramIsX[i],o=ms.paramIsY[i],s=ms.numParams[i],u=a.substr(1).replace(ms.paramRE,function(f){return n>=s||(l[n]?f=r(f):o[n]&&(f=t(f)),n++),f});return i+u})}function Nte(e,r){if(c1(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeShapeIndex){Dq(e);return}e._fullLayout._activeShapeIndex=a,e._fullLayout._deactivateShape=Dq,p3(e)}}}function Dq(e){if(c1(e)){var r=e._fullLayout._activeShapeIndex;r>=0&&(Pq(e),delete e._fullLayout._activeShapeIndex,p3(e))}}function Fte(e){if(c1(e)){Pq(e);var r=e._fullLayout._activeShapeIndex,t=(e.layout||{}).shapes||[];if(r{"use strict";var Un=gr(),Fq=Rt(),Iq=Ut(),Gr=Kd(),Ite=v1().eraseActiveShape,h1=Pe(),Ir=h1._,Ur=Uq.exports={};Ur.toImage={name:"toImage",title:function(e){var r=e._context.toImageButtonOptions||{},t=r.format||"png";return t==="png"?Ir(e,"Download plot as a PNG"):Ir(e,"Download plot")},icon:Gr.camera,click:function(e){var r=e._context.toImageButtonOptions,t={format:r.format||"png"};h1.notifier(Ir(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(a){a in r&&(t[a]=r[a])}),Un.call("downloadImage",e,t).then(function(a){h1.notifier(Ir(e,"Snapshot succeeded")+" - "+a,"long")}).catch(function(){h1.notifier(Ir(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Ur.sendDataToCloud={name:"sendDataToCloud",title:function(e){return Ir(e,"Edit in Chart Studio")},icon:Gr.disk,click:function(e){Fq.sendDataToCloud(e)}};Ur.editInChartStudio={name:"editInChartStudio",title:function(e){return Ir(e,"Edit in Chart Studio")},icon:Gr.pencil,click:function(e){Fq.sendDataToCloud(e)}};Ur.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return Ir(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Gr.zoombox,click:Ga};Ur.pan2d={name:"pan2d",_cat:"pan",title:function(e){return Ir(e,"Pan")},attr:"dragmode",val:"pan",icon:Gr.pan,click:Ga};Ur.select2d={name:"select2d",_cat:"select",title:function(e){return Ir(e,"Box Select")},attr:"dragmode",val:"select",icon:Gr.selectbox,click:Ga};Ur.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return Ir(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Gr.lasso,click:Ga};Ur.drawclosedpath={name:"drawclosedpath",title:function(e){return Ir(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Gr.drawclosedpath,click:Ga};Ur.drawopenpath={name:"drawopenpath",title:function(e){return Ir(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Gr.drawopenpath,click:Ga};Ur.drawline={name:"drawline",title:function(e){return Ir(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Gr.drawline,click:Ga};Ur.drawrect={name:"drawrect",title:function(e){return Ir(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Gr.drawrect,click:Ga};Ur.drawcircle={name:"drawcircle",title:function(e){return Ir(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Gr.drawcircle,click:Ga};Ur.eraseshape={name:"eraseshape",title:function(e){return Ir(e,"Erase active shape")},icon:Gr.eraseshape,click:Ite};Ur.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return Ir(e,"Zoom in")},attr:"zoom",val:"in",icon:Gr.zoom_plus,click:Ga};Ur.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return Ir(e,"Zoom out")},attr:"zoom",val:"out",icon:Gr.zoom_minus,click:Ga};Ur.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return Ir(e,"Autoscale")},attr:"zoom",val:"auto",icon:Gr.autoscale,click:Ga};Ur.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return Ir(e,"Reset axes")},attr:"zoom",val:"reset",icon:Gr.home,click:Ga};Ur.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return Ir(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Gr.tooltip_basic,gravity:"ne",click:Ga};Ur.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return Ir(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Gr.tooltip_compare,gravity:"ne",click:Ga};function Ga(e,r){var t=r.currentTarget,a=t.getAttribute("data-attr"),n=t.getAttribute("data-val")||!0,i=e._fullLayout,l={},o=Iq.list(e,null,!0),s=i._cartesianSpikesEnabled,u,f;if(a==="zoom"){var c=n==="in"?.5:2,h=(1+c)/2,d=(1-c)/2,p,m;for(f=0;f{"use strict";var Wq=g3(),Bte=Object.keys(Wq),Xq=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],Zq=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(Xq),of=[],Yte=function(e){if(Zq.indexOf(e._cat||e.name)===-1){var r=e.name,t=(e._cat||e.name).toLowerCase();of.indexOf(r)===-1&&of.push(r),of.indexOf(t)===-1&&of.push(t)}};Bte.forEach(function(e){Yte(Wq[e])});of.sort();Jq.exports={DRAW_MODES:Xq,backButtons:Zq,foreButtons:of}});var b3=O((O2e,$q)=>{"use strict";var H2e=x3();$q.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var Qq=O((B2e,Kq)=>{"use strict";var Vte=Pe(),ov=xr(),Gte=lt(),Ute=b3();Kq.exports=function(r,t){var a=r.modebar||{},n=Gte.newContainer(t,"modebar");function i(o,s){return Vte.coerce(a,n,Ute,o,s)}i("orientation"),i("bgcolor",ov.addOpacity(t.paper_bgcolor,.5));var l=ov.contrast(ov.rgb(t.modebar.bgcolor));i("color",ov.addOpacity(l,.3)),i("activecolor",ov.addOpacity(l,.7)),i("uirevision",t.uirevision),i("add"),i("remove")}});var tS=O((Y2e,rS)=>{"use strict";var _3=kr(),Wte=zr(),p1=Pe(),jq=Kd(),Xte=lh().version,Zte=new DOMParser;function eS(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Wi=eS.prototype;Wi.update=function(e,r){this.graphInfo=e;var t=this.graphInfo._context,a=this.graphInfo._fullLayout,n="modebar-"+a._uid;this.element.setAttribute("id",n),this.element.setAttribute("role","toolbar"),this._uid=n,this.element.className="modebar modebar--custom",t.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),a.modebar.orientation==="v"&&(this.element.className+=" vertical",r=r.reverse());var i=a.modebar,l="#"+n+" .modebar-group";document.querySelectorAll(l).forEach(function(c){c.style.backgroundColor=i.bgcolor});var o=!this.hasButtons(r),s=this.hasLogo!==t.displaylogo,u=this.locale!==t.locale;if(this.locale=t.locale,(o||s||u)&&(this.removeAllButtons(),this.updateButtons(r),t.watermark||t.displaylogo)){var f=this.getLogo();t.watermark&&(f.className=f.className+" watermark"),a.modebar.orientation==="v"?this.element.insertBefore(f,this.element.childNodes[0]):this.element.appendChild(f),this.hasLogo=!0}this.updateActiveButton(),p1.setStyleOnHover("#"+n+" .modebar-btn",".active",".icon path","fill: "+i.activecolor,"fill: "+i.color,this.element)};Wi.updateButtons=function(e){var r=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(t){var a=r.createGroup();t.forEach(function(n){var i=n.name;if(!i)throw new Error("must provide button 'name' in button config");if(r.buttonsNames.indexOf(i)!==-1)throw new Error("button name '"+i+"' is taken");r.buttonsNames.push(i);var l=r.createButton(n);r.buttonElements.push(l),a.appendChild(l)}),r.element.appendChild(a)})};Wi.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var r=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=r.bgcolor,e};Wi.createButton=function(e){var r=this,t=document.createElement("button");t.setAttribute("type","button"),t.setAttribute("rel","tooltip"),t.className="modebar-btn";var a=e.title;a===void 0?a=e.name:typeof a=="function"&&(a=a(this.graphInfo)),(a||a===0)&&(t.setAttribute("data-title",a),t.setAttribute("aria-label",a)),e.attr!==void 0&&t.setAttribute("data-attr",e.attr);var n=e.val;n!==void 0&&(typeof n=="function"&&(n=n(this.graphInfo)),t.setAttribute("data-val",n));var i=e.click;if(typeof i!="function")throw new Error("must provide button 'click' function in button config");t.addEventListener("click",function(o){e.click(r.graphInfo,o),r.updateActiveButton(o.currentTarget)}),t.setAttribute("data-toggle",e.toggle||!1),e.toggle&&_3.select(t).classed("active",!0);var l=e.icon;return typeof l=="function"?t.appendChild(l()):t.appendChild(this.createIcon(l||jq.question)),t.setAttribute("data-gravity",e.gravity||"n"),t};Wi.createIcon=function(e){var r=Wte(e.height)?Number(e.height):e.ascent-e.descent,t="http://www.w3.org/2000/svg",a;if(e.path){a=document.createElementNS(t,"svg"),a.setAttribute("viewBox",[0,0,e.width,r].join(" ")),a.setAttribute("class","icon");var n=document.createElementNS(t,"path");n.setAttribute("d",e.path),e.transform?n.setAttribute("transform",e.transform):e.ascent!==void 0&&n.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),a.appendChild(n)}if(e.svg){var i=Zte.parseFromString(e.svg,"application/xml");a=i.childNodes[0]}return a.setAttribute("height","1em"),a.setAttribute("width","1em"),a};Wi.updateActiveButton=function(e){var r=this.graphInfo._fullLayout,t=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(a){var n=a.getAttribute("data-val")||!0,i=a.getAttribute("data-attr"),l=a.getAttribute("data-toggle")==="true",o=_3.select(a),s=function(c,h){var d=r.modebar,p=c.querySelector(".icon path");p&&(h||c.matches(":hover")?p.style.fill=d.activecolor:p.style.fill=d.color)};if(l){if(i===t){var u=!o.classed("active");o.classed("active",u),s(a,u)}}else{var f=i===null?i:p1.nestedProperty(r,i).get();o.classed("active",f===n),s(a,f===n)}})};Wi.hasButtons=function(e){var r=this.buttons;if(!r||e.length!==r.length)return!1;for(var t=0;t{"use strict";var Kte=Ut(),aS=wn(),w3=gr(),Qte=Hi().isUnifiedHover,jte=tS(),m1=g3(),eae=x3().DRAW_MODES,rae=Pe().extendDeep;nS.exports=function(r){var t=r._fullLayout,a=r._context,n=t._modeBar;if(!a.displayModeBar&&!a.watermark){n&&(n.destroy(),delete t._modeBar);return}if(!Array.isArray(a.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(a.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var i=a.modeBarButtons,l;Array.isArray(i)&&i.length?l=oae(i):!a.displayModeBar&&a.watermark?l=[]:l=tae(r),n?n.update(r,l):t._modeBar=jte(r,l)};function tae(e){var r=e._fullLayout,t=e._fullData,a=e._context;function n(B,V){if(typeof V=="string"){if(V.toLowerCase()===B.toLowerCase())return!0}else{var K=V.name,J=V._cat||V.name;if(K===B||J===B.toLowerCase())return!0}return!1}var i=r.modebar.add;typeof i=="string"&&(i=[i]);var l=r.modebar.remove;typeof l=="string"&&(l=[l]);var o=a.modeBarButtonsToAdd.concat(i.filter(function(B){for(var V=0;V1?(E=["toggleHover"],R=["resetViews"]):c?(D=["zoomInGeo","zoomOutGeo"],E=["hoverClosestGeo"],R=["resetGeo"]):f?(E=["hoverClosest3d"],R=["resetCameraDefault3d","resetCameraLastSave3d"]):m?(D=["zoomInMapbox","zoomOutMapbox"],E=["toggleHover"],R=["resetViewMapbox"]):y?(D=["zoomInMap","zoomOutMap"],E=["toggleHover"],R=["resetViewMap"]):h?E=["hoverClosestPie"]:T?(E=["hoverClosestCartesian","hoverCompareCartesian"],R=["resetViewSankey"]):E=["toggleHover"],u&&E.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(iae(t)||M)&&(E=[]),u&&!x&&(D=["zoomIn2d","zoomOut2d","autoScale2d"],R[0]!=="resetViews"&&(R=["resetScale2d"])),f?N=["zoom3d","pan3d","orbitRotation","tableRotation"]:u&&!x||p?N=["zoom2d","pan2d"]:m||y||c?N=["pan2d"]:b&&(N=["zoom2d"]),nae(t)&&N.push("select2d","lasso2d");var I=[],H=function(B){I.indexOf(B)===-1&&E.indexOf(B)!==-1&&I.push(B)};if(Array.isArray(o)){for(var G=[],W=0;W{"use strict";lS.exports={moduleType:"component",name:"modebar",layoutAttributes:b3(),supplyLayoutDefaults:Qq(),manage:iS()}});var M3=O((U2e,oS)=>{"use strict";var sae=Ea().FROM_BL;oS.exports=function(r,t,a){a===void 0&&(a=sae[r.constraintoward||"center"]);var n=[r.r2l(r.range[0]),r.r2l(r.range[1])],i=n[0]+(n[1]-n[0])*a;r.range=r._input.range=[r.l2r(i+(n[0]-i)*t),r.l2r(i+(n[1]-i)*t)],r.setScale()}});var gs=O(sv=>{"use strict";var ys=Pe(),A3=Xc(),xi=Ut().id2name,uae=_n(),sS=M3(),fae=_d(),cae=wt().ALMOST_EQUAL,vae=Ea().FROM_BL;sv.handleDefaults=function(e,r,t){var a=t.axIds,n=t.axHasImage,i=r._axisConstraintGroups=[],l=r._axisMatchGroups=[],o,s,u,f,c,h,d,p;for(o=0;oi?t.substr(i):a.substr(n))+l}function dae(e,r){for(var t=r._size,a=t.h/t.w,n={},i=Object.keys(e),l=0;lcae*p&&!_)){for(i=0;iN&&KE&&(E=K);var re=(E-D)/(2*R);c/=re,D=s.l2r(D),E=s.l2r(E),s.range=s._input.range=k{"use strict";var g1=kr(),Ua=gr(),qn=Rt(),Wn=Pe(),S3=va(),C3=$d(),uv=xr(),sf=Yr(),vS=Uc(),yS=T3(),fv=Zr(),ml=Ea(),gS=gs(),pae=gS.enforce,mae=gS.clean,hS=Xc().doAutoRange,xS="start",yae="middle",bS="end",gae=Ma().zindexSeparator;oa.layoutStyles=function(e){return Wn.syncOrAsync([qn.doAutoMargin,bae],e)};function xae(e,r,t){for(var a=0;a=e[1]||n[1]<=e[0])&&i[0]r[0])return!0}return!1}function bae(e){var r=e._fullLayout,t=r._size,a=t.p,n=fv.list(e,"",!0),i,l,o,s,u,f;if(r._paperdiv.style({width:e._context.responsive&&r.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":r.width+"px",height:e._context.responsive&&r.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":r.height+"px"}).selectAll(".main-svg").call(sf.setSize,r.width,r.height),e._context.setBackground(e,r.paper_bgcolor),oa.drawMainTitle(e),yS.manage(e),!r._has("cartesian"))return qn.previousPromises(e);function c(xe,U,Q){var X=xe._lw/2;if(xe._id.charAt(0)==="x"){if(U){if(Q==="top")return U._offset-a-X}else return t.t+t.h*(1-(xe.position||0))+X%1;return U._offset+U._length+a+X}if(U){if(Q==="right")return U._offset+U._length+a+X}else return t.l+t.w*(xe.position||0)+X%1;return U._offset-a-X}for(i=0;i0){Mae(e,i,u,s),o.attr({x:l,y:i,"text-anchor":a,dy:mS(r.yanchor)}).call(S3.positionText,l,i);var f=(r.text.match(S3.BR_TAG_ALL)||[]).length;if(f){var c=ml.LINE_SPACING*f+ml.MID_SHIFT;r.y===0&&(c=-c),o.selectAll(".line").each(function(){var y=+this.getAttribute("dy").slice(0,-2)-c+"em";this.setAttribute("dy",y)})}var h=g1.select(e).selectAll(".gtitle-subtitle");if(h.node()){var d=o.node().getBBox(),p=d.y+d.height,m=p+vS.SUBTITLE_PADDING_EM*r.subtitle.font.size;h.attr({x:l,y:m,"text-anchor":a,dy:mS(r.yanchor)}).call(S3.positionText,l,m)}}}};function _ae(e,r,t,a,n){var i=r.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,l=Wn.isTopAnchor(r)?a:a-n,o=t==="b"?i-l:l;return Wn.isTopAnchor(r)&&t==="t"||Wn.isBottomAnchor(r)&&t==="b"?!1:o.5?"t":"b",l=e._fullLayout.margin[i],o=0;return r.yref==="paper"?o=t+r.pad.t+r.pad.b:r.yref==="container"&&(o=wae(i,a,n,e._fullLayout.height,t)+r.pad.t+r.pad.b),o>l?o:0}function Mae(e,r,t,a){var n="title.automargin",i=e._fullLayout.title,l=i.y>.5?"t":"b",o={x:i.x,y:i.y,t:0,b:0},s={};i.yref==="paper"&&_ae(e,i,l,r,a)?o[l]=t:i.yref==="container"&&(s[l]=t,e._fullLayout._reservedMargin[n]=s),qn.allowAutoMargin(e,n),qn.autoMargin(e,n,o)}function Aae(e,r){var t=e.title,a=e._size,n=0;switch(r===xS?n=t.pad.l:r===bS&&(n=-t.pad.r),t.xref){case"paper":return a.l+a.w*t.x+n;case"container":default:return e.width*t.x+n}}function kae(e,r){var t=e.title,a=e._size,n=0;if(r==="0em"||!r?n=-t.pad.b:r===ml.CAP_SHIFT+"em"&&(n=t.pad.t),t.y==="auto")return a.t/2;switch(t.yref){case"paper":return a.t+a.h-a.h*t.y+n;case"container":default:return e.height-e.height*t.y+n}}function mS(e){return e==="top"?ml.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":ml.MID_SHIFT+"em"}function qae(e){var r=e.title,t=yae;return Wn.isRightAnchor(r)?t=bS:Wn.isLeftAnchor(r)&&(t=xS),t}function Sae(e){var r=e.title,t="0em";return Wn.isTopAnchor(r)?t=ml.CAP_SHIFT+"em":Wn.isMiddleAnchor(r)&&(t=ml.MID_SHIFT+"em"),t}oa.doTraceStyle=function(e){var r=e.calcdata,t=[],a;for(a=0;a{"use strict";var Cae=Ql().readPaths,Lae=s1(),_S=Gl().clearOutlineControllers,L3=xr(),wS=Yr(),Dae=lt().arrayEditor,TS=eo(),Eae=TS.getPathString;AS.exports={draw:b1,drawOne:MS,activateLastSelection:zae};function b1(e){var r=e._fullLayout;_S(e),r._selectionLayer.selectAll("path").remove();for(var t in r._plots){var a=r._plots[t].selectionLayer;a&&a.selectAll("path").remove()}for(var n=0;n=0;y--){var b=l.append("path").attr(s).style("opacity",y?.1:u).call(L3.stroke,c).call(L3.fill,f).call(wS.dashLine,y?"solid":d,y?4+h:h);if(Pae(b,e,a),p){var _=Dae(e.layout,"selections",a);b.style({cursor:"move"});var T={element:b.node(),plotinfo:n,gd:e,editHelpers:_,isActiveSelection:!0},x=Cae(o,e);Lae(x,b,T)}else b.style("pointer-events",y?"all":"none");m[y]=b}var M=m[0],k=m[1];k.node().addEventListener("click",function(){return Rae(e,M)})}}function Pae(e,r,t){var a=t.xref+t.yref;wS.setClipUrl(e,"clip"+r._fullLayout._uid+a,r)}function Rae(e,r){if(_1(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeSelectionIndex){D3(e);return}e._fullLayout._activeSelectionIndex=a,e._fullLayout._deactivateSelection=D3,b1(e)}}}function zae(e){if(_1(e)){var r=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=r,e._fullLayout._deactivateSelection=D3,b1(e)}}function D3(e){if(_1(e)){var r=e._fullLayout._activeSelectionIndex;r>=0&&(_S(e),delete e._fullLayout._activeSelectionIndex,b1(e))}}});var qS=O((J2e,kS)=>{function Nae(){var e,r=0,t=!1;function a(n,i){return e.list.push({type:n,data:i?JSON.parse(JSON.stringify(i)):void 0}),e}return e={list:[],segmentId:function(){return r++},checkIntersection:function(n,i){return a("check",{seg1:n,seg2:i})},segmentChop:function(n,i){return a("div_seg",{seg:n,pt:i}),a("chop",{seg:n,pt:i})},statusRemove:function(n){return a("pop_seg",{seg:n})},segmentUpdate:function(n){return a("seg_update",{seg:n})},segmentNew:function(n,i){return a("new_seg",{seg:n,primary:i})},segmentRemove:function(n){return a("rem_seg",{seg:n})},tempStatus:function(n,i,l){return a("temp_status",{seg:n,above:i,below:l})},rewind:function(n){return a("rewind",{seg:n})},status:function(n,i,l){return a("status",{seg:n,above:i,below:l})},vert:function(n){return n===t?e:(t=n,a("vert",{x:n}))},log:function(n){return typeof n!="string"&&(n=JSON.stringify(n,!1," ")),a("log",{txt:n})},reset:function(){return a("reset")},selected:function(n){return a("selected",{segs:n})},chainStart:function(n){return a("chain_start",{seg:n})},chainRemoveHead:function(n,i){return a("chain_rem_head",{index:n,pt:i})},chainRemoveTail:function(n,i){return a("chain_rem_tail",{index:n,pt:i})},chainNew:function(n,i){return a("chain_new",{pt1:n,pt2:i})},chainMatch:function(n){return a("chain_match",{index:n})},chainClose:function(n){return a("chain_close",{index:n})},chainAddHead:function(n,i){return a("chain_add_head",{index:n,pt:i})},chainAddTail:function(n,i){return a("chain_add_tail",{index:n,pt:i})},chainConnect:function(n,i){return a("chain_con",{index1:n,index2:i})},chainReverse:function(n){return a("chain_rev",{index:n})},chainJoin:function(n,i){return a("chain_join",{index1:n,index2:i})},done:function(){return a("done")}},e}kS.exports=Nae});var CS=O(($2e,SS)=>{function Fae(e){typeof e!="number"&&(e=1e-10);var r={epsilon:function(t){return typeof t=="number"&&(e=t),e},pointAboveOrOnLine:function(t,a,n){var i=a[0],l=a[1],o=n[0],s=n[1],u=t[0],f=t[1];return(o-i)*(f-l)-(s-l)*(u-i)>=-e},pointBetween:function(t,a,n){var i=t[1]-a[1],l=n[0]-a[0],o=t[0]-a[0],s=n[1]-a[1],u=o*l+i*s;if(u-e)},pointsSameX:function(t,a){return Math.abs(t[0]-a[0])e!=o-i>e&&(l-f)*(i-c)/(o-c)+f-n>e&&(s=!s),l=f,o=c}return s}};return r}SS.exports=Fae});var DS=O((K2e,LS)=>{var Iae={create:function(){var e={root:{root:!0,next:null},exists:function(r){return!(r===null||r===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(r,t){for(var a=e.root,n=e.root.next;n!==null;){if(t(n)){r.prev=n.prev,r.next=n,n.prev.next=r,n.prev=r;return}a=n,n=n.next}a.next=r,r.prev=a,r.next=null},findTransition:function(r){for(var t=e.root,a=e.root.next;a!==null&&!r(a);)t=a,a=a.next;return{before:t===e.root?null:t,after:a,insert:function(n){return n.prev=t,n.next=a,t.next=n,a!==null&&(a.prev=n),n}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};LS.exports=Iae});var PS=O((Q2e,ES)=>{var cv=DS();function Hae(e,r,t){function a(p,m){return{id:t?t.segmentId():-1,start:p,end:m,myFill:{above:null,below:null},otherFill:null}}function n(p,m,y){return{id:t?t.segmentId():-1,start:p,end:m,myFill:{above:y.myFill.above,below:y.myFill.below},otherFill:null}}var i=cv.create();function l(p,m,y,b,_,T){var x=r.pointsCompare(m,_);return x!==0?x:r.pointsSame(y,T)?0:p!==b?p?1:-1:r.pointAboveOrOnLine(y,b?_:T,b?T:_)?1:-1}function o(p,m){i.insertBefore(p,function(y){var b=l(p.isStart,p.pt,m,y.isStart,y.pt,y.other.pt);return b<0})}function s(p,m){var y=cv.node({isStart:!0,pt:p.start,seg:p,primary:m,other:null,status:null});return o(y,p.end),y}function u(p,m,y){var b=cv.node({isStart:!1,pt:m.end,seg:m,primary:y,other:p,status:null});p.other=b,o(b,p.pt)}function f(p,m){var y=s(p,m);return u(y,p,m),y}function c(p,m){t&&t.segmentChop(p.seg,m),p.other.remove(),p.seg.end=m,p.other.pt=m,o(p.other,p.pt)}function h(p,m){var y=n(m,p.seg.end,p.seg);return c(p,m),f(y,p.primary)}function d(p,m){var y=cv.create();function b(G,W){var Y=G.seg.start,B=G.seg.end,V=W.seg.start,K=W.seg.end;return r.pointsCollinear(Y,V,K)?r.pointsCollinear(B,V,K)||r.pointAboveOrOnLine(B,V,K)?1:-1:r.pointAboveOrOnLine(Y,V,K)?1:-1}function _(G){return y.findTransition(function(W){var Y=b(G,W.ev);return Y>0})}function T(G,W){var Y=G.seg,B=W.seg,V=Y.start,K=Y.end,J=B.start,re=B.end;t&&t.checkIntersection(Y,B);var le=r.linesIntersect(V,K,J,re);if(le===!1){if(!r.pointsCollinear(V,K,J)||r.pointsSame(V,re)||r.pointsSame(K,J))return!1;var ue=r.pointsSame(V,J),ve=r.pointsSame(K,re);if(ue&&ve)return W;var j=!ue&&r.pointBetween(V,J,re),qe=!ve&&r.pointBetween(K,J,re);if(ue)return qe?h(W,K):h(G,re),W;j&&(ve||(qe?h(W,K):h(G,re)),h(W,V))}else le.alongA===0&&(le.alongB===-1?h(G,J):le.alongB===0?h(G,le.pt):le.alongB===1&&h(G,re)),le.alongB===0&&(le.alongA===-1?h(W,V):le.alongA===0?h(W,le.pt):le.alongA===1&&h(W,K));return!1}for(var x=[];!i.isEmpty();){var M=i.getHead();if(t&&t.vert(M.pt[0]),M.isStart){let G=function(){if(A){var W=T(M,A);if(W)return W}return C?T(M,C):!1};var H=G;t&&t.segmentNew(M.seg,M.primary);var k=_(M),A=k.before?k.before.ev:null,C=k.after?k.after.ev:null;t&&t.tempStatus(M.seg,A?A.seg:!1,C?C.seg:!1);var D=G();if(D){if(e){var E;M.seg.myFill.below===null?E=!0:E=M.seg.myFill.above!==M.seg.myFill.below,E&&(D.seg.myFill.above=!D.seg.myFill.above)}else D.seg.otherFill=M.seg.myFill;t&&t.segmentUpdate(D.seg),M.other.remove(),M.remove()}if(i.getHead()!==M){t&&t.rewind(M.seg);continue}if(e){var E;M.seg.myFill.below===null?E=!0:E=M.seg.myFill.above!==M.seg.myFill.below,C?M.seg.myFill.below=C.seg.myFill.above:M.seg.myFill.below=p,E?M.seg.myFill.above=!M.seg.myFill.below:M.seg.myFill.above=M.seg.myFill.below}else if(M.seg.otherFill===null){var R;C?M.primary===C.primary?R=C.seg.otherFill.above:R=C.seg.myFill.above:R=M.primary?m:p,M.seg.otherFill={above:R,below:R}}t&&t.status(M.seg,A?A.seg:!1,C?C.seg:!1),M.other.status=k.insert(cv.node({ev:M}))}else{var N=M.status;if(N===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(y.exists(N.prev)&&y.exists(N.next)&&T(N.prev.ev,N.next.ev),t&&t.statusRemove(N.ev.seg),N.remove(),!M.primary){var I=M.seg.myFill;M.seg.myFill=M.seg.otherFill,M.seg.otherFill=I}x.push(M.seg)}i.getHead().remove()}return t&&t.done(),x}return e?{addRegion:function(p){for(var m,y=p[p.length-1],b=0;b{function Oae(e,r,t){var a=[],n=[];return e.forEach(function(i){var l=i.start,o=i.end;if(r.pointsSame(l,o)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}t&&t.chainStart(i);var s={index:0,matches_head:!1,matches_pt1:!1},u={index:0,matches_head:!1,matches_pt1:!1},f=s;function c(H,G,W){return f.index=H,f.matches_head=G,f.matches_pt1=W,f===s?(f=u,!1):(f=null,!0)}for(var h=0;h{function vv(e,r,t){var a=[];return e.forEach(function(n){var i=(n.myFill.above?8:0)+(n.myFill.below?4:0)+(n.otherFill&&n.otherFill.above?2:0)+(n.otherFill&&n.otherFill.below?1:0);r[i]!==0&&a.push({id:t?t.segmentId():-1,start:n.start,end:n.end,myFill:{above:r[i]===1,below:r[i]===2},otherFill:null})}),t&&t.selected(a),a}var Bae={union:function(e,r){return vv(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],r)},intersect:function(e,r){return vv(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],r)},difference:function(e,r){return vv(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],r)},differenceRev:function(e,r){return vv(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],r)},xor:function(e,r){return vv(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],r)}};NS.exports=Bae});var HS=O((r3e,IS)=>{var Yae={toPolygon:function(e,r){function t(i){if(i.length<=0)return e.segments({inverted:!1,regions:[]});function l(u){var f=u.slice(0,u.length-1);return e.segments({inverted:!1,regions:[f]})}for(var o=l(i[0]),s=1;s{var Vae=qS(),Gae=CS(),OS=PS(),Uae=zS(),hv=FS(),BS=HS(),Xn=!1,dv=Gae(),cn;cn={buildLog:function(e){return e===!0?Xn=Vae():e===!1&&(Xn=!1),Xn===!1?!1:Xn.list},epsilon:function(e){return dv.epsilon(e)},segments:function(e){var r=OS(!0,dv,Xn);return e.regions.forEach(r.addRegion),{segments:r.calculate(e.inverted),inverted:e.inverted}},combine:function(e,r){var t=OS(!1,dv,Xn);return{combined:t.calculate(e.segments,e.inverted,r.segments,r.inverted),inverted1:e.inverted,inverted2:r.inverted}},selectUnion:function(e){return{segments:hv.union(e.combined,Xn),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:hv.intersect(e.combined,Xn),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:hv.difference(e.combined,Xn),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:hv.differenceRev(e.combined,Xn),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:hv.xor(e.combined,Xn),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:Uae(e.segments,dv,Xn),inverted:e.inverted}},polygonFromGeoJSON:function(e){return BS.toPolygon(cn,e)},polygonToGeoJSON:function(e){return BS.fromPolygon(cn,dv,e)},union:function(e,r){return pv(e,r,cn.selectUnion)},intersect:function(e,r){return pv(e,r,cn.selectIntersect)},difference:function(e,r){return pv(e,r,cn.selectDifference)},differenceRev:function(e,r){return pv(e,r,cn.selectDifferenceRev)},xor:function(e,r){return pv(e,r,cn.selectXor)}};function pv(e,r,t){var a=cn.segments(e),n=cn.segments(r),i=cn.combine(a,n),l=t(i);return cn.polygon(l)}typeof window=="object"&&(window.PolyBool=cn);YS.exports=cn});var US=O((a3e,GS)=>{GS.exports=function(r,t,a,n){var i=r[0],l=r[1],o=!1;a===void 0&&(a=0),n===void 0&&(n=t.length);for(var s=n-a,u=0,f=s-1;ul!=p>l&&i<(d-c)*(l-h)/(p-h)+c;m&&(o=!o)}return o}});var R3=O((n3e,WS)=>{"use strict";var P3=wh().dot,w1=wt().BADNUM,T1=WS.exports={};T1.tester=function(r){var t=r.slice(),a=t[0][0],n=a,i=t[0][1],l=i,o;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),o=1;on||b===w1||bl||m&&u(p))}function c(p,m){var y=p[0],b=p[1];if(y===w1||yn||b===w1||bl)return!1;var _=t.length,T=t[0][0],x=t[0][1],M=0,k,A,C,D,E;for(k=1;k<_;k++)if(A=T,C=x,T=t[k][0],x=t[k][1],D=Math.min(A,T),!(yMath.max(A,T)||b>Math.max(C,x)))if(bo||Math.abs(P3(c,u))>n)return!0;return!1};T1.filter=function(r,t){var a=[r[0]],n=0,i=0;function l(s){r.push(s);var u=a.length,f=n;a.splice(i+1);for(var c=f+1;c1){var o=r.pop();l(o)}return{addPt:l,raw:r,filtered:a}}});var ZS=O((i3e,XS)=>{"use strict";XS.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var mC=O((l3e,pC)=>{"use strict";var JS=VS(),Wae=US(),gv=gr(),Xae=Yr().dashStyle,mv=xr(),Zae=gi(),Jae=Hi().makeEventData,Tv=ef(),$ae=Tv.freeMode,Kae=Tv.rectMode,xv=Tv.drawMode,I3=Tv.openMode,H3=Tv.selectMode,$S=eo(),KS=iv(),tC=s1(),aC=Gl().clearOutline,nC=Ql(),z3=nC.handleEllipse,Qae=nC.readPaths,jae=n1().newShapes,ene=o3(),rne=E3().activateLastSelection,A1=Pe(),tne=A1.sorterAsc,iC=R3(),yv=Rh(),Zn=Ut().getFromId,ane=$d(),nne=x1().redrawReglTraces,k1=ZS(),Xi=k1.MINSELECT,ine=iC.filter,O3=iC.tester,B3=e1(),QS=B3.p2r,lne=B3.axValue,one=B3.getTransform;function Y3(e){return e.subplot!==void 0}function sne(e,r,t,a,n){var i=!Y3(a),l=$ae(n),o=Kae(n),s=I3(n),u=xv(n),f=H3(n),c=n==="drawline",h=n==="drawcircle",d=c||h,p=a.gd,m=p._fullLayout,y=f&&m.newselection.mode==="immediate"&&i,b=m._zoomlayer,_=a.element.getBoundingClientRect(),T=a.plotinfo,x=one(T),M=r-_.left,k=t-_.top;m._calcInverseTransform(p);var A=A1.apply3DTransform(m._invTransform)(M,k);M=A[0],k=A[1];var C=m._invScaleX,D=m._invScaleY,E=M,R=k,N="M"+M+","+k,I=a.xaxes[0],H=a.yaxes[0],G=I._length,W=H._length,Y=e.altKey&&!(xv(n)&&s),B,V,K,J,re,le,ue;oC(e,p,a),l&&(B=ine([[M,k]],k1.BENDPX));var ve=b.selectAll("path.select-outline-"+T.id).data([1]),j=u?m.newshape:m.newselection;u&&(a.hasText=j.label.text||j.label.texttemplate);var qe=u&&!s?j.fillcolor:"rgba(0,0,0,0)",fe=j.line.color||(i?mv.contrast(p._fullLayout.plot_bgcolor):"#7f7f7f");ve.enter().append("path").attr("class","select-outline select-outline-"+T.id).style({opacity:u?j.opacity/2:1,"stroke-dasharray":Xae(j.line.dash,j.line.width),"stroke-width":j.line.width+"px","shape-rendering":"crispEdges"}).call(mv.stroke,fe).call(mv.fill,qe).attr("fill-rule","evenodd").classed("cursor-move",!!u).attr("transform",x).attr("d",N+"Z");var be=b.append("path").attr("class","zoombox-corners").style({fill:mv.background,stroke:mv.defaultLine,"stroke-width":1}).attr("transform",x).attr("d","M0,0Z");if(u&&a.hasText){var ce=b.select(".label-temp");ce.empty()&&(ce=b.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var xe=m._uid+k1.SELECTID,U=[],Q=q1(p,a.xaxes,a.yaxes,a.subplot);y&&!e.shiftKey&&(a._clearSubplotSelections=function(){if(i){var ge=I._id,Te=H._id;vC(p,ge,Te,Q);for(var ye=(p.layout||{}).selections||[],ze=[],Ie=!1,Ee=0;Ee=0){p._fullLayout._deactivateShape(p);return}if(!u){var ye=m.clickmode;yv.done(xe).then(function(){if(yv.clear(xe),ge===2){for(ve.remove(),re=0;re-1&&lC(Te,p,a.xaxes,a.yaxes,a.subplot,a,ve),ye==="event"&&wv(p,void 0);Zae.click(p,Te,T.id)}).catch(A1.error)}},a.doneFn=function(){be.remove(),yv.done(xe).then(function(){yv.clear(xe),!y&&J&&a.selectionDefs&&(J.subtract=Y,a.selectionDefs.push(J),a.mergedPolygons.length=0,[].push.apply(a.mergedPolygons,K)),(y||u)&&bv(a,y),a.doneFnCompleted&&a.doneFnCompleted(U),f&&wv(p,ue)}).catch(A1.error)}}function lC(e,r,t,a,n,i,l){var o=r._hoverdata,s=r._fullLayout,u=s.clickmode,f=u.indexOf("event")>-1,c=[],h,d,p,m,y,b,_,T,x,M;if(hne(o)){oC(e,r,i),h=q1(r,t,a,n);var k=dne(o,h),A=k.pointNumbers.length>0;if(A?pne(h,k):mne(h)&&(_=eC(k))){for(l&&l.remove(),M=0;M=0}function vne(e){return e._fullLayout._activeSelectionIndex>=0}function bv(e,r){var t=e.dragmode,a=e.plotinfo,n=e.gd;cne(n)&&n._fullLayout._deactivateShape(n),vne(n)&&n._fullLayout._deactivateSelection(n);var i=n._fullLayout,l=i._zoomlayer,o=xv(t),s=H3(t);if(o||s){var u=l.selectAll(".select-outline-"+a.id);if(u&&n._fullLayout._outlining){var f;o&&(f=jae(u,e)),f&&gv.call("_guiRelayout",n,{shapes:f});var c;s&&!Y3(e)&&(c=ene(u,e)),c&&(n._fullLayout._noEmitSelectedAtStart=!0,gv.call("_guiRelayout",n,{selections:c}).then(function(){r&&rne(n)})),n._fullLayout._outlining=!1}}a.selection={},a.selection.selectionDefs=e.selectionDefs=[],a.selection.mergedPolygons=e.mergedPolygons=[]}function jS(e){return e._id}function q1(e,r,t,a){if(!e.calcdata)return[];var n=[],i=r.map(jS),l=t.map(jS),o,s,u;for(u=0;u0,i=n?a[0]:t;return r.selectedpoints?r.selectedpoints.indexOf(i)>-1:!1}function pne(e,r){var t=[],a,n,i,l;for(l=0;l0&&t.push(a);if(t.length===1&&(i=t[0]===r.searchInfo,i&&(n=r.searchInfo.cd[0].trace,n.selectedpoints.length===r.pointNumbers.length))){for(l=0;l1||(r+=a.selectedpoints.length,r>1)))return!1;return r===1}function _v(e,r,t){var a;for(a=0;a-1&&r;if(!l&&r){var ge=rC(e,!0);if(ge.length){var Te=ge[0].xref,ye=ge[0].yref;if(Te&&ye){var ze=hC(ge),Ie=dC([Zn(e,Te,"x"),Zn(e,ye,"y")]);Ie(U,ze)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:X&&wv(e,U),h._reselect=!1}if(!l&&h._deselect){var Ee=h._deselect;o=Ee.xref,s=Ee.yref,xne(o,s,f)||vC(e,o,s,a),X&&(U.points.length?wv(e,U):U3(e)),h._deselect=!1}return{eventData:U,selectionTesters:t}}function gne(e){var r=e.calcdata;if(r)for(var t=0;t{"use strict";yC.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var Mv=O((s3e,gC)=>{"use strict";gC.exports={axisRefDescription:function(e,r,t){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",r,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",r,"("+t+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",r,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",r,"and the",t,"of the domain of the","second",e,"axis."].join(" ")}}});var uf=O((f3e,_C)=>{"use strict";var xC=W3(),bC=aa(),S1=Ma(),Mne=lt().templatedArray,u3e=Mv();_C.exports=Mne("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:bC({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:xC.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:xC.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",S1.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",S1.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",S1.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",S1.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:bC({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var C1=O((c3e,wC)=>{"use strict";wC.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var X3=O((v3e,TC)=>{"use strict";TC.exports=function(r){return{valType:"color",editType:"style",anim:!0}}});var bi=O((h3e,LC)=>{"use strict";var MC=di().axisHoverFormat,{hovertemplateAttrs:Ane,texttemplateAttrs:kne,templatefallbackAttrs:AC}=gn(),kC=Bc(),qne=aa(),Sne=fi().dash,Cne=fi().pattern,Lne=Yr(),Dne=C1(),L1=mt().extendFlat,Ene=X3();function qC(e){return{valType:"any",dflt:0,editType:"calc"}}function SC(e){return{valType:"any",editType:"calc"}}function CC(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}LC.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:qC("x"),yperiod:qC("y"),xperiod0:SC("x0"),yperiod0:SC("y0"),xperiodalignment:CC("x"),yperiodalignment:CC("y"),xhoverformat:MC("x"),yhoverformat:MC("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:kne(),texttemplatefallback:AC({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:Ane({},{keys:Dne.eventDataKeys}),hovertemplatefallback:AC(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:L1({},Sne,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:Ene(!0),fillgradient:L1({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:Cne,marker:L1({symbol:{valType:"enumerated",values:Lne.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:L1({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},kC("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},kC("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:qne({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var Z3=O((p3e,PC)=>{"use strict";var DC=uf(),EC=bi().line,Pne=fi().dash,D1=mt().extendFlat,Rne=ui().overrideAll,zne=lt().templatedArray,d3e=Mv();PC.exports=Rne(zne("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:D1({},DC.xref,{}),yref:D1({},DC.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:EC.color,width:D1({},EC.width,{min:1,dflt:1}),dash:D1({},Pne,{dflt:"dot"})}}),"arraydraw","from-root")});var FC=O((m3e,NC)=>{"use strict";var RC=Pe(),E1=Zr(),Nne=Bn(),Fne=Z3(),zC=eo();NC.exports=function(r,t){Nne(r,t,{name:"selections",handleItemDefaults:Ine});for(var a=t.selections,n=0;n{"use strict";IC.exports=function(r,t,a){a("newselection.mode");var n=a("newselection.line.width");n&&(a("newselection.line.color"),a("newselection.line.dash")),a("activeselection.fillcolor"),a("activeselection.opacity")}});var Av=O((g3e,YC)=>{"use strict";var Hne=gr(),OC=Pe(),BC=Ut();YC.exports=function(r){return function(a,n){var i=a[r];if(Array.isArray(i))for(var l=Hne.subplotsRegistry.cartesian,o=l.idRegex,s=n._subplots,u=s.xaxis,f=s.yaxis,c=s.cartesian,h=n._has("cartesian"),d=0;d{"use strict";var VC=E3(),kv=mC();GC.exports={moduleType:"component",name:"selections",layoutAttributes:Z3(),supplyLayoutDefaults:FC(),supplyDrawNewSelectionDefaults:HC(),includeBasePlot:Av()("selections"),draw:VC.draw,drawOne:VC.drawOne,reselect:kv.reselect,prepSelect:kv.prepSelect,clearOutline:kv.clearOutline,clearSelectionsCache:kv.clearSelectionsCache,selectOnClick:kv.selectOnClick}});var cL=O((b3e,fL)=>{"use strict";var j3=kr(),Jn=Pe(),UC=Jn.numberFormat,One=Nn(),Bne=E2(),P1=gr(),eL=Jn.strTranslate,Yne=va(),WC=xr(),to=Yr(),Vne=gi(),XC=Zr(),Gne=Kl(),Une=mi(),rL=ef(),R1=rL.selectingOrDrawing,Wne=rL.freeMode,Xne=Ea().FROM_TL,Zne=$d(),Jne=x1().redrawReglTraces,$ne=Rt(),$3=Ut().getFromId,Kne=ff().prepSelect,Qne=ff().clearOutline,jne=ff().selectOnClick,J3=M3(),ex=Ma(),ZC=ex.MINDRAG,Ka=ex.MINZOOM,JC=!0;function eie(e,r,t,a,n,i,l,o){var s=e._fullLayout._zoomlayer,u=l+o==="nsew",f=(l+o).length===1,c,h,d,p,m,y,b,_,T,x,M,k,A,C,D,E,R,N,I,H,G,W,Y;t+=r.yaxis._shift;function B(){if(c=r.xaxis,h=r.yaxis,T=c._length,x=h._length,b=c._offset,_=h._offset,d={},d[c._id]=c,p={},p[h._id]=h,l&&o)for(var Ae=r.overlays,Se=0;Se=0){Oe._fullLayout._deactivateShape(Oe);return}var Je=Oe._fullLayout.clickmode;if(Q3(Oe),Ae===2&&!f&&Ye(),u)Je.indexOf("select")>-1&&jne(Se,Oe,m,y,r.id,J),Je.indexOf("event")>-1&&Vne.click(Oe,Se,r.id);else if(Ae===1&&f){var We=l?h:c,Xe=l==="s"||o==="w"?0:1,lr=We._name+".range["+Xe+"]",tr=rie(We,Xe),Ke="left",Ne="middle";if(We.fixedrange)return;l?(Ne=l==="n"?"top":"bottom",We.side==="right"&&(Ke="right")):o==="e"&&(Ke="right"),Oe._context.showAxisRangeEntryBoxes&&j3.select(K).call(Yne.makeEditable,{gd:Oe,immediate:!0,background:Oe._fullLayout.paper_bgcolor,text:String(tr),fill:We.tickfont?We.tickfont.color:"#444",horizontalAlign:Ke,verticalAlign:Ne}).on("edit",function(ne){var oe=We.d2r(ne);oe!==void 0&&P1.call("_guiRelayout",Oe,lr,oe)})}}Une.init(J);var ue,ve,j,qe,fe,be,ce,xe,U,Q;function X(Ae,Se,Oe){var Je=K.getBoundingClientRect();ue=Se-Je.left,ve=Oe-Je.top,e._fullLayout._calcInverseTransform(e);var We=Jn.apply3DTransform(e._fullLayout._invTransform)(ue,ve);ue=We[0],ve=We[1],j={l:ue,r:ue,w:0,t:ve,b:ve,h:0},qe=e._hmpixcount?e._hmlumcount/e._hmpixcount:One(e._fullLayout.plot_bgcolor).getLuminance(),fe="M0,0H"+T+"V"+x+"H0V0",be=!1,ce="xy",Q=!1,xe=nL(s,qe,b,_,fe),U=iL(s,b,_)}function ge(Ae,Se){if(e._transitioningWithDuration)return!1;var Oe=Math.max(0,Math.min(T,W*Ae+ue)),Je=Math.max(0,Math.min(x,Y*Se+ve)),We=Math.abs(Oe-ue),Xe=Math.abs(Je-ve);j.l=Math.min(ue,Oe),j.r=Math.max(ue,Oe),j.t=Math.min(ve,Je),j.b=Math.max(ve,Je);function lr(){ce="",j.r=j.l,j.t=j.b,U.attr("d","M0,0Z")}if(M.isSubplotConstrained)We>Ka||Xe>Ka?(ce="xy",We/T>Xe/x?(Xe=We*x/T,ve>Je?j.t=ve-Xe:j.b=ve+Xe):(We=Xe*T/x,ue>Oe?j.l=ue-We:j.r=ue+We),U.attr("d",z1(j))):lr();else if(k.isSubplotConstrained)if(We>Ka||Xe>Ka){ce="xy";var tr=Math.min(j.l/T,(x-j.b)/x),Ke=Math.max(j.r/T,(x-j.t)/x);j.l=tr*T,j.r=Ke*T,j.b=(1-tr)*x,j.t=(1-Ke)*x,U.attr("d",z1(j))}else lr();else!C||Xe0){var ne;if(k.isSubplotConstrained||!A&&C.length===1){for(ne=0;ne1&&(lr.maxallowed!==void 0&&E===(lr.range[0]1&&(tr.maxallowed!==void 0&&R===(tr.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function aie(e,r,t){return e?e==="nsew"?t?"":r==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function nL(e,r,t,a,n){return e.append("path").attr("class","zoombox").style({fill:r>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",eL(t,a)).attr("d",n+"Z")}function iL(e,r,t){return e.append("path").attr("class","zoombox-corners").style({fill:WC.background,stroke:WC.defaultLine,"stroke-width":1,opacity:0}).attr("transform",eL(r,t)).attr("d","M0,0Z")}function lL(e,r,t,a,n,i){e.attr("d",a+"M"+t.l+","+t.t+"v"+t.h+"h"+t.w+"v-"+t.h+"h-"+t.w+"Z"),oL(e,r,n,i)}function oL(e,r,t,a){t||(e.transition().style("fill",a>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),r.transition().style("opacity",1).duration(200))}function Q3(e){j3.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function sL(e){JC&&e.data&&e._context.showTips&&(Jn.notifier(Jn._(e,"Double-click to zoom back out"),"long"),JC=!1)}function nie(e,r){return"M"+(e.l-.5)+","+(r-Ka-.5)+"h-3v"+(2*Ka+1)+"h3ZM"+(e.r+.5)+","+(r-Ka-.5)+"h3v"+(2*Ka+1)+"h-3Z"}function iie(e,r){return"M"+(r-Ka-.5)+","+(e.t-.5)+"v-3h"+(2*Ka+1)+"v3ZM"+(r-Ka-.5)+","+(e.b+.5)+"v3h"+(2*Ka+1)+"v-3Z"}function z1(e){var r=Math.floor(Math.min(e.b-e.t,e.r-e.l,Ka)/2);return"M"+(e.l-3.5)+","+(e.t-.5+r)+"h3v"+-r+"h"+r+"v-3h-"+(r+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+r)+"h-3v"+-r+"h"+-r+"v-3h"+(r+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-r)+"h-3v"+r+"h"+-r+"v3h"+(r+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-r)+"h3v"+r+"h"+r+"v3h-"+(r+3)+"Z"}function QC(e,r,t,a,n){for(var i=!1,l={},o={},s,u,f,c,h=(n||{}).xaHash,d=(n||{}).yaHash,p=0;p{"use strict";var lie=kr(),N1=gi(),oie=mi(),sie=Kl(),_i=cL().makeDragBox,sa=Ma().DRAGGERSIZE;F1.initInteractions=function(r){var t=r._fullLayout;if(r._context.staticPlot){lie.select(r).selectAll(".drag").remove();return}if(!(!t._has("cartesian")&&!t._has("splom"))){var a=Object.keys(t._plots||{}).sort(function(i,l){if((t._plots[i].mainplot&&!0)===(t._plots[l].mainplot&&!0)){var o=i.split("y"),s=l.split("y");return o[0]===s[0]?Number(o[1]||1)-Number(s[1]||1):Number(o[0]||1)-Number(s[0]||1)}return t._plots[i].mainplot?1:-1});a.forEach(function(i){var l=t._plots[i],o=l.xaxis,s=l.yaxis;if(!l.mainplot){var u=_i(r,l,o._offset,s._offset,o._length,s._length,"ns","ew");u.onmousemove=function(h){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===i&&r._fullLayout._plots[i]&&N1.hover(r,h,i)},N1.hover(r,h,i),r._fullLayout._lasthover=u,r._fullLayout._hoversubplot=i},u.onmouseout=function(h){r._dragging||(r._fullLayout._hoversubplot=null,oie.unhover(r,h))},r._context.showAxisDragHandles&&(_i(r,l,o._offset-sa,s._offset-sa,sa,sa,"n","w"),_i(r,l,o._offset+o._length,s._offset-sa,sa,sa,"n","e"),_i(r,l,o._offset-sa,s._offset+s._length,sa,sa,"s","w"),_i(r,l,o._offset+o._length,s._offset+s._length,sa,sa,"s","e"))}if(r._context.showAxisDragHandles){if(i===o._mainSubplot){var f=o._mainLinePosition;o.side==="top"&&(f-=sa),_i(r,l,o._offset+o._length*.1,f,o._length*.8,sa,"","ew"),_i(r,l,o._offset,f,o._length*.1,sa,"","w"),_i(r,l,o._offset+o._length*.9,f,o._length*.1,sa,"","e")}if(i===s._mainSubplot){var c=s._mainLinePosition;s.side!=="right"&&(c-=sa),_i(r,l,c,s._offset+s._length*.1,sa,s._length*.8,"ns",""),_i(r,l,c,s._offset+s._length*.9,sa,s._length*.1,"s",""),_i(r,l,c,s._offset,sa,s._length*.1,"n","")}}});var n=t._hoverlayer.node();n.onmousemove=function(i){i.target=r._fullLayout._lasthover,N1.hover(r,i,t._hoversubplot)},n.onclick=function(i){i.target=r._fullLayout._lasthover,N1.click(r,i)},n.onmousedown=function(i){r._fullLayout._lasthover.onmousedown(i)},F1.updateFx(r)}};F1.updateFx=function(e){var r=e._fullLayout,t=r.dragmode==="pan"?"move":"crosshair";sie(r._draggers,t)}});var dL=O((w3e,hL)=>{"use strict";var vL=gr();hL.exports=function(r){for(var t=vL.layoutArrayContainers,a=vL.layoutArrayRegexes,n=r.split("[")[0],i,l,o=0;o{"use strict";var uie=Pl(),tx=_h(),qv=Go(),fie=Qy().sorterAsc,ax=gr();Sv.containerArrayMatch=dL();var cie=Sv.isAddVal=function(r){return r==="add"||uie(r)},pL=Sv.isRemoveVal=function(r){return r===null||r==="remove"};Sv.applyContainerArrayChanges=function(r,t,a,n,i){var l=t.astr,o=ax.getComponentMethod(l,"supplyLayoutDefaults"),s=ax.getComponentMethod(l,"draw"),u=ax.getComponentMethod(l,"drawOne"),f=n.replot||n.recalc||o===tx||s===tx,c=r.layout,h=r._fullLayout;if(a[""]){Object.keys(a).length>1&&qv.warn("Full array edits are incompatible with other edits",l);var d=a[""][""];if(pL(d))t.set(null);else if(Array.isArray(d))t.set(d);else return qv.warn("Unrecognized full array edit value",l,d),!0;return f?!1:(o(c,h),s(r),!0)}var p=Object.keys(a).map(Number).sort(fie),m=t.get(),y=m||[],b=i(h,l).get(),_=[],T=-1,x=y.length,M,k,A,C,D,E,R,N;for(M=0;My.length-(R?0:1)){qv.warn("index out of range",l,A);continue}if(E!==void 0)D.length>1&&qv.warn("Insertion & removal are incompatible with edits to the same index.",l,A),pL(E)?_.push(A):R?(E==="add"&&(E={}),y.splice(A,0,E),b&&b.splice(A,0,{})):qv.warn("Unrecognized full object edit value",l,A,E),T===-1&&(T=A);else for(k=0;k=0;M--)y.splice(_[M],1),b&&b.splice(_[M],1);if(y.length?m||t.set(y):t.set(null),f)return!1;if(o(c,h),u!==tx){var I;if(T===-1)I=p;else{for(x=Math.max(y.length,x),I=[],M=0;M=T));M++)I.push(A);for(M=T;M{"use strict";var bL=zr(),_L=gr(),Wa=Pe(),Cv=Rt(),wL=Ut(),TL=xr(),Lv=wL.cleanId,vie=wL.getFromTrace,nx=_L.traceIs,hie=["x","y","z"];$n.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&Wa.log("Clearing previous rejected promises from queue."),e._promises=[]};$n.cleanLayout=function(e){var r,t;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var a=(Cv.subplotsRegistry.cartesian||{}).attrRegex,n=(Cv.subplotsRegistry.polar||{}).attrRegex,i=(Cv.subplotsRegistry.ternary||{}).attrRegex,l=(Cv.subplotsRegistry.gl3d||{}).attrRegex,o=Object.keys(e);for(r=0;r3?(y.x=1.02,y.xanchor="left"):y.x<-2&&(y.x=-.02,y.xanchor="right"),y.y>3?(y.y=1.02,y.yanchor="bottom"):y.y<-2&&(y.y=-.02,y.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),TL.clean(e),e.template&&e.template.layout&&$n.cleanLayout(e.template.layout),e};function cf(e,r){var t=e[r],a=r.charAt(0);t&&t!=="paper"&&(e[r]=Lv(t,a,!0))}$n.cleanData=function(e){for(var r=0;r0)return e.substr(0,r)}$n.hasParent=function(e,r){for(var t=xL(r);t;){if(t in e)return!0;t=xL(t)}return!1};$n.clearAxisTypes=function(e,r,t){for(var a=0;a{let t=(...a)=>a.every(n=>Wa.isPlainObject(n))||a.every(n=>Array.isArray(n));if([e,r].every(a=>Array.isArray(a))){if(e.length!==r.length)return!1;for(let a=0;aWa.isPlainObject(a))){if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let a in e){if(a.startsWith("_"))continue;let n=e[a],i=r[a];if(n!==i&&!(t(n,i)?ix(n,i):!1))return!1}return!0}return!1};$n.collectionsAreEqual=ix});var cx=O(Vr=>{"use strict";var B1=kr(),mie=zr(),yie=vg(),rr=Pe(),vt=rr.nestedProperty,sx=zc(),Qa=t9(),Kn=gr(),Z1=Eu(),_r=Rt(),Xa=Zr(),gie=D2(),xie=_n(),lx=Yr(),bie=xr(),_ie=rx().initInteractions,wie=jo(),Tie=ff().clearOutline,CL=Vo().dfltConfig,H1=mL(),Gt=ML(),tt=x1(),ao=ui(),Mie=Ma().AX_NAME_PATTERN,ox=0,AL=5;function Aie(e,r,t,a){var n;if(e=rr.getGraphDiv(e),sx.init(e),rr.isPlainObject(r)){var i=r;r=i.data,t=i.layout,a=i.config,n=i.frames}var l=sx.triggerHandler(e,"plotly_beforeplot",[r,t,a]);if(l===!1)return Promise.reject();!r&&!t&&!rr.isPlotDiv(e)&&rr.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function o(){if(n)return Vr.addFrames(e,n)}DL(e,a),t||(t={}),B1.select(e).classed("js-plotly-plot",!0),lx.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var s=(e.data||[]).length===0&&Array.isArray(r);Array.isArray(r)&&(Gt.cleanData(r),s?e.data=r:e.data.push.apply(e.data,r),e.empty=!1),(!e.layout||s)&&(e.layout=Gt.cleanLayout(t)),_r.supplyDefaults(e);var u=e._fullLayout,f=u._has("cartesian");u._replotting=!0,(s||u._shouldCreateBgLayer)&&(Zie(e),u._shouldCreateBgLayer&&delete u._shouldCreateBgLayer),lx.initGradients(e),lx.initPatterns(e),s&&Xa.saveShowSpikeInitial(e);var c=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;c&&_r.doCalcdata(e);for(var h=0;h=e.data.length||n<-e.data.length)throw new Error(t+" must be valid indices for gd.data.");if(r.indexOf(n,a+1)>-1||n>=0&&r.indexOf(-e.data.length+n)>-1||n<0&&r.indexOf(e.data.length+n)>-1)throw new Error("each index in "+t+" must be unique.")}}function EL(e,r,t){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(r)||(r=[r]),V1(e,r,"currentIndices"),typeof t!="undefined"&&!Array.isArray(t)&&(t=[t]),typeof t!="undefined"&&V1(e,t,"newIndices"),typeof t!="undefined"&&r.length!==t.length)throw new Error("current and new indices must be of equal length.")}function Lie(e,r,t){var a,n;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("traces must be defined.");for(Array.isArray(r)||(r=[r]),a=0;a=0&&f=0&&f0&&typeof C.parts[R]!="string";)R--;var N=C.parts[R],I=C.parts[R-1]+"."+N,H=C.parts.slice(0,R).join("."),G=vt(e.layout,H).get(),W=vt(a,H).get(),Y=C.get();if(D!==void 0){b[A]=D,_[A]=N==="reverse"?D:yl(Y);var B=Z1.getLayoutValObject(a,C.parts);if(B&&B.impliedEdits&&D!==null)for(var V in B.impliedEdits)T(rr.relativeAttr(A,V),B.impliedEdits[V]);if(["width","height"].indexOf(A)!==-1)if(D){T("autosize",null);var K=A==="height"?"width":"height";T(K,a[K])}else a[A]=e._initialAutoSize[A];else if(A==="autosize")T("width",D?null:a.width),T("height",D?null:a.height);else if(I.match(BL))k(I),vt(a,H+"._inputRange").set(null);else if(I.match(YL)){k(I),vt(a,H+"._inputRange").set(null);var J=vt(a,H).get();J._inputDomain&&(J._input.domain=J._inputDomain.slice())}else I.match(Rie)&&vt(a,H+"._inputDomain").set(null);if(N==="type"){M=G;var re=W.type==="linear"&&D==="log",le=W.type==="log"&&D==="linear";if(re||le){if(!M||!M.range)T(H+".autorange",!0);else if(W.autorange)re&&(M.range=M.range[1]>M.range[0]?[1,2]:[2,1]);else{var ue=M.range[0],ve=M.range[1];re?(ue<=0&&ve<=0&&T(H+".autorange",!0),ue<=0?ue=ve/1e6:ve<=0&&(ve=ue/1e6),T(H+".range[0]",Math.log(ue)/Math.LN10),T(H+".range[1]",Math.log(ve)/Math.LN10)):(T(H+".range[0]",Math.pow(10,ue)),T(H+".range[1]",Math.pow(10,ve)))}Array.isArray(a._subplots.polar)&&a._subplots.polar.length&&a[C.parts[0]]&&C.parts[1]==="radialaxis"&&delete a[C.parts[0]]._subplot.viewInitial["radialaxis.range"],Kn.getComponentMethod("annotations","convertCoords")(e,W,D,T),Kn.getComponentMethod("images","convertCoords")(e,W,D,T)}else T(H+".autorange",!0),T(H+".range",null);vt(a,H+"._inputRange").set(null)}else if(N.match(Mie)){var j=vt(a,A).get(),qe=(D||{}).type;(!qe||qe==="-")&&(qe="linear"),Kn.getComponentMethod("annotations","convertCoords")(e,j,qe,T),Kn.getComponentMethod("images","convertCoords")(e,j,qe,T)}var fe=H1.containerArrayMatch(A);if(fe){f=fe.array,c=fe.index;var be=fe.property,ce=B||{editType:"calc"};c!==""&&be===""&&(H1.isAddVal(D)?_[A]=null:H1.isRemoveVal(D)?_[A]=(vt(t,f).get()||[])[c]:rr.warn("unrecognized full object value",r)),ao.update(y,ce),u[f]||(u[f]={});var xe=u[f][c];xe||(xe=u[f][c]={}),xe[be]=D,delete r[A]}else N==="reverse"?(G.range?G.range.reverse():(T(H+".autorange",!0),G.range=[1,0]),W.autorange?y.calc=!0:y.plot=!0):(A==="dragmode"&&(D===!1&&Y!==!1||D!==!1&&Y===!1)||a._has("scatter-like")&&a._has("regl")&&A==="dragmode"&&(D==="lasso"||D==="select")&&!(Y==="lasso"||Y==="select")?y.plot=!0:B?ao.update(y,B):y.calc=!0,C.set(D))}}for(f in u){var U=H1.applyContainerArrayChanges(e,i(t,f),u[f],y,i);U||(y.plot=!0)}for(var Q in x){M=Xa.getFromId(e,Q);var X=M&&M._constraintGroup;if(X){y.calc=!0;for(var ge in X)x[ge]||(Xa.getFromId(e,ge)._constraintShrinkable=!0)}}(GL(e)||r.height||r.width)&&(y.plot=!0);var Te=a.shapes;for(c=0;c1;)if(a.pop(),t=vt(r,a.join(".")+".uirevision").get(),t!==void 0)return t;return r.uirevision}function Fie(e,r){for(var t=0;t[H,e._ev.listeners(H)]);i=Vr.newPlot(e,r,t,a).then(()=>{for(let[H,G]of I)G.forEach(W=>e.on(H,W));return Vr.react(e,r,t,a)})}else{e.data=r||[],Gt.cleanData(e.data),e.layout=t||{},Gt.cleanLayout(e.layout),Hie(e.data,e.layout,o,s),_r.supplyDefaults(e,{skipUpdateCalc:!0});var c=e._fullData,h=e._fullLayout,d=h.datarevision===void 0,p=h.transition,m=Yie(e,s,h,d,p),y=m.newDataRevision,b=Bie(e,o,c,d,p,y);if(GL(e)&&(m.layoutReplot=!0),b.calc||m.calc){e.calcdata=void 0;for(var _=Object.getOwnPropertyNames(h),T=0;T<_.length;T++){var x=_[T],M=x.substring(0,5);if(M==="xaxis"||M==="yaxis"){var k=h[x]._emptyCategories;k&&k()}}}else _r.supplyDefaultsUpdateCalc(e.calcdata,c);var A=[];if(n&&(e._transitionData={},_r.createTransitionData(e),A.push(l)),h.transition&&(b.anim||m.anim))m.ticks&&A.push(tt.doTicksRelayout),_r.doCalcdata(e),tt.doAutoRangeAndConstraints(e),A.push(function(){return _r.transitionFromReact(e,b,m,s)});else if(b.fullReplot||m.layoutReplot)e._fullLayout._skipDefaults=!0,A.push(Vr._doPlot);else{for(var C in m.arrays){var D=m.arrays[C];if(D.length){var E=Kn.getComponentMethod(C,"drawOne");if(E!==rr.noop)for(var R=0;R(f||e.emit("plotly_react",{config:a,data:r,layout:t}),e))}function Bie(e,r,t,a,n,i){var l=r.length===t.length;if(!n&&!l)return{fullReplot:!0,calc:!0};var o=ao.traceFlags();o.arrays={},o.nChanges=0,o.nChangesAnim=0;var s,u;function f(d){var p=Z1.getTraceValObject(u,d);return!u._module.animatable&&p.anim&&(p.anim=!1),p}var c={getValObject:f,flags:o,immutable:a,transition:n,newDataRevision:i,gd:e},h={};for(s=0;s=n.length?n[0]:n[u]:n}function o(u){return Array.isArray(i)?u>=i.length?i[0]:i[u]:i}function s(u,f){var c=0;return function(){if(u&&++c===f)return u()}}return new Promise(function(u,f){function c(){if(a._frameQueue.length!==0){for(;a._frameQueue.length;){var N=a._frameQueue.pop();N.onInterrupt&&N.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function h(N){if(N.length!==0){for(var I=0;Ia._timeToNext&&p()};N()}var y=0;function b(N){return Array.isArray(n)?y>=n.length?N.transitionOpts=n[y]:N.transitionOpts=n[0]:N.transitionOpts=n,y++,N}var _,T,x=[],M=r==null,k=Array.isArray(r),A=!M&&!k&&rr.isPlainObject(r);if(A)x.push({type:"object",data:b(rr.extendFlat({},r))});else if(M||["string","number"].indexOf(typeof r)!==-1)for(_=0;_0&&EE)&&R.push(T);x=R}}x.length>0?h(x):(e.emit("plotly_animated"),u())})}function Gie(e,r,t){if(e=rr.getGraphDiv(e),r==null)return Promise.resolve();if(!rr.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var a,n,i,l,o=e._transitionData._frames,s=e._transitionData._frameHash;if(!Array.isArray(r))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+r);var u=o.length+r.length*2,f=[],c={};for(a=r.length-1;a>=0;a--)if(rr.isPlainObject(r[a])){var h=r[a].name,d=(s[h]||c[h]||{}).name,p=r[a].name,m=s[d]||c[d];d&&p&&typeof p=="number"&&m&&oxC.index?-1:A.index=0;a--){if(n=f[a].frame,typeof n.name=="number"&&rr.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!n.name)for(;s[n.name="frame "+e._transitionData._counter++];);if(s[n.name]){for(i=0;i=0;t--)a=r[t],i.push({type:"delete",index:a}),l.unshift({type:"insert",index:a,value:n[a]});var o=_r.modifyFrames,s=_r.modifyFrames,u=[e,l],f=[e,i];return Qa&&Qa.add(e,o,u,s,f),_r.modifyFrames(e,i)}function Wie(e){e=rr.getGraphDiv(e);var r=e._fullLayout||{},t=e._fullData||[];return _r.cleanPlot([],{},t,r),_r.purge(e),sx.purge(e),r._container&&r._container.remove(),delete e._context,e}function Xie(e){var r=e._fullLayout,t=e.getBoundingClientRect();if(!rr.equalDomRects(t,r._lastBBox)){var a=r._invTransform=rr.inverseTransformMatrix(rr.getFullTransformMatrix(e));r._invScaleX=Math.sqrt(a[0][0]*a[0][0]+a[0][1]*a[0][1]+a[0][2]*a[0][2]),r._invScaleY=Math.sqrt(a[1][0]*a[1][0]+a[1][1]*a[1][1]+a[1][2]*a[1][2]),r._lastBBox=t}}function Zie(e){var r=B1.select(e),t=e._fullLayout;if(t._calcInverseTransform=Xie,t._calcInverseTransform(e),t._container=r.selectAll(".plot-container").data([0]),t._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),t._paperdiv=t._container.selectAll(".svg-container").data([0]),t._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),t._glcontainer=t._paperdiv.selectAll(".gl-container").data([{}]),t._glcontainer.enter().append("div").classed("gl-container",!0),t._paperdiv.selectAll(".main-svg").remove(),t._paperdiv.select(".modebar-container").remove(),t._paper=t._paperdiv.insert("svg",":first-child").classed("main-svg",!0),t._toppaper=t._paperdiv.append("svg").classed("main-svg",!0),t._modebardiv=t._paperdiv.append("div"),delete t._modeBar,t._hoverpaper=t._paperdiv.append("svg").classed("main-svg",!0),!t._uid){var a={};B1.selectAll("defs").each(function(){this.id&&(a[this.id.split("-")[1]]=1)}),t._uid=rr.randstr(a)}t._paperdiv.selectAll(".main-svg").attr(wie.svgAttrs),t._defs=t._paper.append("defs").attr("id","defs-"+t._uid),t._clips=t._defs.append("g").classed("clips",!0),t._topdefs=t._toppaper.append("defs").attr("id","topdefs-"+t._uid),t._topclips=t._topdefs.append("g").classed("clips",!0),t._bgLayer=t._paper.append("g").classed("bglayer",!0),t._draggers=t._paper.append("g").classed("draglayer",!0);var n=t._paper.append("g").classed("layer-below",!0);t._imageLowerLayer=n.append("g").classed("imagelayer",!0),t._shapeLowerLayer=n.append("g").classed("shapelayer",!0),t._cartesianlayer=t._paper.append("g").classed("cartesianlayer",!0),t._polarlayer=t._paper.append("g").classed("polarlayer",!0),t._smithlayer=t._paper.append("g").classed("smithlayer",!0),t._ternarylayer=t._paper.append("g").classed("ternarylayer",!0),t._geolayer=t._paper.append("g").classed("geolayer",!0),t._funnelarealayer=t._paper.append("g").classed("funnelarealayer",!0),t._pielayer=t._paper.append("g").classed("pielayer",!0),t._iciclelayer=t._paper.append("g").classed("iciclelayer",!0),t._treemaplayer=t._paper.append("g").classed("treemaplayer",!0),t._sunburstlayer=t._paper.append("g").classed("sunburstlayer",!0),t._indicatorlayer=t._toppaper.append("g").classed("indicatorlayer",!0),t._glimages=t._paper.append("g").classed("glimages",!0);var i=t._toppaper.append("g").classed("layer-above",!0);t._imageUpperLayer=i.append("g").classed("imagelayer",!0),t._shapeUpperLayer=i.append("g").classed("shapelayer",!0),t._selectionLayer=t._toppaper.append("g").classed("selectionlayer",!0),t._infolayer=t._toppaper.append("g").classed("infolayer",!0),t._menulayer=t._toppaper.append("g").classed("menulayer",!0),t._zoomlayer=t._toppaper.append("g").classed("zoomlayer",!0),t._hoverlayer=t._hoverpaper.append("g").classed("hoverlayer",!0),t._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}Vr.animate=Vie;Vr.addFrames=Gie;Vr.deleteFrames=Uie;Vr.addTraces=FL;Vr.deleteTraces=IL;Vr.extendTraces=zL;Vr.moveTraces=ux;Vr.prependTraces=NL;Vr.newPlot=Cie;Vr._doPlot=Aie;Vr.purge=Wie;Vr.react=Oie;Vr.redraw=Sie;Vr.relayout=Dv;Vr.restyle=G1;Vr.setPlotConfig=kie;Vr.update=W1;Vr._guiRelayout=fx(Dv);Vr._guiRestyle=fx(G1);Vr._guiUpdate=fx(W1);Vr._storeDirectGUIEdit=Pie});var xs=O(Zi=>{"use strict";var Jie=gr();Zi.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Zi.getRedrawFunc=function(e){return function(){Jie.getComponentMethod("colorbar","draw")(e)}};Zi.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Zi.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var UL=window.URL||window.webkitURL;Zi.createObjectURL=function(e){return UL.createObjectURL(e)};Zi.revokeObjectURL=function(e){return UL.revokeObjectURL(e)};Zi.createBlob=function(e,r){if(r==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(r==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var t=$ie(window.atob(e));return new window.Blob([t],{type:"image/"+r})};Zi.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function $ie(e){for(var r=e.length,t=new ArrayBuffer(r),a=new Uint8Array(t),n=0;n{"use strict";var hx=kr(),q3e=Pe(),Kie=Yr(),Qie=xr(),S3e=jo(),vx=/"/g,Pv="TOBESTRIPPED",jie=new RegExp('("'+Pv+")|("+Pv+'")',"g");function ele(e){var r=hx.select("body").append("div").style({display:"none"}).html(""),t=e.replace(/(&[^;]*;)/gi,function(a){return a==="<"?"<":a==="&rt;"?">":a.indexOf("<")!==-1||a.indexOf(">")!==-1?"":r.html(a).text()});return r.remove(),t}function rle(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}WL.exports=function(r,t,a){var n=r._fullLayout,i=n._paper,l=n._toppaper,o=n.width,s=n.height,u;i.insert("rect",":first-child").call(Kie.setRect,0,0,o,s).call(Qie.fill,n.paper_bgcolor);var f=n._basePlotModules||[];for(u=0;u{"use strict";var tle=Pe(),ale=Bh().EventEmitter,Rv=xs();function nle(e){var r=e.emitter||new ale,t=new Promise(function(a,n){var i=window.Image,l=e.svg,o=e.format||"png",s=e.canvas,u=e.scale||1,f=e.width||300,c=e.height||150,h=u*f,d=u*c,p=s.getContext("2d",{willReadFrequently:!0}),m=new i,y,b;o==="svg"||tle.isSafari()?b=Rv.encodeSVG(l):(y=Rv.createBlob(l,"svg"),b=Rv.createObjectURL(y)),s.width=h,s.height=d,m.onload=function(){var _;switch(y=null,Rv.revokeObjectURL(b),o!=="svg"&&p.drawImage(m,0,0,h,d),o){case"jpeg":_=s.toDataURL("image/jpeg");break;case"png":_=s.toDataURL("image/png");break;case"webp":_=s.toDataURL("image/webp");break;case"svg":_=b;break;default:var T="Image format is not jpeg, png, svg or webp.";if(n(new Error(T)),!e.promise)return r.emit("error",T)}a(_),e.promise||r.emit("success",_)},m.onerror=function(_){if(y=null,Rv.revokeObjectURL(b),n(_),!e.promise)return r.emit("error",_)},m.src=b});return e.promise?t:r}XL.exports=nle});var px=O((D3e,$L)=>{"use strict";var ZL=zr(),JL=cx(),ile=Rt(),Ji=Pe(),zv=xs(),lle=$1(),ole=K1(),sle=lh().version,dx={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function ule(e,r){r=r||{};var t,a,n,i;Ji.isPlainObject(e)?(t=e.data||[],a=e.layout||{},n=e.config||{},i={}):(e=Ji.getGraphDiv(e),t=Ji.extendDeep([],e.data),a=Ji.extendDeep({},e.layout),n=e._context,i=e._fullLayout||{});function l(k){return!(k in r)||Ji.validate(r[k],dx[k])}if(!l("width")&&r.width!==null||!l("height")&&r.height!==null)throw new Error("Height and width should be pixel values.");if(!l("format"))throw new Error("Export format is not "+Ji.join2(dx.format.values,", "," or ")+".");var o={};function s(k,A){return Ji.coerce(r,o,dx,k,A)}var u=s("format"),f=s("width"),c=s("height"),h=s("scale"),d=s("setBackground"),p=s("imageDataOnly"),m=document.createElement("div");m.style.position="absolute",m.style.left="-5000px",document.body.appendChild(m);var y=Ji.extendFlat({},a);f?y.width=f:r.width===null&&ZL(i.width)&&(y.width=i.width),c?y.height=c:r.height===null&&ZL(i.height)&&(y.height=i.height);var b=Ji.extendFlat({},n,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),_=zv.getRedrawFunc(m);function T(){return new Promise(function(k){setTimeout(k,zv.getDelay(m._fullLayout))})}function x(){return new Promise(function(k,A){var C=lle(m,u,h),D=m._fullLayout.width,E=m._fullLayout.height;function R(){JL.purge(m),document.body.removeChild(m)}if(u==="full-json"){var N=ile.graphJson(m,!1,"keepdata","object",!0,!0);return N.version=sle,N=JSON.stringify(N),R(),k(p?N:zv.encodeJSON(N))}if(R(),u==="svg")return k(p?C:zv.encodeSVG(C));var I=document.createElement("canvas");I.id=Ji.randstr(),ole({format:u,width:D,height:E,scale:h,canvas:I,svg:C,promise:!0}).then(k).catch(A)})}function M(k){return p?k.replace(zv.IMAGE_URL_PREFIX,""):k}return new Promise(function(k,A){JL.newPlot(m,t,y,b).then(_).then(T).then(x).then(function(C){k(M(C))}).catch(function(C){A(C)})})}$L.exports=ule});var jL=O((E3e,QL)=>{"use strict";var Qn=Pe(),fle=Rt(),cle=Eu(),vle=Vo().dfltConfig,wi=Qn.isPlainObject,_s=Array.isArray,mx=Qn.isArrayOrTypedArray;QL.exports=function(r,t){r===void 0&&(r=[]),t===void 0&&(t={});var a=cle.get(),n=[],i={_context:Qn.extendFlat({},vle)},l,o;_s(r)?(i.data=Qn.extendDeep([],r),l=r):(i.data=[],l=[],n.push(ua("array","data"))),wi(t)?(i.layout=Qn.extendDeep({},t),o=t):(i.layout={},o={},arguments.length>1&&n.push(ua("object","layout"))),fle.supplyDefaults(i);for(var s=i._fullData,u=l.length,f=0;fc.length&&a.push(ua("unused",n,u.concat(c.length)));var b=c.length,_=Array.isArray(y);_&&(b=Math.min(b,y.length));var T,x,M,k,A;if(h.dimensions===2)for(x=0;xc[x].length&&a.push(ua("unused",n,u.concat(x,c[x].length)));var C=c[x].length;for(T=0;T<(_?Math.min(C,y[x].length):C);T++)M=_?y[x][T]:y,k=f[x][T],A=c[x][T],Qn.validate(k,M)?A!==k&&A!==+k&&a.push(ua("dynamic",n,u.concat(x,T),k,A)):a.push(ua("value",n,u.concat(x,T),k))}else a.push(ua("array",n,u.concat(x),f[x]));else for(x=0;x{"use strict";var xle=Pe(),j1=xs();function ble(e,r,t){var a=document.createElement("a"),n="download"in a,i=new Promise(function(l,o){var s,u;if(n)return s=j1.createBlob(e,t),u=j1.createObjectURL(s),a.href=u,a.download=r,document.body.appendChild(a),a.click(),document.body.removeChild(a),j1.revokeObjectURL(u),s=null,l(r);if(xle.isSafari()){var f=t==="svg"?",":";base64,";return j1.octetStream(f+encodeURIComponent(e)),l(r)}o(new Error("download error"))});return i}eD.exports=ble});var yx=O((z3e,aD)=>{"use strict";var tD=Pe(),_le=px(),wle=rD(),R3e=xs();function Tle(e,r){var t;return tD.isPlainObject(e)||(t=tD.getGraphDiv(e)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(a,n){t&&t._snapshotInProgress&&n(new Error("Snapshotting already in progress.")),t&&(t._snapshotInProgress=!0);var i=_le(e,r),l=r.filename||e.fn||"newplot";l+="."+r.format.replace("-","."),i.then(function(o){return t&&(t._snapshotInProgress=!1),wle(o,l,r.format)}).then(function(o){a(o)}).catch(function(o){t&&(t._snapshotInProgress=!1),n(o)})})}aD.exports=Tle});var sD=O(gx=>{"use strict";var vn=Pe(),hn=vn.isPlainObject,nD=Eu(),iD=Rt(),Mle=tn(),lD=lt(),oD=Vo().dfltConfig;gx.makeTemplate=function(e){e=vn.isPlainObject(e)?e:vn.getGraphDiv(e),e=vn.extendDeep({_context:oD},{data:e.data,layout:e.layout}),iD.supplyDefaults(e);var r=e.data||[],t=e.layout||{};t._basePlotModules=e._fullLayout._basePlotModules,t._modules=e._fullLayout._modules;var a={data:{},layout:{}};r.forEach(function(d){var p={};Nv(d,p,kle.bind(null,d));var m=vn.coerce(d,{},Mle,"type"),y=a.data[m];y||(y=a.data[m]=[]),y.push(p)}),Nv(t,a.layout,Ale.bind(null,t)),delete a.layout.template;var n=t.template;if(hn(n)){var i=n.layout,l,o,s,u,f,c;hn(i)&&ep(i,a.layout);var h=n.data;if(hn(h)){for(o in a.data)if(s=h[o],Array.isArray(s)){for(f=a.data[o],c=f.length,u=s.length,l=0;lb?l.push({code:"unused",traceType:d,templateCount:y,dataCount:b}):b>y&&l.push({code:"reused",traceType:d,templateCount:y,dataCount:b})}}function _(T,x){for(var M in T)if(M.charAt(0)!=="_"){var k=T[M],A=jn(T,M,x);hn(k)?(Array.isArray(T)&&k._template===!1&&k.templateitemname&&l.push({code:"missing",path:A,templateitemname:k.templateitemname}),_(k,A)):Array.isArray(k)&&qle(k)&&_(k,A)}}if(_({data:s,layout:o},""),l.length)return l.map(Sle)};function qle(e){for(var r=0;r{"use strict";var ea=cx();bt._doPlot=ea._doPlot;bt.newPlot=ea.newPlot;bt.restyle=ea.restyle;bt.relayout=ea.relayout;bt.redraw=ea.redraw;bt.update=ea.update;bt._guiRestyle=ea._guiRestyle;bt._guiRelayout=ea._guiRelayout;bt._guiUpdate=ea._guiUpdate;bt._storeDirectGUIEdit=ea._storeDirectGUIEdit;bt.react=ea.react;bt.extendTraces=ea.extendTraces;bt.prependTraces=ea.prependTraces;bt.addTraces=ea.addTraces;bt.deleteTraces=ea.deleteTraces;bt.moveTraces=ea.moveTraces;bt.purge=ea.purge;bt.addFrames=ea.addFrames;bt.deleteFrames=ea.deleteFrames;bt.animate=ea.animate;bt.setPlotConfig=ea.setPlotConfig;var Cle=qc().getGraphDiv,Lle=v1().eraseActiveShape;bt.deleteActiveShape=function(e){return Lle(Cle(e))};bt.toImage=px();bt.validate=jL();bt.downloadImage=yx();var uD=sD();bt.makeTemplate=uD.makeTemplate;bt.validateTemplate=uD.validateTemplate});var Fv=O((I3e,cD)=>{"use strict";var xx=Pe(),Dle=gr();cD.exports=function(r,t,a,n){var i=n("x"),l=n("y"),o,s=Dle.getComponentMethod("calendars","handleTraceDefaults");if(s(r,t,["x","y"],a),i){var u=xx.minRowLength(i);l?o=Math.min(u,xx.minRowLength(l)):(o=u,n("y0"),n("dy"))}else{if(!l)return 0;o=xx.minRowLength(l),n("x0"),n("dx")}return t._length=o,o}});var ws=O((H3e,dD)=>{"use strict";var vD=Pe().dateTick0,Ele=wt(),Ple=Ele.ONEWEEK;function hD(e,r){return e%Ple===0?vD(r,1):vD(r,0)}dD.exports=function(r,t,a,n,i){if(i||(i={x:!0,y:!0}),i.x){var l=n("xperiod");l&&(n("xperiod0",hD(l,t.xcalendar)),n("xperiodalignment"))}if(i.y){var o=n("yperiod");o&&(n("yperiod0",hD(o,t.ycalendar)),n("yperiodalignment"))}}});var yD=O((O3e,mD)=>{"use strict";var pD=["orientation","groupnorm","stackgaps"];mD.exports=function(r,t,a,n){var i=a._scatterStackOpts,l=n("stackgroup");if(l){var o=t.xaxis+t.yaxis,s=i[o];s||(s=i[o]={});var u=s[l],f=!1;u?u.traces.push(t):(u=s[l]={traceIndices:[],traces:[t]},f=!0);for(var c={orientation:t.x&&!t.y?"h":"v"},h=0;h{"use strict";var gD=xr(),xD=bn().hasColorscale,bD=Nu(),Rle=wn();_D.exports=function(r,t,a,n,i,l){var o=Rle.isBubble(r),s=(r.line||{}).color,u;if(l=l||{},s&&(a=s),i("marker.symbol"),i("marker.opacity",o?.7:1),i("marker.size"),l.noAngle||(i("marker.angle"),l.noAngleRef||i("marker.angleref"),l.noStandOff||i("marker.standoff")),i("marker.color",a),xD(r,"marker")&&bD(r,t,n,i,{prefix:"marker.",cLetter:"c"}),l.noSelect||(i("selected.marker.color"),i("unselected.marker.color"),i("selected.marker.size"),i("unselected.marker.size")),l.noLine||(s&&!Array.isArray(s)&&t.marker.color!==s?u=s:o?u=gD.background:u=gD.defaultLine,i("marker.line.color",u),xD(r,"marker.line")&&bD(r,t,n,i,{prefix:"marker.line.",cLetter:"c"}),i("marker.line.width",o?1:0)),o&&(i("marker.sizeref"),i("marker.sizemin"),i("marker.sizemode")),l.gradient){var f=i("marker.gradient.type");f!=="none"&&i("marker.gradient.color")}}});var MD=O((Y3e,TD)=>{"use strict";var zle=Pe().isArrayOrTypedArray,Nle=bn().hasColorscale,Fle=Nu();TD.exports=function(r,t,a,n,i,l){l||(l={});var o=(r.marker||{}).color;if(o&&o._inputArray&&(o=o._inputArray),i("line.color",a),Nle(r,"line"))Fle(r,t,n,i,{prefix:"line.",cLetter:"c"});else{var s=(zle(o)?!1:o)||a;i("line.color",s)}i("line.width"),l.noDash||i("line.dash"),l.backoff&&i("line.backoff")}});var kD=O((V3e,AD)=>{"use strict";AD.exports=function(r,t,a){var n=a("line.shape");n==="spline"&&a("line.smoothing")}});var SD=O((G3e,qD)=>{"use strict";var Ile=Pe();qD.exports=function(e,r,t,a,n){n=n||{},a("textposition"),Ile.coerceFont(a,"textfont",n.font||t.font,n),n.noSelect||(a("selected.textfont.color"),a("unselected.textfont.color"))}});var DD=O((U3e,LD)=>{"use strict";var tp=xr(),CD=Pe().isArrayOrTypedArray;function Hle(e){for(var r=tp.interpolate(e[0][1],e[1][1],.5),t=2;t{"use strict";var ED=Pe(),Ole=gr(),Ble=bi(),Yle=C1(),vf=wn(),Vle=Fv(),Gle=ws(),Ule=yD(),Wle=wD(),Xle=MD(),PD=kD(),Zle=SD(),Jle=DD(),$le=Pe().coercePattern;RD.exports=function(r,t,a,n){function i(d,p){return ED.coerce(r,t,Ble,d,p)}var l=Vle(r,t,n,i);if(l||(t.visible=!1),!!t.visible){Gle(r,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder");var o=Ule(r,t,n,i);n.scattermode==="group"&&t.orientation===void 0&&i("orientation","v");var s=!o&&l{"use strict";var Kle=gs().getAxisGroup;ND.exports=function(r,t,a,n,i){var l=t.orientation,o=t[{v:"x",h:"y"}[l]+"axis"],s=Kle(a,o)+l,u=a._alignmentOpts||{},f=n("alignmentgroup"),c=u[s];c||(c=u[s]={});var h=c[f];h?h.traces.push(t):h=c[f]={traces:[t],alignmentIndex:Object.keys(c).length,offsetGroups:{}};var d=n("offsetgroup")||"",p=h.offsetGroups,m=p[d];t._offsetIndex=0,(i!=="group"||d)&&(m||(m=p[d]={offsetIndex:Object.keys(p).length}),t._offsetIndex=m.offsetIndex)}});var ID=O((Z3e,FD)=>{"use strict";var Qle=Pe(),jle=hf(),eoe=bi();FD.exports=function(r,t){var a,n,i,l=t.scattermode;function o(h){return Qle.coerce(n._input,n,eoe,h)}if(t.scattermode==="group")for(i=0;i=0;f--){var c=r[f];if(c.type==="scatter"&&c.xaxis===s.xaxis&&c.yaxis===s.yaxis){c.opacity=void 0;break}}}}}});var OD=O((J3e,HD)=>{"use strict";var roe=Pe(),toe=Wh();HD.exports=function(e,r){function t(n,i){return roe.coerce(e,r,toe,n,i)}var a=r.barmode==="group";r.scattermode==="group"&&t("scattergap",a?r.bargap:.2)}});var Ts=O(($3e,YD)=>{"use strict";var aoe=zr(),BD=Pe(),noe=BD.dateTime2ms,ap=BD.incrementMonth,ioe=wt(),loe=ioe.ONEAVGMONTH;YD.exports=function(r,t,a,n){if(t.type!=="date")return{vals:n};var i=r[a+"periodalignment"];if(!i)return{vals:n};var l=r[a+"period"],o;if(aoe(l)){if(l=+l,l<=0)return{vals:n}}else if(typeof l=="string"&&l.charAt(0)==="M"){var s=+l.substring(1);if(s>0&&Math.round(s)===s)o=s;else return{vals:n}}for(var u=t.calendar,f=i==="start",c=i==="end",h=r[a+"period0"],d=noe(h,u)||0,p=[],m=[],y=[],b=n.length,_=0;_T;)k=ap(k,-o,u);for(;k<=T;)k=ap(k,o,u);M=ap(k,-o,u)}else{for(x=Math.round((T-d)/l),k=d+x*l;k>T;)k-=l;for(;k<=T;)k+=l;M=k-l}p[_]=f?M:c?k:(M+k)/2,m[_]=M,y[_]=k}return{vals:p,starts:m,ends:y}}});var UD=O((K3e,GD)=>{"use strict";var bx=bn().hasColorscale,_x=Yc(),VD=wn();GD.exports=function(r,t){VD.hasLines(t)&&bx(t,"line")&&_x(r,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),VD.hasMarkers(t)&&(bx(t,"marker")&&_x(r,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),bx(t,"marker.line")&&_x(r,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var wx=O((Q3e,WD)=>{"use strict";var zt=Pe();WD.exports=function(r,t){for(var a=0;a{"use strict";var XD=Pe();ZD.exports=function(r,t){XD.isArrayOrTypedArray(t.selectedpoints)&&XD.tagSelected(r,t)}});var qx=O((exe,rE)=>{"use strict";var JD=zr(),Mx=Pe(),Hv=Zr(),$D=Ts(),Tx=wt().BADNUM,Ax=wn(),ooe=UD(),soe=wx(),uoe=Iv();function foe(e,r){var t=e._fullLayout,a=r._xA=Hv.getFromId(e,r.xaxis||"x","x"),n=r._yA=Hv.getFromId(e,r.yaxis||"y","y"),i=a.makeCalcdata(r,"x"),l=n.makeCalcdata(r,"y"),o=$D(r,a,"x",i),s=$D(r,n,"y",l),u=o.vals,f=s.vals,c=r._length,h=new Array(c),d=r.ids,p=kx(r,t,a,n),m=!1,y,b,_,T,x,M;jD(t,r);var k="x",A="y",C;if(p)Mx.pushUnique(p.traceIndices,r.index),y=p.orientation==="v",y?(A="s",C="x"):(k="s",C="y"),x=p.stackgaps==="interpolate";else{var D=QD(r,c);KD(e,r,a,n,u,f,D)}var E=!!r.xperiodalignment,R=!!r.yperiodalignment;for(b=0;bb&&h[T].gap;)T--;for(M=h[T].s,_=h.length-1;_>T;_--)h[_].s=M;for(;b{"use strict";tE.exports=np;var coe=Pe().distinctVals;function np(e,r){this.traces=e,this.sepNegVal=r.sepNegVal,this.overlapNoMerge=r.overlapNoMerge;for(var t=1/0,a=r.posAxis._id.charAt(0),n=[],i=0;i{"use strict";var ei=zr(),no=Pe().isArrayOrTypedArray,df=wt().BADNUM,voe=gr(),Ov=Zr(),hoe=gs().getAxisGroup,ip=aE();function doe(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,l=e.calcdata,o=[],s=[],u=0;us+l||!ei(o))}for(var f=0;f{"use strict";var sE=qx(),uE=mf().setGroupPositions;function koe(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,l=e.calcdata,o=[],s=[],u=0;uD[f]&&f{"use strict";var Soe=Yr(),pE=wt(),Bv=pE.BADNUM,mE=pE.LOG_CLIP,vE=mE+.5,hE=mE-.5,lp=Pe(),Coe=lp.segmentsIntersect,dE=lp.constrain,Px=C1();yE.exports=function(r,t){var a=t.trace||{},n=t.xaxis,i=t.yaxis,l=n.type==="log",o=i.type==="log",s=n._length,u=i._length,f=t.backoff,c=a.marker,h=t.connectGaps,d=t.baseTolerance,p=t.shape,m=p==="linear",y=a.fill&&a.fill!=="none",b=[],_=Px.minTolerance,T=r.length,x=new Array(T),M=0,k,A,C,D,E,R,N,I,H,G,W,Y,B,V,K,J;function re(Ne){var ne=r[Ne];if(!ne)return!1;var oe=t.linearized?n.l2p(ne.x):n.c2p(ne.x),Ce=t.linearized?i.l2p(ne.y):i.c2p(ne.y);if(oe===Bv){if(l&&(oe=n.c2p(ne.x,!0)),oe===Bv)return!1;o&&Ce===Bv&&(oe*=Math.abs(n._m*u*(n._m>0?vE:hE)/(i._m*s*(i._m>0?vE:hE)))),oe*=1e3}if(Ce===Bv){if(o&&(Ce=i.c2p(ne.y,!0)),Ce===Bv)return!1;Ce*=1e3}return[oe,Ce]}function le(Ne,ne,oe,Ce){var De=oe-Ne,ar=Ce-ne,fr=.5-Ne,sr=.5-ne,Ar=De*De+ar*ar,Br=De*fr+ar*sr;if(Br>0&&Br1||Math.abs(fr.y-oe[0][1])>1)&&(fr=[fr.x,fr.y],Ce&&qe(fr,Ne)ce||Ne[1]U)return[dE(Ne[0],be,ce),dE(Ne[1],xe,U)]}function Be(Ne,ne){if(Ne[0]===ne[0]&&(Ne[0]===be||Ne[0]===ce)||Ne[1]===ne[1]&&(Ne[1]===xe||Ne[1]===U))return!0}function Ue(Ne,ne){var oe=[],Ce=Fe(Ne),De=Fe(ne);return Ce&&De&&Be(Ce,De)||(Ce&&oe.push(Ce),De&&oe.push(De)),oe}function Le(Ne,ne,oe){return function(Ce,De){var ar=Fe(Ce),fr=Fe(De),sr=[];if(ar&&fr&&Be(ar,fr))return sr;ar&&sr.push(ar),fr&&sr.push(fr);var Ar=2*lp.constrain((Ce[Ne]+De[Ne])/2,ne,oe)-((ar||Ce)[Ne]+(fr||De)[Ne]);if(Ar){var Br;ar&&fr?Br=Ar>0==ar[Ne]>fr[Ne]?ar:fr:Br=ar||fr,Br[Ne]+=Ar}return sr}}var He;p==="linear"||p==="spline"?He=Ee:p==="hv"||p==="vh"?He=Ue:p==="hvh"?He=Le(0,be,ce):p==="vhv"&&(He=Le(1,xe,U));function Ye(Ne,ne){var oe=ne[0]-Ne[0],Ce=(ne[1]-Ne[1])/oe,De=(Ne[1]*ne[0]-ne[1]*Ne[0])/oe;return De>0?[Ce>0?be:ce,U]:[Ce>0?ce:be,xe]}function ie(Ne){var ne=Ne[0],oe=Ne[1],Ce=ne===x[M-1][0],De=oe===x[M-1][1];if(!(Ce&&De))if(M>1){var ar=ne===x[M-2][0],fr=oe===x[M-2][1];Ce&&(ne===be||ne===ce)&&ar?fr?M--:x[M-1]=Ne:De&&(oe===xe||oe===U)&&fr?ar?M--:x[M-1]=Ne:x[M++]=Ne}else x[M++]=Ne}function _e(Ne){x[M-1][0]!==Ne[0]&&x[M-1][1]!==Ne[1]&&ie([Te,ye]),ie(Ne),ze=null,Te=ye=0}var $e=lp.isArrayOrTypedArray(c);function hr(Ne){if(Ne&&f&&(Ne.i=k,Ne.d=r,Ne.trace=a,Ne.marker=$e?c[Ne.i]:c,Ne.backoff=f),ue=Ne[0]/s,ve=Ne[1]/u,X=Ne[0]ce?ce:0,ge=Ne[1]U?U:0,X||ge){if(!M)x[M++]=[X||Ne[0],ge||Ne[1]];else if(ze){var ne=He(ze,Ne);ne.length>1&&(_e(ne[0]),x[M++]=ne[1])}else Ie=He(x[M-1],Ne)[0],x[M++]=Ie;var oe=x[M-1];X&&ge&&(oe[0]!==X||oe[1]!==ge)?(ze&&(Te!==X&&ye!==ge?ie(Te&&ye?Ye(ze,Ne):[Te||X,ye||ge]):Te&&ye&&ie([Te,ye])),ie([X,ge])):Te-X&&ye-ge&&ie([X||Te,ge||ye]),ze=Ne,Te=X,ye=ge}else ze&&_e(He(ze,Ne)[0]),x[M++]=Ne}for(k=0;kj(R,Re))break;C=R,B=H[0]*I[0]+H[1]*I[1],B>W?(W=B,D=R,N=!1):B=r.length||!R)break;hr(R),A=R}}ze&&ie([Te||ze[0],ye||ze[1]]),b.push(x.slice(0,M))}var Ae=p.slice(p.length-1);if(f&&Ae!=="h"&&Ae!=="v"){for(var Se=!1,Oe=-1,Je=[],We=0;We{"use strict";var xE={tonextx:1,tonexty:1,tonext:1};bE.exports=function(r,t,a){var n,i,l,o,s,u={},f=!1,c=-1,h=0,d=-1;for(i=0;i=0?s=d:(s=d=h,h++),s{"use strict";var Ti=kr(),Loe=gr(),Yv=Pe(),yf=Yv.ensureSingle,TE=Yv.identity,Nt=Yr(),gf=wn(),Doe=gE(),Eoe=_E(),op=R3().tester;ME.exports=function(r,t,a,n,i,l){var o,s,u=!i,f=!!i&&i.duration>0,c=Eoe(r,t,a);if(o=n.selectAll("g.trace").data(c,function(d){return d[0].trace.uid}),o.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),o.order(),Poe(r,o,t),f){l&&(s=l());var h=Ti.transition().duration(i.duration).ease(i.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});h.each(function(){n.selectAll("g.trace").each(function(d,p){wE(r,p,t,d,c,this,i)})})}else o.each(function(d,p){wE(r,p,t,d,c,this,i)});u&&o.exit().remove(),n.selectAll("path:not([d])").remove()};function Poe(e,r,t){r.each(function(a){var n=yf(Ti.select(this),"g","fills");Nt.setClipUrl(n,t.layerClipId,e);var i=a[0].trace,l=[];i._ownfill&&l.push("_ownFill"),i._nexttrace&&l.push("_nextFill");var o=n.selectAll("g").data(l,TE);o.enter().append("g"),o.exit().each(function(s){i[s]=null}).remove(),o.order().each(function(s){i[s]=yf(Ti.select(this),"path","js-fill")})})}function wE(e,r,t,a,n,i,l){var o=e._context.staticPlot,s;Roe(e,r,t,a,n);var u=!!l&&l.duration>0;function f(Le){return u?Le.transition():Le}var c=t.xaxis,h=t.yaxis,d=a[0].trace,p=d.line,m=Ti.select(i),y=yf(m,"g","errorbars"),b=yf(m,"g","lines"),_=yf(m,"g","points"),T=yf(m,"g","text");if(Loe.getComponentMethod("errorbars","plot")(e,y,t,l),d.visible!==!0)return;f(m).style("opacity",d.opacity);var x,M,k=d.fill.charAt(d.fill.length-1);k!=="x"&&k!=="y"&&(k="");var A,C;k==="y"?(A=1,C=h.c2p(0,!0)):k==="x"&&(A=0,C=c.c2p(0,!0)),a[0][t.isRangePlot?"nodeRangePlot3":"node3"]=m;var D="",E=[],R=d._prevtrace,N=null,I=null;R&&(D=R._prevRevpath||"",M=R._nextFill,E=R._ownPolygons,N=R._fillsegments,I=R._fillElement);var H,G,W="",Y="",B,V,K,J,re,le,ue=[];d._polygons=[];var ve=[],j=[],qe=Yv.noop;if(x=d._ownFill,gf.hasLines(d)||d.fill!=="none"){M&&M.datum(a),["hv","vh","hvh","vhv"].indexOf(p.shape)!==-1?(B=Nt.steps(p.shape),V=Nt.steps(p.shape.split("").reverse().join(""))):p.shape==="spline"?B=V=function(Le){var He=Le[Le.length-1];return Le.length>1&&Le[0][0]===He[0]&&Le[0][1]===He[1]?Nt.smoothclosed(Le.slice(1),p.smoothing):Nt.smoothopen(Le,p.smoothing)}:B=V=function(Le){return"M"+Le.join("L")},K=function(Le){return V(Le.reverse())},j=Doe(a,{xaxis:c,yaxis:h,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(p.width||1,3)/4,shape:p.shape,backoff:p.backoff,simplify:p.simplify,fill:d.fill}),ve=new Array(j.length);var fe=0;for(s=0;s=o[0]&&m.x<=o[1]&&m.y>=s[0]&&m.y<=s[1]}),h=Math.ceil(c.length/f),d=0;n.forEach(function(m,y){var b=m[0].trace;gf.hasMarkers(b)&&b.marker.maxdisplayed>0&&y{"use strict";kE.exports={container:"marker",min:"cmin",max:"cmax"}});var SE=O((sxe,qE)=>{"use strict";var up=Zr();qE.exports=function(r,t,a){var n={},i={_fullLayout:a},l=up.getFromTrace(i,t,"x"),o=up.getFromTrace(i,t,"y"),s=r.orig_x;s===void 0&&(s=r.x);var u=r.orig_y;return u===void 0&&(u=r.y),n.xLabel=up.tickText(l,l.c2l(s),!0).text,n.yLabel=up.tickText(o,o.c2l(u),!0).text,n}});var Fx=O((uxe,CE)=>{"use strict";var Rx=kr(),xf=Yr(),zoe=gr();function Noe(e){var r=Rx.select(e).selectAll("g.trace.scatter");r.style("opacity",function(t){return t[0].trace.opacity}),r.selectAll("g.points").each(function(t){var a=Rx.select(this),n=t.trace||t[0].trace;zx(a,n,e)}),r.selectAll("g.text").each(function(t){var a=Rx.select(this),n=t.trace||t[0].trace;Nx(a,n,e)}),r.selectAll("g.trace path.js-line").call(xf.lineGroupStyle),r.selectAll("g.trace path.js-fill").call(xf.fillGroupStyle,e,!1),zoe.getComponentMethod("errorbars","style")(r)}function zx(e,r,t){xf.pointStyle(e.selectAll("path.point"),r,t)}function Nx(e,r,t){xf.textPointStyle(e.selectAll("text"),r,t)}function Foe(e,r,t){var a=r[0].trace;a.selectedpoints?(xf.selectedPointStyle(t.selectAll("path.point"),a),xf.selectedTextStyle(t.selectAll("text"),a)):(zx(t,a,e),Nx(t,a,e))}CE.exports={style:Noe,stylePoints:zx,styleText:Nx,styleOnSelect:Foe}});var DE=O((fxe,LE)=>{"use strict";var bf=xr(),Ioe=wn();LE.exports=function(r,t){var a,n;if(r.mode==="lines")return a=r.line.color,a&&bf.opacity(a)?a:r.fillcolor;if(r.mode==="none")return r.fill?r.fillcolor:"";var i=t.mcc||(r.marker||{}).color,l=t.mlcc||((r.marker||{}).line||{}).color;return n=i&&bf.opacity(i)?i:l&&bf.opacity(l)&&(t.mlw||((r.marker||{}).line||{}).width)?l:"",n?bf.opacity(n)<.3?bf.addOpacity(n,.3):n:(a=(r.line||{}).color,a&&bf.opacity(a)&&Ioe.hasLines(r)&&r.line.width?a:r.fillcolor)}});var RE=O((cxe,PE)=>{"use strict";var fp=Pe(),EE=gi(),Hoe=gr(),Ooe=DE(),Ix=xr(),Boe=fp.fillText;PE.exports=function(r,t,a,n){var i=r.cd,l=i[0].trace,o=r.xa,s=r.ya,u=o.c2p(t),f=s.c2p(a),c=[u,f],h=l.hoveron||"",d=l.mode.indexOf("markers")!==-1?3:.5,p=!!l.xperiodalignment,m=!!l.yperiodalignment;if(h.indexOf("points")!==-1){var y=function(Y){if(p){var B=o.c2p(Y.xStart),V=o.c2p(Y.xEnd);return u>=Math.min(B,V)&&u<=Math.max(B,V)?0:1/0}var K=Math.max(3,Y.mrc||0),J=1-1/K,re=Math.abs(o.c2p(Y.x)-u);return re=Math.min(B,V)&&f<=Math.max(B,V)?0:1/0}var K=Math.max(3,Y.mrc||0),J=1-1/K,re=Math.abs(s.c2p(Y.y)-f);return reue!=U>=ue&&(be=qe[j-1][0],ce=qe[j][0],U-xe&&(fe=be+(ce-be)*(ue-xe)/(U-xe),K=Math.min(K,fe),J=Math.max(J,fe)));return K=Math.max(K,0),J=Math.min(J,o._length),{x0:K,x1:J,y0:ue,y1:ue}}if(h.indexOf("fills")!==-1&&l._fillElement){var H=N(l._fillElement)&&!N(l._fillExclusionElement);if(H){var G=I(l._polygons);G===null&&(G={x0:c[0],x1:c[0],y0:c[1],y1:c[1]});var W=Ix.defaultLine;return Ix.opacity(l.fillcolor)?W=l.fillcolor:Ix.opacity((l.line||{}).color)&&(W=l.line.color),fp.extendFlat(r,{distance:r.maxHoverDistance,x0:G.x0,x1:G.x1,y0:G.y0,y1:G.y1,color:W,hovertemplate:!1}),delete r.index,l.text&&!fp.isArrayOrTypedArray(l.text)?r.text=String(l.text):r.text=l.name,[r]}}}});var FE=O((vxe,NE)=>{"use strict";var zE=wn();NE.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,l=[],o=a[0].trace,s,u,f,c,h=!zE.hasMarkers(o)&&!zE.hasText(o);if(h)return[];if(t===!1)for(s=0;s{"use strict";IE.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var VE=O((dxe,YE)=>{"use strict";var Vv=gr().traceIs,Hx=f2();YE.exports=function(r,t,a,n){a("autotypenumbers",n.autotypenumbersDflt);var i=a("type",(n.splomStash||{}).type);i==="-"&&(Yoe(t,n.data),t.type==="-"?t.type="linear":r.type=t.type)};function Yoe(e,r){if(e.type==="-"){var t=e._id,a=t.charAt(0),n;t.indexOf("scene")!==-1&&(t=a);var i=Voe(r,t,a);if(i){if(i.type==="histogram"&&a==={v:"y",h:"x"}[i.orientation||"v"]){e.type="linear";return}var l=a+"calendar",o=i[l],s={noMultiCategory:!Vv(i,"cartesian")||Vv(i,"noMultiCategory")};if(i.type==="box"&&i._hasPreCompStats&&a==={h:"x",v:"y"}[i.orientation||"v"]&&(s.noMultiCategory=!0),s.autotypenumbers=e.autotypenumbers,BE(i,a)){var u=OE(i),f=[];for(n=0;n0&&(n["_"+t+"axes"]||{})[r])return n;if((n[t+"axis"]||t)===r){if(BE(n,t))return n;if((n[t]||[]).length||n[t+"0"])return n}}}function OE(e){return{v:"x",h:"y"}[e.orientation||"v"]}function BE(e,r){var t=OE(e),a=Vv(e,"box-violin"),n=Vv(e._fullInput||{},"candlestick");return a&&!n&&r===t&&e[t]===void 0&&e[t+"0"]===void 0}});var UE=O((pxe,GE)=>{"use strict";var Goe=yn().isTypedArraySpec;function Uoe(e,r){var t=r.dataAttr||e._id.charAt(0),a={},n,i,l;if(r.axData)n=r.axData;else for(n=[],i=0;i0||Goe(i),o;l&&(o="array");var s=a("categoryorder",o),u;s==="array"&&(u=a("categoryarray")),!l&&s==="array"&&(s=t.categoryorder="trace"),s==="trace"?t._initialCategories=[]:s==="array"?t._initialCategories=u.slice():(u=Uoe(t,n).sort(),s==="category ascending"?t._initialCategories=u:s==="category descending"&&(t._initialCategories=u.reverse()))}}});var ZE=O((mxe,XE)=>{"use strict";var WE=Nn().mix,Woe=Fn(),Xoe=Pe();XE.exports=function(r,t,a,n){n=n||{};var i=n.dfltColor;function l(C,D){return Xoe.coerce2(r,t,n.attributes,C,D)}var o=l("linecolor",i),s=l("linewidth"),u=a("showline",n.showLine||!!o||!!s);u||(delete t.linecolor,delete t.linewidth);var f=WE(i,n.bgColor,n.blend||Woe.lightFraction).toRgbString(),c=l("gridcolor",f),h=l("gridwidth"),d=l("griddash"),p=a("showgrid",n.showGrid||!!c||!!h||!!d);if(p||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),n.hasMinor){var m=WE(t.gridcolor,n.bgColor,67).toRgbString(),y=l("minor.gridcolor",m),b=l("minor.gridwidth",t.gridwidth||1),_=l("minor.griddash",t.griddash||"solid"),T=a("minor.showgrid",!!y||!!b||!!_);T||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!n.noZeroLine){var x=l("zerolinelayer"),M=l("zerolinecolor",i),k=l("zerolinewidth"),A=a("zeroline",n.showGrid||!!M||!!k);A||(delete t.zerolinelayer,delete t.zerolinecolor,delete t.zerolinewidth)}}});var vp=O((yxe,eP)=>{"use strict";var JE=zr(),Zoe=gr(),Gv=Pe(),Joe=lt(),$oe=Bn(),Ox=_n(),$E=td(),KE=ad(),Koe=id(),Qoe=ld(),joe=UE(),ese=ZE(),rse=D2(),QE=_d(),cp=Ma().WEEKDAY_PATTERN,tse=Ma().HOUR_PATTERN;eP.exports=function(r,t,a,n,i){var l=n.letter,o=n.font||{},s=n.splomStash||{},u=a("visible",!n.visibleDflt),f=t._template||{},c=t.type||f.type||"-",h;if(c==="date"){var d=Zoe.getComponentMethod("calendars","handleDefaults");d(r,t,"calendar",n.calendar),n.noTicklabelmode||(h=a("ticklabelmode"))}!n.noTicklabelindex&&(c==="date"||c==="linear")&&a("ticklabelindex");var p="";(!n.noTicklabelposition||c==="multicategory")&&(p=Gv.coerce(r,t,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h==="period"?["outside","inside"]:l==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),n.noTicklabeloverflow||a("ticklabeloverflow",p.indexOf("inside")!==-1?"hide past domain":c==="category"||c==="multicategory"?"allow":"hide past div"),QE(t,i),rse(r,t,a,n),joe(r,t,a,n),n.noHover||(c!=="category"&&a("hoverformat"),n.noUnifiedhovertitle||a("unifiedhovertitle.text"));var m=a("color"),y=m!==Ox.color.dflt?m:o.color,b=s.label||i._dfltTitle[l];if(Qoe(r,t,a,c,n),!u)return t;a("title.text",b),Gv.coerceFont(a,"title.font",o,{overrideDflt:{size:Gv.bigFont(o.size),color:y}}),$E(r,t,a,c);var _=n.hasMinor;if(_&&(Joe.newContainer(t,"minor"),$E(r,t,a,c,{isMinor:!0})),Koe(r,t,a,c,n),KE(r,t,a,n),_){var T=n.isMinor;n.isMinor=!0,KE(r,t,a,n),n.isMinor=T}ese(r,t,a,{dfltColor:m,bgColor:n.bgColor,showGrid:n.showGrid,hasMinor:_,attributes:Ox}),_&&!t.minor.ticks&&!t.minor.showgrid&&delete t.minor,(t.showline||t.ticks)&&a("mirror");var x=c==="multicategory";if(!n.noTickson&&(c==="category"||x)&&(t.ticks||t.showgrid)&&(x?(a("tickson","boundaries"),delete t.ticklabelposition):a("tickson")),x){var M=a("showdividers");M&&(a("dividercolor"),a("dividerwidth"))}if(c==="date")if($oe(r,t,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:ase}),!t.rangebreaks.length)delete t.rangebreaks;else{for(var k=0;k=2){var l="",o,s;if(i.length===2){for(o=0;o<2;o++)if(s=jE(i[o]),s){l=cp;break}}var u=a("pattern",l);if(u===cp)for(o=0;o<2;o++)s=jE(i[o]),s&&(r.bounds[o]=i[o]=s-1);if(u)for(o=0;o<2;o++)switch(s=i[o],u){case cp:if(!JE(s)){r.enabled=!1;return}if(s=+s,s!==Math.floor(s)||s<0||s>=7){r.enabled=!1;return}r.bounds[o]=i[o]=s;break;case tse:if(!JE(s)){r.enabled=!1;return}if(s=+s,s<0||s>24){r.enabled=!1;return}r.bounds[o]=i[o]=s;break}if(t.autorange===!1){var f=t.range;if(f[0]f[1]){r.enabled=!1;return}}else if(i[0]>f[0]&&i[1]{"use strict";var ise=zr(),hp=Pe();rP.exports=function(r,t,a,n){var i=n.counterAxes||[],l=n.overlayableAxes||[],o=n.letter,s=n.grid,u=n.overlayingDomain,f,c,h,d,p,m;s&&(c=s._domains[o][s._axisMap[t._id]],f=s._anchors[t._id],c&&(h=s[o+"side"].split(" ")[0],d=s.domain[o][h==="right"||h==="top"?1:0])),c=c||[0,1],f=f||(ise(r.position)?"free":i[0]||"free"),h=h||(o==="x"?"bottom":"left"),d=d||0,p=0,m=!1;var y=hp.coerce(r,t,{anchor:{valType:"enumerated",values:["free"].concat(i),dflt:f}},"anchor"),b=hp.coerce(r,t,{side:{valType:"enumerated",values:o==="x"?["bottom","top"]:["left","right"],dflt:h}},"side");if(y==="free"){if(o==="y"){var _=a("autoshift");_&&(d=b==="left"?u[0]:u[1],m=t.automargin?t.automargin:!0,p=b==="left"?-3:3),a("shift",p)}a("position",d)}a("automargin",m);var T=!1;if(l.length&&(T=hp.coerce(r,t,{overlaying:{valType:"enumerated",values:[!1].concat(l),dflt:!1}},"overlaying")),!T){var x=a("domain",c);x[0]>x[1]-1/4096&&(t.domain=c),hp.noneOrAll(r.domain,t.domain,c),t.tickmode==="sync"&&(t.tickmode="auto")}return a("layer"),t}});var fP=O((xxe,uP)=>{"use strict";var Ms=Pe(),tP=xr(),lse=Hi().isUnifiedHover,ose=a3(),aP=lt(),sse=_u(),nP=_n(),use=VE(),iP=vp(),fse=gs(),lP=dp(),Yx=Ut(),$i=Yx.id2name,oP=Yx.name2id,cse=Ma().AX_ID_PATTERN,sP=gr(),pp=sP.traceIs,Bx=sP.getComponentMethod;function mp(e,r,t){Array.isArray(e[r])?e[r].push(t):e[r]=[t]}uP.exports=function(r,t,a){var n=t.autotypenumbers,i={},l={},o={},s={},u={},f={},c={},h={},d={},p={},m,y;for(m=0;m{"use strict";var vse=kr(),cP=gr(),yp=Pe(),Sn=Yr(),gp=Zr();vP.exports=function(r,t,a,n){var i=r._fullLayout;if(t.length===0){gp.redrawComponents(r);return}function l(y){var b=y.xaxis,_=y.yaxis;i._defs.select("#"+y.clipId+"> rect").call(Sn.setTranslate,0,0).call(Sn.setScale,1,1),y.plot.call(Sn.setTranslate,b._offset,_._offset).call(Sn.setScale,1,1);var T=y.plot.selectAll(".scatterlayer .trace");T.selectAll(".point").call(Sn.setPointGroupScale,1,1),T.selectAll(".textpoint").call(Sn.setTextPointsScale,1,1),T.call(Sn.hideOutsideRangePoints,y)}function o(y,b){var _=y.plotinfo,T=_.xaxis,x=_.yaxis,M=T._length,k=x._length,A=!!y.xr1,C=!!y.yr1,D=[];if(A){var E=yp.simpleMap(y.xr0,T.r2l),R=yp.simpleMap(y.xr1,T.r2l),N=E[1]-E[0],I=R[1]-R[0];D[0]=(E[0]*(1-b)+b*R[0]-E[0])/(E[1]-E[0])*M,D[2]=M*(1-b+b*I/N),T.range[0]=T.l2r(E[0]*(1-b)+b*R[0]),T.range[1]=T.l2r(E[1]*(1-b)+b*R[1])}else D[0]=0,D[2]=M;if(C){var H=yp.simpleMap(y.yr0,x.r2l),G=yp.simpleMap(y.yr1,x.r2l),W=H[1]-H[0],Y=G[1]-G[0];D[1]=(H[1]*(1-b)+b*G[1]-H[1])/(H[0]-H[1])*k,D[3]=k*(1-b+b*Y/W),x.range[0]=T.l2r(H[0]*(1-b)+b*G[0]),x.range[1]=x.l2r(H[1]*(1-b)+b*G[1])}else D[1]=0,D[3]=k;gp.drawOne(r,T,{skipTitle:!0}),gp.drawOne(r,x,{skipTitle:!0}),gp.redrawComponents(r,[T._id,x._id]);var B=A?M/D[2]:1,V=C?k/D[3]:1,K=A?D[0]:0,J=C?D[1]:0,re=A?D[0]/D[2]*M:0,le=C?D[1]/D[3]*k:0,ue=T._offset-re,ve=x._offset-le;_.clipRect.call(Sn.setTranslate,K,J).call(Sn.setScale,1/B,1/V),_.plot.call(Sn.setTranslate,ue,ve).call(Sn.setScale,B,V),Sn.setPointGroupScale(_.zoomScalePts,1/B,1/V),Sn.setTextPointsScale(_.zoomScaleTxt,1/B,1/V)}var s;n&&(s=n());function u(){for(var y={},b=0;ba.duration?(u(),d=window.cancelAnimationFrame(m)):d=window.requestAnimationFrame(m)}return c=Date.now(),d=window.requestAnimationFrame(m),Promise.resolve()}});var gl=O(za=>{"use strict";var bp=kr(),dP=gr(),As=Pe(),hse=Rt(),dse=Yr(),pP=_g().getModuleCalcData,io=Ut(),Mi=Ma(),pse=jo(),Jr=As.ensureSingle;function xp(e,r,t){return As.ensureSingle(e,r,t,function(a){a.datum(t)})}var ks=Mi.zindexSeparator;za.name="cartesian";za.attr=["xaxis","yaxis"];za.idRoot=["x","y"];za.idRegex=Mi.idRegex;za.attrRegex=Mi.attrRegex;za.attributes=HE();za.layoutAttributes=_n();za.supplyLayoutDefaults=fP();za.transitionAxes=hP();za.finalizeSubplots=function(e,r){var t=r._subplots,a=t.xaxis,n=t.yaxis,i=t.cartesian,l=i,o={},s={},u,f,c;for(u=0;u0){var d=h.id;if(d.indexOf(ks)!==-1)continue;d+=ks+(u+1),h=As.extendFlat({},h,{id:d,plot:n._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var p=[],m,y=0;y1&&(M+=ks+x),T.push(o+M),l=0;l1,c=r.mainplotinfo;if(!r.mainplot||f)if(u)r.xlines=Jr(a,"path","xlines-above"),r.ylines=Jr(a,"path","ylines-above"),r.xaxislayer=Jr(a,"g","xaxislayer-above"),r.yaxislayer=Jr(a,"g","yaxislayer-above");else{if(!l){var h=Jr(a,"g","layer-subplot");r.shapelayer=Jr(h,"g","shapelayer"),r.imagelayer=Jr(h,"g","imagelayer"),c&&f?(r.minorGridlayer=c.minorGridlayer,r.gridlayer=c.gridlayer,r.zerolinelayer=c.zerolinelayer):(r.minorGridlayer=Jr(a,"g","minor-gridlayer"),r.gridlayer=Jr(a,"g","gridlayer"),r.zerolinelayer=Jr(a,"g","zerolinelayer"));var d=Jr(a,"g","layer-between");r.shapelayerBetween=Jr(d,"g","shapelayer"),r.imagelayerBetween=Jr(d,"g","imagelayer"),Jr(a,"path","xlines-below"),Jr(a,"path","ylines-below"),r.overlinesBelow=Jr(a,"g","overlines-below"),Jr(a,"g","xaxislayer-below"),Jr(a,"g","yaxislayer-below"),r.overaxesBelow=Jr(a,"g","overaxes-below")}r.overplot=Jr(a,"g","overplot"),r.plot=Jr(r.overplot,"g",n),c&&f?r.zerolinelayerAbove=c.zerolinelayerAbove:r.zerolinelayerAbove=Jr(a,"g","zerolinelayer-above"),l||(r.xlines=Jr(a,"path","xlines-above"),r.ylines=Jr(a,"path","ylines-above"),r.overlinesAbove=Jr(a,"g","overlines-above"),Jr(a,"g","xaxislayer-above"),Jr(a,"g","yaxislayer-above"),r.overaxesAbove=Jr(a,"g","overaxes-above"),r.xlines=a.select(".xlines-"+o),r.ylines=a.select(".ylines-"+s),r.xaxislayer=a.select(".xaxislayer-"+o),r.yaxislayer=a.select(".yaxislayer-"+s))}else{var p=c.plotgroup,m=n+"-x",y=n+"-y";r.minorGridlayer=c.minorGridlayer,r.gridlayer=c.gridlayer,r.zerolinelayer=c.zerolinelayer,r.zerolinelayerAbove=c.zerolinelayerAbove,Jr(c.overlinesBelow,"path",m),Jr(c.overlinesBelow,"path",y),Jr(c.overaxesBelow,"g",m),Jr(c.overaxesBelow,"g",y),r.plot=Jr(c.overplot,"g",n),Jr(c.overlinesAbove,"path",m),Jr(c.overlinesAbove,"path",y),Jr(c.overaxesAbove,"g",m),Jr(c.overaxesAbove,"g",y),r.xlines=p.select(".overlines-"+o).select("."+m),r.ylines=p.select(".overlines-"+s).select("."+y),r.xaxislayer=p.select(".overaxes-"+o).select("."+m),r.yaxislayer=p.select(".overaxes-"+s).select("."+y)}l||(u||(xp(r.minorGridlayer,"g",r.xaxis._id),xp(r.minorGridlayer,"g",r.yaxis._id),r.minorGridlayer.selectAll("g").map(function(b){return b[0]}).sort(io.idSort),xp(r.gridlayer,"g",r.xaxis._id),xp(r.gridlayer,"g",r.yaxis._id),r.gridlayer.selectAll("g").map(function(b){return b[0]}).sort(io.idSort)),r.xlines.style("fill","none").classed("crisp",!0),r.ylines.style("fill","none").classed("crisp",!0))}function gP(e,r){if(e){var t={};e.each(function(s){var u=s[0],f=bp.select(this);f.remove(),xP(u,r),t[u]=!0});for(var a in r._plots)for(var n=r._plots[a],i=n.overlays||[],l=0;l{"use strict";var _p=wn();bP.exports={hasLines:_p.hasLines,hasMarkers:_p.hasMarkers,hasText:_p.hasText,isBubble:_p.isBubble,attributes:bi(),layoutAttributes:Wh(),supplyDefaults:zD(),crossTraceDefaults:ID(),supplyLayoutDefaults:OD(),calc:qx().calc,crossTraceCalc:cE(),arraysToCalcdata:wx(),plot:AE(),colorbar:sp(),formatLabels:SE(),style:Fx().style,styleOnSelect:Fx().styleOnSelect,hoverPoints:RE(),selectPoints:FE(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:gl(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var MP=O((Txe,TP)=>{"use strict";var yse=kr(),gse=xr(),wP=W3(),Vx=Pe(),xse=Vx.strScale,bse=Vx.strRotate,_se=Vx.strTranslate;TP.exports=function(r,t,a){var n=r.node(),i=wP[a.arrowhead||0],l=wP[a.startarrowhead||0],o=(a.arrowwidth||1)*(a.arrowsize||1),s=(a.arrowwidth||1)*(a.startarrowsize||1),u=t.indexOf("start")>=0,f=t.indexOf("end")>=0,c=i.backoff*o+a.standoff,h=l.backoff*s+a.startstandoff,d,p,m,y;if(n.nodeName==="line"){d={x:+r.attr("x1"),y:+r.attr("y1")},p={x:+r.attr("x2"),y:+r.attr("y2")};var b=d.x-p.x,_=d.y-p.y;if(m=Math.atan2(_,b),y=m+Math.PI,c&&h&&c+h>Math.sqrt(b*b+_*_)){H();return}if(c){if(c*c>b*b+_*_){H();return}var T=c*Math.cos(m),x=c*Math.sin(m);p.x+=T,p.y+=x,r.attr({x2:p.x,y2:p.y})}if(h){if(h*h>b*b+_*_){H();return}var M=h*Math.cos(m),k=h*Math.sin(m);d.x-=M,d.y-=k,r.attr({x1:d.x,y1:d.y})}}else if(n.nodeName==="path"){var A=n.getTotalLength(),C="";if(A{"use strict";var AP=kr(),Gx=gr(),wse=Rt(),oo=Pe(),Ux=oo.strTranslate,Wv=Zr(),qs=xr(),xl=Yr(),kP=gi(),Wx=va(),Xx=Kl(),Uv=mi(),Tse=lt().arrayEditor,Mse=MP();CP.exports={draw:Ase,drawOne:qP,drawRaw:SP};function Ase(e){var r=e._fullLayout;r._infolayer.selectAll(".annotation").remove();for(var t=0;t2/3?De="right":De="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[De]}for(var xe=!1,U=["x","y"],Q=0;Q1)&&(Te===ge?(Re=ye.r2fraction(r["a"+X]),(Re<0||Re>1)&&(xe=!0)):xe=!0),He=ye._offset+ye.r2p(r[X]),_e=.5}else{var Ae=hr==="domain";X==="x"?(ie=r[X],He=Ae?ye._offset+ye._length*ie:He=o.l+o.w*ie):(ie=1-r[X],He=Ae?ye._offset+ye._length*ie:He=o.t+o.h*ie),_e=r.showarrow?.5:ie}if(r.showarrow){Le.head=He;var Se=r["a"+X];if($e=Ie*ce(.5,r.xanchor)-Ee*ce(.5,r.yanchor),Te===ge){var Oe=Wv.getRefType(Te);Oe==="domain"?(X==="y"&&(Se=1-Se),Le.tail=ye._offset+ye._length*Se):Oe==="paper"?X==="y"?(Se=1-Se,Le.tail=o.t+o.h*Se):Le.tail=o.l+o.w*Se:Le.tail=ye._offset+ye.r2p(Se),Ye=$e}else Le.tail=He+Se,Ye=$e+Se;Le.text=Le.tail+$e;var Je=l[X==="x"?"width":"height"];if(ge==="paper"&&(Le.head=oo.constrain(Le.head,1,Je-1)),Te==="pixel"){var We=-Math.max(Le.tail-3,Le.text),Xe=Math.min(Le.tail+3,Le.text)-Je;We>0?(Le.tail+=We,Le.text+=We):Xe>0&&(Le.tail-=Xe,Le.text-=Xe)}Le.tail+=Ue,Le.head+=Ue}else $e=Fe*ce(_e,Be),Ye=$e,Le.text=He+$e;Le.text+=Ue,$e+=Ue,Ye+=Ue,r["_"+X+"padplus"]=Fe/2+Ye,r["_"+X+"padminus"]=Fe/2-Ye,r["_"+X+"size"]=Fe,r["_"+X+"shift"]=$e}if(xe){A.remove();return}var lr=0,tr=0;if(r.align!=="left"&&(lr=(j-ue)*(r.align==="center"?.5:1)),r.valign!=="top"&&(tr=(qe-ve)*(r.valign==="middle"?.5:1)),re)J.select("svg").attr({x:E+lr-1,y:E+tr}).call(xl.setClipUrl,N?m:null,e);else{var Ke=E+tr-le.top,Ne=E+lr-le.left;W.call(Wx.positionText,Ne,Ke).call(xl.setClipUrl,N?m:null,e)}I.select("rect").call(xl.setRect,E,E,j,qe),R.call(xl.setRect,C/2,C/2,fe-C,be-C),A.call(xl.setTranslate,Math.round(y.x.text-fe/2),Math.round(y.y.text-be/2)),T.attr({transform:"rotate("+b+","+y.x.text+","+y.y.text+")"});var ne=function(Ce,De){_.selectAll(".annotation-arrow-g").remove();var ar=y.x.head,fr=y.y.head,sr=y.x.tail+Ce,Ar=y.y.tail+De,Br=y.x.text+Ce,et=y.y.text+De,ut=oo.rotationXYMatrix(b,Br,et),kt=oo.apply2DTransform(ut),_t=oo.apply2DTransform2(ut),Ht=+R.attr("width"),ra=+R.attr("height"),Ia=Br-.5*Ht,ma=Ia+Ht,ya=et-.5*ra,vr=ya+ra,ft=[[Ia,ya,Ia,vr],[Ia,vr,ma,vr],[ma,vr,ma,ya],[ma,ya,Ia,ya]].map(_t);if(!ft.reduce(function(qt,xa){return qt^!!oo.segmentsIntersect(ar,fr,ar+1e6,fr+1e6,xa[0],xa[1],xa[2],xa[3])},!1)){ft.forEach(function(qt){var xa=oo.segmentsIntersect(sr,Ar,ar,fr,qt[0],qt[1],qt[2],qt[3]);xa&&(sr=xa.x,Ar=xa.y)});var $r=r.arrowwidth,dt=r.arrowcolor,Et=r.arrowside,Mt=_.append("g").style({opacity:qs.opacity(dt)}).classed("annotation-arrow-g",!0),jr=Mt.append("path").attr("d","M"+sr+","+Ar+"L"+ar+","+fr).style("stroke-width",$r+"px").call(qs.stroke,qs.rgb(dt));if(Mse(jr,Et,r),s.annotationPosition&&jr.node().parentNode&&!a){var ga=ar,Dn=fr;if(r.standoff){var ta=Math.sqrt(Math.pow(ar-sr,2)+Math.pow(fr-Ar,2));ga+=r.standoff*(sr-ar)/ta,Dn+=r.standoff*(Ar-fr)/ta}var Pi=Mt.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(sr-ga)+","+(Ar-Dn),transform:Ux(ga,Dn)}).style("stroke-width",$r+6+"px").call(qs.stroke,"rgba(0,0,0,0)").call(qs.fill,"rgba(0,0,0,0)"),En,Pt;Uv.init({element:Pi.node(),gd:e,prepFn:function(){var qt=xl.getTranslate(A);En=qt.x,Pt=qt.y,n&&n.autorange&&h(n._name+".autorange",!0),i&&i.autorange&&h(i._name+".autorange",!0)},moveFn:function(qt,xa){var Do=kt(En,Pt),Eo=Do[0]+qt,Ll=Do[1]+xa;A.call(xl.setTranslate,Eo,Ll),d("x",lo(n,qt,"x",o,r)),d("y",lo(i,xa,"y",o,r)),r.axref===r.xref&&d("ax",lo(n,qt,"ax",o,r)),r.ayref===r.yref&&d("ay",lo(i,xa,"ay",o,r)),Mt.attr("transform",Ux(qt,xa)),T.attr({transform:"rotate("+b+","+Eo+","+Ll+")"})},doneFn:function(){Gx.call("_guiRelayout",e,p());var qt=document.querySelector(".js-notes-box-panel");qt&&qt.redraw(qt.selectedObj)}})}}};if(r.showarrow&&ne(0,0),x){var oe;Uv.init({element:A.node(),gd:e,prepFn:function(){oe=T.attr("transform")},moveFn:function(Ce,De){var ar="pointer";if(r.showarrow)r.axref===r.xref?d("ax",lo(n,Ce,"ax",o,r)):d("ax",r.ax+Ce),r.ayref===r.yref?d("ay",lo(i,De,"ay",o.w,r)):d("ay",r.ay+De),ne(Ce,De);else{if(a)return;var fr,sr;if(n)fr=lo(n,Ce,"x",o,r);else{var Ar=r._xsize/o.w,Br=r.x+(r._xshift-r.xshift)/o.w-Ar/2;fr=Uv.align(Br+Ce/o.w,Ar,0,1,r.xanchor)}if(i)sr=lo(i,De,"y",o,r);else{var et=r._ysize/o.h,ut=r.y-(r._yshift+r.yshift)/o.h-et/2;sr=Uv.align(ut-De/o.h,et,0,1,r.yanchor)}d("x",fr),d("y",sr),(!n||!i)&&(ar=Uv.getCursor(n?.5:fr,i?.5:sr,r.xanchor,r.yanchor))}T.attr({transform:Ux(Ce,De)+oe}),Xx(A,ar)},clickFn:function(Ce,De){r.captureevents&&e.emit("plotly_clickannotation",k(De))},doneFn:function(){Xx(A),Gx.call("_guiRelayout",e,p());var Ce=document.querySelector(".js-notes-box-panel");Ce&&Ce.redraw(Ce.selectedObj)}})}}s.annotationText?W.call(Wx.makeEditable,{delegate:A,gd:e}).call(Y).on("edit",function(V){r.text=V,this.call(Y),d("text",V),n&&n.autorange&&h(n._name+".autorange",!0),i&&i.autorange&&h(i._name+".autorange",!0),Gx.call("_guiRelayout",e,p())}):W.call(Y)}});var zP=O((Axe,RP)=>{"use strict";var LP=Pe(),kse=gr(),DP=lt().arrayEditor;RP.exports={hasClickToShow:qse,onClick:Sse};function qse(e,r){var t=PP(e,r);return t.on.length>0||t.explicitOff.length>0}function Sse(e,r){var t=PP(e,r),a=t.on,n=t.off.concat(t.explicitOff),i={},l=e._fullLayout.annotations,o,s;if(a.length||n.length){for(o=0;o{"use strict";var Zx=Pe(),_f=xr();NP.exports=function(r,t,a,n){n("opacity");var i=n("bgcolor"),l=n("bordercolor"),o=_f.opacity(l);n("borderpad");var s=n("borderwidth"),u=n("showarrow");n("text",u?" ":a._dfltTitle.annotation),n("textangle"),Zx.coerceFont(n,"font",a.font),n("width"),n("align");var f=n("height");if(f&&n("valign"),u){var c=n("arrowside"),h,d;c.indexOf("end")!==-1&&(h=n("arrowhead"),d=n("arrowsize")),c.indexOf("start")!==-1&&(n("startarrowhead",h),n("startarrowsize",d)),n("arrowcolor",o?t.bordercolor:_f.defaultLine),n("arrowwidth",(o&&s||1)*2),n("standoff"),n("startstandoff")}var p=n("hovertext"),m=a.hoverlabel||{};if(p){var y=n("hoverlabel.bgcolor",m.bgcolor||(_f.opacity(i)?_f.rgb(i):_f.defaultLine)),b=n("hoverlabel.bordercolor",m.bordercolor||_f.contrast(y)),_=Zx.extendFlat({},m.font);_.color||(_.color=b),Zx.coerceFont(n,"hoverlabel.font",_)}n("captureevents",!!p)}});var IP=O((qxe,FP)=>{"use strict";var $x=Pe(),Ss=Zr(),Cse=Bn(),Lse=Jx(),Dse=uf();FP.exports=function(r,t){Cse(r,t,{name:"annotations",handleItemDefaults:Ese})};function Ese(e,r,t){function a(T,x){return $x.coerce(e,r,Dse,T,x)}var n=a("visible"),i=a("clicktoshow");if(n||i){Lse(e,r,t,a);for(var l=r.showarrow,o=["x","y"],s=[-10,-30],u={_fullLayout:t},f=0;f<2;f++){var c=o[f],h=Ss.coerceRef(e,r,u,c,"","paper");if(h!=="paper"){var d=Ss.getFromId(u,h);d._annIndices.push(r._index)}if(Ss.coercePosition(r,u,a,h,c,.5),l){var p="a"+c,m=Ss.coerceRef(e,r,u,p,"pixel",["pixel","paper"]);m!=="pixel"&&m!==h&&(m=r[p]="pixel");var y=m==="pixel"?s[f]:.4;Ss.coercePosition(r,u,a,m,p,y)}a(c+"anchor"),a(c+"shift")}if($x.noneOrAll(e,r,["x","y"]),l&&$x.noneOrAll(e,r,["ax","ay"]),i){var b=a("xclick"),_=a("yclick");r._xclick=b===void 0?r.x:Ss.cleanPosition(b,u,r.xref),r._yclick=_===void 0?r.y:Ss.cleanPosition(_,u,r.yref)}}}});var BP=O((Sxe,OP)=>{"use strict";var Kx=Pe(),Cs=Zr(),Pse=wp().draw;OP.exports=function(r){var t=r._fullLayout,a=Kx.filterVisible(t.annotations);if(a.length&&r._fullData.length)return Kx.syncOrAsync([Pse,Rse],r)};function Rse(e){var r=e._fullLayout;Kx.filterVisible(r.annotations).forEach(function(t){var a=Cs.getFromId(e,t.xref),n=Cs.getFromId(e,t.yref),i=Cs.getRefType(t.xref),l=Cs.getRefType(t.yref);t._extremes={},i==="range"&&HP(t,a),l==="range"&&HP(t,n)})}function HP(e,r){var t=r._id,a=t.charAt(0),n=e[a],i=e["a"+a],l=e[a+"ref"],o=e["a"+a+"ref"],s=e["_"+a+"padplus"],u=e["_"+a+"padminus"],f={x:1,y:-1}[a]*e[a+"shift"],c=3*e.arrowsize*e.arrowwidth||0,h=c+f,d=c-f,p=3*e.startarrowsize*e.arrowwidth||0,m=p+f,y=p-f,b;if(o===l){var _=Cs.findExtremes(r,[r.r2c(n)],{ppadplus:h,ppadminus:d}),T=Cs.findExtremes(r,[r.r2c(i)],{ppadplus:Math.max(s,m),ppadminus:Math.max(u,y)});b={min:[_.min[0],T.min[0]],max:[_.max[0],T.max[0]]}}else m=i?m+i:m,y=i?y-i:y,b=Cs.findExtremes(r,[r.r2c(n)],{ppadplus:Math.max(s,h,m),ppadminus:Math.max(u,d,y)});e._extremes[t]=b}});var VP=O((Cxe,YP)=>{"use strict";var zse=zr(),Nse=mh();YP.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",l=a==="linear"&&t.type==="log";if(!(i||l))return;var o=r._fullLayout.annotations,s=t._id.charAt(0),u,f;function c(d){var p=u[d],m=null;i?m=Nse(p,t.range):m=Math.pow(10,p),zse(m)||(m=null),n(f+d,m)}for(var h=0;h{"use strict";var Qx=wp(),GP=zP();UP.exports={moduleType:"component",name:"annotations",layoutAttributes:uf(),supplyLayoutDefaults:IP(),includeBasePlot:Av()("annotations"),calcAutorange:BP(),draw:Qx.draw,drawOne:Qx.drawOne,drawRaw:Qx.drawRaw,hasClickToShow:GP.hasClickToShow,onClick:GP.onClick,convertCoords:VP()}});var Tp=O((Dxe,XP)=>{"use strict";var ht=uf(),Fse=ui().overrideAll,Ise=lt().templatedArray;XP.exports=Fse(Ise("annotation",{visible:ht.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:ht.xanchor,xshift:ht.xshift,yanchor:ht.yanchor,yshift:ht.yshift,text:ht.text,textangle:ht.textangle,font:ht.font,width:ht.width,height:ht.height,opacity:ht.opacity,align:ht.align,valign:ht.valign,bgcolor:ht.bgcolor,bordercolor:ht.bordercolor,borderpad:ht.borderpad,borderwidth:ht.borderwidth,showarrow:ht.showarrow,arrowcolor:ht.arrowcolor,arrowhead:ht.arrowhead,startarrowhead:ht.startarrowhead,arrowside:ht.arrowside,arrowsize:ht.arrowsize,startarrowsize:ht.startarrowsize,arrowwidth:ht.arrowwidth,standoff:ht.standoff,startstandoff:ht.startstandoff,hovertext:ht.hovertext,hoverlabel:ht.hoverlabel,captureevents:ht.captureevents}),"calc","from-root")});var JP=O((Exe,ZP)=>{"use strict";var jx=Pe(),Hse=Zr(),Ose=Bn(),Bse=Jx(),Yse=Tp();ZP.exports=function(r,t,a){Ose(r,t,{name:"annotations",handleItemDefaults:Vse,fullLayout:a.fullLayout})};function Vse(e,r,t,a){function n(o,s){return jx.coerce(e,r,Yse,o,s)}function i(o){var s=o+"axis",u={_fullLayout:{}};return u._fullLayout[s]=t[s],Hse.coercePosition(r,u,n,o,o,.5)}var l=n("visible");l&&(Bse(e,r,a.fullLayout,n),i("x"),i("y"),i("z"),jx.noneOrAll(e,r,["x","y","z"]),r.xref="x",r.yref="y",r.zref="z",n("xanchor"),n("yanchor"),n("xshift"),n("yshift"),r.showarrow&&(r.axref="pixel",r.ayref="pixel",n("ax",-10),n("ay",-30),jx.noneOrAll(e,r,["ax","ay"])))}});var jP=O((Pxe,QP)=>{"use strict";var $P=Pe(),KP=Zr();QP.exports=function(r){for(var t=r.fullSceneLayout,a=t.annotations,n=0;n{"use strict";function eb(e,r){var t=[0,0,0,0],a,n;for(a=0;a<4;++a)for(n=0;n<4;++n)t[n]+=e[4*a+n]*r[a];return t}function Use(e,r){var t=eb(e.projection,eb(e.view,eb(e.model,[r[0],r[1],r[2],1])));return t}eR.exports=Use});var aR=O((zxe,tR)=>{"use strict";var Wse=wp().drawRaw,Xse=rR(),Zse=["x","y","z"];tR.exports=function(r){for(var t=r.fullSceneLayout,a=r.dataScale,n=t.annotations,i=0;i1){o=!0;break}}o?r.fullLayout._infolayer.select(".annotation-"+r.id+'[data-index="'+i+'"]').remove():(l._pdata=Xse(r.glplot.cameraParams,[t.xaxis.r2l(l.x)*a[0],t.yaxis.r2l(l.y)*a[1],t.zaxis.r2l(l.z)*a[2]]),Wse(r.graphDiv,l,i,r.id,l._xa,l._ya))}}});var lR=O((Nxe,iR)=>{"use strict";var Jse=gr(),nR=Pe();iR.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:Tp()}}},layoutAttributes:Tp(),handleDefaults:JP(),includeBasePlot:$se,convert:jP(),draw:aR()};function $se(e,r){var t=Jse.subplotsRegistry.gl3d;if(t)for(var a=t.attrRegex,n=Object.keys(e),i=0;i{"use strict";var oR=uf(),sR=aa(),uR=bi().line,Kse=fi().dash,Ai=mt().extendFlat,Qse=lt().templatedArray,Fxe=Mv(),wf=tn(),{shapeTexttemplateAttrs:jse,templatefallbackAttrs:eue}=gn(),rue=Ah();fR.exports=Qse("shape",{visible:Ai({},wf.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:Ai({},wf.legend,{editType:"calc+arraydraw"}),legendgroup:Ai({},wf.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:Ai({},wf.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:sR({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:Ai({},wf.legendrank,{editType:"calc+arraydraw"}),legendwidth:Ai({},wf.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:Ai({},oR.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:Ai({},oR.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:Ai({},uR.color,{editType:"arraydraw"}),width:Ai({},uR.width,{editType:"calc+arraydraw"}),dash:Ai({},Kse,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:jse({},{keys:Object.keys(rue)}),texttemplatefallback:eue({editType:"arraydraw"}),font:sR({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var hR=O((Hxe,vR)=>{"use strict";var Xv=Pe(),Tf=Zr(),tue=Bn(),aue=rb(),cR=eo();vR.exports=function(r,t){tue(r,t,{name:"shapes",handleItemDefaults:iue})};function nue(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}function iue(e,r,t){function a(V,K){return Xv.coerce(e,r,aue,V,K)}r._isShape=!0;var n=a("visible");if(n){var i=a("showlegend");i&&(a("legend"),a("legendwidth"),a("legendgroup"),a("legendgrouptitle.text"),Xv.coerceFont(a,"legendgrouptitle.font"),a("legendrank"));var l=a("path"),o=l?"path":"rect",s=a("type",o),u=s!=="path";u&&delete r.path,a("editable"),a("layer"),a("opacity"),a("fillcolor"),a("fillrule");var f=a("line.width");f&&(a("line.color"),a("line.dash"));for(var c=a("xsizemode"),h=a("ysizemode"),d=["x","y"],p=0;p<2;p++){var m=d[p],y=m+"anchor",b=m==="x"?c:h,_={_fullLayout:t},T,x,M,k=Tf.coerceRef(e,r,_,m,void 0,"paper"),A=Tf.getRefType(k);if(A==="range"?(T=Tf.getFromId(_,k),T._shapeIndices.push(r._index),M=cR.rangeToShapePosition(T),x=cR.shapePositionToRange(T),(T.type==="category"||T.type==="multicategory")&&(a(m+"0shift"),a(m+"1shift"))):x=M=Xv.identity,u){var C=.25,D=.75,E=m+"0",R=m+"1",N=e[E],I=e[R];e[E]=x(e[E],!0),e[R]=x(e[R],!0),b==="pixel"?(a(E,0),a(R,10)):(Tf.coercePosition(r,_,a,k,E,C),Tf.coercePosition(r,_,a,k,R,D)),r[E]=M(r[E]),r[R]=M(r[R]),e[E]=N,e[R]=I}if(b==="pixel"){var H=e[y];e[y]=x(e[y],!0),Tf.coercePosition(r,_,a,k,y,.25),r[y]=M(r[y]),e[y]=H}}u&&Xv.noneOrAll(e,r,["x0","x1","y0","y1"]);var G=s==="line",W,Y;if(u&&(W=a("label.texttemplate"),a("label.texttemplatefallback")),W||(Y=a("label.text")),Y||W){a("label.textangle");var B=a("label.textposition",G?"middle":"middle center");a("label.xanchor"),a("label.yanchor",nue(G,B)),a("label.padding"),Xv.coerceFont(a,"label.font",t.font)}}}});var mR=O((Oxe,pR)=>{"use strict";var lue=xr(),dR=Pe();function oue(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}pR.exports=function(r,t,a){a("newshape.visible"),a("newshape.name"),a("newshape.showlegend"),a("newshape.legend"),a("newshape.legendwidth"),a("newshape.legendgroup"),a("newshape.legendgrouptitle.text"),dR.coerceFont(a,"newshape.legendgrouptitle.font"),a("newshape.legendrank"),a("newshape.drawdirection"),a("newshape.layer"),a("newshape.fillcolor"),a("newshape.fillrule"),a("newshape.opacity");var n=a("newshape.line.width");if(n){var i=(r||{}).plot_bgcolor||"#FFF";a("newshape.line.color",lue.contrast(i)),a("newshape.line.dash")}var l=r.dragmode==="drawline",o=a("newshape.label.text"),s=a("newshape.label.texttemplate");if(a("newshape.label.texttemplatefallback"),o||s){a("newshape.label.textangle");var u=a("newshape.label.textposition",l?"middle":"middle center");a("newshape.label.xanchor"),a("newshape.label.yanchor",oue(l,u)),a("newshape.label.padding"),dR.coerceFont(a,"newshape.label.font",t.font)}a("activeshape.fillcolor"),a("activeshape.opacity")}});var _R=O((Bxe,bR)=>{"use strict";var tb=Pe(),Mf=Zr(),Af=iv(),gR=eo();bR.exports=function(r){var t=r._fullLayout,a=tb.filterVisible(t.shapes);if(!(!a.length||!r._fullData.length))for(var n=0;n0?u+l:l;return{ppad:l,ppadplus:o?c:h,ppadminus:o?h:c}}else return{ppad:l}}function yR(e,r,t){var a=e._id.charAt(0)==="x"?"x":"y",n=e.type==="category"||e.type==="multicategory",i,l,o=0,s=0,u=n?e.r2c:e.d2c,f=r[a+"sizemode"]==="scaled";if(f?(i=r[a+"0"],l=r[a+"1"],n&&(o=r[a+"0shift"],s=r[a+"1shift"])):(i=r[a+"anchor"],l=r[a+"anchor"]),i!==void 0)return[u(i)+o,u(l)+s];if(r.path){var c=1/0,h=-1/0,d=r.path.match(Af.segmentRE),p,m,y,b,_;for(e.type==="date"&&(u=gR.decodeDate(u)),p=0;ph&&(h=_)));if(h>=c)return[c,h]}}});var MR=O((Yxe,TR)=>{"use strict";var wR=v1();TR.exports={moduleType:"component",name:"shapes",layoutAttributes:rb(),supplyLayoutDefaults:hR(),supplyDrawNewShapeDefaults:mR(),includeBasePlot:Av()("shapes"),calcAutorange:_R(),draw:wR.draw,drawOne:wR.drawOne}});var ab=O((Gxe,kR)=>{"use strict";var AR=Ma(),fue=lt().templatedArray,Vxe=Mv();kR.exports=fue("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",AR.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",AR.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var SR=O((Uxe,qR)=>{"use strict";var cue=Pe(),nb=Zr(),vue=Bn(),hue=ab(),due="images";qR.exports=function(r,t){var a={name:due,handleItemDefaults:pue};vue(r,t,a)};function pue(e,r,t){function a(h,d){return cue.coerce(e,r,hue,h,d)}var n=a("source"),i=a("visible",!!n);if(!i)return r;a("layer"),a("xanchor"),a("yanchor"),a("sizex"),a("sizey"),a("sizing"),a("opacity");for(var l={_fullLayout:t},o=["x","y"],s=0;s<2;s++){var u=o[s],f=nb.coerceRef(e,r,l,u,"paper",void 0);if(f!=="paper"){var c=nb.getFromId(l,f);c._imgIndices.push(r._index)}nb.coercePosition(r,l,a,f,u,0)}return r}});var ER=O((Wxe,DR)=>{"use strict";var CR=kr(),mue=Yr(),kf=Zr(),LR=Ut(),yue=jo();DR.exports=function(r){var t=r._fullLayout,a=[],n={},i=[],l,o;for(o=0;o{"use strict";var PR=zr(),gue=mh();RR.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",l=a==="linear"&&t.type==="log";if(i||l){for(var o=r._fullLayout.images,s=t._id.charAt(0),u,f,c=0;c{"use strict";NR.exports={moduleType:"component",name:"images",layoutAttributes:ab(),supplyLayoutDefaults:SR(),includeBasePlot:Av()("images"),draw:ER(),convertCoords:zR()}});var Mp=O((Jxe,IR)=>{"use strict";IR.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var ib=O(($xe,OR)=>{"use strict";var xue=aa(),bue=Fn(),_ue=mt().extendFlat,wue=ui().overrideAll,Tue=kh(),HR=lt().templatedArray,Mue=HR("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});OR.exports=wue(HR("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:Mue,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:_ue(Tue({editType:"arraydraw"}),{}),font:xue({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:bue.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var GR=O((Kxe,VR)=>{"use strict";var Ap=Pe(),BR=Bn(),YR=ib(),Aue=Mp(),kue=Aue.name,que=YR.buttons;VR.exports=function(r,t){var a={name:kue,handleItemDefaults:Sue};BR(r,t,a)};function Sue(e,r,t){function a(l,o){return Ap.coerce(e,r,YR,l,o)}var n=BR(e,r,{name:"buttons",handleItemDefaults:Cue}),i=a("visible",n.length>0);i&&(a("active"),a("direction"),a("type"),a("showactive"),a("x"),a("y"),Ap.noneOrAll(e,r,["x","y"]),a("xanchor"),a("yanchor"),a("pad.t"),a("pad.r"),a("pad.b"),a("pad.l"),Ap.coerceFont(a,"font",t.font),a("bgcolor",t.paper_bgcolor),a("bordercolor"),a("borderwidth"))}function Cue(e,r){function t(n,i){return Ap.coerce(e,r,que,n,i)}var a=t("visible",e.method==="skip"||Array.isArray(e.args));a&&(t("method"),t("args"),t("args2"),t("label"),t("execute"))}});var XR=O((Qxe,WR)=>{"use strict";WR.exports=At;var ki=kr(),UR=xr(),qf=Yr(),kp=Pe();function At(e,r,t){this.gd=e,this.container=r,this.id=t,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}At.barWidth=2;At.barLength=20;At.barRadius=2;At.barPad=1;At.barColor="#808BA4";At.prototype.enable=function(r,t,a){var n=this.gd._fullLayout,i=n.width,l=n.height;this.position=r;var o=this.position.l,s=this.position.w,u=this.position.t,f=this.position.h,c=this.position.direction,h=c==="down",d=c==="left",p=c==="right",m=c==="up",y=s,b=f,_,T,x,M;!h&&!d&&!p&&!m&&(this.position.direction="down",h=!0);var k=h||m;k?(_=o,T=_+y,h?(x=u,M=Math.min(x+b,l),b=M-x):(M=u+b,x=Math.max(M-b,0),b=M-x)):(x=u,M=x+b,d?(T=o+y,_=Math.max(T-y,0),y=T-_):(_=o,T=Math.min(_+y,i),y=T-_)),this._box={l:_,t:x,w:y,h:b};var A=s>y,C=At.barLength+2*At.barPad,D=At.barWidth+2*At.barPad,E=o,R=u+f;R+D>l&&(R=l-D);var N=this.container.selectAll("rect.scrollbar-horizontal").data(A?[0]:[]);N.exit().on(".drag",null).remove(),N.enter().append("rect").classed("scrollbar-horizontal",!0).call(UR.fill,At.barColor),A?(this.hbar=N.attr({rx:At.barRadius,ry:At.barRadius,x:E,y:R,width:C,height:D}),this._hbarXMin=E+C/2,this._hbarTranslateMax=y-C):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var I=f>b,H=At.barWidth+2*At.barPad,G=At.barLength+2*At.barPad,W=o+s,Y=u;W+H>i&&(W=i-H);var B=this.container.selectAll("rect.scrollbar-vertical").data(I?[0]:[]);B.exit().on(".drag",null).remove(),B.enter().append("rect").classed("scrollbar-vertical",!0).call(UR.fill,At.barColor),I?(this.vbar=B.attr({rx:At.barRadius,ry:At.barRadius,x:W,y:Y,width:H,height:G}),this._vbarYMin=Y+G/2,this._vbarTranslateMax=b-G):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var V=this.id,K=_-.5,J=I?T+H+.5:T+.5,re=x-.5,le=A?M+D+.5:M+.5,ue=n._topdefs.selectAll("#"+V).data(A||I?[0]:[]);if(ue.exit().remove(),ue.enter().append("clipPath").attr("id",V).append("rect"),A||I?(this._clipRect=ue.select("rect").attr({x:Math.floor(K),y:Math.floor(re),width:Math.ceil(J)-Math.floor(K),height:Math.ceil(le)-Math.floor(re)}),this.container.call(qf.setClipUrl,V,this.gd),this.bg.attr({x:o,y:u,width:s,height:f})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(qf.setClipUrl,null),delete this._clipRect),A||I){var ve=ki.behavior.drag().on("dragstart",function(){ki.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(ve);var j=ki.behavior.drag().on("dragstart",function(){ki.event.sourceEvent.preventDefault(),ki.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));A&&this.hbar.on(".drag",null).call(j),I&&this.vbar.on(".drag",null).call(j)}this.setTranslate(t,a)};At.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(qf.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};At.prototype._onBoxDrag=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r-=ki.event.dx),this.vbar&&(t-=ki.event.dy),this.setTranslate(r,t)};At.prototype._onBoxWheel=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r+=ki.event.deltaY),this.vbar&&(t+=ki.event.deltaY),this.setTranslate(r,t)};At.prototype._onBarDrag=function(){var r=this.translateX,t=this.translateY;if(this.hbar){var a=r+this._hbarXMin,n=a+this._hbarTranslateMax,i=kp.constrain(ki.event.x,a,n),l=(i-a)/(n-a),o=this.position.w-this._box.w;r=l*o}if(this.vbar){var s=t+this._vbarYMin,u=s+this._vbarTranslateMax,f=kp.constrain(ki.event.y,s,u),c=(f-s)/(u-s),h=this.position.h-this._box.h;t=c*h}this.setTranslate(r,t)};At.prototype.setTranslate=function(r,t){var a=this.position.w-this._box.w,n=this.position.h-this._box.h;if(r=kp.constrain(r||0,0,a),t=kp.constrain(t||0,0,n),this.translateX=r,this.translateY=t,this.container.call(qf.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-t),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+t-.5)}),this.hbar){var i=r/a;this.hbar.call(qf.setTranslate,r+i*this._hbarTranslateMax,t)}if(this.vbar){var l=t/n;this.vbar.call(qf.setTranslate,r,t+l*this._vbarTranslateMax)}}});var az=O((jxe,tz)=>{"use strict";var Sf=kr(),Zv=Rt(),Jv=xr(),Cf=Yr(),Cn=Pe(),qp=va(),Lue=lt().arrayEditor,JR=Ea().LINE_SPACING,wr=Mp(),Due=XR();tz.exports=function(r){var t=r._fullLayout,a=Cn.filterVisible(t[wr.name]);function n(h){Zv.autoMargin(r,ez(h))}var i=t._menulayer.selectAll("g."+wr.containerClassName).data(a.length>0?[0]:[]);if(i.enter().append("g").classed(wr.containerClassName,!0).style("cursor","pointer"),i.exit().each(function(){Sf.select(this).selectAll("g."+wr.headerGroupClassName).each(n)}).remove(),a.length!==0){var l=i.selectAll("g."+wr.headerGroupClassName).data(a,Eue);l.enter().append("g").classed(wr.headerGroupClassName,!0);for(var o=Cn.ensureSingle(i,"g",wr.dropdownButtonGroupClassName,function(h){h.style("pointer-events","all")}),s=0;s{"use strict";var Hue=Mp();nz.exports={moduleType:"component",name:Hue.name,layoutAttributes:ib(),supplyLayoutDefaults:GR(),draw:az()}});var Kv=O((rbe,lz)=>{"use strict";lz.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var ub=O((tbe,uz)=>{"use strict";var oz=aa(),Oue=kh(),Bue=mt().extendDeepAll,Yue=ui().overrideAll,Vue=Sc(),sz=lt().templatedArray,Ls=Kv(),Gue=sz("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});uz.exports=Yue(sz("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:Gue,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:Bue(Oue({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:Vue.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:oz({})},font:oz({}),activebgcolor:{valType:"color",dflt:Ls.gripBgActiveColor},bgcolor:{valType:"color",dflt:Ls.railBgColor},bordercolor:{valType:"color",dflt:Ls.railBorderColor},borderwidth:{valType:"number",min:0,dflt:Ls.railBorderWidth},ticklen:{valType:"number",min:0,dflt:Ls.tickLength},tickcolor:{valType:"color",dflt:Ls.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:Ls.minorTickLength}}),"arraydraw","from-root")});var hz=O((abe,vz)=>{"use strict";var Lf=Pe(),fz=Bn(),cz=ub(),Uue=Kv(),Wue=Uue.name,Xue=cz.steps;vz.exports=function(r,t){fz(r,t,{name:Wue,handleItemDefaults:Zue})};function Zue(e,r,t){function a(c,h){return Lf.coerce(e,r,cz,c,h)}for(var n=fz(e,r,{name:"steps",handleItemDefaults:Jue}),i=0,l=0;l{"use strict";var qi=kr(),Sp=Rt(),so=xr(),Si=Yr(),Ln=Pe(),$ue=Ln.strTranslate,Qv=va(),Kue=lt().arrayEditor,Pr=Kv(),vb=Ea(),mz=vb.LINE_SPACING,fb=vb.FROM_TL,cb=vb.FROM_BR;wz.exports=function(r){var t=r._context.staticPlot,a=r._fullLayout,n=Que(a,r),i=a._infolayer.selectAll("g."+Pr.containerClassName).data(n.length>0?[0]:[]);i.enter().append("g").classed(Pr.containerClassName,!0).style("cursor",t?null:"ew-resize");function l(f){f._commandObserver&&(f._commandObserver.remove(),delete f._commandObserver),Sp.autoMargin(r,yz(f))}if(i.exit().each(function(){qi.select(this).selectAll("g."+Pr.groupClassName).each(l)}).remove(),n.length!==0){var o=i.selectAll("g."+Pr.groupClassName).data(n,jue);o.enter().append("g").classed(Pr.groupClassName,!0),o.exit().each(l).remove();for(var s=0;s0&&(o=o.transition().duration(r.transition.duration).ease(r.transition.easing)),o.attr("transform",$ue(l-Pr.gripWidth*.5,r._dims.currentValueTotalHeight))}}function hb(e,r){var t=e._dims;return t.inputAreaStart+Pr.stepInset+(t.inputAreaLength-2*Pr.stepInset)*Math.min(1,Math.max(0,r))}function pz(e,r){var t=e._dims;return Math.min(1,Math.max(0,(r-Pr.stepInset-t.inputAreaStart)/(t.inputAreaLength-2*Pr.stepInset-2*t.inputAreaStart)))}function lfe(e,r,t){var a=t._dims,n=Ln.ensureSingle(e,"rect",Pr.railTouchRectClass,function(i){i.call(bz,r,e,t).style("pointer-events","all")});n.attr({width:a.inputAreaLength,height:Math.max(a.inputAreaWidth,Pr.tickOffset+t.ticklen+a.labelHeight)}).call(so.fill,t.bgcolor).attr("opacity",0),Si.setTranslate(n,0,a.currentValueTotalHeight)}function ofe(e,r){var t=r._dims,a=t.inputAreaLength-Pr.railInset*2,n=Ln.ensureSingle(e,"rect",Pr.railRectClass);n.attr({width:a,height:Pr.railWidth,rx:Pr.railRadius,ry:Pr.railRadius,"shape-rendering":"crispEdges"}).call(so.stroke,r.bordercolor).call(so.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px"),Si.setTranslate(n,Pr.railInset,(t.inputAreaWidth-Pr.railWidth)*.5+t.currentValueTotalHeight)}});var Az=O((ibe,Mz)=>{"use strict";var sfe=Kv();Mz.exports={moduleType:"component",name:sfe.name,layoutAttributes:ub(),supplyLayoutDefaults:hz(),draw:Tz()}});var Lp=O((lbe,qz)=>{"use strict";var kz=Fn();qz.exports={bgcolor:{valType:"color",dflt:kz.background,editType:"plot"},bordercolor:{valType:"color",dflt:kz.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var db=O((obe,Sz)=>{"use strict";Sz.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var Dp=O((sbe,Cz)=>{"use strict";Cz.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var Ez=O(Pp=>{"use strict";var ufe=Ut(),ffe=va(),Lz=Dp(),cfe=Ea().LINE_SPACING,Ep=Lz.name;function Dz(e){var r=e&&e[Ep];return r&&r.visible}Pp.isVisible=Dz;Pp.makeData=function(e){for(var r=ufe.list({_fullLayout:e},"x",!0),t=e.margin,a=[],n=0;n{"use strict";var Rp=Pe(),Pz=lt(),Rz=Ut(),vfe=Lp(),hfe=db();zz.exports=function(r,t,a){var n=r[a],i=t[a];if(!(n.rangeslider||t._requestRangeslider[i._id]))return;Rp.isPlainObject(n.rangeslider)||(n.rangeslider={});var l=n.rangeslider,o=Pz.newContainer(i,"rangeslider");function s(M,k){return Rp.coerce(l,o,vfe,M,k)}var u,f;function c(M,k){return Rp.coerce(u,f,hfe,M,k)}var h=s("visible");if(h){s("bgcolor",t.plot_bgcolor),s("bordercolor"),s("borderwidth"),s("thickness"),s("autorange",!i.isValidRange(l.range)),s("range");var d=t._subplots;if(d)for(var p=d.cartesian.filter(function(M){return M.substr(0,M.indexOf("y"))===Rz.name2id(a)}).map(function(M){return M.substr(M.indexOf("y"),M.length)}),m=Rp.simpleMap(p,Rz.id2name),y=0;y{"use strict";var dfe=Ut().list,pfe=Xc().getAutoRange,mfe=Dp();Fz.exports=function(r){for(var t=dfe(r,"x",!0),a=0;a{"use strict";var zp=kr(),yfe=gr(),gfe=Rt(),Ft=Pe(),Np=Ft.strTranslate,Oz=Yr(),uo=xr(),xfe=Uc(),bfe=gl(),pb=Ut(),_fe=mi(),wfe=Kl(),Hr=Dp();Bz.exports=function(e){for(var r=e._fullLayout,t=r._rangeSliderData,a=0;a=B.max)W=R[Y+1];else if(G=B.pmax)W=R[Y+1];else if(G0?e.touches[0].clientX:0}function Tfe(e,r,t,a){if(r._context.staticPlot)return;var n=e.select("rect."+Hr.slideBoxClassName).node(),i=e.select("rect."+Hr.grabAreaMinClassName).node(),l=e.select("rect."+Hr.grabAreaMaxClassName).node();function o(){var s=zp.event,u=s.target,f=Hz(s),c=f-e.node().getBoundingClientRect().left,h=a.d2p(t._rl[0]),d=a.d2p(t._rl[1]),p=_fe.coverSlip();this.addEventListener("touchmove",m),this.addEventListener("touchend",y),p.addEventListener("mousemove",m),p.addEventListener("mouseup",y);function m(b){var _=Hz(b),T=+_-f,x,M,k;switch(u){case n:if(k="ew-resize",h+T>t._length||d+T<0)return;x=h+T,M=d+T;break;case i:if(k="col-resize",h+T>t._length)return;x=h+T,M=d;break;case l:if(k="col-resize",d+T<0)return;x=h,M=d+T;break;default:k="ew-resize",x=c,M=c+T;break}if(M{"use strict";var Pfe=Pe(),Rfe=Lp(),zfe=db(),mb=Ez();Vz.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:Pfe.extendFlat({},Rfe,{yaxis:zfe})}}},layoutAttributes:Lp(),handleDefaults:Nz(),calcAutorange:Iz(),draw:Yz(),isVisible:mb.isVisible,makeData:mb.makeData,autoMarginOpts:mb.autoMarginOpts}});var Fp=O((dbe,Wz)=>{"use strict";var Nfe=aa(),Uz=Fn(),Ffe=lt().templatedArray,Ife=Ffe("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});Wz.exports={visible:{valType:"boolean",editType:"plot"},buttons:Ife,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:Nfe({editType:"plot"}),bgcolor:{valType:"color",dflt:Uz.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:Uz.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var yb=O((pbe,Xz)=>{"use strict";Xz.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var $z=O((mbe,Jz)=>{"use strict";var Ip=Pe(),Hfe=xr(),Ofe=lt(),Bfe=Bn(),Zz=Fp(),gb=yb();Jz.exports=function(r,t,a,n,i){var l=r.rangeselector||{},o=Ofe.newContainer(t,"rangeselector");function s(d,p){return Ip.coerce(l,o,Zz,d,p)}var u=Bfe(l,o,{name:"buttons",handleItemDefaults:Yfe,calendar:i}),f=s("visible",u.length>0);if(f){var c=Vfe(t,a,n);s("x",c[0]),s("y",c[1]),Ip.noneOrAll(r,t,["x","y"]),s("xanchor"),s("yanchor"),Ip.coerceFont(s,"font",a.font);var h=s("bgcolor");s("activecolor",Hfe.contrast(h,gb.lightAmount,gb.darkAmount)),s("bordercolor"),s("borderwidth")}};function Yfe(e,r,t,a){var n=a.calendar;function i(s,u){return Ip.coerce(e,r,Zz.buttons,s,u)}var l=i("visible");if(l){var o=i("step");o!=="all"&&(n&&n!=="gregorian"&&(o==="month"||o==="year")?r.stepmode="backward":i("stepmode"),i("count")),i("label")}}function Vfe(e,r,t){for(var a=t.filter(function(o){return r[o].anchor===e._id}),n=0,i=0;i{"use strict";var Gfe=qy(),Ufe=Pe().titleCase;Kz.exports=function(r,t){var a=r._name,n={};if(t.step==="all")n[a+".autorange"]=!0;else{var i=Wfe(r,t);n[a+".range[0]"]=i[0],n[a+".range[1]"]=i[1]}return n};function Wfe(e,r){var t=e.range,a=new Date(e.r2l(t[1])),n=r.step,i=Gfe["utc"+Ufe(n)],l=r.count,o;switch(r.stepmode){case"backward":o=e.l2r(+i.offset(a,-l));break;case"todate":var s=i.offset(a,-l);o=e.l2r(+i.ceil(s));break}var u=t[1];return[o,u]}});var lN=O((gbe,iN)=>{"use strict";var Op=kr(),Xfe=gr(),Zfe=Rt(),jz=xr(),nN=Yr(),bl=Pe(),eN=bl.strTranslate,Hp=va(),Jfe=Ut(),_b=Ea(),rN=_b.LINE_SPACING,tN=_b.FROM_TL,aN=_b.FROM_BR,bb=yb(),$fe=Qz();iN.exports=function(r){var t=r._fullLayout,a=t._infolayer.selectAll(".rangeselector").data(Kfe(r),Qfe);a.enter().append("g").classed("rangeselector",!0),a.exit().remove(),a.style({cursor:"pointer","pointer-events":"all"}),a.each(function(n){var i=Op.select(this),l=n,o=l.rangeselector,s=i.selectAll("g.button").data(bl.filterVisible(o.buttons));s.enter().append("g").classed("button",!0),s.exit().remove(),s.each(function(u){var f=Op.select(this),c=$fe(l,u);u._isActive=jfe(l,u,c),f.call(xb,o,u),f.call(rce,o,u,r),f.on("click",function(){r._dragged||Xfe.call("_guiRelayout",r,c)}),f.on("mouseover",function(){u._isHovered=!0,f.call(xb,o,u)}),f.on("mouseout",function(){u._isHovered=!1,f.call(xb,o,u)})}),ace(r,s,o,l._name,i)})};function Kfe(e){for(var r=Jfe.list(e,"x",!0),t=[],a=0;a{"use strict";oN.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:Fp()}}},layoutAttributes:Fp(),handleDefaults:$z(),draw:lN()}});var fo=O(wb=>{"use strict";var uN=mt().extendFlat;wb.attributes=function(e,r){e=e||{},r=r||{};var t={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},a=e.name?e.name+" ":"",n=e.trace?"trace ":"subplot ",i=r.description?" "+r.description:"",l={x:uN({},t,{}),y:uN({},t,{}),editType:e.editType};return e.noGridCell||(l.row={valType:"integer",min:0,dflt:0,editType:e.editType},l.column={valType:"integer",min:0,dflt:0,editType:e.editType}),l};wb.defaults=function(e,r,t,a){var n=a&&a.x||[0,1],i=a&&a.y||[0,1],l=r.grid;if(l){var o=t("domain.column");o!==void 0&&(o{"use strict";var nce=Pe(),ice=yu().counter,lce=fo().attributes,fN=Ma().idRegex,oce=lt(),Tb={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[ice("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[fN.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[fN.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:lce({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function Bp(e,r,t){var a=r[t+"axes"],n=Object.keys((e._splomAxes||{})[t]||{});if(Array.isArray(a))return a;if(n.length)return n}function sce(e,r){var t=e.grid||{},a=Bp(r,t,"x"),n=Bp(r,t,"y");if(!e.grid&&!a&&!n)return;var i=Array.isArray(t.subplots)&&Array.isArray(t.subplots[0]),l=Array.isArray(a),o=Array.isArray(n),s=l&&a!==t.xaxes&&o&&n!==t.yaxes,u,f;i?(u=t.subplots.length,f=t.subplots[0].length):(o&&(u=n.length),l&&(f=a.length));var c=oce.newContainer(r,"grid");function h(k,A){return nce.coerce(t,c,Tb,k,A)}var d=h("rows",u),p=h("columns",f);if(!(d*p>1)){delete r.grid;return}if(!i&&!l&&!o){var m=h("pattern")==="independent";m&&(i=!0)}c._hasSubplotGrid=i;var y=h("roworder"),b=y==="top to bottom",_=i?.2:.1,T=i?.3:.1,x,M;s&&r._splomGridDflt&&(x=r._splomGridDflt.xside,M=r._splomGridDflt.yside),c._domains={x:cN("x",h,_,x,p),y:cN("y",h,T,M,d,b)}}function cN(e,r,t,a,n,i){var l=r(e+"gap",t),o=r("domain."+e);r(e+"side",a);for(var s=new Array(n),u=o[0],f=(o[1]-u)/(n-l),c=f*(1-l),h=0;h{"use strict";pN.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var gN=O((Tbe,yN)=>{"use strict";var mN=zr(),fce=gr(),cce=Pe(),vce=lt(),hce=Mb();yN.exports=function(e,r,t,a){var n="error_"+a.axis,i=vce.newContainer(r,n),l=e[n]||{};function o(p,m){return cce.coerce(l,i,hce,p,m)}var s=l.array!==void 0||l.value!==void 0||l.type==="sqrt",u=o("visible",s);if(u!==!1){var f=o("type","array"in l?"data":"percent"),c=!0;f!=="sqrt"&&(c=o("symmetric",!((f==="data"?"arrayminus":"valueminus")in l))),f==="data"?(o("array"),o("traceref"),c||(o("arrayminus"),o("tracerefminus"))):(f==="percent"||f==="constant")&&(o("value"),c||o("valueminus"));var h="copy_"+a.inherit+"style";if(a.inherit){var d=r["error_"+a.inherit];(d||{}).visible&&o(h,!(l.color||mN(l.thickness)||mN(l.width)))}(!a.inherit||!i[h])&&(o("color",t),o("thickness"),o("width",fce.traceIs(r,"gl3d")?0:4))}}});var Ab=O((Mbe,bN)=>{"use strict";bN.exports=function(r){var t=r.type,a=r.symmetric;if(t==="data"){var n=r.array||[];if(a)return function(u,f){var c=+n[f];return[c,c]};var i=r.arrayminus||[];return function(u,f){var c=+n[f],h=+i[f];return!isNaN(c)||!isNaN(h)?[h||0,c||0]:[NaN,NaN]}}else{var l=xN(t,r.value),o=xN(t,r.valueminus);return a||r.valueminus===void 0?function(u){var f=l(u);return[f,f]}:function(u){return[o(u),l(u)]}}};function xN(e,r){if(e==="percent")return function(t){return Math.abs(t*r/100)};if(e==="constant")return function(){return Math.abs(r)};if(e==="sqrt")return function(t){return Math.sqrt(Math.abs(t))}}});var TN=O((Abe,wN)=>{"use strict";var kb=zr(),dce=gr(),qb=Zr(),pce=Pe(),mce=Ab();wN.exports=function(r){for(var t=r.calcdata,a=0;a{"use strict";var MN=kr(),co=zr(),yce=Yr(),gce=wn();AN.exports=function(r,t,a,n){var i,l=a.xaxis,o=a.yaxis,s=n&&n.duration>0,u=r._context.staticPlot;t.each(function(f){var c=f[0].trace,h=c.error_x||{},d=c.error_y||{},p;c.ids&&(p=function(_){return _.id});var m=gce.hasMarkers(c)&&c.marker.maxdisplayed>0;!d.visible&&!h.visible&&(f=[]);var y=MN.select(this).selectAll("g.errorbar").data(f,p);if(y.exit().remove(),!!f.length){h.visible||y.selectAll("path.xerror").remove(),d.visible||y.selectAll("path.yerror").remove(),y.style("opacity",1);var b=y.enter().append("g").classed("errorbar",!0);s&&b.style("opacity",0).transition().duration(n.duration).style("opacity",1),yce.setClipUrl(y,a.layerClipId,r),y.each(function(_){var T=MN.select(this),x=xce(_,l,o);if(!(m&&!_.vis)){var M,k=T.select("path.yerror");if(d.visible&&co(x.x)&&co(x.yh)&&co(x.ys)){var A=d.width;M="M"+(x.x-A)+","+x.yh+"h"+2*A+"m-"+A+",0V"+x.ys,x.noYS||(M+="m-"+A+",0h"+2*A),i=!k.size(),i?k=T.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("yerror",!0):s&&(k=k.transition().duration(n.duration).ease(n.easing)),k.attr("d",M)}else k.remove();var C=T.select("path.xerror");if(h.visible&&co(x.y)&&co(x.xh)&&co(x.xs)){var D=(h.copy_ystyle?d:h).width;M="M"+x.xh+","+(x.y-D)+"v"+2*D+"m0,-"+D+"H"+x.xs,x.noXS||(M+="m0,-"+D+"v"+2*D),i=!C.size(),i?C=T.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("xerror",!0):s&&(C=C.transition().duration(n.duration).ease(n.easing)),C.attr("d",M)}else C.remove()}})}})};function xce(e,r,t){var a={x:r.c2p(e.x),y:t.c2p(e.y)};return e.yh!==void 0&&(a.yh=t.c2p(e.yh),a.ys=t.c2p(e.ys),co(a.ys)||(a.noYS=!0,a.ys=t.c2p(e.ys,!0))),e.xh!==void 0&&(a.xh=r.c2p(e.xh),a.xs=r.c2p(e.xs),co(a.xs)||(a.noXS=!0,a.xs=r.c2p(e.xs,!0))),a}});var CN=O((qbe,SN)=>{"use strict";var bce=kr(),qN=xr();SN.exports=function(r){r.each(function(t){var a=t[0].trace,n=a.error_y||{},i=a.error_x||{},l=bce.select(this);l.selectAll("path.yerror").style("stroke-width",n.thickness+"px").call(qN.stroke,n.color),i.copy_ystyle&&(i=n),l.selectAll("path.xerror").style("stroke-width",i.thickness+"px").call(qN.stroke,i.color)})}});var EN=O((Sbe,DN)=>{"use strict";var jv=Pe(),LN=ui().overrideAll,e0=Mb(),Ds={error_x:jv.extendFlat({},e0),error_y:jv.extendFlat({},e0)};delete Ds.error_x.copy_zstyle;delete Ds.error_y.copy_zstyle;delete Ds.error_y.copy_ystyle;var r0={error_x:jv.extendFlat({},e0),error_y:jv.extendFlat({},e0),error_z:jv.extendFlat({},e0)};delete r0.error_x.copy_ystyle;delete r0.error_y.copy_ystyle;delete r0.error_z.copy_ystyle;delete r0.error_z.copy_zstyle;DN.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Ds,bar:Ds,histogram:Ds,scatter3d:LN(r0,"calc","nested"),scattergl:LN(Ds,"calc","nested")}},supplyDefaults:gN(),calc:TN(),makeComputeError:Ab(),plot:kN(),style:CN(),hoverInfo:_ce};function _ce(e,r,t){(r.error_y||{}).visible&&(t.yerr=e.yh-e.y,r.error_y.symmetric||(t.yerrneg=e.y-e.ys)),(r.error_x||{}).visible&&(t.xerr=e.xh-e.x,r.error_x.symmetric||(t.xerrneg=e.x-e.xs))}});var RN=O((Cbe,PN)=>{"use strict";PN.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var BN=O((Lbe,ON)=>{"use strict";var vo=kr(),Sb=Nn(),Vp=Rt(),zN=gr(),_l=Zr(),Yp=mi(),ri=Pe(),Li=ri.strTranslate,HN=mt().extendFlat,Cb=Kl(),Ci=Yr(),Lb=xr(),wce=Uc(),Tce=va(),Mce=bn().flipScale,Ace=vp(),kce=dp(),qce=_n(),Db=Ea(),NN=Db.LINE_SPACING,FN=Db.FROM_TL,IN=Db.FROM_BR,Tt=RN().cn;function Sce(e){var r=e._fullLayout,t=r._infolayer.selectAll("g."+Tt.colorbar).data(Cce(e),function(a){return a._id});t.enter().append("g").attr("class",function(a){return a._id}).classed(Tt.colorbar,!0),t.each(function(a){var n=vo.select(this);ri.ensureSingle(n,"rect",Tt.cbbg),ri.ensureSingle(n,"g",Tt.cbfills),ri.ensureSingle(n,"g",Tt.cblines),ri.ensureSingle(n,"g",Tt.cbaxis,function(l){l.classed(Tt.crisp,!0)}),ri.ensureSingle(n,"g",Tt.cbtitleunshift,function(l){l.append("g").classed(Tt.cbtitle,!0)}),ri.ensureSingle(n,"rect",Tt.cboutline);var i=Lce(n,a,e);i&&i.then&&(e._promises||[]).push(i),e._context.edits.colorbarPosition&&Dce(n,a,e)}),t.exit().each(function(a){Vp.autoMargin(e,a._id)}).remove(),t.order()}function Cce(e){var r=e._fullLayout,t=e.calcdata,a=[],n,i,l,o;function s(T){return HN(T,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function u(){typeof o.calc=="function"?o.calc(e,l,n):(n._fillgradient=i.reversescale?Mce(i.colorscale):i.colorscale,n._zrange=[i[o.min],i[o.max]])}for(var f=0;f1){var Q=Math.pow(10,Math.floor(Math.log(U)/Math.LN10));ce*=Q*ri.roundUp(U/Q,[2,5,10]),(Math.abs(N.start)/N.size+1e-6)%1<2e-6&&(fe.tick0=0)}fe.dtick=ce}fe.domain=a?[j+p/x.h,j+V-p/x.h]:[j+d/x.w,j+V-d/x.w],fe.setScale(),e.attr("transform",Li(Math.round(x.l),Math.round(x.t)));var X=e.select("."+Tt.cbtitleunshift).attr("transform",Li(-Math.round(x.l),-Math.round(x.t))),ge=fe.ticklabelposition,Te=fe.title.font.size,ye=e.select("."+Tt.cbaxis),ze,Ie=0,Ee=0;function Fe(Ye,ie){var _e={propContainer:fe,propName:r._propPrefix+"title.text",traceIndex:r._traceIndex,_meta:r._meta,placeholder:T._dfltTitle.colorbar,containerGroup:e.select("."+Tt.cbtitle)},$e=Ye.charAt(0)==="h"?Ye.substr(1):"h"+Ye;e.selectAll("."+$e+",."+$e+"-math-group").remove(),wce.draw(t,Ye,HN(_e,ie||{}))}function Be(){if(a&&be||!a&&!be){var Ye,ie;C==="top"&&(Ye=d+x.l+K*m,ie=p+x.t+J*(1-j-V)+3+Te*.75),C==="bottom"&&(Ye=d+x.l+K*m,ie=p+x.t+J*(1-j)-3-Te*.25),C==="right"&&(ie=p+x.t+J*y+3+Te*.75,Ye=d+x.l+K*j),Fe(fe._id+"title",{attributes:{x:Ye,y:ie,"text-anchor":a?"start":"middle"}})}}function Ue(){if(a&&!be||!a&&be){var Ye=fe.position||0,ie=fe._offset+fe._length/2,_e,$e;if(C==="right")$e=ie,_e=x.l+K*Ye+10+Te*(fe.showticklabels?1:.5);else if(_e=ie,C==="bottom"&&($e=x.t+J*Ye+10+(ge.indexOf("inside")===-1?fe.tickfont.size:0)+(fe.ticks!=="inside"&&r.ticklen||0)),C==="top"){var hr=A.text.split("
").length;$e=x.t+J*Ye+10-W-NN*Te*hr}Fe((a?"h":"v")+fe._id+"title",{avoid:{selection:vo.select(t).selectAll("g."+fe._id+"tick"),side:C,offsetTop:a?0:x.t,offsetLeft:a?x.l:0,maxShift:a?T.width:T.height},attributes:{x:_e,y:$e,"text-anchor":"middle"},transform:{rotate:a?-90:0,offset:0}})}}function Le(){if(!a&&!be||a&&be){var Ye=e.select("."+Tt.cbtitle),ie=Ye.select("text"),_e=[-s/2,s/2],$e=Ye.select(".h"+fe._id+"title-math-group").node(),hr=15.6;ie.node()&&(hr=parseInt(ie.node().style.fontSize,10)*NN);var Re;if($e?(Re=Ci.bBox($e),Ee=Re.width,Ie=Re.height,Ie>hr&&(_e[1]-=(Ie-hr)/2)):ie.node()&&!ie.classed(Tt.jsPlaceholder)&&(Re=Ci.bBox(ie.node()),Ee=Re.width,Ie=Re.height),a){if(Ie){if(Ie+=5,C==="top")fe.domain[1]-=Ie/x.h,_e[1]*=-1;else{fe.domain[0]+=Ie/x.h;var Ae=Tce.lineCount(ie);_e[1]+=(1-Ae)*hr}Ye.attr("transform",Li(_e[0],_e[1])),fe.setScale()}}else Ee&&(C==="right"&&(fe.domain[0]+=(Ee+Te/2)/x.w),Ye.attr("transform",Li(_e[0],_e[1])),fe.setScale())}e.selectAll("."+Tt.cbfills+",."+Tt.cblines).attr("transform",a?Li(0,Math.round(x.h*(1-fe.domain[1]))):Li(Math.round(x.w*fe.domain[0]),0)),ye.attr("transform",a?Li(0,Math.round(-x.t)):Li(Math.round(-x.l),0));var Se=e.select("."+Tt.cbfills).selectAll("rect."+Tt.cbfill).attr("style","").data(H);Se.enter().append("rect").classed(Tt.cbfill,!0).attr("style",""),Se.exit().remove();var Oe=D.map(fe.c2p).map(Math.round).sort(function(tr,Ke){return tr-Ke});Se.each(function(tr,Ke){var Ne=[Ke===0?D[0]:(H[Ke]+H[Ke-1])/2,Ke===H.length-1?D[1]:(H[Ke]+H[Ke+1])/2].map(fe.c2p).map(Math.round);a&&(Ne[1]=ri.constrain(Ne[1]+(Ne[1]>Ne[0])?1:-1,Oe[0],Oe[1]));var ne=vo.select(this).attr(a?"x":"y",re).attr(a?"y":"x",vo.min(Ne)).attr(a?"width":"height",Math.max(W,2)).attr(a?"height":"width",Math.max(vo.max(Ne)-vo.min(Ne),2));if(r._fillgradient)Ci.gradient(ne,t,r._id,a?"vertical":"horizontalreversed",r._fillgradient,"fill");else{var oe=R(tr).replace("e-","");ne.attr("fill",Sb(oe).toHexString())}});var Je=e.select("."+Tt.cblines).selectAll("path."+Tt.cbline).data(k.color&&k.width?G:[]);Je.enter().append("path").classed(Tt.cbline,!0),Je.exit().remove(),Je.each(function(tr){var Ke=re,Ne=Math.round(fe.c2p(tr))+k.width/2%1;vo.select(this).attr("d","M"+(a?Ke+","+Ne:Ne+","+Ke)+(a?"h":"v")+W).call(Ci.lineGroupStyle,k.width,E(tr),k.dash)}),ye.selectAll("g."+fe._id+"tick,path").remove();var We=re+W+(s||0)/2-(r.ticks==="outside"?1:0),Xe=_l.calcTicks(fe),lr=_l.getTickSigns(fe)[2];return _l.drawTicks(t,fe,{vals:fe.ticks==="inside"?_l.clipEnds(fe,Xe):Xe,layer:ye,path:_l.makeTickPath(fe,We,lr),transFn:_l.makeTransTickFn(fe)}),_l.drawLabels(t,fe,{vals:Xe,layer:ye,transFn:_l.makeTransTickLabelFn(fe),labelFns:_l.makeLabelFns(fe,We)})}function He(){var Ye,ie=W+s/2;ge.indexOf("inside")===-1&&(Ye=Ci.bBox(ye.node()),ie+=a?Ye.width:Ye.height),ze=X.select("text");var _e=0,$e=a&&C==="top",hr=!a&&C==="right",Re=0;if(ze.node()&&!ze.classed(Tt.jsPlaceholder)){var Ae,Se=X.select(".h"+fe._id+"title-math-group").node();Se&&(a&&be||!a&&!be)?(Ye=Ci.bBox(Se),_e=Ye.width,Ae=Ye.height):(Ye=Ci.bBox(X.node()),_e=Ye.right-x.l-(a?re:qe),Ae=Ye.bottom-x.t-(a?qe:re),!a&&C==="top"&&(ie+=Ye.height,Re=Ye.height)),hr&&(ze.attr("transform",Li(_e/2+Te/2,0)),_e*=2),ie=Math.max(ie,a?_e:Ae)}var Oe=(a?d:p)*2+ie+u+s/2,Je=0;!a&&A.text&&h==="bottom"&&y<=0&&(Je=Oe/2,Oe+=Je,Re+=Je),T._hColorbarMoveTitle=Je,T._hColorbarMoveCBTitle=Re;var We=u+s,Xe=(a?re:qe)-We/2-(a?d:0),lr=(a?qe:re)-(a?B:p+Re-Je);e.select("."+Tt.cbbg).attr("x",Xe).attr("y",lr).attr(a?"width":"height",Math.max(Oe-Je,2)).attr(a?"height":"width",Math.max(B+We,2)).call(Lb.fill,f).call(Lb.stroke,r.bordercolor).style("stroke-width",u);var tr=hr?Math.max(_e-10,0):0;e.selectAll("."+Tt.cboutline).attr("x",(a?re:qe+d)+tr).attr("y",(a?qe+p-B:re)+($e?Ie:0)).attr(a?"width":"height",Math.max(W,2)).attr(a?"height":"width",Math.max(B-(a?2*p+Ie:2*d+tr),2)).call(Lb.stroke,r.outlinecolor).style({fill:"none","stroke-width":s});var Ke=a?le*Oe:0,Ne=a?0:(1-ue)*Oe-Re;if(Ke=_?x.l-Ke:-Ke,Ne=b?x.t-Ne:-Ne,e.attr("transform",Li(Ke,Ne)),!a&&(u||Sb(f).getAlpha()&&!Sb.equals(T.paper_bgcolor,f))){var ne=ye.selectAll("text"),oe=ne[0].length,Ce=e.select("."+Tt.cbbg).node(),De=Ci.bBox(Ce),ar=Ci.getTranslate(e),fr=2;ne.each(function(Ia,ma){var ya=0,vr=oe-1;if(ma===ya||ma===vr){var ft=Ci.bBox(this),$r=Ci.getTranslate(this),dt;if(ma===vr){var Et=ft.right+$r.x,Mt=De.right+ar.x+qe-u-fr+m;dt=Mt-Et,dt>0&&(dt=0)}else if(ma===ya){var jr=ft.left+$r.x,ga=De.left+ar.x+qe+u+fr;dt=ga-jr,dt<0&&(dt=0)}dt&&(oe<3?this.setAttribute("transform","translate("+dt+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var sr={},Ar=FN[c],Br=IN[c],et=FN[h],ut=IN[h],kt=Oe-W;a?(i==="pixels"?(sr.y=y,sr.t=B*et,sr.b=B*ut):(sr.t=sr.b=0,sr.yt=y+n*et,sr.yb=y-n*ut),o==="pixels"?(sr.x=m,sr.l=Oe*Ar,sr.r=Oe*Br):(sr.l=kt*Ar,sr.r=kt*Br,sr.xl=m-l*Ar,sr.xr=m+l*Br)):(i==="pixels"?(sr.x=m,sr.l=B*Ar,sr.r=B*Br):(sr.l=sr.r=0,sr.xl=m+n*Ar,sr.xr=m-n*Br),o==="pixels"?(sr.y=1-y,sr.t=Oe*et,sr.b=Oe*ut):(sr.t=kt*et,sr.b=kt*ut,sr.yt=y-l*et,sr.yb=y+l*ut));var _t=r.y<.5?"b":"t",Ht=r.x<.5?"l":"r";t._fullLayout._reservedMargin[r._id]={};var ra={r:T.width-Xe-Ke,l:Xe+sr.r,b:T.height-lr-Ne,t:lr+sr.b};_&&b?Vp.autoMargin(t,r._id,sr):_?t._fullLayout._reservedMargin[r._id][_t]=ra[_t]:b||a?t._fullLayout._reservedMargin[r._id][Ht]=ra[Ht]:t._fullLayout._reservedMargin[r._id][_t]=ra[_t]}return ri.syncOrAsync([Vp.previousPromises,Be,Le,Ue,Vp.previousPromises,He],t)}function Dce(e,r,t){var a=r.orientation==="v",n=t._fullLayout,i=n._size,l,o,s;Yp.init({element:e.node(),gd:t,prepFn:function(){l=e.attr("transform"),Cb(e)},moveFn:function(u,f){e.attr("transform",l+Li(u,f)),o=Yp.align((a?r._uFrac:r._vFrac)+u/i.w,a?r._thickFrac:r._lenFrac,0,1,r.xanchor),s=Yp.align((a?r._vFrac:1-r._uFrac)-f/i.h,a?r._lenFrac:r._thickFrac,0,1,r.yanchor);var c=Yp.getCursor(o,s,r.xanchor,r.yanchor);Cb(e,c)},doneFn:function(){if(Cb(e),o!==void 0&&s!==void 0){var u={};u[r._propPrefix+"x"]=o,u[r._propPrefix+"y"]=s,r._traceIndex!==void 0?zN.call("_guiRestyle",t,u,r._traceIndex):zN.call("_guiRelayout",t,u)}}})}function Ece(e,r,t){var a=r._levels,n=[],i=[],l,o,s=a.end+a.size/100,u=a.size,f=1.001*t[0]-.001*t[1],c=1.001*t[1]-.001*t[0];for(o=0;o<1e5&&(l=a.start+o*u,!(u>0?l>=s:l<=s));o++)l>f&&l0?l>=s:l<=s));o++)l>t[0]&&l{"use strict";YN.exports={moduleType:"component",name:"colorbar",attributes:ed(),supplyDefaults:Og(),draw:BN().draw,hasColorbar:Pg()}});var UN=O((Ebe,GN)=>{"use strict";GN.exports={moduleType:"component",name:"legend",layoutAttributes:F2(),supplyLayoutDefaults:O2(),draw:Q2(),style:Z2()}});var XN=O((Pbe,WN)=>{"use strict";WN.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var JN=O((Rbe,ZN)=>{"use strict";ZN.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var Pb=O((zbe,jN)=>{"use strict";var Rce=gr(),QN=Pe(),Eb=QN.extendFlat,$N=QN.extendDeep;function KN(e){var r;switch(e){case"themes__thumb":r={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":r={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:r={}}return r}function zce(e){var r=["xaxis","yaxis","zaxis"];return r.indexOf(e.slice(0,5))>-1}jN.exports=function(r,t){var a,n=r.data,i=r.layout,l=$N([],n),o=$N({},i,KN(t.tileClass)),s=r._context||{};if(t.width&&(o.width=t.width),t.height&&(o.height=t.height),t.tileClass==="thumbnail"||t.tileClass==="themes__thumb"){o.annotations=[];var u=Object.keys(o);for(a=0;a{"use strict";var Nce=Bh().EventEmitter,Fce=gr(),Ice=Pe(),eF=xs(),Hce=Pb(),Oce=$1(),Bce=K1();function Yce(e,r){var t=new Nce,a=Hce(e,{format:"png"}),n=a.gd;n.style.position="absolute",n.style.left="-5000px",document.body.appendChild(n);function i(){var o=eF.getDelay(n._fullLayout);setTimeout(function(){var s=Oce(n),u=document.createElement("canvas");u.id=Ice.randstr(),t=Bce({format:r.format,width:n._fullLayout.width,height:n._fullLayout.height,canvas:u,emitter:t,svg:s}),t.clean=function(){n&&document.body.removeChild(n)}},o)}var l=eF.getRedrawFunc(n);return Fce.call("_doPlot",n,a.data,a.layout,a.config).then(l).then(i).catch(function(o){t.emit("error",o)}),t}rF.exports=Yce});var iF=O((Fbe,nF)=>{"use strict";var aF=xs(),Vce={getDelay:aF.getDelay,getRedrawFunc:aF.getRedrawFunc,clone:Pb(),toSVG:$1(),svgToImg:K1(),toImage:tF(),downloadImage:yx()};nF.exports=Vce});var oF=O(wl=>{"use strict";wl.version=lh().version;K4();O8();var Gce=gr(),t0=wl.register=Gce.register,zb=fD(),lF=Object.keys(zb);for(Gp=0;Gp{"use strict";sF.exports=oF()});var Wp=O((Obe,fF)=>{"use strict";fF.exports={TEXTPAD:3,eventDataKeys:["value","label"]}});var Tl=O((Bbe,pF)=>{"use strict";var Lt=bi(),cF=di().axisHoverFormat,{hovertemplateAttrs:Uce,texttemplateAttrs:Wce,templatefallbackAttrs:vF}=gn(),dF=Bc(),Xce=aa(),hF=Wp(),Zce=fi().pattern,Es=mt().extendFlat,Nb=Xce({editType:"calc",arrayOk:!0,colorEditType:"style"}),Jce=Lt.marker,$ce=Jce.line,Kce=Es({},$ce.width,{dflt:0}),Qce=Es({width:Kce,editType:"calc"},dF("marker.line")),jce=Es({line:Qce,editType:"calc"},dF("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:Zce,cornerradius:{valType:"any",editType:"calc"}});pF.exports={x:Lt.x,x0:Lt.x0,dx:Lt.dx,y:Lt.y,y0:Lt.y0,dy:Lt.dy,xperiod:Lt.xperiod,yperiod:Lt.yperiod,xperiod0:Lt.xperiod0,yperiod0:Lt.yperiod0,xperiodalignment:Lt.xperiodalignment,yperiodalignment:Lt.yperiodalignment,xhoverformat:cF("x"),yhoverformat:cF("y"),text:Lt.text,texttemplate:Wce({editType:"plot"},{keys:hF.eventDataKeys}),texttemplatefallback:vF({editType:"plot"}),hovertext:Lt.hovertext,hovertemplate:Uce({},{keys:hF.eventDataKeys}),hovertemplatefallback:vF(),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:Es({},Nb,{}),insidetextfont:Es({},Nb,{}),outsidetextfont:Es({},Nb,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:Es({},Lt.cliponaxis,{}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc"},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc"},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc"},marker:jce,offsetgroup:Lt.offsetgroup,alignmentgroup:Lt.alignmentgroup,selected:{marker:{opacity:Lt.selected.marker.opacity,color:Lt.selected.marker.color,editType:"style"},textfont:Lt.selected.textfont,editType:"style"},unselected:{marker:{opacity:Lt.unselected.marker.opacity,color:Lt.unselected.marker.color,editType:"style"},textfont:Lt.unselected.textfont,editType:"style"},zorder:Lt.zorder}});var Xp=O((Ybe,mF)=>{"use strict";mF.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}});var Fb=O((Vbe,xF)=>{"use strict";var eve=xr(),yF=bn().hasColorscale,gF=Nu(),rve=Pe().coercePattern;xF.exports=function(r,t,a,n,i){var l=a("marker.color",n),o=yF(r,"marker");o&&gF(r,t,i,a,{prefix:"marker.",cLetter:"c"}),a("marker.line.color",eve.defaultLine),yF(r,"marker.line")&&gF(r,t,i,a,{prefix:"marker.line.",cLetter:"c"}),a("marker.line.width"),a("marker.opacity"),rve(a,"marker.pattern",l,o),a("selected.marker.color"),a("unselected.marker.color")}});var Ki=O((Gbe,AF)=>{"use strict";var bF=zr(),Ef=Pe(),_F=xr(),tve=gr(),ave=Fv(),nve=ws(),ive=Fb(),lve=hf(),wF=Tl(),Zp=Ef.coerceFont;function ove(e,r,t,a){function n(u,f){return Ef.coerce(e,r,wF,u,f)}var i=ave(e,r,a,n);if(!i){r.visible=!1;return}nve(e,r,a,n),n("xhoverformat"),n("yhoverformat"),n("zorder"),n("orientation",r.x&&!r.y?"h":"v"),n("base"),n("offset"),n("width"),n("text"),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback");var l=n("textposition");MF(e,r,a,n,l,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),ive(e,r,n,t,a);var o=(r.marker.line||{}).color,s=tve.getComponentMethod("errorbars","supplyDefaults");s(e,r,o||_F.defaultLine,{axis:"y"}),s(e,r,o||_F.defaultLine,{axis:"x",inherit:"y"}),Ef.coerceSelectionMarkerOpacity(r,n)}function sve(e,r){var t,a;function n(o,s){return Ef.coerce(a._input,a,wF,o,s)}for(var i=0;i=0)return e}else if(typeof e=="string"&&(e=e.trim(),e.slice(-1)==="%"&&bF(e.slice(0,-1))&&(e=+e.slice(0,-1),e>=0)))return e+"%"}function MF(e,r,t,a,n,i){i=i||{};var l=i.moduleHasSelected!==!1,o=i.moduleHasUnselected!==!1,s=i.moduleHasConstrain!==!1,u=i.moduleHasCliponaxis!==!1,f=i.moduleHasTextangle!==!1,c=i.moduleHasInsideanchor!==!1,h=!!i.hasPathbar,d=Array.isArray(n)||n==="auto",p=d||n==="inside",m=d||n==="outside";if(p||m){var y=Zp(a,"textfont",t.font),b=Ef.extendFlat({},y),_=e.textfont&&e.textfont.color,T=!_;if(T&&delete b.color,Zp(a,"insidetextfont",b),h){var x=Ef.extendFlat({},y);T&&delete x.color,Zp(a,"pathbar.textfont",x)}m&&Zp(a,"outsidetextfont",y),l&&a("selected.textfont.color"),o&&a("unselected.textfont.color"),s&&a("constraintext"),u&&a("cliponaxis"),f&&a("textangle"),a("texttemplate"),a("texttemplatefallback")}p&&c&&a("insidetextanchor")}AF.exports={supplyDefaults:ove,crossTraceDefaults:sve,handleText:MF,validateCornerradius:TF}});var Ib=O((Ube,kF)=>{"use strict";var uve=gr(),fve=Zr(),cve=Pe(),vve=Xp(),hve=Ki().validateCornerradius;kF.exports=function(e,r,t){function a(m,y){return cve.coerce(e,r,vve,m,y)}for(var n=!1,i=!1,l=!1,o={},s=a("barmode"),u=s==="group",f=0;f0&&!o[h]&&(l=!0),o[h]=!0),c.visible&&c.type==="histogram"){var d=fve.getFromId({_fullLayout:r},c[c.orientation==="v"?"xaxis":"yaxis"]);d.type!=="category"&&(i=!0)}}if(!n){delete r.barmode;return}s!=="overlay"&&a("barnorm"),a("bargap",i&&!l?0:.2),a("bargroupgap");var p=a("barcornerradius");r.barcornerradius=hve(p)}});var Jp=O((Wbe,qF)=>{"use strict";var Pf=Pe();qF.exports=function(r,t){for(var a=0;a{"use strict";var SF=Zr(),CF=Ts(),LF=bn().hasColorscale,DF=Yc(),dve=Jp(),pve=Iv();EF.exports=function(r,t){var a=SF.getFromId(r,t.xaxis||"x"),n=SF.getFromId(r,t.yaxis||"y"),i,l,o,s,u,f,c={msUTC:!!(t.base||t.base===0)};t.orientation==="h"?(i=a.makeCalcdata(t,"x",c),o=n.makeCalcdata(t,"y"),s=CF(t,n,"y",o),u=!!t.yperiodalignment,f="y"):(i=n.makeCalcdata(t,"y",c),o=a.makeCalcdata(t,"x"),s=CF(t,a,"x",o),u=!!t.xperiodalignment,f="x"),l=s.vals;for(var h=Math.min(l.length,i.length),d=new Array(h),p=0;p{"use strict";var mve=kr(),yve=Pe();function gve(e,r,t){var a=e._fullLayout,n=a["_"+t+"Text_minsize"];if(n){var i=a.uniformtext.mode==="hide",l;switch(t){case"funnelarea":case"pie":case"sunburst":l="g.slice";break;case"treemap":case"icicle":l="g.slice, g.pathbar";break;default:l="g.points > g.point"}r.selectAll(l).each(function(o){var s=o.transform;if(s){s.scale=i&&s.hide?0:n/s.fontSize;var u=mve.select(this).select("text");yve.setTransormAndDisplay(u,s)}})}}function xve(e,r,t){if(t.uniformtext.mode){var a=RF(e),n=t.uniformtext.minsize,i=r.scale*r.fontSize;r.hide=i{"use strict";var _ve=zr(),wve=Nn(),NF=Pe().isArrayOrTypedArray;Ps.coerceString=function(e,r,t){if(typeof r=="string"){if(r||!e.noBlank)return r}else if((typeof r=="number"||r===!0)&&!e.strict)return String(r);return t!==void 0?t:e.dflt};Ps.coerceNumber=function(e,r,t){if(_ve(r)){r=+r;var a=e.min,n=e.max,i=a!==void 0&&rn;if(!i)return r}return t!==void 0?t:e.dflt};Ps.coerceColor=function(e,r,t){return wve(r).isValid()?r:t!==void 0?t:e.dflt};Ps.coerceEnumerated=function(e,r,t){return e.coerceNumber&&(r=+r),e.values.indexOf(r)!==-1?r:t!==void 0?t:e.dflt};Ps.getValue=function(e,r){var t;return NF(e)?r{"use strict";var a0=kr(),Tve=xr(),n0=Yr(),FF=Pe(),IF=gr(),HF=Di().resizeText,Hb=Tl(),Mve=Hb.textfont,Ave=Hb.insidetextfont,kve=Hb.outsidetextfont,qa=$p();function qve(e){var r=a0.select(e).selectAll('g[class^="barlayer"]').selectAll("g.trace");HF(e,r,"bar");var t=r.size(),a=e._fullLayout;r.style("opacity",function(n){return n[0].trace.opacity}).each(function(n){(a.barmode==="stack"&&t>1||a.bargap===0&&a.bargroupgap===0&&!n[0].trace.marker.line.width)&&a0.select(this).attr("shape-rendering","crispEdges")}),r.selectAll("g.points").each(function(n){var i=a0.select(this),l=n[0].trace;OF(i,l,e)}),IF.getComponentMethod("errorbars","style")(r)}function OF(e,r,t){n0.pointStyle(e.selectAll("path"),r,t),BF(e,r,t)}function BF(e,r,t){e.selectAll("text").each(function(a){var n=a0.select(this),i=FF.ensureUniformFontSize(t,YF(n,a,r,t));n0.font(n,i)})}function Sve(e,r,t){var a=r[0].trace;a.selectedpoints?Cve(t,a,e):(OF(t,a,e),IF.getComponentMethod("errorbars","style")(t))}function Cve(e,r,t){n0.selectedPointStyle(e.selectAll("path"),r),Lve(e.selectAll("text"),r,t)}function Lve(e,r,t){e.each(function(a){var n=a0.select(this),i;if(a.selected){i=FF.ensureUniformFontSize(t,YF(n,a,r,t));var l=r.selected.textfont&&r.selected.textfont.color;l&&(i.color=l),n0.font(n,i)}else n0.selectedTextStyle(n,r)})}function YF(e,r,t,a){var n=a._fullLayout.font,i=t.textfont;if(e.classed("bartext-inside")){var l=WF(r,t);i=GF(t,r.i,n,l)}else e.classed("bartext-outside")&&(i=UF(t,r.i,n));return i}function VF(e,r,t){return Ob(Mve,e.textfont,r,t)}function GF(e,r,t,a){var n=VF(e,r,t),i=e._input.textfont===void 0||e._input.textfont.color===void 0||Array.isArray(e.textfont.color)&&e.textfont.color[r]===void 0;return i&&(n={color:Tve.contrast(a),family:n.family,size:n.size,weight:n.weight,style:n.style,variant:n.variant,textcase:n.textcase,lineposition:n.lineposition,shadow:n.shadow}),Ob(Ave,e.insidetextfont,r,n)}function UF(e,r,t){var a=VF(e,r,t);return Ob(kve,e.outsidetextfont,r,a)}function Ob(e,r,t,a){r=r||{};var n=qa.getValue(r.family,t),i=qa.getValue(r.size,t),l=qa.getValue(r.color,t),o=qa.getValue(r.weight,t),s=qa.getValue(r.style,t),u=qa.getValue(r.variant,t),f=qa.getValue(r.textcase,t),c=qa.getValue(r.lineposition,t),h=qa.getValue(r.shadow,t);return{family:qa.coerceString(e.family,n,a.family),size:qa.coerceNumber(e.size,i,a.size),color:qa.coerceColor(e.color,l,a.color),weight:qa.coerceString(e.weight,o,a.weight),style:qa.coerceString(e.style,s,a.style),variant:qa.coerceString(e.variant,u,a.variant),textcase:qa.coerceString(e.variant,f,a.textcase),lineposition:qa.coerceString(e.variant,c,a.lineposition),shadow:qa.coerceString(e.variant,h,a.shadow)}}function WF(e,r){return r.type==="waterfall"?r[e.dir].marker.color:e.mcc||e.mc||r.marker.color}XF.exports={style:qve,styleTextPoints:BF,styleOnSelect:Sve,getInsideTextFont:GF,getOutsideTextFont:UF,getBarColor:WF,resizeText:HF}});var zf=O((Kbe,rI)=>{"use strict";var Kp=kr(),Qp=zr(),da=Pe(),Dve=va(),Eve=xr(),po=Yr(),Pve=gr(),jp=Zr().tickText,ZF=Di(),Rve=ZF.recordMinTextSize,zve=ZF.clearMinTextSize,Bb=ho(),Rf=$p(),Nve=Wp(),JF=Tl(),Fve=JF.text,Ive=JF.textposition,Hve=Hi().appendArrayPointValue,Za=Nve.TEXTPAD;function Ove(e){return e.id}function Bve(e){if(e.ids)return Ove}function Yb(e){return(e>0)-(e<0)}function Qi(e,r){return e0}function Vve(e,r,t,a,n,i){var l=r.xaxis,o=r.yaxis,s=e._fullLayout,u=e._context.staticPlot;n||(n={mode:s.barmode,norm:s.barmode,gap:s.bargap,groupgap:s.bargroupgap},zve("bar",s));var f=da.makeTraceGroups(a,t,"trace bars").each(function(c){var h=Kp.select(this),d=c[0].trace,p=c[0].t,m=d.type==="waterfall",y=d.type==="funnel",b=d.type==="histogram",_=d.type==="bar",T=_||y,x=0;m&&d.connector.visible&&d.connector.mode==="between"&&(x=d.connector.line.width/2);var M=d.orientation==="h",k=KF(n),A=da.ensureSingle(h,"g","points"),C=Bve(d),D=A.selectAll("g.point").data(da.identity,C);D.enter().append("g").classed("point",!0),D.exit().remove(),D.each(function(R,N){var I=Kp.select(this),H=Yve(R,l,o,M),G=H[0][0],W=H[0][1],Y=H[1][0],B=H[1][1],V=(M?W-G:B-Y)===0;V&&T&&Rf.getLineWidth(d,R)&&(V=!1),V||(V=!Qp(G)||!Qp(W)||!Qp(Y)||!Qp(B)),R.isBlank=V,V&&(M?W=G:B=Y),x&&!V&&(M?(G-=Qi(G,W)*x,W+=Qi(G,W)*x):(Y-=Qi(Y,B)*x,B+=Qi(Y,B)*x));var K,J;if(d.type==="waterfall"){if(!V){var re=d[R.dir].marker;K=re.line.width,J=re.color}}else K=Rf.getLineWidth(d,R),J=R.mc||d.marker.color;function le(ie){var _e=Kp.round(K/2%1,2);return n.gap===0&&n.groupgap===0?Kp.round(Math.round(ie)-_e,2):ie}function ue(ie,_e,$e){return $e&&ie===_e?ie:Math.abs(ie-_e)>=2?le(ie):ie>_e?Math.ceil(ie):Math.floor(ie)}var ve=Eve.opacity(J),j=ve<1||K>.01?le:ue;e._context.staticPlot||(G=j(G,W,M),W=j(W,G,M),Y=j(Y,B,!M),B=j(B,Y,!M));var qe=M?l.c2p:o.c2p,fe;R.s0>0?fe=R._sMax:R.s0<0?fe=R._sMin:fe=R.s1>0?R._sMax:R._sMin;function be(ie,_e){if(!ie)return 0;var $e=Math.abs(M?B-Y:W-G),hr=Math.abs(M?W-G:B-Y),Re=j(Math.abs(qe(fe,!0)-qe(0,!0))),Ae=R.hasB?Math.min($e/2,hr/2):Math.min($e/2,Re),Se;if(_e==="%"){var Oe=Math.min(50,ie);Se=$e*(Oe/100)}else Se=ie;return j(Math.max(Math.min(Se,Ae),0))}var ce=_||b?be(p.cornerradiusvalue,p.cornerradiusform):0,xe,U,Q="M"+G+","+Y+"V"+B+"H"+W+"V"+Y+"Z",X=0;if(ce&&R.s){var ge=Yb(R.s0)===0||Yb(R.s)===Yb(R.s0)?R.s1:R.s0;if(X=j(R.hasB?0:Math.abs(qe(fe,!0)-qe(ge,!0))),X0?Math.sqrt(X*(2*ce-X)):0,Fe=Te>0?Math.max:Math.min;xe="M"+G+","+Y+"V"+(B-Ie*ye)+"H"+Fe(W-(ce-X)*Te,G)+"A "+ce+","+ce+" 0 0 "+ze+" "+W+","+(B-ce*ye-Ee)+"V"+(Y+ce*ye+Ee)+"A "+ce+","+ce+" 0 0 "+ze+" "+Fe(W-(ce-X)*Te,G)+","+(Y+Ie*ye)+"Z"}else if(R.hasB)xe="M"+(G+ce*Te)+","+Y+"A "+ce+","+ce+" 0 0 "+ze+" "+G+","+(Y+ce*ye)+"V"+(B-ce*ye)+"A "+ce+","+ce+" 0 0 "+ze+" "+(G+ce*Te)+","+B+"H"+(W-ce*Te)+"A "+ce+","+ce+" 0 0 "+ze+" "+W+","+(B-ce*ye)+"V"+(Y+ce*ye)+"A "+ce+","+ce+" 0 0 "+ze+" "+(W-ce*Te)+","+Y+"Z";else{U=Math.abs(B-Y)+X;var Be=U0?Math.sqrt(X*(2*ce-X)):0,Le=ye>0?Math.max:Math.min;xe="M"+(G+Be*Te)+","+Y+"V"+Le(B-(ce-X)*ye,Y)+"A "+ce+","+ce+" 0 0 "+ze+" "+(G+ce*Te-Ue)+","+B+"H"+(W-ce*Te+Ue)+"A "+ce+","+ce+" 0 0 "+ze+" "+(W-Be*Te)+","+Le(B-(ce-X)*ye,Y)+"V"+Y+"Z"}}else xe=Q}else xe=Q;var He=$F(da.ensureSingle(I,"path"),s,n,i);if(He.style("vector-effect",u?"none":"non-scaling-stroke").attr("d",isNaN((W-G)*(B-Y))||V&&e._context.staticPlot?"M0,0Z":xe).call(po.setClipUrl,r.layerClipId,e),!s.uniformtext.mode&&k){var Ye=po.makePointStyleFns(d);po.singlePointStyle(R,He,d,Ye,e)}Gve(e,r,I,c,N,G,W,Y,B,ce,X,n,i),r.layerClipId&&po.hideOutsideRangePoint(R,I.select("text"),l,o,d.xcalendar,d.ycalendar)});var E=d.cliponaxis===!1;po.setClipUrl(h,E?null:r.layerClipId,e)});Pve.getComponentMethod("errorbars","plot")(e,f,r,n)}function Gve(e,r,t,a,n,i,l,o,s,u,f,c,h){var d=r.xaxis,p=r.yaxis,m=e._fullLayout,y;function b(U,Q,X){var ge=da.ensureSingle(U,"text").text(Q).attr({class:"bartext bartext-"+y,"text-anchor":"middle","data-notex":1}).call(po.font,X).call(Dve.convertToTspans,e);return ge}var _=a[0].trace,T=_.orientation==="h",x=Xve(m,a,n,d,p);y=Zve(_,n);var M=c.mode==="stack"||c.mode==="relative",k=a[n],A=!M||k._outmost,C=k.hasB,D=u&&u-f>Za;if(!x||y==="none"||(k.isBlank||i===l||o===s)&&(y==="auto"||y==="inside")){t.select("text").remove();return}var E=m.font,R=Bb.getBarColor(a[n],_),N=Bb.getInsideTextFont(_,n,E,R),I=Bb.getOutsideTextFont(_,n,E),H=_.insidetextanchor||"end",G=t.datum();T?d.type==="log"&&G.s0<=0&&(d.range[0]0&&le>0,j;D?C?j=Rs(B-2*u,V,re,le,T)||Rs(B,V-2*u,re,le,T):T?j=Rs(B-(u-f),V,re,le,T)||Rs(B,V-2*(u-f),re,le,T):j=Rs(B,V-(u-f),re,le,T)||Rs(B-2*(u-f),V,re,le,T):j=Rs(B,V,re,le,T),ve&&j?y="inside":(y="outside",K.remove(),K=null)}else y="inside";if(!K){ue=da.ensureUniformFontSize(e,y==="outside"?I:N),K=b(t,x,ue);var qe=K.attr("transform");if(K.attr("transform",""),J=po.bBox(K.node()),re=J.width,le=J.height,K.attr("transform",qe),re<=0||le<=0){K.remove();return}}var fe=_.textangle,be,ce;y==="outside"?(ce=_.constraintext==="both"||_.constraintext==="outside",be=Wve(i,l,o,s,J,{isHorizontal:T,constrained:ce,angle:fe})):(ce=_.constraintext==="both"||_.constraintext==="inside",be=eI(i,l,o,s,J,{isHorizontal:T,constrained:ce,angle:fe,anchor:H,hasB:C,r:u,overhead:f})),be.fontSize=ue.size,Rve(_.type==="histogram"?"bar":_.type,be,m),k.transform=be;var xe=$F(K,m,c,h);da.setTransormAndDisplay(xe,be)}function Rs(e,r,t,a,n){if(e<0||r<0)return!1;var i=t<=e&&a<=r,l=t<=r&&a<=e,o=n?e>=t*(r/a):r>=a*(e/t);return i||l||o}function QF(e){return e==="auto"?0:e}function jF(e,r){var t=Math.PI/180*r,a=Math.abs(Math.sin(t)),n=Math.abs(Math.cos(t));return{x:e.width*n+e.height*a,y:e.width*a+e.height*n}}function eI(e,r,t,a,n,i){var l=!!i.isHorizontal,o=!!i.constrained,s=i.angle||0,u=i.anchor,f=u==="end",c=u==="start",h=i.leftToRight||0,d=(h+1)/2,p=1-d,m=i.hasB,y=i.r,b=i.overhead,_=n.width,T=n.height,x=Math.abs(r-e),M=Math.abs(a-t),k=x>2*Za&&M>2*Za?Za:0;x-=2*k,M-=2*k;var A=QF(s);s==="auto"&&!(_<=x&&T<=M)&&(_>x||T>M)&&(!(_>M||T>x)||_Za){var R=Uve(e,r,t,a,C,y,b,l,m);D=R.scale,E=R.pad}else D=1,o&&(D=Math.min(1,x/C.x,M/C.y)),E=0;var N=n.left*p+n.right*d,I=(n.top+n.bottom)/2,H=(e+Za)*p+(r-Za)*d,G=(t+a)/2,W=0,Y=0;if(c||f){var B=(l?C.x:C.y)/2;y&&(f||m)&&(k+=E);var V=l?Qi(e,r):Qi(t,a);l?c?(H=e+V*k,W=-V*B):(H=r-V*k,W=V*B):c?(G=t+V*k,Y=-V*B):(G=a-V*k,Y=V*B)}return{textX:N,textY:I,targetX:H,targetY:G,anchorX:W,anchorY:Y,scale:D,rotate:A}}function Uve(e,r,t,a,n,i,l,o,s){var u=Math.max(0,Math.abs(r-e)-2*Za),f=Math.max(0,Math.abs(a-t)-2*Za),c=i-Za,h=l?c-Math.sqrt(c*c-(c-l)*(c-l)):c,d=s?c*2:o?c-l:2*h,p=s?c*2:o?2*h:c-l,m,y,b,_,T;return n.y/n.x>=f/(u-d)?_=f/n.y:n.y/n.x<=(f-p)/u?_=u/n.x:!s&&o?(m=n.x*n.x+n.y*n.y/4,y=-2*n.x*(u-c)-n.y*(f/2-c),b=(u-c)*(u-c)+(f/2-c)*(f/2-c)-c*c,_=(-y+Math.sqrt(y*y-4*m*b))/(2*m)):s?(m=(n.x*n.x+n.y*n.y)/4,y=-n.x*(u/2-c)-n.y*(f/2-c),b=(u/2-c)*(u/2-c)+(f/2-c)*(f/2-c)-c*c,_=(-y+Math.sqrt(y*y-4*m*b))/(2*m)):(m=n.x*n.x/4+n.y*n.y,y=-n.x*(u/2-c)-2*n.y*(f-c),b=(u/2-c)*(u/2-c)+(f-c)*(f-c)-c*c,_=(-y+Math.sqrt(y*y-4*m*b))/(2*m)),_=Math.min(1,_),o?T=Math.max(0,c-Math.sqrt(Math.max(0,c*c-(c-(f-n.y*_)/2)*(c-(f-n.y*_)/2)))-l):T=Math.max(0,c-Math.sqrt(Math.max(0,c*c-(c-(u-n.x*_)/2)*(c-(u-n.x*_)/2)))-l),{scale:_,pad:T}}function Wve(e,r,t,a,n,i){var l=!!i.isHorizontal,o=!!i.constrained,s=i.angle||0,u=n.width,f=n.height,c=Math.abs(r-e),h=Math.abs(a-t),d;l?d=h>2*Za?Za:0:d=c>2*Za?Za:0;var p=1;o&&(p=l?Math.min(1,h/f):Math.min(1,c/u));var m=QF(s),y=jF(n,m),b=(l?y.x:y.y)/2,_=(n.left+n.right)/2,T=(n.top+n.bottom)/2,x=(e+r)/2,M=(t+a)/2,k=0,A=0,C=l?Qi(r,e):Qi(t,a);return l?(x=r-C*d,k=C*b):(M=a+C*d,A=-C*b),{textX:_,textY:T,targetX:x,targetY:M,anchorX:k,anchorY:A,scale:p,rotate:m}}function Xve(e,r,t,a,n){var i=r[0].trace,l=i.texttemplate,o;return l?o=Jve(e,r,t,a,n):i.textinfo?o=$ve(r,t,a,n):o=Rf.getValue(i.text,t),Rf.coerceString(Fve,o)}function Zve(e,r){var t=Rf.getValue(e.textposition,r);return Rf.coerceEnumerated(Ive,t)}function Jve(e,r,t,a,n){var i=r[0].trace,l=da.castOption(i,t,"texttemplate");if(!l)return"";var o=i.type==="histogram",s=i.type==="waterfall",u=i.type==="funnel",f=i.orientation==="h",c,h,d,p;f?(c="y",h=n,d="x",p=a):(c="x",h=a,d="y",p=n);function m(k){return jp(h,h.c2l(k),!0).text}function y(k){return jp(p,p.c2l(k),!0).text}var b=r[t],_={};_.label=b.p,_.labelLabel=_[c+"Label"]=m(b.p);var T=da.castOption(i,b.i,"text");(T===0||T)&&(_.text=T),_.value=b.s,_.valueLabel=_[d+"Label"]=y(b.s);var x={};Hve(x,i,b.i),(o||x.x===void 0)&&(x.x=f?_.value:_.label),(o||x.y===void 0)&&(x.y=f?_.label:_.value),(o||x.xLabel===void 0)&&(x.xLabel=f?_.valueLabel:_.labelLabel),(o||x.yLabel===void 0)&&(x.yLabel=f?_.labelLabel:_.valueLabel),s&&(_.delta=+b.rawS||b.s,_.deltaLabel=y(_.delta),_.final=b.v,_.finalLabel=y(_.final),_.initial=_.final-_.delta,_.initialLabel=y(_.initial)),u&&(_.value=b.s,_.valueLabel=y(_.value),_.percentInitial=b.begR,_.percentInitialLabel=da.formatPercent(b.begR),_.percentPrevious=b.difR,_.percentPreviousLabel=da.formatPercent(b.difR),_.percentTotal=b.sumR,_.percenTotalLabel=da.formatPercent(b.sumR));var M=da.castOption(i,b.i,"customdata");return M&&(_.customdata=M),da.texttemplateString({data:[x,_,i._meta],fallback:i.texttemplatefallback,labels:_,locale:e._d3locale,template:l})}function $ve(e,r,t,a){var n=e[0].trace,i=n.orientation==="h",l=n.type==="waterfall",o=n.type==="funnel";function s(M){var k=i?a:t;return jp(k,M,!0).text}function u(M){var k=i?t:a;return jp(k,+M,!0).text}var f=n.textinfo,c=e[r],h=f.split("+"),d=[],p,m=function(M){return h.indexOf(M)!==-1};if(m("label")&&d.push(s(e[r].p)),m("text")&&(p=da.castOption(n,c.i,"text"),(p===0||p)&&d.push(p)),l){var y=+c.rawS||c.s,b=c.v,_=b-y;m("initial")&&d.push(u(_)),m("delta")&&d.push(u(y)),m("final")&&d.push(u(b))}if(o){m("value")&&d.push(u(c.s));var T=0;m("percent initial")&&T++,m("percent previous")&&T++,m("percent total")&&T++;var x=T>1;m("percent initial")&&(p=da.formatPercent(c.begR),x&&(p+=" of initial"),d.push(p)),m("percent previous")&&(p=da.formatPercent(c.difR),x&&(p+=" of previous"),d.push(p)),m("percent total")&&(p=da.formatPercent(c.sumR),x&&(p+=" of total"),d.push(p))}return d.join("
")}rI.exports={plot:Vve,toMoveInsideBar:eI}});var l0=O((Qbe,iI)=>{"use strict";var i0=gi(),Kve=gr(),tI=xr(),Qve=Pe().fillText,jve=$p().getLineWidth,Vb=Zr().hoverLabelText,e0e=wt().BADNUM;function r0e(e,r,t,a,n){var i=aI(e,r,t,a,n);if(i){var l=i.cd,o=l[0].trace,s=l[i.index];return i.color=nI(o,s),Kve.getComponentMethod("errorbars","hoverInfo")(s,o,i),[i]}}function aI(e,r,t,a,n){var i=e.cd,l=i[0].trace,o=i[0].t,s=a==="closest",u=l.type==="waterfall",f=e.maxHoverDistance,c=e.maxSpikeDistance,h,d,p,m,y,b,_;l.orientation==="h"?(h=t,d=r,p="y",m="x",y=G,b=N):(h=r,d=t,p="x",m="y",b=G,y=N);var T=l[p+"period"],x=s||T;function M(j){return A(j,-1)}function k(j){return A(j,1)}function A(j,qe){var fe=j.w;return j[p]+qe*fe/2}function C(j){return j[p+"End"]-j[p+"Start"]}var D=s?M:T?function(j){return j.p-C(j)/2}:function(j){return Math.min(M(j),j.p-o.bardelta/2)},E=s?k:T?function(j){return j.p+C(j)/2}:function(j){return Math.max(k(j),j.p+o.bardelta/2)};function R(j,qe,fe){return n.finiteRange&&(fe=0),i0.inbox(j-h,qe-h,fe+Math.min(1,Math.abs(qe-j)/_)-1)}function N(j){return R(D(j),E(j),f)}function I(j){return R(M(j),k(j),c)}function H(j){var qe=j[m];if(u){var fe=Math.abs(j.rawS)||0;d>0?qe+=fe:d<0&&(qe-=fe)}return qe}function G(j){var qe=d,fe=j.b,be=H(j);return i0.inbox(fe-qe,be-qe,f+(be-qe)/(be-fe)-1)}function W(j){var qe=d,fe=j.b,be=H(j);return i0.inbox(fe-qe,be-qe,c+(be-qe)/(be-fe)-1)}var Y=e[p+"a"],B=e[m+"a"];_=Math.abs(Y.r2c(Y.range[1])-Y.r2c(Y.range[0]));function V(j){return(y(j)+b(j))/2}var K=i0.getDistanceFunction(a,y,b,V);if(i0.getClosest(i,K,e),e.index!==!1&&i[e.index].p!==e0e){x||(D=function(j){return Math.min(M(j),j.p-o.bargroupwidth/2)},E=function(j){return Math.max(k(j),j.p+o.bargroupwidth/2)});var J=e.index,re=i[J],le=l.base?re.b+re.s:re.s;e[m+"0"]=e[m+"1"]=B.c2p(re[m],!0),e[m+"LabelVal"]=le;var ue=o.extents[o.extents.round(re.p)];e[p+"0"]=Y.c2p(s?D(re):ue[0],!0),e[p+"1"]=Y.c2p(s?E(re):ue[1],!0);var ve=re.orig_p!==void 0;return e[p+"LabelVal"]=ve?re.orig_p:re.p,e.labelLabel=Vb(Y,e[p+"LabelVal"],l[p+"hoverformat"]),e.valueLabel=Vb(B,e[m+"LabelVal"],l[m+"hoverformat"]),e.baseLabel=Vb(B,re.b,l[m+"hoverformat"]),e.spikeDistance=(W(re)+I(re))/2,e[p+"Spike"]=Y.c2p(re.p,!0),Qve(re,l,e),e.hovertemplate=l.hovertemplate,e}}function nI(e,r){var t=r.mcc||e.marker.color,a=r.mlcc||e.marker.line.color,n=jve(e,r);if(tI.opacity(t))return t;if(tI.opacity(a)&&n)return a}iI.exports={hoverPoints:r0e,hoverOnBars:aI,getTraceColor:nI}});var oI=O((jbe,lI)=>{"use strict";lI.exports=function(r,t,a){return r.x="xVal"in t?t.xVal:t.x,r.y="yVal"in t?t.yVal:t.y,t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),a.orientation==="h"?(r.label=r.y,r.value=r.x):(r.label=r.x,r.value=r.y),r}});var o0=O((e5e,sI)=>{"use strict";sI.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,l=a[0].trace,o=l.type==="funnel",s=l.orientation==="h",u=[],f;if(t===!1)for(f=0;f{"use strict";uI.exports={attributes:Tl(),layoutAttributes:Xp(),supplyDefaults:Ki().supplyDefaults,crossTraceDefaults:Ki().crossTraceDefaults,supplyLayoutDefaults:Ib(),calc:PF(),crossTraceCalc:mf().crossTraceCalc,colorbar:sp(),arraysToCalcdata:Jp(),plot:zf().plot,style:ho().style,styleOnSelect:ho().styleOnSelect,hoverPoints:l0().hoverPoints,eventData:oI(),selectPoints:o0(),moduleType:"trace",name:"bar",basePlotModule:gl(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}});var vI=O((t5e,cI)=>{"use strict";cI.exports=fI()});var dI=O((a5e,hI)=>{"use strict";hI.exports=function(r,t){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}});var mI=O((n5e,pI)=>{"use strict";pI.exports={eventDataKeys:["binNumber"]}});var Wb=O((i5e,bI)=>{"use strict";var dn=Tl(),yI=di().axisHoverFormat,{hovertemplateAttrs:a0e,texttemplateAttrs:n0e,templatefallbackAttrs:gI}=gn(),Gb=aa(),xI=dI(),i0e=mI(),Ub=mt().extendFlat;bI.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:yI("x"),yhoverformat:yI("y"),text:Ub({},dn.text,{}),hovertext:Ub({},dn.hovertext,{}),orientation:dn.orientation,histfunc:{valType:"enumerated",values:["count","sum","avg","min","max"],dflt:"count",editType:"calc"},histnorm:{valType:"enumerated",values:["","percent","probability","density","probability density"],dflt:"",editType:"calc"},cumulative:{enabled:{valType:"boolean",dflt:!1,editType:"calc"},direction:{valType:"enumerated",values:["increasing","decreasing"],dflt:"increasing",editType:"calc"},currentbin:{valType:"enumerated",values:["include","exclude","half"],dflt:"include",editType:"calc"},editType:"calc"},nbinsx:{valType:"integer",min:0,dflt:0,editType:"calc"},xbins:xI("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:xI("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:a0e({},{keys:i0e.eventDataKeys}),hovertemplatefallback:gI(),texttemplate:n0e({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),texttemplatefallback:gI({editType:"plot"}),textposition:Ub({},dn.textposition,{arrayOk:!1}),textfont:Gb({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:Gb({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:Gb({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:dn.insidetextanchor,textangle:dn.textangle,cliponaxis:dn.cliponaxis,constraintext:dn.constraintext,marker:dn.marker,offsetgroup:dn.offsetgroup,alignmentgroup:dn.alignmentgroup,selected:dn.selected,unselected:dn.unselected,zorder:dn.zorder}});var MI=O((l5e,TI)=>{"use strict";var _I=gr(),s0=Pe(),wI=xr(),l0e=Ki().handleText,o0e=Fb(),s0e=Wb();TI.exports=function(r,t,a,n){function i(_,T){return s0.coerce(r,t,s0e,_,T)}var l=i("x"),o=i("y"),s=i("cumulative.enabled");s&&(i("cumulative.direction"),i("cumulative.currentbin")),i("text");var u=i("textposition");l0e(r,t,n,i,u,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),i("xhoverformat"),i("yhoverformat");var f=i("orientation",o&&!l?"h":"v"),c=f==="v"?"x":"y",h=f==="v"?"y":"x",d=l&&o?Math.min(s0.minRowLength(l)&&s0.minRowLength(o)):s0.minRowLength(t[c]||[]);if(!d){t.visible=!1;return}t._length=d;var p=_I.getComponentMethod("calendars","handleTraceDefaults");p(r,t,["x","y"],n);var m=t[h];m&&i("histfunc"),i("histnorm"),i("autobin"+c),o0e(r,t,i,a,n),s0.coerceSelectionMarkerOpacity(t,i);var y=(t.marker.line||{}).color,b=_I.getComponentMethod("errorbars","supplyDefaults");b(r,t,y||wI.defaultLine,{axis:"y"}),b(r,t,y||wI.defaultLine,{axis:"x",inherit:"y"}),i("zorder")}});var SI=O((o5e,qI)=>{"use strict";var u0=Pe(),u0e=Ut(),em=gr().traceIs,f0e=hf(),c0e=Ki().validateCornerradius,AI=u0.nestedProperty,Xb=gs().getAxisGroup,kI=[{aStr:{x:"xbins.start",y:"ybins.start"},name:"start"},{aStr:{x:"xbins.end",y:"ybins.end"},name:"end"},{aStr:{x:"xbins.size",y:"ybins.size"},name:"size"},{aStr:{x:"nbinsx",y:"nbinsy"},name:"nbins"}],v0e=["x","y"];qI.exports=function(r,t){var a=t._histogramBinOpts={},n=[],i={},l=[],o,s,u,f,c,h,d;function p(G,W){return u0.coerce(o._input,o,o._module.attributes,G,W)}function m(G){return G.orientation==="v"?"x":"y"}function y(G,W){var Y=u0e.getFromTrace({_fullLayout:t},G,W);return Y.type}function b(G,W,Y){var B=G.uid+"__"+Y;W||(W=B);var V=y(G,Y),K=G[Y+"calendar"]||"",J=a[W],re=!0;J&&(V===J.axType&&K===J.calendar?(re=!1,J.traces.push(G),J.dirs.push(Y)):(W=B,V!==J.axType&&u0.warn(["Attempted to group the bins of trace",G.index,"set on a","type:"+V,"axis","with bins on","type:"+J.axType,"axis."].join(" ")),K!==J.calendar&&u0.warn(["Attempted to group the bins of trace",G.index,"set with a",K,"calendar","with bins",J.calendar?"on a "+J.calendar+" calendar":"w/o a set calendar"].join(" ")))),re&&(a[W]={traces:[G],dirs:[Y],axType:V,calendar:G[Y+"calendar"]||""}),G["_"+Y+"bingroup"]=W}for(c=0;c{"use strict";var Nf=zr();CI.exports={count:function(e,r,t){return t[e]++,1},sum:function(e,r,t,a){var n=a[r];return Nf(n)?(n=Number(n),t[e]+=n,n):0},avg:function(e,r,t,a,n){var i=a[r];return Nf(i)&&(i=Number(i),t[e]+=i,n[e]++),0},min:function(e,r,t,a){var n=a[r];if(Nf(n))if(n=Number(n),Nf(t[e])){if(t[e]>n){var i=n-t[e];return t[e]=n,i}}else return t[e]=n,n;return 0},max:function(e,r,t,a){var n=a[r];if(Nf(n))if(n=Number(n),Nf(t[e])){if(t[e]{"use strict";DI.exports={percent:function(e,r){for(var t=e.length,a=100/r,n=0;n{"use strict";PI.exports=function(r,t){for(var a=r.length,n=0,i=0;i{"use strict";var Ff=wt(),zs=Ff.ONEAVGYEAR,zI=Ff.ONEAVGMONTH,tm=Ff.ONEDAY,NI=Ff.ONEHOUR,FI=Ff.ONEMIN,II=Ff.ONESEC,HI=Zr().tickIncrement;YI.exports=function(r,t,a,n,i){var l=-1.1*t,o=-.1*t,s=r-o,u=a[0],f=a[1],c=Math.min(rm(u+o,u+s,n,i),rm(f+o,f+s,n,i)),h=Math.min(rm(u+l,u+o,n,i),rm(f+l,f+o,n,i)),d,p;if(c>h&&htm){var m=d===zs?1:6,y=d===zs?"M12":"M1";return function(b,_){var T=n.c2d(b,zs,i),x=T.indexOf("-",m);x>0&&(T=T.substr(0,x));var M=n.d2c(T,0,i);if(MII?e>tm?e>zs*1.1?zs:e>zI*1.1?zI:tm:e>NI?NI:e>FI?FI:II:Math.pow(10,Math.floor(Math.log(e)/Math.LN10))}function h0e(e,r,t,a,n,i){if(a&&e>tm){var l=BI(r,n,i),o=BI(t,n,i),s=e===zs?0:1;return l[s]!==o[s]}return Math.floor(t/e)-Math.floor(r/e)>.1}function BI(e,r,t){var a=r.c2d(e,zs,t).split("-");return a[0]===""&&(a.unshift(),a[0]="-"+a[0]),a}});var JI=O((v5e,ZI)=>{"use strict";var Zb=zr(),Ja=Pe(),GI=gr(),ti=Zr(),{hasColorscale:UI}=bn(),WI=Yc(),d0e=Jp(),XI=LI(),p0e=EI(),m0e=RI(),y0e=VI();function g0e(e,r){var t=[],a=[],n=r.orientation==="h",i=ti.getFromId(e,n?r.yaxis:r.xaxis),l=n?"y":"x",o={x:"y",y:"x"}[l],s=r[l+"calendar"],u=r.cumulative,f,c=Jb(e,r,i,l),h=c[0],d=c[1],p=typeof h.size=="string",m=[],y=p?m:h,b=[],_=[],T=[],x=0,M=r.histnorm,k=r.histfunc,A=M.indexOf("density")!==-1,C,D,E;u.enabled&&A&&(M=M.replace(/ ?density$/,""),A=!1);var R=k==="max"||k==="min",N=R?null:0,I=XI.count,H=p0e[M],G=!1,W=function(U){return i.r2c(U,0,s)},Y;for(Ja.isArrayOrTypedArray(r[o])&&k!=="count"&&(Y=r[o],G=k==="avg",I=XI[k]),f=W(h.start),D=W(h.end)+(f-ti.tickIncrement(f,h.size,!1,s))/1e6;f=0&&E=be;f--)if(a[f]){ce=f;break}for(f=be;f<=ce;f++)if(Zb(t[f])&&Zb(a[f])){var xe={p:t[f],s:a[f],b:0};u.enabled||(xe.pts=T[f],J?xe.ph0=xe.ph1=T[f].length?d[T[f][0]]:t[f]:(r._computePh=!0,xe.ph0=j(m[f]),xe.ph1=j(m[f+1],!0))),fe.push(xe)}return fe.length===1&&(fe[0].width1=ti.tickIncrement(fe[0].p,h.size,!1,s)-fe[0].p),UI(r,"marker")&&WI(e,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),UI(r,"marker.line")&&WI(e,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}),d0e(fe,r),Ja.isArrayOrTypedArray(r.selectedpoints)&&Ja.tagSelected(fe,r,ue),fe}function Jb(e,r,t,a,n){var i=a+"bins",l=e._fullLayout,o=r["_"+a+"bingroup"],s=l._histogramBinOpts[o],u=l.barmode==="overlay",f,c,h,d,p,m,y,b=function(ve){return t.r2c(ve,0,d)},_=function(ve){return t.c2r(ve,0,d)},T=t.type==="date"?function(ve){return ve||ve===0?Ja.cleanDate(ve,null,d):null}:function(ve){return Zb(ve)?Number(ve):null};function x(ve,j,qe){j[ve+"Found"]?(j[ve]=T(j[ve]),j[ve]===null&&(j[ve]=qe[ve])):(m[ve]=j[ve]=qe[ve],Ja.nestedProperty(c[0],i+"."+ve).set(qe[ve]))}if(r["_"+a+"autoBinFinished"])delete r["_"+a+"autoBinFinished"];else{c=s.traces;var M=[],k=!0,A=!1,C=!1;for(f=0;ft.r2l(Y)&&(V=ti.tickIncrement(V,s.size,!0,d)),I.start=t.l2r(V),W||Ja.nestedProperty(r,i+".start").set(I.start)}var K=s.end,J=t.r2l(N.end),re=J!==void 0;if((s.endFound||re)&&J!==t.r2l(K)){var le=re?J:Ja.aggNums(Math.max,null,p);I.end=t.l2r(le),re||Ja.nestedProperty(r,i+".start").set(I.end)}var ue="autobin"+a;return r._input[ue]===!1&&(r._input[i]=Ja.extendFlat({},r[i]||{}),delete r._input[ue],delete r[ue]),[I,p]}function x0e(e,r,t,a,n){var i=e._fullLayout,l=b0e(e,r),o=!1,s=1/0,u=[r],f,c,h;for(f=0;f=0;a--)o(a);else if(r==="increasing"){for(a=1;a=0;a--)e[a]+=e[a+1];t==="exclude"&&(e.push(0),e.shift())}}ZI.exports={calc:g0e,calcAllAutoBins:Jb}});var KI=O((h5e,$I)=>{"use strict";var w0e=l0().hoverPoints,T0e=Zr().hoverLabelText;$I.exports=function(r,t,a,n,i){var l=w0e(r,t,a,n,i);if(l){r=l[0];var o=r.cd[r.index],s=r.cd[0].trace;if(!s.cumulative.enabled){var u=s.orientation==="h"?"y":"x";r[u+"Label"]=T0e(r[u+"a"],[o.ph0,o.ph1],s[u+"hoverformat"])}return l}}});var jI=O((d5e,QI)=>{"use strict";QI.exports=function(r,t,a,n,i){if(r.x="xVal"in t?t.xVal:t.x,r.y="yVal"in t?t.yVal:t.y,"zLabelVal"in t&&(r.z=t.zLabelVal),t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),!(a.cumulative||{}).enabled){var l=Array.isArray(i)?n[0].pts[i[0]][i[1]]:n[i].pts;r.pointNumbers=l,r.binNumber=r.pointNumber,delete r.pointNumber,delete r.pointIndex;var o;if(a._indexToPoints){o=[];for(var s=0;s{"use strict";eH.exports={attributes:Wb(),layoutAttributes:Xp(),supplyDefaults:MI(),crossTraceDefaults:SI(),supplyLayoutDefaults:Ib(),calc:JI().calc,crossTraceCalc:mf().crossTraceCalc,plot:zf().plot,layerName:"barlayer",style:ho().style,styleOnSelect:ho().styleOnSelect,colorbar:sp(),hoverPoints:KI(),selectPoints:o0(),eventData:jI(),moduleType:"trace",name:"histogram",basePlotModule:gl(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}});var aH=O((m5e,tH)=>{"use strict";tH.exports=rH()});var iH=O((y5e,nH)=>{"use strict";nH.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}});var Kb=O((g5e,uH)=>{"use strict";var pt=Tl(),$b=bi().line,M0e=tn(),lH=di().axisHoverFormat,{hovertemplateAttrs:A0e,texttemplateAttrs:k0e,templatefallbackAttrs:oH}=gn(),sH=iH(),Ml=mt().extendFlat,q0e=xr();uH.exports={x:pt.x,x0:pt.x0,dx:pt.dx,y:pt.y,y0:pt.y0,dy:pt.dy,xperiod:pt.xperiod,yperiod:pt.yperiod,xperiod0:pt.xperiod0,yperiod0:pt.yperiod0,xperiodalignment:pt.xperiodalignment,yperiodalignment:pt.yperiodalignment,xhoverformat:lH("x"),yhoverformat:lH("y"),hovertext:pt.hovertext,hovertemplate:A0e({},{keys:sH.eventDataKeys}),hovertemplatefallback:oH(),hoverinfo:Ml({},M0e.hoverinfo,{flags:["name","x","y","text","percent initial","percent previous","percent total"]}),textinfo:{valType:"flaglist",flags:["label","text","percent initial","percent previous","percent total","value"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:k0e({editType:"plot"},{keys:sH.eventDataKeys.concat(["label","value"])}),texttemplatefallback:oH({editType:"plot"}),text:pt.text,textposition:pt.textposition,insidetextanchor:Ml({},pt.insidetextanchor,{dflt:"middle"}),textangle:Ml({},pt.textangle,{dflt:0}),textfont:pt.textfont,insidetextfont:pt.insidetextfont,outsidetextfont:pt.outsidetextfont,constraintext:pt.constraintext,cliponaxis:pt.cliponaxis,orientation:Ml({},pt.orientation,{}),offset:Ml({},pt.offset,{arrayOk:!1}),width:Ml({},pt.width,{arrayOk:!1}),marker:S0e(),connector:{fillcolor:{valType:"color",editType:"style"},line:{color:Ml({},$b.color,{dflt:q0e.defaultLine}),width:Ml({},$b.width,{dflt:0,editType:"plot"}),dash:$b.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:pt.offsetgroup,alignmentgroup:pt.alignmentgroup,zorder:pt.zorder};function S0e(){var e=Ml({},pt.marker);return delete e.pattern,delete e.cornerradius,e}});var Qb=O((x5e,fH)=>{"use strict";fH.exports={funnelmode:{valType:"enumerated",values:["stack","group","overlay"],dflt:"stack",editType:"calc"},funnelgap:{valType:"number",min:0,max:1,editType:"calc"},funnelgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var e5=O((b5e,vH)=>{"use strict";var am=Pe(),C0e=hf(),L0e=Ki().handleText,D0e=Fv(),E0e=ws(),cH=Kb(),jb=xr();function P0e(e,r,t,a){function n(c,h){return am.coerce(e,r,cH,c,h)}var i=D0e(e,r,a,n);if(!i){r.visible=!1;return}E0e(e,r,a,n),n("xhoverformat"),n("yhoverformat"),n("orientation",r.y&&!r.x?"v":"h"),n("offset"),n("width");var l=n("text");n("hovertext"),n("hovertemplate"),n("hovertemplatefallback");var o=n("textposition");L0e(e,r,a,n,o,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),r.textposition!=="none"&&!r.texttemplate&&n("textinfo",am.isArrayOrTypedArray(l)?"text+value":"value");var s=n("marker.color",t);n("marker.line.color",jb.defaultLine),n("marker.line.width");var u=n("connector.visible");if(u){n("connector.fillcolor",R0e(s));var f=n("connector.line.width");f&&(n("connector.line.color"),n("connector.line.dash"))}n("zorder")}function R0e(e){var r=am.isArrayOrTypedArray(e)?"#000":e;return jb.addOpacity(r,.5*jb.opacity(r))}function z0e(e,r){var t,a;function n(l){return am.coerce(a._input,a,cH,l)}for(var i=0;i{"use strict";var N0e=Pe(),F0e=Qb();hH.exports=function(e,r,t){var a=!1;function n(o,s){return N0e.coerce(e,r,F0e,o,s)}for(var i=0;i{"use strict";var If=Pe();pH.exports=function(r,t){for(var a=0;a{"use strict";var yH=Zr(),gH=Ts(),I0e=mH(),H0e=Iv(),f0=wt().BADNUM;xH.exports=function(r,t){var a=yH.getFromId(r,t.xaxis||"x"),n=yH.getFromId(r,t.yaxis||"y"),i,l,o,s,u,f,c,h;t.orientation==="h"?(i=a.makeCalcdata(t,"x"),o=n.makeCalcdata(t,"y"),s=gH(t,n,"y",o),u=!!t.yperiodalignment,f="y"):(i=n.makeCalcdata(t,"y"),o=a.makeCalcdata(t,"x"),s=gH(t,a,"x",o),u=!!t.xperiodalignment,f="x"),l=s.vals;var d=Math.min(l.length,i.length),p=new Array(d);for(t._base=[],c=0;c{"use strict";var _H=mf().setGroupPositions;wH.exports=function(r,t){var a=r._fullLayout,n=r._fullData,i=r.calcdata,l=t.xaxis,o=t.yaxis,s=[],u=[],f=[],c,h;for(h=0;h{"use strict";var nm=kr(),yo=Pe(),MH=Yr(),mo=wt().BADNUM,O0e=zf(),B0e=Di().clearMinTextSize;kH.exports=function(r,t,a,n){var i=r._fullLayout;B0e("funnel",i),Y0e(r,t,a,n),V0e(r,t,a,n),O0e.plot(r,t,a,n,{mode:i.funnelmode,norm:i.funnelmode,gap:i.funnelgap,groupgap:i.funnelgroupgap})};function Y0e(e,r,t,a){var n=r.xaxis,i=r.yaxis;yo.makeTraceGroups(a,t,"trace bars").each(function(l){var o=nm.select(this),s=l[0].trace,u=yo.ensureSingle(o,"g","regions");if(!s.connector||!s.connector.visible){u.remove();return}var f=s.orientation==="h",c=u.selectAll("g.region").data(yo.identity);c.enter().append("g").classed("region",!0),c.exit().remove();var h=c.size();c.each(function(d,p){if(!(p!==h-1&&!d.cNext)){var m=AH(d,n,i,f),y=m[0],b=m[1],_="";y[0]!==mo&&b[0]!==mo&&y[1]!==mo&&b[1]!==mo&&y[2]!==mo&&b[2]!==mo&&y[3]!==mo&&b[3]!==mo&&(f?_+="M"+y[0]+","+b[1]+"L"+y[2]+","+b[2]+"H"+y[3]+"L"+y[1]+","+b[1]+"Z":_+="M"+y[1]+","+b[1]+"L"+y[2]+","+b[3]+"V"+b[2]+"L"+y[1]+","+b[0]+"Z"),_===""&&(_="M0,0Z"),yo.ensureSingle(nm.select(this),"path").attr("d",_).call(MH.setClipUrl,r.layerClipId,e)}})})}function V0e(e,r,t,a){var n=r.xaxis,i=r.yaxis;yo.makeTraceGroups(a,t,"trace bars").each(function(l){var o=nm.select(this),s=l[0].trace,u=yo.ensureSingle(o,"g","lines");if(!s.connector||!s.connector.visible||!s.connector.line.width){u.remove();return}var f=s.orientation==="h",c=u.selectAll("g.line").data(yo.identity);c.enter().append("g").classed("line",!0),c.exit().remove();var h=c.size();c.each(function(d,p){if(!(p!==h-1&&!d.cNext)){var m=AH(d,n,i,f),y=m[0],b=m[1],_="";y[3]!==void 0&&b[3]!==void 0&&(f?(_+="M"+y[0]+","+b[1]+"L"+y[2]+","+b[2],_+="M"+y[1]+","+b[1]+"L"+y[3]+","+b[2]):(_+="M"+y[1]+","+b[1]+"L"+y[2]+","+b[3],_+="M"+y[1]+","+b[0]+"L"+y[2]+","+b[2])),_===""&&(_="M0,0Z"),yo.ensureSingle(nm.select(this),"path").attr("d",_).call(MH.setClipUrl,r.layerClipId,e)}})})}function AH(e,r,t,a){var n=[],i=[],l=a?r:t,o=a?t:r;return n[0]=l.c2p(e.s0,!0),i[0]=o.c2p(e.p0,!0),n[1]=l.c2p(e.s1,!0),i[1]=o.c2p(e.p1,!0),n[2]=l.c2p(e.nextS0,!0),i[2]=o.c2p(e.nextP0,!0),n[3]=l.c2p(e.nextS1,!0),i[3]=o.c2p(e.nextP1,!0),a?[n,i]:[i,n]}});var LH=O((k5e,CH)=>{"use strict";var c0=kr(),SH=Yr(),t5=xr(),G0e=mu().DESELECTDIM,U0e=ho(),W0e=Di().resizeText,X0e=U0e.styleTextPoints;function Z0e(e,r,t){var a=t||c0.select(e).selectAll('g[class^="funnellayer"]').selectAll("g.trace");W0e(e,a,"funnel"),a.style("opacity",function(n){return n[0].trace.opacity}),a.each(function(n){var i=c0.select(this),l=n[0].trace;i.selectAll(".point > path").each(function(o){if(!o.isBlank){var s=l.marker;c0.select(this).call(t5.fill,o.mc||s.color).call(t5.stroke,o.mlc||s.line.color).call(SH.dashLine,s.line.dash,o.mlw||s.line.width).style("opacity",l.selectedpoints&&!o.selected?G0e:1)}}),X0e(i,l,e),i.selectAll(".regions").each(function(){c0.select(this).selectAll("path").style("stroke-width",0).call(t5.fill,l.connector.fillcolor)}),i.selectAll(".lines").each(function(){var o=l.connector.line;SH.lineGroupStyle(c0.select(this).selectAll("path"),o.width,o.color,o.dash)})})}CH.exports={style:Z0e}});var PH=O((q5e,EH)=>{"use strict";var DH=xr().opacity,J0e=l0().hoverOnBars,a5=Pe().formatPercent;EH.exports=function(r,t,a,n,i){var l=J0e(r,t,a,n,i);if(l){var o=l.cd,s=o[0].trace,u=s.orientation==="h",f=l.index,c=o[f],h=u?"x":"y";l[h+"LabelVal"]=c.s,l.percentInitial=c.begR,l.percentInitialLabel=a5(c.begR,1),l.percentPrevious=c.difR,l.percentPreviousLabel=a5(c.difR,1),l.percentTotal=c.sumR,l.percentTotalLabel=a5(c.sumR,1);var d=c.hi||s.hoverinfo,p=[];if(d&&d!=="none"&&d!=="skip"){var m=d==="all",y=d.split("+"),b=function(_){return m||y.indexOf(_)!==-1};b("percent initial")&&p.push(l.percentInitialLabel+" of initial"),b("percent previous")&&p.push(l.percentPreviousLabel+" of previous"),b("percent total")&&p.push(l.percentTotalLabel+" of total")}return l.extraText=p.join("
"),l.color=$0e(s,c),[l]}};function $0e(e,r){var t=e.marker,a=r.mc||t.color,n=r.mlc||t.line.color,i=r.mlw||t.line.width;if(DH(a))return a;if(DH(n)&&i)return n}});var zH=O((S5e,RH)=>{"use strict";RH.exports=function(r,t){return r.x="xVal"in t?t.xVal:t.x,r.y="yVal"in t?t.yVal:t.y,"percentInitial"in t&&(r.percentInitial=t.percentInitial),"percentPrevious"in t&&(r.percentPrevious=t.percentPrevious),"percentTotal"in t&&(r.percentTotal=t.percentTotal),t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),r}});var FH=O((C5e,NH)=>{"use strict";NH.exports={attributes:Kb(),layoutAttributes:Qb(),supplyDefaults:e5().supplyDefaults,crossTraceDefaults:e5().crossTraceDefaults,supplyLayoutDefaults:dH(),calc:bH(),crossTraceCalc:TH(),plot:qH(),style:LH().style,hoverPoints:PH(),eventData:zH(),selectPoints:o0(),moduleType:"trace",name:"funnel",basePlotModule:gl(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var HH=O((L5e,IH)=>{"use strict";IH.exports=FH()});var BH=O((D5e,OH)=>{"use strict";OH.exports={eventDataKeys:["initial","delta","final"]}});var l5=O((E5e,UH)=>{"use strict";var st=Tl(),n5=bi().line,K0e=tn(),YH=di().axisHoverFormat,{hovertemplateAttrs:Q0e,texttemplateAttrs:j0e,templatefallbackAttrs:VH}=gn(),GH=BH(),Hf=mt().extendFlat,ehe=xr();function i5(e){return{marker:{color:Hf({},st.marker.color,{arrayOk:!1,editType:"style"}),line:{color:Hf({},st.marker.line.color,{arrayOk:!1,editType:"style"}),width:Hf({},st.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}UH.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:st.x,x0:st.x0,dx:st.dx,y:st.y,y0:st.y0,dy:st.dy,xperiod:st.xperiod,yperiod:st.yperiod,xperiod0:st.xperiod0,yperiod0:st.yperiod0,xperiodalignment:st.xperiodalignment,yperiodalignment:st.yperiodalignment,xhoverformat:YH("x"),yhoverformat:YH("y"),hovertext:st.hovertext,hovertemplate:Q0e({},{keys:GH.eventDataKeys}),hovertemplatefallback:VH(),hoverinfo:Hf({},K0e.hoverinfo,{flags:["name","x","y","text","initial","delta","final"]}),textinfo:{valType:"flaglist",flags:["label","text","initial","delta","final"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:j0e({editType:"plot"},{keys:GH.eventDataKeys.concat(["label"])}),texttemplatefallback:VH({editType:"plot"}),text:st.text,textposition:st.textposition,insidetextanchor:st.insidetextanchor,textangle:st.textangle,textfont:st.textfont,insidetextfont:st.insidetextfont,outsidetextfont:st.outsidetextfont,constraintext:st.constraintext,cliponaxis:st.cliponaxis,orientation:st.orientation,offset:st.offset,width:st.width,increasing:i5("increasing"),decreasing:i5("decreasing"),totals:i5("intermediate sums and total"),connector:{line:{color:Hf({},n5.color,{dflt:ehe.defaultLine}),width:Hf({},n5.width,{editType:"plot"}),dash:n5.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:st.offsetgroup,alignmentgroup:st.alignmentgroup,zorder:st.zorder}});var o5=O((P5e,WH)=>{"use strict";WH.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc"},waterfallgap:{valType:"number",min:0,max:1,editType:"calc"},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var Of=O((R5e,XH)=>{"use strict";XH.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}});var u5=O((z5e,KH)=>{"use strict";var ZH=Pe(),rhe=hf(),the=Ki().handleText,ahe=Fv(),nhe=ws(),JH=l5(),ihe=xr(),$H=Of(),lhe=$H.INCREASING.COLOR,ohe=$H.DECREASING.COLOR,she="#4499FF";function s5(e,r,t){e(r+".marker.color",t),e(r+".marker.line.color",ihe.defaultLine),e(r+".marker.line.width")}function uhe(e,r,t,a){function n(u,f){return ZH.coerce(e,r,JH,u,f)}var i=ahe(e,r,a,n);if(!i){r.visible=!1;return}nhe(e,r,a,n),n("xhoverformat"),n("yhoverformat"),n("measure"),n("orientation",r.x&&!r.y?"h":"v"),n("base"),n("offset"),n("width"),n("text"),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback");var l=n("textposition");the(e,r,a,n,l,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),r.textposition!=="none"&&(n("texttemplate"),n("texttemplatefallback"),r.texttemplate||n("textinfo")),s5(n,"increasing",lhe),s5(n,"decreasing",ohe),s5(n,"totals",she);var o=n("connector.visible");if(o){n("connector.mode");var s=n("connector.line.width");s&&(n("connector.line.color"),n("connector.line.dash"))}n("zorder")}function fhe(e,r){var t,a;function n(l){return ZH.coerce(a._input,a,JH,l)}if(r.waterfallmode==="group")for(var i=0;i{"use strict";var che=Pe(),vhe=o5();QH.exports=function(e,r,t){var a=!1;function n(o,s){return che.coerce(e,r,vhe,o,s)}for(var i=0;i{"use strict";var eO=Zr(),rO=Ts(),tO=Pe().mergeArray,hhe=Iv(),aO=wt().BADNUM;function f5(e){return e==="a"||e==="absolute"}function c5(e){return e==="t"||e==="total"}nO.exports=function(r,t){var a=eO.getFromId(r,t.xaxis||"x"),n=eO.getFromId(r,t.yaxis||"y"),i,l,o,s,u,f;t.orientation==="h"?(i=a.makeCalcdata(t,"x"),o=n.makeCalcdata(t,"y"),s=rO(t,n,"y",o),u=!!t.yperiodalignment,f="y"):(i=n.makeCalcdata(t,"y"),o=a.makeCalcdata(t,"x"),s=rO(t,a,"x",o),u=!!t.xperiodalignment,f="x"),l=s.vals;for(var c=Math.min(l.length,i.length),h=new Array(c),d=0,p,m=!1,y=0;y{"use strict";var lO=mf().setGroupPositions;oO.exports=function(r,t){var a=r._fullLayout,n=r._fullData,i=r.calcdata,l=t.xaxis,o=t.yaxis,s=[],u=[],f=[],c,h;for(h=0;h{"use strict";var uO=kr(),im=Pe(),dhe=Yr(),Bf=wt().BADNUM,phe=zf(),mhe=Di().clearMinTextSize;fO.exports=function(r,t,a,n){var i=r._fullLayout;mhe("waterfall",i),phe.plot(r,t,a,n,{mode:i.waterfallmode,norm:i.waterfallmode,gap:i.waterfallgap,groupgap:i.waterfallgroupgap}),yhe(r,t,a,n)};function yhe(e,r,t,a){var n=r.xaxis,i=r.yaxis;im.makeTraceGroups(a,t,"trace bars").each(function(l){var o=uO.select(this),s=l[0].trace,u=im.ensureSingle(o,"g","lines");if(!s.connector||!s.connector.visible){u.remove();return}var f=s.orientation==="h",c=s.connector.mode,h=u.selectAll("g.line").data(im.identity);h.enter().append("g").classed("line",!0),h.exit().remove();var d=h.size();h.each(function(p,m){if(!(m!==d-1&&!p.cNext)){var y=ghe(p,n,i,f),b=y[0],_=y[1],T="";b[0]!==Bf&&_[0]!==Bf&&b[1]!==Bf&&_[1]!==Bf&&(c==="spanning"&&!p.isSum&&m>0&&(f?T+="M"+b[0]+","+_[1]+"V"+_[0]:T+="M"+b[1]+","+_[0]+"H"+b[0]),c!=="between"&&(p.isSum||m{"use strict";var lm=kr(),vO=Yr(),hO=xr(),xhe=mu().DESELECTDIM,bhe=ho(),_he=Di().resizeText,whe=bhe.styleTextPoints;function The(e,r,t){var a=t||lm.select(e).selectAll('g[class^="waterfalllayer"]').selectAll("g.trace");_he(e,a,"waterfall"),a.style("opacity",function(n){return n[0].trace.opacity}),a.each(function(n){var i=lm.select(this),l=n[0].trace;i.selectAll(".point > path").each(function(o){if(!o.isBlank){var s=l[o.dir].marker;lm.select(this).call(hO.fill,s.color).call(hO.stroke,s.line.color).call(vO.dashLine,s.line.dash,s.line.width).style("opacity",l.selectedpoints&&!o.selected?xhe:1)}}),whe(i,l,e),i.selectAll(".lines").each(function(){var o=l.connector.line;vO.lineGroupStyle(lm.select(this).selectAll("path"),o.width,o.color,o.dash)})})}dO.exports={style:The}});var bO=O((B5e,xO)=>{"use strict";var Mhe=Zr().hoverLabelText,mO=xr().opacity,Ahe=l0().hoverOnBars,yO=Of(),gO={increasing:yO.INCREASING.SYMBOL,decreasing:yO.DECREASING.SYMBOL};xO.exports=function(r,t,a,n,i){var l=Ahe(r,t,a,n,i);if(!l)return;var o=l.cd,s=o[0].trace,u=s.orientation==="h",f=u?"x":"y",c=u?r.xa:r.ya;function h(k){return Mhe(c,k,s[f+"hoverformat"])}var d=l.index,p=o[d],m=p.isSum?p.b+p.s:p.rawS;l.initial=p.b+p.s-m,l.delta=m,l.final=l.initial+l.delta;var y=h(Math.abs(l.delta));l.deltaLabel=m<0?"("+y+")":y,l.finalLabel=h(l.final),l.initialLabel=h(l.initial);var b=p.hi||s.hoverinfo,_=[];if(b&&b!=="none"&&b!=="skip"){var T=b==="all",x=b.split("+"),M=function(k){return T||x.indexOf(k)!==-1};p.isSum||(M("final")&&(u?!M("x"):!M("y"))&&_.push(l.finalLabel),M("delta")&&(m<0?_.push(l.deltaLabel+" "+gO.decreasing):_.push(l.deltaLabel+" "+gO.increasing)),M("initial")&&_.push("Initial: "+l.initialLabel))}return _.length&&(l.extraText=_.join("
")),l.color=khe(s,p),[l]};function khe(e,r){var t=e[r.dir].marker,a=t.color,n=t.line.color,i=t.line.width;if(mO(a))return a;if(mO(n)&&i)return n}});var wO=O((Y5e,_O)=>{"use strict";_O.exports=function(r,t){return r.x="xVal"in t?t.xVal:t.x,r.y="yVal"in t?t.yVal:t.y,"initial"in t&&(r.initial=t.initial),"delta"in t&&(r.delta=t.delta),"final"in t&&(r.final=t.final),t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),r}});var MO=O((V5e,TO)=>{"use strict";TO.exports={attributes:l5(),layoutAttributes:o5(),supplyDefaults:u5().supplyDefaults,crossTraceDefaults:u5().crossTraceDefaults,supplyLayoutDefaults:jH(),calc:iO(),crossTraceCalc:sO(),plot:cO(),style:pO().style,hoverPoints:bO(),eventData:wO(),selectPoints:o0(),moduleType:"trace",name:"waterfall",basePlotModule:gl(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var kO=O((G5e,AO)=>{"use strict";AO.exports=MO()});var sm=O((U5e,SO)=>{"use strict";var qhe=tn(),She=fo().attributes,Che=aa(),Lhe=Fn(),{hovertemplateAttrs:Dhe,texttemplateAttrs:Ehe,templatefallbackAttrs:qO}=gn(),v0=mt().extendFlat,Phe=fi().pattern,om=Che({editType:"plot",arrayOk:!0,colorEditType:"plot"});SO.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:Lhe.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:Phe,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:v0({},qhe.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:Dhe({},{keys:["label","color","value","percent","text"]}),hovertemplatefallback:qO(),texttemplate:Ehe({editType:"plot"},{keys:["label","color","value","percent","text"]}),texttemplatefallback:qO({editType:"plot"}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:v0({},om,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:v0({},om,{}),outsidetextfont:v0({},om,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:v0({},om,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:She({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}});var um=O((W5e,DO)=>{"use strict";var Rhe=zr(),h0=Pe(),zhe=sm(),Nhe=fo().defaults,Fhe=Ki().handleText,Ihe=Pe().coercePattern;function CO(e,r){var t=h0.isArrayOrTypedArray(e),a=h0.isArrayOrTypedArray(r),n=Math.min(t?e.length:1/0,a?r.length:1/0);if(isFinite(n)||(n=0),n&&a){for(var i,l=0;l0){i=!0;break}}i||(n=0)}return{hasLabels:t,hasValues:a,len:n}}function LO(e,r,t,a,n){var i=a("marker.line.width");i&&a("marker.line.color",n?void 0:t.paper_bgcolor);var l=a("marker.colors");Ihe(a,"marker.pattern",l),e.marker&&!r.marker.pattern.fgcolor&&(r.marker.pattern.fgcolor=e.marker.colors),r.marker.pattern.bgcolor||(r.marker.pattern.bgcolor=t.paper_bgcolor)}function Hhe(e,r,t,a){function n(_,T){return h0.coerce(e,r,zhe,_,T)}var i=n("labels"),l=n("values"),o=CO(i,l),s=o.len;if(r._hasLabels=o.hasLabels,r._hasValues=o.hasValues,!r._hasLabels&&r._hasValues&&(n("label0"),n("dlabel")),!s){r.visible=!1;return}r._length=s,LO(e,r,a,n,!0),n("scalegroup");var u=n("text"),f=n("texttemplate");n("texttemplatefallback");var c;if(f||(c=n("textinfo",h0.isArrayOrTypedArray(u)?"text+percent":"percent")),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback"),f||c&&c!=="none"){var h=n("textposition");Fhe(e,r,a,n,h,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var d=Array.isArray(h)||h==="auto",p=d||h==="outside";p&&n("automargin"),(h==="inside"||h==="auto"||Array.isArray(h))&&n("insidetextorientation")}else c==="none"&&n("textposition","none");Nhe(r,a,n);var m=n("hole"),y=n("title.text");if(y){var b=n("title.position",m?"middle center":"top center");!m&&b==="middle center"&&(r.title.position="top center"),h0.coerceFont(n,"title.font",a.font)}n("sort"),n("direction"),n("rotation"),n("pull")}DO.exports={handleLabelsAndValues:CO,handleMarkerDefaults:LO,supplyDefaults:Hhe}});var fm=O((X5e,EO)=>{"use strict";EO.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var RO=O((Z5e,PO)=>{"use strict";var Ohe=Pe(),Bhe=fm();PO.exports=function(r,t){function a(n,i){return Ohe.coerce(r,t,Bhe,n,i)}a("hiddenlabels"),a("piecolorway",t.colorway),a("extendpiecolors")}});var cm=O((J5e,FO)=>{"use strict";var Yhe=zr(),v5=Nn(),Vhe=xr(),Ghe={};function Uhe(e,r){var t=[],a=e._fullLayout,n=a.hiddenlabels||[],i=r.labels,l=r.marker.colors||[],o=r.values,s=r._length,u=r._hasValues&&s,f,c;if(r.dlabel)for(i=new Array(s),f=0;f=0});var x=r.type==="funnelarea"?m:r.sort;return x&&t.sort(function(M,k){return k.v-M.v}),t[0]&&(t[0].vTotal=p),t}function zO(e){return function(t,a){return!t||(t=v5(t),!t.isValid())?!1:(t=Vhe.addOpacity(t,t.getAlpha()),e[a]||(e[a]=t),t)}}function Whe(e,r){var t=(r||{}).type;t||(t="pie");var a=e._fullLayout,n=e.calcdata,i=a[t+"colorway"],l=a["_"+t+"colormap"];a["extend"+t+"colors"]&&(i=NO(i,Ghe));for(var o=0,s=0;s{"use strict";var Xhe=Hi().appendArrayMultiPointValues;IO.exports=function(r,t){var a={curveNumber:t.index,pointNumbers:r.pts,data:t._input,fullData:t,label:r.label,color:r.color,value:r.v,percent:r.percent,text:r.text,bbox:r.bbox,v:r.v};return r.pts.length===1&&(a.pointNumber=a.i=r.pts[0]),Xhe(a,t,r.pts),t.type==="funnelarea"&&(delete a.v,delete a.i),a}});var p5=O((K5e,lB)=>{"use strict";var pn=kr(),Zhe=Rt(),vm=gi(),UO=xr(),Al=Yr(),Sa=Pe(),Jhe=Sa.strScale,OO=Sa.strTranslate,h5=va(),WO=Di(),$he=WO.recordMinTextSize,Khe=WO.clearMinTextSize,XO=Wp().TEXTPAD,Tr=tv(),hm=HO(),BO=Pe().isValidTextValue;function Qhe(e,r){var t=e._context.staticPlot,a=e._fullLayout,n=a._size;Khe("pie",a),$O(r,e),aB(r,n);var i=Sa.makeTraceGroups(a._pielayer,r,"trace").each(function(l){var o=pn.select(this),s=l[0],u=s.trace;ode(l),o.attr("stroke-linejoin","round"),o.each(function(){var f=pn.select(this).selectAll("g.slice").data(l);f.enter().append("g").classed("slice",!0),f.exit().remove();var c=[[[],[]],[[],[]]],h=!1;f.each(function(x,M){if(x.hidden){pn.select(this).selectAll("path,g").remove();return}x.pointNumber=x.i,x.curveNumber=u.index,c[x.pxmid[1]<0?0:1][x.pxmid[0]<0?0:1].push(x);var k=s.cx,A=s.cy,C=pn.select(this),D=C.selectAll("path.surface").data([x]);if(D.enter().append("path").classed("surface",!0).style({"pointer-events":t?"none":"all"}),C.call(ZO,e,l),u.pull){var E=+Tr.castOption(u.pull,x.pts)||0;E>0&&(k+=E*x.pxmid[0],A+=E*x.pxmid[1])}x.cxFinal=k,x.cyFinal=A;function R(B,V,K,J){var re=J*(V[0]-B[0]),le=J*(V[1]-B[1]);return"a"+J*s.r+","+J*s.r+" 0 "+x.largeArc+(K?" 1 ":" 0 ")+re+","+le}var N=u.hole;if(x.v===s.vTotal){var I="M"+(k+x.px0[0])+","+(A+x.px0[1])+R(x.px0,x.pxmid,!0,1)+R(x.pxmid,x.px0,!0,1)+"Z";N?D.attr("d","M"+(k+N*x.px0[0])+","+(A+N*x.px0[1])+R(x.px0,x.pxmid,!1,N)+R(x.pxmid,x.px0,!1,N)+"Z"+I):D.attr("d",I)}else{var H=R(x.px0,x.px1,!0,1);if(N){var G=1-N;D.attr("d","M"+(k+N*x.px1[0])+","+(A+N*x.px1[1])+R(x.px1,x.px0,!1,N)+"l"+G*x.px0[0]+","+G*x.px0[1]+H+"Z")}else D.attr("d","M"+k+","+A+"l"+x.px0[0]+","+x.px0[1]+H+"Z")}nB(e,x,s);var W=Tr.castOption(u.textposition,x.pts),Y=C.selectAll("g.slicetext").data(x.text&&W!=="none"?[0]:[]);Y.enter().append("g").classed("slicetext",!0),Y.exit().remove(),Y.each(function(){var B=Sa.ensureSingle(pn.select(this),"text","",function(j){j.attr("data-notex",1)}),V=Sa.ensureUniformFontSize(e,W==="outside"?ede(u,x,a.font):JO(u,x,a.font));B.text(x.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(Al.font,V).call(h5.convertToTspans,e);var K=Al.bBox(B.node()),J;if(W==="outside")J=GO(K,x);else if(J=KO(K,x,s),W==="auto"&&J.scale<1){var re=Sa.ensureUniformFontSize(e,u.outsidetextfont);B.call(Al.font,re),K=Al.bBox(B.node()),J=GO(K,x)}var le=J.textPosAngle,ue=le===void 0?x.pxmid:dm(s.r,le);if(J.targetX=k+ue[0]*J.rCenter+(J.x||0),J.targetY=A+ue[1]*J.rCenter+(J.y||0),iB(J,K),J.outside){var ve=J.targetY;x.yLabelMin=ve-K.height/2,x.yLabelMid=ve,x.yLabelMax=ve+K.height/2,x.labelExtraX=0,x.labelExtraY=0,h=!0}J.fontSize=V.size,$he(u.type,J,a),l[M].transform=J,Sa.setTransormAndDisplay(B,J)})});var d=pn.select(this).selectAll("g.titletext").data(u.title.text?[0]:[]);if(d.enter().append("g").classed("titletext",!0),d.exit().remove(),d.each(function(){var x=Sa.ensureSingle(pn.select(this),"text","",function(A){A.attr("data-notex",1)}),M=u.title.text;u._meta&&(M=Sa.templateString(M,u._meta)),x.text(M).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(Al.font,u.title.font).call(h5.convertToTspans,e);var k;u.title.position==="middle center"?k=ade(s):k=rB(s,n),x.attr("transform",OO(k.x,k.y)+Jhe(Math.min(1,k.scale))+OO(k.tx,k.ty))}),h&&ide(c,u),jhe(f,u),h&&u.automargin){var p=Al.bBox(o.node()),m=u.domain,y=n.w*(m.x[1]-m.x[0]),b=n.h*(m.y[1]-m.y[0]),_=(.5*y-s.r)/n.w,T=(.5*b-s.r)/n.h;Zhe.autoMargin(e,"pie."+u.uid+".automargin",{xl:m.x[0]-_,xr:m.x[1]+_,yb:m.y[0]-T,yt:m.y[1]+T,l:Math.max(s.cx-s.r-p.left,0),r:Math.max(p.right-(s.cx+s.r),0),b:Math.max(p.bottom-(s.cy+s.r),0),t:Math.max(s.cy-s.r-p.top,0),pad:5})}})});setTimeout(function(){i.selectAll("tspan").each(function(){var l=pn.select(this);l.attr("dy")&&l.attr("dy",l.attr("dy"))})},0)}function jhe(e,r){e.each(function(t){var a=pn.select(this);if(!t.labelExtraX&&!t.labelExtraY){a.select("path.textline").remove();return}var n=a.select("g.slicetext text");t.transform.targetX+=t.labelExtraX,t.transform.targetY+=t.labelExtraY,Sa.setTransormAndDisplay(n,t.transform);var i=t.cxFinal+t.pxmid[0],l=t.cyFinal+t.pxmid[1],o="M"+i+","+l,s=(t.yLabelMax-t.yLabelMin)*(t.pxmid[0]<0?-1:1)/4;if(t.labelExtraX){var u=t.labelExtraX*t.pxmid[1]/t.pxmid[0],f=t.yLabelMid+t.labelExtraY-(t.cyFinal+t.pxmid[1]);Math.abs(u)>Math.abs(f)?o+="l"+f*t.pxmid[0]/t.pxmid[1]+","+f+"H"+(i+t.labelExtraX+s):o+="l"+t.labelExtraX+","+u+"v"+(f-u)+"h"+s}else o+="V"+(t.yLabelMid+t.labelExtraY)+"h"+s;Sa.ensureSingle(a,"path","textline").call(UO.stroke,r.outsidetextfont.color).attr({"stroke-width":Math.min(2,r.outsidetextfont.size/8),d:o,fill:"none"})})}function ZO(e,r,t){var a=t[0],n=a.cx,i=a.cy,l=a.trace,o=l.type==="funnelarea";"_hasHoverLabel"in l||(l._hasHoverLabel=!1),"_hasHoverEvent"in l||(l._hasHoverEvent=!1),e.on("mouseover",function(s){var u=r._fullLayout,f=r._fullData[l.index];if(!(r._dragging||u.hovermode===!1)){var c=f.hoverinfo;if(Array.isArray(c)&&(c=vm.castHoverinfo({hoverinfo:[Tr.castOption(c,s.pts)],_module:l._module},u,0)),c==="all"&&(c="label+text+value+percent+name"),f.hovertemplate||c!=="none"&&c!=="skip"&&c){var h=s.rInscribed||0,d=n+s.pxmid[0]*(1-h),p=i+s.pxmid[1]*(1-h),m=u.separators,y=[];if(c&&c.indexOf("label")!==-1&&y.push(s.label),s.text=Tr.castOption(f.hovertext||f.text,s.pts),c&&c.indexOf("text")!==-1){var b=s.text;Sa.isValidTextValue(b)&&y.push(b)}s.value=s.v,s.valueLabel=Tr.formatPieValue(s.v,m),c&&c.indexOf("value")!==-1&&y.push(s.valueLabel),s.percent=s.v/a.vTotal,s.percentLabel=Tr.formatPiePercent(s.percent,m),c&&c.indexOf("percent")!==-1&&y.push(s.percentLabel);var _=f.hoverlabel,T=_.font,x=[];vm.loneHover({trace:l,x0:d-h*a.r,x1:d+h*a.r,y:p,_x0:o?n+s.TL[0]:d-h*a.r,_x1:o?n+s.TR[0]:d+h*a.r,_y0:o?i+s.TL[1]:p-h*a.r,_y1:o?i+s.BL[1]:p+h*a.r,text:y.join("
"),name:f.hovertemplate||c.indexOf("name")!==-1?f.name:void 0,idealAlign:s.pxmid[0]<0?"left":"right",color:Tr.castOption(_.bgcolor,s.pts)||s.color,borderColor:Tr.castOption(_.bordercolor,s.pts),fontFamily:Tr.castOption(T.family,s.pts),fontSize:Tr.castOption(T.size,s.pts),fontColor:Tr.castOption(T.color,s.pts),nameLength:Tr.castOption(_.namelength,s.pts),textAlign:Tr.castOption(_.align,s.pts),hovertemplate:Tr.castOption(f.hovertemplate,s.pts),hovertemplateLabels:s,eventData:[hm(s,f)]},{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:r,inOut_bbox:x}),s.bbox=x[0],l._hasHoverLabel=!0}l._hasHoverEvent=!0,r.emit("plotly_hover",{points:[hm(s,f)],event:pn.event})}}),e.on("mouseout",function(s){var u=r._fullLayout,f=r._fullData[l.index],c=pn.select(this).datum();l._hasHoverEvent&&(s.originalEvent=pn.event,r.emit("plotly_unhover",{points:[hm(c,f)],event:pn.event}),l._hasHoverEvent=!1),l._hasHoverLabel&&(vm.loneUnhover(u._hoverlayer.node()),l._hasHoverLabel=!1)}),e.on("click",function(s){var u=r._fullLayout,f=r._fullData[l.index];r._dragging||u.hovermode===!1||(r._hoverdata=[hm(s,f)],vm.click(r,pn.event))})}function ede(e,r,t){var a=Tr.castOption(e.outsidetextfont.color,r.pts)||Tr.castOption(e.textfont.color,r.pts)||t.color,n=Tr.castOption(e.outsidetextfont.family,r.pts)||Tr.castOption(e.textfont.family,r.pts)||t.family,i=Tr.castOption(e.outsidetextfont.size,r.pts)||Tr.castOption(e.textfont.size,r.pts)||t.size,l=Tr.castOption(e.outsidetextfont.weight,r.pts)||Tr.castOption(e.textfont.weight,r.pts)||t.weight,o=Tr.castOption(e.outsidetextfont.style,r.pts)||Tr.castOption(e.textfont.style,r.pts)||t.style,s=Tr.castOption(e.outsidetextfont.variant,r.pts)||Tr.castOption(e.textfont.variant,r.pts)||t.variant,u=Tr.castOption(e.outsidetextfont.textcase,r.pts)||Tr.castOption(e.textfont.textcase,r.pts)||t.textcase,f=Tr.castOption(e.outsidetextfont.lineposition,r.pts)||Tr.castOption(e.textfont.lineposition,r.pts)||t.lineposition,c=Tr.castOption(e.outsidetextfont.shadow,r.pts)||Tr.castOption(e.textfont.shadow,r.pts)||t.shadow;return{color:a,family:n,size:i,weight:l,style:o,variant:s,textcase:u,lineposition:f,shadow:c}}function JO(e,r,t){var a=Tr.castOption(e.insidetextfont.color,r.pts);!a&&e._input.textfont&&(a=Tr.castOption(e._input.textfont.color,r.pts));var n=Tr.castOption(e.insidetextfont.family,r.pts)||Tr.castOption(e.textfont.family,r.pts)||t.family,i=Tr.castOption(e.insidetextfont.size,r.pts)||Tr.castOption(e.textfont.size,r.pts)||t.size,l=Tr.castOption(e.insidetextfont.weight,r.pts)||Tr.castOption(e.textfont.weight,r.pts)||t.weight,o=Tr.castOption(e.insidetextfont.style,r.pts)||Tr.castOption(e.textfont.style,r.pts)||t.style,s=Tr.castOption(e.insidetextfont.variant,r.pts)||Tr.castOption(e.textfont.variant,r.pts)||t.variant,u=Tr.castOption(e.insidetextfont.textcase,r.pts)||Tr.castOption(e.textfont.textcase,r.pts)||t.textcase,f=Tr.castOption(e.insidetextfont.lineposition,r.pts)||Tr.castOption(e.textfont.lineposition,r.pts)||t.lineposition,c=Tr.castOption(e.insidetextfont.shadow,r.pts)||Tr.castOption(e.textfont.shadow,r.pts)||t.shadow;return{color:a||UO.contrast(r.color),family:n,size:i,weight:l,style:o,variant:s,textcase:u,lineposition:f,shadow:c}}function $O(e,r){for(var t,a,n=0;n=-4;_-=2)b(Math.PI*_,"tan");for(_=4;_>=-4;_-=2)b(Math.PI*(_+1),"tan")}if(c||d){for(_=4;_>=-4;_-=2)b(Math.PI*(_+1.5),"rad");for(_=4;_>=-4;_-=2)b(Math.PI*(_+.5),"rad")}}if(o||p||c){var T=Math.sqrt(e.width*e.width+e.height*e.height);if(y={scale:n*a*2/T,rCenter:1-n,rotate:0},y.textPosAngle=(r.startangle+r.stopangle)/2,y.scale>=1)return y;m.push(y)}(p||d)&&(y=YO(e,a,l,s,u),y.textPosAngle=(r.startangle+r.stopangle)/2,m.push(y)),(p||h)&&(y=VO(e,a,l,s,u),y.textPosAngle=(r.startangle+r.stopangle)/2,m.push(y));for(var x=0,M=0,k=0;k=1)break}return m[x]}function rde(e,r){var t=e.startangle,a=e.stopangle;return t>r&&r>a||t0?1:-1)/2,y:i/(1+t*t/(a*a)),outside:!0}}function ade(e){var r=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/r,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}function rB(e,r){var t=1,a=1,n,i=e.trace,l={x:e.cx,y:e.cy},o={tx:0,ty:0};o.ty+=i.title.font.size,n=tB(i),i.title.position.indexOf("top")!==-1?(l.y-=(1+n)*e.r,o.ty-=e.titleBox.height):i.title.position.indexOf("bottom")!==-1&&(l.y+=(1+n)*e.r);var s=nde(e.r,e.trace.aspectratio),u=r.w*(i.domain.x[1]-i.domain.x[0])/2;return i.title.position.indexOf("left")!==-1?(u=u+s,l.x-=(1+n)*s,o.tx+=e.titleBox.width/2):i.title.position.indexOf("center")!==-1?u*=2:i.title.position.indexOf("right")!==-1&&(u=u+s,l.x+=(1+n)*s,o.tx-=e.titleBox.width/2),t=u/e.titleBox.width,a=d5(e,r)/e.titleBox.height,{x:l.x,y:l.y,scale:Math.min(t,a),tx:o.tx,ty:o.ty}}function nde(e,r){return e/(r===void 0?1:r)}function d5(e,r){var t=e.trace,a=r.h*(t.domain.y[1]-t.domain.y[0]);return Math.min(e.titleBox.height,a/2)}function tB(e){var r=e.pull;if(!r)return 0;var t;if(Sa.isArrayOrTypedArray(r))for(r=0,t=0;tr&&(r=e.pull[t]);return r}function ide(e,r){var t,a,n,i,l,o,s,u,f,c,h,d,p;function m(T,x){return T.pxmid[1]-x.pxmid[1]}function y(T,x){return x.pxmid[1]-T.pxmid[1]}function b(T,x){x||(x={});var M=x.labelExtraY+(a?x.yLabelMax:x.yLabelMin),k=a?T.yLabelMin:T.yLabelMax,A=a?T.yLabelMax:T.yLabelMin,C=T.cyFinal+l(T.px0[1],T.px1[1]),D=M-k,E,R,N,I,H,G;if(D*s>0&&(T.labelExtraY=D),!!Sa.isArrayOrTypedArray(r.pull))for(R=0;R=(Tr.castOption(r.pull,N.pts)||0))&&((T.pxmid[1]-N.pxmid[1])*s>0?(I=N.cyFinal+l(N.px0[1],N.px1[1]),D=I-k-T.labelExtraY,D*s>0&&(T.labelExtraY+=D)):(A+T.labelExtraY-C)*s>0&&(E=3*o*Math.abs(R-c.indexOf(T)),H=N.cxFinal+i(N.px0[0],N.px1[0]),G=H+E-(T.cxFinal+T.pxmid[0])-T.labelExtraX,G*o>0&&(T.labelExtraX+=G)))}for(a=0;a<2;a++)for(n=a?m:y,l=a?Math.max:Math.min,s=a?1:-1,t=0;t<2;t++){for(i=t?Math.max:Math.min,o=t?1:-1,u=e[a][t],u.sort(n),f=e[1-a][t],c=f.concat(u),d=[],h=0;h1?(u=t.r,f=u/n.aspectratio):(f=t.r,u=f*n.aspectratio),u*=(1+n.baseratio)/2,s=u*f}l=Math.min(l,s/t.vTotal)}for(a=0;ar.vTotal/2?1:0,u.halfangle=Math.PI*Math.min(u.v/r.vTotal,.5),u.ring=1-a.hole,u.rInscribed=tde(u,r))}function dm(e,r){return[e*Math.sin(r),-e*Math.cos(r)]}function nB(e,r,t){var a=e._fullLayout,n=t.trace,i=n.texttemplate,l=n.textinfo;if(!i&&l&&l!=="none"){var o=l.split("+"),s=function(x){return o.indexOf(x)!==-1},u=s("label"),f=s("text"),c=s("value"),h=s("percent"),d=a.separators,p;if(p=u?[r.label]:[],f){var m=Tr.getFirstFilled(n.text,r.pts);BO(m)&&p.push(m)}c&&p.push(Tr.formatPieValue(r.v,d)),h&&p.push(Tr.formatPiePercent(r.v/t.vTotal,d)),r.text=p.join("
")}function y(x){return{label:x.label,value:x.v,valueLabel:Tr.formatPieValue(x.v,a.separators),percent:x.v/t.vTotal,percentLabel:Tr.formatPiePercent(x.v/t.vTotal,a.separators),color:x.color,text:x.text,customdata:Sa.castOption(n,x.i,"customdata")}}if(i){var b=Sa.castOption(n,r.i,"texttemplate");if(!b)r.text="";else{var _=y(r),T=Tr.getFirstFilled(n.text,r.pts);(BO(T)||T==="")&&(_.text=T),r.text=Sa.texttemplateString({data:[_,n._meta],fallback:n.texttemplatefallback,labels:_,locale:e._fullLayout._d3locale,template:b})}}}function iB(e,r){var t=e.rotate*Math.PI/180,a=Math.cos(t),n=Math.sin(t),i=(r.left+r.right)/2,l=(r.top+r.bottom)/2;e.textX=i*a-l*n,e.textY=i*n+l*a,e.noCenter=!0}lB.exports={plot:Qhe,formatSliceLabel:nB,transformInsideText:KO,determineInsideTextFont:JO,positionTitleOutside:rB,prerenderTitles:$O,layoutAreas:aB,attachFxHandlers:ZO,computeTransform:iB}});var uB=O((Q5e,sB)=>{"use strict";var oB=kr(),sde=Xu(),ude=Di().resizeText;sB.exports=function(r){var t=r._fullLayout._pielayer.selectAll(".trace");ude(r,t,"pie"),t.each(function(a){var n=a[0],i=n.trace,l=oB.select(this);l.style({opacity:i.opacity}),l.selectAll("path.surface").each(function(o){oB.select(this).call(sde,o,i,r)})})}});var cB=O(Yf=>{"use strict";var fB=Rt();Yf.name="pie";Yf.plot=function(e,r,t,a){fB.plotBasePlot(Yf.name,e,r,t,a)};Yf.clean=function(e,r,t,a){fB.cleanBasePlot(Yf.name,e,r,t,a)}});var hB=O((e_e,vB)=>{"use strict";vB.exports={attributes:sm(),supplyDefaults:um().supplyDefaults,supplyLayoutDefaults:RO(),layoutAttributes:fm(),calc:cm().calc,crossTraceCalc:cm().crossTraceCalc,plot:p5().plot,style:uB(),styleOne:Xu(),moduleType:"trace",name:"pie",basePlotModule:cB(),categories:["pie-like","pie","showLegend"],meta:{}}});var pB=O((r_e,dB)=>{"use strict";dB.exports=hB()});var yB=O(Vf=>{"use strict";var mB=Rt();Vf.name="funnelarea";Vf.plot=function(e,r,t,a){mB.plotBasePlot(Vf.name,e,r,t,a)};Vf.clean=function(e,r,t,a){mB.cleanBasePlot(Vf.name,e,r,t,a)}});var m5=O((a_e,xB)=>{"use strict";var Ca=sm(),fde=tn(),cde=fo().attributes,{hovertemplateAttrs:vde,texttemplateAttrs:hde,templatefallbackAttrs:gB}=gn(),Ns=mt().extendFlat;xB.exports={labels:Ca.labels,label0:Ca.label0,dlabel:Ca.dlabel,values:Ca.values,marker:{colors:Ca.marker.colors,line:{color:Ns({},Ca.marker.line.color,{dflt:null}),width:Ns({},Ca.marker.line.width,{dflt:1}),editType:"calc"},pattern:Ca.marker.pattern,editType:"calc"},text:Ca.text,hovertext:Ca.hovertext,scalegroup:Ns({},Ca.scalegroup,{}),textinfo:Ns({},Ca.textinfo,{flags:["label","text","value","percent"]}),texttemplate:hde({editType:"plot"},{keys:["label","color","value","text","percent"]}),texttemplatefallback:gB({editType:"plot"}),hoverinfo:Ns({},fde.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:vde({},{keys:["label","color","value","text","percent"]}),hovertemplatefallback:gB(),textposition:Ns({},Ca.textposition,{values:["inside","none"],dflt:"inside"}),textfont:Ca.textfont,insidetextfont:Ca.insidetextfont,title:{text:Ca.title.text,font:Ca.title.font,position:Ns({},Ca.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:cde({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot"},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot"}}});var y5=O((n_e,bB)=>{"use strict";var dde=fm().hiddenlabels;bB.exports={hiddenlabels:dde,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var TB=O((i_e,wB)=>{"use strict";var _B=Pe(),pde=m5(),mde=fo().defaults,yde=Ki().handleText,gde=um().handleLabelsAndValues,xde=um().handleMarkerDefaults;wB.exports=function(r,t,a,n){function i(m,y){return _B.coerce(r,t,pde,m,y)}var l=i("labels"),o=i("values"),s=gde(l,o),u=s.len;if(t._hasLabels=s.hasLabels,t._hasValues=s.hasValues,!t._hasLabels&&t._hasValues&&(i("label0"),i("dlabel")),!u){t.visible=!1;return}t._length=u,xde(r,t,n,i),i("scalegroup");var f=i("text"),c=i("texttemplate");i("texttemplatefallback");var h;if(c||(h=i("textinfo",Array.isArray(f)?"text+percent":"percent")),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),c||h&&h!=="none"){var d=i("textposition");yde(r,t,n,i,d,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else h==="none"&&i("textposition","none");mde(t,n,i);var p=i("title.text");p&&(i("title.position"),_B.coerceFont(i,"title.font",n.font)),i("aspectratio"),i("baseratio")}});var AB=O((l_e,MB)=>{"use strict";var bde=Pe(),_de=y5();MB.exports=function(r,t){function a(n,i){return bde.coerce(r,t,_de,n,i)}a("hiddenlabels"),a("funnelareacolorway",t.colorway),a("extendfunnelareacolors")}});var g5=O((o_e,qB)=>{"use strict";var kB=cm();function wde(e,r){return kB.calc(e,r)}function Tde(e){kB.crossTraceCalc(e,{type:"funnelarea"})}qB.exports={calc:wde,crossTraceCalc:Tde}});var EB=O((s_e,DB)=>{"use strict";var Fs=kr(),x5=Yr(),go=Pe(),Mde=go.strScale,SB=go.strTranslate,CB=va(),Ade=zf(),kde=Ade.toMoveInsideBar,LB=Di(),qde=LB.recordMinTextSize,Sde=LB.clearMinTextSize,Cde=tv(),Gf=p5(),Lde=Gf.attachFxHandlers,Dde=Gf.determineInsideTextFont,Ede=Gf.layoutAreas,Pde=Gf.prerenderTitles,Rde=Gf.positionTitleOutside,zde=Gf.formatSliceLabel;DB.exports=function(r,t){var a=r._context.staticPlot,n=r._fullLayout;Sde("funnelarea",n),Pde(t,r),Ede(t,n._size),go.makeTraceGroups(n._funnelarealayer,t,"trace").each(function(i){var l=Fs.select(this),o=i[0],s=o.trace;Fde(i),l.each(function(){var u=Fs.select(this).selectAll("g.slice").data(i);u.enter().append("g").classed("slice",!0),u.exit().remove(),u.each(function(c,h){if(c.hidden){Fs.select(this).selectAll("path,g").remove();return}c.pointNumber=c.i,c.curveNumber=s.index;var d=o.cx,p=o.cy,m=Fs.select(this),y=m.selectAll("path.surface").data([c]);y.enter().append("path").classed("surface",!0).style({"pointer-events":a?"none":"all"}),m.call(Lde,r,i);var b="M"+(d+c.TR[0])+","+(p+c.TR[1])+b5(c.TR,c.BR)+b5(c.BR,c.BL)+b5(c.BL,c.TL)+"Z";y.attr("d",b),zde(r,c,o);var _=Cde.castOption(s.textposition,c.pts),T=m.selectAll("g.slicetext").data(c.text&&_!=="none"?[0]:[]);T.enter().append("g").classed("slicetext",!0),T.exit().remove(),T.each(function(){var x=go.ensureSingle(Fs.select(this),"text","",function(N){N.attr("data-notex",1)}),M=go.ensureUniformFontSize(r,Dde(s,c,n.font));x.text(c.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(x5.font,M).call(CB.convertToTspans,r);var k=x5.bBox(x.node()),A,C,D,E=Math.min(c.BL[1],c.BR[1])+p,R=Math.max(c.TL[1],c.TR[1])+p;C=Math.max(c.TL[0],c.BL[0])+d,D=Math.min(c.TR[0],c.BR[0])+d,A=kde(C,D,E,R,k,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),A.fontSize=M.size,qde(s.type,A,n),i[h].transform=A,go.setTransormAndDisplay(x,A)})});var f=Fs.select(this).selectAll("g.titletext").data(s.title.text?[0]:[]);f.enter().append("g").classed("titletext",!0),f.exit().remove(),f.each(function(){var c=go.ensureSingle(Fs.select(this),"text","",function(p){p.attr("data-notex",1)}),h=s.title.text;s._meta&&(h=go.templateString(h,s._meta)),c.text(h).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(x5.font,s.title.font).call(CB.convertToTspans,r);var d=Rde(o,n._size);c.attr("transform",SB(d.x,d.y)+Mde(Math.min(1,d.scale))+SB(d.tx,d.ty))})})})};function b5(e,r){var t=r[0]-e[0],a=r[1]-e[1];return"l"+t+","+a}function Nde(e,r){return[.5*(e[0]+r[0]),.5*(e[1]+r[1])]}function Fde(e){if(!e.length)return;var r=e[0],t=r.trace,a=t.aspectratio,n=t.baseratio;n>.999&&(n=.999);var i=Math.pow(n,2),l=r.vTotal,o=l*i/(1-i),s=l,u=o/l;function f(){var I=Math.sqrt(u);return{x:I,y:-I}}function c(){var I=f();return[I.x,I.y]}var h,d=[];d.push(c());var p,m;for(p=e.length-1;p>-1;p--)if(m=e[p],!m.hidden){var y=m.v/s;u+=y,d.push(c())}var b=1/0,_=-1/0;for(p=0;p-1;p--)if(m=e[p],!m.hidden){E+=1;var R=d[E][0],N=d[E][1];m.TL=[-R,N],m.TR=[R,N],m.BL=C,m.BR=D,m.pxmid=Nde(m.TR,m.BR),C=m.TL,D=m.TR}}});var zB=O((u_e,RB)=>{"use strict";var PB=kr(),Ide=Xu(),Hde=Di().resizeText;RB.exports=function(r){var t=r._fullLayout._funnelarealayer.selectAll(".trace");Hde(r,t,"funnelarea"),t.each(function(a){var n=a[0],i=n.trace,l=PB.select(this);l.style({opacity:i.opacity}),l.selectAll("path.surface").each(function(o){PB.select(this).call(Ide,o,i,r)})})}});var FB=O((f_e,NB)=>{"use strict";NB.exports={moduleType:"trace",name:"funnelarea",basePlotModule:yB(),categories:["pie-like","funnelarea","showLegend"],attributes:m5(),layoutAttributes:y5(),supplyDefaults:TB(),supplyLayoutDefaults:AB(),calc:g5().calc,crossTraceCalc:g5().crossTraceCalc,plot:EB(),style:zB(),styleOne:Xu(),meta:{}}});var HB=O((c_e,IB)=>{"use strict";IB.exports=FB()});var BB=O(Uf=>{"use strict";var OB=Rt();Uf.name="indicator";Uf.plot=function(e,r,t,a){OB.plotBasePlot(Uf.name,e,r,t,a)};Uf.clean=function(e,r,t,a){OB.cleanBasePlot(Uf.name,e,r,t,a)}});var w5=O((h_e,XB)=>{"use strict";var xo=mt().extendFlat,VB=mt().extendDeep,Ode=ui().overrideAll,GB=aa(),UB=Fn(),Bde=fo().attributes,Dt=_n(),Yde=lt().templatedArray,pm=Of(),YB=di().descriptionOnlyNumbers,_5=GB({editType:"plot",colorEditType:"plot"}),d0={color:{valType:"color",editType:"plot"},line:{color:{valType:"color",dflt:UB.defaultLine,editType:"plot"},width:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},thickness:{valType:"number",min:0,max:1,dflt:1,editType:"plot"},editType:"calc"},WB={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},Vde=Yde("step",VB({},d0,{range:WB}));XB.exports={mode:{valType:"flaglist",editType:"calc",flags:["number","delta","gauge"],dflt:"number"},value:{valType:"number",editType:"calc",anim:!0},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},domain:Bde({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot"},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},font:xo({},_5,{}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot",description:YB("value")},font:xo({},_5,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"plot"},delta:{reference:{valType:"number",editType:"calc"},position:{valType:"enumerated",values:["top","bottom","left","right"],dflt:"bottom",editType:"plot"},relative:{valType:"boolean",editType:"plot",dflt:!1},valueformat:{valType:"string",editType:"plot",description:YB("value")},increasing:{symbol:{valType:"string",dflt:pm.INCREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:pm.INCREASING.COLOR,editType:"plot"},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:pm.DECREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:pm.DECREASING.COLOR,editType:"plot"},editType:"plot"},font:xo({},_5,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"]},bar:VB({},d0,{color:{dflt:"green"}}),bgcolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:UB.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot"},axis:Ode({range:WB,visible:xo({},Dt.visible,{dflt:!0}),tickmode:Dt.minor.tickmode,nticks:Dt.nticks,tick0:Dt.tick0,dtick:Dt.dtick,tickvals:Dt.tickvals,ticktext:Dt.ticktext,ticks:xo({},Dt.ticks,{dflt:"outside"}),ticklen:Dt.ticklen,tickwidth:Dt.tickwidth,tickcolor:Dt.tickcolor,ticklabelstep:Dt.ticklabelstep,showticklabels:Dt.showticklabels,labelalias:Dt.labelalias,tickfont:GB({}),tickangle:Dt.tickangle,tickformat:Dt.tickformat,tickformatstops:Dt.tickformatstops,tickprefix:Dt.tickprefix,showtickprefix:Dt.showtickprefix,ticksuffix:Dt.ticksuffix,showticksuffix:Dt.showticksuffix,separatethousands:Dt.separatethousands,exponentformat:Dt.exponentformat,minexponent:Dt.minexponent,showexponent:Dt.showexponent,editType:"plot"},"plot"),steps:Vde,threshold:{line:{color:xo({},d0.line.color,{}),width:xo({},d0.line.width,{dflt:1}),editType:"plot"},thickness:xo({},d0.thickness,{dflt:.85}),value:{valType:"number",editType:"calc",dflt:!1},editType:"plot"},editType:"plot"}}});var T5=O((d_e,ZB)=>{"use strict";ZB.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}});var KB=O((p_e,$B)=>{"use strict";var ji=Pe(),ym=w5(),Gde=fo().defaults,JB=lt(),Ude=Bn(),mm=T5(),Wde=td(),Xde=ad(),Zde=id(),Jde=ld();function $de(e,r,t,a){function n(k,A){return ji.coerce(e,r,ym,k,A)}Gde(r,a,n),n("mode"),r._hasNumber=r.mode.indexOf("number")!==-1,r._hasDelta=r.mode.indexOf("delta")!==-1,r._hasGauge=r.mode.indexOf("gauge")!==-1;var i=n("value");r._range=[0,typeof i=="number"?1.5*i:1];var l=new Array(2),o;if(r._hasNumber){n("number.valueformat");var s=ji.extendFlat({},a.font);s.size=void 0,ji.coerceFont(n,"number.font",s),r.number.font.size===void 0&&(r.number.font.size=mm.defaultNumberFontSize,l[0]=!0),n("number.prefix"),n("number.suffix"),o=r.number.font.size}var u;if(r._hasDelta){var f=ji.extendFlat({},a.font);f.size=void 0,ji.coerceFont(n,"delta.font",f),r.delta.font.size===void 0&&(r.delta.font.size=(r._hasNumber?.5:1)*(o||mm.defaultNumberFontSize),l[1]=!0),n("delta.reference",r.value),n("delta.relative"),n("delta.valueformat",r.delta.relative?"2%":""),n("delta.increasing.symbol"),n("delta.increasing.color"),n("delta.decreasing.symbol"),n("delta.decreasing.color"),n("delta.position"),n("delta.prefix"),n("delta.suffix"),u=r.delta.font.size}r._scaleNumbers=(!r._hasNumber||l[0])&&(!r._hasDelta||l[1])||!1;var c=ji.extendFlat({},a.font);c.size=.25*(o||u||mm.defaultNumberFontSize),ji.coerceFont(n,"title.font",c),n("title.text");var h,d,p,m;function y(k,A){return ji.coerce(h,d,ym.gauge,k,A)}function b(k,A){return ji.coerce(p,m,ym.gauge.axis,k,A)}if(r._hasGauge){h=e.gauge,h||(h={}),d=JB.newContainer(r,"gauge"),y("shape");var _=r._isBullet=r.gauge.shape==="bullet";_||n("title.align","center");var T=r._isAngular=r.gauge.shape==="angular";T||n("align","center"),y("bgcolor",a.paper_bgcolor),y("borderwidth"),y("bordercolor"),y("bar.color"),y("bar.line.color"),y("bar.line.width");var x=mm.valueThickness*(r.gauge.shape==="bullet"?.5:1);y("bar.thickness",x),Ude(h,d,{name:"steps",handleItemDefaults:Kde}),y("threshold.value"),y("threshold.thickness"),y("threshold.line.width"),y("threshold.line.color"),p={},h&&(p=h.axis||{}),m=JB.newContainer(d,"axis"),b("visible"),r._range=b("range",r._range);var M={font:a.font,noAutotickangles:!0,outerTicks:!0,noTicklabelshift:!0,noTicklabelstandoff:!0};Wde(p,m,b,"linear"),Jde(p,m,b,"linear",M),Zde(p,m,b,"linear",M),Xde(p,m,b,M)}else n("title.align","center"),n("align","center"),r._isAngular=r._isBullet=!1;r._length=null}function Kde(e,r){function t(a,n){return ji.coerce(e,r,ym.gauge.steps,a,n)}t("color"),t("line.color"),t("line.width"),t("range"),t("thickness")}$B.exports={supplyDefaults:$de}});var jB=O((m_e,QB)=>{"use strict";function Qde(e,r){var t=[],a=r.value;typeof r._lastValue!="number"&&(r._lastValue=r.value);var n=r._lastValue,i=n;return r._hasDelta&&typeof r.delta.reference=="number"&&(i=r.delta.reference),t[0]={y:a,lastY:n,delta:a-i,relativeDelta:(a-i)/i},t}QB.exports={calc:Qde}});function kl(e,r,t){e.prototype=r.prototype=t,t.constructor=e}function bo(e,r){var t=Object.create(e.prototype);for(var a in r)t[a]=r[a];return t}var gm=it(()=>{});function rl(){}function rY(){return this.rgb().formatHex()}function l1e(){return this.rgb().formatHex8()}function o1e(){return sY(this).formatHsl()}function tY(){return this.rgb().formatRgb()}function wo(e){var r,t;return e=(e+"").trim().toLowerCase(),(r=jde.exec(e))?(t=r[1].length,r=parseInt(r[1],16),t===6?aY(r):t===3?new fa(r>>8&15|r>>4&240,r>>4&15|r&240,(r&15)<<4|r&15,1):t===8?xm(r>>24&255,r>>16&255,r>>8&255,(r&255)/255):t===4?xm(r>>12&15|r>>8&240,r>>8&15|r>>4&240,r>>4&15|r&240,((r&15)<<4|r&15)/255):null):(r=e1e.exec(e))?new fa(r[1],r[2],r[3],1):(r=r1e.exec(e))?new fa(r[1]*255/100,r[2]*255/100,r[3]*255/100,1):(r=t1e.exec(e))?xm(r[1],r[2],r[3],r[4]):(r=a1e.exec(e))?xm(r[1]*255/100,r[2]*255/100,r[3]*255/100,r[4]):(r=n1e.exec(e))?lY(r[1],r[2]/100,r[3]/100,1):(r=i1e.exec(e))?lY(r[1],r[2]/100,r[3]/100,r[4]):eY.hasOwnProperty(e)?aY(eY[e]):e==="transparent"?new fa(NaN,NaN,NaN,0):null}function aY(e){return new fa(e>>16&255,e>>8&255,e&255,1)}function xm(e,r,t,a){return a<=0&&(e=r=t=NaN),new fa(e,r,t,a)}function m0(e){return e instanceof rl||(e=wo(e)),e?(e=e.rgb(),new fa(e.r,e.g,e.b,e.opacity)):new fa}function Xf(e,r,t,a){return arguments.length===1?m0(e):new fa(e,r,t,a==null?1:a)}function fa(e,r,t,a){this.r=+e,this.g=+r,this.b=+t,this.opacity=+a}function nY(){return`#${Is(this.r)}${Is(this.g)}${Is(this.b)}`}function s1e(){return`#${Is(this.r)}${Is(this.g)}${Is(this.b)}${Is((isNaN(this.opacity)?1:this.opacity)*255)}`}function iY(){let e=_m(this.opacity);return`${e===1?"rgb(":"rgba("}${Hs(this.r)}, ${Hs(this.g)}, ${Hs(this.b)}${e===1?")":`, ${e})`}`}function _m(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Hs(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Is(e){return e=Hs(e),(e<16?"0":"")+e.toString(16)}function lY(e,r,t,a){return a<=0?e=r=t=NaN:t<=0||t>=1?e=r=NaN:r<=0&&(e=NaN),new Ei(e,r,t,a)}function sY(e){if(e instanceof Ei)return new Ei(e.h,e.s,e.l,e.opacity);if(e instanceof rl||(e=wo(e)),!e)return new Ei;if(e instanceof Ei)return e;e=e.rgb();var r=e.r/255,t=e.g/255,a=e.b/255,n=Math.min(r,t,a),i=Math.max(r,t,a),l=NaN,o=i-n,s=(i+n)/2;return o?(r===i?l=(t-a)/o+(t0&&s<1?0:l,new Ei(l,o,s,e.opacity)}function y0(e,r,t,a){return arguments.length===1?sY(e):new Ei(e,r,t,a==null?1:a)}function Ei(e,r,t,a){this.h=+e,this.s=+r,this.l=+t,this.opacity=+a}function oY(e){return e=(e||0)%360,e<0?e+360:e}function bm(e){return Math.max(0,Math.min(1,e||0))}function M5(e,r,t){return(e<60?r+(t-r)*e/60:e<180?t:e<240?r+(t-r)*(240-e)/60:r)*255}var _o,Os,Wf,p0,el,jde,e1e,r1e,t1e,a1e,n1e,i1e,eY,wm=it(()=>{gm();_o=.7,Os=1/_o,Wf="\\s*([+-]?\\d+)\\s*",p0="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",el="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",jde=/^#([0-9a-f]{3,8})$/,e1e=new RegExp(`^rgb\\(${Wf},${Wf},${Wf}\\)$`),r1e=new RegExp(`^rgb\\(${el},${el},${el}\\)$`),t1e=new RegExp(`^rgba\\(${Wf},${Wf},${Wf},${p0}\\)$`),a1e=new RegExp(`^rgba\\(${el},${el},${el},${p0}\\)$`),n1e=new RegExp(`^hsl\\(${p0},${el},${el}\\)$`),i1e=new RegExp(`^hsla\\(${p0},${el},${el},${p0}\\)$`),eY={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};kl(rl,wo,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:rY,formatHex:rY,formatHex8:l1e,formatHsl:o1e,formatRgb:tY,toString:tY});kl(fa,Xf,bo(rl,{brighter(e){return e=e==null?Os:Math.pow(Os,e),new fa(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?_o:Math.pow(_o,e),new fa(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new fa(Hs(this.r),Hs(this.g),Hs(this.b),_m(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:nY,formatHex:nY,formatHex8:s1e,formatRgb:iY,toString:iY}));kl(Ei,y0,bo(rl,{brighter(e){return e=e==null?Os:Math.pow(Os,e),new Ei(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?_o:Math.pow(_o,e),new Ei(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,r=isNaN(e)||isNaN(this.s)?0:this.s,t=this.l,a=t+(t<.5?t:1-t)*r,n=2*t-a;return new fa(M5(e>=240?e-240:e+120,n,a),M5(e,n,a),M5(e<120?e+240:e-120,n,a),this.opacity)},clamp(){return new Ei(oY(this.h),bm(this.s),bm(this.l),_m(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=_m(this.opacity);return`${e===1?"hsl(":"hsla("}${oY(this.h)}, ${bm(this.s)*100}%, ${bm(this.l)*100}%${e===1?")":`, ${e})`}`}}))});var Tm,Mm,A5=it(()=>{Tm=Math.PI/180,Mm=180/Math.PI});function dY(e){if(e instanceof tl)return new tl(e.l,e.a,e.b,e.opacity);if(e instanceof ql)return pY(e);e instanceof fa||(e=m0(e));var r=C5(e.r),t=C5(e.g),a=C5(e.b),n=k5((.2225045*r+.7168786*t+.0606169*a)/fY),i,l;return r===t&&t===a?i=l=n:(i=k5((.4360747*r+.3850649*t+.1430804*a)/uY),l=k5((.0139322*r+.0971045*t+.7141733*a)/cY)),new tl(116*n-16,500*(i-n),200*(n-l),e.opacity)}function Jf(e,r,t,a){return arguments.length===1?dY(e):new tl(e,r,t,a==null?1:a)}function tl(e,r,t,a){this.l=+e,this.a=+r,this.b=+t,this.opacity=+a}function k5(e){return e>u1e?Math.pow(e,1/3):e/hY+vY}function q5(e){return e>Zf?e*e*e:hY*(e-vY)}function S5(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function C5(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function f1e(e){if(e instanceof ql)return new ql(e.h,e.c,e.l,e.opacity);if(e instanceof tl||(e=dY(e)),e.a===0&&e.b===0)return new ql(NaN,0{gm();wm();A5();Am=18,uY=.96422,fY=1,cY=.82521,vY=4/29,Zf=6/29,hY=3*Zf*Zf,u1e=Zf*Zf*Zf;kl(tl,Jf,bo(rl,{brighter(e){return new tl(this.l+Am*(e==null?1:e),this.a,this.b,this.opacity)},darker(e){return new tl(this.l-Am*(e==null?1:e),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,r=isNaN(this.a)?e:e+this.a/500,t=isNaN(this.b)?e:e-this.b/200;return r=uY*q5(r),e=fY*q5(e),t=cY*q5(t),new fa(S5(3.1338561*r-1.6168667*e-.4906146*t),S5(-.9787684*r+1.9161415*e+.033454*t),S5(.0719453*r-.2289914*e+1.4052427*t),this.opacity)}}));kl(ql,g0,bo(rl,{brighter(e){return new ql(this.h,this.c,this.l+Am*(e==null?1:e),this.opacity)},darker(e){return new ql(this.h,this.c,this.l-Am*(e==null?1:e),this.opacity)},rgb(){return pY(this).rgb()}}))});function c1e(e){if(e instanceof Bs)return new Bs(e.h,e.s,e.l,e.opacity);e instanceof fa||(e=m0(e));var r=e.r/255,t=e.g/255,a=e.b/255,n=(xY*a+yY*r-gY*t)/(xY+yY-gY),i=a-n,l=(x0*(t-n)-D5*i)/km,o=Math.sqrt(l*l+i*i)/(x0*n*(1-n)),s=o?Math.atan2(l,i)*Mm-120:NaN;return new Bs(s<0?s+360:s,o,n,e.opacity)}function $f(e,r,t,a){return arguments.length===1?c1e(e):new Bs(e,r,t,a==null?1:a)}function Bs(e,r,t,a){this.h=+e,this.s=+r,this.l=+t,this.opacity=+a}var bY,L5,D5,km,x0,yY,gY,xY,_Y=it(()=>{gm();wm();A5();bY=-.14861,L5=1.78277,D5=-.29227,km=-.90649,x0=1.97294,yY=x0*km,gY=x0*L5,xY=L5*D5-km*bY;kl(Bs,$f,bo(rl,{brighter(e){return e=e==null?Os:Math.pow(Os,e),new Bs(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?_o:Math.pow(_o,e),new Bs(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=isNaN(this.h)?0:(this.h+120)*Tm,r=+this.l,t=isNaN(this.s)?0:this.s*r*(1-r),a=Math.cos(e),n=Math.sin(e);return new fa(255*(r+t*(bY*a+L5*n)),255*(r+t*(D5*a+km*n)),255*(r+t*(x0*a)),this.opacity)}}))});var Ys=it(()=>{wm();mY();_Y()});function E5(e,r,t,a,n){var i=e*e,l=i*e;return((1-3*e+3*i-l)*r+(4-6*i+3*l)*t+(1+3*e+3*i-3*l)*a+l*n)/6}function qm(e){var r=e.length-1;return function(t){var a=t<=0?t=0:t>=1?(t=1,r-1):Math.floor(t*r),n=e[a],i=e[a+1],l=a>0?e[a-1]:2*n-i,o=a{});function Cm(e){var r=e.length;return function(t){var a=Math.floor(((t%=1)<0?++t:t)*r),n=e[(a+r-1)%r],i=e[a%r],l=e[(a+1)%r],o=e[(a+2)%r];return E5((t-a/r)*r,n,i,l,o)}}var P5=it(()=>{Sm()});var Kf,R5=it(()=>{Kf=e=>()=>e});function wY(e,r){return function(t){return e+t*r}}function v1e(e,r,t){return e=Math.pow(e,t),r=Math.pow(r,t)-e,t=1/t,function(a){return Math.pow(e+a*r,t)}}function To(e,r){var t=r-e;return t?wY(e,t>180||t<-180?t-360*Math.round(t/360):t):Kf(isNaN(e)?r:e)}function TY(e){return(e=+e)==1?It:function(r,t){return t-r?v1e(r,t,e):Kf(isNaN(r)?t:r)}}function It(e,r){var t=r-e;return t?wY(e,t):Kf(isNaN(e)?r:e)}var Vs=it(()=>{R5()});function MY(e){return function(r){var t=r.length,a=new Array(t),n=new Array(t),i=new Array(t),l,o;for(l=0;l{Ys();Sm();P5();Vs();b0=function e(r){var t=TY(r);function a(n,i){var l=t((n=Xf(n)).r,(i=Xf(i)).r),o=t(n.g,i.g),s=t(n.b,i.b),u=It(n.opacity,i.opacity);return function(f){return n.r=l(f),n.g=o(f),n.b=s(f),n.opacity=u(f),n+""}}return a.gamma=e,a}(1);AY=MY(qm),kY=MY(Cm)});function Qf(e,r){r||(r=[]);var t=e?Math.min(r.length,e.length):0,a=r.slice(),n;return function(i){for(n=0;n{});function qY(e,r){return(Lm(r)?Qf:N5)(e,r)}function N5(e,r){var t=r?r.length:0,a=e?Math.min(t,e.length):0,n=new Array(a),i=new Array(t),l;for(l=0;l{_0();Dm()});function Em(e,r){var t=new Date;return e=+e,r=+r,function(a){return t.setTime(e*(1-a)+r*a),t}}var I5=it(()=>{});function mn(e,r){return e=+e,r=+r,function(t){return e*(1-t)+r*t}}var w0=it(()=>{});function Pm(e,r){var t={},a={},n;(e===null||typeof e!="object")&&(e={}),(r===null||typeof r!="object")&&(r={});for(n in r)n in e?t[n]=Mo(e[n],r[n]):a[n]=r[n];return function(i){for(n in t)a[n]=t[n](i);return a}}var H5=it(()=>{_0()});function h1e(e){return function(){return e}}function d1e(e){return function(r){return e(r)+""}}function Rm(e,r){var t=B5.lastIndex=O5.lastIndex=0,a,n,i,l=-1,o=[],s=[];for(e=e+"",r=r+"";(a=B5.exec(e))&&(n=O5.exec(r));)(i=n.index)>t&&(i=r.slice(t,i),o[l]?o[l]+=i:o[++l]=i),(a=a[0])===(n=n[0])?o[l]?o[l]+=n:o[++l]=n:(o[++l]=null,s.push({i:l,x:mn(a,n)})),t=O5.lastIndex;return t{w0();B5=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,O5=new RegExp(B5.source,"g")});function Mo(e,r){var t=typeof r,a;return r==null||t==="boolean"?Kf(r):(t==="number"?mn:t==="string"?(a=wo(r))?(r=a,b0):Rm:r instanceof wo?b0:r instanceof Date?Em:Lm(r)?Qf:Array.isArray(r)?N5:typeof r.valueOf!="function"&&typeof r.toString!="function"||isNaN(r)?Pm:mn)(e,r)}var _0=it(()=>{Ys();z5();F5();I5();w0();H5();Y5();R5();Dm()});function SY(e){var r=e.length;return function(t){return e[Math.max(0,Math.min(r-1,Math.floor(t*r)))]}}var CY=it(()=>{});function LY(e,r){var t=To(+e,+r);return function(a){var n=t(a);return n-360*Math.floor(n/360)}}var DY=it(()=>{Vs()});function EY(e,r){return e=+e,r=+r,function(t){return Math.round(e*(1-t)+r*t)}}var PY=it(()=>{});function V5(e,r,t,a,n,i){var l,o,s;return(l=Math.sqrt(e*e+r*r))&&(e/=l,r/=l),(s=e*t+r*a)&&(t-=e*s,a-=r*s),(o=Math.sqrt(t*t+a*a))&&(t/=o,a/=o,s/=o),e*a{RY=180/Math.PI,zm={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}});function NY(e){let r=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return r.isIdentity?zm:V5(r.a,r.b,r.c,r.d,r.e,r.f)}function FY(e){return e==null?zm:(Nm||(Nm=document.createElementNS("http://www.w3.org/2000/svg","g")),Nm.setAttribute("transform",e),(e=Nm.transform.baseVal.consolidate())?(e=e.matrix,V5(e.a,e.b,e.c,e.d,e.e,e.f)):zm)}var Nm,IY=it(()=>{zY()});function HY(e,r,t,a){function n(u){return u.length?u.pop()+" ":""}function i(u,f,c,h,d,p){if(u!==c||f!==h){var m=d.push("translate(",null,r,null,t);p.push({i:m-4,x:mn(u,c)},{i:m-2,x:mn(f,h)})}else(c||h)&&d.push("translate("+c+r+h+t)}function l(u,f,c,h){u!==f?(u-f>180?f+=360:f-u>180&&(u+=360),h.push({i:c.push(n(c)+"rotate(",null,a)-2,x:mn(u,f)})):f&&c.push(n(c)+"rotate("+f+a)}function o(u,f,c,h){u!==f?h.push({i:c.push(n(c)+"skewX(",null,a)-2,x:mn(u,f)}):f&&c.push(n(c)+"skewX("+f+a)}function s(u,f,c,h,d,p){if(u!==c||f!==h){var m=d.push(n(d)+"scale(",null,",",null,")");p.push({i:m-4,x:mn(u,c)},{i:m-2,x:mn(f,h)})}else(c!==1||h!==1)&&d.push(n(d)+"scale("+c+","+h+")")}return function(u,f){var c=[],h=[];return u=e(u),f=e(f),i(u.translateX,u.translateY,f.translateX,f.translateY,c,h),l(u.rotate,f.rotate,c,h),o(u.skewX,f.skewX,c,h),s(u.scaleX,u.scaleY,f.scaleX,f.scaleY,c,h),u=f=null,function(d){for(var p=-1,m=h.length,y;++p{w0();IY();OY=HY(NY,"px, ","px)","deg)"),BY=HY(FY,", ",")",")")});function VY(e){return((e=Math.exp(e))+1/e)/2}function m1e(e){return((e=Math.exp(e))-1/e)/2}function y1e(e){return((e=Math.exp(2*e))-1)/(e+1)}var p1e,GY,UY=it(()=>{p1e=1e-12;GY=function e(r,t,a){function n(i,l){var o=i[0],s=i[1],u=i[2],f=l[0],c=l[1],h=l[2],d=f-o,p=c-s,m=d*d+p*p,y,b;if(m{Ys();Vs();XY=WY(To),ZY=WY(It)});function G5(e,r){var t=It((e=Jf(e)).l,(r=Jf(r)).l),a=It(e.a,r.a),n=It(e.b,r.b),i=It(e.opacity,r.opacity);return function(l){return e.l=t(l),e.a=a(l),e.b=n(l),e.opacity=i(l),e+""}}var $Y=it(()=>{Ys();Vs()});function KY(e){return function(r,t){var a=e((r=g0(r)).h,(t=g0(t)).h),n=It(r.c,t.c),i=It(r.l,t.l),l=It(r.opacity,t.opacity);return function(o){return r.h=a(o),r.c=n(o),r.l=i(o),r.opacity=l(o),r+""}}}var QY,jY,eV=it(()=>{Ys();Vs();QY=KY(To),jY=KY(It)});function rV(e){return function r(t){t=+t;function a(n,i){var l=e((n=$f(n)).h,(i=$f(i)).h),o=It(n.s,i.s),s=It(n.l,i.l),u=It(n.opacity,i.opacity);return function(f){return n.h=l(f),n.s=o(f),n.l=s(Math.pow(f,t)),n.opacity=u(f),n+""}}return a.gamma=r,a}(1)}var tV,aV,nV=it(()=>{Ys();Vs();tV=rV(To),aV=rV(It)});function U5(e,r){r===void 0&&(r=e,e=Mo);for(var t=0,a=r.length-1,n=r[0],i=new Array(a<0?0:a);t{_0()});function lV(e,r){for(var t=new Array(r),a=0;a{});var W5={};cX(W5,{interpolate:()=>Mo,interpolateArray:()=>qY,interpolateBasis:()=>qm,interpolateBasisClosed:()=>Cm,interpolateCubehelix:()=>tV,interpolateCubehelixLong:()=>aV,interpolateDate:()=>Em,interpolateDiscrete:()=>SY,interpolateHcl:()=>QY,interpolateHclLong:()=>jY,interpolateHsl:()=>XY,interpolateHslLong:()=>ZY,interpolateHue:()=>LY,interpolateLab:()=>G5,interpolateNumber:()=>mn,interpolateNumberArray:()=>Qf,interpolateObject:()=>Pm,interpolateRgb:()=>b0,interpolateRgbBasis:()=>AY,interpolateRgbBasisClosed:()=>kY,interpolateRound:()=>EY,interpolateString:()=>Rm,interpolateTransformCss:()=>OY,interpolateTransformSvg:()=>BY,interpolateZoom:()=>GY,piecewise:()=>U5,quantize:()=>lV});var X5=it(()=>{_0();F5();Sm();P5();I5();CY();DY();w0();Dm();H5();PY();Y5();YY();UY();z5();JY();$Y();eV();nV();iV();oV()});var hV=O((i6e,vV)=>{"use strict";var Zs=kr(),g1e=(X5(),Z4(W5)).interpolate,sV=(X5(),Z4(W5)).interpolateNumber,Ao=Pe(),x1e=Ao.strScale,M0=Ao.strTranslate,b1e=Ao.rad2deg,_1e=Ea().MID_SHIFT,Xs=Yr(),Gs=T5(),Im=va(),La=Zr(),w1e=vp(),T1e=dp(),M1e=_n(),jf=xr(),Z5={left:"start",center:"middle",right:"end"},Us={left:0,center:.5,right:1},uV=/[yzafpnµmkMGTPEZY]/;function A0(e){return e&&e.duration>0}vV.exports=function(r,t,a,n){var i=r._fullLayout,l;A0(a)&&n&&(l=n()),Ao.makeTraceGroups(i._indicatorlayer,t,"trace").each(function(o){var s=o[0],u=s.trace,f=Zs.select(this),c=u._hasGauge,h=u._isAngular,d=u._isBullet,p=u.domain,m={w:i._size.w*(p.x[1]-p.x[0]),h:i._size.h*(p.y[1]-p.y[0]),l:i._size.l+i._size.w*p.x[0],r:i._size.r+i._size.w*(1-p.x[1]),t:i._size.t+i._size.h*(1-p.y[1]),b:i._size.b+i._size.h*p.y[0]},y=m.l+m.w/2,b=m.t+m.h/2,_=Math.min(m.w/2,m.h),T=Gs.innerRadius*_,x,M,k,A=u.align||"center";if(M=b,!c)x=m.l+Us[A]*m.w,k=function(Y){return fV(Y,m.w,m.h)};else if(h&&(x=y,M=b+_/2,k=function(Y){return C1e(Y,.9*T)}),d){var C=Gs.bulletPadding,D=1-Gs.bulletNumberDomainSize+C;x=m.l+(D+(1-D)*Us[A])*m.w,k=function(Y){return fV(Y,(Gs.bulletNumberDomainSize-C)*m.w,m.h)}}q1e(r,f,o,{numbersX:x,numbersY:M,numbersScaler:k,transitionOpts:a,onComplete:l});var E,R;c&&(E={range:u.gauge.axis.range,color:u.gauge.bgcolor,line:{color:u.gauge.bordercolor,width:0},thickness:1},R={range:u.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:u.gauge.bordercolor,width:u.gauge.borderwidth},thickness:1});var N=f.selectAll("g.angular").data(h?o:[]);N.exit().remove();var I=f.selectAll("g.angularaxis").data(h?o:[]);I.exit().remove(),h&&k1e(r,f,o,{radius:_,innerRadius:T,gauge:N,layer:I,size:m,gaugeBg:E,gaugeOutline:R,transitionOpts:a,onComplete:l});var H=f.selectAll("g.bullet").data(d?o:[]);H.exit().remove();var G=f.selectAll("g.bulletaxis").data(d?o:[]);G.exit().remove(),d&&A1e(r,f,o,{gauge:H,layer:G,size:m,gaugeBg:E,gaugeOutline:R,transitionOpts:a,onComplete:l});var W=f.selectAll("text.title").data(o);W.exit().remove(),W.enter().append("text").classed("title",!0),W.attr("text-anchor",function(){return d?Z5.right:Z5[u.title.align]}).text(u.title.text).call(Xs.font,u.title.font).call(Im.convertToTspans,r),W.attr("transform",function(){var Y=m.l+m.w*Us[u.title.align],B,V=Gs.titlePadding,K=Xs.bBox(W.node());if(c){if(h)if(u.gauge.axis.visible){var J=Xs.bBox(I.node());B=J.top-V-K.bottom}else B=m.t+m.h/2-_/2-K.bottom-V;d&&(B=M-(K.top+K.bottom)/2,Y=m.l-Gs.bulletPadding*m.w)}else B=u._numbersTop-V-K.bottom;return M0(Y,B)})})};function A1e(e,r,t,a){var n=t[0].trace,i=a.gauge,l=a.layer,o=a.gaugeBg,s=a.gaugeOutline,u=a.size,f=n.domain,c=a.transitionOpts,h=a.onComplete,d,p,m,y,b;i.enter().append("g").classed("bullet",!0),i.attr("transform",M0(u.l,u.t)),l.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),l.selectAll("g.xbulletaxistick,path,text").remove();var _=u.h,T=n.gauge.bar.thickness*_,x=f.x[0],M=f.x[0]+(f.x[1]-f.x[0])*(n._hasNumber||n._hasDelta?1-Gs.bulletNumberDomainSize:1);d=T0(e,n.gauge.axis),d._id="xbulletaxis",d.domain=[x,M],d.setScale(),p=La.calcTicks(d),m=La.makeTransTickFn(d),y=La.getTickSigns(d)[2],b=u.t+u.h,d.visible&&(La.drawTicks(e,d,{vals:d.ticks==="inside"?La.clipEnds(d,p):p,layer:l,path:La.makeTickPath(d,b,y),transFn:m}),La.drawLabels(e,d,{vals:p,layer:l,transFn:m,labelFns:La.makeLabelFns(d,b)}));function k(I){I.attr("width",function(H){return Math.max(0,d.c2p(H.range[1])-d.c2p(H.range[0]))}).attr("x",function(H){return d.c2p(H.range[0])}).attr("y",function(H){return .5*(1-H.thickness)*_}).attr("height",function(H){return H.thickness*_})}var A=[o].concat(n.gauge.steps),C=i.selectAll("g.bg-bullet").data(A);C.enter().append("g").classed("bg-bullet",!0).append("rect"),C.select("rect").call(k).call(Ws),C.exit().remove();var D=i.selectAll("g.value-bullet").data([n.gauge.bar]);D.enter().append("g").classed("value-bullet",!0).append("rect"),D.select("rect").attr("height",T).attr("y",(_-T)/2).call(Ws),A0(c)?D.select("rect").transition().duration(c.duration).ease(c.easing).each("end",function(){h&&h()}).each("interrupt",function(){h&&h()}).attr("width",Math.max(0,d.c2p(Math.min(n.gauge.axis.range[1],t[0].y)))):D.select("rect").attr("width",typeof t[0].y=="number"?Math.max(0,d.c2p(Math.min(n.gauge.axis.range[1],t[0].y))):0),D.exit().remove();var E=t.filter(function(){return n.gauge.threshold.value||n.gauge.threshold.value===0}),R=i.selectAll("g.threshold-bullet").data(E);R.enter().append("g").classed("threshold-bullet",!0).append("line"),R.select("line").attr("x1",d.c2p(n.gauge.threshold.value)).attr("x2",d.c2p(n.gauge.threshold.value)).attr("y1",(1-n.gauge.threshold.thickness)/2*_).attr("y2",(1-(1-n.gauge.threshold.thickness)/2)*_).call(jf.stroke,n.gauge.threshold.line.color).style("stroke-width",n.gauge.threshold.line.width),R.exit().remove();var N=i.selectAll("g.gauge-outline").data([s]);N.enter().append("g").classed("gauge-outline",!0).append("rect"),N.select("rect").call(k).call(Ws),N.exit().remove()}function k1e(e,r,t,a){var n=t[0].trace,i=a.size,l=a.radius,o=a.innerRadius,s=a.gaugeBg,u=a.gaugeOutline,f=[i.l+i.w/2,i.t+i.h/2+l/2],c=a.gauge,h=a.layer,d=a.transitionOpts,p=a.onComplete,m=Math.PI/2;function y(re){var le=n.gauge.axis.range[0],ue=n.gauge.axis.range[1],ve=(re-le)/(ue-le)*Math.PI-m;return ve<-m?-m:ve>m?m:ve}function b(re){return Zs.svg.arc().innerRadius((o+l)/2-re/2*(l-o)).outerRadius((o+l)/2+re/2*(l-o)).startAngle(-m)}function _(re){re.attr("d",function(le){return b(le.thickness).startAngle(y(le.range[0])).endAngle(y(le.range[1]))()})}var T,x,M,k;c.enter().append("g").classed("angular",!0),c.attr("transform",M0(f[0],f[1])),h.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),h.selectAll("g.xangularaxistick,path,text").remove(),T=T0(e,n.gauge.axis),T.type="linear",T.range=n.gauge.axis.range,T._id="xangularaxis",T.ticklabeloverflow="allow",T.setScale();var A=function(re){return(T.range[0]-re.x)/(T.range[1]-T.range[0])*Math.PI+Math.PI},C={},D=La.makeLabelFns(T,0),E=D.labelStandoff;C.xFn=function(re){var le=A(re);return Math.cos(le)*E},C.yFn=function(re){var le=A(re),ue=Math.sin(le)>0?.2:1;return-Math.sin(le)*(E+re.fontSize*ue)+Math.abs(Math.cos(le))*(re.fontSize*_1e)},C.anchorFn=function(re){var le=A(re),ue=Math.cos(le);return Math.abs(ue)<.1?"middle":ue>0?"start":"end"},C.heightFn=function(re,le,ue){var ve=A(re);return-.5*(1+Math.sin(ve))*ue};var R=function(re){return M0(f[0]+l*Math.cos(re),f[1]-l*Math.sin(re))};M=function(re){return R(A(re))};var N=function(re){var le=A(re);return R(le)+"rotate("+-b1e(le)+")"};if(x=La.calcTicks(T),k=La.getTickSigns(T)[2],T.visible){k=T.ticks==="inside"?-1:1;var I=(T.linewidth||1)/2;La.drawTicks(e,T,{vals:x,layer:h,path:"M"+k*I+",0h"+k*T.ticklen,transFn:N}),La.drawLabels(e,T,{vals:x,layer:h,transFn:M,labelFns:C})}var H=[s].concat(n.gauge.steps),G=c.selectAll("g.bg-arc").data(H);G.enter().append("g").classed("bg-arc",!0).append("path"),G.select("path").call(_).call(Ws),G.exit().remove();var W=b(n.gauge.bar.thickness),Y=c.selectAll("g.value-arc").data([n.gauge.bar]);Y.enter().append("g").classed("value-arc",!0).append("path");var B=Y.select("path");A0(d)?(B.transition().duration(d.duration).ease(d.easing).each("end",function(){p&&p()}).each("interrupt",function(){p&&p()}).attrTween("d",S1e(W,y(t[0].lastY),y(t[0].y))),n._lastValue=t[0].y):B.attr("d",typeof t[0].y=="number"?W.endAngle(y(t[0].y)):"M0,0Z"),B.call(Ws),Y.exit().remove(),H=[];var V=n.gauge.threshold.value;(V||V===0)&&H.push({range:[V,V],color:n.gauge.threshold.color,line:{color:n.gauge.threshold.line.color,width:n.gauge.threshold.line.width},thickness:n.gauge.threshold.thickness});var K=c.selectAll("g.threshold-arc").data(H);K.enter().append("g").classed("threshold-arc",!0).append("path"),K.select("path").call(_).call(Ws),K.exit().remove();var J=c.selectAll("g.gauge-outline").data([u]);J.enter().append("g").classed("gauge-outline",!0).append("path"),J.select("path").call(_).call(Ws),J.exit().remove()}function q1e(e,r,t,a){var n=t[0].trace,i=a.numbersX,l=a.numbersY,o=n.align||"center",s=Z5[o],u=a.transitionOpts,f=a.onComplete,c=Ao.ensureSingle(r,"g","numbers"),h,d,p,m=[];n._hasNumber&&m.push("number"),n._hasDelta&&(m.push("delta"),n.delta.position==="left"&&m.reverse());var y=c.selectAll("text").data(m);y.enter().append("text"),y.attr("text-anchor",function(){return s}).attr("class",function(R){return R}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),y.exit().remove();function b(R,N,I,H){if(R.match("s")&&I>=0!=H>=0&&!N(I).slice(-1).match(uV)&&!N(H).slice(-1).match(uV)){var G=R.slice().replace("s","f").replace(/\d+/,function(Y){return parseInt(Y)-1}),W=T0(e,{tickformat:G});return function(Y){return Math.abs(Y)<1?La.tickText(W,Y).text:N(Y)}}else return N}function _(){var R=T0(e,{tickformat:n.number.valueformat},n._range);R.setScale(),La.prepTicks(R);var N=function(Y){return La.tickText(R,Y).text},I=n.number.suffix,H=n.number.prefix,G=c.select("text.number");function W(){var Y=typeof t[0].y=="number"?H+N(t[0].y)+I:"-";G.text(Y).call(Xs.font,n.number.font).call(Im.convertToTspans,e)}return A0(u)?G.transition().duration(u.duration).ease(u.easing).each("end",function(){W(),f&&f()}).each("interrupt",function(){W(),f&&f()}).attrTween("text",function(){var Y=Zs.select(this),B=sV(t[0].lastY,t[0].y);n._lastValue=t[0].y;var V=b(n.number.valueformat,N,t[0].lastY,t[0].y);return function(K){Y.text(H+V(B(K))+I)}}):W(),h=cV(H+N(t[0].y)+I,n.number.font,s,e),G}function T(){var R=T0(e,{tickformat:n.delta.valueformat},n._range);R.setScale(),La.prepTicks(R);var N=function(K){return La.tickText(R,K).text},I=n.delta.suffix,H=n.delta.prefix,G=function(K){var J=n.delta.relative?K.relativeDelta:K.delta;return J},W=function(K,J){return K===0||typeof K!="number"||isNaN(K)?"-":(K>0?n.delta.increasing.symbol:n.delta.decreasing.symbol)+H+J(K)+I},Y=function(K){return K.delta>=0?n.delta.increasing.color:n.delta.decreasing.color};n._deltaLastValue===void 0&&(n._deltaLastValue=G(t[0]));var B=c.select("text.delta");B.call(Xs.font,n.delta.font).call(jf.fill,Y({delta:n._deltaLastValue}));function V(){B.text(W(G(t[0]),N)).call(jf.fill,Y(t[0])).call(Im.convertToTspans,e)}return A0(u)?B.transition().duration(u.duration).ease(u.easing).tween("text",function(){var K=Zs.select(this),J=G(t[0]),re=n._deltaLastValue,le=b(n.delta.valueformat,N,re,J),ue=sV(re,J);return n._deltaLastValue=J,function(ve){K.text(W(ue(ve),le)),K.call(jf.fill,Y({delta:ue(ve)}))}}).each("end",function(){V(),f&&f()}).each("interrupt",function(){V(),f&&f()}):V(),d=cV(W(G(t[0]),N),n.delta.font,s,e),B}var x=n.mode+n.align,M;if(n._hasDelta&&(M=T(),x+=n.delta.position+n.delta.font.size+n.delta.font.family+n.delta.valueformat,x+=n.delta.increasing.symbol+n.delta.decreasing.symbol,p=d),n._hasNumber&&(_(),x+=n.number.font.size+n.number.font.family+n.number.valueformat+n.number.suffix+n.number.prefix,p=h),n._hasDelta&&n._hasNumber){var k=[(h.left+h.right)/2,(h.top+h.bottom)/2],A=[(d.left+d.right)/2,(d.top+d.bottom)/2],C,D,E=.75*n.delta.font.size;n.delta.position==="left"&&(C=Fm(n,"deltaPos",0,-1*(h.width*Us[n.align]+d.width*(1-Us[n.align])+E),x,Math.min),D=k[1]-A[1],p={width:h.width+d.width+E,height:Math.max(h.height,d.height),left:d.left+C,right:h.right,top:Math.min(h.top,d.top+D),bottom:Math.max(h.bottom,d.bottom+D)}),n.delta.position==="right"&&(C=Fm(n,"deltaPos",0,h.width*(1-Us[n.align])+d.width*Us[n.align]+E,x,Math.max),D=k[1]-A[1],p={width:h.width+d.width+E,height:Math.max(h.height,d.height),left:h.left,right:d.right+C,top:Math.min(h.top,d.top+D),bottom:Math.max(h.bottom,d.bottom+D)}),n.delta.position==="bottom"&&(C=null,D=d.height,p={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height,bottom:h.bottom+d.height}),n.delta.position==="top"&&(C=null,D=h.top,p={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height-d.height,bottom:h.bottom}),M.attr({dx:C,dy:D})}(n._hasNumber||n._hasDelta)&&c.attr("transform",function(){var R=a.numbersScaler(p);x+=R[2];var N=Fm(n,"numbersScale",1,R[0],x,Math.min),I;n._scaleNumbers||(N=1),n._isAngular?I=l-N*p.bottom:I=l-N*(p.top+p.bottom)/2,n._numbersTop=N*p.top+I;var H=p[o];o==="center"&&(H=(p.left+p.right)/2);var G=i-N*H;return G=Fm(n,"numbersTranslate",0,G,x,Math.max),M0(G,I)+x1e(N)})}function Ws(e){e.each(function(r){jf.stroke(Zs.select(this),r.line.color)}).each(function(r){jf.fill(Zs.select(this),r.color)}).style("stroke-width",function(r){return r.line.width})}function S1e(e,r,t){return function(){var a=g1e(r,t);return function(n){return e.endAngle(a(n))()}}}function T0(e,r,t){var a=e._fullLayout,n=Ao.extendFlat({type:"linear",ticks:"outside",range:t,showline:!0},r),i={type:"linear",_id:"x"+r._id},l={letter:"x",font:a.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function o(s,u){return Ao.coerce(n,i,M1e,s,u)}return w1e(n,i,o,l,a),T1e(n,i,o,l),i}function fV(e,r,t){var a=Math.min(r/e.width,t/e.height);return[a,e,r+"x"+t]}function C1e(e,r){var t=Math.sqrt(e.width/2*(e.width/2)+e.height*e.height),a=r/t;return[a,e,r]}function cV(e,r,t,a){var n=document.createElementNS("http://www.w3.org/2000/svg","text"),i=Zs.select(n);return i.text(e).attr("x",0).attr("y",0).attr("text-anchor",t).attr("data-unformatted",e).call(Im.convertToTspans,a).call(Xs.font,r),Xs.bBox(i.node())}function Fm(e,r,t,a,n,i){var l="_cache"+r;e[l]&&e[l].key===n||(e[l]={key:n,value:t});var o=Ao.aggNums(i,null,[e[l].value,a],2);return e[l].value=o,o}});var pV=O((l6e,dV)=>{"use strict";dV.exports={moduleType:"trace",name:"indicator",basePlotModule:BB(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:w5(),supplyDefaults:KB().supplyDefaults,calc:jB().calc,plot:hV(),meta:{}}});var yV=O((o6e,mV)=>{"use strict";mV.exports=pV()});var Om=O((s6e,wV)=>{"use strict";var Hm=Pe().extendFlat,k0=bi(),gV=di().axisHoverFormat,{hovertemplateAttrs:L1e,templatefallbackAttrs:D1e}=gn(),bV=fi().dash,E1e=Ac(),_V=Of(),P1e=_V.INCREASING.COLOR,R1e=_V.DECREASING.COLOR,J5=k0.line;function xV(e){return{line:{color:Hm({},J5.color,{dflt:e}),width:J5.width,dash:bV,editType:"style"},editType:"style"}}wV.exports={xperiod:k0.xperiod,xperiod0:k0.xperiod0,xperiodalignment:k0.xperiodalignment,xhoverformat:gV("x"),yhoverformat:gV("y"),x:{valType:"data_array",editType:"calc+clearAxisTypes"},open:{valType:"data_array",editType:"calc"},high:{valType:"data_array",editType:"calc"},low:{valType:"data_array",editType:"calc"},close:{valType:"data_array",editType:"calc"},line:{width:Hm({},J5.width,{}),dash:Hm({},bV,{}),editType:"style"},increasing:xV(P1e),decreasing:xV(R1e),text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:L1e({},{keys:["open","high","low","close"]}),hovertemplatefallback:D1e(),tickwidth:{valType:"number",min:0,max:.5,dflt:.3,editType:"calc"},hoverlabel:Hm({},E1e.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style"}}),zorder:k0.zorder}});var $5=O((u6e,TV)=>{"use strict";var z1e=gr(),N1e=Pe();TV.exports=function(r,t,a,n){var i=a("x"),l=a("open"),o=a("high"),s=a("low"),u=a("close");a("hoverlabel.split");var f=z1e.getComponentMethod("calendars","handleTraceDefaults");if(f(r,t,["x"],n),!!(l&&o&&s&&u)){var c=Math.min(l.length,o.length,s.length,u.length);return i&&(c=Math.min(c,N1e.minRowLength(i))),t._length=c,c}}});var kV=O((f6e,AV)=>{"use strict";var F1e=Pe(),I1e=$5(),H1e=ws(),O1e=Om();AV.exports=function(r,t,a,n){function i(o,s){return F1e.coerce(r,t,O1e,o,s)}var l=I1e(r,t,i,n);if(!l){t.visible=!1;return}H1e(r,t,n,i,{x:!0}),i("xhoverformat"),i("yhoverformat"),i("line.width"),i("line.dash"),MV(r,t,i,"increasing"),MV(r,t,i,"decreasing"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),i("tickwidth"),n._requestRangeslider[t.xaxis]=!0,i("zorder")};function MV(e,r,t,a){t(a+".line.color"),t(a+".line.width",r.line.width),t(a+".line.dash",r.line.dash)}});var K5=O((c6e,SV)=>{"use strict";var ec=Pe(),Bm=ec._,Ym=Zr(),B1e=Ts(),q0=wt().BADNUM;function Y1e(e,r){var t=Ym.getFromId(e,r.xaxis),a=Ym.getFromId(e,r.yaxis),n=G1e(e,t,r),i=r._minDiff;r._minDiff=null;var l=r._origX;r._origX=null;var o=r._xcalc;r._xcalc=null;var s=qV(e,r,l,o,a,V1e);return r._extremes[t._id]=Ym.findExtremes(t,o,{vpad:i/2}),s.length?(ec.extendFlat(s[0].t,{wHover:i/2,tickLen:n}),s):[{t:{empty:!0}}]}function V1e(e,r,t,a){return{o:e,h:r,l:t,c:a}}function qV(e,r,t,a,n,i){for(var l=n.makeCalcdata(r,"open"),o=n.makeCalcdata(r,"high"),s=n.makeCalcdata(r,"low"),u=n.makeCalcdata(r,"close"),f=ec.isArrayOrTypedArray(r.text),c=ec.isArrayOrTypedArray(r.hovertext),h=!0,d=null,p=!!r.xperiodalignment,m=[],y=0;yd):h=M>_,d=M;var k=i(_,T,x,M);k.pos=b,k.yc=(_+M)/2,k.i=y,k.dir=h?"increasing":"decreasing",k.x=k.pos,k.y=[x,T],p&&(k.orig_p=t[y]),f&&(k.tx=r.text[y]),c&&(k.htx=r.hovertext[y]),m.push(k)}else m.push({pos:b,empty:!0})}return r._extremes[n._id]=Ym.findExtremes(n,ec.concat(s,o),{padded:!0}),m.length&&(m[0].t={labels:{open:Bm(e,"open:")+" ",high:Bm(e,"high:")+" ",low:Bm(e,"low:")+" ",close:Bm(e,"close:")+" "}}),m}function G1e(e,r,t){var a=t._minDiff;if(!a){var n=e._fullData,i=[];a=1/0;var l;for(l=0;l{"use strict";var U1e=kr(),CV=Pe();LV.exports=function(r,t,a,n){var i=t.yaxis,l=t.xaxis,o=!!l.rangebreaks;CV.makeTraceGroups(n,a,"trace ohlc").each(function(s){var u=U1e.select(this),f=s[0],c=f.t,h=f.trace;if(h.visible!==!0||c.empty){u.remove();return}var d=c.tickLen,p=u.selectAll("path").data(CV.identity);p.enter().append("path"),p.exit().remove(),p.attr("d",function(m){if(m.empty)return"M0,0Z";var y=l.c2p(m.pos-d,!0),b=l.c2p(m.pos+d,!0),_=o?(y+b)/2:l.c2p(m.pos,!0),T=i.c2p(m.o,!0),x=i.c2p(m.h,!0),M=i.c2p(m.l,!0),k=i.c2p(m.c,!0);return"M"+y+","+T+"H"+_+"M"+_+","+x+"V"+M+"M"+b+","+k+"H"+_})})}});var PV=O((h6e,EV)=>{"use strict";var Q5=kr(),W1e=Yr(),X1e=xr();EV.exports=function(r,t,a){var n=a||Q5.select(r).selectAll("g.ohlclayer").selectAll("g.trace");n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var l=i[0].trace;Q5.select(this).selectAll("path").each(function(o){if(!o.empty){var s=l[o.dir].line;Q5.select(this).style("fill","none").call(X1e.stroke,s.color).call(W1e.dashLine,s.dash,s.width).style("opacity",l.selectedpoints&&!o.selected?.3:1)}})})}});var e_=O((d6e,IV)=>{"use strict";var j5=Zr(),Z1e=Pe(),Vm=gi(),J1e=xr(),$1e=Pe().fillText,RV=Of(),K1e={increasing:RV.INCREASING.SYMBOL,decreasing:RV.DECREASING.SYMBOL};function Q1e(e,r,t,a){var n=e.cd,i=n[0].trace;return i.hoverlabel.split?NV(e,r,t,a):FV(e,r,t,a)}function zV(e,r,t,a){var n=e.cd,i=e.xa,l=n[0].trace,o=n[0].t,s=l.type,u=s==="ohlc"?"l":"min",f=s==="ohlc"?"h":"max",c,h,d=o.bPos||0,p=function(E){return E.pos+d-r},m=o.bdPos||o.tickLen,y=o.wHover,b=Math.min(1,m/Math.abs(i.r2c(i.range[1])-i.r2c(i.range[0])));c=e.maxHoverDistance-b,h=e.maxSpikeDistance-b;function _(E){var R=p(E);return Vm.inbox(R-y,R+y,c)}function T(E){var R=E[u],N=E[f];return R===N||Vm.inbox(R-t,N-t,c)}function x(E){return(_(E)+T(E))/2}var M=Vm.getDistanceFunction(a,_,T,x);if(Vm.getClosest(n,M,e),e.index===!1)return null;var k=n[e.index];if(k.empty)return null;var A=k.dir,C=l[A],D=C.line.color;return J1e.opacity(D)&&C.line.width?e.color=D:e.color=C.fillcolor,e.x0=i.c2p(k.pos+d-m,!0),e.x1=i.c2p(k.pos+d+m,!0),e.xLabelVal=k.orig_p!==void 0?k.orig_p:k.pos,e.spikeDistance=x(k)*h/c,e.xSpike=i.c2p(k.pos,!0),e}function NV(e,r,t,a){var n=e.cd,i=e.ya,l=n[0].trace,o=n[0].t,s=[],u=zV(e,r,t,a);if(!u)return[];var f=n[u.index],c=f.hi||l.hoverinfo||"";if(c==="none"||c==="skip")return[];for(var h=["high","open","close","low"],d={},p=0;p"+o.labels[m]+j5.hoverLabelText(i,y,l.yhoverformat)):(_=Z1e.extendFlat({},u),_.y0=_.y1=b,_.yLabelVal=y,_.yLabel=o.labels[m]+j5.hoverLabelText(i,y,l.yhoverformat),_.name="",s.push(_),d[y]=_)}return s}function FV(e,r,t,a){var n=e.cd,i=e.ya,l=n[0].trace,o=n[0].t,s=zV(e,r,t,a);if(!s)return[];var u=s.index,f=n[u],c=s.index=f.i,h=f.dir;function d(x){return o.labels[x]+j5.hoverLabelText(i,l[x][c],l.yhoverformat)}var p=f.hi||l.hoverinfo||"",m=p.split("+"),y=p==="all",b=y||m.indexOf("y")!==-1,_=y||m.indexOf("text")!==-1,T=b?[d("open"),d("high"),d("low"),d("close")+" "+K1e[h]]:[];return _&&$1e(f,l,T),s.extraText=T.join("
"),s.y0=s.y1=i.c2p(f.yc,!0),[s]}IV.exports={hoverPoints:Q1e,hoverSplit:NV,hoverOnPoints:FV}});var r_=O((p6e,HV)=>{"use strict";HV.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,l=[],o,s=a[0].t.bPos||0;if(t===!1)for(o=0;o{"use strict";OV.exports={moduleType:"trace",name:"ohlc",basePlotModule:gl(),categories:["cartesian","svg","showLegend"],meta:{},attributes:Om(),supplyDefaults:kV(),calc:K5().calc,plot:DV(),style:PV(),hoverPoints:e_().hoverPoints,selectPoints:r_()}});var VV=O((y6e,YV)=>{"use strict";YV.exports=BV()});var ZV=O((g6e,XV)=>{"use strict";var j1e=X3(),ai=bi(),GV=Tl(),epe=Fn(),UV=di().axisHoverFormat,{hovertemplateAttrs:rpe,templatefallbackAttrs:tpe}=gn(),Sl=mt().extendFlat,rc=ai.marker,WV=rc.line;XV.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:ai.xperiod,yperiod:ai.yperiod,xperiod0:ai.xperiod0,yperiod0:ai.yperiod0,xperiodalignment:ai.xperiodalignment,yperiodalignment:ai.yperiodalignment,xhoverformat:UV("x"),yhoverformat:UV("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:Sl({},rc.symbol,{arrayOk:!1,editType:"plot"}),opacity:Sl({},rc.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:Sl({},rc.angle,{arrayOk:!1,editType:"calc"}),size:Sl({},rc.size,{arrayOk:!1,editType:"calc"}),color:Sl({},rc.color,{arrayOk:!1,editType:"style"}),line:{color:Sl({},WV.color,{arrayOk:!1,dflt:epe.defaultLine,editType:"style"}),width:Sl({},WV.width,{arrayOk:!1,dflt:0,editType:"style"}),outliercolor:{valType:"color",editType:"style"},outlierwidth:{valType:"number",min:0,dflt:1,editType:"style"},editType:"style"},editType:"plot"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:j1e(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},showwhiskers:{valType:"boolean",editType:"calc"},offsetgroup:GV.offsetgroup,alignmentgroup:GV.alignmentgroup,selected:{marker:ai.selected.marker,editType:"style"},unselected:{marker:ai.unselected.marker,editType:"style"},text:Sl({},ai.text,{}),hovertext:Sl({},ai.hovertext,{}),hovertemplate:rpe({}),hovertemplatefallback:tpe(),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"},zorder:ai.zorder}});var a_=O((x6e,KV)=>{"use strict";var t_=Pe().extendFlat,JV=di().axisHoverFormat,ja=Om(),tc=ZV();function $V(e){return{line:{color:t_({},tc.line.color,{dflt:e}),width:tc.line.width,editType:"style"},fillcolor:tc.fillcolor,editType:"style"}}KV.exports={xperiod:ja.xperiod,xperiod0:ja.xperiod0,xperiodalignment:ja.xperiodalignment,xhoverformat:JV("x"),yhoverformat:JV("y"),x:ja.x,open:ja.open,high:ja.high,low:ja.low,close:ja.close,line:{width:t_({},tc.line.width,{}),editType:"style"},increasing:$V(ja.increasing.line.color.dflt),decreasing:$V(ja.decreasing.line.color.dflt),text:ja.text,hovertext:ja.hovertext,hovertemplate:ja.hovertemplate,hovertemplatefallback:ja.hovertemplatefallback,whiskerwidth:t_({},tc.whiskerwidth,{dflt:0}),hoverlabel:ja.hoverlabel,zorder:tc.zorder}});var n_=O((b6e,QV)=>{"use strict";QV.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"}}});var rG=O((_6e,eG)=>{"use strict";var ape=gr(),npe=Pe(),ipe=n_();function jV(e,r,t,a,n){for(var i=n+"Layout",l=!1,o=0;o{"use strict";var tG=Zr(),ope=Pe(),spe=gs().getAxisGroup,aG=["v","h"];function upe(e,r){for(var t=e.calcdata,a=r.xaxis,n=r.yaxis,i=0;i1,_=1-i[e+"gap"],T=1-i[e+"groupgap"];for(s=0;s0;if(A==="positive"?(B=C*(k?1:.5),J=K,V=J=E):A==="negative"?(B=J=E,V=C*(k?1:.5),re=K):(B=V=C,J=re=K),fe){var be=x.pointpos,ce=x.jitter,xe=x.marker.size/2,U=0;be+ce>=0&&(U=K*(be+ce),U>B?(qe=!0,ve=xe,le=U):U>J&&(ve=xe,le=B)),U<=B&&(le=B);var Q=0;be-ce<=0&&(Q=-K*(be-ce),Q>V?(qe=!0,j=xe,ue=Q):Q>re&&(j=xe,ue=V)),Q<=V&&(ue=V)}else le=B,ue=V;var X=new Array(f.length);for(u=0;u{"use strict";var fpe=Pe(),cpe=xr(),vpe=$5(),hpe=ws(),dpe=a_();sG.exports=function(r,t,a,n){function i(o,s){return fpe.coerce(r,t,dpe,o,s)}var l=vpe(r,t,i,n);if(!l){t.visible=!1;return}hpe(r,t,n,i,{x:!0}),i("xhoverformat"),i("yhoverformat"),i("line.width"),oG(r,t,i,"increasing"),oG(r,t,i,"decreasing"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),i("whiskerwidth"),n._requestRangeslider[t.xaxis]=!0,i("zorder")};function oG(e,r,t,a){var n=t(a+".line.color");t(a+".line.width",r.line.width),t(a+".fillcolor",cpe.addOpacity(n,.5))}});var hG=O((M6e,vG)=>{"use strict";var fG=Pe(),cG=Zr(),ppe=Ts(),mpe=K5().calcCommon;vG.exports=function(e,r){var t=e._fullLayout,a=cG.getFromId(e,r.xaxis),n=cG.getFromId(e,r.yaxis),i=a.makeCalcdata(r,"x"),l=ppe(r,a,"x",i).vals,o=mpe(e,r,i,l,n,ype);return o.length?(fG.extendFlat(o[0].t,{num:t._numBoxes,dPos:fG.distinctVals(l).minDiff/2,posLetter:"x",valLetter:"y"}),t._numBoxes++,o):[{t:{empty:!0}}]};function ype(e,r,t,a){return{min:t,q1:Math.min(e,a),med:a,q3:Math.max(e,a),max:r}}});var xG=O((A6e,gG)=>{"use strict";var ac=kr(),Js=Pe(),gpe=Yr(),dG=5,xpe=.01;function bpe(e,r,t,a){var n=e._context.staticPlot,i=r.xaxis,l=r.yaxis;Js.makeTraceGroups(a,t,"trace boxes").each(function(o){var s=ac.select(this),u=o[0],f=u.t,c=u.trace;if(f.wdPos=f.bdPos*c.whiskerwidth,c.visible!==!0||f.empty){s.remove();return}var h,d;c.orientation==="h"?(h=l,d=i):(h=i,d=l),pG(s,{pos:h,val:d},c,f,n),mG(s,{x:i,y:l},c,f),yG(s,{pos:h,val:d},c,f)})}function pG(e,r,t,a,n){var i=t.orientation==="h",l=r.val,o=r.pos,s=!!o.rangebreaks,u=a.bPos,f=a.wdPos||0,c=a.bPosPxOffset||0,h=t.whiskerwidth||0,d=t.showwhiskers!==!1,p=t.notched||!1,m=p?1-2*t.notchwidth:1,y,b;Array.isArray(a.bdPos)?(y=a.bdPos[0],b=a.bdPos[1]):(y=a.bdPos,b=a.bdPos);var _=e.selectAll("path.box").data(t.type!=="violin"||t.box.visible?Js.identity:[]);_.enter().append("path").style("vector-effect",n?"none":"non-scaling-stroke").attr("class","box"),_.exit().remove(),_.each(function(T){if(T.empty)return ac.select(this).attr("d","M0,0Z");var x=o.c2l(T.pos+u,!0),M=o.l2p(x-y)+c,k=o.l2p(x+b)+c,A=s?(M+k)/2:o.l2p(x)+c,C=t.whiskerwidth,D=s?M*C+(1-C)*A:o.l2p(x-f)+c,E=s?k*C+(1-C)*A:o.l2p(x+f)+c,R=o.l2p(x-y*m)+c,N=o.l2p(x+b*m)+c,I=t.sizemode==="sd",H=l.c2p(I?T.mean-T.sd:T.q1,!0),G=I?l.c2p(T.mean+T.sd,!0):l.c2p(T.q3,!0),W=Js.constrain(I?l.c2p(T.mean,!0):l.c2p(T.med,!0),Math.min(H,G)+1,Math.max(H,G)-1),Y=T.lf===void 0||t.boxpoints===!1||I,B=l.c2p(Y?T.min:T.lf,!0),V=l.c2p(Y?T.max:T.uf,!0),K=l.c2p(T.ln,!0),J=l.c2p(T.un,!0);i?ac.select(this).attr("d","M"+W+","+R+"V"+N+"M"+H+","+M+"V"+k+(p?"H"+K+"L"+W+","+N+"L"+J+","+k:"")+"H"+G+"V"+M+(p?"H"+J+"L"+W+","+R+"L"+K+","+M:"")+"Z"+(d?"M"+H+","+A+"H"+B+"M"+G+","+A+"H"+V+(h===0?"":"M"+B+","+D+"V"+E+"M"+V+","+D+"V"+E):"")):ac.select(this).attr("d","M"+R+","+W+"H"+N+"M"+M+","+H+"H"+k+(p?"V"+K+"L"+N+","+W+"L"+k+","+J:"")+"V"+G+"H"+M+(p?"V"+J+"L"+R+","+W+"L"+M+","+K:"")+"Z"+(d?"M"+A+","+H+"V"+B+"M"+A+","+G+"V"+V+(h===0?"":"M"+D+","+B+"H"+E+"M"+D+","+V+"H"+E):""))})}function mG(e,r,t,a){var n=r.x,i=r.y,l=a.bdPos,o=a.bPos,s=t.boxpoints||t.points;Js.seedPseudoRandom();var u=function(h){return h.forEach(function(d){d.t=a,d.trace=t}),h},f=e.selectAll("g.points").data(s?u:[]);f.enter().append("g").attr("class","points"),f.exit().remove();var c=f.selectAll("path").data(function(h){var d,p=h.pts2,m=Math.max((h.max-h.min)/10,h.q3-h.q1),y=m*1e-9,b=m*xpe,_=[],T=0,x;if(t.jitter){if(m===0)for(T=1,_=new Array(p.length),d=0;dh.lo&&(E.so=!0)}return p});c.enter().append("path").classed("point",!0),c.exit().remove(),c.call(gpe.translatePoints,n,i)}function yG(e,r,t,a){var n=r.val,i=r.pos,l=!!i.rangebreaks,o=a.bPos,s=a.bPosPxOffset||0,u=t.boxmean||(t.meanline||{}).visible,f,c;Array.isArray(a.bdPos)?(f=a.bdPos[0],c=a.bdPos[1]):(f=a.bdPos,c=a.bdPos);var h=e.selectAll("path.mean").data(t.type==="box"&&t.boxmean||t.type==="violin"&&t.box.visible&&t.meanline.visible?Js.identity:[]);h.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),h.exit().remove(),h.each(function(d){var p=i.c2l(d.pos+o,!0),m=i.l2p(p-f)+s,y=i.l2p(p+c)+s,b=l?(m+y)/2:i.l2p(p)+s,_=n.c2p(d.mean,!0),T=n.c2p(d.mean-d.sd,!0),x=n.c2p(d.mean+d.sd,!0);t.orientation==="h"?ac.select(this).attr("d","M"+_+","+m+"V"+y+(u==="sd"?"m0,0L"+T+","+b+"L"+_+","+m+"L"+x+","+b+"Z":"")):ac.select(this).attr("d","M"+m+","+_+"H"+y+(u==="sd"?"m0,0L"+b+","+T+"L"+m+","+_+"L"+b+","+x+"Z":""))})}gG.exports={plot:bpe,plotBoxAndWhiskers:pG,plotPoints:mG,plotBoxMean:yG}});var _G=O((k6e,bG)=>{"use strict";var i_=kr(),l_=xr(),o_=Yr();function _pe(e,r,t){var a=t||i_.select(e).selectAll("g.trace.boxes");a.style("opacity",function(n){return n[0].trace.opacity}),a.each(function(n){var i=i_.select(this),l=n[0].trace,o=l.line.width;function s(c,h,d,p){c.style("stroke-width",h+"px").call(l_.stroke,d).call(l_.fill,p)}var u=i.selectAll("path.box");if(l.type==="candlestick")u.each(function(c){if(!c.empty){var h=i_.select(this),d=l[c.dir];s(h,d.line.width,d.line.color,d.fillcolor),h.style("opacity",l.selectedpoints&&!c.selected?.3:1)}});else{s(u,o,l.line.color,l.fillcolor),i.selectAll("path.mean").style({"stroke-width":o,"stroke-dasharray":2*o+"px,"+o+"px"}).call(l_.stroke,l.line.color);var f=i.selectAll("path.point");o_.pointStyle(f,l,e)}})}function wpe(e,r,t){var a=r[0].trace,n=t.selectAll("path.point");a.selectedpoints?o_.selectedPointStyle(n,a):o_.pointStyle(n,a,e)}bG.exports={style:_pe,styleOnSelect:wpe}});var TG=O((q6e,wG)=>{"use strict";wG.exports={moduleType:"trace",name:"candlestick",basePlotModule:gl(),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{},attributes:a_(),layoutAttributes:n_(),supplyLayoutDefaults:rG().supplyLayoutDefaults,crossTraceCalc:lG().crossTraceCalc,supplyDefaults:uG(),calc:hG(),plot:xG().plot,layerName:"boxlayer",style:_G().style,hoverPoints:e_().hoverPoints,selectPoints:r_()}});var AG=O((S6e,MG)=>{"use strict";MG.exports=TG()});var Na=O((C6e,qG)=>{"use strict";var kG=Object.getOwnPropertySymbols,Tpe=Object.prototype.hasOwnProperty,Mpe=Object.prototype.propertyIsEnumerable;function Ape(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function kpe(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var r={},t=0;t<10;t++)r["_"+String.fromCharCode(t)]=t;var a=Object.getOwnPropertyNames(r).map(function(i){return r[i]});if(a.join("")!=="0123456789")return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach(function(i){n[i]=i}),Object.keys(Object.assign({},n)).join("")==="abcdefghijklmnopqrst"}catch(i){return!1}}qG.exports=kpe()?Object.assign:function(e,r){for(var t,a=Ape(e),n,i=1;i{var Um=Na();function SG(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}Um(SG.prototype,{instance:function(e,r){e=(e||"gregorian").toLowerCase(),r=r||"";var t=this._localCals[e+"-"+r];if(!t&&this.calendars[e]&&(t=new this.calendars[e](r),this._localCals[e+"-"+r]=t),!t)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return t},newDate:function(e,r,t,a,n){return a=(e!=null&&e.year?e.calendar():typeof a=="string"?this.instance(a,n):a)||this.instance(),a.newDate(e,r,t)},substituteDigits:function(e){return function(r){return(r+"").replace(/[0-9]/g,function(t){return e[t]})}},substituteChineseDigits:function(e,r){return function(t){for(var a="",n=0;t>0;){var i=t%10;a=(i===0?"":e[i]+r[n])+a,n++,t=Math.floor(t/10)}return a.indexOf(e[1]+r[1])===0&&(a=a.substr(1)),a||e[0]}}});function s_(e,r,t,a){if(this._calendar=e,this._year=r,this._month=t,this._day=a,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function Gm(e,r){return e=""+e,"000000".substring(0,r-e.length)+e}Um(s_.prototype,{newDate:function(e,r,t){return this._calendar.newDate(e==null?this:e,r,t)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,r,t){if(!this._calendar.isValid(e,r,t))throw(Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=r,this._day=t,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,r){return this._calendar.add(this,e,r)},set:function(e,r){return this._calendar.set(this,e,r)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(Rr.local.differentCalendars||Rr.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var r=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return r===0?0:r<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+Gm(Math.abs(this.year()),4)+"-"+Gm(this.month(),2)+"-"+Gm(this.day(),2)}});function u_(){this.shortYearCutoff="+10"}Um(u_.prototype,{_validateLevel:0,newDate:function(e,r,t){return e==null?this.today():(e.year&&(this._validate(e,r,t,Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate),t=e.day(),r=e.month(),e=e.year()),new s_(this,e,r,t))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var r=this._validate(e,this.minMonth,this.minDay,Rr.local.invalidYear||Rr.regionalOptions[""].invalidYear);return r.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Rr.local.invalidYear||Rr.regionalOptions[""].invalidYear);return(r.year()<0?"-":"")+Gm(Math.abs(r.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Rr.local.invalidYear||Rr.regionalOptions[""].invalidYear),12},monthOfYear:function(e,r){var t=this._validate(e,r,this.minDay,Rr.local.invalidMonth||Rr.regionalOptions[""].invalidMonth);return(t.month()+this.monthsInYear(t)-this.firstMonth)%this.monthsInYear(t)+this.minMonth},fromMonthOfYear:function(e,r){var t=(r+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,t,this.minDay,Rr.local.invalidMonth||Rr.regionalOptions[""].invalidMonth),t},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Rr.local.invalidYear||Rr.regionalOptions[""].invalidYear);return this.leapYear(r)?366:365},dayOfYear:function(e,r,t){var a=this._validate(e,r,t,Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate);return a.toJD()-this.newDate(a.year(),this.fromMonthOfYear(a.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(a))+2)%this.daysInWeek()},extraInfo:function(e,r,t){return this._validate(e,r,t,Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate),{}},add:function(e,r,t){return this._validate(e,this.minMonth,this.minDay,Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,r,t),r,t)},_add:function(e,r,t){if(this._validateLevel++,t==="d"||t==="w"){var a=e.toJD()+r*(t==="w"?this.daysInWeek():1),n=e.calendar().fromJD(a);return this._validateLevel--,[n.year(),n.month(),n.day()]}try{var i=e.year()+(t==="y"?r:0),l=e.monthOfYear()+(t==="m"?r:0),n=e.day(),o=function(f){for(;lc-1+f.minMonth;)i++,l-=c,c=f.monthsInYear(i)};t==="y"?(e.month()!==this.fromMonthOfYear(i,l)&&(l=this.newDate(i,e.month(),this.minDay).monthOfYear()),l=Math.min(l,this.monthsInYear(i)),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,l)))):t==="m"&&(o(this),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,l))));var s=[i,this.fromMonthOfYear(i,l),n];return this._validateLevel--,s}catch(u){throw this._validateLevel--,u}},_correctAdd:function(e,r,t,a){if(!this.hasYearZero&&(a==="y"||a==="m")&&(r[0]===0||e.year()>0!=r[0]>0)){var n={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[a],i=t<0?-1:1;r=this._add(e,t*n[0]+i*n[1],n[2])}return e.date(r[0],r[1],r[2])},set:function(e,r,t){this._validate(e,this.minMonth,this.minDay,Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate);var a=t==="y"?r:e.year(),n=t==="m"?r:e.month(),i=t==="d"?r:e.day();return(t==="y"||t==="m")&&(i=Math.min(i,this.daysInMonth(a,n))),e.date(a,n,i)},isValid:function(e,r,t){this._validateLevel++;var a=this.hasYearZero||e!==0;if(a){var n=this.newDate(e,r,this.minDay);a=r>=this.minMonth&&r-this.minMonth=this.minDay&&t-this.minDay13.5?13:1),u=n-(s>2.5?4716:4715);return u<=0&&u--,this.newDate(u,s,o)},toJSDate:function(e,r,t){var a=this._validate(e,r,t,Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate),n=new Date(a.year(),a.month()-1,a.day());return n.setHours(0),n.setMinutes(0),n.setSeconds(0),n.setMilliseconds(0),n.setHours(n.getHours()>12?n.getHours()+2:0),n},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var Rr=CG.exports=new SG;Rr.cdate=s_;Rr.baseCalendar=u_;Rr.calendars.gregorian=f_});var LG=O(()=>{var c_=Na(),pa=Fa();c_(pa.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});pa.local=pa.regionalOptions[""];c_(pa.cdate.prototype,{formatDate:function(e,r){return typeof e!="string"&&(r=e,e=""),this._calendar.formatDate(e||"",this,r)}});c_(pa.baseCalendar.prototype,{UNIX_EPOCH:pa.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:pa.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,r,t){if(typeof e!="string"&&(t=r,r=e,e=""),!r)return"";if(r.calendar()!==this)throw pa.local.invalidFormat||pa.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,t=t||{};for(var a=t.dayNamesShort||this.local.dayNamesShort,n=t.dayNames||this.local.dayNames,i=t.monthNumbers||this.local.monthNumbers,l=t.monthNamesShort||this.local.monthNamesShort,o=t.monthNames||this.local.monthNames,s=t.calculateWeek||this.local.calculateWeek,u=function(x,M){for(var k=1;T+k1},f=function(x,M,k,A){var C=""+M;if(u(x,A))for(;C.length1},_=function(N,I){var H=b(N,I),G=[2,3,H?4:2,H?4:2,10,11,20]["oyYJ@!".indexOf(N)+1],W=new RegExp("^-?\\d{1,"+G+"}"),Y=r.substring(C).match(W);if(!Y)throw(pa.local.missingNumberAt||pa.regionalOptions[""].missingNumberAt).replace(/\{0\}/,C);return C+=Y[0].length,parseInt(Y[0],10)},T=this,x=function(){if(typeof o=="function"){b("m");var N=o.call(T,r.substring(C));return C+=N.length,N}return _("m")},M=function(N,I,H,G){for(var W=b(N,G)?H:I,Y=0;Y-1){h=1,d=p;for(var R=this.daysInMonth(c,h);d>R;R=this.daysInMonth(c,h))h++,d-=R}return f>-1?this.fromJD(f):this.newDate(c,h,d)},determineDate:function(e,r,t,a,n){t&&typeof t!="object"&&(n=a,a=t,t=null),typeof a!="string"&&(n=a,a="");var i=this,l=function(o){try{return i.parseDate(a,o,n)}catch(c){}o=o.toLowerCase();for(var s=(o.match(/^c/)&&t?t.newDate():null)||i.today(),u=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,f=u.exec(o);f;)s.add(parseInt(f[1],10),f[2]||"d"),f=u.exec(o);return s};return r=r?r.newDate():null,e=e==null?r:typeof e=="string"?l(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?r:i.today().add(e,"d"):i.newDate(e),e}})});var DG=O(()=>{var ko=Fa(),qpe=Na(),v_=ko.instance();function Wm(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Wm.prototype=new ko.baseCalendar;qpe(Wm.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,r){if(typeof e=="string"){var t=e.match(Cpe);return t?t[0]:""}var a=this._validateYear(e),n=e.month(),i=""+this.toChineseMonth(a,n);return r&&i.length<2&&(i="0"+i),this.isIntercalaryMonth(a,n)&&(i+="i"),i},monthNames:function(e){if(typeof e=="string"){var r=e.match(Lpe);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},monthNamesShort:function(e){if(typeof e=="string"){var r=e.match(Dpe);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},parseMonth:function(e,r){e=this._validateYear(e);var t=parseInt(r),a;if(isNaN(t))r[0]==="\u95F0"&&(a=!0,r=r.substring(1)),r[r.length-1]==="\u6708"&&(r=r.substring(0,r.length-1)),t=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(r);else{var n=r[r.length-1];a=n==="i"||n==="I"}var i=this.toMonthIndex(e,t,a);return i},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,r){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw r.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,r,t){var a=this.intercalaryMonth(e),n=t&&r!==a;if(n||r<1||r>12)throw ko.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return a?!t&&r<=a?i=r-1:i=r:i=r-1,i},toChineseMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e),a=t?12:11;if(r<0||r>a)throw ko.local.invalidMonth.replace(/\{0\}/,this.local.name);var n;return t?r>13;return t},isIntercalaryMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e);return!!t&&t===r},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,r,t){var a=this._validateYear(e,ko.local.invalidyear),n=So[a-So[0]],i=n>>9&4095,l=n>>5&15,o=n&31,s;s=v_.newDate(i,l,o),s.add(4-(s.dayOfWeek()||7),"d");var u=this.toJD(e,r,t)-s.toJD();return 1+Math.floor(u/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,r){e.year&&(r=e.month(),e=e.year()),e=this._validateYear(e);var t=qo[e-qo[0]],a=t>>13,n=a?12:11;if(r>n)throw ko.local.invalidMonth.replace(/\{0\}/,this.local.name);var i=t&1<<12-r?30:29;return i},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,i,t,ko.local.invalidDate);e=this._validateYear(a.year()),r=a.month(),t=a.day();var n=this.isIntercalaryMonth(e,r),i=this.toChineseMonth(e,r),l=Ppe(e,i,t,n);return v_.toJD(l.year,l.month,l.day)},fromJD:function(e){var r=v_.fromJD(e),t=Epe(r.year(),r.month(),r.day()),a=this.toMonthIndex(t.year,t.month,t.isIntercalary);return this.newDate(t.year,a,t.day)},fromString:function(e){var r=e.match(Spe),t=this._validateYear(+r[1]),a=+r[2],n=!!r[3],i=this.toMonthIndex(t,a,n),l=+r[4];return this.newDate(t,i,l)},add:function(e,r,t){var a=e.year(),n=e.month(),i=this.isIntercalaryMonth(a,n),l=this.toChineseMonth(a,n),o=Object.getPrototypeOf(Wm.prototype).add.call(this,e,r,t);if(t==="y"){var s=o.year(),u=o.month(),f=this.isIntercalaryMonth(s,l),c=i&&f?this.toMonthIndex(s,l,!0):this.toMonthIndex(s,l,!1);c!==u&&o.month(c)}return o}});var Spe=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,Cpe=/^\d?\d[iI]?/m,Lpe=/^闰?十?[一二三四五六七八九]?月/m,Dpe=/^闰?十?[一二三四五六七八九]?/m;ko.calendars.chinese=Wm;var qo=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],So=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function Epe(e,r,t,a){var n,i;if(typeof e=="object")n=e,i=r||{};else{var l=typeof e=="number"&&e>=1888&&e<=2111;if(!l)throw new Error("Solar year outside range 1888-2111");var o=typeof r=="number"&&r>=1&&r<=12;if(!o)throw new Error("Solar month outside range 1 - 12");var s=typeof t=="number"&&t>=1&&t<=31;if(!s)throw new Error("Solar day outside range 1 - 31");n={year:e,month:r,day:t},i=a||{}}var u=So[n.year-So[0]],f=n.year<<9|n.month<<5|n.day;i.year=f>=u?n.year:n.year-1,u=So[i.year-So[0]];var c=u>>9&4095,h=u>>5&15,d=u&31,p,m=new Date(c,h-1,d),y=new Date(n.year,n.month-1,n.day);p=Math.round((y-m)/(24*3600*1e3));var b=qo[i.year-qo[0]],_;for(_=0;_<13;_++){var T=b&1<<12-_?30:29;if(p>13;return!x||_=1888&&e<=2111;if(!o)throw new Error("Lunar year outside range 1888-2111");var s=typeof r=="number"&&r>=1&&r<=12;if(!s)throw new Error("Lunar month outside range 1 - 12");var u=typeof t=="number"&&t>=1&&t<=30;if(!u)throw new Error("Lunar day outside range 1 - 30");var f;typeof a=="object"?(f=!1,i=a):(f=!!a,i=n||{}),l={year:e,month:r,day:t,isIntercalary:f}}var c;c=l.day-1;var h=qo[l.year-qo[0]],d=h>>13,p;d&&(l.month>d||l.isIntercalary)?p=l.month:p=l.month-1;for(var m=0;m>9&4095,T=b>>5&15,x=b&31,M=new Date(_,T-1,x+c);return i.year=M.getFullYear(),i.month=1+M.getMonth(),i.day=M.getDate(),i}});var EG=O(()=>{var $s=Fa(),Rpe=Na();function h_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}h_.prototype=new $s.baseCalendar;Rpe(h_.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,$s.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,$s.local.invalidYear||$s.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,$s.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,$s.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});$s.calendars.coptic=h_});var PG=O(()=>{var Cl=Fa(),zpe=Na();function d_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}d_.prototype=new Cl.baseCalendar;zpe(d_.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Cl.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Cl.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Cl.local.invalidYear),400},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/8)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Cl.local.invalidMonth);return this.daysPerMonth[t.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Cl.local.invalidDate);return(a.day()+1)%8},weekDay:function(e,r,t){var a=this.dayOfWeek(e,r,t);return a>=2&&a<=6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Cl.local.invalidDate);return{century:Npe[Math.floor((a.year()-1)/100)+1]||""}},toJD:function(e,r,t){var a=this._validate(e,r,t,Cl.local.invalidDate);return e=a.year()+(a.year()<0?1:0),r=a.month(),t=a.day(),t+(r>1?16:0)+(r>2?(r-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var r=Math.floor(e/400)+1;e-=(r-1)*400,e+=e>15?16:0;var t=Math.floor(e/32)+1,a=e-(t-1)*32+1;return this.newDate(r<=0?r-1:r,t,a)}});var Npe={20:"Fruitbat",21:"Anchovy"};Cl.calendars.discworld=d_});var RG=O(()=>{var Ks=Fa(),Fpe=Na();function p_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}p_.prototype=new Ks.baseCalendar;Fpe(p_.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Ks.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ks.local.invalidYear||Ks.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Ks.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,Ks.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});Ks.calendars.ethiopian=p_});var zG=O(()=>{var Co=Fa(),Ipe=Na();function m_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}m_.prototype=new Co.baseCalendar;Ipe(m_.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Co.local.invalidYear);return this._leapYear(r.year())},_leapYear:function(e){return e=e<0?e+1:e,Xm(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Co.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Co.local.invalidYear);return e=r.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,Co.local.invalidMonth),r===12&&this.leapYear(e)||r===8&&Xm(this.daysInYear(e),10)===5?30:r===9&&Xm(this.daysInYear(e),10)===3?29:this.daysPerMonth[r-1]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Co.local.invalidDate);return{yearType:(this.leapYear(a)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(a)%10-3]}},toJD:function(e,r,t){var a=this._validate(e,r,t,Co.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=e<=0?e+1:e,i=this.jdEpoch+this._delay1(n)+this._delay2(n)+t+1;if(r<7){for(var l=7;l<=this.monthsInYear(e);l++)i+=this.daysInMonth(e,l);for(var l=1;l=this.toJD(r===-1?1:r+1,7,1);)r++;for(var t=ethis.toJD(r,t,this.daysInMonth(r,t));)t++;var a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});function Xm(e,r){return e-r*Math.floor(e/r)}Co.calendars.hebrew=m_});var NG=O(()=>{var S0=Fa(),Hpe=Na();function y_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}y_.prototype=new S0.baseCalendar;Hpe(y_.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,S0.local.invalidYear);return(r.year()*11+14)%30<11},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,S0.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,S0.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e=e<=0?e+1:e,t+Math.ceil(29.5*(r-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=Math.floor((30*(e-this.jdEpoch)+10646)/10631);r=r<=0?r-1:r;var t=Math.min(12,Math.ceil((e-29-this.toJD(r,1,1))/29.5)+1),a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});S0.calendars.islamic=y_});var FG=O(()=>{var C0=Fa(),Ope=Na();function g_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}g_.prototype=new C0.baseCalendar;Ope(g_.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,C0.local.invalidYear),t=r.year()<0?r.year()+1:r.year();return t%4===0},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(4-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,C0.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,C0.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e<0&&e++,r<=2&&(e--,r+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(r+1))+t-1524.5},fromJD:function(e){var r=Math.floor(e+.5),t=r+1524,a=Math.floor((t-122.1)/365.25),n=Math.floor(365.25*a),i=Math.floor((t-n)/30.6001),l=i-Math.floor(i<14?1:13),o=a-Math.floor(l>2?4716:4715),s=t-n-Math.floor(30.6001*i);return o<=0&&o--,this.newDate(o,l,s)}});C0.calendars.julian=g_});var HG=O(()=>{var ni=Fa(),Bpe=Na();function b_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}b_.prototype=new ni.baseCalendar;Bpe(b_.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,ni.local.invalidYear),!1},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,ni.local.invalidYear);e=r.year();var t=Math.floor(e/400);e=e%400,e+=e<0?400:0;var a=Math.floor(e/20);return t+"."+a+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var r=0,t=0;t19||t>0&&a<0)throw"Invalid Mayan year";r=r*20+a}return r},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ni.local.invalidYear),18},weekOfYear:function(e,r,t){return this._validate(e,r,t,ni.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ni.local.invalidYear),360},daysInMonth:function(e,r){return this._validate(e,r,this.minDay,ni.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,ni.local.invalidDate);return a.day()},weekDay:function(e,r,t){return this._validate(e,r,t,ni.local.invalidDate),!0},extraInfo:function(e,r,t){var a=this._validate(e,r,t,ni.local.invalidDate),n=a.toJD(),i=this._toHaab(n),l=this._toTzolkin(n);return{haabMonthName:this.local.haabMonths[i[0]-1],haabMonth:i[0],haabDay:i[1],tzolkinDayName:this.local.tzolkinMonths[l[0]-1],tzolkinDay:l[0],tzolkinTrecena:l[1]}},_toHaab:function(e){e-=this.jdEpoch;var r=x_(e+8+17*20,365);return[Math.floor(r/20)+1,x_(r,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[IG(e+20,20),IG(e+4,13)]},toJD:function(e,r,t){var a=this._validate(e,r,t,ni.local.invalidDate);return a.day()+a.month()*20+a.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var r=Math.floor(e/360);e=e%360,e+=e<0?360:0;var t=Math.floor(e/20),a=e%20;return this.newDate(r,t,a)}});function x_(e,r){return e-r*Math.floor(e/r)}function IG(e,r){return x_(e-1,r)+1}ni.calendars.mayan=b_});var BG=O(()=>{var Qs=Fa(),Ype=Na();function __(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}__.prototype=new Qs.baseCalendar;var OG=Qs.instance("gregorian");Ype(__.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Qs.local.invalidYear||Qs.regionalOptions[""].invalidYear);return OG.leapYear(r.year()+(r.year()<1?1:0)+1469)},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(1-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Qs.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,Qs.local.invalidMonth),n=a.year();n<0&&n++;for(var i=a.day(),l=1;l=this.toJD(r+1,1,1);)r++;for(var t=e-Math.floor(this.toJD(r,1,1)+.5)+1,a=1;t>this.daysInMonth(r,a);)t-=this.daysInMonth(r,a),a++;return this.newDate(r,a,t)}});Qs.calendars.nanakshahi=__});var YG=O(()=>{var js=Fa(),Vpe=Na();function w_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}w_.prototype=new js.baseCalendar;Vpe(w_.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,js.local.invalidYear);if(e=r.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var t=0,a=this.minMonth;a<=12;a++)t+=this.NEPALI_CALENDAR_DATA[e][a];return t},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,js.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[r-1]:this.NEPALI_CALENDAR_DATA[e][r]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},toJD:function(e,r,t){var a=this._validate(e,r,t,js.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=js.instance(),i=0,l=r,o=e;this._createMissingCalendarData(e);var s=e-(l>9||l===9&&t>=this.NEPALI_CALENDAR_DATA[o][0]?56:57);for(r!==9&&(i=t,l--);l!==9;)l<=0&&(l=12,o--),i+=this.NEPALI_CALENDAR_DATA[o][l],l--;return r===9?(i+=t-this.NEPALI_CALENDAR_DATA[o][0],i<0&&(i+=n.daysInYear(s))):i+=this.NEPALI_CALENDAR_DATA[o][9]-this.NEPALI_CALENDAR_DATA[o][0],n.newDate(s,1,1).add(i,"d").toJD()},fromJD:function(e){var r=js.instance(),t=r.fromJD(e),a=t.year(),n=t.dayOfYear(),i=a+56;this._createMissingCalendarData(i);for(var l=9,o=this.NEPALI_CALENDAR_DATA[i][0],s=this.NEPALI_CALENDAR_DATA[i][l]-o+1;n>s;)l++,l>12&&(l=1,i++),s+=this.NEPALI_CALENDAR_DATA[i][l];var u=this.NEPALI_CALENDAR_DATA[i][l]-(s-n);return this.newDate(i,l,u)},_createMissingCalendarData:function(e){var r=this.daysPerMonth.slice(0);r.unshift(17);for(var t=e-1;t{var nc=Fa(),Gpe=Na();function Jm(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function Zm(e){var r=e-475;e<0&&r++;var t=.242197,a=t*r,n=t*(r+1),i=a-Math.floor(a),l=n-Math.floor(n);return i>l}Jm.prototype=new nc.baseCalendar;Gpe(Jm.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,nc.local.invalidYear);return Zm(r.year())},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-((a.dayOfWeek()+1)%7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,nc.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,nc.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=0;if(e>0)for(var i=1;i0?e-1:e)*365+n+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=475+(e-this.toJD(475,1,1))/365.242197,t=Math.floor(r);t<=0&&t--,e>this.toJD(t,12,Zm(t)?30:29)&&(t++,t===0&&t++);var a=e-this.toJD(t,1,1)+1,n=a<=186?Math.ceil(a/31):Math.ceil((a-6)/30),i=e-this.toJD(t,n,1)+1;return this.newDate(t,n,i)}});nc.calendars.persian=Jm;nc.calendars.jalali=Jm});var GG=O(()=>{var eu=Fa(),Upe=Na(),$m=eu.instance();function T_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}T_.prototype=new eu.baseCalendar;Upe(T_.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,eu.local.invalidYear),t=this._t2gYear(r.year());return $m.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,eu.local.invalidYear),n=this._t2gYear(a.year());return $m.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,eu.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,eu.local.invalidDate),n=this._t2gYear(a.year());return $m.toJD(n,a.month(),a.day())},fromJD:function(e){var r=$m.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});eu.calendars.taiwan=T_});var UG=O(()=>{var ru=Fa(),Wpe=Na(),Km=ru.instance();function M_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}M_.prototype=new ru.baseCalendar;Wpe(M_.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,ru.local.invalidYear),t=this._t2gYear(r.year());return Km.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,ru.local.invalidYear),n=this._t2gYear(a.year());return Km.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,ru.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,ru.local.invalidDate),n=this._t2gYear(a.year());return Km.toJD(n,a.month(),a.day())},fromJD:function(e){var r=Km.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});ru.calendars.thai=M_});var WG=O(()=>{var tu=Fa(),Xpe=Na();function A_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}A_.prototype=new tu.baseCalendar;Xpe(A_.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,tu.local.invalidYear);return this.daysInYear(r.year())===355},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var r=0,t=1;t<=12;t++)r+=this.daysInMonth(e,t);return r},daysInMonth:function(e,r){for(var t=this._validate(e,r,this.minDay,tu.local.invalidMonth),a=t.toJD()-24e5+.5,n=0,i=0;ia)return Lo[n]-Lo[n-1];n++}return 30},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,tu.local.invalidDate),n=12*(a.year()-1)+a.month()-15292,i=a.day()+Lo[n-1]-1;return i+24e5-.5},fromJD:function(e){for(var r=e-24e5+.5,t=0,a=0;ar);a++)t++;var n=t+15292,i=Math.floor((n-1)/12),l=i+1,o=n-12*i,s=r-Lo[t-1]+1;return this.newDate(l,o,s)},isValid:function(e,r,t){var a=tu.baseCalendar.prototype.isValid.apply(this,arguments);return a&&(e=e.year!=null?e.year:e,a=e>=1276&&e<=1500),a},_validate:function(e,r,t,a){var n=tu.baseCalendar.prototype._validate.apply(this,arguments);if(n.year<1276||n.year>1500)throw a.replace(/\{0\}/,this.local.name);return n}});tu.calendars.ummalqura=A_;var Lo=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var ZG=O((o7e,XG)=>{"use strict";XG.exports=Fa();LG();DG();EG();PG();RG();zG();NG();FG();HG();BG();YG();VG();GG();UG();WG()});var rU=O((s7e,eU)=>{"use strict";var $G=ZG(),L0=Pe(),KG=wt(),Zpe=KG.EPOCHJD,Jpe=KG.ONEDAY,S_={valType:"enumerated",values:L0.sortObjectKeys($G.calendars),editType:"calc",dflt:"gregorian"},QG=function(e,r,t,a){var n={};return n[t]=S_,L0.coerce(e,r,n,t,a)},$pe=function(e,r,t,a){for(var n=0;n{"use strict";tU.exports=rU()});var tme=O((f7e,iU)=>{var nU=uF();nU.register([vI(),aH(),HH(),kO(),pB(),HB(),yV(),VV(),AG(),aU()]);iU.exports=nU});return tme();})(); +"use strict";var Plotly=(()=>{var nh=Object.defineProperty,oX=Object.defineProperties,sX=Object.getOwnPropertyDescriptor,uX=Object.getOwnPropertyDescriptors,fX=Object.getOwnPropertyNames,W4=Object.getOwnPropertySymbols;var Z4=Object.prototype.hasOwnProperty,cX=Object.prototype.propertyIsEnumerable;var X4=(e,r,t)=>r in e?nh(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,Ho=(e,r)=>{for(var t in r||(r={}))Z4.call(r,t)&&X4(e,t,r[t]);if(W4)for(var t of W4(r))cX.call(r,t)&&X4(e,t,r[t]);return e},ih=(e,r)=>oX(e,uX(r));var it=(e,r)=>()=>(e&&(r=e(e=0)),r);var B=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),vX=(e,r)=>{for(var t in r)nh(e,t,{get:r[t],enumerable:!0})},hX=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of fX(r))!Z4.call(e,n)&&n!==t&&nh(e,n,{get:()=>r[n],enumerable:!(a=sX(r,n))||a.enumerable});return e};var J4=e=>hX(nh({},"__esModule",{value:!0}),e);var lh=B($4=>{"use strict";$4.version="3.3.1"});var Q4=B((K4,oh)=>{(function(r,t,a){t[r]=t[r]||a(),typeof oh!="undefined"&&oh.exports&&(oh.exports=t[r])})("Promise",typeof window!="undefined"?window:K4,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,x,M){return Object.defineProperty(_,w,{value:x,writable:!0,configurable:M!==!1})}}catch(b){r=function(w,x,M){return w[x]=M,w}}a=function(){var _,w,x;function M(k,A){this.fn=k,this.self=A,this.next=void 0}return{add:function(A,C){x=new M(A,C),w?w.next=x:_=x,w=x,x=void 0},drain:function(){var A=_;for(_=w=t=void 0;A;)A.fn.call(A.self),A=A.next}}}();function l(b,_){a.add(b,_),t||(t=i(a.drain))}function o(b){var _,w=typeof b;return b!=null&&(w=="object"||w=="function")&&(_=b.then),typeof _=="function"?_:!1}function s(){for(var b=0;b0&&l(s,w))}catch(x){c.call(new d(w),x)}}}function c(b){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=b,_.state=2,_.chain.length>0&&l(s,_))}function h(b,_,w,x){for(var M=0;M<_.length;M++)(function(A){b.resolve(_[A]).then(function(D){w(A,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 k={success:typeof x=="function"?x:!0,failure:typeof M=="function"?M:!1};return k.promise=new this.constructor(function(C,D){if(typeof C!="function"||typeof D!="function")throw TypeError("Not a function");k.resolve=C,k.reject=D}),_.chain.push(k),_.state!==0&&l(s,_),k.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(w){c.call(_,w)}}var m=r({},"constructor",y,!1);return y.prototype=m,r(m,"__NPO__",0,!1),r(y,"resolve",function(_){var w=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new w(function(M,k){if(typeof M!="function"||typeof k!="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 w=this;return n.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):_.length===0?w.resolve([]):new w(function(M,k){if(typeof M!="function"||typeof k!="function")throw TypeError("Not a function");var A=_.length,C=Array(A),D=0;h(w,_,function(R,N){C[R]=N,++D===A&&M(C)},k)})}),r(y,"race",function(_){var w=this;return n.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):new w(function(M,k){if(typeof M!="function"||typeof k!="function")throw TypeError("Not a function");h(w,_,function(C,D){M(D)},k)})}),y})});var kr=B((lme,sh)=>{(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 T=g.length,q=new Array(T);T--;)q[T]=g[T];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,T){o.call(this,g,T+"")},l.setAttributeNS=function(g,T,q){s.call(this,g,T,q+"")},u.setProperty=function(g,T,q){f.call(this,g,T+"",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 T=-1,q=v.length,S,L;if(arguments.length===1){for(;++T=L){S=L;break}for(;++TL&&(S=L)}else{for(;++T=L){S=L;break}for(;++TL&&(S=L)}return S},e.max=function(v,g){var T=-1,q=v.length,S,L;if(arguments.length===1){for(;++T=L){S=L;break}for(;++TS&&(S=L)}else{for(;++T=L){S=L;break}for(;++TS&&(S=L)}return S},e.extent=function(v,g){var T=-1,q=v.length,S,L,z;if(arguments.length===1){for(;++T=L){S=z=L;break}for(;++TL&&(S=L),z=L){S=z=L;break}for(;++TL&&(S=L),z1)return z/(F-1)},e.deviation=function(){var v=e.variance.apply(this,arguments);return v&&Math.sqrt(v)};function p(v){return{left:function(g,T,q,S){for(arguments.length<3&&(q=0),arguments.length<4&&(S=g.length);q>>1;v(g[L],T)<0?q=L+1:S=L}return q},right:function(g,T,q,S){for(arguments.length<3&&(q=0),arguments.length<4&&(S=g.length);q>>1;v(g[L],T)>0?S=L:q=L+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,T){return c(v(g),T)}:v)},e.shuffle=function(v,g,T){(q=arguments.length)<3&&(T=v.length,q<2&&(g=0));for(var q=T-g,S,L;q;)L=Math.random()*q--|0,S=v[q+g],v[q+g]=v[L+g],v[L+g]=S;return v},e.permute=function(v,g){for(var T=g.length,q=new Array(T);T--;)q[T]=v[g[T]];return q},e.pairs=function(v){for(var g=0,T=v.length-1,q,S=v[0],L=new Array(T<0?0:T);g=0;)for(z=v[g],T=z.length;--T>=0;)L[--S]=z[T];return L};var b=Math.abs;e.range=function(v,g,T){if(arguments.length<3&&(T=1,arguments.length<2&&(g=v,v=0)),(g-v)/T===1/0)throw new Error("infinite range");var q=[],S=_(b(T)),L=-1,z;if(v*=S,g*=S,T*=S,T<0)for(;(z=v+T*++L)>g;)q.push(z/S);else for(;(z=v+T*++L)=g.length)return S?S.call(v,F):q?F.sort(q):F;for(var K=-1,re=F.length,te=g[$++],me,Me,ae,se=new x,he;++K=g.length)return P;var $=[],K=T[F++];return P.forEach(function(re,te){$.push({key:re,values:z(te,F)})}),K?$.sort(function(re,te){return K(re.key,te.key)}):$}return v.map=function(P,F){return L(F,P,0)},v.entries=function(P){return z(L(e.map,P,0),0)},v.key=function(P){return g.push(P),v},v.sortKeys=function(P){return T[g.length-1]=P,v},v.sortValues=function(P){return q=P,v},v.rollup=function(P){return S=P,v},v},e.set=function(v){var g=new H;if(v)for(var T=0,q=v.length;T=0&&(q=v.slice(T+1),v=v.slice(0,T)),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 J(v){var g=[],T=new x;function q(){for(var S=g,L=-1,z=S.length,P;++L=0&&(T=v.slice(0,g))!=="xmlns"&&(v=v.slice(g+1)),ge.hasOwnProperty(T)?{space:ge[T],local:v}:v}},xe.attr=function(v,g){if(arguments.length<2){if(typeof v=="string"){var T=this.node();return v=e.ns.qualify(v),v.local?T.getAttributeNS(v.space,v.local):T.getAttribute(v)}for(g in v)this.each(Te(g,v[g]));return this}return this.each(Te(v,g))};function Te(v,g){v=e.ns.qualify(v);function T(){this.removeAttribute(v)}function q(){this.removeAttributeNS(v.space,v.local)}function S(){this.setAttribute(v,g)}function L(){this.setAttributeNS(v.space,v.local,g)}function z(){var F=g.apply(this,arguments);F==null?this.removeAttribute(v):this.setAttribute(v,F)}function P(){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:T:typeof g=="function"?v.local?P:z:v.local?L:S}function ye(v){return v.trim().replace(/\s+/g," ")}xe.classed=function(v,g){if(arguments.length<2){if(typeof v=="string"){var T=this.node(),q=(v=Ie(v)).length,S=-1;if(g=T.classList){for(;++S=0;)(L=T[q])&&(S&&S!==L.nextSibling&&S.parentNode.insertBefore(L,S),S=L);return this},xe.sort=function(v){v=_e.apply(this,arguments);for(var g=-1,T=this.length;++g=g&&(g=S+1);!(F=z[g])&&++g0&&(v=v.slice(0,S));var z=Oe.get(v);z&&(v=z,L=We);function P(){var K=this[q];K&&(this.removeEventListener(v,K,K.$),delete this[q])}function F(){var K=L(g,t(arguments));P.call(this),this.addEventListener(v,this[q]=K,K.$=T),K._=g}function $(){var K=new RegExp("^__on([^.]+)"+e.requote(v)+"$"),re;for(var te in this)if(re=te.match(K)){var me=this[te];this.removeEventListener(re[1],me,me.$),delete this[te]}}return S?g?F:P:g?Y:$}var Oe=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Oe.forEach(function(v){"on"+v in a&&Oe.remove(v)});function Je(v,g){return function(T){var q=e.event;e.event=T,g[0]=this.__data__;try{v.apply(this,g)}finally{e.event=q}}}function We(v,g){var T=Je(v,g);return function(q){var S=this,L=q.relatedTarget;(!L||L!==S&&!(L.compareDocumentPosition(S)&8))&&T.call(S,q)}}var Xe,lr=0;function tr(v){var g=".dragsuppress-"+ ++lr,T="click"+g,q=e.select(i(v)).on("touchmove"+g,ee).on("dragstart"+g,ee).on("selectstart"+g,ee);if(Xe==null&&(Xe="onselectstart"in v?!1:V(v.style,"userSelect")),Xe){var S=n(v).style,L=S[Xe];S[Xe]="none"}return function(z){if(q.on(g,null),Xe&&(S[Xe]=L),z){var P=function(){q.on(T,null)};q.on(T,function(){ee(),P()},!0),setTimeout(P,0)}}}e.mouse=function(v){return Ne(v,le())};var Ke=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Ne(v,g){g.changedTouches&&(g=g.changedTouches[0]);var T=v.ownerSVGElement||v;if(T.createSVGPoint){var q=T.createSVGPoint();if(Ke<0){var S=i(v);if(S.scrollX||S.scrollY){T=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var L=T[0][0].getScreenCTM();Ke=!(L.f||L.e),T.remove()}}return Ke?(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 z=v.getBoundingClientRect();return[g.clientX-z.left-v.clientLeft,g.clientY-z.top-v.clientTop]}e.touch=function(v,g,T){if(arguments.length<3&&(T=g,g=le().changedTouches),g){for(var q=0,S=g.length,L;q0?1:v<0?-1:0}function ut(v,g,T){return(g[0]-v[0])*(T[1]-v[1])-(g[1]-v[1])*(T[0]-v[0])}function kt(v){return v>1?0:v<-1?De:Math.acos(v)}function _t(v){return v>1?sr:v<-1?-sr:Math.asin(v)}function Ht(v){return((v=Math.exp(v))-1/v)/2}function ra(v){return((v=Math.exp(v))+1/v)/2}function Ia(v){return((v=Math.exp(2*v))-1)/(v+1)}function ma(v){return(v=Math.sin(v/2))*v}var ya=Math.SQRT2,vr=2,ft=4;e.interpolateZoom=function(v,g){var T=v[0],q=v[1],S=v[2],L=g[0],z=g[1],P=g[2],F=L-T,$=z-q,K=F*F+$*$,re,te;if(K0&&(je=je.transition().duration(z)),je.call(ke.event)}function dr(){se&&se.domain(ae.range().map(function(je){return(je-v.x)/v.k}).map(ae.invert)),we&&we.domain(he.range().map(function(je){return(je-v.y)/v.k}).map(he.invert))}function pr(je){P++||je({type:"zoomstart"})}function Lr(je){dr(),je({type:"zoom",scale:v.k,translate:[v.x,v.y]})}function mr(je){--P||(je({type:"zoomend"}),T=null)}function Mr(){var je=this,Dr=Me.of(je,arguments),Er=0,Qr=e.select(i(je)).on($,wa).on(K,Oa),St=pe(e.mouse(je)),Kt=tr(je);eh.call(je),pr(Dr);function wa(){Er=1,ur(e.mouse(je),St),Lr(Dr)}function Oa(){Qr.on($,null).on(K,null),Kt(Er),mr(Dr)}}function Kr(){var je=this,Dr=Me.of(je,arguments),Er={},Qr=0,St,Kt=".zoom-"+e.event.changedTouches[0].identifier,wa="touchmove"+Kt,Oa="touchend"+Kt,$a=[],Ba=e.select(je),en=tr(je);rn(),pr(Dr),Ba.on(F,null).on(te,rn);function Da(){var oi=e.touches(je);return St=v.k,oi.forEach(function(Ta){Ta.identifier in Er&&(Er[Ta.identifier]=pe(Ta))}),oi}function rn(){var oi=e.event.target;e.select(oi).on(wa,Fo).on(Oa,lX),$a.push(oi);for(var Ta=e.event.changedTouches,Rn=0,Ni=Ta.length;Rn1){var Io=zn[0],El=zn[1],ah=Io[0]-El[0],U4=Io[1]-El[1];Qr=ah*ah+U4*U4}}function Fo(){var oi=e.touches(je),Ta,Rn,Ni,zn;eh.call(je);for(var vu=0,Io=oi.length;vu1?1:g,T=T<0?0:T>1?1:T,S=T<=.5?T*(1+g):T+g-T*g,q=2*T-S;function L(P){return P>360?P-=360:P<0&&(P+=360),P<60?q+(S-q)*P/60:P<180?S:P<240?q+(S-q)*(240-P)/60:q}function z(P){return Math.round(L(P)*255)}return new Ha(z(v+120),z(v),z(v-120))}e.hcl=ta;function ta(v,g,T){return this instanceof ta?(this.h=+v,this.c=+g,void(this.l=+T)):arguments.length<2?v instanceof ta?new ta(v.h,v.c,v.l):v instanceof Pt?P0(v.l,v.a,v.b):P0((v=or((v=e.rgb(v)).r,v.g,v.b)).l,v.a,v.b):new ta(v,g,T)}var Ri=ta.prototype=new Mt;Ri.brighter=function(v){return new ta(this.h,this.c,Math.min(100,this.l+qt*(arguments.length?v:1)))},Ri.darker=function(v){return new ta(this.h,this.c,Math.max(0,this.l-qt*(arguments.length?v:1)))},Ri.rgb=function(){return En(this.h,this.c,this.l).rgb()};function En(v,g,T){return isNaN(v)&&(v=0),isNaN(g)&&(g=0),new Pt(T,Math.cos(v*=Ar)*g,Math.sin(v)*g)}e.lab=Pt;function Pt(v,g,T){return this instanceof Pt?(this.l=+v,this.a=+g,void(this.b=+T)):arguments.length<2?v instanceof Pt?new Pt(v.l,v.a,v.b):v instanceof ta?En(v.h,v.c,v.l):or((v=Ha(v)).r,v.g,v.b):new Pt(v,g,T)}var qt=18,xa=.95047,Do=1,Eo=1.08883,Ll=Pt.prototype=new Mt;Ll.brighter=function(v){return new Pt(Math.min(100,this.l+qt*(arguments.length?v:1)),this.a,this.b)},Ll.darker=function(v){return new Pt(Math.max(0,this.l-qt*(arguments.length?v:1)),this.a,this.b)},Ll.rgb=function(){return E0(this.l,this.a,this.b)};function E0(v,g,T){var q=(v+16)/116,S=q+g/500,L=q-T/200;return S=oc(S)*xa,q=oc(q)*Do,L=oc(L)*Eo,new Ha(uc(3.2404542*S-1.5371385*q-.4985314*L),uc(-.969266*S+1.8760108*q+.041556*L),uc(.0556434*S-.2040259*q+1.0572252*L))}function P0(v,g,T){return v>0?new ta(Math.atan2(T,g)*Br,Math.sqrt(g*g+T*T),v):new ta(NaN,NaN,v)}function oc(v){return v>.206893034?v*v*v:(v-4/29)/7.787037}function sc(v){return v>.008856?Math.pow(v,1/3):7.787037*v+4/29}function uc(v){return Math.round(255*(v<=.00304?12.92*v:1.055*Math.pow(v,1/2.4)-.055))}e.rgb=Ha;function Ha(v,g,T){return this instanceof Ha?(this.r=~~v,this.g=~~g,void(this.b=~~T)):arguments.length<2?v instanceof Ha?new Ha(v.r,v.g,v.b):Wr(""+v,Ha,Dn):new Ha(v,g,T)}function R0(v){return new Ha(v>>16,v>>8&255,v&255)}function nu(v){return R0(v)+""}var iu=Ha.prototype=new Mt;iu.brighter=function(v){v=Math.pow(.7,arguments.length?v:1);var g=this.r,T=this.g,q=this.b,S=30;return!g&&!T&&!q?new Ha(S,S,S):(g&&g>4,q=q>>4|q,S=F&240,S=S>>4|S,L=F&15,L=L<<4|L):v.length===7&&(q=(F&16711680)>>16,S=(F&65280)>>8,L=F&255)),g(q,S,L))}function rt(v,g,T){var q=Math.min(v/=255,g/=255,T/=255),S=Math.max(v,g,T),L=S-q,z,P,F=(S+q)/2;return L?(P=F<.5?L/(S+q):L/(2-S-q),v==S?z=(g-T)/L+(g0&&F<1?0:z),new jr(z,P,F)}function or(v,g,T){v=ba(v),g=ba(g),T=ba(T);var q=sc((.4124564*v+.3575761*g+.1804375*T)/xa),S=sc((.2126729*v+.7151522*g+.072175*T)/Do),L=sc((.0193339*v+.119192*g+.9503041*T)/Eo);return Pt(116*S-16,500*(q-S),200*(S-L))}function ba(v){return(v/=255)<=.04045?v/12.92:Math.pow((v+.055)/1.055,2.4)}function ct(v){var g=parseFloat(v);return v.charAt(v.length-1)==="%"?Math.round(g*2.55):g}var _a=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});_a.forEach(function(v,g){_a.set(v,R0(g))});function Nr(v){return typeof v=="function"?v:function(){return v}}e.functor=Nr,e.xhr=ii(G);function ii(v){return function(g,T,q){return arguments.length===2&&typeof T=="function"&&(q=T,T=null),Po(g,T,v,q)}}function Po(v,g,T,q){var S={},L=e.dispatch("beforesend","progress","load","error"),z={},P=new XMLHttpRequest,F=null;self.XDomainRequest&&!("withCredentials"in P)&&/^(http(s)?:)?\/\//.test(v)&&(P=new XDomainRequest),"onload"in P?P.onload=P.onerror=$:P.onreadystatechange=function(){P.readyState>3&&$()};function $(){var K=P.status,re;if(!K&&sU(P)||K>=200&&K<300||K===304){try{re=T.call(S,P)}catch(te){L.error.call(S,te);return}L.load.call(S,re)}else L.error.call(S,P)}return P.onprogress=function(K){var re=e.event;e.event=K;try{L.progress.call(S,P)}finally{e.event=re}},S.header=function(K,re){return K=(K+"").toLowerCase(),arguments.length<2?z[K]:(re==null?delete z[K]:z[K]=re+"",S)},S.mimeType=function(K){return arguments.length?(g=K==null?null:K+"",S):g},S.responseType=function(K){return arguments.length?(F=K,S):F},S.response=function(K){return T=K,S},["get","post"].forEach(function(K){S[K]=function(){return S.send.apply(S,[K].concat(t(arguments)))}}),S.send=function(K,re,te){if(arguments.length===2&&typeof re=="function"&&(te=re,re=null),P.open(K,v,!0),g!=null&&!("accept"in z)&&(z.accept=g+",*/*"),P.setRequestHeader)for(var me in z)P.setRequestHeader(me,z[me]);return g!=null&&P.overrideMimeType&&P.overrideMimeType(g),F!=null&&(P.responseType=F),te!=null&&S.on("error",te).on("load",function(Me){te(null,Me)}),L.beforesend.call(S,P),P.send(re==null?null:re),S},S.abort=function(){return P.abort(),S},e.rebind(S,L,"on"),q==null?S:S.get(oU(q))}function oU(v){return v.length===1?function(g,T){v(g==null?T:null)}:v}function sU(v){var g=v.responseType;return g&&g!=="text"?v.response:v.responseText}e.dsv=function(v,g){var T=new RegExp('["'+v+` +]`),q=v.charCodeAt(0);function S($,K,re){arguments.length<3&&(re=K,K=null);var te=Po($,g,K==null?L:z(K),re);return te.row=function(me){return arguments.length?te.response((K=me)==null?L:z(me)):K},te}function L($){return S.parse($.responseText)}function z($){return function(K){return S.parse(K.responseText,$)}}S.parse=function($,K){var re;return S.parseRows($,function(te,me){if(re)return re(te,me-1);var Me=function(ae){for(var se={},he=te.length,we=0;we=Me)return te;if(we)return we=!1,re;var Ve=ae;if($.charCodeAt(Ve)===34){for(var nr=Ve;nr++24?(isFinite(g)&&(clearTimeout(I0),I0=setTimeout(ey,g)),F0=0):(F0=1,D_(ey))}e.timer.flush=function(){E_(),P_()};function E_(){for(var v=Date.now(),g=z0;g;)v>=g.t&&g.c(v-g.t)&&(g.c=null),g=g.n;return v}function P_(){for(var v,g=z0,T=1/0;g;)g.c?(g.t=0;--P)ae.push(S[$[re[P]][2]]);for(P=+me;P1&&ut(v[T[q-2]],v[T[q-1]],v[S])<=0;)--q;T[q++]=S}return T.slice(0,q)}function uU(v,g){return v[0]-g[0]||v[1]-g[1]}e.geom.polygon=function(v){return j(v,O0),v};var O0=e.geom.polygon.prototype=[];O0.area=function(){for(var v=-1,g=this.length,T,q=this[g-1],S=0;++voe)P=P.L;else if(z=g-hU(P,T),z>oe){if(!P.R){q=P;break}P=P.R}else{L>-oe?(q=P.P,S=P):z>-oe?(q=P,S=P.N):q=S=P;break}var F=I_(v);if(su.insert(q,F),!(!q&&!S)){if(q===S){fu(q),S=I_(q.site),su.insert(F,S),F.edge=S.edge=vc(q.site,F.site),uu(q),uu(S);return}if(!S){F.edge=vc(q.site,F.site);return}fu(q),fu(S);var $=q.site,K=$.x,re=$.y,te=v.x-K,me=v.y-re,Me=S.site,ae=Me.x-K,se=Me.y-re,he=2*(te*se-me*ae),we=te*te+me*me,ke=ae*ae+se*se,pe={x:(se*we-me*ke)/he+K,y:(te*ke-ae*we)/he+re};B0(S.edge,$,Me,pe),F.edge=vc($,v,null,pe),S.edge=vc(v,Me,null,pe),uu(q),uu(S)}}function H_(v,g){var T=v.site,q=T.x,S=T.y,L=S-g;if(!L)return q;var z=v.P;if(!z)return-1/0;T=z.site;var P=T.x,F=T.y,$=F-g;if(!$)return P;var K=P-q,re=1/L-1/$,te=K/$;return re?(-te+Math.sqrt(te*te-2*re*(K*K/(-2*$)-F+$/2+S-L/2)))/re+q:(q+P)/2}function hU(v,g){var T=v.N;if(T)return H_(T,g);var q=v.site;return q.y===g?q.x:1/0}function O_(v){this.site=v,this.edges=[]}O_.prototype.prepare=function(){for(var v=this.edges,g=v.length,T;g--;)T=v[g].edge,(!T.b||!T.a)&&v.splice(g,1);return v.sort(B_),v.length};function dU(v){for(var g=v[0][0],T=v[1][0],q=v[0][1],S=v[1][1],L,z,P,F,$=Ro,K=$.length,re,te,me,Me,ae,se;K--;)if(re=$[K],!(!re||!re.prepare()))for(me=re.edges,Me=me.length,te=0;teoe||b(F-z)>oe)&&(me.splice(te,0,new Y0(xU(re.site,se,b(P-g)oe?{x:g,y:b(L-g)oe?{x:b(z-S)oe?{x:T,y:b(L-T)oe?{x:b(z-q)=-Ce)){var te=F*F+$*$,me=K*K+se*se,Me=(se*te-$*me)/re,ae=(F*me-K*te)/re,se=ae+P,he=F_.pop()||new pU;he.arc=v,he.site=S,he.x=Me+z,he.y=se+Math.sqrt(Me*Me+ae*ae),he.cy=se,v.circle=he;for(var we=null,ke=cc._;ke;)if(he.y0)){if(ae/=me,me<0){if(ae0){if(ae>te)return;ae>re&&(re=ae)}if(ae=T-P,!(!me&&ae<0)){if(ae/=me,me<0){if(ae>te)return;ae>re&&(re=ae)}else if(me>0){if(ae0)){if(ae/=Me,Me<0){if(ae0){if(ae>te)return;ae>re&&(re=ae)}if(ae=q-F,!(!Me&&ae<0)){if(ae/=Me,Me<0){if(ae>te)return;ae>re&&(re=ae)}else if(Me>0){if(ae0&&(S.a={x:P+re*me,y:F+re*Me}),te<1&&(S.b={x:P+te*me,y:F+te*Me}),S}}}}}}function yU(v){for(var g=ou,T=mU(v[0][0],v[0][1],v[1][0],v[1][1]),q=g.length,S;q--;)S=g[q],(!gU(S,v)||!T(S)||b(S.a.x-S.b.x)=L)return;if(K>te){if(!q)q={x:Me,y:z};else if(q.y>=P)return;T={x:Me,y:P}}else{if(!q)q={x:Me,y:P};else if(q.y1)if(K>te){if(!q)q={x:(z-he)/se,y:z};else if(q.y>=P)return;T={x:(P-he)/se,y:P}}else{if(!q)q={x:(P-he)/se,y:P};else if(q.y=L)return;T={x:L,y:se*L+he}}else{if(!q)q={x:L,y:se*L+he};else if(q.x=K&&he.x<=te&&he.y>=re&&he.y<=me?[[K,me],[te,me],[te,re],[K,re]]:[];we.point=F[ae]}),$}function P(F){return F.map(function($,K){return{x:Math.round(q($,K)/oe)*oe,y:Math.round(S($,K)/oe)*oe,i:K}})}return z.links=function(F){return ly(P(F)).edges.filter(function($){return $.l&&$.r}).map(function($){return{source:F[$.l.i],target:F[$.r.i]}})},z.triangles=function(F){var $=[];return ly(P(F)).cells.forEach(function(K,re){for(var te=K.site,me=K.edges.sort(B_),Me=-1,ae=me.length,se,he,we=me[ae-1].edge,ke=we.l===te?we.r:we.l;++Meke&&(ke=K.x),K.y>pe&&(pe=K.y),me.push(K.x),Me.push(K.y);else for(ae=0;aeke&&(ke=Ve),nr>pe&&(pe=nr),me.push(Ve),Me.push(nr)}var ur=ke-he,ir=pe-we;ur>ir?pe=we+ur:ke=he+ir;function dr(mr,Mr,Kr,Ot,at,je,Dr,Er){if(!(isNaN(Kr)||isNaN(Ot)))if(mr.leaf){var Qr=mr.x,St=mr.y;if(Qr!=null)if(b(Qr-Kr)+b(St-Ot)<.01)pr(mr,Mr,Kr,Ot,at,je,Dr,Er);else{var Kt=mr.point;mr.x=mr.y=mr.point=null,pr(mr,Kt,Qr,St,at,je,Dr,Er),pr(mr,Mr,Kr,Ot,at,je,Dr,Er)}else mr.x=Kr,mr.y=Ot,mr.point=Mr}else pr(mr,Mr,Kr,Ot,at,je,Dr,Er)}function pr(mr,Mr,Kr,Ot,at,je,Dr,Er){var Qr=(at+Dr)*.5,St=(je+Er)*.5,Kt=Kr>=Qr,wa=Ot>=St,Oa=wa<<1|Kt;mr.leaf=!1,mr=mr.nodes[Oa]||(mr.nodes[Oa]=G_()),Kt?at=Qr:Dr=Qr,wa?je=St:Er=St,dr(mr,Mr,Kr,Ot,at,je,Dr,Er)}var Lr=G_();if(Lr.add=function(mr){dr(Lr,mr,+re(mr,++ae),+te(mr,ae),he,we,ke,pe)},Lr.visit=function(mr){pc(mr,Lr,he,we,ke,pe)},Lr.find=function(mr){return MU(Lr,mr[0],mr[1],he,we,ke,pe)},ae=-1,g==null){for(;++aeL||te>z||me=Ve,ir=T>=nr,dr=ir<<1|ur,pr=dr+4;drT&&(L=g.slice(T,L),P[z]?P[z]+=L:P[++z]=L),(q=q[0])===(S=S[0])?P[z]?P[z]+=S:P[++z]=S:(P[++z]=null,F.push({i:z,x:nl(q,S)})),T=uy.lastIndex;return T=0&&!(q=e.interpolators[T](v,g)););return q}e.interpolators=[function(v,g){var T=typeof g;return(T==="string"?_a.has(g.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(g)?oy:W_:g instanceof Mt?oy:Array.isArray(g)?U0:T==="object"&&isNaN(g)?U_:nl)(v,g)}],e.interpolateArray=U0;function U0(v,g){var T=[],q=[],S=v.length,L=g.length,z=Math.min(v.length,g.length),P;for(P=0;P=0?v.slice(0,g):v,q=g>=0?v.slice(g+1):"in";return T=AU.get(T)||X_,q=kU.get(q)||G,qU(q(T.apply(null,r.call(arguments,1))))};function qU(v){return function(g){return g<=0?0:g>=1?1:v(g)}}function Z_(v){return function(g){return 1-v(1-g)}}function J_(v){return function(g){return .5*(g<.5?v(2*g):2-v(2-2*g))}}function SU(v){return v*v}function CU(v){return v*v*v}function LU(v){if(v<=0)return 0;if(v>=1)return 1;var g=v*v,T=g*v;return 4*(v<.5?T:3*(v-g)+T-.75)}function DU(v){return function(g){return Math.pow(g,v)}}function EU(v){return 1-Math.cos(v*sr)}function PU(v){return Math.pow(2,10*(v-1))}function RU(v){return 1-Math.sqrt(1-v*v)}function zU(v,g){var T;return arguments.length<2&&(g=.45),arguments.length?T=g/ar*Math.asin(1/v):(v=1,T=g/4),function(q){return 1+v*Math.pow(2,-10*q)*Math.sin((q-T)*ar/g)}}function NU(v){return v||(v=1.70158),function(g){return g*g*((v+1)*g-v)}}function FU(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=IU;function IU(v,g){v=e.hcl(v),g=e.hcl(g);var T=v.h,q=v.c,S=v.l,L=g.h-T,z=g.c-q,P=g.l-S;return isNaN(z)&&(z=0,q=isNaN(q)?g.c:q),isNaN(L)?(L=0,T=isNaN(T)?g.h:T):L>180?L-=360:L<-180&&(L+=360),function(F){return En(T+L*F,q+z*F,S+P*F)+""}}e.interpolateHsl=HU;function HU(v,g){v=e.hsl(v),g=e.hsl(g);var T=v.h,q=v.s,S=v.l,L=g.h-T,z=g.s-q,P=g.l-S;return isNaN(z)&&(z=0,q=isNaN(q)?g.s:q),isNaN(L)?(L=0,T=isNaN(T)?g.h:T):L>180?L-=360:L<-180&&(L+=360),function(F){return Dn(T+L*F,q+z*F,S+P*F)+""}}e.interpolateLab=OU;function OU(v,g){v=e.lab(v),g=e.lab(g);var T=v.l,q=v.a,S=v.b,L=g.l-T,z=g.a-q,P=g.b-S;return function(F){return E0(T+L*F,q+z*F,S+P*F)+""}}e.interpolateRound=$_;function $_(v,g){return g-=v,function(T){return Math.round(v+g*T)}}e.transform=function(v){var g=a.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(T){if(T!=null){g.setAttribute("transform",T);var q=g.transform.baseVal.consolidate()}return new K_(q?q.matrix:YU)})(v)};function K_(v){var g=[v.a,v.b],T=[v.c,v.d],q=j_(g),S=Q_(g,T),L=j_(BU(T,g,-S))||0;g[0]*T[1]180?g+=360:g-v>180&&(v+=360),q.push({i:T.push(cu(T)+"rotate(",null,")")-2,x:nl(v,g)})):g&&T.push(cu(T)+"rotate("+g+")")}function UU(v,g,T,q){v!==g?q.push({i:T.push(cu(T)+"skewX(",null,")")-2,x:nl(v,g)}):g&&T.push(cu(T)+"skewX("+g+")")}function WU(v,g,T,q){if(v[0]!==g[0]||v[1]!==g[1]){var S=T.push(cu(T)+"scale(",null,",",null,")");q.push({i:S-4,x:nl(v[0],g[0])},{i:S-2,x:nl(v[1],g[1])})}else(g[0]!==1||g[1]!==1)&&T.push(cu(T)+"scale("+g+")")}function e4(v,g){var T=[],q=[];return v=e.transform(v),g=e.transform(g),VU(v.translate,g.translate,T,q),GU(v.rotate,g.rotate,T,q),UU(v.skew,g.skew,T,q),WU(v.scale,g.scale,T,q),v=g=null,function(S){for(var L=-1,z=q.length,P;++L0?L=pe:(T.c=null,T.t=NaN,T=null,g.end({type:"end",alpha:L=0})):pe>0&&(g.start({type:"start",alpha:L=pe}),T=H0(v.tick)),v):L},v.start=function(){var pe,Ve=me.length,nr=Me.length,ur=q[0],ir=q[1],dr,pr;for(pe=0;pe=0;)L.push(K=$[F]),K.parent=P,K.depth=P.depth+1;T&&(P.value=0),P.children=$}else T&&(P.value=+T.call(q,P,P.depth)||0),delete P.children;return zi(S,function(re){var te,me;v&&(te=re.children)&&te.sort(v),T&&(me=re.parent)&&(me.value+=re.value)}),z}return q.sort=function(S){return arguments.length?(v=S,q):v},q.children=function(S){return arguments.length?(g=S,q):g},q.value=function(S){return arguments.length?(T=S,q):T},q.revalue=function(S){return T&&(yc(S,function(L){L.children&&(L.value=0)}),zi(S,function(L){var z;L.children||(L.value=+T.call(q,L,L.depth)||0),(z=L.parent)&&(z.value+=L.value)})),S},q};function mc(v,g){return e.rebind(v,g,"sort","children","value"),v.nodes=v,v.links=oW,v}function yc(v,g){for(var T=[v];(v=T.pop())!=null;)if(g(v),(S=v.children)&&(q=S.length))for(var q,S;--q>=0;)T.push(S[q])}function zi(v,g){for(var T=[v],q=[];(v=T.pop())!=null;)if(q.push(v),(z=v.children)&&(L=z.length))for(var S=-1,L,z;++SS&&(S=P),q.push(P)}for(z=0;zq&&(T=g,q=S);return T}function dW(v){return v.reduce(pW,0)}function pW(v,g){return v+g[1]}e.layout.histogram=function(){var v=!0,g=Number,T=yW,q=mW;function S(L,te){for(var P=[],F=L.map(g,this),$=T.call(this,F,te),K=q.call(this,$,F,te),re,te=-1,me=F.length,Me=K.length-1,ae=v?1:1/me,se;++te0)for(te=-1;++te=$[0]&&se<=$[1]&&(re=P[e.bisect(K,se,1,Me)-1],re.y+=ae,re.push(L[te]));return P}return S.value=function(L){return arguments.length?(g=L,S):g},S.range=function(L){return arguments.length?(T=Nr(L),S):T},S.bins=function(L){return arguments.length?(q=typeof L=="number"?function(z){return n4(z,L)}:Nr(L),S):q},S.frequency=function(L){return arguments.length?(v=!!L,S):v},S};function mW(v,g){return n4(v,Math.ceil(Math.log(g.length)/Math.LN2+1))}function n4(v,g){for(var T=-1,q=+v[0],S=(v[1]-q)/g,L=[];++T<=g;)L[T]=S*T+q;return L}function yW(v){return[e.min(v),e.max(v)]}e.layout.pack=function(){var v=e.layout.hierarchy().sort(gW),g=0,T=[1,1],q;function S(L,z){var P=v.call(this,L,z),F=P[0],$=T[0],K=T[1],re=q==null?Math.sqrt:typeof q=="function"?q:function(){return q};if(F.x=F.y=0,zi(F,function(me){me.r=+re(me.value)}),zi(F,o4),g){var te=g*(q?1:Math.max(2*F.r/$,2*F.r/K))/2;zi(F,function(me){me.r+=te}),zi(F,o4),zi(F,function(me){me.r-=te})}return s4(F,$/2,K/2,q?1:1/Math.max(2*F.r/$,2*F.r/K)),P}return S.size=function(L){return arguments.length?(T=L,S):T},S.radius=function(L){return arguments.length?(q=L==null||typeof L=="function"?L:+L,S):q},S.padding=function(L){return arguments.length?(g=+L,S):g},mc(S,v)};function gW(v,g){return v.value-g.value}function vy(v,g){var T=v._pack_next;v._pack_next=g,g._pack_prev=v,g._pack_next=T,T._pack_prev=g}function i4(v,g){v._pack_next=g,g._pack_prev=v}function l4(v,g){var T=g.x-v.x,q=g.y-v.y,S=v.r+g.r;return .999*S*S>T*T+q*q}function o4(v){if(!(g=v.children)||!(te=g.length))return;var g,T=1/0,q=-1/0,S=1/0,L=-1/0,z,P,F,$,K,re,te;function me(pe){T=Math.min(pe.x-pe.r,T),q=Math.max(pe.x+pe.r,q),S=Math.min(pe.y-pe.r,S),L=Math.max(pe.y+pe.r,L)}if(g.forEach(xW),z=g[0],z.x=-z.r,z.y=0,me(z),te>1&&(P=g[1],P.x=P.r,P.y=0,me(P),te>2))for(F=g[2],u4(z,P,F),me(F),vy(z,F),z._pack_prev=F,vy(F,P),P=z._pack_next,$=3;$se.x&&(se=Ve),Ve.depth>he.depth&&(he=Ve)});var we=g(ae,se)/2-ae.x,ke=T[0]/(se.x+g(se,ae)/2+we),pe=T[1]/(he.depth||1);yc(me,function(Ve){Ve.x=(Ve.x+we)*ke,Ve.y=Ve.depth*pe})}return te}function L(K){for(var re={A:null,children:[K]},te=[re],me;(me=te.pop())!=null;)for(var Me=me.children,ae,se=0,he=Me.length;se0&&(_W(TW(ae,K,te),K,Ve),he+=Ve,we+=Ve),ke+=ae.m,he+=me.m,pe+=se.m,we+=Me.m;ae&&!dy(Me)&&(Me.t=ae,Me.m+=ke-we),me&&!hy(se)&&(se.t=me,se.m+=he-pe,te=K)}return te}function $(K){K.x*=T[0],K.y=K.depth*T[1]}return S.separation=function(K){return arguments.length?(g=K,S):g},S.size=function(K){return arguments.length?(q=(T=K)==null?$:null,S):q?null:T},S.nodeSize=function(K){return arguments.length?(q=(T=K)==null?null:$,S):q?T:null},mc(S,v)};function f4(v,g){return v.parent==g.parent?1:2}function hy(v){var g=v.children;return g.length?g[0]:v.t}function dy(v){var g=v.children,T;return(T=g.length)?g[T-1]:v.t}function _W(v,g,T){var q=T/(g.i-v.i);g.c-=q,g.s+=T,v.c+=q,g.z+=T,g.m+=T}function wW(v){for(var g=0,T=0,q=v.children,S=q.length,L;--S>=0;)L=q[S],L.z+=g,L.m+=g,g+=L.s+(T+=L.c)}function TW(v,g,T){return v.a.parent===g.parent?v.a:T}e.layout.cluster=function(){var v=e.layout.hierarchy().sort(null).value(null),g=f4,T=[1,1],q=!1;function S(L,z){var P=v.call(this,L,z),F=P[0],$,K=0;zi(F,function(ae){var se=ae.children;se&&se.length?(ae.x=AW(se),ae.y=MW(se)):(ae.x=$?K+=g(ae,$):0,ae.y=0,$=ae)});var re=c4(F),te=v4(F),me=re.x-g(re,te)/2,Me=te.x+g(te,re)/2;return zi(F,q?function(ae){ae.x=(ae.x-F.x)*T[0],ae.y=(F.y-ae.y)*T[1]}:function(ae){ae.x=(ae.x-me)/(Me-me)*T[0],ae.y=(1-(F.y?ae.y/F.y:1))*T[1]}),P}return S.separation=function(L){return arguments.length?(g=L,S):g},S.size=function(L){return arguments.length?(q=(T=L)==null,S):q?null:T},S.nodeSize=function(L){return arguments.length?(q=(T=L)!=null,S):q?T:null},mc(S,v)};function MW(v){return 1+e.max(v,function(g){return g.y})}function AW(v){return v.reduce(function(g,T){return g+T.x},0)/v.length}function c4(v){var g=v.children;return g&&g.length?c4(g[0]):v}function v4(v){var g=v.children,T;return g&&(T=g.length)?v4(g[T-1]):v}e.layout.treemap=function(){var v=e.layout.hierarchy(),g=Math.round,T=[1,1],q=null,S=py,L=!1,z,P="squarify",F=.5*(1+Math.sqrt(5));function $(ae,se){for(var he=-1,we=ae.length,ke,pe;++he0;)we.push(pe=ke[ir-1]),we.area+=pe.area,P!=="squarify"||(nr=te(we,ur))<=Ve?(ke.pop(),Ve=nr):(we.area-=we.pop().area,me(we,ur,he,!1),ur=Math.min(he.dx,he.dy),we.length=we.area=0,Ve=1/0);we.length&&(me(we,ur,he,!0),we.length=we.area=0),se.forEach(K)}}function re(ae){var se=ae.children;if(se&&se.length){var he=S(ae),we=se.slice(),ke,pe=[];for($(we,he.dx*he.dy/ae.value),pe.area=0;ke=we.pop();)pe.push(ke),pe.area+=ke.area,ke.z!=null&&(me(pe,ke.z?he.dx:he.dy,he,!we.length),pe.length=pe.area=0);se.forEach(re)}}function te(ae,se){for(var he=ae.area,we,ke=0,pe=1/0,Ve=-1,nr=ae.length;++Veke&&(ke=we));return he*=he,se*=se,he?Math.max(se*ke*F/he,he/(se*pe*F)):1/0}function me(ae,se,he,we){var ke=-1,pe=ae.length,Ve=he.x,nr=he.y,ur=se?g(ae.area/se):0,ir;if(se==he.dx){for((we||ur>he.dy)&&(ur=he.dy);++kehe.dx)&&(ur=he.dx);++ke1);return v+g*q*Math.sqrt(-2*Math.log(L)/L)}},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,T=0;T2?SW:kW,$=q?ZU:XU;return S=F(v,g,$,T),L=F(g,v,$,zo),P}function P(F){return S(F)}return P.invert=function(F){return L(F)},P.domain=function(F){return arguments.length?(v=F.map(Number),z()):v},P.range=function(F){return arguments.length?(g=F,z()):g},P.rangeRound=function(F){return P.range(F).interpolate($_)},P.clamp=function(F){return arguments.length?(q=F,z()):q},P.interpolate=function(F){return arguments.length?(T=F,z()):T},P.ticks=function(F){return gy(v,F)},P.tickFormat=function(F,$){return d3_scale_linearTickFormat(v,F,$)},P.nice=function(F){return y4(v,F),z()},P.copy=function(){return p4(v,g,T,q)},z()}function m4(v,g){return e.rebind(v,g,"range","rangeRound","interpolate","clamp")}function y4(v,g){return my(v,d4(yy(v,g)[2])),my(v,d4(yy(v,g)[2])),v}function yy(v,g){g==null&&(g=10);var T=W0(v),q=T[1]-T[0],S=Math.pow(10,Math.floor(Math.log(q/g)/Math.LN10)),L=g/q*S;return L<=.15?S*=10:L<=.35?S*=5:L<=.75&&(S*=2),T[0]=Math.ceil(T[0]/S)*S,T[1]=Math.floor(T[1]/S)*S+S*.5,T[2]=S,T}function gy(v,g){return e.range.apply(e,yy(v,g))}var CW={s:1,g:1,p:1,r:1,e:1};function g4(v){return-Math.floor(Math.log(v)/Math.LN10+.01)}function ame(v,g){var T=g4(g[2]);return v in CW?Math.abs(T-g4(Math.max(b(g[0]),b(g[1]))))+ +(v!=="e"):T-(v==="%")*2}e.scale.log=function(){return x4(e.scale.linear().domain([0,1]),10,!0,[1,10])};function x4(v,g,T,q){function S(P){return(T?Math.log(P<0?0:P):-Math.log(P>0?0:-P))/Math.log(g)}function L(P){return T?Math.pow(g,P):-Math.pow(g,-P)}function z(P){return v(S(P))}return z.invert=function(P){return L(v.invert(P))},z.domain=function(P){return arguments.length?(T=P[0]>=0,v.domain((q=P.map(Number)).map(S)),z):q},z.base=function(P){return arguments.length?(g=+P,v.domain(q.map(S)),z):g},z.nice=function(){var P=my(q.map(S),T?Math:LW);return v.domain(P),q=P.map(L),z},z.ticks=function(){var P=W0(q),F=[],$=P[0],K=P[1],re=Math.floor(S($)),te=Math.ceil(S(K)),me=g%1?2:g;if(isFinite(te-re)){if(T){for(;re0;Me--)F.push(L(re)*Me);for(re=0;F[re]<$;re++);for(te=F.length;F[te-1]>K;te--);F=F.slice(re,te)}return F},z.copy=function(){return x4(v.copy(),g,T,q)},m4(z,v)}var LW={floor:function(v){return-Math.ceil(-v)},ceil:function(v){return-Math.floor(-v)}};e.scale.pow=function(){return b4(e.scale.linear(),1,[0,1])};function b4(v,g,T){var q=Z0(g),S=Z0(1/g);function L(z){return v(q(z))}return L.invert=function(z){return S(v.invert(z))},L.domain=function(z){return arguments.length?(v.domain((T=z.map(Number)).map(q)),L):T},L.ticks=function(z){return gy(T,z)},L.tickFormat=function(z,P){return d3_scale_linearTickFormat(T,z,P)},L.nice=function(z){return L.domain(y4(T,z))},L.exponent=function(z){return arguments.length?(q=Z0(g=z),S=Z0(1/g),v.domain(T.map(q)),L):g},L.copy=function(){return b4(v.copy(),g,T)},m4(L,v)}function Z0(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 _4([],{t:"range",a:[[]]})};function _4(v,g){var T,q,S;function L(P){return q[((T.get(P)||(g.t==="range"?T.set(P,v.push(P)):NaN))-1)%q.length]}function z(P,F){return e.range(v.length).map(function($){return P+F*$})}return L.domain=function(P){if(!arguments.length)return v;v=[],T=new x;for(var F=-1,$=P.length,K;++F<$;)T.has(K=P[F])||T.set(K,v.push(K));return L[g.t].apply(L,g.a)},L.range=function(P){return arguments.length?(q=P,S=0,g={t:"range",a:arguments},L):q},L.rangePoints=function(P,F){arguments.length<2&&(F=0);var $=P[0],K=P[1],re=v.length<2?($=($+K)/2,0):(K-$)/(v.length-1+F);return q=z($+re*F/2,re),S=0,g={t:"rangePoints",a:arguments},L},L.rangeRoundPoints=function(P,F){arguments.length<2&&(F=0);var $=P[0],K=P[1],re=v.length<2?($=K=Math.round(($+K)/2),0):(K-$)/(v.length-1+F)|0;return q=z($+Math.round(re*F/2+(K-$-(v.length-1+F)*re)/2),re),S=0,g={t:"rangeRoundPoints",a:arguments},L},L.rangeBands=function(P,F,$){arguments.length<2&&(F=0),arguments.length<3&&($=F);var K=P[1]0?T[L-1]:v[0],Lte?0:1;if(K<$&&(ae=K,K=$,$=ae),me>=cr)return F(K,Me)+($?F($,1-Me):"")+"Z";var ae,se,he,we,ke=0,pe=0,Ve,nr,ur,ir,dr,pr,Lr,mr,Mr=[];if((we=(+z.apply(this,arguments)||0)/2)&&(he=q===J0?Math.sqrt($*$+K*K):+q.apply(this,arguments),Me||(pe*=-1),K&&(pe=_t(he/K*Math.sin(we))),$&&(ke=_t(he/$*Math.sin(we)))),K){Ve=K*Math.cos(re+pe),nr=K*Math.sin(re+pe),ur=K*Math.cos(te-pe),ir=K*Math.sin(te-pe);var Kr=Math.abs(te-re-2*pe)<=De?0:1;if(pe&&$0(Ve,nr,ur,ir)===Me^Kr){var Ot=(re+te)/2;Ve=K*Math.cos(Ot),nr=K*Math.sin(Ot),ur=ir=null}}else Ve=nr=0;if($){dr=$*Math.cos(te-ke),pr=$*Math.sin(te-ke),Lr=$*Math.cos(re+ke),mr=$*Math.sin(re+ke);var at=Math.abs(re-te+2*ke)<=De?0:1;if(ke&&$0(dr,pr,Lr,mr)===1-Me^at){var je=(re+te)/2;dr=$*Math.cos(je),pr=$*Math.sin(je),Lr=mr=null}}else dr=pr=0;if(me>oe&&(ae=Math.min(Math.abs(K-$)/2,+T.apply(this,arguments)))>.001){se=$0?0:1}function K0(v,g,T,q,S){var L=v[0]-g[0],z=v[1]-g[1],P=(S?q:-q)/Math.sqrt(L*L+z*z),F=P*z,$=-P*L,K=v[0]+F,re=v[1]+$,te=g[0]+F,me=g[1]+$,Me=(K+te)/2,ae=(re+me)/2,se=te-K,he=me-re,we=se*se+he*he,ke=T-q,pe=K*me-te*re,Ve=(he<0?-1:1)*Math.sqrt(Math.max(0,ke*ke*we-pe*pe)),nr=(pe*he-se*Ve)/we,ur=(-pe*se-he*Ve)/we,ir=(pe*he+se*Ve)/we,dr=(-pe*se+he*Ve)/we,pr=nr-Me,Lr=ur-ae,mr=ir-Me,Mr=dr-ae;return pr*pr+Lr*Lr>mr*mr+Mr*Mr&&(nr=ir,ur=dr),[[nr-F,ur-$],[nr*T/ke,ur*T/ke]]}function S4(){return!0}function C4(v){var g=lu,T=fc,q=S4,S=li,L=S.key,z=.7;function P(F){var $=[],K=[],re=-1,te=F.length,me,Me=Nr(g),ae=Nr(T);function se(){$.push("M",S(v(K),z))}for(;++re1?v.join("L"):v+"Z"}function L4(v){return v.join("L")+"Z"}function HW(v){for(var g=0,T=v.length,q=v[0],S=[q[0],",",q[1]];++g1&&S.push("H",q[0]),S.join("")}function by(v){for(var g=0,T=v.length,q=v[0],S=[q[0],",",q[1]];++g1){P=g[1],L=v[F],F++,q+="C"+(S[0]+z[0])+","+(S[1]+z[1])+","+(L[0]-P[0])+","+(L[1]-P[1])+","+L[0]+","+L[1];for(var $=2;$9&&(L=T*3/Math.sqrt(L),z[P]=L*q,z[P+1]=L*S));for(P=-1;++P<=F;)L=(v[Math.min(F,P+1)][0]-v[Math.max(0,P-1)][0])/(6*(1+z[P]*z[P])),g.push([L||0,z[P]*L||0]);return g}function ZW(v){return v.length<3?li(v):v[0]+Q0(v,XW(v))}e.svg.line.radial=function(){var v=C4(R4);return v.radius=v.x,delete v.x,v.angle=v.y,delete v.y,v};function R4(v){for(var g,T=-1,q=v.length,S,L;++TDe)+",1 "+re}function $(K,re,te,me){return"Q 0,0 "+me}return L.radius=function(K){return arguments.length?(T=Nr(K),L):T},L.source=function(K){return arguments.length?(v=Nr(K),L):v},L.target=function(K){return arguments.length?(g=Nr(K),L):g},L.startAngle=function(K){return arguments.length?(q=Nr(K),L):q},L.endAngle=function(K){return arguments.length?(S=Nr(K),L):S},L};function JW(v){return v.radius}e.svg.diagonal=function(){var v=N4,g=F4,T=I4;function q(S,L){var z=v.call(this,S,L),P=g.call(this,S,L),F=(z.y+P.y)/2,$=[z,{x:z.x,y:F},{x:P.x,y:F},P];return $=$.map(T),"M"+$[0]+"C"+$[1]+" "+$[2]+" "+$[3]}return q.source=function(S){return arguments.length?(v=Nr(S),q):v},q.target=function(S){return arguments.length?(g=Nr(S),q):g},q.projection=function(S){return arguments.length?(T=S,q):T},q};function I4(v){return[v.x,v.y]}e.svg.diagonal.radial=function(){var v=e.svg.diagonal(),g=I4,T=v.projection;return v.projection=function(q){return arguments.length?T($W(g=q)):g},v};function $W(v){return function(){var g=v.apply(this,arguments),T=g[0],q=g[1]-sr;return[T*Math.cos(q),T*Math.sin(q)]}}e.svg.symbol=function(){var v=QW,g=KW;function T(q,S){return(O4.get(v.call(this,q,S))||H4)(g.call(this,q,S))}return T.type=function(q){return arguments.length?(v=Nr(q),T):v},T.size=function(q){return arguments.length?(g=Nr(q),T):g},T};function KW(){return 64}function QW(){return"circle"}function H4(v){var g=Math.sqrt(v/De);return"M0,"+g+"A"+g+","+g+" 0 1,1 0,"+-g+"A"+g+","+g+" 0 1,1 0,"+g+"Z"}var O4=e.map({circle:H4,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*B4)),T=g*B4;return"M0,"+-g+"L"+T+",0 0,"+g+" "+-T+",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/j0),T=g*j0/2;return"M0,"+T+"L"+g+","+-T+" "+-g+","+-T+"Z"},"triangle-up":function(v){var g=Math.sqrt(v/j0),T=g*j0/2;return"M0,"+-T+"L"+g+","+T+" "+-g+","+T+"Z"}});e.svg.symbolTypes=O4.keys();var j0=Math.sqrt(3),B4=Math.tan(30*Ar);xe.transition=function(v){for(var g=No||++V4,T=ky(v),q=[],S,L,z=rh||{time:Date.now(),ease:LU,delay:0,duration:250},P=-1,F=this.length;++P0;)re[--we].call(v,he);if(se>=1)return z.event&&z.event.end.call(v,v.__data__,g),--L.count?delete L[q]:delete v[T],1}z||(P=S.time,F=H0(te,0,P),z=L[q]={tween:new x,time:P,timer:F,delay:S.delay,duration:S.duration,ease:S.ease,index:g},S=null,++L.count)}e.svg.axis=function(){var v=e.scale.linear(),g=G4,T=6,q=6,S=3,L=[10],z=null,P;function F($){$.each(function(){var K=e.select(this),re=this.__chart__||v,te=this.__chart__=v.copy(),me=z==null?te.ticks?te.ticks.apply(te,L):te.domain():z,Me=P==null?te.tickFormat?te.tickFormat.apply(te,L):G:P,ae=K.selectAll(".tick").data(me,te),se=ae.enter().insert("g",".domain").attr("class","tick").style("opacity",oe),he=e.transition(ae.exit()).style("opacity",oe).remove(),we=e.transition(ae.order()).style("opacity",1),ke=Math.max(T,0)+S,pe,Ve=X0(te),nr=K.selectAll(".domain").data([0]),ur=(nr.enter().append("path").attr("class","domain"),e.transition(nr));se.append("line"),se.append("text");var ir=se.select("line"),dr=we.select("line"),pr=ae.select("text").text(Me),Lr=se.select("text"),mr=we.select("text"),Mr=g==="top"||g==="left"?-1:1,Kr,Ot,at,je;if(g==="bottom"||g==="top"?(pe=rX,Kr="x",at="y",Ot="x2",je="y2",pr.attr("dy",Mr<0?"0em":".71em").style("text-anchor","middle"),ur.attr("d","M"+Ve[0]+","+Mr*q+"V0H"+Ve[1]+"V"+Mr*q)):(pe=tX,Kr="y",at="x",Ot="y2",je="x2",pr.attr("dy",".32em").style("text-anchor",Mr<0?"end":"start"),ur.attr("d","M"+Mr*q+","+Ve[0]+"H0V"+Ve[1]+"H"+Mr*q)),ir.attr(je,Mr*T),Lr.attr(at,Mr*ke),dr.attr(Ot,0).attr(je,Mr*T),mr.attr(Kr,0).attr(at,Mr*ke),te.rangeBand){var Dr=te,Er=Dr.rangeBand()/2;re=te=function(Qr){return Dr(Qr)+Er}}else re.rangeBand?re=te:he.call(pe,te,re);se.call(pe,re,te),we.call(pe,te,te)})}return F.scale=function($){return arguments.length?(v=$,F):v},F.orient=function($){return arguments.length?(g=$ in eX?$+"":G4,F):g},F.ticks=function(){return arguments.length?(L=t(arguments),F):L},F.tickValues=function($){return arguments.length?(z=$,F):z},F.tickFormat=function($){return arguments.length?(P=$,F):P},F.tickSize=function($){var K=arguments.length;return K?(T=+$,q=+arguments[K-1],F):T},F.innerTickSize=function($){return arguments.length?(T=+$,F):T},F.outerTickSize=function($){return arguments.length?(q=+$,F):q},F.tickPadding=function($){return arguments.length?(S=+$,F):S},F.tickSubdivide=function(){return arguments.length&&F},F};var G4="bottom",eX={top:1,right:1,bottom:1,left:1};function rX(v,g,T){v.attr("transform",function(q){var S=g(q);return"translate("+(isFinite(S)?S:T(q))+",0)"})}function tX(v,g,T){v.attr("transform",function(q){var S=g(q);return"translate(0,"+(isFinite(S)?S:T(q))+")"})}e.svg.brush=function(){var v=ue(K,"brushstart","brush","brushend"),g=null,T=null,q=[0,0],S=[0,0],L,z,P=!0,F=!0,$=qy[0];function K(ae){ae.each(function(){var se=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),he=se.selectAll(".background").data([0]);he.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),se.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var we=se.selectAll(".resize").data($,G);we.exit().remove(),we.enter().append("g").attr("class",function(nr){return"resize "+nr}).style("cursor",function(nr){return aX[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"),we.style("display",K.empty()?"none":null);var ke=e.transition(se),pe=e.transition(he),Ve;g&&(Ve=X0(g),pe.attr("x",Ve[0]).attr("width",Ve[1]-Ve[0]),te(ke)),T&&(Ve=X0(T),pe.attr("y",Ve[0]).attr("height",Ve[1]-Ve[0]),me(ke)),re(ke)})}K.event=function(ae){ae.each(function(){var se=v.of(this,arguments),he={x:q,y:S,i:L,j:z},we=this.__chart__||he;this.__chart__=he,No?e.select(this).transition().each("start.brush",function(){L=we.i,z=we.j,q=we.x,S=we.y,se({type:"brushstart"})}).tween("brush:brush",function(){var ke=U0(q,he.x),pe=U0(S,he.y);return L=z=null,function(Ve){q=he.x=ke(Ve),S=he.y=pe(Ve),se({type:"brush",mode:"resize"})}}).each("end.brush",function(){L=he.i,z=he.j,se({type:"brush",mode:"resize"}),se({type:"brushend"})}):(se({type:"brushstart"}),se({type:"brush",mode:"resize"}),se({type:"brushend"}))})};function re(ae){ae.selectAll(".resize").attr("transform",function(se){return"translate("+q[+/e$/.test(se)]+","+S[+/^s/.test(se)]+")"})}function te(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",S[0]),ae.selectAll(".extent,.e>rect,.w>rect").attr("height",S[1]-S[0])}function Me(){var ae=this,se=e.select(e.event.target),he=v.of(ae,arguments),we=e.select(ae),ke=se.datum(),pe=!/^(n|s)$/.test(ke)&&g,Ve=!/^(e|w)$/.test(ke)&&T,nr=se.classed("extent"),ur=tr(ae),ir,dr=e.mouse(ae),pr,Lr=e.select(i(ae)).on("keydown.brush",Kr).on("keyup.brush",Ot);if(e.event.changedTouches?Lr.on("touchmove.brush",at).on("touchend.brush",Dr):Lr.on("mousemove.brush",at).on("mouseup.brush",Dr),we.interrupt().selectAll("*").interrupt(),nr)dr[0]=q[0]-dr[0],dr[1]=S[0]-dr[1];else if(ke){var mr=+/w$/.test(ke),Mr=+/^n/.test(ke);pr=[q[1-mr]-dr[0],S[1-Mr]-dr[1]],dr[0]=q[mr],dr[1]=S[Mr]}else e.event.altKey&&(ir=dr.slice());we.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",se.style("cursor")),he({type:"brushstart"}),at();function Kr(){e.event.keyCode==32&&(nr||(ir=null,dr[0]-=q[1],dr[1]-=S[1],nr=2),ee())}function Ot(){e.event.keyCode==32&&nr==2&&(dr[0]+=q[1],dr[1]+=S[1],nr=0,ee())}function at(){var Er=e.mouse(ae),Qr=!1;pr&&(Er[0]+=pr[0],Er[1]+=pr[1]),nr||(e.event.altKey?(ir||(ir=[(q[0]+q[1])/2,(S[0]+S[1])/2]),dr[0]=q[+(Er[0]{(function(e,r){typeof uh=="object"&&typeof j4!="undefined"?r(uh):(e=e||self,r(e.d3=e.d3||{}))})(uh,function(e){"use strict";var r=new Date,t=new Date;function a(ie,_e,$e,hr){function Re(Ae){return ie(Ae=arguments.length===0?new Date:new Date(+Ae)),Ae}return Re.floor=function(Ae){return ie(Ae=new Date(+Ae)),Ae},Re.ceil=function(Ae){return ie(Ae=new Date(Ae-1)),_e(Ae,1),ie(Ae),Ae},Re.round=function(Ae){var Se=Re(Ae),Oe=Re.ceil(Ae);return Ae-Se0))return Je;do Je.push(We=new Date(+Ae)),_e(Ae,Oe),ie(Ae);while(We=Se)for(;ie(Se),!Ae(Se);)Se.setTime(Se-1)},function(Se,Oe){if(Se>=Se)if(Oe<0)for(;++Oe<=0;)for(;_e(Se,-1),!Ae(Se););else for(;--Oe>=0;)for(;_e(Se,1),!Ae(Se););})},$e&&(Re.count=function(Ae,Se){return r.setTime(+Ae),t.setTime(+Se),ie(r),ie(t),Math.floor($e(r,t))},Re.every=function(Ae){return Ae=Math.floor(Ae),!isFinite(Ae)||!(Ae>0)?null:Ae>1?Re.filter(hr?function(Se){return hr(Se)%Ae===0}:function(Se){return Re.count(0,Se)%Ae===0}):Re}),Re}var n=a(function(){},function(ie,_e){ie.setTime(+ie+_e)},function(ie,_e){return _e-ie});n.every=function(ie){return ie=Math.floor(ie),!isFinite(ie)||!(ie>0)?null:ie>1?a(function(_e){_e.setTime(Math.floor(_e/ie)*ie)},function(_e,$e){_e.setTime(+_e+$e*ie)},function(_e,$e){return($e-_e)/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,_e){ie.setTime(+ie+_e*l)},function(ie,_e){return(_e-ie)/l},function(ie){return ie.getUTCSeconds()}),h=c.range,d=a(function(ie){ie.setTime(ie-ie.getMilliseconds()-ie.getSeconds()*l)},function(ie,_e){ie.setTime(+ie+_e*o)},function(ie,_e){return(_e-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,_e){ie.setTime(+ie+_e*s)},function(ie,_e){return(_e-ie)/s},function(ie){return ie.getHours()}),m=y.range,b=a(function(ie){ie.setHours(0,0,0,0)},function(ie,_e){ie.setDate(ie.getDate()+_e)},function(ie,_e){return(_e-ie-(_e.getTimezoneOffset()-ie.getTimezoneOffset())*o)/u},function(ie){return ie.getDate()-1}),_=b.range;function w(ie){return a(function(_e){_e.setDate(_e.getDate()-(_e.getDay()+7-ie)%7),_e.setHours(0,0,0,0)},function(_e,$e){_e.setDate(_e.getDate()+$e*7)},function(_e,$e){return($e-_e-($e.getTimezoneOffset()-_e.getTimezoneOffset())*o)/f})}var x=w(0),M=w(1),k=w(2),A=w(3),C=w(4),D=w(5),E=w(6),R=x.range,N=M.range,I=k.range,H=A.range,G=C.range,W=D.range,V=E.range,O=a(function(ie){ie.setDate(1),ie.setHours(0,0,0,0)},function(ie,_e){ie.setMonth(ie.getMonth()+_e)},function(ie,_e){return _e.getMonth()-ie.getMonth()+(_e.getFullYear()-ie.getFullYear())*12},function(ie){return ie.getMonth()}),Y=O.range,Z=a(function(ie){ie.setMonth(0,1),ie.setHours(0,0,0,0)},function(ie,_e){ie.setFullYear(ie.getFullYear()+_e)},function(ie,_e){return _e.getFullYear()-ie.getFullYear()},function(ie){return ie.getFullYear()});Z.every=function(ie){return!isFinite(ie=Math.floor(ie))||!(ie>0)?null:a(function(_e){_e.setFullYear(Math.floor(_e.getFullYear()/ie)*ie),_e.setMonth(0,1),_e.setHours(0,0,0,0)},function(_e,$e){_e.setFullYear(_e.getFullYear()+$e*ie)})};var J=Z.range,ee=a(function(ie){ie.setUTCSeconds(0,0)},function(ie,_e){ie.setTime(+ie+_e*o)},function(ie,_e){return(_e-ie)/o},function(ie){return ie.getUTCMinutes()}),le=ee.range,ue=a(function(ie){ie.setUTCMinutes(0,0,0)},function(ie,_e){ie.setTime(+ie+_e*s)},function(ie,_e){return(_e-ie)/s},function(ie){return ie.getUTCHours()}),ve=ue.range,j=a(function(ie){ie.setUTCHours(0,0,0,0)},function(ie,_e){ie.setUTCDate(ie.getUTCDate()+_e)},function(ie,_e){return(_e-ie)/u},function(ie){return ie.getUTCDate()-1}),qe=j.range;function fe(ie){return a(function(_e){_e.setUTCDate(_e.getUTCDate()-(_e.getUTCDay()+7-ie)%7),_e.setUTCHours(0,0,0,0)},function(_e,$e){_e.setUTCDate(_e.getUTCDate()+$e*7)},function(_e,$e){return($e-_e)/f})}var be=fe(0),ce=fe(1),xe=fe(2),U=fe(3),Q=fe(4),X=fe(5),ge=fe(6),Te=be.range,ye=ce.range,ze=xe.range,Ie=U.range,Ee=Q.range,Fe=X.range,Be=ge.range,Ue=a(function(ie){ie.setUTCDate(1),ie.setUTCHours(0,0,0,0)},function(ie,_e){ie.setUTCMonth(ie.getUTCMonth()+_e)},function(ie,_e){return _e.getUTCMonth()-ie.getUTCMonth()+(_e.getUTCFullYear()-ie.getUTCFullYear())*12},function(ie){return ie.getUTCMonth()}),Le=Ue.range,He=a(function(ie){ie.setUTCMonth(0,1),ie.setUTCHours(0,0,0,0)},function(ie,_e){ie.setUTCFullYear(ie.getUTCFullYear()+_e)},function(ie,_e){return _e.getUTCFullYear()-ie.getUTCFullYear()},function(ie){return ie.getUTCFullYear()});He.every=function(ie){return!isFinite(ie=Math.floor(ie))||!(ie>0)?null:a(function(_e){_e.setUTCFullYear(Math.floor(_e.getUTCFullYear()/ie)*ie),_e.setUTCMonth(0,1),_e.setUTCHours(0,0,0,0)},function(_e,$e){_e.setUTCFullYear(_e.getUTCFullYear()+$e*ie)})};var Ye=He.range;e.timeDay=b,e.timeDays=_,e.timeFriday=D,e.timeFridays=W,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=N,e.timeMonth=O,e.timeMonths=Y,e.timeSaturday=E,e.timeSaturdays=V,e.timeSecond=c,e.timeSeconds=h,e.timeSunday=x,e.timeSundays=R,e.timeThursday=C,e.timeThursdays=G,e.timeTuesday=k,e.timeTuesdays=I,e.timeWednesday=A,e.timeWednesdays=H,e.timeWeek=x,e.timeWeeks=R,e.timeYear=Z,e.timeYears=J,e.utcDay=j,e.utcDays=qe,e.utcFriday=X,e.utcFridays=Fe,e.utcHour=ue,e.utcHours=ve,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=ee,e.utcMinutes=le,e.utcMonday=ce,e.utcMondays=ye,e.utcMonth=Ue,e.utcMonths=Le,e.utcSaturday=ge,e.utcSaturdays=Be,e.utcSecond=c,e.utcSeconds=h,e.utcSunday=be,e.utcSundays=Te,e.utcThursday=Q,e.utcThursdays=Ee,e.utcTuesday=xe,e.utcTuesdays=ze,e.utcWednesday=U,e.utcWednesdays=Ie,e.utcWeek=be,e.utcWeeks=Te,e.utcYear=He,e.utcYears=Ye,Object.defineProperty(e,"__esModule",{value:!0})})});var hu=B((fh,e6)=>{(function(e,r){typeof fh=="object"&&typeof e6!="undefined"?r(fh,Sy()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(fh,function(e,r){"use strict";function t(ne){if(0<=ne.y&&ne.y<100){var oe=new Date(-1,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L);return oe.setFullYear(ne.y),oe}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 oe=new Date(Date.UTC(-1,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L));return oe.setUTCFullYear(ne.y),oe}return new Date(Date.UTC(ne.y,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L))}function n(ne,oe,Ce){return{y:ne,m:oe,d:Ce,H:0,M:0,S:0,L:0}}function i(ne){var oe=ne.dateTime,Ce=ne.date,De=ne.time,ar=ne.periods,cr=ne.days,sr=ne.shortDays,Ar=ne.months,Br=ne.shortMonths,et=h(ar),ut=d(ar),kt=h(cr),_t=d(cr),Ht=h(sr),ra=d(sr),Ia=h(Ar),ma=d(Ar),ya=h(Br),vr=d(Br),ft={a:Do,A:Eo,b:Ll,B:E0,c:null,d:O,e:O,f:le,H:Y,I:Z,j:J,L:ee,m:ue,M:ve,p:P0,q:oc,Q:Se,s:Oe,S:j,u:qe,U:fe,V:be,w:ce,W:xe,x:null,X:null,y:U,Y:Q,Z:X,"%":Ae},$r={a:sc,A:uc,b:Ha,B:R0,c:null,d:ge,e:ge,f:Ee,H:Te,I:ye,j:ze,L:Ie,m:Fe,M:Be,p:nu,q:iu,Q:Se,s:Oe,S:Ue,u:Le,U:He,V:Ye,w:ie,W:_e,x:null,X:null,y:$e,Y:hr,Z:Re,"%":Ae},dt={a:Dn,A:ta,b:Ri,B:En,c:Pt,d:C,e:C,f:H,H:E,I:E,j:D,L:I,m:A,M:R,p:ga,q:k,Q:W,s:V,S:N,u:y,U:m,V:b,w:p,W:_,x:qt,X:xa,y:x,Y:w,Z:M,"%":G};ft.x=Et(Ce,ft),ft.X=Et(De,ft),ft.c=Et(oe,ft),$r.x=Et(Ce,$r),$r.X=Et(De,$r),$r.c=Et(oe,$r);function Et(yr,Wr){return function(rt){var or=[],ba=-1,ct=0,_a=yr.length,Nr,ii,Po;for(rt instanceof Date||(rt=new Date(+rt));++ba<_a;)yr.charCodeAt(ba)===37&&(or.push(yr.slice(ct,ba)),(ii=l[Nr=yr.charAt(++ba)])!=null?Nr=yr.charAt(++ba):ii=Nr==="e"?" ":"0",(Po=Wr[Nr])&&(Nr=Po(rt,ii)),or.push(Nr),ct=ba+1);return or.push(yr.slice(ct,ba)),or.join("")}}function Mt(yr,Wr){return function(rt){var or=n(1900,void 0,1),ba=jr(or,yr,rt+="",0),ct,_a;if(ba!=rt.length)return null;if("Q"in or)return new Date(or.Q);if("s"in or)return new Date(or.s*1e3+("L"in or?or.L:0));if(Wr&&!("Z"in or)&&(or.Z=0),"p"in or&&(or.H=or.H%12+or.p*12),or.m===void 0&&(or.m="q"in or?or.q:0),"V"in or){if(or.V<1||or.V>53)return null;"w"in or||(or.w=1),"Z"in or?(ct=a(n(or.y,0,1)),_a=ct.getUTCDay(),ct=_a>4||_a===0?r.utcMonday.ceil(ct):r.utcMonday(ct),ct=r.utcDay.offset(ct,(or.V-1)*7),or.y=ct.getUTCFullYear(),or.m=ct.getUTCMonth(),or.d=ct.getUTCDate()+(or.w+6)%7):(ct=t(n(or.y,0,1)),_a=ct.getDay(),ct=_a>4||_a===0?r.timeMonday.ceil(ct):r.timeMonday(ct),ct=r.timeDay.offset(ct,(or.V-1)*7),or.y=ct.getFullYear(),or.m=ct.getMonth(),or.d=ct.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),_a="Z"in or?a(n(or.y,0,1)).getUTCDay():t(n(or.y,0,1)).getDay(),or.m=0,or.d="W"in or?(or.w+6)%7+or.W*7-(_a+5)%7:or.w+or.U*7-(_a+6)%7);return"Z"in or?(or.H+=or.Z/100|0,or.M+=or.Z%100,a(or)):t(or)}}function jr(yr,Wr,rt,or){for(var ba=0,ct=Wr.length,_a=rt.length,Nr,ii;ba=_a)return-1;if(Nr=Wr.charCodeAt(ba++),Nr===37){if(Nr=Wr.charAt(ba++),ii=dt[Nr in l?Wr.charAt(ba++):Nr],!ii||(or=ii(yr,rt,or))<0)return-1}else if(Nr!=rt.charCodeAt(or++))return-1}return or}function ga(yr,Wr,rt){var or=et.exec(Wr.slice(rt));return or?(yr.p=ut[or[0].toLowerCase()],rt+or[0].length):-1}function Dn(yr,Wr,rt){var or=Ht.exec(Wr.slice(rt));return or?(yr.w=ra[or[0].toLowerCase()],rt+or[0].length):-1}function ta(yr,Wr,rt){var or=kt.exec(Wr.slice(rt));return or?(yr.w=_t[or[0].toLowerCase()],rt+or[0].length):-1}function Ri(yr,Wr,rt){var or=ya.exec(Wr.slice(rt));return or?(yr.m=vr[or[0].toLowerCase()],rt+or[0].length):-1}function En(yr,Wr,rt){var or=Ia.exec(Wr.slice(rt));return or?(yr.m=ma[or[0].toLowerCase()],rt+or[0].length):-1}function Pt(yr,Wr,rt){return jr(yr,oe,Wr,rt)}function qt(yr,Wr,rt){return jr(yr,Ce,Wr,rt)}function xa(yr,Wr,rt){return jr(yr,De,Wr,rt)}function Do(yr){return sr[yr.getDay()]}function Eo(yr){return cr[yr.getDay()]}function Ll(yr){return Br[yr.getMonth()]}function E0(yr){return Ar[yr.getMonth()]}function P0(yr){return ar[+(yr.getHours()>=12)]}function oc(yr){return 1+~~(yr.getMonth()/3)}function sc(yr){return sr[yr.getUTCDay()]}function uc(yr){return cr[yr.getUTCDay()]}function Ha(yr){return Br[yr.getUTCMonth()]}function R0(yr){return Ar[yr.getUTCMonth()]}function nu(yr){return ar[+(yr.getUTCHours()>=12)]}function iu(yr){return 1+~~(yr.getUTCMonth()/3)}return{format:function(yr){var Wr=Et(yr+="",ft);return Wr.toString=function(){return yr},Wr},parse:function(yr){var Wr=Mt(yr+="",!1);return Wr.toString=function(){return yr},Wr},utcFormat:function(yr){var Wr=Et(yr+="",$r);return Wr.toString=function(){return yr},Wr},utcParse:function(yr){var Wr=Mt(yr+="",!0);return Wr.toString=function(){return yr},Wr}}}var l={"-":"",_:" ",0:"0"},o=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(ne,oe,Ce){var De=ne<0?"-":"",ar=(De?-ne:ne)+"",cr=ar.length;return De+(cr68?1900:2e3),Ce+De[0].length):-1}function M(ne,oe,Ce){var De=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(oe.slice(Ce,Ce+6));return De?(ne.Z=De[1]?0:-(De[2]+(De[3]||"00")),Ce+De[0].length):-1}function k(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+1));return De?(ne.q=De[0]*3-3,Ce+De[0].length):-1}function A(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+2));return De?(ne.m=De[0]-1,Ce+De[0].length):-1}function C(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+2));return De?(ne.d=+De[0],Ce+De[0].length):-1}function D(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+3));return De?(ne.m=0,ne.d=+De[0],Ce+De[0].length):-1}function E(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+2));return De?(ne.H=+De[0],Ce+De[0].length):-1}function R(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+2));return De?(ne.M=+De[0],Ce+De[0].length):-1}function N(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+2));return De?(ne.S=+De[0],Ce+De[0].length):-1}function I(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+3));return De?(ne.L=+De[0],Ce+De[0].length):-1}function H(ne,oe,Ce){var De=o.exec(oe.slice(Ce,Ce+6));return De?(ne.L=Math.floor(De[0]/1e3),Ce+De[0].length):-1}function G(ne,oe,Ce){var De=s.exec(oe.slice(Ce,Ce+1));return De?Ce+De[0].length:-1}function W(ne,oe,Ce){var De=o.exec(oe.slice(Ce));return De?(ne.Q=+De[0],Ce+De[0].length):-1}function V(ne,oe,Ce){var De=o.exec(oe.slice(Ce));return De?(ne.s=+De[0],Ce+De[0].length):-1}function O(ne,oe){return f(ne.getDate(),oe,2)}function Y(ne,oe){return f(ne.getHours(),oe,2)}function Z(ne,oe){return f(ne.getHours()%12||12,oe,2)}function J(ne,oe){return f(1+r.timeDay.count(r.timeYear(ne),ne),oe,3)}function ee(ne,oe){return f(ne.getMilliseconds(),oe,3)}function le(ne,oe){return ee(ne,oe)+"000"}function ue(ne,oe){return f(ne.getMonth()+1,oe,2)}function ve(ne,oe){return f(ne.getMinutes(),oe,2)}function j(ne,oe){return f(ne.getSeconds(),oe,2)}function qe(ne){var oe=ne.getDay();return oe===0?7:oe}function fe(ne,oe){return f(r.timeSunday.count(r.timeYear(ne)-1,ne),oe,2)}function be(ne,oe){var Ce=ne.getDay();return ne=Ce>=4||Ce===0?r.timeThursday(ne):r.timeThursday.ceil(ne),f(r.timeThursday.count(r.timeYear(ne),ne)+(r.timeYear(ne).getDay()===4),oe,2)}function ce(ne){return ne.getDay()}function xe(ne,oe){return f(r.timeMonday.count(r.timeYear(ne)-1,ne),oe,2)}function U(ne,oe){return f(ne.getFullYear()%100,oe,2)}function Q(ne,oe){return f(ne.getFullYear()%1e4,oe,4)}function X(ne){var oe=ne.getTimezoneOffset();return(oe>0?"-":(oe*=-1,"+"))+f(oe/60|0,"0",2)+f(oe%60,"0",2)}function ge(ne,oe){return f(ne.getUTCDate(),oe,2)}function Te(ne,oe){return f(ne.getUTCHours(),oe,2)}function ye(ne,oe){return f(ne.getUTCHours()%12||12,oe,2)}function ze(ne,oe){return f(1+r.utcDay.count(r.utcYear(ne),ne),oe,3)}function Ie(ne,oe){return f(ne.getUTCMilliseconds(),oe,3)}function Ee(ne,oe){return Ie(ne,oe)+"000"}function Fe(ne,oe){return f(ne.getUTCMonth()+1,oe,2)}function Be(ne,oe){return f(ne.getUTCMinutes(),oe,2)}function Ue(ne,oe){return f(ne.getUTCSeconds(),oe,2)}function Le(ne){var oe=ne.getUTCDay();return oe===0?7:oe}function He(ne,oe){return f(r.utcSunday.count(r.utcYear(ne)-1,ne),oe,2)}function Ye(ne,oe){var Ce=ne.getUTCDay();return ne=Ce>=4||Ce===0?r.utcThursday(ne):r.utcThursday.ceil(ne),f(r.utcThursday.count(r.utcYear(ne),ne)+(r.utcYear(ne).getUTCDay()===4),oe,2)}function ie(ne){return ne.getUTCDay()}function _e(ne,oe){return f(r.utcMonday.count(r.utcYear(ne)-1,ne),oe,2)}function $e(ne,oe){return f(ne.getUTCFullYear()%100,oe,2)}function hr(ne,oe){return f(ne.getUTCFullYear()%1e4,oe,4)}function Re(){return"+0000"}function Ae(){return"%"}function Se(ne){return+ne}function Oe(ne){return Math.floor(+ne/1e3)}var Je;We({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 We(ne){return Je=i(ne),e.timeFormat=Je.format,e.timeParse=Je.parse,e.utcFormat=Je.utcFormat,e.utcParse=Je.utcParse,Je}var Xe="%Y-%m-%dT%H:%M:%S.%LZ";function lr(ne){return ne.toISOString()}var tr=Date.prototype.toISOString?lr:e.utcFormat(Xe);function Ke(ne){var oe=new Date(ne);return isNaN(oe)?null:oe}var Ne=+new Date("2000-01-01T00:00:00.000Z")?Ke:e.utcParse(Xe);e.isoFormat=tr,e.isoParse=Ne,e.timeFormatDefaultLocale=We,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var Cy=B((ch,r6)=>{(function(e,r){typeof ch=="object"&&typeof r6!="undefined"?r(ch):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(ch,function(e){"use strict";function r(A){return Math.abs(A=Math.round(A))>=1e21?A.toLocaleString("en").replace(/,/g,""):A.toString(10)}function t(A,C){if((D=(A=C?A.toExponential(C-1):A.toExponential()).indexOf("e"))<0)return null;var D,E=A.slice(0,D);return[E.length>1?E[0]+E.slice(2):E,+A.slice(D+1)]}function a(A){return A=t(Math.abs(A)),A?A[1]:NaN}function n(A,C){return function(D,E){for(var R=D.length,N=[],I=0,H=A[0],G=0;R>0&&H>0&&(G+H+1>E&&(H=Math.max(1,E-G)),N.push(D.substring(R-=H,R+H)),!((G+=H+1)>E));)H=A[I=(I+1)%A.length];return N.reverse().join(C)}}function i(A){return function(C){return C.replace(/[0-9]/g,function(D){return A[+D]})}}var l=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(A){if(!(C=l.exec(A)))throw new Error("invalid format: "+A);var C;return new s({fill:C[1],align:C[2],sign:C[3],symbol:C[4],zero:C[5],width:C[6],comma:C[7],precision:C[8]&&C[8].slice(1),trim:C[9],type:C[10]})}o.prototype=s.prototype;function s(A){this.fill=A.fill===void 0?" ":A.fill+"",this.align=A.align===void 0?">":A.align+"",this.sign=A.sign===void 0?"-":A.sign+"",this.symbol=A.symbol===void 0?"":A.symbol+"",this.zero=!!A.zero,this.width=A.width===void 0?void 0:+A.width,this.comma=!!A.comma,this.precision=A.precision===void 0?void 0:+A.precision,this.trim=!!A.trim,this.type=A.type===void 0?"":A.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(A){e:for(var C=A.length,D=1,E=-1,R;D0&&(E=0);break}return E>0?A.slice(0,E)+A.slice(R+1):A}var f;function c(A,C){var D=t(A,C);if(!D)return A+"";var E=D[0],R=D[1],N=R-(f=Math.max(-8,Math.min(8,Math.floor(R/3)))*3)+1,I=E.length;return N===I?E:N>I?E+new Array(N-I+1).join("0"):N>0?E.slice(0,N)+"."+E.slice(N):"0."+new Array(1-N).join("0")+t(A,Math.max(0,C+N-1))[0]}function h(A,C){var D=t(A,C);if(!D)return A+"";var E=D[0],R=D[1];return R<0?"0."+new Array(-R).join("0")+E:E.length>R+1?E.slice(0,R+1)+"."+E.slice(R+1):E+new Array(R-E.length+2).join("0")}var d={"%":function(A,C){return(A*100).toFixed(C)},b:function(A){return Math.round(A).toString(2)},c:function(A){return A+""},d:r,e:function(A,C){return A.toExponential(C)},f:function(A,C){return A.toFixed(C)},g:function(A,C){return A.toPrecision(C)},o:function(A){return Math.round(A).toString(8)},p:function(A,C){return h(A*100,C)},r:h,s:c,X:function(A){return Math.round(A).toString(16).toUpperCase()},x:function(A){return Math.round(A).toString(16)}};function p(A){return A}var y=Array.prototype.map,m=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function b(A){var C=A.grouping===void 0||A.thousands===void 0?p:n(y.call(A.grouping,Number),A.thousands+""),D=A.currency===void 0?"":A.currency[0]+"",E=A.currency===void 0?"":A.currency[1]+"",R=A.decimal===void 0?".":A.decimal+"",N=A.numerals===void 0?p:i(y.call(A.numerals,String)),I=A.percent===void 0?"%":A.percent+"",H=A.minus===void 0?"-":A.minus+"",G=A.nan===void 0?"NaN":A.nan+"";function W(O){O=o(O);var Y=O.fill,Z=O.align,J=O.sign,ee=O.symbol,le=O.zero,ue=O.width,ve=O.comma,j=O.precision,qe=O.trim,fe=O.type;fe==="n"?(ve=!0,fe="g"):d[fe]||(j===void 0&&(j=12),qe=!0,fe="g"),(le||Y==="0"&&Z==="=")&&(le=!0,Y="0",Z="=");var be=ee==="$"?D:ee==="#"&&/[boxX]/.test(fe)?"0"+fe.toLowerCase():"",ce=ee==="$"?E:/[%p]/.test(fe)?I:"",xe=d[fe],U=/[defgprs%]/.test(fe);j=j===void 0?6:/[gprs]/.test(fe)?Math.max(1,Math.min(21,j)):Math.max(0,Math.min(20,j));function Q(X){var ge=be,Te=ce,ye,ze,Ie;if(fe==="c")Te=xe(X)+Te,X="";else{X=+X;var Ee=X<0||1/X<0;if(X=isNaN(X)?G:xe(Math.abs(X),j),qe&&(X=u(X)),Ee&&+X==0&&J!=="+"&&(Ee=!1),ge=(Ee?J==="("?J:H:J==="-"||J==="("?"":J)+ge,Te=(fe==="s"?m[8+f/3]:"")+Te+(Ee&&J==="("?")":""),U){for(ye=-1,ze=X.length;++yeIe||Ie>57){Te=(Ie===46?R+X.slice(ye+1):X.slice(ye))+Te,X=X.slice(0,ye);break}}}ve&&!le&&(X=C(X,1/0));var Fe=ge.length+X.length+Te.length,Be=Fe>1)+ge+X+Te+Be.slice(Fe);break;default:X=Be+ge+X+Te;break}return N(X)}return Q.toString=function(){return O+""},Q}function V(O,Y){var Z=W((O=o(O),O.type="f",O)),J=Math.max(-8,Math.min(8,Math.floor(a(Y)/3)))*3,ee=Math.pow(10,-J),le=m[8+J/3];return function(ue){return Z(ee*ue)+le}}return{format:W,formatPrefix:V}}var _;w({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function w(A){return _=b(A),e.format=_.format,e.formatPrefix=_.formatPrefix,_}function x(A){return Math.max(0,-a(Math.abs(A)))}function M(A,C){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(C)/3)))*3-a(Math.abs(A)))}function k(A,C){return A=Math.abs(A),C=Math.abs(C)-A,Math.max(0,a(C)-a(A))+1}e.FormatSpecifier=s,e.formatDefaultLocale=w,e.formatLocale=b,e.formatSpecifier=o,e.precisionFixed=x,e.precisionPrefix=M,e.precisionRound=k,Object.defineProperty(e,"__esModule",{value:!0})})});var a6=B((ome,t6)=>{"use strict";t6.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((sme,n6)=>{"use strict";var dX=a6();n6.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&dX(t))return!1}else if(r!=="number")return!1;return e-e<1}});var wt=B((ume,i6)=>{"use strict";i6.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 Ly=B((vh,l6)=>{(function(e,r){typeof vh=="object"&&typeof l6!="undefined"?r(vh):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(vh,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 Pl=B((fme,o6)=>{"use strict";o6.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 yn=B(si=>{"use strict";var pX=Ly().decode,mX=Pl(),Dy=Array.isArray,yX=ArrayBuffer,gX=DataView;function s6(e){return yX.isView(e)&&!(e instanceof gX)}si.isTypedArray=s6;function hh(e){return Dy(e)||s6(e)}si.isArrayOrTypedArray=hh;function xX(e){return!hh(e[0])}si.isArray1D=xX;si.ensureArray=function(e,r){return Dy(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 Ey(e){return e.constructor===ArrayBuffer}si.isArrayBuffer=Ey;si.decodeTypedArraySpec=function(e){var r=[],t=bX(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;Ey(l)||(l=pX(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 f6=zr(),Ry=yn().isArrayOrTypedArray;d6.exports=function(r,t){if(f6(t))t=String(t);else if(typeof t!="string"||t.slice(-4)==="[-1]")throw"bad property string";var a=t.split("."),n,i,l,o;for(o=0;o{"use strict";var du=dh(),AX=/^\w*$/,kX=0,p6=1,ph=2,m6=3,Oo=4;y6.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,l,o,s={};t&&t.length?(o=du(r,t),l=o.get()):l=r,t=t||"";var u={};if(l)for(i=0;i2)return s[d]=s[d]|ph,c.set(h,null);if(f){for(i=d;i{"use strict";var qX=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,SX=/^[^\.\[\]]+$/;x6.exports=function(e,r){for(;r;){var t=e.match(qX);if(t)e=t[1];else if(e.match(SX))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 mh=B((pme,_6)=>{"use strict";var CX=zr();_6.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 CX(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var M6=B((mme,T6)=>{"use strict";var w6=yn().isArrayOrTypedArray,xc=Pl();T6.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(w6(n)&&w6(i)&&xc(n[0])){if(a==="customdata"||a==="ids")continue;for(var l=Math.min(n.length,i.length),o=0;o{"use strict";function LX(e,r){var t=e%r;return t<0?t+r:t}function DX(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}A6.exports={mod:LX,modHalf:DX}});var Nn=B((gme,yh)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,l=e.max,o=e.random;function s(U,Q){if(U=U||"",Q=Q||{},U instanceof s)return U;if(!(this instanceof s))return new s(U,Q);var X=u(U);this._originalInput=U,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=Q.format||X.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=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 U=this.toRgb();return(U.r*299+U.g*587+U.b*114)/1e3},getLuminance:function(){var U=this.toRgb(),Q,X,ge,Te,ye,ze;return Q=U.r/255,X=U.g/255,ge=U.b/255,Q<=.03928?Te=Q/12.92:Te=e.pow((Q+.055)/1.055,2.4),X<=.03928?ye=X/12.92:ye=e.pow((X+.055)/1.055,2.4),ge<=.03928?ze=ge/12.92:ze=e.pow((ge+.055)/1.055,2.4),.2126*Te+.7152*ye+.0722*ze},setAlpha:function(U){return this._a=O(U),this._roundA=n(100*this._a)/100,this},toHsv:function(){var U=d(this._r,this._g,this._b);return{h:U.h*360,s:U.s,v:U.v,a:this._a}},toHsvString:function(){var U=d(this._r,this._g,this._b),Q=n(U.h*360),X=n(U.s*100),ge=n(U.v*100);return this._a==1?"hsv("+Q+", "+X+"%, "+ge+"%)":"hsva("+Q+", "+X+"%, "+ge+"%, "+this._roundA+")"},toHsl:function(){var U=c(this._r,this._g,this._b);return{h:U.h*360,s:U.s,l:U.l,a:this._a}},toHslString:function(){var U=c(this._r,this._g,this._b),Q=n(U.h*360),X=n(U.s*100),ge=n(U.l*100);return this._a==1?"hsl("+Q+", "+X+"%, "+ge+"%)":"hsla("+Q+", "+X+"%, "+ge+"%, "+this._roundA+")"},toHex:function(U){return y(this._r,this._g,this._b,U)},toHexString:function(U){return"#"+this.toHex(U)},toHex8:function(U){return m(this._r,this._g,this._b,this._a,U)},toHex8String:function(U){return"#"+this.toHex8(U)},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(Y(this._r,255)*100)+"%",g:n(Y(this._g,255)*100)+"%",b:n(Y(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+n(Y(this._r,255)*100)+"%, "+n(Y(this._g,255)*100)+"%, "+n(Y(this._b,255)*100)+"%)":"rgba("+n(Y(this._r,255)*100)+"%, "+n(Y(this._g,255)*100)+"%, "+n(Y(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:W[y(this._r,this._g,this._b,!0)]||!1},toFilter:function(U){var Q="#"+b(this._r,this._g,this._b,this._a),X=Q,ge=this._gradientType?"GradientType = 1, ":"";if(U){var Te=s(U);X="#"+b(Te._r,Te._g,Te._b,Te._a)}return"progid:DXImageTransform.Microsoft.gradient("+ge+"startColorstr="+Q+",endColorstr="+X+")"},toString:function(U){var Q=!!U;U=U||this._format;var X=!1,ge=this._a<1&&this._a>=0,Te=!Q&&ge&&(U==="hex"||U==="hex6"||U==="hex3"||U==="hex4"||U==="hex8"||U==="name");return Te?U==="name"&&this._a===0?this.toName():this.toRgbString():(U==="rgb"&&(X=this.toRgbString()),U==="prgb"&&(X=this.toPercentageRgbString()),(U==="hex"||U==="hex6")&&(X=this.toHexString()),U==="hex3"&&(X=this.toHexString(!0)),U==="hex4"&&(X=this.toHex8String(!0)),U==="hex8"&&(X=this.toHex8String()),U==="name"&&(X=this.toName()),U==="hsl"&&(X=this.toHslString()),U==="hsv"&&(X=this.toHsvString()),X||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(U,Q){var X=U.apply(null,[this].concat([].slice.call(Q)));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(k,arguments)},darken:function(){return this._applyModification(A,arguments)},desaturate:function(){return this._applyModification(_,arguments)},saturate:function(){return this._applyModification(w,arguments)},greyscale:function(){return this._applyModification(x,arguments)},spin:function(){return this._applyModification(C,arguments)},_applyCombination:function(U,Q){return U.apply(null,[this].concat([].slice.call(Q)))},analogous:function(){return this._applyCombination(I,arguments)},complement:function(){return this._applyCombination(D,arguments)},monochromatic:function(){return this._applyCombination(H,arguments)},splitcomplement:function(){return this._applyCombination(N,arguments)},triad:function(){return this._applyCombination(E,arguments)},tetrad:function(){return this._applyCombination(R,arguments)}},s.fromRatio=function(U,Q){if(typeof U=="object"){var X={};for(var ge in U)U.hasOwnProperty(ge)&&(ge==="a"?X[ge]=U[ge]:X[ge]=ve(U[ge]));U=X}return s(U,Q)};function u(U){var Q={r:0,g:0,b:0},X=1,ge=null,Te=null,ye=null,ze=!1,Ie=!1;return typeof U=="string"&&(U=ce(U)),typeof U=="object"&&(be(U.r)&&be(U.g)&&be(U.b)?(Q=f(U.r,U.g,U.b),ze=!0,Ie=String(U.r).substr(-1)==="%"?"prgb":"rgb"):be(U.h)&&be(U.s)&&be(U.v)?(ge=ve(U.s),Te=ve(U.v),Q=p(U.h,ge,Te),ze=!0,Ie="hsv"):be(U.h)&&be(U.s)&&be(U.l)&&(ge=ve(U.s),ye=ve(U.l),Q=h(U.h,ge,ye),ze=!0,Ie="hsl"),U.hasOwnProperty("a")&&(X=U.a)),X=O(X),{ok:ze,format:U.format||Ie,r:i(255,l(Q.r,0)),g:i(255,l(Q.g,0)),b:i(255,l(Q.b,0)),a:X}}function f(U,Q,X){return{r:Y(U,255)*255,g:Y(Q,255)*255,b:Y(X,255)*255}}function c(U,Q,X){U=Y(U,255),Q=Y(Q,255),X=Y(X,255);var ge=l(U,Q,X),Te=i(U,Q,X),ye,ze,Ie=(ge+Te)/2;if(ge==Te)ye=ze=0;else{var Ee=ge-Te;switch(ze=Ie>.5?Ee/(2-ge-Te):Ee/(ge+Te),ge){case U:ye=(Q-X)/Ee+(Q1&&(Ue-=1),Ue<1/6?Fe+(Be-Fe)*6*Ue:Ue<1/2?Be:Ue<2/3?Fe+(Be-Fe)*(2/3-Ue)*6:Fe}if(Q===0)ge=Te=ye=X;else{var Ie=X<.5?X*(1+Q):X+Q-X*Q,Ee=2*X-Ie;ge=ze(Ee,Ie,U+1/3),Te=ze(Ee,Ie,U),ye=ze(Ee,Ie,U-1/3)}return{r:ge*255,g:Te*255,b:ye*255}}function d(U,Q,X){U=Y(U,255),Q=Y(Q,255),X=Y(X,255);var ge=l(U,Q,X),Te=i(U,Q,X),ye,ze,Ie=ge,Ee=ge-Te;if(ze=ge===0?0:Ee/ge,ge==Te)ye=0;else{switch(ge){case U:ye=(Q-X)/Ee+(Q>1)+720)%360;--Q;)ge.h=(ge.h+Te)%360,ye.push(s(ge));return ye}function H(U,Q){Q=Q||6;for(var X=s(U).toHsv(),ge=X.h,Te=X.s,ye=X.v,ze=[],Ie=1/Q;Q--;)ze.push(s({h:ge,s:Te,v:ye})),ye=(ye+Ie)%1;return ze}s.mix=function(U,Q,X){X=X===0?0:X||50;var ge=s(U).toRgb(),Te=s(Q).toRgb(),ye=X/100,ze={r:(Te.r-ge.r)*ye+ge.r,g:(Te.g-ge.g)*ye+ge.g,b:(Te.b-ge.b)*ye+ge.b,a:(Te.a-ge.a)*ye+ge.a};return s(ze)},s.readability=function(U,Q){var X=s(U),ge=s(Q);return(e.max(X.getLuminance(),ge.getLuminance())+.05)/(e.min(X.getLuminance(),ge.getLuminance())+.05)},s.isReadable=function(U,Q,X){var ge=s.readability(U,Q),Te,ye;switch(ye=!1,Te=xe(X),Te.level+Te.size){case"AAsmall":case"AAAlarge":ye=ge>=4.5;break;case"AAlarge":ye=ge>=3;break;case"AAAsmall":ye=ge>=7;break}return ye},s.mostReadable=function(U,Q,X){var ge=null,Te=0,ye,ze,Ie,Ee;X=X||{},ze=X.includeFallbackColors,Ie=X.level,Ee=X.size;for(var Fe=0;FeTe&&(Te=ye,ge=s(Q[Fe]));return s.isReadable(U,ge,{level:Ie,size:Ee})||!ze?ge:(X.includeFallbackColors=!1,s.mostReadable(U,["#fff","#000"],X))};var G=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=V(G);function V(U){var Q={};for(var X in U)U.hasOwnProperty(X)&&(Q[U[X]]=X);return Q}function O(U){return U=parseFloat(U),(isNaN(U)||U<0||U>1)&&(U=1),U}function Y(U,Q){ee(U)&&(U="100%");var X=le(U);return U=i(Q,l(0,parseFloat(U))),X&&(U=parseInt(U*Q,10)/100),e.abs(U-Q)<1e-6?1:U%Q/parseFloat(Q)}function Z(U){return i(1,l(0,U))}function J(U){return parseInt(U,16)}function ee(U){return typeof U=="string"&&U.indexOf(".")!=-1&&parseFloat(U)===1}function le(U){return typeof U=="string"&&U.indexOf("%")!=-1}function ue(U){return U.length==1?"0"+U:""+U}function ve(U){return U<=1&&(U=U*100+"%"),U}function j(U){return e.round(parseFloat(U)*255).toString(16)}function qe(U){return J(U)/255}var fe=function(){var U="[-\\+]?\\d+%?",Q="[-\\+]?\\d*\\.\\d+%?",X="(?:"+Q+")|(?:"+U+")",ge="[\\s|\\(]+("+X+")[,|\\s]+("+X+")[,|\\s]+("+X+")\\s*\\)?",Te="[\\s|\\(]+("+X+")[,|\\s]+("+X+")[,|\\s]+("+X+")[,|\\s]+("+X+")\\s*\\)?";return{CSS_UNIT:new RegExp(X),rgb:new RegExp("rgb"+ge),rgba:new RegExp("rgba"+Te),hsl:new RegExp("hsl"+ge),hsla:new RegExp("hsla"+Te),hsv:new RegExp("hsv"+ge),hsva:new RegExp("hsva"+Te),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(U){return!!fe.CSS_UNIT.exec(U)}function ce(U){U=U.replace(r,"").replace(t,"").toLowerCase();var Q=!1;if(G[U])U=G[U],Q=!0;else if(U=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var X;return(X=fe.rgb.exec(U))?{r:X[1],g:X[2],b:X[3]}:(X=fe.rgba.exec(U))?{r:X[1],g:X[2],b:X[3],a:X[4]}:(X=fe.hsl.exec(U))?{h:X[1],s:X[2],l:X[3]}:(X=fe.hsla.exec(U))?{h:X[1],s:X[2],l:X[3],a:X[4]}:(X=fe.hsv.exec(U))?{h:X[1],s:X[2],v:X[3]}:(X=fe.hsva.exec(U))?{h:X[1],s:X[2],v:X[3],a:X[4]}:(X=fe.hex8.exec(U))?{r:J(X[1]),g:J(X[2]),b:J(X[3]),a:qe(X[4]),format:Q?"name":"hex8"}:(X=fe.hex6.exec(U))?{r:J(X[1]),g:J(X[2]),b:J(X[3]),format:Q?"name":"hex"}:(X=fe.hex4.exec(U))?{r:J(X[1]+""+X[1]),g:J(X[2]+""+X[2]),b:J(X[3]+""+X[3]),a:qe(X[4]+""+X[4]),format:Q?"name":"hex8"}:(X=fe.hex3.exec(U))?{r:J(X[1]+""+X[1]),g:J(X[2]+""+X[2]),b:J(X[3]+""+X[3]),format:Q?"name":"hex"}:!1}function xe(U){var Q,X;return U=U||{level:"AA",size:"small"},Q=(U.level||"AA").toUpperCase(),X=(U.size||"small").toLowerCase(),Q!=="AA"&&Q!=="AAA"&&(Q="AA"),X!=="small"&&X!=="large"&&(X="small"),{level:Q,size:X}}typeof yh!="undefined"&&yh.exports?yh.exports=s:window.tinycolor=s})(Math)});var mt=B(wc=>{"use strict";var k6=Pl(),bc=Array.isArray;function EX(e,r){var t,a;for(t=0;t{"use strict";q6.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 Tc=B((_me,S6)=>{"use strict";S6.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var mu=B((wme,D6)=>{"use strict";var C6=Tc(),L6=aa(),zy=L6({editType:"none"});zy.family.dflt=C6.HOVERFONT;zy.size.dflt=C6.HOVERFONTSIZE;D6.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:zy,grouptitlefont:L6({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var kc=B((Tme,E6)=>{"use strict";var PX=aa(),Mc=mu().hoverlabel,Ac=mt().extendFlat;E6.exports={hoverlabel:{bgcolor:Ac({},Mc.bgcolor,{arrayOk:!0}),bordercolor:Ac({},Mc.bordercolor,{arrayOk:!0}),font:PX({arrayOk:!0,editType:"none"}),align:Ac({},Mc.align,{arrayOk:!0}),namelength:Ac({},Mc.namelength,{arrayOk:!0}),showarrow:Ac({},Mc.showarrow),editType:"none"}}});var tn=B((Mme,P6)=>{"use strict";var RX=aa(),zX=kc();P6.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:RX({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:zX.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 Bo=B((Ame,N6)=>{"use strict";var NX=Nn(),gh={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)"]]},R6=gh.RdBu;function FX(e,r){if(r||(r=R6),!e)return r;function t(){try{e=gh[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),z6(e)?e:r}function z6(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";Yo.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];Yo.defaultLine="#444";Yo.lightLine="#eee";Yo.background="#fff";Yo.borderLine="#BEC8D9";Yo.lightFraction=100*10/11});var xr=B((qme,F6)=>{"use strict";var an=Nn(),HX=zr(),OX=yn().isTypedArray,na=F6.exports={},xh=Fn();na.defaults=xh.defaults;var BX=na.defaultLine=xh.defaultLine;na.lightLine=xh.lightLine;var Fy=na.background=xh.background;na.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};na.rgb=function(e){return na.tinyRGB(an(e))};na.opacity=function(e){return e?an(e).getAlpha():0};na.addOpacity=function(e,r){var t=an(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};na.combine=function(e,r){var t=an(e).toRgb();if(t.a===1)return an(e).toRgbString();var a=an(r||Fy).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()};na.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()};na.contrast=function(e,r,t){var a=an(e);a.getAlpha()!==1&&(a=an(na.combine(e,Fy)));var n=a.isDark()?r?a.lighten(r):Fy:t?a.darken(t):BX;return n.toString()};na.stroke=function(e,r){var t=an(r);e.style({stroke:na.tinyRGB(t),"stroke-opacity":t.getAlpha()})};na.fill=function(e,r){var t=an(r);e.style({fill:na.tinyRGB(t),"fill-opacity":t.getAlpha()})};na.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 yu=B((Sme,I6)=>{"use strict";I6.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var gu=B(H6=>{"use strict";H6.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 V6=B(nn=>{"use strict";var Iy=zr(),O6=Nn(),B6=mt().extendFlat,YX=tn(),VX=Bo(),GX=xr(),UX=yu().DESELECTDIM,xu=dh(),Y6=gu().counter,WX=pu().modHalf,ui=yn().isArrayOrTypedArray,Rl=yn().isTypedArraySpec,zl=yn().decodeTypedArraySpec;nn.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(ui(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;ai===!0||i===!1;n(e)||a.arrayOk&&Array.isArray(e)&&e.length>0&&e.every(n)?r.set(e):r.set(t)}},number:{coerceFunction:function(e,r,t,a){Rl(e)&&(e=zl(e)),!Iy(e)||a.min!==void 0&&ea.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||!Iy(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)),O6(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return O6(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(VX.get(e,t))}},angle:{coerceFunction:function(e,r,t){Rl(e)&&(e=zl(e)),e==="auto"?r.set("auto"):Iy(e)?r.set(WX(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||Y6(t);let i=l=>typeof l=="string"&&n.test(l);i(e)||a.arrayOk&&ui(e)&&e.length>0&&e.every(i)?r.set(e):r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!Y6(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 G6={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/un/"},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:{}}},U6={};function W6(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),W6(a,r[t]))}}W6(G6,U6);X6.exports={configAttributes:G6,dfltConfig:U6}});var Oy=B((Eme,Z6)=>{"use strict";var Hy=kr(),XX=zr(),qc=[];Z6.exports=function(e,r){if(qc.indexOf(e)!==-1)return;qc.push(e);var t=1e3;XX(r)?t=r:r==="long"&&(t=3e3);var a=Hy.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(qc);function i(l){l.duration(700).style("opacity",0).each("end",function(o){var s=qc.indexOf(o);s!==-1&&qc.splice(s,1),Hy.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(l){var o=Hy.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 bu=Vo().dfltConfig,By=Oy(),Yy=J6.exports={};Yy.log=function(){var e;if(bu.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};Yy.warn=function(){var e;if(bu.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};Yy.error=function(){var e;if(bu.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var _h=B((Rme,$6)=>{"use strict";$6.exports=function(){}});var Vy=B((zme,K6)=>{"use strict";K6.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{Q6.exports=ZX;function ZX(){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 r7=B((Fme,e7)=>{e7.exports=JX;function JX(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 a7=B((Ime,t7)=>{t7.exports=$X;function $X(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 Gy=B((Hme,n7)=>{n7.exports=KX;function KX(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 l7=B((Ome,i7)=>{i7.exports=QX;function QX(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 s7=B((Bme,o7)=>{o7.exports=jX;function jX(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,w=t*s-n*l,x=t*u-i*l,M=a*s-n*o,k=a*u-i*o,A=n*u-i*s,C=f*y-c*p,D=f*m-h*p,E=f*b-d*p,R=c*m-h*y,N=c*b-d*y,I=h*b-d*m,H=_*I-w*N+x*R+M*E-k*D+A*C;return H?(H=1/H,e[0]=(o*I-s*N+u*R)*H,e[1]=(n*N-a*I-i*R)*H,e[2]=(y*A-m*k+b*M)*H,e[3]=(h*k-c*A-d*M)*H,e[4]=(s*E-l*I-u*D)*H,e[5]=(t*I-n*E+i*D)*H,e[6]=(m*x-p*A-b*w)*H,e[7]=(f*A-h*x+d*w)*H,e[8]=(l*N-o*E+u*C)*H,e[9]=(a*E-t*N-i*C)*H,e[10]=(p*k-y*x+b*_)*H,e[11]=(c*x-f*k-d*_)*H,e[12]=(o*D-l*R-s*C)*H,e[13]=(t*R-a*D+n*C)*H,e[14]=(y*w-p*M-m*_)*H,e[15]=(f*M-c*w+h*_)*H,e):null}});var f7=B((Yme,u7)=>{u7.exports=eZ;function eZ(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 v7=B((Vme,c7)=>{c7.exports=rZ;function rZ(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,w=r*s-n*i,x=t*o-a*l,M=t*s-n*l,k=a*s-n*o,A=u*p-f*d,C=u*y-c*d,D=u*m-h*d,E=f*y-c*p,R=f*m-h*p,N=c*m-h*y;return b*N-_*R+w*E+x*D-M*C+k*A}});var d7=B((Gme,h7)=>{h7.exports=tZ;function tZ(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],w=t[0],x=t[1],M=t[2],k=t[3];return e[0]=w*a+x*o+M*c+k*y,e[1]=w*n+x*s+M*h+k*m,e[2]=w*i+x*u+M*d+k*b,e[3]=w*l+x*f+M*p+k*_,w=t[4],x=t[5],M=t[6],k=t[7],e[4]=w*a+x*o+M*c+k*y,e[5]=w*n+x*s+M*h+k*m,e[6]=w*i+x*u+M*d+k*b,e[7]=w*l+x*f+M*p+k*_,w=t[8],x=t[9],M=t[10],k=t[11],e[8]=w*a+x*o+M*c+k*y,e[9]=w*n+x*s+M*h+k*m,e[10]=w*i+x*u+M*d+k*b,e[11]=w*l+x*f+M*p+k*_,w=t[12],x=t[13],M=t[14],k=t[15],e[12]=w*a+x*o+M*c+k*y,e[13]=w*n+x*s+M*h+k*m,e[14]=w*i+x*u+M*d+k*b,e[15]=w*l+x*f+M*p+k*_,e}});var m7=B((Ume,p7)=>{p7.exports=aZ;function aZ(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 g7=B((Wme,y7)=>{y7.exports=nZ;function nZ(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 b7=B((Xme,x7)=>{x7.exports=iZ;function iZ(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,_,w,x,M,k,A,C,D,E,R,N,I,H,G;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],w=r[8],x=r[9],M=r[10],k=r[11],A=n*n*f+u,C=i*n*f+l*s,D=l*n*f-i*s,E=n*i*f-l*s,R=i*i*f+u,N=l*i*f+n*s,I=n*l*f+i*s,H=i*l*f-n*s,G=l*l*f+u,e[0]=c*A+y*C+w*D,e[1]=h*A+m*C+x*D,e[2]=d*A+b*C+M*D,e[3]=p*A+_*C+k*D,e[4]=c*E+y*R+w*N,e[5]=h*E+m*R+x*N,e[6]=d*E+b*R+M*N,e[7]=p*E+_*R+k*N,e[8]=c*I+y*H+w*G,e[9]=h*I+m*H+x*G,e[10]=d*I+b*H+M*G,e[11]=p*I+_*H+k*G,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var w7=B((Zme,_7)=>{_7.exports=lZ;function lZ(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 M7=B((Jme,T7)=>{T7.exports=oZ;function oZ(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 k7=B(($me,A7)=>{A7.exports=sZ;function sZ(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 S7=B((Kme,q7)=>{q7.exports=uZ;function uZ(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 L7=B((Qme,C7)=>{C7.exports=fZ;function fZ(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 E7=B((jme,D7)=>{D7.exports=cZ;function cZ(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 R7=B((eye,P7)=>{P7.exports=vZ;function vZ(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 N7=B((rye,z7)=>{z7.exports=hZ;function hZ(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 I7=B((tye,F7)=>{F7.exports=dZ;function dZ(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 O7=B((aye,H7)=>{H7.exports=pZ;function pZ(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 Y7=B((nye,B7)=>{B7.exports=mZ;function mZ(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 G7=B((iye,V7)=>{V7.exports=yZ;function yZ(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 W7=B((lye,U7)=>{U7.exports=gZ;function gZ(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 Z7=B((oye,X7)=>{X7.exports=xZ;function xZ(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 $7=B((sye,J7)=>{J7.exports=bZ;function bZ(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 Q7=B((uye,K7)=>{var _Z=Gy();K7.exports=wZ;function wZ(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],w=a[2],x=t[0],M=t[1],k=t[2];return Math.abs(p-x)<1e-6&&Math.abs(y-M)<1e-6&&Math.abs(m-k)<1e-6?_Z(e):(f=p-x,c=y-M,h=m-k,d=1/Math.sqrt(f*f+c*c+h*h),f*=d,c*=d,h*=d,n=_*h-w*c,i=w*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 ew=B((fye,j7)=>{j7.exports=TZ;function TZ(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 Uy=B((cye,rw)=>{rw.exports={create:j6(),clone:r7(),copy:a7(),identity:Gy(),transpose:l7(),invert:s7(),adjoint:f7(),determinant:v7(),multiply:d7(),translate:m7(),scale:g7(),rotate:b7(),rotateX:w7(),rotateY:M7(),rotateZ:k7(),fromRotation:S7(),fromRotationTranslation:L7(),fromScaling:E7(),fromTranslation:R7(),fromXRotation:N7(),fromYRotation:I7(),fromZRotation:O7(),fromQuat:Y7(),frustum:G7(),perspective:W7(),perspectiveFromFieldOfView:Z7(),ortho:$7(),lookAt:Q7(),str:ew()}});var wh=B(Bt=>{"use strict";var MZ=Uy();Bt.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var AZ=kr(),tw=Go(),kZ=wh(),qZ=Uy();function SZ(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 CZ(e){var r=AZ.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function aw(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function LZ(e,r){nw("global",e,r)}function nw(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):tw.warn("addStyleRule failed"):tw.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function DZ(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&aw(t)}function EZ(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 PZ(e){var r=lw(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=iw(a);if(n){var i=kZ.convertCssMatrix(n);t=qZ.multiply(t,t,i)}}),t}function iw(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 lw(e){for(var r=[];RZ(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function RZ(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function zZ(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}ow.exports={getGraphDiv:SZ,isPlotDiv:CZ,removeElement:aw,addStyleRule:LZ,addRelatedStyleRule:nw,deleteRelatedStyleRule:DZ,setStyleOnHover:EZ,getFullTransformMatrix:PZ,getElementTransformMatrix:iw,getElementAndAncestors:lw,equalDomRects:zZ}});var Cc=B((dye,sw)=>{"use strict";sw.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 fi=B((pye,pw)=>{"use strict";var fw=mt().extendFlat,NZ=Pl(),cw={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},vw={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},FZ=cw.flags.slice().concat(["fullReplot"]),IZ=vw.flags.slice().concat("layoutReplot");pw.exports={traces:cw,layout:vw,traceFlags:function(){return uw(FZ)},layoutFlags:function(){return uw(IZ)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";Wy.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};Wy.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 Xy=B((yye,mw)=>{"use strict";mw.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 gn=B(_u=>{"use strict";var{DATE_FORMAT_LINK:HZ,FORMAT_LINK:OZ}=Xy(),BZ=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function YZ({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,OZ,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,HZ,"for details on the date formatting syntax.",BZ].join(" ")}_u.templateFormatStringDescription=YZ;_u.hovertemplateAttrs=({editType:e="none",arrayOk:r}={},t={})=>Ho({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});_u.texttemplateAttrs=({editType:e="calc",arrayOk:r}={},t={})=>Ho({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});_u.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:r}={},t={})=>({valType:"string",dflt:"",editType:e});_u.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var Ah=B((bye,ww)=>{"use strict";function Nl(e,r){return r?r.d2l(e):e}function yw(e,r){return r?r.l2d(e):e}function VZ(e){return e.x0}function GZ(e){return e.x1}function UZ(e){return e.y0}function WZ(e){return e.y1}function gw(e){return e.x0shift||0}function xw(e){return e.x1shift||0}function bw(e){return e.y0shift||0}function _w(e){return e.y1shift||0}function Th(e,r){return Nl(e.x1,r)+xw(e)-Nl(e.x0,r)-gw(e)}function Mh(e,r,t){return Nl(e.y1,t)+_w(e)-Nl(e.y0,t)-bw(e)}function XZ(e,r){return Math.abs(Th(e,r))}function ZZ(e,r,t){return Math.abs(Mh(e,r,t))}function JZ(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(Th(e,r),2)+Math.pow(Mh(e,r,t),2))}function $Z(e,r){return yw((Nl(e.x1,r)+xw(e)+Nl(e.x0,r)+gw(e))/2,r)}function KZ(e,r,t){return yw((Nl(e.y1,t)+_w(e)+Nl(e.y0,t)+bw(e))/2,t)}function QZ(e,r,t){return e.type!=="line"?void 0:Mh(e,r,t)/Th(e,r)}ww.exports={x0:VZ,x1:GZ,y0:UZ,y1:WZ,slope:QZ,dx:Th,dy:Mh,width:XZ,height:ZZ,length:JZ,xcenter:$Z,ycenter:KZ}});var Aw=B((_ye,Mw)=>{"use strict";var jZ=fi().overrideAll,Uo=tn(),Tw=aa(),eJ=ci().dash,Fl=mt().extendFlat,{shapeTexttemplateAttrs:rJ,templatefallbackAttrs:tJ}=gn(),aJ=Ah();Mw.exports=jZ({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:Tw({})},legendrank:Fl({},Uo.legendrank,{}),legendwidth:Fl({},Uo.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Fl({},eJ,{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:rJ({newshape:!0},{keys:Object.keys(aJ)}),texttemplatefallback:tJ({editType:"arraydraw"}),font:Tw({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var qw=B((wye,kw)=>{"use strict";var nJ=ci().dash,iJ=mt().extendFlat;kw.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:iJ({},nJ,{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 kh=B((Tye,Sw)=>{"use strict";Sw.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 wu=B((Mye,Ew)=>{"use strict";var Zy=aa(),lJ=Cc(),qh=Fn(),Cw=Aw(),Lw=qw(),oJ=kh(),Dw=mt().extendFlat,Sh=Zy({editType:"calc"});Sh.family.dflt='"Open Sans", verdana, arial, sans-serif';Sh.size.dflt=12;Sh.color.dflt=qh.defaultLine;Ew.exports={font:Sh,title:{text:{valType:"string",editType:"layoutstyle"},font:Zy({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:Zy({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:Dw(oJ({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:qh.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:qh.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:qh.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:Cw.newshape,activeshape:Cw.activeshape,newselection:Lw.newselection,activeselection:Lw.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:Dw({},lJ.transition,{editType:"none"})}});var Pw=B(()=>{(function(){if(!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")){var e=document.createElement("style");e.id="696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var gr=B(Fr=>{"use strict";var Tu=Go(),Rw=_h(),zw=Vy(),sJ=Pl(),uJ=Sc().addStyleRule,Nw=mt(),fJ=tn(),cJ=wu(),vJ=Nw.extendFlat,Jy=Nw.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 gJ=hu().timeFormat,Xw=zr(),$y=Go(),Hl=pu().mod,ku=wt(),In=ku.BADNUM,ln=ku.ONEDAY,Lc=ku.ONEHOUR,Il=ku.ONEMIN,Au=ku.ONESEC,Dc=ku.EPOCHJD,il=gr(),Bw=hu().utcFormat,xJ=/^\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,bJ=/^\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,Yw=new Date().getFullYear()-70;function ll(e){return e&&il.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Yt.dateTick0=function(e,r){var t=_J(e,!!r);if(r<2)return t;var a=Yt.dateTime2ms(t,e);return a+=ln*(r-1),Yt.ms2DateTime(a,0,e)};function _J(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"}Yt.dfltRange=function(e){return ll(e)?il.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Yt.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Lh,Dh;Yt.dateTime2ms=function(e,r){if(Yt.isJSDate(e)){var t=e.getTimezoneOffset()*Il,a=(e.getUTCMinutes()-e.getMinutes())*Il+(e.getUTCSeconds()-e.getSeconds())*Au+(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>=Lh&&e<=Dh?e:In}if(typeof e!="string"&&typeof e!="number")return In;e=String(e);var i=ll(r),l=e.charAt(0);i&&(l==="G"||l==="g")&&(e=e.slice(1),r="");var o=i&&r.slice(0,7)==="chinese",s=e.match(o?bJ:xJ);if(!s)return In;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 In;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(w){return In}return y?(y.toJD()-Dc)*ln+h*Lc+d*Il+p*Au:In}u.length===2?u=(Number(u)+2e3-Yw)%100+Yw:u=Number(u),f-=1;var _=new Date(Date.UTC(2e3,f,c,h,d));return _.setUTCFullYear(u),_.getUTCMonth()!==f||_.getUTCDate()!==c?In:_.getTime()+p*Au};Lh=Yt.MIN_MS=Yt.dateTime2ms("-9999");Dh=Yt.MAX_MS=Yt.dateTime2ms("9999-12-31 23:59:59.9999");Yt.isDateTime=function(e,r){return Yt.dateTime2ms(e,r)!==In};function Mu(e,r){return String(e+Math.pow(10,r)).slice(1)}var Ch=90*ln,Vw=3*Lc,Gw=5*Il;Yt.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Lh&&e<=Dh))return In;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)+Dc,h=Math.floor(Hl(e,ln));try{i=il.getComponentMethod("calendars","getCal")(t).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){i=Bw("G%Y-%m-%d")(new Date(n))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.slice(1);else for(;i.length<10;)i="0"+i;l=r=Lh+ln&&e<=Dh-ln))return In;var r=Math.floor(Hl(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=gJ("%Y-%m-%d")(t),n=t.getHours(),i=t.getMinutes(),l=t.getSeconds(),o=t.getUTCMilliseconds()*10+r;return Zw(a,n,i,l,o)};function Zw(e,r,t,a,n){if((r||t||a||n)&&(e+=" "+Mu(r,2)+":"+Mu(t,2),(a||n)&&(e+=":"+Mu(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+Mu(n,i)}return e}Yt.cleanDate=function(e,r,t){if(e===In)return r;if(Yt.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(ll(t))return $y.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=Yt.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!Yt.isDateTime(e,t))return $y.error("unrecognized date",e),r;return e};var wJ=/%\d?f/g,TJ=/%h/g,MJ={1:"1",2:"1",3:"2",4:"2"};function Uw(e,r,t,a){e=e.replace(wJ,function(i){var l=Math.min(+i.charAt(1)||6,6),o=(r/1e3%1+2).toFixed(l).slice(2).replace(/0+$/,"")||"0";return o});var n=new Date(Math.floor(r+.05));if(e=e.replace(TJ,function(){return MJ[t("%q")(n)]}),ll(a))try{e=il.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var AJ=[59,59.9,59.99,59.999,59.9999];function kJ(e,r){var t=Hl(e+.05,ln),a=Mu(Math.floor(t/Lc),2)+":"+Mu(Hl(Math.floor(t/Il),60),2);if(r!=="M"){Xw(r)||(r=0);var n=Math.min(Hl(e/Au,60),AJ[r]),i=(100+n).toFixed(r).slice(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}Yt.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+` +`+i.year;else return kJ(e,t)+` +`+Uw(i.dayMonthYear,e,a,n);return Uw(r,e,a,n)};var Ww=3*ln;Yt.incrementMonth=function(e,r,t){t=ll(t)&&t;var a=Hl(e,ln);if(e=Math.round(e-a),t)try{var n=Math.round(e/ln)+Dc,i=il.getComponentMethod("calendars","getCal")(t),l=i.fromJD(n);return r%12?i.add(l,r,"m"):i.add(l,r/12,"y"),(l.toJD()-Dc)*ln+a}catch(s){$y.error("invalid ms "+e+" in calendar "+t)}var o=new Date(e+Ww);return o.setUTCMonth(o.getUTCMonth()+r)+a-Ww};Yt.findExactDates=function(e,r){for(var t=0,a=0,n=0,i=0,l,o,s=ll(r)&&il.getComponentMethod("calendars","getCal")(r),u=0;u{"use strict";$w.exports=function(r){return r}});var jy=B(ol=>{"use strict";var qJ=zr(),SJ=Go(),CJ=Ky(),LJ=wt().BADNUM,Qy=1e-9;ol.findBin=function(e,r,t){if(qJ(r.start))return t?Math.ceil((e-r.start)/r.size-Qy)-1:Math.floor((e-r.start)/r.size+Qy);var a=0,n=r.length,i=0,l=n>1?(r[n-1]-r[0])/(n-1):1,o,s;for(l>=0?s=t?DJ:EJ:s=t?RJ:PJ,e+=l*Qy*(t?-1:1)*(l>=0?1:-1);a90&&SJ.log("Long binary search..."),a-1};function DJ(e,r){return er}function RJ(e,r){return e>=r}ol.sorterAsc=function(e,r){return e-r};ol.sorterDes=function(e,r){return r-e};ol.distinctVals=function(e){var r=e.slice();r.sort(ol.sorterAsc);var t;for(t=r.length-1;t>-1&&r[t]===LJ;t--);for(var a=r[t]-r[0]||1,n=a/(t||1)/1e4,i=[],l,o=0;o<=t;o++){var s=r[o],u=s-l;l===void 0?(i.push(s),l=s):u>n&&(a=Math.min(a,u),i.push(s),l=s)}return{vals:i,minDiff:a}};ol.roundUp=function(e,r,t){for(var a=0,n=r.length-1,i,l=0,o=t?0:1,s=t?1:0,u=t?Math.ceil:Math.floor;a0&&(a=1),t&&a)return e.sort(r)}return a?e:e.reverse()};ol.findIndexOfMin=function(e,r){r=r||CJ;for(var t=1/0,a,n=0;n{"use strict";Kw.exports=function(r){return Object.keys(r).sort()}});var Qw=B(Vt=>{"use strict";var Ec=zr(),zJ=yn().isArrayOrTypedArray;Vt.aggNums=function(e,r,t,a){var n,i;if((!a||a>t.length)&&(a=t.length),Ec(r)||(r=!1),zJ(t[0])){for(i=new Array(a),n=0;ne.length-1)return e[e.length-1];var t=r%1;return t*e[Math.ceil(r)]+(1-t)*e[Math.floor(r)]}});var a8=B((Pye,t8)=>{"use strict";var jw=pu(),rg=jw.mod,NJ=jw.modHalf,Pc=Math.PI,Ol=2*Pc;function FJ(e){return e/180*Pc}function IJ(e){return e/Pc*180}function tg(e){return Math.abs(e[1]-e[0])>Ol-1e-14}function e8(e,r){return NJ(r-e,Ol)}function HJ(e,r){return Math.abs(e8(e,r))}function r8(e,r){if(tg(r))return!0;var t,a;r[0]a&&(a+=Ol);var n=rg(e,Ol),i=n+Ol;return n>=t&&n<=a||i>=t&&i<=a}function OJ(e,r,t,a){if(!r8(r,a))return!1;var n,i;return t[0]=n&&e<=i}function ag(e,r,t,a,n,i,l){n=n||0,i=i||0;var o=tg([t,a]),s,u,f,c,h;o?(s=0,u=Pc,f=Ol):t{"use strict";Wo.isLeftAnchor=function(r){return r.xanchor==="left"||r.xanchor==="auto"&&r.x<=1/3};Wo.isCenterAnchor=function(r){return r.xanchor==="center"||r.xanchor==="auto"&&r.x>1/3&&r.x<2/3};Wo.isRightAnchor=function(r){return r.xanchor==="right"||r.xanchor==="auto"&&r.x>=2/3};Wo.isTopAnchor=function(r){return r.yanchor==="top"||r.yanchor==="auto"&&r.y>=2/3};Wo.isMiddleAnchor=function(r){return r.yanchor==="middle"||r.yanchor==="auto"&&r.y>1/3&&r.y<2/3};Wo.isBottomAnchor=function(r){return r.yanchor==="bottom"||r.yanchor==="auto"&&r.y<=1/3}});var o8=B(Xo=>{"use strict";var ng=pu().mod;Xo.segmentsIntersect=l8;function l8(e,r,t,a,n,i,l,o){var s=t-e,u=n-e,f=l-n,c=a-r,h=i-r,d=o-i,p=s*d-f*c;if(p===0)return null;var y=(u*d-f*h)/p,m=(u*c-s*h)/p;return m<0||m>1||y<0||y>1?null:{x:e+s*y,y:r+c*y}}Xo.segmentDistance=function(r,t,a,n,i,l,o,s){if(l8(r,t,a,n,i,l,o,s))return 0;var u=a-r,f=n-t,c=o-i,h=s-l,d=u*u+f*f,p=c*c+h*h,y=Math.min(Eh(u,f,d,i-r,l-t),Eh(u,f,d,o-r,s-t),Eh(c,h,p,r-i,t-l),Eh(c,h,p,a-i,n-l));return Math.sqrt(y)};function Eh(e,r,t,a,n){var i=a*e+n*r;if(i<0)return a*a+n*n;if(i>t){var l=a-e,o=n-r;return l*l+o*o}else{var s=a*r-n*e;return s*s/t}}var Ph,ig,i8;Xo.getTextLocation=function(r,t,a,n){if((r!==ig||n!==i8)&&(Ph={},ig=r,i8=n),Ph[a])return Ph[a];var i=r.getPointAtLength(ng(a-n/2,t)),l=r.getPointAtLength(ng(a+n/2,t)),o=Math.atan((l.y-i.y)/(l.x-i.x)),s=r.getPointAtLength(ng(a,t)),u=(s.x*4+i.x+l.x)/6,f=(s.y*4+i.y+l.y)/6,c={x:u,y:f,theta:o};return Ph[a]=c,c};Xo.clearLocationCache=function(){ig=null};Xo.getVisibleSegment=function(r,t,a){var n=t.left,i=t.right,l=t.top,o=t.bottom,s=0,u=r.getTotalLength(),f=u,c,h;function d(y){var m=r.getPointAtLength(y);y===0?c=m:y===u&&(h=m);var b=m.xi?m.x-i:0,_=m.yo?m.y-o:0;return Math.sqrt(b*b+_*_)}for(var p=d(s);p;){if(s+=p+a,s>f)return;p=d(s)}for(p=d(f);p;){if(f-=p+a,s>f)return;p=d(f)}return{min:s,max:f,len:f-s,total:u,isClosed:s===0&&f===u&&Math.abs(c.x-h.x)<.1&&Math.abs(c.y-h.y)<.1}};Xo.findPointOnPath=function(r,t,a,n){n=n||{};for(var i=n.pathLength||r.getTotalLength(),l=n.tolerance||.001,o=n.iterationLimit||30,s=r.getPointAtLength(0)[a]>r.getPointAtLength(i)[a]?-1:1,u=0,f=0,c=i,h,d,p;u0?c=h:f=h,u++}return d}});var Rh=B(Rc=>{"use strict";var sl={};Rc.throttle=function(r,t,a){var n=sl[r],i=Date.now();if(!n){for(var l in sl)sl[l].tsn.ts+t){o();return}n.timer=setTimeout(function(){o(),n.timer=null},t)};Rc.done=function(e){var r=sl[e];return!r||!r.timer?Promise.resolve():new Promise(function(t){var a=r.onDone;r.onDone=function(){a&&a(),t(),r.onDone=null}})};Rc.clear=function(e){if(e)s8(sl[e]),delete sl[e];else for(var r in sl)Rc.clear(r)};function s8(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var f8=B((Fye,u8)=>{"use strict";u8.exports=function(r){r._responsiveChartHandler&&(window.removeEventListener("resize",r._responsiveChartHandler),delete r._responsiveChartHandler)}});var c8=B((Iye,zh)=>{"use strict";zh.exports=lg;zh.exports.isMobile=lg;zh.exports.default=lg;var GJ=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,UJ=/CrOS/,WJ=/android|ipad|playbook|silk/i;function lg(e){e||(e={});let r=e.ua;if(!r&&typeof navigator!="undefined"&&(r=navigator.userAgent),r&&r.headers&&typeof r.headers["user-agent"]=="string"&&(r=r.headers["user-agent"]),typeof r!="string")return!1;let t=GJ.test(r)&&!UJ.test(r)||!!e.tablet&&WJ.test(r);return!t&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&r.indexOf("Macintosh")!==-1&&r.indexOf("Safari")!==-1&&(t=!0),t}});var h8=B((Hye,v8)=>{"use strict";var XJ=zr(),ZJ=c8();v8.exports=function(r){var t;if(r&&r.hasOwnProperty("userAgent")?t=r.userAgent:t=JJ(),typeof t!="string")return!0;var a=ZJ({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!a)for(var n=t.split(" "),i=1;i-1;o--){var s=n[o];if(s.slice(0,8)==="Version/"){var u=s.slice(8).split(".")[0];if(XJ(u)&&(u=+u),u>=13)return!0}}}return a};function JJ(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var p8=B((Oye,d8)=>{"use strict";var $J=kr();d8.exports=function(r,t,a){var n=r.selectAll("g."+a.replace(/\s/g,".")).data(t,function(l){return l[0].trace.uid});n.exit().remove(),n.enter().append("g").attr("class",a),n.order();var i=r.classed("rangeplot")?"nodeRangePlot3":"node3";return n.each(function(l){l[0][i]=$J.select(this)}),n}});var y8=B((Bye,m8)=>{"use strict";var KJ=gr();m8.exports=function(r,t){for(var a=r._context.locale,n=0;n<2;n++){for(var i=r._context.locales,l=0;l<2;l++){var o=(i[a]||{}).dictionary;if(o){var s=o[t];if(s)return s}i=KJ.localeRegistry}var u=a.split("-")[0];if(u===a)break;a=u}return t}});var x8=B((Yye,g8)=>{"use strict";g8.exports=function(r){for(var t={},a=[],n=0,i=0;i{"use strict";b8.exports=function(r){for(var t=e$(r)?jJ:QJ,a=[],n=0;n{"use strict";w8.exports=function(r,t){if(!t)return r;var a=1/Math.abs(t),n=a>1?(a*r+a*t)/a:r+t,i=String(n).length;if(i>16){var l=String(t).length,o=String(r).length;if(i>=o+l){var s=parseFloat(n).toPrecision(12);s.indexOf("e+")===-1&&(n=+s)}}return n}});var A8=B((Uye,M8)=>{"use strict";var r$=zr(),t$=wt().BADNUM,a$=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;M8.exports=function(r){return typeof r=="string"&&(r=r.replace(a$,"")),r$(r)?Number(r):t$}});var Pe=B((Wye,I8)=>{"use strict";var zc=kr(),n$=hu().utcFormat,i$=Cy().format,D8=zr(),E8=wt(),P8=E8.FP_SAFE,l$=-P8,k8=E8.BADNUM,de=I8.exports={};de.adjustFormat=function(r){return!r||/^\d[.]\df/.test(r)||/[.]\d%/.test(r)?r:r==="0.f"?"~f":/^\d%/.test(r)?"~%":/^\ds/.test(r)?"~s":!/^[~,.0$]/.test(r)&&/[&fps]/.test(r)?"~"+r:r};var q8={};de.warnBadFormat=function(e){var r=String(e);q8[r]||(q8[r]=1,de.warn('encountered bad format: "'+r+'"'))};de.noFormat=function(e){return String(e)};de.numberFormat=function(e){var r;try{r=i$(de.adjustFormat(e))}catch(t){return de.warnBadFormat(e),de.noFormat}return r};de.nestedProperty=dh();de.keyedContainer=g6();de.relativeAttr=b6();de.isPlainObject=Pl();de.toLogRange=mh();de.relinkPrivateKeys=M6();var Bl=yn();de.isArrayBuffer=Bl.isArrayBuffer;de.isTypedArray=Bl.isTypedArray;de.isArrayOrTypedArray=Bl.isArrayOrTypedArray;de.isArray1D=Bl.isArray1D;de.ensureArray=Bl.ensureArray;de.concat=Bl.concat;de.maxRowLength=Bl.maxRowLength;de.minRowLength=Bl.minRowLength;var R8=pu();de.mod=R8.mod;de.modHalf=R8.modHalf;var Yl=V6();de.valObjectMeta=Yl.valObjectMeta;de.coerce=Yl.coerce;de.coerce2=Yl.coerce2;de.coerceFont=Yl.coerceFont;de.coercePattern=Yl.coercePattern;de.coerceHoverinfo=Yl.coerceHoverinfo;de.coerceSelectionMarkerOpacity=Yl.coerceSelectionMarkerOpacity;de.validate=Yl.validate;var xn=Jw();de.dateTime2ms=xn.dateTime2ms;de.isDateTime=xn.isDateTime;de.ms2DateTime=xn.ms2DateTime;de.ms2DateTimeLocal=xn.ms2DateTimeLocal;de.cleanDate=xn.cleanDate;de.isJSDate=xn.isJSDate;de.formatDate=xn.formatDate;de.incrementMonth=xn.incrementMonth;de.dateTick0=xn.dateTick0;de.dfltRange=xn.dfltRange;de.findExactDates=xn.findExactDates;de.MIN_MS=xn.MIN_MS;de.MAX_MS=xn.MAX_MS;var Zo=jy();de.findBin=Zo.findBin;de.sorterAsc=Zo.sorterAsc;de.sorterDes=Zo.sorterDes;de.distinctVals=Zo.distinctVals;de.roundUp=Zo.roundUp;de.sort=Zo.sort;de.findIndexOfMin=Zo.findIndexOfMin;de.sortObjectKeys=eg();var ul=Qw();de.aggNums=ul.aggNums;de.len=ul.len;de.mean=ul.mean;de.geometricMean=ul.geometricMean;de.median=ul.median;de.midRange=ul.midRange;de.variance=ul.variance;de.stdev=ul.stdev;de.interp=ul.interp;var vi=wh();de.init2dArray=vi.init2dArray;de.transposeRagged=vi.transposeRagged;de.dot=vi.dot;de.translationMatrix=vi.translationMatrix;de.rotationMatrix=vi.rotationMatrix;de.rotationXYMatrix=vi.rotationXYMatrix;de.apply3DTransform=vi.apply3DTransform;de.apply2DTransform=vi.apply2DTransform;de.apply2DTransform2=vi.apply2DTransform2;de.convertCssMatrix=vi.convertCssMatrix;de.inverseTransformMatrix=vi.inverseTransformMatrix;var Fi=a8();de.deg2rad=Fi.deg2rad;de.rad2deg=Fi.rad2deg;de.angleDelta=Fi.angleDelta;de.angleDist=Fi.angleDist;de.isFullCircle=Fi.isFullCircle;de.isAngleInsideSector=Fi.isAngleInsideSector;de.isPtInsideSector=Fi.isPtInsideSector;de.pathArc=Fi.pathArc;de.pathSector=Fi.pathSector;de.pathAnnulus=Fi.pathAnnulus;var Su=n8();de.isLeftAnchor=Su.isLeftAnchor;de.isCenterAnchor=Su.isCenterAnchor;de.isRightAnchor=Su.isRightAnchor;de.isTopAnchor=Su.isTopAnchor;de.isMiddleAnchor=Su.isMiddleAnchor;de.isBottomAnchor=Su.isBottomAnchor;var Cu=o8();de.segmentsIntersect=Cu.segmentsIntersect;de.segmentDistance=Cu.segmentDistance;de.getTextLocation=Cu.getTextLocation;de.clearLocationCache=Cu.clearLocationCache;de.getVisibleSegment=Cu.getVisibleSegment;de.findPointOnPath=Cu.findPointOnPath;var Ih=mt();de.extendFlat=Ih.extendFlat;de.extendDeep=Ih.extendDeep;de.extendDeepAll=Ih.extendDeepAll;de.extendDeepNoArrays=Ih.extendDeepNoArrays;var og=Go();de.log=og.log;de.warn=og.warn;de.error=og.error;var o$=gu();de.counterRegex=o$.counter;var sg=Rh();de.throttle=sg.throttle;de.throttleDone=sg.done;de.clearThrottle=sg.clear;var hi=Sc();de.getGraphDiv=hi.getGraphDiv;de.isPlotDiv=hi.isPlotDiv;de.removeElement=hi.removeElement;de.addStyleRule=hi.addStyleRule;de.addRelatedStyleRule=hi.addRelatedStyleRule;de.deleteRelatedStyleRule=hi.deleteRelatedStyleRule;de.setStyleOnHover=hi.setStyleOnHover;de.getFullTransformMatrix=hi.getFullTransformMatrix;de.getElementTransformMatrix=hi.getElementTransformMatrix;de.getElementAndAncestors=hi.getElementAndAncestors;de.equalDomRects=hi.equalDomRects;de.clearResponsive=f8();de.preserveDrawingBuffer=h8();de.makeTraceGroups=p8();de._=y8();de.notifier=Oy();de.filterUnique=x8();de.filterVisible=_8();de.pushUnique=Vy();de.increment=T8();de.cleanNumber=A8();de.ensureNumber=function(r){return D8(r)?(r=Number(r),r>P8||r=r?!1:D8(e)&&e>=0&&e%1===0};de.noop=_h();de.identity=Ky();de.repeat=function(e,r){for(var t=new Array(r),a=0;at?Math.max(t,Math.min(r,e)):Math.max(r,Math.min(t,e))};de.bBoxIntersect=function(e,r,t){return t=t||0,e.left<=r.right+t&&r.left<=e.right+t&&e.top<=r.bottom+t&&r.top<=e.bottom+t};de.simpleMap=function(e,r,t,a,n){for(var i=e.length,l=new Array(i),o=0;o=Math.pow(2,t)?n>10?(de.warn("randstr failed uniqueness"),l):e(r,t,a,(n||0)+1):l};de.OptionControl=function(e,r){e||(e={}),r||(r="opt");var t={};return t.optionList=[],t._newoption=function(a){a[r]=e,t[a.name]=a,t.optionList.push(a)},t["_"+r]=e,t};de.smooth=function(e,r){if(r=Math.round(r)||0,r<2)return e;var t=e.length,a=2*t,n=2*r-1,i=new Array(n),l=new Array(t),o,s,u,f;for(o=0;o=a&&(u-=a*Math.floor(u/a)),u<0?u=-1-u:u>=t&&(u=a-1-u),f+=e[u]*i[s];l[o]=f}return l};de.syncOrAsync=function(e,r,t){var a,n;function i(){return de.syncOrAsync(e,r,t)}for(;e.length;)if(n=e.splice(0,1)[0],a=n(r),a&&a.then)return a.then(i);return t&&t(r)};de.stripTrailingSlash=function(e){return e.slice(-1)==="/"?e.slice(0,-1):e};de.noneOrAll=function(e,r,t){if(e){var a=!1,n=!0,i,l;for(i=0;i0?n:0})};de.fillArray=function(e,r,t,a){if(a=a||de.identity,de.isArrayOrTypedArray(e))for(var n=0;nf$.test(window.navigator.userAgent);var c$=/Firefox\/(\d+)\.\d+/;de.getFirefoxVersion=function(){var e=c$.exec(window.navigator.userAgent);if(e&&e.length===2){var r=parseInt(e[1]);if(!isNaN(r))return r}return null};de.isD3Selection=function(e){return e instanceof zc.selection};de.ensureSingle=function(e,r,t,a){var n=e.select(r+(t?"."+t:""));if(n.size())return n;var i=e.append(r);return t&&i.classed(t,!0),a&&i.call(a),i};de.ensureSingleById=function(e,r,t,a){var n=e.select(r+"#"+t);if(n.size())return n;var i=e.append(r).attr("id",t);return a&&i.call(a),i};de.objectFromPath=function(e,r){for(var t=e.split("."),a,n=a={},i=0;i1?n+l[1]:"";if(i&&(l.length>1||o.length>4||t))for(;a.test(o);)o=o.replace(a,"$1"+i+"$2");return o+s};de.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var F8=/^\w*$/;de.templateString=function(e,r){var t={};return e.replace(de.TEMPLATE_STRING_REGEX,function(a,n){var i;return F8.test(n)?i=r[n]:(t[n]=t[n]||de.nestedProperty(r,n).get,i=t[n](!0)),i!==void 0?i:""})};var d$={max:10,count:0,name:"hovertemplate"};de.hovertemplateString=e=>ug(ih(Ho({},e),{opts:d$}));var p$={max:10,count:0,name:"texttemplate"};de.texttemplateString=e=>ug(ih(Ho({},e),{opts:p$}));var m$=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function y$(e){var r=e.match(m$);return r?{key:r[1],op:r[2],number:Number(r[3])}:{key:e,op:null,number:null}}var g$={max:10,count:0,name:"texttemplate",parseMultDiv:!0};de.texttemplateStringForShapes=e=>ug(ih(Ho({},e),{opts:g$}));var S8=/^[:|\|]/;function ug({data:e=[],locale:r,fallback:t,labels:a={},opts:n,template:i}){return i.replace(de.TEMPLATE_STRING_REGEX,(l,o,s)=>{let u=["xother","yother"].includes(o),f=["_xother","_yother"].includes(o),c=["_xother_","_yother_"].includes(o),h=["xother_","yother_"].includes(o),d=u||f||h||c;(f||c)&&(o=o.substring(1)),(h||c)&&(o=o.substring(0,o.length-1));let p=null,y=null;if(n.parseMultDiv){var m=y$(o);o=m.key,p=m.op,y=m.number}let b;if(d){if(a[o]===void 0)return"";b=a[o]}else for(let M of e)if(M){if(M.hasOwnProperty(o)){b=M[o];break}if(F8.test(o)||(b=de.nestedProperty(M,o).get(!0)),b!==void 0)break}if(b===void 0){let{count:M,max:k,name:A}=n,C=t===!1?l:t;return M=Fh&&l<=C8,u=o>=Fh&&o<=C8;if(s&&(a=10*a+l-Fh),u&&(n=10*n+o-Fh),!s||!u){if(a!==n)return a-n;if(l!==o)return l-o}}return n-a};var qu=2e9;de.seedPseudoRandom=function(){qu=2e9};de.pseudoRandom=function(){var e=qu;return qu=(69069*qu+1)%4294967296,Math.abs(qu-e)<429496729?de.pseudoRandom():qu/4294967296};de.fillText=function(e,r,t){var a=Array.isArray(t)?function(l){t.push(l)}:function(l){t.text=l},n=de.extractOption(e,r,"htx","hovertext");if(de.isValidTextValue(n))return a(n);var i=de.extractOption(e,r,"tx","text");if(de.isValidTextValue(i))return a(i)};de.isValidTextValue=function(e){return e||e===0};de.formatPercent=function(e,r){r=r||0;for(var t=(Math.round(100*e*Math.pow(10,r))*Math.pow(.1,r)).toFixed(r)+"%",a=0;a1&&(u=1):u=0,de.strTranslate(n-u*(t+l),i-u*(a+o))+de.strScale(u)+(s?"rotate("+s+(r?"":" "+t+" "+a)+")":"")};de.setTransormAndDisplay=function(e,r){e.attr("transform",de.getTextTransform(r)),e.style("display",r.scale?null:"none")};de.ensureUniformFontSize=function(e,r){var t=de.extendFlat({},r);return t.size=Math.max(r.size,e._fullLayout.uniformtext.minsize||0),t};de.join2=function(e,r,t){var a=e.length;return a>1?e.slice(0,-1).join(r)+t+e[a-1]:e.join(r)};de.bigFont=function(e){return Math.round(1.2*e)};var L8=de.getFirefoxVersion(),x$=L8!==null&&L8<86;de.getPositionFromD3Event=function(){return x$?[zc.event.layerX,zc.event.layerY]:[zc.event.offsetX,zc.event.offsetY]}});var B8=B(()=>{"use strict";var b$=Pe(),H8={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(fg in H8)O8=fg.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),b$.addStyleRule(O8,H8[fg]);var O8,fg});var cg=B(($ye,Y8)=>{Y8.exports=!0});var hg=B((Kye,V8)=>{"use strict";var _$=cg(),vg;typeof window.matchMedia=="function"?vg=!window.matchMedia("(hover: none)").matches:vg=_$;V8.exports=vg});var Bh=B((Qye,dg)=>{"use strict";var Lu=typeof Reflect=="object"?Reflect:null,G8=Lu&&typeof Lu.apply=="function"?Lu.apply:function(r,t,a){return Function.prototype.apply.call(r,t,a)},Hh;Lu&&typeof Lu.ownKeys=="function"?Hh=Lu.ownKeys:Object.getOwnPropertySymbols?Hh=function(r){return Object.getOwnPropertyNames(r).concat(Object.getOwnPropertySymbols(r))}:Hh=function(r){return Object.getOwnPropertyNames(r)};function w$(e){console&&console.warn&&console.warn(e)}var W8=Number.isNaN||function(r){return r!==r};function yt(){yt.init.call(this)}dg.exports=yt;dg.exports.once=k$;yt.EventEmitter=yt;yt.prototype._events=void 0;yt.prototype._eventsCount=0;yt.prototype._maxListeners=void 0;var U8=10;function Oh(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(yt,"defaultMaxListeners",{enumerable:!0,get:function(){return U8},set:function(e){if(typeof e!="number"||e<0||W8(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");U8=e}});yt.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};yt.prototype.setMaxListeners=function(r){if(typeof r!="number"||r<0||W8(r))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+r+".");return this._maxListeners=r,this};function X8(e){return e._maxListeners===void 0?yt.defaultMaxListeners:e._maxListeners}yt.prototype.getMaxListeners=function(){return X8(this)};yt.prototype.emit=function(r){for(var t=[],a=1;a0&&(l=t[0]),l instanceof Error)throw l;var o=new Error("Unhandled error."+(l?" ("+l.message+")":""));throw o.context=l,o}var s=i[r];if(s===void 0)return!1;if(typeof s=="function")G8(s,this,t);else for(var u=s.length,f=Q8(s,u),a=0;a0&&l.length>n&&!l.warned){l.warned=!0;var o=new Error("Possible EventEmitter memory leak detected. "+l.length+" "+String(r)+" listeners added. Use emitter.setMaxListeners() to increase limit");o.name="MaxListenersExceededWarning",o.emitter=e,o.type=r,o.count=l.length,w$(o)}return e}yt.prototype.addListener=function(r,t){return Z8(this,r,t,!1)};yt.prototype.on=yt.prototype.addListener;yt.prototype.prependListener=function(r,t){return Z8(this,r,t,!0)};function T$(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function J8(e,r,t){var a={fired:!1,wrapFn:void 0,target:e,type:r,listener:t},n=T$.bind(a);return n.listener=t,a.wrapFn=n,n}yt.prototype.once=function(r,t){return Oh(t),this.on(r,J8(this,r,t)),this};yt.prototype.prependOnceListener=function(r,t){return Oh(t),this.prependListener(r,J8(this,r,t)),this};yt.prototype.removeListener=function(r,t){var a,n,i,l,o;if(Oh(t),n=this._events,n===void 0)return this;if(a=n[r],a===void 0)return this;if(a===t||a.listener===t)--this._eventsCount===0?this._events=Object.create(null):(delete n[r],n.removeListener&&this.emit("removeListener",r,a.listener||t));else if(typeof a!="function"){for(i=-1,l=a.length-1;l>=0;l--)if(a[l]===t||a[l].listener===t){o=a[l].listener,i=l;break}if(i<0)return this;i===0?a.shift():M$(a,i),a.length===1&&(n[r]=a[0]),n.removeListener!==void 0&&this.emit("removeListener",r,o||t)}return this};yt.prototype.off=yt.prototype.removeListener;yt.prototype.removeAllListeners=function(r){var t,a,n;if(a=this._events,a===void 0)return this;if(a.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):a[r]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete a[r]),this;if(arguments.length===0){var i=Object.keys(a),l;for(n=0;n=0;n--)this.removeListener(r,t[n]);return this};function $8(e,r,t){var a=e._events;if(a===void 0)return[];var n=a[r];return n===void 0?[]:typeof n=="function"?t?[n.listener||n]:[n]:t?A$(n):Q8(n,n.length)}yt.prototype.listeners=function(r){return $8(this,r,!0)};yt.prototype.rawListeners=function(r){return $8(this,r,!1)};yt.listenerCount=function(e,r){return typeof e.listenerCount=="function"?e.listenerCount(r):K8.call(e,r)};yt.prototype.listenerCount=K8;function K8(e){var r=this._events;if(r!==void 0){var t=r[e];if(typeof t=="function")return 1;if(t!==void 0)return t.length}return 0}yt.prototype.eventNames=function(){return this._eventsCount>0?Hh(this._events):[]};function Q8(e,r){for(var t=new Array(r),a=0;a{"use strict";var pg=Bh().EventEmitter,S$={init:function(e){if(e._ev instanceof pg)return e;var r=new pg,t=new pg;return e._ev=r,e._internalEv=t,e.on=r.on.bind(r),e.once=r.once.bind(r),e.removeListener=r.removeListener.bind(r),e.removeAllListeners=r.removeAllListeners.bind(r),e._internalOn=t.on.bind(t),e._internalOnce=t.once.bind(t),e._removeInternalListener=t.removeListener.bind(t),e._removeAllInternalListeners=t.removeAllListeners.bind(t),e.emit=function(a,n){r.emit(a,n),t.emit(a,n)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,r,t){var a,n=e._ev;if(!n)return;var i=n._events[r];if(!i)return;function l(s){if(s.listener){if(n.removeListener(r,s.listener),!s.fired)return s.fired=!0,s.listener.apply(n,[t])}else return s.apply(n,[t])}i=Array.isArray(i)?i:[i];var o;for(o=0;o{"use strict";var r9=Pe(),C$=Vo().dfltConfig;function L$(e,r){for(var t=[],a,n=0;nC$.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};fl.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};fl.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};fl.undo=function(r){var t,a;if(!(r.undoQueue===void 0||isNaN(r.undoQueue.index)||r.undoQueue.index<=0)){for(r.undoQueue.index--,t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a=r.undoQueue.queue.length)){for(t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a{"use strict";n9.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var Pu=B(Qt=>{"use strict";var Hn=gr(),Fc=Pe(),Vh=tn(),yg=wu(),D$=mg(),E$=Cc(),P$=Vo().configAttributes,i9=fi(),di=Fc.extendDeepAll,Du=Fc.isPlainObject,R$=Fc.isArrayOrTypedArray,Gh=Fc.nestedProperty,z$=Fc.valObjectMeta,gg="_isSubplotObj",Uh="_isLinkedToArray",N$="_arrayAttrRegexps",o9="_deprecated",xg=[gg,Uh,N$,o9];Qt.IS_SUBPLOT_OBJ=gg;Qt.IS_LINKED_TO_ARRAY=Uh;Qt.DEPRECATED=o9;Qt.UNDERSCORE_ATTRS=xg;Qt.get=function(){var e={};return Hn.allTypes.forEach(function(r){e[r]=I$(r)}),{defs:{valObjects:z$,metaKeys:xg.concat(["description","role","editType","impliedEdits"]),editType:{traces:i9.traces,layout:i9.layout},impliedEdits:{}},traces:e,layout:H$(),frames:O$(),animation:Eu(E$),config:Eu(P$)}};Qt.crawl=function(e,r,t,a){var n=t||0;a=a||"",Object.keys(e).forEach(function(i){var l=e[i];if(xg.indexOf(i)===-1){var o=(a?a+".":"")+i;r(l,i,e,n,o),!Qt.isValObject(l)&&Du(l)&&i!=="impliedEdits"&&Qt.crawl(l,r,n+1,o)}})};Qt.isValObject=function(e){return e&&e.valType!==void 0};Qt.findArrayAttributes=function(e){var r=[],t=[],a=[],n,i;function l(s,u,f,c){t=t.slice(0,c).concat([u]),a=a.slice(0,c).concat([s&&s._isLinkedToArray]);var h=s&&(s.valType==="data_array"||s.arrayOk===!0)&&!(t[c-1]==="colorbar"&&(u==="ticktext"||u==="tickvals"));h&&o(n,0,"")}function o(s,u,f){var c=s[t[u]],h=f+t[u];if(u===t.length-1)R$(c)&&r.push(i+h);else if(a[u]){if(Array.isArray(c))for(var d=0;d=i.length)return!1;if(e.dimensions===2){if(t++,r.length===t)return e;var l=r[t];if(!Yh(l))return!1;e=i[n][l]}else e=i[n]}else e=i}}return e}function Yh(e){return e===Math.round(e)&&e>=0}function I$(e){var r,t;r=Hn.modules[e]._module,t=r.basePlotModule;var a={};a.type=null;var n=di({},Vh),i=di({},r.attributes);Qt.crawl(i,function(s,u,f,c,h){Gh(n,h).set(void 0),s===void 0&&Gh(i,h).set(void 0)}),di(a,n),Hn.traceIs(e,"noOpacity")&&delete a.opacity,Hn.traceIs(e,"showLegend")||(delete a.showlegend,delete a.legendgroup),Hn.traceIs(e,"noHover")&&(delete a.hoverinfo,delete a.hoverlabel),r.selectPoints||delete a.selectedpoints,di(a,i),t.attributes&&di(a,t.attributes),a.type=e;var l={meta:r.meta||{},categories:r.categories||{},animatable:!!r.animatable,type:e,attributes:Eu(a)};if(r.layoutAttributes){var o={};di(o,r.layoutAttributes),l.layoutAttributes=Eu(o)}return r.animatable||Qt.crawl(l,function(s){Qt.isValObject(s)&&"anim"in s&&delete s.anim}),l}function H$(){var e={},r,t;di(e,yg);for(r in Hn.subplotsRegistry)if(t=Hn.subplotsRegistry[r],!!t.layoutAttributes)if(Array.isArray(t.attr))for(var a=0;a{"use strict";var Ru=Pe(),U$=tn(),Vl="templateitemname",bg={name:{valType:"string",editType:"none"}};bg[Vl]={valType:"string",editType:"calc"};Jo.templatedArray=function(e,r){return r._isLinkedToArray=e,r.name=bg.name,r[Vl]=bg[Vl],r};Jo.traceTemplater=function(e){var r={},t,a;for(t in e)a=e[t],Array.isArray(a)&&a.length&&(r[t]=0);function n(i){t=Ru.coerce(i,{},U$,"type");var l={type:t,_template:null};if(t in r){a=e[t];var o=r[t]%a.length;r[t]++,l._template=a[o]}return l}return{newTrace:n}};Jo.newContainer=function(e,r,t){var a=e._template,n=a&&(a[r]||t&&a[t]);Ru.isPlainObject(n)||(n=null);var i=e[r]={_template:n};return i};Jo.arrayTemplater=function(e,r,t){var a=e._template,n=a&&a[f9(r)],i=a&&a[r];(!Array.isArray(i)||!i.length)&&(i=[]);var l={};function o(u){var f={name:u.name,_input:u},c=f[Vl]=u[Vl];if(!u9(c))return f._template=n,f;for(var h=0;h=a&&(t._input||{})._templateitemname;i&&(n=a);var l=r+"["+n+"]",o;function s(){o={},i&&(o[l]={},o[l][Vl]=i)}s();function u(d,p){o[d]=p}function f(d,p){i?Ru.nestedProperty(o[l],d).set(p):o[l+"."+d]=p}function c(){var d=o;return s(),d}function h(d,p){d&&f(d,p);var y=c();for(var m in y)Ru.nestedProperty(e,m).set(y[m])}return{modifyBase:u,modifyItem:f,getUpdateObj:c,applyUpdate:h}}});var Ma=B((nge,c9)=>{"use strict";var Ic=gu().counter;c9.exports={idRegex:{x:Ic("x","( domain)?"),y:Ic("y","( domain)?")},attrRegex:Ic("[xy]axis"),xAxisMatch:Ic("xaxis"),yAxisMatch:Ic("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var Ut=B(on=>{"use strict";var W$=gr(),_g=Ma();on.id2name=function(r){if(!(typeof r!="string"||!r.match(_g.AX_ID_PATTERN))){var t=r.split(" ")[0].slice(1);return t==="1"&&(t=""),r.charAt(0)+"axis"+t}};on.name2id=function(r){if(r.match(_g.AX_NAME_PATTERN)){var t=r.slice(5);return t==="1"&&(t=""),r.charAt(0)+t}};on.cleanId=function(r,t,a){var n=/( domain)$/.test(r);if(!(typeof r!="string"||!r.match(_g.AX_ID_PATTERN))&&!(t&&r.charAt(0)!==t)&&!(n&&!a)){var i=r.split(" ")[0].slice(1).replace(/^0+/,"");return i==="1"&&(i=""),r.charAt(0)+i+(n&&a?" domain":"")}};on.list=function(e,r,t){var a=e._fullLayout;if(!a)return[];var n=on.listIds(e,r),i=new Array(n.length),l;for(l=0;la?1:-1:+(e.slice(1)||1)-+(r.slice(1)||1)};on.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function v9(e,r){if(r&&r.length){for(var t=0;t{"use strict";function X$(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".outline-controllers").remove()}function Z$(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}h9.exports={clearOutlineControllers:X$,clearOutline:Z$}});var Wh=B((oge,d9)=>{"use strict";d9.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var wg=B(Zh=>{"use strict";var Xh=gr(),sge=Ma().SUBPLOT_PATTERN;Zh.getSubplotCalcData=function(e,r,t){var a=Xh.subplotsRegistry[r];if(!a)return[];for(var n=a.attr,i=[],l=0;l{"use strict";var J$=gr(),zu=Pe();$o.manageCommandObserver=function(e,r,t,a){var n={},i=!0;r&&r._commandObserver&&(n=r._commandObserver),n.cache||(n.cache={}),n.lookupTable={};var l=$o.hasSimpleAPICommandBindings(e,t,n.lookupTable);if(r&&r._commandObserver){if(l)return n;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,n}if(l){p9(e,l,n.cache),n.check=function(){if(i){var f=p9(e,l,n.cache);return f.changed&&a&&n.lookupTable[f.value]!==void 0&&(n.disable(),Promise.resolve(a({value:f.value,type:l.type,prop:l.prop,traces:l.traces,index:n.lookupTable[f.value]})).then(n.enable,n.enable)),f.changed}};for(var o=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],s=0;s0?".":"")+n;zu.isPlainObject(i)?Tg(i,r,l,a+1):r(l,n,i)}})}});var Rt=B((cge,E9)=>{"use strict";var A9=kr(),K$=hu().timeFormatLocale,Q$=Cy().formatLocale,Hc=zr(),j$=Ly(),Xr=gr(),k9=Pu(),eK=lt(),fr=Pe(),q9=xr(),x9=wt().BADNUM,sn=Ut(),rK=Gl().clearOutline,tK=Wh(),Mg=Cc(),aK=mg(),nK=wg().getModuleCalcData,b9=fr.relinkPrivateKeys,Ko=fr._,Qe=E9.exports={};fr.extendFlat(Qe,Xr);Qe.attributes=tn();Qe.attributes.type.values=Qe.allTypes;Qe.fontAttrs=aa();Qe.layoutAttributes=wu();var $h=g9();Qe.executeAPICommand=$h.executeAPICommand;Qe.computeAPICommandBindings=$h.computeAPICommandBindings;Qe.manageCommandObserver=$h.manageCommandObserver;Qe.hasSimpleAPICommandBindings=$h.hasSimpleAPICommandBindings;Qe.redrawText=function(e){return e=fr.getGraphDiv(e),new Promise(function(r){setTimeout(function(){e._fullLayout&&(Xr.getComponentMethod("annotations","draw")(e),Xr.getComponentMethod("legend","draw")(e),Xr.getComponentMethod("colorbar","draw")(e),r(Qe.previousPromises(e)))},300)})};Qe.resize=function(e){e=fr.getGraphDiv(e);var r,t=new Promise(function(a,n){(!e||fr.isHidden(e))&&n(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(r=e._resolveResize),e._resolveResize=a,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||fr.isHidden(e)){a(e);return}delete e.layout.width,delete e.layout.height;var i=e.changed;e.autoplay=!0,Xr.call("relayout",e,{autosize:!0}).then(function(){e.changed=i,e._resolveResize===a&&(delete e._resolveResize,a(e))})},100)});return r&&r(t),t};Qe.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};Qe.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var r=e._fullLayout,t=fr.ensureSingle(r._paper,"text","js-plot-link-container",function(s){s.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:q9.defaultLine,"pointer-events":"all"}).each(function(){var u=A9.select(this);u.append("tspan").classed("js-link-to-tool",!0),u.append("tspan").classed("js-link-spacer",!0),u.append("tspan").classed("js-sourcelinks",!0)})}),a=t.node(),n={y:r._paper.attr("height")-9};document.body.contains(a)&&a.getComputedTextLength()>=r.width-20?(n["text-anchor"]="start",n.x=5):(n["text-anchor"]="end",n.x=r._paper.attr("width")-7),t.attr(n);var i=t.select(".js-link-to-tool"),l=t.select(".js-link-spacer"),o=t.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&iK(e,i),l.text(i.text()&&o.text()?" - ":"")}};function iK(e,r){r.text("");var t=r.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)t.on("click",function(){Qe.sendDataToCloud(e)});else{var a=window.location.pathname.split("/"),n=window.location.search;t.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+a[2].split(".")[0]+"/"+a[1]+n})}}Qe.sendDataToCloud=function(e){var r=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(r){e.emit("plotly_beforeexport");var t=A9.select(e).append("div").attr("id","hiddenform").style("display","none"),a=t.append("form").attr({action:r+"/external",method:"post",target:"_blank"}),n=a.append("input").attr({type:"text",name:"data"});return n.node().value=Qe.graphJson(e,!1,"keepdata"),a.node().submit(),t.remove(),e.emit("plotly_afterexport"),!1}};var lK=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],oK=["year","month","dayMonth","dayMonthYear"];Qe.supplyDefaults=function(e,r){var t=r&&r.skipUpdateCalc,a=e._fullLayout||{};if(a._skipDefaults){delete a._skipDefaults;return}var n=e._fullLayout={},i=e.layout||{},l=e._fullData||[],o=e._fullData=[],s=e.data||[],u=e.calcdata||[],f=e._context||{},c;e._transitionData||Qe.createTransitionData(e),n._dfltTitle={plot:Ko(e,"Click to enter Plot title"),subtitle:Ko(e,"Click to enter Plot subtitle"),x:Ko(e,"Click to enter X axis title"),y:Ko(e,"Click to enter Y axis title"),colorbar:Ko(e,"Click to enter Colorscale title"),annotation:Ko(e,"new text")},n._traceWord=Ko(e,"trace");var h=_9(e,lK);if(n._mapboxAccessToken=f.mapboxAccessToken,a._initialAutoSizeIsDone){var d=a.width,p=a.height;Qe.supplyLayoutGlobalDefaults(i,n,h),i.width||(n.width=d),i.height||(n.height=p),Qe.sanitizeMargins(n)}else{Qe.supplyLayoutGlobalDefaults(i,n,h);var y=!i.width||!i.height,m=n.autosize,b=f.autosizable,_=y&&(m||b);_?Qe.plotAutoSize(e,i,n):y&&Qe.sanitizeMargins(n),!m&&y&&(i.width=n.width,i.height=n.height)}n._d3locale=fK(h,n.separators),n._extraFormat=_9(e,oK),n._initialAutoSizeIsDone=!0,n._dataLength=s.length,n._modules=[],n._visibleModules=[],n._basePlotModules=[];var w=n._subplots=uK(),x=n._splomAxes={x:{},y:{}},M=n._splomSubplots={};n._splomGridDflt={},n._scatterStackOpts={},n._firstScatter={},n._alignmentOpts={},n._colorAxes={},n._requestRangeslider={},n._traceUids=sK(l,s),Qe.supplyDataDefaults(s,o,i,n);var k=Object.keys(x.x),A=Object.keys(x.y);if(k.length>1&&A.length>1){for(Xr.getComponentMethod("grid","sizeDefaults")(i,n),c=0;c15&&A.length>15&&n.shapes.length===0&&n.images.length===0,Qe.linkSubplots(o,n,l,a),Qe.cleanPlot(o,n,l,a);var N=!!(a._has&&a._has("cartesian")),I=!!(n._has&&n._has("cartesian")),H=N,G=I;H&&!G?a._bgLayer.remove():G&&!H&&(n._shouldCreateBgLayer=!0),a._zoomlayer&&!e._dragging&&rK({_fullLayout:a}),cK(o,n),b9(n,a),Xr.getComponentMethod("colorscale","crossTraceDefaults")(o,n),n._preGUI||(n._preGUI={}),n._tracePreGUI||(n._tracePreGUI={});var W=n._tracePreGUI,V={},O;for(O in W)V[O]="old";for(c=0;c0){var f=1-2*i;l=Math.round(f*l),o=Math.round(f*o)}}var c=Qe.layoutAttributes.width.min,h=Qe.layoutAttributes.height.min;l1,p=!t.height&&Math.abs(a.height-o)>1;(p||d)&&(d&&(a.width=l),p&&(a.height=o)),r._initialAutoSize||(r._initialAutoSize={width:l,height:o}),Qe.sanitizeMargins(a)};Qe.supplyLayoutModuleDefaults=function(e,r,t,a){var n=Xr.componentsRegistry,i=r._basePlotModules,l,o,s,u=Xr.subplotsRegistry.cartesian;for(l in n)s=n[l],s.includeBasePlot&&s.includeBasePlot(e,r);i.length||i.push(u),r._has("cartesian")&&(Xr.getComponentMethod("grid","contentDefaults")(e,r),u.finalizeSubplots(e,r));for(var f in r._subplots)r._subplots[f].sort(fr.subplotSort);for(o=0;o1&&(t.l/=m,t.r/=m)}if(h){var b=(t.t+t.b)/h;b>1&&(t.t/=b,t.b/=b)}var _=t.xl!==void 0?t.xl:t.x,w=t.xr!==void 0?t.xr:t.x,x=t.yt!==void 0?t.yt:t.y,M=t.yb!==void 0?t.yb:t.y;d[r]={l:{val:_,size:t.l+y},r:{val:w,size:t.r+y},b:{val:M,size:t.b+y},t:{val:x,size:t.t+y}},p[r]=1}if(!a._replotting)return Qe.doAutoMargin(e)}};function hK(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var r=sn.list(e,"",!0);for(var t in r)if(r[t].autoshift||r[t].shift)return!0;return!1}Qe.doAutoMargin=function(e){var r=e._fullLayout,t=r.width,a=r.height;r._size||(r._size={}),S9(r);var n=r._size,i=r.margin,l={t:0,b:0,l:0,r:0},o=fr.extendFlat({},n),s=i.l,u=i.r,f=i.t,c=i.b,h=r._pushmargin,d=r._pushmarginIds,p=r.minreducedwidth,y=r.minreducedheight;if(i.autoexpand!==!1){for(var m in h)d[m]||delete h[m];var b=e._fullLayout._reservedMargin;for(var _ in b)for(var w in b[_]){var x=b[_][w];l[w]=Math.max(l[w],x)}h.base={l:{val:0,size:s},r:{val:1,size:u},t:{val:1,size:f},b:{val:0,size:c}};for(var M in l){var k=0;for(var A in h)A!=="base"&&Hc(h[A][M].size)&&(k=h[A][M].size>k?h[A][M].size:k);var C=Math.max(0,i[M]-k);l[M]=Math.max(0,l[M]-C)}for(var D in h){var E=h[D].l||{},R=h[D].b||{},N=E.val,I=E.size,H=R.val,G=R.size,W=t-l.r-l.l,V=a-l.t-l.b;for(var O in h){if(Hc(I)&&h[O].r){var Y=h[O].r.val,Z=h[O].r.size;if(Y>N){var J=(I*Y+(Z-W)*N)/(Y-N),ee=(Z*(1-N)+(I-W)*(1-Y))/(Y-N);J+ee>s+u&&(s=J,u=ee)}}if(Hc(G)&&h[O].t){var le=h[O].t.val,ue=h[O].t.size;if(le>H){var ve=(G*le+(ue-V)*H)/(le-H),j=(ue*(1-H)+(G-V)*(1-le))/(le-H);ve+j>c+f&&(c=ve,f=j)}}}}}var qe=fr.constrain(t-i.l-i.r,C9,p),fe=fr.constrain(a-i.t-i.b,L9,y),be=Math.max(0,t-qe),ce=Math.max(0,a-fe);if(be){var xe=(s+u)/be;xe>1&&(s/=xe,u/=xe)}if(ce){var U=(c+f)/ce;U>1&&(c/=U,f/=U)}if(n.l=Math.round(s)+l.l,n.r=Math.round(u)+l.r,n.t=Math.round(f)+l.t,n.b=Math.round(c)+l.b,n.p=Math.round(i.pad),n.w=Math.round(t)-n.l-n.r,n.h=Math.round(a)-n.t-n.b,!r._replotting&&(Qe.didMarginChange(o,n)||hK(e))){"_redrawFromAutoMarginCount"in r?r._redrawFromAutoMarginCount++:r._redrawFromAutoMarginCount=1;var Q=3*(1+Object.keys(d).length);if(r._redrawFromAutoMarginCount1)return!0}return!1};Qe.graphJson=function(e,r,t,a,n,i){(n&&r&&!e._fullData||n&&!r&&!e._fullLayout)&&Qe.supplyDefaults(e);var l=n?e._fullData:e.data,o=n?e._fullLayout:e.layout,s=(e._transitionData||{})._frames;function u(h,d){if(typeof h=="function")return d?"_function_":null;if(fr.isPlainObject(h)){var p={},y;return Object.keys(h).sort().forEach(function(w){if(["_","["].indexOf(w.charAt(0))===-1){if(typeof h[w]=="function"){d&&(p[w]="_function");return}if(t==="keepdata"){if(w.slice(-3)==="src")return}else if(t==="keepstream"){if(y=h[w+"src"],typeof y=="string"&&y.indexOf(":")>0&&!fr.isPlainObject(h.stream))return}else if(t!=="keepall"&&(y=h[w+"src"],typeof y=="string"&&y.indexOf(":")>0))return;p[w]=u(h[w],d)}}),p}var m=Array.isArray(h),b=fr.isTypedArray(h);if((m||b)&&h.dtype&&h.shape){var _=h.bdata;return u({dtype:h.dtype,shape:h.shape,bdata:fr.isArrayBuffer(_)?j$.encode(_):_},d)}return m?h.map(function(w){return u(w,d)}):b?fr.simpleMap(h,fr.identity):fr.isJSDate(h)?fr.ms2DateTimeLocal(+h):h}var f={data:(l||[]).map(function(h){var d=u(h);return r&&delete d.fit,d})};if(!r&&(f.layout=u(o),n)){var c=o._size;f.layout.computed={margin:{b:c.b,l:c.l,r:c.r,t:c.t}}}return s&&(f.frames=u(s)),i&&(f.config=u(e._context,!0)),a==="object"?f:JSON.stringify(f)};Qe.modifyFrames=function(e,r){var t,a,n,i=e._transitionData._frames,l=e._transitionData._frameHash;for(t=0;t0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){a=!0}),t.redraw&&e._transitionData._interruptCallbacks.push(function(){return Xr.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var h=0,d=0;function p(){return h++,function(){d++,!a&&d===h&&o(c)}}t.runFn(p),setTimeout(p())})}function o(c){if(e._transitionData)return i(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(t.redraw)return Xr.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(c)}function s(){if(e._transitionData)return e._transitioning=!1,n(e._transitionData._interruptCallbacks)}var u=[Qe.previousPromises,s,t.prepareFn,Qe.rehover,Qe.reselect,l],f=fr.syncOrAsync(u,e);return(!f||!f.then)&&(f=Promise.resolve()),f.then(function(){return e})}Qe.doCalcdata=function(e,r){var t=sn.list(e),a=e._fullData,n=e._fullLayout,i,l,o,s,u=new Array(a.length),f=(e.calcdata||[]).slice();for(e.calcdata=u,n._numBoxes=0,n._numViolins=0,n._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,n._piecolormap={},n._sunburstcolormap={},n._treemapcolormap={},n._iciclecolormap={},n._funnelareacolormap={},o=0;o=0;s--)if(M[s].enabled){i._indexToPoints=M[s]._indexToPoints;break}l&&l.calc&&(x=l.calc(e,i))}(!Array.isArray(x)||!x[0])&&(x=[{x:x9,y:x9}]),x[0].t||(x[0].t={}),x[0].trace=i,u[_]=x}}for(T9(t,a,n),o=0;o{"use strict";Qo.xmlns="http://www.w3.org/2000/xmlns/";Qo.svg="http://www.w3.org/2000/svg";Qo.xlink="http://www.w3.org/1999/xlink";Qo.svgAttrs={xmlns:Qo.svg,"xmlns:xlink":Qo.xlink}});var Ea=B((hge,P9)=>{"use strict";P9.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var va=B(On=>{"use strict";var Wt=kr(),cl=Pe(),yK=cl.strTranslate,Ag=jo(),gK=Ea().LINE_SPACING,xK=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;On.convertToTspans=function(e,r,t){var a=e.text(),n=!e.attr("data-notex")&&r&&r._context.typesetMath&&typeof MathJax!="undefined"&&a.match(xK),i=Wt.select(e.node().parentNode);if(i.empty())return;var l=e.attr("class")?e.attr("class").split(" ")[0]:"text";l+="-math",i.selectAll("svg."+l).remove(),i.selectAll("g."+l+"-group").remove(),e.style("display",null).attr({"data-unformatted":a,"data-math":"N"});function o(){i.empty()||(l=e.attr("class")+"-math",i.select("svg."+l).remove()),e.text("").style("white-space","pre");var s=EK(e.node(),a);s&&e.style("pointer-events","all"),On.positionText(e),t&&t.call(e)}return n?(r&&r._promises||[]).push(new Promise(function(s){e.style("display","none");var u=parseInt(e.node().style.fontSize,10),f={fontSize:u};TK(n[2],f,function(c,h,d){i.selectAll("svg."+l).remove(),i.selectAll("g."+l+"-group").remove();var p=c&&c.select("svg");if(!p||!p.node()){o(),s();return}var y=i.append("g").classed(l+"-group",!0).attr({"pointer-events":"none","data-unformatted":a,"data-math":"Y"});y.node().appendChild(p.node()),h&&h.node()&&p.node().insertBefore(h.node().cloneNode(!0),p.node().firstChild);var m=d.width,b=d.height;p.attr({class:l,height:b,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var _=e.node().style.fill||"black",w=p.select("g");w.attr({fill:_,stroke:_});var x=w.node().getBoundingClientRect(),M=x.width,k=x.height;(M>m||k>b)&&(p.style("overflow","hidden"),x=p.node().getBoundingClientRect(),M=x.width,k=x.height);var A=+e.attr("x"),C=+e.attr("y"),D=u||e.node().getBoundingClientRect().height,E=-D/4;if(l[0]==="y")y.attr({transform:"rotate("+[-90,A,C]+")"+yK(-M/2,E-k/2)});else if(l[0]==="l")C=E-k/2;else if(l[0]==="a"&&l.indexOf("atitle")!==0)A=0,C=E;else{var R=e.attr("text-anchor");A=A-M*(R==="middle"?.5:R==="end"?1:0),C=C+E-k/2}p.attr({x:A,y:C}),t&&t.call(e,y),s(y)})})):o(),e};var bK=/(<|<|<)/g,_K=/(>|>|>)/g;function wK(e){return e.replace(bK,"\\lt ").replace(_K,"\\gt ")}var R9=[["$","$"],["\\(","\\)"]];function TK(e,r,t){var a=parseInt((MathJax.version||"").split(".")[0]);if(a!==2&&a!==3){cl.warn("No MathJax version:",MathJax.version);return}var n,i,l,o,s=function(){return i=cl.extendDeepAll({},MathJax.Hub.config),l=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:R9},displayAlign:"left"})},u=function(){i=cl.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=R9},f=function(){if(n=MathJax.Hub.config.menuSettings.renderer,n!=="SVG")return MathJax.Hub.setRenderer("SVG")},c=function(){n=MathJax.config.startup.output,n!=="svg"&&(MathJax.config.startup.output="svg")},h=function(){var _="math-output-"+cl.randstr({},64);o=Wt.select("body").append("div").attr({id:_}).style({visibility:"hidden",position:"absolute","font-size":r.fontSize+"px"}).text(wK(e));var w=o.node();return a===2?MathJax.Hub.Typeset(w):MathJax.typeset([w])},d=function(){var _=o.select(a===2?".MathJax_SVG":".MathJax"),w=!_.empty()&&o.select("svg").node();if(!w)cl.log("There was an error in the tex syntax.",e),t();else{var x=w.getBoundingClientRect(),M;a===2?M=Wt.select("body").select("#MathJax_SVG_glyphs"):M=_.select("defs"),t(_,M,x)}o.remove()},p=function(){if(n!=="SVG")return MathJax.Hub.setRenderer(n)},y=function(){n!=="svg"&&(MathJax.config.startup.output=n)},m=function(){return l!==void 0&&(MathJax.Hub.processSectionDelay=l),MathJax.Hub.Config(i)},b=function(){MathJax.config=i};a===2?MathJax.Hub.Queue(s,f,h,d,p,m):a===3&&(u(),c(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){h(),d(),y(),b()}))}var I9={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},MK={sub:"0.3em",sup:"-0.6em"},AK={sub:"-0.21em",sup:"0.42em"},z9="\u200B",N9=["http:","https:","mailto:","",void 0,":"],H9=On.NEWLINES=/(\r\n?|\n)/g,qg=/(<[^<>]*>)/,Sg=/<(\/?)([^ >]*)(\s+(.*))?>/i,kK=//i;On.BR_TAG_ALL=//gi;var O9=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,B9=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,Y9=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,qK=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function es(e,r){if(!e)return null;var t=e.match(r),a=t&&(t[3]||t[4]);return a&&Kh(a)}var SK=/(^|;)\s*color:/;On.plainText=function(e,r){r=r||{};for(var t=r.len!==void 0&&r.len!==-1?r.len:1/0,a=r.allowedTags!==void 0?r.allowedTags:["br"],n="...",i=n.length,l=e.split(qg),o=[],s="",u=0,f=0;fi?o.push(c.slice(0,Math.max(0,y-i))+n):o.push(c.slice(0,y));break}s=""}}return o.join("")};var CK={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},LK=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function Kh(e){return e.replace(LK,function(r,t){var a;return t.charAt(0)==="#"?a=DK(t.charAt(1)==="x"?parseInt(t.slice(2),16):parseInt(t.slice(1),10)):a=CK[t],a||r})}On.convertEntities=Kh;function DK(e){if(!(e>1114111)){var r=String.fromCodePoint;if(r)return r(e);var t=String.fromCharCode;return e<=65535?t(e):t((e>>10)+55232,e%1024+56320)}}function EK(e,r){r=r.replace(H9," ");var t=!1,a=[],n,i=-1;function l(){i++;var k=document.createElementNS(Ag.svg,"tspan");Wt.select(k).attr({class:"line",dy:i*gK+"em"}),e.appendChild(k),n=k;var A=a;if(a=[{node:k}],A.length>1)for(var C=1;C.",r);return}var A=a.pop();k!==A.type&&cl.log("Start tag <"+A.type+"> doesnt match end tag <"+k+">. Pretending it did match.",r),n=a[a.length-1].node}var f=kK.test(r);f?l():(n=e,a=[{node:e}]);for(var c=r.split(qg),h=0;h{"use strict";var PK=kr(),jh=Nn(),Bc=zr(),Qh=Pe(),G9=xr(),RK=Bo().isValid;function zK(e,r,t){var a=r?Qh.nestedProperty(e,r).get()||{}:e,n=a[t||"color"];n&&n._inputArray&&(n=n._inputArray);var i=!1;if(Qh.isArrayOrTypedArray(n)){for(var l=0;l=0;a--,n++){var i=e[a];t[n]=[1-i[0],i[1]]}return t}function $9(e,r){r=r||{};for(var t=e.domain,a=e.range,n=a.length,i=new Array(n),l=0;l{"use strict";var Q9=Xy(),FK=Q9.FORMAT_LINK,IK=Q9.DATE_FORMAT_LINK;function HK(e,r){return{valType:"string",dflt:"",editType:"none",description:(r?Cg:j9)("hover text",e)+["By default the values are formatted using "+(r?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function Cg(e,r){return["Sets the "+e+" formatting rule"+(r?"for `"+r+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+FK+"."].join(" ")}function j9(e,r){return Cg(e,r)+[" And for dates see: "+IK+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}eT.exports={axisHoverFormat:HK,descriptionOnlyNumbers:Cg,descriptionWithDates:j9}});var _n=B((gge,yT)=>{"use strict";var rT=aa(),Nu=Fn(),mT=ci().dash,Dg=mt().extendFlat,tT=lt().templatedArray,yge=gn().templateFormatStringDescription,aT=pi().descriptionWithDates,OK=wt().ONEDAY,Ii=Ma(),BK=Ii.HOUR_PATTERN,YK=Ii.WEEKDAY_PATTERN,Lg={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},VK=Dg({},Lg,{values:Lg.values.slice().concat(["sync"])});function nT(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var iT={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},lT={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},oT={valType:"data_array",editType:"ticks"},sT={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function uT(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=5),r}function fT(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var cT={valType:"color",dflt:Nu.defaultLine,editType:"ticks"},vT={valType:"color",dflt:Nu.lightLine,editType:"ticks"};function hT(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var dT=Dg({},mT,{editType:"ticks"}),pT={valType:"boolean",editType:"ticks"};yT.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:Nu.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:rT({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[Ii.idRegex.x.toString(),Ii.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[Ii.idRegex.x.toString(),Ii.idRegex.y.toString()],editType:"calc"},rangebreaks:tT("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[YK,BK,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:OK},editType:"calc"}),tickmode:VK,nticks:nT(),tick0:iT,dtick:lT,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:oT,ticktext:{valType:"data_array",editType:"ticks"},ticks:sT,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:uT(),tickwidth:fT(),tickcolor:cT,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:Dg({},mT,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:rT({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:aT("tick label")},tickformatstops:tT("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:aT("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:Nu.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:pT,gridcolor:vT,gridwidth:hT(),griddash:dT,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:Nu.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:Nu.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",Ii.idRegex.x.toString(),Ii.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",Ii.idRegex.x.toString(),Ii.idRegex.y.toString()],editType:"plot"},minor:{tickmode:Lg,nticks:nT("minor"),tick0:iT,dtick:lT,tickvals:oT,ticks:sT,ticklen:uT("minor"),tickwidth:fT("minor"),tickcolor:cT,gridcolor:vT,gridwidth:hT("minor"),griddash:dT,showgrid:pT,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var ed=B((xge,bT)=>{"use strict";var gt=_n(),gT=aa(),xT=mt().extendFlat,GK=fi().overrideAll;bT.exports=GK({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:gt.linecolor,outlinewidth:gt.linewidth,bordercolor:gt.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:gt.minor.tickmode,nticks:gt.nticks,tick0:gt.tick0,dtick:gt.dtick,tickvals:gt.tickvals,ticktext:gt.ticktext,ticks:xT({},gt.ticks,{dflt:""}),ticklabeloverflow:xT({},gt.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:gt.ticklen,tickwidth:gt.tickwidth,tickcolor:gt.tickcolor,ticklabelstep:gt.ticklabelstep,showticklabels:gt.showticklabels,labelalias:gt.labelalias,tickfont:gT({}),tickangle:gt.tickangle,tickformat:gt.tickformat,tickformatstops:gt.tickformatstops,tickprefix:gt.tickprefix,showtickprefix:gt.showtickprefix,ticksuffix:gt.ticksuffix,showticksuffix:gt.showticksuffix,separatethousands:gt.separatethousands,exponentformat:gt.exponentformat,minexponent:gt.minexponent,showexponent:gt.showexponent,title:{text:{valType:"string"},font:gT({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var Yc=B((_ge,wT)=>{"use strict";var UK=ed(),WK=gu().counter,XK=eg(),_T=Bo().scales,bge=XK(_T);function rd(e){return"`"+e+"`"}wT.exports=function(r,t){r=r||"",t=t||{};var a=t.cLetter||"c",n="onlyIfNumerical"in t?t.onlyIfNumerical:!!r,i="noScale"in t?t.noScale:r==="marker.line",l="showScaleDflt"in t?t.showScaleDflt:a==="z",o=typeof t.colorscaleDflt=="string"?_T[t.colorscaleDflt]:null,s=t.editTypeOverride||"",u=r?r+".":"",f,c;"colorAttr"in t?(f=t.colorAttr,c=t.colorAttr):(f={z:"z",c:"color"}[a],c="in "+rd(u+f));var h=n?" Has an effect only if "+c+" is set to a numerical array.":"",d=a+"auto",p=a+"min",y=a+"max",m=a+"mid",b=rd(u+d),_=rd(u+p),w=rd(u+y),x=_+" and "+w,M={};M[p]=M[y]=void 0;var k={};k[d]=!1;var A={};return f==="color"&&(A.color={valType:"color",arrayOk:!0,editType:s||"style"},t.anim&&(A.color.anim=!0)),A[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:M},A[p]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:k},A[y]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:k},A[m]={valType:"number",dflt:null,editType:"calc",impliedEdits:M},A.colorscale={valType:"colorscale",editType:"calc",dflt:o,impliedEdits:{autocolorscale:!1}},A.autocolorscale={valType:"boolean",dflt:t.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},A.reversescale={valType:"boolean",dflt:!1,editType:"plot"},i||(A.showscale={valType:"boolean",dflt:l,editType:"calc"},A.colorbar=UK),t.noColorAxis||(A.coloraxis={valType:"subplotid",regex:WK("coloraxis"),dflt:null,editType:"calc"}),A}});var Pg=B((wge,TT)=>{"use strict";var ZK=mt().extendFlat,JK=Yc(),Eg=Bo().scales;TT.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:Eg.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:Eg.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:Eg.RdBu,editType:"calc"}},coloraxis:ZK({_isSubplotObj:!0,editType:"calc"},JK("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var Rg=B((Tge,MT)=>{"use strict";var $K=Pe();MT.exports=function(r){return $K.isPlainObject(r.colorbar)}});var Fg=B(Ng=>{"use strict";var zg=zr(),AT=Pe(),kT=wt(),KK=kT.ONEDAY,QK=kT.ONEWEEK;Ng.dtick=function(e,r){var t=r==="log",a=r==="date",n=r==="category",i=a?KK:1;if(!e)return i;if(zg(e))return e=Number(e),e<=0?i:n?Math.max(1,Math.round(e)):a?Math.max(.1,e):e;if(typeof e!="string"||!(a||t))return i;var l=e.charAt(0),o=e.slice(1);return o=zg(o)?Number(o):0,o<=0||!(a&&l==="M"&&o===Math.round(o)||t&&l==="L"||t&&l==="D"&&(o===1||o===2))?i:e};Ng.tick0=function(e,r,t,a){if(r==="date")return AT.cleanDate(e,AT.dateTick0(t,a%QK===0?1:0));if(!(a==="D1"||a==="D2"))return zg(e)?Number(e):0}});var td=B((Age,ST)=>{"use strict";var qT=Fg(),jK=Pe().isArrayOrTypedArray,eQ=yn().isTypedArraySpec,rQ=yn().decodeTypedArraySpec;ST.exports=function(r,t,a,n,i){i||(i={});var l=i.isMinor,o=l?r.minor||{}:r,s=l?t.minor:t,u=l?"minor.":"";function f(_){var w=o[_];return eQ(w)&&(w=rQ(w)),w!==void 0?w:(s._template||{})[_]}var c=f("tick0"),h=f("dtick"),d=f("tickvals"),p=jK(d)?"array":h?"linear":"auto",y=a(u+"tickmode",p);if(y==="auto"||y==="sync")a(u+"nticks");else if(y==="linear"){var m=s.dtick=qT.dtick(h,n);s.tick0=qT.tick0(c,n,t.calendar,m)}else if(n!=="multicategory"){var b=a(u+"tickvals");b===void 0?s.tickmode="auto":l||a("ticktext")}}});var ad=B((kge,LT)=>{"use strict";var Ig=Pe(),CT=_n();LT.exports=function(r,t,a,n){var i=n.isMinor,l=i?r.minor||{}:r,o=i?t.minor:t,s=i?CT.minor:CT,u=i?"minor.":"",f=Ig.coerce2(l,o,s,"ticklen",i?(t.ticklen||5)*.6:void 0),c=Ig.coerce2(l,o,s,"tickwidth",i?t.tickwidth||1:void 0),h=Ig.coerce2(l,o,s,"tickcolor",(i?t.tickcolor:void 0)||o.color),d=a(u+"ticks",!i&&n.outerTicks||f||c||h?"outside":"");d||(delete o.ticklen,delete o.tickwidth,delete o.tickcolor)}});var Hg=B((qge,DT)=>{"use strict";DT.exports=function(r){var t=["showexponent","showtickprefix","showticksuffix"],a=t.filter(function(i){return r[i]!==void 0}),n=function(i){return r[i]===r[a[0]]};if(a.every(n)||a.length===1)return r[a[0]]}});var Bn=B((Sge,ET)=>{"use strict";var nd=Pe(),tQ=lt();ET.exports=function(r,t,a){var n=a.name,i=a.inclusionAttr||"visible",l=t[n],o=nd.isArrayOrTypedArray(r[n])?r[n]:[],s=t[n]=[],u=tQ.arrayTemplater(t,n,i),f,c;for(f=0;f{"use strict";var Og=Pe(),aQ=xr().contrast,PT=_n(),nQ=Hg(),iQ=Bn();RT.exports=function(r,t,a,n,i){i||(i={});var l=a("labelalias");Og.isPlainObject(l)||delete t.labelalias;var o=nQ(r),s=a("showticklabels");if(s){i.noTicklabelshift||a("ticklabelshift"),i.noTicklabelstandoff||a("ticklabelstandoff");var u=i.font||{},f=t.color,c=t.ticklabelposition||"",h=c.indexOf("inside")!==-1?aQ(i.bgColor):f&&f!==PT.color.dflt?f:u.color;if(Og.coerceFont(a,"tickfont",u,{overrideDflt:{color:h}}),!i.noTicklabelstep&&n!=="multicategory"&&n!=="log"&&a("ticklabelstep"),!i.noAng){var d=a("tickangle");!i.noAutotickangles&&d==="auto"&&a("autotickangles")}if(n!=="category"){var p=a("tickformat");iQ(r,t,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:lQ}),t.tickformatstops.length||delete t.tickformatstops,!i.noExp&&!p&&n!=="date"&&(a("showexponent",o),a("exponentformat"),a("minexponent"),a("separatethousands"))}!i.noMinorloglabels&&n==="log"&&a("minorloglabels")}};function lQ(e,r){function t(n,i){return Og.coerce(e,r,PT.tickformatstops,n,i)}var a=t("enabled");a&&(t("dtickrange"),t("value"))}});var ld=B((Lge,zT)=>{"use strict";var oQ=Hg();zT.exports=function(r,t,a,n,i){i||(i={});var l=i.tickSuffixDflt,o=oQ(r),s=a("tickprefix");s&&a("showtickprefix",o);var u=a("ticksuffix",l);u&&a("showticksuffix",o)}});var Bg=B((Dge,NT)=>{"use strict";var Ul=Pe(),sQ=lt(),uQ=td(),fQ=ad(),cQ=id(),vQ=ld(),hQ=ed();NT.exports=function(r,t,a){var n=sQ.newContainer(t,"colorbar"),i=r.colorbar||{};function l(R,N){return Ul.coerce(i,n,hQ,R,N)}var o=a.margin||{t:0,b:0,l:0,r:0},s=a.width-o.l-o.r,u=a.height-o.t-o.b,f=l("orientation"),c=f==="v",h=l("thicknessmode");l("thickness",h==="fraction"?30/(c?s:u):30);var d=l("lenmode");l("len",d==="fraction"?1:c?u:s);var p=l("yref"),y=l("xref"),m=p==="paper",b=y==="paper",_,w,x,M="left";c?(x="middle",M=b?"left":"right",_=b?1.02:1,w=.5):(x=m?"bottom":"top",M="center",_=.5,w=m?1.02:1),Ul.coerce(i,n,{x:{valType:"number",min:b?-2:0,max:b?3:1,dflt:_}},"x"),Ul.coerce(i,n,{y:{valType:"number",min:m?-2:0,max:m?3:1,dflt:w}},"y"),l("xanchor",M),l("xpad"),l("yanchor",x),l("ypad"),Ul.noneOrAll(i,n,["x","y"]),l("outlinecolor"),l("outlinewidth"),l("bordercolor"),l("borderwidth"),l("bgcolor");var k=Ul.coerce(i,n,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:c?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");l("ticklabeloverflow",k.indexOf("inside")!==-1?"hide past domain":"hide past div"),uQ(i,n,l,"linear");var A=a.font,C={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:A};k.indexOf("inside")!==-1&&(C.bgColor="black"),vQ(i,n,l,"linear",C),cQ(i,n,l,"linear",C),fQ(i,n,l,"linear",C),l("title.text",a._dfltTitle.colorbar);var D=n.showticklabels?n.tickfont:A,E=Ul.extendFlat({},A,{family:D.family,size:Ul.bigFont(D.size)});Ul.coerceFont(l,"title.font",E),l("title.side",c?"top":"right")}});var Fu=B((Ege,HT)=>{"use strict";var FT=zr(),Vg=Pe(),dQ=Rg(),pQ=Bg(),IT=Bo().isValid,mQ=gr().traceIs;function Yg(e,r){var t=r.slice(0,r.length-1);return r?Vg.nestedProperty(e,t).get()||{}:e}HT.exports=function e(r,t,a,n,i){var l=i.prefix,o=i.cLetter,s="_module"in t,u=Yg(r,l),f=Yg(t,l),c=Yg(t._template||{},l)||{},h=function(){return delete r.coloraxis,delete t.coloraxis,e(r,t,a,n,i)};if(s){var d=a._colorAxes||{},p=n(l+"coloraxis");if(p){var y=mQ(t,"contour")&&Vg.nestedProperty(t,"contours.coloring").get()||"heatmap",m=d[p];m?(m[2].push(h),m[0]!==y&&(m[0]=!1,Vg.warn(["Ignoring coloraxis:",p,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[p]=[y,t,[h]];return}}var b=u[o+"min"],_=u[o+"max"],w=FT(b)&&FT(_)&&b<_,x=n(l+o+"auto",!w);x?n(l+o+"mid"):(n(l+o+"min"),n(l+o+"max"));var M=u.colorscale,k=c.colorscale,A;if(M!==void 0&&(A=!IT(M)),k!==void 0&&(A=!IT(k)),n(l+"autocolorscale",A),n(l+"colorscale"),n(l+"reversescale"),l!=="marker.line."){var C;l&&s&&(C=dQ(u));var D=n(l+"showscale",C);D&&(l&&c&&(f._template=c),pQ(u,f,a))}}});var VT=B((Pge,YT)=>{"use strict";var OT=Pe(),yQ=lt(),BT=Pg(),gQ=Fu();YT.exports=function(r,t){function a(c,h){return OT.coerce(r,t,BT,c,h)}a("colorscale.sequential"),a("colorscale.sequentialminus"),a("colorscale.diverging");var n=t._colorAxes,i,l;function o(c,h){return OT.coerce(i,l,BT.coloraxis,c,h)}for(var s in n){var u=n[s];if(u[0])i=r[s]||{},l=yQ.newContainer(t,s,"coloraxis"),l._name=s,gQ(i,l,t,o,{prefix:"",cLetter:"c"});else{for(var f=0;f{"use strict";var xQ=Pe(),bQ=bn().hasColorscale,_Q=bn().extractOpts;GT.exports=function(r,t){function a(f,c){var h=f["_"+c];h!==void 0&&(f[c]=h)}function n(f,c){var h=c.container?xQ.nestedProperty(f,c.container).get():f;if(h)if(h.coloraxis)h._colorAx=t[h.coloraxis];else{var d=_Q(h),p=d.auto;(p||d.min===void 0)&&a(h,c.min),(p||d.max===void 0)&&a(h,c.max),d.autocolorscale&&a(h,"colorscale")}}for(var i=0;i{"use strict";var WT=zr(),Gg=Pe(),wQ=bn().extractOpts;XT.exports=function(r,t,a){var n=r._fullLayout,i=a.vals,l=a.containerStr,o=l?Gg.nestedProperty(t,l).get():t,s=wQ(o),u=s.auto!==!1,f=s.min,c=s.max,h=s.mid,d=function(){return Gg.aggNums(Math.min,null,i)},p=function(){return Gg.aggNums(Math.max,null,i)};if(f===void 0?f=d():u&&(o._colorAx&&WT(f)?f=Math.min(f,d()):f=d()),c===void 0?c=p():u&&(o._colorAx&&WT(c)?c=Math.max(c,p()):c=p()),u&&h!==void 0&&(c-h>h-f?f=h-(c-h):c-h=0?y=n.colorscale.sequential:y=n.colorscale.sequentialminus,s._sync("colorscale",y)}}});var Ug=B((Nge,ZT)=>{"use strict";var od=Bo(),Iu=bn();ZT.exports={moduleType:"component",name:"colorscale",attributes:Yc(),layoutAttributes:Pg(),supplyLayoutDefaults:VT(),handleDefaults:Fu(),crossTraceDefaults:UT(),calc:Vc(),scales:od.scales,defaultScale:od.defaultScale,getScale:od.get,isValidScale:od.isValid,hasColorscale:Iu.hasColorscale,extractOpts:Iu.extractOpts,extractScale:Iu.extractScale,flipScale:Iu.flipScale,makeColorScaleFunc:Iu.makeColorScaleFunc,makeColorScaleFuncFromTrace:Iu.makeColorScaleFuncFromTrace}});var wn=B((Fge,$T)=>{"use strict";var JT=Pe(),TQ=yn().isTypedArraySpec;$T.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var r=e.marker;return JT.isPlainObject(r)&&(JT.isArrayOrTypedArray(r.size)||TQ(r.size))}}});var QT=B((Ige,KT)=>{"use strict";var MQ=zr();KT.exports=function(r,t){t||(t=2);var a=r.marker,n=a.sizeref||1,i=a.sizemin||0,l=a.sizemode==="area"?function(o){return Math.sqrt(o/n)}:function(o){return o/n};return function(o){var s=l(o/t);return MQ(s)&&s>0?Math.max(s,i):0}}});var Hi=B(Pa=>{"use strict";var sd=Pe();Pa.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};Pa.isTraceInSubplots=function(e,r){if(e.type==="splom"){for(var t=e.xaxes||[],a=e.yaxes||[],n=0;n=0&&t.index{rM.exports=CQ;var Wg={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},SQ=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function CQ(e){var r=[];return e.replace(SQ,function(t,a,n){var i=a.toLowerCase();for(n=DQ(n),i=="m"&&n.length>2&&(r.push([a].concat(n.splice(0,2))),i="l",a=a=="m"?"l":"L");;){if(n.length==Wg[i])return n.unshift(a),r.push(n);if(n.length{"use strict";var EQ=Xg(),Ze=function(e,r){return r?Math.round(e*(r=Math.pow(10,r)))/r:Math.round(e)},qr="M0,0Z",tM=Math.sqrt(2),Wl=Math.sqrt(3),Zg=Math.PI,Jg=Math.cos,$g=Math.sin;oM.exports={circle:{n:0,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n="M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z";return t?Cr(r,t,n):n}},square:{n:1,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")}},diamond:{n:2,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.3,2);return Cr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"Z")}},cross:{n:3,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.4,2),n=Ze(e*1.2,2);return Cr(r,t,"M"+n+","+a+"H"+a+"V"+n+"H-"+a+"V"+a+"H-"+n+"V-"+a+"H-"+a+"V-"+n+"H"+a+"V-"+a+"H"+n+"Z")}},x:{n:4,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.8/tM,2),n="l"+a+","+a,i="l"+a+",-"+a,l="l-"+a+",-"+a,o="l-"+a+","+a;return Cr(r,t,"M0,"+a+n+i+l+i+l+o+l+o+n+o+n+"Z")}},"triangle-up":{n:5,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2/Wl,2),n=Ze(e/2,2),i=Ze(e,2);return Cr(r,t,"M-"+a+","+n+"H"+a+"L0,-"+i+"Z")}},"triangle-down":{n:6,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2/Wl,2),n=Ze(e/2,2),i=Ze(e,2);return Cr(r,t,"M-"+a+",-"+n+"H"+a+"L0,"+i+"Z")}},"triangle-left":{n:7,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2/Wl,2),n=Ze(e/2,2),i=Ze(e,2);return Cr(r,t,"M"+n+",-"+a+"V"+a+"L-"+i+",0Z")}},"triangle-right":{n:8,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2/Wl,2),n=Ze(e/2,2),i=Ze(e,2);return Cr(r,t,"M-"+n+",-"+a+"V"+a+"L"+i+",0Z")}},"triangle-ne":{n:9,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.6,2),n=Ze(e*1.2,2);return Cr(r,t,"M-"+n+",-"+a+"H"+a+"V"+n+"Z")}},"triangle-se":{n:10,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.6,2),n=Ze(e*1.2,2);return Cr(r,t,"M"+a+",-"+n+"V"+a+"H-"+n+"Z")}},"triangle-sw":{n:11,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.6,2),n=Ze(e*1.2,2);return Cr(r,t,"M"+n+","+a+"H-"+a+"V-"+n+"Z")}},"triangle-nw":{n:12,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.6,2),n=Ze(e*1.2,2);return Cr(r,t,"M-"+a+","+n+"V-"+a+"H"+n+"Z")}},pentagon:{n:13,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.951,2),n=Ze(e*.588,2),i=Ze(-e,2),l=Ze(e*-.309,2),o=Ze(e*.809,2);return Cr(r,t,"M"+a+","+l+"L"+n+","+o+"H-"+n+"L-"+a+","+l+"L0,"+i+"Z")}},hexagon:{n:14,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n=Ze(e/2,2),i=Ze(e*Wl/2,2);return Cr(r,t,"M"+i+",-"+n+"V"+n+"L0,"+a+"L-"+i+","+n+"V-"+n+"L0,-"+a+"Z")}},hexagon2:{n:15,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n=Ze(e/2,2),i=Ze(e*Wl/2,2);return Cr(r,t,"M-"+n+","+i+"H"+n+"L"+a+",0L"+n+",-"+i+"H-"+n+"L-"+a+",0Z")}},octagon:{n:16,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.924,2),n=Ze(e*.383,2);return Cr(r,t,"M-"+n+",-"+a+"H"+n+"L"+a+",-"+n+"V"+n+"L"+n+","+a+"H-"+n+"L-"+a+","+n+"V-"+n+"Z")}},star:{n:17,f:function(e,r,t){if(Sr(r))return qr;var a=e*1.4,n=Ze(a*.225,2),i=Ze(a*.951,2),l=Ze(a*.363,2),o=Ze(a*.588,2),s=Ze(-a,2),u=Ze(a*-.309,2),f=Ze(a*.118,2),c=Ze(a*.809,2),h=Ze(a*.382,2);return Cr(r,t,"M"+n+","+u+"H"+i+"L"+l+","+f+"L"+o+","+c+"L0,"+h+"L-"+o+","+c+"L-"+l+","+f+"L-"+i+","+u+"H-"+n+"L0,"+s+"Z")}},hexagram:{n:18,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.66,2),n=Ze(e*.38,2),i=Ze(e*.76,2);return Cr(r,t,"M-"+i+",0l-"+n+",-"+a+"h"+i+"l"+n+",-"+a+"l"+n+","+a+"h"+i+"l-"+n+","+a+"l"+n+","+a+"h-"+i+"l-"+n+","+a+"l-"+n+",-"+a+"h-"+i+"Z")}},"star-triangle-up":{n:19,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*Wl*.8,2),n=Ze(e*.8,2),i=Ze(e*1.6,2),l=Ze(e*4,2),o="A "+l+","+l+" 0 0 1 ";return Cr(r,t,"M-"+a+","+n+o+a+","+n+o+"0,-"+i+o+"-"+a+","+n+"Z")}},"star-triangle-down":{n:20,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*Wl*.8,2),n=Ze(e*.8,2),i=Ze(e*1.6,2),l=Ze(e*4,2),o="A "+l+","+l+" 0 0 1 ";return Cr(r,t,"M"+a+",-"+n+o+"-"+a+",-"+n+o+"0,"+i+o+a+",-"+n+"Z")}},"star-square":{n:21,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.1,2),n=Ze(e*2,2),i="A "+n+","+n+" 0 0 1 ";return Cr(r,t,"M-"+a+",-"+a+i+"-"+a+","+a+i+a+","+a+i+a+",-"+a+i+"-"+a+",-"+a+"Z")}},"star-diamond":{n:22,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.4,2),n=Ze(e*1.9,2),i="A "+n+","+n+" 0 0 1 ";return Cr(r,t,"M-"+a+",0"+i+"0,"+a+i+a+",0"+i+"0,-"+a+i+"-"+a+",0Z")}},"diamond-tall":{n:23,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*.7,2),n=Ze(e*1.4,2);return Cr(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},"diamond-wide":{n:24,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.4,2),n=Ze(e*.7,2);return Cr(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},hourglass:{n:25,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M"+a+","+a+"H-"+a+"L"+a+",-"+a+"H-"+a+"Z")},noDot:!0},bowtie:{n:26,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M"+a+","+a+"V-"+a+"L-"+a+","+a+"V-"+a+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n=Ze(e/tM,2);return Cr(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.3,2);return Cr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM0,-"+a+"V"+a+"M-"+a+",0H"+a)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.3,2),n=Ze(e*.65,2);return Cr(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM-"+n+",-"+n+"L"+n+","+n+"M-"+n+","+n+"L"+n+",-"+n)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.4,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.2,2),n=Ze(e*.85,2);return Cr(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e/2,2),n=Ze(e,2);return Cr(r,t,"M"+a+","+n+"V-"+n+"M"+(a-n)+",-"+n+"V"+n+"M"+n+","+a+"H-"+n+"M-"+n+","+(a-n)+"H"+n)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.2,2),n=Ze(e*1.6,2),i=Ze(e*.8,2);return Cr(r,t,"M-"+a+","+i+"L0,0M"+a+","+i+"L0,0M0,-"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.2,2),n=Ze(e*1.6,2),i=Ze(e*.8,2);return Cr(r,t,"M-"+a+",-"+i+"L0,0M"+a+",-"+i+"L0,0M0,"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.2,2),n=Ze(e*1.6,2),i=Ze(e*.8,2);return Cr(r,t,"M"+i+","+a+"L0,0M"+i+",-"+a+"L0,0M-"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.2,2),n=Ze(e*1.6,2),i=Ze(e*.8,2);return Cr(r,t,"M-"+i+","+a+"L0,0M-"+i+",-"+a+"L0,0M"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.4,2);return Cr(r,t,"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*1.4,2);return Cr(r,t,"M0,"+a+"V-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2);return Cr(r,t,"M"+a+","+a+"L-"+a+",-"+a)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n=Ze(e*2,2);return Cr(r,t,"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n=Ze(e*2,2);return Cr(r,t,"M0,0L-"+a+",-"+n+"H"+a+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2,2),n=Ze(e,2);return Cr(r,t,"M0,0L"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2,2),n=Ze(e,2);return Cr(r,t,"M0,0L-"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n=Ze(e*2,2);return Cr(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e,2),n=Ze(e*2,2);return Cr(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+",-"+n+"H"+a+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2,2),n=Ze(e,2);return Cr(r,t,"M0,-"+n+"V"+n+"M0,0L"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,r,t){if(Sr(r))return qr;var a=Ze(e*2,2),n=Ze(e,2);return Cr(r,t,"M0,-"+n+"V"+n+"M0,0L-"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,r,t){if(Sr(r))return qr;var a=Zg/2.5,n=2*e*Jg(a),i=2*e*$g(a);return Cr(r,t,"M0,0L"+-n+","+i+"L"+n+","+i+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,r,t){if(Sr(r))return qr;var a=Zg/4,n=2*e*Jg(a),i=2*e*$g(a);return Cr(r,t,"M0,0L"+-n+","+i+"A "+2*e+","+2*e+" 0 0 1 "+n+","+i+"Z")},backoff:.4,noDot:!0}};function Sr(e){return e===null}var aM,nM,iM,lM;function Cr(e,r,t){if((!e||e%360===0)&&!r)return t;if(iM===e&&lM===r&&aM===t)return nM;iM=e,lM=r,aM=t;function a(m,b){var _=Jg(m),w=$g(m),x=b[0],M=b[1]+(r||0);return[x*_-M*w,x*w+M*_]}for(var n=e/180*Zg,i=0,l=0,o=EQ(t),s="",u=0;u{"use strict";var ia=kr(),nt=Pe(),PQ=nt.numberFormat,ns=zr(),t2=Nn(),fd=gr(),Aa=xr(),RQ=Ug(),Uc=nt.strTranslate,cd=va(),zQ=jo(),NQ=Ea(),FQ=NQ.LINE_SPACING,gM=yu().DESELECTDIM,IQ=wn(),HQ=QT(),OQ=Hi().appendArrayPointValue,er=SM.exports={};er.font=function(e,r){var t=r.variant,a=r.style,n=r.weight,i=r.color,l=r.size,o=r.family,s=r.shadow,u=r.lineposition,f=r.textcase;o&&e.style("font-family",o),l+1&&e.style("font-size",l+"px"),i&&e.call(Aa.fill,i),n&&e.style("font-weight",n),a&&e.style("font-style",a),t&&e.style("font-variant",t),f&&e.style("text-transform",Kg(YQ(f))),s&&e.style("text-shadow",s==="auto"?cd.makeTextShadow(Aa.contrast(i)):Kg(s)),u&&e.style("text-decoration-line",Kg(VQ(u)))};function Kg(e){return e==="none"?void 0:e}var BQ={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function YQ(e){return BQ[e]}function VQ(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}er.setPosition=function(e,r,t){e.attr("x",r).attr("y",t)};er.setSize=function(e,r,t){e.attr("width",r).attr("height",t)};er.setRect=function(e,r,t,a,n){e.call(er.setPosition,r,t).call(er.setSize,a,n)};er.translatePoint=function(e,r,t,a){var n=t.c2p(e.x),i=a.c2p(e.y);if(ns(n)&&ns(i)&&r.node())r.node().nodeName==="text"?r.attr("x",n).attr("y",i):r.attr("transform",Uc(n,i));else return!1;return!0};er.translatePoints=function(e,r,t){e.each(function(a){var n=ia.select(this);er.translatePoint(a,n,r,t)})};er.hideOutsideRangePoint=function(e,r,t,a,n,i){r.attr("display",t.isPtWithinRange(e,n)&&a.isPtWithinRange(e,i)?null:"none")};er.hideOutsideRangePoints=function(e,r){if(r._hasClipOnAxisFalse){var t=r.xaxis,a=r.yaxis;e.each(function(n){var i=n[0].trace,l=i.xcalendar,o=i.ycalendar,s=fd.traceIs(i,"bar-like")?".bartext":".point,.textpoint";e.selectAll(s).each(function(u){er.hideOutsideRangePoint(u,ia.select(this),t,a,l,o)})})}};er.crispRound=function(e,r,t){return!r||!ns(r)?t||0:e._context.staticPlot?r:r<1?1:Math.round(r)};er.singleLineStyle=function(e,r,t,a,n){r.style("fill","none");var i=(((e||[])[0]||{}).trace||{}).line||{},l=t||i.width||0,o=n||i.dash||"";Aa.stroke(r,a||i.color),er.dashLine(r,o,l)};er.lineGroupStyle=function(e,r,t,a){e.style("fill","none").each(function(n){var i=(((n||[])[0]||{}).trace||{}).line||{},l=r||i.width||0,o=a||i.dash||"";ia.select(this).call(Aa.stroke,t||i.color).call(er.dashLine,o,l)})};er.dashLine=function(e,r,t){t=+t||0,r=er.dashStyle(r,t),e.style({"stroke-dasharray":r,"stroke-width":t+"px"})};er.dashStyle=function(e,r){r=+r||1;var t=Math.max(r,3);return e==="solid"?e="":e==="dot"?e=t+"px,"+t+"px":e==="dash"?e=3*t+"px,"+3*t+"px":e==="longdash"?e=5*t+"px,"+5*t+"px":e==="dashdot"?e=3*t+"px,"+t+"px,"+t+"px,"+t+"px":e==="longdashdot"&&(e=5*t+"px,"+2*t+"px,"+t+"px,"+2*t+"px"),e};function xM(e,r,t,a){var n=r.fillpattern,i=r.fillgradient,l=er.getPatternAttr,o=n&&(l(n.shape,0,"")||l(n.path,0,""));if(o){var s=l(n.bgcolor,0,null),u=l(n.fgcolor,0,null),f=n.fgopacity,c=l(n.size,0,8),h=l(n.solidity,0,.3),d=r.uid;er.pattern(e,"point",t,d,o,c,h,void 0,n.fillmode,s,u,f)}else if(i&&i.type!=="none"){var p=i.type,y="scatterfill-"+r.uid;if(a&&(y="legendfill-"+r.uid),!a&&(i.start!==void 0||i.stop!==void 0)){var m,b;p==="horizontal"?(m={x:i.start,y:0},b={x:i.stop,y:0}):p==="vertical"&&(m={x:0,y:i.start},b={x:0,y:i.stop}),m.x=r._xA.c2p(m.x===void 0?r._extremes.x.min[0].val:m.x,!0),m.y=r._yA.c2p(m.y===void 0?r._extremes.y.min[0].val:m.y,!0),b.x=r._xA.c2p(b.x===void 0?r._extremes.x.max[0].val:b.x,!0),b.y=r._yA.c2p(b.y===void 0?r._extremes.y.max[0].val:b.y,!0),e.call(wM,t,y,"linear",i.colorscale,"fill",m,b,!0,!1)}else p==="horizontal"&&(p=p+"reversed"),e.call(er.gradient,t,y,p,i.colorscale,"fill")}else r.fillcolor&&e.call(Aa.fill,r.fillcolor)}er.singleFillStyle=function(e,r){var t=ia.select(e.node()),a=t.data(),n=((a[0]||[])[0]||{}).trace||{};xM(e,n,r,!1)};er.fillGroupStyle=function(e,r,t){e.style("stroke-width",0).each(function(a){var n=ia.select(this);a[0].trace&&xM(n,a[0].trace,r,t)})};var uM=sM();er.symbolNames=[];er.symbolFuncs=[];er.symbolBackOffs=[];er.symbolNeedLines={};er.symbolNoDot={};er.symbolNoFill={};er.symbolList=[];Object.keys(uM).forEach(function(e){var r=uM[e],t=r.n;er.symbolList.push(t,String(t),e,t+100,String(t+100),e+"-open"),er.symbolNames[t]=e,er.symbolFuncs[t]=r.f,er.symbolBackOffs[t]=r.backoff||0,r.needLine&&(er.symbolNeedLines[t]=!0),r.noDot?er.symbolNoDot[t]=!0:er.symbolList.push(t+200,String(t+200),e+"-dot",t+300,String(t+300),e+"-open-dot"),r.noFill&&(er.symbolNoFill[t]=!0)});var GQ=er.symbolNames.length,UQ="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";er.symbolNumber=function(e){if(ns(e))e=+e;else if(typeof e=="string"){var r=0;e.indexOf("-open")>0&&(r=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(r+=200,e=e.replace("-dot","")),e=er.symbolNames.indexOf(e),e>=0&&(e+=r)}return e%100>=GQ||e>=400?0:Math.floor(Math.max(e,0))};function bM(e,r,t,a){var n=e%100;return er.symbolFuncs[n](r,t,a)+(e>=200?UQ:"")}var fM=PQ("~f"),_M={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};er.gradient=function(e,r,t,a,n,i){var l=_M[a];return wM(e,r,t,l.type,n,i,l.start,l.stop,!1,l.reversed)};function wM(e,r,t,a,n,i,l,o,s,u){var f=n.length,c;a==="linear"?c={node:"linearGradient",attrs:{x1:l.x,y1:l.y,x2:o.x,y2:o.y,gradientUnits:s?"userSpaceOnUse":"objectBoundingBox"},reversed:u}:a==="radial"&&(c={node:"radialGradient",reversed:u});for(var h=new Array(f),d=0;d=0&&e.i===void 0&&(e.i=i.i),r.style("opacity",a.selectedOpacityFn?a.selectedOpacityFn(e):e.mo===void 0?l.opacity:e.mo),a.ms2mrc){var s;e.ms==="various"||l.size==="various"?s=3:s=a.ms2mrc(e.ms),e.mrc=s,a.selectedSizeFn&&(s=e.mrc=a.selectedSizeFn(e));var u=er.symbolNumber(e.mx||l.symbol)||0;e.om=u%200>=100;var f=i2(e,t),c=n2(e,t);r.attr("d",bM(u,s,f,c))}var h=!1,d,p,y;if(e.so)y=o.outlierwidth,p=o.outliercolor,d=l.outliercolor;else{var m=(o||{}).width;y=(e.mlw+1||m+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?p=e.mlcc=a.lineScale(e.mlc):nt.isArrayOrTypedArray(o.color)?p=Aa.defaultLine:p=o.color,nt.isArrayOrTypedArray(l.color)&&(d=Aa.defaultLine,h=!0),"mc"in e?d=e.mcc=a.markerScale(e.mc):d=l.color||l.colors||"rgba(0,0,0,0)",a.selectedColorFn&&(d=a.selectedColorFn(e))}if(e.om)r.call(Aa.stroke,d).style({"stroke-width":(y||1)+"px",fill:"none"});else{r.style("stroke-width",(e.isBlank?0:y)+"px");var b=l.gradient,_=e.mgt;_?h=!0:_=b&&b.type,nt.isArrayOrTypedArray(_)&&(_=_[0],_M[_]||(_=0));var w=l.pattern,x=er.getPatternAttr,M=w&&(x(w.shape,e.i,"")||x(w.path,e.i,""));if(_&&_!=="none"){var k=e.mgc;k?h=!0:k=b.color;var A=t.uid;h&&(A+="-"+e.i),er.gradient(r,n,A,_,[[0,k],[1,d]],"fill")}else if(M){var C=!1,D=w.fgcolor;!D&&i&&i.color&&(D=i.color,C=!0);var E=x(D,e.i,i&&i.color||null),R=x(w.bgcolor,e.i,null),N=w.fgopacity,I=x(w.size,e.i,8),H=x(w.solidity,e.i,.3);C=C||e.mcc||nt.isArrayOrTypedArray(w.shape)||nt.isArrayOrTypedArray(w.path)||nt.isArrayOrTypedArray(w.bgcolor)||nt.isArrayOrTypedArray(w.fgcolor)||nt.isArrayOrTypedArray(w.size)||nt.isArrayOrTypedArray(w.solidity);var G=t.uid;C&&(G+="-"+e.i),er.pattern(r,"point",n,G,M,I,H,e.mcc,w.fillmode,R,E,N)}else nt.isArrayOrTypedArray(d)?Aa.fill(r,d[e.i]):Aa.fill(r,d);y&&Aa.stroke(r,p)}};er.makePointStyleFns=function(e){var r={},t=e.marker;return r.markerScale=er.tryColorscale(t,""),r.lineScale=er.tryColorscale(t,"line"),fd.traceIs(e,"symbols")&&(r.ms2mrc=IQ.isBubble(e)?HQ(e):function(){return(t.size||6)/2}),e.selectedpoints&&nt.extendFlat(r,er.makeSelectedPointStyleFns(e)),r};er.makeSelectedPointStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.marker||{},i=t.marker||{},l=a.marker||{},o=n.opacity,s=i.opacity,u=l.opacity,f=s!==void 0,c=u!==void 0;(nt.isArrayOrTypedArray(o)||f||c)&&(r.selectedOpacityFn=function(x){var M=x.mo===void 0?n.opacity:x.mo;return x.selected?f?s:M:c?u:gM*M});var h=n.color,d=i.color,p=l.color;(d||p)&&(r.selectedColorFn=function(x){var M=x.mcc||h;return x.selected?d||M:p||M});var y=n.size,m=i.size,b=l.size,_=m!==void 0,w=b!==void 0;return fd.traceIs(e,"symbols")&&(_||w)&&(r.selectedSizeFn=function(x){var M=x.mrc||y/2;return x.selected?_?m/2:M:w?b/2:M}),r};er.makeSelectedTextStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.textfont||{},i=t.textfont||{},l=a.textfont||{},o=n.color,s=i.color,u=l.color;return r.selectedTextColorFn=function(f){var c=f.tc||o;return f.selected?s||c:u||(s?c:Aa.addOpacity(c,gM))},r};er.selectedPointStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=er.makeSelectedPointStyleFns(r),a=r.marker||{},n=[];t.selectedOpacityFn&&n.push(function(i,l){i.style("opacity",t.selectedOpacityFn(l))}),t.selectedColorFn&&n.push(function(i,l){Aa.fill(i,t.selectedColorFn(l))}),t.selectedSizeFn&&n.push(function(i,l){var o=l.mx||a.symbol||0,s=t.selectedSizeFn(l);i.attr("d",bM(er.symbolNumber(o),s,i2(l,r),n2(l,r))),l.mrc2=s}),n.length&&e.each(function(i){for(var l=ia.select(this),o=0;o0?t:0}er.textPointStyle=function(e,r,t){if(e.size()){var a;if(r.selectedpoints){var n=er.makeSelectedTextStyleFns(r);a=n.selectedTextColorFn}var i=r.texttemplate,l=t._fullLayout;e.each(function(o){var s=ia.select(this),u=i?nt.extractOption(o,r,"txt","texttemplate"):nt.extractOption(o,r,"tx","text");if(!u&&u!==0){s.remove();return}if(i){var f=r._module.formatLabels,c=f?f(o,r,l):{},h={};OQ(h,r,o.i),u=nt.texttemplateString({data:[h,o,r._meta],fallback:r.texttemplatefallback,labels:c,locale:l._d3locale,template:u})}var d=o.tp||r.textposition,p=MM(o,r),y=a?a(o):o.tc||r.textfont.color;s.call(er.font,{family:o.tf||r.textfont.family,weight:o.tw||r.textfont.weight,style:o.ty||r.textfont.style,variant:o.tv||r.textfont.variant,textcase:o.tC||r.textfont.textcase,lineposition:o.tE||r.textfont.lineposition,shadow:o.tS||r.textfont.shadow,size:p,color:y}).text(u).call(cd.convertToTspans,t).call(TM,d,p,o.mrc)})}};er.selectedTextStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=er.makeSelectedTextStyleFns(r);e.each(function(a){var n=ia.select(this),i=t.selectedTextColorFn(a),l=a.tp||r.textposition,o=MM(a,r);Aa.fill(n,i);var s=fd.traceIs(r,"bar-like");TM(n,l,o,a.mrc2||a.mrc,s)})}};var cM=.5;er.smoothopen=function(e,r){if(e.length<3)return"M"+e.join("L");var t="M"+e[0],a=[],n;for(n=1;n=s||x>=f&&x<=s)&&(M<=c&&M>=u||M>=c&&M<=u)&&(e=[x,M])}return e}er.applyBackoff=qM;er.makeTester=function(){var e=nt.ensureSingleById(ia.select("body"),"svg","js-plotly-tester",function(t){t.attr(zQ.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),r=nt.ensureSingle(e,"path","js-reference-point",function(t){t.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});er.tester=e,er.testref=r};er.savedBBoxes={};var jg=0,ZQ=1e4;er.bBox=function(e,r,t){t||(t=vM(e));var a;if(t){if(a=er.savedBBoxes[t],a)return nt.extendFlat({},a)}else if(e.childNodes.length===1){var n=e.childNodes[0];if(t=vM(n),t){var i=+n.getAttribute("x")||0,l=+n.getAttribute("y")||0,o=n.getAttribute("transform");if(!o){var s=er.bBox(n,!1,t);return i&&(s.left+=i,s.right+=i),l&&(s.top+=l,s.bottom+=l),s}if(t+="~"+i+"~"+l+"~"+o,a=er.savedBBoxes[t],a)return nt.extendFlat({},a)}}var u,f;r?u=e:(f=er.tester.node(),u=e.cloneNode(!0),f.appendChild(u)),ia.select(u).attr("transform",null).call(cd.positionText,0,0);var c=u.getBoundingClientRect(),h=er.testref.node().getBoundingClientRect();r||f.removeChild(u);var d={height:c.height,width:c.width,left:c.left-h.left,top:c.top-h.top,right:c.right-h.left,bottom:c.bottom-h.top};return jg>=ZQ&&(er.savedBBoxes={},jg=0),t&&(er.savedBBoxes[t]=d),jg++,nt.extendFlat({},d)};function vM(e){var r=e.getAttribute("data-unformatted");if(r!==null)return r+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}er.setClipUrl=function(e,r,t){e.attr("clip-path",a2(r,t))};function a2(e,r){if(!e)return null;var t=r._context,a=t._exportedPlot?"":t._baseUrl||"";return a?"url('"+a+"#"+e+"')":"url(#"+e+")"}er.getTranslate=function(e){var r=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,l,o){return[l,o].join(" ")}).split(" ");return{x:+n[0]||0,y:+n[1]||0}};er.setTranslate=function(e,r,t){var a=/(\btranslate\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",l=e[n]("transform")||"";return r=r||0,t=t||0,l=l.replace(a,"").trim(),l+=Uc(r,t),l=l.trim(),e[i]("transform",l),l};er.getScale=function(e){var r=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,l,o){return[l,o].join(" ")}).split(" ");return{x:+n[0]||1,y:+n[1]||1}};er.setScale=function(e,r,t){var a=/(\bscale\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",l=e[n]("transform")||"";return r=r||1,t=t||1,l=l.replace(a,"").trim(),l+="scale("+r+","+t+")",l=l.trim(),e[i]("transform",l),l};var JQ=/\s*sc.*/;er.setPointGroupScale=function(e,r,t){if(r=r||1,t=t||1,!!e){var a=r===1&&t===1?"":"scale("+r+","+t+")";e.each(function(){var n=(this.getAttribute("transform")||"").replace(JQ,"");n+=a,n=n.trim(),this.setAttribute("transform",n)})}};var $Q=/translate\([^)]*\)\s*$/;er.setTextPointsScale=function(e,r,t){e&&e.each(function(){var a,n=ia.select(this),i=n.select("text");if(i.node()){var l=parseFloat(i.attr("x")||0),o=parseFloat(i.attr("y")||0),s=(n.attr("transform")||"").match($Q);r===1&&t===1?a=[]:a=[Uc(l,o),"scale("+r+","+t+")",Uc(-l,-o)],s&&a.push(s),n.attr("transform",a.join(""))}})};function n2(e,r){var t;return e&&(t=e.mf),t===void 0&&(t=r.marker&&r.marker.standoff||0),!r._geo&&!r._xA?-t:t}er.getMarkerStandoff=n2;var Gc=Math.atan2,rs=Math.cos,Ou=Math.sin;function hM(e,r){var t=r[0],a=r[1];return[t*rs(e)-a*Ou(e),t*Ou(e)+a*rs(e)]}var dM,pM,mM,yM,e2,r2;function i2(e,r){var t=e.ma;t===void 0&&(t=r.marker.angle,(!t||nt.isArrayOrTypedArray(t))&&(t=0));var a,n,i=r.marker.angleref;if(i==="previous"||i==="north"){if(r._geo){var l=r._geo.project(e.lonlat);a=l[0],n=l[1]}else{var o=r._xA,s=r._yA;if(o&&s)a=o.c2p(e.x),n=s.c2p(e.y);else return 90}if(r._geo){var u=e.lonlat[0],f=e.lonlat[1],c=r._geo.project([u,f+1e-5]),h=r._geo.project([u+1e-5,f]),d=Gc(h[1]-n,h[0]-a),p=Gc(c[1]-n,c[0]-a),y;if(i==="north")y=t/180*Math.PI;else if(i==="previous"){var m=u/180*Math.PI,b=f/180*Math.PI,_=dM/180*Math.PI,w=pM/180*Math.PI,x=_-m,M=rs(w)*Ou(x),k=Ou(w)*rs(b)-rs(w)*Ou(b)*rs(x);y=-Gc(M,k)-Math.PI,dM=u,pM=f}var A=hM(d,[rs(y),0]),C=hM(p,[Ou(y),0]);t=Gc(A[1]+C[1],A[0]+C[0])/Math.PI*180,i==="previous"&&!(r2===r.uid&&e.i===e2+1)&&(t=null)}if(i==="previous"&&!r._geo)if(r2===r.uid&&e.i===e2+1&&ns(a)&&ns(n)){var D=a-mM,E=n-yM,R=r.line&&r.line.shape||"",N=R.slice(R.length-1);N==="h"&&(E=0),N==="v"&&(D=0),t+=Gc(E,D)/Math.PI*180+90}else t=null}return mM=a,yM=n,e2=e.i,r2=r.uid,t}er.getMarkerAngle=i2});var Wc=B((Vge,EM)=>{"use strict";var Bu=kr(),KQ=zr(),QQ=Rt(),l2=gr(),is=Pe(),CM=is.strTranslate,vd=Yr(),hd=xr(),Yu=va(),LM=yu(),jQ=Ea().OPPOSITE_SIDE,DM=/ [XY][0-9]* /,o2=1.6,s2=1.6;function ej(e,r,t){var a=e._fullLayout,n=t.propContainer,i=t.propName,l=t.placeholder,o=t.traceIndex,s=t.avoid||{},u=t.attributes,f=t.transform,c=t.containerGroup,h=1,d=n.title,p=(d&&d.text?d.text:"").trim(),y=!1,m=d&&d.font?d.font:{},b=m.family,_=m.size,w=m.color,x=m.weight,M=m.style,k=m.variant,A=m.textcase,C=m.lineposition,D=m.shadow,E=t.subtitlePropName,R=!!E,N=t.subtitlePlaceholder,I=(n.title||{}).subtitle||{text:"",font:{}},H=(I.text||"").trim(),G=!1,W=1,V=I.font,O=V.family,Y=V.size,Z=V.color,J=V.weight,ee=V.style,le=V.variant,ue=V.textcase,ve=V.lineposition,j=V.shadow,qe;i==="title.text"?qe="titleText":i.indexOf("axis")!==-1?qe="axisTitleText":i.indexOf("colorbar")!==-1&&(qe="colorbarTitleText");var fe=e._context.edits[qe];function be(Be,Ue){return Be===void 0||Ue===void 0?!1:Be.replace(DM," % ")===Ue.replace(DM," % ")}p===""?h=0:be(p,l)&&(fe||(p=""),h=.2,y=!0),R&&(H===""?W=0:be(H,N)&&(fe||(H=""),W=.2,G=!0)),t._meta?p=is.templateString(p,t._meta):a._meta&&(p=is.templateString(p,a._meta));var ce=p||H||fe,xe;c||(c=is.ensureSingle(a._infolayer,"g","g-"+r),xe=a._hColorbarMoveTitle);var U=c.selectAll("text."+r).data(ce?[0]:[]);U.enter().append("text"),U.text(p).attr("class",r),U.exit().remove();var Q=null,X=r+"-subtitle",ge=H||fe;if(R&&(Q=c.selectAll("text."+X).data(ge?[0]:[]),Q.enter().append("text"),Q.text(H).attr("class",X),Q.exit().remove()),!ce)return c;function Te(Be,Ue){is.syncOrAsync([ye,ze],{title:Be,subtitle:Ue})}function ye(Be){var Ue=Be.title,Le=Be.subtitle,He;!f&&xe&&(f={}),f?(He="",f.rotate&&(He+="rotate("+[f.rotate,u.x,u.y]+")"),(f.offset||xe)&&(He+=CM(0,(f.offset||0)-(xe||0)))):He=null,Ue.attr("transform",He);function Ye(Ae){if(Ae){var Se=Bu.select(Ae.node().parentNode).select("."+X);if(!Se.empty()){var Oe=Ae.node().getBBox();if(Oe.height){var Je=Oe.y+Oe.height+o2*Y;Se.attr("y",Je)}}}}if(Ue.style("opacity",h*hd.opacity(w)).call(vd.font,{color:hd.rgb(w),size:Bu.round(_,2),family:b,weight:x,style:M,variant:k,textcase:A,shadow:D,lineposition:C}).attr(u).call(Yu.convertToTspans,e,Ye),Le&&!Le.empty()){var ie=c.select("."+r+"-math-group"),_e=Ue.node().getBBox(),$e=ie.node()?ie.node().getBBox():void 0,hr=$e?$e.y+$e.height+o2*Y:_e.y+_e.height+s2*Y,Re=is.extendFlat({},u,{y:hr});Le.attr("transform",He),Le.style("opacity",W*hd.opacity(Z)).call(vd.font,{color:hd.rgb(Z),size:Bu.round(Y,2),family:O,weight:J,style:ee,variant:le,textcase:ue,shadow:j,lineposition:ve}).attr(Re).call(Yu.convertToTspans,e)}return QQ.previousPromises(e)}function ze(Be){var Ue=Be.title,Le=Bu.select(Ue.node().parentNode);if(s&&s.selection&&s.side&&p){Le.attr("transform",null);var He=jQ[s.side],Ye=s.side==="left"||s.side==="top"?-1:1,ie=KQ(s.pad)?s.pad:2,_e=vd.bBox(Le.node()),$e={t:0,b:0,l:0,r:0},hr=e._fullLayout._reservedMargin;for(var Re in hr)for(var Ae in hr[Re]){var Se=hr[Re][Ae];$e[Ae]=Math.max($e[Ae],Se)}var Oe={left:$e.l,top:$e.t,right:a.width-$e.r,bottom:a.height-$e.b},Je=s.maxShift||Ye*(Oe[s.side]-_e[s.side]),We=0;if(Je<0)We=Je;else{var Xe=s.offsetLeft||0,lr=s.offsetTop||0;_e.left-=Xe,_e.right-=Xe,_e.top-=lr,_e.bottom-=lr,s.selection.each(function(){var Ke=vd.bBox(this);is.bBoxIntersect(_e,Ke,ie)&&(We=Math.max(We,Ye*(Ke[s.side]-_e[He])+ie))}),We=Math.min(Je,We),n._titleScoot=Math.abs(We)}if(We>0||Je<0){var tr={left:[-We,0],right:[We,0],top:[0,-We],bottom:[0,We]}[s.side];Le.attr("transform",CM(tr[0],tr[1]))}}}U.call(Te,Q);function Ie(Be,Ue){Be.text(Ue).on("mouseover.opacity",function(){Bu.select(this).transition().duration(LM.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){Bu.select(this).transition().duration(LM.HIDE_PLACEHOLDER).style("opacity",0)})}if(fe&&(p?U.on(".opacity",null):(Ie(U,l),y=!0),U.call(Yu.makeEditable,{gd:e}).on("edit",function(Be){o!==void 0?l2.call("_guiRestyle",e,i,Be,o):l2.call("_guiRelayout",e,i,Be)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Te)}).on("input",function(Be){this.text(Be||" ").call(Yu.positionText,u.x,u.y)}),R)){if(R&&!p){var Ee=U.node().getBBox(),Fe=Ee.y+Ee.height+s2*Y;Q.attr("y",Fe)}H?Q.on(".opacity",null):(Ie(Q,N),G=!0),Q.call(Yu.makeEditable,{gd:e}).on("edit",function(Be){l2.call("_guiRelayout",e,"title.subtitle.text",Be)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Te)}).on("input",function(Be){this.text(Be||" ").call(Yu.positionText,Q.attr("x"),Q.attr("y"))})}return U.classed("js-placeholder",y),Q&&!Q.empty()&&Q.classed("js-placeholder",G),c}EM.exports={draw:ej,SUBTITLE_PADDING_EM:s2,SUBTITLE_PADDING_MATHJAX_EM:o2}});var _d=B((Gge,FM)=>{"use strict";var rj=kr(),tj=hu().utcFormat,ot=Pe(),aj=ot.numberFormat,Oi=zr(),Xl=ot.cleanNumber,nj=ot.ms2DateTime,PM=ot.dateTime2ms,Bi=ot.ensureNumber,RM=ot.isArrayOrTypedArray,Zl=wt(),dd=Zl.FP_SAFE,mi=Zl.BADNUM,ij=Zl.LOG_CLIP,lj=Zl.ONEWEEK,pd=Zl.ONEDAY,md=Zl.ONEHOUR,zM=Zl.ONEMIN,NM=Zl.ONESEC,yd=Ut(),bd=Ma(),gd=bd.HOUR_PATTERN,xd=bd.WEEKDAY_PATTERN;function Xc(e){return Math.pow(10,e)}function u2(e){return e!=null}FM.exports=function(r,t){t=t||{};var a=r._id||"x",n=a.charAt(0);function i(x,M){if(x>0)return Math.log(x)/Math.LN10;if(x<=0&&M&&r.range&&r.range.length===2){var k=r.range[0],A=r.range[1];return .5*(k+A-2*ij*Math.abs(k-A))}else return mi}function l(x,M,k,A){if((A||{}).msUTC&&Oi(x))return+x;var C=PM(x,k||r.calendar);if(C===mi)if(Oi(x)){x=+x;var D=Math.floor(ot.mod(x+.05,1)*10),E=Math.round(x-D/10);C=PM(new Date(E))+D/10}else return mi;return C}function o(x,M,k){return nj(x,M,k||r.calendar)}function s(x){return r._categories[Math.round(x)]}function u(x){if(u2(x)){if(r._categoriesMap===void 0&&(r._categoriesMap={}),r._categoriesMap[x]!==void 0)return r._categoriesMap[x];r._categories.push(typeof x=="number"?String(x):x);var M=r._categories.length-1;return r._categoriesMap[x]=M,M}return mi}function f(x,M){for(var k=new Array(M),A=0;Ar.range[1]&&(k=!k);for(var A=k?-1:1,C=A*x,D=0,E=0;EN)D=E+1;else{D=C<(R+N)/2?E:E+1;break}}var I=r._B[D]||0;return isFinite(I)?p(x,r._m2,I):0},b=function(x){var M=r._rangebreaks.length;if(!M)return y(x,r._m,r._b);for(var k=0,A=0;Ar._rangebreaks[A].pmax&&(k=A+1);return y(x,r._m2,r._B[k])}}r.c2l=r.type==="log"?i:Bi,r.l2c=r.type==="log"?Xc:Bi,r.l2p=m,r.p2l=b,r.c2p=r.type==="log"?function(x,M){return m(i(x,M))}:m,r.p2c=r.type==="log"?function(x){return Xc(b(x))}:b,["linear","-"].indexOf(r.type)!==-1?(r.d2r=r.r2d=r.d2c=r.r2c=r.d2l=r.r2l=Xl,r.c2d=r.c2r=r.l2d=r.l2r=Bi,r.d2p=r.r2p=function(x){return r.l2p(Xl(x))},r.p2d=r.p2r=b,r.cleanPos=Bi):r.type==="log"?(r.d2r=r.d2l=function(x,M){return i(Xl(x),M)},r.r2d=r.r2c=function(x){return Xc(Xl(x))},r.d2c=r.r2l=Xl,r.c2d=r.l2r=Bi,r.c2r=i,r.l2d=Xc,r.d2p=function(x,M){return r.l2p(r.d2r(x,M))},r.p2d=function(x){return Xc(b(x))},r.r2p=function(x){return r.l2p(Xl(x))},r.p2r=b,r.cleanPos=Bi):r.type==="date"?(r.d2r=r.r2d=ot.identity,r.d2c=r.r2c=r.d2l=r.r2l=l,r.c2d=r.c2r=r.l2d=r.l2r=o,r.d2p=r.r2p=function(x,M,k){return r.l2p(l(x,0,k))},r.p2d=r.p2r=function(x,M,k){return o(b(x),M,k)},r.cleanPos=function(x){return ot.cleanDate(x,mi,r.calendar)}):r.type==="category"?(r.d2c=r.d2l=u,r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=h,r.r2c=function(x){var M=d(x);return M!==void 0?M:r.fraction2r(.5)},r.l2r=r.c2r=Bi,r.r2l=d,r.d2p=function(x){return r.l2p(r.r2c(x))},r.p2d=function(x){return s(b(x))},r.r2p=r.d2p,r.p2r=b,r.cleanPos=function(x){return typeof x=="string"&&x!==""?x:Bi(x)}):r.type==="multicategory"&&(r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=h,r.r2c=function(x){var M=h(x);return M!==void 0?M:r.fraction2r(.5)},r.r2c_just_indices=c,r.l2r=r.c2r=Bi,r.r2l=h,r.d2p=function(x){return r.l2p(r.r2c(x))},r.p2d=function(x){return s(b(x))},r.r2p=r.d2p,r.p2r=b,r.cleanPos=function(x){return Array.isArray(x)||typeof x=="string"&&x!==""?x:Bi(x)},r.setupMultiCategory=function(x){var M=r._traceIndices,k,A,C=r._matchGroup;if(C&&r._categories.length===0){for(var D in C)if(D!==a){var E=t[yd.id2name(D)];M=M.concat(E._traceIndices)}}var R=[[0,{}],[0,{}]],N=[];for(k=0;kE[1]&&(A[D?0:1]=k),A[0]===A[1]){var R=r.l2r(M),N=r.l2r(k);if(M!==void 0){var I=R+1;k!==void 0&&(I=Math.min(I,N)),A[D?1:0]=I}if(k!==void 0){var H=N+1;M!==void 0&&(H=Math.max(H,R)),A[D?0:1]=H}}}},r.cleanRange=function(x,M){r._cleanRange(x,M),r.limitRange(x)},r._cleanRange=function(x,M){M||(M={}),x||(x="range");var k=ot.nestedProperty(r,x).get(),A,C;if(r.type==="date"?C=ot.dfltRange(r.calendar):n==="y"?C=bd.DFLTRANGEY:r._name==="realaxis"?C=[0,1]:C=M.dfltRange||bd.DFLTRANGEX,C=C.slice(),(r.rangemode==="tozero"||r.rangemode==="nonnegative")&&(C[0]=0),!k||k.length!==2){ot.nestedProperty(r,x).set(C);return}var D=k[0]===null,E=k[1]===null;for(r.type==="date"&&!r.autorange&&(k[0]=ot.cleanDate(k[0],mi,r.calendar),k[1]=ot.cleanDate(k[1],mi,r.calendar)),A=0;A<2;A++)if(r.type==="date"){if(!ot.isDateTime(k[A],r.calendar)){r[x]=C;break}if(r.r2l(k[0])===r.r2l(k[1])){var R=ot.constrain(r.r2l(k[0]),ot.MIN_MS+1e3,ot.MAX_MS-1e3);k[0]=r.l2r(R-1e3),k[1]=r.l2r(R+1e3);break}}else{if(!Oi(k[A]))if(!(D||E)&&Oi(k[1-A]))k[A]=k[1-A]*(A?10:.1);else{r[x]=C;break}if(k[A]<-dd?k[A]=-dd:k[A]>dd&&(k[A]=dd),k[0]===k[1]){var N=Math.max(1,Math.abs(k[0]*1e-6));k[0]-=N,k[1]+=N}}},r.setScale=function(x){var M=t._size;if(r.overlaying){var k=yd.getFromId({_fullLayout:t},r.overlaying);r.domain=k.domain}var A=x&&r._r?"_r":"range",C=r.calendar;r.cleanRange(A);var D=r.r2l(r[A][0],C),E=r.r2l(r[A][1],C),R=n==="y";if(R?(r._offset=M.t+(1-r.domain[1])*M.h,r._length=M.h*(r.domain[1]-r.domain[0]),r._m=r._length/(D-E),r._b=-r._m*E):(r._offset=M.l+r.domain[0]*M.w,r._length=M.w*(r.domain[1]-r.domain[0]),r._m=r._length/(E-D),r._b=-r._m*D),r._rangebreaks=[],r._lBreaks=0,r._m2=0,r._B=[],r.rangebreaks){var N,I;if(r._rangebreaks=r.locateBreaks(Math.min(D,E),Math.max(D,E)),r._rangebreaks.length){for(N=0;NE&&(H=!H),H&&r._rangebreaks.reverse();var G=H?-1:1;for(r._m2=G*r._length/(Math.abs(E-D)-r._lBreaks),r._B.push(-r._m2*(R?E:D)),N=0;NC&&(C+=7,DC&&(C+=24,D=A&&D=A&&x=j.min&&(eej.max&&(j.max=le),ue=!1)}ue&&E.push({min:ee,max:le})}};for(k=0;k{"use strict";var IM=zr(),f2=Pe(),oj=wt().BADNUM,wd=f2.isArrayOrTypedArray,sj=f2.isDateTime,uj=f2.cleanNumber,HM=Math.round;BM.exports=function(r,t,a){var n=r,i=a.noMultiCategory;if(wd(n)&&!n.length)return"-";if(!i&&dj(n))return"multicategory";if(i&&Array.isArray(n[0])){for(var l=[],o=0;oi*2}function OM(e){return Math.max(1,(e-1)/1e3)}function hj(e,r){for(var t=e.length,a=OM(t),n=0,i=0,l={},o=0;on*2}function dj(e){return wd(e[0])&&wd(e[1])}});var Zc=B((Wge,JM)=>{"use strict";var pj=kr(),UM=zr(),Jl=Pe(),Td=wt().FP_SAFE,mj=gr(),yj=Yr(),WM=Ut(),gj=WM.getFromId,xj=WM.isLinked;JM.exports={applyAutorangeOptions:ZM,getAutoRange:v2,makePadFn:h2,doAutoRange:_j,findExtremes:wj,concatExtremes:m2};function v2(e,r){var t,a,n=[],i=e._fullLayout,l=h2(i,r,0),o=h2(i,r,1),s=m2(e,r),u=s.min,f=s.max;if(u.length===0||f.length===0)return Jl.simpleMap(r.range,r.r2l);var c=u[0].val,h=f[0].val;for(t=1;t0&&(E=w-l(k)-o(A),E>x?R/E>M&&(C=k,D=A,M=R/E):R/w>M&&(C={val:k.val,nopad:1},D={val:A.val,nopad:1},M=R/w));function N(V,O){return Math.max(V,o(O))}if(c===h){var I=c-1,H=c+1;if(b)if(c===0)n=[0,1];else{var G=(c>0?f:u).reduce(N,0),W=c/(1-Math.min(.5,G/w));n=c>0?[0,W]:[W,0]}else _?n=[Math.max(0,I),Math.max(1,H)]:n=[I,H]}else b?(C.val>=0&&(C={val:0,nopad:1}),D.val<=0&&(D={val:0,nopad:1})):_&&(C.val-M*l(C)<0&&(C={val:0,nopad:1}),D.val<=0&&(D={val:1,nopad:1})),M=(D.val-C.val-YM(r,k.val,A.val))/(w-l(C)-o(D)),n=[C.val-M*l(C),D.val+M*o(D)];return n=ZM(n,r),r.limitRange&&r.limitRange(),p&&n.reverse(),Jl.simpleMap(n,r.l2r||Number)}function YM(e,r,t){var a=0;if(e.rangebreaks)for(var n=e.locateBreaks(r,t),i=0;i0?t.ppadplus:t.ppadminus)||t.ppad||0),k=x((e._m>0?t.ppadminus:t.ppadplus)||t.ppad||0),A=x(t.vpadplus||t.vpad),C=x(t.vpadminus||t.vpad);if(!u){if(_=1/0,w=-1/0,s)for(c=0;c0&&(_=h),h>w&&h-Td&&(_=h),h>w&&h=R;c--)E(c);return{min:a,max:n,opts:t}}function d2(e,r,t,a){XM(e,r,t,a,Tj)}function p2(e,r,t,a){XM(e,r,t,a,Mj)}function XM(e,r,t,a,n){for(var i=a.tozero,l=a.extrapad,o=!0,s=0;s=t&&(u.extrapad||!l)){o=!1;break}else n(r,u.val)&&u.pad<=t&&(l||!u.extrapad)&&(e.splice(s,1),s--)}if(o){var f=i&&r===0;e.push({val:r,pad:f?0:t,extrapad:f?!1:l})}}function GM(e){return UM(e)&&Math.abs(e)=r}function Aj(e,r){var t=r.autorangeoptions;return t&&t.minallowed!==void 0&&Md(r,t.minallowed,t.maxallowed)?t.minallowed:t&&t.clipmin!==void 0&&Md(r,t.clipmin,t.clipmax)?Math.max(e,r.d2l(t.clipmin)):e}function kj(e,r){var t=r.autorangeoptions;return t&&t.maxallowed!==void 0&&Md(r,t.minallowed,t.maxallowed)?t.maxallowed:t&&t.clipmax!==void 0&&Md(r,t.clipmin,t.clipmax)?Math.min(e,r.d2l(t.clipmax)):e}function Md(e,r,t){return r!==void 0&&t!==void 0?(r=e.d2l(r),t=e.d2l(t),r=s&&(i=s,t=s),l<=s&&(l=s,a=s)}}return t=Aj(t,r),a=kj(a,r),[t,a]}});var Zr=B((Xge,gA)=>{"use strict";var Yn=kr(),Xt=zr(),Vu=Rt(),$c=gr(),br=Pe(),Gu=br.strTranslate,ls=va(),qj=Wc(),Kc=xr(),Tn=Yr(),Sj=_n(),$M=Fg(),ka=wt(),Cj=ka.ONEMAXYEAR,qd=ka.ONEAVGYEAR,Sd=ka.ONEMINYEAR,Lj=ka.ONEMAXQUARTER,b2=ka.ONEAVGQUARTER,Cd=ka.ONEMINQUARTER,Dj=ka.ONEMAXMONTH,Uu=ka.ONEAVGMONTH,Ld=ka.ONEMINMONTH,Mn=ka.ONEWEEK,Ya=ka.ONEDAY,$l=Ya/2,Vi=ka.ONEHOUR,Qc=ka.ONEMIN,Dd=ka.ONESEC,Ej=ka.ONEMILLI,Pj=ka.ONEMICROSEC,os=ka.MINUS_SIGN,Pd=ka.BADNUM,_2={K:"zeroline"},w2={K:"gridline",L:"path"},T2={K:"minor-gridline",L:"path"},oA={K:"tick",L:"path"},KM={K:"tick",L:"text"},QM={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},Rd=Ea(),Jc=Rd.MID_SHIFT,ss=Rd.CAP_SHIFT,jc=Rd.LINE_SPACING,Rj=Rd.OPPOSITE_SIDE,Ed=3,Ge=gA.exports={};Ge.setConvert=_d();var zj=c2(),vl=Ut(),Nj=vl.idSort,Fj=vl.isLinked;Ge.id2name=vl.id2name;Ge.name2id=vl.name2id;Ge.cleanId=vl.cleanId;Ge.list=vl.list;Ge.listIds=vl.listIds;Ge.getFromId=vl.getFromId;Ge.getFromTrace=vl.getFromTrace;var sA=Zc();Ge.getAutoRange=sA.getAutoRange;Ge.findExtremes=sA.findExtremes;var Ij=1e-4;function q2(e){var r=(e[1]-e[0])*Ij;return[e[0]-r,e[1]+r]}Ge.coerceRef=function(e,r,t,a,n,i){var l=a.charAt(a.length-1),o=t._fullLayout._subplots[l+"axis"],s=a+"ref",u={};return n||(n=o[0]||(typeof i=="string"?i:i[0])),i||(i=n),o=o.concat(o.map(function(f){return f+" domain"})),u[s]={valType:"enumerated",values:o.concat(i?typeof i=="string"?[i]:i:[]),dflt:n},br.coerce(e,r,u,s)};Ge.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};Ge.coercePosition=function(e,r,t,a,n,i){var l,o,s=Ge.getRefType(a);if(s!=="range")l=br.ensureNumber,o=t(n,i);else{var u=Ge.getFromId(r,a);i=u.fraction2r(i),o=t(n,i),l=u.cleanPos}e[n]=l(o)};Ge.cleanPosition=function(e,r,t){var a=t==="paper"||t==="pixel"?br.ensureNumber:Ge.getFromId(r,t).cleanPos;return a(e)};Ge.redrawComponents=function(e,r){r=r||Ge.listIds(e);var t=e._fullLayout;function a(n,i,l,o){for(var s=$c.getComponentMethod(n,i),u={},f=0;f2e-6||((t-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};Ge.saveRangeInitial=function(e,r){for(var t=Ge.list(e,"",!0),a=!1,n=0;nc*.3||u(a)||u(n))){var h=t.dtick/2;e+=e+hl){var o=Number(t.slice(1));i.exactYears>l&&o%12===0?e=Ge.tickIncrement(e,"M6","reverse")+Ya*1.5:i.exactMonths>l?e=Ge.tickIncrement(e,"M1","reverse")+Ya*15.5:e-=$l;var s=Ge.tickIncrement(e,t);if(s<=a)return s}return e}Ge.prepMinorTicks=function(e,r,t){if(!r.minor.dtick){delete e.dtick;var a=r.dtick&&Xt(r._tmin),n;if(a){var i=Ge.tickIncrement(r._tmin,r.dtick,!0);n=[r._tmin,i*.99+r._tmin*.01]}else{var l=br.simpleMap(r.range,r.r2l);n=[l[0],.8*l[0]+.2*l[1]]}if(e.range=br.simpleMap(n,r.l2r),e._isMinor=!0,Ge.prepTicks(e,t),a){var o=Xt(r.dtick),s=Xt(e.dtick),u=o?r.dtick:+r.dtick.substring(1),f=s?e.dtick:+e.dtick.substring(1);o&&s?y2(u,f)?u===2*Mn&&f===2*Ya&&(e.dtick=Mn):u===2*Mn&&f===3*Ya?e.dtick=Mn:u===Mn&&!(r._input.minor||{}).nticks?e.dtick=Ya:rA(u/f,2.5)?e.dtick=u/2:e.dtick=u:String(r.dtick).charAt(0)==="M"?s?e.dtick="M1":y2(u,f)?u>=12&&f===2&&(e.dtick="M3"):e.dtick=r.dtick:String(e.dtick).charAt(0)==="L"?String(r.dtick).charAt(0)==="L"?y2(u,f)||(e.dtick=rA(u/f,2.5)?r.dtick/2:r.dtick):e.dtick="D1":e.dtick==="D2"&&+r.dtick>1&&(e.dtick=1)}e.range=r.range}r.minor._tick0Init===void 0&&(e.tick0=r.tick0)};function y2(e,r){return Math.abs((e/r+.5)%1-.5)<.001}function rA(e,r){return Math.abs(e/r-1)<.001}Ge.prepTicks=function(e,r){var t=br.simpleMap(e.range,e.r2l,void 0,void 0,r);if(e.tickmode==="auto"||!e.dtick){var a=e.nticks,n;a||(e.type==="category"||e.type==="multicategory"?(n=e.tickfont?br.bigFont(e.tickfont.size||12):15,a=e._length/n):(n=e._id.charAt(0)==="y"?40:80,a=br.constrain(e._length/n,4,9)+1),e._name==="radialaxis"&&(a*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(a*=100),e._roughDTick=Math.abs(t[1]-t[0])/a,Ge.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(i=a-1,l=a):(i=a,l=a);var o=e[i].value,s=e[l].value,u=Math.abs(s-o),f=t||u,c=0;f>=Sd?u>=Sd&&u<=Cj?c=u:c=qd:t===b2&&f>=Cd?u>=Cd&&u<=Lj?c=u:c=b2:f>=Ld?u>=Ld&&u<=Dj?c=u:c=Uu:t===Mn&&f>=Mn?c=Mn:f>=Ya?c=Ya:t===$l&&f>=$l?c=$l:t===Vi&&f>=Vi&&(c=Vi);var h;c>=u&&(c=u,h=!0);var d=n+c;if(r.rangebreaks&&c>0){for(var p=84,y=0,m=0;mMn&&(c=u)}(c>0||a===0)&&(e[a].periodX=n+c/2)}}Ge.calcTicks=function(r,t){for(var a=r.type,n=r.calendar,i=r.ticklabelstep,l=r.ticklabelmode==="period",o=r.range[0]>r.range[1],s=!r.ticklabelindex||br.isArrayOrTypedArray(r.ticklabelindex)?r.ticklabelindex:[r.ticklabelindex],u=br.simpleMap(r.range,r.r2l,void 0,void 0,t),f=u[1]=(w?0:1);x--){var M=!x;x?(r._dtickInit=r.dtick,r._tick0Init=r.tick0):(r.minor._dtickInit=r.minor.dtick,r.minor._tick0Init=r.minor.tick0);var k=x?r:br.extendFlat({},r,r.minor);if(M?Ge.prepMinorTicks(k,r,t):Ge.prepTicks(k,t),k.tickmode==="array"){x?(m=[],p=tA(r,!M)):(b=[],y=tA(r,!M));continue}if(k.tickmode==="sync"){m=[],p=Gj(r);continue}var A=q2(u),C=A[0],D=A[1],E=Xt(k.dtick),R=a==="log"&&!(E||k.dtick.charAt(0)==="L"),N=Ge.tickFirst(k,t);if(x){if(r._tmin=N,N=D:H<=D;H=Ge.tickIncrement(H,V,f,n)){if(x&&G++,k.rangebreaks&&!f){if(H=h)break}if(m.length>d||H===I)break;I=H;var O={value:H};x?(R&&H!==(H|0)&&(O.simpleLabel=!0),i>1&&G%i&&(O.skipLabel=!0),m.push(O)):(O.minor=!0,b.push(O))}}if(!b||b.length<2)s=!1;else{var Y=(b[1].value-b[0].value)*(o?-1:1);pee(Y,r.tickformat)||(s=!1)}if(!s)_=m;else{var Z=m.concat(b);l&&m.length&&(Z=Z.slice(1)),Z=Z.sort(function(Fe,Be){return Fe.value-Be.value}).filter(function(Fe,Be,Ue){return Be===0||Fe.value!==Ue[Be-1].value});var J=Z.map(function(Fe,Be){return Fe.minor===void 0&&!Fe.skipLabel?Be:null}).filter(function(Fe){return Fe!==null});J.forEach(function(Fe){s.map(function(Be){var Ue=Fe+Be;Ue>=0&&Ue-1;ce--){if(m[ce].drop){m.splice(ce,1);continue}m[ce].value=x2(m[ce].value,r);var X=r.c2p(m[ce].value);(xe?Q>X-U:Qh||Leh&&(Ue.periodX=h),Len&&hqd)r/=qd,a=n(10),e.dtick="M"+12*Yi(r,a,Ad);else if(i>Uu)r/=Uu,e.dtick="M"+Yi(r,1,aA);else if(i>Ya){if(e.dtick=Yi(r,Ya,e._hasDayOfWeekBreaks?[1,2,7,14]:Uj),!t){var l=Ge.getTickFormat(e),o=e.ticklabelmode==="period";o&&(e._rawTick0=e.tick0),/%[uVW]/.test(l)?e.tick0=br.dateTick0(e.calendar,2):e.tick0=br.dateTick0(e.calendar,1),o&&(e._dowTick0=e.tick0)}}else i>Vi?e.dtick=Yi(r,Vi,aA):i>Qc?e.dtick=Yi(r,Qc,nA):i>Dd?e.dtick=Yi(r,Dd,nA):(a=n(10),e.dtick=Yi(r,a,Ad))}else if(e.type==="log"){e.tick0=0;var s=br.simpleMap(e.range,e.r2l);if(e._isMinor&&(r*=1.5),r>.7)e.dtick=Math.ceil(r);else if(Math.abs(s[1]-s[0])<1){var u=1.5*Math.abs((s[1]-s[0])/r);r=Math.abs(Math.pow(10,s[1])-Math.pow(10,s[0]))/u,a=n(10),e.dtick="L"+Yi(r,a,Ad)}else e.dtick=r>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(r,1))):D2(e)?(e.tick0=0,a=1,e.dtick=Yi(r,a,Wj)):(e.tick0=0,a=n(10),e.dtick=Yi(r,a,Ad));if(e.dtick===0&&(e.dtick=1),!Xt(e.dtick)&&typeof e.dtick!="string"){var f=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(f)}};function vA(e){var r=e.dtick;if(e._tickexponent=0,!Xt(r)&&typeof r!="string"&&(r=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var t=e.r2l(e.tick0),a=e.l2r(t).replace(/(^-|i)/g,""),n=a.length;if(String(r).charAt(0)==="M")n>10||a.slice(5)!=="01-01"?e._tickround="d":e._tickround=+r.slice(1)%12===0?"y":"m";else if(r>=Ya&&n<=10||r>=Ya*15)e._tickround="d";else if(r>=Qc&&n<=16||r>=Vi)e._tickround="M";else if(r>=Dd&&n<=19||r>=Qc)e._tickround="S";else{var i=e.l2r(t+r).replace(/^-/,"").length;e._tickround=Math.max(n,i)-20,e._tickround<0&&(e._tickround=4)}}else if(Xt(r)||r.charAt(0)==="L"){var l=e.range.map(e.r2d||Number);Xt(r)||(r=Number(r.slice(1))),e._tickround=2-Math.floor(Math.log(r)/Math.LN10+.01);var o=Math.max(Math.abs(l[0]),Math.abs(l[1])),s=Math.floor(Math.log(o)/Math.LN10+.01),u=e.minexponent===void 0?3:e.minexponent;Math.abs(s)>u&&(Wu(e.exponentformat)&&e.exponentformat!=="SI extended"&&!S2(s)||Wu(e.exponentformat)&&e.exponentformat==="SI extended"&&!C2(s)?e._tickexponent=3*Math.round((s-1)/3):e._tickexponent=s)}else e._tickround=null}Ge.tickIncrement=function(e,r,t,a){var n=t?-1:1;if(Xt(r))return br.increment(e,n*r);var i=r.charAt(0),l=n*Number(r.slice(1));if(i==="M")return br.incrementMonth(e,l,a);if(i==="L")return Math.log(Math.pow(10,e)+l)/Math.LN10;if(i==="D"){var o=r==="D2"?cA:fA,s=e+n*.01,u=br.roundUp(br.mod(s,1),o,t);return Math.floor(s)+Math.log(Yn.round(Math.pow(10,u),1))/Math.LN10}throw"unrecognized dtick "+String(r)};Ge.tickFirst=function(e,r){var t=e.r2l||Number,a=br.simpleMap(e.range,t,void 0,void 0,r),n=a[1]=0&&b<=e._length?m:null};if(i&&br.isArrayOrTypedArray(e.ticktext)){var c=br.simpleMap(e.range,e.r2l),h=(Math.abs(c[1]-c[0])-(e._lBreaks||0))/1e4;for(u=0;u"+o;else{var u=rv(e),f=e._trueSide||e.side;(!u&&f==="top"||u&&f==="bottom")&&(l+="
")}r.text=l}function Zj(e,r,t,a,n){var i=e.dtick,l=r.x,o=e.tickformat,s=typeof i=="string"&&i.charAt(0);if(n==="never"&&(n=""),a&&s!=="L"&&(i="L3",s="L"),o||s==="L")r.text=ev(Math.pow(10,l),e,n,a);else if(Xt(i)||s==="D"&&(e.minorloglabels==="complete"||br.mod(l+.01,1)<.1)){var u;e.minorloglabels==="complete"&&!(br.mod(l+.01,1)<.1)&&(u=!0,r.fontSize*=.75);var f=Math.pow(10,l).toExponential(0),c=f.split("e"),h=+c[1],d=Math.abs(h),p=e.exponentformat;p==="power"||Wu(p)&&p!=="SI extended"&&S2(h)||Wu(p)&&p==="SI extended"&&C2(h)?(r.text=c[0],d>0&&(r.text+="x10"),r.text==="1x10"&&(r.text="10"),h!==0&&h!==1&&(r.text+=""+(h>0?"":os)+d+""),r.fontSize*=1.25):(p==="e"||p==="E")&&d>2?r.text=c[0]+p+(h>0?"+":os)+d:(r.text=ev(Math.pow(10,l),e,"","fakehover"),i==="D1"&&e._id.charAt(0)==="y"&&(r.dy-=r.fontSize/6))}else if(s==="D")r.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,br.mod(l,1)))),r.fontSize*=.75;else throw"unrecognized dtick "+String(i);if(e.dtick==="D1"){var y=String(r.text).charAt(0);(y==="0"||y==="1")&&(e._id.charAt(0)==="y"?r.dx-=r.fontSize/4:(r.dy+=r.fontSize/2,r.dx+=(e.range[1]>e.range[0]?1:-1)*r.fontSize*(l<0?.5:.25)))}}function Jj(e,r){var t=e._categories[Math.round(r.x)];t===void 0&&(t=""),r.text=String(t)}function $j(e,r,t){var a=Math.round(r.x),n=e._categories[a]||[],i=n[1]===void 0?"":String(n[1]),l=n[0]===void 0?"":String(n[0]);t?r.text=l+" - "+i:(r.text=i,r.text2=l)}function Kj(e,r,t,a,n){n==="never"?n="":e.showexponent==="all"&&Math.abs(r.x/e.dtick)<1e-6&&(n="hide"),r.text=ev(r.x,e,n,a)}function Qj(e,r,t,a,n){if(e.thetaunit==="radians"&&!t){var i=r.x/180;if(i===0)r.text="0";else{var l=jj(i);if(l[1]>=100)r.text=ev(br.deg2rad(r.x),e,n,a);else{var o=r.x<0;l[1]===1?l[0]===1?r.text="\u03C0":r.text=l[0]+"\u03C0":r.text=["",l[0],"","\u2044","",l[1],"","\u03C0"].join(""),o&&(r.text=os+r.text)}}}else r.text=ev(r.x,e,n,a)}function jj(e){function r(o,s){return Math.abs(o-s)<=1e-6}function t(o,s){return r(s,0)?o:t(s,o%s)}function a(o){for(var s=1;!r(Math.round(o*s)/s,o);)s*=10;return s}var n=a(e),i=e*n,l=Math.abs(t(i,n));return[Math.round(i/l),Math.round(n/l)]}var dA=["f","p","n","\u03BC","m","","k","M","G","T"],eee=["q","r","y","z","a",...dA,"P","E","Z","Y","R","Q"],Wu=e=>["SI","SI extended","B"].includes(e);function S2(e){return e>14||e<-15}function C2(e){return e>32||e<-30}function ree(e,r){return Wu(r)?!!(r==="SI extended"&&C2(e)||r!=="SI extended"&&S2(e)):!1}function ev(e,r,t,a){var n=e<0,i=r._tickround,l=t||r.exponentformat||"B",o=r._tickexponent,s=Ge.getTickFormat(r),u=r.separatethousands;if(a){var f={exponentformat:l,minexponent:r.minexponent,dtick:r.showexponent==="none"?r.dtick:Xt(e)&&Math.abs(e)||1,range:r.showexponent==="none"?r.range.map(r.r2d):[0,e||1]};vA(f),i=(Number(f._tickround)||0)+4,o=f._tickexponent,r.hoverformat&&(s=r.hoverformat)}if(s)return r._numFormat(s)(e).replace(/-/g,os);var c=Math.pow(10,-i)/2;if(l==="none"&&(o=0),e=Math.abs(e),e"+p+"":l==="B"&&o===9?e+="B":Wu(l)&&(e+=l==="SI extended"?eee[o/3+10]:dA[o/3+5])}return n?os+e:e}Ge.getTickFormat=function(e){var r;function t(s){return typeof s!="string"?s:Number(s.replace("M",""))*Uu}function a(s,u){var f=["L","D"];if(typeof s==typeof u){if(typeof s=="number")return s-u;var c=f.indexOf(s.charAt(0)),h=f.indexOf(u.charAt(0));return c===h?Number(s.replace(/(L|D)/g,""))-Number(u.replace(/(L|D)/g,"")):c-h}else return typeof s=="number"?1:-1}function n(s,u,f){var c=f||function(p){return p},h=u[0],d=u[1];return(!h&&typeof h!="number"||c(h)<=c(s))&&(!d&&typeof d!="number"||c(d)>=c(s))}function i(s,u){var f=u[0]===null,c=u[1]===null,h=a(s,u[0])>=0,d=a(s,u[1])<=0;return(f||h)&&(c||d)}var l,o;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(r=0;r=0&&n.unshift(n.splice(f,1).shift())}});var o={false:{left:0,right:0}};return br.syncOrAsync(n.map(function(s){return function(){if(s){var u=Ge.getFromId(e,s);t||(t={}),t.axShifts=o,t.overlayingShiftedAx=l;var f=Ge.drawOne(e,u,t);return u._shiftPusher&&k2(u,u._fullDepth||0,o,!0),u._r=u.range.slice(),u._rl=br.simpleMap(u._r,u.r2l),f}}}))};Ge.drawOne=function(e,r,t){t=t||{};var a=t.axShifts||{},n=t.overlayingShiftedAx||[],i,l,o;r.setScale();var s=e._fullLayout,u=r._id,f=u.charAt(0),c=Ge.counterLetter(u),h=s._plots[r._mainSubplot],d=r.zerolinelayer==="above traces";if(!h)return;if(r._shiftPusher=r.autoshift||n.indexOf(r._id)!==-1||n.indexOf(r.overlaying)!==-1,r._shiftPusher&r.anchor==="free"){var p=r.linewidth/2||0;r.ticks==="inside"&&(p+=r.ticklen),k2(r,p,a,!0),k2(r,r.shift||0,a,!1)}(t.skipTitle!==!0||r._shift===void 0)&&(r._shift=dee(r,a));var y=h[f+"axislayer"],m=r._mainLinePosition,b=m+=r._shift,_=r._mainMirrorPosition,w=r._vals=Ge.calcTicks(r),x=[r.mirror,b,_].join("_");for(i=0;i0?Le.bottom-Be:0,Ue))));var _e=0,$e=0;if(r._shiftPusher&&(_e=Math.max(Ue,Le.height>0?Ee==="l"?Be-Le.left:Le.right-Be:0),r.title.text!==s._dfltTitle[f]&&($e=(r._titleStandoff||0)+(r._titleScoot||0),Ee==="l"&&($e+=lA(r))),r._fullDepth=Math.max(_e,$e)),r.automargin){He={x:0,y:0,r:0,l:0,t:0,b:0};var hr=[0,1],Re=typeof r._shift=="number"?r._shift:0;if(f==="x"){if(Ee==="b"?He[Ee]=r._depth:(He[Ee]=r._depth=Math.max(Le.width>0?Be-Le.top:0,Ue),hr.reverse()),Le.width>0){var Ae=Le.right-(r._offset+r._length);Ae>0&&(He.xr=1,He.r=Ae);var Se=r._offset-Le.left;Se>0&&(He.xl=0,He.l=Se)}}else if(Ee==="l"?(r._depth=Math.max(Le.height>0?Be-Le.left:0,Ue),He[Ee]=r._depth-Re):(r._depth=Math.max(Le.height>0?Le.right-Be:0,Ue),He[Ee]=r._depth+Re,hr.reverse()),Le.height>0){var Oe=Le.bottom-(r._offset+r._length);Oe>0&&(He.yb=0,He.b=Oe);var Je=r._offset-Le.top;Je>0&&(He.yt=1,He.t=Je)}He[c]=r.anchor==="free"?r.position:r._anchorAxis.domain[hr[0]],r.title.text!==s._dfltTitle[f]&&(He[Ee]+=lA(r)+(r.title.standoff||0)),r.mirror&&r.anchor!=="free"&&(Ye={x:0,y:0,r:0,l:0,t:0,b:0},Ye[Fe]=r.linewidth,r.mirror&&r.mirror!==!0&&(Ye[Fe]+=Ue),r.mirror===!0||r.mirror==="ticks"?Ye[c]=r._anchorAxis.domain[hr[1]]:(r.mirror==="all"||r.mirror==="allticks")&&(Ye[c]=[r._counterDomainMin,r._counterDomainMax][hr[1]]))}Ie&&(ie=$c.getComponentMethod("rangeslider","autoMarginOpts")(e,r)),typeof r.automargin=="string"&&(iA(He,r.automargin),iA(Ye,r.automargin)),Vu.autoMargin(e,L2(r),He),Vu.autoMargin(e,mA(r),Ye),Vu.autoMargin(e,yA(r),ie)}),br.syncOrAsync(ye)}};function iA(e,r){if(e){var t=Object.keys(QM).reduce(function(a,n){return r.indexOf(n)!==-1&&QM[n].forEach(function(i){a[i]=1}),a},{});Object.keys(e).forEach(function(a){t[a]||(a.length===1?e[a]=0:delete e[a])})}}function tee(e,r){var t=[],a,n=function(i,l){var o=i.xbnd[l];o!==null&&t.push(br.extendFlat({},i,{x:o}))};if(r.length){for(a=0;ae.range[1],o=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,s=!o;if(t){var u=l?-1:1;t=t*u}if(a){var f=e.side,c=o&&(f==="top"||f==="left")||s&&(f==="bottom"||f==="right")?1:-1;a=a*c}return e._id.charAt(0)==="x"?function(h){return Gu(n+e._offset+e.l2p(M2(h))+t,i+a)}:function(h){return Gu(i+a,n+e._offset+e.l2p(M2(h))+t)}};function M2(e){return e.periodX!==void 0?e.periodX:e.x}function lee(e){var r=e.ticklabelposition||"",t=e.tickson||"",a=function(p){return r.indexOf(p)!==-1},n=a("top"),i=a("left"),l=a("right"),o=a("bottom"),s=a("inside"),u=t!=="boundaries"&&(o||i||n||l);if(!u&&!s)return[0,0];var f=e.side,c=u?(e.tickwidth||0)/2:0,h=Ed,d=e.tickfont?e.tickfont.size:12;return(o||n)&&(c+=d*ss,h+=(e.linewidth||0)/2),(i||l)&&(c+=(e.linewidth||0)/2,h+=Ed),s&&f==="top"&&(h-=d*(1-ss)),(i||n)&&(c=-c),(f==="bottom"||f==="right")&&(h=-h),[u?c:0,s?h:0]}Ge.makeTickPath=function(e,r,t,a){a||(a={});var n=a.minor;if(n&&!e.minor)return"";var i=a.len!==void 0?a.len:n?e.minor.ticklen:e.ticklen,l=e._id.charAt(0),o=(e.linewidth||1)/2;return l==="x"?"M0,"+(r+o*t)+"v"+i*t:"M"+(r+o*t)+",0h"+i*t};Ge.makeLabelFns=function(e,r,t){var a=e.ticklabelposition||"",n=e.tickson||"",i=function(I){return a.indexOf(I)!==-1},l=i("top"),o=i("left"),s=i("right"),u=i("bottom"),f=n!=="boundaries"&&(u||o||l||s),c=i("inside"),h=a==="inside"&&e.ticks==="inside"||!c&&e.ticks==="outside"&&n!=="boundaries",d=0,p=0,y=h?e.ticklen:0;if(c?y*=-1:f&&(y=0),h&&(d+=y,t)){var m=br.deg2rad(t);d=y*Math.cos(m)+1,p=y*Math.sin(m)}e.showticklabels&&(h||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(c?-1:1);var b={labelStandoff:d,labelShift:p},_,w,x,M,k=0,A=e.side,C=e._id.charAt(0),D=e.tickangle,E;if(C==="x")E=!c&&A==="bottom"||c&&A==="top",M=E?1:-1,c&&(M*=-1),_=p*M,w=r+d*M,x=E?1:-.2,Math.abs(D)===90&&(c?x+=Jc:D===-90&&A==="bottom"?x=ss:D===90&&A==="top"?x=Jc:x=.5,k=Jc/2*(D/90)),b.xFn=function(I){return I.dx+_+k*I.fontSize},b.yFn=function(I){return I.dy+w+I.fontSize*x},b.anchorFn=function(I,H){if(f){if(o)return"end";if(s)return"start"}return!Xt(H)||H===0||H===180?"middle":H*M<0!==c?"end":"start"},b.heightFn=function(I,H,G){return H<-60||H>60?-.5*G:e.side==="top"!==c?-G:0};else if(C==="y"){if(E=!c&&A==="left"||c&&A==="right",M=E?1:-1,c&&(M*=-1),_=d,w=p*M,x=0,!c&&Math.abs(D)===90&&(D===-90&&A==="left"||D===90&&A==="right"?x=ss:x=.5),c){var R=Xt(D)?+D:0;if(R!==0){var N=br.deg2rad(R);k=Math.abs(Math.sin(N))*ss*M,x=0}}b.xFn=function(I){return I.dx+r-(_+I.fontSize*x)*M+k*I.fontSize},b.yFn=function(I){return I.dy+w+I.fontSize*Jc},b.anchorFn=function(I,H){return Xt(H)&&Math.abs(H)===90?"middle":E?"end":"start"},b.heightFn=function(I,H,G){return e.side==="right"&&(H*=-1),H<-30?-G:H<30?-.5*G:0}}return b};function zd(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}Ge.drawTicks=function(e,r,t){t=t||{};var a=r._id+"tick",n=[].concat(r.minor&&r.minor.ticks?t.vals.filter(function(l){return l.minor&&!l.noTick}):[]).concat(r.ticks?t.vals.filter(function(l){return!l.minor&&!l.noTick}):[]),i=t.layer.selectAll("path."+a).data(n,zd);i.exit().remove(),i.enter().append("path").classed(a,1).classed("ticks",1).classed("crisp",t.crisp!==!1).each(function(l){return Kc.stroke(Yn.select(this),l.minor?r.minor.tickcolor:r.tickcolor)}).style("stroke-width",function(l){return Tn.crispRound(e,l.minor?r.minor.tickwidth:r.tickwidth,1)+"px"}).attr("d",t.path).style("display",null),Nd(r,[oA]),i.attr("transform",t.transFn)};Ge.drawGrid=function(e,r,t){if(t=t||{},r.tickmode!=="sync"){var a=r._id+"grid",n=r.minor&&r.minor.showgrid,i=n?t.vals.filter(function(b){return b.minor}):[],l=r.showgrid?t.vals.filter(function(b){return!b.minor}):[],o=t.counterAxis;if(o&&Ge.shouldShowZeroLine(e,r,o))for(var s=r.tickmode==="array",u=0;u=0;p--){var y=p?h:d;if(y){var m=y.selectAll("path."+a).data(p?l:i,zd);m.exit().remove(),m.enter().append("path").classed(a,1).classed("crisp",t.crisp!==!1),m.attr("transform",t.transFn).attr("d",t.path).each(function(b){return Kc.stroke(Yn.select(this),b.minor?r.minor.gridcolor:r.gridcolor||"#ddd")}).style("stroke-dasharray",function(b){return Tn.dashStyle(b.minor?r.minor.griddash:r.griddash,b.minor?r.minor.gridwidth:r.gridwidth)}).style("stroke-width",function(b){return(b.minor?c:r._gw)+"px"}).style("display",null),typeof t.path=="function"&&m.attr("d",t.path)}}Nd(r,[w2,T2])}};Ge.drawZeroLine=function(e,r,t){t=t||t;var a=r._id+"zl",n=Ge.shouldShowZeroLine(e,r,t.counterAxis),i=t.layer.selectAll("path."+a).data(n?[{x:0,id:r._id}]:[]);i.exit().remove(),i.enter().append("path").classed(a,1).classed("zl",1).classed("crisp",t.crisp!==!1).each(function(){t.layer.selectAll("path").sort(function(l,o){return Nj(l.id,o.id)})}),i.attr("transform",t.transFn).attr("d",t.path).call(Kc.stroke,r.zerolinecolor||Kc.defaultLine).style("stroke-width",Tn.crispRound(e,r.zerolinewidth,r._gw||1)+"px").style("display",null),Nd(r,[_2])};Ge.drawLabels=function(e,r,t){t=t||{};var a=e._fullLayout,n=r._id,i=r.zerolinelayer==="above traces",l=t.cls||n+"tick",o=t.vals.filter(function(Y){return Y.text}),s=t.labelFns,u=t.secondary?0:r.tickangle,f=(r._prevTickAngles||{})[l],c=t.layer.selectAll("g."+l).data(r.showticklabels?o:[],zd),h=[];c.enter().append("g").classed(l,1).append("text").attr("text-anchor","middle").each(function(Y){var Z=Yn.select(this),J=e._promises.length;Z.call(ls.positionText,s.xFn(Y),s.yFn(Y)).call(Tn.font,{family:Y.font,size:Y.fontSize,color:Y.fontColor,weight:Y.fontWeight,style:Y.fontStyle,variant:Y.fontVariant,textcase:Y.fontTextcase,lineposition:Y.fontLineposition,shadow:Y.fontShadow}).text(Y.text).call(ls.convertToTspans,e),e._promises[J]?h.push(e._promises.pop().then(function(){d(Z,u)})):d(Z,u)}),Nd(r,[KM]),c.exit().remove(),t.repositionOnUpdate&&c.each(function(Y){Yn.select(this).select("text").call(ls.positionText,s.xFn(Y),s.yFn(Y))});function d(Y,Z){Y.each(function(J){var ee=Yn.select(this),le=ee.select(".text-math-group"),ue=s.anchorFn(J,Z),ve=t.transFn.call(ee.node(),J)+(Xt(Z)&&+Z!=0?" rotate("+Z+","+s.xFn(J)+","+(s.yFn(J)-J.fontSize/2)+")":""),j=ls.lineCount(ee),qe=jc*J.fontSize,fe=s.heightFn(J,Xt(Z)?+Z:0,(j-1)*qe);if(fe&&(ve+=Gu(0,fe)),le.empty()){var be=ee.select("text");be.attr({transform:ve,"text-anchor":ue}),be.style("display",null),r._adjustTickLabelsOverflow&&r._adjustTickLabelsOverflow()}else{var ce=Tn.bBox(le.node()).width,xe=ce*{end:-.5,start:.5}[ue];le.attr("transform",ve+Gu(xe,0))}})}r._adjustTickLabelsOverflow=function(){var Y=r.ticklabeloverflow;if(!(!Y||Y==="allow")){var Z=Y.indexOf("hide")!==-1,J=r._id.charAt(0)==="x",ee=0,le=J?e._fullLayout.width:e._fullLayout.height;if(Y.indexOf("domain")!==-1){var ue=br.simpleMap(r.range,r.r2l);ee=r.l2p(ue[0])+r._offset,le=r.l2p(ue[1])+r._offset}var ve=Math.min(ee,le),j=Math.max(ee,le),qe=r.side,fe=1/0,be=-1/0;c.each(function(Q){var X=Yn.select(this),ge=X.select(".text-math-group");if(ge.empty()){var Te=Tn.bBox(X.node()),ye=0;J?(Te.right>j||Te.leftj||Te.top+(r.tickangle?0:Q.fontSize/4)r["_visibleLabelMin_"+ue._id]?X.style("display","none"):j.K==="tick"&&!ve&&X.node().style.display!=="none"&&X.style("display",null)})})})})},d(c,f+1?f:u);function p(){return h.length&&Promise.all(h)}var y=null;function m(){if(d(c,u),o.length&&r.autotickangles&&(r.type!=="log"||String(r.dtick).charAt(0)!=="D")){y=r.autotickangles[0];var Y=0,Z=[],J,ee=1;c.each(function(He){Y=Math.max(Y,He.fontSize);var Ye=r.l2p(He.x),ie=A2(this),_e=Tn.bBox(ie.node());ee=Math.max(ee,ls.lineCount(ie)),Z.push({top:0,bottom:10,height:10,left:Ye-_e.width/2,right:Ye+_e.width/2+2,width:_e.width+2})});var le=(r.tickson==="boundaries"||r.showdividers)&&!t.secondary,ue=o.length,ve=Math.abs((o[ue-1].x-o[0].x)*r._m)/(ue-1),j=le?ve/2:ve,qe=le?r.ticklen:Y*1.25*ee,fe=Math.sqrt(Math.pow(j,2)+Math.pow(qe,2)),be=j/fe,ce=r.autotickangles.map(function(He){return He*Math.PI/180}),xe=ce.find(function(He){return Math.abs(Math.cos(He))<=be});xe===void 0&&(xe=ce.reduce(function(He,Ye){return Math.abs(Math.cos(He))W*G&&(N=G,D[C]=E[C]=I[C])}var V=Math.abs(N-R);V-M>0?(V-=M,M*=1+M/V):M=0,r._id.charAt(0)!=="y"&&(M=-M),D[A]=w.p2r(w.r2p(E[A])+k*M),w.autorange==="min"||w.autorange==="max reversed"?(D[0]=null,w._rangeInitial0=void 0,w._rangeInitial1=void 0):(w.autorange==="max"||w.autorange==="min reversed")&&(D[1]=null,w._rangeInitial0=void 0,w._rangeInitial1=void 0),a._insideTickLabelsUpdaterange[w._name+".range"]=D}var O=br.syncOrAsync(b);return O&&O.then&&e._promises.push(O),O};function oee(e,r,t){var a=r._id+"divider",n=t.vals,i=t.layer.selectAll("path."+a).data(n,zd);i.exit().remove(),i.enter().insert("path",":first-child").classed(a,1).classed("crisp",1).call(Kc.stroke,r.dividercolor).style("stroke-width",Tn.crispRound(e,r.dividerwidth,1)+"px"),i.attr("transform",t.transFn).attr("d",t.path)}Ge.getPxPosition=function(e,r){var t=e._fullLayout._size,a=r._id.charAt(0),n=r.side,i;if(r.anchor!=="free"?i=r._anchorAxis:a==="x"?i={_offset:t.t+(1-(r.position||0))*t.h,_length:0}:a==="y"&&(i={_offset:t.l+(r.position||0)*t.w+r._shift,_length:0}),n==="top"||n==="left")return i._offset;if(n==="bottom"||n==="right")return i._offset+i._length};function lA(e){var r=e.title.font.size,t=(e.title.text.match(ls.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?r*(ss+t*jc):t?r*(t+1)*jc:r}function see(e,r){var t=e._fullLayout,a=r._id,n=a.charAt(0),i=r.title.font.size,l,o=(r.title.text.match(ls.BR_TAG_ALL)||[]).length;if(r.title.hasOwnProperty("standoff"))r.side==="bottom"||r.side==="right"?l=r._depth+r.title.standoff+i*ss:(r.side==="top"||r.side==="left")&&(l=r._depth+r.title.standoff+i*(Jc+o*jc));else{var s=rv(r);if(r.type==="multicategory")l=r._depth;else{var u=1.5*i;s&&(u=.5*i,r.ticks==="outside"&&(u+=r.ticklen)),l=10+u+(r.linewidth?r.linewidth-1:0)}s||(n==="x"?l+=r.side==="top"?i*(r.showticklabels?1:0):i*(r.showticklabels?1.5:.5):l+=r.side==="right"?i*(r.showticklabels?1:.5):i*(r.showticklabels?.5:0))}var f=Ge.getPxPosition(e,r),c,h,d;n==="x"?(h=r._offset+r._length/2,d=r.side==="top"?f-l:f+l):(d=r._offset+r._length/2,h=r.side==="right"?f+l:f-l,c={rotate:"-90",offset:0});var p;if(r.type!=="multicategory"){var y=r._selections[r._id+"tick"];if(p={selection:y,side:r.side},y&&y.node()&&y.node().parentNode){var m=Tn.getTranslate(y.node().parentNode);p.offsetLeft=m.x,p.offsetTop=m.y}r.title.hasOwnProperty("standoff")&&(p.pad=0)}return r._titleStandoff=l,qj.draw(e,a+"title",{propContainer:r,propName:r._name+".title.text",placeholder:t._dfltTitle[n],avoid:p,transform:c,attributes:{x:h,y:d,"text-anchor":"middle"}})}Ge.shouldShowZeroLine=function(e,r,t){var a=br.simpleMap(r.range,r.r2l);return a[0]*a[1]<=0&&r.zeroline&&(r.type==="linear"||r.type==="-")&&!(r.rangebreaks&&r.maskBreaks(0)===Pd)&&(pA(r,0)||!uee(e,r,t,a)||fee(e,r))};Ge.clipEnds=function(e,r){return r.filter(function(t){return pA(e,t.x)})};function pA(e,r){var t=e.l2p(r);return t>1&&t1)for(n=1;n=n.min&&e=Pj:/%L/.test(r)?e>=Ej:/%[SX]/.test(r)?e>=Dd:/%M/.test(r)?e>=Qc:/%[HI]/.test(r)?e>=Vi:/%p/.test(r)?e>=$l:/%[Aadejuwx]/.test(r)?e>=Ya:/%[UVW]/.test(r)?e>=Mn:/%[Bbm]/.test(r)?e>=Ld:/%[q]/.test(r)?e>=Cd:/%[Yy]/.test(r)?e>=Sd:!0}});var bA=B((Zge,xA)=>{"use strict";xA.exports=function(r,t,a){var n,i;if(a){var l=t==="reversed"||t==="min reversed"||t==="max reversed";n=a[l?1:0],i=a[l?0:1]}var o=r("autorangeoptions.minallowed",i===null?n:void 0),s=r("autorangeoptions.maxallowed",n===null?i:void 0);o===void 0&&r("autorangeoptions.clipmin"),s===void 0&&r("autorangeoptions.clipmax"),r("autorangeoptions.include")}});var E2=B((Jge,_A)=>{"use strict";var mee=bA();_A.exports=function(r,t,a,n){var i=t._template||{},l=t.type||i.type||"-";a("minallowed"),a("maxallowed");var o=a("range");if(!o){var s;!n.noInsiderange&&l!=="log"&&(s=a("insiderange"),s&&(s[0]===null||s[1]===null)&&(t.insiderange=!1,s=void 0),s&&(o=a("range",s)))}var u=t.getAutorangeDflt(o,n),f=a("autorange",u),c;o&&(o[0]===null&&o[1]===null||(o[0]===null||o[1]===null)&&(f==="reversed"||f===!0)||o[0]!==null&&(f==="min"||f==="max reversed")||o[1]!==null&&(f==="max"||f==="min reversed"))&&(o=void 0,delete t.range,t.autorange=!0,c=!0),c||(u=t.getAutorangeDflt(o,n),f=a("autorange",u)),f&&(mee(a,f,o),(l==="linear"||l==="-")&&a("rangemode")),t.cleanRange()}});var TA=B(($ge,wA)=>{var yee={left:0,top:0};wA.exports=gee;function gee(e,r,t){r=r||e.currentTarget||e.srcElement,Array.isArray(t)||(t=[0,0]);var a=e.clientX||0,n=e.clientY||0,i=xee(r);return t[0]=a-i.left,t[1]=n-i.top,t}function xee(e){return e===window||e===document||e===document.body?yee:e.getBoundingClientRect()}});var P2=B((Kge,MA)=>{"use strict";var bee=cg();function _ee(){var e=!1;try{var r=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,r),window.removeEventListener("test",null,r)}catch(t){e=!1}return e}MA.exports=bee&&_ee()});var kA=B((Qge,AA)=>{"use strict";AA.exports=function(r,t,a,n,i){var l=(r-a)/(n-a),o=l+t/(n-a),s=(l+o)/2;return i==="left"||i==="bottom"?l:i==="center"||i==="middle"?s:i==="right"||i==="top"?o:l<2/3-s?l:o>4/3-s?o:s}});var CA=B((jge,SA)=>{"use strict";var qA=Pe(),wee=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];SA.exports=function(r,t,a,n){return a==="left"?r=0:a==="center"?r=1:a==="right"?r=2:r=qA.constrain(Math.floor(r*3),0,2),n==="bottom"?t=0:n==="middle"?t=1:n==="top"?t=2:t=qA.constrain(Math.floor(t*3),0,2),wee[t][r]}});var DA=B((e2e,LA)=>{"use strict";var Tee=Nc(),Mee=Rh(),Aee=Sc().getGraphDiv,kee=Tc(),R2=LA.exports={};R2.wrapped=function(e,r,t){e=Aee(e),e._fullLayout&&Mee.clear(e._fullLayout._uid+kee.HOVERID),R2.raw(e,r,t)};R2.raw=function(r,t){var a=r._fullLayout,n=r._hoverdata;t||(t={}),!(t.target&&!r._dragged&&Tee.triggerHandler(r,"plotly_beforehover",t)===!1)&&(a._hoverlayer.selectAll("g").remove(),a._hoverlayer.selectAll("line").remove(),a._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,t.target&&n&&r.emit("plotly_unhover",{event:t,points:n}))}});var yi=B((r2e,zA)=>{"use strict";var qee=TA(),z2=hg(),See=P2(),Cee=Pe().removeElement,Lee=Ma(),us=zA.exports={};us.align=kA();us.getCursor=CA();var PA=DA();us.unhover=PA.wrapped;us.unhoverRaw=PA.raw;us.init=function(r){var t=r.gd,a=1,n=t._context.doubleClickDelay,i=r.element,l,o,s,u,f,c,h,d;t._mouseDownTime||(t._mouseDownTime=0),i.style.pointerEvents="all",i.onmousedown=m,See?(i._ontouchstart&&i.removeEventListener("touchstart",i._ontouchstart),i._ontouchstart=m,i.addEventListener("touchstart",m,{passive:!1})):i.ontouchstart=m;function p(w,x,M){return Math.abs(w)n&&(a=Math.max(a-1,1)),t._dragged)r.doneFn&&r.doneFn();else{var x;c.target===h?x=c:(x={target:h,srcElement:h,toElement:h},Object.keys(c).concat(Object.keys(c.__proto__)).forEach(M=>{var k=c[M];!x[M]&&typeof k!="function"&&(x[M]=k)})),r.clickFn&&r.clickFn(a,x),d||h.dispatchEvent(new MouseEvent("click",w))}t._dragging=!1,t._dragged=!1}};function RA(){var e=document.createElement("div");e.className="dragcover";var r=e.style;return r.position="fixed",r.left=0,r.right=0,r.top=0,r.bottom=0,r.zIndex=999999999,r.background="none",document.body.appendChild(e),e}us.coverSlip=RA;function EA(e){return qee(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Kl=B((t2e,NA)=>{"use strict";NA.exports=function(r,t){(r.attr("class")||"").split(" ").forEach(function(a){a.indexOf("cursor-")===0&&r.classed(a,!1)}),t&&r.classed("cursor-"+t,!0)}});var HA=B((a2e,IA)=>{"use strict";var N2=Kl(),tv="data-savedcursor",FA="!!";IA.exports=function(r,t){var a=r.attr(tv);if(t){if(!a){for(var n=(r.attr("class")||"").split(" "),i=0;i{"use strict";var F2=aa(),Dee=Fn();OA.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:Dee.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:F2({editType:"legend"}),grouptitlefont:F2({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:F2({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var Id=B(Fd=>{"use strict";Fd.isGrouped=function(r){return(r.traceorder||"").indexOf("grouped")!==-1};Fd.isVertical=function(r){return r.orientation!=="h"};Fd.isReversed=function(r){return(r.traceorder||"").indexOf("reversed")!==-1}});var O2=B((l2e,BA)=>{"use strict";var Hd=gr(),An=Pe(),Eee=lt(),Pee=tn(),Ree=I2(),zee=wu(),H2=Id();function Nee(e,r,t,a){var n=r[e]||{},i=Eee.newContainer(t,e);function l(O,Y){return An.coerce(n,i,Ree,O,Y)}var o=An.coerceFont(l,"font",t.font);l("bgcolor",t.paper_bgcolor),l("bordercolor");var s=l("visible");if(!s)return;var u,f=function(O,Y){var Z=u._input,J=u;return An.coerce(Z,J,Pee,O,Y)},c=t.font||{},h=An.coerceFont(l,"grouptitlefont",c,{overrideDflt:{size:Math.round(c.size*1.1)}}),d=0,p=!1,y="normal",m=(t.shapes||[]).filter(function(O){return O.showlegend});function b(O){return Hd.traceIs(O,"pie-like")&&O._length!=null&&(Array.isArray(O.legend)||Array.isArray(O.showlegend))}a.filter(b).forEach(function(O){O.visible&&d++;for(var Y=0;YO.legend.length)for(var J=O.legend.length;J(e==="legend"?1:0));if(M===!1&&(t[e]=void 0),!(M===!1&&!n.uirevision)&&(l("uirevision",t.uirevision),M!==!1)){l("borderwidth");var k=l("orientation"),A=l("yref"),C=l("xref"),D=k==="h",E=A==="paper",R=C==="paper",N,I,H,G="left";D?(N=0,Hd.getComponentMethod("rangeslider","isVisible")(r.xaxis)?E?(I=1.1,H="bottom"):(I=1,H="top"):E?(I=-.1,H="top"):(I=0,H="bottom")):(I=1,H="auto",R?N=1.02:(N=1,G="right")),An.coerce(n,i,{x:{valType:"number",editType:"legend",min:R?-2:0,max:R?3:1,dflt:N}},"x"),An.coerce(n,i,{y:{valType:"number",editType:"legend",min:E?-2:0,max:E?3:1,dflt:I}},"y"),l("traceorder",y),H2.isGrouped(t[e])&&l("tracegroupgap"),l("entrywidth"),l("entrywidthmode"),l("indentation"),l("itemsizing"),l("itemwidth"),l("itemclick"),l("itemdoubleclick"),l("groupclick"),l("xanchor",G),l("yanchor",H),l("maxheight"),l("valign"),An.noneOrAll(n,i,["x","y"]);var W=l("title.text");if(W){l("title.side",D?"left":"top");var V=An.extendFlat({},o,{size:An.bigFont(o.size)});An.coerceFont(l,"title.font",V)}}}BA.exports=function(r,t,a){var n,i=a.slice(),l=t.shapes;if(l)for(n=0;n{"use strict";var Xu=gr(),Y2=Pe(),Fee=Y2.pushUnique,B2=!0;YA.exports=function(r,t,a){var n=t._fullLayout;if(t._dragged||t._editing)return;var i=n.legend.itemclick,l=n.legend.itemdoubleclick,o=n.legend.groupclick;a===1&&i==="toggle"&&l==="toggleothers"&&B2&&t.data&&t._context.showTips&&Y2.notifier(Y2._(t,"Double-click on legend to isolate one trace"),"long"),B2=!1;var s;if(a===1?s=i:a===2&&(s=l),!s)return;var u=o==="togglegroup",f=n.hiddenlabels?n.hiddenlabels.slice():[],c=r.data()[0][0];if(c.groupTitle&&c.noClick)return;var h=t._fullData,d=(n.shapes||[]).filter(function(Fe){return Fe.showlegend}),p=h.concat(d),y=c.trace;y._isShape&&(y=y._fullInput);var m=y.legendgroup,b,_,w,x,M,k,A={},C=[],D=[],E=[];function R(Fe,Be){var Ue=C.indexOf(Fe),Le=A.visible;return Le||(Le=A.visible=[]),C.indexOf(Fe)===-1&&(C.push(Fe),Ue=C.length-1),Le[Ue]=Be,Ue}var N=(n.shapes||[]).map(function(Fe){return Fe._input}),I=!1;function H(Fe,Be){N[Fe].visible=Be,I=!0}function G(Fe,Be){if(!(c.groupTitle&&!u)){var Ue=Fe._fullInput||Fe,Le=Ue._isShape,He=Ue.index;He===void 0&&(He=Ue._index);var Ye=Ue.visible===!1?!1:Be;Le?H(He,Ye):R(He,Ye)}}var W=y.legend,V=y._fullInput,O=V&&V._isShape;if(!O&&Xu.traceIs(y,"pie-like")){var Y=c.label,Z=f.indexOf(Y);if(s==="toggle")Z===-1?f.push(Y):f.splice(Z,1);else if(s==="toggleothers"){var J=Z!==-1,ee=[];for(b=0;b{"use strict";GA.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var XA=B((u2e,WA)=>{"use strict";var UA=gr(),G2=Id();WA.exports=function(r,t,a){var n=t._inHover,i=G2.isGrouped(t),l=G2.isReversed(t),o={},s=[],u=!1,f={},c=0,h=0,d,p;function y(Y,Z,J){if(t.visible!==!1&&!(a&&Y!==t._id))if(Z===""||!G2.isGrouped(t)){var ee="~~i"+c;s.push(ee),o[ee]=[J],c++}else s.indexOf(Z)===-1?(s.push(Z),u=!0,o[Z]=[J]):o[Z].push(J)}for(d=0;dN&&(R=N)}D[d][0]._groupMinRank=R,D[d][0]._preGroupSort=d}var I=function(Y,Z){return Y[0]._groupMinRank-Z[0]._groupMinRank||Y[0]._preGroupSort-Z[0]._preGroupSort},H=function(Y,Z){return Y.trace.legendrank-Z.trace.legendrank||Y._preSort-Z._preSort};for(D.forEach(function(Y,Z){Y[0]._preGroupSort=Z}),D.sort(I),d=0;d{"use strict";var Od=Pe();function ZA(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}fs.formatPiePercent=function(r,t){var a=ZA((r*100).toPrecision(3));return Od.numSeparate(a,t)+"%"};fs.formatPieValue=function(r,t){var a=ZA(r.toPrecision(10));return Od.numSeparate(a,t)};fs.getFirstFilled=function(r,t){if(Od.isArrayOrTypedArray(r))for(var a=0;a{"use strict";var Iee=Yr(),Hee=xr();JA.exports=function(r,t,a,n){var i=a.marker.pattern;i&&i.shape?Iee.pointStyle(r,a,n,t):Hee.fill(r,t.color)}});var Zu=B((v2e,jA)=>{"use strict";var KA=xr(),QA=av().castOption,Oee=$A();jA.exports=function(r,t,a,n){var i=a.marker.line,l=QA(i.color,t.pts)||KA.defaultLine,o=QA(i.width,t.pts)||0;r.call(Oee,t,a,n).style("stroke-width",o).call(KA.stroke,l)}});var Z2=B((h2e,ik)=>{"use strict";var Va=kr(),U2=gr(),Ra=Pe(),ek=Ra.strTranslate,kn=Yr(),Vn=xr(),W2=bn().extractOpts,Bd=wn(),Bee=Zu(),Yee=av().castOption,Vee=V2(),rk=12,tk=5,cs=2,Gee=10,Ju=5;ik.exports=function(r,t,a){var n=t._fullLayout;a||(a=n.legend);var i=a.itemsizing==="constant",l=a.itemwidth,o=(l+Vee.itemGap*2)/2,s=ek(o,0),u=function(A,C,D,E){var R;if(A+1)R=A;else if(C&&C.width>0)R=C.width;else return 0;return i?E:Math.min(R,D)};r.each(function(A){var C=Va.select(this),D=Ra.ensureSingle(C,"g","layers");D.style("opacity",A[0].trace.opacity);var E=a.indentation,R=a.valign,N=A[0].lineHeight,I=A[0].height;if(R==="middle"&&E===0||!N||!I)D.attr("transform",null);else{var H={top:1,bottom:-1}[R],G=H*(.5*(N-I+3))||0,W=a.indentation;D.attr("transform",ek(W,G))}var V=D.selectAll("g.legendfill").data([A]);V.enter().append("g").classed("legendfill",!0);var O=D.selectAll("g.legendlines").data([A]);O.enter().append("g").classed("legendlines",!0);var Y=D.selectAll("g.legendsymbols").data([A]);Y.enter().append("g").classed("legendsymbols",!0),Y.selectAll("g.legendpoints").data([A]).enter().append("g").classed("legendpoints",!0)}).each(k).each(h).each(p).each(d).each(m).each(x).each(w).each(f).each(c).each(b).each(_);function f(A){var C=ak(A),D=C.showFill,E=C.showLine,R=C.showGradientLine,N=C.showGradientFill,I=C.anyFill,H=C.anyLine,G=A[0],W=G.trace,V,O,Y=W2(W),Z=Y.colorscale,J=Y.reversescale,ee=function(be){if(be.size())if(D)kn.fillGroupStyle(be,t,!0);else{var ce="legendfill-"+W.uid;kn.gradient(be,t,ce,X2(J),Z,"fill")}},le=function(be){if(be.size()){var ce="legendline-"+W.uid;kn.lineGroupStyle(be),kn.gradient(be,t,ce,X2(J),Z,"stroke")}},ue=Bd.hasMarkers(W)||!I?"M5,0":H?"M5,-2":"M5,-3",ve=Va.select(this),j=ve.select(".legendfill").selectAll("path").data(D||N?[A]:[]);if(j.enter().append("path").classed("js-fill",!0),j.exit().remove(),j.attr("d",ue+"h"+l+"v6h-"+l+"z").call(ee),E||R){var qe=u(void 0,W.line,Gee,tk);O=Ra.minExtend(W,{line:{width:qe}}),V=[Ra.minExtend(G,{trace:O})]}var fe=ve.select(".legendlines").selectAll("path").data(E||R?[V]:[]);fe.enter().append("path").classed("js-line",!0),fe.exit().remove(),fe.attr("d",ue+(R?"l"+l+",0.0001":"h"+l)).call(E?kn.lineGroupStyle:le)}function c(A){var C=ak(A),D=C.anyFill,E=C.anyLine,R=C.showLine,N=C.showMarker,I=A[0],H=I.trace,G=!N&&!E&&!D&&Bd.hasText(H),W,V;function O(j,qe,fe,be){var ce=Ra.nestedProperty(H,j).get(),xe=Ra.isArrayOrTypedArray(ce)&&qe?qe(ce):ce;if(i&&xe&&be!==void 0&&(xe=be),fe){if(xefe[1])return fe[1]}return xe}function Y(j){return I._distinct&&I.index&&j[I.index]?j[I.index]:j[0]}if(N||G||R){var Z={},J={};if(N){Z.mc=O("marker.color",Y),Z.mx=O("marker.symbol",Y),Z.mo=O("marker.opacity",Ra.mean,[.2,1]),Z.mlc=O("marker.line.color",Y),Z.mlw=O("marker.line.width",Ra.mean,[0,5],cs),J.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var ee=O("marker.size",Ra.mean,[2,16],rk);Z.ms=ee,J.marker.size=ee}R&&(J.line={width:O("line.width",Y,[0,10],tk)}),G&&(Z.tx="Aa",Z.tp=O("textposition",Y),Z.ts=10,Z.tc=O("textfont.color",Y),Z.tf=O("textfont.family",Y),Z.tw=O("textfont.weight",Y),Z.ty=O("textfont.style",Y),Z.tv=O("textfont.variant",Y),Z.tC=O("textfont.textcase",Y),Z.tE=O("textfont.lineposition",Y),Z.tS=O("textfont.shadow",Y)),W=[Ra.minExtend(I,Z)],V=Ra.minExtend(H,J),V.selectedpoints=null,V.texttemplate=null}var le=Va.select(this).select("g.legendpoints"),ue=le.selectAll("path.scatterpts").data(N?W:[]);ue.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",s),ue.exit().remove(),ue.call(kn.pointStyle,V,t),N&&(W[0].mrc=3);var ve=le.selectAll("g.pointtext").data(G?W:[]);ve.enter().append("g").classed("pointtext",!0).append("text").attr("transform",s),ve.exit().remove(),ve.selectAll("text").call(kn.textPointStyle,V,t)}function h(A){var C=A[0].trace,D=C.type==="waterfall";if(A[0]._distinct&&D){var E=A[0].trace[A[0].dir].marker;return A[0].mc=E.color,A[0].mlw=E.line.width,A[0].mlc=E.line.color,y(A,this,"waterfall")}var R=[];C.visible&&D&&(R=A[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var N=Va.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(R);N.enter().append("path").classed("legendwaterfall",!0).attr("transform",s).style("stroke-miterlimit",1),N.exit().remove(),N.each(function(I){var H=Va.select(this),G=C[I[0]].marker,W=u(void 0,G.line,Ju,cs);H.attr("d",I[1]).style("stroke-width",W+"px").call(Vn.fill,G.color),W&&H.call(Vn.stroke,G.line.color)})}function d(A){y(A,this)}function p(A){y(A,this,"funnel")}function y(A,C,D){var E=A[0].trace,R=E.marker||{},N=R.line||{},I=R.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",H=D?E.visible&&E.type===D:U2.traceIs(E,"bar"),G=Va.select(C).select("g.legendpoints").selectAll("path.legend"+D).data(H?[A]:[]);G.enter().append("path").classed("legend"+D,!0).attr("d",I).attr("transform",s),G.exit().remove(),G.each(function(W){var V=Va.select(this),O=W[0],Y=u(O.mlw,R.line,Ju,cs);V.style("stroke-width",Y+"px");var Z=O.mcc;if(!a._inHover&&"mc"in O){var J=W2(R),ee=J.mid;ee===void 0&&(ee=(J.max+J.min)/2),Z=kn.tryColorscale(R,"")(ee)}var le=Z||O.mc||R.color,ue=R.pattern,ve=kn.getPatternAttr,j=ue&&(ve(ue.shape,0,"")||ve(ue.path,0,""));if(j){var qe=ve(ue.bgcolor,0,null),fe=ve(ue.fgcolor,0,null),be=ue.fgopacity,ce=nk(ue.size,8,10),xe=nk(ue.solidity,.5,1),U="legend-"+E.uid;V.call(kn.pattern,"legend",t,U,j,ce,xe,Z,ue.fillmode,qe,fe,be)}else V.call(Vn.fill,le);Y&&Vn.stroke(V,O.mlc||N.color)})}function m(A){var C=A[0].trace,D=Va.select(this).select("g.legendpoints").selectAll("path.legendbox").data(C.visible&&U2.traceIs(C,"box-violin")?[A]:[]);D.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),D.exit().remove(),D.each(function(){var E=Va.select(this);if((C.boxpoints==="all"||C.points==="all")&&Vn.opacity(C.fillcolor)===0&&Vn.opacity((C.line||{}).color)===0){var R=Ra.minExtend(C,{marker:{size:i?rk:Ra.constrain(C.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});D.call(kn.pointStyle,R,t)}else{var N=u(void 0,C.line,Ju,cs);E.style("stroke-width",N+"px").call(Vn.fill,C.fillcolor),N&&Vn.stroke(E,C.line.color)}})}function b(A){var C=A[0].trace,D=Va.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(C.visible&&C.type==="candlestick"?[A,A]:[]);D.enter().append("path").classed("legendcandle",!0).attr("d",function(E,R){return R?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",s).style("stroke-miterlimit",1),D.exit().remove(),D.each(function(E,R){var N=Va.select(this),I=C[R?"increasing":"decreasing"],H=u(void 0,I.line,Ju,cs);N.style("stroke-width",H+"px").call(Vn.fill,I.fillcolor),H&&Vn.stroke(N,I.line.color)})}function _(A){var C=A[0].trace,D=Va.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(C.visible&&C.type==="ohlc"?[A,A]:[]);D.enter().append("path").classed("legendohlc",!0).attr("d",function(E,R){return R?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",s).style("stroke-miterlimit",1),D.exit().remove(),D.each(function(E,R){var N=Va.select(this),I=C[R?"increasing":"decreasing"],H=u(void 0,I.line,Ju,cs);N.style("fill","none").call(kn.dashLine,I.line.dash,H),H&&Vn.stroke(N,I.line.color)})}function w(A){M(A,this,"pie")}function x(A){M(A,this,"funnelarea")}function M(A,C,D){var E=A[0],R=E.trace,N=D?R.visible&&R.type===D:U2.traceIs(R,D),I=Va.select(C).select("g.legendpoints").selectAll("path.legend"+D).data(N?[A]:[]);if(I.enter().append("path").classed("legend"+D,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),I.exit().remove(),I.size()){var H=R.marker||{},G=u(Yee(H.line.width,E.pts),H.line,Ju,cs),W="pieLike",V=Ra.minExtend(R,{marker:{line:{width:G}}},W),O=Ra.minExtend(E,{trace:V},W);Bee(I,O,V,t)}}function k(A){var C=A[0].trace,D,E=[];if(C.visible)switch(C.type){case"histogram2d":case"heatmap":E=[["M-15,-2V4H15V-2Z"]],D=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":E=[["M-6,-6V6H6V-6Z"]],D=!0;break;case"densitymapbox":case"densitymap":E=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],D="radial";break;case"cone":E=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],D=!1;break;case"streamtube":E=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],D=!1;break;case"surface":E=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],D=!0;break;case"mesh3d":E=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],D=!1;break;case"volume":E=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],D=!0;break;case"isosurface":E=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],D=!1;break}var R=Va.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(E);R.enter().append("path").classed("legend3dandfriends",!0).attr("transform",s).style("stroke-miterlimit",1),R.exit().remove(),R.each(function(N,I){var H=Va.select(this),G=W2(C),W=G.colorscale,V=G.reversescale,O=function(ee){if(ee.size()){var le="legendfill-"+C.uid;kn.gradient(ee,t,le,X2(V,D==="radial"),W,"fill")}},Y;if(W){if(!D){var J=W.length;Y=I===0?W[V?J-1:0][1]:I===1?W[V?0:J-1][1]:W[Math.floor((J-1)/2)][1]}}else{var Z=C.vertexcolor||C.facecolor||C.color;Y=Ra.isArrayOrTypedArray(Z)?Z[I]||Z[0]:Z}H.attr("d",N[0]),Y?H.call(Vn.fill,Y):H.call(O)})}};function X2(e,r){var t=r?"radial":"horizontal";return t+(e?"":"reversed")}function ak(e){var r=e[0].trace,t=r.contours,a=Bd.hasLines(r),n=Bd.hasMarkers(r),i=r.visible&&r.fill&&r.fill!=="none",l=!1,o=!1;if(t){var s=t.coloring;s==="lines"?l=!0:a=s==="none"||s==="heatmap"||t.showlines,t.type==="constraint"?i=t._operation!=="=":(s==="fill"||s==="heatmap")&&(o=!0)}return{showMarker:n,showLine:a,showFill:i,showGradientLine:l,showGradientFill:o,anyLine:a||l,anyFill:i||o}}function nk(e,r,t){return e&&Ra.isArrayOrTypedArray(e)?r:e>t?t:e}});var Q2=B((d2e,pk)=>{"use strict";var un=kr(),Zt=Pe(),$2=Rt(),Qu=gr(),lk=Nc(),J2=yi(),Jt=Yr(),Vd=xr(),vs=va(),ok=VA(),jt=V2(),K2=Ea(),hk=K2.LINE_SPACING,Ku=K2.FROM_TL,sk=K2.FROM_BR,uk=XA(),Uee=Z2(),fk=Id(),$u=1,Wee=/^legend[0-9]*$/;pk.exports=function(r,t){if(t)ck(r,t);else{var a=r._fullLayout,n=a._legends,i=a._infolayer.selectAll('[class^="legend"]');i.each(function(){var u=un.select(this),f=u.attr("class"),c=f.split(" ")[0];c.match(Wee)&&n.indexOf(c)===-1&&u.remove()});for(var l=0;l1)}var p=a.hiddenlabels||[];if(!o&&(!a.showlegend||!s.length))return l.selectAll("."+n).remove(),a._topdefs.select("#"+i).remove(),$2.autoMargin(e,n);var y=Zt.ensureSingle(l,"g",n,function(C){o||C.attr("pointer-events","all")}),m=Zt.ensureSingleById(a._topdefs,"clipPath",i,function(C){C.append("rect")}),b=Zt.ensureSingle(y,"rect","bg",function(C){C.attr("shape-rendering","crispEdges")});b.call(Vd.stroke,t.bordercolor).call(Vd.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px");var _=Zt.ensureSingle(y,"g","scrollbox"),w=t.title;t._titleWidth=0,t._titleHeight=0;var x;w.text?(x=Zt.ensureSingle(_,"text",n+"titletext"),x.attr("text-anchor","start").call(Jt.font,w.font).text(w.text),Gd(x,_,e,t,$u)):_.selectAll("."+n+"titletext").remove();var M=Zt.ensureSingle(y,"rect","scrollbar",function(C){C.attr(jt.scrollBarEnterAttrs).call(Vd.fill,jt.scrollBarColor)}),k=_.selectAll("g.groups").data(s);k.enter().append("g").attr("class","groups"),k.exit().remove();var A=k.selectAll("g.traces").data(Zt.identity);A.enter().append("g").attr("class","traces"),A.exit().remove(),A.style("opacity",function(C){var D=C[0].trace;return Qu.traceIs(D,"pie-like")?p.indexOf(C[0].label)!==-1?.5:1:D.visible==="legendonly"?.5:1}).each(function(){un.select(this).call(Zee,e,t)}).call(Uee,e,t).each(function(){o||un.select(this).call(Jee,e,n)}),Zt.syncOrAsync([$2.previousPromises,function(){return Qee(e,k,A,t)},function(){var C=a._size,D=t.borderwidth,E=t.xref==="paper",R=t.yref==="paper";if(w.text&&Xee(x,t,D),!o){var N,I;E?N=C.l+C.w*t.x-Ku[Ud(t)]*t._width:N=a.width*t.x-Ku[Ud(t)]*t._width,R?I=C.t+C.h*(1-t.y)-Ku[Wd(t)]*t._effHeight:I=a.height*(1-t.y)-Ku[Wd(t)]*t._effHeight;var H=jee(e,n,N,I);if(H)return;if(a.margin.autoexpand){var G=N,W=I;N=E?Zt.constrain(N,0,a.width-t._width):G,I=R?Zt.constrain(I,0,a.height-t._effHeight):W,N!==G&&Zt.log("Constrain "+n+".x to make legend fit inside graph"),I!==W&&Zt.log("Constrain "+n+".y to make legend fit inside graph")}Jt.setTranslate(y,N,I)}if(M.on(".drag",null),y.on("wheel",null),o||t._height<=t._maxHeight||e._context.staticPlot){var V=t._effHeight;o&&(V=t._height),b.attr({width:t._width-D,height:V-D,x:D/2,y:D/2}),Jt.setTranslate(_,0,0),m.select("rect").attr({width:t._width-2*D,height:V-2*D,x:D,y:D}),Jt.setClipUrl(_,i,e),Jt.setRect(M,0,0,0,0),delete t._scrollY}else{var O=Math.max(jt.scrollBarMinHeight,t._effHeight*t._effHeight/t._height),Y=t._effHeight-O-2*jt.scrollBarMargin,Z=t._height-t._effHeight,J=Y/Z,ee=Math.min(t._scrollY||0,Z);b.attr({width:t._width-2*D+jt.scrollBarWidth+jt.scrollBarMargin,height:t._effHeight-D,x:D/2,y:D/2}),m.select("rect").attr({width:t._width-2*D+jt.scrollBarWidth+jt.scrollBarMargin,height:t._effHeight-2*D,x:D,y:D+ee}),Jt.setClipUrl(_,i,e),ce(ee,O,J),y.on("wheel",function(){ee=Zt.constrain(t._scrollY+un.event.deltaY/Z*Y,0,Z),ce(ee,O,J),ee!==0&&ee!==Z&&un.event.preventDefault()});var le,ue,ve,j=function(ge,Te,ye){var ze=(ye-Te)/J+ge;return Zt.constrain(ze,0,Z)},qe=function(ge,Te,ye){var ze=(Te-ye)/J+ge;return Zt.constrain(ze,0,Z)},fe=un.behavior.drag().on("dragstart",function(){var ge=un.event.sourceEvent;ge.type==="touchstart"?le=ge.changedTouches[0].clientY:le=ge.clientY,ve=ee}).on("drag",function(){var ge=un.event.sourceEvent;ge.buttons===2||ge.ctrlKey||(ge.type==="touchmove"?ue=ge.changedTouches[0].clientY:ue=ge.clientY,ee=j(ve,le,ue),ce(ee,O,J))});M.call(fe);var be=un.behavior.drag().on("dragstart",function(){var ge=un.event.sourceEvent;ge.type==="touchstart"&&(le=ge.changedTouches[0].clientY,ve=ee)}).on("drag",function(){var ge=un.event.sourceEvent;ge.type==="touchmove"&&(ue=ge.changedTouches[0].clientY,ee=qe(ve,le,ue),ce(ee,O,J))});_.call(be)}function ce(ge,Te,ye){t._scrollY=e._fullLayout[n]._scrollY=ge,Jt.setTranslate(_,0,-ge),Jt.setRect(M,t._width,jt.scrollBarMargin+ge*ye,jt.scrollBarWidth,Te),m.select("rect").attr("y",D+ge)}if(e._context.edits.legendPosition){var xe,U,Q,X;y.classed("cursor-move",!0),J2.init({element:y.node(),gd:e,prepFn:function(ge){if(ge.target!==M.node()){var Te=Jt.getTranslate(y);Q=Te.x,X=Te.y}},moveFn:function(ge,Te){if(Q!==void 0&&X!==void 0){var ye=Q+ge,ze=X+Te;Jt.setTranslate(y,ye,ze),xe=J2.align(ye,t._width,C.l,C.l+C.w,t.xanchor),U=J2.align(ze+t._height,-t._height,C.t+C.h,C.t,t.yanchor)}},doneFn:function(){if(xe!==void 0&&U!==void 0){var ge={};ge[n+".x"]=xe,ge[n+".y"]=U,Qu.call("_guiRelayout",e,ge)}},clickFn:function(ge,Te){var ye=l.selectAll("g.traces").filter(function(){var ze=this.getBoundingClientRect();return Te.clientX>=ze.left&&Te.clientX<=ze.right&&Te.clientY>=ze.top&&Te.clientY<=ze.bottom});ye.size()>0&&dk(e,y,ye,ge,Te)}})}}],e)}}function Yd(e,r,t){var a=e[0],n=a.width,i=r.entrywidthmode,l=a.trace.legendwidth||r.entrywidth;return i==="fraction"?r._maxWidth*l:t+(l||n)}function dk(e,r,t,a,n){var i=t.data()[0][0].trace,l={event:n,node:t.node(),curveNumber:i.index,expandedIndex:i.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};i._group&&(l.group=i._group),Qu.traceIs(i,"pie-like")&&(l.label=t.datum()[0].label);var o=lk.triggerHandler(e,"plotly_legendclick",l);if(a===1){if(o===!1)return;r._clickTimeout=setTimeout(function(){e._fullLayout&&ok(t,e,a)},e._context.doubleClickDelay)}else if(a===2){r._clickTimeout&&clearTimeout(r._clickTimeout),e._legendMouseDownTime=0;var s=lk.triggerHandler(e,"plotly_legenddoubleclick",l);s!==!1&&o!==!1&&ok(t,e,a)}}function Zee(e,r,t){var a=Xd(t),n=e.data()[0][0],i=n.trace,l=Qu.traceIs(i,"pie-like"),o=!t._inHover&&r._context.edits.legendText&&!l,s=t._maxNameLength,u,f;n.groupTitle?(u=n.groupTitle.text,f=n.groupTitle.font):(f=t.font,t.entries?u=n.text:(u=l?n.label:i.name,i._meta&&(u=Zt.templateString(u,i._meta))));var c=Zt.ensureSingle(e,"text",a+"text");c.attr("text-anchor","start").call(Jt.font,f).text(o?vk(u,s):u);var h=t.indentation+t.itemwidth+jt.itemGap*2;vs.positionText(c,h,0),o?c.call(vs.makeEditable,{gd:r,text:u}).call(Gd,e,r,t).on("edit",function(d){this.text(vk(d,s)).call(Gd,e,r,t);var p=n.trace._fullInput||{},y={};return y.name=d,p._isShape?Qu.call("_guiRelayout",r,"shapes["+i.index+"].name",y.name):Qu.call("_guiRestyle",r,y,i.index)}):Gd(c,e,r,t)}function vk(e,r){var t=Math.max(4,r);if(e&&e.trim().length>=t/2)return e;e=e||"";for(var a=t-e.length;a>0;a--)e+=" ";return e}function Jee(e,r,t){var a=r._context.doubleClickDelay,n,i=1,l=Zt.ensureSingle(e,"rect",t+"toggle",function(o){r._context.staticPlot||o.style("cursor","pointer").attr("pointer-events","all"),o.call(Vd.fill,"rgba(0,0,0,0)")});r._context.staticPlot||(l.on("mousedown",function(){n=new Date().getTime(),n-r._legendMouseDownTimea&&(i=Math.max(i-1,1)),dk(r,o,e,i,un.event)}}))}function Gd(e,r,t,a,n){a._inHover&&e.attr("data-notex",!0),vs.convertToTspans(e,t,function(){$ee(r,t,a,n)})}function $ee(e,r,t,a){var n=e.data()[0][0],i=n&&n.trace.showlegend;if(Array.isArray(i)&&(i=i[n.i]!==!1),!t._inHover&&n&&!i){e.remove();return}var l=e.select("g[class*=math-group]"),o=l.node(),s=Xd(t);t||(t=r._fullLayout[s]);var u=t.borderwidth,f;a===$u?f=t.title.font:n.groupTitle?f=n.groupTitle.font:f=t.font;var c=f.size*hk,h,d;if(o){var p=Jt.bBox(o);h=p.height,d=p.width,a===$u?Jt.setTranslate(l,u,u+h*.75):Jt.setTranslate(l,0,h*.25)}else{var y="."+s+(a===$u?"title":"")+"text",m=e.select(y),b=vs.lineCount(m),_=m.node();if(h=c*b,d=_?Jt.bBox(_).width:0,a===$u)t.title.side==="left"&&(d+=jt.itemGap*2),vs.positionText(m,u+jt.titlePad,u+c);else{var w=jt.itemGap*2+t.indentation+t.itemwidth;n.groupTitle&&(w=jt.itemGap,d-=t.indentation+t.itemwidth),vs.positionText(m,w,-c*((b-1)/2-.3))}}a===$u?(t._titleWidth=d,t._titleHeight=h):(n.lineHeight=c,n.height=Math.max(h,16)+3,n.width=d)}function Kee(e){var r=0,t=0,a=e.title.side;return a&&(a.indexOf("left")!==-1&&(r=e._titleWidth),a.indexOf("top")!==-1&&(t=e._titleHeight)),[r,t]}function Qee(e,r,t,a){var n=e._fullLayout,i=Xd(a);a||(a=n[i]);var l=n._size,o=fk.isVertical(a),s=fk.isGrouped(a),u=a.entrywidthmode==="fraction",f=a.borderwidth,c=2*f,h=jt.itemGap,d=a.indentation+a.itemwidth+h*2,p=2*(f+h),y=Wd(a),m=a.y<0||a.y===0&&y==="top",b=a.y>1||a.y===1&&y==="bottom",_=a.tracegroupgap,w={};let{orientation:x,yref:M}=a,{maxheight:k}=a,A=m||b||x!=="v"||M!=="paper";k||(k=A?.5:1);let C=A?n.height:l.h;a._maxHeight=Math.max(k>1?k:k*C,30);var D=0;a._width=0,a._height=0;var E=Kee(a);if(o)t.each(function(ce){var xe=ce[0].height;Jt.setTranslate(this,f+E[0],f+E[1]+a._height+xe/2+h),a._height+=xe,a._width=Math.max(a._width,ce[0].width)}),D=d+a._width,a._width+=h+d+c,a._height+=p,s&&(r.each(function(ce,xe){Jt.setTranslate(this,0,xe*a.tracegroupgap)}),a._height+=(a._lgroupsLength-1)*a.tracegroupgap);else{var R=Ud(a),N=a.x<0||a.x===0&&R==="right",I=a.x>1||a.x===1&&R==="left",H=b||m,G=n.width/2;a._maxWidth=Math.max(N?H&&R==="left"?l.l+l.w:G:I?H&&R==="right"?l.r+l.w:G:l.w,2*d);var W=0,V=0;t.each(function(ce){var xe=Yd(ce,a,d);W=Math.max(W,xe),V+=xe}),D=null;var O=0;if(s){var Y=0,Z=0,J=0;r.each(function(){var ce=0,xe=0;un.select(this).selectAll("g.traces").each(function(Q){var X=Yd(Q,a,d),ge=Q[0].height;Jt.setTranslate(this,E[0],E[1]+f+h+ge/2+xe),xe+=ge,ce=Math.max(ce,X),w[Q[0].trace.legendgroup]=ce});var U=ce+h;Z>0&&U+f+Z>a._maxWidth?(O=Math.max(O,Z),Z=0,J+=Y+_,Y=xe):Y=Math.max(Y,xe),Jt.setTranslate(this,Z,J),Z+=U}),a._width=Math.max(O,Z)+f,a._height=J+Y+p}else{var ee=t.size(),le=V+c+(ee-1)*h=a._maxWidth&&(O=Math.max(O,qe),ve=0,j+=ue,a._height+=ue,ue=0),Jt.setTranslate(this,E[0]+f+ve,E[1]+f+j+xe/2+h),qe=ve+U+h,ve+=Q,ue=Math.max(ue,xe)}),le?(a._width=ve+c,a._height=ue+p):(a._width=Math.max(O,qe)+c,a._height+=ue+p)}}a._width=Math.ceil(Math.max(a._width+E[0],a._titleWidth+2*(f+jt.titlePad))),a._height=Math.ceil(Math.max(a._height+E[1],a._titleHeight+2*(f+jt.itemGap))),a._effHeight=Math.min(a._height,a._maxHeight);var fe=e._context.edits,be=fe.legendText||fe.legendPosition;t.each(function(ce){var xe=un.select(this).select("."+i+"toggle"),U=ce[0].height,Q=ce[0].trace.legendgroup,X=Yd(ce,a,d);s&&Q!==""&&(X=w[Q]);var ge=be?d:D||X;!o&&!u&&(ge+=h/2),Jt.setRect(xe,0,-U/2,ge,U)})}function jee(e,r,t,a){var n=e._fullLayout,i=n[r],l=Ud(i),o=Wd(i),s=i.xref==="paper",u=i.yref==="paper";e._fullLayout._reservedMargin[r]={};var f=i.y<.5?"b":"t",c=i.x<.5?"l":"r",h={r:n.width-t,l:t+i._width,b:n.height-a,t:a+i._effHeight};if(s&&u)return $2.autoMargin(e,r,{x:i.x,y:i.y,l:i._width*Ku[l],r:i._width*sk[l],b:i._effHeight*sk[o],t:i._effHeight*Ku[o]});s?e._fullLayout._reservedMargin[r][f]=h[f]:u||i.orientation==="v"?e._fullLayout._reservedMargin[r][c]=h[c]:e._fullLayout._reservedMargin[r][f]=h[f]}function Ud(e){return Zt.isRightAnchor(e)?"right":Zt.isCenterAnchor(e)?"center":"left"}function Wd(e){return Zt.isBottomAnchor(e)?"bottom":Zt.isMiddleAnchor(e)?"middle":"top"}function Xd(e){return e._id||"legend"}});var t3=B(r3=>{"use strict";var hs=kr(),hl=zr(),mk=Nn(),Ct=Pe(),ere=Ct.pushUnique,j2=Ct.strTranslate,rre=Ct.strRotate,tre=Nc(),Gn=va(),are=HA(),Gi=Yr(),la=xr(),Zd=yi(),Ui=Zr(),nre=Ma().zindexSeparator,ef=gr(),gi=Hi(),ds=Tc(),ire=O2(),lre=Q2(),Mk=ds.YANGLE,e3=Math.PI*Mk/180,ore=1/Math.sin(e3),sre=Math.cos(e3),ure=Math.sin(e3),xt=ds.HOVERARROWSIZE,Or=ds.HOVERTEXTPAD,yk={box:!0,ohlc:!0,violin:!0,candlestick:!0},fre={scatter:!0,scattergl:!0,splom:!0};function gk(e,r){return e.distance-r.distance}r3.hover=function(r,t,a,n){r=Ct.getGraphDiv(r);var i=t.target;Ct.throttle(r._fullLayout._uid+ds.HOVERID,ds.HOVERMINTIME,function(){cre(r,t,a,n,i)})};r3.loneHover=function(r,t){var a=!0;Array.isArray(r)||(a=!1,r=[r]);var n=t.gd,i=Ck(n),l=Lk(n),o=r.map(function(m){var b=m._x0||m.x0||m.x||0,_=m._x1||m.x1||m.x||0,w=m._y0||m.y0||m.y||0,x=m._y1||m.y1||m.y||0,M=m.eventData;if(M){var k=Math.min(b,_),A=Math.max(b,_),C=Math.min(w,x),D=Math.max(w,x),E=m.trace;if(ef.traceIs(E,"gl3d")){var R=n._fullLayout[E.scene]._scene.container,N=R.offsetLeft,I=R.offsetTop;k+=N,A+=N,C+=I,D+=I}M.bbox={x0:k+l,x1:A+l,y0:C+i,y1:D+i},t.inOut_bbox&&t.inOut_bbox.push(M.bbox)}else M=!1;return{color:m.color||la.defaultLine,x0:m.x0||m.x||0,x1:m.x1||m.x||0,y0:m.y0||m.y||0,y1:m.y1||m.y||0,xLabel:m.xLabel,yLabel:m.yLabel,zLabel:m.zLabel,text:m.text,name:m.name,idealAlign:m.idealAlign,borderColor:m.borderColor,fontFamily:m.fontFamily,fontSize:m.fontSize,fontColor:m.fontColor,fontWeight:m.fontWeight,fontStyle:m.fontStyle,fontVariant:m.fontVariant,nameLength:m.nameLength,textAlign:m.textAlign,trace:m.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:m.hovertemplate||!1,hovertemplateLabels:m.hovertemplateLabels||!1,eventData:M}}),s=!1,u=kk(o,{gd:n,hovermode:"closest",rotateLabels:s,bgColor:t.bgColor||la.background,container:hs.select(t.container),outerContainer:t.outerContainer||t.container}),f=u.hoverLabels,c=5,h=0,d=0;f.sort(function(m,b){return m.y0-b.y0}).each(function(m,b){var _=m.y0-m.by/2;_-cA[0]._length||X<0||X>C[0]._length)return Zd.unhoverRaw(e,r)}if(r.pointerX=Q+A[0]._offset,r.pointerY=X+C[0]._offset,"xval"in r?W=gi.flat(i,r.xval):W=gi.p2c(A,Q),"yval"in r?V=gi.flat(i,r.yval):V=gi.p2c(C,X),!hl(W[0])||!hl(V[0]))return Ct.warn("Fx.hover failed",r,e),Zd.unhoverRaw(e,r)}var ye=1/0;function ze(vr,ft){for(Y=0;Yfe&&(H.splice(0,fe),ye=H[0].distance),c&&I!==0&&H.length===0){qe.distance=I,qe.index=!1;var jr=J._module.hoverPoints(qe,ve,j,"closest",{hoverLayer:o._hoverlayer});if(jr&&(jr=jr.filter(function(Pt){return Pt.spikeDistance<=I})),jr&&jr.length){var ga,Dn=jr.filter(function(Pt){return Pt.xa.showspikes&&Pt.xa.spikesnap!=="hovered data"});if(Dn.length){var ta=Dn[0];hl(ta.x0)&&hl(ta.y0)&&(ga=Ee(ta),(!be.vLinePoint||be.vLinePoint.spikeDistance>ga.spikeDistance)&&(be.vLinePoint=ga))}var Ri=jr.filter(function(Pt){return Pt.ya.showspikes&&Pt.ya.spikesnap!=="hovered data"});if(Ri.length){var En=Ri[0];hl(En.x0)&&hl(En.y0)&&(ga=Ee(En),(!be.hLinePoint||be.hLinePoint.spikeDistance>ga.spikeDistance)&&(be.hLinePoint=ga))}}}}}ze();function Ie(vr,ft,$r){for(var dt=null,Et=1/0,Mt,jr=0;jrvr.trace.index===Ae.trace.index):H=[Ae];var Se=H.length,Oe=Tk("x",Ae,o),Je=Tk("y",Ae,o);ze(Oe,Je);var We=[],Xe={},lr=0,tr=function(vr){var ft=yk[vr.trace.type]?Ak(vr):vr.trace.index;if(!Xe[ft])lr++,Xe[ft]=lr,We.push(vr);else{var $r=Xe[ft]-1,dt=We[$r];$r>0&&Math.abs(vr.distance)Se-1;Ke--)tr(H[Ke]);H=We,Le()}var Ne=e._hoverdata,ne=[],oe=Ck(e),Ce=Lk(e);for(let vr of H){var De=gi.makeEventData(vr,vr.trace,vr.cd);if(vr.hovertemplate!==!1){var ar=!1;vr.cd[vr.index]&&vr.cd[vr.index].ht&&(ar=vr.cd[vr.index].ht),vr.hovertemplate=ar||vr.trace.hovertemplate||!1}if(vr.xa&&vr.ya){var cr=vr.x0+vr.xa._offset,sr=vr.x1+vr.xa._offset,Ar=vr.y0+vr.ya._offset,Br=vr.y1+vr.ya._offset,et=Math.min(cr,sr),ut=Math.max(cr,sr),kt=Math.min(Ar,Br),_t=Math.max(Ar,Br);De.bbox={x0:et+Ce,x1:ut+Ce,y0:kt+oe,y1:_t+oe}}vr.eventData=[De],ne.push(De)}e._hoverdata=ne;var Ht=h==="y"&&(G.length>1||H.length>1)||h==="closest"&&ce&&H.length>1,ra=la.combine(o.plot_bgcolor||la.background,o.paper_bgcolor),Ia=kk(H,{gd:e,hovermode:h,rotateLabels:Ht,bgColor:ra,container:o._hoverlayer,outerContainer:o._paper.node(),commonLabelOpts:o.hoverlabel,hoverdistance:o.hoverdistance}),ma=Ia.hoverLabels;if(gi.isUnifiedHover(h)||(hre(ma,Ht,o,Ia.commonLabelBoundingBox),Sk(ma,Ht,o._invScaleX,o._invScaleY)),n&&n.tagName){var ya=ef.getComponentMethod("annotations","hasClickToShow")(e,ne);are(hs.select(n),ya?"pointer":"")}!n||a||!mre(e,r,Ne)||(Ne&&e.emit("plotly_unhover",{event:r,points:Ne}),e.emit("plotly_hover",{event:r,points:e._hoverdata,xaxes:A,yaxes:C,xvals:W,yvals:V}))}function Ak(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var vre=/([\s\S]*)<\/extra>/;function kk(e,r){var t=r.gd,a=t._fullLayout,n=r.hovermode,i=r.rotateLabels,l=r.bgColor,o=r.container,s=r.outerContainer,u=r.commonLabelOpts||{};if(e.length===0)return[[]];var f=r.fontFamily||ds.HOVERFONT,c=r.fontSize||ds.HOVERFONTSIZE,h=r.fontWeight||a.font.weight,d=r.fontStyle||a.font.style,p=r.fontVariant||a.font.variant,y=r.fontTextcase||a.font.textcase,m=r.fontLineposition||a.font.lineposition,b=r.fontShadow||a.font.shadow,_=e[0],w=_.xa,x=_.ya,M=n.charAt(0),k=M+"Label",A=_[k];if(A===void 0&&w.type==="multicategory")for(var C=0;Ca.width-oe&&(Ce=a.width-oe),Ae.attr("d","M"+(Ke-Ce)+",0L"+(Ke-Ce+xt)+","+ne+xt+"H"+oe+"v"+ne+(Or*2+tr.height)+"H"+-oe+"V"+ne+xt+"H"+(Ke-Ce-xt)+"Z"),Ke=Ce,Y.minX=Ke-oe,Y.maxX=Ke+oe,w.side==="top"?(Y.minY=Ne-(Or*2+tr.height),Y.maxY=Ne-Or):(Y.minY=Ne+Or,Y.maxY=Ne+(Or*2+tr.height))}else{var De,ar,cr;x.side==="right"?(De="start",ar=1,cr="",Ke=w._offset+w._length):(De="end",ar=-1,cr="-",Ke=w._offset),Ne=x._offset+(_.y0+_.y1)/2,Se.attr("text-anchor",De),Ae.attr("d","M0,0L"+cr+xt+","+xt+"V"+(Or+tr.height/2)+"h"+cr+(Or*2+tr.width)+"V-"+(Or+tr.height/2)+"H"+cr+xt+"V-"+xt+"Z"),Y.minY=Ne-(Or+tr.height/2),Y.maxY=Ne+(Or+tr.height/2),x.side==="right"?(Y.minX=Ke+xt,Y.maxX=Ke+xt+(Or*2+tr.width)):(Y.minX=Ke-xt-(Or*2+tr.width),Y.maxX=Ke-xt);var sr=tr.height/2,Ar=E-tr.top-sr,Br="clip"+a._uid+"commonlabel"+x._id,et;if(KeAe.hoverinfo!=="none");if(Re.length===0)return[];var Z=a.hoverlabel,J=Z.font,ee=Re[0],le=((n==="x unified"?ee.xa:ee.ya).unifiedhovertitle||{}).text,ue=le?Ct.hovertemplateString({data:n==="x unified"?[{xa:ee.xa,x:ee.xVal}]:[{ya:ee.ya,y:ee.yVal}],fallback:ee.trace.hovertemplatefallback,locale:a._d3locale,template:le}):A,ve={showlegend:!0,legend:{title:{text:ue,font:J},font:J,bgcolor:Z.bgcolor,bordercolor:Z.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:a.legend?a.legend.traceorder:void 0,orientation:"v"}},j={font:J};ire(ve,j,t._fullData);var qe=j.legend;qe.entries=[];for(var fe=0;fe=0?_e=Le:He+Te=0?_e=He:Ye+Te=0?$e=Be:Ue+ye=0?$e=Ue:ie+ye=0,(Re.idealAlign==="top"||!_t)&&Ht?(cr-=Ar/2,Re.anchor="end"):_t?(cr+=Ar/2,Re.anchor="start"):Re.anchor="middle",Re.crossPos=cr;else{if(Re.pos=cr,_t=ar+sr/2+kt<=R,Ht=ar-sr/2-kt>=0,(Re.idealAlign==="left"||!_t)&&Ht)ar-=sr/2,Re.anchor="end";else if(_t)ar+=sr/2,Re.anchor="start";else{Re.anchor="middle";var ra=kt/2,Ia=ar+ra-R,ma=ar-ra;Ia>0&&(ar-=Ia),ma<0&&(ar+=-ma)}Re.crossPos=ar}Ne.attr("text-anchor",Re.anchor),oe&&ne.attr("text-anchor",Re.anchor),Ae.attr("transform",j2(ar,cr)+(i?rre(Mk):""))}),{hoverLabels:hr,commonLabelBoundingBox:Y}}function xk(e,r,t,a,n,i){var c,h;var l="",o="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=Ct.templateString(e.name,e.trace._meta)),l=wk(e.name,e.nameLength));var s=t.charAt(0),u=s==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(o+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(o+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(o+=(o?"z: ":"")+e.zLabel)):r&&e[s+"Label"]===n?o=e[u+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(o=e.yLabel):e.yLabel===void 0?o=e.xLabel:o="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(o+=(o?"
":"")+e.text),e.extraText!==void 0&&(o+=(o?"
":"")+e.extraText),i&&o===""&&!e.hovertemplate&&(l===""&&i.remove(),o=l),(h=(c=e.trace)==null?void 0:c.hoverlabel)!=null&&h.split&&(e.hovertemplate="");let{hovertemplate:f=!1}=e;if(f){let d=e.hovertemplateLabels||e;e[s+"Label"]!==n&&(d[s+"other"]=d[s+"Val"],d[s+"otherLabel"]=d[s+"Label"]),o=Ct.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:a._d3locale,template:f}),o=o.replace(vre,(p,y)=>(l=wk(y,e.nameLength),""))}return[o,l]}function hre(e,r,t,a){var n=r?"xa":"ya",i=r?"ya":"xa",l=0,o=1,s=e.size(),u=new Array(s),f=0,c=a.minX,h=a.maxX,d=a.minY,p=a.maxY,y=function(W){return W*t._invScaleX},m=function(W){return W*t._invScaleY};e.each(function(W){var V=W[n],O=W[i],Y=V._id.charAt(0)==="x",Z=V.range;f===0&&Z&&Z[0]>Z[1]!==Y&&(o=-1);var J=0,ee=Y?t.width:t.height;if(t.hovermode==="x"||t.hovermode==="y"){var le=qk(W,r),ue=W.anchor,ve=ue==="end"?-1:1,j,qe;if(ue==="middle")j=W.crossPos+(Y?m(le.y-W.by/2):y(W.bx/2+W.tx2width/2)),qe=j+(Y?m(W.by):y(W.bx));else if(Y)j=W.crossPos+m(xt+le.y)-m(W.by/2-xt),qe=j+m(W.by);else{var fe=y(ve*xt+le.x),be=fe+y(ve*W.bx);j=W.crossPos+Math.min(fe,be),qe=W.crossPos+Math.max(fe,be)}Y?d!==void 0&&p!==void 0&&Math.min(qe,p)-Math.max(j,d)>1&&(O.side==="left"?(J=O._mainLinePosition,ee=t.width):ee=O._mainLinePosition):c!==void 0&&h!==void 0&&Math.min(qe,h)-Math.max(j,c)>1&&(O.side==="top"?(J=O._mainLinePosition,ee=t.height):ee=O._mainLinePosition)}u[f++]=[{datum:W,traceIndex:W.trace.index,dp:0,pos:W.pos,posref:W.posref,size:W.by*(Y?ore:1)/2,pmin:J,pmax:ee}]}),u.sort(function(W,V){return W[0].posref-V[0].posref||o*(V[0].traceIndex-W[0].traceIndex)});var b,_,w,x,M,k,A;function C(W){var V=W[0],O=W[W.length-1];if(_=V.pmin-V.pos-V.dp+V.size,w=O.pos+O.dp+O.size-V.pmax,_>.01){for(M=W.length-1;M>=0;M--)W[M].dp+=_;b=!1}if(!(w<.01)){if(_<-.01){for(M=W.length-1;M>=0;M--)W[M].dp-=w;b=!1}if(b){var Y=0;for(x=0;xV.pmax&&Y++;for(x=W.length-1;x>=0&&!(Y<=0);x--)k=W[x],k.pos>V.pmax-1&&(k.del=!0,Y--);for(x=0;x=0;M--)W[M].dp-=w;for(x=W.length-1;x>=0&&!(Y<=0);x--)k=W[x],k.pos+k.dp+k.size>V.pmax&&(k.del=!0,Y--)}}}for(;!b&&l<=s;){for(l++,b=!0,x=0;x.01){for(M=E.length-1;M>=0;M--)E[M].dp+=_;for(D.push.apply(D,E),u.splice(x+1,1),A=0,M=D.length-1;M>=0;M--)A+=D[M].dp;for(w=A/D.length,M=D.length-1;M>=0;M--)D[M].dp-=w;b=!1}else x++}u.forEach(C)}for(x=u.length-1;x>=0;x--){var I=u[x];for(M=I.length-1;M>=0;M--){var H=I[M],G=H.datum;G.offset=H.dp,G.del=H.del}}}function qk(e,r){var t=0,a=e.offset;return r&&(a*=-ure,t=e.offset*sre),{x:t,y:a}}function dre(e){var r={start:1,end:-1,middle:0}[e.anchor],t=r*(xt+Or),a=t+r*(e.txwidth+Or),n=e.anchor==="middle";return n&&(t-=e.tx2width/2,a+=e.txwidth/2+Or),{alignShift:r,textShiftX:t,text2ShiftX:a}}function Sk(e,r,t,a){var n=function(l){return l*t},i=function(l){return l*a};e.each(function(l){var o=hs.select(this);if(l.del)return o.remove();var s=o.select("text.nums"),u=l.anchor,f=u==="end"?-1:1,c=dre(l),h=qk(l,r),d=h.x,p=h.y,y=u==="middle",m="hoverlabel"in l.trace?l.trace.hoverlabel.showarrow:!0,b;y?b="M-"+n(l.bx/2+l.tx2width/2)+","+i(p-l.by/2)+"h"+n(l.bx)+"v"+i(l.by)+"h-"+n(l.bx)+"Z":m?b="M0,0L"+n(f*xt+d)+","+i(xt+p)+"v"+i(l.by/2-xt)+"h"+n(f*l.bx)+"v-"+i(l.by)+"H"+n(f*xt+d)+"V"+i(p-xt)+"Z":b="M"+n(f*xt+d)+","+i(p-l.by/2)+"h"+n(f*l.bx)+"v"+i(l.by)+"h"+n(-f*l.bx)+"Z",o.select("path").attr("d",b);var _=d+c.textShiftX,w=p+l.ty0-l.by/2+Or,x=l.textAlign||"auto";x!=="auto"&&(x==="left"&&u!=="start"?(s.attr("text-anchor","start"),_=y?-l.bx/2-l.tx2width/2+Or:-l.bx-Or):x==="right"&&u!=="end"&&(s.attr("text-anchor","end"),_=y?l.bx/2-l.tx2width/2-Or:l.bx+Or)),s.call(Gn.positionText,n(_),i(w)),l.tx2width&&(o.select("text.name").call(Gn.positionText,n(c.text2ShiftX+c.alignShift*Or+d),i(p+l.ty0-l.by/2+Or)),o.select("rect").call(Gi.setRect,n(c.text2ShiftX+(c.alignShift-1)*l.tx2width/2+d),i(p-l.by/2-1),n(l.tx2width),i(l.by+2)))})}function pre(e,r){var t=e.index,a=e.trace||{},n=e.cd[0],i=e.cd[t]||{};function l(h){return h||hl(h)&&h===0}var o=Array.isArray(t)?function(h,d){var p=Ct.castOption(n,t,h);return l(p)?p:Ct.extractOption({},a,"",d)}:function(h,d){return Ct.extractOption(i,a,h,d)};function s(h,d,p){var y=o(d,p);l(y)&&(e[h]=y)}if(s("hoverinfo","hi","hoverinfo"),s("bgcolor","hbg","hoverlabel.bgcolor"),s("borderColor","hbc","hoverlabel.bordercolor"),s("fontFamily","htf","hoverlabel.font.family"),s("fontSize","hts","hoverlabel.font.size"),s("fontColor","htc","hoverlabel.font.color"),s("fontWeight","htw","hoverlabel.font.weight"),s("fontStyle","hty","hoverlabel.font.style"),s("fontVariant","htv","hoverlabel.font.variant"),s("nameLength","hnl","hoverlabel.namelength"),s("textAlign","hta","hoverlabel.align"),e.posref=r==="y"||r==="closest"&&a.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=Ct.constrain(e.x0,0,e.xa._length),e.x1=Ct.constrain(e.x1,0,e.xa._length),e.y0=Ct.constrain(e.y0,0,e.ya._length),e.y1=Ct.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:Ui.hoverLabelText(e.xa,e.xLabelVal,a.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:Ui.hoverLabelText(e.ya,e.yLabelVal,a.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var u=Ui.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+u+" / -"+Ui.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+u,r==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var f=Ui.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+f+" / -"+Ui.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+f,r==="y"&&(e.distance+=1)}var c=e.hoverinfo||e.trace.hoverinfo;return c&&c!=="all"&&(c=Array.isArray(c)?c:c.split("+"),c.indexOf("x")===-1&&(e.xLabel=void 0),c.indexOf("y")===-1&&(e.yLabel=void 0),c.indexOf("z")===-1&&(e.zLabel=void 0),c.indexOf("text")===-1&&(e.text=void 0),c.indexOf("name")===-1&&(e.name=void 0)),e}function bk(e,r,t){var a=t.container,n=t.fullLayout,i=n._size,l=t.event,o=!!r.hLinePoint,s=!!r.vLinePoint,u,f;if(a.selectAll(".spikeline").remove(),!!(s||o)){var c=la.combine(n.plot_bgcolor,n.paper_bgcolor);if(o){var h=r.hLinePoint,d,p;u=h&&h.xa,f=h&&h.ya;var y=f.spikesnap;y==="cursor"?(d=l.pointerX,p=l.pointerY):(d=u._offset+h.x,p=f._offset+h.y);var m=mk.readability(h.color,c)<1.5?la.contrast(c):h.color,b=f.spikemode,_=f.spikethickness,w=f.spikecolor||m,x=Ui.getPxPosition(e,f),M,k;if(b.indexOf("toaxis")!==-1||b.indexOf("across")!==-1){if(b.indexOf("toaxis")!==-1&&(M=x,k=d),b.indexOf("across")!==-1){var A=f._counterDomainMin,C=f._counterDomainMax;f.anchor==="free"&&(A=Math.min(A,f.position),C=Math.max(C,f.position)),M=i.l+A*i.w,k=i.l+C*i.w}a.insert("line",":first-child").attr({x1:M,x2:k,y1:p,y2:p,"stroke-width":_,stroke:w,"stroke-dasharray":Gi.dashStyle(f.spikedash,_)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:M,x2:k,y1:p,y2:p,"stroke-width":_+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}b.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:x+(f.side!=="right"?_:-_),cy:p,r:_,fill:w}).classed("spikeline",!0)}if(s){var D=r.vLinePoint,E,R;u=D&&D.xa,f=D&&D.ya;var N=u.spikesnap;N==="cursor"?(E=l.pointerX,R=l.pointerY):(E=u._offset+D.x,R=f._offset+D.y);var I=mk.readability(D.color,c)<1.5?la.contrast(c):D.color,H=u.spikemode,G=u.spikethickness,W=u.spikecolor||I,V=Ui.getPxPosition(e,u),O,Y;if(H.indexOf("toaxis")!==-1||H.indexOf("across")!==-1){if(H.indexOf("toaxis")!==-1&&(O=V,Y=R),H.indexOf("across")!==-1){var Z=u._counterDomainMin,J=u._counterDomainMax;u.anchor==="free"&&(Z=Math.min(Z,u.position),J=Math.max(J,u.position)),O=i.t+(1-J)*i.h,Y=i.t+(1-Z)*i.h}a.insert("line",":first-child").attr({x1:E,x2:E,y1:O,y2:Y,"stroke-width":G,stroke:W,"stroke-dasharray":Gi.dashStyle(u.spikedash,G)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:E,x2:E,y1:O,y2:Y,"stroke-width":G+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}H.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:E,cy:V-(u.side!=="top"?G:-G),r:G,fill:W}).classed("spikeline",!0)}}}function mre(e,r,t){if(!t||t.length!==e._hoverdata.length)return!0;for(var a=t.length-1;a>=0;a--){var n=t[a],i=e._hoverdata[a];if(n.curveNumber!==i.curveNumber||String(n.pointNumber)!==String(i.pointNumber)||String(n.pointNumbers)!==String(i.pointNumbers)||n.binNumber!==i.binNumber)return!0}return!1}function _k(e,r){return!r||r.vLinePoint!==e._spikepoints.vLinePoint||r.hLinePoint!==e._spikepoints.hLinePoint}function wk(e,r){return Gn.plainText(e||"",{len:r,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function yre(e,r){for(var t=r.charAt(0),a=[],n=[],i=[],l=0;le.offsetTop+e.clientTop,Lk=e=>e.offsetLeft+e.clientLeft;function ju(e,r){var t=e._fullLayout,a=r.getBoundingClientRect(),n=a.left,i=a.top,l=n+a.width,o=i+a.height,s=Ct.apply3DTransform(t._invTransform)(n,i),u=Ct.apply3DTransform(t._invTransform)(l,o),f=s[0],c=s[1],h=u[0],d=u[1];return{x:f,y:c,width:h-f,height:d-c,top:Math.min(c,d),left:Math.min(f,h),right:Math.max(f,h),bottom:Math.max(c,d)}}});var Jd=B((m2e,Dk)=>{"use strict";var gre=Pe(),xre=xr(),bre=Hi().isUnifiedHover;Dk.exports=function(r,t,a,n){n=n||{};var i=t.legend;function l(o){n.font[o]||(n.font[o]=i?t.legend.font[o]:t.font[o])}t&&bre(t.hovermode)&&(n.font||(n.font={}),l("size"),l("family"),l("color"),l("weight"),l("style"),l("variant"),i?(n.bgcolor||(n.bgcolor=xre.combine(t.legend.bgcolor,t.paper_bgcolor)),n.bordercolor||(n.bordercolor=t.legend.bordercolor)):n.bgcolor||(n.bgcolor=t.paper_bgcolor)),a("hoverlabel.bgcolor",n.bgcolor),a("hoverlabel.bordercolor",n.bordercolor),a("hoverlabel.namelength",n.namelength),a("hoverlabel.showarrow",n.showarrow),gre.coerceFont(a,"hoverlabel.font",n.font),a("hoverlabel.align",n.align)}});var Pk=B((y2e,Ek)=>{"use strict";var _re=Pe(),wre=Jd(),Tre=mu();Ek.exports=function(r,t){function a(n,i){return _re.coerce(r,t,Tre,n,i)}wre(r,t,a)}});var Nk=B((g2e,zk)=>{"use strict";var Rk=Pe(),Mre=kc(),Are=Jd();zk.exports=function(r,t,a,n){function i(o,s){return Rk.coerce(r,t,Mre,o,s)}var l=Rk.extendFlat({},n.hoverlabel);t.hovertemplate&&(l.namelength=-1),Are(r,t,i,l)}});var a3=B((x2e,Fk)=>{"use strict";var kre=Pe(),qre=mu();Fk.exports=function(r,t){function a(n,i){return t[n]!==void 0?t[n]:kre.coerce(r,t,qre,n,i)}return a("clickmode"),a("hoversubplots"),a("hovermode")}});var Ok=B((b2e,Hk)=>{"use strict";var Ik=Pe(),Sre=mu(),Cre=a3(),Lre=Jd();Hk.exports=function(r,t){function a(f,c){return Ik.coerce(r,t,Sre,f,c)}var n=Cre(r,t);n&&(a("hoverdistance"),a("spikedistance"));var i=a("dragmode");i==="select"&&a("selectdirection");var l=t._has("mapbox"),o=t._has("map"),s=t._has("geo"),u=t._basePlotModules.length;t.dragmode==="zoom"&&((l||o||s)&&u===1||(l||o)&&s&&u===2)&&(t.dragmode="pan"),Lre(r,t,a),Ik.coerceFont(a,"hoverlabel.grouptitlefont",t.hoverlabel.font)}});var Vk=B((_2e,Yk)=>{"use strict";var n3=Pe(),Bk=gr();Yk.exports=function(r){var t=r.calcdata,a=r._fullLayout;function n(u){return function(f){return n3.coerceHoverinfo({hoverinfo:f},{_module:u._module},a)}}for(var i=0;i{"use strict";var Ere=gr(),Pre=t3().hover;Gk.exports=function(r,t,a){var n=Ere.getComponentMethod("annotations","onClick")(r,r._hoverdata);a!==void 0&&Pre(r,t,a,!0);function i(){r.emit("plotly_click",{points:r._hoverdata,event:t})}r._hoverdata&&t&&t.target&&(n&&n.then?n.then(i):i(),t.stopImmediatePropagation&&t.stopImmediatePropagation())}});var xi=B((T2e,Zk)=>{"use strict";var Rre=kr(),$d=Pe(),zre=yi(),nv=Hi(),Wk=mu(),Xk=t3();Zk.exports={moduleType:"component",name:"fx",constants:Tc(),schema:{layout:Wk},attributes:kc(),layoutAttributes:Wk,supplyLayoutGlobalDefaults:Pk(),supplyDefaults:Nk(),supplyLayoutDefaults:Ok(),calc:Vk(),getDistanceFunction:nv.getDistanceFunction,getClosest:nv.getClosest,inbox:nv.inbox,quadrature:nv.quadrature,appendArrayPointValue:nv.appendArrayPointValue,castHoverOption:Fre,castHoverinfo:Ire,hover:Xk.hover,unhover:zre.unhover,loneHover:Xk.loneHover,loneUnhover:Nre,click:Uk()};function Nre(e){var r=$d.isD3Selection(e)?e:Rre.select(e);r.selectAll("g.hovertext").remove(),r.selectAll(".spikeline").remove()}function Fre(e,r,t){return $d.castOption(e,r,"hoverlabel."+t)}function Ire(e,r,t){function a(n){return $d.coerceHoverinfo({hoverinfo:n},{_module:e._module},r)}return $d.castOption(e,t,"hoverinfo",a)}});var rf=B(dl=>{"use strict";dl.selectMode=function(e){return e==="lasso"||e==="select"};dl.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};dl.openMode=function(e){return e==="drawline"||e==="drawopenpath"};dl.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};dl.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};dl.selectingOrDrawing=function(e){return dl.freeMode(e)||dl.rectMode(e)}});var Kd=B((A2e,Jk)=>{"use strict";Jk.exports=function(r){var t=r._fullLayout;t._glcanvas&&t._glcanvas.size()&&t._glcanvas.each(function(a){a.regl&&a.regl.clear({color:!0,depth:!0})})}});var Qd=B((k2e,$k)=>{"use strict";$k.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var e1=B((q2e,Kk)=>{"use strict";var jd=32;Kk.exports={CIRCLE_SIDES:jd,i000:0,i090:jd/4,i180:jd/2,i270:jd/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var r1=B((S2e,jk)=>{"use strict";var Hre=Pe().strTranslate;function Qk(e,r){switch(e.type){case"log":return e.p2d(r);case"date":return e.p2r(r,0,e.calendar);default:return e.p2r(r)}}function Ore(e,r){switch(e.type){case"log":return e.d2p(r);case"date":return e.r2p(r,0,e.calendar);default:return e.r2p(r)}}function Bre(e){var r=e._id.charAt(0)==="y"?1:0;return function(t){return Qk(e,t[r])}}function Yre(e){return Hre(e.xaxis._offset,e.yaxis._offset)}jk.exports={p2r:Qk,r2p:Ore,axValue:Bre,getTransform:Yre}});var Ql=B(pl=>{"use strict";var Vre=Xg(),tq=e1(),tf=tq.CIRCLE_SIDES,i3=tq.SQRT2,aq=r1(),eq=aq.p2r,rq=aq.r2p,Gre=[0,3,4,5,6,1,2],Ure=[0,3,4,1,2];pl.writePaths=function(e){var r=e.length;if(!r)return"M0,0Z";for(var t="",a=0;a0&&s{"use strict";var nq=Ut(),uq=rf(),Wre=uq.drawMode,Xre=uq.openMode,af=e1(),iq=af.i000,lq=af.i090,oq=af.i180,sq=af.i270,Zre=af.cos45,Jre=af.sin45,fq=r1(),a1=fq.p2r,jl=fq.r2p,$re=Gl(),Kre=$re.clearOutline,n1=Ql(),Qre=n1.readPaths,jre=n1.writePaths,ete=n1.ellipseOver,rte=n1.fixDatesForPaths;function tte(e,r){if(e.length){var t=e[0][0];if(t){var a=r.gd,n=r.isActiveShape,i=r.dragmode,l=(a.layout||{}).shapes||[];if(!Wre(i)&&n!==void 0){var o=a._fullLayout._activeShapeIndex;if(o{"use strict";var ate=rf(),nte=ate.selectMode,ite=Gl(),lte=ite.clearOutline,l3=Ql(),ote=l3.readPaths,ste=l3.writePaths,ute=l3.fixDatesForPaths;hq.exports=function(r,t){if(r.length){var a=r[0][0];if(a){var n=a.getAttribute("d"),i=t.gd,l=i._fullLayout.newselection,o=t.plotinfo,s=o.xaxis,u=o.yaxis,f=t.isActiveSelection,c=t.dragmode,h=(i.layout||{}).selections||[];if(!nte(c)&&f!==void 0){var d=i._fullLayout._activeSelectionIndex;if(d{"use strict";dq.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var eo=B(ha=>{"use strict";var ps=lv(),pq=Pe(),l1=Zr();ha.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(r){return r}};ha.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(r){return r}};ha.decodeDate=function(e){return function(r){return r.replace&&(r=r.replace("_"," ")),e(r)}};ha.encodeDate=function(e){return function(r){return e(r).replace(" ","_")}};ha.extractPathCoords=function(e,r,t){var a=[],n=e.match(ps.segmentRE);return n.forEach(function(i){var l=r[i.charAt(0)].drawn;if(l!==void 0){var o=i.slice(1).match(ps.paramRE);if(!(!o||o.lengthd&&(y="X"),y});return u>d&&(p=p.replace(/[\s,]*X.*/,""),pq.log("Ignoring extra params in segment "+s)),f+p})}function ov(e,r){r=r||0;var t=0;return r&&e&&(e.type==="category"||e.type==="multicategory")&&(t=(e.r2p(1)-e.r2p(0))*r),t}});var u3=B((R2e,xq)=>{"use strict";var cte=Pe(),nf=Zr(),mq=va(),yq=Yr(),vte=Ql().readPaths,s3=eo(),hte=s3.getPathString,gq=Ah(),dte=Ea().FROM_TL;xq.exports=function(r,t,a,n){if(n.selectAll(".shape-label").remove(),!!(a.label.text||a.label.texttemplate)){var i;if(a.label.texttemplate){var l={};if(a.type!=="path"){var o=nf.getFromId(r,a.xref),s=nf.getFromId(r,a.yref);for(var u in gq){var f=gq[u](a,o,s);f!==void 0&&(l[u]=f)}}i=cte.texttemplateStringForShapes({data:[l],fallback:a.label.texttemplatefallback,locale:r._fullLayout._d3locale,template:a.label.texttemplate})}else i=a.label.text;var c={"data-index":t},h=a.label.font,d={"data-notex":1},p=n.append("g").attr(c).classed("shape-label",!0),y=p.append("text").attr(d).classed("shape-label-text",!0).text(i),m,b,_,w;if(a.path){var x=hte(r,a),M=vte(x,r);m=1/0,_=1/0,b=-1/0,w=-1/0;for(var k=0;k=e?n=r-a:n=a-r,-180/Math.PI*Math.atan2(n,i)}function mte(e,r,t,a,n,i,l){var o=n.label.textposition,s=n.label.textangle,u=n.label.padding,f=n.type,c=Math.PI/180*i,h=Math.sin(c),d=Math.cos(c),p=n.label.xanchor,y=n.label.yanchor,m,b,_,w;if(f==="line"){o==="start"?(m=e,b=r):o==="end"?(m=t,b=a):(m=(e+t)/2,b=(r+a)/2),p==="auto"&&(o==="start"?s==="auto"?t>e?p="left":te?p="right":te?p="right":te?p="left":t{"use strict";var yte=Pe(),gte=yte.strTranslate,bq=yi(),Tq=rf(),xte=Tq.drawMode,Mq=Tq.selectMode,Aq=gr(),_q=xr(),s1=e1(),bte=s1.i000,_te=s1.i090,wte=s1.i180,Tte=s1.i270,Mte=Gl(),kq=Mte.clearOutlineControllers,c3=Ql(),o1=c3.pointsOnRectangle,f3=c3.pointsOnEllipse,Ate=c3.writePaths,kte=i1().newShapes,qte=i1().createShapeObj,Ste=o3(),Cte=u3();qq.exports=function e(r,t,a,n){n||(n=0);var i=a.gd;function l(){e(r,t,a,n++),(f3(r[0])||a.hasText)&&o({redrawing:!0})}function o(V){var O={};a.isActiveShape!==void 0&&(a.isActiveShape=!1,O=kte(t,a)),a.isActiveSelection!==void 0&&(a.isActiveSelection=!1,O=Ste(t,a),i._fullLayout._reselect=!0),Object.keys(O).length&&Aq.call((V||{}).redrawing?"relayout":"_guiRelayout",i,O)}var s=i._fullLayout,u=s._zoomlayer,f=a.dragmode,c=xte(f),h=Mq(f);(c||h)&&(i._fullLayout._outlining=!0),kq(i),t.attr("d",Ate(r));var d,p,y,m,b;if(!n&&(a.isActiveShape||a.isActiveSelection)){b=Lte([],r);var _=u.append("g").attr("class","outline-controllers");E(_),W()}if(c&&a.hasText){var w=u.select(".label-temp"),x=qte(t,a,a.dragmode);Cte(i,"label-temp",x,w)}function M(V){y=+V.srcElement.getAttribute("data-i"),m=+V.srcElement.getAttribute("data-j"),d[y][m].moveFn=k}function k(V,O){if(r.length){var Y=b[y][m][1],Z=b[y][m][2],J=r[y],ee=J.length;if(o1(J)){var le=V,ue=O;if(a.isActiveSelection){var ve=wq(J,m);ve[1]===J[m][1]?ue=0:le=0}for(var j=0;j1&&!(V.length===2&&V[1][0]==="Z")&&(m===0&&(V[0][0]="M"),r[y]=V,l(),o())}}function D(V,O){if(V===2){y=+O.srcElement.getAttribute("data-i"),m=+O.srcElement.getAttribute("data-j");var Y=r[y];!o1(Y)&&!f3(Y)&&C()}}function E(V){d=[];for(var O=0;O{"use strict";var Ete=kr(),Pq=gr(),Sq=Pe(),lf=Zr(),Pte=Ql().readPaths,Rte=u1(),c1=u3(),Rq=Gl().clearOutlineControllers,v3=xr(),d3=Yr(),zte=lt().arrayEditor,Cq=yi(),Lq=Kl(),ms=lv(),fn=eo(),h3=fn.getPathString;Fq.exports={draw:p3,drawOne:zq,eraseActiveShape:Ite,drawLabel:c1};function p3(e){var r=e._fullLayout;r._shapeUpperLayer.selectAll("path").remove(),r._shapeLowerLayer.selectAll("path").remove(),r._shapeUpperLayer.selectAll("text").remove(),r._shapeLowerLayer.selectAll("text").remove();for(var t in r._plots){var a=r._plots[t].shapelayer;a&&(a.selectAll("path").remove(),a.selectAll("text").remove())}for(var n=0;nl&&Be>o&&!Ie.shiftKey?Cq.getCursor(Ue/Fe,1-Le/Be):"move";Lq(r,He),qe=He.split("-")[0]}}function xe(Ie){f1(e)||(s&&(b=J(t.xanchor)),u&&(_=ee(t.yanchor)),t.type==="path"?R=t.path:(d=s?t.x0:J(t.x0),p=u?t.y0:ee(t.y0),y=s?t.x1:J(t.x1),m=u?t.y1:ee(t.y1)),dm?(w=p,A="y0",x=m,C="y1"):(w=m,A="y1",x=p,C="y0"),ce(Ie),Te(n,t),ze(r,t,e),j.moveFn=qe==="move"?X:ge,j.altKey=Ie.altKey)}function U(){f1(e)||(Lq(r),ye(n),Nq(r,e,t),Pq.call("_guiRelayout",e,i.getUpdateObj()))}function Q(){f1(e)||ye(n)}function X(Ie,Ee){if(t.type==="path"){var Fe=function(Le){return Le},Be=Fe,Ue=Fe;s?h("xanchor",t.xanchor=le(b+Ie)):(Be=function(He){return le(J(He)+Ie)},I&&I.type==="date"&&(Be=fn.encodeDate(Be))),u?h("yanchor",t.yanchor=ue(_+Ee)):(Ue=function(He){return ue(ee(He)+Ee)},G&&G.type==="date"&&(Ue=fn.encodeDate(Ue))),h("path",t.path=Dq(R,Be,Ue))}else s?h("xanchor",t.xanchor=le(b+Ie)):(h("x0",t.x0=le(d+Ie)),h("x1",t.x1=le(y+Ie))),u?h("yanchor",t.yanchor=ue(_+Ee)):(h("y0",t.y0=ue(p+Ee)),h("y1",t.y1=ue(m+Ee)));r.attr("d",h3(e,t)),Te(n,t),c1(e,a,t,N)}function ge(Ie,Ee){if(c){var Fe=function(Xe){return Xe},Be=Fe,Ue=Fe;s?h("xanchor",t.xanchor=le(b+Ie)):(Be=function(lr){return le(J(lr)+Ie)},I&&I.type==="date"&&(Be=fn.encodeDate(Be))),u?h("yanchor",t.yanchor=ue(_+Ee)):(Ue=function(lr){return ue(ee(lr)+Ee)},G&&G.type==="date"&&(Ue=fn.encodeDate(Ue))),h("path",t.path=Dq(R,Be,Ue))}else if(f){if(qe==="resize-over-start-point"){var Le=d+Ie,He=u?p-Ee:p+Ee;h("x0",t.x0=s?Le:le(Le)),h("y0",t.y0=u?He:ue(He))}else if(qe==="resize-over-end-point"){var Ye=y+Ie,ie=u?m-Ee:m+Ee;h("x1",t.x1=s?Ye:le(Ye)),h("y1",t.y1=u?ie:ue(ie))}}else{var _e=function(Xe){return qe.indexOf(Xe)!==-1},$e=_e("n"),hr=_e("s"),Re=_e("w"),Ae=_e("e"),Se=$e?w+Ee:w,Oe=hr?x+Ee:x,Je=Re?M+Ie:M,We=Ae?k+Ie:k;u&&($e&&(Se=w-Ee),hr&&(Oe=x-Ee)),(!u&&Oe-Se>o||u&&Se-Oe>o)&&(h(A,t[A]=u?Se:ue(Se)),h(C,t[C]=u?Oe:ue(Oe))),We-Je>l&&(h(D,t[D]=s?Je:le(Je)),h(E,t[E]=s?We:le(We)))}r.attr("d",h3(e,t)),Te(n,t),c1(e,a,t,N)}function Te(Ie,Ee){(s||u)&&Fe();function Fe(){var Be=Ee.type!=="path",Ue=Ie.selectAll(".visual-cue").data([0]),Le=1;Ue.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":Le}).classed("visual-cue",!0);var He=J(s?Ee.xanchor:Sq.midRange(Be?[Ee.x0,Ee.x1]:fn.extractPathCoords(Ee.path,ms.paramIsX))),Ye=ee(u?Ee.yanchor:Sq.midRange(Be?[Ee.y0,Ee.y1]:fn.extractPathCoords(Ee.path,ms.paramIsY)));if(He=fn.roundPositionForSharpStrokeRendering(He,Le),Ye=fn.roundPositionForSharpStrokeRendering(Ye,Le),s&&u){var ie="M"+(He-1-Le)+","+(Ye-1-Le)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Ue.attr("d",ie)}else if(s){var _e="M"+(He-1-Le)+","+(Ye-9-Le)+"v18 h2 v-18 Z";Ue.attr("d",_e)}else{var $e="M"+(He-9-Le)+","+(Ye-1-Le)+"h18 v2 h-18 Z";Ue.attr("d",$e)}}}function ye(Ie){Ie.selectAll(".visual-cue").remove()}function ze(Ie,Ee,Fe){var Be=Ee.xref,Ue=Ee.yref,Le=lf.getFromId(Fe,Be),He=lf.getFromId(Fe,Ue),Ye="";Be!=="paper"&&!Le.autorange&&(Ye+=Be),Ue!=="paper"&&!He.autorange&&(Ye+=Ue),d3.setClipUrl(Ie,Ye?"clip"+Fe._fullLayout._uid+Ye:null,Fe)}}function Dq(e,r,t){return e.replace(ms.segmentRE,function(a){var n=0,i=a.charAt(0),l=ms.paramIsX[i],o=ms.paramIsY[i],s=ms.numParams[i],u=a.slice(1).replace(ms.paramRE,function(f){return n>=s||(l[n]?f=r(f):o[n]&&(f=t(f)),n++),f});return i+u})}function Fte(e,r){if(v1(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeShapeIndex){Eq(e);return}e._fullLayout._activeShapeIndex=a,e._fullLayout._deactivateShape=Eq,p3(e)}}}function Eq(e){if(v1(e)){var r=e._fullLayout._activeShapeIndex;r>=0&&(Rq(e),delete e._fullLayout._activeShapeIndex,p3(e))}}function Ite(e){if(v1(e)){Rq(e);var r=e._fullLayout._activeShapeIndex,t=(e.layout||{}).shapes||[];if(r{"use strict";var Un=gr(),Iq=Rt(),Hq=Ut(),Gr=Qd(),Hte=h1().eraseActiveShape,d1=Pe(),Ir=d1._,Ur=Wq.exports={};Ur.toImage={name:"toImage",title:function(e){var r=e._context.toImageButtonOptions||{},t=r.format||"png";return t==="png"?Ir(e,"Download plot as a PNG"):Ir(e,"Download plot")},icon:Gr.camera,click:function(e){var r=e._context.toImageButtonOptions,t={format:r.format||"png"};d1.notifier(Ir(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(a){a in r&&(t[a]=r[a])}),Un.call("downloadImage",e,t).then(function(a){d1.notifier(Ir(e,"Snapshot succeeded")+" - "+a,"long")}).catch(function(){d1.notifier(Ir(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Ur.sendDataToCloud={name:"sendDataToCloud",title:function(e){return Ir(e,"Edit in Chart Studio")},icon:Gr.disk,click:function(e){Iq.sendDataToCloud(e)}};Ur.editInChartStudio={name:"editInChartStudio",title:function(e){return Ir(e,"Edit in Chart Studio")},icon:Gr.pencil,click:function(e){Iq.sendDataToCloud(e)}};Ur.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return Ir(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Gr.zoombox,click:Ga};Ur.pan2d={name:"pan2d",_cat:"pan",title:function(e){return Ir(e,"Pan")},attr:"dragmode",val:"pan",icon:Gr.pan,click:Ga};Ur.select2d={name:"select2d",_cat:"select",title:function(e){return Ir(e,"Box Select")},attr:"dragmode",val:"select",icon:Gr.selectbox,click:Ga};Ur.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return Ir(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Gr.lasso,click:Ga};Ur.drawclosedpath={name:"drawclosedpath",title:function(e){return Ir(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Gr.drawclosedpath,click:Ga};Ur.drawopenpath={name:"drawopenpath",title:function(e){return Ir(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Gr.drawopenpath,click:Ga};Ur.drawline={name:"drawline",title:function(e){return Ir(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Gr.drawline,click:Ga};Ur.drawrect={name:"drawrect",title:function(e){return Ir(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Gr.drawrect,click:Ga};Ur.drawcircle={name:"drawcircle",title:function(e){return Ir(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Gr.drawcircle,click:Ga};Ur.eraseshape={name:"eraseshape",title:function(e){return Ir(e,"Erase active shape")},icon:Gr.eraseshape,click:Hte};Ur.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return Ir(e,"Zoom in")},attr:"zoom",val:"in",icon:Gr.zoom_plus,click:Ga};Ur.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return Ir(e,"Zoom out")},attr:"zoom",val:"out",icon:Gr.zoom_minus,click:Ga};Ur.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return Ir(e,"Autoscale")},attr:"zoom",val:"auto",icon:Gr.autoscale,click:Ga};Ur.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return Ir(e,"Reset axes")},attr:"zoom",val:"reset",icon:Gr.home,click:Ga};Ur.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return Ir(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Gr.tooltip_basic,gravity:"ne",click:Ga};Ur.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return Ir(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Gr.tooltip_compare,gravity:"ne",click:Ga};function Ga(e,r){var t=r.currentTarget,a=t.getAttribute("data-attr"),n=t.getAttribute("data-val")||!0,i=e._fullLayout,l={},o=Hq.list(e,null,!0),s=i._cartesianSpikesEnabled,u,f;if(a==="zoom"){var c=n==="in"?.5:2,h=(1+c)/2,d=(1-c)/2,p,y;for(f=0;f{"use strict";var Xq=g3(),Yte=Object.keys(Xq),Zq=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],Jq=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(Zq),sf=[],Vte=function(e){if(Jq.indexOf(e._cat||e.name)===-1){var r=e.name,t=(e._cat||e.name).toLowerCase();sf.indexOf(r)===-1&&sf.push(r),sf.indexOf(t)===-1&&sf.push(t)}};Yte.forEach(function(e){Vte(Xq[e])});sf.sort();$q.exports={DRAW_MODES:Zq,backButtons:Jq,foreButtons:sf}});var b3=B((O2e,Kq)=>{"use strict";var H2e=x3();Kq.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var jq=B((B2e,Qq)=>{"use strict";var Gte=Pe(),sv=xr(),Ute=lt(),Wte=b3();Qq.exports=function(r,t){var a=r.modebar||{},n=Ute.newContainer(t,"modebar");function i(o,s){return Gte.coerce(a,n,Wte,o,s)}i("orientation"),i("bgcolor",sv.addOpacity(t.paper_bgcolor,.5));var l=sv.contrast(sv.rgb(t.modebar.bgcolor));i("color",sv.addOpacity(l,.3)),i("activecolor",sv.addOpacity(l,.7)),i("uirevision",t.uirevision),i("add"),i("remove")}});var aS=B((Y2e,tS)=>{"use strict";var _3=kr(),Xte=zr(),m1=Pe(),eS=Qd(),Zte=lh().version,Jte=new DOMParser;function rS(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Wi=rS.prototype;Wi.update=function(e,r){this.graphInfo=e;var t=this.graphInfo._context,a=this.graphInfo._fullLayout,n="modebar-"+a._uid;this.element.setAttribute("id",n),this.element.setAttribute("role","toolbar"),this._uid=n,this.element.className="modebar modebar--custom",t.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),a.modebar.orientation==="v"&&(this.element.className+=" vertical",r=r.reverse());var i=a.modebar,l="#"+n+" .modebar-group";document.querySelectorAll(l).forEach(function(c){c.style.backgroundColor=i.bgcolor});var o=!this.hasButtons(r),s=this.hasLogo!==t.displaylogo,u=this.locale!==t.locale;if(this.locale=t.locale,(o||s||u)&&(this.removeAllButtons(),this.updateButtons(r),t.watermark||t.displaylogo)){var f=this.getLogo();t.watermark&&(f.className=f.className+" watermark"),a.modebar.orientation==="v"?this.element.insertBefore(f,this.element.childNodes[0]):this.element.appendChild(f),this.hasLogo=!0}this.updateActiveButton(),m1.setStyleOnHover("#"+n+" .modebar-btn",".active",".icon path","fill: "+i.activecolor,"fill: "+i.color,this.element)};Wi.updateButtons=function(e){var r=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(t){var a=r.createGroup();t.forEach(function(n){var i=n.name;if(!i)throw new Error("must provide button 'name' in button config");if(r.buttonsNames.indexOf(i)!==-1)throw new Error("button name '"+i+"' is taken");r.buttonsNames.push(i);var l=r.createButton(n);r.buttonElements.push(l),a.appendChild(l)}),r.element.appendChild(a)})};Wi.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var r=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=r.bgcolor,e};Wi.createButton=function(e){var r=this,t=document.createElement("button");t.setAttribute("type","button"),t.setAttribute("rel","tooltip"),t.className="modebar-btn";var a=e.title;a===void 0?a=e.name:typeof a=="function"&&(a=a(this.graphInfo)),(a||a===0)&&(t.setAttribute("data-title",a),t.setAttribute("aria-label",a)),e.attr!==void 0&&t.setAttribute("data-attr",e.attr);var n=e.val;n!==void 0&&(typeof n=="function"&&(n=n(this.graphInfo)),t.setAttribute("data-val",n));var i=e.click;if(typeof i!="function")throw new Error("must provide button 'click' function in button config");t.addEventListener("click",function(o){e.click(r.graphInfo,o),r.updateActiveButton(o.currentTarget)}),t.setAttribute("data-toggle",e.toggle||!1),e.toggle&&_3.select(t).classed("active",!0);var l=e.icon;return typeof l=="function"?t.appendChild(l()):t.appendChild(this.createIcon(l||eS.question)),t.setAttribute("data-gravity",e.gravity||"n"),t};Wi.createIcon=function(e){var r=Xte(e.height)?Number(e.height):e.ascent-e.descent,t="http://www.w3.org/2000/svg",a;if(e.path){a=document.createElementNS(t,"svg"),a.setAttribute("viewBox",[0,0,e.width,r].join(" ")),a.setAttribute("class","icon");var n=document.createElementNS(t,"path");n.setAttribute("d",e.path),e.transform?n.setAttribute("transform",e.transform):e.ascent!==void 0&&n.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),a.appendChild(n)}if(e.svg){var i=Jte.parseFromString(e.svg,"application/xml");a=i.childNodes[0]}return a.setAttribute("height","1em"),a.setAttribute("width","1em"),a};Wi.updateActiveButton=function(e){var r=this.graphInfo._fullLayout,t=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(a){var n=a.getAttribute("data-val")||!0,i=a.getAttribute("data-attr"),l=a.getAttribute("data-toggle")==="true",o=_3.select(a),s=function(c,h){var d=r.modebar,p=c.querySelector(".icon path");p&&(h||c.matches(":hover")?p.style.fill=d.activecolor:p.style.fill=d.color)};if(l){if(i===t){var u=!o.classed("active");o.classed("active",u),s(a,u)}}else{var f=i===null?i:m1.nestedProperty(r,i).get();o.classed("active",f===n),s(a,f===n)}})};Wi.hasButtons=function(e){var r=this.buttons;if(!r||e.length!==r.length)return!1;for(var t=0;t{"use strict";var Qte=Ut(),nS=wn(),w3=gr(),jte=Hi().isUnifiedHover,eae=aS(),y1=g3(),rae=x3().DRAW_MODES,tae=Pe().extendDeep;iS.exports=function(r){var t=r._fullLayout,a=r._context,n=t._modeBar;if(!a.displayModeBar&&!a.watermark){n&&(n.destroy(),delete t._modeBar);return}if(!Array.isArray(a.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(a.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var i=a.modeBarButtons,l;Array.isArray(i)&&i.length?l=sae(i):!a.displayModeBar&&a.watermark?l=[]:l=aae(r),n?n.update(r,l):t._modeBar=eae(r,l)};function aae(e){var r=e._fullLayout,t=e._fullData,a=e._context;function n(O,Y){if(typeof Y=="string"){if(Y.toLowerCase()===O.toLowerCase())return!0}else{var Z=Y.name,J=Y._cat||Y.name;if(Z===O||J===O.toLowerCase())return!0}return!1}var i=r.modebar.add;typeof i=="string"&&(i=[i]);var l=r.modebar.remove;typeof l=="string"&&(l=[l]);var o=a.modeBarButtonsToAdd.concat(i.filter(function(O){for(var Y=0;Y1?(E=["toggleHover"],R=["resetViews"]):c?(D=["zoomInGeo","zoomOutGeo"],E=["hoverClosestGeo"],R=["resetGeo"]):f?(E=["hoverClosest3d"],R=["resetCameraDefault3d","resetCameraLastSave3d"]):y?(D=["zoomInMapbox","zoomOutMapbox"],E=["toggleHover"],R=["resetViewMapbox"]):m?(D=["zoomInMap","zoomOutMap"],E=["toggleHover"],R=["resetViewMap"]):h?E=["hoverClosestPie"]:w?(E=["hoverClosestCartesian","hoverCompareCartesian"],R=["resetViewSankey"]):E=["toggleHover"],u&&E.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(lae(t)||M)&&(E=[]),u&&!x&&(D=["zoomIn2d","zoomOut2d","autoScale2d"],R[0]!=="resetViews"&&(R=["resetScale2d"])),f?N=["zoom3d","pan3d","orbitRotation","tableRotation"]:u&&!x||p?N=["zoom2d","pan2d"]:y||m||c?N=["pan2d"]:b&&(N=["zoom2d"]),iae(t)&&N.push("select2d","lasso2d");var I=[],H=function(O){I.indexOf(O)===-1&&E.indexOf(O)!==-1&&I.push(O)};if(Array.isArray(o)){for(var G=[],W=0;W{"use strict";oS.exports={moduleType:"component",name:"modebar",layoutAttributes:b3(),supplyLayoutDefaults:jq(),manage:lS()}});var M3=B((U2e,sS)=>{"use strict";var uae=Ea().FROM_BL;sS.exports=function(r,t,a){a===void 0&&(a=uae[r.constraintoward||"center"]);var n=[r.r2l(r.range[0]),r.r2l(r.range[1])],i=n[0]+(n[1]-n[0])*a;r.range=r._input.range=[r.l2r(i+(n[0]-i)*t),r.l2r(i+(n[1]-i)*t)],r.setScale()}});var gs=B(uv=>{"use strict";var ys=Pe(),A3=Zc(),bi=Ut().id2name,fae=_n(),uS=M3(),cae=_d(),vae=wt().ALMOST_EQUAL,hae=Ea().FROM_BL;uv.handleDefaults=function(e,r,t){var a=t.axIds,n=t.axHasImage,i=r._axisConstraintGroups=[],l=r._axisMatchGroups=[],o,s,u,f,c,h,d,p;for(o=0;oi?t.slice(i):a.slice(n))+l}function pae(e,r){for(var t=r._size,a=t.h/t.w,n={},i=Object.keys(e),l=0;lvae*p&&!_)){for(i=0;iN&&ZE&&(E=Z);var ee=(E-D)/(2*R);c/=ee,D=s.l2r(D),E=s.l2r(E),s.range=s._input.range=k{"use strict";var x1=kr(),Ua=gr(),qn=Rt(),Wn=Pe(),S3=va(),C3=Kd(),fv=xr(),uf=Yr(),hS=Wc(),gS=T3(),cv=Zr(),ml=Ea(),xS=gs(),mae=xS.enforce,yae=xS.clean,dS=Zc().doAutoRange,bS="start",gae="middle",_S="end",xae=Ma().zindexSeparator;oa.layoutStyles=function(e){return Wn.syncOrAsync([qn.doAutoMargin,_ae],e)};function bae(e,r,t){for(var a=0;a=e[1]||n[1]<=e[0])&&i[0]r[0])return!0}return!1}function _ae(e){var r=e._fullLayout,t=r._size,a=t.p,n=cv.list(e,"",!0),i,l,o,s,u,f;if(r._paperdiv.style({width:e._context.responsive&&r.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":r.width+"px",height:e._context.responsive&&r.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":r.height+"px"}).selectAll(".main-svg").call(uf.setSize,r.width,r.height),e._context.setBackground(e,r.paper_bgcolor),oa.drawMainTitle(e),gS.manage(e),!r._has("cartesian"))return qn.previousPromises(e);function c(xe,U,Q){var X=xe._lw/2;if(xe._id.charAt(0)==="x"){if(U){if(Q==="top")return U._offset-a-X}else return t.t+t.h*(1-(xe.position||0))+X%1;return U._offset+U._length+a+X}if(U){if(Q==="right")return U._offset+U._length+a+X}else return t.l+t.w*(xe.position||0)+X%1;return U._offset-a-X}for(i=0;i0){Aae(e,i,u,s),o.attr({x:l,y:i,"text-anchor":a,dy:yS(r.yanchor)}).call(S3.positionText,l,i);var f=(r.text.match(S3.BR_TAG_ALL)||[]).length;if(f){var c=ml.LINE_SPACING*f+ml.MID_SHIFT;r.y===0&&(c=-c),o.selectAll(".line").each(function(){var m=+this.getAttribute("dy").slice(0,-2)-c+"em";this.setAttribute("dy",m)})}var h=x1.select(e).selectAll(".gtitle-subtitle");if(h.node()){var d=o.node().getBBox(),p=d.y+d.height,y=p+hS.SUBTITLE_PADDING_EM*r.subtitle.font.size;h.attr({x:l,y,"text-anchor":a,dy:yS(r.yanchor)}).call(S3.positionText,l,y)}}}};function wae(e,r,t,a,n){var i=r.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,l=Wn.isTopAnchor(r)?a:a-n,o=t==="b"?i-l:l;return Wn.isTopAnchor(r)&&t==="t"||Wn.isBottomAnchor(r)&&t==="b"?!1:o.5?"t":"b",l=e._fullLayout.margin[i],o=0;return r.yref==="paper"?o=t+r.pad.t+r.pad.b:r.yref==="container"&&(o=Tae(i,a,n,e._fullLayout.height,t)+r.pad.t+r.pad.b),o>l?o:0}function Aae(e,r,t,a){var n="title.automargin",i=e._fullLayout.title,l=i.y>.5?"t":"b",o={x:i.x,y:i.y,t:0,b:0},s={};i.yref==="paper"&&wae(e,i,l,r,a)?o[l]=t:i.yref==="container"&&(s[l]=t,e._fullLayout._reservedMargin[n]=s),qn.allowAutoMargin(e,n),qn.autoMargin(e,n,o)}function kae(e,r){var t=e.title,a=e._size,n=0;switch(r===bS?n=t.pad.l:r===_S&&(n=-t.pad.r),t.xref){case"paper":return a.l+a.w*t.x+n;case"container":default:return e.width*t.x+n}}function qae(e,r){var t=e.title,a=e._size,n=0;if(r==="0em"||!r?n=-t.pad.b:r===ml.CAP_SHIFT+"em"&&(n=t.pad.t),t.y==="auto")return a.t/2;switch(t.yref){case"paper":return a.t+a.h-a.h*t.y+n;case"container":default:return e.height-e.height*t.y+n}}function yS(e){return e==="top"?ml.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":ml.MID_SHIFT+"em"}function Sae(e){var r=e.title,t=gae;return Wn.isRightAnchor(r)?t=_S:Wn.isLeftAnchor(r)&&(t=bS),t}function Cae(e){var r=e.title,t="0em";return Wn.isTopAnchor(r)?t=ml.CAP_SHIFT+"em":Wn.isMiddleAnchor(r)&&(t=ml.MID_SHIFT+"em"),t}oa.doTraceStyle=function(e){var r=e.calcdata,t=[],a;for(a=0;a{"use strict";var Lae=Ql().readPaths,Dae=u1(),wS=Gl().clearOutlineControllers,L3=xr(),TS=Yr(),Eae=lt().arrayEditor,MS=eo(),Pae=MS.getPathString;kS.exports={draw:_1,drawOne:AS,activateLastSelection:Nae};function _1(e){var r=e._fullLayout;wS(e),r._selectionLayer.selectAll("path").remove();for(var t in r._plots){var a=r._plots[t].selectionLayer;a&&a.selectAll("path").remove()}for(var n=0;n=0;m--){var b=l.append("path").attr(s).style("opacity",m?.1:u).call(L3.stroke,c).call(L3.fill,f).call(TS.dashLine,m?"solid":d,m?4+h:h);if(Rae(b,e,a),p){var _=Eae(e.layout,"selections",a);b.style({cursor:"move"});var w={element:b.node(),plotinfo:n,gd:e,editHelpers:_,isActiveSelection:!0},x=Lae(o,e);Dae(x,b,w)}else b.style("pointer-events",m?"all":"none");y[m]=b}var M=y[0],k=y[1];k.node().addEventListener("click",function(){return zae(e,M)})}}function Rae(e,r,t){var a=t.xref+t.yref;TS.setClipUrl(e,"clip"+r._fullLayout._uid+a,r)}function zae(e,r){if(w1(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeSelectionIndex){D3(e);return}e._fullLayout._activeSelectionIndex=a,e._fullLayout._deactivateSelection=D3,_1(e)}}}function Nae(e){if(w1(e)){var r=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=r,e._fullLayout._deactivateSelection=D3,_1(e)}}function D3(e){if(w1(e)){var r=e._fullLayout._activeSelectionIndex;r>=0&&(wS(e),delete e._fullLayout._activeSelectionIndex,_1(e))}}});var SS=B((J2e,qS)=>{function Fae(){var e,r=0,t=!1;function a(n,i){return e.list.push({type:n,data:i?JSON.parse(JSON.stringify(i)):void 0}),e}return e={list:[],segmentId:function(){return r++},checkIntersection:function(n,i){return a("check",{seg1:n,seg2:i})},segmentChop:function(n,i){return a("div_seg",{seg:n,pt:i}),a("chop",{seg:n,pt:i})},statusRemove:function(n){return a("pop_seg",{seg:n})},segmentUpdate:function(n){return a("seg_update",{seg:n})},segmentNew:function(n,i){return a("new_seg",{seg:n,primary:i})},segmentRemove:function(n){return a("rem_seg",{seg:n})},tempStatus:function(n,i,l){return a("temp_status",{seg:n,above:i,below:l})},rewind:function(n){return a("rewind",{seg:n})},status:function(n,i,l){return a("status",{seg:n,above:i,below:l})},vert:function(n){return n===t?e:(t=n,a("vert",{x:n}))},log:function(n){return typeof n!="string"&&(n=JSON.stringify(n,!1," ")),a("log",{txt:n})},reset:function(){return a("reset")},selected:function(n){return a("selected",{segs:n})},chainStart:function(n){return a("chain_start",{seg:n})},chainRemoveHead:function(n,i){return a("chain_rem_head",{index:n,pt:i})},chainRemoveTail:function(n,i){return a("chain_rem_tail",{index:n,pt:i})},chainNew:function(n,i){return a("chain_new",{pt1:n,pt2:i})},chainMatch:function(n){return a("chain_match",{index:n})},chainClose:function(n){return a("chain_close",{index:n})},chainAddHead:function(n,i){return a("chain_add_head",{index:n,pt:i})},chainAddTail:function(n,i){return a("chain_add_tail",{index:n,pt:i})},chainConnect:function(n,i){return a("chain_con",{index1:n,index2:i})},chainReverse:function(n){return a("chain_rev",{index:n})},chainJoin:function(n,i){return a("chain_join",{index1:n,index2:i})},done:function(){return a("done")}},e}qS.exports=Fae});var LS=B(($2e,CS)=>{function Iae(e){typeof e!="number"&&(e=1e-10);var r={epsilon:function(t){return typeof t=="number"&&(e=t),e},pointAboveOrOnLine:function(t,a,n){var i=a[0],l=a[1],o=n[0],s=n[1],u=t[0],f=t[1];return(o-i)*(f-l)-(s-l)*(u-i)>=-e},pointBetween:function(t,a,n){var i=t[1]-a[1],l=n[0]-a[0],o=t[0]-a[0],s=n[1]-a[1],u=o*l+i*s;if(u-e)},pointsSameX:function(t,a){return Math.abs(t[0]-a[0])e!=o-i>e&&(l-f)*(i-c)/(o-c)+f-n>e&&(s=!s),l=f,o=c}return s}};return r}CS.exports=Iae});var ES=B((K2e,DS)=>{var Hae={create:function(){var e={root:{root:!0,next:null},exists:function(r){return!(r===null||r===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(r,t){for(var a=e.root,n=e.root.next;n!==null;){if(t(n)){r.prev=n.prev,r.next=n,n.prev.next=r,n.prev=r;return}a=n,n=n.next}a.next=r,r.prev=a,r.next=null},findTransition:function(r){for(var t=e.root,a=e.root.next;a!==null&&!r(a);)t=a,a=a.next;return{before:t===e.root?null:t,after:a,insert:function(n){return n.prev=t,n.next=a,t.next=n,a!==null&&(a.prev=n),n}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};DS.exports=Hae});var RS=B((Q2e,PS)=>{var vv=ES();function Oae(e,r,t){function a(p,y){return{id:t?t.segmentId():-1,start:p,end:y,myFill:{above:null,below:null},otherFill:null}}function n(p,y,m){return{id:t?t.segmentId():-1,start:p,end:y,myFill:{above:m.myFill.above,below:m.myFill.below},otherFill:null}}var i=vv.create();function l(p,y,m,b,_,w){var x=r.pointsCompare(y,_);return x!==0?x:r.pointsSame(m,w)?0:p!==b?p?1:-1:r.pointAboveOrOnLine(m,b?_:w,b?w:_)?1:-1}function o(p,y){i.insertBefore(p,function(m){var b=l(p.isStart,p.pt,y,m.isStart,m.pt,m.other.pt);return b<0})}function s(p,y){var m=vv.node({isStart:!0,pt:p.start,seg:p,primary:y,other:null,status:null});return o(m,p.end),m}function u(p,y,m){var b=vv.node({isStart:!1,pt:y.end,seg:y,primary:m,other:p,status:null});p.other=b,o(b,p.pt)}function f(p,y){var m=s(p,y);return u(m,p,y),m}function c(p,y){t&&t.segmentChop(p.seg,y),p.other.remove(),p.seg.end=y,p.other.pt=y,o(p.other,p.pt)}function h(p,y){var m=n(y,p.seg.end,p.seg);return c(p,y),f(m,p.primary)}function d(p,y){var m=vv.create();function b(G,W){var V=G.seg.start,O=G.seg.end,Y=W.seg.start,Z=W.seg.end;return r.pointsCollinear(V,Y,Z)?r.pointsCollinear(O,Y,Z)||r.pointAboveOrOnLine(O,Y,Z)?1:-1:r.pointAboveOrOnLine(V,Y,Z)?1:-1}function _(G){return m.findTransition(function(W){var V=b(G,W.ev);return V>0})}function w(G,W){var V=G.seg,O=W.seg,Y=V.start,Z=V.end,J=O.start,ee=O.end;t&&t.checkIntersection(V,O);var le=r.linesIntersect(Y,Z,J,ee);if(le===!1){if(!r.pointsCollinear(Y,Z,J)||r.pointsSame(Y,ee)||r.pointsSame(Z,J))return!1;var ue=r.pointsSame(Y,J),ve=r.pointsSame(Z,ee);if(ue&&ve)return W;var j=!ue&&r.pointBetween(Y,J,ee),qe=!ve&&r.pointBetween(Z,J,ee);if(ue)return qe?h(W,Z):h(G,ee),W;j&&(ve||(qe?h(W,Z):h(G,ee)),h(W,Y))}else le.alongA===0&&(le.alongB===-1?h(G,J):le.alongB===0?h(G,le.pt):le.alongB===1&&h(G,ee)),le.alongB===0&&(le.alongA===-1?h(W,Y):le.alongA===0?h(W,le.pt):le.alongA===1&&h(W,Z));return!1}for(var x=[];!i.isEmpty();){var M=i.getHead();if(t&&t.vert(M.pt[0]),M.isStart){let G=function(){if(A){var W=w(M,A);if(W)return W}return C?w(M,C):!1};var H=G;t&&t.segmentNew(M.seg,M.primary);var k=_(M),A=k.before?k.before.ev:null,C=k.after?k.after.ev:null;t&&t.tempStatus(M.seg,A?A.seg:!1,C?C.seg:!1);var D=G();if(D){if(e){var E;M.seg.myFill.below===null?E=!0:E=M.seg.myFill.above!==M.seg.myFill.below,E&&(D.seg.myFill.above=!D.seg.myFill.above)}else D.seg.otherFill=M.seg.myFill;t&&t.segmentUpdate(D.seg),M.other.remove(),M.remove()}if(i.getHead()!==M){t&&t.rewind(M.seg);continue}if(e){var E;M.seg.myFill.below===null?E=!0:E=M.seg.myFill.above!==M.seg.myFill.below,C?M.seg.myFill.below=C.seg.myFill.above:M.seg.myFill.below=p,E?M.seg.myFill.above=!M.seg.myFill.below:M.seg.myFill.above=M.seg.myFill.below}else if(M.seg.otherFill===null){var R;C?M.primary===C.primary?R=C.seg.otherFill.above:R=C.seg.myFill.above:R=M.primary?y:p,M.seg.otherFill={above:R,below:R}}t&&t.status(M.seg,A?A.seg:!1,C?C.seg:!1),M.other.status=k.insert(vv.node({ev:M}))}else{var N=M.status;if(N===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(m.exists(N.prev)&&m.exists(N.next)&&w(N.prev.ev,N.next.ev),t&&t.statusRemove(N.ev.seg),N.remove(),!M.primary){var I=M.seg.myFill;M.seg.myFill=M.seg.otherFill,M.seg.otherFill=I}x.push(M.seg)}i.getHead().remove()}return t&&t.done(),x}return e?{addRegion:function(p){for(var y,m=p[p.length-1],b=0;b{function Bae(e,r,t){var a=[],n=[];return e.forEach(function(i){var l=i.start,o=i.end;if(r.pointsSame(l,o)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}t&&t.chainStart(i);var s={index:0,matches_head:!1,matches_pt1:!1},u={index:0,matches_head:!1,matches_pt1:!1},f=s;function c(H,G,W){return f.index=H,f.matches_head=G,f.matches_pt1=W,f===s?(f=u,!1):(f=null,!0)}for(var h=0;h{function hv(e,r,t){var a=[];return e.forEach(function(n){var i=(n.myFill.above?8:0)+(n.myFill.below?4:0)+(n.otherFill&&n.otherFill.above?2:0)+(n.otherFill&&n.otherFill.below?1:0);r[i]!==0&&a.push({id:t?t.segmentId():-1,start:n.start,end:n.end,myFill:{above:r[i]===1,below:r[i]===2},otherFill:null})}),t&&t.selected(a),a}var Yae={union:function(e,r){return hv(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],r)},intersect:function(e,r){return hv(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],r)},difference:function(e,r){return hv(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],r)},differenceRev:function(e,r){return hv(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],r)},xor:function(e,r){return hv(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],r)}};FS.exports=Yae});var OS=B((r3e,HS)=>{var Vae={toPolygon:function(e,r){function t(i){if(i.length<=0)return e.segments({inverted:!1,regions:[]});function l(u){var f=u.slice(0,u.length-1);return e.segments({inverted:!1,regions:[f]})}for(var o=l(i[0]),s=1;s{var Gae=SS(),Uae=LS(),BS=RS(),Wae=NS(),dv=IS(),YS=OS(),Xn=!1,pv=Uae(),cn;cn={buildLog:function(e){return e===!0?Xn=Gae():e===!1&&(Xn=!1),Xn===!1?!1:Xn.list},epsilon:function(e){return pv.epsilon(e)},segments:function(e){var r=BS(!0,pv,Xn);return e.regions.forEach(r.addRegion),{segments:r.calculate(e.inverted),inverted:e.inverted}},combine:function(e,r){var t=BS(!1,pv,Xn);return{combined:t.calculate(e.segments,e.inverted,r.segments,r.inverted),inverted1:e.inverted,inverted2:r.inverted}},selectUnion:function(e){return{segments:dv.union(e.combined,Xn),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:dv.intersect(e.combined,Xn),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:dv.difference(e.combined,Xn),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:dv.differenceRev(e.combined,Xn),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:dv.xor(e.combined,Xn),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:Wae(e.segments,pv,Xn),inverted:e.inverted}},polygonFromGeoJSON:function(e){return YS.toPolygon(cn,e)},polygonToGeoJSON:function(e){return YS.fromPolygon(cn,pv,e)},union:function(e,r){return mv(e,r,cn.selectUnion)},intersect:function(e,r){return mv(e,r,cn.selectIntersect)},difference:function(e,r){return mv(e,r,cn.selectDifference)},differenceRev:function(e,r){return mv(e,r,cn.selectDifferenceRev)},xor:function(e,r){return mv(e,r,cn.selectXor)}};function mv(e,r,t){var a=cn.segments(e),n=cn.segments(r),i=cn.combine(a,n),l=t(i);return cn.polygon(l)}typeof window=="object"&&(window.PolyBool=cn);VS.exports=cn});var WS=B((a3e,US)=>{US.exports=function(r,t,a,n){var i=r[0],l=r[1],o=!1;a===void 0&&(a=0),n===void 0&&(n=t.length);for(var s=n-a,u=0,f=s-1;ul!=p>l&&i<(d-c)*(l-h)/(p-h)+c;y&&(o=!o)}return o}});var R3=B((n3e,XS)=>{"use strict";var P3=wh().dot,T1=wt().BADNUM,M1=XS.exports={};M1.tester=function(r){var t=r.slice(),a=t[0][0],n=a,i=t[0][1],l=i,o;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),o=1;on||b===T1||bl||y&&u(p))}function c(p,y){var m=p[0],b=p[1];if(m===T1||mn||b===T1||bl)return!1;var _=t.length,w=t[0][0],x=t[0][1],M=0,k,A,C,D,E;for(k=1;k<_;k++)if(A=w,C=x,w=t[k][0],x=t[k][1],D=Math.min(A,w),!(mMath.max(A,w)||b>Math.max(C,x)))if(bo||Math.abs(P3(c,u))>n)return!0;return!1};M1.filter=function(r,t){var a=[r[0]],n=0,i=0;function l(s){r.push(s);var u=a.length,f=n;a.splice(i+1);for(var c=f+1;c1){var o=r.pop();l(o)}return{addPt:l,raw:r,filtered:a}}});var JS=B((i3e,ZS)=>{"use strict";ZS.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var yC=B((l3e,mC)=>{"use strict";var $S=GS(),Xae=WS(),xv=gr(),Zae=Yr().dashStyle,yv=xr(),Jae=xi(),$ae=Hi().makeEventData,Mv=rf(),Kae=Mv.freeMode,Qae=Mv.rectMode,bv=Mv.drawMode,I3=Mv.openMode,H3=Mv.selectMode,KS=eo(),QS=lv(),aC=u1(),nC=Gl().clearOutline,iC=Ql(),z3=iC.handleEllipse,jae=iC.readPaths,ene=i1().newShapes,rne=o3(),tne=E3().activateLastSelection,k1=Pe(),ane=k1.sorterAsc,lC=R3(),gv=Rh(),Zn=Ut().getFromId,nne=Kd(),ine=b1().redrawReglTraces,q1=JS(),Xi=q1.MINSELECT,lne=lC.filter,O3=lC.tester,B3=r1(),jS=B3.p2r,one=B3.axValue,sne=B3.getTransform;function Y3(e){return e.subplot!==void 0}function une(e,r,t,a,n){var i=!Y3(a),l=Kae(n),o=Qae(n),s=I3(n),u=bv(n),f=H3(n),c=n==="drawline",h=n==="drawcircle",d=c||h,p=a.gd,y=p._fullLayout,m=f&&y.newselection.mode==="immediate"&&i,b=y._zoomlayer,_=a.element.getBoundingClientRect(),w=a.plotinfo,x=sne(w),M=r-_.left,k=t-_.top;y._calcInverseTransform(p);var A=k1.apply3DTransform(y._invTransform)(M,k);M=A[0],k=A[1];var C=y._invScaleX,D=y._invScaleY,E=M,R=k,N="M"+M+","+k,I=a.xaxes[0],H=a.yaxes[0],G=I._length,W=H._length,V=e.altKey&&!(bv(n)&&s),O,Y,Z,J,ee,le,ue;sC(e,p,a),l&&(O=lne([[M,k]],q1.BENDPX));var ve=b.selectAll("path.select-outline-"+w.id).data([1]),j=u?y.newshape:y.newselection;u&&(a.hasText=j.label.text||j.label.texttemplate);var qe=u&&!s?j.fillcolor:"rgba(0,0,0,0)",fe=j.line.color||(i?yv.contrast(p._fullLayout.plot_bgcolor):"#7f7f7f");ve.enter().append("path").attr("class","select-outline select-outline-"+w.id).style({opacity:u?j.opacity/2:1,"stroke-dasharray":Zae(j.line.dash,j.line.width),"stroke-width":j.line.width+"px","shape-rendering":"crispEdges"}).call(yv.stroke,fe).call(yv.fill,qe).attr("fill-rule","evenodd").classed("cursor-move",!!u).attr("transform",x).attr("d",N+"Z");var be=b.append("path").attr("class","zoombox-corners").style({fill:yv.background,stroke:yv.defaultLine,"stroke-width":1}).attr("transform",x).attr("d","M0,0Z");if(u&&a.hasText){var ce=b.select(".label-temp");ce.empty()&&(ce=b.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var xe=y._uid+q1.SELECTID,U=[],Q=S1(p,a.xaxes,a.yaxes,a.subplot);m&&!e.shiftKey&&(a._clearSubplotSelections=function(){if(i){var ge=I._id,Te=H._id;hC(p,ge,Te,Q);for(var ye=(p.layout||{}).selections||[],ze=[],Ie=!1,Ee=0;Ee=0){p._fullLayout._deactivateShape(p);return}if(!u){var ye=y.clickmode;gv.done(xe).then(function(){if(gv.clear(xe),ge===2){for(ve.remove(),ee=0;ee-1&&oC(Te,p,a.xaxes,a.yaxes,a.subplot,a,ve),ye==="event"&&Tv(p,void 0);Jae.click(p,Te,w.id)}).catch(k1.error)}},a.doneFn=function(){be.remove(),gv.done(xe).then(function(){gv.clear(xe),!m&&J&&a.selectionDefs&&(J.subtract=V,a.selectionDefs.push(J),a.mergedPolygons.length=0,[].push.apply(a.mergedPolygons,Z)),(m||u)&&_v(a,m),a.doneFnCompleted&&a.doneFnCompleted(U),f&&Tv(p,ue)}).catch(k1.error)}}function oC(e,r,t,a,n,i,l){var o=r._hoverdata,s=r._fullLayout,u=s.clickmode,f=u.indexOf("event")>-1,c=[],h,d,p,y,m,b,_,w,x,M;if(dne(o)){sC(e,r,i),h=S1(r,t,a,n);var k=pne(o,h),A=k.pointNumbers.length>0;if(A?mne(h,k):yne(h)&&(_=rC(k))){for(l&&l.remove(),M=0;M=0}function hne(e){return e._fullLayout._activeSelectionIndex>=0}function _v(e,r){var t=e.dragmode,a=e.plotinfo,n=e.gd;vne(n)&&n._fullLayout._deactivateShape(n),hne(n)&&n._fullLayout._deactivateSelection(n);var i=n._fullLayout,l=i._zoomlayer,o=bv(t),s=H3(t);if(o||s){var u=l.selectAll(".select-outline-"+a.id);if(u&&n._fullLayout._outlining){var f;o&&(f=ene(u,e)),f&&xv.call("_guiRelayout",n,{shapes:f});var c;s&&!Y3(e)&&(c=rne(u,e)),c&&(n._fullLayout._noEmitSelectedAtStart=!0,xv.call("_guiRelayout",n,{selections:c}).then(function(){r&&tne(n)})),n._fullLayout._outlining=!1}}a.selection={},a.selection.selectionDefs=e.selectionDefs=[],a.selection.mergedPolygons=e.mergedPolygons=[]}function eC(e){return e._id}function S1(e,r,t,a){if(!e.calcdata)return[];var n=[],i=r.map(eC),l=t.map(eC),o,s,u;for(u=0;u0,i=n?a[0]:t;return r.selectedpoints?r.selectedpoints.indexOf(i)>-1:!1}function mne(e,r){var t=[],a,n,i,l;for(l=0;l0&&t.push(a);if(t.length===1&&(i=t[0]===r.searchInfo,i&&(n=r.searchInfo.cd[0].trace,n.selectedpoints.length===r.pointNumbers.length))){for(l=0;l1||(r+=a.selectedpoints.length,r>1)))return!1;return r===1}function wv(e,r,t){var a;for(a=0;a-1&&r;if(!l&&r){var ge=tC(e,!0);if(ge.length){var Te=ge[0].xref,ye=ge[0].yref;if(Te&&ye){var ze=dC(ge),Ie=pC([Zn(e,Te,"x"),Zn(e,ye,"y")]);Ie(U,ze)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:X&&Tv(e,U),h._reselect=!1}if(!l&&h._deselect){var Ee=h._deselect;o=Ee.xref,s=Ee.yref,bne(o,s,f)||hC(e,o,s,a),X&&(U.points.length?Tv(e,U):U3(e)),h._deselect=!1}return{eventData:U,selectionTesters:t}}function xne(e){var r=e.calcdata;if(r)for(var t=0;t{"use strict";gC.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var Av=B((s3e,xC)=>{"use strict";xC.exports={axisRefDescription:function(e,r,t){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",r,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",r,"("+t+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",r,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",r,"and the",t,"of the domain of the","second",e,"axis."].join(" ")}}});var ff=B((f3e,wC)=>{"use strict";var bC=W3(),_C=aa(),C1=Ma(),Ane=lt().templatedArray,u3e=Av();wC.exports=Ane("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:_C({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:bC.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:bC.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",C1.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",C1.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",C1.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",C1.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:_C({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var L1=B((c3e,TC)=>{"use strict";TC.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var X3=B((v3e,MC)=>{"use strict";MC.exports=function(r){return{valType:"color",editType:"style",anim:!0}}});var _i=B((h3e,DC)=>{"use strict";var AC=pi().axisHoverFormat,{hovertemplateAttrs:kne,texttemplateAttrs:qne,templatefallbackAttrs:kC}=gn(),qC=Yc(),Sne=aa(),Cne=ci().dash,Lne=ci().pattern,Dne=Yr(),Ene=L1(),D1=mt().extendFlat,Pne=X3();function SC(e){return{valType:"any",dflt:0,editType:"calc"}}function CC(e){return{valType:"any",editType:"calc"}}function LC(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}DC.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:SC("x"),yperiod:SC("y"),xperiod0:CC("x0"),yperiod0:CC("y0"),xperiodalignment:LC("x"),yperiodalignment:LC("y"),xhoverformat:AC("x"),yhoverformat:AC("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:qne(),texttemplatefallback:kC({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:kne({},{keys:Ene.eventDataKeys}),hovertemplatefallback:kC(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:D1({},Cne,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:Pne(!0),fillgradient:D1({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:Lne,marker:D1({symbol:{valType:"enumerated",values:Dne.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:D1({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},qC("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},qC("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:Sne({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var Z3=B((p3e,RC)=>{"use strict";var EC=ff(),PC=_i().line,Rne=ci().dash,E1=mt().extendFlat,zne=fi().overrideAll,Nne=lt().templatedArray,d3e=Av();RC.exports=zne(Nne("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:E1({},EC.xref,{}),yref:E1({},EC.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:PC.color,width:E1({},PC.width,{min:1,dflt:1}),dash:E1({},Rne,{dflt:"dot"})}}),"arraydraw","from-root")});var IC=B((m3e,FC)=>{"use strict";var zC=Pe(),P1=Zr(),Fne=Bn(),Ine=Z3(),NC=eo();FC.exports=function(r,t){Fne(r,t,{name:"selections",handleItemDefaults:Hne});for(var a=t.selections,n=0;n{"use strict";HC.exports=function(r,t,a){a("newselection.mode");var n=a("newselection.line.width");n&&(a("newselection.line.color"),a("newselection.line.dash")),a("activeselection.fillcolor"),a("activeselection.opacity")}});var kv=B((g3e,VC)=>{"use strict";var One=gr(),BC=Pe(),YC=Ut();VC.exports=function(r){return function(a,n){var i=a[r];if(Array.isArray(i))for(var l=One.subplotsRegistry.cartesian,o=l.idRegex,s=n._subplots,u=s.xaxis,f=s.yaxis,c=s.cartesian,h=n._has("cartesian"),d=0;d{"use strict";var GC=E3(),qv=yC();UC.exports={moduleType:"component",name:"selections",layoutAttributes:Z3(),supplyLayoutDefaults:IC(),supplyDrawNewSelectionDefaults:OC(),includeBasePlot:kv()("selections"),draw:GC.draw,drawOne:GC.drawOne,reselect:qv.reselect,prepSelect:qv.prepSelect,clearOutline:qv.clearOutline,clearSelectionsCache:qv.clearSelectionsCache,selectOnClick:qv.selectOnClick}});var vL=B((b3e,cL)=>{"use strict";var j3=kr(),Jn=Pe(),WC=Jn.numberFormat,Bne=Nn(),Yne=P2(),R1=gr(),rL=Jn.strTranslate,Vne=va(),XC=xr(),to=Yr(),Gne=xi(),ZC=Zr(),Une=Kl(),Wne=yi(),tL=rf(),z1=tL.selectingOrDrawing,Xne=tL.freeMode,Zne=Ea().FROM_TL,Jne=Kd(),$ne=b1().redrawReglTraces,Kne=Rt(),$3=Ut().getFromId,Qne=cf().prepSelect,jne=cf().clearOutline,eie=cf().selectOnClick,J3=M3(),ex=Ma(),JC=ex.MINDRAG,Ka=ex.MINZOOM,$C=!0;function rie(e,r,t,a,n,i,l,o){var s=e._fullLayout._zoomlayer,u=l+o==="nsew",f=(l+o).length===1,c,h,d,p,y,m,b,_,w,x,M,k,A,C,D,E,R,N,I,H,G,W,V;t+=r.yaxis._shift;function O(){if(c=r.xaxis,h=r.yaxis,w=c._length,x=h._length,b=c._offset,_=h._offset,d={},d[c._id]=c,p={},p[h._id]=h,l&&o)for(var Ae=r.overlays,Se=0;Se=0){Oe._fullLayout._deactivateShape(Oe);return}var Je=Oe._fullLayout.clickmode;if(Q3(Oe),Ae===2&&!f&&Ye(),u)Je.indexOf("select")>-1&&eie(Se,Oe,y,m,r.id,J),Je.indexOf("event")>-1&&Gne.click(Oe,Se,r.id);else if(Ae===1&&f){var We=l?h:c,Xe=l==="s"||o==="w"?0:1,lr=We._name+".range["+Xe+"]",tr=tie(We,Xe),Ke="left",Ne="middle";if(We.fixedrange)return;l?(Ne=l==="n"?"top":"bottom",We.side==="right"&&(Ke="right")):o==="e"&&(Ke="right"),Oe._context.showAxisRangeEntryBoxes&&j3.select(Z).call(Vne.makeEditable,{gd:Oe,immediate:!0,background:Oe._fullLayout.paper_bgcolor,text:String(tr),fill:We.tickfont?We.tickfont.color:"#444",horizontalAlign:Ke,verticalAlign:Ne}).on("edit",function(ne){var oe=We.d2r(ne);oe!==void 0&&R1.call("_guiRelayout",Oe,lr,oe)})}}Wne.init(J);var ue,ve,j,qe,fe,be,ce,xe,U,Q;function X(Ae,Se,Oe){var Je=Z.getBoundingClientRect();ue=Se-Je.left,ve=Oe-Je.top,e._fullLayout._calcInverseTransform(e);var We=Jn.apply3DTransform(e._fullLayout._invTransform)(ue,ve);ue=We[0],ve=We[1],j={l:ue,r:ue,w:0,t:ve,b:ve,h:0},qe=e._hmpixcount?e._hmlumcount/e._hmpixcount:Bne(e._fullLayout.plot_bgcolor).getLuminance(),fe="M0,0H"+w+"V"+x+"H0V0",be=!1,ce="xy",Q=!1,xe=iL(s,qe,b,_,fe),U=lL(s,b,_)}function ge(Ae,Se){if(e._transitioningWithDuration)return!1;var Oe=Math.max(0,Math.min(w,W*Ae+ue)),Je=Math.max(0,Math.min(x,V*Se+ve)),We=Math.abs(Oe-ue),Xe=Math.abs(Je-ve);j.l=Math.min(ue,Oe),j.r=Math.max(ue,Oe),j.t=Math.min(ve,Je),j.b=Math.max(ve,Je);function lr(){ce="",j.r=j.l,j.t=j.b,U.attr("d","M0,0Z")}if(M.isSubplotConstrained)We>Ka||Xe>Ka?(ce="xy",We/w>Xe/x?(Xe=We*x/w,ve>Je?j.t=ve-Xe:j.b=ve+Xe):(We=Xe*w/x,ue>Oe?j.l=ue-We:j.r=ue+We),U.attr("d",N1(j))):lr();else if(k.isSubplotConstrained)if(We>Ka||Xe>Ka){ce="xy";var tr=Math.min(j.l/w,(x-j.b)/x),Ke=Math.max(j.r/w,(x-j.t)/x);j.l=tr*w,j.r=Ke*w,j.b=(1-tr)*x,j.t=(1-Ke)*x,U.attr("d",N1(j))}else lr();else!C||Xe0){var ne;if(k.isSubplotConstrained||!A&&C.length===1){for(ne=0;ne1&&(lr.maxallowed!==void 0&&E===(lr.range[0]1&&(tr.maxallowed!==void 0&&R===(tr.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function nie(e,r,t){return e?e==="nsew"?t?"":r==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function iL(e,r,t,a,n){return e.append("path").attr("class","zoombox").style({fill:r>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",rL(t,a)).attr("d",n+"Z")}function lL(e,r,t){return e.append("path").attr("class","zoombox-corners").style({fill:XC.background,stroke:XC.defaultLine,"stroke-width":1,opacity:0}).attr("transform",rL(r,t)).attr("d","M0,0Z")}function oL(e,r,t,a,n,i){e.attr("d",a+"M"+t.l+","+t.t+"v"+t.h+"h"+t.w+"v-"+t.h+"h-"+t.w+"Z"),sL(e,r,n,i)}function sL(e,r,t,a){t||(e.transition().style("fill",a>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),r.transition().style("opacity",1).duration(200))}function Q3(e){j3.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function uL(e){$C&&e.data&&e._context.showTips&&(Jn.notifier(Jn._(e,"Double-click to zoom back out"),"long"),$C=!1)}function iie(e,r){return"M"+(e.l-.5)+","+(r-Ka-.5)+"h-3v"+(2*Ka+1)+"h3ZM"+(e.r+.5)+","+(r-Ka-.5)+"h3v"+(2*Ka+1)+"h-3Z"}function lie(e,r){return"M"+(r-Ka-.5)+","+(e.t-.5)+"v-3h"+(2*Ka+1)+"v3ZM"+(r-Ka-.5)+","+(e.b+.5)+"v3h"+(2*Ka+1)+"v-3Z"}function N1(e){var r=Math.floor(Math.min(e.b-e.t,e.r-e.l,Ka)/2);return"M"+(e.l-3.5)+","+(e.t-.5+r)+"h3v"+-r+"h"+r+"v-3h-"+(r+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+r)+"h-3v"+-r+"h"+-r+"v-3h"+(r+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-r)+"h-3v"+r+"h"+-r+"v3h"+(r+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-r)+"h3v"+r+"h"+r+"v3h-"+(r+3)+"Z"}function jC(e,r,t,a,n){for(var i=!1,l={},o={},s,u,f,c,h=(n||{}).xaHash,d=(n||{}).yaHash,p=0;p{"use strict";var oie=kr(),F1=xi(),sie=yi(),uie=Kl(),wi=vL().makeDragBox,sa=Ma().DRAGGERSIZE;I1.initInteractions=function(r){var t=r._fullLayout;if(r._context.staticPlot){oie.select(r).selectAll(".drag").remove();return}if(!(!t._has("cartesian")&&!t._has("splom"))){var a=Object.keys(t._plots||{}).sort(function(i,l){if((t._plots[i].mainplot&&!0)===(t._plots[l].mainplot&&!0)){var o=i.split("y"),s=l.split("y");return o[0]===s[0]?Number(o[1]||1)-Number(s[1]||1):Number(o[0]||1)-Number(s[0]||1)}return t._plots[i].mainplot?1:-1});a.forEach(function(i){var l=t._plots[i],o=l.xaxis,s=l.yaxis;if(!l.mainplot){var u=wi(r,l,o._offset,s._offset,o._length,s._length,"ns","ew");u.onmousemove=function(h){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===i&&r._fullLayout._plots[i]&&F1.hover(r,h,i)},F1.hover(r,h,i),r._fullLayout._lasthover=u,r._fullLayout._hoversubplot=i},u.onmouseout=function(h){r._dragging||(r._fullLayout._hoversubplot=null,sie.unhover(r,h))},r._context.showAxisDragHandles&&(wi(r,l,o._offset-sa,s._offset-sa,sa,sa,"n","w"),wi(r,l,o._offset+o._length,s._offset-sa,sa,sa,"n","e"),wi(r,l,o._offset-sa,s._offset+s._length,sa,sa,"s","w"),wi(r,l,o._offset+o._length,s._offset+s._length,sa,sa,"s","e"))}if(r._context.showAxisDragHandles){if(i===o._mainSubplot){var f=o._mainLinePosition;o.side==="top"&&(f-=sa),wi(r,l,o._offset+o._length*.1,f,o._length*.8,sa,"","ew"),wi(r,l,o._offset,f,o._length*.1,sa,"","w"),wi(r,l,o._offset+o._length*.9,f,o._length*.1,sa,"","e")}if(i===s._mainSubplot){var c=s._mainLinePosition;s.side!=="right"&&(c-=sa),wi(r,l,c,s._offset+s._length*.1,sa,s._length*.8,"ns",""),wi(r,l,c,s._offset+s._length*.9,sa,s._length*.1,"s",""),wi(r,l,c,s._offset,sa,s._length*.1,"n","")}}});var n=t._hoverlayer.node();n.onmousemove=function(i){i.target=r._fullLayout._lasthover,F1.hover(r,i,t._hoversubplot)},n.onclick=function(i){i.target=r._fullLayout._lasthover,F1.click(r,i)},n.onmousedown=function(i){r._fullLayout._lasthover.onmousedown(i)},I1.updateFx(r)}};I1.updateFx=function(e){var r=e._fullLayout,t=r.dragmode==="pan"?"move":"crosshair";uie(r._draggers,t)}});var pL=B((w3e,dL)=>{"use strict";var hL=gr();dL.exports=function(r){for(var t=hL.layoutArrayContainers,a=hL.layoutArrayRegexes,n=r.split("[")[0],i,l,o=0;o{"use strict";var fie=Pl(),tx=_h(),Sv=Go(),cie=jy().sorterAsc,ax=gr();Cv.containerArrayMatch=pL();var vie=Cv.isAddVal=function(r){return r==="add"||fie(r)},mL=Cv.isRemoveVal=function(r){return r===null||r==="remove"};Cv.applyContainerArrayChanges=function(r,t,a,n,i){var l=t.astr,o=ax.getComponentMethod(l,"supplyLayoutDefaults"),s=ax.getComponentMethod(l,"draw"),u=ax.getComponentMethod(l,"drawOne"),f=n.replot||n.recalc||o===tx||s===tx,c=r.layout,h=r._fullLayout;if(a[""]){Object.keys(a).length>1&&Sv.warn("Full array edits are incompatible with other edits",l);var d=a[""][""];if(mL(d))t.set(null);else if(Array.isArray(d))t.set(d);else return Sv.warn("Unrecognized full array edit value",l,d),!0;return f?!1:(o(c,h),s(r),!0)}var p=Object.keys(a).map(Number).sort(cie),y=t.get(),m=y||[],b=i(h,l).get(),_=[],w=-1,x=m.length,M,k,A,C,D,E,R,N;for(M=0;Mm.length-(R?0:1)){Sv.warn("index out of range",l,A);continue}if(E!==void 0)D.length>1&&Sv.warn("Insertion & removal are incompatible with edits to the same index.",l,A),mL(E)?_.push(A):R?(E==="add"&&(E={}),m.splice(A,0,E),b&&b.splice(A,0,{})):Sv.warn("Unrecognized full object edit value",l,A,E),w===-1&&(w=A);else for(k=0;k=0;M--)m.splice(_[M],1),b&&b.splice(_[M],1);if(m.length?y||t.set(m):t.set(null),f)return!1;if(o(c,h),u!==tx){var I;if(w===-1)I=p;else{for(x=Math.max(m.length,x),I=[],M=0;M=w));M++)I.push(A);for(M=w;M{"use strict";var _L=zr(),wL=gr(),Wa=Pe(),Lv=Rt(),TL=Ut(),ML=xr(),Dv=TL.cleanId,hie=TL.getFromTrace,nx=wL.traceIs,die=["x","y","z"];$n.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&Wa.log("Clearing previous rejected promises from queue."),e._promises=[]};$n.cleanLayout=function(e){var r,t;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var a=(Lv.subplotsRegistry.cartesian||{}).attrRegex,n=(Lv.subplotsRegistry.polar||{}).attrRegex,i=(Lv.subplotsRegistry.ternary||{}).attrRegex,l=(Lv.subplotsRegistry.gl3d||{}).attrRegex,o=Object.keys(e);for(r=0;r3?(m.x=1.02,m.xanchor="left"):m.x<-2&&(m.x=-.02,m.xanchor="right"),m.y>3?(m.y=1.02,m.yanchor="bottom"):m.y<-2&&(m.y=-.02,m.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),ML.clean(e),e.template&&e.template.layout&&$n.cleanLayout(e.template.layout),e};function vf(e,r){var t=e[r],a=r.charAt(0);t&&t!=="paper"&&(e[r]=Dv(t,a,!0))}$n.cleanData=function(e){for(var r=0;r0)return e.slice(0,r)}$n.hasParent=function(e,r){for(var t=bL(r);t;){if(t in e)return!0;t=bL(t)}return!1};$n.clearAxisTypes=function(e,r,t){for(var a=0;a{let t=(...a)=>a.every(n=>Wa.isPlainObject(n))||a.every(n=>Array.isArray(n));if([e,r].every(a=>Array.isArray(a))){if(e.length!==r.length)return!1;for(let a=0;aWa.isPlainObject(a))){if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let a in e){if(a.startsWith("_"))continue;let n=e[a],i=r[a];if(n!==i&&!(t(n,i)?ix(n,i):!1))return!1}return!0}return!1};$n.collectionsAreEqual=ix});var cx=B(Vr=>{"use strict";var Y1=kr(),yie=zr(),gie=hg(),rr=Pe(),vt=rr.nestedProperty,sx=Nc(),Qa=a9(),Kn=gr(),J1=Pu(),_r=Rt(),Xa=Zr(),xie=E2(),bie=_n(),lx=Yr(),_ie=xr(),wie=rx().initInteractions,Tie=jo(),Mie=cf().clearOutline,LL=Vo().dfltConfig,O1=yL(),Gt=AL(),tt=b1(),ao=fi(),Aie=Ma().AX_NAME_PATTERN,ox=0,kL=5;function kie(e,r,t,a){var n;if(e=rr.getGraphDiv(e),sx.init(e),rr.isPlainObject(r)){var i=r;r=i.data,t=i.layout,a=i.config,n=i.frames}var l=sx.triggerHandler(e,"plotly_beforeplot",[r,t,a]);if(l===!1)return Promise.reject();!r&&!t&&!rr.isPlotDiv(e)&&rr.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function o(){if(n)return Vr.addFrames(e,n)}EL(e,a),t||(t={}),Y1.select(e).classed("js-plotly-plot",!0),lx.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var s=(e.data||[]).length===0&&Array.isArray(r);Array.isArray(r)&&(Gt.cleanData(r),s?e.data=r:e.data.push.apply(e.data,r),e.empty=!1),(!e.layout||s)&&(e.layout=Gt.cleanLayout(t)),_r.supplyDefaults(e);var u=e._fullLayout,f=u._has("cartesian");u._replotting=!0,(s||u._shouldCreateBgLayer)&&(Jie(e),u._shouldCreateBgLayer&&delete u._shouldCreateBgLayer),lx.initGradients(e),lx.initPatterns(e),s&&Xa.saveShowSpikeInitial(e);var c=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;c&&_r.doCalcdata(e);for(var h=0;h=e.data.length||n<-e.data.length)throw new Error(t+" must be valid indices for gd.data.");if(r.indexOf(n,a+1)>-1||n>=0&&r.indexOf(-e.data.length+n)>-1||n<0&&r.indexOf(e.data.length+n)>-1)throw new Error("each index in "+t+" must be unique.")}}function PL(e,r,t){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(r)||(r=[r]),G1(e,r,"currentIndices"),typeof t!="undefined"&&!Array.isArray(t)&&(t=[t]),typeof t!="undefined"&&G1(e,t,"newIndices"),typeof t!="undefined"&&r.length!==t.length)throw new Error("current and new indices must be of equal length.")}function Die(e,r,t){var a,n;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("traces must be defined.");for(Array.isArray(r)||(r=[r]),a=0;a=0&&f=0&&f0&&typeof C.parts[R]!="string";)R--;var N=C.parts[R],I=C.parts[R-1]+"."+N,H=C.parts.slice(0,R).join("."),G=vt(e.layout,H).get(),W=vt(a,H).get(),V=C.get();if(D!==void 0){b[A]=D,_[A]=N==="reverse"?D:yl(V);var O=J1.getLayoutValObject(a,C.parts);if(O&&O.impliedEdits&&D!==null)for(var Y in O.impliedEdits)w(rr.relativeAttr(A,Y),O.impliedEdits[Y]);if(["width","height"].indexOf(A)!==-1)if(D){w("autosize",null);var Z=A==="height"?"width":"height";w(Z,a[Z])}else a[A]=e._initialAutoSize[A];else if(A==="autosize")w("width",D?null:a.width),w("height",D?null:a.height);else if(I.match(YL))k(I),vt(a,H+"._inputRange").set(null);else if(I.match(VL)){k(I),vt(a,H+"._inputRange").set(null);var J=vt(a,H).get();J._inputDomain&&(J._input.domain=J._inputDomain.slice())}else I.match(zie)&&vt(a,H+"._inputDomain").set(null);if(N==="type"){M=G;var ee=W.type==="linear"&&D==="log",le=W.type==="log"&&D==="linear";if(ee||le){if(!M||!M.range)w(H+".autorange",!0);else if(W.autorange)ee&&(M.range=M.range[1]>M.range[0]?[1,2]:[2,1]);else{var ue=M.range[0],ve=M.range[1];ee?(ue<=0&&ve<=0&&w(H+".autorange",!0),ue<=0?ue=ve/1e6:ve<=0&&(ve=ue/1e6),w(H+".range[0]",Math.log(ue)/Math.LN10),w(H+".range[1]",Math.log(ve)/Math.LN10)):(w(H+".range[0]",Math.pow(10,ue)),w(H+".range[1]",Math.pow(10,ve)))}Array.isArray(a._subplots.polar)&&a._subplots.polar.length&&a[C.parts[0]]&&C.parts[1]==="radialaxis"&&delete a[C.parts[0]]._subplot.viewInitial["radialaxis.range"],Kn.getComponentMethod("annotations","convertCoords")(e,W,D,w),Kn.getComponentMethod("images","convertCoords")(e,W,D,w)}else w(H+".autorange",!0),w(H+".range",null);vt(a,H+"._inputRange").set(null)}else if(N.match(Aie)){var j=vt(a,A).get(),qe=(D||{}).type;(!qe||qe==="-")&&(qe="linear"),Kn.getComponentMethod("annotations","convertCoords")(e,j,qe,w),Kn.getComponentMethod("images","convertCoords")(e,j,qe,w)}var fe=O1.containerArrayMatch(A);if(fe){f=fe.array,c=fe.index;var be=fe.property,ce=O||{editType:"calc"};c!==""&&be===""&&(O1.isAddVal(D)?_[A]=null:O1.isRemoveVal(D)?_[A]=(vt(t,f).get()||[])[c]:rr.warn("unrecognized full object value",r)),ao.update(m,ce),u[f]||(u[f]={});var xe=u[f][c];xe||(xe=u[f][c]={}),xe[be]=D,delete r[A]}else N==="reverse"?(G.range?G.range.reverse():(w(H+".autorange",!0),G.range=[1,0]),W.autorange?m.calc=!0:m.plot=!0):(A==="dragmode"&&(D===!1&&V!==!1||D!==!1&&V===!1)||a._has("scatter-like")&&a._has("regl")&&A==="dragmode"&&(D==="lasso"||D==="select")&&!(V==="lasso"||V==="select")?m.plot=!0:O?ao.update(m,O):m.calc=!0,C.set(D))}}for(f in u){var U=O1.applyContainerArrayChanges(e,i(t,f),u[f],m,i);U||(m.plot=!0)}for(var Q in x){M=Xa.getFromId(e,Q);var X=M&&M._constraintGroup;if(X){m.calc=!0;for(var ge in X)x[ge]||(Xa.getFromId(e,ge)._constraintShrinkable=!0)}}(UL(e)||r.height||r.width)&&(m.plot=!0);var Te=a.shapes;for(c=0;c1;)if(a.pop(),t=vt(r,a.join(".")+".uirevision").get(),t!==void 0)return t;return r.uirevision}function Iie(e,r){for(var t=0;t[H,e._ev.listeners(H)]);i=Vr.newPlot(e,r,t,a).then(()=>{for(let[H,G]of I)G.forEach(W=>e.on(H,W));return Vr.react(e,r,t,a)})}else{e.data=r||[],Gt.cleanData(e.data),e.layout=t||{},Gt.cleanLayout(e.layout),Oie(e.data,e.layout,o,s),_r.supplyDefaults(e,{skipUpdateCalc:!0});var c=e._fullData,h=e._fullLayout,d=h.datarevision===void 0,p=h.transition,y=Vie(e,s,h,d,p),m=y.newDataRevision,b=Yie(e,o,c,d,p,m);if(UL(e)&&(y.layoutReplot=!0),b.calc||y.calc){e.calcdata=void 0;for(var _=Object.getOwnPropertyNames(h),w=0;w<_.length;w++){var x=_[w],M=x.substring(0,5);if(M==="xaxis"||M==="yaxis"){var k=h[x]._emptyCategories;k&&k()}}}else _r.supplyDefaultsUpdateCalc(e.calcdata,c);var A=[];if(n&&(e._transitionData={},_r.createTransitionData(e),A.push(l)),h.transition&&(b.anim||y.anim))y.ticks&&A.push(tt.doTicksRelayout),_r.doCalcdata(e),tt.doAutoRangeAndConstraints(e),A.push(function(){return _r.transitionFromReact(e,b,y,s)});else if(b.fullReplot||y.layoutReplot)e._fullLayout._skipDefaults=!0,A.push(Vr._doPlot);else{for(var C in y.arrays){var D=y.arrays[C];if(D.length){var E=Kn.getComponentMethod(C,"drawOne");if(E!==rr.noop)for(var R=0;R(f||e.emit("plotly_react",{config:a,data:r,layout:t}),e))}function Yie(e,r,t,a,n,i){var l=r.length===t.length;if(!n&&!l)return{fullReplot:!0,calc:!0};var o=ao.traceFlags();o.arrays={},o.nChanges=0,o.nChangesAnim=0;var s,u;function f(d){var p=J1.getTraceValObject(u,d);return!u._module.animatable&&p.anim&&(p.anim=!1),p}var c={getValObject:f,flags:o,immutable:a,transition:n,newDataRevision:i,gd:e},h={};for(s=0;s=n.length?n[0]:n[u]:n}function o(u){return Array.isArray(i)?u>=i.length?i[0]:i[u]:i}function s(u,f){var c=0;return function(){if(u&&++c===f)return u()}}return new Promise(function(u,f){function c(){if(a._frameQueue.length!==0){for(;a._frameQueue.length;){var N=a._frameQueue.pop();N.onInterrupt&&N.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function h(N){if(N.length!==0){for(var I=0;Ia._timeToNext&&p()};N()}var m=0;function b(N){return Array.isArray(n)?m>=n.length?N.transitionOpts=n[m]:N.transitionOpts=n[0]:N.transitionOpts=n,m++,N}var _,w,x=[],M=r==null,k=Array.isArray(r),A=!M&&!k&&rr.isPlainObject(r);if(A)x.push({type:"object",data:b(rr.extendFlat({},r))});else if(M||["string","number"].indexOf(typeof r)!==-1)for(_=0;_0&&EE)&&R.push(w);x=R}}x.length>0?h(x):(e.emit("plotly_animated"),u())})}function Uie(e,r,t){if(e=rr.getGraphDiv(e),r==null)return Promise.resolve();if(!rr.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var a,n,i,l,o=e._transitionData._frames,s=e._transitionData._frameHash;if(!Array.isArray(r))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+r);var u=o.length+r.length*2,f=[],c={};for(a=r.length-1;a>=0;a--)if(rr.isPlainObject(r[a])){var h=r[a].name,d=(s[h]||c[h]||{}).name,p=r[a].name,y=s[d]||c[d];d&&p&&typeof p=="number"&&y&&oxC.index?-1:A.index=0;a--){if(n=f[a].frame,typeof n.name=="number"&&rr.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!n.name)for(;s[n.name="frame "+e._transitionData._counter++];);if(s[n.name]){for(i=0;i=0;t--)a=r[t],i.push({type:"delete",index:a}),l.unshift({type:"insert",index:a,value:n[a]});var o=_r.modifyFrames,s=_r.modifyFrames,u=[e,l],f=[e,i];return Qa&&Qa.add(e,o,u,s,f),_r.modifyFrames(e,i)}function Xie(e){e=rr.getGraphDiv(e);var r=e._fullLayout||{},t=e._fullData||[];return _r.cleanPlot([],{},t,r),_r.purge(e),sx.purge(e),r._container&&r._container.remove(),delete e._context,e}function Zie(e){var r=e._fullLayout,t=e.getBoundingClientRect();if(!rr.equalDomRects(t,r._lastBBox)){var a=r._invTransform=rr.inverseTransformMatrix(rr.getFullTransformMatrix(e));r._invScaleX=Math.sqrt(a[0][0]*a[0][0]+a[0][1]*a[0][1]+a[0][2]*a[0][2]),r._invScaleY=Math.sqrt(a[1][0]*a[1][0]+a[1][1]*a[1][1]+a[1][2]*a[1][2]),r._lastBBox=t}}function Jie(e){var r=Y1.select(e),t=e._fullLayout;if(t._calcInverseTransform=Zie,t._calcInverseTransform(e),t._container=r.selectAll(".plot-container").data([0]),t._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),t._paperdiv=t._container.selectAll(".svg-container").data([0]),t._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),t._glcontainer=t._paperdiv.selectAll(".gl-container").data([{}]),t._glcontainer.enter().append("div").classed("gl-container",!0),t._paperdiv.selectAll(".main-svg").remove(),t._paperdiv.select(".modebar-container").remove(),t._paper=t._paperdiv.insert("svg",":first-child").classed("main-svg",!0),t._toppaper=t._paperdiv.append("svg").classed("main-svg",!0),t._modebardiv=t._paperdiv.append("div"),delete t._modeBar,t._hoverpaper=t._paperdiv.append("svg").classed("main-svg",!0),!t._uid){var a={};Y1.selectAll("defs").each(function(){this.id&&(a[this.id.split("-")[1]]=1)}),t._uid=rr.randstr(a)}t._paperdiv.selectAll(".main-svg").attr(Tie.svgAttrs),t._defs=t._paper.append("defs").attr("id","defs-"+t._uid),t._clips=t._defs.append("g").classed("clips",!0),t._topdefs=t._toppaper.append("defs").attr("id","topdefs-"+t._uid),t._topclips=t._topdefs.append("g").classed("clips",!0),t._bgLayer=t._paper.append("g").classed("bglayer",!0),t._draggers=t._paper.append("g").classed("draglayer",!0);var n=t._paper.append("g").classed("layer-below",!0);t._imageLowerLayer=n.append("g").classed("imagelayer",!0),t._shapeLowerLayer=n.append("g").classed("shapelayer",!0),t._cartesianlayer=t._paper.append("g").classed("cartesianlayer",!0),t._polarlayer=t._paper.append("g").classed("polarlayer",!0),t._smithlayer=t._paper.append("g").classed("smithlayer",!0),t._ternarylayer=t._paper.append("g").classed("ternarylayer",!0),t._geolayer=t._paper.append("g").classed("geolayer",!0),t._funnelarealayer=t._paper.append("g").classed("funnelarealayer",!0),t._pielayer=t._paper.append("g").classed("pielayer",!0),t._iciclelayer=t._paper.append("g").classed("iciclelayer",!0),t._treemaplayer=t._paper.append("g").classed("treemaplayer",!0),t._sunburstlayer=t._paper.append("g").classed("sunburstlayer",!0),t._indicatorlayer=t._toppaper.append("g").classed("indicatorlayer",!0),t._glimages=t._paper.append("g").classed("glimages",!0);var i=t._toppaper.append("g").classed("layer-above",!0);t._imageUpperLayer=i.append("g").classed("imagelayer",!0),t._shapeUpperLayer=i.append("g").classed("shapelayer",!0),t._selectionLayer=t._toppaper.append("g").classed("selectionlayer",!0),t._infolayer=t._toppaper.append("g").classed("infolayer",!0),t._menulayer=t._toppaper.append("g").classed("menulayer",!0),t._zoomlayer=t._toppaper.append("g").classed("zoomlayer",!0),t._hoverlayer=t._hoverpaper.append("g").classed("hoverlayer",!0),t._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}Vr.animate=Gie;Vr.addFrames=Uie;Vr.deleteFrames=Wie;Vr.addTraces=IL;Vr.deleteTraces=HL;Vr.extendTraces=NL;Vr.moveTraces=ux;Vr.prependTraces=FL;Vr.newPlot=Lie;Vr._doPlot=kie;Vr.purge=Xie;Vr.react=Bie;Vr.redraw=Cie;Vr.relayout=Ev;Vr.restyle=U1;Vr.setPlotConfig=qie;Vr.update=X1;Vr._guiRelayout=fx(Ev);Vr._guiRestyle=fx(U1);Vr._guiUpdate=fx(X1);Vr._storeDirectGUIEdit=Rie});var xs=B(Zi=>{"use strict";var $ie=gr();Zi.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Zi.getRedrawFunc=function(e){return function(){$ie.getComponentMethod("colorbar","draw")(e)}};Zi.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Zi.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var WL=window.URL||window.webkitURL;Zi.createObjectURL=function(e){return WL.createObjectURL(e)};Zi.revokeObjectURL=function(e){return WL.revokeObjectURL(e)};Zi.createBlob=function(e,r){if(r==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(r==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var t=Kie(window.atob(e));return new window.Blob([t],{type:"image/"+r})};Zi.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function Kie(e){for(var r=e.length,t=new ArrayBuffer(r),a=new Uint8Array(t),n=0;n{"use strict";var hx=kr(),q3e=Pe(),Qie=Yr(),jie=xr(),S3e=jo(),vx=/"/g,Rv="TOBESTRIPPED",ele=new RegExp('("'+Rv+")|("+Rv+'")',"g");function rle(e){var r=hx.select("body").append("div").style({display:"none"}).html(""),t=e.replace(/(&[^;]*;)/gi,function(a){return a==="<"?"<":a==="&rt;"?">":a.indexOf("<")!==-1||a.indexOf(">")!==-1?"":r.html(a).text()});return r.remove(),t}function tle(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}XL.exports=function(r,t,a){var n=r._fullLayout,i=n._paper,l=n._toppaper,o=n.width,s=n.height,u;i.insert("rect",":first-child").call(Qie.setRect,0,0,o,s).call(jie.fill,n.paper_bgcolor);var f=n._basePlotModules||[];for(u=0;u{"use strict";var ale=Pe(),nle=Bh().EventEmitter,zv=xs();function ile(e){var r=e.emitter||new nle,t=new Promise(function(a,n){var i=window.Image,l=e.svg,o=e.format||"png",s=e.canvas,u=e.scale||1,f=e.width||300,c=e.height||150,h=u*f,d=u*c,p=s.getContext("2d",{willReadFrequently:!0}),y=new i,m,b;o==="svg"||ale.isSafari()?b=zv.encodeSVG(l):(m=zv.createBlob(l,"svg"),b=zv.createObjectURL(m)),s.width=h,s.height=d,y.onload=function(){var _;switch(m=null,zv.revokeObjectURL(b),o!=="svg"&&p.drawImage(y,0,0,h,d),o){case"jpeg":_=s.toDataURL("image/jpeg");break;case"png":_=s.toDataURL("image/png");break;case"webp":_=s.toDataURL("image/webp");break;case"svg":_=b;break;default:var w="Image format is not jpeg, png, svg or webp.";if(n(new Error(w)),!e.promise)return r.emit("error",w)}a(_),e.promise||r.emit("success",_)},y.onerror=function(_){if(m=null,zv.revokeObjectURL(b),n(_),!e.promise)return r.emit("error",_)},y.src=b});return e.promise?t:r}ZL.exports=ile});var px=B((D3e,KL)=>{"use strict";var JL=zr(),$L=cx(),lle=Rt(),Ji=Pe(),Nv=xs(),ole=K1(),sle=Q1(),ule=lh().version,dx={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function fle(e,r){r=r||{};var t,a,n,i;Ji.isPlainObject(e)?(t=e.data||[],a=e.layout||{},n=e.config||{},i={}):(e=Ji.getGraphDiv(e),t=Ji.extendDeep([],e.data),a=Ji.extendDeep({},e.layout),n=e._context,i=e._fullLayout||{});function l(k){return!(k in r)||Ji.validate(r[k],dx[k])}if(!l("width")&&r.width!==null||!l("height")&&r.height!==null)throw new Error("Height and width should be pixel values.");if(!l("format"))throw new Error("Export format is not "+Ji.join2(dx.format.values,", "," or ")+".");var o={};function s(k,A){return Ji.coerce(r,o,dx,k,A)}var u=s("format"),f=s("width"),c=s("height"),h=s("scale"),d=s("setBackground"),p=s("imageDataOnly"),y=document.createElement("div");y.style.position="absolute",y.style.left="-5000px",document.body.appendChild(y);var m=Ji.extendFlat({},a);f?m.width=f:r.width===null&&JL(i.width)&&(m.width=i.width),c?m.height=c:r.height===null&&JL(i.height)&&(m.height=i.height);var b=Ji.extendFlat({},n,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),_=Nv.getRedrawFunc(y);function w(){return new Promise(function(k){setTimeout(k,Nv.getDelay(y._fullLayout))})}function x(){return new Promise(function(k,A){var C=ole(y,u,h),D=y._fullLayout.width,E=y._fullLayout.height;function R(){$L.purge(y),document.body.removeChild(y)}if(u==="full-json"){var N=lle.graphJson(y,!1,"keepdata","object",!0,!0);return N.version=ule,N=JSON.stringify(N),R(),k(p?N:Nv.encodeJSON(N))}if(R(),u==="svg")return k(p?C:Nv.encodeSVG(C));var I=document.createElement("canvas");I.id=Ji.randstr(),sle({format:u,width:D,height:E,scale:h,canvas:I,svg:C,promise:!0}).then(k).catch(A)})}function M(k){return p?k.replace(Nv.IMAGE_URL_PREFIX,""):k}return new Promise(function(k,A){$L.newPlot(y,t,m,b).then(_).then(w).then(x).then(function(C){k(M(C))}).catch(function(C){A(C)})})}KL.exports=fle});var eD=B((E3e,jL)=>{"use strict";var Qn=Pe(),cle=Rt(),vle=Pu(),hle=Vo().dfltConfig,Ti=Qn.isPlainObject,_s=Array.isArray,mx=Qn.isArrayOrTypedArray;jL.exports=function(r,t){r===void 0&&(r=[]),t===void 0&&(t={});var a=vle.get(),n=[],i={_context:Qn.extendFlat({},hle)},l,o;_s(r)?(i.data=Qn.extendDeep([],r),l=r):(i.data=[],l=[],n.push(ua("array","data"))),Ti(t)?(i.layout=Qn.extendDeep({},t),o=t):(i.layout={},o={},arguments.length>1&&n.push(ua("object","layout"))),cle.supplyDefaults(i);for(var s=i._fullData,u=l.length,f=0;fc.length&&a.push(ua("unused",n,u.concat(c.length)));var b=c.length,_=Array.isArray(m);_&&(b=Math.min(b,m.length));var w,x,M,k,A;if(h.dimensions===2)for(x=0;xc[x].length&&a.push(ua("unused",n,u.concat(x,c[x].length)));var C=c[x].length;for(w=0;w<(_?Math.min(C,m[x].length):C);w++)M=_?m[x][w]:m,k=f[x][w],A=c[x][w],Qn.validate(k,M)?A!==k&&A!==+k&&a.push(ua("dynamic",n,u.concat(x,w),k,A)):a.push(ua("value",n,u.concat(x,w),k))}else a.push(ua("array",n,u.concat(x),f[x]));else for(x=0;x{"use strict";var ble=Pe(),ep=xs();function _le(e,r,t){var a=document.createElement("a"),n="download"in a,i=new Promise(function(l,o){var s,u;if(n)return s=ep.createBlob(e,t),u=ep.createObjectURL(s),a.href=u,a.download=r,document.body.appendChild(a),a.click(),document.body.removeChild(a),ep.revokeObjectURL(u),s=null,l(r);if(ble.isSafari()){var f=t==="svg"?",":";base64,";return ep.octetStream(f+encodeURIComponent(e)),l(r)}o(new Error("download error"))});return i}rD.exports=_le});var yx=B((z3e,nD)=>{"use strict";var aD=Pe(),wle=px(),Tle=tD(),R3e=xs();function Mle(e,r){var t;return aD.isPlainObject(e)||(t=aD.getGraphDiv(e)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(a,n){t&&t._snapshotInProgress&&n(new Error("Snapshotting already in progress.")),t&&(t._snapshotInProgress=!0);var i=wle(e,r),l=r.filename||e.fn||"newplot";l+="."+r.format.replace("-","."),i.then(function(o){return t&&(t._snapshotInProgress=!1),Tle(o,l,r.format)}).then(function(o){a(o)}).catch(function(o){t&&(t._snapshotInProgress=!1),n(o)})})}nD.exports=Mle});var uD=B(gx=>{"use strict";var vn=Pe(),hn=vn.isPlainObject,iD=Pu(),lD=Rt(),Ale=tn(),oD=lt(),sD=Vo().dfltConfig;gx.makeTemplate=function(e){e=vn.isPlainObject(e)?e:vn.getGraphDiv(e),e=vn.extendDeep({_context:sD},{data:e.data,layout:e.layout}),lD.supplyDefaults(e);var r=e.data||[],t=e.layout||{};t._basePlotModules=e._fullLayout._basePlotModules,t._modules=e._fullLayout._modules;var a={data:{},layout:{}};r.forEach(function(d){var p={};Fv(d,p,qle.bind(null,d));var y=vn.coerce(d,{},Ale,"type"),m=a.data[y];m||(m=a.data[y]=[]),m.push(p)}),Fv(t,a.layout,kle.bind(null,t)),delete a.layout.template;var n=t.template;if(hn(n)){var i=n.layout,l,o,s,u,f,c;hn(i)&&rp(i,a.layout);var h=n.data;if(hn(h)){for(o in a.data)if(s=h[o],Array.isArray(s)){for(f=a.data[o],c=f.length,u=s.length,l=0;lb?l.push({code:"unused",traceType:d,templateCount:m,dataCount:b}):b>m&&l.push({code:"reused",traceType:d,templateCount:m,dataCount:b})}}function _(w,x){for(var M in w)if(M.charAt(0)!=="_"){var k=w[M],A=jn(w,M,x);hn(k)?(Array.isArray(w)&&k._template===!1&&k.templateitemname&&l.push({code:"missing",path:A,templateitemname:k.templateitemname}),_(k,A)):Array.isArray(k)&&Sle(k)&&_(k,A)}}if(_({data:s,layout:o},""),l.length)return l.map(Cle)};function Sle(e){for(var r=0;r{"use strict";var ea=cx();bt._doPlot=ea._doPlot;bt.newPlot=ea.newPlot;bt.restyle=ea.restyle;bt.relayout=ea.relayout;bt.redraw=ea.redraw;bt.update=ea.update;bt._guiRestyle=ea._guiRestyle;bt._guiRelayout=ea._guiRelayout;bt._guiUpdate=ea._guiUpdate;bt._storeDirectGUIEdit=ea._storeDirectGUIEdit;bt.react=ea.react;bt.extendTraces=ea.extendTraces;bt.prependTraces=ea.prependTraces;bt.addTraces=ea.addTraces;bt.deleteTraces=ea.deleteTraces;bt.moveTraces=ea.moveTraces;bt.purge=ea.purge;bt.addFrames=ea.addFrames;bt.deleteFrames=ea.deleteFrames;bt.animate=ea.animate;bt.setPlotConfig=ea.setPlotConfig;var Lle=Sc().getGraphDiv,Dle=h1().eraseActiveShape;bt.deleteActiveShape=function(e){return Dle(Lle(e))};bt.toImage=px();bt.validate=eD();bt.downloadImage=yx();var fD=uD();bt.makeTemplate=fD.makeTemplate;bt.validateTemplate=fD.validateTemplate});var Iv=B((I3e,vD)=>{"use strict";var xx=Pe(),Ele=gr();vD.exports=function(r,t,a,n){var i=n("x"),l=n("y"),o,s=Ele.getComponentMethod("calendars","handleTraceDefaults");if(s(r,t,["x","y"],a),i){var u=xx.minRowLength(i);l?o=Math.min(u,xx.minRowLength(l)):(o=u,n("y0"),n("dy"))}else{if(!l)return 0;o=xx.minRowLength(l),n("x0"),n("dx")}return t._length=o,o}});var ws=B((H3e,pD)=>{"use strict";var hD=Pe().dateTick0,Ple=wt(),Rle=Ple.ONEWEEK;function dD(e,r){return e%Rle===0?hD(r,1):hD(r,0)}pD.exports=function(r,t,a,n,i){if(i||(i={x:!0,y:!0}),i.x){var l=n("xperiod");l&&(n("xperiod0",dD(l,t.xcalendar)),n("xperiodalignment"))}if(i.y){var o=n("yperiod");o&&(n("yperiod0",dD(o,t.ycalendar)),n("yperiodalignment"))}}});var gD=B((O3e,yD)=>{"use strict";var mD=["orientation","groupnorm","stackgaps"];yD.exports=function(r,t,a,n){var i=a._scatterStackOpts,l=n("stackgroup");if(l){var o=t.xaxis+t.yaxis,s=i[o];s||(s=i[o]={});var u=s[l],f=!1;u?u.traces.push(t):(u=s[l]={traceIndices:[],traces:[t]},f=!0);for(var c={orientation:t.x&&!t.y?"h":"v"},h=0;h{"use strict";var xD=xr(),bD=bn().hasColorscale,_D=Fu(),zle=wn();wD.exports=function(r,t,a,n,i,l){var o=zle.isBubble(r),s=(r.line||{}).color,u;if(l=l||{},s&&(a=s),i("marker.symbol"),i("marker.opacity",o?.7:1),i("marker.size"),l.noAngle||(i("marker.angle"),l.noAngleRef||i("marker.angleref"),l.noStandOff||i("marker.standoff")),i("marker.color",a),bD(r,"marker")&&_D(r,t,n,i,{prefix:"marker.",cLetter:"c"}),l.noSelect||(i("selected.marker.color"),i("unselected.marker.color"),i("selected.marker.size"),i("unselected.marker.size")),l.noLine||(s&&!Array.isArray(s)&&t.marker.color!==s?u=s:o?u=xD.background:u=xD.defaultLine,i("marker.line.color",u),bD(r,"marker.line")&&_D(r,t,n,i,{prefix:"marker.line.",cLetter:"c"}),i("marker.line.width",o?1:0)),o&&(i("marker.sizeref"),i("marker.sizemin"),i("marker.sizemode")),l.gradient){var f=i("marker.gradient.type");f!=="none"&&i("marker.gradient.color")}}});var AD=B((Y3e,MD)=>{"use strict";var Nle=Pe().isArrayOrTypedArray,Fle=bn().hasColorscale,Ile=Fu();MD.exports=function(r,t,a,n,i,l){l||(l={});var o=(r.marker||{}).color;if(o&&o._inputArray&&(o=o._inputArray),i("line.color",a),Fle(r,"line"))Ile(r,t,n,i,{prefix:"line.",cLetter:"c"});else{var s=(Nle(o)?!1:o)||a;i("line.color",s)}i("line.width"),l.noDash||i("line.dash"),l.backoff&&i("line.backoff")}});var qD=B((V3e,kD)=>{"use strict";kD.exports=function(r,t,a){var n=a("line.shape");n==="spline"&&a("line.smoothing")}});var CD=B((G3e,SD)=>{"use strict";var Hle=Pe();SD.exports=function(e,r,t,a,n){n=n||{},a("textposition"),Hle.coerceFont(a,"textfont",n.font||t.font,n),n.noSelect||(a("selected.textfont.color"),a("unselected.textfont.color"))}});var ED=B((U3e,DD)=>{"use strict";var ap=xr(),LD=Pe().isArrayOrTypedArray;function Ole(e){for(var r=ap.interpolate(e[0][1],e[1][1],.5),t=2;t{"use strict";var PD=Pe(),Ble=gr(),Yle=_i(),Vle=L1(),hf=wn(),Gle=Iv(),Ule=ws(),Wle=gD(),Xle=TD(),Zle=AD(),RD=qD(),Jle=CD(),$le=ED(),Kle=Pe().coercePattern;zD.exports=function(r,t,a,n){function i(d,p){return PD.coerce(r,t,Yle,d,p)}var l=Gle(r,t,n,i);if(l||(t.visible=!1),!!t.visible){Ule(r,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder");var o=Wle(r,t,n,i);n.scattermode==="group"&&t.orientation===void 0&&i("orientation","v");var s=!o&&l{"use strict";var Qle=gs().getAxisGroup;FD.exports=function(r,t,a,n,i){var l=t.orientation,o=t[{v:"x",h:"y"}[l]+"axis"],s=Qle(a,o)+l,u=a._alignmentOpts||{},f=n("alignmentgroup"),c=u[s];c||(c=u[s]={});var h=c[f];h?h.traces.push(t):h=c[f]={traces:[t],alignmentIndex:Object.keys(c).length,offsetGroups:{}};var d=n("offsetgroup")||"",p=h.offsetGroups,y=p[d];t._offsetIndex=0,(i!=="group"||d)&&(y||(y=p[d]={offsetIndex:Object.keys(p).length}),t._offsetIndex=y.offsetIndex)}});var HD=B((Z3e,ID)=>{"use strict";var jle=Pe(),eoe=df(),roe=_i();ID.exports=function(r,t){var a,n,i,l=t.scattermode;function o(h){return jle.coerce(n._input,n,roe,h)}if(t.scattermode==="group")for(i=0;i=0;f--){var c=r[f];if(c.type==="scatter"&&c.xaxis===s.xaxis&&c.yaxis===s.yaxis){c.opacity=void 0;break}}}}}});var BD=B((J3e,OD)=>{"use strict";var toe=Pe(),aoe=Wh();OD.exports=function(e,r){function t(n,i){return toe.coerce(e,r,aoe,n,i)}var a=r.barmode==="group";r.scattermode==="group"&&t("scattergap",a?r.bargap:.2)}});var Ts=B(($3e,VD)=>{"use strict";var noe=zr(),YD=Pe(),ioe=YD.dateTime2ms,np=YD.incrementMonth,loe=wt(),ooe=loe.ONEAVGMONTH;VD.exports=function(r,t,a,n){if(t.type!=="date")return{vals:n};var i=r[a+"periodalignment"];if(!i)return{vals:n};var l=r[a+"period"],o;if(noe(l)){if(l=+l,l<=0)return{vals:n}}else if(typeof l=="string"&&l.charAt(0)==="M"){var s=+l.substring(1);if(s>0&&Math.round(s)===s)o=s;else return{vals:n}}for(var u=t.calendar,f=i==="start",c=i==="end",h=r[a+"period0"],d=ioe(h,u)||0,p=[],y=[],m=[],b=n.length,_=0;_w;)k=np(k,-o,u);for(;k<=w;)k=np(k,o,u);M=np(k,-o,u)}else{for(x=Math.round((w-d)/l),k=d+x*l;k>w;)k-=l;for(;k<=w;)k+=l;M=k-l}p[_]=f?M:c?k:(M+k)/2,y[_]=M,m[_]=k}return{vals:p,starts:y,ends:m}}});var WD=B((K3e,UD)=>{"use strict";var bx=bn().hasColorscale,_x=Vc(),GD=wn();UD.exports=function(r,t){GD.hasLines(t)&&bx(t,"line")&&_x(r,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),GD.hasMarkers(t)&&(bx(t,"marker")&&_x(r,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),bx(t,"marker.line")&&_x(r,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var wx=B((Q3e,XD)=>{"use strict";var zt=Pe();XD.exports=function(r,t){for(var a=0;a{"use strict";var ZD=Pe();JD.exports=function(r,t){ZD.isArrayOrTypedArray(t.selectedpoints)&&ZD.tagSelected(r,t)}});var qx=B((exe,tE)=>{"use strict";var $D=zr(),Mx=Pe(),Ov=Zr(),KD=Ts(),Tx=wt().BADNUM,Ax=wn(),soe=WD(),uoe=wx(),foe=Hv();function coe(e,r){var t=e._fullLayout,a=r._xA=Ov.getFromId(e,r.xaxis||"x","x"),n=r._yA=Ov.getFromId(e,r.yaxis||"y","y"),i=a.makeCalcdata(r,"x"),l=n.makeCalcdata(r,"y"),o=KD(r,a,"x",i),s=KD(r,n,"y",l),u=o.vals,f=s.vals,c=r._length,h=new Array(c),d=r.ids,p=kx(r,t,a,n),y=!1,m,b,_,w,x,M;eE(t,r);var k="x",A="y",C;if(p)Mx.pushUnique(p.traceIndices,r.index),m=p.orientation==="v",m?(A="s",C="x"):(k="s",C="y"),x=p.stackgaps==="interpolate";else{var D=jD(r,c);QD(e,r,a,n,u,f,D)}var E=!!r.xperiodalignment,R=!!r.yperiodalignment;for(b=0;bb&&h[w].gap;)w--;for(M=h[w].s,_=h.length-1;_>w;_--)h[_].s=M;for(;b{"use strict";aE.exports=ip;var voe=Pe().distinctVals;function ip(e,r){this.traces=e,this.sepNegVal=r.sepNegVal,this.overlapNoMerge=r.overlapNoMerge;for(var t=1/0,a=r.posAxis._id.charAt(0),n=[],i=0;i{"use strict";var ei=zr(),no=Pe().isArrayOrTypedArray,pf=wt().BADNUM,hoe=gr(),Bv=Zr(),doe=gs().getAxisGroup,lp=nE();function poe(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,l=e.calcdata,o=[],s=[],u=0;us+l||!ei(o))}for(var f=0;f{"use strict";var uE=qx(),fE=yf().setGroupPositions;function qoe(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,l=e.calcdata,o=[],s=[],u=0;uD[f]&&f{"use strict";var Coe=Yr(),mE=wt(),Yv=mE.BADNUM,yE=mE.LOG_CLIP,hE=yE+.5,dE=yE-.5,op=Pe(),Loe=op.segmentsIntersect,pE=op.constrain,Px=L1();gE.exports=function(r,t){var a=t.trace||{},n=t.xaxis,i=t.yaxis,l=n.type==="log",o=i.type==="log",s=n._length,u=i._length,f=t.backoff,c=a.marker,h=t.connectGaps,d=t.baseTolerance,p=t.shape,y=p==="linear",m=a.fill&&a.fill!=="none",b=[],_=Px.minTolerance,w=r.length,x=new Array(w),M=0,k,A,C,D,E,R,N,I,H,G,W,V,O,Y,Z,J;function ee(Ne){var ne=r[Ne];if(!ne)return!1;var oe=t.linearized?n.l2p(ne.x):n.c2p(ne.x),Ce=t.linearized?i.l2p(ne.y):i.c2p(ne.y);if(oe===Yv){if(l&&(oe=n.c2p(ne.x,!0)),oe===Yv)return!1;o&&Ce===Yv&&(oe*=Math.abs(n._m*u*(n._m>0?hE:dE)/(i._m*s*(i._m>0?hE:dE)))),oe*=1e3}if(Ce===Yv){if(o&&(Ce=i.c2p(ne.y,!0)),Ce===Yv)return!1;Ce*=1e3}return[oe,Ce]}function le(Ne,ne,oe,Ce){var De=oe-Ne,ar=Ce-ne,cr=.5-Ne,sr=.5-ne,Ar=De*De+ar*ar,Br=De*cr+ar*sr;if(Br>0&&Br1||Math.abs(cr.y-oe[0][1])>1)&&(cr=[cr.x,cr.y],Ce&&qe(cr,Ne)ce||Ne[1]U)return[pE(Ne[0],be,ce),pE(Ne[1],xe,U)]}function Be(Ne,ne){if(Ne[0]===ne[0]&&(Ne[0]===be||Ne[0]===ce)||Ne[1]===ne[1]&&(Ne[1]===xe||Ne[1]===U))return!0}function Ue(Ne,ne){var oe=[],Ce=Fe(Ne),De=Fe(ne);return Ce&&De&&Be(Ce,De)||(Ce&&oe.push(Ce),De&&oe.push(De)),oe}function Le(Ne,ne,oe){return function(Ce,De){var ar=Fe(Ce),cr=Fe(De),sr=[];if(ar&&cr&&Be(ar,cr))return sr;ar&&sr.push(ar),cr&&sr.push(cr);var Ar=2*op.constrain((Ce[Ne]+De[Ne])/2,ne,oe)-((ar||Ce)[Ne]+(cr||De)[Ne]);if(Ar){var Br;ar&&cr?Br=Ar>0==ar[Ne]>cr[Ne]?ar:cr:Br=ar||cr,Br[Ne]+=Ar}return sr}}var He;p==="linear"||p==="spline"?He=Ee:p==="hv"||p==="vh"?He=Ue:p==="hvh"?He=Le(0,be,ce):p==="vhv"&&(He=Le(1,xe,U));function Ye(Ne,ne){var oe=ne[0]-Ne[0],Ce=(ne[1]-Ne[1])/oe,De=(Ne[1]*ne[0]-ne[1]*Ne[0])/oe;return De>0?[Ce>0?be:ce,U]:[Ce>0?ce:be,xe]}function ie(Ne){var ne=Ne[0],oe=Ne[1],Ce=ne===x[M-1][0],De=oe===x[M-1][1];if(!(Ce&&De))if(M>1){var ar=ne===x[M-2][0],cr=oe===x[M-2][1];Ce&&(ne===be||ne===ce)&&ar?cr?M--:x[M-1]=Ne:De&&(oe===xe||oe===U)&&cr?ar?M--:x[M-1]=Ne:x[M++]=Ne}else x[M++]=Ne}function _e(Ne){x[M-1][0]!==Ne[0]&&x[M-1][1]!==Ne[1]&&ie([Te,ye]),ie(Ne),ze=null,Te=ye=0}var $e=op.isArrayOrTypedArray(c);function hr(Ne){if(Ne&&f&&(Ne.i=k,Ne.d=r,Ne.trace=a,Ne.marker=$e?c[Ne.i]:c,Ne.backoff=f),ue=Ne[0]/s,ve=Ne[1]/u,X=Ne[0]ce?ce:0,ge=Ne[1]U?U:0,X||ge){if(!M)x[M++]=[X||Ne[0],ge||Ne[1]];else if(ze){var ne=He(ze,Ne);ne.length>1&&(_e(ne[0]),x[M++]=ne[1])}else Ie=He(x[M-1],Ne)[0],x[M++]=Ie;var oe=x[M-1];X&&ge&&(oe[0]!==X||oe[1]!==ge)?(ze&&(Te!==X&&ye!==ge?ie(Te&&ye?Ye(ze,Ne):[Te||X,ye||ge]):Te&&ye&&ie([Te,ye])),ie([X,ge])):Te-X&&ye-ge&&ie([X||Te,ge||ye]),ze=Ne,Te=X,ye=ge}else ze&&_e(He(ze,Ne)[0]),x[M++]=Ne}for(k=0;kj(R,Re))break;C=R,O=H[0]*I[0]+H[1]*I[1],O>W?(W=O,D=R,N=!1):O=r.length||!R)break;hr(R),A=R}}ze&&ie([Te||ze[0],ye||ze[1]]),b.push(x.slice(0,M))}var Ae=p.slice(p.length-1);if(f&&Ae!=="h"&&Ae!=="v"){for(var Se=!1,Oe=-1,Je=[],We=0;We{"use strict";var bE={tonextx:1,tonexty:1,tonext:1};_E.exports=function(r,t,a){var n,i,l,o,s,u={},f=!1,c=-1,h=0,d=-1;for(i=0;i=0?s=d:(s=d=h,h++),s{"use strict";var Mi=kr(),Doe=gr(),Vv=Pe(),gf=Vv.ensureSingle,ME=Vv.identity,Nt=Yr(),xf=wn(),Eoe=xE(),Poe=wE(),sp=R3().tester;AE.exports=function(r,t,a,n,i,l){var o,s,u=!i,f=!!i&&i.duration>0,c=Poe(r,t,a);if(o=n.selectAll("g.trace").data(c,function(d){return d[0].trace.uid}),o.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),o.order(),Roe(r,o,t),f){l&&(s=l());var h=Mi.transition().duration(i.duration).ease(i.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});h.each(function(){n.selectAll("g.trace").each(function(d,p){TE(r,p,t,d,c,this,i)})})}else o.each(function(d,p){TE(r,p,t,d,c,this,i)});u&&o.exit().remove(),n.selectAll("path:not([d])").remove()};function Roe(e,r,t){r.each(function(a){var n=gf(Mi.select(this),"g","fills");Nt.setClipUrl(n,t.layerClipId,e);var i=a[0].trace,l=[];i._ownfill&&l.push("_ownFill"),i._nexttrace&&l.push("_nextFill");var o=n.selectAll("g").data(l,ME);o.enter().append("g"),o.exit().each(function(s){i[s]=null}).remove(),o.order().each(function(s){i[s]=gf(Mi.select(this),"path","js-fill")})})}function TE(e,r,t,a,n,i,l){var o=e._context.staticPlot,s;zoe(e,r,t,a,n);var u=!!l&&l.duration>0;function f(Le){return u?Le.transition():Le}var c=t.xaxis,h=t.yaxis,d=a[0].trace,p=d.line,y=Mi.select(i),m=gf(y,"g","errorbars"),b=gf(y,"g","lines"),_=gf(y,"g","points"),w=gf(y,"g","text");if(Doe.getComponentMethod("errorbars","plot")(e,m,t,l),d.visible!==!0)return;f(y).style("opacity",d.opacity);var x,M,k=d.fill.charAt(d.fill.length-1);k!=="x"&&k!=="y"&&(k="");var A,C;k==="y"?(A=1,C=h.c2p(0,!0)):k==="x"&&(A=0,C=c.c2p(0,!0)),a[0][t.isRangePlot?"nodeRangePlot3":"node3"]=y;var D="",E=[],R=d._prevtrace,N=null,I=null;R&&(D=R._prevRevpath||"",M=R._nextFill,E=R._ownPolygons,N=R._fillsegments,I=R._fillElement);var H,G,W="",V="",O,Y,Z,J,ee,le,ue=[];d._polygons=[];var ve=[],j=[],qe=Vv.noop;if(x=d._ownFill,xf.hasLines(d)||d.fill!=="none"){M&&M.datum(a),["hv","vh","hvh","vhv"].indexOf(p.shape)!==-1?(O=Nt.steps(p.shape),Y=Nt.steps(p.shape.split("").reverse().join(""))):p.shape==="spline"?O=Y=function(Le){var He=Le[Le.length-1];return Le.length>1&&Le[0][0]===He[0]&&Le[0][1]===He[1]?Nt.smoothclosed(Le.slice(1),p.smoothing):Nt.smoothopen(Le,p.smoothing)}:O=Y=function(Le){return"M"+Le.join("L")},Z=function(Le){return Y(Le.reverse())},j=Eoe(a,{xaxis:c,yaxis:h,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(p.width||1,3)/4,shape:p.shape,backoff:p.backoff,simplify:p.simplify,fill:d.fill}),ve=new Array(j.length);var fe=0;for(s=0;s=o[0]&&y.x<=o[1]&&y.y>=s[0]&&y.y<=s[1]}),h=Math.ceil(c.length/f),d=0;n.forEach(function(y,m){var b=y[0].trace;xf.hasMarkers(b)&&b.marker.maxdisplayed>0&&m{"use strict";qE.exports={container:"marker",min:"cmin",max:"cmax"}});var CE=B((sxe,SE)=>{"use strict";var fp=Zr();SE.exports=function(r,t,a){var n={},i={_fullLayout:a},l=fp.getFromTrace(i,t,"x"),o=fp.getFromTrace(i,t,"y"),s=r.orig_x;s===void 0&&(s=r.x);var u=r.orig_y;return u===void 0&&(u=r.y),n.xLabel=fp.tickText(l,l.c2l(s),!0).text,n.yLabel=fp.tickText(o,o.c2l(u),!0).text,n}});var Fx=B((uxe,LE)=>{"use strict";var Rx=kr(),bf=Yr(),Noe=gr();function Foe(e){var r=Rx.select(e).selectAll("g.trace.scatter");r.style("opacity",function(t){return t[0].trace.opacity}),r.selectAll("g.points").each(function(t){var a=Rx.select(this),n=t.trace||t[0].trace;zx(a,n,e)}),r.selectAll("g.text").each(function(t){var a=Rx.select(this),n=t.trace||t[0].trace;Nx(a,n,e)}),r.selectAll("g.trace path.js-line").call(bf.lineGroupStyle),r.selectAll("g.trace path.js-fill").call(bf.fillGroupStyle,e,!1),Noe.getComponentMethod("errorbars","style")(r)}function zx(e,r,t){bf.pointStyle(e.selectAll("path.point"),r,t)}function Nx(e,r,t){bf.textPointStyle(e.selectAll("text"),r,t)}function Ioe(e,r,t){var a=r[0].trace;a.selectedpoints?(bf.selectedPointStyle(t.selectAll("path.point"),a),bf.selectedTextStyle(t.selectAll("text"),a)):(zx(t,a,e),Nx(t,a,e))}LE.exports={style:Foe,stylePoints:zx,styleText:Nx,styleOnSelect:Ioe}});var EE=B((fxe,DE)=>{"use strict";var _f=xr(),Hoe=wn();DE.exports=function(r,t){var a,n;if(r.mode==="lines")return a=r.line.color,a&&_f.opacity(a)?a:r.fillcolor;if(r.mode==="none")return r.fill?r.fillcolor:"";var i=t.mcc||(r.marker||{}).color,l=t.mlcc||((r.marker||{}).line||{}).color;return n=i&&_f.opacity(i)?i:l&&_f.opacity(l)&&(t.mlw||((r.marker||{}).line||{}).width)?l:"",n?_f.opacity(n)<.3?_f.addOpacity(n,.3):n:(a=(r.line||{}).color,a&&_f.opacity(a)&&Hoe.hasLines(r)&&r.line.width?a:r.fillcolor)}});var zE=B((cxe,RE)=>{"use strict";var cp=Pe(),PE=xi(),Ooe=gr(),Boe=EE(),Ix=xr(),Yoe=cp.fillText;RE.exports=function(r,t,a,n){var i=r.cd,l=i[0].trace,o=r.xa,s=r.ya,u=o.c2p(t),f=s.c2p(a),c=[u,f],h=l.hoveron||"",d=l.mode.indexOf("markers")!==-1?3:.5,p=!!l.xperiodalignment,y=!!l.yperiodalignment;if(h.indexOf("points")!==-1){var m=function(V){if(p){var O=o.c2p(V.xStart),Y=o.c2p(V.xEnd);return u>=Math.min(O,Y)&&u<=Math.max(O,Y)?0:1/0}var Z=Math.max(3,V.mrc||0),J=1-1/Z,ee=Math.abs(o.c2p(V.x)-u);return ee=Math.min(O,Y)&&f<=Math.max(O,Y)?0:1/0}var Z=Math.max(3,V.mrc||0),J=1-1/Z,ee=Math.abs(s.c2p(V.y)-f);return eeue!=U>=ue&&(be=qe[j-1][0],ce=qe[j][0],U-xe&&(fe=be+(ce-be)*(ue-xe)/(U-xe),Z=Math.min(Z,fe),J=Math.max(J,fe)));return Z=Math.max(Z,0),J=Math.min(J,o._length),{x0:Z,x1:J,y0:ue,y1:ue}}if(h.indexOf("fills")!==-1&&l._fillElement){var H=N(l._fillElement)&&!N(l._fillExclusionElement);if(H){var G=I(l._polygons);G===null&&(G={x0:c[0],x1:c[0],y0:c[1],y1:c[1]});var W=Ix.defaultLine;return Ix.opacity(l.fillcolor)?W=l.fillcolor:Ix.opacity((l.line||{}).color)&&(W=l.line.color),cp.extendFlat(r,{distance:r.maxHoverDistance,x0:G.x0,x1:G.x1,y0:G.y0,y1:G.y1,color:W,hovertemplate:!1}),delete r.index,l.text&&!cp.isArrayOrTypedArray(l.text)?r.text=String(l.text):r.text=l.name,[r]}}}});var IE=B((vxe,FE)=>{"use strict";var NE=wn();FE.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,l=[],o=a[0].trace,s,u,f,c,h=!NE.hasMarkers(o)&&!NE.hasText(o);if(h)return[];if(t===!1)for(s=0;s{"use strict";HE.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var GE=B((dxe,VE)=>{"use strict";var Gv=gr().traceIs,Hx=c2();VE.exports=function(r,t,a,n){a("autotypenumbers",n.autotypenumbersDflt);var i=a("type",(n.splomStash||{}).type);i==="-"&&(Voe(t,n.data),t.type==="-"?t.type="linear":r.type=t.type)};function Voe(e,r){if(e.type==="-"){var t=e._id,a=t.charAt(0),n;t.indexOf("scene")!==-1&&(t=a);var i=Goe(r,t,a);if(i){if(i.type==="histogram"&&a==={v:"y",h:"x"}[i.orientation||"v"]){e.type="linear";return}var l=a+"calendar",o=i[l],s={noMultiCategory:!Gv(i,"cartesian")||Gv(i,"noMultiCategory")};if(i.type==="box"&&i._hasPreCompStats&&a==={h:"x",v:"y"}[i.orientation||"v"]&&(s.noMultiCategory=!0),s.autotypenumbers=e.autotypenumbers,YE(i,a)){var u=BE(i),f=[];for(n=0;n0&&(n["_"+t+"axes"]||{})[r])return n;if((n[t+"axis"]||t)===r){if(YE(n,t))return n;if((n[t]||[]).length||n[t+"0"])return n}}}function BE(e){return{v:"x",h:"y"}[e.orientation||"v"]}function YE(e,r){var t=BE(e),a=Gv(e,"box-violin"),n=Gv(e._fullInput||{},"candlestick");return a&&!n&&r===t&&e[t]===void 0&&e[t+"0"]===void 0}});var WE=B((pxe,UE)=>{"use strict";var Uoe=yn().isTypedArraySpec;function Woe(e,r){var t=r.dataAttr||e._id.charAt(0),a={},n,i,l;if(r.axData)n=r.axData;else for(n=[],i=0;i0||Uoe(i),o;l&&(o="array");var s=a("categoryorder",o),u;s==="array"&&(u=a("categoryarray")),!l&&s==="array"&&(s=t.categoryorder="trace"),s==="trace"?t._initialCategories=[]:s==="array"?t._initialCategories=u.slice():(u=Woe(t,n).sort(),s==="category ascending"?t._initialCategories=u:s==="category descending"&&(t._initialCategories=u.reverse()))}}});var JE=B((mxe,ZE)=>{"use strict";var XE=Nn().mix,Xoe=Fn(),Zoe=Pe();ZE.exports=function(r,t,a,n){n=n||{};var i=n.dfltColor;function l(C,D){return Zoe.coerce2(r,t,n.attributes,C,D)}var o=l("linecolor",i),s=l("linewidth"),u=a("showline",n.showLine||!!o||!!s);u||(delete t.linecolor,delete t.linewidth);var f=XE(i,n.bgColor,n.blend||Xoe.lightFraction).toRgbString(),c=l("gridcolor",f),h=l("gridwidth"),d=l("griddash"),p=a("showgrid",n.showGrid||!!c||!!h||!!d);if(p||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),n.hasMinor){var y=XE(t.gridcolor,n.bgColor,67).toRgbString(),m=l("minor.gridcolor",y),b=l("minor.gridwidth",t.gridwidth||1),_=l("minor.griddash",t.griddash||"solid"),w=a("minor.showgrid",!!m||!!b||!!_);w||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!n.noZeroLine){var x=l("zerolinelayer"),M=l("zerolinecolor",i),k=l("zerolinewidth"),A=a("zeroline",n.showGrid||!!M||!!k);A||(delete t.zerolinelayer,delete t.zerolinecolor,delete t.zerolinewidth)}}});var hp=B((yxe,rP)=>{"use strict";var $E=zr(),Joe=gr(),Uv=Pe(),$oe=lt(),Koe=Bn(),Ox=_n(),KE=td(),QE=ad(),Qoe=id(),joe=ld(),ese=WE(),rse=JE(),tse=E2(),jE=_d(),vp=Ma().WEEKDAY_PATTERN,ase=Ma().HOUR_PATTERN;rP.exports=function(r,t,a,n,i){var l=n.letter,o=n.font||{},s=n.splomStash||{},u=a("visible",!n.visibleDflt),f=t._template||{},c=t.type||f.type||"-",h;if(c==="date"){var d=Joe.getComponentMethod("calendars","handleDefaults");d(r,t,"calendar",n.calendar),n.noTicklabelmode||(h=a("ticklabelmode"))}!n.noTicklabelindex&&(c==="date"||c==="linear")&&a("ticklabelindex");var p="";(!n.noTicklabelposition||c==="multicategory")&&(p=Uv.coerce(r,t,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h==="period"?["outside","inside"]:l==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),n.noTicklabeloverflow||a("ticklabeloverflow",p.indexOf("inside")!==-1?"hide past domain":c==="category"||c==="multicategory"?"allow":"hide past div"),jE(t,i),tse(r,t,a,n),ese(r,t,a,n),n.noHover||(c!=="category"&&a("hoverformat"),n.noUnifiedhovertitle||a("unifiedhovertitle.text"));var y=a("color"),m=y!==Ox.color.dflt?y:o.color,b=s.label||i._dfltTitle[l];if(joe(r,t,a,c,n),!u)return t;a("title.text",b),Uv.coerceFont(a,"title.font",o,{overrideDflt:{size:Uv.bigFont(o.size),color:m}}),KE(r,t,a,c);var _=n.hasMinor;if(_&&($oe.newContainer(t,"minor"),KE(r,t,a,c,{isMinor:!0})),Qoe(r,t,a,c,n),QE(r,t,a,n),_){var w=n.isMinor;n.isMinor=!0,QE(r,t,a,n),n.isMinor=w}rse(r,t,a,{dfltColor:y,bgColor:n.bgColor,showGrid:n.showGrid,hasMinor:_,attributes:Ox}),_&&!t.minor.ticks&&!t.minor.showgrid&&delete t.minor,(t.showline||t.ticks)&&a("mirror");var x=c==="multicategory";if(!n.noTickson&&(c==="category"||x)&&(t.ticks||t.showgrid)&&(x?(a("tickson","boundaries"),delete t.ticklabelposition):a("tickson")),x){var M=a("showdividers");M&&(a("dividercolor"),a("dividerwidth"))}if(c==="date")if(Koe(r,t,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:nse}),!t.rangebreaks.length)delete t.rangebreaks;else{for(var k=0;k=2){var l="",o,s;if(i.length===2){for(o=0;o<2;o++)if(s=eP(i[o]),s){l=vp;break}}var u=a("pattern",l);if(u===vp)for(o=0;o<2;o++)s=eP(i[o]),s&&(r.bounds[o]=i[o]=s-1);if(u)for(o=0;o<2;o++)switch(s=i[o],u){case vp:if(!$E(s)){r.enabled=!1;return}if(s=+s,s!==Math.floor(s)||s<0||s>=7){r.enabled=!1;return}r.bounds[o]=i[o]=s;break;case ase:if(!$E(s)){r.enabled=!1;return}if(s=+s,s<0||s>24){r.enabled=!1;return}r.bounds[o]=i[o]=s;break}if(t.autorange===!1){var f=t.range;if(f[0]f[1]){r.enabled=!1;return}}else if(i[0]>f[0]&&i[1]{"use strict";var lse=zr(),dp=Pe();tP.exports=function(r,t,a,n){var i=n.counterAxes||[],l=n.overlayableAxes||[],o=n.letter,s=n.grid,u=n.overlayingDomain,f,c,h,d,p,y;s&&(c=s._domains[o][s._axisMap[t._id]],f=s._anchors[t._id],c&&(h=s[o+"side"].split(" ")[0],d=s.domain[o][h==="right"||h==="top"?1:0])),c=c||[0,1],f=f||(lse(r.position)?"free":i[0]||"free"),h=h||(o==="x"?"bottom":"left"),d=d||0,p=0,y=!1;var m=dp.coerce(r,t,{anchor:{valType:"enumerated",values:["free"].concat(i),dflt:f}},"anchor"),b=dp.coerce(r,t,{side:{valType:"enumerated",values:o==="x"?["bottom","top"]:["left","right"],dflt:h}},"side");if(m==="free"){if(o==="y"){var _=a("autoshift");_&&(d=b==="left"?u[0]:u[1],y=t.automargin?t.automargin:!0,p=b==="left"?-3:3),a("shift",p)}a("position",d)}a("automargin",y);var w=!1;if(l.length&&(w=dp.coerce(r,t,{overlaying:{valType:"enumerated",values:[!1].concat(l),dflt:!1}},"overlaying")),!w){var x=a("domain",c);x[0]>x[1]-1/4096&&(t.domain=c),dp.noneOrAll(r.domain,t.domain,c),t.tickmode==="sync"&&(t.tickmode="auto")}return a("layer"),t}});var cP=B((xxe,fP)=>{"use strict";var Ms=Pe(),aP=xr(),ose=Hi().isUnifiedHover,sse=a3(),nP=lt(),use=wu(),iP=_n(),fse=GE(),lP=hp(),cse=gs(),oP=pp(),Yx=Ut(),$i=Yx.id2name,sP=Yx.name2id,vse=Ma().AX_ID_PATTERN,uP=gr(),mp=uP.traceIs,Bx=uP.getComponentMethod;function yp(e,r,t){Array.isArray(e[r])?e[r].push(t):e[r]=[t]}fP.exports=function(r,t,a){var n=t.autotypenumbers,i={},l={},o={},s={},u={},f={},c={},h={},d={},p={},y,m;for(y=0;y{"use strict";var hse=kr(),vP=gr(),gp=Pe(),Sn=Yr(),xp=Zr();hP.exports=function(r,t,a,n){var i=r._fullLayout;if(t.length===0){xp.redrawComponents(r);return}function l(m){var b=m.xaxis,_=m.yaxis;i._defs.select("#"+m.clipId+"> rect").call(Sn.setTranslate,0,0).call(Sn.setScale,1,1),m.plot.call(Sn.setTranslate,b._offset,_._offset).call(Sn.setScale,1,1);var w=m.plot.selectAll(".scatterlayer .trace");w.selectAll(".point").call(Sn.setPointGroupScale,1,1),w.selectAll(".textpoint").call(Sn.setTextPointsScale,1,1),w.call(Sn.hideOutsideRangePoints,m)}function o(m,b){var _=m.plotinfo,w=_.xaxis,x=_.yaxis,M=w._length,k=x._length,A=!!m.xr1,C=!!m.yr1,D=[];if(A){var E=gp.simpleMap(m.xr0,w.r2l),R=gp.simpleMap(m.xr1,w.r2l),N=E[1]-E[0],I=R[1]-R[0];D[0]=(E[0]*(1-b)+b*R[0]-E[0])/(E[1]-E[0])*M,D[2]=M*(1-b+b*I/N),w.range[0]=w.l2r(E[0]*(1-b)+b*R[0]),w.range[1]=w.l2r(E[1]*(1-b)+b*R[1])}else D[0]=0,D[2]=M;if(C){var H=gp.simpleMap(m.yr0,x.r2l),G=gp.simpleMap(m.yr1,x.r2l),W=H[1]-H[0],V=G[1]-G[0];D[1]=(H[1]*(1-b)+b*G[1]-H[1])/(H[0]-H[1])*k,D[3]=k*(1-b+b*V/W),x.range[0]=w.l2r(H[0]*(1-b)+b*G[0]),x.range[1]=x.l2r(H[1]*(1-b)+b*G[1])}else D[1]=0,D[3]=k;xp.drawOne(r,w,{skipTitle:!0}),xp.drawOne(r,x,{skipTitle:!0}),xp.redrawComponents(r,[w._id,x._id]);var O=A?M/D[2]:1,Y=C?k/D[3]:1,Z=A?D[0]:0,J=C?D[1]:0,ee=A?D[0]/D[2]*M:0,le=C?D[1]/D[3]*k:0,ue=w._offset-ee,ve=x._offset-le;_.clipRect.call(Sn.setTranslate,Z,J).call(Sn.setScale,1/O,1/Y),_.plot.call(Sn.setTranslate,ue,ve).call(Sn.setScale,O,Y),Sn.setPointGroupScale(_.zoomScalePts,1/O,1/Y),Sn.setTextPointsScale(_.zoomScaleTxt,1/O,1/Y)}var s;n&&(s=n());function u(){for(var m={},b=0;ba.duration?(u(),d=window.cancelAnimationFrame(y)):d=window.requestAnimationFrame(y)}return c=Date.now(),d=window.requestAnimationFrame(y),Promise.resolve()}});var gl=B(za=>{"use strict";var _p=kr(),pP=gr(),As=Pe(),dse=Rt(),pse=Yr(),mP=wg().getModuleCalcData,io=Ut(),Ai=Ma(),mse=jo(),Jr=As.ensureSingle;function bp(e,r,t){return As.ensureSingle(e,r,t,function(a){a.datum(t)})}var ks=Ai.zindexSeparator;za.name="cartesian";za.attr=["xaxis","yaxis"];za.idRoot=["x","y"];za.idRegex=Ai.idRegex;za.attrRegex=Ai.attrRegex;za.attributes=OE();za.layoutAttributes=_n();za.supplyLayoutDefaults=cP();za.transitionAxes=dP();za.finalizeSubplots=function(e,r){var t=r._subplots,a=t.xaxis,n=t.yaxis,i=t.cartesian,l=i,o={},s={},u,f,c;for(u=0;u0){var d=h.id;if(d.indexOf(ks)!==-1)continue;d+=ks+(u+1),h=As.extendFlat({},h,{id:d,plot:n._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var p=[],y,m=0;m1&&(M+=ks+x),w.push(o+M),l=0;l1,c=r.mainplotinfo;if(!r.mainplot||f)if(u)r.xlines=Jr(a,"path","xlines-above"),r.ylines=Jr(a,"path","ylines-above"),r.xaxislayer=Jr(a,"g","xaxislayer-above"),r.yaxislayer=Jr(a,"g","yaxislayer-above");else{if(!l){var h=Jr(a,"g","layer-subplot");r.shapelayer=Jr(h,"g","shapelayer"),r.imagelayer=Jr(h,"g","imagelayer"),c&&f?(r.minorGridlayer=c.minorGridlayer,r.gridlayer=c.gridlayer,r.zerolinelayer=c.zerolinelayer):(r.minorGridlayer=Jr(a,"g","minor-gridlayer"),r.gridlayer=Jr(a,"g","gridlayer"),r.zerolinelayer=Jr(a,"g","zerolinelayer"));var d=Jr(a,"g","layer-between");r.shapelayerBetween=Jr(d,"g","shapelayer"),r.imagelayerBetween=Jr(d,"g","imagelayer"),Jr(a,"path","xlines-below"),Jr(a,"path","ylines-below"),r.overlinesBelow=Jr(a,"g","overlines-below"),Jr(a,"g","xaxislayer-below"),Jr(a,"g","yaxislayer-below"),r.overaxesBelow=Jr(a,"g","overaxes-below")}r.overplot=Jr(a,"g","overplot"),r.plot=Jr(r.overplot,"g",n),c&&f?r.zerolinelayerAbove=c.zerolinelayerAbove:r.zerolinelayerAbove=Jr(a,"g","zerolinelayer-above"),l||(r.xlines=Jr(a,"path","xlines-above"),r.ylines=Jr(a,"path","ylines-above"),r.overlinesAbove=Jr(a,"g","overlines-above"),Jr(a,"g","xaxislayer-above"),Jr(a,"g","yaxislayer-above"),r.overaxesAbove=Jr(a,"g","overaxes-above"),r.xlines=a.select(".xlines-"+o),r.ylines=a.select(".ylines-"+s),r.xaxislayer=a.select(".xaxislayer-"+o),r.yaxislayer=a.select(".yaxislayer-"+s))}else{var p=c.plotgroup,y=n+"-x",m=n+"-y";r.minorGridlayer=c.minorGridlayer,r.gridlayer=c.gridlayer,r.zerolinelayer=c.zerolinelayer,r.zerolinelayerAbove=c.zerolinelayerAbove,Jr(c.overlinesBelow,"path",y),Jr(c.overlinesBelow,"path",m),Jr(c.overaxesBelow,"g",y),Jr(c.overaxesBelow,"g",m),r.plot=Jr(c.overplot,"g",n),Jr(c.overlinesAbove,"path",y),Jr(c.overlinesAbove,"path",m),Jr(c.overaxesAbove,"g",y),Jr(c.overaxesAbove,"g",m),r.xlines=p.select(".overlines-"+o).select("."+y),r.ylines=p.select(".overlines-"+s).select("."+m),r.xaxislayer=p.select(".overaxes-"+o).select("."+y),r.yaxislayer=p.select(".overaxes-"+s).select("."+m)}l||(u||(bp(r.minorGridlayer,"g",r.xaxis._id),bp(r.minorGridlayer,"g",r.yaxis._id),r.minorGridlayer.selectAll("g").map(function(b){return b[0]}).sort(io.idSort),bp(r.gridlayer,"g",r.xaxis._id),bp(r.gridlayer,"g",r.yaxis._id),r.gridlayer.selectAll("g").map(function(b){return b[0]}).sort(io.idSort)),r.xlines.style("fill","none").classed("crisp",!0),r.ylines.style("fill","none").classed("crisp",!0))}function xP(e,r){if(e){var t={};e.each(function(s){var u=s[0],f=_p.select(this);f.remove(),bP(u,r),t[u]=!0});for(var a in r._plots)for(var n=r._plots[a],i=n.overlays||[],l=0;l{"use strict";var wp=wn();_P.exports={hasLines:wp.hasLines,hasMarkers:wp.hasMarkers,hasText:wp.hasText,isBubble:wp.isBubble,attributes:_i(),layoutAttributes:Wh(),supplyDefaults:ND(),crossTraceDefaults:HD(),supplyLayoutDefaults:BD(),calc:qx().calc,crossTraceCalc:vE(),arraysToCalcdata:wx(),plot:kE(),colorbar:up(),formatLabels:CE(),style:Fx().style,styleOnSelect:Fx().styleOnSelect,hoverPoints:zE(),selectPoints:IE(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:gl(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var AP=B((Txe,MP)=>{"use strict";var gse=kr(),xse=xr(),TP=W3(),Vx=Pe(),bse=Vx.strScale,_se=Vx.strRotate,wse=Vx.strTranslate;MP.exports=function(r,t,a){var n=r.node(),i=TP[a.arrowhead||0],l=TP[a.startarrowhead||0],o=(a.arrowwidth||1)*(a.arrowsize||1),s=(a.arrowwidth||1)*(a.startarrowsize||1),u=t.indexOf("start")>=0,f=t.indexOf("end")>=0,c=i.backoff*o+a.standoff,h=l.backoff*s+a.startstandoff,d,p,y,m;if(n.nodeName==="line"){d={x:+r.attr("x1"),y:+r.attr("y1")},p={x:+r.attr("x2"),y:+r.attr("y2")};var b=d.x-p.x,_=d.y-p.y;if(y=Math.atan2(_,b),m=y+Math.PI,c&&h&&c+h>Math.sqrt(b*b+_*_)){H();return}if(c){if(c*c>b*b+_*_){H();return}var w=c*Math.cos(y),x=c*Math.sin(y);p.x+=w,p.y+=x,r.attr({x2:p.x,y2:p.y})}if(h){if(h*h>b*b+_*_){H();return}var M=h*Math.cos(y),k=h*Math.sin(y);d.x-=M,d.y-=k,r.attr({x1:d.x,y1:d.y})}}else if(n.nodeName==="path"){var A=n.getTotalLength(),C="";if(A{"use strict";var kP=kr(),Gx=gr(),Tse=Rt(),oo=Pe(),Ux=oo.strTranslate,Xv=Zr(),qs=xr(),xl=Yr(),qP=xi(),Wx=va(),Xx=Kl(),Wv=yi(),Mse=lt().arrayEditor,Ase=AP();LP.exports={draw:kse,drawOne:SP,drawRaw:CP};function kse(e){var r=e._fullLayout;r._infolayer.selectAll(".annotation").remove();for(var t=0;t2/3?De="right":De="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[De]}for(var xe=!1,U=["x","y"],Q=0;Q1)&&(Te===ge?(Re=ye.r2fraction(r["a"+X]),(Re<0||Re>1)&&(xe=!0)):xe=!0),He=ye._offset+ye.r2p(r[X]),_e=.5}else{var Ae=hr==="domain";X==="x"?(ie=r[X],He=Ae?ye._offset+ye._length*ie:He=o.l+o.w*ie):(ie=1-r[X],He=Ae?ye._offset+ye._length*ie:He=o.t+o.h*ie),_e=r.showarrow?.5:ie}if(r.showarrow){Le.head=He;var Se=r["a"+X];if($e=Ie*ce(.5,r.xanchor)-Ee*ce(.5,r.yanchor),Te===ge){var Oe=Xv.getRefType(Te);Oe==="domain"?(X==="y"&&(Se=1-Se),Le.tail=ye._offset+ye._length*Se):Oe==="paper"?X==="y"?(Se=1-Se,Le.tail=o.t+o.h*Se):Le.tail=o.l+o.w*Se:Le.tail=ye._offset+ye.r2p(Se),Ye=$e}else Le.tail=He+Se,Ye=$e+Se;Le.text=Le.tail+$e;var Je=l[X==="x"?"width":"height"];if(ge==="paper"&&(Le.head=oo.constrain(Le.head,1,Je-1)),Te==="pixel"){var We=-Math.max(Le.tail-3,Le.text),Xe=Math.min(Le.tail+3,Le.text)-Je;We>0?(Le.tail+=We,Le.text+=We):Xe>0&&(Le.tail-=Xe,Le.text-=Xe)}Le.tail+=Ue,Le.head+=Ue}else $e=Fe*ce(_e,Be),Ye=$e,Le.text=He+$e;Le.text+=Ue,$e+=Ue,Ye+=Ue,r["_"+X+"padplus"]=Fe/2+Ye,r["_"+X+"padminus"]=Fe/2-Ye,r["_"+X+"size"]=Fe,r["_"+X+"shift"]=$e}if(xe){A.remove();return}var lr=0,tr=0;if(r.align!=="left"&&(lr=(j-ue)*(r.align==="center"?.5:1)),r.valign!=="top"&&(tr=(qe-ve)*(r.valign==="middle"?.5:1)),ee)J.select("svg").attr({x:E+lr-1,y:E+tr}).call(xl.setClipUrl,N?y:null,e);else{var Ke=E+tr-le.top,Ne=E+lr-le.left;W.call(Wx.positionText,Ne,Ke).call(xl.setClipUrl,N?y:null,e)}I.select("rect").call(xl.setRect,E,E,j,qe),R.call(xl.setRect,C/2,C/2,fe-C,be-C),A.call(xl.setTranslate,Math.round(m.x.text-fe/2),Math.round(m.y.text-be/2)),w.attr({transform:"rotate("+b+","+m.x.text+","+m.y.text+")"});var ne=function(Ce,De){_.selectAll(".annotation-arrow-g").remove();var ar=m.x.head,cr=m.y.head,sr=m.x.tail+Ce,Ar=m.y.tail+De,Br=m.x.text+Ce,et=m.y.text+De,ut=oo.rotationXYMatrix(b,Br,et),kt=oo.apply2DTransform(ut),_t=oo.apply2DTransform2(ut),Ht=+R.attr("width"),ra=+R.attr("height"),Ia=Br-.5*Ht,ma=Ia+Ht,ya=et-.5*ra,vr=ya+ra,ft=[[Ia,ya,Ia,vr],[Ia,vr,ma,vr],[ma,vr,ma,ya],[ma,ya,Ia,ya]].map(_t);if(!ft.reduce(function(qt,xa){return qt^!!oo.segmentsIntersect(ar,cr,ar+1e6,cr+1e6,xa[0],xa[1],xa[2],xa[3])},!1)){ft.forEach(function(qt){var xa=oo.segmentsIntersect(sr,Ar,ar,cr,qt[0],qt[1],qt[2],qt[3]);xa&&(sr=xa.x,Ar=xa.y)});var $r=r.arrowwidth,dt=r.arrowcolor,Et=r.arrowside,Mt=_.append("g").style({opacity:qs.opacity(dt)}).classed("annotation-arrow-g",!0),jr=Mt.append("path").attr("d","M"+sr+","+Ar+"L"+ar+","+cr).style("stroke-width",$r+"px").call(qs.stroke,qs.rgb(dt));if(Ase(jr,Et,r),s.annotationPosition&&jr.node().parentNode&&!a){var ga=ar,Dn=cr;if(r.standoff){var ta=Math.sqrt(Math.pow(ar-sr,2)+Math.pow(cr-Ar,2));ga+=r.standoff*(sr-ar)/ta,Dn+=r.standoff*(Ar-cr)/ta}var Ri=Mt.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(sr-ga)+","+(Ar-Dn),transform:Ux(ga,Dn)}).style("stroke-width",$r+6+"px").call(qs.stroke,"rgba(0,0,0,0)").call(qs.fill,"rgba(0,0,0,0)"),En,Pt;Wv.init({element:Ri.node(),gd:e,prepFn:function(){var qt=xl.getTranslate(A);En=qt.x,Pt=qt.y,n&&n.autorange&&h(n._name+".autorange",!0),i&&i.autorange&&h(i._name+".autorange",!0)},moveFn:function(qt,xa){var Do=kt(En,Pt),Eo=Do[0]+qt,Ll=Do[1]+xa;A.call(xl.setTranslate,Eo,Ll),d("x",lo(n,qt,"x",o,r)),d("y",lo(i,xa,"y",o,r)),r.axref===r.xref&&d("ax",lo(n,qt,"ax",o,r)),r.ayref===r.yref&&d("ay",lo(i,xa,"ay",o,r)),Mt.attr("transform",Ux(qt,xa)),w.attr({transform:"rotate("+b+","+Eo+","+Ll+")"})},doneFn:function(){Gx.call("_guiRelayout",e,p());var qt=document.querySelector(".js-notes-box-panel");qt&&qt.redraw(qt.selectedObj)}})}}};if(r.showarrow&&ne(0,0),x){var oe;Wv.init({element:A.node(),gd:e,prepFn:function(){oe=w.attr("transform")},moveFn:function(Ce,De){var ar="pointer";if(r.showarrow)r.axref===r.xref?d("ax",lo(n,Ce,"ax",o,r)):d("ax",r.ax+Ce),r.ayref===r.yref?d("ay",lo(i,De,"ay",o.w,r)):d("ay",r.ay+De),ne(Ce,De);else{if(a)return;var cr,sr;if(n)cr=lo(n,Ce,"x",o,r);else{var Ar=r._xsize/o.w,Br=r.x+(r._xshift-r.xshift)/o.w-Ar/2;cr=Wv.align(Br+Ce/o.w,Ar,0,1,r.xanchor)}if(i)sr=lo(i,De,"y",o,r);else{var et=r._ysize/o.h,ut=r.y-(r._yshift+r.yshift)/o.h-et/2;sr=Wv.align(ut-De/o.h,et,0,1,r.yanchor)}d("x",cr),d("y",sr),(!n||!i)&&(ar=Wv.getCursor(n?.5:cr,i?.5:sr,r.xanchor,r.yanchor))}w.attr({transform:Ux(Ce,De)+oe}),Xx(A,ar)},clickFn:function(Ce,De){r.captureevents&&e.emit("plotly_clickannotation",k(De))},doneFn:function(){Xx(A),Gx.call("_guiRelayout",e,p());var Ce=document.querySelector(".js-notes-box-panel");Ce&&Ce.redraw(Ce.selectedObj)}})}}s.annotationText?W.call(Wx.makeEditable,{delegate:A,gd:e}).call(V).on("edit",function(Y){r.text=Y,this.call(V),d("text",Y),n&&n.autorange&&h(n._name+".autorange",!0),i&&i.autorange&&h(i._name+".autorange",!0),Gx.call("_guiRelayout",e,p())}):W.call(V)}});var NP=B((Axe,zP)=>{"use strict";var DP=Pe(),qse=gr(),EP=lt().arrayEditor;zP.exports={hasClickToShow:Sse,onClick:Cse};function Sse(e,r){var t=RP(e,r);return t.on.length>0||t.explicitOff.length>0}function Cse(e,r){var t=RP(e,r),a=t.on,n=t.off.concat(t.explicitOff),i={},l=e._fullLayout.annotations,o,s;if(a.length||n.length){for(o=0;o{"use strict";var Zx=Pe(),wf=xr();FP.exports=function(r,t,a,n){n("opacity");var i=n("bgcolor"),l=n("bordercolor"),o=wf.opacity(l);n("borderpad");var s=n("borderwidth"),u=n("showarrow");n("text",u?" ":a._dfltTitle.annotation),n("textangle"),Zx.coerceFont(n,"font",a.font),n("width"),n("align");var f=n("height");if(f&&n("valign"),u){var c=n("arrowside"),h,d;c.indexOf("end")!==-1&&(h=n("arrowhead"),d=n("arrowsize")),c.indexOf("start")!==-1&&(n("startarrowhead",h),n("startarrowsize",d)),n("arrowcolor",o?t.bordercolor:wf.defaultLine),n("arrowwidth",(o&&s||1)*2),n("standoff"),n("startstandoff")}var p=n("hovertext"),y=a.hoverlabel||{};if(p){var m=n("hoverlabel.bgcolor",y.bgcolor||(wf.opacity(i)?wf.rgb(i):wf.defaultLine)),b=n("hoverlabel.bordercolor",y.bordercolor||wf.contrast(m)),_=Zx.extendFlat({},y.font);_.color||(_.color=b),Zx.coerceFont(n,"hoverlabel.font",_)}n("captureevents",!!p)}});var HP=B((qxe,IP)=>{"use strict";var $x=Pe(),Ss=Zr(),Lse=Bn(),Dse=Jx(),Ese=ff();IP.exports=function(r,t){Lse(r,t,{name:"annotations",handleItemDefaults:Pse})};function Pse(e,r,t){function a(w,x){return $x.coerce(e,r,Ese,w,x)}var n=a("visible"),i=a("clicktoshow");if(n||i){Dse(e,r,t,a);for(var l=r.showarrow,o=["x","y"],s=[-10,-30],u={_fullLayout:t},f=0;f<2;f++){var c=o[f],h=Ss.coerceRef(e,r,u,c,"","paper");if(h!=="paper"){var d=Ss.getFromId(u,h);d._annIndices.push(r._index)}if(Ss.coercePosition(r,u,a,h,c,.5),l){var p="a"+c,y=Ss.coerceRef(e,r,u,p,"pixel",["pixel","paper"]);y!=="pixel"&&y!==h&&(y=r[p]="pixel");var m=y==="pixel"?s[f]:.4;Ss.coercePosition(r,u,a,y,p,m)}a(c+"anchor"),a(c+"shift")}if($x.noneOrAll(e,r,["x","y"]),l&&$x.noneOrAll(e,r,["ax","ay"]),i){var b=a("xclick"),_=a("yclick");r._xclick=b===void 0?r.x:Ss.cleanPosition(b,u,r.xref),r._yclick=_===void 0?r.y:Ss.cleanPosition(_,u,r.yref)}}}});var YP=B((Sxe,BP)=>{"use strict";var Kx=Pe(),Cs=Zr(),Rse=Tp().draw;BP.exports=function(r){var t=r._fullLayout,a=Kx.filterVisible(t.annotations);if(a.length&&r._fullData.length)return Kx.syncOrAsync([Rse,zse],r)};function zse(e){var r=e._fullLayout;Kx.filterVisible(r.annotations).forEach(function(t){var a=Cs.getFromId(e,t.xref),n=Cs.getFromId(e,t.yref),i=Cs.getRefType(t.xref),l=Cs.getRefType(t.yref);t._extremes={},i==="range"&&OP(t,a),l==="range"&&OP(t,n)})}function OP(e,r){var t=r._id,a=t.charAt(0),n=e[a],i=e["a"+a],l=e[a+"ref"],o=e["a"+a+"ref"],s=e["_"+a+"padplus"],u=e["_"+a+"padminus"],f={x:1,y:-1}[a]*e[a+"shift"],c=3*e.arrowsize*e.arrowwidth||0,h=c+f,d=c-f,p=3*e.startarrowsize*e.arrowwidth||0,y=p+f,m=p-f,b;if(o===l){var _=Cs.findExtremes(r,[r.r2c(n)],{ppadplus:h,ppadminus:d}),w=Cs.findExtremes(r,[r.r2c(i)],{ppadplus:Math.max(s,y),ppadminus:Math.max(u,m)});b={min:[_.min[0],w.min[0]],max:[_.max[0],w.max[0]]}}else y=i?y+i:y,m=i?m-i:m,b=Cs.findExtremes(r,[r.r2c(n)],{ppadplus:Math.max(s,h,y),ppadminus:Math.max(u,d,m)});e._extremes[t]=b}});var GP=B((Cxe,VP)=>{"use strict";var Nse=zr(),Fse=mh();VP.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",l=a==="linear"&&t.type==="log";if(!(i||l))return;var o=r._fullLayout.annotations,s=t._id.charAt(0),u,f;function c(d){var p=u[d],y=null;i?y=Fse(p,t.range):y=Math.pow(10,p),Nse(y)||(y=null),n(f+d,y)}for(var h=0;h{"use strict";var Qx=Tp(),UP=NP();WP.exports={moduleType:"component",name:"annotations",layoutAttributes:ff(),supplyLayoutDefaults:HP(),includeBasePlot:kv()("annotations"),calcAutorange:YP(),draw:Qx.draw,drawOne:Qx.drawOne,drawRaw:Qx.drawRaw,hasClickToShow:UP.hasClickToShow,onClick:UP.onClick,convertCoords:GP()}});var Mp=B((Dxe,ZP)=>{"use strict";var ht=ff(),Ise=fi().overrideAll,Hse=lt().templatedArray;ZP.exports=Ise(Hse("annotation",{visible:ht.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:ht.xanchor,xshift:ht.xshift,yanchor:ht.yanchor,yshift:ht.yshift,text:ht.text,textangle:ht.textangle,font:ht.font,width:ht.width,height:ht.height,opacity:ht.opacity,align:ht.align,valign:ht.valign,bgcolor:ht.bgcolor,bordercolor:ht.bordercolor,borderpad:ht.borderpad,borderwidth:ht.borderwidth,showarrow:ht.showarrow,arrowcolor:ht.arrowcolor,arrowhead:ht.arrowhead,startarrowhead:ht.startarrowhead,arrowside:ht.arrowside,arrowsize:ht.arrowsize,startarrowsize:ht.startarrowsize,arrowwidth:ht.arrowwidth,standoff:ht.standoff,startstandoff:ht.startstandoff,hovertext:ht.hovertext,hoverlabel:ht.hoverlabel,captureevents:ht.captureevents}),"calc","from-root")});var $P=B((Exe,JP)=>{"use strict";var jx=Pe(),Ose=Zr(),Bse=Bn(),Yse=Jx(),Vse=Mp();JP.exports=function(r,t,a){Bse(r,t,{name:"annotations",handleItemDefaults:Gse,fullLayout:a.fullLayout})};function Gse(e,r,t,a){function n(o,s){return jx.coerce(e,r,Vse,o,s)}function i(o){var s=o+"axis",u={_fullLayout:{}};return u._fullLayout[s]=t[s],Ose.coercePosition(r,u,n,o,o,.5)}var l=n("visible");l&&(Yse(e,r,a.fullLayout,n),i("x"),i("y"),i("z"),jx.noneOrAll(e,r,["x","y","z"]),r.xref="x",r.yref="y",r.zref="z",n("xanchor"),n("yanchor"),n("xshift"),n("yshift"),r.showarrow&&(r.axref="pixel",r.ayref="pixel",n("ax",-10),n("ay",-30),jx.noneOrAll(e,r,["ax","ay"])))}});var eR=B((Pxe,jP)=>{"use strict";var KP=Pe(),QP=Zr();jP.exports=function(r){for(var t=r.fullSceneLayout,a=t.annotations,n=0;n{"use strict";function e5(e,r){var t=[0,0,0,0],a,n;for(a=0;a<4;++a)for(n=0;n<4;++n)t[n]+=e[4*a+n]*r[a];return t}function Wse(e,r){var t=e5(e.projection,e5(e.view,e5(e.model,[r[0],r[1],r[2],1])));return t}rR.exports=Wse});var nR=B((zxe,aR)=>{"use strict";var Xse=Tp().drawRaw,Zse=tR(),Jse=["x","y","z"];aR.exports=function(r){for(var t=r.fullSceneLayout,a=r.dataScale,n=t.annotations,i=0;i1){o=!0;break}}o?r.fullLayout._infolayer.select(".annotation-"+r.id+'[data-index="'+i+'"]').remove():(l._pdata=Zse(r.glplot.cameraParams,[t.xaxis.r2l(l.x)*a[0],t.yaxis.r2l(l.y)*a[1],t.zaxis.r2l(l.z)*a[2]]),Xse(r.graphDiv,l,i,r.id,l._xa,l._ya))}}});var oR=B((Nxe,lR)=>{"use strict";var $se=gr(),iR=Pe();lR.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:Mp()}}},layoutAttributes:Mp(),handleDefaults:$P(),includeBasePlot:Kse,convert:eR(),draw:nR()};function Kse(e,r){var t=$se.subplotsRegistry.gl3d;if(t)for(var a=t.attrRegex,n=Object.keys(e),i=0;i{"use strict";var sR=ff(),uR=aa(),fR=_i().line,Qse=ci().dash,ki=mt().extendFlat,jse=lt().templatedArray,Fxe=Av(),Tf=tn(),{shapeTexttemplateAttrs:eue,templatefallbackAttrs:rue}=gn(),tue=Ah();cR.exports=jse("shape",{visible:ki({},Tf.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:ki({},Tf.legend,{editType:"calc+arraydraw"}),legendgroup:ki({},Tf.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:ki({},Tf.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:uR({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:ki({},Tf.legendrank,{editType:"calc+arraydraw"}),legendwidth:ki({},Tf.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:ki({},sR.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:ki({},sR.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:ki({},fR.color,{editType:"arraydraw"}),width:ki({},fR.width,{editType:"calc+arraydraw"}),dash:ki({},Qse,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:eue({},{keys:Object.keys(tue)}),texttemplatefallback:rue({editType:"arraydraw"}),font:uR({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var dR=B((Hxe,hR)=>{"use strict";var Zv=Pe(),Mf=Zr(),aue=Bn(),nue=r5(),vR=eo();hR.exports=function(r,t){aue(r,t,{name:"shapes",handleItemDefaults:lue})};function iue(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}function lue(e,r,t){function a(Y,Z){return Zv.coerce(e,r,nue,Y,Z)}r._isShape=!0;var n=a("visible");if(n){var i=a("showlegend");i&&(a("legend"),a("legendwidth"),a("legendgroup"),a("legendgrouptitle.text"),Zv.coerceFont(a,"legendgrouptitle.font"),a("legendrank"));var l=a("path"),o=l?"path":"rect",s=a("type",o),u=s!=="path";u&&delete r.path,a("editable"),a("layer"),a("opacity"),a("fillcolor"),a("fillrule");var f=a("line.width");f&&(a("line.color"),a("line.dash"));for(var c=a("xsizemode"),h=a("ysizemode"),d=["x","y"],p=0;p<2;p++){var y=d[p],m=y+"anchor",b=y==="x"?c:h,_={_fullLayout:t},w,x,M,k=Mf.coerceRef(e,r,_,y,void 0,"paper"),A=Mf.getRefType(k);if(A==="range"?(w=Mf.getFromId(_,k),w._shapeIndices.push(r._index),M=vR.rangeToShapePosition(w),x=vR.shapePositionToRange(w),(w.type==="category"||w.type==="multicategory")&&(a(y+"0shift"),a(y+"1shift"))):x=M=Zv.identity,u){var C=.25,D=.75,E=y+"0",R=y+"1",N=e[E],I=e[R];e[E]=x(e[E],!0),e[R]=x(e[R],!0),b==="pixel"?(a(E,0),a(R,10)):(Mf.coercePosition(r,_,a,k,E,C),Mf.coercePosition(r,_,a,k,R,D)),r[E]=M(r[E]),r[R]=M(r[R]),e[E]=N,e[R]=I}if(b==="pixel"){var H=e[m];e[m]=x(e[m],!0),Mf.coercePosition(r,_,a,k,m,.25),r[m]=M(r[m]),e[m]=H}}u&&Zv.noneOrAll(e,r,["x0","x1","y0","y1"]);var G=s==="line",W,V;if(u&&(W=a("label.texttemplate"),a("label.texttemplatefallback")),W||(V=a("label.text")),V||W){a("label.textangle");var O=a("label.textposition",G?"middle":"middle center");a("label.xanchor"),a("label.yanchor",iue(G,O)),a("label.padding"),Zv.coerceFont(a,"label.font",t.font)}}}});var yR=B((Oxe,mR)=>{"use strict";var oue=xr(),pR=Pe();function sue(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}mR.exports=function(r,t,a){a("newshape.visible"),a("newshape.name"),a("newshape.showlegend"),a("newshape.legend"),a("newshape.legendwidth"),a("newshape.legendgroup"),a("newshape.legendgrouptitle.text"),pR.coerceFont(a,"newshape.legendgrouptitle.font"),a("newshape.legendrank"),a("newshape.drawdirection"),a("newshape.layer"),a("newshape.fillcolor"),a("newshape.fillrule"),a("newshape.opacity");var n=a("newshape.line.width");if(n){var i=(r||{}).plot_bgcolor||"#FFF";a("newshape.line.color",oue.contrast(i)),a("newshape.line.dash")}var l=r.dragmode==="drawline",o=a("newshape.label.text"),s=a("newshape.label.texttemplate");if(a("newshape.label.texttemplatefallback"),o||s){a("newshape.label.textangle");var u=a("newshape.label.textposition",l?"middle":"middle center");a("newshape.label.xanchor"),a("newshape.label.yanchor",sue(l,u)),a("newshape.label.padding"),pR.coerceFont(a,"newshape.label.font",t.font)}a("activeshape.fillcolor"),a("activeshape.opacity")}});var wR=B((Bxe,_R)=>{"use strict";var t5=Pe(),Af=Zr(),kf=lv(),xR=eo();_R.exports=function(r){var t=r._fullLayout,a=t5.filterVisible(t.shapes);if(!(!a.length||!r._fullData.length))for(var n=0;n0?u+l:l;return{ppad:l,ppadplus:o?c:h,ppadminus:o?h:c}}else return{ppad:l}}function gR(e,r,t){var a=e._id.charAt(0)==="x"?"x":"y",n=e.type==="category"||e.type==="multicategory",i,l,o=0,s=0,u=n?e.r2c:e.d2c,f=r[a+"sizemode"]==="scaled";if(f?(i=r[a+"0"],l=r[a+"1"],n&&(o=r[a+"0shift"],s=r[a+"1shift"])):(i=r[a+"anchor"],l=r[a+"anchor"]),i!==void 0)return[u(i)+o,u(l)+s];if(r.path){var c=1/0,h=-1/0,d=r.path.match(kf.segmentRE),p,y,m,b,_;for(e.type==="date"&&(u=xR.decodeDate(u)),p=0;ph&&(h=_)));if(h>=c)return[c,h]}}});var AR=B((Yxe,MR)=>{"use strict";var TR=h1();MR.exports={moduleType:"component",name:"shapes",layoutAttributes:r5(),supplyLayoutDefaults:dR(),supplyDrawNewShapeDefaults:yR(),includeBasePlot:kv()("shapes"),calcAutorange:wR(),draw:TR.draw,drawOne:TR.drawOne}});var a5=B((Gxe,qR)=>{"use strict";var kR=Ma(),cue=lt().templatedArray,Vxe=Av();qR.exports=cue("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",kR.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",kR.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var CR=B((Uxe,SR)=>{"use strict";var vue=Pe(),n5=Zr(),hue=Bn(),due=a5(),pue="images";SR.exports=function(r,t){var a={name:pue,handleItemDefaults:mue};hue(r,t,a)};function mue(e,r,t){function a(h,d){return vue.coerce(e,r,due,h,d)}var n=a("source"),i=a("visible",!!n);if(!i)return r;a("layer"),a("xanchor"),a("yanchor"),a("sizex"),a("sizey"),a("sizing"),a("opacity");for(var l={_fullLayout:t},o=["x","y"],s=0;s<2;s++){var u=o[s],f=n5.coerceRef(e,r,l,u,"paper",void 0);if(f!=="paper"){var c=n5.getFromId(l,f);c._imgIndices.push(r._index)}n5.coercePosition(r,l,a,f,u,0)}return r}});var PR=B((Wxe,ER)=>{"use strict";var LR=kr(),yue=Yr(),qf=Zr(),DR=Ut(),gue=jo();ER.exports=function(r){var t=r._fullLayout,a=[],n={},i=[],l,o;for(o=0;o{"use strict";var RR=zr(),xue=mh();zR.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",l=a==="linear"&&t.type==="log";if(i||l){for(var o=r._fullLayout.images,s=t._id.charAt(0),u,f,c=0;c{"use strict";FR.exports={moduleType:"component",name:"images",layoutAttributes:a5(),supplyLayoutDefaults:CR(),includeBasePlot:kv()("images"),draw:PR(),convertCoords:NR()}});var Ap=B((Jxe,HR)=>{"use strict";HR.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var i5=B(($xe,BR)=>{"use strict";var bue=aa(),_ue=Fn(),wue=mt().extendFlat,Tue=fi().overrideAll,Mue=kh(),OR=lt().templatedArray,Aue=OR("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});BR.exports=Tue(OR("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:Aue,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:wue(Mue({editType:"arraydraw"}),{}),font:bue({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:_ue.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var UR=B((Kxe,GR)=>{"use strict";var kp=Pe(),YR=Bn(),VR=i5(),kue=Ap(),que=kue.name,Sue=VR.buttons;GR.exports=function(r,t){var a={name:que,handleItemDefaults:Cue};YR(r,t,a)};function Cue(e,r,t){function a(l,o){return kp.coerce(e,r,VR,l,o)}var n=YR(e,r,{name:"buttons",handleItemDefaults:Lue}),i=a("visible",n.length>0);i&&(a("active"),a("direction"),a("type"),a("showactive"),a("x"),a("y"),kp.noneOrAll(e,r,["x","y"]),a("xanchor"),a("yanchor"),a("pad.t"),a("pad.r"),a("pad.b"),a("pad.l"),kp.coerceFont(a,"font",t.font),a("bgcolor",t.paper_bgcolor),a("bordercolor"),a("borderwidth"))}function Lue(e,r){function t(n,i){return kp.coerce(e,r,Sue,n,i)}var a=t("visible",e.method==="skip"||Array.isArray(e.args));a&&(t("method"),t("args"),t("args2"),t("label"),t("execute"))}});var ZR=B((Qxe,XR)=>{"use strict";XR.exports=At;var qi=kr(),WR=xr(),Sf=Yr(),qp=Pe();function At(e,r,t){this.gd=e,this.container=r,this.id=t,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}At.barWidth=2;At.barLength=20;At.barRadius=2;At.barPad=1;At.barColor="#808BA4";At.prototype.enable=function(r,t,a){var n=this.gd._fullLayout,i=n.width,l=n.height;this.position=r;var o=this.position.l,s=this.position.w,u=this.position.t,f=this.position.h,c=this.position.direction,h=c==="down",d=c==="left",p=c==="right",y=c==="up",m=s,b=f,_,w,x,M;!h&&!d&&!p&&!y&&(this.position.direction="down",h=!0);var k=h||y;k?(_=o,w=_+m,h?(x=u,M=Math.min(x+b,l),b=M-x):(M=u+b,x=Math.max(M-b,0),b=M-x)):(x=u,M=x+b,d?(w=o+m,_=Math.max(w-m,0),m=w-_):(_=o,w=Math.min(_+m,i),m=w-_)),this._box={l:_,t:x,w:m,h:b};var A=s>m,C=At.barLength+2*At.barPad,D=At.barWidth+2*At.barPad,E=o,R=u+f;R+D>l&&(R=l-D);var N=this.container.selectAll("rect.scrollbar-horizontal").data(A?[0]:[]);N.exit().on(".drag",null).remove(),N.enter().append("rect").classed("scrollbar-horizontal",!0).call(WR.fill,At.barColor),A?(this.hbar=N.attr({rx:At.barRadius,ry:At.barRadius,x:E,y:R,width:C,height:D}),this._hbarXMin=E+C/2,this._hbarTranslateMax=m-C):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var I=f>b,H=At.barWidth+2*At.barPad,G=At.barLength+2*At.barPad,W=o+s,V=u;W+H>i&&(W=i-H);var O=this.container.selectAll("rect.scrollbar-vertical").data(I?[0]:[]);O.exit().on(".drag",null).remove(),O.enter().append("rect").classed("scrollbar-vertical",!0).call(WR.fill,At.barColor),I?(this.vbar=O.attr({rx:At.barRadius,ry:At.barRadius,x:W,y:V,width:H,height:G}),this._vbarYMin=V+G/2,this._vbarTranslateMax=b-G):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var Y=this.id,Z=_-.5,J=I?w+H+.5:w+.5,ee=x-.5,le=A?M+D+.5:M+.5,ue=n._topdefs.selectAll("#"+Y).data(A||I?[0]:[]);if(ue.exit().remove(),ue.enter().append("clipPath").attr("id",Y).append("rect"),A||I?(this._clipRect=ue.select("rect").attr({x:Math.floor(Z),y:Math.floor(ee),width:Math.ceil(J)-Math.floor(Z),height:Math.ceil(le)-Math.floor(ee)}),this.container.call(Sf.setClipUrl,Y,this.gd),this.bg.attr({x:o,y:u,width:s,height:f})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Sf.setClipUrl,null),delete this._clipRect),A||I){var ve=qi.behavior.drag().on("dragstart",function(){qi.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(ve);var j=qi.behavior.drag().on("dragstart",function(){qi.event.sourceEvent.preventDefault(),qi.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));A&&this.hbar.on(".drag",null).call(j),I&&this.vbar.on(".drag",null).call(j)}this.setTranslate(t,a)};At.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Sf.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};At.prototype._onBoxDrag=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r-=qi.event.dx),this.vbar&&(t-=qi.event.dy),this.setTranslate(r,t)};At.prototype._onBoxWheel=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r+=qi.event.deltaY),this.vbar&&(t+=qi.event.deltaY),this.setTranslate(r,t)};At.prototype._onBarDrag=function(){var r=this.translateX,t=this.translateY;if(this.hbar){var a=r+this._hbarXMin,n=a+this._hbarTranslateMax,i=qp.constrain(qi.event.x,a,n),l=(i-a)/(n-a),o=this.position.w-this._box.w;r=l*o}if(this.vbar){var s=t+this._vbarYMin,u=s+this._vbarTranslateMax,f=qp.constrain(qi.event.y,s,u),c=(f-s)/(u-s),h=this.position.h-this._box.h;t=c*h}this.setTranslate(r,t)};At.prototype.setTranslate=function(r,t){var a=this.position.w-this._box.w,n=this.position.h-this._box.h;if(r=qp.constrain(r||0,0,a),t=qp.constrain(t||0,0,n),this.translateX=r,this.translateY=t,this.container.call(Sf.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-t),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+t-.5)}),this.hbar){var i=r/a;this.hbar.call(Sf.setTranslate,r+i*this._hbarTranslateMax,t)}if(this.vbar){var l=t/n;this.vbar.call(Sf.setTranslate,r,t+l*this._vbarTranslateMax)}}});var nz=B((jxe,az)=>{"use strict";var Cf=kr(),Jv=Rt(),$v=xr(),Lf=Yr(),Cn=Pe(),Sp=va(),Due=lt().arrayEditor,$R=Ea().LINE_SPACING,wr=Ap(),Eue=ZR();az.exports=function(r){var t=r._fullLayout,a=Cn.filterVisible(t[wr.name]);function n(h){Jv.autoMargin(r,rz(h))}var i=t._menulayer.selectAll("g."+wr.containerClassName).data(a.length>0?[0]:[]);if(i.enter().append("g").classed(wr.containerClassName,!0).style("cursor","pointer"),i.exit().each(function(){Cf.select(this).selectAll("g."+wr.headerGroupClassName).each(n)}).remove(),a.length!==0){var l=i.selectAll("g."+wr.headerGroupClassName).data(a,Pue);l.enter().append("g").classed(wr.headerGroupClassName,!0);for(var o=Cn.ensureSingle(i,"g",wr.dropdownButtonGroupClassName,function(h){h.style("pointer-events","all")}),s=0;s{"use strict";var Oue=Ap();iz.exports={moduleType:"component",name:Oue.name,layoutAttributes:i5(),supplyLayoutDefaults:UR(),draw:nz()}});var Qv=B((r5e,oz)=>{"use strict";oz.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var u5=B((t5e,fz)=>{"use strict";var sz=aa(),Bue=kh(),Yue=mt().extendDeepAll,Vue=fi().overrideAll,Gue=Cc(),uz=lt().templatedArray,Ls=Qv(),Uue=uz("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});fz.exports=Vue(uz("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:Uue,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:Yue(Bue({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:Gue.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:sz({})},font:sz({}),activebgcolor:{valType:"color",dflt:Ls.gripBgActiveColor},bgcolor:{valType:"color",dflt:Ls.railBgColor},bordercolor:{valType:"color",dflt:Ls.railBorderColor},borderwidth:{valType:"number",min:0,dflt:Ls.railBorderWidth},ticklen:{valType:"number",min:0,dflt:Ls.tickLength},tickcolor:{valType:"color",dflt:Ls.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:Ls.minorTickLength}}),"arraydraw","from-root")});var dz=B((a5e,hz)=>{"use strict";var Df=Pe(),cz=Bn(),vz=u5(),Wue=Qv(),Xue=Wue.name,Zue=vz.steps;hz.exports=function(r,t){cz(r,t,{name:Xue,handleItemDefaults:Jue})};function Jue(e,r,t){function a(c,h){return Df.coerce(e,r,vz,c,h)}for(var n=cz(e,r,{name:"steps",handleItemDefaults:$ue}),i=0,l=0;l{"use strict";var Si=kr(),Cp=Rt(),so=xr(),Ci=Yr(),Ln=Pe(),Kue=Ln.strTranslate,jv=va(),Que=lt().arrayEditor,Pr=Qv(),v5=Ea(),yz=v5.LINE_SPACING,f5=v5.FROM_TL,c5=v5.FROM_BR;Tz.exports=function(r){var t=r._context.staticPlot,a=r._fullLayout,n=jue(a,r),i=a._infolayer.selectAll("g."+Pr.containerClassName).data(n.length>0?[0]:[]);i.enter().append("g").classed(Pr.containerClassName,!0).style("cursor",t?null:"ew-resize");function l(f){f._commandObserver&&(f._commandObserver.remove(),delete f._commandObserver),Cp.autoMargin(r,gz(f))}if(i.exit().each(function(){Si.select(this).selectAll("g."+Pr.groupClassName).each(l)}).remove(),n.length!==0){var o=i.selectAll("g."+Pr.groupClassName).data(n,efe);o.enter().append("g").classed(Pr.groupClassName,!0),o.exit().each(l).remove();for(var s=0;s0&&(o=o.transition().duration(r.transition.duration).ease(r.transition.easing)),o.attr("transform",Kue(l-Pr.gripWidth*.5,r._dims.currentValueTotalHeight))}}function h5(e,r){var t=e._dims;return t.inputAreaStart+Pr.stepInset+(t.inputAreaLength-2*Pr.stepInset)*Math.min(1,Math.max(0,r))}function mz(e,r){var t=e._dims;return Math.min(1,Math.max(0,(r-Pr.stepInset-t.inputAreaStart)/(t.inputAreaLength-2*Pr.stepInset-2*t.inputAreaStart)))}function ofe(e,r,t){var a=t._dims,n=Ln.ensureSingle(e,"rect",Pr.railTouchRectClass,function(i){i.call(_z,r,e,t).style("pointer-events","all")});n.attr({width:a.inputAreaLength,height:Math.max(a.inputAreaWidth,Pr.tickOffset+t.ticklen+a.labelHeight)}).call(so.fill,t.bgcolor).attr("opacity",0),Ci.setTranslate(n,0,a.currentValueTotalHeight)}function sfe(e,r){var t=r._dims,a=t.inputAreaLength-Pr.railInset*2,n=Ln.ensureSingle(e,"rect",Pr.railRectClass);n.attr({width:a,height:Pr.railWidth,rx:Pr.railRadius,ry:Pr.railRadius,"shape-rendering":"crispEdges"}).call(so.stroke,r.bordercolor).call(so.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px"),Ci.setTranslate(n,Pr.railInset,(t.inputAreaWidth-Pr.railWidth)*.5+t.currentValueTotalHeight)}});var kz=B((i5e,Az)=>{"use strict";var ufe=Qv();Az.exports={moduleType:"component",name:ufe.name,layoutAttributes:u5(),supplyLayoutDefaults:dz(),draw:Mz()}});var Dp=B((l5e,Sz)=>{"use strict";var qz=Fn();Sz.exports={bgcolor:{valType:"color",dflt:qz.background,editType:"plot"},bordercolor:{valType:"color",dflt:qz.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var d5=B((o5e,Cz)=>{"use strict";Cz.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var Ep=B((s5e,Lz)=>{"use strict";Lz.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var Pz=B(Rp=>{"use strict";var ffe=Ut(),cfe=va(),Dz=Ep(),vfe=Ea().LINE_SPACING,Pp=Dz.name;function Ez(e){var r=e&&e[Pp];return r&&r.visible}Rp.isVisible=Ez;Rp.makeData=function(e){for(var r=ffe.list({_fullLayout:e},"x",!0),t=e.margin,a=[],n=0;n{"use strict";var zp=Pe(),Rz=lt(),zz=Ut(),hfe=Dp(),dfe=d5();Nz.exports=function(r,t,a){var n=r[a],i=t[a];if(!(n.rangeslider||t._requestRangeslider[i._id]))return;zp.isPlainObject(n.rangeslider)||(n.rangeslider={});var l=n.rangeslider,o=Rz.newContainer(i,"rangeslider");function s(M,k){return zp.coerce(l,o,hfe,M,k)}var u,f;function c(M,k){return zp.coerce(u,f,dfe,M,k)}var h=s("visible");if(h){s("bgcolor",t.plot_bgcolor),s("bordercolor"),s("borderwidth"),s("thickness"),s("autorange",!i.isValidRange(l.range)),s("range");var d=t._subplots;if(d)for(var p=d.cartesian.filter(function(M){return M.slice(0,Math.max(0,M.indexOf("y")))===zz.name2id(a)}).map(function(M){return M.slice(M.indexOf("y"),M.length)}),y=zp.simpleMap(p,zz.id2name),m=0;m{"use strict";var pfe=Ut().list,mfe=Zc().getAutoRange,yfe=Ep();Iz.exports=function(r){for(var t=pfe(r,"x",!0),a=0;a{"use strict";var Np=kr(),gfe=gr(),xfe=Rt(),Ft=Pe(),Fp=Ft.strTranslate,Bz=Yr(),uo=xr(),bfe=Wc(),_fe=gl(),p5=Ut(),wfe=yi(),Tfe=Kl(),Hr=Ep();Yz.exports=function(e){for(var r=e._fullLayout,t=r._rangeSliderData,a=0;a=O.max)W=R[V+1];else if(G=O.pmax)W=R[V+1];else if(G0?e.touches[0].clientX:0}function Mfe(e,r,t,a){if(r._context.staticPlot)return;var n=e.select("rect."+Hr.slideBoxClassName).node(),i=e.select("rect."+Hr.grabAreaMinClassName).node(),l=e.select("rect."+Hr.grabAreaMaxClassName).node();function o(){var s=Np.event,u=s.target,f=Oz(s),c=f-e.node().getBoundingClientRect().left,h=a.d2p(t._rl[0]),d=a.d2p(t._rl[1]),p=wfe.coverSlip();this.addEventListener("touchmove",y),this.addEventListener("touchend",m),p.addEventListener("mousemove",y),p.addEventListener("mouseup",m);function y(b){var _=Oz(b),w=+_-f,x,M,k;switch(u){case n:if(k="ew-resize",h+w>t._length||d+w<0)return;x=h+w,M=d+w;break;case i:if(k="col-resize",h+w>t._length)return;x=h+w,M=d;break;case l:if(k="col-resize",d+w<0)return;x=h,M=d+w;break;default:k="ew-resize",x=c,M=c+w;break}if(M{"use strict";var Rfe=Pe(),zfe=Dp(),Nfe=d5(),m5=Pz();Gz.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:Rfe.extendFlat({},zfe,{yaxis:Nfe})}}},layoutAttributes:Dp(),handleDefaults:Fz(),calcAutorange:Hz(),draw:Vz(),isVisible:m5.isVisible,makeData:m5.makeData,autoMarginOpts:m5.autoMarginOpts}});var Ip=B((d5e,Xz)=>{"use strict";var Ffe=aa(),Wz=Fn(),Ife=lt().templatedArray,Hfe=Ife("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});Xz.exports={visible:{valType:"boolean",editType:"plot"},buttons:Hfe,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:Ffe({editType:"plot"}),bgcolor:{valType:"color",dflt:Wz.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:Wz.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var y5=B((p5e,Zz)=>{"use strict";Zz.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var Kz=B((m5e,$z)=>{"use strict";var Hp=Pe(),Ofe=xr(),Bfe=lt(),Yfe=Bn(),Jz=Ip(),g5=y5();$z.exports=function(r,t,a,n,i){var l=r.rangeselector||{},o=Bfe.newContainer(t,"rangeselector");function s(d,p){return Hp.coerce(l,o,Jz,d,p)}var u=Yfe(l,o,{name:"buttons",handleItemDefaults:Vfe,calendar:i}),f=s("visible",u.length>0);if(f){var c=Gfe(t,a,n);s("x",c[0]),s("y",c[1]),Hp.noneOrAll(r,t,["x","y"]),s("xanchor"),s("yanchor"),Hp.coerceFont(s,"font",a.font);var h=s("bgcolor");s("activecolor",Ofe.contrast(h,g5.lightAmount,g5.darkAmount)),s("bordercolor"),s("borderwidth")}};function Vfe(e,r,t,a){var n=a.calendar;function i(s,u){return Hp.coerce(e,r,Jz.buttons,s,u)}var l=i("visible");if(l){var o=i("step");o!=="all"&&(n&&n!=="gregorian"&&(o==="month"||o==="year")?r.stepmode="backward":i("stepmode"),i("count")),i("label")}}function Gfe(e,r,t){for(var a=t.filter(function(o){return r[o].anchor===e._id}),n=0,i=0;i{"use strict";var Ufe=Sy(),Wfe=Pe().titleCase;Qz.exports=function(r,t){var a=r._name,n={};if(t.step==="all")n[a+".autorange"]=!0;else{var i=Xfe(r,t);n[a+".range[0]"]=i[0],n[a+".range[1]"]=i[1]}return n};function Xfe(e,r){var t=e.range,a=new Date(e.r2l(t[1])),n=r.step,i=Ufe["utc"+Wfe(n)],l=r.count,o;switch(r.stepmode){case"backward":o=e.l2r(+i.offset(a,-l));break;case"todate":var s=i.offset(a,-l);o=e.l2r(+i.ceil(s));break}var u=t[1];return[o,u]}});var oN=B((g5e,lN)=>{"use strict";var Bp=kr(),Zfe=gr(),Jfe=Rt(),eN=xr(),iN=Yr(),bl=Pe(),rN=bl.strTranslate,Op=va(),$fe=Ut(),_5=Ea(),tN=_5.LINE_SPACING,aN=_5.FROM_TL,nN=_5.FROM_BR,b5=y5(),Kfe=jz();lN.exports=function(r){var t=r._fullLayout,a=t._infolayer.selectAll(".rangeselector").data(Qfe(r),jfe);a.enter().append("g").classed("rangeselector",!0),a.exit().remove(),a.style({cursor:"pointer","pointer-events":"all"}),a.each(function(n){var i=Bp.select(this),l=n,o=l.rangeselector,s=i.selectAll("g.button").data(bl.filterVisible(o.buttons));s.enter().append("g").classed("button",!0),s.exit().remove(),s.each(function(u){var f=Bp.select(this),c=Kfe(l,u);u._isActive=ece(l,u,c),f.call(x5,o,u),f.call(tce,o,u,r),f.on("click",function(){r._dragged||Zfe.call("_guiRelayout",r,c)}),f.on("mouseover",function(){u._isHovered=!0,f.call(x5,o,u)}),f.on("mouseout",function(){u._isHovered=!1,f.call(x5,o,u)})}),nce(r,s,o,l._name,i)})};function Qfe(e){for(var r=$fe.list(e,"x",!0),t=[],a=0;a{"use strict";sN.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:Ip()}}},layoutAttributes:Ip(),handleDefaults:Kz(),draw:oN()}});var fo=B(w5=>{"use strict";var fN=mt().extendFlat;w5.attributes=function(e,r){e=e||{},r=r||{};var t={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},a=e.name?e.name+" ":"",n=e.trace?"trace ":"subplot ",i=r.description?" "+r.description:"",l={x:fN({},t,{}),y:fN({},t,{}),editType:e.editType};return e.noGridCell||(l.row={valType:"integer",min:0,dflt:0,editType:e.editType},l.column={valType:"integer",min:0,dflt:0,editType:e.editType}),l};w5.defaults=function(e,r,t,a){var n=a&&a.x||[0,1],i=a&&a.y||[0,1],l=r.grid;if(l){var o=t("domain.column");o!==void 0&&(o{"use strict";var ice=Pe(),lce=gu().counter,oce=fo().attributes,cN=Ma().idRegex,sce=lt(),T5={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[lce("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[cN.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[cN.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:oce({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function Yp(e,r,t){var a=r[t+"axes"],n=Object.keys((e._splomAxes||{})[t]||{});if(Array.isArray(a))return a;if(n.length)return n}function uce(e,r){var t=e.grid||{},a=Yp(r,t,"x"),n=Yp(r,t,"y");if(!e.grid&&!a&&!n)return;var i=Array.isArray(t.subplots)&&Array.isArray(t.subplots[0]),l=Array.isArray(a),o=Array.isArray(n),s=l&&a!==t.xaxes&&o&&n!==t.yaxes,u,f;i?(u=t.subplots.length,f=t.subplots[0].length):(o&&(u=n.length),l&&(f=a.length));var c=sce.newContainer(r,"grid");function h(k,A){return ice.coerce(t,c,T5,k,A)}var d=h("rows",u),p=h("columns",f);if(!(d*p>1)){delete r.grid;return}if(!i&&!l&&!o){var y=h("pattern")==="independent";y&&(i=!0)}c._hasSubplotGrid=i;var m=h("roworder"),b=m==="top to bottom",_=i?.2:.1,w=i?.3:.1,x,M;s&&r._splomGridDflt&&(x=r._splomGridDflt.xside,M=r._splomGridDflt.yside),c._domains={x:vN("x",h,_,x,p),y:vN("y",h,w,M,d,b)}}function vN(e,r,t,a,n,i){var l=r(e+"gap",t),o=r("domain."+e);r(e+"side",a);for(var s=new Array(n),u=o[0],f=(o[1]-u)/(n-l),c=f*(1-l),h=0;h{"use strict";mN.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var xN=B((T5e,gN)=>{"use strict";var yN=zr(),cce=gr(),vce=Pe(),hce=lt(),dce=M5();gN.exports=function(e,r,t,a){var n="error_"+a.axis,i=hce.newContainer(r,n),l=e[n]||{};function o(p,y){return vce.coerce(l,i,dce,p,y)}var s=l.array!==void 0||l.value!==void 0||l.type==="sqrt",u=o("visible",s);if(u!==!1){var f=o("type","array"in l?"data":"percent"),c=!0;f!=="sqrt"&&(c=o("symmetric",!((f==="data"?"arrayminus":"valueminus")in l))),f==="data"?(o("array"),o("traceref"),c||(o("arrayminus"),o("tracerefminus"))):(f==="percent"||f==="constant")&&(o("value"),c||o("valueminus"));var h="copy_"+a.inherit+"style";if(a.inherit){var d=r["error_"+a.inherit];(d||{}).visible&&o(h,!(l.color||yN(l.thickness)||yN(l.width)))}(!a.inherit||!i[h])&&(o("color",t),o("thickness"),o("width",cce.traceIs(r,"gl3d")?0:4))}}});var A5=B((M5e,_N)=>{"use strict";_N.exports=function(r){var t=r.type,a=r.symmetric;if(t==="data"){var n=r.array||[];if(a)return function(u,f){var c=+n[f];return[c,c]};var i=r.arrayminus||[];return function(u,f){var c=+n[f],h=+i[f];return!isNaN(c)||!isNaN(h)?[h||0,c||0]:[NaN,NaN]}}else{var l=bN(t,r.value),o=bN(t,r.valueminus);return a||r.valueminus===void 0?function(u){var f=l(u);return[f,f]}:function(u){return[o(u),l(u)]}}};function bN(e,r){if(e==="percent")return function(t){return Math.abs(t*r/100)};if(e==="constant")return function(){return Math.abs(r)};if(e==="sqrt")return function(t){return Math.sqrt(Math.abs(t))}}});var MN=B((A5e,TN)=>{"use strict";var k5=zr(),pce=gr(),q5=Zr(),mce=Pe(),yce=A5();TN.exports=function(r){for(var t=r.calcdata,a=0;a{"use strict";var AN=kr(),co=zr(),gce=Yr(),xce=wn();kN.exports=function(r,t,a,n){var i,l=a.xaxis,o=a.yaxis,s=n&&n.duration>0,u=r._context.staticPlot;t.each(function(f){var c=f[0].trace,h=c.error_x||{},d=c.error_y||{},p;c.ids&&(p=function(_){return _.id});var y=xce.hasMarkers(c)&&c.marker.maxdisplayed>0;!d.visible&&!h.visible&&(f=[]);var m=AN.select(this).selectAll("g.errorbar").data(f,p);if(m.exit().remove(),!!f.length){h.visible||m.selectAll("path.xerror").remove(),d.visible||m.selectAll("path.yerror").remove(),m.style("opacity",1);var b=m.enter().append("g").classed("errorbar",!0);s&&b.style("opacity",0).transition().duration(n.duration).style("opacity",1),gce.setClipUrl(m,a.layerClipId,r),m.each(function(_){var w=AN.select(this),x=bce(_,l,o);if(!(y&&!_.vis)){var M,k=w.select("path.yerror");if(d.visible&&co(x.x)&&co(x.yh)&&co(x.ys)){var A=d.width;M="M"+(x.x-A)+","+x.yh+"h"+2*A+"m-"+A+",0V"+x.ys,x.noYS||(M+="m-"+A+",0h"+2*A),i=!k.size(),i?k=w.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("yerror",!0):s&&(k=k.transition().duration(n.duration).ease(n.easing)),k.attr("d",M)}else k.remove();var C=w.select("path.xerror");if(h.visible&&co(x.y)&&co(x.xh)&&co(x.xs)){var D=(h.copy_ystyle?d:h).width;M="M"+x.xh+","+(x.y-D)+"v"+2*D+"m0,-"+D+"H"+x.xs,x.noXS||(M+="m0,-"+D+"v"+2*D),i=!C.size(),i?C=w.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("xerror",!0):s&&(C=C.transition().duration(n.duration).ease(n.easing)),C.attr("d",M)}else C.remove()}})}})};function bce(e,r,t){var a={x:r.c2p(e.x),y:t.c2p(e.y)};return e.yh!==void 0&&(a.yh=t.c2p(e.yh),a.ys=t.c2p(e.ys),co(a.ys)||(a.noYS=!0,a.ys=t.c2p(e.ys,!0))),e.xh!==void 0&&(a.xh=r.c2p(e.xh),a.xs=r.c2p(e.xs),co(a.xs)||(a.noXS=!0,a.xs=r.c2p(e.xs,!0))),a}});var LN=B((q5e,CN)=>{"use strict";var _ce=kr(),SN=xr();CN.exports=function(r){r.each(function(t){var a=t[0].trace,n=a.error_y||{},i=a.error_x||{},l=_ce.select(this);l.selectAll("path.yerror").style("stroke-width",n.thickness+"px").call(SN.stroke,n.color),i.copy_ystyle&&(i=n),l.selectAll("path.xerror").style("stroke-width",i.thickness+"px").call(SN.stroke,i.color)})}});var PN=B((S5e,EN)=>{"use strict";var e0=Pe(),DN=fi().overrideAll,r0=M5(),Ds={error_x:e0.extendFlat({},r0),error_y:e0.extendFlat({},r0)};delete Ds.error_x.copy_zstyle;delete Ds.error_y.copy_zstyle;delete Ds.error_y.copy_ystyle;var t0={error_x:e0.extendFlat({},r0),error_y:e0.extendFlat({},r0),error_z:e0.extendFlat({},r0)};delete t0.error_x.copy_ystyle;delete t0.error_y.copy_ystyle;delete t0.error_z.copy_ystyle;delete t0.error_z.copy_zstyle;EN.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Ds,bar:Ds,histogram:Ds,scatter3d:DN(t0,"calc","nested"),scattergl:DN(Ds,"calc","nested")}},supplyDefaults:xN(),calc:MN(),makeComputeError:A5(),plot:qN(),style:LN(),hoverInfo:wce};function wce(e,r,t){(r.error_y||{}).visible&&(t.yerr=e.yh-e.y,r.error_y.symmetric||(t.yerrneg=e.y-e.ys)),(r.error_x||{}).visible&&(t.xerr=e.xh-e.x,r.error_x.symmetric||(t.xerrneg=e.x-e.xs))}});var zN=B((C5e,RN)=>{"use strict";RN.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var YN=B((L5e,BN)=>{"use strict";var vo=kr(),S5=Nn(),Gp=Rt(),NN=gr(),_l=Zr(),Vp=yi(),ri=Pe(),Di=ri.strTranslate,ON=mt().extendFlat,C5=Kl(),Li=Yr(),L5=xr(),Tce=Wc(),Mce=va(),Ace=bn().flipScale,kce=hp(),qce=pp(),Sce=_n(),D5=Ea(),FN=D5.LINE_SPACING,IN=D5.FROM_TL,HN=D5.FROM_BR,Tt=zN().cn;function Cce(e){var r=e._fullLayout,t=r._infolayer.selectAll("g."+Tt.colorbar).data(Lce(e),function(a){return a._id});t.enter().append("g").attr("class",function(a){return a._id}).classed(Tt.colorbar,!0),t.each(function(a){var n=vo.select(this);ri.ensureSingle(n,"rect",Tt.cbbg),ri.ensureSingle(n,"g",Tt.cbfills),ri.ensureSingle(n,"g",Tt.cblines),ri.ensureSingle(n,"g",Tt.cbaxis,function(l){l.classed(Tt.crisp,!0)}),ri.ensureSingle(n,"g",Tt.cbtitleunshift,function(l){l.append("g").classed(Tt.cbtitle,!0)}),ri.ensureSingle(n,"rect",Tt.cboutline);var i=Dce(n,a,e);i&&i.then&&(e._promises||[]).push(i),e._context.edits.colorbarPosition&&Ece(n,a,e)}),t.exit().each(function(a){Gp.autoMargin(e,a._id)}).remove(),t.order()}function Lce(e){var r=e._fullLayout,t=e.calcdata,a=[],n,i,l,o;function s(w){return ON(w,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function u(){typeof o.calc=="function"?o.calc(e,l,n):(n._fillgradient=i.reversescale?Ace(i.colorscale):i.colorscale,n._zrange=[i[o.min],i[o.max]])}for(var f=0;f1){var Q=Math.pow(10,Math.floor(Math.log(U)/Math.LN10));ce*=Q*ri.roundUp(U/Q,[2,5,10]),(Math.abs(N.start)/N.size+1e-6)%1<2e-6&&(fe.tick0=0)}fe.dtick=ce}fe.domain=a?[j+p/x.h,j+Y-p/x.h]:[j+d/x.w,j+Y-d/x.w],fe.setScale(),e.attr("transform",Di(Math.round(x.l),Math.round(x.t)));var X=e.select("."+Tt.cbtitleunshift).attr("transform",Di(-Math.round(x.l),-Math.round(x.t))),ge=fe.ticklabelposition,Te=fe.title.font.size,ye=e.select("."+Tt.cbaxis),ze,Ie=0,Ee=0;function Fe(Ye,ie){var _e={propContainer:fe,propName:r._propPrefix+"title.text",traceIndex:r._traceIndex,_meta:r._meta,placeholder:w._dfltTitle.colorbar,containerGroup:e.select("."+Tt.cbtitle)},$e=Ye.charAt(0)==="h"?Ye.slice(1):"h"+Ye;e.selectAll("."+$e+",."+$e+"-math-group").remove(),Tce.draw(t,Ye,ON(_e,ie||{}))}function Be(){if(a&&be||!a&&!be){var Ye,ie;C==="top"&&(Ye=d+x.l+Z*y,ie=p+x.t+J*(1-j-Y)+3+Te*.75),C==="bottom"&&(Ye=d+x.l+Z*y,ie=p+x.t+J*(1-j)-3-Te*.25),C==="right"&&(ie=p+x.t+J*m+3+Te*.75,Ye=d+x.l+Z*j),Fe(fe._id+"title",{attributes:{x:Ye,y:ie,"text-anchor":a?"start":"middle"}})}}function Ue(){if(a&&!be||!a&&be){var Ye=fe.position||0,ie=fe._offset+fe._length/2,_e,$e;if(C==="right")$e=ie,_e=x.l+Z*Ye+10+Te*(fe.showticklabels?1:.5);else if(_e=ie,C==="bottom"&&($e=x.t+J*Ye+10+(ge.indexOf("inside")===-1?fe.tickfont.size:0)+(fe.ticks!=="inside"&&r.ticklen||0)),C==="top"){var hr=A.text.split("
").length;$e=x.t+J*Ye+10-W-FN*Te*hr}Fe((a?"h":"v")+fe._id+"title",{avoid:{selection:vo.select(t).selectAll("g."+fe._id+"tick"),side:C,offsetTop:a?0:x.t,offsetLeft:a?x.l:0,maxShift:a?w.width:w.height},attributes:{x:_e,y:$e,"text-anchor":"middle"},transform:{rotate:a?-90:0,offset:0}})}}function Le(){if(!a&&!be||a&&be){var Ye=e.select("."+Tt.cbtitle),ie=Ye.select("text"),_e=[-s/2,s/2],$e=Ye.select(".h"+fe._id+"title-math-group").node(),hr=15.6;ie.node()&&(hr=parseInt(ie.node().style.fontSize,10)*FN);var Re;if($e?(Re=Li.bBox($e),Ee=Re.width,Ie=Re.height,Ie>hr&&(_e[1]-=(Ie-hr)/2)):ie.node()&&!ie.classed(Tt.jsPlaceholder)&&(Re=Li.bBox(ie.node()),Ee=Re.width,Ie=Re.height),a){if(Ie){if(Ie+=5,C==="top")fe.domain[1]-=Ie/x.h,_e[1]*=-1;else{fe.domain[0]+=Ie/x.h;var Ae=Mce.lineCount(ie);_e[1]+=(1-Ae)*hr}Ye.attr("transform",Di(_e[0],_e[1])),fe.setScale()}}else Ee&&(C==="right"&&(fe.domain[0]+=(Ee+Te/2)/x.w),Ye.attr("transform",Di(_e[0],_e[1])),fe.setScale())}e.selectAll("."+Tt.cbfills+",."+Tt.cblines).attr("transform",a?Di(0,Math.round(x.h*(1-fe.domain[1]))):Di(Math.round(x.w*fe.domain[0]),0)),ye.attr("transform",a?Di(0,Math.round(-x.t)):Di(Math.round(-x.l),0));var Se=e.select("."+Tt.cbfills).selectAll("rect."+Tt.cbfill).attr("style","").data(H);Se.enter().append("rect").classed(Tt.cbfill,!0).attr("style",""),Se.exit().remove();var Oe=D.map(fe.c2p).map(Math.round).sort(function(tr,Ke){return tr-Ke});Se.each(function(tr,Ke){var Ne=[Ke===0?D[0]:(H[Ke]+H[Ke-1])/2,Ke===H.length-1?D[1]:(H[Ke]+H[Ke+1])/2].map(fe.c2p).map(Math.round);a&&(Ne[1]=ri.constrain(Ne[1]+(Ne[1]>Ne[0])?1:-1,Oe[0],Oe[1]));var ne=vo.select(this).attr(a?"x":"y",ee).attr(a?"y":"x",vo.min(Ne)).attr(a?"width":"height",Math.max(W,2)).attr(a?"height":"width",Math.max(vo.max(Ne)-vo.min(Ne),2));if(r._fillgradient)Li.gradient(ne,t,r._id,a?"vertical":"horizontalreversed",r._fillgradient,"fill");else{var oe=R(tr).replace("e-","");ne.attr("fill",S5(oe).toHexString())}});var Je=e.select("."+Tt.cblines).selectAll("path."+Tt.cbline).data(k.color&&k.width?G:[]);Je.enter().append("path").classed(Tt.cbline,!0),Je.exit().remove(),Je.each(function(tr){var Ke=ee,Ne=Math.round(fe.c2p(tr))+k.width/2%1;vo.select(this).attr("d","M"+(a?Ke+","+Ne:Ne+","+Ke)+(a?"h":"v")+W).call(Li.lineGroupStyle,k.width,E(tr),k.dash)}),ye.selectAll("g."+fe._id+"tick,path").remove();var We=ee+W+(s||0)/2-(r.ticks==="outside"?1:0),Xe=_l.calcTicks(fe),lr=_l.getTickSigns(fe)[2];return _l.drawTicks(t,fe,{vals:fe.ticks==="inside"?_l.clipEnds(fe,Xe):Xe,layer:ye,path:_l.makeTickPath(fe,We,lr),transFn:_l.makeTransTickFn(fe)}),_l.drawLabels(t,fe,{vals:Xe,layer:ye,transFn:_l.makeTransTickLabelFn(fe),labelFns:_l.makeLabelFns(fe,We)})}function He(){var Ye,ie=W+s/2;ge.indexOf("inside")===-1&&(Ye=Li.bBox(ye.node()),ie+=a?Ye.width:Ye.height),ze=X.select("text");var _e=0,$e=a&&C==="top",hr=!a&&C==="right",Re=0;if(ze.node()&&!ze.classed(Tt.jsPlaceholder)){var Ae,Se=X.select(".h"+fe._id+"title-math-group").node();Se&&(a&&be||!a&&!be)?(Ye=Li.bBox(Se),_e=Ye.width,Ae=Ye.height):(Ye=Li.bBox(X.node()),_e=Ye.right-x.l-(a?ee:qe),Ae=Ye.bottom-x.t-(a?qe:ee),!a&&C==="top"&&(ie+=Ye.height,Re=Ye.height)),hr&&(ze.attr("transform",Di(_e/2+Te/2,0)),_e*=2),ie=Math.max(ie,a?_e:Ae)}var Oe=(a?d:p)*2+ie+u+s/2,Je=0;!a&&A.text&&h==="bottom"&&m<=0&&(Je=Oe/2,Oe+=Je,Re+=Je),w._hColorbarMoveTitle=Je,w._hColorbarMoveCBTitle=Re;var We=u+s,Xe=(a?ee:qe)-We/2-(a?d:0),lr=(a?qe:ee)-(a?O:p+Re-Je);e.select("."+Tt.cbbg).attr("x",Xe).attr("y",lr).attr(a?"width":"height",Math.max(Oe-Je,2)).attr(a?"height":"width",Math.max(O+We,2)).call(L5.fill,f).call(L5.stroke,r.bordercolor).style("stroke-width",u);var tr=hr?Math.max(_e-10,0):0;e.selectAll("."+Tt.cboutline).attr("x",(a?ee:qe+d)+tr).attr("y",(a?qe+p-O:ee)+($e?Ie:0)).attr(a?"width":"height",Math.max(W,2)).attr(a?"height":"width",Math.max(O-(a?2*p+Ie:2*d+tr),2)).call(L5.stroke,r.outlinecolor).style({fill:"none","stroke-width":s});var Ke=a?le*Oe:0,Ne=a?0:(1-ue)*Oe-Re;if(Ke=_?x.l-Ke:-Ke,Ne=b?x.t-Ne:-Ne,e.attr("transform",Di(Ke,Ne)),!a&&(u||S5(f).getAlpha()&&!S5.equals(w.paper_bgcolor,f))){var ne=ye.selectAll("text"),oe=ne[0].length,Ce=e.select("."+Tt.cbbg).node(),De=Li.bBox(Ce),ar=Li.getTranslate(e),cr=2;ne.each(function(Ia,ma){var ya=0,vr=oe-1;if(ma===ya||ma===vr){var ft=Li.bBox(this),$r=Li.getTranslate(this),dt;if(ma===vr){var Et=ft.right+$r.x,Mt=De.right+ar.x+qe-u-cr+y;dt=Mt-Et,dt>0&&(dt=0)}else if(ma===ya){var jr=ft.left+$r.x,ga=De.left+ar.x+qe+u+cr;dt=ga-jr,dt<0&&(dt=0)}dt&&(oe<3?this.setAttribute("transform","translate("+dt+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var sr={},Ar=IN[c],Br=HN[c],et=IN[h],ut=HN[h],kt=Oe-W;a?(i==="pixels"?(sr.y=m,sr.t=O*et,sr.b=O*ut):(sr.t=sr.b=0,sr.yt=m+n*et,sr.yb=m-n*ut),o==="pixels"?(sr.x=y,sr.l=Oe*Ar,sr.r=Oe*Br):(sr.l=kt*Ar,sr.r=kt*Br,sr.xl=y-l*Ar,sr.xr=y+l*Br)):(i==="pixels"?(sr.x=y,sr.l=O*Ar,sr.r=O*Br):(sr.l=sr.r=0,sr.xl=y+n*Ar,sr.xr=y-n*Br),o==="pixels"?(sr.y=1-m,sr.t=Oe*et,sr.b=Oe*ut):(sr.t=kt*et,sr.b=kt*ut,sr.yt=m-l*et,sr.yb=m+l*ut));var _t=r.y<.5?"b":"t",Ht=r.x<.5?"l":"r";t._fullLayout._reservedMargin[r._id]={};var ra={r:w.width-Xe-Ke,l:Xe+sr.r,b:w.height-lr-Ne,t:lr+sr.b};_&&b?Gp.autoMargin(t,r._id,sr):_?t._fullLayout._reservedMargin[r._id][_t]=ra[_t]:b||a?t._fullLayout._reservedMargin[r._id][Ht]=ra[Ht]:t._fullLayout._reservedMargin[r._id][_t]=ra[_t]}return ri.syncOrAsync([Gp.previousPromises,Be,Le,Ue,Gp.previousPromises,He],t)}function Ece(e,r,t){var a=r.orientation==="v",n=t._fullLayout,i=n._size,l,o,s;Vp.init({element:e.node(),gd:t,prepFn:function(){l=e.attr("transform"),C5(e)},moveFn:function(u,f){e.attr("transform",l+Di(u,f)),o=Vp.align((a?r._uFrac:r._vFrac)+u/i.w,a?r._thickFrac:r._lenFrac,0,1,r.xanchor),s=Vp.align((a?r._vFrac:1-r._uFrac)-f/i.h,a?r._lenFrac:r._thickFrac,0,1,r.yanchor);var c=Vp.getCursor(o,s,r.xanchor,r.yanchor);C5(e,c)},doneFn:function(){if(C5(e),o!==void 0&&s!==void 0){var u={};u[r._propPrefix+"x"]=o,u[r._propPrefix+"y"]=s,r._traceIndex!==void 0?NN.call("_guiRestyle",t,u,r._traceIndex):NN.call("_guiRelayout",t,u)}}})}function Pce(e,r,t){var a=r._levels,n=[],i=[],l,o,s=a.end+a.size/100,u=a.size,f=1.001*t[0]-.001*t[1],c=1.001*t[1]-.001*t[0];for(o=0;o<1e5&&(l=a.start+o*u,!(u>0?l>=s:l<=s));o++)l>f&&l0?l>=s:l<=s));o++)l>t[0]&&l{"use strict";VN.exports={moduleType:"component",name:"colorbar",attributes:ed(),supplyDefaults:Bg(),draw:YN().draw,hasColorbar:Rg()}});var WN=B((E5e,UN)=>{"use strict";UN.exports={moduleType:"component",name:"legend",layoutAttributes:I2(),supplyLayoutDefaults:O2(),draw:Q2(),style:Z2()}});var ZN=B((P5e,XN)=>{"use strict";XN.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var $N=B((R5e,JN)=>{"use strict";JN.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var P5=B((z5e,eF)=>{"use strict";var zce=gr(),jN=Pe(),E5=jN.extendFlat,KN=jN.extendDeep;function QN(e){var r;switch(e){case"themes__thumb":r={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":r={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:r={}}return r}function Nce(e){var r=["xaxis","yaxis","zaxis"];return r.indexOf(e.slice(0,5))>-1}eF.exports=function(r,t){var a,n=r.data,i=r.layout,l=KN([],n),o=KN({},i,QN(t.tileClass)),s=r._context||{};if(t.width&&(o.width=t.width),t.height&&(o.height=t.height),t.tileClass==="thumbnail"||t.tileClass==="themes__thumb"){o.annotations=[];var u=Object.keys(o);for(a=0;a{"use strict";var Fce=Bh().EventEmitter,Ice=gr(),Hce=Pe(),rF=xs(),Oce=P5(),Bce=K1(),Yce=Q1();function Vce(e,r){var t=new Fce,a=Oce(e,{format:"png"}),n=a.gd;n.style.position="absolute",n.style.left="-5000px",document.body.appendChild(n);function i(){var o=rF.getDelay(n._fullLayout);setTimeout(function(){var s=Bce(n),u=document.createElement("canvas");u.id=Hce.randstr(),t=Yce({format:r.format,width:n._fullLayout.width,height:n._fullLayout.height,canvas:u,emitter:t,svg:s}),t.clean=function(){n&&document.body.removeChild(n)}},o)}var l=rF.getRedrawFunc(n);return Ice.call("_doPlot",n,a.data,a.layout,a.config).then(l).then(i).catch(function(o){t.emit("error",o)}),t}tF.exports=Vce});var lF=B((F5e,iF)=>{"use strict";var nF=xs(),Gce={getDelay:nF.getDelay,getRedrawFunc:nF.getRedrawFunc,clone:P5(),toSVG:K1(),svgToImg:Q1(),toImage:aF(),downloadImage:yx()};iF.exports=Gce});var sF=B(wl=>{"use strict";wl.version=lh().version;Q4();B8();var Uce=gr(),a0=wl.register=Uce.register,z5=cD(),oF=Object.keys(z5);for(Up=0;Up{"use strict";uF.exports=sF()});var Xp=B((O5e,cF)=>{"use strict";cF.exports={TEXTPAD:3,eventDataKeys:["value","label"]}});var Tl=B((B5e,mF)=>{"use strict";var Lt=_i(),vF=pi().axisHoverFormat,{hovertemplateAttrs:Wce,texttemplateAttrs:Xce,templatefallbackAttrs:hF}=gn(),pF=Yc(),Zce=aa(),dF=Xp(),Jce=ci().pattern,Es=mt().extendFlat,N5=Zce({editType:"calc",arrayOk:!0,colorEditType:"style"}),$ce=Lt.marker,Kce=$ce.line,Qce=Es({},Kce.width,{dflt:0}),jce=Es({width:Qce,editType:"calc"},pF("marker.line")),eve=Es({line:jce,editType:"calc"},pF("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:Jce,cornerradius:{valType:"any",editType:"calc"}});mF.exports={x:Lt.x,x0:Lt.x0,dx:Lt.dx,y:Lt.y,y0:Lt.y0,dy:Lt.dy,xperiod:Lt.xperiod,yperiod:Lt.yperiod,xperiod0:Lt.xperiod0,yperiod0:Lt.yperiod0,xperiodalignment:Lt.xperiodalignment,yperiodalignment:Lt.yperiodalignment,xhoverformat:vF("x"),yhoverformat:vF("y"),text:Lt.text,texttemplate:Xce({editType:"plot"},{keys:dF.eventDataKeys}),texttemplatefallback:hF({editType:"plot"}),hovertext:Lt.hovertext,hovertemplate:Wce({},{keys:dF.eventDataKeys}),hovertemplatefallback:hF(),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:Es({},N5,{}),insidetextfont:Es({},N5,{}),outsidetextfont:Es({},N5,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:Es({},Lt.cliponaxis,{}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc"},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc"},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc"},marker:eve,offsetgroup:Lt.offsetgroup,alignmentgroup:Lt.alignmentgroup,selected:{marker:{opacity:Lt.selected.marker.opacity,color:Lt.selected.marker.color,editType:"style"},textfont:Lt.selected.textfont,editType:"style"},unselected:{marker:{opacity:Lt.unselected.marker.opacity,color:Lt.unselected.marker.color,editType:"style"},textfont:Lt.unselected.textfont,editType:"style"},zorder:Lt.zorder}});var Zp=B((Y5e,yF)=>{"use strict";yF.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}});var F5=B((V5e,bF)=>{"use strict";var rve=xr(),gF=bn().hasColorscale,xF=Fu(),tve=Pe().coercePattern;bF.exports=function(r,t,a,n,i){var l=a("marker.color",n),o=gF(r,"marker");o&&xF(r,t,i,a,{prefix:"marker.",cLetter:"c"}),a("marker.line.color",rve.defaultLine),gF(r,"marker.line")&&xF(r,t,i,a,{prefix:"marker.line.",cLetter:"c"}),a("marker.line.width"),a("marker.opacity"),tve(a,"marker.pattern",l,o),a("selected.marker.color"),a("unselected.marker.color")}});var Ki=B((G5e,kF)=>{"use strict";var _F=zr(),Pf=Pe(),wF=xr(),ave=gr(),nve=Iv(),ive=ws(),lve=F5(),ove=df(),TF=Tl(),Jp=Pf.coerceFont;function sve(e,r,t,a){function n(u,f){return Pf.coerce(e,r,TF,u,f)}var i=nve(e,r,a,n);if(!i){r.visible=!1;return}ive(e,r,a,n),n("xhoverformat"),n("yhoverformat"),n("zorder"),n("orientation",r.x&&!r.y?"h":"v"),n("base"),n("offset"),n("width"),n("text"),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback");var l=n("textposition");AF(e,r,a,n,l,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),lve(e,r,n,t,a);var o=(r.marker.line||{}).color,s=ave.getComponentMethod("errorbars","supplyDefaults");s(e,r,o||wF.defaultLine,{axis:"y"}),s(e,r,o||wF.defaultLine,{axis:"x",inherit:"y"}),Pf.coerceSelectionMarkerOpacity(r,n)}function uve(e,r){var t,a;function n(o,s){return Pf.coerce(a._input,a,TF,o,s)}for(var i=0;i=0)return e}else if(typeof e=="string"&&(e=e.trim(),e.slice(-1)==="%"&&_F(e.slice(0,-1))&&(e=+e.slice(0,-1),e>=0)))return e+"%"}function AF(e,r,t,a,n,i){i=i||{};var l=i.moduleHasSelected!==!1,o=i.moduleHasUnselected!==!1,s=i.moduleHasConstrain!==!1,u=i.moduleHasCliponaxis!==!1,f=i.moduleHasTextangle!==!1,c=i.moduleHasInsideanchor!==!1,h=!!i.hasPathbar,d=Array.isArray(n)||n==="auto",p=d||n==="inside",y=d||n==="outside";if(p||y){var m=Jp(a,"textfont",t.font),b=Pf.extendFlat({},m),_=e.textfont&&e.textfont.color,w=!_;if(w&&delete b.color,Jp(a,"insidetextfont",b),h){var x=Pf.extendFlat({},m);w&&delete x.color,Jp(a,"pathbar.textfont",x)}y&&Jp(a,"outsidetextfont",m),l&&a("selected.textfont.color"),o&&a("unselected.textfont.color"),s&&a("constraintext"),u&&a("cliponaxis"),f&&a("textangle"),a("texttemplate"),a("texttemplatefallback")}p&&c&&a("insidetextanchor")}kF.exports={supplyDefaults:sve,crossTraceDefaults:uve,handleText:AF,validateCornerradius:MF}});var I5=B((U5e,qF)=>{"use strict";var fve=gr(),cve=Zr(),vve=Pe(),hve=Zp(),dve=Ki().validateCornerradius;qF.exports=function(e,r,t){function a(y,m){return vve.coerce(e,r,hve,y,m)}for(var n=!1,i=!1,l=!1,o={},s=a("barmode"),u=s==="group",f=0;f0&&!o[h]&&(l=!0),o[h]=!0),c.visible&&c.type==="histogram"){var d=cve.getFromId({_fullLayout:r},c[c.orientation==="v"?"xaxis":"yaxis"]);d.type!=="category"&&(i=!0)}}if(!n){delete r.barmode;return}s!=="overlay"&&a("barnorm"),a("bargap",i&&!l?0:.2),a("bargroupgap");var p=a("barcornerradius");r.barcornerradius=dve(p)}});var $p=B((W5e,SF)=>{"use strict";var Rf=Pe();SF.exports=function(r,t){for(var a=0;a{"use strict";var CF=Zr(),LF=Ts(),DF=bn().hasColorscale,EF=Vc(),pve=$p(),mve=Hv();PF.exports=function(r,t){var a=CF.getFromId(r,t.xaxis||"x"),n=CF.getFromId(r,t.yaxis||"y"),i,l,o,s,u,f,c={msUTC:!!(t.base||t.base===0)};t.orientation==="h"?(i=a.makeCalcdata(t,"x",c),o=n.makeCalcdata(t,"y"),s=LF(t,n,"y",o),u=!!t.yperiodalignment,f="y"):(i=n.makeCalcdata(t,"y",c),o=a.makeCalcdata(t,"x"),s=LF(t,a,"x",o),u=!!t.xperiodalignment,f="x"),l=s.vals;for(var h=Math.min(l.length,i.length),d=new Array(h),p=0;p{"use strict";var yve=kr(),gve=Pe();function xve(e,r,t){var a=e._fullLayout,n=a["_"+t+"Text_minsize"];if(n){var i=a.uniformtext.mode==="hide",l;switch(t){case"funnelarea":case"pie":case"sunburst":l="g.slice";break;case"treemap":case"icicle":l="g.slice, g.pathbar";break;default:l="g.points > g.point"}r.selectAll(l).each(function(o){var s=o.transform;if(s){s.scale=i&&s.hide?0:n/s.fontSize;var u=yve.select(this).select("text");gve.setTransormAndDisplay(u,s)}})}}function bve(e,r,t){if(t.uniformtext.mode){var a=zF(e),n=t.uniformtext.minsize,i=r.scale*r.fontSize;r.hide=i{"use strict";var wve=zr(),Tve=Nn(),FF=Pe().isArrayOrTypedArray;Ps.coerceString=function(e,r,t){if(typeof r=="string"){if(r||!e.noBlank)return r}else if((typeof r=="number"||r===!0)&&!e.strict)return String(r);return t!==void 0?t:e.dflt};Ps.coerceNumber=function(e,r,t){if(wve(r)){r=+r;var a=e.min,n=e.max,i=a!==void 0&&rn;if(!i)return r}return t!==void 0?t:e.dflt};Ps.coerceColor=function(e,r,t){return Tve(r).isValid()?r:t!==void 0?t:e.dflt};Ps.coerceEnumerated=function(e,r,t){return e.coerceNumber&&(r=+r),e.values.indexOf(r)!==-1?r:t!==void 0?t:e.dflt};Ps.getValue=function(e,r){var t;return FF(e)?r{"use strict";var n0=kr(),Mve=xr(),i0=Yr(),IF=Pe(),HF=gr(),OF=Ei().resizeText,H5=Tl(),Ave=H5.textfont,kve=H5.insidetextfont,qve=H5.outsidetextfont,qa=Kp();function Sve(e){var r=n0.select(e).selectAll('g[class^="barlayer"]').selectAll("g.trace");OF(e,r,"bar");var t=r.size(),a=e._fullLayout;r.style("opacity",function(n){return n[0].trace.opacity}).each(function(n){(a.barmode==="stack"&&t>1||a.bargap===0&&a.bargroupgap===0&&!n[0].trace.marker.line.width)&&n0.select(this).attr("shape-rendering","crispEdges")}),r.selectAll("g.points").each(function(n){var i=n0.select(this),l=n[0].trace;BF(i,l,e)}),HF.getComponentMethod("errorbars","style")(r)}function BF(e,r,t){i0.pointStyle(e.selectAll("path"),r,t),YF(e,r,t)}function YF(e,r,t){e.selectAll("text").each(function(a){var n=n0.select(this),i=IF.ensureUniformFontSize(t,VF(n,a,r,t));i0.font(n,i)})}function Cve(e,r,t){var a=r[0].trace;a.selectedpoints?Lve(t,a,e):(BF(t,a,e),HF.getComponentMethod("errorbars","style")(t))}function Lve(e,r,t){i0.selectedPointStyle(e.selectAll("path"),r),Dve(e.selectAll("text"),r,t)}function Dve(e,r,t){e.each(function(a){var n=n0.select(this),i;if(a.selected){i=IF.ensureUniformFontSize(t,VF(n,a,r,t));var l=r.selected.textfont&&r.selected.textfont.color;l&&(i.color=l),i0.font(n,i)}else i0.selectedTextStyle(n,r)})}function VF(e,r,t,a){var n=a._fullLayout.font,i=t.textfont;if(e.classed("bartext-inside")){var l=XF(r,t);i=UF(t,r.i,n,l)}else e.classed("bartext-outside")&&(i=WF(t,r.i,n));return i}function GF(e,r,t){return O5(Ave,e.textfont,r,t)}function UF(e,r,t,a){var n=GF(e,r,t),i=e._input.textfont===void 0||e._input.textfont.color===void 0||Array.isArray(e.textfont.color)&&e.textfont.color[r]===void 0;return i&&(n={color:Mve.contrast(a),family:n.family,size:n.size,weight:n.weight,style:n.style,variant:n.variant,textcase:n.textcase,lineposition:n.lineposition,shadow:n.shadow}),O5(kve,e.insidetextfont,r,n)}function WF(e,r,t){var a=GF(e,r,t);return O5(qve,e.outsidetextfont,r,a)}function O5(e,r,t,a){r=r||{};var n=qa.getValue(r.family,t),i=qa.getValue(r.size,t),l=qa.getValue(r.color,t),o=qa.getValue(r.weight,t),s=qa.getValue(r.style,t),u=qa.getValue(r.variant,t),f=qa.getValue(r.textcase,t),c=qa.getValue(r.lineposition,t),h=qa.getValue(r.shadow,t);return{family:qa.coerceString(e.family,n,a.family),size:qa.coerceNumber(e.size,i,a.size),color:qa.coerceColor(e.color,l,a.color),weight:qa.coerceString(e.weight,o,a.weight),style:qa.coerceString(e.style,s,a.style),variant:qa.coerceString(e.variant,u,a.variant),textcase:qa.coerceString(e.variant,f,a.textcase),lineposition:qa.coerceString(e.variant,c,a.lineposition),shadow:qa.coerceString(e.variant,h,a.shadow)}}function XF(e,r){return r.type==="waterfall"?r[e.dir].marker.color:e.mcc||e.mc||r.marker.color}ZF.exports={style:Sve,styleTextPoints:YF,styleOnSelect:Cve,getInsideTextFont:UF,getOutsideTextFont:WF,getBarColor:XF,resizeText:OF}});var Nf=B((K5e,tI)=>{"use strict";var Qp=kr(),jp=zr(),da=Pe(),Eve=va(),Pve=xr(),po=Yr(),Rve=gr(),em=Zr().tickText,JF=Ei(),zve=JF.recordMinTextSize,Nve=JF.clearMinTextSize,B5=ho(),zf=Kp(),Fve=Xp(),$F=Tl(),Ive=$F.text,Hve=$F.textposition,Ove=Hi().appendArrayPointValue,Za=Fve.TEXTPAD;function Bve(e){return e.id}function Yve(e){if(e.ids)return Bve}function Y5(e){return(e>0)-(e<0)}function Qi(e,r){return e0}function Gve(e,r,t,a,n,i){var l=r.xaxis,o=r.yaxis,s=e._fullLayout,u=e._context.staticPlot;n||(n={mode:s.barmode,norm:s.barmode,gap:s.bargap,groupgap:s.bargroupgap},Nve("bar",s));var f=da.makeTraceGroups(a,t,"trace bars").each(function(c){var h=Qp.select(this),d=c[0].trace,p=c[0].t,y=d.type==="waterfall",m=d.type==="funnel",b=d.type==="histogram",_=d.type==="bar",w=_||m,x=0;y&&d.connector.visible&&d.connector.mode==="between"&&(x=d.connector.line.width/2);var M=d.orientation==="h",k=QF(n),A=da.ensureSingle(h,"g","points"),C=Yve(d),D=A.selectAll("g.point").data(da.identity,C);D.enter().append("g").classed("point",!0),D.exit().remove(),D.each(function(R,N){var I=Qp.select(this),H=Vve(R,l,o,M),G=H[0][0],W=H[0][1],V=H[1][0],O=H[1][1],Y=(M?W-G:O-V)===0;Y&&w&&zf.getLineWidth(d,R)&&(Y=!1),Y||(Y=!jp(G)||!jp(W)||!jp(V)||!jp(O)),R.isBlank=Y,Y&&(M?W=G:O=V),x&&!Y&&(M?(G-=Qi(G,W)*x,W+=Qi(G,W)*x):(V-=Qi(V,O)*x,O+=Qi(V,O)*x));var Z,J;if(d.type==="waterfall"){if(!Y){var ee=d[R.dir].marker;Z=ee.line.width,J=ee.color}}else Z=zf.getLineWidth(d,R),J=R.mc||d.marker.color;function le(ie){var _e=Qp.round(Z/2%1,2);return n.gap===0&&n.groupgap===0?Qp.round(Math.round(ie)-_e,2):ie}function ue(ie,_e,$e){return $e&&ie===_e?ie:Math.abs(ie-_e)>=2?le(ie):ie>_e?Math.ceil(ie):Math.floor(ie)}var ve=Pve.opacity(J),j=ve<1||Z>.01?le:ue;e._context.staticPlot||(G=j(G,W,M),W=j(W,G,M),V=j(V,O,!M),O=j(O,V,!M));var qe=M?l.c2p:o.c2p,fe;R.s0>0?fe=R._sMax:R.s0<0?fe=R._sMin:fe=R.s1>0?R._sMax:R._sMin;function be(ie,_e){if(!ie)return 0;var $e=Math.abs(M?O-V:W-G),hr=Math.abs(M?W-G:O-V),Re=j(Math.abs(qe(fe,!0)-qe(0,!0))),Ae=R.hasB?Math.min($e/2,hr/2):Math.min($e/2,Re),Se;if(_e==="%"){var Oe=Math.min(50,ie);Se=$e*(Oe/100)}else Se=ie;return j(Math.max(Math.min(Se,Ae),0))}var ce=_||b?be(p.cornerradiusvalue,p.cornerradiusform):0,xe,U,Q="M"+G+","+V+"V"+O+"H"+W+"V"+V+"Z",X=0;if(ce&&R.s){var ge=Y5(R.s0)===0||Y5(R.s)===Y5(R.s0)?R.s1:R.s0;if(X=j(R.hasB?0:Math.abs(qe(fe,!0)-qe(ge,!0))),X0?Math.sqrt(X*(2*ce-X)):0,Fe=Te>0?Math.max:Math.min;xe="M"+G+","+V+"V"+(O-Ie*ye)+"H"+Fe(W-(ce-X)*Te,G)+"A "+ce+","+ce+" 0 0 "+ze+" "+W+","+(O-ce*ye-Ee)+"V"+(V+ce*ye+Ee)+"A "+ce+","+ce+" 0 0 "+ze+" "+Fe(W-(ce-X)*Te,G)+","+(V+Ie*ye)+"Z"}else if(R.hasB)xe="M"+(G+ce*Te)+","+V+"A "+ce+","+ce+" 0 0 "+ze+" "+G+","+(V+ce*ye)+"V"+(O-ce*ye)+"A "+ce+","+ce+" 0 0 "+ze+" "+(G+ce*Te)+","+O+"H"+(W-ce*Te)+"A "+ce+","+ce+" 0 0 "+ze+" "+W+","+(O-ce*ye)+"V"+(V+ce*ye)+"A "+ce+","+ce+" 0 0 "+ze+" "+(W-ce*Te)+","+V+"Z";else{U=Math.abs(O-V)+X;var Be=U0?Math.sqrt(X*(2*ce-X)):0,Le=ye>0?Math.max:Math.min;xe="M"+(G+Be*Te)+","+V+"V"+Le(O-(ce-X)*ye,V)+"A "+ce+","+ce+" 0 0 "+ze+" "+(G+ce*Te-Ue)+","+O+"H"+(W-ce*Te+Ue)+"A "+ce+","+ce+" 0 0 "+ze+" "+(W-Be*Te)+","+Le(O-(ce-X)*ye,V)+"V"+V+"Z"}}else xe=Q}else xe=Q;var He=KF(da.ensureSingle(I,"path"),s,n,i);if(He.style("vector-effect",u?"none":"non-scaling-stroke").attr("d",isNaN((W-G)*(O-V))||Y&&e._context.staticPlot?"M0,0Z":xe).call(po.setClipUrl,r.layerClipId,e),!s.uniformtext.mode&&k){var Ye=po.makePointStyleFns(d);po.singlePointStyle(R,He,d,Ye,e)}Uve(e,r,I,c,N,G,W,V,O,ce,X,n,i),r.layerClipId&&po.hideOutsideRangePoint(R,I.select("text"),l,o,d.xcalendar,d.ycalendar)});var E=d.cliponaxis===!1;po.setClipUrl(h,E?null:r.layerClipId,e)});Rve.getComponentMethod("errorbars","plot")(e,f,r,n)}function Uve(e,r,t,a,n,i,l,o,s,u,f,c,h){var d=r.xaxis,p=r.yaxis,y=e._fullLayout,m;function b(U,Q,X){var ge=da.ensureSingle(U,"text").text(Q).attr({class:"bartext bartext-"+m,"text-anchor":"middle","data-notex":1}).call(po.font,X).call(Eve.convertToTspans,e);return ge}var _=a[0].trace,w=_.orientation==="h",x=Zve(y,a,n,d,p);m=Jve(_,n);var M=c.mode==="stack"||c.mode==="relative",k=a[n],A=!M||k._outmost,C=k.hasB,D=u&&u-f>Za;if(!x||m==="none"||(k.isBlank||i===l||o===s)&&(m==="auto"||m==="inside")){t.select("text").remove();return}var E=y.font,R=B5.getBarColor(a[n],_),N=B5.getInsideTextFont(_,n,E,R),I=B5.getOutsideTextFont(_,n,E),H=_.insidetextanchor||"end",G=t.datum();w?d.type==="log"&&G.s0<=0&&(d.range[0]0&&le>0,j;D?C?j=Rs(O-2*u,Y,ee,le,w)||Rs(O,Y-2*u,ee,le,w):w?j=Rs(O-(u-f),Y,ee,le,w)||Rs(O,Y-2*(u-f),ee,le,w):j=Rs(O,Y-(u-f),ee,le,w)||Rs(O-2*(u-f),Y,ee,le,w):j=Rs(O,Y,ee,le,w),ve&&j?m="inside":(m="outside",Z.remove(),Z=null)}else m="inside";if(!Z){ue=da.ensureUniformFontSize(e,m==="outside"?I:N),Z=b(t,x,ue);var qe=Z.attr("transform");if(Z.attr("transform",""),J=po.bBox(Z.node()),ee=J.width,le=J.height,Z.attr("transform",qe),ee<=0||le<=0){Z.remove();return}}var fe=_.textangle,be,ce;m==="outside"?(ce=_.constraintext==="both"||_.constraintext==="outside",be=Xve(i,l,o,s,J,{isHorizontal:w,constrained:ce,angle:fe})):(ce=_.constraintext==="both"||_.constraintext==="inside",be=rI(i,l,o,s,J,{isHorizontal:w,constrained:ce,angle:fe,anchor:H,hasB:C,r:u,overhead:f})),be.fontSize=ue.size,zve(_.type==="histogram"?"bar":_.type,be,y),k.transform=be;var xe=KF(Z,y,c,h);da.setTransormAndDisplay(xe,be)}function Rs(e,r,t,a,n){if(e<0||r<0)return!1;var i=t<=e&&a<=r,l=t<=r&&a<=e,o=n?e>=t*(r/a):r>=a*(e/t);return i||l||o}function jF(e){return e==="auto"?0:e}function eI(e,r){var t=Math.PI/180*r,a=Math.abs(Math.sin(t)),n=Math.abs(Math.cos(t));return{x:e.width*n+e.height*a,y:e.width*a+e.height*n}}function rI(e,r,t,a,n,i){var l=!!i.isHorizontal,o=!!i.constrained,s=i.angle||0,u=i.anchor,f=u==="end",c=u==="start",h=i.leftToRight||0,d=(h+1)/2,p=1-d,y=i.hasB,m=i.r,b=i.overhead,_=n.width,w=n.height,x=Math.abs(r-e),M=Math.abs(a-t),k=x>2*Za&&M>2*Za?Za:0;x-=2*k,M-=2*k;var A=jF(s);s==="auto"&&!(_<=x&&w<=M)&&(_>x||w>M)&&(!(_>M||w>x)||_Za){var R=Wve(e,r,t,a,C,m,b,l,y);D=R.scale,E=R.pad}else D=1,o&&(D=Math.min(1,x/C.x,M/C.y)),E=0;var N=n.left*p+n.right*d,I=(n.top+n.bottom)/2,H=(e+Za)*p+(r-Za)*d,G=(t+a)/2,W=0,V=0;if(c||f){var O=(l?C.x:C.y)/2;m&&(f||y)&&(k+=E);var Y=l?Qi(e,r):Qi(t,a);l?c?(H=e+Y*k,W=-Y*O):(H=r-Y*k,W=Y*O):c?(G=t+Y*k,V=-Y*O):(G=a-Y*k,V=Y*O)}return{textX:N,textY:I,targetX:H,targetY:G,anchorX:W,anchorY:V,scale:D,rotate:A}}function Wve(e,r,t,a,n,i,l,o,s){var u=Math.max(0,Math.abs(r-e)-2*Za),f=Math.max(0,Math.abs(a-t)-2*Za),c=i-Za,h=l?c-Math.sqrt(c*c-(c-l)*(c-l)):c,d=s?c*2:o?c-l:2*h,p=s?c*2:o?2*h:c-l,y,m,b,_,w;return n.y/n.x>=f/(u-d)?_=f/n.y:n.y/n.x<=(f-p)/u?_=u/n.x:!s&&o?(y=n.x*n.x+n.y*n.y/4,m=-2*n.x*(u-c)-n.y*(f/2-c),b=(u-c)*(u-c)+(f/2-c)*(f/2-c)-c*c,_=(-m+Math.sqrt(m*m-4*y*b))/(2*y)):s?(y=(n.x*n.x+n.y*n.y)/4,m=-n.x*(u/2-c)-n.y*(f/2-c),b=(u/2-c)*(u/2-c)+(f/2-c)*(f/2-c)-c*c,_=(-m+Math.sqrt(m*m-4*y*b))/(2*y)):(y=n.x*n.x/4+n.y*n.y,m=-n.x*(u/2-c)-2*n.y*(f-c),b=(u/2-c)*(u/2-c)+(f-c)*(f-c)-c*c,_=(-m+Math.sqrt(m*m-4*y*b))/(2*y)),_=Math.min(1,_),o?w=Math.max(0,c-Math.sqrt(Math.max(0,c*c-(c-(f-n.y*_)/2)*(c-(f-n.y*_)/2)))-l):w=Math.max(0,c-Math.sqrt(Math.max(0,c*c-(c-(u-n.x*_)/2)*(c-(u-n.x*_)/2)))-l),{scale:_,pad:w}}function Xve(e,r,t,a,n,i){var l=!!i.isHorizontal,o=!!i.constrained,s=i.angle||0,u=n.width,f=n.height,c=Math.abs(r-e),h=Math.abs(a-t),d;l?d=h>2*Za?Za:0:d=c>2*Za?Za:0;var p=1;o&&(p=l?Math.min(1,h/f):Math.min(1,c/u));var y=jF(s),m=eI(n,y),b=(l?m.x:m.y)/2,_=(n.left+n.right)/2,w=(n.top+n.bottom)/2,x=(e+r)/2,M=(t+a)/2,k=0,A=0,C=l?Qi(r,e):Qi(t,a);return l?(x=r-C*d,k=C*b):(M=a+C*d,A=-C*b),{textX:_,textY:w,targetX:x,targetY:M,anchorX:k,anchorY:A,scale:p,rotate:y}}function Zve(e,r,t,a,n){var i=r[0].trace,l=i.texttemplate,o;return l?o=$ve(e,r,t,a,n):i.textinfo?o=Kve(r,t,a,n):o=zf.getValue(i.text,t),zf.coerceString(Ive,o)}function Jve(e,r){var t=zf.getValue(e.textposition,r);return zf.coerceEnumerated(Hve,t)}function $ve(e,r,t,a,n){var i=r[0].trace,l=da.castOption(i,t,"texttemplate");if(!l)return"";var o=i.type==="histogram",s=i.type==="waterfall",u=i.type==="funnel",f=i.orientation==="h",c,h,d,p;f?(c="y",h=n,d="x",p=a):(c="x",h=a,d="y",p=n);function y(k){return em(h,h.c2l(k),!0).text}function m(k){return em(p,p.c2l(k),!0).text}var b=r[t],_={};_.label=b.p,_.labelLabel=_[c+"Label"]=y(b.p);var w=da.castOption(i,b.i,"text");(w===0||w)&&(_.text=w),_.value=b.s,_.valueLabel=_[d+"Label"]=m(b.s);var x={};Ove(x,i,b.i),(o||x.x===void 0)&&(x.x=f?_.value:_.label),(o||x.y===void 0)&&(x.y=f?_.label:_.value),(o||x.xLabel===void 0)&&(x.xLabel=f?_.valueLabel:_.labelLabel),(o||x.yLabel===void 0)&&(x.yLabel=f?_.labelLabel:_.valueLabel),s&&(_.delta=+b.rawS||b.s,_.deltaLabel=m(_.delta),_.final=b.v,_.finalLabel=m(_.final),_.initial=_.final-_.delta,_.initialLabel=m(_.initial)),u&&(_.value=b.s,_.valueLabel=m(_.value),_.percentInitial=b.begR,_.percentInitialLabel=da.formatPercent(b.begR),_.percentPrevious=b.difR,_.percentPreviousLabel=da.formatPercent(b.difR),_.percentTotal=b.sumR,_.percenTotalLabel=da.formatPercent(b.sumR));var M=da.castOption(i,b.i,"customdata");return M&&(_.customdata=M),da.texttemplateString({data:[x,_,i._meta],fallback:i.texttemplatefallback,labels:_,locale:e._d3locale,template:l})}function Kve(e,r,t,a){var n=e[0].trace,i=n.orientation==="h",l=n.type==="waterfall",o=n.type==="funnel";function s(M){var k=i?a:t;return em(k,M,!0).text}function u(M){var k=i?t:a;return em(k,+M,!0).text}var f=n.textinfo,c=e[r],h=f.split("+"),d=[],p,y=function(M){return h.indexOf(M)!==-1};if(y("label")&&d.push(s(e[r].p)),y("text")&&(p=da.castOption(n,c.i,"text"),(p===0||p)&&d.push(p)),l){var m=+c.rawS||c.s,b=c.v,_=b-m;y("initial")&&d.push(u(_)),y("delta")&&d.push(u(m)),y("final")&&d.push(u(b))}if(o){y("value")&&d.push(u(c.s));var w=0;y("percent initial")&&w++,y("percent previous")&&w++,y("percent total")&&w++;var x=w>1;y("percent initial")&&(p=da.formatPercent(c.begR),x&&(p+=" of initial"),d.push(p)),y("percent previous")&&(p=da.formatPercent(c.difR),x&&(p+=" of previous"),d.push(p)),y("percent total")&&(p=da.formatPercent(c.sumR),x&&(p+=" of total"),d.push(p))}return d.join("
")}tI.exports={plot:Gve,toMoveInsideBar:rI}});var o0=B((Q5e,lI)=>{"use strict";var l0=xi(),Qve=gr(),aI=xr(),jve=Pe().fillText,e0e=Kp().getLineWidth,V5=Zr().hoverLabelText,r0e=wt().BADNUM;function t0e(e,r,t,a,n){var i=nI(e,r,t,a,n);if(i){var l=i.cd,o=l[0].trace,s=l[i.index];return i.color=iI(o,s),Qve.getComponentMethod("errorbars","hoverInfo")(s,o,i),[i]}}function nI(e,r,t,a,n){var i=e.cd,l=i[0].trace,o=i[0].t,s=a==="closest",u=l.type==="waterfall",f=e.maxHoverDistance,c=e.maxSpikeDistance,h,d,p,y,m,b,_;l.orientation==="h"?(h=t,d=r,p="y",y="x",m=G,b=N):(h=r,d=t,p="x",y="y",b=G,m=N);var w=l[p+"period"],x=s||w;function M(j){return A(j,-1)}function k(j){return A(j,1)}function A(j,qe){var fe=j.w;return j[p]+qe*fe/2}function C(j){return j[p+"End"]-j[p+"Start"]}var D=s?M:w?function(j){return j.p-C(j)/2}:function(j){return Math.min(M(j),j.p-o.bardelta/2)},E=s?k:w?function(j){return j.p+C(j)/2}:function(j){return Math.max(k(j),j.p+o.bardelta/2)};function R(j,qe,fe){return n.finiteRange&&(fe=0),l0.inbox(j-h,qe-h,fe+Math.min(1,Math.abs(qe-j)/_)-1)}function N(j){return R(D(j),E(j),f)}function I(j){return R(M(j),k(j),c)}function H(j){var qe=j[y];if(u){var fe=Math.abs(j.rawS)||0;d>0?qe+=fe:d<0&&(qe-=fe)}return qe}function G(j){var qe=d,fe=j.b,be=H(j);return l0.inbox(fe-qe,be-qe,f+(be-qe)/(be-fe)-1)}function W(j){var qe=d,fe=j.b,be=H(j);return l0.inbox(fe-qe,be-qe,c+(be-qe)/(be-fe)-1)}var V=e[p+"a"],O=e[y+"a"];_=Math.abs(V.r2c(V.range[1])-V.r2c(V.range[0]));function Y(j){return(m(j)+b(j))/2}var Z=l0.getDistanceFunction(a,m,b,Y);if(l0.getClosest(i,Z,e),e.index!==!1&&i[e.index].p!==r0e){x||(D=function(j){return Math.min(M(j),j.p-o.bargroupwidth/2)},E=function(j){return Math.max(k(j),j.p+o.bargroupwidth/2)});var J=e.index,ee=i[J],le=l.base?ee.b+ee.s:ee.s;e[y+"0"]=e[y+"1"]=O.c2p(ee[y],!0),e[y+"LabelVal"]=le;var ue=o.extents[o.extents.round(ee.p)];e[p+"0"]=V.c2p(s?D(ee):ue[0],!0),e[p+"1"]=V.c2p(s?E(ee):ue[1],!0);var ve=ee.orig_p!==void 0;return e[p+"LabelVal"]=ve?ee.orig_p:ee.p,e.labelLabel=V5(V,e[p+"LabelVal"],l[p+"hoverformat"]),e.valueLabel=V5(O,e[y+"LabelVal"],l[y+"hoverformat"]),e.baseLabel=V5(O,ee.b,l[y+"hoverformat"]),e.spikeDistance=(W(ee)+I(ee))/2,e[p+"Spike"]=V.c2p(ee.p,!0),jve(ee,l,e),e.hovertemplate=l.hovertemplate,e}}function iI(e,r){var t=r.mcc||e.marker.color,a=r.mlcc||e.marker.line.color,n=e0e(e,r);if(aI.opacity(t))return t;if(aI.opacity(a)&&n)return a}lI.exports={hoverPoints:t0e,hoverOnBars:nI,getTraceColor:iI}});var sI=B((j5e,oI)=>{"use strict";oI.exports=function(r,t,a){return r.x="xVal"in t?t.xVal:t.x,r.y="yVal"in t?t.yVal:t.y,t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),a.orientation==="h"?(r.label=r.y,r.value=r.x):(r.label=r.x,r.value=r.y),r}});var s0=B((ebe,uI)=>{"use strict";uI.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,l=a[0].trace,o=l.type==="funnel",s=l.orientation==="h",u=[],f;if(t===!1)for(f=0;f{"use strict";fI.exports={attributes:Tl(),layoutAttributes:Zp(),supplyDefaults:Ki().supplyDefaults,crossTraceDefaults:Ki().crossTraceDefaults,supplyLayoutDefaults:I5(),calc:RF(),crossTraceCalc:yf().crossTraceCalc,colorbar:up(),arraysToCalcdata:$p(),plot:Nf().plot,style:ho().style,styleOnSelect:ho().styleOnSelect,hoverPoints:o0().hoverPoints,eventData:sI(),selectPoints:s0(),moduleType:"trace",name:"bar",basePlotModule:gl(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}});var hI=B((tbe,vI)=>{"use strict";vI.exports=cI()});var pI=B((abe,dI)=>{"use strict";dI.exports=function(r,t){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}});var yI=B((nbe,mI)=>{"use strict";mI.exports={eventDataKeys:["binNumber"]}});var W5=B((ibe,_I)=>{"use strict";var dn=Tl(),gI=pi().axisHoverFormat,{hovertemplateAttrs:n0e,texttemplateAttrs:i0e,templatefallbackAttrs:xI}=gn(),G5=aa(),bI=pI(),l0e=yI(),U5=mt().extendFlat;_I.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:gI("x"),yhoverformat:gI("y"),text:U5({},dn.text,{}),hovertext:U5({},dn.hovertext,{}),orientation:dn.orientation,histfunc:{valType:"enumerated",values:["count","sum","avg","min","max"],dflt:"count",editType:"calc"},histnorm:{valType:"enumerated",values:["","percent","probability","density","probability density"],dflt:"",editType:"calc"},cumulative:{enabled:{valType:"boolean",dflt:!1,editType:"calc"},direction:{valType:"enumerated",values:["increasing","decreasing"],dflt:"increasing",editType:"calc"},currentbin:{valType:"enumerated",values:["include","exclude","half"],dflt:"include",editType:"calc"},editType:"calc"},nbinsx:{valType:"integer",min:0,dflt:0,editType:"calc"},xbins:bI("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:bI("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:n0e({},{keys:l0e.eventDataKeys}),hovertemplatefallback:xI(),texttemplate:i0e({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),texttemplatefallback:xI({editType:"plot"}),textposition:U5({},dn.textposition,{arrayOk:!1}),textfont:G5({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:G5({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:G5({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:dn.insidetextanchor,textangle:dn.textangle,cliponaxis:dn.cliponaxis,constraintext:dn.constraintext,marker:dn.marker,offsetgroup:dn.offsetgroup,alignmentgroup:dn.alignmentgroup,selected:dn.selected,unselected:dn.unselected,zorder:dn.zorder}});var AI=B((lbe,MI)=>{"use strict";var wI=gr(),u0=Pe(),TI=xr(),o0e=Ki().handleText,s0e=F5(),u0e=W5();MI.exports=function(r,t,a,n){function i(_,w){return u0.coerce(r,t,u0e,_,w)}var l=i("x"),o=i("y"),s=i("cumulative.enabled");s&&(i("cumulative.direction"),i("cumulative.currentbin")),i("text");var u=i("textposition");o0e(r,t,n,i,u,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),i("xhoverformat"),i("yhoverformat");var f=i("orientation",o&&!l?"h":"v"),c=f==="v"?"x":"y",h=f==="v"?"y":"x",d=l&&o?Math.min(u0.minRowLength(l)&&u0.minRowLength(o)):u0.minRowLength(t[c]||[]);if(!d){t.visible=!1;return}t._length=d;var p=wI.getComponentMethod("calendars","handleTraceDefaults");p(r,t,["x","y"],n);var y=t[h];y&&i("histfunc"),i("histnorm"),i("autobin"+c),s0e(r,t,i,a,n),u0.coerceSelectionMarkerOpacity(t,i);var m=(t.marker.line||{}).color,b=wI.getComponentMethod("errorbars","supplyDefaults");b(r,t,m||TI.defaultLine,{axis:"y"}),b(r,t,m||TI.defaultLine,{axis:"x",inherit:"y"}),i("zorder")}});var CI=B((obe,SI)=>{"use strict";var f0=Pe(),f0e=Ut(),rm=gr().traceIs,c0e=df(),v0e=Ki().validateCornerradius,kI=f0.nestedProperty,X5=gs().getAxisGroup,qI=[{aStr:{x:"xbins.start",y:"ybins.start"},name:"start"},{aStr:{x:"xbins.end",y:"ybins.end"},name:"end"},{aStr:{x:"xbins.size",y:"ybins.size"},name:"size"},{aStr:{x:"nbinsx",y:"nbinsy"},name:"nbins"}],h0e=["x","y"];SI.exports=function(r,t){var a=t._histogramBinOpts={},n=[],i={},l=[],o,s,u,f,c,h,d;function p(G,W){return f0.coerce(o._input,o,o._module.attributes,G,W)}function y(G){return G.orientation==="v"?"x":"y"}function m(G,W){var V=f0e.getFromTrace({_fullLayout:t},G,W);return V.type}function b(G,W,V){var O=G.uid+"__"+V;W||(W=O);var Y=m(G,V),Z=G[V+"calendar"]||"",J=a[W],ee=!0;J&&(Y===J.axType&&Z===J.calendar?(ee=!1,J.traces.push(G),J.dirs.push(V)):(W=O,Y!==J.axType&&f0.warn(["Attempted to group the bins of trace",G.index,"set on a","type:"+Y,"axis","with bins on","type:"+J.axType,"axis."].join(" ")),Z!==J.calendar&&f0.warn(["Attempted to group the bins of trace",G.index,"set with a",Z,"calendar","with bins",J.calendar?"on a "+J.calendar+" calendar":"w/o a set calendar"].join(" ")))),ee&&(a[W]={traces:[G],dirs:[V],axType:Y,calendar:G[V+"calendar"]||""}),G["_"+V+"bingroup"]=W}for(c=0;c{"use strict";var Ff=zr();LI.exports={count:function(e,r,t){return t[e]++,1},sum:function(e,r,t,a){var n=a[r];return Ff(n)?(n=Number(n),t[e]+=n,n):0},avg:function(e,r,t,a,n){var i=a[r];return Ff(i)&&(i=Number(i),t[e]+=i,n[e]++),0},min:function(e,r,t,a){var n=a[r];if(Ff(n))if(n=Number(n),Ff(t[e])){if(t[e]>n){var i=n-t[e];return t[e]=n,i}}else return t[e]=n,n;return 0},max:function(e,r,t,a){var n=a[r];if(Ff(n))if(n=Number(n),Ff(t[e])){if(t[e]{"use strict";EI.exports={percent:function(e,r){for(var t=e.length,a=100/r,n=0;n{"use strict";RI.exports=function(r,t){for(var a=r.length,n=0,i=0;i{"use strict";var If=wt(),zs=If.ONEAVGYEAR,NI=If.ONEAVGMONTH,am=If.ONEDAY,FI=If.ONEHOUR,II=If.ONEMIN,HI=If.ONESEC,OI=Zr().tickIncrement;VI.exports=function(r,t,a,n,i){var l=-1.1*t,o=-.1*t,s=r-o,u=a[0],f=a[1],c=Math.min(tm(u+o,u+s,n,i),tm(f+o,f+s,n,i)),h=Math.min(tm(u+l,u+o,n,i),tm(f+l,f+o,n,i)),d,p;if(c>h&&ham){var y=d===zs?1:6,m=d===zs?"M12":"M1";return function(b,_){var w=n.c2d(b,zs,i),x=w.indexOf("-",y);x>0&&(w=w.slice(0,x));var M=n.d2c(w,0,i);if(MHI?e>am?e>zs*1.1?zs:e>NI*1.1?NI:am:e>FI?FI:e>II?II:HI:Math.pow(10,Math.floor(Math.log(e)/Math.LN10))}function d0e(e,r,t,a,n,i){if(a&&e>am){var l=YI(r,n,i),o=YI(t,n,i),s=e===zs?0:1;return l[s]!==o[s]}return Math.floor(t/e)-Math.floor(r/e)>.1}function YI(e,r,t){var a=r.c2d(e,zs,t).split("-");return a[0]===""&&(a.unshift(),a[0]="-"+a[0]),a}});var $I=B((vbe,JI)=>{"use strict";var Z5=zr(),Ja=Pe(),UI=gr(),ti=Zr(),{hasColorscale:WI}=bn(),XI=Vc(),p0e=$p(),ZI=DI(),m0e=PI(),y0e=zI(),g0e=GI();function x0e(e,r){var t=[],a=[],n=r.orientation==="h",i=ti.getFromId(e,n?r.yaxis:r.xaxis),l=n?"y":"x",o={x:"y",y:"x"}[l],s=r[l+"calendar"],u=r.cumulative,f,c=J5(e,r,i,l),h=c[0],d=c[1],p=typeof h.size=="string",y=[],m=p?y:h,b=[],_=[],w=[],x=0,M=r.histnorm,k=r.histfunc,A=M.indexOf("density")!==-1,C,D,E;u.enabled&&A&&(M=M.replace(/ ?density$/,""),A=!1);var R=k==="max"||k==="min",N=R?null:0,I=ZI.count,H=m0e[M],G=!1,W=function(U){return i.r2c(U,0,s)},V;for(Ja.isArrayOrTypedArray(r[o])&&k!=="count"&&(V=r[o],G=k==="avg",I=ZI[k]),f=W(h.start),D=W(h.end)+(f-ti.tickIncrement(f,h.size,!1,s))/1e6;f=0&&E=be;f--)if(a[f]){ce=f;break}for(f=be;f<=ce;f++)if(Z5(t[f])&&Z5(a[f])){var xe={p:t[f],s:a[f],b:0};u.enabled||(xe.pts=w[f],J?xe.ph0=xe.ph1=w[f].length?d[w[f][0]]:t[f]:(r._computePh=!0,xe.ph0=j(y[f]),xe.ph1=j(y[f+1],!0))),fe.push(xe)}return fe.length===1&&(fe[0].width1=ti.tickIncrement(fe[0].p,h.size,!1,s)-fe[0].p),WI(r,"marker")&&XI(e,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),WI(r,"marker.line")&&XI(e,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}),p0e(fe,r),Ja.isArrayOrTypedArray(r.selectedpoints)&&Ja.tagSelected(fe,r,ue),fe}function J5(e,r,t,a,n){var i=a+"bins",l=e._fullLayout,o=r["_"+a+"bingroup"],s=l._histogramBinOpts[o],u=l.barmode==="overlay",f,c,h,d,p,y,m,b=function(ve){return t.r2c(ve,0,d)},_=function(ve){return t.c2r(ve,0,d)},w=t.type==="date"?function(ve){return ve||ve===0?Ja.cleanDate(ve,null,d):null}:function(ve){return Z5(ve)?Number(ve):null};function x(ve,j,qe){j[ve+"Found"]?(j[ve]=w(j[ve]),j[ve]===null&&(j[ve]=qe[ve])):(y[ve]=j[ve]=qe[ve],Ja.nestedProperty(c[0],i+"."+ve).set(qe[ve]))}if(r["_"+a+"autoBinFinished"])delete r["_"+a+"autoBinFinished"];else{c=s.traces;var M=[],k=!0,A=!1,C=!1;for(f=0;ft.r2l(V)&&(Y=ti.tickIncrement(Y,s.size,!0,d)),I.start=t.l2r(Y),W||Ja.nestedProperty(r,i+".start").set(I.start)}var Z=s.end,J=t.r2l(N.end),ee=J!==void 0;if((s.endFound||ee)&&J!==t.r2l(Z)){var le=ee?J:Ja.aggNums(Math.max,null,p);I.end=t.l2r(le),ee||Ja.nestedProperty(r,i+".start").set(I.end)}var ue="autobin"+a;return r._input[ue]===!1&&(r._input[i]=Ja.extendFlat({},r[i]||{}),delete r._input[ue],delete r[ue]),[I,p]}function b0e(e,r,t,a,n){var i=e._fullLayout,l=_0e(e,r),o=!1,s=1/0,u=[r],f,c,h;for(f=0;f=0;a--)o(a);else if(r==="increasing"){for(a=1;a=0;a--)e[a]+=e[a+1];t==="exclude"&&(e.push(0),e.shift())}}JI.exports={calc:x0e,calcAllAutoBins:J5}});var QI=B((hbe,KI)=>{"use strict";var T0e=o0().hoverPoints,M0e=Zr().hoverLabelText;KI.exports=function(r,t,a,n,i){var l=T0e(r,t,a,n,i);if(l){r=l[0];var o=r.cd[r.index],s=r.cd[0].trace;if(!s.cumulative.enabled){var u=s.orientation==="h"?"y":"x";r[u+"Label"]=M0e(r[u+"a"],[o.ph0,o.ph1],s[u+"hoverformat"])}return l}}});var eH=B((dbe,jI)=>{"use strict";jI.exports=function(r,t,a,n,i){if(r.x="xVal"in t?t.xVal:t.x,r.y="yVal"in t?t.yVal:t.y,"zLabelVal"in t&&(r.z=t.zLabelVal),t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),!(a.cumulative||{}).enabled){var l=Array.isArray(i)?n[0].pts[i[0]][i[1]]:n[i].pts;r.pointNumbers=l,r.binNumber=r.pointNumber,delete r.pointNumber,delete r.pointIndex;var o;if(a._indexToPoints){o=[];for(var s=0;s{"use strict";rH.exports={attributes:W5(),layoutAttributes:Zp(),supplyDefaults:AI(),crossTraceDefaults:CI(),supplyLayoutDefaults:I5(),calc:$I().calc,crossTraceCalc:yf().crossTraceCalc,plot:Nf().plot,layerName:"barlayer",style:ho().style,styleOnSelect:ho().styleOnSelect,colorbar:up(),hoverPoints:QI(),selectPoints:s0(),eventData:eH(),moduleType:"trace",name:"histogram",basePlotModule:gl(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}});var nH=B((mbe,aH)=>{"use strict";aH.exports=tH()});var lH=B((ybe,iH)=>{"use strict";iH.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}});var K5=B((gbe,fH)=>{"use strict";var pt=Tl(),$5=_i().line,A0e=tn(),oH=pi().axisHoverFormat,{hovertemplateAttrs:k0e,texttemplateAttrs:q0e,templatefallbackAttrs:sH}=gn(),uH=lH(),Ml=mt().extendFlat,S0e=xr();fH.exports={x:pt.x,x0:pt.x0,dx:pt.dx,y:pt.y,y0:pt.y0,dy:pt.dy,xperiod:pt.xperiod,yperiod:pt.yperiod,xperiod0:pt.xperiod0,yperiod0:pt.yperiod0,xperiodalignment:pt.xperiodalignment,yperiodalignment:pt.yperiodalignment,xhoverformat:oH("x"),yhoverformat:oH("y"),hovertext:pt.hovertext,hovertemplate:k0e({},{keys:uH.eventDataKeys}),hovertemplatefallback:sH(),hoverinfo:Ml({},A0e.hoverinfo,{flags:["name","x","y","text","percent initial","percent previous","percent total"]}),textinfo:{valType:"flaglist",flags:["label","text","percent initial","percent previous","percent total","value"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:q0e({editType:"plot"},{keys:uH.eventDataKeys.concat(["label","value"])}),texttemplatefallback:sH({editType:"plot"}),text:pt.text,textposition:pt.textposition,insidetextanchor:Ml({},pt.insidetextanchor,{dflt:"middle"}),textangle:Ml({},pt.textangle,{dflt:0}),textfont:pt.textfont,insidetextfont:pt.insidetextfont,outsidetextfont:pt.outsidetextfont,constraintext:pt.constraintext,cliponaxis:pt.cliponaxis,orientation:Ml({},pt.orientation,{}),offset:Ml({},pt.offset,{arrayOk:!1}),width:Ml({},pt.width,{arrayOk:!1}),marker:C0e(),connector:{fillcolor:{valType:"color",editType:"style"},line:{color:Ml({},$5.color,{dflt:S0e.defaultLine}),width:Ml({},$5.width,{dflt:0,editType:"plot"}),dash:$5.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:pt.offsetgroup,alignmentgroup:pt.alignmentgroup,zorder:pt.zorder};function C0e(){var e=Ml({},pt.marker);return delete e.pattern,delete e.cornerradius,e}});var Q5=B((xbe,cH)=>{"use strict";cH.exports={funnelmode:{valType:"enumerated",values:["stack","group","overlay"],dflt:"stack",editType:"calc"},funnelgap:{valType:"number",min:0,max:1,editType:"calc"},funnelgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var eb=B((bbe,hH)=>{"use strict";var nm=Pe(),L0e=df(),D0e=Ki().handleText,E0e=Iv(),P0e=ws(),vH=K5(),j5=xr();function R0e(e,r,t,a){function n(c,h){return nm.coerce(e,r,vH,c,h)}var i=E0e(e,r,a,n);if(!i){r.visible=!1;return}P0e(e,r,a,n),n("xhoverformat"),n("yhoverformat"),n("orientation",r.y&&!r.x?"v":"h"),n("offset"),n("width");var l=n("text");n("hovertext"),n("hovertemplate"),n("hovertemplatefallback");var o=n("textposition");D0e(e,r,a,n,o,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),r.textposition!=="none"&&!r.texttemplate&&n("textinfo",nm.isArrayOrTypedArray(l)?"text+value":"value");var s=n("marker.color",t);n("marker.line.color",j5.defaultLine),n("marker.line.width");var u=n("connector.visible");if(u){n("connector.fillcolor",z0e(s));var f=n("connector.line.width");f&&(n("connector.line.color"),n("connector.line.dash"))}n("zorder")}function z0e(e){var r=nm.isArrayOrTypedArray(e)?"#000":e;return j5.addOpacity(r,.5*j5.opacity(r))}function N0e(e,r){var t,a;function n(l){return nm.coerce(a._input,a,vH,l)}for(var i=0;i{"use strict";var F0e=Pe(),I0e=Q5();dH.exports=function(e,r,t){var a=!1;function n(o,s){return F0e.coerce(e,r,I0e,o,s)}for(var i=0;i{"use strict";var Hf=Pe();mH.exports=function(r,t){for(var a=0;a{"use strict";var gH=Zr(),xH=Ts(),H0e=yH(),O0e=Hv(),c0=wt().BADNUM;bH.exports=function(r,t){var a=gH.getFromId(r,t.xaxis||"x"),n=gH.getFromId(r,t.yaxis||"y"),i,l,o,s,u,f,c,h;t.orientation==="h"?(i=a.makeCalcdata(t,"x"),o=n.makeCalcdata(t,"y"),s=xH(t,n,"y",o),u=!!t.yperiodalignment,f="y"):(i=n.makeCalcdata(t,"y"),o=a.makeCalcdata(t,"x"),s=xH(t,a,"x",o),u=!!t.xperiodalignment,f="x"),l=s.vals;var d=Math.min(l.length,i.length),p=new Array(d);for(t._base=[],c=0;c{"use strict";var wH=yf().setGroupPositions;TH.exports=function(r,t){var a=r._fullLayout,n=r._fullData,i=r.calcdata,l=t.xaxis,o=t.yaxis,s=[],u=[],f=[],c,h;for(h=0;h{"use strict";var im=kr(),yo=Pe(),AH=Yr(),mo=wt().BADNUM,B0e=Nf(),Y0e=Ei().clearMinTextSize;qH.exports=function(r,t,a,n){var i=r._fullLayout;Y0e("funnel",i),V0e(r,t,a,n),G0e(r,t,a,n),B0e.plot(r,t,a,n,{mode:i.funnelmode,norm:i.funnelmode,gap:i.funnelgap,groupgap:i.funnelgroupgap})};function V0e(e,r,t,a){var n=r.xaxis,i=r.yaxis;yo.makeTraceGroups(a,t,"trace bars").each(function(l){var o=im.select(this),s=l[0].trace,u=yo.ensureSingle(o,"g","regions");if(!s.connector||!s.connector.visible){u.remove();return}var f=s.orientation==="h",c=u.selectAll("g.region").data(yo.identity);c.enter().append("g").classed("region",!0),c.exit().remove();var h=c.size();c.each(function(d,p){if(!(p!==h-1&&!d.cNext)){var y=kH(d,n,i,f),m=y[0],b=y[1],_="";m[0]!==mo&&b[0]!==mo&&m[1]!==mo&&b[1]!==mo&&m[2]!==mo&&b[2]!==mo&&m[3]!==mo&&b[3]!==mo&&(f?_+="M"+m[0]+","+b[1]+"L"+m[2]+","+b[2]+"H"+m[3]+"L"+m[1]+","+b[1]+"Z":_+="M"+m[1]+","+b[1]+"L"+m[2]+","+b[3]+"V"+b[2]+"L"+m[1]+","+b[0]+"Z"),_===""&&(_="M0,0Z"),yo.ensureSingle(im.select(this),"path").attr("d",_).call(AH.setClipUrl,r.layerClipId,e)}})})}function G0e(e,r,t,a){var n=r.xaxis,i=r.yaxis;yo.makeTraceGroups(a,t,"trace bars").each(function(l){var o=im.select(this),s=l[0].trace,u=yo.ensureSingle(o,"g","lines");if(!s.connector||!s.connector.visible||!s.connector.line.width){u.remove();return}var f=s.orientation==="h",c=u.selectAll("g.line").data(yo.identity);c.enter().append("g").classed("line",!0),c.exit().remove();var h=c.size();c.each(function(d,p){if(!(p!==h-1&&!d.cNext)){var y=kH(d,n,i,f),m=y[0],b=y[1],_="";m[3]!==void 0&&b[3]!==void 0&&(f?(_+="M"+m[0]+","+b[1]+"L"+m[2]+","+b[2],_+="M"+m[1]+","+b[1]+"L"+m[3]+","+b[2]):(_+="M"+m[1]+","+b[1]+"L"+m[2]+","+b[3],_+="M"+m[1]+","+b[0]+"L"+m[2]+","+b[2])),_===""&&(_="M0,0Z"),yo.ensureSingle(im.select(this),"path").attr("d",_).call(AH.setClipUrl,r.layerClipId,e)}})})}function kH(e,r,t,a){var n=[],i=[],l=a?r:t,o=a?t:r;return n[0]=l.c2p(e.s0,!0),i[0]=o.c2p(e.p0,!0),n[1]=l.c2p(e.s1,!0),i[1]=o.c2p(e.p1,!0),n[2]=l.c2p(e.nextS0,!0),i[2]=o.c2p(e.nextP0,!0),n[3]=l.c2p(e.nextS1,!0),i[3]=o.c2p(e.nextP1,!0),a?[n,i]:[i,n]}});var DH=B((kbe,LH)=>{"use strict";var v0=kr(),CH=Yr(),tb=xr(),U0e=yu().DESELECTDIM,W0e=ho(),X0e=Ei().resizeText,Z0e=W0e.styleTextPoints;function J0e(e,r,t){var a=t||v0.select(e).selectAll('g[class^="funnellayer"]').selectAll("g.trace");X0e(e,a,"funnel"),a.style("opacity",function(n){return n[0].trace.opacity}),a.each(function(n){var i=v0.select(this),l=n[0].trace;i.selectAll(".point > path").each(function(o){if(!o.isBlank){var s=l.marker;v0.select(this).call(tb.fill,o.mc||s.color).call(tb.stroke,o.mlc||s.line.color).call(CH.dashLine,s.line.dash,o.mlw||s.line.width).style("opacity",l.selectedpoints&&!o.selected?U0e:1)}}),Z0e(i,l,e),i.selectAll(".regions").each(function(){v0.select(this).selectAll("path").style("stroke-width",0).call(tb.fill,l.connector.fillcolor)}),i.selectAll(".lines").each(function(){var o=l.connector.line;CH.lineGroupStyle(v0.select(this).selectAll("path"),o.width,o.color,o.dash)})})}LH.exports={style:J0e}});var RH=B((qbe,PH)=>{"use strict";var EH=xr().opacity,$0e=o0().hoverOnBars,ab=Pe().formatPercent;PH.exports=function(r,t,a,n,i){var l=$0e(r,t,a,n,i);if(l){var o=l.cd,s=o[0].trace,u=s.orientation==="h",f=l.index,c=o[f],h=u?"x":"y";l[h+"LabelVal"]=c.s,l.percentInitial=c.begR,l.percentInitialLabel=ab(c.begR,1),l.percentPrevious=c.difR,l.percentPreviousLabel=ab(c.difR,1),l.percentTotal=c.sumR,l.percentTotalLabel=ab(c.sumR,1);var d=c.hi||s.hoverinfo,p=[];if(d&&d!=="none"&&d!=="skip"){var y=d==="all",m=d.split("+"),b=function(_){return y||m.indexOf(_)!==-1};b("percent initial")&&p.push(l.percentInitialLabel+" of initial"),b("percent previous")&&p.push(l.percentPreviousLabel+" of previous"),b("percent total")&&p.push(l.percentTotalLabel+" of total")}return l.extraText=p.join("
"),l.color=K0e(s,c),[l]}};function K0e(e,r){var t=e.marker,a=r.mc||t.color,n=r.mlc||t.line.color,i=r.mlw||t.line.width;if(EH(a))return a;if(EH(n)&&i)return n}});var NH=B((Sbe,zH)=>{"use strict";zH.exports=function(r,t){return r.x="xVal"in t?t.xVal:t.x,r.y="yVal"in t?t.yVal:t.y,"percentInitial"in t&&(r.percentInitial=t.percentInitial),"percentPrevious"in t&&(r.percentPrevious=t.percentPrevious),"percentTotal"in t&&(r.percentTotal=t.percentTotal),t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),r}});var IH=B((Cbe,FH)=>{"use strict";FH.exports={attributes:K5(),layoutAttributes:Q5(),supplyDefaults:eb().supplyDefaults,crossTraceDefaults:eb().crossTraceDefaults,supplyLayoutDefaults:pH(),calc:_H(),crossTraceCalc:MH(),plot:SH(),style:DH().style,hoverPoints:RH(),eventData:NH(),selectPoints:s0(),moduleType:"trace",name:"funnel",basePlotModule:gl(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var OH=B((Lbe,HH)=>{"use strict";HH.exports=IH()});var YH=B((Dbe,BH)=>{"use strict";BH.exports={eventDataKeys:["initial","delta","final"]}});var lb=B((Ebe,WH)=>{"use strict";var st=Tl(),nb=_i().line,Q0e=tn(),VH=pi().axisHoverFormat,{hovertemplateAttrs:j0e,texttemplateAttrs:ehe,templatefallbackAttrs:GH}=gn(),UH=YH(),Of=mt().extendFlat,rhe=xr();function ib(e){return{marker:{color:Of({},st.marker.color,{arrayOk:!1,editType:"style"}),line:{color:Of({},st.marker.line.color,{arrayOk:!1,editType:"style"}),width:Of({},st.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}WH.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:st.x,x0:st.x0,dx:st.dx,y:st.y,y0:st.y0,dy:st.dy,xperiod:st.xperiod,yperiod:st.yperiod,xperiod0:st.xperiod0,yperiod0:st.yperiod0,xperiodalignment:st.xperiodalignment,yperiodalignment:st.yperiodalignment,xhoverformat:VH("x"),yhoverformat:VH("y"),hovertext:st.hovertext,hovertemplate:j0e({},{keys:UH.eventDataKeys}),hovertemplatefallback:GH(),hoverinfo:Of({},Q0e.hoverinfo,{flags:["name","x","y","text","initial","delta","final"]}),textinfo:{valType:"flaglist",flags:["label","text","initial","delta","final"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:ehe({editType:"plot"},{keys:UH.eventDataKeys.concat(["label"])}),texttemplatefallback:GH({editType:"plot"}),text:st.text,textposition:st.textposition,insidetextanchor:st.insidetextanchor,textangle:st.textangle,textfont:st.textfont,insidetextfont:st.insidetextfont,outsidetextfont:st.outsidetextfont,constraintext:st.constraintext,cliponaxis:st.cliponaxis,orientation:st.orientation,offset:st.offset,width:st.width,increasing:ib("increasing"),decreasing:ib("decreasing"),totals:ib("intermediate sums and total"),connector:{line:{color:Of({},nb.color,{dflt:rhe.defaultLine}),width:Of({},nb.width,{editType:"plot"}),dash:nb.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:st.offsetgroup,alignmentgroup:st.alignmentgroup,zorder:st.zorder}});var ob=B((Pbe,XH)=>{"use strict";XH.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc"},waterfallgap:{valType:"number",min:0,max:1,editType:"calc"},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var Bf=B((Rbe,ZH)=>{"use strict";ZH.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}});var ub=B((zbe,QH)=>{"use strict";var JH=Pe(),the=df(),ahe=Ki().handleText,nhe=Iv(),ihe=ws(),$H=lb(),lhe=xr(),KH=Bf(),ohe=KH.INCREASING.COLOR,she=KH.DECREASING.COLOR,uhe="#4499FF";function sb(e,r,t){e(r+".marker.color",t),e(r+".marker.line.color",lhe.defaultLine),e(r+".marker.line.width")}function fhe(e,r,t,a){function n(u,f){return JH.coerce(e,r,$H,u,f)}var i=nhe(e,r,a,n);if(!i){r.visible=!1;return}ihe(e,r,a,n),n("xhoverformat"),n("yhoverformat"),n("measure"),n("orientation",r.x&&!r.y?"h":"v"),n("base"),n("offset"),n("width"),n("text"),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback");var l=n("textposition");ahe(e,r,a,n,l,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),r.textposition!=="none"&&(n("texttemplate"),n("texttemplatefallback"),r.texttemplate||n("textinfo")),sb(n,"increasing",ohe),sb(n,"decreasing",she),sb(n,"totals",uhe);var o=n("connector.visible");if(o){n("connector.mode");var s=n("connector.line.width");s&&(n("connector.line.color"),n("connector.line.dash"))}n("zorder")}function che(e,r){var t,a;function n(l){return JH.coerce(a._input,a,$H,l)}if(r.waterfallmode==="group")for(var i=0;i{"use strict";var vhe=Pe(),hhe=ob();jH.exports=function(e,r,t){var a=!1;function n(o,s){return vhe.coerce(e,r,hhe,o,s)}for(var i=0;i{"use strict";var rO=Zr(),tO=Ts(),aO=Pe().mergeArray,dhe=Hv(),nO=wt().BADNUM;function fb(e){return e==="a"||e==="absolute"}function cb(e){return e==="t"||e==="total"}iO.exports=function(r,t){var a=rO.getFromId(r,t.xaxis||"x"),n=rO.getFromId(r,t.yaxis||"y"),i,l,o,s,u,f;t.orientation==="h"?(i=a.makeCalcdata(t,"x"),o=n.makeCalcdata(t,"y"),s=tO(t,n,"y",o),u=!!t.yperiodalignment,f="y"):(i=n.makeCalcdata(t,"y"),o=a.makeCalcdata(t,"x"),s=tO(t,a,"x",o),u=!!t.xperiodalignment,f="x"),l=s.vals;for(var c=Math.min(l.length,i.length),h=new Array(c),d=0,p,y=!1,m=0;m{"use strict";var oO=yf().setGroupPositions;sO.exports=function(r,t){var a=r._fullLayout,n=r._fullData,i=r.calcdata,l=t.xaxis,o=t.yaxis,s=[],u=[],f=[],c,h;for(h=0;h{"use strict";var fO=kr(),lm=Pe(),phe=Yr(),Yf=wt().BADNUM,mhe=Nf(),yhe=Ei().clearMinTextSize;cO.exports=function(r,t,a,n){var i=r._fullLayout;yhe("waterfall",i),mhe.plot(r,t,a,n,{mode:i.waterfallmode,norm:i.waterfallmode,gap:i.waterfallgap,groupgap:i.waterfallgroupgap}),ghe(r,t,a,n)};function ghe(e,r,t,a){var n=r.xaxis,i=r.yaxis;lm.makeTraceGroups(a,t,"trace bars").each(function(l){var o=fO.select(this),s=l[0].trace,u=lm.ensureSingle(o,"g","lines");if(!s.connector||!s.connector.visible){u.remove();return}var f=s.orientation==="h",c=s.connector.mode,h=u.selectAll("g.line").data(lm.identity);h.enter().append("g").classed("line",!0),h.exit().remove();var d=h.size();h.each(function(p,y){if(!(y!==d-1&&!p.cNext)){var m=xhe(p,n,i,f),b=m[0],_=m[1],w="";b[0]!==Yf&&_[0]!==Yf&&b[1]!==Yf&&_[1]!==Yf&&(c==="spanning"&&!p.isSum&&y>0&&(f?w+="M"+b[0]+","+_[1]+"V"+_[0]:w+="M"+b[1]+","+_[0]+"H"+b[0]),c!=="between"&&(p.isSum||y{"use strict";var om=kr(),hO=Yr(),dO=xr(),bhe=yu().DESELECTDIM,_he=ho(),whe=Ei().resizeText,The=_he.styleTextPoints;function Mhe(e,r,t){var a=t||om.select(e).selectAll('g[class^="waterfalllayer"]').selectAll("g.trace");whe(e,a,"waterfall"),a.style("opacity",function(n){return n[0].trace.opacity}),a.each(function(n){var i=om.select(this),l=n[0].trace;i.selectAll(".point > path").each(function(o){if(!o.isBlank){var s=l[o.dir].marker;om.select(this).call(dO.fill,s.color).call(dO.stroke,s.line.color).call(hO.dashLine,s.line.dash,s.line.width).style("opacity",l.selectedpoints&&!o.selected?bhe:1)}}),The(i,l,e),i.selectAll(".lines").each(function(){var o=l.connector.line;hO.lineGroupStyle(om.select(this).selectAll("path"),o.width,o.color,o.dash)})})}pO.exports={style:Mhe}});var _O=B((Bbe,bO)=>{"use strict";var Ahe=Zr().hoverLabelText,yO=xr().opacity,khe=o0().hoverOnBars,gO=Bf(),xO={increasing:gO.INCREASING.SYMBOL,decreasing:gO.DECREASING.SYMBOL};bO.exports=function(r,t,a,n,i){var l=khe(r,t,a,n,i);if(!l)return;var o=l.cd,s=o[0].trace,u=s.orientation==="h",f=u?"x":"y",c=u?r.xa:r.ya;function h(k){return Ahe(c,k,s[f+"hoverformat"])}var d=l.index,p=o[d],y=p.isSum?p.b+p.s:p.rawS;l.initial=p.b+p.s-y,l.delta=y,l.final=l.initial+l.delta;var m=h(Math.abs(l.delta));l.deltaLabel=y<0?"("+m+")":m,l.finalLabel=h(l.final),l.initialLabel=h(l.initial);var b=p.hi||s.hoverinfo,_=[];if(b&&b!=="none"&&b!=="skip"){var w=b==="all",x=b.split("+"),M=function(k){return w||x.indexOf(k)!==-1};p.isSum||(M("final")&&(u?!M("x"):!M("y"))&&_.push(l.finalLabel),M("delta")&&(y<0?_.push(l.deltaLabel+" "+xO.decreasing):_.push(l.deltaLabel+" "+xO.increasing)),M("initial")&&_.push("Initial: "+l.initialLabel))}return _.length&&(l.extraText=_.join("
")),l.color=qhe(s,p),[l]};function qhe(e,r){var t=e[r.dir].marker,a=t.color,n=t.line.color,i=t.line.width;if(yO(a))return a;if(yO(n)&&i)return n}});var TO=B((Ybe,wO)=>{"use strict";wO.exports=function(r,t){return r.x="xVal"in t?t.xVal:t.x,r.y="yVal"in t?t.yVal:t.y,"initial"in t&&(r.initial=t.initial),"delta"in t&&(r.delta=t.delta),"final"in t&&(r.final=t.final),t.xa&&(r.xaxis=t.xa),t.ya&&(r.yaxis=t.ya),r}});var AO=B((Vbe,MO)=>{"use strict";MO.exports={attributes:lb(),layoutAttributes:ob(),supplyDefaults:ub().supplyDefaults,crossTraceDefaults:ub().crossTraceDefaults,supplyLayoutDefaults:eO(),calc:lO(),crossTraceCalc:uO(),plot:vO(),style:mO().style,hoverPoints:_O(),eventData:TO(),selectPoints:s0(),moduleType:"trace",name:"waterfall",basePlotModule:gl(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var qO=B((Gbe,kO)=>{"use strict";kO.exports=AO()});var um=B((Ube,CO)=>{"use strict";var vb=tn(),She=fo().attributes,Che=aa(),Lhe=Fn(),{hovertemplateAttrs:Dhe,texttemplateAttrs:Ehe,templatefallbackAttrs:SO}=gn(),Ns=mt().extendFlat,Phe=ci().pattern,sm=Che({editType:"plot",arrayOk:!0,colorEditType:"plot"});CO.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:Lhe.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:Phe,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:Ns({},vb.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:Dhe({},{keys:["label","color","value","percent","text"]}),hovertemplatefallback:SO(),texttemplate:Ehe({editType:"plot"},{keys:["label","color","value","percent","text"]}),texttemplatefallback:SO({editType:"plot"}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:Ns({},sm,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:Ns({},sm,{}),outsidetextfont:Ns({},sm,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:Ns({},vb.showlegend,{arrayOk:!0}),legend:Ns({},vb.legend,{arrayOk:!0}),title:{text:{valType:"string",dflt:"",editType:"plot"},font:Ns({},sm,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:She({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}});var fm=B((Wbe,EO)=>{"use strict";var Rhe=zr(),h0=Pe(),zhe=um(),Nhe=fo().defaults,Fhe=Ki().handleText,Ihe=Pe().coercePattern;function LO(e,r){var t=h0.isArrayOrTypedArray(e),a=h0.isArrayOrTypedArray(r),n=Math.min(t?e.length:1/0,a?r.length:1/0);if(isFinite(n)||(n=0),n&&a){for(var i,l=0;l0){i=!0;break}}i||(n=0)}return{hasLabels:t,hasValues:a,len:n}}function DO(e,r,t,a,n){var i=a("marker.line.width");i&&a("marker.line.color",n?void 0:t.paper_bgcolor);var l=a("marker.colors");Ihe(a,"marker.pattern",l),e.marker&&!r.marker.pattern.fgcolor&&(r.marker.pattern.fgcolor=e.marker.colors),r.marker.pattern.bgcolor||(r.marker.pattern.bgcolor=t.paper_bgcolor)}function Hhe(e,r,t,a){function n(_,w){return h0.coerce(e,r,zhe,_,w)}var i=n("labels"),l=n("values"),o=LO(i,l),s=o.len;if(r._hasLabels=o.hasLabels,r._hasValues=o.hasValues,!r._hasLabels&&r._hasValues&&(n("label0"),n("dlabel")),!s){r.visible=!1;return}r._length=s,DO(e,r,a,n,!0),n("scalegroup");var u=n("text"),f=n("texttemplate");n("texttemplatefallback");var c;if(f||(c=n("textinfo",h0.isArrayOrTypedArray(u)?"text+percent":"percent")),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback"),f||c&&c!=="none"){var h=n("textposition");Fhe(e,r,a,n,h,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var d=Array.isArray(h)||h==="auto",p=d||h==="outside";p&&n("automargin"),(h==="inside"||h==="auto"||Array.isArray(h))&&n("insidetextorientation")}else c==="none"&&n("textposition","none");Nhe(r,a,n);var y=n("hole"),m=n("title.text");if(m){var b=n("title.position",y?"middle center":"top center");!y&&b==="middle center"&&(r.title.position="top center"),h0.coerceFont(n,"title.font",a.font)}n("sort"),n("direction"),n("rotation"),n("pull")}EO.exports={handleLabelsAndValues:LO,handleMarkerDefaults:DO,supplyDefaults:Hhe}});var cm=B((Xbe,PO)=>{"use strict";PO.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var zO=B((Zbe,RO)=>{"use strict";var Ohe=Pe(),Bhe=cm();RO.exports=function(r,t){function a(n,i){return Ohe.coerce(r,t,Bhe,n,i)}a("hiddenlabels"),a("piecolorway",t.colorway),a("extendpiecolors")}});var vm=B((Jbe,IO)=>{"use strict";var Yhe=zr(),hb=Nn(),Vhe=xr(),Ghe={};function Uhe(e,r){var t=[],a=e._fullLayout,n=a.hiddenlabels||[],i=r.labels,l=r.marker.colors||[],o=r.values,s=r._length,u=r._hasValues&&s,f,c;if(r.dlabel)for(i=new Array(s),f=0;f=0});var x=r.type==="funnelarea"?y:r.sort;return x&&t.sort(function(M,k){return k.v-M.v}),t[0]&&(t[0].vTotal=p),t}function NO(e){return function(t,a){return!t||(t=hb(t),!t.isValid())?!1:(t=Vhe.addOpacity(t,t.getAlpha()),e[a]||(e[a]=t),t)}}function Whe(e,r){var t=(r||{}).type;t||(t="pie");var a=e._fullLayout,n=e.calcdata,i=a[t+"colorway"],l=a["_"+t+"colormap"];a["extend"+t+"colors"]&&(i=FO(i,Ghe));for(var o=0,s=0;s{"use strict";var Xhe=Hi().appendArrayMultiPointValues;HO.exports=function(r,t){var a={curveNumber:t.index,pointNumbers:r.pts,data:t._input,fullData:t,label:r.label,color:r.color,value:r.v,percent:r.percent,text:r.text,bbox:r.bbox,v:r.v};return r.pts.length===1&&(a.pointNumber=a.i=r.pts[0]),Xhe(a,t,r.pts),t.type==="funnelarea"&&(delete a.v,delete a.i),a}});var mb=B((Kbe,oB)=>{"use strict";var pn=kr(),Zhe=Rt(),hm=xi(),WO=xr(),Al=Yr(),Sa=Pe(),Jhe=Sa.strScale,BO=Sa.strTranslate,db=va(),XO=Ei(),$he=XO.recordMinTextSize,Khe=XO.clearMinTextSize,ZO=Xp().TEXTPAD,Tr=av(),dm=OO(),YO=Pe().isValidTextValue;function Qhe(e,r){var t=e._context.staticPlot,a=e._fullLayout,n=a._size;Khe("pie",a),KO(r,e),nB(r,n);var i=Sa.makeTraceGroups(a._pielayer,r,"trace").each(function(l){var o=pn.select(this),s=l[0],u=s.trace;ode(l),o.attr("stroke-linejoin","round"),o.each(function(){var f=pn.select(this).selectAll("g.slice").data(l);f.enter().append("g").classed("slice",!0),f.exit().remove();var c=[[[],[]],[[],[]]],h=!1;f.each(function(x,M){if(x.hidden){pn.select(this).selectAll("path,g").remove();return}x.pointNumber=x.i,x.curveNumber=u.index,c[x.pxmid[1]<0?0:1][x.pxmid[0]<0?0:1].push(x);var k=s.cx,A=s.cy,C=pn.select(this),D=C.selectAll("path.surface").data([x]);if(D.enter().append("path").classed("surface",!0).style({"pointer-events":t?"none":"all"}),C.call(JO,e,l),u.pull){var E=+Tr.castOption(u.pull,x.pts)||0;E>0&&(k+=E*x.pxmid[0],A+=E*x.pxmid[1])}x.cxFinal=k,x.cyFinal=A;function R(O,Y,Z,J){var ee=J*(Y[0]-O[0]),le=J*(Y[1]-O[1]);return"a"+J*s.r+","+J*s.r+" 0 "+x.largeArc+(Z?" 1 ":" 0 ")+ee+","+le}var N=u.hole;if(x.v===s.vTotal){var I="M"+(k+x.px0[0])+","+(A+x.px0[1])+R(x.px0,x.pxmid,!0,1)+R(x.pxmid,x.px0,!0,1)+"Z";N?D.attr("d","M"+(k+N*x.px0[0])+","+(A+N*x.px0[1])+R(x.px0,x.pxmid,!1,N)+R(x.pxmid,x.px0,!1,N)+"Z"+I):D.attr("d",I)}else{var H=R(x.px0,x.px1,!0,1);if(N){var G=1-N;D.attr("d","M"+(k+N*x.px1[0])+","+(A+N*x.px1[1])+R(x.px1,x.px0,!1,N)+"l"+G*x.px0[0]+","+G*x.px0[1]+H+"Z")}else D.attr("d","M"+k+","+A+"l"+x.px0[0]+","+x.px0[1]+H+"Z")}iB(e,x,s);var W=Tr.castOption(u.textposition,x.pts),V=C.selectAll("g.slicetext").data(x.text&&W!=="none"?[0]:[]);V.enter().append("g").classed("slicetext",!0),V.exit().remove(),V.each(function(){var O=Sa.ensureSingle(pn.select(this),"text","",function(j){j.attr("data-notex",1)}),Y=Sa.ensureUniformFontSize(e,W==="outside"?ede(u,x,a.font):$O(u,x,a.font));O.text(x.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(Al.font,Y).call(db.convertToTspans,e);var Z=Al.bBox(O.node()),J;if(W==="outside")J=UO(Z,x);else if(J=QO(Z,x,s),W==="auto"&&J.scale<1){var ee=Sa.ensureUniformFontSize(e,u.outsidetextfont);O.call(Al.font,ee),Z=Al.bBox(O.node()),J=UO(Z,x)}var le=J.textPosAngle,ue=le===void 0?x.pxmid:pm(s.r,le);if(J.targetX=k+ue[0]*J.rCenter+(J.x||0),J.targetY=A+ue[1]*J.rCenter+(J.y||0),lB(J,Z),J.outside){var ve=J.targetY;x.yLabelMin=ve-Z.height/2,x.yLabelMid=ve,x.yLabelMax=ve+Z.height/2,x.labelExtraX=0,x.labelExtraY=0,h=!0}J.fontSize=Y.size,$he(u.type,J,a),l[M].transform=J,Sa.setTransormAndDisplay(O,J)})});var d=pn.select(this).selectAll("g.titletext").data(u.title.text?[0]:[]);if(d.enter().append("g").classed("titletext",!0),d.exit().remove(),d.each(function(){var x=Sa.ensureSingle(pn.select(this),"text","",function(A){A.attr("data-notex",1)}),M=u.title.text;u._meta&&(M=Sa.templateString(M,u._meta)),x.text(M).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(Al.font,u.title.font).call(db.convertToTspans,e);var k;u.title.position==="middle center"?k=ade(s):k=tB(s,n),x.attr("transform",BO(k.x,k.y)+Jhe(Math.min(1,k.scale))+BO(k.tx,k.ty))}),h&&ide(c,u),jhe(f,u),h&&u.automargin){var p=Al.bBox(o.node()),y=u.domain,m=n.w*(y.x[1]-y.x[0]),b=n.h*(y.y[1]-y.y[0]),_=(.5*m-s.r)/n.w,w=(.5*b-s.r)/n.h;Zhe.autoMargin(e,"pie."+u.uid+".automargin",{xl:y.x[0]-_,xr:y.x[1]+_,yb:y.y[0]-w,yt:y.y[1]+w,l:Math.max(s.cx-s.r-p.left,0),r:Math.max(p.right-(s.cx+s.r),0),b:Math.max(p.bottom-(s.cy+s.r),0),t:Math.max(s.cy-s.r-p.top,0),pad:5})}})});setTimeout(function(){i.selectAll("tspan").each(function(){var l=pn.select(this);l.attr("dy")&&l.attr("dy",l.attr("dy"))})},0)}function jhe(e,r){e.each(function(t){var a=pn.select(this);if(!t.labelExtraX&&!t.labelExtraY){a.select("path.textline").remove();return}var n=a.select("g.slicetext text");t.transform.targetX+=t.labelExtraX,t.transform.targetY+=t.labelExtraY,Sa.setTransormAndDisplay(n,t.transform);var i=t.cxFinal+t.pxmid[0],l=t.cyFinal+t.pxmid[1],o="M"+i+","+l,s=(t.yLabelMax-t.yLabelMin)*(t.pxmid[0]<0?-1:1)/4;if(t.labelExtraX){var u=t.labelExtraX*t.pxmid[1]/t.pxmid[0],f=t.yLabelMid+t.labelExtraY-(t.cyFinal+t.pxmid[1]);Math.abs(u)>Math.abs(f)?o+="l"+f*t.pxmid[0]/t.pxmid[1]+","+f+"H"+(i+t.labelExtraX+s):o+="l"+t.labelExtraX+","+u+"v"+(f-u)+"h"+s}else o+="V"+(t.yLabelMid+t.labelExtraY)+"h"+s;Sa.ensureSingle(a,"path","textline").call(WO.stroke,r.outsidetextfont.color).attr({"stroke-width":Math.min(2,r.outsidetextfont.size/8),d:o,fill:"none"})})}function JO(e,r,t){var a=t[0],n=a.cx,i=a.cy,l=a.trace,o=l.type==="funnelarea";"_hasHoverLabel"in l||(l._hasHoverLabel=!1),"_hasHoverEvent"in l||(l._hasHoverEvent=!1),e.on("mouseover",function(s){var u=r._fullLayout,f=r._fullData[l.index];if(!(r._dragging||u.hovermode===!1)){var c=f.hoverinfo;if(Array.isArray(c)&&(c=hm.castHoverinfo({hoverinfo:[Tr.castOption(c,s.pts)],_module:l._module},u,0)),c==="all"&&(c="label+text+value+percent+name"),f.hovertemplate||c!=="none"&&c!=="skip"&&c){var h=s.rInscribed||0,d=n+s.pxmid[0]*(1-h),p=i+s.pxmid[1]*(1-h),y=u.separators,m=[];if(c&&c.indexOf("label")!==-1&&m.push(s.label),s.text=Tr.castOption(f.hovertext||f.text,s.pts),c&&c.indexOf("text")!==-1){var b=s.text;Sa.isValidTextValue(b)&&m.push(b)}s.value=s.v,s.valueLabel=Tr.formatPieValue(s.v,y),c&&c.indexOf("value")!==-1&&m.push(s.valueLabel),s.percent=s.v/a.vTotal,s.percentLabel=Tr.formatPiePercent(s.percent,y),c&&c.indexOf("percent")!==-1&&m.push(s.percentLabel);var _=f.hoverlabel,w=_.font,x=[];hm.loneHover({trace:l,x0:d-h*a.r,x1:d+h*a.r,y:p,_x0:o?n+s.TL[0]:d-h*a.r,_x1:o?n+s.TR[0]:d+h*a.r,_y0:o?i+s.TL[1]:p-h*a.r,_y1:o?i+s.BL[1]:p+h*a.r,text:m.join("
"),name:f.hovertemplate||c.indexOf("name")!==-1?f.name:void 0,idealAlign:s.pxmid[0]<0?"left":"right",color:Tr.castOption(_.bgcolor,s.pts)||s.color,borderColor:Tr.castOption(_.bordercolor,s.pts),fontFamily:Tr.castOption(w.family,s.pts),fontSize:Tr.castOption(w.size,s.pts),fontColor:Tr.castOption(w.color,s.pts),nameLength:Tr.castOption(_.namelength,s.pts),textAlign:Tr.castOption(_.align,s.pts),hovertemplate:Tr.castOption(f.hovertemplate,s.pts),hovertemplateLabels:s,eventData:[dm(s,f)]},{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:r,inOut_bbox:x}),s.bbox=x[0],l._hasHoverLabel=!0}l._hasHoverEvent=!0,r.emit("plotly_hover",{points:[dm(s,f)],event:pn.event})}}),e.on("mouseout",function(s){var u=r._fullLayout,f=r._fullData[l.index],c=pn.select(this).datum();l._hasHoverEvent&&(s.originalEvent=pn.event,r.emit("plotly_unhover",{points:[dm(c,f)],event:pn.event}),l._hasHoverEvent=!1),l._hasHoverLabel&&(hm.loneUnhover(u._hoverlayer.node()),l._hasHoverLabel=!1)}),e.on("click",function(s){var u=r._fullLayout,f=r._fullData[l.index];r._dragging||u.hovermode===!1||(r._hoverdata=[dm(s,f)],hm.click(r,pn.event))})}function ede(e,r,t){var a=Tr.castOption(e.outsidetextfont.color,r.pts)||Tr.castOption(e.textfont.color,r.pts)||t.color,n=Tr.castOption(e.outsidetextfont.family,r.pts)||Tr.castOption(e.textfont.family,r.pts)||t.family,i=Tr.castOption(e.outsidetextfont.size,r.pts)||Tr.castOption(e.textfont.size,r.pts)||t.size,l=Tr.castOption(e.outsidetextfont.weight,r.pts)||Tr.castOption(e.textfont.weight,r.pts)||t.weight,o=Tr.castOption(e.outsidetextfont.style,r.pts)||Tr.castOption(e.textfont.style,r.pts)||t.style,s=Tr.castOption(e.outsidetextfont.variant,r.pts)||Tr.castOption(e.textfont.variant,r.pts)||t.variant,u=Tr.castOption(e.outsidetextfont.textcase,r.pts)||Tr.castOption(e.textfont.textcase,r.pts)||t.textcase,f=Tr.castOption(e.outsidetextfont.lineposition,r.pts)||Tr.castOption(e.textfont.lineposition,r.pts)||t.lineposition,c=Tr.castOption(e.outsidetextfont.shadow,r.pts)||Tr.castOption(e.textfont.shadow,r.pts)||t.shadow;return{color:a,family:n,size:i,weight:l,style:o,variant:s,textcase:u,lineposition:f,shadow:c}}function $O(e,r,t){var a=Tr.castOption(e.insidetextfont.color,r.pts);!a&&e._input.textfont&&(a=Tr.castOption(e._input.textfont.color,r.pts));var n=Tr.castOption(e.insidetextfont.family,r.pts)||Tr.castOption(e.textfont.family,r.pts)||t.family,i=Tr.castOption(e.insidetextfont.size,r.pts)||Tr.castOption(e.textfont.size,r.pts)||t.size,l=Tr.castOption(e.insidetextfont.weight,r.pts)||Tr.castOption(e.textfont.weight,r.pts)||t.weight,o=Tr.castOption(e.insidetextfont.style,r.pts)||Tr.castOption(e.textfont.style,r.pts)||t.style,s=Tr.castOption(e.insidetextfont.variant,r.pts)||Tr.castOption(e.textfont.variant,r.pts)||t.variant,u=Tr.castOption(e.insidetextfont.textcase,r.pts)||Tr.castOption(e.textfont.textcase,r.pts)||t.textcase,f=Tr.castOption(e.insidetextfont.lineposition,r.pts)||Tr.castOption(e.textfont.lineposition,r.pts)||t.lineposition,c=Tr.castOption(e.insidetextfont.shadow,r.pts)||Tr.castOption(e.textfont.shadow,r.pts)||t.shadow;return{color:a||WO.contrast(r.color),family:n,size:i,weight:l,style:o,variant:s,textcase:u,lineposition:f,shadow:c}}function KO(e,r){for(var t,a,n=0;n=-4;_-=2)b(Math.PI*_,"tan");for(_=4;_>=-4;_-=2)b(Math.PI*(_+1),"tan")}if(c||d){for(_=4;_>=-4;_-=2)b(Math.PI*(_+1.5),"rad");for(_=4;_>=-4;_-=2)b(Math.PI*(_+.5),"rad")}}if(o||p||c){var w=Math.sqrt(e.width*e.width+e.height*e.height);if(m={scale:n*a*2/w,rCenter:1-n,rotate:0},m.textPosAngle=(r.startangle+r.stopangle)/2,m.scale>=1)return m;y.push(m)}(p||d)&&(m=VO(e,a,l,s,u),m.textPosAngle=(r.startangle+r.stopangle)/2,y.push(m)),(p||h)&&(m=GO(e,a,l,s,u),m.textPosAngle=(r.startangle+r.stopangle)/2,y.push(m));for(var x=0,M=0,k=0;k=1)break}return y[x]}function rde(e,r){var t=e.startangle,a=e.stopangle;return t>r&&r>a||t0?1:-1)/2,y:i/(1+t*t/(a*a)),outside:!0}}function ade(e){var r=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/r,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}function tB(e,r){var t=1,a=1,n,i=e.trace,l={x:e.cx,y:e.cy},o={tx:0,ty:0};o.ty+=i.title.font.size,n=aB(i),i.title.position.indexOf("top")!==-1?(l.y-=(1+n)*e.r,o.ty-=e.titleBox.height):i.title.position.indexOf("bottom")!==-1&&(l.y+=(1+n)*e.r);var s=nde(e.r,e.trace.aspectratio),u=r.w*(i.domain.x[1]-i.domain.x[0])/2;return i.title.position.indexOf("left")!==-1?(u=u+s,l.x-=(1+n)*s,o.tx+=e.titleBox.width/2):i.title.position.indexOf("center")!==-1?u*=2:i.title.position.indexOf("right")!==-1&&(u=u+s,l.x+=(1+n)*s,o.tx-=e.titleBox.width/2),t=u/e.titleBox.width,a=pb(e,r)/e.titleBox.height,{x:l.x,y:l.y,scale:Math.min(t,a),tx:o.tx,ty:o.ty}}function nde(e,r){return e/(r===void 0?1:r)}function pb(e,r){var t=e.trace,a=r.h*(t.domain.y[1]-t.domain.y[0]);return Math.min(e.titleBox.height,a/2)}function aB(e){var r=e.pull;if(!r)return 0;var t;if(Sa.isArrayOrTypedArray(r))for(r=0,t=0;tr&&(r=e.pull[t]);return r}function ide(e,r){var t,a,n,i,l,o,s,u,f,c,h,d,p;function y(w,x){return w.pxmid[1]-x.pxmid[1]}function m(w,x){return x.pxmid[1]-w.pxmid[1]}function b(w,x){x||(x={});var M=x.labelExtraY+(a?x.yLabelMax:x.yLabelMin),k=a?w.yLabelMin:w.yLabelMax,A=a?w.yLabelMax:w.yLabelMin,C=w.cyFinal+l(w.px0[1],w.px1[1]),D=M-k,E,R,N,I,H,G;if(D*s>0&&(w.labelExtraY=D),!!Sa.isArrayOrTypedArray(r.pull))for(R=0;R=(Tr.castOption(r.pull,N.pts)||0))&&((w.pxmid[1]-N.pxmid[1])*s>0?(I=N.cyFinal+l(N.px0[1],N.px1[1]),D=I-k-w.labelExtraY,D*s>0&&(w.labelExtraY+=D)):(A+w.labelExtraY-C)*s>0&&(E=3*o*Math.abs(R-c.indexOf(w)),H=N.cxFinal+i(N.px0[0],N.px1[0]),G=H+E-(w.cxFinal+w.pxmid[0])-w.labelExtraX,G*o>0&&(w.labelExtraX+=G)))}for(a=0;a<2;a++)for(n=a?y:m,l=a?Math.max:Math.min,s=a?1:-1,t=0;t<2;t++){for(i=t?Math.max:Math.min,o=t?1:-1,u=e[a][t],u.sort(n),f=e[1-a][t],c=f.concat(u),d=[],h=0;h1?(u=t.r,f=u/n.aspectratio):(f=t.r,u=f*n.aspectratio),u*=(1+n.baseratio)/2,s=u*f}l=Math.min(l,s/t.vTotal)}for(a=0;ar.vTotal/2?1:0,u.halfangle=Math.PI*Math.min(u.v/r.vTotal,.5),u.ring=1-a.hole,u.rInscribed=tde(u,r))}function pm(e,r){return[e*Math.sin(r),-e*Math.cos(r)]}function iB(e,r,t){var a=e._fullLayout,n=t.trace,i=n.texttemplate,l=n.textinfo;if(!i&&l&&l!=="none"){var o=l.split("+"),s=function(x){return o.indexOf(x)!==-1},u=s("label"),f=s("text"),c=s("value"),h=s("percent"),d=a.separators,p;if(p=u?[r.label]:[],f){var y=Tr.getFirstFilled(n.text,r.pts);YO(y)&&p.push(y)}c&&p.push(Tr.formatPieValue(r.v,d)),h&&p.push(Tr.formatPiePercent(r.v/t.vTotal,d)),r.text=p.join("
")}function m(x){return{label:x.label,value:x.v,valueLabel:Tr.formatPieValue(x.v,a.separators),percent:x.v/t.vTotal,percentLabel:Tr.formatPiePercent(x.v/t.vTotal,a.separators),color:x.color,text:x.text,customdata:Sa.castOption(n,x.i,"customdata")}}if(i){var b=Sa.castOption(n,r.i,"texttemplate");if(!b)r.text="";else{var _=m(r),w=Tr.getFirstFilled(n.text,r.pts);(YO(w)||w==="")&&(_.text=w),r.text=Sa.texttemplateString({data:[_,n._meta],fallback:n.texttemplatefallback,labels:_,locale:e._fullLayout._d3locale,template:b})}}}function lB(e,r){var t=e.rotate*Math.PI/180,a=Math.cos(t),n=Math.sin(t),i=(r.left+r.right)/2,l=(r.top+r.bottom)/2;e.textX=i*a-l*n,e.textY=i*n+l*a,e.noCenter=!0}oB.exports={plot:Qhe,formatSliceLabel:iB,transformInsideText:QO,determineInsideTextFont:$O,positionTitleOutside:tB,prerenderTitles:KO,layoutAreas:nB,attachFxHandlers:JO,computeTransform:lB}});var fB=B((Qbe,uB)=>{"use strict";var sB=kr(),sde=Zu(),ude=Ei().resizeText;uB.exports=function(r){var t=r._fullLayout._pielayer.selectAll(".trace");ude(r,t,"pie"),t.each(function(a){var n=a[0],i=n.trace,l=sB.select(this);l.style({opacity:i.opacity}),l.selectAll("path.surface").each(function(o){sB.select(this).call(sde,o,i,r)})})}});var vB=B(Vf=>{"use strict";var cB=Rt();Vf.name="pie";Vf.plot=function(e,r,t,a){cB.plotBasePlot(Vf.name,e,r,t,a)};Vf.clean=function(e,r,t,a){cB.cleanBasePlot(Vf.name,e,r,t,a)}});var dB=B((e_e,hB)=>{"use strict";hB.exports={attributes:um(),supplyDefaults:fm().supplyDefaults,supplyLayoutDefaults:zO(),layoutAttributes:cm(),calc:vm().calc,crossTraceCalc:vm().crossTraceCalc,plot:mb().plot,style:fB(),styleOne:Zu(),moduleType:"trace",name:"pie",basePlotModule:vB(),categories:["pie-like","pie","showLegend"],meta:{}}});var mB=B((r_e,pB)=>{"use strict";pB.exports=dB()});var gB=B(Gf=>{"use strict";var yB=Rt();Gf.name="funnelarea";Gf.plot=function(e,r,t,a){yB.plotBasePlot(Gf.name,e,r,t,a)};Gf.clean=function(e,r,t,a){yB.cleanBasePlot(Gf.name,e,r,t,a)}});var yb=B((a_e,bB)=>{"use strict";var Ca=um(),fde=tn(),cde=fo().attributes,{hovertemplateAttrs:vde,texttemplateAttrs:hde,templatefallbackAttrs:xB}=gn(),Fs=mt().extendFlat;bB.exports={labels:Ca.labels,label0:Ca.label0,dlabel:Ca.dlabel,values:Ca.values,marker:{colors:Ca.marker.colors,line:{color:Fs({},Ca.marker.line.color,{dflt:null}),width:Fs({},Ca.marker.line.width,{dflt:1}),editType:"calc"},pattern:Ca.marker.pattern,editType:"calc"},text:Ca.text,hovertext:Ca.hovertext,scalegroup:Fs({},Ca.scalegroup,{}),textinfo:Fs({},Ca.textinfo,{flags:["label","text","value","percent"]}),texttemplate:hde({editType:"plot"},{keys:["label","color","value","text","percent"]}),texttemplatefallback:xB({editType:"plot"}),hoverinfo:Fs({},fde.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:vde({},{keys:["label","color","value","text","percent"]}),hovertemplatefallback:xB(),textposition:Fs({},Ca.textposition,{values:["inside","none"],dflt:"inside"}),textfont:Ca.textfont,insidetextfont:Ca.insidetextfont,title:{text:Ca.title.text,font:Ca.title.font,position:Fs({},Ca.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:cde({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot"},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot"}}});var gb=B((n_e,_B)=>{"use strict";var dde=cm().hiddenlabels;_B.exports={hiddenlabels:dde,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var MB=B((i_e,TB)=>{"use strict";var wB=Pe(),pde=yb(),mde=fo().defaults,yde=Ki().handleText,gde=fm().handleLabelsAndValues,xde=fm().handleMarkerDefaults;TB.exports=function(r,t,a,n){function i(y,m){return wB.coerce(r,t,pde,y,m)}var l=i("labels"),o=i("values"),s=gde(l,o),u=s.len;if(t._hasLabels=s.hasLabels,t._hasValues=s.hasValues,!t._hasLabels&&t._hasValues&&(i("label0"),i("dlabel")),!u){t.visible=!1;return}t._length=u,xde(r,t,n,i),i("scalegroup");var f=i("text"),c=i("texttemplate");i("texttemplatefallback");var h;if(c||(h=i("textinfo",Array.isArray(f)?"text+percent":"percent")),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),c||h&&h!=="none"){var d=i("textposition");yde(r,t,n,i,d,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else h==="none"&&i("textposition","none");mde(t,n,i);var p=i("title.text");p&&(i("title.position"),wB.coerceFont(i,"title.font",n.font)),i("aspectratio"),i("baseratio")}});var kB=B((l_e,AB)=>{"use strict";var bde=Pe(),_de=gb();AB.exports=function(r,t){function a(n,i){return bde.coerce(r,t,_de,n,i)}a("hiddenlabels"),a("funnelareacolorway",t.colorway),a("extendfunnelareacolors")}});var xb=B((o_e,SB)=>{"use strict";var qB=vm();function wde(e,r){return qB.calc(e,r)}function Tde(e){qB.crossTraceCalc(e,{type:"funnelarea"})}SB.exports={calc:wde,crossTraceCalc:Tde}});var PB=B((s_e,EB)=>{"use strict";var Is=kr(),bb=Yr(),go=Pe(),Mde=go.strScale,CB=go.strTranslate,LB=va(),Ade=Nf(),kde=Ade.toMoveInsideBar,DB=Ei(),qde=DB.recordMinTextSize,Sde=DB.clearMinTextSize,Cde=av(),Uf=mb(),Lde=Uf.attachFxHandlers,Dde=Uf.determineInsideTextFont,Ede=Uf.layoutAreas,Pde=Uf.prerenderTitles,Rde=Uf.positionTitleOutside,zde=Uf.formatSliceLabel;EB.exports=function(r,t){var a=r._context.staticPlot,n=r._fullLayout;Sde("funnelarea",n),Pde(t,r),Ede(t,n._size),go.makeTraceGroups(n._funnelarealayer,t,"trace").each(function(i){var l=Is.select(this),o=i[0],s=o.trace;Fde(i),l.each(function(){var u=Is.select(this).selectAll("g.slice").data(i);u.enter().append("g").classed("slice",!0),u.exit().remove(),u.each(function(c,h){if(c.hidden){Is.select(this).selectAll("path,g").remove();return}c.pointNumber=c.i,c.curveNumber=s.index;var d=o.cx,p=o.cy,y=Is.select(this),m=y.selectAll("path.surface").data([c]);m.enter().append("path").classed("surface",!0).style({"pointer-events":a?"none":"all"}),y.call(Lde,r,i);var b="M"+(d+c.TR[0])+","+(p+c.TR[1])+_b(c.TR,c.BR)+_b(c.BR,c.BL)+_b(c.BL,c.TL)+"Z";m.attr("d",b),zde(r,c,o);var _=Cde.castOption(s.textposition,c.pts),w=y.selectAll("g.slicetext").data(c.text&&_!=="none"?[0]:[]);w.enter().append("g").classed("slicetext",!0),w.exit().remove(),w.each(function(){var x=go.ensureSingle(Is.select(this),"text","",function(N){N.attr("data-notex",1)}),M=go.ensureUniformFontSize(r,Dde(s,c,n.font));x.text(c.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(bb.font,M).call(LB.convertToTspans,r);var k=bb.bBox(x.node()),A,C,D,E=Math.min(c.BL[1],c.BR[1])+p,R=Math.max(c.TL[1],c.TR[1])+p;C=Math.max(c.TL[0],c.BL[0])+d,D=Math.min(c.TR[0],c.BR[0])+d,A=kde(C,D,E,R,k,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),A.fontSize=M.size,qde(s.type,A,n),i[h].transform=A,go.setTransormAndDisplay(x,A)})});var f=Is.select(this).selectAll("g.titletext").data(s.title.text?[0]:[]);f.enter().append("g").classed("titletext",!0),f.exit().remove(),f.each(function(){var c=go.ensureSingle(Is.select(this),"text","",function(p){p.attr("data-notex",1)}),h=s.title.text;s._meta&&(h=go.templateString(h,s._meta)),c.text(h).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(bb.font,s.title.font).call(LB.convertToTspans,r);var d=Rde(o,n._size);c.attr("transform",CB(d.x,d.y)+Mde(Math.min(1,d.scale))+CB(d.tx,d.ty))})})})};function _b(e,r){var t=r[0]-e[0],a=r[1]-e[1];return"l"+t+","+a}function Nde(e,r){return[.5*(e[0]+r[0]),.5*(e[1]+r[1])]}function Fde(e){if(!e.length)return;var r=e[0],t=r.trace,a=t.aspectratio,n=t.baseratio;n>.999&&(n=.999);var i=Math.pow(n,2),l=r.vTotal,o=l*i/(1-i),s=l,u=o/l;function f(){var I=Math.sqrt(u);return{x:I,y:-I}}function c(){var I=f();return[I.x,I.y]}var h,d=[];d.push(c());var p,y;for(p=e.length-1;p>-1;p--)if(y=e[p],!y.hidden){var m=y.v/s;u+=m,d.push(c())}var b=1/0,_=-1/0;for(p=0;p-1;p--)if(y=e[p],!y.hidden){E+=1;var R=d[E][0],N=d[E][1];y.TL=[-R,N],y.TR=[R,N],y.BL=C,y.BR=D,y.pxmid=Nde(y.TR,y.BR),C=y.TL,D=y.TR}}});var NB=B((u_e,zB)=>{"use strict";var RB=kr(),Ide=Zu(),Hde=Ei().resizeText;zB.exports=function(r){var t=r._fullLayout._funnelarealayer.selectAll(".trace");Hde(r,t,"funnelarea"),t.each(function(a){var n=a[0],i=n.trace,l=RB.select(this);l.style({opacity:i.opacity}),l.selectAll("path.surface").each(function(o){RB.select(this).call(Ide,o,i,r)})})}});var IB=B((f_e,FB)=>{"use strict";FB.exports={moduleType:"trace",name:"funnelarea",basePlotModule:gB(),categories:["pie-like","funnelarea","showLegend"],attributes:yb(),layoutAttributes:gb(),supplyDefaults:MB(),supplyLayoutDefaults:kB(),calc:xb().calc,crossTraceCalc:xb().crossTraceCalc,plot:PB(),style:NB(),styleOne:Zu(),meta:{}}});var OB=B((c_e,HB)=>{"use strict";HB.exports=IB()});var YB=B(Wf=>{"use strict";var BB=Rt();Wf.name="indicator";Wf.plot=function(e,r,t,a){BB.plotBasePlot(Wf.name,e,r,t,a)};Wf.clean=function(e,r,t,a){BB.cleanBasePlot(Wf.name,e,r,t,a)}});var Tb=B((h_e,ZB)=>{"use strict";var xo=mt().extendFlat,GB=mt().extendDeep,Ode=fi().overrideAll,UB=aa(),WB=Fn(),Bde=fo().attributes,Dt=_n(),Yde=lt().templatedArray,mm=Bf(),VB=pi().descriptionOnlyNumbers,wb=UB({editType:"plot",colorEditType:"plot"}),d0={color:{valType:"color",editType:"plot"},line:{color:{valType:"color",dflt:WB.defaultLine,editType:"plot"},width:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},thickness:{valType:"number",min:0,max:1,dflt:1,editType:"plot"},editType:"calc"},XB={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},Vde=Yde("step",GB({},d0,{range:XB}));ZB.exports={mode:{valType:"flaglist",editType:"calc",flags:["number","delta","gauge"],dflt:"number"},value:{valType:"number",editType:"calc",anim:!0},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},domain:Bde({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot"},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},font:xo({},wb,{}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot",description:VB("value")},font:xo({},wb,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"plot"},delta:{reference:{valType:"number",editType:"calc"},position:{valType:"enumerated",values:["top","bottom","left","right"],dflt:"bottom",editType:"plot"},relative:{valType:"boolean",editType:"plot",dflt:!1},valueformat:{valType:"string",editType:"plot",description:VB("value")},increasing:{symbol:{valType:"string",dflt:mm.INCREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:mm.INCREASING.COLOR,editType:"plot"},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:mm.DECREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:mm.DECREASING.COLOR,editType:"plot"},editType:"plot"},font:xo({},wb,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"]},bar:GB({},d0,{color:{dflt:"green"}}),bgcolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:WB.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot"},axis:Ode({range:XB,visible:xo({},Dt.visible,{dflt:!0}),tickmode:Dt.minor.tickmode,nticks:Dt.nticks,tick0:Dt.tick0,dtick:Dt.dtick,tickvals:Dt.tickvals,ticktext:Dt.ticktext,ticks:xo({},Dt.ticks,{dflt:"outside"}),ticklen:Dt.ticklen,tickwidth:Dt.tickwidth,tickcolor:Dt.tickcolor,ticklabelstep:Dt.ticklabelstep,showticklabels:Dt.showticklabels,labelalias:Dt.labelalias,tickfont:UB({}),tickangle:Dt.tickangle,tickformat:Dt.tickformat,tickformatstops:Dt.tickformatstops,tickprefix:Dt.tickprefix,showtickprefix:Dt.showtickprefix,ticksuffix:Dt.ticksuffix,showticksuffix:Dt.showticksuffix,separatethousands:Dt.separatethousands,exponentformat:Dt.exponentformat,minexponent:Dt.minexponent,showexponent:Dt.showexponent,editType:"plot"},"plot"),steps:Vde,threshold:{line:{color:xo({},d0.line.color,{}),width:xo({},d0.line.width,{dflt:1}),editType:"plot"},thickness:xo({},d0.thickness,{dflt:.85}),value:{valType:"number",editType:"calc",dflt:!1},editType:"plot"},editType:"plot"}}});var Mb=B((d_e,JB)=>{"use strict";JB.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}});var QB=B((p_e,KB)=>{"use strict";var ji=Pe(),gm=Tb(),Gde=fo().defaults,$B=lt(),Ude=Bn(),ym=Mb(),Wde=td(),Xde=ad(),Zde=id(),Jde=ld();function $de(e,r,t,a){function n(k,A){return ji.coerce(e,r,gm,k,A)}Gde(r,a,n),n("mode"),r._hasNumber=r.mode.indexOf("number")!==-1,r._hasDelta=r.mode.indexOf("delta")!==-1,r._hasGauge=r.mode.indexOf("gauge")!==-1;var i=n("value");r._range=[0,typeof i=="number"?1.5*i:1];var l=new Array(2),o;if(r._hasNumber){n("number.valueformat");var s=ji.extendFlat({},a.font);s.size=void 0,ji.coerceFont(n,"number.font",s),r.number.font.size===void 0&&(r.number.font.size=ym.defaultNumberFontSize,l[0]=!0),n("number.prefix"),n("number.suffix"),o=r.number.font.size}var u;if(r._hasDelta){var f=ji.extendFlat({},a.font);f.size=void 0,ji.coerceFont(n,"delta.font",f),r.delta.font.size===void 0&&(r.delta.font.size=(r._hasNumber?.5:1)*(o||ym.defaultNumberFontSize),l[1]=!0),n("delta.reference",r.value),n("delta.relative"),n("delta.valueformat",r.delta.relative?"2%":""),n("delta.increasing.symbol"),n("delta.increasing.color"),n("delta.decreasing.symbol"),n("delta.decreasing.color"),n("delta.position"),n("delta.prefix"),n("delta.suffix"),u=r.delta.font.size}r._scaleNumbers=(!r._hasNumber||l[0])&&(!r._hasDelta||l[1])||!1;var c=ji.extendFlat({},a.font);c.size=.25*(o||u||ym.defaultNumberFontSize),ji.coerceFont(n,"title.font",c),n("title.text");var h,d,p,y;function m(k,A){return ji.coerce(h,d,gm.gauge,k,A)}function b(k,A){return ji.coerce(p,y,gm.gauge.axis,k,A)}if(r._hasGauge){h=e.gauge,h||(h={}),d=$B.newContainer(r,"gauge"),m("shape");var _=r._isBullet=r.gauge.shape==="bullet";_||n("title.align","center");var w=r._isAngular=r.gauge.shape==="angular";w||n("align","center"),m("bgcolor",a.paper_bgcolor),m("borderwidth"),m("bordercolor"),m("bar.color"),m("bar.line.color"),m("bar.line.width");var x=ym.valueThickness*(r.gauge.shape==="bullet"?.5:1);m("bar.thickness",x),Ude(h,d,{name:"steps",handleItemDefaults:Kde}),m("threshold.value"),m("threshold.thickness"),m("threshold.line.width"),m("threshold.line.color"),p={},h&&(p=h.axis||{}),y=$B.newContainer(d,"axis"),b("visible"),r._range=b("range",r._range);var M={font:a.font,noAutotickangles:!0,outerTicks:!0,noTicklabelshift:!0,noTicklabelstandoff:!0};Wde(p,y,b,"linear"),Jde(p,y,b,"linear",M),Zde(p,y,b,"linear",M),Xde(p,y,b,M)}else n("title.align","center"),n("align","center"),r._isAngular=r._isBullet=!1;r._length=null}function Kde(e,r){function t(a,n){return ji.coerce(e,r,gm.gauge.steps,a,n)}t("color"),t("line.color"),t("line.width"),t("range"),t("thickness")}KB.exports={supplyDefaults:$de}});var eY=B((m_e,jB)=>{"use strict";function Qde(e,r){var t=[],a=r.value;typeof r._lastValue!="number"&&(r._lastValue=r.value);var n=r._lastValue,i=n;return r._hasDelta&&typeof r.delta.reference=="number"&&(i=r.delta.reference),t[0]={y:a,lastY:n,delta:a-i,relativeDelta:(a-i)/i},t}jB.exports={calc:Qde}});function kl(e,r,t){e.prototype=r.prototype=t,t.constructor=e}function bo(e,r){var t=Object.create(e.prototype);for(var a in r)t[a]=r[a];return t}var xm=it(()=>{});function rl(){}function tY(){return this.rgb().formatHex()}function l1e(){return this.rgb().formatHex8()}function o1e(){return uY(this).formatHsl()}function aY(){return this.rgb().formatRgb()}function wo(e){var r,t;return e=(e+"").trim().toLowerCase(),(r=jde.exec(e))?(t=r[1].length,r=parseInt(r[1],16),t===6?nY(r):t===3?new fa(r>>8&15|r>>4&240,r>>4&15|r&240,(r&15)<<4|r&15,1):t===8?bm(r>>24&255,r>>16&255,r>>8&255,(r&255)/255):t===4?bm(r>>12&15|r>>8&240,r>>8&15|r>>4&240,r>>4&15|r&240,((r&15)<<4|r&15)/255):null):(r=e1e.exec(e))?new fa(r[1],r[2],r[3],1):(r=r1e.exec(e))?new fa(r[1]*255/100,r[2]*255/100,r[3]*255/100,1):(r=t1e.exec(e))?bm(r[1],r[2],r[3],r[4]):(r=a1e.exec(e))?bm(r[1]*255/100,r[2]*255/100,r[3]*255/100,r[4]):(r=n1e.exec(e))?oY(r[1],r[2]/100,r[3]/100,1):(r=i1e.exec(e))?oY(r[1],r[2]/100,r[3]/100,r[4]):rY.hasOwnProperty(e)?nY(rY[e]):e==="transparent"?new fa(NaN,NaN,NaN,0):null}function nY(e){return new fa(e>>16&255,e>>8&255,e&255,1)}function bm(e,r,t,a){return a<=0&&(e=r=t=NaN),new fa(e,r,t,a)}function m0(e){return e instanceof rl||(e=wo(e)),e?(e=e.rgb(),new fa(e.r,e.g,e.b,e.opacity)):new fa}function Zf(e,r,t,a){return arguments.length===1?m0(e):new fa(e,r,t,a==null?1:a)}function fa(e,r,t,a){this.r=+e,this.g=+r,this.b=+t,this.opacity=+a}function iY(){return`#${Hs(this.r)}${Hs(this.g)}${Hs(this.b)}`}function s1e(){return`#${Hs(this.r)}${Hs(this.g)}${Hs(this.b)}${Hs((isNaN(this.opacity)?1:this.opacity)*255)}`}function lY(){let e=wm(this.opacity);return`${e===1?"rgb(":"rgba("}${Os(this.r)}, ${Os(this.g)}, ${Os(this.b)}${e===1?")":`, ${e})`}`}function wm(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Os(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Hs(e){return e=Os(e),(e<16?"0":"")+e.toString(16)}function oY(e,r,t,a){return a<=0?e=r=t=NaN:t<=0||t>=1?e=r=NaN:r<=0&&(e=NaN),new Pi(e,r,t,a)}function uY(e){if(e instanceof Pi)return new Pi(e.h,e.s,e.l,e.opacity);if(e instanceof rl||(e=wo(e)),!e)return new Pi;if(e instanceof Pi)return e;e=e.rgb();var r=e.r/255,t=e.g/255,a=e.b/255,n=Math.min(r,t,a),i=Math.max(r,t,a),l=NaN,o=i-n,s=(i+n)/2;return o?(r===i?l=(t-a)/o+(t0&&s<1?0:l,new Pi(l,o,s,e.opacity)}function y0(e,r,t,a){return arguments.length===1?uY(e):new Pi(e,r,t,a==null?1:a)}function Pi(e,r,t,a){this.h=+e,this.s=+r,this.l=+t,this.opacity=+a}function sY(e){return e=(e||0)%360,e<0?e+360:e}function _m(e){return Math.max(0,Math.min(1,e||0))}function Ab(e,r,t){return(e<60?r+(t-r)*e/60:e<180?t:e<240?r+(t-r)*(240-e)/60:r)*255}var _o,Bs,Xf,p0,el,jde,e1e,r1e,t1e,a1e,n1e,i1e,rY,Tm=it(()=>{xm();_o=.7,Bs=1/_o,Xf="\\s*([+-]?\\d+)\\s*",p0="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",el="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",jde=/^#([0-9a-f]{3,8})$/,e1e=new RegExp(`^rgb\\(${Xf},${Xf},${Xf}\\)$`),r1e=new RegExp(`^rgb\\(${el},${el},${el}\\)$`),t1e=new RegExp(`^rgba\\(${Xf},${Xf},${Xf},${p0}\\)$`),a1e=new RegExp(`^rgba\\(${el},${el},${el},${p0}\\)$`),n1e=new RegExp(`^hsl\\(${p0},${el},${el}\\)$`),i1e=new RegExp(`^hsla\\(${p0},${el},${el},${p0}\\)$`),rY={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};kl(rl,wo,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:tY,formatHex:tY,formatHex8:l1e,formatHsl:o1e,formatRgb:aY,toString:aY});kl(fa,Zf,bo(rl,{brighter(e){return e=e==null?Bs:Math.pow(Bs,e),new fa(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?_o:Math.pow(_o,e),new fa(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new fa(Os(this.r),Os(this.g),Os(this.b),wm(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:iY,formatHex:iY,formatHex8:s1e,formatRgb:lY,toString:lY}));kl(Pi,y0,bo(rl,{brighter(e){return e=e==null?Bs:Math.pow(Bs,e),new Pi(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?_o:Math.pow(_o,e),new Pi(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,r=isNaN(e)||isNaN(this.s)?0:this.s,t=this.l,a=t+(t<.5?t:1-t)*r,n=2*t-a;return new fa(Ab(e>=240?e-240:e+120,n,a),Ab(e,n,a),Ab(e<120?e+240:e-120,n,a),this.opacity)},clamp(){return new Pi(sY(this.h),_m(this.s),_m(this.l),wm(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=wm(this.opacity);return`${e===1?"hsl(":"hsla("}${sY(this.h)}, ${_m(this.s)*100}%, ${_m(this.l)*100}%${e===1?")":`, ${e})`}`}}))});var Mm,Am,kb=it(()=>{Mm=Math.PI/180,Am=180/Math.PI});function pY(e){if(e instanceof tl)return new tl(e.l,e.a,e.b,e.opacity);if(e instanceof ql)return mY(e);e instanceof fa||(e=m0(e));var r=Lb(e.r),t=Lb(e.g),a=Lb(e.b),n=qb((.2225045*r+.7168786*t+.0606169*a)/cY),i,l;return r===t&&t===a?i=l=n:(i=qb((.4360747*r+.3850649*t+.1430804*a)/fY),l=qb((.0139322*r+.0971045*t+.7141733*a)/vY)),new tl(116*n-16,500*(i-n),200*(n-l),e.opacity)}function $f(e,r,t,a){return arguments.length===1?pY(e):new tl(e,r,t,a==null?1:a)}function tl(e,r,t,a){this.l=+e,this.a=+r,this.b=+t,this.opacity=+a}function qb(e){return e>u1e?Math.pow(e,1/3):e/dY+hY}function Sb(e){return e>Jf?e*e*e:dY*(e-hY)}function Cb(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function Lb(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function f1e(e){if(e instanceof ql)return new ql(e.h,e.c,e.l,e.opacity);if(e instanceof tl||(e=pY(e)),e.a===0&&e.b===0)return new ql(NaN,0{xm();Tm();kb();km=18,fY=.96422,cY=1,vY=.82521,hY=4/29,Jf=6/29,dY=3*Jf*Jf,u1e=Jf*Jf*Jf;kl(tl,$f,bo(rl,{brighter(e){return new tl(this.l+km*(e==null?1:e),this.a,this.b,this.opacity)},darker(e){return new tl(this.l-km*(e==null?1:e),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,r=isNaN(this.a)?e:e+this.a/500,t=isNaN(this.b)?e:e-this.b/200;return r=fY*Sb(r),e=cY*Sb(e),t=vY*Sb(t),new fa(Cb(3.1338561*r-1.6168667*e-.4906146*t),Cb(-.9787684*r+1.9161415*e+.033454*t),Cb(.0719453*r-.2289914*e+1.4052427*t),this.opacity)}}));kl(ql,g0,bo(rl,{brighter(e){return new ql(this.h,this.c,this.l+km*(e==null?1:e),this.opacity)},darker(e){return new ql(this.h,this.c,this.l-km*(e==null?1:e),this.opacity)},rgb(){return mY(this).rgb()}}))});function c1e(e){if(e instanceof Ys)return new Ys(e.h,e.s,e.l,e.opacity);e instanceof fa||(e=m0(e));var r=e.r/255,t=e.g/255,a=e.b/255,n=(bY*a+gY*r-xY*t)/(bY+gY-xY),i=a-n,l=(x0*(t-n)-Eb*i)/qm,o=Math.sqrt(l*l+i*i)/(x0*n*(1-n)),s=o?Math.atan2(l,i)*Am-120:NaN;return new Ys(s<0?s+360:s,o,n,e.opacity)}function Kf(e,r,t,a){return arguments.length===1?c1e(e):new Ys(e,r,t,a==null?1:a)}function Ys(e,r,t,a){this.h=+e,this.s=+r,this.l=+t,this.opacity=+a}var _Y,Db,Eb,qm,x0,gY,xY,bY,wY=it(()=>{xm();Tm();kb();_Y=-.14861,Db=1.78277,Eb=-.29227,qm=-.90649,x0=1.97294,gY=x0*qm,xY=x0*Db,bY=Db*Eb-qm*_Y;kl(Ys,Kf,bo(rl,{brighter(e){return e=e==null?Bs:Math.pow(Bs,e),new Ys(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?_o:Math.pow(_o,e),new Ys(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=isNaN(this.h)?0:(this.h+120)*Mm,r=+this.l,t=isNaN(this.s)?0:this.s*r*(1-r),a=Math.cos(e),n=Math.sin(e);return new fa(255*(r+t*(_Y*a+Db*n)),255*(r+t*(Eb*a+qm*n)),255*(r+t*(x0*a)),this.opacity)}}))});var Vs=it(()=>{Tm();yY();wY()});function Pb(e,r,t,a,n){var i=e*e,l=i*e;return((1-3*e+3*i-l)*r+(4-6*i+3*l)*t+(1+3*e+3*i-3*l)*a+l*n)/6}function Sm(e){var r=e.length-1;return function(t){var a=t<=0?t=0:t>=1?(t=1,r-1):Math.floor(t*r),n=e[a],i=e[a+1],l=a>0?e[a-1]:2*n-i,o=a{});function Lm(e){var r=e.length;return function(t){var a=Math.floor(((t%=1)<0?++t:t)*r),n=e[(a+r-1)%r],i=e[a%r],l=e[(a+1)%r],o=e[(a+2)%r];return Pb((t-a/r)*r,n,i,l,o)}}var Rb=it(()=>{Cm()});var Qf,zb=it(()=>{Qf=e=>()=>e});function TY(e,r){return function(t){return e+t*r}}function v1e(e,r,t){return e=Math.pow(e,t),r=Math.pow(r,t)-e,t=1/t,function(a){return Math.pow(e+a*r,t)}}function To(e,r){var t=r-e;return t?TY(e,t>180||t<-180?t-360*Math.round(t/360):t):Qf(isNaN(e)?r:e)}function MY(e){return(e=+e)==1?It:function(r,t){return t-r?v1e(r,t,e):Qf(isNaN(r)?t:r)}}function It(e,r){var t=r-e;return t?TY(e,t):Qf(isNaN(e)?r:e)}var Gs=it(()=>{zb()});function AY(e){return function(r){var t=r.length,a=new Array(t),n=new Array(t),i=new Array(t),l,o;for(l=0;l{Vs();Cm();Rb();Gs();b0=function e(r){var t=MY(r);function a(n,i){var l=t((n=Zf(n)).r,(i=Zf(i)).r),o=t(n.g,i.g),s=t(n.b,i.b),u=It(n.opacity,i.opacity);return function(f){return n.r=l(f),n.g=o(f),n.b=s(f),n.opacity=u(f),n+""}}return a.gamma=e,a}(1);kY=AY(Sm),qY=AY(Lm)});function jf(e,r){r||(r=[]);var t=e?Math.min(r.length,e.length):0,a=r.slice(),n;return function(i){for(n=0;n{});function SY(e,r){return(Dm(r)?jf:Fb)(e,r)}function Fb(e,r){var t=r?r.length:0,a=e?Math.min(t,e.length):0,n=new Array(a),i=new Array(t),l;for(l=0;l{_0();Em()});function Pm(e,r){var t=new Date;return e=+e,r=+r,function(a){return t.setTime(e*(1-a)+r*a),t}}var Hb=it(()=>{});function mn(e,r){return e=+e,r=+r,function(t){return e*(1-t)+r*t}}var w0=it(()=>{});function Rm(e,r){var t={},a={},n;(e===null||typeof e!="object")&&(e={}),(r===null||typeof r!="object")&&(r={});for(n in r)n in e?t[n]=Mo(e[n],r[n]):a[n]=r[n];return function(i){for(n in t)a[n]=t[n](i);return a}}var Ob=it(()=>{_0()});function h1e(e){return function(){return e}}function d1e(e){return function(r){return e(r)+""}}function zm(e,r){var t=Yb.lastIndex=Bb.lastIndex=0,a,n,i,l=-1,o=[],s=[];for(e=e+"",r=r+"";(a=Yb.exec(e))&&(n=Bb.exec(r));)(i=n.index)>t&&(i=r.slice(t,i),o[l]?o[l]+=i:o[++l]=i),(a=a[0])===(n=n[0])?o[l]?o[l]+=n:o[++l]=n:(o[++l]=null,s.push({i:l,x:mn(a,n)})),t=Bb.lastIndex;return t{w0();Yb=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Bb=new RegExp(Yb.source,"g")});function Mo(e,r){var t=typeof r,a;return r==null||t==="boolean"?Qf(r):(t==="number"?mn:t==="string"?(a=wo(r))?(r=a,b0):zm:r instanceof wo?b0:r instanceof Date?Pm:Dm(r)?jf:Array.isArray(r)?Fb:typeof r.valueOf!="function"&&typeof r.toString!="function"||isNaN(r)?Rm:mn)(e,r)}var _0=it(()=>{Vs();Nb();Ib();Hb();w0();Ob();Vb();zb();Em()});function CY(e){var r=e.length;return function(t){return e[Math.max(0,Math.min(r-1,Math.floor(t*r)))]}}var LY=it(()=>{});function DY(e,r){var t=To(+e,+r);return function(a){var n=t(a);return n-360*Math.floor(n/360)}}var EY=it(()=>{Gs()});function PY(e,r){return e=+e,r=+r,function(t){return Math.round(e*(1-t)+r*t)}}var RY=it(()=>{});function Gb(e,r,t,a,n,i){var l,o,s;return(l=Math.sqrt(e*e+r*r))&&(e/=l,r/=l),(s=e*t+r*a)&&(t-=e*s,a-=r*s),(o=Math.sqrt(t*t+a*a))&&(t/=o,a/=o,s/=o),e*a{zY=180/Math.PI,Nm={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}});function FY(e){let r=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return r.isIdentity?Nm:Gb(r.a,r.b,r.c,r.d,r.e,r.f)}function IY(e){return e==null?Nm:(Fm||(Fm=document.createElementNS("http://www.w3.org/2000/svg","g")),Fm.setAttribute("transform",e),(e=Fm.transform.baseVal.consolidate())?(e=e.matrix,Gb(e.a,e.b,e.c,e.d,e.e,e.f)):Nm)}var Fm,HY=it(()=>{NY()});function OY(e,r,t,a){function n(u){return u.length?u.pop()+" ":""}function i(u,f,c,h,d,p){if(u!==c||f!==h){var y=d.push("translate(",null,r,null,t);p.push({i:y-4,x:mn(u,c)},{i:y-2,x:mn(f,h)})}else(c||h)&&d.push("translate("+c+r+h+t)}function l(u,f,c,h){u!==f?(u-f>180?f+=360:f-u>180&&(u+=360),h.push({i:c.push(n(c)+"rotate(",null,a)-2,x:mn(u,f)})):f&&c.push(n(c)+"rotate("+f+a)}function o(u,f,c,h){u!==f?h.push({i:c.push(n(c)+"skewX(",null,a)-2,x:mn(u,f)}):f&&c.push(n(c)+"skewX("+f+a)}function s(u,f,c,h,d,p){if(u!==c||f!==h){var y=d.push(n(d)+"scale(",null,",",null,")");p.push({i:y-4,x:mn(u,c)},{i:y-2,x:mn(f,h)})}else(c!==1||h!==1)&&d.push(n(d)+"scale("+c+","+h+")")}return function(u,f){var c=[],h=[];return u=e(u),f=e(f),i(u.translateX,u.translateY,f.translateX,f.translateY,c,h),l(u.rotate,f.rotate,c,h),o(u.skewX,f.skewX,c,h),s(u.scaleX,u.scaleY,f.scaleX,f.scaleY,c,h),u=f=null,function(d){for(var p=-1,y=h.length,m;++p{w0();HY();BY=OY(FY,"px, ","px)","deg)"),YY=OY(IY,", ",")",")")});function GY(e){return((e=Math.exp(e))+1/e)/2}function m1e(e){return((e=Math.exp(e))-1/e)/2}function y1e(e){return((e=Math.exp(2*e))-1)/(e+1)}var p1e,UY,WY=it(()=>{p1e=1e-12;UY=function e(r,t,a){function n(i,l){var o=i[0],s=i[1],u=i[2],f=l[0],c=l[1],h=l[2],d=f-o,p=c-s,y=d*d+p*p,m,b;if(y{Vs();Gs();ZY=XY(To),JY=XY(It)});function Ub(e,r){var t=It((e=$f(e)).l,(r=$f(r)).l),a=It(e.a,r.a),n=It(e.b,r.b),i=It(e.opacity,r.opacity);return function(l){return e.l=t(l),e.a=a(l),e.b=n(l),e.opacity=i(l),e+""}}var KY=it(()=>{Vs();Gs()});function QY(e){return function(r,t){var a=e((r=g0(r)).h,(t=g0(t)).h),n=It(r.c,t.c),i=It(r.l,t.l),l=It(r.opacity,t.opacity);return function(o){return r.h=a(o),r.c=n(o),r.l=i(o),r.opacity=l(o),r+""}}}var jY,eV,rV=it(()=>{Vs();Gs();jY=QY(To),eV=QY(It)});function tV(e){return function r(t){t=+t;function a(n,i){var l=e((n=Kf(n)).h,(i=Kf(i)).h),o=It(n.s,i.s),s=It(n.l,i.l),u=It(n.opacity,i.opacity);return function(f){return n.h=l(f),n.s=o(f),n.l=s(Math.pow(f,t)),n.opacity=u(f),n+""}}return a.gamma=r,a}(1)}var aV,nV,iV=it(()=>{Vs();Gs();aV=tV(To),nV=tV(It)});function Wb(e,r){r===void 0&&(r=e,e=Mo);for(var t=0,a=r.length-1,n=r[0],i=new Array(a<0?0:a);t{_0()});function oV(e,r){for(var t=new Array(r),a=0;a{});var Xb={};vX(Xb,{interpolate:()=>Mo,interpolateArray:()=>SY,interpolateBasis:()=>Sm,interpolateBasisClosed:()=>Lm,interpolateCubehelix:()=>aV,interpolateCubehelixLong:()=>nV,interpolateDate:()=>Pm,interpolateDiscrete:()=>CY,interpolateHcl:()=>jY,interpolateHclLong:()=>eV,interpolateHsl:()=>ZY,interpolateHslLong:()=>JY,interpolateHue:()=>DY,interpolateLab:()=>Ub,interpolateNumber:()=>mn,interpolateNumberArray:()=>jf,interpolateObject:()=>Rm,interpolateRgb:()=>b0,interpolateRgbBasis:()=>kY,interpolateRgbBasisClosed:()=>qY,interpolateRound:()=>PY,interpolateString:()=>zm,interpolateTransformCss:()=>BY,interpolateTransformSvg:()=>YY,interpolateZoom:()=>UY,piecewise:()=>Wb,quantize:()=>oV});var Zb=it(()=>{_0();Ib();Cm();Rb();Hb();LY();EY();w0();Em();Ob();RY();Vb();VY();WY();Nb();$Y();KY();rV();iV();lV();sV()});var dV=B((i6e,hV)=>{"use strict";var Js=kr(),g1e=(Zb(),J4(Xb)).interpolate,uV=(Zb(),J4(Xb)).interpolateNumber,Ao=Pe(),x1e=Ao.strScale,M0=Ao.strTranslate,b1e=Ao.rad2deg,_1e=Ea().MID_SHIFT,Zs=Yr(),Us=Mb(),Hm=va(),La=Zr(),w1e=hp(),T1e=pp(),M1e=_n(),ec=xr(),Jb={left:"start",center:"middle",right:"end"},Ws={left:0,center:.5,right:1},fV=/[yzafpnµmkMGTPEZY]/;function A0(e){return e&&e.duration>0}hV.exports=function(r,t,a,n){var i=r._fullLayout,l;A0(a)&&n&&(l=n()),Ao.makeTraceGroups(i._indicatorlayer,t,"trace").each(function(o){var s=o[0],u=s.trace,f=Js.select(this),c=u._hasGauge,h=u._isAngular,d=u._isBullet,p=u.domain,y={w:i._size.w*(p.x[1]-p.x[0]),h:i._size.h*(p.y[1]-p.y[0]),l:i._size.l+i._size.w*p.x[0],r:i._size.r+i._size.w*(1-p.x[1]),t:i._size.t+i._size.h*(1-p.y[1]),b:i._size.b+i._size.h*p.y[0]},m=y.l+y.w/2,b=y.t+y.h/2,_=Math.min(y.w/2,y.h),w=Us.innerRadius*_,x,M,k,A=u.align||"center";if(M=b,!c)x=y.l+Ws[A]*y.w,k=function(V){return cV(V,y.w,y.h)};else if(h&&(x=m,M=b+_/2,k=function(V){return C1e(V,.9*w)}),d){var C=Us.bulletPadding,D=1-Us.bulletNumberDomainSize+C;x=y.l+(D+(1-D)*Ws[A])*y.w,k=function(V){return cV(V,(Us.bulletNumberDomainSize-C)*y.w,y.h)}}q1e(r,f,o,{numbersX:x,numbersY:M,numbersScaler:k,transitionOpts:a,onComplete:l});var E,R;c&&(E={range:u.gauge.axis.range,color:u.gauge.bgcolor,line:{color:u.gauge.bordercolor,width:0},thickness:1},R={range:u.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:u.gauge.bordercolor,width:u.gauge.borderwidth},thickness:1});var N=f.selectAll("g.angular").data(h?o:[]);N.exit().remove();var I=f.selectAll("g.angularaxis").data(h?o:[]);I.exit().remove(),h&&k1e(r,f,o,{radius:_,innerRadius:w,gauge:N,layer:I,size:y,gaugeBg:E,gaugeOutline:R,transitionOpts:a,onComplete:l});var H=f.selectAll("g.bullet").data(d?o:[]);H.exit().remove();var G=f.selectAll("g.bulletaxis").data(d?o:[]);G.exit().remove(),d&&A1e(r,f,o,{gauge:H,layer:G,size:y,gaugeBg:E,gaugeOutline:R,transitionOpts:a,onComplete:l});var W=f.selectAll("text.title").data(o);W.exit().remove(),W.enter().append("text").classed("title",!0),W.attr("text-anchor",function(){return d?Jb.right:Jb[u.title.align]}).text(u.title.text).call(Zs.font,u.title.font).call(Hm.convertToTspans,r),W.attr("transform",function(){var V=y.l+y.w*Ws[u.title.align],O,Y=Us.titlePadding,Z=Zs.bBox(W.node());if(c){if(h)if(u.gauge.axis.visible){var J=Zs.bBox(I.node());O=J.top-Y-Z.bottom}else O=y.t+y.h/2-_/2-Z.bottom-Y;d&&(O=M-(Z.top+Z.bottom)/2,V=y.l-Us.bulletPadding*y.w)}else O=u._numbersTop-Y-Z.bottom;return M0(V,O)})})};function A1e(e,r,t,a){var n=t[0].trace,i=a.gauge,l=a.layer,o=a.gaugeBg,s=a.gaugeOutline,u=a.size,f=n.domain,c=a.transitionOpts,h=a.onComplete,d,p,y,m,b;i.enter().append("g").classed("bullet",!0),i.attr("transform",M0(u.l,u.t)),l.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),l.selectAll("g.xbulletaxistick,path,text").remove();var _=u.h,w=n.gauge.bar.thickness*_,x=f.x[0],M=f.x[0]+(f.x[1]-f.x[0])*(n._hasNumber||n._hasDelta?1-Us.bulletNumberDomainSize:1);d=T0(e,n.gauge.axis),d._id="xbulletaxis",d.domain=[x,M],d.setScale(),p=La.calcTicks(d),y=La.makeTransTickFn(d),m=La.getTickSigns(d)[2],b=u.t+u.h,d.visible&&(La.drawTicks(e,d,{vals:d.ticks==="inside"?La.clipEnds(d,p):p,layer:l,path:La.makeTickPath(d,b,m),transFn:y}),La.drawLabels(e,d,{vals:p,layer:l,transFn:y,labelFns:La.makeLabelFns(d,b)}));function k(I){I.attr("width",function(H){return Math.max(0,d.c2p(H.range[1])-d.c2p(H.range[0]))}).attr("x",function(H){return d.c2p(H.range[0])}).attr("y",function(H){return .5*(1-H.thickness)*_}).attr("height",function(H){return H.thickness*_})}var A=[o].concat(n.gauge.steps),C=i.selectAll("g.bg-bullet").data(A);C.enter().append("g").classed("bg-bullet",!0).append("rect"),C.select("rect").call(k).call(Xs),C.exit().remove();var D=i.selectAll("g.value-bullet").data([n.gauge.bar]);D.enter().append("g").classed("value-bullet",!0).append("rect"),D.select("rect").attr("height",w).attr("y",(_-w)/2).call(Xs),A0(c)?D.select("rect").transition().duration(c.duration).ease(c.easing).each("end",function(){h&&h()}).each("interrupt",function(){h&&h()}).attr("width",Math.max(0,d.c2p(Math.min(n.gauge.axis.range[1],t[0].y)))):D.select("rect").attr("width",typeof t[0].y=="number"?Math.max(0,d.c2p(Math.min(n.gauge.axis.range[1],t[0].y))):0),D.exit().remove();var E=t.filter(function(){return n.gauge.threshold.value||n.gauge.threshold.value===0}),R=i.selectAll("g.threshold-bullet").data(E);R.enter().append("g").classed("threshold-bullet",!0).append("line"),R.select("line").attr("x1",d.c2p(n.gauge.threshold.value)).attr("x2",d.c2p(n.gauge.threshold.value)).attr("y1",(1-n.gauge.threshold.thickness)/2*_).attr("y2",(1-(1-n.gauge.threshold.thickness)/2)*_).call(ec.stroke,n.gauge.threshold.line.color).style("stroke-width",n.gauge.threshold.line.width),R.exit().remove();var N=i.selectAll("g.gauge-outline").data([s]);N.enter().append("g").classed("gauge-outline",!0).append("rect"),N.select("rect").call(k).call(Xs),N.exit().remove()}function k1e(e,r,t,a){var n=t[0].trace,i=a.size,l=a.radius,o=a.innerRadius,s=a.gaugeBg,u=a.gaugeOutline,f=[i.l+i.w/2,i.t+i.h/2+l/2],c=a.gauge,h=a.layer,d=a.transitionOpts,p=a.onComplete,y=Math.PI/2;function m(ee){var le=n.gauge.axis.range[0],ue=n.gauge.axis.range[1],ve=(ee-le)/(ue-le)*Math.PI-y;return ve<-y?-y:ve>y?y:ve}function b(ee){return Js.svg.arc().innerRadius((o+l)/2-ee/2*(l-o)).outerRadius((o+l)/2+ee/2*(l-o)).startAngle(-y)}function _(ee){ee.attr("d",function(le){return b(le.thickness).startAngle(m(le.range[0])).endAngle(m(le.range[1]))()})}var w,x,M,k;c.enter().append("g").classed("angular",!0),c.attr("transform",M0(f[0],f[1])),h.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),h.selectAll("g.xangularaxistick,path,text").remove(),w=T0(e,n.gauge.axis),w.type="linear",w.range=n.gauge.axis.range,w._id="xangularaxis",w.ticklabeloverflow="allow",w.setScale();var A=function(ee){return(w.range[0]-ee.x)/(w.range[1]-w.range[0])*Math.PI+Math.PI},C={},D=La.makeLabelFns(w,0),E=D.labelStandoff;C.xFn=function(ee){var le=A(ee);return Math.cos(le)*E},C.yFn=function(ee){var le=A(ee),ue=Math.sin(le)>0?.2:1;return-Math.sin(le)*(E+ee.fontSize*ue)+Math.abs(Math.cos(le))*(ee.fontSize*_1e)},C.anchorFn=function(ee){var le=A(ee),ue=Math.cos(le);return Math.abs(ue)<.1?"middle":ue>0?"start":"end"},C.heightFn=function(ee,le,ue){var ve=A(ee);return-.5*(1+Math.sin(ve))*ue};var R=function(ee){return M0(f[0]+l*Math.cos(ee),f[1]-l*Math.sin(ee))};M=function(ee){return R(A(ee))};var N=function(ee){var le=A(ee);return R(le)+"rotate("+-b1e(le)+")"};if(x=La.calcTicks(w),k=La.getTickSigns(w)[2],w.visible){k=w.ticks==="inside"?-1:1;var I=(w.linewidth||1)/2;La.drawTicks(e,w,{vals:x,layer:h,path:"M"+k*I+",0h"+k*w.ticklen,transFn:N}),La.drawLabels(e,w,{vals:x,layer:h,transFn:M,labelFns:C})}var H=[s].concat(n.gauge.steps),G=c.selectAll("g.bg-arc").data(H);G.enter().append("g").classed("bg-arc",!0).append("path"),G.select("path").call(_).call(Xs),G.exit().remove();var W=b(n.gauge.bar.thickness),V=c.selectAll("g.value-arc").data([n.gauge.bar]);V.enter().append("g").classed("value-arc",!0).append("path");var O=V.select("path");A0(d)?(O.transition().duration(d.duration).ease(d.easing).each("end",function(){p&&p()}).each("interrupt",function(){p&&p()}).attrTween("d",S1e(W,m(t[0].lastY),m(t[0].y))),n._lastValue=t[0].y):O.attr("d",typeof t[0].y=="number"?W.endAngle(m(t[0].y)):"M0,0Z"),O.call(Xs),V.exit().remove(),H=[];var Y=n.gauge.threshold.value;(Y||Y===0)&&H.push({range:[Y,Y],color:n.gauge.threshold.color,line:{color:n.gauge.threshold.line.color,width:n.gauge.threshold.line.width},thickness:n.gauge.threshold.thickness});var Z=c.selectAll("g.threshold-arc").data(H);Z.enter().append("g").classed("threshold-arc",!0).append("path"),Z.select("path").call(_).call(Xs),Z.exit().remove();var J=c.selectAll("g.gauge-outline").data([u]);J.enter().append("g").classed("gauge-outline",!0).append("path"),J.select("path").call(_).call(Xs),J.exit().remove()}function q1e(e,r,t,a){var n=t[0].trace,i=a.numbersX,l=a.numbersY,o=n.align||"center",s=Jb[o],u=a.transitionOpts,f=a.onComplete,c=Ao.ensureSingle(r,"g","numbers"),h,d,p,y=[];n._hasNumber&&y.push("number"),n._hasDelta&&(y.push("delta"),n.delta.position==="left"&&y.reverse());var m=c.selectAll("text").data(y);m.enter().append("text"),m.attr("text-anchor",function(){return s}).attr("class",function(R){return R}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),m.exit().remove();function b(R,N,I,H){if(R.match("s")&&I>=0!=H>=0&&!N(I).slice(-1).match(fV)&&!N(H).slice(-1).match(fV)){var G=R.slice().replace("s","f").replace(/\d+/,function(V){return parseInt(V)-1}),W=T0(e,{tickformat:G});return function(V){return Math.abs(V)<1?La.tickText(W,V).text:N(V)}}else return N}function _(){var R=T0(e,{tickformat:n.number.valueformat},n._range);R.setScale(),La.prepTicks(R);var N=function(V){return La.tickText(R,V).text},I=n.number.suffix,H=n.number.prefix,G=c.select("text.number");function W(){var V=typeof t[0].y=="number"?H+N(t[0].y)+I:"-";G.text(V).call(Zs.font,n.number.font).call(Hm.convertToTspans,e)}return A0(u)?G.transition().duration(u.duration).ease(u.easing).each("end",function(){W(),f&&f()}).each("interrupt",function(){W(),f&&f()}).attrTween("text",function(){var V=Js.select(this),O=uV(t[0].lastY,t[0].y);n._lastValue=t[0].y;var Y=b(n.number.valueformat,N,t[0].lastY,t[0].y);return function(Z){V.text(H+Y(O(Z))+I)}}):W(),h=vV(H+N(t[0].y)+I,n.number.font,s,e),G}function w(){var R=T0(e,{tickformat:n.delta.valueformat},n._range);R.setScale(),La.prepTicks(R);var N=function(Z){return La.tickText(R,Z).text},I=n.delta.suffix,H=n.delta.prefix,G=function(Z){var J=n.delta.relative?Z.relativeDelta:Z.delta;return J},W=function(Z,J){return Z===0||typeof Z!="number"||isNaN(Z)?"-":(Z>0?n.delta.increasing.symbol:n.delta.decreasing.symbol)+H+J(Z)+I},V=function(Z){return Z.delta>=0?n.delta.increasing.color:n.delta.decreasing.color};n._deltaLastValue===void 0&&(n._deltaLastValue=G(t[0]));var O=c.select("text.delta");O.call(Zs.font,n.delta.font).call(ec.fill,V({delta:n._deltaLastValue}));function Y(){O.text(W(G(t[0]),N)).call(ec.fill,V(t[0])).call(Hm.convertToTspans,e)}return A0(u)?O.transition().duration(u.duration).ease(u.easing).tween("text",function(){var Z=Js.select(this),J=G(t[0]),ee=n._deltaLastValue,le=b(n.delta.valueformat,N,ee,J),ue=uV(ee,J);return n._deltaLastValue=J,function(ve){Z.text(W(ue(ve),le)),Z.call(ec.fill,V({delta:ue(ve)}))}}).each("end",function(){Y(),f&&f()}).each("interrupt",function(){Y(),f&&f()}):Y(),d=vV(W(G(t[0]),N),n.delta.font,s,e),O}var x=n.mode+n.align,M;if(n._hasDelta&&(M=w(),x+=n.delta.position+n.delta.font.size+n.delta.font.family+n.delta.valueformat,x+=n.delta.increasing.symbol+n.delta.decreasing.symbol,p=d),n._hasNumber&&(_(),x+=n.number.font.size+n.number.font.family+n.number.valueformat+n.number.suffix+n.number.prefix,p=h),n._hasDelta&&n._hasNumber){var k=[(h.left+h.right)/2,(h.top+h.bottom)/2],A=[(d.left+d.right)/2,(d.top+d.bottom)/2],C,D,E=.75*n.delta.font.size;n.delta.position==="left"&&(C=Im(n,"deltaPos",0,-1*(h.width*Ws[n.align]+d.width*(1-Ws[n.align])+E),x,Math.min),D=k[1]-A[1],p={width:h.width+d.width+E,height:Math.max(h.height,d.height),left:d.left+C,right:h.right,top:Math.min(h.top,d.top+D),bottom:Math.max(h.bottom,d.bottom+D)}),n.delta.position==="right"&&(C=Im(n,"deltaPos",0,h.width*(1-Ws[n.align])+d.width*Ws[n.align]+E,x,Math.max),D=k[1]-A[1],p={width:h.width+d.width+E,height:Math.max(h.height,d.height),left:h.left,right:d.right+C,top:Math.min(h.top,d.top+D),bottom:Math.max(h.bottom,d.bottom+D)}),n.delta.position==="bottom"&&(C=null,D=d.height,p={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height,bottom:h.bottom+d.height}),n.delta.position==="top"&&(C=null,D=h.top,p={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height-d.height,bottom:h.bottom}),M.attr({dx:C,dy:D})}(n._hasNumber||n._hasDelta)&&c.attr("transform",function(){var R=a.numbersScaler(p);x+=R[2];var N=Im(n,"numbersScale",1,R[0],x,Math.min),I;n._scaleNumbers||(N=1),n._isAngular?I=l-N*p.bottom:I=l-N*(p.top+p.bottom)/2,n._numbersTop=N*p.top+I;var H=p[o];o==="center"&&(H=(p.left+p.right)/2);var G=i-N*H;return G=Im(n,"numbersTranslate",0,G,x,Math.max),M0(G,I)+x1e(N)})}function Xs(e){e.each(function(r){ec.stroke(Js.select(this),r.line.color)}).each(function(r){ec.fill(Js.select(this),r.color)}).style("stroke-width",function(r){return r.line.width})}function S1e(e,r,t){return function(){var a=g1e(r,t);return function(n){return e.endAngle(a(n))()}}}function T0(e,r,t){var a=e._fullLayout,n=Ao.extendFlat({type:"linear",ticks:"outside",range:t,showline:!0},r),i={type:"linear",_id:"x"+r._id},l={letter:"x",font:a.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function o(s,u){return Ao.coerce(n,i,M1e,s,u)}return w1e(n,i,o,l,a),T1e(n,i,o,l),i}function cV(e,r,t){var a=Math.min(r/e.width,t/e.height);return[a,e,r+"x"+t]}function C1e(e,r){var t=Math.sqrt(e.width/2*(e.width/2)+e.height*e.height),a=r/t;return[a,e,r]}function vV(e,r,t,a){var n=document.createElementNS("http://www.w3.org/2000/svg","text"),i=Js.select(n);return i.text(e).attr("x",0).attr("y",0).attr("text-anchor",t).attr("data-unformatted",e).call(Hm.convertToTspans,a).call(Zs.font,r),Zs.bBox(i.node())}function Im(e,r,t,a,n,i){var l="_cache"+r;e[l]&&e[l].key===n||(e[l]={key:n,value:t});var o=Ao.aggNums(i,null,[e[l].value,a],2);return e[l].value=o,o}});var mV=B((l6e,pV)=>{"use strict";pV.exports={moduleType:"trace",name:"indicator",basePlotModule:YB(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:Tb(),supplyDefaults:QB().supplyDefaults,calc:eY().calc,plot:dV(),meta:{}}});var gV=B((o6e,yV)=>{"use strict";yV.exports=mV()});var Bm=B((s6e,TV)=>{"use strict";var Om=Pe().extendFlat,k0=_i(),xV=pi().axisHoverFormat,{hovertemplateAttrs:L1e,templatefallbackAttrs:D1e}=gn(),_V=ci().dash,E1e=kc(),wV=Bf(),P1e=wV.INCREASING.COLOR,R1e=wV.DECREASING.COLOR,$b=k0.line;function bV(e){return{line:{color:Om({},$b.color,{dflt:e}),width:$b.width,dash:_V,editType:"style"},editType:"style"}}TV.exports={xperiod:k0.xperiod,xperiod0:k0.xperiod0,xperiodalignment:k0.xperiodalignment,xhoverformat:xV("x"),yhoverformat:xV("y"),x:{valType:"data_array",editType:"calc+clearAxisTypes"},open:{valType:"data_array",editType:"calc"},high:{valType:"data_array",editType:"calc"},low:{valType:"data_array",editType:"calc"},close:{valType:"data_array",editType:"calc"},line:{width:Om({},$b.width,{}),dash:Om({},_V,{}),editType:"style"},increasing:bV(P1e),decreasing:bV(R1e),text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:L1e({},{keys:["open","high","low","close"]}),hovertemplatefallback:D1e(),tickwidth:{valType:"number",min:0,max:.5,dflt:.3,editType:"calc"},hoverlabel:Om({},E1e.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style"}}),zorder:k0.zorder}});var Kb=B((u6e,MV)=>{"use strict";var z1e=gr(),N1e=Pe();MV.exports=function(r,t,a,n){var i=a("x"),l=a("open"),o=a("high"),s=a("low"),u=a("close");a("hoverlabel.split");var f=z1e.getComponentMethod("calendars","handleTraceDefaults");if(f(r,t,["x"],n),!!(l&&o&&s&&u)){var c=Math.min(l.length,o.length,s.length,u.length);return i&&(c=Math.min(c,N1e.minRowLength(i))),t._length=c,c}}});var qV=B((f6e,kV)=>{"use strict";var F1e=Pe(),I1e=Kb(),H1e=ws(),O1e=Bm();kV.exports=function(r,t,a,n){function i(o,s){return F1e.coerce(r,t,O1e,o,s)}var l=I1e(r,t,i,n);if(!l){t.visible=!1;return}H1e(r,t,n,i,{x:!0}),i("xhoverformat"),i("yhoverformat"),i("line.width"),i("line.dash"),AV(r,t,i,"increasing"),AV(r,t,i,"decreasing"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),i("tickwidth"),n._requestRangeslider[t.xaxis]=!0,i("zorder")};function AV(e,r,t,a){t(a+".line.color"),t(a+".line.width",r.line.width),t(a+".line.dash",r.line.dash)}});var Qb=B((c6e,CV)=>{"use strict";var rc=Pe(),Ym=rc._,Vm=Zr(),B1e=Ts(),q0=wt().BADNUM;function Y1e(e,r){var t=Vm.getFromId(e,r.xaxis),a=Vm.getFromId(e,r.yaxis),n=G1e(e,t,r),i=r._minDiff;r._minDiff=null;var l=r._origX;r._origX=null;var o=r._xcalc;r._xcalc=null;var s=SV(e,r,l,o,a,V1e);return r._extremes[t._id]=Vm.findExtremes(t,o,{vpad:i/2}),s.length?(rc.extendFlat(s[0].t,{wHover:i/2,tickLen:n}),s):[{t:{empty:!0}}]}function V1e(e,r,t,a){return{o:e,h:r,l:t,c:a}}function SV(e,r,t,a,n,i){for(var l=n.makeCalcdata(r,"open"),o=n.makeCalcdata(r,"high"),s=n.makeCalcdata(r,"low"),u=n.makeCalcdata(r,"close"),f=rc.isArrayOrTypedArray(r.text),c=rc.isArrayOrTypedArray(r.hovertext),h=!0,d=null,p=!!r.xperiodalignment,y=[],m=0;md):h=M>_,d=M;var k=i(_,w,x,M);k.pos=b,k.yc=(_+M)/2,k.i=m,k.dir=h?"increasing":"decreasing",k.x=k.pos,k.y=[x,w],p&&(k.orig_p=t[m]),f&&(k.tx=r.text[m]),c&&(k.htx=r.hovertext[m]),y.push(k)}else y.push({pos:b,empty:!0})}return r._extremes[n._id]=Vm.findExtremes(n,rc.concat(s,o),{padded:!0}),y.length&&(y[0].t={labels:{open:Ym(e,"open:")+" ",high:Ym(e,"high:")+" ",low:Ym(e,"low:")+" ",close:Ym(e,"close:")+" "}}),y}function G1e(e,r,t){var a=t._minDiff;if(!a){var n=e._fullData,i=[];a=1/0;var l;for(l=0;l{"use strict";var U1e=kr(),LV=Pe();DV.exports=function(r,t,a,n){var i=t.yaxis,l=t.xaxis,o=!!l.rangebreaks;LV.makeTraceGroups(n,a,"trace ohlc").each(function(s){var u=U1e.select(this),f=s[0],c=f.t,h=f.trace;if(h.visible!==!0||c.empty){u.remove();return}var d=c.tickLen,p=u.selectAll("path").data(LV.identity);p.enter().append("path"),p.exit().remove(),p.attr("d",function(y){if(y.empty)return"M0,0Z";var m=l.c2p(y.pos-d,!0),b=l.c2p(y.pos+d,!0),_=o?(m+b)/2:l.c2p(y.pos,!0),w=i.c2p(y.o,!0),x=i.c2p(y.h,!0),M=i.c2p(y.l,!0),k=i.c2p(y.c,!0);return"M"+m+","+w+"H"+_+"M"+_+","+x+"V"+M+"M"+b+","+k+"H"+_})})}});var RV=B((h6e,PV)=>{"use strict";var jb=kr(),W1e=Yr(),X1e=xr();PV.exports=function(r,t,a){var n=a||jb.select(r).selectAll("g.ohlclayer").selectAll("g.trace");n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var l=i[0].trace;jb.select(this).selectAll("path").each(function(o){if(!o.empty){var s=l[o.dir].line;jb.select(this).style("fill","none").call(X1e.stroke,s.color).call(W1e.dashLine,s.dash,s.width).style("opacity",l.selectedpoints&&!o.selected?.3:1)}})})}});var r_=B((d6e,HV)=>{"use strict";var e_=Zr(),Z1e=Pe(),Gm=xi(),J1e=xr(),$1e=Pe().fillText,zV=Bf(),K1e={increasing:zV.INCREASING.SYMBOL,decreasing:zV.DECREASING.SYMBOL};function Q1e(e,r,t,a){var n=e.cd,i=n[0].trace;return i.hoverlabel.split?FV(e,r,t,a):IV(e,r,t,a)}function NV(e,r,t,a){var n=e.cd,i=e.xa,l=n[0].trace,o=n[0].t,s=l.type,u=s==="ohlc"?"l":"min",f=s==="ohlc"?"h":"max",c,h,d=o.bPos||0,p=function(E){return E.pos+d-r},y=o.bdPos||o.tickLen,m=o.wHover,b=Math.min(1,y/Math.abs(i.r2c(i.range[1])-i.r2c(i.range[0])));c=e.maxHoverDistance-b,h=e.maxSpikeDistance-b;function _(E){var R=p(E);return Gm.inbox(R-m,R+m,c)}function w(E){var R=E[u],N=E[f];return R===N||Gm.inbox(R-t,N-t,c)}function x(E){return(_(E)+w(E))/2}var M=Gm.getDistanceFunction(a,_,w,x);if(Gm.getClosest(n,M,e),e.index===!1)return null;var k=n[e.index];if(k.empty)return null;var A=k.dir,C=l[A],D=C.line.color;return J1e.opacity(D)&&C.line.width?e.color=D:e.color=C.fillcolor,e.x0=i.c2p(k.pos+d-y,!0),e.x1=i.c2p(k.pos+d+y,!0),e.xLabelVal=k.orig_p!==void 0?k.orig_p:k.pos,e.spikeDistance=x(k)*h/c,e.xSpike=i.c2p(k.pos,!0),e}function FV(e,r,t,a){var n=e.cd,i=e.ya,l=n[0].trace,o=n[0].t,s=[],u=NV(e,r,t,a);if(!u)return[];var f=n[u.index],c=f.hi||l.hoverinfo||"";if(c==="none"||c==="skip")return[];for(var h=["high","open","close","low"],d={},p=0;p"+o.labels[y]+e_.hoverLabelText(i,m,l.yhoverformat)):(_=Z1e.extendFlat({},u),_.y0=_.y1=b,_.yLabelVal=m,_.yLabel=o.labels[y]+e_.hoverLabelText(i,m,l.yhoverformat),_.name="",s.push(_),d[m]=_)}return s}function IV(e,r,t,a){var n=e.cd,i=e.ya,l=n[0].trace,o=n[0].t,s=NV(e,r,t,a);if(!s)return[];var u=s.index,f=n[u],c=s.index=f.i,h=f.dir;function d(x){return o.labels[x]+e_.hoverLabelText(i,l[x][c],l.yhoverformat)}var p=f.hi||l.hoverinfo||"",y=p.split("+"),m=p==="all",b=m||y.indexOf("y")!==-1,_=m||y.indexOf("text")!==-1,w=b?[d("open"),d("high"),d("low"),d("close")+" "+K1e[h]]:[];return _&&$1e(f,l,w),s.extraText=w.join("
"),s.y0=s.y1=i.c2p(f.yc,!0),[s]}HV.exports={hoverPoints:Q1e,hoverSplit:FV,hoverOnPoints:IV}});var t_=B((p6e,OV)=>{"use strict";OV.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,l=[],o,s=a[0].t.bPos||0;if(t===!1)for(o=0;o{"use strict";BV.exports={moduleType:"trace",name:"ohlc",basePlotModule:gl(),categories:["cartesian","svg","showLegend"],meta:{},attributes:Bm(),supplyDefaults:qV(),calc:Qb().calc,plot:EV(),style:RV(),hoverPoints:r_().hoverPoints,selectPoints:t_()}});var GV=B((y6e,VV)=>{"use strict";VV.exports=YV()});var JV=B((g6e,ZV)=>{"use strict";var j1e=X3(),ai=_i(),UV=Tl(),epe=Fn(),WV=pi().axisHoverFormat,{hovertemplateAttrs:rpe,templatefallbackAttrs:tpe}=gn(),Sl=mt().extendFlat,tc=ai.marker,XV=tc.line;ZV.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:ai.xperiod,yperiod:ai.yperiod,xperiod0:ai.xperiod0,yperiod0:ai.yperiod0,xperiodalignment:ai.xperiodalignment,yperiodalignment:ai.yperiodalignment,xhoverformat:WV("x"),yhoverformat:WV("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:Sl({},tc.symbol,{arrayOk:!1,editType:"plot"}),opacity:Sl({},tc.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:Sl({},tc.angle,{arrayOk:!1,editType:"calc"}),size:Sl({},tc.size,{arrayOk:!1,editType:"calc"}),color:Sl({},tc.color,{arrayOk:!1,editType:"style"}),line:{color:Sl({},XV.color,{arrayOk:!1,dflt:epe.defaultLine,editType:"style"}),width:Sl({},XV.width,{arrayOk:!1,dflt:0,editType:"style"}),outliercolor:{valType:"color",editType:"style"},outlierwidth:{valType:"number",min:0,dflt:1,editType:"style"},editType:"style"},editType:"plot"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:j1e(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},showwhiskers:{valType:"boolean",editType:"calc"},offsetgroup:UV.offsetgroup,alignmentgroup:UV.alignmentgroup,selected:{marker:ai.selected.marker,editType:"style"},unselected:{marker:ai.unselected.marker,editType:"style"},text:Sl({},ai.text,{}),hovertext:Sl({},ai.hovertext,{}),hovertemplate:rpe({}),hovertemplatefallback:tpe(),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"},zorder:ai.zorder}});var n_=B((x6e,QV)=>{"use strict";var a_=Pe().extendFlat,$V=pi().axisHoverFormat,ja=Bm(),ac=JV();function KV(e){return{line:{color:a_({},ac.line.color,{dflt:e}),width:ac.line.width,editType:"style"},fillcolor:ac.fillcolor,editType:"style"}}QV.exports={xperiod:ja.xperiod,xperiod0:ja.xperiod0,xperiodalignment:ja.xperiodalignment,xhoverformat:$V("x"),yhoverformat:$V("y"),x:ja.x,open:ja.open,high:ja.high,low:ja.low,close:ja.close,line:{width:a_({},ac.line.width,{}),editType:"style"},increasing:KV(ja.increasing.line.color.dflt),decreasing:KV(ja.decreasing.line.color.dflt),text:ja.text,hovertext:ja.hovertext,hovertemplate:ja.hovertemplate,hovertemplatefallback:ja.hovertemplatefallback,whiskerwidth:a_({},ac.whiskerwidth,{dflt:0}),hoverlabel:ja.hoverlabel,zorder:ac.zorder}});var i_=B((b6e,jV)=>{"use strict";jV.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"}}});var tG=B((_6e,rG)=>{"use strict";var ape=gr(),npe=Pe(),ipe=i_();function eG(e,r,t,a,n){for(var i=n+"Layout",l=!1,o=0;o{"use strict";var aG=Zr(),ope=Pe(),spe=gs().getAxisGroup,nG=["v","h"];function upe(e,r){for(var t=e.calcdata,a=r.xaxis,n=r.yaxis,i=0;i1,_=1-i[e+"gap"],w=1-i[e+"groupgap"];for(s=0;s0;if(A==="positive"?(O=C*(k?1:.5),J=Z,Y=J=E):A==="negative"?(O=J=E,Y=C*(k?1:.5),ee=Z):(O=Y=C,J=ee=Z),fe){var be=x.pointpos,ce=x.jitter,xe=x.marker.size/2,U=0;be+ce>=0&&(U=Z*(be+ce),U>O?(qe=!0,ve=xe,le=U):U>J&&(ve=xe,le=O)),U<=O&&(le=O);var Q=0;be-ce<=0&&(Q=-Z*(be-ce),Q>Y?(qe=!0,j=xe,ue=Q):Q>ee&&(j=xe,ue=Y)),Q<=Y&&(ue=Y)}else le=O,ue=Y;var X=new Array(f.length);for(u=0;u{"use strict";var fpe=Pe(),cpe=xr(),vpe=Kb(),hpe=ws(),dpe=n_();uG.exports=function(r,t,a,n){function i(o,s){return fpe.coerce(r,t,dpe,o,s)}var l=vpe(r,t,i,n);if(!l){t.visible=!1;return}hpe(r,t,n,i,{x:!0}),i("xhoverformat"),i("yhoverformat"),i("line.width"),sG(r,t,i,"increasing"),sG(r,t,i,"decreasing"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),i("whiskerwidth"),n._requestRangeslider[t.xaxis]=!0,i("zorder")};function sG(e,r,t,a){var n=t(a+".line.color");t(a+".line.width",r.line.width),t(a+".fillcolor",cpe.addOpacity(n,.5))}});var dG=B((M6e,hG)=>{"use strict";var cG=Pe(),vG=Zr(),ppe=Ts(),mpe=Qb().calcCommon;hG.exports=function(e,r){var t=e._fullLayout,a=vG.getFromId(e,r.xaxis),n=vG.getFromId(e,r.yaxis),i=a.makeCalcdata(r,"x"),l=ppe(r,a,"x",i).vals,o=mpe(e,r,i,l,n,ype);return o.length?(cG.extendFlat(o[0].t,{num:t._numBoxes,dPos:cG.distinctVals(l).minDiff/2,posLetter:"x",valLetter:"y"}),t._numBoxes++,o):[{t:{empty:!0}}]};function ype(e,r,t,a){return{min:t,q1:Math.min(e,a),med:a,q3:Math.max(e,a),max:r}}});var bG=B((A6e,xG)=>{"use strict";var nc=kr(),$s=Pe(),gpe=Yr(),pG=5,xpe=.01;function bpe(e,r,t,a){var n=e._context.staticPlot,i=r.xaxis,l=r.yaxis;$s.makeTraceGroups(a,t,"trace boxes").each(function(o){var s=nc.select(this),u=o[0],f=u.t,c=u.trace;if(f.wdPos=f.bdPos*c.whiskerwidth,c.visible!==!0||f.empty){s.remove();return}var h,d;c.orientation==="h"?(h=l,d=i):(h=i,d=l),mG(s,{pos:h,val:d},c,f,n),yG(s,{x:i,y:l},c,f),gG(s,{pos:h,val:d},c,f)})}function mG(e,r,t,a,n){var i=t.orientation==="h",l=r.val,o=r.pos,s=!!o.rangebreaks,u=a.bPos,f=a.wdPos||0,c=a.bPosPxOffset||0,h=t.whiskerwidth||0,d=t.showwhiskers!==!1,p=t.notched||!1,y=p?1-2*t.notchwidth:1,m,b;Array.isArray(a.bdPos)?(m=a.bdPos[0],b=a.bdPos[1]):(m=a.bdPos,b=a.bdPos);var _=e.selectAll("path.box").data(t.type!=="violin"||t.box.visible?$s.identity:[]);_.enter().append("path").style("vector-effect",n?"none":"non-scaling-stroke").attr("class","box"),_.exit().remove(),_.each(function(w){if(w.empty)return nc.select(this).attr("d","M0,0Z");var x=o.c2l(w.pos+u,!0),M=o.l2p(x-m)+c,k=o.l2p(x+b)+c,A=s?(M+k)/2:o.l2p(x)+c,C=t.whiskerwidth,D=s?M*C+(1-C)*A:o.l2p(x-f)+c,E=s?k*C+(1-C)*A:o.l2p(x+f)+c,R=o.l2p(x-m*y)+c,N=o.l2p(x+b*y)+c,I=t.sizemode==="sd",H=l.c2p(I?w.mean-w.sd:w.q1,!0),G=I?l.c2p(w.mean+w.sd,!0):l.c2p(w.q3,!0),W=$s.constrain(I?l.c2p(w.mean,!0):l.c2p(w.med,!0),Math.min(H,G)+1,Math.max(H,G)-1),V=w.lf===void 0||t.boxpoints===!1||I,O=l.c2p(V?w.min:w.lf,!0),Y=l.c2p(V?w.max:w.uf,!0),Z=l.c2p(w.ln,!0),J=l.c2p(w.un,!0);i?nc.select(this).attr("d","M"+W+","+R+"V"+N+"M"+H+","+M+"V"+k+(p?"H"+Z+"L"+W+","+N+"L"+J+","+k:"")+"H"+G+"V"+M+(p?"H"+J+"L"+W+","+R+"L"+Z+","+M:"")+"Z"+(d?"M"+H+","+A+"H"+O+"M"+G+","+A+"H"+Y+(h===0?"":"M"+O+","+D+"V"+E+"M"+Y+","+D+"V"+E):"")):nc.select(this).attr("d","M"+R+","+W+"H"+N+"M"+M+","+H+"H"+k+(p?"V"+Z+"L"+N+","+W+"L"+k+","+J:"")+"V"+G+"H"+M+(p?"V"+J+"L"+R+","+W+"L"+M+","+Z:"")+"Z"+(d?"M"+A+","+H+"V"+O+"M"+A+","+G+"V"+Y+(h===0?"":"M"+D+","+O+"H"+E+"M"+D+","+Y+"H"+E):""))})}function yG(e,r,t,a){var n=r.x,i=r.y,l=a.bdPos,o=a.bPos,s=t.boxpoints||t.points;$s.seedPseudoRandom();var u=function(h){return h.forEach(function(d){d.t=a,d.trace=t}),h},f=e.selectAll("g.points").data(s?u:[]);f.enter().append("g").attr("class","points"),f.exit().remove();var c=f.selectAll("path").data(function(h){var d,p=h.pts2,y=Math.max((h.max-h.min)/10,h.q3-h.q1),m=y*1e-9,b=y*xpe,_=[],w=0,x;if(t.jitter){if(y===0)for(w=1,_=new Array(p.length),d=0;dh.lo&&(E.so=!0)}return p});c.enter().append("path").classed("point",!0),c.exit().remove(),c.call(gpe.translatePoints,n,i)}function gG(e,r,t,a){var n=r.val,i=r.pos,l=!!i.rangebreaks,o=a.bPos,s=a.bPosPxOffset||0,u=t.boxmean||(t.meanline||{}).visible,f,c;Array.isArray(a.bdPos)?(f=a.bdPos[0],c=a.bdPos[1]):(f=a.bdPos,c=a.bdPos);var h=e.selectAll("path.mean").data(t.type==="box"&&t.boxmean||t.type==="violin"&&t.box.visible&&t.meanline.visible?$s.identity:[]);h.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),h.exit().remove(),h.each(function(d){var p=i.c2l(d.pos+o,!0),y=i.l2p(p-f)+s,m=i.l2p(p+c)+s,b=l?(y+m)/2:i.l2p(p)+s,_=n.c2p(d.mean,!0),w=n.c2p(d.mean-d.sd,!0),x=n.c2p(d.mean+d.sd,!0);t.orientation==="h"?nc.select(this).attr("d","M"+_+","+y+"V"+m+(u==="sd"?"m0,0L"+w+","+b+"L"+_+","+y+"L"+x+","+b+"Z":"")):nc.select(this).attr("d","M"+y+","+_+"H"+m+(u==="sd"?"m0,0L"+b+","+w+"L"+y+","+_+"L"+b+","+x+"Z":""))})}xG.exports={plot:bpe,plotBoxAndWhiskers:mG,plotPoints:yG,plotBoxMean:gG}});var wG=B((k6e,_G)=>{"use strict";var l_=kr(),o_=xr(),s_=Yr();function _pe(e,r,t){var a=t||l_.select(e).selectAll("g.trace.boxes");a.style("opacity",function(n){return n[0].trace.opacity}),a.each(function(n){var i=l_.select(this),l=n[0].trace,o=l.line.width;function s(c,h,d,p){c.style("stroke-width",h+"px").call(o_.stroke,d).call(o_.fill,p)}var u=i.selectAll("path.box");if(l.type==="candlestick")u.each(function(c){if(!c.empty){var h=l_.select(this),d=l[c.dir];s(h,d.line.width,d.line.color,d.fillcolor),h.style("opacity",l.selectedpoints&&!c.selected?.3:1)}});else{s(u,o,l.line.color,l.fillcolor),i.selectAll("path.mean").style({"stroke-width":o,"stroke-dasharray":2*o+"px,"+o+"px"}).call(o_.stroke,l.line.color);var f=i.selectAll("path.point");s_.pointStyle(f,l,e)}})}function wpe(e,r,t){var a=r[0].trace,n=t.selectAll("path.point");a.selectedpoints?s_.selectedPointStyle(n,a):s_.pointStyle(n,a,e)}_G.exports={style:_pe,styleOnSelect:wpe}});var MG=B((q6e,TG)=>{"use strict";TG.exports={moduleType:"trace",name:"candlestick",basePlotModule:gl(),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{},attributes:n_(),layoutAttributes:i_(),supplyLayoutDefaults:tG().supplyLayoutDefaults,crossTraceCalc:oG().crossTraceCalc,supplyDefaults:fG(),calc:dG(),plot:bG().plot,layerName:"boxlayer",style:wG().style,hoverPoints:r_().hoverPoints,selectPoints:t_()}});var kG=B((S6e,AG)=>{"use strict";AG.exports=MG()});var Na=B((C6e,SG)=>{"use strict";var qG=Object.getOwnPropertySymbols,Tpe=Object.prototype.hasOwnProperty,Mpe=Object.prototype.propertyIsEnumerable;function Ape(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function kpe(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var r={},t=0;t<10;t++)r["_"+String.fromCharCode(t)]=t;var a=Object.getOwnPropertyNames(r).map(function(i){return r[i]});if(a.join("")!=="0123456789")return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach(function(i){n[i]=i}),Object.keys(Object.assign({},n)).join("")==="abcdefghijklmnopqrst"}catch(i){return!1}}SG.exports=kpe()?Object.assign:function(e,r){for(var t,a=Ape(e),n,i=1;i{var Wm=Na();function CG(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}Wm(CG.prototype,{instance:function(e,r){e=(e||"gregorian").toLowerCase(),r=r||"";var t=this._localCals[e+"-"+r];if(!t&&this.calendars[e]&&(t=new this.calendars[e](r),this._localCals[e+"-"+r]=t),!t)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return t},newDate:function(e,r,t,a,n){return a=(e!=null&&e.year?e.calendar():typeof a=="string"?this.instance(a,n):a)||this.instance(),a.newDate(e,r,t)},substituteDigits:function(e){return function(r){return(r+"").replace(/[0-9]/g,function(t){return e[t]})}},substituteChineseDigits:function(e,r){return function(t){for(var a="",n=0;t>0;){var i=t%10;a=(i===0?"":e[i]+r[n])+a,n++,t=Math.floor(t/10)}return a.indexOf(e[1]+r[1])===0&&(a=a.substr(1)),a||e[0]}}});function u_(e,r,t,a){if(this._calendar=e,this._year=r,this._month=t,this._day=a,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function Um(e,r){return e=""+e,"000000".substring(0,r-e.length)+e}Wm(u_.prototype,{newDate:function(e,r,t){return this._calendar.newDate(e==null?this:e,r,t)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,r,t){if(!this._calendar.isValid(e,r,t))throw(Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=r,this._day=t,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,r){return this._calendar.add(this,e,r)},set:function(e,r){return this._calendar.set(this,e,r)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(Rr.local.differentCalendars||Rr.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var r=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return r===0?0:r<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+Um(Math.abs(this.year()),4)+"-"+Um(this.month(),2)+"-"+Um(this.day(),2)}});function f_(){this.shortYearCutoff="+10"}Wm(f_.prototype,{_validateLevel:0,newDate:function(e,r,t){return e==null?this.today():(e.year&&(this._validate(e,r,t,Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate),t=e.day(),r=e.month(),e=e.year()),new u_(this,e,r,t))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var r=this._validate(e,this.minMonth,this.minDay,Rr.local.invalidYear||Rr.regionalOptions[""].invalidYear);return r.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Rr.local.invalidYear||Rr.regionalOptions[""].invalidYear);return(r.year()<0?"-":"")+Um(Math.abs(r.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Rr.local.invalidYear||Rr.regionalOptions[""].invalidYear),12},monthOfYear:function(e,r){var t=this._validate(e,r,this.minDay,Rr.local.invalidMonth||Rr.regionalOptions[""].invalidMonth);return(t.month()+this.monthsInYear(t)-this.firstMonth)%this.monthsInYear(t)+this.minMonth},fromMonthOfYear:function(e,r){var t=(r+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,t,this.minDay,Rr.local.invalidMonth||Rr.regionalOptions[""].invalidMonth),t},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Rr.local.invalidYear||Rr.regionalOptions[""].invalidYear);return this.leapYear(r)?366:365},dayOfYear:function(e,r,t){var a=this._validate(e,r,t,Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate);return a.toJD()-this.newDate(a.year(),this.fromMonthOfYear(a.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(a))+2)%this.daysInWeek()},extraInfo:function(e,r,t){return this._validate(e,r,t,Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate),{}},add:function(e,r,t){return this._validate(e,this.minMonth,this.minDay,Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,r,t),r,t)},_add:function(e,r,t){if(this._validateLevel++,t==="d"||t==="w"){var a=e.toJD()+r*(t==="w"?this.daysInWeek():1),n=e.calendar().fromJD(a);return this._validateLevel--,[n.year(),n.month(),n.day()]}try{var i=e.year()+(t==="y"?r:0),l=e.monthOfYear()+(t==="m"?r:0),n=e.day(),o=function(f){for(;lc-1+f.minMonth;)i++,l-=c,c=f.monthsInYear(i)};t==="y"?(e.month()!==this.fromMonthOfYear(i,l)&&(l=this.newDate(i,e.month(),this.minDay).monthOfYear()),l=Math.min(l,this.monthsInYear(i)),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,l)))):t==="m"&&(o(this),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,l))));var s=[i,this.fromMonthOfYear(i,l),n];return this._validateLevel--,s}catch(u){throw this._validateLevel--,u}},_correctAdd:function(e,r,t,a){if(!this.hasYearZero&&(a==="y"||a==="m")&&(r[0]===0||e.year()>0!=r[0]>0)){var n={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[a],i=t<0?-1:1;r=this._add(e,t*n[0]+i*n[1],n[2])}return e.date(r[0],r[1],r[2])},set:function(e,r,t){this._validate(e,this.minMonth,this.minDay,Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate);var a=t==="y"?r:e.year(),n=t==="m"?r:e.month(),i=t==="d"?r:e.day();return(t==="y"||t==="m")&&(i=Math.min(i,this.daysInMonth(a,n))),e.date(a,n,i)},isValid:function(e,r,t){this._validateLevel++;var a=this.hasYearZero||e!==0;if(a){var n=this.newDate(e,r,this.minDay);a=r>=this.minMonth&&r-this.minMonth=this.minDay&&t-this.minDay13.5?13:1),u=n-(s>2.5?4716:4715);return u<=0&&u--,this.newDate(u,s,o)},toJSDate:function(e,r,t){var a=this._validate(e,r,t,Rr.local.invalidDate||Rr.regionalOptions[""].invalidDate),n=new Date(a.year(),a.month()-1,a.day());return n.setHours(0),n.setMinutes(0),n.setSeconds(0),n.setMilliseconds(0),n.setHours(n.getHours()>12?n.getHours()+2:0),n},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var Rr=LG.exports=new CG;Rr.cdate=u_;Rr.baseCalendar=f_;Rr.calendars.gregorian=c_});var DG=B(()=>{var v_=Na(),pa=Fa();v_(pa.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});pa.local=pa.regionalOptions[""];v_(pa.cdate.prototype,{formatDate:function(e,r){return typeof e!="string"&&(r=e,e=""),this._calendar.formatDate(e||"",this,r)}});v_(pa.baseCalendar.prototype,{UNIX_EPOCH:pa.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:pa.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,r,t){if(typeof e!="string"&&(t=r,r=e,e=""),!r)return"";if(r.calendar()!==this)throw pa.local.invalidFormat||pa.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,t=t||{};for(var a=t.dayNamesShort||this.local.dayNamesShort,n=t.dayNames||this.local.dayNames,i=t.monthNumbers||this.local.monthNumbers,l=t.monthNamesShort||this.local.monthNamesShort,o=t.monthNames||this.local.monthNames,s=t.calculateWeek||this.local.calculateWeek,u=function(x,M){for(var k=1;w+k1},f=function(x,M,k,A){var C=""+M;if(u(x,A))for(;C.length1},_=function(N,I){var H=b(N,I),G=[2,3,H?4:2,H?4:2,10,11,20]["oyYJ@!".indexOf(N)+1],W=new RegExp("^-?\\d{1,"+G+"}"),V=r.substring(C).match(W);if(!V)throw(pa.local.missingNumberAt||pa.regionalOptions[""].missingNumberAt).replace(/\{0\}/,C);return C+=V[0].length,parseInt(V[0],10)},w=this,x=function(){if(typeof o=="function"){b("m");var N=o.call(w,r.substring(C));return C+=N.length,N}return _("m")},M=function(N,I,H,G){for(var W=b(N,G)?H:I,V=0;V-1){h=1,d=p;for(var R=this.daysInMonth(c,h);d>R;R=this.daysInMonth(c,h))h++,d-=R}return f>-1?this.fromJD(f):this.newDate(c,h,d)},determineDate:function(e,r,t,a,n){t&&typeof t!="object"&&(n=a,a=t,t=null),typeof a!="string"&&(n=a,a="");var i=this,l=function(o){try{return i.parseDate(a,o,n)}catch(c){}o=o.toLowerCase();for(var s=(o.match(/^c/)&&t?t.newDate():null)||i.today(),u=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,f=u.exec(o);f;)s.add(parseInt(f[1],10),f[2]||"d"),f=u.exec(o);return s};return r=r?r.newDate():null,e=e==null?r:typeof e=="string"?l(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?r:i.today().add(e,"d"):i.newDate(e),e}})});var EG=B(()=>{var ko=Fa(),qpe=Na(),h_=ko.instance();function Xm(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Xm.prototype=new ko.baseCalendar;qpe(Xm.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,r){if(typeof e=="string"){var t=e.match(Cpe);return t?t[0]:""}var a=this._validateYear(e),n=e.month(),i=""+this.toChineseMonth(a,n);return r&&i.length<2&&(i="0"+i),this.isIntercalaryMonth(a,n)&&(i+="i"),i},monthNames:function(e){if(typeof e=="string"){var r=e.match(Lpe);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},monthNamesShort:function(e){if(typeof e=="string"){var r=e.match(Dpe);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},parseMonth:function(e,r){e=this._validateYear(e);var t=parseInt(r),a;if(isNaN(t))r[0]==="\u95F0"&&(a=!0,r=r.substring(1)),r[r.length-1]==="\u6708"&&(r=r.substring(0,r.length-1)),t=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(r);else{var n=r[r.length-1];a=n==="i"||n==="I"}var i=this.toMonthIndex(e,t,a);return i},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,r){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw r.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,r,t){var a=this.intercalaryMonth(e),n=t&&r!==a;if(n||r<1||r>12)throw ko.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return a?!t&&r<=a?i=r-1:i=r:i=r-1,i},toChineseMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e),a=t?12:11;if(r<0||r>a)throw ko.local.invalidMonth.replace(/\{0\}/,this.local.name);var n;return t?r>13;return t},isIntercalaryMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e);return!!t&&t===r},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,r,t){var a=this._validateYear(e,ko.local.invalidyear),n=So[a-So[0]],i=n>>9&4095,l=n>>5&15,o=n&31,s;s=h_.newDate(i,l,o),s.add(4-(s.dayOfWeek()||7),"d");var u=this.toJD(e,r,t)-s.toJD();return 1+Math.floor(u/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,r){e.year&&(r=e.month(),e=e.year()),e=this._validateYear(e);var t=qo[e-qo[0]],a=t>>13,n=a?12:11;if(r>n)throw ko.local.invalidMonth.replace(/\{0\}/,this.local.name);var i=t&1<<12-r?30:29;return i},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,i,t,ko.local.invalidDate);e=this._validateYear(a.year()),r=a.month(),t=a.day();var n=this.isIntercalaryMonth(e,r),i=this.toChineseMonth(e,r),l=Ppe(e,i,t,n);return h_.toJD(l.year,l.month,l.day)},fromJD:function(e){var r=h_.fromJD(e),t=Epe(r.year(),r.month(),r.day()),a=this.toMonthIndex(t.year,t.month,t.isIntercalary);return this.newDate(t.year,a,t.day)},fromString:function(e){var r=e.match(Spe),t=this._validateYear(+r[1]),a=+r[2],n=!!r[3],i=this.toMonthIndex(t,a,n),l=+r[4];return this.newDate(t,i,l)},add:function(e,r,t){var a=e.year(),n=e.month(),i=this.isIntercalaryMonth(a,n),l=this.toChineseMonth(a,n),o=Object.getPrototypeOf(Xm.prototype).add.call(this,e,r,t);if(t==="y"){var s=o.year(),u=o.month(),f=this.isIntercalaryMonth(s,l),c=i&&f?this.toMonthIndex(s,l,!0):this.toMonthIndex(s,l,!1);c!==u&&o.month(c)}return o}});var Spe=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,Cpe=/^\d?\d[iI]?/m,Lpe=/^闰?十?[一二三四五六七八九]?月/m,Dpe=/^闰?十?[一二三四五六七八九]?/m;ko.calendars.chinese=Xm;var qo=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],So=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function Epe(e,r,t,a){var n,i;if(typeof e=="object")n=e,i=r||{};else{var l=typeof e=="number"&&e>=1888&&e<=2111;if(!l)throw new Error("Solar year outside range 1888-2111");var o=typeof r=="number"&&r>=1&&r<=12;if(!o)throw new Error("Solar month outside range 1 - 12");var s=typeof t=="number"&&t>=1&&t<=31;if(!s)throw new Error("Solar day outside range 1 - 31");n={year:e,month:r,day:t},i=a||{}}var u=So[n.year-So[0]],f=n.year<<9|n.month<<5|n.day;i.year=f>=u?n.year:n.year-1,u=So[i.year-So[0]];var c=u>>9&4095,h=u>>5&15,d=u&31,p,y=new Date(c,h-1,d),m=new Date(n.year,n.month-1,n.day);p=Math.round((m-y)/(24*3600*1e3));var b=qo[i.year-qo[0]],_;for(_=0;_<13;_++){var w=b&1<<12-_?30:29;if(p>13;return!x||_=1888&&e<=2111;if(!o)throw new Error("Lunar year outside range 1888-2111");var s=typeof r=="number"&&r>=1&&r<=12;if(!s)throw new Error("Lunar month outside range 1 - 12");var u=typeof t=="number"&&t>=1&&t<=30;if(!u)throw new Error("Lunar day outside range 1 - 30");var f;typeof a=="object"?(f=!1,i=a):(f=!!a,i=n||{}),l={year:e,month:r,day:t,isIntercalary:f}}var c;c=l.day-1;var h=qo[l.year-qo[0]],d=h>>13,p;d&&(l.month>d||l.isIntercalary)?p=l.month:p=l.month-1;for(var y=0;y>9&4095,w=b>>5&15,x=b&31,M=new Date(_,w-1,x+c);return i.year=M.getFullYear(),i.month=1+M.getMonth(),i.day=M.getDate(),i}});var PG=B(()=>{var Ks=Fa(),Rpe=Na();function d_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}d_.prototype=new Ks.baseCalendar;Rpe(d_.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Ks.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ks.local.invalidYear||Ks.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Ks.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,Ks.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});Ks.calendars.coptic=d_});var RG=B(()=>{var Cl=Fa(),zpe=Na();function p_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}p_.prototype=new Cl.baseCalendar;zpe(p_.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Cl.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Cl.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Cl.local.invalidYear),400},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/8)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Cl.local.invalidMonth);return this.daysPerMonth[t.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Cl.local.invalidDate);return(a.day()+1)%8},weekDay:function(e,r,t){var a=this.dayOfWeek(e,r,t);return a>=2&&a<=6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Cl.local.invalidDate);return{century:Npe[Math.floor((a.year()-1)/100)+1]||""}},toJD:function(e,r,t){var a=this._validate(e,r,t,Cl.local.invalidDate);return e=a.year()+(a.year()<0?1:0),r=a.month(),t=a.day(),t+(r>1?16:0)+(r>2?(r-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var r=Math.floor(e/400)+1;e-=(r-1)*400,e+=e>15?16:0;var t=Math.floor(e/32)+1,a=e-(t-1)*32+1;return this.newDate(r<=0?r-1:r,t,a)}});var Npe={20:"Fruitbat",21:"Anchovy"};Cl.calendars.discworld=p_});var zG=B(()=>{var Qs=Fa(),Fpe=Na();function m_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}m_.prototype=new Qs.baseCalendar;Fpe(m_.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Qs.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Qs.local.invalidYear||Qs.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Qs.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,Qs.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});Qs.calendars.ethiopian=m_});var NG=B(()=>{var Co=Fa(),Ipe=Na();function y_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}y_.prototype=new Co.baseCalendar;Ipe(y_.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Co.local.invalidYear);return this._leapYear(r.year())},_leapYear:function(e){return e=e<0?e+1:e,Zm(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Co.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Co.local.invalidYear);return e=r.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,Co.local.invalidMonth),r===12&&this.leapYear(e)||r===8&&Zm(this.daysInYear(e),10)===5?30:r===9&&Zm(this.daysInYear(e),10)===3?29:this.daysPerMonth[r-1]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Co.local.invalidDate);return{yearType:(this.leapYear(a)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(a)%10-3]}},toJD:function(e,r,t){var a=this._validate(e,r,t,Co.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=e<=0?e+1:e,i=this.jdEpoch+this._delay1(n)+this._delay2(n)+t+1;if(r<7){for(var l=7;l<=this.monthsInYear(e);l++)i+=this.daysInMonth(e,l);for(var l=1;l=this.toJD(r===-1?1:r+1,7,1);)r++;for(var t=ethis.toJD(r,t,this.daysInMonth(r,t));)t++;var a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});function Zm(e,r){return e-r*Math.floor(e/r)}Co.calendars.hebrew=y_});var FG=B(()=>{var S0=Fa(),Hpe=Na();function g_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}g_.prototype=new S0.baseCalendar;Hpe(g_.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,S0.local.invalidYear);return(r.year()*11+14)%30<11},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,S0.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,S0.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e=e<=0?e+1:e,t+Math.ceil(29.5*(r-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=Math.floor((30*(e-this.jdEpoch)+10646)/10631);r=r<=0?r-1:r;var t=Math.min(12,Math.ceil((e-29-this.toJD(r,1,1))/29.5)+1),a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});S0.calendars.islamic=g_});var IG=B(()=>{var C0=Fa(),Ope=Na();function x_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}x_.prototype=new C0.baseCalendar;Ope(x_.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,C0.local.invalidYear),t=r.year()<0?r.year()+1:r.year();return t%4===0},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(4-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,C0.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,C0.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e<0&&e++,r<=2&&(e--,r+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(r+1))+t-1524.5},fromJD:function(e){var r=Math.floor(e+.5),t=r+1524,a=Math.floor((t-122.1)/365.25),n=Math.floor(365.25*a),i=Math.floor((t-n)/30.6001),l=i-Math.floor(i<14?1:13),o=a-Math.floor(l>2?4716:4715),s=t-n-Math.floor(30.6001*i);return o<=0&&o--,this.newDate(o,l,s)}});C0.calendars.julian=x_});var OG=B(()=>{var ni=Fa(),Bpe=Na();function __(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}__.prototype=new ni.baseCalendar;Bpe(__.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,ni.local.invalidYear),!1},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,ni.local.invalidYear);e=r.year();var t=Math.floor(e/400);e=e%400,e+=e<0?400:0;var a=Math.floor(e/20);return t+"."+a+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var r=0,t=0;t19||t>0&&a<0)throw"Invalid Mayan year";r=r*20+a}return r},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ni.local.invalidYear),18},weekOfYear:function(e,r,t){return this._validate(e,r,t,ni.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ni.local.invalidYear),360},daysInMonth:function(e,r){return this._validate(e,r,this.minDay,ni.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,ni.local.invalidDate);return a.day()},weekDay:function(e,r,t){return this._validate(e,r,t,ni.local.invalidDate),!0},extraInfo:function(e,r,t){var a=this._validate(e,r,t,ni.local.invalidDate),n=a.toJD(),i=this._toHaab(n),l=this._toTzolkin(n);return{haabMonthName:this.local.haabMonths[i[0]-1],haabMonth:i[0],haabDay:i[1],tzolkinDayName:this.local.tzolkinMonths[l[0]-1],tzolkinDay:l[0],tzolkinTrecena:l[1]}},_toHaab:function(e){e-=this.jdEpoch;var r=b_(e+8+17*20,365);return[Math.floor(r/20)+1,b_(r,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[HG(e+20,20),HG(e+4,13)]},toJD:function(e,r,t){var a=this._validate(e,r,t,ni.local.invalidDate);return a.day()+a.month()*20+a.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var r=Math.floor(e/360);e=e%360,e+=e<0?360:0;var t=Math.floor(e/20),a=e%20;return this.newDate(r,t,a)}});function b_(e,r){return e-r*Math.floor(e/r)}function HG(e,r){return b_(e-1,r)+1}ni.calendars.mayan=__});var YG=B(()=>{var js=Fa(),Ype=Na();function w_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}w_.prototype=new js.baseCalendar;var BG=js.instance("gregorian");Ype(w_.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,js.local.invalidYear||js.regionalOptions[""].invalidYear);return BG.leapYear(r.year()+(r.year()<1?1:0)+1469)},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(1-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,js.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,js.local.invalidMonth),n=a.year();n<0&&n++;for(var i=a.day(),l=1;l=this.toJD(r+1,1,1);)r++;for(var t=e-Math.floor(this.toJD(r,1,1)+.5)+1,a=1;t>this.daysInMonth(r,a);)t-=this.daysInMonth(r,a),a++;return this.newDate(r,a,t)}});js.calendars.nanakshahi=w_});var VG=B(()=>{var eu=Fa(),Vpe=Na();function T_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}T_.prototype=new eu.baseCalendar;Vpe(T_.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,eu.local.invalidYear);if(e=r.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var t=0,a=this.minMonth;a<=12;a++)t+=this.NEPALI_CALENDAR_DATA[e][a];return t},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,eu.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[r-1]:this.NEPALI_CALENDAR_DATA[e][r]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},toJD:function(e,r,t){var a=this._validate(e,r,t,eu.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=eu.instance(),i=0,l=r,o=e;this._createMissingCalendarData(e);var s=e-(l>9||l===9&&t>=this.NEPALI_CALENDAR_DATA[o][0]?56:57);for(r!==9&&(i=t,l--);l!==9;)l<=0&&(l=12,o--),i+=this.NEPALI_CALENDAR_DATA[o][l],l--;return r===9?(i+=t-this.NEPALI_CALENDAR_DATA[o][0],i<0&&(i+=n.daysInYear(s))):i+=this.NEPALI_CALENDAR_DATA[o][9]-this.NEPALI_CALENDAR_DATA[o][0],n.newDate(s,1,1).add(i,"d").toJD()},fromJD:function(e){var r=eu.instance(),t=r.fromJD(e),a=t.year(),n=t.dayOfYear(),i=a+56;this._createMissingCalendarData(i);for(var l=9,o=this.NEPALI_CALENDAR_DATA[i][0],s=this.NEPALI_CALENDAR_DATA[i][l]-o+1;n>s;)l++,l>12&&(l=1,i++),s+=this.NEPALI_CALENDAR_DATA[i][l];var u=this.NEPALI_CALENDAR_DATA[i][l]-(s-n);return this.newDate(i,l,u)},_createMissingCalendarData:function(e){var r=this.daysPerMonth.slice(0);r.unshift(17);for(var t=e-1;t{var ic=Fa(),Gpe=Na();function $m(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function Jm(e){var r=e-475;e<0&&r++;var t=.242197,a=t*r,n=t*(r+1),i=a-Math.floor(a),l=n-Math.floor(n);return i>l}$m.prototype=new ic.baseCalendar;Gpe($m.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,ic.local.invalidYear);return Jm(r.year())},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-((a.dayOfWeek()+1)%7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,ic.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,ic.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=0;if(e>0)for(var i=1;i0?e-1:e)*365+n+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=475+(e-this.toJD(475,1,1))/365.242197,t=Math.floor(r);t<=0&&t--,e>this.toJD(t,12,Jm(t)?30:29)&&(t++,t===0&&t++);var a=e-this.toJD(t,1,1)+1,n=a<=186?Math.ceil(a/31):Math.ceil((a-6)/30),i=e-this.toJD(t,n,1)+1;return this.newDate(t,n,i)}});ic.calendars.persian=$m;ic.calendars.jalali=$m});var UG=B(()=>{var ru=Fa(),Upe=Na(),Km=ru.instance();function M_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}M_.prototype=new ru.baseCalendar;Upe(M_.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,ru.local.invalidYear),t=this._t2gYear(r.year());return Km.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,ru.local.invalidYear),n=this._t2gYear(a.year());return Km.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,ru.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,ru.local.invalidDate),n=this._t2gYear(a.year());return Km.toJD(n,a.month(),a.day())},fromJD:function(e){var r=Km.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});ru.calendars.taiwan=M_});var WG=B(()=>{var tu=Fa(),Wpe=Na(),Qm=tu.instance();function A_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}A_.prototype=new tu.baseCalendar;Wpe(A_.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,tu.local.invalidYear),t=this._t2gYear(r.year());return Qm.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,tu.local.invalidYear),n=this._t2gYear(a.year());return Qm.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,tu.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,tu.local.invalidDate),n=this._t2gYear(a.year());return Qm.toJD(n,a.month(),a.day())},fromJD:function(e){var r=Qm.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});tu.calendars.thai=A_});var XG=B(()=>{var au=Fa(),Xpe=Na();function k_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}k_.prototype=new au.baseCalendar;Xpe(k_.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,au.local.invalidYear);return this.daysInYear(r.year())===355},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var r=0,t=1;t<=12;t++)r+=this.daysInMonth(e,t);return r},daysInMonth:function(e,r){for(var t=this._validate(e,r,this.minDay,au.local.invalidMonth),a=t.toJD()-24e5+.5,n=0,i=0;ia)return Lo[n]-Lo[n-1];n++}return 30},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,au.local.invalidDate),n=12*(a.year()-1)+a.month()-15292,i=a.day()+Lo[n-1]-1;return i+24e5-.5},fromJD:function(e){for(var r=e-24e5+.5,t=0,a=0;ar);a++)t++;var n=t+15292,i=Math.floor((n-1)/12),l=i+1,o=n-12*i,s=r-Lo[t-1]+1;return this.newDate(l,o,s)},isValid:function(e,r,t){var a=au.baseCalendar.prototype.isValid.apply(this,arguments);return a&&(e=e.year!=null?e.year:e,a=e>=1276&&e<=1500),a},_validate:function(e,r,t,a){var n=au.baseCalendar.prototype._validate.apply(this,arguments);if(n.year<1276||n.year>1500)throw a.replace(/\{0\}/,this.local.name);return n}});au.calendars.ummalqura=k_;var Lo=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var JG=B((o7e,ZG)=>{"use strict";ZG.exports=Fa();DG();EG();PG();RG();zG();NG();FG();IG();OG();YG();VG();GG();UG();WG();XG()});var tU=B((s7e,rU)=>{"use strict";var KG=JG(),L0=Pe(),QG=wt(),Zpe=QG.EPOCHJD,Jpe=QG.ONEDAY,C_={valType:"enumerated",values:L0.sortObjectKeys(KG.calendars),editType:"calc",dflt:"gregorian"},jG=function(e,r,t,a){var n={};return n[t]=C_,L0.coerce(e,r,n,t,a)},$pe=function(e,r,t,a){for(var n=0;n{"use strict";aU.exports=tU()});var tme=B((f7e,lU)=>{var iU=fF();iU.register([hI(),nH(),OH(),qO(),mB(),OB(),gV(),GV(),kG(),nU()]);lU.exports=iU});return tme();})(); /*! Bundled license information: native-promise-only/lib/npo.src.js: diff --git a/dist/plotly-geo-assets.js b/dist/plotly-geo-assets.js index f65a96bd2ad..a1629b0fd34 100644 --- a/dist/plotly-geo-assets.js +++ b/dist/plotly-geo-assets.js @@ -1,5 +1,5 @@ /** -* plotly.js v3.3.0 +* plotly.js v3.3.1 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -149,7 +149,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.3.0"; + exports.version = "3.3.1"; } }); diff --git a/dist/plotly-geo.js b/dist/plotly-geo.js index 66abe5cc705..38bfe07a5b7 100644 --- a/dist/plotly-geo.js +++ b/dist/plotly-geo.js @@ -1,5 +1,5 @@ /** -* plotly.js (geo) v3.3.0 +* plotly.js (geo) v3.3.1 * 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.3.0"; + exports.version = "3.3.1"; } }); @@ -8750,7 +8750,7 @@ var Plotly = (() => { var isArrayOrTypedArray = require_array().isArrayOrTypedArray; module.exports = function nestedProperty(container, propStr) { if (isNumeric(propStr)) propStr = String(propStr); - else if (typeof propStr !== "string" || propStr.substr(propStr.length - 4) === "[-1]") { + else if (typeof propStr !== "string" || propStr.slice(-4) === "[-1]") { throw "bad property string"; } var propParts = propStr.split("."); @@ -8769,7 +8769,7 @@ var Plotly = (() => { if (indexed[1]) propParts[j] = indexed[1]; else if (j === 0) propParts.splice(0, 1); else throw "bad property string"; - indices = indexed[2].substr(1, indexed[2].length - 2).split("]["); + indices = indexed[2].slice(1, -1).split("]["); for (i = 0; i < indices.length; i++) { j++; propParts.splice(j, 0, Number(indices[i])); @@ -10847,11 +10847,11 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { key = keys[i]; val = container[key]; - if (key.substr(key.length - 5) === "color") { + if (key.slice(-5) === "color") { if (Array.isArray(val)) { for (j = 0; j < val.length; j++) val[j] = cleanOne(val[j]); } else container[key] = cleanOne(val); - } else if (key.substr(key.length - 10) === "colorscale" && Array.isArray(val)) { + } else if (key.slice(-10) === "colorscale" && Array.isArray(val)) { for (j = 0; j < val.length; j++) { if (Array.isArray(val[j])) val[j][1] = cleanOne(val[j][1]); } @@ -10866,7 +10866,7 @@ var Plotly = (() => { function cleanOne(val) { if (isNumeric(val) || typeof val !== "string") return val; var valTrim = val.trim(); - if (valTrim.substr(0, 3) !== "rgb") return val; + if (valTrim.slice(0, 3) !== "rgb") return val; var match = valTrim.match(/^rgba?\s*\(([^()]*)\)$/); if (!match) return val; var parts = match[1].trim().split(/\s*[\s,]\s*/); @@ -10960,7 +10960,7 @@ var Plotly = (() => { for (var i = 0; i < values.length; i++) { var k = String(values[i]); if (k.charAt(0) === "/" && k.charAt(k.length - 1) === "/") { - var regex = new RegExp(k.substr(1, k.length - 2)); + var regex = new RegExp(k.slice(1, -1)); if (regex.test(v)) return true; } else if (v === values[i]) return true; } @@ -10968,9 +10968,13 @@ var Plotly = (() => { } }, boolean: { - coerceFunction: function(v, propOut, dflt) { - if (v === true || v === false) propOut.set(v); - else propOut.set(dflt); + coerceFunction: function(v, propOut, dflt, opts) { + const isBoolean = (value) => value === true || value === false; + if (isBoolean(v) || opts.arrayOk && Array.isArray(v) && v.length > 0 && v.every(isBoolean)) { + propOut.set(v); + } else { + propOut.set(dflt); + } } }, number: { @@ -11037,11 +11041,12 @@ var Plotly = (() => { subplotid: { coerceFunction: function(v, propOut, dflt, opts) { var regex = opts.regex || counterRegex(dflt); - if (typeof v === "string" && regex.test(v)) { + const isSubplotId = (value) => typeof value === "string" && regex.test(value); + if (isSubplotId(v) || opts.arrayOk && isArrayOrTypedArray(v) && v.length > 0 && v.every(isSubplotId)) { propOut.set(v); - return; + } else { + propOut.set(dflt); } - propOut.set(dflt); }, validateFunction: function(v, opts) { var dflt = opts.dflt; @@ -13747,9 +13752,9 @@ var Plotly = (() => { var require_maplibre_gl = __commonJS({ "node_modules/maplibre-gl/dist/maplibre-gl.css"() { (function() { - if (!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")) { + if (!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")) { var e = document.createElement("style"); - e.id = "ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe"; + e.id = "696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97"; e.textContent = `.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`; document.head.appendChild(e); } @@ -14072,10 +14077,10 @@ var Plotly = (() => { var isWorld = isWorldCalendar(calendar); var s0 = s.charAt(0); if (isWorld && (s0 === "G" || s0 === "g")) { - s = s.substr(1); + s = s.slice(1); calendar = ""; } - var isChinese = isWorld && calendar.substr(0, 7) === "chinese"; + var isChinese = isWorld && calendar.slice(0, 7) === "chinese"; var match = s.match(isChinese ? DATETIME_REGEXP_CN : DATETIME_REGEXP); if (!match) return BADNUM; var y = match[1]; @@ -14119,7 +14124,7 @@ var Plotly = (() => { return exports.dateTime2ms(s, calendar) !== BADNUM; }; function lpad(val, digits) { - return String(val + Math.pow(10, digits)).substr(1); + return String(val + Math.pow(10, digits)).slice(1); } var NINETYDAYS = 90 * ONEDAY; var THREEHOURS = 3 * ONEHOUR; @@ -14139,7 +14144,7 @@ var Plotly = (() => { dateStr = utcFormat("G%Y-%m-%d")(new Date(msRounded)); } if (dateStr.charAt(0) === "-") { - while (dateStr.length < 11) dateStr = "-0" + dateStr.substr(1); + while (dateStr.length < 11) dateStr = "-0" + dateStr.slice(1); } else { while (dateStr.length < 10) dateStr = "0" + dateStr; } @@ -14211,7 +14216,7 @@ var Plotly = (() => { function modDateFormat(fmt, x, formatter, calendar) { fmt = fmt.replace(fracMatch, function(match) { var digits = Math.min(+match.charAt(1) || 6, 6); - var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).substr(2).replace(/0+$/, "") || "0"; + var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).slice(2).replace(/0+$/, "") || "0"; return fracSecs; }); var d = new Date(Math.floor(x + 0.05)); @@ -14234,7 +14239,7 @@ var Plotly = (() => { if (tr !== "M") { if (!isNumeric(tr)) tr = 0; var sec = Math.min(mod(x / ONESEC, 60), MAXSECONDS[tr]); - var secStr = (100 + sec).toFixed(tr).substr(1); + var secStr = (100 + sec).toFixed(tr).slice(1); if (tr > 0) { secStr = secStr.replace(/0+$/, "").replace(/[\.]$/, ""); } @@ -14948,8 +14953,8 @@ var Plotly = (() => { if (part.indexOf("Safari") !== -1) { for (var k = i - 1; k > -1; k--) { var prevPart = allParts[k]; - if (prevPart.substr(0, 8) === "Version/") { - var v = prevPart.substr(8).split(".")[0]; + if (prevPart.slice(0, 8) === "Version/") { + var v = prevPart.slice(8).split(".")[0]; if (isNumeric(v)) v = +v; if (v >= 13) return true; } @@ -15416,7 +15421,7 @@ var Plotly = (() => { return finalStep && finalStep(arg); }; lib.stripTrailingSlash = function(str) { - if (str.substr(-1) === "/") return str.substr(0, str.length - 1); + if (str.slice(-1) === "/") return str.slice(0, -1); return str; }; lib.noneOrAll = function(containerIn, containerOut, attrList) { @@ -15577,7 +15582,7 @@ var Plotly = (() => { } lib.minExtend = minExtend; lib.titleCase = function(s) { - return s.charAt(0).toUpperCase() + s.substr(1); + return s.charAt(0).toUpperCase() + s.slice(1); }; lib.containsAny = function(s, fragments) { for (var i = 0; i < fragments.length; i++) { @@ -17089,7 +17094,7 @@ var Plotly = (() => { if (name.charAt(lastChar) !== "s") { Lib.warn("bad argument to arrayDefaultKey: " + name); } - return name.substr(0, name.length - 1) + "defaults"; + return name.slice(0, -1) + "defaults"; } exports.arrayDefaultKey = arrayDefaultKey; exports.arrayEditor = function(parentIn, containerStr, itemOut) { @@ -17214,13 +17219,13 @@ var Plotly = (() => { var constants = require_constants2(); exports.id2name = function id2name(id) { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; - var axNum = id.split(" ")[0].substr(1); + var axNum = id.split(" ")[0].slice(1); if (axNum === "1") axNum = ""; return id.charAt(0) + "axis" + axNum; }; exports.name2id = function name2id(name) { if (!name.match(constants.AX_NAME_PATTERN)) return; - var axNum = name.substr(5); + var axNum = name.slice(5); if (axNum === "1") axNum = ""; return name.charAt(0) + axNum; }; @@ -17229,7 +17234,7 @@ var Plotly = (() => { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; if (axLetter && id.charAt(0) !== axLetter) return; if (domainTest && !domainId) return; - var axNum = id.split(" ")[0].substr(1).replace(/^0+/, ""); + var axNum = id.split(" ")[0].slice(1).replace(/^0+/, ""); if (axNum === "1") axNum = ""; return id.charAt(0) + axNum + (domainTest && domainId ? " domain" : ""); }; @@ -17241,7 +17246,7 @@ var Plotly = (() => { var i; for (i = 0; i < idList.length; i++) { var idi = idList[i]; - out[i] = fullLayout[idi.charAt(0) + "axis" + idi.substr(1)]; + out[i] = fullLayout[idi.charAt(0) + "axis" + idi.slice(1)]; } if (!only2d) { var sceneIds3D = fullLayout._subplots.gl3d || []; @@ -17272,7 +17277,7 @@ var Plotly = (() => { var ax = null; if (Registry.traceIs(fullTrace, "gl3d")) { var scene = fullTrace.scene; - if (scene.substr(0, 5) === "scene") { + if (scene.slice(0, 5) === "scene") { ax = fullLayout[scene][type + "axis"]; } } else { @@ -17284,7 +17289,7 @@ var Plotly = (() => { var letter1 = id1.charAt(0); var letter2 = id2.charAt(0); if (letter1 !== letter2) return letter1 > letter2 ? 1 : -1; - return +(id1.substr(1) || 1) - +(id2.substr(1) || 1); + return +(id1.slice(1) || 1) - +(id2.slice(1) || 1); }; exports.ref2id = function(ar) { return /^[xyz]/.test(ar) ? ar.split(" ")[0] : false; @@ -18517,7 +18522,12 @@ var Plotly = (() => { _module.attributes.showlegend ? _module.attributes : plots.attributes, "showlegend" ); - coerce("legend"); + Lib.coerce( + traceIn, + traceOut, + _module.attributes.legend ? _module.attributes : plots.attributes, + "legend" + ); coerce("legendwidth"); coerce("legendgroup"); coerce("legendgrouptitle.text"); @@ -18652,7 +18662,7 @@ var Plotly = (() => { Lib.coerce(layoutIn, layoutOut, scatterAttrs, "scattermode"); }; function getComputedSize(attr) { - return typeof attr === "string" && attr.substr(attr.length - 2) === "px" && parseFloat(attr); + return typeof attr === "string" && attr.slice(-2) === "px" && parseFloat(attr); } plots.plotAutoSize = function plotAutoSize(gd, layout, fullLayout) { var context = gd._context || {}; @@ -19092,7 +19102,7 @@ var Plotly = (() => { return; } if (mode === "keepdata") { - if (v.substr(v.length - 3) === "src") { + if (v.slice(-3) === "src") { return; } } else if (mode === "keepstream") { @@ -20324,9 +20334,9 @@ var Plotly = (() => { newParts.pop(); } if (len > eLen) { - newParts.push(p.substr(0, pLen2 - eLen) + ellipsis); + newParts.push(p.slice(0, Math.max(0, pLen2 - eLen)) + ellipsis); } else { - newParts.push(p.substr(0, pLen2)); + newParts.push(p.slice(0, pLen2)); } break; } @@ -20351,7 +20361,7 @@ var Plotly = (() => { var outChar; if (innerMatch.charAt(0) === "#") { outChar = fromCodePoint( - innerMatch.charAt(1) === "x" ? parseInt(innerMatch.substr(2), 16) : parseInt(innerMatch.substr(1), 10) + innerMatch.charAt(1) === "x" ? parseInt(innerMatch.slice(2), 16) : parseInt(innerMatch.slice(1), 10) ); } else outChar = entityToUnicode[innerMatch]; return outChar || fullMatch; @@ -21983,7 +21993,7 @@ var Plotly = (() => { return dtickDflt; } var prefix = dtick.charAt(0); - var dtickNum = dtick.substr(1); + var dtickNum = dtick.slice(1); dtickNum = isNumeric(dtickNum) ? Number(dtickNum) : 0; if (dtickNum <= 0 || !// "M" gives ticks every (integer) n months (isDate && prefix === "M" && dtickNum === Math.round(dtickNum) || // "L" gives ticks linearly spaced in data (not in position) every (float) f @@ -26840,7 +26850,7 @@ var Plotly = (() => { var stats = Lib.findExactDates(data, calendar); var threshold = 0.8; if (stats.exactDays > threshold) { - var numMonths = Number(dtick.substr(1)); + var numMonths = Number(dtick.slice(1)); if (stats.exactYears > threshold && numMonths % 12 === 0) { binStart = axes.tickIncrement(binStart, "M6", "reverse") + ONEDAY * 1.5; } else if (stats.exactMonths > threshold) { @@ -27492,8 +27502,8 @@ var Plotly = (() => { var tick0str = ax.l2r(tick0ms).replace(/(^-|i)/g, ""); var tick0len = tick0str.length; if (String(dtick).charAt(0) === "M") { - if (tick0len > 10 || tick0str.substr(5) !== "01-01") ax._tickround = "d"; - else ax._tickround = +dtick.substr(1) % 12 === 0 ? "y" : "m"; + if (tick0len > 10 || tick0str.slice(5) !== "01-01") ax._tickround = "d"; + else ax._tickround = +dtick.slice(1) % 12 === 0 ? "y" : "m"; } else if (dtick >= ONEDAY && tick0len <= 10 || dtick >= ONEDAY * 15) ax._tickround = "d"; else if (dtick >= ONEMIN && tick0len <= 16 || dtick >= ONEHOUR) ax._tickround = "M"; else if (dtick >= ONESEC && tick0len <= 19 || dtick >= ONEMIN) ax._tickround = "S"; @@ -27504,7 +27514,7 @@ var Plotly = (() => { } } else if (isNumeric(dtick) || dtick.charAt(0) === "L") { var rng = ax.range.map(ax.r2d || Number); - if (!isNumeric(dtick)) dtick = Number(dtick.substr(1)); + if (!isNumeric(dtick)) dtick = Number(dtick.slice(1)); ax._tickround = 2 - Math.floor(Math.log(dtick) / Math.LN10 + 0.01); var maxend = Math.max(Math.abs(rng[0]), Math.abs(rng[1])); var rangeexp = Math.floor(Math.log(maxend) / Math.LN10 + 0.01); @@ -27522,7 +27532,7 @@ var Plotly = (() => { var axSign = axrev ? -1 : 1; if (isNumeric(dtick)) return Lib.increment(x, axSign * dtick); var tType = dtick.charAt(0); - var dtSigned = axSign * Number(dtick.substr(1)); + var dtSigned = axSign * Number(dtick.slice(1)); if (tType === "M") return Lib.incrementMonth(x, dtSigned, calendar); if (tType === "L") return Math.log(Math.pow(10, x) + dtSigned) / Math.LN10; if (tType === "D") { @@ -27549,7 +27559,7 @@ var Plotly = (() => { return tmin; } var tType = dtick.charAt(0); - var dtNum = Number(dtick.substr(1)); + var dtNum = Number(dtick.slice(1)); if (tType === "M") { var cnt = 0; var t0 = tick0; @@ -27679,8 +27689,8 @@ var Plotly = (() => { var headStr; var splitIndex = dateStr.indexOf("\n"); if (splitIndex !== -1) { - headStr = dateStr.substr(splitIndex + 1); - dateStr = dateStr.substr(0, splitIndex); + headStr = dateStr.slice(splitIndex + 1); + dateStr = dateStr.slice(0, splitIndex); } if (extraPrecision) { if (headStr !== void 0 && (dateStr === "00:00:00" || dateStr === "00:00")) { @@ -27901,12 +27911,12 @@ var Plotly = (() => { if (tickRound === 0) v = String(Math.floor(v)); else if (tickRound < 0) { v = String(Math.round(v)); - v = v.substr(0, v.length + tickRound); + v = v.slice(0, Math.max(0, v.length + tickRound)); for (var i = tickRound; i < 0; i++) v += "0"; } else { v = String(v); var dp = v.indexOf(".") + 1; - if (dp) v = v.substr(0, dp + tickRound).replace(/\.?0+$/, ""); + if (dp) v = v.slice(0, dp + tickRound).replace(/\.?0+$/, ""); } v = Lib.numSeparate(v, ax._separators, separatethousands); } @@ -28001,8 +28011,8 @@ var Plotly = (() => { var allSubplots = subplotObj.cartesian.concat(subplotObj.gl2d || []); var out = ax ? axes.findSubplotsWithAxis(allSubplots, ax) : allSubplots; out.sort(function(a, b) { - var aParts = a.substr(1).split("y"); - var bParts = b.substr(1).split("y"); + var aParts = a.slice(1).split("y"); + var bParts = b.slice(1).split("y"); if (aParts[0] === bParts[0]) return +aParts[1] - +bParts[1]; return +aParts[0] - +bParts[0]; }); @@ -29977,7 +29987,7 @@ var Plotly = (() => { for (var i = 0; i < classes.length; i++) { var cls = classes[i]; if (cls.indexOf("cursor-") === 0) { - el3.attr(STASHATTR, cls.substr(7)).classed(cls, false); + el3.attr(STASHATTR, cls.slice(7)).classed(cls, false); } } if (!el3.attr(STASHATTR)) { @@ -30219,8 +30229,33 @@ var Plotly = (() => { var shapesWithLegend = (layoutOut.shapes || []).filter(function(d) { return d.showlegend; }); + function isPieWithLegendArray(trace2) { + return Registry.traceIs(trace2, "pie-like") && trace2._length != null && (Array.isArray(trace2.legend) || Array.isArray(trace2.showlegend)); + } + ; + fullData.filter(isPieWithLegendArray).forEach(function(trace2) { + if (trace2.visible) { + legendTraceCount++; + } + for (var index = 0; index < trace2._length; index++) { + var legend = (Array.isArray(trace2.legend) ? trace2.legend[index] : trace2.legend) || "legend"; + if (legend === legendId) { + const showInLegend = Array.isArray(trace2.showlegend) ? trace2.showlegend[index] : trace2.showlegend; + if (showInLegend || trace2._dfltShowLegend) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + } + if (legendId === "legend" && trace2._length > trace2.legend.length) { + for (var idx = trace2.legend.length; idx < trace2._length; idx++) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + }); var allLegendItems = fullData.concat(shapesWithLegend).filter(function(d) { - return legendId === (d.legend || "legend"); + return !isPieWithLegendArray(trace) && legendId === (d.legend || "legend"); }); for (var i = 0; i < allLegendItems.length; i++) { trace = allLegendItems[i]; @@ -30248,7 +30283,7 @@ var Plotly = (() => { layoutOut, basePlotLayoutAttributes, "showlegend", - legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) + layoutOut.showlegend || legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) ); if (showLegend === false) layoutOut[legendId] = void 0; if (showLegend === false && !containerIn.uirevision) return; @@ -30353,7 +30388,11 @@ var Plotly = (() => { } var legends = ["legend"]; for (i = 0; i < allLegendsData.length; i++) { - Lib.pushUnique(legends, allLegendsData[i].legend); + if (Array.isArray(allLegendsData[i].legend)) { + legends = legends.concat(allLegendsData[i].legend); + } else { + Lib.pushUnique(legends, allLegendsData[i].legend); + } } layoutOut._legends = []; for (i = 0; i < legends.length; i++) { @@ -30644,8 +30683,16 @@ var Plotly = (() => { var lgroup = trace.legendgroup; if (!inHover && (!trace.visible || !trace.showlegend)) continue; if (Registry.traceIs(trace, "pie-like")) { + var legendPerSlice = Array.isArray(trace.legend); + var showlegendPerSlice = Array.isArray(trace.showlegend); if (!slicesShown[lgroup]) slicesShown[lgroup] = {}; for (j = 0; j < cd.length; j++) { + if (showlegendPerSlice && trace.showlegend[cd[j].i] === false) { + continue; + } + if (legendPerSlice) { + lid = trace.legend[cd[j].i] || "legend"; + } var labelj = cd[j].label; if (!slicesShown[lgroup][labelj]) { addOneItem(lid, lgroup, { @@ -31841,7 +31888,11 @@ var Plotly = (() => { } function computeTextDimensions(g, gd, legendObj, aTitle) { var legendItem = g.data()[0][0]; - if (!legendObj._inHover && legendItem && !legendItem.trace.showlegend) { + var showlegend = legendItem && legendItem.trace.showlegend; + if (Array.isArray(showlegend)) { + showlegend = showlegend[legendItem.i] !== false; + } + if (!legendObj._inHover && legendItem && !showlegend) { g.remove(); return; } @@ -35111,7 +35162,7 @@ var Plotly = (() => { segments.forEach(function(segment) { var relevantParamIdx = paramsToUse[segment.charAt(0)].drawn; if (relevantParamIdx === void 0) return; - var params = segment.substr(1).match(constants.paramRE); + var params = segment.slice(1).match(constants.paramRE); if (!params || params.length < relevantParamIdx) return; var str = params[relevantParamIdx]; var pos = isRaw ? str : Lib.cleanNumber(str); @@ -35302,7 +35353,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (xParams[paramNumber]) { if (xSizemode === "pixel") param = x2p(xAnchor) + Number(param); else param = x2p(param); @@ -36311,7 +36362,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (paramNumber >= nParams) return param; if (xParams[paramNumber]) param = moveX(param); else if (yParams[paramNumber]) param = moveY(param); @@ -38034,12 +38085,12 @@ var Plotly = (() => { if (typeof a === "string") { aPrefix = a.match(/^[xy]*/)[0]; aLen = aPrefix.length; - a = +a.substr(aLen); + a = +a.slice(aLen); } if (typeof b === "string") { bPrefix = b.match(/^[xy]*/)[0]; bLen = bPrefix.length; - b = +b.substr(bLen); + b = +b.slice(bLen); } var c = a * b; if (!aLen && !bLen) { @@ -38051,7 +38102,7 @@ var Plotly = (() => { if (aLen === bLen) { return c; } - return (aLen > bLen ? aPrefix.substr(bLen) : bPrefix.substr(aLen)) + c; + return (aLen > bLen ? aPrefix.slice(bLen) : bPrefix.slice(aLen)) + c; } function finalRatios(group, fullLayout) { var size = fullLayout._size; @@ -38064,7 +38115,7 @@ var Plotly = (() => { if (typeof val === "string") { var prefix = val.match(/^[xy]*/)[0]; var pLen = prefix.length; - val = +val.substr(pLen); + val = +val.slice(pLen); var mult = prefix.charAt(0) === "y" ? yRatio : 1 / yRatio; for (var j = 0; j < pLen; j++) { val *= mult; @@ -43681,7 +43732,7 @@ var Plotly = (() => { } if (!arrayStr) arrayStr = rootContainers[rootContainers.indexOf(rootPart)]; if (!arrayStr) return false; - var tail = astr.substr(arrayStr.length); + var tail = astr.slice(arrayStr.length); if (!tail) return { array: arrayStr, index: "", property: "" }; match = tail.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/); if (!match) return false; @@ -44038,7 +44089,7 @@ var Plotly = (() => { for (i = 0; i < minLen; i++) { if (name1.charAt(i) !== name2.charAt(i)) break; } - var out = name1.substr(0, i); + var out = name1.slice(0, i); return out.trim(); } function cleanTextPosition(textposition) { @@ -44119,7 +44170,7 @@ var Plotly = (() => { var ATTR_TAIL_RE = /(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/; function getParent(attr) { var tail = attr.search(ATTR_TAIL_RE); - if (tail > 0) return attr.substr(0, tail); + if (tail > 0) return attr.slice(0, tail); } exports.hasParent = function(aobj, attr) { var attrParent = getParent(attr); @@ -44136,8 +44187,8 @@ var Plotly = (() => { var ax = getFromTrace(gd, trace, AX_LETTERS[j]); if (ax && ax.type !== "log") { var axAttr = ax._name; - var sceneName = ax._id.substr(1); - if (sceneName.substr(0, 5) === "scene") { + var sceneName = ax._id.slice(1); + if (sceneName.slice(0, 5) === "scene") { if (layoutUpdate[sceneName] !== void 0) continue; axAttr = sceneName + "." + axAttr; } @@ -45019,7 +45070,7 @@ var Plotly = (() => { } if (attr in aobj || helpers.hasParent(aobj, attr)) return; var extraparam; - if (attr.substr(0, 6) === "LAYOUT") { + if (attr.slice(0, 6) === "LAYOUT") { extraparam = layoutNP(gd.layout, attr.replace("LAYOUT", "")); } else { var tracei = traces[i2]; @@ -45064,7 +45115,7 @@ var Plotly = (() => { else vi = null; } redoit[ai] = vi; - if (ai.substr(0, 6) === "LAYOUT") { + if (ai.slice(0, 6) === "LAYOUT") { param = layoutNP(gd.layout, ai.replace("LAYOUT", "")); undoit[ai] = [undefinedToNull(param.get())]; param.set(Array.isArray(vi) ? vi[0] : vi); @@ -45081,7 +45132,7 @@ var Plotly = (() => { newVal = Array.isArray(vi) ? vi[i % vi.length] : vi; if (newVal === void 0) continue; var finalPart = param.parts[param.parts.length - 1]; - var prefix = ai.substr(0, ai.length - finalPart.length - 1); + var prefix = ai.slice(0, ai.length - finalPart.length - 1); var prefixDot = prefix ? prefix + "." : ""; var innerContFull = prefix ? nestedProperty(contFull, prefix).get() : contFull; valObject = PlotSchema.getTraceValObject(contFull, param.parts); @@ -45306,7 +45357,7 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { if (keys[i].indexOf("allaxes") === 0) { for (j = 0; j < axes.length; j++) { - var scene = axes[j]._id.substr(1); + var scene = axes[j]._id.slice(1); var axisAttr = scene.indexOf("scene") !== -1 ? scene + "." : ""; var newkey = keys[i].replace("allaxes", axisAttr + axes[j]._name); if (!aobj[newkey]) aobj[newkey] = aobj[keys[i]]; @@ -45614,7 +45665,7 @@ var Plotly = (() => { var match = key.match(spec.pattern); if (match) { var head = match[1] || ""; - return { head, tail: key.substr(head.length + 1), attr: spec.attr }; + return { head, tail: key.slice(head.length + 1), attr: spec.attr }; } } } @@ -45675,7 +45726,7 @@ var Plotly = (() => { } newNP.set(undefinedToNull(nestedProperty(oldFullLayout, key).get())); continue; - } else if (tail === "autorange" || tail.substr(0, 6) === "range[") { + } else if (tail === "autorange" || tail.slice(0, 6) === "range[") { var pre0 = layoutPreGUI[head + ".range[0]"]; var pre1 = layoutPreGUI[head + ".range[1]"]; var preAuto = layoutPreGUI[head + ".autorange"]; @@ -45695,7 +45746,7 @@ var Plotly = (() => { Lib.warn("unrecognized GUI edit: " + key); } delete layoutPreGUI[key]; - if (match && match.tail.substr(0, 6) === "range[") { + if (match && match.tail.slice(0, 6) === "range[") { newRangeAccepted[match.head] = 1; } } @@ -47219,7 +47270,7 @@ var Plotly = (() => { for (var i = 0; i < path.length; i++) { var p = path[i]; if (typeof p === "number") { - astr = astr.substr(0, astr.length - 1) + "[" + p + "]"; + astr = astr.slice(0, -1) + "[" + p + "]"; } else { astr += p; } @@ -49810,7 +49861,7 @@ var Plotly = (() => { prevtrace._nexttrace = trace; } } - trace._ownfill = trace.fill && (trace.fill.substr(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.substr(0, 2) === "to" && !trace._prevtrace); + trace._ownfill = trace.fill && (trace.fill.slice(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.slice(0, 2) === "to" && !trace._prevtrace); prevtraces[group] = trace; } else { trace._prevtrace = trace._nexttrace = trace._ownfill = null; @@ -50013,8 +50064,8 @@ var Plotly = (() => { fullpath = thispath; revpath = thisrevpath; } else if (ownFillDir) { - fullpath += "L" + thispath.substr(1); - revpath = thisrevpath + ("L" + revpath.substr(1)); + fullpath += "L" + thispath.slice(1); + revpath = thisrevpath + ("L" + revpath.slice(1)); } else { fullpath += "Z" + thispath; revpath = thisrevpath + "Z" + revpath; @@ -50079,7 +50130,7 @@ var Plotly = (() => { if (pt0 && pt1) { if (ownFillDir) { pt0[fillAxisIndex] = pt1[fillAxisIndex] = fillAxisZero; - transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.substr(1)).call(Drawing.singleFillStyle, gd); + transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.slice(1)).call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(null); } else { transition(ownFillEl3).attr("d", fullpath + "Z").call(Drawing.singleFillStyle, gd); @@ -50089,13 +50140,13 @@ var Plotly = (() => { trace._polygons = thisPolygons; trace._fillElement = ownFillEl3; } else if (tonext) { - if (trace.fill.substr(0, 6) === "tonext" && fullpath && prevRevpath) { + if (trace.fill.slice(0, 6) === "tonext" && fullpath && prevRevpath) { if (trace.fill === "tonext") { transition(tonext).attr("d", fullpath + "Z" + prevRevpath + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makeSelfPolygons(); trace._polygons = thisPolygons.concat(prevPolygons); } else { - transition(tonext).attr("d", fullpath + "L" + prevRevpath.substr(1) + "Z").call(Drawing.singleFillStyle, gd); + transition(tonext).attr("d", fullpath + "L" + prevRevpath.slice(1) + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(prevFillsegments); trace._polygons = thisPolygons; } @@ -51070,7 +51121,7 @@ var Plotly = (() => { }; function indexOfDay(v) { if (typeof v !== "string") return; - return dayStrToNum[v.substr(0, 3).toLowerCase()]; + return dayStrToNum[v.slice(0, 3).toLowerCase()]; } } }); @@ -51661,10 +51712,10 @@ var Plotly = (() => { if (constants.attrRegex.test(ki)) { var axLetter = ki.charAt(0); if (axLetter === "x") { - if (!xi || +ki.substr(5) < +xi.substr(5)) { + if (!xi || +ki.slice(5) < +xi.slice(5)) { xi = ki; } - } else if (!yi || +ki.substr(5) < +yi.substr(5)) { + } else if (!yi || +ki.slice(5) < +yi.slice(5)) { yi = ki; } } @@ -53888,7 +53939,7 @@ var Plotly = (() => { segment = segments[i]; drawnParam = paramsToUse[segment.charAt(0)].drawn; if (drawnParam === void 0) continue; - params = segments[i].substr(1).match(constants.paramRE); + params = segments[i].slice(1).match(constants.paramRE); if (!params || params.length < drawnParam) continue; val = convertVal(params[drawnParam]); if (val < min) min = val; @@ -56239,9 +56290,9 @@ var Plotly = (() => { var subplots = layoutOut._subplots; if (subplots) { var yIds = subplots.cartesian.filter(function(subplotId) { - return subplotId.substr(0, subplotId.indexOf("y")) === axisIds.name2id(axName); + return subplotId.slice(0, Math.max(0, subplotId.indexOf("y"))) === axisIds.name2id(axName); }).map(function(subplotId) { - return subplotId.substr(subplotId.indexOf("y"), subplotId.length); + return subplotId.slice(subplotId.indexOf("y"), subplotId.length); }); var yNames = Lib.simpleMap(yIds, axisIds.id2name); for (var i = 0; i < yNames.length; i++) { @@ -58243,7 +58294,7 @@ var Plotly = (() => { placeholder: fullLayout._dfltTitle.colorbar, containerGroup: g.select("." + cn.cbtitle) }; - var otherClass = titleClass.charAt(0) === "h" ? titleClass.substr(1) : "h" + titleClass; + var otherClass = titleClass.charAt(0) === "h" ? titleClass.slice(1) : "h" + titleClass; g.selectAll("." + otherClass + ",." + otherClass + "-math-group").remove(); Titles.draw(gd, titleClass, extendFlat(dfltTitleOpts, titleOpts || {})); } @@ -69433,7 +69484,7 @@ var Plotly = (() => { var dfltSpans = constants[axisName + "Span"]; var hSpan = (dfltSpans[projType] || dfltSpans["*"]) / 2; var rot = coerce( - "projection.rotation." + axisName.substr(0, 3), + "projection.rotation." + axisName.slice(0, 3), scopeParams.projRotate[i] ); rangeDflt = [rot - hSpan, rot + hSpan]; @@ -78088,7 +78139,7 @@ var Plotly = (() => { } else { if (directiveObj === UNKNOWN) replacementPart = UNKNOWN; else replacementPart = cDate.formatDate(directiveObj[modifier]); - fmt = fmt.substr(0, i) + replacementPart + fmt.substr(i + directiveLen); + fmt = fmt.slice(0, i) + replacementPart + fmt.slice(i + directiveLen); i += replacementPart.length; } } diff --git a/dist/plotly-geo.min.js b/dist/plotly-geo.min.js index bd54f5f66cb..96fef2812b6 100644 --- a/dist/plotly-geo.min.js +++ b/dist/plotly-geo.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (geo - minified) v3.3.0 +* plotly.js (geo - minified) v3.3.1 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,13 +12,13 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var VI=Object.defineProperty,WI=Object.defineProperties;var ZI=Object.getOwnPropertyDescriptors;var Y_=Object.getOwnPropertySymbols;var XI=Object.prototype.hasOwnProperty,jI=Object.prototype.propertyIsEnumerable;var G_=(e,r,t)=>r in e?VI(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,Xf=(e,r)=>{for(var t in r||(r={}))XI.call(r,t)&&G_(e,t,r[t]);if(Y_)for(var t of Y_(r))jI.call(r,t)&&G_(e,t,r[t]);return e},td=(e,r)=>WI(e,ZI(r));var te=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var nd=te(V_=>{"use strict";V_.version="3.3.0"});var Z_=te((W_,ad)=>{(function(r,t,n){t[r]=t[r]||n(),typeof ad!="undefined"&&ad.exports&&(ad.exports=t[r])})("Promise",typeof window!="undefined"?window:W_,function(){"use strict";var r,t,n,a=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(C){return setImmediate(C)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(C,x,_,A){return Object.defineProperty(C,x,{value:_,writable:!0,configurable:A!==!1})}}catch(b){r=function(x,_,A){return x[_]=A,x}}n=function(){var C,x,_;function A(k,M){this.fn=k,this.self=M,this.next=void 0}return{add:function(M,D){_=new A(M,D),x?x.next=_:C=_,x=_,_=void 0},drain:function(){var M=C;for(C=x=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(b,C){n.add(b,C),t||(t=i(n.drain))}function l(b){var C,x=typeof b;return b!=null&&(x=="object"||x=="function")&&(C=b.then),typeof C=="function"?C:!1}function s(){for(var b=0;b0&&o(s,x))}catch(_){v.call(new d(x),_)}}}function v(b){var C=this;C.triggered||(C.triggered=!0,C.def&&(C=C.def),C.msg=b,C.state=2,C.chain.length>0&&o(s,C))}function h(b,C,x,_){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,S=new Array(w);w--;)S[w]=g[w];return S}}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,S){s.call(this,g,w,S+"")},u.setProperty=function(g,w,S){f.call(this,g,w+"",S)}}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,S=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,S=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,S=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,S,q){for(arguments.length<3&&(S=0),arguments.length<4&&(q=g.length);S>>1;c(g[E],w)<0?S=E+1:q=E}return S},right:function(g,w,S,q){for(arguments.length<3&&(S=0),arguments.length<4&&(q=g.length);S>>1;c(g[E],w)>0?q=E:S=E+1}return S}}}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){(S=arguments.length)<3&&(w=c.length,S<2&&(g=0));for(var S=w-g,q,E;S;)E=Math.random()*S--|0,q=c[S+g],c[S+g]=c[E+g],c[E+g]=q;return c},e.permute=function(c,g){for(var w=g.length,S=new Array(w);w--;)S[w]=c[g[w]];return S},e.pairs=function(c){for(var g=0,w=c.length-1,S,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 b=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 S=[],q=C(b(w)),E=-1,G;if(c*=q,g*=q,w*=q,w<0)for(;(G=c+w*++E)>g;)S.push(G/q);else for(;(G=c+w*++E)=g.length)return q?q.call(c,j):S?j.sort(S):j;for(var ie=-1,ge=j.length,me=g[ne++],Re,Ve,be,Se=new _,De;++ie=g.length)return N;var ne=[],ie=w[j++];return N.forEach(function(ge,me){ne.push({key:ge,values:G(me,j)})}),ie?ne.sort(function(ge,me){return ie(ge.key,me.key)}):ne}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 S=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,S=c.length;w=0&&(S=c.slice(w+1),c=c.slice(0,w)),c)return arguments.length<2?this[c].on(S):this[c].on(S,g);if(arguments.length===2){if(g==null)for(c in this)this.hasOwnProperty(c)&&this[c].on(S,null);return this}};function he(c){var g=[],w=new _;function S(){for(var q=g,E=-1,G=q.length,N;++E=0&&(w=c.slice(0,g))!=="xmlns"&&(c=c.slice(g+1)),ke.hasOwnProperty(w)?{space:ke[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(Be(g,c[g]));return this}return this.each(Be(c,g))};function Be(c,g){c=e.ns.qualify(c);function w(){this.removeAttribute(c)}function S(){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?S:w:typeof g=="function"?c.local?N:G:c.local?E:q}function Ne(c){return c.trim().replace(/\s+/g," ")}pe.classed=function(c,g){if(arguments.length<2){if(typeof c=="string"){var w=this.node(),S=(c=or(c)).length,q=-1;if(g=w.classList){for(;++q=0;)(E=w[S])&&(q&&q!==E.nextSibling&&q.parentNode.insertBefore(E,q),q=E);return this},pe.sort=function(c){c=Oe.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=yr);function N(){var ie=this[S];ie&&(this.removeEventListener(c,ie,ie.$),delete this[S])}function j(){var ie=E(g,t(arguments));N.call(this),this.addEventListener(c,this[S]=ie,ie.$=w),ie._=g}function ne(){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?ee:ne}var mr=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&mr.forEach(function(c){"on"+c in n&&mr.remove(c)});function Tr(c,g){return function(w){var S=e.event;e.event=w,g[0]=this.__data__;try{c.apply(this,g)}finally{e.event=S}}}function yr(c,g){var w=Tr(c,g);return function(S){var q=this,E=S.relatedTarget;(!E||E!==q&&!(E.compareDocumentPosition(q)&8))&&w.call(q,S)}}var wr,Hr=0;function Sr(c){var g=".dragsuppress-"+ ++Hr,w="click"+g,S=e.select(i(c)).on("touchmove"+g,Le).on("dragstart"+g,Le).on("selectstart"+g,Le);if(wr==null&&(wr="onselectstart"in c?!1:ae(c.style,"userSelect")),wr){var q=a(c).style,E=q[wr];q[wr]="none"}return function(G){if(S.on(g,null),wr&&(q[wr]=E),G){var N=function(){S.on(w,null)};S.on(w,function(){Le(),N()},!0),setTimeout(N,0)}}}e.mouse=function(c){return ur(c,Ie())};var Dr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function ur(c,g){g.changedTouches&&(g=g.changedTouches[0]);var w=c.ownerSVGElement||c;if(w.createSVGPoint){var S=w.createSVGPoint();if(Dr<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();Dr=!(E.f||E.e),w.remove()}}return Dr?(S.x=g.pageX,S.y=g.pageY):(S.x=g.clientX,S.y=g.clientY),S=S.matrixTransform(c.getScreenCTM().inverse()),[S.x,S.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=Ie().changedTouches),g){for(var S=0,q=g.length,E;S0?1:c<0?-1:0}function Kt(c,g,w){return(g[0]-c[0])*(w[1]-c[1])-(g[1]-c[1])*(w[0]-c[0])}function cn(c){return c>1?0:c<-1?rr:Math.acos(c)}function pn(c){return c>1?Fr:c<-1?-Fr:Math.asin(c)}function Mn(c){return((c=Math.exp(c))-1/c)/2}function Xt(c){return((c=Math.exp(c))+1/c)/2}function Qt(c){return((c=Math.exp(2*c))-1)/(c+1)}function en(c){return(c=Math.sin(c/2))*c}var an=Math.SQRT2,jr=2,Ut=4;e.interpolateZoom=function(c,g){var w=c[0],S=c[1],q=c[2],E=g[0],G=g[1],N=g[2],j=E-w,ne=G-S,ie=j*j+ne*ne,ge,me;if(ie0&&(Rr=Rr.transition().duration(G)),Rr.call(We.event)}function $r(){Se&&Se.domain(be.range().map(function(Rr){return(Rr-c.x)/c.k}).map(be.invert)),Ge&&Ge.domain(De.range().map(function(Rr){return(Rr-c.y)/c.k}).map(De.invert))}function Kr(Rr){N++||Rr({type:"zoomstart"})}function bt(Rr){$r(),Rr({type:"zoom",scale:c.k,translate:[c.x,c.y]})}function et(Rr){--N||(Rr({type:"zoomend"}),w=null)}function ht(){var Rr=this,_t=Ve.of(Rr,arguments),wt=0,$t=e.select(i(Rr)).on(ne,qa).on(ie,ja),In=Pe(e.mouse(Rr)),la=Sr(Rr);vt.call(Rr),Kr(_t);function qa(){wt=1,Wr(e.mouse(Rr),In),bt(_t)}function ja(){$t.on(ne,null).on(ie,null),la(wt),et(_t)}}function Jt(){var Rr=this,_t=Ve.of(Rr,arguments),wt={},$t=0,In,la=".zoom-"+e.event.changedTouches[0].identifier,qa="touchmove"+la,ja="touchend"+la,ci=[],Ja=e.select(Rr),Si=Sr(Rr);Ci(),Kr(_t),Ja.on(j,null).on(me,Ci);function Fa(){var fl=e.touches(Rr);return In=c.k,fl.forEach(function(Da){Da.identifier in wt&&(wt[Da.identifier]=Pe(Da))}),fl}function Ci(){var fl=e.event.target;e.select(fl).on(qa,Wf).on(ja,GI),ci.push(fl);for(var Da=e.event.changedTouches,mo=0,jl=Da.length;mo1){var Zf=yo[0],qu=yo[1],rd=Zf[0]-qu[0],U_=Zf[1]-qu[1];$t=rd*rd+U_*U_}}function Wf(){var fl=e.touches(Rr),Da,mo,jl,yo;vt.call(Rr);for(var m0=0,Zf=fl.length;m01?1:g,w=w<0?0:w>1?1:w,q=w<=.5?w*(1+g):w+g-w*g,S=2*w-q;function E(N){return N>360?N-=360:N<0&&(N+=360),N<60?S+(q-S)*N/60:N<180?q:N<240?S+(q-S)*(240-N)/60:S}function G(N){return Math.round(E(N)*255)}return new Un(G(c+120),G(c),G(c-120))}e.hcl=kn;function kn(c,g,w){return this instanceof kn?(this.h=+c,this.c=+g,void(this.l=+w)):arguments.length<2?c instanceof kn?new kn(c.h,c.c,c.l):c instanceof hn?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 kn(c,g,w)}var Va=kn.prototype=new vn;Va.brighter=function(c){return new kn(this.h,this.c,Math.min(100,this.l+dn*(arguments.length?c:1)))},Va.darker=function(c){return new kn(this.h,this.c,Math.max(0,this.l-dn*(arguments.length?c:1)))},Va.rgb=function(){return ia(this.h,this.c,this.l).rgb()};function ia(c,g,w){return isNaN(c)&&(c=0),isNaN(g)&&(g=0),new hn(w,Math.cos(c*=lt)*g,Math.sin(c)*g)}e.lab=hn;function hn(c,g,w){return this instanceof hn?(this.l=+c,this.a=+g,void(this.b=+w)):arguments.length<2?c instanceof hn?new hn(c.l,c.a,c.b):c instanceof kn?ia(c.h,c.c,c.l):Br((c=Un(c)).r,c.g,c.b):new hn(c,g,w)}var dn=18,On=.95047,gi=1,io=1.08883,mi=hn.prototype=new vn;mi.brighter=function(c){return new hn(Math.min(100,this.l+dn*(arguments.length?c:1)),this.a,this.b)},mi.darker=function(c){return new hn(Math.max(0,this.l-dn*(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 S=(c+16)/116,q=S+g/500,E=S-w/200;return q=Oo(q)*On,S=Oo(S)*gi,E=Oo(E)*io,new Un(Uo(3.2404542*q-1.5371385*S-.4985314*E),Uo(-.969266*q+1.8760108*S+.041556*E),Uo(.0556434*q-.2040259*S+1.0572252*E))}function El(c,g,w){return c>0?new kn(Math.atan2(w,g)*xt,Math.sqrt(g*g+w*w),c):new kn(NaN,NaN,c)}function Oo(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 Uo(c){return Math.round(255*(c<=.00304?12.92*c:1.055*Math.pow(c,1/2.4)-.055))}e.rgb=Un;function Un(c,g,w){return this instanceof Un?(this.r=~~c,this.g=~~g,void(this.b=~~w)):arguments.length<2?c instanceof Un?new Un(c.r,c.g,c.b):St(""+c,Un,Ga):new Un(c,g,w)}function yi(c){return new Un(c>>16,c>>8&255,c&255)}function Yo(c){return yi(c)+""}var bi=Un.prototype=new vn;bi.brighter=function(c){c=Math.pow(.7,arguments.length?c:1);var g=this.r,w=this.g,S=this.b,q=30;return!g&&!w&&!S?new Un(q,q,q):(g&&g>4,S=S>>4|S,q=j&240,q=q>>4|q,E=j&15,E=E<<4|E):c.length===7&&(S=(j&16711680)>>16,q=(j&65280)>>8,E=j&255)),g(S,q,E))}function It(c,g,w){var S=Math.min(c/=255,g/=255,w/=255),q=Math.max(c,g,w),E=q-S,G,N,j=(q+S)/2;return E?(N=j<.5?E/(q+S):E/(2-q-S),c==q?G=(g-w)/E+(g0&&j<1?0:G),new Yt(G,N,j)}function Br(c,g,w){c=Zn(c),g=Zn(g),w=Zn(w);var S=ys((.4124564*c+.3575761*g+.1804375*w)/On),q=ys((.2126729*c+.7151522*g+.072175*w)/gi),E=ys((.0193339*c+.119192*g+.9503041*w)/io);return hn(116*q-16,500*(S-q),200*(q-E))}function Zn(c){return(c/=255)<=.04045?c/12.92:Math.pow((c+.055)/1.055,2.4)}function on(c){var g=parseFloat(c);return c.charAt(c.length-1)==="%"?Math.round(g*2.55):g}var Pn=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});Pn.forEach(function(c,g){Pn.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,S){return arguments.length===2&&typeof w=="function"&&(S=w,w=null),Go(g,w,c,S)}}function Go(c,g,w,S){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=ne:N.onreadystatechange=function(){N.readyState>3&&ne()};function ne(){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(Ve){me(null,Ve)}),E.beforesend.call(q,N),N.send(ge==null?null:ge),q},q.abort=function(){return N.abort(),q},e.rebind(q,E,"on"),S==null?q:q.get(xf(S))}function xf(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+` -]`),S=c.charCodeAt(0);function q(ne,ie,ge){arguments.length<3&&(ge=ie,ie=null);var me=Go(ne,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(ne){return q.parse(ne.responseText)}function G(ne){return function(ie){return q.parse(ie.responseText,ne)}}q.parse=function(ne,ie){var ge;return q.parseRows(ne,function(me,Re){if(ge)return ge(me,Re-1);var Ve=function(be){for(var Se={},De=me.length,Ge=0;Ge=Ve)return me;if(Ge)return Ge=!1,ge;var _r=be;if(ne.charCodeAt(_r)===34){for(var Or=_r;Or++{var VI=Object.defineProperty,WI=Object.defineProperties;var ZI=Object.getOwnPropertyDescriptors;var Y_=Object.getOwnPropertySymbols;var XI=Object.prototype.hasOwnProperty,jI=Object.prototype.propertyIsEnumerable;var G_=(e,r,t)=>r in e?VI(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,Xf=(e,r)=>{for(var t in r||(r={}))XI.call(r,t)&&G_(e,t,r[t]);if(Y_)for(var t of Y_(r))jI.call(r,t)&&G_(e,t,r[t]);return e},td=(e,r)=>WI(e,ZI(r));var te=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var nd=te(V_=>{"use strict";V_.version="3.3.1"});var Z_=te((W_,ad)=>{(function(r,t,n){t[r]=t[r]||n(),typeof ad!="undefined"&&ad.exports&&(ad.exports=t[r])})("Promise",typeof window!="undefined"?window:W_,function(){"use strict";var r,t,n,a=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(C){return setImmediate(C)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(C,x,_,A){return Object.defineProperty(C,x,{value:_,writable:!0,configurable:A!==!1})}}catch(b){r=function(x,_,A){return x[_]=A,x}}n=function(){var C,x,_;function A(k,M){this.fn=k,this.self=M,this.next=void 0}return{add:function(M,E){_=new A(M,E),x?x.next=_:C=_,x=_,_=void 0},drain:function(){var M=C;for(C=x=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(b,C){n.add(b,C),t||(t=i(n.drain))}function l(b){var C,x=typeof b;return b!=null&&(x=="object"||x=="function")&&(C=b.then),typeof C=="function"?C:!1}function s(){for(var b=0;b0&&o(s,x))}catch(_){v.call(new d(x),_)}}}function v(b){var C=this;C.triggered||(C.triggered=!0,C.def&&(C=C.def),C.msg=b,C.state=2,C.chain.length>0&&o(s,C))}function h(b,C,x,_){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,S=new Array(w);w--;)S[w]=g[w];return S}}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,S){s.call(this,g,w,S+"")},u.setProperty=function(g,w,S){f.call(this,g,w+"",S)}}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,S=c.length,q,D;if(arguments.length===1){for(;++w=D){q=D;break}for(;++wD&&(q=D)}else{for(;++w=D){q=D;break}for(;++wD&&(q=D)}return q},e.max=function(c,g){var w=-1,S=c.length,q,D;if(arguments.length===1){for(;++w=D){q=D;break}for(;++wq&&(q=D)}else{for(;++w=D){q=D;break}for(;++wq&&(q=D)}return q},e.extent=function(c,g){var w=-1,S=c.length,q,D,G;if(arguments.length===1){for(;++w=D){q=G=D;break}for(;++wD&&(q=D),G=D){q=G=D;break}for(;++wD&&(q=D),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,S,q){for(arguments.length<3&&(S=0),arguments.length<4&&(q=g.length);S>>1;c(g[D],w)<0?S=D+1:q=D}return S},right:function(g,w,S,q){for(arguments.length<3&&(S=0),arguments.length<4&&(q=g.length);S>>1;c(g[D],w)>0?q=D:S=D+1}return S}}}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){(S=arguments.length)<3&&(w=c.length,S<2&&(g=0));for(var S=w-g,q,D;S;)D=Math.random()*S--|0,q=c[S+g],c[S+g]=c[D+g],c[D+g]=q;return c},e.permute=function(c,g){for(var w=g.length,S=new Array(w);w--;)S[w]=c[g[w]];return S},e.pairs=function(c){for(var g=0,w=c.length-1,S,q=c[0],D=new Array(w<0?0:w);g=0;)for(G=c[g],w=G.length;--w>=0;)D[--q]=G[w];return D};var b=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 S=[],q=C(b(w)),D=-1,G;if(c*=q,g*=q,w*=q,w<0)for(;(G=c+w*++D)>g;)S.push(G/q);else for(;(G=c+w*++D)=g.length)return q?q.call(c,j):S?j.sort(S):j;for(var ae=-1,ge=j.length,me=g[ne++],Re,Ve,be,Se=new _,De;++ae=g.length)return N;var ne=[],ae=w[j++];return N.forEach(function(ge,me){ne.push({key:ge,values:G(me,j)})}),ae?ne.sort(function(ge,me){return ae(ge.key,me.key)}):ne}return c.map=function(N,j){return D(j,N,0)},c.entries=function(N){return G(D(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 S=N,c},c.rollup=function(N){return q=N,c},c},e.set=function(c){var g=new Z;if(c)for(var w=0,S=c.length;w=0&&(S=c.slice(w+1),c=c.slice(0,w)),c)return arguments.length<2?this[c].on(S):this[c].on(S,g);if(arguments.length===2){if(g==null)for(c in this)this.hasOwnProperty(c)&&this[c].on(S,null);return this}};function ve(c){var g=[],w=new _;function S(){for(var q=g,D=-1,G=q.length,N;++D=0&&(w=c.slice(0,g))!=="xmlns"&&(c=c.slice(g+1)),ke.hasOwnProperty(w)?{space:ke[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(Be(g,c[g]));return this}return this.each(Be(c,g))};function Be(c,g){c=e.ns.qualify(c);function w(){this.removeAttribute(c)}function S(){this.removeAttributeNS(c.space,c.local)}function q(){this.setAttribute(c,g)}function D(){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?S:w:typeof g=="function"?c.local?N:G:c.local?D:q}function Ne(c){return c.trim().replace(/\s+/g," ")}pe.classed=function(c,g){if(arguments.length<2){if(typeof c=="string"){var w=this.node(),S=(c=or(c)).length,q=-1;if(g=w.classList){for(;++q=0;)(D=w[S])&&(q&&q!==D.nextSibling&&q.parentNode.insertBefore(D,q),q=D);return this},pe.sort=function(c){c=Oe.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,D=yr);function N(){var ae=this[S];ae&&(this.removeEventListener(c,ae,ae.$),delete this[S])}function j(){var ae=D(g,t(arguments));N.call(this),this.addEventListener(c,this[S]=ae,ae.$=w),ae._=g}function ne(){var ae=new RegExp("^__on([^.]+)"+e.requote(c)+"$"),ge;for(var me in this)if(ge=me.match(ae)){var Re=this[me];this.removeEventListener(ge[1],Re,Re.$),delete this[me]}}return q?g?j:N:g?ee:ne}var mr=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&mr.forEach(function(c){"on"+c in n&&mr.remove(c)});function Tr(c,g){return function(w){var S=e.event;e.event=w,g[0]=this.__data__;try{c.apply(this,g)}finally{e.event=S}}}function yr(c,g){var w=Tr(c,g);return function(S){var q=this,D=S.relatedTarget;(!D||D!==q&&!(D.compareDocumentPosition(q)&8))&&w.call(q,S)}}var wr,Hr=0;function Sr(c){var g=".dragsuppress-"+ ++Hr,w="click"+g,S=e.select(i(c)).on("touchmove"+g,Ce).on("dragstart"+g,Ce).on("selectstart"+g,Ce);if(wr==null&&(wr="onselectstart"in c?!1:ie(c.style,"userSelect")),wr){var q=a(c).style,D=q[wr];q[wr]="none"}return function(G){if(S.on(g,null),wr&&(q[wr]=D),G){var N=function(){S.on(w,null)};S.on(w,function(){Ce(),N()},!0),setTimeout(N,0)}}}e.mouse=function(c){return ur(c,Ie())};var Dr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function ur(c,g){g.changedTouches&&(g=g.changedTouches[0]);var w=c.ownerSVGElement||c;if(w.createSVGPoint){var S=w.createSVGPoint();if(Dr<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 D=w[0][0].getScreenCTM();Dr=!(D.f||D.e),w.remove()}}return Dr?(S.x=g.pageX,S.y=g.pageY):(S.x=g.clientX,S.y=g.clientY),S=S.matrixTransform(c.getScreenCTM().inverse()),[S.x,S.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=Ie().changedTouches),g){for(var S=0,q=g.length,D;S0?1:c<0?-1:0}function Kt(c,g,w){return(g[0]-c[0])*(w[1]-c[1])-(g[1]-c[1])*(w[0]-c[0])}function cn(c){return c>1?0:c<-1?rr:Math.acos(c)}function pn(c){return c>1?Fr:c<-1?-Fr:Math.asin(c)}function Mn(c){return((c=Math.exp(c))-1/c)/2}function Xt(c){return((c=Math.exp(c))+1/c)/2}function Qt(c){return((c=Math.exp(2*c))-1)/(c+1)}function en(c){return(c=Math.sin(c/2))*c}var an=Math.SQRT2,jr=2,Ut=4;e.interpolateZoom=function(c,g){var w=c[0],S=c[1],q=c[2],D=g[0],G=g[1],N=g[2],j=D-w,ne=G-S,ae=j*j+ne*ne,ge,me;if(ae0&&(Rr=Rr.transition().duration(G)),Rr.call(We.event)}function $r(){Se&&Se.domain(be.range().map(function(Rr){return(Rr-c.x)/c.k}).map(be.invert)),Ge&&Ge.domain(De.range().map(function(Rr){return(Rr-c.y)/c.k}).map(De.invert))}function Kr(Rr){N++||Rr({type:"zoomstart"})}function bt(Rr){$r(),Rr({type:"zoom",scale:c.k,translate:[c.x,c.y]})}function et(Rr){--N||(Rr({type:"zoomend"}),w=null)}function ht(){var Rr=this,_t=Ve.of(Rr,arguments),wt=0,$t=e.select(i(Rr)).on(ne,qa).on(ae,ja),In=Pe(e.mouse(Rr)),la=Sr(Rr);vt.call(Rr),Kr(_t);function qa(){wt=1,Wr(e.mouse(Rr),In),bt(_t)}function ja(){$t.on(ne,null).on(ae,null),la(wt),et(_t)}}function Jt(){var Rr=this,_t=Ve.of(Rr,arguments),wt={},$t=0,In,la=".zoom-"+e.event.changedTouches[0].identifier,qa="touchmove"+la,ja="touchend"+la,ci=[],Ja=e.select(Rr),Si=Sr(Rr);Ci(),Kr(_t),Ja.on(j,null).on(me,Ci);function Fa(){var fl=e.touches(Rr);return In=c.k,fl.forEach(function(Da){Da.identifier in wt&&(wt[Da.identifier]=Pe(Da))}),fl}function Ci(){var fl=e.event.target;e.select(fl).on(qa,Wf).on(ja,GI),ci.push(fl);for(var Da=e.event.changedTouches,mo=0,Jl=Da.length;mo1){var Zf=yo[0],qu=yo[1],rd=Zf[0]-qu[0],U_=Zf[1]-qu[1];$t=rd*rd+U_*U_}}function Wf(){var fl=e.touches(Rr),Da,mo,Jl,yo;vt.call(Rr);for(var m0=0,Zf=fl.length;m01?1:g,w=w<0?0:w>1?1:w,q=w<=.5?w*(1+g):w+g-w*g,S=2*w-q;function D(N){return N>360?N-=360:N<0&&(N+=360),N<60?S+(q-S)*N/60:N<180?q:N<240?S+(q-S)*(240-N)/60:S}function G(N){return Math.round(D(N)*255)}return new Un(G(c+120),G(c),G(c-120))}e.hcl=kn;function kn(c,g,w){return this instanceof kn?(this.h=+c,this.c=+g,void(this.l=+w)):arguments.length<2?c instanceof kn?new kn(c.h,c.c,c.l):c instanceof hn?Pl(c.l,c.a,c.b):Pl((c=Br((c=e.rgb(c)).r,c.g,c.b)).l,c.a,c.b):new kn(c,g,w)}var Va=kn.prototype=new vn;Va.brighter=function(c){return new kn(this.h,this.c,Math.min(100,this.l+dn*(arguments.length?c:1)))},Va.darker=function(c){return new kn(this.h,this.c,Math.max(0,this.l-dn*(arguments.length?c:1)))},Va.rgb=function(){return ia(this.h,this.c,this.l).rgb()};function ia(c,g,w){return isNaN(c)&&(c=0),isNaN(g)&&(g=0),new hn(w,Math.cos(c*=lt)*g,Math.sin(c)*g)}e.lab=hn;function hn(c,g,w){return this instanceof hn?(this.l=+c,this.a=+g,void(this.b=+w)):arguments.length<2?c instanceof hn?new hn(c.l,c.a,c.b):c instanceof kn?ia(c.h,c.c,c.l):Br((c=Un(c)).r,c.g,c.b):new hn(c,g,w)}var dn=18,On=.95047,gi=1,io=1.08883,mi=hn.prototype=new vn;mi.brighter=function(c){return new hn(Math.min(100,this.l+dn*(arguments.length?c:1)),this.a,this.b)},mi.darker=function(c){return new hn(Math.max(0,this.l-dn*(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 S=(c+16)/116,q=S+g/500,D=S-w/200;return q=Oo(q)*On,S=Oo(S)*gi,D=Oo(D)*io,new Un(Uo(3.2404542*q-1.5371385*S-.4985314*D),Uo(-.969266*q+1.8760108*S+.041556*D),Uo(.0556434*q-.2040259*S+1.0572252*D))}function Pl(c,g,w){return c>0?new kn(Math.atan2(w,g)*xt,Math.sqrt(g*g+w*w),c):new kn(NaN,NaN,c)}function Oo(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 Uo(c){return Math.round(255*(c<=.00304?12.92*c:1.055*Math.pow(c,1/2.4)-.055))}e.rgb=Un;function Un(c,g,w){return this instanceof Un?(this.r=~~c,this.g=~~g,void(this.b=~~w)):arguments.length<2?c instanceof Un?new Un(c.r,c.g,c.b):St(""+c,Un,Ga):new Un(c,g,w)}function yi(c){return new Un(c>>16,c>>8&255,c&255)}function Yo(c){return yi(c)+""}var bi=Un.prototype=new vn;bi.brighter=function(c){c=Math.pow(.7,arguments.length?c:1);var g=this.r,w=this.g,S=this.b,q=30;return!g&&!w&&!S?new Un(q,q,q):(g&&g>4,S=S>>4|S,q=j&240,q=q>>4|q,D=j&15,D=D<<4|D):c.length===7&&(S=(j&16711680)>>16,q=(j&65280)>>8,D=j&255)),g(S,q,D))}function It(c,g,w){var S=Math.min(c/=255,g/=255,w/=255),q=Math.max(c,g,w),D=q-S,G,N,j=(q+S)/2;return D?(N=j<.5?D/(q+S):D/(2-q-S),c==q?G=(g-w)/D+(g0&&j<1?0:G),new Yt(G,N,j)}function Br(c,g,w){c=Zn(c),g=Zn(g),w=Zn(w);var S=ys((.4124564*c+.3575761*g+.1804375*w)/On),q=ys((.2126729*c+.7151522*g+.072175*w)/gi),D=ys((.0193339*c+.119192*g+.9503041*w)/io);return hn(116*q-16,500*(S-q),200*(q-D))}function Zn(c){return(c/=255)<=.04045?c/12.92:Math.pow((c+.055)/1.055,2.4)}function on(c){var g=parseFloat(c);return c.charAt(c.length-1)==="%"?Math.round(g*2.55):g}var Pn=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});Pn.forEach(function(c,g){Pn.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,S){return arguments.length===2&&typeof w=="function"&&(S=w,w=null),Go(g,w,c,S)}}function Go(c,g,w,S){var q={},D=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=ne:N.onreadystatechange=function(){N.readyState>3&&ne()};function ne(){var ae=N.status,ge;if(!ae&&cu(N)||ae>=200&&ae<300||ae===304){try{ge=w.call(q,N)}catch(me){D.error.call(q,me);return}D.load.call(q,ge)}else D.error.call(q,N)}return N.onprogress=function(ae){var ge=e.event;e.event=ae;try{D.progress.call(q,N)}finally{e.event=ge}},q.header=function(ae,ge){return ae=(ae+"").toLowerCase(),arguments.length<2?G[ae]:(ge==null?delete G[ae]:G[ae]=ge+"",q)},q.mimeType=function(ae){return arguments.length?(g=ae==null?null:ae+"",q):g},q.responseType=function(ae){return arguments.length?(j=ae,q):j},q.response=function(ae){return w=ae,q},["get","post"].forEach(function(ae){q[ae]=function(){return q.send.apply(q,[ae].concat(t(arguments)))}}),q.send=function(ae,ge,me){if(arguments.length===2&&typeof ge=="function"&&(me=ge,ge=null),N.open(ae,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(Ve){me(null,Ve)}),D.beforesend.call(q,N),N.send(ge==null?null:ge),q},q.abort=function(){return N.abort(),q},e.rebind(q,D,"on"),S==null?q:q.get(xf(S))}function xf(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+` +]`),S=c.charCodeAt(0);function q(ne,ae,ge){arguments.length<3&&(ge=ae,ae=null);var me=Go(ne,g,ae==null?D:G(ae),ge);return me.row=function(Re){return arguments.length?me.response((ae=Re)==null?D:G(Re)):ae},me}function D(ne){return q.parse(ne.responseText)}function G(ne){return function(ae){return q.parse(ae.responseText,ne)}}q.parse=function(ne,ae){var ge;return q.parseRows(ne,function(me,Re){if(ge)return ge(me,Re-1);var Ve=function(be){for(var Se={},De=me.length,Ge=0;Ge=Ve)return me;if(Ge)return Ge=!1,ge;var _r=be;if(ne.charCodeAt(_r)===34){for(var Or=_r;Or++24?(isFinite(g)&&(clearTimeout(vu),vu=setTimeout(_i,g)),Wo=0):(Wo=1,Pl(_i))}e.timer.flush=function(){lo(),Zo()};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 Zo(){for(var c,g=oo,w=1/0;g;)g.c?(g.t=0;--N)be.push(q[ne[ge[N]][2]]);for(N=+Re;N1&&Kt(c[w[S-2]],c[w[S-1]],c[q])<=0;)--S;w[S++]=q}return w.slice(0,S)}function Xc(c,g){return c[0]-g[0]||c[1]-g[1]}e.geom.polygon=function(c){return Ce(c,_s),c};var _s=e.geom.polygon.prototype=[];_s.area=function(){for(var c=-1,g=this.length,w,S=this[g-1],q=0;++cAe)N=N.L;else if(G=g-Bv(N,w),G>Ae){if(!N.R){S=N;break}N=N.R}else{E>-Ae?(S=N.P,q=N):G>-Ae?(S=N,q=N.N):S=q=N;break}var j=Ms(c);if(Bi.insert(S,j),!(!S&&!q)){if(S===q){co(S),q=Ms(S.site),Bi.insert(j,q),j.edge=q.edge=Il(S.site,j.site),fo(S),fo(q);return}if(!q){j.edge=Il(S.site,j.site);return}co(S),co(q);var ne=S.site,ie=ne.x,ge=ne.y,me=c.x-ie,Re=c.y-ge,Ve=q.site,be=Ve.x-ie,Se=Ve.y-ge,De=2*(me*Se-Re*be),Ge=me*me+Re*Re,We=be*be+Se*Se,Pe={x:(Se*Ge-Re*We)/De+ie,y:(me*We-be*Ge)/De+ge};Yi(q.edge,ne,Ve,Pe),j.edge=Il(ne,c,null,Pe),q.edge=Il(c,Ve,null,Pe),fo(S),fo(q)}}function Ts(c,g){var w=c.site,S=w.x,q=w.y,E=q-g;if(!E)return S;var G=c.P;if(!G)return-1/0;w=G.site;var N=w.x,j=w.y,ne=j-g;if(!ne)return N;var ie=N-S,ge=1/E-1/ne,me=ie/ne;return ge?(-me+Math.sqrt(me*me-2*ge*(ie*ie/(-2*ne)-j+ne/2+q-E/2)))/ge+S:(S+N)/2}function Bv(c,g){var w=c.N;if(w)return Ts(w,g);var S=c.site;return S.y===g?S.x:1/0}function jo(c){this.site=c,this.edges=[]}jo.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 Tf(c){for(var g=c[0][0],w=c[1][0],S=c[0][1],q=c[1][1],E,G,N,j,ne=uo,ie=ne.length,ge,me,Re,Ve,be,Se;ie--;)if(ge=ne[ie],!(!ge||!ge.prepare()))for(Re=ge.edges,Ve=Re.length,me=0;meAe||b(j-G)>Ae)&&(Re.splice(me,0,new Jo(Uv(ge.site,Se,b(N-g)Ae?{x:g,y:b(E-g)Ae?{x:b(G-q)Ae?{x:w,y:b(E-w)Ae?{x:b(G-S)=-Ke)){var me=j*j+ne*ne,Re=ie*ie+Se*Se,Ve=(Se*me-ne*Re)/ge,be=(j*Re-ie*me)/ge,Se=be+N,De=Af.pop()||new $c;De.arc=c,De.site=q,De.x=Ve+G,De.y=Se+Math.sqrt(Ve*Ve+be*be),De.cy=Se,c.circle=De;for(var Ge=null,We=Nl._;We;)if(De.y0)){if(be/=Re,Re<0){if(be0){if(be>me)return;be>ge&&(ge=be)}if(be=w-N,!(!Re&&be<0)){if(be/=Re,Re<0){if(be>me)return;be>ge&&(ge=be)}else if(Re>0){if(be0)){if(be/=Ve,Ve<0){if(be0){if(be>me)return;be>ge&&(ge=be)}if(be=S-j,!(!Ve&&be<0)){if(be/=Ve,Ve<0){if(be>me)return;be>ge&&(ge=be)}else if(Ve>0){if(be0&&(q.a={x:N+ge*Re,y:j+ge*Ve}),me<1&&(q.b={x:N+me*Re,y:j+me*Ve}),q}}}}}}function xi(c){for(var g=so,w=kf(c[0][0],c[0][1],c[1][0],c[1][1]),S=g.length,q;S--;)q=g[S],(!Ov(q,c)||!w(q)||b(q.a.x-q.b.x)=E)return;if(ie>me){if(!S)S={x:Ve,y:G};else if(S.y>=N)return;w={x:Ve,y:N}}else{if(!S)S={x:Ve,y:N};else if(S.y1)if(ie>me){if(!S)S={x:(G-De)/Se,y:G};else if(S.y>=N)return;w={x:(N-De)/Se,y:N}}else{if(!S)S={x:(N-De)/Se,y:N};else if(S.y=E)return;w={x:E,y:Se*E+De}}else{if(!S)S={x:E,y:Se*E+De};else if(S.x=ie&&De.x<=me&&De.y>=ge&&De.y<=Re?[[ie,Re],[me,Re],[me,ge],[ie,ge]]:[];Ge.point=j[be]}),ne}function N(j){return j.map(function(ne,ie){return{x:Math.round(S(ne,ie)/Ae)*Ae,y:Math.round(q(ne,ie)/Ae)*Ae,i:ie}})}return G.links=function(j){return Ss(N(j)).edges.filter(function(ne){return ne.l&&ne.r}).map(function(ne){return{source:j[ne.l.i],target:j[ne.r.i]}})},G.triangles=function(j){var ne=[];return Ss(N(j)).cells.forEach(function(ie,ge){for(var me=ie.site,Re=ie.edges.sort(Fl),Ve=-1,be=Re.length,Se,De,Ge=Re[be-1].edge,We=Ge.l===me?Ge.r:Ge.l;++VeWe&&(We=ie.x),ie.y>Pe&&(Pe=ie.y),Re.push(ie.x),Ve.push(ie.y);else for(be=0;beWe&&(We=_r),Or>Pe&&(Pe=Or),Re.push(_r),Ve.push(Or)}var Wr=We-De,Vr=Pe-Ge;Wr>Vr?Pe=Ge+Wr:We=De+Vr;function $r(et,ht,Jt,jn,sn,Rr,_t,wt){if(!(isNaN(Jt)||isNaN(jn)))if(et.leaf){var $t=et.x,In=et.y;if($t!=null)if(b($t-Jt)+b(In-jn)<.01)Kr(et,ht,Jt,jn,sn,Rr,_t,wt);else{var la=et.point;et.x=et.y=et.point=null,Kr(et,la,$t,In,sn,Rr,_t,wt),Kr(et,ht,Jt,jn,sn,Rr,_t,wt)}else et.x=Jt,et.y=jn,et.point=ht}else Kr(et,ht,Jt,jn,sn,Rr,_t,wt)}function Kr(et,ht,Jt,jn,sn,Rr,_t,wt){var $t=(sn+_t)*.5,In=(Rr+wt)*.5,la=Jt>=$t,qa=jn>=In,ja=qa<<1|la;et.leaf=!1,et=et.nodes[ja]||(et.nodes[ja]=gu()),la?sn=$t:_t=$t,qa?Rr=In:wt=In,$r(et,ht,Jt,jn,sn,Rr,_t,wt)}var bt=gu();if(bt.add=function(et){$r(bt,et,+ge(et,++be),+me(et,be),De,Ge,We,Pe)},bt.visit=function(et){li(et,bt,De,Ge,We,Pe)},bt.find=function(et){return mu(bt,et[0],et[1],De,Ge,We,Pe)},be=-1,g==null){for(;++beE||me>G||Re=_r,Vr=w>=Or,$r=Vr<<1|Wr,Kr=$r+4;$rw&&(E=g.slice(w,E),N[G]?N[G]+=E:N[++G]=E),(S=S[0])===(q=q[0])?N[G]?N[G]+=q:N[++G]=q:(N[++G]=null,j.push({i:G,x:ea(S,q)})),w=Ls.lastIndex;return w=0&&!(S=e.interpolators[w](c,g)););return S}e.interpolators=[function(c,g){var w=typeof g;return(w==="string"?Pn.has(g.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(g)?yu:Ma:g instanceof vn?yu:Array.isArray(g)?Ol:w==="object"&&isNaN(g)?za:ea)(c,g)}],e.interpolateArray=Ol;function Ol(c,g){var w=[],S=[],q=c.length,E=g.length,G=Math.min(c.length,g.length),N;for(N=0;N=0?c.slice(0,g):c,S=g>=0?c.slice(g+1):"in";return w=Kc.get(w)||Sf,S=Yv.get(S)||V,Gv(S(w.apply(null,r.call(arguments,1))))};function Gv(c){return function(g){return g<=0?0:g>=1?1:c(g)}}function Cf(c){return function(g){return 1-c(1-g)}}function Lf(c){return function(g){return .5*(g<.5?c(2*g):2-c(2-2*g))}}function qf(c){return c*c}function Df(c){return c*c*c}function Qc(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 e0(c){return function(g){return Math.pow(g,c)}}function qs(c){return 1-Math.cos(c*Fr)}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/Lr*Math.asin(1/c):(c=1,w=g/4),function(S){return 1+c*Math.pow(2,-10*S)*Math.sin((S-w)*Lr/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=r0;function r0(c,g){c=e.hcl(c),g=e.hcl(g);var w=c.h,S=c.c,q=c.l,E=g.h-w,G=g.c-S,N=g.l-q;return isNaN(G)&&(G=0,S=isNaN(S)?g.c:S),isNaN(E)?(E=0,w=isNaN(w)?g.h:w):E>180?E-=360:E<-180&&(E+=360),function(j){return ia(w+E*j,S+G*j,q+N*j)+""}}e.interpolateHsl=Ef;function Ef(c,g){c=e.hsl(c),g=e.hsl(g);var w=c.h,S=c.s,q=c.l,E=g.h-w,G=g.s-S,N=g.l-q;return isNaN(G)&&(G=0,S=isNaN(S)?g.s:S),isNaN(E)?(E=0,w=isNaN(w)?g.h:w):E>180?E-=360:E<-180&&(E+=360),function(j){return Ga(w+E*j,S+G*j,q+N*j)+""}}e.interpolateLab=Vv;function Vv(c,g){c=e.lab(c),g=e.lab(g);var w=c.l,S=c.a,q=c.b,E=g.l-w,G=g.a-S,N=g.b-q;return function(j){return ms(w+E*j,S+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 S=g.transform.baseVal.consolidate()}return new xu(S?S.matrix:Pf)})(c)};function xu(c){var g=[c.a,c.b],w=[c.c,c.d],S=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),S.push({i:w.push(po(w)+"rotate(",null,")")-2,x:ea(c,g)})):g&&w.push(po(w)+"rotate("+g+")")}function n0(c,g,w,S){c!==g?S.push({i:w.push(po(w)+"skewX(",null,")")-2,x:ea(c,g)}):g&&w.push(po(w)+"skewX("+g+")")}function zf(c,g,w,S){if(c[0]!==g[0]||c[1]!==g[1]){var q=w.push(po(w)+"scale(",null,",",null,")");S.push({i:q-4,x:ea(c[0],g[0])},{i:q-2,x:ea(c[1],g[1])})}else(g[0]!==1||g[1]!==1)&&w.push(po(w)+"scale("+g+")")}function wu(c,g){var w=[],S=[];return c=e.transform(c),g=e.transform(g),t0(c.translate,g.translate,w,S),Rf(c.rotate,g.rotate,w,S),n0(c.skew,g.skew,w,S),zf(c.scale,g.scale,w,S),c=g=null,function(q){for(var E=-1,G=S.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=Ve.length,Wr=S[0],Vr=S[1],$r,Kr;for(Pe=0;Pe<_r;++Pe)(Kr=Re[Pe]).index=Pe,Kr.weight=0;for(Pe=0;Pe=0;)E.push(ie=ne[j]),ie.parent=N,ie.depth=N.depth+1;w&&(N.value=0),N.children=ne}else w&&(N.value=+w.call(S,N,N.depth)||0),delete N.children;return Na(q,function(ge){var me,Re;c&&(me=ge.children)&&me.sort(c),w&&(Re=ge.parent)&&(Re.value+=ge.value)}),G}return S.sort=function(q){return arguments.length?(c=q,S):c},S.children=function(q){return arguments.length?(g=q,S):g},S.value=function(q){return arguments.length?(w=q,S):w},S.revalue=function(q){return w&&(Ai(q,function(E){E.children&&(E.value=0)}),Na(q,function(E){var G;E.children||(E.value=+w.call(S,E,E.depth)||0),(G=E.parent)&&(G.value+=E.value)})),q},S};function Vi(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)&&(S=q.length))for(var S,q;--S>=0;)w.push(q[S])}function Na(c,g){for(var w=[c],S=[];(c=w.pop())!=null;)if(S.push(c),(G=c.children)&&(E=G.length))for(var q=-1,E,G;++qq&&(q=N),S.push(N)}for(G=0;GS&&(w=g,S=q);return w}function Is(c){return c.reduce(tl,0)}function tl(c,g){return c+g[1]}e.layout.histogram=function(){var c=!0,g=Number,w=Vl,S=Hs;function q(E,me){for(var N=[],j=E.map(g,this),ne=w.call(this,j,me),ie=S.call(this,ne,j,me),ge,me=-1,Re=j.length,Ve=ie.length-1,be=c?1:1/Re,Se;++me0)for(me=-1;++me=ne[0]&&Se<=ne[1]&&(ge=N[e.bisect(ie,Se,1,Ve)-1],ge.y+=be,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?(S=typeof E=="number"?function(G){return nl(G,E)}:At(E),q):S},q.frequency=function(E){return arguments.length?(c=!!E,q):c},q};function Hs(c,g){return nl(c,Math.ceil(Math.log(g.length)/Math.LN2+1))}function nl(c,g){for(var w=-1,S=+c[0],q=(c[1]-S)/g,E=[];++w<=g;)E[w]=q*w+S;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],S;function q(E,G){var N=c.call(this,E,G),j=N[0],ne=w[0],ie=w[1],ge=S==null?Math.sqrt:typeof S=="function"?S:function(){return S};if(j.x=j.y=0,Na(j,function(Re){Re.r=+ge(Re.value)}),Na(j,c0),g){var me=g*(S?1:Math.max(2*j.r/ne,2*j.r/ie))/2;Na(j,function(Re){Re.r+=me}),Na(j,c0),Na(j,function(Re){Re.r-=me})}return Su(j,ne/2,ie/2,S?1:1/Math.max(2*j.r/ne,2*j.r/ie)),N}return q.size=function(E){return arguments.length?(w=E,q):w},q.radius=function(E){return arguments.length?(S=E==null||typeof E=="function"?E:+E,q):S},q.padding=function(E){return arguments.length?(g=+E,q):g},Vi(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 f0(c,g){c._pack_next=g,g._pack_prev=c}function ku(c,g){var w=g.x-c.x,S=g.y-c.y,q=c.r+g.r;return .999*q*q>w*w+S*S}function c0(c){if(!(g=c.children)||!(me=g.length))return;var g,w=1/0,S=-1/0,q=1/0,E=-1/0,G,N,j,ne,ie,ge,me;function Re(Pe){w=Math.min(Pe.x-Pe.r,w),S=Math.max(Pe.x+Pe.r,S),q=Math.min(Pe.y-Pe.r,q),E=Math.max(Pe.y+Pe.r,E)}if(g.forEach(v0),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],Xn(G,N,j),Re(j),Bs(G,j),G._pack_prev=j,Bs(j,N),N=G._pack_next,ne=3;neSe.x&&(Se=_r),_r.depth>De.depth&&(De=_r)});var Ge=g(be,Se)/2-be.x,We=w[0]/(Se.x+g(Se,be)/2+Ge),Pe=w[1]/(De.depth||1);Ai(Re,function(_r){_r.x=(_r.x+Ge)*We,_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 Ve=Re.children,be,Se=0,De=Ve.length;Se0&&(Os(H(be,ie,me),ie,_r),De+=_r,Ge+=_r),We+=be.m,De+=Re.m,Pe+=Se.m,Ge+=Ve.m;be&&!Cu(Ve)&&(Ve.t=be,Ve.m+=We-Ge),Re&&!Wl(Se)&&(Se.t=Re,Se.m+=De-Pe,me=ie)}return me}function ne(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?(S=(w=ie)==null?ne:null,q):S?null:w},q.nodeSize=function(ie){return arguments.length?(S=(w=ie)==null?null:ne,q):S?w:null},Vi(q,c)};function si(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 S=w/(g.i-c.i);g.c-=S,g.s+=w,c.c+=S,g.z+=w,g.m+=w}function Uf(c){for(var g=0,w=0,S=c.children,q=S.length,E;--q>=0;)E=S[q],E.z+=g,E.m+=g,g+=E.s+(w+=E.c)}function H(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=si,w=[1,1],S=!1;function q(E,G){var N=c.call(this,E,G),j=N[0],ne,ie=0;Na(j,function(be){var Se=be.children;Se&&Se.length?(be.x=ce(Se),be.y=J(Se)):(be.x=ne?ie+=g(be,ne):0,be.y=0,ne=be)});var ge=oe(j),me=we(j),Re=ge.x-g(ge,me)/2,Ve=me.x+g(me,ge)/2;return Na(j,S?function(be){be.x=(be.x-j.x)*w[0],be.y=(j.y-be.y)*w[1]}:function(be){be.x=(be.x-Re)/(Ve-Re)*w[0],be.y=(1-(j.y?be.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?(S=(w=E)==null,q):S?null:w},q.nodeSize=function(E){return arguments.length?(S=(w=E)!=null,q):S?w:null},Vi(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],S=null,q=He,E=!1,G,N="squarify",j=.5*(1+Math.sqrt(5));function ne(be,Se){for(var De=-1,Ge=be.length,We,Pe;++De0;)Ge.push(Pe=We[Vr-1]),Ge.area+=Pe.area,N!=="squarify"||(Or=me(Ge,Wr))<=_r?(We.pop(),_r=Or):(Ge.area-=Ge.pop().area,Re(Ge,Wr,De,!1),Wr=Math.min(De.dx,De.dy),Ge.length=Ge.area=0,_r=1/0);Ge.length&&(Re(Ge,Wr,De,!0),Ge.length=Ge.area=0),Se.forEach(ie)}}function ge(be){var Se=be.children;if(Se&&Se.length){var De=q(be),Ge=Se.slice(),We,Pe=[];for(ne(Ge,De.dx*De.dy/be.value),Pe.area=0;We=Ge.pop();)Pe.push(We),Pe.area+=We.area,We.z!=null&&(Re(Pe,We.z?De.dx:De.dy,De,!Ge.length),Pe.length=Pe.area=0);Se.forEach(ge)}}function me(be,Se){for(var De=be.area,Ge,We=0,Pe=1/0,_r=-1,Or=be.length;++_rWe&&(We=Ge));return De*=De,Se*=Se,De?Math.max(Se*We*j/De,De/(Se*Pe*j)):1/0}function Re(be,Se,De,Ge){var We=-1,Pe=be.length,_r=De.x,Or=De.y,Wr=Se?g(be.area/Se):0,Vr;if(Se==De.dx){for((Ge||Wr>De.dy)&&(Wr=De.dy);++WeDe.dx)&&(Wr=De.dx);++We1);return c+g*S*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?Mr:br,ne=S?Ff:Nf;return q=j(c,g,ne,w),E=j(g,c,ne,el),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?(S=j,G()):S},N.interpolate=function(j){return arguments.length?(w=j,G()):w},N.ticks=function(j){return nt(c,j)},N.tickFormat=function(j,ne){return d3_scale_linearTickFormat(c,j,ne)},N.nice=function(j){return Jr(c,j),G()},N.copy=function(){return qr(c,g,w,S)},G()}function rt(c,g){return e.rebind(c,g,"range","rangeRound","interpolate","clamp")}function Jr(c,g){return $e(c,hr(tt(c,g)[2])),$e(c,hr(tt(c,g)[2])),c}function tt(c,g){g==null&&(g=10);var w=ar(c),S=w[1]-w[0],q=Math.pow(10,Math.floor(Math.log(S/g)/Math.LN10)),E=g/S*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 Er={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 Er?Math.abs(w-Ir(Math.max(b(g[0]),b(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,S){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((S=N.map(Number)).map(q)),G):S},G.base=function(N){return arguments.length?(g=+N,c.domain(S.map(q)),G):g},G.nice=function(){var N=$e(S.map(q),w?Math:Gt);return c.domain(N),S=N.map(E),G},G.ticks=function(){var N=ar(S),j=[],ne=N[0],ie=N[1],ge=Math.floor(q(ne)),me=Math.ceil(q(ie)),Re=g%1?2:g;if(isFinite(me-ge)){if(w){for(;ge0;Ve--)j.push(E(ge)*Ve);for(ge=0;j[ge]ie;me--);j=j.slice(ge,me)}return j},G.copy=function(){return pt(c.copy(),g,w,S)},rt(G,c)}var Gt={floor:function(c){return-Math.ceil(-c)},ceil:function(c){return-Math.floor(-c)}};e.scale.pow=function(){return tn(e.scale.linear(),1,[0,1])};function tn(c,g,w){var S=Wt(g),q=Wt(1/g);function E(G){return c(S(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(S)),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?(S=Wt(g=G),q=Wt(1/g),c.domain(w.map(S)),E):g},E.copy=function(){return tn(c.copy(),g,w)},rt(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 mn([],{t:"range",a:[[]]})};function mn(c,g){var w,S,q;function E(N){return S[((w.get(N)||(g.t==="range"?w.set(N,c.push(N)):NaN))-1)%S.length]}function G(N,j){return e.range(c.length).map(function(ne){return N+j*ne})}return E.domain=function(N){if(!arguments.length)return c;c=[],w=new _;for(var j=-1,ne=N.length,ie;++j0?w[E-1]:c[0],Eme?0:1;if(ie=Yr)return j(ie,Ve)+(ne?j(ne,1-Ve):"")+"Z";var be,Se,De,Ge,We=0,Pe=0,_r,Or,Wr,Vr,$r,Kr,bt,et,ht=[];if((Ge=(+G.apply(this,arguments)||0)/2)&&(De=S===Wi?Math.sqrt(ne*ne+ie*ie):+S.apply(this,arguments),Ve||(Pe*=-1),ie&&(Pe=pn(De/ie*Math.sin(Ge))),ne&&(We=pn(De/ne*Math.sin(Ge)))),ie){_r=ie*Math.cos(ge+Pe),Or=ie*Math.sin(ge+Pe),Wr=ie*Math.cos(me-Pe),Vr=ie*Math.sin(me-Pe);var Jt=Math.abs(me-ge-2*Pe)<=rr?0:1;if(Pe&&Lu(_r,Or,Wr,Vr)===Ve^Jt){var jn=(ge+me)/2;_r=ie*Math.cos(jn),Or=ie*Math.sin(jn),Wr=Vr=null}}else _r=Or=0;if(ne){$r=ne*Math.cos(me-We),Kr=ne*Math.sin(me-We),bt=ne*Math.cos(ge+We),et=ne*Math.sin(ge+We);var sn=Math.abs(ge-me+2*We)<=rr?0:1;if(We&&Lu($r,Kr,bt,et)===1-Ve^sn){var Rr=(ge+me)/2;$r=ne*Math.cos(Rr),Kr=ne*Math.sin(Rr),bt=et=null}}else $r=Kr=0;if(Re>Ae&&(be=Math.min(Math.abs(ie-ne)/2,+w.apply(this,arguments)))>.001){Se=ne0?0:1}function h0(c,g,w,S,q){var E=c[0]-g[0],G=c[1]-g[1],N=(q?S:-S)/Math.sqrt(E*E+G*G),j=N*G,ne=-N*E,ie=c[0]+j,ge=c[1]+ne,me=g[0]+j,Re=g[1]+ne,Ve=(ie+me)/2,be=(ge+Re)/2,Se=me-ie,De=Re-ge,Ge=Se*Se+De*De,We=w-S,Pe=ie*Re-me*ge,_r=(De<0?-1:1)*Math.sqrt(Math.max(0,We*We*Ge-Pe*Pe)),Or=(Pe*De-Se*_r)/Ge,Wr=(-Pe*Se-De*_r)/Ge,Vr=(Pe*De+Se*_r)/Ge,$r=(-Pe*Se+De*_r)/Ge,Kr=Or-Ve,bt=Wr-be,et=Vr-Ve,ht=$r-be;return Kr*Kr+bt*bt>et*et+ht*ht&&(Or=Vr,Wr=$r),[[Or-j,Wr-ne],[Or*w/We,Wr*w/We]]}function d0(){return!0}function Xh(c){var g=zl,w=bs,S=d0,q=Zi,E=q.key,G=.7;function N(j){var ne=[],ie=[],ge=-1,me=j.length,Re,Ve=At(g),be=At(w);function Se(){ne.push("M",q(c(ie),G))}for(;++ge1?c.join("L"):c+"Z"}function jh(c){return c.join("L")+"Z"}function Jh(c){for(var g=0,w=c.length,S=c[0],q=[S[0],",",S[1]];++g1&&q.push("H",S[0]),q.join("")}function p0(c){for(var g=0,w=c.length,S=c[0],q=[S[0],",",S[1]];++g1){N=g[1],E=c[j],j++,S+="C"+(q[0]+G[0])+","+(q[1]+G[1])+","+(E[0]-N[0])+","+(E[1]-N[1])+","+E[0]+","+E[1];for(var ne=2;ne9&&(E=w*3/Math.sqrt(E),G[N]=E*S,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 se(c){return c.length<3?Zi(c):c[0]+g0(c,Z(c))}e.svg.line.radial=function(){var c=Xh(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,S=c.length,q,E;++wrr)+",1 "+ge}function ne(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?(S=At(ie),E):S},E.endAngle=function(ie){return arguments.length?(q=At(ie),E):q},E};function qe(c){return c.radius}e.svg.diagonal=function(){var c=de,g=xe,w=Fe;function S(q,E){var G=c.call(this,q,E),N=g.call(this,q,E),j=(G.y+N.y)/2,ne=[G,{x:G.x,y:j},{x:N.x,y:j},N];return ne=ne.map(w),"M"+ne[0]+"C"+ne[1]+" "+ne[2]+" "+ne[3]}return S.source=function(q){return arguments.length?(c=At(q),S):c},S.target=function(q){return arguments.length?(g=At(q),S):g},S.projection=function(q){return arguments.length?(w=q,S):w},S};function Fe(c){return[c.x,c.y]}e.svg.diagonal.radial=function(){var c=e.svg.diagonal(),g=Fe,w=c.projection;return c.projection=function(S){return arguments.length?w(er(g=S)):g},c};function er(c){return function(){var g=c.apply(this,arguments),w=g[0],S=g[1]-Fr;return[w*Math.cos(S),w*Math.sin(S)]}}e.svg.symbol=function(){var c=Ar,g=cr;function w(S,q){return(at.get(c.call(this,S,q))||Zr)(g.call(this,S,q))}return w.type=function(S){return arguments.length?(c=At(S),w):c},w.size=function(S){return arguments.length?(g=At(S),w):g},w};function cr(){return 64}function Ar(){return"circle"}function Zr(c){var g=Math.sqrt(c/rr);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=ga||++Fn,w=Ca(c),S=[],q,E,G=fi||{time:Date.now(),ease:Qc,delay:0,duration:250},N=-1,j=this.length;++N0;)ge[--Ge].call(c,De);if(Se>=1)return G.event&&G.event.end.call(c,c.__data__,g),--E.count?delete E[S]:delete c[w],1}G||(N=q.time,j=Rl(me,0,N),G=E[S]={tween:new _,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=Xi,w=6,S=6,q=3,E=[10],G=null,N;function j(ne){ne.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,Ve=N==null?me.tickFormat?me.tickFormat.apply(me,E):V:N,be=ie.selectAll(".tick").data(Re,me),Se=be.enter().insert("g",".domain").attr("class","tick").style("opacity",Ae),De=e.transition(be.exit()).style("opacity",Ae).remove(),Ge=e.transition(be.order()).style("opacity",1),We=Math.max(w,0)+q,Pe,_r=sr(me),Or=ie.selectAll(".domain").data([0]),Wr=(Or.enter().append("path").attr("class","domain"),e.transition(Or));Se.append("line"),Se.append("text");var Vr=Se.select("line"),$r=Ge.select("line"),Kr=be.select("text").text(Ve),bt=Se.select("text"),et=Ge.select("text"),ht=g==="top"||g==="left"?-1:1,Jt,jn,sn,Rr;if(g==="bottom"||g==="top"?(Pe=sl,Jt="x",sn="y",jn="x2",Rr="y2",Kr.attr("dy",ht<0?"0em":".71em").style("text-anchor","middle"),Wr.attr("d","M"+_r[0]+","+ht*S+"V0H"+_r[1]+"V"+ht*S)):(Pe=ul,Jt="y",sn="x",jn="y2",Rr="x2",Kr.attr("dy",".32em").style("text-anchor",ht<0?"end":"start"),Wr.attr("d","M"+ht*S+","+_r[0]+"H0V"+_r[1]+"H"+ht*S)),Vr.attr(Rr,ht*w),bt.attr(sn,ht*We),$r.attr(jn,0).attr(Rr,ht*w),et.attr(Jt,0).attr(sn,ht*We),me.rangeBand){var _t=me,wt=_t.rangeBand()/2;ge=me=function($t){return _t($t)+wt}}else ge.rangeBand?ge=me:De.call(Pe,me,ge);Se.call(Pe,ge,me),Ge.call(Pe,me,me)})}return j.scale=function(ne){return arguments.length?(c=ne,j):c},j.orient=function(ne){return arguments.length?(g=ne in ll?ne+"":Xi,j):g},j.ticks=function(){return arguments.length?(E=t(arguments),j):E},j.tickValues=function(ne){return arguments.length?(G=ne,j):G},j.tickFormat=function(ne){return arguments.length?(N=ne,j):N},j.tickSize=function(ne){var ie=arguments.length;return ie?(w=+ne,S=+arguments[ie-1],j):w},j.innerTickSize=function(ne){return arguments.length?(w=+ne,j):w},j.outerTickSize=function(ne){return arguments.length?(S=+ne,j):S},j.tickPadding=function(ne){return arguments.length?(q=+ne,j):q},j.tickSubdivide=function(){return arguments.length&&j},j};var Xi="bottom",ll={top:1,right:1,bottom:1,left:1};function sl(c,g,w){c.attr("transform",function(S){var q=g(S);return"translate("+(isFinite(q)?q:w(S))+",0)"})}function ul(c,g,w){c.attr("transform",function(S){var q=g(S);return"translate(0,"+(isFinite(q)?q:w(S))+")"})}e.svg.brush=function(){var c=ze(ie,"brushstart","brush","brushend"),g=null,w=null,S=[0,0],q=[0,0],E,G,N=!0,j=!0,ne=go[0];function ie(be){be.each(function(){var Se=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Ve).on("touchstart.brush",Ve),De=Se.selectAll(".background").data([0]);De.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Se.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Ge=Se.selectAll(".resize").data(ne,V);Ge.exit().remove(),Ge.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"),Ge.style("display",ie.empty()?"none":null);var We=e.transition(Se),Pe=e.transition(De),_r;g&&(_r=sr(g),Pe.attr("x",_r[0]).attr("width",_r[1]-_r[0]),me(We)),w&&(_r=sr(w),Pe.attr("y",_r[0]).attr("height",_r[1]-_r[0]),Re(We)),ge(We)})}ie.event=function(be){be.each(function(){var Se=c.of(this,arguments),De={x:S,y:q,i:E,j:G},Ge=this.__chart__||De;this.__chart__=De,ga?e.select(this).transition().each("start.brush",function(){E=Ge.i,G=Ge.j,S=Ge.x,q=Ge.y,Se({type:"brushstart"})}).tween("brush:brush",function(){var We=Ol(S,De.x),Pe=Ol(q,De.y);return E=G=null,function(_r){S=De.x=We(_r),q=De.y=Pe(_r),Se({type:"brush",mode:"resize"})}}).each("end.brush",function(){E=De.i,G=De.j,Se({type:"brush",mode:"resize"}),Se({type:"brushend"})}):(Se({type:"brushstart"}),Se({type:"brush",mode:"resize"}),Se({type:"brushend"}))})};function ge(be){be.selectAll(".resize").attr("transform",function(Se){return"translate("+S[+/e$/.test(Se)]+","+q[+/^s/.test(Se)]+")"})}function me(be){be.select(".extent").attr("x",S[0]),be.selectAll(".extent,.n>rect,.s>rect").attr("width",S[1]-S[0])}function Re(be){be.select(".extent").attr("y",q[0]),be.selectAll(".extent,.e>rect,.w>rect").attr("height",q[1]-q[0])}function Ve(){var be=this,Se=e.select(e.event.target),De=c.of(be,arguments),Ge=e.select(be),We=Se.datum(),Pe=!/^(n|s)$/.test(We)&&g,_r=!/^(e|w)$/.test(We)&&w,Or=Se.classed("extent"),Wr=Sr(be),Vr,$r=e.mouse(be),Kr,bt=e.select(i(be)).on("keydown.brush",Jt).on("keyup.brush",jn);if(e.event.changedTouches?bt.on("touchmove.brush",sn).on("touchend.brush",_t):bt.on("mousemove.brush",sn).on("mouseup.brush",_t),Ge.interrupt().selectAll("*").interrupt(),Or)$r[0]=S[0]-$r[0],$r[1]=q[0]-$r[1];else if(We){var et=+/w$/.test(We),ht=+/^n/.test(We);Kr=[S[1-et]-$r[0],q[1-ht]-$r[1]],$r[0]=S[et],$r[1]=q[ht]}else e.event.altKey&&(Vr=$r.slice());Ge.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Se.style("cursor")),De({type:"brushstart"}),sn();function Jt(){e.event.keyCode==32&&(Or||(Vr=null,$r[0]-=S[1],$r[1]-=q[1],Or=2),Le())}function jn(){e.event.keyCode==32&&Or==2&&($r[0]+=S[1],$r[1]+=q[1],Or=0,Le())}function sn(){var wt=e.mouse(be),$t=!1;Kr&&(wt[0]+=Kr[0],wt[1]+=Kr[1]),Or||(e.event.altKey?(Vr||(Vr=[(S[0]+S[1])/2,(q[0]+q[1])/2]),$r[0]=S[+(wt[0]{(function(e,r){typeof od=="object"&&typeof X_!="undefined"?r(od):(e=e||self,r(e.d3=e.d3||{}))})(od,function(e){"use strict";var r=new Date,t=new Date;function n(Te,Oe,kr,Ur){function tr(Ue){return Te(Ue=arguments.length===0?new Date:new Date(+Ue)),Ue}return tr.floor=function(Ue){return Te(Ue=new Date(+Ue)),Ue},tr.ceil=function(Ue){return Te(Ue=new Date(Ue-1)),Oe(Ue,1),Te(Ue),Ue},tr.round=function(Ue){var Ze=tr(Ue),mr=tr.ceil(Ue);return Ue-Ze0))return Tr;do Tr.push(yr=new Date(+Ue)),Oe(Ue,mr),Te(Ue);while(yr=Ze)for(;Te(Ze),!Ue(Ze);)Ze.setTime(Ze-1)},function(Ze,mr){if(Ze>=Ze)if(mr<0)for(;++mr<=0;)for(;Oe(Ze,-1),!Ue(Ze););else for(;--mr>=0;)for(;Oe(Ze,1),!Ue(Ze););})},kr&&(tr.count=function(Ue,Ze){return r.setTime(+Ue),t.setTime(+Ze),Te(r),Te(t),Math.floor(kr(r,t))},tr.every=function(Ue){return Ue=Math.floor(Ue),!isFinite(Ue)||!(Ue>0)?null:Ue>1?tr.filter(Ur?function(Ze){return Ur(Ze)%Ue===0}:function(Ze){return tr.count(0,Ze)%Ue===0}):tr}),tr}var a=n(function(){},function(Te,Oe){Te.setTime(+Te+Oe)},function(Te,Oe){return Oe-Te});a.every=function(Te){return Te=Math.floor(Te),!isFinite(Te)||!(Te>0)?null:Te>1?n(function(Oe){Oe.setTime(Math.floor(Oe/Te)*Te)},function(Oe,kr){Oe.setTime(+Oe+kr*Te)},function(Oe,kr){return(kr-Oe)/Te}):a};var i=a.range,o=1e3,l=6e4,s=36e5,u=864e5,f=6048e5,v=n(function(Te){Te.setTime(Te-Te.getMilliseconds())},function(Te,Oe){Te.setTime(+Te+Oe*o)},function(Te,Oe){return(Oe-Te)/o},function(Te){return Te.getUTCSeconds()}),h=v.range,d=n(function(Te){Te.setTime(Te-Te.getMilliseconds()-Te.getSeconds()*o)},function(Te,Oe){Te.setTime(+Te+Oe*l)},function(Te,Oe){return(Oe-Te)/l},function(Te){return Te.getMinutes()}),m=d.range,p=n(function(Te){Te.setTime(Te-Te.getMilliseconds()-Te.getSeconds()*o-Te.getMinutes()*l)},function(Te,Oe){Te.setTime(+Te+Oe*s)},function(Te,Oe){return(Oe-Te)/s},function(Te){return Te.getHours()}),y=p.range,b=n(function(Te){Te.setHours(0,0,0,0)},function(Te,Oe){Te.setDate(Te.getDate()+Oe)},function(Te,Oe){return(Oe-Te-(Oe.getTimezoneOffset()-Te.getTimezoneOffset())*l)/u},function(Te){return Te.getDate()-1}),C=b.range;function x(Te){return n(function(Oe){Oe.setDate(Oe.getDate()-(Oe.getDay()+7-Te)%7),Oe.setHours(0,0,0,0)},function(Oe,kr){Oe.setDate(Oe.getDate()+kr*7)},function(Oe,kr){return(kr-Oe-(kr.getTimezoneOffset()-Oe.getTimezoneOffset())*l)/f})}var _=x(0),A=x(1),k=x(2),M=x(3),D=x(4),z=x(5),F=x(6),I=_.range,W=A.range,B=k.range,X=M.range,V=D.range,re=z.range,ae=F.range,Q=n(function(Te){Te.setDate(1),Te.setHours(0,0,0,0)},function(Te,Oe){Te.setMonth(Te.getMonth()+Oe)},function(Te,Oe){return Oe.getMonth()-Te.getMonth()+(Oe.getFullYear()-Te.getFullYear())*12},function(Te){return Te.getMonth()}),ee=Q.range,fe=n(function(Te){Te.setMonth(0,1),Te.setHours(0,0,0,0)},function(Te,Oe){Te.setFullYear(Te.getFullYear()+Oe)},function(Te,Oe){return Oe.getFullYear()-Te.getFullYear()},function(Te){return Te.getFullYear()});fe.every=function(Te){return!isFinite(Te=Math.floor(Te))||!(Te>0)?null:n(function(Oe){Oe.setFullYear(Math.floor(Oe.getFullYear()/Te)*Te),Oe.setMonth(0,1),Oe.setHours(0,0,0,0)},function(Oe,kr){Oe.setFullYear(Oe.getFullYear()+kr*Te)})};var he=fe.range,Le=n(function(Te){Te.setUTCSeconds(0,0)},function(Te,Oe){Te.setTime(+Te+Oe*l)},function(Te,Oe){return(Oe-Te)/l},function(Te){return Te.getUTCMinutes()}),Ie=Le.range,ze=n(function(Te){Te.setUTCMinutes(0,0,0)},function(Te,Oe){Te.setTime(+Te+Oe*s)},function(Te,Oe){return(Oe-Te)/s},function(Te){return Te.getUTCHours()}),Xe=ze.range,Ce=n(function(Te){Te.setUTCHours(0,0,0,0)},function(Te,Oe){Te.setUTCDate(Te.getUTCDate()+Oe)},function(Te,Oe){return(Oe-Te)/u},function(Te){return Te.getUTCDate()-1}),Qe=Ce.range;function ue(Te){return n(function(Oe){Oe.setUTCDate(Oe.getUTCDate()-(Oe.getUTCDay()+7-Te)%7),Oe.setUTCHours(0,0,0,0)},function(Oe,kr){Oe.setUTCDate(Oe.getUTCDate()+kr*7)},function(Oe,kr){return(kr-Oe)/f})}var ye=ue(0),Me=ue(1),pe=ue(2),U=ue(3),K=ue(4),$=ue(5),ke=ue(6),Be=ye.range,Ne=Me.range,ir=pe.range,or=U.range,Ye=K.range,nr=$.range,lr=ke.range,vr=n(function(Te){Te.setUTCDate(1),Te.setUTCHours(0,0,0,0)},function(Te,Oe){Te.setUTCMonth(Te.getUTCMonth()+Oe)},function(Te,Oe){return Oe.getUTCMonth()-Te.getUTCMonth()+(Oe.getUTCFullYear()-Te.getUTCFullYear())*12},function(Te){return Te.getUTCMonth()}),Je=vr.range,dr=n(function(Te){Te.setUTCMonth(0,1),Te.setUTCHours(0,0,0,0)},function(Te,Oe){Te.setUTCFullYear(Te.getUTCFullYear()+Oe)},function(Te,Oe){return Oe.getUTCFullYear()-Te.getUTCFullYear()},function(Te){return Te.getUTCFullYear()});dr.every=function(Te){return!isFinite(Te=Math.floor(Te))||!(Te>0)?null:n(function(Oe){Oe.setUTCFullYear(Math.floor(Oe.getUTCFullYear()/Te)*Te),Oe.setUTCMonth(0,1),Oe.setUTCHours(0,0,0,0)},function(Oe,kr){Oe.setUTCFullYear(Oe.getUTCFullYear()+kr*Te)})};var gr=dr.range;e.timeDay=b,e.timeDays=C,e.timeFriday=z,e.timeFridays=re,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=W,e.timeMonth=Q,e.timeMonths=ee,e.timeSaturday=F,e.timeSaturdays=ae,e.timeSecond=v,e.timeSeconds=h,e.timeSunday=_,e.timeSundays=I,e.timeThursday=D,e.timeThursdays=V,e.timeTuesday=k,e.timeTuesdays=B,e.timeWednesday=M,e.timeWednesdays=X,e.timeWeek=_,e.timeWeeks=I,e.timeYear=fe,e.timeYears=he,e.utcDay=Ce,e.utcDays=Qe,e.utcFriday=$,e.utcFridays=nr,e.utcHour=ze,e.utcHours=Xe,e.utcMillisecond=a,e.utcMilliseconds=i,e.utcMinute=Le,e.utcMinutes=Ie,e.utcMonday=Me,e.utcMondays=Ne,e.utcMonth=vr,e.utcMonths=Je,e.utcSaturday=ke,e.utcSaturdays=lr,e.utcSecond=v,e.utcSeconds=h,e.utcSunday=ye,e.utcSundays=Be,e.utcThursday=K,e.utcThursdays=Ye,e.utcTuesday=pe,e.utcTuesdays=ir,e.utcWednesday=U,e.utcWednesdays=or,e.utcWeek=ye,e.utcWeeks=Be,e.utcYear=dr,e.utcYears=gr,Object.defineProperty(e,"__esModule",{value:!0})})});var y0=te((ld,j_)=>{(function(e,r){typeof ld=="object"&&typeof j_!="undefined"?r(ld,Ty()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(ld,function(e,r){"use strict";function t(_e){if(0<=_e.y&&_e.y<100){var Ae=new Date(-1,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L);return Ae.setFullYear(_e.y),Ae}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 Ae=new Date(Date.UTC(-1,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L));return Ae.setUTCFullYear(_e.y),Ae}return new Date(Date.UTC(_e.y,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L))}function a(_e,Ae,Ke){return{y:_e,m:Ae,d:Ke,H:0,M:0,S:0,L:0}}function i(_e){var Ae=_e.dateTime,Ke=_e.date,rr=_e.time,Lr=_e.periods,Yr=_e.days,Fr=_e.shortDays,lt=_e.months,xt=_e.shortMonths,Rt=h(Lr),Kt=d(Lr),cn=h(Yr),pn=d(Yr),Mn=h(Fr),Xt=d(Fr),Qt=h(lt),en=d(lt),an=h(xt),jr=d(xt),Ut={a:gi,A:io,b:mi,B:ms,c:null,d:Q,e:Q,f:Ie,H:ee,I:fe,j:he,L:Le,m:ze,M:Xe,p:El,q:Oo,Q:Ze,s:mr,S:Ce,u:Qe,U:ue,V:ye,w:Me,W:pe,x:null,X:null,y:U,Y:K,Z:$,"%":Ue},Nt={a:ys,A:Uo,b:Un,B:yi,c:null,d:ke,e:ke,f:Ye,H:Be,I:Ne,j:ir,L:or,m:nr,M:lr,p:Yo,q:bi,Q:Ze,s:mr,S:vr,u:Je,U:dr,V:gr,w:Te,W:Oe,x:null,X:null,y:kr,Y:Ur,Z:tr,"%":Ue},rn={a:Ga,A:kn,b:Va,B:ia,c:hn,d:D,e:D,f:X,H:F,I:F,j:z,L:B,m:M,M:I,p:Bn,q:k,Q:re,s:ae,S:W,u:p,U:y,V:b,w:m,W:C,x:dn,X:On,y:_,Y:x,Z:A,"%":V};Ut.x=Tn(Ke,Ut),Ut.X=Tn(rr,Ut),Ut.c=Tn(Ae,Ut),Nt.x=Tn(Ke,Nt),Nt.X=Tn(rr,Nt),Nt.c=Tn(Ae,Nt);function Tn(Qr,St){return function(It){var Br=[],Zn=-1,on=0,Pn=Qr.length,At,Wa,Go;for(It instanceof Date||(It=new Date(+It));++Zn53)return null;"w"in Br||(Br.w=1),"Z"in Br?(on=n(a(Br.y,0,1)),Pn=on.getUTCDay(),on=Pn>4||Pn===0?r.utcMonday.ceil(on):r.utcMonday(on),on=r.utcDay.offset(on,(Br.V-1)*7),Br.y=on.getUTCFullYear(),Br.m=on.getUTCMonth(),Br.d=on.getUTCDate()+(Br.w+6)%7):(on=t(a(Br.y,0,1)),Pn=on.getDay(),on=Pn>4||Pn===0?r.timeMonday.ceil(on):r.timeMonday(on),on=r.timeDay.offset(on,(Br.V-1)*7),Br.y=on.getFullYear(),Br.m=on.getMonth(),Br.d=on.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),Pn="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-(Pn+5)%7:Br.w+Br.U*7-(Pn+6)%7);return"Z"in Br?(Br.H+=Br.Z/100|0,Br.M+=Br.Z%100,n(Br)):t(Br)}}function Yt(Qr,St,It,Br){for(var Zn=0,on=St.length,Pn=It.length,At,Wa;Zn=Pn)return-1;if(At=St.charCodeAt(Zn++),At===37){if(At=St.charAt(Zn++),Wa=rn[At in o?St.charAt(Zn++):At],!Wa||(Br=Wa(Qr,It,Br))<0)return-1}else if(At!=It.charCodeAt(Br++))return-1}return Br}function Bn(Qr,St,It){var Br=Rt.exec(St.slice(It));return Br?(Qr.p=Kt[Br[0].toLowerCase()],It+Br[0].length):-1}function Ga(Qr,St,It){var Br=Mn.exec(St.slice(It));return Br?(Qr.w=Xt[Br[0].toLowerCase()],It+Br[0].length):-1}function kn(Qr,St,It){var Br=cn.exec(St.slice(It));return Br?(Qr.w=pn[Br[0].toLowerCase()],It+Br[0].length):-1}function Va(Qr,St,It){var Br=an.exec(St.slice(It));return Br?(Qr.m=jr[Br[0].toLowerCase()],It+Br[0].length):-1}function ia(Qr,St,It){var Br=Qt.exec(St.slice(It));return Br?(Qr.m=en[Br[0].toLowerCase()],It+Br[0].length):-1}function hn(Qr,St,It){return Yt(Qr,Ae,St,It)}function dn(Qr,St,It){return Yt(Qr,Ke,St,It)}function On(Qr,St,It){return Yt(Qr,rr,St,It)}function gi(Qr){return Fr[Qr.getDay()]}function io(Qr){return Yr[Qr.getDay()]}function mi(Qr){return xt[Qr.getMonth()]}function ms(Qr){return lt[Qr.getMonth()]}function El(Qr){return Lr[+(Qr.getHours()>=12)]}function Oo(Qr){return 1+~~(Qr.getMonth()/3)}function ys(Qr){return Fr[Qr.getUTCDay()]}function Uo(Qr){return Yr[Qr.getUTCDay()]}function Un(Qr){return xt[Qr.getUTCMonth()]}function yi(Qr){return lt[Qr.getUTCMonth()]}function Yo(Qr){return Lr[+(Qr.getUTCHours()>=12)]}function bi(Qr){return 1+~~(Qr.getUTCMonth()/3)}return{format:function(Qr){var St=Tn(Qr+="",Ut);return St.toString=function(){return Qr},St},parse:function(Qr){var St=vn(Qr+="",!1);return St.toString=function(){return Qr},St},utcFormat:function(Qr){var St=Tn(Qr+="",Nt);return St.toString=function(){return Qr},St},utcParse:function(Qr){var St=vn(Qr+="",!0);return St.toString=function(){return Qr},St}}}var o={"-":"",_:" ",0:"0"},l=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(_e,Ae,Ke){var rr=_e<0?"-":"",Lr=(rr?-_e:_e)+"",Yr=Lr.length;return rr+(Yr68?1900:2e3),Ke+rr[0].length):-1}function A(_e,Ae,Ke){var rr=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ae.slice(Ke,Ke+6));return rr?(_e.Z=rr[1]?0:-(rr[2]+(rr[3]||"00")),Ke+rr[0].length):-1}function k(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+1));return rr?(_e.q=rr[0]*3-3,Ke+rr[0].length):-1}function M(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+2));return rr?(_e.m=rr[0]-1,Ke+rr[0].length):-1}function D(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+2));return rr?(_e.d=+rr[0],Ke+rr[0].length):-1}function z(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+3));return rr?(_e.m=0,_e.d=+rr[0],Ke+rr[0].length):-1}function F(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+2));return rr?(_e.H=+rr[0],Ke+rr[0].length):-1}function I(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+2));return rr?(_e.M=+rr[0],Ke+rr[0].length):-1}function W(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+2));return rr?(_e.S=+rr[0],Ke+rr[0].length):-1}function B(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+3));return rr?(_e.L=+rr[0],Ke+rr[0].length):-1}function X(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+6));return rr?(_e.L=Math.floor(rr[0]/1e3),Ke+rr[0].length):-1}function V(_e,Ae,Ke){var rr=s.exec(Ae.slice(Ke,Ke+1));return rr?Ke+rr[0].length:-1}function re(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke));return rr?(_e.Q=+rr[0],Ke+rr[0].length):-1}function ae(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke));return rr?(_e.s=+rr[0],Ke+rr[0].length):-1}function Q(_e,Ae){return f(_e.getDate(),Ae,2)}function ee(_e,Ae){return f(_e.getHours(),Ae,2)}function fe(_e,Ae){return f(_e.getHours()%12||12,Ae,2)}function he(_e,Ae){return f(1+r.timeDay.count(r.timeYear(_e),_e),Ae,3)}function Le(_e,Ae){return f(_e.getMilliseconds(),Ae,3)}function Ie(_e,Ae){return Le(_e,Ae)+"000"}function ze(_e,Ae){return f(_e.getMonth()+1,Ae,2)}function Xe(_e,Ae){return f(_e.getMinutes(),Ae,2)}function Ce(_e,Ae){return f(_e.getSeconds(),Ae,2)}function Qe(_e){var Ae=_e.getDay();return Ae===0?7:Ae}function ue(_e,Ae){return f(r.timeSunday.count(r.timeYear(_e)-1,_e),Ae,2)}function ye(_e,Ae){var Ke=_e.getDay();return _e=Ke>=4||Ke===0?r.timeThursday(_e):r.timeThursday.ceil(_e),f(r.timeThursday.count(r.timeYear(_e),_e)+(r.timeYear(_e).getDay()===4),Ae,2)}function Me(_e){return _e.getDay()}function pe(_e,Ae){return f(r.timeMonday.count(r.timeYear(_e)-1,_e),Ae,2)}function U(_e,Ae){return f(_e.getFullYear()%100,Ae,2)}function K(_e,Ae){return f(_e.getFullYear()%1e4,Ae,4)}function $(_e){var Ae=_e.getTimezoneOffset();return(Ae>0?"-":(Ae*=-1,"+"))+f(Ae/60|0,"0",2)+f(Ae%60,"0",2)}function ke(_e,Ae){return f(_e.getUTCDate(),Ae,2)}function Be(_e,Ae){return f(_e.getUTCHours(),Ae,2)}function Ne(_e,Ae){return f(_e.getUTCHours()%12||12,Ae,2)}function ir(_e,Ae){return f(1+r.utcDay.count(r.utcYear(_e),_e),Ae,3)}function or(_e,Ae){return f(_e.getUTCMilliseconds(),Ae,3)}function Ye(_e,Ae){return or(_e,Ae)+"000"}function nr(_e,Ae){return f(_e.getUTCMonth()+1,Ae,2)}function lr(_e,Ae){return f(_e.getUTCMinutes(),Ae,2)}function vr(_e,Ae){return f(_e.getUTCSeconds(),Ae,2)}function Je(_e){var Ae=_e.getUTCDay();return Ae===0?7:Ae}function dr(_e,Ae){return f(r.utcSunday.count(r.utcYear(_e)-1,_e),Ae,2)}function gr(_e,Ae){var Ke=_e.getUTCDay();return _e=Ke>=4||Ke===0?r.utcThursday(_e):r.utcThursday.ceil(_e),f(r.utcThursday.count(r.utcYear(_e),_e)+(r.utcYear(_e).getUTCDay()===4),Ae,2)}function Te(_e){return _e.getUTCDay()}function Oe(_e,Ae){return f(r.utcMonday.count(r.utcYear(_e)-1,_e),Ae,2)}function kr(_e,Ae){return f(_e.getUTCFullYear()%100,Ae,2)}function Ur(_e,Ae){return f(_e.getUTCFullYear()%1e4,Ae,4)}function tr(){return"+0000"}function Ue(){return"%"}function Ze(_e){return+_e}function mr(_e){return Math.floor(+_e/1e3)}var Tr;yr({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 yr(_e){return Tr=i(_e),e.timeFormat=Tr.format,e.timeParse=Tr.parse,e.utcFormat=Tr.utcFormat,e.utcParse=Tr.utcParse,Tr}var wr="%Y-%m-%dT%H:%M:%S.%LZ";function Hr(_e){return _e.toISOString()}var Sr=Date.prototype.toISOString?Hr:e.utcFormat(wr);function Dr(_e){var Ae=new Date(_e);return isNaN(Ae)?null:Ae}var ur=+new Date("2000-01-01T00:00:00.000Z")?Dr:e.utcParse(wr);e.isoFormat=Sr,e.isoParse=ur,e.timeFormatDefaultLocale=yr,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var ky=te((sd,J_)=>{(function(e,r){typeof sd=="object"&&typeof J_!="undefined"?r(sd):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(sd,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 I=z.length,W=[],B=0,X=M[0],V=0;I>0&&X>0&&(V+X+1>F&&(X=Math.max(1,F-V)),W.push(z.substring(I-=X,I+X)),!((V+=X+1)>F));)X=M[B=(B+1)%M.length];return W.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,I;z0&&(F=0);break}return F>0?M.slice(0,F)+M.slice(I+1):M}var f;function v(M,D){var z=t(M,D);if(!z)return M+"";var F=z[0],I=z[1],W=I-(f=Math.max(-8,Math.min(8,Math.floor(I/3)))*3)+1,B=F.length;return W===B?F:W>B?F+new Array(W-B+1).join("0"):W>0?F.slice(0,W)+"."+F.slice(W):"0."+new Array(1-W).join("0")+t(M,Math.max(0,D+W-1))[0]}function h(M,D){var z=t(M,D);if(!z)return M+"";var F=z[0],I=z[1];return I<0?"0."+new Array(-I).join("0")+F:F.length>I+1?F.slice(0,I+1)+"."+F.slice(I+1):F+new Array(I-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 b(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]+"",I=M.decimal===void 0?".":M.decimal+"",W=M.numerals===void 0?m:i(p.call(M.numerals,String)),B=M.percent===void 0?"%":M.percent+"",X=M.minus===void 0?"-":M.minus+"",V=M.nan===void 0?"NaN":M.nan+"";function re(Q){Q=l(Q);var ee=Q.fill,fe=Q.align,he=Q.sign,Le=Q.symbol,Ie=Q.zero,ze=Q.width,Xe=Q.comma,Ce=Q.precision,Qe=Q.trim,ue=Q.type;ue==="n"?(Xe=!0,ue="g"):d[ue]||(Ce===void 0&&(Ce=12),Qe=!0,ue="g"),(Ie||ee==="0"&&fe==="=")&&(Ie=!0,ee="0",fe="=");var ye=Le==="$"?z:Le==="#"&&/[boxX]/.test(ue)?"0"+ue.toLowerCase():"",Me=Le==="$"?F:/[%p]/.test(ue)?B:"",pe=d[ue],U=/[defgprs%]/.test(ue);Ce=Ce===void 0?6:/[gprs]/.test(ue)?Math.max(1,Math.min(21,Ce)):Math.max(0,Math.min(20,Ce));function K($){var ke=ye,Be=Me,Ne,ir,or;if(ue==="c")Be=pe($)+Be,$="";else{$=+$;var Ye=$<0||1/$<0;if($=isNaN($)?V:pe(Math.abs($),Ce),Qe&&($=u($)),Ye&&+$==0&&he!=="+"&&(Ye=!1),ke=(Ye?he==="("?he:X:he==="-"||he==="("?"":he)+ke,Be=(ue==="s"?y[8+f/3]:"")+Be+(Ye&&he==="("?")":""),U){for(Ne=-1,ir=$.length;++Neor||or>57){Be=(or===46?I+$.slice(Ne+1):$.slice(Ne))+Be,$=$.slice(0,Ne);break}}}Xe&&!Ie&&($=D($,1/0));var nr=ke.length+$.length+Be.length,lr=nr>1)+ke+$+Be+lr.slice(nr);break;default:$=lr+ke+$+Be;break}return W($)}return K.toString=function(){return Q+""},K}function ae(Q,ee){var fe=re((Q=l(Q),Q.type="f",Q)),he=Math.max(-8,Math.min(8,Math.floor(n(ee)/3)))*3,Le=Math.pow(10,-he),Ie=y[8+he/3];return function(ze){return fe(Le*ze)+Ie}}return{format:re,formatPrefix:ae}}var C;x({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function x(M){return C=b(M),e.format=C.format,e.formatPrefix=C.formatPrefix,C}function _(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=b,e.formatSpecifier=l,e.precisionFixed=_,e.precisionPrefix=A,e.precisionRound=k,Object.defineProperty(e,"__esModule",{value:!0})})});var K_=te((nle,$_)=>{"use strict";$_.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 Ht=te((ale,Q_)=>{"use strict";var JI=K_();Q_.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&JI(t))return!1}else if(r!=="number")return!1;return e-e<1}});var Rn=te((ile,e6)=>{"use strict";e6.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 Sy=te((ud,r6)=>{(function(e,r){typeof ud=="object"&&typeof r6!="undefined"?r(ud):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(ud,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=te((ole,t6)=>{"use strict";t6.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=te(cl=>{"use strict";var $I=Sy().decode,KI=Gs(),Cy=Array.isArray,QI=ArrayBuffer,eH=DataView;function n6(e){return QI.isView(e)&&!(e instanceof eH)}cl.isTypedArray=n6;function fd(e){return Cy(e)||n6(e)}cl.isArrayOrTypedArray=fd;function rH(e){return!fd(e[0])}cl.isArray1D=rH;cl.ensureArray=function(e,r){return Cy(e)||(e=[]),e.length=r,e};var Aa={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};Aa.uint8c=Aa.u1c;Aa.uint8=Aa.u1;Aa.int8=Aa.i1;Aa.uint16=Aa.u2;Aa.int16=Aa.i2;Aa.uint32=Aa.u4;Aa.int32=Aa.i4;Aa.float32=Aa.f4;Aa.float64=Aa.f8;function Ly(e){return e.constructor===ArrayBuffer}cl.isArrayBuffer=Ly;cl.decodeTypedArraySpec=function(e){var r=[],t=tH(e),n=t.dtype,a=Aa[n];if(!a)throw new Error('Error in dtype: "'+n+'"');var i=a.BYTES_PER_ELEMENT,o=t.bdata;Ly(o)||(o=$I(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 i6=Ht(),Dy=ji().isArrayOrTypedArray;u6.exports=function(r,t){if(i6(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 b0=e1(),lH=/^\w*$/,sH=0,f6=1,cd=2,c6=3,jf=4;v6.exports=function(r,t,n,a){n=n||"name",a=a||"value";var i,o,l,s={};t&&t.length?(l=b0(r,t),o=l.get()):o=r,t=t||"";var u={};if(o)for(i=0;i2)return s[d]=s[d]|cd,v.set(h,null);if(f){for(i=d;i{"use strict";var uH=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,fH=/^[^\.\[\]]+$/;d6.exports=function(e,r){for(;r;){var t=e.match(uH);if(t)e=t[1];else if(e.match(fH))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 vd=te((cle,g6)=>{"use strict";var cH=Ht();g6.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 cH(n)||(n=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),n}});var b6=te((vle,y6)=>{"use strict";var m6=ji().isArrayOrTypedArray,r1=Gs();y6.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(m6(a)&&m6(i)&&r1(a[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(a.length,i.length),l=0;l{"use strict";function vH(e,r){var t=e%r;return t<0?t+r:t}function hH(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}_6.exports={mod:vH,modHalf:hH}});var Jl=te((dle,hd)=>{(function(e){var r=/^\s+/,t=/\s+$/,n=0,a=e.round,i=e.min,o=e.max,l=e.random;function s(U,K){if(U=U||"",K=K||{},U instanceof s)return U;if(!(this instanceof s))return new s(U,K);var $=u(U);this._originalInput=U,this._r=$.r,this._g=$.g,this._b=$.b,this._a=$.a,this._roundA=a(100*this._a)/100,this._format=K.format||$.format,this._gradientType=K.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 U=this.toRgb();return(U.r*299+U.g*587+U.b*114)/1e3},getLuminance:function(){var U=this.toRgb(),K,$,ke,Be,Ne,ir;return K=U.r/255,$=U.g/255,ke=U.b/255,K<=.03928?Be=K/12.92:Be=e.pow((K+.055)/1.055,2.4),$<=.03928?Ne=$/12.92:Ne=e.pow(($+.055)/1.055,2.4),ke<=.03928?ir=ke/12.92:ir=e.pow((ke+.055)/1.055,2.4),.2126*Be+.7152*Ne+.0722*ir},setAlpha:function(U){return this._a=Q(U),this._roundA=a(100*this._a)/100,this},toHsv:function(){var U=d(this._r,this._g,this._b);return{h:U.h*360,s:U.s,v:U.v,a:this._a}},toHsvString:function(){var U=d(this._r,this._g,this._b),K=a(U.h*360),$=a(U.s*100),ke=a(U.v*100);return this._a==1?"hsv("+K+", "+$+"%, "+ke+"%)":"hsva("+K+", "+$+"%, "+ke+"%, "+this._roundA+")"},toHsl:function(){var U=v(this._r,this._g,this._b);return{h:U.h*360,s:U.s,l:U.l,a:this._a}},toHslString:function(){var U=v(this._r,this._g,this._b),K=a(U.h*360),$=a(U.s*100),ke=a(U.l*100);return this._a==1?"hsl("+K+", "+$+"%, "+ke+"%)":"hsla("+K+", "+$+"%, "+ke+"%, "+this._roundA+")"},toHex:function(U){return p(this._r,this._g,this._b,U)},toHexString:function(U){return"#"+this.toHex(U)},toHex8:function(U){return y(this._r,this._g,this._b,this._a,U)},toHex8String:function(U){return"#"+this.toHex8(U)},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(ee(this._r,255)*100)+"%",g:a(ee(this._g,255)*100)+"%",b:a(ee(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+a(ee(this._r,255)*100)+"%, "+a(ee(this._g,255)*100)+"%, "+a(ee(this._b,255)*100)+"%)":"rgba("+a(ee(this._r,255)*100)+"%, "+a(ee(this._g,255)*100)+"%, "+a(ee(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:re[p(this._r,this._g,this._b,!0)]||!1},toFilter:function(U){var K="#"+b(this._r,this._g,this._b,this._a),$=K,ke=this._gradientType?"GradientType = 1, ":"";if(U){var Be=s(U);$="#"+b(Be._r,Be._g,Be._b,Be._a)}return"progid:DXImageTransform.Microsoft.gradient("+ke+"startColorstr="+K+",endColorstr="+$+")"},toString:function(U){var K=!!U;U=U||this._format;var $=!1,ke=this._a<1&&this._a>=0,Be=!K&&ke&&(U==="hex"||U==="hex6"||U==="hex3"||U==="hex4"||U==="hex8"||U==="name");return Be?U==="name"&&this._a===0?this.toName():this.toRgbString():(U==="rgb"&&($=this.toRgbString()),U==="prgb"&&($=this.toPercentageRgbString()),(U==="hex"||U==="hex6")&&($=this.toHexString()),U==="hex3"&&($=this.toHexString(!0)),U==="hex4"&&($=this.toHex8String(!0)),U==="hex8"&&($=this.toHex8String()),U==="name"&&($=this.toName()),U==="hsl"&&($=this.toHslString()),U==="hsv"&&($=this.toHsvString()),$||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(U,K){var $=U.apply(null,[this].concat([].slice.call(K)));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(C,arguments)},saturate:function(){return this._applyModification(x,arguments)},greyscale:function(){return this._applyModification(_,arguments)},spin:function(){return this._applyModification(D,arguments)},_applyCombination:function(U,K){return U.apply(null,[this].concat([].slice.call(K)))},analogous:function(){return this._applyCombination(B,arguments)},complement:function(){return this._applyCombination(z,arguments)},monochromatic:function(){return this._applyCombination(X,arguments)},splitcomplement:function(){return this._applyCombination(W,arguments)},triad:function(){return this._applyCombination(F,arguments)},tetrad:function(){return this._applyCombination(I,arguments)}},s.fromRatio=function(U,K){if(typeof U=="object"){var $={};for(var ke in U)U.hasOwnProperty(ke)&&(ke==="a"?$[ke]=U[ke]:$[ke]=Xe(U[ke]));U=$}return s(U,K)};function u(U){var K={r:0,g:0,b:0},$=1,ke=null,Be=null,Ne=null,ir=!1,or=!1;return typeof U=="string"&&(U=Me(U)),typeof U=="object"&&(ye(U.r)&&ye(U.g)&&ye(U.b)?(K=f(U.r,U.g,U.b),ir=!0,or=String(U.r).substr(-1)==="%"?"prgb":"rgb"):ye(U.h)&&ye(U.s)&&ye(U.v)?(ke=Xe(U.s),Be=Xe(U.v),K=m(U.h,ke,Be),ir=!0,or="hsv"):ye(U.h)&&ye(U.s)&&ye(U.l)&&(ke=Xe(U.s),Ne=Xe(U.l),K=h(U.h,ke,Ne),ir=!0,or="hsl"),U.hasOwnProperty("a")&&($=U.a)),$=Q($),{ok:ir,format:U.format||or,r:i(255,o(K.r,0)),g:i(255,o(K.g,0)),b:i(255,o(K.b,0)),a:$}}function f(U,K,$){return{r:ee(U,255)*255,g:ee(K,255)*255,b:ee($,255)*255}}function v(U,K,$){U=ee(U,255),K=ee(K,255),$=ee($,255);var ke=o(U,K,$),Be=i(U,K,$),Ne,ir,or=(ke+Be)/2;if(ke==Be)Ne=ir=0;else{var Ye=ke-Be;switch(ir=or>.5?Ye/(2-ke-Be):Ye/(ke+Be),ke){case U:Ne=(K-$)/Ye+(K<$?6:0);break;case K:Ne=($-U)/Ye+2;break;case $:Ne=(U-K)/Ye+4;break}Ne/=6}return{h:Ne,s:ir,l:or}}function h(U,K,$){var ke,Be,Ne;U=ee(U,360),K=ee(K,100),$=ee($,100);function ir(nr,lr,vr){return vr<0&&(vr+=1),vr>1&&(vr-=1),vr<1/6?nr+(lr-nr)*6*vr:vr<1/2?lr:vr<2/3?nr+(lr-nr)*(2/3-vr)*6:nr}if(K===0)ke=Be=Ne=$;else{var or=$<.5?$*(1+K):$+K-$*K,Ye=2*$-or;ke=ir(Ye,or,U+1/3),Be=ir(Ye,or,U),Ne=ir(Ye,or,U-1/3)}return{r:ke*255,g:Be*255,b:Ne*255}}function d(U,K,$){U=ee(U,255),K=ee(K,255),$=ee($,255);var ke=o(U,K,$),Be=i(U,K,$),Ne,ir,or=ke,Ye=ke-Be;if(ir=ke===0?0:Ye/ke,ke==Be)Ne=0;else{switch(ke){case U:Ne=(K-$)/Ye+(K<$?6:0);break;case K:Ne=($-U)/Ye+2;break;case $:Ne=(U-K)/Ye+4;break}Ne/=6}return{h:Ne,s:ir,v:or}}function m(U,K,$){U=ee(U,360)*6,K=ee(K,100),$=ee($,100);var ke=e.floor(U),Be=U-ke,Ne=$*(1-K),ir=$*(1-Be*K),or=$*(1-(1-Be)*K),Ye=ke%6,nr=[$,ir,Ne,Ne,or,$][Ye],lr=[or,$,$,ir,Ne,Ne][Ye],vr=[Ne,Ne,or,$,$,ir][Ye];return{r:nr*255,g:lr*255,b:vr*255}}function p(U,K,$,ke){var Be=[ze(a(U).toString(16)),ze(a(K).toString(16)),ze(a($).toString(16))];return ke&&Be[0].charAt(0)==Be[0].charAt(1)&&Be[1].charAt(0)==Be[1].charAt(1)&&Be[2].charAt(0)==Be[2].charAt(1)?Be[0].charAt(0)+Be[1].charAt(0)+Be[2].charAt(0):Be.join("")}function y(U,K,$,ke,Be){var Ne=[ze(a(U).toString(16)),ze(a(K).toString(16)),ze(a($).toString(16)),ze(Ce(ke))];return Be&&Ne[0].charAt(0)==Ne[0].charAt(1)&&Ne[1].charAt(0)==Ne[1].charAt(1)&&Ne[2].charAt(0)==Ne[2].charAt(1)&&Ne[3].charAt(0)==Ne[3].charAt(1)?Ne[0].charAt(0)+Ne[1].charAt(0)+Ne[2].charAt(0)+Ne[3].charAt(0):Ne.join("")}function b(U,K,$,ke){var Be=[ze(Ce(ke)),ze(a(U).toString(16)),ze(a(K).toString(16)),ze(a($).toString(16))];return Be.join("")}s.equals=function(U,K){return!U||!K?!1:s(U).toRgbString()==s(K).toRgbString()},s.random=function(){return s.fromRatio({r:l(),g:l(),b:l()})};function C(U,K){K=K===0?0:K||10;var $=s(U).toHsl();return $.s-=K/100,$.s=fe($.s),s($)}function x(U,K){K=K===0?0:K||10;var $=s(U).toHsl();return $.s+=K/100,$.s=fe($.s),s($)}function _(U){return s(U).desaturate(100)}function A(U,K){K=K===0?0:K||10;var $=s(U).toHsl();return $.l+=K/100,$.l=fe($.l),s($)}function k(U,K){K=K===0?0:K||10;var $=s(U).toRgb();return $.r=o(0,i(255,$.r-a(255*-(K/100)))),$.g=o(0,i(255,$.g-a(255*-(K/100)))),$.b=o(0,i(255,$.b-a(255*-(K/100)))),s($)}function M(U,K){K=K===0?0:K||10;var $=s(U).toHsl();return $.l-=K/100,$.l=fe($.l),s($)}function D(U,K){var $=s(U).toHsl(),ke=($.h+K)%360;return $.h=ke<0?360+ke:ke,s($)}function z(U){var K=s(U).toHsl();return K.h=(K.h+180)%360,s(K)}function F(U){var K=s(U).toHsl(),$=K.h;return[s(U),s({h:($+120)%360,s:K.s,l:K.l}),s({h:($+240)%360,s:K.s,l:K.l})]}function I(U){var K=s(U).toHsl(),$=K.h;return[s(U),s({h:($+90)%360,s:K.s,l:K.l}),s({h:($+180)%360,s:K.s,l:K.l}),s({h:($+270)%360,s:K.s,l:K.l})]}function W(U){var K=s(U).toHsl(),$=K.h;return[s(U),s({h:($+72)%360,s:K.s,l:K.l}),s({h:($+216)%360,s:K.s,l:K.l})]}function B(U,K,$){K=K||6,$=$||30;var ke=s(U).toHsl(),Be=360/$,Ne=[s(U)];for(ke.h=(ke.h-(Be*K>>1)+720)%360;--K;)ke.h=(ke.h+Be)%360,Ne.push(s(ke));return Ne}function X(U,K){K=K||6;for(var $=s(U).toHsv(),ke=$.h,Be=$.s,Ne=$.v,ir=[],or=1/K;K--;)ir.push(s({h:ke,s:Be,v:Ne})),Ne=(Ne+or)%1;return ir}s.mix=function(U,K,$){$=$===0?0:$||50;var ke=s(U).toRgb(),Be=s(K).toRgb(),Ne=$/100,ir={r:(Be.r-ke.r)*Ne+ke.r,g:(Be.g-ke.g)*Ne+ke.g,b:(Be.b-ke.b)*Ne+ke.b,a:(Be.a-ke.a)*Ne+ke.a};return s(ir)},s.readability=function(U,K){var $=s(U),ke=s(K);return(e.max($.getLuminance(),ke.getLuminance())+.05)/(e.min($.getLuminance(),ke.getLuminance())+.05)},s.isReadable=function(U,K,$){var ke=s.readability(U,K),Be,Ne;switch(Ne=!1,Be=pe($),Be.level+Be.size){case"AAsmall":case"AAAlarge":Ne=ke>=4.5;break;case"AAlarge":Ne=ke>=3;break;case"AAAsmall":Ne=ke>=7;break}return Ne},s.mostReadable=function(U,K,$){var ke=null,Be=0,Ne,ir,or,Ye;$=$||{},ir=$.includeFallbackColors,or=$.level,Ye=$.size;for(var nr=0;nrBe&&(Be=Ne,ke=s(K[nr]));return s.isReadable(U,ke,{level:or,size:Ye})||!ir?ke:($.includeFallbackColors=!1,s.mostReadable(U,["#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"},re=s.hexNames=ae(V);function ae(U){var K={};for(var $ in U)U.hasOwnProperty($)&&(K[U[$]]=$);return K}function Q(U){return U=parseFloat(U),(isNaN(U)||U<0||U>1)&&(U=1),U}function ee(U,K){Le(U)&&(U="100%");var $=Ie(U);return U=i(K,o(0,parseFloat(U))),$&&(U=parseInt(U*K,10)/100),e.abs(U-K)<1e-6?1:U%K/parseFloat(K)}function fe(U){return i(1,o(0,U))}function he(U){return parseInt(U,16)}function Le(U){return typeof U=="string"&&U.indexOf(".")!=-1&&parseFloat(U)===1}function Ie(U){return typeof U=="string"&&U.indexOf("%")!=-1}function ze(U){return U.length==1?"0"+U:""+U}function Xe(U){return U<=1&&(U=U*100+"%"),U}function Ce(U){return e.round(parseFloat(U)*255).toString(16)}function Qe(U){return he(U)/255}var ue=function(){var U="[-\\+]?\\d+%?",K="[-\\+]?\\d*\\.\\d+%?",$="(?:"+K+")|(?:"+U+")",ke="[\\s|\\(]+("+$+")[,|\\s]+("+$+")[,|\\s]+("+$+")\\s*\\)?",Be="[\\s|\\(]+("+$+")[,|\\s]+("+$+")[,|\\s]+("+$+")[,|\\s]+("+$+")\\s*\\)?";return{CSS_UNIT:new RegExp($),rgb:new RegExp("rgb"+ke),rgba:new RegExp("rgba"+Be),hsl:new RegExp("hsl"+ke),hsla:new RegExp("hsla"+Be),hsv:new RegExp("hsv"+ke),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 ye(U){return!!ue.CSS_UNIT.exec(U)}function Me(U){U=U.replace(r,"").replace(t,"").toLowerCase();var K=!1;if(V[U])U=V[U],K=!0;else if(U=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var $;return($=ue.rgb.exec(U))?{r:$[1],g:$[2],b:$[3]}:($=ue.rgba.exec(U))?{r:$[1],g:$[2],b:$[3],a:$[4]}:($=ue.hsl.exec(U))?{h:$[1],s:$[2],l:$[3]}:($=ue.hsla.exec(U))?{h:$[1],s:$[2],l:$[3],a:$[4]}:($=ue.hsv.exec(U))?{h:$[1],s:$[2],v:$[3]}:($=ue.hsva.exec(U))?{h:$[1],s:$[2],v:$[3],a:$[4]}:($=ue.hex8.exec(U))?{r:he($[1]),g:he($[2]),b:he($[3]),a:Qe($[4]),format:K?"name":"hex8"}:($=ue.hex6.exec(U))?{r:he($[1]),g:he($[2]),b:he($[3]),format:K?"name":"hex"}:($=ue.hex4.exec(U))?{r:he($[1]+""+$[1]),g:he($[2]+""+$[2]),b:he($[3]+""+$[3]),a:Qe($[4]+""+$[4]),format:K?"name":"hex8"}:($=ue.hex3.exec(U))?{r:he($[1]+""+$[1]),g:he($[2]+""+$[2]),b:he($[3]+""+$[3]),format:K?"name":"hex"}:!1}function pe(U){var K,$;return U=U||{level:"AA",size:"small"},K=(U.level||"AA").toUpperCase(),$=(U.size||"small").toLowerCase(),K!=="AA"&&K!=="AAA"&&(K="AA"),$!=="small"&&$!=="large"&&($="small"),{level:K,size:$}}typeof hd!="undefined"&&hd.exports?hd.exports=s:window.tinycolor=s})(Math)});var sa=te(a1=>{"use strict";var x6=Gs(),t1=Array.isArray;function dH(e,r){var t,n;for(t=0;t{"use strict";w6.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 i1=te((mle,M6)=>{"use strict";M6.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var x0=te((yle,k6)=>{"use strict";var A6=i1(),T6=$a(),Ey=T6({editType:"none"});Ey.family.dflt=A6.HOVERFONT;Ey.size.dflt=A6.HOVERFONTSIZE;k6.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:Ey,grouptitlefont:T6({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var dd=te((ble,S6)=>{"use strict";var pH=$a(),o1=x0().hoverlabel,l1=sa().extendFlat;S6.exports={hoverlabel:{bgcolor:l1({},o1.bgcolor,{arrayOk:!0}),bordercolor:l1({},o1.bordercolor,{arrayOk:!0}),font:pH({arrayOk:!0,editType:"none"}),align:l1({},o1.align,{arrayOk:!0}),namelength:l1({},o1.namelength,{arrayOk:!0}),showarrow:l1({},o1.showarrow),editType:"none"}}});var bo=te((_le,C6)=>{"use strict";var gH=$a(),mH=dd();C6.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:gH({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:mH.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=te((xle,D6)=>{"use strict";var yH=Jl(),pd={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)"]]},L6=pd.RdBu;function bH(e,r){if(r||(r=L6),!e)return r;function t(){try{e=pd[e]||JSON.parse(e)}catch(n){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),q6(e)?e:r}function q6(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 Et=te((Mle,E6)=>{"use strict";var Li=Jl(),xH=Ht(),wH=ji().isTypedArray,ma=E6.exports={},gd=vl();ma.defaults=gd.defaults;var MH=ma.defaultLine=gd.defaultLine;ma.lightLine=gd.lightLine;var Ry=ma.background=gd.background;ma.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};ma.rgb=function(e){return ma.tinyRGB(Li(e))};ma.opacity=function(e){return e?Li(e).getAlpha():0};ma.addOpacity=function(e,r){var t=Li(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};ma.combine=function(e,r){var t=Li(e).toRgb();if(t.a===1)return Li(e).toRgbString();var n=Li(r||Ry).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()};ma.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()};ma.contrast=function(e,r,t){var n=Li(e);n.getAlpha()!==1&&(n=Li(ma.combine(e,Ry)));var a=n.isDark()?r?n.lighten(r):Ry:t?n.darken(t):MH;return a.toString()};ma.stroke=function(e,r){var t=Li(r);e.style({stroke:ma.tinyRGB(t),"stroke-opacity":t.getAlpha()})};ma.fill=function(e,r){var t=Li(r);e.style({fill:ma.tinyRGB(t),"fill-opacity":t.getAlpha()})};ma.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 md=te((Ale,P6)=>{"use strict";P6.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var w0=te(R6=>{"use strict";R6.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 I6=te(qi=>{"use strict";var zy=Ht(),z6=Jl(),N6=sa().extendFlat,AH=bo(),TH=Jf(),kH=Et(),SH=md().DESELECTDIM,M0=e1(),F6=w0().counter,CH=_0().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||!zy(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)),z6(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function n(a){return z6(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(TH.get(e,t))}},angle:{coerceFunction:function(e,r,t){Du(e)&&(e=Eu(e)),e==="auto"?r.set("auto"):zy(e)?r.set(CH(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,n){var a=n.regex||F6(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:!!F6(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 H6={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/un/"},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:{}}},B6={};function O6(e,r){for(var t in e){var n=e[t];n.valType?r[t]=n.dflt:(r[t]||(r[t]={}),O6(n,r[t]))}}O6(H6,B6);U6.exports={configAttributes:H6,dfltConfig:B6}});var Fy=te((Cle,Y6)=>{"use strict";var Ny=kt(),LH=Ht(),s1=[];Y6.exports=function(e,r){if(s1.indexOf(e)!==-1)return;s1.push(e);var t=1e3;LH(r)?t=r:r==="long"&&(t=3e3);var n=Ny.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var a=n.selectAll(".notifier-note").data(s1);function i(o){o.duration(700).style("opacity",0).each("end",function(l){var s=s1.indexOf(l);s!==-1&&s1.splice(s,1),Ny.select(this).remove()})}a.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var l=Ny.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 A0=Kf().dfltConfig,Iy=Fy(),Hy=G6.exports={};Hy.log=function(){var e;if(A0.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};Hy.warn=function(){var e;if(A0.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};Hy.error=function(){var e;if(A0.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var bd=te((qle,V6)=>{"use strict";V6.exports=function(){}});var By=te((Dle,W6)=>{"use strict";W6.exports=function(r,t){if(t instanceof RegExp){for(var n=t.toString(),a=0;a{Z6.exports=qH;function qH(){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 J6=te((Ple,j6)=>{j6.exports=DH;function DH(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 K6=te((Rle,$6)=>{$6.exports=EH;function EH(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 Oy=te((zle,Q6)=>{Q6.exports=PH;function PH(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 rx=te((Nle,ex)=>{ex.exports=RH;function RH(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 nx=te((Fle,tx)=>{tx.exports=zH;function zH(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],b=r[15],C=t*l-n*o,x=t*s-a*o,_=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*b-d*m,I=v*y-h*p,W=v*b-d*p,B=h*b-d*y,X=C*B-x*W+_*I+A*F-k*z+M*D;return X?(X=1/X,e[0]=(l*B-s*W+u*I)*X,e[1]=(a*W-n*B-i*I)*X,e[2]=(p*M-y*k+b*A)*X,e[3]=(h*k-v*M-d*A)*X,e[4]=(s*F-o*B-u*z)*X,e[5]=(t*B-a*F+i*z)*X,e[6]=(y*_-m*M-b*x)*X,e[7]=(f*M-h*_+d*x)*X,e[8]=(o*W-l*F+u*D)*X,e[9]=(n*F-t*W-i*D)*X,e[10]=(m*k-p*_+b*C)*X,e[11]=(v*_-f*k-d*C)*X,e[12]=(l*z-o*I-s*D)*X,e[13]=(t*I-n*z+a*D)*X,e[14]=(p*x-m*A-y*C)*X,e[15]=(f*A-v*x+h*C)*X,e):null}});var ix=te((Ile,ax)=>{ax.exports=NH;function NH(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],b=r[15];return e[0]=l*(h*b-d*y)-v*(s*b-u*y)+p*(s*d-u*h),e[1]=-(n*(h*b-d*y)-v*(a*b-i*y)+p*(a*d-i*h)),e[2]=n*(s*b-u*y)-l*(a*b-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*b-d*y)-f*(s*b-u*y)+m*(s*d-u*h)),e[5]=t*(h*b-d*y)-f*(a*b-i*y)+m*(a*d-i*h),e[6]=-(t*(s*b-u*y)-o*(a*b-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*b-d*p)-f*(l*b-u*p)+m*(l*d-u*v),e[9]=-(t*(v*b-d*p)-f*(n*b-i*p)+m*(n*d-i*v)),e[10]=t*(l*b-u*p)-o*(n*b-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 lx=te((Hle,ox)=>{ox.exports=FH;function FH(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],b=r*o-t*i,C=r*l-n*i,x=r*s-a*i,_=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,I=f*y-h*m,W=v*y-h*p;return b*W-C*I+x*F+_*z-A*D+k*M}});var ux=te((Ble,sx)=>{sx.exports=IH;function IH(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],b=r[14],C=r[15],x=t[0],_=t[1],A=t[2],k=t[3];return e[0]=x*n+_*l+A*v+k*p,e[1]=x*a+_*s+A*h+k*y,e[2]=x*i+_*u+A*d+k*b,e[3]=x*o+_*f+A*m+k*C,x=t[4],_=t[5],A=t[6],k=t[7],e[4]=x*n+_*l+A*v+k*p,e[5]=x*a+_*s+A*h+k*y,e[6]=x*i+_*u+A*d+k*b,e[7]=x*o+_*f+A*m+k*C,x=t[8],_=t[9],A=t[10],k=t[11],e[8]=x*n+_*l+A*v+k*p,e[9]=x*a+_*s+A*h+k*y,e[10]=x*i+_*u+A*d+k*b,e[11]=x*o+_*f+A*m+k*C,x=t[12],_=t[13],A=t[14],k=t[15],e[12]=x*n+_*l+A*v+k*p,e[13]=x*a+_*s+A*h+k*y,e[14]=x*i+_*u+A*d+k*b,e[15]=x*o+_*f+A*m+k*C,e}});var cx=te((Ole,fx)=>{fx.exports=HH;function HH(e,r,t){var n=t[0],a=t[1],i=t[2],o,l,s,u,f,v,h,d,m,p,y,b;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],b=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]=b,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+b*i+r[15]),e}});var hx=te((Ule,vx)=>{vx.exports=BH;function BH(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 px=te((Yle,dx)=>{dx.exports=OH;function OH(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,b,C,x,_,A,k,M,D,z,F,I,W,B,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],b=r[6],C=r[7],x=r[8],_=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,I=i*i*f+u,W=o*i*f+a*s,B=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+_*z,e[2]=d*M+b*D+A*z,e[3]=m*M+C*D+k*z,e[4]=v*F+p*I+x*W,e[5]=h*F+y*I+_*W,e[6]=d*F+b*I+A*W,e[7]=m*F+C*I+k*W,e[8]=v*B+p*X+x*V,e[9]=h*B+y*X+_*V,e[10]=d*B+b*X+A*V,e[11]=m*B+C*X+k*V,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var mx=te((Gle,gx)=>{gx.exports=UH;function UH(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 bx=te((Vle,yx)=>{yx.exports=YH;function YH(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 xx=te((Wle,_x)=>{_x.exports=GH;function GH(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 Mx=te((Zle,wx)=>{wx.exports=VH;function VH(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 Tx=te((Xle,Ax)=>{Ax.exports=WH;function WH(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,b=o*s,C=o*u;return e[0]=1-(d+p),e[1]=v+C,e[2]=h-b,e[3]=0,e[4]=v-C,e[5]=1-(f+p),e[6]=m+y,e[7]=0,e[8]=h+b,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 Sx=te((jle,kx)=>{kx.exports=ZH;function ZH(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 Lx=te((Jle,Cx)=>{Cx.exports=XH;function XH(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 Dx=te(($le,qx)=>{qx.exports=jH;function jH(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 Px=te((Kle,Ex)=>{Ex.exports=JH;function JH(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 zx=te((Qle,Rx)=>{Rx.exports=$H;function $H(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 Fx=te((ese,Nx)=>{Nx.exports=KH;function KH(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,b=i*s;return e[0]=1-v-m,e[1]=f+b,e[2]=h-y,e[3]=0,e[4]=f-b,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 Hx=te((rse,Ix)=>{Ix.exports=QH;function QH(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 Ox=te((tse,Bx)=>{Bx.exports=eB;function eB(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 Yx=te((nse,Ux)=>{Ux.exports=rB;function rB(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 Vx=te((ase,Gx)=>{Gx.exports=tB;function tB(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 Zx=te((ise,Wx)=>{var nB=Oy();Wx.exports=aB;function aB(e,r,t,n){var a,i,o,l,s,u,f,v,h,d,m=r[0],p=r[1],y=r[2],b=n[0],C=n[1],x=n[2],_=t[0],A=t[1],k=t[2];return Math.abs(m-_)<1e-6&&Math.abs(p-A)<1e-6&&Math.abs(y-k)<1e-6?nB(e):(f=m-_,v=p-A,h=y-k,d=1/Math.sqrt(f*f+v*v+h*h),f*=d,v*=d,h*=d,a=C*h-x*v,i=x*f-b*h,o=b*v-C*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 jx=te((ose,Xx)=>{Xx.exports=iB;function iB(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 Uy=te((lse,Jx)=>{Jx.exports={create:X6(),clone:J6(),copy:K6(),identity:Oy(),transpose:rx(),invert:nx(),adjoint:ix(),determinant:lx(),multiply:ux(),translate:cx(),scale:hx(),rotate:px(),rotateX:mx(),rotateY:bx(),rotateZ:xx(),fromRotation:Mx(),fromRotationTranslation:Tx(),fromScaling:Sx(),fromTranslation:Lx(),fromXRotation:Dx(),fromYRotation:Px(),fromZRotation:zx(),fromQuat:Fx(),frustum:Hx(),perspective:Ox(),perspectiveFromFieldOfView:Yx(),ortho:Vx(),lookAt:Zx(),str:jx()}});var _d=te(Jn=>{"use strict";var oB=Uy();Jn.init2dArray=function(e,r){for(var t=new Array(e),n=0;n{"use strict";var lB=kt(),$x=Pu(),sB=_d(),uB=Uy();function fB(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 cB(e){var r=lB.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function Kx(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function vB(e,r){Qx("global",e,r)}function Qx(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):$x.warn("addStyleRule failed"):$x.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function hB(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&Kx(t)}function dB(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 pB(e){var r=r7(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=e7(n);if(a){var i=sB.convertCssMatrix(a);t=uB.multiply(t,t,i)}}),t}function e7(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 r7(e){for(var r=[];gB(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function gB(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function mB(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}t7.exports={getGraphDiv:fB,isPlotDiv:cB,removeElement:Kx,addStyleRule:vB,addRelatedStyleRule:Qx,deleteRelatedStyleRule:hB,setStyleOnHover:dB,getFullTransformMatrix:pB,getElementTransformMatrix:e7,getElementAndAncestors:r7,equalDomRects:mB}});var f1=te((fse,n7)=>{"use strict";n7.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=te((cse,f7)=>{"use strict";var i7=sa().extendFlat,yB=Gs(),o7={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},l7={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},bB=o7.flags.slice().concat(["fullReplot"]),_B=l7.flags.slice().concat("layoutReplot");f7.exports={traces:o7,layout:l7,traceFlags:function(){return a7(bB)},layoutFlags:function(){return a7(_B)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var n=t.split("+"),a=0;a{"use strict";Yy.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};Yy.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 Gy=te((hse,c7)=>{"use strict";c7.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 Qf=te(T0=>{"use strict";var{DATE_FORMAT_LINK:xB,FORMAT_LINK:wB}=Gy(),MB=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function AB({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,wB,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,xB,"for details on the date formatting syntax.",MB].join(" ")}T0.templateFormatStringDescription=AB;T0.hovertemplateAttrs=({editType:e="none",arrayOk:r}={},t={})=>Xf({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});T0.texttemplateAttrs=({editType:e="calc",arrayOk:r}={},t={})=>Xf({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});T0.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:r}={},t={})=>({valType:"string",dflt:"",editType:e});T0.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var Md=te((gse,m7)=>{"use strict";function Ru(e,r){return r?r.d2l(e):e}function v7(e,r){return r?r.l2d(e):e}function TB(e){return e.x0}function kB(e){return e.x1}function SB(e){return e.y0}function CB(e){return e.y1}function h7(e){return e.x0shift||0}function d7(e){return e.x1shift||0}function p7(e){return e.y0shift||0}function g7(e){return e.y1shift||0}function xd(e,r){return Ru(e.x1,r)+d7(e)-Ru(e.x0,r)-h7(e)}function wd(e,r,t){return Ru(e.y1,t)+g7(e)-Ru(e.y0,t)-p7(e)}function LB(e,r){return Math.abs(xd(e,r))}function qB(e,r,t){return Math.abs(wd(e,r,t))}function DB(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(xd(e,r),2)+Math.pow(wd(e,r,t),2))}function EB(e,r){return v7((Ru(e.x1,r)+d7(e)+Ru(e.x0,r)+h7(e))/2,r)}function PB(e,r,t){return v7((Ru(e.y1,t)+g7(e)+Ru(e.y0,t)+p7(e))/2,t)}function RB(e,r,t){return e.type!=="line"?void 0:wd(e,r,t)/xd(e,r)}m7.exports={x0:TB,x1:kB,y0:SB,y1:CB,slope:RB,dx:xd,dy:wd,width:LB,height:qB,length:DB,xcenter:EB,ycenter:PB}});var _7=te((mse,b7)=>{"use strict";var zB=_o().overrideAll,ec=bo(),y7=$a(),NB=Kl().dash,zu=sa().extendFlat,{shapeTexttemplateAttrs:FB,templatefallbackAttrs:IB}=Qf(),HB=Md();b7.exports=zB({newshape:{visible:zu({},ec.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:zu({},ec.legend,{}),legendgroup:zu({},ec.legendgroup,{}),legendgrouptitle:{text:zu({},ec.legendgrouptitle.text,{}),font:y7({})},legendrank:zu({},ec.legendrank,{}),legendwidth:zu({},ec.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:zu({},NB,{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({},ec.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:FB({newshape:!0},{keys:Object.keys(HB)}),texttemplatefallback:IB({editType:"arraydraw"}),font:y7({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var w7=te((yse,x7)=>{"use strict";var BB=Kl().dash,OB=sa().extendFlat;x7.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:OB({},BB,{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 Ad=te((bse,M7)=>{"use strict";M7.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 k0=te((_se,S7)=>{"use strict";var Vy=$a(),UB=f1(),Td=vl(),A7=_7(),T7=w7(),YB=Ad(),k7=sa().extendFlat,kd=Vy({editType:"calc"});kd.family.dflt='"Open Sans", verdana, arial, sans-serif';kd.size.dflt=12;kd.color.dflt=Td.defaultLine;S7.exports={font:kd,title:{text:{valType:"string",editType:"layoutstyle"},font:Vy({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:Vy({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:k7(YB({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:Td.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:Td.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:Td.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:A7.newshape,activeshape:A7.activeshape,newselection:T7.newselection,activeselection:T7.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:k7({},UB.transition,{editType:"none"})}});var C7=te(()=>{(function(){if(!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")){var e=document.createElement("style");e.id="ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var dt=te(Lt=>{"use strict";var S0=Pu(),L7=bd(),q7=By(),GB=Gs(),VB=u1().addStyleRule,D7=sa(),WB=bo(),ZB=k0(),XB=D7.extendFlat,Wy=D7.extendDeepAll;Lt.modules={};Lt.allCategories={};Lt.allTypes=[];Lt.subplotsRegistry={};Lt.componentsRegistry={};Lt.layoutArrayContainers=[];Lt.layoutArrayRegexes=[];Lt.traceLayoutAttributes={};Lt.localeRegistry={};Lt.apiMethodRegistry={};Lt.collectableSubplotTypes=null;Lt.register=function(r){if(Lt.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 eO=y0().timeFormat,U7=Ht(),Zy=Pu(),Fu=_0().mod,q0=Rn(),xo=q0.BADNUM,Di=q0.ONEDAY,c1=q0.ONEHOUR,Nu=q0.ONEMIN,L0=q0.ONESEC,v1=q0.EPOCHJD,Vs=dt(),N7=y0().utcFormat,rO=/^\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,tO=/^\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,F7=new Date().getFullYear()-70;function Ws(e){return e&&Vs.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}$n.dateTick0=function(e,r){var t=nO(e,!!r);if(r<2)return t;var n=$n.dateTime2ms(t,e);return n+=Di*(r-1),$n.ms2DateTime(n,0,e)};function nO(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"}$n.dfltRange=function(e){return Ws(e)?Vs.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};$n.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Cd,Ld;$n.dateTime2ms=function(e,r){if($n.isJSDate(e)){var t=e.getTimezoneOffset()*Nu,n=(e.getUTCMinutes()-e.getMinutes())*Nu+(e.getUTCSeconds()-e.getSeconds())*L0+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var a=3*Nu;t=t-a/2+Fu(n-t+a/2,a)}return e=Number(e)-t,e>=Cd&&e<=Ld?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?tO:rO);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 b=f.charAt(f.length-1)==="i";f=parseInt(f,10),p=y.newDate(u,y.toMonthIndex(u,f,b),v)}else p=y.newDate(u,Number(f),v)}catch(x){return xo}return p?(p.toJD()-v1)*Di+h*c1+d*Nu+m*L0:xo}u.length===2?u=(Number(u)+2e3-F7)%100+F7:u=Number(u),f-=1;var C=new Date(Date.UTC(2e3,f,v,h,d));return C.setUTCFullYear(u),C.getUTCMonth()!==f||C.getUTCDate()!==v?xo:C.getTime()+m*L0};Cd=$n.MIN_MS=$n.dateTime2ms("-9999");Ld=$n.MAX_MS=$n.dateTime2ms("9999-12-31 23:59:59.9999");$n.isDateTime=function(e,r){return $n.dateTime2ms(e,r)!==xo};function C0(e,r){return String(e+Math.pow(10,r)).substr(1)}var Sd=90*Di,I7=3*c1,H7=5*Nu;$n.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Cd&&e<=Ld))return xo;r||(r=0);var n=Math.floor(Fu(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)+v1,h=Math.floor(Fu(e,Di));try{i=Vs.getComponentMethod("calendars","getCal")(t).fromJD(v).formatDate("yyyy-mm-dd")}catch(d){i=N7("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=Cd+Di&&e<=Ld-Di))return xo;var r=Math.floor(Fu(e+.05,1)*10),t=new Date(Math.round(e-r/10)),n=eO("%Y-%m-%d")(t),a=t.getHours(),i=t.getMinutes(),o=t.getSeconds(),l=t.getUTCMilliseconds()*10+r;return Y7(n,a,i,o,l)};function Y7(e,r,t,n,a){if((r||t||n||a)&&(e+=" "+C0(r,2)+":"+C0(t,2),(n||a)&&(e+=":"+C0(n,2),a))){for(var i=4;a%10===0;)i-=1,a/=10;e+="."+C0(a,i)}return e}$n.cleanDate=function(e,r,t){if(e===xo)return r;if($n.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Ws(t))return Zy.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=$n.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!$n.isDateTime(e,t))return Zy.error("unrecognized date",e),r;return e};var aO=/%\d?f/g,iO=/%h/g,oO={1:"1",2:"1",3:"2",4:"2"};function B7(e,r,t,n){e=e.replace(aO,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(iO,function(){return oO[t("%q")(a)]}),Ws(n))try{e=Vs.getComponentMethod("calendars","worldCalFmt")(e,r,n)}catch(i){return"Invalid"}return t(e)(a)}var lO=[59,59.9,59.99,59.999,59.9999];function sO(e,r){var t=Fu(e+.05,Di),n=C0(Math.floor(t/c1),2)+":"+C0(Fu(Math.floor(t/Nu),60),2);if(r!=="M"){U7(r)||(r=0);var a=Math.min(Fu(e/L0,60),lO[r]),i=(100+a).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+i}return n}$n.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+` +`)};function N(ne){return ne.map(j).join(c)}function j(ne){return w.test(ne)?'"'+ne.replace(/\"/g,'""')+'"':ne}return q},e.csv=e.dsv(",","text/csv"),e.tsv=e.dsv(" ","text/tab-separated-values");var oo,Vo,Wo,vu,Rl=this[ie(this,"requestAnimationFrame")]||function(c){setTimeout(c,17)};e.timer=function(){zl.apply(this,arguments)};function zl(c,g,w){var S=arguments.length;S<2&&(g=0),S<3&&(w=Date.now());var q=w+g,D={c,t:q,n:null};return Vo?Vo.n=D:oo=D,Vo=D,Wo||(vu=clearTimeout(vu),Wo=1,Rl(_i)),D}function _i(){var c=lo(),g=Zo()-c;g>24?(isFinite(g)&&(clearTimeout(vu),vu=setTimeout(_i,g)),Wo=0):(Wo=1,Rl(_i))}e.timer.flush=function(){lo(),Zo()};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 Zo(){for(var c,g=oo,w=1/0;g;)g.c?(g.t=0;--N)be.push(q[ne[ge[N]][2]]);for(N=+Re;N1&&Kt(c[w[S-2]],c[w[S-1]],c[q])<=0;)--S;w[S++]=q}return w.slice(0,S)}function Xc(c,g){return c[0]-g[0]||c[1]-g[1]}e.geom.polygon=function(c){return Le(c,_s),c};var _s=e.geom.polygon.prototype=[];_s.area=function(){for(var c=-1,g=this.length,w,S=this[g-1],q=0;++cAe)N=N.L;else if(G=g-Bv(N,w),G>Ae){if(!N.R){S=N;break}N=N.R}else{D>-Ae?(S=N.P,q=N):G>-Ae?(S=N,q=N.N):S=q=N;break}var j=Ms(c);if(Bi.insert(S,j),!(!S&&!q)){if(S===q){co(S),q=Ms(S.site),Bi.insert(j,q),j.edge=q.edge=Hl(S.site,j.site),fo(S),fo(q);return}if(!q){j.edge=Hl(S.site,j.site);return}co(S),co(q);var ne=S.site,ae=ne.x,ge=ne.y,me=c.x-ae,Re=c.y-ge,Ve=q.site,be=Ve.x-ae,Se=Ve.y-ge,De=2*(me*Se-Re*be),Ge=me*me+Re*Re,We=be*be+Se*Se,Pe={x:(Se*Ge-Re*We)/De+ae,y:(me*We-be*Ge)/De+ge};Yi(q.edge,ne,Ve,Pe),j.edge=Hl(ne,c,null,Pe),q.edge=Hl(c,Ve,null,Pe),fo(S),fo(q)}}function Ts(c,g){var w=c.site,S=w.x,q=w.y,D=q-g;if(!D)return S;var G=c.P;if(!G)return-1/0;w=G.site;var N=w.x,j=w.y,ne=j-g;if(!ne)return N;var ae=N-S,ge=1/D-1/ne,me=ae/ne;return ge?(-me+Math.sqrt(me*me-2*ge*(ae*ae/(-2*ne)-j+ne/2+q-D/2)))/ge+S:(S+N)/2}function Bv(c,g){var w=c.N;if(w)return Ts(w,g);var S=c.site;return S.y===g?S.x:1/0}function jo(c){this.site=c,this.edges=[]}jo.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(Il),c.length};function Tf(c){for(var g=c[0][0],w=c[1][0],S=c[0][1],q=c[1][1],D,G,N,j,ne=uo,ae=ne.length,ge,me,Re,Ve,be,Se;ae--;)if(ge=ne[ae],!(!ge||!ge.prepare()))for(Re=ge.edges,Ve=Re.length,me=0;meAe||b(j-G)>Ae)&&(Re.splice(me,0,new Jo(Uv(ge.site,Se,b(N-g)Ae?{x:g,y:b(D-g)Ae?{x:b(G-q)Ae?{x:w,y:b(D-w)Ae?{x:b(G-S)=-Ke)){var me=j*j+ne*ne,Re=ae*ae+Se*Se,Ve=(Se*me-ne*Re)/ge,be=(j*Re-ae*me)/ge,Se=be+N,De=Af.pop()||new $c;De.arc=c,De.site=q,De.x=Ve+G,De.y=Se+Math.sqrt(Ve*Ve+be*be),De.cy=Se,c.circle=De;for(var Ge=null,We=Fl._;We;)if(De.y0)){if(be/=Re,Re<0){if(be0){if(be>me)return;be>ge&&(ge=be)}if(be=w-N,!(!Re&&be<0)){if(be/=Re,Re<0){if(be>me)return;be>ge&&(ge=be)}else if(Re>0){if(be0)){if(be/=Ve,Ve<0){if(be0){if(be>me)return;be>ge&&(ge=be)}if(be=S-j,!(!Ve&&be<0)){if(be/=Ve,Ve<0){if(be>me)return;be>ge&&(ge=be)}else if(Ve>0){if(be0&&(q.a={x:N+ge*Re,y:j+ge*Ve}),me<1&&(q.b={x:N+me*Re,y:j+me*Ve}),q}}}}}}function xi(c){for(var g=so,w=kf(c[0][0],c[0][1],c[1][0],c[1][1]),S=g.length,q;S--;)q=g[S],(!Ov(q,c)||!w(q)||b(q.a.x-q.b.x)=D)return;if(ae>me){if(!S)S={x:Ve,y:G};else if(S.y>=N)return;w={x:Ve,y:N}}else{if(!S)S={x:Ve,y:N};else if(S.y1)if(ae>me){if(!S)S={x:(G-De)/Se,y:G};else if(S.y>=N)return;w={x:(N-De)/Se,y:N}}else{if(!S)S={x:(N-De)/Se,y:N};else if(S.y=D)return;w={x:D,y:Se*D+De}}else{if(!S)S={x:D,y:Se*D+De};else if(S.x=ae&&De.x<=me&&De.y>=ge&&De.y<=Re?[[ae,Re],[me,Re],[me,ge],[ae,ge]]:[];Ge.point=j[be]}),ne}function N(j){return j.map(function(ne,ae){return{x:Math.round(S(ne,ae)/Ae)*Ae,y:Math.round(q(ne,ae)/Ae)*Ae,i:ae}})}return G.links=function(j){return Ss(N(j)).edges.filter(function(ne){return ne.l&&ne.r}).map(function(ne){return{source:j[ne.l.i],target:j[ne.r.i]}})},G.triangles=function(j){var ne=[];return Ss(N(j)).cells.forEach(function(ae,ge){for(var me=ae.site,Re=ae.edges.sort(Il),Ve=-1,be=Re.length,Se,De,Ge=Re[be-1].edge,We=Ge.l===me?Ge.r:Ge.l;++VeWe&&(We=ae.x),ae.y>Pe&&(Pe=ae.y),Re.push(ae.x),Ve.push(ae.y);else for(be=0;beWe&&(We=_r),Or>Pe&&(Pe=Or),Re.push(_r),Ve.push(Or)}var Wr=We-De,Vr=Pe-Ge;Wr>Vr?Pe=Ge+Wr:We=De+Vr;function $r(et,ht,Jt,jn,sn,Rr,_t,wt){if(!(isNaN(Jt)||isNaN(jn)))if(et.leaf){var $t=et.x,In=et.y;if($t!=null)if(b($t-Jt)+b(In-jn)<.01)Kr(et,ht,Jt,jn,sn,Rr,_t,wt);else{var la=et.point;et.x=et.y=et.point=null,Kr(et,la,$t,In,sn,Rr,_t,wt),Kr(et,ht,Jt,jn,sn,Rr,_t,wt)}else et.x=Jt,et.y=jn,et.point=ht}else Kr(et,ht,Jt,jn,sn,Rr,_t,wt)}function Kr(et,ht,Jt,jn,sn,Rr,_t,wt){var $t=(sn+_t)*.5,In=(Rr+wt)*.5,la=Jt>=$t,qa=jn>=In,ja=qa<<1|la;et.leaf=!1,et=et.nodes[ja]||(et.nodes[ja]=gu()),la?sn=$t:_t=$t,qa?Rr=In:wt=In,$r(et,ht,Jt,jn,sn,Rr,_t,wt)}var bt=gu();if(bt.add=function(et){$r(bt,et,+ge(et,++be),+me(et,be),De,Ge,We,Pe)},bt.visit=function(et){li(et,bt,De,Ge,We,Pe)},bt.find=function(et){return mu(bt,et[0],et[1],De,Ge,We,Pe)},be=-1,g==null){for(;++beD||me>G||Re=_r,Vr=w>=Or,$r=Vr<<1|Wr,Kr=$r+4;$rw&&(D=g.slice(w,D),N[G]?N[G]+=D:N[++G]=D),(S=S[0])===(q=q[0])?N[G]?N[G]+=q:N[++G]=q:(N[++G]=null,j.push({i:G,x:ea(S,q)})),w=Ls.lastIndex;return w=0&&!(S=e.interpolators[w](c,g)););return S}e.interpolators=[function(c,g){var w=typeof g;return(w==="string"?Pn.has(g.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(g)?yu:Ma:g instanceof vn?yu:Array.isArray(g)?Ul:w==="object"&&isNaN(g)?za:ea)(c,g)}],e.interpolateArray=Ul;function Ul(c,g){var w=[],S=[],q=c.length,D=g.length,G=Math.min(c.length,g.length),N;for(N=0;N=0?c.slice(0,g):c,S=g>=0?c.slice(g+1):"in";return w=Kc.get(w)||Sf,S=Yv.get(S)||V,Gv(S(w.apply(null,r.call(arguments,1))))};function Gv(c){return function(g){return g<=0?0:g>=1?1:c(g)}}function Cf(c){return function(g){return 1-c(1-g)}}function Lf(c){return function(g){return .5*(g<.5?c(2*g):2-c(2-2*g))}}function qf(c){return c*c}function Df(c){return c*c*c}function Qc(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 e0(c){return function(g){return Math.pow(g,c)}}function qs(c){return 1-Math.cos(c*Fr)}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/Lr*Math.asin(1/c):(c=1,w=g/4),function(S){return 1+c*Math.pow(2,-10*S)*Math.sin((S-w)*Lr/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=r0;function r0(c,g){c=e.hcl(c),g=e.hcl(g);var w=c.h,S=c.c,q=c.l,D=g.h-w,G=g.c-S,N=g.l-q;return isNaN(G)&&(G=0,S=isNaN(S)?g.c:S),isNaN(D)?(D=0,w=isNaN(w)?g.h:w):D>180?D-=360:D<-180&&(D+=360),function(j){return ia(w+D*j,S+G*j,q+N*j)+""}}e.interpolateHsl=Ef;function Ef(c,g){c=e.hsl(c),g=e.hsl(g);var w=c.h,S=c.s,q=c.l,D=g.h-w,G=g.s-S,N=g.l-q;return isNaN(G)&&(G=0,S=isNaN(S)?g.s:S),isNaN(D)?(D=0,w=isNaN(w)?g.h:w):D>180?D-=360:D<-180&&(D+=360),function(j){return Ga(w+D*j,S+G*j,q+N*j)+""}}e.interpolateLab=Vv;function Vv(c,g){c=e.lab(c),g=e.lab(g);var w=c.l,S=c.a,q=c.b,D=g.l-w,G=g.a-S,N=g.b-q;return function(j){return ms(w+D*j,S+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 S=g.transform.baseVal.consolidate()}return new xu(S?S.matrix:Pf)})(c)};function xu(c){var g=[c.a,c.b],w=[c.c,c.d],S=Ps(g),q=Yl(g,w),D=Ps(Rs(w,g,-q))||0;g[0]*w[1]180?g+=360:g-c>180&&(c+=360),S.push({i:w.push(po(w)+"rotate(",null,")")-2,x:ea(c,g)})):g&&w.push(po(w)+"rotate("+g+")")}function n0(c,g,w,S){c!==g?S.push({i:w.push(po(w)+"skewX(",null,")")-2,x:ea(c,g)}):g&&w.push(po(w)+"skewX("+g+")")}function zf(c,g,w,S){if(c[0]!==g[0]||c[1]!==g[1]){var q=w.push(po(w)+"scale(",null,",",null,")");S.push({i:q-4,x:ea(c[0],g[0])},{i:q-2,x:ea(c[1],g[1])})}else(g[0]!==1||g[1]!==1)&&w.push(po(w)+"scale("+g+")")}function wu(c,g){var w=[],S=[];return c=e.transform(c),g=e.transform(g),t0(c.translate,g.translate,w,S),Rf(c.rotate,g.rotate,w,S),n0(c.skew,g.skew,w,S),zf(c.scale,g.scale,w,S),c=g=null,function(q){for(var D=-1,G=S.length,N;++D0?D=Pe:(w.c=null,w.t=NaN,w=null,g.end({type:"end",alpha:D=0})):Pe>0&&(g.start({type:"start",alpha:D=Pe}),w=zl(c.tick)),c):D},c.start=function(){var Pe,_r=Re.length,Or=Ve.length,Wr=S[0],Vr=S[1],$r,Kr;for(Pe=0;Pe<_r;++Pe)(Kr=Re[Pe]).index=Pe,Kr.weight=0;for(Pe=0;Pe=0;)D.push(ae=ne[j]),ae.parent=N,ae.depth=N.depth+1;w&&(N.value=0),N.children=ne}else w&&(N.value=+w.call(S,N,N.depth)||0),delete N.children;return Na(q,function(ge){var me,Re;c&&(me=ge.children)&&me.sort(c),w&&(Re=ge.parent)&&(Re.value+=ge.value)}),G}return S.sort=function(q){return arguments.length?(c=q,S):c},S.children=function(q){return arguments.length?(g=q,S):g},S.value=function(q){return arguments.length?(w=q,S):w},S.revalue=function(q){return w&&(Ai(q,function(D){D.children&&(D.value=0)}),Na(q,function(D){var G;D.children||(D.value=+w.call(S,D,D.depth)||0),(G=D.parent)&&(G.value+=D.value)})),q},S};function Vi(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)&&(S=q.length))for(var S,q;--S>=0;)w.push(q[S])}function Na(c,g){for(var w=[c],S=[];(c=w.pop())!=null;)if(S.push(c),(G=c.children)&&(D=G.length))for(var q=-1,D,G;++qq&&(q=N),S.push(N)}for(G=0;GS&&(w=g,S=q);return w}function Is(c){return c.reduce(tl,0)}function tl(c,g){return c+g[1]}e.layout.histogram=function(){var c=!0,g=Number,w=Wl,S=Hs;function q(D,me){for(var N=[],j=D.map(g,this),ne=w.call(this,j,me),ae=S.call(this,ne,j,me),ge,me=-1,Re=j.length,Ve=ae.length-1,be=c?1:1/Re,Se;++me0)for(me=-1;++me=ne[0]&&Se<=ne[1]&&(ge=N[e.bisect(ae,Se,1,Ve)-1],ge.y+=be,ge.push(D[me]));return N}return q.value=function(D){return arguments.length?(g=D,q):g},q.range=function(D){return arguments.length?(w=At(D),q):w},q.bins=function(D){return arguments.length?(S=typeof D=="number"?function(G){return nl(G,D)}:At(D),q):S},q.frequency=function(D){return arguments.length?(c=!!D,q):c},q};function Hs(c,g){return nl(c,Math.ceil(Math.log(g.length)/Math.LN2+1))}function nl(c,g){for(var w=-1,S=+c[0],q=(c[1]-S)/g,D=[];++w<=g;)D[w]=q*w+S;return D}function Wl(c){return[e.min(c),e.max(c)]}e.layout.pack=function(){var c=e.layout.hierarchy().sort(Tu),g=0,w=[1,1],S;function q(D,G){var N=c.call(this,D,G),j=N[0],ne=w[0],ae=w[1],ge=S==null?Math.sqrt:typeof S=="function"?S:function(){return S};if(j.x=j.y=0,Na(j,function(Re){Re.r=+ge(Re.value)}),Na(j,c0),g){var me=g*(S?1:Math.max(2*j.r/ne,2*j.r/ae))/2;Na(j,function(Re){Re.r+=me}),Na(j,c0),Na(j,function(Re){Re.r-=me})}return Su(j,ne/2,ae/2,S?1:1/Math.max(2*j.r/ne,2*j.r/ae)),N}return q.size=function(D){return arguments.length?(w=D,q):w},q.radius=function(D){return arguments.length?(S=D==null||typeof D=="function"?D:+D,q):S},q.padding=function(D){return arguments.length?(g=+D,q):g},Vi(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 f0(c,g){c._pack_next=g,g._pack_prev=c}function ku(c,g){var w=g.x-c.x,S=g.y-c.y,q=c.r+g.r;return .999*q*q>w*w+S*S}function c0(c){if(!(g=c.children)||!(me=g.length))return;var g,w=1/0,S=-1/0,q=1/0,D=-1/0,G,N,j,ne,ae,ge,me;function Re(Pe){w=Math.min(Pe.x-Pe.r,w),S=Math.max(Pe.x+Pe.r,S),q=Math.min(Pe.y-Pe.r,q),D=Math.max(Pe.y+Pe.r,D)}if(g.forEach(v0),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],Xn(G,N,j),Re(j),Bs(G,j),G._pack_prev=j,Bs(j,N),N=G._pack_next,ne=3;neSe.x&&(Se=_r),_r.depth>De.depth&&(De=_r)});var Ge=g(be,Se)/2-be.x,We=w[0]/(Se.x+g(Se,be)/2+Ge),Pe=w[1]/(De.depth||1);Ai(Re,function(_r){_r.x=(_r.x+Ge)*We,_r.y=_r.depth*Pe})}return me}function D(ae){for(var ge={A:null,children:[ae]},me=[ge],Re;(Re=me.pop())!=null;)for(var Ve=Re.children,be,Se=0,De=Ve.length;Se0&&(Os(H(be,ae,me),ae,_r),De+=_r,Ge+=_r),We+=be.m,De+=Re.m,Pe+=Se.m,Ge+=Ve.m;be&&!Cu(Ve)&&(Ve.t=be,Ve.m+=We-Ge),Re&&!Zl(Se)&&(Se.t=Re,Se.m+=De-Pe,me=ae)}return me}function ne(ae){ae.x*=w[0],ae.y=ae.depth*w[1]}return q.separation=function(ae){return arguments.length?(g=ae,q):g},q.size=function(ae){return arguments.length?(S=(w=ae)==null?ne:null,q):S?null:w},q.nodeSize=function(ae){return arguments.length?(S=(w=ae)==null?null:ne,q):S?w:null},Vi(q,c)};function si(c,g){return c.parent==g.parent?1:2}function Zl(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 S=w/(g.i-c.i);g.c-=S,g.s+=w,c.c+=S,g.z+=w,g.m+=w}function Uf(c){for(var g=0,w=0,S=c.children,q=S.length,D;--q>=0;)D=S[q],D.z+=g,D.m+=g,g+=D.s+(w+=D.c)}function H(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=si,w=[1,1],S=!1;function q(D,G){var N=c.call(this,D,G),j=N[0],ne,ae=0;Na(j,function(be){var Se=be.children;Se&&Se.length?(be.x=ce(Se),be.y=J(Se)):(be.x=ne?ae+=g(be,ne):0,be.y=0,ne=be)});var ge=oe(j),me=we(j),Re=ge.x-g(ge,me)/2,Ve=me.x+g(me,ge)/2;return Na(j,S?function(be){be.x=(be.x-j.x)*w[0],be.y=(j.y-be.y)*w[1]}:function(be){be.x=(be.x-Re)/(Ve-Re)*w[0],be.y=(1-(j.y?be.y/j.y:1))*w[1]}),N}return q.separation=function(D){return arguments.length?(g=D,q):g},q.size=function(D){return arguments.length?(S=(w=D)==null,q):S?null:w},q.nodeSize=function(D){return arguments.length?(S=(w=D)!=null,q):S?w:null},Vi(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],S=null,q=He,D=!1,G,N="squarify",j=.5*(1+Math.sqrt(5));function ne(be,Se){for(var De=-1,Ge=be.length,We,Pe;++De0;)Ge.push(Pe=We[Vr-1]),Ge.area+=Pe.area,N!=="squarify"||(Or=me(Ge,Wr))<=_r?(We.pop(),_r=Or):(Ge.area-=Ge.pop().area,Re(Ge,Wr,De,!1),Wr=Math.min(De.dx,De.dy),Ge.length=Ge.area=0,_r=1/0);Ge.length&&(Re(Ge,Wr,De,!0),Ge.length=Ge.area=0),Se.forEach(ae)}}function ge(be){var Se=be.children;if(Se&&Se.length){var De=q(be),Ge=Se.slice(),We,Pe=[];for(ne(Ge,De.dx*De.dy/be.value),Pe.area=0;We=Ge.pop();)Pe.push(We),Pe.area+=We.area,We.z!=null&&(Re(Pe,We.z?De.dx:De.dy,De,!Ge.length),Pe.length=Pe.area=0);Se.forEach(ge)}}function me(be,Se){for(var De=be.area,Ge,We=0,Pe=1/0,_r=-1,Or=be.length;++_rWe&&(We=Ge));return De*=De,Se*=Se,De?Math.max(Se*We*j/De,De/(Se*Pe*j)):1/0}function Re(be,Se,De,Ge){var We=-1,Pe=be.length,_r=De.x,Or=De.y,Wr=Se?g(be.area/Se):0,Vr;if(Se==De.dx){for((Ge||Wr>De.dy)&&(Wr=De.dy);++WeDe.dx)&&(Wr=De.dx);++We1);return c+g*S*Math.sqrt(-2*Math.log(D)/D)}},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?Mr:br,ne=S?Ff:Nf;return q=j(c,g,ne,w),D=j(g,c,ne,el),N}function N(j){return q(j)}return N.invert=function(j){return D(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?(S=j,G()):S},N.interpolate=function(j){return arguments.length?(w=j,G()):w},N.ticks=function(j){return nt(c,j)},N.tickFormat=function(j,ne){return d3_scale_linearTickFormat(c,j,ne)},N.nice=function(j){return Jr(c,j),G()},N.copy=function(){return qr(c,g,w,S)},G()}function rt(c,g){return e.rebind(c,g,"range","rangeRound","interpolate","clamp")}function Jr(c,g){return $e(c,hr(tt(c,g)[2])),$e(c,hr(tt(c,g)[2])),c}function tt(c,g){g==null&&(g=10);var w=ar(c),S=w[1]-w[0],q=Math.pow(10,Math.floor(Math.log(S/g)/Math.LN10)),D=g/S*q;return D<=.15?q*=10:D<=.35?q*=5:D<=.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 Er={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 Er?Math.abs(w-Ir(Math.max(b(g[0]),b(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,S){function q(N){return(w?Math.log(N<0?0:N):-Math.log(N>0?0:-N))/Math.log(g)}function D(N){return w?Math.pow(g,N):-Math.pow(g,-N)}function G(N){return c(q(N))}return G.invert=function(N){return D(c.invert(N))},G.domain=function(N){return arguments.length?(w=N[0]>=0,c.domain((S=N.map(Number)).map(q)),G):S},G.base=function(N){return arguments.length?(g=+N,c.domain(S.map(q)),G):g},G.nice=function(){var N=$e(S.map(q),w?Math:Gt);return c.domain(N),S=N.map(D),G},G.ticks=function(){var N=ar(S),j=[],ne=N[0],ae=N[1],ge=Math.floor(q(ne)),me=Math.ceil(q(ae)),Re=g%1?2:g;if(isFinite(me-ge)){if(w){for(;ge0;Ve--)j.push(D(ge)*Ve);for(ge=0;j[ge]ae;me--);j=j.slice(ge,me)}return j},G.copy=function(){return pt(c.copy(),g,w,S)},rt(G,c)}var Gt={floor:function(c){return-Math.ceil(-c)},ceil:function(c){return-Math.floor(-c)}};e.scale.pow=function(){return tn(e.scale.linear(),1,[0,1])};function tn(c,g,w){var S=Wt(g),q=Wt(1/g);function D(G){return c(S(G))}return D.invert=function(G){return q(c.invert(G))},D.domain=function(G){return arguments.length?(c.domain((w=G.map(Number)).map(S)),D):w},D.ticks=function(G){return nt(w,G)},D.tickFormat=function(G,N){return d3_scale_linearTickFormat(w,G,N)},D.nice=function(G){return D.domain(Jr(w,G))},D.exponent=function(G){return arguments.length?(S=Wt(g=G),q=Wt(1/g),c.domain(w.map(S)),D):g},D.copy=function(){return tn(c.copy(),g,w)},rt(D,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 mn([],{t:"range",a:[[]]})};function mn(c,g){var w,S,q;function D(N){return S[((w.get(N)||(g.t==="range"?w.set(N,c.push(N)):NaN))-1)%S.length]}function G(N,j){return e.range(c.length).map(function(ne){return N+j*ne})}return D.domain=function(N){if(!arguments.length)return c;c=[],w=new _;for(var j=-1,ne=N.length,ae;++j0?w[D-1]:c[0],Dme?0:1;if(ae=Yr)return j(ae,Ve)+(ne?j(ne,1-Ve):"")+"Z";var be,Se,De,Ge,We=0,Pe=0,_r,Or,Wr,Vr,$r,Kr,bt,et,ht=[];if((Ge=(+G.apply(this,arguments)||0)/2)&&(De=S===Wi?Math.sqrt(ne*ne+ae*ae):+S.apply(this,arguments),Ve||(Pe*=-1),ae&&(Pe=pn(De/ae*Math.sin(Ge))),ne&&(We=pn(De/ne*Math.sin(Ge)))),ae){_r=ae*Math.cos(ge+Pe),Or=ae*Math.sin(ge+Pe),Wr=ae*Math.cos(me-Pe),Vr=ae*Math.sin(me-Pe);var Jt=Math.abs(me-ge-2*Pe)<=rr?0:1;if(Pe&&Lu(_r,Or,Wr,Vr)===Ve^Jt){var jn=(ge+me)/2;_r=ae*Math.cos(jn),Or=ae*Math.sin(jn),Wr=Vr=null}}else _r=Or=0;if(ne){$r=ne*Math.cos(me-We),Kr=ne*Math.sin(me-We),bt=ne*Math.cos(ge+We),et=ne*Math.sin(ge+We);var sn=Math.abs(ge-me+2*We)<=rr?0:1;if(We&&Lu($r,Kr,bt,et)===1-Ve^sn){var Rr=(ge+me)/2;$r=ne*Math.cos(Rr),Kr=ne*Math.sin(Rr),bt=et=null}}else $r=Kr=0;if(Re>Ae&&(be=Math.min(Math.abs(ae-ne)/2,+w.apply(this,arguments)))>.001){Se=ne0?0:1}function h0(c,g,w,S,q){var D=c[0]-g[0],G=c[1]-g[1],N=(q?S:-S)/Math.sqrt(D*D+G*G),j=N*G,ne=-N*D,ae=c[0]+j,ge=c[1]+ne,me=g[0]+j,Re=g[1]+ne,Ve=(ae+me)/2,be=(ge+Re)/2,Se=me-ae,De=Re-ge,Ge=Se*Se+De*De,We=w-S,Pe=ae*Re-me*ge,_r=(De<0?-1:1)*Math.sqrt(Math.max(0,We*We*Ge-Pe*Pe)),Or=(Pe*De-Se*_r)/Ge,Wr=(-Pe*Se-De*_r)/Ge,Vr=(Pe*De+Se*_r)/Ge,$r=(-Pe*Se+De*_r)/Ge,Kr=Or-Ve,bt=Wr-be,et=Vr-Ve,ht=$r-be;return Kr*Kr+bt*bt>et*et+ht*ht&&(Or=Vr,Wr=$r),[[Or-j,Wr-ne],[Or*w/We,Wr*w/We]]}function d0(){return!0}function Xh(c){var g=Nl,w=bs,S=d0,q=Zi,D=q.key,G=.7;function N(j){var ne=[],ae=[],ge=-1,me=j.length,Re,Ve=At(g),be=At(w);function Se(){ne.push("M",q(c(ae),G))}for(;++ge1?c.join("L"):c+"Z"}function jh(c){return c.join("L")+"Z"}function Jh(c){for(var g=0,w=c.length,S=c[0],q=[S[0],",",S[1]];++g1&&q.push("H",S[0]),q.join("")}function p0(c){for(var g=0,w=c.length,S=c[0],q=[S[0],",",S[1]];++g1){N=g[1],D=c[j],j++,S+="C"+(q[0]+G[0])+","+(q[1]+G[1])+","+(D[0]-N[0])+","+(D[1]-N[1])+","+D[0]+","+D[1];for(var ne=2;ne9&&(D=w*3/Math.sqrt(D),G[N]=D*S,G[N+1]=D*q));for(N=-1;++N<=j;)D=(c[Math.min(j,N+1)][0]-c[Math.max(0,N-1)][0])/(6*(1+G[N]*G[N])),g.push([D||0,G[N]*D||0]);return g}function ue(c){return c.length<3?Zi(c):c[0]+g0(c,X(c))}e.svg.line.radial=function(){var c=Xh(he);return c.radius=c.x,delete c.x,c.angle=c.y,delete c.y,c};function he(c){for(var g,w=-1,S=c.length,q,D;++wrr)+",1 "+ge}function ne(ae,ge,me,Re){return"Q 0,0 "+Re}return D.radius=function(ae){return arguments.length?(w=At(ae),D):w},D.source=function(ae){return arguments.length?(c=At(ae),D):c},D.target=function(ae){return arguments.length?(g=At(ae),D):g},D.startAngle=function(ae){return arguments.length?(S=At(ae),D):S},D.endAngle=function(ae){return arguments.length?(q=At(ae),D):q},D};function qe(c){return c.radius}e.svg.diagonal=function(){var c=de,g=xe,w=Fe;function S(q,D){var G=c.call(this,q,D),N=g.call(this,q,D),j=(G.y+N.y)/2,ne=[G,{x:G.x,y:j},{x:N.x,y:j},N];return ne=ne.map(w),"M"+ne[0]+"C"+ne[1]+" "+ne[2]+" "+ne[3]}return S.source=function(q){return arguments.length?(c=At(q),S):c},S.target=function(q){return arguments.length?(g=At(q),S):g},S.projection=function(q){return arguments.length?(w=q,S):w},S};function Fe(c){return[c.x,c.y]}e.svg.diagonal.radial=function(){var c=e.svg.diagonal(),g=Fe,w=c.projection;return c.projection=function(S){return arguments.length?w(er(g=S)):g},c};function er(c){return function(){var g=c.apply(this,arguments),w=g[0],S=g[1]-Fr;return[w*Math.cos(S),w*Math.sin(S)]}}e.svg.symbol=function(){var c=Ar,g=cr;function w(S,q){return(at.get(c.call(this,S,q))||Xr)(g.call(this,S,q))}return w.type=function(S){return arguments.length?(c=At(S),w):c},w.size=function(S){return arguments.length?(g=At(S),w):g},w};function cr(){return 64}function Ar(){return"circle"}function Xr(c){var g=Math.sqrt(c/rr);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:Xr,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=ga||++Fn,w=Ca(c),S=[],q,D,G=fi||{time:Date.now(),ease:Qc,delay:0,duration:250},N=-1,j=this.length;++N0;)ge[--Ge].call(c,De);if(Se>=1)return G.event&&G.event.end.call(c,c.__data__,g),--D.count?delete D[S]:delete c[w],1}G||(N=q.time,j=zl(me,0,N),G=D[S]={tween:new _,time:N,timer:j,delay:q.delay,duration:q.duration,ease:q.ease,index:g},q=null,++D.count)}e.svg.axis=function(){var c=e.scale.linear(),g=Xi,w=6,S=6,q=3,D=[10],G=null,N;function j(ne){ne.each(function(){var ae=e.select(this),ge=this.__chart__||c,me=this.__chart__=c.copy(),Re=G==null?me.ticks?me.ticks.apply(me,D):me.domain():G,Ve=N==null?me.tickFormat?me.tickFormat.apply(me,D):V:N,be=ae.selectAll(".tick").data(Re,me),Se=be.enter().insert("g",".domain").attr("class","tick").style("opacity",Ae),De=e.transition(be.exit()).style("opacity",Ae).remove(),Ge=e.transition(be.order()).style("opacity",1),We=Math.max(w,0)+q,Pe,_r=sr(me),Or=ae.selectAll(".domain").data([0]),Wr=(Or.enter().append("path").attr("class","domain"),e.transition(Or));Se.append("line"),Se.append("text");var Vr=Se.select("line"),$r=Ge.select("line"),Kr=be.select("text").text(Ve),bt=Se.select("text"),et=Ge.select("text"),ht=g==="top"||g==="left"?-1:1,Jt,jn,sn,Rr;if(g==="bottom"||g==="top"?(Pe=sl,Jt="x",sn="y",jn="x2",Rr="y2",Kr.attr("dy",ht<0?"0em":".71em").style("text-anchor","middle"),Wr.attr("d","M"+_r[0]+","+ht*S+"V0H"+_r[1]+"V"+ht*S)):(Pe=ul,Jt="y",sn="x",jn="y2",Rr="x2",Kr.attr("dy",".32em").style("text-anchor",ht<0?"end":"start"),Wr.attr("d","M"+ht*S+","+_r[0]+"H0V"+_r[1]+"H"+ht*S)),Vr.attr(Rr,ht*w),bt.attr(sn,ht*We),$r.attr(jn,0).attr(Rr,ht*w),et.attr(Jt,0).attr(sn,ht*We),me.rangeBand){var _t=me,wt=_t.rangeBand()/2;ge=me=function($t){return _t($t)+wt}}else ge.rangeBand?ge=me:De.call(Pe,me,ge);Se.call(Pe,ge,me),Ge.call(Pe,me,me)})}return j.scale=function(ne){return arguments.length?(c=ne,j):c},j.orient=function(ne){return arguments.length?(g=ne in ll?ne+"":Xi,j):g},j.ticks=function(){return arguments.length?(D=t(arguments),j):D},j.tickValues=function(ne){return arguments.length?(G=ne,j):G},j.tickFormat=function(ne){return arguments.length?(N=ne,j):N},j.tickSize=function(ne){var ae=arguments.length;return ae?(w=+ne,S=+arguments[ae-1],j):w},j.innerTickSize=function(ne){return arguments.length?(w=+ne,j):w},j.outerTickSize=function(ne){return arguments.length?(S=+ne,j):S},j.tickPadding=function(ne){return arguments.length?(q=+ne,j):q},j.tickSubdivide=function(){return arguments.length&&j},j};var Xi="bottom",ll={top:1,right:1,bottom:1,left:1};function sl(c,g,w){c.attr("transform",function(S){var q=g(S);return"translate("+(isFinite(q)?q:w(S))+",0)"})}function ul(c,g,w){c.attr("transform",function(S){var q=g(S);return"translate(0,"+(isFinite(q)?q:w(S))+")"})}e.svg.brush=function(){var c=ze(ae,"brushstart","brush","brushend"),g=null,w=null,S=[0,0],q=[0,0],D,G,N=!0,j=!0,ne=go[0];function ae(be){be.each(function(){var Se=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Ve).on("touchstart.brush",Ve),De=Se.selectAll(".background").data([0]);De.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Se.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Ge=Se.selectAll(".resize").data(ne,V);Ge.exit().remove(),Ge.enter().append("g").attr("class",function(Or){return"resize "+Or}).style("cursor",function(Or){return jl[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"),Ge.style("display",ae.empty()?"none":null);var We=e.transition(Se),Pe=e.transition(De),_r;g&&(_r=sr(g),Pe.attr("x",_r[0]).attr("width",_r[1]-_r[0]),me(We)),w&&(_r=sr(w),Pe.attr("y",_r[0]).attr("height",_r[1]-_r[0]),Re(We)),ge(We)})}ae.event=function(be){be.each(function(){var Se=c.of(this,arguments),De={x:S,y:q,i:D,j:G},Ge=this.__chart__||De;this.__chart__=De,ga?e.select(this).transition().each("start.brush",function(){D=Ge.i,G=Ge.j,S=Ge.x,q=Ge.y,Se({type:"brushstart"})}).tween("brush:brush",function(){var We=Ul(S,De.x),Pe=Ul(q,De.y);return D=G=null,function(_r){S=De.x=We(_r),q=De.y=Pe(_r),Se({type:"brush",mode:"resize"})}}).each("end.brush",function(){D=De.i,G=De.j,Se({type:"brush",mode:"resize"}),Se({type:"brushend"})}):(Se({type:"brushstart"}),Se({type:"brush",mode:"resize"}),Se({type:"brushend"}))})};function ge(be){be.selectAll(".resize").attr("transform",function(Se){return"translate("+S[+/e$/.test(Se)]+","+q[+/^s/.test(Se)]+")"})}function me(be){be.select(".extent").attr("x",S[0]),be.selectAll(".extent,.n>rect,.s>rect").attr("width",S[1]-S[0])}function Re(be){be.select(".extent").attr("y",q[0]),be.selectAll(".extent,.e>rect,.w>rect").attr("height",q[1]-q[0])}function Ve(){var be=this,Se=e.select(e.event.target),De=c.of(be,arguments),Ge=e.select(be),We=Se.datum(),Pe=!/^(n|s)$/.test(We)&&g,_r=!/^(e|w)$/.test(We)&&w,Or=Se.classed("extent"),Wr=Sr(be),Vr,$r=e.mouse(be),Kr,bt=e.select(i(be)).on("keydown.brush",Jt).on("keyup.brush",jn);if(e.event.changedTouches?bt.on("touchmove.brush",sn).on("touchend.brush",_t):bt.on("mousemove.brush",sn).on("mouseup.brush",_t),Ge.interrupt().selectAll("*").interrupt(),Or)$r[0]=S[0]-$r[0],$r[1]=q[0]-$r[1];else if(We){var et=+/w$/.test(We),ht=+/^n/.test(We);Kr=[S[1-et]-$r[0],q[1-ht]-$r[1]],$r[0]=S[et],$r[1]=q[ht]}else e.event.altKey&&(Vr=$r.slice());Ge.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Se.style("cursor")),De({type:"brushstart"}),sn();function Jt(){e.event.keyCode==32&&(Or||(Vr=null,$r[0]-=S[1],$r[1]-=q[1],Or=2),Ce())}function jn(){e.event.keyCode==32&&Or==2&&($r[0]+=S[1],$r[1]+=q[1],Or=0,Ce())}function sn(){var wt=e.mouse(be),$t=!1;Kr&&(wt[0]+=Kr[0],wt[1]+=Kr[1]),Or||(e.event.altKey?(Vr||(Vr=[(S[0]+S[1])/2,(q[0]+q[1])/2]),$r[0]=S[+(wt[0]{(function(e,r){typeof od=="object"&&typeof X_!="undefined"?r(od):(e=e||self,r(e.d3=e.d3||{}))})(od,function(e){"use strict";var r=new Date,t=new Date;function n(Te,Oe,kr,Ur){function tr(Ue){return Te(Ue=arguments.length===0?new Date:new Date(+Ue)),Ue}return tr.floor=function(Ue){return Te(Ue=new Date(+Ue)),Ue},tr.ceil=function(Ue){return Te(Ue=new Date(Ue-1)),Oe(Ue,1),Te(Ue),Ue},tr.round=function(Ue){var Ze=tr(Ue),mr=tr.ceil(Ue);return Ue-Ze0))return Tr;do Tr.push(yr=new Date(+Ue)),Oe(Ue,mr),Te(Ue);while(yr=Ze)for(;Te(Ze),!Ue(Ze);)Ze.setTime(Ze-1)},function(Ze,mr){if(Ze>=Ze)if(mr<0)for(;++mr<=0;)for(;Oe(Ze,-1),!Ue(Ze););else for(;--mr>=0;)for(;Oe(Ze,1),!Ue(Ze););})},kr&&(tr.count=function(Ue,Ze){return r.setTime(+Ue),t.setTime(+Ze),Te(r),Te(t),Math.floor(kr(r,t))},tr.every=function(Ue){return Ue=Math.floor(Ue),!isFinite(Ue)||!(Ue>0)?null:Ue>1?tr.filter(Ur?function(Ze){return Ur(Ze)%Ue===0}:function(Ze){return tr.count(0,Ze)%Ue===0}):tr}),tr}var a=n(function(){},function(Te,Oe){Te.setTime(+Te+Oe)},function(Te,Oe){return Oe-Te});a.every=function(Te){return Te=Math.floor(Te),!isFinite(Te)||!(Te>0)?null:Te>1?n(function(Oe){Oe.setTime(Math.floor(Oe/Te)*Te)},function(Oe,kr){Oe.setTime(+Oe+kr*Te)},function(Oe,kr){return(kr-Oe)/Te}):a};var i=a.range,o=1e3,l=6e4,s=36e5,u=864e5,f=6048e5,v=n(function(Te){Te.setTime(Te-Te.getMilliseconds())},function(Te,Oe){Te.setTime(+Te+Oe*o)},function(Te,Oe){return(Oe-Te)/o},function(Te){return Te.getUTCSeconds()}),h=v.range,d=n(function(Te){Te.setTime(Te-Te.getMilliseconds()-Te.getSeconds()*o)},function(Te,Oe){Te.setTime(+Te+Oe*l)},function(Te,Oe){return(Oe-Te)/l},function(Te){return Te.getMinutes()}),m=d.range,p=n(function(Te){Te.setTime(Te-Te.getMilliseconds()-Te.getSeconds()*o-Te.getMinutes()*l)},function(Te,Oe){Te.setTime(+Te+Oe*s)},function(Te,Oe){return(Oe-Te)/s},function(Te){return Te.getHours()}),y=p.range,b=n(function(Te){Te.setHours(0,0,0,0)},function(Te,Oe){Te.setDate(Te.getDate()+Oe)},function(Te,Oe){return(Oe-Te-(Oe.getTimezoneOffset()-Te.getTimezoneOffset())*l)/u},function(Te){return Te.getDate()-1}),C=b.range;function x(Te){return n(function(Oe){Oe.setDate(Oe.getDate()-(Oe.getDay()+7-Te)%7),Oe.setHours(0,0,0,0)},function(Oe,kr){Oe.setDate(Oe.getDate()+kr*7)},function(Oe,kr){return(kr-Oe-(kr.getTimezoneOffset()-Oe.getTimezoneOffset())*l)/f})}var _=x(0),A=x(1),k=x(2),M=x(3),E=x(4),R=x(5),F=x(6),I=_.range,W=A.range,O=k.range,Z=M.range,V=E.range,re=R.range,ie=F.range,Q=n(function(Te){Te.setDate(1),Te.setHours(0,0,0,0)},function(Te,Oe){Te.setMonth(Te.getMonth()+Oe)},function(Te,Oe){return Oe.getMonth()-Te.getMonth()+(Oe.getFullYear()-Te.getFullYear())*12},function(Te){return Te.getMonth()}),ee=Q.range,se=n(function(Te){Te.setMonth(0,1),Te.setHours(0,0,0,0)},function(Te,Oe){Te.setFullYear(Te.getFullYear()+Oe)},function(Te,Oe){return Oe.getFullYear()-Te.getFullYear()},function(Te){return Te.getFullYear()});se.every=function(Te){return!isFinite(Te=Math.floor(Te))||!(Te>0)?null:n(function(Oe){Oe.setFullYear(Math.floor(Oe.getFullYear()/Te)*Te),Oe.setMonth(0,1),Oe.setHours(0,0,0,0)},function(Oe,kr){Oe.setFullYear(Oe.getFullYear()+kr*Te)})};var ve=se.range,Ce=n(function(Te){Te.setUTCSeconds(0,0)},function(Te,Oe){Te.setTime(+Te+Oe*l)},function(Te,Oe){return(Oe-Te)/l},function(Te){return Te.getUTCMinutes()}),Ie=Ce.range,ze=n(function(Te){Te.setUTCMinutes(0,0,0)},function(Te,Oe){Te.setTime(+Te+Oe*s)},function(Te,Oe){return(Oe-Te)/s},function(Te){return Te.getUTCHours()}),Xe=ze.range,Le=n(function(Te){Te.setUTCHours(0,0,0,0)},function(Te,Oe){Te.setUTCDate(Te.getUTCDate()+Oe)},function(Te,Oe){return(Oe-Te)/u},function(Te){return Te.getUTCDate()-1}),Qe=Le.range;function fe(Te){return n(function(Oe){Oe.setUTCDate(Oe.getUTCDate()-(Oe.getUTCDay()+7-Te)%7),Oe.setUTCHours(0,0,0,0)},function(Oe,kr){Oe.setUTCDate(Oe.getUTCDate()+kr*7)},function(Oe,kr){return(kr-Oe)/f})}var ye=fe(0),Me=fe(1),pe=fe(2),U=fe(3),K=fe(4),$=fe(5),ke=fe(6),Be=ye.range,Ne=Me.range,ir=pe.range,or=U.range,Ye=K.range,nr=$.range,lr=ke.range,vr=n(function(Te){Te.setUTCDate(1),Te.setUTCHours(0,0,0,0)},function(Te,Oe){Te.setUTCMonth(Te.getUTCMonth()+Oe)},function(Te,Oe){return Oe.getUTCMonth()-Te.getUTCMonth()+(Oe.getUTCFullYear()-Te.getUTCFullYear())*12},function(Te){return Te.getUTCMonth()}),Je=vr.range,dr=n(function(Te){Te.setUTCMonth(0,1),Te.setUTCHours(0,0,0,0)},function(Te,Oe){Te.setUTCFullYear(Te.getUTCFullYear()+Oe)},function(Te,Oe){return Oe.getUTCFullYear()-Te.getUTCFullYear()},function(Te){return Te.getUTCFullYear()});dr.every=function(Te){return!isFinite(Te=Math.floor(Te))||!(Te>0)?null:n(function(Oe){Oe.setUTCFullYear(Math.floor(Oe.getUTCFullYear()/Te)*Te),Oe.setUTCMonth(0,1),Oe.setUTCHours(0,0,0,0)},function(Oe,kr){Oe.setUTCFullYear(Oe.getUTCFullYear()+kr*Te)})};var gr=dr.range;e.timeDay=b,e.timeDays=C,e.timeFriday=R,e.timeFridays=re,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=W,e.timeMonth=Q,e.timeMonths=ee,e.timeSaturday=F,e.timeSaturdays=ie,e.timeSecond=v,e.timeSeconds=h,e.timeSunday=_,e.timeSundays=I,e.timeThursday=E,e.timeThursdays=V,e.timeTuesday=k,e.timeTuesdays=O,e.timeWednesday=M,e.timeWednesdays=Z,e.timeWeek=_,e.timeWeeks=I,e.timeYear=se,e.timeYears=ve,e.utcDay=Le,e.utcDays=Qe,e.utcFriday=$,e.utcFridays=nr,e.utcHour=ze,e.utcHours=Xe,e.utcMillisecond=a,e.utcMilliseconds=i,e.utcMinute=Ce,e.utcMinutes=Ie,e.utcMonday=Me,e.utcMondays=Ne,e.utcMonth=vr,e.utcMonths=Je,e.utcSaturday=ke,e.utcSaturdays=lr,e.utcSecond=v,e.utcSeconds=h,e.utcSunday=ye,e.utcSundays=Be,e.utcThursday=K,e.utcThursdays=Ye,e.utcTuesday=pe,e.utcTuesdays=ir,e.utcWednesday=U,e.utcWednesdays=or,e.utcWeek=ye,e.utcWeeks=Be,e.utcYear=dr,e.utcYears=gr,Object.defineProperty(e,"__esModule",{value:!0})})});var y0=te((ld,j_)=>{(function(e,r){typeof ld=="object"&&typeof j_!="undefined"?r(ld,ky()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(ld,function(e,r){"use strict";function t(_e){if(0<=_e.y&&_e.y<100){var Ae=new Date(-1,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L);return Ae.setFullYear(_e.y),Ae}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 Ae=new Date(Date.UTC(-1,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L));return Ae.setUTCFullYear(_e.y),Ae}return new Date(Date.UTC(_e.y,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L))}function a(_e,Ae,Ke){return{y:_e,m:Ae,d:Ke,H:0,M:0,S:0,L:0}}function i(_e){var Ae=_e.dateTime,Ke=_e.date,rr=_e.time,Lr=_e.periods,Yr=_e.days,Fr=_e.shortDays,lt=_e.months,xt=_e.shortMonths,Rt=h(Lr),Kt=d(Lr),cn=h(Yr),pn=d(Yr),Mn=h(Fr),Xt=d(Fr),Qt=h(lt),en=d(lt),an=h(xt),jr=d(xt),Ut={a:gi,A:io,b:mi,B:ms,c:null,d:Q,e:Q,f:Ie,H:ee,I:se,j:ve,L:Ce,m:ze,M:Xe,p:Pl,q:Oo,Q:Ze,s:mr,S:Le,u:Qe,U:fe,V:ye,w:Me,W:pe,x:null,X:null,y:U,Y:K,Z:$,"%":Ue},Nt={a:ys,A:Uo,b:Un,B:yi,c:null,d:ke,e:ke,f:Ye,H:Be,I:Ne,j:ir,L:or,m:nr,M:lr,p:Yo,q:bi,Q:Ze,s:mr,S:vr,u:Je,U:dr,V:gr,w:Te,W:Oe,x:null,X:null,y:kr,Y:Ur,Z:tr,"%":Ue},rn={a:Ga,A:kn,b:Va,B:ia,c:hn,d:E,e:E,f:Z,H:F,I:F,j:R,L:O,m:M,M:I,p:Bn,q:k,Q:re,s:ie,S:W,u:p,U:y,V:b,w:m,W:C,x:dn,X:On,y:_,Y:x,Z:A,"%":V};Ut.x=Tn(Ke,Ut),Ut.X=Tn(rr,Ut),Ut.c=Tn(Ae,Ut),Nt.x=Tn(Ke,Nt),Nt.X=Tn(rr,Nt),Nt.c=Tn(Ae,Nt);function Tn(Qr,St){return function(It){var Br=[],Zn=-1,on=0,Pn=Qr.length,At,Wa,Go;for(It instanceof Date||(It=new Date(+It));++Zn53)return null;"w"in Br||(Br.w=1),"Z"in Br?(on=n(a(Br.y,0,1)),Pn=on.getUTCDay(),on=Pn>4||Pn===0?r.utcMonday.ceil(on):r.utcMonday(on),on=r.utcDay.offset(on,(Br.V-1)*7),Br.y=on.getUTCFullYear(),Br.m=on.getUTCMonth(),Br.d=on.getUTCDate()+(Br.w+6)%7):(on=t(a(Br.y,0,1)),Pn=on.getDay(),on=Pn>4||Pn===0?r.timeMonday.ceil(on):r.timeMonday(on),on=r.timeDay.offset(on,(Br.V-1)*7),Br.y=on.getFullYear(),Br.m=on.getMonth(),Br.d=on.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),Pn="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-(Pn+5)%7:Br.w+Br.U*7-(Pn+6)%7);return"Z"in Br?(Br.H+=Br.Z/100|0,Br.M+=Br.Z%100,n(Br)):t(Br)}}function Yt(Qr,St,It,Br){for(var Zn=0,on=St.length,Pn=It.length,At,Wa;Zn=Pn)return-1;if(At=St.charCodeAt(Zn++),At===37){if(At=St.charAt(Zn++),Wa=rn[At in o?St.charAt(Zn++):At],!Wa||(Br=Wa(Qr,It,Br))<0)return-1}else if(At!=It.charCodeAt(Br++))return-1}return Br}function Bn(Qr,St,It){var Br=Rt.exec(St.slice(It));return Br?(Qr.p=Kt[Br[0].toLowerCase()],It+Br[0].length):-1}function Ga(Qr,St,It){var Br=Mn.exec(St.slice(It));return Br?(Qr.w=Xt[Br[0].toLowerCase()],It+Br[0].length):-1}function kn(Qr,St,It){var Br=cn.exec(St.slice(It));return Br?(Qr.w=pn[Br[0].toLowerCase()],It+Br[0].length):-1}function Va(Qr,St,It){var Br=an.exec(St.slice(It));return Br?(Qr.m=jr[Br[0].toLowerCase()],It+Br[0].length):-1}function ia(Qr,St,It){var Br=Qt.exec(St.slice(It));return Br?(Qr.m=en[Br[0].toLowerCase()],It+Br[0].length):-1}function hn(Qr,St,It){return Yt(Qr,Ae,St,It)}function dn(Qr,St,It){return Yt(Qr,Ke,St,It)}function On(Qr,St,It){return Yt(Qr,rr,St,It)}function gi(Qr){return Fr[Qr.getDay()]}function io(Qr){return Yr[Qr.getDay()]}function mi(Qr){return xt[Qr.getMonth()]}function ms(Qr){return lt[Qr.getMonth()]}function Pl(Qr){return Lr[+(Qr.getHours()>=12)]}function Oo(Qr){return 1+~~(Qr.getMonth()/3)}function ys(Qr){return Fr[Qr.getUTCDay()]}function Uo(Qr){return Yr[Qr.getUTCDay()]}function Un(Qr){return xt[Qr.getUTCMonth()]}function yi(Qr){return lt[Qr.getUTCMonth()]}function Yo(Qr){return Lr[+(Qr.getUTCHours()>=12)]}function bi(Qr){return 1+~~(Qr.getUTCMonth()/3)}return{format:function(Qr){var St=Tn(Qr+="",Ut);return St.toString=function(){return Qr},St},parse:function(Qr){var St=vn(Qr+="",!1);return St.toString=function(){return Qr},St},utcFormat:function(Qr){var St=Tn(Qr+="",Nt);return St.toString=function(){return Qr},St},utcParse:function(Qr){var St=vn(Qr+="",!0);return St.toString=function(){return Qr},St}}}var o={"-":"",_:" ",0:"0"},l=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(_e,Ae,Ke){var rr=_e<0?"-":"",Lr=(rr?-_e:_e)+"",Yr=Lr.length;return rr+(Yr68?1900:2e3),Ke+rr[0].length):-1}function A(_e,Ae,Ke){var rr=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ae.slice(Ke,Ke+6));return rr?(_e.Z=rr[1]?0:-(rr[2]+(rr[3]||"00")),Ke+rr[0].length):-1}function k(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+1));return rr?(_e.q=rr[0]*3-3,Ke+rr[0].length):-1}function M(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+2));return rr?(_e.m=rr[0]-1,Ke+rr[0].length):-1}function E(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+2));return rr?(_e.d=+rr[0],Ke+rr[0].length):-1}function R(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+3));return rr?(_e.m=0,_e.d=+rr[0],Ke+rr[0].length):-1}function F(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+2));return rr?(_e.H=+rr[0],Ke+rr[0].length):-1}function I(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+2));return rr?(_e.M=+rr[0],Ke+rr[0].length):-1}function W(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+2));return rr?(_e.S=+rr[0],Ke+rr[0].length):-1}function O(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+3));return rr?(_e.L=+rr[0],Ke+rr[0].length):-1}function Z(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke,Ke+6));return rr?(_e.L=Math.floor(rr[0]/1e3),Ke+rr[0].length):-1}function V(_e,Ae,Ke){var rr=s.exec(Ae.slice(Ke,Ke+1));return rr?Ke+rr[0].length:-1}function re(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke));return rr?(_e.Q=+rr[0],Ke+rr[0].length):-1}function ie(_e,Ae,Ke){var rr=l.exec(Ae.slice(Ke));return rr?(_e.s=+rr[0],Ke+rr[0].length):-1}function Q(_e,Ae){return f(_e.getDate(),Ae,2)}function ee(_e,Ae){return f(_e.getHours(),Ae,2)}function se(_e,Ae){return f(_e.getHours()%12||12,Ae,2)}function ve(_e,Ae){return f(1+r.timeDay.count(r.timeYear(_e),_e),Ae,3)}function Ce(_e,Ae){return f(_e.getMilliseconds(),Ae,3)}function Ie(_e,Ae){return Ce(_e,Ae)+"000"}function ze(_e,Ae){return f(_e.getMonth()+1,Ae,2)}function Xe(_e,Ae){return f(_e.getMinutes(),Ae,2)}function Le(_e,Ae){return f(_e.getSeconds(),Ae,2)}function Qe(_e){var Ae=_e.getDay();return Ae===0?7:Ae}function fe(_e,Ae){return f(r.timeSunday.count(r.timeYear(_e)-1,_e),Ae,2)}function ye(_e,Ae){var Ke=_e.getDay();return _e=Ke>=4||Ke===0?r.timeThursday(_e):r.timeThursday.ceil(_e),f(r.timeThursday.count(r.timeYear(_e),_e)+(r.timeYear(_e).getDay()===4),Ae,2)}function Me(_e){return _e.getDay()}function pe(_e,Ae){return f(r.timeMonday.count(r.timeYear(_e)-1,_e),Ae,2)}function U(_e,Ae){return f(_e.getFullYear()%100,Ae,2)}function K(_e,Ae){return f(_e.getFullYear()%1e4,Ae,4)}function $(_e){var Ae=_e.getTimezoneOffset();return(Ae>0?"-":(Ae*=-1,"+"))+f(Ae/60|0,"0",2)+f(Ae%60,"0",2)}function ke(_e,Ae){return f(_e.getUTCDate(),Ae,2)}function Be(_e,Ae){return f(_e.getUTCHours(),Ae,2)}function Ne(_e,Ae){return f(_e.getUTCHours()%12||12,Ae,2)}function ir(_e,Ae){return f(1+r.utcDay.count(r.utcYear(_e),_e),Ae,3)}function or(_e,Ae){return f(_e.getUTCMilliseconds(),Ae,3)}function Ye(_e,Ae){return or(_e,Ae)+"000"}function nr(_e,Ae){return f(_e.getUTCMonth()+1,Ae,2)}function lr(_e,Ae){return f(_e.getUTCMinutes(),Ae,2)}function vr(_e,Ae){return f(_e.getUTCSeconds(),Ae,2)}function Je(_e){var Ae=_e.getUTCDay();return Ae===0?7:Ae}function dr(_e,Ae){return f(r.utcSunday.count(r.utcYear(_e)-1,_e),Ae,2)}function gr(_e,Ae){var Ke=_e.getUTCDay();return _e=Ke>=4||Ke===0?r.utcThursday(_e):r.utcThursday.ceil(_e),f(r.utcThursday.count(r.utcYear(_e),_e)+(r.utcYear(_e).getUTCDay()===4),Ae,2)}function Te(_e){return _e.getUTCDay()}function Oe(_e,Ae){return f(r.utcMonday.count(r.utcYear(_e)-1,_e),Ae,2)}function kr(_e,Ae){return f(_e.getUTCFullYear()%100,Ae,2)}function Ur(_e,Ae){return f(_e.getUTCFullYear()%1e4,Ae,4)}function tr(){return"+0000"}function Ue(){return"%"}function Ze(_e){return+_e}function mr(_e){return Math.floor(+_e/1e3)}var Tr;yr({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 yr(_e){return Tr=i(_e),e.timeFormat=Tr.format,e.timeParse=Tr.parse,e.utcFormat=Tr.utcFormat,e.utcParse=Tr.utcParse,Tr}var wr="%Y-%m-%dT%H:%M:%S.%LZ";function Hr(_e){return _e.toISOString()}var Sr=Date.prototype.toISOString?Hr:e.utcFormat(wr);function Dr(_e){var Ae=new Date(_e);return isNaN(Ae)?null:Ae}var ur=+new Date("2000-01-01T00:00:00.000Z")?Dr:e.utcParse(wr);e.isoFormat=Sr,e.isoParse=ur,e.timeFormatDefaultLocale=yr,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var Sy=te((sd,J_)=>{(function(e,r){typeof sd=="object"&&typeof J_!="undefined"?r(sd):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(sd,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,E){if((R=(M=E?M.toExponential(E-1):M.toExponential()).indexOf("e"))<0)return null;var R,F=M.slice(0,R);return[F.length>1?F[0]+F.slice(2):F,+M.slice(R+1)]}function n(M){return M=t(Math.abs(M)),M?M[1]:NaN}function a(M,E){return function(R,F){for(var I=R.length,W=[],O=0,Z=M[0],V=0;I>0&&Z>0&&(V+Z+1>F&&(Z=Math.max(1,F-V)),W.push(R.substring(I-=Z,I+Z)),!((V+=Z+1)>F));)Z=M[O=(O+1)%M.length];return W.reverse().join(E)}}function i(M){return function(E){return E.replace(/[0-9]/g,function(R){return M[+R]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function l(M){if(!(E=o.exec(M)))throw new Error("invalid format: "+M);var E;return new s({fill:E[1],align:E[2],sign:E[3],symbol:E[4],zero:E[5],width:E[6],comma:E[7],precision:E[8]&&E[8].slice(1),trim:E[9],type:E[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 E=M.length,R=1,F=-1,I;R0&&(F=0);break}return F>0?M.slice(0,F)+M.slice(I+1):M}var f;function v(M,E){var R=t(M,E);if(!R)return M+"";var F=R[0],I=R[1],W=I-(f=Math.max(-8,Math.min(8,Math.floor(I/3)))*3)+1,O=F.length;return W===O?F:W>O?F+new Array(W-O+1).join("0"):W>0?F.slice(0,W)+"."+F.slice(W):"0."+new Array(1-W).join("0")+t(M,Math.max(0,E+W-1))[0]}function h(M,E){var R=t(M,E);if(!R)return M+"";var F=R[0],I=R[1];return I<0?"0."+new Array(-I).join("0")+F:F.length>I+1?F.slice(0,I+1)+"."+F.slice(I+1):F+new Array(I-F.length+2).join("0")}var d={"%":function(M,E){return(M*100).toFixed(E)},b:function(M){return Math.round(M).toString(2)},c:function(M){return M+""},d:r,e:function(M,E){return M.toExponential(E)},f:function(M,E){return M.toFixed(E)},g:function(M,E){return M.toPrecision(E)},o:function(M){return Math.round(M).toString(8)},p:function(M,E){return h(M*100,E)},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 b(M){var E=M.grouping===void 0||M.thousands===void 0?m:a(p.call(M.grouping,Number),M.thousands+""),R=M.currency===void 0?"":M.currency[0]+"",F=M.currency===void 0?"":M.currency[1]+"",I=M.decimal===void 0?".":M.decimal+"",W=M.numerals===void 0?m:i(p.call(M.numerals,String)),O=M.percent===void 0?"%":M.percent+"",Z=M.minus===void 0?"-":M.minus+"",V=M.nan===void 0?"NaN":M.nan+"";function re(Q){Q=l(Q);var ee=Q.fill,se=Q.align,ve=Q.sign,Ce=Q.symbol,Ie=Q.zero,ze=Q.width,Xe=Q.comma,Le=Q.precision,Qe=Q.trim,fe=Q.type;fe==="n"?(Xe=!0,fe="g"):d[fe]||(Le===void 0&&(Le=12),Qe=!0,fe="g"),(Ie||ee==="0"&&se==="=")&&(Ie=!0,ee="0",se="=");var ye=Ce==="$"?R:Ce==="#"&&/[boxX]/.test(fe)?"0"+fe.toLowerCase():"",Me=Ce==="$"?F:/[%p]/.test(fe)?O:"",pe=d[fe],U=/[defgprs%]/.test(fe);Le=Le===void 0?6:/[gprs]/.test(fe)?Math.max(1,Math.min(21,Le)):Math.max(0,Math.min(20,Le));function K($){var ke=ye,Be=Me,Ne,ir,or;if(fe==="c")Be=pe($)+Be,$="";else{$=+$;var Ye=$<0||1/$<0;if($=isNaN($)?V:pe(Math.abs($),Le),Qe&&($=u($)),Ye&&+$==0&&ve!=="+"&&(Ye=!1),ke=(Ye?ve==="("?ve:Z:ve==="-"||ve==="("?"":ve)+ke,Be=(fe==="s"?y[8+f/3]:"")+Be+(Ye&&ve==="("?")":""),U){for(Ne=-1,ir=$.length;++Neor||or>57){Be=(or===46?I+$.slice(Ne+1):$.slice(Ne))+Be,$=$.slice(0,Ne);break}}}Xe&&!Ie&&($=E($,1/0));var nr=ke.length+$.length+Be.length,lr=nr>1)+ke+$+Be+lr.slice(nr);break;default:$=lr+ke+$+Be;break}return W($)}return K.toString=function(){return Q+""},K}function ie(Q,ee){var se=re((Q=l(Q),Q.type="f",Q)),ve=Math.max(-8,Math.min(8,Math.floor(n(ee)/3)))*3,Ce=Math.pow(10,-ve),Ie=y[8+ve/3];return function(ze){return se(Ce*ze)+Ie}}return{format:re,formatPrefix:ie}}var C;x({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function x(M){return C=b(M),e.format=C.format,e.formatPrefix=C.formatPrefix,C}function _(M){return Math.max(0,-n(Math.abs(M)))}function A(M,E){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(n(E)/3)))*3-n(Math.abs(M)))}function k(M,E){return M=Math.abs(M),E=Math.abs(E)-M,Math.max(0,n(E)-n(M))+1}e.FormatSpecifier=s,e.formatDefaultLocale=x,e.formatLocale=b,e.formatSpecifier=l,e.precisionFixed=_,e.precisionPrefix=A,e.precisionRound=k,Object.defineProperty(e,"__esModule",{value:!0})})});var K_=te((nle,$_)=>{"use strict";$_.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 Ht=te((ale,Q_)=>{"use strict";var JI=K_();Q_.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&JI(t))return!1}else if(r!=="number")return!1;return e-e<1}});var Rn=te((ile,e6)=>{"use strict";e6.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 Cy=te((ud,r6)=>{(function(e,r){typeof ud=="object"&&typeof r6!="undefined"?r(ud):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(ud,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=te((ole,t6)=>{"use strict";t6.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=te(cl=>{"use strict";var $I=Cy().decode,KI=Gs(),Ly=Array.isArray,QI=ArrayBuffer,eH=DataView;function n6(e){return QI.isView(e)&&!(e instanceof eH)}cl.isTypedArray=n6;function fd(e){return Ly(e)||n6(e)}cl.isArrayOrTypedArray=fd;function rH(e){return!fd(e[0])}cl.isArray1D=rH;cl.ensureArray=function(e,r){return Ly(e)||(e=[]),e.length=r,e};var Aa={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};Aa.uint8c=Aa.u1c;Aa.uint8=Aa.u1;Aa.int8=Aa.i1;Aa.uint16=Aa.u2;Aa.int16=Aa.i2;Aa.uint32=Aa.u4;Aa.int32=Aa.i4;Aa.float32=Aa.f4;Aa.float64=Aa.f8;function qy(e){return e.constructor===ArrayBuffer}cl.isArrayBuffer=qy;cl.decodeTypedArraySpec=function(e){var r=[],t=tH(e),n=t.dtype,a=Aa[n];if(!a)throw new Error('Error in dtype: "'+n+'"');var i=a.BYTES_PER_ELEMENT,o=t.bdata;qy(o)||(o=$I(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 i6=Ht(),Ey=ji().isArrayOrTypedArray;u6.exports=function(r,t){if(i6(t))t=String(t);else if(typeof t!="string"||t.slice(-4)==="[-1]")throw"bad property string";var n=t.split("."),a,i,o,l;for(l=0;l{"use strict";var b0=e1(),lH=/^\w*$/,sH=0,f6=1,cd=2,c6=3,jf=4;v6.exports=function(r,t,n,a){n=n||"name",a=a||"value";var i,o,l,s={};t&&t.length?(l=b0(r,t),o=l.get()):o=r,t=t||"";var u={};if(o)for(i=0;i2)return s[d]=s[d]|cd,v.set(h,null);if(f){for(i=d;i{"use strict";var uH=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,fH=/^[^\.\[\]]+$/;d6.exports=function(e,r){for(;r;){var t=e.match(uH);if(t)e=t[1];else if(e.match(fH))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 vd=te((cle,g6)=>{"use strict";var cH=Ht();g6.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 cH(n)||(n=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),n}});var b6=te((vle,y6)=>{"use strict";var m6=ji().isArrayOrTypedArray,r1=Gs();y6.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(m6(a)&&m6(i)&&r1(a[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(a.length,i.length),l=0;l{"use strict";function vH(e,r){var t=e%r;return t<0?t+r:t}function hH(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}_6.exports={mod:vH,modHalf:hH}});var $l=te((dle,hd)=>{(function(e){var r=/^\s+/,t=/\s+$/,n=0,a=e.round,i=e.min,o=e.max,l=e.random;function s(U,K){if(U=U||"",K=K||{},U instanceof s)return U;if(!(this instanceof s))return new s(U,K);var $=u(U);this._originalInput=U,this._r=$.r,this._g=$.g,this._b=$.b,this._a=$.a,this._roundA=a(100*this._a)/100,this._format=K.format||$.format,this._gradientType=K.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 U=this.toRgb();return(U.r*299+U.g*587+U.b*114)/1e3},getLuminance:function(){var U=this.toRgb(),K,$,ke,Be,Ne,ir;return K=U.r/255,$=U.g/255,ke=U.b/255,K<=.03928?Be=K/12.92:Be=e.pow((K+.055)/1.055,2.4),$<=.03928?Ne=$/12.92:Ne=e.pow(($+.055)/1.055,2.4),ke<=.03928?ir=ke/12.92:ir=e.pow((ke+.055)/1.055,2.4),.2126*Be+.7152*Ne+.0722*ir},setAlpha:function(U){return this._a=Q(U),this._roundA=a(100*this._a)/100,this},toHsv:function(){var U=d(this._r,this._g,this._b);return{h:U.h*360,s:U.s,v:U.v,a:this._a}},toHsvString:function(){var U=d(this._r,this._g,this._b),K=a(U.h*360),$=a(U.s*100),ke=a(U.v*100);return this._a==1?"hsv("+K+", "+$+"%, "+ke+"%)":"hsva("+K+", "+$+"%, "+ke+"%, "+this._roundA+")"},toHsl:function(){var U=v(this._r,this._g,this._b);return{h:U.h*360,s:U.s,l:U.l,a:this._a}},toHslString:function(){var U=v(this._r,this._g,this._b),K=a(U.h*360),$=a(U.s*100),ke=a(U.l*100);return this._a==1?"hsl("+K+", "+$+"%, "+ke+"%)":"hsla("+K+", "+$+"%, "+ke+"%, "+this._roundA+")"},toHex:function(U){return p(this._r,this._g,this._b,U)},toHexString:function(U){return"#"+this.toHex(U)},toHex8:function(U){return y(this._r,this._g,this._b,this._a,U)},toHex8String:function(U){return"#"+this.toHex8(U)},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(ee(this._r,255)*100)+"%",g:a(ee(this._g,255)*100)+"%",b:a(ee(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+a(ee(this._r,255)*100)+"%, "+a(ee(this._g,255)*100)+"%, "+a(ee(this._b,255)*100)+"%)":"rgba("+a(ee(this._r,255)*100)+"%, "+a(ee(this._g,255)*100)+"%, "+a(ee(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:re[p(this._r,this._g,this._b,!0)]||!1},toFilter:function(U){var K="#"+b(this._r,this._g,this._b,this._a),$=K,ke=this._gradientType?"GradientType = 1, ":"";if(U){var Be=s(U);$="#"+b(Be._r,Be._g,Be._b,Be._a)}return"progid:DXImageTransform.Microsoft.gradient("+ke+"startColorstr="+K+",endColorstr="+$+")"},toString:function(U){var K=!!U;U=U||this._format;var $=!1,ke=this._a<1&&this._a>=0,Be=!K&&ke&&(U==="hex"||U==="hex6"||U==="hex3"||U==="hex4"||U==="hex8"||U==="name");return Be?U==="name"&&this._a===0?this.toName():this.toRgbString():(U==="rgb"&&($=this.toRgbString()),U==="prgb"&&($=this.toPercentageRgbString()),(U==="hex"||U==="hex6")&&($=this.toHexString()),U==="hex3"&&($=this.toHexString(!0)),U==="hex4"&&($=this.toHex8String(!0)),U==="hex8"&&($=this.toHex8String()),U==="name"&&($=this.toName()),U==="hsl"&&($=this.toHslString()),U==="hsv"&&($=this.toHsvString()),$||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(U,K){var $=U.apply(null,[this].concat([].slice.call(K)));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(C,arguments)},saturate:function(){return this._applyModification(x,arguments)},greyscale:function(){return this._applyModification(_,arguments)},spin:function(){return this._applyModification(E,arguments)},_applyCombination:function(U,K){return U.apply(null,[this].concat([].slice.call(K)))},analogous:function(){return this._applyCombination(O,arguments)},complement:function(){return this._applyCombination(R,arguments)},monochromatic:function(){return this._applyCombination(Z,arguments)},splitcomplement:function(){return this._applyCombination(W,arguments)},triad:function(){return this._applyCombination(F,arguments)},tetrad:function(){return this._applyCombination(I,arguments)}},s.fromRatio=function(U,K){if(typeof U=="object"){var $={};for(var ke in U)U.hasOwnProperty(ke)&&(ke==="a"?$[ke]=U[ke]:$[ke]=Xe(U[ke]));U=$}return s(U,K)};function u(U){var K={r:0,g:0,b:0},$=1,ke=null,Be=null,Ne=null,ir=!1,or=!1;return typeof U=="string"&&(U=Me(U)),typeof U=="object"&&(ye(U.r)&&ye(U.g)&&ye(U.b)?(K=f(U.r,U.g,U.b),ir=!0,or=String(U.r).substr(-1)==="%"?"prgb":"rgb"):ye(U.h)&&ye(U.s)&&ye(U.v)?(ke=Xe(U.s),Be=Xe(U.v),K=m(U.h,ke,Be),ir=!0,or="hsv"):ye(U.h)&&ye(U.s)&&ye(U.l)&&(ke=Xe(U.s),Ne=Xe(U.l),K=h(U.h,ke,Ne),ir=!0,or="hsl"),U.hasOwnProperty("a")&&($=U.a)),$=Q($),{ok:ir,format:U.format||or,r:i(255,o(K.r,0)),g:i(255,o(K.g,0)),b:i(255,o(K.b,0)),a:$}}function f(U,K,$){return{r:ee(U,255)*255,g:ee(K,255)*255,b:ee($,255)*255}}function v(U,K,$){U=ee(U,255),K=ee(K,255),$=ee($,255);var ke=o(U,K,$),Be=i(U,K,$),Ne,ir,or=(ke+Be)/2;if(ke==Be)Ne=ir=0;else{var Ye=ke-Be;switch(ir=or>.5?Ye/(2-ke-Be):Ye/(ke+Be),ke){case U:Ne=(K-$)/Ye+(K<$?6:0);break;case K:Ne=($-U)/Ye+2;break;case $:Ne=(U-K)/Ye+4;break}Ne/=6}return{h:Ne,s:ir,l:or}}function h(U,K,$){var ke,Be,Ne;U=ee(U,360),K=ee(K,100),$=ee($,100);function ir(nr,lr,vr){return vr<0&&(vr+=1),vr>1&&(vr-=1),vr<1/6?nr+(lr-nr)*6*vr:vr<1/2?lr:vr<2/3?nr+(lr-nr)*(2/3-vr)*6:nr}if(K===0)ke=Be=Ne=$;else{var or=$<.5?$*(1+K):$+K-$*K,Ye=2*$-or;ke=ir(Ye,or,U+1/3),Be=ir(Ye,or,U),Ne=ir(Ye,or,U-1/3)}return{r:ke*255,g:Be*255,b:Ne*255}}function d(U,K,$){U=ee(U,255),K=ee(K,255),$=ee($,255);var ke=o(U,K,$),Be=i(U,K,$),Ne,ir,or=ke,Ye=ke-Be;if(ir=ke===0?0:Ye/ke,ke==Be)Ne=0;else{switch(ke){case U:Ne=(K-$)/Ye+(K<$?6:0);break;case K:Ne=($-U)/Ye+2;break;case $:Ne=(U-K)/Ye+4;break}Ne/=6}return{h:Ne,s:ir,v:or}}function m(U,K,$){U=ee(U,360)*6,K=ee(K,100),$=ee($,100);var ke=e.floor(U),Be=U-ke,Ne=$*(1-K),ir=$*(1-Be*K),or=$*(1-(1-Be)*K),Ye=ke%6,nr=[$,ir,Ne,Ne,or,$][Ye],lr=[or,$,$,ir,Ne,Ne][Ye],vr=[Ne,Ne,or,$,$,ir][Ye];return{r:nr*255,g:lr*255,b:vr*255}}function p(U,K,$,ke){var Be=[ze(a(U).toString(16)),ze(a(K).toString(16)),ze(a($).toString(16))];return ke&&Be[0].charAt(0)==Be[0].charAt(1)&&Be[1].charAt(0)==Be[1].charAt(1)&&Be[2].charAt(0)==Be[2].charAt(1)?Be[0].charAt(0)+Be[1].charAt(0)+Be[2].charAt(0):Be.join("")}function y(U,K,$,ke,Be){var Ne=[ze(a(U).toString(16)),ze(a(K).toString(16)),ze(a($).toString(16)),ze(Le(ke))];return Be&&Ne[0].charAt(0)==Ne[0].charAt(1)&&Ne[1].charAt(0)==Ne[1].charAt(1)&&Ne[2].charAt(0)==Ne[2].charAt(1)&&Ne[3].charAt(0)==Ne[3].charAt(1)?Ne[0].charAt(0)+Ne[1].charAt(0)+Ne[2].charAt(0)+Ne[3].charAt(0):Ne.join("")}function b(U,K,$,ke){var Be=[ze(Le(ke)),ze(a(U).toString(16)),ze(a(K).toString(16)),ze(a($).toString(16))];return Be.join("")}s.equals=function(U,K){return!U||!K?!1:s(U).toRgbString()==s(K).toRgbString()},s.random=function(){return s.fromRatio({r:l(),g:l(),b:l()})};function C(U,K){K=K===0?0:K||10;var $=s(U).toHsl();return $.s-=K/100,$.s=se($.s),s($)}function x(U,K){K=K===0?0:K||10;var $=s(U).toHsl();return $.s+=K/100,$.s=se($.s),s($)}function _(U){return s(U).desaturate(100)}function A(U,K){K=K===0?0:K||10;var $=s(U).toHsl();return $.l+=K/100,$.l=se($.l),s($)}function k(U,K){K=K===0?0:K||10;var $=s(U).toRgb();return $.r=o(0,i(255,$.r-a(255*-(K/100)))),$.g=o(0,i(255,$.g-a(255*-(K/100)))),$.b=o(0,i(255,$.b-a(255*-(K/100)))),s($)}function M(U,K){K=K===0?0:K||10;var $=s(U).toHsl();return $.l-=K/100,$.l=se($.l),s($)}function E(U,K){var $=s(U).toHsl(),ke=($.h+K)%360;return $.h=ke<0?360+ke:ke,s($)}function R(U){var K=s(U).toHsl();return K.h=(K.h+180)%360,s(K)}function F(U){var K=s(U).toHsl(),$=K.h;return[s(U),s({h:($+120)%360,s:K.s,l:K.l}),s({h:($+240)%360,s:K.s,l:K.l})]}function I(U){var K=s(U).toHsl(),$=K.h;return[s(U),s({h:($+90)%360,s:K.s,l:K.l}),s({h:($+180)%360,s:K.s,l:K.l}),s({h:($+270)%360,s:K.s,l:K.l})]}function W(U){var K=s(U).toHsl(),$=K.h;return[s(U),s({h:($+72)%360,s:K.s,l:K.l}),s({h:($+216)%360,s:K.s,l:K.l})]}function O(U,K,$){K=K||6,$=$||30;var ke=s(U).toHsl(),Be=360/$,Ne=[s(U)];for(ke.h=(ke.h-(Be*K>>1)+720)%360;--K;)ke.h=(ke.h+Be)%360,Ne.push(s(ke));return Ne}function Z(U,K){K=K||6;for(var $=s(U).toHsv(),ke=$.h,Be=$.s,Ne=$.v,ir=[],or=1/K;K--;)ir.push(s({h:ke,s:Be,v:Ne})),Ne=(Ne+or)%1;return ir}s.mix=function(U,K,$){$=$===0?0:$||50;var ke=s(U).toRgb(),Be=s(K).toRgb(),Ne=$/100,ir={r:(Be.r-ke.r)*Ne+ke.r,g:(Be.g-ke.g)*Ne+ke.g,b:(Be.b-ke.b)*Ne+ke.b,a:(Be.a-ke.a)*Ne+ke.a};return s(ir)},s.readability=function(U,K){var $=s(U),ke=s(K);return(e.max($.getLuminance(),ke.getLuminance())+.05)/(e.min($.getLuminance(),ke.getLuminance())+.05)},s.isReadable=function(U,K,$){var ke=s.readability(U,K),Be,Ne;switch(Ne=!1,Be=pe($),Be.level+Be.size){case"AAsmall":case"AAAlarge":Ne=ke>=4.5;break;case"AAlarge":Ne=ke>=3;break;case"AAAsmall":Ne=ke>=7;break}return Ne},s.mostReadable=function(U,K,$){var ke=null,Be=0,Ne,ir,or,Ye;$=$||{},ir=$.includeFallbackColors,or=$.level,Ye=$.size;for(var nr=0;nrBe&&(Be=Ne,ke=s(K[nr]));return s.isReadable(U,ke,{level:or,size:Ye})||!ir?ke:($.includeFallbackColors=!1,s.mostReadable(U,["#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"},re=s.hexNames=ie(V);function ie(U){var K={};for(var $ in U)U.hasOwnProperty($)&&(K[U[$]]=$);return K}function Q(U){return U=parseFloat(U),(isNaN(U)||U<0||U>1)&&(U=1),U}function ee(U,K){Ce(U)&&(U="100%");var $=Ie(U);return U=i(K,o(0,parseFloat(U))),$&&(U=parseInt(U*K,10)/100),e.abs(U-K)<1e-6?1:U%K/parseFloat(K)}function se(U){return i(1,o(0,U))}function ve(U){return parseInt(U,16)}function Ce(U){return typeof U=="string"&&U.indexOf(".")!=-1&&parseFloat(U)===1}function Ie(U){return typeof U=="string"&&U.indexOf("%")!=-1}function ze(U){return U.length==1?"0"+U:""+U}function Xe(U){return U<=1&&(U=U*100+"%"),U}function Le(U){return e.round(parseFloat(U)*255).toString(16)}function Qe(U){return ve(U)/255}var fe=function(){var U="[-\\+]?\\d+%?",K="[-\\+]?\\d*\\.\\d+%?",$="(?:"+K+")|(?:"+U+")",ke="[\\s|\\(]+("+$+")[,|\\s]+("+$+")[,|\\s]+("+$+")\\s*\\)?",Be="[\\s|\\(]+("+$+")[,|\\s]+("+$+")[,|\\s]+("+$+")[,|\\s]+("+$+")\\s*\\)?";return{CSS_UNIT:new RegExp($),rgb:new RegExp("rgb"+ke),rgba:new RegExp("rgba"+Be),hsl:new RegExp("hsl"+ke),hsla:new RegExp("hsla"+Be),hsv:new RegExp("hsv"+ke),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 ye(U){return!!fe.CSS_UNIT.exec(U)}function Me(U){U=U.replace(r,"").replace(t,"").toLowerCase();var K=!1;if(V[U])U=V[U],K=!0;else if(U=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var $;return($=fe.rgb.exec(U))?{r:$[1],g:$[2],b:$[3]}:($=fe.rgba.exec(U))?{r:$[1],g:$[2],b:$[3],a:$[4]}:($=fe.hsl.exec(U))?{h:$[1],s:$[2],l:$[3]}:($=fe.hsla.exec(U))?{h:$[1],s:$[2],l:$[3],a:$[4]}:($=fe.hsv.exec(U))?{h:$[1],s:$[2],v:$[3]}:($=fe.hsva.exec(U))?{h:$[1],s:$[2],v:$[3],a:$[4]}:($=fe.hex8.exec(U))?{r:ve($[1]),g:ve($[2]),b:ve($[3]),a:Qe($[4]),format:K?"name":"hex8"}:($=fe.hex6.exec(U))?{r:ve($[1]),g:ve($[2]),b:ve($[3]),format:K?"name":"hex"}:($=fe.hex4.exec(U))?{r:ve($[1]+""+$[1]),g:ve($[2]+""+$[2]),b:ve($[3]+""+$[3]),a:Qe($[4]+""+$[4]),format:K?"name":"hex8"}:($=fe.hex3.exec(U))?{r:ve($[1]+""+$[1]),g:ve($[2]+""+$[2]),b:ve($[3]+""+$[3]),format:K?"name":"hex"}:!1}function pe(U){var K,$;return U=U||{level:"AA",size:"small"},K=(U.level||"AA").toUpperCase(),$=(U.size||"small").toLowerCase(),K!=="AA"&&K!=="AAA"&&(K="AA"),$!=="small"&&$!=="large"&&($="small"),{level:K,size:$}}typeof hd!="undefined"&&hd.exports?hd.exports=s:window.tinycolor=s})(Math)});var sa=te(a1=>{"use strict";var x6=Gs(),t1=Array.isArray;function dH(e,r){var t,n;for(t=0;t{"use strict";w6.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 i1=te((mle,M6)=>{"use strict";M6.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var x0=te((yle,k6)=>{"use strict";var A6=i1(),T6=$a(),Py=T6({editType:"none"});Py.family.dflt=A6.HOVERFONT;Py.size.dflt=A6.HOVERFONTSIZE;k6.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"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var dd=te((ble,S6)=>{"use strict";var pH=$a(),o1=x0().hoverlabel,l1=sa().extendFlat;S6.exports={hoverlabel:{bgcolor:l1({},o1.bgcolor,{arrayOk:!0}),bordercolor:l1({},o1.bordercolor,{arrayOk:!0}),font:pH({arrayOk:!0,editType:"none"}),align:l1({},o1.align,{arrayOk:!0}),namelength:l1({},o1.namelength,{arrayOk:!0}),showarrow:l1({},o1.showarrow),editType:"none"}}});var bo=te((_le,C6)=>{"use strict";var gH=$a(),mH=dd();C6.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:gH({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:mH.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=te((xle,D6)=>{"use strict";var yH=$l(),pd={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)"]]},L6=pd.RdBu;function bH(e,r){if(r||(r=L6),!e)return r;function t(){try{e=pd[e]||JSON.parse(e)}catch(n){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),q6(e)?e:r}function q6(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 Et=te((Mle,E6)=>{"use strict";var Li=$l(),xH=Ht(),wH=ji().isTypedArray,ma=E6.exports={},gd=vl();ma.defaults=gd.defaults;var MH=ma.defaultLine=gd.defaultLine;ma.lightLine=gd.lightLine;var zy=ma.background=gd.background;ma.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};ma.rgb=function(e){return ma.tinyRGB(Li(e))};ma.opacity=function(e){return e?Li(e).getAlpha():0};ma.addOpacity=function(e,r){var t=Li(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};ma.combine=function(e,r){var t=Li(e).toRgb();if(t.a===1)return Li(e).toRgbString();var n=Li(r||zy).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()};ma.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()};ma.contrast=function(e,r,t){var n=Li(e);n.getAlpha()!==1&&(n=Li(ma.combine(e,zy)));var a=n.isDark()?r?n.lighten(r):zy:t?n.darken(t):MH;return a.toString()};ma.stroke=function(e,r){var t=Li(r);e.style({stroke:ma.tinyRGB(t),"stroke-opacity":t.getAlpha()})};ma.fill=function(e,r){var t=Li(r);e.style({fill:ma.tinyRGB(t),"fill-opacity":t.getAlpha()})};ma.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 md=te((Ale,P6)=>{"use strict";P6.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var w0=te(R6=>{"use strict";R6.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 I6=te(qi=>{"use strict";var Ny=Ht(),z6=$l(),N6=sa().extendFlat,AH=bo(),TH=Jf(),kH=Et(),SH=md().DESELECTDIM,M0=e1(),F6=w0().counter,CH=_0().modHalf,hl=ji().isArrayOrTypedArray,Du=ji().isTypedArraySpec,Eu=ji().decodeTypedArraySpec;qi.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(hl(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;ni===!0||i===!1;a(e)||n.arrayOk&&Array.isArray(e)&&e.length>0&&e.every(a)?r.set(e):r.set(t)}},number:{coerceFunction:function(e,r,t,n){Du(e)&&(e=Eu(e)),!Ny(e)||n.min!==void 0&&en.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||!Ny(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)),z6(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function n(a){return z6(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(TH.get(e,t))}},angle:{coerceFunction:function(e,r,t){Du(e)&&(e=Eu(e)),e==="auto"?r.set("auto"):Ny(e)?r.set(CH(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,n){var a=n.regex||F6(t);let i=o=>typeof o=="string"&&a.test(o);i(e)||n.arrayOk&&hl(e)&&e.length>0&&e.every(i)?r.set(e):r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!F6(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 H6={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/un/"},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:{}}},B6={};function O6(e,r){for(var t in e){var n=e[t];n.valType?r[t]=n.dflt:(r[t]||(r[t]={}),O6(n,r[t]))}}O6(H6,B6);U6.exports={configAttributes:H6,dfltConfig:B6}});var Iy=te((Cle,Y6)=>{"use strict";var Fy=kt(),LH=Ht(),s1=[];Y6.exports=function(e,r){if(s1.indexOf(e)!==-1)return;s1.push(e);var t=1e3;LH(r)?t=r:r==="long"&&(t=3e3);var n=Fy.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var a=n.selectAll(".notifier-note").data(s1);function i(o){o.duration(700).style("opacity",0).each("end",function(l){var s=s1.indexOf(l);s!==-1&&s1.splice(s,1),Fy.select(this).remove()})}a.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var l=Fy.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 A0=Kf().dfltConfig,Hy=Iy(),By=G6.exports={};By.log=function(){var e;if(A0.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};By.warn=function(){var e;if(A0.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};By.error=function(){var e;if(A0.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var bd=te((qle,V6)=>{"use strict";V6.exports=function(){}});var Oy=te((Dle,W6)=>{"use strict";W6.exports=function(r,t){if(t instanceof RegExp){for(var n=t.toString(),a=0;a{Z6.exports=qH;function qH(){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 J6=te((Ple,j6)=>{j6.exports=DH;function DH(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 K6=te((Rle,$6)=>{$6.exports=EH;function EH(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 Uy=te((zle,Q6)=>{Q6.exports=PH;function PH(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 rx=te((Nle,ex)=>{ex.exports=RH;function RH(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 nx=te((Fle,tx)=>{tx.exports=zH;function zH(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],b=r[15],C=t*l-n*o,x=t*s-a*o,_=t*u-i*o,A=n*s-a*l,k=n*u-i*l,M=a*u-i*s,E=f*p-v*m,R=f*y-h*m,F=f*b-d*m,I=v*y-h*p,W=v*b-d*p,O=h*b-d*y,Z=C*O-x*W+_*I+A*F-k*R+M*E;return Z?(Z=1/Z,e[0]=(l*O-s*W+u*I)*Z,e[1]=(a*W-n*O-i*I)*Z,e[2]=(p*M-y*k+b*A)*Z,e[3]=(h*k-v*M-d*A)*Z,e[4]=(s*F-o*O-u*R)*Z,e[5]=(t*O-a*F+i*R)*Z,e[6]=(y*_-m*M-b*x)*Z,e[7]=(f*M-h*_+d*x)*Z,e[8]=(o*W-l*F+u*E)*Z,e[9]=(n*F-t*W-i*E)*Z,e[10]=(m*k-p*_+b*C)*Z,e[11]=(v*_-f*k-d*C)*Z,e[12]=(l*R-o*I-s*E)*Z,e[13]=(t*I-n*R+a*E)*Z,e[14]=(p*x-m*A-y*C)*Z,e[15]=(f*A-v*x+h*C)*Z,e):null}});var ix=te((Ile,ax)=>{ax.exports=NH;function NH(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],b=r[15];return e[0]=l*(h*b-d*y)-v*(s*b-u*y)+p*(s*d-u*h),e[1]=-(n*(h*b-d*y)-v*(a*b-i*y)+p*(a*d-i*h)),e[2]=n*(s*b-u*y)-l*(a*b-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*b-d*y)-f*(s*b-u*y)+m*(s*d-u*h)),e[5]=t*(h*b-d*y)-f*(a*b-i*y)+m*(a*d-i*h),e[6]=-(t*(s*b-u*y)-o*(a*b-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*b-d*p)-f*(l*b-u*p)+m*(l*d-u*v),e[9]=-(t*(v*b-d*p)-f*(n*b-i*p)+m*(n*d-i*v)),e[10]=t*(l*b-u*p)-o*(n*b-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 lx=te((Hle,ox)=>{ox.exports=FH;function FH(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],b=r*o-t*i,C=r*l-n*i,x=r*s-a*i,_=t*l-n*o,A=t*s-a*o,k=n*s-a*l,M=u*m-f*d,E=u*p-v*d,R=u*y-h*d,F=f*p-v*m,I=f*y-h*m,W=v*y-h*p;return b*W-C*I+x*F+_*R-A*E+k*M}});var ux=te((Ble,sx)=>{sx.exports=IH;function IH(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],b=r[14],C=r[15],x=t[0],_=t[1],A=t[2],k=t[3];return e[0]=x*n+_*l+A*v+k*p,e[1]=x*a+_*s+A*h+k*y,e[2]=x*i+_*u+A*d+k*b,e[3]=x*o+_*f+A*m+k*C,x=t[4],_=t[5],A=t[6],k=t[7],e[4]=x*n+_*l+A*v+k*p,e[5]=x*a+_*s+A*h+k*y,e[6]=x*i+_*u+A*d+k*b,e[7]=x*o+_*f+A*m+k*C,x=t[8],_=t[9],A=t[10],k=t[11],e[8]=x*n+_*l+A*v+k*p,e[9]=x*a+_*s+A*h+k*y,e[10]=x*i+_*u+A*d+k*b,e[11]=x*o+_*f+A*m+k*C,x=t[12],_=t[13],A=t[14],k=t[15],e[12]=x*n+_*l+A*v+k*p,e[13]=x*a+_*s+A*h+k*y,e[14]=x*i+_*u+A*d+k*b,e[15]=x*o+_*f+A*m+k*C,e}});var cx=te((Ole,fx)=>{fx.exports=HH;function HH(e,r,t){var n=t[0],a=t[1],i=t[2],o,l,s,u,f,v,h,d,m,p,y,b;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],b=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]=b,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+b*i+r[15]),e}});var hx=te((Ule,vx)=>{vx.exports=BH;function BH(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 px=te((Yle,dx)=>{dx.exports=OH;function OH(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,b,C,x,_,A,k,M,E,R,F,I,W,O,Z,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],b=r[6],C=r[7],x=r[8],_=r[9],A=r[10],k=r[11],M=a*a*f+u,E=i*a*f+o*s,R=o*a*f-i*s,F=a*i*f-o*s,I=i*i*f+u,W=o*i*f+a*s,O=a*o*f+i*s,Z=i*o*f-a*s,V=o*o*f+u,e[0]=v*M+p*E+x*R,e[1]=h*M+y*E+_*R,e[2]=d*M+b*E+A*R,e[3]=m*M+C*E+k*R,e[4]=v*F+p*I+x*W,e[5]=h*F+y*I+_*W,e[6]=d*F+b*I+A*W,e[7]=m*F+C*I+k*W,e[8]=v*O+p*Z+x*V,e[9]=h*O+y*Z+_*V,e[10]=d*O+b*Z+A*V,e[11]=m*O+C*Z+k*V,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var mx=te((Gle,gx)=>{gx.exports=UH;function UH(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 bx=te((Vle,yx)=>{yx.exports=YH;function YH(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 xx=te((Wle,_x)=>{_x.exports=GH;function GH(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 Mx=te((Zle,wx)=>{wx.exports=VH;function VH(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 Tx=te((Xle,Ax)=>{Ax.exports=WH;function WH(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,b=o*s,C=o*u;return e[0]=1-(d+p),e[1]=v+C,e[2]=h-b,e[3]=0,e[4]=v-C,e[5]=1-(f+p),e[6]=m+y,e[7]=0,e[8]=h+b,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 Sx=te((jle,kx)=>{kx.exports=ZH;function ZH(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 Lx=te((Jle,Cx)=>{Cx.exports=XH;function XH(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 Dx=te(($le,qx)=>{qx.exports=jH;function jH(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 Px=te((Kle,Ex)=>{Ex.exports=JH;function JH(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 zx=te((Qle,Rx)=>{Rx.exports=$H;function $H(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 Fx=te((ese,Nx)=>{Nx.exports=KH;function KH(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,b=i*s;return e[0]=1-v-m,e[1]=f+b,e[2]=h-y,e[3]=0,e[4]=f-b,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 Hx=te((rse,Ix)=>{Ix.exports=QH;function QH(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 Ox=te((tse,Bx)=>{Bx.exports=eB;function eB(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 Yx=te((nse,Ux)=>{Ux.exports=rB;function rB(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 Vx=te((ase,Gx)=>{Gx.exports=tB;function tB(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 Zx=te((ise,Wx)=>{var nB=Uy();Wx.exports=aB;function aB(e,r,t,n){var a,i,o,l,s,u,f,v,h,d,m=r[0],p=r[1],y=r[2],b=n[0],C=n[1],x=n[2],_=t[0],A=t[1],k=t[2];return Math.abs(m-_)<1e-6&&Math.abs(p-A)<1e-6&&Math.abs(y-k)<1e-6?nB(e):(f=m-_,v=p-A,h=y-k,d=1/Math.sqrt(f*f+v*v+h*h),f*=d,v*=d,h*=d,a=C*h-x*v,i=x*f-b*h,o=b*v-C*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 jx=te((ose,Xx)=>{Xx.exports=iB;function iB(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 Yy=te((lse,Jx)=>{Jx.exports={create:X6(),clone:J6(),copy:K6(),identity:Uy(),transpose:rx(),invert:nx(),adjoint:ix(),determinant:lx(),multiply:ux(),translate:cx(),scale:hx(),rotate:px(),rotateX:mx(),rotateY:bx(),rotateZ:xx(),fromRotation:Mx(),fromRotationTranslation:Tx(),fromScaling:Sx(),fromTranslation:Lx(),fromXRotation:Dx(),fromYRotation:Px(),fromZRotation:zx(),fromQuat:Fx(),frustum:Hx(),perspective:Ox(),perspectiveFromFieldOfView:Yx(),ortho:Vx(),lookAt:Zx(),str:jx()}});var _d=te(Jn=>{"use strict";var oB=Yy();Jn.init2dArray=function(e,r){for(var t=new Array(e),n=0;n{"use strict";var lB=kt(),$x=Pu(),sB=_d(),uB=Yy();function fB(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 cB(e){var r=lB.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function Kx(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function vB(e,r){Qx("global",e,r)}function Qx(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):$x.warn("addStyleRule failed"):$x.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function hB(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&Kx(t)}function dB(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 pB(e){var r=r7(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=e7(n);if(a){var i=sB.convertCssMatrix(a);t=uB.multiply(t,t,i)}}),t}function e7(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 r7(e){for(var r=[];gB(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function gB(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function mB(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}t7.exports={getGraphDiv:fB,isPlotDiv:cB,removeElement:Kx,addStyleRule:vB,addRelatedStyleRule:Qx,deleteRelatedStyleRule:hB,setStyleOnHover:dB,getFullTransformMatrix:pB,getElementTransformMatrix:e7,getElementAndAncestors:r7,equalDomRects:mB}});var f1=te((fse,n7)=>{"use strict";n7.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=te((cse,f7)=>{"use strict";var i7=sa().extendFlat,yB=Gs(),o7={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},l7={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},bB=o7.flags.slice().concat(["fullReplot"]),_B=l7.flags.slice().concat("layoutReplot");f7.exports={traces:o7,layout:l7,traceFlags:function(){return a7(bB)},layoutFlags:function(){return a7(_B)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var n=t.split("+"),a=0;a{"use strict";Gy.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};Gy.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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=te((hse,c7)=>{"use strict";c7.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 Qf=te(T0=>{"use strict";var{DATE_FORMAT_LINK:xB,FORMAT_LINK:wB}=Vy(),MB=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function AB({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,wB,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,xB,"for details on the date formatting syntax.",MB].join(" ")}T0.templateFormatStringDescription=AB;T0.hovertemplateAttrs=({editType:e="none",arrayOk:r}={},t={})=>Xf({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});T0.texttemplateAttrs=({editType:e="calc",arrayOk:r}={},t={})=>Xf({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});T0.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:r}={},t={})=>({valType:"string",dflt:"",editType:e});T0.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var Md=te((gse,m7)=>{"use strict";function Ru(e,r){return r?r.d2l(e):e}function v7(e,r){return r?r.l2d(e):e}function TB(e){return e.x0}function kB(e){return e.x1}function SB(e){return e.y0}function CB(e){return e.y1}function h7(e){return e.x0shift||0}function d7(e){return e.x1shift||0}function p7(e){return e.y0shift||0}function g7(e){return e.y1shift||0}function xd(e,r){return Ru(e.x1,r)+d7(e)-Ru(e.x0,r)-h7(e)}function wd(e,r,t){return Ru(e.y1,t)+g7(e)-Ru(e.y0,t)-p7(e)}function LB(e,r){return Math.abs(xd(e,r))}function qB(e,r,t){return Math.abs(wd(e,r,t))}function DB(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(xd(e,r),2)+Math.pow(wd(e,r,t),2))}function EB(e,r){return v7((Ru(e.x1,r)+d7(e)+Ru(e.x0,r)+h7(e))/2,r)}function PB(e,r,t){return v7((Ru(e.y1,t)+g7(e)+Ru(e.y0,t)+p7(e))/2,t)}function RB(e,r,t){return e.type!=="line"?void 0:wd(e,r,t)/xd(e,r)}m7.exports={x0:TB,x1:kB,y0:SB,y1:CB,slope:RB,dx:xd,dy:wd,width:LB,height:qB,length:DB,xcenter:EB,ycenter:PB}});var _7=te((mse,b7)=>{"use strict";var zB=_o().overrideAll,ec=bo(),y7=$a(),NB=Kl().dash,zu=sa().extendFlat,{shapeTexttemplateAttrs:FB,templatefallbackAttrs:IB}=Qf(),HB=Md();b7.exports=zB({newshape:{visible:zu({},ec.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:zu({},ec.legend,{}),legendgroup:zu({},ec.legendgroup,{}),legendgrouptitle:{text:zu({},ec.legendgrouptitle.text,{}),font:y7({})},legendrank:zu({},ec.legendrank,{}),legendwidth:zu({},ec.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:zu({},NB,{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({},ec.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:FB({newshape:!0},{keys:Object.keys(HB)}),texttemplatefallback:IB({editType:"arraydraw"}),font:y7({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var w7=te((yse,x7)=>{"use strict";var BB=Kl().dash,OB=sa().extendFlat;x7.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:OB({},BB,{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 Ad=te((bse,M7)=>{"use strict";M7.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 k0=te((_se,S7)=>{"use strict";var Wy=$a(),UB=f1(),Td=vl(),A7=_7(),T7=w7(),YB=Ad(),k7=sa().extendFlat,kd=Wy({editType:"calc"});kd.family.dflt='"Open Sans", verdana, arial, sans-serif';kd.size.dflt=12;kd.color.dflt=Td.defaultLine;S7.exports={font:kd,title:{text:{valType:"string",editType:"layoutstyle"},font:Wy({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:Wy({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:k7(YB({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:Td.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:Td.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:Td.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:A7.newshape,activeshape:A7.activeshape,newselection:T7.newselection,activeselection:T7.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:k7({},UB.transition,{editType:"none"})}});var C7=te(()=>{(function(){if(!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")){var e=document.createElement("style");e.id="696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var dt=te(Lt=>{"use strict";var S0=Pu(),L7=bd(),q7=Oy(),GB=Gs(),VB=u1().addStyleRule,D7=sa(),WB=bo(),ZB=k0(),XB=D7.extendFlat,Zy=D7.extendDeepAll;Lt.modules={};Lt.allCategories={};Lt.allTypes=[];Lt.subplotsRegistry={};Lt.componentsRegistry={};Lt.layoutArrayContainers=[];Lt.layoutArrayRegexes=[];Lt.traceLayoutAttributes={};Lt.localeRegistry={};Lt.apiMethodRegistry={};Lt.collectableSubplotTypes=null;Lt.register=function(r){if(Lt.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 eO=y0().timeFormat,U7=Ht(),Xy=Pu(),Fu=_0().mod,q0=Rn(),xo=q0.BADNUM,Di=q0.ONEDAY,c1=q0.ONEHOUR,Nu=q0.ONEMIN,L0=q0.ONESEC,v1=q0.EPOCHJD,Vs=dt(),N7=y0().utcFormat,rO=/^\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,tO=/^\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,F7=new Date().getFullYear()-70;function Ws(e){return e&&Vs.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}$n.dateTick0=function(e,r){var t=nO(e,!!r);if(r<2)return t;var n=$n.dateTime2ms(t,e);return n+=Di*(r-1),$n.ms2DateTime(n,0,e)};function nO(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"}$n.dfltRange=function(e){return Ws(e)?Vs.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};$n.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Cd,Ld;$n.dateTime2ms=function(e,r){if($n.isJSDate(e)){var t=e.getTimezoneOffset()*Nu,n=(e.getUTCMinutes()-e.getMinutes())*Nu+(e.getUTCSeconds()-e.getSeconds())*L0+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var a=3*Nu;t=t-a/2+Fu(n-t+a/2,a)}return e=Number(e)-t,e>=Cd&&e<=Ld?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.slice(1),r="");var l=i&&r.slice(0,7)==="chinese",s=e.match(l?tO:rO);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 b=f.charAt(f.length-1)==="i";f=parseInt(f,10),p=y.newDate(u,y.toMonthIndex(u,f,b),v)}else p=y.newDate(u,Number(f),v)}catch(x){return xo}return p?(p.toJD()-v1)*Di+h*c1+d*Nu+m*L0:xo}u.length===2?u=(Number(u)+2e3-F7)%100+F7:u=Number(u),f-=1;var C=new Date(Date.UTC(2e3,f,v,h,d));return C.setUTCFullYear(u),C.getUTCMonth()!==f||C.getUTCDate()!==v?xo:C.getTime()+m*L0};Cd=$n.MIN_MS=$n.dateTime2ms("-9999");Ld=$n.MAX_MS=$n.dateTime2ms("9999-12-31 23:59:59.9999");$n.isDateTime=function(e,r){return $n.dateTime2ms(e,r)!==xo};function C0(e,r){return String(e+Math.pow(10,r)).slice(1)}var Sd=90*Di,I7=3*c1,H7=5*Nu;$n.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Cd&&e<=Ld))return xo;r||(r=0);var n=Math.floor(Fu(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)+v1,h=Math.floor(Fu(e,Di));try{i=Vs.getComponentMethod("calendars","getCal")(t).fromJD(v).formatDate("yyyy-mm-dd")}catch(d){i=N7("G%Y-%m-%d")(new Date(a))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.slice(1);else for(;i.length<10;)i="0"+i;o=r=Cd+Di&&e<=Ld-Di))return xo;var r=Math.floor(Fu(e+.05,1)*10),t=new Date(Math.round(e-r/10)),n=eO("%Y-%m-%d")(t),a=t.getHours(),i=t.getMinutes(),o=t.getSeconds(),l=t.getUTCMilliseconds()*10+r;return Y7(n,a,i,o,l)};function Y7(e,r,t,n,a){if((r||t||n||a)&&(e+=" "+C0(r,2)+":"+C0(t,2),(n||a)&&(e+=":"+C0(n,2),a))){for(var i=4;a%10===0;)i-=1,a/=10;e+="."+C0(a,i)}return e}$n.cleanDate=function(e,r,t){if(e===xo)return r;if($n.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Ws(t))return Xy.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=$n.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!$n.isDateTime(e,t))return Xy.error("unrecognized date",e),r;return e};var aO=/%\d?f/g,iO=/%h/g,oO={1:"1",2:"1",3:"2",4:"2"};function B7(e,r,t,n){e=e.replace(aO,function(i){var o=Math.min(+i.charAt(1)||6,6),l=(r/1e3%1+2).toFixed(o).slice(2).replace(/0+$/,"")||"0";return l});var a=new Date(Math.floor(r+.05));if(e=e.replace(iO,function(){return oO[t("%q")(a)]}),Ws(n))try{e=Vs.getComponentMethod("calendars","worldCalFmt")(e,r,n)}catch(i){return"Invalid"}return t(e)(a)}var lO=[59,59.9,59.99,59.999,59.9999];function sO(e,r){var t=Fu(e+.05,Di),n=C0(Math.floor(t/c1),2)+":"+C0(Fu(Math.floor(t/Nu),60),2);if(r!=="M"){U7(r)||(r=0);var a=Math.min(Fu(e/L0,60),lO[r]),i=(100+a).toFixed(r).slice(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+i}return n}$n.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+` `+i.year;else return sO(e,t)+` -`+B7(i.dayMonthYear,e,n,a);return B7(r,e,n,a)};var O7=3*Di;$n.incrementMonth=function(e,r,t){t=Ws(t)&&t;var n=Fu(e,Di);if(e=Math.round(e-n),t)try{var a=Math.round(e/Di)+v1,i=Vs.getComponentMethod("calendars","getCal")(t),o=i.fromJD(a);return r%12?i.add(o,r,"m"):i.add(o,r/12,"y"),(o.toJD()-v1)*Di+n}catch(s){Zy.error("invalid ms "+e+" in calendar "+t)}var l=new Date(e+O7);return l.setUTCMonth(l.getUTCMonth()+r)+n-O7};$n.findExactDates=function(e,r){for(var t=0,n=0,a=0,i=0,o,l,s=Ws(r)&&Vs.getComponentMethod("calendars","getCal")(r),u=0;u{"use strict";V7.exports=function(r){return r}});var jy=te(Zs=>{"use strict";var uO=Ht(),fO=Pu(),cO=qd(),vO=Rn().BADNUM,Xy=1e-9;Zs.findBin=function(e,r,t){if(uO(r.start))return t?Math.ceil((e-r.start)/r.size-Xy)-1:Math.floor((e-r.start)/r.size+Xy);var n=0,a=r.length,i=0,o=a>1?(r[a-1]-r[0])/(a-1):1,l,s;for(o>=0?s=t?hO:dO:s=t?gO:pO,e+=o*Xy*(t?-1:1)*(o>=0?1:-1);n90&&fO.log("Long binary search..."),n-1};function hO(e,r){return er}function gO(e,r){return e>=r}Zs.sorterAsc=function(e,r){return e-r};Zs.sorterDes=function(e,r){return r-e};Zs.distinctVals=function(e){var r=e.slice();r.sort(Zs.sorterAsc);var t;for(t=r.length-1;t>-1&&r[t]===vO;t--);for(var n=r[t]-r[0]||1,a=n/(t||1)/1e4,i=[],o,l=0;l<=t;l++){var s=r[l],u=s-o;o===void 0?(i.push(s),o=s):u>a&&(n=Math.min(n,u),i.push(s),o=s)}return{vals:i,minDiff:n}};Zs.roundUp=function(e,r,t){for(var n=0,a=r.length-1,i,o=0,l=t?0:1,s=t?1:0,u=t?Math.ceil:Math.floor;n0&&(n=1),t&&n)return e.sort(r)}return n?e:e.reverse()};Zs.findIndexOfMin=function(e,r){r=r||cO;for(var t=1/0,n,a=0;a{"use strict";W7.exports=function(r){return Object.keys(r).sort()}});var Z7=te(Kn=>{"use strict";var h1=Ht(),mO=ji().isArrayOrTypedArray;Kn.aggNums=function(e,r,t,n){var a,i;if((!n||n>t.length)&&(n=t.length),h1(r)||(r=!1),mO(t[0])){for(i=new Array(n),a=0;ae.length-1)return e[e.length-1];var t=r%1;return t*e[Math.ceil(r)]+(1-t)*e[Math.floor(r)]}});var K7=te((Lse,$7)=>{"use strict";var X7=_0(),Jy=X7.mod,yO=X7.modHalf,d1=Math.PI,Iu=2*d1;function bO(e){return e/180*d1}function _O(e){return e/d1*180}function $y(e){return Math.abs(e[1]-e[0])>Iu-1e-14}function j7(e,r){return yO(r-e,Iu)}function xO(e,r){return Math.abs(j7(e,r))}function J7(e,r){if($y(r))return!0;var t,n;r[0]n&&(n+=Iu);var a=Jy(e,Iu),i=a+Iu;return a>=t&&a<=n||i>=t&&i<=n}function wO(e,r,t,n){if(!J7(r,n))return!1;var a,i;return t[0]=a&&e<=i}function Ky(e,r,t,n,a,i,o){a=a||0,i=i||0;var l=$y([t,n]),s,u,f,v,h;l?(s=0,u=d1,f=Iu):t{"use strict";rc.isLeftAnchor=function(r){return r.xanchor==="left"||r.xanchor==="auto"&&r.x<=1/3};rc.isCenterAnchor=function(r){return r.xanchor==="center"||r.xanchor==="auto"&&r.x>1/3&&r.x<2/3};rc.isRightAnchor=function(r){return r.xanchor==="right"||r.xanchor==="auto"&&r.x>=2/3};rc.isTopAnchor=function(r){return r.yanchor==="top"||r.yanchor==="auto"&&r.y>=2/3};rc.isMiddleAnchor=function(r){return r.yanchor==="middle"||r.yanchor==="auto"&&r.y>1/3&&r.y<2/3};rc.isBottomAnchor=function(r){return r.yanchor==="bottom"||r.yanchor==="auto"&&r.y<=1/3}});var tw=te(tc=>{"use strict";var Qy=_0().mod;tc.segmentsIntersect=rw;function rw(e,r,t,n,a,i,o,l){var s=t-e,u=a-e,f=o-a,v=n-r,h=i-r,d=l-i,m=s*d-f*v;if(m===0)return null;var p=(u*d-f*h)/m,y=(u*v-s*h)/m;return y<0||y>1||p<0||p>1?null:{x:e+s*p,y:r+v*p}}tc.segmentDistance=function(r,t,n,a,i,o,l,s){if(rw(r,t,n,a,i,o,l,s))return 0;var u=n-r,f=a-t,v=l-i,h=s-o,d=u*u+f*f,m=v*v+h*h,p=Math.min(Ed(u,f,d,i-r,o-t),Ed(u,f,d,l-r,s-t),Ed(v,h,m,r-i,t-o),Ed(v,h,m,n-i,a-o));return Math.sqrt(p)};function Ed(e,r,t,n,a){var i=n*e+a*r;if(i<0)return n*n+a*a;if(i>t){var o=n-e,l=a-r;return o*o+l*l}else{var s=n*r-a*e;return s*s/t}}var Pd,e2,ew;tc.getTextLocation=function(r,t,n,a){if((r!==e2||a!==ew)&&(Pd={},e2=r,ew=a),Pd[n])return Pd[n];var i=r.getPointAtLength(Qy(n-a/2,t)),o=r.getPointAtLength(Qy(n+a/2,t)),l=Math.atan((o.y-i.y)/(o.x-i.x)),s=r.getPointAtLength(Qy(n,t)),u=(s.x*4+i.x+o.x)/6,f=(s.y*4+i.y+o.y)/6,v={x:u,y:f,theta:l};return Pd[n]=v,v};tc.clearLocationCache=function(){e2=null};tc.getVisibleSegment=function(r,t,n){var a=t.left,i=t.right,o=t.top,l=t.bottom,s=0,u=r.getTotalLength(),f=u,v,h;function d(p){var y=r.getPointAtLength(p);p===0?v=y:p===u&&(h=y);var b=y.xi?y.x-i:0,C=y.yl?y.y-l:0;return Math.sqrt(b*b+C*C)}for(var m=d(s);m;){if(s+=m+n,s>f)return;m=d(s)}for(m=d(f);m;){if(f-=m+n,s>f)return;m=d(f)}return{min:s,max:f,len:f-s,total:u,isClosed:s===0&&f===u&&Math.abs(v.x-h.x)<.1&&Math.abs(v.y-h.y)<.1}};tc.findPointOnPath=function(r,t,n,a){a=a||{};for(var i=a.pathLength||r.getTotalLength(),o=a.tolerance||.001,l=a.iterationLimit||30,s=r.getPointAtLength(0)[n]>r.getPointAtLength(i)[n]?-1:1,u=0,f=0,v=i,h,d,m;u0?v=h:f=h,u++}return d}});var Rd=te(p1=>{"use strict";var Xs={};p1.throttle=function(r,t,n){var a=Xs[r],i=Date.now();if(!a){for(var o in Xs)Xs[o].tsa.ts+t){l();return}a.timer=setTimeout(function(){l(),a.timer=null},t)};p1.done=function(e){var r=Xs[e];return!r||!r.timer?Promise.resolve():new Promise(function(t){var n=r.onDone;r.onDone=function(){n&&n(),t(),r.onDone=null}})};p1.clear=function(e){if(e)nw(Xs[e]),delete Xs[e];else for(var r in Xs)p1.clear(r)};function nw(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var iw=te((Pse,aw)=>{"use strict";aw.exports=function(r){r._responsiveChartHandler&&(window.removeEventListener("resize",r._responsiveChartHandler),delete r._responsiveChartHandler)}});var ow=te((Rse,zd)=>{"use strict";zd.exports=r2;zd.exports.isMobile=r2;zd.exports.default=r2;var kO=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,SO=/CrOS/,CO=/android|ipad|playbook|silk/i;function r2(e){e||(e={});let r=e.ua;if(!r&&typeof navigator!="undefined"&&(r=navigator.userAgent),r&&r.headers&&typeof r.headers["user-agent"]=="string"&&(r=r.headers["user-agent"]),typeof r!="string")return!1;let t=kO.test(r)&&!SO.test(r)||!!e.tablet&&CO.test(r);return!t&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&r.indexOf("Macintosh")!==-1&&r.indexOf("Safari")!==-1&&(t=!0),t}});var sw=te((zse,lw)=>{"use strict";var LO=Ht(),qO=ow();lw.exports=function(r){var t;if(r&&r.hasOwnProperty("userAgent")?t=r.userAgent:t=DO(),typeof t!="string")return!0;var n=qO({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!n)for(var a=t.split(" "),i=1;i-1;l--){var s=a[l];if(s.substr(0,8)==="Version/"){var u=s.substr(8).split(".")[0];if(LO(u)&&(u=+u),u>=13)return!0}}}return n};function DO(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var fw=te((Nse,uw)=>{"use strict";var EO=kt();uw.exports=function(r,t,n){var a=r.selectAll("g."+n.replace(/\s/g,".")).data(t,function(o){return o[0].trace.uid});a.exit().remove(),a.enter().append("g").attr("class",n),a.order();var i=r.classed("rangeplot")?"nodeRangePlot3":"node3";return a.each(function(o){o[0][i]=EO.select(this)}),a}});var vw=te((Fse,cw)=>{"use strict";var PO=dt();cw.exports=function(r,t){for(var n=r._context.locale,a=0;a<2;a++){for(var i=r._context.locales,o=0;o<2;o++){var l=(i[n]||{}).dictionary;if(l){var s=l[t];if(s)return s}i=PO.localeRegistry}var u=n.split("-")[0];if(u===n)break;n=u}return t}});var dw=te((Ise,hw)=>{"use strict";hw.exports=function(r){for(var t={},n=[],a=0,i=0;i{"use strict";pw.exports=function(r){for(var t=NO(r)?zO:RO,n=[],a=0;a{"use strict";mw.exports=function(r,t){if(!t)return r;var n=1/Math.abs(t),a=n>1?(n*r+n*t)/n:r+t,i=String(a).length;if(i>16){var o=String(t).length,l=String(r).length;if(i>=l+o){var s=parseFloat(a).toPrecision(12);s.indexOf("e+")===-1&&(a=+s)}}return a}});var _w=te((Ose,bw)=>{"use strict";var FO=Ht(),IO=Rn().BADNUM,HO=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;bw.exports=function(r){return typeof r=="string"&&(r=r.replace(HO,"")),FO(r)?Number(r):IO}});var pr=te((Use,Pw)=>{"use strict";var g1=kt(),BO=y0().utcFormat,OO=ky().format,kw=Ht(),Sw=Rn(),Cw=Sw.FP_SAFE,UO=-Cw,xw=Sw.BADNUM,Ee=Pw.exports={};Ee.adjustFormat=function(r){return!r||/^\d[.]\df/.test(r)||/[.]\d%/.test(r)?r:r==="0.f"?"~f":/^\d%/.test(r)?"~%":/^\ds/.test(r)?"~s":!/^[~,.0$]/.test(r)&&/[&fps]/.test(r)?"~"+r:r};var ww={};Ee.warnBadFormat=function(e){var r=String(e);ww[r]||(ww[r]=1,Ee.warn('encountered bad format: "'+r+'"'))};Ee.noFormat=function(e){return String(e)};Ee.numberFormat=function(e){var r;try{r=OO(Ee.adjustFormat(e))}catch(t){return Ee.warnBadFormat(e),Ee.noFormat}return r};Ee.nestedProperty=e1();Ee.keyedContainer=h6();Ee.relativeAttr=p6();Ee.isPlainObject=Gs();Ee.toLogRange=vd();Ee.relinkPrivateKeys=b6();var Hu=ji();Ee.isArrayBuffer=Hu.isArrayBuffer;Ee.isTypedArray=Hu.isTypedArray;Ee.isArrayOrTypedArray=Hu.isArrayOrTypedArray;Ee.isArray1D=Hu.isArray1D;Ee.ensureArray=Hu.ensureArray;Ee.concat=Hu.concat;Ee.maxRowLength=Hu.maxRowLength;Ee.minRowLength=Hu.minRowLength;var Lw=_0();Ee.mod=Lw.mod;Ee.modHalf=Lw.modHalf;var Bu=I6();Ee.valObjectMeta=Bu.valObjectMeta;Ee.coerce=Bu.coerce;Ee.coerce2=Bu.coerce2;Ee.coerceFont=Bu.coerceFont;Ee.coercePattern=Bu.coercePattern;Ee.coerceHoverinfo=Bu.coerceHoverinfo;Ee.coerceSelectionMarkerOpacity=Bu.coerceSelectionMarkerOpacity;Ee.validate=Bu.validate;var Ji=G7();Ee.dateTime2ms=Ji.dateTime2ms;Ee.isDateTime=Ji.isDateTime;Ee.ms2DateTime=Ji.ms2DateTime;Ee.ms2DateTimeLocal=Ji.ms2DateTimeLocal;Ee.cleanDate=Ji.cleanDate;Ee.isJSDate=Ji.isJSDate;Ee.formatDate=Ji.formatDate;Ee.incrementMonth=Ji.incrementMonth;Ee.dateTick0=Ji.dateTick0;Ee.dfltRange=Ji.dfltRange;Ee.findExactDates=Ji.findExactDates;Ee.MIN_MS=Ji.MIN_MS;Ee.MAX_MS=Ji.MAX_MS;var nc=jy();Ee.findBin=nc.findBin;Ee.sorterAsc=nc.sorterAsc;Ee.sorterDes=nc.sorterDes;Ee.distinctVals=nc.distinctVals;Ee.roundUp=nc.roundUp;Ee.sort=nc.sort;Ee.findIndexOfMin=nc.findIndexOfMin;Ee.sortObjectKeys=Dd();var js=Z7();Ee.aggNums=js.aggNums;Ee.len=js.len;Ee.mean=js.mean;Ee.geometricMean=js.geometricMean;Ee.median=js.median;Ee.midRange=js.midRange;Ee.variance=js.variance;Ee.stdev=js.stdev;Ee.interp=js.interp;var hl=_d();Ee.init2dArray=hl.init2dArray;Ee.transposeRagged=hl.transposeRagged;Ee.dot=hl.dot;Ee.translationMatrix=hl.translationMatrix;Ee.rotationMatrix=hl.rotationMatrix;Ee.rotationXYMatrix=hl.rotationXYMatrix;Ee.apply3DTransform=hl.apply3DTransform;Ee.apply2DTransform=hl.apply2DTransform;Ee.apply2DTransform2=hl.apply2DTransform2;Ee.convertCssMatrix=hl.convertCssMatrix;Ee.inverseTransformMatrix=hl.inverseTransformMatrix;var Ql=K7();Ee.deg2rad=Ql.deg2rad;Ee.rad2deg=Ql.rad2deg;Ee.angleDelta=Ql.angleDelta;Ee.angleDist=Ql.angleDist;Ee.isFullCircle=Ql.isFullCircle;Ee.isAngleInsideSector=Ql.isAngleInsideSector;Ee.isPtInsideSector=Ql.isPtInsideSector;Ee.pathArc=Ql.pathArc;Ee.pathSector=Ql.pathSector;Ee.pathAnnulus=Ql.pathAnnulus;var E0=Q7();Ee.isLeftAnchor=E0.isLeftAnchor;Ee.isCenterAnchor=E0.isCenterAnchor;Ee.isRightAnchor=E0.isRightAnchor;Ee.isTopAnchor=E0.isTopAnchor;Ee.isMiddleAnchor=E0.isMiddleAnchor;Ee.isBottomAnchor=E0.isBottomAnchor;var P0=tw();Ee.segmentsIntersect=P0.segmentsIntersect;Ee.segmentDistance=P0.segmentDistance;Ee.getTextLocation=P0.getTextLocation;Ee.clearLocationCache=P0.clearLocationCache;Ee.getVisibleSegment=P0.getVisibleSegment;Ee.findPointOnPath=P0.findPointOnPath;var Id=sa();Ee.extendFlat=Id.extendFlat;Ee.extendDeep=Id.extendDeep;Ee.extendDeepAll=Id.extendDeepAll;Ee.extendDeepNoArrays=Id.extendDeepNoArrays;var t2=Pu();Ee.log=t2.log;Ee.warn=t2.warn;Ee.error=t2.error;var YO=w0();Ee.counterRegex=YO.counter;var n2=Rd();Ee.throttle=n2.throttle;Ee.throttleDone=n2.done;Ee.clearThrottle=n2.clear;var dl=u1();Ee.getGraphDiv=dl.getGraphDiv;Ee.isPlotDiv=dl.isPlotDiv;Ee.removeElement=dl.removeElement;Ee.addStyleRule=dl.addStyleRule;Ee.addRelatedStyleRule=dl.addRelatedStyleRule;Ee.deleteRelatedStyleRule=dl.deleteRelatedStyleRule;Ee.setStyleOnHover=dl.setStyleOnHover;Ee.getFullTransformMatrix=dl.getFullTransformMatrix;Ee.getElementTransformMatrix=dl.getElementTransformMatrix;Ee.getElementAndAncestors=dl.getElementAndAncestors;Ee.equalDomRects=dl.equalDomRects;Ee.clearResponsive=iw();Ee.preserveDrawingBuffer=sw();Ee.makeTraceGroups=fw();Ee._=vw();Ee.notifier=Fy();Ee.filterUnique=dw();Ee.filterVisible=gw();Ee.pushUnique=By();Ee.increment=yw();Ee.cleanNumber=_w();Ee.ensureNumber=function(r){return kw(r)?(r=Number(r),r>Cw||r=r?!1:kw(e)&&e>=0&&e%1===0};Ee.noop=bd();Ee.identity=qd();Ee.repeat=function(e,r){for(var t=new Array(r),n=0;nt?Math.max(t,Math.min(r,e)):Math.max(r,Math.min(t,e))};Ee.bBoxIntersect=function(e,r,t){return t=t||0,e.left<=r.right+t&&r.left<=e.right+t&&e.top<=r.bottom+t&&r.top<=e.bottom+t};Ee.simpleMap=function(e,r,t,n,a){for(var i=e.length,o=new Array(i),l=0;l=Math.pow(2,t)?a>10?(Ee.warn("randstr failed uniqueness"),o):e(r,t,n,(a||0)+1):o};Ee.OptionControl=function(e,r){e||(e={}),r||(r="opt");var t={};return t.optionList=[],t._newoption=function(n){n[r]=e,t[n.name]=n,t.optionList.push(n)},t["_"+r]=e,t};Ee.smooth=function(e,r){if(r=Math.round(r)||0,r<2)return e;var t=e.length,n=2*t,a=2*r-1,i=new Array(a),o=new Array(t),l,s,u,f;for(l=0;l=n&&(u-=n*Math.floor(u/n)),u<0?u=-1-u:u>=t&&(u=n-1-u),f+=e[u]*i[s];o[l]=f}return o};Ee.syncOrAsync=function(e,r,t){var n,a;function i(){return Ee.syncOrAsync(e,r,t)}for(;e.length;)if(a=e.splice(0,1)[0],n=a(r),n&&n.then)return n.then(i);return t&&t(r)};Ee.stripTrailingSlash=function(e){return e.substr(-1)==="/"?e.substr(0,e.length-1):e};Ee.noneOrAll=function(e,r,t){if(e){var n=!1,a=!0,i,o;for(i=0;i0?a:0})};Ee.fillArray=function(e,r,t,n){if(n=n||Ee.identity,Ee.isArrayOrTypedArray(e))for(var a=0;aWO.test(window.navigator.userAgent);var ZO=/Firefox\/(\d+)\.\d+/;Ee.getFirefoxVersion=function(){var e=ZO.exec(window.navigator.userAgent);if(e&&e.length===2){var r=parseInt(e[1]);if(!isNaN(r))return r}return null};Ee.isD3Selection=function(e){return e instanceof g1.selection};Ee.ensureSingle=function(e,r,t,n){var a=e.select(r+(t?"."+t:""));if(a.size())return a;var i=e.append(r);return t&&i.classed(t,!0),n&&i.call(n),i};Ee.ensureSingleById=function(e,r,t,n){var a=e.select(r+"#"+t);if(a.size())return a;var i=e.append(r).attr("id",t);return n&&i.call(n),i};Ee.objectFromPath=function(e,r){for(var t=e.split("."),n,a=n={},i=0;i1?a+o[1]:"";if(i&&(o.length>1||l.length>4||t))for(;n.test(l);)l=l.replace(n,"$1"+i+"$2");return l+s};Ee.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var Ew=/^\w*$/;Ee.templateString=function(e,r){var t={};return e.replace(Ee.TEMPLATE_STRING_REGEX,function(n,a){var i;return Ew.test(a)?i=r[a]:(t[a]=t[a]||Ee.nestedProperty(r,a).get,i=t[a](!0)),i!==void 0?i:""})};var JO={max:10,count:0,name:"hovertemplate"};Ee.hovertemplateString=e=>a2(td(Xf({},e),{opts:JO}));var $O={max:10,count:0,name:"texttemplate"};Ee.texttemplateString=e=>a2(td(Xf({},e),{opts:$O}));var KO=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function QO(e){var r=e.match(KO);return r?{key:r[1],op:r[2],number:Number(r[3])}:{key:e,op:null,number:null}}var eU={max:10,count:0,name:"texttemplate",parseMultDiv:!0};Ee.texttemplateStringForShapes=e=>a2(td(Xf({},e),{opts:eU}));var Mw=/^[:|\|]/;function a2({data:e=[],locale:r,fallback:t,labels:n={},opts:a,template:i}){return i.replace(Ee.TEMPLATE_STRING_REGEX,(o,l,s)=>{let u=["xother","yother"].includes(l),f=["_xother","_yother"].includes(l),v=["_xother_","_yother_"].includes(l),h=["xother_","yother_"].includes(l),d=u||f||h||v;(f||v)&&(l=l.substring(1)),(h||v)&&(l=l.substring(0,l.length-1));let m=null,p=null;if(a.parseMultDiv){var y=QO(l);l=y.key,m=y.op,p=y.number}let b;if(d){if(n[l]===void 0)return"";b=n[l]}else for(let A of e)if(A){if(A.hasOwnProperty(l)){b=A[l];break}if(Ew.test(l)||(b=Ee.nestedProperty(A,l).get(!0)),b!==void 0)break}if(b===void 0){let{count:A,max:k,name:M}=a,D=t===!1?o:t;return A=Fd&&o<=Aw,u=l>=Fd&&l<=Aw;if(s&&(n=10*n+o-Fd),u&&(a=10*a+l-Fd),!s||!u){if(n!==a)return n-a;if(o!==l)return o-l}}return a-n};var D0=2e9;Ee.seedPseudoRandom=function(){D0=2e9};Ee.pseudoRandom=function(){var e=D0;return D0=(69069*D0+1)%4294967296,Math.abs(D0-e)<429496729?Ee.pseudoRandom():D0/4294967296};Ee.fillText=function(e,r,t){var n=Array.isArray(t)?function(o){t.push(o)}:function(o){t.text=o},a=Ee.extractOption(e,r,"htx","hovertext");if(Ee.isValidTextValue(a))return n(a);var i=Ee.extractOption(e,r,"tx","text");if(Ee.isValidTextValue(i))return n(i)};Ee.isValidTextValue=function(e){return e||e===0};Ee.formatPercent=function(e,r){r=r||0;for(var t=(Math.round(100*e*Math.pow(10,r))*Math.pow(.1,r)).toFixed(r)+"%",n=0;n1&&(u=1):u=0,Ee.strTranslate(a-u*(t+o),i-u*(n+l))+Ee.strScale(u)+(s?"rotate("+s+(r?"":" "+t+" "+n)+")":"")};Ee.setTransormAndDisplay=function(e,r){e.attr("transform",Ee.getTextTransform(r)),e.style("display",r.scale?null:"none")};Ee.ensureUniformFontSize=function(e,r){var t=Ee.extendFlat({},r);return t.size=Math.max(r.size,e._fullLayout.uniformtext.minsize||0),t};Ee.join2=function(e,r,t){var n=e.length;return n>1?e.slice(0,-1).join(r)+t+e[n-1]:e.join(r)};Ee.bigFont=function(e){return Math.round(1.2*e)};var Tw=Ee.getFirefoxVersion(),rU=Tw!==null&&Tw<86;Ee.getPositionFromD3Event=function(){return rU?[g1.event.layerX,g1.event.layerY]:[g1.event.offsetX,g1.event.offsetY]}});var Nw=te(()=>{"use strict";var tU=pr(),Rw={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(i2 in Rw)zw=i2.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),tU.addStyleRule(zw,Rw[i2]);var zw,i2});var o2=te((Wse,Fw)=>{Fw.exports=!0});var s2=te((Zse,Iw)=>{"use strict";var nU=o2(),l2;typeof window.matchMedia=="function"?l2=!window.matchMedia("(hover: none)").matches:l2=nU;Iw.exports=l2});var Od=te((Xse,u2)=>{"use strict";var R0=typeof Reflect=="object"?Reflect:null,Hw=R0&&typeof R0.apply=="function"?R0.apply:function(r,t,n){return Function.prototype.apply.call(r,t,n)},Hd;R0&&typeof R0.ownKeys=="function"?Hd=R0.ownKeys:Object.getOwnPropertySymbols?Hd=function(r){return Object.getOwnPropertyNames(r).concat(Object.getOwnPropertySymbols(r))}:Hd=function(r){return Object.getOwnPropertyNames(r)};function aU(e){console&&console.warn&&console.warn(e)}var Ow=Number.isNaN||function(r){return r!==r};function Sn(){Sn.init.call(this)}u2.exports=Sn;u2.exports.once=sU;Sn.EventEmitter=Sn;Sn.prototype._events=void 0;Sn.prototype._eventsCount=0;Sn.prototype._maxListeners=void 0;var Bw=10;function Bd(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(Sn,"defaultMaxListeners",{enumerable:!0,get:function(){return Bw},set:function(e){if(typeof e!="number"||e<0||Ow(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");Bw=e}});Sn.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};Sn.prototype.setMaxListeners=function(r){if(typeof r!="number"||r<0||Ow(r))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+r+".");return this._maxListeners=r,this};function Uw(e){return e._maxListeners===void 0?Sn.defaultMaxListeners:e._maxListeners}Sn.prototype.getMaxListeners=function(){return Uw(this)};Sn.prototype.emit=function(r){for(var t=[],n=1;n0&&(o=t[0]),o instanceof Error)throw o;var l=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw l.context=o,l}var s=i[r];if(s===void 0)return!1;if(typeof s=="function")Hw(s,this,t);else for(var u=s.length,f=Zw(s,u),n=0;n0&&o.length>a&&!o.warned){o.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(r)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=r,l.count=o.length,aU(l)}return e}Sn.prototype.addListener=function(r,t){return Yw(this,r,t,!1)};Sn.prototype.on=Sn.prototype.addListener;Sn.prototype.prependListener=function(r,t){return Yw(this,r,t,!0)};function iU(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function Gw(e,r,t){var n={fired:!1,wrapFn:void 0,target:e,type:r,listener:t},a=iU.bind(n);return a.listener=t,n.wrapFn=a,a}Sn.prototype.once=function(r,t){return Bd(t),this.on(r,Gw(this,r,t)),this};Sn.prototype.prependOnceListener=function(r,t){return Bd(t),this.prependListener(r,Gw(this,r,t)),this};Sn.prototype.removeListener=function(r,t){var n,a,i,o,l;if(Bd(t),a=this._events,a===void 0)return this;if(n=a[r],n===void 0)return this;if(n===t||n.listener===t)--this._eventsCount===0?this._events=Object.create(null):(delete a[r],a.removeListener&&this.emit("removeListener",r,n.listener||t));else if(typeof n!="function"){for(i=-1,o=n.length-1;o>=0;o--)if(n[o]===t||n[o].listener===t){l=n[o].listener,i=o;break}if(i<0)return this;i===0?n.shift():oU(n,i),n.length===1&&(a[r]=n[0]),a.removeListener!==void 0&&this.emit("removeListener",r,l||t)}return this};Sn.prototype.off=Sn.prototype.removeListener;Sn.prototype.removeAllListeners=function(r){var t,n,a;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[r]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[r]),this;if(arguments.length===0){var i=Object.keys(n),o;for(a=0;a=0;a--)this.removeListener(r,t[a]);return this};function Vw(e,r,t){var n=e._events;if(n===void 0)return[];var a=n[r];return a===void 0?[]:typeof a=="function"?t?[a.listener||a]:[a]:t?lU(a):Zw(a,a.length)}Sn.prototype.listeners=function(r){return Vw(this,r,!0)};Sn.prototype.rawListeners=function(r){return Vw(this,r,!1)};Sn.listenerCount=function(e,r){return typeof e.listenerCount=="function"?e.listenerCount(r):Ww.call(e,r)};Sn.prototype.listenerCount=Ww;function Ww(e){var r=this._events;if(r!==void 0){var t=r[e];if(typeof t=="function")return 1;if(t!==void 0)return t.length}return 0}Sn.prototype.eventNames=function(){return this._eventsCount>0?Hd(this._events):[]};function Zw(e,r){for(var t=new Array(r),n=0;n{"use strict";var f2=Od().EventEmitter,fU={init:function(e){if(e._ev instanceof f2)return e;var r=new f2,t=new f2;return e._ev=r,e._internalEv=t,e.on=r.on.bind(r),e.once=r.once.bind(r),e.removeListener=r.removeListener.bind(r),e.removeAllListeners=r.removeAllListeners.bind(r),e._internalOn=t.on.bind(t),e._internalOnce=t.once.bind(t),e._removeInternalListener=t.removeListener.bind(t),e._removeAllInternalListeners=t.removeAllListeners.bind(t),e.emit=function(n,a){r.emit(n,a),t.emit(n,a)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,r,t){var n,a=e._ev;if(!a)return;var i=a._events[r];if(!i)return;function o(s){if(s.listener){if(a.removeListener(r,s.listener),!s.fired)return s.fired=!0,s.listener.apply(a,[t])}else return s.apply(a,[t])}i=Array.isArray(i)?i:[i];var l;for(l=0;l{"use strict";var Jw=pr(),cU=Kf().dfltConfig;function vU(e,r){for(var t=[],n,a=0;acU.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};Js.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};Js.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};Js.undo=function(r){var t,n;if(!(r.undoQueue===void 0||isNaN(r.undoQueue.index)||r.undoQueue.index<=0)){for(r.undoQueue.index--,t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,n=0;n=r.undoQueue.queue.length)){for(t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,n=0;n{"use strict";Qw.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var F0=te(ua=>{"use strict";var wo=dt(),y1=pr(),Yd=bo(),v2=k0(),hU=c2(),dU=f1(),pU=Kf().configAttributes,e9=_o(),pl=y1.extendDeepAll,z0=y1.isPlainObject,gU=y1.isArrayOrTypedArray,Gd=y1.nestedProperty,mU=y1.valObjectMeta,h2="_isSubplotObj",Vd="_isLinkedToArray",yU="_arrayAttrRegexps",t9="_deprecated",d2=[h2,Vd,yU,t9];ua.IS_SUBPLOT_OBJ=h2;ua.IS_LINKED_TO_ARRAY=Vd;ua.DEPRECATED=t9;ua.UNDERSCORE_ATTRS=d2;ua.get=function(){var e={};return wo.allTypes.forEach(function(r){e[r]=_U(r)}),{defs:{valObjects:mU,metaKeys:d2.concat(["description","role","editType","impliedEdits"]),editType:{traces:e9.traces,layout:e9.layout},impliedEdits:{}},traces:e,layout:xU(),frames:wU(),animation:N0(dU),config:N0(pU)}};ua.crawl=function(e,r,t,n){var a=t||0;n=n||"",Object.keys(e).forEach(function(i){var o=e[i];if(d2.indexOf(i)===-1){var l=(n?n+".":"")+i;r(o,i,e,a,l),!ua.isValObject(o)&&z0(o)&&i!=="impliedEdits"&&ua.crawl(o,r,a+1,l)}})};ua.isValObject=function(e){return e&&e.valType!==void 0};ua.findArrayAttributes=function(e){var r=[],t=[],n=[],a,i;function o(s,u,f,v){t=t.slice(0,v).concat([u]),n=n.slice(0,v).concat([s&&s._isLinkedToArray]);var h=s&&(s.valType==="data_array"||s.arrayOk===!0)&&!(t[v-1]==="colorbar"&&(u==="ticktext"||u==="tickvals"));h&&l(a,0,"")}function l(s,u,f){var v=s[t[u]],h=f+t[u];if(u===t.length-1)gU(v)&&r.push(i+h);else if(n[u]){if(Array.isArray(v))for(var d=0;d=i.length)return!1;if(e.dimensions===2){if(t++,r.length===t)return e;var o=r[t];if(!Ud(o))return!1;e=i[a][o]}else e=i[a]}else e=i}}return e}function Ud(e){return e===Math.round(e)&&e>=0}function _U(e){var r,t;r=wo.modules[e]._module,t=r.basePlotModule;var n={};n.type=null;var a=pl({},Yd),i=pl({},r.attributes);ua.crawl(i,function(s,u,f,v,h){Gd(a,h).set(void 0),s===void 0&&Gd(i,h).set(void 0)}),pl(n,a),wo.traceIs(e,"noOpacity")&&delete n.opacity,wo.traceIs(e,"showLegend")||(delete n.showlegend,delete n.legendgroup),wo.traceIs(e,"noHover")&&(delete n.hoverinfo,delete n.hoverlabel),r.selectPoints||delete n.selectedpoints,pl(n,i),t.attributes&&pl(n,t.attributes),n.type=e;var o={meta:r.meta||{},categories:r.categories||{},animatable:!!r.animatable,type:e,attributes:N0(n)};if(r.layoutAttributes){var l={};pl(l,r.layoutAttributes),o.layoutAttributes=N0(l)}return r.animatable||ua.crawl(o,function(s){ua.isValObject(s)&&"anim"in s&&delete s.anim}),o}function xU(){var e={},r,t;pl(e,v2);for(r in wo.subplotsRegistry)if(t=wo.subplotsRegistry[r],!!t.layoutAttributes)if(Array.isArray(t.attr))for(var n=0;n{"use strict";var I0=pr(),SU=bo(),Ou="templateitemname",p2={name:{valType:"string",editType:"none"}};p2[Ou]={valType:"string",editType:"calc"};ac.templatedArray=function(e,r){return r._isLinkedToArray=e,r.name=p2.name,r[Ou]=p2[Ou],r};ac.traceTemplater=function(e){var r={},t,n;for(t in e)n=e[t],Array.isArray(n)&&n.length&&(r[t]=0);function a(i){t=I0.coerce(i,{},SU,"type");var o={type:t,_template:null};if(t in r){n=e[t];var l=r[t]%n.length;r[t]++,o._template=n[l]}return o}return{newTrace:a}};ac.newContainer=function(e,r,t){var n=e._template,a=n&&(n[r]||t&&n[t]);I0.isPlainObject(a)||(a=null);var i=e[r]={_template:a};return i};ac.arrayTemplater=function(e,r,t){var n=e._template,a=n&&n[i9(r)],i=n&&n[r];(!Array.isArray(i)||!i.length)&&(i=[]);var o={};function l(u){var f={name:u.name,_input:u},v=f[Ou]=u[Ou];if(!a9(v))return f._template=a,f;for(var h=0;h=n&&(t._input||{})._templateitemname;i&&(a=n);var o=r+"["+a+"]",l;function s(){l={},i&&(l[o]={},l[o][Ou]=i)}s();function u(d,m){l[d]=m}function f(d,m){i?I0.nestedProperty(l[o],d).set(m):l[o+"."+d]=m}function v(){var d=l;return s(),d}function h(d,m){d&&f(d,m);var p=v();for(var y in p)I0.nestedProperty(e,y).set(p[y])}return{modifyBase:u,modifyItem:f,getUpdateObj:v,applyUpdate:h}}});var Ea=te((eue,o9)=>{"use strict";var b1=w0().counter;o9.exports={idRegex:{x:b1("x","( domain)?"),y:b1("y","( domain)?")},attrRegex:b1("[xy]axis"),xAxisMatch:b1("xaxis"),yAxisMatch:b1("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var fa=te(Ei=>{"use strict";var CU=dt(),g2=Ea();Ei.id2name=function(r){if(!(typeof r!="string"||!r.match(g2.AX_ID_PATTERN))){var t=r.split(" ")[0].substr(1);return t==="1"&&(t=""),r.charAt(0)+"axis"+t}};Ei.name2id=function(r){if(r.match(g2.AX_NAME_PATTERN)){var t=r.substr(5);return t==="1"&&(t=""),r.charAt(0)+t}};Ei.cleanId=function(r,t,n){var a=/( domain)$/.test(r);if(!(typeof r!="string"||!r.match(g2.AX_ID_PATTERN))&&!(t&&r.charAt(0)!==t)&&!(a&&!n)){var i=r.split(" ")[0].substr(1).replace(/^0+/,"");return i==="1"&&(i=""),r.charAt(0)+i+(a&&n?" domain":"")}};Ei.list=function(e,r,t){var n=e._fullLayout;if(!n)return[];var a=Ei.listIds(e,r),i=new Array(a.length),o;for(o=0;on?1:-1:+(e.substr(1)||1)-+(r.substr(1)||1)};Ei.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function l9(e,r){if(r&&r.length){for(var t=0;t{"use strict";function LU(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".outline-controllers").remove()}function qU(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}s9.exports={clearOutlineControllers:LU,clearOutline:qU}});var Wd=te((nue,u9)=>{"use strict";u9.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var _1=te(Xd=>{"use strict";var Zd=dt(),aue=Ea().SUBPLOT_PATTERN;Xd.getSubplotCalcData=function(e,r,t){var n=Zd.subplotsRegistry[r];if(!n)return[];for(var a=n.attr,i=[],o=0;o{"use strict";var DU=dt(),H0=pr();ic.manageCommandObserver=function(e,r,t,n){var a={},i=!0;r&&r._commandObserver&&(a=r._commandObserver),a.cache||(a.cache={}),a.lookupTable={};var o=ic.hasSimpleAPICommandBindings(e,t,a.lookupTable);if(r&&r._commandObserver){if(o)return a;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,a}if(o){f9(e,o,a.cache),a.check=function(){if(i){var f=f9(e,o,a.cache);return f.changed&&n&&a.lookupTable[f.value]!==void 0&&(a.disable(),Promise.resolve(n({value:f.value,type:o.type,prop:o.prop,traces:o.traces,index:a.lookupTable[f.value]})).then(a.enable,a.enable)),f.changed}};for(var l=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],s=0;s0?".":"")+a;H0.isPlainObject(i)?m2(i,r,o,n+1):r(o,a,i)}})}});var ca=te((lue,S9)=>{"use strict";var _9=kt(),PU=y0().timeFormatLocale,RU=ky().formatLocale,x1=Ht(),zU=Sy(),Zt=dt(),x9=F0(),NU=_n(),Xr=pr(),w9=Et(),d9=Rn().BADNUM,Pi=fa(),FU=Uu().clearOutline,IU=Wd(),y2=f1(),HU=c2(),BU=_1().getModuleCalcData,p9=Xr.relinkPrivateKeys,oc=Xr._,Pr=S9.exports={};Xr.extendFlat(Pr,Zt);Pr.attributes=bo();Pr.attributes.type.values=Pr.allTypes;Pr.fontAttrs=$a();Pr.layoutAttributes=k0();var Jd=h9();Pr.executeAPICommand=Jd.executeAPICommand;Pr.computeAPICommandBindings=Jd.computeAPICommandBindings;Pr.manageCommandObserver=Jd.manageCommandObserver;Pr.hasSimpleAPICommandBindings=Jd.hasSimpleAPICommandBindings;Pr.redrawText=function(e){return e=Xr.getGraphDiv(e),new Promise(function(r){setTimeout(function(){e._fullLayout&&(Zt.getComponentMethod("annotations","draw")(e),Zt.getComponentMethod("legend","draw")(e),Zt.getComponentMethod("colorbar","draw")(e),r(Pr.previousPromises(e)))},300)})};Pr.resize=function(e){e=Xr.getGraphDiv(e);var r,t=new Promise(function(n,a){(!e||Xr.isHidden(e))&&a(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(r=e._resolveResize),e._resolveResize=n,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||Xr.isHidden(e)){n(e);return}delete e.layout.width,delete e.layout.height;var i=e.changed;e.autoplay=!0,Zt.call("relayout",e,{autosize:!0}).then(function(){e.changed=i,e._resolveResize===n&&(delete e._resolveResize,n(e))})},100)});return r&&r(t),t};Pr.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};Pr.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var r=e._fullLayout,t=Xr.ensureSingle(r._paper,"text","js-plot-link-container",function(s){s.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:w9.defaultLine,"pointer-events":"all"}).each(function(){var u=_9.select(this);u.append("tspan").classed("js-link-to-tool",!0),u.append("tspan").classed("js-link-spacer",!0),u.append("tspan").classed("js-sourcelinks",!0)})}),n=t.node(),a={y:r._paper.attr("height")-9};document.body.contains(n)&&n.getComputedTextLength()>=r.width-20?(a["text-anchor"]="start",a.x=5):(a["text-anchor"]="end",a.x=r._paper.attr("width")-7),t.attr(a);var i=t.select(".js-link-to-tool"),o=t.select(".js-link-spacer"),l=t.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&OU(e,i),o.text(i.text()&&l.text()?" - ":"")}};function OU(e,r){r.text("");var t=r.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)t.on("click",function(){Pr.sendDataToCloud(e)});else{var n=window.location.pathname.split("/"),a=window.location.search;t.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+a})}}Pr.sendDataToCloud=function(e){var r=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(r){e.emit("plotly_beforeexport");var t=_9.select(e).append("div").attr("id","hiddenform").style("display","none"),n=t.append("form").attr({action:r+"/external",method:"post",target:"_blank"}),a=n.append("input").attr({type:"text",name:"data"});return a.node().value=Pr.graphJson(e,!1,"keepdata"),n.node().submit(),t.remove(),e.emit("plotly_afterexport"),!1}};var UU=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],YU=["year","month","dayMonth","dayMonthYear"];Pr.supplyDefaults=function(e,r){var t=r&&r.skipUpdateCalc,n=e._fullLayout||{};if(n._skipDefaults){delete n._skipDefaults;return}var a=e._fullLayout={},i=e.layout||{},o=e._fullData||[],l=e._fullData=[],s=e.data||[],u=e.calcdata||[],f=e._context||{},v;e._transitionData||Pr.createTransitionData(e),a._dfltTitle={plot:oc(e,"Click to enter Plot title"),subtitle:oc(e,"Click to enter Plot subtitle"),x:oc(e,"Click to enter X axis title"),y:oc(e,"Click to enter Y axis title"),colorbar:oc(e,"Click to enter Colorscale title"),annotation:oc(e,"new text")},a._traceWord=oc(e,"trace");var h=g9(e,UU);if(a._mapboxAccessToken=f.mapboxAccessToken,n._initialAutoSizeIsDone){var d=n.width,m=n.height;Pr.supplyLayoutGlobalDefaults(i,a,h),i.width||(a.width=d),i.height||(a.height=m),Pr.sanitizeMargins(a)}else{Pr.supplyLayoutGlobalDefaults(i,a,h);var p=!i.width||!i.height,y=a.autosize,b=f.autosizable,C=p&&(y||b);C?Pr.plotAutoSize(e,i,a):p&&Pr.sanitizeMargins(a),!y&&p&&(i.width=a.width,i.height=a.height)}a._d3locale=WU(h,a.separators),a._extraFormat=g9(e,YU),a._initialAutoSizeIsDone=!0,a._dataLength=s.length,a._modules=[],a._visibleModules=[],a._basePlotModules=[];var x=a._subplots=VU(),_=a._splomAxes={x:{},y:{}},A=a._splomSubplots={};a._splomGridDflt={},a._scatterStackOpts={},a._firstScatter={},a._alignmentOpts={},a._colorAxes={},a._requestRangeslider={},a._traceUids=GU(o,s),Pr.supplyDataDefaults(s,l,i,a);var k=Object.keys(_.x),M=Object.keys(_.y);if(k.length>1&&M.length>1){for(Zt.getComponentMethod("grid","sizeDefaults")(i,a),v=0;v15&&M.length>15&&a.shapes.length===0&&a.images.length===0,Pr.linkSubplots(l,a,o,n),Pr.cleanPlot(l,a,o,n);var W=!!(n._has&&n._has("cartesian")),B=!!(a._has&&a._has("cartesian")),X=W,V=B;X&&!V?n._bgLayer.remove():V&&!X&&(a._shouldCreateBgLayer=!0),n._zoomlayer&&!e._dragging&&FU({_fullLayout:n}),ZU(l,a),p9(a,n),Zt.getComponentMethod("colorscale","crossTraceDefaults")(l,a),a._preGUI||(a._preGUI={}),a._tracePreGUI||(a._tracePreGUI={});var re=a._tracePreGUI,ae={},Q;for(Q in re)ae[Q]="old";for(v=0;v0){var f=1-2*i;o=Math.round(f*o),l=Math.round(f*l)}}var v=Pr.layoutAttributes.width.min,h=Pr.layoutAttributes.height.min;o1,m=!t.height&&Math.abs(n.height-l)>1;(m||d)&&(d&&(n.width=o),m&&(n.height=l)),r._initialAutoSize||(r._initialAutoSize={width:o,height:l}),Pr.sanitizeMargins(n)};Pr.supplyLayoutModuleDefaults=function(e,r,t,n){var a=Zt.componentsRegistry,i=r._basePlotModules,o,l,s,u=Zt.subplotsRegistry.cartesian;for(o in a)s=a[o],s.includeBasePlot&&s.includeBasePlot(e,r);i.length||i.push(u),r._has("cartesian")&&(Zt.getComponentMethod("grid","contentDefaults")(e,r),u.finalizeSubplots(e,r));for(var f in r._subplots)r._subplots[f].sort(Xr.subplotSort);for(l=0;l1&&(t.l/=y,t.r/=y)}if(h){var b=(t.t+t.b)/h;b>1&&(t.t/=b,t.b/=b)}var C=t.xl!==void 0?t.xl:t.x,x=t.xr!==void 0?t.xr:t.x,_=t.yt!==void 0?t.yt:t.y,A=t.yb!==void 0?t.yb:t.y;d[r]={l:{val:C,size:t.l+p},r:{val:x,size:t.r+p},b:{val:A,size:t.b+p},t:{val:_,size:t.t+p}},m[r]=1}if(!n._replotting)return Pr.doAutoMargin(e)}};function jU(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var r=Pi.list(e,"",!0);for(var t in r)if(r[t].autoshift||r[t].shift)return!0;return!1}Pr.doAutoMargin=function(e){var r=e._fullLayout,t=r.width,n=r.height;r._size||(r._size={}),M9(r);var a=r._size,i=r.margin,o={t:0,b:0,l:0,r:0},l=Xr.extendFlat({},a),s=i.l,u=i.r,f=i.t,v=i.b,h=r._pushmargin,d=r._pushmarginIds,m=r.minreducedwidth,p=r.minreducedheight;if(i.autoexpand!==!1){for(var y in h)d[y]||delete h[y];var b=e._fullLayout._reservedMargin;for(var C in b)for(var x in b[C]){var _=b[C][x];o[x]=Math.max(o[x],_)}h.base={l:{val:0,size:s},r:{val:1,size:u},t:{val:1,size:f},b:{val:0,size:v}};for(var A in o){var k=0;for(var M in h)M!=="base"&&x1(h[M][A].size)&&(k=h[M][A].size>k?h[M][A].size:k);var D=Math.max(0,i[A]-k);o[A]=Math.max(0,o[A]-D)}for(var z in h){var F=h[z].l||{},I=h[z].b||{},W=F.val,B=F.size,X=I.val,V=I.size,re=t-o.r-o.l,ae=n-o.t-o.b;for(var Q in h){if(x1(B)&&h[Q].r){var ee=h[Q].r.val,fe=h[Q].r.size;if(ee>W){var he=(B*ee+(fe-re)*W)/(ee-W),Le=(fe*(1-W)+(B-re)*(1-ee))/(ee-W);he+Le>s+u&&(s=he,u=Le)}}if(x1(V)&&h[Q].t){var Ie=h[Q].t.val,ze=h[Q].t.size;if(Ie>X){var Xe=(V*Ie+(ze-ae)*X)/(Ie-X),Ce=(ze*(1-X)+(V-ae)*(1-Ie))/(Ie-X);Xe+Ce>v+f&&(v=Xe,f=Ce)}}}}}var Qe=Xr.constrain(t-i.l-i.r,A9,m),ue=Xr.constrain(n-i.t-i.b,T9,p),ye=Math.max(0,t-Qe),Me=Math.max(0,n-ue);if(ye){var pe=(s+u)/ye;pe>1&&(s/=pe,u/=pe)}if(Me){var U=(v+f)/Me;U>1&&(v/=U,f/=U)}if(a.l=Math.round(s)+o.l,a.r=Math.round(u)+o.r,a.t=Math.round(f)+o.t,a.b=Math.round(v)+o.b,a.p=Math.round(i.pad),a.w=Math.round(t)-a.l-a.r,a.h=Math.round(n)-a.t-a.b,!r._replotting&&(Pr.didMarginChange(l,a)||jU(e))){"_redrawFromAutoMarginCount"in r?r._redrawFromAutoMarginCount++:r._redrawFromAutoMarginCount=1;var K=3*(1+Object.keys(d).length);if(r._redrawFromAutoMarginCount1)return!0}return!1};Pr.graphJson=function(e,r,t,n,a,i){(a&&r&&!e._fullData||a&&!r&&!e._fullLayout)&&Pr.supplyDefaults(e);var o=a?e._fullData:e.data,l=a?e._fullLayout:e.layout,s=(e._transitionData||{})._frames;function u(h,d){if(typeof h=="function")return d?"_function_":null;if(Xr.isPlainObject(h)){var m={},p;return Object.keys(h).sort().forEach(function(x){if(["_","["].indexOf(x.charAt(0))===-1){if(typeof h[x]=="function"){d&&(m[x]="_function");return}if(t==="keepdata"){if(x.substr(x.length-3)==="src")return}else if(t==="keepstream"){if(p=h[x+"src"],typeof p=="string"&&p.indexOf(":")>0&&!Xr.isPlainObject(h.stream))return}else if(t!=="keepall"&&(p=h[x+"src"],typeof p=="string"&&p.indexOf(":")>0))return;m[x]=u(h[x],d)}}),m}var y=Array.isArray(h),b=Xr.isTypedArray(h);if((y||b)&&h.dtype&&h.shape){var C=h.bdata;return u({dtype:h.dtype,shape:h.shape,bdata:Xr.isArrayBuffer(C)?zU.encode(C):C},d)}return y?h.map(function(x){return u(x,d)}):b?Xr.simpleMap(h,Xr.identity):Xr.isJSDate(h)?Xr.ms2DateTimeLocal(+h):h}var f={data:(o||[]).map(function(h){var d=u(h);return r&&delete d.fit,d})};if(!r&&(f.layout=u(l),a)){var v=l._size;f.layout.computed={margin:{b:v.b,l:v.l,r:v.r,t:v.t}}}return s&&(f.frames=u(s)),i&&(f.config=u(e._context,!0)),n==="object"?f:JSON.stringify(f)};Pr.modifyFrames=function(e,r){var t,n,a,i=e._transitionData._frames,o=e._transitionData._frameHash;for(t=0;t0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){n=!0}),t.redraw&&e._transitionData._interruptCallbacks.push(function(){return Zt.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var h=0,d=0;function m(){return h++,function(){d++,!n&&d===h&&l(v)}}t.runFn(m),setTimeout(m())})}function l(v){if(e._transitionData)return i(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(t.redraw)return Zt.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(v)}function s(){if(e._transitionData)return e._transitioning=!1,a(e._transitionData._interruptCallbacks)}var u=[Pr.previousPromises,s,t.prepareFn,Pr.rehover,Pr.reselect,o],f=Xr.syncOrAsync(u,e);return(!f||!f.then)&&(f=Promise.resolve()),f.then(function(){return e})}Pr.doCalcdata=function(e,r){var t=Pi.list(e),n=e._fullData,a=e._fullLayout,i,o,l,s,u=new Array(n.length),f=(e.calcdata||[]).slice();for(e.calcdata=u,a._numBoxes=0,a._numViolins=0,a._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,a._piecolormap={},a._sunburstcolormap={},a._treemapcolormap={},a._iciclecolormap={},a._funnelareacolormap={},l=0;l=0;s--)if(A[s].enabled){i._indexToPoints=A[s]._indexToPoints;break}o&&o.calc&&(_=o.calc(e,i))}(!Array.isArray(_)||!_[0])&&(_=[{x:d9,y:d9}]),_[0].t||(_[0].t={}),_[0].trace=i,u[C]=_}}for(y9(t,n,a),l=0;l{"use strict";lc.xmlns="http://www.w3.org/2000/xmlns/";lc.svg="http://www.w3.org/2000/svg";lc.xlink="http://www.w3.org/1999/xlink";lc.svgAttrs={xmlns:lc.svg,"xmlns:xlink":lc.xlink}});var Ka=te((uue,C9)=>{"use strict";C9.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var vi=te(Mo=>{"use strict";var ra=kt(),$s=pr(),QU=$s.strTranslate,b2=sc(),eY=Ka().LINE_SPACING,rY=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;Mo.convertToTspans=function(e,r,t){var n=e.text(),a=!e.attr("data-notex")&&r&&r._context.typesetMath&&typeof MathJax!="undefined"&&n.match(rY),i=ra.select(e.node().parentNode);if(i.empty())return;var o=e.attr("class")?e.attr("class").split(" ")[0]:"text";o+="-math",i.selectAll("svg."+o).remove(),i.selectAll("g."+o+"-group").remove(),e.style("display",null).attr({"data-unformatted":n,"data-math":"N"});function l(){i.empty()||(o=e.attr("class")+"-math",i.select("svg."+o).remove()),e.text("").style("white-space","pre");var s=dY(e.node(),n);s&&e.style("pointer-events","all"),Mo.positionText(e),t&&t.call(e)}return a?(r&&r._promises||[]).push(new Promise(function(s){e.style("display","none");var u=parseInt(e.node().style.fontSize,10),f={fontSize:u};iY(a[2],f,function(v,h,d){i.selectAll("svg."+o).remove(),i.selectAll("g."+o+"-group").remove();var m=v&&v.select("svg");if(!m||!m.node()){l(),s();return}var p=i.append("g").classed(o+"-group",!0).attr({"pointer-events":"none","data-unformatted":n,"data-math":"Y"});p.node().appendChild(m.node()),h&&h.node()&&m.node().insertBefore(h.node().cloneNode(!0),m.node().firstChild);var y=d.width,b=d.height;m.attr({class:o,height:b,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var C=e.node().style.fill||"black",x=m.select("g");x.attr({fill:C,stroke:C});var _=x.node().getBoundingClientRect(),A=_.width,k=_.height;(A>y||k>b)&&(m.style("overflow","hidden"),_=m.node().getBoundingClientRect(),A=_.width,k=_.height);var M=+e.attr("x"),D=+e.attr("y"),z=u||e.node().getBoundingClientRect().height,F=-z/4;if(o[0]==="y")p.attr({transform:"rotate("+[-90,M,D]+")"+QU(-A/2,F-k/2)});else if(o[0]==="l")D=F-k/2;else if(o[0]==="a"&&o.indexOf("atitle")!==0)M=0,D=F;else{var I=e.attr("text-anchor");M=M-A*(I==="middle"?.5:I==="end"?1:0),D=D+F-k/2}m.attr({x:M,y:D}),t&&t.call(e,p),s(p)})})):l(),e};var tY=/(<|<|<)/g,nY=/(>|>|>)/g;function aY(e){return e.replace(tY,"\\lt ").replace(nY,"\\gt ")}var L9=[["$","$"],["\\(","\\)"]];function iY(e,r,t){var n=parseInt((MathJax.version||"").split(".")[0]);if(n!==2&&n!==3){$s.warn("No MathJax version:",MathJax.version);return}var a,i,o,l,s=function(){return i=$s.extendDeepAll({},MathJax.Hub.config),o=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:L9},displayAlign:"left"})},u=function(){i=$s.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=L9},f=function(){if(a=MathJax.Hub.config.menuSettings.renderer,a!=="SVG")return MathJax.Hub.setRenderer("SVG")},v=function(){a=MathJax.config.startup.output,a!=="svg"&&(MathJax.config.startup.output="svg")},h=function(){var C="math-output-"+$s.randstr({},64);l=ra.select("body").append("div").attr({id:C}).style({visibility:"hidden",position:"absolute","font-size":r.fontSize+"px"}).text(aY(e));var x=l.node();return n===2?MathJax.Hub.Typeset(x):MathJax.typeset([x])},d=function(){var C=l.select(n===2?".MathJax_SVG":".MathJax"),x=!C.empty()&&l.select("svg").node();if(!x)$s.log("There was an error in the tex syntax.",e),t();else{var _=x.getBoundingClientRect(),A;n===2?A=ra.select("body").select("#MathJax_SVG_glyphs"):A=C.select("defs"),t(C,A,_)}l.remove()},m=function(){if(a!=="SVG")return MathJax.Hub.setRenderer(a)},p=function(){a!=="svg"&&(MathJax.config.startup.output=a)},y=function(){return o!==void 0&&(MathJax.Hub.processSectionDelay=o),MathJax.Hub.Config(i)},b=function(){MathJax.config=i};n===2?MathJax.Hub.Queue(s,f,h,d,m,y):n===3&&(u(),v(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){h(),d(),p(),b()}))}var P9={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},oY={sub:"0.3em",sup:"-0.6em"},lY={sub:"-0.21em",sup:"0.42em"},q9="\u200B",D9=["http:","https:","mailto:","",void 0,":"],R9=Mo.NEWLINES=/(\r\n?|\n)/g,x2=/(<[^<>]*>)/,w2=/<(\/?)([^ >]*)(\s+(.*))?>/i,sY=//i;Mo.BR_TAG_ALL=//gi;var z9=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,N9=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,F9=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,uY=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function uc(e,r){if(!e)return null;var t=e.match(r),n=t&&(t[3]||t[4]);return n&&$d(n)}var fY=/(^|;)\s*color:/;Mo.plainText=function(e,r){r=r||{};for(var t=r.len!==void 0&&r.len!==-1?r.len:1/0,n=r.allowedTags!==void 0?r.allowedTags:["br"],a="...",i=a.length,o=e.split(x2),l=[],s="",u=0,f=0;fi?l.push(v.substr(0,p-i)+a):l.push(v.substr(0,p));break}s=""}}return l.join("")};var cY={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},vY=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function $d(e){return e.replace(vY,function(r,t){var n;return t.charAt(0)==="#"?n=hY(t.charAt(1)==="x"?parseInt(t.substr(2),16):parseInt(t.substr(1),10)):n=cY[t],n||r})}Mo.convertEntities=$d;function hY(e){if(!(e>1114111)){var r=String.fromCodePoint;if(r)return r(e);var t=String.fromCharCode;return e<=65535?t(e):t((e>>10)+55232,e%1024+56320)}}function dY(e,r){r=r.replace(R9," ");var t=!1,n=[],a,i=-1;function o(){i++;var k=document.createElementNS(b2.svg,"tspan");ra.select(k).attr({class:"line",dy:i*eY+"em"}),e.appendChild(k),a=k;var M=n;if(n=[{node:k}],M.length>1)for(var D=1;D.",r);return}var M=n.pop();k!==M.type&&$s.log("Start tag <"+M.type+"> doesnt match end tag <"+k+">. Pretending it did match.",r),a=n[n.length-1].node}var f=sY.test(r);f?o():(a=e,n=[{node:e}]);for(var v=r.split(x2),h=0;h{"use strict";var pY=kt(),Qd=Jl(),M1=Ht(),Kd=pr(),H9=Et(),gY=Jf().isValid;function mY(e,r,t){var n=r?Kd.nestedProperty(e,r).get()||{}:e,a=n[t||"color"];a&&a._inputArray&&(a=a._inputArray);var i=!1;if(Kd.isArrayOrTypedArray(a)){for(var o=0;o=0;n--,a++){var i=e[n];t[a]=[1-i[0],i[1]]}return t}function V9(e,r){r=r||{};for(var t=e.domain,n=e.range,a=n.length,i=new Array(a),o=0;o{"use strict";var Z9=Gy(),bY=Z9.FORMAT_LINK,_Y=Z9.DATE_FORMAT_LINK;function xY(e,r){return{valType:"string",dflt:"",editType:"none",description:(r?M2:X9)("hover text",e)+["By default the values are formatted using "+(r?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function M2(e,r){return["Sets the "+e+" formatting rule"+(r?"for `"+r+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+bY+"."].join(" ")}function X9(e,r){return M2(e,r)+[" And for dates see: "+_Y+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}j9.exports={axisHoverFormat:xY,descriptionOnlyNumbers:M2,descriptionWithDates:X9}});var gl=te((due,v8)=>{"use strict";var J9=$a(),B0=vl(),c8=Kl().dash,k2=sa().extendFlat,$9=_n().templatedArray,hue=Qf().templateFormatStringDescription,K9=A2().descriptionWithDates,wY=Rn().ONEDAY,rs=Ea(),MY=rs.HOUR_PATTERN,AY=rs.WEEKDAY_PATTERN,T2={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},TY=k2({},T2,{values:T2.values.slice().concat(["sync"])});function Q9(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var e8={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},r8={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},t8={valType:"data_array",editType:"ticks"},n8={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function a8(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=5),r}function i8(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var o8={valType:"color",dflt:B0.defaultLine,editType:"ticks"},l8={valType:"color",dflt:B0.lightLine,editType:"ticks"};function s8(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var u8=k2({},c8,{editType:"ticks"}),f8={valType:"boolean",editType:"ticks"};v8.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:B0.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:J9({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[rs.idRegex.x.toString(),rs.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[rs.idRegex.x.toString(),rs.idRegex.y.toString()],editType:"calc"},rangebreaks:$9("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[AY,MY,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:wY},editType:"calc"}),tickmode:TY,nticks:Q9(),tick0:e8,dtick:r8,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:t8,ticktext:{valType:"data_array",editType:"ticks"},ticks:n8,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:a8(),tickwidth:i8(),tickcolor:o8,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:k2({},c8,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:J9({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:K9("tick label")},tickformatstops:$9("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:K9("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:B0.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:f8,gridcolor:l8,gridwidth:s8(),griddash:u8,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:B0.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:B0.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",rs.idRegex.x.toString(),rs.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",rs.idRegex.x.toString(),rs.idRegex.y.toString()],editType:"plot"},minor:{tickmode:T2,nticks:Q9("minor"),tick0:e8,dtick:r8,tickvals:t8,ticks:n8,ticklen:a8("minor"),tickwidth:i8("minor"),tickcolor:o8,gridcolor:l8,gridwidth:s8("minor"),griddash:u8,showgrid:f8,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var ep=te((pue,p8)=>{"use strict";var Cn=gl(),h8=$a(),d8=sa().extendFlat,kY=_o().overrideAll;p8.exports=kY({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:Cn.linecolor,outlinewidth:Cn.linewidth,bordercolor:Cn.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:Cn.minor.tickmode,nticks:Cn.nticks,tick0:Cn.tick0,dtick:Cn.dtick,tickvals:Cn.tickvals,ticktext:Cn.ticktext,ticks:d8({},Cn.ticks,{dflt:""}),ticklabeloverflow:d8({},Cn.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:Cn.ticklen,tickwidth:Cn.tickwidth,tickcolor:Cn.tickcolor,ticklabelstep:Cn.ticklabelstep,showticklabels:Cn.showticklabels,labelalias:Cn.labelalias,tickfont:h8({}),tickangle:Cn.tickangle,tickformat:Cn.tickformat,tickformatstops:Cn.tickformatstops,tickprefix:Cn.tickprefix,showtickprefix:Cn.showtickprefix,ticksuffix:Cn.ticksuffix,showticksuffix:Cn.showticksuffix,separatethousands:Cn.separatethousands,exponentformat:Cn.exponentformat,minexponent:Cn.minexponent,showexponent:Cn.showexponent,title:{text:{valType:"string"},font:h8({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var O0=te((mue,m8)=>{"use strict";var SY=ep(),CY=w0().counter,LY=Dd(),g8=Jf().scales,gue=LY(g8);function rp(e){return"`"+e+"`"}m8.exports=function(r,t){r=r||"",t=t||{};var n=t.cLetter||"c",a="onlyIfNumerical"in t?t.onlyIfNumerical:!!r,i="noScale"in t?t.noScale:r==="marker.line",o="showScaleDflt"in t?t.showScaleDflt:n==="z",l=typeof t.colorscaleDflt=="string"?g8[t.colorscaleDflt]:null,s=t.editTypeOverride||"",u=r?r+".":"",f,v;"colorAttr"in t?(f=t.colorAttr,v=t.colorAttr):(f={z:"z",c:"color"}[n],v="in "+rp(u+f));var h=a?" Has an effect only if "+v+" is set to a numerical array.":"",d=n+"auto",m=n+"min",p=n+"max",y=n+"mid",b=rp(u+d),C=rp(u+m),x=rp(u+p),_=C+" and "+x,A={};A[m]=A[p]=void 0;var k={};k[d]=!1;var M={};return f==="color"&&(M.color={valType:"color",arrayOk:!0,editType:s||"style"},t.anim&&(M.color.anim=!0)),M[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:A},M[m]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:k},M[p]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:k},M[y]={valType:"number",dflt:null,editType:"calc",impliedEdits:A},M.colorscale={valType:"colorscale",editType:"calc",dflt:l,impliedEdits:{autocolorscale:!1}},M.autocolorscale={valType:"boolean",dflt:t.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},M.reversescale={valType:"boolean",dflt:!1,editType:"plot"},i||(M.showscale={valType:"boolean",dflt:o,editType:"calc"},M.colorbar=SY),t.noColorAxis||(M.coloraxis={valType:"subplotid",regex:CY("coloraxis"),dflt:null,editType:"calc"}),M}});var C2=te((yue,y8)=>{"use strict";var qY=sa().extendFlat,DY=O0(),S2=Jf().scales;y8.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:S2.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:S2.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:S2.RdBu,editType:"calc"}},coloraxis:qY({_isSubplotObj:!0,editType:"calc"},DY("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var L2=te((bue,b8)=>{"use strict";var EY=pr();b8.exports=function(r){return EY.isPlainObject(r.colorbar)}});var E2=te(D2=>{"use strict";var q2=Ht(),_8=pr(),x8=Rn(),PY=x8.ONEDAY,RY=x8.ONEWEEK;D2.dtick=function(e,r){var t=r==="log",n=r==="date",a=r==="category",i=n?PY:1;if(!e)return i;if(q2(e))return e=Number(e),e<=0?i:a?Math.max(1,Math.round(e)):n?Math.max(.1,e):e;if(typeof e!="string"||!(n||t))return i;var o=e.charAt(0),l=e.substr(1);return l=q2(l)?Number(l):0,l<=0||!(n&&o==="M"&&l===Math.round(l)||t&&o==="L"||t&&o==="D"&&(l===1||l===2))?i:e};D2.tick0=function(e,r,t,n){if(r==="date")return _8.cleanDate(e,_8.dateTick0(t,n%RY===0?1:0));if(!(n==="D1"||n==="D2"))return q2(e)?Number(e):0}});var P2=te((xue,M8)=>{"use strict";var w8=E2(),zY=pr().isArrayOrTypedArray,NY=ji().isTypedArraySpec,FY=ji().decodeTypedArraySpec;M8.exports=function(r,t,n,a,i){i||(i={});var o=i.isMinor,l=o?r.minor||{}:r,s=o?t.minor:t,u=o?"minor.":"";function f(C){var x=l[C];return NY(x)&&(x=FY(x)),x!==void 0?x:(s._template||{})[C]}var v=f("tick0"),h=f("dtick"),d=f("tickvals"),m=zY(d)?"array":h?"linear":"auto",p=n(u+"tickmode",m);if(p==="auto"||p==="sync")n(u+"nticks");else if(p==="linear"){var y=s.dtick=w8.dtick(h,a);s.tick0=w8.tick0(v,a,t.calendar,y)}else if(a!=="multicategory"){var b=n(u+"tickvals");b===void 0?s.tickmode="auto":o||n("ticktext")}}});var z2=te((wue,T8)=>{"use strict";var R2=pr(),A8=gl();T8.exports=function(r,t,n,a){var i=a.isMinor,o=i?r.minor||{}:r,l=i?t.minor:t,s=i?A8.minor:A8,u=i?"minor.":"",f=R2.coerce2(o,l,s,"ticklen",i?(t.ticklen||5)*.6:void 0),v=R2.coerce2(o,l,s,"tickwidth",i?t.tickwidth||1:void 0),h=R2.coerce2(o,l,s,"tickcolor",(i?t.tickcolor:void 0)||l.color),d=n(u+"ticks",!i&&a.outerTicks||f||v||h?"outside":"");d||(delete l.ticklen,delete l.tickwidth,delete l.tickcolor)}});var N2=te((Mue,k8)=>{"use strict";k8.exports=function(r){var t=["showexponent","showtickprefix","showticksuffix"],n=t.filter(function(i){return r[i]!==void 0}),a=function(i){return r[i]===r[n[0]]};if(n.every(a)||n.length===1)return r[n[0]]}});var ml=te((Aue,S8)=>{"use strict";var tp=pr(),IY=_n();S8.exports=function(r,t,n){var a=n.name,i=n.inclusionAttr||"visible",o=t[a],l=tp.isArrayOrTypedArray(r[a])?r[a]:[],s=t[a]=[],u=IY.arrayTemplater(t,a,i),f,v;for(f=0;f{"use strict";var F2=pr(),HY=Et().contrast,C8=gl(),BY=N2(),OY=ml();L8.exports=function(r,t,n,a,i){i||(i={});var o=n("labelalias");F2.isPlainObject(o)||delete t.labelalias;var l=BY(r),s=n("showticklabels");if(s){i.noTicklabelshift||n("ticklabelshift"),i.noTicklabelstandoff||n("ticklabelstandoff");var u=i.font||{},f=t.color,v=t.ticklabelposition||"",h=v.indexOf("inside")!==-1?HY(i.bgColor):f&&f!==C8.color.dflt?f:u.color;if(F2.coerceFont(n,"tickfont",u,{overrideDflt:{color:h}}),!i.noTicklabelstep&&a!=="multicategory"&&a!=="log"&&n("ticklabelstep"),!i.noAng){var d=n("tickangle");!i.noAutotickangles&&d==="auto"&&n("autotickangles")}if(a!=="category"){var m=n("tickformat");OY(r,t,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:UY}),t.tickformatstops.length||delete t.tickformatstops,!i.noExp&&!m&&a!=="date"&&(n("showexponent",l),n("exponentformat"),n("minexponent"),n("separatethousands"))}!i.noMinorloglabels&&a==="log"&&n("minorloglabels")}};function UY(e,r){function t(a,i){return F2.coerce(e,r,C8.tickformatstops,a,i)}var n=t("enabled");n&&(t("dtickrange"),t("value"))}});var H2=te((kue,q8)=>{"use strict";var YY=N2();q8.exports=function(r,t,n,a,i){i||(i={});var o=i.tickSuffixDflt,l=YY(r),s=n("tickprefix");s&&n("showtickprefix",l);var u=n("ticksuffix",o);u&&n("showticksuffix",l)}});var B2=te((Sue,D8)=>{"use strict";var Yu=pr(),GY=_n(),VY=P2(),WY=z2(),ZY=I2(),XY=H2(),jY=ep();D8.exports=function(r,t,n){var a=GY.newContainer(t,"colorbar"),i=r.colorbar||{};function o(I,W){return Yu.coerce(i,a,jY,I,W)}var l=n.margin||{t:0,b:0,l:0,r:0},s=n.width-l.l-l.r,u=n.height-l.t-l.b,f=o("orientation"),v=f==="v",h=o("thicknessmode");o("thickness",h==="fraction"?30/(v?s:u):30);var d=o("lenmode");o("len",d==="fraction"?1:v?u:s);var m=o("yref"),p=o("xref"),y=m==="paper",b=p==="paper",C,x,_,A="left";v?(_="middle",A=b?"left":"right",C=b?1.02:1,x=.5):(_=y?"bottom":"top",A="center",C=.5,x=y?1.02:1),Yu.coerce(i,a,{x:{valType:"number",min:b?-2:0,max:b?3:1,dflt:C}},"x"),Yu.coerce(i,a,{y:{valType:"number",min:y?-2:0,max:y?3:1,dflt:x}},"y"),o("xanchor",A),o("xpad"),o("yanchor",_),o("ypad"),Yu.noneOrAll(i,a,["x","y"]),o("outlinecolor"),o("outlinewidth"),o("bordercolor"),o("borderwidth"),o("bgcolor");var k=Yu.coerce(i,a,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:v?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");o("ticklabeloverflow",k.indexOf("inside")!==-1?"hide past domain":"hide past div"),VY(i,a,o,"linear");var M=n.font,D={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:M};k.indexOf("inside")!==-1&&(D.bgColor="black"),XY(i,a,o,"linear",D),ZY(i,a,o,"linear",D),WY(i,a,o,"linear",D),o("title.text",n._dfltTitle.colorbar);var z=a.showticklabels?a.tickfont:M,F=Yu.extendFlat({},M,{family:z.family,size:Yu.bigFont(z.size)});Yu.coerceFont(o,"title.font",F),o("title.side",v?"top":"right")}});var U0=te((Cue,R8)=>{"use strict";var E8=Ht(),U2=pr(),JY=L2(),$Y=B2(),P8=Jf().isValid,KY=dt().traceIs;function O2(e,r){var t=r.slice(0,r.length-1);return r?U2.nestedProperty(e,t).get()||{}:e}R8.exports=function e(r,t,n,a,i){var o=i.prefix,l=i.cLetter,s="_module"in t,u=O2(r,o),f=O2(t,o),v=O2(t._template||{},o)||{},h=function(){return delete r.coloraxis,delete t.coloraxis,e(r,t,n,a,i)};if(s){var d=n._colorAxes||{},m=a(o+"coloraxis");if(m){var p=KY(t,"contour")&&U2.nestedProperty(t,"contours.coloring").get()||"heatmap",y=d[m];y?(y[2].push(h),y[0]!==p&&(y[0]=!1,U2.warn(["Ignoring coloraxis:",m,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[m]=[p,t,[h]];return}}var b=u[l+"min"],C=u[l+"max"],x=E8(b)&&E8(C)&&b{"use strict";var z8=pr(),QY=_n(),N8=C2(),eG=U0();F8.exports=function(r,t){function n(v,h){return z8.coerce(r,t,N8,v,h)}n("colorscale.sequential"),n("colorscale.sequentialminus"),n("colorscale.diverging");var a=t._colorAxes,i,o;function l(v,h){return z8.coerce(i,o,N8.coloraxis,v,h)}for(var s in a){var u=a[s];if(u[0])i=r[s]||{},o=QY.newContainer(t,s,"coloraxis"),o._name=s,eG(i,o,t,l,{prefix:"",cLetter:"c"});else{for(var f=0;f{"use strict";var rG=pr(),tG=es().hasColorscale,nG=es().extractOpts;H8.exports=function(r,t){function n(f,v){var h=f["_"+v];h!==void 0&&(f[v]=h)}function a(f,v){var h=v.container?rG.nestedProperty(f,v.container).get():f;if(h)if(h.coloraxis)h._colorAx=t[h.coloraxis];else{var d=nG(h),m=d.auto;(m||d.min===void 0)&&n(h,v.min),(m||d.max===void 0)&&n(h,v.max),d.autocolorscale&&n(h,"colorscale")}}for(var i=0;i{"use strict";var O8=Ht(),Y2=pr(),aG=es().extractOpts;U8.exports=function(r,t,n){var a=r._fullLayout,i=n.vals,o=n.containerStr,l=o?Y2.nestedProperty(t,o).get():t,s=aG(l),u=s.auto!==!1,f=s.min,v=s.max,h=s.mid,d=function(){return Y2.aggNums(Math.min,null,i)},m=function(){return Y2.aggNums(Math.max,null,i)};if(f===void 0?f=d():u&&(l._colorAx&&O8(f)?f=Math.min(f,d()):f=d()),v===void 0?v=m():u&&(l._colorAx&&O8(v)?v=Math.max(v,m()):v=m()),u&&h!==void 0&&(v-h>h-f?f=h-(v-h):v-h=0?p=a.colorscale.sequential:p=a.colorscale.sequentialminus,s._sync("colorscale",p)}}});var ip=te((Eue,Y8)=>{"use strict";var ap=Jf(),Y0=es();Y8.exports={moduleType:"component",name:"colorscale",attributes:O0(),layoutAttributes:C2(),supplyLayoutDefaults:I8(),handleDefaults:U0(),crossTraceDefaults:B8(),calc:np(),scales:ap.scales,defaultScale:ap.defaultScale,getScale:ap.get,isValidScale:ap.isValid,hasColorscale:Y0.hasColorscale,extractOpts:Y0.extractOpts,extractScale:Y0.extractScale,flipScale:Y0.flipScale,makeColorScaleFunc:Y0.makeColorScaleFunc,makeColorScaleFuncFromTrace:Y0.makeColorScaleFuncFromTrace}});var Qa=te((Pue,V8)=>{"use strict";var G8=pr(),iG=ji().isTypedArraySpec;V8.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var r=e.marker;return G8.isPlainObject(r)&&(G8.isArrayOrTypedArray(r.size)||iG(r.size))}}});var Z8=te((Rue,W8)=>{"use strict";var oG=Ht();W8.exports=function(r,t){t||(t=2);var n=r.marker,a=n.sizeref||1,i=n.sizemin||0,o=n.sizemode==="area"?function(l){return Math.sqrt(l/a)}:function(l){return l/a};return function(l){var s=o(l/t);return oG(s)&&s>0?Math.max(s,i):0}}});var Gu=te(Ia=>{"use strict";var op=pr();Ia.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};Ia.isTraceInSubplots=function(e,r){if(e.type==="splom"){for(var t=e.xaxes||[],n=e.yaxes||[],a=0;a=0&&t.index{J8.exports=cG;var G2={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},fG=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function cG(e){var r=[];return e.replace(fG,function(t,n,a){var i=n.toLowerCase();for(a=hG(a),i=="m"&&a.length>2&&(r.push([n].concat(a.splice(0,2))),i="l",n=n=="m"?"l":"L");;){if(a.length==G2[i])return a.unshift(n),r.push(a);if(a.length{"use strict";var dG=V2(),Cr=function(e,r){return r?Math.round(e*(r=Math.pow(10,r)))/r:Math.round(e)},gt="M0,0Z",$8=Math.sqrt(2),Vu=Math.sqrt(3),W2=Math.PI,Z2=Math.cos,X2=Math.sin;tM.exports={circle:{n:0,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a="M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z";return t?yt(r,t,a):a}},square:{n:1,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")}},diamond:{n:2,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.3,2);return yt(r,t,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"Z")}},cross:{n:3,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.4,2),a=Cr(e*1.2,2);return yt(r,t,"M"+a+","+n+"H"+n+"V"+a+"H-"+n+"V"+n+"H-"+a+"V-"+n+"H-"+n+"V-"+a+"H"+n+"V-"+n+"H"+a+"Z")}},x:{n:4,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.8/$8,2),a="l"+n+","+n,i="l"+n+",-"+n,o="l-"+n+",-"+n,l="l-"+n+","+n;return yt(r,t,"M0,"+n+a+i+o+i+o+l+o+l+a+l+a+"Z")}},"triangle-up":{n:5,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2/Vu,2),a=Cr(e/2,2),i=Cr(e,2);return yt(r,t,"M-"+n+","+a+"H"+n+"L0,-"+i+"Z")}},"triangle-down":{n:6,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2/Vu,2),a=Cr(e/2,2),i=Cr(e,2);return yt(r,t,"M-"+n+",-"+a+"H"+n+"L0,"+i+"Z")}},"triangle-left":{n:7,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2/Vu,2),a=Cr(e/2,2),i=Cr(e,2);return yt(r,t,"M"+a+",-"+n+"V"+n+"L-"+i+",0Z")}},"triangle-right":{n:8,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2/Vu,2),a=Cr(e/2,2),i=Cr(e,2);return yt(r,t,"M-"+a+",-"+n+"V"+n+"L"+i+",0Z")}},"triangle-ne":{n:9,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.6,2),a=Cr(e*1.2,2);return yt(r,t,"M-"+a+",-"+n+"H"+n+"V"+a+"Z")}},"triangle-se":{n:10,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.6,2),a=Cr(e*1.2,2);return yt(r,t,"M"+n+",-"+a+"V"+n+"H-"+a+"Z")}},"triangle-sw":{n:11,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.6,2),a=Cr(e*1.2,2);return yt(r,t,"M"+a+","+n+"H-"+n+"V-"+a+"Z")}},"triangle-nw":{n:12,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.6,2),a=Cr(e*1.2,2);return yt(r,t,"M-"+n+","+a+"V-"+n+"H"+a+"Z")}},pentagon:{n:13,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.951,2),a=Cr(e*.588,2),i=Cr(-e,2),o=Cr(e*-.309,2),l=Cr(e*.809,2);return yt(r,t,"M"+n+","+o+"L"+a+","+l+"H-"+a+"L-"+n+","+o+"L0,"+i+"Z")}},hexagon:{n:14,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a=Cr(e/2,2),i=Cr(e*Vu/2,2);return yt(r,t,"M"+i+",-"+a+"V"+a+"L0,"+n+"L-"+i+","+a+"V-"+a+"L0,-"+n+"Z")}},hexagon2:{n:15,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a=Cr(e/2,2),i=Cr(e*Vu/2,2);return yt(r,t,"M-"+a+","+i+"H"+a+"L"+n+",0L"+a+",-"+i+"H-"+a+"L-"+n+",0Z")}},octagon:{n:16,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.924,2),a=Cr(e*.383,2);return yt(r,t,"M-"+a+",-"+n+"H"+a+"L"+n+",-"+a+"V"+a+"L"+a+","+n+"H-"+a+"L-"+n+","+a+"V-"+a+"Z")}},star:{n:17,f:function(e,r,t){if(mt(r))return gt;var n=e*1.4,a=Cr(n*.225,2),i=Cr(n*.951,2),o=Cr(n*.363,2),l=Cr(n*.588,2),s=Cr(-n,2),u=Cr(n*-.309,2),f=Cr(n*.118,2),v=Cr(n*.809,2),h=Cr(n*.382,2);return yt(r,t,"M"+a+","+u+"H"+i+"L"+o+","+f+"L"+l+","+v+"L0,"+h+"L-"+l+","+v+"L-"+o+","+f+"L-"+i+","+u+"H-"+a+"L0,"+s+"Z")}},hexagram:{n:18,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.66,2),a=Cr(e*.38,2),i=Cr(e*.76,2);return yt(r,t,"M-"+i+",0l-"+a+",-"+n+"h"+i+"l"+a+",-"+n+"l"+a+","+n+"h"+i+"l-"+a+","+n+"l"+a+","+n+"h-"+i+"l-"+a+","+n+"l-"+a+",-"+n+"h-"+i+"Z")}},"star-triangle-up":{n:19,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*Vu*.8,2),a=Cr(e*.8,2),i=Cr(e*1.6,2),o=Cr(e*4,2),l="A "+o+","+o+" 0 0 1 ";return yt(r,t,"M-"+n+","+a+l+n+","+a+l+"0,-"+i+l+"-"+n+","+a+"Z")}},"star-triangle-down":{n:20,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*Vu*.8,2),a=Cr(e*.8,2),i=Cr(e*1.6,2),o=Cr(e*4,2),l="A "+o+","+o+" 0 0 1 ";return yt(r,t,"M"+n+",-"+a+l+"-"+n+",-"+a+l+"0,"+i+l+n+",-"+a+"Z")}},"star-square":{n:21,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.1,2),a=Cr(e*2,2),i="A "+a+","+a+" 0 0 1 ";return yt(r,t,"M-"+n+",-"+n+i+"-"+n+","+n+i+n+","+n+i+n+",-"+n+i+"-"+n+",-"+n+"Z")}},"star-diamond":{n:22,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.4,2),a=Cr(e*1.9,2),i="A "+a+","+a+" 0 0 1 ";return yt(r,t,"M-"+n+",0"+i+"0,"+n+i+n+",0"+i+"0,-"+n+i+"-"+n+",0Z")}},"diamond-tall":{n:23,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.7,2),a=Cr(e*1.4,2);return yt(r,t,"M0,"+a+"L"+n+",0L0,-"+a+"L-"+n+",0Z")}},"diamond-wide":{n:24,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.4,2),a=Cr(e*.7,2);return yt(r,t,"M0,"+a+"L"+n+",0L0,-"+a+"L-"+n+",0Z")}},hourglass:{n:25,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M"+n+","+n+"H-"+n+"L"+n+",-"+n+"H-"+n+"Z")},noDot:!0},bowtie:{n:26,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M"+n+","+n+"V-"+n+"L-"+n+","+n+"V-"+n+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a=Cr(e/$8,2);return yt(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.3,2);return yt(r,t,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM0,-"+n+"V"+n+"M-"+n+",0H"+n)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.3,2),a=Cr(e*.65,2);return yt(r,t,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM-"+a+",-"+a+"L"+a+","+a+"M-"+a+","+a+"L"+a+",-"+a)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.4,2);return yt(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.2,2),a=Cr(e*.85,2);return yt(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e/2,2),a=Cr(e,2);return yt(r,t,"M"+n+","+a+"V-"+a+"M"+(n-a)+",-"+a+"V"+a+"M"+a+","+n+"H-"+a+"M-"+a+","+(n-a)+"H"+a)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.2,2),a=Cr(e*1.6,2),i=Cr(e*.8,2);return yt(r,t,"M-"+n+","+i+"L0,0M"+n+","+i+"L0,0M0,-"+a+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.2,2),a=Cr(e*1.6,2),i=Cr(e*.8,2);return yt(r,t,"M-"+n+",-"+i+"L0,0M"+n+",-"+i+"L0,0M0,"+a+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.2,2),a=Cr(e*1.6,2),i=Cr(e*.8,2);return yt(r,t,"M"+i+","+n+"L0,0M"+i+",-"+n+"L0,0M-"+a+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.2,2),a=Cr(e*1.6,2),i=Cr(e*.8,2);return yt(r,t,"M-"+i+","+n+"L0,0M-"+i+",-"+n+"L0,0M"+a+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.4,2);return yt(r,t,"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.4,2);return yt(r,t,"M0,"+n+"V-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M"+n+","+n+"L-"+n+",-"+n)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a=Cr(e*2,2);return yt(r,t,"M0,0L-"+n+","+a+"H"+n+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a=Cr(e*2,2);return yt(r,t,"M0,0L-"+n+",-"+a+"H"+n+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2,2),a=Cr(e,2);return yt(r,t,"M0,0L"+n+",-"+a+"V"+a+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2,2),a=Cr(e,2);return yt(r,t,"M0,0L-"+n+",-"+a+"V"+a+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a=Cr(e*2,2);return yt(r,t,"M-"+n+",0H"+n+"M0,0L-"+n+","+a+"H"+n+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a=Cr(e*2,2);return yt(r,t,"M-"+n+",0H"+n+"M0,0L-"+n+",-"+a+"H"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2,2),a=Cr(e,2);return yt(r,t,"M0,-"+a+"V"+a+"M0,0L"+n+",-"+a+"V"+a+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2,2),a=Cr(e,2);return yt(r,t,"M0,-"+a+"V"+a+"M0,0L-"+n+",-"+a+"V"+a+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,r,t){if(mt(r))return gt;var n=W2/2.5,a=2*e*Z2(n),i=2*e*X2(n);return yt(r,t,"M0,0L"+-a+","+i+"L"+a+","+i+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,r,t){if(mt(r))return gt;var n=W2/4,a=2*e*Z2(n),i=2*e*X2(n);return yt(r,t,"M0,0L"+-a+","+i+"A "+2*e+","+2*e+" 0 0 1 "+a+","+i+"Z")},backoff:.4,noDot:!0}};function mt(e){return e===null}var K8,Q8,eM,rM;function yt(e,r,t){if((!e||e%360===0)&&!r)return t;if(eM===e&&rM===r&&K8===t)return Q8;eM=e,rM=r,K8=t;function n(y,b){var C=Z2(y),x=X2(y),_=b[0],A=b[1]+(r||0);return[_*C-A*x,_*x+A*C]}for(var a=e/180*W2,i=0,o=0,l=dG(t),s="",u=0;u{"use strict";var ya=kt(),un=pr(),pG=un.numberFormat,hc=Ht(),e3=Jl(),sp=dt(),Pa=Et(),gG=ip(),T1=un.strTranslate,up=vi(),mG=sc(),yG=Ka(),bG=yG.LINE_SPACING,hM=md().DESELECTDIM,_G=Qa(),xG=Z8(),wG=Gu().appendArrayPointValue,zr=MM.exports={};zr.font=function(e,r){var t=r.variant,n=r.style,a=r.weight,i=r.color,o=r.size,l=r.family,s=r.shadow,u=r.lineposition,f=r.textcase;l&&e.style("font-family",l),o+1&&e.style("font-size",o+"px"),i&&e.call(Pa.fill,i),a&&e.style("font-weight",a),n&&e.style("font-style",n),t&&e.style("font-variant",t),f&&e.style("text-transform",j2(AG(f))),s&&e.style("text-shadow",s==="auto"?up.makeTextShadow(Pa.contrast(i)):j2(s)),u&&e.style("text-decoration-line",j2(TG(u)))};function j2(e){return e==="none"?void 0:e}var MG={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function AG(e){return MG[e]}function TG(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}zr.setPosition=function(e,r,t){e.attr("x",r).attr("y",t)};zr.setSize=function(e,r,t){e.attr("width",r).attr("height",t)};zr.setRect=function(e,r,t,n,a){e.call(zr.setPosition,r,t).call(zr.setSize,n,a)};zr.translatePoint=function(e,r,t,n){var a=t.c2p(e.x),i=n.c2p(e.y);if(hc(a)&&hc(i)&&r.node())r.node().nodeName==="text"?r.attr("x",a).attr("y",i):r.attr("transform",T1(a,i));else return!1;return!0};zr.translatePoints=function(e,r,t){e.each(function(n){var a=ya.select(this);zr.translatePoint(n,a,r,t)})};zr.hideOutsideRangePoint=function(e,r,t,n,a,i){r.attr("display",t.isPtWithinRange(e,a)&&n.isPtWithinRange(e,i)?null:"none")};zr.hideOutsideRangePoints=function(e,r){if(r._hasClipOnAxisFalse){var t=r.xaxis,n=r.yaxis;e.each(function(a){var i=a[0].trace,o=i.xcalendar,l=i.ycalendar,s=sp.traceIs(i,"bar-like")?".bartext":".point,.textpoint";e.selectAll(s).each(function(u){zr.hideOutsideRangePoint(u,ya.select(this),t,n,o,l)})})}};zr.crispRound=function(e,r,t){return!r||!hc(r)?t||0:e._context.staticPlot?r:r<1?1:Math.round(r)};zr.singleLineStyle=function(e,r,t,n,a){r.style("fill","none");var i=(((e||[])[0]||{}).trace||{}).line||{},o=t||i.width||0,l=a||i.dash||"";Pa.stroke(r,n||i.color),zr.dashLine(r,l,o)};zr.lineGroupStyle=function(e,r,t,n){e.style("fill","none").each(function(a){var i=(((a||[])[0]||{}).trace||{}).line||{},o=r||i.width||0,l=n||i.dash||"";ya.select(this).call(Pa.stroke,t||i.color).call(zr.dashLine,l,o)})};zr.dashLine=function(e,r,t){t=+t||0,r=zr.dashStyle(r,t),e.style({"stroke-dasharray":r,"stroke-width":t+"px"})};zr.dashStyle=function(e,r){r=+r||1;var t=Math.max(r,3);return e==="solid"?e="":e==="dot"?e=t+"px,"+t+"px":e==="dash"?e=3*t+"px,"+3*t+"px":e==="longdash"?e=5*t+"px,"+5*t+"px":e==="dashdot"?e=3*t+"px,"+t+"px,"+t+"px,"+t+"px":e==="longdashdot"&&(e=5*t+"px,"+2*t+"px,"+t+"px,"+2*t+"px"),e};function dM(e,r,t,n){var a=r.fillpattern,i=r.fillgradient,o=zr.getPatternAttr,l=a&&(o(a.shape,0,"")||o(a.path,0,""));if(l){var s=o(a.bgcolor,0,null),u=o(a.fgcolor,0,null),f=a.fgopacity,v=o(a.size,0,8),h=o(a.solidity,0,.3),d=r.uid;zr.pattern(e,"point",t,d,l,v,h,void 0,a.fillmode,s,u,f)}else if(i&&i.type!=="none"){var m=i.type,p="scatterfill-"+r.uid;if(n&&(p="legendfill-"+r.uid),!n&&(i.start!==void 0||i.stop!==void 0)){var y,b;m==="horizontal"?(y={x:i.start,y:0},b={x:i.stop,y:0}):m==="vertical"&&(y={x:0,y:i.start},b={x:0,y:i.stop}),y.x=r._xA.c2p(y.x===void 0?r._extremes.x.min[0].val:y.x,!0),y.y=r._yA.c2p(y.y===void 0?r._extremes.y.min[0].val:y.y,!0),b.x=r._xA.c2p(b.x===void 0?r._extremes.x.max[0].val:b.x,!0),b.y=r._yA.c2p(b.y===void 0?r._extremes.y.max[0].val:b.y,!0),e.call(mM,t,p,"linear",i.colorscale,"fill",y,b,!0,!1)}else m==="horizontal"&&(m=m+"reversed"),e.call(zr.gradient,t,p,m,i.colorscale,"fill")}else r.fillcolor&&e.call(Pa.fill,r.fillcolor)}zr.singleFillStyle=function(e,r){var t=ya.select(e.node()),n=t.data(),a=((n[0]||[])[0]||{}).trace||{};dM(e,a,r,!1)};zr.fillGroupStyle=function(e,r,t){e.style("stroke-width",0).each(function(n){var a=ya.select(this);n[0].trace&&dM(a,n[0].trace,r,t)})};var aM=nM();zr.symbolNames=[];zr.symbolFuncs=[];zr.symbolBackOffs=[];zr.symbolNeedLines={};zr.symbolNoDot={};zr.symbolNoFill={};zr.symbolList=[];Object.keys(aM).forEach(function(e){var r=aM[e],t=r.n;zr.symbolList.push(t,String(t),e,t+100,String(t+100),e+"-open"),zr.symbolNames[t]=e,zr.symbolFuncs[t]=r.f,zr.symbolBackOffs[t]=r.backoff||0,r.needLine&&(zr.symbolNeedLines[t]=!0),r.noDot?zr.symbolNoDot[t]=!0:zr.symbolList.push(t+200,String(t+200),e+"-dot",t+300,String(t+300),e+"-open-dot"),r.noFill&&(zr.symbolNoFill[t]=!0)});var kG=zr.symbolNames.length,SG="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";zr.symbolNumber=function(e){if(hc(e))e=+e;else if(typeof e=="string"){var r=0;e.indexOf("-open")>0&&(r=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(r+=200,e=e.replace("-dot","")),e=zr.symbolNames.indexOf(e),e>=0&&(e+=r)}return e%100>=kG||e>=400?0:Math.floor(Math.max(e,0))};function pM(e,r,t,n){var a=e%100;return zr.symbolFuncs[a](r,t,n)+(e>=200?SG:"")}var iM=pG("~f"),gM={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};zr.gradient=function(e,r,t,n,a,i){var o=gM[n];return mM(e,r,t,o.type,a,i,o.start,o.stop,!1,o.reversed)};function mM(e,r,t,n,a,i,o,l,s,u){var f=a.length,v;n==="linear"?v={node:"linearGradient",attrs:{x1:o.x,y1:o.y,x2:l.x,y2:l.y,gradientUnits:s?"userSpaceOnUse":"objectBoundingBox"},reversed:u}:n==="radial"&&(v={node:"radialGradient",reversed:u});for(var h=new Array(f),d=0;d=0&&e.i===void 0&&(e.i=i.i),r.style("opacity",n.selectedOpacityFn?n.selectedOpacityFn(e):e.mo===void 0?o.opacity:e.mo),n.ms2mrc){var s;e.ms==="various"||o.size==="various"?s=3:s=n.ms2mrc(e.ms),e.mrc=s,n.selectedSizeFn&&(s=e.mrc=n.selectedSizeFn(e));var u=zr.symbolNumber(e.mx||o.symbol)||0;e.om=u%200>=100;var f=n3(e,t),v=t3(e,t);r.attr("d",pM(u,s,f,v))}var h=!1,d,m,p;if(e.so)p=l.outlierwidth,m=l.outliercolor,d=o.outliercolor;else{var y=(l||{}).width;p=(e.mlw+1||y+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?m=e.mlcc=n.lineScale(e.mlc):un.isArrayOrTypedArray(l.color)?m=Pa.defaultLine:m=l.color,un.isArrayOrTypedArray(o.color)&&(d=Pa.defaultLine,h=!0),"mc"in e?d=e.mcc=n.markerScale(e.mc):d=o.color||o.colors||"rgba(0,0,0,0)",n.selectedColorFn&&(d=n.selectedColorFn(e))}if(e.om)r.call(Pa.stroke,d).style({"stroke-width":(p||1)+"px",fill:"none"});else{r.style("stroke-width",(e.isBlank?0:p)+"px");var b=o.gradient,C=e.mgt;C?h=!0:C=b&&b.type,un.isArrayOrTypedArray(C)&&(C=C[0],gM[C]||(C=0));var x=o.pattern,_=zr.getPatternAttr,A=x&&(_(x.shape,e.i,"")||_(x.path,e.i,""));if(C&&C!=="none"){var k=e.mgc;k?h=!0:k=b.color;var M=t.uid;h&&(M+="-"+e.i),zr.gradient(r,a,M,C,[[0,k],[1,d]],"fill")}else if(A){var D=!1,z=x.fgcolor;!z&&i&&i.color&&(z=i.color,D=!0);var F=_(z,e.i,i&&i.color||null),I=_(x.bgcolor,e.i,null),W=x.fgopacity,B=_(x.size,e.i,8),X=_(x.solidity,e.i,.3);D=D||e.mcc||un.isArrayOrTypedArray(x.shape)||un.isArrayOrTypedArray(x.path)||un.isArrayOrTypedArray(x.bgcolor)||un.isArrayOrTypedArray(x.fgcolor)||un.isArrayOrTypedArray(x.size)||un.isArrayOrTypedArray(x.solidity);var V=t.uid;D&&(V+="-"+e.i),zr.pattern(r,"point",a,V,A,B,X,e.mcc,x.fillmode,I,F,W)}else un.isArrayOrTypedArray(d)?Pa.fill(r,d[e.i]):Pa.fill(r,d);p&&Pa.stroke(r,m)}};zr.makePointStyleFns=function(e){var r={},t=e.marker;return r.markerScale=zr.tryColorscale(t,""),r.lineScale=zr.tryColorscale(t,"line"),sp.traceIs(e,"symbols")&&(r.ms2mrc=_G.isBubble(e)?xG(e):function(){return(t.size||6)/2}),e.selectedpoints&&un.extendFlat(r,zr.makeSelectedPointStyleFns(e)),r};zr.makeSelectedPointStyleFns=function(e){var r={},t=e.selected||{},n=e.unselected||{},a=e.marker||{},i=t.marker||{},o=n.marker||{},l=a.opacity,s=i.opacity,u=o.opacity,f=s!==void 0,v=u!==void 0;(un.isArrayOrTypedArray(l)||f||v)&&(r.selectedOpacityFn=function(_){var A=_.mo===void 0?a.opacity:_.mo;return _.selected?f?s:A:v?u:hM*A});var h=a.color,d=i.color,m=o.color;(d||m)&&(r.selectedColorFn=function(_){var A=_.mcc||h;return _.selected?d||A:m||A});var p=a.size,y=i.size,b=o.size,C=y!==void 0,x=b!==void 0;return sp.traceIs(e,"symbols")&&(C||x)&&(r.selectedSizeFn=function(_){var A=_.mrc||p/2;return _.selected?C?y/2:A:x?b/2:A}),r};zr.makeSelectedTextStyleFns=function(e){var r={},t=e.selected||{},n=e.unselected||{},a=e.textfont||{},i=t.textfont||{},o=n.textfont||{},l=a.color,s=i.color,u=o.color;return r.selectedTextColorFn=function(f){var v=f.tc||l;return f.selected?s||v:u||(s?v:Pa.addOpacity(v,hM))},r};zr.selectedPointStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=zr.makeSelectedPointStyleFns(r),n=r.marker||{},a=[];t.selectedOpacityFn&&a.push(function(i,o){i.style("opacity",t.selectedOpacityFn(o))}),t.selectedColorFn&&a.push(function(i,o){Pa.fill(i,t.selectedColorFn(o))}),t.selectedSizeFn&&a.push(function(i,o){var l=o.mx||n.symbol||0,s=t.selectedSizeFn(o);i.attr("d",pM(zr.symbolNumber(l),s,n3(o,r),t3(o,r))),o.mrc2=s}),a.length&&e.each(function(i){for(var o=ya.select(this),l=0;l0?t:0}zr.textPointStyle=function(e,r,t){if(e.size()){var n;if(r.selectedpoints){var a=zr.makeSelectedTextStyleFns(r);n=a.selectedTextColorFn}var i=r.texttemplate,o=t._fullLayout;e.each(function(l){var s=ya.select(this),u=i?un.extractOption(l,r,"txt","texttemplate"):un.extractOption(l,r,"tx","text");if(!u&&u!==0){s.remove();return}if(i){var f=r._module.formatLabels,v=f?f(l,r,o):{},h={};wG(h,r,l.i),u=un.texttemplateString({data:[h,l,r._meta],fallback:r.texttemplatefallback,labels:v,locale:o._d3locale,template:u})}var d=l.tp||r.textposition,m=bM(l,r),p=n?n(l):l.tc||r.textfont.color;s.call(zr.font,{family:l.tf||r.textfont.family,weight:l.tw||r.textfont.weight,style:l.ty||r.textfont.style,variant:l.tv||r.textfont.variant,textcase:l.tC||r.textfont.textcase,lineposition:l.tE||r.textfont.lineposition,shadow:l.tS||r.textfont.shadow,size:m,color:p}).text(u).call(up.convertToTspans,t).call(yM,d,m,l.mrc)})}};zr.selectedTextStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=zr.makeSelectedTextStyleFns(r);e.each(function(n){var a=ya.select(this),i=t.selectedTextColorFn(n),o=n.tp||r.textposition,l=bM(n,r);Pa.fill(a,i);var s=sp.traceIs(r,"bar-like");yM(a,o,l,n.mrc2||n.mrc,s)})}};var oM=.5;zr.smoothopen=function(e,r){if(e.length<3)return"M"+e.join("L");var t="M"+e[0],n=[],a;for(a=1;a=s||_>=f&&_<=s)&&(A<=v&&A>=u||A>=v&&A<=u)&&(e=[_,A])}return e}zr.applyBackoff=wM;zr.makeTester=function(){var e=un.ensureSingleById(ya.select("body"),"svg","js-plotly-tester",function(t){t.attr(mG.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),r=un.ensureSingle(e,"path","js-reference-point",function(t){t.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});zr.tester=e,zr.testref=r};zr.savedBBoxes={};var $2=0,qG=1e4;zr.bBox=function(e,r,t){t||(t=lM(e));var n;if(t){if(n=zr.savedBBoxes[t],n)return un.extendFlat({},n)}else if(e.childNodes.length===1){var a=e.childNodes[0];if(t=lM(a),t){var i=+a.getAttribute("x")||0,o=+a.getAttribute("y")||0,l=a.getAttribute("transform");if(!l){var s=zr.bBox(a,!1,t);return i&&(s.left+=i,s.right+=i),o&&(s.top+=o,s.bottom+=o),s}if(t+="~"+i+"~"+o+"~"+l,n=zr.savedBBoxes[t],n)return un.extendFlat({},n)}}var u,f;r?u=e:(f=zr.tester.node(),u=e.cloneNode(!0),f.appendChild(u)),ya.select(u).attr("transform",null).call(up.positionText,0,0);var v=u.getBoundingClientRect(),h=zr.testref.node().getBoundingClientRect();r||f.removeChild(u);var d={height:v.height,width:v.width,left:v.left-h.left,top:v.top-h.top,right:v.right-h.left,bottom:v.bottom-h.top};return $2>=qG&&(zr.savedBBoxes={},$2=0),t&&(zr.savedBBoxes[t]=d),$2++,un.extendFlat({},d)};function lM(e){var r=e.getAttribute("data-unformatted");if(r!==null)return r+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}zr.setClipUrl=function(e,r,t){e.attr("clip-path",r3(r,t))};function r3(e,r){if(!e)return null;var t=r._context,n=t._exportedPlot?"":t._baseUrl||"";return n?"url('"+n+"#"+e+"')":"url(#"+e+")"}zr.getTranslate=function(e){var r=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",n=e[t]("transform")||"",a=n.replace(r,function(i,o,l){return[o,l].join(" ")}).split(" ");return{x:+a[0]||0,y:+a[1]||0}};zr.setTranslate=function(e,r,t){var n=/(\btranslate\(.*?\);?)/,a=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",o=e[a]("transform")||"";return r=r||0,t=t||0,o=o.replace(n,"").trim(),o+=T1(r,t),o=o.trim(),e[i]("transform",o),o};zr.getScale=function(e){var r=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",n=e[t]("transform")||"",a=n.replace(r,function(i,o,l){return[o,l].join(" ")}).split(" ");return{x:+a[0]||1,y:+a[1]||1}};zr.setScale=function(e,r,t){var n=/(\bscale\(.*?\);?)/,a=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",o=e[a]("transform")||"";return r=r||1,t=t||1,o=o.replace(n,"").trim(),o+="scale("+r+","+t+")",o=o.trim(),e[i]("transform",o),o};var DG=/\s*sc.*/;zr.setPointGroupScale=function(e,r,t){if(r=r||1,t=t||1,!!e){var n=r===1&&t===1?"":"scale("+r+","+t+")";e.each(function(){var a=(this.getAttribute("transform")||"").replace(DG,"");a+=n,a=a.trim(),this.setAttribute("transform",a)})}};var EG=/translate\([^)]*\)\s*$/;zr.setTextPointsScale=function(e,r,t){e&&e.each(function(){var n,a=ya.select(this),i=a.select("text");if(i.node()){var o=parseFloat(i.attr("x")||0),l=parseFloat(i.attr("y")||0),s=(a.attr("transform")||"").match(EG);r===1&&t===1?n=[]:n=[T1(o,l),"scale("+r+","+t+")",T1(-o,-l)],s&&n.push(s),a.attr("transform",n.join(""))}})};function t3(e,r){var t;return e&&(t=e.mf),t===void 0&&(t=r.marker&&r.marker.standoff||0),!r._geo&&!r._xA?-t:t}zr.getMarkerStandoff=t3;var A1=Math.atan2,fc=Math.cos,V0=Math.sin;function sM(e,r){var t=r[0],n=r[1];return[t*fc(e)-n*V0(e),t*V0(e)+n*fc(e)]}var uM,fM,cM,vM,K2,Q2;function n3(e,r){var t=e.ma;t===void 0&&(t=r.marker.angle,(!t||un.isArrayOrTypedArray(t))&&(t=0));var n,a,i=r.marker.angleref;if(i==="previous"||i==="north"){if(r._geo){var o=r._geo.project(e.lonlat);n=o[0],a=o[1]}else{var l=r._xA,s=r._yA;if(l&&s)n=l.c2p(e.x),a=s.c2p(e.y);else return 90}if(r._geo){var u=e.lonlat[0],f=e.lonlat[1],v=r._geo.project([u,f+1e-5]),h=r._geo.project([u+1e-5,f]),d=A1(h[1]-a,h[0]-n),m=A1(v[1]-a,v[0]-n),p;if(i==="north")p=t/180*Math.PI;else if(i==="previous"){var y=u/180*Math.PI,b=f/180*Math.PI,C=uM/180*Math.PI,x=fM/180*Math.PI,_=C-y,A=fc(x)*V0(_),k=V0(x)*fc(b)-fc(x)*V0(b)*fc(_);p=-A1(A,k)-Math.PI,uM=u,fM=f}var M=sM(d,[fc(p),0]),D=sM(m,[V0(p),0]);t=A1(M[1]+D[1],M[0]+D[0])/Math.PI*180,i==="previous"&&!(Q2===r.uid&&e.i===K2+1)&&(t=null)}if(i==="previous"&&!r._geo)if(Q2===r.uid&&e.i===K2+1&&hc(n)&&hc(a)){var z=n-cM,F=a-vM,I=r.line&&r.line.shape||"",W=I.slice(I.length-1);W==="h"&&(F=0),W==="v"&&(z=0),t+=A1(F,z)/Math.PI*180+90}else t=null}return cM=n,vM=a,K2=e.i,Q2=r.uid,t}zr.getMarkerAngle=n3});var k1=te((Hue,SM)=>{"use strict";var W0=kt(),PG=Ht(),RG=ca(),a3=dt(),dc=pr(),AM=dc.strTranslate,fp=fn(),cp=Et(),Z0=vi(),TM=md(),zG=Ka().OPPOSITE_SIDE,kM=/ [XY][0-9]* /,i3=1.6,o3=1.6;function NG(e,r,t){var n=e._fullLayout,a=t.propContainer,i=t.propName,o=t.placeholder,l=t.traceIndex,s=t.avoid||{},u=t.attributes,f=t.transform,v=t.containerGroup,h=1,d=a.title,m=(d&&d.text?d.text:"").trim(),p=!1,y=d&&d.font?d.font:{},b=y.family,C=y.size,x=y.color,_=y.weight,A=y.style,k=y.variant,M=y.textcase,D=y.lineposition,z=y.shadow,F=t.subtitlePropName,I=!!F,W=t.subtitlePlaceholder,B=(a.title||{}).subtitle||{text:"",font:{}},X=(B.text||"").trim(),V=!1,re=1,ae=B.font,Q=ae.family,ee=ae.size,fe=ae.color,he=ae.weight,Le=ae.style,Ie=ae.variant,ze=ae.textcase,Xe=ae.lineposition,Ce=ae.shadow,Qe;i==="title.text"?Qe="titleText":i.indexOf("axis")!==-1?Qe="axisTitleText":i.indexOf("colorbar")!==-1&&(Qe="colorbarTitleText");var ue=e._context.edits[Qe];function ye(lr,vr){return lr===void 0||vr===void 0?!1:lr.replace(kM," % ")===vr.replace(kM," % ")}m===""?h=0:ye(m,o)&&(ue||(m=""),h=.2,p=!0),I&&(X===""?re=0:ye(X,W)&&(ue||(X=""),re=.2,V=!0)),t._meta?m=dc.templateString(m,t._meta):n._meta&&(m=dc.templateString(m,n._meta));var Me=m||X||ue,pe;v||(v=dc.ensureSingle(n._infolayer,"g","g-"+r),pe=n._hColorbarMoveTitle);var U=v.selectAll("text."+r).data(Me?[0]:[]);U.enter().append("text"),U.text(m).attr("class",r),U.exit().remove();var K=null,$=r+"-subtitle",ke=X||ue;if(I&&(K=v.selectAll("text."+$).data(ke?[0]:[]),K.enter().append("text"),K.text(X).attr("class",$),K.exit().remove()),!Me)return v;function Be(lr,vr){dc.syncOrAsync([Ne,ir],{title:lr,subtitle:vr})}function Ne(lr){var vr=lr.title,Je=lr.subtitle,dr;!f&&pe&&(f={}),f?(dr="",f.rotate&&(dr+="rotate("+[f.rotate,u.x,u.y]+")"),(f.offset||pe)&&(dr+=AM(0,(f.offset||0)-(pe||0)))):dr=null,vr.attr("transform",dr);function gr(Ue){if(Ue){var Ze=W0.select(Ue.node().parentNode).select("."+$);if(!Ze.empty()){var mr=Ue.node().getBBox();if(mr.height){var Tr=mr.y+mr.height+i3*ee;Ze.attr("y",Tr)}}}}if(vr.style("opacity",h*cp.opacity(x)).call(fp.font,{color:cp.rgb(x),size:W0.round(C,2),family:b,weight:_,style:A,variant:k,textcase:M,shadow:z,lineposition:D}).attr(u).call(Z0.convertToTspans,e,gr),Je&&!Je.empty()){var Te=v.select("."+r+"-math-group"),Oe=vr.node().getBBox(),kr=Te.node()?Te.node().getBBox():void 0,Ur=kr?kr.y+kr.height+i3*ee:Oe.y+Oe.height+o3*ee,tr=dc.extendFlat({},u,{y:Ur});Je.attr("transform",dr),Je.style("opacity",re*cp.opacity(fe)).call(fp.font,{color:cp.rgb(fe),size:W0.round(ee,2),family:Q,weight:he,style:Le,variant:Ie,textcase:ze,shadow:Ce,lineposition:Xe}).attr(tr).call(Z0.convertToTspans,e)}return RG.previousPromises(e)}function ir(lr){var vr=lr.title,Je=W0.select(vr.node().parentNode);if(s&&s.selection&&s.side&&m){Je.attr("transform",null);var dr=zG[s.side],gr=s.side==="left"||s.side==="top"?-1:1,Te=PG(s.pad)?s.pad:2,Oe=fp.bBox(Je.node()),kr={t:0,b:0,l:0,r:0},Ur=e._fullLayout._reservedMargin;for(var tr in Ur)for(var Ue in Ur[tr]){var Ze=Ur[tr][Ue];kr[Ue]=Math.max(kr[Ue],Ze)}var mr={left:kr.l,top:kr.t,right:n.width-kr.r,bottom:n.height-kr.b},Tr=s.maxShift||gr*(mr[s.side]-Oe[s.side]),yr=0;if(Tr<0)yr=Tr;else{var wr=s.offsetLeft||0,Hr=s.offsetTop||0;Oe.left-=wr,Oe.right-=wr,Oe.top-=Hr,Oe.bottom-=Hr,s.selection.each(function(){var Dr=fp.bBox(this);dc.bBoxIntersect(Oe,Dr,Te)&&(yr=Math.max(yr,gr*(Dr[s.side]-Oe[dr])+Te))}),yr=Math.min(Tr,yr),a._titleScoot=Math.abs(yr)}if(yr>0||Tr<0){var Sr={left:[-yr,0],right:[yr,0],top:[0,-yr],bottom:[0,yr]}[s.side];Je.attr("transform",AM(Sr[0],Sr[1]))}}}U.call(Be,K);function or(lr,vr){lr.text(vr).on("mouseover.opacity",function(){W0.select(this).transition().duration(TM.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){W0.select(this).transition().duration(TM.HIDE_PLACEHOLDER).style("opacity",0)})}if(ue&&(m?U.on(".opacity",null):(or(U,o),p=!0),U.call(Z0.makeEditable,{gd:e}).on("edit",function(lr){l!==void 0?a3.call("_guiRestyle",e,i,lr,l):a3.call("_guiRelayout",e,i,lr)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Be)}).on("input",function(lr){this.text(lr||" ").call(Z0.positionText,u.x,u.y)}),I)){if(I&&!m){var Ye=U.node().getBBox(),nr=Ye.y+Ye.height+o3*ee;K.attr("y",nr)}X?K.on(".opacity",null):(or(K,W),V=!0),K.call(Z0.makeEditable,{gd:e}).on("edit",function(lr){a3.call("_guiRelayout",e,"title.subtitle.text",lr)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Be)}).on("input",function(lr){this.text(lr||" ").call(Z0.positionText,K.attr("x"),K.attr("y"))})}return U.classed("js-placeholder",p),K&&!K.empty()&&K.classed("js-placeholder",V),v}SM.exports={draw:NG,SUBTITLE_PADDING_EM:o3,SUBTITLE_PADDING_MATHJAX_EM:i3}});var bp=te((Bue,EM)=>{"use strict";var FG=kt(),IG=y0().utcFormat,bn=pr(),HG=bn.numberFormat,ts=Ht(),Wu=bn.cleanNumber,BG=bn.ms2DateTime,CM=bn.dateTime2ms,ns=bn.ensureNumber,LM=bn.isArrayOrTypedArray,Zu=Rn(),vp=Zu.FP_SAFE,yl=Zu.BADNUM,OG=Zu.LOG_CLIP,UG=Zu.ONEWEEK,hp=Zu.ONEDAY,dp=Zu.ONEHOUR,qM=Zu.ONEMIN,DM=Zu.ONESEC,pp=fa(),yp=Ea(),gp=yp.HOUR_PATTERN,mp=yp.WEEKDAY_PATTERN;function S1(e){return Math.pow(10,e)}function l3(e){return e!=null}EM.exports=function(r,t){t=t||{};var n=r._id||"x",a=n.charAt(0);function i(_,A){if(_>0)return Math.log(_)/Math.LN10;if(_<=0&&A&&r.range&&r.range.length===2){var k=r.range[0],M=r.range[1];return .5*(k+M-2*OG*Math.abs(k-M))}else return yl}function o(_,A,k,M){if((M||{}).msUTC&&ts(_))return+_;var D=CM(_,k||r.calendar);if(D===yl)if(ts(_)){_=+_;var z=Math.floor(bn.mod(_+.05,1)*10),F=Math.round(_-z/10);D=CM(new Date(F))+z/10}else return yl;return D}function l(_,A,k){return BG(_,A,k||r.calendar)}function s(_){return r._categories[Math.round(_)]}function u(_){if(l3(_)){if(r._categoriesMap===void 0&&(r._categoriesMap={}),r._categoriesMap[_]!==void 0)return r._categoriesMap[_];r._categories.push(typeof _=="number"?String(_):_);var A=r._categories.length-1;return r._categoriesMap[_]=A,A}return yl}function f(_,A){for(var k=new Array(A),M=0;Mr.range[1]&&(k=!k);for(var M=k?-1:1,D=M*_,z=0,F=0;FW)z=F+1;else{z=D<(I+W)/2?F:F+1;break}}var B=r._B[z]||0;return isFinite(B)?m(_,r._m2,B):0},b=function(_){var A=r._rangebreaks.length;if(!A)return p(_,r._m,r._b);for(var k=0,M=0;Mr._rangebreaks[M].pmax&&(k=M+1);return p(_,r._m2,r._B[k])}}r.c2l=r.type==="log"?i:ns,r.l2c=r.type==="log"?S1:ns,r.l2p=y,r.p2l=b,r.c2p=r.type==="log"?function(_,A){return y(i(_,A))}:y,r.p2c=r.type==="log"?function(_){return S1(b(_))}:b,["linear","-"].indexOf(r.type)!==-1?(r.d2r=r.r2d=r.d2c=r.r2c=r.d2l=r.r2l=Wu,r.c2d=r.c2r=r.l2d=r.l2r=ns,r.d2p=r.r2p=function(_){return r.l2p(Wu(_))},r.p2d=r.p2r=b,r.cleanPos=ns):r.type==="log"?(r.d2r=r.d2l=function(_,A){return i(Wu(_),A)},r.r2d=r.r2c=function(_){return S1(Wu(_))},r.d2c=r.r2l=Wu,r.c2d=r.l2r=ns,r.c2r=i,r.l2d=S1,r.d2p=function(_,A){return r.l2p(r.d2r(_,A))},r.p2d=function(_){return S1(b(_))},r.r2p=function(_){return r.l2p(Wu(_))},r.p2r=b,r.cleanPos=ns):r.type==="date"?(r.d2r=r.r2d=bn.identity,r.d2c=r.r2c=r.d2l=r.r2l=o,r.c2d=r.c2r=r.l2d=r.l2r=l,r.d2p=r.r2p=function(_,A,k){return r.l2p(o(_,0,k))},r.p2d=r.p2r=function(_,A,k){return l(b(_),A,k)},r.cleanPos=function(_){return bn.cleanDate(_,yl,r.calendar)}):r.type==="category"?(r.d2c=r.d2l=u,r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=h,r.r2c=function(_){var A=d(_);return A!==void 0?A:r.fraction2r(.5)},r.l2r=r.c2r=ns,r.r2l=d,r.d2p=function(_){return r.l2p(r.r2c(_))},r.p2d=function(_){return s(b(_))},r.r2p=r.d2p,r.p2r=b,r.cleanPos=function(_){return typeof _=="string"&&_!==""?_:ns(_)}):r.type==="multicategory"&&(r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=h,r.r2c=function(_){var A=h(_);return A!==void 0?A:r.fraction2r(.5)},r.r2c_just_indices=v,r.l2r=r.c2r=ns,r.r2l=h,r.d2p=function(_){return r.l2p(r.r2c(_))},r.p2d=function(_){return s(b(_))},r.r2p=r.d2p,r.p2r=b,r.cleanPos=function(_){return Array.isArray(_)||typeof _=="string"&&_!==""?_:ns(_)},r.setupMultiCategory=function(_){var A=r._traceIndices,k,M,D=r._matchGroup;if(D&&r._categories.length===0){for(var z in D)if(z!==n){var F=t[pp.id2name(z)];A=A.concat(F._traceIndices)}}var I=[[0,{}],[0,{}]],W=[];for(k=0;kF[1]&&(M[z?0:1]=k),M[0]===M[1]){var I=r.l2r(A),W=r.l2r(k);if(A!==void 0){var B=I+1;k!==void 0&&(B=Math.min(B,W)),M[z?1:0]=B}if(k!==void 0){var X=W+1;A!==void 0&&(X=Math.max(X,I)),M[z?0:1]=X}}}},r.cleanRange=function(_,A){r._cleanRange(_,A),r.limitRange(_)},r._cleanRange=function(_,A){A||(A={}),_||(_="range");var k=bn.nestedProperty(r,_).get(),M,D;if(r.type==="date"?D=bn.dfltRange(r.calendar):a==="y"?D=yp.DFLTRANGEY:r._name==="realaxis"?D=[0,1]:D=A.dfltRange||yp.DFLTRANGEX,D=D.slice(),(r.rangemode==="tozero"||r.rangemode==="nonnegative")&&(D[0]=0),!k||k.length!==2){bn.nestedProperty(r,_).set(D);return}var z=k[0]===null,F=k[1]===null;for(r.type==="date"&&!r.autorange&&(k[0]=bn.cleanDate(k[0],yl,r.calendar),k[1]=bn.cleanDate(k[1],yl,r.calendar)),M=0;M<2;M++)if(r.type==="date"){if(!bn.isDateTime(k[M],r.calendar)){r[_]=D;break}if(r.r2l(k[0])===r.r2l(k[1])){var I=bn.constrain(r.r2l(k[0]),bn.MIN_MS+1e3,bn.MAX_MS-1e3);k[0]=r.l2r(I-1e3),k[1]=r.l2r(I+1e3);break}}else{if(!ts(k[M]))if(!(z||F)&&ts(k[1-M]))k[M]=k[1-M]*(M?10:.1);else{r[_]=D;break}if(k[M]<-vp?k[M]=-vp:k[M]>vp&&(k[M]=vp),k[0]===k[1]){var W=Math.max(1,Math.abs(k[0]*1e-6));k[0]-=W,k[1]+=W}}},r.setScale=function(_){var A=t._size;if(r.overlaying){var k=pp.getFromId({_fullLayout:t},r.overlaying);r.domain=k.domain}var M=_&&r._r?"_r":"range",D=r.calendar;r.cleanRange(M);var z=r.r2l(r[M][0],D),F=r.r2l(r[M][1],D),I=a==="y";if(I?(r._offset=A.t+(1-r.domain[1])*A.h,r._length=A.h*(r.domain[1]-r.domain[0]),r._m=r._length/(z-F),r._b=-r._m*F):(r._offset=A.l+r.domain[0]*A.w,r._length=A.w*(r.domain[1]-r.domain[0]),r._m=r._length/(F-z),r._b=-r._m*z),r._rangebreaks=[],r._lBreaks=0,r._m2=0,r._B=[],r.rangebreaks){var W,B;if(r._rangebreaks=r.locateBreaks(Math.min(z,F),Math.max(z,F)),r._rangebreaks.length){for(W=0;WF&&(X=!X),X&&r._rangebreaks.reverse();var V=X?-1:1;for(r._m2=V*r._length/(Math.abs(F-z)-r._lBreaks),r._B.push(-r._m2*(I?F:z)),W=0;WD&&(D+=7,zD&&(D+=24,z=M&&z=M&&_=Ce.min&&(LeCe.max&&(Ce.max=Ie),ze=!1)}ze&&F.push({min:Le,max:Ie})}};for(k=0;k{"use strict";var PM=Ht(),s3=pr(),YG=Rn().BADNUM,_p=s3.isArrayOrTypedArray,GG=s3.isDateTime,VG=s3.cleanNumber,RM=Math.round;NM.exports=function(r,t,n){var a=r,i=n.noMultiCategory;if(_p(a)&&!a.length)return"-";if(!i&&JG(a))return"multicategory";if(i&&Array.isArray(a[0])){for(var o=[],l=0;li*2}function zM(e){return Math.max(1,(e-1)/1e3)}function jG(e,r){for(var t=e.length,n=zM(t),a=0,i=0,o={},l=0;la*2}function JG(e){return _p(e[0])&&_p(e[1])}});var ju=te((Uue,GM)=>{"use strict";var $G=kt(),BM=Ht(),Xu=pr(),xp=Rn().FP_SAFE,KG=dt(),QG=fn(),OM=fa(),eV=OM.getFromId,rV=OM.isLinked;GM.exports={applyAutorangeOptions:YM,getAutoRange:f3,makePadFn:c3,doAutoRange:nV,findExtremes:aV,concatExtremes:d3};function f3(e,r){var t,n,a=[],i=e._fullLayout,o=c3(i,r,0),l=c3(i,r,1),s=d3(e,r),u=s.min,f=s.max;if(u.length===0||f.length===0)return Xu.simpleMap(r.range,r.r2l);var v=u[0].val,h=f[0].val;for(t=1;t0&&(F=x-o(k)-l(M),F>_?I/F>A&&(D=k,z=M,A=I/F):I/x>A&&(D={val:k.val,nopad:1},z={val:M.val,nopad:1},A=I/x));function W(ae,Q){return Math.max(ae,l(Q))}if(v===h){var B=v-1,X=v+1;if(b)if(v===0)a=[0,1];else{var V=(v>0?f:u).reduce(W,0),re=v/(1-Math.min(.5,V/x));a=v>0?[0,re]:[re,0]}else C?a=[Math.max(0,B),Math.max(1,X)]:a=[B,X]}else b?(D.val>=0&&(D={val:0,nopad:1}),z.val<=0&&(z={val:0,nopad:1})):C&&(D.val-A*o(D)<0&&(D={val:0,nopad:1}),z.val<=0&&(z={val:1,nopad:1})),A=(z.val-D.val-FM(r,k.val,M.val))/(x-o(D)-l(z)),a=[D.val-A*o(D),z.val+A*l(z)];return a=YM(a,r),r.limitRange&&r.limitRange(),m&&a.reverse(),Xu.simpleMap(a,r.l2r||Number)}function FM(e,r,t){var n=0;if(e.rangebreaks)for(var a=e.locateBreaks(r,t),i=0;i0?t.ppadplus:t.ppadminus)||t.ppad||0),k=_((e._m>0?t.ppadminus:t.ppadplus)||t.ppad||0),M=_(t.vpadplus||t.vpad),D=_(t.vpadminus||t.vpad);if(!u){if(C=1/0,x=-1/0,s)for(v=0;v0&&(C=h),h>x&&h-xp&&(C=h),h>x&&h=I;v--)F(v);return{min:n,max:a,opts:t}}function v3(e,r,t,n){UM(e,r,t,n,iV)}function h3(e,r,t,n){UM(e,r,t,n,oV)}function UM(e,r,t,n,a){for(var i=n.tozero,o=n.extrapad,l=!0,s=0;s=t&&(u.extrapad||!o)){l=!1;break}else a(r,u.val)&&u.pad<=t&&(o||!u.extrapad)&&(e.splice(s,1),s--)}if(l){var f=i&&r===0;e.push({val:r,pad:f?0:t,extrapad:f?!1:o})}}function HM(e){return BM(e)&&Math.abs(e)=r}function lV(e,r){var t=r.autorangeoptions;return t&&t.minallowed!==void 0&&wp(r,t.minallowed,t.maxallowed)?t.minallowed:t&&t.clipmin!==void 0&&wp(r,t.clipmin,t.clipmax)?Math.max(e,r.d2l(t.clipmin)):e}function sV(e,r){var t=r.autorangeoptions;return t&&t.maxallowed!==void 0&&wp(r,t.minallowed,t.maxallowed)?t.maxallowed:t&&t.clipmax!==void 0&&wp(r,t.clipmin,t.clipmax)?Math.min(e,r.d2l(t.clipmax)):e}function wp(e,r,t){return r!==void 0&&t!==void 0?(r=e.d2l(r),t=e.d2l(t),r=s&&(i=s,t=s),o<=s&&(o=s,n=s)}}return t=lV(t,r),n=sV(n,r),[t,n]}});var Dn=te((Yue,hA)=>{"use strict";var Ao=kt(),ta=Ht(),X0=ca(),L1=dt(),ut=pr(),j0=ut.strTranslate,pc=vi(),uV=k1(),q1=Et(),$i=fn(),fV=gl(),VM=E2(),Ra=Rn(),cV=Ra.ONEMAXYEAR,Tp=Ra.ONEAVGYEAR,kp=Ra.ONEMINYEAR,vV=Ra.ONEMAXQUARTER,y3=Ra.ONEAVGQUARTER,Sp=Ra.ONEMINQUARTER,hV=Ra.ONEMAXMONTH,J0=Ra.ONEAVGMONTH,Cp=Ra.ONEMINMONTH,Ki=Ra.ONEWEEK,ei=Ra.ONEDAY,Ju=ei/2,is=Ra.ONEHOUR,D1=Ra.ONEMIN,Lp=Ra.ONESEC,dV=Ra.ONEMILLI,pV=Ra.ONEMICROSEC,gc=Ra.MINUS_SIGN,Dp=Ra.BADNUM,b3={K:"zeroline"},_3={K:"gridline",L:"path"},x3={K:"minor-gridline",L:"path"},tA={K:"tick",L:"path"},WM={K:"tick",L:"text"},ZM={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},Ep=Ka(),C1=Ep.MID_SHIFT,mc=Ep.CAP_SHIFT,E1=Ep.LINE_SPACING,gV=Ep.OPPOSITE_SIDE,qp=3,xr=hA.exports={};xr.setConvert=bp();var mV=u3(),Ks=fa(),yV=Ks.idSort,bV=Ks.isLinked;xr.id2name=Ks.id2name;xr.name2id=Ks.name2id;xr.cleanId=Ks.cleanId;xr.list=Ks.list;xr.listIds=Ks.listIds;xr.getFromId=Ks.getFromId;xr.getFromTrace=Ks.getFromTrace;var nA=ju();xr.getAutoRange=nA.getAutoRange;xr.findExtremes=nA.findExtremes;var _V=1e-4;function T3(e){var r=(e[1]-e[0])*_V;return[e[0]-r,e[1]+r]}xr.coerceRef=function(e,r,t,n,a,i){var o=n.charAt(n.length-1),l=t._fullLayout._subplots[o+"axis"],s=n+"ref",u={};return a||(a=l[0]||(typeof i=="string"?i:i[0])),i||(i=a),l=l.concat(l.map(function(f){return f+" domain"})),u[s]={valType:"enumerated",values:l.concat(i?typeof i=="string"?[i]:i:[]),dflt:a},ut.coerce(e,r,u,s)};xr.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};xr.coercePosition=function(e,r,t,n,a,i){var o,l,s=xr.getRefType(n);if(s!=="range")o=ut.ensureNumber,l=t(a,i);else{var u=xr.getFromId(r,n);i=u.fraction2r(i),l=t(a,i),o=u.cleanPos}e[a]=o(l)};xr.cleanPosition=function(e,r,t){var n=t==="paper"||t==="pixel"?ut.ensureNumber:xr.getFromId(r,t).cleanPos;return n(e)};xr.redrawComponents=function(e,r){r=r||xr.listIds(e);var t=e._fullLayout;function n(a,i,o,l){for(var s=L1.getComponentMethod(a,i),u={},f=0;f2e-6||((t-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};xr.saveRangeInitial=function(e,r){for(var t=xr.list(e,"",!0),n=!1,a=0;av*.3||u(n)||u(a))){var h=t.dtick/2;e+=e+ho){var l=Number(t.substr(1));i.exactYears>o&&l%12===0?e=xr.tickIncrement(e,"M6","reverse")+ei*1.5:i.exactMonths>o?e=xr.tickIncrement(e,"M1","reverse")+ei*15.5:e-=Ju;var s=xr.tickIncrement(e,t);if(s<=n)return s}return e}xr.prepMinorTicks=function(e,r,t){if(!r.minor.dtick){delete e.dtick;var n=r.dtick&&ta(r._tmin),a;if(n){var i=xr.tickIncrement(r._tmin,r.dtick,!0);a=[r._tmin,i*.99+r._tmin*.01]}else{var o=ut.simpleMap(r.range,r.r2l);a=[o[0],.8*o[0]+.2*o[1]]}if(e.range=ut.simpleMap(a,r.l2r),e._isMinor=!0,xr.prepTicks(e,t),n){var l=ta(r.dtick),s=ta(e.dtick),u=l?r.dtick:+r.dtick.substring(1),f=s?e.dtick:+e.dtick.substring(1);l&&s?p3(u,f)?u===2*Ki&&f===2*ei&&(e.dtick=Ki):u===2*Ki&&f===3*ei?e.dtick=Ki:u===Ki&&!(r._input.minor||{}).nticks?e.dtick=ei:JM(u/f,2.5)?e.dtick=u/2:e.dtick=u:String(r.dtick).charAt(0)==="M"?s?e.dtick="M1":p3(u,f)?u>=12&&f===2&&(e.dtick="M3"):e.dtick=r.dtick:String(e.dtick).charAt(0)==="L"?String(r.dtick).charAt(0)==="L"?p3(u,f)||(e.dtick=JM(u/f,2.5)?r.dtick/2:r.dtick):e.dtick="D1":e.dtick==="D2"&&+r.dtick>1&&(e.dtick=1)}e.range=r.range}r.minor._tick0Init===void 0&&(e.tick0=r.tick0)};function p3(e,r){return Math.abs((e/r+.5)%1-.5)<.001}function JM(e,r){return Math.abs(e/r-1)<.001}xr.prepTicks=function(e,r){var t=ut.simpleMap(e.range,e.r2l,void 0,void 0,r);if(e.tickmode==="auto"||!e.dtick){var n=e.nticks,a;n||(e.type==="category"||e.type==="multicategory"?(a=e.tickfont?ut.bigFont(e.tickfont.size||12):15,n=e._length/a):(a=e._id.charAt(0)==="y"?40:80,n=ut.constrain(e._length/a,4,9)+1),e._name==="radialaxis"&&(n*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(n*=100),e._roughDTick=Math.abs(t[1]-t[0])/n,xr.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(i=n-1,o=n):(i=n,o=n);var l=e[i].value,s=e[o].value,u=Math.abs(s-l),f=t||u,v=0;f>=kp?u>=kp&&u<=cV?v=u:v=Tp:t===y3&&f>=Sp?u>=Sp&&u<=vV?v=u:v=y3:f>=Cp?u>=Cp&&u<=hV?v=u:v=J0:t===Ki&&f>=Ki?v=Ki:f>=ei?v=ei:t===Ju&&f>=Ju?v=Ju:t===is&&f>=is&&(v=is);var h;v>=u&&(v=u,h=!0);var d=a+v;if(r.rangebreaks&&v>0){for(var m=84,p=0,y=0;yKi&&(v=u)}(v>0||n===0)&&(e[n].periodX=a+v/2)}}xr.calcTicks=function(r,t){for(var n=r.type,a=r.calendar,i=r.ticklabelstep,o=r.ticklabelmode==="period",l=r.range[0]>r.range[1],s=!r.ticklabelindex||ut.isArrayOrTypedArray(r.ticklabelindex)?r.ticklabelindex:[r.ticklabelindex],u=ut.simpleMap(r.range,r.r2l,void 0,void 0,t),f=u[1]=(x?0:1);_--){var A=!_;_?(r._dtickInit=r.dtick,r._tick0Init=r.tick0):(r.minor._dtickInit=r.minor.dtick,r.minor._tick0Init=r.minor.tick0);var k=_?r:ut.extendFlat({},r,r.minor);if(A?xr.prepMinorTicks(k,r,t):xr.prepTicks(k,t),k.tickmode==="array"){_?(y=[],m=$M(r,!A)):(b=[],p=$M(r,!A));continue}if(k.tickmode==="sync"){y=[],m=kV(r);continue}var M=T3(u),D=M[0],z=M[1],F=ta(k.dtick),I=n==="log"&&!(F||k.dtick.charAt(0)==="L"),W=xr.tickFirst(k,t);if(_){if(r._tmin=W,W=z:X<=z;X=xr.tickIncrement(X,ae,f,a)){if(_&&V++,k.rangebreaks&&!f){if(X=h)break}if(y.length>d||X===B)break;B=X;var Q={value:X};_?(I&&X!==(X|0)&&(Q.simpleLabel=!0),i>1&&V%i&&(Q.skipLabel=!0),y.push(Q)):(Q.minor=!0,b.push(Q))}}if(!b||b.length<2)s=!1;else{var ee=(b[1].value-b[0].value)*(l?-1:1);$V(ee,r.tickformat)||(s=!1)}if(!s)C=y;else{var fe=y.concat(b);o&&y.length&&(fe=fe.slice(1)),fe=fe.sort(function(nr,lr){return nr.value-lr.value}).filter(function(nr,lr,vr){return lr===0||nr.value!==vr[lr-1].value});var he=fe.map(function(nr,lr){return nr.minor===void 0&&!nr.skipLabel?lr:null}).filter(function(nr){return nr!==null});he.forEach(function(nr){s.map(function(lr){var vr=nr+lr;vr>=0&&vr-1;Me--){if(y[Me].drop){y.splice(Me,1);continue}y[Me].value=m3(y[Me].value,r);var $=r.c2p(y[Me].value);(pe?K>$-U:K<$+U)?y.splice(f?Me+1:Me,1):K=$}}L3(r)&&Math.abs(u[1]-u[0])===360&&y.pop(),r._tmax=(y[y.length-1]||{}).value,r._prevDateHead="",r._inCalcTicks=!0;var ke,Be=function(nr){nr.text="",r._prevDateHead=ke};y=y.concat(b);function Ne(nr,lr){var vr=xr.tickText(nr,lr.value,!1,lr.simpleLabel),Je=lr.periodX;return Je!==void 0&&(vr.periodX=Je,(Je>h||Jeh&&(vr.periodX=h),Jea&&hTp)r/=Tp,n=a(10),e.dtick="M"+12*as(r,n,Mp);else if(i>J0)r/=J0,e.dtick="M"+as(r,1,KM);else if(i>ei){if(e.dtick=as(r,ei,e._hasDayOfWeekBreaks?[1,2,7,14]:SV),!t){var o=xr.getTickFormat(e),l=e.ticklabelmode==="period";l&&(e._rawTick0=e.tick0),/%[uVW]/.test(o)?e.tick0=ut.dateTick0(e.calendar,2):e.tick0=ut.dateTick0(e.calendar,1),l&&(e._dowTick0=e.tick0)}}else i>is?e.dtick=as(r,is,KM):i>D1?e.dtick=as(r,D1,QM):i>Lp?e.dtick=as(r,Lp,QM):(n=a(10),e.dtick=as(r,n,Mp))}else if(e.type==="log"){e.tick0=0;var s=ut.simpleMap(e.range,e.r2l);if(e._isMinor&&(r*=1.5),r>.7)e.dtick=Math.ceil(r);else if(Math.abs(s[1]-s[0])<1){var u=1.5*Math.abs((s[1]-s[0])/r);r=Math.abs(Math.pow(10,s[1])-Math.pow(10,s[0]))/u,n=a(10),e.dtick="L"+as(r,n,Mp)}else e.dtick=r>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(r,1))):L3(e)?(e.tick0=0,n=1,e.dtick=as(r,n,CV)):(e.tick0=0,n=a(10),e.dtick=as(r,n,Mp));if(e.dtick===0&&(e.dtick=1),!ta(e.dtick)&&typeof e.dtick!="string"){var f=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(f)}};function lA(e){var r=e.dtick;if(e._tickexponent=0,!ta(r)&&typeof r!="string"&&(r=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var t=e.r2l(e.tick0),n=e.l2r(t).replace(/(^-|i)/g,""),a=n.length;if(String(r).charAt(0)==="M")a>10||n.substr(5)!=="01-01"?e._tickround="d":e._tickround=+r.substr(1)%12===0?"y":"m";else if(r>=ei&&a<=10||r>=ei*15)e._tickround="d";else if(r>=D1&&a<=16||r>=is)e._tickround="M";else if(r>=Lp&&a<=19||r>=D1)e._tickround="S";else{var i=e.l2r(t+r).replace(/^-/,"").length;e._tickround=Math.max(a,i)-20,e._tickround<0&&(e._tickround=4)}}else if(ta(r)||r.charAt(0)==="L"){var o=e.range.map(e.r2d||Number);ta(r)||(r=Number(r.substr(1))),e._tickround=2-Math.floor(Math.log(r)/Math.LN10+.01);var l=Math.max(Math.abs(o[0]),Math.abs(o[1])),s=Math.floor(Math.log(l)/Math.LN10+.01),u=e.minexponent===void 0?3:e.minexponent;Math.abs(s)>u&&($0(e.exponentformat)&&e.exponentformat!=="SI extended"&&!k3(s)||$0(e.exponentformat)&&e.exponentformat==="SI extended"&&!S3(s)?e._tickexponent=3*Math.round((s-1)/3):e._tickexponent=s)}else e._tickround=null}xr.tickIncrement=function(e,r,t,n){var a=t?-1:1;if(ta(r))return ut.increment(e,a*r);var i=r.charAt(0),o=a*Number(r.substr(1));if(i==="M")return ut.incrementMonth(e,o,n);if(i==="L")return Math.log(Math.pow(10,e)+o)/Math.LN10;if(i==="D"){var l=r==="D2"?oA:iA,s=e+a*.01,u=ut.roundUp(ut.mod(s,1),l,t);return Math.floor(s)+Math.log(Ao.round(Math.pow(10,u),1))/Math.LN10}throw"unrecognized dtick "+String(r)};xr.tickFirst=function(e,r){var t=e.r2l||Number,n=ut.simpleMap(e.range,t,void 0,void 0,r),a=n[1]=0&&b<=e._length?y:null};if(i&&ut.isArrayOrTypedArray(e.ticktext)){var v=ut.simpleMap(e.range,e.r2l),h=(Math.abs(v[1]-v[0])-(e._lBreaks||0))/1e4;for(u=0;u"+l;else{var u=R1(e),f=e._trueSide||e.side;(!u&&f==="top"||u&&f==="bottom")&&(o+="
")}r.text=o}function qV(e,r,t,n,a){var i=e.dtick,o=r.x,l=e.tickformat,s=typeof i=="string"&&i.charAt(0);if(a==="never"&&(a=""),n&&s!=="L"&&(i="L3",s="L"),l||s==="L")r.text=P1(Math.pow(10,o),e,a,n);else if(ta(i)||s==="D"&&(e.minorloglabels==="complete"||ut.mod(o+.01,1)<.1)){var u;e.minorloglabels==="complete"&&!(ut.mod(o+.01,1)<.1)&&(u=!0,r.fontSize*=.75);var f=Math.pow(10,o).toExponential(0),v=f.split("e"),h=+v[1],d=Math.abs(h),m=e.exponentformat;m==="power"||$0(m)&&m!=="SI extended"&&k3(h)||$0(m)&&m==="SI extended"&&S3(h)?(r.text=v[0],d>0&&(r.text+="x10"),r.text==="1x10"&&(r.text="10"),h!==0&&h!==1&&(r.text+=""+(h>0?"":gc)+d+""),r.fontSize*=1.25):(m==="e"||m==="E")&&d>2?r.text=v[0]+m+(h>0?"+":gc)+d:(r.text=P1(Math.pow(10,o),e,"","fakehover"),i==="D1"&&e._id.charAt(0)==="y"&&(r.dy-=r.fontSize/6))}else if(s==="D")r.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,ut.mod(o,1)))),r.fontSize*=.75;else throw"unrecognized dtick "+String(i);if(e.dtick==="D1"){var p=String(r.text).charAt(0);(p==="0"||p==="1")&&(e._id.charAt(0)==="y"?r.dx-=r.fontSize/4:(r.dy+=r.fontSize/2,r.dx+=(e.range[1]>e.range[0]?1:-1)*r.fontSize*(o<0?.5:.25)))}}function DV(e,r){var t=e._categories[Math.round(r.x)];t===void 0&&(t=""),r.text=String(t)}function EV(e,r,t){var n=Math.round(r.x),a=e._categories[n]||[],i=a[1]===void 0?"":String(a[1]),o=a[0]===void 0?"":String(a[0]);t?r.text=o+" - "+i:(r.text=i,r.text2=o)}function PV(e,r,t,n,a){a==="never"?a="":e.showexponent==="all"&&Math.abs(r.x/e.dtick)<1e-6&&(a="hide"),r.text=P1(r.x,e,a,n)}function RV(e,r,t,n,a){if(e.thetaunit==="radians"&&!t){var i=r.x/180;if(i===0)r.text="0";else{var o=zV(i);if(o[1]>=100)r.text=P1(ut.deg2rad(r.x),e,a,n);else{var l=r.x<0;o[1]===1?o[0]===1?r.text="\u03C0":r.text=o[0]+"\u03C0":r.text=["",o[0],"","\u2044","",o[1],"","\u03C0"].join(""),l&&(r.text=gc+r.text)}}}else r.text=P1(r.x,e,a,n)}function zV(e){function r(l,s){return Math.abs(l-s)<=1e-6}function t(l,s){return r(s,0)?l:t(s,l%s)}function n(l){for(var s=1;!r(Math.round(l*s)/s,l);)s*=10;return s}var a=n(e),i=e*a,o=Math.abs(t(i,a));return[Math.round(i/o),Math.round(a/o)]}var uA=["f","p","n","\u03BC","m","","k","M","G","T"],NV=["q","r","y","z","a",...uA,"P","E","Z","Y","R","Q"],$0=e=>["SI","SI extended","B"].includes(e);function k3(e){return e>14||e<-15}function S3(e){return e>32||e<-30}function FV(e,r){return $0(r)?!!(r==="SI extended"&&S3(e)||r!=="SI extended"&&k3(e)):!1}function P1(e,r,t,n){var a=e<0,i=r._tickround,o=t||r.exponentformat||"B",l=r._tickexponent,s=xr.getTickFormat(r),u=r.separatethousands;if(n){var f={exponentformat:o,minexponent:r.minexponent,dtick:r.showexponent==="none"?r.dtick:ta(e)&&Math.abs(e)||1,range:r.showexponent==="none"?r.range.map(r.r2d):[0,e||1]};lA(f),i=(Number(f._tickround)||0)+4,l=f._tickexponent,r.hoverformat&&(s=r.hoverformat)}if(s)return r._numFormat(s)(e).replace(/-/g,gc);var v=Math.pow(10,-i)/2;if(o==="none"&&(l=0),e=Math.abs(e),e"+m+"":o==="B"&&l===9?e+="B":$0(o)&&(e+=o==="SI extended"?NV[l/3+10]:uA[l/3+5])}return a?gc+e:e}xr.getTickFormat=function(e){var r;function t(s){return typeof s!="string"?s:Number(s.replace("M",""))*J0}function n(s,u){var f=["L","D"];if(typeof s==typeof u){if(typeof s=="number")return s-u;var v=f.indexOf(s.charAt(0)),h=f.indexOf(u.charAt(0));return v===h?Number(s.replace(/(L|D)/g,""))-Number(u.replace(/(L|D)/g,"")):v-h}else return typeof s=="number"?1:-1}function a(s,u,f){var v=f||function(m){return m},h=u[0],d=u[1];return(!h&&typeof h!="number"||v(h)<=v(s))&&(!d&&typeof d!="number"||v(d)>=v(s))}function i(s,u){var f=u[0]===null,v=u[1]===null,h=n(s,u[0])>=0,d=n(s,u[1])<=0;return(f||h)&&(v||d)}var o,l;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(r=0;r=0&&a.unshift(a.splice(f,1).shift())}});var l={false:{left:0,right:0}};return ut.syncOrAsync(a.map(function(s){return function(){if(s){var u=xr.getFromId(e,s);t||(t={}),t.axShifts=l,t.overlayingShiftedAx=o;var f=xr.drawOne(e,u,t);return u._shiftPusher&&A3(u,u._fullDepth||0,l,!0),u._r=u.range.slice(),u._rl=ut.simpleMap(u._r,u.r2l),f}}}))};xr.drawOne=function(e,r,t){t=t||{};var n=t.axShifts||{},a=t.overlayingShiftedAx||[],i,o,l;r.setScale();var s=e._fullLayout,u=r._id,f=u.charAt(0),v=xr.counterLetter(u),h=s._plots[r._mainSubplot],d=r.zerolinelayer==="above traces";if(!h)return;if(r._shiftPusher=r.autoshift||a.indexOf(r._id)!==-1||a.indexOf(r.overlaying)!==-1,r._shiftPusher&r.anchor==="free"){var m=r.linewidth/2||0;r.ticks==="inside"&&(m+=r.ticklen),A3(r,m,n,!0),A3(r,r.shift||0,n,!1)}(t.skipTitle!==!0||r._shift===void 0)&&(r._shift=JV(r,n));var p=h[f+"axislayer"],y=r._mainLinePosition,b=y+=r._shift,C=r._mainMirrorPosition,x=r._vals=xr.calcTicks(r),_=[r.mirror,b,C].join("_");for(i=0;i0?Je.bottom-lr:0,vr))));var Oe=0,kr=0;if(r._shiftPusher&&(Oe=Math.max(vr,Je.height>0?Ye==="l"?lr-Je.left:Je.right-lr:0),r.title.text!==s._dfltTitle[f]&&(kr=(r._titleStandoff||0)+(r._titleScoot||0),Ye==="l"&&(kr+=rA(r))),r._fullDepth=Math.max(Oe,kr)),r.automargin){dr={x:0,y:0,r:0,l:0,t:0,b:0};var Ur=[0,1],tr=typeof r._shift=="number"?r._shift:0;if(f==="x"){if(Ye==="b"?dr[Ye]=r._depth:(dr[Ye]=r._depth=Math.max(Je.width>0?lr-Je.top:0,vr),Ur.reverse()),Je.width>0){var Ue=Je.right-(r._offset+r._length);Ue>0&&(dr.xr=1,dr.r=Ue);var Ze=r._offset-Je.left;Ze>0&&(dr.xl=0,dr.l=Ze)}}else if(Ye==="l"?(r._depth=Math.max(Je.height>0?lr-Je.left:0,vr),dr[Ye]=r._depth-tr):(r._depth=Math.max(Je.height>0?Je.right-lr:0,vr),dr[Ye]=r._depth+tr,Ur.reverse()),Je.height>0){var mr=Je.bottom-(r._offset+r._length);mr>0&&(dr.yb=0,dr.b=mr);var Tr=r._offset-Je.top;Tr>0&&(dr.yt=1,dr.t=Tr)}dr[v]=r.anchor==="free"?r.position:r._anchorAxis.domain[Ur[0]],r.title.text!==s._dfltTitle[f]&&(dr[Ye]+=rA(r)+(r.title.standoff||0)),r.mirror&&r.anchor!=="free"&&(gr={x:0,y:0,r:0,l:0,t:0,b:0},gr[nr]=r.linewidth,r.mirror&&r.mirror!==!0&&(gr[nr]+=vr),r.mirror===!0||r.mirror==="ticks"?gr[v]=r._anchorAxis.domain[Ur[1]]:(r.mirror==="all"||r.mirror==="allticks")&&(gr[v]=[r._counterDomainMin,r._counterDomainMax][Ur[1]]))}or&&(Te=L1.getComponentMethod("rangeslider","autoMarginOpts")(e,r)),typeof r.automargin=="string"&&(eA(dr,r.automargin),eA(gr,r.automargin)),X0.autoMargin(e,C3(r),dr),X0.autoMargin(e,cA(r),gr),X0.autoMargin(e,vA(r),Te)}),ut.syncOrAsync(Ne)}};function eA(e,r){if(e){var t=Object.keys(ZM).reduce(function(n,a){return r.indexOf(a)!==-1&&ZM[a].forEach(function(i){n[i]=1}),n},{});Object.keys(e).forEach(function(n){t[n]||(n.length===1?e[n]=0:delete e[n])})}}function IV(e,r){var t=[],n,a=function(i,o){var l=i.xbnd[o];l!==null&&t.push(ut.extendFlat({},i,{x:l}))};if(r.length){for(n=0;ne.range[1],l=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,s=!l;if(t){var u=o?-1:1;t=t*u}if(n){var f=e.side,v=l&&(f==="top"||f==="left")||s&&(f==="bottom"||f==="right")?1:-1;n=n*v}return e._id.charAt(0)==="x"?function(h){return j0(a+e._offset+e.l2p(w3(h))+t,i+n)}:function(h){return j0(i+n,a+e._offset+e.l2p(w3(h))+t)}};function w3(e){return e.periodX!==void 0?e.periodX:e.x}function UV(e){var r=e.ticklabelposition||"",t=e.tickson||"",n=function(m){return r.indexOf(m)!==-1},a=n("top"),i=n("left"),o=n("right"),l=n("bottom"),s=n("inside"),u=t!=="boundaries"&&(l||i||a||o);if(!u&&!s)return[0,0];var f=e.side,v=u?(e.tickwidth||0)/2:0,h=qp,d=e.tickfont?e.tickfont.size:12;return(l||a)&&(v+=d*mc,h+=(e.linewidth||0)/2),(i||o)&&(v+=(e.linewidth||0)/2,h+=qp),s&&f==="top"&&(h-=d*(1-mc)),(i||a)&&(v=-v),(f==="bottom"||f==="right")&&(h=-h),[u?v:0,s?h:0]}xr.makeTickPath=function(e,r,t,n){n||(n={});var a=n.minor;if(a&&!e.minor)return"";var i=n.len!==void 0?n.len:a?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),l=(e.linewidth||1)/2;return o==="x"?"M0,"+(r+l*t)+"v"+i*t:"M"+(r+l*t)+",0h"+i*t};xr.makeLabelFns=function(e,r,t){var n=e.ticklabelposition||"",a=e.tickson||"",i=function(B){return n.indexOf(B)!==-1},o=i("top"),l=i("left"),s=i("right"),u=i("bottom"),f=a!=="boundaries"&&(u||l||o||s),v=i("inside"),h=n==="inside"&&e.ticks==="inside"||!v&&e.ticks==="outside"&&a!=="boundaries",d=0,m=0,p=h?e.ticklen:0;if(v?p*=-1:f&&(p=0),h&&(d+=p,t)){var y=ut.deg2rad(t);d=p*Math.cos(y)+1,m=p*Math.sin(y)}e.showticklabels&&(h||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(v?-1:1);var b={labelStandoff:d,labelShift:m},C,x,_,A,k=0,M=e.side,D=e._id.charAt(0),z=e.tickangle,F;if(D==="x")F=!v&&M==="bottom"||v&&M==="top",A=F?1:-1,v&&(A*=-1),C=m*A,x=r+d*A,_=F?1:-.2,Math.abs(z)===90&&(v?_+=C1:z===-90&&M==="bottom"?_=mc:z===90&&M==="top"?_=C1:_=.5,k=C1/2*(z/90)),b.xFn=function(B){return B.dx+C+k*B.fontSize},b.yFn=function(B){return B.dy+x+B.fontSize*_},b.anchorFn=function(B,X){if(f){if(l)return"end";if(s)return"start"}return!ta(X)||X===0||X===180?"middle":X*A<0!==v?"end":"start"},b.heightFn=function(B,X,V){return X<-60||X>60?-.5*V:e.side==="top"!==v?-V:0};else if(D==="y"){if(F=!v&&M==="left"||v&&M==="right",A=F?1:-1,v&&(A*=-1),C=d,x=m*A,_=0,!v&&Math.abs(z)===90&&(z===-90&&M==="left"||z===90&&M==="right"?_=mc:_=.5),v){var I=ta(z)?+z:0;if(I!==0){var W=ut.deg2rad(I);k=Math.abs(Math.sin(W))*mc*A,_=0}}b.xFn=function(B){return B.dx+r-(C+B.fontSize*_)*A+k*B.fontSize},b.yFn=function(B){return B.dy+x+B.fontSize*C1},b.anchorFn=function(B,X){return ta(X)&&Math.abs(X)===90?"middle":F?"end":"start"},b.heightFn=function(B,X,V){return e.side==="right"&&(X*=-1),X<-30?-V:X<30?-.5*V:0}}return b};function Pp(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}xr.drawTicks=function(e,r,t){t=t||{};var n=r._id+"tick",a=[].concat(r.minor&&r.minor.ticks?t.vals.filter(function(o){return o.minor&&!o.noTick}):[]).concat(r.ticks?t.vals.filter(function(o){return!o.minor&&!o.noTick}):[]),i=t.layer.selectAll("path."+n).data(a,Pp);i.exit().remove(),i.enter().append("path").classed(n,1).classed("ticks",1).classed("crisp",t.crisp!==!1).each(function(o){return q1.stroke(Ao.select(this),o.minor?r.minor.tickcolor:r.tickcolor)}).style("stroke-width",function(o){return $i.crispRound(e,o.minor?r.minor.tickwidth:r.tickwidth,1)+"px"}).attr("d",t.path).style("display",null),Rp(r,[tA]),i.attr("transform",t.transFn)};xr.drawGrid=function(e,r,t){if(t=t||{},r.tickmode!=="sync"){var n=r._id+"grid",a=r.minor&&r.minor.showgrid,i=a?t.vals.filter(function(b){return b.minor}):[],o=r.showgrid?t.vals.filter(function(b){return!b.minor}):[],l=t.counterAxis;if(l&&xr.shouldShowZeroLine(e,r,l))for(var s=r.tickmode==="array",u=0;u=0;m--){var p=m?h:d;if(p){var y=p.selectAll("path."+n).data(m?o:i,Pp);y.exit().remove(),y.enter().append("path").classed(n,1).classed("crisp",t.crisp!==!1),y.attr("transform",t.transFn).attr("d",t.path).each(function(b){return q1.stroke(Ao.select(this),b.minor?r.minor.gridcolor:r.gridcolor||"#ddd")}).style("stroke-dasharray",function(b){return $i.dashStyle(b.minor?r.minor.griddash:r.griddash,b.minor?r.minor.gridwidth:r.gridwidth)}).style("stroke-width",function(b){return(b.minor?v:r._gw)+"px"}).style("display",null),typeof t.path=="function"&&y.attr("d",t.path)}}Rp(r,[_3,x3])}};xr.drawZeroLine=function(e,r,t){t=t||t;var n=r._id+"zl",a=xr.shouldShowZeroLine(e,r,t.counterAxis),i=t.layer.selectAll("path."+n).data(a?[{x:0,id:r._id}]:[]);i.exit().remove(),i.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",t.crisp!==!1).each(function(){t.layer.selectAll("path").sort(function(o,l){return yV(o.id,l.id)})}),i.attr("transform",t.transFn).attr("d",t.path).call(q1.stroke,r.zerolinecolor||q1.defaultLine).style("stroke-width",$i.crispRound(e,r.zerolinewidth,r._gw||1)+"px").style("display",null),Rp(r,[b3])};xr.drawLabels=function(e,r,t){t=t||{};var n=e._fullLayout,a=r._id,i=r.zerolinelayer==="above traces",o=t.cls||a+"tick",l=t.vals.filter(function(ee){return ee.text}),s=t.labelFns,u=t.secondary?0:r.tickangle,f=(r._prevTickAngles||{})[o],v=t.layer.selectAll("g."+o).data(r.showticklabels?l:[],Pp),h=[];v.enter().append("g").classed(o,1).append("text").attr("text-anchor","middle").each(function(ee){var fe=Ao.select(this),he=e._promises.length;fe.call(pc.positionText,s.xFn(ee),s.yFn(ee)).call($i.font,{family:ee.font,size:ee.fontSize,color:ee.fontColor,weight:ee.fontWeight,style:ee.fontStyle,variant:ee.fontVariant,textcase:ee.fontTextcase,lineposition:ee.fontLineposition,shadow:ee.fontShadow}).text(ee.text).call(pc.convertToTspans,e),e._promises[he]?h.push(e._promises.pop().then(function(){d(fe,u)})):d(fe,u)}),Rp(r,[WM]),v.exit().remove(),t.repositionOnUpdate&&v.each(function(ee){Ao.select(this).select("text").call(pc.positionText,s.xFn(ee),s.yFn(ee))});function d(ee,fe){ee.each(function(he){var Le=Ao.select(this),Ie=Le.select(".text-math-group"),ze=s.anchorFn(he,fe),Xe=t.transFn.call(Le.node(),he)+(ta(fe)&&+fe!=0?" rotate("+fe+","+s.xFn(he)+","+(s.yFn(he)-he.fontSize/2)+")":""),Ce=pc.lineCount(Le),Qe=E1*he.fontSize,ue=s.heightFn(he,ta(fe)?+fe:0,(Ce-1)*Qe);if(ue&&(Xe+=j0(0,ue)),Ie.empty()){var ye=Le.select("text");ye.attr({transform:Xe,"text-anchor":ze}),ye.style("display",null),r._adjustTickLabelsOverflow&&r._adjustTickLabelsOverflow()}else{var Me=$i.bBox(Ie.node()).width,pe=Me*{end:-.5,start:.5}[ze];Ie.attr("transform",Xe+j0(pe,0))}})}r._adjustTickLabelsOverflow=function(){var ee=r.ticklabeloverflow;if(!(!ee||ee==="allow")){var fe=ee.indexOf("hide")!==-1,he=r._id.charAt(0)==="x",Le=0,Ie=he?e._fullLayout.width:e._fullLayout.height;if(ee.indexOf("domain")!==-1){var ze=ut.simpleMap(r.range,r.r2l);Le=r.l2p(ze[0])+r._offset,Ie=r.l2p(ze[1])+r._offset}var Xe=Math.min(Le,Ie),Ce=Math.max(Le,Ie),Qe=r.side,ue=1/0,ye=-1/0;v.each(function(K){var $=Ao.select(this),ke=$.select(".text-math-group");if(ke.empty()){var Be=$i.bBox($.node()),Ne=0;he?(Be.right>Ce||Be.leftCe||Be.top+(r.tickangle?0:K.fontSize/4)r["_visibleLabelMin_"+ze._id]?$.style("display","none"):Ce.K==="tick"&&!Xe&&$.node().style.display!=="none"&&$.style("display",null)})})})})},d(v,f+1?f:u);function m(){return h.length&&Promise.all(h)}var p=null;function y(){if(d(v,u),l.length&&r.autotickangles&&(r.type!=="log"||String(r.dtick).charAt(0)!=="D")){p=r.autotickangles[0];var ee=0,fe=[],he,Le=1;v.each(function(dr){ee=Math.max(ee,dr.fontSize);var gr=r.l2p(dr.x),Te=M3(this),Oe=$i.bBox(Te.node());Le=Math.max(Le,pc.lineCount(Te)),fe.push({top:0,bottom:10,height:10,left:gr-Oe.width/2,right:gr+Oe.width/2+2,width:Oe.width+2})});var Ie=(r.tickson==="boundaries"||r.showdividers)&&!t.secondary,ze=l.length,Xe=Math.abs((l[ze-1].x-l[0].x)*r._m)/(ze-1),Ce=Ie?Xe/2:Xe,Qe=Ie?r.ticklen:ee*1.25*Le,ue=Math.sqrt(Math.pow(Ce,2)+Math.pow(Qe,2)),ye=Ce/ue,Me=r.autotickangles.map(function(dr){return dr*Math.PI/180}),pe=Me.find(function(dr){return Math.abs(Math.cos(dr))<=ye});pe===void 0&&(pe=Me.reduce(function(dr,gr){return Math.abs(Math.cos(dr))re*V&&(W=V,z[D]=F[D]=B[D])}var ae=Math.abs(W-I);ae-A>0?(ae-=A,A*=1+A/ae):A=0,r._id.charAt(0)!=="y"&&(A=-A),z[M]=x.p2r(x.r2p(F[M])+k*A),x.autorange==="min"||x.autorange==="max reversed"?(z[0]=null,x._rangeInitial0=void 0,x._rangeInitial1=void 0):(x.autorange==="max"||x.autorange==="min reversed")&&(z[1]=null,x._rangeInitial0=void 0,x._rangeInitial1=void 0),n._insideTickLabelsUpdaterange[x._name+".range"]=z}var Q=ut.syncOrAsync(b);return Q&&Q.then&&e._promises.push(Q),Q};function YV(e,r,t){var n=r._id+"divider",a=t.vals,i=t.layer.selectAll("path."+n).data(a,Pp);i.exit().remove(),i.enter().insert("path",":first-child").classed(n,1).classed("crisp",1).call(q1.stroke,r.dividercolor).style("stroke-width",$i.crispRound(e,r.dividerwidth,1)+"px"),i.attr("transform",t.transFn).attr("d",t.path)}xr.getPxPosition=function(e,r){var t=e._fullLayout._size,n=r._id.charAt(0),a=r.side,i;if(r.anchor!=="free"?i=r._anchorAxis:n==="x"?i={_offset:t.t+(1-(r.position||0))*t.h,_length:0}:n==="y"&&(i={_offset:t.l+(r.position||0)*t.w+r._shift,_length:0}),a==="top"||a==="left")return i._offset;if(a==="bottom"||a==="right")return i._offset+i._length};function rA(e){var r=e.title.font.size,t=(e.title.text.match(pc.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?r*(mc+t*E1):t?r*(t+1)*E1:r}function GV(e,r){var t=e._fullLayout,n=r._id,a=n.charAt(0),i=r.title.font.size,o,l=(r.title.text.match(pc.BR_TAG_ALL)||[]).length;if(r.title.hasOwnProperty("standoff"))r.side==="bottom"||r.side==="right"?o=r._depth+r.title.standoff+i*mc:(r.side==="top"||r.side==="left")&&(o=r._depth+r.title.standoff+i*(C1+l*E1));else{var s=R1(r);if(r.type==="multicategory")o=r._depth;else{var u=1.5*i;s&&(u=.5*i,r.ticks==="outside"&&(u+=r.ticklen)),o=10+u+(r.linewidth?r.linewidth-1:0)}s||(a==="x"?o+=r.side==="top"?i*(r.showticklabels?1:0):i*(r.showticklabels?1.5:.5):o+=r.side==="right"?i*(r.showticklabels?1:.5):i*(r.showticklabels?.5:0))}var f=xr.getPxPosition(e,r),v,h,d;a==="x"?(h=r._offset+r._length/2,d=r.side==="top"?f-o:f+o):(d=r._offset+r._length/2,h=r.side==="right"?f+o:f-o,v={rotate:"-90",offset:0});var m;if(r.type!=="multicategory"){var p=r._selections[r._id+"tick"];if(m={selection:p,side:r.side},p&&p.node()&&p.node().parentNode){var y=$i.getTranslate(p.node().parentNode);m.offsetLeft=y.x,m.offsetTop=y.y}r.title.hasOwnProperty("standoff")&&(m.pad=0)}return r._titleStandoff=o,uV.draw(e,n+"title",{propContainer:r,propName:r._name+".title.text",placeholder:t._dfltTitle[a],avoid:m,transform:v,attributes:{x:h,y:d,"text-anchor":"middle"}})}xr.shouldShowZeroLine=function(e,r,t){var n=ut.simpleMap(r.range,r.r2l);return n[0]*n[1]<=0&&r.zeroline&&(r.type==="linear"||r.type==="-")&&!(r.rangebreaks&&r.maskBreaks(0)===Dp)&&(fA(r,0)||!VV(e,r,t,n)||WV(e,r))};xr.clipEnds=function(e,r){return r.filter(function(t){return fA(e,t.x)})};function fA(e,r){var t=e.l2p(r);return t>1&&t1)for(a=1;a=a.min&&e=pV:/%L/.test(r)?e>=dV:/%[SX]/.test(r)?e>=Lp:/%M/.test(r)?e>=D1:/%[HI]/.test(r)?e>=is:/%p/.test(r)?e>=Ju:/%[Aadejuwx]/.test(r)?e>=ei:/%[UVW]/.test(r)?e>=Ki:/%[Bbm]/.test(r)?e>=Cp:/%[q]/.test(r)?e>=Sp:/%[Yy]/.test(r)?e>=kp:!0}});var pA=te((Gue,dA)=>{"use strict";dA.exports=function(r,t,n){var a,i;if(n){var o=t==="reversed"||t==="min reversed"||t==="max reversed";a=n[o?1:0],i=n[o?0:1]}var l=r("autorangeoptions.minallowed",i===null?a:void 0),s=r("autorangeoptions.maxallowed",a===null?i:void 0);l===void 0&&r("autorangeoptions.clipmin"),s===void 0&&r("autorangeoptions.clipmax"),r("autorangeoptions.include")}});var q3=te((Vue,gA)=>{"use strict";var KV=pA();gA.exports=function(r,t,n,a){var i=t._template||{},o=t.type||i.type||"-";n("minallowed"),n("maxallowed");var l=n("range");if(!l){var s;!a.noInsiderange&&o!=="log"&&(s=n("insiderange"),s&&(s[0]===null||s[1]===null)&&(t.insiderange=!1,s=void 0),s&&(l=n("range",s)))}var u=t.getAutorangeDflt(l,a),f=n("autorange",u),v;l&&(l[0]===null&&l[1]===null||(l[0]===null||l[1]===null)&&(f==="reversed"||f===!0)||l[0]!==null&&(f==="min"||f==="max reversed")||l[1]!==null&&(f==="max"||f==="min reversed"))&&(l=void 0,delete t.range,t.autorange=!0,v=!0),v||(u=t.getAutorangeDflt(l,a),f=n("autorange",u)),f&&(KV(n,f,l),(o==="linear"||o==="-")&&n("rangemode")),t.cleanRange()}});var yA=te((Wue,mA)=>{var QV={left:0,top:0};mA.exports=eW;function eW(e,r,t){r=r||e.currentTarget||e.srcElement,Array.isArray(t)||(t=[0,0]);var n=e.clientX||0,a=e.clientY||0,i=rW(r);return t[0]=n-i.left,t[1]=a-i.top,t}function rW(e){return e===window||e===document||e===document.body?QV:e.getBoundingClientRect()}});var D3=te((Zue,bA)=>{"use strict";var tW=o2();function nW(){var e=!1;try{var r=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,r),window.removeEventListener("test",null,r)}catch(t){e=!1}return e}bA.exports=tW&&nW()});var xA=te((Xue,_A)=>{"use strict";_A.exports=function(r,t,n,a,i){var o=(r-n)/(a-n),l=o+t/(a-n),s=(o+l)/2;return i==="left"||i==="bottom"?o:i==="center"||i==="middle"?s:i==="right"||i==="top"?l:o<2/3-s?o:l>4/3-s?l:s}});var AA=te((jue,MA)=>{"use strict";var wA=pr(),aW=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];MA.exports=function(r,t,n,a){return n==="left"?r=0:n==="center"?r=1:n==="right"?r=2:r=wA.constrain(Math.floor(r*3),0,2),a==="bottom"?t=0:a==="middle"?t=1:a==="top"?t=2:t=wA.constrain(Math.floor(t*3),0,2),aW[t][r]}});var kA=te((Jue,TA)=>{"use strict";var iW=m1(),oW=Rd(),lW=u1().getGraphDiv,sW=i1(),E3=TA.exports={};E3.wrapped=function(e,r,t){e=lW(e),e._fullLayout&&oW.clear(e._fullLayout._uid+sW.HOVERID),E3.raw(e,r,t)};E3.raw=function(r,t){var n=r._fullLayout,a=r._hoverdata;t||(t={}),!(t.target&&!r._dragged&&iW.triggerHandler(r,"plotly_beforehover",t)===!1)&&(n._hoverlayer.selectAll("g").remove(),n._hoverlayer.selectAll("line").remove(),n._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,t.target&&a&&r.emit("plotly_unhover",{event:t,points:a}))}});var To=te(($ue,qA)=>{"use strict";var uW=yA(),P3=s2(),fW=D3(),cW=pr().removeElement,vW=Ea(),yc=qA.exports={};yc.align=xA();yc.getCursor=AA();var CA=kA();yc.unhover=CA.wrapped;yc.unhoverRaw=CA.raw;yc.init=function(r){var t=r.gd,n=1,a=t._context.doubleClickDelay,i=r.element,o,l,s,u,f,v,h,d;t._mouseDownTime||(t._mouseDownTime=0),i.style.pointerEvents="all",i.onmousedown=y,fW?(i._ontouchstart&&i.removeEventListener("touchstart",i._ontouchstart),i._ontouchstart=y,i.addEventListener("touchstart",y,{passive:!1})):i.ontouchstart=y;function m(x,_,A){return Math.abs(x)a&&(n=Math.max(n-1,1)),t._dragged)r.doneFn&&r.doneFn();else{var _;v.target===h?_=v:(_={target:h,srcElement:h,toElement:h},Object.keys(v).concat(Object.keys(v.__proto__)).forEach(A=>{var k=v[A];!_[A]&&typeof k!="function"&&(_[A]=k)})),r.clickFn&&r.clickFn(n,_),d||h.dispatchEvent(new MouseEvent("click",x))}t._dragging=!1,t._dragged=!1}};function LA(){var e=document.createElement("div");e.className="dragcover";var r=e.style;return r.position="fixed",r.left=0,r.right=0,r.top=0,r.bottom=0,r.zIndex=999999999,r.background="none",document.body.appendChild(e),e}yc.coverSlip=LA;function SA(e){return uW(e.changedTouches?e.changedTouches[0]:e,document.body)}});var $u=te((Kue,DA)=>{"use strict";DA.exports=function(r,t){(r.attr("class")||"").split(" ").forEach(function(n){n.indexOf("cursor-")===0&&r.classed(n,!1)}),t&&r.classed("cursor-"+t,!0)}});var RA=te((Que,PA)=>{"use strict";var R3=$u(),z1="data-savedcursor",EA="!!";PA.exports=function(r,t){var n=r.attr(z1);if(t){if(!n){for(var a=(r.attr("class")||"").split(" "),i=0;i{"use strict";var z3=$a(),hW=vl();zA.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:hW.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:z3({editType:"legend"}),grouptitlefont:z3({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:z3({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var Np=te(zp=>{"use strict";zp.isGrouped=function(r){return(r.traceorder||"").indexOf("grouped")!==-1};zp.isVertical=function(r){return r.orientation!=="h"};zp.isReversed=function(r){return(r.traceorder||"").indexOf("reversed")!==-1}});var H3=te((tfe,NA)=>{"use strict";var F3=dt(),Qi=pr(),dW=_n(),pW=bo(),gW=N3(),mW=k0(),I3=Np();function yW(e,r,t,n){var a=r[e]||{},i=dW.newContainer(t,e);function o(ae,Q){return Qi.coerce(a,i,gW,ae,Q)}var l=Qi.coerceFont(o,"font",t.font);o("bgcolor",t.paper_bgcolor),o("bordercolor");var s=o("visible");if(s){for(var u,f=function(ae,Q){var ee=u._input,fe=u;return Qi.coerce(ee,fe,pW,ae,Q)},v=t.font||{},h=Qi.coerceFont(o,"grouptitlefont",v,{overrideDflt:{size:Math.round(v.size*1.1)}}),d=0,m=!1,p="normal",y=(t.shapes||[]).filter(function(ae){return ae.showlegend}),b=n.concat(y).filter(function(ae){return e===(ae.legend||"legend")}),C=0;C(e==="legend"?1:0));if(_===!1&&(t[e]=void 0),!(_===!1&&!a.uirevision)&&(o("uirevision",t.uirevision),_!==!1)){o("borderwidth");var A=o("orientation"),k=o("yref"),M=o("xref"),D=A==="h",z=k==="paper",F=M==="paper",I,W,B,X="left";D?(I=0,F3.getComponentMethod("rangeslider","isVisible")(r.xaxis)?z?(W=1.1,B="bottom"):(W=1,B="top"):z?(W=-.1,B="top"):(W=0,B="bottom")):(W=1,B="auto",F?I=1.02:(I=1,X="right")),Qi.coerce(a,i,{x:{valType:"number",editType:"legend",min:F?-2:0,max:F?3:1,dflt:I}},"x"),Qi.coerce(a,i,{y:{valType:"number",editType:"legend",min:z?-2:0,max:z?3:1,dflt:W}},"y"),o("traceorder",p),I3.isGrouped(t[e])&&o("tracegroupgap"),o("entrywidth"),o("entrywidthmode"),o("indentation"),o("itemsizing"),o("itemwidth"),o("itemclick"),o("itemdoubleclick"),o("groupclick"),o("xanchor",X),o("yanchor",B),o("maxheight"),o("valign"),Qi.noneOrAll(a,i,["x","y"]);var V=o("title.text");if(V){o("title.side",D?"left":"top");var re=Qi.extendFlat({},l,{size:Qi.bigFont(l.size)});Qi.coerceFont(o,"title.font",re)}}}}NA.exports=function(r,t,n){var a,i=n.slice(),o=t.shapes;if(o)for(a=0;a{"use strict";var K0=dt(),O3=pr(),bW=O3.pushUnique,B3=!0;FA.exports=function(r,t,n){var a=t._fullLayout;if(t._dragged||t._editing)return;var i=a.legend.itemclick,o=a.legend.itemdoubleclick,l=a.legend.groupclick;n===1&&i==="toggle"&&o==="toggleothers"&&B3&&t.data&&t._context.showTips&&O3.notifier(O3._(t,"Double-click on legend to isolate one trace"),"long"),B3=!1;var s;if(n===1?s=i:n===2&&(s=o),!s)return;var u=l==="togglegroup",f=a.hiddenlabels?a.hiddenlabels.slice():[],v=r.data()[0][0];if(v.groupTitle&&v.noClick)return;var h=t._fullData,d=(a.shapes||[]).filter(function(nr){return nr.showlegend}),m=h.concat(d),p=v.trace;p._isShape&&(p=p._fullInput);var y=p.legendgroup,b,C,x,_,A,k,M={},D=[],z=[],F=[];function I(nr,lr){var vr=D.indexOf(nr),Je=M.visible;return Je||(Je=M.visible=[]),D.indexOf(nr)===-1&&(D.push(nr),vr=D.length-1),Je[vr]=lr,vr}var W=(a.shapes||[]).map(function(nr){return nr._input}),B=!1;function X(nr,lr){W[nr].visible=lr,B=!0}function V(nr,lr){if(!(v.groupTitle&&!u)){var vr=nr._fullInput||nr,Je=vr._isShape,dr=vr.index;dr===void 0&&(dr=vr._index);var gr=vr.visible===!1?!1:lr;Je?X(dr,gr):I(dr,gr)}}var re=p.legend,ae=p._fullInput,Q=ae&&ae._isShape;if(!Q&&K0.traceIs(p,"pie-like")){var ee=v.label,fe=f.indexOf(ee);if(s==="toggle")fe===-1?f.push(ee):f.splice(fe,1);else if(s==="toggleothers"){var he=fe!==-1,Le=[];for(b=0;b{"use strict";HA.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var UA=te((ife,OA)=>{"use strict";var BA=dt(),Y3=Np();OA.exports=function(r,t,n){var a=t._inHover,i=Y3.isGrouped(t),o=Y3.isReversed(t),l={},s=[],u=!1,f={},v=0,h=0,d,m;function p(ae,Q,ee){if(t.visible!==!1&&!(n&&ae!==t._id))if(Q===""||!Y3.isGrouped(t)){var fe="~~i"+v;s.push(fe),l[fe]=[ee],v++}else s.indexOf(Q)===-1?(s.push(Q),u=!0,l[Q]=[ee]):l[Q].push(ee)}for(d=0;dF&&(z=F)}M[d][0]._groupMinRank=z,M[d][0]._preGroupSort=d}var I=function(ae,Q){return ae[0]._groupMinRank-Q[0]._groupMinRank||ae[0]._preGroupSort-Q[0]._preGroupSort},W=function(ae,Q){return ae.trace.legendrank-Q.trace.legendrank||ae._preSort-Q._preSort};for(M.forEach(function(ae,Q){ae[0]._preGroupSort=Q}),M.sort(I),d=0;d{"use strict";var Fp=pr();function YA(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}bc.formatPiePercent=function(r,t){var n=YA((r*100).toPrecision(3));return Fp.numSeparate(n,t)+"%"};bc.formatPieValue=function(r,t){var n=YA(r.toPrecision(10));return Fp.numSeparate(n,t)};bc.getFirstFilled=function(r,t){if(Fp.isArrayOrTypedArray(r))for(var n=0;n{"use strict";var _W=fn(),xW=Et();GA.exports=function(r,t,n,a){var i=n.marker.pattern;i&&i.shape?_W.pointStyle(r,n,a,t):xW.fill(r,t.color)}});var jA=te((sfe,XA)=>{"use strict";var WA=Et(),ZA=G3().castOption,wW=VA();XA.exports=function(r,t,n,a){var i=n.marker.line,o=ZA(i.color,t.pts)||WA.defaultLine,l=ZA(i.width,t.pts)||0;r.call(wW,t,n,a).style("stroke-width",l).call(WA.stroke,o)}});var X3=te((ufe,rT)=>{"use strict";var ri=kt(),V3=dt(),Ha=pr(),JA=Ha.strTranslate,eo=fn(),ko=Et(),W3=es().extractOpts,Ip=Qa(),MW=jA(),AW=G3().castOption,TW=U3(),$A=12,KA=5,_c=2,kW=10,Q0=5;rT.exports=function(r,t,n){var a=t._fullLayout;n||(n=a.legend);var i=n.itemsizing==="constant",o=n.itemwidth,l=(o+TW.itemGap*2)/2,s=JA(l,0),u=function(M,D,z,F){var I;if(M+1)I=M;else if(D&&D.width>0)I=D.width;else return 0;return i?F:Math.min(I,z)};r.each(function(M){var D=ri.select(this),z=Ha.ensureSingle(D,"g","layers");z.style("opacity",M[0].trace.opacity);var F=n.indentation,I=n.valign,W=M[0].lineHeight,B=M[0].height;if(I==="middle"&&F===0||!W||!B)z.attr("transform",null);else{var X={top:1,bottom:-1}[I],V=X*(.5*(W-B+3))||0,re=n.indentation;z.attr("transform",JA(re,V))}var ae=z.selectAll("g.legendfill").data([M]);ae.enter().append("g").classed("legendfill",!0);var Q=z.selectAll("g.legendlines").data([M]);Q.enter().append("g").classed("legendlines",!0);var ee=z.selectAll("g.legendsymbols").data([M]);ee.enter().append("g").classed("legendsymbols",!0),ee.selectAll("g.legendpoints").data([M]).enter().append("g").classed("legendpoints",!0)}).each(k).each(h).each(m).each(d).each(y).each(_).each(x).each(f).each(v).each(b).each(C);function f(M){var D=QA(M),z=D.showFill,F=D.showLine,I=D.showGradientLine,W=D.showGradientFill,B=D.anyFill,X=D.anyLine,V=M[0],re=V.trace,ae,Q,ee=W3(re),fe=ee.colorscale,he=ee.reversescale,Le=function(ye){if(ye.size())if(z)eo.fillGroupStyle(ye,t,!0);else{var Me="legendfill-"+re.uid;eo.gradient(ye,t,Me,Z3(he),fe,"fill")}},Ie=function(ye){if(ye.size()){var Me="legendline-"+re.uid;eo.lineGroupStyle(ye),eo.gradient(ye,t,Me,Z3(he),fe,"stroke")}},ze=Ip.hasMarkers(re)||!B?"M5,0":X?"M5,-2":"M5,-3",Xe=ri.select(this),Ce=Xe.select(".legendfill").selectAll("path").data(z||W?[M]:[]);if(Ce.enter().append("path").classed("js-fill",!0),Ce.exit().remove(),Ce.attr("d",ze+"h"+o+"v6h-"+o+"z").call(Le),F||I){var Qe=u(void 0,re.line,kW,KA);Q=Ha.minExtend(re,{line:{width:Qe}}),ae=[Ha.minExtend(V,{trace:Q})]}var ue=Xe.select(".legendlines").selectAll("path").data(F||I?[ae]:[]);ue.enter().append("path").classed("js-line",!0),ue.exit().remove(),ue.attr("d",ze+(I?"l"+o+",0.0001":"h"+o)).call(F?eo.lineGroupStyle:Ie)}function v(M){var D=QA(M),z=D.anyFill,F=D.anyLine,I=D.showLine,W=D.showMarker,B=M[0],X=B.trace,V=!W&&!F&&!z&&Ip.hasText(X),re,ae;function Q(Ce,Qe,ue,ye){var Me=Ha.nestedProperty(X,Ce).get(),pe=Ha.isArrayOrTypedArray(Me)&&Qe?Qe(Me):Me;if(i&&pe&&ye!==void 0&&(pe=ye),ue){if(peue[1])return ue[1]}return pe}function ee(Ce){return B._distinct&&B.index&&Ce[B.index]?Ce[B.index]:Ce[0]}if(W||V||I){var fe={},he={};if(W){fe.mc=Q("marker.color",ee),fe.mx=Q("marker.symbol",ee),fe.mo=Q("marker.opacity",Ha.mean,[.2,1]),fe.mlc=Q("marker.line.color",ee),fe.mlw=Q("marker.line.width",Ha.mean,[0,5],_c),he.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var Le=Q("marker.size",Ha.mean,[2,16],$A);fe.ms=Le,he.marker.size=Le}I&&(he.line={width:Q("line.width",ee,[0,10],KA)}),V&&(fe.tx="Aa",fe.tp=Q("textposition",ee),fe.ts=10,fe.tc=Q("textfont.color",ee),fe.tf=Q("textfont.family",ee),fe.tw=Q("textfont.weight",ee),fe.ty=Q("textfont.style",ee),fe.tv=Q("textfont.variant",ee),fe.tC=Q("textfont.textcase",ee),fe.tE=Q("textfont.lineposition",ee),fe.tS=Q("textfont.shadow",ee)),re=[Ha.minExtend(B,fe)],ae=Ha.minExtend(X,he),ae.selectedpoints=null,ae.texttemplate=null}var Ie=ri.select(this).select("g.legendpoints"),ze=Ie.selectAll("path.scatterpts").data(W?re:[]);ze.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",s),ze.exit().remove(),ze.call(eo.pointStyle,ae,t),W&&(re[0].mrc=3);var Xe=Ie.selectAll("g.pointtext").data(V?re:[]);Xe.enter().append("g").classed("pointtext",!0).append("text").attr("transform",s),Xe.exit().remove(),Xe.selectAll("text").call(eo.textPointStyle,ae,t)}function h(M){var D=M[0].trace,z=D.type==="waterfall";if(M[0]._distinct&&z){var F=M[0].trace[M[0].dir].marker;return M[0].mc=F.color,M[0].mlw=F.line.width,M[0].mlc=F.line.color,p(M,this,"waterfall")}var I=[];D.visible&&z&&(I=M[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var W=ri.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(I);W.enter().append("path").classed("legendwaterfall",!0).attr("transform",s).style("stroke-miterlimit",1),W.exit().remove(),W.each(function(B){var X=ri.select(this),V=D[B[0]].marker,re=u(void 0,V.line,Q0,_c);X.attr("d",B[1]).style("stroke-width",re+"px").call(ko.fill,V.color),re&&X.call(ko.stroke,V.line.color)})}function d(M){p(M,this)}function m(M){p(M,this,"funnel")}function p(M,D,z){var F=M[0].trace,I=F.marker||{},W=I.line||{},B=I.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",X=z?F.visible&&F.type===z:V3.traceIs(F,"bar"),V=ri.select(D).select("g.legendpoints").selectAll("path.legend"+z).data(X?[M]:[]);V.enter().append("path").classed("legend"+z,!0).attr("d",B).attr("transform",s),V.exit().remove(),V.each(function(re){var ae=ri.select(this),Q=re[0],ee=u(Q.mlw,I.line,Q0,_c);ae.style("stroke-width",ee+"px");var fe=Q.mcc;if(!n._inHover&&"mc"in Q){var he=W3(I),Le=he.mid;Le===void 0&&(Le=(he.max+he.min)/2),fe=eo.tryColorscale(I,"")(Le)}var Ie=fe||Q.mc||I.color,ze=I.pattern,Xe=eo.getPatternAttr,Ce=ze&&(Xe(ze.shape,0,"")||Xe(ze.path,0,""));if(Ce){var Qe=Xe(ze.bgcolor,0,null),ue=Xe(ze.fgcolor,0,null),ye=ze.fgopacity,Me=eT(ze.size,8,10),pe=eT(ze.solidity,.5,1),U="legend-"+F.uid;ae.call(eo.pattern,"legend",t,U,Ce,Me,pe,fe,ze.fillmode,Qe,ue,ye)}else ae.call(ko.fill,Ie);ee&&ko.stroke(ae,Q.mlc||W.color)})}function y(M){var D=M[0].trace,z=ri.select(this).select("g.legendpoints").selectAll("path.legendbox").data(D.visible&&V3.traceIs(D,"box-violin")?[M]:[]);z.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),z.exit().remove(),z.each(function(){var F=ri.select(this);if((D.boxpoints==="all"||D.points==="all")&&ko.opacity(D.fillcolor)===0&&ko.opacity((D.line||{}).color)===0){var I=Ha.minExtend(D,{marker:{size:i?$A:Ha.constrain(D.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});z.call(eo.pointStyle,I,t)}else{var W=u(void 0,D.line,Q0,_c);F.style("stroke-width",W+"px").call(ko.fill,D.fillcolor),W&&ko.stroke(F,D.line.color)}})}function b(M){var D=M[0].trace,z=ri.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(D.visible&&D.type==="candlestick"?[M,M]:[]);z.enter().append("path").classed("legendcandle",!0).attr("d",function(F,I){return I?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",s).style("stroke-miterlimit",1),z.exit().remove(),z.each(function(F,I){var W=ri.select(this),B=D[I?"increasing":"decreasing"],X=u(void 0,B.line,Q0,_c);W.style("stroke-width",X+"px").call(ko.fill,B.fillcolor),X&&ko.stroke(W,B.line.color)})}function C(M){var D=M[0].trace,z=ri.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(D.visible&&D.type==="ohlc"?[M,M]:[]);z.enter().append("path").classed("legendohlc",!0).attr("d",function(F,I){return I?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",s).style("stroke-miterlimit",1),z.exit().remove(),z.each(function(F,I){var W=ri.select(this),B=D[I?"increasing":"decreasing"],X=u(void 0,B.line,Q0,_c);W.style("fill","none").call(eo.dashLine,B.line.dash,X),X&&ko.stroke(W,B.line.color)})}function x(M){A(M,this,"pie")}function _(M){A(M,this,"funnelarea")}function A(M,D,z){var F=M[0],I=F.trace,W=z?I.visible&&I.type===z:V3.traceIs(I,z),B=ri.select(D).select("g.legendpoints").selectAll("path.legend"+z).data(W?[M]:[]);if(B.enter().append("path").classed("legend"+z,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),B.exit().remove(),B.size()){var X=I.marker||{},V=u(AW(X.line.width,F.pts),X.line,Q0,_c),re="pieLike",ae=Ha.minExtend(I,{marker:{line:{width:V}}},re),Q=Ha.minExtend(F,{trace:ae},re);MW(B,Q,ae,t)}}function k(M){var D=M[0].trace,z,F=[];if(D.visible)switch(D.type){case"histogram2d":case"heatmap":F=[["M-15,-2V4H15V-2Z"]],z=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":F=[["M-6,-6V6H6V-6Z"]],z=!0;break;case"densitymapbox":case"densitymap":F=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],z="radial";break;case"cone":F=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],z=!1;break;case"streamtube":F=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],z=!1;break;case"surface":F=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],z=!0;break;case"mesh3d":F=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],z=!1;break;case"volume":F=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],z=!0;break;case"isosurface":F=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],z=!1;break}var I=ri.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(F);I.enter().append("path").classed("legend3dandfriends",!0).attr("transform",s).style("stroke-miterlimit",1),I.exit().remove(),I.each(function(W,B){var X=ri.select(this),V=W3(D),re=V.colorscale,ae=V.reversescale,Q=function(Le){if(Le.size()){var Ie="legendfill-"+D.uid;eo.gradient(Le,t,Ie,Z3(ae,z==="radial"),re,"fill")}},ee;if(re){if(!z){var he=re.length;ee=B===0?re[ae?he-1:0][1]:B===1?re[ae?0:he-1][1]:re[Math.floor((he-1)/2)][1]}}else{var fe=D.vertexcolor||D.facecolor||D.color;ee=Ha.isArrayOrTypedArray(fe)?fe[B]||fe[0]:fe}X.attr("d",W[0]),ee?X.call(ko.fill,ee):X.call(Q)})}};function Z3(e,r){var t=r?"radial":"horizontal";return t+(e?"":"reversed")}function QA(e){var r=e[0].trace,t=r.contours,n=Ip.hasLines(r),a=Ip.hasMarkers(r),i=r.visible&&r.fill&&r.fill!=="none",o=!1,l=!1;if(t){var s=t.coloring;s==="lines"?o=!0:n=s==="none"||s==="heatmap"||t.showlines,t.type==="constraint"?i=t._operation!=="=":(s==="fill"||s==="heatmap")&&(l=!0)}return{showMarker:a,showLine:n,showFill:i,showGradientLine:o,showGradientFill:l,anyLine:n||o,anyFill:i||l}}function eT(e,r,t){return e&&Ha.isArrayOrTypedArray(e)?r:e>t?t:e}});var K3=te((ffe,cT)=>{"use strict";var Ri=kt(),na=pr(),J3=ca(),tv=dt(),tT=m1(),j3=To(),aa=fn(),Bp=Et(),xc=vi(),nT=IA(),va=U3(),$3=Ka(),uT=$3.LINE_SPACING,rv=$3.FROM_TL,aT=$3.FROM_BR,iT=UA(),SW=X3(),oT=Np(),ev=1,CW=/^legend[0-9]*$/;cT.exports=function(r,t){if(t)lT(r,t);else{var n=r._fullLayout,a=n._legends,i=n._infolayer.selectAll('[class^="legend"]');i.each(function(){var u=Ri.select(this),f=u.attr("class"),v=f.split(" ")[0];v.match(CW)&&a.indexOf(v)===-1&&u.remove()});for(var o=0;o1)}var m=n.hiddenlabels||[];if(!l&&(!n.showlegend||!s.length))return o.selectAll("."+a).remove(),n._topdefs.select("#"+i).remove(),J3.autoMargin(e,a);var p=na.ensureSingle(o,"g",a,function(D){l||D.attr("pointer-events","all")}),y=na.ensureSingleById(n._topdefs,"clipPath",i,function(D){D.append("rect")}),b=na.ensureSingle(p,"rect","bg",function(D){D.attr("shape-rendering","crispEdges")});b.call(Bp.stroke,t.bordercolor).call(Bp.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px");var C=na.ensureSingle(p,"g","scrollbox"),x=t.title;t._titleWidth=0,t._titleHeight=0;var _;x.text?(_=na.ensureSingle(C,"text",a+"titletext"),_.attr("text-anchor","start").call(aa.font,x.font).text(x.text),Op(_,C,e,t,ev)):C.selectAll("."+a+"titletext").remove();var A=na.ensureSingle(p,"rect","scrollbar",function(D){D.attr(va.scrollBarEnterAttrs).call(Bp.fill,va.scrollBarColor)}),k=C.selectAll("g.groups").data(s);k.enter().append("g").attr("class","groups"),k.exit().remove();var M=k.selectAll("g.traces").data(na.identity);M.enter().append("g").attr("class","traces"),M.exit().remove(),M.style("opacity",function(D){var z=D[0].trace;return tv.traceIs(z,"pie-like")?m.indexOf(D[0].label)!==-1?.5:1:z.visible==="legendonly"?.5:1}).each(function(){Ri.select(this).call(qW,e,t)}).call(SW,e,t).each(function(){l||Ri.select(this).call(DW,e,a)}),na.syncOrAsync([J3.previousPromises,function(){return RW(e,k,M,t)},function(){var D=n._size,z=t.borderwidth,F=t.xref==="paper",I=t.yref==="paper";if(x.text&&LW(_,t,z),!l){var W,B;F?W=D.l+D.w*t.x-rv[Up(t)]*t._width:W=n.width*t.x-rv[Up(t)]*t._width,I?B=D.t+D.h*(1-t.y)-rv[Yp(t)]*t._effHeight:B=n.height*(1-t.y)-rv[Yp(t)]*t._effHeight;var X=zW(e,a,W,B);if(X)return;if(n.margin.autoexpand){var V=W,re=B;W=F?na.constrain(W,0,n.width-t._width):V,B=I?na.constrain(B,0,n.height-t._effHeight):re,W!==V&&na.log("Constrain "+a+".x to make legend fit inside graph"),B!==re&&na.log("Constrain "+a+".y to make legend fit inside graph")}aa.setTranslate(p,W,B)}if(A.on(".drag",null),p.on("wheel",null),l||t._height<=t._maxHeight||e._context.staticPlot){var ae=t._effHeight;l&&(ae=t._height),b.attr({width:t._width-z,height:ae-z,x:z/2,y:z/2}),aa.setTranslate(C,0,0),y.select("rect").attr({width:t._width-2*z,height:ae-2*z,x:z,y:z}),aa.setClipUrl(C,i,e),aa.setRect(A,0,0,0,0),delete t._scrollY}else{var Q=Math.max(va.scrollBarMinHeight,t._effHeight*t._effHeight/t._height),ee=t._effHeight-Q-2*va.scrollBarMargin,fe=t._height-t._effHeight,he=ee/fe,Le=Math.min(t._scrollY||0,fe);b.attr({width:t._width-2*z+va.scrollBarWidth+va.scrollBarMargin,height:t._effHeight-z,x:z/2,y:z/2}),y.select("rect").attr({width:t._width-2*z+va.scrollBarWidth+va.scrollBarMargin,height:t._effHeight-2*z,x:z,y:z+Le}),aa.setClipUrl(C,i,e),Me(Le,Q,he),p.on("wheel",function(){Le=na.constrain(t._scrollY+Ri.event.deltaY/fe*ee,0,fe),Me(Le,Q,he),Le!==0&&Le!==fe&&Ri.event.preventDefault()});var Ie,ze,Xe,Ce=function(ke,Be,Ne){var ir=(Ne-Be)/he+ke;return na.constrain(ir,0,fe)},Qe=function(ke,Be,Ne){var ir=(Be-Ne)/he+ke;return na.constrain(ir,0,fe)},ue=Ri.behavior.drag().on("dragstart",function(){var ke=Ri.event.sourceEvent;ke.type==="touchstart"?Ie=ke.changedTouches[0].clientY:Ie=ke.clientY,Xe=Le}).on("drag",function(){var ke=Ri.event.sourceEvent;ke.buttons===2||ke.ctrlKey||(ke.type==="touchmove"?ze=ke.changedTouches[0].clientY:ze=ke.clientY,Le=Ce(Xe,Ie,ze),Me(Le,Q,he))});A.call(ue);var ye=Ri.behavior.drag().on("dragstart",function(){var ke=Ri.event.sourceEvent;ke.type==="touchstart"&&(Ie=ke.changedTouches[0].clientY,Xe=Le)}).on("drag",function(){var ke=Ri.event.sourceEvent;ke.type==="touchmove"&&(ze=ke.changedTouches[0].clientY,Le=Qe(Xe,Ie,ze),Me(Le,Q,he))});C.call(ye)}function Me(ke,Be,Ne){t._scrollY=e._fullLayout[a]._scrollY=ke,aa.setTranslate(C,0,-ke),aa.setRect(A,t._width,va.scrollBarMargin+ke*Ne,va.scrollBarWidth,Be),y.select("rect").attr("y",z+ke)}if(e._context.edits.legendPosition){var pe,U,K,$;p.classed("cursor-move",!0),j3.init({element:p.node(),gd:e,prepFn:function(ke){if(ke.target!==A.node()){var Be=aa.getTranslate(p);K=Be.x,$=Be.y}},moveFn:function(ke,Be){if(K!==void 0&&$!==void 0){var Ne=K+ke,ir=$+Be;aa.setTranslate(p,Ne,ir),pe=j3.align(Ne,t._width,D.l,D.l+D.w,t.xanchor),U=j3.align(ir+t._height,-t._height,D.t+D.h,D.t,t.yanchor)}},doneFn:function(){if(pe!==void 0&&U!==void 0){var ke={};ke[a+".x"]=pe,ke[a+".y"]=U,tv.call("_guiRelayout",e,ke)}},clickFn:function(ke,Be){var Ne=o.selectAll("g.traces").filter(function(){var ir=this.getBoundingClientRect();return Be.clientX>=ir.left&&Be.clientX<=ir.right&&Be.clientY>=ir.top&&Be.clientY<=ir.bottom});Ne.size()>0&&fT(e,p,Ne,ke,Be)}})}}],e)}}function Hp(e,r,t){var n=e[0],a=n.width,i=r.entrywidthmode,o=n.trace.legendwidth||r.entrywidth;return i==="fraction"?r._maxWidth*o:t+(o||a)}function fT(e,r,t,n,a){var i=t.data()[0][0].trace,o={event:a,node:t.node(),curveNumber:i.index,expandedIndex:i.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};i._group&&(o.group=i._group),tv.traceIs(i,"pie-like")&&(o.label=t.datum()[0].label);var l=tT.triggerHandler(e,"plotly_legendclick",o);if(n===1){if(l===!1)return;r._clickTimeout=setTimeout(function(){e._fullLayout&&nT(t,e,n)},e._context.doubleClickDelay)}else if(n===2){r._clickTimeout&&clearTimeout(r._clickTimeout),e._legendMouseDownTime=0;var s=tT.triggerHandler(e,"plotly_legenddoubleclick",o);s!==!1&&l!==!1&&nT(t,e,n)}}function qW(e,r,t){var n=Gp(t),a=e.data()[0][0],i=a.trace,o=tv.traceIs(i,"pie-like"),l=!t._inHover&&r._context.edits.legendText&&!o,s=t._maxNameLength,u,f;a.groupTitle?(u=a.groupTitle.text,f=a.groupTitle.font):(f=t.font,t.entries?u=a.text:(u=o?a.label:i.name,i._meta&&(u=na.templateString(u,i._meta))));var v=na.ensureSingle(e,"text",n+"text");v.attr("text-anchor","start").call(aa.font,f).text(l?sT(u,s):u);var h=t.indentation+t.itemwidth+va.itemGap*2;xc.positionText(v,h,0),l?v.call(xc.makeEditable,{gd:r,text:u}).call(Op,e,r,t).on("edit",function(d){this.text(sT(d,s)).call(Op,e,r,t);var m=a.trace._fullInput||{},p={};return p.name=d,m._isShape?tv.call("_guiRelayout",r,"shapes["+i.index+"].name",p.name):tv.call("_guiRestyle",r,p,i.index)}):Op(v,e,r,t)}function sT(e,r){var t=Math.max(4,r);if(e&&e.trim().length>=t/2)return e;e=e||"";for(var n=t-e.length;n>0;n--)e+=" ";return e}function DW(e,r,t){var n=r._context.doubleClickDelay,a,i=1,o=na.ensureSingle(e,"rect",t+"toggle",function(l){r._context.staticPlot||l.style("cursor","pointer").attr("pointer-events","all"),l.call(Bp.fill,"rgba(0,0,0,0)")});r._context.staticPlot||(o.on("mousedown",function(){a=new Date().getTime(),a-r._legendMouseDownTimen&&(i=Math.max(i-1,1)),fT(r,l,e,i,Ri.event)}}))}function Op(e,r,t,n,a){n._inHover&&e.attr("data-notex",!0),xc.convertToTspans(e,t,function(){EW(r,t,n,a)})}function EW(e,r,t,n){var a=e.data()[0][0];if(!t._inHover&&a&&!a.trace.showlegend){e.remove();return}var i=e.select("g[class*=math-group]"),o=i.node(),l=Gp(t);t||(t=r._fullLayout[l]);var s=t.borderwidth,u;n===ev?u=t.title.font:a.groupTitle?u=a.groupTitle.font:u=t.font;var f=u.size*uT,v,h;if(o){var d=aa.bBox(o);v=d.height,h=d.width,n===ev?aa.setTranslate(i,s,s+v*.75):aa.setTranslate(i,0,v*.25)}else{var m="."+l+(n===ev?"title":"")+"text",p=e.select(m),y=xc.lineCount(p),b=p.node();if(v=f*y,h=b?aa.bBox(b).width:0,n===ev)t.title.side==="left"&&(h+=va.itemGap*2),xc.positionText(p,s+va.titlePad,s+f);else{var C=va.itemGap*2+t.indentation+t.itemwidth;a.groupTitle&&(C=va.itemGap,h-=t.indentation+t.itemwidth),xc.positionText(p,C,-f*((y-1)/2-.3))}}n===ev?(t._titleWidth=h,t._titleHeight=v):(a.lineHeight=f,a.height=Math.max(v,16)+3,a.width=h)}function PW(e){var r=0,t=0,n=e.title.side;return n&&(n.indexOf("left")!==-1&&(r=e._titleWidth),n.indexOf("top")!==-1&&(t=e._titleHeight)),[r,t]}function RW(e,r,t,n){var a=e._fullLayout,i=Gp(n);n||(n=a[i]);var o=a._size,l=oT.isVertical(n),s=oT.isGrouped(n),u=n.entrywidthmode==="fraction",f=n.borderwidth,v=2*f,h=va.itemGap,d=n.indentation+n.itemwidth+h*2,m=2*(f+h),p=Yp(n),y=n.y<0||n.y===0&&p==="top",b=n.y>1||n.y===1&&p==="bottom",C=n.tracegroupgap,x={};let{orientation:_,yref:A}=n,{maxheight:k}=n,M=y||b||_!=="v"||A!=="paper";k||(k=M?.5:1);let D=M?a.height:o.h;n._maxHeight=Math.max(k>1?k:k*D,30);var z=0;n._width=0,n._height=0;var F=PW(n);if(l)t.each(function(Me){var pe=Me[0].height;aa.setTranslate(this,f+F[0],f+F[1]+n._height+pe/2+h),n._height+=pe,n._width=Math.max(n._width,Me[0].width)}),z=d+n._width,n._width+=h+d+v,n._height+=m,s&&(r.each(function(Me,pe){aa.setTranslate(this,0,pe*n.tracegroupgap)}),n._height+=(n._lgroupsLength-1)*n.tracegroupgap);else{var I=Up(n),W=n.x<0||n.x===0&&I==="right",B=n.x>1||n.x===1&&I==="left",X=b||y,V=a.width/2;n._maxWidth=Math.max(W?X&&I==="left"?o.l+o.w:V:B?X&&I==="right"?o.r+o.w:V:o.w,2*d);var re=0,ae=0;t.each(function(Me){var pe=Hp(Me,n,d);re=Math.max(re,pe),ae+=pe}),z=null;var Q=0;if(s){var ee=0,fe=0,he=0;r.each(function(){var Me=0,pe=0;Ri.select(this).selectAll("g.traces").each(function(K){var $=Hp(K,n,d),ke=K[0].height;aa.setTranslate(this,F[0],F[1]+f+h+ke/2+pe),pe+=ke,Me=Math.max(Me,$),x[K[0].trace.legendgroup]=Me});var U=Me+h;fe>0&&U+f+fe>n._maxWidth?(Q=Math.max(Q,fe),fe=0,he+=ee+C,ee=pe):ee=Math.max(ee,pe),aa.setTranslate(this,fe,he),fe+=U}),n._width=Math.max(Q,fe)+f,n._height=he+ee+m}else{var Le=t.size(),Ie=ae+v+(Le-1)*h=n._maxWidth&&(Q=Math.max(Q,Qe),Xe=0,Ce+=ze,n._height+=ze,ze=0),aa.setTranslate(this,F[0]+f+Xe,F[1]+f+Ce+pe/2+h),Qe=Xe+U+h,Xe+=K,ze=Math.max(ze,pe)}),Ie?(n._width=Xe+v,n._height=ze+m):(n._width=Math.max(Q,Qe)+v,n._height+=ze+m)}}n._width=Math.ceil(Math.max(n._width+F[0],n._titleWidth+2*(f+va.titlePad))),n._height=Math.ceil(Math.max(n._height+F[1],n._titleHeight+2*(f+va.itemGap))),n._effHeight=Math.min(n._height,n._maxHeight);var ue=e._context.edits,ye=ue.legendText||ue.legendPosition;t.each(function(Me){var pe=Ri.select(this).select("."+i+"toggle"),U=Me[0].height,K=Me[0].trace.legendgroup,$=Hp(Me,n,d);s&&K!==""&&($=x[K]);var ke=ye?d:z||$;!l&&!u&&(ke+=h/2),aa.setRect(pe,0,-U/2,ke,U)})}function zW(e,r,t,n){var a=e._fullLayout,i=a[r],o=Up(i),l=Yp(i),s=i.xref==="paper",u=i.yref==="paper";e._fullLayout._reservedMargin[r]={};var f=i.y<.5?"b":"t",v=i.x<.5?"l":"r",h={r:a.width-t,l:t+i._width,b:a.height-n,t:n+i._effHeight};if(s&&u)return J3.autoMargin(e,r,{x:i.x,y:i.y,l:i._width*rv[o],r:i._width*aT[o],b:i._effHeight*aT[l],t:i._effHeight*rv[l]});s?e._fullLayout._reservedMargin[r][f]=h[f]:u||i.orientation==="v"?e._fullLayout._reservedMargin[r][v]=h[v]:e._fullLayout._reservedMargin[r][f]=h[f]}function Up(e){return na.isRightAnchor(e)?"right":na.isCenterAnchor(e)?"center":"left"}function Yp(e){return na.isBottomAnchor(e)?"bottom":na.isMiddleAnchor(e)?"middle":"top"}function Gp(e){return e._id||"legend"}});var t5=te(r5=>{"use strict";var wc=kt(),Qs=Ht(),vT=Jl(),Hn=pr(),NW=Hn.pushUnique,Q3=Hn.strTranslate,FW=Hn.strRotate,IW=m1(),So=vi(),HW=RA(),os=fn(),ba=Et(),Vp=To(),ls=Dn(),BW=Ea().zindexSeparator,av=dt(),bl=Gu(),Mc=i1(),OW=H3(),UW=K3(),_T=Mc.YANGLE,e5=Math.PI*_T/180,YW=1/Math.sin(e5),GW=Math.cos(e5),VW=Math.sin(e5),Ln=Mc.HOVERARROWSIZE,Pt=Mc.HOVERTEXTPAD,hT={box:!0,ohlc:!0,violin:!0,candlestick:!0},WW={scatter:!0,scattergl:!0,splom:!0};function dT(e,r){return e.distance-r.distance}r5.hover=function(r,t,n,a){r=Hn.getGraphDiv(r);var i=t.target;Hn.throttle(r._fullLayout._uid+Mc.HOVERID,Mc.HOVERMINTIME,function(){ZW(r,t,n,a,i)})};r5.loneHover=function(r,t){var n=!0;Array.isArray(r)||(n=!1,r=[r]);var a=t.gd,i=TT(a),o=kT(a),l=r.map(function(y){var b=y._x0||y.x0||y.x||0,C=y._x1||y.x1||y.x||0,x=y._y0||y.y0||y.y||0,_=y._y1||y.y1||y.y||0,A=y.eventData;if(A){var k=Math.min(b,C),M=Math.max(b,C),D=Math.min(x,_),z=Math.max(x,_),F=y.trace;if(av.traceIs(F,"gl3d")){var I=a._fullLayout[F.scene]._scene.container,W=I.offsetLeft,B=I.offsetTop;k+=W,M+=W,D+=B,z+=B}A.bbox={x0:k+o,x1:M+o,y0:D+i,y1:z+i},t.inOut_bbox&&t.inOut_bbox.push(A.bbox)}else A=!1;return{color:y.color||ba.defaultLine,x0:y.x0||y.x||0,x1:y.x1||y.x||0,y0:y.y0||y.y||0,y1:y.y1||y.y||0,xLabel:y.xLabel,yLabel:y.yLabel,zLabel:y.zLabel,text:y.text,name:y.name,idealAlign:y.idealAlign,borderColor:y.borderColor,fontFamily:y.fontFamily,fontSize:y.fontSize,fontColor:y.fontColor,fontWeight:y.fontWeight,fontStyle:y.fontStyle,fontVariant:y.fontVariant,nameLength:y.nameLength,textAlign:y.textAlign,trace:y.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:y.hovertemplate||!1,hovertemplateLabels:y.hovertemplateLabels||!1,eventData:A}}),s=!1,u=wT(l,{gd:a,hovermode:"closest",rotateLabels:s,bgColor:t.bgColor||ba.background,container:wc.select(t.container),outerContainer:t.outerContainer||t.container}),f=u.hoverLabels,v=5,h=0,d=0;f.sort(function(y,b){return y.y0-b.y0}).each(function(y,b){var C=y.y0-y.by/2;C-vM[0]._length||$<0||$>D[0]._length)return Vp.unhoverRaw(e,r)}if(r.pointerX=K+M[0]._offset,r.pointerY=$+D[0]._offset,"xval"in r?re=bl.flat(i,r.xval):re=bl.p2c(M,K),"yval"in r?ae=bl.flat(i,r.yval):ae=bl.p2c(D,$),!Qs(re[0])||!Qs(ae[0]))return Hn.warn("Fx.hover failed",r,e),Vp.unhoverRaw(e,r)}var Ne=1/0;function ir(jr,Ut){for(ee=0;eeue&&(X.splice(0,ue),Ne=X[0].distance),v&&B!==0&&X.length===0){Qe.distance=B,Qe.index=!1;var Yt=he._module.hoverPoints(Qe,Xe,Ce,"closest",{hoverLayer:l._hoverlayer});if(Yt&&(Yt=Yt.filter(function(hn){return hn.spikeDistance<=B})),Yt&&Yt.length){var Bn,Ga=Yt.filter(function(hn){return hn.xa.showspikes&&hn.xa.spikesnap!=="hovered data"});if(Ga.length){var kn=Ga[0];Qs(kn.x0)&&Qs(kn.y0)&&(Bn=Ye(kn),(!ye.vLinePoint||ye.vLinePoint.spikeDistance>Bn.spikeDistance)&&(ye.vLinePoint=Bn))}var Va=Yt.filter(function(hn){return hn.ya.showspikes&&hn.ya.spikesnap!=="hovered data"});if(Va.length){var ia=Va[0];Qs(ia.x0)&&Qs(ia.y0)&&(Bn=Ye(ia),(!ye.hLinePoint||ye.hLinePoint.spikeDistance>Bn.spikeDistance)&&(ye.hLinePoint=Bn))}}}}}ir();function or(jr,Ut,Nt){for(var rn=null,Tn=1/0,vn,Yt=0;Ytjr.trace.index===Ue.trace.index):X=[Ue];var Ze=X.length,mr=bT("x",Ue,l),Tr=bT("y",Ue,l);ir(mr,Tr);var yr=[],wr={},Hr=0,Sr=function(jr){var Ut=hT[jr.trace.type]?xT(jr):jr.trace.index;if(!wr[Ut])Hr++,wr[Ut]=Hr,yr.push(jr);else{var Nt=wr[Ut]-1,rn=yr[Nt];Nt>0&&Math.abs(jr.distance)Ze-1;Dr--)Sr(X[Dr]);X=yr,Je()}var ur=e._hoverdata,_e=[],Ae=TT(e),Ke=kT(e);for(let jr of X){var rr=bl.makeEventData(jr,jr.trace,jr.cd);if(jr.hovertemplate!==!1){var Lr=!1;jr.cd[jr.index]&&jr.cd[jr.index].ht&&(Lr=jr.cd[jr.index].ht),jr.hovertemplate=Lr||jr.trace.hovertemplate||!1}if(jr.xa&&jr.ya){var Yr=jr.x0+jr.xa._offset,Fr=jr.x1+jr.xa._offset,lt=jr.y0+jr.ya._offset,xt=jr.y1+jr.ya._offset,Rt=Math.min(Yr,Fr),Kt=Math.max(Yr,Fr),cn=Math.min(lt,xt),pn=Math.max(lt,xt);rr.bbox={x0:Rt+Ke,x1:Kt+Ke,y0:cn+Ae,y1:pn+Ae}}jr.eventData=[rr],_e.push(rr)}e._hoverdata=_e;var Mn=h==="y"&&(V.length>1||X.length>1)||h==="closest"&&Me&&X.length>1,Xt=ba.combine(l.plot_bgcolor||ba.background,l.paper_bgcolor),Qt=wT(X,{gd:e,hovermode:h,rotateLabels:Mn,bgColor:Xt,container:l._hoverlayer,outerContainer:l._paper.node(),commonLabelOpts:l.hoverlabel,hoverdistance:l.hoverdistance}),en=Qt.hoverLabels;if(bl.isUnifiedHover(h)||(jW(en,Mn,l,Qt.commonLabelBoundingBox),AT(en,Mn,l._invScaleX,l._invScaleY)),a&&a.tagName){var an=av.getComponentMethod("annotations","hasClickToShow")(e,_e);HW(wc.select(a),an?"pointer":"")}!a||n||!KW(e,r,ur)||(ur&&e.emit("plotly_unhover",{event:r,points:ur}),e.emit("plotly_hover",{event:r,points:e._hoverdata,xaxes:M,yaxes:D,xvals:re,yvals:ae}))}function xT(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var XW=/([\s\S]*)<\/extra>/;function wT(e,r){var t=r.gd,n=t._fullLayout,a=r.hovermode,i=r.rotateLabels,o=r.bgColor,l=r.container,s=r.outerContainer,u=r.commonLabelOpts||{};if(e.length===0)return[[]];var f=r.fontFamily||Mc.HOVERFONT,v=r.fontSize||Mc.HOVERFONTSIZE,h=r.fontWeight||n.font.weight,d=r.fontStyle||n.font.style,m=r.fontVariant||n.font.variant,p=r.fontTextcase||n.font.textcase,y=r.fontLineposition||n.font.lineposition,b=r.fontShadow||n.font.shadow,C=e[0],x=C.xa,_=C.ya,A=a.charAt(0),k=A+"Label",M=C[k];if(M===void 0&&x.type==="multicategory")for(var D=0;Dn.width-Ae&&(Ke=n.width-Ae),Ue.attr("d","M"+(Dr-Ke)+",0L"+(Dr-Ke+Ln)+","+_e+Ln+"H"+Ae+"v"+_e+(Pt*2+Sr.height)+"H"+-Ae+"V"+_e+Ln+"H"+(Dr-Ke-Ln)+"Z"),Dr=Ke,ee.minX=Dr-Ae,ee.maxX=Dr+Ae,x.side==="top"?(ee.minY=ur-(Pt*2+Sr.height),ee.maxY=ur-Pt):(ee.minY=ur+Pt,ee.maxY=ur+(Pt*2+Sr.height))}else{var rr,Lr,Yr;_.side==="right"?(rr="start",Lr=1,Yr="",Dr=x._offset+x._length):(rr="end",Lr=-1,Yr="-",Dr=x._offset),ur=_._offset+(C.y0+C.y1)/2,Ze.attr("text-anchor",rr),Ue.attr("d","M0,0L"+Yr+Ln+","+Ln+"V"+(Pt+Sr.height/2)+"h"+Yr+(Pt*2+Sr.width)+"V-"+(Pt+Sr.height/2)+"H"+Yr+Ln+"V-"+Ln+"Z"),ee.minY=ur-(Pt+Sr.height/2),ee.maxY=ur+(Pt+Sr.height/2),_.side==="right"?(ee.minX=Dr+Ln,ee.maxX=Dr+Ln+(Pt*2+Sr.width)):(ee.minX=Dr-Ln-(Pt*2+Sr.width),ee.maxX=Dr-Ln);var Fr=Sr.height/2,lt=F-Sr.top-Fr,xt="clip"+n._uid+"commonlabel"+_._id,Rt;if(DrUe.hoverinfo!=="none");if(tr.length===0)return[];var fe=n.hoverlabel,he=fe.font,Le=tr[0],Ie=((a==="x unified"?Le.xa:Le.ya).unifiedhovertitle||{}).text,ze=Ie?Hn.hovertemplateString({data:a==="x unified"?[{xa:Le.xa,x:Le.xVal}]:[{ya:Le.ya,y:Le.yVal}],fallback:Le.trace.hovertemplatefallback,locale:n._d3locale,template:Ie}):M,Xe={showlegend:!0,legend:{title:{text:ze,font:he},font:he,bgcolor:fe.bgcolor,bordercolor:fe.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:n.legend?n.legend.traceorder:void 0,orientation:"v"}},Ce={font:he};OW(Xe,Ce,t._fullData);var Qe=Ce.legend;Qe.entries=[];for(var ue=0;ue=0?Oe=Je:dr+Be=0?Oe=dr:gr+Be=0?kr=lr:vr+Ne=0?kr=vr:Te+Ne=0,(tr.idealAlign==="top"||!pn)&&Mn?(Yr-=lt/2,tr.anchor="end"):pn?(Yr+=lt/2,tr.anchor="start"):tr.anchor="middle",tr.crossPos=Yr;else{if(tr.pos=Yr,pn=Lr+Fr/2+cn<=I,Mn=Lr-Fr/2-cn>=0,(tr.idealAlign==="left"||!pn)&&Mn)Lr-=Fr/2,tr.anchor="end";else if(pn)Lr+=Fr/2,tr.anchor="start";else{tr.anchor="middle";var Xt=cn/2,Qt=Lr+Xt-I,en=Lr-Xt;Qt>0&&(Lr-=Qt),en<0&&(Lr+=-en)}tr.crossPos=Lr}ur.attr("text-anchor",tr.anchor),Ae&&_e.attr("text-anchor",tr.anchor),Ue.attr("transform",Q3(Lr,Yr)+(i?FW(_T):""))}),{hoverLabels:Ur,commonLabelBoundingBox:ee}}function pT(e,r,t,n,a,i){var v,h;var o="",l="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=Hn.templateString(e.name,e.trace._meta)),o=yT(e.name,e.nameLength));var s=t.charAt(0),u=s==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(l+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(l+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(l+=(l?"z: ":"")+e.zLabel)):r&&e[s+"Label"]===a?l=e[u+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(l=e.yLabel):e.yLabel===void 0?l=e.xLabel:l="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(l+=(l?"
":"")+e.text),e.extraText!==void 0&&(l+=(l?"
":"")+e.extraText),i&&l===""&&!e.hovertemplate&&(o===""&&i.remove(),l=o),(h=(v=e.trace)==null?void 0:v.hoverlabel)!=null&&h.split&&(e.hovertemplate="");let{hovertemplate:f=!1}=e;if(f){let d=e.hovertemplateLabels||e;e[s+"Label"]!==a&&(d[s+"other"]=d[s+"Val"],d[s+"otherLabel"]=d[s+"Label"]),l=Hn.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:n._d3locale,template:f}),l=l.replace(XW,(m,p)=>(o=yT(p,e.nameLength),""))}return[l,o]}function jW(e,r,t,n){var a=r?"xa":"ya",i=r?"ya":"xa",o=0,l=1,s=e.size(),u=new Array(s),f=0,v=n.minX,h=n.maxX,d=n.minY,m=n.maxY,p=function(re){return re*t._invScaleX},y=function(re){return re*t._invScaleY};e.each(function(re){var ae=re[a],Q=re[i],ee=ae._id.charAt(0)==="x",fe=ae.range;f===0&&fe&&fe[0]>fe[1]!==ee&&(l=-1);var he=0,Le=ee?t.width:t.height;if(t.hovermode==="x"||t.hovermode==="y"){var Ie=MT(re,r),ze=re.anchor,Xe=ze==="end"?-1:1,Ce,Qe;if(ze==="middle")Ce=re.crossPos+(ee?y(Ie.y-re.by/2):p(re.bx/2+re.tx2width/2)),Qe=Ce+(ee?y(re.by):p(re.bx));else if(ee)Ce=re.crossPos+y(Ln+Ie.y)-y(re.by/2-Ln),Qe=Ce+y(re.by);else{var ue=p(Xe*Ln+Ie.x),ye=ue+p(Xe*re.bx);Ce=re.crossPos+Math.min(ue,ye),Qe=re.crossPos+Math.max(ue,ye)}ee?d!==void 0&&m!==void 0&&Math.min(Qe,m)-Math.max(Ce,d)>1&&(Q.side==="left"?(he=Q._mainLinePosition,Le=t.width):Le=Q._mainLinePosition):v!==void 0&&h!==void 0&&Math.min(Qe,h)-Math.max(Ce,v)>1&&(Q.side==="top"?(he=Q._mainLinePosition,Le=t.height):Le=Q._mainLinePosition)}u[f++]=[{datum:re,traceIndex:re.trace.index,dp:0,pos:re.pos,posref:re.posref,size:re.by*(ee?YW:1)/2,pmin:he,pmax:Le}]}),u.sort(function(re,ae){return re[0].posref-ae[0].posref||l*(ae[0].traceIndex-re[0].traceIndex)});var b,C,x,_,A,k,M;function D(re){var ae=re[0],Q=re[re.length-1];if(C=ae.pmin-ae.pos-ae.dp+ae.size,x=Q.pos+Q.dp+Q.size-ae.pmax,C>.01){for(A=re.length-1;A>=0;A--)re[A].dp+=C;b=!1}if(!(x<.01)){if(C<-.01){for(A=re.length-1;A>=0;A--)re[A].dp-=x;b=!1}if(b){var ee=0;for(_=0;_ae.pmax&&ee++;for(_=re.length-1;_>=0&&!(ee<=0);_--)k=re[_],k.pos>ae.pmax-1&&(k.del=!0,ee--);for(_=0;_=0;A--)re[A].dp-=x;for(_=re.length-1;_>=0&&!(ee<=0);_--)k=re[_],k.pos+k.dp+k.size>ae.pmax&&(k.del=!0,ee--)}}}for(;!b&&o<=s;){for(o++,b=!0,_=0;_.01){for(A=F.length-1;A>=0;A--)F[A].dp+=C;for(z.push.apply(z,F),u.splice(_+1,1),M=0,A=z.length-1;A>=0;A--)M+=z[A].dp;for(x=M/z.length,A=z.length-1;A>=0;A--)z[A].dp-=x;b=!1}else _++}u.forEach(D)}for(_=u.length-1;_>=0;_--){var B=u[_];for(A=B.length-1;A>=0;A--){var X=B[A],V=X.datum;V.offset=X.dp,V.del=X.del}}}function MT(e,r){var t=0,n=e.offset;return r&&(n*=-VW,t=e.offset*GW),{x:t,y:n}}function JW(e){var r={start:1,end:-1,middle:0}[e.anchor],t=r*(Ln+Pt),n=t+r*(e.txwidth+Pt),a=e.anchor==="middle";return a&&(t-=e.tx2width/2,n+=e.txwidth/2+Pt),{alignShift:r,textShiftX:t,text2ShiftX:n}}function AT(e,r,t,n){var a=function(o){return o*t},i=function(o){return o*n};e.each(function(o){var l=wc.select(this);if(o.del)return l.remove();var s=l.select("text.nums"),u=o.anchor,f=u==="end"?-1:1,v=JW(o),h=MT(o,r),d=h.x,m=h.y,p=u==="middle",y="hoverlabel"in o.trace?o.trace.hoverlabel.showarrow:!0,b;p?b="M-"+a(o.bx/2+o.tx2width/2)+","+i(m-o.by/2)+"h"+a(o.bx)+"v"+i(o.by)+"h-"+a(o.bx)+"Z":y?b="M0,0L"+a(f*Ln+d)+","+i(Ln+m)+"v"+i(o.by/2-Ln)+"h"+a(f*o.bx)+"v-"+i(o.by)+"H"+a(f*Ln+d)+"V"+i(m-Ln)+"Z":b="M"+a(f*Ln+d)+","+i(m-o.by/2)+"h"+a(f*o.bx)+"v"+i(o.by)+"h"+a(-f*o.bx)+"Z",l.select("path").attr("d",b);var C=d+v.textShiftX,x=m+o.ty0-o.by/2+Pt,_=o.textAlign||"auto";_!=="auto"&&(_==="left"&&u!=="start"?(s.attr("text-anchor","start"),C=p?-o.bx/2-o.tx2width/2+Pt:-o.bx-Pt):_==="right"&&u!=="end"&&(s.attr("text-anchor","end"),C=p?o.bx/2-o.tx2width/2-Pt:o.bx+Pt)),s.call(So.positionText,a(C),i(x)),o.tx2width&&(l.select("text.name").call(So.positionText,a(v.text2ShiftX+v.alignShift*Pt+d),i(m+o.ty0-o.by/2+Pt)),l.select("rect").call(os.setRect,a(v.text2ShiftX+(v.alignShift-1)*o.tx2width/2+d),i(m-o.by/2-1),a(o.tx2width),i(o.by+2)))})}function $W(e,r){var t=e.index,n=e.trace||{},a=e.cd[0],i=e.cd[t]||{};function o(h){return h||Qs(h)&&h===0}var l=Array.isArray(t)?function(h,d){var m=Hn.castOption(a,t,h);return o(m)?m:Hn.extractOption({},n,"",d)}:function(h,d){return Hn.extractOption(i,n,h,d)};function s(h,d,m){var p=l(d,m);o(p)&&(e[h]=p)}if(s("hoverinfo","hi","hoverinfo"),s("bgcolor","hbg","hoverlabel.bgcolor"),s("borderColor","hbc","hoverlabel.bordercolor"),s("fontFamily","htf","hoverlabel.font.family"),s("fontSize","hts","hoverlabel.font.size"),s("fontColor","htc","hoverlabel.font.color"),s("fontWeight","htw","hoverlabel.font.weight"),s("fontStyle","hty","hoverlabel.font.style"),s("fontVariant","htv","hoverlabel.font.variant"),s("nameLength","hnl","hoverlabel.namelength"),s("textAlign","hta","hoverlabel.align"),e.posref=r==="y"||r==="closest"&&n.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=Hn.constrain(e.x0,0,e.xa._length),e.x1=Hn.constrain(e.x1,0,e.xa._length),e.y0=Hn.constrain(e.y0,0,e.ya._length),e.y1=Hn.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:ls.hoverLabelText(e.xa,e.xLabelVal,n.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:ls.hoverLabelText(e.ya,e.yLabelVal,n.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var u=ls.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+u+" / -"+ls.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+u,r==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var f=ls.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+f+" / -"+ls.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+f,r==="y"&&(e.distance+=1)}var v=e.hoverinfo||e.trace.hoverinfo;return v&&v!=="all"&&(v=Array.isArray(v)?v:v.split("+"),v.indexOf("x")===-1&&(e.xLabel=void 0),v.indexOf("y")===-1&&(e.yLabel=void 0),v.indexOf("z")===-1&&(e.zLabel=void 0),v.indexOf("text")===-1&&(e.text=void 0),v.indexOf("name")===-1&&(e.name=void 0)),e}function gT(e,r,t){var n=t.container,a=t.fullLayout,i=a._size,o=t.event,l=!!r.hLinePoint,s=!!r.vLinePoint,u,f;if(n.selectAll(".spikeline").remove(),!!(s||l)){var v=ba.combine(a.plot_bgcolor,a.paper_bgcolor);if(l){var h=r.hLinePoint,d,m;u=h&&h.xa,f=h&&h.ya;var p=f.spikesnap;p==="cursor"?(d=o.pointerX,m=o.pointerY):(d=u._offset+h.x,m=f._offset+h.y);var y=vT.readability(h.color,v)<1.5?ba.contrast(v):h.color,b=f.spikemode,C=f.spikethickness,x=f.spikecolor||y,_=ls.getPxPosition(e,f),A,k;if(b.indexOf("toaxis")!==-1||b.indexOf("across")!==-1){if(b.indexOf("toaxis")!==-1&&(A=_,k=d),b.indexOf("across")!==-1){var M=f._counterDomainMin,D=f._counterDomainMax;f.anchor==="free"&&(M=Math.min(M,f.position),D=Math.max(D,f.position)),A=i.l+M*i.w,k=i.l+D*i.w}n.insert("line",":first-child").attr({x1:A,x2:k,y1:m,y2:m,"stroke-width":C,stroke:x,"stroke-dasharray":os.dashStyle(f.spikedash,C)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:A,x2:k,y1:m,y2:m,"stroke-width":C+2,stroke:v}).classed("spikeline",!0).classed("crisp",!0)}b.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:_+(f.side!=="right"?C:-C),cy:m,r:C,fill:x}).classed("spikeline",!0)}if(s){var z=r.vLinePoint,F,I;u=z&&z.xa,f=z&&z.ya;var W=u.spikesnap;W==="cursor"?(F=o.pointerX,I=o.pointerY):(F=u._offset+z.x,I=f._offset+z.y);var B=vT.readability(z.color,v)<1.5?ba.contrast(v):z.color,X=u.spikemode,V=u.spikethickness,re=u.spikecolor||B,ae=ls.getPxPosition(e,u),Q,ee;if(X.indexOf("toaxis")!==-1||X.indexOf("across")!==-1){if(X.indexOf("toaxis")!==-1&&(Q=ae,ee=I),X.indexOf("across")!==-1){var fe=u._counterDomainMin,he=u._counterDomainMax;u.anchor==="free"&&(fe=Math.min(fe,u.position),he=Math.max(he,u.position)),Q=i.t+(1-he)*i.h,ee=i.t+(1-fe)*i.h}n.insert("line",":first-child").attr({x1:F,x2:F,y1:Q,y2:ee,"stroke-width":V,stroke:re,"stroke-dasharray":os.dashStyle(u.spikedash,V)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:F,x2:F,y1:Q,y2:ee,"stroke-width":V+2,stroke:v}).classed("spikeline",!0).classed("crisp",!0)}X.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:F,cy:ae-(u.side!=="top"?V:-V),r:V,fill:re}).classed("spikeline",!0)}}}function KW(e,r,t){if(!t||t.length!==e._hoverdata.length)return!0;for(var n=t.length-1;n>=0;n--){var a=t[n],i=e._hoverdata[n];if(a.curveNumber!==i.curveNumber||String(a.pointNumber)!==String(i.pointNumber)||String(a.pointNumbers)!==String(i.pointNumbers)||a.binNumber!==i.binNumber)return!0}return!1}function mT(e,r){return!r||r.vLinePoint!==e._spikepoints.vLinePoint||r.hLinePoint!==e._spikepoints.hLinePoint}function yT(e,r){return So.plainText(e||"",{len:r,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function QW(e,r){for(var t=r.charAt(0),n=[],a=[],i=[],o=0;oe.offsetTop+e.clientTop,kT=e=>e.offsetLeft+e.clientLeft;function nv(e,r){var t=e._fullLayout,n=r.getBoundingClientRect(),a=n.left,i=n.top,o=a+n.width,l=i+n.height,s=Hn.apply3DTransform(t._invTransform)(a,i),u=Hn.apply3DTransform(t._invTransform)(o,l),f=s[0],v=s[1],h=u[0],d=u[1];return{x:f,y:v,width:h-f,height:d-v,top:Math.min(v,d),left:Math.min(f,h),right:Math.max(f,h),bottom:Math.max(v,d)}}});var Wp=te((vfe,ST)=>{"use strict";var eZ=pr(),rZ=Et(),tZ=Gu().isUnifiedHover;ST.exports=function(r,t,n,a){a=a||{};var i=t.legend;function o(l){a.font[l]||(a.font[l]=i?t.legend.font[l]:t.font[l])}t&&tZ(t.hovermode)&&(a.font||(a.font={}),o("size"),o("family"),o("color"),o("weight"),o("style"),o("variant"),i?(a.bgcolor||(a.bgcolor=rZ.combine(t.legend.bgcolor,t.paper_bgcolor)),a.bordercolor||(a.bordercolor=t.legend.bordercolor)):a.bgcolor||(a.bgcolor=t.paper_bgcolor)),n("hoverlabel.bgcolor",a.bgcolor),n("hoverlabel.bordercolor",a.bordercolor),n("hoverlabel.namelength",a.namelength),n("hoverlabel.showarrow",a.showarrow),eZ.coerceFont(n,"hoverlabel.font",a.font),n("hoverlabel.align",a.align)}});var LT=te((hfe,CT)=>{"use strict";var nZ=pr(),aZ=Wp(),iZ=x0();CT.exports=function(r,t){function n(a,i){return nZ.coerce(r,t,iZ,a,i)}aZ(r,t,n)}});var ET=te((dfe,DT)=>{"use strict";var qT=pr(),oZ=dd(),lZ=Wp();DT.exports=function(r,t,n,a){function i(l,s){return qT.coerce(r,t,oZ,l,s)}var o=qT.extendFlat({},a.hoverlabel);t.hovertemplate&&(o.namelength=-1),lZ(r,t,i,o)}});var n5=te((pfe,PT)=>{"use strict";var sZ=pr(),uZ=x0();PT.exports=function(r,t){function n(a,i){return t[a]!==void 0?t[a]:sZ.coerce(r,t,uZ,a,i)}return n("clickmode"),n("hoversubplots"),n("hovermode")}});var NT=te((gfe,zT)=>{"use strict";var RT=pr(),fZ=x0(),cZ=n5(),vZ=Wp();zT.exports=function(r,t){function n(f,v){return RT.coerce(r,t,fZ,f,v)}var a=cZ(r,t);a&&(n("hoverdistance"),n("spikedistance"));var i=n("dragmode");i==="select"&&n("selectdirection");var o=t._has("mapbox"),l=t._has("map"),s=t._has("geo"),u=t._basePlotModules.length;t.dragmode==="zoom"&&((o||l||s)&&u===1||(o||l)&&s&&u===2)&&(t.dragmode="pan"),vZ(r,t,n),RT.coerceFont(n,"hoverlabel.grouptitlefont",t.hoverlabel.font)}});var HT=te((mfe,IT)=>{"use strict";var a5=pr(),FT=dt();IT.exports=function(r){var t=r.calcdata,n=r._fullLayout;function a(u){return function(f){return a5.coerceHoverinfo({hoverinfo:f},{_module:u._module},n)}}for(var i=0;i{"use strict";var dZ=dt(),pZ=t5().hover;BT.exports=function(r,t,n){var a=dZ.getComponentMethod("annotations","onClick")(r,r._hoverdata);n!==void 0&&pZ(r,t,n,!0);function i(){r.emit("plotly_click",{points:r._hoverdata,event:t})}r._hoverdata&&t&&t.target&&(a&&a.then?a.then(i):i(),t.stopImmediatePropagation&&t.stopImmediatePropagation())}});var ss=te((bfe,GT)=>{"use strict";var gZ=kt(),Zp=pr(),mZ=To(),N1=Gu(),UT=x0(),YT=t5();GT.exports={moduleType:"component",name:"fx",constants:i1(),schema:{layout:UT},attributes:dd(),layoutAttributes:UT,supplyLayoutGlobalDefaults:LT(),supplyDefaults:ET(),supplyLayoutDefaults:NT(),calc:HT(),getDistanceFunction:N1.getDistanceFunction,getClosest:N1.getClosest,inbox:N1.inbox,quadrature:N1.quadrature,appendArrayPointValue:N1.appendArrayPointValue,castHoverOption:bZ,castHoverinfo:_Z,hover:YT.hover,unhover:mZ.unhover,loneHover:YT.loneHover,loneUnhover:yZ,click:OT()};function yZ(e){var r=Zp.isD3Selection(e)?e:gZ.select(e);r.selectAll("g.hovertext").remove(),r.selectAll(".spikeline").remove()}function bZ(e,r,t){return Zp.castOption(e,r,"hoverlabel."+t)}function _Z(e,r,t){function n(a){return Zp.coerceHoverinfo({hoverinfo:a},{_module:e._module},r)}return Zp.castOption(e,t,"hoverinfo",n)}});var iv=te(eu=>{"use strict";eu.selectMode=function(e){return e==="lasso"||e==="select"};eu.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};eu.openMode=function(e){return e==="drawline"||e==="drawopenpath"};eu.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};eu.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};eu.selectingOrDrawing=function(e){return eu.freeMode(e)||eu.rectMode(e)}});var Xp=te((xfe,VT)=>{"use strict";VT.exports=function(r){var t=r._fullLayout;t._glcanvas&&t._glcanvas.size()&&t._glcanvas.each(function(n){n.regl&&n.regl.clear({color:!0,depth:!0})})}});var jp=te((wfe,WT)=>{"use strict";WT.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var $p=te((Mfe,ZT)=>{"use strict";var Jp=32;ZT.exports={CIRCLE_SIDES:Jp,i000:0,i090:Jp/4,i180:Jp/2,i270:Jp/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var Kp=te((Afe,jT)=>{"use strict";var xZ=pr().strTranslate;function XT(e,r){switch(e.type){case"log":return e.p2d(r);case"date":return e.p2r(r,0,e.calendar);default:return e.p2r(r)}}function wZ(e,r){switch(e.type){case"log":return e.d2p(r);case"date":return e.r2p(r,0,e.calendar);default:return e.r2p(r)}}function MZ(e){var r=e._id.charAt(0)==="y"?1:0;return function(t){return XT(e,t[r])}}function AZ(e){return xZ(e.xaxis._offset,e.yaxis._offset)}jT.exports={p2r:XT,r2p:wZ,axValue:MZ,getTransform:AZ}});var Ku=te(ru=>{"use strict";var TZ=V2(),KT=$p(),ov=KT.CIRCLE_SIDES,i5=KT.SQRT2,QT=Kp(),JT=QT.p2r,$T=QT.r2p,kZ=[0,3,4,5,6,1,2],SZ=[0,3,4,1,2];ru.writePaths=function(e){var r=e.length;if(!r)return"M0,0Z";for(var t="",n=0;n0&&s{"use strict";var ek=fa(),ik=iv(),CZ=ik.drawMode,LZ=ik.openMode,lv=$p(),rk=lv.i000,tk=lv.i090,nk=lv.i180,ak=lv.i270,qZ=lv.cos45,DZ=lv.sin45,ok=Kp(),eg=ok.p2r,Qu=ok.r2p,EZ=Uu(),PZ=EZ.clearOutline,rg=Ku(),RZ=rg.readPaths,zZ=rg.writePaths,NZ=rg.ellipseOver,FZ=rg.fixDatesForPaths;function IZ(e,r){if(e.length){var t=e[0][0];if(t){var n=r.gd,a=r.isActiveShape,i=r.dragmode,o=(n.layout||{}).shapes||[];if(!CZ(i)&&a!==void 0){var l=n._fullLayout._activeShapeIndex;if(l{"use strict";var HZ=iv(),BZ=HZ.selectMode,OZ=Uu(),UZ=OZ.clearOutline,o5=Ku(),YZ=o5.readPaths,GZ=o5.writePaths,VZ=o5.fixDatesForPaths;uk.exports=function(r,t){if(r.length){var n=r[0][0];if(n){var a=n.getAttribute("d"),i=t.gd,o=i._fullLayout.newselection,l=t.plotinfo,s=l.xaxis,u=l.yaxis,f=t.isActiveSelection,v=t.dragmode,h=(i.layout||{}).selections||[];if(!BZ(v)&&f!==void 0){var d=i._fullLayout._activeSelectionIndex;if(d{"use strict";fk.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var ef=te(Ta=>{"use strict";var Ac=I1(),ck=pr(),ng=Dn();Ta.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(r){return r}};Ta.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(r){return r}};Ta.decodeDate=function(e){return function(r){return r.replace&&(r=r.replace("_"," ")),e(r)}};Ta.encodeDate=function(e){return function(r){return e(r).replace(" ","_")}};Ta.extractPathCoords=function(e,r,t){var n=[],a=e.match(Ac.segmentRE);return a.forEach(function(i){var o=r[i.charAt(0)].drawn;if(o!==void 0){var l=i.substr(1).match(Ac.paramRE);if(!(!l||l.lengthd&&(p="X"),p});return u>d&&(m=m.replace(/[\s,]*X.*/,""),ck.log("Ignoring extra params in segment "+s)),f+m})}function H1(e,r){r=r||0;var t=0;return r&&e&&(e.type==="category"||e.type==="multicategory")&&(t=(e.r2p(1)-e.r2p(0))*r),t}});var u5=te((qfe,pk)=>{"use strict";var ZZ=pr(),sv=Dn(),vk=vi(),hk=fn(),XZ=Ku().readPaths,s5=ef(),jZ=s5.getPathString,dk=Md(),JZ=Ka().FROM_TL;pk.exports=function(r,t,n,a){if(a.selectAll(".shape-label").remove(),!!(n.label.text||n.label.texttemplate)){var i;if(n.label.texttemplate){var o={};if(n.type!=="path"){var l=sv.getFromId(r,n.xref),s=sv.getFromId(r,n.yref);for(var u in dk){var f=dk[u](n,l,s);f!==void 0&&(o[u]=f)}}i=ZZ.texttemplateStringForShapes({data:[o],fallback:n.label.texttemplatefallback,locale:r._fullLayout._d3locale,template:n.label.texttemplate})}else i=n.label.text;var v={"data-index":t},h=n.label.font,d={"data-notex":1},m=a.append("g").attr(v).classed("shape-label",!0),p=m.append("text").attr(d).classed("shape-label-text",!0).text(i),y,b,C,x;if(n.path){var _=jZ(r,n),A=XZ(_,r);y=1/0,C=1/0,b=-1/0,x=-1/0;for(var k=0;k=e?a=r-n:a=n-r,-180/Math.PI*Math.atan2(a,i)}function KZ(e,r,t,n,a,i,o){var l=a.label.textposition,s=a.label.textangle,u=a.label.padding,f=a.type,v=Math.PI/180*i,h=Math.sin(v),d=Math.cos(v),m=a.label.xanchor,p=a.label.yanchor,y,b,C,x;if(f==="line"){l==="start"?(y=e,b=r):l==="end"?(y=t,b=n):(y=(e+t)/2,b=(r+n)/2),m==="auto"&&(l==="start"?s==="auto"?t>e?m="left":te?m="right":te?m="right":te?m="left":t{"use strict";var QZ=pr(),eX=QZ.strTranslate,gk=To(),bk=iv(),rX=bk.drawMode,_k=bk.selectMode,xk=dt(),mk=Et(),ig=$p(),tX=ig.i000,nX=ig.i090,aX=ig.i180,iX=ig.i270,oX=Uu(),wk=oX.clearOutlineControllers,c5=Ku(),ag=c5.pointsOnRectangle,f5=c5.pointsOnEllipse,lX=c5.writePaths,sX=tg().newShapes,uX=tg().createShapeObj,fX=l5(),cX=u5();Mk.exports=function e(r,t,n,a){a||(a=0);var i=n.gd;function o(){e(r,t,n,a++),(f5(r[0])||n.hasText)&&l({redrawing:!0})}function l(ae){var Q={};n.isActiveShape!==void 0&&(n.isActiveShape=!1,Q=sX(t,n)),n.isActiveSelection!==void 0&&(n.isActiveSelection=!1,Q=fX(t,n),i._fullLayout._reselect=!0),Object.keys(Q).length&&xk.call((ae||{}).redrawing?"relayout":"_guiRelayout",i,Q)}var s=i._fullLayout,u=s._zoomlayer,f=n.dragmode,v=rX(f),h=_k(f);(v||h)&&(i._fullLayout._outlining=!0),wk(i),t.attr("d",lX(r));var d,m,p,y,b;if(!a&&(n.isActiveShape||n.isActiveSelection)){b=vX([],r);var C=u.append("g").attr("class","outline-controllers");F(C),re()}if(v&&n.hasText){var x=u.select(".label-temp"),_=uX(t,n,n.dragmode);cX(i,"label-temp",_,x)}function A(ae){p=+ae.srcElement.getAttribute("data-i"),y=+ae.srcElement.getAttribute("data-j"),d[p][y].moveFn=k}function k(ae,Q){if(r.length){var ee=b[p][y][1],fe=b[p][y][2],he=r[p],Le=he.length;if(ag(he)){var Ie=ae,ze=Q;if(n.isActiveSelection){var Xe=yk(he,y);Xe[1]===he[y][1]?ze=0:Ie=0}for(var Ce=0;Ce1&&!(ae.length===2&&ae[1][0]==="Z")&&(y===0&&(ae[0][0]="M"),r[p]=ae,o(),l())}}function z(ae,Q){if(ae===2){p=+Q.srcElement.getAttribute("data-i"),y=+Q.srcElement.getAttribute("data-j");var ee=r[p];!ag(ee)&&!f5(ee)&&D()}}function F(ae){d=[];for(var Q=0;Q{"use strict";var dX=kt(),Lk=dt(),Ak=pr(),uv=Dn(),pX=Ku().readPaths,gX=og(),sg=u5(),qk=Uu().clearOutlineControllers,v5=Et(),d5=fn(),mX=_n().arrayEditor,Tk=To(),kk=$u(),Tc=I1(),zi=ef(),h5=zi.getPathString;Pk.exports={draw:p5,drawOne:Dk,eraseActiveShape:_X,drawLabel:sg};function p5(e){var r=e._fullLayout;r._shapeUpperLayer.selectAll("path").remove(),r._shapeLowerLayer.selectAll("path").remove(),r._shapeUpperLayer.selectAll("text").remove(),r._shapeLowerLayer.selectAll("text").remove();for(var t in r._plots){var n=r._plots[t].shapelayer;n&&(n.selectAll("path").remove(),n.selectAll("text").remove())}for(var a=0;ao&&lr>l&&!or.shiftKey?Tk.getCursor(vr/nr,1-Je/lr):"move";kk(r,dr),Qe=dr.split("-")[0]}}function pe(or){lg(e)||(s&&(b=he(t.xanchor)),u&&(C=Le(t.yanchor)),t.type==="path"?I=t.path:(d=s?t.x0:he(t.x0),m=u?t.y0:Le(t.y0),p=s?t.x1:he(t.x1),y=u?t.y1:Le(t.y1)),dy?(x=m,M="y0",_=y,D="y1"):(x=y,M="y1",_=m,D="y0"),Me(or),Be(a,t),ir(r,t,e),Ce.moveFn=Qe==="move"?$:ke,Ce.altKey=or.altKey)}function U(){lg(e)||(kk(r),Ne(a),Ek(r,e,t),Lk.call("_guiRelayout",e,i.getUpdateObj()))}function K(){lg(e)||Ne(a)}function $(or,Ye){if(t.type==="path"){var nr=function(Je){return Je},lr=nr,vr=nr;s?h("xanchor",t.xanchor=Ie(b+or)):(lr=function(dr){return Ie(he(dr)+or)},B&&B.type==="date"&&(lr=zi.encodeDate(lr))),u?h("yanchor",t.yanchor=ze(C+Ye)):(vr=function(dr){return ze(Le(dr)+Ye)},V&&V.type==="date"&&(vr=zi.encodeDate(vr))),h("path",t.path=Sk(I,lr,vr))}else s?h("xanchor",t.xanchor=Ie(b+or)):(h("x0",t.x0=Ie(d+or)),h("x1",t.x1=Ie(p+or))),u?h("yanchor",t.yanchor=ze(C+Ye)):(h("y0",t.y0=ze(m+Ye)),h("y1",t.y1=ze(y+Ye)));r.attr("d",h5(e,t)),Be(a,t),sg(e,n,t,W)}function ke(or,Ye){if(v){var nr=function(wr){return wr},lr=nr,vr=nr;s?h("xanchor",t.xanchor=Ie(b+or)):(lr=function(Hr){return Ie(he(Hr)+or)},B&&B.type==="date"&&(lr=zi.encodeDate(lr))),u?h("yanchor",t.yanchor=ze(C+Ye)):(vr=function(Hr){return ze(Le(Hr)+Ye)},V&&V.type==="date"&&(vr=zi.encodeDate(vr))),h("path",t.path=Sk(I,lr,vr))}else if(f){if(Qe==="resize-over-start-point"){var Je=d+or,dr=u?m-Ye:m+Ye;h("x0",t.x0=s?Je:Ie(Je)),h("y0",t.y0=u?dr:ze(dr))}else if(Qe==="resize-over-end-point"){var gr=p+or,Te=u?y-Ye:y+Ye;h("x1",t.x1=s?gr:Ie(gr)),h("y1",t.y1=u?Te:ze(Te))}}else{var Oe=function(wr){return Qe.indexOf(wr)!==-1},kr=Oe("n"),Ur=Oe("s"),tr=Oe("w"),Ue=Oe("e"),Ze=kr?x+Ye:x,mr=Ur?_+Ye:_,Tr=tr?A+or:A,yr=Ue?k+or:k;u&&(kr&&(Ze=x-Ye),Ur&&(mr=_-Ye)),(!u&&mr-Ze>l||u&&Ze-mr>l)&&(h(M,t[M]=u?Ze:ze(Ze)),h(D,t[D]=u?mr:ze(mr))),yr-Tr>o&&(h(z,t[z]=s?Tr:Ie(Tr)),h(F,t[F]=s?yr:Ie(yr)))}r.attr("d",h5(e,t)),Be(a,t),sg(e,n,t,W)}function Be(or,Ye){(s||u)&&nr();function nr(){var lr=Ye.type!=="path",vr=or.selectAll(".visual-cue").data([0]),Je=1;vr.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":Je}).classed("visual-cue",!0);var dr=he(s?Ye.xanchor:Ak.midRange(lr?[Ye.x0,Ye.x1]:zi.extractPathCoords(Ye.path,Tc.paramIsX))),gr=Le(u?Ye.yanchor:Ak.midRange(lr?[Ye.y0,Ye.y1]:zi.extractPathCoords(Ye.path,Tc.paramIsY)));if(dr=zi.roundPositionForSharpStrokeRendering(dr,Je),gr=zi.roundPositionForSharpStrokeRendering(gr,Je),s&&u){var Te="M"+(dr-1-Je)+","+(gr-1-Je)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";vr.attr("d",Te)}else if(s){var Oe="M"+(dr-1-Je)+","+(gr-9-Je)+"v18 h2 v-18 Z";vr.attr("d",Oe)}else{var kr="M"+(dr-9-Je)+","+(gr-1-Je)+"h18 v2 h-18 Z";vr.attr("d",kr)}}}function Ne(or){or.selectAll(".visual-cue").remove()}function ir(or,Ye,nr){var lr=Ye.xref,vr=Ye.yref,Je=uv.getFromId(nr,lr),dr=uv.getFromId(nr,vr),gr="";lr!=="paper"&&!Je.autorange&&(gr+=lr),vr!=="paper"&&!dr.autorange&&(gr+=vr),d5.setClipUrl(or,gr?"clip"+nr._fullLayout._uid+gr:null,nr)}}function Sk(e,r,t){return e.replace(Tc.segmentRE,function(n){var a=0,i=n.charAt(0),o=Tc.paramIsX[i],l=Tc.paramIsY[i],s=Tc.numParams[i],u=n.substr(1).replace(Tc.paramRE,function(f){return a>=s||(o[a]?f=r(f):l[a]&&(f=t(f)),a++),f});return i+u})}function bX(e,r){if(ug(e)){var t=r.node(),n=+t.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeShapeIndex){Ck(e);return}e._fullLayout._activeShapeIndex=n,e._fullLayout._deactivateShape=Ck,p5(e)}}}function Ck(e){if(ug(e)){var r=e._fullLayout._activeShapeIndex;r>=0&&(qk(e),delete e._fullLayout._activeShapeIndex,p5(e))}}function _X(e){if(ug(e)){qk(e);var r=e._fullLayout._activeShapeIndex,t=(e.layout||{}).shapes||[];if(r{"use strict";var Co=dt(),Rk=ca(),zk=fa(),Bt=jp(),xX=fg().eraseActiveShape,cg=pr(),qt=cg._,Ot=Uk.exports={};Ot.toImage={name:"toImage",title:function(e){var r=e._context.toImageButtonOptions||{},t=r.format||"png";return t==="png"?qt(e,"Download plot as a PNG"):qt(e,"Download plot")},icon:Bt.camera,click:function(e){var r=e._context.toImageButtonOptions,t={format:r.format||"png"};cg.notifier(qt(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(n){n in r&&(t[n]=r[n])}),Co.call("downloadImage",e,t).then(function(n){cg.notifier(qt(e,"Snapshot succeeded")+" - "+n,"long")}).catch(function(){cg.notifier(qt(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Ot.sendDataToCloud={name:"sendDataToCloud",title:function(e){return qt(e,"Edit in Chart Studio")},icon:Bt.disk,click:function(e){Rk.sendDataToCloud(e)}};Ot.editInChartStudio={name:"editInChartStudio",title:function(e){return qt(e,"Edit in Chart Studio")},icon:Bt.pencil,click:function(e){Rk.sendDataToCloud(e)}};Ot.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return qt(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Bt.zoombox,click:ti};Ot.pan2d={name:"pan2d",_cat:"pan",title:function(e){return qt(e,"Pan")},attr:"dragmode",val:"pan",icon:Bt.pan,click:ti};Ot.select2d={name:"select2d",_cat:"select",title:function(e){return qt(e,"Box Select")},attr:"dragmode",val:"select",icon:Bt.selectbox,click:ti};Ot.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return qt(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Bt.lasso,click:ti};Ot.drawclosedpath={name:"drawclosedpath",title:function(e){return qt(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Bt.drawclosedpath,click:ti};Ot.drawopenpath={name:"drawopenpath",title:function(e){return qt(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Bt.drawopenpath,click:ti};Ot.drawline={name:"drawline",title:function(e){return qt(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Bt.drawline,click:ti};Ot.drawrect={name:"drawrect",title:function(e){return qt(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Bt.drawrect,click:ti};Ot.drawcircle={name:"drawcircle",title:function(e){return qt(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Bt.drawcircle,click:ti};Ot.eraseshape={name:"eraseshape",title:function(e){return qt(e,"Erase active shape")},icon:Bt.eraseshape,click:xX};Ot.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return qt(e,"Zoom in")},attr:"zoom",val:"in",icon:Bt.zoom_plus,click:ti};Ot.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return qt(e,"Zoom out")},attr:"zoom",val:"out",icon:Bt.zoom_minus,click:ti};Ot.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return qt(e,"Autoscale")},attr:"zoom",val:"auto",icon:Bt.autoscale,click:ti};Ot.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return qt(e,"Reset axes")},attr:"zoom",val:"reset",icon:Bt.home,click:ti};Ot.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return qt(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Bt.tooltip_basic,gravity:"ne",click:ti};Ot.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return qt(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Bt.tooltip_compare,gravity:"ne",click:ti};function ti(e,r){var t=r.currentTarget,n=t.getAttribute("data-attr"),a=t.getAttribute("data-val")||!0,i=e._fullLayout,o={},l=zk.list(e,null,!0),s=i._cartesianSpikesEnabled,u,f;if(n==="zoom"){var v=a==="in"?.5:2,h=(1+v)/2,d=(1-v)/2,m,p;for(f=0;f{"use strict";var Yk=y5(),AX=Object.keys(Yk),Gk=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],Vk=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(Gk),cv=[],TX=function(e){if(Vk.indexOf(e._cat||e.name)===-1){var r=e.name,t=(e._cat||e.name).toLowerCase();cv.indexOf(r)===-1&&cv.push(r),cv.indexOf(t)===-1&&cv.push(t)}};AX.forEach(function(e){TX(Yk[e])});cv.sort();Wk.exports={DRAW_MODES:Gk,backButtons:Vk,foreButtons:cv}});var _5=te((Nfe,Zk)=>{"use strict";var zfe=b5();Zk.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var jk=te((Ffe,Xk)=>{"use strict";var kX=pr(),B1=Et(),SX=_n(),CX=_5();Xk.exports=function(r,t){var n=r.modebar||{},a=SX.newContainer(t,"modebar");function i(l,s){return kX.coerce(n,a,CX,l,s)}i("orientation"),i("bgcolor",B1.addOpacity(t.paper_bgcolor,.5));var o=B1.contrast(B1.rgb(t.modebar.bgcolor));i("color",B1.addOpacity(o,.3)),i("activecolor",B1.addOpacity(o,.7)),i("uirevision",t.uirevision),i("add"),i("remove")}});var Qk=te((Ife,Kk)=>{"use strict";var x5=kt(),LX=Ht(),hg=pr(),Jk=jp(),qX=nd().version,DX=new DOMParser;function $k(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var us=$k.prototype;us.update=function(e,r){this.graphInfo=e;var t=this.graphInfo._context,n=this.graphInfo._fullLayout,a="modebar-"+n._uid;this.element.setAttribute("id",a),this.element.setAttribute("role","toolbar"),this._uid=a,this.element.className="modebar modebar--custom",t.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),n.modebar.orientation==="v"&&(this.element.className+=" vertical",r=r.reverse());var i=n.modebar,o="#"+a+" .modebar-group";document.querySelectorAll(o).forEach(function(v){v.style.backgroundColor=i.bgcolor});var l=!this.hasButtons(r),s=this.hasLogo!==t.displaylogo,u=this.locale!==t.locale;if(this.locale=t.locale,(l||s||u)&&(this.removeAllButtons(),this.updateButtons(r),t.watermark||t.displaylogo)){var f=this.getLogo();t.watermark&&(f.className=f.className+" watermark"),n.modebar.orientation==="v"?this.element.insertBefore(f,this.element.childNodes[0]):this.element.appendChild(f),this.hasLogo=!0}this.updateActiveButton(),hg.setStyleOnHover("#"+a+" .modebar-btn",".active",".icon path","fill: "+i.activecolor,"fill: "+i.color,this.element)};us.updateButtons=function(e){var r=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(t){var n=r.createGroup();t.forEach(function(a){var i=a.name;if(!i)throw new Error("must provide button 'name' in button config");if(r.buttonsNames.indexOf(i)!==-1)throw new Error("button name '"+i+"' is taken");r.buttonsNames.push(i);var o=r.createButton(a);r.buttonElements.push(o),n.appendChild(o)}),r.element.appendChild(n)})};us.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var r=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=r.bgcolor,e};us.createButton=function(e){var r=this,t=document.createElement("button");t.setAttribute("type","button"),t.setAttribute("rel","tooltip"),t.className="modebar-btn";var n=e.title;n===void 0?n=e.name:typeof n=="function"&&(n=n(this.graphInfo)),(n||n===0)&&(t.setAttribute("data-title",n),t.setAttribute("aria-label",n)),e.attr!==void 0&&t.setAttribute("data-attr",e.attr);var a=e.val;a!==void 0&&(typeof a=="function"&&(a=a(this.graphInfo)),t.setAttribute("data-val",a));var i=e.click;if(typeof i!="function")throw new Error("must provide button 'click' function in button config");t.addEventListener("click",function(l){e.click(r.graphInfo,l),r.updateActiveButton(l.currentTarget)}),t.setAttribute("data-toggle",e.toggle||!1),e.toggle&&x5.select(t).classed("active",!0);var o=e.icon;return typeof o=="function"?t.appendChild(o()):t.appendChild(this.createIcon(o||Jk.question)),t.setAttribute("data-gravity",e.gravity||"n"),t};us.createIcon=function(e){var r=LX(e.height)?Number(e.height):e.ascent-e.descent,t="http://www.w3.org/2000/svg",n;if(e.path){n=document.createElementNS(t,"svg"),n.setAttribute("viewBox",[0,0,e.width,r].join(" ")),n.setAttribute("class","icon");var a=document.createElementNS(t,"path");a.setAttribute("d",e.path),e.transform?a.setAttribute("transform",e.transform):e.ascent!==void 0&&a.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),n.appendChild(a)}if(e.svg){var i=DX.parseFromString(e.svg,"application/xml");n=i.childNodes[0]}return n.setAttribute("height","1em"),n.setAttribute("width","1em"),n};us.updateActiveButton=function(e){var r=this.graphInfo._fullLayout,t=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(n){var a=n.getAttribute("data-val")||!0,i=n.getAttribute("data-attr"),o=n.getAttribute("data-toggle")==="true",l=x5.select(n),s=function(v,h){var d=r.modebar,m=v.querySelector(".icon path");m&&(h||v.matches(":hover")?m.style.fill=d.activecolor:m.style.fill=d.color)};if(o){if(i===t){var u=!l.classed("active");l.classed("active",u),s(n,u)}}else{var f=i===null?i:hg.nestedProperty(r,i).get();l.classed("active",f===a),s(n,f===a)}})};us.hasButtons=function(e){var r=this.buttons;if(!r||e.length!==r.length)return!1;for(var t=0;t{"use strict";var RX=fa(),eS=Qa(),w5=dt(),zX=Gu().isUnifiedHover,NX=Qk(),dg=y5(),FX=b5().DRAW_MODES,IX=pr().extendDeep;rS.exports=function(r){var t=r._fullLayout,n=r._context,a=t._modeBar;if(!n.displayModeBar&&!n.watermark){a&&(a.destroy(),delete t._modeBar);return}if(!Array.isArray(n.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(n.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var i=n.modeBarButtons,o;Array.isArray(i)&&i.length?o=GX(i):!n.displayModeBar&&n.watermark?o=[]:o=HX(r),a?a.update(r,o):t._modeBar=NX(r,o)};function HX(e){var r=e._fullLayout,t=e._fullData,n=e._context;function a(Q,ee){if(typeof ee=="string"){if(ee.toLowerCase()===Q.toLowerCase())return!0}else{var fe=ee.name,he=ee._cat||ee.name;if(fe===Q||he===Q.toLowerCase())return!0}return!1}var i=r.modebar.add;typeof i=="string"&&(i=[i]);var o=r.modebar.remove;typeof o=="string"&&(o=[o]);var l=n.modeBarButtonsToAdd.concat(i.filter(function(Q){for(var ee=0;ee1?(F=["toggleHover"],I=["resetViews"]):v?(z=["zoomInGeo","zoomOutGeo"],F=["hoverClosestGeo"],I=["resetGeo"]):f?(F=["hoverClosest3d"],I=["resetCameraDefault3d","resetCameraLastSave3d"]):p?(z=["zoomInMapbox","zoomOutMapbox"],F=["toggleHover"],I=["resetViewMapbox"]):y?(z=["zoomInMap","zoomOutMap"],F=["toggleHover"],I=["resetViewMap"]):h?F=["hoverClosestPie"]:x?(F=["hoverClosestCartesian","hoverCompareCartesian"],I=["resetViewSankey"]):F=["toggleHover"],u&&F.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(UX(t)||A)&&(F=[]),u&&!_&&(z=["zoomIn2d","zoomOut2d","autoScale2d"],I[0]!=="resetViews"&&(I=["resetScale2d"])),f?W=["zoom3d","pan3d","orbitRotation","tableRotation"]:u&&!_||m?W=["zoom2d","pan2d"]:p||y||v?W=["pan2d"]:b&&(W=["zoom2d"]),OX(t)&&W.push("select2d","lasso2d");var B=[],X=function(Q){B.indexOf(Q)===-1&&F.indexOf(Q)!==-1&&B.push(Q)};if(Array.isArray(l)){for(var V=[],re=0;re{"use strict";nS.exports={moduleType:"component",name:"modebar",layoutAttributes:_5(),supplyLayoutDefaults:jk(),manage:tS()}});var A5=te((Ofe,aS)=>{"use strict";var VX=Ka().FROM_BL;aS.exports=function(r,t,n){n===void 0&&(n=VX[r.constraintoward||"center"]);var a=[r.r2l(r.range[0]),r.r2l(r.range[1])],i=a[0]+(a[1]-a[0])*n;r.range=r._input.range=[r.l2r(i+(a[0]-i)*t),r.l2r(i+(a[1]-i)*t)],r.setScale()}});var U1=te(O1=>{"use strict";var kc=pr(),T5=ju(),_l=fa().id2name,WX=gl(),iS=A5(),ZX=bp(),XX=Rn().ALMOST_EQUAL,jX=Ka().FROM_BL;O1.handleDefaults=function(e,r,t){var n=t.axIds,a=t.axHasImage,i=r._axisConstraintGroups=[],o=r._axisMatchGroups=[],l,s,u,f,v,h,d,m;for(l=0;li?t.substr(i):n.substr(a))+o}function $X(e,r){for(var t=r._size,n=t.h/t.w,a={},i=Object.keys(e),o=0;oXX*m&&!C)){for(i=0;iW&&feF&&(F=fe);var Le=(F-z)/(2*I);v/=Le,z=s.l2r(z),F=s.l2r(F),s.range=s._input.range=k{"use strict";var gg=kt(),ni=dt(),ro=ca(),Lo=pr(),C5=vi(),L5=Xp(),Y1=Et(),vv=fn(),uS=k1(),dS=M5(),G1=Dn(),tu=Ka(),pS=U1(),KX=pS.enforce,QX=pS.clean,fS=ju().doAutoRange,gS="start",ej="middle",mS="end",rj=Ea().zindexSeparator;_a.layoutStyles=function(e){return Lo.syncOrAsync([ro.doAutoMargin,nj],e)};function tj(e,r,t){for(var n=0;n=e[1]||a[1]<=e[0])&&i[0]r[0])return!0}return!1}function nj(e){var r=e._fullLayout,t=r._size,n=t.p,a=G1.list(e,"",!0),i,o,l,s,u,f;if(r._paperdiv.style({width:e._context.responsive&&r.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":r.width+"px",height:e._context.responsive&&r.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":r.height+"px"}).selectAll(".main-svg").call(vv.setSize,r.width,r.height),e._context.setBackground(e,r.paper_bgcolor),_a.drawMainTitle(e),dS.manage(e),!r._has("cartesian"))return ro.previousPromises(e);function v(pe,U,K){var $=pe._lw/2;if(pe._id.charAt(0)==="x"){if(U){if(K==="top")return U._offset-n-$}else return t.t+t.h*(1-(pe.position||0))+$%1;return U._offset+U._length+n+$}if(U){if(K==="right")return U._offset+U._length+n+$}else return t.l+t.w*(pe.position||0)+$%1;return U._offset-n-$}for(i=0;i0){lj(e,i,u,s),l.attr({x:o,y:i,"text-anchor":n,dy:hS(r.yanchor)}).call(C5.positionText,o,i);var f=(r.text.match(C5.BR_TAG_ALL)||[]).length;if(f){var v=tu.LINE_SPACING*f+tu.MID_SHIFT;r.y===0&&(v=-v),l.selectAll(".line").each(function(){var y=+this.getAttribute("dy").slice(0,-2)-v+"em";this.setAttribute("dy",y)})}var h=gg.select(e).selectAll(".gtitle-subtitle");if(h.node()){var d=l.node().getBBox(),m=d.y+d.height,p=m+uS.SUBTITLE_PADDING_EM*r.subtitle.font.size;h.attr({x:o,y:p,"text-anchor":n,dy:hS(r.yanchor)}).call(C5.positionText,o,p)}}}};function aj(e,r,t,n,a){var i=r.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,o=Lo.isTopAnchor(r)?n:n-a,l=t==="b"?i-o:o;return Lo.isTopAnchor(r)&&t==="t"||Lo.isBottomAnchor(r)&&t==="b"?!1:l.5?"t":"b",o=e._fullLayout.margin[i],l=0;return r.yref==="paper"?l=t+r.pad.t+r.pad.b:r.yref==="container"&&(l=ij(i,n,a,e._fullLayout.height,t)+r.pad.t+r.pad.b),l>o?l:0}function lj(e,r,t,n){var a="title.automargin",i=e._fullLayout.title,o=i.y>.5?"t":"b",l={x:i.x,y:i.y,t:0,b:0},s={};i.yref==="paper"&&aj(e,i,o,r,n)?l[o]=t:i.yref==="container"&&(s[o]=t,e._fullLayout._reservedMargin[a]=s),ro.allowAutoMargin(e,a),ro.autoMargin(e,a,l)}function sj(e,r){var t=e.title,n=e._size,a=0;switch(r===gS?a=t.pad.l:r===mS&&(a=-t.pad.r),t.xref){case"paper":return n.l+n.w*t.x+a;case"container":default:return e.width*t.x+a}}function uj(e,r){var t=e.title,n=e._size,a=0;if(r==="0em"||!r?a=-t.pad.b:r===tu.CAP_SHIFT+"em"&&(a=t.pad.t),t.y==="auto")return n.t/2;switch(t.yref){case"paper":return n.t+n.h-n.h*t.y+a;case"container":default:return e.height-e.height*t.y+a}}function hS(e){return e==="top"?tu.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":tu.MID_SHIFT+"em"}function fj(e){var r=e.title,t=ej;return Lo.isRightAnchor(r)?t=mS:Lo.isLeftAnchor(r)&&(t=gS),t}function cj(e){var r=e.title,t="0em";return Lo.isTopAnchor(r)?t=tu.CAP_SHIFT+"em":Lo.isMiddleAnchor(r)&&(t=tu.MID_SHIFT+"em"),t}_a.doTraceStyle=function(e){var r=e.calcdata,t=[],n;for(n=0;n{"use strict";var vj=Ku().readPaths,hj=og(),yS=Uu().clearOutlineControllers,q5=Et(),bS=fn(),dj=_n().arrayEditor,_S=ef(),pj=_S.getPathString;wS.exports={draw:yg,drawOne:xS,activateLastSelection:yj};function yg(e){var r=e._fullLayout;yS(e),r._selectionLayer.selectAll("path").remove();for(var t in r._plots){var n=r._plots[t].selectionLayer;n&&n.selectAll("path").remove()}for(var a=0;a=0;y--){var b=o.append("path").attr(s).style("opacity",y?.1:u).call(q5.stroke,v).call(q5.fill,f).call(bS.dashLine,y?"solid":d,y?4+h:h);if(gj(b,e,n),m){var C=dj(e.layout,"selections",n);b.style({cursor:"move"});var x={element:b.node(),plotinfo:a,gd:e,editHelpers:C,isActiveSelection:!0},_=vj(l,e);hj(_,b,x)}else b.style("pointer-events",y?"all":"none");p[y]=b}var A=p[0],k=p[1];k.node().addEventListener("click",function(){return mj(e,A)})}}function gj(e,r,t){var n=t.xref+t.yref;bS.setClipUrl(e,"clip"+r._fullLayout._uid+n,r)}function mj(e,r){if(bg(e)){var t=r.node(),n=+t.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeSelectionIndex){D5(e);return}e._fullLayout._activeSelectionIndex=n,e._fullLayout._deactivateSelection=D5,yg(e)}}}function yj(e){if(bg(e)){var r=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=r,e._fullLayout._deactivateSelection=D5,yg(e)}}function D5(e){if(bg(e)){var r=e._fullLayout._activeSelectionIndex;r>=0&&(yS(e),delete e._fullLayout._activeSelectionIndex,yg(e))}}});var AS=te((Vfe,MS)=>{function bj(){var e,r=0,t=!1;function n(a,i){return e.list.push({type:a,data:i?JSON.parse(JSON.stringify(i)):void 0}),e}return e={list:[],segmentId:function(){return r++},checkIntersection:function(a,i){return n("check",{seg1:a,seg2:i})},segmentChop:function(a,i){return n("div_seg",{seg:a,pt:i}),n("chop",{seg:a,pt:i})},statusRemove:function(a){return n("pop_seg",{seg:a})},segmentUpdate:function(a){return n("seg_update",{seg:a})},segmentNew:function(a,i){return n("new_seg",{seg:a,primary:i})},segmentRemove:function(a){return n("rem_seg",{seg:a})},tempStatus:function(a,i,o){return n("temp_status",{seg:a,above:i,below:o})},rewind:function(a){return n("rewind",{seg:a})},status:function(a,i,o){return n("status",{seg:a,above:i,below:o})},vert:function(a){return a===t?e:(t=a,n("vert",{x:a}))},log:function(a){return typeof a!="string"&&(a=JSON.stringify(a,!1," ")),n("log",{txt:a})},reset:function(){return n("reset")},selected:function(a){return n("selected",{segs:a})},chainStart:function(a){return n("chain_start",{seg:a})},chainRemoveHead:function(a,i){return n("chain_rem_head",{index:a,pt:i})},chainRemoveTail:function(a,i){return n("chain_rem_tail",{index:a,pt:i})},chainNew:function(a,i){return n("chain_new",{pt1:a,pt2:i})},chainMatch:function(a){return n("chain_match",{index:a})},chainClose:function(a){return n("chain_close",{index:a})},chainAddHead:function(a,i){return n("chain_add_head",{index:a,pt:i})},chainAddTail:function(a,i){return n("chain_add_tail",{index:a,pt:i})},chainConnect:function(a,i){return n("chain_con",{index1:a,index2:i})},chainReverse:function(a){return n("chain_rev",{index:a})},chainJoin:function(a,i){return n("chain_join",{index1:a,index2:i})},done:function(){return n("done")}},e}MS.exports=bj});var kS=te((Wfe,TS)=>{function _j(e){typeof e!="number"&&(e=1e-10);var r={epsilon:function(t){return typeof t=="number"&&(e=t),e},pointAboveOrOnLine:function(t,n,a){var i=n[0],o=n[1],l=a[0],s=a[1],u=t[0],f=t[1];return(l-i)*(f-o)-(s-o)*(u-i)>=-e},pointBetween:function(t,n,a){var i=t[1]-n[1],o=a[0]-n[0],l=t[0]-n[0],s=a[1]-n[1],u=l*o+i*s;if(u-e)},pointsSameX:function(t,n){return Math.abs(t[0]-n[0])e!=l-i>e&&(o-f)*(i-v)/(l-v)+f-a>e&&(s=!s),o=f,l=v}return s}};return r}TS.exports=_j});var CS=te((Zfe,SS)=>{var xj={create:function(){var e={root:{root:!0,next:null},exists:function(r){return!(r===null||r===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(r,t){for(var n=e.root,a=e.root.next;a!==null;){if(t(a)){r.prev=a.prev,r.next=a,a.prev.next=r,a.prev=r;return}n=a,a=a.next}n.next=r,r.prev=n,r.next=null},findTransition:function(r){for(var t=e.root,n=e.root.next;n!==null&&!r(n);)t=n,n=n.next;return{before:t===e.root?null:t,after:n,insert:function(a){return a.prev=t,a.next=n,t.next=a,n!==null&&(n.prev=a),a}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};SS.exports=xj});var qS=te((Xfe,LS)=>{var V1=CS();function wj(e,r,t){function n(m,p){return{id:t?t.segmentId():-1,start:m,end:p,myFill:{above:null,below:null},otherFill:null}}function a(m,p,y){return{id:t?t.segmentId():-1,start:m,end:p,myFill:{above:y.myFill.above,below:y.myFill.below},otherFill:null}}var i=V1.create();function o(m,p,y,b,C,x){var _=r.pointsCompare(p,C);return _!==0?_:r.pointsSame(y,x)?0:m!==b?m?1:-1:r.pointAboveOrOnLine(y,b?C:x,b?x:C)?1:-1}function l(m,p){i.insertBefore(m,function(y){var b=o(m.isStart,m.pt,p,y.isStart,y.pt,y.other.pt);return b<0})}function s(m,p){var y=V1.node({isStart:!0,pt:m.start,seg:m,primary:p,other:null,status:null});return l(y,m.end),y}function u(m,p,y){var b=V1.node({isStart:!1,pt:p.end,seg:p,primary:y,other:m,status:null});m.other=b,l(b,m.pt)}function f(m,p){var y=s(m,p);return u(y,m,p),y}function v(m,p){t&&t.segmentChop(m.seg,p),m.other.remove(),m.seg.end=p,m.other.pt=p,l(m.other,m.pt)}function h(m,p){var y=a(p,m.seg.end,m.seg);return v(m,p),f(y,m.primary)}function d(m,p){var y=V1.create();function b(V,re){var ae=V.seg.start,Q=V.seg.end,ee=re.seg.start,fe=re.seg.end;return r.pointsCollinear(ae,ee,fe)?r.pointsCollinear(Q,ee,fe)||r.pointAboveOrOnLine(Q,ee,fe)?1:-1:r.pointAboveOrOnLine(ae,ee,fe)?1:-1}function C(V){return y.findTransition(function(re){var ae=b(V,re.ev);return ae>0})}function x(V,re){var ae=V.seg,Q=re.seg,ee=ae.start,fe=ae.end,he=Q.start,Le=Q.end;t&&t.checkIntersection(ae,Q);var Ie=r.linesIntersect(ee,fe,he,Le);if(Ie===!1){if(!r.pointsCollinear(ee,fe,he)||r.pointsSame(ee,Le)||r.pointsSame(fe,he))return!1;var ze=r.pointsSame(ee,he),Xe=r.pointsSame(fe,Le);if(ze&&Xe)return re;var Ce=!ze&&r.pointBetween(ee,he,Le),Qe=!Xe&&r.pointBetween(fe,he,Le);if(ze)return Qe?h(re,fe):h(V,Le),re;Ce&&(Xe||(Qe?h(re,fe):h(V,Le)),h(re,ee))}else Ie.alongA===0&&(Ie.alongB===-1?h(V,he):Ie.alongB===0?h(V,Ie.pt):Ie.alongB===1&&h(V,Le)),Ie.alongB===0&&(Ie.alongA===-1?h(re,ee):Ie.alongA===0?h(re,Ie.pt):Ie.alongA===1&&h(re,fe));return!1}for(var _=[];!i.isEmpty();){var A=i.getHead();if(t&&t.vert(A.pt[0]),A.isStart){let V=function(){if(M){var re=x(A,M);if(re)return re}return D?x(A,D):!1};var X=V;t&&t.segmentNew(A.seg,A.primary);var k=C(A),M=k.before?k.before.ev:null,D=k.after?k.after.ev:null;t&&t.tempStatus(A.seg,M?M.seg:!1,D?D.seg:!1);var z=V();if(z){if(e){var F;A.seg.myFill.below===null?F=!0:F=A.seg.myFill.above!==A.seg.myFill.below,F&&(z.seg.myFill.above=!z.seg.myFill.above)}else z.seg.otherFill=A.seg.myFill;t&&t.segmentUpdate(z.seg),A.other.remove(),A.remove()}if(i.getHead()!==A){t&&t.rewind(A.seg);continue}if(e){var F;A.seg.myFill.below===null?F=!0:F=A.seg.myFill.above!==A.seg.myFill.below,D?A.seg.myFill.below=D.seg.myFill.above:A.seg.myFill.below=m,F?A.seg.myFill.above=!A.seg.myFill.below:A.seg.myFill.above=A.seg.myFill.below}else if(A.seg.otherFill===null){var I;D?A.primary===D.primary?I=D.seg.otherFill.above:I=D.seg.myFill.above:I=A.primary?p:m,A.seg.otherFill={above:I,below:I}}t&&t.status(A.seg,M?M.seg:!1,D?D.seg:!1),A.other.status=k.insert(V1.node({ev:A}))}else{var W=A.status;if(W===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(y.exists(W.prev)&&y.exists(W.next)&&x(W.prev.ev,W.next.ev),t&&t.statusRemove(W.ev.seg),W.remove(),!A.primary){var B=A.seg.myFill;A.seg.myFill=A.seg.otherFill,A.seg.otherFill=B}_.push(A.seg)}i.getHead().remove()}return t&&t.done(),_}return e?{addRegion:function(m){for(var p,y=m[m.length-1],b=0;b{function Mj(e,r,t){var n=[],a=[];return e.forEach(function(i){var o=i.start,l=i.end;if(r.pointsSame(o,l)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}t&&t.chainStart(i);var s={index:0,matches_head:!1,matches_pt1:!1},u={index:0,matches_head:!1,matches_pt1:!1},f=s;function v(X,V,re){return f.index=X,f.matches_head=V,f.matches_pt1=re,f===s?(f=u,!1):(f=null,!0)}for(var h=0;h{function W1(e,r,t){var n=[];return e.forEach(function(a){var i=(a.myFill.above?8:0)+(a.myFill.below?4:0)+(a.otherFill&&a.otherFill.above?2:0)+(a.otherFill&&a.otherFill.below?1:0);r[i]!==0&&n.push({id:t?t.segmentId():-1,start:a.start,end:a.end,myFill:{above:r[i]===1,below:r[i]===2},otherFill:null})}),t&&t.selected(n),n}var Aj={union:function(e,r){return W1(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],r)},intersect:function(e,r){return W1(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],r)},difference:function(e,r){return W1(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],r)},differenceRev:function(e,r){return W1(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],r)},xor:function(e,r){return W1(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],r)}};PS.exports=Aj});var NS=te(($fe,zS)=>{var Tj={toPolygon:function(e,r){function t(i){if(i.length<=0)return e.segments({inverted:!1,regions:[]});function o(u){var f=u.slice(0,u.length-1);return e.segments({inverted:!1,regions:[f]})}for(var l=o(i[0]),s=1;s{var kj=AS(),Sj=kS(),FS=qS(),Cj=ES(),Z1=RS(),IS=NS(),qo=!1,X1=Sj(),Ni;Ni={buildLog:function(e){return e===!0?qo=kj():e===!1&&(qo=!1),qo===!1?!1:qo.list},epsilon:function(e){return X1.epsilon(e)},segments:function(e){var r=FS(!0,X1,qo);return e.regions.forEach(r.addRegion),{segments:r.calculate(e.inverted),inverted:e.inverted}},combine:function(e,r){var t=FS(!1,X1,qo);return{combined:t.calculate(e.segments,e.inverted,r.segments,r.inverted),inverted1:e.inverted,inverted2:r.inverted}},selectUnion:function(e){return{segments:Z1.union(e.combined,qo),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:Z1.intersect(e.combined,qo),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:Z1.difference(e.combined,qo),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:Z1.differenceRev(e.combined,qo),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:Z1.xor(e.combined,qo),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:Cj(e.segments,X1,qo),inverted:e.inverted}},polygonFromGeoJSON:function(e){return IS.toPolygon(Ni,e)},polygonToGeoJSON:function(e){return IS.fromPolygon(Ni,X1,e)},union:function(e,r){return j1(e,r,Ni.selectUnion)},intersect:function(e,r){return j1(e,r,Ni.selectIntersect)},difference:function(e,r){return j1(e,r,Ni.selectDifference)},differenceRev:function(e,r){return j1(e,r,Ni.selectDifferenceRev)},xor:function(e,r){return j1(e,r,Ni.selectXor)}};function j1(e,r,t){var n=Ni.segments(e),a=Ni.segments(r),i=Ni.combine(n,a),o=t(i);return Ni.polygon(o)}typeof window=="object"&&(window.PolyBool=Ni);HS.exports=Ni});var US=te((Qfe,OS)=>{OS.exports=function(r,t,n,a){var i=r[0],o=r[1],l=!1;n===void 0&&(n=0),a===void 0&&(a=t.length);for(var s=a-n,u=0,f=s-1;uo!=m>o&&i<(d-v)*(o-h)/(m-h)+v;p&&(l=!l)}return l}});var wg=te((ece,YS)=>{"use strict";var P5=_d().dot,_g=Rn().BADNUM,xg=YS.exports={};xg.tester=function(r){var t=r.slice(),n=t[0][0],a=n,i=t[0][1],o=i,l;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),l=1;la||b===_g||bo||p&&u(m))}function v(m,p){var y=m[0],b=m[1];if(y===_g||ya||b===_g||bo)return!1;var C=t.length,x=t[0][0],_=t[0][1],A=0,k,M,D,z,F;for(k=1;kMath.max(M,x)||b>Math.max(D,_)))if(bl||Math.abs(P5(v,u))>a)return!0;return!1};xg.filter=function(r,t){var n=[r[0]],a=0,i=0;function o(s){r.push(s);var u=n.length,f=a;n.splice(i+1);for(var v=f+1;v1){var l=r.pop();o(l)}return{addPt:o,raw:r,filtered:n}}});var VS=te((rce,GS)=>{"use strict";GS.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var hC=te((tce,vC)=>{"use strict";var WS=BS(),Lj=US(),K1=dt(),qj=fn().dashStyle,J1=Et(),Dj=ss(),Ej=Gu().makeEventData,nh=iv(),Pj=nh.freeMode,Rj=nh.rectMode,Q1=nh.drawMode,F5=nh.openMode,I5=nh.selectMode,ZS=ef(),XS=I1(),QS=og(),eC=Uu().clearOutline,rC=Ku(),R5=rC.handleEllipse,zj=rC.readPaths,Nj=tg().newShapes,Fj=l5(),Ij=E5().activateLastSelection,Ag=pr(),Hj=Ag.sorterAsc,tC=wg(),$1=Rd(),Do=fa().getFromId,Bj=Xp(),Oj=mg().redrawReglTraces,Tg=VS(),fs=Tg.MINSELECT,Uj=tC.filter,H5=tC.tester,B5=Kp(),jS=B5.p2r,Yj=B5.axValue,Gj=B5.getTransform;function O5(e){return e.subplot!==void 0}function Vj(e,r,t,n,a){var i=!O5(n),o=Pj(a),l=Rj(a),s=F5(a),u=Q1(a),f=I5(a),v=a==="drawline",h=a==="drawcircle",d=v||h,m=n.gd,p=m._fullLayout,y=f&&p.newselection.mode==="immediate"&&i,b=p._zoomlayer,C=n.element.getBoundingClientRect(),x=n.plotinfo,_=Gj(x),A=r-C.left,k=t-C.top;p._calcInverseTransform(m);var M=Ag.apply3DTransform(p._invTransform)(A,k);A=M[0],k=M[1];var D=p._invScaleX,z=p._invScaleY,F=A,I=k,W="M"+A+","+k,B=n.xaxes[0],X=n.yaxes[0],V=B._length,re=X._length,ae=e.altKey&&!(Q1(a)&&s),Q,ee,fe,he,Le,Ie,ze;aC(e,m,n),o&&(Q=Uj([[A,k]],Tg.BENDPX));var Xe=b.selectAll("path.select-outline-"+x.id).data([1]),Ce=u?p.newshape:p.newselection;u&&(n.hasText=Ce.label.text||Ce.label.texttemplate);var Qe=u&&!s?Ce.fillcolor:"rgba(0,0,0,0)",ue=Ce.line.color||(i?J1.contrast(m._fullLayout.plot_bgcolor):"#7f7f7f");Xe.enter().append("path").attr("class","select-outline select-outline-"+x.id).style({opacity:u?Ce.opacity/2:1,"stroke-dasharray":qj(Ce.line.dash,Ce.line.width),"stroke-width":Ce.line.width+"px","shape-rendering":"crispEdges"}).call(J1.stroke,ue).call(J1.fill,Qe).attr("fill-rule","evenodd").classed("cursor-move",!!u).attr("transform",_).attr("d",W+"Z");var ye=b.append("path").attr("class","zoombox-corners").style({fill:J1.background,stroke:J1.defaultLine,"stroke-width":1}).attr("transform",_).attr("d","M0,0Z");if(u&&n.hasText){var Me=b.select(".label-temp");Me.empty()&&(Me=b.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var pe=p._uid+Tg.SELECTID,U=[],K=kg(m,n.xaxes,n.yaxes,n.subplot);y&&!e.shiftKey&&(n._clearSubplotSelections=function(){if(i){var ke=B._id,Be=X._id;uC(m,ke,Be,K);for(var Ne=(m.layout||{}).selections||[],ir=[],or=!1,Ye=0;Ye=0){m._fullLayout._deactivateShape(m);return}if(!u){var Ne=p.clickmode;$1.done(pe).then(function(){if($1.clear(pe),ke===2){for(Xe.remove(),Le=0;Le-1&&nC(Be,m,n.xaxes,n.yaxes,n.subplot,n,Xe),Ne==="event"&&th(m,void 0);Dj.click(m,Be,x.id)}).catch(Ag.error)}},n.doneFn=function(){ye.remove(),$1.done(pe).then(function(){$1.clear(pe),!y&&he&&n.selectionDefs&&(he.subtract=ae,n.selectionDefs.push(he),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,fe)),(y||u)&&eh(n,y),n.doneFnCompleted&&n.doneFnCompleted(U),f&&th(m,ze)}).catch(Ag.error)}}function nC(e,r,t,n,a,i,o){var l=r._hoverdata,s=r._fullLayout,u=s.clickmode,f=u.indexOf("event")>-1,v=[],h,d,m,p,y,b,C,x,_,A;if(Jj(l)){aC(e,r,i),h=kg(r,t,n,a);var k=$j(l,h),M=k.pointNumbers.length>0;if(M?Kj(h,k):Qj(h)&&(C=$S(k))){for(o&&o.remove(),A=0;A=0}function jj(e){return e._fullLayout._activeSelectionIndex>=0}function eh(e,r){var t=e.dragmode,n=e.plotinfo,a=e.gd;Xj(a)&&a._fullLayout._deactivateShape(a),jj(a)&&a._fullLayout._deactivateSelection(a);var i=a._fullLayout,o=i._zoomlayer,l=Q1(t),s=I5(t);if(l||s){var u=o.selectAll(".select-outline-"+n.id);if(u&&a._fullLayout._outlining){var f;l&&(f=Nj(u,e)),f&&K1.call("_guiRelayout",a,{shapes:f});var v;s&&!O5(e)&&(v=Fj(u,e)),v&&(a._fullLayout._noEmitSelectedAtStart=!0,K1.call("_guiRelayout",a,{selections:v}).then(function(){r&&Ij(a)})),a._fullLayout._outlining=!1}}n.selection={},n.selection.selectionDefs=e.selectionDefs=[],n.selection.mergedPolygons=e.mergedPolygons=[]}function JS(e){return e._id}function kg(e,r,t,n){if(!e.calcdata)return[];var a=[],i=r.map(JS),o=t.map(JS),l,s,u;for(u=0;u0,i=a?n[0]:t;return r.selectedpoints?r.selectedpoints.indexOf(i)>-1:!1}function Kj(e,r){var t=[],n,a,i,o;for(o=0;o0&&t.push(n);if(t.length===1&&(i=t[0]===r.searchInfo,i&&(a=r.searchInfo.cd[0].trace,a.selectedpoints.length===r.pointNumbers.length))){for(o=0;o1||(r+=n.selectedpoints.length,r>1)))return!1;return r===1}function rh(e,r,t){var n;for(n=0;n-1&&r;if(!o&&r){var ke=KS(e,!0);if(ke.length){var Be=ke[0].xref,Ne=ke[0].yref;if(Be&&Ne){var ir=fC(ke),or=cC([Do(e,Be,"x"),Do(e,Ne,"y")]);or(U,ir)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:$&&th(e,U),h._reselect=!1}if(!o&&h._deselect){var Ye=h._deselect;l=Ye.xref,s=Ye.yref,tJ(l,s,f)||uC(e,l,s,n),$&&(U.points.length?th(e,U):G5(e)),h._deselect=!1}return{eventData:U,selectionTesters:t}}function rJ(e){var r=e.calcdata;if(r)for(var t=0;t{"use strict";dC.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var ah=te((ace,pC)=>{"use strict";pC.exports={axisRefDescription:function(e,r,t){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",r,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",r,"("+t+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",r,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",r,"and the",t,"of the domain of the","second",e,"axis."].join(" ")}}});var hv=te((oce,yC)=>{"use strict";var gC=V5(),mC=$a(),Sg=Ea(),lJ=_n().templatedArray,ice=ah();yC.exports=lJ("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:mC({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:gC.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:gC.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",Sg.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",Sg.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",Sg.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",Sg.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:mC({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Cg=te((lce,bC)=>{"use strict";bC.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var W5=te((sce,_C)=>{"use strict";_C.exports=function(r){return{valType:"color",editType:"style",anim:!0}}});var Sc=te((uce,SC)=>{"use strict";var xC=A2().axisHoverFormat,{hovertemplateAttrs:sJ,texttemplateAttrs:uJ,templatefallbackAttrs:wC}=Qf(),MC=O0(),fJ=$a(),cJ=Kl().dash,vJ=Kl().pattern,hJ=fn(),dJ=Cg(),Lg=sa().extendFlat,pJ=W5();function AC(e){return{valType:"any",dflt:0,editType:"calc"}}function TC(e){return{valType:"any",editType:"calc"}}function kC(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}SC.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:AC("x"),yperiod:AC("y"),xperiod0:TC("x0"),yperiod0:TC("y0"),xperiodalignment:kC("x"),yperiodalignment:kC("y"),xhoverformat:xC("x"),yhoverformat:xC("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:uJ(),texttemplatefallback:wC({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:sJ({},{keys:dJ.eventDataKeys}),hovertemplatefallback:wC(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:Lg({},cJ,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:pJ(!0),fillgradient:Lg({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:vJ,marker:Lg({symbol:{valType:"enumerated",values:hJ.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:Lg({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},MC("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},MC("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:fJ({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var Z5=te((cce,qC)=>{"use strict";var CC=hv(),LC=Sc().line,gJ=Kl().dash,qg=sa().extendFlat,mJ=_o().overrideAll,yJ=_n().templatedArray,fce=ah();qC.exports=mJ(yJ("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:qg({},CC.xref,{}),yref:qg({},CC.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:LC.color,width:qg({},LC.width,{min:1,dflt:1}),dash:qg({},gJ,{dflt:"dot"})}}),"arraydraw","from-root")});var RC=te((vce,PC)=>{"use strict";var DC=pr(),Dg=Dn(),bJ=ml(),_J=Z5(),EC=ef();PC.exports=function(r,t){bJ(r,t,{name:"selections",handleItemDefaults:xJ});for(var n=t.selections,a=0;a{"use strict";zC.exports=function(r,t,n){n("newselection.mode");var a=n("newselection.line.width");a&&(n("newselection.line.color"),n("newselection.line.dash")),n("activeselection.fillcolor"),n("activeselection.opacity")}});var ih=te((dce,HC)=>{"use strict";var wJ=dt(),FC=pr(),IC=fa();HC.exports=function(r){return function(n,a){var i=n[r];if(Array.isArray(i))for(var o=wJ.subplotsRegistry.cartesian,l=o.idRegex,s=a._subplots,u=s.xaxis,f=s.yaxis,v=s.cartesian,h=a._has("cartesian"),d=0;d{"use strict";var BC=E5(),oh=hC();OC.exports={moduleType:"component",name:"selections",layoutAttributes:Z5(),supplyLayoutDefaults:RC(),supplyDrawNewSelectionDefaults:NC(),includeBasePlot:ih()("selections"),draw:BC.draw,drawOne:BC.drawOne,reselect:oh.reselect,prepSelect:oh.prepSelect,clearOutline:oh.clearOutline,clearSelectionsCache:oh.clearSelectionsCache,selectOnClick:oh.selectOnClick}});var sL=te((gce,lL)=>{"use strict";var K5=kt(),Eo=pr(),UC=Eo.numberFormat,MJ=Jl(),AJ=D3(),Eg=dt(),$C=Eo.strTranslate,TJ=vi(),YC=Et(),tf=fn(),kJ=ss(),GC=Dn(),SJ=$u(),CJ=To(),KC=iv(),Pg=KC.selectingOrDrawing,LJ=KC.freeMode,qJ=Ka().FROM_TL,DJ=Xp(),EJ=mg().redrawReglTraces,PJ=ca(),j5=fa().getFromId,RJ=nu().prepSelect,zJ=nu().clearOutline,NJ=nu().selectOnClick,X5=A5(),Q5=Ea(),VC=Q5.MINDRAG,hi=Q5.MINZOOM,WC=!0;function FJ(e,r,t,n,a,i,o,l){var s=e._fullLayout._zoomlayer,u=o+l==="nsew",f=(o+l).length===1,v,h,d,m,p,y,b,C,x,_,A,k,M,D,z,F,I,W,B,X,V,re,ae;t+=r.yaxis._shift;function Q(){if(v=r.xaxis,h=r.yaxis,x=v._length,_=h._length,b=v._offset,C=h._offset,d={},d[v._id]=v,m={},m[h._id]=h,o&&l)for(var Ue=r.overlays,Ze=0;Ze=0){mr._fullLayout._deactivateShape(mr);return}var Tr=mr._fullLayout.clickmode;if($5(mr),Ue===2&&!f&&gr(),u)Tr.indexOf("select")>-1&&NJ(Ze,mr,p,y,r.id,he),Tr.indexOf("event")>-1&&kJ.click(mr,Ze,r.id);else if(Ue===1&&f){var yr=o?h:v,wr=o==="s"||l==="w"?0:1,Hr=yr._name+".range["+wr+"]",Sr=IJ(yr,wr),Dr="left",ur="middle";if(yr.fixedrange)return;o?(ur=o==="n"?"top":"bottom",yr.side==="right"&&(Dr="right")):l==="e"&&(Dr="right"),mr._context.showAxisRangeEntryBoxes&&K5.select(fe).call(TJ.makeEditable,{gd:mr,immediate:!0,background:mr._fullLayout.paper_bgcolor,text:String(Sr),fill:yr.tickfont?yr.tickfont.color:"#444",horizontalAlign:Dr,verticalAlign:ur}).on("edit",function(_e){var Ae=yr.d2r(_e);Ae!==void 0&&Eg.call("_guiRelayout",mr,Hr,Ae)})}}CJ.init(he);var ze,Xe,Ce,Qe,ue,ye,Me,pe,U,K;function $(Ue,Ze,mr){var Tr=fe.getBoundingClientRect();ze=Ze-Tr.left,Xe=mr-Tr.top,e._fullLayout._calcInverseTransform(e);var yr=Eo.apply3DTransform(e._fullLayout._invTransform)(ze,Xe);ze=yr[0],Xe=yr[1],Ce={l:ze,r:ze,w:0,t:Xe,b:Xe,h:0},Qe=e._hmpixcount?e._hmlumcount/e._hmpixcount:MJ(e._fullLayout.plot_bgcolor).getLuminance(),ue="M0,0H"+x+"V"+_+"H0V0",ye=!1,Me="xy",K=!1,pe=rL(s,Qe,b,C,ue),U=tL(s,b,C)}function ke(Ue,Ze){if(e._transitioningWithDuration)return!1;var mr=Math.max(0,Math.min(x,re*Ue+ze)),Tr=Math.max(0,Math.min(_,ae*Ze+Xe)),yr=Math.abs(mr-ze),wr=Math.abs(Tr-Xe);Ce.l=Math.min(ze,mr),Ce.r=Math.max(ze,mr),Ce.t=Math.min(Xe,Tr),Ce.b=Math.max(Xe,Tr);function Hr(){Me="",Ce.r=Ce.l,Ce.t=Ce.b,U.attr("d","M0,0Z")}if(A.isSubplotConstrained)yr>hi||wr>hi?(Me="xy",yr/x>wr/_?(wr=yr*_/x,Xe>Tr?Ce.t=Xe-wr:Ce.b=Xe+wr):(yr=wr*x/_,ze>mr?Ce.l=ze-yr:Ce.r=ze+yr),U.attr("d",Rg(Ce))):Hr();else if(k.isSubplotConstrained)if(yr>hi||wr>hi){Me="xy";var Sr=Math.min(Ce.l/x,(_-Ce.b)/_),Dr=Math.max(Ce.r/x,(_-Ce.t)/_);Ce.l=Sr*x,Ce.r=Dr*x,Ce.b=(1-Sr)*_,Ce.t=(1-Dr)*_,U.attr("d",Rg(Ce))}else Hr();else!D||wr0){var _e;if(k.isSubplotConstrained||!M&&D.length===1){for(_e=0;_e1&&(Hr.maxallowed!==void 0&&F===(Hr.range[0]1&&(Sr.maxallowed!==void 0&&I===(Sr.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function BJ(e,r,t){return e?e==="nsew"?t?"":r==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function rL(e,r,t,n,a){return e.append("path").attr("class","zoombox").style({fill:r>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",$C(t,n)).attr("d",a+"Z")}function tL(e,r,t){return e.append("path").attr("class","zoombox-corners").style({fill:YC.background,stroke:YC.defaultLine,"stroke-width":1,opacity:0}).attr("transform",$C(r,t)).attr("d","M0,0Z")}function nL(e,r,t,n,a,i){e.attr("d",n+"M"+t.l+","+t.t+"v"+t.h+"h"+t.w+"v-"+t.h+"h-"+t.w+"Z"),aL(e,r,a,i)}function aL(e,r,t,n){t||(e.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),r.transition().style("opacity",1).duration(200))}function $5(e){K5.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function iL(e){WC&&e.data&&e._context.showTips&&(Eo.notifier(Eo._(e,"Double-click to zoom back out"),"long"),WC=!1)}function OJ(e,r){return"M"+(e.l-.5)+","+(r-hi-.5)+"h-3v"+(2*hi+1)+"h3ZM"+(e.r+.5)+","+(r-hi-.5)+"h3v"+(2*hi+1)+"h-3Z"}function UJ(e,r){return"M"+(r-hi-.5)+","+(e.t-.5)+"v-3h"+(2*hi+1)+"v3ZM"+(r-hi-.5)+","+(e.b+.5)+"v3h"+(2*hi+1)+"v-3Z"}function Rg(e){var r=Math.floor(Math.min(e.b-e.t,e.r-e.l,hi)/2);return"M"+(e.l-3.5)+","+(e.t-.5+r)+"h3v"+-r+"h"+r+"v-3h-"+(r+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+r)+"h-3v"+-r+"h"+-r+"v-3h"+(r+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-r)+"h-3v"+r+"h"+-r+"v3h"+(r+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-r)+"h3v"+r+"h"+r+"v3h-"+(r+3)+"Z"}function jC(e,r,t,n,a){for(var i=!1,o={},l={},s,u,f,v,h=(a||{}).xaHash,d=(a||{}).yaHash,m=0;m{"use strict";var YJ=kt(),zg=ss(),GJ=To(),VJ=$u(),xl=sL().makeDragBox,xa=Ea().DRAGGERSIZE;Ng.initInteractions=function(r){var t=r._fullLayout;if(r._context.staticPlot){YJ.select(r).selectAll(".drag").remove();return}if(!(!t._has("cartesian")&&!t._has("splom"))){var n=Object.keys(t._plots||{}).sort(function(i,o){if((t._plots[i].mainplot&&!0)===(t._plots[o].mainplot&&!0)){var l=i.split("y"),s=o.split("y");return l[0]===s[0]?Number(l[1]||1)-Number(s[1]||1):Number(l[0]||1)-Number(s[0]||1)}return t._plots[i].mainplot?1:-1});n.forEach(function(i){var o=t._plots[i],l=o.xaxis,s=o.yaxis;if(!o.mainplot){var u=xl(r,o,l._offset,s._offset,l._length,s._length,"ns","ew");u.onmousemove=function(h){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===i&&r._fullLayout._plots[i]&&zg.hover(r,h,i)},zg.hover(r,h,i),r._fullLayout._lasthover=u,r._fullLayout._hoversubplot=i},u.onmouseout=function(h){r._dragging||(r._fullLayout._hoversubplot=null,GJ.unhover(r,h))},r._context.showAxisDragHandles&&(xl(r,o,l._offset-xa,s._offset-xa,xa,xa,"n","w"),xl(r,o,l._offset+l._length,s._offset-xa,xa,xa,"n","e"),xl(r,o,l._offset-xa,s._offset+s._length,xa,xa,"s","w"),xl(r,o,l._offset+l._length,s._offset+s._length,xa,xa,"s","e"))}if(r._context.showAxisDragHandles){if(i===l._mainSubplot){var f=l._mainLinePosition;l.side==="top"&&(f-=xa),xl(r,o,l._offset+l._length*.1,f,l._length*.8,xa,"","ew"),xl(r,o,l._offset,f,l._length*.1,xa,"","w"),xl(r,o,l._offset+l._length*.9,f,l._length*.1,xa,"","e")}if(i===s._mainSubplot){var v=s._mainLinePosition;s.side!=="right"&&(v-=xa),xl(r,o,v,s._offset+s._length*.1,xa,s._length*.8,"ns",""),xl(r,o,v,s._offset+s._length*.9,xa,s._length*.1,"s",""),xl(r,o,v,s._offset,xa,s._length*.1,"n","")}}});var a=t._hoverlayer.node();a.onmousemove=function(i){i.target=r._fullLayout._lasthover,zg.hover(r,i,t._hoversubplot)},a.onclick=function(i){i.target=r._fullLayout._lasthover,zg.click(r,i)},a.onmousedown=function(i){r._fullLayout._lasthover.onmousedown(i)},Ng.updateFx(r)}};Ng.updateFx=function(e){var r=e._fullLayout,t=r.dragmode==="pan"?"move":"crosshair";VJ(r._draggers,t)}});var cL=te((yce,fL)=>{"use strict";var uL=dt();fL.exports=function(r){for(var t=uL.layoutArrayContainers,n=uL.layoutArrayRegexes,a=r.split("[")[0],i,o,l=0;l{"use strict";var WJ=Gs(),rb=bd(),lh=Pu(),ZJ=jy().sorterAsc,tb=dt();sh.containerArrayMatch=cL();var XJ=sh.isAddVal=function(r){return r==="add"||WJ(r)},vL=sh.isRemoveVal=function(r){return r===null||r==="remove"};sh.applyContainerArrayChanges=function(r,t,n,a,i){var o=t.astr,l=tb.getComponentMethod(o,"supplyLayoutDefaults"),s=tb.getComponentMethod(o,"draw"),u=tb.getComponentMethod(o,"drawOne"),f=a.replot||a.recalc||l===rb||s===rb,v=r.layout,h=r._fullLayout;if(n[""]){Object.keys(n).length>1&&lh.warn("Full array edits are incompatible with other edits",o);var d=n[""][""];if(vL(d))t.set(null);else if(Array.isArray(d))t.set(d);else return lh.warn("Unrecognized full array edit value",o,d),!0;return f?!1:(l(v,h),s(r),!0)}var m=Object.keys(n).map(Number).sort(ZJ),p=t.get(),y=p||[],b=i(h,o).get(),C=[],x=-1,_=y.length,A,k,M,D,z,F,I,W;for(A=0;Ay.length-(I?0:1)){lh.warn("index out of range",o,M);continue}if(F!==void 0)z.length>1&&lh.warn("Insertion & removal are incompatible with edits to the same index.",o,M),vL(F)?C.push(M):I?(F==="add"&&(F={}),y.splice(M,0,F),b&&b.splice(M,0,{})):lh.warn("Unrecognized full object edit value",o,M,F),x===-1&&(x=M);else for(k=0;k=0;A--)y.splice(C[A],1),b&&b.splice(C[A],1);if(y.length?p||t.set(y):t.set(null),f)return!1;if(l(v,h),u!==rb){var B;if(x===-1)B=m;else{for(_=Math.max(y.length,_),B=[],A=0;A=x));A++)B.push(M);for(A=x;A<_;A++)B.push(A)}for(A=0;A{"use strict";var mL=Ht(),yL=dt(),ai=pr(),uh=ca(),bL=fa(),_L=Et(),fh=bL.cleanId,jJ=bL.getFromTrace,nb=yL.traceIs,JJ=["x","y","z"];Po.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&ai.log("Clearing previous rejected promises from queue."),e._promises=[]};Po.cleanLayout=function(e){var r,t;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var n=(uh.subplotsRegistry.cartesian||{}).attrRegex,a=(uh.subplotsRegistry.polar||{}).attrRegex,i=(uh.subplotsRegistry.ternary||{}).attrRegex,o=(uh.subplotsRegistry.gl3d||{}).attrRegex,l=Object.keys(e);for(r=0;r3?(y.x=1.02,y.xanchor="left"):y.x<-2&&(y.x=-.02,y.xanchor="right"),y.y>3?(y.y=1.02,y.yanchor="bottom"):y.y<-2&&(y.y=-.02,y.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),_L.clean(e),e.template&&e.template.layout&&Po.cleanLayout(e.template.layout),e};function dv(e,r){var t=e[r],n=r.charAt(0);t&&t!=="paper"&&(e[r]=fh(t,n,!0))}Po.cleanData=function(e){for(var r=0;r0)return e.substr(0,r)}Po.hasParent=function(e,r){for(var t=gL(r);t;){if(t in e)return!0;t=gL(t)}return!1};Po.clearAxisTypes=function(e,r,t){for(var n=0;n{let t=(...n)=>n.every(a=>ai.isPlainObject(a))||n.every(a=>Array.isArray(a));if([e,r].every(n=>Array.isArray(n))){if(e.length!==r.length)return!1;for(let n=0;nai.isPlainObject(n))){if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let n in e){if(n.startsWith("_"))continue;let a=e[n],i=r[n];if(a!==i&&!(t(a,i)?ab(a,i):!1))return!1}return!0}return!1};Po.collectionsAreEqual=ab});var fb=te(Ft=>{"use strict";var Bg=kt(),QJ=Ht(),e$=s2(),Nr=pr(),xn=Nr.nestedProperty,lb=m1(),di=Kw(),Ro=dt(),Zg=F0(),ft=ca(),ii=Dn(),r$=q3(),t$=gl(),ib=fn(),n$=Et(),a$=eb().initInteractions,i$=sc(),o$=nu().clearOutline,kL=Kf().dfltConfig,Ig=hL(),Qn=xL(),nn=mg(),nf=_o(),l$=Ea().AX_NAME_PATTERN,ob=0,wL=5;function s$(e,r,t,n){var a;if(e=Nr.getGraphDiv(e),lb.init(e),Nr.isPlainObject(r)){var i=r;r=i.data,t=i.layout,n=i.config,a=i.frames}var o=lb.triggerHandler(e,"plotly_beforeplot",[r,t,n]);if(o===!1)return Promise.reject();!r&&!t&&!Nr.isPlotDiv(e)&&Nr.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function l(){if(a)return Ft.addFrames(e,a)}CL(e,n),t||(t={}),Bg.select(e).classed("js-plotly-plot",!0),ib.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var s=(e.data||[]).length===0&&Array.isArray(r);Array.isArray(r)&&(Qn.cleanData(r),s?e.data=r:e.data.push.apply(e.data,r),e.empty=!1),(!e.layout||s)&&(e.layout=Qn.cleanLayout(t)),ft.supplyDefaults(e);var u=e._fullLayout,f=u._has("cartesian");u._replotting=!0,(s||u._shouldCreateBgLayer)&&(D$(e),u._shouldCreateBgLayer&&delete u._shouldCreateBgLayer),ib.initGradients(e),ib.initPatterns(e),s&&ii.saveShowSpikeInitial(e);var v=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;v&&ft.doCalcdata(e);for(var h=0;h=e.data.length||a<-e.data.length)throw new Error(t+" must be valid indices for gd.data.");if(r.indexOf(a,n+1)>-1||a>=0&&r.indexOf(-e.data.length+a)>-1||a<0&&r.indexOf(e.data.length+a)>-1)throw new Error("each index in "+t+" must be unique.")}}function LL(e,r,t){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(r)||(r=[r]),Ug(e,r,"currentIndices"),typeof t!="undefined"&&!Array.isArray(t)&&(t=[t]),typeof t!="undefined"&&Ug(e,t,"newIndices"),typeof t!="undefined"&&r.length!==t.length)throw new Error("current and new indices must be of equal length.")}function h$(e,r,t){var n,a;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("traces must be defined.");for(Array.isArray(r)||(r=[r]),n=0;n=0&&f=0&&f0&&typeof D.parts[I]!="string";)I--;var W=D.parts[I],B=D.parts[I-1]+"."+W,X=D.parts.slice(0,I).join("."),V=xn(e.layout,X).get(),re=xn(n,X).get(),ae=D.get();if(z!==void 0){b[M]=z,C[M]=W==="reverse"?z:au(ae);var Q=Zg.getLayoutValObject(n,D.parts);if(Q&&Q.impliedEdits&&z!==null)for(var ee in Q.impliedEdits)x(Nr.relativeAttr(M,ee),Q.impliedEdits[ee]);if(["width","height"].indexOf(M)!==-1)if(z){x("autosize",null);var fe=M==="height"?"width":"height";x(fe,n[fe])}else n[M]=e._initialAutoSize[M];else if(M==="autosize")x("width",z?null:n.width),x("height",z?null:n.height);else if(B.match(IL))k(B),xn(n,X+"._inputRange").set(null);else if(B.match(HL)){k(B),xn(n,X+"._inputRange").set(null);var he=xn(n,X).get();he._inputDomain&&(he._input.domain=he._inputDomain.slice())}else B.match(m$)&&xn(n,X+"._inputDomain").set(null);if(W==="type"){A=V;var Le=re.type==="linear"&&z==="log",Ie=re.type==="log"&&z==="linear";if(Le||Ie){if(!A||!A.range)x(X+".autorange",!0);else if(re.autorange)Le&&(A.range=A.range[1]>A.range[0]?[1,2]:[2,1]);else{var ze=A.range[0],Xe=A.range[1];Le?(ze<=0&&Xe<=0&&x(X+".autorange",!0),ze<=0?ze=Xe/1e6:Xe<=0&&(Xe=ze/1e6),x(X+".range[0]",Math.log(ze)/Math.LN10),x(X+".range[1]",Math.log(Xe)/Math.LN10)):(x(X+".range[0]",Math.pow(10,ze)),x(X+".range[1]",Math.pow(10,Xe)))}Array.isArray(n._subplots.polar)&&n._subplots.polar.length&&n[D.parts[0]]&&D.parts[1]==="radialaxis"&&delete n[D.parts[0]]._subplot.viewInitial["radialaxis.range"],Ro.getComponentMethod("annotations","convertCoords")(e,re,z,x),Ro.getComponentMethod("images","convertCoords")(e,re,z,x)}else x(X+".autorange",!0),x(X+".range",null);xn(n,X+"._inputRange").set(null)}else if(W.match(l$)){var Ce=xn(n,M).get(),Qe=(z||{}).type;(!Qe||Qe==="-")&&(Qe="linear"),Ro.getComponentMethod("annotations","convertCoords")(e,Ce,Qe,x),Ro.getComponentMethod("images","convertCoords")(e,Ce,Qe,x)}var ue=Ig.containerArrayMatch(M);if(ue){f=ue.array,v=ue.index;var ye=ue.property,Me=Q||{editType:"calc"};v!==""&&ye===""&&(Ig.isAddVal(z)?C[M]=null:Ig.isRemoveVal(z)?C[M]=(xn(t,f).get()||[])[v]:Nr.warn("unrecognized full object value",r)),nf.update(y,Me),u[f]||(u[f]={});var pe=u[f][v];pe||(pe=u[f][v]={}),pe[ye]=z,delete r[M]}else W==="reverse"?(V.range?V.range.reverse():(x(X+".autorange",!0),V.range=[1,0]),re.autorange?y.calc=!0:y.plot=!0):(M==="dragmode"&&(z===!1&&ae!==!1||z!==!1&&ae===!1)||n._has("scatter-like")&&n._has("regl")&&M==="dragmode"&&(z==="lasso"||z==="select")&&!(ae==="lasso"||ae==="select")?y.plot=!0:Q?nf.update(y,Q):y.calc=!0,D.set(z))}}for(f in u){var U=Ig.applyContainerArrayChanges(e,i(t,f),u[f],y,i);U||(y.plot=!0)}for(var K in _){A=ii.getFromId(e,K);var $=A&&A._constraintGroup;if($){y.calc=!0;for(var ke in $)_[ke]||(ii.getFromId(e,ke)._constraintShrinkable=!0)}}(OL(e)||r.height||r.width)&&(y.plot=!0);var Be=n.shapes;for(v=0;v1;)if(n.pop(),t=xn(r,n.join(".")+".uirevision").get(),t!==void 0)return t;return r.uirevision}function _$(e,r){for(var t=0;t[X,e._ev.listeners(X)]);i=Ft.newPlot(e,r,t,n).then(()=>{for(let[X,V]of B)V.forEach(re=>e.on(X,re));return Ft.react(e,r,t,n)})}else{e.data=r||[],Qn.cleanData(e.data),e.layout=t||{},Qn.cleanLayout(e.layout),w$(e.data,e.layout,l,s),ft.supplyDefaults(e,{skipUpdateCalc:!0});var v=e._fullData,h=e._fullLayout,d=h.datarevision===void 0,m=h.transition,p=T$(e,s,h,d,m),y=p.newDataRevision,b=A$(e,l,v,d,m,y);if(OL(e)&&(p.layoutReplot=!0),b.calc||p.calc){e.calcdata=void 0;for(var C=Object.getOwnPropertyNames(h),x=0;x(f||e.emit("plotly_react",{config:n,data:r,layout:t}),e))}function A$(e,r,t,n,a,i){var o=r.length===t.length;if(!a&&!o)return{fullReplot:!0,calc:!0};var l=nf.traceFlags();l.arrays={},l.nChanges=0,l.nChangesAnim=0;var s,u;function f(d){var m=Zg.getTraceValObject(u,d);return!u._module.animatable&&m.anim&&(m.anim=!1),m}var v={getValObject:f,flags:l,immutable:n,transition:a,newDataRevision:i,gd:e},h={};for(s=0;s=a.length?a[0]:a[u]:a}function l(u){return Array.isArray(i)?u>=i.length?i[0]:i[u]:i}function s(u,f){var v=0;return function(){if(u&&++v===f)return u()}}return new Promise(function(u,f){function v(){if(n._frameQueue.length!==0){for(;n._frameQueue.length;){var W=n._frameQueue.pop();W.onInterrupt&&W.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function h(W){if(W.length!==0){for(var B=0;Bn._timeToNext&&m()};W()}var y=0;function b(W){return Array.isArray(a)?y>=a.length?W.transitionOpts=a[y]:W.transitionOpts=a[0]:W.transitionOpts=a,y++,W}var C,x,_=[],A=r==null,k=Array.isArray(r),M=!A&&!k&&Nr.isPlainObject(r);if(M)_.push({type:"object",data:b(Nr.extendFlat({},r))});else if(A||["string","number"].indexOf(typeof r)!==-1)for(C=0;C0&&F<_.length-1){var I=[];for(C=0;C<_.length;C++)x=_[C],(_[C].type!=="byname"||C>F)&&I.push(x);_=I}}_.length>0?h(_):(e.emit("plotly_animated"),u())})}function S$(e,r,t){if(e=Nr.getGraphDiv(e),r==null)return Promise.resolve();if(!Nr.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var n,a,i,o,l=e._transitionData._frames,s=e._transitionData._frameHash;if(!Array.isArray(r))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+r);var u=l.length+r.length*2,f=[],v={};for(n=r.length-1;n>=0;n--)if(Nr.isPlainObject(r[n])){var h=r[n].name,d=(s[h]||v[h]||{}).name,m=r[n].name,p=s[d]||v[d];d&&m&&typeof m=="number"&&p&&obD.index?-1:M.index=0;n--){if(a=f[n].frame,typeof a.name=="number"&&Nr.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!a.name)for(;s[a.name="frame "+e._transitionData._counter++];);if(s[a.name]){for(i=0;i=0;t--)n=r[t],i.push({type:"delete",index:n}),o.unshift({type:"insert",index:n,value:a[n]});var l=ft.modifyFrames,s=ft.modifyFrames,u=[e,o],f=[e,i];return di&&di.add(e,l,u,s,f),ft.modifyFrames(e,i)}function L$(e){e=Nr.getGraphDiv(e);var r=e._fullLayout||{},t=e._fullData||[];return ft.cleanPlot([],{},t,r),ft.purge(e),lb.purge(e),r._container&&r._container.remove(),delete e._context,e}function q$(e){var r=e._fullLayout,t=e.getBoundingClientRect();if(!Nr.equalDomRects(t,r._lastBBox)){var n=r._invTransform=Nr.inverseTransformMatrix(Nr.getFullTransformMatrix(e));r._invScaleX=Math.sqrt(n[0][0]*n[0][0]+n[0][1]*n[0][1]+n[0][2]*n[0][2]),r._invScaleY=Math.sqrt(n[1][0]*n[1][0]+n[1][1]*n[1][1]+n[1][2]*n[1][2]),r._lastBBox=t}}function D$(e){var r=Bg.select(e),t=e._fullLayout;if(t._calcInverseTransform=q$,t._calcInverseTransform(e),t._container=r.selectAll(".plot-container").data([0]),t._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),t._paperdiv=t._container.selectAll(".svg-container").data([0]),t._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),t._glcontainer=t._paperdiv.selectAll(".gl-container").data([{}]),t._glcontainer.enter().append("div").classed("gl-container",!0),t._paperdiv.selectAll(".main-svg").remove(),t._paperdiv.select(".modebar-container").remove(),t._paper=t._paperdiv.insert("svg",":first-child").classed("main-svg",!0),t._toppaper=t._paperdiv.append("svg").classed("main-svg",!0),t._modebardiv=t._paperdiv.append("div"),delete t._modeBar,t._hoverpaper=t._paperdiv.append("svg").classed("main-svg",!0),!t._uid){var n={};Bg.selectAll("defs").each(function(){this.id&&(n[this.id.split("-")[1]]=1)}),t._uid=Nr.randstr(n)}t._paperdiv.selectAll(".main-svg").attr(i$.svgAttrs),t._defs=t._paper.append("defs").attr("id","defs-"+t._uid),t._clips=t._defs.append("g").classed("clips",!0),t._topdefs=t._toppaper.append("defs").attr("id","topdefs-"+t._uid),t._topclips=t._topdefs.append("g").classed("clips",!0),t._bgLayer=t._paper.append("g").classed("bglayer",!0),t._draggers=t._paper.append("g").classed("draglayer",!0);var a=t._paper.append("g").classed("layer-below",!0);t._imageLowerLayer=a.append("g").classed("imagelayer",!0),t._shapeLowerLayer=a.append("g").classed("shapelayer",!0),t._cartesianlayer=t._paper.append("g").classed("cartesianlayer",!0),t._polarlayer=t._paper.append("g").classed("polarlayer",!0),t._smithlayer=t._paper.append("g").classed("smithlayer",!0),t._ternarylayer=t._paper.append("g").classed("ternarylayer",!0),t._geolayer=t._paper.append("g").classed("geolayer",!0),t._funnelarealayer=t._paper.append("g").classed("funnelarealayer",!0),t._pielayer=t._paper.append("g").classed("pielayer",!0),t._iciclelayer=t._paper.append("g").classed("iciclelayer",!0),t._treemaplayer=t._paper.append("g").classed("treemaplayer",!0),t._sunburstlayer=t._paper.append("g").classed("sunburstlayer",!0),t._indicatorlayer=t._toppaper.append("g").classed("indicatorlayer",!0),t._glimages=t._paper.append("g").classed("glimages",!0);var i=t._toppaper.append("g").classed("layer-above",!0);t._imageUpperLayer=i.append("g").classed("imagelayer",!0),t._shapeUpperLayer=i.append("g").classed("shapelayer",!0),t._selectionLayer=t._toppaper.append("g").classed("selectionlayer",!0),t._infolayer=t._toppaper.append("g").classed("infolayer",!0),t._menulayer=t._toppaper.append("g").classed("menulayer",!0),t._zoomlayer=t._toppaper.append("g").classed("zoomlayer",!0),t._hoverlayer=t._hoverpaper.append("g").classed("hoverlayer",!0),t._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}Ft.animate=k$;Ft.addFrames=S$;Ft.deleteFrames=C$;Ft.addTraces=RL;Ft.deleteTraces=zL;Ft.extendTraces=EL;Ft.moveTraces=sb;Ft.prependTraces=PL;Ft.newPlot=v$;Ft._doPlot=s$;Ft.purge=L$;Ft.react=M$;Ft.redraw=c$;Ft.relayout=ch;Ft.restyle=Yg;Ft.setPlotConfig=u$;Ft.update=Vg;Ft._guiRelayout=ub(ch);Ft._guiRestyle=ub(Yg);Ft._guiUpdate=ub(Vg);Ft._storeDirectGUIEdit=g$});var Cc=te(cs=>{"use strict";var E$=dt();cs.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};cs.getRedrawFunc=function(e){return function(){E$.getComponentMethod("colorbar","draw")(e)}};cs.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};cs.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var UL=window.URL||window.webkitURL;cs.createObjectURL=function(e){return UL.createObjectURL(e)};cs.revokeObjectURL=function(e){return UL.revokeObjectURL(e)};cs.createBlob=function(e,r){if(r==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(r==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var t=P$(window.atob(e));return new window.Blob([t],{type:"image/"+r})};cs.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function P$(e){for(var r=e.length,t=new ArrayBuffer(r),n=new Uint8Array(t),a=0;a{"use strict";var vb=kt(),Mce=pr(),R$=fn(),z$=Et(),Ace=sc(),cb=/"/g,hh="TOBESTRIPPED",N$=new RegExp('("'+hh+")|("+hh+'")',"g");function F$(e){var r=vb.select("body").append("div").style({display:"none"}).html(""),t=e.replace(/(&[^;]*;)/gi,function(n){return n==="<"?"<":n==="&rt;"?">":n.indexOf("<")!==-1||n.indexOf(">")!==-1?"":r.html(n).text()});return r.remove(),t}function I$(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}YL.exports=function(r,t,n){var a=r._fullLayout,i=a._paper,o=a._toppaper,l=a.width,s=a.height,u;i.insert("rect",":first-child").call(R$.setRect,0,0,l,s).call(z$.fill,a.paper_bgcolor);var f=a._basePlotModules||[];for(u=0;u{"use strict";var H$=pr(),B$=Od().EventEmitter,dh=Cc();function O$(e){var r=e.emitter||new B$,t=new Promise(function(n,a){var i=window.Image,o=e.svg,l=e.format||"png",s=e.canvas,u=e.scale||1,f=e.width||300,v=e.height||150,h=u*f,d=u*v,m=s.getContext("2d",{willReadFrequently:!0}),p=new i,y,b;l==="svg"||H$.isSafari()?b=dh.encodeSVG(o):(y=dh.createBlob(o,"svg"),b=dh.createObjectURL(y)),s.width=h,s.height=d,p.onload=function(){var C;switch(y=null,dh.revokeObjectURL(b),l!=="svg"&&m.drawImage(p,0,0,h,d),l){case"jpeg":C=s.toDataURL("image/jpeg");break;case"png":C=s.toDataURL("image/png");break;case"webp":C=s.toDataURL("image/webp");break;case"svg":C=b;break;default:var x="Image format is not jpeg, png, svg or webp.";if(a(new Error(x)),!e.promise)return r.emit("error",x)}n(C),e.promise||r.emit("success",C)},p.onerror=function(C){if(y=null,dh.revokeObjectURL(b),a(C),!e.promise)return r.emit("error",C)},p.src=b});return e.promise?t:r}GL.exports=O$});var db=te((Sce,ZL)=>{"use strict";var VL=Ht(),WL=fb(),U$=ca(),vs=pr(),ph=Cc(),Y$=jg(),G$=Jg(),V$=nd().version,hb={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function W$(e,r){r=r||{};var t,n,a,i;vs.isPlainObject(e)?(t=e.data||[],n=e.layout||{},a=e.config||{},i={}):(e=vs.getGraphDiv(e),t=vs.extendDeep([],e.data),n=vs.extendDeep({},e.layout),a=e._context,i=e._fullLayout||{});function o(k){return!(k in r)||vs.validate(r[k],hb[k])}if(!o("width")&&r.width!==null||!o("height")&&r.height!==null)throw new Error("Height and width should be pixel values.");if(!o("format"))throw new Error("Export format is not "+vs.join2(hb.format.values,", "," or ")+".");var l={};function s(k,M){return vs.coerce(r,l,hb,k,M)}var u=s("format"),f=s("width"),v=s("height"),h=s("scale"),d=s("setBackground"),m=s("imageDataOnly"),p=document.createElement("div");p.style.position="absolute",p.style.left="-5000px",document.body.appendChild(p);var y=vs.extendFlat({},n);f?y.width=f:r.width===null&&VL(i.width)&&(y.width=i.width),v?y.height=v:r.height===null&&VL(i.height)&&(y.height=i.height);var b=vs.extendFlat({},a,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),C=ph.getRedrawFunc(p);function x(){return new Promise(function(k){setTimeout(k,ph.getDelay(p._fullLayout))})}function _(){return new Promise(function(k,M){var D=Y$(p,u,h),z=p._fullLayout.width,F=p._fullLayout.height;function I(){WL.purge(p),document.body.removeChild(p)}if(u==="full-json"){var W=U$.graphJson(p,!1,"keepdata","object",!0,!0);return W.version=V$,W=JSON.stringify(W),I(),k(m?W:ph.encodeJSON(W))}if(I(),u==="svg")return k(m?D:ph.encodeSVG(D));var B=document.createElement("canvas");B.id=vs.randstr(),G$({format:u,width:z,height:F,scale:h,canvas:B,svg:D,promise:!0}).then(k).catch(M)})}function A(k){return m?k.replace(ph.IMAGE_URL_PREFIX,""):k}return new Promise(function(k,M){WL.newPlot(p,t,y,b).then(C).then(x).then(_).then(function(D){k(A(D))}).catch(function(D){M(D)})})}ZL.exports=W$});var JL=te((Cce,jL)=>{"use strict";var zo=pr(),Z$=ca(),X$=F0(),j$=Kf().dfltConfig,wl=zo.isPlainObject,qc=Array.isArray,pb=zo.isArrayOrTypedArray;jL.exports=function(r,t){r===void 0&&(r=[]),t===void 0&&(t={});var n=X$.get(),a=[],i={_context:zo.extendFlat({},j$)},o,l;qc(r)?(i.data=zo.extendDeep([],r),o=r):(i.data=[],o=[],a.push(wa("array","data"))),wl(t)?(i.layout=zo.extendDeep({},t),l=t):(i.layout={},l={},arguments.length>1&&a.push(wa("object","layout"))),Z$.supplyDefaults(i);for(var s=i._fullData,u=o.length,f=0;fv.length&&n.push(wa("unused",a,u.concat(v.length)));var b=v.length,C=Array.isArray(y);C&&(b=Math.min(b,y.length));var x,_,A,k,M;if(h.dimensions===2)for(_=0;_v[_].length&&n.push(wa("unused",a,u.concat(_,v[_].length)));var D=v[_].length;for(x=0;x<(C?Math.min(D,y[_].length):D);x++)A=C?y[_][x]:y,k=f[_][x],M=v[_][x],zo.validate(k,A)?M!==k&&M!==+k&&n.push(wa("dynamic",a,u.concat(_,x),k,M)):n.push(wa("value",a,u.concat(_,x),k))}else n.push(wa("array",a,u.concat(_),f[_]));else for(_=0;_{"use strict";var tK=pr(),Kg=Cc();function nK(e,r,t){var n=document.createElement("a"),a="download"in n,i=new Promise(function(o,l){var s,u;if(a)return s=Kg.createBlob(e,t),u=Kg.createObjectURL(s),n.href=u,n.download=r,document.body.appendChild(n),n.click(),document.body.removeChild(n),Kg.revokeObjectURL(u),s=null,o(r);if(tK.isSafari()){var f=t==="svg"?",":";base64,";return Kg.octetStream(f+encodeURIComponent(e)),o(r)}l(new Error("download error"))});return i}$L.exports=nK});var gb=te((Dce,eq)=>{"use strict";var QL=pr(),aK=db(),iK=KL(),qce=Cc();function oK(e,r){var t;return QL.isPlainObject(e)||(t=QL.getGraphDiv(e)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(n,a){t&&t._snapshotInProgress&&a(new Error("Snapshotting already in progress.")),t&&(t._snapshotInProgress=!0);var i=aK(e,r),o=r.filename||e.fn||"newplot";o+="."+r.format.replace("-","."),i.then(function(l){return t&&(t._snapshotInProgress=!1),iK(l,o,r.format)}).then(function(l){n(l)}).catch(function(l){t&&(t._snapshotInProgress=!1),a(l)})})}eq.exports=oK});var iq=te(mb=>{"use strict";var Fi=pr(),Ii=Fi.isPlainObject,rq=F0(),tq=ca(),lK=bo(),nq=_n(),aq=Kf().dfltConfig;mb.makeTemplate=function(e){e=Fi.isPlainObject(e)?e:Fi.getGraphDiv(e),e=Fi.extendDeep({_context:aq},{data:e.data,layout:e.layout}),tq.supplyDefaults(e);var r=e.data||[],t=e.layout||{};t._basePlotModules=e._fullLayout._basePlotModules,t._modules=e._fullLayout._modules;var n={data:{},layout:{}};r.forEach(function(d){var m={};gh(d,m,uK.bind(null,d));var p=Fi.coerce(d,{},lK,"type"),y=n.data[p];y||(y=n.data[p]=[]),y.push(m)}),gh(t,n.layout,sK.bind(null,t)),delete n.layout.template;var a=t.template;if(Ii(a)){var i=a.layout,o,l,s,u,f,v;Ii(i)&&Qg(i,n.layout);var h=a.data;if(Ii(h)){for(l in n.data)if(s=h[l],Array.isArray(s)){for(f=n.data[l],v=f.length,u=s.length,o=0;ob?o.push({code:"unused",traceType:d,templateCount:y,dataCount:b}):b>y&&o.push({code:"reused",traceType:d,templateCount:y,dataCount:b})}}function C(x,_){for(var A in x)if(A.charAt(0)!=="_"){var k=x[A],M=No(x,A,_);Ii(k)?(Array.isArray(x)&&k._template===!1&&k.templateitemname&&o.push({code:"missing",path:M,templateitemname:k.templateitemname}),C(k,M)):Array.isArray(k)&&fK(k)&&C(k,M)}}if(C({data:s,layout:l},""),o.length)return o.map(cK)};function fK(e){for(var r=0;r{"use strict";var ha=fb();qn._doPlot=ha._doPlot;qn.newPlot=ha.newPlot;qn.restyle=ha.restyle;qn.relayout=ha.relayout;qn.redraw=ha.redraw;qn.update=ha.update;qn._guiRestyle=ha._guiRestyle;qn._guiRelayout=ha._guiRelayout;qn._guiUpdate=ha._guiUpdate;qn._storeDirectGUIEdit=ha._storeDirectGUIEdit;qn.react=ha.react;qn.extendTraces=ha.extendTraces;qn.prependTraces=ha.prependTraces;qn.addTraces=ha.addTraces;qn.deleteTraces=ha.deleteTraces;qn.moveTraces=ha.moveTraces;qn.purge=ha.purge;qn.addFrames=ha.addFrames;qn.deleteFrames=ha.deleteFrames;qn.animate=ha.animate;qn.setPlotConfig=ha.setPlotConfig;var vK=u1().getGraphDiv,hK=fg().eraseActiveShape;qn.deleteActiveShape=function(e){return hK(vK(e))};qn.toImage=db();qn.validate=JL();qn.downloadImage=gb();var oq=iq();qn.makeTemplate=oq.makeTemplate;qn.validateTemplate=oq.validateTemplate});var uq=te((Rce,sq)=>{"use strict";var yb=pr(),dK=dt();sq.exports=function(r,t,n,a){var i=a("x"),o=a("y"),l,s=dK.getComponentMethod("calendars","handleTraceDefaults");if(s(r,t,["x","y"],n),i){var u=yb.minRowLength(i);o?l=Math.min(u,yb.minRowLength(o)):(l=u,a("y0"),a("dy"))}else{if(!o)return 0;l=yb.minRowLength(o),a("x0"),a("dx")}return t._length=l,l}});var hq=te((zce,vq)=>{"use strict";var fq=pr().dateTick0,pK=Rn(),gK=pK.ONEWEEK;function cq(e,r){return e%gK===0?fq(r,1):fq(r,0)}vq.exports=function(r,t,n,a,i){if(i||(i={x:!0,y:!0}),i.x){var o=a("xperiod");o&&(a("xperiod0",cq(o,t.xcalendar)),a("xperiodalignment"))}if(i.y){var l=a("yperiod");l&&(a("yperiod0",cq(l,t.ycalendar)),a("yperiodalignment"))}}});var gq=te((Nce,pq)=>{"use strict";var dq=["orientation","groupnorm","stackgaps"];pq.exports=function(r,t,n,a){var i=n._scatterStackOpts,o=a("stackgroup");if(o){var l=t.xaxis+t.yaxis,s=i[l];s||(s=i[l]={});var u=s[o],f=!1;u?u.traces.push(t):(u=s[o]={traceIndices:[],traces:[t]},f=!0);for(var v={orientation:t.x&&!t.y?"h":"v"},h=0;h{"use strict";var mq=Et(),yq=es().hasColorscale,bq=U0(),mK=Qa();_q.exports=function(r,t,n,a,i,o){var l=mK.isBubble(r),s=(r.line||{}).color,u;if(o=o||{},s&&(n=s),i("marker.symbol"),i("marker.opacity",l?.7:1),i("marker.size"),o.noAngle||(i("marker.angle"),o.noAngleRef||i("marker.angleref"),o.noStandOff||i("marker.standoff")),i("marker.color",n),yq(r,"marker")&&bq(r,t,a,i,{prefix:"marker.",cLetter:"c"}),o.noSelect||(i("selected.marker.color"),i("unselected.marker.color"),i("selected.marker.size"),i("unselected.marker.size")),o.noLine||(s&&!Array.isArray(s)&&t.marker.color!==s?u=s:l?u=mq.background:u=mq.defaultLine,i("marker.line.color",u),yq(r,"marker.line")&&bq(r,t,a,i,{prefix:"marker.line.",cLetter:"c"}),i("marker.line.width",l?1:0)),l&&(i("marker.sizeref"),i("marker.sizemin"),i("marker.sizemode")),o.gradient){var f=i("marker.gradient.type");f!=="none"&&i("marker.gradient.color")}}});var _b=te((Ice,xq)=>{"use strict";var yK=pr().isArrayOrTypedArray,bK=es().hasColorscale,_K=U0();xq.exports=function(r,t,n,a,i,o){o||(o={});var l=(r.marker||{}).color;if(l&&l._inputArray&&(l=l._inputArray),i("line.color",n),bK(r,"line"))_K(r,t,a,i,{prefix:"line.",cLetter:"c"});else{var s=(yK(l)?!1:l)||n;i("line.color",s)}i("line.width"),o.noDash||i("line.dash"),o.backoff&&i("line.backoff")}});var Mq=te((Hce,wq)=>{"use strict";wq.exports=function(r,t,n){var a=n("line.shape");a==="spline"&&n("line.smoothing")}});var xb=te((Bce,Aq)=>{"use strict";var xK=pr();Aq.exports=function(e,r,t,n,a){a=a||{},n("textposition"),xK.coerceFont(n,"textfont",a.font||t.font,a),a.noSelect||(n("selected.textfont.color"),n("unselected.textfont.color"))}});var wb=te((Oce,kq)=>{"use strict";var rm=Et(),Tq=pr().isArrayOrTypedArray;function wK(e){for(var r=rm.interpolate(e[0][1],e[1][1],.5),t=2;t{"use strict";var Sq=pr(),MK=dt(),AK=Sc(),TK=Cg(),pv=Qa(),kK=uq(),SK=hq(),CK=gq(),LK=bb(),qK=_b(),Cq=Mq(),DK=xb(),EK=wb(),PK=pr().coercePattern;Lq.exports=function(r,t,n,a){function i(d,m){return Sq.coerce(r,t,AK,d,m)}var o=kK(r,t,a,i);if(o||(t.visible=!1),!!t.visible){SK(r,t,a,i),i("xhoverformat"),i("yhoverformat"),i("zorder");var l=CK(r,t,a,i);a.scattermode==="group"&&t.orientation===void 0&&i("orientation","v");var s=!l&&o{"use strict";var RK=U1().getAxisGroup;Dq.exports=function(r,t,n,a,i){var o=t.orientation,l=t[{v:"x",h:"y"}[o]+"axis"],s=RK(n,l)+o,u=n._alignmentOpts||{},f=a("alignmentgroup"),v=u[s];v||(v=u[s]={});var h=v[f];h?h.traces.push(t):h=v[f]={traces:[t],alignmentIndex:Object.keys(v).length,offsetGroups:{}};var d=a("offsetgroup")||"",m=h.offsetGroups,p=m[d];t._offsetIndex=0,(i!=="group"||d)&&(p||(p=m[d]={offsetIndex:Object.keys(m).length}),t._offsetIndex=p.offsetIndex)}});var Rq=te((Gce,Pq)=>{"use strict";var zK=pr(),NK=Eq(),FK=Sc();Pq.exports=function(r,t){var n,a,i,o=t.scattermode;function l(h){return zK.coerce(a._input,a,FK,h)}if(t.scattermode==="group")for(i=0;i=0;f--){var v=r[f];if(v.type==="scatter"&&v.xaxis===s.xaxis&&v.yaxis===s.yaxis){v.opacity=void 0;break}}}}}});var Nq=te((Vce,zq)=>{"use strict";var IK=pr(),HK=Wd();zq.exports=function(e,r){function t(a,i){return IK.coerce(e,r,HK,a,i)}var n=r.barmode==="group";r.scattermode==="group"&&t("scattergap",n?r.bargap:.2)}});var Hq=te((Wce,Iq)=>{"use strict";var BK=Ht(),Fq=pr(),OK=Fq.dateTime2ms,tm=Fq.incrementMonth,UK=Rn(),YK=UK.ONEAVGMONTH;Iq.exports=function(r,t,n,a){if(t.type!=="date")return{vals:a};var i=r[n+"periodalignment"];if(!i)return{vals:a};var o=r[n+"period"],l;if(BK(o)){if(o=+o,o<=0)return{vals:a}}else if(typeof o=="string"&&o.charAt(0)==="M"){var s=+o.substring(1);if(s>0&&Math.round(s)===s)l=s;else return{vals:a}}for(var u=t.calendar,f=i==="start",v=i==="end",h=r[n+"period0"],d=OK(h,u)||0,m=[],p=[],y=[],b=a.length,C=0;Cx;)k=tm(k,-l,u);for(;k<=x;)k=tm(k,l,u);A=tm(k,-l,u)}else{for(_=Math.round((x-d)/o),k=d+_*o;k>x;)k-=o;for(;k<=x;)k+=o;A=k-o}m[C]=f?A:v?k:(A+k)/2,p[C]=A,y[C]=k}return{vals:m,starts:p,ends:y}}});var Tb=te((Zce,Oq)=>{"use strict";var Mb=es().hasColorscale,Ab=np(),Bq=Qa();Oq.exports=function(r,t){Bq.hasLines(t)&&Mb(t,"line")&&Ab(r,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),Bq.hasMarkers(t)&&(Mb(t,"marker")&&Ab(r,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),Mb(t,"marker.line")&&Ab(r,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var mh=te((Xce,Uq)=>{"use strict";var Gn=pr();Uq.exports=function(r,t){for(var n=0;n{"use strict";var Yq=pr();Gq.exports=function(r,t){Yq.isArrayOrTypedArray(t.selectedpoints)&&Yq.tagSelected(r,t)}});var am=te((Jce,$q)=>{"use strict";var Vq=Ht(),Sb=pr(),yh=Dn(),Wq=Hq(),kb=Rn().BADNUM,Cb=Qa(),GK=Tb(),VK=mh(),WK=nm();function ZK(e,r){var t=e._fullLayout,n=r._xA=yh.getFromId(e,r.xaxis||"x","x"),a=r._yA=yh.getFromId(e,r.yaxis||"y","y"),i=n.makeCalcdata(r,"x"),o=a.makeCalcdata(r,"y"),l=Wq(r,n,"x",i),s=Wq(r,a,"y",o),u=l.vals,f=s.vals,v=r._length,h=new Array(v),d=r.ids,m=Lb(r,t,n,a),p=!1,y,b,C,x,_,A;jq(t,r);var k="x",M="y",D;if(m)Sb.pushUnique(m.traceIndices,r.index),y=m.orientation==="v",y?(M="s",D="x"):(k="s",D="y"),_=m.stackgaps==="interpolate";else{var z=Xq(r,v);Zq(e,r,n,a,u,f,z)}var F=!!r.xperiodalignment,I=!!r.yperiodalignment;for(b=0;bb&&h[x].gap;)x--;for(A=h[x].s,C=h.length-1;C>x;C--)h[C].s=A;for(;b{"use strict";Kq.exports=im;var XK=pr().distinctVals;function im(e,r){this.traces=e,this.sepNegVal=r.sepNegVal,this.overlapNoMerge=r.overlapNoMerge;for(var t=1/0,n=r.posAxis._id.charAt(0),a=[],i=0;i{"use strict";var Fo=Ht(),af=pr().isArrayOrTypedArray,gv=Rn().BADNUM,jK=dt(),bh=Dn(),JK=U1().getAxisGroup,om=Qq();function $K(e,r){for(var t=r.xaxis,n=r.yaxis,a=e._fullLayout,i=e._fullData,o=e.calcdata,l=[],s=[],u=0;us+o||!Fo(l))}for(var f=0;f{"use strict";var iD=am(),oD=aD().setGroupPositions;function uQ(e,r){for(var t=r.xaxis,n=r.yaxis,a=e._fullLayout,i=e._fullData,o=e.calcdata,l=[],s=[],u=0;uz[f]&&f{"use strict";var cQ=fn(),vD=Rn(),_h=vD.BADNUM,hD=vD.LOG_CLIP,uD=hD+.5,fD=hD-.5,lm=pr(),vQ=lm.segmentsIntersect,cD=lm.constrain,zb=Cg();dD.exports=function(r,t){var n=t.trace||{},a=t.xaxis,i=t.yaxis,o=a.type==="log",l=i.type==="log",s=a._length,u=i._length,f=t.backoff,v=n.marker,h=t.connectGaps,d=t.baseTolerance,m=t.shape,p=m==="linear",y=n.fill&&n.fill!=="none",b=[],C=zb.minTolerance,x=r.length,_=new Array(x),A=0,k,M,D,z,F,I,W,B,X,V,re,ae,Q,ee,fe,he;function Le(ur){var _e=r[ur];if(!_e)return!1;var Ae=t.linearized?a.l2p(_e.x):a.c2p(_e.x),Ke=t.linearized?i.l2p(_e.y):i.c2p(_e.y);if(Ae===_h){if(o&&(Ae=a.c2p(_e.x,!0)),Ae===_h)return!1;l&&Ke===_h&&(Ae*=Math.abs(a._m*u*(a._m>0?uD:fD)/(i._m*s*(i._m>0?uD:fD)))),Ae*=1e3}if(Ke===_h){if(l&&(Ke=i.c2p(_e.y,!0)),Ke===_h)return!1;Ke*=1e3}return[Ae,Ke]}function Ie(ur,_e,Ae,Ke){var rr=Ae-ur,Lr=Ke-_e,Yr=.5-ur,Fr=.5-_e,lt=rr*rr+Lr*Lr,xt=rr*Yr+Lr*Fr;if(xt>0&&xt1||Math.abs(Yr.y-Ae[0][1])>1)&&(Yr=[Yr.x,Yr.y],Ke&&Qe(Yr,ur)Me||ur[1]U)return[cD(ur[0],ye,Me),cD(ur[1],pe,U)]}function lr(ur,_e){if(ur[0]===_e[0]&&(ur[0]===ye||ur[0]===Me)||ur[1]===_e[1]&&(ur[1]===pe||ur[1]===U))return!0}function vr(ur,_e){var Ae=[],Ke=nr(ur),rr=nr(_e);return Ke&&rr&&lr(Ke,rr)||(Ke&&Ae.push(Ke),rr&&Ae.push(rr)),Ae}function Je(ur,_e,Ae){return function(Ke,rr){var Lr=nr(Ke),Yr=nr(rr),Fr=[];if(Lr&&Yr&&lr(Lr,Yr))return Fr;Lr&&Fr.push(Lr),Yr&&Fr.push(Yr);var lt=2*lm.constrain((Ke[ur]+rr[ur])/2,_e,Ae)-((Lr||Ke)[ur]+(Yr||rr)[ur]);if(lt){var xt;Lr&&Yr?xt=lt>0==Lr[ur]>Yr[ur]?Lr:Yr:xt=Lr||Yr,xt[ur]+=lt}return Fr}}var dr;m==="linear"||m==="spline"?dr=Ye:m==="hv"||m==="vh"?dr=vr:m==="hvh"?dr=Je(0,ye,Me):m==="vhv"&&(dr=Je(1,pe,U));function gr(ur,_e){var Ae=_e[0]-ur[0],Ke=(_e[1]-ur[1])/Ae,rr=(ur[1]*_e[0]-_e[1]*ur[0])/Ae;return rr>0?[Ke>0?ye:Me,U]:[Ke>0?Me:ye,pe]}function Te(ur){var _e=ur[0],Ae=ur[1],Ke=_e===_[A-1][0],rr=Ae===_[A-1][1];if(!(Ke&&rr))if(A>1){var Lr=_e===_[A-2][0],Yr=Ae===_[A-2][1];Ke&&(_e===ye||_e===Me)&&Lr?Yr?A--:_[A-1]=ur:rr&&(Ae===pe||Ae===U)&&Yr?Lr?A--:_[A-1]=ur:_[A++]=ur}else _[A++]=ur}function Oe(ur){_[A-1][0]!==ur[0]&&_[A-1][1]!==ur[1]&&Te([Be,Ne]),Te(ur),ir=null,Be=Ne=0}var kr=lm.isArrayOrTypedArray(v);function Ur(ur){if(ur&&f&&(ur.i=k,ur.d=r,ur.trace=n,ur.marker=kr?v[ur.i]:v,ur.backoff=f),ze=ur[0]/s,Xe=ur[1]/u,$=ur[0]Me?Me:0,ke=ur[1]U?U:0,$||ke){if(!A)_[A++]=[$||ur[0],ke||ur[1]];else if(ir){var _e=dr(ir,ur);_e.length>1&&(Oe(_e[0]),_[A++]=_e[1])}else or=dr(_[A-1],ur)[0],_[A++]=or;var Ae=_[A-1];$&&ke&&(Ae[0]!==$||Ae[1]!==ke)?(ir&&(Be!==$&&Ne!==ke?Te(Be&&Ne?gr(ir,ur):[Be||$,Ne||ke]):Be&&Ne&&Te([Be,Ne])),Te([$,ke])):Be-$&&Ne-ke&&Te([$||Be,ke||Ne]),ir=ur,Be=$,Ne=ke}else ir&&Oe(dr(ir,ur)[0]),_[A++]=ur}for(k=0;kCe(I,tr))break;D=I,Q=X[0]*B[0]+X[1]*B[1],Q>re?(re=Q,z=I,W=!1):Q=r.length||!I)break;Ur(I),M=I}}ir&&Te([Be||ir[0],Ne||ir[1]]),b.push(_.slice(0,A))}var Ue=m.slice(m.length-1);if(f&&Ue!=="h"&&Ue!=="v"){for(var Ze=!1,mr=-1,Tr=[],yr=0;yr{"use strict";var gD={tonextx:1,tonexty:1,tonext:1};mD.exports=function(r,t,n){var a,i,o,l,s,u={},f=!1,v=-1,h=0,d=-1;for(i=0;i=0?s=d:(s=d=h,h++),s{"use strict";var Ml=kt(),hQ=dt(),xh=pr(),yv=xh.ensureSingle,_D=xh.identity,Vn=fn(),bv=Qa(),dQ=pD(),pQ=yD(),sm=wg().tester;xD.exports=function(r,t,n,a,i,o){var l,s,u=!i,f=!!i&&i.duration>0,v=pQ(r,t,n);if(l=a.selectAll("g.trace").data(v,function(d){return d[0].trace.uid}),l.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),l.order(),gQ(r,l,t),f){o&&(s=o());var h=Ml.transition().duration(i.duration).ease(i.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});h.each(function(){a.selectAll("g.trace").each(function(d,m){bD(r,m,t,d,v,this,i)})})}else l.each(function(d,m){bD(r,m,t,d,v,this,i)});u&&l.exit().remove(),a.selectAll("path:not([d])").remove()};function gQ(e,r,t){r.each(function(n){var a=yv(Ml.select(this),"g","fills");Vn.setClipUrl(a,t.layerClipId,e);var i=n[0].trace,o=[];i._ownfill&&o.push("_ownFill"),i._nexttrace&&o.push("_nextFill");var l=a.selectAll("g").data(o,_D);l.enter().append("g"),l.exit().each(function(s){i[s]=null}).remove(),l.order().each(function(s){i[s]=yv(Ml.select(this),"path","js-fill")})})}function bD(e,r,t,n,a,i,o){var l=e._context.staticPlot,s;mQ(e,r,t,n,a);var u=!!o&&o.duration>0;function f(Je){return u?Je.transition():Je}var v=t.xaxis,h=t.yaxis,d=n[0].trace,m=d.line,p=Ml.select(i),y=yv(p,"g","errorbars"),b=yv(p,"g","lines"),C=yv(p,"g","points"),x=yv(p,"g","text");if(hQ.getComponentMethod("errorbars","plot")(e,y,t,o),d.visible!==!0)return;f(p).style("opacity",d.opacity);var _,A,k=d.fill.charAt(d.fill.length-1);k!=="x"&&k!=="y"&&(k="");var M,D;k==="y"?(M=1,D=h.c2p(0,!0)):k==="x"&&(M=0,D=v.c2p(0,!0)),n[0][t.isRangePlot?"nodeRangePlot3":"node3"]=p;var z="",F=[],I=d._prevtrace,W=null,B=null;I&&(z=I._prevRevpath||"",A=I._nextFill,F=I._ownPolygons,W=I._fillsegments,B=I._fillElement);var X,V,re="",ae="",Q,ee,fe,he,Le,Ie,ze=[];d._polygons=[];var Xe=[],Ce=[],Qe=xh.noop;if(_=d._ownFill,bv.hasLines(d)||d.fill!=="none"){A&&A.datum(n),["hv","vh","hvh","vhv"].indexOf(m.shape)!==-1?(Q=Vn.steps(m.shape),ee=Vn.steps(m.shape.split("").reverse().join(""))):m.shape==="spline"?Q=ee=function(Je){var dr=Je[Je.length-1];return Je.length>1&&Je[0][0]===dr[0]&&Je[0][1]===dr[1]?Vn.smoothclosed(Je.slice(1),m.smoothing):Vn.smoothopen(Je,m.smoothing)}:Q=ee=function(Je){return"M"+Je.join("L")},fe=function(Je){return ee(Je.reverse())},Ce=dQ(n,{xaxis:v,yaxis:h,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(m.width||1,3)/4,shape:m.shape,backoff:m.backoff,simplify:m.simplify,fill:d.fill}),Xe=new Array(Ce.length);var ue=0;for(s=0;s=l[0]&&p.x<=l[1]&&p.y>=s[0]&&p.y<=s[1]}),h=Math.ceil(v.length/f),d=0;a.forEach(function(p,y){var b=p[0].trace;bv.hasMarkers(b)&&b.marker.maxdisplayed>0&&y{"use strict";MD.exports={container:"marker",min:"cmin",max:"cmax"}});var TD=te((a0e,AD)=>{"use strict";var um=Dn();AD.exports=function(r,t,n){var a={},i={_fullLayout:n},o=um.getFromTrace(i,t,"x"),l=um.getFromTrace(i,t,"y"),s=r.orig_x;s===void 0&&(s=r.x);var u=r.orig_y;return u===void 0&&(u=r.y),a.xLabel=um.tickText(o,o.c2l(s),!0).text,a.yLabel=um.tickText(l,l.c2l(u),!0).text,a}});var wh=te((i0e,kD)=>{"use strict";var Fb=kt(),_v=fn(),yQ=dt();function bQ(e){var r=Fb.select(e).selectAll("g.trace.scatter");r.style("opacity",function(t){return t[0].trace.opacity}),r.selectAll("g.points").each(function(t){var n=Fb.select(this),a=t.trace||t[0].trace;Ib(n,a,e)}),r.selectAll("g.text").each(function(t){var n=Fb.select(this),a=t.trace||t[0].trace;Hb(n,a,e)}),r.selectAll("g.trace path.js-line").call(_v.lineGroupStyle),r.selectAll("g.trace path.js-fill").call(_v.fillGroupStyle,e,!1),yQ.getComponentMethod("errorbars","style")(r)}function Ib(e,r,t){_v.pointStyle(e.selectAll("path.point"),r,t)}function Hb(e,r,t){_v.textPointStyle(e.selectAll("text"),r,t)}function _Q(e,r,t){var n=r[0].trace;n.selectedpoints?(_v.selectedPointStyle(t.selectAll("path.point"),n),_v.selectedTextStyle(t.selectAll("text"),n)):(Ib(t,n,e),Hb(t,n,e))}kD.exports={style:bQ,stylePoints:Ib,styleText:Hb,styleOnSelect:_Q}});var Bb=te((o0e,SD)=>{"use strict";var xv=Et(),xQ=Qa();SD.exports=function(r,t){var n,a;if(r.mode==="lines")return n=r.line.color,n&&xv.opacity(n)?n:r.fillcolor;if(r.mode==="none")return r.fill?r.fillcolor:"";var i=t.mcc||(r.marker||{}).color,o=t.mlcc||((r.marker||{}).line||{}).color;return a=i&&xv.opacity(i)?i:o&&xv.opacity(o)&&(t.mlw||((r.marker||{}).line||{}).width)?o:"",a?xv.opacity(a)<.3?xv.addOpacity(a,.3):a:(n=(r.line||{}).color,n&&xv.opacity(n)&&xQ.hasLines(r)&&r.line.width?n:r.fillcolor)}});var qD=te((l0e,LD)=>{"use strict";var fm=pr(),CD=ss(),wQ=dt(),MQ=Bb(),Ob=Et(),AQ=fm.fillText;LD.exports=function(r,t,n,a){var i=r.cd,o=i[0].trace,l=r.xa,s=r.ya,u=l.c2p(t),f=s.c2p(n),v=[u,f],h=o.hoveron||"",d=o.mode.indexOf("markers")!==-1?3:.5,m=!!o.xperiodalignment,p=!!o.yperiodalignment;if(h.indexOf("points")!==-1){var y=function(ae){if(m){var Q=l.c2p(ae.xStart),ee=l.c2p(ae.xEnd);return u>=Math.min(Q,ee)&&u<=Math.max(Q,ee)?0:1/0}var fe=Math.max(3,ae.mrc||0),he=1-1/fe,Le=Math.abs(l.c2p(ae.x)-u);return Le=Math.min(Q,ee)&&f<=Math.max(Q,ee)?0:1/0}var fe=Math.max(3,ae.mrc||0),he=1-1/fe,Le=Math.abs(s.c2p(ae.y)-f);return Leze!=U>=ze&&(ye=Qe[Ce-1][0],Me=Qe[Ce][0],U-pe&&(ue=ye+(Me-ye)*(ze-pe)/(U-pe),fe=Math.min(fe,ue),he=Math.max(he,ue)));return fe=Math.max(fe,0),he=Math.min(he,l._length),{x0:fe,x1:he,y0:ze,y1:ze}}if(h.indexOf("fills")!==-1&&o._fillElement){var X=W(o._fillElement)&&!W(o._fillExclusionElement);if(X){var V=B(o._polygons);V===null&&(V={x0:v[0],x1:v[0],y0:v[1],y1:v[1]});var re=Ob.defaultLine;return Ob.opacity(o.fillcolor)?re=o.fillcolor:Ob.opacity((o.line||{}).color)&&(re=o.line.color),fm.extendFlat(r,{distance:r.maxHoverDistance,x0:V.x0,x1:V.x1,y0:V.y0,y1:V.y1,color:re,hovertemplate:!1}),delete r.index,o.text&&!fm.isArrayOrTypedArray(o.text)?r.text=String(o.text):r.text=o.name,[r]}}}});var PD=te((s0e,ED)=>{"use strict";var DD=Qa();ED.exports=function(r,t){var n=r.cd,a=r.xaxis,i=r.yaxis,o=[],l=n[0].trace,s,u,f,v,h=!DD.hasMarkers(l)&&!DD.hasText(l);if(h)return[];if(t===!1)for(s=0;s{"use strict";RD.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var HD=te((f0e,ID)=>{"use strict";var Mh=dt().traceIs,Ub=u3();ID.exports=function(r,t,n,a){n("autotypenumbers",a.autotypenumbersDflt);var i=n("type",(a.splomStash||{}).type);i==="-"&&(TQ(t,a.data),t.type==="-"?t.type="linear":r.type=t.type)};function TQ(e,r){if(e.type==="-"){var t=e._id,n=t.charAt(0),a;t.indexOf("scene")!==-1&&(t=n);var i=kQ(r,t,n);if(i){if(i.type==="histogram"&&n==={v:"y",h:"x"}[i.orientation||"v"]){e.type="linear";return}var o=n+"calendar",l=i[o],s={noMultiCategory:!Mh(i,"cartesian")||Mh(i,"noMultiCategory")};if(i.type==="box"&&i._hasPreCompStats&&n==={h:"x",v:"y"}[i.orientation||"v"]&&(s.noMultiCategory=!0),s.autotypenumbers=e.autotypenumbers,FD(i,n)){var u=ND(i),f=[];for(a=0;a0&&(a["_"+t+"axes"]||{})[r])return a;if((a[t+"axis"]||t)===r){if(FD(a,t))return a;if((a[t]||[]).length||a[t+"0"])return a}}}function ND(e){return{v:"x",h:"y"}[e.orientation||"v"]}function FD(e,r){var t=ND(e),n=Mh(e,"box-violin"),a=Mh(e._fullInput||{},"candlestick");return n&&!a&&r===t&&e[t]===void 0&&e[t+"0"]===void 0}});var OD=te((c0e,BD)=>{"use strict";var SQ=ji().isTypedArraySpec;function CQ(e,r){var t=r.dataAttr||e._id.charAt(0),n={},a,i,o;if(r.axData)a=r.axData;else for(a=[],i=0;i0||SQ(i),l;o&&(l="array");var s=n("categoryorder",l),u;s==="array"&&(u=n("categoryarray")),!o&&s==="array"&&(s=t.categoryorder="trace"),s==="trace"?t._initialCategories=[]:s==="array"?t._initialCategories=u.slice():(u=CQ(t,a).sort(),s==="category ascending"?t._initialCategories=u:s==="category descending"&&(t._initialCategories=u.reverse()))}}});var GD=te((v0e,YD)=>{"use strict";var UD=Jl().mix,LQ=vl(),qQ=pr();YD.exports=function(r,t,n,a){a=a||{};var i=a.dfltColor;function o(D,z){return qQ.coerce2(r,t,a.attributes,D,z)}var l=o("linecolor",i),s=o("linewidth"),u=n("showline",a.showLine||!!l||!!s);u||(delete t.linecolor,delete t.linewidth);var f=UD(i,a.bgColor,a.blend||LQ.lightFraction).toRgbString(),v=o("gridcolor",f),h=o("gridwidth"),d=o("griddash"),m=n("showgrid",a.showGrid||!!v||!!h||!!d);if(m||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),a.hasMinor){var p=UD(t.gridcolor,a.bgColor,67).toRgbString(),y=o("minor.gridcolor",p),b=o("minor.gridwidth",t.gridwidth||1),C=o("minor.griddash",t.griddash||"solid"),x=n("minor.showgrid",!!y||!!b||!!C);x||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!a.noZeroLine){var _=o("zerolinelayer"),A=o("zerolinecolor",i),k=o("zerolinewidth"),M=n("zeroline",a.showGrid||!!A||!!k);M||(delete t.zerolinelayer,delete t.zerolinecolor,delete t.zerolinewidth)}}});var Gb=te((h0e,JD)=>{"use strict";var VD=Ht(),DQ=dt(),Ah=pr(),EQ=_n(),PQ=ml(),Yb=gl(),WD=P2(),ZD=z2(),RQ=I2(),zQ=H2(),NQ=OD(),FQ=GD(),IQ=q3(),XD=bp(),cm=Ea().WEEKDAY_PATTERN,HQ=Ea().HOUR_PATTERN;JD.exports=function(r,t,n,a,i){var o=a.letter,l=a.font||{},s=a.splomStash||{},u=n("visible",!a.visibleDflt),f=t._template||{},v=t.type||f.type||"-",h;if(v==="date"){var d=DQ.getComponentMethod("calendars","handleDefaults");d(r,t,"calendar",a.calendar),a.noTicklabelmode||(h=n("ticklabelmode"))}!a.noTicklabelindex&&(v==="date"||v==="linear")&&n("ticklabelindex");var m="";(!a.noTicklabelposition||v==="multicategory")&&(m=Ah.coerce(r,t,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h==="period"?["outside","inside"]:o==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),a.noTicklabeloverflow||n("ticklabeloverflow",m.indexOf("inside")!==-1?"hide past domain":v==="category"||v==="multicategory"?"allow":"hide past div"),XD(t,i),IQ(r,t,n,a),NQ(r,t,n,a),a.noHover||(v!=="category"&&n("hoverformat"),a.noUnifiedhovertitle||n("unifiedhovertitle.text"));var p=n("color"),y=p!==Yb.color.dflt?p:l.color,b=s.label||i._dfltTitle[o];if(zQ(r,t,n,v,a),!u)return t;n("title.text",b),Ah.coerceFont(n,"title.font",l,{overrideDflt:{size:Ah.bigFont(l.size),color:y}}),WD(r,t,n,v);var C=a.hasMinor;if(C&&(EQ.newContainer(t,"minor"),WD(r,t,n,v,{isMinor:!0})),RQ(r,t,n,v,a),ZD(r,t,n,a),C){var x=a.isMinor;a.isMinor=!0,ZD(r,t,n,a),a.isMinor=x}FQ(r,t,n,{dfltColor:p,bgColor:a.bgColor,showGrid:a.showGrid,hasMinor:C,attributes:Yb}),C&&!t.minor.ticks&&!t.minor.showgrid&&delete t.minor,(t.showline||t.ticks)&&n("mirror");var _=v==="multicategory";if(!a.noTickson&&(v==="category"||_)&&(t.ticks||t.showgrid)&&(_?(n("tickson","boundaries"),delete t.ticklabelposition):n("tickson")),_){var A=n("showdividers");A&&(n("dividercolor"),n("dividerwidth"))}if(v==="date")if(PQ(r,t,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:BQ}),!t.rangebreaks.length)delete t.rangebreaks;else{for(var k=0;k=2){var o="",l,s;if(i.length===2){for(l=0;l<2;l++)if(s=jD(i[l]),s){o=cm;break}}var u=n("pattern",o);if(u===cm)for(l=0;l<2;l++)s=jD(i[l]),s&&(r.bounds[l]=i[l]=s-1);if(u)for(l=0;l<2;l++)switch(s=i[l],u){case cm:if(!VD(s)){r.enabled=!1;return}if(s=+s,s!==Math.floor(s)||s<0||s>=7){r.enabled=!1;return}r.bounds[l]=i[l]=s;break;case HQ:if(!VD(s)){r.enabled=!1;return}if(s=+s,s<0||s>24){r.enabled=!1;return}r.bounds[l]=i[l]=s;break}if(t.autorange===!1){var f=t.range;if(f[0]f[1]){r.enabled=!1;return}}else if(i[0]>f[0]&&i[1]{"use strict";var UQ=Ht(),vm=pr();$D.exports=function(r,t,n,a){var i=a.counterAxes||[],o=a.overlayableAxes||[],l=a.letter,s=a.grid,u=a.overlayingDomain,f,v,h,d,m,p;s&&(v=s._domains[l][s._axisMap[t._id]],f=s._anchors[t._id],v&&(h=s[l+"side"].split(" ")[0],d=s.domain[l][h==="right"||h==="top"?1:0])),v=v||[0,1],f=f||(UQ(r.position)?"free":i[0]||"free"),h=h||(l==="x"?"bottom":"left"),d=d||0,m=0,p=!1;var y=vm.coerce(r,t,{anchor:{valType:"enumerated",values:["free"].concat(i),dflt:f}},"anchor"),b=vm.coerce(r,t,{side:{valType:"enumerated",values:l==="x"?["bottom","top"]:["left","right"],dflt:h}},"side");if(y==="free"){if(l==="y"){var C=n("autoshift");C&&(d=b==="left"?u[0]:u[1],p=t.automargin?t.automargin:!0,m=b==="left"?-3:3),n("shift",m)}n("position",d)}n("automargin",p);var x=!1;if(o.length&&(x=vm.coerce(r,t,{overlaying:{valType:"enumerated",values:[!1].concat(o),dflt:!1}},"overlaying")),!x){var _=n("domain",v);_[0]>_[1]-1/4096&&(t.domain=v),vm.noneOrAll(r.domain,t.domain,v),t.tickmode==="sync"&&(t.tickmode="auto")}return n("layer"),t}});var oE=te((p0e,iE)=>{"use strict";var Dc=pr(),KD=Et(),YQ=Gu().isUnifiedHover,GQ=n5(),QD=_n(),VQ=k0(),eE=gl(),WQ=HD(),rE=Gb(),ZQ=U1(),tE=Vb(),Zb=fa(),hs=Zb.id2name,nE=Zb.name2id,XQ=Ea().AX_ID_PATTERN,aE=dt(),hm=aE.traceIs,Wb=aE.getComponentMethod;function dm(e,r,t){Array.isArray(e[r])?e[r].push(t):e[r]=[t]}iE.exports=function(r,t,n){var a=t.autotypenumbers,i={},o={},l={},s={},u={},f={},v={},h={},d={},m={},p,y;for(p=0;p{"use strict";var jQ=kt(),lE=dt(),pm=pr(),to=fn(),gm=Dn();sE.exports=function(r,t,n,a){var i=r._fullLayout;if(t.length===0){gm.redrawComponents(r);return}function o(y){var b=y.xaxis,C=y.yaxis;i._defs.select("#"+y.clipId+"> rect").call(to.setTranslate,0,0).call(to.setScale,1,1),y.plot.call(to.setTranslate,b._offset,C._offset).call(to.setScale,1,1);var x=y.plot.selectAll(".scatterlayer .trace");x.selectAll(".point").call(to.setPointGroupScale,1,1),x.selectAll(".textpoint").call(to.setTextPointsScale,1,1),x.call(to.hideOutsideRangePoints,y)}function l(y,b){var C=y.plotinfo,x=C.xaxis,_=C.yaxis,A=x._length,k=_._length,M=!!y.xr1,D=!!y.yr1,z=[];if(M){var F=pm.simpleMap(y.xr0,x.r2l),I=pm.simpleMap(y.xr1,x.r2l),W=F[1]-F[0],B=I[1]-I[0];z[0]=(F[0]*(1-b)+b*I[0]-F[0])/(F[1]-F[0])*A,z[2]=A*(1-b+b*B/W),x.range[0]=x.l2r(F[0]*(1-b)+b*I[0]),x.range[1]=x.l2r(F[1]*(1-b)+b*I[1])}else z[0]=0,z[2]=A;if(D){var X=pm.simpleMap(y.yr0,_.r2l),V=pm.simpleMap(y.yr1,_.r2l),re=X[1]-X[0],ae=V[1]-V[0];z[1]=(X[1]*(1-b)+b*V[1]-X[1])/(X[0]-X[1])*k,z[3]=k*(1-b+b*ae/re),_.range[0]=x.l2r(X[0]*(1-b)+b*V[0]),_.range[1]=_.l2r(X[1]*(1-b)+b*V[1])}else z[1]=0,z[3]=k;gm.drawOne(r,x,{skipTitle:!0}),gm.drawOne(r,_,{skipTitle:!0}),gm.redrawComponents(r,[x._id,_._id]);var Q=M?A/z[2]:1,ee=D?k/z[3]:1,fe=M?z[0]:0,he=D?z[1]:0,Le=M?z[0]/z[2]*A:0,Ie=D?z[1]/z[3]*k:0,ze=x._offset-Le,Xe=_._offset-Ie;C.clipRect.call(to.setTranslate,fe,he).call(to.setScale,1/Q,1/ee),C.plot.call(to.setTranslate,ze,Xe).call(to.setScale,Q,ee),to.setPointGroupScale(C.zoomScalePts,1/Q,1/ee),to.setTextPointsScale(C.zoomScaleTxt,1/Q,1/ee)}var s;a&&(s=a());function u(){for(var y={},b=0;bn.duration?(u(),d=window.cancelAnimationFrame(p)):d=window.requestAnimationFrame(p)}return v=Date.now(),d=window.requestAnimationFrame(p),Promise.resolve()}});var Xb=te(Ba=>{"use strict";var ym=kt(),fE=dt(),Ec=pr(),JQ=ca(),$Q=fn(),cE=_1().getModuleCalcData,of=fa(),Al=Ea(),KQ=sc(),jt=Ec.ensureSingle;function mm(e,r,t){return Ec.ensureSingle(e,r,t,function(n){n.datum(t)})}var Pc=Al.zindexSeparator;Ba.name="cartesian";Ba.attr=["xaxis","yaxis"];Ba.idRoot=["x","y"];Ba.idRegex=Al.idRegex;Ba.attrRegex=Al.attrRegex;Ba.attributes=zD();Ba.layoutAttributes=gl();Ba.supplyLayoutDefaults=oE();Ba.transitionAxes=uE();Ba.finalizeSubplots=function(e,r){var t=r._subplots,n=t.xaxis,a=t.yaxis,i=t.cartesian,o=i,l={},s={},u,f,v;for(u=0;u0){var d=h.id;if(d.indexOf(Pc)!==-1)continue;d+=Pc+(u+1),h=Ec.extendFlat({},h,{id:d,plot:a._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var m=[],p,y=0;y1&&(A+=Pc+_),x.push(l+A),o=0;o1,v=r.mainplotinfo;if(!r.mainplot||f)if(u)r.xlines=jt(n,"path","xlines-above"),r.ylines=jt(n,"path","ylines-above"),r.xaxislayer=jt(n,"g","xaxislayer-above"),r.yaxislayer=jt(n,"g","yaxislayer-above");else{if(!o){var h=jt(n,"g","layer-subplot");r.shapelayer=jt(h,"g","shapelayer"),r.imagelayer=jt(h,"g","imagelayer"),v&&f?(r.minorGridlayer=v.minorGridlayer,r.gridlayer=v.gridlayer,r.zerolinelayer=v.zerolinelayer):(r.minorGridlayer=jt(n,"g","minor-gridlayer"),r.gridlayer=jt(n,"g","gridlayer"),r.zerolinelayer=jt(n,"g","zerolinelayer"));var d=jt(n,"g","layer-between");r.shapelayerBetween=jt(d,"g","shapelayer"),r.imagelayerBetween=jt(d,"g","imagelayer"),jt(n,"path","xlines-below"),jt(n,"path","ylines-below"),r.overlinesBelow=jt(n,"g","overlines-below"),jt(n,"g","xaxislayer-below"),jt(n,"g","yaxislayer-below"),r.overaxesBelow=jt(n,"g","overaxes-below")}r.overplot=jt(n,"g","overplot"),r.plot=jt(r.overplot,"g",a),v&&f?r.zerolinelayerAbove=v.zerolinelayerAbove:r.zerolinelayerAbove=jt(n,"g","zerolinelayer-above"),o||(r.xlines=jt(n,"path","xlines-above"),r.ylines=jt(n,"path","ylines-above"),r.overlinesAbove=jt(n,"g","overlines-above"),jt(n,"g","xaxislayer-above"),jt(n,"g","yaxislayer-above"),r.overaxesAbove=jt(n,"g","overaxes-above"),r.xlines=n.select(".xlines-"+l),r.ylines=n.select(".ylines-"+s),r.xaxislayer=n.select(".xaxislayer-"+l),r.yaxislayer=n.select(".yaxislayer-"+s))}else{var m=v.plotgroup,p=a+"-x",y=a+"-y";r.minorGridlayer=v.minorGridlayer,r.gridlayer=v.gridlayer,r.zerolinelayer=v.zerolinelayer,r.zerolinelayerAbove=v.zerolinelayerAbove,jt(v.overlinesBelow,"path",p),jt(v.overlinesBelow,"path",y),jt(v.overaxesBelow,"g",p),jt(v.overaxesBelow,"g",y),r.plot=jt(v.overplot,"g",a),jt(v.overlinesAbove,"path",p),jt(v.overlinesAbove,"path",y),jt(v.overaxesAbove,"g",p),jt(v.overaxesAbove,"g",y),r.xlines=m.select(".overlines-"+l).select("."+p),r.ylines=m.select(".overlines-"+s).select("."+y),r.xaxislayer=m.select(".overaxes-"+l).select("."+p),r.yaxislayer=m.select(".overaxes-"+s).select("."+y)}o||(u||(mm(r.minorGridlayer,"g",r.xaxis._id),mm(r.minorGridlayer,"g",r.yaxis._id),r.minorGridlayer.selectAll("g").map(function(b){return b[0]}).sort(of.idSort),mm(r.gridlayer,"g",r.xaxis._id),mm(r.gridlayer,"g",r.yaxis._id),r.gridlayer.selectAll("g").map(function(b){return b[0]}).sort(of.idSort)),r.xlines.style("fill","none").classed("crisp",!0),r.ylines.style("fill","none").classed("crisp",!0))}function dE(e,r){if(e){var t={};e.each(function(s){var u=s[0],f=ym.select(this);f.remove(),pE(u,r),t[u]=!0});for(var n in r._plots)for(var a=r._plots[n],i=a.overlays||[],o=0;o{"use strict";var bm=Qa();gE.exports={hasLines:bm.hasLines,hasMarkers:bm.hasMarkers,hasText:bm.hasText,isBubble:bm.isBubble,attributes:Sc(),layoutAttributes:Wd(),supplyDefaults:qq(),crossTraceDefaults:Rq(),supplyLayoutDefaults:Nq(),calc:am().calc,crossTraceCalc:sD(),arraysToCalcdata:mh(),plot:wD(),colorbar:Nb(),formatLabels:TD(),style:wh().style,styleOnSelect:wh().styleOnSelect,hoverPoints:qD(),selectPoints:PD(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:Xb(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var _E=te((b0e,bE)=>{"use strict";var eee=kt(),ree=Et(),yE=V5(),jb=pr(),tee=jb.strScale,nee=jb.strRotate,aee=jb.strTranslate;bE.exports=function(r,t,n){var a=r.node(),i=yE[n.arrowhead||0],o=yE[n.startarrowhead||0],l=(n.arrowwidth||1)*(n.arrowsize||1),s=(n.arrowwidth||1)*(n.startarrowsize||1),u=t.indexOf("start")>=0,f=t.indexOf("end")>=0,v=i.backoff*l+n.standoff,h=o.backoff*s+n.startstandoff,d,m,p,y;if(a.nodeName==="line"){d={x:+r.attr("x1"),y:+r.attr("y1")},m={x:+r.attr("x2"),y:+r.attr("y2")};var b=d.x-m.x,C=d.y-m.y;if(p=Math.atan2(C,b),y=p+Math.PI,v&&h&&v+h>Math.sqrt(b*b+C*C)){X();return}if(v){if(v*v>b*b+C*C){X();return}var x=v*Math.cos(p),_=v*Math.sin(p);m.x+=x,m.y+=_,r.attr({x2:m.x,y2:m.y})}if(h){if(h*h>b*b+C*C){X();return}var A=h*Math.cos(p),k=h*Math.sin(p);d.x-=A,d.y-=k,r.attr({x1:d.x,y1:d.y})}}else if(a.nodeName==="path"){var M=a.getTotalLength(),D="";if(M{"use strict";var xE=kt(),Jb=dt(),iee=ca(),sf=pr(),$b=sf.strTranslate,kh=Dn(),Rc=Et(),iu=fn(),wE=ss(),Kb=vi(),Qb=$u(),Th=To(),oee=_n().arrayEditor,lee=_E();TE.exports={draw:see,drawOne:ME,drawRaw:AE};function see(e){var r=e._fullLayout;r._infolayer.selectAll(".annotation").remove();for(var t=0;t2/3?rr="right":rr="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[rr]}for(var pe=!1,U=["x","y"],K=0;K1)&&(Be===ke?(tr=Ne.r2fraction(r["a"+$]),(tr<0||tr>1)&&(pe=!0)):pe=!0),dr=Ne._offset+Ne.r2p(r[$]),Oe=.5}else{var Ue=Ur==="domain";$==="x"?(Te=r[$],dr=Ue?Ne._offset+Ne._length*Te:dr=l.l+l.w*Te):(Te=1-r[$],dr=Ue?Ne._offset+Ne._length*Te:dr=l.t+l.h*Te),Oe=r.showarrow?.5:Te}if(r.showarrow){Je.head=dr;var Ze=r["a"+$];if(kr=or*Me(.5,r.xanchor)-Ye*Me(.5,r.yanchor),Be===ke){var mr=kh.getRefType(Be);mr==="domain"?($==="y"&&(Ze=1-Ze),Je.tail=Ne._offset+Ne._length*Ze):mr==="paper"?$==="y"?(Ze=1-Ze,Je.tail=l.t+l.h*Ze):Je.tail=l.l+l.w*Ze:Je.tail=Ne._offset+Ne.r2p(Ze),gr=kr}else Je.tail=dr+Ze,gr=kr+Ze;Je.text=Je.tail+kr;var Tr=o[$==="x"?"width":"height"];if(ke==="paper"&&(Je.head=sf.constrain(Je.head,1,Tr-1)),Be==="pixel"){var yr=-Math.max(Je.tail-3,Je.text),wr=Math.min(Je.tail+3,Je.text)-Tr;yr>0?(Je.tail+=yr,Je.text+=yr):wr>0&&(Je.tail-=wr,Je.text-=wr)}Je.tail+=vr,Je.head+=vr}else kr=nr*Me(Oe,lr),gr=kr,Je.text=dr+kr;Je.text+=vr,kr+=vr,gr+=vr,r["_"+$+"padplus"]=nr/2+gr,r["_"+$+"padminus"]=nr/2-gr,r["_"+$+"size"]=nr,r["_"+$+"shift"]=kr}if(pe){M.remove();return}var Hr=0,Sr=0;if(r.align!=="left"&&(Hr=(Ce-ze)*(r.align==="center"?.5:1)),r.valign!=="top"&&(Sr=(Qe-Xe)*(r.valign==="middle"?.5:1)),Le)he.select("svg").attr({x:F+Hr-1,y:F+Sr}).call(iu.setClipUrl,W?p:null,e);else{var Dr=F+Sr-Ie.top,ur=F+Hr-Ie.left;re.call(Kb.positionText,ur,Dr).call(iu.setClipUrl,W?p:null,e)}B.select("rect").call(iu.setRect,F,F,Ce,Qe),I.call(iu.setRect,D/2,D/2,ue-D,ye-D),M.call(iu.setTranslate,Math.round(y.x.text-ue/2),Math.round(y.y.text-ye/2)),x.attr({transform:"rotate("+b+","+y.x.text+","+y.y.text+")"});var _e=function(Ke,rr){C.selectAll(".annotation-arrow-g").remove();var Lr=y.x.head,Yr=y.y.head,Fr=y.x.tail+Ke,lt=y.y.tail+rr,xt=y.x.text+Ke,Rt=y.y.text+rr,Kt=sf.rotationXYMatrix(b,xt,Rt),cn=sf.apply2DTransform(Kt),pn=sf.apply2DTransform2(Kt),Mn=+I.attr("width"),Xt=+I.attr("height"),Qt=xt-.5*Mn,en=Qt+Mn,an=Rt-.5*Xt,jr=an+Xt,Ut=[[Qt,an,Qt,jr],[Qt,jr,en,jr],[en,jr,en,an],[en,an,Qt,an]].map(pn);if(!Ut.reduce(function(dn,On){return dn^!!sf.segmentsIntersect(Lr,Yr,Lr+1e6,Yr+1e6,On[0],On[1],On[2],On[3])},!1)){Ut.forEach(function(dn){var On=sf.segmentsIntersect(Fr,lt,Lr,Yr,dn[0],dn[1],dn[2],dn[3]);On&&(Fr=On.x,lt=On.y)});var Nt=r.arrowwidth,rn=r.arrowcolor,Tn=r.arrowside,vn=C.append("g").style({opacity:Rc.opacity(rn)}).classed("annotation-arrow-g",!0),Yt=vn.append("path").attr("d","M"+Fr+","+lt+"L"+Lr+","+Yr).style("stroke-width",Nt+"px").call(Rc.stroke,Rc.rgb(rn));if(lee(Yt,Tn,r),s.annotationPosition&&Yt.node().parentNode&&!n){var Bn=Lr,Ga=Yr;if(r.standoff){var kn=Math.sqrt(Math.pow(Lr-Fr,2)+Math.pow(Yr-lt,2));Bn+=r.standoff*(Fr-Lr)/kn,Ga+=r.standoff*(lt-Yr)/kn}var Va=vn.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(Fr-Bn)+","+(lt-Ga),transform:$b(Bn,Ga)}).style("stroke-width",Nt+6+"px").call(Rc.stroke,"rgba(0,0,0,0)").call(Rc.fill,"rgba(0,0,0,0)"),ia,hn;Th.init({element:Va.node(),gd:e,prepFn:function(){var dn=iu.getTranslate(M);ia=dn.x,hn=dn.y,a&&a.autorange&&h(a._name+".autorange",!0),i&&i.autorange&&h(i._name+".autorange",!0)},moveFn:function(dn,On){var gi=cn(ia,hn),io=gi[0]+dn,mi=gi[1]+On;M.call(iu.setTranslate,io,mi),d("x",lf(a,dn,"x",l,r)),d("y",lf(i,On,"y",l,r)),r.axref===r.xref&&d("ax",lf(a,dn,"ax",l,r)),r.ayref===r.yref&&d("ay",lf(i,On,"ay",l,r)),vn.attr("transform",$b(dn,On)),x.attr({transform:"rotate("+b+","+io+","+mi+")"})},doneFn:function(){Jb.call("_guiRelayout",e,m());var dn=document.querySelector(".js-notes-box-panel");dn&&dn.redraw(dn.selectedObj)}})}}};if(r.showarrow&&_e(0,0),_){var Ae;Th.init({element:M.node(),gd:e,prepFn:function(){Ae=x.attr("transform")},moveFn:function(Ke,rr){var Lr="pointer";if(r.showarrow)r.axref===r.xref?d("ax",lf(a,Ke,"ax",l,r)):d("ax",r.ax+Ke),r.ayref===r.yref?d("ay",lf(i,rr,"ay",l.w,r)):d("ay",r.ay+rr),_e(Ke,rr);else{if(n)return;var Yr,Fr;if(a)Yr=lf(a,Ke,"x",l,r);else{var lt=r._xsize/l.w,xt=r.x+(r._xshift-r.xshift)/l.w-lt/2;Yr=Th.align(xt+Ke/l.w,lt,0,1,r.xanchor)}if(i)Fr=lf(i,rr,"y",l,r);else{var Rt=r._ysize/l.h,Kt=r.y-(r._yshift+r.yshift)/l.h-Rt/2;Fr=Th.align(Kt-rr/l.h,Rt,0,1,r.yanchor)}d("x",Yr),d("y",Fr),(!a||!i)&&(Lr=Th.getCursor(a?.5:Yr,i?.5:Fr,r.xanchor,r.yanchor))}x.attr({transform:$b(Ke,rr)+Ae}),Qb(M,Lr)},clickFn:function(Ke,rr){r.captureevents&&e.emit("plotly_clickannotation",k(rr))},doneFn:function(){Qb(M),Jb.call("_guiRelayout",e,m());var Ke=document.querySelector(".js-notes-box-panel");Ke&&Ke.redraw(Ke.selectedObj)}})}}s.annotationText?re.call(Kb.makeEditable,{delegate:M,gd:e}).call(ae).on("edit",function(ee){r.text=ee,this.call(ae),d("text",ee),a&&a.autorange&&h(a._name+".autorange",!0),i&&i.autorange&&h(i._name+".autorange",!0),Jb.call("_guiRelayout",e,m())}):re.call(ae)}});var DE=te((x0e,qE)=>{"use strict";var kE=pr(),uee=dt(),SE=_n().arrayEditor;qE.exports={hasClickToShow:fee,onClick:cee};function fee(e,r){var t=LE(e,r);return t.on.length>0||t.explicitOff.length>0}function cee(e,r){var t=LE(e,r),n=t.on,a=t.off.concat(t.explicitOff),i={},o=e._fullLayout.annotations,l,s;if(n.length||a.length){for(l=0;l{"use strict";var e4=pr(),wv=Et();EE.exports=function(r,t,n,a){a("opacity");var i=a("bgcolor"),o=a("bordercolor"),l=wv.opacity(o);a("borderpad");var s=a("borderwidth"),u=a("showarrow");a("text",u?" ":n._dfltTitle.annotation),a("textangle"),e4.coerceFont(a,"font",n.font),a("width"),a("align");var f=a("height");if(f&&a("valign"),u){var v=a("arrowside"),h,d;v.indexOf("end")!==-1&&(h=a("arrowhead"),d=a("arrowsize")),v.indexOf("start")!==-1&&(a("startarrowhead",h),a("startarrowsize",d)),a("arrowcolor",l?t.bordercolor:wv.defaultLine),a("arrowwidth",(l&&s||1)*2),a("standoff"),a("startstandoff")}var m=a("hovertext"),p=n.hoverlabel||{};if(m){var y=a("hoverlabel.bgcolor",p.bgcolor||(wv.opacity(i)?wv.rgb(i):wv.defaultLine)),b=a("hoverlabel.bordercolor",p.bordercolor||wv.contrast(y)),C=e4.extendFlat({},p.font);C.color||(C.color=b),e4.coerceFont(a,"hoverlabel.font",C)}a("captureevents",!!m)}});var RE=te((M0e,PE)=>{"use strict";var t4=pr(),zc=Dn(),vee=ml(),hee=r4(),dee=hv();PE.exports=function(r,t){vee(r,t,{name:"annotations",handleItemDefaults:pee})};function pee(e,r,t){function n(x,_){return t4.coerce(e,r,dee,x,_)}var a=n("visible"),i=n("clicktoshow");if(a||i){hee(e,r,t,n);for(var o=r.showarrow,l=["x","y"],s=[-10,-30],u={_fullLayout:t},f=0;f<2;f++){var v=l[f],h=zc.coerceRef(e,r,u,v,"","paper");if(h!=="paper"){var d=zc.getFromId(u,h);d._annIndices.push(r._index)}if(zc.coercePosition(r,u,n,h,v,.5),o){var m="a"+v,p=zc.coerceRef(e,r,u,m,"pixel",["pixel","paper"]);p!=="pixel"&&p!==h&&(p=r[m]="pixel");var y=p==="pixel"?s[f]:.4;zc.coercePosition(r,u,n,p,m,y)}n(v+"anchor"),n(v+"shift")}if(t4.noneOrAll(e,r,["x","y"]),o&&t4.noneOrAll(e,r,["ax","ay"]),i){var b=n("xclick"),C=n("yclick");r._xclick=b===void 0?r.x:zc.cleanPosition(b,u,r.xref),r._yclick=C===void 0?r.y:zc.cleanPosition(C,u,r.yref)}}}});var FE=te((A0e,NE)=>{"use strict";var n4=pr(),Nc=Dn(),gee=_m().draw;NE.exports=function(r){var t=r._fullLayout,n=n4.filterVisible(t.annotations);if(n.length&&r._fullData.length)return n4.syncOrAsync([gee,mee],r)};function mee(e){var r=e._fullLayout;n4.filterVisible(r.annotations).forEach(function(t){var n=Nc.getFromId(e,t.xref),a=Nc.getFromId(e,t.yref),i=Nc.getRefType(t.xref),o=Nc.getRefType(t.yref);t._extremes={},i==="range"&&zE(t,n),o==="range"&&zE(t,a)})}function zE(e,r){var t=r._id,n=t.charAt(0),a=e[n],i=e["a"+n],o=e[n+"ref"],l=e["a"+n+"ref"],s=e["_"+n+"padplus"],u=e["_"+n+"padminus"],f={x:1,y:-1}[n]*e[n+"shift"],v=3*e.arrowsize*e.arrowwidth||0,h=v+f,d=v-f,m=3*e.startarrowsize*e.arrowwidth||0,p=m+f,y=m-f,b;if(l===o){var C=Nc.findExtremes(r,[r.r2c(a)],{ppadplus:h,ppadminus:d}),x=Nc.findExtremes(r,[r.r2c(i)],{ppadplus:Math.max(s,p),ppadminus:Math.max(u,y)});b={min:[C.min[0],x.min[0]],max:[C.max[0],x.max[0]]}}else p=i?p+i:p,y=i?y-i:y,b=Nc.findExtremes(r,[r.r2c(a)],{ppadplus:Math.max(s,h,p),ppadminus:Math.max(u,d,y)});e._extremes[t]=b}});var HE=te((T0e,IE)=>{"use strict";var yee=Ht(),bee=vd();IE.exports=function(r,t,n,a){t=t||{};var i=n==="log"&&t.type==="linear",o=n==="linear"&&t.type==="log";if(!(i||o))return;var l=r._fullLayout.annotations,s=t._id.charAt(0),u,f;function v(d){var m=u[d],p=null;i?p=bee(m,t.range):p=Math.pow(10,m),yee(p)||(p=null),a(f+d,p)}for(var h=0;h{"use strict";var a4=_m(),BE=DE();OE.exports={moduleType:"component",name:"annotations",layoutAttributes:hv(),supplyLayoutDefaults:RE(),includeBasePlot:ih()("annotations"),calcAutorange:FE(),draw:a4.draw,drawOne:a4.drawOne,drawRaw:a4.drawRaw,hasClickToShow:BE.hasClickToShow,onClick:BE.onClick,convertCoords:HE()}});var xm=te((S0e,YE)=>{"use strict";var wn=hv(),_ee=_o().overrideAll,xee=_n().templatedArray;YE.exports=_ee(xee("annotation",{visible:wn.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:wn.xanchor,xshift:wn.xshift,yanchor:wn.yanchor,yshift:wn.yshift,text:wn.text,textangle:wn.textangle,font:wn.font,width:wn.width,height:wn.height,opacity:wn.opacity,align:wn.align,valign:wn.valign,bgcolor:wn.bgcolor,bordercolor:wn.bordercolor,borderpad:wn.borderpad,borderwidth:wn.borderwidth,showarrow:wn.showarrow,arrowcolor:wn.arrowcolor,arrowhead:wn.arrowhead,startarrowhead:wn.startarrowhead,arrowside:wn.arrowside,arrowsize:wn.arrowsize,startarrowsize:wn.startarrowsize,arrowwidth:wn.arrowwidth,standoff:wn.standoff,startstandoff:wn.startstandoff,hovertext:wn.hovertext,hoverlabel:wn.hoverlabel,captureevents:wn.captureevents}),"calc","from-root")});var VE=te((C0e,GE)=>{"use strict";var i4=pr(),wee=Dn(),Mee=ml(),Aee=r4(),Tee=xm();GE.exports=function(r,t,n){Mee(r,t,{name:"annotations",handleItemDefaults:kee,fullLayout:n.fullLayout})};function kee(e,r,t,n){function a(l,s){return i4.coerce(e,r,Tee,l,s)}function i(l){var s=l+"axis",u={_fullLayout:{}};return u._fullLayout[s]=t[s],wee.coercePosition(r,u,a,l,l,.5)}var o=a("visible");o&&(Aee(e,r,n.fullLayout,a),i("x"),i("y"),i("z"),i4.noneOrAll(e,r,["x","y","z"]),r.xref="x",r.yref="y",r.zref="z",a("xanchor"),a("yanchor"),a("xshift"),a("yshift"),r.showarrow&&(r.axref="pixel",r.ayref="pixel",a("ax",-10),a("ay",-30),i4.noneOrAll(e,r,["ax","ay"])))}});var jE=te((L0e,XE)=>{"use strict";var WE=pr(),ZE=Dn();XE.exports=function(r){for(var t=r.fullSceneLayout,n=t.annotations,a=0;a{"use strict";function o4(e,r){var t=[0,0,0,0],n,a;for(n=0;n<4;++n)for(a=0;a<4;++a)t[a]+=e[4*n+a]*r[n];return t}function Cee(e,r){var t=o4(e.projection,o4(e.view,o4(e.model,[r[0],r[1],r[2],1])));return t}JE.exports=Cee});var QE=te((D0e,KE)=>{"use strict";var Lee=_m().drawRaw,qee=$E(),Dee=["x","y","z"];KE.exports=function(r){for(var t=r.fullSceneLayout,n=r.dataScale,a=t.annotations,i=0;i1){l=!0;break}}l?r.fullLayout._infolayer.select(".annotation-"+r.id+'[data-index="'+i+'"]').remove():(o._pdata=qee(r.glplot.cameraParams,[t.xaxis.r2l(o.x)*n[0],t.yaxis.r2l(o.y)*n[1],t.zaxis.r2l(o.z)*n[2]]),Lee(r.graphDiv,o,i,r.id,o._xa,o._ya))}}});var tP=te((E0e,rP)=>{"use strict";var Eee=dt(),eP=pr();rP.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:xm()}}},layoutAttributes:xm(),handleDefaults:VE(),includeBasePlot:Pee,convert:jE(),draw:QE()};function Pee(e,r){var t=Eee.subplotsRegistry.gl3d;if(t)for(var n=t.attrRegex,a=Object.keys(e),i=0;i{"use strict";var nP=hv(),aP=$a(),iP=Sc().line,Ree=Kl().dash,Tl=sa().extendFlat,zee=_n().templatedArray,P0e=ah(),Mv=bo(),{shapeTexttemplateAttrs:Nee,templatefallbackAttrs:Fee}=Qf(),Iee=Md();oP.exports=zee("shape",{visible:Tl({},Mv.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:Tl({},Mv.legend,{editType:"calc+arraydraw"}),legendgroup:Tl({},Mv.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:Tl({},Mv.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:aP({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:Tl({},Mv.legendrank,{editType:"calc+arraydraw"}),legendwidth:Tl({},Mv.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:Tl({},nP.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:Tl({},nP.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:Tl({},iP.color,{editType:"arraydraw"}),width:Tl({},iP.width,{editType:"calc+arraydraw"}),dash:Tl({},Ree,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:Nee({},{keys:Object.keys(Iee)}),texttemplatefallback:Fee({editType:"arraydraw"}),font:aP({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var uP=te((z0e,sP)=>{"use strict";var Sh=pr(),Av=Dn(),Hee=ml(),Bee=l4(),lP=ef();sP.exports=function(r,t){Hee(r,t,{name:"shapes",handleItemDefaults:Uee})};function Oee(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}function Uee(e,r,t){function n(ee,fe){return Sh.coerce(e,r,Bee,ee,fe)}r._isShape=!0;var a=n("visible");if(a){var i=n("showlegend");i&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),Sh.coerceFont(n,"legendgrouptitle.font"),n("legendrank"));var o=n("path"),l=o?"path":"rect",s=n("type",l),u=s!=="path";u&&delete r.path,n("editable"),n("layer"),n("opacity"),n("fillcolor"),n("fillrule");var f=n("line.width");f&&(n("line.color"),n("line.dash"));for(var v=n("xsizemode"),h=n("ysizemode"),d=["x","y"],m=0;m<2;m++){var p=d[m],y=p+"anchor",b=p==="x"?v:h,C={_fullLayout:t},x,_,A,k=Av.coerceRef(e,r,C,p,void 0,"paper"),M=Av.getRefType(k);if(M==="range"?(x=Av.getFromId(C,k),x._shapeIndices.push(r._index),A=lP.rangeToShapePosition(x),_=lP.shapePositionToRange(x),(x.type==="category"||x.type==="multicategory")&&(n(p+"0shift"),n(p+"1shift"))):_=A=Sh.identity,u){var D=.25,z=.75,F=p+"0",I=p+"1",W=e[F],B=e[I];e[F]=_(e[F],!0),e[I]=_(e[I],!0),b==="pixel"?(n(F,0),n(I,10)):(Av.coercePosition(r,C,n,k,F,D),Av.coercePosition(r,C,n,k,I,z)),r[F]=A(r[F]),r[I]=A(r[I]),e[F]=W,e[I]=B}if(b==="pixel"){var X=e[y];e[y]=_(e[y],!0),Av.coercePosition(r,C,n,k,y,.25),r[y]=A(r[y]),e[y]=X}}u&&Sh.noneOrAll(e,r,["x0","x1","y0","y1"]);var V=s==="line",re,ae;if(u&&(re=n("label.texttemplate"),n("label.texttemplatefallback")),re||(ae=n("label.text")),ae||re){n("label.textangle");var Q=n("label.textposition",V?"middle":"middle center");n("label.xanchor"),n("label.yanchor",Oee(V,Q)),n("label.padding"),Sh.coerceFont(n,"label.font",t.font)}}}});var vP=te((N0e,cP)=>{"use strict";var Yee=Et(),fP=pr();function Gee(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}cP.exports=function(r,t,n){n("newshape.visible"),n("newshape.name"),n("newshape.showlegend"),n("newshape.legend"),n("newshape.legendwidth"),n("newshape.legendgroup"),n("newshape.legendgrouptitle.text"),fP.coerceFont(n,"newshape.legendgrouptitle.font"),n("newshape.legendrank"),n("newshape.drawdirection"),n("newshape.layer"),n("newshape.fillcolor"),n("newshape.fillrule"),n("newshape.opacity");var a=n("newshape.line.width");if(a){var i=(r||{}).plot_bgcolor||"#FFF";n("newshape.line.color",Yee.contrast(i)),n("newshape.line.dash")}var o=r.dragmode==="drawline",l=n("newshape.label.text"),s=n("newshape.label.texttemplate");if(n("newshape.label.texttemplatefallback"),l||s){n("newshape.label.textangle");var u=n("newshape.label.textposition",o?"middle":"middle center");n("newshape.label.xanchor"),n("newshape.label.yanchor",Gee(o,u)),n("newshape.label.padding"),fP.coerceFont(n,"newshape.label.font",t.font)}n("activeshape.fillcolor"),n("activeshape.opacity")}});var mP=te((F0e,gP)=>{"use strict";var s4=pr(),Tv=Dn(),kv=I1(),dP=ef();gP.exports=function(r){var t=r._fullLayout,n=s4.filterVisible(t.shapes);if(!(!n.length||!r._fullData.length))for(var a=0;a0?u+o:o;return{ppad:o,ppadplus:l?v:h,ppadminus:l?h:v}}else return{ppad:o}}function hP(e,r,t){var n=e._id.charAt(0)==="x"?"x":"y",a=e.type==="category"||e.type==="multicategory",i,o,l=0,s=0,u=a?e.r2c:e.d2c,f=r[n+"sizemode"]==="scaled";if(f?(i=r[n+"0"],o=r[n+"1"],a&&(l=r[n+"0shift"],s=r[n+"1shift"])):(i=r[n+"anchor"],o=r[n+"anchor"]),i!==void 0)return[u(i)+l,u(o)+s];if(r.path){var v=1/0,h=-1/0,d=r.path.match(kv.segmentRE),m,p,y,b,C;for(e.type==="date"&&(u=dP.decodeDate(u)),m=0;mh&&(h=C)));if(h>=v)return[v,h]}}});var _P=te((I0e,bP)=>{"use strict";var yP=fg();bP.exports={moduleType:"component",name:"shapes",layoutAttributes:l4(),supplyLayoutDefaults:uP(),supplyDrawNewShapeDefaults:vP(),includeBasePlot:ih()("shapes"),calcAutorange:mP(),draw:yP.draw,drawOne:yP.drawOne}});var u4=te((B0e,wP)=>{"use strict";var xP=Ea(),Zee=_n().templatedArray,H0e=ah();wP.exports=Zee("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",xP.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",xP.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var AP=te((O0e,MP)=>{"use strict";var Xee=pr(),f4=Dn(),jee=ml(),Jee=u4(),$ee="images";MP.exports=function(r,t){var n={name:$ee,handleItemDefaults:Kee};jee(r,t,n)};function Kee(e,r,t){function n(h,d){return Xee.coerce(e,r,Jee,h,d)}var a=n("source"),i=n("visible",!!a);if(!i)return r;n("layer"),n("xanchor"),n("yanchor"),n("sizex"),n("sizey"),n("sizing"),n("opacity");for(var o={_fullLayout:t},l=["x","y"],s=0;s<2;s++){var u=l[s],f=f4.coerceRef(e,r,o,u,"paper",void 0);if(f!=="paper"){var v=f4.getFromId(o,f);v._imgIndices.push(r._index)}f4.coercePosition(r,o,n,f,u,0)}return r}});var CP=te((U0e,SP)=>{"use strict";var TP=kt(),Qee=fn(),Sv=Dn(),kP=fa(),ere=sc();SP.exports=function(r){var t=r._fullLayout,n=[],a={},i=[],o,l;for(l=0;l{"use strict";var LP=Ht(),rre=vd();qP.exports=function(r,t,n,a){t=t||{};var i=n==="log"&&t.type==="linear",o=n==="linear"&&t.type==="log";if(i||o){for(var l=r._fullLayout.images,s=t._id.charAt(0),u,f,v=0;v{"use strict";EP.exports={moduleType:"component",name:"images",layoutAttributes:u4(),supplyLayoutDefaults:AP(),includeBasePlot:ih()("images"),draw:CP(),convertCoords:DP()}});var wm=te((V0e,RP)=>{"use strict";RP.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var c4=te((W0e,NP)=>{"use strict";var tre=$a(),nre=vl(),are=sa().extendFlat,ire=_o().overrideAll,ore=Ad(),zP=_n().templatedArray,lre=zP("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});NP.exports=ire(zP("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:lre,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:are(ore({editType:"arraydraw"}),{}),font:tre({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:nre.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var BP=te((Z0e,HP)=>{"use strict";var Mm=pr(),FP=ml(),IP=c4(),sre=wm(),ure=sre.name,fre=IP.buttons;HP.exports=function(r,t){var n={name:ure,handleItemDefaults:cre};FP(r,t,n)};function cre(e,r,t){function n(o,l){return Mm.coerce(e,r,IP,o,l)}var a=FP(e,r,{name:"buttons",handleItemDefaults:vre}),i=n("visible",a.length>0);i&&(n("active"),n("direction"),n("type"),n("showactive"),n("x"),n("y"),Mm.noneOrAll(e,r,["x","y"]),n("xanchor"),n("yanchor"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),Mm.coerceFont(n,"font",t.font),n("bgcolor",t.paper_bgcolor),n("bordercolor"),n("borderwidth"))}function vre(e,r){function t(a,i){return Mm.coerce(e,r,fre,a,i)}var n=t("visible",e.method==="skip"||Array.isArray(e.args));n&&(t("method"),t("args"),t("args2"),t("label"),t("execute"))}});var YP=te((X0e,UP)=>{"use strict";UP.exports=zn;var kl=kt(),OP=Et(),Cv=fn(),Am=pr();function zn(e,r,t){this.gd=e,this.container=r,this.id=t,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}zn.barWidth=2;zn.barLength=20;zn.barRadius=2;zn.barPad=1;zn.barColor="#808BA4";zn.prototype.enable=function(r,t,n){var a=this.gd._fullLayout,i=a.width,o=a.height;this.position=r;var l=this.position.l,s=this.position.w,u=this.position.t,f=this.position.h,v=this.position.direction,h=v==="down",d=v==="left",m=v==="right",p=v==="up",y=s,b=f,C,x,_,A;!h&&!d&&!m&&!p&&(this.position.direction="down",h=!0);var k=h||p;k?(C=l,x=C+y,h?(_=u,A=Math.min(_+b,o),b=A-_):(A=u+b,_=Math.max(A-b,0),b=A-_)):(_=u,A=_+b,d?(x=l+y,C=Math.max(x-y,0),y=x-C):(C=l,x=Math.min(C+y,i),y=x-C)),this._box={l:C,t:_,w:y,h:b};var M=s>y,D=zn.barLength+2*zn.barPad,z=zn.barWidth+2*zn.barPad,F=l,I=u+f;I+z>o&&(I=o-z);var W=this.container.selectAll("rect.scrollbar-horizontal").data(M?[0]:[]);W.exit().on(".drag",null).remove(),W.enter().append("rect").classed("scrollbar-horizontal",!0).call(OP.fill,zn.barColor),M?(this.hbar=W.attr({rx:zn.barRadius,ry:zn.barRadius,x:F,y:I,width:D,height:z}),this._hbarXMin=F+D/2,this._hbarTranslateMax=y-D):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var B=f>b,X=zn.barWidth+2*zn.barPad,V=zn.barLength+2*zn.barPad,re=l+s,ae=u;re+X>i&&(re=i-X);var Q=this.container.selectAll("rect.scrollbar-vertical").data(B?[0]:[]);Q.exit().on(".drag",null).remove(),Q.enter().append("rect").classed("scrollbar-vertical",!0).call(OP.fill,zn.barColor),B?(this.vbar=Q.attr({rx:zn.barRadius,ry:zn.barRadius,x:re,y:ae,width:X,height:V}),this._vbarYMin=ae+V/2,this._vbarTranslateMax=b-V):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var ee=this.id,fe=C-.5,he=B?x+X+.5:x+.5,Le=_-.5,Ie=M?A+z+.5:A+.5,ze=a._topdefs.selectAll("#"+ee).data(M||B?[0]:[]);if(ze.exit().remove(),ze.enter().append("clipPath").attr("id",ee).append("rect"),M||B?(this._clipRect=ze.select("rect").attr({x:Math.floor(fe),y:Math.floor(Le),width:Math.ceil(he)-Math.floor(fe),height:Math.ceil(Ie)-Math.floor(Le)}),this.container.call(Cv.setClipUrl,ee,this.gd),this.bg.attr({x:l,y:u,width:s,height:f})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Cv.setClipUrl,null),delete this._clipRect),M||B){var Xe=kl.behavior.drag().on("dragstart",function(){kl.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(Xe);var Ce=kl.behavior.drag().on("dragstart",function(){kl.event.sourceEvent.preventDefault(),kl.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));M&&this.hbar.on(".drag",null).call(Ce),B&&this.vbar.on(".drag",null).call(Ce)}this.setTranslate(t,n)};zn.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Cv.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};zn.prototype._onBoxDrag=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r-=kl.event.dx),this.vbar&&(t-=kl.event.dy),this.setTranslate(r,t)};zn.prototype._onBoxWheel=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r+=kl.event.deltaY),this.vbar&&(t+=kl.event.deltaY),this.setTranslate(r,t)};zn.prototype._onBarDrag=function(){var r=this.translateX,t=this.translateY;if(this.hbar){var n=r+this._hbarXMin,a=n+this._hbarTranslateMax,i=Am.constrain(kl.event.x,n,a),o=(i-n)/(a-n),l=this.position.w-this._box.w;r=o*l}if(this.vbar){var s=t+this._vbarYMin,u=s+this._vbarTranslateMax,f=Am.constrain(kl.event.y,s,u),v=(f-s)/(u-s),h=this.position.h-this._box.h;t=v*h}this.setTranslate(r,t)};zn.prototype.setTranslate=function(r,t){var n=this.position.w-this._box.w,a=this.position.h-this._box.h;if(r=Am.constrain(r||0,0,n),t=Am.constrain(t||0,0,a),this.translateX=r,this.translateY=t,this.container.call(Cv.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-t),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+t-.5)}),this.hbar){var i=r/n;this.hbar.call(Cv.setTranslate,r+i*this._hbarTranslateMax,t)}if(this.vbar){var o=t/a;this.vbar.call(Cv.setTranslate,r,t+o*this._vbarTranslateMax)}}});var QP=te((j0e,KP)=>{"use strict";var Lv=kt(),Ch=ca(),Lh=Et(),qv=fn(),no=pr(),Tm=vi(),hre=_n().arrayEditor,VP=Ka().LINE_SPACING,ct=wm(),dre=YP();KP.exports=function(r){var t=r._fullLayout,n=no.filterVisible(t[ct.name]);function a(h){Ch.autoMargin(r,JP(h))}var i=t._menulayer.selectAll("g."+ct.containerClassName).data(n.length>0?[0]:[]);if(i.enter().append("g").classed(ct.containerClassName,!0).style("cursor","pointer"),i.exit().each(function(){Lv.select(this).selectAll("g."+ct.headerGroupClassName).each(a)}).remove(),n.length!==0){var o=i.selectAll("g."+ct.headerGroupClassName).data(n,pre);o.enter().append("g").classed(ct.headerGroupClassName,!0);for(var l=no.ensureSingle(i,"g",ct.dropdownButtonGroupClassName,function(h){h.style("pointer-events","all")}),s=0;s{"use strict";var wre=wm();eR.exports={moduleType:"component",name:wre.name,layoutAttributes:c4(),supplyLayoutDefaults:BP(),draw:QP()}});var Dh=te(($0e,tR)=>{"use strict";tR.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var p4=te((K0e,iR)=>{"use strict";var nR=$a(),Mre=Ad(),Are=sa().extendDeepAll,Tre=_o().overrideAll,kre=f1(),aR=_n().templatedArray,Fc=Dh(),Sre=aR("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});iR.exports=Tre(aR("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:Sre,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:Are(Mre({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:kre.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:nR({})},font:nR({}),activebgcolor:{valType:"color",dflt:Fc.gripBgActiveColor},bgcolor:{valType:"color",dflt:Fc.railBgColor},bordercolor:{valType:"color",dflt:Fc.railBorderColor},borderwidth:{valType:"number",min:0,dflt:Fc.railBorderWidth},ticklen:{valType:"number",min:0,dflt:Fc.tickLength},tickcolor:{valType:"color",dflt:Fc.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:Fc.minorTickLength}}),"arraydraw","from-root")});var uR=te((Q0e,sR)=>{"use strict";var Dv=pr(),oR=ml(),lR=p4(),Cre=Dh(),Lre=Cre.name,qre=lR.steps;sR.exports=function(r,t){oR(r,t,{name:Lre,handleItemDefaults:Dre})};function Dre(e,r,t){function n(v,h){return Dv.coerce(e,r,lR,v,h)}for(var a=oR(e,r,{name:"steps",handleItemDefaults:Ere}),i=0,o=0;o{"use strict";var Sl=kt(),km=ca(),uf=Et(),Cl=fn(),ao=pr(),Pre=ao.strTranslate,Eh=vi(),Rre=_n().arrayEditor,Mt=Dh(),y4=Ka(),vR=y4.LINE_SPACING,g4=y4.FROM_TL,m4=y4.FROM_BR;yR.exports=function(r){var t=r._context.staticPlot,n=r._fullLayout,a=zre(n,r),i=n._infolayer.selectAll("g."+Mt.containerClassName).data(a.length>0?[0]:[]);i.enter().append("g").classed(Mt.containerClassName,!0).style("cursor",t?null:"ew-resize");function o(f){f._commandObserver&&(f._commandObserver.remove(),delete f._commandObserver),km.autoMargin(r,hR(f))}if(i.exit().each(function(){Sl.select(this).selectAll("g."+Mt.groupClassName).each(o)}).remove(),a.length!==0){var l=i.selectAll("g."+Mt.groupClassName).data(a,Nre);l.enter().append("g").classed(Mt.groupClassName,!0),l.exit().each(o).remove();for(var s=0;s0&&(l=l.transition().duration(r.transition.duration).ease(r.transition.easing)),l.attr("transform",Pre(o-Mt.gripWidth*.5,r._dims.currentValueTotalHeight))}}function b4(e,r){var t=e._dims;return t.inputAreaStart+Mt.stepInset+(t.inputAreaLength-2*Mt.stepInset)*Math.min(1,Math.max(0,r))}function cR(e,r){var t=e._dims;return Math.min(1,Math.max(0,(r-Mt.stepInset-t.inputAreaStart)/(t.inputAreaLength-2*Mt.stepInset-2*t.inputAreaStart)))}function Yre(e,r,t){var n=t._dims,a=ao.ensureSingle(e,"rect",Mt.railTouchRectClass,function(i){i.call(gR,r,e,t).style("pointer-events","all")});a.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,Mt.tickOffset+t.ticklen+n.labelHeight)}).call(uf.fill,t.bgcolor).attr("opacity",0),Cl.setTranslate(a,0,n.currentValueTotalHeight)}function Gre(e,r){var t=r._dims,n=t.inputAreaLength-Mt.railInset*2,a=ao.ensureSingle(e,"rect",Mt.railRectClass);a.attr({width:n,height:Mt.railWidth,rx:Mt.railRadius,ry:Mt.railRadius,"shape-rendering":"crispEdges"}).call(uf.stroke,r.bordercolor).call(uf.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px"),Cl.setTranslate(a,Mt.railInset,(t.inputAreaWidth-Mt.railWidth)*.5+t.currentValueTotalHeight)}});var xR=te((rve,_R)=>{"use strict";var Vre=Dh();_R.exports={moduleType:"component",name:Vre.name,layoutAttributes:p4(),supplyLayoutDefaults:uR(),draw:bR()}});var Cm=te((tve,MR)=>{"use strict";var wR=vl();MR.exports={bgcolor:{valType:"color",dflt:wR.background,editType:"plot"},bordercolor:{valType:"color",dflt:wR.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var _4=te((nve,AR)=>{"use strict";AR.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var Lm=te((ave,TR)=>{"use strict";TR.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var CR=te(Dm=>{"use strict";var Wre=fa(),Zre=vi(),kR=Lm(),Xre=Ka().LINE_SPACING,qm=kR.name;function SR(e){var r=e&&e[qm];return r&&r.visible}Dm.isVisible=SR;Dm.makeData=function(e){for(var r=Wre.list({_fullLayout:e},"x",!0),t=e.margin,n=[],a=0;a{"use strict";var Em=pr(),LR=_n(),qR=fa(),jre=Cm(),Jre=_4();DR.exports=function(r,t,n){var a=r[n],i=t[n];if(!(a.rangeslider||t._requestRangeslider[i._id]))return;Em.isPlainObject(a.rangeslider)||(a.rangeslider={});var o=a.rangeslider,l=LR.newContainer(i,"rangeslider");function s(A,k){return Em.coerce(o,l,jre,A,k)}var u,f;function v(A,k){return Em.coerce(u,f,Jre,A,k)}var h=s("visible");if(h){s("bgcolor",t.plot_bgcolor),s("bordercolor"),s("borderwidth"),s("thickness"),s("autorange",!i.isValidRange(o.range)),s("range");var d=t._subplots;if(d)for(var m=d.cartesian.filter(function(A){return A.substr(0,A.indexOf("y"))===qR.name2id(n)}).map(function(A){return A.substr(A.indexOf("y"),A.length)}),p=Em.simpleMap(m,qR.id2name),y=0;y{"use strict";var $re=fa().list,Kre=ju().getAutoRange,Qre=Lm();PR.exports=function(r){for(var t=$re(r,"x",!0),n=0;n{"use strict";var Pm=kt(),ete=dt(),rte=ca(),Wn=pr(),Rm=Wn.strTranslate,NR=fn(),ff=Et(),tte=k1(),nte=Xb(),x4=fa(),ate=To(),ite=$u(),Dt=Lm();FR.exports=function(e){for(var r=e._fullLayout,t=r._rangeSliderData,n=0;n=Q.max)re=I[ae+1];else if(V=Q.pmax)re=I[ae+1];else if(V0?e.touches[0].clientX:0}function ote(e,r,t,n){if(r._context.staticPlot)return;var a=e.select("rect."+Dt.slideBoxClassName).node(),i=e.select("rect."+Dt.grabAreaMinClassName).node(),o=e.select("rect."+Dt.grabAreaMaxClassName).node();function l(){var s=Pm.event,u=s.target,f=zR(s),v=f-e.node().getBoundingClientRect().left,h=n.d2p(t._rl[0]),d=n.d2p(t._rl[1]),m=ate.coverSlip();this.addEventListener("touchmove",p),this.addEventListener("touchend",y),m.addEventListener("mousemove",p),m.addEventListener("mouseup",y);function p(b){var C=zR(b),x=+C-f,_,A,k;switch(u){case a:if(k="ew-resize",h+x>t._length||d+x<0)return;_=h+x,A=d+x;break;case i:if(k="col-resize",h+x>t._length)return;_=h+x,A=d;break;case o:if(k="col-resize",d+x<0)return;_=h,A=d+x;break;default:k="ew-resize",_=v,A=v+x;break}if(A<_){var M=A;A=_,_=M}n._pixelMin=_,n._pixelMax=A,ite(Pm.select(m),k),lte(e,r,t,n)}function y(){m.removeEventListener("mousemove",p),m.removeEventListener("mouseup",y),this.removeEventListener("touchmove",p),this.removeEventListener("touchend",y),Wn.removeElement(m)}}e.on("mousedown",l),e.on("touchstart",l)}function lte(e,r,t,n){function a(l){return t.l2r(Wn.constrain(l,n._rl[0],n._rl[1]))}var i=a(n.p2d(n._pixelMin)),o=a(n.p2d(n._pixelMax));window.requestAnimationFrame(function(){ete.call("_guiRelayout",r,t._name+".range",[i,o])})}function ste(e,r,t,n,a,i){var o=Dt.handleWidth/2;function l(b){return Wn.constrain(b,0,n._width)}function s(b){return Wn.constrain(b,0,n._height)}function u(b){return Wn.constrain(b,-o,n._width+o)}var f=l(n.d2p(t._rl[0])),v=l(n.d2p(t._rl[1]));if(e.select("rect."+Dt.slideBoxClassName).attr("x",f).attr("width",v-f),e.select("rect."+Dt.maskMinClassName).attr("width",f),e.select("rect."+Dt.maskMaxClassName).attr("x",v).attr("width",n._width-v),i.rangemode!=="match"){var h=n._height-s(n.d2pOppAxis(a._rl[1])),d=n._height-s(n.d2pOppAxis(a._rl[0]));e.select("rect."+Dt.maskMinOppAxisClassName).attr("x",f).attr("height",h).attr("width",v-f),e.select("rect."+Dt.maskMaxOppAxisClassName).attr("x",f).attr("y",d).attr("height",n._height-d).attr("width",v-f),e.select("rect."+Dt.slideBoxClassName).attr("y",h).attr("height",d-h)}var m=.5,p=Math.round(u(f-o))-m,y=Math.round(u(v-o))+m;e.select("g."+Dt.grabberMinClassName).attr("transform",Rm(p,m)),e.select("g."+Dt.grabberMaxClassName).attr("transform",Rm(y,m))}function ute(e,r,t,n){var a=Wn.ensureSingle(e,"rect",Dt.bgClassName,function(s){s.attr({x:0,y:0,"shape-rendering":"crispEdges"})}),i=n.borderwidth%2===0?n.borderwidth:n.borderwidth-1,o=-n._offsetShift,l=NR.crispRound(r,n.borderwidth);a.attr({width:n._width+i,height:n._height+i,transform:Rm(o,o),"stroke-width":l}).call(ff.stroke,n.bordercolor).call(ff.fill,n.bgcolor)}function fte(e,r,t,n){var a=r._fullLayout,i=Wn.ensureSingleById(a._topdefs,"clipPath",n._clipId,function(o){o.append("rect").attr({x:0,y:0})});i.select("rect").attr({width:n._width,height:n._height})}function cte(e,r,t,n){var a=r.calcdata,i=e.selectAll("g."+Dt.rangePlotClassName).data(t._subplotsWith,Wn.identity);i.enter().append("g").attr("class",function(l){return Dt.rangePlotClassName+" "+l}).call(NR.setClipUrl,n._clipId,r),i.order(),i.exit().remove();var o;i.each(function(l,s){var u=Pm.select(this),f=s===0,v=x4.getFromId(r,l,"y"),h=v._name,d=n[h],m={data:[],layout:{xaxis:{type:t.type,domain:[0,1],range:n.range.slice(),calendar:t.calendar},width:n._width,height:n._height,margin:{t:0,b:0,l:0,r:0}},_context:r._context};t.rangebreaks&&(m.layout.xaxis.rangebreaks=t.rangebreaks),m.layout[h]={type:v.type,domain:[0,1],range:d.rangemode!=="match"?d.range.slice():v.range.slice(),calendar:v.calendar},v.rangebreaks&&(m.layout[h].rangebreaks=v.rangebreaks),rte.supplyDefaults(m);var p=m._fullLayout.xaxis,y=m._fullLayout[h];p.clearCalc(),p.setScale(),y.clearCalc(),y.setScale();var b={id:l,plotgroup:u,xaxis:p,yaxis:y,isRangePlot:!0};f?o=b:(b.mainplot="xy",b.mainplotinfo=o),nte.rangePlot(r,b,vte(a,l))})}function vte(e,r){for(var t=[],n=0;n{"use strict";var gte=pr(),mte=Cm(),yte=_4(),w4=CR();HR.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:gte.extendFlat({},mte,{yaxis:yte})}}},layoutAttributes:Cm(),handleDefaults:ER(),calcAutorange:RR(),draw:IR(),isVisible:w4.isVisible,makeData:w4.makeData,autoMarginOpts:w4.autoMarginOpts}});var zm=te((fve,UR)=>{"use strict";var bte=$a(),OR=vl(),_te=_n().templatedArray,xte=_te("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});UR.exports={visible:{valType:"boolean",editType:"plot"},buttons:xte,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:bte({editType:"plot"}),bgcolor:{valType:"color",dflt:OR.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:OR.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var M4=te((cve,YR)=>{"use strict";YR.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var WR=te((vve,VR)=>{"use strict";var Nm=pr(),wte=Et(),Mte=_n(),Ate=ml(),GR=zm(),A4=M4();VR.exports=function(r,t,n,a,i){var o=r.rangeselector||{},l=Mte.newContainer(t,"rangeselector");function s(d,m){return Nm.coerce(o,l,GR,d,m)}var u=Ate(o,l,{name:"buttons",handleItemDefaults:Tte,calendar:i}),f=s("visible",u.length>0);if(f){var v=kte(t,n,a);s("x",v[0]),s("y",v[1]),Nm.noneOrAll(r,t,["x","y"]),s("xanchor"),s("yanchor"),Nm.coerceFont(s,"font",n.font);var h=s("bgcolor");s("activecolor",wte.contrast(h,A4.lightAmount,A4.darkAmount)),s("bordercolor"),s("borderwidth")}};function Tte(e,r,t,n){var a=n.calendar;function i(s,u){return Nm.coerce(e,r,GR.buttons,s,u)}var o=i("visible");if(o){var l=i("step");l!=="all"&&(a&&a!=="gregorian"&&(l==="month"||l==="year")?r.stepmode="backward":i("stepmode"),i("count")),i("label")}}function kte(e,r,t){for(var n=t.filter(function(l){return r[l].anchor===e._id}),a=0,i=0;i{"use strict";var Ste=Ty(),Cte=pr().titleCase;ZR.exports=function(r,t){var n=r._name,a={};if(t.step==="all")a[n+".autorange"]=!0;else{var i=Lte(r,t);a[n+".range[0]"]=i[0],a[n+".range[1]"]=i[1]}return a};function Lte(e,r){var t=e.range,n=new Date(e.r2l(t[1])),a=r.step,i=Ste["utc"+Cte(a)],o=r.count,l;switch(r.stepmode){case"backward":l=e.l2r(+i.offset(n,-o));break;case"todate":var s=i.offset(n,-o);l=e.l2r(+i.ceil(s));break}var u=t[1];return[l,u]}});var tz=te((dve,rz)=>{"use strict";var Im=kt(),qte=dt(),Dte=ca(),jR=Et(),ez=fn(),ou=pr(),JR=ou.strTranslate,Fm=vi(),Ete=fa(),S4=Ka(),$R=S4.LINE_SPACING,KR=S4.FROM_TL,QR=S4.FROM_BR,k4=M4(),Pte=XR();rz.exports=function(r){var t=r._fullLayout,n=t._infolayer.selectAll(".rangeselector").data(Rte(r),zte);n.enter().append("g").classed("rangeselector",!0),n.exit().remove(),n.style({cursor:"pointer","pointer-events":"all"}),n.each(function(a){var i=Im.select(this),o=a,l=o.rangeselector,s=i.selectAll("g.button").data(ou.filterVisible(l.buttons));s.enter().append("g").classed("button",!0),s.exit().remove(),s.each(function(u){var f=Im.select(this),v=Pte(o,u);u._isActive=Nte(o,u,v),f.call(T4,l,u),f.call(Ite,l,u,r),f.on("click",function(){r._dragged||qte.call("_guiRelayout",r,v)}),f.on("mouseover",function(){u._isHovered=!0,f.call(T4,l,u)}),f.on("mouseout",function(){u._isHovered=!1,f.call(T4,l,u)})}),Bte(r,s,l,o._name,i)})};function Rte(e){for(var r=Ete.list(e,"x",!0),t=[],n=0;n{"use strict";nz.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:zm()}}},layoutAttributes:zm(),handleDefaults:WR(),draw:tz()}});var Hm=te(C4=>{"use strict";var iz=sa().extendFlat;C4.attributes=function(e,r){e=e||{},r=r||{};var t={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},n=e.name?e.name+" ":"",a=e.trace?"trace ":"subplot ",i=r.description?" "+r.description:"",o={x:iz({},t,{}),y:iz({},t,{}),editType:e.editType};return e.noGridCell||(o.row={valType:"integer",min:0,dflt:0,editType:e.editType},o.column={valType:"integer",min:0,dflt:0,editType:e.editType}),o};C4.defaults=function(e,r,t,n){var a=n&&n.x||[0,1],i=n&&n.y||[0,1],o=r.grid;if(o){var l=t("domain.column");l!==void 0&&(l{"use strict";var Ote=pr(),Ute=w0().counter,Yte=Hm().attributes,oz=Ea().idRegex,Gte=_n(),L4={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[Ute("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[oz.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[oz.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:Yte({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function Bm(e,r,t){var n=r[t+"axes"],a=Object.keys((e._splomAxes||{})[t]||{});if(Array.isArray(n))return n;if(a.length)return a}function Vte(e,r){var t=e.grid||{},n=Bm(r,t,"x"),a=Bm(r,t,"y");if(!e.grid&&!n&&!a)return;var i=Array.isArray(t.subplots)&&Array.isArray(t.subplots[0]),o=Array.isArray(n),l=Array.isArray(a),s=o&&n!==t.xaxes&&l&&a!==t.yaxes,u,f;i?(u=t.subplots.length,f=t.subplots[0].length):(l&&(u=a.length),o&&(f=n.length));var v=Gte.newContainer(r,"grid");function h(k,M){return Ote.coerce(t,v,L4,k,M)}var d=h("rows",u),m=h("columns",f);if(!(d*m>1)){delete r.grid;return}if(!i&&!o&&!l){var p=h("pattern")==="independent";p&&(i=!0)}v._hasSubplotGrid=i;var y=h("roworder"),b=y==="top to bottom",C=i?.2:.1,x=i?.3:.1,_,A;s&&r._splomGridDflt&&(_=r._splomGridDflt.xside,A=r._splomGridDflt.yside),v._domains={x:lz("x",h,C,_,m),y:lz("y",h,x,A,d,b)}}function lz(e,r,t,n,a,i){var o=r(e+"gap",t),l=r("domain."+e);r(e+"side",n);for(var s=new Array(a),u=l[0],f=(l[1]-u)/(a-o),v=f*(1-o),h=0;h{"use strict";cz.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var dz=te((bve,hz)=>{"use strict";var vz=Ht(),Zte=dt(),Xte=pr(),jte=_n(),Jte=q4();hz.exports=function(e,r,t,n){var a="error_"+n.axis,i=jte.newContainer(r,a),o=e[a]||{};function l(m,p){return Xte.coerce(o,i,Jte,m,p)}var s=o.array!==void 0||o.value!==void 0||o.type==="sqrt",u=l("visible",s);if(u!==!1){var f=l("type","array"in o?"data":"percent"),v=!0;f!=="sqrt"&&(v=l("symmetric",!((f==="data"?"arrayminus":"valueminus")in o))),f==="data"?(l("array"),l("traceref"),v||(l("arrayminus"),l("tracerefminus"))):(f==="percent"||f==="constant")&&(l("value"),v||l("valueminus"));var h="copy_"+n.inherit+"style";if(n.inherit){var d=r["error_"+n.inherit];(d||{}).visible&&l(h,!(o.color||vz(o.thickness)||vz(o.width)))}(!n.inherit||!i[h])&&(l("color",t),l("thickness"),l("width",Zte.traceIs(r,"gl3d")?0:4))}}});var D4=te((_ve,gz)=>{"use strict";gz.exports=function(r){var t=r.type,n=r.symmetric;if(t==="data"){var a=r.array||[];if(n)return function(u,f){var v=+a[f];return[v,v]};var i=r.arrayminus||[];return function(u,f){var v=+a[f],h=+i[f];return!isNaN(v)||!isNaN(h)?[h||0,v||0]:[NaN,NaN]}}else{var o=pz(t,r.value),l=pz(t,r.valueminus);return n||r.valueminus===void 0?function(u){var f=o(u);return[f,f]}:function(u){return[l(u),o(u)]}}};function pz(e,r){if(e==="percent")return function(t){return Math.abs(t*r/100)};if(e==="constant")return function(){return Math.abs(r)};if(e==="sqrt")return function(t){return Math.sqrt(Math.abs(t))}}});var bz=te((xve,yz)=>{"use strict";var E4=Ht(),$te=dt(),P4=Dn(),Kte=pr(),Qte=D4();yz.exports=function(r){for(var t=r.calcdata,n=0;n{"use strict";var _z=kt(),cf=Ht(),ene=fn(),rne=Qa();xz.exports=function(r,t,n,a){var i,o=n.xaxis,l=n.yaxis,s=a&&a.duration>0,u=r._context.staticPlot;t.each(function(f){var v=f[0].trace,h=v.error_x||{},d=v.error_y||{},m;v.ids&&(m=function(C){return C.id});var p=rne.hasMarkers(v)&&v.marker.maxdisplayed>0;!d.visible&&!h.visible&&(f=[]);var y=_z.select(this).selectAll("g.errorbar").data(f,m);if(y.exit().remove(),!!f.length){h.visible||y.selectAll("path.xerror").remove(),d.visible||y.selectAll("path.yerror").remove(),y.style("opacity",1);var b=y.enter().append("g").classed("errorbar",!0);s&&b.style("opacity",0).transition().duration(a.duration).style("opacity",1),ene.setClipUrl(y,n.layerClipId,r),y.each(function(C){var x=_z.select(this),_=tne(C,o,l);if(!(p&&!C.vis)){var A,k=x.select("path.yerror");if(d.visible&&cf(_.x)&&cf(_.yh)&&cf(_.ys)){var M=d.width;A="M"+(_.x-M)+","+_.yh+"h"+2*M+"m-"+M+",0V"+_.ys,_.noYS||(A+="m-"+M+",0h"+2*M),i=!k.size(),i?k=x.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("yerror",!0):s&&(k=k.transition().duration(a.duration).ease(a.easing)),k.attr("d",A)}else k.remove();var D=x.select("path.xerror");if(h.visible&&cf(_.y)&&cf(_.xh)&&cf(_.xs)){var z=(h.copy_ystyle?d:h).width;A="M"+_.xh+","+(_.y-z)+"v"+2*z+"m0,-"+z+"H"+_.xs,_.noXS||(A+="m0,-"+z+"v"+2*z),i=!D.size(),i?D=x.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("xerror",!0):s&&(D=D.transition().duration(a.duration).ease(a.easing)),D.attr("d",A)}else D.remove()}})}})};function tne(e,r,t){var n={x:r.c2p(e.x),y:t.c2p(e.y)};return e.yh!==void 0&&(n.yh=t.c2p(e.yh),n.ys=t.c2p(e.ys),cf(n.ys)||(n.noYS=!0,n.ys=t.c2p(e.ys,!0))),e.xh!==void 0&&(n.xh=r.c2p(e.xh),n.xs=r.c2p(e.xs),cf(n.xs)||(n.noXS=!0,n.xs=r.c2p(e.xs,!0))),n}});var Tz=te((Mve,Az)=>{"use strict";var nne=kt(),Mz=Et();Az.exports=function(r){r.each(function(t){var n=t[0].trace,a=n.error_y||{},i=n.error_x||{},o=nne.select(this);o.selectAll("path.yerror").style("stroke-width",a.thickness+"px").call(Mz.stroke,a.color),i.copy_ystyle&&(i=a),o.selectAll("path.xerror").style("stroke-width",i.thickness+"px").call(Mz.stroke,i.color)})}});var Cz=te((Ave,Sz)=>{"use strict";var Ph=pr(),kz=_o().overrideAll,Rh=q4(),Ic={error_x:Ph.extendFlat({},Rh),error_y:Ph.extendFlat({},Rh)};delete Ic.error_x.copy_zstyle;delete Ic.error_y.copy_zstyle;delete Ic.error_y.copy_ystyle;var zh={error_x:Ph.extendFlat({},Rh),error_y:Ph.extendFlat({},Rh),error_z:Ph.extendFlat({},Rh)};delete zh.error_x.copy_ystyle;delete zh.error_y.copy_ystyle;delete zh.error_z.copy_ystyle;delete zh.error_z.copy_zstyle;Sz.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Ic,bar:Ic,histogram:Ic,scatter3d:kz(zh,"calc","nested"),scattergl:kz(Ic,"calc","nested")}},supplyDefaults:dz(),calc:bz(),makeComputeError:D4(),plot:wz(),style:Tz(),hoverInfo:ane};function ane(e,r,t){(r.error_y||{}).visible&&(t.yerr=e.yh-e.y,r.error_y.symmetric||(t.yerrneg=e.y-e.ys)),(r.error_x||{}).visible&&(t.xerr=e.xh-e.x,r.error_x.symmetric||(t.xerrneg=e.x-e.xs))}});var qz=te((Tve,Lz)=>{"use strict";Lz.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var Fz=te((kve,Nz)=>{"use strict";var vf=kt(),R4=Jl(),Um=ca(),Dz=dt(),lu=Dn(),Om=To(),Io=pr(),ql=Io.strTranslate,zz=sa().extendFlat,z4=$u(),Ll=fn(),N4=Et(),ine=k1(),one=vi(),lne=es().flipScale,sne=Gb(),une=Vb(),fne=gl(),F4=Ka(),Ez=F4.LINE_SPACING,Pz=F4.FROM_TL,Rz=F4.FROM_BR,En=qz().cn;function cne(e){var r=e._fullLayout,t=r._infolayer.selectAll("g."+En.colorbar).data(vne(e),function(n){return n._id});t.enter().append("g").attr("class",function(n){return n._id}).classed(En.colorbar,!0),t.each(function(n){var a=vf.select(this);Io.ensureSingle(a,"rect",En.cbbg),Io.ensureSingle(a,"g",En.cbfills),Io.ensureSingle(a,"g",En.cblines),Io.ensureSingle(a,"g",En.cbaxis,function(o){o.classed(En.crisp,!0)}),Io.ensureSingle(a,"g",En.cbtitleunshift,function(o){o.append("g").classed(En.cbtitle,!0)}),Io.ensureSingle(a,"rect",En.cboutline);var i=hne(a,n,e);i&&i.then&&(e._promises||[]).push(i),e._context.edits.colorbarPosition&&dne(a,n,e)}),t.exit().each(function(n){Um.autoMargin(e,n._id)}).remove(),t.order()}function vne(e){var r=e._fullLayout,t=e.calcdata,n=[],a,i,o,l;function s(x){return zz(x,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function u(){typeof l.calc=="function"?l.calc(e,o,a):(a._fillgradient=i.reversescale?lne(i.colorscale):i.colorscale,a._zrange=[i[l.min],i[l.max]])}for(var f=0;f1){var K=Math.pow(10,Math.floor(Math.log(U)/Math.LN10));Me*=K*Io.roundUp(U/K,[2,5,10]),(Math.abs(W.start)/W.size+1e-6)%1<2e-6&&(ue.tick0=0)}ue.dtick=Me}ue.domain=n?[Ce+m/_.h,Ce+ee-m/_.h]:[Ce+d/_.w,Ce+ee-d/_.w],ue.setScale(),e.attr("transform",ql(Math.round(_.l),Math.round(_.t)));var $=e.select("."+En.cbtitleunshift).attr("transform",ql(-Math.round(_.l),-Math.round(_.t))),ke=ue.ticklabelposition,Be=ue.title.font.size,Ne=e.select("."+En.cbaxis),ir,or=0,Ye=0;function nr(gr,Te){var Oe={propContainer:ue,propName:r._propPrefix+"title.text",traceIndex:r._traceIndex,_meta:r._meta,placeholder:x._dfltTitle.colorbar,containerGroup:e.select("."+En.cbtitle)},kr=gr.charAt(0)==="h"?gr.substr(1):"h"+gr;e.selectAll("."+kr+",."+kr+"-math-group").remove(),ine.draw(t,gr,zz(Oe,Te||{}))}function lr(){if(n&&ye||!n&&!ye){var gr,Te;D==="top"&&(gr=d+_.l+fe*p,Te=m+_.t+he*(1-Ce-ee)+3+Be*.75),D==="bottom"&&(gr=d+_.l+fe*p,Te=m+_.t+he*(1-Ce)-3-Be*.25),D==="right"&&(Te=m+_.t+he*y+3+Be*.75,gr=d+_.l+fe*Ce),nr(ue._id+"title",{attributes:{x:gr,y:Te,"text-anchor":n?"start":"middle"}})}}function vr(){if(n&&!ye||!n&&ye){var gr=ue.position||0,Te=ue._offset+ue._length/2,Oe,kr;if(D==="right")kr=Te,Oe=_.l+fe*gr+10+Be*(ue.showticklabels?1:.5);else if(Oe=Te,D==="bottom"&&(kr=_.t+he*gr+10+(ke.indexOf("inside")===-1?ue.tickfont.size:0)+(ue.ticks!=="inside"&&r.ticklen||0)),D==="top"){var Ur=M.text.split("
").length;kr=_.t+he*gr+10-re-Ez*Be*Ur}nr((n?"h":"v")+ue._id+"title",{avoid:{selection:vf.select(t).selectAll("g."+ue._id+"tick"),side:D,offsetTop:n?0:_.t,offsetLeft:n?_.l:0,maxShift:n?x.width:x.height},attributes:{x:Oe,y:kr,"text-anchor":"middle"},transform:{rotate:n?-90:0,offset:0}})}}function Je(){if(!n&&!ye||n&&ye){var gr=e.select("."+En.cbtitle),Te=gr.select("text"),Oe=[-s/2,s/2],kr=gr.select(".h"+ue._id+"title-math-group").node(),Ur=15.6;Te.node()&&(Ur=parseInt(Te.node().style.fontSize,10)*Ez);var tr;if(kr?(tr=Ll.bBox(kr),Ye=tr.width,or=tr.height,or>Ur&&(Oe[1]-=(or-Ur)/2)):Te.node()&&!Te.classed(En.jsPlaceholder)&&(tr=Ll.bBox(Te.node()),Ye=tr.width,or=tr.height),n){if(or){if(or+=5,D==="top")ue.domain[1]-=or/_.h,Oe[1]*=-1;else{ue.domain[0]+=or/_.h;var Ue=one.lineCount(Te);Oe[1]+=(1-Ue)*Ur}gr.attr("transform",ql(Oe[0],Oe[1])),ue.setScale()}}else Ye&&(D==="right"&&(ue.domain[0]+=(Ye+Be/2)/_.w),gr.attr("transform",ql(Oe[0],Oe[1])),ue.setScale())}e.selectAll("."+En.cbfills+",."+En.cblines).attr("transform",n?ql(0,Math.round(_.h*(1-ue.domain[1]))):ql(Math.round(_.w*ue.domain[0]),0)),Ne.attr("transform",n?ql(0,Math.round(-_.t)):ql(Math.round(-_.l),0));var Ze=e.select("."+En.cbfills).selectAll("rect."+En.cbfill).attr("style","").data(X);Ze.enter().append("rect").classed(En.cbfill,!0).attr("style",""),Ze.exit().remove();var mr=z.map(ue.c2p).map(Math.round).sort(function(Sr,Dr){return Sr-Dr});Ze.each(function(Sr,Dr){var ur=[Dr===0?z[0]:(X[Dr]+X[Dr-1])/2,Dr===X.length-1?z[1]:(X[Dr]+X[Dr+1])/2].map(ue.c2p).map(Math.round);n&&(ur[1]=Io.constrain(ur[1]+(ur[1]>ur[0])?1:-1,mr[0],mr[1]));var _e=vf.select(this).attr(n?"x":"y",Le).attr(n?"y":"x",vf.min(ur)).attr(n?"width":"height",Math.max(re,2)).attr(n?"height":"width",Math.max(vf.max(ur)-vf.min(ur),2));if(r._fillgradient)Ll.gradient(_e,t,r._id,n?"vertical":"horizontalreversed",r._fillgradient,"fill");else{var Ae=I(Sr).replace("e-","");_e.attr("fill",R4(Ae).toHexString())}});var Tr=e.select("."+En.cblines).selectAll("path."+En.cbline).data(k.color&&k.width?V:[]);Tr.enter().append("path").classed(En.cbline,!0),Tr.exit().remove(),Tr.each(function(Sr){var Dr=Le,ur=Math.round(ue.c2p(Sr))+k.width/2%1;vf.select(this).attr("d","M"+(n?Dr+","+ur:ur+","+Dr)+(n?"h":"v")+re).call(Ll.lineGroupStyle,k.width,F(Sr),k.dash)}),Ne.selectAll("g."+ue._id+"tick,path").remove();var yr=Le+re+(s||0)/2-(r.ticks==="outside"?1:0),wr=lu.calcTicks(ue),Hr=lu.getTickSigns(ue)[2];return lu.drawTicks(t,ue,{vals:ue.ticks==="inside"?lu.clipEnds(ue,wr):wr,layer:Ne,path:lu.makeTickPath(ue,yr,Hr),transFn:lu.makeTransTickFn(ue)}),lu.drawLabels(t,ue,{vals:wr,layer:Ne,transFn:lu.makeTransTickLabelFn(ue),labelFns:lu.makeLabelFns(ue,yr)})}function dr(){var gr,Te=re+s/2;ke.indexOf("inside")===-1&&(gr=Ll.bBox(Ne.node()),Te+=n?gr.width:gr.height),ir=$.select("text");var Oe=0,kr=n&&D==="top",Ur=!n&&D==="right",tr=0;if(ir.node()&&!ir.classed(En.jsPlaceholder)){var Ue,Ze=$.select(".h"+ue._id+"title-math-group").node();Ze&&(n&&ye||!n&&!ye)?(gr=Ll.bBox(Ze),Oe=gr.width,Ue=gr.height):(gr=Ll.bBox($.node()),Oe=gr.right-_.l-(n?Le:Qe),Ue=gr.bottom-_.t-(n?Qe:Le),!n&&D==="top"&&(Te+=gr.height,tr=gr.height)),Ur&&(ir.attr("transform",ql(Oe/2+Be/2,0)),Oe*=2),Te=Math.max(Te,n?Oe:Ue)}var mr=(n?d:m)*2+Te+u+s/2,Tr=0;!n&&M.text&&h==="bottom"&&y<=0&&(Tr=mr/2,mr+=Tr,tr+=Tr),x._hColorbarMoveTitle=Tr,x._hColorbarMoveCBTitle=tr;var yr=u+s,wr=(n?Le:Qe)-yr/2-(n?d:0),Hr=(n?Qe:Le)-(n?Q:m+tr-Tr);e.select("."+En.cbbg).attr("x",wr).attr("y",Hr).attr(n?"width":"height",Math.max(mr-Tr,2)).attr(n?"height":"width",Math.max(Q+yr,2)).call(N4.fill,f).call(N4.stroke,r.bordercolor).style("stroke-width",u);var Sr=Ur?Math.max(Oe-10,0):0;e.selectAll("."+En.cboutline).attr("x",(n?Le:Qe+d)+Sr).attr("y",(n?Qe+m-Q:Le)+(kr?or:0)).attr(n?"width":"height",Math.max(re,2)).attr(n?"height":"width",Math.max(Q-(n?2*m+or:2*d+Sr),2)).call(N4.stroke,r.outlinecolor).style({fill:"none","stroke-width":s});var Dr=n?Ie*mr:0,ur=n?0:(1-ze)*mr-tr;if(Dr=C?_.l-Dr:-Dr,ur=b?_.t-ur:-ur,e.attr("transform",ql(Dr,ur)),!n&&(u||R4(f).getAlpha()&&!R4.equals(x.paper_bgcolor,f))){var _e=Ne.selectAll("text"),Ae=_e[0].length,Ke=e.select("."+En.cbbg).node(),rr=Ll.bBox(Ke),Lr=Ll.getTranslate(e),Yr=2;_e.each(function(Qt,en){var an=0,jr=Ae-1;if(en===an||en===jr){var Ut=Ll.bBox(this),Nt=Ll.getTranslate(this),rn;if(en===jr){var Tn=Ut.right+Nt.x,vn=rr.right+Lr.x+Qe-u-Yr+p;rn=vn-Tn,rn>0&&(rn=0)}else if(en===an){var Yt=Ut.left+Nt.x,Bn=rr.left+Lr.x+Qe+u+Yr;rn=Bn-Yt,rn<0&&(rn=0)}rn&&(Ae<3?this.setAttribute("transform","translate("+rn+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var Fr={},lt=Pz[v],xt=Rz[v],Rt=Pz[h],Kt=Rz[h],cn=mr-re;n?(i==="pixels"?(Fr.y=y,Fr.t=Q*Rt,Fr.b=Q*Kt):(Fr.t=Fr.b=0,Fr.yt=y+a*Rt,Fr.yb=y-a*Kt),l==="pixels"?(Fr.x=p,Fr.l=mr*lt,Fr.r=mr*xt):(Fr.l=cn*lt,Fr.r=cn*xt,Fr.xl=p-o*lt,Fr.xr=p+o*xt)):(i==="pixels"?(Fr.x=p,Fr.l=Q*lt,Fr.r=Q*xt):(Fr.l=Fr.r=0,Fr.xl=p+a*lt,Fr.xr=p-a*xt),l==="pixels"?(Fr.y=1-y,Fr.t=mr*Rt,Fr.b=mr*Kt):(Fr.t=cn*Rt,Fr.b=cn*Kt,Fr.yt=y-o*Rt,Fr.yb=y+o*Kt));var pn=r.y<.5?"b":"t",Mn=r.x<.5?"l":"r";t._fullLayout._reservedMargin[r._id]={};var Xt={r:x.width-wr-Dr,l:wr+Fr.r,b:x.height-Hr-ur,t:Hr+Fr.b};C&&b?Um.autoMargin(t,r._id,Fr):C?t._fullLayout._reservedMargin[r._id][pn]=Xt[pn]:b||n?t._fullLayout._reservedMargin[r._id][Mn]=Xt[Mn]:t._fullLayout._reservedMargin[r._id][pn]=Xt[pn]}return Io.syncOrAsync([Um.previousPromises,lr,Je,vr,Um.previousPromises,dr],t)}function dne(e,r,t){var n=r.orientation==="v",a=t._fullLayout,i=a._size,o,l,s;Om.init({element:e.node(),gd:t,prepFn:function(){o=e.attr("transform"),z4(e)},moveFn:function(u,f){e.attr("transform",o+ql(u,f)),l=Om.align((n?r._uFrac:r._vFrac)+u/i.w,n?r._thickFrac:r._lenFrac,0,1,r.xanchor),s=Om.align((n?r._vFrac:1-r._uFrac)-f/i.h,n?r._lenFrac:r._thickFrac,0,1,r.yanchor);var v=Om.getCursor(l,s,r.xanchor,r.yanchor);z4(e,v)},doneFn:function(){if(z4(e),l!==void 0&&s!==void 0){var u={};u[r._propPrefix+"x"]=l,u[r._propPrefix+"y"]=s,r._traceIndex!==void 0?Dz.call("_guiRestyle",t,u,r._traceIndex):Dz.call("_guiRelayout",t,u)}}})}function pne(e,r,t){var n=r._levels,a=[],i=[],o,l,s=n.end+n.size/100,u=n.size,f=1.001*t[0]-.001*t[1],v=1.001*t[1]-.001*t[0];for(l=0;l<1e5&&(o=n.start+l*u,!(u>0?o>=s:o<=s));l++)o>f&&o0?o>=s:o<=s));l++)o>t[0]&&o{"use strict";Iz.exports={moduleType:"component",name:"colorbar",attributes:ep(),supplyDefaults:B2(),draw:Fz().draw,hasColorbar:L2()}});var Oz=te((Cve,Bz)=>{"use strict";Bz.exports={moduleType:"component",name:"legend",layoutAttributes:N3(),supplyLayoutDefaults:H3(),draw:K3(),style:X3()}});var Yz=te((Lve,Uz)=>{"use strict";Uz.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var Vz=te((qve,Gz)=>{"use strict";Gz.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var H4=te((Dve,jz)=>{"use strict";var mne=dt(),Xz=pr(),I4=Xz.extendFlat,Wz=Xz.extendDeep;function Zz(e){var r;switch(e){case"themes__thumb":r={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":r={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:r={}}return r}function yne(e){var r=["xaxis","yaxis","zaxis"];return r.indexOf(e.slice(0,5))>-1}jz.exports=function(r,t){var n,a=r.data,i=r.layout,o=Wz([],a),l=Wz({},i,Zz(t.tileClass)),s=r._context||{};if(t.width&&(l.width=t.width),t.height&&(l.height=t.height),t.tileClass==="thumbnail"||t.tileClass==="themes__thumb"){l.annotations=[];var u=Object.keys(l);for(n=0;n{"use strict";var bne=Od().EventEmitter,_ne=dt(),xne=pr(),Jz=Cc(),wne=H4(),Mne=jg(),Ane=Jg();function Tne(e,r){var t=new bne,n=wne(e,{format:"png"}),a=n.gd;a.style.position="absolute",a.style.left="-5000px",document.body.appendChild(a);function i(){var l=Jz.getDelay(a._fullLayout);setTimeout(function(){var s=Mne(a),u=document.createElement("canvas");u.id=xne.randstr(),t=Ane({format:r.format,width:a._fullLayout.width,height:a._fullLayout.height,canvas:u,emitter:t,svg:s}),t.clean=function(){a&&document.body.removeChild(a)}},l)}var o=Jz.getRedrawFunc(a);return _ne.call("_doPlot",a,n.data,n.layout,n.config).then(o).then(i).catch(function(l){t.emit("error",l)}),t}$z.exports=Tne});var rN=te((Pve,eN)=>{"use strict";var Qz=Cc(),kne={getDelay:Qz.getDelay,getRedrawFunc:Qz.getRedrawFunc,clone:H4(),toSVG:jg(),svgToImg:Jg(),toImage:Kz(),downloadImage:gb()};eN.exports=kne});var nN=te(su=>{"use strict";su.version=nd().version;Z_();Nw();var Sne=dt(),Nh=su.register=Sne.register,O4=lq(),tN=Object.keys(O4);for(Ym=0;Ym{"use strict";aN.exports=nN()});var Fh=te((Fve,uN)=>{"use strict";var{hovertemplateAttrs:Cne,texttemplateAttrs:Lne,templatefallbackAttrs:oN}=Qf(),qne=W5(),ds=Sc(),Dne=bo(),lN=O0(),Ene=Kl().dash,Hc=sa().extendFlat,Pne=_o().overrideAll,Ho=ds.marker,sN=ds.line,Rne=Ho.line,Nve=["The library used by the *country names* `locationmode` option is changing in an upcoming version.","Country names in existing plots may not work in the new version."].join(" ");uN.exports=Pne({lon:{valType:"data_array"},lat:{valType:"data_array"},locations:{valType:"data_array"},locationmode:{valType:"enumerated",values:["ISO-3","USA-states","country names","geojson-id"],dflt:"ISO-3"},geojson:{valType:"any",editType:"calc"},featureidkey:{valType:"string",editType:"calc",dflt:"id"},mode:Hc({},ds.mode,{dflt:"markers"}),text:Hc({},ds.text,{}),texttemplate:Lne({editType:"plot"},{keys:["lat","lon","location","text"]}),texttemplatefallback:oN({editType:"plot"}),hovertext:Hc({},ds.hovertext,{}),textfont:ds.textfont,textposition:ds.textposition,line:{color:sN.color,width:sN.width,dash:Ene},connectgaps:ds.connectgaps,marker:Hc({symbol:Ho.symbol,opacity:Ho.opacity,angle:Ho.angle,angleref:Hc({},Ho.angleref,{values:["previous","up","north"]}),standoff:Ho.standoff,size:Ho.size,sizeref:Ho.sizeref,sizemin:Ho.sizemin,sizemode:Ho.sizemode,colorbar:Ho.colorbar,line:Hc({width:Rne.width},lN("marker.line")),gradient:Ho.gradient},lN("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:qne(),selected:ds.selected,unselected:ds.unselected,hoverinfo:Hc({},Dne.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:Cne(),hovertemplatefallback:oN()},"calc","nested")});var cN=te((Ive,fN)=>{"use strict";var Vm=pr(),U4=Qa(),zne=bb(),Nne=_b(),Fne=xb(),Ine=wb(),Hne=Fh(),Bne=["The library used by the *country names* `locationmode` option is changing in the next major version.","Some country names in existing plots may not work in the new version.","To ensure consistent behavior, consider setting `locationmode` to *ISO-3*."].join(" ");fN.exports=function(r,t,n,a){function i(d,m){return Vm.coerce(r,t,Hne,d,m)}var o=i("locations"),l;if(o&&o.length){var s=i("geojson"),u;(typeof s=="string"&&s!==""||Vm.isPlainObject(s))&&(u="geojson-id");var f=i("locationmode",u);f==="country names"&&Vm.warn(Bne),f==="geojson-id"&&i("featureidkey"),l=o.length}else{var v=i("lon")||[],h=i("lat")||[];l=Math.min(v.length,h.length)}if(!l){t.visible=!1;return}t._length=l,i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),i("mode"),U4.hasMarkers(t)&&zne(r,t,n,a,i,{gradient:!0}),U4.hasLines(t)&&(Nne(r,t,n,a,i),i("connectgaps")),U4.hasText(t)&&(i("texttemplate"),i("texttemplatefallback"),Fne(r,t,a,i)),i("fill"),t.fill!=="none"&&Ine(r,t,n,i),Vm.coerceSelectionMarkerOpacity(t,i)}});var dN=te((Hve,hN)=>{"use strict";var vN=Dn();hN.exports=function(r,t,n){var a={},i=n[t.geo]._subplot,o=i.mockAxis,l=r.lonlat;return a.lonLabel=vN.tickText(o,o.c2l(l[0]),!0).text,a.latLabel=vN.tickText(o,o.c2l(l[1]),!0).text,a}});var bN=te((Bve,yN)=>{"use strict";var Y4=Ht(),pN=Rn().BADNUM,One=Tb(),Une=mh(),Yne=nm(),Gne=pr().isArrayOrTypedArray,gN=pr()._;function mN(e){return e&&typeof e=="string"}yN.exports=function(r,t){var n=Gne(t.locations),a=n?t.locations.length:t._length,i=new Array(a),o;t.geojson?o=function(h){return mN(h)||Y4(h)}:o=mN;for(var l=0;l{"use strict";Oa.projNames={airy:"airy",aitoff:"aitoff","albers usa":"albersUsa",albers:"albers",august:"august","azimuthal equal area":"azimuthalEqualArea","azimuthal equidistant":"azimuthalEquidistant",baker:"baker",bertin1953:"bertin1953",boggs:"boggs",bonne:"bonne",bottomley:"bottomley",bromley:"bromley",collignon:"collignon","conic conformal":"conicConformal","conic equal area":"conicEqualArea","conic equidistant":"conicEquidistant",craig:"craig",craster:"craster","cylindrical equal area":"cylindricalEqualArea","cylindrical stereographic":"cylindricalStereographic",eckert1:"eckert1",eckert2:"eckert2",eckert3:"eckert3",eckert4:"eckert4",eckert5:"eckert5",eckert6:"eckert6",eisenlohr:"eisenlohr","equal earth":"equalEarth",equirectangular:"equirectangular",fahey:"fahey","foucaut sinusoidal":"foucautSinusoidal",foucaut:"foucaut",ginzburg4:"ginzburg4",ginzburg5:"ginzburg5",ginzburg6:"ginzburg6",ginzburg8:"ginzburg8",ginzburg9:"ginzburg9",gnomonic:"gnomonic","gringorten quincuncial":"gringortenQuincuncial",gringorten:"gringorten",guyou:"guyou",hammer:"hammer",hill:"hill",homolosine:"homolosine",hufnagel:"hufnagel",hyperelliptical:"hyperelliptical",kavrayskiy7:"kavrayskiy7",lagrange:"lagrange",larrivee:"larrivee",laskowski:"laskowski",loximuthal:"loximuthal",mercator:"mercator",miller:"miller",mollweide:"mollweide","mt flat polar parabolic":"mtFlatPolarParabolic","mt flat polar quartic":"mtFlatPolarQuartic","mt flat polar sinusoidal":"mtFlatPolarSinusoidal","natural earth":"naturalEarth","natural earth1":"naturalEarth1","natural earth2":"naturalEarth2","nell hammer":"nellHammer",nicolosi:"nicolosi",orthographic:"orthographic",patterson:"patterson","peirce quincuncial":"peirceQuincuncial",polyconic:"polyconic","rectangular polyconic":"rectangularPolyconic",robinson:"robinson",satellite:"satellite","sinu mollweide":"sinuMollweide",sinusoidal:"sinusoidal",stereographic:"stereographic",times:"times","transverse mercator":"transverseMercator","van der grinten":"vanDerGrinten","van der grinten2":"vanDerGrinten2","van der grinten3":"vanDerGrinten3","van der grinten4":"vanDerGrinten4",wagner4:"wagner4",wagner6:"wagner6",wiechel:"wiechel","winkel tripel":"winkel3",winkel3:"winkel3"};Oa.axesNames=["lonaxis","lataxis"];Oa.lonaxisSpan={orthographic:180,"azimuthal equal area":360,"azimuthal equidistant":360,"conic conformal":180,gnomonic:160,stereographic:180,"transverse mercator":180,"*":360};Oa.lataxisSpan={"conic conformal":150,stereographic:179.5,"*":180};Oa.scopeDefaults={world:{lonaxisRange:[-180,180],lataxisRange:[-90,90],projType:"equirectangular",projRotate:[0,0,0]},usa:{lonaxisRange:[-180,-50],lataxisRange:[15,80],projType:"albers usa"},europe:{lonaxisRange:[-30,60],lataxisRange:[30,85],projType:"conic conformal",projRotate:[15,0,0],projParallels:[0,60]},asia:{lonaxisRange:[22,160],lataxisRange:[-15,55],projType:"mercator",projRotate:[0,0,0]},africa:{lonaxisRange:[-30,60],lataxisRange:[-40,40],projType:"mercator",projRotate:[0,0,0]},"north america":{lonaxisRange:[-180,-45],lataxisRange:[5,85],projType:"conic conformal",projRotate:[-100,0,0],projParallels:[29.5,45.5]},"south america":{lonaxisRange:[-100,-30],lataxisRange:[-60,15],projType:"mercator",projRotate:[0,0,0]},antarctica:{lonaxisRange:[-180,180],lataxisRange:[-90,-60],projType:"equirectangular",projRotate:[0,0,0]},oceania:{lonaxisRange:[-180,180],lataxisRange:[-50,25],projType:"equirectangular",projRotate:[0,0,0]}};Oa.clipPad=.001;Oa.precision=.1;Oa.landColor="#F0DC82";Oa.waterColor="#3399FF";Oa.locationmodeToLayer={"ISO-3":"countries","USA-states":"subunits","country names":"countries"};Oa.sphereSVG={type:"Sphere"};Oa.fillLayers={ocean:1,land:1,lakes:1};Oa.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1};Oa.layers=["bg","ocean","land","lakes","subunits","countries","coastlines","rivers","lataxis","lonaxis","frame","backplot","frontplot"];Oa.layersForChoropleth=["bg","ocean","land","subunits","countries","coastlines","lataxis","lonaxis","frame","backplot","rivers","lakes","frontplot"];Oa.layerNameToAdjective={ocean:"ocean",land:"land",lakes:"lake",subunits:"subunit",countries:"country",coastlines:"coastline",rivers:"river",frame:"frame"}});var G4=te((Wm,_N)=>{(function(e,r){typeof Wm=="object"&&typeof _N!="undefined"?r(Wm):(e=e||self,r(e.topojson=e.topojson||{}))})(Wm,function(e){"use strict";function r(x){return x}function t(x){if(x==null)return r;var _,A,k=x.scale[0],M=x.scale[1],D=x.translate[0],z=x.translate[1];return function(F,I){I||(_=A=0);var W=2,B=F.length,X=new Array(B);for(X[0]=(_+=F[0])*k+D,X[1]=(A+=F[1])*M+z;WD&&(D=W[0]),W[1]z&&(z=W[1])}function I(W){switch(W.type){case"GeometryCollection":W.geometries.forEach(I);break;case"Point":F(W.coordinates);break;case"MultiPoint":W.coordinates.forEach(F);break}}x.arcs.forEach(function(W){for(var B=-1,X=W.length,V;++BD&&(D=V[0]),V[1]z&&(z=V[1])});for(A in x.objects)I(x.objects[A]);return[k,M,D,z]}function a(x,_){for(var A,k=x.length,M=k-_;M<--k;)A=x[M],x[M++]=x[k],x[k]=A}function i(x,_){return typeof _=="string"&&(_=x.objects[_]),_.type==="GeometryCollection"?{type:"FeatureCollection",features:_.geometries.map(function(A){return o(x,A)})}:o(x,_)}function o(x,_){var A=_.id,k=_.bbox,M=_.properties==null?{}:_.properties,D=l(x,_);return A==null&&k==null?{type:"Feature",properties:M,geometry:D}:k==null?{type:"Feature",id:A,properties:M,geometry:D}:{type:"Feature",id:A,bbox:k,properties:M,geometry:D}}function l(x,_){var A=t(x.transform),k=x.arcs;function M(B,X){X.length&&X.pop();for(var V=k[B<0?~B:B],re=0,ae=V.length;re1)k=v(x,_,A);else for(M=0,k=new Array(D=x.arcs.length);M1)for(var X=1,V=F(W[0]),re,ae;XV&&(ae=W[0],W[0]=W[X],W[X]=ae,V=re);return W}).filter(function(I){return I.length>0})}}function p(x,_){for(var A=0,k=x.length;A>>1;x[M]<_?A=M+1:k=M}return A}function y(x){var _={},A=x.map(function(){return[]});function k(Q,ee){Q.forEach(function(fe){fe<0&&(fe=~fe);var he=_[fe];he?he.push(ee):_[fe]=[ee]})}function M(Q,ee){Q.forEach(function(fe){k(fe,ee)})}function D(Q,ee){Q.type==="GeometryCollection"?Q.geometries.forEach(function(fe){D(fe,ee)}):Q.type in z&&z[Q.type](Q.arcs,ee)}var z={LineString:k,MultiLineString:M,Polygon:M,MultiPolygon:function(Q,ee){Q.forEach(function(fe){M(fe,ee)})}};x.forEach(D);for(var F in _)for(var I=_[F],W=I.length,B=0;B=2))throw new Error("n must be \u22652");I=x.bbox||n(x);var A=I[0],k=I[1],M=I[2],D=I[3],z;_={scale:[M-A?(M-A)/(z-1):1,D-k?(D-k)/(z-1):1],translate:[A,k]}}else I=x.bbox;var F=b(_),I,W,B=x.objects,X={};function V(Q){return F(Q)}function re(Q){var ee;switch(Q.type){case"GeometryCollection":ee={type:"GeometryCollection",geometries:Q.geometries.map(re)};break;case"Point":ee={type:"Point",coordinates:V(Q.coordinates)};break;case"MultiPoint":ee={type:"MultiPoint",coordinates:Q.coordinates.map(V)};break;default:return Q}return Q.id!=null&&(ee.id=Q.id),Q.bbox!=null&&(ee.bbox=Q.bbox),Q.properties!=null&&(ee.properties=Q.properties),ee}function ae(Q){var ee=0,fe=1,he=Q.length,Le,Ie=new Array(he);for(Ie[0]=F(Q[0],0);++ee{"use strict";var V4=xN.exports={},Vne=Ih().locationmodeToLayer,Wne=G4().feature;V4.getTopojsonName=function(e){return[e.scope.replace(/ /g,"-"),"_",e.resolution.toString(),"m"].join("")};V4.getTopojsonPath=function(e,r){return e+=e.endsWith("/")?"":"/",`${e}${r}.json`};V4.getTopojsonFeatures=function(e,r){var t=Vne[e.locationmode],n=r.objects[t];return Wne(r,n).features}});var wN=te(Hh=>{"use strict";var Zne=Rn().BADNUM;Hh.calcTraceToLineCoords=function(e){for(var r=e[0].trace,t=r.connectgaps,n=[],a=[],i=0;i0&&(n.push(a),a=[])}return a.length>0&&n.push(a),n};Hh.makeLine=function(e){return e.length===1?{type:"LineString",coordinates:e[0]}:{type:"MultiLineString",coordinates:e}};Hh.makePolygon=function(e){if(e.length===1)return{type:"Polygon",coordinates:e};for(var r=new Array(e.length),t=0;t{MN.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xE7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xE9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xE9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xE3)o.?tom(e|\xE9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}});var Jm=te(gn=>{"use strict";Object.defineProperty(gn,"__esModule",{value:!0});var Hi=63710088e-1,Z4={centimeters:Hi*100,centimetres:Hi*100,degrees:360/(2*Math.PI),feet:Hi*3.28084,inches:Hi*39.37,kilometers:Hi/1e3,kilometres:Hi/1e3,meters:Hi,metres:Hi,miles:Hi/1609.344,millimeters:Hi*1e3,millimetres:Hi*1e3,nauticalmiles:Hi/1852,radians:1,yards:Hi*1.0936},W4={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,nauticalmiles:29155334959812285e-23,millimeters:1e6,millimetres:1e6,yards:1.195990046};function hf(e,r,t={}){let n={type:"Feature"};return(t.id===0||t.id)&&(n.id=t.id),t.bbox&&(n.bbox=t.bbox),n.properties=r||{},n.geometry=e,n}function Xne(e,r,t={}){switch(e){case"Point":return X4(r).geometry;case"LineString":return J4(r).geometry;case"Polygon":return j4(r).geometry;case"MultiPoint":return kN(r).geometry;case"MultiLineString":return TN(r).geometry;case"MultiPolygon":return SN(r).geometry;default:throw new Error(e+" is invalid")}}function X4(e,r,t={}){if(!e)throw new Error("coordinates is required");if(!Array.isArray(e))throw new Error("coordinates must be an Array");if(e.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!Xm(e[0])||!Xm(e[1]))throw new Error("coordinates must contain numbers");return hf({type:"Point",coordinates:e},r,t)}function jne(e,r,t={}){return jm(e.map(n=>X4(n,r)),t)}function j4(e,r,t={}){for(let a of e){if(a.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(a[a.length-1].length!==a[0].length)throw new Error("First and last Position are not equivalent.");for(let i=0;ij4(n,r)),t)}function J4(e,r,t={}){if(e.length<2)throw new Error("coordinates must be an array of two or more positions");return hf({type:"LineString",coordinates:e},r,t)}function $ne(e,r,t={}){return jm(e.map(n=>J4(n,r)),t)}function jm(e,r={}){let t={type:"FeatureCollection"};return r.id&&(t.id=r.id),r.bbox&&(t.bbox=r.bbox),t.features=e,t}function TN(e,r,t={}){return hf({type:"MultiLineString",coordinates:e},r,t)}function kN(e,r,t={}){return hf({type:"MultiPoint",coordinates:e},r,t)}function SN(e,r,t={}){return hf({type:"MultiPolygon",coordinates:e},r,t)}function Kne(e,r,t={}){return hf({type:"GeometryCollection",geometries:e},r,t)}function Qne(e,r=0){if(r&&!(r>=0))throw new Error("precision must be a positive number");let t=Math.pow(10,r||0);return Math.round(e*t)/t}function CN(e,r="kilometers"){let t=Z4[r];if(!t)throw new Error(r+" units is invalid");return e*t}function $4(e,r="kilometers"){let t=Z4[r];if(!t)throw new Error(r+" units is invalid");return e/t}function eae(e,r){return LN($4(e,r))}function rae(e){let r=e%360;return r<0&&(r+=360),r}function tae(e){return e=e%360,e>180?e-360:e<-180?e+360:e}function LN(e){return e%(2*Math.PI)*180/Math.PI}function nae(e){return e%360*Math.PI/180}function aae(e,r="kilometers",t="kilometers"){if(!(e>=0))throw new Error("length must be a positive number");return CN($4(e,r),t)}function iae(e,r="meters",t="kilometers"){if(!(e>=0))throw new Error("area must be a positive number");let n=W4[r];if(!n)throw new Error("invalid original units");let a=W4[t];if(!a)throw new Error("invalid final units");return e/n*a}function Xm(e){return!isNaN(e)&&e!==null&&!Array.isArray(e)}function oae(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function lae(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(e.length!==4&&e.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach(r=>{if(!Xm(r))throw new Error("bbox must only contain numbers")})}function sae(e){if(!e)throw new Error("id is required");if(["string","number"].indexOf(typeof e)===-1)throw new Error("id must be a number or a string")}gn.areaFactors=W4;gn.azimuthToBearing=tae;gn.bearingToAzimuth=rae;gn.convertArea=iae;gn.convertLength=aae;gn.degreesToRadians=nae;gn.earthRadius=Hi;gn.factors=Z4;gn.feature=hf;gn.featureCollection=jm;gn.geometry=Xne;gn.geometryCollection=Kne;gn.isNumber=Xm;gn.isObject=oae;gn.lengthToDegrees=eae;gn.lengthToRadians=$4;gn.lineString=J4;gn.lineStrings=$ne;gn.multiLineString=TN;gn.multiPoint=kN;gn.multiPolygon=SN;gn.point=X4;gn.points=jne;gn.polygon=j4;gn.polygons=Jne;gn.radiansToDegrees=LN;gn.radiansToLength=CN;gn.round=Qne;gn.validateBBox=lae;gn.validateId=sae});var Km=te(ka=>{"use strict";Object.defineProperty(ka,"__esModule",{value:!0});var oi=Jm();function Bh(e,r,t){if(e!==null)for(var n,a,i,o,l,s,u,f=0,v=0,h,d=e.type,m=d==="FeatureCollection",p=d==="Feature",y=m?e.features.length:1,b=0;bs||m>u||p>f){l=v,s=n,u=m,f=p,i=0;return}var y=oi.lineString.call(void 0,[l,v],t.properties);if(r(y,n,a,p,i)===!1)return!1;i++,l=v})===!1)return!1}}})}function pae(e,r,t){var n=t,a=!1;return EN(e,function(i,o,l,s,u){a===!1&&t===void 0?n=i:n=r(n,i,o,l,s,u),a=!0}),n}function PN(e,r){if(!e)throw new Error("geojson is required");$m(e,function(t,n,a){if(t.geometry!==null){var i=t.geometry.type,o=t.geometry.coordinates;switch(i){case"LineString":if(r(t,n,a,0,0)===!1)return!1;break;case"Polygon":for(var l=0;l{"use strict";Object.defineProperty(Qm,"__esModule",{value:!0});var RN=Jm(),bae=Km();function FN(e){return bae.geomReduce.call(void 0,e,(r,t)=>r+_ae(t),0)}function _ae(e){let r=0,t;switch(e.type){case"Polygon":return zN(e.coordinates);case"MultiPolygon":for(t=0;t0){r+=Math.abs(NN(e[0]));for(let t=1;t=r?(n+2)%r:n+2],l=a[0]*Q4,s=i[1]*Q4,u=o[0]*Q4;t+=(u-l)*Math.sin(s),n++}return t*xae}var wae=FN;Qm.area=FN;Qm.default=wae});var BN=te(ey=>{"use strict";Object.defineProperty(ey,"__esModule",{value:!0});var Mae=Jm(),Aae=Km();function HN(e,r={}){let t=0,n=0,a=0;return Aae.coordEach.call(void 0,e,function(i){t+=i[0],n+=i[1],a++},!0),Mae.point.call(void 0,[t/a,n/a],r.properties)}var Tae=HN;ey.centroid=HN;ey.default=Tae});var UN=te(ry=>{"use strict";Object.defineProperty(ry,"__esModule",{value:!0});var kae=Km();function ON(e,r={}){if(e.bbox!=null&&r.recompute!==!0)return e.bbox;let t=[1/0,1/0,-1/0,-1/0];return kae.coordEach.call(void 0,e,n=>{t[0]>n[0]&&(t[0]=n[0]),t[1]>n[1]&&(t[1]=n[1]),t[2]{"use strict";var Cae=kt(),VN=AN(),{area:Lae}=IN(),{centroid:qae}=BN(),{bbox:Dae}=UN(),YN=qd(),Pv=Pu(),Eae=Gs(),Pae=e1(),ty=wg(),GN=Object.keys(VN),Rae={"ISO-3":YN,"USA-states":YN,"country names":zae};function zae(e){for(var r=0;r0&&f[v+1][0]<0)return v;return null}switch(n==="RUS"||n==="FJI"?i=function(f){var v;if(u(f)===null)v=f;else for(v=new Array(f.length),s=0;sv?h[d++]=[f[s][0]+360,f[s][1]]:s===v?(h[d++]=f[s],h[d++]=[f[s][0],-90]):h[d++]=f[s];var m=ty.tester(h);m.pts.pop(),a.push(m)}:i=function(f){a.push(ty.tester(f))},r.type){case"MultiPolygon":for(o=0;o0?m.properties.ct=Hae(m):m.properties.ct=[NaN,NaN],h.fIn=f,h.fOut=m,a.push(m)}else Pv.log(["Location",h.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete n[v]}switch(t.type){case"FeatureCollection":var s=t.features;for(i=0;ia&&(a=l,t=o)}else t=r;return qae(t).geometry.coordinates}function Bae(e){var r=window.PlotlyGeoAssets||{},t=[];function n(s){return new Promise(function(u,f){Cae.json(s,function(v,h){if(v){delete r[s];var d=v.status===404?'GeoJSON at URL "'+s+'" does not exist.':"Unexpected error while fetching from "+s;return f(new Error(d))}return r[s]=h,u(h)})})}function a(s){return new Promise(function(u,f){var v=0,h=setInterval(function(){if(r[s]&&r[s]!=="pending")return clearInterval(h),u(r[s]);if(v>100)return clearInterval(h),f("Unexpected error while fetching from "+s);v++},50)})}for(var i=0;i{"use strict";var Uae=kt(),Yae=fn(),XN=Et(),jN=wh(),Gae=jN.stylePoints,Vae=jN.styleText;JN.exports=function(r,t){t&&Wae(r,t)};function Wae(e,r){var t=r[0].trace,n=r[0].node3;n.style("opacity",r[0].trace.opacity),Gae(n,t,e),Vae(n,t,e),n.selectAll("path.js-line").style("fill","none").each(function(a){var i=Uae.select(this),o=a.trace,l=o.line||{};i.call(XN.stroke,l.color).call(Yae.dashLine,l.dash||"",l.width||0),o.fill!=="none"&&i.call(XN.fill,o.fillcolor)})}});var a_=te((Kve,QN)=>{"use strict";var $N=kt(),iy=pr(),Zae=Zm().getTopojsonFeatures,r_=wN(),ay=ny(),KN=ju().findExtremes,n_=Rn().BADNUM,Xae=am().calcMarkerSize,t_=Qa(),jae=e_();function Jae(e,r,t){var n=r.layers.frontplot.select(".scatterlayer"),a=iy.makeTraceGroups(n,t,"trace scattergeo");function i(o,l){o.lonlat[0]===n_&&$N.select(l).remove()}a.selectAll("*").remove(),a.each(function(o){var l=$N.select(this),s=o[0].trace;if(t_.hasLines(s)||s.fill!=="none"){var u=r_.calcTraceToLineCoords(o),f=s.fill!=="none"?r_.makePolygon(u):r_.makeLine(u);l.selectAll("path.js-line").data([{geojson:f,trace:s}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}t_.hasMarkers(s)&&l.selectAll("path.point").data(iy.identity).enter().append("path").classed("point",!0).each(function(v){i(v,this)}),t_.hasText(s)&&l.selectAll("g").data(iy.identity).enter().append("g").append("text").each(function(v){i(v,this)}),jae(e,o)})}function $ae(e,r){var t=e[0].trace,n=r[t.geo],a=n._subplot,i=t._length,o,l;if(iy.isArrayOrTypedArray(t.locations)){var s=t.locationmode,u=s==="geojson-id"?ay.extractTraceFeature(e):Zae(t,a.topojson);for(o=0;o{"use strict";var Kae=ss(),Qae=Rn().BADNUM,eie=Bb(),rie=pr().fillText,tie=Fh();eF.exports=function(r,t,n){var a=r.cd,i=a[0].trace,o=r.xa,l=r.ya,s=r.subplot,u=s.projection.isLonLatOverEdges,f=s.project;function v(C){var x=C.lonlat;if(x[0]===Qae||u(x))return 1/0;var _=f(x),A=f([t,n]),k=Math.abs(_[0]-A[0]),M=Math.abs(_[1]-A[1]),D=Math.max(3,C.mrc||0);return Math.max(Math.sqrt(k*k+M*M)-D,1-3/D)}if(Kae.getClosest(a,v,r),r.index!==!1){var h=a[r.index],d=h.lonlat,m=[o.c2p(d),l.c2p(d)],p=h.mrc||1;r.x0=m[0]-p,r.x1=m[0]+p,r.y0=m[1]-p,r.y1=m[1]+p,r.loc=h.loc,r.lon=d[0],r.lat=d[1];var y={};y[i.geo]={_subplot:s};var b=i._module.formatLabels(h,i,y);return r.lonLabel=b.lonLabel,r.latLabel=b.latLabel,r.color=eie(i,h),r.extraText=nie(i,h,r,a[0].t.labels),r.hovertemplate=i.hovertemplate,[r]}};function nie(e,r,t,n){if(e.hovertemplate)return;var a=r.hi||e.hoverinfo,i=a==="all"?tie.hoverinfo.flags:a.split("+"),o=i.indexOf("location")!==-1&&Array.isArray(e.locations),l=i.indexOf("lon")!==-1,s=i.indexOf("lat")!==-1,u=i.indexOf("text")!==-1,f=[];function v(h){return h+"\xB0"}return o?f.push(r.loc):l&&s?f.push("("+v(t.latLabel)+", "+v(t.lonLabel)+")"):l?f.push(n.lon+v(t.lonLabel)):s&&f.push(n.lat+v(t.latLabel)),u&&rie(r,e,f),f.join("
")}});var nF=te((e1e,tF)=>{"use strict";tF.exports=function(r,t,n,a,i){r.lon=t.lon,r.lat=t.lat,r.location=t.loc?t.loc:null;var o=a[i];return o.fIn&&o.fIn.properties&&(r.properties=o.fIn.properties),r}});var oF=te((r1e,iF)=>{"use strict";var aF=Qa(),aie=Rn().BADNUM;iF.exports=function(r,t){var n=r.cd,a=r.xaxis,i=r.yaxis,o=[],l=n[0].trace,s,u,f,v,h,d=!aF.hasMarkers(l)&&!aF.hasText(l);if(d)return[];if(t===!1)for(h=0;h{(function(e,r){r(typeof oy=="object"&&typeof lF!="undefined"?oy:e.d3=e.d3||{})})(oy,function(e){"use strict";function r(ue,ye){return ueye?1:ue>=ye?0:NaN}function t(ue){return ue.length===1&&(ue=n(ue)),{left:function(ye,Me,pe,U){for(pe==null&&(pe=0),U==null&&(U=ye.length);pe>>1;ue(ye[K],Me)<0?pe=K+1:U=K}return pe},right:function(ye,Me,pe,U){for(pe==null&&(pe=0),U==null&&(U=ye.length);pe>>1;ue(ye[K],Me)>0?U=K:pe=K+1}return pe}}}function n(ue){return function(ye,Me){return r(ue(ye),Me)}}var a=t(r),i=a.right,o=a.left;function l(ue,ye){ye==null&&(ye=s);for(var Me=0,pe=ue.length-1,U=ue[0],K=new Array(pe<0?0:pe);Meue?1:ye>=ue?0:NaN}function v(ue){return ue===null?NaN:+ue}function h(ue,ye){var Me=ue.length,pe=0,U=-1,K=0,$,ke,Be=0;if(ye==null)for(;++U1)return Be/(pe-1)}function d(ue,ye){var Me=h(ue,ye);return Me&&Math.sqrt(Me)}function m(ue,ye){var Me=ue.length,pe=-1,U,K,$;if(ye==null){for(;++pe=U)for(K=$=U;++peU&&(K=U),$=U)for(K=$=U;++peU&&(K=U),$0)return[ue];if((pe=ye0)for(ue=Math.ceil(ue/ke),ye=Math.floor(ye/ke),$=new Array(K=Math.ceil(ye-ue+1));++U=0?(K>=A?10:K>=k?5:K>=M?2:1)*Math.pow(10,U):-Math.pow(10,-U)/(K>=A?10:K>=k?5:K>=M?2:1)}function F(ue,ye,Me){var pe=Math.abs(ye-ue)/Math.max(0,Me),U=Math.pow(10,Math.floor(Math.log(pe)/Math.LN10)),K=pe/U;return K>=A?U*=10:K>=k?U*=5:K>=M&&(U*=2),yeor;)Ye.pop(),--nr;var lr=new Array(nr+1),vr;for(K=0;K<=nr;++K)vr=lr[K]=[],vr.x0=K>0?Ye[K-1]:ir,vr.x1=K=1)return+Me(ue[pe-1],pe-1,ue);var pe,U=(pe-1)*ye,K=Math.floor(U),$=+Me(ue[K],K,ue),ke=+Me(ue[K+1],K+1,ue);return $+(ke-$)*(U-K)}}function X(ue,ye,Me){return ue=b.call(ue,v).sort(r),Math.ceil((Me-ye)/(2*(B(ue,.75)-B(ue,.25))*Math.pow(ue.length,-1/3)))}function V(ue,ye,Me){return Math.ceil((Me-ye)/(3.5*d(ue)*Math.pow(ue.length,-1/3)))}function re(ue,ye){var Me=ue.length,pe=-1,U,K;if(ye==null){for(;++pe=U)for(K=U;++peK&&(K=U)}else for(;++pe=U)for(K=U;++peK&&(K=U);return K}function ae(ue,ye){var Me=ue.length,pe=Me,U=-1,K,$=0;if(ye==null)for(;++U=0;)for($=ue[ye],Me=$.length;--Me>=0;)K[--U]=$[Me];return K}function fe(ue,ye){var Me=ue.length,pe=-1,U,K;if(ye==null){for(;++pe=U)for(K=U;++peU&&(K=U)}else for(;++pe=U)for(K=U;++peU&&(K=U);return K}function he(ue,ye){for(var Me=ye.length,pe=new Array(Me);Me--;)pe[Me]=ue[ye[Me]];return pe}function Le(ue,ye){if(Me=ue.length){var Me,pe=0,U=0,K,$=ue[U];for(ye==null&&(ye=r);++pe{(function(e,r){typeof ly=="object"&&typeof sF!="undefined"?r(ly,i_()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(ly,function(e,r){"use strict";function t(){return new n}function n(){this.reset()}n.prototype={constructor:n,reset:function(){this.s=this.t=0},add:function(H){i(a,H,this.t),i(this,a.s,this.s),this.s?this.t+=a.t:this.s=a.t},valueOf:function(){return this.s}};var a=new n;function i(H,J,ce){var oe=H.s=J+ce,we=oe-J,He=oe-we;H.t=J-He+(ce-we)}var o=1e-6,l=1e-12,s=Math.PI,u=s/2,f=s/4,v=s*2,h=180/s,d=s/180,m=Math.abs,p=Math.atan,y=Math.atan2,b=Math.cos,C=Math.ceil,x=Math.exp,_=Math.log,A=Math.pow,k=Math.sin,M=Math.sign||function(H){return H>0?1:H<0?-1:0},D=Math.sqrt,z=Math.tan;function F(H){return H>1?0:H<-1?s:Math.acos(H)}function I(H){return H>1?u:H<-1?-u:Math.asin(H)}function W(H){return(H=k(H/2))*H}function B(){}function X(H,J){H&&re.hasOwnProperty(H.type)&&re[H.type](H,J)}var V={Feature:function(H,J){X(H.geometry,J)},FeatureCollection:function(H,J){for(var ce=H.features,oe=-1,we=ce.length;++oe=0?1:-1,we=oe*ce,He=b(J),je=k(J),ar=Ce*je,sr=Xe*He+ar*b(we),br=ar*oe*k(we);fe.add(y(br,sr)),ze=H,Xe=He,Ce=je}function U(H){return he.reset(),ee(H,Qe),he*2}function K(H){return[y(H[1],H[0]),I(H[2])]}function $(H){var J=H[0],ce=H[1],oe=b(ce);return[oe*b(J),oe*k(J),k(ce)]}function ke(H,J){return H[0]*J[0]+H[1]*J[1]+H[2]*J[2]}function Be(H,J){return[H[1]*J[2]-H[2]*J[1],H[2]*J[0]-H[0]*J[2],H[0]*J[1]-H[1]*J[0]]}function Ne(H,J){H[0]+=J[0],H[1]+=J[1],H[2]+=J[2]}function ir(H,J){return[H[0]*J,H[1]*J,H[2]*J]}function or(H){var J=D(H[0]*H[0]+H[1]*H[1]+H[2]*H[2]);H[0]/=J,H[1]/=J,H[2]/=J}var Ye,nr,lr,vr,Je,dr,gr,Te,Oe=t(),kr,Ur,tr={point:Ue,lineStart:mr,lineEnd:Tr,polygonStart:function(){tr.point=yr,tr.lineStart=wr,tr.lineEnd=Hr,Oe.reset(),Qe.polygonStart()},polygonEnd:function(){Qe.polygonEnd(),tr.point=Ue,tr.lineStart=mr,tr.lineEnd=Tr,fe<0?(Ye=-(lr=180),nr=-(vr=90)):Oe>o?vr=90:Oe<-o&&(nr=-90),Ur[0]=Ye,Ur[1]=lr},sphere:function(){Ye=-(lr=180),nr=-(vr=90)}};function Ue(H,J){kr.push(Ur=[Ye=H,lr=H]),Jvr&&(vr=J)}function Ze(H,J){var ce=$([H*d,J*d]);if(Te){var oe=Be(Te,ce),we=[oe[1],-oe[0],0],He=Be(we,oe);or(He),He=K(He);var je=H-Je,ar=je>0?1:-1,sr=He[0]*h*ar,br,$e=m(je)>180;$e^(ar*Jevr&&(vr=br)):(sr=(sr+360)%360-180,$e^(ar*Jevr&&(vr=J))),$e?HSr(Ye,lr)&&(lr=H):Sr(H,lr)>Sr(Ye,lr)&&(Ye=H):lr>=Ye?(Hlr&&(lr=H)):H>Je?Sr(Ye,H)>Sr(Ye,lr)&&(lr=H):Sr(H,lr)>Sr(Ye,lr)&&(Ye=H)}else kr.push(Ur=[Ye=H,lr=H]);Jvr&&(vr=J),Te=ce,Je=H}function mr(){tr.point=Ze}function Tr(){Ur[0]=Ye,Ur[1]=lr,tr.point=Ue,Te=null}function yr(H,J){if(Te){var ce=H-Je;Oe.add(m(ce)>180?ce+(ce>0?360:-360):ce)}else dr=H,gr=J;Qe.point(H,J),Ze(H,J)}function wr(){Qe.lineStart()}function Hr(){yr(dr,gr),Qe.lineEnd(),m(Oe)>o&&(Ye=-(lr=180)),Ur[0]=Ye,Ur[1]=lr,Te=null}function Sr(H,J){return(J-=H)<0?J+360:J}function Dr(H,J){return H[0]-J[0]}function ur(H,J){return H[0]<=H[1]?H[0]<=J&&J<=H[1]:JSr(oe[0],oe[1])&&(oe[1]=we[1]),Sr(we[0],oe[1])>Sr(oe[0],oe[1])&&(oe[0]=we[0])):He.push(oe=we);for(je=-1/0,ce=He.length-1,J=0,oe=He[ce];J<=ce;oe=we,++J)we=He[J],(ar=Sr(oe[1],we[0]))>je&&(je=ar,Ye=we[0],lr=oe[1])}return kr=Ur=null,Ye===1/0||nr===1/0?[[NaN,NaN],[NaN,NaN]]:[[Ye,nr],[lr,vr]]}var Ae,Ke,rr,Lr,Yr,Fr,lt,xt,Rt,Kt,cn,pn,Mn,Xt,Qt,en,an={sphere:B,point:jr,lineStart:Nt,lineEnd:vn,polygonStart:function(){an.lineStart=Yt,an.lineEnd=Bn},polygonEnd:function(){an.lineStart=Nt,an.lineEnd=vn}};function jr(H,J){H*=d,J*=d;var ce=b(J);Ut(ce*b(H),ce*k(H),k(J))}function Ut(H,J,ce){++Ae,rr+=(H-rr)/Ae,Lr+=(J-Lr)/Ae,Yr+=(ce-Yr)/Ae}function Nt(){an.point=rn}function rn(H,J){H*=d,J*=d;var ce=b(J);Xt=ce*b(H),Qt=ce*k(H),en=k(J),an.point=Tn,Ut(Xt,Qt,en)}function Tn(H,J){H*=d,J*=d;var ce=b(J),oe=ce*b(H),we=ce*k(H),He=k(J),je=y(D((je=Qt*He-en*we)*je+(je=en*oe-Xt*He)*je+(je=Xt*we-Qt*oe)*je),Xt*oe+Qt*we+en*He);Ke+=je,Fr+=je*(Xt+(Xt=oe)),lt+=je*(Qt+(Qt=we)),xt+=je*(en+(en=He)),Ut(Xt,Qt,en)}function vn(){an.point=jr}function Yt(){an.point=Ga}function Bn(){kn(pn,Mn),an.point=jr}function Ga(H,J){pn=H,Mn=J,H*=d,J*=d,an.point=kn;var ce=b(J);Xt=ce*b(H),Qt=ce*k(H),en=k(J),Ut(Xt,Qt,en)}function kn(H,J){H*=d,J*=d;var ce=b(J),oe=ce*b(H),we=ce*k(H),He=k(J),je=Qt*He-en*we,ar=en*oe-Xt*He,sr=Xt*we-Qt*oe,br=D(je*je+ar*ar+sr*sr),$e=I(br),hr=br&&-$e/br;Rt+=hr*je,Kt+=hr*ar,cn+=hr*sr,Ke+=$e,Fr+=$e*(Xt+(Xt=oe)),lt+=$e*(Qt+(Qt=we)),xt+=$e*(en+(en=He)),Ut(Xt,Qt,en)}function Va(H){Ae=Ke=rr=Lr=Yr=Fr=lt=xt=Rt=Kt=cn=0,ee(H,an);var J=Rt,ce=Kt,oe=cn,we=J*J+ce*ce+oe*oe;return wes?H+Math.round(-H/v)*v:H,J]}dn.invert=dn;function On(H,J,ce){return(H%=v)?J||ce?hn(io(H),mi(J,ce)):io(H):J||ce?mi(J,ce):dn}function gi(H){return function(J,ce){return J+=H,[J>s?J-v:J<-s?J+v:J,ce]}}function io(H){var J=gi(H);return J.invert=gi(-H),J}function mi(H,J){var ce=b(H),oe=k(H),we=b(J),He=k(J);function je(ar,sr){var br=b(sr),$e=b(ar)*br,hr=k(ar)*br,fr=k(sr),Mr=fr*ce+$e*oe;return[y(hr*we-Mr*He,$e*ce-fr*oe),I(Mr*we+hr*He)]}return je.invert=function(ar,sr){var br=b(sr),$e=b(ar)*br,hr=k(ar)*br,fr=k(sr),Mr=fr*we-hr*He;return[y(hr*we+fr*He,$e*ce+Mr*oe),I(Mr*ce-$e*oe)]},je}function ms(H){H=On(H[0]*d,H[1]*d,H.length>2?H[2]*d:0);function J(ce){return ce=H(ce[0]*d,ce[1]*d),ce[0]*=h,ce[1]*=h,ce}return J.invert=function(ce){return ce=H.invert(ce[0]*d,ce[1]*d),ce[0]*=h,ce[1]*=h,ce},J}function El(H,J,ce,oe,we,He){if(ce){var je=b(J),ar=k(J),sr=oe*ce;we==null?(we=J+oe*v,He=J-sr/2):(we=Oo(je,we),He=Oo(je,He),(oe>0?weHe)&&(we+=oe*v));for(var br,$e=we;oe>0?$e>He:$e1&&H.push(H.pop().concat(H.shift()))},result:function(){var ce=H;return H=[],J=null,ce}}}function Un(H,J){return m(H[0]-J[0])=0;--ar)we.point((hr=$e[ar])[0],hr[1]);else oe(fr.x,fr.p.x,-1,we);fr=fr.p}fr=fr.o,$e=fr.z,Mr=!Mr}while(!fr.v);we.lineEnd()}}}function bi(H){if(J=H.length){for(var J,ce=0,oe=H[0],we;++ce=0?1:-1,Wt=tn*Gt,mn=Wt>s,Ct=rt*it;if(Qr.add(y(Ct*tn*k(Wt),Jr*pt+Ct*b(Wt))),je+=mn?Gt+tn*v:Gt,mn^Mr>=ce^Er>=ce){var oa=Be($(fr),$(nt));or(oa);var Nn=Be(He,oa);or(Nn);var yn=(mn^Gt>=0?-1:1)*I(Nn[2]);(oe>yn||oe===yn&&(oa[0]||oa[1]))&&(ar+=mn^Gt>=0?1:-1)}}return(je<-o||je0){for(sr||(we.polygonStart(),sr=!0),we.lineStart(),pt=0;pt1&&Ir&2&&it.push(it.pop().concat(it.shift())),$e.push(it.filter(Zn))}}return fr}}function Zn(H){return H.length>1}function on(H,J){return((H=H.x)[0]<0?H[1]-u-o:u-H[1])-((J=J.x)[0]<0?J[1]-u-o:u-J[1])}var Pn=Br(function(){return!0},At,Go,[-s,-u]);function At(H){var J=NaN,ce=NaN,oe=NaN,we;return{lineStart:function(){H.lineStart(),we=1},point:function(He,je){var ar=He>0?s:-s,sr=m(He-J);m(sr-s)0?u:-u),H.point(oe,ce),H.lineEnd(),H.lineStart(),H.point(ar,ce),H.point(He,ce),we=0):oe!==ar&&sr>=s&&(m(J-oe)o?p((k(J)*(He=b(oe))*k(ce)-k(oe)*(we=b(J))*k(H))/(we*He*je)):(J+oe)/2}function Go(H,J,ce,oe){var we;if(H==null)we=ce*u,oe.point(-s,we),oe.point(0,we),oe.point(s,we),oe.point(s,0),oe.point(s,-we),oe.point(0,-we),oe.point(-s,-we),oe.point(-s,0),oe.point(-s,we);else if(m(H[0]-J[0])>o){var He=H[0]0,we=m(J)>o;function He($e,hr,fr,Mr){El(Mr,H,ce,fr,$e,hr)}function je($e,hr){return b($e)*b(hr)>J}function ar($e){var hr,fr,Mr,qr,rt;return{lineStart:function(){qr=Mr=!1,rt=1},point:function(Jr,tt){var nt=[Jr,tt],Er,Ir=je(Jr,tt),it=oe?Ir?0:br(Jr,tt):Ir?br(Jr+(Jr<0?s:-s),tt):0;if(!hr&&(qr=Mr=Ir)&&$e.lineStart(),Ir!==Mr&&(Er=sr(hr,nt),(!Er||Un(hr,Er)||Un(nt,Er))&&(nt[2]=1)),Ir!==Mr)rt=0,Ir?($e.lineStart(),Er=sr(nt,hr),$e.point(Er[0],Er[1])):(Er=sr(hr,nt),$e.point(Er[0],Er[1],2),$e.lineEnd()),hr=Er;else if(we&&hr&&oe^Ir){var pt;!(it&fr)&&(pt=sr(nt,hr,!0))&&(rt=0,oe?($e.lineStart(),$e.point(pt[0][0],pt[0][1]),$e.point(pt[1][0],pt[1][1]),$e.lineEnd()):($e.point(pt[1][0],pt[1][1]),$e.lineEnd(),$e.lineStart(),$e.point(pt[0][0],pt[0][1],3)))}Ir&&(!hr||!Un(hr,nt))&&$e.point(nt[0],nt[1]),hr=nt,Mr=Ir,fr=it},lineEnd:function(){Mr&&$e.lineEnd(),hr=null},clean:function(){return rt|(qr&&Mr)<<1}}}function sr($e,hr,fr){var Mr=$($e),qr=$(hr),rt=[1,0,0],Jr=Be(Mr,qr),tt=ke(Jr,Jr),nt=Jr[0],Er=tt-nt*nt;if(!Er)return!fr&&$e;var Ir=J*tt/Er,it=-J*nt/Er,pt=Be(rt,Jr),Gt=ir(rt,Ir),tn=ir(Jr,it);Ne(Gt,tn);var Wt=pt,mn=ke(Gt,Wt),Ct=ke(Wt,Wt),oa=mn*mn-Ct*(ke(Gt,Gt)-1);if(!(oa<0)){var Nn=D(oa),yn=ir(Wt,(-mn-Nn)/Ct);if(Ne(yn,Gt),yn=K(yn),!fr)return yn;var Gr=$e[0],Vt=hr[0],Yn=$e[1],pa=hr[1],Xa;Vt0^yn[1]<(m(yn[0]-Gr)s^(Gr<=yn[0]&&yn[0]<=Vt)){var ui=ir(Wt,(-mn+Nn)/Ct);return Ne(ui,Gt),[yn,K(ui)]}}}function br($e,hr){var fr=oe?H:s-H,Mr=0;return $e<-fr?Mr|=1:$e>fr&&(Mr|=2),hr<-fr?Mr|=4:hr>fr&&(Mr|=8),Mr}return Br(je,ar,He,oe?[0,-H]:[-s,H-s])}function cu(H,J,ce,oe,we,He){var je=H[0],ar=H[1],sr=J[0],br=J[1],$e=0,hr=1,fr=sr-je,Mr=br-ar,qr;if(qr=ce-je,!(!fr&&qr>0)){if(qr/=fr,fr<0){if(qr<$e)return;qr0){if(qr>hr)return;qr>$e&&($e=qr)}if(qr=we-je,!(!fr&&qr<0)){if(qr/=fr,fr<0){if(qr>hr)return;qr>$e&&($e=qr)}else if(fr>0){if(qr<$e)return;qr0)){if(qr/=Mr,Mr<0){if(qr<$e)return;qr0){if(qr>hr)return;qr>$e&&($e=qr)}if(qr=He-ar,!(!Mr&&qr<0)){if(qr/=Mr,Mr<0){if(qr>hr)return;qr>$e&&($e=qr)}else if(Mr>0){if(qr<$e)return;qr0&&(H[0]=je+$e*fr,H[1]=ar+$e*Mr),hr<1&&(J[0]=je+hr*fr,J[1]=ar+hr*Mr),!0}}}}}var oo=1e9,Vo=-oo;function Wo(H,J,ce,oe){function we(br,$e){return H<=br&&br<=ce&&J<=$e&&$e<=oe}function He(br,$e,hr,fr){var Mr=0,qr=0;if(br==null||(Mr=je(br,hr))!==(qr=je($e,hr))||sr(br,$e)<0^hr>0)do fr.point(Mr===0||Mr===3?H:ce,Mr>1?oe:J);while((Mr=(Mr+hr+4)%4)!==qr);else fr.point($e[0],$e[1])}function je(br,$e){return m(br[0]-H)0?0:3:m(br[0]-ce)0?2:1:m(br[1]-J)0?1:0:$e>0?3:2}function ar(br,$e){return sr(br.x,$e.x)}function sr(br,$e){var hr=je(br,1),fr=je($e,1);return hr!==fr?hr-fr:hr===0?$e[1]-br[1]:hr===1?br[0]-$e[0]:hr===2?br[1]-$e[1]:$e[0]-br[0]}return function(br){var $e=br,hr=Uo(),fr,Mr,qr,rt,Jr,tt,nt,Er,Ir,it,pt,Gt={point:tn,lineStart:oa,lineEnd:Nn,polygonStart:mn,polygonEnd:Ct};function tn(Gr,Vt){we(Gr,Vt)&&$e.point(Gr,Vt)}function Wt(){for(var Gr=0,Vt=0,Yn=Mr.length;Vtoe&&(il-al)*(oe-ui)>(Zl-ui)*(H-al)&&++Gr:Zl<=oe&&(il-al)*(oe-ui)<(Zl-ui)*(H-al)&&--Gr;return Gr}function mn(){$e=hr,fr=[],Mr=[],pt=!0}function Ct(){var Gr=Wt(),Vt=pt&&Gr,Yn=(fr=r.merge(fr)).length;(Vt||Yn)&&(br.polygonStart(),Vt&&(br.lineStart(),He(null,null,1,br),br.lineEnd()),Yn&&Yo(fr,ar,Gr,He,br),br.polygonEnd()),$e=br,fr=Mr=qr=null}function oa(){Gt.point=yn,Mr&&Mr.push(qr=[]),it=!0,Ir=!1,nt=Er=NaN}function Nn(){fr&&(yn(rt,Jr),tt&&Ir&&hr.rejoin(),fr.push(hr.result())),Gt.point=tn,Ir&&$e.lineEnd()}function yn(Gr,Vt){var Yn=we(Gr,Vt);if(Mr&&qr.push([Gr,Vt]),it)rt=Gr,Jr=Vt,tt=Yn,it=!1,Yn&&($e.lineStart(),$e.point(Gr,Vt));else if(Yn&&Ir)$e.point(Gr,Vt);else{var pa=[nt=Math.max(Vo,Math.min(oo,nt)),Er=Math.max(Vo,Math.min(oo,Er))],Xa=[Gr=Math.max(Vo,Math.min(oo,Gr)),Vt=Math.max(Vo,Math.min(oo,Vt))];cu(pa,Xa,H,J,ce,oe)?(Ir||($e.lineStart(),$e.point(pa[0],pa[1])),$e.point(Xa[0],Xa[1]),Yn||$e.lineEnd(),pt=!1):Yn&&($e.lineStart(),$e.point(Gr,Vt),pt=!1)}nt=Gr,Er=Vt,Ir=Yn}return Gt}}function vu(){var H=0,J=0,ce=960,oe=500,we,He,je;return je={stream:function(ar){return we&&He===ar?we:we=Wo(H,J,ce,oe)(He=ar)},extent:function(ar){return arguments.length?(H=+ar[0][0],J=+ar[0][1],ce=+ar[1][0],oe=+ar[1][1],we=He=null,je):[[H,J],[ce,oe]]}}}var Pl=t(),Rl,_i,lo,Zo={sphere:B,point:B,lineStart:zl,lineEnd:B,polygonStart:B,polygonEnd:B};function zl(){Zo.point=wf,Zo.lineEnd=bs}function bs(){Zo.point=Zo.lineEnd=B}function wf(H,J){H*=d,J*=d,Rl=H,_i=k(J),lo=b(J),Zo.point=Xc}function Xc(H,J){H*=d,J*=d;var ce=k(J),oe=b(J),we=m(H-Rl),He=b(we),je=k(we),ar=oe*je,sr=lo*ce-_i*oe*He,br=_i*ce+lo*oe*He;Pl.add(y(D(ar*ar+sr*sr),br)),Rl=H,_i=ce,lo=oe}function _s(H){return Pl.reset(),ee(H,Zo),+Pl}var xs=[null,null],ws={type:"LineString",coordinates:xs};function Xo(H,J){return xs[0]=H,xs[1]=J,_s(ws)}var so={Feature:function(H,J){return Bi(H.geometry,J)},FeatureCollection:function(H,J){for(var ce=H.features,oe=-1,we=ce.length;++oe0&&(we=Xo(H[He],H[He-1]),we>0&&ce<=we&&oe<=we&&(ce+oe-we)*(1-Math.pow((ce-oe)/we,2))o}).map(fr)).concat(r.range(C(He/br)*br,we,br).filter(function(Er){return m(Er%hr)>o}).map(Mr))}return tt.lines=function(){return nt().map(function(Er){return{type:"LineString",coordinates:Er}})},tt.outline=function(){return{type:"Polygon",coordinates:[qr(oe).concat(rt(je).slice(1),qr(ce).reverse().slice(1),rt(ar).reverse().slice(1))]}},tt.extent=function(Er){return arguments.length?tt.extentMajor(Er).extentMinor(Er):tt.extentMinor()},tt.extentMajor=function(Er){return arguments.length?(oe=+Er[0][0],ce=+Er[1][0],ar=+Er[0][1],je=+Er[1][1],oe>ce&&(Er=oe,oe=ce,ce=Er),ar>je&&(Er=ar,ar=je,je=Er),tt.precision(Jr)):[[oe,ar],[ce,je]]},tt.extentMinor=function(Er){return arguments.length?(J=+Er[0][0],H=+Er[1][0],He=+Er[0][1],we=+Er[1][1],J>H&&(Er=J,J=H,H=Er),He>we&&(Er=He,He=we,we=Er),tt.precision(Jr)):[[J,He],[H,we]]},tt.step=function(Er){return arguments.length?tt.stepMajor(Er).stepMinor(Er):tt.stepMinor()},tt.stepMajor=function(Er){return arguments.length?($e=+Er[0],hr=+Er[1],tt):[$e,hr]},tt.stepMinor=function(Er){return arguments.length?(sr=+Er[0],br=+Er[1],tt):[sr,br]},tt.precision=function(Er){return arguments.length?(Jr=+Er,fr=Oi(He,we,90),Mr=As(J,H,Jr),qr=Oi(ar,je,90),rt=As(oe,ce,Jr),tt):Jr},tt.extentMajor([[-180,-90+o],[180,90-o]]).extentMinor([[-180,-80-o],[180,80+o]])}function Ts(){return Jc()()}function Bv(H,J){var ce=H[0]*d,oe=H[1]*d,we=J[0]*d,He=J[1]*d,je=b(oe),ar=k(oe),sr=b(He),br=k(He),$e=je*b(ce),hr=je*k(ce),fr=sr*b(we),Mr=sr*k(we),qr=2*I(D(W(He-oe)+je*sr*W(we-ce))),rt=k(qr),Jr=qr?function(tt){var nt=k(tt*=qr)/rt,Er=k(qr-tt)/rt,Ir=Er*$e+nt*fr,it=Er*hr+nt*Mr,pt=Er*ar+nt*br;return[y(it,Ir)*h,y(pt,D(Ir*Ir+it*it))*h]}:function(){return[ce*h,oe*h]};return Jr.distance=qr,Jr}function jo(H){return H}var Tf=t(),Fl=t(),$c,fo,co,kf,xi={point:B,lineStart:B,lineEnd:B,polygonStart:function(){xi.lineStart=Ov,xi.lineEnd=Uv},polygonEnd:function(){xi.lineStart=xi.lineEnd=xi.point=B,Tf.add(m(Fl)),Fl.reset()},result:function(){var H=Tf/2;return Tf.reset(),H}};function Ov(){xi.point=Ui}function Ui(H,J){xi.point=Il,$c=co=H,fo=kf=J}function Il(H,J){Fl.add(kf*H-co*J),co=H,kf=J}function Uv(){Il($c,fo)}var Yi=1/0,Jo=Yi,$o=-Yi,Ko=$o,vo={point:ks,lineStart:B,lineEnd:B,polygonStart:B,polygonEnd:B,result:function(){var H=[[Yi,Jo],[$o,Ko]];return $o=Ko=-(Jo=Yi=1/0),H}};function ks(H,J){H$o&&($o=H),JKo&&(Ko=J)}var du=0,Ss=0,Cs=0,Qo=0,Hl=0,Bl=0,pu=0,gu=0,li=0,mu,yu,za,ea,Ma={point:Gi,lineStart:Ls,lineEnd:Sf,polygonStart:function(){Ma.lineStart=Kc,Ma.lineEnd=Yv},polygonEnd:function(){Ma.point=Gi,Ma.lineStart=Ls,Ma.lineEnd=Sf},result:function(){var H=li?[pu/li,gu/li]:Bl?[Qo/Bl,Hl/Bl]:Cs?[du/Cs,Ss/Cs]:[NaN,NaN];return du=Ss=Cs=Qo=Hl=Bl=pu=gu=li=0,H}};function Gi(H,J){du+=H,Ss+=J,++Cs}function Ls(){Ma.point=el}function el(H,J){Ma.point=Ol,Gi(za=H,ea=J)}function Ol(H,J){var ce=H-za,oe=J-ea,we=D(ce*ce+oe*oe);Qo+=we*(za+H)/2,Hl+=we*(ea+J)/2,Bl+=we,Gi(za=H,ea=J)}function Sf(){Ma.point=Gi}function Kc(){Ma.point=Gv}function Yv(){Cf(mu,yu)}function Gv(H,J){Ma.point=Cf,Gi(mu=za=H,yu=ea=J)}function Cf(H,J){var ce=H-za,oe=J-ea,we=D(ce*ce+oe*oe);Qo+=we*(za+H)/2,Hl+=we*(ea+J)/2,Bl+=we,we=ea*H-za*J,pu+=we*(za+H),gu+=we*(ea+J),li+=we*3,Gi(za=H,ea=J)}function Lf(H){this._context=H}Lf.prototype={_radius:4.5,pointRadius:function(H){return this._radius=H,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(H,J){switch(this._point){case 0:{this._context.moveTo(H,J),this._point=1;break}case 1:{this._context.lineTo(H,J);break}default:{this._context.moveTo(H+this._radius,J),this._context.arc(H,J,this._radius,0,v);break}}},result:B};var qf=t(),Df,Qc,e0,qs,Ds,wi={point:B,lineStart:function(){wi.point=bu},lineEnd:function(){Df&&Es(Qc,e0),wi.point=B},polygonStart:function(){Df=!0},polygonEnd:function(){Df=null},result:function(){var H=+qf;return qf.reset(),H}};function bu(H,J){wi.point=Es,Qc=qs=H,e0=Ds=J}function Es(H,J){qs-=H,Ds-=J,qf.add(D(qs*qs+Ds*Ds)),qs=H,Ds=J}function _u(){this._string=[]}_u.prototype={_radius:4.5,_circle:r0(4.5),pointRadius:function(H){return(H=+H)!==this._radius&&(this._radius=H,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(H,J){switch(this._point){case 0:{this._string.push("M",H,",",J),this._point=1;break}case 1:{this._string.push("L",H,",",J);break}default:{this._circle==null&&(this._circle=r0(this._radius)),this._string.push("M",H,",",J,this._circle);break}}},result:function(){if(this._string.length){var H=this._string.join("");return this._string=[],H}else return null}};function r0(H){return"m0,"+H+"a"+H+","+H+" 0 1,1 0,"+-2*H+"a"+H+","+H+" 0 1,1 0,"+2*H+"z"}function Ef(H,J){var ce=4.5,oe,we;function He(je){return je&&(typeof ce=="function"&&we.pointRadius(+ce.apply(this,arguments)),ee(je,oe(we))),we.result()}return He.area=function(je){return ee(je,oe(xi)),xi.result()},He.measure=function(je){return ee(je,oe(wi)),wi.result()},He.bounds=function(je){return ee(je,oe(vo)),vo.result()},He.centroid=function(je){return ee(je,oe(Ma)),Ma.result()},He.projection=function(je){return arguments.length?(oe=je==null?(H=null,jo):(H=je).stream,He):H},He.context=function(je){return arguments.length?(we=je==null?(J=null,new _u):new Lf(J=je),typeof ce!="function"&&we.pointRadius(ce),He):J},He.pointRadius=function(je){return arguments.length?(ce=typeof je=="function"?je:(we.pointRadius(+je),+je),He):ce},He.projection(H).context(J)}function Vv(H){return{stream:ho(H)}}function ho(H){return function(J){var ce=new xu;for(var oe in H)ce[oe]=H[oe];return ce.stream=J,ce}}function xu(){}xu.prototype={constructor:xu,point:function(H,J){this.stream.point(H,J)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function Ul(H,J,ce){var oe=H.clipExtent&&H.clipExtent();return H.scale(150).translate([0,0]),oe!=null&&H.clipExtent(null),ee(ce,H.stream(vo)),J(vo.result()),oe!=null&&H.clipExtent(oe),H}function Ps(H,J,ce){return Ul(H,function(oe){var we=J[1][0]-J[0][0],He=J[1][1]-J[0][1],je=Math.min(we/(oe[1][0]-oe[0][0]),He/(oe[1][1]-oe[0][1])),ar=+J[0][0]+(we-je*(oe[1][0]+oe[0][0]))/2,sr=+J[0][1]+(He-je*(oe[1][1]+oe[0][1]))/2;H.scale(150*je).translate([ar,sr])},ce)}function Rs(H,J,ce){return Ps(H,[[0,0],J],ce)}function Pf(H,J,ce){return Ul(H,function(oe){var we=+J,He=we/(oe[1][0]-oe[0][0]),je=(we-He*(oe[1][0]+oe[0][0]))/2,ar=-He*oe[0][1];H.scale(150*He).translate([je,ar])},ce)}function po(H,J,ce){return Ul(H,function(oe){var we=+J,He=we/(oe[1][1]-oe[0][1]),je=-He*oe[0][0],ar=(we-He*(oe[1][1]+oe[0][1]))/2;H.scale(150*He).translate([je,ar])},ce)}var t0=16,Rf=b(30*d);function n0(H,J){return+J?wu(H,J):zf(H)}function zf(H){return ho({point:function(J,ce){J=H(J,ce),this.stream.point(J[0],J[1])}})}function wu(H,J){function ce(oe,we,He,je,ar,sr,br,$e,hr,fr,Mr,qr,rt,Jr){var tt=br-oe,nt=$e-we,Er=tt*tt+nt*nt;if(Er>4*J&&rt--){var Ir=je+fr,it=ar+Mr,pt=sr+qr,Gt=D(Ir*Ir+it*it+pt*pt),tn=I(pt/=Gt),Wt=m(m(pt)-1)J||m((tt*Nn+nt*yn)/Er-.5)>.3||je*fr+ar*Mr+sr*qr2?Gr[2]%360*d:0,Nn()):[ar*h,sr*h,br*h]},Ct.angle=function(Gr){return arguments.length?(hr=Gr%360*d,Nn()):hr*h},Ct.reflectX=function(Gr){return arguments.length?(fr=Gr?-1:1,Nn()):fr<0},Ct.reflectY=function(Gr){return arguments.length?(Mr=Gr?-1:1,Nn()):Mr<0},Ct.precision=function(Gr){return arguments.length?(pt=n0(Gt,it=Gr*Gr),yn()):D(it)},Ct.fitExtent=function(Gr,Vt){return Ps(Ct,Gr,Vt)},Ct.fitSize=function(Gr,Vt){return Rs(Ct,Gr,Vt)},Ct.fitWidth=function(Gr,Vt){return Pf(Ct,Gr,Vt)},Ct.fitHeight=function(Gr,Vt){return po(Ct,Gr,Vt)};function Nn(){var Gr=If(ce,0,0,fr,Mr,hr).apply(null,J(He,je)),Vt=(hr?If:Wv)(ce,oe-Gr[0],we-Gr[1],fr,Mr,hr);return $e=On(ar,sr,br),Gt=hn(J,Vt),tn=hn($e,Gt),pt=n0(Gt,it),yn()}function yn(){return Wt=mn=null,Ct}return function(){return J=H.apply(this,arguments),Ct.invert=J.invert&&oa,Nn()}}function Yl(H){var J=0,ce=s/3,oe=Hf(H),we=oe(J,ce);return we.parallels=function(He){return arguments.length?oe(J=He[0]*d,ce=He[1]*d):[J*h,ce*h]},we}function Bf(H){var J=b(H);function ce(oe,we){return[oe*J,k(we)/J]}return ce.invert=function(oe,we){return[oe/J,I(we*J)]},ce}function a0(H,J){var ce=k(H),oe=(ce+k(J))/2;if(m(oe)=.12&&Jr<.234&&rt>=-.425&&rt<-.214?we:Jr>=.166&&Jr<.234&&rt>=-.214&&rt<-.115?je:ce).invert(fr)},$e.stream=function(fr){return H&&J===fr?H:H=Zv([ce.stream(J=fr),we.stream(fr),je.stream(fr)])},$e.precision=function(fr){return arguments.length?(ce.precision(fr),we.precision(fr),je.precision(fr),hr()):ce.precision()},$e.scale=function(fr){return arguments.length?(ce.scale(fr),we.scale(fr*.35),je.scale(fr),$e.translate(ce.translate())):ce.scale()},$e.translate=function(fr){if(!arguments.length)return ce.translate();var Mr=ce.scale(),qr=+fr[0],rt=+fr[1];return oe=ce.translate(fr).clipExtent([[qr-.455*Mr,rt-.238*Mr],[qr+.455*Mr,rt+.238*Mr]]).stream(br),He=we.translate([qr-.307*Mr,rt+.201*Mr]).clipExtent([[qr-.425*Mr+o,rt+.12*Mr+o],[qr-.214*Mr-o,rt+.234*Mr-o]]).stream(br),ar=je.translate([qr-.205*Mr,rt+.212*Mr]).clipExtent([[qr-.214*Mr+o,rt+.166*Mr+o],[qr-.115*Mr-o,rt+.234*Mr-o]]).stream(br),hr()},$e.fitExtent=function(fr,Mr){return Ps($e,fr,Mr)},$e.fitSize=function(fr,Mr){return Rs($e,fr,Mr)},$e.fitWidth=function(fr,Mr){return Pf($e,fr,Mr)},$e.fitHeight=function(fr,Mr){return po($e,fr,Mr)};function hr(){return H=J=null,$e}return $e.scale(1070)}function Vi(H){return function(J,ce){var oe=b(J),we=b(ce),He=H(oe*we);return[He*we*k(J),He*k(ce)]}}function Ai(H){return function(J,ce){var oe=D(J*J+ce*ce),we=H(oe),He=k(we),je=b(we);return[y(J*He,oe*je),I(oe&&ce*He/oe)]}}var Na=Vi(function(H){return D(2/(1+H))});Na.invert=Ai(function(H){return 2*I(H/2)});function jv(){return Mi(Na).scale(124.75).clipAngle(180-.001)}var Gl=Vi(function(H){return(H=F(H))&&H/k(H)});Gl.invert=Ai(function(H){return H});function o0(){return Mi(Gl).scale(79.4188).clipAngle(180-.001)}function Za(H,J){return[H,_(z((u+J)/2))]}Za.invert=function(H,J){return[H,2*p(x(J))-u]};function l0(){return s0(Za).scale(961/v)}function s0(H){var J=Mi(H),ce=J.center,oe=J.scale,we=J.translate,He=J.clipExtent,je=null,ar,sr,br;J.scale=function(hr){return arguments.length?(oe(hr),$e()):oe()},J.translate=function(hr){return arguments.length?(we(hr),$e()):we()},J.center=function(hr){return arguments.length?(ce(hr),$e()):ce()},J.clipExtent=function(hr){return arguments.length?(hr==null?je=ar=sr=br=null:(je=+hr[0][0],ar=+hr[0][1],sr=+hr[1][0],br=+hr[1][1]),$e()):je==null?null:[[je,ar],[sr,br]]};function $e(){var hr=s*oe(),fr=J(ms(J.rotate()).invert([0,0]));return He(je==null?[[fr[0]-hr,fr[1]-hr],[fr[0]+hr,fr[1]+hr]]:H===Za?[[Math.max(fr[0]-hr,je),ar],[Math.min(fr[0]+hr,sr),br]]:[[je,Math.max(fr[1]-hr,ar)],[sr,Math.min(fr[1]+hr,br)]])}return $e()}function zs(H){return z((u+H)/2)}function u0(H,J){var ce=b(H),oe=H===J?k(H):_(ce/b(J))/_(zs(J)/zs(H)),we=ce*A(zs(H),oe)/oe;if(!oe)return Za;function He(je,ar){we>0?ar<-u+o&&(ar=-u+o):ar>u-o&&(ar=u-o);var sr=we/A(zs(ar),oe);return[sr*k(oe*je),we-sr*b(oe*je)]}return He.invert=function(je,ar){var sr=we-ar,br=M(oe)*D(je*je+sr*sr),$e=y(je,m(sr))*M(sr);return sr*oe<0&&($e-=s*M(je)*M(sr)),[$e/oe,2*p(A(we/br,1/oe))-u]},He}function Mu(){return Yl(u0).scale(109.5).parallels([30,30])}function Ns(H,J){return[H,J]}Ns.invert=Ns;function Au(){return Mi(Ns).scale(152.63)}function Fs(H,J){var ce=b(H),oe=H===J?k(H):(ce-b(J))/(J-H),we=ce/oe+H;if(m(oe)o&&--oe>0);return[H/(.8707+(He=ce*ce)*(-.131979+He*(-.013791+He*He*He*(.003971-.001529*He)))),ce]};function Su(){return Mi(Of).scale(175.295)}function Xn(H,J){return[b(J)*k(H),k(J)]}Xn.invert=Ai(I);function si(){return Mi(Xn).scale(249.5).clipAngle(90+o)}function Wl(H,J){var ce=b(J),oe=1+b(H)*ce;return[ce*k(H)/oe,k(J)/oe]}Wl.invert=Ai(function(H){return 2*p(H)});function Cu(){return Mi(Wl).scale(250).clipAngle(142)}function Os(H,J){return[_(z((u+J)/2)),-H]}Os.invert=function(H,J){return[-J,2*p(x(H))-u]};function Uf(){var H=s0(Os),J=H.center,ce=H.rotate;return H.center=function(oe){return arguments.length?J([-oe[1],oe[0]]):(oe=J(),[oe[1],-oe[0]])},H.rotate=function(oe){return arguments.length?ce([oe[0],oe[1],oe.length>2?oe[2]+90:90]):(oe=ce(),[oe[0],oe[1],oe[2]-90])},ce([0,0,90]).scale(159.155)}e.geoAlbers=i0,e.geoAlbersUsa=Xv,e.geoArea=U,e.geoAzimuthalEqualArea=jv,e.geoAzimuthalEqualAreaRaw=Na,e.geoAzimuthalEquidistant=o0,e.geoAzimuthalEquidistantRaw=Gl,e.geoBounds=_e,e.geoCentroid=Va,e.geoCircle=ys,e.geoClipAntimeridian=Pn,e.geoClipCircle=xf,e.geoClipExtent=vu,e.geoClipRectangle=Wo,e.geoConicConformal=Mu,e.geoConicConformalRaw=u0,e.geoConicEqualArea=rl,e.geoConicEqualAreaRaw=a0,e.geoConicEquidistant=Jv,e.geoConicEquidistantRaw=Fs,e.geoContains=Ms,e.geoDistance=Xo,e.geoEqualEarth=f0,e.geoEqualEarthRaw=Bs,e.geoEquirectangular=Au,e.geoEquirectangularRaw=Ns,e.geoGnomonic=c0,e.geoGnomonicRaw=ku,e.geoGraticule=Jc,e.geoGraticule10=Ts,e.geoIdentity=v0,e.geoInterpolate=Bv,e.geoLength=_s,e.geoMercator=l0,e.geoMercatorRaw=Za,e.geoNaturalEarth1=Su,e.geoNaturalEarth1Raw=Of,e.geoOrthographic=si,e.geoOrthographicRaw=Xn,e.geoPath=Ef,e.geoProjection=Mi,e.geoProjectionMutator=Hf,e.geoRotation=ms,e.geoStereographic=Cu,e.geoStereographicRaw=Wl,e.geoStream=ee,e.geoTransform=Vv,e.geoTransverseMercator=Uf,e.geoTransverseMercatorRaw=Os,Object.defineProperty(e,"__esModule",{value:!0})})});var fF=te((sy,uF)=>{(function(e,r){typeof sy=="object"&&typeof uF!="undefined"?r(sy,o_(),i_()):r(e.d3=e.d3||{},e.d3,e.d3)})(sy,function(e,r,t){"use strict";var n=Math.abs,a=Math.atan,i=Math.atan2,o=Math.cos,l=Math.exp,s=Math.floor,u=Math.log,f=Math.max,v=Math.min,h=Math.pow,d=Math.round,m=Math.sign||function(T){return T>0?1:T<0?-1:0},p=Math.sin,y=Math.tan,b=1e-6,C=1e-12,x=Math.PI,_=x/2,A=x/4,k=Math.SQRT1_2,M=V(2),D=V(x),z=x*2,F=180/x,I=x/180;function W(T){return T?T/Math.sin(T):1}function B(T){return T>1?_:T<-1?-_:Math.asin(T)}function X(T){return T>1?0:T<-1?x:Math.acos(T)}function V(T){return T>0?Math.sqrt(T):0}function re(T){return T=l(2*T),(T-1)/(T+1)}function ae(T){return(l(T)-l(-T))/2}function Q(T){return(l(T)+l(-T))/2}function ee(T){return u(T+V(T*T+1))}function fe(T){return u(T+V(T*T-1))}function he(T){var L=y(T/2),P=2*u(o(T/2))/(L*L);function R(Y,O){var Z=o(Y),se=o(O),ve=p(O),le=se*Z,de=-((1-le?u((1+le)/2)/(1-le):-.5)+P/(1+le));return[de*se*p(Y),de*ve]}return R.invert=function(Y,O){var Z=V(Y*Y+O*O),se=-T/2,ve=50,le;if(!Z)return[0,0];do{var de=se/2,xe=o(de),qe=p(de),Fe=qe/xe,er=-u(n(xe));se-=le=(2/Fe*er-P*Fe-Z)/(-er/(qe*qe)+1-P/(2*xe*xe))*(xe<0?.7:1)}while(n(le)>b&&--ve>0);var cr=p(se);return[i(Y*cr,Z*o(se)),B(O*cr/Z)]},R}function Le(){var T=_,L=r.geoProjectionMutator(he),P=L(T);return P.radius=function(R){return arguments.length?L(T=R*I):T*F},P.scale(179.976).clipAngle(147)}function Ie(T,L){var P=o(L),R=W(X(P*o(T/=2)));return[2*P*p(T)*R,p(L)*R]}Ie.invert=function(T,L){if(!(T*T+4*L*L>x*x+b)){var P=T,R=L,Y=25;do{var O=p(P),Z=p(P/2),se=o(P/2),ve=p(R),le=o(R),de=p(2*R),xe=ve*ve,qe=le*le,Fe=Z*Z,er=1-qe*se*se,cr=er?X(le*se)*V(Ar=1/er):Ar=0,Ar,Zr=2*cr*le*Z-T,at=cr*ve-L,ot=Ar*(qe*Fe+cr*le*se*xe),st=Ar*(.5*O*de-cr*2*ve*Z),vt=Ar*.25*(de*Z-cr*ve*qe*O),ln=Ar*(xe*se+cr*Fe*le),An=st*vt-ln*ot;if(!An)break;var zt=(at*st-Zr*ln)/An,Fn=(Zr*vt-at*ot)/An;P-=zt,R-=Fn}while((n(zt)>b||n(Fn)>b)&&--Y>0);return[P,R]}};function ze(){return r.geoProjection(Ie).scale(152.63)}function Xe(T){var L=p(T),P=o(T),R=T>=0?1:-1,Y=y(R*T),O=(1+L-P)/2;function Z(se,ve){var le=o(ve),de=o(se/=2);return[(1+le)*p(se),(R*ve>-i(de,Y)-.001?0:-R*10)+O+p(ve)*P-(1+le)*L*de]}return Z.invert=function(se,ve){var le=0,de=0,xe=50;do{var qe=o(le),Fe=p(le),er=o(de),cr=p(de),Ar=1+er,Zr=Ar*Fe-se,at=O+cr*P-Ar*L*qe-ve,ot=Ar*qe/2,st=-Fe*cr,vt=L*Ar*Fe/2,ln=P*er+L*qe*cr,An=st*vt-ln*ot,zt=(at*st-Zr*ln)/An/2,Fn=(Zr*vt-at*ot)/An;n(Fn)>2&&(Fn/=2),le-=zt,de-=Fn}while((n(zt)>b||n(Fn)>b)&&--xe>0);return R*de>-i(o(le),Y)-.001?[le*2,de]:null},Z}function Ce(){var T=20*I,L=T>=0?1:-1,P=y(L*T),R=r.geoProjectionMutator(Xe),Y=R(T),O=Y.stream;return Y.parallel=function(Z){return arguments.length?(P=y((L=(T=Z*I)>=0?1:-1)*T),R(T)):T*F},Y.stream=function(Z){var se=Y.rotate(),ve=O(Z),le=(Y.rotate([0,0]),O(Z)),de=Y.precision();return Y.rotate(se),ve.sphere=function(){le.polygonStart(),le.lineStart();for(var xe=L*-180;L*xe<180;xe+=L*90)le.point(xe,L*90);if(T)for(;L*(xe-=3*L*de)>=-180;)le.point(xe,L*-i(o(xe*I/2),P)*F);le.lineEnd(),le.polygonEnd()},ve},Y.scale(218.695).center([0,28.0974])}function Qe(T,L){var P=y(L/2),R=V(1-P*P),Y=1+R*o(T/=2),O=p(T)*R/Y,Z=P/Y,se=O*O,ve=Z*Z;return[4/3*O*(3+se-3*ve),4/3*Z*(3+3*se-ve)]}Qe.invert=function(T,L){if(T*=3/8,L*=3/8,!T&&n(L)>1)return null;var P=T*T,R=L*L,Y=1+P+R,O=V((Y-V(Y*Y-4*L*L))/2),Z=B(O)/3,se=O?fe(n(L/O))/3:ee(n(T))/3,ve=o(Z),le=Q(se),de=le*le-ve*ve;return[m(T)*2*i(ae(se)*ve,.25-de),m(L)*2*i(le*p(Z),.25+de)]};function ue(){return r.geoProjection(Qe).scale(66.1603)}var ye=V(8),Me=u(1+M);function pe(T,L){var P=n(L);return PC&&--R>0);return[T/(o(P)*(ye-1/p(P))),m(L)*P]};function U(){return r.geoProjection(pe).scale(112.314)}function K(T){var L=2*x/T;function P(R,Y){var O=r.geoAzimuthalEquidistantRaw(R,Y);if(n(R)>_){var Z=i(O[1],O[0]),se=V(O[0]*O[0]+O[1]*O[1]),ve=L*d((Z-_)/L)+_,le=i(p(Z-=ve),2-o(Z));Z=ve+B(x/se*p(le))-le,O[0]=se*o(Z),O[1]=se*p(Z)}return O}return P.invert=function(R,Y){var O=V(R*R+Y*Y);if(O>_){var Z=i(Y,R),se=L*d((Z-_)/L)+_,ve=Z>se?-1:1,le=O*o(se-Z),de=1/y(ve*X((le-x)/V(x*(x-2*le)+O*O)));Z=se+2*a((de+ve*V(de*de-3))/3),R=O*o(Z),Y=O*p(Z)}return r.geoAzimuthalEquidistantRaw.invert(R,Y)},P}function $(){var T=5,L=r.geoProjectionMutator(K),P=L(T),R=P.stream,Y=.01,O=-o(Y*I),Z=p(Y*I);return P.lobes=function(se){return arguments.length?L(T=+se):T},P.stream=function(se){var ve=P.rotate(),le=R(se),de=(P.rotate([0,0]),R(se));return P.rotate(ve),le.sphere=function(){de.polygonStart(),de.lineStart();for(var xe=0,qe=360/T,Fe=2*x/T,er=90-180/T,cr=_;xe0&&n(Y)>b);return R<0?NaN:P}function or(T,L,P){return L===void 0&&(L=40),P===void 0&&(P=C),function(R,Y,O,Z){var se,ve,le;O=O===void 0?0:+O,Z=Z===void 0?0:+Z;for(var de=0;dese){O-=ve/=2,Z-=le/=2;continue}se=er;var cr=(O>0?-1:1)*P,Ar=(Z>0?-1:1)*P,Zr=T(O+cr,Z),at=T(O,Z+Ar),ot=(Zr[0]-xe[0])/cr,st=(Zr[1]-xe[1])/cr,vt=(at[0]-xe[0])/Ar,ln=(at[1]-xe[1])/Ar,An=ln*ot-st*vt,zt=(n(An)<.5?.5:1)/An;if(ve=(Fe*vt-qe*ln)*zt,le=(qe*st-Fe*ot)*zt,O+=ve,Z+=le,n(ve)0&&(se[1]*=1+ve/1.5*se[0]*se[0]),se}return R.invert=or(R),R}function nr(){return r.geoProjection(Ye()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function lr(T,L){var P=T*p(L),R=30,Y;do L-=Y=(L+p(L)-P)/(1+o(L));while(n(Y)>b&&--R>0);return L/2}function vr(T,L,P){function R(Y,O){return[T*Y*o(O=lr(P,O)),L*p(O)]}return R.invert=function(Y,O){return O=B(O/L),[Y/(T*o(O)),B((2*O+p(2*O))/P)]},R}var Je=vr(M/_,M,x);function dr(){return r.geoProjection(Je).scale(169.529)}var gr=2.00276,Te=1.11072;function Oe(T,L){var P=lr(x,L);return[gr*T/(1/o(L)+Te/o(P)),(L+M*p(P))/gr]}Oe.invert=function(T,L){var P=gr*L,R=L<0?-A:A,Y=25,O,Z;do Z=P-M*p(R),R-=O=(p(2*R)+2*R-x*p(Z))/(2*o(2*R)+2+x*o(Z)*M*o(R));while(n(O)>b&&--Y>0);return Z=P-M*p(R),[T*(1/o(Z)+Te/o(R))/gr,Z]};function kr(){return r.geoProjection(Oe).scale(160.857)}function Ur(T){var L=0,P=r.geoProjectionMutator(T),R=P(L);return R.parallel=function(Y){return arguments.length?P(L=Y*I):L*F},R}function tr(T,L){return[T*o(L),L]}tr.invert=function(T,L){return[T/o(L),L]};function Ue(){return r.geoProjection(tr).scale(152.63)}function Ze(T){if(!T)return tr;var L=1/y(T);function P(R,Y){var O=L+T-Y,Z=O&&R*o(Y)/O;return[O*p(Z),L-O*o(Z)]}return P.invert=function(R,Y){var O=V(R*R+(Y=L-Y)*Y),Z=L+T-O;return[O/o(Z)*i(R,Y),Z]},P}function mr(){return Ur(Ze).scale(123.082).center([0,26.1441]).parallel(45)}function Tr(T){function L(P,R){var Y=_-R,O=Y&&P*T*p(Y)/Y;return[Y*p(O)/T,_-Y*o(O)]}return L.invert=function(P,R){var Y=P*T,O=_-R,Z=V(Y*Y+O*O),se=i(Y,O);return[(Z?Z/p(Z):1)*se/T,_-Z]},L}function yr(){var T=.5,L=r.geoProjectionMutator(Tr),P=L(T);return P.fraction=function(R){return arguments.length?L(T=+R):T},P.scale(158.837)}var wr=vr(1,4/x,x);function Hr(){return r.geoProjection(wr).scale(152.63)}function Sr(T,L,P,R,Y,O){var Z=o(O),se;if(n(T)>1||n(O)>1)se=X(P*Y+L*R*Z);else{var ve=p(T/2),le=p(O/2);se=2*B(V(ve*ve+L*R*le*le))}return n(se)>b?[se,i(R*p(O),L*Y-P*R*Z)]:[0,0]}function Dr(T,L,P){return X((T*T+L*L-P*P)/(2*T*L))}function ur(T){return T-2*x*s((T+x)/(2*x))}function _e(T,L,P){for(var R=[[T[0],T[1],p(T[1]),o(T[1])],[L[0],L[1],p(L[1]),o(L[1])],[P[0],P[1],p(P[1]),o(P[1])]],Y=R[2],O,Z=0;Z<3;++Z,Y=O)O=R[Z],Y.v=Sr(O[1]-Y[1],Y[3],Y[2],O[3],O[2],O[0]-Y[0]),Y.point=[0,0];var se=Dr(R[0].v[0],R[2].v[0],R[1].v[0]),ve=Dr(R[0].v[0],R[1].v[0],R[2].v[0]),le=x-se;R[2].point[1]=0,R[0].point[0]=-(R[1].point[0]=R[0].v[0]/2);var de=[R[2].point[0]=R[0].point[0]+R[2].v[0]*o(se),2*(R[0].point[1]=R[1].point[1]=R[2].v[0]*p(se))];function xe(qe,Fe){var er=p(Fe),cr=o(Fe),Ar=new Array(3),Zr;for(Zr=0;Zr<3;++Zr){var at=R[Zr];if(Ar[Zr]=Sr(Fe-at[1],at[3],at[2],cr,er,qe-at[0]),!Ar[Zr][0])return at.point;Ar[Zr][1]=ur(Ar[Zr][1]-at.v[1])}var ot=de.slice();for(Zr=0;Zr<3;++Zr){var st=Zr==2?0:Zr+1,vt=Dr(R[Zr].v[0],Ar[Zr][0],Ar[st][0]);Ar[Zr][1]<0&&(vt=-vt),Zr?Zr==1?(vt=ve-vt,ot[0]-=Ar[Zr][0]*o(vt),ot[1]-=Ar[Zr][0]*p(vt)):(vt=le-vt,ot[0]+=Ar[Zr][0]*o(vt),ot[1]+=Ar[Zr][0]*p(vt)):(ot[0]+=Ar[Zr][0]*o(vt),ot[1]-=Ar[Zr][0]*p(vt))}return ot[0]/=3,ot[1]/=3,ot}return xe}function Ae(T){return T[0]*=I,T[1]*=I,T}function Ke(){return rr([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function rr(T,L,P){var R=r.geoCentroid({type:"MultiPoint",coordinates:[T,L,P]}),Y=[-R[0],-R[1]],O=r.geoRotation(Y),Z=_e(Ae(O(T)),Ae(O(L)),Ae(O(P)));Z.invert=or(Z);var se=r.geoProjection(Z).rotate(Y),ve=se.center;return delete se.rotate,se.center=function(le){return arguments.length?ve(O(le)):O.invert(ve())},se.clipAngle(90)}function Lr(T,L){var P=V(1-p(L));return[2/D*T*P,D*(1-P)]}Lr.invert=function(T,L){var P=(P=L/D-1)*P;return[P>0?T*V(x/P)/2:0,B(1-P)]};function Yr(){return r.geoProjection(Lr).scale(95.6464).center([0,30])}function Fr(T){var L=y(T);function P(R,Y){return[R,(R?R/p(R):1)*(p(Y)*o(R)-L*o(Y))]}return P.invert=L?function(R,Y){R&&(Y*=p(R)/R);var O=o(R);return[R,2*i(V(O*O+L*L-Y*Y)-O,L-Y)]}:function(R,Y){return[R,B(R?Y*y(R)/R:Y)]},P}function lt(){return Ur(Fr).scale(249.828).clipAngle(90)}var xt=V(3);function Rt(T,L){return[xt*T*(2*o(2*L/3)-1)/D,xt*D*p(L/3)]}Rt.invert=function(T,L){var P=3*B(L/(xt*D));return[D*T/(xt*(2*o(2*P/3)-1)),P]};function Kt(){return r.geoProjection(Rt).scale(156.19)}function cn(T){var L=o(T);function P(R,Y){return[R*L,p(Y)/L]}return P.invert=function(R,Y){return[R/L,B(Y*L)]},P}function pn(){return Ur(cn).parallel(38.58).scale(195.044)}function Mn(T){var L=o(T);function P(R,Y){return[R*L,(1+L)*y(Y/2)]}return P.invert=function(R,Y){return[R/L,a(Y/(1+L))*2]},P}function Xt(){return Ur(Mn).scale(124.75)}function Qt(T,L){var P=V(8/(3*x));return[P*T*(1-n(L)/x),P*L]}Qt.invert=function(T,L){var P=V(8/(3*x)),R=L/P;return[T/(P*(1-n(R)/x)),R]};function en(){return r.geoProjection(Qt).scale(165.664)}function an(T,L){var P=V(4-3*p(n(L)));return[2/V(6*x)*T*P,m(L)*V(2*x/3)*(2-P)]}an.invert=function(T,L){var P=2-n(L)/V(2*x/3);return[T*V(6*x)/(2*P),m(L)*B((4-P*P)/3)]};function jr(){return r.geoProjection(an).scale(165.664)}function Ut(T,L){var P=V(x*(4+x));return[2/P*T*(1+V(1-4*L*L/(x*x))),4/P*L]}Ut.invert=function(T,L){var P=V(x*(4+x))/2;return[T*P/(1+V(1-L*L*(4+x)/(4*x))),L*P/2]};function Nt(){return r.geoProjection(Ut).scale(180.739)}function rn(T,L){var P=(2+_)*p(L);L/=2;for(var R=0,Y=1/0;R<10&&n(Y)>b;R++){var O=o(L);L-=Y=(L+p(L)*(O+2)-P)/(2*O*(1+O))}return[2/V(x*(4+x))*T*(1+o(L)),2*V(x/(4+x))*p(L)]}rn.invert=function(T,L){var P=L*V((4+x)/x)/2,R=B(P),Y=o(R);return[T/(2/V(x*(4+x))*(1+Y)),B((R+P*(Y+2))/(2+_))]};function Tn(){return r.geoProjection(rn).scale(180.739)}function vn(T,L){return[T*(1+o(L))/V(2+x),2*L/V(2+x)]}vn.invert=function(T,L){var P=V(2+x),R=L*P/2;return[P*T/(1+o(R)),R]};function Yt(){return r.geoProjection(vn).scale(173.044)}function Bn(T,L){for(var P=(1+_)*p(L),R=0,Y=1/0;R<10&&n(Y)>b;R++)L-=Y=(L+p(L)-P)/(1+o(L));return P=V(2+x),[T*(1+o(L))/P,2*L/P]}Bn.invert=function(T,L){var P=1+_,R=V(P/2);return[T*2*R/(1+o(L*=R)),B((L+p(L))/P)]};function Ga(){return r.geoProjection(Bn).scale(173.044)}var kn=3+2*M;function Va(T,L){var P=p(T/=2),R=o(T),Y=V(o(L)),O=o(L/=2),Z=p(L)/(O+M*R*Y),se=V(2/(1+Z*Z)),ve=V((M*O+(R+P)*Y)/(M*O+(R-P)*Y));return[kn*(se*(ve-1/ve)-2*u(ve)),kn*(se*Z*(ve+1/ve)-2*a(Z))]}Va.invert=function(T,L){if(!(O=Qe.invert(T/1.2,L*1.065)))return null;var P=O[0],R=O[1],Y=20,O;T/=kn,L/=kn;do{var Z=P/2,se=R/2,ve=p(Z),le=o(Z),de=p(se),xe=o(se),qe=o(R),Fe=V(qe),er=de/(xe+M*le*Fe),cr=er*er,Ar=V(2/(1+cr)),Zr=M*xe+(le+ve)*Fe,at=M*xe+(le-ve)*Fe,ot=Zr/at,st=V(ot),vt=st-1/st,ln=st+1/st,An=Ar*vt-2*u(st)-T,zt=Ar*er*ln-2*a(er)-L,Fn=de&&k*Fe*ve*cr/de,ga=(M*le*xe+Fe)/(2*(xe+M*le*Fe)*(xe+M*le*Fe)*Fe),fi=-.5*er*Ar*Ar*Ar,ol=fi*Fn,Us=fi*ga,Ca=(Ca=2*xe+M*Fe*(le-ve))*Ca*st,La=(M*le*xe*Fe+qe)/Ca,Xi=-(M*ve*de)/(Fe*Ca),ll=vt*ol-2*La/st+Ar*(La+La/ot),sl=vt*Us-2*Xi/st+Ar*(Xi+Xi/ot),ul=er*ln*ol-2*Fn/(1+cr)+Ar*ln*Fn+Ar*er*(La-La/ot),Xl=er*ln*Us-2*ga/(1+cr)+Ar*ln*ga+Ar*er*(Xi-Xi/ot),go=sl*ul-Xl*ll;if(!go)break;var Ys=(zt*sl-An*Xl)/go,Vf=(An*ul-zt*ll)/go;P-=Ys,R=f(-_,v(_,R-Vf))}while((n(Ys)>b||n(Vf)>b)&&--Y>0);return n(n(R)-_)R){var xe=V(de),qe=i(le,ve),Fe=P*d(qe/P),er=qe-Fe,cr=T*o(er),Ar=(T*p(er)-er*p(cr))/(_-cr),Zr=Un(er,Ar),at=(x-T)/yi(Zr,cr,x);ve=xe;var ot=50,st;do ve-=st=(T+yi(Zr,cr,ve)*at-xe)/(Zr(ve)*at);while(n(st)>b&&--ot>0);le=er*p(ve),ve<_&&(le-=Ar*(ve-_));var vt=p(Fe),ln=o(Fe);se[0]=ve*ln-le*vt,se[1]=ve*vt+le*ln}return se}return Y.invert=function(O,Z){var se=O*O+Z*Z;if(se>R){var ve=V(se),le=i(Z,O),de=P*d(le/P),xe=le-de;O=ve*o(xe),Z=ve*p(xe);for(var qe=O-_,Fe=p(O),er=Z/Fe,cr=O<_?1/0:0,Ar=10;;){var Zr=T*p(er),at=T*o(er),ot=p(at),st=_-at,vt=(Zr-er*ot)/st,ln=Un(er,vt);if(n(cr)b||n(er)>b)&&--cr>0);return[xe,qe]},ve}var Qr=bi(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function St(){return r.geoProjection(Qr).scale(149.995)}var It=bi(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function Br(){return r.geoProjection(It).scale(153.93)}var Zn=bi(5/6*x,-.62636,-.0344,0,1.3493,-.05524,0,.045);function on(){return r.geoProjection(Zn).scale(130.945)}function Pn(T,L){var P=T*T,R=L*L;return[T*(1-.162388*R)*(.87-952426e-9*P*P),L*(1+R/12)]}Pn.invert=function(T,L){var P=T,R=L,Y=50,O;do{var Z=R*R;R-=O=(R*(1+Z/12)-L)/(1+Z/4)}while(n(O)>b&&--Y>0);Y=50,T/=1-.162388*Z;do{var se=(se=P*P)*se;P-=O=(P*(.87-952426e-9*se)-T)/(.87-.00476213*se)}while(n(O)>b&&--Y>0);return[P,R]};function At(){return r.geoProjection(Pn).scale(131.747)}var Wa=bi(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Go(){return r.geoProjection(Wa).scale(131.087)}function xf(T){var L=T(_,0)[0]-T(-_,0)[0];function P(R,Y){var O=R>0?-.5:.5,Z=T(R+O*x,Y);return Z[0]-=O*L,Z}return T.invert&&(P.invert=function(R,Y){var O=R>0?-.5:.5,Z=T.invert(R+O*L,Y),se=Z[0]-O*x;return se<-x?se+=2*x:se>x&&(se-=2*x),Z[0]=se,Z}),P}function cu(T,L){var P=m(T),R=m(L),Y=o(L),O=o(T)*Y,Z=p(T)*Y,se=p(R*L);T=n(i(Z,se)),L=B(O),n(T-_)>b&&(T%=_);var ve=oo(T>x/4?_-T:T,L);return T>x/4&&(se=ve[0],ve[0]=-ve[1],ve[1]=-se),ve[0]*=P,ve[1]*=-R,ve}cu.invert=function(T,L){n(T)>1&&(T=m(T)*2-T),n(L)>1&&(L=m(L)*2-L);var P=m(T),R=m(L),Y=-P*T,O=-R*L,Z=O/Y<1,se=Vo(Z?O:Y,Z?Y:O),ve=se[0],le=se[1],de=o(le);return Z&&(ve=-_-ve),[P*(i(p(ve)*de,-p(le))+x),R*B(o(ve)*de)]};function oo(T,L){if(L===_)return[0,0];var P=p(L),R=P*P,Y=R*R,O=1+Y,Z=1+3*Y,se=1-Y,ve=B(1/V(O)),le=se+R*O*ve,de=(1-P)/le,xe=V(de),qe=de*O,Fe=V(qe),er=xe*se,cr,Ar;if(T===0)return[0,-(er+R*Fe)];var Zr=o(L),at=1/Zr,ot=2*P*Zr,st=(-3*R+ve*Z)*ot,vt=(-le*Zr-(1-P)*st)/(le*le),ln=.5*vt/xe,An=se*ln-2*R*xe*ot,zt=R*O*vt+de*Z*ot,Fn=-at*ot,ga=-at*zt,fi=-2*at*An,ol=4*T/x,Us;if(T>.222*x||L.175*x){if(cr=(er+R*V(qe*(1+Y)-er*er))/(1+Y),T>x/4)return[cr,cr];var Ca=cr,La=.5*cr;cr=.5*(La+Ca),Ar=50;do{var Xi=V(qe-cr*cr),ll=cr*(fi+Fn*Xi)+ga*B(cr/Fe)-ol;if(!ll)break;ll<0?La=cr:Ca=cr,cr=.5*(La+Ca)}while(n(Ca-La)>b&&--Ar>0)}else{cr=b,Ar=25;do{var sl=cr*cr,ul=V(qe-sl),Xl=fi+Fn*ul,go=cr*Xl+ga*B(cr/Fe)-ol,Ys=Xl+(ga-Fn*sl)/ul;cr-=Us=ul?go/Ys:0}while(n(Us)>b&&--Ar>0)}return[cr,-er-R*V(qe-cr*cr)]}function Vo(T,L){for(var P=0,R=1,Y=.5,O=50;;){var Z=Y*Y,se=V(Y),ve=B(1/V(1+Z)),le=1-Z+Y*(1+Z)*ve,de=(1-se)/le,xe=V(de),qe=de*(1+Z),Fe=xe*(1-Z),er=qe-T*T,cr=V(er),Ar=L+Fe+Y*cr;if(n(R-P)0?P=Y:R=Y,Y=.5*(P+R)}if(!O)return null;var Zr=B(se),at=o(Zr),ot=1/at,st=2*se*at,vt=(-3*Y+ve*(1+3*Z))*st,ln=(-le*at-(1-se)*vt)/(le*le),An=.5*ln/xe,zt=(1-Z)*An-2*Y*xe*st,Fn=-2*ot*zt,ga=-ot*st,fi=-ot*(Y*(1+Z)*ln+de*(1+3*Z)*st);return[x/4*(T*(Fn+ga*cr)+fi*B(T/V(qe))),Zr]}function Wo(){return r.geoProjection(xf(cu)).scale(239.75)}function vu(T,L,P){var R,Y,O;return T?(R=Pl(T,P),L?(Y=Pl(L,1-P),O=Y[1]*Y[1]+P*R[0]*R[0]*Y[0]*Y[0],[[R[0]*Y[2]/O,R[1]*R[2]*Y[0]*Y[1]/O],[R[1]*Y[1]/O,-R[0]*R[2]*Y[0]*Y[2]/O],[R[2]*Y[1]*Y[2]/O,-P*R[0]*R[1]*Y[0]/O]]):[[R[0],0],[R[1],0],[R[2],0]]):(Y=Pl(L,1-P),[[0,Y[0]/Y[1]],[1/Y[1],0],[Y[2]/Y[1],0]])}function Pl(T,L){var P,R,Y,O,Z;if(L=1-b)return P=(1-L)/4,R=Q(T),O=re(T),Y=1/R,Z=R*ae(T),[O+P*(Z-T)/(R*R),Y-P*O*Y*(Z-T),Y+P*O*Y*(Z+T),2*a(l(T))-_+P*(Z-T)/R];var se=[1,0,0,0,0,0,0,0,0],ve=[V(L),0,0,0,0,0,0,0,0],le=0;for(R=V(1-L),Z=1;n(ve[le]/se[le])>b&&le<8;)P=se[le++],ve[le]=(P-R)/2,se[le]=(P+R)/2,R=V(P*R),Z*=2;Y=Z*se[le]*T;do O=ve[le]*p(R=Y)/se[le],Y=(B(O)+Y)/2;while(--le);return[p(Y),O=o(Y),O/o(Y-R),Y]}function Rl(T,L,P){var R=n(T),Y=n(L),O=ae(Y);if(R){var Z=1/p(R),se=1/(y(R)*y(R)),ve=-(se+P*(O*O*Z*Z)-1+P),le=(P-1)*se,de=(-ve+V(ve*ve-4*le))/2;return[_i(a(1/V(de)),P)*m(T),_i(a(V((de/se-1)/P)),1-P)*m(L)]}return[0,_i(a(O),1-P)*m(L)]}function _i(T,L){if(!L)return T;if(L===1)return u(y(T/2+A));for(var P=1,R=V(1-L),Y=V(L),O=0;n(Y)>b;O++){if(T%x){var Z=a(R*y(T)/P);Z<0&&(Z+=x),T+=Z+~~(T/x)*x}else T+=T;Y=(P+R)/2,R=V(P*R),Y=((P=Y)-R)/2}return T/(h(2,O)*P)}function lo(T,L){var P=(M-1)/(M+1),R=V(1-P*P),Y=_i(_,R*R),O=-1,Z=u(y(x/4+n(L)/2)),se=l(O*Z)/V(P),ve=Zo(se*o(O*T),se*p(O*T)),le=Rl(ve[0],ve[1],R*R);return[-le[1],(L>=0?1:-1)*(.5*Y-le[0])]}function Zo(T,L){var P=T*T,R=L+1,Y=1-P-L*L;return[.5*((T>=0?_:-_)-i(Y,2*T)),-.25*u(Y*Y+4*P)+.5*u(R*R+P)]}function zl(T,L){var P=L[0]*L[0]+L[1]*L[1];return[(T[0]*L[0]+T[1]*L[1])/P,(T[1]*L[0]-T[0]*L[1])/P]}lo.invert=function(T,L){var P=(M-1)/(M+1),R=V(1-P*P),Y=_i(_,R*R),O=-1,Z=vu(.5*Y-L,-T,R*R),se=zl(Z[0],Z[1]),ve=i(se[1],se[0])/O;return[ve,2*a(l(.5/O*u(P*se[0]*se[0]+P*se[1]*se[1])))-_]};function bs(){return r.geoProjection(xf(lo)).scale(151.496)}function wf(T){var L=p(T),P=o(T),R=Xc(T);R.invert=Xc(-T);function Y(O,Z){var se=R(O,Z);O=se[0],Z=se[1];var ve=p(Z),le=o(Z),de=o(O),xe=X(L*ve+P*le*de),qe=p(xe),Fe=n(qe)>b?xe/qe:1;return[Fe*P*p(O),(n(O)>_?Fe:-Fe)*(L*le-P*ve*de)]}return Y.invert=function(O,Z){var se=V(O*O+Z*Z),ve=-p(se),le=o(se),de=se*le,xe=-Z*ve,qe=se*L,Fe=V(de*de+xe*xe-qe*qe),er=i(de*qe+xe*Fe,xe*qe-de*Fe),cr=(se>_?-1:1)*i(O*ve,se*o(er)*le+Z*p(er)*ve);return R.invert(cr,er)},Y}function Xc(T){var L=p(T),P=o(T);return function(R,Y){var O=o(Y),Z=o(R)*O,se=p(R)*O,ve=p(Y);return[i(se,Z*P-ve*L),B(ve*P+Z*L)]}}function _s(){var T=0,L=r.geoProjectionMutator(wf),P=L(T),R=P.rotate,Y=P.stream,O=r.geoCircle();return P.parallel=function(Z){if(!arguments.length)return T*F;var se=P.rotate();return L(T=Z*I).rotate(se)},P.rotate=function(Z){return arguments.length?(R.call(P,[Z[0],Z[1]-T*F]),O.center([-Z[0],-Z[1]]),P):(Z=R.call(P),Z[1]+=T*F,Z)},P.stream=function(Z){return Z=Y(Z),Z.sphere=function(){Z.polygonStart();var se=.01,ve=O.radius(90-se)().coordinates[0],le=ve.length-1,de=-1,xe;for(Z.lineStart();++de=0;)Z.point((xe=ve[de])[0],xe[1]);Z.lineEnd(),Z.polygonEnd()},Z},P.scale(79.4187).parallel(45).clipAngle(180-.001)}var xs=3,ws=B(1-1/xs)*F,Xo=cn(0);function so(T){var L=ws*I,P=Lr(x,L)[0]-Lr(-x,L)[0],R=Xo(0,L)[1],Y=Lr(0,L)[1],O=D-Y,Z=z/T,se=4/z,ve=R+O*O*4/z;function le(de,xe){var qe,Fe=n(xe);if(Fe>L){var er=v(T-1,f(0,s((de+x)/Z)));de+=x*(T-1)/T-er*Z,qe=Lr(de,Fe),qe[0]=qe[0]*z/P-z*(T-1)/(2*T)+er*z/T,qe[1]=R+(qe[1]-Y)*4*O/z,xe<0&&(qe[1]=-qe[1])}else qe=Xo(de,xe);return qe[0]*=se,qe[1]/=ve,qe}return le.invert=function(de,xe){de/=se,xe*=ve;var qe=n(xe);if(qe>R){var Fe=v(T-1,f(0,s((de+x)/Z)));de=(de+x*(T-1)/T-Fe*Z)*P/z;var er=Lr.invert(de,.25*(qe-R)*z/O+Y);return er[0]-=x*(T-1)/T-Fe*Z,xe<0&&(er[1]=-er[1]),er}return Xo.invert(de,xe)},le}function uo(T,L){return[T,L&1?90-b:ws]}function Bi(T,L){return[T,L&1?-90+b:-ws]}function Mf(T){return[T[0]*(1-b),T[1]]}function hu(T){var L=[].concat(t.range(-180,180+T/2,T).map(uo),t.range(180,-180-T/2,-T).map(Bi));return{type:"Polygon",coordinates:[T===180?L.map(Mf):L]}}function Nl(){var T=4,L=r.geoProjectionMutator(so),P=L(T),R=P.stream;return P.lobes=function(Y){return arguments.length?L(T=+Y):T},P.stream=function(Y){var O=P.rotate(),Z=R(Y),se=(P.rotate([0,0]),R(Y));return P.rotate(O),Z.sphere=function(){r.geoStream(hu(180/T),se)},Z},P.scale(239.75)}function Af(T){var L=1+T,P=p(1/L),R=B(P),Y=2*V(x/(O=x+4*R*L)),O,Z=.5*Y*(L+V(T*(2+T))),se=T*T,ve=L*L;function le(de,xe){var qe=1-p(xe),Fe,er;if(qe&&qe<2){var cr=_-xe,Ar=25,Zr;do{var at=p(cr),ot=o(cr),st=R+i(at,L-ot),vt=1+ve-2*L*ot;cr-=Zr=(cr-se*R-L*at+vt*st-.5*qe*O)/(2*L*at*st)}while(n(Zr)>C&&--Ar>0);Fe=Y*V(vt),er=de*st/x}else Fe=Y*(T+qe),er=de*R/x;return[Fe*p(er),Z-Fe*o(er)]}return le.invert=function(de,xe){var qe=de*de+(xe-=Z)*xe,Fe=(1+ve-qe/(Y*Y))/(2*L),er=X(Fe),cr=p(er),Ar=R+i(cr,L-Fe);return[B(de/V(qe))*x/Ar,B(1-2*(er-se*R-L*cr+(1+ve-2*L*Fe)*Ar)/O)]},le}function jc(){var T=1,L=r.geoProjectionMutator(Af),P=L(T);return P.ratio=function(R){return arguments.length?L(T=+R):T},P.scale(167.774).center([0,18.67])}var Ms=.7109889596207567,Oi=.0528035274542;function As(T,L){return L>-Ms?(T=Je(T,L),T[1]+=Oi,T):tr(T,L)}As.invert=function(T,L){return L>-Ms?Je.invert(T,L-Oi):tr.invert(T,L)};function Jc(){return r.geoProjection(As).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function Ts(T,L){return n(L)>Ms?(T=Je(T,L),T[1]-=L>0?Oi:-Oi,T):tr(T,L)}Ts.invert=function(T,L){return n(L)>Ms?Je.invert(T,L+(L>0?Oi:-Oi)):tr.invert(T,L)};function Bv(){return r.geoProjection(Ts).scale(152.63)}function jo(T,L,P,R){var Y=V(4*x/(2*P+(1+T-L/2)*p(2*P)+(T+L)/2*p(4*P)+L/2*p(6*P))),O=V(R*p(P)*V((1+T*o(2*P)+L*o(4*P))/(1+T+L))),Z=P*ve(1);function se(xe){return V(1+T*o(2*xe)+L*o(4*xe))}function ve(xe){var qe=xe*P;return(2*qe+(1+T-L/2)*p(2*qe)+(T+L)/2*p(4*qe)+L/2*p(6*qe))/P}function le(xe){return se(xe)*p(xe)}var de=function(xe,qe){var Fe=P*ir(ve,Z*p(qe)/P,qe/x);isNaN(Fe)&&(Fe=P*m(qe));var er=Y*se(Fe);return[er*O*xe/x*o(Fe),er/O*p(Fe)]};return de.invert=function(xe,qe){var Fe=ir(le,qe*O/Y);return[xe*x/(o(Fe)*Y*O*se(Fe)),B(P*ve(Fe/P)/Z)]},P===0&&(Y=V(R/x),de=function(xe,qe){return[xe*Y,p(qe)/Y]},de.invert=function(xe,qe){return[xe/Y,B(qe*Y)]}),de}function Tf(){var T=1,L=0,P=45*I,R=2,Y=r.geoProjectionMutator(jo),O=Y(T,L,P,R);return O.a=function(Z){return arguments.length?Y(T=+Z,L,P,R):T},O.b=function(Z){return arguments.length?Y(T,L=+Z,P,R):L},O.psiMax=function(Z){return arguments.length?Y(T,L,P=+Z*I,R):P*F},O.ratio=function(Z){return arguments.length?Y(T,L,P,R=+Z):R},O.scale(180.739)}function Fl(T,L,P,R,Y,O,Z,se,ve,le,de){if(de.nanEncountered)return NaN;var xe,qe,Fe,er,cr,Ar,Zr,at,ot,st;if(xe=P-L,qe=T(L+xe*.25),Fe=T(P-xe*.25),isNaN(qe)){de.nanEncountered=!0;return}if(isNaN(Fe)){de.nanEncountered=!0;return}return er=xe*(R+4*qe+Y)/12,cr=xe*(Y+4*Fe+O)/12,Ar=er+cr,st=(Ar-Z)/15,le>ve?(de.maxDepthCount++,Ar+st):Math.abs(st)>1;do ve[Ar]>Fe?cr=Ar:er=Ar,Ar=er+cr>>1;while(Ar>er);var Zr=ve[Ar+1]-ve[Ar];return Zr&&(Zr=(Fe-ve[Ar+1])/Zr),(Ar+1+Zr)/Z}var xe=2*de(1)/x*O/P,qe=function(Fe,er){var cr=de(n(p(er))),Ar=R(cr)*Fe;return cr/=xe,[Ar,er>=0?cr:-cr]};return qe.invert=function(Fe,er){var cr;return er*=xe,n(er)<1&&(cr=m(er)*B(Y(n(er))*O)),[Fe/R(n(er)),cr]},qe}function co(){var T=0,L=2.5,P=1.183136,R=r.geoProjectionMutator(fo),Y=R(T,L,P);return Y.alpha=function(O){return arguments.length?R(T=+O,L,P):T},Y.k=function(O){return arguments.length?R(T,L=+O,P):L},Y.gamma=function(O){return arguments.length?R(T,L,P=+O):P},Y.scale(152.63)}function kf(T,L){return n(T[0]-L[0])=0;--ve)P=T[1][ve],R=P[0][0],Y=P[0][1],O=P[1][1],Z=P[2][0],se=P[2][1],L.push(xi([[Z-b,se-b],[Z-b,O+b],[R+b,O+b],[R+b,Y-b]],30));return{type:"Polygon",coordinates:[t.merge(L)]}}function Ui(T,L,P){var R,Y;function O(ve,le){for(var de=le<0?-1:1,xe=L[+(le<0)],qe=0,Fe=xe.length-1;qexe[qe][2][0];++qe);var er=T(ve-xe[qe][1][0],le);return er[0]+=T(xe[qe][1][0],de*le>de*xe[qe][0][1]?xe[qe][0][1]:le)[0],er}P?O.invert=P(O):T.invert&&(O.invert=function(ve,le){for(var de=Y[+(le<0)],xe=L[+(le<0)],qe=0,Fe=de.length;qeer&&(cr=Fe,Fe=er,er=cr),[[xe,Fe],[qe,er]]})}),Z):L.map(function(le){return le.map(function(de){return[[de[0][0]*F,de[0][1]*F],[de[1][0]*F,de[1][1]*F],[de[2][0]*F,de[2][1]*F]]})})},L!=null&&Z.lobes(L),Z}var Il=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Uv(){return Ui(Oe,Il).scale(160.857)}var Yi=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Jo(){return Ui(Ts,Yi).scale(152.63)}var $o=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Ko(){return Ui(Je,$o).scale(169.529)}var vo=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function ks(){return Ui(Je,vo).scale(169.529).rotate([20,0])}var du=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function Ss(){return Ui(As,du,or).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var Cs=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function Qo(){return Ui(tr,Cs).scale(152.63).rotate([-20,0])}function Hl(T,L){return[3/z*T*V(x*x/3-L*L),L]}Hl.invert=function(T,L){return[z/3*T/V(x*x/3-L*L),L]};function Bl(){return r.geoProjection(Hl).scale(158.837)}function pu(T){function L(P,R){if(n(n(R)-_)2)return null;P/=2,R/=2;var O=P*P,Z=R*R,se=2*R/(1+O+Z);return se=h((1+se)/(1-se),1/T),[i(2*P,1-O-Z)/T,B((se-1)/(se+1))]},L}function gu(){var T=.5,L=r.geoProjectionMutator(pu),P=L(T);return P.spacing=function(R){return arguments.length?L(T=+R):T},P.scale(124.75)}var li=x/M;function mu(T,L){return[T*(1+V(o(L)))/2,L/(o(L/2)*o(T/6))]}mu.invert=function(T,L){var P=n(T),R=n(L),Y=b,O=_;Rb||n(Ar)>b)&&--Y>0);return Y&&[P,R]};function ea(){return r.geoProjection(za).scale(139.98)}function Ma(T,L){return[p(T)/o(L),y(L)*o(T)]}Ma.invert=function(T,L){var P=T*T,R=L*L,Y=R+1,O=P+Y,Z=T?k*V((O-V(O*O-4*P))/P):1/V(Y);return[B(T*Z),m(L)*X(Z)]};function Gi(){return r.geoProjection(Ma).scale(144.049).clipAngle(90-.001)}function Ls(T){var L=o(T),P=y(A+T/2);function R(Y,O){var Z=O-T,se=n(Z)=0;)de=T[le],xe=de[0]+se*(Fe=xe)-ve*qe,qe=de[1]+se*qe+ve*Fe;return xe=se*(Fe=xe)-ve*qe,qe=se*qe+ve*Fe,[xe,qe]}return P.invert=function(R,Y){var O=20,Z=R,se=Y;do{for(var ve=L,le=T[ve],de=le[0],xe=le[1],qe=0,Fe=0,er;--ve>=0;)le=T[ve],qe=de+Z*(er=qe)-se*Fe,Fe=xe+Z*Fe+se*er,de=le[0]+Z*(er=de)-se*xe,xe=le[1]+Z*xe+se*er;qe=de+Z*(er=qe)-se*Fe,Fe=xe+Z*Fe+se*er,de=Z*(er=de)-se*xe-R,xe=Z*xe+se*er-Y;var cr=qe*qe+Fe*Fe,Ar,Zr;Z-=Ar=(de*qe+xe*Fe)/cr,se-=Zr=(xe*qe-de*Fe)/cr}while(n(Ar)+n(Zr)>b*b&&--O>0);if(O){var at=V(Z*Z+se*se),ot=2*a(at*.5),st=p(ot);return[i(Z*st,at*o(ot)),at?B(se*st/at):0]}},P}var Yv=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],Gv=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Cf=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Lf=[[.9245,0],[0,0],[.01943,0]],qf=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Df(){return wi(Yv,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function Qc(){return wi(Gv,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function e0(){return wi(Cf,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function qs(){return wi(Lf,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function Ds(){return wi(qf,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function wi(T,L){var P=r.geoProjection(Kc(T)).rotate(L).clipAngle(90),R=r.geoRotation(L),Y=P.center;return delete P.rotate,P.center=function(O){return arguments.length?Y(R(O)):R.invert(Y())},P}var bu=V(6),Es=V(7);function _u(T,L){var P=B(7*p(L)/(3*bu));return[bu*T*(2*o(2*P/3)-1)/Es,9*p(P/3)/Es]}_u.invert=function(T,L){var P=3*B(L*Es/9);return[T*Es/(bu*(2*o(2*P/3)-1)),B(p(P)*3*bu/7)]};function r0(){return r.geoProjection(_u).scale(164.859)}function Ef(T,L){for(var P=(1+k)*p(L),R=L,Y=0,O;Y<25&&(R-=O=(p(R/2)+p(R)-P)/(.5*o(R/2)+o(R)),!(n(O)C&&--R>0);return O=P*P,Z=O*O,se=O*Z,[T/(.84719-.13063*O+se*se*(-.04515+.05494*O-.02326*Z+.00331*se)),P]};function Ps(){return r.geoProjection(Ul).scale(175.295)}function Rs(T,L){return[T*(1+o(L))/2,2*(L-y(L/2))]}Rs.invert=function(T,L){for(var P=L/2,R=0,Y=1/0;R<10&&n(Y)>b;++R){var O=o(L/2);L-=Y=(L-y(L/2)-P)/(1-.5/(O*O))}return[2*T/(1+o(L)),L]};function Pf(){return r.geoProjection(Rs).scale(152.63)}var po=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function t0(){return Ui(ke(1/0),po).rotate([20,0]).scale(152.63)}function Rf(T,L){var P=p(L),R=o(L),Y=m(T);if(T===0||n(L)===_)return[0,L];if(L===0)return[T,0];if(n(T)===_)return[T*R,_*P];var O=x/(2*T)-2*T/x,Z=2*L/x,se=(1-Z*Z)/(P-Z),ve=O*O,le=se*se,de=1+ve/le,xe=1+le/ve,qe=(O*P/se-O/2)/de,Fe=(le*P/ve+se/2)/xe,er=qe*qe+R*R/de,cr=Fe*Fe-(le*P*P/ve+se*P-1)/xe;return[_*(qe+V(er)*Y),_*(Fe+V(cr<0?0:cr)*m(-L*O)*Y)]}Rf.invert=function(T,L){T/=_,L/=_;var P=T*T,R=L*L,Y=P+R,O=x*x;return[T?(Y-1+V((1-Y)*(1-Y)+4*P))/(2*T)*_:0,ir(function(Z){return Y*(x*p(Z)-2*Z)*x+4*Z*Z*(L-p(Z))+2*x*Z-O*L},0)]};function n0(){return r.geoProjection(Rf).scale(127.267)}var zf=1.0148,wu=.23185,Nf=-.14499,Ff=.02406,Wv=zf,If=5*wu,Mi=7*Nf,Hf=9*Ff,Yl=1.790857183;function Bf(T,L){var P=L*L;return[T,L*(zf+P*P*(wu+P*(Nf+Ff*P)))]}Bf.invert=function(T,L){L>Yl?L=Yl:L<-Yl&&(L=-Yl);var P=L,R;do{var Y=P*P;P-=R=(P*(zf+Y*Y*(wu+Y*(Nf+Ff*Y)))-L)/(Wv+Y*Y*(If+Y*(Mi+Hf*Y)))}while(n(R)>b);return[T,P]};function a0(){return r.geoProjection(Bf).scale(139.319)}function rl(T,L){if(n(L)b&&--Y>0);return Z=y(R),[(n(L)=0;)if(R=L[se],P[0]===R[0]&&P[1]===R[1]){if(O)return[O,P];O=P}}}function s0(T){for(var L=T.length,P=[],R=T[L-1],Y=0;Y0?[-R[0],0]:[180-R[0],180])};var L=Mu.map(function(P){return{face:P,project:T(P)}});return[-1,0,0,1,0,1,4,5].forEach(function(P,R){var Y=L[P];Y&&(Y.children||(Y.children=[])).push(L[R])}),Gl(L[0],function(P,R){return L[P<-x/2?R<0?6:4:P<0?R<0?2:0:PR^Fe>R&&P<(qe-le)*(R-de)/(Fe-de)+le&&(Y=!Y)}return Y}function ku(T,L){var P=L.stream,R;if(!P)throw new Error("invalid projection");switch(T&&T.type){case"Feature":R=v0;break;case"FeatureCollection":R=c0;break;default:R=Su;break}return R(T,P)}function c0(T,L){return{type:"FeatureCollection",features:T.features.map(function(P){return v0(P,L)})}}function v0(T,L){return{type:"Feature",id:T.id,properties:T.properties,geometry:Su(T.geometry,L)}}function Of(T,L){return{type:"GeometryCollection",geometries:T.geometries.map(function(P){return Su(P,L)})}}function Su(T,L){if(!T)return null;if(T.type==="GeometryCollection")return Of(T,L);var P;switch(T.type){case"Point":P=Wl;break;case"MultiPoint":P=Wl;break;case"LineString":P=Cu;break;case"MultiLineString":P=Cu;break;case"Polygon":P=Os;break;case"MultiPolygon":P=Os;break;case"Sphere":P=Os;break;default:return null}return r.geoStream(T,L(P)),P.result()}var Xn=[],si=[],Wl={point:function(T,L){Xn.push([T,L])},result:function(){var T=Xn.length?Xn.length<2?{type:"Point",coordinates:Xn[0]}:{type:"MultiPoint",coordinates:Xn}:null;return Xn=[],T}},Cu={lineStart:Tu,point:function(T,L){Xn.push([T,L])},lineEnd:function(){Xn.length&&(si.push(Xn),Xn=[])},result:function(){var T=si.length?si.length<2?{type:"LineString",coordinates:si[0]}:{type:"MultiLineString",coordinates:si}:null;return si=[],T}},Os={polygonStart:Tu,lineStart:Tu,point:function(T,L){Xn.push([T,L])},lineEnd:function(){var T=Xn.length;if(T){do Xn.push(Xn[0].slice());while(++T<4);si.push(Xn),Xn=[]}},polygonEnd:Tu,result:function(){if(!si.length)return null;var T=[],L=[];return si.forEach(function(P){Bs(P)?T.push([P]):L.push(P)}),L.forEach(function(P){var R=P[0];T.some(function(Y){if(f0(Y[0],R))return Y.push(P),!0})||T.push([P])}),si=[],T.length?T.length>1?{type:"MultiPolygon",coordinates:T}:{type:"Polygon",coordinates:T[0]}:null}};function Uf(T){var L=T(_,0)[0]-T(-_,0)[0];function P(R,Y){var O=n(R)<_,Z=T(O?R:R>0?R-x:R+x,Y),se=(Z[0]-Z[1])*k,ve=(Z[0]+Z[1])*k;if(O)return[se,ve];var le=L*k,de=se>0^ve>0?-1:1;return[de*se-m(ve)*le,de*ve-m(se)*le]}return T.invert&&(P.invert=function(R,Y){var O=(R+Y)*k,Z=(Y-R)*k,se=n(O)<.5*L&&n(Z)<.5*L;if(!se){var ve=L*k,le=O>0^Z>0?-1:1,de=-le*R+(Z>0?1:-1)*ve,xe=-le*Y+(O>0?1:-1)*ve;O=(-de-xe)*k,Z=(de-xe)*k}var qe=T.invert(O,Z);return se||(qe[0]+=O>0?x:-x),qe}),r.geoProjection(P).rotate([-90,-90,45]).clipAngle(180-.001)}function H(){return Uf(cu).scale(176.423)}function J(){return Uf(lo).scale(111.48)}function ce(T,L){if(!(0<=(L=+L)&&L<=20))throw new Error("invalid digits");function P(le){var de=le.length,xe=2,qe=new Array(de);for(qe[0]=+le[0].toFixed(L),qe[1]=+le[1].toFixed(L);xe2||Fe[0]!=de[0]||Fe[1]!=de[1])&&(xe.push(Fe),de=Fe)}return xe.length===1&&le.length>1&&xe.push(P(le[le.length-1])),xe}function O(le){return le.map(Y)}function Z(le){if(le==null)return le;var de;switch(le.type){case"GeometryCollection":de={type:"GeometryCollection",geometries:le.geometries.map(Z)};break;case"Point":de={type:"Point",coordinates:P(le.coordinates)};break;case"MultiPoint":de={type:le.type,coordinates:R(le.coordinates)};break;case"LineString":de={type:le.type,coordinates:Y(le.coordinates)};break;case"MultiLineString":case"Polygon":de={type:le.type,coordinates:O(le.coordinates)};break;case"MultiPolygon":de={type:"MultiPolygon",coordinates:le.coordinates.map(O)};break;default:return le}return le.bbox!=null&&(de.bbox=le.bbox),de}function se(le){var de={type:"Feature",properties:le.properties,geometry:Z(le.geometry)};return le.id!=null&&(de.id=le.id),le.bbox!=null&&(de.bbox=le.bbox),de}if(T!=null)switch(T.type){case"Feature":return se(T);case"FeatureCollection":{var ve={type:"FeatureCollection",features:T.features.map(se)};return T.bbox!=null&&(ve.bbox=T.bbox),ve}default:return Z(T)}return T}function oe(T){var L=p(T);function P(R,Y){var O=L?y(R*L/2)/L:R/2;if(!Y)return[2*O,-T];var Z=2*a(O*p(Y)),se=1/y(Y);return[p(Z)*se,Y+(1-o(Z))*se-T]}return P.invert=function(R,Y){if(n(Y+=T)b&&--se>0);var qe=R*(le=y(Z)),Fe=y(n(Y)0?_:-_)*(ve+Y*(de-Z)/2+Y*Y*(de-2*ve+Z)/2)]}je.invert=function(T,L){var P=L/_,R=P*90,Y=v(18,n(R/5)),O=f(0,s(Y));do{var Z=He[O][1],se=He[O+1][1],ve=He[v(19,O+2)][1],le=ve-Z,de=ve-2*se+Z,xe=2*(n(P)-se)/le,qe=de/le,Fe=xe*(1-qe*xe*(1-2*qe*xe));if(Fe>=0||O===1){R=(L>=0?5:-5)*(Fe+Y);var er=50,cr;do Y=v(18,n(R)/5),O=s(Y),Fe=Y-O,Z=He[O][1],se=He[O+1][1],ve=He[v(19,O+2)][1],R-=(cr=(L>=0?_:-_)*(se+Fe*(ve-Z)/2+Fe*Fe*(ve-2*se+Z)/2)-L)*F;while(n(cr)>C&&--er>0);break}}while(--O>=0);var Ar=He[O][0],Zr=He[O+1][0],at=He[v(19,O+2)][0];return[T/(Zr+Fe*(at-Ar)/2+Fe*Fe*(at-2*Zr+Ar)/2),R*I]};function ar(){return r.geoProjection(je).scale(152.63)}function sr(T){function L(P,R){var Y=o(R),O=(T-1)/(T-Y*o(P));return[O*Y*p(P),O*p(R)]}return L.invert=function(P,R){var Y=P*P+R*R,O=V(Y),Z=(T-V(1-Y*(T+1)/(T-1)))/((T-1)/O+O/(T-1));return[i(P*Z,O*V(1-Z*Z)),O?B(R*Z/O):0]},L}function br(T,L){var P=sr(T);if(!L)return P;var R=o(L),Y=p(L);function O(Z,se){var ve=P(Z,se),le=ve[1],de=le*Y/(T-1)+R;return[ve[0]*R/de,le/de]}return O.invert=function(Z,se){var ve=(T-1)/(T-1-se*Y);return P.invert(ve*Z,ve*se*R)},O}function $e(){var T=2,L=0,P=r.geoProjectionMutator(br),R=P(T,L);return R.distance=function(Y){return arguments.length?P(T=+Y,L):T},R.tilt=function(Y){return arguments.length?P(T,L=Y*I):L*F},R.scale(432.147).clipAngle(X(1/T)*F-1e-6)}var hr=1e-4,fr=1e4,Mr=-180,qr=Mr+hr,rt=180,Jr=rt-hr,tt=-90,nt=tt+hr,Er=90,Ir=Er-hr;function it(T){return T.length>0}function pt(T){return Math.floor(T*fr)/fr}function Gt(T){return T===tt||T===Er?[0,T]:[Mr,pt(T)]}function tn(T){var L=T[0],P=T[1],R=!1;return L<=qr?(L=Mr,R=!0):L>=Jr&&(L=rt,R=!0),P<=nt?(P=tt,R=!0):P>=Ir&&(P=Er,R=!0),R?[L,P]:T}function Wt(T){return T.map(tn)}function mn(T,L,P){for(var R=0,Y=T.length;R=Jr||de<=nt||de>=Ir){O[Z]=tn(ve);for(var xe=Z+1;xeqr&&Fent&&er=se)break;P.push({index:-1,polygon:L,ring:O=O.slice(xe-1)}),O[0]=Gt(O[0][1]),Z=-1,se=O.length}}}}function Ct(T){var L,P=T.length,R={},Y={},O,Z,se,ve,le;for(L=0;L0?x-se:se)*F],le=r.geoProjection(T(Z)).rotate(ve),de=r.geoRotation(ve),xe=le.center;return delete le.rotate,le.center=function(qe){return arguments.length?xe(de(qe)):de.invert(xe())},le.clipAngle(90)}function pa(T){var L=o(T);function P(R,Y){var O=r.geoGnomonicRaw(R,Y);return O[0]*=L,O}return P.invert=function(R,Y){return r.geoGnomonicRaw.invert(R/L,Y)},P}function Xa(){return Wi([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Wi(T,L){return Yn(pa,T,L)}function Ti(T){if(!(T*=2))return r.geoAzimuthalEquidistantRaw;var L=-T/2,P=-L,R=T*T,Y=y(P),O=.5/p(P);function Z(se,ve){var le=X(o(ve)*o(se-L)),de=X(o(ve)*o(se-P)),xe=ve<0?-1:1;return le*=le,de*=de,[(le-de)/(2*T),xe*V(4*R*de-(R-le+de)*(R-le+de))/(2*T)]}return Z.invert=function(se,ve){var le=ve*ve,de=o(V(le+(qe=se+L)*qe)),xe=o(V(le+(qe=se+P)*qe)),qe,Fe;return[i(Fe=de-xe,qe=(de+xe)*Y),(ve<0?-1:1)*X(V(qe*qe+Fe*Fe)*O)]},Z}function al(){return ui([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function ui(T,L){return Yn(Ti,T,L)}function il(T,L){if(n(L)b&&--se>0);return[m(T)*(V(Y*Y+4)+Y)*x/4,_*Z]};function Zi(){return r.geoProjection(Yf).scale(127.16)}function jh(T,L,P,R,Y){function O(Z,se){var ve=P*p(R*se),le=V(1-ve*ve),de=V(2/(1+le*o(Z*=Y)));return[T*le*de*p(Z),L*ve*de]}return O.invert=function(Z,se){var ve=Z/T,le=se/L,de=V(ve*ve+le*le),xe=2*B(de/2);return[i(Z*y(xe),T*de)/Y,de&&B(se*p(xe)/(L*P*de))/R]},O}function Jh(T,L,P,R){var Y=x/3;T=f(T,b),L=f(L,b),T=v(T,_),L=v(L,x-b),P=f(P,0),P=v(P,100-b),R=f(R,b);var O=P/100+1,Z=R/100,se=X(O*o(Y))/Y,ve=p(T)/p(se*_),le=L/x,de=V(Z*p(T/2)/p(L/2)),xe=de/V(le*ve*se),qe=1/(de*V(le*ve*se));return jh(xe,qe,ve,se,le)}function p0(){var T=65*I,L=60*I,P=20,R=200,Y=r.geoProjectionMutator(Jh),O=Y(T,L,P,R);return O.poleline=function(Z){return arguments.length?Y(T=+Z*I,L,P,R):T*F},O.parallels=function(Z){return arguments.length?Y(T,L=+Z*I,P,R):L*F},O.inflation=function(Z){return arguments.length?Y(T,L,P=+Z,R):P},O.ratio=function(Z){return arguments.length?Y(T,L,P,R=+Z):R},O.scale(163.775)}function $v(){return p0().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var $h=4*x+3*V(3),Kh=2*V(2*x*V(3)/$h),Qh=vr(Kh*V(3)/x,Kh,$h/6);function g0(){return r.geoProjection(Qh).scale(176.84)}function Gf(T,L){return[T*V(1-3*L*L/(x*x)),L]}Gf.invert=function(T,L){return[T/V(1-3*L*L/(x*x)),L]};function ed(){return r.geoProjection(Gf).scale(152.63)}function Kv(T,L){var P=o(L),R=o(T)*P,Y=1-R,O=o(T=i(p(T)*P,-p(L))),Z=p(T);return P=V(1-R*R),[Z*P-O*Y,-O*P-Z*Y]}Kv.invert=function(T,L){var P=(T*T+L*L)/-2,R=V(-P*(2+P)),Y=L*P+T*R,O=T*P-L*R,Z=V(O*O+Y*Y);return[i(R*Y,Z*(1+P)),Z?-B(R*O/Z):0]};function Ay(){return r.geoProjection(Kv).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function Qv(T,L){var P=Ie(T,L);return[(P[0]+T/_)/2,(P[1]+L)/2]}Qv.invert=function(T,L){var P=T,R=L,Y=25;do{var O=o(R),Z=p(R),se=p(2*R),ve=Z*Z,le=O*O,de=p(P),xe=o(P/2),qe=p(P/2),Fe=qe*qe,er=1-le*xe*xe,cr=er?X(O*xe)*V(Ar=1/er):Ar=0,Ar,Zr=.5*(2*cr*O*qe+P/_)-T,at=.5*(cr*Z+R)-L,ot=.5*Ar*(le*Fe+cr*O*xe*ve)+.5/_,st=Ar*(de*se/4-cr*Z*qe),vt=.125*Ar*(se*qe-cr*Z*le*de),ln=.5*Ar*(ve*xe+cr*Fe*O)+.5,An=st*vt-ln*ot,zt=(at*st-Zr*ln)/An,Fn=(Zr*vt-at*ot)/An;P-=zt,R-=Fn}while((n(zt)>b||n(Fn)>b)&&--Y>0);return[P,R]};function ki(){return r.geoProjection(Qv).scale(158.837)}e.geoNaturalEarth=r.geoNaturalEarth1,e.geoNaturalEarthRaw=r.geoNaturalEarth1Raw,e.geoAiry=Le,e.geoAiryRaw=he,e.geoAitoff=ze,e.geoAitoffRaw=Ie,e.geoArmadillo=Ce,e.geoArmadilloRaw=Xe,e.geoAugust=ue,e.geoAugustRaw=Qe,e.geoBaker=U,e.geoBakerRaw=pe,e.geoBerghaus=$,e.geoBerghausRaw=K,e.geoBertin1953=nr,e.geoBertin1953Raw=Ye,e.geoBoggs=kr,e.geoBoggsRaw=Oe,e.geoBonne=mr,e.geoBonneRaw=Ze,e.geoBottomley=yr,e.geoBottomleyRaw=Tr,e.geoBromley=Hr,e.geoBromleyRaw=wr,e.geoChamberlin=rr,e.geoChamberlinRaw=_e,e.geoChamberlinAfrica=Ke,e.geoCollignon=Yr,e.geoCollignonRaw=Lr,e.geoCraig=lt,e.geoCraigRaw=Fr,e.geoCraster=Kt,e.geoCrasterRaw=Rt,e.geoCylindricalEqualArea=pn,e.geoCylindricalEqualAreaRaw=cn,e.geoCylindricalStereographic=Xt,e.geoCylindricalStereographicRaw=Mn,e.geoEckert1=en,e.geoEckert1Raw=Qt,e.geoEckert2=jr,e.geoEckert2Raw=an,e.geoEckert3=Nt,e.geoEckert3Raw=Ut,e.geoEckert4=Tn,e.geoEckert4Raw=rn,e.geoEckert5=Yt,e.geoEckert5Raw=vn,e.geoEckert6=Ga,e.geoEckert6Raw=Bn,e.geoEisenlohr=ia,e.geoEisenlohrRaw=Va,e.geoFahey=On,e.geoFaheyRaw=dn,e.geoFoucaut=io,e.geoFoucautRaw=gi,e.geoFoucautSinusoidal=ms,e.geoFoucautSinusoidalRaw=mi,e.geoGilbert=ys,e.geoGingery=Yo,e.geoGingeryRaw=Uo,e.geoGinzburg4=St,e.geoGinzburg4Raw=Qr,e.geoGinzburg5=Br,e.geoGinzburg5Raw=It,e.geoGinzburg6=on,e.geoGinzburg6Raw=Zn,e.geoGinzburg8=At,e.geoGinzburg8Raw=Pn,e.geoGinzburg9=Go,e.geoGinzburg9Raw=Wa,e.geoGringorten=Wo,e.geoGringortenRaw=cu,e.geoGuyou=bs,e.geoGuyouRaw=lo,e.geoHammer=Ne,e.geoHammerRaw=ke,e.geoHammerRetroazimuthal=_s,e.geoHammerRetroazimuthalRaw=wf,e.geoHealpix=Nl,e.geoHealpixRaw=so,e.geoHill=jc,e.geoHillRaw=Af,e.geoHomolosine=Bv,e.geoHomolosineRaw=Ts,e.geoHufnagel=Tf,e.geoHufnagelRaw=jo,e.geoHyperelliptical=co,e.geoHyperellipticalRaw=fo,e.geoInterrupt=Ui,e.geoInterruptedBoggs=Uv,e.geoInterruptedHomolosine=Jo,e.geoInterruptedMollweide=Ko,e.geoInterruptedMollweideHemispheres=ks,e.geoInterruptedSinuMollweide=Ss,e.geoInterruptedSinusoidal=Qo,e.geoKavrayskiy7=Bl,e.geoKavrayskiy7Raw=Hl,e.geoLagrange=gu,e.geoLagrangeRaw=pu,e.geoLarrivee=yu,e.geoLarriveeRaw=mu,e.geoLaskowski=ea,e.geoLaskowskiRaw=za,e.geoLittrow=Gi,e.geoLittrowRaw=Ma,e.geoLoximuthal=el,e.geoLoximuthalRaw=Ls,e.geoMiller=Sf,e.geoMillerRaw=Ol,e.geoModifiedStereographic=wi,e.geoModifiedStereographicRaw=Kc,e.geoModifiedStereographicAlaska=Df,e.geoModifiedStereographicGs48=Qc,e.geoModifiedStereographicGs50=e0,e.geoModifiedStereographicMiller=qs,e.geoModifiedStereographicLee=Ds,e.geoMollweide=dr,e.geoMollweideRaw=Je,e.geoMtFlatPolarParabolic=r0,e.geoMtFlatPolarParabolicRaw=_u,e.geoMtFlatPolarQuartic=Vv,e.geoMtFlatPolarQuarticRaw=Ef,e.geoMtFlatPolarSinusoidal=xu,e.geoMtFlatPolarSinusoidalRaw=ho,e.geoNaturalEarth2=Ps,e.geoNaturalEarth2Raw=Ul,e.geoNellHammer=Pf,e.geoNellHammerRaw=Rs,e.geoInterruptedQuarticAuthalic=t0,e.geoNicolosi=n0,e.geoNicolosiRaw=Rf,e.geoPatterson=a0,e.geoPattersonRaw=Bf,e.geoPolyconic=i0,e.geoPolyconicRaw=rl,e.geoPolyhedral=Gl,e.geoPolyhedralButterfly=Ns,e.geoPolyhedralCollignon=Jv,e.geoPolyhedralWaterman=Is,e.geoProject=ku,e.geoGringortenQuincuncial=H,e.geoPeirceQuincuncial=J,e.geoPierceQuincuncial=J,e.geoQuantize=ce,e.geoQuincuncial=Uf,e.geoRectangularPolyconic=we,e.geoRectangularPolyconicRaw=oe,e.geoRobinson=ar,e.geoRobinsonRaw=je,e.geoSatellite=$e,e.geoSatelliteRaw=br,e.geoSinuMollweide=Jc,e.geoSinuMollweideRaw=As,e.geoSinusoidal=Ue,e.geoSinusoidalRaw=tr,e.geoStitch=yn,e.geoTimes=Vt,e.geoTimesRaw=Gr,e.geoTwoPointAzimuthal=Wi,e.geoTwoPointAzimuthalRaw=pa,e.geoTwoPointAzimuthalUsa=Xa,e.geoTwoPointEquidistant=ui,e.geoTwoPointEquidistantRaw=Ti,e.geoTwoPointEquidistantUsa=al,e.geoVanDerGrinten=Zl,e.geoVanDerGrintenRaw=il,e.geoVanDerGrinten2=h0,e.geoVanDerGrinten2Raw=Lu,e.geoVanDerGrinten3=Xh,e.geoVanDerGrinten3Raw=d0,e.geoVanDerGrinten4=Zi,e.geoVanDerGrinten4Raw=Yf,e.geoWagner=p0,e.geoWagner7=$v,e.geoWagnerRaw=Jh,e.geoWagner4=g0,e.geoWagner4Raw=Qh,e.geoWagner6=ed,e.geoWagner6Raw=Gf,e.geoWiechel=Ay,e.geoWiechelRaw=Kv,e.geoWinkel3=ki,e.geoWinkel3Raw=Qv,Object.defineProperty(e,"__esModule",{value:!0})})});var pF=te((t1e,dF)=>{"use strict";var da=kt(),l_=pr(),iie=dt(),Rv=Math.PI/180,Bc=180/Math.PI,u_={cursor:"pointer"},f_={cursor:"auto"};function oie(e,r){var t=e.projection,n;return r._isScoped?n=lie:r._isClipped?n=uie:n=sie,n(e,t)}dF.exports=oie;function c_(e,r){return da.behavior.zoom().translate(r.translate()).scale(r.scale())}function v_(e,r,t){var n=e.id,a=e.graphDiv,i=a.layout,o=i[n],l=a._fullLayout,s=l[n],u={},f={};function v(h,d){u[n+"."+h]=l_.nestedProperty(o,h).get(),iie.call("_storeDirectGUIEdit",i,l._preGUI,u);var m=l_.nestedProperty(s,h);m.get()!==d&&(m.set(d),l_.nestedProperty(o,h).set(d),f[n+"."+h]=d)}t(v),v("projection.scale",r.scale()/e.fitScale),v("fitbounds",!1),a.emit("plotly_relayout",f)}function lie(e,r){var t=c_(e,r);function n(){da.select(this).style(u_)}function a(){r.scale(da.event.scale).translate(da.event.translate),e.render(!0);var l=r.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":r.scale()/e.fitScale,"geo.center.lon":l[0],"geo.center.lat":l[1]})}function i(l){var s=r.invert(e.midPt);l("center.lon",s[0]),l("center.lat",s[1])}function o(){da.select(this).style(f_),v_(e,r,i)}return t.on("zoomstart",n).on("zoom",a).on("zoomend",o),t}function sie(e,r){var t=c_(e,r),n=2,a,i,o,l,s,u,f,v,h;function d(x){return r.invert(x)}function m(x){var _=d(x);if(!_)return!0;var A=r(_);return Math.abs(A[0]-x[0])>n||Math.abs(A[1]-x[1])>n}function p(){da.select(this).style(u_),a=da.mouse(this),i=r.rotate(),o=r.translate(),l=i,s=d(a)}function y(){if(u=da.mouse(this),m(a)){t.scale(r.scale()),t.translate(r.translate());return}r.scale(da.event.scale),r.translate([o[0],da.event.translate[1]]),s?d(u)&&(v=d(u),f=[l[0]+(v[0]-s[0]),i[1],i[2]],r.rotate(f),l=f):(a=u,s=d(a)),h=!0,e.render(!0);var x=r.rotate(),_=r.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":r.scale()/e.fitScale,"geo.center.lon":_[0],"geo.center.lat":_[1],"geo.projection.rotation.lon":-x[0]})}function b(){da.select(this).style(f_),h&&v_(e,r,C)}function C(x){var _=r.rotate(),A=r.invert(e.midPt);x("projection.rotation.lon",-_[0]),x("center.lon",A[0]),x("center.lat",A[1])}return t.on("zoomstart",p).on("zoom",y).on("zoomend",b),t}function uie(e,r){var t={r:r.rotate(),k:r.scale()},n=c_(e,r),a=mie(n,"zoomstart","zoom","zoomend"),i=0,o=n.on,l;n.on("zoomstart",function(){da.select(this).style(u_);var h=da.mouse(this),d=r.rotate(),m=d,p=r.translate(),y=fie(d);l=uy(r,h),o.call(n,"zoom",function(){var b=da.mouse(this);if(r.scale(t.k=da.event.scale),!l)h=b,l=uy(r,h);else if(uy(r,b)){r.rotate(d).translate(p);var C=uy(r,b),x=vie(l,C),_=die(cie(y,x)),A=t.r=hie(_,l,m);(!isFinite(A[0])||!isFinite(A[1])||!isFinite(A[2]))&&(A=m),r.rotate(A),m=A}u(a.of(this,arguments))}),s(a.of(this,arguments))}).on("zoomend",function(){da.select(this).style(f_),o.call(n,"zoom",null),f(a.of(this,arguments)),v_(e,r,v)}).on("zoom.redraw",function(){e.render(!0);var h=r.rotate();e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":r.scale()/e.fitScale,"geo.projection.rotation.lon":-h[0],"geo.projection.rotation.lat":-h[1]})});function s(h){i++||h({type:"zoomstart"})}function u(h){h({type:"zoom"})}function f(h){--i||h({type:"zoomend"})}function v(h){var d=r.rotate();h("projection.rotation.lon",-d[0]),h("projection.rotation.lat",-d[1])}return da.rebind(n,a,"on")}function uy(e,r){var t=e.invert(r);return t&&isFinite(t[0])&&isFinite(t[1])&&pie(t)}function fie(e){var r=.5*e[0]*Rv,t=.5*e[1]*Rv,n=.5*e[2]*Rv,a=Math.sin(r),i=Math.cos(r),o=Math.sin(t),l=Math.cos(t),s=Math.sin(n),u=Math.cos(n);return[i*l*u+a*o*s,a*l*u-i*o*s,i*o*u+a*l*s,i*l*s-a*o*u]}function cie(e,r){var t=e[0],n=e[1],a=e[2],i=e[3],o=r[0],l=r[1],s=r[2],u=r[3];return[t*o-n*l-a*s-i*u,t*l+n*o+a*u-i*s,t*s-n*u+a*o+i*l,t*u+n*s-a*l+i*o]}function vie(e,r){if(!(!e||!r)){var t=gie(e,r),n=Math.sqrt(hF(t,t)),a=.5*Math.acos(Math.max(-1,Math.min(1,hF(e,r)))),i=Math.sin(a)/n;return n&&[Math.cos(a),t[2]*i,-t[1]*i,t[0]*i]}}function hie(e,r,t){var n=s_(r,2,e[0]);n=s_(n,1,e[1]),n=s_(n,0,e[2]-t[2]);var a=r[0],i=r[1],o=r[2],l=n[0],s=n[1],u=n[2],f=Math.atan2(i,a)*Bc,v=Math.sqrt(a*a+i*i),h,d;Math.abs(s)>v?(d=(s>0?90:-90)-f,h=0):(d=Math.asin(s/v)*Bc-f,h=Math.sqrt(v*v-s*s));var m=180-d-2*f,p=(Math.atan2(u,l)-Math.atan2(o,h))*Bc,y=(Math.atan2(u,l)-Math.atan2(o,-h))*Bc,b=cF(t[0],t[1],d,p),C=cF(t[0],t[1],m,y);return b<=C?[d,p,t[2]]:[m,y,t[2]]}function cF(e,r,t,n){var a=vF(t-e),i=vF(n-r);return Math.sqrt(a*a+i*i)}function vF(e){return(e%360+540)%360-180}function s_(e,r,t){var n=t*Rv,a=e.slice(),i=r===0?1:0,o=r===2?1:2,l=Math.cos(n),s=Math.sin(n);return a[i]=e[i]*l-e[o]*s,a[o]=e[o]*l+e[i]*s,a}function die(e){return[Math.atan2(2*(e[0]*e[1]+e[2]*e[3]),1-2*(e[1]*e[1]+e[2]*e[2]))*Bc,Math.asin(Math.max(-1,Math.min(1,2*(e[0]*e[2]-e[3]*e[1]))))*Bc,Math.atan2(2*(e[0]*e[3]+e[1]*e[2]),1-2*(e[2]*e[2]+e[3]*e[3]))*Bc]}function pie(e){var r=e[0]*Rv,t=e[1]*Rv,n=Math.cos(t);return[n*Math.cos(r),n*Math.sin(r),Math.sin(t)]}function hF(e,r){for(var t=0,n=0,a=e.length;n{"use strict";var uu=kt(),p_=o_(),yie=p_.geoPath,bie=p_.geoDistance,_ie=fF(),xie=dt(),Uh=pr(),wie=Uh.strTranslate,fy=Et(),Oh=fn(),gF=ss(),Mie=ca(),d_=Dn(),mF=ju().getAutoRange,h_=To(),Aie=nu().prepSelect,Tie=nu().clearOutline,kie=nu().selectOnClick,Sie=pF(),pi=Ih(),Cie=ny(),bF=Zm(),Lie=G4().feature;function _F(e){this.id=e.id,this.graphDiv=e.graphDiv,this.container=e.container,this.topojsonURL=e.topojsonURL,this.isStatic=e.staticPlot,this.topojsonName=null,this.topojson=null,this.projection=null,this.scope=null,this.viewInitial=null,this.fitScale=null,this.bounds=null,this.midPt=null,this.hasChoropleth=!1,this.traceHash={},this.layers={},this.basePaths={},this.dataPaths={},this.dataPoints={},this.clipDef=null,this.clipRect=null,this.bgRect=null,this.makeFramework()}var Dl=_F.prototype;xF.exports=function(r){return new _F(r)};Dl.plot=function(e,r,t,n){var a=this;if(n)return a.update(e,r,!0);a._geoCalcData=e,a._fullLayout=r;var i=r[this.id],o=[],l=!1;for(var s in pi.layerNameToAdjective)if(s!=="frame"&&i["show"+s]){l=!0;break}for(var u=!1,f=0;f0&&o._module.calcGeoJSON(i,r)}if(!t){var l=this.updateProjection(e,r);if(l)return;(!this.viewInitial||this.scope!==n.scope)&&this.saveViewInitial(n)}this.scope=n.scope,this.updateBaseLayers(r,n),this.updateDims(r,n),this.updateFx(r,n),Mie.generalUpdatePerTraceModule(this.graphDiv,this,e,n);var s=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=s.selectAll(".point"),this.dataPoints.text=s.selectAll("text"),this.dataPaths.line=s.selectAll(".js-line");var u=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=u.selectAll("path"),this._render()};Dl.updateProjection=function(e,r){var t=this.graphDiv,n=r[this.id],a=r._size,i=n.domain,o=n.projection,l=n.lonaxis,s=n.lataxis,u=l._ax,f=s._ax,v=this.projection=qie(n),h=[[a.l+a.w*i.x[0],a.t+a.h*(1-i.y[1])],[a.l+a.w*i.x[1],a.t+a.h*(1-i.y[0])]],d=n.center||{},m=o.rotation||{},p=l.range||[],y=s.range||[];if(n.fitbounds){u._length=h[1][0]-h[0][0],f._length=h[1][1]-h[0][1],u.range=mF(t,u),f.range=mF(t,f);var b=(u.range[0]+u.range[1])/2,C=(f.range[0]+f.range[1])/2;if(n._isScoped)d={lon:b,lat:C};else if(n._isClipped){d={lon:b,lat:C},m={lon:b,lat:C,roll:m.roll};var x=o.type,_=pi.lonaxisSpan[x]/2||180,A=pi.lataxisSpan[x]/2||90;p=[b-_,b+_],y=[C-A,C+A]}else d={lon:b,lat:C},m={lon:b,lat:m.lat,roll:m.roll}}v.center([d.lon-m.lon,d.lat-m.lat]).rotate([-m.lon,-m.lat,m.roll]).parallels(o.parallels);var k=yF(p,y);v.fitExtent(h,k);var M=this.bounds=v.getBounds(k),D=this.fitScale=v.scale(),z=v.translate();if(n.fitbounds){var F=v.getBounds(yF(u.range,f.range)),I=Math.min((M[1][0]-M[0][0])/(F[1][0]-F[0][0]),(M[1][1]-M[0][1])/(F[1][1]-F[0][1]));isFinite(I)?v.scale(I*D):Uh.warn("Something went wrong during"+this.id+"fitbounds computations.")}else v.scale(o.scale*D);var W=this.midPt=[(M[0][0]+M[1][0])/2,(M[0][1]+M[1][1])/2];if(v.translate([z[0]+(W[0]-z[0]),z[1]+(W[1]-z[1])]).clipExtent(M),n._isAlbersUsa){var B=v([d.lon,d.lat]),X=v.translate();v.translate([X[0]-(B[0]-X[0]),X[1]-(B[1]-X[1])])}};Dl.updateBaseLayers=function(e,r){var t=this,n=t.topojson,a=t.layers,i=t.basePaths;function o(h){return h==="lonaxis"||h==="lataxis"}function l(h){return!!pi.lineLayers[h]}function s(h){return!!pi.fillLayers[h]}var u=this.hasChoropleth?pi.layersForChoropleth:pi.layers,f=u.filter(function(h){return l(h)||s(h)?r["show"+h]:o(h)?r[h].showgrid:!0}),v=t.framework.selectAll(".layer").data(f,String);v.exit().each(function(h){delete a[h],delete i[h],uu.select(this).remove()}),v.enter().append("g").attr("class",function(h){return"layer "+h}).each(function(h){var d=a[h]=uu.select(this);h==="bg"?t.bgRect=d.append("rect").style("pointer-events","all"):o(h)?i[h]=d.append("path").style("fill","none"):h==="backplot"?d.append("g").classed("choroplethlayer",!0):h==="frontplot"?d.append("g").classed("scatterlayer",!0):l(h)?i[h]=d.append("path").style("fill","none").style("stroke-miterlimit",2):s(h)&&(i[h]=d.append("path").style("stroke","none"))}),v.order(),v.each(function(h){var d=i[h],m=pi.layerNameToAdjective[h];h==="frame"?d.datum(pi.sphereSVG):l(h)||s(h)?d.datum(Lie(n,n.objects[h])):o(h)&&d.datum(Die(h,r,e)).call(fy.stroke,r[h].gridcolor).call(Oh.dashLine,r[h].griddash,r[h].gridwidth),l(h)?d.call(fy.stroke,r[m+"color"]).call(Oh.dashLine,"",r[m+"width"]):s(h)&&d.call(fy.fill,r[m+"color"])})};Dl.updateDims=function(e,r){var t=this.bounds,n=(r.framewidth||0)/2,a=t[0][0]-n,i=t[0][1]-n,o=t[1][0]-a+n,l=t[1][1]-i+n;Oh.setRect(this.clipRect,a,i,o,l),this.bgRect.call(Oh.setRect,a,i,o,l).call(fy.fill,r.bgcolor),this.xaxis._offset=a,this.xaxis._length=o,this.yaxis._offset=i,this.yaxis._length=l};Dl.updateFx=function(e,r){var t=this,n=t.graphDiv,a=t.bgRect,i=e.dragmode,o=e.clickmode;if(t.isStatic)return;function l(){var v=t.viewInitial,h={};for(var d in v)h[t.id+"."+d]=v[d];xie.call("_guiRelayout",n,h),n.emit("plotly_doubleclick",null)}function s(v){return t.projection.invert([v[0]+t.xaxis._offset,v[1]+t.yaxis._offset])}var u=function(v,h){if(h.isRect){var d=v.range={};d[t.id]=[s([h.xmin,h.ymin]),s([h.xmax,h.ymax])]}else{var m=v.lassoPoints={};m[t.id]=h.map(s)}},f={element:t.bgRect.node(),gd:n,plotinfo:{id:t.id,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:u},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id,clickFn:function(v){v===2&&Tie(n)}};i==="pan"?(a.node().onmousedown=null,a.call(Sie(t,r)),a.on("dblclick.zoom",l),n._context._scrollZoom.geo||a.on("wheel.zoom",null)):(i==="select"||i==="lasso")&&(a.on(".zoom",null),f.prepFn=function(v,h,d){Aie(v,h,d,f,i)},h_.init(f)),a.on("mousemove",function(){var v=t.projection.invert(Uh.getPositionFromD3Event());if(!v)return h_.unhover(n,uu.event);t.xaxis.p2c=function(){return v[0]},t.yaxis.p2c=function(){return v[1]},gF.hover(n,uu.event,t.id)}),a.on("mouseout",function(){n._dragging||h_.unhover(n,uu.event)}),a.on("click",function(){i!=="select"&&i!=="lasso"&&(o.indexOf("select")>-1&&kie(uu.event,n,[t.xaxis],[t.yaxis],t.id,f),o.indexOf("event")>-1&&gF.click(n,uu.event))})};Dl.makeFramework=function(){var e=this,r=e.graphDiv,t=r._fullLayout,n="clip"+t._uid+e.id;e.clipDef=t._clips.append("clipPath").attr("id",n),e.clipRect=e.clipDef.append("rect"),e.framework=uu.select(e.container).append("g").attr("class","geo "+e.id).call(Oh.setClipUrl,n,r),e.project=function(a){var i=e.projection(a);return i?[i[0]-e.xaxis._offset,i[1]-e.yaxis._offset]:[null,null]},e.xaxis={_id:"x",c2p:function(a){return e.project(a)[0]}},e.yaxis={_id:"y",c2p:function(a){return e.project(a)[1]}},e.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},d_.setConvert(e.mockAxis,t)};Dl.saveViewInitial=function(e){var r=e.center||{},t=e.projection,n=t.rotation||{};this.viewInitial={fitbounds:e.fitbounds,"projection.scale":t.scale};var a;e._isScoped?a={"center.lon":r.lon,"center.lat":r.lat}:e._isClipped?a={"projection.rotation.lon":n.lon,"projection.rotation.lat":n.lat}:a={"center.lon":r.lon,"center.lat":r.lat,"projection.rotation.lon":n.lon},Uh.extendFlat(this.viewInitial,a)};Dl.render=function(e){this._hasMarkerAngles&&e?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()};Dl._render=function(){var e=this.projection,r=e.getPath(),t;function n(i){var o=e(i.lonlat);return o?wie(o[0],o[1]):null}function a(i){return e.isLonLatOverEdges(i.lonlat)?"none":null}for(t in this.basePaths)this.basePaths[t].attr("d",r);for(t in this.dataPaths)this.dataPaths[t].attr("d",function(i){return r(i.geojson)});for(t in this.dataPoints)this.dataPoints[t].attr("display",a).attr("transform",n)};function qie(e){var r=e.projection,t=r.type,n=pi.projNames[t];n="geo"+Uh.titleCase(n);for(var a=p_[n]||_ie[n],i=a(),o=e._isSatellite?Math.acos(1/r.distance)*180/Math.PI:e._isClipped?pi.lonaxisSpan[t]/2:null,l=["center","rotate","parallels","clipExtent"],s=function(v){return v?i:[]},u=0;um}else return!1},i.getPath=function(){return yie().projection(i)},i.getBounds=function(v){return i.getPath().bounds(v)},i.precision(pi.precision),e._isSatellite&&i.tilt(r.tilt).distance(r.distance),o&&i.clipAngle(o-pi.clipPad),i}function Die(e,r,t){var n=1e-6,a=2.5,i=r[e],o=pi.scopeDefaults[r.scope],l,s,u;e==="lonaxis"?(l=o.lonaxisRange,s=o.lataxisRange,u=function(C,x){return[C,x]}):e==="lataxis"&&(l=o.lataxisRange,s=o.lonaxisRange,u=function(C,x){return[x,C]});var f={type:"linear",range:[l[0],l[1]-n],tick0:i.tick0,dtick:i.dtick};d_.setConvert(f,t);var v=d_.calcTicks(f);!r.isScoped&&e==="lonaxis"&&v.pop();for(var h=v.length,d=new Array(h),m=0;m0&&a<0&&(a+=360);var l=(a-n)/4;return{type:"Polygon",coordinates:[[[n,i],[n,o],[n+l,o],[n+2*l,o],[n+3*l,o],[a,o],[a,i],[a-l,i],[a-2*l,i],[a-3*l,i],[n,i]]]}}});var g_=te((a1e,TF)=>{"use strict";var Nv=vl(),Eie=Hm().attributes,Pie=Kl().dash,zv=Ih(),Rie=_o().overrideAll,MF=Dd(),AF={range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},showgrid:{valType:"boolean",dflt:!1},tick0:{valType:"number",dflt:0},dtick:{valType:"number"},gridcolor:{valType:"color",dflt:Nv.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:Pie},zie=TF.exports=Rie({domain:Eie({name:"geo"},{}),fitbounds:{valType:"enumerated",values:[!1,"locations","geojson"],dflt:!1,editType:"plot"},resolution:{valType:"enumerated",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:"enumerated",values:MF(zv.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:MF(zv.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:Nv.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:zv.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:zv.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:zv.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:zv.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:Nv.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:Nv.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:Nv.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:Nv.background},lonaxis:AF,lataxis:AF},"plot","from-root");zie.uirevision={valType:"any",editType:"none"}});var SF=te((i1e,kF)=>{"use strict";var Nie=pr(),Fie=_n(),Iie=Hm().defaults;kF.exports=function(r,t,n,a){var i=a.type,o=a.attributes,l=a.handleDefaults,s=a.partition||"x",u=t._subplots[i],f=u.length,v=f&&u[0].replace(/\d+$/,""),h,d;function m(C,x){return Nie.coerce(h,d,o,C,x)}for(var p=0;p{"use strict";var cy=pr(),Hie=SF(),Bie=_1().getSubplotData,vy=Ih(),Oie=g_(),CF=vy.axesNames;LF.exports=function(r,t,n){Hie(r,t,n,{type:"geo",attributes:Oie,handleDefaults:Uie,fullData:n,partition:"y"})};function Uie(e,r,t,n){var a=Bie(n.fullData,"geo",n.id),i=a.map(function(he){return he.index}),o=t("resolution"),l=t("scope"),s=vy.scopeDefaults[l],u=t("projection.type",s.projType),f=r._isAlbersUsa=u==="albers usa";f&&(l=r.scope="usa");var v=r._isScoped=l!=="world",h=r._isSatellite=u==="satellite",d=r._isConic=u.indexOf("conic")!==-1||u==="albers",m=r._isClipped=!!vy.lonaxisSpan[u];if(e.visible===!1){var p=cy.extendDeep({},r._template);p.showcoastlines=!1,p.showcountries=!1,p.showframe=!1,p.showlakes=!1,p.showland=!1,p.showocean=!1,p.showrivers=!1,p.showsubunits=!1,p.lonaxis&&(p.lonaxis.showgrid=!1),p.lataxis&&(p.lataxis.showgrid=!1),r._template=p}for(var y=t("visible"),b,C=0;C0&&B<0&&(B+=360);var X=(W+B)/2,V;if(!f){var re=v?s.projRotate:[X,0,0];V=t("projection.rotation.lon",re[0]),t("projection.rotation.lat",re[1]),t("projection.rotation.roll",re[2]),b=t("showcoastlines",!v&&y),b&&(t("coastlinecolor"),t("coastlinewidth")),b=t("showocean",y?void 0:!1),b&&t("oceancolor")}var ae,Q;if(f?(ae=-96.6,Q=38.7):(ae=v?X:V,Q=(I[0]+I[1])/2),t("center.lon",ae),t("center.lat",Q),h&&(t("projection.tilt"),t("projection.distance")),d){var ee=s.projParallels||[0,60];t("projection.parallels",ee)}t("projection.scale"),b=t("showland",y?void 0:!1),b&&t("landcolor"),b=t("showlakes",y?void 0:!1),b&&t("lakecolor"),b=t("showrivers",y?void 0:!1),b&&(t("rivercolor"),t("riverwidth")),b=t("showcountries",v&&l!=="usa"&&y),b&&(t("countrycolor"),t("countrywidth")),(l==="usa"||l==="north america"&&o===50)&&(t("showsubunits",y),t("subunitcolor"),t("subunitwidth")),v||(b=t("showframe",y),b&&(t("framecolor"),t("framewidth"))),t("bgcolor");var fe=t("fitbounds");fe&&(delete r.projection.scale,v?(delete r.center.lon,delete r.center.lat):m?(delete r.center.lon,delete r.center.lat,delete r.projection.rotation.lon,delete r.projection.rotation.lat,delete r.lonaxis.range,delete r.lataxis.range):(delete r.center.lon,delete r.center.lat,delete r.projection.rotation.lon))}});var m_=te((l1e,PF)=>{"use strict";var Yie=_1().getSubplotCalcData,Gie=pr().counterRegex,Vie=wF(),ps="geo",DF=Gie(ps),EF={};EF[ps]={valType:"subplotid",dflt:ps,editType:"calc"};function Wie(e){for(var r=e._fullLayout,t=e.calcdata,n=r._subplots[ps],a=0;a{"use strict";RF.exports={attributes:Fh(),supplyDefaults:cN(),colorbar:Nb(),formatLabels:dN(),calc:bN(),calcGeoJSON:a_().calcGeoJSON,plot:a_().plot,style:e_(),styleOnSelect:wh().styleOnSelect,hoverPoints:rF(),eventData:nF(),selectPoints:oF(),moduleType:"trace",name:"scattergeo",basePlotModule:m_(),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}});var FF=te((u1e,NF)=>{"use strict";NF.exports=zF()});var hy=te((f1e,BF)=>{"use strict";var{hovertemplateAttrs:jie,templatefallbackAttrs:Jie}=Qf(),pf=Fh(),$ie=O0(),IF=bo(),Kie=vl().defaultLine,df=sa().extendFlat,HF=pf.marker.line;BF.exports=df({locations:{valType:"data_array",editType:"calc"},locationmode:pf.locationmode,z:{valType:"data_array",editType:"calc"},geojson:df({},pf.geojson,{}),featureidkey:pf.featureidkey,text:df({},pf.text,{}),hovertext:df({},pf.hovertext,{}),marker:{line:{color:df({},HF.color,{dflt:Kie}),width:df({},HF.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:pf.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:pf.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:df({},IF.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:jie(),hovertemplatefallback:Jie(),showlegend:df({},IF.showlegend,{dflt:!1})},$ie("",{cLetter:"z",editTypeOverride:"calc"}))});var UF=te((c1e,OF)=>{"use strict";var Yh=pr(),Qie=U0(),eoe=hy(),roe=["The library used by the *country names* `locationmode` option is changing in the next major version.","Some country names in existing plots may not work in the new version.","To ensure consistent behavior, consider setting `locationmode` to *ISO-3*."].join(" ");OF.exports=function(r,t,n,a){function i(h,d){return Yh.coerce(r,t,eoe,h,d)}var o=i("locations"),l=i("z");if(!(o&&o.length&&Yh.isArrayOrTypedArray(l)&&l.length)){t.visible=!1;return}t._length=Math.min(o.length,l.length);var s=i("geojson"),u;(typeof s=="string"&&s!==""||Yh.isPlainObject(s))&&(u="geojson-id");var f=i("locationmode",u);f==="country names"&&Yh.warn(roe),f==="geojson-id"&&i("featureidkey"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var v=i("marker.line.width");v&&i("marker.line.color"),i("marker.opacity"),Qie(r,t,a,i,{prefix:"",cLetter:"z"}),Yh.coerceSelectionMarkerOpacity(t,i)}});var GF=te((v1e,YF)=>{"use strict";YF.exports={min:"zmin",max:"zmax"}});var XF=te((h1e,ZF)=>{"use strict";var VF=Ht(),toe=Rn().BADNUM,noe=np(),aoe=mh(),ioe=nm();function WF(e){return e&&typeof e=="string"}ZF.exports=function(r,t){var n=t._length,a=new Array(n),i;t.geojson?i=function(f){return WF(f)||VF(f)}:i=WF;for(var o=0;o{"use strict";var ooe=kt(),loe=Et(),y_=fn(),soe=ip();function uoe(e,r){r&&jF(e,r)}function jF(e,r){var t=r[0].trace,n=r[0].node3,a=n.selectAll(".choroplethlocation"),i=t.marker||{},o=i.line||{},l=soe.makeColorScaleFuncFromTrace(t);a.each(function(s){ooe.select(this).attr("fill",l(s.z)).call(loe.stroke,s.mlc||o.color).call(y_.dashLine,"",s.mlw||o.width||0).style("opacity",i.opacity)}),y_.selectedPointStyle(a,t)}function foe(e,r){var t=r[0].node3,n=r[0].trace;n.selectedpoints?y_.selectedPointStyle(t.selectAll(".choroplethlocation"),n):jF(e,r)}JF.exports={style:uoe,styleOnSelect:foe}});var b_=te((p1e,QF)=>{"use strict";var coe=kt(),$F=pr(),Fv=ny(),voe=Zm().getTopojsonFeatures,KF=ju().findExtremes,hoe=dy().style;function doe(e,r,t){var n=r.layers.backplot.select(".choroplethlayer");$F.makeTraceGroups(n,t,"trace choropleth").each(function(a){var i=coe.select(this),o=i.selectAll("path.choroplethlocation").data($F.identity);o.enter().append("path").classed("choroplethlocation",!0),o.exit().remove(),hoe(e,a)})}function poe(e,r){for(var t=e[0].trace,n=r[t.geo],a=n._subplot,i=t.locationmode,o=t._length,l=i==="geojson-id"?Fv.extractTraceFeature(e):voe(t,a.topojson),s=[],u=[],f=0;f{"use strict";var goe=Dn(),moe=hy(),yoe=pr().fillText;eI.exports=function(r,t,n){var a=r.cd,i=a[0].trace,o=r.subplot,l,s,u,f,v=[t,n],h=[t+360,n];for(s=0;s")}}});var nI=te((m1e,tI)=>{"use strict";tI.exports=function(r,t,n,a,i){r.location=t.location,r.z=t.z;var o=a[i];return o.fIn&&o.fIn.properties&&(r.properties=o.fIn.properties),r.ct=o.ct,r}});var iI=te((y1e,aI)=>{"use strict";aI.exports=function(r,t){var n=r.cd,a=r.xaxis,i=r.yaxis,o=[],l,s,u,f,v;if(t===!1)for(l=0;l{"use strict";oI.exports={attributes:hy(),supplyDefaults:UF(),colorbar:GF(),calc:XF(),calcGeoJSON:b_().calcGeoJSON,plot:b_().plot,style:dy().style,styleOnSelect:dy().styleOnSelect,hoverPoints:rI(),eventData:nI(),selectPoints:iI(),moduleType:"trace",name:"choropleth",basePlotModule:m_(),categories:["geo","noOpacity","showLegend"],meta:{}}});var uI=te((_1e,sI)=>{"use strict";sI.exports=lI()});var Ua=te((x1e,cI)=>{"use strict";var fI=Object.getOwnPropertySymbols,_oe=Object.prototype.hasOwnProperty,xoe=Object.prototype.propertyIsEnumerable;function woe(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function Moe(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var r={},t=0;t<10;t++)r["_"+String.fromCharCode(t)]=t;var n=Object.getOwnPropertyNames(r).map(function(i){return r[i]});if(n.join("")!=="0123456789")return!1;var a={};return"abcdefghijklmnopqrst".split("").forEach(function(i){a[i]=i}),Object.keys(Object.assign({},a)).join("")==="abcdefghijklmnopqrst"}catch(i){return!1}}cI.exports=Moe()?Object.assign:function(e,r){for(var t,n=woe(e),a,i=1;i{var gy=Ua();function vI(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}gy(vI.prototype,{instance:function(e,r){e=(e||"gregorian").toLowerCase(),r=r||"";var t=this._localCals[e+"-"+r];if(!t&&this.calendars[e]&&(t=new this.calendars[e](r),this._localCals[e+"-"+r]=t),!t)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return t},newDate:function(e,r,t,n,a){return n=(e!=null&&e.year?e.calendar():typeof n=="string"?this.instance(n,a):n)||this.instance(),n.newDate(e,r,t)},substituteDigits:function(e){return function(r){return(r+"").replace(/[0-9]/g,function(t){return e[t]})}},substituteChineseDigits:function(e,r){return function(t){for(var n="",a=0;t>0;){var i=t%10;n=(i===0?"":e[i]+r[a])+n,a++,t=Math.floor(t/10)}return n.indexOf(e[1]+r[1])===0&&(n=n.substr(1)),n||e[0]}}});function __(e,r,t,n){if(this._calendar=e,this._year=r,this._month=t,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function py(e,r){return e=""+e,"000000".substring(0,r-e.length)+e}gy(__.prototype,{newDate:function(e,r,t){return this._calendar.newDate(e==null?this:e,r,t)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,r,t){if(!this._calendar.isValid(e,r,t))throw(Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=r,this._day=t,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,r){return this._calendar.add(this,e,r)},set:function(e,r){return this._calendar.set(this,e,r)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(Tt.local.differentCalendars||Tt.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var r=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return r===0?0:r<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+py(Math.abs(this.year()),4)+"-"+py(this.month(),2)+"-"+py(this.day(),2)}});function x_(){this.shortYearCutoff="+10"}gy(x_.prototype,{_validateLevel:0,newDate:function(e,r,t){return e==null?this.today():(e.year&&(this._validate(e,r,t,Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate),t=e.day(),r=e.month(),e=e.year()),new __(this,e,r,t))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var r=this._validate(e,this.minMonth,this.minDay,Tt.local.invalidYear||Tt.regionalOptions[""].invalidYear);return r.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Tt.local.invalidYear||Tt.regionalOptions[""].invalidYear);return(r.year()<0?"-":"")+py(Math.abs(r.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Tt.local.invalidYear||Tt.regionalOptions[""].invalidYear),12},monthOfYear:function(e,r){var t=this._validate(e,r,this.minDay,Tt.local.invalidMonth||Tt.regionalOptions[""].invalidMonth);return(t.month()+this.monthsInYear(t)-this.firstMonth)%this.monthsInYear(t)+this.minMonth},fromMonthOfYear:function(e,r){var t=(r+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,t,this.minDay,Tt.local.invalidMonth||Tt.regionalOptions[""].invalidMonth),t},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Tt.local.invalidYear||Tt.regionalOptions[""].invalidYear);return this.leapYear(r)?366:365},dayOfYear:function(e,r,t){var n=this._validate(e,r,t,Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,r,t){var n=this._validate(e,r,t,Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(e,r,t){return this._validate(e,r,t,Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate),{}},add:function(e,r,t){return this._validate(e,this.minMonth,this.minDay,Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,r,t),r,t)},_add:function(e,r,t){if(this._validateLevel++,t==="d"||t==="w"){var n=e.toJD()+r*(t==="w"?this.daysInWeek():1),a=e.calendar().fromJD(n);return this._validateLevel--,[a.year(),a.month(),a.day()]}try{var i=e.year()+(t==="y"?r:0),o=e.monthOfYear()+(t==="m"?r:0),a=e.day(),l=function(f){for(;ov-1+f.minMonth;)i++,o-=v,v=f.monthsInYear(i)};t==="y"?(e.month()!==this.fromMonthOfYear(i,o)&&(o=this.newDate(i,e.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(i)),a=Math.min(a,this.daysInMonth(i,this.fromMonthOfYear(i,o)))):t==="m"&&(l(this),a=Math.min(a,this.daysInMonth(i,this.fromMonthOfYear(i,o))));var s=[i,this.fromMonthOfYear(i,o),a];return this._validateLevel--,s}catch(u){throw this._validateLevel--,u}},_correctAdd:function(e,r,t,n){if(!this.hasYearZero&&(n==="y"||n==="m")&&(r[0]===0||e.year()>0!=r[0]>0)){var a={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],i=t<0?-1:1;r=this._add(e,t*a[0]+i*a[1],a[2])}return e.date(r[0],r[1],r[2])},set:function(e,r,t){this._validate(e,this.minMonth,this.minDay,Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate);var n=t==="y"?r:e.year(),a=t==="m"?r:e.month(),i=t==="d"?r:e.day();return(t==="y"||t==="m")&&(i=Math.min(i,this.daysInMonth(n,a))),e.date(n,a,i)},isValid:function(e,r,t){this._validateLevel++;var n=this.hasYearZero||e!==0;if(n){var a=this.newDate(e,r,this.minDay);n=r>=this.minMonth&&r-this.minMonth=this.minDay&&t-this.minDay13.5?13:1),u=a-(s>2.5?4716:4715);return u<=0&&u--,this.newDate(u,s,l)},toJSDate:function(e,r,t){var n=this._validate(e,r,t,Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate),a=new Date(n.year(),n.month()-1,n.day());return a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0),a.setHours(a.getHours()>12?a.getHours()+2:0),a},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var Tt=hI.exports=new vI;Tt.cdate=__;Tt.baseCalendar=x_;Tt.calendars.gregorian=w_});var dI=te(()=>{var M_=Ua(),Sa=Ya();M_(Sa.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});Sa.local=Sa.regionalOptions[""];M_(Sa.cdate.prototype,{formatDate:function(e,r){return typeof e!="string"&&(r=e,e=""),this._calendar.formatDate(e||"",this,r)}});M_(Sa.baseCalendar.prototype,{UNIX_EPOCH:Sa.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:Sa.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,r,t){if(typeof e!="string"&&(t=r,r=e,e=""),!r)return"";if(r.calendar()!==this)throw Sa.local.invalidFormat||Sa.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,t=t||{};for(var n=t.dayNamesShort||this.local.dayNamesShort,a=t.dayNames||this.local.dayNames,i=t.monthNumbers||this.local.monthNumbers,o=t.monthNamesShort||this.local.monthNamesShort,l=t.monthNames||this.local.monthNames,s=t.calculateWeek||this.local.calculateWeek,u=function(_,A){for(var k=1;x+k1},f=function(_,A,k,M){var D=""+A;if(u(_,M))for(;D.length1},C=function(W,B){var X=b(W,B),V=[2,3,X?4:2,X?4:2,10,11,20]["oyYJ@!".indexOf(W)+1],re=new RegExp("^-?\\d{1,"+V+"}"),ae=r.substring(D).match(re);if(!ae)throw(Sa.local.missingNumberAt||Sa.regionalOptions[""].missingNumberAt).replace(/\{0\}/,D);return D+=ae[0].length,parseInt(ae[0],10)},x=this,_=function(){if(typeof l=="function"){b("m");var W=l.call(x,r.substring(D));return D+=W.length,W}return C("m")},A=function(W,B,X,V){for(var re=b(W,V)?X:B,ae=0;ae-1){h=1,d=m;for(var I=this.daysInMonth(v,h);d>I;I=this.daysInMonth(v,h))h++,d-=I}return f>-1?this.fromJD(f):this.newDate(v,h,d)},determineDate:function(e,r,t,n,a){t&&typeof t!="object"&&(a=n,n=t,t=null),typeof n!="string"&&(a=n,n="");var i=this,o=function(l){try{return i.parseDate(n,l,a)}catch(v){}l=l.toLowerCase();for(var s=(l.match(/^c/)&&t?t.newDate():null)||i.today(),u=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,f=u.exec(l);f;)s.add(parseInt(f[1],10),f[2]||"d"),f=u.exec(l);return s};return r=r?r.newDate():null,e=e==null?r:typeof e=="string"?o(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?r:i.today().add(e,"d"):i.newDate(e),e}})});var pI=te(()=>{var gf=Ya(),Aoe=Ua(),A_=gf.instance();function my(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}my.prototype=new gf.baseCalendar;Aoe(my.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,r){if(typeof e=="string"){var t=e.match(koe);return t?t[0]:""}var n=this._validateYear(e),a=e.month(),i=""+this.toChineseMonth(n,a);return r&&i.length<2&&(i="0"+i),this.isIntercalaryMonth(n,a)&&(i+="i"),i},monthNames:function(e){if(typeof e=="string"){var r=e.match(Soe);return r?r[0]:""}var t=this._validateYear(e),n=e.month(),a=this.toChineseMonth(t,n),i=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][a-1];return this.isIntercalaryMonth(t,n)&&(i="\u95F0"+i),i},monthNamesShort:function(e){if(typeof e=="string"){var r=e.match(Coe);return r?r[0]:""}var t=this._validateYear(e),n=e.month(),a=this.toChineseMonth(t,n),i=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][a-1];return this.isIntercalaryMonth(t,n)&&(i="\u95F0"+i),i},parseMonth:function(e,r){e=this._validateYear(e);var t=parseInt(r),n;if(isNaN(t))r[0]==="\u95F0"&&(n=!0,r=r.substring(1)),r[r.length-1]==="\u6708"&&(r=r.substring(0,r.length-1)),t=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(r);else{var a=r[r.length-1];n=a==="i"||a==="I"}var i=this.toMonthIndex(e,t,n);return i},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,r){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw r.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,r,t){var n=this.intercalaryMonth(e),a=t&&r!==n;if(a||r<1||r>12)throw gf.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return n?!t&&r<=n?i=r-1:i=r:i=r-1,i},toChineseMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e),n=t?12:11;if(r<0||r>n)throw gf.local.invalidMonth.replace(/\{0\}/,this.local.name);var a;return t?r>13;return t},isIntercalaryMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e);return!!t&&t===r},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,r,t){var n=this._validateYear(e,gf.local.invalidyear),a=yf[n-yf[0]],i=a>>9&4095,o=a>>5&15,l=a&31,s;s=A_.newDate(i,o,l),s.add(4-(s.dayOfWeek()||7),"d");var u=this.toJD(e,r,t)-s.toJD();return 1+Math.floor(u/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,r){e.year&&(r=e.month(),e=e.year()),e=this._validateYear(e);var t=mf[e-mf[0]],n=t>>13,a=n?12:11;if(r>a)throw gf.local.invalidMonth.replace(/\{0\}/,this.local.name);var i=t&1<<12-r?30:29;return i},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,i,t,gf.local.invalidDate);e=this._validateYear(n.year()),r=n.month(),t=n.day();var a=this.isIntercalaryMonth(e,r),i=this.toChineseMonth(e,r),o=qoe(e,i,t,a);return A_.toJD(o.year,o.month,o.day)},fromJD:function(e){var r=A_.fromJD(e),t=Loe(r.year(),r.month(),r.day()),n=this.toMonthIndex(t.year,t.month,t.isIntercalary);return this.newDate(t.year,n,t.day)},fromString:function(e){var r=e.match(Toe),t=this._validateYear(+r[1]),n=+r[2],a=!!r[3],i=this.toMonthIndex(t,n,a),o=+r[4];return this.newDate(t,i,o)},add:function(e,r,t){var n=e.year(),a=e.month(),i=this.isIntercalaryMonth(n,a),o=this.toChineseMonth(n,a),l=Object.getPrototypeOf(my.prototype).add.call(this,e,r,t);if(t==="y"){var s=l.year(),u=l.month(),f=this.isIntercalaryMonth(s,o),v=i&&f?this.toMonthIndex(s,o,!0):this.toMonthIndex(s,o,!1);v!==u&&l.month(v)}return l}});var Toe=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,koe=/^\d?\d[iI]?/m,Soe=/^闰?十?[一二三四五六七八九]?月/m,Coe=/^闰?十?[一二三四五六七八九]?/m;gf.calendars.chinese=my;var mf=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],yf=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function Loe(e,r,t,n){var a,i;if(typeof e=="object")a=e,i=r||{};else{var o=typeof e=="number"&&e>=1888&&e<=2111;if(!o)throw new Error("Solar year outside range 1888-2111");var l=typeof r=="number"&&r>=1&&r<=12;if(!l)throw new Error("Solar month outside range 1 - 12");var s=typeof t=="number"&&t>=1&&t<=31;if(!s)throw new Error("Solar day outside range 1 - 31");a={year:e,month:r,day:t},i=n||{}}var u=yf[a.year-yf[0]],f=a.year<<9|a.month<<5|a.day;i.year=f>=u?a.year:a.year-1,u=yf[i.year-yf[0]];var v=u>>9&4095,h=u>>5&15,d=u&31,m,p=new Date(v,h-1,d),y=new Date(a.year,a.month-1,a.day);m=Math.round((y-p)/(24*3600*1e3));var b=mf[i.year-mf[0]],C;for(C=0;C<13;C++){var x=b&1<<12-C?30:29;if(m>13;return!_||C<_?(i.isIntercalary=!1,i.month=1+C):C===_?(i.isIntercalary=!0,i.month=C):(i.isIntercalary=!1,i.month=C),i.day=1+m,i}function qoe(e,r,t,n,a){var i,o;if(typeof e=="object")o=e,i=r||{};else{var l=typeof e=="number"&&e>=1888&&e<=2111;if(!l)throw new Error("Lunar year outside range 1888-2111");var s=typeof r=="number"&&r>=1&&r<=12;if(!s)throw new Error("Lunar month outside range 1 - 12");var u=typeof t=="number"&&t>=1&&t<=30;if(!u)throw new Error("Lunar day outside range 1 - 30");var f;typeof n=="object"?(f=!1,i=n):(f=!!n,i=a||{}),o={year:e,month:r,day:t,isIntercalary:f}}var v;v=o.day-1;var h=mf[o.year-mf[0]],d=h>>13,m;d&&(o.month>d||o.isIntercalary)?m=o.month:m=o.month-1;for(var p=0;p>9&4095,x=b>>5&15,_=b&31,A=new Date(C,x-1,_+v);return i.year=A.getFullYear(),i.month=1+A.getMonth(),i.day=A.getDate(),i}});var gI=te(()=>{var Oc=Ya(),Doe=Ua();function T_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}T_.prototype=new Oc.baseCalendar;Doe(T_.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Oc.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Oc.local.invalidYear||Oc.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Oc.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,r,t,Oc.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var n=Math.floor(r/30)+1,a=r-(n-1)*30+1;return this.newDate(t,n,a)}});Oc.calendars.coptic=T_});var mI=te(()=>{var fu=Ya(),Eoe=Ua();function k_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}k_.prototype=new fu.baseCalendar;Eoe(k_.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,fu.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,fu.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,fu.local.invalidYear),400},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/8)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,fu.local.invalidMonth);return this.daysPerMonth[t.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,r,t){var n=this._validate(e,r,t,fu.local.invalidDate);return(n.day()+1)%8},weekDay:function(e,r,t){var n=this.dayOfWeek(e,r,t);return n>=2&&n<=6},extraInfo:function(e,r,t){var n=this._validate(e,r,t,fu.local.invalidDate);return{century:Poe[Math.floor((n.year()-1)/100)+1]||""}},toJD:function(e,r,t){var n=this._validate(e,r,t,fu.local.invalidDate);return e=n.year()+(n.year()<0?1:0),r=n.month(),t=n.day(),t+(r>1?16:0)+(r>2?(r-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var r=Math.floor(e/400)+1;e-=(r-1)*400,e+=e>15?16:0;var t=Math.floor(e/32)+1,n=e-(t-1)*32+1;return this.newDate(r<=0?r-1:r,t,n)}});var Poe={20:"Fruitbat",21:"Anchovy"};fu.calendars.discworld=k_});var yI=te(()=>{var Uc=Ya(),Roe=Ua();function S_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}S_.prototype=new Uc.baseCalendar;Roe(S_.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Uc.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Uc.local.invalidYear||Uc.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Uc.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,r,t,Uc.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var n=Math.floor(r/30)+1,a=r-(n-1)*30+1;return this.newDate(t,n,a)}});Uc.calendars.ethiopian=S_});var bI=te(()=>{var bf=Ya(),zoe=Ua();function C_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}C_.prototype=new bf.baseCalendar;zoe(C_.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,bf.local.invalidYear);return this._leapYear(r.year())},_leapYear:function(e){return e=e<0?e+1:e,yy(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,bf.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,bf.local.invalidYear);return e=r.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,bf.local.invalidMonth),r===12&&this.leapYear(e)||r===8&&yy(this.daysInYear(e),10)===5?30:r===9&&yy(this.daysInYear(e),10)===3?29:this.daysPerMonth[r-1]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},extraInfo:function(e,r,t){var n=this._validate(e,r,t,bf.local.invalidDate);return{yearType:(this.leapYear(n)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(n)%10-3]}},toJD:function(e,r,t){var n=this._validate(e,r,t,bf.local.invalidDate);e=n.year(),r=n.month(),t=n.day();var a=e<=0?e+1:e,i=this.jdEpoch+this._delay1(a)+this._delay2(a)+t+1;if(r<7){for(var o=7;o<=this.monthsInYear(e);o++)i+=this.daysInMonth(e,o);for(var o=1;o=this.toJD(r===-1?1:r+1,7,1);)r++;for(var t=ethis.toJD(r,t,this.daysInMonth(r,t));)t++;var n=e-this.toJD(r,t,1)+1;return this.newDate(r,t,n)}});function yy(e,r){return e-r*Math.floor(e/r)}bf.calendars.hebrew=C_});var _I=te(()=>{var Gh=Ya(),Noe=Ua();function L_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}L_.prototype=new Gh.baseCalendar;Noe(L_.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Gh.local.invalidYear);return(r.year()*11+14)%30<11},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Gh.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var n=this._validate(e,r,t,Gh.local.invalidDate);return e=n.year(),r=n.month(),t=n.day(),e=e<=0?e+1:e,t+Math.ceil(29.5*(r-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=Math.floor((30*(e-this.jdEpoch)+10646)/10631);r=r<=0?r-1:r;var t=Math.min(12,Math.ceil((e-29-this.toJD(r,1,1))/29.5)+1),n=e-this.toJD(r,t,1)+1;return this.newDate(r,t,n)}});Gh.calendars.islamic=L_});var xI=te(()=>{var Vh=Ya(),Foe=Ua();function q_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}q_.prototype=new Vh.baseCalendar;Foe(q_.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Vh.local.invalidYear),t=r.year()<0?r.year()+1:r.year();return t%4===0},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Vh.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,r,t,Vh.local.invalidDate);return e=n.year(),r=n.month(),t=n.day(),e<0&&e++,r<=2&&(e--,r+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(r+1))+t-1524.5},fromJD:function(e){var r=Math.floor(e+.5),t=r+1524,n=Math.floor((t-122.1)/365.25),a=Math.floor(365.25*n),i=Math.floor((t-a)/30.6001),o=i-Math.floor(i<14?1:13),l=n-Math.floor(o>2?4716:4715),s=t-a-Math.floor(30.6001*i);return l<=0&&l--,this.newDate(l,o,s)}});Vh.calendars.julian=q_});var MI=te(()=>{var Bo=Ya(),Ioe=Ua();function E_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}E_.prototype=new Bo.baseCalendar;Ioe(E_.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Bo.local.invalidYear),!1},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Bo.local.invalidYear);e=r.year();var t=Math.floor(e/400);e=e%400,e+=e<0?400:0;var n=Math.floor(e/20);return t+"."+n+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var r=0,t=0;t19||t>0&&n<0)throw"Invalid Mayan year";r=r*20+n}return r},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Bo.local.invalidYear),18},weekOfYear:function(e,r,t){return this._validate(e,r,t,Bo.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Bo.local.invalidYear),360},daysInMonth:function(e,r){return this._validate(e,r,this.minDay,Bo.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,r,t){var n=this._validate(e,r,t,Bo.local.invalidDate);return n.day()},weekDay:function(e,r,t){return this._validate(e,r,t,Bo.local.invalidDate),!0},extraInfo:function(e,r,t){var n=this._validate(e,r,t,Bo.local.invalidDate),a=n.toJD(),i=this._toHaab(a),o=this._toTzolkin(a);return{haabMonthName:this.local.haabMonths[i[0]-1],haabMonth:i[0],haabDay:i[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(e){e-=this.jdEpoch;var r=D_(e+8+17*20,365);return[Math.floor(r/20)+1,D_(r,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[wI(e+20,20),wI(e+4,13)]},toJD:function(e,r,t){var n=this._validate(e,r,t,Bo.local.invalidDate);return n.day()+n.month()*20+n.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var r=Math.floor(e/360);e=e%360,e+=e<0?360:0;var t=Math.floor(e/20),n=e%20;return this.newDate(r,t,n)}});function D_(e,r){return e-r*Math.floor(e/r)}function wI(e,r){return D_(e-1,r)+1}Bo.calendars.mayan=E_});var TI=te(()=>{var Yc=Ya(),Hoe=Ua();function P_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}P_.prototype=new Yc.baseCalendar;var AI=Yc.instance("gregorian");Hoe(P_.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Yc.local.invalidYear||Yc.regionalOptions[""].invalidYear);return AI.leapYear(r.year()+(r.year()<1?1:0)+1469)},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Yc.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(a,r,t){var n=this._validate(a,r,t,Yc.local.invalidMonth),a=n.year();a<0&&a++;for(var i=n.day(),o=1;o=this.toJD(r+1,1,1);)r++;for(var t=e-Math.floor(this.toJD(r,1,1)+.5)+1,n=1;t>this.daysInMonth(r,n);)t-=this.daysInMonth(r,n),n++;return this.newDate(r,n,t)}});Yc.calendars.nanakshahi=P_});var kI=te(()=>{var Gc=Ya(),Boe=Ua();function R_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}R_.prototype=new Gc.baseCalendar;Boe(R_.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Gc.local.invalidYear);if(e=r.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var t=0,n=this.minMonth;n<=12;n++)t+=this.NEPALI_CALENDAR_DATA[e][n];return t},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,Gc.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[r-1]:this.NEPALI_CALENDAR_DATA[e][r]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},toJD:function(e,r,t){var n=this._validate(e,r,t,Gc.local.invalidDate);e=n.year(),r=n.month(),t=n.day();var a=Gc.instance(),i=0,o=r,l=e;this._createMissingCalendarData(e);var s=e-(o>9||o===9&&t>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(r!==9&&(i=t,o--);o!==9;)o<=0&&(o=12,l--),i+=this.NEPALI_CALENDAR_DATA[l][o],o--;return r===9?(i+=t-this.NEPALI_CALENDAR_DATA[l][0],i<0&&(i+=a.daysInYear(s))):i+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],a.newDate(s,1,1).add(i,"d").toJD()},fromJD:function(e){var r=Gc.instance(),t=r.fromJD(e),n=t.year(),a=t.dayOfYear(),i=n+56;this._createMissingCalendarData(i);for(var o=9,l=this.NEPALI_CALENDAR_DATA[i][0],s=this.NEPALI_CALENDAR_DATA[i][o]-l+1;a>s;)o++,o>12&&(o=1,i++),s+=this.NEPALI_CALENDAR_DATA[i][o];var u=this.NEPALI_CALENDAR_DATA[i][o]-(s-a);return this.newDate(i,o,u)},_createMissingCalendarData:function(e){var r=this.daysPerMonth.slice(0);r.unshift(17);for(var t=e-1;t{var Iv=Ya(),Ooe=Ua();function _y(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function by(e){var r=e-475;e<0&&r++;var t=.242197,n=t*r,a=t*(r+1),i=n-Math.floor(n),o=a-Math.floor(a);return i>o}_y.prototype=new Iv.baseCalendar;Ooe(_y.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Iv.local.invalidYear);return by(r.year())},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-((n.dayOfWeek()+1)%7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Iv.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var n=this._validate(e,r,t,Iv.local.invalidDate);e=n.year(),r=n.month(),t=n.day();var a=0;if(e>0)for(var i=1;i0?e-1:e)*365+a+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=475+(e-this.toJD(475,1,1))/365.242197,t=Math.floor(r);t<=0&&t--,e>this.toJD(t,12,by(t)?30:29)&&(t++,t===0&&t++);var n=e-this.toJD(t,1,1)+1,a=n<=186?Math.ceil(n/31):Math.ceil((n-6)/30),i=e-this.toJD(t,a,1)+1;return this.newDate(t,a,i)}});Iv.calendars.persian=_y;Iv.calendars.jalali=_y});var CI=te(()=>{var Vc=Ya(),Uoe=Ua(),xy=Vc.instance();function z_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}z_.prototype=new Vc.baseCalendar;Uoe(z_.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Vc.local.invalidYear),t=this._t2gYear(r.year());return xy.leapYear(t)},weekOfYear:function(a,r,t){var n=this._validate(a,this.minMonth,this.minDay,Vc.local.invalidYear),a=this._t2gYear(n.year());return xy.weekOfYear(a,n.month(),n.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Vc.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(a,r,t){var n=this._validate(a,r,t,Vc.local.invalidDate),a=this._t2gYear(n.year());return xy.toJD(a,n.month(),n.day())},fromJD:function(e){var r=xy.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Vc.calendars.taiwan=z_});var LI=te(()=>{var Wc=Ya(),Yoe=Ua(),wy=Wc.instance();function N_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}N_.prototype=new Wc.baseCalendar;Yoe(N_.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Wc.local.invalidYear),t=this._t2gYear(r.year());return wy.leapYear(t)},weekOfYear:function(a,r,t){var n=this._validate(a,this.minMonth,this.minDay,Wc.local.invalidYear),a=this._t2gYear(n.year());return wy.weekOfYear(a,n.month(),n.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Wc.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(a,r,t){var n=this._validate(a,r,t,Wc.local.invalidDate),a=this._t2gYear(n.year());return wy.toJD(a,n.month(),n.day())},fromJD:function(e){var r=wy.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});Wc.calendars.thai=N_});var qI=te(()=>{var Zc=Ya(),Goe=Ua();function F_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}F_.prototype=new Zc.baseCalendar;Goe(F_.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Zc.local.invalidYear);return this.daysInYear(r.year())===355},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var r=0,t=1;t<=12;t++)r+=this.daysInMonth(e,t);return r},daysInMonth:function(e,r){for(var t=this._validate(e,r,this.minDay,Zc.local.invalidMonth),n=t.toJD()-24e5+.5,a=0,i=0;i<_f.length;i++){if(_f[i]>n)return _f[a]-_f[a-1];a++}return 30},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var n=this._validate(e,r,t,Zc.local.invalidDate),a=12*(n.year()-1)+n.month()-15292,i=n.day()+_f[a-1]-1;return i+24e5-.5},fromJD:function(e){for(var r=e-24e5+.5,t=0,n=0;n<_f.length&&!(_f[n]>r);n++)t++;var a=t+15292,i=Math.floor((a-1)/12),o=i+1,l=a-12*i,s=r-_f[t-1]+1;return this.newDate(o,l,s)},isValid:function(e,r,t){var n=Zc.baseCalendar.prototype.isValid.apply(this,arguments);return n&&(e=e.year!=null?e.year:e,n=e>=1276&&e<=1500),n},_validate:function(e,r,t,n){var a=Zc.baseCalendar.prototype._validate.apply(this,arguments);if(a.year<1276||a.year>1500)throw n.replace(/\{0\}/,this.local.name);return a}});Zc.calendars.ummalqura=F_;var _f=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var EI=te((Q1e,DI)=>{"use strict";DI.exports=Ya();dI();pI();gI();mI();yI();bI();_I();xI();MI();TI();kI();SI();CI();LI();qI()});var HI=te((ehe,II)=>{"use strict";var RI=EI(),Wh=pr(),zI=Rn(),Voe=zI.EPOCHJD,Woe=zI.ONEDAY,B_={valType:"enumerated",values:Wh.sortObjectKeys(RI.calendars),editType:"calc",dflt:"gregorian"},NI=function(e,r,t,n){var a={};return a[t]=B_,Wh.coerce(e,r,a,t,n)},Zoe=function(e,r,t,n){for(var a=0;a{"use strict";BI.exports=HI()});var Qoe=te((the,YI)=>{var UI=iN();UI.register([FF(),uI(),OI()]);YI.exports=UI});return Qoe();})(); +`+B7(i.dayMonthYear,e,n,a);return B7(r,e,n,a)};var O7=3*Di;$n.incrementMonth=function(e,r,t){t=Ws(t)&&t;var n=Fu(e,Di);if(e=Math.round(e-n),t)try{var a=Math.round(e/Di)+v1,i=Vs.getComponentMethod("calendars","getCal")(t),o=i.fromJD(a);return r%12?i.add(o,r,"m"):i.add(o,r/12,"y"),(o.toJD()-v1)*Di+n}catch(s){Xy.error("invalid ms "+e+" in calendar "+t)}var l=new Date(e+O7);return l.setUTCMonth(l.getUTCMonth()+r)+n-O7};$n.findExactDates=function(e,r){for(var t=0,n=0,a=0,i=0,o,l,s=Ws(r)&&Vs.getComponentMethod("calendars","getCal")(r),u=0;u{"use strict";V7.exports=function(r){return r}});var Jy=te(Zs=>{"use strict";var uO=Ht(),fO=Pu(),cO=qd(),vO=Rn().BADNUM,jy=1e-9;Zs.findBin=function(e,r,t){if(uO(r.start))return t?Math.ceil((e-r.start)/r.size-jy)-1:Math.floor((e-r.start)/r.size+jy);var n=0,a=r.length,i=0,o=a>1?(r[a-1]-r[0])/(a-1):1,l,s;for(o>=0?s=t?hO:dO:s=t?gO:pO,e+=o*jy*(t?-1:1)*(o>=0?1:-1);n90&&fO.log("Long binary search..."),n-1};function hO(e,r){return er}function gO(e,r){return e>=r}Zs.sorterAsc=function(e,r){return e-r};Zs.sorterDes=function(e,r){return r-e};Zs.distinctVals=function(e){var r=e.slice();r.sort(Zs.sorterAsc);var t;for(t=r.length-1;t>-1&&r[t]===vO;t--);for(var n=r[t]-r[0]||1,a=n/(t||1)/1e4,i=[],o,l=0;l<=t;l++){var s=r[l],u=s-o;o===void 0?(i.push(s),o=s):u>a&&(n=Math.min(n,u),i.push(s),o=s)}return{vals:i,minDiff:n}};Zs.roundUp=function(e,r,t){for(var n=0,a=r.length-1,i,o=0,l=t?0:1,s=t?1:0,u=t?Math.ceil:Math.floor;n0&&(n=1),t&&n)return e.sort(r)}return n?e:e.reverse()};Zs.findIndexOfMin=function(e,r){r=r||cO;for(var t=1/0,n,a=0;a{"use strict";W7.exports=function(r){return Object.keys(r).sort()}});var Z7=te(Kn=>{"use strict";var h1=Ht(),mO=ji().isArrayOrTypedArray;Kn.aggNums=function(e,r,t,n){var a,i;if((!n||n>t.length)&&(n=t.length),h1(r)||(r=!1),mO(t[0])){for(i=new Array(n),a=0;ae.length-1)return e[e.length-1];var t=r%1;return t*e[Math.ceil(r)]+(1-t)*e[Math.floor(r)]}});var K7=te((Lse,$7)=>{"use strict";var X7=_0(),$y=X7.mod,yO=X7.modHalf,d1=Math.PI,Iu=2*d1;function bO(e){return e/180*d1}function _O(e){return e/d1*180}function Ky(e){return Math.abs(e[1]-e[0])>Iu-1e-14}function j7(e,r){return yO(r-e,Iu)}function xO(e,r){return Math.abs(j7(e,r))}function J7(e,r){if(Ky(r))return!0;var t,n;r[0]n&&(n+=Iu);var a=$y(e,Iu),i=a+Iu;return a>=t&&a<=n||i>=t&&i<=n}function wO(e,r,t,n){if(!J7(r,n))return!1;var a,i;return t[0]=a&&e<=i}function Qy(e,r,t,n,a,i,o){a=a||0,i=i||0;var l=Ky([t,n]),s,u,f,v,h;l?(s=0,u=d1,f=Iu):t{"use strict";rc.isLeftAnchor=function(r){return r.xanchor==="left"||r.xanchor==="auto"&&r.x<=1/3};rc.isCenterAnchor=function(r){return r.xanchor==="center"||r.xanchor==="auto"&&r.x>1/3&&r.x<2/3};rc.isRightAnchor=function(r){return r.xanchor==="right"||r.xanchor==="auto"&&r.x>=2/3};rc.isTopAnchor=function(r){return r.yanchor==="top"||r.yanchor==="auto"&&r.y>=2/3};rc.isMiddleAnchor=function(r){return r.yanchor==="middle"||r.yanchor==="auto"&&r.y>1/3&&r.y<2/3};rc.isBottomAnchor=function(r){return r.yanchor==="bottom"||r.yanchor==="auto"&&r.y<=1/3}});var tw=te(tc=>{"use strict";var e2=_0().mod;tc.segmentsIntersect=rw;function rw(e,r,t,n,a,i,o,l){var s=t-e,u=a-e,f=o-a,v=n-r,h=i-r,d=l-i,m=s*d-f*v;if(m===0)return null;var p=(u*d-f*h)/m,y=(u*v-s*h)/m;return y<0||y>1||p<0||p>1?null:{x:e+s*p,y:r+v*p}}tc.segmentDistance=function(r,t,n,a,i,o,l,s){if(rw(r,t,n,a,i,o,l,s))return 0;var u=n-r,f=a-t,v=l-i,h=s-o,d=u*u+f*f,m=v*v+h*h,p=Math.min(Ed(u,f,d,i-r,o-t),Ed(u,f,d,l-r,s-t),Ed(v,h,m,r-i,t-o),Ed(v,h,m,n-i,a-o));return Math.sqrt(p)};function Ed(e,r,t,n,a){var i=n*e+a*r;if(i<0)return n*n+a*a;if(i>t){var o=n-e,l=a-r;return o*o+l*l}else{var s=n*r-a*e;return s*s/t}}var Pd,r2,ew;tc.getTextLocation=function(r,t,n,a){if((r!==r2||a!==ew)&&(Pd={},r2=r,ew=a),Pd[n])return Pd[n];var i=r.getPointAtLength(e2(n-a/2,t)),o=r.getPointAtLength(e2(n+a/2,t)),l=Math.atan((o.y-i.y)/(o.x-i.x)),s=r.getPointAtLength(e2(n,t)),u=(s.x*4+i.x+o.x)/6,f=(s.y*4+i.y+o.y)/6,v={x:u,y:f,theta:l};return Pd[n]=v,v};tc.clearLocationCache=function(){r2=null};tc.getVisibleSegment=function(r,t,n){var a=t.left,i=t.right,o=t.top,l=t.bottom,s=0,u=r.getTotalLength(),f=u,v,h;function d(p){var y=r.getPointAtLength(p);p===0?v=y:p===u&&(h=y);var b=y.xi?y.x-i:0,C=y.yl?y.y-l:0;return Math.sqrt(b*b+C*C)}for(var m=d(s);m;){if(s+=m+n,s>f)return;m=d(s)}for(m=d(f);m;){if(f-=m+n,s>f)return;m=d(f)}return{min:s,max:f,len:f-s,total:u,isClosed:s===0&&f===u&&Math.abs(v.x-h.x)<.1&&Math.abs(v.y-h.y)<.1}};tc.findPointOnPath=function(r,t,n,a){a=a||{};for(var i=a.pathLength||r.getTotalLength(),o=a.tolerance||.001,l=a.iterationLimit||30,s=r.getPointAtLength(0)[n]>r.getPointAtLength(i)[n]?-1:1,u=0,f=0,v=i,h,d,m;u0?v=h:f=h,u++}return d}});var Rd=te(p1=>{"use strict";var Xs={};p1.throttle=function(r,t,n){var a=Xs[r],i=Date.now();if(!a){for(var o in Xs)Xs[o].tsa.ts+t){l();return}a.timer=setTimeout(function(){l(),a.timer=null},t)};p1.done=function(e){var r=Xs[e];return!r||!r.timer?Promise.resolve():new Promise(function(t){var n=r.onDone;r.onDone=function(){n&&n(),t(),r.onDone=null}})};p1.clear=function(e){if(e)nw(Xs[e]),delete Xs[e];else for(var r in Xs)p1.clear(r)};function nw(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var iw=te((Pse,aw)=>{"use strict";aw.exports=function(r){r._responsiveChartHandler&&(window.removeEventListener("resize",r._responsiveChartHandler),delete r._responsiveChartHandler)}});var ow=te((Rse,zd)=>{"use strict";zd.exports=t2;zd.exports.isMobile=t2;zd.exports.default=t2;var kO=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,SO=/CrOS/,CO=/android|ipad|playbook|silk/i;function t2(e){e||(e={});let r=e.ua;if(!r&&typeof navigator!="undefined"&&(r=navigator.userAgent),r&&r.headers&&typeof r.headers["user-agent"]=="string"&&(r=r.headers["user-agent"]),typeof r!="string")return!1;let t=kO.test(r)&&!SO.test(r)||!!e.tablet&&CO.test(r);return!t&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&r.indexOf("Macintosh")!==-1&&r.indexOf("Safari")!==-1&&(t=!0),t}});var sw=te((zse,lw)=>{"use strict";var LO=Ht(),qO=ow();lw.exports=function(r){var t;if(r&&r.hasOwnProperty("userAgent")?t=r.userAgent:t=DO(),typeof t!="string")return!0;var n=qO({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!n)for(var a=t.split(" "),i=1;i-1;l--){var s=a[l];if(s.slice(0,8)==="Version/"){var u=s.slice(8).split(".")[0];if(LO(u)&&(u=+u),u>=13)return!0}}}return n};function DO(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var fw=te((Nse,uw)=>{"use strict";var EO=kt();uw.exports=function(r,t,n){var a=r.selectAll("g."+n.replace(/\s/g,".")).data(t,function(o){return o[0].trace.uid});a.exit().remove(),a.enter().append("g").attr("class",n),a.order();var i=r.classed("rangeplot")?"nodeRangePlot3":"node3";return a.each(function(o){o[0][i]=EO.select(this)}),a}});var vw=te((Fse,cw)=>{"use strict";var PO=dt();cw.exports=function(r,t){for(var n=r._context.locale,a=0;a<2;a++){for(var i=r._context.locales,o=0;o<2;o++){var l=(i[n]||{}).dictionary;if(l){var s=l[t];if(s)return s}i=PO.localeRegistry}var u=n.split("-")[0];if(u===n)break;n=u}return t}});var dw=te((Ise,hw)=>{"use strict";hw.exports=function(r){for(var t={},n=[],a=0,i=0;i{"use strict";pw.exports=function(r){for(var t=NO(r)?zO:RO,n=[],a=0;a{"use strict";mw.exports=function(r,t){if(!t)return r;var n=1/Math.abs(t),a=n>1?(n*r+n*t)/n:r+t,i=String(a).length;if(i>16){var o=String(t).length,l=String(r).length;if(i>=l+o){var s=parseFloat(a).toPrecision(12);s.indexOf("e+")===-1&&(a=+s)}}return a}});var _w=te((Ose,bw)=>{"use strict";var FO=Ht(),IO=Rn().BADNUM,HO=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;bw.exports=function(r){return typeof r=="string"&&(r=r.replace(HO,"")),FO(r)?Number(r):IO}});var pr=te((Use,Pw)=>{"use strict";var g1=kt(),BO=y0().utcFormat,OO=Sy().format,kw=Ht(),Sw=Rn(),Cw=Sw.FP_SAFE,UO=-Cw,xw=Sw.BADNUM,Ee=Pw.exports={};Ee.adjustFormat=function(r){return!r||/^\d[.]\df/.test(r)||/[.]\d%/.test(r)?r:r==="0.f"?"~f":/^\d%/.test(r)?"~%":/^\ds/.test(r)?"~s":!/^[~,.0$]/.test(r)&&/[&fps]/.test(r)?"~"+r:r};var ww={};Ee.warnBadFormat=function(e){var r=String(e);ww[r]||(ww[r]=1,Ee.warn('encountered bad format: "'+r+'"'))};Ee.noFormat=function(e){return String(e)};Ee.numberFormat=function(e){var r;try{r=OO(Ee.adjustFormat(e))}catch(t){return Ee.warnBadFormat(e),Ee.noFormat}return r};Ee.nestedProperty=e1();Ee.keyedContainer=h6();Ee.relativeAttr=p6();Ee.isPlainObject=Gs();Ee.toLogRange=vd();Ee.relinkPrivateKeys=b6();var Hu=ji();Ee.isArrayBuffer=Hu.isArrayBuffer;Ee.isTypedArray=Hu.isTypedArray;Ee.isArrayOrTypedArray=Hu.isArrayOrTypedArray;Ee.isArray1D=Hu.isArray1D;Ee.ensureArray=Hu.ensureArray;Ee.concat=Hu.concat;Ee.maxRowLength=Hu.maxRowLength;Ee.minRowLength=Hu.minRowLength;var Lw=_0();Ee.mod=Lw.mod;Ee.modHalf=Lw.modHalf;var Bu=I6();Ee.valObjectMeta=Bu.valObjectMeta;Ee.coerce=Bu.coerce;Ee.coerce2=Bu.coerce2;Ee.coerceFont=Bu.coerceFont;Ee.coercePattern=Bu.coercePattern;Ee.coerceHoverinfo=Bu.coerceHoverinfo;Ee.coerceSelectionMarkerOpacity=Bu.coerceSelectionMarkerOpacity;Ee.validate=Bu.validate;var Ji=G7();Ee.dateTime2ms=Ji.dateTime2ms;Ee.isDateTime=Ji.isDateTime;Ee.ms2DateTime=Ji.ms2DateTime;Ee.ms2DateTimeLocal=Ji.ms2DateTimeLocal;Ee.cleanDate=Ji.cleanDate;Ee.isJSDate=Ji.isJSDate;Ee.formatDate=Ji.formatDate;Ee.incrementMonth=Ji.incrementMonth;Ee.dateTick0=Ji.dateTick0;Ee.dfltRange=Ji.dfltRange;Ee.findExactDates=Ji.findExactDates;Ee.MIN_MS=Ji.MIN_MS;Ee.MAX_MS=Ji.MAX_MS;var nc=Jy();Ee.findBin=nc.findBin;Ee.sorterAsc=nc.sorterAsc;Ee.sorterDes=nc.sorterDes;Ee.distinctVals=nc.distinctVals;Ee.roundUp=nc.roundUp;Ee.sort=nc.sort;Ee.findIndexOfMin=nc.findIndexOfMin;Ee.sortObjectKeys=Dd();var js=Z7();Ee.aggNums=js.aggNums;Ee.len=js.len;Ee.mean=js.mean;Ee.geometricMean=js.geometricMean;Ee.median=js.median;Ee.midRange=js.midRange;Ee.variance=js.variance;Ee.stdev=js.stdev;Ee.interp=js.interp;var dl=_d();Ee.init2dArray=dl.init2dArray;Ee.transposeRagged=dl.transposeRagged;Ee.dot=dl.dot;Ee.translationMatrix=dl.translationMatrix;Ee.rotationMatrix=dl.rotationMatrix;Ee.rotationXYMatrix=dl.rotationXYMatrix;Ee.apply3DTransform=dl.apply3DTransform;Ee.apply2DTransform=dl.apply2DTransform;Ee.apply2DTransform2=dl.apply2DTransform2;Ee.convertCssMatrix=dl.convertCssMatrix;Ee.inverseTransformMatrix=dl.inverseTransformMatrix;var Ql=K7();Ee.deg2rad=Ql.deg2rad;Ee.rad2deg=Ql.rad2deg;Ee.angleDelta=Ql.angleDelta;Ee.angleDist=Ql.angleDist;Ee.isFullCircle=Ql.isFullCircle;Ee.isAngleInsideSector=Ql.isAngleInsideSector;Ee.isPtInsideSector=Ql.isPtInsideSector;Ee.pathArc=Ql.pathArc;Ee.pathSector=Ql.pathSector;Ee.pathAnnulus=Ql.pathAnnulus;var E0=Q7();Ee.isLeftAnchor=E0.isLeftAnchor;Ee.isCenterAnchor=E0.isCenterAnchor;Ee.isRightAnchor=E0.isRightAnchor;Ee.isTopAnchor=E0.isTopAnchor;Ee.isMiddleAnchor=E0.isMiddleAnchor;Ee.isBottomAnchor=E0.isBottomAnchor;var P0=tw();Ee.segmentsIntersect=P0.segmentsIntersect;Ee.segmentDistance=P0.segmentDistance;Ee.getTextLocation=P0.getTextLocation;Ee.clearLocationCache=P0.clearLocationCache;Ee.getVisibleSegment=P0.getVisibleSegment;Ee.findPointOnPath=P0.findPointOnPath;var Id=sa();Ee.extendFlat=Id.extendFlat;Ee.extendDeep=Id.extendDeep;Ee.extendDeepAll=Id.extendDeepAll;Ee.extendDeepNoArrays=Id.extendDeepNoArrays;var n2=Pu();Ee.log=n2.log;Ee.warn=n2.warn;Ee.error=n2.error;var YO=w0();Ee.counterRegex=YO.counter;var a2=Rd();Ee.throttle=a2.throttle;Ee.throttleDone=a2.done;Ee.clearThrottle=a2.clear;var pl=u1();Ee.getGraphDiv=pl.getGraphDiv;Ee.isPlotDiv=pl.isPlotDiv;Ee.removeElement=pl.removeElement;Ee.addStyleRule=pl.addStyleRule;Ee.addRelatedStyleRule=pl.addRelatedStyleRule;Ee.deleteRelatedStyleRule=pl.deleteRelatedStyleRule;Ee.setStyleOnHover=pl.setStyleOnHover;Ee.getFullTransformMatrix=pl.getFullTransformMatrix;Ee.getElementTransformMatrix=pl.getElementTransformMatrix;Ee.getElementAndAncestors=pl.getElementAndAncestors;Ee.equalDomRects=pl.equalDomRects;Ee.clearResponsive=iw();Ee.preserveDrawingBuffer=sw();Ee.makeTraceGroups=fw();Ee._=vw();Ee.notifier=Iy();Ee.filterUnique=dw();Ee.filterVisible=gw();Ee.pushUnique=Oy();Ee.increment=yw();Ee.cleanNumber=_w();Ee.ensureNumber=function(r){return kw(r)?(r=Number(r),r>Cw||r=r?!1:kw(e)&&e>=0&&e%1===0};Ee.noop=bd();Ee.identity=qd();Ee.repeat=function(e,r){for(var t=new Array(r),n=0;nt?Math.max(t,Math.min(r,e)):Math.max(r,Math.min(t,e))};Ee.bBoxIntersect=function(e,r,t){return t=t||0,e.left<=r.right+t&&r.left<=e.right+t&&e.top<=r.bottom+t&&r.top<=e.bottom+t};Ee.simpleMap=function(e,r,t,n,a){for(var i=e.length,o=new Array(i),l=0;l=Math.pow(2,t)?a>10?(Ee.warn("randstr failed uniqueness"),o):e(r,t,n,(a||0)+1):o};Ee.OptionControl=function(e,r){e||(e={}),r||(r="opt");var t={};return t.optionList=[],t._newoption=function(n){n[r]=e,t[n.name]=n,t.optionList.push(n)},t["_"+r]=e,t};Ee.smooth=function(e,r){if(r=Math.round(r)||0,r<2)return e;var t=e.length,n=2*t,a=2*r-1,i=new Array(a),o=new Array(t),l,s,u,f;for(l=0;l=n&&(u-=n*Math.floor(u/n)),u<0?u=-1-u:u>=t&&(u=n-1-u),f+=e[u]*i[s];o[l]=f}return o};Ee.syncOrAsync=function(e,r,t){var n,a;function i(){return Ee.syncOrAsync(e,r,t)}for(;e.length;)if(a=e.splice(0,1)[0],n=a(r),n&&n.then)return n.then(i);return t&&t(r)};Ee.stripTrailingSlash=function(e){return e.slice(-1)==="/"?e.slice(0,-1):e};Ee.noneOrAll=function(e,r,t){if(e){var n=!1,a=!0,i,o;for(i=0;i0?a:0})};Ee.fillArray=function(e,r,t,n){if(n=n||Ee.identity,Ee.isArrayOrTypedArray(e))for(var a=0;aWO.test(window.navigator.userAgent);var ZO=/Firefox\/(\d+)\.\d+/;Ee.getFirefoxVersion=function(){var e=ZO.exec(window.navigator.userAgent);if(e&&e.length===2){var r=parseInt(e[1]);if(!isNaN(r))return r}return null};Ee.isD3Selection=function(e){return e instanceof g1.selection};Ee.ensureSingle=function(e,r,t,n){var a=e.select(r+(t?"."+t:""));if(a.size())return a;var i=e.append(r);return t&&i.classed(t,!0),n&&i.call(n),i};Ee.ensureSingleById=function(e,r,t,n){var a=e.select(r+"#"+t);if(a.size())return a;var i=e.append(r).attr("id",t);return n&&i.call(n),i};Ee.objectFromPath=function(e,r){for(var t=e.split("."),n,a=n={},i=0;i1?a+o[1]:"";if(i&&(o.length>1||l.length>4||t))for(;n.test(l);)l=l.replace(n,"$1"+i+"$2");return l+s};Ee.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var Ew=/^\w*$/;Ee.templateString=function(e,r){var t={};return e.replace(Ee.TEMPLATE_STRING_REGEX,function(n,a){var i;return Ew.test(a)?i=r[a]:(t[a]=t[a]||Ee.nestedProperty(r,a).get,i=t[a](!0)),i!==void 0?i:""})};var JO={max:10,count:0,name:"hovertemplate"};Ee.hovertemplateString=e=>i2(td(Xf({},e),{opts:JO}));var $O={max:10,count:0,name:"texttemplate"};Ee.texttemplateString=e=>i2(td(Xf({},e),{opts:$O}));var KO=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function QO(e){var r=e.match(KO);return r?{key:r[1],op:r[2],number:Number(r[3])}:{key:e,op:null,number:null}}var eU={max:10,count:0,name:"texttemplate",parseMultDiv:!0};Ee.texttemplateStringForShapes=e=>i2(td(Xf({},e),{opts:eU}));var Mw=/^[:|\|]/;function i2({data:e=[],locale:r,fallback:t,labels:n={},opts:a,template:i}){return i.replace(Ee.TEMPLATE_STRING_REGEX,(o,l,s)=>{let u=["xother","yother"].includes(l),f=["_xother","_yother"].includes(l),v=["_xother_","_yother_"].includes(l),h=["xother_","yother_"].includes(l),d=u||f||h||v;(f||v)&&(l=l.substring(1)),(h||v)&&(l=l.substring(0,l.length-1));let m=null,p=null;if(a.parseMultDiv){var y=QO(l);l=y.key,m=y.op,p=y.number}let b;if(d){if(n[l]===void 0)return"";b=n[l]}else for(let A of e)if(A){if(A.hasOwnProperty(l)){b=A[l];break}if(Ew.test(l)||(b=Ee.nestedProperty(A,l).get(!0)),b!==void 0)break}if(b===void 0){let{count:A,max:k,name:M}=a,E=t===!1?o:t;return A=Fd&&o<=Aw,u=l>=Fd&&l<=Aw;if(s&&(n=10*n+o-Fd),u&&(a=10*a+l-Fd),!s||!u){if(n!==a)return n-a;if(o!==l)return o-l}}return a-n};var D0=2e9;Ee.seedPseudoRandom=function(){D0=2e9};Ee.pseudoRandom=function(){var e=D0;return D0=(69069*D0+1)%4294967296,Math.abs(D0-e)<429496729?Ee.pseudoRandom():D0/4294967296};Ee.fillText=function(e,r,t){var n=Array.isArray(t)?function(o){t.push(o)}:function(o){t.text=o},a=Ee.extractOption(e,r,"htx","hovertext");if(Ee.isValidTextValue(a))return n(a);var i=Ee.extractOption(e,r,"tx","text");if(Ee.isValidTextValue(i))return n(i)};Ee.isValidTextValue=function(e){return e||e===0};Ee.formatPercent=function(e,r){r=r||0;for(var t=(Math.round(100*e*Math.pow(10,r))*Math.pow(.1,r)).toFixed(r)+"%",n=0;n1&&(u=1):u=0,Ee.strTranslate(a-u*(t+o),i-u*(n+l))+Ee.strScale(u)+(s?"rotate("+s+(r?"":" "+t+" "+n)+")":"")};Ee.setTransormAndDisplay=function(e,r){e.attr("transform",Ee.getTextTransform(r)),e.style("display",r.scale?null:"none")};Ee.ensureUniformFontSize=function(e,r){var t=Ee.extendFlat({},r);return t.size=Math.max(r.size,e._fullLayout.uniformtext.minsize||0),t};Ee.join2=function(e,r,t){var n=e.length;return n>1?e.slice(0,-1).join(r)+t+e[n-1]:e.join(r)};Ee.bigFont=function(e){return Math.round(1.2*e)};var Tw=Ee.getFirefoxVersion(),rU=Tw!==null&&Tw<86;Ee.getPositionFromD3Event=function(){return rU?[g1.event.layerX,g1.event.layerY]:[g1.event.offsetX,g1.event.offsetY]}});var Nw=te(()=>{"use strict";var tU=pr(),Rw={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(o2 in Rw)zw=o2.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),tU.addStyleRule(zw,Rw[o2]);var zw,o2});var l2=te((Wse,Fw)=>{Fw.exports=!0});var u2=te((Zse,Iw)=>{"use strict";var nU=l2(),s2;typeof window.matchMedia=="function"?s2=!window.matchMedia("(hover: none)").matches:s2=nU;Iw.exports=s2});var Od=te((Xse,f2)=>{"use strict";var R0=typeof Reflect=="object"?Reflect:null,Hw=R0&&typeof R0.apply=="function"?R0.apply:function(r,t,n){return Function.prototype.apply.call(r,t,n)},Hd;R0&&typeof R0.ownKeys=="function"?Hd=R0.ownKeys:Object.getOwnPropertySymbols?Hd=function(r){return Object.getOwnPropertyNames(r).concat(Object.getOwnPropertySymbols(r))}:Hd=function(r){return Object.getOwnPropertyNames(r)};function aU(e){console&&console.warn&&console.warn(e)}var Ow=Number.isNaN||function(r){return r!==r};function Sn(){Sn.init.call(this)}f2.exports=Sn;f2.exports.once=sU;Sn.EventEmitter=Sn;Sn.prototype._events=void 0;Sn.prototype._eventsCount=0;Sn.prototype._maxListeners=void 0;var Bw=10;function Bd(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(Sn,"defaultMaxListeners",{enumerable:!0,get:function(){return Bw},set:function(e){if(typeof e!="number"||e<0||Ow(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");Bw=e}});Sn.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};Sn.prototype.setMaxListeners=function(r){if(typeof r!="number"||r<0||Ow(r))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+r+".");return this._maxListeners=r,this};function Uw(e){return e._maxListeners===void 0?Sn.defaultMaxListeners:e._maxListeners}Sn.prototype.getMaxListeners=function(){return Uw(this)};Sn.prototype.emit=function(r){for(var t=[],n=1;n0&&(o=t[0]),o instanceof Error)throw o;var l=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw l.context=o,l}var s=i[r];if(s===void 0)return!1;if(typeof s=="function")Hw(s,this,t);else for(var u=s.length,f=Zw(s,u),n=0;n0&&o.length>a&&!o.warned){o.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(r)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=r,l.count=o.length,aU(l)}return e}Sn.prototype.addListener=function(r,t){return Yw(this,r,t,!1)};Sn.prototype.on=Sn.prototype.addListener;Sn.prototype.prependListener=function(r,t){return Yw(this,r,t,!0)};function iU(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function Gw(e,r,t){var n={fired:!1,wrapFn:void 0,target:e,type:r,listener:t},a=iU.bind(n);return a.listener=t,n.wrapFn=a,a}Sn.prototype.once=function(r,t){return Bd(t),this.on(r,Gw(this,r,t)),this};Sn.prototype.prependOnceListener=function(r,t){return Bd(t),this.prependListener(r,Gw(this,r,t)),this};Sn.prototype.removeListener=function(r,t){var n,a,i,o,l;if(Bd(t),a=this._events,a===void 0)return this;if(n=a[r],n===void 0)return this;if(n===t||n.listener===t)--this._eventsCount===0?this._events=Object.create(null):(delete a[r],a.removeListener&&this.emit("removeListener",r,n.listener||t));else if(typeof n!="function"){for(i=-1,o=n.length-1;o>=0;o--)if(n[o]===t||n[o].listener===t){l=n[o].listener,i=o;break}if(i<0)return this;i===0?n.shift():oU(n,i),n.length===1&&(a[r]=n[0]),a.removeListener!==void 0&&this.emit("removeListener",r,l||t)}return this};Sn.prototype.off=Sn.prototype.removeListener;Sn.prototype.removeAllListeners=function(r){var t,n,a;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[r]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[r]),this;if(arguments.length===0){var i=Object.keys(n),o;for(a=0;a=0;a--)this.removeListener(r,t[a]);return this};function Vw(e,r,t){var n=e._events;if(n===void 0)return[];var a=n[r];return a===void 0?[]:typeof a=="function"?t?[a.listener||a]:[a]:t?lU(a):Zw(a,a.length)}Sn.prototype.listeners=function(r){return Vw(this,r,!0)};Sn.prototype.rawListeners=function(r){return Vw(this,r,!1)};Sn.listenerCount=function(e,r){return typeof e.listenerCount=="function"?e.listenerCount(r):Ww.call(e,r)};Sn.prototype.listenerCount=Ww;function Ww(e){var r=this._events;if(r!==void 0){var t=r[e];if(typeof t=="function")return 1;if(t!==void 0)return t.length}return 0}Sn.prototype.eventNames=function(){return this._eventsCount>0?Hd(this._events):[]};function Zw(e,r){for(var t=new Array(r),n=0;n{"use strict";var c2=Od().EventEmitter,fU={init:function(e){if(e._ev instanceof c2)return e;var r=new c2,t=new c2;return e._ev=r,e._internalEv=t,e.on=r.on.bind(r),e.once=r.once.bind(r),e.removeListener=r.removeListener.bind(r),e.removeAllListeners=r.removeAllListeners.bind(r),e._internalOn=t.on.bind(t),e._internalOnce=t.once.bind(t),e._removeInternalListener=t.removeListener.bind(t),e._removeAllInternalListeners=t.removeAllListeners.bind(t),e.emit=function(n,a){r.emit(n,a),t.emit(n,a)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,r,t){var n,a=e._ev;if(!a)return;var i=a._events[r];if(!i)return;function o(s){if(s.listener){if(a.removeListener(r,s.listener),!s.fired)return s.fired=!0,s.listener.apply(a,[t])}else return s.apply(a,[t])}i=Array.isArray(i)?i:[i];var l;for(l=0;l{"use strict";var Jw=pr(),cU=Kf().dfltConfig;function vU(e,r){for(var t=[],n,a=0;acU.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};Js.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};Js.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};Js.undo=function(r){var t,n;if(!(r.undoQueue===void 0||isNaN(r.undoQueue.index)||r.undoQueue.index<=0)){for(r.undoQueue.index--,t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,n=0;n=r.undoQueue.queue.length)){for(t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,n=0;n{"use strict";Qw.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var F0=te(ua=>{"use strict";var wo=dt(),y1=pr(),Yd=bo(),h2=k0(),hU=v2(),dU=f1(),pU=Kf().configAttributes,e9=_o(),gl=y1.extendDeepAll,z0=y1.isPlainObject,gU=y1.isArrayOrTypedArray,Gd=y1.nestedProperty,mU=y1.valObjectMeta,d2="_isSubplotObj",Vd="_isLinkedToArray",yU="_arrayAttrRegexps",t9="_deprecated",p2=[d2,Vd,yU,t9];ua.IS_SUBPLOT_OBJ=d2;ua.IS_LINKED_TO_ARRAY=Vd;ua.DEPRECATED=t9;ua.UNDERSCORE_ATTRS=p2;ua.get=function(){var e={};return wo.allTypes.forEach(function(r){e[r]=_U(r)}),{defs:{valObjects:mU,metaKeys:p2.concat(["description","role","editType","impliedEdits"]),editType:{traces:e9.traces,layout:e9.layout},impliedEdits:{}},traces:e,layout:xU(),frames:wU(),animation:N0(dU),config:N0(pU)}};ua.crawl=function(e,r,t,n){var a=t||0;n=n||"",Object.keys(e).forEach(function(i){var o=e[i];if(p2.indexOf(i)===-1){var l=(n?n+".":"")+i;r(o,i,e,a,l),!ua.isValObject(o)&&z0(o)&&i!=="impliedEdits"&&ua.crawl(o,r,a+1,l)}})};ua.isValObject=function(e){return e&&e.valType!==void 0};ua.findArrayAttributes=function(e){var r=[],t=[],n=[],a,i;function o(s,u,f,v){t=t.slice(0,v).concat([u]),n=n.slice(0,v).concat([s&&s._isLinkedToArray]);var h=s&&(s.valType==="data_array"||s.arrayOk===!0)&&!(t[v-1]==="colorbar"&&(u==="ticktext"||u==="tickvals"));h&&l(a,0,"")}function l(s,u,f){var v=s[t[u]],h=f+t[u];if(u===t.length-1)gU(v)&&r.push(i+h);else if(n[u]){if(Array.isArray(v))for(var d=0;d=i.length)return!1;if(e.dimensions===2){if(t++,r.length===t)return e;var o=r[t];if(!Ud(o))return!1;e=i[a][o]}else e=i[a]}else e=i}}return e}function Ud(e){return e===Math.round(e)&&e>=0}function _U(e){var r,t;r=wo.modules[e]._module,t=r.basePlotModule;var n={};n.type=null;var a=gl({},Yd),i=gl({},r.attributes);ua.crawl(i,function(s,u,f,v,h){Gd(a,h).set(void 0),s===void 0&&Gd(i,h).set(void 0)}),gl(n,a),wo.traceIs(e,"noOpacity")&&delete n.opacity,wo.traceIs(e,"showLegend")||(delete n.showlegend,delete n.legendgroup),wo.traceIs(e,"noHover")&&(delete n.hoverinfo,delete n.hoverlabel),r.selectPoints||delete n.selectedpoints,gl(n,i),t.attributes&&gl(n,t.attributes),n.type=e;var o={meta:r.meta||{},categories:r.categories||{},animatable:!!r.animatable,type:e,attributes:N0(n)};if(r.layoutAttributes){var l={};gl(l,r.layoutAttributes),o.layoutAttributes=N0(l)}return r.animatable||ua.crawl(o,function(s){ua.isValObject(s)&&"anim"in s&&delete s.anim}),o}function xU(){var e={},r,t;gl(e,h2);for(r in wo.subplotsRegistry)if(t=wo.subplotsRegistry[r],!!t.layoutAttributes)if(Array.isArray(t.attr))for(var n=0;n{"use strict";var I0=pr(),SU=bo(),Ou="templateitemname",g2={name:{valType:"string",editType:"none"}};g2[Ou]={valType:"string",editType:"calc"};ac.templatedArray=function(e,r){return r._isLinkedToArray=e,r.name=g2.name,r[Ou]=g2[Ou],r};ac.traceTemplater=function(e){var r={},t,n;for(t in e)n=e[t],Array.isArray(n)&&n.length&&(r[t]=0);function a(i){t=I0.coerce(i,{},SU,"type");var o={type:t,_template:null};if(t in r){n=e[t];var l=r[t]%n.length;r[t]++,o._template=n[l]}return o}return{newTrace:a}};ac.newContainer=function(e,r,t){var n=e._template,a=n&&(n[r]||t&&n[t]);I0.isPlainObject(a)||(a=null);var i=e[r]={_template:a};return i};ac.arrayTemplater=function(e,r,t){var n=e._template,a=n&&n[i9(r)],i=n&&n[r];(!Array.isArray(i)||!i.length)&&(i=[]);var o={};function l(u){var f={name:u.name,_input:u},v=f[Ou]=u[Ou];if(!a9(v))return f._template=a,f;for(var h=0;h=n&&(t._input||{})._templateitemname;i&&(a=n);var o=r+"["+a+"]",l;function s(){l={},i&&(l[o]={},l[o][Ou]=i)}s();function u(d,m){l[d]=m}function f(d,m){i?I0.nestedProperty(l[o],d).set(m):l[o+"."+d]=m}function v(){var d=l;return s(),d}function h(d,m){d&&f(d,m);var p=v();for(var y in p)I0.nestedProperty(e,y).set(p[y])}return{modifyBase:u,modifyItem:f,getUpdateObj:v,applyUpdate:h}}});var Ea=te((eue,o9)=>{"use strict";var b1=w0().counter;o9.exports={idRegex:{x:b1("x","( domain)?"),y:b1("y","( domain)?")},attrRegex:b1("[xy]axis"),xAxisMatch:b1("xaxis"),yAxisMatch:b1("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var fa=te(Ei=>{"use strict";var CU=dt(),m2=Ea();Ei.id2name=function(r){if(!(typeof r!="string"||!r.match(m2.AX_ID_PATTERN))){var t=r.split(" ")[0].slice(1);return t==="1"&&(t=""),r.charAt(0)+"axis"+t}};Ei.name2id=function(r){if(r.match(m2.AX_NAME_PATTERN)){var t=r.slice(5);return t==="1"&&(t=""),r.charAt(0)+t}};Ei.cleanId=function(r,t,n){var a=/( domain)$/.test(r);if(!(typeof r!="string"||!r.match(m2.AX_ID_PATTERN))&&!(t&&r.charAt(0)!==t)&&!(a&&!n)){var i=r.split(" ")[0].slice(1).replace(/^0+/,"");return i==="1"&&(i=""),r.charAt(0)+i+(a&&n?" domain":"")}};Ei.list=function(e,r,t){var n=e._fullLayout;if(!n)return[];var a=Ei.listIds(e,r),i=new Array(a.length),o;for(o=0;on?1:-1:+(e.slice(1)||1)-+(r.slice(1)||1)};Ei.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function l9(e,r){if(r&&r.length){for(var t=0;t{"use strict";function LU(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".outline-controllers").remove()}function qU(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}s9.exports={clearOutlineControllers:LU,clearOutline:qU}});var Wd=te((nue,u9)=>{"use strict";u9.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var _1=te(Xd=>{"use strict";var Zd=dt(),aue=Ea().SUBPLOT_PATTERN;Xd.getSubplotCalcData=function(e,r,t){var n=Zd.subplotsRegistry[r];if(!n)return[];for(var a=n.attr,i=[],o=0;o{"use strict";var DU=dt(),H0=pr();ic.manageCommandObserver=function(e,r,t,n){var a={},i=!0;r&&r._commandObserver&&(a=r._commandObserver),a.cache||(a.cache={}),a.lookupTable={};var o=ic.hasSimpleAPICommandBindings(e,t,a.lookupTable);if(r&&r._commandObserver){if(o)return a;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,a}if(o){f9(e,o,a.cache),a.check=function(){if(i){var f=f9(e,o,a.cache);return f.changed&&n&&a.lookupTable[f.value]!==void 0&&(a.disable(),Promise.resolve(n({value:f.value,type:o.type,prop:o.prop,traces:o.traces,index:a.lookupTable[f.value]})).then(a.enable,a.enable)),f.changed}};for(var l=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],s=0;s0?".":"")+a;H0.isPlainObject(i)?y2(i,r,o,n+1):r(o,a,i)}})}});var ca=te((lue,S9)=>{"use strict";var _9=kt(),PU=y0().timeFormatLocale,RU=Sy().formatLocale,x1=Ht(),zU=Cy(),Zt=dt(),x9=F0(),NU=_n(),Zr=pr(),w9=Et(),d9=Rn().BADNUM,Pi=fa(),FU=Uu().clearOutline,IU=Wd(),b2=f1(),HU=v2(),BU=_1().getModuleCalcData,p9=Zr.relinkPrivateKeys,oc=Zr._,Pr=S9.exports={};Zr.extendFlat(Pr,Zt);Pr.attributes=bo();Pr.attributes.type.values=Pr.allTypes;Pr.fontAttrs=$a();Pr.layoutAttributes=k0();var Jd=h9();Pr.executeAPICommand=Jd.executeAPICommand;Pr.computeAPICommandBindings=Jd.computeAPICommandBindings;Pr.manageCommandObserver=Jd.manageCommandObserver;Pr.hasSimpleAPICommandBindings=Jd.hasSimpleAPICommandBindings;Pr.redrawText=function(e){return e=Zr.getGraphDiv(e),new Promise(function(r){setTimeout(function(){e._fullLayout&&(Zt.getComponentMethod("annotations","draw")(e),Zt.getComponentMethod("legend","draw")(e),Zt.getComponentMethod("colorbar","draw")(e),r(Pr.previousPromises(e)))},300)})};Pr.resize=function(e){e=Zr.getGraphDiv(e);var r,t=new Promise(function(n,a){(!e||Zr.isHidden(e))&&a(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(r=e._resolveResize),e._resolveResize=n,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||Zr.isHidden(e)){n(e);return}delete e.layout.width,delete e.layout.height;var i=e.changed;e.autoplay=!0,Zt.call("relayout",e,{autosize:!0}).then(function(){e.changed=i,e._resolveResize===n&&(delete e._resolveResize,n(e))})},100)});return r&&r(t),t};Pr.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};Pr.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var r=e._fullLayout,t=Zr.ensureSingle(r._paper,"text","js-plot-link-container",function(s){s.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:w9.defaultLine,"pointer-events":"all"}).each(function(){var u=_9.select(this);u.append("tspan").classed("js-link-to-tool",!0),u.append("tspan").classed("js-link-spacer",!0),u.append("tspan").classed("js-sourcelinks",!0)})}),n=t.node(),a={y:r._paper.attr("height")-9};document.body.contains(n)&&n.getComputedTextLength()>=r.width-20?(a["text-anchor"]="start",a.x=5):(a["text-anchor"]="end",a.x=r._paper.attr("width")-7),t.attr(a);var i=t.select(".js-link-to-tool"),o=t.select(".js-link-spacer"),l=t.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&OU(e,i),o.text(i.text()&&l.text()?" - ":"")}};function OU(e,r){r.text("");var t=r.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)t.on("click",function(){Pr.sendDataToCloud(e)});else{var n=window.location.pathname.split("/"),a=window.location.search;t.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+a})}}Pr.sendDataToCloud=function(e){var r=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(r){e.emit("plotly_beforeexport");var t=_9.select(e).append("div").attr("id","hiddenform").style("display","none"),n=t.append("form").attr({action:r+"/external",method:"post",target:"_blank"}),a=n.append("input").attr({type:"text",name:"data"});return a.node().value=Pr.graphJson(e,!1,"keepdata"),n.node().submit(),t.remove(),e.emit("plotly_afterexport"),!1}};var UU=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],YU=["year","month","dayMonth","dayMonthYear"];Pr.supplyDefaults=function(e,r){var t=r&&r.skipUpdateCalc,n=e._fullLayout||{};if(n._skipDefaults){delete n._skipDefaults;return}var a=e._fullLayout={},i=e.layout||{},o=e._fullData||[],l=e._fullData=[],s=e.data||[],u=e.calcdata||[],f=e._context||{},v;e._transitionData||Pr.createTransitionData(e),a._dfltTitle={plot:oc(e,"Click to enter Plot title"),subtitle:oc(e,"Click to enter Plot subtitle"),x:oc(e,"Click to enter X axis title"),y:oc(e,"Click to enter Y axis title"),colorbar:oc(e,"Click to enter Colorscale title"),annotation:oc(e,"new text")},a._traceWord=oc(e,"trace");var h=g9(e,UU);if(a._mapboxAccessToken=f.mapboxAccessToken,n._initialAutoSizeIsDone){var d=n.width,m=n.height;Pr.supplyLayoutGlobalDefaults(i,a,h),i.width||(a.width=d),i.height||(a.height=m),Pr.sanitizeMargins(a)}else{Pr.supplyLayoutGlobalDefaults(i,a,h);var p=!i.width||!i.height,y=a.autosize,b=f.autosizable,C=p&&(y||b);C?Pr.plotAutoSize(e,i,a):p&&Pr.sanitizeMargins(a),!y&&p&&(i.width=a.width,i.height=a.height)}a._d3locale=WU(h,a.separators),a._extraFormat=g9(e,YU),a._initialAutoSizeIsDone=!0,a._dataLength=s.length,a._modules=[],a._visibleModules=[],a._basePlotModules=[];var x=a._subplots=VU(),_=a._splomAxes={x:{},y:{}},A=a._splomSubplots={};a._splomGridDflt={},a._scatterStackOpts={},a._firstScatter={},a._alignmentOpts={},a._colorAxes={},a._requestRangeslider={},a._traceUids=GU(o,s),Pr.supplyDataDefaults(s,l,i,a);var k=Object.keys(_.x),M=Object.keys(_.y);if(k.length>1&&M.length>1){for(Zt.getComponentMethod("grid","sizeDefaults")(i,a),v=0;v15&&M.length>15&&a.shapes.length===0&&a.images.length===0,Pr.linkSubplots(l,a,o,n),Pr.cleanPlot(l,a,o,n);var W=!!(n._has&&n._has("cartesian")),O=!!(a._has&&a._has("cartesian")),Z=W,V=O;Z&&!V?n._bgLayer.remove():V&&!Z&&(a._shouldCreateBgLayer=!0),n._zoomlayer&&!e._dragging&&FU({_fullLayout:n}),ZU(l,a),p9(a,n),Zt.getComponentMethod("colorscale","crossTraceDefaults")(l,a),a._preGUI||(a._preGUI={}),a._tracePreGUI||(a._tracePreGUI={});var re=a._tracePreGUI,ie={},Q;for(Q in re)ie[Q]="old";for(v=0;v0){var f=1-2*i;o=Math.round(f*o),l=Math.round(f*l)}}var v=Pr.layoutAttributes.width.min,h=Pr.layoutAttributes.height.min;o1,m=!t.height&&Math.abs(n.height-l)>1;(m||d)&&(d&&(n.width=o),m&&(n.height=l)),r._initialAutoSize||(r._initialAutoSize={width:o,height:l}),Pr.sanitizeMargins(n)};Pr.supplyLayoutModuleDefaults=function(e,r,t,n){var a=Zt.componentsRegistry,i=r._basePlotModules,o,l,s,u=Zt.subplotsRegistry.cartesian;for(o in a)s=a[o],s.includeBasePlot&&s.includeBasePlot(e,r);i.length||i.push(u),r._has("cartesian")&&(Zt.getComponentMethod("grid","contentDefaults")(e,r),u.finalizeSubplots(e,r));for(var f in r._subplots)r._subplots[f].sort(Zr.subplotSort);for(l=0;l1&&(t.l/=y,t.r/=y)}if(h){var b=(t.t+t.b)/h;b>1&&(t.t/=b,t.b/=b)}var C=t.xl!==void 0?t.xl:t.x,x=t.xr!==void 0?t.xr:t.x,_=t.yt!==void 0?t.yt:t.y,A=t.yb!==void 0?t.yb:t.y;d[r]={l:{val:C,size:t.l+p},r:{val:x,size:t.r+p},b:{val:A,size:t.b+p},t:{val:_,size:t.t+p}},m[r]=1}if(!n._replotting)return Pr.doAutoMargin(e)}};function jU(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var r=Pi.list(e,"",!0);for(var t in r)if(r[t].autoshift||r[t].shift)return!0;return!1}Pr.doAutoMargin=function(e){var r=e._fullLayout,t=r.width,n=r.height;r._size||(r._size={}),M9(r);var a=r._size,i=r.margin,o={t:0,b:0,l:0,r:0},l=Zr.extendFlat({},a),s=i.l,u=i.r,f=i.t,v=i.b,h=r._pushmargin,d=r._pushmarginIds,m=r.minreducedwidth,p=r.minreducedheight;if(i.autoexpand!==!1){for(var y in h)d[y]||delete h[y];var b=e._fullLayout._reservedMargin;for(var C in b)for(var x in b[C]){var _=b[C][x];o[x]=Math.max(o[x],_)}h.base={l:{val:0,size:s},r:{val:1,size:u},t:{val:1,size:f},b:{val:0,size:v}};for(var A in o){var k=0;for(var M in h)M!=="base"&&x1(h[M][A].size)&&(k=h[M][A].size>k?h[M][A].size:k);var E=Math.max(0,i[A]-k);o[A]=Math.max(0,o[A]-E)}for(var R in h){var F=h[R].l||{},I=h[R].b||{},W=F.val,O=F.size,Z=I.val,V=I.size,re=t-o.r-o.l,ie=n-o.t-o.b;for(var Q in h){if(x1(O)&&h[Q].r){var ee=h[Q].r.val,se=h[Q].r.size;if(ee>W){var ve=(O*ee+(se-re)*W)/(ee-W),Ce=(se*(1-W)+(O-re)*(1-ee))/(ee-W);ve+Ce>s+u&&(s=ve,u=Ce)}}if(x1(V)&&h[Q].t){var Ie=h[Q].t.val,ze=h[Q].t.size;if(Ie>Z){var Xe=(V*Ie+(ze-ie)*Z)/(Ie-Z),Le=(ze*(1-Z)+(V-ie)*(1-Ie))/(Ie-Z);Xe+Le>v+f&&(v=Xe,f=Le)}}}}}var Qe=Zr.constrain(t-i.l-i.r,A9,m),fe=Zr.constrain(n-i.t-i.b,T9,p),ye=Math.max(0,t-Qe),Me=Math.max(0,n-fe);if(ye){var pe=(s+u)/ye;pe>1&&(s/=pe,u/=pe)}if(Me){var U=(v+f)/Me;U>1&&(v/=U,f/=U)}if(a.l=Math.round(s)+o.l,a.r=Math.round(u)+o.r,a.t=Math.round(f)+o.t,a.b=Math.round(v)+o.b,a.p=Math.round(i.pad),a.w=Math.round(t)-a.l-a.r,a.h=Math.round(n)-a.t-a.b,!r._replotting&&(Pr.didMarginChange(l,a)||jU(e))){"_redrawFromAutoMarginCount"in r?r._redrawFromAutoMarginCount++:r._redrawFromAutoMarginCount=1;var K=3*(1+Object.keys(d).length);if(r._redrawFromAutoMarginCount1)return!0}return!1};Pr.graphJson=function(e,r,t,n,a,i){(a&&r&&!e._fullData||a&&!r&&!e._fullLayout)&&Pr.supplyDefaults(e);var o=a?e._fullData:e.data,l=a?e._fullLayout:e.layout,s=(e._transitionData||{})._frames;function u(h,d){if(typeof h=="function")return d?"_function_":null;if(Zr.isPlainObject(h)){var m={},p;return Object.keys(h).sort().forEach(function(x){if(["_","["].indexOf(x.charAt(0))===-1){if(typeof h[x]=="function"){d&&(m[x]="_function");return}if(t==="keepdata"){if(x.slice(-3)==="src")return}else if(t==="keepstream"){if(p=h[x+"src"],typeof p=="string"&&p.indexOf(":")>0&&!Zr.isPlainObject(h.stream))return}else if(t!=="keepall"&&(p=h[x+"src"],typeof p=="string"&&p.indexOf(":")>0))return;m[x]=u(h[x],d)}}),m}var y=Array.isArray(h),b=Zr.isTypedArray(h);if((y||b)&&h.dtype&&h.shape){var C=h.bdata;return u({dtype:h.dtype,shape:h.shape,bdata:Zr.isArrayBuffer(C)?zU.encode(C):C},d)}return y?h.map(function(x){return u(x,d)}):b?Zr.simpleMap(h,Zr.identity):Zr.isJSDate(h)?Zr.ms2DateTimeLocal(+h):h}var f={data:(o||[]).map(function(h){var d=u(h);return r&&delete d.fit,d})};if(!r&&(f.layout=u(l),a)){var v=l._size;f.layout.computed={margin:{b:v.b,l:v.l,r:v.r,t:v.t}}}return s&&(f.frames=u(s)),i&&(f.config=u(e._context,!0)),n==="object"?f:JSON.stringify(f)};Pr.modifyFrames=function(e,r){var t,n,a,i=e._transitionData._frames,o=e._transitionData._frameHash;for(t=0;t0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){n=!0}),t.redraw&&e._transitionData._interruptCallbacks.push(function(){return Zt.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var h=0,d=0;function m(){return h++,function(){d++,!n&&d===h&&l(v)}}t.runFn(m),setTimeout(m())})}function l(v){if(e._transitionData)return i(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(t.redraw)return Zt.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(v)}function s(){if(e._transitionData)return e._transitioning=!1,a(e._transitionData._interruptCallbacks)}var u=[Pr.previousPromises,s,t.prepareFn,Pr.rehover,Pr.reselect,o],f=Zr.syncOrAsync(u,e);return(!f||!f.then)&&(f=Promise.resolve()),f.then(function(){return e})}Pr.doCalcdata=function(e,r){var t=Pi.list(e),n=e._fullData,a=e._fullLayout,i,o,l,s,u=new Array(n.length),f=(e.calcdata||[]).slice();for(e.calcdata=u,a._numBoxes=0,a._numViolins=0,a._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,a._piecolormap={},a._sunburstcolormap={},a._treemapcolormap={},a._iciclecolormap={},a._funnelareacolormap={},l=0;l=0;s--)if(A[s].enabled){i._indexToPoints=A[s]._indexToPoints;break}o&&o.calc&&(_=o.calc(e,i))}(!Array.isArray(_)||!_[0])&&(_=[{x:d9,y:d9}]),_[0].t||(_[0].t={}),_[0].trace=i,u[C]=_}}for(y9(t,n,a),l=0;l{"use strict";lc.xmlns="http://www.w3.org/2000/xmlns/";lc.svg="http://www.w3.org/2000/svg";lc.xlink="http://www.w3.org/1999/xlink";lc.svgAttrs={xmlns:lc.svg,"xmlns:xlink":lc.xlink}});var Ka=te((uue,C9)=>{"use strict";C9.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var vi=te(Mo=>{"use strict";var ra=kt(),$s=pr(),QU=$s.strTranslate,_2=sc(),eY=Ka().LINE_SPACING,rY=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;Mo.convertToTspans=function(e,r,t){var n=e.text(),a=!e.attr("data-notex")&&r&&r._context.typesetMath&&typeof MathJax!="undefined"&&n.match(rY),i=ra.select(e.node().parentNode);if(i.empty())return;var o=e.attr("class")?e.attr("class").split(" ")[0]:"text";o+="-math",i.selectAll("svg."+o).remove(),i.selectAll("g."+o+"-group").remove(),e.style("display",null).attr({"data-unformatted":n,"data-math":"N"});function l(){i.empty()||(o=e.attr("class")+"-math",i.select("svg."+o).remove()),e.text("").style("white-space","pre");var s=dY(e.node(),n);s&&e.style("pointer-events","all"),Mo.positionText(e),t&&t.call(e)}return a?(r&&r._promises||[]).push(new Promise(function(s){e.style("display","none");var u=parseInt(e.node().style.fontSize,10),f={fontSize:u};iY(a[2],f,function(v,h,d){i.selectAll("svg."+o).remove(),i.selectAll("g."+o+"-group").remove();var m=v&&v.select("svg");if(!m||!m.node()){l(),s();return}var p=i.append("g").classed(o+"-group",!0).attr({"pointer-events":"none","data-unformatted":n,"data-math":"Y"});p.node().appendChild(m.node()),h&&h.node()&&m.node().insertBefore(h.node().cloneNode(!0),m.node().firstChild);var y=d.width,b=d.height;m.attr({class:o,height:b,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var C=e.node().style.fill||"black",x=m.select("g");x.attr({fill:C,stroke:C});var _=x.node().getBoundingClientRect(),A=_.width,k=_.height;(A>y||k>b)&&(m.style("overflow","hidden"),_=m.node().getBoundingClientRect(),A=_.width,k=_.height);var M=+e.attr("x"),E=+e.attr("y"),R=u||e.node().getBoundingClientRect().height,F=-R/4;if(o[0]==="y")p.attr({transform:"rotate("+[-90,M,E]+")"+QU(-A/2,F-k/2)});else if(o[0]==="l")E=F-k/2;else if(o[0]==="a"&&o.indexOf("atitle")!==0)M=0,E=F;else{var I=e.attr("text-anchor");M=M-A*(I==="middle"?.5:I==="end"?1:0),E=E+F-k/2}m.attr({x:M,y:E}),t&&t.call(e,p),s(p)})})):l(),e};var tY=/(<|<|<)/g,nY=/(>|>|>)/g;function aY(e){return e.replace(tY,"\\lt ").replace(nY,"\\gt ")}var L9=[["$","$"],["\\(","\\)"]];function iY(e,r,t){var n=parseInt((MathJax.version||"").split(".")[0]);if(n!==2&&n!==3){$s.warn("No MathJax version:",MathJax.version);return}var a,i,o,l,s=function(){return i=$s.extendDeepAll({},MathJax.Hub.config),o=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:L9},displayAlign:"left"})},u=function(){i=$s.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=L9},f=function(){if(a=MathJax.Hub.config.menuSettings.renderer,a!=="SVG")return MathJax.Hub.setRenderer("SVG")},v=function(){a=MathJax.config.startup.output,a!=="svg"&&(MathJax.config.startup.output="svg")},h=function(){var C="math-output-"+$s.randstr({},64);l=ra.select("body").append("div").attr({id:C}).style({visibility:"hidden",position:"absolute","font-size":r.fontSize+"px"}).text(aY(e));var x=l.node();return n===2?MathJax.Hub.Typeset(x):MathJax.typeset([x])},d=function(){var C=l.select(n===2?".MathJax_SVG":".MathJax"),x=!C.empty()&&l.select("svg").node();if(!x)$s.log("There was an error in the tex syntax.",e),t();else{var _=x.getBoundingClientRect(),A;n===2?A=ra.select("body").select("#MathJax_SVG_glyphs"):A=C.select("defs"),t(C,A,_)}l.remove()},m=function(){if(a!=="SVG")return MathJax.Hub.setRenderer(a)},p=function(){a!=="svg"&&(MathJax.config.startup.output=a)},y=function(){return o!==void 0&&(MathJax.Hub.processSectionDelay=o),MathJax.Hub.Config(i)},b=function(){MathJax.config=i};n===2?MathJax.Hub.Queue(s,f,h,d,m,y):n===3&&(u(),v(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){h(),d(),p(),b()}))}var P9={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},oY={sub:"0.3em",sup:"-0.6em"},lY={sub:"-0.21em",sup:"0.42em"},q9="\u200B",D9=["http:","https:","mailto:","",void 0,":"],R9=Mo.NEWLINES=/(\r\n?|\n)/g,w2=/(<[^<>]*>)/,M2=/<(\/?)([^ >]*)(\s+(.*))?>/i,sY=//i;Mo.BR_TAG_ALL=//gi;var z9=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,N9=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,F9=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,uY=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function uc(e,r){if(!e)return null;var t=e.match(r),n=t&&(t[3]||t[4]);return n&&$d(n)}var fY=/(^|;)\s*color:/;Mo.plainText=function(e,r){r=r||{};for(var t=r.len!==void 0&&r.len!==-1?r.len:1/0,n=r.allowedTags!==void 0?r.allowedTags:["br"],a="...",i=a.length,o=e.split(w2),l=[],s="",u=0,f=0;fi?l.push(v.slice(0,Math.max(0,p-i))+a):l.push(v.slice(0,p));break}s=""}}return l.join("")};var cY={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},vY=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function $d(e){return e.replace(vY,function(r,t){var n;return t.charAt(0)==="#"?n=hY(t.charAt(1)==="x"?parseInt(t.slice(2),16):parseInt(t.slice(1),10)):n=cY[t],n||r})}Mo.convertEntities=$d;function hY(e){if(!(e>1114111)){var r=String.fromCodePoint;if(r)return r(e);var t=String.fromCharCode;return e<=65535?t(e):t((e>>10)+55232,e%1024+56320)}}function dY(e,r){r=r.replace(R9," ");var t=!1,n=[],a,i=-1;function o(){i++;var k=document.createElementNS(_2.svg,"tspan");ra.select(k).attr({class:"line",dy:i*eY+"em"}),e.appendChild(k),a=k;var M=n;if(n=[{node:k}],M.length>1)for(var E=1;E.",r);return}var M=n.pop();k!==M.type&&$s.log("Start tag <"+M.type+"> doesnt match end tag <"+k+">. Pretending it did match.",r),a=n[n.length-1].node}var f=sY.test(r);f?o():(a=e,n=[{node:e}]);for(var v=r.split(w2),h=0;h{"use strict";var pY=kt(),Qd=$l(),M1=Ht(),Kd=pr(),H9=Et(),gY=Jf().isValid;function mY(e,r,t){var n=r?Kd.nestedProperty(e,r).get()||{}:e,a=n[t||"color"];a&&a._inputArray&&(a=a._inputArray);var i=!1;if(Kd.isArrayOrTypedArray(a)){for(var o=0;o=0;n--,a++){var i=e[n];t[a]=[1-i[0],i[1]]}return t}function V9(e,r){r=r||{};for(var t=e.domain,n=e.range,a=n.length,i=new Array(a),o=0;o{"use strict";var Z9=Vy(),bY=Z9.FORMAT_LINK,_Y=Z9.DATE_FORMAT_LINK;function xY(e,r){return{valType:"string",dflt:"",editType:"none",description:(r?A2:X9)("hover text",e)+["By default the values are formatted using "+(r?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function A2(e,r){return["Sets the "+e+" formatting rule"+(r?"for `"+r+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+bY+"."].join(" ")}function X9(e,r){return A2(e,r)+[" And for dates see: "+_Y+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}j9.exports={axisHoverFormat:xY,descriptionOnlyNumbers:A2,descriptionWithDates:X9}});var ml=te((due,v8)=>{"use strict";var J9=$a(),B0=vl(),c8=Kl().dash,S2=sa().extendFlat,$9=_n().templatedArray,hue=Qf().templateFormatStringDescription,K9=T2().descriptionWithDates,wY=Rn().ONEDAY,rs=Ea(),MY=rs.HOUR_PATTERN,AY=rs.WEEKDAY_PATTERN,k2={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},TY=S2({},k2,{values:k2.values.slice().concat(["sync"])});function Q9(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var e8={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},r8={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},t8={valType:"data_array",editType:"ticks"},n8={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function a8(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=5),r}function i8(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var o8={valType:"color",dflt:B0.defaultLine,editType:"ticks"},l8={valType:"color",dflt:B0.lightLine,editType:"ticks"};function s8(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var u8=S2({},c8,{editType:"ticks"}),f8={valType:"boolean",editType:"ticks"};v8.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:B0.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:J9({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[rs.idRegex.x.toString(),rs.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[rs.idRegex.x.toString(),rs.idRegex.y.toString()],editType:"calc"},rangebreaks:$9("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[AY,MY,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:wY},editType:"calc"}),tickmode:TY,nticks:Q9(),tick0:e8,dtick:r8,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:t8,ticktext:{valType:"data_array",editType:"ticks"},ticks:n8,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:a8(),tickwidth:i8(),tickcolor:o8,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:S2({},c8,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:J9({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:K9("tick label")},tickformatstops:$9("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:K9("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:B0.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:f8,gridcolor:l8,gridwidth:s8(),griddash:u8,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:B0.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:B0.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",rs.idRegex.x.toString(),rs.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",rs.idRegex.x.toString(),rs.idRegex.y.toString()],editType:"plot"},minor:{tickmode:k2,nticks:Q9("minor"),tick0:e8,dtick:r8,tickvals:t8,ticks:n8,ticklen:a8("minor"),tickwidth:i8("minor"),tickcolor:o8,gridcolor:l8,gridwidth:s8("minor"),griddash:u8,showgrid:f8,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var ep=te((pue,p8)=>{"use strict";var Cn=ml(),h8=$a(),d8=sa().extendFlat,kY=_o().overrideAll;p8.exports=kY({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:Cn.linecolor,outlinewidth:Cn.linewidth,bordercolor:Cn.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:Cn.minor.tickmode,nticks:Cn.nticks,tick0:Cn.tick0,dtick:Cn.dtick,tickvals:Cn.tickvals,ticktext:Cn.ticktext,ticks:d8({},Cn.ticks,{dflt:""}),ticklabeloverflow:d8({},Cn.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:Cn.ticklen,tickwidth:Cn.tickwidth,tickcolor:Cn.tickcolor,ticklabelstep:Cn.ticklabelstep,showticklabels:Cn.showticklabels,labelalias:Cn.labelalias,tickfont:h8({}),tickangle:Cn.tickangle,tickformat:Cn.tickformat,tickformatstops:Cn.tickformatstops,tickprefix:Cn.tickprefix,showtickprefix:Cn.showtickprefix,ticksuffix:Cn.ticksuffix,showticksuffix:Cn.showticksuffix,separatethousands:Cn.separatethousands,exponentformat:Cn.exponentformat,minexponent:Cn.minexponent,showexponent:Cn.showexponent,title:{text:{valType:"string"},font:h8({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var O0=te((mue,m8)=>{"use strict";var SY=ep(),CY=w0().counter,LY=Dd(),g8=Jf().scales,gue=LY(g8);function rp(e){return"`"+e+"`"}m8.exports=function(r,t){r=r||"",t=t||{};var n=t.cLetter||"c",a="onlyIfNumerical"in t?t.onlyIfNumerical:!!r,i="noScale"in t?t.noScale:r==="marker.line",o="showScaleDflt"in t?t.showScaleDflt:n==="z",l=typeof t.colorscaleDflt=="string"?g8[t.colorscaleDflt]:null,s=t.editTypeOverride||"",u=r?r+".":"",f,v;"colorAttr"in t?(f=t.colorAttr,v=t.colorAttr):(f={z:"z",c:"color"}[n],v="in "+rp(u+f));var h=a?" Has an effect only if "+v+" is set to a numerical array.":"",d=n+"auto",m=n+"min",p=n+"max",y=n+"mid",b=rp(u+d),C=rp(u+m),x=rp(u+p),_=C+" and "+x,A={};A[m]=A[p]=void 0;var k={};k[d]=!1;var M={};return f==="color"&&(M.color={valType:"color",arrayOk:!0,editType:s||"style"},t.anim&&(M.color.anim=!0)),M[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:A},M[m]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:k},M[p]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:k},M[y]={valType:"number",dflt:null,editType:"calc",impliedEdits:A},M.colorscale={valType:"colorscale",editType:"calc",dflt:l,impliedEdits:{autocolorscale:!1}},M.autocolorscale={valType:"boolean",dflt:t.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},M.reversescale={valType:"boolean",dflt:!1,editType:"plot"},i||(M.showscale={valType:"boolean",dflt:o,editType:"calc"},M.colorbar=SY),t.noColorAxis||(M.coloraxis={valType:"subplotid",regex:CY("coloraxis"),dflt:null,editType:"calc"}),M}});var L2=te((yue,y8)=>{"use strict";var qY=sa().extendFlat,DY=O0(),C2=Jf().scales;y8.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:C2.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:C2.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:C2.RdBu,editType:"calc"}},coloraxis:qY({_isSubplotObj:!0,editType:"calc"},DY("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var q2=te((bue,b8)=>{"use strict";var EY=pr();b8.exports=function(r){return EY.isPlainObject(r.colorbar)}});var P2=te(E2=>{"use strict";var D2=Ht(),_8=pr(),x8=Rn(),PY=x8.ONEDAY,RY=x8.ONEWEEK;E2.dtick=function(e,r){var t=r==="log",n=r==="date",a=r==="category",i=n?PY:1;if(!e)return i;if(D2(e))return e=Number(e),e<=0?i:a?Math.max(1,Math.round(e)):n?Math.max(.1,e):e;if(typeof e!="string"||!(n||t))return i;var o=e.charAt(0),l=e.slice(1);return l=D2(l)?Number(l):0,l<=0||!(n&&o==="M"&&l===Math.round(l)||t&&o==="L"||t&&o==="D"&&(l===1||l===2))?i:e};E2.tick0=function(e,r,t,n){if(r==="date")return _8.cleanDate(e,_8.dateTick0(t,n%RY===0?1:0));if(!(n==="D1"||n==="D2"))return D2(e)?Number(e):0}});var R2=te((xue,M8)=>{"use strict";var w8=P2(),zY=pr().isArrayOrTypedArray,NY=ji().isTypedArraySpec,FY=ji().decodeTypedArraySpec;M8.exports=function(r,t,n,a,i){i||(i={});var o=i.isMinor,l=o?r.minor||{}:r,s=o?t.minor:t,u=o?"minor.":"";function f(C){var x=l[C];return NY(x)&&(x=FY(x)),x!==void 0?x:(s._template||{})[C]}var v=f("tick0"),h=f("dtick"),d=f("tickvals"),m=zY(d)?"array":h?"linear":"auto",p=n(u+"tickmode",m);if(p==="auto"||p==="sync")n(u+"nticks");else if(p==="linear"){var y=s.dtick=w8.dtick(h,a);s.tick0=w8.tick0(v,a,t.calendar,y)}else if(a!=="multicategory"){var b=n(u+"tickvals");b===void 0?s.tickmode="auto":o||n("ticktext")}}});var N2=te((wue,T8)=>{"use strict";var z2=pr(),A8=ml();T8.exports=function(r,t,n,a){var i=a.isMinor,o=i?r.minor||{}:r,l=i?t.minor:t,s=i?A8.minor:A8,u=i?"minor.":"",f=z2.coerce2(o,l,s,"ticklen",i?(t.ticklen||5)*.6:void 0),v=z2.coerce2(o,l,s,"tickwidth",i?t.tickwidth||1:void 0),h=z2.coerce2(o,l,s,"tickcolor",(i?t.tickcolor:void 0)||l.color),d=n(u+"ticks",!i&&a.outerTicks||f||v||h?"outside":"");d||(delete l.ticklen,delete l.tickwidth,delete l.tickcolor)}});var F2=te((Mue,k8)=>{"use strict";k8.exports=function(r){var t=["showexponent","showtickprefix","showticksuffix"],n=t.filter(function(i){return r[i]!==void 0}),a=function(i){return r[i]===r[n[0]]};if(n.every(a)||n.length===1)return r[n[0]]}});var yl=te((Aue,S8)=>{"use strict";var tp=pr(),IY=_n();S8.exports=function(r,t,n){var a=n.name,i=n.inclusionAttr||"visible",o=t[a],l=tp.isArrayOrTypedArray(r[a])?r[a]:[],s=t[a]=[],u=IY.arrayTemplater(t,a,i),f,v;for(f=0;f{"use strict";var I2=pr(),HY=Et().contrast,C8=ml(),BY=F2(),OY=yl();L8.exports=function(r,t,n,a,i){i||(i={});var o=n("labelalias");I2.isPlainObject(o)||delete t.labelalias;var l=BY(r),s=n("showticklabels");if(s){i.noTicklabelshift||n("ticklabelshift"),i.noTicklabelstandoff||n("ticklabelstandoff");var u=i.font||{},f=t.color,v=t.ticklabelposition||"",h=v.indexOf("inside")!==-1?HY(i.bgColor):f&&f!==C8.color.dflt?f:u.color;if(I2.coerceFont(n,"tickfont",u,{overrideDflt:{color:h}}),!i.noTicklabelstep&&a!=="multicategory"&&a!=="log"&&n("ticklabelstep"),!i.noAng){var d=n("tickangle");!i.noAutotickangles&&d==="auto"&&n("autotickangles")}if(a!=="category"){var m=n("tickformat");OY(r,t,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:UY}),t.tickformatstops.length||delete t.tickformatstops,!i.noExp&&!m&&a!=="date"&&(n("showexponent",l),n("exponentformat"),n("minexponent"),n("separatethousands"))}!i.noMinorloglabels&&a==="log"&&n("minorloglabels")}};function UY(e,r){function t(a,i){return I2.coerce(e,r,C8.tickformatstops,a,i)}var n=t("enabled");n&&(t("dtickrange"),t("value"))}});var B2=te((kue,q8)=>{"use strict";var YY=F2();q8.exports=function(r,t,n,a,i){i||(i={});var o=i.tickSuffixDflt,l=YY(r),s=n("tickprefix");s&&n("showtickprefix",l);var u=n("ticksuffix",o);u&&n("showticksuffix",l)}});var O2=te((Sue,D8)=>{"use strict";var Yu=pr(),GY=_n(),VY=R2(),WY=N2(),ZY=H2(),XY=B2(),jY=ep();D8.exports=function(r,t,n){var a=GY.newContainer(t,"colorbar"),i=r.colorbar||{};function o(I,W){return Yu.coerce(i,a,jY,I,W)}var l=n.margin||{t:0,b:0,l:0,r:0},s=n.width-l.l-l.r,u=n.height-l.t-l.b,f=o("orientation"),v=f==="v",h=o("thicknessmode");o("thickness",h==="fraction"?30/(v?s:u):30);var d=o("lenmode");o("len",d==="fraction"?1:v?u:s);var m=o("yref"),p=o("xref"),y=m==="paper",b=p==="paper",C,x,_,A="left";v?(_="middle",A=b?"left":"right",C=b?1.02:1,x=.5):(_=y?"bottom":"top",A="center",C=.5,x=y?1.02:1),Yu.coerce(i,a,{x:{valType:"number",min:b?-2:0,max:b?3:1,dflt:C}},"x"),Yu.coerce(i,a,{y:{valType:"number",min:y?-2:0,max:y?3:1,dflt:x}},"y"),o("xanchor",A),o("xpad"),o("yanchor",_),o("ypad"),Yu.noneOrAll(i,a,["x","y"]),o("outlinecolor"),o("outlinewidth"),o("bordercolor"),o("borderwidth"),o("bgcolor");var k=Yu.coerce(i,a,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:v?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");o("ticklabeloverflow",k.indexOf("inside")!==-1?"hide past domain":"hide past div"),VY(i,a,o,"linear");var M=n.font,E={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:M};k.indexOf("inside")!==-1&&(E.bgColor="black"),XY(i,a,o,"linear",E),ZY(i,a,o,"linear",E),WY(i,a,o,"linear",E),o("title.text",n._dfltTitle.colorbar);var R=a.showticklabels?a.tickfont:M,F=Yu.extendFlat({},M,{family:R.family,size:Yu.bigFont(R.size)});Yu.coerceFont(o,"title.font",F),o("title.side",v?"top":"right")}});var U0=te((Cue,R8)=>{"use strict";var E8=Ht(),Y2=pr(),JY=q2(),$Y=O2(),P8=Jf().isValid,KY=dt().traceIs;function U2(e,r){var t=r.slice(0,r.length-1);return r?Y2.nestedProperty(e,t).get()||{}:e}R8.exports=function e(r,t,n,a,i){var o=i.prefix,l=i.cLetter,s="_module"in t,u=U2(r,o),f=U2(t,o),v=U2(t._template||{},o)||{},h=function(){return delete r.coloraxis,delete t.coloraxis,e(r,t,n,a,i)};if(s){var d=n._colorAxes||{},m=a(o+"coloraxis");if(m){var p=KY(t,"contour")&&Y2.nestedProperty(t,"contours.coloring").get()||"heatmap",y=d[m];y?(y[2].push(h),y[0]!==p&&(y[0]=!1,Y2.warn(["Ignoring coloraxis:",m,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[m]=[p,t,[h]];return}}var b=u[l+"min"],C=u[l+"max"],x=E8(b)&&E8(C)&&b{"use strict";var z8=pr(),QY=_n(),N8=L2(),eG=U0();F8.exports=function(r,t){function n(v,h){return z8.coerce(r,t,N8,v,h)}n("colorscale.sequential"),n("colorscale.sequentialminus"),n("colorscale.diverging");var a=t._colorAxes,i,o;function l(v,h){return z8.coerce(i,o,N8.coloraxis,v,h)}for(var s in a){var u=a[s];if(u[0])i=r[s]||{},o=QY.newContainer(t,s,"coloraxis"),o._name=s,eG(i,o,t,l,{prefix:"",cLetter:"c"});else{for(var f=0;f{"use strict";var rG=pr(),tG=es().hasColorscale,nG=es().extractOpts;H8.exports=function(r,t){function n(f,v){var h=f["_"+v];h!==void 0&&(f[v]=h)}function a(f,v){var h=v.container?rG.nestedProperty(f,v.container).get():f;if(h)if(h.coloraxis)h._colorAx=t[h.coloraxis];else{var d=nG(h),m=d.auto;(m||d.min===void 0)&&n(h,v.min),(m||d.max===void 0)&&n(h,v.max),d.autocolorscale&&n(h,"colorscale")}}for(var i=0;i{"use strict";var O8=Ht(),G2=pr(),aG=es().extractOpts;U8.exports=function(r,t,n){var a=r._fullLayout,i=n.vals,o=n.containerStr,l=o?G2.nestedProperty(t,o).get():t,s=aG(l),u=s.auto!==!1,f=s.min,v=s.max,h=s.mid,d=function(){return G2.aggNums(Math.min,null,i)},m=function(){return G2.aggNums(Math.max,null,i)};if(f===void 0?f=d():u&&(l._colorAx&&O8(f)?f=Math.min(f,d()):f=d()),v===void 0?v=m():u&&(l._colorAx&&O8(v)?v=Math.max(v,m()):v=m()),u&&h!==void 0&&(v-h>h-f?f=h-(v-h):v-h=0?p=a.colorscale.sequential:p=a.colorscale.sequentialminus,s._sync("colorscale",p)}}});var ip=te((Eue,Y8)=>{"use strict";var ap=Jf(),Y0=es();Y8.exports={moduleType:"component",name:"colorscale",attributes:O0(),layoutAttributes:L2(),supplyLayoutDefaults:I8(),handleDefaults:U0(),crossTraceDefaults:B8(),calc:np(),scales:ap.scales,defaultScale:ap.defaultScale,getScale:ap.get,isValidScale:ap.isValid,hasColorscale:Y0.hasColorscale,extractOpts:Y0.extractOpts,extractScale:Y0.extractScale,flipScale:Y0.flipScale,makeColorScaleFunc:Y0.makeColorScaleFunc,makeColorScaleFuncFromTrace:Y0.makeColorScaleFuncFromTrace}});var Qa=te((Pue,V8)=>{"use strict";var G8=pr(),iG=ji().isTypedArraySpec;V8.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var r=e.marker;return G8.isPlainObject(r)&&(G8.isArrayOrTypedArray(r.size)||iG(r.size))}}});var Z8=te((Rue,W8)=>{"use strict";var oG=Ht();W8.exports=function(r,t){t||(t=2);var n=r.marker,a=n.sizeref||1,i=n.sizemin||0,o=n.sizemode==="area"?function(l){return Math.sqrt(l/a)}:function(l){return l/a};return function(l){var s=o(l/t);return oG(s)&&s>0?Math.max(s,i):0}}});var Gu=te(Ia=>{"use strict";var op=pr();Ia.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};Ia.isTraceInSubplots=function(e,r){if(e.type==="splom"){for(var t=e.xaxes||[],n=e.yaxes||[],a=0;a=0&&t.index{J8.exports=cG;var V2={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},fG=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function cG(e){var r=[];return e.replace(fG,function(t,n,a){var i=n.toLowerCase();for(a=hG(a),i=="m"&&a.length>2&&(r.push([n].concat(a.splice(0,2))),i="l",n=n=="m"?"l":"L");;){if(a.length==V2[i])return a.unshift(n),r.push(a);if(a.length{"use strict";var dG=W2(),Cr=function(e,r){return r?Math.round(e*(r=Math.pow(10,r)))/r:Math.round(e)},gt="M0,0Z",$8=Math.sqrt(2),Vu=Math.sqrt(3),Z2=Math.PI,X2=Math.cos,j2=Math.sin;tM.exports={circle:{n:0,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a="M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z";return t?yt(r,t,a):a}},square:{n:1,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")}},diamond:{n:2,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.3,2);return yt(r,t,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"Z")}},cross:{n:3,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.4,2),a=Cr(e*1.2,2);return yt(r,t,"M"+a+","+n+"H"+n+"V"+a+"H-"+n+"V"+n+"H-"+a+"V-"+n+"H-"+n+"V-"+a+"H"+n+"V-"+n+"H"+a+"Z")}},x:{n:4,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.8/$8,2),a="l"+n+","+n,i="l"+n+",-"+n,o="l-"+n+",-"+n,l="l-"+n+","+n;return yt(r,t,"M0,"+n+a+i+o+i+o+l+o+l+a+l+a+"Z")}},"triangle-up":{n:5,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2/Vu,2),a=Cr(e/2,2),i=Cr(e,2);return yt(r,t,"M-"+n+","+a+"H"+n+"L0,-"+i+"Z")}},"triangle-down":{n:6,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2/Vu,2),a=Cr(e/2,2),i=Cr(e,2);return yt(r,t,"M-"+n+",-"+a+"H"+n+"L0,"+i+"Z")}},"triangle-left":{n:7,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2/Vu,2),a=Cr(e/2,2),i=Cr(e,2);return yt(r,t,"M"+a+",-"+n+"V"+n+"L-"+i+",0Z")}},"triangle-right":{n:8,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2/Vu,2),a=Cr(e/2,2),i=Cr(e,2);return yt(r,t,"M-"+a+",-"+n+"V"+n+"L"+i+",0Z")}},"triangle-ne":{n:9,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.6,2),a=Cr(e*1.2,2);return yt(r,t,"M-"+a+",-"+n+"H"+n+"V"+a+"Z")}},"triangle-se":{n:10,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.6,2),a=Cr(e*1.2,2);return yt(r,t,"M"+n+",-"+a+"V"+n+"H-"+a+"Z")}},"triangle-sw":{n:11,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.6,2),a=Cr(e*1.2,2);return yt(r,t,"M"+a+","+n+"H-"+n+"V-"+a+"Z")}},"triangle-nw":{n:12,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.6,2),a=Cr(e*1.2,2);return yt(r,t,"M-"+n+","+a+"V-"+n+"H"+a+"Z")}},pentagon:{n:13,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.951,2),a=Cr(e*.588,2),i=Cr(-e,2),o=Cr(e*-.309,2),l=Cr(e*.809,2);return yt(r,t,"M"+n+","+o+"L"+a+","+l+"H-"+a+"L-"+n+","+o+"L0,"+i+"Z")}},hexagon:{n:14,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a=Cr(e/2,2),i=Cr(e*Vu/2,2);return yt(r,t,"M"+i+",-"+a+"V"+a+"L0,"+n+"L-"+i+","+a+"V-"+a+"L0,-"+n+"Z")}},hexagon2:{n:15,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a=Cr(e/2,2),i=Cr(e*Vu/2,2);return yt(r,t,"M-"+a+","+i+"H"+a+"L"+n+",0L"+a+",-"+i+"H-"+a+"L-"+n+",0Z")}},octagon:{n:16,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.924,2),a=Cr(e*.383,2);return yt(r,t,"M-"+a+",-"+n+"H"+a+"L"+n+",-"+a+"V"+a+"L"+a+","+n+"H-"+a+"L-"+n+","+a+"V-"+a+"Z")}},star:{n:17,f:function(e,r,t){if(mt(r))return gt;var n=e*1.4,a=Cr(n*.225,2),i=Cr(n*.951,2),o=Cr(n*.363,2),l=Cr(n*.588,2),s=Cr(-n,2),u=Cr(n*-.309,2),f=Cr(n*.118,2),v=Cr(n*.809,2),h=Cr(n*.382,2);return yt(r,t,"M"+a+","+u+"H"+i+"L"+o+","+f+"L"+l+","+v+"L0,"+h+"L-"+l+","+v+"L-"+o+","+f+"L-"+i+","+u+"H-"+a+"L0,"+s+"Z")}},hexagram:{n:18,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.66,2),a=Cr(e*.38,2),i=Cr(e*.76,2);return yt(r,t,"M-"+i+",0l-"+a+",-"+n+"h"+i+"l"+a+",-"+n+"l"+a+","+n+"h"+i+"l-"+a+","+n+"l"+a+","+n+"h-"+i+"l-"+a+","+n+"l-"+a+",-"+n+"h-"+i+"Z")}},"star-triangle-up":{n:19,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*Vu*.8,2),a=Cr(e*.8,2),i=Cr(e*1.6,2),o=Cr(e*4,2),l="A "+o+","+o+" 0 0 1 ";return yt(r,t,"M-"+n+","+a+l+n+","+a+l+"0,-"+i+l+"-"+n+","+a+"Z")}},"star-triangle-down":{n:20,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*Vu*.8,2),a=Cr(e*.8,2),i=Cr(e*1.6,2),o=Cr(e*4,2),l="A "+o+","+o+" 0 0 1 ";return yt(r,t,"M"+n+",-"+a+l+"-"+n+",-"+a+l+"0,"+i+l+n+",-"+a+"Z")}},"star-square":{n:21,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.1,2),a=Cr(e*2,2),i="A "+a+","+a+" 0 0 1 ";return yt(r,t,"M-"+n+",-"+n+i+"-"+n+","+n+i+n+","+n+i+n+",-"+n+i+"-"+n+",-"+n+"Z")}},"star-diamond":{n:22,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.4,2),a=Cr(e*1.9,2),i="A "+a+","+a+" 0 0 1 ";return yt(r,t,"M-"+n+",0"+i+"0,"+n+i+n+",0"+i+"0,-"+n+i+"-"+n+",0Z")}},"diamond-tall":{n:23,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*.7,2),a=Cr(e*1.4,2);return yt(r,t,"M0,"+a+"L"+n+",0L0,-"+a+"L-"+n+",0Z")}},"diamond-wide":{n:24,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.4,2),a=Cr(e*.7,2);return yt(r,t,"M0,"+a+"L"+n+",0L0,-"+a+"L-"+n+",0Z")}},hourglass:{n:25,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M"+n+","+n+"H-"+n+"L"+n+",-"+n+"H-"+n+"Z")},noDot:!0},bowtie:{n:26,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M"+n+","+n+"V-"+n+"L-"+n+","+n+"V-"+n+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a=Cr(e/$8,2);return yt(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.3,2);return yt(r,t,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM0,-"+n+"V"+n+"M-"+n+",0H"+n)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.3,2),a=Cr(e*.65,2);return yt(r,t,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM-"+a+",-"+a+"L"+a+","+a+"M-"+a+","+a+"L"+a+",-"+a)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.4,2);return yt(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.2,2),a=Cr(e*.85,2);return yt(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e/2,2),a=Cr(e,2);return yt(r,t,"M"+n+","+a+"V-"+a+"M"+(n-a)+",-"+a+"V"+a+"M"+a+","+n+"H-"+a+"M-"+a+","+(n-a)+"H"+a)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.2,2),a=Cr(e*1.6,2),i=Cr(e*.8,2);return yt(r,t,"M-"+n+","+i+"L0,0M"+n+","+i+"L0,0M0,-"+a+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.2,2),a=Cr(e*1.6,2),i=Cr(e*.8,2);return yt(r,t,"M-"+n+",-"+i+"L0,0M"+n+",-"+i+"L0,0M0,"+a+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.2,2),a=Cr(e*1.6,2),i=Cr(e*.8,2);return yt(r,t,"M"+i+","+n+"L0,0M"+i+",-"+n+"L0,0M-"+a+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.2,2),a=Cr(e*1.6,2),i=Cr(e*.8,2);return yt(r,t,"M-"+i+","+n+"L0,0M-"+i+",-"+n+"L0,0M"+a+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.4,2);return yt(r,t,"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*1.4,2);return yt(r,t,"M0,"+n+"V-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2);return yt(r,t,"M"+n+","+n+"L-"+n+",-"+n)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a=Cr(e*2,2);return yt(r,t,"M0,0L-"+n+","+a+"H"+n+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a=Cr(e*2,2);return yt(r,t,"M0,0L-"+n+",-"+a+"H"+n+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2,2),a=Cr(e,2);return yt(r,t,"M0,0L"+n+",-"+a+"V"+a+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2,2),a=Cr(e,2);return yt(r,t,"M0,0L-"+n+",-"+a+"V"+a+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a=Cr(e*2,2);return yt(r,t,"M-"+n+",0H"+n+"M0,0L-"+n+","+a+"H"+n+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e,2),a=Cr(e*2,2);return yt(r,t,"M-"+n+",0H"+n+"M0,0L-"+n+",-"+a+"H"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2,2),a=Cr(e,2);return yt(r,t,"M0,-"+a+"V"+a+"M0,0L"+n+",-"+a+"V"+a+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,r,t){if(mt(r))return gt;var n=Cr(e*2,2),a=Cr(e,2);return yt(r,t,"M0,-"+a+"V"+a+"M0,0L-"+n+",-"+a+"V"+a+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,r,t){if(mt(r))return gt;var n=Z2/2.5,a=2*e*X2(n),i=2*e*j2(n);return yt(r,t,"M0,0L"+-a+","+i+"L"+a+","+i+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,r,t){if(mt(r))return gt;var n=Z2/4,a=2*e*X2(n),i=2*e*j2(n);return yt(r,t,"M0,0L"+-a+","+i+"A "+2*e+","+2*e+" 0 0 1 "+a+","+i+"Z")},backoff:.4,noDot:!0}};function mt(e){return e===null}var K8,Q8,eM,rM;function yt(e,r,t){if((!e||e%360===0)&&!r)return t;if(eM===e&&rM===r&&K8===t)return Q8;eM=e,rM=r,K8=t;function n(y,b){var C=X2(y),x=j2(y),_=b[0],A=b[1]+(r||0);return[_*C-A*x,_*x+A*C]}for(var a=e/180*Z2,i=0,o=0,l=dG(t),s="",u=0;u{"use strict";var ya=kt(),un=pr(),pG=un.numberFormat,hc=Ht(),r3=$l(),sp=dt(),Pa=Et(),gG=ip(),T1=un.strTranslate,up=vi(),mG=sc(),yG=Ka(),bG=yG.LINE_SPACING,hM=md().DESELECTDIM,_G=Qa(),xG=Z8(),wG=Gu().appendArrayPointValue,zr=MM.exports={};zr.font=function(e,r){var t=r.variant,n=r.style,a=r.weight,i=r.color,o=r.size,l=r.family,s=r.shadow,u=r.lineposition,f=r.textcase;l&&e.style("font-family",l),o+1&&e.style("font-size",o+"px"),i&&e.call(Pa.fill,i),a&&e.style("font-weight",a),n&&e.style("font-style",n),t&&e.style("font-variant",t),f&&e.style("text-transform",J2(AG(f))),s&&e.style("text-shadow",s==="auto"?up.makeTextShadow(Pa.contrast(i)):J2(s)),u&&e.style("text-decoration-line",J2(TG(u)))};function J2(e){return e==="none"?void 0:e}var MG={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function AG(e){return MG[e]}function TG(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}zr.setPosition=function(e,r,t){e.attr("x",r).attr("y",t)};zr.setSize=function(e,r,t){e.attr("width",r).attr("height",t)};zr.setRect=function(e,r,t,n,a){e.call(zr.setPosition,r,t).call(zr.setSize,n,a)};zr.translatePoint=function(e,r,t,n){var a=t.c2p(e.x),i=n.c2p(e.y);if(hc(a)&&hc(i)&&r.node())r.node().nodeName==="text"?r.attr("x",a).attr("y",i):r.attr("transform",T1(a,i));else return!1;return!0};zr.translatePoints=function(e,r,t){e.each(function(n){var a=ya.select(this);zr.translatePoint(n,a,r,t)})};zr.hideOutsideRangePoint=function(e,r,t,n,a,i){r.attr("display",t.isPtWithinRange(e,a)&&n.isPtWithinRange(e,i)?null:"none")};zr.hideOutsideRangePoints=function(e,r){if(r._hasClipOnAxisFalse){var t=r.xaxis,n=r.yaxis;e.each(function(a){var i=a[0].trace,o=i.xcalendar,l=i.ycalendar,s=sp.traceIs(i,"bar-like")?".bartext":".point,.textpoint";e.selectAll(s).each(function(u){zr.hideOutsideRangePoint(u,ya.select(this),t,n,o,l)})})}};zr.crispRound=function(e,r,t){return!r||!hc(r)?t||0:e._context.staticPlot?r:r<1?1:Math.round(r)};zr.singleLineStyle=function(e,r,t,n,a){r.style("fill","none");var i=(((e||[])[0]||{}).trace||{}).line||{},o=t||i.width||0,l=a||i.dash||"";Pa.stroke(r,n||i.color),zr.dashLine(r,l,o)};zr.lineGroupStyle=function(e,r,t,n){e.style("fill","none").each(function(a){var i=(((a||[])[0]||{}).trace||{}).line||{},o=r||i.width||0,l=n||i.dash||"";ya.select(this).call(Pa.stroke,t||i.color).call(zr.dashLine,l,o)})};zr.dashLine=function(e,r,t){t=+t||0,r=zr.dashStyle(r,t),e.style({"stroke-dasharray":r,"stroke-width":t+"px"})};zr.dashStyle=function(e,r){r=+r||1;var t=Math.max(r,3);return e==="solid"?e="":e==="dot"?e=t+"px,"+t+"px":e==="dash"?e=3*t+"px,"+3*t+"px":e==="longdash"?e=5*t+"px,"+5*t+"px":e==="dashdot"?e=3*t+"px,"+t+"px,"+t+"px,"+t+"px":e==="longdashdot"&&(e=5*t+"px,"+2*t+"px,"+t+"px,"+2*t+"px"),e};function dM(e,r,t,n){var a=r.fillpattern,i=r.fillgradient,o=zr.getPatternAttr,l=a&&(o(a.shape,0,"")||o(a.path,0,""));if(l){var s=o(a.bgcolor,0,null),u=o(a.fgcolor,0,null),f=a.fgopacity,v=o(a.size,0,8),h=o(a.solidity,0,.3),d=r.uid;zr.pattern(e,"point",t,d,l,v,h,void 0,a.fillmode,s,u,f)}else if(i&&i.type!=="none"){var m=i.type,p="scatterfill-"+r.uid;if(n&&(p="legendfill-"+r.uid),!n&&(i.start!==void 0||i.stop!==void 0)){var y,b;m==="horizontal"?(y={x:i.start,y:0},b={x:i.stop,y:0}):m==="vertical"&&(y={x:0,y:i.start},b={x:0,y:i.stop}),y.x=r._xA.c2p(y.x===void 0?r._extremes.x.min[0].val:y.x,!0),y.y=r._yA.c2p(y.y===void 0?r._extremes.y.min[0].val:y.y,!0),b.x=r._xA.c2p(b.x===void 0?r._extremes.x.max[0].val:b.x,!0),b.y=r._yA.c2p(b.y===void 0?r._extremes.y.max[0].val:b.y,!0),e.call(mM,t,p,"linear",i.colorscale,"fill",y,b,!0,!1)}else m==="horizontal"&&(m=m+"reversed"),e.call(zr.gradient,t,p,m,i.colorscale,"fill")}else r.fillcolor&&e.call(Pa.fill,r.fillcolor)}zr.singleFillStyle=function(e,r){var t=ya.select(e.node()),n=t.data(),a=((n[0]||[])[0]||{}).trace||{};dM(e,a,r,!1)};zr.fillGroupStyle=function(e,r,t){e.style("stroke-width",0).each(function(n){var a=ya.select(this);n[0].trace&&dM(a,n[0].trace,r,t)})};var aM=nM();zr.symbolNames=[];zr.symbolFuncs=[];zr.symbolBackOffs=[];zr.symbolNeedLines={};zr.symbolNoDot={};zr.symbolNoFill={};zr.symbolList=[];Object.keys(aM).forEach(function(e){var r=aM[e],t=r.n;zr.symbolList.push(t,String(t),e,t+100,String(t+100),e+"-open"),zr.symbolNames[t]=e,zr.symbolFuncs[t]=r.f,zr.symbolBackOffs[t]=r.backoff||0,r.needLine&&(zr.symbolNeedLines[t]=!0),r.noDot?zr.symbolNoDot[t]=!0:zr.symbolList.push(t+200,String(t+200),e+"-dot",t+300,String(t+300),e+"-open-dot"),r.noFill&&(zr.symbolNoFill[t]=!0)});var kG=zr.symbolNames.length,SG="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";zr.symbolNumber=function(e){if(hc(e))e=+e;else if(typeof e=="string"){var r=0;e.indexOf("-open")>0&&(r=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(r+=200,e=e.replace("-dot","")),e=zr.symbolNames.indexOf(e),e>=0&&(e+=r)}return e%100>=kG||e>=400?0:Math.floor(Math.max(e,0))};function pM(e,r,t,n){var a=e%100;return zr.symbolFuncs[a](r,t,n)+(e>=200?SG:"")}var iM=pG("~f"),gM={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};zr.gradient=function(e,r,t,n,a,i){var o=gM[n];return mM(e,r,t,o.type,a,i,o.start,o.stop,!1,o.reversed)};function mM(e,r,t,n,a,i,o,l,s,u){var f=a.length,v;n==="linear"?v={node:"linearGradient",attrs:{x1:o.x,y1:o.y,x2:l.x,y2:l.y,gradientUnits:s?"userSpaceOnUse":"objectBoundingBox"},reversed:u}:n==="radial"&&(v={node:"radialGradient",reversed:u});for(var h=new Array(f),d=0;d=0&&e.i===void 0&&(e.i=i.i),r.style("opacity",n.selectedOpacityFn?n.selectedOpacityFn(e):e.mo===void 0?o.opacity:e.mo),n.ms2mrc){var s;e.ms==="various"||o.size==="various"?s=3:s=n.ms2mrc(e.ms),e.mrc=s,n.selectedSizeFn&&(s=e.mrc=n.selectedSizeFn(e));var u=zr.symbolNumber(e.mx||o.symbol)||0;e.om=u%200>=100;var f=a3(e,t),v=n3(e,t);r.attr("d",pM(u,s,f,v))}var h=!1,d,m,p;if(e.so)p=l.outlierwidth,m=l.outliercolor,d=o.outliercolor;else{var y=(l||{}).width;p=(e.mlw+1||y+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?m=e.mlcc=n.lineScale(e.mlc):un.isArrayOrTypedArray(l.color)?m=Pa.defaultLine:m=l.color,un.isArrayOrTypedArray(o.color)&&(d=Pa.defaultLine,h=!0),"mc"in e?d=e.mcc=n.markerScale(e.mc):d=o.color||o.colors||"rgba(0,0,0,0)",n.selectedColorFn&&(d=n.selectedColorFn(e))}if(e.om)r.call(Pa.stroke,d).style({"stroke-width":(p||1)+"px",fill:"none"});else{r.style("stroke-width",(e.isBlank?0:p)+"px");var b=o.gradient,C=e.mgt;C?h=!0:C=b&&b.type,un.isArrayOrTypedArray(C)&&(C=C[0],gM[C]||(C=0));var x=o.pattern,_=zr.getPatternAttr,A=x&&(_(x.shape,e.i,"")||_(x.path,e.i,""));if(C&&C!=="none"){var k=e.mgc;k?h=!0:k=b.color;var M=t.uid;h&&(M+="-"+e.i),zr.gradient(r,a,M,C,[[0,k],[1,d]],"fill")}else if(A){var E=!1,R=x.fgcolor;!R&&i&&i.color&&(R=i.color,E=!0);var F=_(R,e.i,i&&i.color||null),I=_(x.bgcolor,e.i,null),W=x.fgopacity,O=_(x.size,e.i,8),Z=_(x.solidity,e.i,.3);E=E||e.mcc||un.isArrayOrTypedArray(x.shape)||un.isArrayOrTypedArray(x.path)||un.isArrayOrTypedArray(x.bgcolor)||un.isArrayOrTypedArray(x.fgcolor)||un.isArrayOrTypedArray(x.size)||un.isArrayOrTypedArray(x.solidity);var V=t.uid;E&&(V+="-"+e.i),zr.pattern(r,"point",a,V,A,O,Z,e.mcc,x.fillmode,I,F,W)}else un.isArrayOrTypedArray(d)?Pa.fill(r,d[e.i]):Pa.fill(r,d);p&&Pa.stroke(r,m)}};zr.makePointStyleFns=function(e){var r={},t=e.marker;return r.markerScale=zr.tryColorscale(t,""),r.lineScale=zr.tryColorscale(t,"line"),sp.traceIs(e,"symbols")&&(r.ms2mrc=_G.isBubble(e)?xG(e):function(){return(t.size||6)/2}),e.selectedpoints&&un.extendFlat(r,zr.makeSelectedPointStyleFns(e)),r};zr.makeSelectedPointStyleFns=function(e){var r={},t=e.selected||{},n=e.unselected||{},a=e.marker||{},i=t.marker||{},o=n.marker||{},l=a.opacity,s=i.opacity,u=o.opacity,f=s!==void 0,v=u!==void 0;(un.isArrayOrTypedArray(l)||f||v)&&(r.selectedOpacityFn=function(_){var A=_.mo===void 0?a.opacity:_.mo;return _.selected?f?s:A:v?u:hM*A});var h=a.color,d=i.color,m=o.color;(d||m)&&(r.selectedColorFn=function(_){var A=_.mcc||h;return _.selected?d||A:m||A});var p=a.size,y=i.size,b=o.size,C=y!==void 0,x=b!==void 0;return sp.traceIs(e,"symbols")&&(C||x)&&(r.selectedSizeFn=function(_){var A=_.mrc||p/2;return _.selected?C?y/2:A:x?b/2:A}),r};zr.makeSelectedTextStyleFns=function(e){var r={},t=e.selected||{},n=e.unselected||{},a=e.textfont||{},i=t.textfont||{},o=n.textfont||{},l=a.color,s=i.color,u=o.color;return r.selectedTextColorFn=function(f){var v=f.tc||l;return f.selected?s||v:u||(s?v:Pa.addOpacity(v,hM))},r};zr.selectedPointStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=zr.makeSelectedPointStyleFns(r),n=r.marker||{},a=[];t.selectedOpacityFn&&a.push(function(i,o){i.style("opacity",t.selectedOpacityFn(o))}),t.selectedColorFn&&a.push(function(i,o){Pa.fill(i,t.selectedColorFn(o))}),t.selectedSizeFn&&a.push(function(i,o){var l=o.mx||n.symbol||0,s=t.selectedSizeFn(o);i.attr("d",pM(zr.symbolNumber(l),s,a3(o,r),n3(o,r))),o.mrc2=s}),a.length&&e.each(function(i){for(var o=ya.select(this),l=0;l0?t:0}zr.textPointStyle=function(e,r,t){if(e.size()){var n;if(r.selectedpoints){var a=zr.makeSelectedTextStyleFns(r);n=a.selectedTextColorFn}var i=r.texttemplate,o=t._fullLayout;e.each(function(l){var s=ya.select(this),u=i?un.extractOption(l,r,"txt","texttemplate"):un.extractOption(l,r,"tx","text");if(!u&&u!==0){s.remove();return}if(i){var f=r._module.formatLabels,v=f?f(l,r,o):{},h={};wG(h,r,l.i),u=un.texttemplateString({data:[h,l,r._meta],fallback:r.texttemplatefallback,labels:v,locale:o._d3locale,template:u})}var d=l.tp||r.textposition,m=bM(l,r),p=n?n(l):l.tc||r.textfont.color;s.call(zr.font,{family:l.tf||r.textfont.family,weight:l.tw||r.textfont.weight,style:l.ty||r.textfont.style,variant:l.tv||r.textfont.variant,textcase:l.tC||r.textfont.textcase,lineposition:l.tE||r.textfont.lineposition,shadow:l.tS||r.textfont.shadow,size:m,color:p}).text(u).call(up.convertToTspans,t).call(yM,d,m,l.mrc)})}};zr.selectedTextStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=zr.makeSelectedTextStyleFns(r);e.each(function(n){var a=ya.select(this),i=t.selectedTextColorFn(n),o=n.tp||r.textposition,l=bM(n,r);Pa.fill(a,i);var s=sp.traceIs(r,"bar-like");yM(a,o,l,n.mrc2||n.mrc,s)})}};var oM=.5;zr.smoothopen=function(e,r){if(e.length<3)return"M"+e.join("L");var t="M"+e[0],n=[],a;for(a=1;a=s||_>=f&&_<=s)&&(A<=v&&A>=u||A>=v&&A<=u)&&(e=[_,A])}return e}zr.applyBackoff=wM;zr.makeTester=function(){var e=un.ensureSingleById(ya.select("body"),"svg","js-plotly-tester",function(t){t.attr(mG.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),r=un.ensureSingle(e,"path","js-reference-point",function(t){t.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});zr.tester=e,zr.testref=r};zr.savedBBoxes={};var K2=0,qG=1e4;zr.bBox=function(e,r,t){t||(t=lM(e));var n;if(t){if(n=zr.savedBBoxes[t],n)return un.extendFlat({},n)}else if(e.childNodes.length===1){var a=e.childNodes[0];if(t=lM(a),t){var i=+a.getAttribute("x")||0,o=+a.getAttribute("y")||0,l=a.getAttribute("transform");if(!l){var s=zr.bBox(a,!1,t);return i&&(s.left+=i,s.right+=i),o&&(s.top+=o,s.bottom+=o),s}if(t+="~"+i+"~"+o+"~"+l,n=zr.savedBBoxes[t],n)return un.extendFlat({},n)}}var u,f;r?u=e:(f=zr.tester.node(),u=e.cloneNode(!0),f.appendChild(u)),ya.select(u).attr("transform",null).call(up.positionText,0,0);var v=u.getBoundingClientRect(),h=zr.testref.node().getBoundingClientRect();r||f.removeChild(u);var d={height:v.height,width:v.width,left:v.left-h.left,top:v.top-h.top,right:v.right-h.left,bottom:v.bottom-h.top};return K2>=qG&&(zr.savedBBoxes={},K2=0),t&&(zr.savedBBoxes[t]=d),K2++,un.extendFlat({},d)};function lM(e){var r=e.getAttribute("data-unformatted");if(r!==null)return r+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}zr.setClipUrl=function(e,r,t){e.attr("clip-path",t3(r,t))};function t3(e,r){if(!e)return null;var t=r._context,n=t._exportedPlot?"":t._baseUrl||"";return n?"url('"+n+"#"+e+"')":"url(#"+e+")"}zr.getTranslate=function(e){var r=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",n=e[t]("transform")||"",a=n.replace(r,function(i,o,l){return[o,l].join(" ")}).split(" ");return{x:+a[0]||0,y:+a[1]||0}};zr.setTranslate=function(e,r,t){var n=/(\btranslate\(.*?\);?)/,a=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",o=e[a]("transform")||"";return r=r||0,t=t||0,o=o.replace(n,"").trim(),o+=T1(r,t),o=o.trim(),e[i]("transform",o),o};zr.getScale=function(e){var r=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",n=e[t]("transform")||"",a=n.replace(r,function(i,o,l){return[o,l].join(" ")}).split(" ");return{x:+a[0]||1,y:+a[1]||1}};zr.setScale=function(e,r,t){var n=/(\bscale\(.*?\);?)/,a=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",o=e[a]("transform")||"";return r=r||1,t=t||1,o=o.replace(n,"").trim(),o+="scale("+r+","+t+")",o=o.trim(),e[i]("transform",o),o};var DG=/\s*sc.*/;zr.setPointGroupScale=function(e,r,t){if(r=r||1,t=t||1,!!e){var n=r===1&&t===1?"":"scale("+r+","+t+")";e.each(function(){var a=(this.getAttribute("transform")||"").replace(DG,"");a+=n,a=a.trim(),this.setAttribute("transform",a)})}};var EG=/translate\([^)]*\)\s*$/;zr.setTextPointsScale=function(e,r,t){e&&e.each(function(){var n,a=ya.select(this),i=a.select("text");if(i.node()){var o=parseFloat(i.attr("x")||0),l=parseFloat(i.attr("y")||0),s=(a.attr("transform")||"").match(EG);r===1&&t===1?n=[]:n=[T1(o,l),"scale("+r+","+t+")",T1(-o,-l)],s&&n.push(s),a.attr("transform",n.join(""))}})};function n3(e,r){var t;return e&&(t=e.mf),t===void 0&&(t=r.marker&&r.marker.standoff||0),!r._geo&&!r._xA?-t:t}zr.getMarkerStandoff=n3;var A1=Math.atan2,fc=Math.cos,V0=Math.sin;function sM(e,r){var t=r[0],n=r[1];return[t*fc(e)-n*V0(e),t*V0(e)+n*fc(e)]}var uM,fM,cM,vM,Q2,e3;function a3(e,r){var t=e.ma;t===void 0&&(t=r.marker.angle,(!t||un.isArrayOrTypedArray(t))&&(t=0));var n,a,i=r.marker.angleref;if(i==="previous"||i==="north"){if(r._geo){var o=r._geo.project(e.lonlat);n=o[0],a=o[1]}else{var l=r._xA,s=r._yA;if(l&&s)n=l.c2p(e.x),a=s.c2p(e.y);else return 90}if(r._geo){var u=e.lonlat[0],f=e.lonlat[1],v=r._geo.project([u,f+1e-5]),h=r._geo.project([u+1e-5,f]),d=A1(h[1]-a,h[0]-n),m=A1(v[1]-a,v[0]-n),p;if(i==="north")p=t/180*Math.PI;else if(i==="previous"){var y=u/180*Math.PI,b=f/180*Math.PI,C=uM/180*Math.PI,x=fM/180*Math.PI,_=C-y,A=fc(x)*V0(_),k=V0(x)*fc(b)-fc(x)*V0(b)*fc(_);p=-A1(A,k)-Math.PI,uM=u,fM=f}var M=sM(d,[fc(p),0]),E=sM(m,[V0(p),0]);t=A1(M[1]+E[1],M[0]+E[0])/Math.PI*180,i==="previous"&&!(e3===r.uid&&e.i===Q2+1)&&(t=null)}if(i==="previous"&&!r._geo)if(e3===r.uid&&e.i===Q2+1&&hc(n)&&hc(a)){var R=n-cM,F=a-vM,I=r.line&&r.line.shape||"",W=I.slice(I.length-1);W==="h"&&(F=0),W==="v"&&(R=0),t+=A1(F,R)/Math.PI*180+90}else t=null}return cM=n,vM=a,Q2=e.i,e3=r.uid,t}zr.getMarkerAngle=a3});var k1=te((Hue,SM)=>{"use strict";var W0=kt(),PG=Ht(),RG=ca(),i3=dt(),dc=pr(),AM=dc.strTranslate,fp=fn(),cp=Et(),Z0=vi(),TM=md(),zG=Ka().OPPOSITE_SIDE,kM=/ [XY][0-9]* /,o3=1.6,l3=1.6;function NG(e,r,t){var n=e._fullLayout,a=t.propContainer,i=t.propName,o=t.placeholder,l=t.traceIndex,s=t.avoid||{},u=t.attributes,f=t.transform,v=t.containerGroup,h=1,d=a.title,m=(d&&d.text?d.text:"").trim(),p=!1,y=d&&d.font?d.font:{},b=y.family,C=y.size,x=y.color,_=y.weight,A=y.style,k=y.variant,M=y.textcase,E=y.lineposition,R=y.shadow,F=t.subtitlePropName,I=!!F,W=t.subtitlePlaceholder,O=(a.title||{}).subtitle||{text:"",font:{}},Z=(O.text||"").trim(),V=!1,re=1,ie=O.font,Q=ie.family,ee=ie.size,se=ie.color,ve=ie.weight,Ce=ie.style,Ie=ie.variant,ze=ie.textcase,Xe=ie.lineposition,Le=ie.shadow,Qe;i==="title.text"?Qe="titleText":i.indexOf("axis")!==-1?Qe="axisTitleText":i.indexOf("colorbar")!==-1&&(Qe="colorbarTitleText");var fe=e._context.edits[Qe];function ye(lr,vr){return lr===void 0||vr===void 0?!1:lr.replace(kM," % ")===vr.replace(kM," % ")}m===""?h=0:ye(m,o)&&(fe||(m=""),h=.2,p=!0),I&&(Z===""?re=0:ye(Z,W)&&(fe||(Z=""),re=.2,V=!0)),t._meta?m=dc.templateString(m,t._meta):n._meta&&(m=dc.templateString(m,n._meta));var Me=m||Z||fe,pe;v||(v=dc.ensureSingle(n._infolayer,"g","g-"+r),pe=n._hColorbarMoveTitle);var U=v.selectAll("text."+r).data(Me?[0]:[]);U.enter().append("text"),U.text(m).attr("class",r),U.exit().remove();var K=null,$=r+"-subtitle",ke=Z||fe;if(I&&(K=v.selectAll("text."+$).data(ke?[0]:[]),K.enter().append("text"),K.text(Z).attr("class",$),K.exit().remove()),!Me)return v;function Be(lr,vr){dc.syncOrAsync([Ne,ir],{title:lr,subtitle:vr})}function Ne(lr){var vr=lr.title,Je=lr.subtitle,dr;!f&&pe&&(f={}),f?(dr="",f.rotate&&(dr+="rotate("+[f.rotate,u.x,u.y]+")"),(f.offset||pe)&&(dr+=AM(0,(f.offset||0)-(pe||0)))):dr=null,vr.attr("transform",dr);function gr(Ue){if(Ue){var Ze=W0.select(Ue.node().parentNode).select("."+$);if(!Ze.empty()){var mr=Ue.node().getBBox();if(mr.height){var Tr=mr.y+mr.height+o3*ee;Ze.attr("y",Tr)}}}}if(vr.style("opacity",h*cp.opacity(x)).call(fp.font,{color:cp.rgb(x),size:W0.round(C,2),family:b,weight:_,style:A,variant:k,textcase:M,shadow:R,lineposition:E}).attr(u).call(Z0.convertToTspans,e,gr),Je&&!Je.empty()){var Te=v.select("."+r+"-math-group"),Oe=vr.node().getBBox(),kr=Te.node()?Te.node().getBBox():void 0,Ur=kr?kr.y+kr.height+o3*ee:Oe.y+Oe.height+l3*ee,tr=dc.extendFlat({},u,{y:Ur});Je.attr("transform",dr),Je.style("opacity",re*cp.opacity(se)).call(fp.font,{color:cp.rgb(se),size:W0.round(ee,2),family:Q,weight:ve,style:Ce,variant:Ie,textcase:ze,shadow:Le,lineposition:Xe}).attr(tr).call(Z0.convertToTspans,e)}return RG.previousPromises(e)}function ir(lr){var vr=lr.title,Je=W0.select(vr.node().parentNode);if(s&&s.selection&&s.side&&m){Je.attr("transform",null);var dr=zG[s.side],gr=s.side==="left"||s.side==="top"?-1:1,Te=PG(s.pad)?s.pad:2,Oe=fp.bBox(Je.node()),kr={t:0,b:0,l:0,r:0},Ur=e._fullLayout._reservedMargin;for(var tr in Ur)for(var Ue in Ur[tr]){var Ze=Ur[tr][Ue];kr[Ue]=Math.max(kr[Ue],Ze)}var mr={left:kr.l,top:kr.t,right:n.width-kr.r,bottom:n.height-kr.b},Tr=s.maxShift||gr*(mr[s.side]-Oe[s.side]),yr=0;if(Tr<0)yr=Tr;else{var wr=s.offsetLeft||0,Hr=s.offsetTop||0;Oe.left-=wr,Oe.right-=wr,Oe.top-=Hr,Oe.bottom-=Hr,s.selection.each(function(){var Dr=fp.bBox(this);dc.bBoxIntersect(Oe,Dr,Te)&&(yr=Math.max(yr,gr*(Dr[s.side]-Oe[dr])+Te))}),yr=Math.min(Tr,yr),a._titleScoot=Math.abs(yr)}if(yr>0||Tr<0){var Sr={left:[-yr,0],right:[yr,0],top:[0,-yr],bottom:[0,yr]}[s.side];Je.attr("transform",AM(Sr[0],Sr[1]))}}}U.call(Be,K);function or(lr,vr){lr.text(vr).on("mouseover.opacity",function(){W0.select(this).transition().duration(TM.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){W0.select(this).transition().duration(TM.HIDE_PLACEHOLDER).style("opacity",0)})}if(fe&&(m?U.on(".opacity",null):(or(U,o),p=!0),U.call(Z0.makeEditable,{gd:e}).on("edit",function(lr){l!==void 0?i3.call("_guiRestyle",e,i,lr,l):i3.call("_guiRelayout",e,i,lr)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Be)}).on("input",function(lr){this.text(lr||" ").call(Z0.positionText,u.x,u.y)}),I)){if(I&&!m){var Ye=U.node().getBBox(),nr=Ye.y+Ye.height+l3*ee;K.attr("y",nr)}Z?K.on(".opacity",null):(or(K,W),V=!0),K.call(Z0.makeEditable,{gd:e}).on("edit",function(lr){i3.call("_guiRelayout",e,"title.subtitle.text",lr)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Be)}).on("input",function(lr){this.text(lr||" ").call(Z0.positionText,K.attr("x"),K.attr("y"))})}return U.classed("js-placeholder",p),K&&!K.empty()&&K.classed("js-placeholder",V),v}SM.exports={draw:NG,SUBTITLE_PADDING_EM:l3,SUBTITLE_PADDING_MATHJAX_EM:o3}});var bp=te((Bue,EM)=>{"use strict";var FG=kt(),IG=y0().utcFormat,bn=pr(),HG=bn.numberFormat,ts=Ht(),Wu=bn.cleanNumber,BG=bn.ms2DateTime,CM=bn.dateTime2ms,ns=bn.ensureNumber,LM=bn.isArrayOrTypedArray,Zu=Rn(),vp=Zu.FP_SAFE,bl=Zu.BADNUM,OG=Zu.LOG_CLIP,UG=Zu.ONEWEEK,hp=Zu.ONEDAY,dp=Zu.ONEHOUR,qM=Zu.ONEMIN,DM=Zu.ONESEC,pp=fa(),yp=Ea(),gp=yp.HOUR_PATTERN,mp=yp.WEEKDAY_PATTERN;function S1(e){return Math.pow(10,e)}function s3(e){return e!=null}EM.exports=function(r,t){t=t||{};var n=r._id||"x",a=n.charAt(0);function i(_,A){if(_>0)return Math.log(_)/Math.LN10;if(_<=0&&A&&r.range&&r.range.length===2){var k=r.range[0],M=r.range[1];return .5*(k+M-2*OG*Math.abs(k-M))}else return bl}function o(_,A,k,M){if((M||{}).msUTC&&ts(_))return+_;var E=CM(_,k||r.calendar);if(E===bl)if(ts(_)){_=+_;var R=Math.floor(bn.mod(_+.05,1)*10),F=Math.round(_-R/10);E=CM(new Date(F))+R/10}else return bl;return E}function l(_,A,k){return BG(_,A,k||r.calendar)}function s(_){return r._categories[Math.round(_)]}function u(_){if(s3(_)){if(r._categoriesMap===void 0&&(r._categoriesMap={}),r._categoriesMap[_]!==void 0)return r._categoriesMap[_];r._categories.push(typeof _=="number"?String(_):_);var A=r._categories.length-1;return r._categoriesMap[_]=A,A}return bl}function f(_,A){for(var k=new Array(A),M=0;Mr.range[1]&&(k=!k);for(var M=k?-1:1,E=M*_,R=0,F=0;FW)R=F+1;else{R=E<(I+W)/2?F:F+1;break}}var O=r._B[R]||0;return isFinite(O)?m(_,r._m2,O):0},b=function(_){var A=r._rangebreaks.length;if(!A)return p(_,r._m,r._b);for(var k=0,M=0;Mr._rangebreaks[M].pmax&&(k=M+1);return p(_,r._m2,r._B[k])}}r.c2l=r.type==="log"?i:ns,r.l2c=r.type==="log"?S1:ns,r.l2p=y,r.p2l=b,r.c2p=r.type==="log"?function(_,A){return y(i(_,A))}:y,r.p2c=r.type==="log"?function(_){return S1(b(_))}:b,["linear","-"].indexOf(r.type)!==-1?(r.d2r=r.r2d=r.d2c=r.r2c=r.d2l=r.r2l=Wu,r.c2d=r.c2r=r.l2d=r.l2r=ns,r.d2p=r.r2p=function(_){return r.l2p(Wu(_))},r.p2d=r.p2r=b,r.cleanPos=ns):r.type==="log"?(r.d2r=r.d2l=function(_,A){return i(Wu(_),A)},r.r2d=r.r2c=function(_){return S1(Wu(_))},r.d2c=r.r2l=Wu,r.c2d=r.l2r=ns,r.c2r=i,r.l2d=S1,r.d2p=function(_,A){return r.l2p(r.d2r(_,A))},r.p2d=function(_){return S1(b(_))},r.r2p=function(_){return r.l2p(Wu(_))},r.p2r=b,r.cleanPos=ns):r.type==="date"?(r.d2r=r.r2d=bn.identity,r.d2c=r.r2c=r.d2l=r.r2l=o,r.c2d=r.c2r=r.l2d=r.l2r=l,r.d2p=r.r2p=function(_,A,k){return r.l2p(o(_,0,k))},r.p2d=r.p2r=function(_,A,k){return l(b(_),A,k)},r.cleanPos=function(_){return bn.cleanDate(_,bl,r.calendar)}):r.type==="category"?(r.d2c=r.d2l=u,r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=h,r.r2c=function(_){var A=d(_);return A!==void 0?A:r.fraction2r(.5)},r.l2r=r.c2r=ns,r.r2l=d,r.d2p=function(_){return r.l2p(r.r2c(_))},r.p2d=function(_){return s(b(_))},r.r2p=r.d2p,r.p2r=b,r.cleanPos=function(_){return typeof _=="string"&&_!==""?_:ns(_)}):r.type==="multicategory"&&(r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=h,r.r2c=function(_){var A=h(_);return A!==void 0?A:r.fraction2r(.5)},r.r2c_just_indices=v,r.l2r=r.c2r=ns,r.r2l=h,r.d2p=function(_){return r.l2p(r.r2c(_))},r.p2d=function(_){return s(b(_))},r.r2p=r.d2p,r.p2r=b,r.cleanPos=function(_){return Array.isArray(_)||typeof _=="string"&&_!==""?_:ns(_)},r.setupMultiCategory=function(_){var A=r._traceIndices,k,M,E=r._matchGroup;if(E&&r._categories.length===0){for(var R in E)if(R!==n){var F=t[pp.id2name(R)];A=A.concat(F._traceIndices)}}var I=[[0,{}],[0,{}]],W=[];for(k=0;kF[1]&&(M[R?0:1]=k),M[0]===M[1]){var I=r.l2r(A),W=r.l2r(k);if(A!==void 0){var O=I+1;k!==void 0&&(O=Math.min(O,W)),M[R?1:0]=O}if(k!==void 0){var Z=W+1;A!==void 0&&(Z=Math.max(Z,I)),M[R?0:1]=Z}}}},r.cleanRange=function(_,A){r._cleanRange(_,A),r.limitRange(_)},r._cleanRange=function(_,A){A||(A={}),_||(_="range");var k=bn.nestedProperty(r,_).get(),M,E;if(r.type==="date"?E=bn.dfltRange(r.calendar):a==="y"?E=yp.DFLTRANGEY:r._name==="realaxis"?E=[0,1]:E=A.dfltRange||yp.DFLTRANGEX,E=E.slice(),(r.rangemode==="tozero"||r.rangemode==="nonnegative")&&(E[0]=0),!k||k.length!==2){bn.nestedProperty(r,_).set(E);return}var R=k[0]===null,F=k[1]===null;for(r.type==="date"&&!r.autorange&&(k[0]=bn.cleanDate(k[0],bl,r.calendar),k[1]=bn.cleanDate(k[1],bl,r.calendar)),M=0;M<2;M++)if(r.type==="date"){if(!bn.isDateTime(k[M],r.calendar)){r[_]=E;break}if(r.r2l(k[0])===r.r2l(k[1])){var I=bn.constrain(r.r2l(k[0]),bn.MIN_MS+1e3,bn.MAX_MS-1e3);k[0]=r.l2r(I-1e3),k[1]=r.l2r(I+1e3);break}}else{if(!ts(k[M]))if(!(R||F)&&ts(k[1-M]))k[M]=k[1-M]*(M?10:.1);else{r[_]=E;break}if(k[M]<-vp?k[M]=-vp:k[M]>vp&&(k[M]=vp),k[0]===k[1]){var W=Math.max(1,Math.abs(k[0]*1e-6));k[0]-=W,k[1]+=W}}},r.setScale=function(_){var A=t._size;if(r.overlaying){var k=pp.getFromId({_fullLayout:t},r.overlaying);r.domain=k.domain}var M=_&&r._r?"_r":"range",E=r.calendar;r.cleanRange(M);var R=r.r2l(r[M][0],E),F=r.r2l(r[M][1],E),I=a==="y";if(I?(r._offset=A.t+(1-r.domain[1])*A.h,r._length=A.h*(r.domain[1]-r.domain[0]),r._m=r._length/(R-F),r._b=-r._m*F):(r._offset=A.l+r.domain[0]*A.w,r._length=A.w*(r.domain[1]-r.domain[0]),r._m=r._length/(F-R),r._b=-r._m*R),r._rangebreaks=[],r._lBreaks=0,r._m2=0,r._B=[],r.rangebreaks){var W,O;if(r._rangebreaks=r.locateBreaks(Math.min(R,F),Math.max(R,F)),r._rangebreaks.length){for(W=0;WF&&(Z=!Z),Z&&r._rangebreaks.reverse();var V=Z?-1:1;for(r._m2=V*r._length/(Math.abs(F-R)-r._lBreaks),r._B.push(-r._m2*(I?F:R)),W=0;WE&&(E+=7,RE&&(E+=24,R=M&&R=M&&_=Le.min&&(CeLe.max&&(Le.max=Ie),ze=!1)}ze&&F.push({min:Ce,max:Ie})}};for(k=0;k{"use strict";var PM=Ht(),u3=pr(),YG=Rn().BADNUM,_p=u3.isArrayOrTypedArray,GG=u3.isDateTime,VG=u3.cleanNumber,RM=Math.round;NM.exports=function(r,t,n){var a=r,i=n.noMultiCategory;if(_p(a)&&!a.length)return"-";if(!i&&JG(a))return"multicategory";if(i&&Array.isArray(a[0])){for(var o=[],l=0;li*2}function zM(e){return Math.max(1,(e-1)/1e3)}function jG(e,r){for(var t=e.length,n=zM(t),a=0,i=0,o={},l=0;la*2}function JG(e){return _p(e[0])&&_p(e[1])}});var ju=te((Uue,GM)=>{"use strict";var $G=kt(),BM=Ht(),Xu=pr(),xp=Rn().FP_SAFE,KG=dt(),QG=fn(),OM=fa(),eV=OM.getFromId,rV=OM.isLinked;GM.exports={applyAutorangeOptions:YM,getAutoRange:c3,makePadFn:v3,doAutoRange:nV,findExtremes:aV,concatExtremes:p3};function c3(e,r){var t,n,a=[],i=e._fullLayout,o=v3(i,r,0),l=v3(i,r,1),s=p3(e,r),u=s.min,f=s.max;if(u.length===0||f.length===0)return Xu.simpleMap(r.range,r.r2l);var v=u[0].val,h=f[0].val;for(t=1;t0&&(F=x-o(k)-l(M),F>_?I/F>A&&(E=k,R=M,A=I/F):I/x>A&&(E={val:k.val,nopad:1},R={val:M.val,nopad:1},A=I/x));function W(ie,Q){return Math.max(ie,l(Q))}if(v===h){var O=v-1,Z=v+1;if(b)if(v===0)a=[0,1];else{var V=(v>0?f:u).reduce(W,0),re=v/(1-Math.min(.5,V/x));a=v>0?[0,re]:[re,0]}else C?a=[Math.max(0,O),Math.max(1,Z)]:a=[O,Z]}else b?(E.val>=0&&(E={val:0,nopad:1}),R.val<=0&&(R={val:0,nopad:1})):C&&(E.val-A*o(E)<0&&(E={val:0,nopad:1}),R.val<=0&&(R={val:1,nopad:1})),A=(R.val-E.val-FM(r,k.val,M.val))/(x-o(E)-l(R)),a=[E.val-A*o(E),R.val+A*l(R)];return a=YM(a,r),r.limitRange&&r.limitRange(),m&&a.reverse(),Xu.simpleMap(a,r.l2r||Number)}function FM(e,r,t){var n=0;if(e.rangebreaks)for(var a=e.locateBreaks(r,t),i=0;i0?t.ppadplus:t.ppadminus)||t.ppad||0),k=_((e._m>0?t.ppadminus:t.ppadplus)||t.ppad||0),M=_(t.vpadplus||t.vpad),E=_(t.vpadminus||t.vpad);if(!u){if(C=1/0,x=-1/0,s)for(v=0;v0&&(C=h),h>x&&h-xp&&(C=h),h>x&&h=I;v--)F(v);return{min:n,max:a,opts:t}}function h3(e,r,t,n){UM(e,r,t,n,iV)}function d3(e,r,t,n){UM(e,r,t,n,oV)}function UM(e,r,t,n,a){for(var i=n.tozero,o=n.extrapad,l=!0,s=0;s=t&&(u.extrapad||!o)){l=!1;break}else a(r,u.val)&&u.pad<=t&&(o||!u.extrapad)&&(e.splice(s,1),s--)}if(l){var f=i&&r===0;e.push({val:r,pad:f?0:t,extrapad:f?!1:o})}}function HM(e){return BM(e)&&Math.abs(e)=r}function lV(e,r){var t=r.autorangeoptions;return t&&t.minallowed!==void 0&&wp(r,t.minallowed,t.maxallowed)?t.minallowed:t&&t.clipmin!==void 0&&wp(r,t.clipmin,t.clipmax)?Math.max(e,r.d2l(t.clipmin)):e}function sV(e,r){var t=r.autorangeoptions;return t&&t.maxallowed!==void 0&&wp(r,t.minallowed,t.maxallowed)?t.maxallowed:t&&t.clipmax!==void 0&&wp(r,t.clipmin,t.clipmax)?Math.min(e,r.d2l(t.clipmax)):e}function wp(e,r,t){return r!==void 0&&t!==void 0?(r=e.d2l(r),t=e.d2l(t),r=s&&(i=s,t=s),o<=s&&(o=s,n=s)}}return t=lV(t,r),n=sV(n,r),[t,n]}});var Dn=te((Yue,hA)=>{"use strict";var Ao=kt(),ta=Ht(),X0=ca(),L1=dt(),ut=pr(),j0=ut.strTranslate,pc=vi(),uV=k1(),q1=Et(),$i=fn(),fV=ml(),VM=P2(),Ra=Rn(),cV=Ra.ONEMAXYEAR,Tp=Ra.ONEAVGYEAR,kp=Ra.ONEMINYEAR,vV=Ra.ONEMAXQUARTER,b3=Ra.ONEAVGQUARTER,Sp=Ra.ONEMINQUARTER,hV=Ra.ONEMAXMONTH,J0=Ra.ONEAVGMONTH,Cp=Ra.ONEMINMONTH,Ki=Ra.ONEWEEK,ei=Ra.ONEDAY,Ju=ei/2,is=Ra.ONEHOUR,D1=Ra.ONEMIN,Lp=Ra.ONESEC,dV=Ra.ONEMILLI,pV=Ra.ONEMICROSEC,gc=Ra.MINUS_SIGN,Dp=Ra.BADNUM,_3={K:"zeroline"},x3={K:"gridline",L:"path"},w3={K:"minor-gridline",L:"path"},tA={K:"tick",L:"path"},WM={K:"tick",L:"text"},ZM={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},Ep=Ka(),C1=Ep.MID_SHIFT,mc=Ep.CAP_SHIFT,E1=Ep.LINE_SPACING,gV=Ep.OPPOSITE_SIDE,qp=3,xr=hA.exports={};xr.setConvert=bp();var mV=f3(),Ks=fa(),yV=Ks.idSort,bV=Ks.isLinked;xr.id2name=Ks.id2name;xr.name2id=Ks.name2id;xr.cleanId=Ks.cleanId;xr.list=Ks.list;xr.listIds=Ks.listIds;xr.getFromId=Ks.getFromId;xr.getFromTrace=Ks.getFromTrace;var nA=ju();xr.getAutoRange=nA.getAutoRange;xr.findExtremes=nA.findExtremes;var _V=1e-4;function k3(e){var r=(e[1]-e[0])*_V;return[e[0]-r,e[1]+r]}xr.coerceRef=function(e,r,t,n,a,i){var o=n.charAt(n.length-1),l=t._fullLayout._subplots[o+"axis"],s=n+"ref",u={};return a||(a=l[0]||(typeof i=="string"?i:i[0])),i||(i=a),l=l.concat(l.map(function(f){return f+" domain"})),u[s]={valType:"enumerated",values:l.concat(i?typeof i=="string"?[i]:i:[]),dflt:a},ut.coerce(e,r,u,s)};xr.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};xr.coercePosition=function(e,r,t,n,a,i){var o,l,s=xr.getRefType(n);if(s!=="range")o=ut.ensureNumber,l=t(a,i);else{var u=xr.getFromId(r,n);i=u.fraction2r(i),l=t(a,i),o=u.cleanPos}e[a]=o(l)};xr.cleanPosition=function(e,r,t){var n=t==="paper"||t==="pixel"?ut.ensureNumber:xr.getFromId(r,t).cleanPos;return n(e)};xr.redrawComponents=function(e,r){r=r||xr.listIds(e);var t=e._fullLayout;function n(a,i,o,l){for(var s=L1.getComponentMethod(a,i),u={},f=0;f2e-6||((t-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};xr.saveRangeInitial=function(e,r){for(var t=xr.list(e,"",!0),n=!1,a=0;av*.3||u(n)||u(a))){var h=t.dtick/2;e+=e+ho){var l=Number(t.slice(1));i.exactYears>o&&l%12===0?e=xr.tickIncrement(e,"M6","reverse")+ei*1.5:i.exactMonths>o?e=xr.tickIncrement(e,"M1","reverse")+ei*15.5:e-=Ju;var s=xr.tickIncrement(e,t);if(s<=n)return s}return e}xr.prepMinorTicks=function(e,r,t){if(!r.minor.dtick){delete e.dtick;var n=r.dtick&&ta(r._tmin),a;if(n){var i=xr.tickIncrement(r._tmin,r.dtick,!0);a=[r._tmin,i*.99+r._tmin*.01]}else{var o=ut.simpleMap(r.range,r.r2l);a=[o[0],.8*o[0]+.2*o[1]]}if(e.range=ut.simpleMap(a,r.l2r),e._isMinor=!0,xr.prepTicks(e,t),n){var l=ta(r.dtick),s=ta(e.dtick),u=l?r.dtick:+r.dtick.substring(1),f=s?e.dtick:+e.dtick.substring(1);l&&s?g3(u,f)?u===2*Ki&&f===2*ei&&(e.dtick=Ki):u===2*Ki&&f===3*ei?e.dtick=Ki:u===Ki&&!(r._input.minor||{}).nticks?e.dtick=ei:JM(u/f,2.5)?e.dtick=u/2:e.dtick=u:String(r.dtick).charAt(0)==="M"?s?e.dtick="M1":g3(u,f)?u>=12&&f===2&&(e.dtick="M3"):e.dtick=r.dtick:String(e.dtick).charAt(0)==="L"?String(r.dtick).charAt(0)==="L"?g3(u,f)||(e.dtick=JM(u/f,2.5)?r.dtick/2:r.dtick):e.dtick="D1":e.dtick==="D2"&&+r.dtick>1&&(e.dtick=1)}e.range=r.range}r.minor._tick0Init===void 0&&(e.tick0=r.tick0)};function g3(e,r){return Math.abs((e/r+.5)%1-.5)<.001}function JM(e,r){return Math.abs(e/r-1)<.001}xr.prepTicks=function(e,r){var t=ut.simpleMap(e.range,e.r2l,void 0,void 0,r);if(e.tickmode==="auto"||!e.dtick){var n=e.nticks,a;n||(e.type==="category"||e.type==="multicategory"?(a=e.tickfont?ut.bigFont(e.tickfont.size||12):15,n=e._length/a):(a=e._id.charAt(0)==="y"?40:80,n=ut.constrain(e._length/a,4,9)+1),e._name==="radialaxis"&&(n*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(n*=100),e._roughDTick=Math.abs(t[1]-t[0])/n,xr.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(i=n-1,o=n):(i=n,o=n);var l=e[i].value,s=e[o].value,u=Math.abs(s-l),f=t||u,v=0;f>=kp?u>=kp&&u<=cV?v=u:v=Tp:t===b3&&f>=Sp?u>=Sp&&u<=vV?v=u:v=b3:f>=Cp?u>=Cp&&u<=hV?v=u:v=J0:t===Ki&&f>=Ki?v=Ki:f>=ei?v=ei:t===Ju&&f>=Ju?v=Ju:t===is&&f>=is&&(v=is);var h;v>=u&&(v=u,h=!0);var d=a+v;if(r.rangebreaks&&v>0){for(var m=84,p=0,y=0;yKi&&(v=u)}(v>0||n===0)&&(e[n].periodX=a+v/2)}}xr.calcTicks=function(r,t){for(var n=r.type,a=r.calendar,i=r.ticklabelstep,o=r.ticklabelmode==="period",l=r.range[0]>r.range[1],s=!r.ticklabelindex||ut.isArrayOrTypedArray(r.ticklabelindex)?r.ticklabelindex:[r.ticklabelindex],u=ut.simpleMap(r.range,r.r2l,void 0,void 0,t),f=u[1]=(x?0:1);_--){var A=!_;_?(r._dtickInit=r.dtick,r._tick0Init=r.tick0):(r.minor._dtickInit=r.minor.dtick,r.minor._tick0Init=r.minor.tick0);var k=_?r:ut.extendFlat({},r,r.minor);if(A?xr.prepMinorTicks(k,r,t):xr.prepTicks(k,t),k.tickmode==="array"){_?(y=[],m=$M(r,!A)):(b=[],p=$M(r,!A));continue}if(k.tickmode==="sync"){y=[],m=kV(r);continue}var M=k3(u),E=M[0],R=M[1],F=ta(k.dtick),I=n==="log"&&!(F||k.dtick.charAt(0)==="L"),W=xr.tickFirst(k,t);if(_){if(r._tmin=W,W=R:Z<=R;Z=xr.tickIncrement(Z,ie,f,a)){if(_&&V++,k.rangebreaks&&!f){if(Z=h)break}if(y.length>d||Z===O)break;O=Z;var Q={value:Z};_?(I&&Z!==(Z|0)&&(Q.simpleLabel=!0),i>1&&V%i&&(Q.skipLabel=!0),y.push(Q)):(Q.minor=!0,b.push(Q))}}if(!b||b.length<2)s=!1;else{var ee=(b[1].value-b[0].value)*(l?-1:1);$V(ee,r.tickformat)||(s=!1)}if(!s)C=y;else{var se=y.concat(b);o&&y.length&&(se=se.slice(1)),se=se.sort(function(nr,lr){return nr.value-lr.value}).filter(function(nr,lr,vr){return lr===0||nr.value!==vr[lr-1].value});var ve=se.map(function(nr,lr){return nr.minor===void 0&&!nr.skipLabel?lr:null}).filter(function(nr){return nr!==null});ve.forEach(function(nr){s.map(function(lr){var vr=nr+lr;vr>=0&&vr-1;Me--){if(y[Me].drop){y.splice(Me,1);continue}y[Me].value=y3(y[Me].value,r);var $=r.c2p(y[Me].value);(pe?K>$-U:K<$+U)?y.splice(f?Me+1:Me,1):K=$}}q3(r)&&Math.abs(u[1]-u[0])===360&&y.pop(),r._tmax=(y[y.length-1]||{}).value,r._prevDateHead="",r._inCalcTicks=!0;var ke,Be=function(nr){nr.text="",r._prevDateHead=ke};y=y.concat(b);function Ne(nr,lr){var vr=xr.tickText(nr,lr.value,!1,lr.simpleLabel),Je=lr.periodX;return Je!==void 0&&(vr.periodX=Je,(Je>h||Jeh&&(vr.periodX=h),Jea&&hTp)r/=Tp,n=a(10),e.dtick="M"+12*as(r,n,Mp);else if(i>J0)r/=J0,e.dtick="M"+as(r,1,KM);else if(i>ei){if(e.dtick=as(r,ei,e._hasDayOfWeekBreaks?[1,2,7,14]:SV),!t){var o=xr.getTickFormat(e),l=e.ticklabelmode==="period";l&&(e._rawTick0=e.tick0),/%[uVW]/.test(o)?e.tick0=ut.dateTick0(e.calendar,2):e.tick0=ut.dateTick0(e.calendar,1),l&&(e._dowTick0=e.tick0)}}else i>is?e.dtick=as(r,is,KM):i>D1?e.dtick=as(r,D1,QM):i>Lp?e.dtick=as(r,Lp,QM):(n=a(10),e.dtick=as(r,n,Mp))}else if(e.type==="log"){e.tick0=0;var s=ut.simpleMap(e.range,e.r2l);if(e._isMinor&&(r*=1.5),r>.7)e.dtick=Math.ceil(r);else if(Math.abs(s[1]-s[0])<1){var u=1.5*Math.abs((s[1]-s[0])/r);r=Math.abs(Math.pow(10,s[1])-Math.pow(10,s[0]))/u,n=a(10),e.dtick="L"+as(r,n,Mp)}else e.dtick=r>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(r,1))):q3(e)?(e.tick0=0,n=1,e.dtick=as(r,n,CV)):(e.tick0=0,n=a(10),e.dtick=as(r,n,Mp));if(e.dtick===0&&(e.dtick=1),!ta(e.dtick)&&typeof e.dtick!="string"){var f=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(f)}};function lA(e){var r=e.dtick;if(e._tickexponent=0,!ta(r)&&typeof r!="string"&&(r=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var t=e.r2l(e.tick0),n=e.l2r(t).replace(/(^-|i)/g,""),a=n.length;if(String(r).charAt(0)==="M")a>10||n.slice(5)!=="01-01"?e._tickround="d":e._tickround=+r.slice(1)%12===0?"y":"m";else if(r>=ei&&a<=10||r>=ei*15)e._tickround="d";else if(r>=D1&&a<=16||r>=is)e._tickround="M";else if(r>=Lp&&a<=19||r>=D1)e._tickround="S";else{var i=e.l2r(t+r).replace(/^-/,"").length;e._tickround=Math.max(a,i)-20,e._tickround<0&&(e._tickround=4)}}else if(ta(r)||r.charAt(0)==="L"){var o=e.range.map(e.r2d||Number);ta(r)||(r=Number(r.slice(1))),e._tickround=2-Math.floor(Math.log(r)/Math.LN10+.01);var l=Math.max(Math.abs(o[0]),Math.abs(o[1])),s=Math.floor(Math.log(l)/Math.LN10+.01),u=e.minexponent===void 0?3:e.minexponent;Math.abs(s)>u&&($0(e.exponentformat)&&e.exponentformat!=="SI extended"&&!S3(s)||$0(e.exponentformat)&&e.exponentformat==="SI extended"&&!C3(s)?e._tickexponent=3*Math.round((s-1)/3):e._tickexponent=s)}else e._tickround=null}xr.tickIncrement=function(e,r,t,n){var a=t?-1:1;if(ta(r))return ut.increment(e,a*r);var i=r.charAt(0),o=a*Number(r.slice(1));if(i==="M")return ut.incrementMonth(e,o,n);if(i==="L")return Math.log(Math.pow(10,e)+o)/Math.LN10;if(i==="D"){var l=r==="D2"?oA:iA,s=e+a*.01,u=ut.roundUp(ut.mod(s,1),l,t);return Math.floor(s)+Math.log(Ao.round(Math.pow(10,u),1))/Math.LN10}throw"unrecognized dtick "+String(r)};xr.tickFirst=function(e,r){var t=e.r2l||Number,n=ut.simpleMap(e.range,t,void 0,void 0,r),a=n[1]=0&&b<=e._length?y:null};if(i&&ut.isArrayOrTypedArray(e.ticktext)){var v=ut.simpleMap(e.range,e.r2l),h=(Math.abs(v[1]-v[0])-(e._lBreaks||0))/1e4;for(u=0;u"+l;else{var u=R1(e),f=e._trueSide||e.side;(!u&&f==="top"||u&&f==="bottom")&&(o+="
")}r.text=o}function qV(e,r,t,n,a){var i=e.dtick,o=r.x,l=e.tickformat,s=typeof i=="string"&&i.charAt(0);if(a==="never"&&(a=""),n&&s!=="L"&&(i="L3",s="L"),l||s==="L")r.text=P1(Math.pow(10,o),e,a,n);else if(ta(i)||s==="D"&&(e.minorloglabels==="complete"||ut.mod(o+.01,1)<.1)){var u;e.minorloglabels==="complete"&&!(ut.mod(o+.01,1)<.1)&&(u=!0,r.fontSize*=.75);var f=Math.pow(10,o).toExponential(0),v=f.split("e"),h=+v[1],d=Math.abs(h),m=e.exponentformat;m==="power"||$0(m)&&m!=="SI extended"&&S3(h)||$0(m)&&m==="SI extended"&&C3(h)?(r.text=v[0],d>0&&(r.text+="x10"),r.text==="1x10"&&(r.text="10"),h!==0&&h!==1&&(r.text+=""+(h>0?"":gc)+d+""),r.fontSize*=1.25):(m==="e"||m==="E")&&d>2?r.text=v[0]+m+(h>0?"+":gc)+d:(r.text=P1(Math.pow(10,o),e,"","fakehover"),i==="D1"&&e._id.charAt(0)==="y"&&(r.dy-=r.fontSize/6))}else if(s==="D")r.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,ut.mod(o,1)))),r.fontSize*=.75;else throw"unrecognized dtick "+String(i);if(e.dtick==="D1"){var p=String(r.text).charAt(0);(p==="0"||p==="1")&&(e._id.charAt(0)==="y"?r.dx-=r.fontSize/4:(r.dy+=r.fontSize/2,r.dx+=(e.range[1]>e.range[0]?1:-1)*r.fontSize*(o<0?.5:.25)))}}function DV(e,r){var t=e._categories[Math.round(r.x)];t===void 0&&(t=""),r.text=String(t)}function EV(e,r,t){var n=Math.round(r.x),a=e._categories[n]||[],i=a[1]===void 0?"":String(a[1]),o=a[0]===void 0?"":String(a[0]);t?r.text=o+" - "+i:(r.text=i,r.text2=o)}function PV(e,r,t,n,a){a==="never"?a="":e.showexponent==="all"&&Math.abs(r.x/e.dtick)<1e-6&&(a="hide"),r.text=P1(r.x,e,a,n)}function RV(e,r,t,n,a){if(e.thetaunit==="radians"&&!t){var i=r.x/180;if(i===0)r.text="0";else{var o=zV(i);if(o[1]>=100)r.text=P1(ut.deg2rad(r.x),e,a,n);else{var l=r.x<0;o[1]===1?o[0]===1?r.text="\u03C0":r.text=o[0]+"\u03C0":r.text=["",o[0],"","\u2044","",o[1],"","\u03C0"].join(""),l&&(r.text=gc+r.text)}}}else r.text=P1(r.x,e,a,n)}function zV(e){function r(l,s){return Math.abs(l-s)<=1e-6}function t(l,s){return r(s,0)?l:t(s,l%s)}function n(l){for(var s=1;!r(Math.round(l*s)/s,l);)s*=10;return s}var a=n(e),i=e*a,o=Math.abs(t(i,a));return[Math.round(i/o),Math.round(a/o)]}var uA=["f","p","n","\u03BC","m","","k","M","G","T"],NV=["q","r","y","z","a",...uA,"P","E","Z","Y","R","Q"],$0=e=>["SI","SI extended","B"].includes(e);function S3(e){return e>14||e<-15}function C3(e){return e>32||e<-30}function FV(e,r){return $0(r)?!!(r==="SI extended"&&C3(e)||r!=="SI extended"&&S3(e)):!1}function P1(e,r,t,n){var a=e<0,i=r._tickround,o=t||r.exponentformat||"B",l=r._tickexponent,s=xr.getTickFormat(r),u=r.separatethousands;if(n){var f={exponentformat:o,minexponent:r.minexponent,dtick:r.showexponent==="none"?r.dtick:ta(e)&&Math.abs(e)||1,range:r.showexponent==="none"?r.range.map(r.r2d):[0,e||1]};lA(f),i=(Number(f._tickround)||0)+4,l=f._tickexponent,r.hoverformat&&(s=r.hoverformat)}if(s)return r._numFormat(s)(e).replace(/-/g,gc);var v=Math.pow(10,-i)/2;if(o==="none"&&(l=0),e=Math.abs(e),e"+m+"":o==="B"&&l===9?e+="B":$0(o)&&(e+=o==="SI extended"?NV[l/3+10]:uA[l/3+5])}return a?gc+e:e}xr.getTickFormat=function(e){var r;function t(s){return typeof s!="string"?s:Number(s.replace("M",""))*J0}function n(s,u){var f=["L","D"];if(typeof s==typeof u){if(typeof s=="number")return s-u;var v=f.indexOf(s.charAt(0)),h=f.indexOf(u.charAt(0));return v===h?Number(s.replace(/(L|D)/g,""))-Number(u.replace(/(L|D)/g,"")):v-h}else return typeof s=="number"?1:-1}function a(s,u,f){var v=f||function(m){return m},h=u[0],d=u[1];return(!h&&typeof h!="number"||v(h)<=v(s))&&(!d&&typeof d!="number"||v(d)>=v(s))}function i(s,u){var f=u[0]===null,v=u[1]===null,h=n(s,u[0])>=0,d=n(s,u[1])<=0;return(f||h)&&(v||d)}var o,l;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(r=0;r=0&&a.unshift(a.splice(f,1).shift())}});var l={false:{left:0,right:0}};return ut.syncOrAsync(a.map(function(s){return function(){if(s){var u=xr.getFromId(e,s);t||(t={}),t.axShifts=l,t.overlayingShiftedAx=o;var f=xr.drawOne(e,u,t);return u._shiftPusher&&T3(u,u._fullDepth||0,l,!0),u._r=u.range.slice(),u._rl=ut.simpleMap(u._r,u.r2l),f}}}))};xr.drawOne=function(e,r,t){t=t||{};var n=t.axShifts||{},a=t.overlayingShiftedAx||[],i,o,l;r.setScale();var s=e._fullLayout,u=r._id,f=u.charAt(0),v=xr.counterLetter(u),h=s._plots[r._mainSubplot],d=r.zerolinelayer==="above traces";if(!h)return;if(r._shiftPusher=r.autoshift||a.indexOf(r._id)!==-1||a.indexOf(r.overlaying)!==-1,r._shiftPusher&r.anchor==="free"){var m=r.linewidth/2||0;r.ticks==="inside"&&(m+=r.ticklen),T3(r,m,n,!0),T3(r,r.shift||0,n,!1)}(t.skipTitle!==!0||r._shift===void 0)&&(r._shift=JV(r,n));var p=h[f+"axislayer"],y=r._mainLinePosition,b=y+=r._shift,C=r._mainMirrorPosition,x=r._vals=xr.calcTicks(r),_=[r.mirror,b,C].join("_");for(i=0;i0?Je.bottom-lr:0,vr))));var Oe=0,kr=0;if(r._shiftPusher&&(Oe=Math.max(vr,Je.height>0?Ye==="l"?lr-Je.left:Je.right-lr:0),r.title.text!==s._dfltTitle[f]&&(kr=(r._titleStandoff||0)+(r._titleScoot||0),Ye==="l"&&(kr+=rA(r))),r._fullDepth=Math.max(Oe,kr)),r.automargin){dr={x:0,y:0,r:0,l:0,t:0,b:0};var Ur=[0,1],tr=typeof r._shift=="number"?r._shift:0;if(f==="x"){if(Ye==="b"?dr[Ye]=r._depth:(dr[Ye]=r._depth=Math.max(Je.width>0?lr-Je.top:0,vr),Ur.reverse()),Je.width>0){var Ue=Je.right-(r._offset+r._length);Ue>0&&(dr.xr=1,dr.r=Ue);var Ze=r._offset-Je.left;Ze>0&&(dr.xl=0,dr.l=Ze)}}else if(Ye==="l"?(r._depth=Math.max(Je.height>0?lr-Je.left:0,vr),dr[Ye]=r._depth-tr):(r._depth=Math.max(Je.height>0?Je.right-lr:0,vr),dr[Ye]=r._depth+tr,Ur.reverse()),Je.height>0){var mr=Je.bottom-(r._offset+r._length);mr>0&&(dr.yb=0,dr.b=mr);var Tr=r._offset-Je.top;Tr>0&&(dr.yt=1,dr.t=Tr)}dr[v]=r.anchor==="free"?r.position:r._anchorAxis.domain[Ur[0]],r.title.text!==s._dfltTitle[f]&&(dr[Ye]+=rA(r)+(r.title.standoff||0)),r.mirror&&r.anchor!=="free"&&(gr={x:0,y:0,r:0,l:0,t:0,b:0},gr[nr]=r.linewidth,r.mirror&&r.mirror!==!0&&(gr[nr]+=vr),r.mirror===!0||r.mirror==="ticks"?gr[v]=r._anchorAxis.domain[Ur[1]]:(r.mirror==="all"||r.mirror==="allticks")&&(gr[v]=[r._counterDomainMin,r._counterDomainMax][Ur[1]]))}or&&(Te=L1.getComponentMethod("rangeslider","autoMarginOpts")(e,r)),typeof r.automargin=="string"&&(eA(dr,r.automargin),eA(gr,r.automargin)),X0.autoMargin(e,L3(r),dr),X0.autoMargin(e,cA(r),gr),X0.autoMargin(e,vA(r),Te)}),ut.syncOrAsync(Ne)}};function eA(e,r){if(e){var t=Object.keys(ZM).reduce(function(n,a){return r.indexOf(a)!==-1&&ZM[a].forEach(function(i){n[i]=1}),n},{});Object.keys(e).forEach(function(n){t[n]||(n.length===1?e[n]=0:delete e[n])})}}function IV(e,r){var t=[],n,a=function(i,o){var l=i.xbnd[o];l!==null&&t.push(ut.extendFlat({},i,{x:l}))};if(r.length){for(n=0;ne.range[1],l=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,s=!l;if(t){var u=o?-1:1;t=t*u}if(n){var f=e.side,v=l&&(f==="top"||f==="left")||s&&(f==="bottom"||f==="right")?1:-1;n=n*v}return e._id.charAt(0)==="x"?function(h){return j0(a+e._offset+e.l2p(M3(h))+t,i+n)}:function(h){return j0(i+n,a+e._offset+e.l2p(M3(h))+t)}};function M3(e){return e.periodX!==void 0?e.periodX:e.x}function UV(e){var r=e.ticklabelposition||"",t=e.tickson||"",n=function(m){return r.indexOf(m)!==-1},a=n("top"),i=n("left"),o=n("right"),l=n("bottom"),s=n("inside"),u=t!=="boundaries"&&(l||i||a||o);if(!u&&!s)return[0,0];var f=e.side,v=u?(e.tickwidth||0)/2:0,h=qp,d=e.tickfont?e.tickfont.size:12;return(l||a)&&(v+=d*mc,h+=(e.linewidth||0)/2),(i||o)&&(v+=(e.linewidth||0)/2,h+=qp),s&&f==="top"&&(h-=d*(1-mc)),(i||a)&&(v=-v),(f==="bottom"||f==="right")&&(h=-h),[u?v:0,s?h:0]}xr.makeTickPath=function(e,r,t,n){n||(n={});var a=n.minor;if(a&&!e.minor)return"";var i=n.len!==void 0?n.len:a?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),l=(e.linewidth||1)/2;return o==="x"?"M0,"+(r+l*t)+"v"+i*t:"M"+(r+l*t)+",0h"+i*t};xr.makeLabelFns=function(e,r,t){var n=e.ticklabelposition||"",a=e.tickson||"",i=function(O){return n.indexOf(O)!==-1},o=i("top"),l=i("left"),s=i("right"),u=i("bottom"),f=a!=="boundaries"&&(u||l||o||s),v=i("inside"),h=n==="inside"&&e.ticks==="inside"||!v&&e.ticks==="outside"&&a!=="boundaries",d=0,m=0,p=h?e.ticklen:0;if(v?p*=-1:f&&(p=0),h&&(d+=p,t)){var y=ut.deg2rad(t);d=p*Math.cos(y)+1,m=p*Math.sin(y)}e.showticklabels&&(h||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(v?-1:1);var b={labelStandoff:d,labelShift:m},C,x,_,A,k=0,M=e.side,E=e._id.charAt(0),R=e.tickangle,F;if(E==="x")F=!v&&M==="bottom"||v&&M==="top",A=F?1:-1,v&&(A*=-1),C=m*A,x=r+d*A,_=F?1:-.2,Math.abs(R)===90&&(v?_+=C1:R===-90&&M==="bottom"?_=mc:R===90&&M==="top"?_=C1:_=.5,k=C1/2*(R/90)),b.xFn=function(O){return O.dx+C+k*O.fontSize},b.yFn=function(O){return O.dy+x+O.fontSize*_},b.anchorFn=function(O,Z){if(f){if(l)return"end";if(s)return"start"}return!ta(Z)||Z===0||Z===180?"middle":Z*A<0!==v?"end":"start"},b.heightFn=function(O,Z,V){return Z<-60||Z>60?-.5*V:e.side==="top"!==v?-V:0};else if(E==="y"){if(F=!v&&M==="left"||v&&M==="right",A=F?1:-1,v&&(A*=-1),C=d,x=m*A,_=0,!v&&Math.abs(R)===90&&(R===-90&&M==="left"||R===90&&M==="right"?_=mc:_=.5),v){var I=ta(R)?+R:0;if(I!==0){var W=ut.deg2rad(I);k=Math.abs(Math.sin(W))*mc*A,_=0}}b.xFn=function(O){return O.dx+r-(C+O.fontSize*_)*A+k*O.fontSize},b.yFn=function(O){return O.dy+x+O.fontSize*C1},b.anchorFn=function(O,Z){return ta(Z)&&Math.abs(Z)===90?"middle":F?"end":"start"},b.heightFn=function(O,Z,V){return e.side==="right"&&(Z*=-1),Z<-30?-V:Z<30?-.5*V:0}}return b};function Pp(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}xr.drawTicks=function(e,r,t){t=t||{};var n=r._id+"tick",a=[].concat(r.minor&&r.minor.ticks?t.vals.filter(function(o){return o.minor&&!o.noTick}):[]).concat(r.ticks?t.vals.filter(function(o){return!o.minor&&!o.noTick}):[]),i=t.layer.selectAll("path."+n).data(a,Pp);i.exit().remove(),i.enter().append("path").classed(n,1).classed("ticks",1).classed("crisp",t.crisp!==!1).each(function(o){return q1.stroke(Ao.select(this),o.minor?r.minor.tickcolor:r.tickcolor)}).style("stroke-width",function(o){return $i.crispRound(e,o.minor?r.minor.tickwidth:r.tickwidth,1)+"px"}).attr("d",t.path).style("display",null),Rp(r,[tA]),i.attr("transform",t.transFn)};xr.drawGrid=function(e,r,t){if(t=t||{},r.tickmode!=="sync"){var n=r._id+"grid",a=r.minor&&r.minor.showgrid,i=a?t.vals.filter(function(b){return b.minor}):[],o=r.showgrid?t.vals.filter(function(b){return!b.minor}):[],l=t.counterAxis;if(l&&xr.shouldShowZeroLine(e,r,l))for(var s=r.tickmode==="array",u=0;u=0;m--){var p=m?h:d;if(p){var y=p.selectAll("path."+n).data(m?o:i,Pp);y.exit().remove(),y.enter().append("path").classed(n,1).classed("crisp",t.crisp!==!1),y.attr("transform",t.transFn).attr("d",t.path).each(function(b){return q1.stroke(Ao.select(this),b.minor?r.minor.gridcolor:r.gridcolor||"#ddd")}).style("stroke-dasharray",function(b){return $i.dashStyle(b.minor?r.minor.griddash:r.griddash,b.minor?r.minor.gridwidth:r.gridwidth)}).style("stroke-width",function(b){return(b.minor?v:r._gw)+"px"}).style("display",null),typeof t.path=="function"&&y.attr("d",t.path)}}Rp(r,[x3,w3])}};xr.drawZeroLine=function(e,r,t){t=t||t;var n=r._id+"zl",a=xr.shouldShowZeroLine(e,r,t.counterAxis),i=t.layer.selectAll("path."+n).data(a?[{x:0,id:r._id}]:[]);i.exit().remove(),i.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",t.crisp!==!1).each(function(){t.layer.selectAll("path").sort(function(o,l){return yV(o.id,l.id)})}),i.attr("transform",t.transFn).attr("d",t.path).call(q1.stroke,r.zerolinecolor||q1.defaultLine).style("stroke-width",$i.crispRound(e,r.zerolinewidth,r._gw||1)+"px").style("display",null),Rp(r,[_3])};xr.drawLabels=function(e,r,t){t=t||{};var n=e._fullLayout,a=r._id,i=r.zerolinelayer==="above traces",o=t.cls||a+"tick",l=t.vals.filter(function(ee){return ee.text}),s=t.labelFns,u=t.secondary?0:r.tickangle,f=(r._prevTickAngles||{})[o],v=t.layer.selectAll("g."+o).data(r.showticklabels?l:[],Pp),h=[];v.enter().append("g").classed(o,1).append("text").attr("text-anchor","middle").each(function(ee){var se=Ao.select(this),ve=e._promises.length;se.call(pc.positionText,s.xFn(ee),s.yFn(ee)).call($i.font,{family:ee.font,size:ee.fontSize,color:ee.fontColor,weight:ee.fontWeight,style:ee.fontStyle,variant:ee.fontVariant,textcase:ee.fontTextcase,lineposition:ee.fontLineposition,shadow:ee.fontShadow}).text(ee.text).call(pc.convertToTspans,e),e._promises[ve]?h.push(e._promises.pop().then(function(){d(se,u)})):d(se,u)}),Rp(r,[WM]),v.exit().remove(),t.repositionOnUpdate&&v.each(function(ee){Ao.select(this).select("text").call(pc.positionText,s.xFn(ee),s.yFn(ee))});function d(ee,se){ee.each(function(ve){var Ce=Ao.select(this),Ie=Ce.select(".text-math-group"),ze=s.anchorFn(ve,se),Xe=t.transFn.call(Ce.node(),ve)+(ta(se)&&+se!=0?" rotate("+se+","+s.xFn(ve)+","+(s.yFn(ve)-ve.fontSize/2)+")":""),Le=pc.lineCount(Ce),Qe=E1*ve.fontSize,fe=s.heightFn(ve,ta(se)?+se:0,(Le-1)*Qe);if(fe&&(Xe+=j0(0,fe)),Ie.empty()){var ye=Ce.select("text");ye.attr({transform:Xe,"text-anchor":ze}),ye.style("display",null),r._adjustTickLabelsOverflow&&r._adjustTickLabelsOverflow()}else{var Me=$i.bBox(Ie.node()).width,pe=Me*{end:-.5,start:.5}[ze];Ie.attr("transform",Xe+j0(pe,0))}})}r._adjustTickLabelsOverflow=function(){var ee=r.ticklabeloverflow;if(!(!ee||ee==="allow")){var se=ee.indexOf("hide")!==-1,ve=r._id.charAt(0)==="x",Ce=0,Ie=ve?e._fullLayout.width:e._fullLayout.height;if(ee.indexOf("domain")!==-1){var ze=ut.simpleMap(r.range,r.r2l);Ce=r.l2p(ze[0])+r._offset,Ie=r.l2p(ze[1])+r._offset}var Xe=Math.min(Ce,Ie),Le=Math.max(Ce,Ie),Qe=r.side,fe=1/0,ye=-1/0;v.each(function(K){var $=Ao.select(this),ke=$.select(".text-math-group");if(ke.empty()){var Be=$i.bBox($.node()),Ne=0;ve?(Be.right>Le||Be.leftLe||Be.top+(r.tickangle?0:K.fontSize/4)r["_visibleLabelMin_"+ze._id]?$.style("display","none"):Le.K==="tick"&&!Xe&&$.node().style.display!=="none"&&$.style("display",null)})})})})},d(v,f+1?f:u);function m(){return h.length&&Promise.all(h)}var p=null;function y(){if(d(v,u),l.length&&r.autotickangles&&(r.type!=="log"||String(r.dtick).charAt(0)!=="D")){p=r.autotickangles[0];var ee=0,se=[],ve,Ce=1;v.each(function(dr){ee=Math.max(ee,dr.fontSize);var gr=r.l2p(dr.x),Te=A3(this),Oe=$i.bBox(Te.node());Ce=Math.max(Ce,pc.lineCount(Te)),se.push({top:0,bottom:10,height:10,left:gr-Oe.width/2,right:gr+Oe.width/2+2,width:Oe.width+2})});var Ie=(r.tickson==="boundaries"||r.showdividers)&&!t.secondary,ze=l.length,Xe=Math.abs((l[ze-1].x-l[0].x)*r._m)/(ze-1),Le=Ie?Xe/2:Xe,Qe=Ie?r.ticklen:ee*1.25*Ce,fe=Math.sqrt(Math.pow(Le,2)+Math.pow(Qe,2)),ye=Le/fe,Me=r.autotickangles.map(function(dr){return dr*Math.PI/180}),pe=Me.find(function(dr){return Math.abs(Math.cos(dr))<=ye});pe===void 0&&(pe=Me.reduce(function(dr,gr){return Math.abs(Math.cos(dr))re*V&&(W=V,R[E]=F[E]=O[E])}var ie=Math.abs(W-I);ie-A>0?(ie-=A,A*=1+A/ie):A=0,r._id.charAt(0)!=="y"&&(A=-A),R[M]=x.p2r(x.r2p(F[M])+k*A),x.autorange==="min"||x.autorange==="max reversed"?(R[0]=null,x._rangeInitial0=void 0,x._rangeInitial1=void 0):(x.autorange==="max"||x.autorange==="min reversed")&&(R[1]=null,x._rangeInitial0=void 0,x._rangeInitial1=void 0),n._insideTickLabelsUpdaterange[x._name+".range"]=R}var Q=ut.syncOrAsync(b);return Q&&Q.then&&e._promises.push(Q),Q};function YV(e,r,t){var n=r._id+"divider",a=t.vals,i=t.layer.selectAll("path."+n).data(a,Pp);i.exit().remove(),i.enter().insert("path",":first-child").classed(n,1).classed("crisp",1).call(q1.stroke,r.dividercolor).style("stroke-width",$i.crispRound(e,r.dividerwidth,1)+"px"),i.attr("transform",t.transFn).attr("d",t.path)}xr.getPxPosition=function(e,r){var t=e._fullLayout._size,n=r._id.charAt(0),a=r.side,i;if(r.anchor!=="free"?i=r._anchorAxis:n==="x"?i={_offset:t.t+(1-(r.position||0))*t.h,_length:0}:n==="y"&&(i={_offset:t.l+(r.position||0)*t.w+r._shift,_length:0}),a==="top"||a==="left")return i._offset;if(a==="bottom"||a==="right")return i._offset+i._length};function rA(e){var r=e.title.font.size,t=(e.title.text.match(pc.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?r*(mc+t*E1):t?r*(t+1)*E1:r}function GV(e,r){var t=e._fullLayout,n=r._id,a=n.charAt(0),i=r.title.font.size,o,l=(r.title.text.match(pc.BR_TAG_ALL)||[]).length;if(r.title.hasOwnProperty("standoff"))r.side==="bottom"||r.side==="right"?o=r._depth+r.title.standoff+i*mc:(r.side==="top"||r.side==="left")&&(o=r._depth+r.title.standoff+i*(C1+l*E1));else{var s=R1(r);if(r.type==="multicategory")o=r._depth;else{var u=1.5*i;s&&(u=.5*i,r.ticks==="outside"&&(u+=r.ticklen)),o=10+u+(r.linewidth?r.linewidth-1:0)}s||(a==="x"?o+=r.side==="top"?i*(r.showticklabels?1:0):i*(r.showticklabels?1.5:.5):o+=r.side==="right"?i*(r.showticklabels?1:.5):i*(r.showticklabels?.5:0))}var f=xr.getPxPosition(e,r),v,h,d;a==="x"?(h=r._offset+r._length/2,d=r.side==="top"?f-o:f+o):(d=r._offset+r._length/2,h=r.side==="right"?f+o:f-o,v={rotate:"-90",offset:0});var m;if(r.type!=="multicategory"){var p=r._selections[r._id+"tick"];if(m={selection:p,side:r.side},p&&p.node()&&p.node().parentNode){var y=$i.getTranslate(p.node().parentNode);m.offsetLeft=y.x,m.offsetTop=y.y}r.title.hasOwnProperty("standoff")&&(m.pad=0)}return r._titleStandoff=o,uV.draw(e,n+"title",{propContainer:r,propName:r._name+".title.text",placeholder:t._dfltTitle[a],avoid:m,transform:v,attributes:{x:h,y:d,"text-anchor":"middle"}})}xr.shouldShowZeroLine=function(e,r,t){var n=ut.simpleMap(r.range,r.r2l);return n[0]*n[1]<=0&&r.zeroline&&(r.type==="linear"||r.type==="-")&&!(r.rangebreaks&&r.maskBreaks(0)===Dp)&&(fA(r,0)||!VV(e,r,t,n)||WV(e,r))};xr.clipEnds=function(e,r){return r.filter(function(t){return fA(e,t.x)})};function fA(e,r){var t=e.l2p(r);return t>1&&t1)for(a=1;a=a.min&&e=pV:/%L/.test(r)?e>=dV:/%[SX]/.test(r)?e>=Lp:/%M/.test(r)?e>=D1:/%[HI]/.test(r)?e>=is:/%p/.test(r)?e>=Ju:/%[Aadejuwx]/.test(r)?e>=ei:/%[UVW]/.test(r)?e>=Ki:/%[Bbm]/.test(r)?e>=Cp:/%[q]/.test(r)?e>=Sp:/%[Yy]/.test(r)?e>=kp:!0}});var pA=te((Gue,dA)=>{"use strict";dA.exports=function(r,t,n){var a,i;if(n){var o=t==="reversed"||t==="min reversed"||t==="max reversed";a=n[o?1:0],i=n[o?0:1]}var l=r("autorangeoptions.minallowed",i===null?a:void 0),s=r("autorangeoptions.maxallowed",a===null?i:void 0);l===void 0&&r("autorangeoptions.clipmin"),s===void 0&&r("autorangeoptions.clipmax"),r("autorangeoptions.include")}});var D3=te((Vue,gA)=>{"use strict";var KV=pA();gA.exports=function(r,t,n,a){var i=t._template||{},o=t.type||i.type||"-";n("minallowed"),n("maxallowed");var l=n("range");if(!l){var s;!a.noInsiderange&&o!=="log"&&(s=n("insiderange"),s&&(s[0]===null||s[1]===null)&&(t.insiderange=!1,s=void 0),s&&(l=n("range",s)))}var u=t.getAutorangeDflt(l,a),f=n("autorange",u),v;l&&(l[0]===null&&l[1]===null||(l[0]===null||l[1]===null)&&(f==="reversed"||f===!0)||l[0]!==null&&(f==="min"||f==="max reversed")||l[1]!==null&&(f==="max"||f==="min reversed"))&&(l=void 0,delete t.range,t.autorange=!0,v=!0),v||(u=t.getAutorangeDflt(l,a),f=n("autorange",u)),f&&(KV(n,f,l),(o==="linear"||o==="-")&&n("rangemode")),t.cleanRange()}});var yA=te((Wue,mA)=>{var QV={left:0,top:0};mA.exports=eW;function eW(e,r,t){r=r||e.currentTarget||e.srcElement,Array.isArray(t)||(t=[0,0]);var n=e.clientX||0,a=e.clientY||0,i=rW(r);return t[0]=n-i.left,t[1]=a-i.top,t}function rW(e){return e===window||e===document||e===document.body?QV:e.getBoundingClientRect()}});var E3=te((Zue,bA)=>{"use strict";var tW=l2();function nW(){var e=!1;try{var r=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,r),window.removeEventListener("test",null,r)}catch(t){e=!1}return e}bA.exports=tW&&nW()});var xA=te((Xue,_A)=>{"use strict";_A.exports=function(r,t,n,a,i){var o=(r-n)/(a-n),l=o+t/(a-n),s=(o+l)/2;return i==="left"||i==="bottom"?o:i==="center"||i==="middle"?s:i==="right"||i==="top"?l:o<2/3-s?o:l>4/3-s?l:s}});var AA=te((jue,MA)=>{"use strict";var wA=pr(),aW=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];MA.exports=function(r,t,n,a){return n==="left"?r=0:n==="center"?r=1:n==="right"?r=2:r=wA.constrain(Math.floor(r*3),0,2),a==="bottom"?t=0:a==="middle"?t=1:a==="top"?t=2:t=wA.constrain(Math.floor(t*3),0,2),aW[t][r]}});var kA=te((Jue,TA)=>{"use strict";var iW=m1(),oW=Rd(),lW=u1().getGraphDiv,sW=i1(),P3=TA.exports={};P3.wrapped=function(e,r,t){e=lW(e),e._fullLayout&&oW.clear(e._fullLayout._uid+sW.HOVERID),P3.raw(e,r,t)};P3.raw=function(r,t){var n=r._fullLayout,a=r._hoverdata;t||(t={}),!(t.target&&!r._dragged&&iW.triggerHandler(r,"plotly_beforehover",t)===!1)&&(n._hoverlayer.selectAll("g").remove(),n._hoverlayer.selectAll("line").remove(),n._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,t.target&&a&&r.emit("plotly_unhover",{event:t,points:a}))}});var To=te(($ue,qA)=>{"use strict";var uW=yA(),R3=u2(),fW=E3(),cW=pr().removeElement,vW=Ea(),yc=qA.exports={};yc.align=xA();yc.getCursor=AA();var CA=kA();yc.unhover=CA.wrapped;yc.unhoverRaw=CA.raw;yc.init=function(r){var t=r.gd,n=1,a=t._context.doubleClickDelay,i=r.element,o,l,s,u,f,v,h,d;t._mouseDownTime||(t._mouseDownTime=0),i.style.pointerEvents="all",i.onmousedown=y,fW?(i._ontouchstart&&i.removeEventListener("touchstart",i._ontouchstart),i._ontouchstart=y,i.addEventListener("touchstart",y,{passive:!1})):i.ontouchstart=y;function m(x,_,A){return Math.abs(x)a&&(n=Math.max(n-1,1)),t._dragged)r.doneFn&&r.doneFn();else{var _;v.target===h?_=v:(_={target:h,srcElement:h,toElement:h},Object.keys(v).concat(Object.keys(v.__proto__)).forEach(A=>{var k=v[A];!_[A]&&typeof k!="function"&&(_[A]=k)})),r.clickFn&&r.clickFn(n,_),d||h.dispatchEvent(new MouseEvent("click",x))}t._dragging=!1,t._dragged=!1}};function LA(){var e=document.createElement("div");e.className="dragcover";var r=e.style;return r.position="fixed",r.left=0,r.right=0,r.top=0,r.bottom=0,r.zIndex=999999999,r.background="none",document.body.appendChild(e),e}yc.coverSlip=LA;function SA(e){return uW(e.changedTouches?e.changedTouches[0]:e,document.body)}});var $u=te((Kue,DA)=>{"use strict";DA.exports=function(r,t){(r.attr("class")||"").split(" ").forEach(function(n){n.indexOf("cursor-")===0&&r.classed(n,!1)}),t&&r.classed("cursor-"+t,!0)}});var RA=te((Que,PA)=>{"use strict";var z3=$u(),z1="data-savedcursor",EA="!!";PA.exports=function(r,t){var n=r.attr(z1);if(t){if(!n){for(var a=(r.attr("class")||"").split(" "),i=0;i{"use strict";var N3=$a(),hW=vl();zA.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:hW.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:N3({editType:"legend"}),grouptitlefont:N3({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:N3({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var Np=te(zp=>{"use strict";zp.isGrouped=function(r){return(r.traceorder||"").indexOf("grouped")!==-1};zp.isVertical=function(r){return r.orientation!=="h"};zp.isReversed=function(r){return(r.traceorder||"").indexOf("reversed")!==-1}});var H3=te((tfe,NA)=>{"use strict";var Fp=dt(),Qi=pr(),dW=_n(),pW=bo(),gW=F3(),mW=k0(),I3=Np();function yW(e,r,t,n){var a=r[e]||{},i=dW.newContainer(t,e);function o(Q,ee){return Qi.coerce(a,i,gW,Q,ee)}var l=Qi.coerceFont(o,"font",t.font);o("bgcolor",t.paper_bgcolor),o("bordercolor");var s=o("visible");if(!s)return;var u,f=function(Q,ee){var se=u._input,ve=u;return Qi.coerce(se,ve,pW,Q,ee)},v=t.font||{},h=Qi.coerceFont(o,"grouptitlefont",v,{overrideDflt:{size:Math.round(v.size*1.1)}}),d=0,m=!1,p="normal",y=(t.shapes||[]).filter(function(Q){return Q.showlegend});function b(Q){return Fp.traceIs(Q,"pie-like")&&Q._length!=null&&(Array.isArray(Q.legend)||Array.isArray(Q.showlegend))}n.filter(b).forEach(function(Q){Q.visible&&d++;for(var ee=0;eeQ.legend.length)for(var ve=Q.legend.length;ve(e==="legend"?1:0));if(A===!1&&(t[e]=void 0),!(A===!1&&!a.uirevision)&&(o("uirevision",t.uirevision),A!==!1)){o("borderwidth");var k=o("orientation"),M=o("yref"),E=o("xref"),R=k==="h",F=M==="paper",I=E==="paper",W,O,Z,V="left";R?(W=0,Fp.getComponentMethod("rangeslider","isVisible")(r.xaxis)?F?(O=1.1,Z="bottom"):(O=1,Z="top"):F?(O=-.1,Z="top"):(O=0,Z="bottom")):(O=1,Z="auto",I?W=1.02:(W=1,V="right")),Qi.coerce(a,i,{x:{valType:"number",editType:"legend",min:I?-2:0,max:I?3:1,dflt:W}},"x"),Qi.coerce(a,i,{y:{valType:"number",editType:"legend",min:F?-2:0,max:F?3:1,dflt:O}},"y"),o("traceorder",p),I3.isGrouped(t[e])&&o("tracegroupgap"),o("entrywidth"),o("entrywidthmode"),o("indentation"),o("itemsizing"),o("itemwidth"),o("itemclick"),o("itemdoubleclick"),o("groupclick"),o("xanchor",V),o("yanchor",Z),o("maxheight"),o("valign"),Qi.noneOrAll(a,i,["x","y"]);var re=o("title.text");if(re){o("title.side",R?"left":"top");var ie=Qi.extendFlat({},l,{size:Qi.bigFont(l.size)});Qi.coerceFont(o,"title.font",ie)}}}NA.exports=function(r,t,n){var a,i=n.slice(),o=t.shapes;if(o)for(a=0;a{"use strict";var K0=dt(),O3=pr(),bW=O3.pushUnique,B3=!0;FA.exports=function(r,t,n){var a=t._fullLayout;if(t._dragged||t._editing)return;var i=a.legend.itemclick,o=a.legend.itemdoubleclick,l=a.legend.groupclick;n===1&&i==="toggle"&&o==="toggleothers"&&B3&&t.data&&t._context.showTips&&O3.notifier(O3._(t,"Double-click on legend to isolate one trace"),"long"),B3=!1;var s;if(n===1?s=i:n===2&&(s=o),!s)return;var u=l==="togglegroup",f=a.hiddenlabels?a.hiddenlabels.slice():[],v=r.data()[0][0];if(v.groupTitle&&v.noClick)return;var h=t._fullData,d=(a.shapes||[]).filter(function(nr){return nr.showlegend}),m=h.concat(d),p=v.trace;p._isShape&&(p=p._fullInput);var y=p.legendgroup,b,C,x,_,A,k,M={},E=[],R=[],F=[];function I(nr,lr){var vr=E.indexOf(nr),Je=M.visible;return Je||(Je=M.visible=[]),E.indexOf(nr)===-1&&(E.push(nr),vr=E.length-1),Je[vr]=lr,vr}var W=(a.shapes||[]).map(function(nr){return nr._input}),O=!1;function Z(nr,lr){W[nr].visible=lr,O=!0}function V(nr,lr){if(!(v.groupTitle&&!u)){var vr=nr._fullInput||nr,Je=vr._isShape,dr=vr.index;dr===void 0&&(dr=vr._index);var gr=vr.visible===!1?!1:lr;Je?Z(dr,gr):I(dr,gr)}}var re=p.legend,ie=p._fullInput,Q=ie&&ie._isShape;if(!Q&&K0.traceIs(p,"pie-like")){var ee=v.label,se=f.indexOf(ee);if(s==="toggle")se===-1?f.push(ee):f.splice(se,1);else if(s==="toggleothers"){var ve=se!==-1,Ce=[];for(b=0;b{"use strict";HA.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var UA=te((ife,OA)=>{"use strict";var BA=dt(),Y3=Np();OA.exports=function(r,t,n){var a=t._inHover,i=Y3.isGrouped(t),o=Y3.isReversed(t),l={},s=[],u=!1,f={},v=0,h=0,d,m;function p(ee,se,ve){if(t.visible!==!1&&!(n&&ee!==t._id))if(se===""||!Y3.isGrouped(t)){var Ce="~~i"+v;s.push(Ce),l[Ce]=[ve],v++}else s.indexOf(se)===-1?(s.push(se),u=!0,l[se]=[ve]):l[se].push(ve)}for(d=0;dW&&(I=W)}R[d][0]._groupMinRank=I,R[d][0]._preGroupSort=d}var O=function(ee,se){return ee[0]._groupMinRank-se[0]._groupMinRank||ee[0]._preGroupSort-se[0]._preGroupSort},Z=function(ee,se){return ee.trace.legendrank-se.trace.legendrank||ee._preSort-se._preSort};for(R.forEach(function(ee,se){ee[0]._preGroupSort=se}),R.sort(O),d=0;d{"use strict";var Ip=pr();function YA(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}bc.formatPiePercent=function(r,t){var n=YA((r*100).toPrecision(3));return Ip.numSeparate(n,t)+"%"};bc.formatPieValue=function(r,t){var n=YA(r.toPrecision(10));return Ip.numSeparate(n,t)};bc.getFirstFilled=function(r,t){if(Ip.isArrayOrTypedArray(r))for(var n=0;n{"use strict";var _W=fn(),xW=Et();GA.exports=function(r,t,n,a){var i=n.marker.pattern;i&&i.shape?_W.pointStyle(r,n,a,t):xW.fill(r,t.color)}});var jA=te((sfe,XA)=>{"use strict";var WA=Et(),ZA=G3().castOption,wW=VA();XA.exports=function(r,t,n,a){var i=n.marker.line,o=ZA(i.color,t.pts)||WA.defaultLine,l=ZA(i.width,t.pts)||0;r.call(wW,t,n,a).style("stroke-width",l).call(WA.stroke,o)}});var X3=te((ufe,rT)=>{"use strict";var ri=kt(),V3=dt(),Ha=pr(),JA=Ha.strTranslate,eo=fn(),ko=Et(),W3=es().extractOpts,Hp=Qa(),MW=jA(),AW=G3().castOption,TW=U3(),$A=12,KA=5,_c=2,kW=10,Q0=5;rT.exports=function(r,t,n){var a=t._fullLayout;n||(n=a.legend);var i=n.itemsizing==="constant",o=n.itemwidth,l=(o+TW.itemGap*2)/2,s=JA(l,0),u=function(M,E,R,F){var I;if(M+1)I=M;else if(E&&E.width>0)I=E.width;else return 0;return i?F:Math.min(I,R)};r.each(function(M){var E=ri.select(this),R=Ha.ensureSingle(E,"g","layers");R.style("opacity",M[0].trace.opacity);var F=n.indentation,I=n.valign,W=M[0].lineHeight,O=M[0].height;if(I==="middle"&&F===0||!W||!O)R.attr("transform",null);else{var Z={top:1,bottom:-1}[I],V=Z*(.5*(W-O+3))||0,re=n.indentation;R.attr("transform",JA(re,V))}var ie=R.selectAll("g.legendfill").data([M]);ie.enter().append("g").classed("legendfill",!0);var Q=R.selectAll("g.legendlines").data([M]);Q.enter().append("g").classed("legendlines",!0);var ee=R.selectAll("g.legendsymbols").data([M]);ee.enter().append("g").classed("legendsymbols",!0),ee.selectAll("g.legendpoints").data([M]).enter().append("g").classed("legendpoints",!0)}).each(k).each(h).each(m).each(d).each(y).each(_).each(x).each(f).each(v).each(b).each(C);function f(M){var E=QA(M),R=E.showFill,F=E.showLine,I=E.showGradientLine,W=E.showGradientFill,O=E.anyFill,Z=E.anyLine,V=M[0],re=V.trace,ie,Q,ee=W3(re),se=ee.colorscale,ve=ee.reversescale,Ce=function(ye){if(ye.size())if(R)eo.fillGroupStyle(ye,t,!0);else{var Me="legendfill-"+re.uid;eo.gradient(ye,t,Me,Z3(ve),se,"fill")}},Ie=function(ye){if(ye.size()){var Me="legendline-"+re.uid;eo.lineGroupStyle(ye),eo.gradient(ye,t,Me,Z3(ve),se,"stroke")}},ze=Hp.hasMarkers(re)||!O?"M5,0":Z?"M5,-2":"M5,-3",Xe=ri.select(this),Le=Xe.select(".legendfill").selectAll("path").data(R||W?[M]:[]);if(Le.enter().append("path").classed("js-fill",!0),Le.exit().remove(),Le.attr("d",ze+"h"+o+"v6h-"+o+"z").call(Ce),F||I){var Qe=u(void 0,re.line,kW,KA);Q=Ha.minExtend(re,{line:{width:Qe}}),ie=[Ha.minExtend(V,{trace:Q})]}var fe=Xe.select(".legendlines").selectAll("path").data(F||I?[ie]:[]);fe.enter().append("path").classed("js-line",!0),fe.exit().remove(),fe.attr("d",ze+(I?"l"+o+",0.0001":"h"+o)).call(F?eo.lineGroupStyle:Ie)}function v(M){var E=QA(M),R=E.anyFill,F=E.anyLine,I=E.showLine,W=E.showMarker,O=M[0],Z=O.trace,V=!W&&!F&&!R&&Hp.hasText(Z),re,ie;function Q(Le,Qe,fe,ye){var Me=Ha.nestedProperty(Z,Le).get(),pe=Ha.isArrayOrTypedArray(Me)&&Qe?Qe(Me):Me;if(i&&pe&&ye!==void 0&&(pe=ye),fe){if(pefe[1])return fe[1]}return pe}function ee(Le){return O._distinct&&O.index&&Le[O.index]?Le[O.index]:Le[0]}if(W||V||I){var se={},ve={};if(W){se.mc=Q("marker.color",ee),se.mx=Q("marker.symbol",ee),se.mo=Q("marker.opacity",Ha.mean,[.2,1]),se.mlc=Q("marker.line.color",ee),se.mlw=Q("marker.line.width",Ha.mean,[0,5],_c),ve.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var Ce=Q("marker.size",Ha.mean,[2,16],$A);se.ms=Ce,ve.marker.size=Ce}I&&(ve.line={width:Q("line.width",ee,[0,10],KA)}),V&&(se.tx="Aa",se.tp=Q("textposition",ee),se.ts=10,se.tc=Q("textfont.color",ee),se.tf=Q("textfont.family",ee),se.tw=Q("textfont.weight",ee),se.ty=Q("textfont.style",ee),se.tv=Q("textfont.variant",ee),se.tC=Q("textfont.textcase",ee),se.tE=Q("textfont.lineposition",ee),se.tS=Q("textfont.shadow",ee)),re=[Ha.minExtend(O,se)],ie=Ha.minExtend(Z,ve),ie.selectedpoints=null,ie.texttemplate=null}var Ie=ri.select(this).select("g.legendpoints"),ze=Ie.selectAll("path.scatterpts").data(W?re:[]);ze.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",s),ze.exit().remove(),ze.call(eo.pointStyle,ie,t),W&&(re[0].mrc=3);var Xe=Ie.selectAll("g.pointtext").data(V?re:[]);Xe.enter().append("g").classed("pointtext",!0).append("text").attr("transform",s),Xe.exit().remove(),Xe.selectAll("text").call(eo.textPointStyle,ie,t)}function h(M){var E=M[0].trace,R=E.type==="waterfall";if(M[0]._distinct&&R){var F=M[0].trace[M[0].dir].marker;return M[0].mc=F.color,M[0].mlw=F.line.width,M[0].mlc=F.line.color,p(M,this,"waterfall")}var I=[];E.visible&&R&&(I=M[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var W=ri.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(I);W.enter().append("path").classed("legendwaterfall",!0).attr("transform",s).style("stroke-miterlimit",1),W.exit().remove(),W.each(function(O){var Z=ri.select(this),V=E[O[0]].marker,re=u(void 0,V.line,Q0,_c);Z.attr("d",O[1]).style("stroke-width",re+"px").call(ko.fill,V.color),re&&Z.call(ko.stroke,V.line.color)})}function d(M){p(M,this)}function m(M){p(M,this,"funnel")}function p(M,E,R){var F=M[0].trace,I=F.marker||{},W=I.line||{},O=I.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",Z=R?F.visible&&F.type===R:V3.traceIs(F,"bar"),V=ri.select(E).select("g.legendpoints").selectAll("path.legend"+R).data(Z?[M]:[]);V.enter().append("path").classed("legend"+R,!0).attr("d",O).attr("transform",s),V.exit().remove(),V.each(function(re){var ie=ri.select(this),Q=re[0],ee=u(Q.mlw,I.line,Q0,_c);ie.style("stroke-width",ee+"px");var se=Q.mcc;if(!n._inHover&&"mc"in Q){var ve=W3(I),Ce=ve.mid;Ce===void 0&&(Ce=(ve.max+ve.min)/2),se=eo.tryColorscale(I,"")(Ce)}var Ie=se||Q.mc||I.color,ze=I.pattern,Xe=eo.getPatternAttr,Le=ze&&(Xe(ze.shape,0,"")||Xe(ze.path,0,""));if(Le){var Qe=Xe(ze.bgcolor,0,null),fe=Xe(ze.fgcolor,0,null),ye=ze.fgopacity,Me=eT(ze.size,8,10),pe=eT(ze.solidity,.5,1),U="legend-"+F.uid;ie.call(eo.pattern,"legend",t,U,Le,Me,pe,se,ze.fillmode,Qe,fe,ye)}else ie.call(ko.fill,Ie);ee&&ko.stroke(ie,Q.mlc||W.color)})}function y(M){var E=M[0].trace,R=ri.select(this).select("g.legendpoints").selectAll("path.legendbox").data(E.visible&&V3.traceIs(E,"box-violin")?[M]:[]);R.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),R.exit().remove(),R.each(function(){var F=ri.select(this);if((E.boxpoints==="all"||E.points==="all")&&ko.opacity(E.fillcolor)===0&&ko.opacity((E.line||{}).color)===0){var I=Ha.minExtend(E,{marker:{size:i?$A:Ha.constrain(E.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});R.call(eo.pointStyle,I,t)}else{var W=u(void 0,E.line,Q0,_c);F.style("stroke-width",W+"px").call(ko.fill,E.fillcolor),W&&ko.stroke(F,E.line.color)}})}function b(M){var E=M[0].trace,R=ri.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(E.visible&&E.type==="candlestick"?[M,M]:[]);R.enter().append("path").classed("legendcandle",!0).attr("d",function(F,I){return I?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",s).style("stroke-miterlimit",1),R.exit().remove(),R.each(function(F,I){var W=ri.select(this),O=E[I?"increasing":"decreasing"],Z=u(void 0,O.line,Q0,_c);W.style("stroke-width",Z+"px").call(ko.fill,O.fillcolor),Z&&ko.stroke(W,O.line.color)})}function C(M){var E=M[0].trace,R=ri.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(E.visible&&E.type==="ohlc"?[M,M]:[]);R.enter().append("path").classed("legendohlc",!0).attr("d",function(F,I){return I?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",s).style("stroke-miterlimit",1),R.exit().remove(),R.each(function(F,I){var W=ri.select(this),O=E[I?"increasing":"decreasing"],Z=u(void 0,O.line,Q0,_c);W.style("fill","none").call(eo.dashLine,O.line.dash,Z),Z&&ko.stroke(W,O.line.color)})}function x(M){A(M,this,"pie")}function _(M){A(M,this,"funnelarea")}function A(M,E,R){var F=M[0],I=F.trace,W=R?I.visible&&I.type===R:V3.traceIs(I,R),O=ri.select(E).select("g.legendpoints").selectAll("path.legend"+R).data(W?[M]:[]);if(O.enter().append("path").classed("legend"+R,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),O.exit().remove(),O.size()){var Z=I.marker||{},V=u(AW(Z.line.width,F.pts),Z.line,Q0,_c),re="pieLike",ie=Ha.minExtend(I,{marker:{line:{width:V}}},re),Q=Ha.minExtend(F,{trace:ie},re);MW(O,Q,ie,t)}}function k(M){var E=M[0].trace,R,F=[];if(E.visible)switch(E.type){case"histogram2d":case"heatmap":F=[["M-15,-2V4H15V-2Z"]],R=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":F=[["M-6,-6V6H6V-6Z"]],R=!0;break;case"densitymapbox":case"densitymap":F=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],R="radial";break;case"cone":F=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],R=!1;break;case"streamtube":F=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],R=!1;break;case"surface":F=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],R=!0;break;case"mesh3d":F=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],R=!1;break;case"volume":F=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],R=!0;break;case"isosurface":F=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],R=!1;break}var I=ri.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(F);I.enter().append("path").classed("legend3dandfriends",!0).attr("transform",s).style("stroke-miterlimit",1),I.exit().remove(),I.each(function(W,O){var Z=ri.select(this),V=W3(E),re=V.colorscale,ie=V.reversescale,Q=function(Ce){if(Ce.size()){var Ie="legendfill-"+E.uid;eo.gradient(Ce,t,Ie,Z3(ie,R==="radial"),re,"fill")}},ee;if(re){if(!R){var ve=re.length;ee=O===0?re[ie?ve-1:0][1]:O===1?re[ie?0:ve-1][1]:re[Math.floor((ve-1)/2)][1]}}else{var se=E.vertexcolor||E.facecolor||E.color;ee=Ha.isArrayOrTypedArray(se)?se[O]||se[0]:se}Z.attr("d",W[0]),ee?Z.call(ko.fill,ee):Z.call(Q)})}};function Z3(e,r){var t=r?"radial":"horizontal";return t+(e?"":"reversed")}function QA(e){var r=e[0].trace,t=r.contours,n=Hp.hasLines(r),a=Hp.hasMarkers(r),i=r.visible&&r.fill&&r.fill!=="none",o=!1,l=!1;if(t){var s=t.coloring;s==="lines"?o=!0:n=s==="none"||s==="heatmap"||t.showlines,t.type==="constraint"?i=t._operation!=="=":(s==="fill"||s==="heatmap")&&(l=!0)}return{showMarker:a,showLine:n,showFill:i,showGradientLine:o,showGradientFill:l,anyLine:n||o,anyFill:i||l}}function eT(e,r,t){return e&&Ha.isArrayOrTypedArray(e)?r:e>t?t:e}});var K3=te((ffe,cT)=>{"use strict";var Ri=kt(),na=pr(),J3=ca(),tv=dt(),tT=m1(),j3=To(),aa=fn(),Op=Et(),xc=vi(),nT=IA(),va=U3(),$3=Ka(),uT=$3.LINE_SPACING,rv=$3.FROM_TL,aT=$3.FROM_BR,iT=UA(),SW=X3(),oT=Np(),ev=1,CW=/^legend[0-9]*$/;cT.exports=function(r,t){if(t)lT(r,t);else{var n=r._fullLayout,a=n._legends,i=n._infolayer.selectAll('[class^="legend"]');i.each(function(){var u=Ri.select(this),f=u.attr("class"),v=f.split(" ")[0];v.match(CW)&&a.indexOf(v)===-1&&u.remove()});for(var o=0;o1)}var m=n.hiddenlabels||[];if(!l&&(!n.showlegend||!s.length))return o.selectAll("."+a).remove(),n._topdefs.select("#"+i).remove(),J3.autoMargin(e,a);var p=na.ensureSingle(o,"g",a,function(E){l||E.attr("pointer-events","all")}),y=na.ensureSingleById(n._topdefs,"clipPath",i,function(E){E.append("rect")}),b=na.ensureSingle(p,"rect","bg",function(E){E.attr("shape-rendering","crispEdges")});b.call(Op.stroke,t.bordercolor).call(Op.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px");var C=na.ensureSingle(p,"g","scrollbox"),x=t.title;t._titleWidth=0,t._titleHeight=0;var _;x.text?(_=na.ensureSingle(C,"text",a+"titletext"),_.attr("text-anchor","start").call(aa.font,x.font).text(x.text),Up(_,C,e,t,ev)):C.selectAll("."+a+"titletext").remove();var A=na.ensureSingle(p,"rect","scrollbar",function(E){E.attr(va.scrollBarEnterAttrs).call(Op.fill,va.scrollBarColor)}),k=C.selectAll("g.groups").data(s);k.enter().append("g").attr("class","groups"),k.exit().remove();var M=k.selectAll("g.traces").data(na.identity);M.enter().append("g").attr("class","traces"),M.exit().remove(),M.style("opacity",function(E){var R=E[0].trace;return tv.traceIs(R,"pie-like")?m.indexOf(E[0].label)!==-1?.5:1:R.visible==="legendonly"?.5:1}).each(function(){Ri.select(this).call(qW,e,t)}).call(SW,e,t).each(function(){l||Ri.select(this).call(DW,e,a)}),na.syncOrAsync([J3.previousPromises,function(){return RW(e,k,M,t)},function(){var E=n._size,R=t.borderwidth,F=t.xref==="paper",I=t.yref==="paper";if(x.text&&LW(_,t,R),!l){var W,O;F?W=E.l+E.w*t.x-rv[Yp(t)]*t._width:W=n.width*t.x-rv[Yp(t)]*t._width,I?O=E.t+E.h*(1-t.y)-rv[Gp(t)]*t._effHeight:O=n.height*(1-t.y)-rv[Gp(t)]*t._effHeight;var Z=zW(e,a,W,O);if(Z)return;if(n.margin.autoexpand){var V=W,re=O;W=F?na.constrain(W,0,n.width-t._width):V,O=I?na.constrain(O,0,n.height-t._effHeight):re,W!==V&&na.log("Constrain "+a+".x to make legend fit inside graph"),O!==re&&na.log("Constrain "+a+".y to make legend fit inside graph")}aa.setTranslate(p,W,O)}if(A.on(".drag",null),p.on("wheel",null),l||t._height<=t._maxHeight||e._context.staticPlot){var ie=t._effHeight;l&&(ie=t._height),b.attr({width:t._width-R,height:ie-R,x:R/2,y:R/2}),aa.setTranslate(C,0,0),y.select("rect").attr({width:t._width-2*R,height:ie-2*R,x:R,y:R}),aa.setClipUrl(C,i,e),aa.setRect(A,0,0,0,0),delete t._scrollY}else{var Q=Math.max(va.scrollBarMinHeight,t._effHeight*t._effHeight/t._height),ee=t._effHeight-Q-2*va.scrollBarMargin,se=t._height-t._effHeight,ve=ee/se,Ce=Math.min(t._scrollY||0,se);b.attr({width:t._width-2*R+va.scrollBarWidth+va.scrollBarMargin,height:t._effHeight-R,x:R/2,y:R/2}),y.select("rect").attr({width:t._width-2*R+va.scrollBarWidth+va.scrollBarMargin,height:t._effHeight-2*R,x:R,y:R+Ce}),aa.setClipUrl(C,i,e),Me(Ce,Q,ve),p.on("wheel",function(){Ce=na.constrain(t._scrollY+Ri.event.deltaY/se*ee,0,se),Me(Ce,Q,ve),Ce!==0&&Ce!==se&&Ri.event.preventDefault()});var Ie,ze,Xe,Le=function(ke,Be,Ne){var ir=(Ne-Be)/ve+ke;return na.constrain(ir,0,se)},Qe=function(ke,Be,Ne){var ir=(Be-Ne)/ve+ke;return na.constrain(ir,0,se)},fe=Ri.behavior.drag().on("dragstart",function(){var ke=Ri.event.sourceEvent;ke.type==="touchstart"?Ie=ke.changedTouches[0].clientY:Ie=ke.clientY,Xe=Ce}).on("drag",function(){var ke=Ri.event.sourceEvent;ke.buttons===2||ke.ctrlKey||(ke.type==="touchmove"?ze=ke.changedTouches[0].clientY:ze=ke.clientY,Ce=Le(Xe,Ie,ze),Me(Ce,Q,ve))});A.call(fe);var ye=Ri.behavior.drag().on("dragstart",function(){var ke=Ri.event.sourceEvent;ke.type==="touchstart"&&(Ie=ke.changedTouches[0].clientY,Xe=Ce)}).on("drag",function(){var ke=Ri.event.sourceEvent;ke.type==="touchmove"&&(ze=ke.changedTouches[0].clientY,Ce=Qe(Xe,Ie,ze),Me(Ce,Q,ve))});C.call(ye)}function Me(ke,Be,Ne){t._scrollY=e._fullLayout[a]._scrollY=ke,aa.setTranslate(C,0,-ke),aa.setRect(A,t._width,va.scrollBarMargin+ke*Ne,va.scrollBarWidth,Be),y.select("rect").attr("y",R+ke)}if(e._context.edits.legendPosition){var pe,U,K,$;p.classed("cursor-move",!0),j3.init({element:p.node(),gd:e,prepFn:function(ke){if(ke.target!==A.node()){var Be=aa.getTranslate(p);K=Be.x,$=Be.y}},moveFn:function(ke,Be){if(K!==void 0&&$!==void 0){var Ne=K+ke,ir=$+Be;aa.setTranslate(p,Ne,ir),pe=j3.align(Ne,t._width,E.l,E.l+E.w,t.xanchor),U=j3.align(ir+t._height,-t._height,E.t+E.h,E.t,t.yanchor)}},doneFn:function(){if(pe!==void 0&&U!==void 0){var ke={};ke[a+".x"]=pe,ke[a+".y"]=U,tv.call("_guiRelayout",e,ke)}},clickFn:function(ke,Be){var Ne=o.selectAll("g.traces").filter(function(){var ir=this.getBoundingClientRect();return Be.clientX>=ir.left&&Be.clientX<=ir.right&&Be.clientY>=ir.top&&Be.clientY<=ir.bottom});Ne.size()>0&&fT(e,p,Ne,ke,Be)}})}}],e)}}function Bp(e,r,t){var n=e[0],a=n.width,i=r.entrywidthmode,o=n.trace.legendwidth||r.entrywidth;return i==="fraction"?r._maxWidth*o:t+(o||a)}function fT(e,r,t,n,a){var i=t.data()[0][0].trace,o={event:a,node:t.node(),curveNumber:i.index,expandedIndex:i.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};i._group&&(o.group=i._group),tv.traceIs(i,"pie-like")&&(o.label=t.datum()[0].label);var l=tT.triggerHandler(e,"plotly_legendclick",o);if(n===1){if(l===!1)return;r._clickTimeout=setTimeout(function(){e._fullLayout&&nT(t,e,n)},e._context.doubleClickDelay)}else if(n===2){r._clickTimeout&&clearTimeout(r._clickTimeout),e._legendMouseDownTime=0;var s=tT.triggerHandler(e,"plotly_legenddoubleclick",o);s!==!1&&l!==!1&&nT(t,e,n)}}function qW(e,r,t){var n=Vp(t),a=e.data()[0][0],i=a.trace,o=tv.traceIs(i,"pie-like"),l=!t._inHover&&r._context.edits.legendText&&!o,s=t._maxNameLength,u,f;a.groupTitle?(u=a.groupTitle.text,f=a.groupTitle.font):(f=t.font,t.entries?u=a.text:(u=o?a.label:i.name,i._meta&&(u=na.templateString(u,i._meta))));var v=na.ensureSingle(e,"text",n+"text");v.attr("text-anchor","start").call(aa.font,f).text(l?sT(u,s):u);var h=t.indentation+t.itemwidth+va.itemGap*2;xc.positionText(v,h,0),l?v.call(xc.makeEditable,{gd:r,text:u}).call(Up,e,r,t).on("edit",function(d){this.text(sT(d,s)).call(Up,e,r,t);var m=a.trace._fullInput||{},p={};return p.name=d,m._isShape?tv.call("_guiRelayout",r,"shapes["+i.index+"].name",p.name):tv.call("_guiRestyle",r,p,i.index)}):Up(v,e,r,t)}function sT(e,r){var t=Math.max(4,r);if(e&&e.trim().length>=t/2)return e;e=e||"";for(var n=t-e.length;n>0;n--)e+=" ";return e}function DW(e,r,t){var n=r._context.doubleClickDelay,a,i=1,o=na.ensureSingle(e,"rect",t+"toggle",function(l){r._context.staticPlot||l.style("cursor","pointer").attr("pointer-events","all"),l.call(Op.fill,"rgba(0,0,0,0)")});r._context.staticPlot||(o.on("mousedown",function(){a=new Date().getTime(),a-r._legendMouseDownTimen&&(i=Math.max(i-1,1)),fT(r,l,e,i,Ri.event)}}))}function Up(e,r,t,n,a){n._inHover&&e.attr("data-notex",!0),xc.convertToTspans(e,t,function(){EW(r,t,n,a)})}function EW(e,r,t,n){var a=e.data()[0][0],i=a&&a.trace.showlegend;if(Array.isArray(i)&&(i=i[a.i]!==!1),!t._inHover&&a&&!i){e.remove();return}var o=e.select("g[class*=math-group]"),l=o.node(),s=Vp(t);t||(t=r._fullLayout[s]);var u=t.borderwidth,f;n===ev?f=t.title.font:a.groupTitle?f=a.groupTitle.font:f=t.font;var v=f.size*uT,h,d;if(l){var m=aa.bBox(l);h=m.height,d=m.width,n===ev?aa.setTranslate(o,u,u+h*.75):aa.setTranslate(o,0,h*.25)}else{var p="."+s+(n===ev?"title":"")+"text",y=e.select(p),b=xc.lineCount(y),C=y.node();if(h=v*b,d=C?aa.bBox(C).width:0,n===ev)t.title.side==="left"&&(d+=va.itemGap*2),xc.positionText(y,u+va.titlePad,u+v);else{var x=va.itemGap*2+t.indentation+t.itemwidth;a.groupTitle&&(x=va.itemGap,d-=t.indentation+t.itemwidth),xc.positionText(y,x,-v*((b-1)/2-.3))}}n===ev?(t._titleWidth=d,t._titleHeight=h):(a.lineHeight=v,a.height=Math.max(h,16)+3,a.width=d)}function PW(e){var r=0,t=0,n=e.title.side;return n&&(n.indexOf("left")!==-1&&(r=e._titleWidth),n.indexOf("top")!==-1&&(t=e._titleHeight)),[r,t]}function RW(e,r,t,n){var a=e._fullLayout,i=Vp(n);n||(n=a[i]);var o=a._size,l=oT.isVertical(n),s=oT.isGrouped(n),u=n.entrywidthmode==="fraction",f=n.borderwidth,v=2*f,h=va.itemGap,d=n.indentation+n.itemwidth+h*2,m=2*(f+h),p=Gp(n),y=n.y<0||n.y===0&&p==="top",b=n.y>1||n.y===1&&p==="bottom",C=n.tracegroupgap,x={};let{orientation:_,yref:A}=n,{maxheight:k}=n,M=y||b||_!=="v"||A!=="paper";k||(k=M?.5:1);let E=M?a.height:o.h;n._maxHeight=Math.max(k>1?k:k*E,30);var R=0;n._width=0,n._height=0;var F=PW(n);if(l)t.each(function(Me){var pe=Me[0].height;aa.setTranslate(this,f+F[0],f+F[1]+n._height+pe/2+h),n._height+=pe,n._width=Math.max(n._width,Me[0].width)}),R=d+n._width,n._width+=h+d+v,n._height+=m,s&&(r.each(function(Me,pe){aa.setTranslate(this,0,pe*n.tracegroupgap)}),n._height+=(n._lgroupsLength-1)*n.tracegroupgap);else{var I=Yp(n),W=n.x<0||n.x===0&&I==="right",O=n.x>1||n.x===1&&I==="left",Z=b||y,V=a.width/2;n._maxWidth=Math.max(W?Z&&I==="left"?o.l+o.w:V:O?Z&&I==="right"?o.r+o.w:V:o.w,2*d);var re=0,ie=0;t.each(function(Me){var pe=Bp(Me,n,d);re=Math.max(re,pe),ie+=pe}),R=null;var Q=0;if(s){var ee=0,se=0,ve=0;r.each(function(){var Me=0,pe=0;Ri.select(this).selectAll("g.traces").each(function(K){var $=Bp(K,n,d),ke=K[0].height;aa.setTranslate(this,F[0],F[1]+f+h+ke/2+pe),pe+=ke,Me=Math.max(Me,$),x[K[0].trace.legendgroup]=Me});var U=Me+h;se>0&&U+f+se>n._maxWidth?(Q=Math.max(Q,se),se=0,ve+=ee+C,ee=pe):ee=Math.max(ee,pe),aa.setTranslate(this,se,ve),se+=U}),n._width=Math.max(Q,se)+f,n._height=ve+ee+m}else{var Ce=t.size(),Ie=ie+v+(Ce-1)*h=n._maxWidth&&(Q=Math.max(Q,Qe),Xe=0,Le+=ze,n._height+=ze,ze=0),aa.setTranslate(this,F[0]+f+Xe,F[1]+f+Le+pe/2+h),Qe=Xe+U+h,Xe+=K,ze=Math.max(ze,pe)}),Ie?(n._width=Xe+v,n._height=ze+m):(n._width=Math.max(Q,Qe)+v,n._height+=ze+m)}}n._width=Math.ceil(Math.max(n._width+F[0],n._titleWidth+2*(f+va.titlePad))),n._height=Math.ceil(Math.max(n._height+F[1],n._titleHeight+2*(f+va.itemGap))),n._effHeight=Math.min(n._height,n._maxHeight);var fe=e._context.edits,ye=fe.legendText||fe.legendPosition;t.each(function(Me){var pe=Ri.select(this).select("."+i+"toggle"),U=Me[0].height,K=Me[0].trace.legendgroup,$=Bp(Me,n,d);s&&K!==""&&($=x[K]);var ke=ye?d:R||$;!l&&!u&&(ke+=h/2),aa.setRect(pe,0,-U/2,ke,U)})}function zW(e,r,t,n){var a=e._fullLayout,i=a[r],o=Yp(i),l=Gp(i),s=i.xref==="paper",u=i.yref==="paper";e._fullLayout._reservedMargin[r]={};var f=i.y<.5?"b":"t",v=i.x<.5?"l":"r",h={r:a.width-t,l:t+i._width,b:a.height-n,t:n+i._effHeight};if(s&&u)return J3.autoMargin(e,r,{x:i.x,y:i.y,l:i._width*rv[o],r:i._width*aT[o],b:i._effHeight*aT[l],t:i._effHeight*rv[l]});s?e._fullLayout._reservedMargin[r][f]=h[f]:u||i.orientation==="v"?e._fullLayout._reservedMargin[r][v]=h[v]:e._fullLayout._reservedMargin[r][f]=h[f]}function Yp(e){return na.isRightAnchor(e)?"right":na.isCenterAnchor(e)?"center":"left"}function Gp(e){return na.isBottomAnchor(e)?"bottom":na.isMiddleAnchor(e)?"middle":"top"}function Vp(e){return e._id||"legend"}});var t5=te(r5=>{"use strict";var wc=kt(),Qs=Ht(),vT=$l(),Hn=pr(),NW=Hn.pushUnique,Q3=Hn.strTranslate,FW=Hn.strRotate,IW=m1(),So=vi(),HW=RA(),os=fn(),ba=Et(),Wp=To(),ls=Dn(),BW=Ea().zindexSeparator,av=dt(),_l=Gu(),Mc=i1(),OW=H3(),UW=K3(),_T=Mc.YANGLE,e5=Math.PI*_T/180,YW=1/Math.sin(e5),GW=Math.cos(e5),VW=Math.sin(e5),Ln=Mc.HOVERARROWSIZE,Pt=Mc.HOVERTEXTPAD,hT={box:!0,ohlc:!0,violin:!0,candlestick:!0},WW={scatter:!0,scattergl:!0,splom:!0};function dT(e,r){return e.distance-r.distance}r5.hover=function(r,t,n,a){r=Hn.getGraphDiv(r);var i=t.target;Hn.throttle(r._fullLayout._uid+Mc.HOVERID,Mc.HOVERMINTIME,function(){ZW(r,t,n,a,i)})};r5.loneHover=function(r,t){var n=!0;Array.isArray(r)||(n=!1,r=[r]);var a=t.gd,i=TT(a),o=kT(a),l=r.map(function(y){var b=y._x0||y.x0||y.x||0,C=y._x1||y.x1||y.x||0,x=y._y0||y.y0||y.y||0,_=y._y1||y.y1||y.y||0,A=y.eventData;if(A){var k=Math.min(b,C),M=Math.max(b,C),E=Math.min(x,_),R=Math.max(x,_),F=y.trace;if(av.traceIs(F,"gl3d")){var I=a._fullLayout[F.scene]._scene.container,W=I.offsetLeft,O=I.offsetTop;k+=W,M+=W,E+=O,R+=O}A.bbox={x0:k+o,x1:M+o,y0:E+i,y1:R+i},t.inOut_bbox&&t.inOut_bbox.push(A.bbox)}else A=!1;return{color:y.color||ba.defaultLine,x0:y.x0||y.x||0,x1:y.x1||y.x||0,y0:y.y0||y.y||0,y1:y.y1||y.y||0,xLabel:y.xLabel,yLabel:y.yLabel,zLabel:y.zLabel,text:y.text,name:y.name,idealAlign:y.idealAlign,borderColor:y.borderColor,fontFamily:y.fontFamily,fontSize:y.fontSize,fontColor:y.fontColor,fontWeight:y.fontWeight,fontStyle:y.fontStyle,fontVariant:y.fontVariant,nameLength:y.nameLength,textAlign:y.textAlign,trace:y.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:y.hovertemplate||!1,hovertemplateLabels:y.hovertemplateLabels||!1,eventData:A}}),s=!1,u=wT(l,{gd:a,hovermode:"closest",rotateLabels:s,bgColor:t.bgColor||ba.background,container:wc.select(t.container),outerContainer:t.outerContainer||t.container}),f=u.hoverLabels,v=5,h=0,d=0;f.sort(function(y,b){return y.y0-b.y0}).each(function(y,b){var C=y.y0-y.by/2;C-vM[0]._length||$<0||$>E[0]._length)return Wp.unhoverRaw(e,r)}if(r.pointerX=K+M[0]._offset,r.pointerY=$+E[0]._offset,"xval"in r?re=_l.flat(i,r.xval):re=_l.p2c(M,K),"yval"in r?ie=_l.flat(i,r.yval):ie=_l.p2c(E,$),!Qs(re[0])||!Qs(ie[0]))return Hn.warn("Fx.hover failed",r,e),Wp.unhoverRaw(e,r)}var Ne=1/0;function ir(jr,Ut){for(ee=0;eefe&&(Z.splice(0,fe),Ne=Z[0].distance),v&&O!==0&&Z.length===0){Qe.distance=O,Qe.index=!1;var Yt=ve._module.hoverPoints(Qe,Xe,Le,"closest",{hoverLayer:l._hoverlayer});if(Yt&&(Yt=Yt.filter(function(hn){return hn.spikeDistance<=O})),Yt&&Yt.length){var Bn,Ga=Yt.filter(function(hn){return hn.xa.showspikes&&hn.xa.spikesnap!=="hovered data"});if(Ga.length){var kn=Ga[0];Qs(kn.x0)&&Qs(kn.y0)&&(Bn=Ye(kn),(!ye.vLinePoint||ye.vLinePoint.spikeDistance>Bn.spikeDistance)&&(ye.vLinePoint=Bn))}var Va=Yt.filter(function(hn){return hn.ya.showspikes&&hn.ya.spikesnap!=="hovered data"});if(Va.length){var ia=Va[0];Qs(ia.x0)&&Qs(ia.y0)&&(Bn=Ye(ia),(!ye.hLinePoint||ye.hLinePoint.spikeDistance>Bn.spikeDistance)&&(ye.hLinePoint=Bn))}}}}}ir();function or(jr,Ut,Nt){for(var rn=null,Tn=1/0,vn,Yt=0;Ytjr.trace.index===Ue.trace.index):Z=[Ue];var Ze=Z.length,mr=bT("x",Ue,l),Tr=bT("y",Ue,l);ir(mr,Tr);var yr=[],wr={},Hr=0,Sr=function(jr){var Ut=hT[jr.trace.type]?xT(jr):jr.trace.index;if(!wr[Ut])Hr++,wr[Ut]=Hr,yr.push(jr);else{var Nt=wr[Ut]-1,rn=yr[Nt];Nt>0&&Math.abs(jr.distance)Ze-1;Dr--)Sr(Z[Dr]);Z=yr,Je()}var ur=e._hoverdata,_e=[],Ae=TT(e),Ke=kT(e);for(let jr of Z){var rr=_l.makeEventData(jr,jr.trace,jr.cd);if(jr.hovertemplate!==!1){var Lr=!1;jr.cd[jr.index]&&jr.cd[jr.index].ht&&(Lr=jr.cd[jr.index].ht),jr.hovertemplate=Lr||jr.trace.hovertemplate||!1}if(jr.xa&&jr.ya){var Yr=jr.x0+jr.xa._offset,Fr=jr.x1+jr.xa._offset,lt=jr.y0+jr.ya._offset,xt=jr.y1+jr.ya._offset,Rt=Math.min(Yr,Fr),Kt=Math.max(Yr,Fr),cn=Math.min(lt,xt),pn=Math.max(lt,xt);rr.bbox={x0:Rt+Ke,x1:Kt+Ke,y0:cn+Ae,y1:pn+Ae}}jr.eventData=[rr],_e.push(rr)}e._hoverdata=_e;var Mn=h==="y"&&(V.length>1||Z.length>1)||h==="closest"&&Me&&Z.length>1,Xt=ba.combine(l.plot_bgcolor||ba.background,l.paper_bgcolor),Qt=wT(Z,{gd:e,hovermode:h,rotateLabels:Mn,bgColor:Xt,container:l._hoverlayer,outerContainer:l._paper.node(),commonLabelOpts:l.hoverlabel,hoverdistance:l.hoverdistance}),en=Qt.hoverLabels;if(_l.isUnifiedHover(h)||(jW(en,Mn,l,Qt.commonLabelBoundingBox),AT(en,Mn,l._invScaleX,l._invScaleY)),a&&a.tagName){var an=av.getComponentMethod("annotations","hasClickToShow")(e,_e);HW(wc.select(a),an?"pointer":"")}!a||n||!KW(e,r,ur)||(ur&&e.emit("plotly_unhover",{event:r,points:ur}),e.emit("plotly_hover",{event:r,points:e._hoverdata,xaxes:M,yaxes:E,xvals:re,yvals:ie}))}function xT(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var XW=/([\s\S]*)<\/extra>/;function wT(e,r){var t=r.gd,n=t._fullLayout,a=r.hovermode,i=r.rotateLabels,o=r.bgColor,l=r.container,s=r.outerContainer,u=r.commonLabelOpts||{};if(e.length===0)return[[]];var f=r.fontFamily||Mc.HOVERFONT,v=r.fontSize||Mc.HOVERFONTSIZE,h=r.fontWeight||n.font.weight,d=r.fontStyle||n.font.style,m=r.fontVariant||n.font.variant,p=r.fontTextcase||n.font.textcase,y=r.fontLineposition||n.font.lineposition,b=r.fontShadow||n.font.shadow,C=e[0],x=C.xa,_=C.ya,A=a.charAt(0),k=A+"Label",M=C[k];if(M===void 0&&x.type==="multicategory")for(var E=0;En.width-Ae&&(Ke=n.width-Ae),Ue.attr("d","M"+(Dr-Ke)+",0L"+(Dr-Ke+Ln)+","+_e+Ln+"H"+Ae+"v"+_e+(Pt*2+Sr.height)+"H"+-Ae+"V"+_e+Ln+"H"+(Dr-Ke-Ln)+"Z"),Dr=Ke,ee.minX=Dr-Ae,ee.maxX=Dr+Ae,x.side==="top"?(ee.minY=ur-(Pt*2+Sr.height),ee.maxY=ur-Pt):(ee.minY=ur+Pt,ee.maxY=ur+(Pt*2+Sr.height))}else{var rr,Lr,Yr;_.side==="right"?(rr="start",Lr=1,Yr="",Dr=x._offset+x._length):(rr="end",Lr=-1,Yr="-",Dr=x._offset),ur=_._offset+(C.y0+C.y1)/2,Ze.attr("text-anchor",rr),Ue.attr("d","M0,0L"+Yr+Ln+","+Ln+"V"+(Pt+Sr.height/2)+"h"+Yr+(Pt*2+Sr.width)+"V-"+(Pt+Sr.height/2)+"H"+Yr+Ln+"V-"+Ln+"Z"),ee.minY=ur-(Pt+Sr.height/2),ee.maxY=ur+(Pt+Sr.height/2),_.side==="right"?(ee.minX=Dr+Ln,ee.maxX=Dr+Ln+(Pt*2+Sr.width)):(ee.minX=Dr-Ln-(Pt*2+Sr.width),ee.maxX=Dr-Ln);var Fr=Sr.height/2,lt=F-Sr.top-Fr,xt="clip"+n._uid+"commonlabel"+_._id,Rt;if(DrUe.hoverinfo!=="none");if(tr.length===0)return[];var se=n.hoverlabel,ve=se.font,Ce=tr[0],Ie=((a==="x unified"?Ce.xa:Ce.ya).unifiedhovertitle||{}).text,ze=Ie?Hn.hovertemplateString({data:a==="x unified"?[{xa:Ce.xa,x:Ce.xVal}]:[{ya:Ce.ya,y:Ce.yVal}],fallback:Ce.trace.hovertemplatefallback,locale:n._d3locale,template:Ie}):M,Xe={showlegend:!0,legend:{title:{text:ze,font:ve},font:ve,bgcolor:se.bgcolor,bordercolor:se.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:n.legend?n.legend.traceorder:void 0,orientation:"v"}},Le={font:ve};OW(Xe,Le,t._fullData);var Qe=Le.legend;Qe.entries=[];for(var fe=0;fe=0?Oe=Je:dr+Be=0?Oe=dr:gr+Be=0?kr=lr:vr+Ne=0?kr=vr:Te+Ne=0,(tr.idealAlign==="top"||!pn)&&Mn?(Yr-=lt/2,tr.anchor="end"):pn?(Yr+=lt/2,tr.anchor="start"):tr.anchor="middle",tr.crossPos=Yr;else{if(tr.pos=Yr,pn=Lr+Fr/2+cn<=I,Mn=Lr-Fr/2-cn>=0,(tr.idealAlign==="left"||!pn)&&Mn)Lr-=Fr/2,tr.anchor="end";else if(pn)Lr+=Fr/2,tr.anchor="start";else{tr.anchor="middle";var Xt=cn/2,Qt=Lr+Xt-I,en=Lr-Xt;Qt>0&&(Lr-=Qt),en<0&&(Lr+=-en)}tr.crossPos=Lr}ur.attr("text-anchor",tr.anchor),Ae&&_e.attr("text-anchor",tr.anchor),Ue.attr("transform",Q3(Lr,Yr)+(i?FW(_T):""))}),{hoverLabels:Ur,commonLabelBoundingBox:ee}}function pT(e,r,t,n,a,i){var v,h;var o="",l="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=Hn.templateString(e.name,e.trace._meta)),o=yT(e.name,e.nameLength));var s=t.charAt(0),u=s==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(l+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(l+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(l+=(l?"z: ":"")+e.zLabel)):r&&e[s+"Label"]===a?l=e[u+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(l=e.yLabel):e.yLabel===void 0?l=e.xLabel:l="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(l+=(l?"
":"")+e.text),e.extraText!==void 0&&(l+=(l?"
":"")+e.extraText),i&&l===""&&!e.hovertemplate&&(o===""&&i.remove(),l=o),(h=(v=e.trace)==null?void 0:v.hoverlabel)!=null&&h.split&&(e.hovertemplate="");let{hovertemplate:f=!1}=e;if(f){let d=e.hovertemplateLabels||e;e[s+"Label"]!==a&&(d[s+"other"]=d[s+"Val"],d[s+"otherLabel"]=d[s+"Label"]),l=Hn.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:n._d3locale,template:f}),l=l.replace(XW,(m,p)=>(o=yT(p,e.nameLength),""))}return[l,o]}function jW(e,r,t,n){var a=r?"xa":"ya",i=r?"ya":"xa",o=0,l=1,s=e.size(),u=new Array(s),f=0,v=n.minX,h=n.maxX,d=n.minY,m=n.maxY,p=function(re){return re*t._invScaleX},y=function(re){return re*t._invScaleY};e.each(function(re){var ie=re[a],Q=re[i],ee=ie._id.charAt(0)==="x",se=ie.range;f===0&&se&&se[0]>se[1]!==ee&&(l=-1);var ve=0,Ce=ee?t.width:t.height;if(t.hovermode==="x"||t.hovermode==="y"){var Ie=MT(re,r),ze=re.anchor,Xe=ze==="end"?-1:1,Le,Qe;if(ze==="middle")Le=re.crossPos+(ee?y(Ie.y-re.by/2):p(re.bx/2+re.tx2width/2)),Qe=Le+(ee?y(re.by):p(re.bx));else if(ee)Le=re.crossPos+y(Ln+Ie.y)-y(re.by/2-Ln),Qe=Le+y(re.by);else{var fe=p(Xe*Ln+Ie.x),ye=fe+p(Xe*re.bx);Le=re.crossPos+Math.min(fe,ye),Qe=re.crossPos+Math.max(fe,ye)}ee?d!==void 0&&m!==void 0&&Math.min(Qe,m)-Math.max(Le,d)>1&&(Q.side==="left"?(ve=Q._mainLinePosition,Ce=t.width):Ce=Q._mainLinePosition):v!==void 0&&h!==void 0&&Math.min(Qe,h)-Math.max(Le,v)>1&&(Q.side==="top"?(ve=Q._mainLinePosition,Ce=t.height):Ce=Q._mainLinePosition)}u[f++]=[{datum:re,traceIndex:re.trace.index,dp:0,pos:re.pos,posref:re.posref,size:re.by*(ee?YW:1)/2,pmin:ve,pmax:Ce}]}),u.sort(function(re,ie){return re[0].posref-ie[0].posref||l*(ie[0].traceIndex-re[0].traceIndex)});var b,C,x,_,A,k,M;function E(re){var ie=re[0],Q=re[re.length-1];if(C=ie.pmin-ie.pos-ie.dp+ie.size,x=Q.pos+Q.dp+Q.size-ie.pmax,C>.01){for(A=re.length-1;A>=0;A--)re[A].dp+=C;b=!1}if(!(x<.01)){if(C<-.01){for(A=re.length-1;A>=0;A--)re[A].dp-=x;b=!1}if(b){var ee=0;for(_=0;_ie.pmax&&ee++;for(_=re.length-1;_>=0&&!(ee<=0);_--)k=re[_],k.pos>ie.pmax-1&&(k.del=!0,ee--);for(_=0;_=0;A--)re[A].dp-=x;for(_=re.length-1;_>=0&&!(ee<=0);_--)k=re[_],k.pos+k.dp+k.size>ie.pmax&&(k.del=!0,ee--)}}}for(;!b&&o<=s;){for(o++,b=!0,_=0;_.01){for(A=F.length-1;A>=0;A--)F[A].dp+=C;for(R.push.apply(R,F),u.splice(_+1,1),M=0,A=R.length-1;A>=0;A--)M+=R[A].dp;for(x=M/R.length,A=R.length-1;A>=0;A--)R[A].dp-=x;b=!1}else _++}u.forEach(E)}for(_=u.length-1;_>=0;_--){var O=u[_];for(A=O.length-1;A>=0;A--){var Z=O[A],V=Z.datum;V.offset=Z.dp,V.del=Z.del}}}function MT(e,r){var t=0,n=e.offset;return r&&(n*=-VW,t=e.offset*GW),{x:t,y:n}}function JW(e){var r={start:1,end:-1,middle:0}[e.anchor],t=r*(Ln+Pt),n=t+r*(e.txwidth+Pt),a=e.anchor==="middle";return a&&(t-=e.tx2width/2,n+=e.txwidth/2+Pt),{alignShift:r,textShiftX:t,text2ShiftX:n}}function AT(e,r,t,n){var a=function(o){return o*t},i=function(o){return o*n};e.each(function(o){var l=wc.select(this);if(o.del)return l.remove();var s=l.select("text.nums"),u=o.anchor,f=u==="end"?-1:1,v=JW(o),h=MT(o,r),d=h.x,m=h.y,p=u==="middle",y="hoverlabel"in o.trace?o.trace.hoverlabel.showarrow:!0,b;p?b="M-"+a(o.bx/2+o.tx2width/2)+","+i(m-o.by/2)+"h"+a(o.bx)+"v"+i(o.by)+"h-"+a(o.bx)+"Z":y?b="M0,0L"+a(f*Ln+d)+","+i(Ln+m)+"v"+i(o.by/2-Ln)+"h"+a(f*o.bx)+"v-"+i(o.by)+"H"+a(f*Ln+d)+"V"+i(m-Ln)+"Z":b="M"+a(f*Ln+d)+","+i(m-o.by/2)+"h"+a(f*o.bx)+"v"+i(o.by)+"h"+a(-f*o.bx)+"Z",l.select("path").attr("d",b);var C=d+v.textShiftX,x=m+o.ty0-o.by/2+Pt,_=o.textAlign||"auto";_!=="auto"&&(_==="left"&&u!=="start"?(s.attr("text-anchor","start"),C=p?-o.bx/2-o.tx2width/2+Pt:-o.bx-Pt):_==="right"&&u!=="end"&&(s.attr("text-anchor","end"),C=p?o.bx/2-o.tx2width/2-Pt:o.bx+Pt)),s.call(So.positionText,a(C),i(x)),o.tx2width&&(l.select("text.name").call(So.positionText,a(v.text2ShiftX+v.alignShift*Pt+d),i(m+o.ty0-o.by/2+Pt)),l.select("rect").call(os.setRect,a(v.text2ShiftX+(v.alignShift-1)*o.tx2width/2+d),i(m-o.by/2-1),a(o.tx2width),i(o.by+2)))})}function $W(e,r){var t=e.index,n=e.trace||{},a=e.cd[0],i=e.cd[t]||{};function o(h){return h||Qs(h)&&h===0}var l=Array.isArray(t)?function(h,d){var m=Hn.castOption(a,t,h);return o(m)?m:Hn.extractOption({},n,"",d)}:function(h,d){return Hn.extractOption(i,n,h,d)};function s(h,d,m){var p=l(d,m);o(p)&&(e[h]=p)}if(s("hoverinfo","hi","hoverinfo"),s("bgcolor","hbg","hoverlabel.bgcolor"),s("borderColor","hbc","hoverlabel.bordercolor"),s("fontFamily","htf","hoverlabel.font.family"),s("fontSize","hts","hoverlabel.font.size"),s("fontColor","htc","hoverlabel.font.color"),s("fontWeight","htw","hoverlabel.font.weight"),s("fontStyle","hty","hoverlabel.font.style"),s("fontVariant","htv","hoverlabel.font.variant"),s("nameLength","hnl","hoverlabel.namelength"),s("textAlign","hta","hoverlabel.align"),e.posref=r==="y"||r==="closest"&&n.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=Hn.constrain(e.x0,0,e.xa._length),e.x1=Hn.constrain(e.x1,0,e.xa._length),e.y0=Hn.constrain(e.y0,0,e.ya._length),e.y1=Hn.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:ls.hoverLabelText(e.xa,e.xLabelVal,n.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:ls.hoverLabelText(e.ya,e.yLabelVal,n.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var u=ls.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+u+" / -"+ls.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+u,r==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var f=ls.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+f+" / -"+ls.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+f,r==="y"&&(e.distance+=1)}var v=e.hoverinfo||e.trace.hoverinfo;return v&&v!=="all"&&(v=Array.isArray(v)?v:v.split("+"),v.indexOf("x")===-1&&(e.xLabel=void 0),v.indexOf("y")===-1&&(e.yLabel=void 0),v.indexOf("z")===-1&&(e.zLabel=void 0),v.indexOf("text")===-1&&(e.text=void 0),v.indexOf("name")===-1&&(e.name=void 0)),e}function gT(e,r,t){var n=t.container,a=t.fullLayout,i=a._size,o=t.event,l=!!r.hLinePoint,s=!!r.vLinePoint,u,f;if(n.selectAll(".spikeline").remove(),!!(s||l)){var v=ba.combine(a.plot_bgcolor,a.paper_bgcolor);if(l){var h=r.hLinePoint,d,m;u=h&&h.xa,f=h&&h.ya;var p=f.spikesnap;p==="cursor"?(d=o.pointerX,m=o.pointerY):(d=u._offset+h.x,m=f._offset+h.y);var y=vT.readability(h.color,v)<1.5?ba.contrast(v):h.color,b=f.spikemode,C=f.spikethickness,x=f.spikecolor||y,_=ls.getPxPosition(e,f),A,k;if(b.indexOf("toaxis")!==-1||b.indexOf("across")!==-1){if(b.indexOf("toaxis")!==-1&&(A=_,k=d),b.indexOf("across")!==-1){var M=f._counterDomainMin,E=f._counterDomainMax;f.anchor==="free"&&(M=Math.min(M,f.position),E=Math.max(E,f.position)),A=i.l+M*i.w,k=i.l+E*i.w}n.insert("line",":first-child").attr({x1:A,x2:k,y1:m,y2:m,"stroke-width":C,stroke:x,"stroke-dasharray":os.dashStyle(f.spikedash,C)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:A,x2:k,y1:m,y2:m,"stroke-width":C+2,stroke:v}).classed("spikeline",!0).classed("crisp",!0)}b.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:_+(f.side!=="right"?C:-C),cy:m,r:C,fill:x}).classed("spikeline",!0)}if(s){var R=r.vLinePoint,F,I;u=R&&R.xa,f=R&&R.ya;var W=u.spikesnap;W==="cursor"?(F=o.pointerX,I=o.pointerY):(F=u._offset+R.x,I=f._offset+R.y);var O=vT.readability(R.color,v)<1.5?ba.contrast(v):R.color,Z=u.spikemode,V=u.spikethickness,re=u.spikecolor||O,ie=ls.getPxPosition(e,u),Q,ee;if(Z.indexOf("toaxis")!==-1||Z.indexOf("across")!==-1){if(Z.indexOf("toaxis")!==-1&&(Q=ie,ee=I),Z.indexOf("across")!==-1){var se=u._counterDomainMin,ve=u._counterDomainMax;u.anchor==="free"&&(se=Math.min(se,u.position),ve=Math.max(ve,u.position)),Q=i.t+(1-ve)*i.h,ee=i.t+(1-se)*i.h}n.insert("line",":first-child").attr({x1:F,x2:F,y1:Q,y2:ee,"stroke-width":V,stroke:re,"stroke-dasharray":os.dashStyle(u.spikedash,V)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:F,x2:F,y1:Q,y2:ee,"stroke-width":V+2,stroke:v}).classed("spikeline",!0).classed("crisp",!0)}Z.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:F,cy:ie-(u.side!=="top"?V:-V),r:V,fill:re}).classed("spikeline",!0)}}}function KW(e,r,t){if(!t||t.length!==e._hoverdata.length)return!0;for(var n=t.length-1;n>=0;n--){var a=t[n],i=e._hoverdata[n];if(a.curveNumber!==i.curveNumber||String(a.pointNumber)!==String(i.pointNumber)||String(a.pointNumbers)!==String(i.pointNumbers)||a.binNumber!==i.binNumber)return!0}return!1}function mT(e,r){return!r||r.vLinePoint!==e._spikepoints.vLinePoint||r.hLinePoint!==e._spikepoints.hLinePoint}function yT(e,r){return So.plainText(e||"",{len:r,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function QW(e,r){for(var t=r.charAt(0),n=[],a=[],i=[],o=0;oe.offsetTop+e.clientTop,kT=e=>e.offsetLeft+e.clientLeft;function nv(e,r){var t=e._fullLayout,n=r.getBoundingClientRect(),a=n.left,i=n.top,o=a+n.width,l=i+n.height,s=Hn.apply3DTransform(t._invTransform)(a,i),u=Hn.apply3DTransform(t._invTransform)(o,l),f=s[0],v=s[1],h=u[0],d=u[1];return{x:f,y:v,width:h-f,height:d-v,top:Math.min(v,d),left:Math.min(f,h),right:Math.max(f,h),bottom:Math.max(v,d)}}});var Zp=te((vfe,ST)=>{"use strict";var eZ=pr(),rZ=Et(),tZ=Gu().isUnifiedHover;ST.exports=function(r,t,n,a){a=a||{};var i=t.legend;function o(l){a.font[l]||(a.font[l]=i?t.legend.font[l]:t.font[l])}t&&tZ(t.hovermode)&&(a.font||(a.font={}),o("size"),o("family"),o("color"),o("weight"),o("style"),o("variant"),i?(a.bgcolor||(a.bgcolor=rZ.combine(t.legend.bgcolor,t.paper_bgcolor)),a.bordercolor||(a.bordercolor=t.legend.bordercolor)):a.bgcolor||(a.bgcolor=t.paper_bgcolor)),n("hoverlabel.bgcolor",a.bgcolor),n("hoverlabel.bordercolor",a.bordercolor),n("hoverlabel.namelength",a.namelength),n("hoverlabel.showarrow",a.showarrow),eZ.coerceFont(n,"hoverlabel.font",a.font),n("hoverlabel.align",a.align)}});var LT=te((hfe,CT)=>{"use strict";var nZ=pr(),aZ=Zp(),iZ=x0();CT.exports=function(r,t){function n(a,i){return nZ.coerce(r,t,iZ,a,i)}aZ(r,t,n)}});var ET=te((dfe,DT)=>{"use strict";var qT=pr(),oZ=dd(),lZ=Zp();DT.exports=function(r,t,n,a){function i(l,s){return qT.coerce(r,t,oZ,l,s)}var o=qT.extendFlat({},a.hoverlabel);t.hovertemplate&&(o.namelength=-1),lZ(r,t,i,o)}});var n5=te((pfe,PT)=>{"use strict";var sZ=pr(),uZ=x0();PT.exports=function(r,t){function n(a,i){return t[a]!==void 0?t[a]:sZ.coerce(r,t,uZ,a,i)}return n("clickmode"),n("hoversubplots"),n("hovermode")}});var NT=te((gfe,zT)=>{"use strict";var RT=pr(),fZ=x0(),cZ=n5(),vZ=Zp();zT.exports=function(r,t){function n(f,v){return RT.coerce(r,t,fZ,f,v)}var a=cZ(r,t);a&&(n("hoverdistance"),n("spikedistance"));var i=n("dragmode");i==="select"&&n("selectdirection");var o=t._has("mapbox"),l=t._has("map"),s=t._has("geo"),u=t._basePlotModules.length;t.dragmode==="zoom"&&((o||l||s)&&u===1||(o||l)&&s&&u===2)&&(t.dragmode="pan"),vZ(r,t,n),RT.coerceFont(n,"hoverlabel.grouptitlefont",t.hoverlabel.font)}});var HT=te((mfe,IT)=>{"use strict";var a5=pr(),FT=dt();IT.exports=function(r){var t=r.calcdata,n=r._fullLayout;function a(u){return function(f){return a5.coerceHoverinfo({hoverinfo:f},{_module:u._module},n)}}for(var i=0;i{"use strict";var dZ=dt(),pZ=t5().hover;BT.exports=function(r,t,n){var a=dZ.getComponentMethod("annotations","onClick")(r,r._hoverdata);n!==void 0&&pZ(r,t,n,!0);function i(){r.emit("plotly_click",{points:r._hoverdata,event:t})}r._hoverdata&&t&&t.target&&(a&&a.then?a.then(i):i(),t.stopImmediatePropagation&&t.stopImmediatePropagation())}});var ss=te((bfe,GT)=>{"use strict";var gZ=kt(),Xp=pr(),mZ=To(),N1=Gu(),UT=x0(),YT=t5();GT.exports={moduleType:"component",name:"fx",constants:i1(),schema:{layout:UT},attributes:dd(),layoutAttributes:UT,supplyLayoutGlobalDefaults:LT(),supplyDefaults:ET(),supplyLayoutDefaults:NT(),calc:HT(),getDistanceFunction:N1.getDistanceFunction,getClosest:N1.getClosest,inbox:N1.inbox,quadrature:N1.quadrature,appendArrayPointValue:N1.appendArrayPointValue,castHoverOption:bZ,castHoverinfo:_Z,hover:YT.hover,unhover:mZ.unhover,loneHover:YT.loneHover,loneUnhover:yZ,click:OT()};function yZ(e){var r=Xp.isD3Selection(e)?e:gZ.select(e);r.selectAll("g.hovertext").remove(),r.selectAll(".spikeline").remove()}function bZ(e,r,t){return Xp.castOption(e,r,"hoverlabel."+t)}function _Z(e,r,t){function n(a){return Xp.coerceHoverinfo({hoverinfo:a},{_module:e._module},r)}return Xp.castOption(e,t,"hoverinfo",n)}});var iv=te(eu=>{"use strict";eu.selectMode=function(e){return e==="lasso"||e==="select"};eu.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};eu.openMode=function(e){return e==="drawline"||e==="drawopenpath"};eu.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};eu.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};eu.selectingOrDrawing=function(e){return eu.freeMode(e)||eu.rectMode(e)}});var jp=te((xfe,VT)=>{"use strict";VT.exports=function(r){var t=r._fullLayout;t._glcanvas&&t._glcanvas.size()&&t._glcanvas.each(function(n){n.regl&&n.regl.clear({color:!0,depth:!0})})}});var Jp=te((wfe,WT)=>{"use strict";WT.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var Kp=te((Mfe,ZT)=>{"use strict";var $p=32;ZT.exports={CIRCLE_SIDES:$p,i000:0,i090:$p/4,i180:$p/2,i270:$p/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var Qp=te((Afe,jT)=>{"use strict";var xZ=pr().strTranslate;function XT(e,r){switch(e.type){case"log":return e.p2d(r);case"date":return e.p2r(r,0,e.calendar);default:return e.p2r(r)}}function wZ(e,r){switch(e.type){case"log":return e.d2p(r);case"date":return e.r2p(r,0,e.calendar);default:return e.r2p(r)}}function MZ(e){var r=e._id.charAt(0)==="y"?1:0;return function(t){return XT(e,t[r])}}function AZ(e){return xZ(e.xaxis._offset,e.yaxis._offset)}jT.exports={p2r:XT,r2p:wZ,axValue:MZ,getTransform:AZ}});var Ku=te(ru=>{"use strict";var TZ=W2(),KT=Kp(),ov=KT.CIRCLE_SIDES,i5=KT.SQRT2,QT=Qp(),JT=QT.p2r,$T=QT.r2p,kZ=[0,3,4,5,6,1,2],SZ=[0,3,4,1,2];ru.writePaths=function(e){var r=e.length;if(!r)return"M0,0Z";for(var t="",n=0;n0&&s{"use strict";var ek=fa(),ik=iv(),CZ=ik.drawMode,LZ=ik.openMode,lv=Kp(),rk=lv.i000,tk=lv.i090,nk=lv.i180,ak=lv.i270,qZ=lv.cos45,DZ=lv.sin45,ok=Qp(),rg=ok.p2r,Qu=ok.r2p,EZ=Uu(),PZ=EZ.clearOutline,tg=Ku(),RZ=tg.readPaths,zZ=tg.writePaths,NZ=tg.ellipseOver,FZ=tg.fixDatesForPaths;function IZ(e,r){if(e.length){var t=e[0][0];if(t){var n=r.gd,a=r.isActiveShape,i=r.dragmode,o=(n.layout||{}).shapes||[];if(!CZ(i)&&a!==void 0){var l=n._fullLayout._activeShapeIndex;if(l{"use strict";var HZ=iv(),BZ=HZ.selectMode,OZ=Uu(),UZ=OZ.clearOutline,o5=Ku(),YZ=o5.readPaths,GZ=o5.writePaths,VZ=o5.fixDatesForPaths;uk.exports=function(r,t){if(r.length){var n=r[0][0];if(n){var a=n.getAttribute("d"),i=t.gd,o=i._fullLayout.newselection,l=t.plotinfo,s=l.xaxis,u=l.yaxis,f=t.isActiveSelection,v=t.dragmode,h=(i.layout||{}).selections||[];if(!BZ(v)&&f!==void 0){var d=i._fullLayout._activeSelectionIndex;if(d{"use strict";fk.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var ef=te(Ta=>{"use strict";var Ac=I1(),ck=pr(),ag=Dn();Ta.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(r){return r}};Ta.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(r){return r}};Ta.decodeDate=function(e){return function(r){return r.replace&&(r=r.replace("_"," ")),e(r)}};Ta.encodeDate=function(e){return function(r){return e(r).replace(" ","_")}};Ta.extractPathCoords=function(e,r,t){var n=[],a=e.match(Ac.segmentRE);return a.forEach(function(i){var o=r[i.charAt(0)].drawn;if(o!==void 0){var l=i.slice(1).match(Ac.paramRE);if(!(!l||l.lengthd&&(p="X"),p});return u>d&&(m=m.replace(/[\s,]*X.*/,""),ck.log("Ignoring extra params in segment "+s)),f+m})}function H1(e,r){r=r||0;var t=0;return r&&e&&(e.type==="category"||e.type==="multicategory")&&(t=(e.r2p(1)-e.r2p(0))*r),t}});var u5=te((qfe,pk)=>{"use strict";var ZZ=pr(),sv=Dn(),vk=vi(),hk=fn(),XZ=Ku().readPaths,s5=ef(),jZ=s5.getPathString,dk=Md(),JZ=Ka().FROM_TL;pk.exports=function(r,t,n,a){if(a.selectAll(".shape-label").remove(),!!(n.label.text||n.label.texttemplate)){var i;if(n.label.texttemplate){var o={};if(n.type!=="path"){var l=sv.getFromId(r,n.xref),s=sv.getFromId(r,n.yref);for(var u in dk){var f=dk[u](n,l,s);f!==void 0&&(o[u]=f)}}i=ZZ.texttemplateStringForShapes({data:[o],fallback:n.label.texttemplatefallback,locale:r._fullLayout._d3locale,template:n.label.texttemplate})}else i=n.label.text;var v={"data-index":t},h=n.label.font,d={"data-notex":1},m=a.append("g").attr(v).classed("shape-label",!0),p=m.append("text").attr(d).classed("shape-label-text",!0).text(i),y,b,C,x;if(n.path){var _=jZ(r,n),A=XZ(_,r);y=1/0,C=1/0,b=-1/0,x=-1/0;for(var k=0;k=e?a=r-n:a=n-r,-180/Math.PI*Math.atan2(a,i)}function KZ(e,r,t,n,a,i,o){var l=a.label.textposition,s=a.label.textangle,u=a.label.padding,f=a.type,v=Math.PI/180*i,h=Math.sin(v),d=Math.cos(v),m=a.label.xanchor,p=a.label.yanchor,y,b,C,x;if(f==="line"){l==="start"?(y=e,b=r):l==="end"?(y=t,b=n):(y=(e+t)/2,b=(r+n)/2),m==="auto"&&(l==="start"?s==="auto"?t>e?m="left":te?m="right":te?m="right":te?m="left":t{"use strict";var QZ=pr(),eX=QZ.strTranslate,gk=To(),bk=iv(),rX=bk.drawMode,_k=bk.selectMode,xk=dt(),mk=Et(),og=Kp(),tX=og.i000,nX=og.i090,aX=og.i180,iX=og.i270,oX=Uu(),wk=oX.clearOutlineControllers,c5=Ku(),ig=c5.pointsOnRectangle,f5=c5.pointsOnEllipse,lX=c5.writePaths,sX=ng().newShapes,uX=ng().createShapeObj,fX=l5(),cX=u5();Mk.exports=function e(r,t,n,a){a||(a=0);var i=n.gd;function o(){e(r,t,n,a++),(f5(r[0])||n.hasText)&&l({redrawing:!0})}function l(ie){var Q={};n.isActiveShape!==void 0&&(n.isActiveShape=!1,Q=sX(t,n)),n.isActiveSelection!==void 0&&(n.isActiveSelection=!1,Q=fX(t,n),i._fullLayout._reselect=!0),Object.keys(Q).length&&xk.call((ie||{}).redrawing?"relayout":"_guiRelayout",i,Q)}var s=i._fullLayout,u=s._zoomlayer,f=n.dragmode,v=rX(f),h=_k(f);(v||h)&&(i._fullLayout._outlining=!0),wk(i),t.attr("d",lX(r));var d,m,p,y,b;if(!a&&(n.isActiveShape||n.isActiveSelection)){b=vX([],r);var C=u.append("g").attr("class","outline-controllers");F(C),re()}if(v&&n.hasText){var x=u.select(".label-temp"),_=uX(t,n,n.dragmode);cX(i,"label-temp",_,x)}function A(ie){p=+ie.srcElement.getAttribute("data-i"),y=+ie.srcElement.getAttribute("data-j"),d[p][y].moveFn=k}function k(ie,Q){if(r.length){var ee=b[p][y][1],se=b[p][y][2],ve=r[p],Ce=ve.length;if(ig(ve)){var Ie=ie,ze=Q;if(n.isActiveSelection){var Xe=yk(ve,y);Xe[1]===ve[y][1]?ze=0:Ie=0}for(var Le=0;Le1&&!(ie.length===2&&ie[1][0]==="Z")&&(y===0&&(ie[0][0]="M"),r[p]=ie,o(),l())}}function R(ie,Q){if(ie===2){p=+Q.srcElement.getAttribute("data-i"),y=+Q.srcElement.getAttribute("data-j");var ee=r[p];!ig(ee)&&!f5(ee)&&E()}}function F(ie){d=[];for(var Q=0;Q{"use strict";var dX=kt(),Lk=dt(),Ak=pr(),uv=Dn(),pX=Ku().readPaths,gX=lg(),ug=u5(),qk=Uu().clearOutlineControllers,v5=Et(),d5=fn(),mX=_n().arrayEditor,Tk=To(),kk=$u(),Tc=I1(),zi=ef(),h5=zi.getPathString;Pk.exports={draw:p5,drawOne:Dk,eraseActiveShape:_X,drawLabel:ug};function p5(e){var r=e._fullLayout;r._shapeUpperLayer.selectAll("path").remove(),r._shapeLowerLayer.selectAll("path").remove(),r._shapeUpperLayer.selectAll("text").remove(),r._shapeLowerLayer.selectAll("text").remove();for(var t in r._plots){var n=r._plots[t].shapelayer;n&&(n.selectAll("path").remove(),n.selectAll("text").remove())}for(var a=0;ao&&lr>l&&!or.shiftKey?Tk.getCursor(vr/nr,1-Je/lr):"move";kk(r,dr),Qe=dr.split("-")[0]}}function pe(or){sg(e)||(s&&(b=ve(t.xanchor)),u&&(C=Ce(t.yanchor)),t.type==="path"?I=t.path:(d=s?t.x0:ve(t.x0),m=u?t.y0:Ce(t.y0),p=s?t.x1:ve(t.x1),y=u?t.y1:Ce(t.y1)),dy?(x=m,M="y0",_=y,E="y1"):(x=y,M="y1",_=m,E="y0"),Me(or),Be(a,t),ir(r,t,e),Le.moveFn=Qe==="move"?$:ke,Le.altKey=or.altKey)}function U(){sg(e)||(kk(r),Ne(a),Ek(r,e,t),Lk.call("_guiRelayout",e,i.getUpdateObj()))}function K(){sg(e)||Ne(a)}function $(or,Ye){if(t.type==="path"){var nr=function(Je){return Je},lr=nr,vr=nr;s?h("xanchor",t.xanchor=Ie(b+or)):(lr=function(dr){return Ie(ve(dr)+or)},O&&O.type==="date"&&(lr=zi.encodeDate(lr))),u?h("yanchor",t.yanchor=ze(C+Ye)):(vr=function(dr){return ze(Ce(dr)+Ye)},V&&V.type==="date"&&(vr=zi.encodeDate(vr))),h("path",t.path=Sk(I,lr,vr))}else s?h("xanchor",t.xanchor=Ie(b+or)):(h("x0",t.x0=Ie(d+or)),h("x1",t.x1=Ie(p+or))),u?h("yanchor",t.yanchor=ze(C+Ye)):(h("y0",t.y0=ze(m+Ye)),h("y1",t.y1=ze(y+Ye)));r.attr("d",h5(e,t)),Be(a,t),ug(e,n,t,W)}function ke(or,Ye){if(v){var nr=function(wr){return wr},lr=nr,vr=nr;s?h("xanchor",t.xanchor=Ie(b+or)):(lr=function(Hr){return Ie(ve(Hr)+or)},O&&O.type==="date"&&(lr=zi.encodeDate(lr))),u?h("yanchor",t.yanchor=ze(C+Ye)):(vr=function(Hr){return ze(Ce(Hr)+Ye)},V&&V.type==="date"&&(vr=zi.encodeDate(vr))),h("path",t.path=Sk(I,lr,vr))}else if(f){if(Qe==="resize-over-start-point"){var Je=d+or,dr=u?m-Ye:m+Ye;h("x0",t.x0=s?Je:Ie(Je)),h("y0",t.y0=u?dr:ze(dr))}else if(Qe==="resize-over-end-point"){var gr=p+or,Te=u?y-Ye:y+Ye;h("x1",t.x1=s?gr:Ie(gr)),h("y1",t.y1=u?Te:ze(Te))}}else{var Oe=function(wr){return Qe.indexOf(wr)!==-1},kr=Oe("n"),Ur=Oe("s"),tr=Oe("w"),Ue=Oe("e"),Ze=kr?x+Ye:x,mr=Ur?_+Ye:_,Tr=tr?A+or:A,yr=Ue?k+or:k;u&&(kr&&(Ze=x-Ye),Ur&&(mr=_-Ye)),(!u&&mr-Ze>l||u&&Ze-mr>l)&&(h(M,t[M]=u?Ze:ze(Ze)),h(E,t[E]=u?mr:ze(mr))),yr-Tr>o&&(h(R,t[R]=s?Tr:Ie(Tr)),h(F,t[F]=s?yr:Ie(yr)))}r.attr("d",h5(e,t)),Be(a,t),ug(e,n,t,W)}function Be(or,Ye){(s||u)&&nr();function nr(){var lr=Ye.type!=="path",vr=or.selectAll(".visual-cue").data([0]),Je=1;vr.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":Je}).classed("visual-cue",!0);var dr=ve(s?Ye.xanchor:Ak.midRange(lr?[Ye.x0,Ye.x1]:zi.extractPathCoords(Ye.path,Tc.paramIsX))),gr=Ce(u?Ye.yanchor:Ak.midRange(lr?[Ye.y0,Ye.y1]:zi.extractPathCoords(Ye.path,Tc.paramIsY)));if(dr=zi.roundPositionForSharpStrokeRendering(dr,Je),gr=zi.roundPositionForSharpStrokeRendering(gr,Je),s&&u){var Te="M"+(dr-1-Je)+","+(gr-1-Je)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";vr.attr("d",Te)}else if(s){var Oe="M"+(dr-1-Je)+","+(gr-9-Je)+"v18 h2 v-18 Z";vr.attr("d",Oe)}else{var kr="M"+(dr-9-Je)+","+(gr-1-Je)+"h18 v2 h-18 Z";vr.attr("d",kr)}}}function Ne(or){or.selectAll(".visual-cue").remove()}function ir(or,Ye,nr){var lr=Ye.xref,vr=Ye.yref,Je=uv.getFromId(nr,lr),dr=uv.getFromId(nr,vr),gr="";lr!=="paper"&&!Je.autorange&&(gr+=lr),vr!=="paper"&&!dr.autorange&&(gr+=vr),d5.setClipUrl(or,gr?"clip"+nr._fullLayout._uid+gr:null,nr)}}function Sk(e,r,t){return e.replace(Tc.segmentRE,function(n){var a=0,i=n.charAt(0),o=Tc.paramIsX[i],l=Tc.paramIsY[i],s=Tc.numParams[i],u=n.slice(1).replace(Tc.paramRE,function(f){return a>=s||(o[a]?f=r(f):l[a]&&(f=t(f)),a++),f});return i+u})}function bX(e,r){if(fg(e)){var t=r.node(),n=+t.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeShapeIndex){Ck(e);return}e._fullLayout._activeShapeIndex=n,e._fullLayout._deactivateShape=Ck,p5(e)}}}function Ck(e){if(fg(e)){var r=e._fullLayout._activeShapeIndex;r>=0&&(qk(e),delete e._fullLayout._activeShapeIndex,p5(e))}}function _X(e){if(fg(e)){qk(e);var r=e._fullLayout._activeShapeIndex,t=(e.layout||{}).shapes||[];if(r{"use strict";var Co=dt(),Rk=ca(),zk=fa(),Bt=Jp(),xX=cg().eraseActiveShape,vg=pr(),qt=vg._,Ot=Uk.exports={};Ot.toImage={name:"toImage",title:function(e){var r=e._context.toImageButtonOptions||{},t=r.format||"png";return t==="png"?qt(e,"Download plot as a PNG"):qt(e,"Download plot")},icon:Bt.camera,click:function(e){var r=e._context.toImageButtonOptions,t={format:r.format||"png"};vg.notifier(qt(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(n){n in r&&(t[n]=r[n])}),Co.call("downloadImage",e,t).then(function(n){vg.notifier(qt(e,"Snapshot succeeded")+" - "+n,"long")}).catch(function(){vg.notifier(qt(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Ot.sendDataToCloud={name:"sendDataToCloud",title:function(e){return qt(e,"Edit in Chart Studio")},icon:Bt.disk,click:function(e){Rk.sendDataToCloud(e)}};Ot.editInChartStudio={name:"editInChartStudio",title:function(e){return qt(e,"Edit in Chart Studio")},icon:Bt.pencil,click:function(e){Rk.sendDataToCloud(e)}};Ot.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return qt(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Bt.zoombox,click:ti};Ot.pan2d={name:"pan2d",_cat:"pan",title:function(e){return qt(e,"Pan")},attr:"dragmode",val:"pan",icon:Bt.pan,click:ti};Ot.select2d={name:"select2d",_cat:"select",title:function(e){return qt(e,"Box Select")},attr:"dragmode",val:"select",icon:Bt.selectbox,click:ti};Ot.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return qt(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Bt.lasso,click:ti};Ot.drawclosedpath={name:"drawclosedpath",title:function(e){return qt(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Bt.drawclosedpath,click:ti};Ot.drawopenpath={name:"drawopenpath",title:function(e){return qt(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Bt.drawopenpath,click:ti};Ot.drawline={name:"drawline",title:function(e){return qt(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Bt.drawline,click:ti};Ot.drawrect={name:"drawrect",title:function(e){return qt(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Bt.drawrect,click:ti};Ot.drawcircle={name:"drawcircle",title:function(e){return qt(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Bt.drawcircle,click:ti};Ot.eraseshape={name:"eraseshape",title:function(e){return qt(e,"Erase active shape")},icon:Bt.eraseshape,click:xX};Ot.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return qt(e,"Zoom in")},attr:"zoom",val:"in",icon:Bt.zoom_plus,click:ti};Ot.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return qt(e,"Zoom out")},attr:"zoom",val:"out",icon:Bt.zoom_minus,click:ti};Ot.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return qt(e,"Autoscale")},attr:"zoom",val:"auto",icon:Bt.autoscale,click:ti};Ot.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return qt(e,"Reset axes")},attr:"zoom",val:"reset",icon:Bt.home,click:ti};Ot.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return qt(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Bt.tooltip_basic,gravity:"ne",click:ti};Ot.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return qt(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Bt.tooltip_compare,gravity:"ne",click:ti};function ti(e,r){var t=r.currentTarget,n=t.getAttribute("data-attr"),a=t.getAttribute("data-val")||!0,i=e._fullLayout,o={},l=zk.list(e,null,!0),s=i._cartesianSpikesEnabled,u,f;if(n==="zoom"){var v=a==="in"?.5:2,h=(1+v)/2,d=(1-v)/2,m,p;for(f=0;f{"use strict";var Yk=y5(),AX=Object.keys(Yk),Gk=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],Vk=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(Gk),cv=[],TX=function(e){if(Vk.indexOf(e._cat||e.name)===-1){var r=e.name,t=(e._cat||e.name).toLowerCase();cv.indexOf(r)===-1&&cv.push(r),cv.indexOf(t)===-1&&cv.push(t)}};AX.forEach(function(e){TX(Yk[e])});cv.sort();Wk.exports={DRAW_MODES:Gk,backButtons:Vk,foreButtons:cv}});var _5=te((Nfe,Zk)=>{"use strict";var zfe=b5();Zk.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var jk=te((Ffe,Xk)=>{"use strict";var kX=pr(),B1=Et(),SX=_n(),CX=_5();Xk.exports=function(r,t){var n=r.modebar||{},a=SX.newContainer(t,"modebar");function i(l,s){return kX.coerce(n,a,CX,l,s)}i("orientation"),i("bgcolor",B1.addOpacity(t.paper_bgcolor,.5));var o=B1.contrast(B1.rgb(t.modebar.bgcolor));i("color",B1.addOpacity(o,.3)),i("activecolor",B1.addOpacity(o,.7)),i("uirevision",t.uirevision),i("add"),i("remove")}});var Qk=te((Ife,Kk)=>{"use strict";var x5=kt(),LX=Ht(),dg=pr(),Jk=Jp(),qX=nd().version,DX=new DOMParser;function $k(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var us=$k.prototype;us.update=function(e,r){this.graphInfo=e;var t=this.graphInfo._context,n=this.graphInfo._fullLayout,a="modebar-"+n._uid;this.element.setAttribute("id",a),this.element.setAttribute("role","toolbar"),this._uid=a,this.element.className="modebar modebar--custom",t.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),n.modebar.orientation==="v"&&(this.element.className+=" vertical",r=r.reverse());var i=n.modebar,o="#"+a+" .modebar-group";document.querySelectorAll(o).forEach(function(v){v.style.backgroundColor=i.bgcolor});var l=!this.hasButtons(r),s=this.hasLogo!==t.displaylogo,u=this.locale!==t.locale;if(this.locale=t.locale,(l||s||u)&&(this.removeAllButtons(),this.updateButtons(r),t.watermark||t.displaylogo)){var f=this.getLogo();t.watermark&&(f.className=f.className+" watermark"),n.modebar.orientation==="v"?this.element.insertBefore(f,this.element.childNodes[0]):this.element.appendChild(f),this.hasLogo=!0}this.updateActiveButton(),dg.setStyleOnHover("#"+a+" .modebar-btn",".active",".icon path","fill: "+i.activecolor,"fill: "+i.color,this.element)};us.updateButtons=function(e){var r=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(t){var n=r.createGroup();t.forEach(function(a){var i=a.name;if(!i)throw new Error("must provide button 'name' in button config");if(r.buttonsNames.indexOf(i)!==-1)throw new Error("button name '"+i+"' is taken");r.buttonsNames.push(i);var o=r.createButton(a);r.buttonElements.push(o),n.appendChild(o)}),r.element.appendChild(n)})};us.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var r=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=r.bgcolor,e};us.createButton=function(e){var r=this,t=document.createElement("button");t.setAttribute("type","button"),t.setAttribute("rel","tooltip"),t.className="modebar-btn";var n=e.title;n===void 0?n=e.name:typeof n=="function"&&(n=n(this.graphInfo)),(n||n===0)&&(t.setAttribute("data-title",n),t.setAttribute("aria-label",n)),e.attr!==void 0&&t.setAttribute("data-attr",e.attr);var a=e.val;a!==void 0&&(typeof a=="function"&&(a=a(this.graphInfo)),t.setAttribute("data-val",a));var i=e.click;if(typeof i!="function")throw new Error("must provide button 'click' function in button config");t.addEventListener("click",function(l){e.click(r.graphInfo,l),r.updateActiveButton(l.currentTarget)}),t.setAttribute("data-toggle",e.toggle||!1),e.toggle&&x5.select(t).classed("active",!0);var o=e.icon;return typeof o=="function"?t.appendChild(o()):t.appendChild(this.createIcon(o||Jk.question)),t.setAttribute("data-gravity",e.gravity||"n"),t};us.createIcon=function(e){var r=LX(e.height)?Number(e.height):e.ascent-e.descent,t="http://www.w3.org/2000/svg",n;if(e.path){n=document.createElementNS(t,"svg"),n.setAttribute("viewBox",[0,0,e.width,r].join(" ")),n.setAttribute("class","icon");var a=document.createElementNS(t,"path");a.setAttribute("d",e.path),e.transform?a.setAttribute("transform",e.transform):e.ascent!==void 0&&a.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),n.appendChild(a)}if(e.svg){var i=DX.parseFromString(e.svg,"application/xml");n=i.childNodes[0]}return n.setAttribute("height","1em"),n.setAttribute("width","1em"),n};us.updateActiveButton=function(e){var r=this.graphInfo._fullLayout,t=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(n){var a=n.getAttribute("data-val")||!0,i=n.getAttribute("data-attr"),o=n.getAttribute("data-toggle")==="true",l=x5.select(n),s=function(v,h){var d=r.modebar,m=v.querySelector(".icon path");m&&(h||v.matches(":hover")?m.style.fill=d.activecolor:m.style.fill=d.color)};if(o){if(i===t){var u=!l.classed("active");l.classed("active",u),s(n,u)}}else{var f=i===null?i:dg.nestedProperty(r,i).get();l.classed("active",f===a),s(n,f===a)}})};us.hasButtons=function(e){var r=this.buttons;if(!r||e.length!==r.length)return!1;for(var t=0;t{"use strict";var RX=fa(),eS=Qa(),w5=dt(),zX=Gu().isUnifiedHover,NX=Qk(),pg=y5(),FX=b5().DRAW_MODES,IX=pr().extendDeep;rS.exports=function(r){var t=r._fullLayout,n=r._context,a=t._modeBar;if(!n.displayModeBar&&!n.watermark){a&&(a.destroy(),delete t._modeBar);return}if(!Array.isArray(n.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(n.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var i=n.modeBarButtons,o;Array.isArray(i)&&i.length?o=GX(i):!n.displayModeBar&&n.watermark?o=[]:o=HX(r),a?a.update(r,o):t._modeBar=NX(r,o)};function HX(e){var r=e._fullLayout,t=e._fullData,n=e._context;function a(Q,ee){if(typeof ee=="string"){if(ee.toLowerCase()===Q.toLowerCase())return!0}else{var se=ee.name,ve=ee._cat||ee.name;if(se===Q||ve===Q.toLowerCase())return!0}return!1}var i=r.modebar.add;typeof i=="string"&&(i=[i]);var o=r.modebar.remove;typeof o=="string"&&(o=[o]);var l=n.modeBarButtonsToAdd.concat(i.filter(function(Q){for(var ee=0;ee1?(F=["toggleHover"],I=["resetViews"]):v?(R=["zoomInGeo","zoomOutGeo"],F=["hoverClosestGeo"],I=["resetGeo"]):f?(F=["hoverClosest3d"],I=["resetCameraDefault3d","resetCameraLastSave3d"]):p?(R=["zoomInMapbox","zoomOutMapbox"],F=["toggleHover"],I=["resetViewMapbox"]):y?(R=["zoomInMap","zoomOutMap"],F=["toggleHover"],I=["resetViewMap"]):h?F=["hoverClosestPie"]:x?(F=["hoverClosestCartesian","hoverCompareCartesian"],I=["resetViewSankey"]):F=["toggleHover"],u&&F.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(UX(t)||A)&&(F=[]),u&&!_&&(R=["zoomIn2d","zoomOut2d","autoScale2d"],I[0]!=="resetViews"&&(I=["resetScale2d"])),f?W=["zoom3d","pan3d","orbitRotation","tableRotation"]:u&&!_||m?W=["zoom2d","pan2d"]:p||y||v?W=["pan2d"]:b&&(W=["zoom2d"]),OX(t)&&W.push("select2d","lasso2d");var O=[],Z=function(Q){O.indexOf(Q)===-1&&F.indexOf(Q)!==-1&&O.push(Q)};if(Array.isArray(l)){for(var V=[],re=0;re{"use strict";nS.exports={moduleType:"component",name:"modebar",layoutAttributes:_5(),supplyLayoutDefaults:jk(),manage:tS()}});var A5=te((Ofe,aS)=>{"use strict";var VX=Ka().FROM_BL;aS.exports=function(r,t,n){n===void 0&&(n=VX[r.constraintoward||"center"]);var a=[r.r2l(r.range[0]),r.r2l(r.range[1])],i=a[0]+(a[1]-a[0])*n;r.range=r._input.range=[r.l2r(i+(a[0]-i)*t),r.l2r(i+(a[1]-i)*t)],r.setScale()}});var U1=te(O1=>{"use strict";var kc=pr(),T5=ju(),xl=fa().id2name,WX=ml(),iS=A5(),ZX=bp(),XX=Rn().ALMOST_EQUAL,jX=Ka().FROM_BL;O1.handleDefaults=function(e,r,t){var n=t.axIds,a=t.axHasImage,i=r._axisConstraintGroups=[],o=r._axisMatchGroups=[],l,s,u,f,v,h,d,m;for(l=0;li?t.slice(i):n.slice(a))+o}function $X(e,r){for(var t=r._size,n=t.h/t.w,a={},i=Object.keys(e),o=0;oXX*m&&!C)){for(i=0;iW&&seF&&(F=se);var Ce=(F-R)/(2*I);v/=Ce,R=s.l2r(R),F=s.l2r(F),s.range=s._input.range=k{"use strict";var mg=kt(),ni=dt(),ro=ca(),Lo=pr(),C5=vi(),L5=jp(),Y1=Et(),vv=fn(),uS=k1(),dS=M5(),G1=Dn(),tu=Ka(),pS=U1(),KX=pS.enforce,QX=pS.clean,fS=ju().doAutoRange,gS="start",ej="middle",mS="end",rj=Ea().zindexSeparator;_a.layoutStyles=function(e){return Lo.syncOrAsync([ro.doAutoMargin,nj],e)};function tj(e,r,t){for(var n=0;n=e[1]||a[1]<=e[0])&&i[0]r[0])return!0}return!1}function nj(e){var r=e._fullLayout,t=r._size,n=t.p,a=G1.list(e,"",!0),i,o,l,s,u,f;if(r._paperdiv.style({width:e._context.responsive&&r.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":r.width+"px",height:e._context.responsive&&r.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":r.height+"px"}).selectAll(".main-svg").call(vv.setSize,r.width,r.height),e._context.setBackground(e,r.paper_bgcolor),_a.drawMainTitle(e),dS.manage(e),!r._has("cartesian"))return ro.previousPromises(e);function v(pe,U,K){var $=pe._lw/2;if(pe._id.charAt(0)==="x"){if(U){if(K==="top")return U._offset-n-$}else return t.t+t.h*(1-(pe.position||0))+$%1;return U._offset+U._length+n+$}if(U){if(K==="right")return U._offset+U._length+n+$}else return t.l+t.w*(pe.position||0)+$%1;return U._offset-n-$}for(i=0;i0){lj(e,i,u,s),l.attr({x:o,y:i,"text-anchor":n,dy:hS(r.yanchor)}).call(C5.positionText,o,i);var f=(r.text.match(C5.BR_TAG_ALL)||[]).length;if(f){var v=tu.LINE_SPACING*f+tu.MID_SHIFT;r.y===0&&(v=-v),l.selectAll(".line").each(function(){var y=+this.getAttribute("dy").slice(0,-2)-v+"em";this.setAttribute("dy",y)})}var h=mg.select(e).selectAll(".gtitle-subtitle");if(h.node()){var d=l.node().getBBox(),m=d.y+d.height,p=m+uS.SUBTITLE_PADDING_EM*r.subtitle.font.size;h.attr({x:o,y:p,"text-anchor":n,dy:hS(r.yanchor)}).call(C5.positionText,o,p)}}}};function aj(e,r,t,n,a){var i=r.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,o=Lo.isTopAnchor(r)?n:n-a,l=t==="b"?i-o:o;return Lo.isTopAnchor(r)&&t==="t"||Lo.isBottomAnchor(r)&&t==="b"?!1:l.5?"t":"b",o=e._fullLayout.margin[i],l=0;return r.yref==="paper"?l=t+r.pad.t+r.pad.b:r.yref==="container"&&(l=ij(i,n,a,e._fullLayout.height,t)+r.pad.t+r.pad.b),l>o?l:0}function lj(e,r,t,n){var a="title.automargin",i=e._fullLayout.title,o=i.y>.5?"t":"b",l={x:i.x,y:i.y,t:0,b:0},s={};i.yref==="paper"&&aj(e,i,o,r,n)?l[o]=t:i.yref==="container"&&(s[o]=t,e._fullLayout._reservedMargin[a]=s),ro.allowAutoMargin(e,a),ro.autoMargin(e,a,l)}function sj(e,r){var t=e.title,n=e._size,a=0;switch(r===gS?a=t.pad.l:r===mS&&(a=-t.pad.r),t.xref){case"paper":return n.l+n.w*t.x+a;case"container":default:return e.width*t.x+a}}function uj(e,r){var t=e.title,n=e._size,a=0;if(r==="0em"||!r?a=-t.pad.b:r===tu.CAP_SHIFT+"em"&&(a=t.pad.t),t.y==="auto")return n.t/2;switch(t.yref){case"paper":return n.t+n.h-n.h*t.y+a;case"container":default:return e.height-e.height*t.y+a}}function hS(e){return e==="top"?tu.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":tu.MID_SHIFT+"em"}function fj(e){var r=e.title,t=ej;return Lo.isRightAnchor(r)?t=mS:Lo.isLeftAnchor(r)&&(t=gS),t}function cj(e){var r=e.title,t="0em";return Lo.isTopAnchor(r)?t=tu.CAP_SHIFT+"em":Lo.isMiddleAnchor(r)&&(t=tu.MID_SHIFT+"em"),t}_a.doTraceStyle=function(e){var r=e.calcdata,t=[],n;for(n=0;n{"use strict";var vj=Ku().readPaths,hj=lg(),yS=Uu().clearOutlineControllers,q5=Et(),bS=fn(),dj=_n().arrayEditor,_S=ef(),pj=_S.getPathString;wS.exports={draw:bg,drawOne:xS,activateLastSelection:yj};function bg(e){var r=e._fullLayout;yS(e),r._selectionLayer.selectAll("path").remove();for(var t in r._plots){var n=r._plots[t].selectionLayer;n&&n.selectAll("path").remove()}for(var a=0;a=0;y--){var b=o.append("path").attr(s).style("opacity",y?.1:u).call(q5.stroke,v).call(q5.fill,f).call(bS.dashLine,y?"solid":d,y?4+h:h);if(gj(b,e,n),m){var C=dj(e.layout,"selections",n);b.style({cursor:"move"});var x={element:b.node(),plotinfo:a,gd:e,editHelpers:C,isActiveSelection:!0},_=vj(l,e);hj(_,b,x)}else b.style("pointer-events",y?"all":"none");p[y]=b}var A=p[0],k=p[1];k.node().addEventListener("click",function(){return mj(e,A)})}}function gj(e,r,t){var n=t.xref+t.yref;bS.setClipUrl(e,"clip"+r._fullLayout._uid+n,r)}function mj(e,r){if(_g(e)){var t=r.node(),n=+t.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeSelectionIndex){D5(e);return}e._fullLayout._activeSelectionIndex=n,e._fullLayout._deactivateSelection=D5,bg(e)}}}function yj(e){if(_g(e)){var r=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=r,e._fullLayout._deactivateSelection=D5,bg(e)}}function D5(e){if(_g(e)){var r=e._fullLayout._activeSelectionIndex;r>=0&&(yS(e),delete e._fullLayout._activeSelectionIndex,bg(e))}}});var AS=te((Vfe,MS)=>{function bj(){var e,r=0,t=!1;function n(a,i){return e.list.push({type:a,data:i?JSON.parse(JSON.stringify(i)):void 0}),e}return e={list:[],segmentId:function(){return r++},checkIntersection:function(a,i){return n("check",{seg1:a,seg2:i})},segmentChop:function(a,i){return n("div_seg",{seg:a,pt:i}),n("chop",{seg:a,pt:i})},statusRemove:function(a){return n("pop_seg",{seg:a})},segmentUpdate:function(a){return n("seg_update",{seg:a})},segmentNew:function(a,i){return n("new_seg",{seg:a,primary:i})},segmentRemove:function(a){return n("rem_seg",{seg:a})},tempStatus:function(a,i,o){return n("temp_status",{seg:a,above:i,below:o})},rewind:function(a){return n("rewind",{seg:a})},status:function(a,i,o){return n("status",{seg:a,above:i,below:o})},vert:function(a){return a===t?e:(t=a,n("vert",{x:a}))},log:function(a){return typeof a!="string"&&(a=JSON.stringify(a,!1," ")),n("log",{txt:a})},reset:function(){return n("reset")},selected:function(a){return n("selected",{segs:a})},chainStart:function(a){return n("chain_start",{seg:a})},chainRemoveHead:function(a,i){return n("chain_rem_head",{index:a,pt:i})},chainRemoveTail:function(a,i){return n("chain_rem_tail",{index:a,pt:i})},chainNew:function(a,i){return n("chain_new",{pt1:a,pt2:i})},chainMatch:function(a){return n("chain_match",{index:a})},chainClose:function(a){return n("chain_close",{index:a})},chainAddHead:function(a,i){return n("chain_add_head",{index:a,pt:i})},chainAddTail:function(a,i){return n("chain_add_tail",{index:a,pt:i})},chainConnect:function(a,i){return n("chain_con",{index1:a,index2:i})},chainReverse:function(a){return n("chain_rev",{index:a})},chainJoin:function(a,i){return n("chain_join",{index1:a,index2:i})},done:function(){return n("done")}},e}MS.exports=bj});var kS=te((Wfe,TS)=>{function _j(e){typeof e!="number"&&(e=1e-10);var r={epsilon:function(t){return typeof t=="number"&&(e=t),e},pointAboveOrOnLine:function(t,n,a){var i=n[0],o=n[1],l=a[0],s=a[1],u=t[0],f=t[1];return(l-i)*(f-o)-(s-o)*(u-i)>=-e},pointBetween:function(t,n,a){var i=t[1]-n[1],o=a[0]-n[0],l=t[0]-n[0],s=a[1]-n[1],u=l*o+i*s;if(u-e)},pointsSameX:function(t,n){return Math.abs(t[0]-n[0])e!=l-i>e&&(o-f)*(i-v)/(l-v)+f-a>e&&(s=!s),o=f,l=v}return s}};return r}TS.exports=_j});var CS=te((Zfe,SS)=>{var xj={create:function(){var e={root:{root:!0,next:null},exists:function(r){return!(r===null||r===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(r,t){for(var n=e.root,a=e.root.next;a!==null;){if(t(a)){r.prev=a.prev,r.next=a,a.prev.next=r,a.prev=r;return}n=a,a=a.next}n.next=r,r.prev=n,r.next=null},findTransition:function(r){for(var t=e.root,n=e.root.next;n!==null&&!r(n);)t=n,n=n.next;return{before:t===e.root?null:t,after:n,insert:function(a){return a.prev=t,a.next=n,t.next=a,n!==null&&(n.prev=a),a}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};SS.exports=xj});var qS=te((Xfe,LS)=>{var V1=CS();function wj(e,r,t){function n(m,p){return{id:t?t.segmentId():-1,start:m,end:p,myFill:{above:null,below:null},otherFill:null}}function a(m,p,y){return{id:t?t.segmentId():-1,start:m,end:p,myFill:{above:y.myFill.above,below:y.myFill.below},otherFill:null}}var i=V1.create();function o(m,p,y,b,C,x){var _=r.pointsCompare(p,C);return _!==0?_:r.pointsSame(y,x)?0:m!==b?m?1:-1:r.pointAboveOrOnLine(y,b?C:x,b?x:C)?1:-1}function l(m,p){i.insertBefore(m,function(y){var b=o(m.isStart,m.pt,p,y.isStart,y.pt,y.other.pt);return b<0})}function s(m,p){var y=V1.node({isStart:!0,pt:m.start,seg:m,primary:p,other:null,status:null});return l(y,m.end),y}function u(m,p,y){var b=V1.node({isStart:!1,pt:p.end,seg:p,primary:y,other:m,status:null});m.other=b,l(b,m.pt)}function f(m,p){var y=s(m,p);return u(y,m,p),y}function v(m,p){t&&t.segmentChop(m.seg,p),m.other.remove(),m.seg.end=p,m.other.pt=p,l(m.other,m.pt)}function h(m,p){var y=a(p,m.seg.end,m.seg);return v(m,p),f(y,m.primary)}function d(m,p){var y=V1.create();function b(V,re){var ie=V.seg.start,Q=V.seg.end,ee=re.seg.start,se=re.seg.end;return r.pointsCollinear(ie,ee,se)?r.pointsCollinear(Q,ee,se)||r.pointAboveOrOnLine(Q,ee,se)?1:-1:r.pointAboveOrOnLine(ie,ee,se)?1:-1}function C(V){return y.findTransition(function(re){var ie=b(V,re.ev);return ie>0})}function x(V,re){var ie=V.seg,Q=re.seg,ee=ie.start,se=ie.end,ve=Q.start,Ce=Q.end;t&&t.checkIntersection(ie,Q);var Ie=r.linesIntersect(ee,se,ve,Ce);if(Ie===!1){if(!r.pointsCollinear(ee,se,ve)||r.pointsSame(ee,Ce)||r.pointsSame(se,ve))return!1;var ze=r.pointsSame(ee,ve),Xe=r.pointsSame(se,Ce);if(ze&&Xe)return re;var Le=!ze&&r.pointBetween(ee,ve,Ce),Qe=!Xe&&r.pointBetween(se,ve,Ce);if(ze)return Qe?h(re,se):h(V,Ce),re;Le&&(Xe||(Qe?h(re,se):h(V,Ce)),h(re,ee))}else Ie.alongA===0&&(Ie.alongB===-1?h(V,ve):Ie.alongB===0?h(V,Ie.pt):Ie.alongB===1&&h(V,Ce)),Ie.alongB===0&&(Ie.alongA===-1?h(re,ee):Ie.alongA===0?h(re,Ie.pt):Ie.alongA===1&&h(re,se));return!1}for(var _=[];!i.isEmpty();){var A=i.getHead();if(t&&t.vert(A.pt[0]),A.isStart){let V=function(){if(M){var re=x(A,M);if(re)return re}return E?x(A,E):!1};var Z=V;t&&t.segmentNew(A.seg,A.primary);var k=C(A),M=k.before?k.before.ev:null,E=k.after?k.after.ev:null;t&&t.tempStatus(A.seg,M?M.seg:!1,E?E.seg:!1);var R=V();if(R){if(e){var F;A.seg.myFill.below===null?F=!0:F=A.seg.myFill.above!==A.seg.myFill.below,F&&(R.seg.myFill.above=!R.seg.myFill.above)}else R.seg.otherFill=A.seg.myFill;t&&t.segmentUpdate(R.seg),A.other.remove(),A.remove()}if(i.getHead()!==A){t&&t.rewind(A.seg);continue}if(e){var F;A.seg.myFill.below===null?F=!0:F=A.seg.myFill.above!==A.seg.myFill.below,E?A.seg.myFill.below=E.seg.myFill.above:A.seg.myFill.below=m,F?A.seg.myFill.above=!A.seg.myFill.below:A.seg.myFill.above=A.seg.myFill.below}else if(A.seg.otherFill===null){var I;E?A.primary===E.primary?I=E.seg.otherFill.above:I=E.seg.myFill.above:I=A.primary?p:m,A.seg.otherFill={above:I,below:I}}t&&t.status(A.seg,M?M.seg:!1,E?E.seg:!1),A.other.status=k.insert(V1.node({ev:A}))}else{var W=A.status;if(W===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(y.exists(W.prev)&&y.exists(W.next)&&x(W.prev.ev,W.next.ev),t&&t.statusRemove(W.ev.seg),W.remove(),!A.primary){var O=A.seg.myFill;A.seg.myFill=A.seg.otherFill,A.seg.otherFill=O}_.push(A.seg)}i.getHead().remove()}return t&&t.done(),_}return e?{addRegion:function(m){for(var p,y=m[m.length-1],b=0;b{function Mj(e,r,t){var n=[],a=[];return e.forEach(function(i){var o=i.start,l=i.end;if(r.pointsSame(o,l)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}t&&t.chainStart(i);var s={index:0,matches_head:!1,matches_pt1:!1},u={index:0,matches_head:!1,matches_pt1:!1},f=s;function v(Z,V,re){return f.index=Z,f.matches_head=V,f.matches_pt1=re,f===s?(f=u,!1):(f=null,!0)}for(var h=0;h{function W1(e,r,t){var n=[];return e.forEach(function(a){var i=(a.myFill.above?8:0)+(a.myFill.below?4:0)+(a.otherFill&&a.otherFill.above?2:0)+(a.otherFill&&a.otherFill.below?1:0);r[i]!==0&&n.push({id:t?t.segmentId():-1,start:a.start,end:a.end,myFill:{above:r[i]===1,below:r[i]===2},otherFill:null})}),t&&t.selected(n),n}var Aj={union:function(e,r){return W1(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],r)},intersect:function(e,r){return W1(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],r)},difference:function(e,r){return W1(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],r)},differenceRev:function(e,r){return W1(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],r)},xor:function(e,r){return W1(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],r)}};PS.exports=Aj});var NS=te(($fe,zS)=>{var Tj={toPolygon:function(e,r){function t(i){if(i.length<=0)return e.segments({inverted:!1,regions:[]});function o(u){var f=u.slice(0,u.length-1);return e.segments({inverted:!1,regions:[f]})}for(var l=o(i[0]),s=1;s{var kj=AS(),Sj=kS(),FS=qS(),Cj=ES(),Z1=RS(),IS=NS(),qo=!1,X1=Sj(),Ni;Ni={buildLog:function(e){return e===!0?qo=kj():e===!1&&(qo=!1),qo===!1?!1:qo.list},epsilon:function(e){return X1.epsilon(e)},segments:function(e){var r=FS(!0,X1,qo);return e.regions.forEach(r.addRegion),{segments:r.calculate(e.inverted),inverted:e.inverted}},combine:function(e,r){var t=FS(!1,X1,qo);return{combined:t.calculate(e.segments,e.inverted,r.segments,r.inverted),inverted1:e.inverted,inverted2:r.inverted}},selectUnion:function(e){return{segments:Z1.union(e.combined,qo),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:Z1.intersect(e.combined,qo),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:Z1.difference(e.combined,qo),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:Z1.differenceRev(e.combined,qo),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:Z1.xor(e.combined,qo),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:Cj(e.segments,X1,qo),inverted:e.inverted}},polygonFromGeoJSON:function(e){return IS.toPolygon(Ni,e)},polygonToGeoJSON:function(e){return IS.fromPolygon(Ni,X1,e)},union:function(e,r){return j1(e,r,Ni.selectUnion)},intersect:function(e,r){return j1(e,r,Ni.selectIntersect)},difference:function(e,r){return j1(e,r,Ni.selectDifference)},differenceRev:function(e,r){return j1(e,r,Ni.selectDifferenceRev)},xor:function(e,r){return j1(e,r,Ni.selectXor)}};function j1(e,r,t){var n=Ni.segments(e),a=Ni.segments(r),i=Ni.combine(n,a),o=t(i);return Ni.polygon(o)}typeof window=="object"&&(window.PolyBool=Ni);HS.exports=Ni});var US=te((Qfe,OS)=>{OS.exports=function(r,t,n,a){var i=r[0],o=r[1],l=!1;n===void 0&&(n=0),a===void 0&&(a=t.length);for(var s=a-n,u=0,f=s-1;uo!=m>o&&i<(d-v)*(o-h)/(m-h)+v;p&&(l=!l)}return l}});var Mg=te((ece,YS)=>{"use strict";var P5=_d().dot,xg=Rn().BADNUM,wg=YS.exports={};wg.tester=function(r){var t=r.slice(),n=t[0][0],a=n,i=t[0][1],o=i,l;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),l=1;la||b===xg||bo||p&&u(m))}function v(m,p){var y=m[0],b=m[1];if(y===xg||ya||b===xg||bo)return!1;var C=t.length,x=t[0][0],_=t[0][1],A=0,k,M,E,R,F;for(k=1;kMath.max(M,x)||b>Math.max(E,_)))if(bl||Math.abs(P5(v,u))>a)return!0;return!1};wg.filter=function(r,t){var n=[r[0]],a=0,i=0;function o(s){r.push(s);var u=n.length,f=a;n.splice(i+1);for(var v=f+1;v1){var l=r.pop();o(l)}return{addPt:o,raw:r,filtered:n}}});var VS=te((rce,GS)=>{"use strict";GS.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var hC=te((tce,vC)=>{"use strict";var WS=BS(),Lj=US(),K1=dt(),qj=fn().dashStyle,J1=Et(),Dj=ss(),Ej=Gu().makeEventData,nh=iv(),Pj=nh.freeMode,Rj=nh.rectMode,Q1=nh.drawMode,F5=nh.openMode,I5=nh.selectMode,ZS=ef(),XS=I1(),QS=lg(),eC=Uu().clearOutline,rC=Ku(),R5=rC.handleEllipse,zj=rC.readPaths,Nj=ng().newShapes,Fj=l5(),Ij=E5().activateLastSelection,Tg=pr(),Hj=Tg.sorterAsc,tC=Mg(),$1=Rd(),Do=fa().getFromId,Bj=jp(),Oj=yg().redrawReglTraces,kg=VS(),fs=kg.MINSELECT,Uj=tC.filter,H5=tC.tester,B5=Qp(),jS=B5.p2r,Yj=B5.axValue,Gj=B5.getTransform;function O5(e){return e.subplot!==void 0}function Vj(e,r,t,n,a){var i=!O5(n),o=Pj(a),l=Rj(a),s=F5(a),u=Q1(a),f=I5(a),v=a==="drawline",h=a==="drawcircle",d=v||h,m=n.gd,p=m._fullLayout,y=f&&p.newselection.mode==="immediate"&&i,b=p._zoomlayer,C=n.element.getBoundingClientRect(),x=n.plotinfo,_=Gj(x),A=r-C.left,k=t-C.top;p._calcInverseTransform(m);var M=Tg.apply3DTransform(p._invTransform)(A,k);A=M[0],k=M[1];var E=p._invScaleX,R=p._invScaleY,F=A,I=k,W="M"+A+","+k,O=n.xaxes[0],Z=n.yaxes[0],V=O._length,re=Z._length,ie=e.altKey&&!(Q1(a)&&s),Q,ee,se,ve,Ce,Ie,ze;aC(e,m,n),o&&(Q=Uj([[A,k]],kg.BENDPX));var Xe=b.selectAll("path.select-outline-"+x.id).data([1]),Le=u?p.newshape:p.newselection;u&&(n.hasText=Le.label.text||Le.label.texttemplate);var Qe=u&&!s?Le.fillcolor:"rgba(0,0,0,0)",fe=Le.line.color||(i?J1.contrast(m._fullLayout.plot_bgcolor):"#7f7f7f");Xe.enter().append("path").attr("class","select-outline select-outline-"+x.id).style({opacity:u?Le.opacity/2:1,"stroke-dasharray":qj(Le.line.dash,Le.line.width),"stroke-width":Le.line.width+"px","shape-rendering":"crispEdges"}).call(J1.stroke,fe).call(J1.fill,Qe).attr("fill-rule","evenodd").classed("cursor-move",!!u).attr("transform",_).attr("d",W+"Z");var ye=b.append("path").attr("class","zoombox-corners").style({fill:J1.background,stroke:J1.defaultLine,"stroke-width":1}).attr("transform",_).attr("d","M0,0Z");if(u&&n.hasText){var Me=b.select(".label-temp");Me.empty()&&(Me=b.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var pe=p._uid+kg.SELECTID,U=[],K=Sg(m,n.xaxes,n.yaxes,n.subplot);y&&!e.shiftKey&&(n._clearSubplotSelections=function(){if(i){var ke=O._id,Be=Z._id;uC(m,ke,Be,K);for(var Ne=(m.layout||{}).selections||[],ir=[],or=!1,Ye=0;Ye=0){m._fullLayout._deactivateShape(m);return}if(!u){var Ne=p.clickmode;$1.done(pe).then(function(){if($1.clear(pe),ke===2){for(Xe.remove(),Ce=0;Ce-1&&nC(Be,m,n.xaxes,n.yaxes,n.subplot,n,Xe),Ne==="event"&&th(m,void 0);Dj.click(m,Be,x.id)}).catch(Tg.error)}},n.doneFn=function(){ye.remove(),$1.done(pe).then(function(){$1.clear(pe),!y&&ve&&n.selectionDefs&&(ve.subtract=ie,n.selectionDefs.push(ve),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,se)),(y||u)&&eh(n,y),n.doneFnCompleted&&n.doneFnCompleted(U),f&&th(m,ze)}).catch(Tg.error)}}function nC(e,r,t,n,a,i,o){var l=r._hoverdata,s=r._fullLayout,u=s.clickmode,f=u.indexOf("event")>-1,v=[],h,d,m,p,y,b,C,x,_,A;if(Jj(l)){aC(e,r,i),h=Sg(r,t,n,a);var k=$j(l,h),M=k.pointNumbers.length>0;if(M?Kj(h,k):Qj(h)&&(C=$S(k))){for(o&&o.remove(),A=0;A=0}function jj(e){return e._fullLayout._activeSelectionIndex>=0}function eh(e,r){var t=e.dragmode,n=e.plotinfo,a=e.gd;Xj(a)&&a._fullLayout._deactivateShape(a),jj(a)&&a._fullLayout._deactivateSelection(a);var i=a._fullLayout,o=i._zoomlayer,l=Q1(t),s=I5(t);if(l||s){var u=o.selectAll(".select-outline-"+n.id);if(u&&a._fullLayout._outlining){var f;l&&(f=Nj(u,e)),f&&K1.call("_guiRelayout",a,{shapes:f});var v;s&&!O5(e)&&(v=Fj(u,e)),v&&(a._fullLayout._noEmitSelectedAtStart=!0,K1.call("_guiRelayout",a,{selections:v}).then(function(){r&&Ij(a)})),a._fullLayout._outlining=!1}}n.selection={},n.selection.selectionDefs=e.selectionDefs=[],n.selection.mergedPolygons=e.mergedPolygons=[]}function JS(e){return e._id}function Sg(e,r,t,n){if(!e.calcdata)return[];var a=[],i=r.map(JS),o=t.map(JS),l,s,u;for(u=0;u0,i=a?n[0]:t;return r.selectedpoints?r.selectedpoints.indexOf(i)>-1:!1}function Kj(e,r){var t=[],n,a,i,o;for(o=0;o0&&t.push(n);if(t.length===1&&(i=t[0]===r.searchInfo,i&&(a=r.searchInfo.cd[0].trace,a.selectedpoints.length===r.pointNumbers.length))){for(o=0;o1||(r+=n.selectedpoints.length,r>1)))return!1;return r===1}function rh(e,r,t){var n;for(n=0;n-1&&r;if(!o&&r){var ke=KS(e,!0);if(ke.length){var Be=ke[0].xref,Ne=ke[0].yref;if(Be&&Ne){var ir=fC(ke),or=cC([Do(e,Be,"x"),Do(e,Ne,"y")]);or(U,ir)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:$&&th(e,U),h._reselect=!1}if(!o&&h._deselect){var Ye=h._deselect;l=Ye.xref,s=Ye.yref,tJ(l,s,f)||uC(e,l,s,n),$&&(U.points.length?th(e,U):G5(e)),h._deselect=!1}return{eventData:U,selectionTesters:t}}function rJ(e){var r=e.calcdata;if(r)for(var t=0;t{"use strict";dC.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var ah=te((ace,pC)=>{"use strict";pC.exports={axisRefDescription:function(e,r,t){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",r,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",r,"("+t+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",r,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",r,"and the",t,"of the domain of the","second",e,"axis."].join(" ")}}});var hv=te((oce,yC)=>{"use strict";var gC=V5(),mC=$a(),Cg=Ea(),lJ=_n().templatedArray,ice=ah();yC.exports=lJ("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:mC({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:gC.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:gC.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",Cg.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",Cg.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",Cg.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",Cg.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:mC({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Lg=te((lce,bC)=>{"use strict";bC.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var W5=te((sce,_C)=>{"use strict";_C.exports=function(r){return{valType:"color",editType:"style",anim:!0}}});var Sc=te((uce,SC)=>{"use strict";var xC=T2().axisHoverFormat,{hovertemplateAttrs:sJ,texttemplateAttrs:uJ,templatefallbackAttrs:wC}=Qf(),MC=O0(),fJ=$a(),cJ=Kl().dash,vJ=Kl().pattern,hJ=fn(),dJ=Lg(),qg=sa().extendFlat,pJ=W5();function AC(e){return{valType:"any",dflt:0,editType:"calc"}}function TC(e){return{valType:"any",editType:"calc"}}function kC(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}SC.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:AC("x"),yperiod:AC("y"),xperiod0:TC("x0"),yperiod0:TC("y0"),xperiodalignment:kC("x"),yperiodalignment:kC("y"),xhoverformat:xC("x"),yhoverformat:xC("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:uJ(),texttemplatefallback:wC({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:sJ({},{keys:dJ.eventDataKeys}),hovertemplatefallback:wC(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:qg({},cJ,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:pJ(!0),fillgradient:qg({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:vJ,marker:qg({symbol:{valType:"enumerated",values:hJ.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:qg({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},MC("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},MC("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:fJ({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var Z5=te((cce,qC)=>{"use strict";var CC=hv(),LC=Sc().line,gJ=Kl().dash,Dg=sa().extendFlat,mJ=_o().overrideAll,yJ=_n().templatedArray,fce=ah();qC.exports=mJ(yJ("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:Dg({},CC.xref,{}),yref:Dg({},CC.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:LC.color,width:Dg({},LC.width,{min:1,dflt:1}),dash:Dg({},gJ,{dflt:"dot"})}}),"arraydraw","from-root")});var RC=te((vce,PC)=>{"use strict";var DC=pr(),Eg=Dn(),bJ=yl(),_J=Z5(),EC=ef();PC.exports=function(r,t){bJ(r,t,{name:"selections",handleItemDefaults:xJ});for(var n=t.selections,a=0;a{"use strict";zC.exports=function(r,t,n){n("newselection.mode");var a=n("newselection.line.width");a&&(n("newselection.line.color"),n("newselection.line.dash")),n("activeselection.fillcolor"),n("activeselection.opacity")}});var ih=te((dce,HC)=>{"use strict";var wJ=dt(),FC=pr(),IC=fa();HC.exports=function(r){return function(n,a){var i=n[r];if(Array.isArray(i))for(var o=wJ.subplotsRegistry.cartesian,l=o.idRegex,s=a._subplots,u=s.xaxis,f=s.yaxis,v=s.cartesian,h=a._has("cartesian"),d=0;d{"use strict";var BC=E5(),oh=hC();OC.exports={moduleType:"component",name:"selections",layoutAttributes:Z5(),supplyLayoutDefaults:RC(),supplyDrawNewSelectionDefaults:NC(),includeBasePlot:ih()("selections"),draw:BC.draw,drawOne:BC.drawOne,reselect:oh.reselect,prepSelect:oh.prepSelect,clearOutline:oh.clearOutline,clearSelectionsCache:oh.clearSelectionsCache,selectOnClick:oh.selectOnClick}});var sL=te((gce,lL)=>{"use strict";var K5=kt(),Eo=pr(),UC=Eo.numberFormat,MJ=$l(),AJ=E3(),Pg=dt(),$C=Eo.strTranslate,TJ=vi(),YC=Et(),tf=fn(),kJ=ss(),GC=Dn(),SJ=$u(),CJ=To(),KC=iv(),Rg=KC.selectingOrDrawing,LJ=KC.freeMode,qJ=Ka().FROM_TL,DJ=jp(),EJ=yg().redrawReglTraces,PJ=ca(),j5=fa().getFromId,RJ=nu().prepSelect,zJ=nu().clearOutline,NJ=nu().selectOnClick,X5=A5(),Q5=Ea(),VC=Q5.MINDRAG,hi=Q5.MINZOOM,WC=!0;function FJ(e,r,t,n,a,i,o,l){var s=e._fullLayout._zoomlayer,u=o+l==="nsew",f=(o+l).length===1,v,h,d,m,p,y,b,C,x,_,A,k,M,E,R,F,I,W,O,Z,V,re,ie;t+=r.yaxis._shift;function Q(){if(v=r.xaxis,h=r.yaxis,x=v._length,_=h._length,b=v._offset,C=h._offset,d={},d[v._id]=v,m={},m[h._id]=h,o&&l)for(var Ue=r.overlays,Ze=0;Ze=0){mr._fullLayout._deactivateShape(mr);return}var Tr=mr._fullLayout.clickmode;if($5(mr),Ue===2&&!f&&gr(),u)Tr.indexOf("select")>-1&&NJ(Ze,mr,p,y,r.id,ve),Tr.indexOf("event")>-1&&kJ.click(mr,Ze,r.id);else if(Ue===1&&f){var yr=o?h:v,wr=o==="s"||l==="w"?0:1,Hr=yr._name+".range["+wr+"]",Sr=IJ(yr,wr),Dr="left",ur="middle";if(yr.fixedrange)return;o?(ur=o==="n"?"top":"bottom",yr.side==="right"&&(Dr="right")):l==="e"&&(Dr="right"),mr._context.showAxisRangeEntryBoxes&&K5.select(se).call(TJ.makeEditable,{gd:mr,immediate:!0,background:mr._fullLayout.paper_bgcolor,text:String(Sr),fill:yr.tickfont?yr.tickfont.color:"#444",horizontalAlign:Dr,verticalAlign:ur}).on("edit",function(_e){var Ae=yr.d2r(_e);Ae!==void 0&&Pg.call("_guiRelayout",mr,Hr,Ae)})}}CJ.init(ve);var ze,Xe,Le,Qe,fe,ye,Me,pe,U,K;function $(Ue,Ze,mr){var Tr=se.getBoundingClientRect();ze=Ze-Tr.left,Xe=mr-Tr.top,e._fullLayout._calcInverseTransform(e);var yr=Eo.apply3DTransform(e._fullLayout._invTransform)(ze,Xe);ze=yr[0],Xe=yr[1],Le={l:ze,r:ze,w:0,t:Xe,b:Xe,h:0},Qe=e._hmpixcount?e._hmlumcount/e._hmpixcount:MJ(e._fullLayout.plot_bgcolor).getLuminance(),fe="M0,0H"+x+"V"+_+"H0V0",ye=!1,Me="xy",K=!1,pe=rL(s,Qe,b,C,fe),U=tL(s,b,C)}function ke(Ue,Ze){if(e._transitioningWithDuration)return!1;var mr=Math.max(0,Math.min(x,re*Ue+ze)),Tr=Math.max(0,Math.min(_,ie*Ze+Xe)),yr=Math.abs(mr-ze),wr=Math.abs(Tr-Xe);Le.l=Math.min(ze,mr),Le.r=Math.max(ze,mr),Le.t=Math.min(Xe,Tr),Le.b=Math.max(Xe,Tr);function Hr(){Me="",Le.r=Le.l,Le.t=Le.b,U.attr("d","M0,0Z")}if(A.isSubplotConstrained)yr>hi||wr>hi?(Me="xy",yr/x>wr/_?(wr=yr*_/x,Xe>Tr?Le.t=Xe-wr:Le.b=Xe+wr):(yr=wr*x/_,ze>mr?Le.l=ze-yr:Le.r=ze+yr),U.attr("d",zg(Le))):Hr();else if(k.isSubplotConstrained)if(yr>hi||wr>hi){Me="xy";var Sr=Math.min(Le.l/x,(_-Le.b)/_),Dr=Math.max(Le.r/x,(_-Le.t)/_);Le.l=Sr*x,Le.r=Dr*x,Le.b=(1-Sr)*_,Le.t=(1-Dr)*_,U.attr("d",zg(Le))}else Hr();else!E||wr0){var _e;if(k.isSubplotConstrained||!M&&E.length===1){for(_e=0;_e1&&(Hr.maxallowed!==void 0&&F===(Hr.range[0]1&&(Sr.maxallowed!==void 0&&I===(Sr.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function BJ(e,r,t){return e?e==="nsew"?t?"":r==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function rL(e,r,t,n,a){return e.append("path").attr("class","zoombox").style({fill:r>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",$C(t,n)).attr("d",a+"Z")}function tL(e,r,t){return e.append("path").attr("class","zoombox-corners").style({fill:YC.background,stroke:YC.defaultLine,"stroke-width":1,opacity:0}).attr("transform",$C(r,t)).attr("d","M0,0Z")}function nL(e,r,t,n,a,i){e.attr("d",n+"M"+t.l+","+t.t+"v"+t.h+"h"+t.w+"v-"+t.h+"h-"+t.w+"Z"),aL(e,r,a,i)}function aL(e,r,t,n){t||(e.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),r.transition().style("opacity",1).duration(200))}function $5(e){K5.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function iL(e){WC&&e.data&&e._context.showTips&&(Eo.notifier(Eo._(e,"Double-click to zoom back out"),"long"),WC=!1)}function OJ(e,r){return"M"+(e.l-.5)+","+(r-hi-.5)+"h-3v"+(2*hi+1)+"h3ZM"+(e.r+.5)+","+(r-hi-.5)+"h3v"+(2*hi+1)+"h-3Z"}function UJ(e,r){return"M"+(r-hi-.5)+","+(e.t-.5)+"v-3h"+(2*hi+1)+"v3ZM"+(r-hi-.5)+","+(e.b+.5)+"v3h"+(2*hi+1)+"v-3Z"}function zg(e){var r=Math.floor(Math.min(e.b-e.t,e.r-e.l,hi)/2);return"M"+(e.l-3.5)+","+(e.t-.5+r)+"h3v"+-r+"h"+r+"v-3h-"+(r+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+r)+"h-3v"+-r+"h"+-r+"v-3h"+(r+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-r)+"h-3v"+r+"h"+-r+"v3h"+(r+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-r)+"h3v"+r+"h"+r+"v3h-"+(r+3)+"Z"}function jC(e,r,t,n,a){for(var i=!1,o={},l={},s,u,f,v,h=(a||{}).xaHash,d=(a||{}).yaHash,m=0;m{"use strict";var YJ=kt(),Ng=ss(),GJ=To(),VJ=$u(),wl=sL().makeDragBox,xa=Ea().DRAGGERSIZE;Fg.initInteractions=function(r){var t=r._fullLayout;if(r._context.staticPlot){YJ.select(r).selectAll(".drag").remove();return}if(!(!t._has("cartesian")&&!t._has("splom"))){var n=Object.keys(t._plots||{}).sort(function(i,o){if((t._plots[i].mainplot&&!0)===(t._plots[o].mainplot&&!0)){var l=i.split("y"),s=o.split("y");return l[0]===s[0]?Number(l[1]||1)-Number(s[1]||1):Number(l[0]||1)-Number(s[0]||1)}return t._plots[i].mainplot?1:-1});n.forEach(function(i){var o=t._plots[i],l=o.xaxis,s=o.yaxis;if(!o.mainplot){var u=wl(r,o,l._offset,s._offset,l._length,s._length,"ns","ew");u.onmousemove=function(h){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===i&&r._fullLayout._plots[i]&&Ng.hover(r,h,i)},Ng.hover(r,h,i),r._fullLayout._lasthover=u,r._fullLayout._hoversubplot=i},u.onmouseout=function(h){r._dragging||(r._fullLayout._hoversubplot=null,GJ.unhover(r,h))},r._context.showAxisDragHandles&&(wl(r,o,l._offset-xa,s._offset-xa,xa,xa,"n","w"),wl(r,o,l._offset+l._length,s._offset-xa,xa,xa,"n","e"),wl(r,o,l._offset-xa,s._offset+s._length,xa,xa,"s","w"),wl(r,o,l._offset+l._length,s._offset+s._length,xa,xa,"s","e"))}if(r._context.showAxisDragHandles){if(i===l._mainSubplot){var f=l._mainLinePosition;l.side==="top"&&(f-=xa),wl(r,o,l._offset+l._length*.1,f,l._length*.8,xa,"","ew"),wl(r,o,l._offset,f,l._length*.1,xa,"","w"),wl(r,o,l._offset+l._length*.9,f,l._length*.1,xa,"","e")}if(i===s._mainSubplot){var v=s._mainLinePosition;s.side!=="right"&&(v-=xa),wl(r,o,v,s._offset+s._length*.1,xa,s._length*.8,"ns",""),wl(r,o,v,s._offset+s._length*.9,xa,s._length*.1,"s",""),wl(r,o,v,s._offset,xa,s._length*.1,"n","")}}});var a=t._hoverlayer.node();a.onmousemove=function(i){i.target=r._fullLayout._lasthover,Ng.hover(r,i,t._hoversubplot)},a.onclick=function(i){i.target=r._fullLayout._lasthover,Ng.click(r,i)},a.onmousedown=function(i){r._fullLayout._lasthover.onmousedown(i)},Fg.updateFx(r)}};Fg.updateFx=function(e){var r=e._fullLayout,t=r.dragmode==="pan"?"move":"crosshair";VJ(r._draggers,t)}});var cL=te((yce,fL)=>{"use strict";var uL=dt();fL.exports=function(r){for(var t=uL.layoutArrayContainers,n=uL.layoutArrayRegexes,a=r.split("[")[0],i,o,l=0;l{"use strict";var WJ=Gs(),rb=bd(),lh=Pu(),ZJ=Jy().sorterAsc,tb=dt();sh.containerArrayMatch=cL();var XJ=sh.isAddVal=function(r){return r==="add"||WJ(r)},vL=sh.isRemoveVal=function(r){return r===null||r==="remove"};sh.applyContainerArrayChanges=function(r,t,n,a,i){var o=t.astr,l=tb.getComponentMethod(o,"supplyLayoutDefaults"),s=tb.getComponentMethod(o,"draw"),u=tb.getComponentMethod(o,"drawOne"),f=a.replot||a.recalc||l===rb||s===rb,v=r.layout,h=r._fullLayout;if(n[""]){Object.keys(n).length>1&&lh.warn("Full array edits are incompatible with other edits",o);var d=n[""][""];if(vL(d))t.set(null);else if(Array.isArray(d))t.set(d);else return lh.warn("Unrecognized full array edit value",o,d),!0;return f?!1:(l(v,h),s(r),!0)}var m=Object.keys(n).map(Number).sort(ZJ),p=t.get(),y=p||[],b=i(h,o).get(),C=[],x=-1,_=y.length,A,k,M,E,R,F,I,W;for(A=0;Ay.length-(I?0:1)){lh.warn("index out of range",o,M);continue}if(F!==void 0)R.length>1&&lh.warn("Insertion & removal are incompatible with edits to the same index.",o,M),vL(F)?C.push(M):I?(F==="add"&&(F={}),y.splice(M,0,F),b&&b.splice(M,0,{})):lh.warn("Unrecognized full object edit value",o,M,F),x===-1&&(x=M);else for(k=0;k=0;A--)y.splice(C[A],1),b&&b.splice(C[A],1);if(y.length?p||t.set(y):t.set(null),f)return!1;if(l(v,h),u!==rb){var O;if(x===-1)O=m;else{for(_=Math.max(y.length,_),O=[],A=0;A=x));A++)O.push(M);for(A=x;A<_;A++)O.push(A)}for(A=0;A{"use strict";var mL=Ht(),yL=dt(),ai=pr(),uh=ca(),bL=fa(),_L=Et(),fh=bL.cleanId,jJ=bL.getFromTrace,nb=yL.traceIs,JJ=["x","y","z"];Po.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&ai.log("Clearing previous rejected promises from queue."),e._promises=[]};Po.cleanLayout=function(e){var r,t;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var n=(uh.subplotsRegistry.cartesian||{}).attrRegex,a=(uh.subplotsRegistry.polar||{}).attrRegex,i=(uh.subplotsRegistry.ternary||{}).attrRegex,o=(uh.subplotsRegistry.gl3d||{}).attrRegex,l=Object.keys(e);for(r=0;r3?(y.x=1.02,y.xanchor="left"):y.x<-2&&(y.x=-.02,y.xanchor="right"),y.y>3?(y.y=1.02,y.yanchor="bottom"):y.y<-2&&(y.y=-.02,y.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),_L.clean(e),e.template&&e.template.layout&&Po.cleanLayout(e.template.layout),e};function dv(e,r){var t=e[r],n=r.charAt(0);t&&t!=="paper"&&(e[r]=fh(t,n,!0))}Po.cleanData=function(e){for(var r=0;r0)return e.slice(0,r)}Po.hasParent=function(e,r){for(var t=gL(r);t;){if(t in e)return!0;t=gL(t)}return!1};Po.clearAxisTypes=function(e,r,t){for(var n=0;n{let t=(...n)=>n.every(a=>ai.isPlainObject(a))||n.every(a=>Array.isArray(a));if([e,r].every(n=>Array.isArray(n))){if(e.length!==r.length)return!1;for(let n=0;nai.isPlainObject(n))){if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let n in e){if(n.startsWith("_"))continue;let a=e[n],i=r[n];if(a!==i&&!(t(a,i)?ab(a,i):!1))return!1}return!0}return!1};Po.collectionsAreEqual=ab});var fb=te(Ft=>{"use strict";var Og=kt(),QJ=Ht(),e$=u2(),Nr=pr(),xn=Nr.nestedProperty,lb=m1(),di=Kw(),Ro=dt(),Xg=F0(),ft=ca(),ii=Dn(),r$=D3(),t$=ml(),ib=fn(),n$=Et(),a$=eb().initInteractions,i$=sc(),o$=nu().clearOutline,kL=Kf().dfltConfig,Hg=hL(),Qn=xL(),nn=yg(),nf=_o(),l$=Ea().AX_NAME_PATTERN,ob=0,wL=5;function s$(e,r,t,n){var a;if(e=Nr.getGraphDiv(e),lb.init(e),Nr.isPlainObject(r)){var i=r;r=i.data,t=i.layout,n=i.config,a=i.frames}var o=lb.triggerHandler(e,"plotly_beforeplot",[r,t,n]);if(o===!1)return Promise.reject();!r&&!t&&!Nr.isPlotDiv(e)&&Nr.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function l(){if(a)return Ft.addFrames(e,a)}CL(e,n),t||(t={}),Og.select(e).classed("js-plotly-plot",!0),ib.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var s=(e.data||[]).length===0&&Array.isArray(r);Array.isArray(r)&&(Qn.cleanData(r),s?e.data=r:e.data.push.apply(e.data,r),e.empty=!1),(!e.layout||s)&&(e.layout=Qn.cleanLayout(t)),ft.supplyDefaults(e);var u=e._fullLayout,f=u._has("cartesian");u._replotting=!0,(s||u._shouldCreateBgLayer)&&(D$(e),u._shouldCreateBgLayer&&delete u._shouldCreateBgLayer),ib.initGradients(e),ib.initPatterns(e),s&&ii.saveShowSpikeInitial(e);var v=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;v&&ft.doCalcdata(e);for(var h=0;h=e.data.length||a<-e.data.length)throw new Error(t+" must be valid indices for gd.data.");if(r.indexOf(a,n+1)>-1||a>=0&&r.indexOf(-e.data.length+a)>-1||a<0&&r.indexOf(e.data.length+a)>-1)throw new Error("each index in "+t+" must be unique.")}}function LL(e,r,t){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(r)||(r=[r]),Yg(e,r,"currentIndices"),typeof t!="undefined"&&!Array.isArray(t)&&(t=[t]),typeof t!="undefined"&&Yg(e,t,"newIndices"),typeof t!="undefined"&&r.length!==t.length)throw new Error("current and new indices must be of equal length.")}function h$(e,r,t){var n,a;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("traces must be defined.");for(Array.isArray(r)||(r=[r]),n=0;n=0&&f=0&&f0&&typeof E.parts[I]!="string";)I--;var W=E.parts[I],O=E.parts[I-1]+"."+W,Z=E.parts.slice(0,I).join("."),V=xn(e.layout,Z).get(),re=xn(n,Z).get(),ie=E.get();if(R!==void 0){b[M]=R,C[M]=W==="reverse"?R:au(ie);var Q=Xg.getLayoutValObject(n,E.parts);if(Q&&Q.impliedEdits&&R!==null)for(var ee in Q.impliedEdits)x(Nr.relativeAttr(M,ee),Q.impliedEdits[ee]);if(["width","height"].indexOf(M)!==-1)if(R){x("autosize",null);var se=M==="height"?"width":"height";x(se,n[se])}else n[M]=e._initialAutoSize[M];else if(M==="autosize")x("width",R?null:n.width),x("height",R?null:n.height);else if(O.match(IL))k(O),xn(n,Z+"._inputRange").set(null);else if(O.match(HL)){k(O),xn(n,Z+"._inputRange").set(null);var ve=xn(n,Z).get();ve._inputDomain&&(ve._input.domain=ve._inputDomain.slice())}else O.match(m$)&&xn(n,Z+"._inputDomain").set(null);if(W==="type"){A=V;var Ce=re.type==="linear"&&R==="log",Ie=re.type==="log"&&R==="linear";if(Ce||Ie){if(!A||!A.range)x(Z+".autorange",!0);else if(re.autorange)Ce&&(A.range=A.range[1]>A.range[0]?[1,2]:[2,1]);else{var ze=A.range[0],Xe=A.range[1];Ce?(ze<=0&&Xe<=0&&x(Z+".autorange",!0),ze<=0?ze=Xe/1e6:Xe<=0&&(Xe=ze/1e6),x(Z+".range[0]",Math.log(ze)/Math.LN10),x(Z+".range[1]",Math.log(Xe)/Math.LN10)):(x(Z+".range[0]",Math.pow(10,ze)),x(Z+".range[1]",Math.pow(10,Xe)))}Array.isArray(n._subplots.polar)&&n._subplots.polar.length&&n[E.parts[0]]&&E.parts[1]==="radialaxis"&&delete n[E.parts[0]]._subplot.viewInitial["radialaxis.range"],Ro.getComponentMethod("annotations","convertCoords")(e,re,R,x),Ro.getComponentMethod("images","convertCoords")(e,re,R,x)}else x(Z+".autorange",!0),x(Z+".range",null);xn(n,Z+"._inputRange").set(null)}else if(W.match(l$)){var Le=xn(n,M).get(),Qe=(R||{}).type;(!Qe||Qe==="-")&&(Qe="linear"),Ro.getComponentMethod("annotations","convertCoords")(e,Le,Qe,x),Ro.getComponentMethod("images","convertCoords")(e,Le,Qe,x)}var fe=Hg.containerArrayMatch(M);if(fe){f=fe.array,v=fe.index;var ye=fe.property,Me=Q||{editType:"calc"};v!==""&&ye===""&&(Hg.isAddVal(R)?C[M]=null:Hg.isRemoveVal(R)?C[M]=(xn(t,f).get()||[])[v]:Nr.warn("unrecognized full object value",r)),nf.update(y,Me),u[f]||(u[f]={});var pe=u[f][v];pe||(pe=u[f][v]={}),pe[ye]=R,delete r[M]}else W==="reverse"?(V.range?V.range.reverse():(x(Z+".autorange",!0),V.range=[1,0]),re.autorange?y.calc=!0:y.plot=!0):(M==="dragmode"&&(R===!1&&ie!==!1||R!==!1&&ie===!1)||n._has("scatter-like")&&n._has("regl")&&M==="dragmode"&&(R==="lasso"||R==="select")&&!(ie==="lasso"||ie==="select")?y.plot=!0:Q?nf.update(y,Q):y.calc=!0,E.set(R))}}for(f in u){var U=Hg.applyContainerArrayChanges(e,i(t,f),u[f],y,i);U||(y.plot=!0)}for(var K in _){A=ii.getFromId(e,K);var $=A&&A._constraintGroup;if($){y.calc=!0;for(var ke in $)_[ke]||(ii.getFromId(e,ke)._constraintShrinkable=!0)}}(OL(e)||r.height||r.width)&&(y.plot=!0);var Be=n.shapes;for(v=0;v1;)if(n.pop(),t=xn(r,n.join(".")+".uirevision").get(),t!==void 0)return t;return r.uirevision}function _$(e,r){for(var t=0;t[Z,e._ev.listeners(Z)]);i=Ft.newPlot(e,r,t,n).then(()=>{for(let[Z,V]of O)V.forEach(re=>e.on(Z,re));return Ft.react(e,r,t,n)})}else{e.data=r||[],Qn.cleanData(e.data),e.layout=t||{},Qn.cleanLayout(e.layout),w$(e.data,e.layout,l,s),ft.supplyDefaults(e,{skipUpdateCalc:!0});var v=e._fullData,h=e._fullLayout,d=h.datarevision===void 0,m=h.transition,p=T$(e,s,h,d,m),y=p.newDataRevision,b=A$(e,l,v,d,m,y);if(OL(e)&&(p.layoutReplot=!0),b.calc||p.calc){e.calcdata=void 0;for(var C=Object.getOwnPropertyNames(h),x=0;x(f||e.emit("plotly_react",{config:n,data:r,layout:t}),e))}function A$(e,r,t,n,a,i){var o=r.length===t.length;if(!a&&!o)return{fullReplot:!0,calc:!0};var l=nf.traceFlags();l.arrays={},l.nChanges=0,l.nChangesAnim=0;var s,u;function f(d){var m=Xg.getTraceValObject(u,d);return!u._module.animatable&&m.anim&&(m.anim=!1),m}var v={getValObject:f,flags:l,immutable:n,transition:a,newDataRevision:i,gd:e},h={};for(s=0;s=a.length?a[0]:a[u]:a}function l(u){return Array.isArray(i)?u>=i.length?i[0]:i[u]:i}function s(u,f){var v=0;return function(){if(u&&++v===f)return u()}}return new Promise(function(u,f){function v(){if(n._frameQueue.length!==0){for(;n._frameQueue.length;){var W=n._frameQueue.pop();W.onInterrupt&&W.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function h(W){if(W.length!==0){for(var O=0;On._timeToNext&&m()};W()}var y=0;function b(W){return Array.isArray(a)?y>=a.length?W.transitionOpts=a[y]:W.transitionOpts=a[0]:W.transitionOpts=a,y++,W}var C,x,_=[],A=r==null,k=Array.isArray(r),M=!A&&!k&&Nr.isPlainObject(r);if(M)_.push({type:"object",data:b(Nr.extendFlat({},r))});else if(A||["string","number"].indexOf(typeof r)!==-1)for(C=0;C0&&F<_.length-1){var I=[];for(C=0;C<_.length;C++)x=_[C],(_[C].type!=="byname"||C>F)&&I.push(x);_=I}}_.length>0?h(_):(e.emit("plotly_animated"),u())})}function S$(e,r,t){if(e=Nr.getGraphDiv(e),r==null)return Promise.resolve();if(!Nr.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var n,a,i,o,l=e._transitionData._frames,s=e._transitionData._frameHash;if(!Array.isArray(r))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+r);var u=l.length+r.length*2,f=[],v={};for(n=r.length-1;n>=0;n--)if(Nr.isPlainObject(r[n])){var h=r[n].name,d=(s[h]||v[h]||{}).name,m=r[n].name,p=s[d]||v[d];d&&m&&typeof m=="number"&&p&&obE.index?-1:M.index=0;n--){if(a=f[n].frame,typeof a.name=="number"&&Nr.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!a.name)for(;s[a.name="frame "+e._transitionData._counter++];);if(s[a.name]){for(i=0;i=0;t--)n=r[t],i.push({type:"delete",index:n}),o.unshift({type:"insert",index:n,value:a[n]});var l=ft.modifyFrames,s=ft.modifyFrames,u=[e,o],f=[e,i];return di&&di.add(e,l,u,s,f),ft.modifyFrames(e,i)}function L$(e){e=Nr.getGraphDiv(e);var r=e._fullLayout||{},t=e._fullData||[];return ft.cleanPlot([],{},t,r),ft.purge(e),lb.purge(e),r._container&&r._container.remove(),delete e._context,e}function q$(e){var r=e._fullLayout,t=e.getBoundingClientRect();if(!Nr.equalDomRects(t,r._lastBBox)){var n=r._invTransform=Nr.inverseTransformMatrix(Nr.getFullTransformMatrix(e));r._invScaleX=Math.sqrt(n[0][0]*n[0][0]+n[0][1]*n[0][1]+n[0][2]*n[0][2]),r._invScaleY=Math.sqrt(n[1][0]*n[1][0]+n[1][1]*n[1][1]+n[1][2]*n[1][2]),r._lastBBox=t}}function D$(e){var r=Og.select(e),t=e._fullLayout;if(t._calcInverseTransform=q$,t._calcInverseTransform(e),t._container=r.selectAll(".plot-container").data([0]),t._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),t._paperdiv=t._container.selectAll(".svg-container").data([0]),t._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),t._glcontainer=t._paperdiv.selectAll(".gl-container").data([{}]),t._glcontainer.enter().append("div").classed("gl-container",!0),t._paperdiv.selectAll(".main-svg").remove(),t._paperdiv.select(".modebar-container").remove(),t._paper=t._paperdiv.insert("svg",":first-child").classed("main-svg",!0),t._toppaper=t._paperdiv.append("svg").classed("main-svg",!0),t._modebardiv=t._paperdiv.append("div"),delete t._modeBar,t._hoverpaper=t._paperdiv.append("svg").classed("main-svg",!0),!t._uid){var n={};Og.selectAll("defs").each(function(){this.id&&(n[this.id.split("-")[1]]=1)}),t._uid=Nr.randstr(n)}t._paperdiv.selectAll(".main-svg").attr(i$.svgAttrs),t._defs=t._paper.append("defs").attr("id","defs-"+t._uid),t._clips=t._defs.append("g").classed("clips",!0),t._topdefs=t._toppaper.append("defs").attr("id","topdefs-"+t._uid),t._topclips=t._topdefs.append("g").classed("clips",!0),t._bgLayer=t._paper.append("g").classed("bglayer",!0),t._draggers=t._paper.append("g").classed("draglayer",!0);var a=t._paper.append("g").classed("layer-below",!0);t._imageLowerLayer=a.append("g").classed("imagelayer",!0),t._shapeLowerLayer=a.append("g").classed("shapelayer",!0),t._cartesianlayer=t._paper.append("g").classed("cartesianlayer",!0),t._polarlayer=t._paper.append("g").classed("polarlayer",!0),t._smithlayer=t._paper.append("g").classed("smithlayer",!0),t._ternarylayer=t._paper.append("g").classed("ternarylayer",!0),t._geolayer=t._paper.append("g").classed("geolayer",!0),t._funnelarealayer=t._paper.append("g").classed("funnelarealayer",!0),t._pielayer=t._paper.append("g").classed("pielayer",!0),t._iciclelayer=t._paper.append("g").classed("iciclelayer",!0),t._treemaplayer=t._paper.append("g").classed("treemaplayer",!0),t._sunburstlayer=t._paper.append("g").classed("sunburstlayer",!0),t._indicatorlayer=t._toppaper.append("g").classed("indicatorlayer",!0),t._glimages=t._paper.append("g").classed("glimages",!0);var i=t._toppaper.append("g").classed("layer-above",!0);t._imageUpperLayer=i.append("g").classed("imagelayer",!0),t._shapeUpperLayer=i.append("g").classed("shapelayer",!0),t._selectionLayer=t._toppaper.append("g").classed("selectionlayer",!0),t._infolayer=t._toppaper.append("g").classed("infolayer",!0),t._menulayer=t._toppaper.append("g").classed("menulayer",!0),t._zoomlayer=t._toppaper.append("g").classed("zoomlayer",!0),t._hoverlayer=t._hoverpaper.append("g").classed("hoverlayer",!0),t._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}Ft.animate=k$;Ft.addFrames=S$;Ft.deleteFrames=C$;Ft.addTraces=RL;Ft.deleteTraces=zL;Ft.extendTraces=EL;Ft.moveTraces=sb;Ft.prependTraces=PL;Ft.newPlot=v$;Ft._doPlot=s$;Ft.purge=L$;Ft.react=M$;Ft.redraw=c$;Ft.relayout=ch;Ft.restyle=Gg;Ft.setPlotConfig=u$;Ft.update=Wg;Ft._guiRelayout=ub(ch);Ft._guiRestyle=ub(Gg);Ft._guiUpdate=ub(Wg);Ft._storeDirectGUIEdit=g$});var Cc=te(cs=>{"use strict";var E$=dt();cs.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};cs.getRedrawFunc=function(e){return function(){E$.getComponentMethod("colorbar","draw")(e)}};cs.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};cs.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var UL=window.URL||window.webkitURL;cs.createObjectURL=function(e){return UL.createObjectURL(e)};cs.revokeObjectURL=function(e){return UL.revokeObjectURL(e)};cs.createBlob=function(e,r){if(r==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(r==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var t=P$(window.atob(e));return new window.Blob([t],{type:"image/"+r})};cs.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function P$(e){for(var r=e.length,t=new ArrayBuffer(r),n=new Uint8Array(t),a=0;a{"use strict";var vb=kt(),Mce=pr(),R$=fn(),z$=Et(),Ace=sc(),cb=/"/g,hh="TOBESTRIPPED",N$=new RegExp('("'+hh+")|("+hh+'")',"g");function F$(e){var r=vb.select("body").append("div").style({display:"none"}).html(""),t=e.replace(/(&[^;]*;)/gi,function(n){return n==="<"?"<":n==="&rt;"?">":n.indexOf("<")!==-1||n.indexOf(">")!==-1?"":r.html(n).text()});return r.remove(),t}function I$(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}YL.exports=function(r,t,n){var a=r._fullLayout,i=a._paper,o=a._toppaper,l=a.width,s=a.height,u;i.insert("rect",":first-child").call(R$.setRect,0,0,l,s).call(z$.fill,a.paper_bgcolor);var f=a._basePlotModules||[];for(u=0;u{"use strict";var H$=pr(),B$=Od().EventEmitter,dh=Cc();function O$(e){var r=e.emitter||new B$,t=new Promise(function(n,a){var i=window.Image,o=e.svg,l=e.format||"png",s=e.canvas,u=e.scale||1,f=e.width||300,v=e.height||150,h=u*f,d=u*v,m=s.getContext("2d",{willReadFrequently:!0}),p=new i,y,b;l==="svg"||H$.isSafari()?b=dh.encodeSVG(o):(y=dh.createBlob(o,"svg"),b=dh.createObjectURL(y)),s.width=h,s.height=d,p.onload=function(){var C;switch(y=null,dh.revokeObjectURL(b),l!=="svg"&&m.drawImage(p,0,0,h,d),l){case"jpeg":C=s.toDataURL("image/jpeg");break;case"png":C=s.toDataURL("image/png");break;case"webp":C=s.toDataURL("image/webp");break;case"svg":C=b;break;default:var x="Image format is not jpeg, png, svg or webp.";if(a(new Error(x)),!e.promise)return r.emit("error",x)}n(C),e.promise||r.emit("success",C)},p.onerror=function(C){if(y=null,dh.revokeObjectURL(b),a(C),!e.promise)return r.emit("error",C)},p.src=b});return e.promise?t:r}GL.exports=O$});var db=te((Sce,ZL)=>{"use strict";var VL=Ht(),WL=fb(),U$=ca(),vs=pr(),ph=Cc(),Y$=Jg(),G$=$g(),V$=nd().version,hb={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function W$(e,r){r=r||{};var t,n,a,i;vs.isPlainObject(e)?(t=e.data||[],n=e.layout||{},a=e.config||{},i={}):(e=vs.getGraphDiv(e),t=vs.extendDeep([],e.data),n=vs.extendDeep({},e.layout),a=e._context,i=e._fullLayout||{});function o(k){return!(k in r)||vs.validate(r[k],hb[k])}if(!o("width")&&r.width!==null||!o("height")&&r.height!==null)throw new Error("Height and width should be pixel values.");if(!o("format"))throw new Error("Export format is not "+vs.join2(hb.format.values,", "," or ")+".");var l={};function s(k,M){return vs.coerce(r,l,hb,k,M)}var u=s("format"),f=s("width"),v=s("height"),h=s("scale"),d=s("setBackground"),m=s("imageDataOnly"),p=document.createElement("div");p.style.position="absolute",p.style.left="-5000px",document.body.appendChild(p);var y=vs.extendFlat({},n);f?y.width=f:r.width===null&&VL(i.width)&&(y.width=i.width),v?y.height=v:r.height===null&&VL(i.height)&&(y.height=i.height);var b=vs.extendFlat({},a,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),C=ph.getRedrawFunc(p);function x(){return new Promise(function(k){setTimeout(k,ph.getDelay(p._fullLayout))})}function _(){return new Promise(function(k,M){var E=Y$(p,u,h),R=p._fullLayout.width,F=p._fullLayout.height;function I(){WL.purge(p),document.body.removeChild(p)}if(u==="full-json"){var W=U$.graphJson(p,!1,"keepdata","object",!0,!0);return W.version=V$,W=JSON.stringify(W),I(),k(m?W:ph.encodeJSON(W))}if(I(),u==="svg")return k(m?E:ph.encodeSVG(E));var O=document.createElement("canvas");O.id=vs.randstr(),G$({format:u,width:R,height:F,scale:h,canvas:O,svg:E,promise:!0}).then(k).catch(M)})}function A(k){return m?k.replace(ph.IMAGE_URL_PREFIX,""):k}return new Promise(function(k,M){WL.newPlot(p,t,y,b).then(C).then(x).then(_).then(function(E){k(A(E))}).catch(function(E){M(E)})})}ZL.exports=W$});var JL=te((Cce,jL)=>{"use strict";var zo=pr(),Z$=ca(),X$=F0(),j$=Kf().dfltConfig,Ml=zo.isPlainObject,qc=Array.isArray,pb=zo.isArrayOrTypedArray;jL.exports=function(r,t){r===void 0&&(r=[]),t===void 0&&(t={});var n=X$.get(),a=[],i={_context:zo.extendFlat({},j$)},o,l;qc(r)?(i.data=zo.extendDeep([],r),o=r):(i.data=[],o=[],a.push(wa("array","data"))),Ml(t)?(i.layout=zo.extendDeep({},t),l=t):(i.layout={},l={},arguments.length>1&&a.push(wa("object","layout"))),Z$.supplyDefaults(i);for(var s=i._fullData,u=o.length,f=0;fv.length&&n.push(wa("unused",a,u.concat(v.length)));var b=v.length,C=Array.isArray(y);C&&(b=Math.min(b,y.length));var x,_,A,k,M;if(h.dimensions===2)for(_=0;_v[_].length&&n.push(wa("unused",a,u.concat(_,v[_].length)));var E=v[_].length;for(x=0;x<(C?Math.min(E,y[_].length):E);x++)A=C?y[_][x]:y,k=f[_][x],M=v[_][x],zo.validate(k,A)?M!==k&&M!==+k&&n.push(wa("dynamic",a,u.concat(_,x),k,M)):n.push(wa("value",a,u.concat(_,x),k))}else n.push(wa("array",a,u.concat(_),f[_]));else for(_=0;_{"use strict";var tK=pr(),Qg=Cc();function nK(e,r,t){var n=document.createElement("a"),a="download"in n,i=new Promise(function(o,l){var s,u;if(a)return s=Qg.createBlob(e,t),u=Qg.createObjectURL(s),n.href=u,n.download=r,document.body.appendChild(n),n.click(),document.body.removeChild(n),Qg.revokeObjectURL(u),s=null,o(r);if(tK.isSafari()){var f=t==="svg"?",":";base64,";return Qg.octetStream(f+encodeURIComponent(e)),o(r)}l(new Error("download error"))});return i}$L.exports=nK});var gb=te((Dce,eq)=>{"use strict";var QL=pr(),aK=db(),iK=KL(),qce=Cc();function oK(e,r){var t;return QL.isPlainObject(e)||(t=QL.getGraphDiv(e)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(n,a){t&&t._snapshotInProgress&&a(new Error("Snapshotting already in progress.")),t&&(t._snapshotInProgress=!0);var i=aK(e,r),o=r.filename||e.fn||"newplot";o+="."+r.format.replace("-","."),i.then(function(l){return t&&(t._snapshotInProgress=!1),iK(l,o,r.format)}).then(function(l){n(l)}).catch(function(l){t&&(t._snapshotInProgress=!1),a(l)})})}eq.exports=oK});var iq=te(mb=>{"use strict";var Fi=pr(),Ii=Fi.isPlainObject,rq=F0(),tq=ca(),lK=bo(),nq=_n(),aq=Kf().dfltConfig;mb.makeTemplate=function(e){e=Fi.isPlainObject(e)?e:Fi.getGraphDiv(e),e=Fi.extendDeep({_context:aq},{data:e.data,layout:e.layout}),tq.supplyDefaults(e);var r=e.data||[],t=e.layout||{};t._basePlotModules=e._fullLayout._basePlotModules,t._modules=e._fullLayout._modules;var n={data:{},layout:{}};r.forEach(function(d){var m={};gh(d,m,uK.bind(null,d));var p=Fi.coerce(d,{},lK,"type"),y=n.data[p];y||(y=n.data[p]=[]),y.push(m)}),gh(t,n.layout,sK.bind(null,t)),delete n.layout.template;var a=t.template;if(Ii(a)){var i=a.layout,o,l,s,u,f,v;Ii(i)&&em(i,n.layout);var h=a.data;if(Ii(h)){for(l in n.data)if(s=h[l],Array.isArray(s)){for(f=n.data[l],v=f.length,u=s.length,o=0;ob?o.push({code:"unused",traceType:d,templateCount:y,dataCount:b}):b>y&&o.push({code:"reused",traceType:d,templateCount:y,dataCount:b})}}function C(x,_){for(var A in x)if(A.charAt(0)!=="_"){var k=x[A],M=No(x,A,_);Ii(k)?(Array.isArray(x)&&k._template===!1&&k.templateitemname&&o.push({code:"missing",path:M,templateitemname:k.templateitemname}),C(k,M)):Array.isArray(k)&&fK(k)&&C(k,M)}}if(C({data:s,layout:l},""),o.length)return o.map(cK)};function fK(e){for(var r=0;r{"use strict";var ha=fb();qn._doPlot=ha._doPlot;qn.newPlot=ha.newPlot;qn.restyle=ha.restyle;qn.relayout=ha.relayout;qn.redraw=ha.redraw;qn.update=ha.update;qn._guiRestyle=ha._guiRestyle;qn._guiRelayout=ha._guiRelayout;qn._guiUpdate=ha._guiUpdate;qn._storeDirectGUIEdit=ha._storeDirectGUIEdit;qn.react=ha.react;qn.extendTraces=ha.extendTraces;qn.prependTraces=ha.prependTraces;qn.addTraces=ha.addTraces;qn.deleteTraces=ha.deleteTraces;qn.moveTraces=ha.moveTraces;qn.purge=ha.purge;qn.addFrames=ha.addFrames;qn.deleteFrames=ha.deleteFrames;qn.animate=ha.animate;qn.setPlotConfig=ha.setPlotConfig;var vK=u1().getGraphDiv,hK=cg().eraseActiveShape;qn.deleteActiveShape=function(e){return hK(vK(e))};qn.toImage=db();qn.validate=JL();qn.downloadImage=gb();var oq=iq();qn.makeTemplate=oq.makeTemplate;qn.validateTemplate=oq.validateTemplate});var uq=te((Rce,sq)=>{"use strict";var yb=pr(),dK=dt();sq.exports=function(r,t,n,a){var i=a("x"),o=a("y"),l,s=dK.getComponentMethod("calendars","handleTraceDefaults");if(s(r,t,["x","y"],n),i){var u=yb.minRowLength(i);o?l=Math.min(u,yb.minRowLength(o)):(l=u,a("y0"),a("dy"))}else{if(!o)return 0;l=yb.minRowLength(o),a("x0"),a("dx")}return t._length=l,l}});var hq=te((zce,vq)=>{"use strict";var fq=pr().dateTick0,pK=Rn(),gK=pK.ONEWEEK;function cq(e,r){return e%gK===0?fq(r,1):fq(r,0)}vq.exports=function(r,t,n,a,i){if(i||(i={x:!0,y:!0}),i.x){var o=a("xperiod");o&&(a("xperiod0",cq(o,t.xcalendar)),a("xperiodalignment"))}if(i.y){var l=a("yperiod");l&&(a("yperiod0",cq(l,t.ycalendar)),a("yperiodalignment"))}}});var gq=te((Nce,pq)=>{"use strict";var dq=["orientation","groupnorm","stackgaps"];pq.exports=function(r,t,n,a){var i=n._scatterStackOpts,o=a("stackgroup");if(o){var l=t.xaxis+t.yaxis,s=i[l];s||(s=i[l]={});var u=s[o],f=!1;u?u.traces.push(t):(u=s[o]={traceIndices:[],traces:[t]},f=!0);for(var v={orientation:t.x&&!t.y?"h":"v"},h=0;h{"use strict";var mq=Et(),yq=es().hasColorscale,bq=U0(),mK=Qa();_q.exports=function(r,t,n,a,i,o){var l=mK.isBubble(r),s=(r.line||{}).color,u;if(o=o||{},s&&(n=s),i("marker.symbol"),i("marker.opacity",l?.7:1),i("marker.size"),o.noAngle||(i("marker.angle"),o.noAngleRef||i("marker.angleref"),o.noStandOff||i("marker.standoff")),i("marker.color",n),yq(r,"marker")&&bq(r,t,a,i,{prefix:"marker.",cLetter:"c"}),o.noSelect||(i("selected.marker.color"),i("unselected.marker.color"),i("selected.marker.size"),i("unselected.marker.size")),o.noLine||(s&&!Array.isArray(s)&&t.marker.color!==s?u=s:l?u=mq.background:u=mq.defaultLine,i("marker.line.color",u),yq(r,"marker.line")&&bq(r,t,a,i,{prefix:"marker.line.",cLetter:"c"}),i("marker.line.width",l?1:0)),l&&(i("marker.sizeref"),i("marker.sizemin"),i("marker.sizemode")),o.gradient){var f=i("marker.gradient.type");f!=="none"&&i("marker.gradient.color")}}});var _b=te((Ice,xq)=>{"use strict";var yK=pr().isArrayOrTypedArray,bK=es().hasColorscale,_K=U0();xq.exports=function(r,t,n,a,i,o){o||(o={});var l=(r.marker||{}).color;if(l&&l._inputArray&&(l=l._inputArray),i("line.color",n),bK(r,"line"))_K(r,t,a,i,{prefix:"line.",cLetter:"c"});else{var s=(yK(l)?!1:l)||n;i("line.color",s)}i("line.width"),o.noDash||i("line.dash"),o.backoff&&i("line.backoff")}});var Mq=te((Hce,wq)=>{"use strict";wq.exports=function(r,t,n){var a=n("line.shape");a==="spline"&&n("line.smoothing")}});var xb=te((Bce,Aq)=>{"use strict";var xK=pr();Aq.exports=function(e,r,t,n,a){a=a||{},n("textposition"),xK.coerceFont(n,"textfont",a.font||t.font,a),a.noSelect||(n("selected.textfont.color"),n("unselected.textfont.color"))}});var wb=te((Oce,kq)=>{"use strict";var tm=Et(),Tq=pr().isArrayOrTypedArray;function wK(e){for(var r=tm.interpolate(e[0][1],e[1][1],.5),t=2;t{"use strict";var Sq=pr(),MK=dt(),AK=Sc(),TK=Lg(),pv=Qa(),kK=uq(),SK=hq(),CK=gq(),LK=bb(),qK=_b(),Cq=Mq(),DK=xb(),EK=wb(),PK=pr().coercePattern;Lq.exports=function(r,t,n,a){function i(d,m){return Sq.coerce(r,t,AK,d,m)}var o=kK(r,t,a,i);if(o||(t.visible=!1),!!t.visible){SK(r,t,a,i),i("xhoverformat"),i("yhoverformat"),i("zorder");var l=CK(r,t,a,i);a.scattermode==="group"&&t.orientation===void 0&&i("orientation","v");var s=!l&&o{"use strict";var RK=U1().getAxisGroup;Dq.exports=function(r,t,n,a,i){var o=t.orientation,l=t[{v:"x",h:"y"}[o]+"axis"],s=RK(n,l)+o,u=n._alignmentOpts||{},f=a("alignmentgroup"),v=u[s];v||(v=u[s]={});var h=v[f];h?h.traces.push(t):h=v[f]={traces:[t],alignmentIndex:Object.keys(v).length,offsetGroups:{}};var d=a("offsetgroup")||"",m=h.offsetGroups,p=m[d];t._offsetIndex=0,(i!=="group"||d)&&(p||(p=m[d]={offsetIndex:Object.keys(m).length}),t._offsetIndex=p.offsetIndex)}});var Rq=te((Gce,Pq)=>{"use strict";var zK=pr(),NK=Eq(),FK=Sc();Pq.exports=function(r,t){var n,a,i,o=t.scattermode;function l(h){return zK.coerce(a._input,a,FK,h)}if(t.scattermode==="group")for(i=0;i=0;f--){var v=r[f];if(v.type==="scatter"&&v.xaxis===s.xaxis&&v.yaxis===s.yaxis){v.opacity=void 0;break}}}}}});var Nq=te((Vce,zq)=>{"use strict";var IK=pr(),HK=Wd();zq.exports=function(e,r){function t(a,i){return IK.coerce(e,r,HK,a,i)}var n=r.barmode==="group";r.scattermode==="group"&&t("scattergap",n?r.bargap:.2)}});var Hq=te((Wce,Iq)=>{"use strict";var BK=Ht(),Fq=pr(),OK=Fq.dateTime2ms,nm=Fq.incrementMonth,UK=Rn(),YK=UK.ONEAVGMONTH;Iq.exports=function(r,t,n,a){if(t.type!=="date")return{vals:a};var i=r[n+"periodalignment"];if(!i)return{vals:a};var o=r[n+"period"],l;if(BK(o)){if(o=+o,o<=0)return{vals:a}}else if(typeof o=="string"&&o.charAt(0)==="M"){var s=+o.substring(1);if(s>0&&Math.round(s)===s)l=s;else return{vals:a}}for(var u=t.calendar,f=i==="start",v=i==="end",h=r[n+"period0"],d=OK(h,u)||0,m=[],p=[],y=[],b=a.length,C=0;Cx;)k=nm(k,-l,u);for(;k<=x;)k=nm(k,l,u);A=nm(k,-l,u)}else{for(_=Math.round((x-d)/o),k=d+_*o;k>x;)k-=o;for(;k<=x;)k+=o;A=k-o}m[C]=f?A:v?k:(A+k)/2,p[C]=A,y[C]=k}return{vals:m,starts:p,ends:y}}});var Tb=te((Zce,Oq)=>{"use strict";var Mb=es().hasColorscale,Ab=np(),Bq=Qa();Oq.exports=function(r,t){Bq.hasLines(t)&&Mb(t,"line")&&Ab(r,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),Bq.hasMarkers(t)&&(Mb(t,"marker")&&Ab(r,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),Mb(t,"marker.line")&&Ab(r,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var mh=te((Xce,Uq)=>{"use strict";var Gn=pr();Uq.exports=function(r,t){for(var n=0;n{"use strict";var Yq=pr();Gq.exports=function(r,t){Yq.isArrayOrTypedArray(t.selectedpoints)&&Yq.tagSelected(r,t)}});var im=te((Jce,$q)=>{"use strict";var Vq=Ht(),Sb=pr(),yh=Dn(),Wq=Hq(),kb=Rn().BADNUM,Cb=Qa(),GK=Tb(),VK=mh(),WK=am();function ZK(e,r){var t=e._fullLayout,n=r._xA=yh.getFromId(e,r.xaxis||"x","x"),a=r._yA=yh.getFromId(e,r.yaxis||"y","y"),i=n.makeCalcdata(r,"x"),o=a.makeCalcdata(r,"y"),l=Wq(r,n,"x",i),s=Wq(r,a,"y",o),u=l.vals,f=s.vals,v=r._length,h=new Array(v),d=r.ids,m=Lb(r,t,n,a),p=!1,y,b,C,x,_,A;jq(t,r);var k="x",M="y",E;if(m)Sb.pushUnique(m.traceIndices,r.index),y=m.orientation==="v",y?(M="s",E="x"):(k="s",E="y"),_=m.stackgaps==="interpolate";else{var R=Xq(r,v);Zq(e,r,n,a,u,f,R)}var F=!!r.xperiodalignment,I=!!r.yperiodalignment;for(b=0;bb&&h[x].gap;)x--;for(A=h[x].s,C=h.length-1;C>x;C--)h[C].s=A;for(;b{"use strict";Kq.exports=om;var XK=pr().distinctVals;function om(e,r){this.traces=e,this.sepNegVal=r.sepNegVal,this.overlapNoMerge=r.overlapNoMerge;for(var t=1/0,n=r.posAxis._id.charAt(0),a=[],i=0;i{"use strict";var Fo=Ht(),af=pr().isArrayOrTypedArray,gv=Rn().BADNUM,jK=dt(),bh=Dn(),JK=U1().getAxisGroup,lm=Qq();function $K(e,r){for(var t=r.xaxis,n=r.yaxis,a=e._fullLayout,i=e._fullData,o=e.calcdata,l=[],s=[],u=0;us+o||!Fo(l))}for(var f=0;f{"use strict";var iD=im(),oD=aD().setGroupPositions;function uQ(e,r){for(var t=r.xaxis,n=r.yaxis,a=e._fullLayout,i=e._fullData,o=e.calcdata,l=[],s=[],u=0;uR[f]&&f{"use strict";var cQ=fn(),vD=Rn(),_h=vD.BADNUM,hD=vD.LOG_CLIP,uD=hD+.5,fD=hD-.5,sm=pr(),vQ=sm.segmentsIntersect,cD=sm.constrain,zb=Lg();dD.exports=function(r,t){var n=t.trace||{},a=t.xaxis,i=t.yaxis,o=a.type==="log",l=i.type==="log",s=a._length,u=i._length,f=t.backoff,v=n.marker,h=t.connectGaps,d=t.baseTolerance,m=t.shape,p=m==="linear",y=n.fill&&n.fill!=="none",b=[],C=zb.minTolerance,x=r.length,_=new Array(x),A=0,k,M,E,R,F,I,W,O,Z,V,re,ie,Q,ee,se,ve;function Ce(ur){var _e=r[ur];if(!_e)return!1;var Ae=t.linearized?a.l2p(_e.x):a.c2p(_e.x),Ke=t.linearized?i.l2p(_e.y):i.c2p(_e.y);if(Ae===_h){if(o&&(Ae=a.c2p(_e.x,!0)),Ae===_h)return!1;l&&Ke===_h&&(Ae*=Math.abs(a._m*u*(a._m>0?uD:fD)/(i._m*s*(i._m>0?uD:fD)))),Ae*=1e3}if(Ke===_h){if(l&&(Ke=i.c2p(_e.y,!0)),Ke===_h)return!1;Ke*=1e3}return[Ae,Ke]}function Ie(ur,_e,Ae,Ke){var rr=Ae-ur,Lr=Ke-_e,Yr=.5-ur,Fr=.5-_e,lt=rr*rr+Lr*Lr,xt=rr*Yr+Lr*Fr;if(xt>0&&xt1||Math.abs(Yr.y-Ae[0][1])>1)&&(Yr=[Yr.x,Yr.y],Ke&&Qe(Yr,ur)Me||ur[1]U)return[cD(ur[0],ye,Me),cD(ur[1],pe,U)]}function lr(ur,_e){if(ur[0]===_e[0]&&(ur[0]===ye||ur[0]===Me)||ur[1]===_e[1]&&(ur[1]===pe||ur[1]===U))return!0}function vr(ur,_e){var Ae=[],Ke=nr(ur),rr=nr(_e);return Ke&&rr&&lr(Ke,rr)||(Ke&&Ae.push(Ke),rr&&Ae.push(rr)),Ae}function Je(ur,_e,Ae){return function(Ke,rr){var Lr=nr(Ke),Yr=nr(rr),Fr=[];if(Lr&&Yr&&lr(Lr,Yr))return Fr;Lr&&Fr.push(Lr),Yr&&Fr.push(Yr);var lt=2*sm.constrain((Ke[ur]+rr[ur])/2,_e,Ae)-((Lr||Ke)[ur]+(Yr||rr)[ur]);if(lt){var xt;Lr&&Yr?xt=lt>0==Lr[ur]>Yr[ur]?Lr:Yr:xt=Lr||Yr,xt[ur]+=lt}return Fr}}var dr;m==="linear"||m==="spline"?dr=Ye:m==="hv"||m==="vh"?dr=vr:m==="hvh"?dr=Je(0,ye,Me):m==="vhv"&&(dr=Je(1,pe,U));function gr(ur,_e){var Ae=_e[0]-ur[0],Ke=(_e[1]-ur[1])/Ae,rr=(ur[1]*_e[0]-_e[1]*ur[0])/Ae;return rr>0?[Ke>0?ye:Me,U]:[Ke>0?Me:ye,pe]}function Te(ur){var _e=ur[0],Ae=ur[1],Ke=_e===_[A-1][0],rr=Ae===_[A-1][1];if(!(Ke&&rr))if(A>1){var Lr=_e===_[A-2][0],Yr=Ae===_[A-2][1];Ke&&(_e===ye||_e===Me)&&Lr?Yr?A--:_[A-1]=ur:rr&&(Ae===pe||Ae===U)&&Yr?Lr?A--:_[A-1]=ur:_[A++]=ur}else _[A++]=ur}function Oe(ur){_[A-1][0]!==ur[0]&&_[A-1][1]!==ur[1]&&Te([Be,Ne]),Te(ur),ir=null,Be=Ne=0}var kr=sm.isArrayOrTypedArray(v);function Ur(ur){if(ur&&f&&(ur.i=k,ur.d=r,ur.trace=n,ur.marker=kr?v[ur.i]:v,ur.backoff=f),ze=ur[0]/s,Xe=ur[1]/u,$=ur[0]Me?Me:0,ke=ur[1]U?U:0,$||ke){if(!A)_[A++]=[$||ur[0],ke||ur[1]];else if(ir){var _e=dr(ir,ur);_e.length>1&&(Oe(_e[0]),_[A++]=_e[1])}else or=dr(_[A-1],ur)[0],_[A++]=or;var Ae=_[A-1];$&&ke&&(Ae[0]!==$||Ae[1]!==ke)?(ir&&(Be!==$&&Ne!==ke?Te(Be&&Ne?gr(ir,ur):[Be||$,Ne||ke]):Be&&Ne&&Te([Be,Ne])),Te([$,ke])):Be-$&&Ne-ke&&Te([$||Be,ke||Ne]),ir=ur,Be=$,Ne=ke}else ir&&Oe(dr(ir,ur)[0]),_[A++]=ur}for(k=0;kLe(I,tr))break;E=I,Q=Z[0]*O[0]+Z[1]*O[1],Q>re?(re=Q,R=I,W=!1):Q=r.length||!I)break;Ur(I),M=I}}ir&&Te([Be||ir[0],Ne||ir[1]]),b.push(_.slice(0,A))}var Ue=m.slice(m.length-1);if(f&&Ue!=="h"&&Ue!=="v"){for(var Ze=!1,mr=-1,Tr=[],yr=0;yr{"use strict";var gD={tonextx:1,tonexty:1,tonext:1};mD.exports=function(r,t,n){var a,i,o,l,s,u={},f=!1,v=-1,h=0,d=-1;for(i=0;i=0?s=d:(s=d=h,h++),s{"use strict";var Al=kt(),hQ=dt(),xh=pr(),yv=xh.ensureSingle,_D=xh.identity,Vn=fn(),bv=Qa(),dQ=pD(),pQ=yD(),um=Mg().tester;xD.exports=function(r,t,n,a,i,o){var l,s,u=!i,f=!!i&&i.duration>0,v=pQ(r,t,n);if(l=a.selectAll("g.trace").data(v,function(d){return d[0].trace.uid}),l.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),l.order(),gQ(r,l,t),f){o&&(s=o());var h=Al.transition().duration(i.duration).ease(i.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});h.each(function(){a.selectAll("g.trace").each(function(d,m){bD(r,m,t,d,v,this,i)})})}else l.each(function(d,m){bD(r,m,t,d,v,this,i)});u&&l.exit().remove(),a.selectAll("path:not([d])").remove()};function gQ(e,r,t){r.each(function(n){var a=yv(Al.select(this),"g","fills");Vn.setClipUrl(a,t.layerClipId,e);var i=n[0].trace,o=[];i._ownfill&&o.push("_ownFill"),i._nexttrace&&o.push("_nextFill");var l=a.selectAll("g").data(o,_D);l.enter().append("g"),l.exit().each(function(s){i[s]=null}).remove(),l.order().each(function(s){i[s]=yv(Al.select(this),"path","js-fill")})})}function bD(e,r,t,n,a,i,o){var l=e._context.staticPlot,s;mQ(e,r,t,n,a);var u=!!o&&o.duration>0;function f(Je){return u?Je.transition():Je}var v=t.xaxis,h=t.yaxis,d=n[0].trace,m=d.line,p=Al.select(i),y=yv(p,"g","errorbars"),b=yv(p,"g","lines"),C=yv(p,"g","points"),x=yv(p,"g","text");if(hQ.getComponentMethod("errorbars","plot")(e,y,t,o),d.visible!==!0)return;f(p).style("opacity",d.opacity);var _,A,k=d.fill.charAt(d.fill.length-1);k!=="x"&&k!=="y"&&(k="");var M,E;k==="y"?(M=1,E=h.c2p(0,!0)):k==="x"&&(M=0,E=v.c2p(0,!0)),n[0][t.isRangePlot?"nodeRangePlot3":"node3"]=p;var R="",F=[],I=d._prevtrace,W=null,O=null;I&&(R=I._prevRevpath||"",A=I._nextFill,F=I._ownPolygons,W=I._fillsegments,O=I._fillElement);var Z,V,re="",ie="",Q,ee,se,ve,Ce,Ie,ze=[];d._polygons=[];var Xe=[],Le=[],Qe=xh.noop;if(_=d._ownFill,bv.hasLines(d)||d.fill!=="none"){A&&A.datum(n),["hv","vh","hvh","vhv"].indexOf(m.shape)!==-1?(Q=Vn.steps(m.shape),ee=Vn.steps(m.shape.split("").reverse().join(""))):m.shape==="spline"?Q=ee=function(Je){var dr=Je[Je.length-1];return Je.length>1&&Je[0][0]===dr[0]&&Je[0][1]===dr[1]?Vn.smoothclosed(Je.slice(1),m.smoothing):Vn.smoothopen(Je,m.smoothing)}:Q=ee=function(Je){return"M"+Je.join("L")},se=function(Je){return ee(Je.reverse())},Le=dQ(n,{xaxis:v,yaxis:h,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(m.width||1,3)/4,shape:m.shape,backoff:m.backoff,simplify:m.simplify,fill:d.fill}),Xe=new Array(Le.length);var fe=0;for(s=0;s=l[0]&&p.x<=l[1]&&p.y>=s[0]&&p.y<=s[1]}),h=Math.ceil(v.length/f),d=0;a.forEach(function(p,y){var b=p[0].trace;bv.hasMarkers(b)&&b.marker.maxdisplayed>0&&y{"use strict";MD.exports={container:"marker",min:"cmin",max:"cmax"}});var TD=te((a0e,AD)=>{"use strict";var fm=Dn();AD.exports=function(r,t,n){var a={},i={_fullLayout:n},o=fm.getFromTrace(i,t,"x"),l=fm.getFromTrace(i,t,"y"),s=r.orig_x;s===void 0&&(s=r.x);var u=r.orig_y;return u===void 0&&(u=r.y),a.xLabel=fm.tickText(o,o.c2l(s),!0).text,a.yLabel=fm.tickText(l,l.c2l(u),!0).text,a}});var wh=te((i0e,kD)=>{"use strict";var Fb=kt(),_v=fn(),yQ=dt();function bQ(e){var r=Fb.select(e).selectAll("g.trace.scatter");r.style("opacity",function(t){return t[0].trace.opacity}),r.selectAll("g.points").each(function(t){var n=Fb.select(this),a=t.trace||t[0].trace;Ib(n,a,e)}),r.selectAll("g.text").each(function(t){var n=Fb.select(this),a=t.trace||t[0].trace;Hb(n,a,e)}),r.selectAll("g.trace path.js-line").call(_v.lineGroupStyle),r.selectAll("g.trace path.js-fill").call(_v.fillGroupStyle,e,!1),yQ.getComponentMethod("errorbars","style")(r)}function Ib(e,r,t){_v.pointStyle(e.selectAll("path.point"),r,t)}function Hb(e,r,t){_v.textPointStyle(e.selectAll("text"),r,t)}function _Q(e,r,t){var n=r[0].trace;n.selectedpoints?(_v.selectedPointStyle(t.selectAll("path.point"),n),_v.selectedTextStyle(t.selectAll("text"),n)):(Ib(t,n,e),Hb(t,n,e))}kD.exports={style:bQ,stylePoints:Ib,styleText:Hb,styleOnSelect:_Q}});var Bb=te((o0e,SD)=>{"use strict";var xv=Et(),xQ=Qa();SD.exports=function(r,t){var n,a;if(r.mode==="lines")return n=r.line.color,n&&xv.opacity(n)?n:r.fillcolor;if(r.mode==="none")return r.fill?r.fillcolor:"";var i=t.mcc||(r.marker||{}).color,o=t.mlcc||((r.marker||{}).line||{}).color;return a=i&&xv.opacity(i)?i:o&&xv.opacity(o)&&(t.mlw||((r.marker||{}).line||{}).width)?o:"",a?xv.opacity(a)<.3?xv.addOpacity(a,.3):a:(n=(r.line||{}).color,n&&xv.opacity(n)&&xQ.hasLines(r)&&r.line.width?n:r.fillcolor)}});var qD=te((l0e,LD)=>{"use strict";var cm=pr(),CD=ss(),wQ=dt(),MQ=Bb(),Ob=Et(),AQ=cm.fillText;LD.exports=function(r,t,n,a){var i=r.cd,o=i[0].trace,l=r.xa,s=r.ya,u=l.c2p(t),f=s.c2p(n),v=[u,f],h=o.hoveron||"",d=o.mode.indexOf("markers")!==-1?3:.5,m=!!o.xperiodalignment,p=!!o.yperiodalignment;if(h.indexOf("points")!==-1){var y=function(ie){if(m){var Q=l.c2p(ie.xStart),ee=l.c2p(ie.xEnd);return u>=Math.min(Q,ee)&&u<=Math.max(Q,ee)?0:1/0}var se=Math.max(3,ie.mrc||0),ve=1-1/se,Ce=Math.abs(l.c2p(ie.x)-u);return Ce=Math.min(Q,ee)&&f<=Math.max(Q,ee)?0:1/0}var se=Math.max(3,ie.mrc||0),ve=1-1/se,Ce=Math.abs(s.c2p(ie.y)-f);return Ceze!=U>=ze&&(ye=Qe[Le-1][0],Me=Qe[Le][0],U-pe&&(fe=ye+(Me-ye)*(ze-pe)/(U-pe),se=Math.min(se,fe),ve=Math.max(ve,fe)));return se=Math.max(se,0),ve=Math.min(ve,l._length),{x0:se,x1:ve,y0:ze,y1:ze}}if(h.indexOf("fills")!==-1&&o._fillElement){var Z=W(o._fillElement)&&!W(o._fillExclusionElement);if(Z){var V=O(o._polygons);V===null&&(V={x0:v[0],x1:v[0],y0:v[1],y1:v[1]});var re=Ob.defaultLine;return Ob.opacity(o.fillcolor)?re=o.fillcolor:Ob.opacity((o.line||{}).color)&&(re=o.line.color),cm.extendFlat(r,{distance:r.maxHoverDistance,x0:V.x0,x1:V.x1,y0:V.y0,y1:V.y1,color:re,hovertemplate:!1}),delete r.index,o.text&&!cm.isArrayOrTypedArray(o.text)?r.text=String(o.text):r.text=o.name,[r]}}}});var PD=te((s0e,ED)=>{"use strict";var DD=Qa();ED.exports=function(r,t){var n=r.cd,a=r.xaxis,i=r.yaxis,o=[],l=n[0].trace,s,u,f,v,h=!DD.hasMarkers(l)&&!DD.hasText(l);if(h)return[];if(t===!1)for(s=0;s{"use strict";RD.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var HD=te((f0e,ID)=>{"use strict";var Mh=dt().traceIs,Ub=f3();ID.exports=function(r,t,n,a){n("autotypenumbers",a.autotypenumbersDflt);var i=n("type",(a.splomStash||{}).type);i==="-"&&(TQ(t,a.data),t.type==="-"?t.type="linear":r.type=t.type)};function TQ(e,r){if(e.type==="-"){var t=e._id,n=t.charAt(0),a;t.indexOf("scene")!==-1&&(t=n);var i=kQ(r,t,n);if(i){if(i.type==="histogram"&&n==={v:"y",h:"x"}[i.orientation||"v"]){e.type="linear";return}var o=n+"calendar",l=i[o],s={noMultiCategory:!Mh(i,"cartesian")||Mh(i,"noMultiCategory")};if(i.type==="box"&&i._hasPreCompStats&&n==={h:"x",v:"y"}[i.orientation||"v"]&&(s.noMultiCategory=!0),s.autotypenumbers=e.autotypenumbers,FD(i,n)){var u=ND(i),f=[];for(a=0;a0&&(a["_"+t+"axes"]||{})[r])return a;if((a[t+"axis"]||t)===r){if(FD(a,t))return a;if((a[t]||[]).length||a[t+"0"])return a}}}function ND(e){return{v:"x",h:"y"}[e.orientation||"v"]}function FD(e,r){var t=ND(e),n=Mh(e,"box-violin"),a=Mh(e._fullInput||{},"candlestick");return n&&!a&&r===t&&e[t]===void 0&&e[t+"0"]===void 0}});var OD=te((c0e,BD)=>{"use strict";var SQ=ji().isTypedArraySpec;function CQ(e,r){var t=r.dataAttr||e._id.charAt(0),n={},a,i,o;if(r.axData)a=r.axData;else for(a=[],i=0;i0||SQ(i),l;o&&(l="array");var s=n("categoryorder",l),u;s==="array"&&(u=n("categoryarray")),!o&&s==="array"&&(s=t.categoryorder="trace"),s==="trace"?t._initialCategories=[]:s==="array"?t._initialCategories=u.slice():(u=CQ(t,a).sort(),s==="category ascending"?t._initialCategories=u:s==="category descending"&&(t._initialCategories=u.reverse()))}}});var GD=te((v0e,YD)=>{"use strict";var UD=$l().mix,LQ=vl(),qQ=pr();YD.exports=function(r,t,n,a){a=a||{};var i=a.dfltColor;function o(E,R){return qQ.coerce2(r,t,a.attributes,E,R)}var l=o("linecolor",i),s=o("linewidth"),u=n("showline",a.showLine||!!l||!!s);u||(delete t.linecolor,delete t.linewidth);var f=UD(i,a.bgColor,a.blend||LQ.lightFraction).toRgbString(),v=o("gridcolor",f),h=o("gridwidth"),d=o("griddash"),m=n("showgrid",a.showGrid||!!v||!!h||!!d);if(m||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),a.hasMinor){var p=UD(t.gridcolor,a.bgColor,67).toRgbString(),y=o("minor.gridcolor",p),b=o("minor.gridwidth",t.gridwidth||1),C=o("minor.griddash",t.griddash||"solid"),x=n("minor.showgrid",!!y||!!b||!!C);x||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!a.noZeroLine){var _=o("zerolinelayer"),A=o("zerolinecolor",i),k=o("zerolinewidth"),M=n("zeroline",a.showGrid||!!A||!!k);M||(delete t.zerolinelayer,delete t.zerolinecolor,delete t.zerolinewidth)}}});var Gb=te((h0e,JD)=>{"use strict";var VD=Ht(),DQ=dt(),Ah=pr(),EQ=_n(),PQ=yl(),Yb=ml(),WD=R2(),ZD=N2(),RQ=H2(),zQ=B2(),NQ=OD(),FQ=GD(),IQ=D3(),XD=bp(),vm=Ea().WEEKDAY_PATTERN,HQ=Ea().HOUR_PATTERN;JD.exports=function(r,t,n,a,i){var o=a.letter,l=a.font||{},s=a.splomStash||{},u=n("visible",!a.visibleDflt),f=t._template||{},v=t.type||f.type||"-",h;if(v==="date"){var d=DQ.getComponentMethod("calendars","handleDefaults");d(r,t,"calendar",a.calendar),a.noTicklabelmode||(h=n("ticklabelmode"))}!a.noTicklabelindex&&(v==="date"||v==="linear")&&n("ticklabelindex");var m="";(!a.noTicklabelposition||v==="multicategory")&&(m=Ah.coerce(r,t,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h==="period"?["outside","inside"]:o==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),a.noTicklabeloverflow||n("ticklabeloverflow",m.indexOf("inside")!==-1?"hide past domain":v==="category"||v==="multicategory"?"allow":"hide past div"),XD(t,i),IQ(r,t,n,a),NQ(r,t,n,a),a.noHover||(v!=="category"&&n("hoverformat"),a.noUnifiedhovertitle||n("unifiedhovertitle.text"));var p=n("color"),y=p!==Yb.color.dflt?p:l.color,b=s.label||i._dfltTitle[o];if(zQ(r,t,n,v,a),!u)return t;n("title.text",b),Ah.coerceFont(n,"title.font",l,{overrideDflt:{size:Ah.bigFont(l.size),color:y}}),WD(r,t,n,v);var C=a.hasMinor;if(C&&(EQ.newContainer(t,"minor"),WD(r,t,n,v,{isMinor:!0})),RQ(r,t,n,v,a),ZD(r,t,n,a),C){var x=a.isMinor;a.isMinor=!0,ZD(r,t,n,a),a.isMinor=x}FQ(r,t,n,{dfltColor:p,bgColor:a.bgColor,showGrid:a.showGrid,hasMinor:C,attributes:Yb}),C&&!t.minor.ticks&&!t.minor.showgrid&&delete t.minor,(t.showline||t.ticks)&&n("mirror");var _=v==="multicategory";if(!a.noTickson&&(v==="category"||_)&&(t.ticks||t.showgrid)&&(_?(n("tickson","boundaries"),delete t.ticklabelposition):n("tickson")),_){var A=n("showdividers");A&&(n("dividercolor"),n("dividerwidth"))}if(v==="date")if(PQ(r,t,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:BQ}),!t.rangebreaks.length)delete t.rangebreaks;else{for(var k=0;k=2){var o="",l,s;if(i.length===2){for(l=0;l<2;l++)if(s=jD(i[l]),s){o=vm;break}}var u=n("pattern",o);if(u===vm)for(l=0;l<2;l++)s=jD(i[l]),s&&(r.bounds[l]=i[l]=s-1);if(u)for(l=0;l<2;l++)switch(s=i[l],u){case vm:if(!VD(s)){r.enabled=!1;return}if(s=+s,s!==Math.floor(s)||s<0||s>=7){r.enabled=!1;return}r.bounds[l]=i[l]=s;break;case HQ:if(!VD(s)){r.enabled=!1;return}if(s=+s,s<0||s>24){r.enabled=!1;return}r.bounds[l]=i[l]=s;break}if(t.autorange===!1){var f=t.range;if(f[0]f[1]){r.enabled=!1;return}}else if(i[0]>f[0]&&i[1]{"use strict";var UQ=Ht(),hm=pr();$D.exports=function(r,t,n,a){var i=a.counterAxes||[],o=a.overlayableAxes||[],l=a.letter,s=a.grid,u=a.overlayingDomain,f,v,h,d,m,p;s&&(v=s._domains[l][s._axisMap[t._id]],f=s._anchors[t._id],v&&(h=s[l+"side"].split(" ")[0],d=s.domain[l][h==="right"||h==="top"?1:0])),v=v||[0,1],f=f||(UQ(r.position)?"free":i[0]||"free"),h=h||(l==="x"?"bottom":"left"),d=d||0,m=0,p=!1;var y=hm.coerce(r,t,{anchor:{valType:"enumerated",values:["free"].concat(i),dflt:f}},"anchor"),b=hm.coerce(r,t,{side:{valType:"enumerated",values:l==="x"?["bottom","top"]:["left","right"],dflt:h}},"side");if(y==="free"){if(l==="y"){var C=n("autoshift");C&&(d=b==="left"?u[0]:u[1],p=t.automargin?t.automargin:!0,m=b==="left"?-3:3),n("shift",m)}n("position",d)}n("automargin",p);var x=!1;if(o.length&&(x=hm.coerce(r,t,{overlaying:{valType:"enumerated",values:[!1].concat(o),dflt:!1}},"overlaying")),!x){var _=n("domain",v);_[0]>_[1]-1/4096&&(t.domain=v),hm.noneOrAll(r.domain,t.domain,v),t.tickmode==="sync"&&(t.tickmode="auto")}return n("layer"),t}});var oE=te((p0e,iE)=>{"use strict";var Dc=pr(),KD=Et(),YQ=Gu().isUnifiedHover,GQ=n5(),QD=_n(),VQ=k0(),eE=ml(),WQ=HD(),rE=Gb(),ZQ=U1(),tE=Vb(),Zb=fa(),hs=Zb.id2name,nE=Zb.name2id,XQ=Ea().AX_ID_PATTERN,aE=dt(),dm=aE.traceIs,Wb=aE.getComponentMethod;function pm(e,r,t){Array.isArray(e[r])?e[r].push(t):e[r]=[t]}iE.exports=function(r,t,n){var a=t.autotypenumbers,i={},o={},l={},s={},u={},f={},v={},h={},d={},m={},p,y;for(p=0;p{"use strict";var jQ=kt(),lE=dt(),gm=pr(),to=fn(),mm=Dn();sE.exports=function(r,t,n,a){var i=r._fullLayout;if(t.length===0){mm.redrawComponents(r);return}function o(y){var b=y.xaxis,C=y.yaxis;i._defs.select("#"+y.clipId+"> rect").call(to.setTranslate,0,0).call(to.setScale,1,1),y.plot.call(to.setTranslate,b._offset,C._offset).call(to.setScale,1,1);var x=y.plot.selectAll(".scatterlayer .trace");x.selectAll(".point").call(to.setPointGroupScale,1,1),x.selectAll(".textpoint").call(to.setTextPointsScale,1,1),x.call(to.hideOutsideRangePoints,y)}function l(y,b){var C=y.plotinfo,x=C.xaxis,_=C.yaxis,A=x._length,k=_._length,M=!!y.xr1,E=!!y.yr1,R=[];if(M){var F=gm.simpleMap(y.xr0,x.r2l),I=gm.simpleMap(y.xr1,x.r2l),W=F[1]-F[0],O=I[1]-I[0];R[0]=(F[0]*(1-b)+b*I[0]-F[0])/(F[1]-F[0])*A,R[2]=A*(1-b+b*O/W),x.range[0]=x.l2r(F[0]*(1-b)+b*I[0]),x.range[1]=x.l2r(F[1]*(1-b)+b*I[1])}else R[0]=0,R[2]=A;if(E){var Z=gm.simpleMap(y.yr0,_.r2l),V=gm.simpleMap(y.yr1,_.r2l),re=Z[1]-Z[0],ie=V[1]-V[0];R[1]=(Z[1]*(1-b)+b*V[1]-Z[1])/(Z[0]-Z[1])*k,R[3]=k*(1-b+b*ie/re),_.range[0]=x.l2r(Z[0]*(1-b)+b*V[0]),_.range[1]=_.l2r(Z[1]*(1-b)+b*V[1])}else R[1]=0,R[3]=k;mm.drawOne(r,x,{skipTitle:!0}),mm.drawOne(r,_,{skipTitle:!0}),mm.redrawComponents(r,[x._id,_._id]);var Q=M?A/R[2]:1,ee=E?k/R[3]:1,se=M?R[0]:0,ve=E?R[1]:0,Ce=M?R[0]/R[2]*A:0,Ie=E?R[1]/R[3]*k:0,ze=x._offset-Ce,Xe=_._offset-Ie;C.clipRect.call(to.setTranslate,se,ve).call(to.setScale,1/Q,1/ee),C.plot.call(to.setTranslate,ze,Xe).call(to.setScale,Q,ee),to.setPointGroupScale(C.zoomScalePts,1/Q,1/ee),to.setTextPointsScale(C.zoomScaleTxt,1/Q,1/ee)}var s;a&&(s=a());function u(){for(var y={},b=0;bn.duration?(u(),d=window.cancelAnimationFrame(p)):d=window.requestAnimationFrame(p)}return v=Date.now(),d=window.requestAnimationFrame(p),Promise.resolve()}});var Xb=te(Ba=>{"use strict";var bm=kt(),fE=dt(),Ec=pr(),JQ=ca(),$Q=fn(),cE=_1().getModuleCalcData,of=fa(),Tl=Ea(),KQ=sc(),jt=Ec.ensureSingle;function ym(e,r,t){return Ec.ensureSingle(e,r,t,function(n){n.datum(t)})}var Pc=Tl.zindexSeparator;Ba.name="cartesian";Ba.attr=["xaxis","yaxis"];Ba.idRoot=["x","y"];Ba.idRegex=Tl.idRegex;Ba.attrRegex=Tl.attrRegex;Ba.attributes=zD();Ba.layoutAttributes=ml();Ba.supplyLayoutDefaults=oE();Ba.transitionAxes=uE();Ba.finalizeSubplots=function(e,r){var t=r._subplots,n=t.xaxis,a=t.yaxis,i=t.cartesian,o=i,l={},s={},u,f,v;for(u=0;u0){var d=h.id;if(d.indexOf(Pc)!==-1)continue;d+=Pc+(u+1),h=Ec.extendFlat({},h,{id:d,plot:a._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var m=[],p,y=0;y1&&(A+=Pc+_),x.push(l+A),o=0;o1,v=r.mainplotinfo;if(!r.mainplot||f)if(u)r.xlines=jt(n,"path","xlines-above"),r.ylines=jt(n,"path","ylines-above"),r.xaxislayer=jt(n,"g","xaxislayer-above"),r.yaxislayer=jt(n,"g","yaxislayer-above");else{if(!o){var h=jt(n,"g","layer-subplot");r.shapelayer=jt(h,"g","shapelayer"),r.imagelayer=jt(h,"g","imagelayer"),v&&f?(r.minorGridlayer=v.minorGridlayer,r.gridlayer=v.gridlayer,r.zerolinelayer=v.zerolinelayer):(r.minorGridlayer=jt(n,"g","minor-gridlayer"),r.gridlayer=jt(n,"g","gridlayer"),r.zerolinelayer=jt(n,"g","zerolinelayer"));var d=jt(n,"g","layer-between");r.shapelayerBetween=jt(d,"g","shapelayer"),r.imagelayerBetween=jt(d,"g","imagelayer"),jt(n,"path","xlines-below"),jt(n,"path","ylines-below"),r.overlinesBelow=jt(n,"g","overlines-below"),jt(n,"g","xaxislayer-below"),jt(n,"g","yaxislayer-below"),r.overaxesBelow=jt(n,"g","overaxes-below")}r.overplot=jt(n,"g","overplot"),r.plot=jt(r.overplot,"g",a),v&&f?r.zerolinelayerAbove=v.zerolinelayerAbove:r.zerolinelayerAbove=jt(n,"g","zerolinelayer-above"),o||(r.xlines=jt(n,"path","xlines-above"),r.ylines=jt(n,"path","ylines-above"),r.overlinesAbove=jt(n,"g","overlines-above"),jt(n,"g","xaxislayer-above"),jt(n,"g","yaxislayer-above"),r.overaxesAbove=jt(n,"g","overaxes-above"),r.xlines=n.select(".xlines-"+l),r.ylines=n.select(".ylines-"+s),r.xaxislayer=n.select(".xaxislayer-"+l),r.yaxislayer=n.select(".yaxislayer-"+s))}else{var m=v.plotgroup,p=a+"-x",y=a+"-y";r.minorGridlayer=v.minorGridlayer,r.gridlayer=v.gridlayer,r.zerolinelayer=v.zerolinelayer,r.zerolinelayerAbove=v.zerolinelayerAbove,jt(v.overlinesBelow,"path",p),jt(v.overlinesBelow,"path",y),jt(v.overaxesBelow,"g",p),jt(v.overaxesBelow,"g",y),r.plot=jt(v.overplot,"g",a),jt(v.overlinesAbove,"path",p),jt(v.overlinesAbove,"path",y),jt(v.overaxesAbove,"g",p),jt(v.overaxesAbove,"g",y),r.xlines=m.select(".overlines-"+l).select("."+p),r.ylines=m.select(".overlines-"+s).select("."+y),r.xaxislayer=m.select(".overaxes-"+l).select("."+p),r.yaxislayer=m.select(".overaxes-"+s).select("."+y)}o||(u||(ym(r.minorGridlayer,"g",r.xaxis._id),ym(r.minorGridlayer,"g",r.yaxis._id),r.minorGridlayer.selectAll("g").map(function(b){return b[0]}).sort(of.idSort),ym(r.gridlayer,"g",r.xaxis._id),ym(r.gridlayer,"g",r.yaxis._id),r.gridlayer.selectAll("g").map(function(b){return b[0]}).sort(of.idSort)),r.xlines.style("fill","none").classed("crisp",!0),r.ylines.style("fill","none").classed("crisp",!0))}function dE(e,r){if(e){var t={};e.each(function(s){var u=s[0],f=bm.select(this);f.remove(),pE(u,r),t[u]=!0});for(var n in r._plots)for(var a=r._plots[n],i=a.overlays||[],o=0;o{"use strict";var _m=Qa();gE.exports={hasLines:_m.hasLines,hasMarkers:_m.hasMarkers,hasText:_m.hasText,isBubble:_m.isBubble,attributes:Sc(),layoutAttributes:Wd(),supplyDefaults:qq(),crossTraceDefaults:Rq(),supplyLayoutDefaults:Nq(),calc:im().calc,crossTraceCalc:sD(),arraysToCalcdata:mh(),plot:wD(),colorbar:Nb(),formatLabels:TD(),style:wh().style,styleOnSelect:wh().styleOnSelect,hoverPoints:qD(),selectPoints:PD(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:Xb(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var _E=te((b0e,bE)=>{"use strict";var eee=kt(),ree=Et(),yE=V5(),jb=pr(),tee=jb.strScale,nee=jb.strRotate,aee=jb.strTranslate;bE.exports=function(r,t,n){var a=r.node(),i=yE[n.arrowhead||0],o=yE[n.startarrowhead||0],l=(n.arrowwidth||1)*(n.arrowsize||1),s=(n.arrowwidth||1)*(n.startarrowsize||1),u=t.indexOf("start")>=0,f=t.indexOf("end")>=0,v=i.backoff*l+n.standoff,h=o.backoff*s+n.startstandoff,d,m,p,y;if(a.nodeName==="line"){d={x:+r.attr("x1"),y:+r.attr("y1")},m={x:+r.attr("x2"),y:+r.attr("y2")};var b=d.x-m.x,C=d.y-m.y;if(p=Math.atan2(C,b),y=p+Math.PI,v&&h&&v+h>Math.sqrt(b*b+C*C)){Z();return}if(v){if(v*v>b*b+C*C){Z();return}var x=v*Math.cos(p),_=v*Math.sin(p);m.x+=x,m.y+=_,r.attr({x2:m.x,y2:m.y})}if(h){if(h*h>b*b+C*C){Z();return}var A=h*Math.cos(p),k=h*Math.sin(p);d.x-=A,d.y-=k,r.attr({x1:d.x,y1:d.y})}}else if(a.nodeName==="path"){var M=a.getTotalLength(),E="";if(M{"use strict";var xE=kt(),Jb=dt(),iee=ca(),sf=pr(),$b=sf.strTranslate,kh=Dn(),Rc=Et(),iu=fn(),wE=ss(),Kb=vi(),Qb=$u(),Th=To(),oee=_n().arrayEditor,lee=_E();TE.exports={draw:see,drawOne:ME,drawRaw:AE};function see(e){var r=e._fullLayout;r._infolayer.selectAll(".annotation").remove();for(var t=0;t2/3?rr="right":rr="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[rr]}for(var pe=!1,U=["x","y"],K=0;K1)&&(Be===ke?(tr=Ne.r2fraction(r["a"+$]),(tr<0||tr>1)&&(pe=!0)):pe=!0),dr=Ne._offset+Ne.r2p(r[$]),Oe=.5}else{var Ue=Ur==="domain";$==="x"?(Te=r[$],dr=Ue?Ne._offset+Ne._length*Te:dr=l.l+l.w*Te):(Te=1-r[$],dr=Ue?Ne._offset+Ne._length*Te:dr=l.t+l.h*Te),Oe=r.showarrow?.5:Te}if(r.showarrow){Je.head=dr;var Ze=r["a"+$];if(kr=or*Me(.5,r.xanchor)-Ye*Me(.5,r.yanchor),Be===ke){var mr=kh.getRefType(Be);mr==="domain"?($==="y"&&(Ze=1-Ze),Je.tail=Ne._offset+Ne._length*Ze):mr==="paper"?$==="y"?(Ze=1-Ze,Je.tail=l.t+l.h*Ze):Je.tail=l.l+l.w*Ze:Je.tail=Ne._offset+Ne.r2p(Ze),gr=kr}else Je.tail=dr+Ze,gr=kr+Ze;Je.text=Je.tail+kr;var Tr=o[$==="x"?"width":"height"];if(ke==="paper"&&(Je.head=sf.constrain(Je.head,1,Tr-1)),Be==="pixel"){var yr=-Math.max(Je.tail-3,Je.text),wr=Math.min(Je.tail+3,Je.text)-Tr;yr>0?(Je.tail+=yr,Je.text+=yr):wr>0&&(Je.tail-=wr,Je.text-=wr)}Je.tail+=vr,Je.head+=vr}else kr=nr*Me(Oe,lr),gr=kr,Je.text=dr+kr;Je.text+=vr,kr+=vr,gr+=vr,r["_"+$+"padplus"]=nr/2+gr,r["_"+$+"padminus"]=nr/2-gr,r["_"+$+"size"]=nr,r["_"+$+"shift"]=kr}if(pe){M.remove();return}var Hr=0,Sr=0;if(r.align!=="left"&&(Hr=(Le-ze)*(r.align==="center"?.5:1)),r.valign!=="top"&&(Sr=(Qe-Xe)*(r.valign==="middle"?.5:1)),Ce)ve.select("svg").attr({x:F+Hr-1,y:F+Sr}).call(iu.setClipUrl,W?p:null,e);else{var Dr=F+Sr-Ie.top,ur=F+Hr-Ie.left;re.call(Kb.positionText,ur,Dr).call(iu.setClipUrl,W?p:null,e)}O.select("rect").call(iu.setRect,F,F,Le,Qe),I.call(iu.setRect,E/2,E/2,fe-E,ye-E),M.call(iu.setTranslate,Math.round(y.x.text-fe/2),Math.round(y.y.text-ye/2)),x.attr({transform:"rotate("+b+","+y.x.text+","+y.y.text+")"});var _e=function(Ke,rr){C.selectAll(".annotation-arrow-g").remove();var Lr=y.x.head,Yr=y.y.head,Fr=y.x.tail+Ke,lt=y.y.tail+rr,xt=y.x.text+Ke,Rt=y.y.text+rr,Kt=sf.rotationXYMatrix(b,xt,Rt),cn=sf.apply2DTransform(Kt),pn=sf.apply2DTransform2(Kt),Mn=+I.attr("width"),Xt=+I.attr("height"),Qt=xt-.5*Mn,en=Qt+Mn,an=Rt-.5*Xt,jr=an+Xt,Ut=[[Qt,an,Qt,jr],[Qt,jr,en,jr],[en,jr,en,an],[en,an,Qt,an]].map(pn);if(!Ut.reduce(function(dn,On){return dn^!!sf.segmentsIntersect(Lr,Yr,Lr+1e6,Yr+1e6,On[0],On[1],On[2],On[3])},!1)){Ut.forEach(function(dn){var On=sf.segmentsIntersect(Fr,lt,Lr,Yr,dn[0],dn[1],dn[2],dn[3]);On&&(Fr=On.x,lt=On.y)});var Nt=r.arrowwidth,rn=r.arrowcolor,Tn=r.arrowside,vn=C.append("g").style({opacity:Rc.opacity(rn)}).classed("annotation-arrow-g",!0),Yt=vn.append("path").attr("d","M"+Fr+","+lt+"L"+Lr+","+Yr).style("stroke-width",Nt+"px").call(Rc.stroke,Rc.rgb(rn));if(lee(Yt,Tn,r),s.annotationPosition&&Yt.node().parentNode&&!n){var Bn=Lr,Ga=Yr;if(r.standoff){var kn=Math.sqrt(Math.pow(Lr-Fr,2)+Math.pow(Yr-lt,2));Bn+=r.standoff*(Fr-Lr)/kn,Ga+=r.standoff*(lt-Yr)/kn}var Va=vn.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(Fr-Bn)+","+(lt-Ga),transform:$b(Bn,Ga)}).style("stroke-width",Nt+6+"px").call(Rc.stroke,"rgba(0,0,0,0)").call(Rc.fill,"rgba(0,0,0,0)"),ia,hn;Th.init({element:Va.node(),gd:e,prepFn:function(){var dn=iu.getTranslate(M);ia=dn.x,hn=dn.y,a&&a.autorange&&h(a._name+".autorange",!0),i&&i.autorange&&h(i._name+".autorange",!0)},moveFn:function(dn,On){var gi=cn(ia,hn),io=gi[0]+dn,mi=gi[1]+On;M.call(iu.setTranslate,io,mi),d("x",lf(a,dn,"x",l,r)),d("y",lf(i,On,"y",l,r)),r.axref===r.xref&&d("ax",lf(a,dn,"ax",l,r)),r.ayref===r.yref&&d("ay",lf(i,On,"ay",l,r)),vn.attr("transform",$b(dn,On)),x.attr({transform:"rotate("+b+","+io+","+mi+")"})},doneFn:function(){Jb.call("_guiRelayout",e,m());var dn=document.querySelector(".js-notes-box-panel");dn&&dn.redraw(dn.selectedObj)}})}}};if(r.showarrow&&_e(0,0),_){var Ae;Th.init({element:M.node(),gd:e,prepFn:function(){Ae=x.attr("transform")},moveFn:function(Ke,rr){var Lr="pointer";if(r.showarrow)r.axref===r.xref?d("ax",lf(a,Ke,"ax",l,r)):d("ax",r.ax+Ke),r.ayref===r.yref?d("ay",lf(i,rr,"ay",l.w,r)):d("ay",r.ay+rr),_e(Ke,rr);else{if(n)return;var Yr,Fr;if(a)Yr=lf(a,Ke,"x",l,r);else{var lt=r._xsize/l.w,xt=r.x+(r._xshift-r.xshift)/l.w-lt/2;Yr=Th.align(xt+Ke/l.w,lt,0,1,r.xanchor)}if(i)Fr=lf(i,rr,"y",l,r);else{var Rt=r._ysize/l.h,Kt=r.y-(r._yshift+r.yshift)/l.h-Rt/2;Fr=Th.align(Kt-rr/l.h,Rt,0,1,r.yanchor)}d("x",Yr),d("y",Fr),(!a||!i)&&(Lr=Th.getCursor(a?.5:Yr,i?.5:Fr,r.xanchor,r.yanchor))}x.attr({transform:$b(Ke,rr)+Ae}),Qb(M,Lr)},clickFn:function(Ke,rr){r.captureevents&&e.emit("plotly_clickannotation",k(rr))},doneFn:function(){Qb(M),Jb.call("_guiRelayout",e,m());var Ke=document.querySelector(".js-notes-box-panel");Ke&&Ke.redraw(Ke.selectedObj)}})}}s.annotationText?re.call(Kb.makeEditable,{delegate:M,gd:e}).call(ie).on("edit",function(ee){r.text=ee,this.call(ie),d("text",ee),a&&a.autorange&&h(a._name+".autorange",!0),i&&i.autorange&&h(i._name+".autorange",!0),Jb.call("_guiRelayout",e,m())}):re.call(ie)}});var DE=te((x0e,qE)=>{"use strict";var kE=pr(),uee=dt(),SE=_n().arrayEditor;qE.exports={hasClickToShow:fee,onClick:cee};function fee(e,r){var t=LE(e,r);return t.on.length>0||t.explicitOff.length>0}function cee(e,r){var t=LE(e,r),n=t.on,a=t.off.concat(t.explicitOff),i={},o=e._fullLayout.annotations,l,s;if(n.length||a.length){for(l=0;l{"use strict";var e4=pr(),wv=Et();EE.exports=function(r,t,n,a){a("opacity");var i=a("bgcolor"),o=a("bordercolor"),l=wv.opacity(o);a("borderpad");var s=a("borderwidth"),u=a("showarrow");a("text",u?" ":n._dfltTitle.annotation),a("textangle"),e4.coerceFont(a,"font",n.font),a("width"),a("align");var f=a("height");if(f&&a("valign"),u){var v=a("arrowside"),h,d;v.indexOf("end")!==-1&&(h=a("arrowhead"),d=a("arrowsize")),v.indexOf("start")!==-1&&(a("startarrowhead",h),a("startarrowsize",d)),a("arrowcolor",l?t.bordercolor:wv.defaultLine),a("arrowwidth",(l&&s||1)*2),a("standoff"),a("startstandoff")}var m=a("hovertext"),p=n.hoverlabel||{};if(m){var y=a("hoverlabel.bgcolor",p.bgcolor||(wv.opacity(i)?wv.rgb(i):wv.defaultLine)),b=a("hoverlabel.bordercolor",p.bordercolor||wv.contrast(y)),C=e4.extendFlat({},p.font);C.color||(C.color=b),e4.coerceFont(a,"hoverlabel.font",C)}a("captureevents",!!m)}});var RE=te((M0e,PE)=>{"use strict";var t4=pr(),zc=Dn(),vee=yl(),hee=r4(),dee=hv();PE.exports=function(r,t){vee(r,t,{name:"annotations",handleItemDefaults:pee})};function pee(e,r,t){function n(x,_){return t4.coerce(e,r,dee,x,_)}var a=n("visible"),i=n("clicktoshow");if(a||i){hee(e,r,t,n);for(var o=r.showarrow,l=["x","y"],s=[-10,-30],u={_fullLayout:t},f=0;f<2;f++){var v=l[f],h=zc.coerceRef(e,r,u,v,"","paper");if(h!=="paper"){var d=zc.getFromId(u,h);d._annIndices.push(r._index)}if(zc.coercePosition(r,u,n,h,v,.5),o){var m="a"+v,p=zc.coerceRef(e,r,u,m,"pixel",["pixel","paper"]);p!=="pixel"&&p!==h&&(p=r[m]="pixel");var y=p==="pixel"?s[f]:.4;zc.coercePosition(r,u,n,p,m,y)}n(v+"anchor"),n(v+"shift")}if(t4.noneOrAll(e,r,["x","y"]),o&&t4.noneOrAll(e,r,["ax","ay"]),i){var b=n("xclick"),C=n("yclick");r._xclick=b===void 0?r.x:zc.cleanPosition(b,u,r.xref),r._yclick=C===void 0?r.y:zc.cleanPosition(C,u,r.yref)}}}});var FE=te((A0e,NE)=>{"use strict";var n4=pr(),Nc=Dn(),gee=xm().draw;NE.exports=function(r){var t=r._fullLayout,n=n4.filterVisible(t.annotations);if(n.length&&r._fullData.length)return n4.syncOrAsync([gee,mee],r)};function mee(e){var r=e._fullLayout;n4.filterVisible(r.annotations).forEach(function(t){var n=Nc.getFromId(e,t.xref),a=Nc.getFromId(e,t.yref),i=Nc.getRefType(t.xref),o=Nc.getRefType(t.yref);t._extremes={},i==="range"&&zE(t,n),o==="range"&&zE(t,a)})}function zE(e,r){var t=r._id,n=t.charAt(0),a=e[n],i=e["a"+n],o=e[n+"ref"],l=e["a"+n+"ref"],s=e["_"+n+"padplus"],u=e["_"+n+"padminus"],f={x:1,y:-1}[n]*e[n+"shift"],v=3*e.arrowsize*e.arrowwidth||0,h=v+f,d=v-f,m=3*e.startarrowsize*e.arrowwidth||0,p=m+f,y=m-f,b;if(l===o){var C=Nc.findExtremes(r,[r.r2c(a)],{ppadplus:h,ppadminus:d}),x=Nc.findExtremes(r,[r.r2c(i)],{ppadplus:Math.max(s,p),ppadminus:Math.max(u,y)});b={min:[C.min[0],x.min[0]],max:[C.max[0],x.max[0]]}}else p=i?p+i:p,y=i?y-i:y,b=Nc.findExtremes(r,[r.r2c(a)],{ppadplus:Math.max(s,h,p),ppadminus:Math.max(u,d,y)});e._extremes[t]=b}});var HE=te((T0e,IE)=>{"use strict";var yee=Ht(),bee=vd();IE.exports=function(r,t,n,a){t=t||{};var i=n==="log"&&t.type==="linear",o=n==="linear"&&t.type==="log";if(!(i||o))return;var l=r._fullLayout.annotations,s=t._id.charAt(0),u,f;function v(d){var m=u[d],p=null;i?p=bee(m,t.range):p=Math.pow(10,m),yee(p)||(p=null),a(f+d,p)}for(var h=0;h{"use strict";var a4=xm(),BE=DE();OE.exports={moduleType:"component",name:"annotations",layoutAttributes:hv(),supplyLayoutDefaults:RE(),includeBasePlot:ih()("annotations"),calcAutorange:FE(),draw:a4.draw,drawOne:a4.drawOne,drawRaw:a4.drawRaw,hasClickToShow:BE.hasClickToShow,onClick:BE.onClick,convertCoords:HE()}});var wm=te((S0e,YE)=>{"use strict";var wn=hv(),_ee=_o().overrideAll,xee=_n().templatedArray;YE.exports=_ee(xee("annotation",{visible:wn.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:wn.xanchor,xshift:wn.xshift,yanchor:wn.yanchor,yshift:wn.yshift,text:wn.text,textangle:wn.textangle,font:wn.font,width:wn.width,height:wn.height,opacity:wn.opacity,align:wn.align,valign:wn.valign,bgcolor:wn.bgcolor,bordercolor:wn.bordercolor,borderpad:wn.borderpad,borderwidth:wn.borderwidth,showarrow:wn.showarrow,arrowcolor:wn.arrowcolor,arrowhead:wn.arrowhead,startarrowhead:wn.startarrowhead,arrowside:wn.arrowside,arrowsize:wn.arrowsize,startarrowsize:wn.startarrowsize,arrowwidth:wn.arrowwidth,standoff:wn.standoff,startstandoff:wn.startstandoff,hovertext:wn.hovertext,hoverlabel:wn.hoverlabel,captureevents:wn.captureevents}),"calc","from-root")});var VE=te((C0e,GE)=>{"use strict";var i4=pr(),wee=Dn(),Mee=yl(),Aee=r4(),Tee=wm();GE.exports=function(r,t,n){Mee(r,t,{name:"annotations",handleItemDefaults:kee,fullLayout:n.fullLayout})};function kee(e,r,t,n){function a(l,s){return i4.coerce(e,r,Tee,l,s)}function i(l){var s=l+"axis",u={_fullLayout:{}};return u._fullLayout[s]=t[s],wee.coercePosition(r,u,a,l,l,.5)}var o=a("visible");o&&(Aee(e,r,n.fullLayout,a),i("x"),i("y"),i("z"),i4.noneOrAll(e,r,["x","y","z"]),r.xref="x",r.yref="y",r.zref="z",a("xanchor"),a("yanchor"),a("xshift"),a("yshift"),r.showarrow&&(r.axref="pixel",r.ayref="pixel",a("ax",-10),a("ay",-30),i4.noneOrAll(e,r,["ax","ay"])))}});var jE=te((L0e,XE)=>{"use strict";var WE=pr(),ZE=Dn();XE.exports=function(r){for(var t=r.fullSceneLayout,n=t.annotations,a=0;a{"use strict";function o4(e,r){var t=[0,0,0,0],n,a;for(n=0;n<4;++n)for(a=0;a<4;++a)t[a]+=e[4*n+a]*r[n];return t}function Cee(e,r){var t=o4(e.projection,o4(e.view,o4(e.model,[r[0],r[1],r[2],1])));return t}JE.exports=Cee});var QE=te((D0e,KE)=>{"use strict";var Lee=xm().drawRaw,qee=$E(),Dee=["x","y","z"];KE.exports=function(r){for(var t=r.fullSceneLayout,n=r.dataScale,a=t.annotations,i=0;i1){l=!0;break}}l?r.fullLayout._infolayer.select(".annotation-"+r.id+'[data-index="'+i+'"]').remove():(o._pdata=qee(r.glplot.cameraParams,[t.xaxis.r2l(o.x)*n[0],t.yaxis.r2l(o.y)*n[1],t.zaxis.r2l(o.z)*n[2]]),Lee(r.graphDiv,o,i,r.id,o._xa,o._ya))}}});var tP=te((E0e,rP)=>{"use strict";var Eee=dt(),eP=pr();rP.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:wm()}}},layoutAttributes:wm(),handleDefaults:VE(),includeBasePlot:Pee,convert:jE(),draw:QE()};function Pee(e,r){var t=Eee.subplotsRegistry.gl3d;if(t)for(var n=t.attrRegex,a=Object.keys(e),i=0;i{"use strict";var nP=hv(),aP=$a(),iP=Sc().line,Ree=Kl().dash,kl=sa().extendFlat,zee=_n().templatedArray,P0e=ah(),Mv=bo(),{shapeTexttemplateAttrs:Nee,templatefallbackAttrs:Fee}=Qf(),Iee=Md();oP.exports=zee("shape",{visible:kl({},Mv.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:kl({},Mv.legend,{editType:"calc+arraydraw"}),legendgroup:kl({},Mv.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:kl({},Mv.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:aP({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:kl({},Mv.legendrank,{editType:"calc+arraydraw"}),legendwidth:kl({},Mv.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:kl({},nP.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:kl({},nP.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:kl({},iP.color,{editType:"arraydraw"}),width:kl({},iP.width,{editType:"calc+arraydraw"}),dash:kl({},Ree,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:Nee({},{keys:Object.keys(Iee)}),texttemplatefallback:Fee({editType:"arraydraw"}),font:aP({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var uP=te((z0e,sP)=>{"use strict";var Sh=pr(),Av=Dn(),Hee=yl(),Bee=l4(),lP=ef();sP.exports=function(r,t){Hee(r,t,{name:"shapes",handleItemDefaults:Uee})};function Oee(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}function Uee(e,r,t){function n(ee,se){return Sh.coerce(e,r,Bee,ee,se)}r._isShape=!0;var a=n("visible");if(a){var i=n("showlegend");i&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),Sh.coerceFont(n,"legendgrouptitle.font"),n("legendrank"));var o=n("path"),l=o?"path":"rect",s=n("type",l),u=s!=="path";u&&delete r.path,n("editable"),n("layer"),n("opacity"),n("fillcolor"),n("fillrule");var f=n("line.width");f&&(n("line.color"),n("line.dash"));for(var v=n("xsizemode"),h=n("ysizemode"),d=["x","y"],m=0;m<2;m++){var p=d[m],y=p+"anchor",b=p==="x"?v:h,C={_fullLayout:t},x,_,A,k=Av.coerceRef(e,r,C,p,void 0,"paper"),M=Av.getRefType(k);if(M==="range"?(x=Av.getFromId(C,k),x._shapeIndices.push(r._index),A=lP.rangeToShapePosition(x),_=lP.shapePositionToRange(x),(x.type==="category"||x.type==="multicategory")&&(n(p+"0shift"),n(p+"1shift"))):_=A=Sh.identity,u){var E=.25,R=.75,F=p+"0",I=p+"1",W=e[F],O=e[I];e[F]=_(e[F],!0),e[I]=_(e[I],!0),b==="pixel"?(n(F,0),n(I,10)):(Av.coercePosition(r,C,n,k,F,E),Av.coercePosition(r,C,n,k,I,R)),r[F]=A(r[F]),r[I]=A(r[I]),e[F]=W,e[I]=O}if(b==="pixel"){var Z=e[y];e[y]=_(e[y],!0),Av.coercePosition(r,C,n,k,y,.25),r[y]=A(r[y]),e[y]=Z}}u&&Sh.noneOrAll(e,r,["x0","x1","y0","y1"]);var V=s==="line",re,ie;if(u&&(re=n("label.texttemplate"),n("label.texttemplatefallback")),re||(ie=n("label.text")),ie||re){n("label.textangle");var Q=n("label.textposition",V?"middle":"middle center");n("label.xanchor"),n("label.yanchor",Oee(V,Q)),n("label.padding"),Sh.coerceFont(n,"label.font",t.font)}}}});var vP=te((N0e,cP)=>{"use strict";var Yee=Et(),fP=pr();function Gee(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}cP.exports=function(r,t,n){n("newshape.visible"),n("newshape.name"),n("newshape.showlegend"),n("newshape.legend"),n("newshape.legendwidth"),n("newshape.legendgroup"),n("newshape.legendgrouptitle.text"),fP.coerceFont(n,"newshape.legendgrouptitle.font"),n("newshape.legendrank"),n("newshape.drawdirection"),n("newshape.layer"),n("newshape.fillcolor"),n("newshape.fillrule"),n("newshape.opacity");var a=n("newshape.line.width");if(a){var i=(r||{}).plot_bgcolor||"#FFF";n("newshape.line.color",Yee.contrast(i)),n("newshape.line.dash")}var o=r.dragmode==="drawline",l=n("newshape.label.text"),s=n("newshape.label.texttemplate");if(n("newshape.label.texttemplatefallback"),l||s){n("newshape.label.textangle");var u=n("newshape.label.textposition",o?"middle":"middle center");n("newshape.label.xanchor"),n("newshape.label.yanchor",Gee(o,u)),n("newshape.label.padding"),fP.coerceFont(n,"newshape.label.font",t.font)}n("activeshape.fillcolor"),n("activeshape.opacity")}});var mP=te((F0e,gP)=>{"use strict";var s4=pr(),Tv=Dn(),kv=I1(),dP=ef();gP.exports=function(r){var t=r._fullLayout,n=s4.filterVisible(t.shapes);if(!(!n.length||!r._fullData.length))for(var a=0;a0?u+o:o;return{ppad:o,ppadplus:l?v:h,ppadminus:l?h:v}}else return{ppad:o}}function hP(e,r,t){var n=e._id.charAt(0)==="x"?"x":"y",a=e.type==="category"||e.type==="multicategory",i,o,l=0,s=0,u=a?e.r2c:e.d2c,f=r[n+"sizemode"]==="scaled";if(f?(i=r[n+"0"],o=r[n+"1"],a&&(l=r[n+"0shift"],s=r[n+"1shift"])):(i=r[n+"anchor"],o=r[n+"anchor"]),i!==void 0)return[u(i)+l,u(o)+s];if(r.path){var v=1/0,h=-1/0,d=r.path.match(kv.segmentRE),m,p,y,b,C;for(e.type==="date"&&(u=dP.decodeDate(u)),m=0;mh&&(h=C)));if(h>=v)return[v,h]}}});var _P=te((I0e,bP)=>{"use strict";var yP=cg();bP.exports={moduleType:"component",name:"shapes",layoutAttributes:l4(),supplyLayoutDefaults:uP(),supplyDrawNewShapeDefaults:vP(),includeBasePlot:ih()("shapes"),calcAutorange:mP(),draw:yP.draw,drawOne:yP.drawOne}});var u4=te((B0e,wP)=>{"use strict";var xP=Ea(),Zee=_n().templatedArray,H0e=ah();wP.exports=Zee("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",xP.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",xP.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var AP=te((O0e,MP)=>{"use strict";var Xee=pr(),f4=Dn(),jee=yl(),Jee=u4(),$ee="images";MP.exports=function(r,t){var n={name:$ee,handleItemDefaults:Kee};jee(r,t,n)};function Kee(e,r,t){function n(h,d){return Xee.coerce(e,r,Jee,h,d)}var a=n("source"),i=n("visible",!!a);if(!i)return r;n("layer"),n("xanchor"),n("yanchor"),n("sizex"),n("sizey"),n("sizing"),n("opacity");for(var o={_fullLayout:t},l=["x","y"],s=0;s<2;s++){var u=l[s],f=f4.coerceRef(e,r,o,u,"paper",void 0);if(f!=="paper"){var v=f4.getFromId(o,f);v._imgIndices.push(r._index)}f4.coercePosition(r,o,n,f,u,0)}return r}});var CP=te((U0e,SP)=>{"use strict";var TP=kt(),Qee=fn(),Sv=Dn(),kP=fa(),ere=sc();SP.exports=function(r){var t=r._fullLayout,n=[],a={},i=[],o,l;for(l=0;l{"use strict";var LP=Ht(),rre=vd();qP.exports=function(r,t,n,a){t=t||{};var i=n==="log"&&t.type==="linear",o=n==="linear"&&t.type==="log";if(i||o){for(var l=r._fullLayout.images,s=t._id.charAt(0),u,f,v=0;v{"use strict";EP.exports={moduleType:"component",name:"images",layoutAttributes:u4(),supplyLayoutDefaults:AP(),includeBasePlot:ih()("images"),draw:CP(),convertCoords:DP()}});var Mm=te((V0e,RP)=>{"use strict";RP.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var c4=te((W0e,NP)=>{"use strict";var tre=$a(),nre=vl(),are=sa().extendFlat,ire=_o().overrideAll,ore=Ad(),zP=_n().templatedArray,lre=zP("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});NP.exports=ire(zP("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:lre,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:are(ore({editType:"arraydraw"}),{}),font:tre({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:nre.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var BP=te((Z0e,HP)=>{"use strict";var Am=pr(),FP=yl(),IP=c4(),sre=Mm(),ure=sre.name,fre=IP.buttons;HP.exports=function(r,t){var n={name:ure,handleItemDefaults:cre};FP(r,t,n)};function cre(e,r,t){function n(o,l){return Am.coerce(e,r,IP,o,l)}var a=FP(e,r,{name:"buttons",handleItemDefaults:vre}),i=n("visible",a.length>0);i&&(n("active"),n("direction"),n("type"),n("showactive"),n("x"),n("y"),Am.noneOrAll(e,r,["x","y"]),n("xanchor"),n("yanchor"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),Am.coerceFont(n,"font",t.font),n("bgcolor",t.paper_bgcolor),n("bordercolor"),n("borderwidth"))}function vre(e,r){function t(a,i){return Am.coerce(e,r,fre,a,i)}var n=t("visible",e.method==="skip"||Array.isArray(e.args));n&&(t("method"),t("args"),t("args2"),t("label"),t("execute"))}});var YP=te((X0e,UP)=>{"use strict";UP.exports=zn;var Sl=kt(),OP=Et(),Cv=fn(),Tm=pr();function zn(e,r,t){this.gd=e,this.container=r,this.id=t,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}zn.barWidth=2;zn.barLength=20;zn.barRadius=2;zn.barPad=1;zn.barColor="#808BA4";zn.prototype.enable=function(r,t,n){var a=this.gd._fullLayout,i=a.width,o=a.height;this.position=r;var l=this.position.l,s=this.position.w,u=this.position.t,f=this.position.h,v=this.position.direction,h=v==="down",d=v==="left",m=v==="right",p=v==="up",y=s,b=f,C,x,_,A;!h&&!d&&!m&&!p&&(this.position.direction="down",h=!0);var k=h||p;k?(C=l,x=C+y,h?(_=u,A=Math.min(_+b,o),b=A-_):(A=u+b,_=Math.max(A-b,0),b=A-_)):(_=u,A=_+b,d?(x=l+y,C=Math.max(x-y,0),y=x-C):(C=l,x=Math.min(C+y,i),y=x-C)),this._box={l:C,t:_,w:y,h:b};var M=s>y,E=zn.barLength+2*zn.barPad,R=zn.barWidth+2*zn.barPad,F=l,I=u+f;I+R>o&&(I=o-R);var W=this.container.selectAll("rect.scrollbar-horizontal").data(M?[0]:[]);W.exit().on(".drag",null).remove(),W.enter().append("rect").classed("scrollbar-horizontal",!0).call(OP.fill,zn.barColor),M?(this.hbar=W.attr({rx:zn.barRadius,ry:zn.barRadius,x:F,y:I,width:E,height:R}),this._hbarXMin=F+E/2,this._hbarTranslateMax=y-E):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var O=f>b,Z=zn.barWidth+2*zn.barPad,V=zn.barLength+2*zn.barPad,re=l+s,ie=u;re+Z>i&&(re=i-Z);var Q=this.container.selectAll("rect.scrollbar-vertical").data(O?[0]:[]);Q.exit().on(".drag",null).remove(),Q.enter().append("rect").classed("scrollbar-vertical",!0).call(OP.fill,zn.barColor),O?(this.vbar=Q.attr({rx:zn.barRadius,ry:zn.barRadius,x:re,y:ie,width:Z,height:V}),this._vbarYMin=ie+V/2,this._vbarTranslateMax=b-V):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var ee=this.id,se=C-.5,ve=O?x+Z+.5:x+.5,Ce=_-.5,Ie=M?A+R+.5:A+.5,ze=a._topdefs.selectAll("#"+ee).data(M||O?[0]:[]);if(ze.exit().remove(),ze.enter().append("clipPath").attr("id",ee).append("rect"),M||O?(this._clipRect=ze.select("rect").attr({x:Math.floor(se),y:Math.floor(Ce),width:Math.ceil(ve)-Math.floor(se),height:Math.ceil(Ie)-Math.floor(Ce)}),this.container.call(Cv.setClipUrl,ee,this.gd),this.bg.attr({x:l,y:u,width:s,height:f})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Cv.setClipUrl,null),delete this._clipRect),M||O){var Xe=Sl.behavior.drag().on("dragstart",function(){Sl.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(Xe);var Le=Sl.behavior.drag().on("dragstart",function(){Sl.event.sourceEvent.preventDefault(),Sl.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));M&&this.hbar.on(".drag",null).call(Le),O&&this.vbar.on(".drag",null).call(Le)}this.setTranslate(t,n)};zn.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Cv.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};zn.prototype._onBoxDrag=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r-=Sl.event.dx),this.vbar&&(t-=Sl.event.dy),this.setTranslate(r,t)};zn.prototype._onBoxWheel=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r+=Sl.event.deltaY),this.vbar&&(t+=Sl.event.deltaY),this.setTranslate(r,t)};zn.prototype._onBarDrag=function(){var r=this.translateX,t=this.translateY;if(this.hbar){var n=r+this._hbarXMin,a=n+this._hbarTranslateMax,i=Tm.constrain(Sl.event.x,n,a),o=(i-n)/(a-n),l=this.position.w-this._box.w;r=o*l}if(this.vbar){var s=t+this._vbarYMin,u=s+this._vbarTranslateMax,f=Tm.constrain(Sl.event.y,s,u),v=(f-s)/(u-s),h=this.position.h-this._box.h;t=v*h}this.setTranslate(r,t)};zn.prototype.setTranslate=function(r,t){var n=this.position.w-this._box.w,a=this.position.h-this._box.h;if(r=Tm.constrain(r||0,0,n),t=Tm.constrain(t||0,0,a),this.translateX=r,this.translateY=t,this.container.call(Cv.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-t),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+t-.5)}),this.hbar){var i=r/n;this.hbar.call(Cv.setTranslate,r+i*this._hbarTranslateMax,t)}if(this.vbar){var o=t/a;this.vbar.call(Cv.setTranslate,r,t+o*this._vbarTranslateMax)}}});var QP=te((j0e,KP)=>{"use strict";var Lv=kt(),Ch=ca(),Lh=Et(),qv=fn(),no=pr(),km=vi(),hre=_n().arrayEditor,VP=Ka().LINE_SPACING,ct=Mm(),dre=YP();KP.exports=function(r){var t=r._fullLayout,n=no.filterVisible(t[ct.name]);function a(h){Ch.autoMargin(r,JP(h))}var i=t._menulayer.selectAll("g."+ct.containerClassName).data(n.length>0?[0]:[]);if(i.enter().append("g").classed(ct.containerClassName,!0).style("cursor","pointer"),i.exit().each(function(){Lv.select(this).selectAll("g."+ct.headerGroupClassName).each(a)}).remove(),n.length!==0){var o=i.selectAll("g."+ct.headerGroupClassName).data(n,pre);o.enter().append("g").classed(ct.headerGroupClassName,!0);for(var l=no.ensureSingle(i,"g",ct.dropdownButtonGroupClassName,function(h){h.style("pointer-events","all")}),s=0;s{"use strict";var wre=Mm();eR.exports={moduleType:"component",name:wre.name,layoutAttributes:c4(),supplyLayoutDefaults:BP(),draw:QP()}});var Dh=te(($0e,tR)=>{"use strict";tR.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var p4=te((K0e,iR)=>{"use strict";var nR=$a(),Mre=Ad(),Are=sa().extendDeepAll,Tre=_o().overrideAll,kre=f1(),aR=_n().templatedArray,Fc=Dh(),Sre=aR("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});iR.exports=Tre(aR("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:Sre,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:Are(Mre({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:kre.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:nR({})},font:nR({}),activebgcolor:{valType:"color",dflt:Fc.gripBgActiveColor},bgcolor:{valType:"color",dflt:Fc.railBgColor},bordercolor:{valType:"color",dflt:Fc.railBorderColor},borderwidth:{valType:"number",min:0,dflt:Fc.railBorderWidth},ticklen:{valType:"number",min:0,dflt:Fc.tickLength},tickcolor:{valType:"color",dflt:Fc.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:Fc.minorTickLength}}),"arraydraw","from-root")});var uR=te((Q0e,sR)=>{"use strict";var Dv=pr(),oR=yl(),lR=p4(),Cre=Dh(),Lre=Cre.name,qre=lR.steps;sR.exports=function(r,t){oR(r,t,{name:Lre,handleItemDefaults:Dre})};function Dre(e,r,t){function n(v,h){return Dv.coerce(e,r,lR,v,h)}for(var a=oR(e,r,{name:"steps",handleItemDefaults:Ere}),i=0,o=0;o{"use strict";var Cl=kt(),Sm=ca(),uf=Et(),Ll=fn(),ao=pr(),Pre=ao.strTranslate,Eh=vi(),Rre=_n().arrayEditor,Mt=Dh(),y4=Ka(),vR=y4.LINE_SPACING,g4=y4.FROM_TL,m4=y4.FROM_BR;yR.exports=function(r){var t=r._context.staticPlot,n=r._fullLayout,a=zre(n,r),i=n._infolayer.selectAll("g."+Mt.containerClassName).data(a.length>0?[0]:[]);i.enter().append("g").classed(Mt.containerClassName,!0).style("cursor",t?null:"ew-resize");function o(f){f._commandObserver&&(f._commandObserver.remove(),delete f._commandObserver),Sm.autoMargin(r,hR(f))}if(i.exit().each(function(){Cl.select(this).selectAll("g."+Mt.groupClassName).each(o)}).remove(),a.length!==0){var l=i.selectAll("g."+Mt.groupClassName).data(a,Nre);l.enter().append("g").classed(Mt.groupClassName,!0),l.exit().each(o).remove();for(var s=0;s0&&(l=l.transition().duration(r.transition.duration).ease(r.transition.easing)),l.attr("transform",Pre(o-Mt.gripWidth*.5,r._dims.currentValueTotalHeight))}}function b4(e,r){var t=e._dims;return t.inputAreaStart+Mt.stepInset+(t.inputAreaLength-2*Mt.stepInset)*Math.min(1,Math.max(0,r))}function cR(e,r){var t=e._dims;return Math.min(1,Math.max(0,(r-Mt.stepInset-t.inputAreaStart)/(t.inputAreaLength-2*Mt.stepInset-2*t.inputAreaStart)))}function Yre(e,r,t){var n=t._dims,a=ao.ensureSingle(e,"rect",Mt.railTouchRectClass,function(i){i.call(gR,r,e,t).style("pointer-events","all")});a.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,Mt.tickOffset+t.ticklen+n.labelHeight)}).call(uf.fill,t.bgcolor).attr("opacity",0),Ll.setTranslate(a,0,n.currentValueTotalHeight)}function Gre(e,r){var t=r._dims,n=t.inputAreaLength-Mt.railInset*2,a=ao.ensureSingle(e,"rect",Mt.railRectClass);a.attr({width:n,height:Mt.railWidth,rx:Mt.railRadius,ry:Mt.railRadius,"shape-rendering":"crispEdges"}).call(uf.stroke,r.bordercolor).call(uf.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px"),Ll.setTranslate(a,Mt.railInset,(t.inputAreaWidth-Mt.railWidth)*.5+t.currentValueTotalHeight)}});var xR=te((rve,_R)=>{"use strict";var Vre=Dh();_R.exports={moduleType:"component",name:Vre.name,layoutAttributes:p4(),supplyLayoutDefaults:uR(),draw:bR()}});var Lm=te((tve,MR)=>{"use strict";var wR=vl();MR.exports={bgcolor:{valType:"color",dflt:wR.background,editType:"plot"},bordercolor:{valType:"color",dflt:wR.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var _4=te((nve,AR)=>{"use strict";AR.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var qm=te((ave,TR)=>{"use strict";TR.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var CR=te(Em=>{"use strict";var Wre=fa(),Zre=vi(),kR=qm(),Xre=Ka().LINE_SPACING,Dm=kR.name;function SR(e){var r=e&&e[Dm];return r&&r.visible}Em.isVisible=SR;Em.makeData=function(e){for(var r=Wre.list({_fullLayout:e},"x",!0),t=e.margin,n=[],a=0;a{"use strict";var Pm=pr(),LR=_n(),qR=fa(),jre=Lm(),Jre=_4();DR.exports=function(r,t,n){var a=r[n],i=t[n];if(!(a.rangeslider||t._requestRangeslider[i._id]))return;Pm.isPlainObject(a.rangeslider)||(a.rangeslider={});var o=a.rangeslider,l=LR.newContainer(i,"rangeslider");function s(A,k){return Pm.coerce(o,l,jre,A,k)}var u,f;function v(A,k){return Pm.coerce(u,f,Jre,A,k)}var h=s("visible");if(h){s("bgcolor",t.plot_bgcolor),s("bordercolor"),s("borderwidth"),s("thickness"),s("autorange",!i.isValidRange(o.range)),s("range");var d=t._subplots;if(d)for(var m=d.cartesian.filter(function(A){return A.slice(0,Math.max(0,A.indexOf("y")))===qR.name2id(n)}).map(function(A){return A.slice(A.indexOf("y"),A.length)}),p=Pm.simpleMap(m,qR.id2name),y=0;y{"use strict";var $re=fa().list,Kre=ju().getAutoRange,Qre=qm();PR.exports=function(r){for(var t=$re(r,"x",!0),n=0;n{"use strict";var Rm=kt(),ete=dt(),rte=ca(),Wn=pr(),zm=Wn.strTranslate,NR=fn(),ff=Et(),tte=k1(),nte=Xb(),x4=fa(),ate=To(),ite=$u(),Dt=qm();FR.exports=function(e){for(var r=e._fullLayout,t=r._rangeSliderData,n=0;n=Q.max)re=I[ie+1];else if(V=Q.pmax)re=I[ie+1];else if(V0?e.touches[0].clientX:0}function ote(e,r,t,n){if(r._context.staticPlot)return;var a=e.select("rect."+Dt.slideBoxClassName).node(),i=e.select("rect."+Dt.grabAreaMinClassName).node(),o=e.select("rect."+Dt.grabAreaMaxClassName).node();function l(){var s=Rm.event,u=s.target,f=zR(s),v=f-e.node().getBoundingClientRect().left,h=n.d2p(t._rl[0]),d=n.d2p(t._rl[1]),m=ate.coverSlip();this.addEventListener("touchmove",p),this.addEventListener("touchend",y),m.addEventListener("mousemove",p),m.addEventListener("mouseup",y);function p(b){var C=zR(b),x=+C-f,_,A,k;switch(u){case a:if(k="ew-resize",h+x>t._length||d+x<0)return;_=h+x,A=d+x;break;case i:if(k="col-resize",h+x>t._length)return;_=h+x,A=d;break;case o:if(k="col-resize",d+x<0)return;_=h,A=d+x;break;default:k="ew-resize",_=v,A=v+x;break}if(A<_){var M=A;A=_,_=M}n._pixelMin=_,n._pixelMax=A,ite(Rm.select(m),k),lte(e,r,t,n)}function y(){m.removeEventListener("mousemove",p),m.removeEventListener("mouseup",y),this.removeEventListener("touchmove",p),this.removeEventListener("touchend",y),Wn.removeElement(m)}}e.on("mousedown",l),e.on("touchstart",l)}function lte(e,r,t,n){function a(l){return t.l2r(Wn.constrain(l,n._rl[0],n._rl[1]))}var i=a(n.p2d(n._pixelMin)),o=a(n.p2d(n._pixelMax));window.requestAnimationFrame(function(){ete.call("_guiRelayout",r,t._name+".range",[i,o])})}function ste(e,r,t,n,a,i){var o=Dt.handleWidth/2;function l(b){return Wn.constrain(b,0,n._width)}function s(b){return Wn.constrain(b,0,n._height)}function u(b){return Wn.constrain(b,-o,n._width+o)}var f=l(n.d2p(t._rl[0])),v=l(n.d2p(t._rl[1]));if(e.select("rect."+Dt.slideBoxClassName).attr("x",f).attr("width",v-f),e.select("rect."+Dt.maskMinClassName).attr("width",f),e.select("rect."+Dt.maskMaxClassName).attr("x",v).attr("width",n._width-v),i.rangemode!=="match"){var h=n._height-s(n.d2pOppAxis(a._rl[1])),d=n._height-s(n.d2pOppAxis(a._rl[0]));e.select("rect."+Dt.maskMinOppAxisClassName).attr("x",f).attr("height",h).attr("width",v-f),e.select("rect."+Dt.maskMaxOppAxisClassName).attr("x",f).attr("y",d).attr("height",n._height-d).attr("width",v-f),e.select("rect."+Dt.slideBoxClassName).attr("y",h).attr("height",d-h)}var m=.5,p=Math.round(u(f-o))-m,y=Math.round(u(v-o))+m;e.select("g."+Dt.grabberMinClassName).attr("transform",zm(p,m)),e.select("g."+Dt.grabberMaxClassName).attr("transform",zm(y,m))}function ute(e,r,t,n){var a=Wn.ensureSingle(e,"rect",Dt.bgClassName,function(s){s.attr({x:0,y:0,"shape-rendering":"crispEdges"})}),i=n.borderwidth%2===0?n.borderwidth:n.borderwidth-1,o=-n._offsetShift,l=NR.crispRound(r,n.borderwidth);a.attr({width:n._width+i,height:n._height+i,transform:zm(o,o),"stroke-width":l}).call(ff.stroke,n.bordercolor).call(ff.fill,n.bgcolor)}function fte(e,r,t,n){var a=r._fullLayout,i=Wn.ensureSingleById(a._topdefs,"clipPath",n._clipId,function(o){o.append("rect").attr({x:0,y:0})});i.select("rect").attr({width:n._width,height:n._height})}function cte(e,r,t,n){var a=r.calcdata,i=e.selectAll("g."+Dt.rangePlotClassName).data(t._subplotsWith,Wn.identity);i.enter().append("g").attr("class",function(l){return Dt.rangePlotClassName+" "+l}).call(NR.setClipUrl,n._clipId,r),i.order(),i.exit().remove();var o;i.each(function(l,s){var u=Rm.select(this),f=s===0,v=x4.getFromId(r,l,"y"),h=v._name,d=n[h],m={data:[],layout:{xaxis:{type:t.type,domain:[0,1],range:n.range.slice(),calendar:t.calendar},width:n._width,height:n._height,margin:{t:0,b:0,l:0,r:0}},_context:r._context};t.rangebreaks&&(m.layout.xaxis.rangebreaks=t.rangebreaks),m.layout[h]={type:v.type,domain:[0,1],range:d.rangemode!=="match"?d.range.slice():v.range.slice(),calendar:v.calendar},v.rangebreaks&&(m.layout[h].rangebreaks=v.rangebreaks),rte.supplyDefaults(m);var p=m._fullLayout.xaxis,y=m._fullLayout[h];p.clearCalc(),p.setScale(),y.clearCalc(),y.setScale();var b={id:l,plotgroup:u,xaxis:p,yaxis:y,isRangePlot:!0};f?o=b:(b.mainplot="xy",b.mainplotinfo=o),nte.rangePlot(r,b,vte(a,l))})}function vte(e,r){for(var t=[],n=0;n{"use strict";var gte=pr(),mte=Lm(),yte=_4(),w4=CR();HR.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:gte.extendFlat({},mte,{yaxis:yte})}}},layoutAttributes:Lm(),handleDefaults:ER(),calcAutorange:RR(),draw:IR(),isVisible:w4.isVisible,makeData:w4.makeData,autoMarginOpts:w4.autoMarginOpts}});var Nm=te((fve,UR)=>{"use strict";var bte=$a(),OR=vl(),_te=_n().templatedArray,xte=_te("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});UR.exports={visible:{valType:"boolean",editType:"plot"},buttons:xte,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:bte({editType:"plot"}),bgcolor:{valType:"color",dflt:OR.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:OR.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var M4=te((cve,YR)=>{"use strict";YR.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var WR=te((vve,VR)=>{"use strict";var Fm=pr(),wte=Et(),Mte=_n(),Ate=yl(),GR=Nm(),A4=M4();VR.exports=function(r,t,n,a,i){var o=r.rangeselector||{},l=Mte.newContainer(t,"rangeselector");function s(d,m){return Fm.coerce(o,l,GR,d,m)}var u=Ate(o,l,{name:"buttons",handleItemDefaults:Tte,calendar:i}),f=s("visible",u.length>0);if(f){var v=kte(t,n,a);s("x",v[0]),s("y",v[1]),Fm.noneOrAll(r,t,["x","y"]),s("xanchor"),s("yanchor"),Fm.coerceFont(s,"font",n.font);var h=s("bgcolor");s("activecolor",wte.contrast(h,A4.lightAmount,A4.darkAmount)),s("bordercolor"),s("borderwidth")}};function Tte(e,r,t,n){var a=n.calendar;function i(s,u){return Fm.coerce(e,r,GR.buttons,s,u)}var o=i("visible");if(o){var l=i("step");l!=="all"&&(a&&a!=="gregorian"&&(l==="month"||l==="year")?r.stepmode="backward":i("stepmode"),i("count")),i("label")}}function kte(e,r,t){for(var n=t.filter(function(l){return r[l].anchor===e._id}),a=0,i=0;i{"use strict";var Ste=ky(),Cte=pr().titleCase;ZR.exports=function(r,t){var n=r._name,a={};if(t.step==="all")a[n+".autorange"]=!0;else{var i=Lte(r,t);a[n+".range[0]"]=i[0],a[n+".range[1]"]=i[1]}return a};function Lte(e,r){var t=e.range,n=new Date(e.r2l(t[1])),a=r.step,i=Ste["utc"+Cte(a)],o=r.count,l;switch(r.stepmode){case"backward":l=e.l2r(+i.offset(n,-o));break;case"todate":var s=i.offset(n,-o);l=e.l2r(+i.ceil(s));break}var u=t[1];return[l,u]}});var tz=te((dve,rz)=>{"use strict";var Hm=kt(),qte=dt(),Dte=ca(),jR=Et(),ez=fn(),ou=pr(),JR=ou.strTranslate,Im=vi(),Ete=fa(),S4=Ka(),$R=S4.LINE_SPACING,KR=S4.FROM_TL,QR=S4.FROM_BR,k4=M4(),Pte=XR();rz.exports=function(r){var t=r._fullLayout,n=t._infolayer.selectAll(".rangeselector").data(Rte(r),zte);n.enter().append("g").classed("rangeselector",!0),n.exit().remove(),n.style({cursor:"pointer","pointer-events":"all"}),n.each(function(a){var i=Hm.select(this),o=a,l=o.rangeselector,s=i.selectAll("g.button").data(ou.filterVisible(l.buttons));s.enter().append("g").classed("button",!0),s.exit().remove(),s.each(function(u){var f=Hm.select(this),v=Pte(o,u);u._isActive=Nte(o,u,v),f.call(T4,l,u),f.call(Ite,l,u,r),f.on("click",function(){r._dragged||qte.call("_guiRelayout",r,v)}),f.on("mouseover",function(){u._isHovered=!0,f.call(T4,l,u)}),f.on("mouseout",function(){u._isHovered=!1,f.call(T4,l,u)})}),Bte(r,s,l,o._name,i)})};function Rte(e){for(var r=Ete.list(e,"x",!0),t=[],n=0;n{"use strict";nz.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:Nm()}}},layoutAttributes:Nm(),handleDefaults:WR(),draw:tz()}});var Bm=te(C4=>{"use strict";var iz=sa().extendFlat;C4.attributes=function(e,r){e=e||{},r=r||{};var t={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},n=e.name?e.name+" ":"",a=e.trace?"trace ":"subplot ",i=r.description?" "+r.description:"",o={x:iz({},t,{}),y:iz({},t,{}),editType:e.editType};return e.noGridCell||(o.row={valType:"integer",min:0,dflt:0,editType:e.editType},o.column={valType:"integer",min:0,dflt:0,editType:e.editType}),o};C4.defaults=function(e,r,t,n){var a=n&&n.x||[0,1],i=n&&n.y||[0,1],o=r.grid;if(o){var l=t("domain.column");l!==void 0&&(l{"use strict";var Ote=pr(),Ute=w0().counter,Yte=Bm().attributes,oz=Ea().idRegex,Gte=_n(),L4={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[Ute("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[oz.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[oz.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:Yte({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function Om(e,r,t){var n=r[t+"axes"],a=Object.keys((e._splomAxes||{})[t]||{});if(Array.isArray(n))return n;if(a.length)return a}function Vte(e,r){var t=e.grid||{},n=Om(r,t,"x"),a=Om(r,t,"y");if(!e.grid&&!n&&!a)return;var i=Array.isArray(t.subplots)&&Array.isArray(t.subplots[0]),o=Array.isArray(n),l=Array.isArray(a),s=o&&n!==t.xaxes&&l&&a!==t.yaxes,u,f;i?(u=t.subplots.length,f=t.subplots[0].length):(l&&(u=a.length),o&&(f=n.length));var v=Gte.newContainer(r,"grid");function h(k,M){return Ote.coerce(t,v,L4,k,M)}var d=h("rows",u),m=h("columns",f);if(!(d*m>1)){delete r.grid;return}if(!i&&!o&&!l){var p=h("pattern")==="independent";p&&(i=!0)}v._hasSubplotGrid=i;var y=h("roworder"),b=y==="top to bottom",C=i?.2:.1,x=i?.3:.1,_,A;s&&r._splomGridDflt&&(_=r._splomGridDflt.xside,A=r._splomGridDflt.yside),v._domains={x:lz("x",h,C,_,m),y:lz("y",h,x,A,d,b)}}function lz(e,r,t,n,a,i){var o=r(e+"gap",t),l=r("domain."+e);r(e+"side",n);for(var s=new Array(a),u=l[0],f=(l[1]-u)/(a-o),v=f*(1-o),h=0;h{"use strict";cz.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var dz=te((bve,hz)=>{"use strict";var vz=Ht(),Zte=dt(),Xte=pr(),jte=_n(),Jte=q4();hz.exports=function(e,r,t,n){var a="error_"+n.axis,i=jte.newContainer(r,a),o=e[a]||{};function l(m,p){return Xte.coerce(o,i,Jte,m,p)}var s=o.array!==void 0||o.value!==void 0||o.type==="sqrt",u=l("visible",s);if(u!==!1){var f=l("type","array"in o?"data":"percent"),v=!0;f!=="sqrt"&&(v=l("symmetric",!((f==="data"?"arrayminus":"valueminus")in o))),f==="data"?(l("array"),l("traceref"),v||(l("arrayminus"),l("tracerefminus"))):(f==="percent"||f==="constant")&&(l("value"),v||l("valueminus"));var h="copy_"+n.inherit+"style";if(n.inherit){var d=r["error_"+n.inherit];(d||{}).visible&&l(h,!(o.color||vz(o.thickness)||vz(o.width)))}(!n.inherit||!i[h])&&(l("color",t),l("thickness"),l("width",Zte.traceIs(r,"gl3d")?0:4))}}});var D4=te((_ve,gz)=>{"use strict";gz.exports=function(r){var t=r.type,n=r.symmetric;if(t==="data"){var a=r.array||[];if(n)return function(u,f){var v=+a[f];return[v,v]};var i=r.arrayminus||[];return function(u,f){var v=+a[f],h=+i[f];return!isNaN(v)||!isNaN(h)?[h||0,v||0]:[NaN,NaN]}}else{var o=pz(t,r.value),l=pz(t,r.valueminus);return n||r.valueminus===void 0?function(u){var f=o(u);return[f,f]}:function(u){return[l(u),o(u)]}}};function pz(e,r){if(e==="percent")return function(t){return Math.abs(t*r/100)};if(e==="constant")return function(){return Math.abs(r)};if(e==="sqrt")return function(t){return Math.sqrt(Math.abs(t))}}});var bz=te((xve,yz)=>{"use strict";var E4=Ht(),$te=dt(),P4=Dn(),Kte=pr(),Qte=D4();yz.exports=function(r){for(var t=r.calcdata,n=0;n{"use strict";var _z=kt(),cf=Ht(),ene=fn(),rne=Qa();xz.exports=function(r,t,n,a){var i,o=n.xaxis,l=n.yaxis,s=a&&a.duration>0,u=r._context.staticPlot;t.each(function(f){var v=f[0].trace,h=v.error_x||{},d=v.error_y||{},m;v.ids&&(m=function(C){return C.id});var p=rne.hasMarkers(v)&&v.marker.maxdisplayed>0;!d.visible&&!h.visible&&(f=[]);var y=_z.select(this).selectAll("g.errorbar").data(f,m);if(y.exit().remove(),!!f.length){h.visible||y.selectAll("path.xerror").remove(),d.visible||y.selectAll("path.yerror").remove(),y.style("opacity",1);var b=y.enter().append("g").classed("errorbar",!0);s&&b.style("opacity",0).transition().duration(a.duration).style("opacity",1),ene.setClipUrl(y,n.layerClipId,r),y.each(function(C){var x=_z.select(this),_=tne(C,o,l);if(!(p&&!C.vis)){var A,k=x.select("path.yerror");if(d.visible&&cf(_.x)&&cf(_.yh)&&cf(_.ys)){var M=d.width;A="M"+(_.x-M)+","+_.yh+"h"+2*M+"m-"+M+",0V"+_.ys,_.noYS||(A+="m-"+M+",0h"+2*M),i=!k.size(),i?k=x.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("yerror",!0):s&&(k=k.transition().duration(a.duration).ease(a.easing)),k.attr("d",A)}else k.remove();var E=x.select("path.xerror");if(h.visible&&cf(_.y)&&cf(_.xh)&&cf(_.xs)){var R=(h.copy_ystyle?d:h).width;A="M"+_.xh+","+(_.y-R)+"v"+2*R+"m0,-"+R+"H"+_.xs,_.noXS||(A+="m0,-"+R+"v"+2*R),i=!E.size(),i?E=x.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("xerror",!0):s&&(E=E.transition().duration(a.duration).ease(a.easing)),E.attr("d",A)}else E.remove()}})}})};function tne(e,r,t){var n={x:r.c2p(e.x),y:t.c2p(e.y)};return e.yh!==void 0&&(n.yh=t.c2p(e.yh),n.ys=t.c2p(e.ys),cf(n.ys)||(n.noYS=!0,n.ys=t.c2p(e.ys,!0))),e.xh!==void 0&&(n.xh=r.c2p(e.xh),n.xs=r.c2p(e.xs),cf(n.xs)||(n.noXS=!0,n.xs=r.c2p(e.xs,!0))),n}});var Tz=te((Mve,Az)=>{"use strict";var nne=kt(),Mz=Et();Az.exports=function(r){r.each(function(t){var n=t[0].trace,a=n.error_y||{},i=n.error_x||{},o=nne.select(this);o.selectAll("path.yerror").style("stroke-width",a.thickness+"px").call(Mz.stroke,a.color),i.copy_ystyle&&(i=a),o.selectAll("path.xerror").style("stroke-width",i.thickness+"px").call(Mz.stroke,i.color)})}});var Cz=te((Ave,Sz)=>{"use strict";var Ph=pr(),kz=_o().overrideAll,Rh=q4(),Ic={error_x:Ph.extendFlat({},Rh),error_y:Ph.extendFlat({},Rh)};delete Ic.error_x.copy_zstyle;delete Ic.error_y.copy_zstyle;delete Ic.error_y.copy_ystyle;var zh={error_x:Ph.extendFlat({},Rh),error_y:Ph.extendFlat({},Rh),error_z:Ph.extendFlat({},Rh)};delete zh.error_x.copy_ystyle;delete zh.error_y.copy_ystyle;delete zh.error_z.copy_ystyle;delete zh.error_z.copy_zstyle;Sz.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Ic,bar:Ic,histogram:Ic,scatter3d:kz(zh,"calc","nested"),scattergl:kz(Ic,"calc","nested")}},supplyDefaults:dz(),calc:bz(),makeComputeError:D4(),plot:wz(),style:Tz(),hoverInfo:ane};function ane(e,r,t){(r.error_y||{}).visible&&(t.yerr=e.yh-e.y,r.error_y.symmetric||(t.yerrneg=e.y-e.ys)),(r.error_x||{}).visible&&(t.xerr=e.xh-e.x,r.error_x.symmetric||(t.xerrneg=e.x-e.xs))}});var qz=te((Tve,Lz)=>{"use strict";Lz.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var Fz=te((kve,Nz)=>{"use strict";var vf=kt(),R4=$l(),Ym=ca(),Dz=dt(),lu=Dn(),Um=To(),Io=pr(),Dl=Io.strTranslate,zz=sa().extendFlat,z4=$u(),ql=fn(),N4=Et(),ine=k1(),one=vi(),lne=es().flipScale,sne=Gb(),une=Vb(),fne=ml(),F4=Ka(),Ez=F4.LINE_SPACING,Pz=F4.FROM_TL,Rz=F4.FROM_BR,En=qz().cn;function cne(e){var r=e._fullLayout,t=r._infolayer.selectAll("g."+En.colorbar).data(vne(e),function(n){return n._id});t.enter().append("g").attr("class",function(n){return n._id}).classed(En.colorbar,!0),t.each(function(n){var a=vf.select(this);Io.ensureSingle(a,"rect",En.cbbg),Io.ensureSingle(a,"g",En.cbfills),Io.ensureSingle(a,"g",En.cblines),Io.ensureSingle(a,"g",En.cbaxis,function(o){o.classed(En.crisp,!0)}),Io.ensureSingle(a,"g",En.cbtitleunshift,function(o){o.append("g").classed(En.cbtitle,!0)}),Io.ensureSingle(a,"rect",En.cboutline);var i=hne(a,n,e);i&&i.then&&(e._promises||[]).push(i),e._context.edits.colorbarPosition&&dne(a,n,e)}),t.exit().each(function(n){Ym.autoMargin(e,n._id)}).remove(),t.order()}function vne(e){var r=e._fullLayout,t=e.calcdata,n=[],a,i,o,l;function s(x){return zz(x,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function u(){typeof l.calc=="function"?l.calc(e,o,a):(a._fillgradient=i.reversescale?lne(i.colorscale):i.colorscale,a._zrange=[i[l.min],i[l.max]])}for(var f=0;f1){var K=Math.pow(10,Math.floor(Math.log(U)/Math.LN10));Me*=K*Io.roundUp(U/K,[2,5,10]),(Math.abs(W.start)/W.size+1e-6)%1<2e-6&&(fe.tick0=0)}fe.dtick=Me}fe.domain=n?[Le+m/_.h,Le+ee-m/_.h]:[Le+d/_.w,Le+ee-d/_.w],fe.setScale(),e.attr("transform",Dl(Math.round(_.l),Math.round(_.t)));var $=e.select("."+En.cbtitleunshift).attr("transform",Dl(-Math.round(_.l),-Math.round(_.t))),ke=fe.ticklabelposition,Be=fe.title.font.size,Ne=e.select("."+En.cbaxis),ir,or=0,Ye=0;function nr(gr,Te){var Oe={propContainer:fe,propName:r._propPrefix+"title.text",traceIndex:r._traceIndex,_meta:r._meta,placeholder:x._dfltTitle.colorbar,containerGroup:e.select("."+En.cbtitle)},kr=gr.charAt(0)==="h"?gr.slice(1):"h"+gr;e.selectAll("."+kr+",."+kr+"-math-group").remove(),ine.draw(t,gr,zz(Oe,Te||{}))}function lr(){if(n&&ye||!n&&!ye){var gr,Te;E==="top"&&(gr=d+_.l+se*p,Te=m+_.t+ve*(1-Le-ee)+3+Be*.75),E==="bottom"&&(gr=d+_.l+se*p,Te=m+_.t+ve*(1-Le)-3-Be*.25),E==="right"&&(Te=m+_.t+ve*y+3+Be*.75,gr=d+_.l+se*Le),nr(fe._id+"title",{attributes:{x:gr,y:Te,"text-anchor":n?"start":"middle"}})}}function vr(){if(n&&!ye||!n&&ye){var gr=fe.position||0,Te=fe._offset+fe._length/2,Oe,kr;if(E==="right")kr=Te,Oe=_.l+se*gr+10+Be*(fe.showticklabels?1:.5);else if(Oe=Te,E==="bottom"&&(kr=_.t+ve*gr+10+(ke.indexOf("inside")===-1?fe.tickfont.size:0)+(fe.ticks!=="inside"&&r.ticklen||0)),E==="top"){var Ur=M.text.split("
").length;kr=_.t+ve*gr+10-re-Ez*Be*Ur}nr((n?"h":"v")+fe._id+"title",{avoid:{selection:vf.select(t).selectAll("g."+fe._id+"tick"),side:E,offsetTop:n?0:_.t,offsetLeft:n?_.l:0,maxShift:n?x.width:x.height},attributes:{x:Oe,y:kr,"text-anchor":"middle"},transform:{rotate:n?-90:0,offset:0}})}}function Je(){if(!n&&!ye||n&&ye){var gr=e.select("."+En.cbtitle),Te=gr.select("text"),Oe=[-s/2,s/2],kr=gr.select(".h"+fe._id+"title-math-group").node(),Ur=15.6;Te.node()&&(Ur=parseInt(Te.node().style.fontSize,10)*Ez);var tr;if(kr?(tr=ql.bBox(kr),Ye=tr.width,or=tr.height,or>Ur&&(Oe[1]-=(or-Ur)/2)):Te.node()&&!Te.classed(En.jsPlaceholder)&&(tr=ql.bBox(Te.node()),Ye=tr.width,or=tr.height),n){if(or){if(or+=5,E==="top")fe.domain[1]-=or/_.h,Oe[1]*=-1;else{fe.domain[0]+=or/_.h;var Ue=one.lineCount(Te);Oe[1]+=(1-Ue)*Ur}gr.attr("transform",Dl(Oe[0],Oe[1])),fe.setScale()}}else Ye&&(E==="right"&&(fe.domain[0]+=(Ye+Be/2)/_.w),gr.attr("transform",Dl(Oe[0],Oe[1])),fe.setScale())}e.selectAll("."+En.cbfills+",."+En.cblines).attr("transform",n?Dl(0,Math.round(_.h*(1-fe.domain[1]))):Dl(Math.round(_.w*fe.domain[0]),0)),Ne.attr("transform",n?Dl(0,Math.round(-_.t)):Dl(Math.round(-_.l),0));var Ze=e.select("."+En.cbfills).selectAll("rect."+En.cbfill).attr("style","").data(Z);Ze.enter().append("rect").classed(En.cbfill,!0).attr("style",""),Ze.exit().remove();var mr=R.map(fe.c2p).map(Math.round).sort(function(Sr,Dr){return Sr-Dr});Ze.each(function(Sr,Dr){var ur=[Dr===0?R[0]:(Z[Dr]+Z[Dr-1])/2,Dr===Z.length-1?R[1]:(Z[Dr]+Z[Dr+1])/2].map(fe.c2p).map(Math.round);n&&(ur[1]=Io.constrain(ur[1]+(ur[1]>ur[0])?1:-1,mr[0],mr[1]));var _e=vf.select(this).attr(n?"x":"y",Ce).attr(n?"y":"x",vf.min(ur)).attr(n?"width":"height",Math.max(re,2)).attr(n?"height":"width",Math.max(vf.max(ur)-vf.min(ur),2));if(r._fillgradient)ql.gradient(_e,t,r._id,n?"vertical":"horizontalreversed",r._fillgradient,"fill");else{var Ae=I(Sr).replace("e-","");_e.attr("fill",R4(Ae).toHexString())}});var Tr=e.select("."+En.cblines).selectAll("path."+En.cbline).data(k.color&&k.width?V:[]);Tr.enter().append("path").classed(En.cbline,!0),Tr.exit().remove(),Tr.each(function(Sr){var Dr=Ce,ur=Math.round(fe.c2p(Sr))+k.width/2%1;vf.select(this).attr("d","M"+(n?Dr+","+ur:ur+","+Dr)+(n?"h":"v")+re).call(ql.lineGroupStyle,k.width,F(Sr),k.dash)}),Ne.selectAll("g."+fe._id+"tick,path").remove();var yr=Ce+re+(s||0)/2-(r.ticks==="outside"?1:0),wr=lu.calcTicks(fe),Hr=lu.getTickSigns(fe)[2];return lu.drawTicks(t,fe,{vals:fe.ticks==="inside"?lu.clipEnds(fe,wr):wr,layer:Ne,path:lu.makeTickPath(fe,yr,Hr),transFn:lu.makeTransTickFn(fe)}),lu.drawLabels(t,fe,{vals:wr,layer:Ne,transFn:lu.makeTransTickLabelFn(fe),labelFns:lu.makeLabelFns(fe,yr)})}function dr(){var gr,Te=re+s/2;ke.indexOf("inside")===-1&&(gr=ql.bBox(Ne.node()),Te+=n?gr.width:gr.height),ir=$.select("text");var Oe=0,kr=n&&E==="top",Ur=!n&&E==="right",tr=0;if(ir.node()&&!ir.classed(En.jsPlaceholder)){var Ue,Ze=$.select(".h"+fe._id+"title-math-group").node();Ze&&(n&&ye||!n&&!ye)?(gr=ql.bBox(Ze),Oe=gr.width,Ue=gr.height):(gr=ql.bBox($.node()),Oe=gr.right-_.l-(n?Ce:Qe),Ue=gr.bottom-_.t-(n?Qe:Ce),!n&&E==="top"&&(Te+=gr.height,tr=gr.height)),Ur&&(ir.attr("transform",Dl(Oe/2+Be/2,0)),Oe*=2),Te=Math.max(Te,n?Oe:Ue)}var mr=(n?d:m)*2+Te+u+s/2,Tr=0;!n&&M.text&&h==="bottom"&&y<=0&&(Tr=mr/2,mr+=Tr,tr+=Tr),x._hColorbarMoveTitle=Tr,x._hColorbarMoveCBTitle=tr;var yr=u+s,wr=(n?Ce:Qe)-yr/2-(n?d:0),Hr=(n?Qe:Ce)-(n?Q:m+tr-Tr);e.select("."+En.cbbg).attr("x",wr).attr("y",Hr).attr(n?"width":"height",Math.max(mr-Tr,2)).attr(n?"height":"width",Math.max(Q+yr,2)).call(N4.fill,f).call(N4.stroke,r.bordercolor).style("stroke-width",u);var Sr=Ur?Math.max(Oe-10,0):0;e.selectAll("."+En.cboutline).attr("x",(n?Ce:Qe+d)+Sr).attr("y",(n?Qe+m-Q:Ce)+(kr?or:0)).attr(n?"width":"height",Math.max(re,2)).attr(n?"height":"width",Math.max(Q-(n?2*m+or:2*d+Sr),2)).call(N4.stroke,r.outlinecolor).style({fill:"none","stroke-width":s});var Dr=n?Ie*mr:0,ur=n?0:(1-ze)*mr-tr;if(Dr=C?_.l-Dr:-Dr,ur=b?_.t-ur:-ur,e.attr("transform",Dl(Dr,ur)),!n&&(u||R4(f).getAlpha()&&!R4.equals(x.paper_bgcolor,f))){var _e=Ne.selectAll("text"),Ae=_e[0].length,Ke=e.select("."+En.cbbg).node(),rr=ql.bBox(Ke),Lr=ql.getTranslate(e),Yr=2;_e.each(function(Qt,en){var an=0,jr=Ae-1;if(en===an||en===jr){var Ut=ql.bBox(this),Nt=ql.getTranslate(this),rn;if(en===jr){var Tn=Ut.right+Nt.x,vn=rr.right+Lr.x+Qe-u-Yr+p;rn=vn-Tn,rn>0&&(rn=0)}else if(en===an){var Yt=Ut.left+Nt.x,Bn=rr.left+Lr.x+Qe+u+Yr;rn=Bn-Yt,rn<0&&(rn=0)}rn&&(Ae<3?this.setAttribute("transform","translate("+rn+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var Fr={},lt=Pz[v],xt=Rz[v],Rt=Pz[h],Kt=Rz[h],cn=mr-re;n?(i==="pixels"?(Fr.y=y,Fr.t=Q*Rt,Fr.b=Q*Kt):(Fr.t=Fr.b=0,Fr.yt=y+a*Rt,Fr.yb=y-a*Kt),l==="pixels"?(Fr.x=p,Fr.l=mr*lt,Fr.r=mr*xt):(Fr.l=cn*lt,Fr.r=cn*xt,Fr.xl=p-o*lt,Fr.xr=p+o*xt)):(i==="pixels"?(Fr.x=p,Fr.l=Q*lt,Fr.r=Q*xt):(Fr.l=Fr.r=0,Fr.xl=p+a*lt,Fr.xr=p-a*xt),l==="pixels"?(Fr.y=1-y,Fr.t=mr*Rt,Fr.b=mr*Kt):(Fr.t=cn*Rt,Fr.b=cn*Kt,Fr.yt=y-o*Rt,Fr.yb=y+o*Kt));var pn=r.y<.5?"b":"t",Mn=r.x<.5?"l":"r";t._fullLayout._reservedMargin[r._id]={};var Xt={r:x.width-wr-Dr,l:wr+Fr.r,b:x.height-Hr-ur,t:Hr+Fr.b};C&&b?Ym.autoMargin(t,r._id,Fr):C?t._fullLayout._reservedMargin[r._id][pn]=Xt[pn]:b||n?t._fullLayout._reservedMargin[r._id][Mn]=Xt[Mn]:t._fullLayout._reservedMargin[r._id][pn]=Xt[pn]}return Io.syncOrAsync([Ym.previousPromises,lr,Je,vr,Ym.previousPromises,dr],t)}function dne(e,r,t){var n=r.orientation==="v",a=t._fullLayout,i=a._size,o,l,s;Um.init({element:e.node(),gd:t,prepFn:function(){o=e.attr("transform"),z4(e)},moveFn:function(u,f){e.attr("transform",o+Dl(u,f)),l=Um.align((n?r._uFrac:r._vFrac)+u/i.w,n?r._thickFrac:r._lenFrac,0,1,r.xanchor),s=Um.align((n?r._vFrac:1-r._uFrac)-f/i.h,n?r._lenFrac:r._thickFrac,0,1,r.yanchor);var v=Um.getCursor(l,s,r.xanchor,r.yanchor);z4(e,v)},doneFn:function(){if(z4(e),l!==void 0&&s!==void 0){var u={};u[r._propPrefix+"x"]=l,u[r._propPrefix+"y"]=s,r._traceIndex!==void 0?Dz.call("_guiRestyle",t,u,r._traceIndex):Dz.call("_guiRelayout",t,u)}}})}function pne(e,r,t){var n=r._levels,a=[],i=[],o,l,s=n.end+n.size/100,u=n.size,f=1.001*t[0]-.001*t[1],v=1.001*t[1]-.001*t[0];for(l=0;l<1e5&&(o=n.start+l*u,!(u>0?o>=s:o<=s));l++)o>f&&o0?o>=s:o<=s));l++)o>t[0]&&o{"use strict";Iz.exports={moduleType:"component",name:"colorbar",attributes:ep(),supplyDefaults:O2(),draw:Fz().draw,hasColorbar:q2()}});var Oz=te((Cve,Bz)=>{"use strict";Bz.exports={moduleType:"component",name:"legend",layoutAttributes:F3(),supplyLayoutDefaults:H3(),draw:K3(),style:X3()}});var Yz=te((Lve,Uz)=>{"use strict";Uz.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var Vz=te((qve,Gz)=>{"use strict";Gz.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var H4=te((Dve,jz)=>{"use strict";var mne=dt(),Xz=pr(),I4=Xz.extendFlat,Wz=Xz.extendDeep;function Zz(e){var r;switch(e){case"themes__thumb":r={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":r={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:r={}}return r}function yne(e){var r=["xaxis","yaxis","zaxis"];return r.indexOf(e.slice(0,5))>-1}jz.exports=function(r,t){var n,a=r.data,i=r.layout,o=Wz([],a),l=Wz({},i,Zz(t.tileClass)),s=r._context||{};if(t.width&&(l.width=t.width),t.height&&(l.height=t.height),t.tileClass==="thumbnail"||t.tileClass==="themes__thumb"){l.annotations=[];var u=Object.keys(l);for(n=0;n{"use strict";var bne=Od().EventEmitter,_ne=dt(),xne=pr(),Jz=Cc(),wne=H4(),Mne=Jg(),Ane=$g();function Tne(e,r){var t=new bne,n=wne(e,{format:"png"}),a=n.gd;a.style.position="absolute",a.style.left="-5000px",document.body.appendChild(a);function i(){var l=Jz.getDelay(a._fullLayout);setTimeout(function(){var s=Mne(a),u=document.createElement("canvas");u.id=xne.randstr(),t=Ane({format:r.format,width:a._fullLayout.width,height:a._fullLayout.height,canvas:u,emitter:t,svg:s}),t.clean=function(){a&&document.body.removeChild(a)}},l)}var o=Jz.getRedrawFunc(a);return _ne.call("_doPlot",a,n.data,n.layout,n.config).then(o).then(i).catch(function(l){t.emit("error",l)}),t}$z.exports=Tne});var rN=te((Pve,eN)=>{"use strict";var Qz=Cc(),kne={getDelay:Qz.getDelay,getRedrawFunc:Qz.getRedrawFunc,clone:H4(),toSVG:Jg(),svgToImg:$g(),toImage:Kz(),downloadImage:gb()};eN.exports=kne});var nN=te(su=>{"use strict";su.version=nd().version;Z_();Nw();var Sne=dt(),Nh=su.register=Sne.register,O4=lq(),tN=Object.keys(O4);for(Gm=0;Gm{"use strict";aN.exports=nN()});var Fh=te((Fve,uN)=>{"use strict";var{hovertemplateAttrs:Cne,texttemplateAttrs:Lne,templatefallbackAttrs:oN}=Qf(),qne=W5(),ds=Sc(),Dne=bo(),lN=O0(),Ene=Kl().dash,Hc=sa().extendFlat,Pne=_o().overrideAll,Ho=ds.marker,sN=ds.line,Rne=Ho.line,Nve=["The library used by the *country names* `locationmode` option is changing in an upcoming version.","Country names in existing plots may not work in the new version."].join(" ");uN.exports=Pne({lon:{valType:"data_array"},lat:{valType:"data_array"},locations:{valType:"data_array"},locationmode:{valType:"enumerated",values:["ISO-3","USA-states","country names","geojson-id"],dflt:"ISO-3"},geojson:{valType:"any",editType:"calc"},featureidkey:{valType:"string",editType:"calc",dflt:"id"},mode:Hc({},ds.mode,{dflt:"markers"}),text:Hc({},ds.text,{}),texttemplate:Lne({editType:"plot"},{keys:["lat","lon","location","text"]}),texttemplatefallback:oN({editType:"plot"}),hovertext:Hc({},ds.hovertext,{}),textfont:ds.textfont,textposition:ds.textposition,line:{color:sN.color,width:sN.width,dash:Ene},connectgaps:ds.connectgaps,marker:Hc({symbol:Ho.symbol,opacity:Ho.opacity,angle:Ho.angle,angleref:Hc({},Ho.angleref,{values:["previous","up","north"]}),standoff:Ho.standoff,size:Ho.size,sizeref:Ho.sizeref,sizemin:Ho.sizemin,sizemode:Ho.sizemode,colorbar:Ho.colorbar,line:Hc({width:Rne.width},lN("marker.line")),gradient:Ho.gradient},lN("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:qne(),selected:ds.selected,unselected:ds.unselected,hoverinfo:Hc({},Dne.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:Cne(),hovertemplatefallback:oN()},"calc","nested")});var cN=te((Ive,fN)=>{"use strict";var Wm=pr(),U4=Qa(),zne=bb(),Nne=_b(),Fne=xb(),Ine=wb(),Hne=Fh(),Bne=["The library used by the *country names* `locationmode` option is changing in the next major version.","Some country names in existing plots may not work in the new version.","To ensure consistent behavior, consider setting `locationmode` to *ISO-3*."].join(" ");fN.exports=function(r,t,n,a){function i(d,m){return Wm.coerce(r,t,Hne,d,m)}var o=i("locations"),l;if(o&&o.length){var s=i("geojson"),u;(typeof s=="string"&&s!==""||Wm.isPlainObject(s))&&(u="geojson-id");var f=i("locationmode",u);f==="country names"&&Wm.warn(Bne),f==="geojson-id"&&i("featureidkey"),l=o.length}else{var v=i("lon")||[],h=i("lat")||[];l=Math.min(v.length,h.length)}if(!l){t.visible=!1;return}t._length=l,i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),i("mode"),U4.hasMarkers(t)&&zne(r,t,n,a,i,{gradient:!0}),U4.hasLines(t)&&(Nne(r,t,n,a,i),i("connectgaps")),U4.hasText(t)&&(i("texttemplate"),i("texttemplatefallback"),Fne(r,t,a,i)),i("fill"),t.fill!=="none"&&Ine(r,t,n,i),Wm.coerceSelectionMarkerOpacity(t,i)}});var dN=te((Hve,hN)=>{"use strict";var vN=Dn();hN.exports=function(r,t,n){var a={},i=n[t.geo]._subplot,o=i.mockAxis,l=r.lonlat;return a.lonLabel=vN.tickText(o,o.c2l(l[0]),!0).text,a.latLabel=vN.tickText(o,o.c2l(l[1]),!0).text,a}});var bN=te((Bve,yN)=>{"use strict";var Y4=Ht(),pN=Rn().BADNUM,One=Tb(),Une=mh(),Yne=am(),Gne=pr().isArrayOrTypedArray,gN=pr()._;function mN(e){return e&&typeof e=="string"}yN.exports=function(r,t){var n=Gne(t.locations),a=n?t.locations.length:t._length,i=new Array(a),o;t.geojson?o=function(h){return mN(h)||Y4(h)}:o=mN;for(var l=0;l{"use strict";Oa.projNames={airy:"airy",aitoff:"aitoff","albers usa":"albersUsa",albers:"albers",august:"august","azimuthal equal area":"azimuthalEqualArea","azimuthal equidistant":"azimuthalEquidistant",baker:"baker",bertin1953:"bertin1953",boggs:"boggs",bonne:"bonne",bottomley:"bottomley",bromley:"bromley",collignon:"collignon","conic conformal":"conicConformal","conic equal area":"conicEqualArea","conic equidistant":"conicEquidistant",craig:"craig",craster:"craster","cylindrical equal area":"cylindricalEqualArea","cylindrical stereographic":"cylindricalStereographic",eckert1:"eckert1",eckert2:"eckert2",eckert3:"eckert3",eckert4:"eckert4",eckert5:"eckert5",eckert6:"eckert6",eisenlohr:"eisenlohr","equal earth":"equalEarth",equirectangular:"equirectangular",fahey:"fahey","foucaut sinusoidal":"foucautSinusoidal",foucaut:"foucaut",ginzburg4:"ginzburg4",ginzburg5:"ginzburg5",ginzburg6:"ginzburg6",ginzburg8:"ginzburg8",ginzburg9:"ginzburg9",gnomonic:"gnomonic","gringorten quincuncial":"gringortenQuincuncial",gringorten:"gringorten",guyou:"guyou",hammer:"hammer",hill:"hill",homolosine:"homolosine",hufnagel:"hufnagel",hyperelliptical:"hyperelliptical",kavrayskiy7:"kavrayskiy7",lagrange:"lagrange",larrivee:"larrivee",laskowski:"laskowski",loximuthal:"loximuthal",mercator:"mercator",miller:"miller",mollweide:"mollweide","mt flat polar parabolic":"mtFlatPolarParabolic","mt flat polar quartic":"mtFlatPolarQuartic","mt flat polar sinusoidal":"mtFlatPolarSinusoidal","natural earth":"naturalEarth","natural earth1":"naturalEarth1","natural earth2":"naturalEarth2","nell hammer":"nellHammer",nicolosi:"nicolosi",orthographic:"orthographic",patterson:"patterson","peirce quincuncial":"peirceQuincuncial",polyconic:"polyconic","rectangular polyconic":"rectangularPolyconic",robinson:"robinson",satellite:"satellite","sinu mollweide":"sinuMollweide",sinusoidal:"sinusoidal",stereographic:"stereographic",times:"times","transverse mercator":"transverseMercator","van der grinten":"vanDerGrinten","van der grinten2":"vanDerGrinten2","van der grinten3":"vanDerGrinten3","van der grinten4":"vanDerGrinten4",wagner4:"wagner4",wagner6:"wagner6",wiechel:"wiechel","winkel tripel":"winkel3",winkel3:"winkel3"};Oa.axesNames=["lonaxis","lataxis"];Oa.lonaxisSpan={orthographic:180,"azimuthal equal area":360,"azimuthal equidistant":360,"conic conformal":180,gnomonic:160,stereographic:180,"transverse mercator":180,"*":360};Oa.lataxisSpan={"conic conformal":150,stereographic:179.5,"*":180};Oa.scopeDefaults={world:{lonaxisRange:[-180,180],lataxisRange:[-90,90],projType:"equirectangular",projRotate:[0,0,0]},usa:{lonaxisRange:[-180,-50],lataxisRange:[15,80],projType:"albers usa"},europe:{lonaxisRange:[-30,60],lataxisRange:[30,85],projType:"conic conformal",projRotate:[15,0,0],projParallels:[0,60]},asia:{lonaxisRange:[22,160],lataxisRange:[-15,55],projType:"mercator",projRotate:[0,0,0]},africa:{lonaxisRange:[-30,60],lataxisRange:[-40,40],projType:"mercator",projRotate:[0,0,0]},"north america":{lonaxisRange:[-180,-45],lataxisRange:[5,85],projType:"conic conformal",projRotate:[-100,0,0],projParallels:[29.5,45.5]},"south america":{lonaxisRange:[-100,-30],lataxisRange:[-60,15],projType:"mercator",projRotate:[0,0,0]},antarctica:{lonaxisRange:[-180,180],lataxisRange:[-90,-60],projType:"equirectangular",projRotate:[0,0,0]},oceania:{lonaxisRange:[-180,180],lataxisRange:[-50,25],projType:"equirectangular",projRotate:[0,0,0]}};Oa.clipPad=.001;Oa.precision=.1;Oa.landColor="#F0DC82";Oa.waterColor="#3399FF";Oa.locationmodeToLayer={"ISO-3":"countries","USA-states":"subunits","country names":"countries"};Oa.sphereSVG={type:"Sphere"};Oa.fillLayers={ocean:1,land:1,lakes:1};Oa.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1};Oa.layers=["bg","ocean","land","lakes","subunits","countries","coastlines","rivers","lataxis","lonaxis","frame","backplot","frontplot"];Oa.layersForChoropleth=["bg","ocean","land","subunits","countries","coastlines","lataxis","lonaxis","frame","backplot","rivers","lakes","frontplot"];Oa.layerNameToAdjective={ocean:"ocean",land:"land",lakes:"lake",subunits:"subunit",countries:"country",coastlines:"coastline",rivers:"river",frame:"frame"}});var G4=te((Zm,_N)=>{(function(e,r){typeof Zm=="object"&&typeof _N!="undefined"?r(Zm):(e=e||self,r(e.topojson=e.topojson||{}))})(Zm,function(e){"use strict";function r(x){return x}function t(x){if(x==null)return r;var _,A,k=x.scale[0],M=x.scale[1],E=x.translate[0],R=x.translate[1];return function(F,I){I||(_=A=0);var W=2,O=F.length,Z=new Array(O);for(Z[0]=(_+=F[0])*k+E,Z[1]=(A+=F[1])*M+R;WE&&(E=W[0]),W[1]R&&(R=W[1])}function I(W){switch(W.type){case"GeometryCollection":W.geometries.forEach(I);break;case"Point":F(W.coordinates);break;case"MultiPoint":W.coordinates.forEach(F);break}}x.arcs.forEach(function(W){for(var O=-1,Z=W.length,V;++OE&&(E=V[0]),V[1]R&&(R=V[1])});for(A in x.objects)I(x.objects[A]);return[k,M,E,R]}function a(x,_){for(var A,k=x.length,M=k-_;M<--k;)A=x[M],x[M++]=x[k],x[k]=A}function i(x,_){return typeof _=="string"&&(_=x.objects[_]),_.type==="GeometryCollection"?{type:"FeatureCollection",features:_.geometries.map(function(A){return o(x,A)})}:o(x,_)}function o(x,_){var A=_.id,k=_.bbox,M=_.properties==null?{}:_.properties,E=l(x,_);return A==null&&k==null?{type:"Feature",properties:M,geometry:E}:k==null?{type:"Feature",id:A,properties:M,geometry:E}:{type:"Feature",id:A,bbox:k,properties:M,geometry:E}}function l(x,_){var A=t(x.transform),k=x.arcs;function M(O,Z){Z.length&&Z.pop();for(var V=k[O<0?~O:O],re=0,ie=V.length;re1)k=v(x,_,A);else for(M=0,k=new Array(E=x.arcs.length);M1)for(var Z=1,V=F(W[0]),re,ie;ZV&&(ie=W[0],W[0]=W[Z],W[Z]=ie,V=re);return W}).filter(function(I){return I.length>0})}}function p(x,_){for(var A=0,k=x.length;A>>1;x[M]<_?A=M+1:k=M}return A}function y(x){var _={},A=x.map(function(){return[]});function k(Q,ee){Q.forEach(function(se){se<0&&(se=~se);var ve=_[se];ve?ve.push(ee):_[se]=[ee]})}function M(Q,ee){Q.forEach(function(se){k(se,ee)})}function E(Q,ee){Q.type==="GeometryCollection"?Q.geometries.forEach(function(se){E(se,ee)}):Q.type in R&&R[Q.type](Q.arcs,ee)}var R={LineString:k,MultiLineString:M,Polygon:M,MultiPolygon:function(Q,ee){Q.forEach(function(se){M(se,ee)})}};x.forEach(E);for(var F in _)for(var I=_[F],W=I.length,O=0;O=2))throw new Error("n must be \u22652");I=x.bbox||n(x);var A=I[0],k=I[1],M=I[2],E=I[3],R;_={scale:[M-A?(M-A)/(R-1):1,E-k?(E-k)/(R-1):1],translate:[A,k]}}else I=x.bbox;var F=b(_),I,W,O=x.objects,Z={};function V(Q){return F(Q)}function re(Q){var ee;switch(Q.type){case"GeometryCollection":ee={type:"GeometryCollection",geometries:Q.geometries.map(re)};break;case"Point":ee={type:"Point",coordinates:V(Q.coordinates)};break;case"MultiPoint":ee={type:"MultiPoint",coordinates:Q.coordinates.map(V)};break;default:return Q}return Q.id!=null&&(ee.id=Q.id),Q.bbox!=null&&(ee.bbox=Q.bbox),Q.properties!=null&&(ee.properties=Q.properties),ee}function ie(Q){var ee=0,se=1,ve=Q.length,Ce,Ie=new Array(ve);for(Ie[0]=F(Q[0],0);++ee{"use strict";var V4=xN.exports={},Vne=Ih().locationmodeToLayer,Wne=G4().feature;V4.getTopojsonName=function(e){return[e.scope.replace(/ /g,"-"),"_",e.resolution.toString(),"m"].join("")};V4.getTopojsonPath=function(e,r){return e+=e.endsWith("/")?"":"/",`${e}${r}.json`};V4.getTopojsonFeatures=function(e,r){var t=Vne[e.locationmode],n=r.objects[t];return Wne(r,n).features}});var wN=te(Hh=>{"use strict";var Zne=Rn().BADNUM;Hh.calcTraceToLineCoords=function(e){for(var r=e[0].trace,t=r.connectgaps,n=[],a=[],i=0;i0&&(n.push(a),a=[])}return a.length>0&&n.push(a),n};Hh.makeLine=function(e){return e.length===1?{type:"LineString",coordinates:e[0]}:{type:"MultiLineString",coordinates:e}};Hh.makePolygon=function(e){if(e.length===1)return{type:"Polygon",coordinates:e};for(var r=new Array(e.length),t=0;t{MN.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xE7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xE9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xE9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xE3)o.?tom(e|\xE9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}});var $m=te(gn=>{"use strict";Object.defineProperty(gn,"__esModule",{value:!0});var Hi=63710088e-1,Z4={centimeters:Hi*100,centimetres:Hi*100,degrees:360/(2*Math.PI),feet:Hi*3.28084,inches:Hi*39.37,kilometers:Hi/1e3,kilometres:Hi/1e3,meters:Hi,metres:Hi,miles:Hi/1609.344,millimeters:Hi*1e3,millimetres:Hi*1e3,nauticalmiles:Hi/1852,radians:1,yards:Hi*1.0936},W4={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,nauticalmiles:29155334959812285e-23,millimeters:1e6,millimetres:1e6,yards:1.195990046};function hf(e,r,t={}){let n={type:"Feature"};return(t.id===0||t.id)&&(n.id=t.id),t.bbox&&(n.bbox=t.bbox),n.properties=r||{},n.geometry=e,n}function Xne(e,r,t={}){switch(e){case"Point":return X4(r).geometry;case"LineString":return J4(r).geometry;case"Polygon":return j4(r).geometry;case"MultiPoint":return kN(r).geometry;case"MultiLineString":return TN(r).geometry;case"MultiPolygon":return SN(r).geometry;default:throw new Error(e+" is invalid")}}function X4(e,r,t={}){if(!e)throw new Error("coordinates is required");if(!Array.isArray(e))throw new Error("coordinates must be an Array");if(e.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!jm(e[0])||!jm(e[1]))throw new Error("coordinates must contain numbers");return hf({type:"Point",coordinates:e},r,t)}function jne(e,r,t={}){return Jm(e.map(n=>X4(n,r)),t)}function j4(e,r,t={}){for(let a of e){if(a.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(a[a.length-1].length!==a[0].length)throw new Error("First and last Position are not equivalent.");for(let i=0;ij4(n,r)),t)}function J4(e,r,t={}){if(e.length<2)throw new Error("coordinates must be an array of two or more positions");return hf({type:"LineString",coordinates:e},r,t)}function $ne(e,r,t={}){return Jm(e.map(n=>J4(n,r)),t)}function Jm(e,r={}){let t={type:"FeatureCollection"};return r.id&&(t.id=r.id),r.bbox&&(t.bbox=r.bbox),t.features=e,t}function TN(e,r,t={}){return hf({type:"MultiLineString",coordinates:e},r,t)}function kN(e,r,t={}){return hf({type:"MultiPoint",coordinates:e},r,t)}function SN(e,r,t={}){return hf({type:"MultiPolygon",coordinates:e},r,t)}function Kne(e,r,t={}){return hf({type:"GeometryCollection",geometries:e},r,t)}function Qne(e,r=0){if(r&&!(r>=0))throw new Error("precision must be a positive number");let t=Math.pow(10,r||0);return Math.round(e*t)/t}function CN(e,r="kilometers"){let t=Z4[r];if(!t)throw new Error(r+" units is invalid");return e*t}function $4(e,r="kilometers"){let t=Z4[r];if(!t)throw new Error(r+" units is invalid");return e/t}function eae(e,r){return LN($4(e,r))}function rae(e){let r=e%360;return r<0&&(r+=360),r}function tae(e){return e=e%360,e>180?e-360:e<-180?e+360:e}function LN(e){return e%(2*Math.PI)*180/Math.PI}function nae(e){return e%360*Math.PI/180}function aae(e,r="kilometers",t="kilometers"){if(!(e>=0))throw new Error("length must be a positive number");return CN($4(e,r),t)}function iae(e,r="meters",t="kilometers"){if(!(e>=0))throw new Error("area must be a positive number");let n=W4[r];if(!n)throw new Error("invalid original units");let a=W4[t];if(!a)throw new Error("invalid final units");return e/n*a}function jm(e){return!isNaN(e)&&e!==null&&!Array.isArray(e)}function oae(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function lae(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(e.length!==4&&e.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach(r=>{if(!jm(r))throw new Error("bbox must only contain numbers")})}function sae(e){if(!e)throw new Error("id is required");if(["string","number"].indexOf(typeof e)===-1)throw new Error("id must be a number or a string")}gn.areaFactors=W4;gn.azimuthToBearing=tae;gn.bearingToAzimuth=rae;gn.convertArea=iae;gn.convertLength=aae;gn.degreesToRadians=nae;gn.earthRadius=Hi;gn.factors=Z4;gn.feature=hf;gn.featureCollection=Jm;gn.geometry=Xne;gn.geometryCollection=Kne;gn.isNumber=jm;gn.isObject=oae;gn.lengthToDegrees=eae;gn.lengthToRadians=$4;gn.lineString=J4;gn.lineStrings=$ne;gn.multiLineString=TN;gn.multiPoint=kN;gn.multiPolygon=SN;gn.point=X4;gn.points=jne;gn.polygon=j4;gn.polygons=Jne;gn.radiansToDegrees=LN;gn.radiansToLength=CN;gn.round=Qne;gn.validateBBox=lae;gn.validateId=sae});var Qm=te(ka=>{"use strict";Object.defineProperty(ka,"__esModule",{value:!0});var oi=$m();function Bh(e,r,t){if(e!==null)for(var n,a,i,o,l,s,u,f=0,v=0,h,d=e.type,m=d==="FeatureCollection",p=d==="Feature",y=m?e.features.length:1,b=0;bs||m>u||p>f){l=v,s=n,u=m,f=p,i=0;return}var y=oi.lineString.call(void 0,[l,v],t.properties);if(r(y,n,a,p,i)===!1)return!1;i++,l=v})===!1)return!1}}})}function pae(e,r,t){var n=t,a=!1;return EN(e,function(i,o,l,s,u){a===!1&&t===void 0?n=i:n=r(n,i,o,l,s,u),a=!0}),n}function PN(e,r){if(!e)throw new Error("geojson is required");Km(e,function(t,n,a){if(t.geometry!==null){var i=t.geometry.type,o=t.geometry.coordinates;switch(i){case"LineString":if(r(t,n,a,0,0)===!1)return!1;break;case"Polygon":for(var l=0;l{"use strict";Object.defineProperty(ey,"__esModule",{value:!0});var RN=$m(),bae=Qm();function FN(e){return bae.geomReduce.call(void 0,e,(r,t)=>r+_ae(t),0)}function _ae(e){let r=0,t;switch(e.type){case"Polygon":return zN(e.coordinates);case"MultiPolygon":for(t=0;t0){r+=Math.abs(NN(e[0]));for(let t=1;t=r?(n+2)%r:n+2],l=a[0]*Q4,s=i[1]*Q4,u=o[0]*Q4;t+=(u-l)*Math.sin(s),n++}return t*xae}var wae=FN;ey.area=FN;ey.default=wae});var BN=te(ry=>{"use strict";Object.defineProperty(ry,"__esModule",{value:!0});var Mae=$m(),Aae=Qm();function HN(e,r={}){let t=0,n=0,a=0;return Aae.coordEach.call(void 0,e,function(i){t+=i[0],n+=i[1],a++},!0),Mae.point.call(void 0,[t/a,n/a],r.properties)}var Tae=HN;ry.centroid=HN;ry.default=Tae});var UN=te(ty=>{"use strict";Object.defineProperty(ty,"__esModule",{value:!0});var kae=Qm();function ON(e,r={}){if(e.bbox!=null&&r.recompute!==!0)return e.bbox;let t=[1/0,1/0,-1/0,-1/0];return kae.coordEach.call(void 0,e,n=>{t[0]>n[0]&&(t[0]=n[0]),t[1]>n[1]&&(t[1]=n[1]),t[2]{"use strict";var Cae=kt(),VN=AN(),{area:Lae}=IN(),{centroid:qae}=BN(),{bbox:Dae}=UN(),YN=qd(),Pv=Pu(),Eae=Gs(),Pae=e1(),ny=Mg(),GN=Object.keys(VN),Rae={"ISO-3":YN,"USA-states":YN,"country names":zae};function zae(e){for(var r=0;r0&&f[v+1][0]<0)return v;return null}switch(n==="RUS"||n==="FJI"?i=function(f){var v;if(u(f)===null)v=f;else for(v=new Array(f.length),s=0;sv?h[d++]=[f[s][0]+360,f[s][1]]:s===v?(h[d++]=f[s],h[d++]=[f[s][0],-90]):h[d++]=f[s];var m=ny.tester(h);m.pts.pop(),a.push(m)}:i=function(f){a.push(ny.tester(f))},r.type){case"MultiPolygon":for(o=0;o0?m.properties.ct=Hae(m):m.properties.ct=[NaN,NaN],h.fIn=f,h.fOut=m,a.push(m)}else Pv.log(["Location",h.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete n[v]}switch(t.type){case"FeatureCollection":var s=t.features;for(i=0;ia&&(a=l,t=o)}else t=r;return qae(t).geometry.coordinates}function Bae(e){var r=window.PlotlyGeoAssets||{},t=[];function n(s){return new Promise(function(u,f){Cae.json(s,function(v,h){if(v){delete r[s];var d=v.status===404?'GeoJSON at URL "'+s+'" does not exist.':"Unexpected error while fetching from "+s;return f(new Error(d))}return r[s]=h,u(h)})})}function a(s){return new Promise(function(u,f){var v=0,h=setInterval(function(){if(r[s]&&r[s]!=="pending")return clearInterval(h),u(r[s]);if(v>100)return clearInterval(h),f("Unexpected error while fetching from "+s);v++},50)})}for(var i=0;i{"use strict";var Uae=kt(),Yae=fn(),XN=Et(),jN=wh(),Gae=jN.stylePoints,Vae=jN.styleText;JN.exports=function(r,t){t&&Wae(r,t)};function Wae(e,r){var t=r[0].trace,n=r[0].node3;n.style("opacity",r[0].trace.opacity),Gae(n,t,e),Vae(n,t,e),n.selectAll("path.js-line").style("fill","none").each(function(a){var i=Uae.select(this),o=a.trace,l=o.line||{};i.call(XN.stroke,l.color).call(Yae.dashLine,l.dash||"",l.width||0),o.fill!=="none"&&i.call(XN.fill,o.fillcolor)})}});var a_=te((Kve,QN)=>{"use strict";var $N=kt(),oy=pr(),Zae=Xm().getTopojsonFeatures,r_=wN(),iy=ay(),KN=ju().findExtremes,n_=Rn().BADNUM,Xae=im().calcMarkerSize,t_=Qa(),jae=e_();function Jae(e,r,t){var n=r.layers.frontplot.select(".scatterlayer"),a=oy.makeTraceGroups(n,t,"trace scattergeo");function i(o,l){o.lonlat[0]===n_&&$N.select(l).remove()}a.selectAll("*").remove(),a.each(function(o){var l=$N.select(this),s=o[0].trace;if(t_.hasLines(s)||s.fill!=="none"){var u=r_.calcTraceToLineCoords(o),f=s.fill!=="none"?r_.makePolygon(u):r_.makeLine(u);l.selectAll("path.js-line").data([{geojson:f,trace:s}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}t_.hasMarkers(s)&&l.selectAll("path.point").data(oy.identity).enter().append("path").classed("point",!0).each(function(v){i(v,this)}),t_.hasText(s)&&l.selectAll("g").data(oy.identity).enter().append("g").append("text").each(function(v){i(v,this)}),jae(e,o)})}function $ae(e,r){var t=e[0].trace,n=r[t.geo],a=n._subplot,i=t._length,o,l;if(oy.isArrayOrTypedArray(t.locations)){var s=t.locationmode,u=s==="geojson-id"?iy.extractTraceFeature(e):Zae(t,a.topojson);for(o=0;o{"use strict";var Kae=ss(),Qae=Rn().BADNUM,eie=Bb(),rie=pr().fillText,tie=Fh();eF.exports=function(r,t,n){var a=r.cd,i=a[0].trace,o=r.xa,l=r.ya,s=r.subplot,u=s.projection.isLonLatOverEdges,f=s.project;function v(C){var x=C.lonlat;if(x[0]===Qae||u(x))return 1/0;var _=f(x),A=f([t,n]),k=Math.abs(_[0]-A[0]),M=Math.abs(_[1]-A[1]),E=Math.max(3,C.mrc||0);return Math.max(Math.sqrt(k*k+M*M)-E,1-3/E)}if(Kae.getClosest(a,v,r),r.index!==!1){var h=a[r.index],d=h.lonlat,m=[o.c2p(d),l.c2p(d)],p=h.mrc||1;r.x0=m[0]-p,r.x1=m[0]+p,r.y0=m[1]-p,r.y1=m[1]+p,r.loc=h.loc,r.lon=d[0],r.lat=d[1];var y={};y[i.geo]={_subplot:s};var b=i._module.formatLabels(h,i,y);return r.lonLabel=b.lonLabel,r.latLabel=b.latLabel,r.color=eie(i,h),r.extraText=nie(i,h,r,a[0].t.labels),r.hovertemplate=i.hovertemplate,[r]}};function nie(e,r,t,n){if(e.hovertemplate)return;var a=r.hi||e.hoverinfo,i=a==="all"?tie.hoverinfo.flags:a.split("+"),o=i.indexOf("location")!==-1&&Array.isArray(e.locations),l=i.indexOf("lon")!==-1,s=i.indexOf("lat")!==-1,u=i.indexOf("text")!==-1,f=[];function v(h){return h+"\xB0"}return o?f.push(r.loc):l&&s?f.push("("+v(t.latLabel)+", "+v(t.lonLabel)+")"):l?f.push(n.lon+v(t.lonLabel)):s&&f.push(n.lat+v(t.latLabel)),u&&rie(r,e,f),f.join("
")}});var nF=te((e1e,tF)=>{"use strict";tF.exports=function(r,t,n,a,i){r.lon=t.lon,r.lat=t.lat,r.location=t.loc?t.loc:null;var o=a[i];return o.fIn&&o.fIn.properties&&(r.properties=o.fIn.properties),r}});var oF=te((r1e,iF)=>{"use strict";var aF=Qa(),aie=Rn().BADNUM;iF.exports=function(r,t){var n=r.cd,a=r.xaxis,i=r.yaxis,o=[],l=n[0].trace,s,u,f,v,h,d=!aF.hasMarkers(l)&&!aF.hasText(l);if(d)return[];if(t===!1)for(h=0;h{(function(e,r){r(typeof ly=="object"&&typeof lF!="undefined"?ly:e.d3=e.d3||{})})(ly,function(e){"use strict";function r(fe,ye){return feye?1:fe>=ye?0:NaN}function t(fe){return fe.length===1&&(fe=n(fe)),{left:function(ye,Me,pe,U){for(pe==null&&(pe=0),U==null&&(U=ye.length);pe>>1;fe(ye[K],Me)<0?pe=K+1:U=K}return pe},right:function(ye,Me,pe,U){for(pe==null&&(pe=0),U==null&&(U=ye.length);pe>>1;fe(ye[K],Me)>0?U=K:pe=K+1}return pe}}}function n(fe){return function(ye,Me){return r(fe(ye),Me)}}var a=t(r),i=a.right,o=a.left;function l(fe,ye){ye==null&&(ye=s);for(var Me=0,pe=fe.length-1,U=fe[0],K=new Array(pe<0?0:pe);Mefe?1:ye>=fe?0:NaN}function v(fe){return fe===null?NaN:+fe}function h(fe,ye){var Me=fe.length,pe=0,U=-1,K=0,$,ke,Be=0;if(ye==null)for(;++U1)return Be/(pe-1)}function d(fe,ye){var Me=h(fe,ye);return Me&&Math.sqrt(Me)}function m(fe,ye){var Me=fe.length,pe=-1,U,K,$;if(ye==null){for(;++pe=U)for(K=$=U;++peU&&(K=U),$=U)for(K=$=U;++peU&&(K=U),$0)return[fe];if((pe=ye0)for(fe=Math.ceil(fe/ke),ye=Math.floor(ye/ke),$=new Array(K=Math.ceil(ye-fe+1));++U=0?(K>=A?10:K>=k?5:K>=M?2:1)*Math.pow(10,U):-Math.pow(10,-U)/(K>=A?10:K>=k?5:K>=M?2:1)}function F(fe,ye,Me){var pe=Math.abs(ye-fe)/Math.max(0,Me),U=Math.pow(10,Math.floor(Math.log(pe)/Math.LN10)),K=pe/U;return K>=A?U*=10:K>=k?U*=5:K>=M&&(U*=2),yeor;)Ye.pop(),--nr;var lr=new Array(nr+1),vr;for(K=0;K<=nr;++K)vr=lr[K]=[],vr.x0=K>0?Ye[K-1]:ir,vr.x1=K=1)return+Me(fe[pe-1],pe-1,fe);var pe,U=(pe-1)*ye,K=Math.floor(U),$=+Me(fe[K],K,fe),ke=+Me(fe[K+1],K+1,fe);return $+(ke-$)*(U-K)}}function Z(fe,ye,Me){return fe=b.call(fe,v).sort(r),Math.ceil((Me-ye)/(2*(O(fe,.75)-O(fe,.25))*Math.pow(fe.length,-1/3)))}function V(fe,ye,Me){return Math.ceil((Me-ye)/(3.5*d(fe)*Math.pow(fe.length,-1/3)))}function re(fe,ye){var Me=fe.length,pe=-1,U,K;if(ye==null){for(;++pe=U)for(K=U;++peK&&(K=U)}else for(;++pe=U)for(K=U;++peK&&(K=U);return K}function ie(fe,ye){var Me=fe.length,pe=Me,U=-1,K,$=0;if(ye==null)for(;++U=0;)for($=fe[ye],Me=$.length;--Me>=0;)K[--U]=$[Me];return K}function se(fe,ye){var Me=fe.length,pe=-1,U,K;if(ye==null){for(;++pe=U)for(K=U;++peU&&(K=U)}else for(;++pe=U)for(K=U;++peU&&(K=U);return K}function ve(fe,ye){for(var Me=ye.length,pe=new Array(Me);Me--;)pe[Me]=fe[ye[Me]];return pe}function Ce(fe,ye){if(Me=fe.length){var Me,pe=0,U=0,K,$=fe[U];for(ye==null&&(ye=r);++pe{(function(e,r){typeof sy=="object"&&typeof sF!="undefined"?r(sy,i_()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(sy,function(e,r){"use strict";function t(){return new n}function n(){this.reset()}n.prototype={constructor:n,reset:function(){this.s=this.t=0},add:function(H){i(a,H,this.t),i(this,a.s,this.s),this.s?this.t+=a.t:this.s=a.t},valueOf:function(){return this.s}};var a=new n;function i(H,J,ce){var oe=H.s=J+ce,we=oe-J,He=oe-we;H.t=J-He+(ce-we)}var o=1e-6,l=1e-12,s=Math.PI,u=s/2,f=s/4,v=s*2,h=180/s,d=s/180,m=Math.abs,p=Math.atan,y=Math.atan2,b=Math.cos,C=Math.ceil,x=Math.exp,_=Math.log,A=Math.pow,k=Math.sin,M=Math.sign||function(H){return H>0?1:H<0?-1:0},E=Math.sqrt,R=Math.tan;function F(H){return H>1?0:H<-1?s:Math.acos(H)}function I(H){return H>1?u:H<-1?-u:Math.asin(H)}function W(H){return(H=k(H/2))*H}function O(){}function Z(H,J){H&&re.hasOwnProperty(H.type)&&re[H.type](H,J)}var V={Feature:function(H,J){Z(H.geometry,J)},FeatureCollection:function(H,J){for(var ce=H.features,oe=-1,we=ce.length;++oe=0?1:-1,we=oe*ce,He=b(J),je=k(J),ar=Le*je,sr=Xe*He+ar*b(we),br=ar*oe*k(we);se.add(y(br,sr)),ze=H,Xe=He,Le=je}function U(H){return ve.reset(),ee(H,Qe),ve*2}function K(H){return[y(H[1],H[0]),I(H[2])]}function $(H){var J=H[0],ce=H[1],oe=b(ce);return[oe*b(J),oe*k(J),k(ce)]}function ke(H,J){return H[0]*J[0]+H[1]*J[1]+H[2]*J[2]}function Be(H,J){return[H[1]*J[2]-H[2]*J[1],H[2]*J[0]-H[0]*J[2],H[0]*J[1]-H[1]*J[0]]}function Ne(H,J){H[0]+=J[0],H[1]+=J[1],H[2]+=J[2]}function ir(H,J){return[H[0]*J,H[1]*J,H[2]*J]}function or(H){var J=E(H[0]*H[0]+H[1]*H[1]+H[2]*H[2]);H[0]/=J,H[1]/=J,H[2]/=J}var Ye,nr,lr,vr,Je,dr,gr,Te,Oe=t(),kr,Ur,tr={point:Ue,lineStart:mr,lineEnd:Tr,polygonStart:function(){tr.point=yr,tr.lineStart=wr,tr.lineEnd=Hr,Oe.reset(),Qe.polygonStart()},polygonEnd:function(){Qe.polygonEnd(),tr.point=Ue,tr.lineStart=mr,tr.lineEnd=Tr,se<0?(Ye=-(lr=180),nr=-(vr=90)):Oe>o?vr=90:Oe<-o&&(nr=-90),Ur[0]=Ye,Ur[1]=lr},sphere:function(){Ye=-(lr=180),nr=-(vr=90)}};function Ue(H,J){kr.push(Ur=[Ye=H,lr=H]),Jvr&&(vr=J)}function Ze(H,J){var ce=$([H*d,J*d]);if(Te){var oe=Be(Te,ce),we=[oe[1],-oe[0],0],He=Be(we,oe);or(He),He=K(He);var je=H-Je,ar=je>0?1:-1,sr=He[0]*h*ar,br,$e=m(je)>180;$e^(ar*Jevr&&(vr=br)):(sr=(sr+360)%360-180,$e^(ar*Jevr&&(vr=J))),$e?HSr(Ye,lr)&&(lr=H):Sr(H,lr)>Sr(Ye,lr)&&(Ye=H):lr>=Ye?(Hlr&&(lr=H)):H>Je?Sr(Ye,H)>Sr(Ye,lr)&&(lr=H):Sr(H,lr)>Sr(Ye,lr)&&(Ye=H)}else kr.push(Ur=[Ye=H,lr=H]);Jvr&&(vr=J),Te=ce,Je=H}function mr(){tr.point=Ze}function Tr(){Ur[0]=Ye,Ur[1]=lr,tr.point=Ue,Te=null}function yr(H,J){if(Te){var ce=H-Je;Oe.add(m(ce)>180?ce+(ce>0?360:-360):ce)}else dr=H,gr=J;Qe.point(H,J),Ze(H,J)}function wr(){Qe.lineStart()}function Hr(){yr(dr,gr),Qe.lineEnd(),m(Oe)>o&&(Ye=-(lr=180)),Ur[0]=Ye,Ur[1]=lr,Te=null}function Sr(H,J){return(J-=H)<0?J+360:J}function Dr(H,J){return H[0]-J[0]}function ur(H,J){return H[0]<=H[1]?H[0]<=J&&J<=H[1]:JSr(oe[0],oe[1])&&(oe[1]=we[1]),Sr(we[0],oe[1])>Sr(oe[0],oe[1])&&(oe[0]=we[0])):He.push(oe=we);for(je=-1/0,ce=He.length-1,J=0,oe=He[ce];J<=ce;oe=we,++J)we=He[J],(ar=Sr(oe[1],we[0]))>je&&(je=ar,Ye=we[0],lr=oe[1])}return kr=Ur=null,Ye===1/0||nr===1/0?[[NaN,NaN],[NaN,NaN]]:[[Ye,nr],[lr,vr]]}var Ae,Ke,rr,Lr,Yr,Fr,lt,xt,Rt,Kt,cn,pn,Mn,Xt,Qt,en,an={sphere:O,point:jr,lineStart:Nt,lineEnd:vn,polygonStart:function(){an.lineStart=Yt,an.lineEnd=Bn},polygonEnd:function(){an.lineStart=Nt,an.lineEnd=vn}};function jr(H,J){H*=d,J*=d;var ce=b(J);Ut(ce*b(H),ce*k(H),k(J))}function Ut(H,J,ce){++Ae,rr+=(H-rr)/Ae,Lr+=(J-Lr)/Ae,Yr+=(ce-Yr)/Ae}function Nt(){an.point=rn}function rn(H,J){H*=d,J*=d;var ce=b(J);Xt=ce*b(H),Qt=ce*k(H),en=k(J),an.point=Tn,Ut(Xt,Qt,en)}function Tn(H,J){H*=d,J*=d;var ce=b(J),oe=ce*b(H),we=ce*k(H),He=k(J),je=y(E((je=Qt*He-en*we)*je+(je=en*oe-Xt*He)*je+(je=Xt*we-Qt*oe)*je),Xt*oe+Qt*we+en*He);Ke+=je,Fr+=je*(Xt+(Xt=oe)),lt+=je*(Qt+(Qt=we)),xt+=je*(en+(en=He)),Ut(Xt,Qt,en)}function vn(){an.point=jr}function Yt(){an.point=Ga}function Bn(){kn(pn,Mn),an.point=jr}function Ga(H,J){pn=H,Mn=J,H*=d,J*=d,an.point=kn;var ce=b(J);Xt=ce*b(H),Qt=ce*k(H),en=k(J),Ut(Xt,Qt,en)}function kn(H,J){H*=d,J*=d;var ce=b(J),oe=ce*b(H),we=ce*k(H),He=k(J),je=Qt*He-en*we,ar=en*oe-Xt*He,sr=Xt*we-Qt*oe,br=E(je*je+ar*ar+sr*sr),$e=I(br),hr=br&&-$e/br;Rt+=hr*je,Kt+=hr*ar,cn+=hr*sr,Ke+=$e,Fr+=$e*(Xt+(Xt=oe)),lt+=$e*(Qt+(Qt=we)),xt+=$e*(en+(en=He)),Ut(Xt,Qt,en)}function Va(H){Ae=Ke=rr=Lr=Yr=Fr=lt=xt=Rt=Kt=cn=0,ee(H,an);var J=Rt,ce=Kt,oe=cn,we=J*J+ce*ce+oe*oe;return wes?H+Math.round(-H/v)*v:H,J]}dn.invert=dn;function On(H,J,ce){return(H%=v)?J||ce?hn(io(H),mi(J,ce)):io(H):J||ce?mi(J,ce):dn}function gi(H){return function(J,ce){return J+=H,[J>s?J-v:J<-s?J+v:J,ce]}}function io(H){var J=gi(H);return J.invert=gi(-H),J}function mi(H,J){var ce=b(H),oe=k(H),we=b(J),He=k(J);function je(ar,sr){var br=b(sr),$e=b(ar)*br,hr=k(ar)*br,fr=k(sr),Mr=fr*ce+$e*oe;return[y(hr*we-Mr*He,$e*ce-fr*oe),I(Mr*we+hr*He)]}return je.invert=function(ar,sr){var br=b(sr),$e=b(ar)*br,hr=k(ar)*br,fr=k(sr),Mr=fr*we-hr*He;return[y(hr*we+fr*He,$e*ce+Mr*oe),I(Mr*ce-$e*oe)]},je}function ms(H){H=On(H[0]*d,H[1]*d,H.length>2?H[2]*d:0);function J(ce){return ce=H(ce[0]*d,ce[1]*d),ce[0]*=h,ce[1]*=h,ce}return J.invert=function(ce){return ce=H.invert(ce[0]*d,ce[1]*d),ce[0]*=h,ce[1]*=h,ce},J}function Pl(H,J,ce,oe,we,He){if(ce){var je=b(J),ar=k(J),sr=oe*ce;we==null?(we=J+oe*v,He=J-sr/2):(we=Oo(je,we),He=Oo(je,He),(oe>0?weHe)&&(we+=oe*v));for(var br,$e=we;oe>0?$e>He:$e1&&H.push(H.pop().concat(H.shift()))},result:function(){var ce=H;return H=[],J=null,ce}}}function Un(H,J){return m(H[0]-J[0])=0;--ar)we.point((hr=$e[ar])[0],hr[1]);else oe(fr.x,fr.p.x,-1,we);fr=fr.p}fr=fr.o,$e=fr.z,Mr=!Mr}while(!fr.v);we.lineEnd()}}}function bi(H){if(J=H.length){for(var J,ce=0,oe=H[0],we;++ce=0?1:-1,Wt=tn*Gt,mn=Wt>s,Ct=rt*it;if(Qr.add(y(Ct*tn*k(Wt),Jr*pt+Ct*b(Wt))),je+=mn?Gt+tn*v:Gt,mn^Mr>=ce^Er>=ce){var oa=Be($(fr),$(nt));or(oa);var Nn=Be(He,oa);or(Nn);var yn=(mn^Gt>=0?-1:1)*I(Nn[2]);(oe>yn||oe===yn&&(oa[0]||oa[1]))&&(ar+=mn^Gt>=0?1:-1)}}return(je<-o||je0){for(sr||(we.polygonStart(),sr=!0),we.lineStart(),pt=0;pt1&&Ir&2&&it.push(it.pop().concat(it.shift())),$e.push(it.filter(Zn))}}return fr}}function Zn(H){return H.length>1}function on(H,J){return((H=H.x)[0]<0?H[1]-u-o:u-H[1])-((J=J.x)[0]<0?J[1]-u-o:u-J[1])}var Pn=Br(function(){return!0},At,Go,[-s,-u]);function At(H){var J=NaN,ce=NaN,oe=NaN,we;return{lineStart:function(){H.lineStart(),we=1},point:function(He,je){var ar=He>0?s:-s,sr=m(He-J);m(sr-s)0?u:-u),H.point(oe,ce),H.lineEnd(),H.lineStart(),H.point(ar,ce),H.point(He,ce),we=0):oe!==ar&&sr>=s&&(m(J-oe)o?p((k(J)*(He=b(oe))*k(ce)-k(oe)*(we=b(J))*k(H))/(we*He*je)):(J+oe)/2}function Go(H,J,ce,oe){var we;if(H==null)we=ce*u,oe.point(-s,we),oe.point(0,we),oe.point(s,we),oe.point(s,0),oe.point(s,-we),oe.point(0,-we),oe.point(-s,-we),oe.point(-s,0),oe.point(-s,we);else if(m(H[0]-J[0])>o){var He=H[0]0,we=m(J)>o;function He($e,hr,fr,Mr){Pl(Mr,H,ce,fr,$e,hr)}function je($e,hr){return b($e)*b(hr)>J}function ar($e){var hr,fr,Mr,qr,rt;return{lineStart:function(){qr=Mr=!1,rt=1},point:function(Jr,tt){var nt=[Jr,tt],Er,Ir=je(Jr,tt),it=oe?Ir?0:br(Jr,tt):Ir?br(Jr+(Jr<0?s:-s),tt):0;if(!hr&&(qr=Mr=Ir)&&$e.lineStart(),Ir!==Mr&&(Er=sr(hr,nt),(!Er||Un(hr,Er)||Un(nt,Er))&&(nt[2]=1)),Ir!==Mr)rt=0,Ir?($e.lineStart(),Er=sr(nt,hr),$e.point(Er[0],Er[1])):(Er=sr(hr,nt),$e.point(Er[0],Er[1],2),$e.lineEnd()),hr=Er;else if(we&&hr&&oe^Ir){var pt;!(it&fr)&&(pt=sr(nt,hr,!0))&&(rt=0,oe?($e.lineStart(),$e.point(pt[0][0],pt[0][1]),$e.point(pt[1][0],pt[1][1]),$e.lineEnd()):($e.point(pt[1][0],pt[1][1]),$e.lineEnd(),$e.lineStart(),$e.point(pt[0][0],pt[0][1],3)))}Ir&&(!hr||!Un(hr,nt))&&$e.point(nt[0],nt[1]),hr=nt,Mr=Ir,fr=it},lineEnd:function(){Mr&&$e.lineEnd(),hr=null},clean:function(){return rt|(qr&&Mr)<<1}}}function sr($e,hr,fr){var Mr=$($e),qr=$(hr),rt=[1,0,0],Jr=Be(Mr,qr),tt=ke(Jr,Jr),nt=Jr[0],Er=tt-nt*nt;if(!Er)return!fr&&$e;var Ir=J*tt/Er,it=-J*nt/Er,pt=Be(rt,Jr),Gt=ir(rt,Ir),tn=ir(Jr,it);Ne(Gt,tn);var Wt=pt,mn=ke(Gt,Wt),Ct=ke(Wt,Wt),oa=mn*mn-Ct*(ke(Gt,Gt)-1);if(!(oa<0)){var Nn=E(oa),yn=ir(Wt,(-mn-Nn)/Ct);if(Ne(yn,Gt),yn=K(yn),!fr)return yn;var Gr=$e[0],Vt=hr[0],Yn=$e[1],pa=hr[1],Xa;Vt0^yn[1]<(m(yn[0]-Gr)s^(Gr<=yn[0]&&yn[0]<=Vt)){var ui=ir(Wt,(-mn+Nn)/Ct);return Ne(ui,Gt),[yn,K(ui)]}}}function br($e,hr){var fr=oe?H:s-H,Mr=0;return $e<-fr?Mr|=1:$e>fr&&(Mr|=2),hr<-fr?Mr|=4:hr>fr&&(Mr|=8),Mr}return Br(je,ar,He,oe?[0,-H]:[-s,H-s])}function cu(H,J,ce,oe,we,He){var je=H[0],ar=H[1],sr=J[0],br=J[1],$e=0,hr=1,fr=sr-je,Mr=br-ar,qr;if(qr=ce-je,!(!fr&&qr>0)){if(qr/=fr,fr<0){if(qr<$e)return;qr0){if(qr>hr)return;qr>$e&&($e=qr)}if(qr=we-je,!(!fr&&qr<0)){if(qr/=fr,fr<0){if(qr>hr)return;qr>$e&&($e=qr)}else if(fr>0){if(qr<$e)return;qr0)){if(qr/=Mr,Mr<0){if(qr<$e)return;qr0){if(qr>hr)return;qr>$e&&($e=qr)}if(qr=He-ar,!(!Mr&&qr<0)){if(qr/=Mr,Mr<0){if(qr>hr)return;qr>$e&&($e=qr)}else if(Mr>0){if(qr<$e)return;qr0&&(H[0]=je+$e*fr,H[1]=ar+$e*Mr),hr<1&&(J[0]=je+hr*fr,J[1]=ar+hr*Mr),!0}}}}}var oo=1e9,Vo=-oo;function Wo(H,J,ce,oe){function we(br,$e){return H<=br&&br<=ce&&J<=$e&&$e<=oe}function He(br,$e,hr,fr){var Mr=0,qr=0;if(br==null||(Mr=je(br,hr))!==(qr=je($e,hr))||sr(br,$e)<0^hr>0)do fr.point(Mr===0||Mr===3?H:ce,Mr>1?oe:J);while((Mr=(Mr+hr+4)%4)!==qr);else fr.point($e[0],$e[1])}function je(br,$e){return m(br[0]-H)0?0:3:m(br[0]-ce)0?2:1:m(br[1]-J)0?1:0:$e>0?3:2}function ar(br,$e){return sr(br.x,$e.x)}function sr(br,$e){var hr=je(br,1),fr=je($e,1);return hr!==fr?hr-fr:hr===0?$e[1]-br[1]:hr===1?br[0]-$e[0]:hr===2?br[1]-$e[1]:$e[0]-br[0]}return function(br){var $e=br,hr=Uo(),fr,Mr,qr,rt,Jr,tt,nt,Er,Ir,it,pt,Gt={point:tn,lineStart:oa,lineEnd:Nn,polygonStart:mn,polygonEnd:Ct};function tn(Gr,Vt){we(Gr,Vt)&&$e.point(Gr,Vt)}function Wt(){for(var Gr=0,Vt=0,Yn=Mr.length;Vtoe&&(il-al)*(oe-ui)>(Xl-ui)*(H-al)&&++Gr:Xl<=oe&&(il-al)*(oe-ui)<(Xl-ui)*(H-al)&&--Gr;return Gr}function mn(){$e=hr,fr=[],Mr=[],pt=!0}function Ct(){var Gr=Wt(),Vt=pt&&Gr,Yn=(fr=r.merge(fr)).length;(Vt||Yn)&&(br.polygonStart(),Vt&&(br.lineStart(),He(null,null,1,br),br.lineEnd()),Yn&&Yo(fr,ar,Gr,He,br),br.polygonEnd()),$e=br,fr=Mr=qr=null}function oa(){Gt.point=yn,Mr&&Mr.push(qr=[]),it=!0,Ir=!1,nt=Er=NaN}function Nn(){fr&&(yn(rt,Jr),tt&&Ir&&hr.rejoin(),fr.push(hr.result())),Gt.point=tn,Ir&&$e.lineEnd()}function yn(Gr,Vt){var Yn=we(Gr,Vt);if(Mr&&qr.push([Gr,Vt]),it)rt=Gr,Jr=Vt,tt=Yn,it=!1,Yn&&($e.lineStart(),$e.point(Gr,Vt));else if(Yn&&Ir)$e.point(Gr,Vt);else{var pa=[nt=Math.max(Vo,Math.min(oo,nt)),Er=Math.max(Vo,Math.min(oo,Er))],Xa=[Gr=Math.max(Vo,Math.min(oo,Gr)),Vt=Math.max(Vo,Math.min(oo,Vt))];cu(pa,Xa,H,J,ce,oe)?(Ir||($e.lineStart(),$e.point(pa[0],pa[1])),$e.point(Xa[0],Xa[1]),Yn||$e.lineEnd(),pt=!1):Yn&&($e.lineStart(),$e.point(Gr,Vt),pt=!1)}nt=Gr,Er=Vt,Ir=Yn}return Gt}}function vu(){var H=0,J=0,ce=960,oe=500,we,He,je;return je={stream:function(ar){return we&&He===ar?we:we=Wo(H,J,ce,oe)(He=ar)},extent:function(ar){return arguments.length?(H=+ar[0][0],J=+ar[0][1],ce=+ar[1][0],oe=+ar[1][1],we=He=null,je):[[H,J],[ce,oe]]}}}var Rl=t(),zl,_i,lo,Zo={sphere:O,point:O,lineStart:Nl,lineEnd:O,polygonStart:O,polygonEnd:O};function Nl(){Zo.point=wf,Zo.lineEnd=bs}function bs(){Zo.point=Zo.lineEnd=O}function wf(H,J){H*=d,J*=d,zl=H,_i=k(J),lo=b(J),Zo.point=Xc}function Xc(H,J){H*=d,J*=d;var ce=k(J),oe=b(J),we=m(H-zl),He=b(we),je=k(we),ar=oe*je,sr=lo*ce-_i*oe*He,br=_i*ce+lo*oe*He;Rl.add(y(E(ar*ar+sr*sr),br)),zl=H,_i=ce,lo=oe}function _s(H){return Rl.reset(),ee(H,Zo),+Rl}var xs=[null,null],ws={type:"LineString",coordinates:xs};function Xo(H,J){return xs[0]=H,xs[1]=J,_s(ws)}var so={Feature:function(H,J){return Bi(H.geometry,J)},FeatureCollection:function(H,J){for(var ce=H.features,oe=-1,we=ce.length;++oe0&&(we=Xo(H[He],H[He-1]),we>0&&ce<=we&&oe<=we&&(ce+oe-we)*(1-Math.pow((ce-oe)/we,2))o}).map(fr)).concat(r.range(C(He/br)*br,we,br).filter(function(Er){return m(Er%hr)>o}).map(Mr))}return tt.lines=function(){return nt().map(function(Er){return{type:"LineString",coordinates:Er}})},tt.outline=function(){return{type:"Polygon",coordinates:[qr(oe).concat(rt(je).slice(1),qr(ce).reverse().slice(1),rt(ar).reverse().slice(1))]}},tt.extent=function(Er){return arguments.length?tt.extentMajor(Er).extentMinor(Er):tt.extentMinor()},tt.extentMajor=function(Er){return arguments.length?(oe=+Er[0][0],ce=+Er[1][0],ar=+Er[0][1],je=+Er[1][1],oe>ce&&(Er=oe,oe=ce,ce=Er),ar>je&&(Er=ar,ar=je,je=Er),tt.precision(Jr)):[[oe,ar],[ce,je]]},tt.extentMinor=function(Er){return arguments.length?(J=+Er[0][0],H=+Er[1][0],He=+Er[0][1],we=+Er[1][1],J>H&&(Er=J,J=H,H=Er),He>we&&(Er=He,He=we,we=Er),tt.precision(Jr)):[[J,He],[H,we]]},tt.step=function(Er){return arguments.length?tt.stepMajor(Er).stepMinor(Er):tt.stepMinor()},tt.stepMajor=function(Er){return arguments.length?($e=+Er[0],hr=+Er[1],tt):[$e,hr]},tt.stepMinor=function(Er){return arguments.length?(sr=+Er[0],br=+Er[1],tt):[sr,br]},tt.precision=function(Er){return arguments.length?(Jr=+Er,fr=Oi(He,we,90),Mr=As(J,H,Jr),qr=Oi(ar,je,90),rt=As(oe,ce,Jr),tt):Jr},tt.extentMajor([[-180,-90+o],[180,90-o]]).extentMinor([[-180,-80-o],[180,80+o]])}function Ts(){return Jc()()}function Bv(H,J){var ce=H[0]*d,oe=H[1]*d,we=J[0]*d,He=J[1]*d,je=b(oe),ar=k(oe),sr=b(He),br=k(He),$e=je*b(ce),hr=je*k(ce),fr=sr*b(we),Mr=sr*k(we),qr=2*I(E(W(He-oe)+je*sr*W(we-ce))),rt=k(qr),Jr=qr?function(tt){var nt=k(tt*=qr)/rt,Er=k(qr-tt)/rt,Ir=Er*$e+nt*fr,it=Er*hr+nt*Mr,pt=Er*ar+nt*br;return[y(it,Ir)*h,y(pt,E(Ir*Ir+it*it))*h]}:function(){return[ce*h,oe*h]};return Jr.distance=qr,Jr}function jo(H){return H}var Tf=t(),Il=t(),$c,fo,co,kf,xi={point:O,lineStart:O,lineEnd:O,polygonStart:function(){xi.lineStart=Ov,xi.lineEnd=Uv},polygonEnd:function(){xi.lineStart=xi.lineEnd=xi.point=O,Tf.add(m(Il)),Il.reset()},result:function(){var H=Tf/2;return Tf.reset(),H}};function Ov(){xi.point=Ui}function Ui(H,J){xi.point=Hl,$c=co=H,fo=kf=J}function Hl(H,J){Il.add(kf*H-co*J),co=H,kf=J}function Uv(){Hl($c,fo)}var Yi=1/0,Jo=Yi,$o=-Yi,Ko=$o,vo={point:ks,lineStart:O,lineEnd:O,polygonStart:O,polygonEnd:O,result:function(){var H=[[Yi,Jo],[$o,Ko]];return $o=Ko=-(Jo=Yi=1/0),H}};function ks(H,J){H$o&&($o=H),JKo&&(Ko=J)}var du=0,Ss=0,Cs=0,Qo=0,Bl=0,Ol=0,pu=0,gu=0,li=0,mu,yu,za,ea,Ma={point:Gi,lineStart:Ls,lineEnd:Sf,polygonStart:function(){Ma.lineStart=Kc,Ma.lineEnd=Yv},polygonEnd:function(){Ma.point=Gi,Ma.lineStart=Ls,Ma.lineEnd=Sf},result:function(){var H=li?[pu/li,gu/li]:Ol?[Qo/Ol,Bl/Ol]:Cs?[du/Cs,Ss/Cs]:[NaN,NaN];return du=Ss=Cs=Qo=Bl=Ol=pu=gu=li=0,H}};function Gi(H,J){du+=H,Ss+=J,++Cs}function Ls(){Ma.point=el}function el(H,J){Ma.point=Ul,Gi(za=H,ea=J)}function Ul(H,J){var ce=H-za,oe=J-ea,we=E(ce*ce+oe*oe);Qo+=we*(za+H)/2,Bl+=we*(ea+J)/2,Ol+=we,Gi(za=H,ea=J)}function Sf(){Ma.point=Gi}function Kc(){Ma.point=Gv}function Yv(){Cf(mu,yu)}function Gv(H,J){Ma.point=Cf,Gi(mu=za=H,yu=ea=J)}function Cf(H,J){var ce=H-za,oe=J-ea,we=E(ce*ce+oe*oe);Qo+=we*(za+H)/2,Bl+=we*(ea+J)/2,Ol+=we,we=ea*H-za*J,pu+=we*(za+H),gu+=we*(ea+J),li+=we*3,Gi(za=H,ea=J)}function Lf(H){this._context=H}Lf.prototype={_radius:4.5,pointRadius:function(H){return this._radius=H,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(H,J){switch(this._point){case 0:{this._context.moveTo(H,J),this._point=1;break}case 1:{this._context.lineTo(H,J);break}default:{this._context.moveTo(H+this._radius,J),this._context.arc(H,J,this._radius,0,v);break}}},result:O};var qf=t(),Df,Qc,e0,qs,Ds,wi={point:O,lineStart:function(){wi.point=bu},lineEnd:function(){Df&&Es(Qc,e0),wi.point=O},polygonStart:function(){Df=!0},polygonEnd:function(){Df=null},result:function(){var H=+qf;return qf.reset(),H}};function bu(H,J){wi.point=Es,Qc=qs=H,e0=Ds=J}function Es(H,J){qs-=H,Ds-=J,qf.add(E(qs*qs+Ds*Ds)),qs=H,Ds=J}function _u(){this._string=[]}_u.prototype={_radius:4.5,_circle:r0(4.5),pointRadius:function(H){return(H=+H)!==this._radius&&(this._radius=H,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(H,J){switch(this._point){case 0:{this._string.push("M",H,",",J),this._point=1;break}case 1:{this._string.push("L",H,",",J);break}default:{this._circle==null&&(this._circle=r0(this._radius)),this._string.push("M",H,",",J,this._circle);break}}},result:function(){if(this._string.length){var H=this._string.join("");return this._string=[],H}else return null}};function r0(H){return"m0,"+H+"a"+H+","+H+" 0 1,1 0,"+-2*H+"a"+H+","+H+" 0 1,1 0,"+2*H+"z"}function Ef(H,J){var ce=4.5,oe,we;function He(je){return je&&(typeof ce=="function"&&we.pointRadius(+ce.apply(this,arguments)),ee(je,oe(we))),we.result()}return He.area=function(je){return ee(je,oe(xi)),xi.result()},He.measure=function(je){return ee(je,oe(wi)),wi.result()},He.bounds=function(je){return ee(je,oe(vo)),vo.result()},He.centroid=function(je){return ee(je,oe(Ma)),Ma.result()},He.projection=function(je){return arguments.length?(oe=je==null?(H=null,jo):(H=je).stream,He):H},He.context=function(je){return arguments.length?(we=je==null?(J=null,new _u):new Lf(J=je),typeof ce!="function"&&we.pointRadius(ce),He):J},He.pointRadius=function(je){return arguments.length?(ce=typeof je=="function"?je:(we.pointRadius(+je),+je),He):ce},He.projection(H).context(J)}function Vv(H){return{stream:ho(H)}}function ho(H){return function(J){var ce=new xu;for(var oe in H)ce[oe]=H[oe];return ce.stream=J,ce}}function xu(){}xu.prototype={constructor:xu,point:function(H,J){this.stream.point(H,J)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function Yl(H,J,ce){var oe=H.clipExtent&&H.clipExtent();return H.scale(150).translate([0,0]),oe!=null&&H.clipExtent(null),ee(ce,H.stream(vo)),J(vo.result()),oe!=null&&H.clipExtent(oe),H}function Ps(H,J,ce){return Yl(H,function(oe){var we=J[1][0]-J[0][0],He=J[1][1]-J[0][1],je=Math.min(we/(oe[1][0]-oe[0][0]),He/(oe[1][1]-oe[0][1])),ar=+J[0][0]+(we-je*(oe[1][0]+oe[0][0]))/2,sr=+J[0][1]+(He-je*(oe[1][1]+oe[0][1]))/2;H.scale(150*je).translate([ar,sr])},ce)}function Rs(H,J,ce){return Ps(H,[[0,0],J],ce)}function Pf(H,J,ce){return Yl(H,function(oe){var we=+J,He=we/(oe[1][0]-oe[0][0]),je=(we-He*(oe[1][0]+oe[0][0]))/2,ar=-He*oe[0][1];H.scale(150*He).translate([je,ar])},ce)}function po(H,J,ce){return Yl(H,function(oe){var we=+J,He=we/(oe[1][1]-oe[0][1]),je=-He*oe[0][0],ar=(we-He*(oe[1][1]+oe[0][1]))/2;H.scale(150*He).translate([je,ar])},ce)}var t0=16,Rf=b(30*d);function n0(H,J){return+J?wu(H,J):zf(H)}function zf(H){return ho({point:function(J,ce){J=H(J,ce),this.stream.point(J[0],J[1])}})}function wu(H,J){function ce(oe,we,He,je,ar,sr,br,$e,hr,fr,Mr,qr,rt,Jr){var tt=br-oe,nt=$e-we,Er=tt*tt+nt*nt;if(Er>4*J&&rt--){var Ir=je+fr,it=ar+Mr,pt=sr+qr,Gt=E(Ir*Ir+it*it+pt*pt),tn=I(pt/=Gt),Wt=m(m(pt)-1)J||m((tt*Nn+nt*yn)/Er-.5)>.3||je*fr+ar*Mr+sr*qr2?Gr[2]%360*d:0,Nn()):[ar*h,sr*h,br*h]},Ct.angle=function(Gr){return arguments.length?(hr=Gr%360*d,Nn()):hr*h},Ct.reflectX=function(Gr){return arguments.length?(fr=Gr?-1:1,Nn()):fr<0},Ct.reflectY=function(Gr){return arguments.length?(Mr=Gr?-1:1,Nn()):Mr<0},Ct.precision=function(Gr){return arguments.length?(pt=n0(Gt,it=Gr*Gr),yn()):E(it)},Ct.fitExtent=function(Gr,Vt){return Ps(Ct,Gr,Vt)},Ct.fitSize=function(Gr,Vt){return Rs(Ct,Gr,Vt)},Ct.fitWidth=function(Gr,Vt){return Pf(Ct,Gr,Vt)},Ct.fitHeight=function(Gr,Vt){return po(Ct,Gr,Vt)};function Nn(){var Gr=If(ce,0,0,fr,Mr,hr).apply(null,J(He,je)),Vt=(hr?If:Wv)(ce,oe-Gr[0],we-Gr[1],fr,Mr,hr);return $e=On(ar,sr,br),Gt=hn(J,Vt),tn=hn($e,Gt),pt=n0(Gt,it),yn()}function yn(){return Wt=mn=null,Ct}return function(){return J=H.apply(this,arguments),Ct.invert=J.invert&&oa,Nn()}}function Gl(H){var J=0,ce=s/3,oe=Hf(H),we=oe(J,ce);return we.parallels=function(He){return arguments.length?oe(J=He[0]*d,ce=He[1]*d):[J*h,ce*h]},we}function Bf(H){var J=b(H);function ce(oe,we){return[oe*J,k(we)/J]}return ce.invert=function(oe,we){return[oe/J,I(we*J)]},ce}function a0(H,J){var ce=k(H),oe=(ce+k(J))/2;if(m(oe)=.12&&Jr<.234&&rt>=-.425&&rt<-.214?we:Jr>=.166&&Jr<.234&&rt>=-.214&&rt<-.115?je:ce).invert(fr)},$e.stream=function(fr){return H&&J===fr?H:H=Zv([ce.stream(J=fr),we.stream(fr),je.stream(fr)])},$e.precision=function(fr){return arguments.length?(ce.precision(fr),we.precision(fr),je.precision(fr),hr()):ce.precision()},$e.scale=function(fr){return arguments.length?(ce.scale(fr),we.scale(fr*.35),je.scale(fr),$e.translate(ce.translate())):ce.scale()},$e.translate=function(fr){if(!arguments.length)return ce.translate();var Mr=ce.scale(),qr=+fr[0],rt=+fr[1];return oe=ce.translate(fr).clipExtent([[qr-.455*Mr,rt-.238*Mr],[qr+.455*Mr,rt+.238*Mr]]).stream(br),He=we.translate([qr-.307*Mr,rt+.201*Mr]).clipExtent([[qr-.425*Mr+o,rt+.12*Mr+o],[qr-.214*Mr-o,rt+.234*Mr-o]]).stream(br),ar=je.translate([qr-.205*Mr,rt+.212*Mr]).clipExtent([[qr-.214*Mr+o,rt+.166*Mr+o],[qr-.115*Mr-o,rt+.234*Mr-o]]).stream(br),hr()},$e.fitExtent=function(fr,Mr){return Ps($e,fr,Mr)},$e.fitSize=function(fr,Mr){return Rs($e,fr,Mr)},$e.fitWidth=function(fr,Mr){return Pf($e,fr,Mr)},$e.fitHeight=function(fr,Mr){return po($e,fr,Mr)};function hr(){return H=J=null,$e}return $e.scale(1070)}function Vi(H){return function(J,ce){var oe=b(J),we=b(ce),He=H(oe*we);return[He*we*k(J),He*k(ce)]}}function Ai(H){return function(J,ce){var oe=E(J*J+ce*ce),we=H(oe),He=k(we),je=b(we);return[y(J*He,oe*je),I(oe&&ce*He/oe)]}}var Na=Vi(function(H){return E(2/(1+H))});Na.invert=Ai(function(H){return 2*I(H/2)});function jv(){return Mi(Na).scale(124.75).clipAngle(180-.001)}var Vl=Vi(function(H){return(H=F(H))&&H/k(H)});Vl.invert=Ai(function(H){return H});function o0(){return Mi(Vl).scale(79.4188).clipAngle(180-.001)}function Za(H,J){return[H,_(R((u+J)/2))]}Za.invert=function(H,J){return[H,2*p(x(J))-u]};function l0(){return s0(Za).scale(961/v)}function s0(H){var J=Mi(H),ce=J.center,oe=J.scale,we=J.translate,He=J.clipExtent,je=null,ar,sr,br;J.scale=function(hr){return arguments.length?(oe(hr),$e()):oe()},J.translate=function(hr){return arguments.length?(we(hr),$e()):we()},J.center=function(hr){return arguments.length?(ce(hr),$e()):ce()},J.clipExtent=function(hr){return arguments.length?(hr==null?je=ar=sr=br=null:(je=+hr[0][0],ar=+hr[0][1],sr=+hr[1][0],br=+hr[1][1]),$e()):je==null?null:[[je,ar],[sr,br]]};function $e(){var hr=s*oe(),fr=J(ms(J.rotate()).invert([0,0]));return He(je==null?[[fr[0]-hr,fr[1]-hr],[fr[0]+hr,fr[1]+hr]]:H===Za?[[Math.max(fr[0]-hr,je),ar],[Math.min(fr[0]+hr,sr),br]]:[[je,Math.max(fr[1]-hr,ar)],[sr,Math.min(fr[1]+hr,br)]])}return $e()}function zs(H){return R((u+H)/2)}function u0(H,J){var ce=b(H),oe=H===J?k(H):_(ce/b(J))/_(zs(J)/zs(H)),we=ce*A(zs(H),oe)/oe;if(!oe)return Za;function He(je,ar){we>0?ar<-u+o&&(ar=-u+o):ar>u-o&&(ar=u-o);var sr=we/A(zs(ar),oe);return[sr*k(oe*je),we-sr*b(oe*je)]}return He.invert=function(je,ar){var sr=we-ar,br=M(oe)*E(je*je+sr*sr),$e=y(je,m(sr))*M(sr);return sr*oe<0&&($e-=s*M(je)*M(sr)),[$e/oe,2*p(A(we/br,1/oe))-u]},He}function Mu(){return Gl(u0).scale(109.5).parallels([30,30])}function Ns(H,J){return[H,J]}Ns.invert=Ns;function Au(){return Mi(Ns).scale(152.63)}function Fs(H,J){var ce=b(H),oe=H===J?k(H):(ce-b(J))/(J-H),we=ce/oe+H;if(m(oe)o&&--oe>0);return[H/(.8707+(He=ce*ce)*(-.131979+He*(-.013791+He*He*He*(.003971-.001529*He)))),ce]};function Su(){return Mi(Of).scale(175.295)}function Xn(H,J){return[b(J)*k(H),k(J)]}Xn.invert=Ai(I);function si(){return Mi(Xn).scale(249.5).clipAngle(90+o)}function Zl(H,J){var ce=b(J),oe=1+b(H)*ce;return[ce*k(H)/oe,k(J)/oe]}Zl.invert=Ai(function(H){return 2*p(H)});function Cu(){return Mi(Zl).scale(250).clipAngle(142)}function Os(H,J){return[_(R((u+J)/2)),-H]}Os.invert=function(H,J){return[-J,2*p(x(H))-u]};function Uf(){var H=s0(Os),J=H.center,ce=H.rotate;return H.center=function(oe){return arguments.length?J([-oe[1],oe[0]]):(oe=J(),[oe[1],-oe[0]])},H.rotate=function(oe){return arguments.length?ce([oe[0],oe[1],oe.length>2?oe[2]+90:90]):(oe=ce(),[oe[0],oe[1],oe[2]-90])},ce([0,0,90]).scale(159.155)}e.geoAlbers=i0,e.geoAlbersUsa=Xv,e.geoArea=U,e.geoAzimuthalEqualArea=jv,e.geoAzimuthalEqualAreaRaw=Na,e.geoAzimuthalEquidistant=o0,e.geoAzimuthalEquidistantRaw=Vl,e.geoBounds=_e,e.geoCentroid=Va,e.geoCircle=ys,e.geoClipAntimeridian=Pn,e.geoClipCircle=xf,e.geoClipExtent=vu,e.geoClipRectangle=Wo,e.geoConicConformal=Mu,e.geoConicConformalRaw=u0,e.geoConicEqualArea=rl,e.geoConicEqualAreaRaw=a0,e.geoConicEquidistant=Jv,e.geoConicEquidistantRaw=Fs,e.geoContains=Ms,e.geoDistance=Xo,e.geoEqualEarth=f0,e.geoEqualEarthRaw=Bs,e.geoEquirectangular=Au,e.geoEquirectangularRaw=Ns,e.geoGnomonic=c0,e.geoGnomonicRaw=ku,e.geoGraticule=Jc,e.geoGraticule10=Ts,e.geoIdentity=v0,e.geoInterpolate=Bv,e.geoLength=_s,e.geoMercator=l0,e.geoMercatorRaw=Za,e.geoNaturalEarth1=Su,e.geoNaturalEarth1Raw=Of,e.geoOrthographic=si,e.geoOrthographicRaw=Xn,e.geoPath=Ef,e.geoProjection=Mi,e.geoProjectionMutator=Hf,e.geoRotation=ms,e.geoStereographic=Cu,e.geoStereographicRaw=Zl,e.geoStream=ee,e.geoTransform=Vv,e.geoTransverseMercator=Uf,e.geoTransverseMercatorRaw=Os,Object.defineProperty(e,"__esModule",{value:!0})})});var fF=te((uy,uF)=>{(function(e,r){typeof uy=="object"&&typeof uF!="undefined"?r(uy,o_(),i_()):r(e.d3=e.d3||{},e.d3,e.d3)})(uy,function(e,r,t){"use strict";var n=Math.abs,a=Math.atan,i=Math.atan2,o=Math.cos,l=Math.exp,s=Math.floor,u=Math.log,f=Math.max,v=Math.min,h=Math.pow,d=Math.round,m=Math.sign||function(T){return T>0?1:T<0?-1:0},p=Math.sin,y=Math.tan,b=1e-6,C=1e-12,x=Math.PI,_=x/2,A=x/4,k=Math.SQRT1_2,M=V(2),E=V(x),R=x*2,F=180/x,I=x/180;function W(T){return T?T/Math.sin(T):1}function O(T){return T>1?_:T<-1?-_:Math.asin(T)}function Z(T){return T>1?0:T<-1?x:Math.acos(T)}function V(T){return T>0?Math.sqrt(T):0}function re(T){return T=l(2*T),(T-1)/(T+1)}function ie(T){return(l(T)-l(-T))/2}function Q(T){return(l(T)+l(-T))/2}function ee(T){return u(T+V(T*T+1))}function se(T){return u(T+V(T*T-1))}function ve(T){var L=y(T/2),P=2*u(o(T/2))/(L*L);function z(Y,B){var X=o(Y),ue=o(B),he=p(B),le=ue*X,de=-((1-le?u((1+le)/2)/(1-le):-.5)+P/(1+le));return[de*ue*p(Y),de*he]}return z.invert=function(Y,B){var X=V(Y*Y+B*B),ue=-T/2,he=50,le;if(!X)return[0,0];do{var de=ue/2,xe=o(de),qe=p(de),Fe=qe/xe,er=-u(n(xe));ue-=le=(2/Fe*er-P*Fe-X)/(-er/(qe*qe)+1-P/(2*xe*xe))*(xe<0?.7:1)}while(n(le)>b&&--he>0);var cr=p(ue);return[i(Y*cr,X*o(ue)),O(B*cr/X)]},z}function Ce(){var T=_,L=r.geoProjectionMutator(ve),P=L(T);return P.radius=function(z){return arguments.length?L(T=z*I):T*F},P.scale(179.976).clipAngle(147)}function Ie(T,L){var P=o(L),z=W(Z(P*o(T/=2)));return[2*P*p(T)*z,p(L)*z]}Ie.invert=function(T,L){if(!(T*T+4*L*L>x*x+b)){var P=T,z=L,Y=25;do{var B=p(P),X=p(P/2),ue=o(P/2),he=p(z),le=o(z),de=p(2*z),xe=he*he,qe=le*le,Fe=X*X,er=1-qe*ue*ue,cr=er?Z(le*ue)*V(Ar=1/er):Ar=0,Ar,Xr=2*cr*le*X-T,at=cr*he-L,ot=Ar*(qe*Fe+cr*le*ue*xe),st=Ar*(.5*B*de-cr*2*he*X),vt=Ar*.25*(de*X-cr*he*qe*B),ln=Ar*(xe*ue+cr*Fe*le),An=st*vt-ln*ot;if(!An)break;var zt=(at*st-Xr*ln)/An,Fn=(Xr*vt-at*ot)/An;P-=zt,z-=Fn}while((n(zt)>b||n(Fn)>b)&&--Y>0);return[P,z]}};function ze(){return r.geoProjection(Ie).scale(152.63)}function Xe(T){var L=p(T),P=o(T),z=T>=0?1:-1,Y=y(z*T),B=(1+L-P)/2;function X(ue,he){var le=o(he),de=o(ue/=2);return[(1+le)*p(ue),(z*he>-i(de,Y)-.001?0:-z*10)+B+p(he)*P-(1+le)*L*de]}return X.invert=function(ue,he){var le=0,de=0,xe=50;do{var qe=o(le),Fe=p(le),er=o(de),cr=p(de),Ar=1+er,Xr=Ar*Fe-ue,at=B+cr*P-Ar*L*qe-he,ot=Ar*qe/2,st=-Fe*cr,vt=L*Ar*Fe/2,ln=P*er+L*qe*cr,An=st*vt-ln*ot,zt=(at*st-Xr*ln)/An/2,Fn=(Xr*vt-at*ot)/An;n(Fn)>2&&(Fn/=2),le-=zt,de-=Fn}while((n(zt)>b||n(Fn)>b)&&--xe>0);return z*de>-i(o(le),Y)-.001?[le*2,de]:null},X}function Le(){var T=20*I,L=T>=0?1:-1,P=y(L*T),z=r.geoProjectionMutator(Xe),Y=z(T),B=Y.stream;return Y.parallel=function(X){return arguments.length?(P=y((L=(T=X*I)>=0?1:-1)*T),z(T)):T*F},Y.stream=function(X){var ue=Y.rotate(),he=B(X),le=(Y.rotate([0,0]),B(X)),de=Y.precision();return Y.rotate(ue),he.sphere=function(){le.polygonStart(),le.lineStart();for(var xe=L*-180;L*xe<180;xe+=L*90)le.point(xe,L*90);if(T)for(;L*(xe-=3*L*de)>=-180;)le.point(xe,L*-i(o(xe*I/2),P)*F);le.lineEnd(),le.polygonEnd()},he},Y.scale(218.695).center([0,28.0974])}function Qe(T,L){var P=y(L/2),z=V(1-P*P),Y=1+z*o(T/=2),B=p(T)*z/Y,X=P/Y,ue=B*B,he=X*X;return[4/3*B*(3+ue-3*he),4/3*X*(3+3*ue-he)]}Qe.invert=function(T,L){if(T*=3/8,L*=3/8,!T&&n(L)>1)return null;var P=T*T,z=L*L,Y=1+P+z,B=V((Y-V(Y*Y-4*L*L))/2),X=O(B)/3,ue=B?se(n(L/B))/3:ee(n(T))/3,he=o(X),le=Q(ue),de=le*le-he*he;return[m(T)*2*i(ie(ue)*he,.25-de),m(L)*2*i(le*p(X),.25+de)]};function fe(){return r.geoProjection(Qe).scale(66.1603)}var ye=V(8),Me=u(1+M);function pe(T,L){var P=n(L);return PC&&--z>0);return[T/(o(P)*(ye-1/p(P))),m(L)*P]};function U(){return r.geoProjection(pe).scale(112.314)}function K(T){var L=2*x/T;function P(z,Y){var B=r.geoAzimuthalEquidistantRaw(z,Y);if(n(z)>_){var X=i(B[1],B[0]),ue=V(B[0]*B[0]+B[1]*B[1]),he=L*d((X-_)/L)+_,le=i(p(X-=he),2-o(X));X=he+O(x/ue*p(le))-le,B[0]=ue*o(X),B[1]=ue*p(X)}return B}return P.invert=function(z,Y){var B=V(z*z+Y*Y);if(B>_){var X=i(Y,z),ue=L*d((X-_)/L)+_,he=X>ue?-1:1,le=B*o(ue-X),de=1/y(he*Z((le-x)/V(x*(x-2*le)+B*B)));X=ue+2*a((de+he*V(de*de-3))/3),z=B*o(X),Y=B*p(X)}return r.geoAzimuthalEquidistantRaw.invert(z,Y)},P}function $(){var T=5,L=r.geoProjectionMutator(K),P=L(T),z=P.stream,Y=.01,B=-o(Y*I),X=p(Y*I);return P.lobes=function(ue){return arguments.length?L(T=+ue):T},P.stream=function(ue){var he=P.rotate(),le=z(ue),de=(P.rotate([0,0]),z(ue));return P.rotate(he),le.sphere=function(){de.polygonStart(),de.lineStart();for(var xe=0,qe=360/T,Fe=2*x/T,er=90-180/T,cr=_;xe0&&n(Y)>b);return z<0?NaN:P}function or(T,L,P){return L===void 0&&(L=40),P===void 0&&(P=C),function(z,Y,B,X){var ue,he,le;B=B===void 0?0:+B,X=X===void 0?0:+X;for(var de=0;deue){B-=he/=2,X-=le/=2;continue}ue=er;var cr=(B>0?-1:1)*P,Ar=(X>0?-1:1)*P,Xr=T(B+cr,X),at=T(B,X+Ar),ot=(Xr[0]-xe[0])/cr,st=(Xr[1]-xe[1])/cr,vt=(at[0]-xe[0])/Ar,ln=(at[1]-xe[1])/Ar,An=ln*ot-st*vt,zt=(n(An)<.5?.5:1)/An;if(he=(Fe*vt-qe*ln)*zt,le=(qe*st-Fe*ot)*zt,B+=he,X+=le,n(he)0&&(ue[1]*=1+he/1.5*ue[0]*ue[0]),ue}return z.invert=or(z),z}function nr(){return r.geoProjection(Ye()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function lr(T,L){var P=T*p(L),z=30,Y;do L-=Y=(L+p(L)-P)/(1+o(L));while(n(Y)>b&&--z>0);return L/2}function vr(T,L,P){function z(Y,B){return[T*Y*o(B=lr(P,B)),L*p(B)]}return z.invert=function(Y,B){return B=O(B/L),[Y/(T*o(B)),O((2*B+p(2*B))/P)]},z}var Je=vr(M/_,M,x);function dr(){return r.geoProjection(Je).scale(169.529)}var gr=2.00276,Te=1.11072;function Oe(T,L){var P=lr(x,L);return[gr*T/(1/o(L)+Te/o(P)),(L+M*p(P))/gr]}Oe.invert=function(T,L){var P=gr*L,z=L<0?-A:A,Y=25,B,X;do X=P-M*p(z),z-=B=(p(2*z)+2*z-x*p(X))/(2*o(2*z)+2+x*o(X)*M*o(z));while(n(B)>b&&--Y>0);return X=P-M*p(z),[T*(1/o(X)+Te/o(z))/gr,X]};function kr(){return r.geoProjection(Oe).scale(160.857)}function Ur(T){var L=0,P=r.geoProjectionMutator(T),z=P(L);return z.parallel=function(Y){return arguments.length?P(L=Y*I):L*F},z}function tr(T,L){return[T*o(L),L]}tr.invert=function(T,L){return[T/o(L),L]};function Ue(){return r.geoProjection(tr).scale(152.63)}function Ze(T){if(!T)return tr;var L=1/y(T);function P(z,Y){var B=L+T-Y,X=B&&z*o(Y)/B;return[B*p(X),L-B*o(X)]}return P.invert=function(z,Y){var B=V(z*z+(Y=L-Y)*Y),X=L+T-B;return[B/o(X)*i(z,Y),X]},P}function mr(){return Ur(Ze).scale(123.082).center([0,26.1441]).parallel(45)}function Tr(T){function L(P,z){var Y=_-z,B=Y&&P*T*p(Y)/Y;return[Y*p(B)/T,_-Y*o(B)]}return L.invert=function(P,z){var Y=P*T,B=_-z,X=V(Y*Y+B*B),ue=i(Y,B);return[(X?X/p(X):1)*ue/T,_-X]},L}function yr(){var T=.5,L=r.geoProjectionMutator(Tr),P=L(T);return P.fraction=function(z){return arguments.length?L(T=+z):T},P.scale(158.837)}var wr=vr(1,4/x,x);function Hr(){return r.geoProjection(wr).scale(152.63)}function Sr(T,L,P,z,Y,B){var X=o(B),ue;if(n(T)>1||n(B)>1)ue=Z(P*Y+L*z*X);else{var he=p(T/2),le=p(B/2);ue=2*O(V(he*he+L*z*le*le))}return n(ue)>b?[ue,i(z*p(B),L*Y-P*z*X)]:[0,0]}function Dr(T,L,P){return Z((T*T+L*L-P*P)/(2*T*L))}function ur(T){return T-2*x*s((T+x)/(2*x))}function _e(T,L,P){for(var z=[[T[0],T[1],p(T[1]),o(T[1])],[L[0],L[1],p(L[1]),o(L[1])],[P[0],P[1],p(P[1]),o(P[1])]],Y=z[2],B,X=0;X<3;++X,Y=B)B=z[X],Y.v=Sr(B[1]-Y[1],Y[3],Y[2],B[3],B[2],B[0]-Y[0]),Y.point=[0,0];var ue=Dr(z[0].v[0],z[2].v[0],z[1].v[0]),he=Dr(z[0].v[0],z[1].v[0],z[2].v[0]),le=x-ue;z[2].point[1]=0,z[0].point[0]=-(z[1].point[0]=z[0].v[0]/2);var de=[z[2].point[0]=z[0].point[0]+z[2].v[0]*o(ue),2*(z[0].point[1]=z[1].point[1]=z[2].v[0]*p(ue))];function xe(qe,Fe){var er=p(Fe),cr=o(Fe),Ar=new Array(3),Xr;for(Xr=0;Xr<3;++Xr){var at=z[Xr];if(Ar[Xr]=Sr(Fe-at[1],at[3],at[2],cr,er,qe-at[0]),!Ar[Xr][0])return at.point;Ar[Xr][1]=ur(Ar[Xr][1]-at.v[1])}var ot=de.slice();for(Xr=0;Xr<3;++Xr){var st=Xr==2?0:Xr+1,vt=Dr(z[Xr].v[0],Ar[Xr][0],Ar[st][0]);Ar[Xr][1]<0&&(vt=-vt),Xr?Xr==1?(vt=he-vt,ot[0]-=Ar[Xr][0]*o(vt),ot[1]-=Ar[Xr][0]*p(vt)):(vt=le-vt,ot[0]+=Ar[Xr][0]*o(vt),ot[1]+=Ar[Xr][0]*p(vt)):(ot[0]+=Ar[Xr][0]*o(vt),ot[1]-=Ar[Xr][0]*p(vt))}return ot[0]/=3,ot[1]/=3,ot}return xe}function Ae(T){return T[0]*=I,T[1]*=I,T}function Ke(){return rr([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function rr(T,L,P){var z=r.geoCentroid({type:"MultiPoint",coordinates:[T,L,P]}),Y=[-z[0],-z[1]],B=r.geoRotation(Y),X=_e(Ae(B(T)),Ae(B(L)),Ae(B(P)));X.invert=or(X);var ue=r.geoProjection(X).rotate(Y),he=ue.center;return delete ue.rotate,ue.center=function(le){return arguments.length?he(B(le)):B.invert(he())},ue.clipAngle(90)}function Lr(T,L){var P=V(1-p(L));return[2/E*T*P,E*(1-P)]}Lr.invert=function(T,L){var P=(P=L/E-1)*P;return[P>0?T*V(x/P)/2:0,O(1-P)]};function Yr(){return r.geoProjection(Lr).scale(95.6464).center([0,30])}function Fr(T){var L=y(T);function P(z,Y){return[z,(z?z/p(z):1)*(p(Y)*o(z)-L*o(Y))]}return P.invert=L?function(z,Y){z&&(Y*=p(z)/z);var B=o(z);return[z,2*i(V(B*B+L*L-Y*Y)-B,L-Y)]}:function(z,Y){return[z,O(z?Y*y(z)/z:Y)]},P}function lt(){return Ur(Fr).scale(249.828).clipAngle(90)}var xt=V(3);function Rt(T,L){return[xt*T*(2*o(2*L/3)-1)/E,xt*E*p(L/3)]}Rt.invert=function(T,L){var P=3*O(L/(xt*E));return[E*T/(xt*(2*o(2*P/3)-1)),P]};function Kt(){return r.geoProjection(Rt).scale(156.19)}function cn(T){var L=o(T);function P(z,Y){return[z*L,p(Y)/L]}return P.invert=function(z,Y){return[z/L,O(Y*L)]},P}function pn(){return Ur(cn).parallel(38.58).scale(195.044)}function Mn(T){var L=o(T);function P(z,Y){return[z*L,(1+L)*y(Y/2)]}return P.invert=function(z,Y){return[z/L,a(Y/(1+L))*2]},P}function Xt(){return Ur(Mn).scale(124.75)}function Qt(T,L){var P=V(8/(3*x));return[P*T*(1-n(L)/x),P*L]}Qt.invert=function(T,L){var P=V(8/(3*x)),z=L/P;return[T/(P*(1-n(z)/x)),z]};function en(){return r.geoProjection(Qt).scale(165.664)}function an(T,L){var P=V(4-3*p(n(L)));return[2/V(6*x)*T*P,m(L)*V(2*x/3)*(2-P)]}an.invert=function(T,L){var P=2-n(L)/V(2*x/3);return[T*V(6*x)/(2*P),m(L)*O((4-P*P)/3)]};function jr(){return r.geoProjection(an).scale(165.664)}function Ut(T,L){var P=V(x*(4+x));return[2/P*T*(1+V(1-4*L*L/(x*x))),4/P*L]}Ut.invert=function(T,L){var P=V(x*(4+x))/2;return[T*P/(1+V(1-L*L*(4+x)/(4*x))),L*P/2]};function Nt(){return r.geoProjection(Ut).scale(180.739)}function rn(T,L){var P=(2+_)*p(L);L/=2;for(var z=0,Y=1/0;z<10&&n(Y)>b;z++){var B=o(L);L-=Y=(L+p(L)*(B+2)-P)/(2*B*(1+B))}return[2/V(x*(4+x))*T*(1+o(L)),2*V(x/(4+x))*p(L)]}rn.invert=function(T,L){var P=L*V((4+x)/x)/2,z=O(P),Y=o(z);return[T/(2/V(x*(4+x))*(1+Y)),O((z+P*(Y+2))/(2+_))]};function Tn(){return r.geoProjection(rn).scale(180.739)}function vn(T,L){return[T*(1+o(L))/V(2+x),2*L/V(2+x)]}vn.invert=function(T,L){var P=V(2+x),z=L*P/2;return[P*T/(1+o(z)),z]};function Yt(){return r.geoProjection(vn).scale(173.044)}function Bn(T,L){for(var P=(1+_)*p(L),z=0,Y=1/0;z<10&&n(Y)>b;z++)L-=Y=(L+p(L)-P)/(1+o(L));return P=V(2+x),[T*(1+o(L))/P,2*L/P]}Bn.invert=function(T,L){var P=1+_,z=V(P/2);return[T*2*z/(1+o(L*=z)),O((L+p(L))/P)]};function Ga(){return r.geoProjection(Bn).scale(173.044)}var kn=3+2*M;function Va(T,L){var P=p(T/=2),z=o(T),Y=V(o(L)),B=o(L/=2),X=p(L)/(B+M*z*Y),ue=V(2/(1+X*X)),he=V((M*B+(z+P)*Y)/(M*B+(z-P)*Y));return[kn*(ue*(he-1/he)-2*u(he)),kn*(ue*X*(he+1/he)-2*a(X))]}Va.invert=function(T,L){if(!(B=Qe.invert(T/1.2,L*1.065)))return null;var P=B[0],z=B[1],Y=20,B;T/=kn,L/=kn;do{var X=P/2,ue=z/2,he=p(X),le=o(X),de=p(ue),xe=o(ue),qe=o(z),Fe=V(qe),er=de/(xe+M*le*Fe),cr=er*er,Ar=V(2/(1+cr)),Xr=M*xe+(le+he)*Fe,at=M*xe+(le-he)*Fe,ot=Xr/at,st=V(ot),vt=st-1/st,ln=st+1/st,An=Ar*vt-2*u(st)-T,zt=Ar*er*ln-2*a(er)-L,Fn=de&&k*Fe*he*cr/de,ga=(M*le*xe+Fe)/(2*(xe+M*le*Fe)*(xe+M*le*Fe)*Fe),fi=-.5*er*Ar*Ar*Ar,ol=fi*Fn,Us=fi*ga,Ca=(Ca=2*xe+M*Fe*(le-he))*Ca*st,La=(M*le*xe*Fe+qe)/Ca,Xi=-(M*he*de)/(Fe*Ca),ll=vt*ol-2*La/st+Ar*(La+La/ot),sl=vt*Us-2*Xi/st+Ar*(Xi+Xi/ot),ul=er*ln*ol-2*Fn/(1+cr)+Ar*ln*Fn+Ar*er*(La-La/ot),jl=er*ln*Us-2*ga/(1+cr)+Ar*ln*ga+Ar*er*(Xi-Xi/ot),go=sl*ul-jl*ll;if(!go)break;var Ys=(zt*sl-An*jl)/go,Vf=(An*ul-zt*ll)/go;P-=Ys,z=f(-_,v(_,z-Vf))}while((n(Ys)>b||n(Vf)>b)&&--Y>0);return n(n(z)-_)z){var xe=V(de),qe=i(le,he),Fe=P*d(qe/P),er=qe-Fe,cr=T*o(er),Ar=(T*p(er)-er*p(cr))/(_-cr),Xr=Un(er,Ar),at=(x-T)/yi(Xr,cr,x);he=xe;var ot=50,st;do he-=st=(T+yi(Xr,cr,he)*at-xe)/(Xr(he)*at);while(n(st)>b&&--ot>0);le=er*p(he),he<_&&(le-=Ar*(he-_));var vt=p(Fe),ln=o(Fe);ue[0]=he*ln-le*vt,ue[1]=he*vt+le*ln}return ue}return Y.invert=function(B,X){var ue=B*B+X*X;if(ue>z){var he=V(ue),le=i(X,B),de=P*d(le/P),xe=le-de;B=he*o(xe),X=he*p(xe);for(var qe=B-_,Fe=p(B),er=X/Fe,cr=B<_?1/0:0,Ar=10;;){var Xr=T*p(er),at=T*o(er),ot=p(at),st=_-at,vt=(Xr-er*ot)/st,ln=Un(er,vt);if(n(cr)b||n(er)>b)&&--cr>0);return[xe,qe]},he}var Qr=bi(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function St(){return r.geoProjection(Qr).scale(149.995)}var It=bi(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function Br(){return r.geoProjection(It).scale(153.93)}var Zn=bi(5/6*x,-.62636,-.0344,0,1.3493,-.05524,0,.045);function on(){return r.geoProjection(Zn).scale(130.945)}function Pn(T,L){var P=T*T,z=L*L;return[T*(1-.162388*z)*(.87-952426e-9*P*P),L*(1+z/12)]}Pn.invert=function(T,L){var P=T,z=L,Y=50,B;do{var X=z*z;z-=B=(z*(1+X/12)-L)/(1+X/4)}while(n(B)>b&&--Y>0);Y=50,T/=1-.162388*X;do{var ue=(ue=P*P)*ue;P-=B=(P*(.87-952426e-9*ue)-T)/(.87-.00476213*ue)}while(n(B)>b&&--Y>0);return[P,z]};function At(){return r.geoProjection(Pn).scale(131.747)}var Wa=bi(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Go(){return r.geoProjection(Wa).scale(131.087)}function xf(T){var L=T(_,0)[0]-T(-_,0)[0];function P(z,Y){var B=z>0?-.5:.5,X=T(z+B*x,Y);return X[0]-=B*L,X}return T.invert&&(P.invert=function(z,Y){var B=z>0?-.5:.5,X=T.invert(z+B*L,Y),ue=X[0]-B*x;return ue<-x?ue+=2*x:ue>x&&(ue-=2*x),X[0]=ue,X}),P}function cu(T,L){var P=m(T),z=m(L),Y=o(L),B=o(T)*Y,X=p(T)*Y,ue=p(z*L);T=n(i(X,ue)),L=O(B),n(T-_)>b&&(T%=_);var he=oo(T>x/4?_-T:T,L);return T>x/4&&(ue=he[0],he[0]=-he[1],he[1]=-ue),he[0]*=P,he[1]*=-z,he}cu.invert=function(T,L){n(T)>1&&(T=m(T)*2-T),n(L)>1&&(L=m(L)*2-L);var P=m(T),z=m(L),Y=-P*T,B=-z*L,X=B/Y<1,ue=Vo(X?B:Y,X?Y:B),he=ue[0],le=ue[1],de=o(le);return X&&(he=-_-he),[P*(i(p(he)*de,-p(le))+x),z*O(o(he)*de)]};function oo(T,L){if(L===_)return[0,0];var P=p(L),z=P*P,Y=z*z,B=1+Y,X=1+3*Y,ue=1-Y,he=O(1/V(B)),le=ue+z*B*he,de=(1-P)/le,xe=V(de),qe=de*B,Fe=V(qe),er=xe*ue,cr,Ar;if(T===0)return[0,-(er+z*Fe)];var Xr=o(L),at=1/Xr,ot=2*P*Xr,st=(-3*z+he*X)*ot,vt=(-le*Xr-(1-P)*st)/(le*le),ln=.5*vt/xe,An=ue*ln-2*z*xe*ot,zt=z*B*vt+de*X*ot,Fn=-at*ot,ga=-at*zt,fi=-2*at*An,ol=4*T/x,Us;if(T>.222*x||L.175*x){if(cr=(er+z*V(qe*(1+Y)-er*er))/(1+Y),T>x/4)return[cr,cr];var Ca=cr,La=.5*cr;cr=.5*(La+Ca),Ar=50;do{var Xi=V(qe-cr*cr),ll=cr*(fi+Fn*Xi)+ga*O(cr/Fe)-ol;if(!ll)break;ll<0?La=cr:Ca=cr,cr=.5*(La+Ca)}while(n(Ca-La)>b&&--Ar>0)}else{cr=b,Ar=25;do{var sl=cr*cr,ul=V(qe-sl),jl=fi+Fn*ul,go=cr*jl+ga*O(cr/Fe)-ol,Ys=jl+(ga-Fn*sl)/ul;cr-=Us=ul?go/Ys:0}while(n(Us)>b&&--Ar>0)}return[cr,-er-z*V(qe-cr*cr)]}function Vo(T,L){for(var P=0,z=1,Y=.5,B=50;;){var X=Y*Y,ue=V(Y),he=O(1/V(1+X)),le=1-X+Y*(1+X)*he,de=(1-ue)/le,xe=V(de),qe=de*(1+X),Fe=xe*(1-X),er=qe-T*T,cr=V(er),Ar=L+Fe+Y*cr;if(n(z-P)0?P=Y:z=Y,Y=.5*(P+z)}if(!B)return null;var Xr=O(ue),at=o(Xr),ot=1/at,st=2*ue*at,vt=(-3*Y+he*(1+3*X))*st,ln=(-le*at-(1-ue)*vt)/(le*le),An=.5*ln/xe,zt=(1-X)*An-2*Y*xe*st,Fn=-2*ot*zt,ga=-ot*st,fi=-ot*(Y*(1+X)*ln+de*(1+3*X)*st);return[x/4*(T*(Fn+ga*cr)+fi*O(T/V(qe))),Xr]}function Wo(){return r.geoProjection(xf(cu)).scale(239.75)}function vu(T,L,P){var z,Y,B;return T?(z=Rl(T,P),L?(Y=Rl(L,1-P),B=Y[1]*Y[1]+P*z[0]*z[0]*Y[0]*Y[0],[[z[0]*Y[2]/B,z[1]*z[2]*Y[0]*Y[1]/B],[z[1]*Y[1]/B,-z[0]*z[2]*Y[0]*Y[2]/B],[z[2]*Y[1]*Y[2]/B,-P*z[0]*z[1]*Y[0]/B]]):[[z[0],0],[z[1],0],[z[2],0]]):(Y=Rl(L,1-P),[[0,Y[0]/Y[1]],[1/Y[1],0],[Y[2]/Y[1],0]])}function Rl(T,L){var P,z,Y,B,X;if(L=1-b)return P=(1-L)/4,z=Q(T),B=re(T),Y=1/z,X=z*ie(T),[B+P*(X-T)/(z*z),Y-P*B*Y*(X-T),Y+P*B*Y*(X+T),2*a(l(T))-_+P*(X-T)/z];var ue=[1,0,0,0,0,0,0,0,0],he=[V(L),0,0,0,0,0,0,0,0],le=0;for(z=V(1-L),X=1;n(he[le]/ue[le])>b&&le<8;)P=ue[le++],he[le]=(P-z)/2,ue[le]=(P+z)/2,z=V(P*z),X*=2;Y=X*ue[le]*T;do B=he[le]*p(z=Y)/ue[le],Y=(O(B)+Y)/2;while(--le);return[p(Y),B=o(Y),B/o(Y-z),Y]}function zl(T,L,P){var z=n(T),Y=n(L),B=ie(Y);if(z){var X=1/p(z),ue=1/(y(z)*y(z)),he=-(ue+P*(B*B*X*X)-1+P),le=(P-1)*ue,de=(-he+V(he*he-4*le))/2;return[_i(a(1/V(de)),P)*m(T),_i(a(V((de/ue-1)/P)),1-P)*m(L)]}return[0,_i(a(B),1-P)*m(L)]}function _i(T,L){if(!L)return T;if(L===1)return u(y(T/2+A));for(var P=1,z=V(1-L),Y=V(L),B=0;n(Y)>b;B++){if(T%x){var X=a(z*y(T)/P);X<0&&(X+=x),T+=X+~~(T/x)*x}else T+=T;Y=(P+z)/2,z=V(P*z),Y=((P=Y)-z)/2}return T/(h(2,B)*P)}function lo(T,L){var P=(M-1)/(M+1),z=V(1-P*P),Y=_i(_,z*z),B=-1,X=u(y(x/4+n(L)/2)),ue=l(B*X)/V(P),he=Zo(ue*o(B*T),ue*p(B*T)),le=zl(he[0],he[1],z*z);return[-le[1],(L>=0?1:-1)*(.5*Y-le[0])]}function Zo(T,L){var P=T*T,z=L+1,Y=1-P-L*L;return[.5*((T>=0?_:-_)-i(Y,2*T)),-.25*u(Y*Y+4*P)+.5*u(z*z+P)]}function Nl(T,L){var P=L[0]*L[0]+L[1]*L[1];return[(T[0]*L[0]+T[1]*L[1])/P,(T[1]*L[0]-T[0]*L[1])/P]}lo.invert=function(T,L){var P=(M-1)/(M+1),z=V(1-P*P),Y=_i(_,z*z),B=-1,X=vu(.5*Y-L,-T,z*z),ue=Nl(X[0],X[1]),he=i(ue[1],ue[0])/B;return[he,2*a(l(.5/B*u(P*ue[0]*ue[0]+P*ue[1]*ue[1])))-_]};function bs(){return r.geoProjection(xf(lo)).scale(151.496)}function wf(T){var L=p(T),P=o(T),z=Xc(T);z.invert=Xc(-T);function Y(B,X){var ue=z(B,X);B=ue[0],X=ue[1];var he=p(X),le=o(X),de=o(B),xe=Z(L*he+P*le*de),qe=p(xe),Fe=n(qe)>b?xe/qe:1;return[Fe*P*p(B),(n(B)>_?Fe:-Fe)*(L*le-P*he*de)]}return Y.invert=function(B,X){var ue=V(B*B+X*X),he=-p(ue),le=o(ue),de=ue*le,xe=-X*he,qe=ue*L,Fe=V(de*de+xe*xe-qe*qe),er=i(de*qe+xe*Fe,xe*qe-de*Fe),cr=(ue>_?-1:1)*i(B*he,ue*o(er)*le+X*p(er)*he);return z.invert(cr,er)},Y}function Xc(T){var L=p(T),P=o(T);return function(z,Y){var B=o(Y),X=o(z)*B,ue=p(z)*B,he=p(Y);return[i(ue,X*P-he*L),O(he*P+X*L)]}}function _s(){var T=0,L=r.geoProjectionMutator(wf),P=L(T),z=P.rotate,Y=P.stream,B=r.geoCircle();return P.parallel=function(X){if(!arguments.length)return T*F;var ue=P.rotate();return L(T=X*I).rotate(ue)},P.rotate=function(X){return arguments.length?(z.call(P,[X[0],X[1]-T*F]),B.center([-X[0],-X[1]]),P):(X=z.call(P),X[1]+=T*F,X)},P.stream=function(X){return X=Y(X),X.sphere=function(){X.polygonStart();var ue=.01,he=B.radius(90-ue)().coordinates[0],le=he.length-1,de=-1,xe;for(X.lineStart();++de=0;)X.point((xe=he[de])[0],xe[1]);X.lineEnd(),X.polygonEnd()},X},P.scale(79.4187).parallel(45).clipAngle(180-.001)}var xs=3,ws=O(1-1/xs)*F,Xo=cn(0);function so(T){var L=ws*I,P=Lr(x,L)[0]-Lr(-x,L)[0],z=Xo(0,L)[1],Y=Lr(0,L)[1],B=E-Y,X=R/T,ue=4/R,he=z+B*B*4/R;function le(de,xe){var qe,Fe=n(xe);if(Fe>L){var er=v(T-1,f(0,s((de+x)/X)));de+=x*(T-1)/T-er*X,qe=Lr(de,Fe),qe[0]=qe[0]*R/P-R*(T-1)/(2*T)+er*R/T,qe[1]=z+(qe[1]-Y)*4*B/R,xe<0&&(qe[1]=-qe[1])}else qe=Xo(de,xe);return qe[0]*=ue,qe[1]/=he,qe}return le.invert=function(de,xe){de/=ue,xe*=he;var qe=n(xe);if(qe>z){var Fe=v(T-1,f(0,s((de+x)/X)));de=(de+x*(T-1)/T-Fe*X)*P/R;var er=Lr.invert(de,.25*(qe-z)*R/B+Y);return er[0]-=x*(T-1)/T-Fe*X,xe<0&&(er[1]=-er[1]),er}return Xo.invert(de,xe)},le}function uo(T,L){return[T,L&1?90-b:ws]}function Bi(T,L){return[T,L&1?-90+b:-ws]}function Mf(T){return[T[0]*(1-b),T[1]]}function hu(T){var L=[].concat(t.range(-180,180+T/2,T).map(uo),t.range(180,-180-T/2,-T).map(Bi));return{type:"Polygon",coordinates:[T===180?L.map(Mf):L]}}function Fl(){var T=4,L=r.geoProjectionMutator(so),P=L(T),z=P.stream;return P.lobes=function(Y){return arguments.length?L(T=+Y):T},P.stream=function(Y){var B=P.rotate(),X=z(Y),ue=(P.rotate([0,0]),z(Y));return P.rotate(B),X.sphere=function(){r.geoStream(hu(180/T),ue)},X},P.scale(239.75)}function Af(T){var L=1+T,P=p(1/L),z=O(P),Y=2*V(x/(B=x+4*z*L)),B,X=.5*Y*(L+V(T*(2+T))),ue=T*T,he=L*L;function le(de,xe){var qe=1-p(xe),Fe,er;if(qe&&qe<2){var cr=_-xe,Ar=25,Xr;do{var at=p(cr),ot=o(cr),st=z+i(at,L-ot),vt=1+he-2*L*ot;cr-=Xr=(cr-ue*z-L*at+vt*st-.5*qe*B)/(2*L*at*st)}while(n(Xr)>C&&--Ar>0);Fe=Y*V(vt),er=de*st/x}else Fe=Y*(T+qe),er=de*z/x;return[Fe*p(er),X-Fe*o(er)]}return le.invert=function(de,xe){var qe=de*de+(xe-=X)*xe,Fe=(1+he-qe/(Y*Y))/(2*L),er=Z(Fe),cr=p(er),Ar=z+i(cr,L-Fe);return[O(de/V(qe))*x/Ar,O(1-2*(er-ue*z-L*cr+(1+he-2*L*Fe)*Ar)/B)]},le}function jc(){var T=1,L=r.geoProjectionMutator(Af),P=L(T);return P.ratio=function(z){return arguments.length?L(T=+z):T},P.scale(167.774).center([0,18.67])}var Ms=.7109889596207567,Oi=.0528035274542;function As(T,L){return L>-Ms?(T=Je(T,L),T[1]+=Oi,T):tr(T,L)}As.invert=function(T,L){return L>-Ms?Je.invert(T,L-Oi):tr.invert(T,L)};function Jc(){return r.geoProjection(As).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function Ts(T,L){return n(L)>Ms?(T=Je(T,L),T[1]-=L>0?Oi:-Oi,T):tr(T,L)}Ts.invert=function(T,L){return n(L)>Ms?Je.invert(T,L+(L>0?Oi:-Oi)):tr.invert(T,L)};function Bv(){return r.geoProjection(Ts).scale(152.63)}function jo(T,L,P,z){var Y=V(4*x/(2*P+(1+T-L/2)*p(2*P)+(T+L)/2*p(4*P)+L/2*p(6*P))),B=V(z*p(P)*V((1+T*o(2*P)+L*o(4*P))/(1+T+L))),X=P*he(1);function ue(xe){return V(1+T*o(2*xe)+L*o(4*xe))}function he(xe){var qe=xe*P;return(2*qe+(1+T-L/2)*p(2*qe)+(T+L)/2*p(4*qe)+L/2*p(6*qe))/P}function le(xe){return ue(xe)*p(xe)}var de=function(xe,qe){var Fe=P*ir(he,X*p(qe)/P,qe/x);isNaN(Fe)&&(Fe=P*m(qe));var er=Y*ue(Fe);return[er*B*xe/x*o(Fe),er/B*p(Fe)]};return de.invert=function(xe,qe){var Fe=ir(le,qe*B/Y);return[xe*x/(o(Fe)*Y*B*ue(Fe)),O(P*he(Fe/P)/X)]},P===0&&(Y=V(z/x),de=function(xe,qe){return[xe*Y,p(qe)/Y]},de.invert=function(xe,qe){return[xe/Y,O(qe*Y)]}),de}function Tf(){var T=1,L=0,P=45*I,z=2,Y=r.geoProjectionMutator(jo),B=Y(T,L,P,z);return B.a=function(X){return arguments.length?Y(T=+X,L,P,z):T},B.b=function(X){return arguments.length?Y(T,L=+X,P,z):L},B.psiMax=function(X){return arguments.length?Y(T,L,P=+X*I,z):P*F},B.ratio=function(X){return arguments.length?Y(T,L,P,z=+X):z},B.scale(180.739)}function Il(T,L,P,z,Y,B,X,ue,he,le,de){if(de.nanEncountered)return NaN;var xe,qe,Fe,er,cr,Ar,Xr,at,ot,st;if(xe=P-L,qe=T(L+xe*.25),Fe=T(P-xe*.25),isNaN(qe)){de.nanEncountered=!0;return}if(isNaN(Fe)){de.nanEncountered=!0;return}return er=xe*(z+4*qe+Y)/12,cr=xe*(Y+4*Fe+B)/12,Ar=er+cr,st=(Ar-X)/15,le>he?(de.maxDepthCount++,Ar+st):Math.abs(st)>1;do he[Ar]>Fe?cr=Ar:er=Ar,Ar=er+cr>>1;while(Ar>er);var Xr=he[Ar+1]-he[Ar];return Xr&&(Xr=(Fe-he[Ar+1])/Xr),(Ar+1+Xr)/X}var xe=2*de(1)/x*B/P,qe=function(Fe,er){var cr=de(n(p(er))),Ar=z(cr)*Fe;return cr/=xe,[Ar,er>=0?cr:-cr]};return qe.invert=function(Fe,er){var cr;return er*=xe,n(er)<1&&(cr=m(er)*O(Y(n(er))*B)),[Fe/z(n(er)),cr]},qe}function co(){var T=0,L=2.5,P=1.183136,z=r.geoProjectionMutator(fo),Y=z(T,L,P);return Y.alpha=function(B){return arguments.length?z(T=+B,L,P):T},Y.k=function(B){return arguments.length?z(T,L=+B,P):L},Y.gamma=function(B){return arguments.length?z(T,L,P=+B):P},Y.scale(152.63)}function kf(T,L){return n(T[0]-L[0])=0;--he)P=T[1][he],z=P[0][0],Y=P[0][1],B=P[1][1],X=P[2][0],ue=P[2][1],L.push(xi([[X-b,ue-b],[X-b,B+b],[z+b,B+b],[z+b,Y-b]],30));return{type:"Polygon",coordinates:[t.merge(L)]}}function Ui(T,L,P){var z,Y;function B(he,le){for(var de=le<0?-1:1,xe=L[+(le<0)],qe=0,Fe=xe.length-1;qexe[qe][2][0];++qe);var er=T(he-xe[qe][1][0],le);return er[0]+=T(xe[qe][1][0],de*le>de*xe[qe][0][1]?xe[qe][0][1]:le)[0],er}P?B.invert=P(B):T.invert&&(B.invert=function(he,le){for(var de=Y[+(le<0)],xe=L[+(le<0)],qe=0,Fe=de.length;qeer&&(cr=Fe,Fe=er,er=cr),[[xe,Fe],[qe,er]]})}),X):L.map(function(le){return le.map(function(de){return[[de[0][0]*F,de[0][1]*F],[de[1][0]*F,de[1][1]*F],[de[2][0]*F,de[2][1]*F]]})})},L!=null&&X.lobes(L),X}var Hl=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Uv(){return Ui(Oe,Hl).scale(160.857)}var Yi=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Jo(){return Ui(Ts,Yi).scale(152.63)}var $o=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Ko(){return Ui(Je,$o).scale(169.529)}var vo=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function ks(){return Ui(Je,vo).scale(169.529).rotate([20,0])}var du=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function Ss(){return Ui(As,du,or).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var Cs=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function Qo(){return Ui(tr,Cs).scale(152.63).rotate([-20,0])}function Bl(T,L){return[3/R*T*V(x*x/3-L*L),L]}Bl.invert=function(T,L){return[R/3*T/V(x*x/3-L*L),L]};function Ol(){return r.geoProjection(Bl).scale(158.837)}function pu(T){function L(P,z){if(n(n(z)-_)2)return null;P/=2,z/=2;var B=P*P,X=z*z,ue=2*z/(1+B+X);return ue=h((1+ue)/(1-ue),1/T),[i(2*P,1-B-X)/T,O((ue-1)/(ue+1))]},L}function gu(){var T=.5,L=r.geoProjectionMutator(pu),P=L(T);return P.spacing=function(z){return arguments.length?L(T=+z):T},P.scale(124.75)}var li=x/M;function mu(T,L){return[T*(1+V(o(L)))/2,L/(o(L/2)*o(T/6))]}mu.invert=function(T,L){var P=n(T),z=n(L),Y=b,B=_;zb||n(Ar)>b)&&--Y>0);return Y&&[P,z]};function ea(){return r.geoProjection(za).scale(139.98)}function Ma(T,L){return[p(T)/o(L),y(L)*o(T)]}Ma.invert=function(T,L){var P=T*T,z=L*L,Y=z+1,B=P+Y,X=T?k*V((B-V(B*B-4*P))/P):1/V(Y);return[O(T*X),m(L)*Z(X)]};function Gi(){return r.geoProjection(Ma).scale(144.049).clipAngle(90-.001)}function Ls(T){var L=o(T),P=y(A+T/2);function z(Y,B){var X=B-T,ue=n(X)=0;)de=T[le],xe=de[0]+ue*(Fe=xe)-he*qe,qe=de[1]+ue*qe+he*Fe;return xe=ue*(Fe=xe)-he*qe,qe=ue*qe+he*Fe,[xe,qe]}return P.invert=function(z,Y){var B=20,X=z,ue=Y;do{for(var he=L,le=T[he],de=le[0],xe=le[1],qe=0,Fe=0,er;--he>=0;)le=T[he],qe=de+X*(er=qe)-ue*Fe,Fe=xe+X*Fe+ue*er,de=le[0]+X*(er=de)-ue*xe,xe=le[1]+X*xe+ue*er;qe=de+X*(er=qe)-ue*Fe,Fe=xe+X*Fe+ue*er,de=X*(er=de)-ue*xe-z,xe=X*xe+ue*er-Y;var cr=qe*qe+Fe*Fe,Ar,Xr;X-=Ar=(de*qe+xe*Fe)/cr,ue-=Xr=(xe*qe-de*Fe)/cr}while(n(Ar)+n(Xr)>b*b&&--B>0);if(B){var at=V(X*X+ue*ue),ot=2*a(at*.5),st=p(ot);return[i(X*st,at*o(ot)),at?O(ue*st/at):0]}},P}var Yv=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],Gv=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Cf=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Lf=[[.9245,0],[0,0],[.01943,0]],qf=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Df(){return wi(Yv,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function Qc(){return wi(Gv,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function e0(){return wi(Cf,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function qs(){return wi(Lf,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function Ds(){return wi(qf,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function wi(T,L){var P=r.geoProjection(Kc(T)).rotate(L).clipAngle(90),z=r.geoRotation(L),Y=P.center;return delete P.rotate,P.center=function(B){return arguments.length?Y(z(B)):z.invert(Y())},P}var bu=V(6),Es=V(7);function _u(T,L){var P=O(7*p(L)/(3*bu));return[bu*T*(2*o(2*P/3)-1)/Es,9*p(P/3)/Es]}_u.invert=function(T,L){var P=3*O(L*Es/9);return[T*Es/(bu*(2*o(2*P/3)-1)),O(p(P)*3*bu/7)]};function r0(){return r.geoProjection(_u).scale(164.859)}function Ef(T,L){for(var P=(1+k)*p(L),z=L,Y=0,B;Y<25&&(z-=B=(p(z/2)+p(z)-P)/(.5*o(z/2)+o(z)),!(n(B)C&&--z>0);return B=P*P,X=B*B,ue=B*X,[T/(.84719-.13063*B+ue*ue*(-.04515+.05494*B-.02326*X+.00331*ue)),P]};function Ps(){return r.geoProjection(Yl).scale(175.295)}function Rs(T,L){return[T*(1+o(L))/2,2*(L-y(L/2))]}Rs.invert=function(T,L){for(var P=L/2,z=0,Y=1/0;z<10&&n(Y)>b;++z){var B=o(L/2);L-=Y=(L-y(L/2)-P)/(1-.5/(B*B))}return[2*T/(1+o(L)),L]};function Pf(){return r.geoProjection(Rs).scale(152.63)}var po=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function t0(){return Ui(ke(1/0),po).rotate([20,0]).scale(152.63)}function Rf(T,L){var P=p(L),z=o(L),Y=m(T);if(T===0||n(L)===_)return[0,L];if(L===0)return[T,0];if(n(T)===_)return[T*z,_*P];var B=x/(2*T)-2*T/x,X=2*L/x,ue=(1-X*X)/(P-X),he=B*B,le=ue*ue,de=1+he/le,xe=1+le/he,qe=(B*P/ue-B/2)/de,Fe=(le*P/he+ue/2)/xe,er=qe*qe+z*z/de,cr=Fe*Fe-(le*P*P/he+ue*P-1)/xe;return[_*(qe+V(er)*Y),_*(Fe+V(cr<0?0:cr)*m(-L*B)*Y)]}Rf.invert=function(T,L){T/=_,L/=_;var P=T*T,z=L*L,Y=P+z,B=x*x;return[T?(Y-1+V((1-Y)*(1-Y)+4*P))/(2*T)*_:0,ir(function(X){return Y*(x*p(X)-2*X)*x+4*X*X*(L-p(X))+2*x*X-B*L},0)]};function n0(){return r.geoProjection(Rf).scale(127.267)}var zf=1.0148,wu=.23185,Nf=-.14499,Ff=.02406,Wv=zf,If=5*wu,Mi=7*Nf,Hf=9*Ff,Gl=1.790857183;function Bf(T,L){var P=L*L;return[T,L*(zf+P*P*(wu+P*(Nf+Ff*P)))]}Bf.invert=function(T,L){L>Gl?L=Gl:L<-Gl&&(L=-Gl);var P=L,z;do{var Y=P*P;P-=z=(P*(zf+Y*Y*(wu+Y*(Nf+Ff*Y)))-L)/(Wv+Y*Y*(If+Y*(Mi+Hf*Y)))}while(n(z)>b);return[T,P]};function a0(){return r.geoProjection(Bf).scale(139.319)}function rl(T,L){if(n(L)b&&--Y>0);return X=y(z),[(n(L)=0;)if(z=L[ue],P[0]===z[0]&&P[1]===z[1]){if(B)return[B,P];B=P}}}function s0(T){for(var L=T.length,P=[],z=T[L-1],Y=0;Y0?[-z[0],0]:[180-z[0],180])};var L=Mu.map(function(P){return{face:P,project:T(P)}});return[-1,0,0,1,0,1,4,5].forEach(function(P,z){var Y=L[P];Y&&(Y.children||(Y.children=[])).push(L[z])}),Vl(L[0],function(P,z){return L[P<-x/2?z<0?6:4:P<0?z<0?2:0:Pz^Fe>z&&P<(qe-le)*(z-de)/(Fe-de)+le&&(Y=!Y)}return Y}function ku(T,L){var P=L.stream,z;if(!P)throw new Error("invalid projection");switch(T&&T.type){case"Feature":z=v0;break;case"FeatureCollection":z=c0;break;default:z=Su;break}return z(T,P)}function c0(T,L){return{type:"FeatureCollection",features:T.features.map(function(P){return v0(P,L)})}}function v0(T,L){return{type:"Feature",id:T.id,properties:T.properties,geometry:Su(T.geometry,L)}}function Of(T,L){return{type:"GeometryCollection",geometries:T.geometries.map(function(P){return Su(P,L)})}}function Su(T,L){if(!T)return null;if(T.type==="GeometryCollection")return Of(T,L);var P;switch(T.type){case"Point":P=Zl;break;case"MultiPoint":P=Zl;break;case"LineString":P=Cu;break;case"MultiLineString":P=Cu;break;case"Polygon":P=Os;break;case"MultiPolygon":P=Os;break;case"Sphere":P=Os;break;default:return null}return r.geoStream(T,L(P)),P.result()}var Xn=[],si=[],Zl={point:function(T,L){Xn.push([T,L])},result:function(){var T=Xn.length?Xn.length<2?{type:"Point",coordinates:Xn[0]}:{type:"MultiPoint",coordinates:Xn}:null;return Xn=[],T}},Cu={lineStart:Tu,point:function(T,L){Xn.push([T,L])},lineEnd:function(){Xn.length&&(si.push(Xn),Xn=[])},result:function(){var T=si.length?si.length<2?{type:"LineString",coordinates:si[0]}:{type:"MultiLineString",coordinates:si}:null;return si=[],T}},Os={polygonStart:Tu,lineStart:Tu,point:function(T,L){Xn.push([T,L])},lineEnd:function(){var T=Xn.length;if(T){do Xn.push(Xn[0].slice());while(++T<4);si.push(Xn),Xn=[]}},polygonEnd:Tu,result:function(){if(!si.length)return null;var T=[],L=[];return si.forEach(function(P){Bs(P)?T.push([P]):L.push(P)}),L.forEach(function(P){var z=P[0];T.some(function(Y){if(f0(Y[0],z))return Y.push(P),!0})||T.push([P])}),si=[],T.length?T.length>1?{type:"MultiPolygon",coordinates:T}:{type:"Polygon",coordinates:T[0]}:null}};function Uf(T){var L=T(_,0)[0]-T(-_,0)[0];function P(z,Y){var B=n(z)<_,X=T(B?z:z>0?z-x:z+x,Y),ue=(X[0]-X[1])*k,he=(X[0]+X[1])*k;if(B)return[ue,he];var le=L*k,de=ue>0^he>0?-1:1;return[de*ue-m(he)*le,de*he-m(ue)*le]}return T.invert&&(P.invert=function(z,Y){var B=(z+Y)*k,X=(Y-z)*k,ue=n(B)<.5*L&&n(X)<.5*L;if(!ue){var he=L*k,le=B>0^X>0?-1:1,de=-le*z+(X>0?1:-1)*he,xe=-le*Y+(B>0?1:-1)*he;B=(-de-xe)*k,X=(de-xe)*k}var qe=T.invert(B,X);return ue||(qe[0]+=B>0?x:-x),qe}),r.geoProjection(P).rotate([-90,-90,45]).clipAngle(180-.001)}function H(){return Uf(cu).scale(176.423)}function J(){return Uf(lo).scale(111.48)}function ce(T,L){if(!(0<=(L=+L)&&L<=20))throw new Error("invalid digits");function P(le){var de=le.length,xe=2,qe=new Array(de);for(qe[0]=+le[0].toFixed(L),qe[1]=+le[1].toFixed(L);xe2||Fe[0]!=de[0]||Fe[1]!=de[1])&&(xe.push(Fe),de=Fe)}return xe.length===1&&le.length>1&&xe.push(P(le[le.length-1])),xe}function B(le){return le.map(Y)}function X(le){if(le==null)return le;var de;switch(le.type){case"GeometryCollection":de={type:"GeometryCollection",geometries:le.geometries.map(X)};break;case"Point":de={type:"Point",coordinates:P(le.coordinates)};break;case"MultiPoint":de={type:le.type,coordinates:z(le.coordinates)};break;case"LineString":de={type:le.type,coordinates:Y(le.coordinates)};break;case"MultiLineString":case"Polygon":de={type:le.type,coordinates:B(le.coordinates)};break;case"MultiPolygon":de={type:"MultiPolygon",coordinates:le.coordinates.map(B)};break;default:return le}return le.bbox!=null&&(de.bbox=le.bbox),de}function ue(le){var de={type:"Feature",properties:le.properties,geometry:X(le.geometry)};return le.id!=null&&(de.id=le.id),le.bbox!=null&&(de.bbox=le.bbox),de}if(T!=null)switch(T.type){case"Feature":return ue(T);case"FeatureCollection":{var he={type:"FeatureCollection",features:T.features.map(ue)};return T.bbox!=null&&(he.bbox=T.bbox),he}default:return X(T)}return T}function oe(T){var L=p(T);function P(z,Y){var B=L?y(z*L/2)/L:z/2;if(!Y)return[2*B,-T];var X=2*a(B*p(Y)),ue=1/y(Y);return[p(X)*ue,Y+(1-o(X))*ue-T]}return P.invert=function(z,Y){if(n(Y+=T)b&&--ue>0);var qe=z*(le=y(X)),Fe=y(n(Y)0?_:-_)*(he+Y*(de-X)/2+Y*Y*(de-2*he+X)/2)]}je.invert=function(T,L){var P=L/_,z=P*90,Y=v(18,n(z/5)),B=f(0,s(Y));do{var X=He[B][1],ue=He[B+1][1],he=He[v(19,B+2)][1],le=he-X,de=he-2*ue+X,xe=2*(n(P)-ue)/le,qe=de/le,Fe=xe*(1-qe*xe*(1-2*qe*xe));if(Fe>=0||B===1){z=(L>=0?5:-5)*(Fe+Y);var er=50,cr;do Y=v(18,n(z)/5),B=s(Y),Fe=Y-B,X=He[B][1],ue=He[B+1][1],he=He[v(19,B+2)][1],z-=(cr=(L>=0?_:-_)*(ue+Fe*(he-X)/2+Fe*Fe*(he-2*ue+X)/2)-L)*F;while(n(cr)>C&&--er>0);break}}while(--B>=0);var Ar=He[B][0],Xr=He[B+1][0],at=He[v(19,B+2)][0];return[T/(Xr+Fe*(at-Ar)/2+Fe*Fe*(at-2*Xr+Ar)/2),z*I]};function ar(){return r.geoProjection(je).scale(152.63)}function sr(T){function L(P,z){var Y=o(z),B=(T-1)/(T-Y*o(P));return[B*Y*p(P),B*p(z)]}return L.invert=function(P,z){var Y=P*P+z*z,B=V(Y),X=(T-V(1-Y*(T+1)/(T-1)))/((T-1)/B+B/(T-1));return[i(P*X,B*V(1-X*X)),B?O(z*X/B):0]},L}function br(T,L){var P=sr(T);if(!L)return P;var z=o(L),Y=p(L);function B(X,ue){var he=P(X,ue),le=he[1],de=le*Y/(T-1)+z;return[he[0]*z/de,le/de]}return B.invert=function(X,ue){var he=(T-1)/(T-1-ue*Y);return P.invert(he*X,he*ue*z)},B}function $e(){var T=2,L=0,P=r.geoProjectionMutator(br),z=P(T,L);return z.distance=function(Y){return arguments.length?P(T=+Y,L):T},z.tilt=function(Y){return arguments.length?P(T,L=Y*I):L*F},z.scale(432.147).clipAngle(Z(1/T)*F-1e-6)}var hr=1e-4,fr=1e4,Mr=-180,qr=Mr+hr,rt=180,Jr=rt-hr,tt=-90,nt=tt+hr,Er=90,Ir=Er-hr;function it(T){return T.length>0}function pt(T){return Math.floor(T*fr)/fr}function Gt(T){return T===tt||T===Er?[0,T]:[Mr,pt(T)]}function tn(T){var L=T[0],P=T[1],z=!1;return L<=qr?(L=Mr,z=!0):L>=Jr&&(L=rt,z=!0),P<=nt?(P=tt,z=!0):P>=Ir&&(P=Er,z=!0),z?[L,P]:T}function Wt(T){return T.map(tn)}function mn(T,L,P){for(var z=0,Y=T.length;z=Jr||de<=nt||de>=Ir){B[X]=tn(he);for(var xe=X+1;xeqr&&Fent&&er=ue)break;P.push({index:-1,polygon:L,ring:B=B.slice(xe-1)}),B[0]=Gt(B[0][1]),X=-1,ue=B.length}}}}function Ct(T){var L,P=T.length,z={},Y={},B,X,ue,he,le;for(L=0;L0?x-ue:ue)*F],le=r.geoProjection(T(X)).rotate(he),de=r.geoRotation(he),xe=le.center;return delete le.rotate,le.center=function(qe){return arguments.length?xe(de(qe)):de.invert(xe())},le.clipAngle(90)}function pa(T){var L=o(T);function P(z,Y){var B=r.geoGnomonicRaw(z,Y);return B[0]*=L,B}return P.invert=function(z,Y){return r.geoGnomonicRaw.invert(z/L,Y)},P}function Xa(){return Wi([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Wi(T,L){return Yn(pa,T,L)}function Ti(T){if(!(T*=2))return r.geoAzimuthalEquidistantRaw;var L=-T/2,P=-L,z=T*T,Y=y(P),B=.5/p(P);function X(ue,he){var le=Z(o(he)*o(ue-L)),de=Z(o(he)*o(ue-P)),xe=he<0?-1:1;return le*=le,de*=de,[(le-de)/(2*T),xe*V(4*z*de-(z-le+de)*(z-le+de))/(2*T)]}return X.invert=function(ue,he){var le=he*he,de=o(V(le+(qe=ue+L)*qe)),xe=o(V(le+(qe=ue+P)*qe)),qe,Fe;return[i(Fe=de-xe,qe=(de+xe)*Y),(he<0?-1:1)*Z(V(qe*qe+Fe*Fe)*B)]},X}function al(){return ui([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function ui(T,L){return Yn(Ti,T,L)}function il(T,L){if(n(L)b&&--ue>0);return[m(T)*(V(Y*Y+4)+Y)*x/4,_*X]};function Zi(){return r.geoProjection(Yf).scale(127.16)}function jh(T,L,P,z,Y){function B(X,ue){var he=P*p(z*ue),le=V(1-he*he),de=V(2/(1+le*o(X*=Y)));return[T*le*de*p(X),L*he*de]}return B.invert=function(X,ue){var he=X/T,le=ue/L,de=V(he*he+le*le),xe=2*O(de/2);return[i(X*y(xe),T*de)/Y,de&&O(ue*p(xe)/(L*P*de))/z]},B}function Jh(T,L,P,z){var Y=x/3;T=f(T,b),L=f(L,b),T=v(T,_),L=v(L,x-b),P=f(P,0),P=v(P,100-b),z=f(z,b);var B=P/100+1,X=z/100,ue=Z(B*o(Y))/Y,he=p(T)/p(ue*_),le=L/x,de=V(X*p(T/2)/p(L/2)),xe=de/V(le*he*ue),qe=1/(de*V(le*he*ue));return jh(xe,qe,he,ue,le)}function p0(){var T=65*I,L=60*I,P=20,z=200,Y=r.geoProjectionMutator(Jh),B=Y(T,L,P,z);return B.poleline=function(X){return arguments.length?Y(T=+X*I,L,P,z):T*F},B.parallels=function(X){return arguments.length?Y(T,L=+X*I,P,z):L*F},B.inflation=function(X){return arguments.length?Y(T,L,P=+X,z):P},B.ratio=function(X){return arguments.length?Y(T,L,P,z=+X):z},B.scale(163.775)}function $v(){return p0().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var $h=4*x+3*V(3),Kh=2*V(2*x*V(3)/$h),Qh=vr(Kh*V(3)/x,Kh,$h/6);function g0(){return r.geoProjection(Qh).scale(176.84)}function Gf(T,L){return[T*V(1-3*L*L/(x*x)),L]}Gf.invert=function(T,L){return[T/V(1-3*L*L/(x*x)),L]};function ed(){return r.geoProjection(Gf).scale(152.63)}function Kv(T,L){var P=o(L),z=o(T)*P,Y=1-z,B=o(T=i(p(T)*P,-p(L))),X=p(T);return P=V(1-z*z),[X*P-B*Y,-B*P-X*Y]}Kv.invert=function(T,L){var P=(T*T+L*L)/-2,z=V(-P*(2+P)),Y=L*P+T*z,B=T*P-L*z,X=V(B*B+Y*Y);return[i(z*Y,X*(1+P)),X?-O(z*B/X):0]};function Ty(){return r.geoProjection(Kv).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function Qv(T,L){var P=Ie(T,L);return[(P[0]+T/_)/2,(P[1]+L)/2]}Qv.invert=function(T,L){var P=T,z=L,Y=25;do{var B=o(z),X=p(z),ue=p(2*z),he=X*X,le=B*B,de=p(P),xe=o(P/2),qe=p(P/2),Fe=qe*qe,er=1-le*xe*xe,cr=er?Z(B*xe)*V(Ar=1/er):Ar=0,Ar,Xr=.5*(2*cr*B*qe+P/_)-T,at=.5*(cr*X+z)-L,ot=.5*Ar*(le*Fe+cr*B*xe*he)+.5/_,st=Ar*(de*ue/4-cr*X*qe),vt=.125*Ar*(ue*qe-cr*X*le*de),ln=.5*Ar*(he*xe+cr*Fe*B)+.5,An=st*vt-ln*ot,zt=(at*st-Xr*ln)/An,Fn=(Xr*vt-at*ot)/An;P-=zt,z-=Fn}while((n(zt)>b||n(Fn)>b)&&--Y>0);return[P,z]};function ki(){return r.geoProjection(Qv).scale(158.837)}e.geoNaturalEarth=r.geoNaturalEarth1,e.geoNaturalEarthRaw=r.geoNaturalEarth1Raw,e.geoAiry=Ce,e.geoAiryRaw=ve,e.geoAitoff=ze,e.geoAitoffRaw=Ie,e.geoArmadillo=Le,e.geoArmadilloRaw=Xe,e.geoAugust=fe,e.geoAugustRaw=Qe,e.geoBaker=U,e.geoBakerRaw=pe,e.geoBerghaus=$,e.geoBerghausRaw=K,e.geoBertin1953=nr,e.geoBertin1953Raw=Ye,e.geoBoggs=kr,e.geoBoggsRaw=Oe,e.geoBonne=mr,e.geoBonneRaw=Ze,e.geoBottomley=yr,e.geoBottomleyRaw=Tr,e.geoBromley=Hr,e.geoBromleyRaw=wr,e.geoChamberlin=rr,e.geoChamberlinRaw=_e,e.geoChamberlinAfrica=Ke,e.geoCollignon=Yr,e.geoCollignonRaw=Lr,e.geoCraig=lt,e.geoCraigRaw=Fr,e.geoCraster=Kt,e.geoCrasterRaw=Rt,e.geoCylindricalEqualArea=pn,e.geoCylindricalEqualAreaRaw=cn,e.geoCylindricalStereographic=Xt,e.geoCylindricalStereographicRaw=Mn,e.geoEckert1=en,e.geoEckert1Raw=Qt,e.geoEckert2=jr,e.geoEckert2Raw=an,e.geoEckert3=Nt,e.geoEckert3Raw=Ut,e.geoEckert4=Tn,e.geoEckert4Raw=rn,e.geoEckert5=Yt,e.geoEckert5Raw=vn,e.geoEckert6=Ga,e.geoEckert6Raw=Bn,e.geoEisenlohr=ia,e.geoEisenlohrRaw=Va,e.geoFahey=On,e.geoFaheyRaw=dn,e.geoFoucaut=io,e.geoFoucautRaw=gi,e.geoFoucautSinusoidal=ms,e.geoFoucautSinusoidalRaw=mi,e.geoGilbert=ys,e.geoGingery=Yo,e.geoGingeryRaw=Uo,e.geoGinzburg4=St,e.geoGinzburg4Raw=Qr,e.geoGinzburg5=Br,e.geoGinzburg5Raw=It,e.geoGinzburg6=on,e.geoGinzburg6Raw=Zn,e.geoGinzburg8=At,e.geoGinzburg8Raw=Pn,e.geoGinzburg9=Go,e.geoGinzburg9Raw=Wa,e.geoGringorten=Wo,e.geoGringortenRaw=cu,e.geoGuyou=bs,e.geoGuyouRaw=lo,e.geoHammer=Ne,e.geoHammerRaw=ke,e.geoHammerRetroazimuthal=_s,e.geoHammerRetroazimuthalRaw=wf,e.geoHealpix=Fl,e.geoHealpixRaw=so,e.geoHill=jc,e.geoHillRaw=Af,e.geoHomolosine=Bv,e.geoHomolosineRaw=Ts,e.geoHufnagel=Tf,e.geoHufnagelRaw=jo,e.geoHyperelliptical=co,e.geoHyperellipticalRaw=fo,e.geoInterrupt=Ui,e.geoInterruptedBoggs=Uv,e.geoInterruptedHomolosine=Jo,e.geoInterruptedMollweide=Ko,e.geoInterruptedMollweideHemispheres=ks,e.geoInterruptedSinuMollweide=Ss,e.geoInterruptedSinusoidal=Qo,e.geoKavrayskiy7=Ol,e.geoKavrayskiy7Raw=Bl,e.geoLagrange=gu,e.geoLagrangeRaw=pu,e.geoLarrivee=yu,e.geoLarriveeRaw=mu,e.geoLaskowski=ea,e.geoLaskowskiRaw=za,e.geoLittrow=Gi,e.geoLittrowRaw=Ma,e.geoLoximuthal=el,e.geoLoximuthalRaw=Ls,e.geoMiller=Sf,e.geoMillerRaw=Ul,e.geoModifiedStereographic=wi,e.geoModifiedStereographicRaw=Kc,e.geoModifiedStereographicAlaska=Df,e.geoModifiedStereographicGs48=Qc,e.geoModifiedStereographicGs50=e0,e.geoModifiedStereographicMiller=qs,e.geoModifiedStereographicLee=Ds,e.geoMollweide=dr,e.geoMollweideRaw=Je,e.geoMtFlatPolarParabolic=r0,e.geoMtFlatPolarParabolicRaw=_u,e.geoMtFlatPolarQuartic=Vv,e.geoMtFlatPolarQuarticRaw=Ef,e.geoMtFlatPolarSinusoidal=xu,e.geoMtFlatPolarSinusoidalRaw=ho,e.geoNaturalEarth2=Ps,e.geoNaturalEarth2Raw=Yl,e.geoNellHammer=Pf,e.geoNellHammerRaw=Rs,e.geoInterruptedQuarticAuthalic=t0,e.geoNicolosi=n0,e.geoNicolosiRaw=Rf,e.geoPatterson=a0,e.geoPattersonRaw=Bf,e.geoPolyconic=i0,e.geoPolyconicRaw=rl,e.geoPolyhedral=Vl,e.geoPolyhedralButterfly=Ns,e.geoPolyhedralCollignon=Jv,e.geoPolyhedralWaterman=Is,e.geoProject=ku,e.geoGringortenQuincuncial=H,e.geoPeirceQuincuncial=J,e.geoPierceQuincuncial=J,e.geoQuantize=ce,e.geoQuincuncial=Uf,e.geoRectangularPolyconic=we,e.geoRectangularPolyconicRaw=oe,e.geoRobinson=ar,e.geoRobinsonRaw=je,e.geoSatellite=$e,e.geoSatelliteRaw=br,e.geoSinuMollweide=Jc,e.geoSinuMollweideRaw=As,e.geoSinusoidal=Ue,e.geoSinusoidalRaw=tr,e.geoStitch=yn,e.geoTimes=Vt,e.geoTimesRaw=Gr,e.geoTwoPointAzimuthal=Wi,e.geoTwoPointAzimuthalRaw=pa,e.geoTwoPointAzimuthalUsa=Xa,e.geoTwoPointEquidistant=ui,e.geoTwoPointEquidistantRaw=Ti,e.geoTwoPointEquidistantUsa=al,e.geoVanDerGrinten=Xl,e.geoVanDerGrintenRaw=il,e.geoVanDerGrinten2=h0,e.geoVanDerGrinten2Raw=Lu,e.geoVanDerGrinten3=Xh,e.geoVanDerGrinten3Raw=d0,e.geoVanDerGrinten4=Zi,e.geoVanDerGrinten4Raw=Yf,e.geoWagner=p0,e.geoWagner7=$v,e.geoWagnerRaw=Jh,e.geoWagner4=g0,e.geoWagner4Raw=Qh,e.geoWagner6=ed,e.geoWagner6Raw=Gf,e.geoWiechel=Ty,e.geoWiechelRaw=Kv,e.geoWinkel3=ki,e.geoWinkel3Raw=Qv,Object.defineProperty(e,"__esModule",{value:!0})})});var pF=te((t1e,dF)=>{"use strict";var da=kt(),l_=pr(),iie=dt(),Rv=Math.PI/180,Bc=180/Math.PI,u_={cursor:"pointer"},f_={cursor:"auto"};function oie(e,r){var t=e.projection,n;return r._isScoped?n=lie:r._isClipped?n=uie:n=sie,n(e,t)}dF.exports=oie;function c_(e,r){return da.behavior.zoom().translate(r.translate()).scale(r.scale())}function v_(e,r,t){var n=e.id,a=e.graphDiv,i=a.layout,o=i[n],l=a._fullLayout,s=l[n],u={},f={};function v(h,d){u[n+"."+h]=l_.nestedProperty(o,h).get(),iie.call("_storeDirectGUIEdit",i,l._preGUI,u);var m=l_.nestedProperty(s,h);m.get()!==d&&(m.set(d),l_.nestedProperty(o,h).set(d),f[n+"."+h]=d)}t(v),v("projection.scale",r.scale()/e.fitScale),v("fitbounds",!1),a.emit("plotly_relayout",f)}function lie(e,r){var t=c_(e,r);function n(){da.select(this).style(u_)}function a(){r.scale(da.event.scale).translate(da.event.translate),e.render(!0);var l=r.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":r.scale()/e.fitScale,"geo.center.lon":l[0],"geo.center.lat":l[1]})}function i(l){var s=r.invert(e.midPt);l("center.lon",s[0]),l("center.lat",s[1])}function o(){da.select(this).style(f_),v_(e,r,i)}return t.on("zoomstart",n).on("zoom",a).on("zoomend",o),t}function sie(e,r){var t=c_(e,r),n=2,a,i,o,l,s,u,f,v,h;function d(x){return r.invert(x)}function m(x){var _=d(x);if(!_)return!0;var A=r(_);return Math.abs(A[0]-x[0])>n||Math.abs(A[1]-x[1])>n}function p(){da.select(this).style(u_),a=da.mouse(this),i=r.rotate(),o=r.translate(),l=i,s=d(a)}function y(){if(u=da.mouse(this),m(a)){t.scale(r.scale()),t.translate(r.translate());return}r.scale(da.event.scale),r.translate([o[0],da.event.translate[1]]),s?d(u)&&(v=d(u),f=[l[0]+(v[0]-s[0]),i[1],i[2]],r.rotate(f),l=f):(a=u,s=d(a)),h=!0,e.render(!0);var x=r.rotate(),_=r.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":r.scale()/e.fitScale,"geo.center.lon":_[0],"geo.center.lat":_[1],"geo.projection.rotation.lon":-x[0]})}function b(){da.select(this).style(f_),h&&v_(e,r,C)}function C(x){var _=r.rotate(),A=r.invert(e.midPt);x("projection.rotation.lon",-_[0]),x("center.lon",A[0]),x("center.lat",A[1])}return t.on("zoomstart",p).on("zoom",y).on("zoomend",b),t}function uie(e,r){var t={r:r.rotate(),k:r.scale()},n=c_(e,r),a=mie(n,"zoomstart","zoom","zoomend"),i=0,o=n.on,l;n.on("zoomstart",function(){da.select(this).style(u_);var h=da.mouse(this),d=r.rotate(),m=d,p=r.translate(),y=fie(d);l=fy(r,h),o.call(n,"zoom",function(){var b=da.mouse(this);if(r.scale(t.k=da.event.scale),!l)h=b,l=fy(r,h);else if(fy(r,b)){r.rotate(d).translate(p);var C=fy(r,b),x=vie(l,C),_=die(cie(y,x)),A=t.r=hie(_,l,m);(!isFinite(A[0])||!isFinite(A[1])||!isFinite(A[2]))&&(A=m),r.rotate(A),m=A}u(a.of(this,arguments))}),s(a.of(this,arguments))}).on("zoomend",function(){da.select(this).style(f_),o.call(n,"zoom",null),f(a.of(this,arguments)),v_(e,r,v)}).on("zoom.redraw",function(){e.render(!0);var h=r.rotate();e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":r.scale()/e.fitScale,"geo.projection.rotation.lon":-h[0],"geo.projection.rotation.lat":-h[1]})});function s(h){i++||h({type:"zoomstart"})}function u(h){h({type:"zoom"})}function f(h){--i||h({type:"zoomend"})}function v(h){var d=r.rotate();h("projection.rotation.lon",-d[0]),h("projection.rotation.lat",-d[1])}return da.rebind(n,a,"on")}function fy(e,r){var t=e.invert(r);return t&&isFinite(t[0])&&isFinite(t[1])&&pie(t)}function fie(e){var r=.5*e[0]*Rv,t=.5*e[1]*Rv,n=.5*e[2]*Rv,a=Math.sin(r),i=Math.cos(r),o=Math.sin(t),l=Math.cos(t),s=Math.sin(n),u=Math.cos(n);return[i*l*u+a*o*s,a*l*u-i*o*s,i*o*u+a*l*s,i*l*s-a*o*u]}function cie(e,r){var t=e[0],n=e[1],a=e[2],i=e[3],o=r[0],l=r[1],s=r[2],u=r[3];return[t*o-n*l-a*s-i*u,t*l+n*o+a*u-i*s,t*s-n*u+a*o+i*l,t*u+n*s-a*l+i*o]}function vie(e,r){if(!(!e||!r)){var t=gie(e,r),n=Math.sqrt(hF(t,t)),a=.5*Math.acos(Math.max(-1,Math.min(1,hF(e,r)))),i=Math.sin(a)/n;return n&&[Math.cos(a),t[2]*i,-t[1]*i,t[0]*i]}}function hie(e,r,t){var n=s_(r,2,e[0]);n=s_(n,1,e[1]),n=s_(n,0,e[2]-t[2]);var a=r[0],i=r[1],o=r[2],l=n[0],s=n[1],u=n[2],f=Math.atan2(i,a)*Bc,v=Math.sqrt(a*a+i*i),h,d;Math.abs(s)>v?(d=(s>0?90:-90)-f,h=0):(d=Math.asin(s/v)*Bc-f,h=Math.sqrt(v*v-s*s));var m=180-d-2*f,p=(Math.atan2(u,l)-Math.atan2(o,h))*Bc,y=(Math.atan2(u,l)-Math.atan2(o,-h))*Bc,b=cF(t[0],t[1],d,p),C=cF(t[0],t[1],m,y);return b<=C?[d,p,t[2]]:[m,y,t[2]]}function cF(e,r,t,n){var a=vF(t-e),i=vF(n-r);return Math.sqrt(a*a+i*i)}function vF(e){return(e%360+540)%360-180}function s_(e,r,t){var n=t*Rv,a=e.slice(),i=r===0?1:0,o=r===2?1:2,l=Math.cos(n),s=Math.sin(n);return a[i]=e[i]*l-e[o]*s,a[o]=e[o]*l+e[i]*s,a}function die(e){return[Math.atan2(2*(e[0]*e[1]+e[2]*e[3]),1-2*(e[1]*e[1]+e[2]*e[2]))*Bc,Math.asin(Math.max(-1,Math.min(1,2*(e[0]*e[2]-e[3]*e[1]))))*Bc,Math.atan2(2*(e[0]*e[3]+e[1]*e[2]),1-2*(e[2]*e[2]+e[3]*e[3]))*Bc]}function pie(e){var r=e[0]*Rv,t=e[1]*Rv,n=Math.cos(t);return[n*Math.cos(r),n*Math.sin(r),Math.sin(t)]}function hF(e,r){for(var t=0,n=0,a=e.length;n{"use strict";var uu=kt(),p_=o_(),yie=p_.geoPath,bie=p_.geoDistance,_ie=fF(),xie=dt(),Uh=pr(),wie=Uh.strTranslate,cy=Et(),Oh=fn(),gF=ss(),Mie=ca(),d_=Dn(),mF=ju().getAutoRange,h_=To(),Aie=nu().prepSelect,Tie=nu().clearOutline,kie=nu().selectOnClick,Sie=pF(),pi=Ih(),Cie=ay(),bF=Xm(),Lie=G4().feature;function _F(e){this.id=e.id,this.graphDiv=e.graphDiv,this.container=e.container,this.topojsonURL=e.topojsonURL,this.isStatic=e.staticPlot,this.topojsonName=null,this.topojson=null,this.projection=null,this.scope=null,this.viewInitial=null,this.fitScale=null,this.bounds=null,this.midPt=null,this.hasChoropleth=!1,this.traceHash={},this.layers={},this.basePaths={},this.dataPaths={},this.dataPoints={},this.clipDef=null,this.clipRect=null,this.bgRect=null,this.makeFramework()}var El=_F.prototype;xF.exports=function(r){return new _F(r)};El.plot=function(e,r,t,n){var a=this;if(n)return a.update(e,r,!0);a._geoCalcData=e,a._fullLayout=r;var i=r[this.id],o=[],l=!1;for(var s in pi.layerNameToAdjective)if(s!=="frame"&&i["show"+s]){l=!0;break}for(var u=!1,f=0;f0&&o._module.calcGeoJSON(i,r)}if(!t){var l=this.updateProjection(e,r);if(l)return;(!this.viewInitial||this.scope!==n.scope)&&this.saveViewInitial(n)}this.scope=n.scope,this.updateBaseLayers(r,n),this.updateDims(r,n),this.updateFx(r,n),Mie.generalUpdatePerTraceModule(this.graphDiv,this,e,n);var s=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=s.selectAll(".point"),this.dataPoints.text=s.selectAll("text"),this.dataPaths.line=s.selectAll(".js-line");var u=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=u.selectAll("path"),this._render()};El.updateProjection=function(e,r){var t=this.graphDiv,n=r[this.id],a=r._size,i=n.domain,o=n.projection,l=n.lonaxis,s=n.lataxis,u=l._ax,f=s._ax,v=this.projection=qie(n),h=[[a.l+a.w*i.x[0],a.t+a.h*(1-i.y[1])],[a.l+a.w*i.x[1],a.t+a.h*(1-i.y[0])]],d=n.center||{},m=o.rotation||{},p=l.range||[],y=s.range||[];if(n.fitbounds){u._length=h[1][0]-h[0][0],f._length=h[1][1]-h[0][1],u.range=mF(t,u),f.range=mF(t,f);var b=(u.range[0]+u.range[1])/2,C=(f.range[0]+f.range[1])/2;if(n._isScoped)d={lon:b,lat:C};else if(n._isClipped){d={lon:b,lat:C},m={lon:b,lat:C,roll:m.roll};var x=o.type,_=pi.lonaxisSpan[x]/2||180,A=pi.lataxisSpan[x]/2||90;p=[b-_,b+_],y=[C-A,C+A]}else d={lon:b,lat:C},m={lon:b,lat:m.lat,roll:m.roll}}v.center([d.lon-m.lon,d.lat-m.lat]).rotate([-m.lon,-m.lat,m.roll]).parallels(o.parallels);var k=yF(p,y);v.fitExtent(h,k);var M=this.bounds=v.getBounds(k),E=this.fitScale=v.scale(),R=v.translate();if(n.fitbounds){var F=v.getBounds(yF(u.range,f.range)),I=Math.min((M[1][0]-M[0][0])/(F[1][0]-F[0][0]),(M[1][1]-M[0][1])/(F[1][1]-F[0][1]));isFinite(I)?v.scale(I*E):Uh.warn("Something went wrong during"+this.id+"fitbounds computations.")}else v.scale(o.scale*E);var W=this.midPt=[(M[0][0]+M[1][0])/2,(M[0][1]+M[1][1])/2];if(v.translate([R[0]+(W[0]-R[0]),R[1]+(W[1]-R[1])]).clipExtent(M),n._isAlbersUsa){var O=v([d.lon,d.lat]),Z=v.translate();v.translate([Z[0]-(O[0]-Z[0]),Z[1]-(O[1]-Z[1])])}};El.updateBaseLayers=function(e,r){var t=this,n=t.topojson,a=t.layers,i=t.basePaths;function o(h){return h==="lonaxis"||h==="lataxis"}function l(h){return!!pi.lineLayers[h]}function s(h){return!!pi.fillLayers[h]}var u=this.hasChoropleth?pi.layersForChoropleth:pi.layers,f=u.filter(function(h){return l(h)||s(h)?r["show"+h]:o(h)?r[h].showgrid:!0}),v=t.framework.selectAll(".layer").data(f,String);v.exit().each(function(h){delete a[h],delete i[h],uu.select(this).remove()}),v.enter().append("g").attr("class",function(h){return"layer "+h}).each(function(h){var d=a[h]=uu.select(this);h==="bg"?t.bgRect=d.append("rect").style("pointer-events","all"):o(h)?i[h]=d.append("path").style("fill","none"):h==="backplot"?d.append("g").classed("choroplethlayer",!0):h==="frontplot"?d.append("g").classed("scatterlayer",!0):l(h)?i[h]=d.append("path").style("fill","none").style("stroke-miterlimit",2):s(h)&&(i[h]=d.append("path").style("stroke","none"))}),v.order(),v.each(function(h){var d=i[h],m=pi.layerNameToAdjective[h];h==="frame"?d.datum(pi.sphereSVG):l(h)||s(h)?d.datum(Lie(n,n.objects[h])):o(h)&&d.datum(Die(h,r,e)).call(cy.stroke,r[h].gridcolor).call(Oh.dashLine,r[h].griddash,r[h].gridwidth),l(h)?d.call(cy.stroke,r[m+"color"]).call(Oh.dashLine,"",r[m+"width"]):s(h)&&d.call(cy.fill,r[m+"color"])})};El.updateDims=function(e,r){var t=this.bounds,n=(r.framewidth||0)/2,a=t[0][0]-n,i=t[0][1]-n,o=t[1][0]-a+n,l=t[1][1]-i+n;Oh.setRect(this.clipRect,a,i,o,l),this.bgRect.call(Oh.setRect,a,i,o,l).call(cy.fill,r.bgcolor),this.xaxis._offset=a,this.xaxis._length=o,this.yaxis._offset=i,this.yaxis._length=l};El.updateFx=function(e,r){var t=this,n=t.graphDiv,a=t.bgRect,i=e.dragmode,o=e.clickmode;if(t.isStatic)return;function l(){var v=t.viewInitial,h={};for(var d in v)h[t.id+"."+d]=v[d];xie.call("_guiRelayout",n,h),n.emit("plotly_doubleclick",null)}function s(v){return t.projection.invert([v[0]+t.xaxis._offset,v[1]+t.yaxis._offset])}var u=function(v,h){if(h.isRect){var d=v.range={};d[t.id]=[s([h.xmin,h.ymin]),s([h.xmax,h.ymax])]}else{var m=v.lassoPoints={};m[t.id]=h.map(s)}},f={element:t.bgRect.node(),gd:n,plotinfo:{id:t.id,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:u},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id,clickFn:function(v){v===2&&Tie(n)}};i==="pan"?(a.node().onmousedown=null,a.call(Sie(t,r)),a.on("dblclick.zoom",l),n._context._scrollZoom.geo||a.on("wheel.zoom",null)):(i==="select"||i==="lasso")&&(a.on(".zoom",null),f.prepFn=function(v,h,d){Aie(v,h,d,f,i)},h_.init(f)),a.on("mousemove",function(){var v=t.projection.invert(Uh.getPositionFromD3Event());if(!v)return h_.unhover(n,uu.event);t.xaxis.p2c=function(){return v[0]},t.yaxis.p2c=function(){return v[1]},gF.hover(n,uu.event,t.id)}),a.on("mouseout",function(){n._dragging||h_.unhover(n,uu.event)}),a.on("click",function(){i!=="select"&&i!=="lasso"&&(o.indexOf("select")>-1&&kie(uu.event,n,[t.xaxis],[t.yaxis],t.id,f),o.indexOf("event")>-1&&gF.click(n,uu.event))})};El.makeFramework=function(){var e=this,r=e.graphDiv,t=r._fullLayout,n="clip"+t._uid+e.id;e.clipDef=t._clips.append("clipPath").attr("id",n),e.clipRect=e.clipDef.append("rect"),e.framework=uu.select(e.container).append("g").attr("class","geo "+e.id).call(Oh.setClipUrl,n,r),e.project=function(a){var i=e.projection(a);return i?[i[0]-e.xaxis._offset,i[1]-e.yaxis._offset]:[null,null]},e.xaxis={_id:"x",c2p:function(a){return e.project(a)[0]}},e.yaxis={_id:"y",c2p:function(a){return e.project(a)[1]}},e.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},d_.setConvert(e.mockAxis,t)};El.saveViewInitial=function(e){var r=e.center||{},t=e.projection,n=t.rotation||{};this.viewInitial={fitbounds:e.fitbounds,"projection.scale":t.scale};var a;e._isScoped?a={"center.lon":r.lon,"center.lat":r.lat}:e._isClipped?a={"projection.rotation.lon":n.lon,"projection.rotation.lat":n.lat}:a={"center.lon":r.lon,"center.lat":r.lat,"projection.rotation.lon":n.lon},Uh.extendFlat(this.viewInitial,a)};El.render=function(e){this._hasMarkerAngles&&e?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()};El._render=function(){var e=this.projection,r=e.getPath(),t;function n(i){var o=e(i.lonlat);return o?wie(o[0],o[1]):null}function a(i){return e.isLonLatOverEdges(i.lonlat)?"none":null}for(t in this.basePaths)this.basePaths[t].attr("d",r);for(t in this.dataPaths)this.dataPaths[t].attr("d",function(i){return r(i.geojson)});for(t in this.dataPoints)this.dataPoints[t].attr("display",a).attr("transform",n)};function qie(e){var r=e.projection,t=r.type,n=pi.projNames[t];n="geo"+Uh.titleCase(n);for(var a=p_[n]||_ie[n],i=a(),o=e._isSatellite?Math.acos(1/r.distance)*180/Math.PI:e._isClipped?pi.lonaxisSpan[t]/2:null,l=["center","rotate","parallels","clipExtent"],s=function(v){return v?i:[]},u=0;um}else return!1},i.getPath=function(){return yie().projection(i)},i.getBounds=function(v){return i.getPath().bounds(v)},i.precision(pi.precision),e._isSatellite&&i.tilt(r.tilt).distance(r.distance),o&&i.clipAngle(o-pi.clipPad),i}function Die(e,r,t){var n=1e-6,a=2.5,i=r[e],o=pi.scopeDefaults[r.scope],l,s,u;e==="lonaxis"?(l=o.lonaxisRange,s=o.lataxisRange,u=function(C,x){return[C,x]}):e==="lataxis"&&(l=o.lataxisRange,s=o.lonaxisRange,u=function(C,x){return[x,C]});var f={type:"linear",range:[l[0],l[1]-n],tick0:i.tick0,dtick:i.dtick};d_.setConvert(f,t);var v=d_.calcTicks(f);!r.isScoped&&e==="lonaxis"&&v.pop();for(var h=v.length,d=new Array(h),m=0;m0&&a<0&&(a+=360);var l=(a-n)/4;return{type:"Polygon",coordinates:[[[n,i],[n,o],[n+l,o],[n+2*l,o],[n+3*l,o],[a,o],[a,i],[a-l,i],[a-2*l,i],[a-3*l,i],[n,i]]]}}});var g_=te((a1e,TF)=>{"use strict";var Nv=vl(),Eie=Bm().attributes,Pie=Kl().dash,zv=Ih(),Rie=_o().overrideAll,MF=Dd(),AF={range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},showgrid:{valType:"boolean",dflt:!1},tick0:{valType:"number",dflt:0},dtick:{valType:"number"},gridcolor:{valType:"color",dflt:Nv.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:Pie},zie=TF.exports=Rie({domain:Eie({name:"geo"},{}),fitbounds:{valType:"enumerated",values:[!1,"locations","geojson"],dflt:!1,editType:"plot"},resolution:{valType:"enumerated",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:"enumerated",values:MF(zv.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:MF(zv.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:Nv.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:zv.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:zv.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:zv.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:zv.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:Nv.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:Nv.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:Nv.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:Nv.background},lonaxis:AF,lataxis:AF},"plot","from-root");zie.uirevision={valType:"any",editType:"none"}});var SF=te((i1e,kF)=>{"use strict";var Nie=pr(),Fie=_n(),Iie=Bm().defaults;kF.exports=function(r,t,n,a){var i=a.type,o=a.attributes,l=a.handleDefaults,s=a.partition||"x",u=t._subplots[i],f=u.length,v=f&&u[0].replace(/\d+$/,""),h,d;function m(C,x){return Nie.coerce(h,d,o,C,x)}for(var p=0;p{"use strict";var vy=pr(),Hie=SF(),Bie=_1().getSubplotData,hy=Ih(),Oie=g_(),CF=hy.axesNames;LF.exports=function(r,t,n){Hie(r,t,n,{type:"geo",attributes:Oie,handleDefaults:Uie,fullData:n,partition:"y"})};function Uie(e,r,t,n){var a=Bie(n.fullData,"geo",n.id),i=a.map(function(ve){return ve.index}),o=t("resolution"),l=t("scope"),s=hy.scopeDefaults[l],u=t("projection.type",s.projType),f=r._isAlbersUsa=u==="albers usa";f&&(l=r.scope="usa");var v=r._isScoped=l!=="world",h=r._isSatellite=u==="satellite",d=r._isConic=u.indexOf("conic")!==-1||u==="albers",m=r._isClipped=!!hy.lonaxisSpan[u];if(e.visible===!1){var p=vy.extendDeep({},r._template);p.showcoastlines=!1,p.showcountries=!1,p.showframe=!1,p.showlakes=!1,p.showland=!1,p.showocean=!1,p.showrivers=!1,p.showsubunits=!1,p.lonaxis&&(p.lonaxis.showgrid=!1),p.lataxis&&(p.lataxis.showgrid=!1),r._template=p}for(var y=t("visible"),b,C=0;C0&&O<0&&(O+=360);var Z=(W+O)/2,V;if(!f){var re=v?s.projRotate:[Z,0,0];V=t("projection.rotation.lon",re[0]),t("projection.rotation.lat",re[1]),t("projection.rotation.roll",re[2]),b=t("showcoastlines",!v&&y),b&&(t("coastlinecolor"),t("coastlinewidth")),b=t("showocean",y?void 0:!1),b&&t("oceancolor")}var ie,Q;if(f?(ie=-96.6,Q=38.7):(ie=v?Z:V,Q=(I[0]+I[1])/2),t("center.lon",ie),t("center.lat",Q),h&&(t("projection.tilt"),t("projection.distance")),d){var ee=s.projParallels||[0,60];t("projection.parallels",ee)}t("projection.scale"),b=t("showland",y?void 0:!1),b&&t("landcolor"),b=t("showlakes",y?void 0:!1),b&&t("lakecolor"),b=t("showrivers",y?void 0:!1),b&&(t("rivercolor"),t("riverwidth")),b=t("showcountries",v&&l!=="usa"&&y),b&&(t("countrycolor"),t("countrywidth")),(l==="usa"||l==="north america"&&o===50)&&(t("showsubunits",y),t("subunitcolor"),t("subunitwidth")),v||(b=t("showframe",y),b&&(t("framecolor"),t("framewidth"))),t("bgcolor");var se=t("fitbounds");se&&(delete r.projection.scale,v?(delete r.center.lon,delete r.center.lat):m?(delete r.center.lon,delete r.center.lat,delete r.projection.rotation.lon,delete r.projection.rotation.lat,delete r.lonaxis.range,delete r.lataxis.range):(delete r.center.lon,delete r.center.lat,delete r.projection.rotation.lon))}});var m_=te((l1e,PF)=>{"use strict";var Yie=_1().getSubplotCalcData,Gie=pr().counterRegex,Vie=wF(),ps="geo",DF=Gie(ps),EF={};EF[ps]={valType:"subplotid",dflt:ps,editType:"calc"};function Wie(e){for(var r=e._fullLayout,t=e.calcdata,n=r._subplots[ps],a=0;a{"use strict";RF.exports={attributes:Fh(),supplyDefaults:cN(),colorbar:Nb(),formatLabels:dN(),calc:bN(),calcGeoJSON:a_().calcGeoJSON,plot:a_().plot,style:e_(),styleOnSelect:wh().styleOnSelect,hoverPoints:rF(),eventData:nF(),selectPoints:oF(),moduleType:"trace",name:"scattergeo",basePlotModule:m_(),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}});var FF=te((u1e,NF)=>{"use strict";NF.exports=zF()});var dy=te((f1e,BF)=>{"use strict";var{hovertemplateAttrs:jie,templatefallbackAttrs:Jie}=Qf(),pf=Fh(),$ie=O0(),IF=bo(),Kie=vl().defaultLine,df=sa().extendFlat,HF=pf.marker.line;BF.exports=df({locations:{valType:"data_array",editType:"calc"},locationmode:pf.locationmode,z:{valType:"data_array",editType:"calc"},geojson:df({},pf.geojson,{}),featureidkey:pf.featureidkey,text:df({},pf.text,{}),hovertext:df({},pf.hovertext,{}),marker:{line:{color:df({},HF.color,{dflt:Kie}),width:df({},HF.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:pf.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:pf.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:df({},IF.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:jie(),hovertemplatefallback:Jie(),showlegend:df({},IF.showlegend,{dflt:!1})},$ie("",{cLetter:"z",editTypeOverride:"calc"}))});var UF=te((c1e,OF)=>{"use strict";var Yh=pr(),Qie=U0(),eoe=dy(),roe=["The library used by the *country names* `locationmode` option is changing in the next major version.","Some country names in existing plots may not work in the new version.","To ensure consistent behavior, consider setting `locationmode` to *ISO-3*."].join(" ");OF.exports=function(r,t,n,a){function i(h,d){return Yh.coerce(r,t,eoe,h,d)}var o=i("locations"),l=i("z");if(!(o&&o.length&&Yh.isArrayOrTypedArray(l)&&l.length)){t.visible=!1;return}t._length=Math.min(o.length,l.length);var s=i("geojson"),u;(typeof s=="string"&&s!==""||Yh.isPlainObject(s))&&(u="geojson-id");var f=i("locationmode",u);f==="country names"&&Yh.warn(roe),f==="geojson-id"&&i("featureidkey"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var v=i("marker.line.width");v&&i("marker.line.color"),i("marker.opacity"),Qie(r,t,a,i,{prefix:"",cLetter:"z"}),Yh.coerceSelectionMarkerOpacity(t,i)}});var GF=te((v1e,YF)=>{"use strict";YF.exports={min:"zmin",max:"zmax"}});var XF=te((h1e,ZF)=>{"use strict";var VF=Ht(),toe=Rn().BADNUM,noe=np(),aoe=mh(),ioe=am();function WF(e){return e&&typeof e=="string"}ZF.exports=function(r,t){var n=t._length,a=new Array(n),i;t.geojson?i=function(f){return WF(f)||VF(f)}:i=WF;for(var o=0;o{"use strict";var ooe=kt(),loe=Et(),y_=fn(),soe=ip();function uoe(e,r){r&&jF(e,r)}function jF(e,r){var t=r[0].trace,n=r[0].node3,a=n.selectAll(".choroplethlocation"),i=t.marker||{},o=i.line||{},l=soe.makeColorScaleFuncFromTrace(t);a.each(function(s){ooe.select(this).attr("fill",l(s.z)).call(loe.stroke,s.mlc||o.color).call(y_.dashLine,"",s.mlw||o.width||0).style("opacity",i.opacity)}),y_.selectedPointStyle(a,t)}function foe(e,r){var t=r[0].node3,n=r[0].trace;n.selectedpoints?y_.selectedPointStyle(t.selectAll(".choroplethlocation"),n):jF(e,r)}JF.exports={style:uoe,styleOnSelect:foe}});var b_=te((p1e,QF)=>{"use strict";var coe=kt(),$F=pr(),Fv=ay(),voe=Xm().getTopojsonFeatures,KF=ju().findExtremes,hoe=py().style;function doe(e,r,t){var n=r.layers.backplot.select(".choroplethlayer");$F.makeTraceGroups(n,t,"trace choropleth").each(function(a){var i=coe.select(this),o=i.selectAll("path.choroplethlocation").data($F.identity);o.enter().append("path").classed("choroplethlocation",!0),o.exit().remove(),hoe(e,a)})}function poe(e,r){for(var t=e[0].trace,n=r[t.geo],a=n._subplot,i=t.locationmode,o=t._length,l=i==="geojson-id"?Fv.extractTraceFeature(e):voe(t,a.topojson),s=[],u=[],f=0;f{"use strict";var goe=Dn(),moe=dy(),yoe=pr().fillText;eI.exports=function(r,t,n){var a=r.cd,i=a[0].trace,o=r.subplot,l,s,u,f,v=[t,n],h=[t+360,n];for(s=0;s")}}});var nI=te((m1e,tI)=>{"use strict";tI.exports=function(r,t,n,a,i){r.location=t.location,r.z=t.z;var o=a[i];return o.fIn&&o.fIn.properties&&(r.properties=o.fIn.properties),r.ct=o.ct,r}});var iI=te((y1e,aI)=>{"use strict";aI.exports=function(r,t){var n=r.cd,a=r.xaxis,i=r.yaxis,o=[],l,s,u,f,v;if(t===!1)for(l=0;l{"use strict";oI.exports={attributes:dy(),supplyDefaults:UF(),colorbar:GF(),calc:XF(),calcGeoJSON:b_().calcGeoJSON,plot:b_().plot,style:py().style,styleOnSelect:py().styleOnSelect,hoverPoints:rI(),eventData:nI(),selectPoints:iI(),moduleType:"trace",name:"choropleth",basePlotModule:m_(),categories:["geo","noOpacity","showLegend"],meta:{}}});var uI=te((_1e,sI)=>{"use strict";sI.exports=lI()});var Ua=te((x1e,cI)=>{"use strict";var fI=Object.getOwnPropertySymbols,_oe=Object.prototype.hasOwnProperty,xoe=Object.prototype.propertyIsEnumerable;function woe(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function Moe(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var r={},t=0;t<10;t++)r["_"+String.fromCharCode(t)]=t;var n=Object.getOwnPropertyNames(r).map(function(i){return r[i]});if(n.join("")!=="0123456789")return!1;var a={};return"abcdefghijklmnopqrst".split("").forEach(function(i){a[i]=i}),Object.keys(Object.assign({},a)).join("")==="abcdefghijklmnopqrst"}catch(i){return!1}}cI.exports=Moe()?Object.assign:function(e,r){for(var t,n=woe(e),a,i=1;i{var my=Ua();function vI(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}my(vI.prototype,{instance:function(e,r){e=(e||"gregorian").toLowerCase(),r=r||"";var t=this._localCals[e+"-"+r];if(!t&&this.calendars[e]&&(t=new this.calendars[e](r),this._localCals[e+"-"+r]=t),!t)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return t},newDate:function(e,r,t,n,a){return n=(e!=null&&e.year?e.calendar():typeof n=="string"?this.instance(n,a):n)||this.instance(),n.newDate(e,r,t)},substituteDigits:function(e){return function(r){return(r+"").replace(/[0-9]/g,function(t){return e[t]})}},substituteChineseDigits:function(e,r){return function(t){for(var n="",a=0;t>0;){var i=t%10;n=(i===0?"":e[i]+r[a])+n,a++,t=Math.floor(t/10)}return n.indexOf(e[1]+r[1])===0&&(n=n.substr(1)),n||e[0]}}});function __(e,r,t,n){if(this._calendar=e,this._year=r,this._month=t,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function gy(e,r){return e=""+e,"000000".substring(0,r-e.length)+e}my(__.prototype,{newDate:function(e,r,t){return this._calendar.newDate(e==null?this:e,r,t)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,r,t){if(!this._calendar.isValid(e,r,t))throw(Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=r,this._day=t,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,r){return this._calendar.add(this,e,r)},set:function(e,r){return this._calendar.set(this,e,r)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(Tt.local.differentCalendars||Tt.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var r=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return r===0?0:r<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+gy(Math.abs(this.year()),4)+"-"+gy(this.month(),2)+"-"+gy(this.day(),2)}});function x_(){this.shortYearCutoff="+10"}my(x_.prototype,{_validateLevel:0,newDate:function(e,r,t){return e==null?this.today():(e.year&&(this._validate(e,r,t,Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate),t=e.day(),r=e.month(),e=e.year()),new __(this,e,r,t))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var r=this._validate(e,this.minMonth,this.minDay,Tt.local.invalidYear||Tt.regionalOptions[""].invalidYear);return r.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Tt.local.invalidYear||Tt.regionalOptions[""].invalidYear);return(r.year()<0?"-":"")+gy(Math.abs(r.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Tt.local.invalidYear||Tt.regionalOptions[""].invalidYear),12},monthOfYear:function(e,r){var t=this._validate(e,r,this.minDay,Tt.local.invalidMonth||Tt.regionalOptions[""].invalidMonth);return(t.month()+this.monthsInYear(t)-this.firstMonth)%this.monthsInYear(t)+this.minMonth},fromMonthOfYear:function(e,r){var t=(r+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,t,this.minDay,Tt.local.invalidMonth||Tt.regionalOptions[""].invalidMonth),t},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Tt.local.invalidYear||Tt.regionalOptions[""].invalidYear);return this.leapYear(r)?366:365},dayOfYear:function(e,r,t){var n=this._validate(e,r,t,Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,r,t){var n=this._validate(e,r,t,Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(e,r,t){return this._validate(e,r,t,Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate),{}},add:function(e,r,t){return this._validate(e,this.minMonth,this.minDay,Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,r,t),r,t)},_add:function(e,r,t){if(this._validateLevel++,t==="d"||t==="w"){var n=e.toJD()+r*(t==="w"?this.daysInWeek():1),a=e.calendar().fromJD(n);return this._validateLevel--,[a.year(),a.month(),a.day()]}try{var i=e.year()+(t==="y"?r:0),o=e.monthOfYear()+(t==="m"?r:0),a=e.day(),l=function(f){for(;ov-1+f.minMonth;)i++,o-=v,v=f.monthsInYear(i)};t==="y"?(e.month()!==this.fromMonthOfYear(i,o)&&(o=this.newDate(i,e.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(i)),a=Math.min(a,this.daysInMonth(i,this.fromMonthOfYear(i,o)))):t==="m"&&(l(this),a=Math.min(a,this.daysInMonth(i,this.fromMonthOfYear(i,o))));var s=[i,this.fromMonthOfYear(i,o),a];return this._validateLevel--,s}catch(u){throw this._validateLevel--,u}},_correctAdd:function(e,r,t,n){if(!this.hasYearZero&&(n==="y"||n==="m")&&(r[0]===0||e.year()>0!=r[0]>0)){var a={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],i=t<0?-1:1;r=this._add(e,t*a[0]+i*a[1],a[2])}return e.date(r[0],r[1],r[2])},set:function(e,r,t){this._validate(e,this.minMonth,this.minDay,Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate);var n=t==="y"?r:e.year(),a=t==="m"?r:e.month(),i=t==="d"?r:e.day();return(t==="y"||t==="m")&&(i=Math.min(i,this.daysInMonth(n,a))),e.date(n,a,i)},isValid:function(e,r,t){this._validateLevel++;var n=this.hasYearZero||e!==0;if(n){var a=this.newDate(e,r,this.minDay);n=r>=this.minMonth&&r-this.minMonth=this.minDay&&t-this.minDay13.5?13:1),u=a-(s>2.5?4716:4715);return u<=0&&u--,this.newDate(u,s,l)},toJSDate:function(e,r,t){var n=this._validate(e,r,t,Tt.local.invalidDate||Tt.regionalOptions[""].invalidDate),a=new Date(n.year(),n.month()-1,n.day());return a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0),a.setHours(a.getHours()>12?a.getHours()+2:0),a},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var Tt=hI.exports=new vI;Tt.cdate=__;Tt.baseCalendar=x_;Tt.calendars.gregorian=w_});var dI=te(()=>{var M_=Ua(),Sa=Ya();M_(Sa.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});Sa.local=Sa.regionalOptions[""];M_(Sa.cdate.prototype,{formatDate:function(e,r){return typeof e!="string"&&(r=e,e=""),this._calendar.formatDate(e||"",this,r)}});M_(Sa.baseCalendar.prototype,{UNIX_EPOCH:Sa.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:Sa.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,r,t){if(typeof e!="string"&&(t=r,r=e,e=""),!r)return"";if(r.calendar()!==this)throw Sa.local.invalidFormat||Sa.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,t=t||{};for(var n=t.dayNamesShort||this.local.dayNamesShort,a=t.dayNames||this.local.dayNames,i=t.monthNumbers||this.local.monthNumbers,o=t.monthNamesShort||this.local.monthNamesShort,l=t.monthNames||this.local.monthNames,s=t.calculateWeek||this.local.calculateWeek,u=function(_,A){for(var k=1;x+k1},f=function(_,A,k,M){var E=""+A;if(u(_,M))for(;E.length1},C=function(W,O){var Z=b(W,O),V=[2,3,Z?4:2,Z?4:2,10,11,20]["oyYJ@!".indexOf(W)+1],re=new RegExp("^-?\\d{1,"+V+"}"),ie=r.substring(E).match(re);if(!ie)throw(Sa.local.missingNumberAt||Sa.regionalOptions[""].missingNumberAt).replace(/\{0\}/,E);return E+=ie[0].length,parseInt(ie[0],10)},x=this,_=function(){if(typeof l=="function"){b("m");var W=l.call(x,r.substring(E));return E+=W.length,W}return C("m")},A=function(W,O,Z,V){for(var re=b(W,V)?Z:O,ie=0;ie-1){h=1,d=m;for(var I=this.daysInMonth(v,h);d>I;I=this.daysInMonth(v,h))h++,d-=I}return f>-1?this.fromJD(f):this.newDate(v,h,d)},determineDate:function(e,r,t,n,a){t&&typeof t!="object"&&(a=n,n=t,t=null),typeof n!="string"&&(a=n,n="");var i=this,o=function(l){try{return i.parseDate(n,l,a)}catch(v){}l=l.toLowerCase();for(var s=(l.match(/^c/)&&t?t.newDate():null)||i.today(),u=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,f=u.exec(l);f;)s.add(parseInt(f[1],10),f[2]||"d"),f=u.exec(l);return s};return r=r?r.newDate():null,e=e==null?r:typeof e=="string"?o(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?r:i.today().add(e,"d"):i.newDate(e),e}})});var pI=te(()=>{var gf=Ya(),Aoe=Ua(),A_=gf.instance();function yy(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}yy.prototype=new gf.baseCalendar;Aoe(yy.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,r){if(typeof e=="string"){var t=e.match(koe);return t?t[0]:""}var n=this._validateYear(e),a=e.month(),i=""+this.toChineseMonth(n,a);return r&&i.length<2&&(i="0"+i),this.isIntercalaryMonth(n,a)&&(i+="i"),i},monthNames:function(e){if(typeof e=="string"){var r=e.match(Soe);return r?r[0]:""}var t=this._validateYear(e),n=e.month(),a=this.toChineseMonth(t,n),i=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][a-1];return this.isIntercalaryMonth(t,n)&&(i="\u95F0"+i),i},monthNamesShort:function(e){if(typeof e=="string"){var r=e.match(Coe);return r?r[0]:""}var t=this._validateYear(e),n=e.month(),a=this.toChineseMonth(t,n),i=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][a-1];return this.isIntercalaryMonth(t,n)&&(i="\u95F0"+i),i},parseMonth:function(e,r){e=this._validateYear(e);var t=parseInt(r),n;if(isNaN(t))r[0]==="\u95F0"&&(n=!0,r=r.substring(1)),r[r.length-1]==="\u6708"&&(r=r.substring(0,r.length-1)),t=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(r);else{var a=r[r.length-1];n=a==="i"||a==="I"}var i=this.toMonthIndex(e,t,n);return i},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,r){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw r.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,r,t){var n=this.intercalaryMonth(e),a=t&&r!==n;if(a||r<1||r>12)throw gf.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return n?!t&&r<=n?i=r-1:i=r:i=r-1,i},toChineseMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e),n=t?12:11;if(r<0||r>n)throw gf.local.invalidMonth.replace(/\{0\}/,this.local.name);var a;return t?r>13;return t},isIntercalaryMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e);return!!t&&t===r},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,r,t){var n=this._validateYear(e,gf.local.invalidyear),a=yf[n-yf[0]],i=a>>9&4095,o=a>>5&15,l=a&31,s;s=A_.newDate(i,o,l),s.add(4-(s.dayOfWeek()||7),"d");var u=this.toJD(e,r,t)-s.toJD();return 1+Math.floor(u/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,r){e.year&&(r=e.month(),e=e.year()),e=this._validateYear(e);var t=mf[e-mf[0]],n=t>>13,a=n?12:11;if(r>a)throw gf.local.invalidMonth.replace(/\{0\}/,this.local.name);var i=t&1<<12-r?30:29;return i},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,i,t,gf.local.invalidDate);e=this._validateYear(n.year()),r=n.month(),t=n.day();var a=this.isIntercalaryMonth(e,r),i=this.toChineseMonth(e,r),o=qoe(e,i,t,a);return A_.toJD(o.year,o.month,o.day)},fromJD:function(e){var r=A_.fromJD(e),t=Loe(r.year(),r.month(),r.day()),n=this.toMonthIndex(t.year,t.month,t.isIntercalary);return this.newDate(t.year,n,t.day)},fromString:function(e){var r=e.match(Toe),t=this._validateYear(+r[1]),n=+r[2],a=!!r[3],i=this.toMonthIndex(t,n,a),o=+r[4];return this.newDate(t,i,o)},add:function(e,r,t){var n=e.year(),a=e.month(),i=this.isIntercalaryMonth(n,a),o=this.toChineseMonth(n,a),l=Object.getPrototypeOf(yy.prototype).add.call(this,e,r,t);if(t==="y"){var s=l.year(),u=l.month(),f=this.isIntercalaryMonth(s,o),v=i&&f?this.toMonthIndex(s,o,!0):this.toMonthIndex(s,o,!1);v!==u&&l.month(v)}return l}});var Toe=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,koe=/^\d?\d[iI]?/m,Soe=/^闰?十?[一二三四五六七八九]?月/m,Coe=/^闰?十?[一二三四五六七八九]?/m;gf.calendars.chinese=yy;var mf=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],yf=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function Loe(e,r,t,n){var a,i;if(typeof e=="object")a=e,i=r||{};else{var o=typeof e=="number"&&e>=1888&&e<=2111;if(!o)throw new Error("Solar year outside range 1888-2111");var l=typeof r=="number"&&r>=1&&r<=12;if(!l)throw new Error("Solar month outside range 1 - 12");var s=typeof t=="number"&&t>=1&&t<=31;if(!s)throw new Error("Solar day outside range 1 - 31");a={year:e,month:r,day:t},i=n||{}}var u=yf[a.year-yf[0]],f=a.year<<9|a.month<<5|a.day;i.year=f>=u?a.year:a.year-1,u=yf[i.year-yf[0]];var v=u>>9&4095,h=u>>5&15,d=u&31,m,p=new Date(v,h-1,d),y=new Date(a.year,a.month-1,a.day);m=Math.round((y-p)/(24*3600*1e3));var b=mf[i.year-mf[0]],C;for(C=0;C<13;C++){var x=b&1<<12-C?30:29;if(m>13;return!_||C<_?(i.isIntercalary=!1,i.month=1+C):C===_?(i.isIntercalary=!0,i.month=C):(i.isIntercalary=!1,i.month=C),i.day=1+m,i}function qoe(e,r,t,n,a){var i,o;if(typeof e=="object")o=e,i=r||{};else{var l=typeof e=="number"&&e>=1888&&e<=2111;if(!l)throw new Error("Lunar year outside range 1888-2111");var s=typeof r=="number"&&r>=1&&r<=12;if(!s)throw new Error("Lunar month outside range 1 - 12");var u=typeof t=="number"&&t>=1&&t<=30;if(!u)throw new Error("Lunar day outside range 1 - 30");var f;typeof n=="object"?(f=!1,i=n):(f=!!n,i=a||{}),o={year:e,month:r,day:t,isIntercalary:f}}var v;v=o.day-1;var h=mf[o.year-mf[0]],d=h>>13,m;d&&(o.month>d||o.isIntercalary)?m=o.month:m=o.month-1;for(var p=0;p>9&4095,x=b>>5&15,_=b&31,A=new Date(C,x-1,_+v);return i.year=A.getFullYear(),i.month=1+A.getMonth(),i.day=A.getDate(),i}});var gI=te(()=>{var Oc=Ya(),Doe=Ua();function T_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}T_.prototype=new Oc.baseCalendar;Doe(T_.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Oc.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Oc.local.invalidYear||Oc.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Oc.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,r,t,Oc.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var n=Math.floor(r/30)+1,a=r-(n-1)*30+1;return this.newDate(t,n,a)}});Oc.calendars.coptic=T_});var mI=te(()=>{var fu=Ya(),Eoe=Ua();function k_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}k_.prototype=new fu.baseCalendar;Eoe(k_.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,fu.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,fu.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,fu.local.invalidYear),400},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/8)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,fu.local.invalidMonth);return this.daysPerMonth[t.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,r,t){var n=this._validate(e,r,t,fu.local.invalidDate);return(n.day()+1)%8},weekDay:function(e,r,t){var n=this.dayOfWeek(e,r,t);return n>=2&&n<=6},extraInfo:function(e,r,t){var n=this._validate(e,r,t,fu.local.invalidDate);return{century:Poe[Math.floor((n.year()-1)/100)+1]||""}},toJD:function(e,r,t){var n=this._validate(e,r,t,fu.local.invalidDate);return e=n.year()+(n.year()<0?1:0),r=n.month(),t=n.day(),t+(r>1?16:0)+(r>2?(r-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var r=Math.floor(e/400)+1;e-=(r-1)*400,e+=e>15?16:0;var t=Math.floor(e/32)+1,n=e-(t-1)*32+1;return this.newDate(r<=0?r-1:r,t,n)}});var Poe={20:"Fruitbat",21:"Anchovy"};fu.calendars.discworld=k_});var yI=te(()=>{var Uc=Ya(),Roe=Ua();function S_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}S_.prototype=new Uc.baseCalendar;Roe(S_.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Uc.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Uc.local.invalidYear||Uc.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Uc.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,r,t,Uc.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var n=Math.floor(r/30)+1,a=r-(n-1)*30+1;return this.newDate(t,n,a)}});Uc.calendars.ethiopian=S_});var bI=te(()=>{var bf=Ya(),zoe=Ua();function C_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}C_.prototype=new bf.baseCalendar;zoe(C_.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,bf.local.invalidYear);return this._leapYear(r.year())},_leapYear:function(e){return e=e<0?e+1:e,by(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,bf.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,bf.local.invalidYear);return e=r.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,bf.local.invalidMonth),r===12&&this.leapYear(e)||r===8&&by(this.daysInYear(e),10)===5?30:r===9&&by(this.daysInYear(e),10)===3?29:this.daysPerMonth[r-1]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},extraInfo:function(e,r,t){var n=this._validate(e,r,t,bf.local.invalidDate);return{yearType:(this.leapYear(n)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(n)%10-3]}},toJD:function(e,r,t){var n=this._validate(e,r,t,bf.local.invalidDate);e=n.year(),r=n.month(),t=n.day();var a=e<=0?e+1:e,i=this.jdEpoch+this._delay1(a)+this._delay2(a)+t+1;if(r<7){for(var o=7;o<=this.monthsInYear(e);o++)i+=this.daysInMonth(e,o);for(var o=1;o=this.toJD(r===-1?1:r+1,7,1);)r++;for(var t=ethis.toJD(r,t,this.daysInMonth(r,t));)t++;var n=e-this.toJD(r,t,1)+1;return this.newDate(r,t,n)}});function by(e,r){return e-r*Math.floor(e/r)}bf.calendars.hebrew=C_});var _I=te(()=>{var Gh=Ya(),Noe=Ua();function L_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}L_.prototype=new Gh.baseCalendar;Noe(L_.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Gh.local.invalidYear);return(r.year()*11+14)%30<11},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Gh.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var n=this._validate(e,r,t,Gh.local.invalidDate);return e=n.year(),r=n.month(),t=n.day(),e=e<=0?e+1:e,t+Math.ceil(29.5*(r-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=Math.floor((30*(e-this.jdEpoch)+10646)/10631);r=r<=0?r-1:r;var t=Math.min(12,Math.ceil((e-29-this.toJD(r,1,1))/29.5)+1),n=e-this.toJD(r,t,1)+1;return this.newDate(r,t,n)}});Gh.calendars.islamic=L_});var xI=te(()=>{var Vh=Ya(),Foe=Ua();function q_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}q_.prototype=new Vh.baseCalendar;Foe(q_.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Vh.local.invalidYear),t=r.year()<0?r.year()+1:r.year();return t%4===0},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Vh.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,r,t,Vh.local.invalidDate);return e=n.year(),r=n.month(),t=n.day(),e<0&&e++,r<=2&&(e--,r+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(r+1))+t-1524.5},fromJD:function(e){var r=Math.floor(e+.5),t=r+1524,n=Math.floor((t-122.1)/365.25),a=Math.floor(365.25*n),i=Math.floor((t-a)/30.6001),o=i-Math.floor(i<14?1:13),l=n-Math.floor(o>2?4716:4715),s=t-a-Math.floor(30.6001*i);return l<=0&&l--,this.newDate(l,o,s)}});Vh.calendars.julian=q_});var MI=te(()=>{var Bo=Ya(),Ioe=Ua();function E_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}E_.prototype=new Bo.baseCalendar;Ioe(E_.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Bo.local.invalidYear),!1},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Bo.local.invalidYear);e=r.year();var t=Math.floor(e/400);e=e%400,e+=e<0?400:0;var n=Math.floor(e/20);return t+"."+n+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var r=0,t=0;t19||t>0&&n<0)throw"Invalid Mayan year";r=r*20+n}return r},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Bo.local.invalidYear),18},weekOfYear:function(e,r,t){return this._validate(e,r,t,Bo.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Bo.local.invalidYear),360},daysInMonth:function(e,r){return this._validate(e,r,this.minDay,Bo.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,r,t){var n=this._validate(e,r,t,Bo.local.invalidDate);return n.day()},weekDay:function(e,r,t){return this._validate(e,r,t,Bo.local.invalidDate),!0},extraInfo:function(e,r,t){var n=this._validate(e,r,t,Bo.local.invalidDate),a=n.toJD(),i=this._toHaab(a),o=this._toTzolkin(a);return{haabMonthName:this.local.haabMonths[i[0]-1],haabMonth:i[0],haabDay:i[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(e){e-=this.jdEpoch;var r=D_(e+8+17*20,365);return[Math.floor(r/20)+1,D_(r,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[wI(e+20,20),wI(e+4,13)]},toJD:function(e,r,t){var n=this._validate(e,r,t,Bo.local.invalidDate);return n.day()+n.month()*20+n.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var r=Math.floor(e/360);e=e%360,e+=e<0?360:0;var t=Math.floor(e/20),n=e%20;return this.newDate(r,t,n)}});function D_(e,r){return e-r*Math.floor(e/r)}function wI(e,r){return D_(e-1,r)+1}Bo.calendars.mayan=E_});var TI=te(()=>{var Yc=Ya(),Hoe=Ua();function P_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}P_.prototype=new Yc.baseCalendar;var AI=Yc.instance("gregorian");Hoe(P_.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Yc.local.invalidYear||Yc.regionalOptions[""].invalidYear);return AI.leapYear(r.year()+(r.year()<1?1:0)+1469)},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Yc.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(a,r,t){var n=this._validate(a,r,t,Yc.local.invalidMonth),a=n.year();a<0&&a++;for(var i=n.day(),o=1;o=this.toJD(r+1,1,1);)r++;for(var t=e-Math.floor(this.toJD(r,1,1)+.5)+1,n=1;t>this.daysInMonth(r,n);)t-=this.daysInMonth(r,n),n++;return this.newDate(r,n,t)}});Yc.calendars.nanakshahi=P_});var kI=te(()=>{var Gc=Ya(),Boe=Ua();function R_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}R_.prototype=new Gc.baseCalendar;Boe(R_.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Gc.local.invalidYear);if(e=r.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var t=0,n=this.minMonth;n<=12;n++)t+=this.NEPALI_CALENDAR_DATA[e][n];return t},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,Gc.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[r-1]:this.NEPALI_CALENDAR_DATA[e][r]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},toJD:function(e,r,t){var n=this._validate(e,r,t,Gc.local.invalidDate);e=n.year(),r=n.month(),t=n.day();var a=Gc.instance(),i=0,o=r,l=e;this._createMissingCalendarData(e);var s=e-(o>9||o===9&&t>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(r!==9&&(i=t,o--);o!==9;)o<=0&&(o=12,l--),i+=this.NEPALI_CALENDAR_DATA[l][o],o--;return r===9?(i+=t-this.NEPALI_CALENDAR_DATA[l][0],i<0&&(i+=a.daysInYear(s))):i+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],a.newDate(s,1,1).add(i,"d").toJD()},fromJD:function(e){var r=Gc.instance(),t=r.fromJD(e),n=t.year(),a=t.dayOfYear(),i=n+56;this._createMissingCalendarData(i);for(var o=9,l=this.NEPALI_CALENDAR_DATA[i][0],s=this.NEPALI_CALENDAR_DATA[i][o]-l+1;a>s;)o++,o>12&&(o=1,i++),s+=this.NEPALI_CALENDAR_DATA[i][o];var u=this.NEPALI_CALENDAR_DATA[i][o]-(s-a);return this.newDate(i,o,u)},_createMissingCalendarData:function(e){var r=this.daysPerMonth.slice(0);r.unshift(17);for(var t=e-1;t{var Iv=Ya(),Ooe=Ua();function xy(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function _y(e){var r=e-475;e<0&&r++;var t=.242197,n=t*r,a=t*(r+1),i=n-Math.floor(n),o=a-Math.floor(a);return i>o}xy.prototype=new Iv.baseCalendar;Ooe(xy.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Iv.local.invalidYear);return _y(r.year())},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-((n.dayOfWeek()+1)%7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Iv.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var n=this._validate(e,r,t,Iv.local.invalidDate);e=n.year(),r=n.month(),t=n.day();var a=0;if(e>0)for(var i=1;i0?e-1:e)*365+a+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=475+(e-this.toJD(475,1,1))/365.242197,t=Math.floor(r);t<=0&&t--,e>this.toJD(t,12,_y(t)?30:29)&&(t++,t===0&&t++);var n=e-this.toJD(t,1,1)+1,a=n<=186?Math.ceil(n/31):Math.ceil((n-6)/30),i=e-this.toJD(t,a,1)+1;return this.newDate(t,a,i)}});Iv.calendars.persian=xy;Iv.calendars.jalali=xy});var CI=te(()=>{var Vc=Ya(),Uoe=Ua(),wy=Vc.instance();function z_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}z_.prototype=new Vc.baseCalendar;Uoe(z_.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Vc.local.invalidYear),t=this._t2gYear(r.year());return wy.leapYear(t)},weekOfYear:function(a,r,t){var n=this._validate(a,this.minMonth,this.minDay,Vc.local.invalidYear),a=this._t2gYear(n.year());return wy.weekOfYear(a,n.month(),n.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Vc.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(a,r,t){var n=this._validate(a,r,t,Vc.local.invalidDate),a=this._t2gYear(n.year());return wy.toJD(a,n.month(),n.day())},fromJD:function(e){var r=wy.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Vc.calendars.taiwan=z_});var LI=te(()=>{var Wc=Ya(),Yoe=Ua(),My=Wc.instance();function N_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}N_.prototype=new Wc.baseCalendar;Yoe(N_.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Wc.local.invalidYear),t=this._t2gYear(r.year());return My.leapYear(t)},weekOfYear:function(a,r,t){var n=this._validate(a,this.minMonth,this.minDay,Wc.local.invalidYear),a=this._t2gYear(n.year());return My.weekOfYear(a,n.month(),n.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Wc.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(a,r,t){var n=this._validate(a,r,t,Wc.local.invalidDate),a=this._t2gYear(n.year());return My.toJD(a,n.month(),n.day())},fromJD:function(e){var r=My.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});Wc.calendars.thai=N_});var qI=te(()=>{var Zc=Ya(),Goe=Ua();function F_(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}F_.prototype=new Zc.baseCalendar;Goe(F_.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Zc.local.invalidYear);return this.daysInYear(r.year())===355},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var r=0,t=1;t<=12;t++)r+=this.daysInMonth(e,t);return r},daysInMonth:function(e,r){for(var t=this._validate(e,r,this.minDay,Zc.local.invalidMonth),n=t.toJD()-24e5+.5,a=0,i=0;i<_f.length;i++){if(_f[i]>n)return _f[a]-_f[a-1];a++}return 30},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var n=this._validate(e,r,t,Zc.local.invalidDate),a=12*(n.year()-1)+n.month()-15292,i=n.day()+_f[a-1]-1;return i+24e5-.5},fromJD:function(e){for(var r=e-24e5+.5,t=0,n=0;n<_f.length&&!(_f[n]>r);n++)t++;var a=t+15292,i=Math.floor((a-1)/12),o=i+1,l=a-12*i,s=r-_f[t-1]+1;return this.newDate(o,l,s)},isValid:function(e,r,t){var n=Zc.baseCalendar.prototype.isValid.apply(this,arguments);return n&&(e=e.year!=null?e.year:e,n=e>=1276&&e<=1500),n},_validate:function(e,r,t,n){var a=Zc.baseCalendar.prototype._validate.apply(this,arguments);if(a.year<1276||a.year>1500)throw n.replace(/\{0\}/,this.local.name);return a}});Zc.calendars.ummalqura=F_;var _f=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var EI=te((Q1e,DI)=>{"use strict";DI.exports=Ya();dI();pI();gI();mI();yI();bI();_I();xI();MI();TI();kI();SI();CI();LI();qI()});var HI=te((ehe,II)=>{"use strict";var RI=EI(),Wh=pr(),zI=Rn(),Voe=zI.EPOCHJD,Woe=zI.ONEDAY,B_={valType:"enumerated",values:Wh.sortObjectKeys(RI.calendars),editType:"calc",dflt:"gregorian"},NI=function(e,r,t,n){var a={};return a[t]=B_,Wh.coerce(e,r,a,t,n)},Zoe=function(e,r,t,n){for(var a=0;a{"use strict";BI.exports=HI()});var Qoe=te((the,YI)=>{var UI=iN();UI.register([FF(),uI(),OI()]);YI.exports=UI});return Qoe();})(); /*! Bundled license information: native-promise-only/lib/npo.src.js: diff --git a/dist/plotly-gl2d.js b/dist/plotly-gl2d.js index 1b3b8036274..89a52dcbd54 100644 --- a/dist/plotly-gl2d.js +++ b/dist/plotly-gl2d.js @@ -1,5 +1,5 @@ /** -* plotly.js (gl2d) v3.3.0 +* plotly.js (gl2d) v3.3.1 * 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.3.0"; + exports.version = "3.3.1"; } }); @@ -8777,7 +8777,7 @@ var Plotly = (() => { var isArrayOrTypedArray = require_array().isArrayOrTypedArray; module.exports = function nestedProperty(container, propStr) { if (isNumeric(propStr)) propStr = String(propStr); - else if (typeof propStr !== "string" || propStr.substr(propStr.length - 4) === "[-1]") { + else if (typeof propStr !== "string" || propStr.slice(-4) === "[-1]") { throw "bad property string"; } var propParts = propStr.split("."); @@ -8796,7 +8796,7 @@ var Plotly = (() => { if (indexed[1]) propParts[j] = indexed[1]; else if (j === 0) propParts.splice(0, 1); else throw "bad property string"; - indices = indexed[2].substr(1, indexed[2].length - 2).split("]["); + indices = indexed[2].slice(1, -1).split("]["); for (i = 0; i < indices.length; i++) { j++; propParts.splice(j, 0, Number(indices[i])); @@ -10874,11 +10874,11 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { key = keys[i]; val = container[key]; - if (key.substr(key.length - 5) === "color") { + if (key.slice(-5) === "color") { if (Array.isArray(val)) { for (j = 0; j < val.length; j++) val[j] = cleanOne(val[j]); } else container[key] = cleanOne(val); - } else if (key.substr(key.length - 10) === "colorscale" && Array.isArray(val)) { + } else if (key.slice(-10) === "colorscale" && Array.isArray(val)) { for (j = 0; j < val.length; j++) { if (Array.isArray(val[j])) val[j][1] = cleanOne(val[j][1]); } @@ -10893,7 +10893,7 @@ var Plotly = (() => { function cleanOne(val) { if (isNumeric(val) || typeof val !== "string") return val; var valTrim = val.trim(); - if (valTrim.substr(0, 3) !== "rgb") return val; + if (valTrim.slice(0, 3) !== "rgb") return val; var match = valTrim.match(/^rgba?\s*\(([^()]*)\)$/); if (!match) return val; var parts = match[1].trim().split(/\s*[\s,]\s*/); @@ -10987,7 +10987,7 @@ var Plotly = (() => { for (var i = 0; i < values.length; i++) { var k = String(values[i]); if (k.charAt(0) === "/" && k.charAt(k.length - 1) === "/") { - var regex = new RegExp(k.substr(1, k.length - 2)); + var regex = new RegExp(k.slice(1, -1)); if (regex.test(v)) return true; } else if (v === values[i]) return true; } @@ -10995,9 +10995,13 @@ var Plotly = (() => { } }, boolean: { - coerceFunction: function(v, propOut, dflt) { - if (v === true || v === false) propOut.set(v); - else propOut.set(dflt); + coerceFunction: function(v, propOut, dflt, opts) { + const isBoolean = (value) => value === true || value === false; + if (isBoolean(v) || opts.arrayOk && Array.isArray(v) && v.length > 0 && v.every(isBoolean)) { + propOut.set(v); + } else { + propOut.set(dflt); + } } }, number: { @@ -11064,11 +11068,12 @@ var Plotly = (() => { subplotid: { coerceFunction: function(v, propOut, dflt, opts) { var regex = opts.regex || counterRegex(dflt); - if (typeof v === "string" && regex.test(v)) { + const isSubplotId = (value) => typeof value === "string" && regex.test(value); + if (isSubplotId(v) || opts.arrayOk && isArrayOrTypedArray(v) && v.length > 0 && v.every(isSubplotId)) { propOut.set(v); - return; + } else { + propOut.set(dflt); } - propOut.set(dflt); }, validateFunction: function(v, opts) { var dflt = opts.dflt; @@ -13774,9 +13779,9 @@ var Plotly = (() => { var require_maplibre_gl = __commonJS({ "node_modules/maplibre-gl/dist/maplibre-gl.css"() { (function() { - if (!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")) { + if (!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")) { var e = document.createElement("style"); - e.id = "ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe"; + e.id = "696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97"; e.textContent = `.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`; document.head.appendChild(e); } @@ -14099,10 +14104,10 @@ var Plotly = (() => { var isWorld = isWorldCalendar(calendar); var s0 = s.charAt(0); if (isWorld && (s0 === "G" || s0 === "g")) { - s = s.substr(1); + s = s.slice(1); calendar = ""; } - var isChinese = isWorld && calendar.substr(0, 7) === "chinese"; + var isChinese = isWorld && calendar.slice(0, 7) === "chinese"; var match = s.match(isChinese ? DATETIME_REGEXP_CN : DATETIME_REGEXP); if (!match) return BADNUM; var y = match[1]; @@ -14146,7 +14151,7 @@ var Plotly = (() => { return exports.dateTime2ms(s, calendar) !== BADNUM; }; function lpad(val, digits) { - return String(val + Math.pow(10, digits)).substr(1); + return String(val + Math.pow(10, digits)).slice(1); } var NINETYDAYS = 90 * ONEDAY; var THREEHOURS = 3 * ONEHOUR; @@ -14166,7 +14171,7 @@ var Plotly = (() => { dateStr = utcFormat("G%Y-%m-%d")(new Date(msRounded)); } if (dateStr.charAt(0) === "-") { - while (dateStr.length < 11) dateStr = "-0" + dateStr.substr(1); + while (dateStr.length < 11) dateStr = "-0" + dateStr.slice(1); } else { while (dateStr.length < 10) dateStr = "0" + dateStr; } @@ -14238,7 +14243,7 @@ var Plotly = (() => { function modDateFormat(fmt, x, formatter, calendar) { fmt = fmt.replace(fracMatch, function(match) { var digits = Math.min(+match.charAt(1) || 6, 6); - var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).substr(2).replace(/0+$/, "") || "0"; + var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).slice(2).replace(/0+$/, "") || "0"; return fracSecs; }); var d = new Date(Math.floor(x + 0.05)); @@ -14261,7 +14266,7 @@ var Plotly = (() => { if (tr !== "M") { if (!isNumeric(tr)) tr = 0; var sec = Math.min(mod(x / ONESEC, 60), MAXSECONDS[tr]); - var secStr = (100 + sec).toFixed(tr).substr(1); + var secStr = (100 + sec).toFixed(tr).slice(1); if (tr > 0) { secStr = secStr.replace(/0+$/, "").replace(/[\.]$/, ""); } @@ -14975,8 +14980,8 @@ var Plotly = (() => { if (part.indexOf("Safari") !== -1) { for (var k = i - 1; k > -1; k--) { var prevPart = allParts[k]; - if (prevPart.substr(0, 8) === "Version/") { - var v = prevPart.substr(8).split(".")[0]; + if (prevPart.slice(0, 8) === "Version/") { + var v = prevPart.slice(8).split(".")[0]; if (isNumeric(v)) v = +v; if (v >= 13) return true; } @@ -15443,7 +15448,7 @@ var Plotly = (() => { return finalStep && finalStep(arg); }; lib.stripTrailingSlash = function(str) { - if (str.substr(-1) === "/") return str.substr(0, str.length - 1); + if (str.slice(-1) === "/") return str.slice(0, -1); return str; }; lib.noneOrAll = function(containerIn, containerOut, attrList) { @@ -15604,7 +15609,7 @@ var Plotly = (() => { } lib.minExtend = minExtend; lib.titleCase = function(s) { - return s.charAt(0).toUpperCase() + s.substr(1); + return s.charAt(0).toUpperCase() + s.slice(1); }; lib.containsAny = function(s, fragments) { for (var i = 0; i < fragments.length; i++) { @@ -17116,7 +17121,7 @@ var Plotly = (() => { if (name.charAt(lastChar) !== "s") { Lib.warn("bad argument to arrayDefaultKey: " + name); } - return name.substr(0, name.length - 1) + "defaults"; + return name.slice(0, -1) + "defaults"; } exports.arrayDefaultKey = arrayDefaultKey; exports.arrayEditor = function(parentIn, containerStr, itemOut) { @@ -17241,13 +17246,13 @@ var Plotly = (() => { var constants = require_constants2(); exports.id2name = function id2name(id) { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; - var axNum = id.split(" ")[0].substr(1); + var axNum = id.split(" ")[0].slice(1); if (axNum === "1") axNum = ""; return id.charAt(0) + "axis" + axNum; }; exports.name2id = function name2id(name) { if (!name.match(constants.AX_NAME_PATTERN)) return; - var axNum = name.substr(5); + var axNum = name.slice(5); if (axNum === "1") axNum = ""; return name.charAt(0) + axNum; }; @@ -17256,7 +17261,7 @@ var Plotly = (() => { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; if (axLetter && id.charAt(0) !== axLetter) return; if (domainTest && !domainId) return; - var axNum = id.split(" ")[0].substr(1).replace(/^0+/, ""); + var axNum = id.split(" ")[0].slice(1).replace(/^0+/, ""); if (axNum === "1") axNum = ""; return id.charAt(0) + axNum + (domainTest && domainId ? " domain" : ""); }; @@ -17268,7 +17273,7 @@ var Plotly = (() => { var i; for (i = 0; i < idList.length; i++) { var idi = idList[i]; - out[i] = fullLayout[idi.charAt(0) + "axis" + idi.substr(1)]; + out[i] = fullLayout[idi.charAt(0) + "axis" + idi.slice(1)]; } if (!only2d) { var sceneIds3D = fullLayout._subplots.gl3d || []; @@ -17299,7 +17304,7 @@ var Plotly = (() => { var ax = null; if (Registry.traceIs(fullTrace, "gl3d")) { var scene = fullTrace.scene; - if (scene.substr(0, 5) === "scene") { + if (scene.slice(0, 5) === "scene") { ax = fullLayout[scene][type + "axis"]; } } else { @@ -17311,7 +17316,7 @@ var Plotly = (() => { var letter1 = id1.charAt(0); var letter2 = id2.charAt(0); if (letter1 !== letter2) return letter1 > letter2 ? 1 : -1; - return +(id1.substr(1) || 1) - +(id2.substr(1) || 1); + return +(id1.slice(1) || 1) - +(id2.slice(1) || 1); }; exports.ref2id = function(ar) { return /^[xyz]/.test(ar) ? ar.split(" ")[0] : false; @@ -18544,7 +18549,12 @@ var Plotly = (() => { _module.attributes.showlegend ? _module.attributes : plots.attributes, "showlegend" ); - coerce("legend"); + Lib.coerce( + traceIn, + traceOut, + _module.attributes.legend ? _module.attributes : plots.attributes, + "legend" + ); coerce("legendwidth"); coerce("legendgroup"); coerce("legendgrouptitle.text"); @@ -18679,7 +18689,7 @@ var Plotly = (() => { Lib.coerce(layoutIn, layoutOut, scatterAttrs, "scattermode"); }; function getComputedSize(attr) { - return typeof attr === "string" && attr.substr(attr.length - 2) === "px" && parseFloat(attr); + return typeof attr === "string" && attr.slice(-2) === "px" && parseFloat(attr); } plots.plotAutoSize = function plotAutoSize(gd, layout, fullLayout) { var context = gd._context || {}; @@ -19119,7 +19129,7 @@ var Plotly = (() => { return; } if (mode === "keepdata") { - if (v.substr(v.length - 3) === "src") { + if (v.slice(-3) === "src") { return; } } else if (mode === "keepstream") { @@ -20351,9 +20361,9 @@ var Plotly = (() => { newParts.pop(); } if (len > eLen) { - newParts.push(p.substr(0, pLen2 - eLen) + ellipsis); + newParts.push(p.slice(0, Math.max(0, pLen2 - eLen)) + ellipsis); } else { - newParts.push(p.substr(0, pLen2)); + newParts.push(p.slice(0, pLen2)); } break; } @@ -20378,7 +20388,7 @@ var Plotly = (() => { var outChar; if (innerMatch.charAt(0) === "#") { outChar = fromCodePoint( - innerMatch.charAt(1) === "x" ? parseInt(innerMatch.substr(2), 16) : parseInt(innerMatch.substr(1), 10) + innerMatch.charAt(1) === "x" ? parseInt(innerMatch.slice(2), 16) : parseInt(innerMatch.slice(1), 10) ); } else outChar = entityToUnicode[innerMatch]; return outChar || fullMatch; @@ -22010,7 +22020,7 @@ var Plotly = (() => { return dtickDflt; } var prefix = dtick.charAt(0); - var dtickNum = dtick.substr(1); + var dtickNum = dtick.slice(1); dtickNum = isNumeric(dtickNum) ? Number(dtickNum) : 0; if (dtickNum <= 0 || !// "M" gives ticks every (integer) n months (isDate && prefix === "M" && dtickNum === Math.round(dtickNum) || // "L" gives ticks linearly spaced in data (not in position) every (float) f @@ -26867,7 +26877,7 @@ var Plotly = (() => { var stats = Lib.findExactDates(data, calendar); var threshold = 0.8; if (stats.exactDays > threshold) { - var numMonths = Number(dtick.substr(1)); + var numMonths = Number(dtick.slice(1)); if (stats.exactYears > threshold && numMonths % 12 === 0) { binStart = axes.tickIncrement(binStart, "M6", "reverse") + ONEDAY * 1.5; } else if (stats.exactMonths > threshold) { @@ -27519,8 +27529,8 @@ var Plotly = (() => { var tick0str = ax.l2r(tick0ms).replace(/(^-|i)/g, ""); var tick0len = tick0str.length; if (String(dtick).charAt(0) === "M") { - if (tick0len > 10 || tick0str.substr(5) !== "01-01") ax._tickround = "d"; - else ax._tickround = +dtick.substr(1) % 12 === 0 ? "y" : "m"; + if (tick0len > 10 || tick0str.slice(5) !== "01-01") ax._tickround = "d"; + else ax._tickround = +dtick.slice(1) % 12 === 0 ? "y" : "m"; } else if (dtick >= ONEDAY && tick0len <= 10 || dtick >= ONEDAY * 15) ax._tickround = "d"; else if (dtick >= ONEMIN && tick0len <= 16 || dtick >= ONEHOUR) ax._tickround = "M"; else if (dtick >= ONESEC && tick0len <= 19 || dtick >= ONEMIN) ax._tickround = "S"; @@ -27531,7 +27541,7 @@ var Plotly = (() => { } } else if (isNumeric(dtick) || dtick.charAt(0) === "L") { var rng = ax.range.map(ax.r2d || Number); - if (!isNumeric(dtick)) dtick = Number(dtick.substr(1)); + if (!isNumeric(dtick)) dtick = Number(dtick.slice(1)); ax._tickround = 2 - Math.floor(Math.log(dtick) / Math.LN10 + 0.01); var maxend = Math.max(Math.abs(rng[0]), Math.abs(rng[1])); var rangeexp = Math.floor(Math.log(maxend) / Math.LN10 + 0.01); @@ -27549,7 +27559,7 @@ var Plotly = (() => { var axSign = axrev ? -1 : 1; if (isNumeric(dtick)) return Lib.increment(x, axSign * dtick); var tType = dtick.charAt(0); - var dtSigned = axSign * Number(dtick.substr(1)); + var dtSigned = axSign * Number(dtick.slice(1)); if (tType === "M") return Lib.incrementMonth(x, dtSigned, calendar); if (tType === "L") return Math.log(Math.pow(10, x) + dtSigned) / Math.LN10; if (tType === "D") { @@ -27576,7 +27586,7 @@ var Plotly = (() => { return tmin; } var tType = dtick.charAt(0); - var dtNum = Number(dtick.substr(1)); + var dtNum = Number(dtick.slice(1)); if (tType === "M") { var cnt = 0; var t0 = tick0; @@ -27706,8 +27716,8 @@ var Plotly = (() => { var headStr; var splitIndex = dateStr.indexOf("\n"); if (splitIndex !== -1) { - headStr = dateStr.substr(splitIndex + 1); - dateStr = dateStr.substr(0, splitIndex); + headStr = dateStr.slice(splitIndex + 1); + dateStr = dateStr.slice(0, splitIndex); } if (extraPrecision) { if (headStr !== void 0 && (dateStr === "00:00:00" || dateStr === "00:00")) { @@ -27928,12 +27938,12 @@ var Plotly = (() => { if (tickRound === 0) v = String(Math.floor(v)); else if (tickRound < 0) { v = String(Math.round(v)); - v = v.substr(0, v.length + tickRound); + v = v.slice(0, Math.max(0, v.length + tickRound)); for (var i = tickRound; i < 0; i++) v += "0"; } else { v = String(v); var dp = v.indexOf(".") + 1; - if (dp) v = v.substr(0, dp + tickRound).replace(/\.?0+$/, ""); + if (dp) v = v.slice(0, dp + tickRound).replace(/\.?0+$/, ""); } v = Lib.numSeparate(v, ax._separators, separatethousands); } @@ -28028,8 +28038,8 @@ var Plotly = (() => { var allSubplots = subplotObj.cartesian.concat(subplotObj.gl2d || []); var out = ax ? axes.findSubplotsWithAxis(allSubplots, ax) : allSubplots; out.sort(function(a, b) { - var aParts = a.substr(1).split("y"); - var bParts = b.substr(1).split("y"); + var aParts = a.slice(1).split("y"); + var bParts = b.slice(1).split("y"); if (aParts[0] === bParts[0]) return +aParts[1] - +bParts[1]; return +aParts[0] - +bParts[0]; }); @@ -30004,7 +30014,7 @@ var Plotly = (() => { for (var i = 0; i < classes.length; i++) { var cls = classes[i]; if (cls.indexOf("cursor-") === 0) { - el3.attr(STASHATTR, cls.substr(7)).classed(cls, false); + el3.attr(STASHATTR, cls.slice(7)).classed(cls, false); } } if (!el3.attr(STASHATTR)) { @@ -30246,8 +30256,33 @@ var Plotly = (() => { var shapesWithLegend = (layoutOut.shapes || []).filter(function(d) { return d.showlegend; }); + function isPieWithLegendArray(trace2) { + return Registry.traceIs(trace2, "pie-like") && trace2._length != null && (Array.isArray(trace2.legend) || Array.isArray(trace2.showlegend)); + } + ; + fullData.filter(isPieWithLegendArray).forEach(function(trace2) { + if (trace2.visible) { + legendTraceCount++; + } + for (var index = 0; index < trace2._length; index++) { + var legend = (Array.isArray(trace2.legend) ? trace2.legend[index] : trace2.legend) || "legend"; + if (legend === legendId) { + const showInLegend = Array.isArray(trace2.showlegend) ? trace2.showlegend[index] : trace2.showlegend; + if (showInLegend || trace2._dfltShowLegend) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + } + if (legendId === "legend" && trace2._length > trace2.legend.length) { + for (var idx = trace2.legend.length; idx < trace2._length; idx++) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + }); var allLegendItems = fullData.concat(shapesWithLegend).filter(function(d) { - return legendId === (d.legend || "legend"); + return !isPieWithLegendArray(trace) && legendId === (d.legend || "legend"); }); for (var i = 0; i < allLegendItems.length; i++) { trace = allLegendItems[i]; @@ -30275,7 +30310,7 @@ var Plotly = (() => { layoutOut, basePlotLayoutAttributes, "showlegend", - legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) + layoutOut.showlegend || legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) ); if (showLegend === false) layoutOut[legendId] = void 0; if (showLegend === false && !containerIn.uirevision) return; @@ -30380,7 +30415,11 @@ var Plotly = (() => { } var legends = ["legend"]; for (i = 0; i < allLegendsData.length; i++) { - Lib.pushUnique(legends, allLegendsData[i].legend); + if (Array.isArray(allLegendsData[i].legend)) { + legends = legends.concat(allLegendsData[i].legend); + } else { + Lib.pushUnique(legends, allLegendsData[i].legend); + } } layoutOut._legends = []; for (i = 0; i < legends.length; i++) { @@ -30671,8 +30710,16 @@ var Plotly = (() => { var lgroup = trace.legendgroup; if (!inHover && (!trace.visible || !trace.showlegend)) continue; if (Registry.traceIs(trace, "pie-like")) { + var legendPerSlice = Array.isArray(trace.legend); + var showlegendPerSlice = Array.isArray(trace.showlegend); if (!slicesShown[lgroup]) slicesShown[lgroup] = {}; for (j = 0; j < cd.length; j++) { + if (showlegendPerSlice && trace.showlegend[cd[j].i] === false) { + continue; + } + if (legendPerSlice) { + lid = trace.legend[cd[j].i] || "legend"; + } var labelj = cd[j].label; if (!slicesShown[lgroup][labelj]) { addOneItem(lid, lgroup, { @@ -31868,7 +31915,11 @@ var Plotly = (() => { } function computeTextDimensions(g, gd, legendObj, aTitle) { var legendItem = g.data()[0][0]; - if (!legendObj._inHover && legendItem && !legendItem.trace.showlegend) { + var showlegend = legendItem && legendItem.trace.showlegend; + if (Array.isArray(showlegend)) { + showlegend = showlegend[legendItem.i] !== false; + } + if (!legendObj._inHover && legendItem && !showlegend) { g.remove(); return; } @@ -35138,7 +35189,7 @@ var Plotly = (() => { segments.forEach(function(segment) { var relevantParamIdx = paramsToUse[segment.charAt(0)].drawn; if (relevantParamIdx === void 0) return; - var params = segment.substr(1).match(constants.paramRE); + var params = segment.slice(1).match(constants.paramRE); if (!params || params.length < relevantParamIdx) return; var str = params[relevantParamIdx]; var pos = isRaw ? str : Lib.cleanNumber(str); @@ -35329,7 +35380,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (xParams[paramNumber]) { if (xSizemode === "pixel") param = x2p(xAnchor) + Number(param); else param = x2p(param); @@ -36338,7 +36389,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (paramNumber >= nParams) return param; if (xParams[paramNumber]) param = moveX(param); else if (yParams[paramNumber]) param = moveY(param); @@ -38061,12 +38112,12 @@ var Plotly = (() => { if (typeof a === "string") { aPrefix = a.match(/^[xy]*/)[0]; aLen = aPrefix.length; - a = +a.substr(aLen); + a = +a.slice(aLen); } if (typeof b === "string") { bPrefix = b.match(/^[xy]*/)[0]; bLen = bPrefix.length; - b = +b.substr(bLen); + b = +b.slice(bLen); } var c = a * b; if (!aLen && !bLen) { @@ -38078,7 +38129,7 @@ var Plotly = (() => { if (aLen === bLen) { return c; } - return (aLen > bLen ? aPrefix.substr(bLen) : bPrefix.substr(aLen)) + c; + return (aLen > bLen ? aPrefix.slice(bLen) : bPrefix.slice(aLen)) + c; } function finalRatios(group, fullLayout) { var size = fullLayout._size; @@ -38091,7 +38142,7 @@ var Plotly = (() => { if (typeof val === "string") { var prefix = val.match(/^[xy]*/)[0]; var pLen = prefix.length; - val = +val.substr(pLen); + val = +val.slice(pLen); var mult = prefix.charAt(0) === "y" ? yRatio : 1 / yRatio; for (var j = 0; j < pLen; j++) { val *= mult; @@ -43708,7 +43759,7 @@ var Plotly = (() => { } if (!arrayStr) arrayStr = rootContainers[rootContainers.indexOf(rootPart)]; if (!arrayStr) return false; - var tail = astr.substr(arrayStr.length); + var tail = astr.slice(arrayStr.length); if (!tail) return { array: arrayStr, index: "", property: "" }; match = tail.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/); if (!match) return false; @@ -44065,7 +44116,7 @@ var Plotly = (() => { for (i = 0; i < minLen; i++) { if (name1.charAt(i) !== name2.charAt(i)) break; } - var out = name1.substr(0, i); + var out = name1.slice(0, i); return out.trim(); } function cleanTextPosition(textposition) { @@ -44146,7 +44197,7 @@ var Plotly = (() => { var ATTR_TAIL_RE = /(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/; function getParent(attr) { var tail = attr.search(ATTR_TAIL_RE); - if (tail > 0) return attr.substr(0, tail); + if (tail > 0) return attr.slice(0, tail); } exports.hasParent = function(aobj, attr) { var attrParent = getParent(attr); @@ -44163,8 +44214,8 @@ var Plotly = (() => { var ax = getFromTrace(gd, trace, AX_LETTERS[j]); if (ax && ax.type !== "log") { var axAttr = ax._name; - var sceneName = ax._id.substr(1); - if (sceneName.substr(0, 5) === "scene") { + var sceneName = ax._id.slice(1); + if (sceneName.slice(0, 5) === "scene") { if (layoutUpdate[sceneName] !== void 0) continue; axAttr = sceneName + "." + axAttr; } @@ -45046,7 +45097,7 @@ var Plotly = (() => { } if (attr in aobj || helpers.hasParent(aobj, attr)) return; var extraparam; - if (attr.substr(0, 6) === "LAYOUT") { + if (attr.slice(0, 6) === "LAYOUT") { extraparam = layoutNP(gd.layout, attr.replace("LAYOUT", "")); } else { var tracei = traces[i2]; @@ -45091,7 +45142,7 @@ var Plotly = (() => { else vi = null; } redoit[ai] = vi; - if (ai.substr(0, 6) === "LAYOUT") { + if (ai.slice(0, 6) === "LAYOUT") { param = layoutNP(gd.layout, ai.replace("LAYOUT", "")); undoit[ai] = [undefinedToNull(param.get())]; param.set(Array.isArray(vi) ? vi[0] : vi); @@ -45108,7 +45159,7 @@ var Plotly = (() => { newVal = Array.isArray(vi) ? vi[i % vi.length] : vi; if (newVal === void 0) continue; var finalPart = param.parts[param.parts.length - 1]; - var prefix = ai.substr(0, ai.length - finalPart.length - 1); + var prefix = ai.slice(0, ai.length - finalPart.length - 1); var prefixDot = prefix ? prefix + "." : ""; var innerContFull = prefix ? nestedProperty(contFull, prefix).get() : contFull; valObject = PlotSchema.getTraceValObject(contFull, param.parts); @@ -45333,7 +45384,7 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { if (keys[i].indexOf("allaxes") === 0) { for (j = 0; j < axes.length; j++) { - var scene = axes[j]._id.substr(1); + var scene = axes[j]._id.slice(1); var axisAttr = scene.indexOf("scene") !== -1 ? scene + "." : ""; var newkey = keys[i].replace("allaxes", axisAttr + axes[j]._name); if (!aobj[newkey]) aobj[newkey] = aobj[keys[i]]; @@ -45641,7 +45692,7 @@ var Plotly = (() => { var match = key.match(spec.pattern); if (match) { var head = match[1] || ""; - return { head, tail: key.substr(head.length + 1), attr: spec.attr }; + return { head, tail: key.slice(head.length + 1), attr: spec.attr }; } } } @@ -45702,7 +45753,7 @@ var Plotly = (() => { } newNP.set(undefinedToNull(nestedProperty(oldFullLayout, key).get())); continue; - } else if (tail === "autorange" || tail.substr(0, 6) === "range[") { + } else if (tail === "autorange" || tail.slice(0, 6) === "range[") { var pre0 = layoutPreGUI[head + ".range[0]"]; var pre1 = layoutPreGUI[head + ".range[1]"]; var preAuto = layoutPreGUI[head + ".autorange"]; @@ -45722,7 +45773,7 @@ var Plotly = (() => { Lib.warn("unrecognized GUI edit: " + key); } delete layoutPreGUI[key]; - if (match && match.tail.substr(0, 6) === "range[") { + if (match && match.tail.slice(0, 6) === "range[") { newRangeAccepted[match.head] = 1; } } @@ -47246,7 +47297,7 @@ var Plotly = (() => { for (var i = 0; i < path.length; i++) { var p = path[i]; if (typeof p === "number") { - astr = astr.substr(0, astr.length - 1) + "[" + p + "]"; + astr = astr.slice(0, -1) + "[" + p + "]"; } else { astr += p; } @@ -49837,7 +49888,7 @@ var Plotly = (() => { prevtrace._nexttrace = trace; } } - trace._ownfill = trace.fill && (trace.fill.substr(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.substr(0, 2) === "to" && !trace._prevtrace); + trace._ownfill = trace.fill && (trace.fill.slice(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.slice(0, 2) === "to" && !trace._prevtrace); prevtraces[group] = trace; } else { trace._prevtrace = trace._nexttrace = trace._ownfill = null; @@ -50040,8 +50091,8 @@ var Plotly = (() => { fullpath = thispath; revpath = thisrevpath; } else if (ownFillDir) { - fullpath += "L" + thispath.substr(1); - revpath = thisrevpath + ("L" + revpath.substr(1)); + fullpath += "L" + thispath.slice(1); + revpath = thisrevpath + ("L" + revpath.slice(1)); } else { fullpath += "Z" + thispath; revpath = thisrevpath + "Z" + revpath; @@ -50106,7 +50157,7 @@ var Plotly = (() => { if (pt0 && pt1) { if (ownFillDir) { pt0[fillAxisIndex] = pt1[fillAxisIndex] = fillAxisZero; - transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.substr(1)).call(Drawing.singleFillStyle, gd); + transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.slice(1)).call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(null); } else { transition(ownFillEl3).attr("d", fullpath + "Z").call(Drawing.singleFillStyle, gd); @@ -50116,13 +50167,13 @@ var Plotly = (() => { trace._polygons = thisPolygons; trace._fillElement = ownFillEl3; } else if (tonext) { - if (trace.fill.substr(0, 6) === "tonext" && fullpath && prevRevpath) { + if (trace.fill.slice(0, 6) === "tonext" && fullpath && prevRevpath) { if (trace.fill === "tonext") { transition(tonext).attr("d", fullpath + "Z" + prevRevpath + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makeSelfPolygons(); trace._polygons = thisPolygons.concat(prevPolygons); } else { - transition(tonext).attr("d", fullpath + "L" + prevRevpath.substr(1) + "Z").call(Drawing.singleFillStyle, gd); + transition(tonext).attr("d", fullpath + "L" + prevRevpath.slice(1) + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(prevFillsegments); trace._polygons = thisPolygons; } @@ -51097,7 +51148,7 @@ var Plotly = (() => { }; function indexOfDay(v) { if (typeof v !== "string") return; - return dayStrToNum[v.substr(0, 3).toLowerCase()]; + return dayStrToNum[v.slice(0, 3).toLowerCase()]; } } }); @@ -51688,10 +51739,10 @@ var Plotly = (() => { if (constants.attrRegex.test(ki)) { var axLetter = ki.charAt(0); if (axLetter === "x") { - if (!xi || +ki.substr(5) < +xi.substr(5)) { + if (!xi || +ki.slice(5) < +xi.slice(5)) { xi = ki; } - } else if (!yi || +ki.substr(5) < +yi.substr(5)) { + } else if (!yi || +ki.slice(5) < +yi.slice(5)) { yi = ki; } } @@ -53915,7 +53966,7 @@ var Plotly = (() => { segment = segments[i]; drawnParam = paramsToUse[segment.charAt(0)].drawn; if (drawnParam === void 0) continue; - params = segments[i].substr(1).match(constants.paramRE); + params = segments[i].slice(1).match(constants.paramRE); if (!params || params.length < drawnParam) continue; val = convertVal(params[drawnParam]); if (val < min) min = val; @@ -56266,9 +56317,9 @@ var Plotly = (() => { var subplots = layoutOut._subplots; if (subplots) { var yIds = subplots.cartesian.filter(function(subplotId) { - return subplotId.substr(0, subplotId.indexOf("y")) === axisIds.name2id(axName); + return subplotId.slice(0, Math.max(0, subplotId.indexOf("y"))) === axisIds.name2id(axName); }).map(function(subplotId) { - return subplotId.substr(subplotId.indexOf("y"), subplotId.length); + return subplotId.slice(subplotId.indexOf("y"), subplotId.length); }); var yNames = Lib.simpleMap(yIds, axisIds.id2name); for (var i = 0; i < yNames.length; i++) { @@ -58270,7 +58321,7 @@ var Plotly = (() => { placeholder: fullLayout._dfltTitle.colorbar, containerGroup: g.select("." + cn.cbtitle) }; - var otherClass = titleClass.charAt(0) === "h" ? titleClass.substr(1) : "h" + titleClass; + var otherClass = titleClass.charAt(0) === "h" ? titleClass.slice(1) : "h" + titleClass; g.selectAll("." + otherClass + ",." + otherClass + "-math-group").remove(); Titles.draw(gd, titleClass, extendFlat(dfltTitleOpts, titleOpts || {})); } @@ -94824,7 +94875,7 @@ void main() { } function pad2(num) { var s = "0" + num; - return s.substr(s.length - 2); + return s.slice(-2); } function getAttrName(i) { return i < maxDim ? "p" + pad2(i + 1) + "_" + pad2(i + 4) : "colors"; @@ -103898,7 +103949,7 @@ void main() { } else { if (directiveObj === UNKNOWN) replacementPart = UNKNOWN; else replacementPart = cDate.formatDate(directiveObj[modifier]); - fmt = fmt.substr(0, i) + replacementPart + fmt.substr(i + directiveLen); + fmt = fmt.slice(0, i) + replacementPart + fmt.slice(i + directiveLen); i += replacementPart.length; } } diff --git a/dist/plotly-gl2d.min.js b/dist/plotly-gl2d.min.js index a4a4f9662aa..045445ea4c8 100644 --- a/dist/plotly-gl2d.min.js +++ b/dist/plotly-gl2d.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (gl2d - minified) v3.3.0 +* plotly.js (gl2d - minified) v3.3.1 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,13 +12,13 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var zne=Object.create;var P1=Object.defineProperty,Gne=Object.defineProperties,Une=Object.getOwnPropertyDescriptor,Hne=Object.getOwnPropertyDescriptors,Vne=Object.getOwnPropertyNames,yM=Object.getOwnPropertySymbols,Yne=Object.getPrototypeOf,bM=Object.prototype.hasOwnProperty,Wne=Object.prototype.propertyIsEnumerable;var gM=(e,r,t)=>r in e?P1(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,h0=(e,r)=>{for(var t in r||(r={}))bM.call(r,t)&&gM(e,t,r[t]);if(yM)for(var t of yM(r))Wne.call(r,t)&&gM(e,t,r[t]);return e},Mg=(e,r)=>Gne(e,Hne(r));var Sg=(e,r)=>()=>(e&&(r=e(e=0)),r);var P=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),jne=(e,r)=>{for(var t in r)P1(e,t,{get:r[t],enumerable:!0})},xM=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Vne(r))!bM.call(e,n)&&n!==t&&P1(e,n,{get:()=>r[n],enumerable:!(a=Une(r,n))||a.enumerable});return e};var Xne=(e,r,t)=>(t=e!=null?zne(Yne(e)):{},xM(r||!e||!e.__esModule?P1(t,"default",{value:e,enumerable:!0}):t,e)),Zne=e=>xM(P1({},"__esModule",{value:!0}),e);var Eg=P(_M=>{"use strict";_M.version="3.3.0"});var AM=P((wM,kg)=>{(function(r,t,a){t[r]=t[r]||a(),typeof kg!="undefined"&&kg.exports&&(kg.exports=t[r])})("Promise",typeof window!="undefined"?window:wM,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(A){return setImmediate(A)}: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(_,x,T){return _[x]=T,_}}a=function(){var A,_,x;function T(E,M){this.fn=E,this.self=M,this.next=void 0}return{add:function(M,k){x=new T(M,k),_?_.next=x:A=x,_=x,x=void 0},drain:function(){var M=A;for(A=_=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(b,A){a.add(b,A),t||(t=i(a.drain))}function l(b){var A,_=typeof b;return b!=null&&(_=="object"||_=="function")&&(A=b.then),typeof A=="function"?A:!1}function s(){for(var b=0;b0&&o(s,_))}catch(x){c.call(new d(_),x)}}}function c(b){var A=this;A.triggered||(A.triggered=!0,A.def&&(A=A.def),A.msg=b,A.state=2,A.chain.length>0&&o(s,A))}function v(b,A,_,x){for(var T=0;T{(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 w=g.length,C=new Array(w);w--;)C[w]=g[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,f=this.CSSStyleDeclaration.prototype,u=f.setProperty;o.setAttribute=function(g,w){l.call(this,g,w+"")},o.setAttributeNS=function(g,w,C){s.call(this,g,w,C+"")},f.setProperty=function(g,w,C){u.call(this,g,w+"",C)}}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 w=-1,C=h.length,L,D;if(arguments.length===1){for(;++w=D){L=D;break}for(;++wD&&(L=D)}else{for(;++w=D){L=D;break}for(;++wD&&(L=D)}return L},e.max=function(h,g){var w=-1,C=h.length,L,D;if(arguments.length===1){for(;++w=D){L=D;break}for(;++wL&&(L=D)}else{for(;++w=D){L=D;break}for(;++wL&&(L=D)}return L},e.extent=function(h,g){var w=-1,C=h.length,L,D,G;if(arguments.length===1){for(;++w=D){L=G=D;break}for(;++wD&&(L=D),G=D){L=G=D;break}for(;++wD&&(L=D),G1)return G/(j-1)},e.deviation=function(){var h=e.variance.apply(this,arguments);return h&&Math.sqrt(h)};function p(h){return{left:function(g,w,C,L){for(arguments.length<3&&(C=0),arguments.length<4&&(L=g.length);C>>1;h(g[D],w)<0?C=D+1:L=D}return C},right:function(g,w,C,L){for(arguments.length<3&&(C=0),arguments.length<4&&(L=g.length);C>>1;h(g[D],w)>0?L=D:C=D+1}return C}}}var y=p(c);e.bisectLeft=y.left,e.bisect=e.bisectRight=y.right,e.bisector=function(h){return p(h.length===1?function(g,w){return c(h(g),w)}:h)},e.shuffle=function(h,g,w){(C=arguments.length)<3&&(w=h.length,C<2&&(g=0));for(var C=w-g,L,D;C;)D=Math.random()*C--|0,L=h[C+g],h[C+g]=h[D+g],h[D+g]=L;return h},e.permute=function(h,g){for(var w=g.length,C=new Array(w);w--;)C[w]=h[g[w]];return C},e.pairs=function(h){for(var g=0,w=h.length-1,C,L=h[0],D=new Array(w<0?0:w);g=0;)for(G=h[g],w=G.length;--w>=0;)D[--L]=G[w];return D};var b=Math.abs;e.range=function(h,g,w){if(arguments.length<3&&(w=1,arguments.length<2&&(g=h,h=0)),(g-h)/w===1/0)throw new Error("infinite range");var C=[],L=A(b(w)),D=-1,G;if(h*=L,g*=L,w*=L,w<0)for(;(G=h+w*++D)>g;)C.push(G/L);else for(;(G=h+w*++D)=g.length)return L?L.call(h,j):C?j.sort(C):j;for(var ie=-1,ye=j.length,ge=g[ne++],Ye,Qe,Me,Fe=new x,Ge;++ie=g.length)return R;var ne=[],ie=w[j++];return R.forEach(function(ye,ge){ne.push({key:ye,values:G(ge,j)})}),ie?ne.sort(function(ye,ge){return ie(ye.key,ge.key)}):ne}return h.map=function(R,j){return D(j,R,0)},h.entries=function(R){return G(D(e.map,R,0),0)},h.key=function(R){return g.push(R),h},h.sortKeys=function(R){return w[g.length-1]=R,h},h.sortValues=function(R){return C=R,h},h.rollup=function(R){return L=R,h},h},e.set=function(h){var g=new X;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,g);if(arguments.length===2){if(g==null)for(h in this)this.hasOwnProperty(h)&&this[h].on(C,null);return this}};function ce(h){var g=[],w=new x;function C(){for(var L=g,D=-1,G=L.length,R;++D=0&&(w=h.slice(0,g))!=="xmlns"&&(h=h.slice(g+1)),je.hasOwnProperty(w)?{space:je[w],local:h}:h}},Ue.attr=function(h,g){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(g in h)this.each(ur(g,h[g]));return this}return this.each(ur(h,g))};function ur(h,g){h=e.ns.qualify(h);function w(){this.removeAttribute(h)}function C(){this.removeAttributeNS(h.space,h.local)}function L(){this.setAttribute(h,g)}function D(){this.setAttributeNS(h.space,h.local,g)}function G(){var j=g.apply(this,arguments);j==null?this.removeAttribute(h):this.setAttribute(h,j)}function R(){var j=g.apply(this,arguments);j==null?this.removeAttributeNS(h.space,h.local):this.setAttributeNS(h.space,h.local,j)}return g==null?h.local?C:w:typeof g=="function"?h.local?R:G:h.local?D:L}function er(h){return h.trim().replace(/\s+/g," ")}Ue.classed=function(h,g){if(arguments.length<2){if(typeof h=="string"){var w=this.node(),C=(h=Pr(h)).length,L=-1;if(g=w.classList){for(;++L=0;)(D=w[C])&&(L&&L!==D.nextSibling&&L.parentNode.insertBefore(D,L),L=D);return this},Ue.sort=function(h){h=lr.apply(this,arguments);for(var g=-1,w=this.length;++g=g&&(g=L+1);!(j=G[g])&&++g0&&(h=h.slice(0,L));var G=Hr.get(h);G&&(h=G,D=jr);function R(){var ie=this[C];ie&&(this.removeEventListener(h,ie,ie.$),delete this[C])}function j(){var ie=D(g,t(arguments));R.call(this),this.addEventListener(h,this[C]=ie,ie.$=w),ie._=g}function ne(){var ie=new RegExp("^__on([^.]+)"+e.requote(h)+"$"),ye;for(var ge in this)if(ye=ge.match(ie)){var Ye=this[ge];this.removeEventListener(ye[1],Ye,Ye.$),delete this[ge]}}return L?g?j:R:g?J:ne}var Hr=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Hr.forEach(function(h){"on"+h in a&&Hr.remove(h)});function ot(h,g){return function(w){var C=e.event;e.event=w,g[0]=this.__data__;try{h.apply(this,g)}finally{e.event=C}}}function jr(h,g){var w=ot(h,g);return function(C){var L=this,D=C.relatedTarget;(!D||D!==L&&!(D.compareDocumentPosition(L)&8))&&w.call(L,C)}}var at,xt=0;function Xr(h){var g=".dragsuppress-"+ ++xt,w="click"+g,C=e.select(i(h)).on("touchmove"+g,De).on("dragstart"+g,De).on("selectstart"+g,De);if(at==null&&(at="onselectstart"in h?!1:Q(h.style,"userSelect")),at){var L=n(h).style,D=L[at];L[at]="none"}return function(G){if(C.on(g,null),at&&(L[at]=D),G){var R=function(){C.on(w,null)};C.on(w,function(){De(),R()},!0),setTimeout(R,0)}}}e.mouse=function(h){return gr(h,Be())};var nt=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function gr(h,g){g.changedTouches&&(g=g.changedTouches[0]);var w=h.ownerSVGElement||h;if(w.createSVGPoint){var C=w.createSVGPoint();if(nt<0){var L=i(h);if(L.scrollX||L.scrollY){w=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var D=w[0][0].getScreenCTM();nt=!(D.f||D.e),w.remove()}}return nt?(C.x=g.pageX,C.y=g.pageY):(C.x=g.clientX,C.y=g.clientY),C=C.matrixTransform(h.getScreenCTM().inverse()),[C.x,C.y]}var G=h.getBoundingClientRect();return[g.clientX-G.left-h.clientLeft,g.clientY-G.top-h.clientTop]}e.touch=function(h,g,w){if(arguments.length<3&&(w=g,g=Be().changedTouches),g){for(var C=0,L=g.length,D;C0?1:h<0?-1:0}function Ba(h,g,w){return(g[0]-h[0])*(w[1]-h[1])-(g[1]-h[1])*(w[0]-h[0])}function an(h){return h>1?0:h<-1?xr:Math.acos(h)}function Va(h){return h>1?wt:h<-1?-wt:Math.asin(h)}function xn(h){return((h=Math.exp(h))-1/h)/2}function Rn(h){return((h=Math.exp(h))+1/h)/2}function hi(h){return((h=Math.exp(2*h))-1)/(h+1)}function hn(h){return(h=Math.sin(h/2))*h}var Xn=Math.SQRT2,Et=2,Pa=4;e.interpolateZoom=function(h,g){var w=h[0],C=h[1],L=h[2],D=g[0],G=g[1],R=g[2],j=D-w,ne=G-C,ie=j*j+ne*ne,ye,ge;if(ie0&&(dt=dt.transition().duration(G)),dt.call(ar.event)}function Ct(){Fe&&Fe.domain(Me.range().map(function(dt){return(dt-h.x)/h.k}).map(Me.invert)),Ke&&Ke.domain(Ge.range().map(function(dt){return(dt-h.y)/h.k}).map(Ge.invert))}function Lt(dt){R++||dt({type:"zoomstart"})}function Vt(dt){Ct(),dt({type:"zoom",scale:h.k,translate:[h.x,h.y]})}function qt(dt){--R||(dt({type:"zoomend"}),w=null)}function Nt(){var dt=this,Yt=Qe.of(dt,arguments),jt=0,va=e.select(i(dt)).on(ne,$n).on(ie,Qn),Ya=Le(e.mouse(dt)),Dn=Xr(dt);Ac.call(dt),Lt(Yt);function $n(){jt=1,it(e.mouse(dt),Ya),Vt(Yt)}function Qn(){va.on(ne,null).on(ie,null),Dn(jt),qt(Yt)}}function ma(){var dt=this,Yt=Qe.of(dt,arguments),jt={},va=0,Ya,Dn=".zoom-"+e.event.changedTouches[0].identifier,$n="touchmove"+Dn,Qn="touchend"+Dn,Li=[],S=e.select(dt),B=Xr(dt);he(),Lt(Yt),S.on(j,null).on(ge,he);function V(){var _e=e.touches(dt);return Ya=h.k,_e.forEach(function(He){He.identifier in jt&&(jt[He.identifier]=Le(He))}),_e}function he(){var _e=e.event.target;e.select(_e).on($n,xe).on(Qn,we),Li.push(_e);for(var He=e.event.changedTouches,or=0,ir=He.length;or1){var Fr=sr[0],yr=sr[1],Pe=Fr[0]-yr[0],fe=Fr[1]-yr[1];va=Pe*Pe+fe*fe}}function xe(){var _e=e.touches(dt),He,or,ir,sr;Ac.call(dt);for(var Qr=0,Fr=_e.length;Qr1?1:g,w=w<0?0:w>1?1:w,L=w<=.5?w*(1+g):w+g-w*g,C=2*w-L;function D(R){return R>360?R-=360:R<0&&(R+=360),R<60?C+(L-C)*R/60:R<180?L:R<240?C+(L-C)*(240-R)/60:C}function G(R){return Math.round(D(R)*255)}return new di(G(h+120),G(h),G(h-120))}e.hcl=en;function en(h,g,w){return this instanceof en?(this.h=+h,this.c=+g,void(this.l=+w)):arguments.length<2?h instanceof en?new en(h.h,h.c,h.l):h instanceof dn?Oo(h.l,h.a,h.b):Oo((h=_t((h=e.rgb(h)).r,h.g,h.b)).l,h.a,h.b):new en(h,g,w)}var lo=en.prototype=new Qa;lo.brighter=function(h){return new en(this.h,this.c,Math.min(100,this.l+nn*(arguments.length?h:1)))},lo.darker=function(h){return new en(this.h,this.c,Math.max(0,this.l-nn*(arguments.length?h:1)))},lo.rgb=function(){return Oi(this.h,this.c,this.l).rgb()};function Oi(h,g,w){return isNaN(h)&&(h=0),isNaN(g)&&(g=0),new dn(w,Math.cos(h*=It)*g,Math.sin(h)*g)}e.lab=dn;function dn(h,g,w){return this instanceof dn?(this.l=+h,this.a=+g,void(this.b=+w)):arguments.length<2?h instanceof dn?new dn(h.l,h.a,h.b):h instanceof en?Oi(h.h,h.c,h.l):_t((h=di(h)).r,h.g,h.b):new dn(h,g,w)}var nn=18,Zn=.95047,fs=1,us=1.08883,kl=dn.prototype=new Qa;kl.brighter=function(h){return new dn(Math.min(100,this.l+nn*(arguments.length?h:1)),this.a,this.b)},kl.darker=function(h){return new dn(Math.max(0,this.l-nn*(arguments.length?h:1)),this.a,this.b)},kl.rgb=function(){return Zu(this.l,this.a,this.b)};function Zu(h,g,w){var C=(h+16)/116,L=C+g/500,D=C-w/200;return L=Yf(L)*Zn,C=Yf(C)*fs,D=Yf(D)*us,new di(ji(3.2404542*L-1.5371385*C-.4985314*D),ji(-.969266*L+1.8760108*C+.041556*D),ji(.0556434*L-.2040259*C+1.0572252*D))}function Oo(h,g,w){return h>0?new en(Math.atan2(w,g)*ta,Math.sqrt(g*g+w*w),h):new en(NaN,NaN,h)}function Yf(h){return h>.206893034?h*h*h:(h-4/29)/7.787037}function Wf(h){return h>.008856?Math.pow(h,1/3):7.787037*h+4/29}function ji(h){return Math.round(255*(h<=.00304?12.92*h:1.055*Math.pow(h,1/2.4)-.055))}e.rgb=di;function di(h,g,w){return this instanceof di?(this.r=~~h,this.g=~~g,void(this.b=~~w)):arguments.length<2?h instanceof di?new di(h.r,h.g,h.b):$t(""+h,di,Ka):new di(h,g,w)}function Bi(h){return new di(h>>16,h>>8&255,h&255)}function Cl(h){return Bi(h)+""}var pi=di.prototype=new Qa;pi.brighter=function(h){h=Math.pow(.7,arguments.length?h:1);var g=this.r,w=this.g,C=this.b,L=30;return!g&&!w&&!C?new di(L,L,L):(g&&g>4,C=C>>4|C,L=j&240,L=L>>4|L,D=j&15,D=D<<4|D):h.length===7&&(C=(j&16711680)>>16,L=(j&65280)>>8,D=j&255)),g(C,L,D))}function ca(h,g,w){var C=Math.min(h/=255,g/=255,w/=255),L=Math.max(h,g,w),D=L-C,G,R,j=(L+C)/2;return D?(R=j<.5?D/(L+C):D/(2-L-C),h==L?G=(g-w)/D+(g0&&j<1?0:G),new fa(G,R,j)}function _t(h,g,w){h=Jn(h),g=Jn(g),w=Jn(w);var C=Wf((.4124564*h+.3575761*g+.1804375*w)/Zn),L=Wf((.2126729*h+.7151522*g+.072175*w)/fs),D=Wf((.0193339*h+.119192*g+.9503041*w)/us);return dn(116*L-16,500*(C-L),200*(L-D))}function Jn(h){return(h/=255)<=.04045?h/12.92:Math.pow((h+.055)/1.055,2.4)}function za(h){var g=parseFloat(h);return h.charAt(h.length-1)==="%"?Math.round(g*2.55):g}var Pn=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});Pn.forEach(function(h,g){Pn.set(h,Bi(g))});function ra(h){return typeof h=="function"?h:function(){return h}}e.functor=ra,e.xhr=Ao(oe);function Ao(h){return function(g,w,C){return arguments.length===2&&typeof w=="function"&&(C=w,w=null),ol(g,w,h,C)}}function ol(h,g,w,C){var L={},D=e.dispatch("beforesend","progress","load","error"),G={},R=new XMLHttpRequest,j=null;self.XDomainRequest&&!("withCredentials"in R)&&/^(http(s)?:)?\/\//.test(h)&&(R=new XDomainRequest),"onload"in R?R.onload=R.onerror=ne:R.onreadystatechange=function(){R.readyState>3&&ne()};function ne(){var ie=R.status,ye;if(!ie&&Qp(R)||ie>=200&&ie<300||ie===304){try{ye=w.call(L,R)}catch(ge){D.error.call(L,ge);return}D.load.call(L,ye)}else D.error.call(L,R)}return R.onprogress=function(ie){var ye=e.event;e.event=ie;try{D.progress.call(L,R)}finally{e.event=ye}},L.header=function(ie,ye){return ie=(ie+"").toLowerCase(),arguments.length<2?G[ie]:(ye==null?delete G[ie]:G[ie]=ye+"",L)},L.mimeType=function(ie){return arguments.length?(g=ie==null?null:ie+"",L):g},L.responseType=function(ie){return arguments.length?(j=ie,L):j},L.response=function(ie){return w=ie,L},["get","post"].forEach(function(ie){L[ie]=function(){return L.send.apply(L,[ie].concat(t(arguments)))}}),L.send=function(ie,ye,ge){if(arguments.length===2&&typeof ye=="function"&&(ge=ye,ye=null),R.open(ie,h,!0),g!=null&&!("accept"in G)&&(G.accept=g+",*/*"),R.setRequestHeader)for(var Ye in G)R.setRequestHeader(Ye,G[Ye]);return g!=null&&R.overrideMimeType&&R.overrideMimeType(g),j!=null&&(R.responseType=j),ge!=null&&L.on("error",ge).on("load",function(Qe){ge(null,Qe)}),D.beforesend.call(L,R),R.send(ye==null?null:ye),L},L.abort=function(){return R.abort(),L},e.rebind(L,D,"on"),C==null?L:L.get(Si(C))}function Si(h){return h.length===1?function(g,w){h(g==null?w:null)}:h}function Qp(h){var g=h.responseType;return g&&g!=="text"?h.response:h.responseText}e.dsv=function(h,g){var w=new RegExp('["'+h+` -]`),C=h.charCodeAt(0);function L(ne,ie,ye){arguments.length<3&&(ye=ie,ie=null);var ge=ol(ne,g,ie==null?D:G(ie),ye);return ge.row=function(Ye){return arguments.length?ge.response((ie=Ye)==null?D:G(Ye)):ie},ge}function D(ne){return L.parse(ne.responseText)}function G(ne){return function(ie){return L.parse(ie.responseText,ne)}}L.parse=function(ne,ie){var ye;return L.parseRows(ne,function(ge,Ye){if(ye)return ye(ge,Ye-1);var Qe=function(Me){for(var Fe={},Ge=ge.length,Ke=0;Ke=Qe)return ge;if(Ke)return Ke=!1,ye;var Dr=Me;if(ne.charCodeAt(Dr)===34){for(var zr=Dr;zr++24?(isFinite(g)&&(clearTimeout(mi),mi=setTimeout(To,g)),Bo=0):(Bo=1,rf(To))}e.timer.flush=function(){Dl(),Ju()};function Dl(){for(var h=Date.now(),g=Mn;g;)h>=g.t&&g.c(h-g.t)&&(g.c=null),g=g.n;return h}function Ju(){for(var h,g=Mn,w=1/0;g;)g.c?(g.t=0;--R)Me.push(L[ne[ye[R]][2]]);for(R=+Ye;R1&&Ba(h[w[C-2]],h[w[C-1]],h[L])<=0;)--C;w[C++]=L}return w.slice(0,C)}function Kp(h,g){return h[0]-g[0]||h[1]-g[1]}e.geom.polygon=function(h){return Ae(h,$u),h};var $u=e.geom.polygon.prototype=[];$u.area=function(){for(var h=-1,g=this.length,w,C=this[g-1],L=0;++hNe)R=R.L;else if(G=g-Pv(R,w),G>Ne){if(!R.R){C=R;break}R=R.R}else{D>-Ne?(C=R.P,L=R):G>-Ne?(C=R,L=R.N):C=L=R;break}var j=Qu(h);if(yi.insert(C,j),!(!C&&!L)){if(C===L){of(C),L=Qu(C.site),yi.insert(j,L),j.edge=L.edge=Jf(C.site,j.site),zi(C),zi(L);return}if(!L){j.edge=Jf(C.site,j.site);return}of(C),of(L);var ne=C.site,ie=ne.x,ye=ne.y,ge=h.x-ie,Ye=h.y-ye,Qe=L.site,Me=Qe.x-ie,Fe=Qe.y-ye,Ge=2*(ge*Fe-Ye*Me),Ke=ge*ge+Ye*Ye,ar=Me*Me+Fe*Fe,Le={x:(Fe*Ke-Ye*ar)/Ge+ie,y:(ge*ar-Me*Ke)/Ge+ye};ql(L.edge,ne,Qe,Le),j.edge=Jf(ne,h,null,Le),L.edge=Jf(h,Qe,null,Le),zi(C),zi(L)}}function Ku(h,g){var w=h.site,C=w.x,L=w.y,D=L-g;if(!D)return C;var G=h.P;if(!G)return-1/0;w=G.site;var R=w.x,j=w.y,ne=j-g;if(!ne)return R;var ie=R-C,ye=1/D-1/ne,ge=ie/ne;return ye?(-ge+Math.sqrt(ge*ge-2*ye*(ie*ie/(-2*ne)-j+ne/2+L-D/2)))/ye+C:(C+R)/2}function Pv(h,g){var w=h.N;if(w)return Ku(w,g);var C=h.site;return C.y===g?C.x:1/0}function ec(h){this.site=h,this.edges=[]}ec.prototype.prepare=function(){for(var h=this.edges,g=h.length,w;g--;)w=h[g].edge,(!w.b||!w.a)&&h.splice(g,1);return h.sort(nf),h.length};function So(h){for(var g=h[0][0],w=h[1][0],C=h[0][1],L=h[1][1],D,G,R,j,ne=Mo,ie=ne.length,ye,ge,Ye,Qe,Me,Fe;ie--;)if(ye=ne[ie],!(!ye||!ye.prepare()))for(Ye=ye.edges,Qe=Ye.length,ge=0;geNe||b(j-G)>Ne)&&(Ye.splice(ge,0,new rc(t1(ye.site,Fe,b(R-g)Ne?{x:g,y:b(D-g)Ne?{x:b(G-L)Ne?{x:w,y:b(D-w)Ne?{x:b(G-C)=-pr)){var ge=j*j+ne*ne,Ye=ie*ie+Fe*Fe,Qe=(Fe*ge-ne*Ye)/ye,Me=(j*Ye-ie*ge)/ye,Fe=Me+R,Ge=af.pop()||new Xf;Ge.arc=h,Ge.site=L,Ge.x=Qe+G,Ge.y=Fe+Math.sqrt(Qe*Qe+Me*Me),Ge.cy=Fe,h.circle=Ge;for(var Ke=null,ar=ll._;ar;)if(Ge.y0)){if(Me/=Ye,Ye<0){if(Me0){if(Me>ge)return;Me>ye&&(ye=Me)}if(Me=w-R,!(!Ye&&Me<0)){if(Me/=Ye,Ye<0){if(Me>ge)return;Me>ye&&(ye=Me)}else if(Ye>0){if(Me0)){if(Me/=Qe,Qe<0){if(Me0){if(Me>ge)return;Me>ye&&(ye=Me)}if(Me=C-j,!(!Qe&&Me<0)){if(Me/=Qe,Qe<0){if(Me>ge)return;Me>ye&&(ye=Me)}else if(Qe>0){if(Me0&&(L.a={x:R+ye*Ye,y:j+ye*Qe}),ge<1&&(L.b={x:R+ge*Ye,y:j+ge*Qe}),L}}}}}}function r1(h){for(var g=Uo,w=e1(h[0][0],h[0][1],h[1][0],h[1][1]),C=g.length,L;C--;)L=g[C],(!Zf(L,h)||!w(L)||b(L.a.x-L.b.x)=D)return;if(ie>ge){if(!C)C={x:Qe,y:G};else if(C.y>=R)return;w={x:Qe,y:R}}else{if(!C)C={x:Qe,y:R};else if(C.y1)if(ie>ge){if(!C)C={x:(G-Ge)/Fe,y:G};else if(C.y>=R)return;w={x:(R-Ge)/Fe,y:R}}else{if(!C)C={x:(R-Ge)/Fe,y:R};else if(C.y=D)return;w={x:D,y:Fe*D+Ge}}else{if(!C)C={x:D,y:Fe*D+Ge};else if(C.x=ie&&Ge.x<=ge&&Ge.y>=ye&&Ge.y<=Ye?[[ie,Ye],[ge,Ye],[ge,ye],[ie,ye]]:[];Ke.point=j[Me]}),ne}function R(j){return j.map(function(ne,ie){return{x:Math.round(C(ne,ie)/Ne)*Ne,y:Math.round(L(ne,ie)/Ne)*Ne,i:ie}})}return G.links=function(j){return fl(R(j)).edges.filter(function(ne){return ne.l&&ne.r}).map(function(ne){return{source:j[ne.l.i],target:j[ne.r.i]}})},G.triangles=function(j){var ne=[];return fl(R(j)).cells.forEach(function(ie,ye){for(var ge=ie.site,Ye=ie.edges.sort(nf),Qe=-1,Me=Ye.length,Fe,Ge,Ke=Ye[Me-1].edge,ar=Ke.l===ge?Ke.r:Ke.l;++Qear&&(ar=ie.x),ie.y>Le&&(Le=ie.y),Ye.push(ie.x),Qe.push(ie.y);else for(Me=0;Mear&&(ar=Dr),zr>Le&&(Le=zr),Ye.push(Dr),Qe.push(zr)}var it=ar-Ge,yt=Le-Ke;it>yt?Le=Ke+it:ar=Ge+yt;function Ct(qt,Nt,ma,_n,Ca,dt,Yt,jt){if(!(isNaN(ma)||isNaN(_n)))if(qt.leaf){var va=qt.x,Ya=qt.y;if(va!=null)if(b(va-ma)+b(Ya-_n)<.01)Lt(qt,Nt,ma,_n,Ca,dt,Yt,jt);else{var Dn=qt.point;qt.x=qt.y=qt.point=null,Lt(qt,Dn,va,Ya,Ca,dt,Yt,jt),Lt(qt,Nt,ma,_n,Ca,dt,Yt,jt)}else qt.x=ma,qt.y=_n,qt.point=Nt}else Lt(qt,Nt,ma,_n,Ca,dt,Yt,jt)}function Lt(qt,Nt,ma,_n,Ca,dt,Yt,jt){var va=(Ca+Yt)*.5,Ya=(dt+jt)*.5,Dn=ma>=va,$n=_n>=Ya,Qn=$n<<1|Dn;qt.leaf=!1,qt=qt.nodes[Qn]||(qt.nodes[Qn]=Ch()),Dn?Ca=va:Yt=va,$n?dt=Ya:jt=Ya,Ct(qt,Nt,ma,_n,Ca,dt,Yt,jt)}var Vt=Ch();if(Vt.add=function(qt){Ct(Vt,qt,+ye(qt,++Me),+ge(qt,Me),Ge,Ke,ar,Le)},Vt.visit=function(qt){$f(qt,Vt,Ge,Ke,ar,Le)},Vt.find=function(qt){return Nv(Vt,qt[0],qt[1],Ge,Ke,ar,Le)},Me=-1,g==null){for(;++MeD||ge>G||Ye=Dr,yt=w>=zr,Ct=yt<<1|it,Lt=Ct+4;Ctw&&(D=g.slice(w,D),R[G]?R[G]+=D:R[++G]=D),(C=C[0])===(L=L[0])?R[G]?R[G]+=L:R[++G]=L:(R[++G]=null,j.push({i:G,x:Ei(C,L)})),w=Qf.lastIndex;return w=0&&!(C=e.interpolators[w](h,g)););return C}e.interpolators=[function(h,g){var w=typeof g;return(w==="string"?Pn.has(g.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(g)?Eo:Sn:g instanceof Qa?Eo:Array.isArray(g)?sf:w==="object"&&isNaN(g)?Lh:Ei)(h,g)}],e.interpolateArray=sf;function sf(h,g){var w=[],C=[],L=h.length,D=g.length,G=Math.min(h.length,g.length),R;for(R=0;R=0?h.slice(0,g):h,C=g>=0?h.slice(g+1):"in";return w=Iv.get(w)||ac,C=Ov.get(C)||oe,l1(C(w.apply(null,r.call(arguments,1))))};function l1(h){return function(g){return g<=0?0:g>=1?1:h(g)}}function so(h){return function(g){return 1-h(1-g)}}function Aa(h){return function(g){return .5*(g<.5?h(2*g):2-h(2-2*g))}}function Bv(h){return h*h}function zv(h){return h*h*h}function Zi(h){if(h<=0)return 0;if(h>=1)return 1;var g=h*h,w=g*h;return 4*(h<.5?w:3*(h-g)+w-.75)}function Gv(h){return function(g){return Math.pow(g,h)}}function Uv(h){return 1-Math.cos(h*wt)}function s1(h){return Math.pow(2,10*(h-1))}function f1(h){return 1-Math.sqrt(1-h*h)}function u1(h,g){var w;return arguments.length<2&&(g=.45),arguments.length?w=g/ht*Math.asin(1/h):(h=1,w=g/4),function(C){return 1+h*Math.pow(2,-10*C)*Math.sin((C-w)*ht/g)}}function c1(h){return h||(h=1.70158),function(g){return g*g*((h+1)*g-h)}}function Kf(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=Hv;function Hv(h,g){h=e.hcl(h),g=e.hcl(g);var w=h.h,C=h.c,L=h.l,D=g.h-w,G=g.c-C,R=g.l-L;return isNaN(G)&&(G=0,C=isNaN(C)?g.c:C),isNaN(D)?(D=0,w=isNaN(w)?g.h:w):D>180?D-=360:D<-180&&(D+=360),function(j){return Oi(w+D*j,C+G*j,L+R*j)+""}}e.interpolateHsl=v1;function v1(h,g){h=e.hsl(h),g=e.hsl(g);var w=h.h,C=h.s,L=h.l,D=g.h-w,G=g.s-C,R=g.l-L;return isNaN(G)&&(G=0,C=isNaN(C)?g.s:C),isNaN(D)?(D=0,w=isNaN(w)?g.h:w):D>180?D-=360:D<-180&&(D+=360),function(j){return Ka(w+D*j,C+G*j,L+R*j)+""}}e.interpolateLab=Vv;function Vv(h,g){h=e.lab(h),g=e.lab(g);var w=h.l,C=h.a,L=h.b,D=g.l-w,G=g.a-C,R=g.b-L;return function(j){return Zu(w+D*j,C+G*j,L+R*j)+""}}e.interpolateRound=nc;function nc(h,g){return g-=h,function(w){return Math.round(h+g*w)}}e.transform=function(h){var g=a.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 Dh(C?C.matrix:ms)})(h)};function Dh(h){var g=[h.a,h.b],w=[h.c,h.d],C=Fh(g),L=Rl(g,w),D=Fh(ki(w,g,-L))||0;g[0]*w[1]180?g+=360:g-h>180&&(h+=360),C.push({i:w.push(Pl(w)+"rotate(",null,")")-2,x:Ei(h,g)})):g&&w.push(Pl(w)+"rotate("+g+")")}function jv(h,g,w,C){h!==g?C.push({i:w.push(Pl(w)+"skewX(",null,")")-2,x:Ei(h,g)}):g&&w.push(Pl(w)+"skewX("+g+")")}function Xv(h,g,w,C){if(h[0]!==g[0]||h[1]!==g[1]){var L=w.push(Pl(w)+"scale(",null,",",null,")");C.push({i:L-4,x:Ei(h[0],g[0])},{i:L-2,x:Ei(h[1],g[1])})}else(g[0]!==1||g[1]!==1)&&w.push(Pl(w)+"scale("+g+")")}function ic(h,g){var w=[],C=[];return h=e.transform(h),g=e.transform(g),Yv(h.translate,g.translate,w,C),Wv(h.rotate,g.rotate,w,C),jv(h.skew,g.skew,w,C),Xv(h.scale,g.scale,w,C),h=g=null,function(L){for(var D=-1,G=C.length,R;++D0?D=Le:(w.c=null,w.t=NaN,w=null,g.end({type:"end",alpha:D=0})):Le>0&&(g.start({type:"start",alpha:D=Le}),w=zo(h.tick)),h):D},h.start=function(){var Le,Dr=Ye.length,zr=Qe.length,it=C[0],yt=C[1],Ct,Lt;for(Le=0;Le=0;)D.push(ie=ne[j]),ie.parent=R,ie.depth=R.depth+1;w&&(R.value=0),R.children=ne}else w&&(R.value=+w.call(C,R,R.depth)||0),delete R.children;return Ho(L,function(ye){var ge,Ye;h&&(ge=ye.children)&&ge.sort(h),w&&(Ye=ye.parent)&&(Ye.value+=ye.value)}),G}return C.sort=function(L){return arguments.length?(h=L,C):h},C.children=function(L){return arguments.length?(g=L,C):g},C.value=function(L){return arguments.length?(w=L,C):w},C.revalue=function(L){return w&&(ru(L,function(D){D.children&&(D.value=0)}),Ho(L,function(D){var G;D.children||(D.value=+w.call(C,D,D.depth)||0),(G=D.parent)&&(G.value+=D.value)})),L},C};function ys(h,g){return e.rebind(h,g,"sort","children","value"),h.nodes=h,h.links=y1,h}function ru(h,g){for(var w=[h];(h=w.pop())!=null;)if(g(h),(L=h.children)&&(C=L.length))for(var C,L;--C>=0;)w.push(L[C])}function Ho(h,g){for(var w=[h],C=[];(h=w.pop())!=null;)if(C.push(h),(G=h.children)&&(D=G.length))for(var L=-1,D,G;++LL&&(L=R),C.push(R)}for(G=0;GC&&(w=g,C=L);return w}function x1(h){return h.reduce(_1,0)}function _1(h,g){return h+g[1]}e.layout.histogram=function(){var h=!0,g=Number,w=A1,C=w1;function L(D,ge){for(var R=[],j=D.map(g,this),ne=w.call(this,j,ge),ie=C.call(this,ne,j,ge),ye,ge=-1,Ye=j.length,Qe=ie.length-1,Me=h?1:1/Ye,Fe;++ge0)for(ge=-1;++ge=ne[0]&&Fe<=ne[1]&&(ye=R[e.bisect(ie,Fe,1,Qe)-1],ye.y+=Me,ye.push(D[ge]));return R}return L.value=function(D){return arguments.length?(g=D,L):g},L.range=function(D){return arguments.length?(w=ra(D),L):w},L.bins=function(D){return arguments.length?(C=typeof D=="number"?function(G){return qh(G,D)}:ra(D),L):C},L.frequency=function(D){return arguments.length?(h=!!D,L):h},L};function w1(h,g){return qh(h,Math.ceil(Math.log(g.length)/Math.LN2+1))}function qh(h,g){for(var w=-1,C=+h[0],L=(h[1]-C)/g,D=[];++w<=g;)D[w]=L*w+C;return D}function A1(h){return[e.min(h),e.max(h)]}e.layout.pack=function(){var h=e.layout.hierarchy().sort(tu),g=0,w=[1,1],C;function L(D,G){var R=h.call(this,D,G),j=R[0],ne=w[0],ie=w[1],ye=C==null?Math.sqrt:typeof C=="function"?C:function(){return C};if(j.x=j.y=0,Ho(j,function(Ye){Ye.r=+ye(Ye.value)}),Ho(j,Ph),g){var ge=g*(C?1:Math.max(2*j.r/ne,2*j.r/ie))/2;Ho(j,function(Ye){Ye.r+=ge}),Ho(j,Ph),Ho(j,function(Ye){Ye.r-=ge})}return Nh(j,ne/2,ie/2,C?1:1/Math.max(2*j.r/ne,2*j.r/ie)),R}return L.size=function(D){return arguments.length?(w=D,L):w},L.radius=function(D){return arguments.length?(C=D==null||typeof D=="function"?D:+D,L):C},L.padding=function(D){return arguments.length?(g=+D,L):g},ys(L,h)};function tu(h,g){return h.value-g.value}function i0(h,g){var w=h._pack_next;h._pack_next=g,g._pack_prev=h,g._pack_next=w,w._pack_prev=g}function lc(h,g){h._pack_next=g,g._pack_prev=h}function Rh(h,g){var w=g.x-h.x,C=g.y-h.y,L=h.r+g.r;return .999*L*L>w*w+C*C}function Ph(h){if(!(g=h.children)||!(ge=g.length))return;var g,w=1/0,C=-1/0,L=1/0,D=-1/0,G,R,j,ne,ie,ye,ge;function Ye(Le){w=Math.min(Le.x-Le.r,w),C=Math.max(Le.x+Le.r,C),L=Math.min(Le.y-Le.r,L),D=Math.max(Le.y+Le.r,D)}if(g.forEach(T1),G=g[0],G.x=-G.r,G.y=0,Ye(G),ge>1&&(R=g[1],R.x=R.r,R.y=0,Ye(R),ge>2))for(j=g[2],Tg(G,R,j),Ye(j),i0(G,j),G._pack_prev=j,i0(j,R),R=G._pack_next,ne=3;neFe.x&&(Fe=Dr),Dr.depth>Ge.depth&&(Ge=Dr)});var Ke=g(Me,Fe)/2-Me.x,ar=w[0]/(Fe.x+g(Fe,Me)/2+Ke),Le=w[1]/(Ge.depth||1);ru(Ye,function(Dr){Dr.x=(Dr.x+Ke)*ar,Dr.y=Dr.depth*Le})}return ge}function D(ie){for(var ye={A:null,children:[ie]},ge=[ye],Ye;(Ye=ge.pop())!=null;)for(var Qe=Ye.children,Me,Fe=0,Ge=Qe.length;Fe0&&(k1(o0(Me,ie,ge),ie,Dr),Ge+=Dr,Ke+=Dr),ar+=Me.m,Ge+=Ye.m,Le+=Fe.m,Ke+=Qe.m;Me&&!E1(Qe)&&(Qe.t=Me,Qe.m+=ar-Ke),Ye&&!S1(Fe)&&(Fe.t=Ye,Fe.m+=Ge-Le,ge=ie)}return ge}function ne(ie){ie.x*=w[0],ie.y=ie.depth*w[1]}return L.separation=function(ie){return arguments.length?(g=ie,L):g},L.size=function(ie){return arguments.length?(C=(w=ie)==null?ne:null,L):C?null:w},L.nodeSize=function(ie){return arguments.length?(C=(w=ie)==null?null:ne,L):C?w:null},ys(L,h)};function Ih(h,g){return h.parent==g.parent?1:2}function S1(h){var g=h.children;return g.length?g[0]:h.t}function E1(h){var g=h.children,w;return(w=g.length)?g[w-1]:h.t}function k1(h,g,w){var C=w/(g.i-h.i);g.c-=C,g.s+=w,h.c+=C,g.z+=w,g.m+=w}function au(h){for(var g=0,w=0,C=h.children,L=C.length,D;--L>=0;)D=C[L],D.z+=g,D.m+=g,g+=D.s+(w+=D.c)}function o0(h,g,w){return h.a.parent===g.parent?h.a:w}e.layout.cluster=function(){var h=e.layout.hierarchy().sort(null).value(null),g=Ih,w=[1,1],C=!1;function L(D,G){var R=h.call(this,D,G),j=R[0],ne,ie=0;Ho(j,function(Me){var Fe=Me.children;Fe&&Fe.length?(Me.x=l0(Fe),Me.y=Bn(Fe)):(Me.x=ne?ie+=g(Me,ne):0,Me.y=0,ne=Me)});var ye=Oh(j),ge=Bh(j),Ye=ye.x-g(ye,ge)/2,Qe=ge.x+g(ge,ye)/2;return Ho(j,C?function(Me){Me.x=(Me.x-j.x)*w[0],Me.y=(j.y-Me.y)*w[1]}:function(Me){Me.x=(Me.x-Ye)/(Qe-Ye)*w[0],Me.y=(1-(j.y?Me.y/j.y:1))*w[1]}),R}return L.separation=function(D){return arguments.length?(g=D,L):g},L.size=function(D){return arguments.length?(C=(w=D)==null,L):C?null:w},L.nodeSize=function(D){return arguments.length?(C=(w=D)!=null,L):C?w:null},ys(L,h)};function Bn(h){return 1+e.max(h,function(g){return g.y})}function l0(h){return h.reduce(function(g,w){return g+w.x},0)/h.length}function Oh(h){var g=h.children;return g&&g.length?Oh(g[0]):h}function Bh(h){var g=h.children,w;return g&&(w=g.length)?Bh(g[w-1]):h}e.layout.treemap=function(){var h=e.layout.hierarchy(),g=Math.round,w=[1,1],C=null,L=s0,D=!1,G,R="squarify",j=.5*(1+Math.sqrt(5));function ne(Me,Fe){for(var Ge=-1,Ke=Me.length,ar,Le;++Ge0;)Ke.push(Le=ar[yt-1]),Ke.area+=Le.area,R!=="squarify"||(zr=ge(Ke,it))<=Dr?(ar.pop(),Dr=zr):(Ke.area-=Ke.pop().area,Ye(Ke,it,Ge,!1),it=Math.min(Ge.dx,Ge.dy),Ke.length=Ke.area=0,Dr=1/0);Ke.length&&(Ye(Ke,it,Ge,!0),Ke.length=Ke.area=0),Fe.forEach(ie)}}function ye(Me){var Fe=Me.children;if(Fe&&Fe.length){var Ge=L(Me),Ke=Fe.slice(),ar,Le=[];for(ne(Ke,Ge.dx*Ge.dy/Me.value),Le.area=0;ar=Ke.pop();)Le.push(ar),Le.area+=ar.area,ar.z!=null&&(Ye(Le,ar.z?Ge.dx:Ge.dy,Ge,!Ke.length),Le.length=Le.area=0);Fe.forEach(ye)}}function ge(Me,Fe){for(var Ge=Me.area,Ke,ar=0,Le=1/0,Dr=-1,zr=Me.length;++Drar&&(ar=Ke));return Ge*=Ge,Fe*=Fe,Ge?Math.max(Fe*ar*j/Ge,Ge/(Fe*Le*j)):1/0}function Ye(Me,Fe,Ge,Ke){var ar=-1,Le=Me.length,Dr=Ge.x,zr=Ge.y,it=Fe?g(Me.area/Fe):0,yt;if(Fe==Ge.dx){for((Ke||it>Ge.dy)&&(it=Ge.dy);++arGe.dx)&&(it=Ge.dx);++ar1);return h+g*C*Math.sqrt(-2*Math.log(D)/D)}},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,w=0;w2?Lo:C1,ne=C?Jv:Zv;return L=j(h,g,ne,w),D=j(g,h,ne,ul),R}function R(j){return L(j)}return R.invert=function(j){return D(j)},R.domain=function(j){return arguments.length?(h=j.map(Number),G()):h},R.range=function(j){return arguments.length?(g=j,G()):g},R.rangeRound=function(j){return R.range(j).interpolate(nc)},R.clamp=function(j){return arguments.length?(C=j,G()):C},R.interpolate=function(j){return arguments.length?(w=j,G()):w},R.ticks=function(j){return _s(h,j)},R.tickFormat=function(j,ne){return d3_scale_linearTickFormat(h,j,ne)},R.nice=function(j){return uc(h,j),G()},R.copy=function(){return Gh(h,g,w,C)},G()}function fo(h,g){return e.rebind(h,g,"range","rangeRound","interpolate","clamp")}function uc(h,g){return cl(h,Ta(Ji(h,g)[2])),cl(h,Ta(Ji(h,g)[2])),h}function Ji(h,g){g==null&&(g=10);var w=sc(h),C=w[1]-w[0],L=Math.pow(10,Math.floor(Math.log(C/g)/Math.LN10)),D=g/C*L;return D<=.15?L*=10:D<=.35?L*=5:D<=.75&&(L*=2),w[0]=Math.ceil(w[0]/L)*L,w[1]=Math.floor(w[1]/L)*L+L*.5,w[2]=L,w}function _s(h,g){return e.range.apply(e,Ji(h,g))}var nu={s:1,g:1,p:1,r:1,e:1};function uf(h){return-Math.floor(Math.log(h)/Math.LN10+.01)}function cc(h,g){var w=uf(g[2]);return h in nu?Math.abs(w-uf(Math.max(b(g[0]),b(g[1]))))+ +(h!=="e"):w-(h==="%")*2}e.scale.log=function(){return cf(e.scale.linear().domain([0,1]),10,!0,[1,10])};function cf(h,g,w,C){function L(R){return(w?Math.log(R<0?0:R):-Math.log(R>0?0:-R))/Math.log(g)}function D(R){return w?Math.pow(g,R):-Math.pow(g,-R)}function G(R){return h(L(R))}return G.invert=function(R){return D(h.invert(R))},G.domain=function(R){return arguments.length?(w=R[0]>=0,h.domain((C=R.map(Number)).map(L)),G):C},G.base=function(R){return arguments.length?(g=+R,h.domain(C.map(L)),G):g},G.nice=function(){var R=cl(C.map(L),w?Math:ws);return h.domain(R),C=R.map(D),G},G.ticks=function(){var R=sc(C),j=[],ne=R[0],ie=R[1],ye=Math.floor(L(ne)),ge=Math.ceil(L(ie)),Ye=g%1?2:g;if(isFinite(ge-ye)){if(w){for(;ye0;Qe--)j.push(D(ye)*Qe);for(ye=0;j[ye]ie;ge--);j=j.slice(ye,ge)}return j},G.copy=function(){return cf(h.copy(),g,w,C)},fo(G,h)}var ws={floor:function(h){return-Math.ceil(-h)},ceil:function(h){return-Math.floor(-h)}};e.scale.pow=function(){return vc(e.scale.linear(),1,[0,1])};function vc(h,g,w){var C=vf(g),L=vf(1/g);function D(G){return h(C(G))}return D.invert=function(G){return L(h.invert(G))},D.domain=function(G){return arguments.length?(h.domain((w=G.map(Number)).map(C)),D):w},D.ticks=function(G){return _s(w,G)},D.tickFormat=function(G,R){return d3_scale_linearTickFormat(w,G,R)},D.nice=function(G){return D.domain(uc(w,G))},D.exponent=function(G){return arguments.length?(C=vf(g=G),L=vf(1/g),h.domain(w.map(C)),D):g},D.copy=function(){return vc(h.copy(),g,w)},fo(D,h)}function vf(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 hc([],{t:"range",a:[[]]})};function hc(h,g){var w,C,L;function D(R){return C[((w.get(R)||(g.t==="range"?w.set(R,h.push(R)):NaN))-1)%C.length]}function G(R,j){return e.range(h.length).map(function(ne){return R+j*ne})}return D.domain=function(R){if(!arguments.length)return h;h=[],w=new x;for(var j=-1,ne=R.length,ie;++j0?w[D-1]:h[0],Dge?0:1;if(ie=Tt)return j(ie,Qe)+(ne?j(ne,1-Qe):"")+"Z";var Me,Fe,Ge,Ke,ar=0,Le=0,Dr,zr,it,yt,Ct,Lt,Vt,qt,Nt=[];if((Ke=(+G.apply(this,arguments)||0)/2)&&(Ge=C===hf?Math.sqrt(ne*ne+ie*ie):+C.apply(this,arguments),Qe||(Le*=-1),ie&&(Le=Va(Ge/ie*Math.sin(Ke))),ne&&(ar=Va(Ge/ne*Math.sin(Ke)))),ie){Dr=ie*Math.cos(ye+Le),zr=ie*Math.sin(ye+Le),it=ie*Math.cos(ge-Le),yt=ie*Math.sin(ge-Le);var ma=Math.abs(ge-ye-2*Le)<=xr?0:1;if(Le&&pf(Dr,zr,it,yt)===Qe^ma){var _n=(ye+ge)/2;Dr=ie*Math.cos(_n),zr=ie*Math.sin(_n),it=yt=null}}else Dr=zr=0;if(ne){Ct=ne*Math.cos(ge-ar),Lt=ne*Math.sin(ge-ar),Vt=ne*Math.cos(ye+ar),qt=ne*Math.sin(ye+ar);var Ca=Math.abs(ye-ge+2*ar)<=xr?0:1;if(ar&&pf(Ct,Lt,Vt,qt)===1-Qe^Ca){var dt=(ye+ge)/2;Ct=ne*Math.cos(dt),Lt=ne*Math.sin(dt),Vt=qt=null}}else Ct=Lt=0;if(Ye>Ne&&(Me=Math.min(Math.abs(ie-ne)/2,+w.apply(this,arguments)))>.001){Fe=ne0?0:1}function mf(h,g,w,C,L){var D=h[0]-g[0],G=h[1]-g[1],R=(L?C:-C)/Math.sqrt(D*D+G*G),j=R*G,ne=-R*D,ie=h[0]+j,ye=h[1]+ne,ge=g[0]+j,Ye=g[1]+ne,Qe=(ie+ge)/2,Me=(ye+Ye)/2,Fe=ge-ie,Ge=Ye-ye,Ke=Fe*Fe+Ge*Ge,ar=w-C,Le=ie*Ye-ge*ye,Dr=(Ge<0?-1:1)*Math.sqrt(Math.max(0,ar*ar*Ke-Le*Le)),zr=(Le*Ge-Fe*Dr)/Ke,it=(-Le*Fe-Ge*Dr)/Ke,yt=(Le*Ge+Fe*Dr)/Ke,Ct=(-Le*Fe+Ge*Dr)/Ke,Lt=zr-Qe,Vt=it-Me,qt=yt-Qe,Nt=Ct-Me;return Lt*Lt+Vt*Vt>qt*qt+Nt*Nt&&(zr=yt,it=Ct),[[zr-j,it-ne],[zr*w/ar,it*w/ar]]}function yf(){return!0}function bc(h){var g=Go,w=cs,C=yf,L=Ci,D=L.key,G=.7;function R(j){var ne=[],ie=[],ye=-1,ge=j.length,Ye,Qe=ra(g),Me=ra(w);function Fe(){ne.push("M",L(h(ie),G))}for(;++ye1?h.join("L"):h+"Z"}function gf(h){return h.join("L")+"Z"}function vl(h){for(var g=0,w=h.length,C=h[0],L=[C[0],",",C[1]];++g1&&L.push("H",C[0]),L.join("")}function cu(h){for(var g=0,w=h.length,C=h[0],L=[C[0],",",C[1]];++g1){R=g[1],D=h[j],j++,C+="C"+(L[0]+G[0])+","+(L[1]+G[1])+","+(D[0]-R[0])+","+(D[1]-R[1])+","+D[0]+","+D[1];for(var ne=2;ne9&&(D=w*3/Math.sqrt(D),G[R]=D*C,G[R+1]=D*L));for(R=-1;++R<=j;)D=(h[Math.min(j,R+1)][0]-h[Math.max(0,R-1)][0])/(6*(1+G[R]*G[R])),g.push([D||0,G[R]*D||0]);return g}function v0(h){return h.length<3?Ci(h):h[0]+Vo(h,D1(h))}e.svg.line.radial=function(){var h=bc(xc);return h.radius=h.x,delete h.x,h.angle=h.y,delete h.y,h};function xc(h){for(var g,w=-1,C=h.length,L,D;++wxr)+",1 "+ye}function ne(ie,ye,ge,Ye){return"Q 0,0 "+Ye}return D.radius=function(ie){return arguments.length?(w=ra(ie),D):w},D.source=function(ie){return arguments.length?(h=ra(ie),D):h},D.target=function(ie){return arguments.length?(g=ra(ie),D):g},D.startAngle=function(ie){return arguments.length?(C=ra(ie),D):C},D.endAngle=function(ie){return arguments.length?(L=ra(ie),D):L},D};function hu(h){return h.radius}e.svg.diagonal=function(){var h=Uh,g=vo,w=Hh;function C(L,D){var G=h.call(this,L,D),R=g.call(this,L,D),j=(G.y+R.y)/2,ne=[G,{x:G.x,y:j},{x:R.x,y:j},R];return ne=ne.map(w),"M"+ne[0]+"C"+ne[1]+" "+ne[2]+" "+ne[3]}return C.source=function(L){return arguments.length?(h=ra(L),C):h},C.target=function(L){return arguments.length?(g=ra(L),C):g},C.projection=function(L){return arguments.length?(w=L,C):w},C};function Hh(h){return[h.x,h.y]}e.svg.diagonal.radial=function(){var h=e.svg.diagonal(),g=Hh,w=h.projection;return h.projection=function(C){return arguments.length?w(F1(g=C)):g},h};function F1(h){return function(){var g=h.apply(this,arguments),w=g[0],C=g[1]-wt;return[w*Math.cos(C),w*Math.sin(C)]}}e.svg.symbol=function(){var h=R1,g=q1;function w(C,L){return(Yh.get(h.call(this,C,L))||Vh)(g.call(this,C,L))}return w.type=function(C){return arguments.length?(h=ra(C),w):h},w.size=function(C){return arguments.length?(g=ra(C),w):g},w};function q1(){return 64}function R1(){return"circle"}function Vh(h){var g=Math.sqrt(h/xr);return"M0,"+g+"A"+g+","+g+" 0 1,1 0,"+-g+"A"+g+","+g+" 0 1,1 0,"+g+"Z"}var Yh=e.map({circle:Vh,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*Wh)),w=g*Wh;return"M0,"+-g+"L"+w+",0 0,"+g+" "+-w+",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/wc),w=g*wc/2;return"M0,"+w+"L"+g+","+-w+" "+-g+","+-w+"Z"},"triangle-up":function(h){var g=Math.sqrt(h/wc),w=g*wc/2;return"M0,"+-w+"L"+g+","+w+" "+-g+","+w+"Z"}});e.svg.symbolTypes=Yh.keys();var wc=Math.sqrt(3),Wh=Math.tan(30*It);Ue.transition=function(h){for(var g=ml||++xf,w=pu(h),C=[],L,D,G=Il||{time:Date.now(),ease:Zi,delay:0,duration:250},R=-1,j=this.length;++R0;)ye[--Ke].call(h,Ge);if(Fe>=1)return G.event&&G.event.end.call(h,h.__data__,g),--D.count?delete D[C]:delete h[w],1}G||(R=L.time,j=zo(ge,0,R),G=D[C]={tween:new x,time:R,timer:j,delay:L.delay,duration:L.duration,ease:L.ease,index:g},L=null,++D.count)}e.svg.axis=function(){var h=e.scale.linear(),g=_f,w=6,C=6,L=3,D=[10],G=null,R;function j(ne){ne.each(function(){var ie=e.select(this),ye=this.__chart__||h,ge=this.__chart__=h.copy(),Ye=G==null?ge.ticks?ge.ticks.apply(ge,D):ge.domain():G,Qe=R==null?ge.tickFormat?ge.tickFormat.apply(ge,D):oe:R,Me=ie.selectAll(".tick").data(Ye,ge),Fe=Me.enter().insert("g",".domain").attr("class","tick").style("opacity",Ne),Ge=e.transition(Me.exit()).style("opacity",Ne).remove(),Ke=e.transition(Me.order()).style("opacity",1),ar=Math.max(w,0)+L,Le,Dr=fc(ge),zr=ie.selectAll(".domain").data([0]),it=(zr.enter().append("path").attr("class","domain"),e.transition(zr));Fe.append("line"),Fe.append("text");var yt=Fe.select("line"),Ct=Ke.select("line"),Lt=Me.select("text").text(Qe),Vt=Fe.select("text"),qt=Ke.select("text"),Nt=g==="top"||g==="left"?-1:1,ma,_n,Ca,dt;if(g==="bottom"||g==="top"?(Le=yu,ma="x",Ca="y",_n="x2",dt="y2",Lt.attr("dy",Nt<0?"0em":".71em").style("text-anchor","middle"),it.attr("d","M"+Dr[0]+","+Nt*C+"V0H"+Dr[1]+"V"+Nt*C)):(Le=gu,ma="y",Ca="x",_n="y2",dt="x2",Lt.attr("dy",".32em").style("text-anchor",Nt<0?"end":"start"),it.attr("d","M"+Nt*C+","+Dr[0]+"H0V"+Dr[1]+"H"+Nt*C)),yt.attr(dt,Nt*w),Vt.attr(Ca,Nt*ar),Ct.attr(_n,0).attr(dt,Nt*w),qt.attr(ma,0).attr(Ca,Nt*ar),ge.rangeBand){var Yt=ge,jt=Yt.rangeBand()/2;ye=ge=function(va){return Yt(va)+jt}}else ye.rangeBand?ye=ge:Ge.call(Le,ge,ye);Fe.call(Le,ye,ge),Ke.call(Le,ge,ge)})}return j.scale=function(ne){return arguments.length?(h=ne,j):h},j.orient=function(ne){return arguments.length?(g=ne in mu?ne+"":_f,j):g},j.ticks=function(){return arguments.length?(D=t(arguments),j):D},j.tickValues=function(ne){return arguments.length?(G=ne,j):G},j.tickFormat=function(ne){return arguments.length?(R=ne,j):R},j.tickSize=function(ne){var ie=arguments.length;return ie?(w=+ne,C=+arguments[ie-1],j):w},j.innerTickSize=function(ne){return arguments.length?(w=+ne,j):w},j.outerTickSize=function(ne){return arguments.length?(C=+ne,j):C},j.tickPadding=function(ne){return arguments.length?(L=+ne,j):L},j.tickSubdivide=function(){return arguments.length&&j},j};var _f="bottom",mu={top:1,right:1,bottom:1,left:1};function yu(h,g,w){h.attr("transform",function(C){var L=g(C);return"translate("+(isFinite(L)?L:w(C))+",0)"})}function gu(h,g,w){h.attr("transform",function(C){var L=g(C);return"translate(0,"+(isFinite(L)?L:w(C))+")"})}e.svg.brush=function(){var h=Ee(ie,"brushstart","brush","brushend"),g=null,w=null,C=[0,0],L=[0,0],D,G,R=!0,j=!0,ne=Ms[0];function ie(Me){Me.each(function(){var Fe=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),Ge=Fe.selectAll(".background").data([0]);Ge.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Fe.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Ke=Fe.selectAll(".resize").data(ne,oe);Ke.exit().remove(),Ke.enter().append("g").attr("class",function(zr){return"resize "+zr}).style("cursor",function(zr){return bu[zr]}).append("rect").attr("x",function(zr){return/[ew]$/.test(zr)?-3:null}).attr("y",function(zr){return/^[ns]/.test(zr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Ke.style("display",ie.empty()?"none":null);var ar=e.transition(Fe),Le=e.transition(Ge),Dr;g&&(Dr=fc(g),Le.attr("x",Dr[0]).attr("width",Dr[1]-Dr[0]),ge(ar)),w&&(Dr=fc(w),Le.attr("y",Dr[0]).attr("height",Dr[1]-Dr[0]),Ye(ar)),ye(ar)})}ie.event=function(Me){Me.each(function(){var Fe=h.of(this,arguments),Ge={x:C,y:L,i:D,j:G},Ke=this.__chart__||Ge;this.__chart__=Ge,ml?e.select(this).transition().each("start.brush",function(){D=Ke.i,G=Ke.j,C=Ke.x,L=Ke.y,Fe({type:"brushstart"})}).tween("brush:brush",function(){var ar=sf(C,Ge.x),Le=sf(L,Ge.y);return D=G=null,function(Dr){C=Ge.x=ar(Dr),L=Ge.y=Le(Dr),Fe({type:"brush",mode:"resize"})}}).each("end.brush",function(){D=Ge.i,G=Ge.j,Fe({type:"brush",mode:"resize"}),Fe({type:"brushend"})}):(Fe({type:"brushstart"}),Fe({type:"brush",mode:"resize"}),Fe({type:"brushend"}))})};function ye(Me){Me.selectAll(".resize").attr("transform",function(Fe){return"translate("+C[+/e$/.test(Fe)]+","+L[+/^s/.test(Fe)]+")"})}function ge(Me){Me.select(".extent").attr("x",C[0]),Me.selectAll(".extent,.n>rect,.s>rect").attr("width",C[1]-C[0])}function Ye(Me){Me.select(".extent").attr("y",L[0]),Me.selectAll(".extent,.e>rect,.w>rect").attr("height",L[1]-L[0])}function Qe(){var Me=this,Fe=e.select(e.event.target),Ge=h.of(Me,arguments),Ke=e.select(Me),ar=Fe.datum(),Le=!/^(n|s)$/.test(ar)&&g,Dr=!/^(e|w)$/.test(ar)&&w,zr=Fe.classed("extent"),it=Xr(Me),yt,Ct=e.mouse(Me),Lt,Vt=e.select(i(Me)).on("keydown.brush",ma).on("keyup.brush",_n);if(e.event.changedTouches?Vt.on("touchmove.brush",Ca).on("touchend.brush",Yt):Vt.on("mousemove.brush",Ca).on("mouseup.brush",Yt),Ke.interrupt().selectAll("*").interrupt(),zr)Ct[0]=C[0]-Ct[0],Ct[1]=L[0]-Ct[1];else if(ar){var qt=+/w$/.test(ar),Nt=+/^n/.test(ar);Lt=[C[1-qt]-Ct[0],L[1-Nt]-Ct[1]],Ct[0]=C[qt],Ct[1]=L[Nt]}else e.event.altKey&&(yt=Ct.slice());Ke.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Fe.style("cursor")),Ge({type:"brushstart"}),Ca();function ma(){e.event.keyCode==32&&(zr||(yt=null,Ct[0]-=C[1],Ct[1]-=L[1],zr=2),De())}function _n(){e.event.keyCode==32&&zr==2&&(Ct[0]+=C[1],Ct[1]+=L[1],zr=0,De())}function Ca(){var jt=e.mouse(Me),va=!1;Lt&&(jt[0]+=Lt[0],jt[1]+=Lt[1]),zr||(e.event.altKey?(yt||(yt=[(C[0]+C[1])/2,(L[0]+L[1])/2]),Ct[0]=C[+(jt[0]{(function(e,r){typeof Lg=="object"&&typeof TM!="undefined"?r(Lg):(e=e||self,r(e.d3=e.d3||{}))})(Lg,function(e){"use strict";var r=new Date,t=new Date;function a(Re,lr,st,kt){function Ar(tr){return Re(tr=arguments.length===0?new Date:new Date(+tr)),tr}return Ar.floor=function(tr){return Re(tr=new Date(+tr)),tr},Ar.ceil=function(tr){return Re(tr=new Date(tr-1)),lr(tr,1),Re(tr),tr},Ar.round=function(tr){var cr=Ar(tr),Hr=Ar.ceil(tr);return tr-cr0))return ot;do ot.push(jr=new Date(+tr)),lr(tr,Hr),Re(tr);while(jr=cr)for(;Re(cr),!tr(cr);)cr.setTime(cr-1)},function(cr,Hr){if(cr>=cr)if(Hr<0)for(;++Hr<=0;)for(;lr(cr,-1),!tr(cr););else for(;--Hr>=0;)for(;lr(cr,1),!tr(cr););})},st&&(Ar.count=function(tr,cr){return r.setTime(+tr),t.setTime(+cr),Re(r),Re(t),Math.floor(st(r,t))},Ar.every=function(tr){return tr=Math.floor(tr),!isFinite(tr)||!(tr>0)?null:tr>1?Ar.filter(kt?function(cr){return kt(cr)%tr===0}:function(cr){return Ar.count(0,cr)%tr===0}):Ar}),Ar}var n=a(function(){},function(Re,lr){Re.setTime(+Re+lr)},function(Re,lr){return lr-Re});n.every=function(Re){return Re=Math.floor(Re),!isFinite(Re)||!(Re>0)?null:Re>1?a(function(lr){lr.setTime(Math.floor(lr/Re)*Re)},function(lr,st){lr.setTime(+lr+st*Re)},function(lr,st){return(st-lr)/Re}):n};var i=n.range,o=1e3,l=6e4,s=36e5,f=864e5,u=6048e5,c=a(function(Re){Re.setTime(Re-Re.getMilliseconds())},function(Re,lr){Re.setTime(+Re+lr*o)},function(Re,lr){return(lr-Re)/o},function(Re){return Re.getUTCSeconds()}),v=c.range,d=a(function(Re){Re.setTime(Re-Re.getMilliseconds()-Re.getSeconds()*o)},function(Re,lr){Re.setTime(+Re+lr*l)},function(Re,lr){return(lr-Re)/l},function(Re){return Re.getMinutes()}),p=d.range,y=a(function(Re){Re.setTime(Re-Re.getMilliseconds()-Re.getSeconds()*o-Re.getMinutes()*l)},function(Re,lr){Re.setTime(+Re+lr*s)},function(Re,lr){return(lr-Re)/s},function(Re){return Re.getHours()}),m=y.range,b=a(function(Re){Re.setHours(0,0,0,0)},function(Re,lr){Re.setDate(Re.getDate()+lr)},function(Re,lr){return(lr-Re-(lr.getTimezoneOffset()-Re.getTimezoneOffset())*l)/f},function(Re){return Re.getDate()-1}),A=b.range;function _(Re){return a(function(lr){lr.setDate(lr.getDate()-(lr.getDay()+7-Re)%7),lr.setHours(0,0,0,0)},function(lr,st){lr.setDate(lr.getDate()+st*7)},function(lr,st){return(st-lr-(st.getTimezoneOffset()-lr.getTimezoneOffset())*l)/u})}var x=_(0),T=_(1),E=_(2),M=_(3),k=_(4),F=_(5),I=_(6),O=x.range,q=T.range,H=E.range,X=M.range,oe=k.range,te=F.range,Q=I.range,Z=a(function(Re){Re.setDate(1),Re.setHours(0,0,0,0)},function(Re,lr){Re.setMonth(Re.getMonth()+lr)},function(Re,lr){return lr.getMonth()-Re.getMonth()+(lr.getFullYear()-Re.getFullYear())*12},function(Re){return Re.getMonth()}),J=Z.range,le=a(function(Re){Re.setMonth(0,1),Re.setHours(0,0,0,0)},function(Re,lr){Re.setFullYear(Re.getFullYear()+lr)},function(Re,lr){return lr.getFullYear()-Re.getFullYear()},function(Re){return Re.getFullYear()});le.every=function(Re){return!isFinite(Re=Math.floor(Re))||!(Re>0)?null:a(function(lr){lr.setFullYear(Math.floor(lr.getFullYear()/Re)*Re),lr.setMonth(0,1),lr.setHours(0,0,0,0)},function(lr,st){lr.setFullYear(lr.getFullYear()+st*Re)})};var ce=le.range,De=a(function(Re){Re.setUTCSeconds(0,0)},function(Re,lr){Re.setTime(+Re+lr*l)},function(Re,lr){return(lr-Re)/l},function(Re){return Re.getUTCMinutes()}),Be=De.range,Ee=a(function(Re){Re.setUTCMinutes(0,0,0)},function(Re,lr){Re.setTime(+Re+lr*s)},function(Re,lr){return(lr-Re)/s},function(Re){return Re.getUTCHours()}),Xe=Ee.range,Ae=a(function(Re){Re.setUTCHours(0,0,0,0)},function(Re,lr){Re.setUTCDate(Re.getUTCDate()+lr)},function(Re,lr){return(lr-Re)/f},function(Re){return Re.getUTCDate()-1}),rr=Ae.range;function ze(Re){return a(function(lr){lr.setUTCDate(lr.getUTCDate()-(lr.getUTCDay()+7-Re)%7),lr.setUTCHours(0,0,0,0)},function(lr,st){lr.setUTCDate(lr.getUTCDate()+st*7)},function(lr,st){return(st-lr)/u})}var We=ze(0),$e=ze(1),Ue=ze(2),ee=ze(3),de=ze(4),ae=ze(5),je=ze(6),ur=We.range,er=$e.range,Lr=Ue.range,Pr=ee.range,_r=de.range,Ir=ae.range,Yr=je.range,Kr=a(function(Re){Re.setUTCDate(1),Re.setUTCHours(0,0,0,0)},function(Re,lr){Re.setUTCMonth(Re.getUTCMonth()+lr)},function(Re,lr){return lr.getUTCMonth()-Re.getUTCMonth()+(lr.getUTCFullYear()-Re.getUTCFullYear())*12},function(Re){return Re.getUTCMonth()}),wr=Kr.range,Vr=a(function(Re){Re.setUTCMonth(0,1),Re.setUTCHours(0,0,0,0)},function(Re,lr){Re.setUTCFullYear(Re.getUTCFullYear()+lr)},function(Re,lr){return lr.getUTCFullYear()-Re.getUTCFullYear()},function(Re){return Re.getUTCFullYear()});Vr.every=function(Re){return!isFinite(Re=Math.floor(Re))||!(Re>0)?null:a(function(lr){lr.setUTCFullYear(Math.floor(lr.getUTCFullYear()/Re)*Re),lr.setUTCMonth(0,1),lr.setUTCHours(0,0,0,0)},function(lr,st){lr.setUTCFullYear(lr.getUTCFullYear()+st*Re)})};var Wr=Vr.range;e.timeDay=b,e.timeDays=A,e.timeFriday=F,e.timeFridays=te,e.timeHour=y,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=Z,e.timeMonths=J,e.timeSaturday=I,e.timeSaturdays=Q,e.timeSecond=c,e.timeSeconds=v,e.timeSunday=x,e.timeSundays=O,e.timeThursday=k,e.timeThursdays=oe,e.timeTuesday=E,e.timeTuesdays=H,e.timeWednesday=M,e.timeWednesdays=X,e.timeWeek=x,e.timeWeeks=O,e.timeYear=le,e.timeYears=ce,e.utcDay=Ae,e.utcDays=rr,e.utcFriday=ae,e.utcFridays=Ir,e.utcHour=Ee,e.utcHours=Xe,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=De,e.utcMinutes=Be,e.utcMonday=$e,e.utcMondays=er,e.utcMonth=Kr,e.utcMonths=wr,e.utcSaturday=je,e.utcSaturdays=Yr,e.utcSecond=c,e.utcSeconds=v,e.utcSunday=We,e.utcSundays=ur,e.utcThursday=de,e.utcThursdays=_r,e.utcTuesday=Ue,e.utcTuesdays=Lr,e.utcWednesday=ee,e.utcWednesdays=Pr,e.utcWeek=We,e.utcWeeks=ur,e.utcYear=Vr,e.utcYears=Wr,Object.defineProperty(e,"__esModule",{value:!0})})});var jh=P((Dg,MM)=>{(function(e,r){typeof Dg=="object"&&typeof MM!="undefined"?r(Dg,x5()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(Dg,function(e,r){"use strict";function t(Se){if(0<=Se.y&&Se.y<100){var Ne=new Date(-1,Se.m,Se.d,Se.H,Se.M,Se.S,Se.L);return Ne.setFullYear(Se.y),Ne}return new Date(Se.y,Se.m,Se.d,Se.H,Se.M,Se.S,Se.L)}function a(Se){if(0<=Se.y&&Se.y<100){var Ne=new Date(Date.UTC(-1,Se.m,Se.d,Se.H,Se.M,Se.S,Se.L));return Ne.setUTCFullYear(Se.y),Ne}return new Date(Date.UTC(Se.y,Se.m,Se.d,Se.H,Se.M,Se.S,Se.L))}function n(Se,Ne,pr){return{y:Se,m:Ne,d:pr,H:0,M:0,S:0,L:0}}function i(Se){var Ne=Se.dateTime,pr=Se.date,xr=Se.time,ht=Se.periods,Tt=Se.days,wt=Se.shortDays,It=Se.months,ta=Se.shortMonths,Ma=v(ht),Ba=d(ht),an=v(Tt),Va=d(Tt),xn=v(wt),Rn=d(wt),hi=v(It),hn=d(It),Xn=v(ta),Et=d(ta),Pa={a:fs,A:us,b:kl,B:Zu,c:null,d:Z,e:Z,f:Be,H:J,I:le,j:ce,L:De,m:Ee,M:Xe,p:Oo,q:Yf,Q:cr,s:Hr,S:Ae,u:rr,U:ze,V:We,w:$e,W:Ue,x:null,X:null,y:ee,Y:de,Z:ae,"%":tr},ia={a:Wf,A:ji,b:di,B:Bi,c:null,d:je,e:je,f:_r,H:ur,I:er,j:Lr,L:Pr,m:Ir,M:Yr,p:Cl,q:pi,Q:cr,s:Hr,S:Kr,u:wr,U:Vr,V:Wr,w:Re,W:lr,x:null,X:null,y:st,Y:kt,Z:Ar,"%":tr},Ia={a:Ka,A:en,b:lo,B:Oi,c:dn,d:k,e:k,f:X,H:I,I,j:F,L:H,m:M,M:O,p:Tn,q:E,Q:te,s:Q,S:q,u:y,U:m,V:b,w:p,W:A,x:nn,X:Zn,y:x,Y:_,Z:T,"%":oe};Pa.x=$a(pr,Pa),Pa.X=$a(xr,Pa),Pa.c=$a(Ne,Pa),ia.x=$a(pr,ia),ia.X=$a(xr,ia),ia.c=$a(Ne,ia);function $a(Pt,$t){return function(ca){var _t=[],Jn=-1,za=0,Pn=Pt.length,ra,Ao,ol;for(ca instanceof Date||(ca=new Date(+ca));++Jn53)return null;"w"in _t||(_t.w=1),"Z"in _t?(za=a(n(_t.y,0,1)),Pn=za.getUTCDay(),za=Pn>4||Pn===0?r.utcMonday.ceil(za):r.utcMonday(za),za=r.utcDay.offset(za,(_t.V-1)*7),_t.y=za.getUTCFullYear(),_t.m=za.getUTCMonth(),_t.d=za.getUTCDate()+(_t.w+6)%7):(za=t(n(_t.y,0,1)),Pn=za.getDay(),za=Pn>4||Pn===0?r.timeMonday.ceil(za):r.timeMonday(za),za=r.timeDay.offset(za,(_t.V-1)*7),_t.y=za.getFullYear(),_t.m=za.getMonth(),_t.d=za.getDate()+(_t.w+6)%7)}else("W"in _t||"U"in _t)&&("w"in _t||(_t.w="u"in _t?_t.u%7:"W"in _t?1:0),Pn="Z"in _t?a(n(_t.y,0,1)).getUTCDay():t(n(_t.y,0,1)).getDay(),_t.m=0,_t.d="W"in _t?(_t.w+6)%7+_t.W*7-(Pn+5)%7:_t.w+_t.U*7-(Pn+6)%7);return"Z"in _t?(_t.H+=_t.Z/100|0,_t.M+=_t.Z%100,a(_t)):t(_t)}}function fa(Pt,$t,ca,_t){for(var Jn=0,za=$t.length,Pn=ca.length,ra,Ao;Jn=Pn)return-1;if(ra=$t.charCodeAt(Jn++),ra===37){if(ra=$t.charAt(Jn++),Ao=Ia[ra in o?$t.charAt(Jn++):ra],!Ao||(_t=Ao(Pt,ca,_t))<0)return-1}else if(ra!=ca.charCodeAt(_t++))return-1}return _t}function Tn(Pt,$t,ca){var _t=Ma.exec($t.slice(ca));return _t?(Pt.p=Ba[_t[0].toLowerCase()],ca+_t[0].length):-1}function Ka(Pt,$t,ca){var _t=xn.exec($t.slice(ca));return _t?(Pt.w=Rn[_t[0].toLowerCase()],ca+_t[0].length):-1}function en(Pt,$t,ca){var _t=an.exec($t.slice(ca));return _t?(Pt.w=Va[_t[0].toLowerCase()],ca+_t[0].length):-1}function lo(Pt,$t,ca){var _t=Xn.exec($t.slice(ca));return _t?(Pt.m=Et[_t[0].toLowerCase()],ca+_t[0].length):-1}function Oi(Pt,$t,ca){var _t=hi.exec($t.slice(ca));return _t?(Pt.m=hn[_t[0].toLowerCase()],ca+_t[0].length):-1}function dn(Pt,$t,ca){return fa(Pt,Ne,$t,ca)}function nn(Pt,$t,ca){return fa(Pt,pr,$t,ca)}function Zn(Pt,$t,ca){return fa(Pt,xr,$t,ca)}function fs(Pt){return wt[Pt.getDay()]}function us(Pt){return Tt[Pt.getDay()]}function kl(Pt){return ta[Pt.getMonth()]}function Zu(Pt){return It[Pt.getMonth()]}function Oo(Pt){return ht[+(Pt.getHours()>=12)]}function Yf(Pt){return 1+~~(Pt.getMonth()/3)}function Wf(Pt){return wt[Pt.getUTCDay()]}function ji(Pt){return Tt[Pt.getUTCDay()]}function di(Pt){return ta[Pt.getUTCMonth()]}function Bi(Pt){return It[Pt.getUTCMonth()]}function Cl(Pt){return ht[+(Pt.getUTCHours()>=12)]}function pi(Pt){return 1+~~(Pt.getUTCMonth()/3)}return{format:function(Pt){var $t=$a(Pt+="",Pa);return $t.toString=function(){return Pt},$t},parse:function(Pt){var $t=Qa(Pt+="",!1);return $t.toString=function(){return Pt},$t},utcFormat:function(Pt){var $t=$a(Pt+="",ia);return $t.toString=function(){return Pt},$t},utcParse:function(Pt){var $t=Qa(Pt+="",!0);return $t.toString=function(){return Pt},$t}}}var o={"-":"",_:" ",0:"0"},l=/^\s*\d+/,s=/^%/,f=/[\\^$*+?|[\]().{}]/g;function u(Se,Ne,pr){var xr=Se<0?"-":"",ht=(xr?-Se:Se)+"",Tt=ht.length;return xr+(Tt68?1900:2e3),pr+xr[0].length):-1}function T(Se,Ne,pr){var xr=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ne.slice(pr,pr+6));return xr?(Se.Z=xr[1]?0:-(xr[2]+(xr[3]||"00")),pr+xr[0].length):-1}function E(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+1));return xr?(Se.q=xr[0]*3-3,pr+xr[0].length):-1}function M(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+2));return xr?(Se.m=xr[0]-1,pr+xr[0].length):-1}function k(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+2));return xr?(Se.d=+xr[0],pr+xr[0].length):-1}function F(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+3));return xr?(Se.m=0,Se.d=+xr[0],pr+xr[0].length):-1}function I(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+2));return xr?(Se.H=+xr[0],pr+xr[0].length):-1}function O(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+2));return xr?(Se.M=+xr[0],pr+xr[0].length):-1}function q(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+2));return xr?(Se.S=+xr[0],pr+xr[0].length):-1}function H(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+3));return xr?(Se.L=+xr[0],pr+xr[0].length):-1}function X(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+6));return xr?(Se.L=Math.floor(xr[0]/1e3),pr+xr[0].length):-1}function oe(Se,Ne,pr){var xr=s.exec(Ne.slice(pr,pr+1));return xr?pr+xr[0].length:-1}function te(Se,Ne,pr){var xr=l.exec(Ne.slice(pr));return xr?(Se.Q=+xr[0],pr+xr[0].length):-1}function Q(Se,Ne,pr){var xr=l.exec(Ne.slice(pr));return xr?(Se.s=+xr[0],pr+xr[0].length):-1}function Z(Se,Ne){return u(Se.getDate(),Ne,2)}function J(Se,Ne){return u(Se.getHours(),Ne,2)}function le(Se,Ne){return u(Se.getHours()%12||12,Ne,2)}function ce(Se,Ne){return u(1+r.timeDay.count(r.timeYear(Se),Se),Ne,3)}function De(Se,Ne){return u(Se.getMilliseconds(),Ne,3)}function Be(Se,Ne){return De(Se,Ne)+"000"}function Ee(Se,Ne){return u(Se.getMonth()+1,Ne,2)}function Xe(Se,Ne){return u(Se.getMinutes(),Ne,2)}function Ae(Se,Ne){return u(Se.getSeconds(),Ne,2)}function rr(Se){var Ne=Se.getDay();return Ne===0?7:Ne}function ze(Se,Ne){return u(r.timeSunday.count(r.timeYear(Se)-1,Se),Ne,2)}function We(Se,Ne){var pr=Se.getDay();return Se=pr>=4||pr===0?r.timeThursday(Se):r.timeThursday.ceil(Se),u(r.timeThursday.count(r.timeYear(Se),Se)+(r.timeYear(Se).getDay()===4),Ne,2)}function $e(Se){return Se.getDay()}function Ue(Se,Ne){return u(r.timeMonday.count(r.timeYear(Se)-1,Se),Ne,2)}function ee(Se,Ne){return u(Se.getFullYear()%100,Ne,2)}function de(Se,Ne){return u(Se.getFullYear()%1e4,Ne,4)}function ae(Se){var Ne=Se.getTimezoneOffset();return(Ne>0?"-":(Ne*=-1,"+"))+u(Ne/60|0,"0",2)+u(Ne%60,"0",2)}function je(Se,Ne){return u(Se.getUTCDate(),Ne,2)}function ur(Se,Ne){return u(Se.getUTCHours(),Ne,2)}function er(Se,Ne){return u(Se.getUTCHours()%12||12,Ne,2)}function Lr(Se,Ne){return u(1+r.utcDay.count(r.utcYear(Se),Se),Ne,3)}function Pr(Se,Ne){return u(Se.getUTCMilliseconds(),Ne,3)}function _r(Se,Ne){return Pr(Se,Ne)+"000"}function Ir(Se,Ne){return u(Se.getUTCMonth()+1,Ne,2)}function Yr(Se,Ne){return u(Se.getUTCMinutes(),Ne,2)}function Kr(Se,Ne){return u(Se.getUTCSeconds(),Ne,2)}function wr(Se){var Ne=Se.getUTCDay();return Ne===0?7:Ne}function Vr(Se,Ne){return u(r.utcSunday.count(r.utcYear(Se)-1,Se),Ne,2)}function Wr(Se,Ne){var pr=Se.getUTCDay();return Se=pr>=4||pr===0?r.utcThursday(Se):r.utcThursday.ceil(Se),u(r.utcThursday.count(r.utcYear(Se),Se)+(r.utcYear(Se).getUTCDay()===4),Ne,2)}function Re(Se){return Se.getUTCDay()}function lr(Se,Ne){return u(r.utcMonday.count(r.utcYear(Se)-1,Se),Ne,2)}function st(Se,Ne){return u(Se.getUTCFullYear()%100,Ne,2)}function kt(Se,Ne){return u(Se.getUTCFullYear()%1e4,Ne,4)}function Ar(){return"+0000"}function tr(){return"%"}function cr(Se){return+Se}function Hr(Se){return Math.floor(+Se/1e3)}var ot;jr({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 jr(Se){return ot=i(Se),e.timeFormat=ot.format,e.timeParse=ot.parse,e.utcFormat=ot.utcFormat,e.utcParse=ot.utcParse,ot}var at="%Y-%m-%dT%H:%M:%S.%LZ";function xt(Se){return Se.toISOString()}var Xr=Date.prototype.toISOString?xt:e.utcFormat(at);function nt(Se){var Ne=new Date(Se);return isNaN(Ne)?null:Ne}var gr=+new Date("2000-01-01T00:00:00.000Z")?nt:e.utcParse(at);e.isoFormat=Xr,e.isoParse=gr,e.timeFormatDefaultLocale=jr,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var _5=P((Fg,SM)=>{(function(e,r){typeof Fg=="object"&&typeof SM!="undefined"?r(Fg):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(Fg,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((F=(M=k?M.toExponential(k-1):M.toExponential()).indexOf("e"))<0)return null;var F,I=M.slice(0,F);return[I.length>1?I[0]+I.slice(2):I,+M.slice(F+1)]}function a(M){return M=t(Math.abs(M)),M?M[1]:NaN}function n(M,k){return function(F,I){for(var O=F.length,q=[],H=0,X=M[0],oe=0;O>0&&X>0&&(oe+X+1>I&&(X=Math.max(1,I-oe)),q.push(F.substring(O-=X,O+X)),!((oe+=X+1)>I));)X=M[H=(H+1)%M.length];return q.reverse().join(k)}}function i(M){return function(k){return k.replace(/[0-9]/g,function(F){return M[+F]})}}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 f(M){e:for(var k=M.length,F=1,I=-1,O;F0&&(I=0);break}return I>0?M.slice(0,I)+M.slice(O+1):M}var u;function c(M,k){var F=t(M,k);if(!F)return M+"";var I=F[0],O=F[1],q=O-(u=Math.max(-8,Math.min(8,Math.floor(O/3)))*3)+1,H=I.length;return q===H?I:q>H?I+new Array(q-H+1).join("0"):q>0?I.slice(0,q)+"."+I.slice(q):"0."+new Array(1-q).join("0")+t(M,Math.max(0,k+q-1))[0]}function v(M,k){var F=t(M,k);if(!F)return M+"";var I=F[0],O=F[1];return O<0?"0."+new Array(-O).join("0")+I:I.length>O+1?I.slice(0,O+1)+"."+I.slice(O+1):I+new Array(O-I.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 y=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(y.call(M.grouping,Number),M.thousands+""),F=M.currency===void 0?"":M.currency[0]+"",I=M.currency===void 0?"":M.currency[1]+"",O=M.decimal===void 0?".":M.decimal+"",q=M.numerals===void 0?p:i(y.call(M.numerals,String)),H=M.percent===void 0?"%":M.percent+"",X=M.minus===void 0?"-":M.minus+"",oe=M.nan===void 0?"NaN":M.nan+"";function te(Z){Z=l(Z);var J=Z.fill,le=Z.align,ce=Z.sign,De=Z.symbol,Be=Z.zero,Ee=Z.width,Xe=Z.comma,Ae=Z.precision,rr=Z.trim,ze=Z.type;ze==="n"?(Xe=!0,ze="g"):d[ze]||(Ae===void 0&&(Ae=12),rr=!0,ze="g"),(Be||J==="0"&&le==="=")&&(Be=!0,J="0",le="=");var We=De==="$"?F:De==="#"&&/[boxX]/.test(ze)?"0"+ze.toLowerCase():"",$e=De==="$"?I:/[%p]/.test(ze)?H:"",Ue=d[ze],ee=/[defgprs%]/.test(ze);Ae=Ae===void 0?6:/[gprs]/.test(ze)?Math.max(1,Math.min(21,Ae)):Math.max(0,Math.min(20,Ae));function de(ae){var je=We,ur=$e,er,Lr,Pr;if(ze==="c")ur=Ue(ae)+ur,ae="";else{ae=+ae;var _r=ae<0||1/ae<0;if(ae=isNaN(ae)?oe:Ue(Math.abs(ae),Ae),rr&&(ae=f(ae)),_r&&+ae==0&&ce!=="+"&&(_r=!1),je=(_r?ce==="("?ce:X:ce==="-"||ce==="("?"":ce)+je,ur=(ze==="s"?m[8+u/3]:"")+ur+(_r&&ce==="("?")":""),ee){for(er=-1,Lr=ae.length;++erPr||Pr>57){ur=(Pr===46?O+ae.slice(er+1):ae.slice(er))+ur,ae=ae.slice(0,er);break}}}Xe&&!Be&&(ae=k(ae,1/0));var Ir=je.length+ae.length+ur.length,Yr=Ir>1)+je+ae+ur+Yr.slice(Ir);break;default:ae=Yr+je+ae+ur;break}return q(ae)}return de.toString=function(){return Z+""},de}function Q(Z,J){var le=te((Z=l(Z),Z.type="f",Z)),ce=Math.max(-8,Math.min(8,Math.floor(a(J)/3)))*3,De=Math.pow(10,-ce),Be=m[8+ce/3];return function(Ee){return le(De*Ee)+Be}}return{format:te,formatPrefix:Q}}var A;_({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function _(M){return A=b(M),e.format=A.format,e.formatPrefix=A.formatPrefix,A}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 E(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=_,e.formatLocale=b,e.formatSpecifier=l,e.precisionFixed=x,e.precisionPrefix=T,e.precisionRound=E,Object.defineProperty(e,"__esModule",{value:!0})})});var kM=P((bEe,EM)=>{"use strict";EM.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 ba=P((xEe,CM)=>{"use strict";var Jne=kM();CM.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&Jne(t))return!1}else if(r!=="number")return!1;return e-e<1}});var Kn=P((_Ee,LM)=>{"use strict";LM.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 w5=P((qg,DM)=>{(function(e,r){typeof qg=="object"&&typeof DM!="undefined"?r(qg):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(qg,function(e){"use strict";for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),a=0;a>2],u+=r[(l[s]&3)<<4|l[s+1]>>4],u+=r[(l[s+1]&15)<<2|l[s+2]>>6],u+=r[l[s+2]&63];return f%3===2?u=u.substring(0,u.length-1)+"=":f%3===1&&(u=u.substring(0,u.length-2)+"=="),u},i=function(o){var l=o.length*.75,s=o.length,f,u=0,c,v,d,p;o[o.length-1]==="="&&(l--,o[o.length-2]==="="&&l--);var y=new ArrayBuffer(l),m=new Uint8Array(y);for(f=0;f>4,m[u++]=(v&15)<<4|d>>2,m[u++]=(d&3)<<6|p&63;return y};e.decode=i,e.encode=n,Object.defineProperty(e,"__esModule",{value:!0})})});var Mc=P((wEe,FM)=>{"use strict";FM.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 Yo=P(Es=>{"use strict";var $ne=w5().decode,Qne=Mc(),A5=Array.isArray,Kne=ArrayBuffer,eie=DataView;function qM(e){return Kne.isView(e)&&!(e instanceof eie)}Es.isTypedArray=qM;function Rg(e){return A5(e)||qM(e)}Es.isArrayOrTypedArray=Rg;function rie(e){return!Rg(e[0])}Es.isArray1D=rie;Es.ensureArray=function(e,r){return A5(e)||(e=[]),e.length=r,e};var Fi={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};Fi.uint8c=Fi.u1c;Fi.uint8=Fi.u1;Fi.int8=Fi.i1;Fi.uint16=Fi.u2;Fi.int16=Fi.i2;Fi.uint32=Fi.u4;Fi.int32=Fi.i4;Fi.float32=Fi.f4;Fi.float64=Fi.f8;function T5(e){return e.constructor===ArrayBuffer}Es.isArrayBuffer=T5;Es.decodeTypedArraySpec=function(e){var r=[],t=tie(e),a=t.dtype,n=Fi[a];if(!n)throw new Error('Error in dtype: "'+a+'"');var i=n.BYTES_PER_ELEMENT,o=t.bdata;T5(o)||(o=$ne(o));var l=t.shape===void 0?[o.byteLength/i]:(""+t.shape).split(",");l.reverse();var s=l.length,f,u,c=+l[0],v=i*c,d=0;if(s===1)r=new n(o);else if(s===2)for(f=+l[1],u=0;u{"use strict";var PM=ba(),S5=Yo().isArrayOrTypedArray;BM.exports=function(r,t){if(PM(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 Xh=Pg(),lie=/^\w*$/,sie=0,zM=1,Ng=2,GM=3,d0=4;UM.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,o,l,s={};t&&t.length?(l=Xh(r,t),o=l.get()):o=r,t=t||"";var f={};if(o)for(i=0;i2)return s[d]=s[d]|Ng,c.set(v,null);if(u){for(i=d;i{"use strict";var fie=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,uie=/^[^\.\[\]]+$/;VM.exports=function(e,r){for(;r;){var t=e.match(fie);if(t)e=t[1];else if(e.match(uie))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 Ig=P((EEe,WM)=>{"use strict";var cie=ba();WM.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 cie(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var ZM=P((kEe,XM)=>{"use strict";var jM=Yo().isArrayOrTypedArray,N1=Mc();XM.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(jM(n)&&jM(i)&&N1(n[0])){if(a==="customdata"||a==="ids")continue;for(var o=Math.min(n.length,i.length),l=0;l{"use strict";function vie(e,r){var t=e%r;return t<0?t+r:t}function hie(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}JM.exports={mod:vie,modHalf:hie}});var ks=P((LEe,Og)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,o=e.max,l=e.random;function s(ee,de){if(ee=ee||"",de=de||{},ee instanceof s)return ee;if(!(this instanceof s))return new s(ee,de);var ae=f(ee);this._originalInput=ee,this._r=ae.r,this._g=ae.g,this._b=ae.b,this._a=ae.a,this._roundA=n(100*this._a)/100,this._format=de.format||ae.format,this._gradientType=de.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=ae.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 ee=this.toRgb();return(ee.r*299+ee.g*587+ee.b*114)/1e3},getLuminance:function(){var ee=this.toRgb(),de,ae,je,ur,er,Lr;return de=ee.r/255,ae=ee.g/255,je=ee.b/255,de<=.03928?ur=de/12.92:ur=e.pow((de+.055)/1.055,2.4),ae<=.03928?er=ae/12.92:er=e.pow((ae+.055)/1.055,2.4),je<=.03928?Lr=je/12.92:Lr=e.pow((je+.055)/1.055,2.4),.2126*ur+.7152*er+.0722*Lr},setAlpha:function(ee){return this._a=Z(ee),this._roundA=n(100*this._a)/100,this},toHsv:function(){var ee=d(this._r,this._g,this._b);return{h:ee.h*360,s:ee.s,v:ee.v,a:this._a}},toHsvString:function(){var ee=d(this._r,this._g,this._b),de=n(ee.h*360),ae=n(ee.s*100),je=n(ee.v*100);return this._a==1?"hsv("+de+", "+ae+"%, "+je+"%)":"hsva("+de+", "+ae+"%, "+je+"%, "+this._roundA+")"},toHsl:function(){var ee=c(this._r,this._g,this._b);return{h:ee.h*360,s:ee.s,l:ee.l,a:this._a}},toHslString:function(){var ee=c(this._r,this._g,this._b),de=n(ee.h*360),ae=n(ee.s*100),je=n(ee.l*100);return this._a==1?"hsl("+de+", "+ae+"%, "+je+"%)":"hsla("+de+", "+ae+"%, "+je+"%, "+this._roundA+")"},toHex:function(ee){return y(this._r,this._g,this._b,ee)},toHexString:function(ee){return"#"+this.toHex(ee)},toHex8:function(ee){return m(this._r,this._g,this._b,this._a,ee)},toHex8String:function(ee){return"#"+this.toHex8(ee)},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(J(this._r,255)*100)+"%",g:n(J(this._g,255)*100)+"%",b:n(J(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+n(J(this._r,255)*100)+"%, "+n(J(this._g,255)*100)+"%, "+n(J(this._b,255)*100)+"%)":"rgba("+n(J(this._r,255)*100)+"%, "+n(J(this._g,255)*100)+"%, "+n(J(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:te[y(this._r,this._g,this._b,!0)]||!1},toFilter:function(ee){var de="#"+b(this._r,this._g,this._b,this._a),ae=de,je=this._gradientType?"GradientType = 1, ":"";if(ee){var ur=s(ee);ae="#"+b(ur._r,ur._g,ur._b,ur._a)}return"progid:DXImageTransform.Microsoft.gradient("+je+"startColorstr="+de+",endColorstr="+ae+")"},toString:function(ee){var de=!!ee;ee=ee||this._format;var ae=!1,je=this._a<1&&this._a>=0,ur=!de&&je&&(ee==="hex"||ee==="hex6"||ee==="hex3"||ee==="hex4"||ee==="hex8"||ee==="name");return ur?ee==="name"&&this._a===0?this.toName():this.toRgbString():(ee==="rgb"&&(ae=this.toRgbString()),ee==="prgb"&&(ae=this.toPercentageRgbString()),(ee==="hex"||ee==="hex6")&&(ae=this.toHexString()),ee==="hex3"&&(ae=this.toHexString(!0)),ee==="hex4"&&(ae=this.toHex8String(!0)),ee==="hex8"&&(ae=this.toHex8String()),ee==="name"&&(ae=this.toName()),ee==="hsl"&&(ae=this.toHslString()),ee==="hsv"&&(ae=this.toHsvString()),ae||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(ee,de){var ae=ee.apply(null,[this].concat([].slice.call(de)));return this._r=ae._r,this._g=ae._g,this._b=ae._b,this.setAlpha(ae._a),this},lighten:function(){return this._applyModification(T,arguments)},brighten:function(){return this._applyModification(E,arguments)},darken:function(){return this._applyModification(M,arguments)},desaturate:function(){return this._applyModification(A,arguments)},saturate:function(){return this._applyModification(_,arguments)},greyscale:function(){return this._applyModification(x,arguments)},spin:function(){return this._applyModification(k,arguments)},_applyCombination:function(ee,de){return ee.apply(null,[this].concat([].slice.call(de)))},analogous:function(){return this._applyCombination(H,arguments)},complement:function(){return this._applyCombination(F,arguments)},monochromatic:function(){return this._applyCombination(X,arguments)},splitcomplement:function(){return this._applyCombination(q,arguments)},triad:function(){return this._applyCombination(I,arguments)},tetrad:function(){return this._applyCombination(O,arguments)}},s.fromRatio=function(ee,de){if(typeof ee=="object"){var ae={};for(var je in ee)ee.hasOwnProperty(je)&&(je==="a"?ae[je]=ee[je]:ae[je]=Xe(ee[je]));ee=ae}return s(ee,de)};function f(ee){var de={r:0,g:0,b:0},ae=1,je=null,ur=null,er=null,Lr=!1,Pr=!1;return typeof ee=="string"&&(ee=$e(ee)),typeof ee=="object"&&(We(ee.r)&&We(ee.g)&&We(ee.b)?(de=u(ee.r,ee.g,ee.b),Lr=!0,Pr=String(ee.r).substr(-1)==="%"?"prgb":"rgb"):We(ee.h)&&We(ee.s)&&We(ee.v)?(je=Xe(ee.s),ur=Xe(ee.v),de=p(ee.h,je,ur),Lr=!0,Pr="hsv"):We(ee.h)&&We(ee.s)&&We(ee.l)&&(je=Xe(ee.s),er=Xe(ee.l),de=v(ee.h,je,er),Lr=!0,Pr="hsl"),ee.hasOwnProperty("a")&&(ae=ee.a)),ae=Z(ae),{ok:Lr,format:ee.format||Pr,r:i(255,o(de.r,0)),g:i(255,o(de.g,0)),b:i(255,o(de.b,0)),a:ae}}function u(ee,de,ae){return{r:J(ee,255)*255,g:J(de,255)*255,b:J(ae,255)*255}}function c(ee,de,ae){ee=J(ee,255),de=J(de,255),ae=J(ae,255);var je=o(ee,de,ae),ur=i(ee,de,ae),er,Lr,Pr=(je+ur)/2;if(je==ur)er=Lr=0;else{var _r=je-ur;switch(Lr=Pr>.5?_r/(2-je-ur):_r/(je+ur),je){case ee:er=(de-ae)/_r+(de1&&(Kr-=1),Kr<1/6?Ir+(Yr-Ir)*6*Kr:Kr<1/2?Yr:Kr<2/3?Ir+(Yr-Ir)*(2/3-Kr)*6:Ir}if(de===0)je=ur=er=ae;else{var Pr=ae<.5?ae*(1+de):ae+de-ae*de,_r=2*ae-Pr;je=Lr(_r,Pr,ee+1/3),ur=Lr(_r,Pr,ee),er=Lr(_r,Pr,ee-1/3)}return{r:je*255,g:ur*255,b:er*255}}function d(ee,de,ae){ee=J(ee,255),de=J(de,255),ae=J(ae,255);var je=o(ee,de,ae),ur=i(ee,de,ae),er,Lr,Pr=je,_r=je-ur;if(Lr=je===0?0:_r/je,je==ur)er=0;else{switch(je){case ee:er=(de-ae)/_r+(de>1)+720)%360;--de;)je.h=(je.h+ur)%360,er.push(s(je));return er}function X(ee,de){de=de||6;for(var ae=s(ee).toHsv(),je=ae.h,ur=ae.s,er=ae.v,Lr=[],Pr=1/de;de--;)Lr.push(s({h:je,s:ur,v:er})),er=(er+Pr)%1;return Lr}s.mix=function(ee,de,ae){ae=ae===0?0:ae||50;var je=s(ee).toRgb(),ur=s(de).toRgb(),er=ae/100,Lr={r:(ur.r-je.r)*er+je.r,g:(ur.g-je.g)*er+je.g,b:(ur.b-je.b)*er+je.b,a:(ur.a-je.a)*er+je.a};return s(Lr)},s.readability=function(ee,de){var ae=s(ee),je=s(de);return(e.max(ae.getLuminance(),je.getLuminance())+.05)/(e.min(ae.getLuminance(),je.getLuminance())+.05)},s.isReadable=function(ee,de,ae){var je=s.readability(ee,de),ur,er;switch(er=!1,ur=Ue(ae),ur.level+ur.size){case"AAsmall":case"AAAlarge":er=je>=4.5;break;case"AAlarge":er=je>=3;break;case"AAAsmall":er=je>=7;break}return er},s.mostReadable=function(ee,de,ae){var je=null,ur=0,er,Lr,Pr,_r;ae=ae||{},Lr=ae.includeFallbackColors,Pr=ae.level,_r=ae.size;for(var Ir=0;Irur&&(ur=er,je=s(de[Ir]));return s.isReadable(ee,je,{level:Pr,size:_r})||!Lr?je:(ae.includeFallbackColors=!1,s.mostReadable(ee,["#fff","#000"],ae))};var oe=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"},te=s.hexNames=Q(oe);function Q(ee){var de={};for(var ae in ee)ee.hasOwnProperty(ae)&&(de[ee[ae]]=ae);return de}function Z(ee){return ee=parseFloat(ee),(isNaN(ee)||ee<0||ee>1)&&(ee=1),ee}function J(ee,de){De(ee)&&(ee="100%");var ae=Be(ee);return ee=i(de,o(0,parseFloat(ee))),ae&&(ee=parseInt(ee*de,10)/100),e.abs(ee-de)<1e-6?1:ee%de/parseFloat(de)}function le(ee){return i(1,o(0,ee))}function ce(ee){return parseInt(ee,16)}function De(ee){return typeof ee=="string"&&ee.indexOf(".")!=-1&&parseFloat(ee)===1}function Be(ee){return typeof ee=="string"&&ee.indexOf("%")!=-1}function Ee(ee){return ee.length==1?"0"+ee:""+ee}function Xe(ee){return ee<=1&&(ee=ee*100+"%"),ee}function Ae(ee){return e.round(parseFloat(ee)*255).toString(16)}function rr(ee){return ce(ee)/255}var ze=function(){var ee="[-\\+]?\\d+%?",de="[-\\+]?\\d*\\.\\d+%?",ae="(?:"+de+")|(?:"+ee+")",je="[\\s|\\(]+("+ae+")[,|\\s]+("+ae+")[,|\\s]+("+ae+")\\s*\\)?",ur="[\\s|\\(]+("+ae+")[,|\\s]+("+ae+")[,|\\s]+("+ae+")[,|\\s]+("+ae+")\\s*\\)?";return{CSS_UNIT:new RegExp(ae),rgb:new RegExp("rgb"+je),rgba:new RegExp("rgba"+ur),hsl:new RegExp("hsl"+je),hsla:new RegExp("hsla"+ur),hsv:new RegExp("hsv"+je),hsva:new RegExp("hsva"+ur),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 We(ee){return!!ze.CSS_UNIT.exec(ee)}function $e(ee){ee=ee.replace(r,"").replace(t,"").toLowerCase();var de=!1;if(oe[ee])ee=oe[ee],de=!0;else if(ee=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ae;return(ae=ze.rgb.exec(ee))?{r:ae[1],g:ae[2],b:ae[3]}:(ae=ze.rgba.exec(ee))?{r:ae[1],g:ae[2],b:ae[3],a:ae[4]}:(ae=ze.hsl.exec(ee))?{h:ae[1],s:ae[2],l:ae[3]}:(ae=ze.hsla.exec(ee))?{h:ae[1],s:ae[2],l:ae[3],a:ae[4]}:(ae=ze.hsv.exec(ee))?{h:ae[1],s:ae[2],v:ae[3]}:(ae=ze.hsva.exec(ee))?{h:ae[1],s:ae[2],v:ae[3],a:ae[4]}:(ae=ze.hex8.exec(ee))?{r:ce(ae[1]),g:ce(ae[2]),b:ce(ae[3]),a:rr(ae[4]),format:de?"name":"hex8"}:(ae=ze.hex6.exec(ee))?{r:ce(ae[1]),g:ce(ae[2]),b:ce(ae[3]),format:de?"name":"hex"}:(ae=ze.hex4.exec(ee))?{r:ce(ae[1]+""+ae[1]),g:ce(ae[2]+""+ae[2]),b:ce(ae[3]+""+ae[3]),a:rr(ae[4]+""+ae[4]),format:de?"name":"hex8"}:(ae=ze.hex3.exec(ee))?{r:ce(ae[1]+""+ae[1]),g:ce(ae[2]+""+ae[2]),b:ce(ae[3]+""+ae[3]),format:de?"name":"hex"}:!1}function Ue(ee){var de,ae;return ee=ee||{level:"AA",size:"small"},de=(ee.level||"AA").toUpperCase(),ae=(ee.size||"small").toLowerCase(),de!=="AA"&&de!=="AAA"&&(de="AA"),ae!=="small"&&ae!=="large"&&(ae="small"),{level:de,size:ae}}typeof Og!="undefined"&&Og.exports?Og.exports=s:window.tinycolor=s})(Math)});var zn=P(B1=>{"use strict";var $M=Mc(),I1=Array.isArray;function die(e,r){var t,a;for(t=0;t{"use strict";QM.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 z1=P((qEe,KM)=>{"use strict";KM.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var Jh=P((REe,tS)=>{"use strict";var eS=z1(),rS=Gi(),E5=rS({editType:"none"});E5.family.dflt=eS.HOVERFONT;E5.size.dflt=eS.HOVERFONTSIZE;tS.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:E5,grouptitlefont:rS({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var Bg=P((PEe,aS)=>{"use strict";var pie=Gi(),G1=Jh().hoverlabel,U1=zn().extendFlat;aS.exports={hoverlabel:{bgcolor:U1({},G1.bgcolor,{arrayOk:!0}),bordercolor:U1({},G1.bordercolor,{arrayOk:!0}),font:pie({arrayOk:!0,editType:"none"}),align:U1({},G1.align,{arrayOk:!0}),namelength:U1({},G1.namelength,{arrayOk:!0}),showarrow:U1({},G1.showarrow),editType:"none"}}});var Cs=P((NEe,nS)=>{"use strict";var mie=Gi(),yie=Bg();nS.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:mie({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:yie.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 p0=P((IEe,lS)=>{"use strict";var gie=ks(),zg={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)"]]},iS=zg.RdBu;function bie(e,r){if(r||(r=iS),!e)return r;function t(){try{e=zg[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),oS(e)?e:r}function oS(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";m0.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];m0.defaultLine="#444";m0.lightLine="#eee";m0.background="#fff";m0.borderLine="#BEC8D9";m0.lightFraction=100*10/11});var ha=P((BEe,sS)=>{"use strict";var Wo=ks(),_ie=ba(),wie=Yo().isTypedArray,bi=sS.exports={},Gg=wf();bi.defaults=Gg.defaults;var Aie=bi.defaultLine=Gg.defaultLine;bi.lightLine=Gg.lightLine;var C5=bi.background=Gg.background;bi.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};bi.rgb=function(e){return bi.tinyRGB(Wo(e))};bi.opacity=function(e){return e?Wo(e).getAlpha():0};bi.addOpacity=function(e,r){var t=Wo(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};bi.combine=function(e,r){var t=Wo(e).toRgb();if(t.a===1)return Wo(e).toRgbString();var a=Wo(r||C5).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 Wo(i).toRgbString()};bi.interpolate=function(e,r,t){var a=Wo(e).toRgb(),n=Wo(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 Wo(i).toRgbString()};bi.contrast=function(e,r,t){var a=Wo(e);a.getAlpha()!==1&&(a=Wo(bi.combine(e,C5)));var n=a.isDark()?r?a.lighten(r):C5:t?a.darken(t):Aie;return n.toString()};bi.stroke=function(e,r){var t=Wo(r);e.style({stroke:bi.tinyRGB(t),"stroke-opacity":t.getAlpha()})};bi.fill=function(e,r){var t=Wo(r);e.style({fill:bi.tinyRGB(t),"fill-opacity":t.getAlpha()})};bi.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 $h=P((zEe,fS)=>{"use strict";fS.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var Qh=P(uS=>{"use strict";uS.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 dS=P(jo=>{"use strict";var L5=ba(),cS=ks(),vS=zn().extendFlat,Tie=Cs(),Mie=p0(),Sie=ha(),Eie=$h().DESELECTDIM,Kh=Pg(),hS=Qh().counter,kie=Zh().modHalf,Af=Yo().isArrayOrTypedArray,Sc=Yo().isTypedArraySpec,Ec=Yo().decodeTypedArraySpec;jo.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(Af(e)?e:Sc(e)?Ec(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}Sc(e)&&(e=Ec(e)),e%1||!L5(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){Sc(e)&&(e=Ec(e)),cS(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return cS(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(Mie.get(e,t))}},angle:{coerceFunction:function(e,r,t){Sc(e)&&(e=Ec(e)),e==="auto"?r.set("auto"):L5(e)?r.set(kie(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||hS(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:!!hS(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 pS={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/un/"},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:{}}},mS={};function yS(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),yS(a,r[t]))}}yS(pS,mS);gS.exports={configAttributes:pS,dfltConfig:mS}});var F5=P((VEe,bS)=>{"use strict";var D5=da(),Cie=ba(),H1=[];bS.exports=function(e,r){if(H1.indexOf(e)!==-1)return;H1.push(e);var t=1e3;Cie(r)?t=r:r==="long"&&(t=3e3);var a=D5.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(H1);function i(o){o.duration(700).style("opacity",0).each("end",function(l){var s=H1.indexOf(l);s!==-1&&H1.splice(s,1),D5.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var l=D5.select(this);l.append("button").classed("notifier-close",!0).html("×").on("click",function(){l.transition().call(i)});for(var s=l.append("p"),f=o.split(//g),u=0;u{"use strict";var ed=y0().dfltConfig,q5=F5(),R5=xS.exports={};R5.log=function(){var e;if(ed.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};R5.warn=function(){var e;if(ed.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};R5.error=function(){var e;if(ed.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var Hg=P((WEe,_S)=>{"use strict";_S.exports=function(){}});var P5=P((jEe,wS)=>{"use strict";wS.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{AS.exports=Lie;function Lie(){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 SS=P((ZEe,MS)=>{MS.exports=Die;function Die(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 kS=P((JEe,ES)=>{ES.exports=Fie;function Fie(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 N5=P(($Ee,CS)=>{CS.exports=qie;function qie(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 DS=P((QEe,LS)=>{LS.exports=Rie;function Rie(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 qS=P((KEe,FS)=>{FS.exports=Pie;function Pie(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=r[4],l=r[5],s=r[6],f=r[7],u=r[8],c=r[9],v=r[10],d=r[11],p=r[12],y=r[13],m=r[14],b=r[15],A=t*l-a*o,_=t*s-n*o,x=t*f-i*o,T=a*s-n*l,E=a*f-i*l,M=n*f-i*s,k=u*y-c*p,F=u*m-v*p,I=u*b-d*p,O=c*m-v*y,q=c*b-d*y,H=v*b-d*m,X=A*H-_*q+x*O+T*I-E*F+M*k;return X?(X=1/X,e[0]=(l*H-s*q+f*O)*X,e[1]=(n*q-a*H-i*O)*X,e[2]=(y*M-m*E+b*T)*X,e[3]=(v*E-c*M-d*T)*X,e[4]=(s*I-o*H-f*F)*X,e[5]=(t*H-n*I+i*F)*X,e[6]=(m*x-p*M-b*_)*X,e[7]=(u*M-v*x+d*_)*X,e[8]=(o*q-l*I+f*k)*X,e[9]=(a*I-t*q-i*k)*X,e[10]=(p*E-y*x+b*A)*X,e[11]=(c*x-u*E-d*A)*X,e[12]=(l*F-o*O-s*k)*X,e[13]=(t*O-a*F+n*k)*X,e[14]=(y*_-p*T-m*A)*X,e[15]=(u*T-c*_+v*A)*X,e):null}});var PS=P((eke,RS)=>{RS.exports=Nie;function Nie(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=r[4],l=r[5],s=r[6],f=r[7],u=r[8],c=r[9],v=r[10],d=r[11],p=r[12],y=r[13],m=r[14],b=r[15];return e[0]=l*(v*b-d*m)-c*(s*b-f*m)+y*(s*d-f*v),e[1]=-(a*(v*b-d*m)-c*(n*b-i*m)+y*(n*d-i*v)),e[2]=a*(s*b-f*m)-l*(n*b-i*m)+y*(n*f-i*s),e[3]=-(a*(s*d-f*v)-l*(n*d-i*v)+c*(n*f-i*s)),e[4]=-(o*(v*b-d*m)-u*(s*b-f*m)+p*(s*d-f*v)),e[5]=t*(v*b-d*m)-u*(n*b-i*m)+p*(n*d-i*v),e[6]=-(t*(s*b-f*m)-o*(n*b-i*m)+p*(n*f-i*s)),e[7]=t*(s*d-f*v)-o*(n*d-i*v)+u*(n*f-i*s),e[8]=o*(c*b-d*y)-u*(l*b-f*y)+p*(l*d-f*c),e[9]=-(t*(c*b-d*y)-u*(a*b-i*y)+p*(a*d-i*c)),e[10]=t*(l*b-f*y)-o*(a*b-i*y)+p*(a*f-i*l),e[11]=-(t*(l*d-f*c)-o*(a*d-i*c)+u*(a*f-i*l)),e[12]=-(o*(c*m-v*y)-u*(l*m-s*y)+p*(l*v-s*c)),e[13]=t*(c*m-v*y)-u*(a*m-n*y)+p*(a*v-n*c),e[14]=-(t*(l*m-s*y)-o*(a*m-n*y)+p*(a*s-n*l)),e[15]=t*(l*v-s*c)-o*(a*v-n*c)+u*(a*s-n*l),e}});var IS=P((rke,NS)=>{NS.exports=Iie;function Iie(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],f=e[8],u=e[9],c=e[10],v=e[11],d=e[12],p=e[13],y=e[14],m=e[15],b=r*o-t*i,A=r*l-a*i,_=r*s-n*i,x=t*l-a*o,T=t*s-n*o,E=a*s-n*l,M=f*p-u*d,k=f*y-c*d,F=f*m-v*d,I=u*y-c*p,O=u*m-v*p,q=c*m-v*y;return b*q-A*O+_*I+x*F-T*k+E*M}});var BS=P((tke,OS)=>{OS.exports=Oie;function Oie(e,r,t){var a=r[0],n=r[1],i=r[2],o=r[3],l=r[4],s=r[5],f=r[6],u=r[7],c=r[8],v=r[9],d=r[10],p=r[11],y=r[12],m=r[13],b=r[14],A=r[15],_=t[0],x=t[1],T=t[2],E=t[3];return e[0]=_*a+x*l+T*c+E*y,e[1]=_*n+x*s+T*v+E*m,e[2]=_*i+x*f+T*d+E*b,e[3]=_*o+x*u+T*p+E*A,_=t[4],x=t[5],T=t[6],E=t[7],e[4]=_*a+x*l+T*c+E*y,e[5]=_*n+x*s+T*v+E*m,e[6]=_*i+x*f+T*d+E*b,e[7]=_*o+x*u+T*p+E*A,_=t[8],x=t[9],T=t[10],E=t[11],e[8]=_*a+x*l+T*c+E*y,e[9]=_*n+x*s+T*v+E*m,e[10]=_*i+x*f+T*d+E*b,e[11]=_*o+x*u+T*p+E*A,_=t[12],x=t[13],T=t[14],E=t[15],e[12]=_*a+x*l+T*c+E*y,e[13]=_*n+x*s+T*v+E*m,e[14]=_*i+x*f+T*d+E*b,e[15]=_*o+x*u+T*p+E*A,e}});var GS=P((ake,zS)=>{zS.exports=Bie;function Bie(e,r,t){var a=t[0],n=t[1],i=t[2],o,l,s,f,u,c,v,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]):(o=r[0],l=r[1],s=r[2],f=r[3],u=r[4],c=r[5],v=r[6],d=r[7],p=r[8],y=r[9],m=r[10],b=r[11],e[0]=o,e[1]=l,e[2]=s,e[3]=f,e[4]=u,e[5]=c,e[6]=v,e[7]=d,e[8]=p,e[9]=y,e[10]=m,e[11]=b,e[12]=o*a+u*n+p*i+r[12],e[13]=l*a+c*n+y*i+r[13],e[14]=s*a+v*n+m*i+r[14],e[15]=f*a+d*n+b*i+r[15]),e}});var HS=P((nke,US)=>{US.exports=zie;function zie(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 YS=P((ike,VS)=>{VS.exports=Gie;function Gie(e,r,t,a){var n=a[0],i=a[1],o=a[2],l=Math.sqrt(n*n+i*i+o*o),s,f,u,c,v,d,p,y,m,b,A,_,x,T,E,M,k,F,I,O,q,H,X,oe;return Math.abs(l)<1e-6?null:(l=1/l,n*=l,i*=l,o*=l,s=Math.sin(t),f=Math.cos(t),u=1-f,c=r[0],v=r[1],d=r[2],p=r[3],y=r[4],m=r[5],b=r[6],A=r[7],_=r[8],x=r[9],T=r[10],E=r[11],M=n*n*u+f,k=i*n*u+o*s,F=o*n*u-i*s,I=n*i*u-o*s,O=i*i*u+f,q=o*i*u+n*s,H=n*o*u+i*s,X=i*o*u-n*s,oe=o*o*u+f,e[0]=c*M+y*k+_*F,e[1]=v*M+m*k+x*F,e[2]=d*M+b*k+T*F,e[3]=p*M+A*k+E*F,e[4]=c*I+y*O+_*q,e[5]=v*I+m*O+x*q,e[6]=d*I+b*O+T*q,e[7]=p*I+A*O+E*q,e[8]=c*H+y*X+_*oe,e[9]=v*H+m*X+x*oe,e[10]=d*H+b*X+T*oe,e[11]=p*H+A*X+E*oe,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var jS=P((oke,WS)=>{WS.exports=Uie;function Uie(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[4],o=r[5],l=r[6],s=r[7],f=r[8],u=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+f*a,e[5]=o*n+u*a,e[6]=l*n+c*a,e[7]=s*n+v*a,e[8]=f*n-i*a,e[9]=u*n-o*a,e[10]=c*n-l*a,e[11]=v*n-s*a,e}});var ZS=P((lke,XS)=>{XS.exports=Hie;function Hie(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],f=r[8],u=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-f*a,e[1]=o*n-u*a,e[2]=l*n-c*a,e[3]=s*n-v*a,e[8]=i*a+f*n,e[9]=o*a+u*n,e[10]=l*a+c*n,e[11]=s*a+v*n,e}});var $S=P((ske,JS)=>{JS.exports=Vie;function Vie(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],f=r[4],u=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+f*a,e[1]=o*n+u*a,e[2]=l*n+c*a,e[3]=s*n+v*a,e[4]=f*n-i*a,e[5]=u*n-o*a,e[6]=c*n-l*a,e[7]=v*n-s*a,e}});var KS=P((fke,QS)=>{QS.exports=Yie;function Yie(e,r,t){var a,n,i,o=t[0],l=t[1],s=t[2],f=Math.sqrt(o*o+l*l+s*s);return Math.abs(f)<1e-6?null:(f=1/f,o*=f,l*=f,s*=f,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 rE=P((uke,eE)=>{eE.exports=Wie;function Wie(e,r,t){var a=r[0],n=r[1],i=r[2],o=r[3],l=a+a,s=n+n,f=i+i,u=a*l,c=a*s,v=a*f,d=n*s,p=n*f,y=i*f,m=o*l,b=o*s,A=o*f;return e[0]=1-(d+y),e[1]=c+A,e[2]=v-b,e[3]=0,e[4]=c-A,e[5]=1-(u+y),e[6]=p+m,e[7]=0,e[8]=v+b,e[9]=p-m,e[10]=1-(u+d),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var aE=P((cke,tE)=>{tE.exports=jie;function jie(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 iE=P((vke,nE)=>{nE.exports=Xie;function Xie(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 lE=P((hke,oE)=>{oE.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 fE=P((dke,sE)=>{sE.exports=Jie;function Jie(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 cE=P((pke,uE)=>{uE.exports=$ie;function $ie(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 hE=P((mke,vE)=>{vE.exports=Qie;function Qie(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=t+t,l=a+a,s=n+n,f=t*o,u=a*o,c=a*l,v=n*o,d=n*l,p=n*s,y=i*o,m=i*l,b=i*s;return e[0]=1-c-p,e[1]=u+b,e[2]=v-m,e[3]=0,e[4]=u-b,e[5]=1-f-p,e[6]=d+y,e[7]=0,e[8]=v+m,e[9]=d-y,e[10]=1-f-c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var pE=P((yke,dE)=>{dE.exports=Kie;function Kie(e,r,t,a,n,i,o){var l=1/(t-r),s=1/(n-a),f=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)*f,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*i*2*f,e[15]=0,e}});var yE=P((gke,mE)=>{mE.exports=eoe;function eoe(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 bE=P((bke,gE)=>{gE.exports=roe;function roe(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),f=2/(n+i);return e[0]=s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=f,e[6]=0,e[7]=0,e[8]=-((o-l)*s*.5),e[9]=(n-i)*f*.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 _E=P((xke,xE)=>{xE.exports=toe;function toe(e,r,t,a,n,i,o){var l=1/(r-t),s=1/(a-n),f=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*f,e[11]=0,e[12]=(r+t)*l,e[13]=(n+a)*s,e[14]=(o+i)*f,e[15]=1,e}});var AE=P((_ke,wE)=>{var aoe=N5();wE.exports=noe;function noe(e,r,t,a){var n,i,o,l,s,f,u,c,v,d,p=r[0],y=r[1],m=r[2],b=a[0],A=a[1],_=a[2],x=t[0],T=t[1],E=t[2];return Math.abs(p-x)<1e-6&&Math.abs(y-T)<1e-6&&Math.abs(m-E)<1e-6?aoe(e):(u=p-x,c=y-T,v=m-E,d=1/Math.sqrt(u*u+c*c+v*v),u*=d,c*=d,v*=d,n=A*v-_*c,i=_*u-b*v,o=b*c-A*u,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-u*o,f=u*i-c*n,d=Math.sqrt(l*l+s*s+f*f),d?(d=1/d,l*=d,s*=d,f*=d):(l=0,s=0,f=0),e[0]=n,e[1]=l,e[2]=u,e[3]=0,e[4]=i,e[5]=s,e[6]=c,e[7]=0,e[8]=o,e[9]=f,e[10]=v,e[11]=0,e[12]=-(n*p+i*y+o*m),e[13]=-(l*p+s*y+f*m),e[14]=-(u*p+c*y+v*m),e[15]=1,e)}});var ME=P((wke,TE)=>{TE.exports=ioe;function ioe(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 I5=P((Ake,SE)=>{SE.exports={create:TS(),clone:SS(),copy:kS(),identity:N5(),transpose:DS(),invert:qS(),adjoint:PS(),determinant:IS(),multiply:BS(),translate:GS(),scale:HS(),rotate:YS(),rotateX:jS(),rotateY:ZS(),rotateZ:$S(),fromRotation:KS(),fromRotationTranslation:rE(),fromScaling:aE(),fromTranslation:iE(),fromXRotation:lE(),fromYRotation:fE(),fromZRotation:cE(),fromQuat:hE(),frustum:pE(),perspective:yE(),perspectiveFromFieldOfView:bE(),ortho:_E(),lookAt:AE(),str:ME()}});var Vg=P(Gn=>{"use strict";var ooe=I5();Gn.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var loe=da(),EE=g0(),soe=Vg(),foe=I5();function uoe(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 coe(e){var r=loe.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function kE(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function voe(e,r){CE("global",e,r)}function CE(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):EE.warn("addStyleRule failed"):EE.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function hoe(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&kE(t)}function doe(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(f){f.getAttribute(s)||(f.addEventListener("mouseenter",function(){var u=this.querySelector(t);u&&(u.style[o[0]]=o[1])}),f.addEventListener("mouseleave",function(){var u=this.querySelector(t);u&&(r&&this.matches(r)?u.style[o[0]]=o[1]:u.style[l[0]]=l[1])}),f.setAttribute(s,!0))})}function poe(e){var r=DE(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=LE(a);if(n){var i=soe.convertCssMatrix(n);t=foe.multiply(t,t,i)}}),t}function LE(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 DE(e){for(var r=[];moe(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function moe(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function yoe(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}FE.exports={getGraphDiv:uoe,isPlotDiv:coe,removeElement:kE,addStyleRule:voe,addRelatedStyleRule:CE,deleteRelatedStyleRule:hoe,setStyleOnHover:doe,getFullTransformMatrix:poe,getElementTransformMatrix:LE,getElementAndAncestors:DE,equalDomRects:yoe}});var Y1=P((Ske,qE)=>{"use strict";qE.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 Ls=P((Eke,zE)=>{"use strict";var PE=zn().extendFlat,goe=Mc(),NE={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},IE={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},boe=NE.flags.slice().concat(["fullReplot"]),xoe=IE.flags.slice().concat("layoutReplot");zE.exports={traces:NE,layout:IE,traceFlags:function(){return RE(boe)},layoutFlags:function(){return RE(xoe)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";O5.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};O5.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 B5=P((Cke,GE)=>{"use strict";GE.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 td=P(rd=>{"use strict";var{DATE_FORMAT_LINK:_oe,FORMAT_LINK:woe}=B5(),Aoe=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function Toe({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,woe,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,_oe,"for details on the date formatting syntax.",Aoe].join(" ")}rd.templateFormatStringDescription=Toe;rd.hovertemplateAttrs=({editType:e="none",arrayOk:r}={},t={})=>h0({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});rd.texttemplateAttrs=({editType:e="calc",arrayOk:r}={},t={})=>h0({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});rd.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:r}={},t={})=>({valType:"string",dflt:"",editType:e});rd.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var jg=P((Fke,jE)=>{"use strict";function Cc(e,r){return r?r.d2l(e):e}function UE(e,r){return r?r.l2d(e):e}function Moe(e){return e.x0}function Soe(e){return e.x1}function Eoe(e){return e.y0}function koe(e){return e.y1}function HE(e){return e.x0shift||0}function VE(e){return e.x1shift||0}function YE(e){return e.y0shift||0}function WE(e){return e.y1shift||0}function Yg(e,r){return Cc(e.x1,r)+VE(e)-Cc(e.x0,r)-HE(e)}function Wg(e,r,t){return Cc(e.y1,t)+WE(e)-Cc(e.y0,t)-YE(e)}function Coe(e,r){return Math.abs(Yg(e,r))}function Loe(e,r,t){return Math.abs(Wg(e,r,t))}function Doe(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(Yg(e,r),2)+Math.pow(Wg(e,r,t),2))}function Foe(e,r){return UE((Cc(e.x1,r)+VE(e)+Cc(e.x0,r)+HE(e))/2,r)}function qoe(e,r,t){return UE((Cc(e.y1,t)+WE(e)+Cc(e.y0,t)+YE(e))/2,t)}function Roe(e,r,t){return e.type!=="line"?void 0:Wg(e,r,t)/Yg(e,r)}jE.exports={x0:Moe,x1:Soe,y0:Eoe,y1:koe,slope:Roe,dx:Yg,dy:Wg,width:Coe,height:Loe,length:Doe,xcenter:Foe,ycenter:qoe}});var JE=P((qke,ZE)=>{"use strict";var Poe=Ls().overrideAll,b0=Cs(),XE=Gi(),Noe=kc().dash,Lc=zn().extendFlat,{shapeTexttemplateAttrs:Ioe,templatefallbackAttrs:Ooe}=td(),Boe=jg();ZE.exports=Poe({newshape:{visible:Lc({},b0.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:Lc({},b0.legend,{}),legendgroup:Lc({},b0.legendgroup,{}),legendgrouptitle:{text:Lc({},b0.legendgrouptitle.text,{}),font:XE({})},legendrank:Lc({},b0.legendrank,{}),legendwidth:Lc({},b0.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Lc({},Noe,{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:Lc({},b0.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:Ioe({newshape:!0},{keys:Object.keys(Boe)}),texttemplatefallback:Ooe({editType:"arraydraw"}),font:XE({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var QE=P((Rke,$E)=>{"use strict";var zoe=kc().dash,Goe=zn().extendFlat;$E.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:Goe({},zoe,{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 Xg=P((Pke,KE)=>{"use strict";KE.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 ad=P((Nke,ak)=>{"use strict";var z5=Gi(),Uoe=Y1(),Zg=wf(),ek=JE(),rk=QE(),Hoe=Xg(),tk=zn().extendFlat,Jg=z5({editType:"calc"});Jg.family.dflt='"Open Sans", verdana, arial, sans-serif';Jg.size.dflt=12;Jg.color.dflt=Zg.defaultLine;ak.exports={font:Jg,title:{text:{valType:"string",editType:"layoutstyle"},font:z5({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:z5({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:tk(Hoe({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:Zg.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:Zg.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:Zg.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:ek.newshape,activeshape:ek.activeshape,newselection:rk.newselection,activeselection:rk.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:tk({},Uoe.transition,{editType:"none"})}});var nk=P(()=>{(function(){if(!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")){var e=document.createElement("style");e.id="ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var Bt=P(oa=>{"use strict";var nd=g0(),ik=Hg(),ok=P5(),Voe=Mc(),Yoe=V1().addStyleRule,lk=zn(),Woe=Cs(),joe=ad(),Xoe=lk.extendFlat,G5=lk.extendDeepAll;oa.modules={};oa.allCategories={};oa.allTypes=[];oa.subplotsRegistry={};oa.componentsRegistry={};oa.layoutArrayContainers=[];oa.layoutArrayRegexes=[];oa.traceLayoutAttributes={};oa.localeRegistry={};oa.apiMethodRegistry={};oa.collectableSubplotTypes=null;oa.register=function(r){if(oa.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 ele=jh().timeFormat,gk=ba(),U5=g0(),Fc=Zh().mod,ld=Kn(),Bl=ld.BADNUM,Xo=ld.ONEDAY,W1=ld.ONEHOUR,Dc=ld.ONEMIN,od=ld.ONESEC,j1=ld.EPOCHJD,wu=Bt(),vk=jh().utcFormat,rle=/^\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,tle=/^\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,hk=new Date().getFullYear()-70;function Au(e){return e&&wu.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Un.dateTick0=function(e,r){var t=ale(e,!!r);if(r<2)return t;var a=Un.dateTime2ms(t,e);return a+=Xo*(r-1),Un.ms2DateTime(a,0,e)};function ale(e,r){return Au(e)?r?wu.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:wu.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}Un.dfltRange=function(e){return Au(e)?wu.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Un.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Qg,Kg;Un.dateTime2ms=function(e,r){if(Un.isJSDate(e)){var t=e.getTimezoneOffset()*Dc,a=(e.getUTCMinutes()-e.getMinutes())*Dc+(e.getUTCSeconds()-e.getSeconds())*od+(e.getUTCMilliseconds()-e.getMilliseconds());if(a){var n=3*Dc;t=t-n/2+Fc(a-t+n/2,n)}return e=Number(e)-t,e>=Qg&&e<=Kg?e:Bl}if(typeof e!="string"&&typeof e!="number")return Bl;e=String(e);var i=Au(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?tle:rle);if(!s)return Bl;var f=s[1],u=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(f.length===2)return Bl;f=Number(f);var y;try{var m=wu.getComponentMethod("calendars","getCal")(r);if(l){var b=u.charAt(u.length-1)==="i";u=parseInt(u,10),y=m.newDate(f,m.toMonthIndex(f,u,b),c)}else y=m.newDate(f,Number(u),c)}catch(_){return Bl}return y?(y.toJD()-j1)*Xo+v*W1+d*Dc+p*od:Bl}f.length===2?f=(Number(f)+2e3-hk)%100+hk:f=Number(f),u-=1;var A=new Date(Date.UTC(2e3,u,c,v,d));return A.setUTCFullYear(f),A.getUTCMonth()!==u||A.getUTCDate()!==c?Bl:A.getTime()+p*od};Qg=Un.MIN_MS=Un.dateTime2ms("-9999");Kg=Un.MAX_MS=Un.dateTime2ms("9999-12-31 23:59:59.9999");Un.isDateTime=function(e,r){return Un.dateTime2ms(e,r)!==Bl};function id(e,r){return String(e+Math.pow(10,r)).substr(1)}var $g=90*Xo,dk=3*W1,pk=5*Dc;Un.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Qg&&e<=Kg))return Bl;r||(r=0);var a=Math.floor(Fc(e+.05,1)*10),n=Math.round(e-a/10),i,o,l,s,f,u;if(Au(t)){var c=Math.floor(n/Xo)+j1,v=Math.floor(Fc(e,Xo));try{i=wu.getComponentMethod("calendars","getCal")(t).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){i=vk("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<$g?Math.floor(v/W1):0,l=r<$g?Math.floor(v%W1/Dc):0,s=r=Qg+Xo&&e<=Kg-Xo))return Bl;var r=Math.floor(Fc(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=ele("%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+=" "+id(r,2)+":"+id(t,2),(a||n)&&(e+=":"+id(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+id(n,i)}return e}Un.cleanDate=function(e,r,t){if(e===Bl)return r;if(Un.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Au(t))return U5.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=Un.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!Un.isDateTime(e,t))return U5.error("unrecognized date",e),r;return e};var nle=/%\d?f/g,ile=/%h/g,ole={1:"1",2:"1",3:"2",4:"2"};function mk(e,r,t,a){e=e.replace(nle,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(ile,function(){return ole[t("%q")(n)]}),Au(a))try{e=wu.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var lle=[59,59.9,59.99,59.999,59.9999];function sle(e,r){var t=Fc(e+.05,Xo),a=id(Math.floor(t/W1),2)+":"+id(Fc(Math.floor(t/Dc),60),2);if(r!=="M"){gk(r)||(r=0);var n=Math.min(Fc(e/od,60),lle[r]),i=(100+n).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}Un.formatDate=function(e,r,t,a,n,i){if(n=Au(n)&&n,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` +"use strict";var Plotly=(()=>{var zne=Object.create;var P1=Object.defineProperty,Gne=Object.defineProperties,Une=Object.getOwnPropertyDescriptor,Hne=Object.getOwnPropertyDescriptors,Vne=Object.getOwnPropertyNames,yM=Object.getOwnPropertySymbols,Yne=Object.getPrototypeOf,bM=Object.prototype.hasOwnProperty,Wne=Object.prototype.propertyIsEnumerable;var gM=(e,r,t)=>r in e?P1(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,h0=(e,r)=>{for(var t in r||(r={}))bM.call(r,t)&&gM(e,t,r[t]);if(yM)for(var t of yM(r))Wne.call(r,t)&&gM(e,t,r[t]);return e},Mg=(e,r)=>Gne(e,Hne(r));var Sg=(e,r)=>()=>(e&&(r=e(e=0)),r);var P=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),jne=(e,r)=>{for(var t in r)P1(e,t,{get:r[t],enumerable:!0})},xM=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Vne(r))!bM.call(e,n)&&n!==t&&P1(e,n,{get:()=>r[n],enumerable:!(a=Une(r,n))||a.enumerable});return e};var Xne=(e,r,t)=>(t=e!=null?zne(Yne(e)):{},xM(r||!e||!e.__esModule?P1(t,"default",{value:e,enumerable:!0}):t,e)),Zne=e=>xM(P1({},"__esModule",{value:!0}),e);var Eg=P(_M=>{"use strict";_M.version="3.3.1"});var AM=P((wM,kg)=>{(function(r,t,a){t[r]=t[r]||a(),typeof kg!="undefined"&&kg.exports&&(kg.exports=t[r])})("Promise",typeof window!="undefined"?window:wM,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(A){return setImmediate(A)}: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(_,x,T){return _[x]=T,_}}a=function(){var A,_,x;function T(E,S){this.fn=E,this.self=S,this.next=void 0}return{add:function(S,k){x=new T(S,k),_?_.next=x:A=x,_=x,x=void 0},drain:function(){var S=A;for(A=_=t=void 0;S;)S.fn.call(S.self),S=S.next}}}();function o(b,A){a.add(b,A),t||(t=i(a.drain))}function l(b){var A,_=typeof b;return b!=null&&(_=="object"||_=="function")&&(A=b.then),typeof A=="function"?A:!1}function s(){for(var b=0;b0&&o(s,_))}catch(x){c.call(new d(_),x)}}}function c(b){var A=this;A.triggered||(A.triggered=!0,A.def&&(A=A.def),A.msg=b,A.state=2,A.chain.length>0&&o(s,A))}function v(b,A,_,x){for(var T=0;T{(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 w=g.length,C=new Array(w);w--;)C[w]=g[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,f=this.CSSStyleDeclaration.prototype,u=f.setProperty;o.setAttribute=function(g,w){l.call(this,g,w+"")},o.setAttributeNS=function(g,w,C){s.call(this,g,w,C+"")},f.setProperty=function(g,w,C){u.call(this,g,w+"",C)}}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 w=-1,C=h.length,L,D;if(arguments.length===1){for(;++w=D){L=D;break}for(;++wD&&(L=D)}else{for(;++w=D){L=D;break}for(;++wD&&(L=D)}return L},e.max=function(h,g){var w=-1,C=h.length,L,D;if(arguments.length===1){for(;++w=D){L=D;break}for(;++wL&&(L=D)}else{for(;++w=D){L=D;break}for(;++wL&&(L=D)}return L},e.extent=function(h,g){var w=-1,C=h.length,L,D,G;if(arguments.length===1){for(;++w=D){L=G=D;break}for(;++wD&&(L=D),G=D){L=G=D;break}for(;++wD&&(L=D),G1)return G/(X-1)},e.deviation=function(){var h=e.variance.apply(this,arguments);return h&&Math.sqrt(h)};function p(h){return{left:function(g,w,C,L){for(arguments.length<3&&(C=0),arguments.length<4&&(L=g.length);C>>1;h(g[D],w)<0?C=D+1:L=D}return C},right:function(g,w,C,L){for(arguments.length<3&&(C=0),arguments.length<4&&(L=g.length);C>>1;h(g[D],w)>0?L=D:C=D+1}return C}}}var y=p(c);e.bisectLeft=y.left,e.bisect=e.bisectRight=y.right,e.bisector=function(h){return p(h.length===1?function(g,w){return c(h(g),w)}:h)},e.shuffle=function(h,g,w){(C=arguments.length)<3&&(w=h.length,C<2&&(g=0));for(var C=w-g,L,D;C;)D=Math.random()*C--|0,L=h[C+g],h[C+g]=h[D+g],h[D+g]=L;return h},e.permute=function(h,g){for(var w=g.length,C=new Array(w);w--;)C[w]=h[g[w]];return C},e.pairs=function(h){for(var g=0,w=h.length-1,C,L=h[0],D=new Array(w<0?0:w);g=0;)for(G=h[g],w=G.length;--w>=0;)D[--L]=G[w];return D};var b=Math.abs;e.range=function(h,g,w){if(arguments.length<3&&(w=1,arguments.length<2&&(g=h,h=0)),(g-h)/w===1/0)throw new Error("infinite range");var C=[],L=A(b(w)),D=-1,G;if(h*=L,g*=L,w*=L,w<0)for(;(G=h+w*++D)>g;)C.push(G/L);else for(;(G=h+w*++D)=g.length)return L?L.call(h,X):C?X.sort(C):X;for(var oe=-1,ye=X.length,ge=g[ie++],Ye,Qe,Me,Fe=new x,Ge;++oe=g.length)return R;var ie=[],oe=w[X++];return R.forEach(function(ye,ge){ie.push({key:ye,values:G(ge,X)})}),oe?ie.sort(function(ye,ge){return oe(ye.key,ge.key)}):ie}return h.map=function(R,X){return D(X,R,0)},h.entries=function(R){return G(D(e.map,R,0),0)},h.key=function(R){return g.push(R),h},h.sortKeys=function(R){return w[g.length-1]=R,h},h.sortValues=function(R){return C=R,h},h.rollup=function(R){return L=R,h},h},e.set=function(h){var g=new j;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,g);if(arguments.length===2){if(g==null)for(h in this)this.hasOwnProperty(h)&&this[h].on(C,null);return this}};function ue(h){var g=[],w=new x;function C(){for(var L=g,D=-1,G=L.length,R;++D=0&&(w=h.slice(0,g))!=="xmlns"&&(h=h.slice(g+1)),je.hasOwnProperty(w)?{space:je[w],local:h}:h}},Ue.attr=function(h,g){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(g in h)this.each(ur(g,h[g]));return this}return this.each(ur(h,g))};function ur(h,g){h=e.ns.qualify(h);function w(){this.removeAttribute(h)}function C(){this.removeAttributeNS(h.space,h.local)}function L(){this.setAttribute(h,g)}function D(){this.setAttributeNS(h.space,h.local,g)}function G(){var X=g.apply(this,arguments);X==null?this.removeAttribute(h):this.setAttribute(h,X)}function R(){var X=g.apply(this,arguments);X==null?this.removeAttributeNS(h.space,h.local):this.setAttributeNS(h.space,h.local,X)}return g==null?h.local?C:w:typeof g=="function"?h.local?R:G:h.local?D:L}function er(h){return h.trim().replace(/\s+/g," ")}Ue.classed=function(h,g){if(arguments.length<2){if(typeof h=="string"){var w=this.node(),C=(h=Pr(h)).length,L=-1;if(g=w.classList){for(;++L=0;)(D=w[C])&&(L&&L!==D.nextSibling&&L.parentNode.insertBefore(D,L),L=D);return this},Ue.sort=function(h){h=lr.apply(this,arguments);for(var g=-1,w=this.length;++g=g&&(g=L+1);!(X=G[g])&&++g0&&(h=h.slice(0,L));var G=Hr.get(h);G&&(h=G,D=jr);function R(){var oe=this[C];oe&&(this.removeEventListener(h,oe,oe.$),delete this[C])}function X(){var oe=D(g,t(arguments));R.call(this),this.addEventListener(h,this[C]=oe,oe.$=w),oe._=g}function ie(){var oe=new RegExp("^__on([^.]+)"+e.requote(h)+"$"),ye;for(var ge in this)if(ye=ge.match(oe)){var Ye=this[ge];this.removeEventListener(ye[1],Ye,Ye.$),delete this[ge]}}return L?g?X:R:g?Z:ie}var Hr=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Hr.forEach(function(h){"on"+h in a&&Hr.remove(h)});function ot(h,g){return function(w){var C=e.event;e.event=w,g[0]=this.__data__;try{h.apply(this,g)}finally{e.event=C}}}function jr(h,g){var w=ot(h,g);return function(C){var L=this,D=C.relatedTarget;(!D||D!==L&&!(D.compareDocumentPosition(L)&8))&&w.call(L,C)}}var at,xt=0;function Xr(h){var g=".dragsuppress-"+ ++xt,w="click"+g,C=e.select(i(h)).on("touchmove"+g,Le).on("dragstart"+g,Le).on("selectstart"+g,Le);if(at==null&&(at="onselectstart"in h?!1:Q(h.style,"userSelect")),at){var L=n(h).style,D=L[at];L[at]="none"}return function(G){if(C.on(g,null),at&&(L[at]=D),G){var R=function(){C.on(w,null)};C.on(w,function(){Le(),R()},!0),setTimeout(R,0)}}}e.mouse=function(h){return gr(h,Be())};var nt=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function gr(h,g){g.changedTouches&&(g=g.changedTouches[0]);var w=h.ownerSVGElement||h;if(w.createSVGPoint){var C=w.createSVGPoint();if(nt<0){var L=i(h);if(L.scrollX||L.scrollY){w=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var D=w[0][0].getScreenCTM();nt=!(D.f||D.e),w.remove()}}return nt?(C.x=g.pageX,C.y=g.pageY):(C.x=g.clientX,C.y=g.clientY),C=C.matrixTransform(h.getScreenCTM().inverse()),[C.x,C.y]}var G=h.getBoundingClientRect();return[g.clientX-G.left-h.clientLeft,g.clientY-G.top-h.clientTop]}e.touch=function(h,g,w){if(arguments.length<3&&(w=g,g=Be().changedTouches),g){for(var C=0,L=g.length,D;C0?1:h<0?-1:0}function Ba(h,g,w){return(g[0]-h[0])*(w[1]-h[1])-(g[1]-h[1])*(w[0]-h[0])}function an(h){return h>1?0:h<-1?xr:Math.acos(h)}function Va(h){return h>1?wt:h<-1?-wt:Math.asin(h)}function xn(h){return((h=Math.exp(h))-1/h)/2}function Rn(h){return((h=Math.exp(h))+1/h)/2}function hi(h){return((h=Math.exp(2*h))-1)/(h+1)}function hn(h){return(h=Math.sin(h/2))*h}var Xn=Math.SQRT2,Et=2,Pa=4;e.interpolateZoom=function(h,g){var w=h[0],C=h[1],L=h[2],D=g[0],G=g[1],R=g[2],X=D-w,ie=G-C,oe=X*X+ie*ie,ye,ge;if(oe0&&(dt=dt.transition().duration(G)),dt.call(ar.event)}function Ct(){Fe&&Fe.domain(Me.range().map(function(dt){return(dt-h.x)/h.k}).map(Me.invert)),Ke&&Ke.domain(Ge.range().map(function(dt){return(dt-h.y)/h.k}).map(Ge.invert))}function Lt(dt){R++||dt({type:"zoomstart"})}function Vt(dt){Ct(),dt({type:"zoom",scale:h.k,translate:[h.x,h.y]})}function qt(dt){--R||(dt({type:"zoomend"}),w=null)}function Nt(){var dt=this,Yt=Qe.of(dt,arguments),jt=0,va=e.select(i(dt)).on(ie,$n).on(oe,Qn),Ya=De(e.mouse(dt)),Dn=Xr(dt);Ac.call(dt),Lt(Yt);function $n(){jt=1,it(e.mouse(dt),Ya),Vt(Yt)}function Qn(){va.on(ie,null).on(oe,null),Dn(jt),qt(Yt)}}function ma(){var dt=this,Yt=Qe.of(dt,arguments),jt={},va=0,Ya,Dn=".zoom-"+e.event.changedTouches[0].identifier,$n="touchmove"+Dn,Qn="touchend"+Dn,Li=[],M=e.select(dt),B=Xr(dt);he(),Lt(Yt),M.on(X,null).on(ge,he);function V(){var _e=e.touches(dt);return Ya=h.k,_e.forEach(function(He){He.identifier in jt&&(jt[He.identifier]=De(He))}),_e}function he(){var _e=e.event.target;e.select(_e).on($n,xe).on(Qn,we),Li.push(_e);for(var He=e.event.changedTouches,or=0,ir=He.length;or1){var Fr=sr[0],yr=sr[1],Pe=Fr[0]-yr[0],fe=Fr[1]-yr[1];va=Pe*Pe+fe*fe}}function xe(){var _e=e.touches(dt),He,or,ir,sr;Ac.call(dt);for(var Qr=0,Fr=_e.length;Qr1?1:g,w=w<0?0:w>1?1:w,L=w<=.5?w*(1+g):w+g-w*g,C=2*w-L;function D(R){return R>360?R-=360:R<0&&(R+=360),R<60?C+(L-C)*R/60:R<180?L:R<240?C+(L-C)*(240-R)/60:C}function G(R){return Math.round(D(R)*255)}return new di(G(h+120),G(h),G(h-120))}e.hcl=en;function en(h,g,w){return this instanceof en?(this.h=+h,this.c=+g,void(this.l=+w)):arguments.length<2?h instanceof en?new en(h.h,h.c,h.l):h instanceof dn?Oo(h.l,h.a,h.b):Oo((h=_t((h=e.rgb(h)).r,h.g,h.b)).l,h.a,h.b):new en(h,g,w)}var lo=en.prototype=new Qa;lo.brighter=function(h){return new en(this.h,this.c,Math.min(100,this.l+nn*(arguments.length?h:1)))},lo.darker=function(h){return new en(this.h,this.c,Math.max(0,this.l-nn*(arguments.length?h:1)))},lo.rgb=function(){return Oi(this.h,this.c,this.l).rgb()};function Oi(h,g,w){return isNaN(h)&&(h=0),isNaN(g)&&(g=0),new dn(w,Math.cos(h*=It)*g,Math.sin(h)*g)}e.lab=dn;function dn(h,g,w){return this instanceof dn?(this.l=+h,this.a=+g,void(this.b=+w)):arguments.length<2?h instanceof dn?new dn(h.l,h.a,h.b):h instanceof en?Oi(h.h,h.c,h.l):_t((h=di(h)).r,h.g,h.b):new dn(h,g,w)}var nn=18,Zn=.95047,fs=1,us=1.08883,kl=dn.prototype=new Qa;kl.brighter=function(h){return new dn(Math.min(100,this.l+nn*(arguments.length?h:1)),this.a,this.b)},kl.darker=function(h){return new dn(Math.max(0,this.l-nn*(arguments.length?h:1)),this.a,this.b)},kl.rgb=function(){return Zu(this.l,this.a,this.b)};function Zu(h,g,w){var C=(h+16)/116,L=C+g/500,D=C-w/200;return L=Yf(L)*Zn,C=Yf(C)*fs,D=Yf(D)*us,new di(ji(3.2404542*L-1.5371385*C-.4985314*D),ji(-.969266*L+1.8760108*C+.041556*D),ji(.0556434*L-.2040259*C+1.0572252*D))}function Oo(h,g,w){return h>0?new en(Math.atan2(w,g)*ta,Math.sqrt(g*g+w*w),h):new en(NaN,NaN,h)}function Yf(h){return h>.206893034?h*h*h:(h-4/29)/7.787037}function Wf(h){return h>.008856?Math.pow(h,1/3):7.787037*h+4/29}function ji(h){return Math.round(255*(h<=.00304?12.92*h:1.055*Math.pow(h,1/2.4)-.055))}e.rgb=di;function di(h,g,w){return this instanceof di?(this.r=~~h,this.g=~~g,void(this.b=~~w)):arguments.length<2?h instanceof di?new di(h.r,h.g,h.b):$t(""+h,di,Ka):new di(h,g,w)}function Bi(h){return new di(h>>16,h>>8&255,h&255)}function Cl(h){return Bi(h)+""}var pi=di.prototype=new Qa;pi.brighter=function(h){h=Math.pow(.7,arguments.length?h:1);var g=this.r,w=this.g,C=this.b,L=30;return!g&&!w&&!C?new di(L,L,L):(g&&g>4,C=C>>4|C,L=X&240,L=L>>4|L,D=X&15,D=D<<4|D):h.length===7&&(C=(X&16711680)>>16,L=(X&65280)>>8,D=X&255)),g(C,L,D))}function ca(h,g,w){var C=Math.min(h/=255,g/=255,w/=255),L=Math.max(h,g,w),D=L-C,G,R,X=(L+C)/2;return D?(R=X<.5?D/(L+C):D/(2-L-C),h==L?G=(g-w)/D+(g0&&X<1?0:G),new fa(G,R,X)}function _t(h,g,w){h=Jn(h),g=Jn(g),w=Jn(w);var C=Wf((.4124564*h+.3575761*g+.1804375*w)/Zn),L=Wf((.2126729*h+.7151522*g+.072175*w)/fs),D=Wf((.0193339*h+.119192*g+.9503041*w)/us);return dn(116*L-16,500*(C-L),200*(L-D))}function Jn(h){return(h/=255)<=.04045?h/12.92:Math.pow((h+.055)/1.055,2.4)}function za(h){var g=parseFloat(h);return h.charAt(h.length-1)==="%"?Math.round(g*2.55):g}var Pn=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});Pn.forEach(function(h,g){Pn.set(h,Bi(g))});function ra(h){return typeof h=="function"?h:function(){return h}}e.functor=ra,e.xhr=Ao(le);function Ao(h){return function(g,w,C){return arguments.length===2&&typeof w=="function"&&(C=w,w=null),ol(g,w,h,C)}}function ol(h,g,w,C){var L={},D=e.dispatch("beforesend","progress","load","error"),G={},R=new XMLHttpRequest,X=null;self.XDomainRequest&&!("withCredentials"in R)&&/^(http(s)?:)?\/\//.test(h)&&(R=new XDomainRequest),"onload"in R?R.onload=R.onerror=ie:R.onreadystatechange=function(){R.readyState>3&&ie()};function ie(){var oe=R.status,ye;if(!oe&&Qp(R)||oe>=200&&oe<300||oe===304){try{ye=w.call(L,R)}catch(ge){D.error.call(L,ge);return}D.load.call(L,ye)}else D.error.call(L,R)}return R.onprogress=function(oe){var ye=e.event;e.event=oe;try{D.progress.call(L,R)}finally{e.event=ye}},L.header=function(oe,ye){return oe=(oe+"").toLowerCase(),arguments.length<2?G[oe]:(ye==null?delete G[oe]:G[oe]=ye+"",L)},L.mimeType=function(oe){return arguments.length?(g=oe==null?null:oe+"",L):g},L.responseType=function(oe){return arguments.length?(X=oe,L):X},L.response=function(oe){return w=oe,L},["get","post"].forEach(function(oe){L[oe]=function(){return L.send.apply(L,[oe].concat(t(arguments)))}}),L.send=function(oe,ye,ge){if(arguments.length===2&&typeof ye=="function"&&(ge=ye,ye=null),R.open(oe,h,!0),g!=null&&!("accept"in G)&&(G.accept=g+",*/*"),R.setRequestHeader)for(var Ye in G)R.setRequestHeader(Ye,G[Ye]);return g!=null&&R.overrideMimeType&&R.overrideMimeType(g),X!=null&&(R.responseType=X),ge!=null&&L.on("error",ge).on("load",function(Qe){ge(null,Qe)}),D.beforesend.call(L,R),R.send(ye==null?null:ye),L},L.abort=function(){return R.abort(),L},e.rebind(L,D,"on"),C==null?L:L.get(Si(C))}function Si(h){return h.length===1?function(g,w){h(g==null?w:null)}:h}function Qp(h){var g=h.responseType;return g&&g!=="text"?h.response:h.responseText}e.dsv=function(h,g){var w=new RegExp('["'+h+` +]`),C=h.charCodeAt(0);function L(ie,oe,ye){arguments.length<3&&(ye=oe,oe=null);var ge=ol(ie,g,oe==null?D:G(oe),ye);return ge.row=function(Ye){return arguments.length?ge.response((oe=Ye)==null?D:G(Ye)):oe},ge}function D(ie){return L.parse(ie.responseText)}function G(ie){return function(oe){return L.parse(oe.responseText,ie)}}L.parse=function(ie,oe){var ye;return L.parseRows(ie,function(ge,Ye){if(ye)return ye(ge,Ye-1);var Qe=function(Me){for(var Fe={},Ge=ge.length,Ke=0;Ke=Qe)return ge;if(Ke)return Ke=!1,ye;var Dr=Me;if(ie.charCodeAt(Dr)===34){for(var zr=Dr;zr++24?(isFinite(g)&&(clearTimeout(mi),mi=setTimeout(To,g)),Bo=0):(Bo=1,tf(To))}e.timer.flush=function(){Dl(),Ju()};function Dl(){for(var h=Date.now(),g=Mn;g;)h>=g.t&&g.c(h-g.t)&&(g.c=null),g=g.n;return h}function Ju(){for(var h,g=Mn,w=1/0;g;)g.c?(g.t=0;--R)Me.push(L[ie[ye[R]][2]]);for(R=+Ye;R1&&Ba(h[w[C-2]],h[w[C-1]],h[L])<=0;)--C;w[C++]=L}return w.slice(0,C)}function Kp(h,g){return h[0]-g[0]||h[1]-g[1]}e.geom.polygon=function(h){return Ae(h,$u),h};var $u=e.geom.polygon.prototype=[];$u.area=function(){for(var h=-1,g=this.length,w,C=this[g-1],L=0;++hNe)R=R.L;else if(G=g-Pv(R,w),G>Ne){if(!R.R){C=R;break}R=R.R}else{D>-Ne?(C=R.P,L=R):G>-Ne?(C=R,L=R.N):C=L=R;break}var X=Qu(h);if(yi.insert(C,X),!(!C&&!L)){if(C===L){lf(C),L=Qu(C.site),yi.insert(X,L),X.edge=L.edge=Jf(C.site,X.site),zi(C),zi(L);return}if(!L){X.edge=Jf(C.site,X.site);return}lf(C),lf(L);var ie=C.site,oe=ie.x,ye=ie.y,ge=h.x-oe,Ye=h.y-ye,Qe=L.site,Me=Qe.x-oe,Fe=Qe.y-ye,Ge=2*(ge*Fe-Ye*Me),Ke=ge*ge+Ye*Ye,ar=Me*Me+Fe*Fe,De={x:(Fe*Ke-Ye*ar)/Ge+oe,y:(ge*ar-Me*Ke)/Ge+ye};ql(L.edge,ie,Qe,De),X.edge=Jf(ie,h,null,De),L.edge=Jf(h,Qe,null,De),zi(C),zi(L)}}function Ku(h,g){var w=h.site,C=w.x,L=w.y,D=L-g;if(!D)return C;var G=h.P;if(!G)return-1/0;w=G.site;var R=w.x,X=w.y,ie=X-g;if(!ie)return R;var oe=R-C,ye=1/D-1/ie,ge=oe/ie;return ye?(-ge+Math.sqrt(ge*ge-2*ye*(oe*oe/(-2*ie)-X+ie/2+L-D/2)))/ye+C:(C+R)/2}function Pv(h,g){var w=h.N;if(w)return Ku(w,g);var C=h.site;return C.y===g?C.x:1/0}function ec(h){this.site=h,this.edges=[]}ec.prototype.prepare=function(){for(var h=this.edges,g=h.length,w;g--;)w=h[g].edge,(!w.b||!w.a)&&h.splice(g,1);return h.sort(of),h.length};function So(h){for(var g=h[0][0],w=h[1][0],C=h[0][1],L=h[1][1],D,G,R,X,ie=Mo,oe=ie.length,ye,ge,Ye,Qe,Me,Fe;oe--;)if(ye=ie[oe],!(!ye||!ye.prepare()))for(Ye=ye.edges,Qe=Ye.length,ge=0;geNe||b(X-G)>Ne)&&(Ye.splice(ge,0,new rc(t1(ye.site,Fe,b(R-g)Ne?{x:g,y:b(D-g)Ne?{x:b(G-L)Ne?{x:w,y:b(D-w)Ne?{x:b(G-C)=-pr)){var ge=X*X+ie*ie,Ye=oe*oe+Fe*Fe,Qe=(Fe*ge-ie*Ye)/ye,Me=(X*Ye-oe*ge)/ye,Fe=Me+R,Ge=nf.pop()||new Xf;Ge.arc=h,Ge.site=L,Ge.x=Qe+G,Ge.y=Fe+Math.sqrt(Qe*Qe+Me*Me),Ge.cy=Fe,h.circle=Ge;for(var Ke=null,ar=ll._;ar;)if(Ge.y0)){if(Me/=Ye,Ye<0){if(Me0){if(Me>ge)return;Me>ye&&(ye=Me)}if(Me=w-R,!(!Ye&&Me<0)){if(Me/=Ye,Ye<0){if(Me>ge)return;Me>ye&&(ye=Me)}else if(Ye>0){if(Me0)){if(Me/=Qe,Qe<0){if(Me0){if(Me>ge)return;Me>ye&&(ye=Me)}if(Me=C-X,!(!Qe&&Me<0)){if(Me/=Qe,Qe<0){if(Me>ge)return;Me>ye&&(ye=Me)}else if(Qe>0){if(Me0&&(L.a={x:R+ye*Ye,y:X+ye*Qe}),ge<1&&(L.b={x:R+ge*Ye,y:X+ge*Qe}),L}}}}}}function r1(h){for(var g=Uo,w=e1(h[0][0],h[0][1],h[1][0],h[1][1]),C=g.length,L;C--;)L=g[C],(!Zf(L,h)||!w(L)||b(L.a.x-L.b.x)=D)return;if(oe>ge){if(!C)C={x:Qe,y:G};else if(C.y>=R)return;w={x:Qe,y:R}}else{if(!C)C={x:Qe,y:R};else if(C.y1)if(oe>ge){if(!C)C={x:(G-Ge)/Fe,y:G};else if(C.y>=R)return;w={x:(R-Ge)/Fe,y:R}}else{if(!C)C={x:(R-Ge)/Fe,y:R};else if(C.y=D)return;w={x:D,y:Fe*D+Ge}}else{if(!C)C={x:D,y:Fe*D+Ge};else if(C.x=oe&&Ge.x<=ge&&Ge.y>=ye&&Ge.y<=Ye?[[oe,Ye],[ge,Ye],[ge,ye],[oe,ye]]:[];Ke.point=X[Me]}),ie}function R(X){return X.map(function(ie,oe){return{x:Math.round(C(ie,oe)/Ne)*Ne,y:Math.round(L(ie,oe)/Ne)*Ne,i:oe}})}return G.links=function(X){return fl(R(X)).edges.filter(function(ie){return ie.l&&ie.r}).map(function(ie){return{source:X[ie.l.i],target:X[ie.r.i]}})},G.triangles=function(X){var ie=[];return fl(R(X)).cells.forEach(function(oe,ye){for(var ge=oe.site,Ye=oe.edges.sort(of),Qe=-1,Me=Ye.length,Fe,Ge,Ke=Ye[Me-1].edge,ar=Ke.l===ge?Ke.r:Ke.l;++Qear&&(ar=oe.x),oe.y>De&&(De=oe.y),Ye.push(oe.x),Qe.push(oe.y);else for(Me=0;Mear&&(ar=Dr),zr>De&&(De=zr),Ye.push(Dr),Qe.push(zr)}var it=ar-Ge,yt=De-Ke;it>yt?De=Ke+it:ar=Ge+yt;function Ct(qt,Nt,ma,_n,Ca,dt,Yt,jt){if(!(isNaN(ma)||isNaN(_n)))if(qt.leaf){var va=qt.x,Ya=qt.y;if(va!=null)if(b(va-ma)+b(Ya-_n)<.01)Lt(qt,Nt,ma,_n,Ca,dt,Yt,jt);else{var Dn=qt.point;qt.x=qt.y=qt.point=null,Lt(qt,Dn,va,Ya,Ca,dt,Yt,jt),Lt(qt,Nt,ma,_n,Ca,dt,Yt,jt)}else qt.x=ma,qt.y=_n,qt.point=Nt}else Lt(qt,Nt,ma,_n,Ca,dt,Yt,jt)}function Lt(qt,Nt,ma,_n,Ca,dt,Yt,jt){var va=(Ca+Yt)*.5,Ya=(dt+jt)*.5,Dn=ma>=va,$n=_n>=Ya,Qn=$n<<1|Dn;qt.leaf=!1,qt=qt.nodes[Qn]||(qt.nodes[Qn]=Ch()),Dn?Ca=va:Yt=va,$n?dt=Ya:jt=Ya,Ct(qt,Nt,ma,_n,Ca,dt,Yt,jt)}var Vt=Ch();if(Vt.add=function(qt){Ct(Vt,qt,+ye(qt,++Me),+ge(qt,Me),Ge,Ke,ar,De)},Vt.visit=function(qt){$f(qt,Vt,Ge,Ke,ar,De)},Vt.find=function(qt){return Nv(Vt,qt[0],qt[1],Ge,Ke,ar,De)},Me=-1,g==null){for(;++MeD||ge>G||Ye=Dr,yt=w>=zr,Ct=yt<<1|it,Lt=Ct+4;Ctw&&(D=g.slice(w,D),R[G]?R[G]+=D:R[++G]=D),(C=C[0])===(L=L[0])?R[G]?R[G]+=L:R[++G]=L:(R[++G]=null,X.push({i:G,x:Ei(C,L)})),w=Qf.lastIndex;return w=0&&!(C=e.interpolators[w](h,g)););return C}e.interpolators=[function(h,g){var w=typeof g;return(w==="string"?Pn.has(g.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(g)?Eo:Sn:g instanceof Qa?Eo:Array.isArray(g)?ff:w==="object"&&isNaN(g)?Lh:Ei)(h,g)}],e.interpolateArray=ff;function ff(h,g){var w=[],C=[],L=h.length,D=g.length,G=Math.min(h.length,g.length),R;for(R=0;R=0?h.slice(0,g):h,C=g>=0?h.slice(g+1):"in";return w=Iv.get(w)||ac,C=Ov.get(C)||le,l1(C(w.apply(null,r.call(arguments,1))))};function l1(h){return function(g){return g<=0?0:g>=1?1:h(g)}}function so(h){return function(g){return 1-h(1-g)}}function Aa(h){return function(g){return .5*(g<.5?h(2*g):2-h(2-2*g))}}function Bv(h){return h*h}function zv(h){return h*h*h}function Zi(h){if(h<=0)return 0;if(h>=1)return 1;var g=h*h,w=g*h;return 4*(h<.5?w:3*(h-g)+w-.75)}function Gv(h){return function(g){return Math.pow(g,h)}}function Uv(h){return 1-Math.cos(h*wt)}function s1(h){return Math.pow(2,10*(h-1))}function f1(h){return 1-Math.sqrt(1-h*h)}function u1(h,g){var w;return arguments.length<2&&(g=.45),arguments.length?w=g/ht*Math.asin(1/h):(h=1,w=g/4),function(C){return 1+h*Math.pow(2,-10*C)*Math.sin((C-w)*ht/g)}}function c1(h){return h||(h=1.70158),function(g){return g*g*((h+1)*g-h)}}function Kf(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=Hv;function Hv(h,g){h=e.hcl(h),g=e.hcl(g);var w=h.h,C=h.c,L=h.l,D=g.h-w,G=g.c-C,R=g.l-L;return isNaN(G)&&(G=0,C=isNaN(C)?g.c:C),isNaN(D)?(D=0,w=isNaN(w)?g.h:w):D>180?D-=360:D<-180&&(D+=360),function(X){return Oi(w+D*X,C+G*X,L+R*X)+""}}e.interpolateHsl=v1;function v1(h,g){h=e.hsl(h),g=e.hsl(g);var w=h.h,C=h.s,L=h.l,D=g.h-w,G=g.s-C,R=g.l-L;return isNaN(G)&&(G=0,C=isNaN(C)?g.s:C),isNaN(D)?(D=0,w=isNaN(w)?g.h:w):D>180?D-=360:D<-180&&(D+=360),function(X){return Ka(w+D*X,C+G*X,L+R*X)+""}}e.interpolateLab=Vv;function Vv(h,g){h=e.lab(h),g=e.lab(g);var w=h.l,C=h.a,L=h.b,D=g.l-w,G=g.a-C,R=g.b-L;return function(X){return Zu(w+D*X,C+G*X,L+R*X)+""}}e.interpolateRound=nc;function nc(h,g){return g-=h,function(w){return Math.round(h+g*w)}}e.transform=function(h){var g=a.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 Dh(C?C.matrix:ms)})(h)};function Dh(h){var g=[h.a,h.b],w=[h.c,h.d],C=Fh(g),L=Rl(g,w),D=Fh(ki(w,g,-L))||0;g[0]*w[1]180?g+=360:g-h>180&&(h+=360),C.push({i:w.push(Pl(w)+"rotate(",null,")")-2,x:Ei(h,g)})):g&&w.push(Pl(w)+"rotate("+g+")")}function jv(h,g,w,C){h!==g?C.push({i:w.push(Pl(w)+"skewX(",null,")")-2,x:Ei(h,g)}):g&&w.push(Pl(w)+"skewX("+g+")")}function Xv(h,g,w,C){if(h[0]!==g[0]||h[1]!==g[1]){var L=w.push(Pl(w)+"scale(",null,",",null,")");C.push({i:L-4,x:Ei(h[0],g[0])},{i:L-2,x:Ei(h[1],g[1])})}else(g[0]!==1||g[1]!==1)&&w.push(Pl(w)+"scale("+g+")")}function ic(h,g){var w=[],C=[];return h=e.transform(h),g=e.transform(g),Yv(h.translate,g.translate,w,C),Wv(h.rotate,g.rotate,w,C),jv(h.skew,g.skew,w,C),Xv(h.scale,g.scale,w,C),h=g=null,function(L){for(var D=-1,G=C.length,R;++D0?D=De:(w.c=null,w.t=NaN,w=null,g.end({type:"end",alpha:D=0})):De>0&&(g.start({type:"start",alpha:D=De}),w=zo(h.tick)),h):D},h.start=function(){var De,Dr=Ye.length,zr=Qe.length,it=C[0],yt=C[1],Ct,Lt;for(De=0;De=0;)D.push(oe=ie[X]),oe.parent=R,oe.depth=R.depth+1;w&&(R.value=0),R.children=ie}else w&&(R.value=+w.call(C,R,R.depth)||0),delete R.children;return Ho(L,function(ye){var ge,Ye;h&&(ge=ye.children)&&ge.sort(h),w&&(Ye=ye.parent)&&(Ye.value+=ye.value)}),G}return C.sort=function(L){return arguments.length?(h=L,C):h},C.children=function(L){return arguments.length?(g=L,C):g},C.value=function(L){return arguments.length?(w=L,C):w},C.revalue=function(L){return w&&(ru(L,function(D){D.children&&(D.value=0)}),Ho(L,function(D){var G;D.children||(D.value=+w.call(C,D,D.depth)||0),(G=D.parent)&&(G.value+=D.value)})),L},C};function ys(h,g){return e.rebind(h,g,"sort","children","value"),h.nodes=h,h.links=y1,h}function ru(h,g){for(var w=[h];(h=w.pop())!=null;)if(g(h),(L=h.children)&&(C=L.length))for(var C,L;--C>=0;)w.push(L[C])}function Ho(h,g){for(var w=[h],C=[];(h=w.pop())!=null;)if(C.push(h),(G=h.children)&&(D=G.length))for(var L=-1,D,G;++LL&&(L=R),C.push(R)}for(G=0;GC&&(w=g,C=L);return w}function x1(h){return h.reduce(_1,0)}function _1(h,g){return h+g[1]}e.layout.histogram=function(){var h=!0,g=Number,w=A1,C=w1;function L(D,ge){for(var R=[],X=D.map(g,this),ie=w.call(this,X,ge),oe=C.call(this,ie,X,ge),ye,ge=-1,Ye=X.length,Qe=oe.length-1,Me=h?1:1/Ye,Fe;++ge0)for(ge=-1;++ge=ie[0]&&Fe<=ie[1]&&(ye=R[e.bisect(oe,Fe,1,Qe)-1],ye.y+=Me,ye.push(D[ge]));return R}return L.value=function(D){return arguments.length?(g=D,L):g},L.range=function(D){return arguments.length?(w=ra(D),L):w},L.bins=function(D){return arguments.length?(C=typeof D=="number"?function(G){return qh(G,D)}:ra(D),L):C},L.frequency=function(D){return arguments.length?(h=!!D,L):h},L};function w1(h,g){return qh(h,Math.ceil(Math.log(g.length)/Math.LN2+1))}function qh(h,g){for(var w=-1,C=+h[0],L=(h[1]-C)/g,D=[];++w<=g;)D[w]=L*w+C;return D}function A1(h){return[e.min(h),e.max(h)]}e.layout.pack=function(){var h=e.layout.hierarchy().sort(tu),g=0,w=[1,1],C;function L(D,G){var R=h.call(this,D,G),X=R[0],ie=w[0],oe=w[1],ye=C==null?Math.sqrt:typeof C=="function"?C:function(){return C};if(X.x=X.y=0,Ho(X,function(Ye){Ye.r=+ye(Ye.value)}),Ho(X,Ph),g){var ge=g*(C?1:Math.max(2*X.r/ie,2*X.r/oe))/2;Ho(X,function(Ye){Ye.r+=ge}),Ho(X,Ph),Ho(X,function(Ye){Ye.r-=ge})}return Nh(X,ie/2,oe/2,C?1:1/Math.max(2*X.r/ie,2*X.r/oe)),R}return L.size=function(D){return arguments.length?(w=D,L):w},L.radius=function(D){return arguments.length?(C=D==null||typeof D=="function"?D:+D,L):C},L.padding=function(D){return arguments.length?(g=+D,L):g},ys(L,h)};function tu(h,g){return h.value-g.value}function i0(h,g){var w=h._pack_next;h._pack_next=g,g._pack_prev=h,g._pack_next=w,w._pack_prev=g}function lc(h,g){h._pack_next=g,g._pack_prev=h}function Rh(h,g){var w=g.x-h.x,C=g.y-h.y,L=h.r+g.r;return .999*L*L>w*w+C*C}function Ph(h){if(!(g=h.children)||!(ge=g.length))return;var g,w=1/0,C=-1/0,L=1/0,D=-1/0,G,R,X,ie,oe,ye,ge;function Ye(De){w=Math.min(De.x-De.r,w),C=Math.max(De.x+De.r,C),L=Math.min(De.y-De.r,L),D=Math.max(De.y+De.r,D)}if(g.forEach(T1),G=g[0],G.x=-G.r,G.y=0,Ye(G),ge>1&&(R=g[1],R.x=R.r,R.y=0,Ye(R),ge>2))for(X=g[2],Tg(G,R,X),Ye(X),i0(G,X),G._pack_prev=X,i0(X,R),R=G._pack_next,ie=3;ieFe.x&&(Fe=Dr),Dr.depth>Ge.depth&&(Ge=Dr)});var Ke=g(Me,Fe)/2-Me.x,ar=w[0]/(Fe.x+g(Fe,Me)/2+Ke),De=w[1]/(Ge.depth||1);ru(Ye,function(Dr){Dr.x=(Dr.x+Ke)*ar,Dr.y=Dr.depth*De})}return ge}function D(oe){for(var ye={A:null,children:[oe]},ge=[ye],Ye;(Ye=ge.pop())!=null;)for(var Qe=Ye.children,Me,Fe=0,Ge=Qe.length;Fe0&&(k1(o0(Me,oe,ge),oe,Dr),Ge+=Dr,Ke+=Dr),ar+=Me.m,Ge+=Ye.m,De+=Fe.m,Ke+=Qe.m;Me&&!E1(Qe)&&(Qe.t=Me,Qe.m+=ar-Ke),Ye&&!S1(Fe)&&(Fe.t=Ye,Fe.m+=Ge-De,ge=oe)}return ge}function ie(oe){oe.x*=w[0],oe.y=oe.depth*w[1]}return L.separation=function(oe){return arguments.length?(g=oe,L):g},L.size=function(oe){return arguments.length?(C=(w=oe)==null?ie:null,L):C?null:w},L.nodeSize=function(oe){return arguments.length?(C=(w=oe)==null?null:ie,L):C?w:null},ys(L,h)};function Ih(h,g){return h.parent==g.parent?1:2}function S1(h){var g=h.children;return g.length?g[0]:h.t}function E1(h){var g=h.children,w;return(w=g.length)?g[w-1]:h.t}function k1(h,g,w){var C=w/(g.i-h.i);g.c-=C,g.s+=w,h.c+=C,g.z+=w,g.m+=w}function au(h){for(var g=0,w=0,C=h.children,L=C.length,D;--L>=0;)D=C[L],D.z+=g,D.m+=g,g+=D.s+(w+=D.c)}function o0(h,g,w){return h.a.parent===g.parent?h.a:w}e.layout.cluster=function(){var h=e.layout.hierarchy().sort(null).value(null),g=Ih,w=[1,1],C=!1;function L(D,G){var R=h.call(this,D,G),X=R[0],ie,oe=0;Ho(X,function(Me){var Fe=Me.children;Fe&&Fe.length?(Me.x=l0(Fe),Me.y=Bn(Fe)):(Me.x=ie?oe+=g(Me,ie):0,Me.y=0,ie=Me)});var ye=Oh(X),ge=Bh(X),Ye=ye.x-g(ye,ge)/2,Qe=ge.x+g(ge,ye)/2;return Ho(X,C?function(Me){Me.x=(Me.x-X.x)*w[0],Me.y=(X.y-Me.y)*w[1]}:function(Me){Me.x=(Me.x-Ye)/(Qe-Ye)*w[0],Me.y=(1-(X.y?Me.y/X.y:1))*w[1]}),R}return L.separation=function(D){return arguments.length?(g=D,L):g},L.size=function(D){return arguments.length?(C=(w=D)==null,L):C?null:w},L.nodeSize=function(D){return arguments.length?(C=(w=D)!=null,L):C?w:null},ys(L,h)};function Bn(h){return 1+e.max(h,function(g){return g.y})}function l0(h){return h.reduce(function(g,w){return g+w.x},0)/h.length}function Oh(h){var g=h.children;return g&&g.length?Oh(g[0]):h}function Bh(h){var g=h.children,w;return g&&(w=g.length)?Bh(g[w-1]):h}e.layout.treemap=function(){var h=e.layout.hierarchy(),g=Math.round,w=[1,1],C=null,L=s0,D=!1,G,R="squarify",X=.5*(1+Math.sqrt(5));function ie(Me,Fe){for(var Ge=-1,Ke=Me.length,ar,De;++Ge0;)Ke.push(De=ar[yt-1]),Ke.area+=De.area,R!=="squarify"||(zr=ge(Ke,it))<=Dr?(ar.pop(),Dr=zr):(Ke.area-=Ke.pop().area,Ye(Ke,it,Ge,!1),it=Math.min(Ge.dx,Ge.dy),Ke.length=Ke.area=0,Dr=1/0);Ke.length&&(Ye(Ke,it,Ge,!0),Ke.length=Ke.area=0),Fe.forEach(oe)}}function ye(Me){var Fe=Me.children;if(Fe&&Fe.length){var Ge=L(Me),Ke=Fe.slice(),ar,De=[];for(ie(Ke,Ge.dx*Ge.dy/Me.value),De.area=0;ar=Ke.pop();)De.push(ar),De.area+=ar.area,ar.z!=null&&(Ye(De,ar.z?Ge.dx:Ge.dy,Ge,!Ke.length),De.length=De.area=0);Fe.forEach(ye)}}function ge(Me,Fe){for(var Ge=Me.area,Ke,ar=0,De=1/0,Dr=-1,zr=Me.length;++Drar&&(ar=Ke));return Ge*=Ge,Fe*=Fe,Ge?Math.max(Fe*ar*X/Ge,Ge/(Fe*De*X)):1/0}function Ye(Me,Fe,Ge,Ke){var ar=-1,De=Me.length,Dr=Ge.x,zr=Ge.y,it=Fe?g(Me.area/Fe):0,yt;if(Fe==Ge.dx){for((Ke||it>Ge.dy)&&(it=Ge.dy);++arGe.dx)&&(it=Ge.dx);++ar1);return h+g*C*Math.sqrt(-2*Math.log(D)/D)}},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,w=0;w2?Lo:C1,ie=C?Jv:Zv;return L=X(h,g,ie,w),D=X(g,h,ie,ul),R}function R(X){return L(X)}return R.invert=function(X){return D(X)},R.domain=function(X){return arguments.length?(h=X.map(Number),G()):h},R.range=function(X){return arguments.length?(g=X,G()):g},R.rangeRound=function(X){return R.range(X).interpolate(nc)},R.clamp=function(X){return arguments.length?(C=X,G()):C},R.interpolate=function(X){return arguments.length?(w=X,G()):w},R.ticks=function(X){return _s(h,X)},R.tickFormat=function(X,ie){return d3_scale_linearTickFormat(h,X,ie)},R.nice=function(X){return uc(h,X),G()},R.copy=function(){return Gh(h,g,w,C)},G()}function fo(h,g){return e.rebind(h,g,"range","rangeRound","interpolate","clamp")}function uc(h,g){return cl(h,Ta(Ji(h,g)[2])),cl(h,Ta(Ji(h,g)[2])),h}function Ji(h,g){g==null&&(g=10);var w=sc(h),C=w[1]-w[0],L=Math.pow(10,Math.floor(Math.log(C/g)/Math.LN10)),D=g/C*L;return D<=.15?L*=10:D<=.35?L*=5:D<=.75&&(L*=2),w[0]=Math.ceil(w[0]/L)*L,w[1]=Math.floor(w[1]/L)*L+L*.5,w[2]=L,w}function _s(h,g){return e.range.apply(e,Ji(h,g))}var nu={s:1,g:1,p:1,r:1,e:1};function cf(h){return-Math.floor(Math.log(h)/Math.LN10+.01)}function cc(h,g){var w=cf(g[2]);return h in nu?Math.abs(w-cf(Math.max(b(g[0]),b(g[1]))))+ +(h!=="e"):w-(h==="%")*2}e.scale.log=function(){return vf(e.scale.linear().domain([0,1]),10,!0,[1,10])};function vf(h,g,w,C){function L(R){return(w?Math.log(R<0?0:R):-Math.log(R>0?0:-R))/Math.log(g)}function D(R){return w?Math.pow(g,R):-Math.pow(g,-R)}function G(R){return h(L(R))}return G.invert=function(R){return D(h.invert(R))},G.domain=function(R){return arguments.length?(w=R[0]>=0,h.domain((C=R.map(Number)).map(L)),G):C},G.base=function(R){return arguments.length?(g=+R,h.domain(C.map(L)),G):g},G.nice=function(){var R=cl(C.map(L),w?Math:ws);return h.domain(R),C=R.map(D),G},G.ticks=function(){var R=sc(C),X=[],ie=R[0],oe=R[1],ye=Math.floor(L(ie)),ge=Math.ceil(L(oe)),Ye=g%1?2:g;if(isFinite(ge-ye)){if(w){for(;ye0;Qe--)X.push(D(ye)*Qe);for(ye=0;X[ye]oe;ge--);X=X.slice(ye,ge)}return X},G.copy=function(){return vf(h.copy(),g,w,C)},fo(G,h)}var ws={floor:function(h){return-Math.ceil(-h)},ceil:function(h){return-Math.floor(-h)}};e.scale.pow=function(){return vc(e.scale.linear(),1,[0,1])};function vc(h,g,w){var C=hf(g),L=hf(1/g);function D(G){return h(C(G))}return D.invert=function(G){return L(h.invert(G))},D.domain=function(G){return arguments.length?(h.domain((w=G.map(Number)).map(C)),D):w},D.ticks=function(G){return _s(w,G)},D.tickFormat=function(G,R){return d3_scale_linearTickFormat(w,G,R)},D.nice=function(G){return D.domain(uc(w,G))},D.exponent=function(G){return arguments.length?(C=hf(g=G),L=hf(1/g),h.domain(w.map(C)),D):g},D.copy=function(){return vc(h.copy(),g,w)},fo(D,h)}function hf(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 hc([],{t:"range",a:[[]]})};function hc(h,g){var w,C,L;function D(R){return C[((w.get(R)||(g.t==="range"?w.set(R,h.push(R)):NaN))-1)%C.length]}function G(R,X){return e.range(h.length).map(function(ie){return R+X*ie})}return D.domain=function(R){if(!arguments.length)return h;h=[],w=new x;for(var X=-1,ie=R.length,oe;++X0?w[D-1]:h[0],Dge?0:1;if(oe=Tt)return X(oe,Qe)+(ie?X(ie,1-Qe):"")+"Z";var Me,Fe,Ge,Ke,ar=0,De=0,Dr,zr,it,yt,Ct,Lt,Vt,qt,Nt=[];if((Ke=(+G.apply(this,arguments)||0)/2)&&(Ge=C===df?Math.sqrt(ie*ie+oe*oe):+C.apply(this,arguments),Qe||(De*=-1),oe&&(De=Va(Ge/oe*Math.sin(Ke))),ie&&(ar=Va(Ge/ie*Math.sin(Ke)))),oe){Dr=oe*Math.cos(ye+De),zr=oe*Math.sin(ye+De),it=oe*Math.cos(ge-De),yt=oe*Math.sin(ge-De);var ma=Math.abs(ge-ye-2*De)<=xr?0:1;if(De&&mf(Dr,zr,it,yt)===Qe^ma){var _n=(ye+ge)/2;Dr=oe*Math.cos(_n),zr=oe*Math.sin(_n),it=yt=null}}else Dr=zr=0;if(ie){Ct=ie*Math.cos(ge-ar),Lt=ie*Math.sin(ge-ar),Vt=ie*Math.cos(ye+ar),qt=ie*Math.sin(ye+ar);var Ca=Math.abs(ye-ge+2*ar)<=xr?0:1;if(ar&&mf(Ct,Lt,Vt,qt)===1-Qe^Ca){var dt=(ye+ge)/2;Ct=ie*Math.cos(dt),Lt=ie*Math.sin(dt),Vt=qt=null}}else Ct=Lt=0;if(Ye>Ne&&(Me=Math.min(Math.abs(oe-ie)/2,+w.apply(this,arguments)))>.001){Fe=ie0?0:1}function yf(h,g,w,C,L){var D=h[0]-g[0],G=h[1]-g[1],R=(L?C:-C)/Math.sqrt(D*D+G*G),X=R*G,ie=-R*D,oe=h[0]+X,ye=h[1]+ie,ge=g[0]+X,Ye=g[1]+ie,Qe=(oe+ge)/2,Me=(ye+Ye)/2,Fe=ge-oe,Ge=Ye-ye,Ke=Fe*Fe+Ge*Ge,ar=w-C,De=oe*Ye-ge*ye,Dr=(Ge<0?-1:1)*Math.sqrt(Math.max(0,ar*ar*Ke-De*De)),zr=(De*Ge-Fe*Dr)/Ke,it=(-De*Fe-Ge*Dr)/Ke,yt=(De*Ge+Fe*Dr)/Ke,Ct=(-De*Fe+Ge*Dr)/Ke,Lt=zr-Qe,Vt=it-Me,qt=yt-Qe,Nt=Ct-Me;return Lt*Lt+Vt*Vt>qt*qt+Nt*Nt&&(zr=yt,it=Ct),[[zr-X,it-ie],[zr*w/ar,it*w/ar]]}function gf(){return!0}function bc(h){var g=Go,w=cs,C=gf,L=Ci,D=L.key,G=.7;function R(X){var ie=[],oe=[],ye=-1,ge=X.length,Ye,Qe=ra(g),Me=ra(w);function Fe(){ie.push("M",L(h(oe),G))}for(;++ye1?h.join("L"):h+"Z"}function bf(h){return h.join("L")+"Z"}function vl(h){for(var g=0,w=h.length,C=h[0],L=[C[0],",",C[1]];++g1&&L.push("H",C[0]),L.join("")}function cu(h){for(var g=0,w=h.length,C=h[0],L=[C[0],",",C[1]];++g1){R=g[1],D=h[X],X++,C+="C"+(L[0]+G[0])+","+(L[1]+G[1])+","+(D[0]-R[0])+","+(D[1]-R[1])+","+D[0]+","+D[1];for(var ie=2;ie9&&(D=w*3/Math.sqrt(D),G[R]=D*C,G[R+1]=D*L));for(R=-1;++R<=X;)D=(h[Math.min(X,R+1)][0]-h[Math.max(0,R-1)][0])/(6*(1+G[R]*G[R])),g.push([D||0,G[R]*D||0]);return g}function v0(h){return h.length<3?Ci(h):h[0]+Vo(h,D1(h))}e.svg.line.radial=function(){var h=bc(xc);return h.radius=h.x,delete h.x,h.angle=h.y,delete h.y,h};function xc(h){for(var g,w=-1,C=h.length,L,D;++wxr)+",1 "+ye}function ie(oe,ye,ge,Ye){return"Q 0,0 "+Ye}return D.radius=function(oe){return arguments.length?(w=ra(oe),D):w},D.source=function(oe){return arguments.length?(h=ra(oe),D):h},D.target=function(oe){return arguments.length?(g=ra(oe),D):g},D.startAngle=function(oe){return arguments.length?(C=ra(oe),D):C},D.endAngle=function(oe){return arguments.length?(L=ra(oe),D):L},D};function hu(h){return h.radius}e.svg.diagonal=function(){var h=Uh,g=vo,w=Hh;function C(L,D){var G=h.call(this,L,D),R=g.call(this,L,D),X=(G.y+R.y)/2,ie=[G,{x:G.x,y:X},{x:R.x,y:X},R];return ie=ie.map(w),"M"+ie[0]+"C"+ie[1]+" "+ie[2]+" "+ie[3]}return C.source=function(L){return arguments.length?(h=ra(L),C):h},C.target=function(L){return arguments.length?(g=ra(L),C):g},C.projection=function(L){return arguments.length?(w=L,C):w},C};function Hh(h){return[h.x,h.y]}e.svg.diagonal.radial=function(){var h=e.svg.diagonal(),g=Hh,w=h.projection;return h.projection=function(C){return arguments.length?w(F1(g=C)):g},h};function F1(h){return function(){var g=h.apply(this,arguments),w=g[0],C=g[1]-wt;return[w*Math.cos(C),w*Math.sin(C)]}}e.svg.symbol=function(){var h=R1,g=q1;function w(C,L){return(Yh.get(h.call(this,C,L))||Vh)(g.call(this,C,L))}return w.type=function(C){return arguments.length?(h=ra(C),w):h},w.size=function(C){return arguments.length?(g=ra(C),w):g},w};function q1(){return 64}function R1(){return"circle"}function Vh(h){var g=Math.sqrt(h/xr);return"M0,"+g+"A"+g+","+g+" 0 1,1 0,"+-g+"A"+g+","+g+" 0 1,1 0,"+g+"Z"}var Yh=e.map({circle:Vh,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*Wh)),w=g*Wh;return"M0,"+-g+"L"+w+",0 0,"+g+" "+-w+",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/wc),w=g*wc/2;return"M0,"+w+"L"+g+","+-w+" "+-g+","+-w+"Z"},"triangle-up":function(h){var g=Math.sqrt(h/wc),w=g*wc/2;return"M0,"+-w+"L"+g+","+w+" "+-g+","+w+"Z"}});e.svg.symbolTypes=Yh.keys();var wc=Math.sqrt(3),Wh=Math.tan(30*It);Ue.transition=function(h){for(var g=ml||++_f,w=pu(h),C=[],L,D,G=Il||{time:Date.now(),ease:Zi,delay:0,duration:250},R=-1,X=this.length;++R0;)ye[--Ke].call(h,Ge);if(Fe>=1)return G.event&&G.event.end.call(h,h.__data__,g),--D.count?delete D[C]:delete h[w],1}G||(R=L.time,X=zo(ge,0,R),G=D[C]={tween:new x,time:R,timer:X,delay:L.delay,duration:L.duration,ease:L.ease,index:g},L=null,++D.count)}e.svg.axis=function(){var h=e.scale.linear(),g=wf,w=6,C=6,L=3,D=[10],G=null,R;function X(ie){ie.each(function(){var oe=e.select(this),ye=this.__chart__||h,ge=this.__chart__=h.copy(),Ye=G==null?ge.ticks?ge.ticks.apply(ge,D):ge.domain():G,Qe=R==null?ge.tickFormat?ge.tickFormat.apply(ge,D):le:R,Me=oe.selectAll(".tick").data(Ye,ge),Fe=Me.enter().insert("g",".domain").attr("class","tick").style("opacity",Ne),Ge=e.transition(Me.exit()).style("opacity",Ne).remove(),Ke=e.transition(Me.order()).style("opacity",1),ar=Math.max(w,0)+L,De,Dr=fc(ge),zr=oe.selectAll(".domain").data([0]),it=(zr.enter().append("path").attr("class","domain"),e.transition(zr));Fe.append("line"),Fe.append("text");var yt=Fe.select("line"),Ct=Ke.select("line"),Lt=Me.select("text").text(Qe),Vt=Fe.select("text"),qt=Ke.select("text"),Nt=g==="top"||g==="left"?-1:1,ma,_n,Ca,dt;if(g==="bottom"||g==="top"?(De=yu,ma="x",Ca="y",_n="x2",dt="y2",Lt.attr("dy",Nt<0?"0em":".71em").style("text-anchor","middle"),it.attr("d","M"+Dr[0]+","+Nt*C+"V0H"+Dr[1]+"V"+Nt*C)):(De=gu,ma="y",Ca="x",_n="y2",dt="x2",Lt.attr("dy",".32em").style("text-anchor",Nt<0?"end":"start"),it.attr("d","M"+Nt*C+","+Dr[0]+"H0V"+Dr[1]+"H"+Nt*C)),yt.attr(dt,Nt*w),Vt.attr(Ca,Nt*ar),Ct.attr(_n,0).attr(dt,Nt*w),qt.attr(ma,0).attr(Ca,Nt*ar),ge.rangeBand){var Yt=ge,jt=Yt.rangeBand()/2;ye=ge=function(va){return Yt(va)+jt}}else ye.rangeBand?ye=ge:Ge.call(De,ge,ye);Fe.call(De,ye,ge),Ke.call(De,ge,ge)})}return X.scale=function(ie){return arguments.length?(h=ie,X):h},X.orient=function(ie){return arguments.length?(g=ie in mu?ie+"":wf,X):g},X.ticks=function(){return arguments.length?(D=t(arguments),X):D},X.tickValues=function(ie){return arguments.length?(G=ie,X):G},X.tickFormat=function(ie){return arguments.length?(R=ie,X):R},X.tickSize=function(ie){var oe=arguments.length;return oe?(w=+ie,C=+arguments[oe-1],X):w},X.innerTickSize=function(ie){return arguments.length?(w=+ie,X):w},X.outerTickSize=function(ie){return arguments.length?(C=+ie,X):C},X.tickPadding=function(ie){return arguments.length?(L=+ie,X):L},X.tickSubdivide=function(){return arguments.length&&X},X};var wf="bottom",mu={top:1,right:1,bottom:1,left:1};function yu(h,g,w){h.attr("transform",function(C){var L=g(C);return"translate("+(isFinite(L)?L:w(C))+",0)"})}function gu(h,g,w){h.attr("transform",function(C){var L=g(C);return"translate(0,"+(isFinite(L)?L:w(C))+")"})}e.svg.brush=function(){var h=Ee(oe,"brushstart","brush","brushend"),g=null,w=null,C=[0,0],L=[0,0],D,G,R=!0,X=!0,ie=Ms[0];function oe(Me){Me.each(function(){var Fe=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),Ge=Fe.selectAll(".background").data([0]);Ge.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Fe.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Ke=Fe.selectAll(".resize").data(ie,le);Ke.exit().remove(),Ke.enter().append("g").attr("class",function(zr){return"resize "+zr}).style("cursor",function(zr){return bu[zr]}).append("rect").attr("x",function(zr){return/[ew]$/.test(zr)?-3:null}).attr("y",function(zr){return/^[ns]/.test(zr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Ke.style("display",oe.empty()?"none":null);var ar=e.transition(Fe),De=e.transition(Ge),Dr;g&&(Dr=fc(g),De.attr("x",Dr[0]).attr("width",Dr[1]-Dr[0]),ge(ar)),w&&(Dr=fc(w),De.attr("y",Dr[0]).attr("height",Dr[1]-Dr[0]),Ye(ar)),ye(ar)})}oe.event=function(Me){Me.each(function(){var Fe=h.of(this,arguments),Ge={x:C,y:L,i:D,j:G},Ke=this.__chart__||Ge;this.__chart__=Ge,ml?e.select(this).transition().each("start.brush",function(){D=Ke.i,G=Ke.j,C=Ke.x,L=Ke.y,Fe({type:"brushstart"})}).tween("brush:brush",function(){var ar=ff(C,Ge.x),De=ff(L,Ge.y);return D=G=null,function(Dr){C=Ge.x=ar(Dr),L=Ge.y=De(Dr),Fe({type:"brush",mode:"resize"})}}).each("end.brush",function(){D=Ge.i,G=Ge.j,Fe({type:"brush",mode:"resize"}),Fe({type:"brushend"})}):(Fe({type:"brushstart"}),Fe({type:"brush",mode:"resize"}),Fe({type:"brushend"}))})};function ye(Me){Me.selectAll(".resize").attr("transform",function(Fe){return"translate("+C[+/e$/.test(Fe)]+","+L[+/^s/.test(Fe)]+")"})}function ge(Me){Me.select(".extent").attr("x",C[0]),Me.selectAll(".extent,.n>rect,.s>rect").attr("width",C[1]-C[0])}function Ye(Me){Me.select(".extent").attr("y",L[0]),Me.selectAll(".extent,.e>rect,.w>rect").attr("height",L[1]-L[0])}function Qe(){var Me=this,Fe=e.select(e.event.target),Ge=h.of(Me,arguments),Ke=e.select(Me),ar=Fe.datum(),De=!/^(n|s)$/.test(ar)&&g,Dr=!/^(e|w)$/.test(ar)&&w,zr=Fe.classed("extent"),it=Xr(Me),yt,Ct=e.mouse(Me),Lt,Vt=e.select(i(Me)).on("keydown.brush",ma).on("keyup.brush",_n);if(e.event.changedTouches?Vt.on("touchmove.brush",Ca).on("touchend.brush",Yt):Vt.on("mousemove.brush",Ca).on("mouseup.brush",Yt),Ke.interrupt().selectAll("*").interrupt(),zr)Ct[0]=C[0]-Ct[0],Ct[1]=L[0]-Ct[1];else if(ar){var qt=+/w$/.test(ar),Nt=+/^n/.test(ar);Lt=[C[1-qt]-Ct[0],L[1-Nt]-Ct[1]],Ct[0]=C[qt],Ct[1]=L[Nt]}else e.event.altKey&&(yt=Ct.slice());Ke.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Fe.style("cursor")),Ge({type:"brushstart"}),Ca();function ma(){e.event.keyCode==32&&(zr||(yt=null,Ct[0]-=C[1],Ct[1]-=L[1],zr=2),Le())}function _n(){e.event.keyCode==32&&zr==2&&(Ct[0]+=C[1],Ct[1]+=L[1],zr=0,Le())}function Ca(){var jt=e.mouse(Me),va=!1;Lt&&(jt[0]+=Lt[0],jt[1]+=Lt[1]),zr||(e.event.altKey?(yt||(yt=[(C[0]+C[1])/2,(L[0]+L[1])/2]),Ct[0]=C[+(jt[0]{(function(e,r){typeof Lg=="object"&&typeof TM!="undefined"?r(Lg):(e=e||self,r(e.d3=e.d3||{}))})(Lg,function(e){"use strict";var r=new Date,t=new Date;function a(Re,lr,st,kt){function Ar(tr){return Re(tr=arguments.length===0?new Date:new Date(+tr)),tr}return Ar.floor=function(tr){return Re(tr=new Date(+tr)),tr},Ar.ceil=function(tr){return Re(tr=new Date(tr-1)),lr(tr,1),Re(tr),tr},Ar.round=function(tr){var cr=Ar(tr),Hr=Ar.ceil(tr);return tr-cr0))return ot;do ot.push(jr=new Date(+tr)),lr(tr,Hr),Re(tr);while(jr=cr)for(;Re(cr),!tr(cr);)cr.setTime(cr-1)},function(cr,Hr){if(cr>=cr)if(Hr<0)for(;++Hr<=0;)for(;lr(cr,-1),!tr(cr););else for(;--Hr>=0;)for(;lr(cr,1),!tr(cr););})},st&&(Ar.count=function(tr,cr){return r.setTime(+tr),t.setTime(+cr),Re(r),Re(t),Math.floor(st(r,t))},Ar.every=function(tr){return tr=Math.floor(tr),!isFinite(tr)||!(tr>0)?null:tr>1?Ar.filter(kt?function(cr){return kt(cr)%tr===0}:function(cr){return Ar.count(0,cr)%tr===0}):Ar}),Ar}var n=a(function(){},function(Re,lr){Re.setTime(+Re+lr)},function(Re,lr){return lr-Re});n.every=function(Re){return Re=Math.floor(Re),!isFinite(Re)||!(Re>0)?null:Re>1?a(function(lr){lr.setTime(Math.floor(lr/Re)*Re)},function(lr,st){lr.setTime(+lr+st*Re)},function(lr,st){return(st-lr)/Re}):n};var i=n.range,o=1e3,l=6e4,s=36e5,f=864e5,u=6048e5,c=a(function(Re){Re.setTime(Re-Re.getMilliseconds())},function(Re,lr){Re.setTime(+Re+lr*o)},function(Re,lr){return(lr-Re)/o},function(Re){return Re.getUTCSeconds()}),v=c.range,d=a(function(Re){Re.setTime(Re-Re.getMilliseconds()-Re.getSeconds()*o)},function(Re,lr){Re.setTime(+Re+lr*l)},function(Re,lr){return(lr-Re)/l},function(Re){return Re.getMinutes()}),p=d.range,y=a(function(Re){Re.setTime(Re-Re.getMilliseconds()-Re.getSeconds()*o-Re.getMinutes()*l)},function(Re,lr){Re.setTime(+Re+lr*s)},function(Re,lr){return(lr-Re)/s},function(Re){return Re.getHours()}),m=y.range,b=a(function(Re){Re.setHours(0,0,0,0)},function(Re,lr){Re.setDate(Re.getDate()+lr)},function(Re,lr){return(lr-Re-(lr.getTimezoneOffset()-Re.getTimezoneOffset())*l)/f},function(Re){return Re.getDate()-1}),A=b.range;function _(Re){return a(function(lr){lr.setDate(lr.getDate()-(lr.getDay()+7-Re)%7),lr.setHours(0,0,0,0)},function(lr,st){lr.setDate(lr.getDate()+st*7)},function(lr,st){return(st-lr-(st.getTimezoneOffset()-lr.getTimezoneOffset())*l)/u})}var x=_(0),T=_(1),E=_(2),S=_(3),k=_(4),F=_(5),I=_(6),O=x.range,q=T.range,H=E.range,j=S.range,le=k.range,te=F.range,Q=I.range,J=a(function(Re){Re.setDate(1),Re.setHours(0,0,0,0)},function(Re,lr){Re.setMonth(Re.getMonth()+lr)},function(Re,lr){return lr.getMonth()-Re.getMonth()+(lr.getFullYear()-Re.getFullYear())*12},function(Re){return Re.getMonth()}),Z=J.range,ae=a(function(Re){Re.setMonth(0,1),Re.setHours(0,0,0,0)},function(Re,lr){Re.setFullYear(Re.getFullYear()+lr)},function(Re,lr){return lr.getFullYear()-Re.getFullYear()},function(Re){return Re.getFullYear()});ae.every=function(Re){return!isFinite(Re=Math.floor(Re))||!(Re>0)?null:a(function(lr){lr.setFullYear(Math.floor(lr.getFullYear()/Re)*Re),lr.setMonth(0,1),lr.setHours(0,0,0,0)},function(lr,st){lr.setFullYear(lr.getFullYear()+st*Re)})};var ue=ae.range,Le=a(function(Re){Re.setUTCSeconds(0,0)},function(Re,lr){Re.setTime(+Re+lr*l)},function(Re,lr){return(lr-Re)/l},function(Re){return Re.getUTCMinutes()}),Be=Le.range,Ee=a(function(Re){Re.setUTCMinutes(0,0,0)},function(Re,lr){Re.setTime(+Re+lr*s)},function(Re,lr){return(lr-Re)/s},function(Re){return Re.getUTCHours()}),Xe=Ee.range,Ae=a(function(Re){Re.setUTCHours(0,0,0,0)},function(Re,lr){Re.setUTCDate(Re.getUTCDate()+lr)},function(Re,lr){return(lr-Re)/f},function(Re){return Re.getUTCDate()-1}),rr=Ae.range;function ze(Re){return a(function(lr){lr.setUTCDate(lr.getUTCDate()-(lr.getUTCDay()+7-Re)%7),lr.setUTCHours(0,0,0,0)},function(lr,st){lr.setUTCDate(lr.getUTCDate()+st*7)},function(lr,st){return(st-lr)/u})}var We=ze(0),$e=ze(1),Ue=ze(2),ee=ze(3),de=ze(4),ne=ze(5),je=ze(6),ur=We.range,er=$e.range,Lr=Ue.range,Pr=ee.range,_r=de.range,Ir=ne.range,Yr=je.range,Kr=a(function(Re){Re.setUTCDate(1),Re.setUTCHours(0,0,0,0)},function(Re,lr){Re.setUTCMonth(Re.getUTCMonth()+lr)},function(Re,lr){return lr.getUTCMonth()-Re.getUTCMonth()+(lr.getUTCFullYear()-Re.getUTCFullYear())*12},function(Re){return Re.getUTCMonth()}),wr=Kr.range,Vr=a(function(Re){Re.setUTCMonth(0,1),Re.setUTCHours(0,0,0,0)},function(Re,lr){Re.setUTCFullYear(Re.getUTCFullYear()+lr)},function(Re,lr){return lr.getUTCFullYear()-Re.getUTCFullYear()},function(Re){return Re.getUTCFullYear()});Vr.every=function(Re){return!isFinite(Re=Math.floor(Re))||!(Re>0)?null:a(function(lr){lr.setUTCFullYear(Math.floor(lr.getUTCFullYear()/Re)*Re),lr.setUTCMonth(0,1),lr.setUTCHours(0,0,0,0)},function(lr,st){lr.setUTCFullYear(lr.getUTCFullYear()+st*Re)})};var Wr=Vr.range;e.timeDay=b,e.timeDays=A,e.timeFriday=F,e.timeFridays=te,e.timeHour=y,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=J,e.timeMonths=Z,e.timeSaturday=I,e.timeSaturdays=Q,e.timeSecond=c,e.timeSeconds=v,e.timeSunday=x,e.timeSundays=O,e.timeThursday=k,e.timeThursdays=le,e.timeTuesday=E,e.timeTuesdays=H,e.timeWednesday=S,e.timeWednesdays=j,e.timeWeek=x,e.timeWeeks=O,e.timeYear=ae,e.timeYears=ue,e.utcDay=Ae,e.utcDays=rr,e.utcFriday=ne,e.utcFridays=Ir,e.utcHour=Ee,e.utcHours=Xe,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=Le,e.utcMinutes=Be,e.utcMonday=$e,e.utcMondays=er,e.utcMonth=Kr,e.utcMonths=wr,e.utcSaturday=je,e.utcSaturdays=Yr,e.utcSecond=c,e.utcSeconds=v,e.utcSunday=We,e.utcSundays=ur,e.utcThursday=de,e.utcThursdays=_r,e.utcTuesday=Ue,e.utcTuesdays=Lr,e.utcWednesday=ee,e.utcWednesdays=Pr,e.utcWeek=We,e.utcWeeks=ur,e.utcYear=Vr,e.utcYears=Wr,Object.defineProperty(e,"__esModule",{value:!0})})});var jh=P((Dg,MM)=>{(function(e,r){typeof Dg=="object"&&typeof MM!="undefined"?r(Dg,_5()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(Dg,function(e,r){"use strict";function t(Se){if(0<=Se.y&&Se.y<100){var Ne=new Date(-1,Se.m,Se.d,Se.H,Se.M,Se.S,Se.L);return Ne.setFullYear(Se.y),Ne}return new Date(Se.y,Se.m,Se.d,Se.H,Se.M,Se.S,Se.L)}function a(Se){if(0<=Se.y&&Se.y<100){var Ne=new Date(Date.UTC(-1,Se.m,Se.d,Se.H,Se.M,Se.S,Se.L));return Ne.setUTCFullYear(Se.y),Ne}return new Date(Date.UTC(Se.y,Se.m,Se.d,Se.H,Se.M,Se.S,Se.L))}function n(Se,Ne,pr){return{y:Se,m:Ne,d:pr,H:0,M:0,S:0,L:0}}function i(Se){var Ne=Se.dateTime,pr=Se.date,xr=Se.time,ht=Se.periods,Tt=Se.days,wt=Se.shortDays,It=Se.months,ta=Se.shortMonths,Ma=v(ht),Ba=d(ht),an=v(Tt),Va=d(Tt),xn=v(wt),Rn=d(wt),hi=v(It),hn=d(It),Xn=v(ta),Et=d(ta),Pa={a:fs,A:us,b:kl,B:Zu,c:null,d:J,e:J,f:Be,H:Z,I:ae,j:ue,L:Le,m:Ee,M:Xe,p:Oo,q:Yf,Q:cr,s:Hr,S:Ae,u:rr,U:ze,V:We,w:$e,W:Ue,x:null,X:null,y:ee,Y:de,Z:ne,"%":tr},ia={a:Wf,A:ji,b:di,B:Bi,c:null,d:je,e:je,f:_r,H:ur,I:er,j:Lr,L:Pr,m:Ir,M:Yr,p:Cl,q:pi,Q:cr,s:Hr,S:Kr,u:wr,U:Vr,V:Wr,w:Re,W:lr,x:null,X:null,y:st,Y:kt,Z:Ar,"%":tr},Ia={a:Ka,A:en,b:lo,B:Oi,c:dn,d:k,e:k,f:j,H:I,I,j:F,L:H,m:S,M:O,p:Tn,q:E,Q:te,s:Q,S:q,u:y,U:m,V:b,w:p,W:A,x:nn,X:Zn,y:x,Y:_,Z:T,"%":le};Pa.x=$a(pr,Pa),Pa.X=$a(xr,Pa),Pa.c=$a(Ne,Pa),ia.x=$a(pr,ia),ia.X=$a(xr,ia),ia.c=$a(Ne,ia);function $a(Pt,$t){return function(ca){var _t=[],Jn=-1,za=0,Pn=Pt.length,ra,Ao,ol;for(ca instanceof Date||(ca=new Date(+ca));++Jn53)return null;"w"in _t||(_t.w=1),"Z"in _t?(za=a(n(_t.y,0,1)),Pn=za.getUTCDay(),za=Pn>4||Pn===0?r.utcMonday.ceil(za):r.utcMonday(za),za=r.utcDay.offset(za,(_t.V-1)*7),_t.y=za.getUTCFullYear(),_t.m=za.getUTCMonth(),_t.d=za.getUTCDate()+(_t.w+6)%7):(za=t(n(_t.y,0,1)),Pn=za.getDay(),za=Pn>4||Pn===0?r.timeMonday.ceil(za):r.timeMonday(za),za=r.timeDay.offset(za,(_t.V-1)*7),_t.y=za.getFullYear(),_t.m=za.getMonth(),_t.d=za.getDate()+(_t.w+6)%7)}else("W"in _t||"U"in _t)&&("w"in _t||(_t.w="u"in _t?_t.u%7:"W"in _t?1:0),Pn="Z"in _t?a(n(_t.y,0,1)).getUTCDay():t(n(_t.y,0,1)).getDay(),_t.m=0,_t.d="W"in _t?(_t.w+6)%7+_t.W*7-(Pn+5)%7:_t.w+_t.U*7-(Pn+6)%7);return"Z"in _t?(_t.H+=_t.Z/100|0,_t.M+=_t.Z%100,a(_t)):t(_t)}}function fa(Pt,$t,ca,_t){for(var Jn=0,za=$t.length,Pn=ca.length,ra,Ao;Jn=Pn)return-1;if(ra=$t.charCodeAt(Jn++),ra===37){if(ra=$t.charAt(Jn++),Ao=Ia[ra in o?$t.charAt(Jn++):ra],!Ao||(_t=Ao(Pt,ca,_t))<0)return-1}else if(ra!=ca.charCodeAt(_t++))return-1}return _t}function Tn(Pt,$t,ca){var _t=Ma.exec($t.slice(ca));return _t?(Pt.p=Ba[_t[0].toLowerCase()],ca+_t[0].length):-1}function Ka(Pt,$t,ca){var _t=xn.exec($t.slice(ca));return _t?(Pt.w=Rn[_t[0].toLowerCase()],ca+_t[0].length):-1}function en(Pt,$t,ca){var _t=an.exec($t.slice(ca));return _t?(Pt.w=Va[_t[0].toLowerCase()],ca+_t[0].length):-1}function lo(Pt,$t,ca){var _t=Xn.exec($t.slice(ca));return _t?(Pt.m=Et[_t[0].toLowerCase()],ca+_t[0].length):-1}function Oi(Pt,$t,ca){var _t=hi.exec($t.slice(ca));return _t?(Pt.m=hn[_t[0].toLowerCase()],ca+_t[0].length):-1}function dn(Pt,$t,ca){return fa(Pt,Ne,$t,ca)}function nn(Pt,$t,ca){return fa(Pt,pr,$t,ca)}function Zn(Pt,$t,ca){return fa(Pt,xr,$t,ca)}function fs(Pt){return wt[Pt.getDay()]}function us(Pt){return Tt[Pt.getDay()]}function kl(Pt){return ta[Pt.getMonth()]}function Zu(Pt){return It[Pt.getMonth()]}function Oo(Pt){return ht[+(Pt.getHours()>=12)]}function Yf(Pt){return 1+~~(Pt.getMonth()/3)}function Wf(Pt){return wt[Pt.getUTCDay()]}function ji(Pt){return Tt[Pt.getUTCDay()]}function di(Pt){return ta[Pt.getUTCMonth()]}function Bi(Pt){return It[Pt.getUTCMonth()]}function Cl(Pt){return ht[+(Pt.getUTCHours()>=12)]}function pi(Pt){return 1+~~(Pt.getUTCMonth()/3)}return{format:function(Pt){var $t=$a(Pt+="",Pa);return $t.toString=function(){return Pt},$t},parse:function(Pt){var $t=Qa(Pt+="",!1);return $t.toString=function(){return Pt},$t},utcFormat:function(Pt){var $t=$a(Pt+="",ia);return $t.toString=function(){return Pt},$t},utcParse:function(Pt){var $t=Qa(Pt+="",!0);return $t.toString=function(){return Pt},$t}}}var o={"-":"",_:" ",0:"0"},l=/^\s*\d+/,s=/^%/,f=/[\\^$*+?|[\]().{}]/g;function u(Se,Ne,pr){var xr=Se<0?"-":"",ht=(xr?-Se:Se)+"",Tt=ht.length;return xr+(Tt68?1900:2e3),pr+xr[0].length):-1}function T(Se,Ne,pr){var xr=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ne.slice(pr,pr+6));return xr?(Se.Z=xr[1]?0:-(xr[2]+(xr[3]||"00")),pr+xr[0].length):-1}function E(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+1));return xr?(Se.q=xr[0]*3-3,pr+xr[0].length):-1}function S(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+2));return xr?(Se.m=xr[0]-1,pr+xr[0].length):-1}function k(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+2));return xr?(Se.d=+xr[0],pr+xr[0].length):-1}function F(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+3));return xr?(Se.m=0,Se.d=+xr[0],pr+xr[0].length):-1}function I(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+2));return xr?(Se.H=+xr[0],pr+xr[0].length):-1}function O(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+2));return xr?(Se.M=+xr[0],pr+xr[0].length):-1}function q(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+2));return xr?(Se.S=+xr[0],pr+xr[0].length):-1}function H(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+3));return xr?(Se.L=+xr[0],pr+xr[0].length):-1}function j(Se,Ne,pr){var xr=l.exec(Ne.slice(pr,pr+6));return xr?(Se.L=Math.floor(xr[0]/1e3),pr+xr[0].length):-1}function le(Se,Ne,pr){var xr=s.exec(Ne.slice(pr,pr+1));return xr?pr+xr[0].length:-1}function te(Se,Ne,pr){var xr=l.exec(Ne.slice(pr));return xr?(Se.Q=+xr[0],pr+xr[0].length):-1}function Q(Se,Ne,pr){var xr=l.exec(Ne.slice(pr));return xr?(Se.s=+xr[0],pr+xr[0].length):-1}function J(Se,Ne){return u(Se.getDate(),Ne,2)}function Z(Se,Ne){return u(Se.getHours(),Ne,2)}function ae(Se,Ne){return u(Se.getHours()%12||12,Ne,2)}function ue(Se,Ne){return u(1+r.timeDay.count(r.timeYear(Se),Se),Ne,3)}function Le(Se,Ne){return u(Se.getMilliseconds(),Ne,3)}function Be(Se,Ne){return Le(Se,Ne)+"000"}function Ee(Se,Ne){return u(Se.getMonth()+1,Ne,2)}function Xe(Se,Ne){return u(Se.getMinutes(),Ne,2)}function Ae(Se,Ne){return u(Se.getSeconds(),Ne,2)}function rr(Se){var Ne=Se.getDay();return Ne===0?7:Ne}function ze(Se,Ne){return u(r.timeSunday.count(r.timeYear(Se)-1,Se),Ne,2)}function We(Se,Ne){var pr=Se.getDay();return Se=pr>=4||pr===0?r.timeThursday(Se):r.timeThursday.ceil(Se),u(r.timeThursday.count(r.timeYear(Se),Se)+(r.timeYear(Se).getDay()===4),Ne,2)}function $e(Se){return Se.getDay()}function Ue(Se,Ne){return u(r.timeMonday.count(r.timeYear(Se)-1,Se),Ne,2)}function ee(Se,Ne){return u(Se.getFullYear()%100,Ne,2)}function de(Se,Ne){return u(Se.getFullYear()%1e4,Ne,4)}function ne(Se){var Ne=Se.getTimezoneOffset();return(Ne>0?"-":(Ne*=-1,"+"))+u(Ne/60|0,"0",2)+u(Ne%60,"0",2)}function je(Se,Ne){return u(Se.getUTCDate(),Ne,2)}function ur(Se,Ne){return u(Se.getUTCHours(),Ne,2)}function er(Se,Ne){return u(Se.getUTCHours()%12||12,Ne,2)}function Lr(Se,Ne){return u(1+r.utcDay.count(r.utcYear(Se),Se),Ne,3)}function Pr(Se,Ne){return u(Se.getUTCMilliseconds(),Ne,3)}function _r(Se,Ne){return Pr(Se,Ne)+"000"}function Ir(Se,Ne){return u(Se.getUTCMonth()+1,Ne,2)}function Yr(Se,Ne){return u(Se.getUTCMinutes(),Ne,2)}function Kr(Se,Ne){return u(Se.getUTCSeconds(),Ne,2)}function wr(Se){var Ne=Se.getUTCDay();return Ne===0?7:Ne}function Vr(Se,Ne){return u(r.utcSunday.count(r.utcYear(Se)-1,Se),Ne,2)}function Wr(Se,Ne){var pr=Se.getUTCDay();return Se=pr>=4||pr===0?r.utcThursday(Se):r.utcThursday.ceil(Se),u(r.utcThursday.count(r.utcYear(Se),Se)+(r.utcYear(Se).getUTCDay()===4),Ne,2)}function Re(Se){return Se.getUTCDay()}function lr(Se,Ne){return u(r.utcMonday.count(r.utcYear(Se)-1,Se),Ne,2)}function st(Se,Ne){return u(Se.getUTCFullYear()%100,Ne,2)}function kt(Se,Ne){return u(Se.getUTCFullYear()%1e4,Ne,4)}function Ar(){return"+0000"}function tr(){return"%"}function cr(Se){return+Se}function Hr(Se){return Math.floor(+Se/1e3)}var ot;jr({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 jr(Se){return ot=i(Se),e.timeFormat=ot.format,e.timeParse=ot.parse,e.utcFormat=ot.utcFormat,e.utcParse=ot.utcParse,ot}var at="%Y-%m-%dT%H:%M:%S.%LZ";function xt(Se){return Se.toISOString()}var Xr=Date.prototype.toISOString?xt:e.utcFormat(at);function nt(Se){var Ne=new Date(Se);return isNaN(Ne)?null:Ne}var gr=+new Date("2000-01-01T00:00:00.000Z")?nt:e.utcParse(at);e.isoFormat=Xr,e.isoParse=gr,e.timeFormatDefaultLocale=jr,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var w5=P((Fg,SM)=>{(function(e,r){typeof Fg=="object"&&typeof SM!="undefined"?r(Fg):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(Fg,function(e){"use strict";function r(S){return Math.abs(S=Math.round(S))>=1e21?S.toLocaleString("en").replace(/,/g,""):S.toString(10)}function t(S,k){if((F=(S=k?S.toExponential(k-1):S.toExponential()).indexOf("e"))<0)return null;var F,I=S.slice(0,F);return[I.length>1?I[0]+I.slice(2):I,+S.slice(F+1)]}function a(S){return S=t(Math.abs(S)),S?S[1]:NaN}function n(S,k){return function(F,I){for(var O=F.length,q=[],H=0,j=S[0],le=0;O>0&&j>0&&(le+j+1>I&&(j=Math.max(1,I-le)),q.push(F.substring(O-=j,O+j)),!((le+=j+1)>I));)j=S[H=(H+1)%S.length];return q.reverse().join(k)}}function i(S){return function(k){return k.replace(/[0-9]/g,function(F){return S[+F]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function l(S){if(!(k=o.exec(S)))throw new Error("invalid format: "+S);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(S){this.fill=S.fill===void 0?" ":S.fill+"",this.align=S.align===void 0?">":S.align+"",this.sign=S.sign===void 0?"-":S.sign+"",this.symbol=S.symbol===void 0?"":S.symbol+"",this.zero=!!S.zero,this.width=S.width===void 0?void 0:+S.width,this.comma=!!S.comma,this.precision=S.precision===void 0?void 0:+S.precision,this.trim=!!S.trim,this.type=S.type===void 0?"":S.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 f(S){e:for(var k=S.length,F=1,I=-1,O;F0&&(I=0);break}return I>0?S.slice(0,I)+S.slice(O+1):S}var u;function c(S,k){var F=t(S,k);if(!F)return S+"";var I=F[0],O=F[1],q=O-(u=Math.max(-8,Math.min(8,Math.floor(O/3)))*3)+1,H=I.length;return q===H?I:q>H?I+new Array(q-H+1).join("0"):q>0?I.slice(0,q)+"."+I.slice(q):"0."+new Array(1-q).join("0")+t(S,Math.max(0,k+q-1))[0]}function v(S,k){var F=t(S,k);if(!F)return S+"";var I=F[0],O=F[1];return O<0?"0."+new Array(-O).join("0")+I:I.length>O+1?I.slice(0,O+1)+"."+I.slice(O+1):I+new Array(O-I.length+2).join("0")}var d={"%":function(S,k){return(S*100).toFixed(k)},b:function(S){return Math.round(S).toString(2)},c:function(S){return S+""},d:r,e:function(S,k){return S.toExponential(k)},f:function(S,k){return S.toFixed(k)},g:function(S,k){return S.toPrecision(k)},o:function(S){return Math.round(S).toString(8)},p:function(S,k){return v(S*100,k)},r:v,s:c,X:function(S){return Math.round(S).toString(16).toUpperCase()},x:function(S){return Math.round(S).toString(16)}};function p(S){return S}var y=Array.prototype.map,m=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function b(S){var k=S.grouping===void 0||S.thousands===void 0?p:n(y.call(S.grouping,Number),S.thousands+""),F=S.currency===void 0?"":S.currency[0]+"",I=S.currency===void 0?"":S.currency[1]+"",O=S.decimal===void 0?".":S.decimal+"",q=S.numerals===void 0?p:i(y.call(S.numerals,String)),H=S.percent===void 0?"%":S.percent+"",j=S.minus===void 0?"-":S.minus+"",le=S.nan===void 0?"NaN":S.nan+"";function te(J){J=l(J);var Z=J.fill,ae=J.align,ue=J.sign,Le=J.symbol,Be=J.zero,Ee=J.width,Xe=J.comma,Ae=J.precision,rr=J.trim,ze=J.type;ze==="n"?(Xe=!0,ze="g"):d[ze]||(Ae===void 0&&(Ae=12),rr=!0,ze="g"),(Be||Z==="0"&&ae==="=")&&(Be=!0,Z="0",ae="=");var We=Le==="$"?F:Le==="#"&&/[boxX]/.test(ze)?"0"+ze.toLowerCase():"",$e=Le==="$"?I:/[%p]/.test(ze)?H:"",Ue=d[ze],ee=/[defgprs%]/.test(ze);Ae=Ae===void 0?6:/[gprs]/.test(ze)?Math.max(1,Math.min(21,Ae)):Math.max(0,Math.min(20,Ae));function de(ne){var je=We,ur=$e,er,Lr,Pr;if(ze==="c")ur=Ue(ne)+ur,ne="";else{ne=+ne;var _r=ne<0||1/ne<0;if(ne=isNaN(ne)?le:Ue(Math.abs(ne),Ae),rr&&(ne=f(ne)),_r&&+ne==0&&ue!=="+"&&(_r=!1),je=(_r?ue==="("?ue:j:ue==="-"||ue==="("?"":ue)+je,ur=(ze==="s"?m[8+u/3]:"")+ur+(_r&&ue==="("?")":""),ee){for(er=-1,Lr=ne.length;++erPr||Pr>57){ur=(Pr===46?O+ne.slice(er+1):ne.slice(er))+ur,ne=ne.slice(0,er);break}}}Xe&&!Be&&(ne=k(ne,1/0));var Ir=je.length+ne.length+ur.length,Yr=Ir>1)+je+ne+ur+Yr.slice(Ir);break;default:ne=Yr+je+ne+ur;break}return q(ne)}return de.toString=function(){return J+""},de}function Q(J,Z){var ae=te((J=l(J),J.type="f",J)),ue=Math.max(-8,Math.min(8,Math.floor(a(Z)/3)))*3,Le=Math.pow(10,-ue),Be=m[8+ue/3];return function(Ee){return ae(Le*Ee)+Be}}return{format:te,formatPrefix:Q}}var A;_({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function _(S){return A=b(S),e.format=A.format,e.formatPrefix=A.formatPrefix,A}function x(S){return Math.max(0,-a(Math.abs(S)))}function T(S,k){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(k)/3)))*3-a(Math.abs(S)))}function E(S,k){return S=Math.abs(S),k=Math.abs(k)-S,Math.max(0,a(k)-a(S))+1}e.FormatSpecifier=s,e.formatDefaultLocale=_,e.formatLocale=b,e.formatSpecifier=l,e.precisionFixed=x,e.precisionPrefix=T,e.precisionRound=E,Object.defineProperty(e,"__esModule",{value:!0})})});var kM=P((bEe,EM)=>{"use strict";EM.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 ba=P((xEe,CM)=>{"use strict";var Jne=kM();CM.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&Jne(t))return!1}else if(r!=="number")return!1;return e-e<1}});var Kn=P((_Ee,LM)=>{"use strict";LM.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 A5=P((qg,DM)=>{(function(e,r){typeof qg=="object"&&typeof DM!="undefined"?r(qg):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(qg,function(e){"use strict";for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),a=0;a>2],u+=r[(l[s]&3)<<4|l[s+1]>>4],u+=r[(l[s+1]&15)<<2|l[s+2]>>6],u+=r[l[s+2]&63];return f%3===2?u=u.substring(0,u.length-1)+"=":f%3===1&&(u=u.substring(0,u.length-2)+"=="),u},i=function(o){var l=o.length*.75,s=o.length,f,u=0,c,v,d,p;o[o.length-1]==="="&&(l--,o[o.length-2]==="="&&l--);var y=new ArrayBuffer(l),m=new Uint8Array(y);for(f=0;f>4,m[u++]=(v&15)<<4|d>>2,m[u++]=(d&3)<<6|p&63;return y};e.decode=i,e.encode=n,Object.defineProperty(e,"__esModule",{value:!0})})});var Mc=P((wEe,FM)=>{"use strict";FM.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 Yo=P(Es=>{"use strict";var $ne=A5().decode,Qne=Mc(),T5=Array.isArray,Kne=ArrayBuffer,eie=DataView;function qM(e){return Kne.isView(e)&&!(e instanceof eie)}Es.isTypedArray=qM;function Rg(e){return T5(e)||qM(e)}Es.isArrayOrTypedArray=Rg;function rie(e){return!Rg(e[0])}Es.isArray1D=rie;Es.ensureArray=function(e,r){return T5(e)||(e=[]),e.length=r,e};var Fi={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};Fi.uint8c=Fi.u1c;Fi.uint8=Fi.u1;Fi.int8=Fi.i1;Fi.uint16=Fi.u2;Fi.int16=Fi.i2;Fi.uint32=Fi.u4;Fi.int32=Fi.i4;Fi.float32=Fi.f4;Fi.float64=Fi.f8;function M5(e){return e.constructor===ArrayBuffer}Es.isArrayBuffer=M5;Es.decodeTypedArraySpec=function(e){var r=[],t=tie(e),a=t.dtype,n=Fi[a];if(!n)throw new Error('Error in dtype: "'+a+'"');var i=n.BYTES_PER_ELEMENT,o=t.bdata;M5(o)||(o=$ne(o));var l=t.shape===void 0?[o.byteLength/i]:(""+t.shape).split(",");l.reverse();var s=l.length,f,u,c=+l[0],v=i*c,d=0;if(s===1)r=new n(o);else if(s===2)for(f=+l[1],u=0;u{"use strict";var PM=ba(),E5=Yo().isArrayOrTypedArray;BM.exports=function(r,t){if(PM(t))t=String(t);else if(typeof t!="string"||t.slice(-4)==="[-1]")throw"bad property string";var a=t.split("."),n,i,o,l;for(l=0;l{"use strict";var Xh=Pg(),lie=/^\w*$/,sie=0,zM=1,Ng=2,GM=3,d0=4;UM.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,o,l,s={};t&&t.length?(l=Xh(r,t),o=l.get()):o=r,t=t||"";var f={};if(o)for(i=0;i2)return s[d]=s[d]|Ng,c.set(v,null);if(u){for(i=d;i{"use strict";var fie=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,uie=/^[^\.\[\]]+$/;VM.exports=function(e,r){for(;r;){var t=e.match(fie);if(t)e=t[1];else if(e.match(uie))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 Ig=P((EEe,WM)=>{"use strict";var cie=ba();WM.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 cie(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var ZM=P((kEe,XM)=>{"use strict";var jM=Yo().isArrayOrTypedArray,N1=Mc();XM.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(jM(n)&&jM(i)&&N1(n[0])){if(a==="customdata"||a==="ids")continue;for(var o=Math.min(n.length,i.length),l=0;l{"use strict";function vie(e,r){var t=e%r;return t<0?t+r:t}function hie(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}JM.exports={mod:vie,modHalf:hie}});var ks=P((LEe,Og)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,o=e.max,l=e.random;function s(ee,de){if(ee=ee||"",de=de||{},ee instanceof s)return ee;if(!(this instanceof s))return new s(ee,de);var ne=f(ee);this._originalInput=ee,this._r=ne.r,this._g=ne.g,this._b=ne.b,this._a=ne.a,this._roundA=n(100*this._a)/100,this._format=de.format||ne.format,this._gradientType=de.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=ne.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 ee=this.toRgb();return(ee.r*299+ee.g*587+ee.b*114)/1e3},getLuminance:function(){var ee=this.toRgb(),de,ne,je,ur,er,Lr;return de=ee.r/255,ne=ee.g/255,je=ee.b/255,de<=.03928?ur=de/12.92:ur=e.pow((de+.055)/1.055,2.4),ne<=.03928?er=ne/12.92:er=e.pow((ne+.055)/1.055,2.4),je<=.03928?Lr=je/12.92:Lr=e.pow((je+.055)/1.055,2.4),.2126*ur+.7152*er+.0722*Lr},setAlpha:function(ee){return this._a=J(ee),this._roundA=n(100*this._a)/100,this},toHsv:function(){var ee=d(this._r,this._g,this._b);return{h:ee.h*360,s:ee.s,v:ee.v,a:this._a}},toHsvString:function(){var ee=d(this._r,this._g,this._b),de=n(ee.h*360),ne=n(ee.s*100),je=n(ee.v*100);return this._a==1?"hsv("+de+", "+ne+"%, "+je+"%)":"hsva("+de+", "+ne+"%, "+je+"%, "+this._roundA+")"},toHsl:function(){var ee=c(this._r,this._g,this._b);return{h:ee.h*360,s:ee.s,l:ee.l,a:this._a}},toHslString:function(){var ee=c(this._r,this._g,this._b),de=n(ee.h*360),ne=n(ee.s*100),je=n(ee.l*100);return this._a==1?"hsl("+de+", "+ne+"%, "+je+"%)":"hsla("+de+", "+ne+"%, "+je+"%, "+this._roundA+")"},toHex:function(ee){return y(this._r,this._g,this._b,ee)},toHexString:function(ee){return"#"+this.toHex(ee)},toHex8:function(ee){return m(this._r,this._g,this._b,this._a,ee)},toHex8String:function(ee){return"#"+this.toHex8(ee)},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(Z(this._r,255)*100)+"%",g:n(Z(this._g,255)*100)+"%",b:n(Z(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+n(Z(this._r,255)*100)+"%, "+n(Z(this._g,255)*100)+"%, "+n(Z(this._b,255)*100)+"%)":"rgba("+n(Z(this._r,255)*100)+"%, "+n(Z(this._g,255)*100)+"%, "+n(Z(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:te[y(this._r,this._g,this._b,!0)]||!1},toFilter:function(ee){var de="#"+b(this._r,this._g,this._b,this._a),ne=de,je=this._gradientType?"GradientType = 1, ":"";if(ee){var ur=s(ee);ne="#"+b(ur._r,ur._g,ur._b,ur._a)}return"progid:DXImageTransform.Microsoft.gradient("+je+"startColorstr="+de+",endColorstr="+ne+")"},toString:function(ee){var de=!!ee;ee=ee||this._format;var ne=!1,je=this._a<1&&this._a>=0,ur=!de&&je&&(ee==="hex"||ee==="hex6"||ee==="hex3"||ee==="hex4"||ee==="hex8"||ee==="name");return ur?ee==="name"&&this._a===0?this.toName():this.toRgbString():(ee==="rgb"&&(ne=this.toRgbString()),ee==="prgb"&&(ne=this.toPercentageRgbString()),(ee==="hex"||ee==="hex6")&&(ne=this.toHexString()),ee==="hex3"&&(ne=this.toHexString(!0)),ee==="hex4"&&(ne=this.toHex8String(!0)),ee==="hex8"&&(ne=this.toHex8String()),ee==="name"&&(ne=this.toName()),ee==="hsl"&&(ne=this.toHslString()),ee==="hsv"&&(ne=this.toHsvString()),ne||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(ee,de){var ne=ee.apply(null,[this].concat([].slice.call(de)));return this._r=ne._r,this._g=ne._g,this._b=ne._b,this.setAlpha(ne._a),this},lighten:function(){return this._applyModification(T,arguments)},brighten:function(){return this._applyModification(E,arguments)},darken:function(){return this._applyModification(S,arguments)},desaturate:function(){return this._applyModification(A,arguments)},saturate:function(){return this._applyModification(_,arguments)},greyscale:function(){return this._applyModification(x,arguments)},spin:function(){return this._applyModification(k,arguments)},_applyCombination:function(ee,de){return ee.apply(null,[this].concat([].slice.call(de)))},analogous:function(){return this._applyCombination(H,arguments)},complement:function(){return this._applyCombination(F,arguments)},monochromatic:function(){return this._applyCombination(j,arguments)},splitcomplement:function(){return this._applyCombination(q,arguments)},triad:function(){return this._applyCombination(I,arguments)},tetrad:function(){return this._applyCombination(O,arguments)}},s.fromRatio=function(ee,de){if(typeof ee=="object"){var ne={};for(var je in ee)ee.hasOwnProperty(je)&&(je==="a"?ne[je]=ee[je]:ne[je]=Xe(ee[je]));ee=ne}return s(ee,de)};function f(ee){var de={r:0,g:0,b:0},ne=1,je=null,ur=null,er=null,Lr=!1,Pr=!1;return typeof ee=="string"&&(ee=$e(ee)),typeof ee=="object"&&(We(ee.r)&&We(ee.g)&&We(ee.b)?(de=u(ee.r,ee.g,ee.b),Lr=!0,Pr=String(ee.r).substr(-1)==="%"?"prgb":"rgb"):We(ee.h)&&We(ee.s)&&We(ee.v)?(je=Xe(ee.s),ur=Xe(ee.v),de=p(ee.h,je,ur),Lr=!0,Pr="hsv"):We(ee.h)&&We(ee.s)&&We(ee.l)&&(je=Xe(ee.s),er=Xe(ee.l),de=v(ee.h,je,er),Lr=!0,Pr="hsl"),ee.hasOwnProperty("a")&&(ne=ee.a)),ne=J(ne),{ok:Lr,format:ee.format||Pr,r:i(255,o(de.r,0)),g:i(255,o(de.g,0)),b:i(255,o(de.b,0)),a:ne}}function u(ee,de,ne){return{r:Z(ee,255)*255,g:Z(de,255)*255,b:Z(ne,255)*255}}function c(ee,de,ne){ee=Z(ee,255),de=Z(de,255),ne=Z(ne,255);var je=o(ee,de,ne),ur=i(ee,de,ne),er,Lr,Pr=(je+ur)/2;if(je==ur)er=Lr=0;else{var _r=je-ur;switch(Lr=Pr>.5?_r/(2-je-ur):_r/(je+ur),je){case ee:er=(de-ne)/_r+(de1&&(Kr-=1),Kr<1/6?Ir+(Yr-Ir)*6*Kr:Kr<1/2?Yr:Kr<2/3?Ir+(Yr-Ir)*(2/3-Kr)*6:Ir}if(de===0)je=ur=er=ne;else{var Pr=ne<.5?ne*(1+de):ne+de-ne*de,_r=2*ne-Pr;je=Lr(_r,Pr,ee+1/3),ur=Lr(_r,Pr,ee),er=Lr(_r,Pr,ee-1/3)}return{r:je*255,g:ur*255,b:er*255}}function d(ee,de,ne){ee=Z(ee,255),de=Z(de,255),ne=Z(ne,255);var je=o(ee,de,ne),ur=i(ee,de,ne),er,Lr,Pr=je,_r=je-ur;if(Lr=je===0?0:_r/je,je==ur)er=0;else{switch(je){case ee:er=(de-ne)/_r+(de>1)+720)%360;--de;)je.h=(je.h+ur)%360,er.push(s(je));return er}function j(ee,de){de=de||6;for(var ne=s(ee).toHsv(),je=ne.h,ur=ne.s,er=ne.v,Lr=[],Pr=1/de;de--;)Lr.push(s({h:je,s:ur,v:er})),er=(er+Pr)%1;return Lr}s.mix=function(ee,de,ne){ne=ne===0?0:ne||50;var je=s(ee).toRgb(),ur=s(de).toRgb(),er=ne/100,Lr={r:(ur.r-je.r)*er+je.r,g:(ur.g-je.g)*er+je.g,b:(ur.b-je.b)*er+je.b,a:(ur.a-je.a)*er+je.a};return s(Lr)},s.readability=function(ee,de){var ne=s(ee),je=s(de);return(e.max(ne.getLuminance(),je.getLuminance())+.05)/(e.min(ne.getLuminance(),je.getLuminance())+.05)},s.isReadable=function(ee,de,ne){var je=s.readability(ee,de),ur,er;switch(er=!1,ur=Ue(ne),ur.level+ur.size){case"AAsmall":case"AAAlarge":er=je>=4.5;break;case"AAlarge":er=je>=3;break;case"AAAsmall":er=je>=7;break}return er},s.mostReadable=function(ee,de,ne){var je=null,ur=0,er,Lr,Pr,_r;ne=ne||{},Lr=ne.includeFallbackColors,Pr=ne.level,_r=ne.size;for(var Ir=0;Irur&&(ur=er,je=s(de[Ir]));return s.isReadable(ee,je,{level:Pr,size:_r})||!Lr?je:(ne.includeFallbackColors=!1,s.mostReadable(ee,["#fff","#000"],ne))};var le=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"},te=s.hexNames=Q(le);function Q(ee){var de={};for(var ne in ee)ee.hasOwnProperty(ne)&&(de[ee[ne]]=ne);return de}function J(ee){return ee=parseFloat(ee),(isNaN(ee)||ee<0||ee>1)&&(ee=1),ee}function Z(ee,de){Le(ee)&&(ee="100%");var ne=Be(ee);return ee=i(de,o(0,parseFloat(ee))),ne&&(ee=parseInt(ee*de,10)/100),e.abs(ee-de)<1e-6?1:ee%de/parseFloat(de)}function ae(ee){return i(1,o(0,ee))}function ue(ee){return parseInt(ee,16)}function Le(ee){return typeof ee=="string"&&ee.indexOf(".")!=-1&&parseFloat(ee)===1}function Be(ee){return typeof ee=="string"&&ee.indexOf("%")!=-1}function Ee(ee){return ee.length==1?"0"+ee:""+ee}function Xe(ee){return ee<=1&&(ee=ee*100+"%"),ee}function Ae(ee){return e.round(parseFloat(ee)*255).toString(16)}function rr(ee){return ue(ee)/255}var ze=function(){var ee="[-\\+]?\\d+%?",de="[-\\+]?\\d*\\.\\d+%?",ne="(?:"+de+")|(?:"+ee+")",je="[\\s|\\(]+("+ne+")[,|\\s]+("+ne+")[,|\\s]+("+ne+")\\s*\\)?",ur="[\\s|\\(]+("+ne+")[,|\\s]+("+ne+")[,|\\s]+("+ne+")[,|\\s]+("+ne+")\\s*\\)?";return{CSS_UNIT:new RegExp(ne),rgb:new RegExp("rgb"+je),rgba:new RegExp("rgba"+ur),hsl:new RegExp("hsl"+je),hsla:new RegExp("hsla"+ur),hsv:new RegExp("hsv"+je),hsva:new RegExp("hsva"+ur),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 We(ee){return!!ze.CSS_UNIT.exec(ee)}function $e(ee){ee=ee.replace(r,"").replace(t,"").toLowerCase();var de=!1;if(le[ee])ee=le[ee],de=!0;else if(ee=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ne;return(ne=ze.rgb.exec(ee))?{r:ne[1],g:ne[2],b:ne[3]}:(ne=ze.rgba.exec(ee))?{r:ne[1],g:ne[2],b:ne[3],a:ne[4]}:(ne=ze.hsl.exec(ee))?{h:ne[1],s:ne[2],l:ne[3]}:(ne=ze.hsla.exec(ee))?{h:ne[1],s:ne[2],l:ne[3],a:ne[4]}:(ne=ze.hsv.exec(ee))?{h:ne[1],s:ne[2],v:ne[3]}:(ne=ze.hsva.exec(ee))?{h:ne[1],s:ne[2],v:ne[3],a:ne[4]}:(ne=ze.hex8.exec(ee))?{r:ue(ne[1]),g:ue(ne[2]),b:ue(ne[3]),a:rr(ne[4]),format:de?"name":"hex8"}:(ne=ze.hex6.exec(ee))?{r:ue(ne[1]),g:ue(ne[2]),b:ue(ne[3]),format:de?"name":"hex"}:(ne=ze.hex4.exec(ee))?{r:ue(ne[1]+""+ne[1]),g:ue(ne[2]+""+ne[2]),b:ue(ne[3]+""+ne[3]),a:rr(ne[4]+""+ne[4]),format:de?"name":"hex8"}:(ne=ze.hex3.exec(ee))?{r:ue(ne[1]+""+ne[1]),g:ue(ne[2]+""+ne[2]),b:ue(ne[3]+""+ne[3]),format:de?"name":"hex"}:!1}function Ue(ee){var de,ne;return ee=ee||{level:"AA",size:"small"},de=(ee.level||"AA").toUpperCase(),ne=(ee.size||"small").toLowerCase(),de!=="AA"&&de!=="AAA"&&(de="AA"),ne!=="small"&&ne!=="large"&&(ne="small"),{level:de,size:ne}}typeof Og!="undefined"&&Og.exports?Og.exports=s:window.tinycolor=s})(Math)});var zn=P(B1=>{"use strict";var $M=Mc(),I1=Array.isArray;function die(e,r){var t,a;for(t=0;t{"use strict";QM.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 z1=P((qEe,KM)=>{"use strict";KM.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var Jh=P((REe,tS)=>{"use strict";var eS=z1(),rS=Gi(),k5=rS({editType:"none"});k5.family.dflt=eS.HOVERFONT;k5.size.dflt=eS.HOVERFONTSIZE;tS.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:k5,grouptitlefont:rS({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var Bg=P((PEe,aS)=>{"use strict";var pie=Gi(),G1=Jh().hoverlabel,U1=zn().extendFlat;aS.exports={hoverlabel:{bgcolor:U1({},G1.bgcolor,{arrayOk:!0}),bordercolor:U1({},G1.bordercolor,{arrayOk:!0}),font:pie({arrayOk:!0,editType:"none"}),align:U1({},G1.align,{arrayOk:!0}),namelength:U1({},G1.namelength,{arrayOk:!0}),showarrow:U1({},G1.showarrow),editType:"none"}}});var Cs=P((NEe,nS)=>{"use strict";var mie=Gi(),yie=Bg();nS.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:mie({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:yie.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 p0=P((IEe,lS)=>{"use strict";var gie=ks(),zg={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)"]]},iS=zg.RdBu;function bie(e,r){if(r||(r=iS),!e)return r;function t(){try{e=zg[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),oS(e)?e:r}function oS(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";m0.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];m0.defaultLine="#444";m0.lightLine="#eee";m0.background="#fff";m0.borderLine="#BEC8D9";m0.lightFraction=100*10/11});var ha=P((BEe,sS)=>{"use strict";var Wo=ks(),_ie=ba(),wie=Yo().isTypedArray,bi=sS.exports={},Gg=Af();bi.defaults=Gg.defaults;var Aie=bi.defaultLine=Gg.defaultLine;bi.lightLine=Gg.lightLine;var L5=bi.background=Gg.background;bi.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};bi.rgb=function(e){return bi.tinyRGB(Wo(e))};bi.opacity=function(e){return e?Wo(e).getAlpha():0};bi.addOpacity=function(e,r){var t=Wo(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};bi.combine=function(e,r){var t=Wo(e).toRgb();if(t.a===1)return Wo(e).toRgbString();var a=Wo(r||L5).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 Wo(i).toRgbString()};bi.interpolate=function(e,r,t){var a=Wo(e).toRgb(),n=Wo(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 Wo(i).toRgbString()};bi.contrast=function(e,r,t){var a=Wo(e);a.getAlpha()!==1&&(a=Wo(bi.combine(e,L5)));var n=a.isDark()?r?a.lighten(r):L5:t?a.darken(t):Aie;return n.toString()};bi.stroke=function(e,r){var t=Wo(r);e.style({stroke:bi.tinyRGB(t),"stroke-opacity":t.getAlpha()})};bi.fill=function(e,r){var t=Wo(r);e.style({fill:bi.tinyRGB(t),"fill-opacity":t.getAlpha()})};bi.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 $h=P((zEe,fS)=>{"use strict";fS.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var Qh=P(uS=>{"use strict";uS.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 dS=P(jo=>{"use strict";var D5=ba(),cS=ks(),vS=zn().extendFlat,Tie=Cs(),Mie=p0(),Sie=ha(),Eie=$h().DESELECTDIM,Kh=Pg(),hS=Qh().counter,kie=Zh().modHalf,Ls=Yo().isArrayOrTypedArray,Sc=Yo().isTypedArraySpec,Ec=Yo().decodeTypedArraySpec;jo.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(Ls(e)?e:Sc(e)?Ec(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;ai===!0||i===!1;n(e)||a.arrayOk&&Array.isArray(e)&&e.length>0&&e.every(n)?r.set(e):r.set(t)}},number:{coerceFunction:function(e,r,t,a){Sc(e)&&(e=Ec(e)),!D5(e)||a.min!==void 0&&ea.max?r.set(t):r.set(+e)}},integer:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}Sc(e)&&(e=Ec(e)),e%1||!D5(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){Sc(e)&&(e=Ec(e)),cS(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return cS(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(Mie.get(e,t))}},angle:{coerceFunction:function(e,r,t){Sc(e)&&(e=Ec(e)),e==="auto"?r.set("auto"):D5(e)?r.set(kie(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||hS(t);let i=o=>typeof o=="string"&&n.test(o);i(e)||a.arrayOk&&Ls(e)&&e.length>0&&e.every(i)?r.set(e):r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!hS(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 pS={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/un/"},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:{}}},mS={};function yS(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),yS(a,r[t]))}}yS(pS,mS);gS.exports={configAttributes:pS,dfltConfig:mS}});var q5=P((VEe,bS)=>{"use strict";var F5=da(),Cie=ba(),H1=[];bS.exports=function(e,r){if(H1.indexOf(e)!==-1)return;H1.push(e);var t=1e3;Cie(r)?t=r:r==="long"&&(t=3e3);var a=F5.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(H1);function i(o){o.duration(700).style("opacity",0).each("end",function(l){var s=H1.indexOf(l);s!==-1&&H1.splice(s,1),F5.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var l=F5.select(this);l.append("button").classed("notifier-close",!0).html("×").on("click",function(){l.transition().call(i)});for(var s=l.append("p"),f=o.split(//g),u=0;u{"use strict";var ed=y0().dfltConfig,R5=q5(),P5=xS.exports={};P5.log=function(){var e;if(ed.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};P5.warn=function(){var e;if(ed.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};P5.error=function(){var e;if(ed.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var Hg=P((WEe,_S)=>{"use strict";_S.exports=function(){}});var N5=P((jEe,wS)=>{"use strict";wS.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{AS.exports=Lie;function Lie(){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 SS=P((ZEe,MS)=>{MS.exports=Die;function Die(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 kS=P((JEe,ES)=>{ES.exports=Fie;function Fie(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 I5=P(($Ee,CS)=>{CS.exports=qie;function qie(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 DS=P((QEe,LS)=>{LS.exports=Rie;function Rie(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 qS=P((KEe,FS)=>{FS.exports=Pie;function Pie(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=r[4],l=r[5],s=r[6],f=r[7],u=r[8],c=r[9],v=r[10],d=r[11],p=r[12],y=r[13],m=r[14],b=r[15],A=t*l-a*o,_=t*s-n*o,x=t*f-i*o,T=a*s-n*l,E=a*f-i*l,S=n*f-i*s,k=u*y-c*p,F=u*m-v*p,I=u*b-d*p,O=c*m-v*y,q=c*b-d*y,H=v*b-d*m,j=A*H-_*q+x*O+T*I-E*F+S*k;return j?(j=1/j,e[0]=(l*H-s*q+f*O)*j,e[1]=(n*q-a*H-i*O)*j,e[2]=(y*S-m*E+b*T)*j,e[3]=(v*E-c*S-d*T)*j,e[4]=(s*I-o*H-f*F)*j,e[5]=(t*H-n*I+i*F)*j,e[6]=(m*x-p*S-b*_)*j,e[7]=(u*S-v*x+d*_)*j,e[8]=(o*q-l*I+f*k)*j,e[9]=(a*I-t*q-i*k)*j,e[10]=(p*E-y*x+b*A)*j,e[11]=(c*x-u*E-d*A)*j,e[12]=(l*F-o*O-s*k)*j,e[13]=(t*O-a*F+n*k)*j,e[14]=(y*_-p*T-m*A)*j,e[15]=(u*T-c*_+v*A)*j,e):null}});var PS=P((eke,RS)=>{RS.exports=Nie;function Nie(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=r[4],l=r[5],s=r[6],f=r[7],u=r[8],c=r[9],v=r[10],d=r[11],p=r[12],y=r[13],m=r[14],b=r[15];return e[0]=l*(v*b-d*m)-c*(s*b-f*m)+y*(s*d-f*v),e[1]=-(a*(v*b-d*m)-c*(n*b-i*m)+y*(n*d-i*v)),e[2]=a*(s*b-f*m)-l*(n*b-i*m)+y*(n*f-i*s),e[3]=-(a*(s*d-f*v)-l*(n*d-i*v)+c*(n*f-i*s)),e[4]=-(o*(v*b-d*m)-u*(s*b-f*m)+p*(s*d-f*v)),e[5]=t*(v*b-d*m)-u*(n*b-i*m)+p*(n*d-i*v),e[6]=-(t*(s*b-f*m)-o*(n*b-i*m)+p*(n*f-i*s)),e[7]=t*(s*d-f*v)-o*(n*d-i*v)+u*(n*f-i*s),e[8]=o*(c*b-d*y)-u*(l*b-f*y)+p*(l*d-f*c),e[9]=-(t*(c*b-d*y)-u*(a*b-i*y)+p*(a*d-i*c)),e[10]=t*(l*b-f*y)-o*(a*b-i*y)+p*(a*f-i*l),e[11]=-(t*(l*d-f*c)-o*(a*d-i*c)+u*(a*f-i*l)),e[12]=-(o*(c*m-v*y)-u*(l*m-s*y)+p*(l*v-s*c)),e[13]=t*(c*m-v*y)-u*(a*m-n*y)+p*(a*v-n*c),e[14]=-(t*(l*m-s*y)-o*(a*m-n*y)+p*(a*s-n*l)),e[15]=t*(l*v-s*c)-o*(a*v-n*c)+u*(a*s-n*l),e}});var IS=P((rke,NS)=>{NS.exports=Iie;function Iie(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],f=e[8],u=e[9],c=e[10],v=e[11],d=e[12],p=e[13],y=e[14],m=e[15],b=r*o-t*i,A=r*l-a*i,_=r*s-n*i,x=t*l-a*o,T=t*s-n*o,E=a*s-n*l,S=f*p-u*d,k=f*y-c*d,F=f*m-v*d,I=u*y-c*p,O=u*m-v*p,q=c*m-v*y;return b*q-A*O+_*I+x*F-T*k+E*S}});var BS=P((tke,OS)=>{OS.exports=Oie;function Oie(e,r,t){var a=r[0],n=r[1],i=r[2],o=r[3],l=r[4],s=r[5],f=r[6],u=r[7],c=r[8],v=r[9],d=r[10],p=r[11],y=r[12],m=r[13],b=r[14],A=r[15],_=t[0],x=t[1],T=t[2],E=t[3];return e[0]=_*a+x*l+T*c+E*y,e[1]=_*n+x*s+T*v+E*m,e[2]=_*i+x*f+T*d+E*b,e[3]=_*o+x*u+T*p+E*A,_=t[4],x=t[5],T=t[6],E=t[7],e[4]=_*a+x*l+T*c+E*y,e[5]=_*n+x*s+T*v+E*m,e[6]=_*i+x*f+T*d+E*b,e[7]=_*o+x*u+T*p+E*A,_=t[8],x=t[9],T=t[10],E=t[11],e[8]=_*a+x*l+T*c+E*y,e[9]=_*n+x*s+T*v+E*m,e[10]=_*i+x*f+T*d+E*b,e[11]=_*o+x*u+T*p+E*A,_=t[12],x=t[13],T=t[14],E=t[15],e[12]=_*a+x*l+T*c+E*y,e[13]=_*n+x*s+T*v+E*m,e[14]=_*i+x*f+T*d+E*b,e[15]=_*o+x*u+T*p+E*A,e}});var GS=P((ake,zS)=>{zS.exports=Bie;function Bie(e,r,t){var a=t[0],n=t[1],i=t[2],o,l,s,f,u,c,v,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]):(o=r[0],l=r[1],s=r[2],f=r[3],u=r[4],c=r[5],v=r[6],d=r[7],p=r[8],y=r[9],m=r[10],b=r[11],e[0]=o,e[1]=l,e[2]=s,e[3]=f,e[4]=u,e[5]=c,e[6]=v,e[7]=d,e[8]=p,e[9]=y,e[10]=m,e[11]=b,e[12]=o*a+u*n+p*i+r[12],e[13]=l*a+c*n+y*i+r[13],e[14]=s*a+v*n+m*i+r[14],e[15]=f*a+d*n+b*i+r[15]),e}});var HS=P((nke,US)=>{US.exports=zie;function zie(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 YS=P((ike,VS)=>{VS.exports=Gie;function Gie(e,r,t,a){var n=a[0],i=a[1],o=a[2],l=Math.sqrt(n*n+i*i+o*o),s,f,u,c,v,d,p,y,m,b,A,_,x,T,E,S,k,F,I,O,q,H,j,le;return Math.abs(l)<1e-6?null:(l=1/l,n*=l,i*=l,o*=l,s=Math.sin(t),f=Math.cos(t),u=1-f,c=r[0],v=r[1],d=r[2],p=r[3],y=r[4],m=r[5],b=r[6],A=r[7],_=r[8],x=r[9],T=r[10],E=r[11],S=n*n*u+f,k=i*n*u+o*s,F=o*n*u-i*s,I=n*i*u-o*s,O=i*i*u+f,q=o*i*u+n*s,H=n*o*u+i*s,j=i*o*u-n*s,le=o*o*u+f,e[0]=c*S+y*k+_*F,e[1]=v*S+m*k+x*F,e[2]=d*S+b*k+T*F,e[3]=p*S+A*k+E*F,e[4]=c*I+y*O+_*q,e[5]=v*I+m*O+x*q,e[6]=d*I+b*O+T*q,e[7]=p*I+A*O+E*q,e[8]=c*H+y*j+_*le,e[9]=v*H+m*j+x*le,e[10]=d*H+b*j+T*le,e[11]=p*H+A*j+E*le,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var jS=P((oke,WS)=>{WS.exports=Uie;function Uie(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[4],o=r[5],l=r[6],s=r[7],f=r[8],u=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+f*a,e[5]=o*n+u*a,e[6]=l*n+c*a,e[7]=s*n+v*a,e[8]=f*n-i*a,e[9]=u*n-o*a,e[10]=c*n-l*a,e[11]=v*n-s*a,e}});var ZS=P((lke,XS)=>{XS.exports=Hie;function Hie(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],f=r[8],u=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-f*a,e[1]=o*n-u*a,e[2]=l*n-c*a,e[3]=s*n-v*a,e[8]=i*a+f*n,e[9]=o*a+u*n,e[10]=l*a+c*n,e[11]=s*a+v*n,e}});var $S=P((ske,JS)=>{JS.exports=Vie;function Vie(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],f=r[4],u=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+f*a,e[1]=o*n+u*a,e[2]=l*n+c*a,e[3]=s*n+v*a,e[4]=f*n-i*a,e[5]=u*n-o*a,e[6]=c*n-l*a,e[7]=v*n-s*a,e}});var KS=P((fke,QS)=>{QS.exports=Yie;function Yie(e,r,t){var a,n,i,o=t[0],l=t[1],s=t[2],f=Math.sqrt(o*o+l*l+s*s);return Math.abs(f)<1e-6?null:(f=1/f,o*=f,l*=f,s*=f,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 rE=P((uke,eE)=>{eE.exports=Wie;function Wie(e,r,t){var a=r[0],n=r[1],i=r[2],o=r[3],l=a+a,s=n+n,f=i+i,u=a*l,c=a*s,v=a*f,d=n*s,p=n*f,y=i*f,m=o*l,b=o*s,A=o*f;return e[0]=1-(d+y),e[1]=c+A,e[2]=v-b,e[3]=0,e[4]=c-A,e[5]=1-(u+y),e[6]=p+m,e[7]=0,e[8]=v+b,e[9]=p-m,e[10]=1-(u+d),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var aE=P((cke,tE)=>{tE.exports=jie;function jie(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 iE=P((vke,nE)=>{nE.exports=Xie;function Xie(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 lE=P((hke,oE)=>{oE.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 fE=P((dke,sE)=>{sE.exports=Jie;function Jie(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 cE=P((pke,uE)=>{uE.exports=$ie;function $ie(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 hE=P((mke,vE)=>{vE.exports=Qie;function Qie(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=t+t,l=a+a,s=n+n,f=t*o,u=a*o,c=a*l,v=n*o,d=n*l,p=n*s,y=i*o,m=i*l,b=i*s;return e[0]=1-c-p,e[1]=u+b,e[2]=v-m,e[3]=0,e[4]=u-b,e[5]=1-f-p,e[6]=d+y,e[7]=0,e[8]=v+m,e[9]=d-y,e[10]=1-f-c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var pE=P((yke,dE)=>{dE.exports=Kie;function Kie(e,r,t,a,n,i,o){var l=1/(t-r),s=1/(n-a),f=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)*f,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*i*2*f,e[15]=0,e}});var yE=P((gke,mE)=>{mE.exports=eoe;function eoe(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 bE=P((bke,gE)=>{gE.exports=roe;function roe(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),f=2/(n+i);return e[0]=s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=f,e[6]=0,e[7]=0,e[8]=-((o-l)*s*.5),e[9]=(n-i)*f*.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 _E=P((xke,xE)=>{xE.exports=toe;function toe(e,r,t,a,n,i,o){var l=1/(r-t),s=1/(a-n),f=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*f,e[11]=0,e[12]=(r+t)*l,e[13]=(n+a)*s,e[14]=(o+i)*f,e[15]=1,e}});var AE=P((_ke,wE)=>{var aoe=I5();wE.exports=noe;function noe(e,r,t,a){var n,i,o,l,s,f,u,c,v,d,p=r[0],y=r[1],m=r[2],b=a[0],A=a[1],_=a[2],x=t[0],T=t[1],E=t[2];return Math.abs(p-x)<1e-6&&Math.abs(y-T)<1e-6&&Math.abs(m-E)<1e-6?aoe(e):(u=p-x,c=y-T,v=m-E,d=1/Math.sqrt(u*u+c*c+v*v),u*=d,c*=d,v*=d,n=A*v-_*c,i=_*u-b*v,o=b*c-A*u,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-u*o,f=u*i-c*n,d=Math.sqrt(l*l+s*s+f*f),d?(d=1/d,l*=d,s*=d,f*=d):(l=0,s=0,f=0),e[0]=n,e[1]=l,e[2]=u,e[3]=0,e[4]=i,e[5]=s,e[6]=c,e[7]=0,e[8]=o,e[9]=f,e[10]=v,e[11]=0,e[12]=-(n*p+i*y+o*m),e[13]=-(l*p+s*y+f*m),e[14]=-(u*p+c*y+v*m),e[15]=1,e)}});var ME=P((wke,TE)=>{TE.exports=ioe;function ioe(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 O5=P((Ake,SE)=>{SE.exports={create:TS(),clone:SS(),copy:kS(),identity:I5(),transpose:DS(),invert:qS(),adjoint:PS(),determinant:IS(),multiply:BS(),translate:GS(),scale:HS(),rotate:YS(),rotateX:jS(),rotateY:ZS(),rotateZ:$S(),fromRotation:KS(),fromRotationTranslation:rE(),fromScaling:aE(),fromTranslation:iE(),fromXRotation:lE(),fromYRotation:fE(),fromZRotation:cE(),fromQuat:hE(),frustum:pE(),perspective:yE(),perspectiveFromFieldOfView:bE(),ortho:_E(),lookAt:AE(),str:ME()}});var Vg=P(Gn=>{"use strict";var ooe=O5();Gn.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var loe=da(),EE=g0(),soe=Vg(),foe=O5();function uoe(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 coe(e){var r=loe.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function kE(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function voe(e,r){CE("global",e,r)}function CE(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):EE.warn("addStyleRule failed"):EE.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function hoe(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&kE(t)}function doe(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(f){f.getAttribute(s)||(f.addEventListener("mouseenter",function(){var u=this.querySelector(t);u&&(u.style[o[0]]=o[1])}),f.addEventListener("mouseleave",function(){var u=this.querySelector(t);u&&(r&&this.matches(r)?u.style[o[0]]=o[1]:u.style[l[0]]=l[1])}),f.setAttribute(s,!0))})}function poe(e){var r=DE(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=LE(a);if(n){var i=soe.convertCssMatrix(n);t=foe.multiply(t,t,i)}}),t}function LE(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 DE(e){for(var r=[];moe(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function moe(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function yoe(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}FE.exports={getGraphDiv:uoe,isPlotDiv:coe,removeElement:kE,addStyleRule:voe,addRelatedStyleRule:CE,deleteRelatedStyleRule:hoe,setStyleOnHover:doe,getFullTransformMatrix:poe,getElementTransformMatrix:LE,getElementAndAncestors:DE,equalDomRects:yoe}});var Y1=P((Ske,qE)=>{"use strict";qE.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 Ds=P((Eke,zE)=>{"use strict";var PE=zn().extendFlat,goe=Mc(),NE={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},IE={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},boe=NE.flags.slice().concat(["fullReplot"]),xoe=IE.flags.slice().concat("layoutReplot");zE.exports={traces:NE,layout:IE,traceFlags:function(){return RE(boe)},layoutFlags:function(){return RE(xoe)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";B5.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};B5.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 z5=P((Cke,GE)=>{"use strict";GE.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 td=P(rd=>{"use strict";var{DATE_FORMAT_LINK:_oe,FORMAT_LINK:woe}=z5(),Aoe=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function Toe({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,woe,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,_oe,"for details on the date formatting syntax.",Aoe].join(" ")}rd.templateFormatStringDescription=Toe;rd.hovertemplateAttrs=({editType:e="none",arrayOk:r}={},t={})=>h0({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});rd.texttemplateAttrs=({editType:e="calc",arrayOk:r}={},t={})=>h0({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});rd.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:r}={},t={})=>({valType:"string",dflt:"",editType:e});rd.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var jg=P((Fke,jE)=>{"use strict";function Cc(e,r){return r?r.d2l(e):e}function UE(e,r){return r?r.l2d(e):e}function Moe(e){return e.x0}function Soe(e){return e.x1}function Eoe(e){return e.y0}function koe(e){return e.y1}function HE(e){return e.x0shift||0}function VE(e){return e.x1shift||0}function YE(e){return e.y0shift||0}function WE(e){return e.y1shift||0}function Yg(e,r){return Cc(e.x1,r)+VE(e)-Cc(e.x0,r)-HE(e)}function Wg(e,r,t){return Cc(e.y1,t)+WE(e)-Cc(e.y0,t)-YE(e)}function Coe(e,r){return Math.abs(Yg(e,r))}function Loe(e,r,t){return Math.abs(Wg(e,r,t))}function Doe(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(Yg(e,r),2)+Math.pow(Wg(e,r,t),2))}function Foe(e,r){return UE((Cc(e.x1,r)+VE(e)+Cc(e.x0,r)+HE(e))/2,r)}function qoe(e,r,t){return UE((Cc(e.y1,t)+WE(e)+Cc(e.y0,t)+YE(e))/2,t)}function Roe(e,r,t){return e.type!=="line"?void 0:Wg(e,r,t)/Yg(e,r)}jE.exports={x0:Moe,x1:Soe,y0:Eoe,y1:koe,slope:Roe,dx:Yg,dy:Wg,width:Coe,height:Loe,length:Doe,xcenter:Foe,ycenter:qoe}});var JE=P((qke,ZE)=>{"use strict";var Poe=Ds().overrideAll,b0=Cs(),XE=Gi(),Noe=kc().dash,Lc=zn().extendFlat,{shapeTexttemplateAttrs:Ioe,templatefallbackAttrs:Ooe}=td(),Boe=jg();ZE.exports=Poe({newshape:{visible:Lc({},b0.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:Lc({},b0.legend,{}),legendgroup:Lc({},b0.legendgroup,{}),legendgrouptitle:{text:Lc({},b0.legendgrouptitle.text,{}),font:XE({})},legendrank:Lc({},b0.legendrank,{}),legendwidth:Lc({},b0.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Lc({},Noe,{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:Lc({},b0.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:Ioe({newshape:!0},{keys:Object.keys(Boe)}),texttemplatefallback:Ooe({editType:"arraydraw"}),font:XE({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var QE=P((Rke,$E)=>{"use strict";var zoe=kc().dash,Goe=zn().extendFlat;$E.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:Goe({},zoe,{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 Xg=P((Pke,KE)=>{"use strict";KE.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 ad=P((Nke,ak)=>{"use strict";var G5=Gi(),Uoe=Y1(),Zg=Af(),ek=JE(),rk=QE(),Hoe=Xg(),tk=zn().extendFlat,Jg=G5({editType:"calc"});Jg.family.dflt='"Open Sans", verdana, arial, sans-serif';Jg.size.dflt=12;Jg.color.dflt=Zg.defaultLine;ak.exports={font:Jg,title:{text:{valType:"string",editType:"layoutstyle"},font:G5({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:G5({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:tk(Hoe({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:Zg.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:Zg.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:Zg.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:ek.newshape,activeshape:ek.activeshape,newselection:rk.newselection,activeselection:rk.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:tk({},Uoe.transition,{editType:"none"})}});var nk=P(()=>{(function(){if(!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")){var e=document.createElement("style");e.id="696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var Bt=P(oa=>{"use strict";var nd=g0(),ik=Hg(),ok=N5(),Voe=Mc(),Yoe=V1().addStyleRule,lk=zn(),Woe=Cs(),joe=ad(),Xoe=lk.extendFlat,U5=lk.extendDeepAll;oa.modules={};oa.allCategories={};oa.allTypes=[];oa.subplotsRegistry={};oa.componentsRegistry={};oa.layoutArrayContainers=[];oa.layoutArrayRegexes=[];oa.traceLayoutAttributes={};oa.localeRegistry={};oa.apiMethodRegistry={};oa.collectableSubplotTypes=null;oa.register=function(r){if(oa.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 ele=jh().timeFormat,gk=ba(),H5=g0(),Fc=Zh().mod,ld=Kn(),Bl=ld.BADNUM,Xo=ld.ONEDAY,W1=ld.ONEHOUR,Dc=ld.ONEMIN,od=ld.ONESEC,j1=ld.EPOCHJD,wu=Bt(),vk=jh().utcFormat,rle=/^\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,tle=/^\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,hk=new Date().getFullYear()-70;function Au(e){return e&&wu.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Un.dateTick0=function(e,r){var t=ale(e,!!r);if(r<2)return t;var a=Un.dateTime2ms(t,e);return a+=Xo*(r-1),Un.ms2DateTime(a,0,e)};function ale(e,r){return Au(e)?r?wu.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:wu.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}Un.dfltRange=function(e){return Au(e)?wu.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Un.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Qg,Kg;Un.dateTime2ms=function(e,r){if(Un.isJSDate(e)){var t=e.getTimezoneOffset()*Dc,a=(e.getUTCMinutes()-e.getMinutes())*Dc+(e.getUTCSeconds()-e.getSeconds())*od+(e.getUTCMilliseconds()-e.getMilliseconds());if(a){var n=3*Dc;t=t-n/2+Fc(a-t+n/2,n)}return e=Number(e)-t,e>=Qg&&e<=Kg?e:Bl}if(typeof e!="string"&&typeof e!="number")return Bl;e=String(e);var i=Au(r),o=e.charAt(0);i&&(o==="G"||o==="g")&&(e=e.slice(1),r="");var l=i&&r.slice(0,7)==="chinese",s=e.match(l?tle:rle);if(!s)return Bl;var f=s[1],u=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(f.length===2)return Bl;f=Number(f);var y;try{var m=wu.getComponentMethod("calendars","getCal")(r);if(l){var b=u.charAt(u.length-1)==="i";u=parseInt(u,10),y=m.newDate(f,m.toMonthIndex(f,u,b),c)}else y=m.newDate(f,Number(u),c)}catch(_){return Bl}return y?(y.toJD()-j1)*Xo+v*W1+d*Dc+p*od:Bl}f.length===2?f=(Number(f)+2e3-hk)%100+hk:f=Number(f),u-=1;var A=new Date(Date.UTC(2e3,u,c,v,d));return A.setUTCFullYear(f),A.getUTCMonth()!==u||A.getUTCDate()!==c?Bl:A.getTime()+p*od};Qg=Un.MIN_MS=Un.dateTime2ms("-9999");Kg=Un.MAX_MS=Un.dateTime2ms("9999-12-31 23:59:59.9999");Un.isDateTime=function(e,r){return Un.dateTime2ms(e,r)!==Bl};function id(e,r){return String(e+Math.pow(10,r)).slice(1)}var $g=90*Xo,dk=3*W1,pk=5*Dc;Un.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Qg&&e<=Kg))return Bl;r||(r=0);var a=Math.floor(Fc(e+.05,1)*10),n=Math.round(e-a/10),i,o,l,s,f,u;if(Au(t)){var c=Math.floor(n/Xo)+j1,v=Math.floor(Fc(e,Xo));try{i=wu.getComponentMethod("calendars","getCal")(t).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){i=vk("G%Y-%m-%d")(new Date(n))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.slice(1);else for(;i.length<10;)i="0"+i;o=r<$g?Math.floor(v/W1):0,l=r<$g?Math.floor(v%W1/Dc):0,s=r=Qg+Xo&&e<=Kg-Xo))return Bl;var r=Math.floor(Fc(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=ele("%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+=" "+id(r,2)+":"+id(t,2),(a||n)&&(e+=":"+id(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+id(n,i)}return e}Un.cleanDate=function(e,r,t){if(e===Bl)return r;if(Un.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Au(t))return H5.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=Un.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!Un.isDateTime(e,t))return H5.error("unrecognized date",e),r;return e};var nle=/%\d?f/g,ile=/%h/g,ole={1:"1",2:"1",3:"2",4:"2"};function mk(e,r,t,a){e=e.replace(nle,function(i){var o=Math.min(+i.charAt(1)||6,6),l=(r/1e3%1+2).toFixed(o).slice(2).replace(/0+$/,"")||"0";return l});var n=new Date(Math.floor(r+.05));if(e=e.replace(ile,function(){return ole[t("%q")(n)]}),Au(a))try{e=wu.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var lle=[59,59.9,59.99,59.999,59.9999];function sle(e,r){var t=Fc(e+.05,Xo),a=id(Math.floor(t/W1),2)+":"+id(Fc(Math.floor(t/Dc),60),2);if(r!=="M"){gk(r)||(r=0);var n=Math.min(Fc(e/od,60),lle[r]),i=(100+n).toFixed(r).slice(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}Un.formatDate=function(e,r,t,a,n,i){if(n=Au(n)&&n,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` `+i.year;else return sle(e,t)+` -`+mk(i.dayMonthYear,e,a,n);return mk(r,e,a,n)};var yk=3*Xo;Un.incrementMonth=function(e,r,t){t=Au(t)&&t;var a=Fc(e,Xo);if(e=Math.round(e-a),t)try{var n=Math.round(e/Xo)+j1,i=wu.getComponentMethod("calendars","getCal")(t),o=i.fromJD(n);return r%12?i.add(o,r,"m"):i.add(o,r/12,"y"),(o.toJD()-j1)*Xo+a}catch(s){U5.error("invalid ms "+e+" in calendar "+t)}var l=new Date(e+yk);return l.setUTCMonth(l.getUTCMonth()+r)+a-yk};Un.findExactDates=function(e,r){for(var t=0,a=0,n=0,i=0,o,l,s=Au(r)&&wu.getComponentMethod("calendars","getCal")(r),f=0;f{"use strict";_k.exports=function(r){return r}});var V5=P(Tu=>{"use strict";var fle=ba(),ule=g0(),cle=e2(),vle=Kn().BADNUM,H5=1e-9;Tu.findBin=function(e,r,t){if(fle(r.start))return t?Math.ceil((e-r.start)/r.size-H5)-1:Math.floor((e-r.start)/r.size+H5);var a=0,n=r.length,i=0,o=n>1?(r[n-1]-r[0])/(n-1):1,l,s;for(o>=0?s=t?hle:dle:s=t?mle:ple,e+=o*H5*(t?-1:1)*(o>=0?1:-1);a90&&ule.log("Long binary search..."),a-1};function hle(e,r){return er}function mle(e,r){return e>=r}Tu.sorterAsc=function(e,r){return e-r};Tu.sorterDes=function(e,r){return r-e};Tu.distinctVals=function(e){var r=e.slice();r.sort(Tu.sorterAsc);var t;for(t=r.length-1;t>-1&&r[t]===vle;t--);for(var a=r[t]-r[0]||1,n=a/(t||1)/1e4,i=[],o,l=0;l<=t;l++){var s=r[l],f=s-o;o===void 0?(i.push(s),o=s):f>n&&(a=Math.min(a,f),i.push(s),o=s)}return{vals:i,minDiff:a}};Tu.roundUp=function(e,r,t){for(var a=0,n=r.length-1,i,o=0,l=t?0:1,s=t?1:0,f=t?Math.ceil:Math.floor;a0&&(a=1),t&&a)return e.sort(r)}return a?e:e.reverse()};Tu.findIndexOfMin=function(e,r){r=r||cle;for(var t=1/0,a,n=0;n{"use strict";wk.exports=function(r){return Object.keys(r).sort()}});var Ak=P(Hn=>{"use strict";var X1=ba(),yle=Yo().isArrayOrTypedArray;Hn.aggNums=function(e,r,t,a){var n,i;if((!a||a>t.length)&&(a=t.length),X1(r)||(r=!1),yle(t[0])){for(i=new Array(a),n=0;ne.length-1)return e[e.length-1];var t=r%1;return t*e[Math.ceil(r)]+(1-t)*e[Math.floor(r)]}});var kk=P((Yke,Ek)=>{"use strict";var Tk=Zh(),Y5=Tk.mod,gle=Tk.modHalf,Z1=Math.PI,qc=2*Z1;function ble(e){return e/180*Z1}function xle(e){return e/Z1*180}function W5(e){return Math.abs(e[1]-e[0])>qc-1e-14}function Mk(e,r){return gle(r-e,qc)}function _le(e,r){return Math.abs(Mk(e,r))}function Sk(e,r){if(W5(r))return!0;var t,a;r[0]a&&(a+=qc);var n=Y5(e,qc),i=n+qc;return n>=t&&n<=a||i>=t&&i<=a}function wle(e,r,t,a){if(!Sk(r,a))return!1;var n,i;return t[0]=n&&e<=i}function j5(e,r,t,a,n,i,o){n=n||0,i=i||0;var l=W5([t,a]),s,f,u,c,v;l?(s=0,f=Z1,u=qc):t{"use strict";x0.isLeftAnchor=function(r){return r.xanchor==="left"||r.xanchor==="auto"&&r.x<=1/3};x0.isCenterAnchor=function(r){return r.xanchor==="center"||r.xanchor==="auto"&&r.x>1/3&&r.x<2/3};x0.isRightAnchor=function(r){return r.xanchor==="right"||r.xanchor==="auto"&&r.x>=2/3};x0.isTopAnchor=function(r){return r.yanchor==="top"||r.yanchor==="auto"&&r.y>=2/3};x0.isMiddleAnchor=function(r){return r.yanchor==="middle"||r.yanchor==="auto"&&r.y>1/3&&r.y<2/3};x0.isBottomAnchor=function(r){return r.yanchor==="bottom"||r.yanchor==="auto"&&r.y<=1/3}});var Fk=P(_0=>{"use strict";var X5=Zh().mod;_0.segmentsIntersect=Dk;function Dk(e,r,t,a,n,i,o,l){var s=t-e,f=n-e,u=o-n,c=a-r,v=i-r,d=l-i,p=s*d-u*c;if(p===0)return null;var y=(f*d-u*v)/p,m=(f*c-s*v)/p;return m<0||m>1||y<0||y>1?null:{x:e+s*y,y:r+c*y}}_0.segmentDistance=function(r,t,a,n,i,o,l,s){if(Dk(r,t,a,n,i,o,l,s))return 0;var f=a-r,u=n-t,c=l-i,v=s-o,d=f*f+u*u,p=c*c+v*v,y=Math.min(t2(f,u,d,i-r,o-t),t2(f,u,d,l-r,s-t),t2(c,v,p,r-i,t-o),t2(c,v,p,a-i,n-o));return Math.sqrt(y)};function t2(e,r,t,a,n){var i=a*e+n*r;if(i<0)return a*a+n*n;if(i>t){var o=a-e,l=n-r;return o*o+l*l}else{var s=a*r-n*e;return s*s/t}}var a2,Z5,Lk;_0.getTextLocation=function(r,t,a,n){if((r!==Z5||n!==Lk)&&(a2={},Z5=r,Lk=n),a2[a])return a2[a];var i=r.getPointAtLength(X5(a-n/2,t)),o=r.getPointAtLength(X5(a+n/2,t)),l=Math.atan((o.y-i.y)/(o.x-i.x)),s=r.getPointAtLength(X5(a,t)),f=(s.x*4+i.x+o.x)/6,u=(s.y*4+i.y+o.y)/6,c={x:f,y:u,theta:l};return a2[a]=c,c};_0.clearLocationCache=function(){Z5=null};_0.getVisibleSegment=function(r,t,a){var n=t.left,i=t.right,o=t.top,l=t.bottom,s=0,f=r.getTotalLength(),u=f,c,v;function d(y){var m=r.getPointAtLength(y);y===0?c=m:y===f&&(v=m);var b=m.xi?m.x-i:0,A=m.yl?m.y-l:0;return Math.sqrt(b*b+A*A)}for(var p=d(s);p;){if(s+=p+a,s>u)return;p=d(s)}for(p=d(u);p;){if(u-=p+a,s>u)return;p=d(u)}return{min:s,max:u,len:u-s,total:f,isClosed:s===0&&u===f&&Math.abs(c.x-v.x)<.1&&Math.abs(c.y-v.y)<.1}};_0.findPointOnPath=function(r,t,a,n){n=n||{};for(var i=n.pathLength||r.getTotalLength(),o=n.tolerance||.001,l=n.iterationLimit||30,s=r.getPointAtLength(0)[a]>r.getPointAtLength(i)[a]?-1:1,f=0,u=0,c=i,v,d,p;f0?c=v:u=v,f++}return d}});var n2=P(J1=>{"use strict";var Mu={};J1.throttle=function(r,t,a){var n=Mu[r],i=Date.now();if(!n){for(var o in Mu)Mu[o].tsn.ts+t){l();return}n.timer=setTimeout(function(){l(),n.timer=null},t)};J1.done=function(e){var r=Mu[e];return!r||!r.timer?Promise.resolve():new Promise(function(t){var a=r.onDone;r.onDone=function(){a&&a(),t(),r.onDone=null}})};J1.clear=function(e){if(e)qk(Mu[e]),delete Mu[e];else for(var r in Mu)J1.clear(r)};function qk(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var Pk=P((Zke,Rk)=>{"use strict";Rk.exports=function(r){r._responsiveChartHandler&&(window.removeEventListener("resize",r._responsiveChartHandler),delete r._responsiveChartHandler)}});var Nk=P((Jke,i2)=>{"use strict";i2.exports=J5;i2.exports.isMobile=J5;i2.exports.default=J5;var Sle=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,Ele=/CrOS/,kle=/android|ipad|playbook|silk/i;function J5(e){e||(e={});let r=e.ua;if(!r&&typeof navigator!="undefined"&&(r=navigator.userAgent),r&&r.headers&&typeof r.headers["user-agent"]=="string"&&(r=r.headers["user-agent"]),typeof r!="string")return!1;let t=Sle.test(r)&&!Ele.test(r)||!!e.tablet&&kle.test(r);return!t&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&r.indexOf("Macintosh")!==-1&&r.indexOf("Safari")!==-1&&(t=!0),t}});var Ok=P(($ke,Ik)=>{"use strict";var Cle=ba(),Lle=Nk();Ik.exports=function(r){var t;if(r&&r.hasOwnProperty("userAgent")?t=r.userAgent:t=Dle(),typeof t!="string")return!0;var a=Lle({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!a)for(var n=t.split(" "),i=1;i-1;l--){var s=n[l];if(s.substr(0,8)==="Version/"){var f=s.substr(8).split(".")[0];if(Cle(f)&&(f=+f),f>=13)return!0}}}return a};function Dle(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var zk=P((Qke,Bk)=>{"use strict";var Fle=da();Bk.exports=function(r,t,a){var n=r.selectAll("g."+a.replace(/\s/g,".")).data(t,function(o){return o[0].trace.uid});n.exit().remove(),n.enter().append("g").attr("class",a),n.order();var i=r.classed("rangeplot")?"nodeRangePlot3":"node3";return n.each(function(o){o[0][i]=Fle.select(this)}),n}});var Uk=P((Kke,Gk)=>{"use strict";var qle=Bt();Gk.exports=function(r,t){for(var a=r._context.locale,n=0;n<2;n++){for(var i=r._context.locales,o=0;o<2;o++){var l=(i[a]||{}).dictionary;if(l){var s=l[t];if(s)return s}i=qle.localeRegistry}var f=a.split("-")[0];if(f===a)break;a=f}return t}});var Vk=P((eCe,Hk)=>{"use strict";Hk.exports=function(r){for(var t={},a=[],n=0,i=0;i{"use strict";Yk.exports=function(r){for(var t=Nle(r)?Ple:Rle,a=[],n=0;n{"use strict";jk.exports=function(r,t){if(!t)return r;var a=1/Math.abs(t),n=a>1?(a*r+a*t)/a:r+t,i=String(n).length;if(i>16){var o=String(t).length,l=String(r).length;if(i>=l+o){var s=parseFloat(n).toPrecision(12);s.indexOf("e+")===-1&&(n=+s)}}return n}});var Jk=P((aCe,Zk)=>{"use strict";var Ile=ba(),Ole=Kn().BADNUM,Ble=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;Zk.exports=function(r){return typeof r=="string"&&(r=r.replace(Ble,"")),Ile(r)?Number(r):Ole}});var Ur=P((nCe,fC)=>{"use strict";var $1=da(),zle=jh().utcFormat,Gle=_5().format,tC=ba(),aC=Kn(),nC=aC.FP_SAFE,Ule=-nC,$k=aC.BADNUM,Ve=fC.exports={};Ve.adjustFormat=function(r){return!r||/^\d[.]\df/.test(r)||/[.]\d%/.test(r)?r:r==="0.f"?"~f":/^\d%/.test(r)?"~%":/^\ds/.test(r)?"~s":!/^[~,.0$]/.test(r)&&/[&fps]/.test(r)?"~"+r:r};var Qk={};Ve.warnBadFormat=function(e){var r=String(e);Qk[r]||(Qk[r]=1,Ve.warn('encountered bad format: "'+r+'"'))};Ve.noFormat=function(e){return String(e)};Ve.numberFormat=function(e){var r;try{r=Gle(Ve.adjustFormat(e))}catch(t){return Ve.warnBadFormat(e),Ve.noFormat}return r};Ve.nestedProperty=Pg();Ve.keyedContainer=HM();Ve.relativeAttr=YM();Ve.isPlainObject=Mc();Ve.toLogRange=Ig();Ve.relinkPrivateKeys=ZM();var Rc=Yo();Ve.isArrayBuffer=Rc.isArrayBuffer;Ve.isTypedArray=Rc.isTypedArray;Ve.isArrayOrTypedArray=Rc.isArrayOrTypedArray;Ve.isArray1D=Rc.isArray1D;Ve.ensureArray=Rc.ensureArray;Ve.concat=Rc.concat;Ve.maxRowLength=Rc.maxRowLength;Ve.minRowLength=Rc.minRowLength;var iC=Zh();Ve.mod=iC.mod;Ve.modHalf=iC.modHalf;var Pc=dS();Ve.valObjectMeta=Pc.valObjectMeta;Ve.coerce=Pc.coerce;Ve.coerce2=Pc.coerce2;Ve.coerceFont=Pc.coerceFont;Ve.coercePattern=Pc.coercePattern;Ve.coerceHoverinfo=Pc.coerceHoverinfo;Ve.coerceSelectionMarkerOpacity=Pc.coerceSelectionMarkerOpacity;Ve.validate=Pc.validate;var yl=xk();Ve.dateTime2ms=yl.dateTime2ms;Ve.isDateTime=yl.isDateTime;Ve.ms2DateTime=yl.ms2DateTime;Ve.ms2DateTimeLocal=yl.ms2DateTimeLocal;Ve.cleanDate=yl.cleanDate;Ve.isJSDate=yl.isJSDate;Ve.formatDate=yl.formatDate;Ve.incrementMonth=yl.incrementMonth;Ve.dateTick0=yl.dateTick0;Ve.dfltRange=yl.dfltRange;Ve.findExactDates=yl.findExactDates;Ve.MIN_MS=yl.MIN_MS;Ve.MAX_MS=yl.MAX_MS;var w0=V5();Ve.findBin=w0.findBin;Ve.sorterAsc=w0.sorterAsc;Ve.sorterDes=w0.sorterDes;Ve.distinctVals=w0.distinctVals;Ve.roundUp=w0.roundUp;Ve.sort=w0.sort;Ve.findIndexOfMin=w0.findIndexOfMin;Ve.sortObjectKeys=r2();var Su=Ak();Ve.aggNums=Su.aggNums;Ve.len=Su.len;Ve.mean=Su.mean;Ve.geometricMean=Su.geometricMean;Ve.median=Su.median;Ve.midRange=Su.midRange;Ve.variance=Su.variance;Ve.stdev=Su.stdev;Ve.interp=Su.interp;var Ds=Vg();Ve.init2dArray=Ds.init2dArray;Ve.transposeRagged=Ds.transposeRagged;Ve.dot=Ds.dot;Ve.translationMatrix=Ds.translationMatrix;Ve.rotationMatrix=Ds.rotationMatrix;Ve.rotationXYMatrix=Ds.rotationXYMatrix;Ve.apply3DTransform=Ds.apply3DTransform;Ve.apply2DTransform=Ds.apply2DTransform;Ve.apply2DTransform2=Ds.apply2DTransform2;Ve.convertCssMatrix=Ds.convertCssMatrix;Ve.inverseTransformMatrix=Ds.inverseTransformMatrix;var Tf=kk();Ve.deg2rad=Tf.deg2rad;Ve.rad2deg=Tf.rad2deg;Ve.angleDelta=Tf.angleDelta;Ve.angleDist=Tf.angleDist;Ve.isFullCircle=Tf.isFullCircle;Ve.isAngleInsideSector=Tf.isAngleInsideSector;Ve.isPtInsideSector=Tf.isPtInsideSector;Ve.pathArc=Tf.pathArc;Ve.pathSector=Tf.pathSector;Ve.pathAnnulus=Tf.pathAnnulus;var fd=Ck();Ve.isLeftAnchor=fd.isLeftAnchor;Ve.isCenterAnchor=fd.isCenterAnchor;Ve.isRightAnchor=fd.isRightAnchor;Ve.isTopAnchor=fd.isTopAnchor;Ve.isMiddleAnchor=fd.isMiddleAnchor;Ve.isBottomAnchor=fd.isBottomAnchor;var ud=Fk();Ve.segmentsIntersect=ud.segmentsIntersect;Ve.segmentDistance=ud.segmentDistance;Ve.getTextLocation=ud.getTextLocation;Ve.clearLocationCache=ud.clearLocationCache;Ve.getVisibleSegment=ud.getVisibleSegment;Ve.findPointOnPath=ud.findPointOnPath;var s2=zn();Ve.extendFlat=s2.extendFlat;Ve.extendDeep=s2.extendDeep;Ve.extendDeepAll=s2.extendDeepAll;Ve.extendDeepNoArrays=s2.extendDeepNoArrays;var $5=g0();Ve.log=$5.log;Ve.warn=$5.warn;Ve.error=$5.error;var Hle=Qh();Ve.counterRegex=Hle.counter;var Q5=n2();Ve.throttle=Q5.throttle;Ve.throttleDone=Q5.done;Ve.clearThrottle=Q5.clear;var Fs=V1();Ve.getGraphDiv=Fs.getGraphDiv;Ve.isPlotDiv=Fs.isPlotDiv;Ve.removeElement=Fs.removeElement;Ve.addStyleRule=Fs.addStyleRule;Ve.addRelatedStyleRule=Fs.addRelatedStyleRule;Ve.deleteRelatedStyleRule=Fs.deleteRelatedStyleRule;Ve.setStyleOnHover=Fs.setStyleOnHover;Ve.getFullTransformMatrix=Fs.getFullTransformMatrix;Ve.getElementTransformMatrix=Fs.getElementTransformMatrix;Ve.getElementAndAncestors=Fs.getElementAndAncestors;Ve.equalDomRects=Fs.equalDomRects;Ve.clearResponsive=Pk();Ve.preserveDrawingBuffer=Ok();Ve.makeTraceGroups=zk();Ve._=Uk();Ve.notifier=F5();Ve.filterUnique=Vk();Ve.filterVisible=Wk();Ve.pushUnique=P5();Ve.increment=Xk();Ve.cleanNumber=Jk();Ve.ensureNumber=function(r){return tC(r)?(r=Number(r),r>nC||r=r?!1:tC(e)&&e>=0&&e%1===0};Ve.noop=Hg();Ve.identity=e2();Ve.repeat=function(e,r){for(var t=new Array(r),a=0;at?Math.max(t,Math.min(r,e)):Math.max(r,Math.min(t,e))};Ve.bBoxIntersect=function(e,r,t){return t=t||0,e.left<=r.right+t&&r.left<=e.right+t&&e.top<=r.bottom+t&&r.top<=e.bottom+t};Ve.simpleMap=function(e,r,t,a,n){for(var i=e.length,o=new Array(i),l=0;l=Math.pow(2,t)?n>10?(Ve.warn("randstr failed uniqueness"),o):e(r,t,a,(n||0)+1):o};Ve.OptionControl=function(e,r){e||(e={}),r||(r="opt");var t={};return t.optionList=[],t._newoption=function(a){a[r]=e,t[a.name]=a,t.optionList.push(a)},t["_"+r]=e,t};Ve.smooth=function(e,r){if(r=Math.round(r)||0,r<2)return e;var t=e.length,a=2*t,n=2*r-1,i=new Array(n),o=new Array(t),l,s,f,u;for(l=0;l=a&&(f-=a*Math.floor(f/a)),f<0?f=-1-f:f>=t&&(f=a-1-f),u+=e[f]*i[s];o[l]=u}return o};Ve.syncOrAsync=function(e,r,t){var a,n;function i(){return Ve.syncOrAsync(e,r,t)}for(;e.length;)if(n=e.splice(0,1)[0],a=n(r),a&&a.then)return a.then(i);return t&&t(r)};Ve.stripTrailingSlash=function(e){return e.substr(-1)==="/"?e.substr(0,e.length-1):e};Ve.noneOrAll=function(e,r,t){if(e){var a=!1,n=!0,i,o;for(i=0;i0?n:0})};Ve.fillArray=function(e,r,t,a){if(a=a||Ve.identity,Ve.isArrayOrTypedArray(e))for(var n=0;nWle.test(window.navigator.userAgent);var jle=/Firefox\/(\d+)\.\d+/;Ve.getFirefoxVersion=function(){var e=jle.exec(window.navigator.userAgent);if(e&&e.length===2){var r=parseInt(e[1]);if(!isNaN(r))return r}return null};Ve.isD3Selection=function(e){return e instanceof $1.selection};Ve.ensureSingle=function(e,r,t,a){var n=e.select(r+(t?"."+t:""));if(n.size())return n;var i=e.append(r);return t&&i.classed(t,!0),a&&i.call(a),i};Ve.ensureSingleById=function(e,r,t,a){var n=e.select(r+"#"+t);if(n.size())return n;var i=e.append(r).attr("id",t);return a&&i.call(a),i};Ve.objectFromPath=function(e,r){for(var t=e.split("."),a,n=a={},i=0;i1?n+o[1]:"";if(i&&(o.length>1||l.length>4||t))for(;a.test(l);)l=l.replace(a,"$1"+i+"$2");return l+s};Ve.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var sC=/^\w*$/;Ve.templateString=function(e,r){var t={};return e.replace(Ve.TEMPLATE_STRING_REGEX,function(a,n){var i;return sC.test(n)?i=r[n]:(t[n]=t[n]||Ve.nestedProperty(r,n).get,i=t[n](!0)),i!==void 0?i:""})};var Jle={max:10,count:0,name:"hovertemplate"};Ve.hovertemplateString=e=>K5(Mg(h0({},e),{opts:Jle}));var $le={max:10,count:0,name:"texttemplate"};Ve.texttemplateString=e=>K5(Mg(h0({},e),{opts:$le}));var Qle=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function Kle(e){var r=e.match(Qle);return r?{key:r[1],op:r[2],number:Number(r[3])}:{key:e,op:null,number:null}}var ese={max:10,count:0,name:"texttemplate",parseMultDiv:!0};Ve.texttemplateStringForShapes=e=>K5(Mg(h0({},e),{opts:ese}));var Kk=/^[:|\|]/;function K5({data:e=[],locale:r,fallback:t,labels:a={},opts:n,template:i}){return i.replace(Ve.TEMPLATE_STRING_REGEX,(o,l,s)=>{let f=["xother","yother"].includes(l),u=["_xother","_yother"].includes(l),c=["_xother_","_yother_"].includes(l),v=["xother_","yother_"].includes(l),d=f||u||v||c;(u||c)&&(l=l.substring(1)),(v||c)&&(l=l.substring(0,l.length-1));let p=null,y=null;if(n.parseMultDiv){var m=Kle(l);l=m.key,p=m.op,y=m.number}let b;if(d){if(a[l]===void 0)return"";b=a[l]}else for(let T of e)if(T){if(T.hasOwnProperty(l)){b=T[l];break}if(sC.test(l)||(b=Ve.nestedProperty(T,l).get(!0)),b!==void 0)break}if(b===void 0){let{count:T,max:E,name:M}=n,k=t===!1?o:t;return T=l2&&o<=eC,f=l>=l2&&l<=eC;if(s&&(a=10*a+o-l2),f&&(n=10*n+l-l2),!s||!f){if(a!==n)return a-n;if(o!==l)return o-l}}return n-a};var sd=2e9;Ve.seedPseudoRandom=function(){sd=2e9};Ve.pseudoRandom=function(){var e=sd;return sd=(69069*sd+1)%4294967296,Math.abs(sd-e)<429496729?Ve.pseudoRandom():sd/4294967296};Ve.fillText=function(e,r,t){var a=Array.isArray(t)?function(o){t.push(o)}:function(o){t.text=o},n=Ve.extractOption(e,r,"htx","hovertext");if(Ve.isValidTextValue(n))return a(n);var i=Ve.extractOption(e,r,"tx","text");if(Ve.isValidTextValue(i))return a(i)};Ve.isValidTextValue=function(e){return e||e===0};Ve.formatPercent=function(e,r){r=r||0;for(var t=(Math.round(100*e*Math.pow(10,r))*Math.pow(.1,r)).toFixed(r)+"%",a=0;a1&&(f=1):f=0,Ve.strTranslate(n-f*(t+o),i-f*(a+l))+Ve.strScale(f)+(s?"rotate("+s+(r?"":" "+t+" "+a)+")":"")};Ve.setTransormAndDisplay=function(e,r){e.attr("transform",Ve.getTextTransform(r)),e.style("display",r.scale?null:"none")};Ve.ensureUniformFontSize=function(e,r){var t=Ve.extendFlat({},r);return t.size=Math.max(r.size,e._fullLayout.uniformtext.minsize||0),t};Ve.join2=function(e,r,t){var a=e.length;return a>1?e.slice(0,-1).join(r)+t+e[a-1]:e.join(r)};Ve.bigFont=function(e){return Math.round(1.2*e)};var rC=Ve.getFirefoxVersion(),rse=rC!==null&&rC<86;Ve.getPositionFromD3Event=function(){return rse?[$1.event.layerX,$1.event.layerY]:[$1.event.offsetX,$1.event.offsetY]}});var vC=P(()=>{"use strict";var tse=Ur(),uC={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(e4 in uC)cC=e4.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),tse.addStyleRule(cC,uC[e4]);var cC,e4});var r4=P((sCe,hC)=>{hC.exports=!0});var a4=P((fCe,dC)=>{"use strict";var ase=r4(),t4;typeof window.matchMedia=="function"?t4=!window.matchMedia("(hover: none)").matches:t4=ase;dC.exports=t4});var c2=P((uCe,n4)=>{"use strict";var cd=typeof Reflect=="object"?Reflect:null,pC=cd&&typeof cd.apply=="function"?cd.apply:function(r,t,a){return Function.prototype.apply.call(r,t,a)},f2;cd&&typeof cd.ownKeys=="function"?f2=cd.ownKeys:Object.getOwnPropertySymbols?f2=function(r){return Object.getOwnPropertyNames(r).concat(Object.getOwnPropertySymbols(r))}:f2=function(r){return Object.getOwnPropertyNames(r)};function nse(e){console&&console.warn&&console.warn(e)}var yC=Number.isNaN||function(r){return r!==r};function pn(){pn.init.call(this)}n4.exports=pn;n4.exports.once=sse;pn.EventEmitter=pn;pn.prototype._events=void 0;pn.prototype._eventsCount=0;pn.prototype._maxListeners=void 0;var mC=10;function u2(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(pn,"defaultMaxListeners",{enumerable:!0,get:function(){return mC},set:function(e){if(typeof e!="number"||e<0||yC(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");mC=e}});pn.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};pn.prototype.setMaxListeners=function(r){if(typeof r!="number"||r<0||yC(r))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+r+".");return this._maxListeners=r,this};function gC(e){return e._maxListeners===void 0?pn.defaultMaxListeners:e._maxListeners}pn.prototype.getMaxListeners=function(){return gC(this)};pn.prototype.emit=function(r){for(var t=[],a=1;a0&&(o=t[0]),o instanceof Error)throw o;var l=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw l.context=o,l}var s=i[r];if(s===void 0)return!1;if(typeof s=="function")pC(s,this,t);else for(var f=s.length,u=AC(s,f),a=0;a0&&o.length>n&&!o.warned){o.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(r)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=r,l.count=o.length,nse(l)}return e}pn.prototype.addListener=function(r,t){return bC(this,r,t,!1)};pn.prototype.on=pn.prototype.addListener;pn.prototype.prependListener=function(r,t){return bC(this,r,t,!0)};function ise(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function xC(e,r,t){var a={fired:!1,wrapFn:void 0,target:e,type:r,listener:t},n=ise.bind(a);return n.listener=t,a.wrapFn=n,n}pn.prototype.once=function(r,t){return u2(t),this.on(r,xC(this,r,t)),this};pn.prototype.prependOnceListener=function(r,t){return u2(t),this.prependListener(r,xC(this,r,t)),this};pn.prototype.removeListener=function(r,t){var a,n,i,o,l;if(u2(t),n=this._events,n===void 0)return this;if(a=n[r],a===void 0)return this;if(a===t||a.listener===t)--this._eventsCount===0?this._events=Object.create(null):(delete n[r],n.removeListener&&this.emit("removeListener",r,a.listener||t));else if(typeof a!="function"){for(i=-1,o=a.length-1;o>=0;o--)if(a[o]===t||a[o].listener===t){l=a[o].listener,i=o;break}if(i<0)return this;i===0?a.shift():ose(a,i),a.length===1&&(n[r]=a[0]),n.removeListener!==void 0&&this.emit("removeListener",r,l||t)}return this};pn.prototype.off=pn.prototype.removeListener;pn.prototype.removeAllListeners=function(r){var t,a,n;if(a=this._events,a===void 0)return this;if(a.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):a[r]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete a[r]),this;if(arguments.length===0){var i=Object.keys(a),o;for(n=0;n=0;n--)this.removeListener(r,t[n]);return this};function _C(e,r,t){var a=e._events;if(a===void 0)return[];var n=a[r];return n===void 0?[]:typeof n=="function"?t?[n.listener||n]:[n]:t?lse(n):AC(n,n.length)}pn.prototype.listeners=function(r){return _C(this,r,!0)};pn.prototype.rawListeners=function(r){return _C(this,r,!1)};pn.listenerCount=function(e,r){return typeof e.listenerCount=="function"?e.listenerCount(r):wC.call(e,r)};pn.prototype.listenerCount=wC;function wC(e){var r=this._events;if(r!==void 0){var t=r[e];if(typeof t=="function")return 1;if(t!==void 0)return t.length}return 0}pn.prototype.eventNames=function(){return this._eventsCount>0?f2(this._events):[]};function AC(e,r){for(var t=new Array(r),a=0;a{"use strict";var i4=c2().EventEmitter,use={init:function(e){if(e._ev instanceof i4)return e;var r=new i4,t=new i4;return e._ev=r,e._internalEv=t,e.on=r.on.bind(r),e.once=r.once.bind(r),e.removeListener=r.removeListener.bind(r),e.removeAllListeners=r.removeAllListeners.bind(r),e._internalOn=t.on.bind(t),e._internalOnce=t.once.bind(t),e._removeInternalListener=t.removeListener.bind(t),e._removeAllInternalListeners=t.removeAllListeners.bind(t),e.emit=function(a,n){r.emit(a,n),t.emit(a,n)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,r,t){var a,n=e._ev;if(!n)return;var i=n._events[r];if(!i)return;function o(s){if(s.listener){if(n.removeListener(r,s.listener),!s.fired)return s.fired=!0,s.listener.apply(n,[t])}else return s.apply(n,[t])}i=Array.isArray(i)?i:[i];var l;for(l=0;l{"use strict";var SC=Ur(),cse=y0().dfltConfig;function vse(e,r){for(var t=[],a,n=0;ncse.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};Eu.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};Eu.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};Eu.undo=function(r){var t,a;if(!(r.undoQueue===void 0||isNaN(r.undoQueue.index)||r.undoQueue.index<=0)){for(r.undoQueue.index--,t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a=r.undoQueue.queue.length)){for(t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a{"use strict";CC.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var dd=P(fi=>{"use strict";var zl=Bt(),K1=Ur(),h2=Cs(),l4=ad(),hse=o4(),dse=Y1(),pse=y0().configAttributes,LC=Ls(),qs=K1.extendDeepAll,vd=K1.isPlainObject,mse=K1.isArrayOrTypedArray,d2=K1.nestedProperty,yse=K1.valObjectMeta,s4="_isSubplotObj",p2="_isLinkedToArray",gse="_arrayAttrRegexps",FC="_deprecated",f4=[s4,p2,gse,FC];fi.IS_SUBPLOT_OBJ=s4;fi.IS_LINKED_TO_ARRAY=p2;fi.DEPRECATED=FC;fi.UNDERSCORE_ATTRS=f4;fi.get=function(){var e={};return zl.allTypes.forEach(function(r){e[r]=xse(r)}),{defs:{valObjects:yse,metaKeys:f4.concat(["description","role","editType","impliedEdits"]),editType:{traces:LC.traces,layout:LC.layout},impliedEdits:{}},traces:e,layout:_se(),frames:wse(),animation:hd(dse),config:hd(pse)}};fi.crawl=function(e,r,t,a){var n=t||0;a=a||"",Object.keys(e).forEach(function(i){var o=e[i];if(f4.indexOf(i)===-1){var l=(a?a+".":"")+i;r(o,i,e,n,l),!fi.isValObject(o)&&vd(o)&&i!=="impliedEdits"&&fi.crawl(o,r,n+1,l)}})};fi.isValObject=function(e){return e&&e.valType!==void 0};fi.findArrayAttributes=function(e){var r=[],t=[],a=[],n,i;function o(s,f,u,c){t=t.slice(0,c).concat([f]),a=a.slice(0,c).concat([s&&s._isLinkedToArray]);var v=s&&(s.valType==="data_array"||s.arrayOk===!0)&&!(t[c-1]==="colorbar"&&(f==="ticktext"||f==="tickvals"));v&&l(n,0,"")}function l(s,f,u){var c=s[t[f]],v=u+t[f];if(f===t.length-1)mse(c)&&r.push(i+v);else if(a[f]){if(Array.isArray(c))for(var d=0;d=i.length)return!1;if(e.dimensions===2){if(t++,r.length===t)return e;var o=r[t];if(!v2(o))return!1;e=i[n][o]}else e=i[n]}else e=i}}return e}function v2(e){return e===Math.round(e)&&e>=0}function xse(e){var r,t;r=zl.modules[e]._module,t=r.basePlotModule;var a={};a.type=null;var n=qs({},h2),i=qs({},r.attributes);fi.crawl(i,function(s,f,u,c,v){d2(n,v).set(void 0),s===void 0&&d2(i,v).set(void 0)}),qs(a,n),zl.traceIs(e,"noOpacity")&&delete a.opacity,zl.traceIs(e,"showLegend")||(delete a.showlegend,delete a.legendgroup),zl.traceIs(e,"noHover")&&(delete a.hoverinfo,delete a.hoverlabel),r.selectPoints||delete a.selectedpoints,qs(a,i),t.attributes&&qs(a,t.attributes),a.type=e;var o={meta:r.meta||{},categories:r.categories||{},animatable:!!r.animatable,type:e,attributes:hd(a)};if(r.layoutAttributes){var l={};qs(l,r.layoutAttributes),o.layoutAttributes=hd(l)}return r.animatable||fi.crawl(o,function(s){fi.isValObject(s)&&"anim"in s&&delete s.anim}),o}function _se(){var e={},r,t;qs(e,l4);for(r in zl.subplotsRegistry)if(t=zl.subplotsRegistry[r],!!t.layoutAttributes)if(Array.isArray(t.attr))for(var a=0;a{"use strict";var pd=Ur(),Ese=Cs(),Nc="templateitemname",u4={name:{valType:"string",editType:"none"}};u4[Nc]={valType:"string",editType:"calc"};A0.templatedArray=function(e,r){return r._isLinkedToArray=e,r.name=u4.name,r[Nc]=u4[Nc],r};A0.traceTemplater=function(e){var r={},t,a;for(t in e)a=e[t],Array.isArray(a)&&a.length&&(r[t]=0);function n(i){t=pd.coerce(i,{},Ese,"type");var o={type:t,_template:null};if(t in r){a=e[t];var l=r[t]%a.length;r[t]++,o._template=a[l]}return o}return{newTrace:n}};A0.newContainer=function(e,r,t){var a=e._template,n=a&&(a[r]||t&&a[t]);pd.isPlainObject(n)||(n=null);var i=e[r]={_template:n};return i};A0.arrayTemplater=function(e,r,t){var a=e._template,n=a&&a[PC(r)],i=a&&a[r];(!Array.isArray(i)||!i.length)&&(i=[]);var o={};function l(f){var u={name:f.name,_input:f},c=u[Nc]=f[Nc];if(!RC(c))return u._template=n,u;for(var v=0;v=a&&(t._input||{})._templateitemname;i&&(n=a);var o=r+"["+n+"]",l;function s(){l={},i&&(l[o]={},l[o][Nc]=i)}s();function f(d,p){l[d]=p}function u(d,p){i?pd.nestedProperty(l[o],d).set(p):l[o+"."+d]=p}function c(){var d=l;return s(),d}function v(d,p){d&&u(d,p);var y=c();for(var m in y)pd.nestedProperty(e,m).set(y[m])}return{modifyBase:f,modifyItem:u,getUpdateObj:c,applyUpdate:v}}});var qi=P((mCe,NC)=>{"use strict";var em=Qh().counter;NC.exports={idRegex:{x:em("x","( domain)?"),y:em("y","( domain)?")},attrRegex:em("[xy]axis"),xAxisMatch:em("xaxis"),yAxisMatch:em("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var kn=P(Zo=>{"use strict";var kse=Bt(),c4=qi();Zo.id2name=function(r){if(!(typeof r!="string"||!r.match(c4.AX_ID_PATTERN))){var t=r.split(" ")[0].substr(1);return t==="1"&&(t=""),r.charAt(0)+"axis"+t}};Zo.name2id=function(r){if(r.match(c4.AX_NAME_PATTERN)){var t=r.substr(5);return t==="1"&&(t=""),r.charAt(0)+t}};Zo.cleanId=function(r,t,a){var n=/( domain)$/.test(r);if(!(typeof r!="string"||!r.match(c4.AX_ID_PATTERN))&&!(t&&r.charAt(0)!==t)&&!(n&&!a)){var i=r.split(" ")[0].substr(1).replace(/^0+/,"");return i==="1"&&(i=""),r.charAt(0)+i+(n&&a?" domain":"")}};Zo.list=function(e,r,t){var a=e._fullLayout;if(!a)return[];var n=Zo.listIds(e,r),i=new Array(n.length),o;for(o=0;oa?1:-1:+(e.substr(1)||1)-+(r.substr(1)||1)};Zo.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function IC(e,r){if(r&&r.length){for(var t=0;t{"use strict";function Cse(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".outline-controllers").remove()}function Lse(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}OC.exports={clearOutlineControllers:Cse,clearOutline:Lse}});var m2=P((bCe,BC)=>{"use strict";BC.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var rm=P(g2=>{"use strict";var y2=Bt(),xCe=qi().SUBPLOT_PATTERN;g2.getSubplotCalcData=function(e,r,t){var a=y2.subplotsRegistry[r];if(!a)return[];for(var n=a.attr,i=[],o=0;o{"use strict";var Dse=Bt(),md=Ur();T0.manageCommandObserver=function(e,r,t,a){var n={},i=!0;r&&r._commandObserver&&(n=r._commandObserver),n.cache||(n.cache={}),n.lookupTable={};var o=T0.hasSimpleAPICommandBindings(e,t,n.lookupTable);if(r&&r._commandObserver){if(o)return n;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,n}if(o){zC(e,o,n.cache),n.check=function(){if(i){var u=zC(e,o,n.cache);return u.changed&&a&&n.lookupTable[u.value]!==void 0&&(n.disable(),Promise.resolve(a({value:u.value,type:o.type,prop:o.prop,traces:o.traces,index:n.lookupTable[u.value]})).then(n.enable,n.enable)),u.changed}};for(var l=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],s=0;s0?".":"")+n;md.isPlainObject(i)?v4(i,r,o,a+1):r(o,n,i)}})}});var xi=P((ACe,aL)=>{"use strict";var JC=da(),qse=jh().timeFormatLocale,Rse=_5().formatLocale,tm=ba(),Pse=w5(),ka=Bt(),$C=dd(),Nse=Xa(),Mt=Ur(),QC=ha(),VC=Kn().BADNUM,Jo=kn(),Ise=Ic().clearOutline,Ose=m2(),h4=Y1(),Bse=o4(),zse=rm().getModuleCalcData,YC=Mt.relinkPrivateKeys,M0=Mt._,mt=aL.exports={};Mt.extendFlat(mt,ka);mt.attributes=Cs();mt.attributes.type.values=mt.allTypes;mt.fontAttrs=Gi();mt.layoutAttributes=ad();var x2=HC();mt.executeAPICommand=x2.executeAPICommand;mt.computeAPICommandBindings=x2.computeAPICommandBindings;mt.manageCommandObserver=x2.manageCommandObserver;mt.hasSimpleAPICommandBindings=x2.hasSimpleAPICommandBindings;mt.redrawText=function(e){return e=Mt.getGraphDiv(e),new Promise(function(r){setTimeout(function(){e._fullLayout&&(ka.getComponentMethod("annotations","draw")(e),ka.getComponentMethod("legend","draw")(e),ka.getComponentMethod("colorbar","draw")(e),r(mt.previousPromises(e)))},300)})};mt.resize=function(e){e=Mt.getGraphDiv(e);var r,t=new Promise(function(a,n){(!e||Mt.isHidden(e))&&n(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(r=e._resolveResize),e._resolveResize=a,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||Mt.isHidden(e)){a(e);return}delete e.layout.width,delete e.layout.height;var i=e.changed;e.autoplay=!0,ka.call("relayout",e,{autosize:!0}).then(function(){e.changed=i,e._resolveResize===a&&(delete e._resolveResize,a(e))})},100)});return r&&r(t),t};mt.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};mt.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var r=e._fullLayout,t=Mt.ensureSingle(r._paper,"text","js-plot-link-container",function(s){s.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:QC.defaultLine,"pointer-events":"all"}).each(function(){var f=JC.select(this);f.append("tspan").classed("js-link-to-tool",!0),f.append("tspan").classed("js-link-spacer",!0),f.append("tspan").classed("js-sourcelinks",!0)})}),a=t.node(),n={y:r._paper.attr("height")-9};document.body.contains(a)&&a.getComputedTextLength()>=r.width-20?(n["text-anchor"]="start",n.x=5):(n["text-anchor"]="end",n.x=r._paper.attr("width")-7),t.attr(n);var i=t.select(".js-link-to-tool"),o=t.select(".js-link-spacer"),l=t.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&Gse(e,i),o.text(i.text()&&l.text()?" - ":"")}};function Gse(e,r){r.text("");var t=r.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)t.on("click",function(){mt.sendDataToCloud(e)});else{var a=window.location.pathname.split("/"),n=window.location.search;t.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+a[2].split(".")[0]+"/"+a[1]+n})}}mt.sendDataToCloud=function(e){var r=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(r){e.emit("plotly_beforeexport");var t=JC.select(e).append("div").attr("id","hiddenform").style("display","none"),a=t.append("form").attr({action:r+"/external",method:"post",target:"_blank"}),n=a.append("input").attr({type:"text",name:"data"});return n.node().value=mt.graphJson(e,!1,"keepdata"),a.node().submit(),t.remove(),e.emit("plotly_afterexport"),!1}};var Use=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],Hse=["year","month","dayMonth","dayMonthYear"];mt.supplyDefaults=function(e,r){var t=r&&r.skipUpdateCalc,a=e._fullLayout||{};if(a._skipDefaults){delete a._skipDefaults;return}var n=e._fullLayout={},i=e.layout||{},o=e._fullData||[],l=e._fullData=[],s=e.data||[],f=e.calcdata||[],u=e._context||{},c;e._transitionData||mt.createTransitionData(e),n._dfltTitle={plot:M0(e,"Click to enter Plot title"),subtitle:M0(e,"Click to enter Plot subtitle"),x:M0(e,"Click to enter X axis title"),y:M0(e,"Click to enter Y axis title"),colorbar:M0(e,"Click to enter Colorscale title"),annotation:M0(e,"new text")},n._traceWord=M0(e,"trace");var v=WC(e,Use);if(n._mapboxAccessToken=u.mapboxAccessToken,a._initialAutoSizeIsDone){var d=a.width,p=a.height;mt.supplyLayoutGlobalDefaults(i,n,v),i.width||(n.width=d),i.height||(n.height=p),mt.sanitizeMargins(n)}else{mt.supplyLayoutGlobalDefaults(i,n,v);var y=!i.width||!i.height,m=n.autosize,b=u.autosizable,A=y&&(m||b);A?mt.plotAutoSize(e,i,n):y&&mt.sanitizeMargins(n),!m&&y&&(i.width=n.width,i.height=n.height)}n._d3locale=Wse(v,n.separators),n._extraFormat=WC(e,Hse),n._initialAutoSizeIsDone=!0,n._dataLength=s.length,n._modules=[],n._visibleModules=[],n._basePlotModules=[];var _=n._subplots=Yse(),x=n._splomAxes={x:{},y:{}},T=n._splomSubplots={};n._splomGridDflt={},n._scatterStackOpts={},n._firstScatter={},n._alignmentOpts={},n._colorAxes={},n._requestRangeslider={},n._traceUids=Vse(o,s),mt.supplyDataDefaults(s,l,i,n);var E=Object.keys(x.x),M=Object.keys(x.y);if(E.length>1&&M.length>1){for(ka.getComponentMethod("grid","sizeDefaults")(i,n),c=0;c15&&M.length>15&&n.shapes.length===0&&n.images.length===0,mt.linkSubplots(l,n,o,a),mt.cleanPlot(l,n,o,a);var q=!!(a._has&&a._has("cartesian")),H=!!(n._has&&n._has("cartesian")),X=q,oe=H;X&&!oe?a._bgLayer.remove():oe&&!X&&(n._shouldCreateBgLayer=!0),a._zoomlayer&&!e._dragging&&Ise({_fullLayout:a}),jse(l,n),YC(n,a),ka.getComponentMethod("colorscale","crossTraceDefaults")(l,n),n._preGUI||(n._preGUI={}),n._tracePreGUI||(n._tracePreGUI={});var te=n._tracePreGUI,Q={},Z;for(Z in te)Q[Z]="old";for(c=0;c0){var u=1-2*i;o=Math.round(u*o),l=Math.round(u*l)}}var c=mt.layoutAttributes.width.min,v=mt.layoutAttributes.height.min;o1,p=!t.height&&Math.abs(a.height-l)>1;(p||d)&&(d&&(a.width=o),p&&(a.height=l)),r._initialAutoSize||(r._initialAutoSize={width:o,height:l}),mt.sanitizeMargins(a)};mt.supplyLayoutModuleDefaults=function(e,r,t,a){var n=ka.componentsRegistry,i=r._basePlotModules,o,l,s,f=ka.subplotsRegistry.cartesian;for(o in n)s=n[o],s.includeBasePlot&&s.includeBasePlot(e,r);i.length||i.push(f),r._has("cartesian")&&(ka.getComponentMethod("grid","contentDefaults")(e,r),f.finalizeSubplots(e,r));for(var u in r._subplots)r._subplots[u].sort(Mt.subplotSort);for(l=0;l1&&(t.l/=m,t.r/=m)}if(v){var b=(t.t+t.b)/v;b>1&&(t.t/=b,t.b/=b)}var A=t.xl!==void 0?t.xl:t.x,_=t.xr!==void 0?t.xr:t.x,x=t.yt!==void 0?t.yt:t.y,T=t.yb!==void 0?t.yb:t.y;d[r]={l:{val:A,size:t.l+y},r:{val:_,size:t.r+y},b:{val:T,size:t.b+y},t:{val:x,size:t.t+y}},p[r]=1}if(!a._replotting)return mt.doAutoMargin(e)}};function Zse(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var r=Jo.list(e,"",!0);for(var t in r)if(r[t].autoshift||r[t].shift)return!0;return!1}mt.doAutoMargin=function(e){var r=e._fullLayout,t=r.width,a=r.height;r._size||(r._size={}),KC(r);var n=r._size,i=r.margin,o={t:0,b:0,l:0,r:0},l=Mt.extendFlat({},n),s=i.l,f=i.r,u=i.t,c=i.b,v=r._pushmargin,d=r._pushmarginIds,p=r.minreducedwidth,y=r.minreducedheight;if(i.autoexpand!==!1){for(var m in v)d[m]||delete v[m];var b=e._fullLayout._reservedMargin;for(var A in b)for(var _ in b[A]){var x=b[A][_];o[_]=Math.max(o[_],x)}v.base={l:{val:0,size:s},r:{val:1,size:f},t:{val:1,size:u},b:{val:0,size:c}};for(var T in o){var E=0;for(var M in v)M!=="base"&&tm(v[M][T].size)&&(E=v[M][T].size>E?v[M][T].size:E);var k=Math.max(0,i[T]-E);o[T]=Math.max(0,o[T]-k)}for(var F in v){var I=v[F].l||{},O=v[F].b||{},q=I.val,H=I.size,X=O.val,oe=O.size,te=t-o.r-o.l,Q=a-o.t-o.b;for(var Z in v){if(tm(H)&&v[Z].r){var J=v[Z].r.val,le=v[Z].r.size;if(J>q){var ce=(H*J+(le-te)*q)/(J-q),De=(le*(1-q)+(H-te)*(1-J))/(J-q);ce+De>s+f&&(s=ce,f=De)}}if(tm(oe)&&v[Z].t){var Be=v[Z].t.val,Ee=v[Z].t.size;if(Be>X){var Xe=(oe*Be+(Ee-Q)*X)/(Be-X),Ae=(Ee*(1-X)+(oe-Q)*(1-Be))/(Be-X);Xe+Ae>c+u&&(c=Xe,u=Ae)}}}}}var rr=Mt.constrain(t-i.l-i.r,eL,p),ze=Mt.constrain(a-i.t-i.b,rL,y),We=Math.max(0,t-rr),$e=Math.max(0,a-ze);if(We){var Ue=(s+f)/We;Ue>1&&(s/=Ue,f/=Ue)}if($e){var ee=(c+u)/$e;ee>1&&(c/=ee,u/=ee)}if(n.l=Math.round(s)+o.l,n.r=Math.round(f)+o.r,n.t=Math.round(u)+o.t,n.b=Math.round(c)+o.b,n.p=Math.round(i.pad),n.w=Math.round(t)-n.l-n.r,n.h=Math.round(a)-n.t-n.b,!r._replotting&&(mt.didMarginChange(l,n)||Zse(e))){"_redrawFromAutoMarginCount"in r?r._redrawFromAutoMarginCount++:r._redrawFromAutoMarginCount=1;var de=3*(1+Object.keys(d).length);if(r._redrawFromAutoMarginCount1)return!0}return!1};mt.graphJson=function(e,r,t,a,n,i){(n&&r&&!e._fullData||n&&!r&&!e._fullLayout)&&mt.supplyDefaults(e);var o=n?e._fullData:e.data,l=n?e._fullLayout:e.layout,s=(e._transitionData||{})._frames;function f(v,d){if(typeof v=="function")return d?"_function_":null;if(Mt.isPlainObject(v)){var p={},y;return Object.keys(v).sort().forEach(function(_){if(["_","["].indexOf(_.charAt(0))===-1){if(typeof v[_]=="function"){d&&(p[_]="_function");return}if(t==="keepdata"){if(_.substr(_.length-3)==="src")return}else if(t==="keepstream"){if(y=v[_+"src"],typeof y=="string"&&y.indexOf(":")>0&&!Mt.isPlainObject(v.stream))return}else if(t!=="keepall"&&(y=v[_+"src"],typeof y=="string"&&y.indexOf(":")>0))return;p[_]=f(v[_],d)}}),p}var m=Array.isArray(v),b=Mt.isTypedArray(v);if((m||b)&&v.dtype&&v.shape){var A=v.bdata;return f({dtype:v.dtype,shape:v.shape,bdata:Mt.isArrayBuffer(A)?Pse.encode(A):A},d)}return m?v.map(function(_){return f(_,d)}):b?Mt.simpleMap(v,Mt.identity):Mt.isJSDate(v)?Mt.ms2DateTimeLocal(+v):v}var u={data:(o||[]).map(function(v){var d=f(v);return r&&delete d.fit,d})};if(!r&&(u.layout=f(l),n)){var c=l._size;u.layout.computed={margin:{b:c.b,l:c.l,r:c.r,t:c.t}}}return s&&(u.frames=f(s)),i&&(u.config=f(e._context,!0)),a==="object"?u:JSON.stringify(u)};mt.modifyFrames=function(e,r){var t,a,n,i=e._transitionData._frames,o=e._transitionData._frameHash;for(t=0;t0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){a=!0}),t.redraw&&e._transitionData._interruptCallbacks.push(function(){return ka.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var v=0,d=0;function p(){return v++,function(){d++,!a&&d===v&&l(c)}}t.runFn(p),setTimeout(p())})}function l(c){if(e._transitionData)return i(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(t.redraw)return ka.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(c)}function s(){if(e._transitionData)return e._transitioning=!1,n(e._transitionData._interruptCallbacks)}var f=[mt.previousPromises,s,t.prepareFn,mt.rehover,mt.reselect,o],u=Mt.syncOrAsync(f,e);return(!u||!u.then)&&(u=Promise.resolve()),u.then(function(){return e})}mt.doCalcdata=function(e,r){var t=Jo.list(e),a=e._fullData,n=e._fullLayout,i,o,l,s,f=new Array(a.length),u=(e.calcdata||[]).slice();for(e.calcdata=f,n._numBoxes=0,n._numViolins=0,n._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,n._piecolormap={},n._sunburstcolormap={},n._treemapcolormap={},n._iciclecolormap={},n._funnelareacolormap={},l=0;l=0;s--)if(T[s].enabled){i._indexToPoints=T[s]._indexToPoints;break}o&&o.calc&&(x=o.calc(e,i))}(!Array.isArray(x)||!x[0])&&(x=[{x:VC,y:VC}]),x[0].t||(x[0].t={}),x[0].trace=i,f[A]=x}}for(XC(t,a,n),l=0;l{"use strict";S0.xmlns="http://www.w3.org/2000/xmlns/";S0.svg="http://www.w3.org/2000/svg";S0.xlink="http://www.w3.org/1999/xlink";S0.svgAttrs={xmlns:S0.svg,"xmlns:xlink":S0.xlink}});var ho=P((MCe,nL)=>{"use strict";nL.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var po=P(Gl=>{"use strict";var ei=da(),ku=Ur(),Kse=ku.strTranslate,d4=Oc(),efe=ho().LINE_SPACING,rfe=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;Gl.convertToTspans=function(e,r,t){var a=e.text(),n=!e.attr("data-notex")&&r&&r._context.typesetMath&&typeof MathJax!="undefined"&&a.match(rfe),i=ei.select(e.node().parentNode);if(i.empty())return;var o=e.attr("class")?e.attr("class").split(" ")[0]:"text";o+="-math",i.selectAll("svg."+o).remove(),i.selectAll("g."+o+"-group").remove(),e.style("display",null).attr({"data-unformatted":a,"data-math":"N"});function l(){i.empty()||(o=e.attr("class")+"-math",i.select("svg."+o).remove()),e.text("").style("white-space","pre");var s=dfe(e.node(),a);s&&e.style("pointer-events","all"),Gl.positionText(e),t&&t.call(e)}return n?(r&&r._promises||[]).push(new Promise(function(s){e.style("display","none");var f=parseInt(e.node().style.fontSize,10),u={fontSize:f};ife(n[2],u,function(c,v,d){i.selectAll("svg."+o).remove(),i.selectAll("g."+o+"-group").remove();var p=c&&c.select("svg");if(!p||!p.node()){l(),s();return}var y=i.append("g").classed(o+"-group",!0).attr({"pointer-events":"none","data-unformatted":a,"data-math":"Y"});y.node().appendChild(p.node()),v&&v.node()&&p.node().insertBefore(v.node().cloneNode(!0),p.node().firstChild);var m=d.width,b=d.height;p.attr({class:o,height:b,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var A=e.node().style.fill||"black",_=p.select("g");_.attr({fill:A,stroke:A});var x=_.node().getBoundingClientRect(),T=x.width,E=x.height;(T>m||E>b)&&(p.style("overflow","hidden"),x=p.node().getBoundingClientRect(),T=x.width,E=x.height);var M=+e.attr("x"),k=+e.attr("y"),F=f||e.node().getBoundingClientRect().height,I=-F/4;if(o[0]==="y")y.attr({transform:"rotate("+[-90,M,k]+")"+Kse(-T/2,I-E/2)});else if(o[0]==="l")k=I-E/2;else if(o[0]==="a"&&o.indexOf("atitle")!==0)M=0,k=I;else{var O=e.attr("text-anchor");M=M-T*(O==="middle"?.5:O==="end"?1:0),k=k+I-E/2}p.attr({x:M,y:k}),t&&t.call(e,y),s(y)})})):l(),e};var tfe=/(<|<|<)/g,afe=/(>|>|>)/g;function nfe(e){return e.replace(tfe,"\\lt ").replace(afe,"\\gt ")}var iL=[["$","$"],["\\(","\\)"]];function ife(e,r,t){var a=parseInt((MathJax.version||"").split(".")[0]);if(a!==2&&a!==3){ku.warn("No MathJax version:",MathJax.version);return}var n,i,o,l,s=function(){return i=ku.extendDeepAll({},MathJax.Hub.config),o=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:iL},displayAlign:"left"})},f=function(){i=ku.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=iL},u=function(){if(n=MathJax.Hub.config.menuSettings.renderer,n!=="SVG")return MathJax.Hub.setRenderer("SVG")},c=function(){n=MathJax.config.startup.output,n!=="svg"&&(MathJax.config.startup.output="svg")},v=function(){var A="math-output-"+ku.randstr({},64);l=ei.select("body").append("div").attr({id:A}).style({visibility:"hidden",position:"absolute","font-size":r.fontSize+"px"}).text(nfe(e));var _=l.node();return a===2?MathJax.Hub.Typeset(_):MathJax.typeset([_])},d=function(){var A=l.select(a===2?".MathJax_SVG":".MathJax"),_=!A.empty()&&l.select("svg").node();if(!_)ku.log("There was an error in the tex syntax.",e),t();else{var x=_.getBoundingClientRect(),T;a===2?T=ei.select("body").select("#MathJax_SVG_glyphs"):T=A.select("defs"),t(A,T,x)}l.remove()},p=function(){if(n!=="SVG")return MathJax.Hub.setRenderer(n)},y=function(){n!=="svg"&&(MathJax.config.startup.output=n)},m=function(){return o!==void 0&&(MathJax.Hub.processSectionDelay=o),MathJax.Hub.Config(i)},b=function(){MathJax.config=i};a===2?MathJax.Hub.Queue(s,u,v,d,p,m):a===3&&(f(),c(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){v(),d(),y(),b()}))}var fL={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},ofe={sub:"0.3em",sup:"-0.6em"},lfe={sub:"-0.21em",sup:"0.42em"},oL="\u200B",lL=["http:","https:","mailto:","",void 0,":"],uL=Gl.NEWLINES=/(\r\n?|\n)/g,m4=/(<[^<>]*>)/,y4=/<(\/?)([^ >]*)(\s+(.*))?>/i,sfe=//i;Gl.BR_TAG_ALL=//gi;var cL=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,vL=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,hL=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,ffe=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function E0(e,r){if(!e)return null;var t=e.match(r),a=t&&(t[3]||t[4]);return a&&_2(a)}var ufe=/(^|;)\s*color:/;Gl.plainText=function(e,r){r=r||{};for(var t=r.len!==void 0&&r.len!==-1?r.len:1/0,a=r.allowedTags!==void 0?r.allowedTags:["br"],n="...",i=n.length,o=e.split(m4),l=[],s="",f=0,u=0;ui?l.push(c.substr(0,y-i)+n):l.push(c.substr(0,y));break}s=""}}return l.join("")};var cfe={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},vfe=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function _2(e){return e.replace(vfe,function(r,t){var a;return t.charAt(0)==="#"?a=hfe(t.charAt(1)==="x"?parseInt(t.substr(2),16):parseInt(t.substr(1),10)):a=cfe[t],a||r})}Gl.convertEntities=_2;function hfe(e){if(!(e>1114111)){var r=String.fromCodePoint;if(r)return r(e);var t=String.fromCharCode;return e<=65535?t(e):t((e>>10)+55232,e%1024+56320)}}function dfe(e,r){r=r.replace(uL," ");var t=!1,a=[],n,i=-1;function o(){i++;var E=document.createElementNS(d4.svg,"tspan");ei.select(E).attr({class:"line",dy:i*efe+"em"}),e.appendChild(E),n=E;var M=a;if(a=[{node:E}],M.length>1)for(var k=1;k.",r);return}var M=a.pop();E!==M.type&&ku.log("Start tag <"+M.type+"> doesnt match end tag <"+E+">. Pretending it did match.",r),n=a[a.length-1].node}var u=sfe.test(r);u?o():(n=e,a=[{node:e}]);for(var c=r.split(m4),v=0;v{"use strict";var pfe=da(),A2=ks(),nm=ba(),w2=Ur(),pL=ha(),mfe=p0().isValid;function yfe(e,r,t){var a=r?w2.nestedProperty(e,r).get()||{}:e,n=a[t||"color"];n&&n._inputArray&&(n=n._inputArray);var i=!1;if(w2.isArrayOrTypedArray(n)){for(var o=0;o=0;a--,n++){var i=e[a];t[n]=[1-i[0],i[1]]}return t}function _L(e,r){r=r||{};for(var t=e.domain,a=e.range,n=a.length,i=new Array(n),o=0;o{"use strict";var AL=B5(),bfe=AL.FORMAT_LINK,xfe=AL.DATE_FORMAT_LINK;function _fe(e,r){return{valType:"string",dflt:"",editType:"none",description:(r?g4:TL)("hover text",e)+["By default the values are formatted using "+(r?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function g4(e,r){return["Sets the "+e+" formatting rule"+(r?"for `"+r+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+bfe+"."].join(" ")}function TL(e,r){return g4(e,r)+[" And for dates see: "+xfe+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}ML.exports={axisHoverFormat:_fe,descriptionOnlyNumbers:g4,descriptionWithDates:TL}});var Ul=P((LCe,UL)=>{"use strict";var SL=Gi(),yd=wf(),GL=kc().dash,x4=zn().extendFlat,EL=Xa().templatedArray,CCe=td().templateFormatStringDescription,kL=im().descriptionWithDates,wfe=Kn().ONEDAY,Mf=qi(),Afe=Mf.HOUR_PATTERN,Tfe=Mf.WEEKDAY_PATTERN,b4={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},Mfe=x4({},b4,{values:b4.values.slice().concat(["sync"])});function CL(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var LL={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},DL={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},FL={valType:"data_array",editType:"ticks"},qL={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function RL(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=5),r}function PL(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var NL={valType:"color",dflt:yd.defaultLine,editType:"ticks"},IL={valType:"color",dflt:yd.lightLine,editType:"ticks"};function OL(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var BL=x4({},GL,{editType:"ticks"}),zL={valType:"boolean",editType:"ticks"};UL.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:yd.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:SL({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[Mf.idRegex.x.toString(),Mf.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[Mf.idRegex.x.toString(),Mf.idRegex.y.toString()],editType:"calc"},rangebreaks:EL("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[Tfe,Afe,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:wfe},editType:"calc"}),tickmode:Mfe,nticks:CL(),tick0:LL,dtick:DL,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:FL,ticktext:{valType:"data_array",editType:"ticks"},ticks:qL,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:RL(),tickwidth:PL(),tickcolor:NL,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:x4({},GL,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:SL({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:kL("tick label")},tickformatstops:EL("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:kL("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:yd.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:zL,gridcolor:IL,gridwidth:OL(),griddash:BL,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:yd.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:yd.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",Mf.idRegex.x.toString(),Mf.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",Mf.idRegex.x.toString(),Mf.idRegex.y.toString()],editType:"plot"},minor:{tickmode:b4,nticks:CL("minor"),tick0:LL,dtick:DL,tickvals:FL,ticks:qL,ticklen:RL("minor"),tickwidth:PL("minor"),tickcolor:NL,gridcolor:IL,gridwidth:OL("minor"),griddash:BL,showgrid:zL,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var T2=P((DCe,YL)=>{"use strict";var mn=Ul(),HL=Gi(),VL=zn().extendFlat,Sfe=Ls().overrideAll;YL.exports=Sfe({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:mn.linecolor,outlinewidth:mn.linewidth,bordercolor:mn.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:mn.minor.tickmode,nticks:mn.nticks,tick0:mn.tick0,dtick:mn.dtick,tickvals:mn.tickvals,ticktext:mn.ticktext,ticks:VL({},mn.ticks,{dflt:""}),ticklabeloverflow:VL({},mn.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:mn.ticklen,tickwidth:mn.tickwidth,tickcolor:mn.tickcolor,ticklabelstep:mn.ticklabelstep,showticklabels:mn.showticklabels,labelalias:mn.labelalias,tickfont:HL({}),tickangle:mn.tickangle,tickformat:mn.tickformat,tickformatstops:mn.tickformatstops,tickprefix:mn.tickprefix,showtickprefix:mn.showtickprefix,ticksuffix:mn.ticksuffix,showticksuffix:mn.showticksuffix,separatethousands:mn.separatethousands,exponentformat:mn.exponentformat,minexponent:mn.minexponent,showexponent:mn.showexponent,title:{text:{valType:"string"},font:HL({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var k0=P((qCe,jL)=>{"use strict";var Efe=T2(),kfe=Qh().counter,Cfe=r2(),WL=p0().scales,FCe=Cfe(WL);function M2(e){return"`"+e+"`"}jL.exports=function(r,t){r=r||"",t=t||{};var a=t.cLetter||"c",n="onlyIfNumerical"in t?t.onlyIfNumerical:!!r,i="noScale"in t?t.noScale:r==="marker.line",o="showScaleDflt"in t?t.showScaleDflt:a==="z",l=typeof t.colorscaleDflt=="string"?WL[t.colorscaleDflt]:null,s=t.editTypeOverride||"",f=r?r+".":"",u,c;"colorAttr"in t?(u=t.colorAttr,c=t.colorAttr):(u={z:"z",c:"color"}[a],c="in "+M2(f+u));var v=n?" Has an effect only if "+c+" is set to a numerical array.":"",d=a+"auto",p=a+"min",y=a+"max",m=a+"mid",b=M2(f+d),A=M2(f+p),_=M2(f+y),x=A+" and "+_,T={};T[p]=T[y]=void 0;var E={};E[d]=!1;var M={};return u==="color"&&(M.color={valType:"color",arrayOk:!0,editType:s||"style"},t.anim&&(M.color.anim=!0)),M[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:T},M[p]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:E},M[y]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:E},M[m]={valType:"number",dflt:null,editType:"calc",impliedEdits:T},M.colorscale={valType:"colorscale",editType:"calc",dflt:l,impliedEdits:{autocolorscale:!1}},M.autocolorscale={valType:"boolean",dflt:t.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},M.reversescale={valType:"boolean",dflt:!1,editType:"plot"},i||(M.showscale={valType:"boolean",dflt:o,editType:"calc"},M.colorbar=Efe),t.noColorAxis||(M.coloraxis={valType:"subplotid",regex:kfe("coloraxis"),dflt:null,editType:"calc"}),M}});var w4=P((RCe,XL)=>{"use strict";var Lfe=zn().extendFlat,Dfe=k0(),_4=p0().scales;XL.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:_4.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:_4.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:_4.RdBu,editType:"calc"}},coloraxis:Lfe({_isSubplotObj:!0,editType:"calc"},Dfe("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var A4=P((PCe,ZL)=>{"use strict";var Ffe=Ur();ZL.exports=function(r){return Ffe.isPlainObject(r.colorbar)}});var S4=P(M4=>{"use strict";var T4=ba(),JL=Ur(),$L=Kn(),qfe=$L.ONEDAY,Rfe=$L.ONEWEEK;M4.dtick=function(e,r){var t=r==="log",a=r==="date",n=r==="category",i=a?qfe:1;if(!e)return i;if(T4(e))return e=Number(e),e<=0?i:n?Math.max(1,Math.round(e)):a?Math.max(.1,e):e;if(typeof e!="string"||!(a||t))return i;var o=e.charAt(0),l=e.substr(1);return l=T4(l)?Number(l):0,l<=0||!(a&&o==="M"&&l===Math.round(l)||t&&o==="L"||t&&o==="D"&&(l===1||l===2))?i:e};M4.tick0=function(e,r,t,a){if(r==="date")return JL.cleanDate(e,JL.dateTick0(t,a%Rfe===0?1:0));if(!(a==="D1"||a==="D2"))return T4(e)?Number(e):0}});var E4=P((ICe,KL)=>{"use strict";var QL=S4(),Pfe=Ur().isArrayOrTypedArray,Nfe=Yo().isTypedArraySpec,Ife=Yo().decodeTypedArraySpec;KL.exports=function(r,t,a,n,i){i||(i={});var o=i.isMinor,l=o?r.minor||{}:r,s=o?t.minor:t,f=o?"minor.":"";function u(A){var _=l[A];return Nfe(_)&&(_=Ife(_)),_!==void 0?_:(s._template||{})[A]}var c=u("tick0"),v=u("dtick"),d=u("tickvals"),p=Pfe(d)?"array":v?"linear":"auto",y=a(f+"tickmode",p);if(y==="auto"||y==="sync")a(f+"nticks");else if(y==="linear"){var m=s.dtick=QL.dtick(v,n);s.tick0=QL.tick0(c,n,t.calendar,m)}else if(n!=="multicategory"){var b=a(f+"tickvals");b===void 0?s.tickmode="auto":o||a("ticktext")}}});var C4=P((OCe,rD)=>{"use strict";var k4=Ur(),eD=Ul();rD.exports=function(r,t,a,n){var i=n.isMinor,o=i?r.minor||{}:r,l=i?t.minor:t,s=i?eD.minor:eD,f=i?"minor.":"",u=k4.coerce2(o,l,s,"ticklen",i?(t.ticklen||5)*.6:void 0),c=k4.coerce2(o,l,s,"tickwidth",i?t.tickwidth||1:void 0),v=k4.coerce2(o,l,s,"tickcolor",(i?t.tickcolor:void 0)||l.color),d=a(f+"ticks",!i&&n.outerTicks||u||c||v?"outside":"");d||(delete l.ticklen,delete l.tickwidth,delete l.tickcolor)}});var L4=P((BCe,tD)=>{"use strict";tD.exports=function(r){var t=["showexponent","showtickprefix","showticksuffix"],a=t.filter(function(i){return r[i]!==void 0}),n=function(i){return r[i]===r[a[0]]};if(a.every(n)||a.length===1)return r[a[0]]}});var gl=P((zCe,aD)=>{"use strict";var S2=Ur(),Ofe=Xa();aD.exports=function(r,t,a){var n=a.name,i=a.inclusionAttr||"visible",o=t[n],l=S2.isArrayOrTypedArray(r[n])?r[n]:[],s=t[n]=[],f=Ofe.arrayTemplater(t,n,i),u,c;for(u=0;u{"use strict";var D4=Ur(),Bfe=ha().contrast,nD=Ul(),zfe=L4(),Gfe=gl();iD.exports=function(r,t,a,n,i){i||(i={});var o=a("labelalias");D4.isPlainObject(o)||delete t.labelalias;var l=zfe(r),s=a("showticklabels");if(s){i.noTicklabelshift||a("ticklabelshift"),i.noTicklabelstandoff||a("ticklabelstandoff");var f=i.font||{},u=t.color,c=t.ticklabelposition||"",v=c.indexOf("inside")!==-1?Bfe(i.bgColor):u&&u!==nD.color.dflt?u:f.color;if(D4.coerceFont(a,"tickfont",f,{overrideDflt:{color:v}}),!i.noTicklabelstep&&n!=="multicategory"&&n!=="log"&&a("ticklabelstep"),!i.noAng){var d=a("tickangle");!i.noAutotickangles&&d==="auto"&&a("autotickangles")}if(n!=="category"){var p=a("tickformat");Gfe(r,t,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:Ufe}),t.tickformatstops.length||delete t.tickformatstops,!i.noExp&&!p&&n!=="date"&&(a("showexponent",l),a("exponentformat"),a("minexponent"),a("separatethousands"))}!i.noMinorloglabels&&n==="log"&&a("minorloglabels")}};function Ufe(e,r){function t(n,i){return D4.coerce(e,r,nD.tickformatstops,n,i)}var a=t("enabled");a&&(t("dtickrange"),t("value"))}});var q4=P((UCe,oD)=>{"use strict";var Hfe=L4();oD.exports=function(r,t,a,n,i){i||(i={});var o=i.tickSuffixDflt,l=Hfe(r),s=a("tickprefix");s&&a("showtickprefix",l);var f=a("ticksuffix",o);f&&a("showticksuffix",l)}});var R4=P((HCe,lD)=>{"use strict";var Bc=Ur(),Vfe=Xa(),Yfe=E4(),Wfe=C4(),jfe=F4(),Xfe=q4(),Zfe=T2();lD.exports=function(r,t,a){var n=Vfe.newContainer(t,"colorbar"),i=r.colorbar||{};function o(O,q){return Bc.coerce(i,n,Zfe,O,q)}var l=a.margin||{t:0,b:0,l:0,r:0},s=a.width-l.l-l.r,f=a.height-l.t-l.b,u=o("orientation"),c=u==="v",v=o("thicknessmode");o("thickness",v==="fraction"?30/(c?s:f):30);var d=o("lenmode");o("len",d==="fraction"?1:c?f:s);var p=o("yref"),y=o("xref"),m=p==="paper",b=y==="paper",A,_,x,T="left";c?(x="middle",T=b?"left":"right",A=b?1.02:1,_=.5):(x=m?"bottom":"top",T="center",A=.5,_=m?1.02:1),Bc.coerce(i,n,{x:{valType:"number",min:b?-2:0,max:b?3:1,dflt:A}},"x"),Bc.coerce(i,n,{y:{valType:"number",min:m?-2:0,max:m?3:1,dflt:_}},"y"),o("xanchor",T),o("xpad"),o("yanchor",x),o("ypad"),Bc.noneOrAll(i,n,["x","y"]),o("outlinecolor"),o("outlinewidth"),o("bordercolor"),o("borderwidth"),o("bgcolor");var E=Bc.coerce(i,n,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:c?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");o("ticklabeloverflow",E.indexOf("inside")!==-1?"hide past domain":"hide past div"),Yfe(i,n,o,"linear");var M=a.font,k={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:M};E.indexOf("inside")!==-1&&(k.bgColor="black"),Xfe(i,n,o,"linear",k),jfe(i,n,o,"linear",k),Wfe(i,n,o,"linear",k),o("title.text",a._dfltTitle.colorbar);var F=n.showticklabels?n.tickfont:M,I=Bc.extendFlat({},M,{family:F.family,size:Bc.bigFont(F.size)});Bc.coerceFont(o,"title.font",I),o("title.side",c?"top":"right")}});var gd=P((VCe,uD)=>{"use strict";var sD=ba(),N4=Ur(),Jfe=A4(),$fe=R4(),fD=p0().isValid,Qfe=Bt().traceIs;function P4(e,r){var t=r.slice(0,r.length-1);return r?N4.nestedProperty(e,t).get()||{}:e}uD.exports=function e(r,t,a,n,i){var o=i.prefix,l=i.cLetter,s="_module"in t,f=P4(r,o),u=P4(t,o),c=P4(t._template||{},o)||{},v=function(){return delete r.coloraxis,delete t.coloraxis,e(r,t,a,n,i)};if(s){var d=a._colorAxes||{},p=n(o+"coloraxis");if(p){var y=Qfe(t,"contour")&&N4.nestedProperty(t,"contours.coloring").get()||"heatmap",m=d[p];m?(m[2].push(v),m[0]!==y&&(m[0]=!1,N4.warn(["Ignoring coloraxis:",p,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[p]=[y,t,[v]];return}}var b=f[l+"min"],A=f[l+"max"],_=sD(b)&&sD(A)&&b{"use strict";var cD=Ur(),Kfe=Xa(),vD=w4(),eue=gd();hD.exports=function(r,t){function a(c,v){return cD.coerce(r,t,vD,c,v)}a("colorscale.sequential"),a("colorscale.sequentialminus"),a("colorscale.diverging");var n=t._colorAxes,i,o;function l(c,v){return cD.coerce(i,o,vD.coloraxis,c,v)}for(var s in n){var f=n[s];if(f[0])i=r[s]||{},o=Kfe.newContainer(t,s,"coloraxis"),o._name=s,eue(i,o,t,l,{prefix:"",cLetter:"c"});else{for(var u=0;u{"use strict";var rue=Ur(),tue=Rs().hasColorscale,aue=Rs().extractOpts;pD.exports=function(r,t){function a(u,c){var v=u["_"+c];v!==void 0&&(u[c]=v)}function n(u,c){var v=c.container?rue.nestedProperty(u,c.container).get():u;if(v)if(v.coloraxis)v._colorAx=t[v.coloraxis];else{var d=aue(v),p=d.auto;(p||d.min===void 0)&&a(v,c.min),(p||d.max===void 0)&&a(v,c.max),d.autocolorscale&&a(v,"colorscale")}}for(var i=0;i{"use strict";var yD=ba(),I4=Ur(),nue=Rs().extractOpts;gD.exports=function(r,t,a){var n=r._fullLayout,i=a.vals,o=a.containerStr,l=o?I4.nestedProperty(t,o).get():t,s=nue(l),f=s.auto!==!1,u=s.min,c=s.max,v=s.mid,d=function(){return I4.aggNums(Math.min,null,i)},p=function(){return I4.aggNums(Math.max,null,i)};if(u===void 0?u=d():f&&(l._colorAx&&yD(u)?u=Math.min(u,d()):u=d()),c===void 0?c=p():f&&(l._colorAx&&yD(c)?c=Math.max(c,p()):c=p()),f&&v!==void 0&&(c-v>v-u?u=v-(c-v):c-v=0?y=n.colorscale.sequential:y=n.colorscale.sequentialminus,s._sync("colorscale",y)}}});var xd=P((XCe,bD)=>{"use strict";var E2=p0(),bd=Rs();bD.exports={moduleType:"component",name:"colorscale",attributes:k0(),layoutAttributes:w4(),supplyLayoutDefaults:dD(),handleDefaults:gd(),crossTraceDefaults:mD(),calc:O4(),scales:E2.scales,defaultScale:E2.defaultScale,getScale:E2.get,isValidScale:E2.isValid,hasColorscale:bd.hasColorscale,extractOpts:bd.extractOpts,extractScale:bd.extractScale,flipScale:bd.flipScale,makeColorScaleFunc:bd.makeColorScaleFunc,makeColorScaleFuncFromTrace:bd.makeColorScaleFuncFromTrace}});var Ri=P((ZCe,_D)=>{"use strict";var xD=Ur(),iue=Yo().isTypedArraySpec;_D.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var r=e.marker;return xD.isPlainObject(r)&&(xD.isArrayOrTypedArray(r.size)||iue(r.size))}}});var B4=P((JCe,wD)=>{"use strict";var oue=ba();wD.exports=function(r,t){t||(t=2);var a=r.marker,n=a.sizeref||1,i=a.sizemin||0,o=a.sizemode==="area"?function(l){return Math.sqrt(l/n)}:function(l){return l/n};return function(l){var s=o(l/t);return oue(s)&&s>0?Math.max(s,i):0}}});var Cu=P(ro=>{"use strict";var k2=Ur();ro.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};ro.isTraceInSubplots=function(e,r){if(e.type==="splom"){for(var t=e.xaxes||[],a=e.yaxes||[],n=0;n=0&&t.index{MD.exports=cue;var z4={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},uue=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function cue(e){var r=[];return e.replace(uue,function(t,a,n){var i=a.toLowerCase();for(n=hue(n),i=="m"&&n.length>2&&(r.push([a].concat(n.splice(0,2))),i="l",a=a=="m"?"l":"L");;){if(n.length==z4[i])return n.unshift(a),r.push(n);if(n.length{"use strict";var due=om(),lt=function(e,r){return r?Math.round(e*(r=Math.pow(10,r)))/r:Math.round(e)},Xt="M0,0Z",SD=Math.sqrt(2),zc=Math.sqrt(3),G4=Math.PI,U4=Math.cos,H4=Math.sin;DD.exports={circle:{n:0,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n="M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z";return t?Jt(r,t,n):n}},square:{n:1,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")}},diamond:{n:2,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.3,2);return Jt(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"Z")}},cross:{n:3,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.4,2),n=lt(e*1.2,2);return Jt(r,t,"M"+n+","+a+"H"+a+"V"+n+"H-"+a+"V"+a+"H-"+n+"V-"+a+"H-"+a+"V-"+n+"H"+a+"V-"+a+"H"+n+"Z")}},x:{n:4,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.8/SD,2),n="l"+a+","+a,i="l"+a+",-"+a,o="l-"+a+",-"+a,l="l-"+a+","+a;return Jt(r,t,"M0,"+a+n+i+o+i+o+l+o+l+n+l+n+"Z")}},"triangle-up":{n:5,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2/zc,2),n=lt(e/2,2),i=lt(e,2);return Jt(r,t,"M-"+a+","+n+"H"+a+"L0,-"+i+"Z")}},"triangle-down":{n:6,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2/zc,2),n=lt(e/2,2),i=lt(e,2);return Jt(r,t,"M-"+a+",-"+n+"H"+a+"L0,"+i+"Z")}},"triangle-left":{n:7,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2/zc,2),n=lt(e/2,2),i=lt(e,2);return Jt(r,t,"M"+n+",-"+a+"V"+a+"L-"+i+",0Z")}},"triangle-right":{n:8,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2/zc,2),n=lt(e/2,2),i=lt(e,2);return Jt(r,t,"M-"+n+",-"+a+"V"+a+"L"+i+",0Z")}},"triangle-ne":{n:9,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.6,2),n=lt(e*1.2,2);return Jt(r,t,"M-"+n+",-"+a+"H"+a+"V"+n+"Z")}},"triangle-se":{n:10,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.6,2),n=lt(e*1.2,2);return Jt(r,t,"M"+a+",-"+n+"V"+a+"H-"+n+"Z")}},"triangle-sw":{n:11,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.6,2),n=lt(e*1.2,2);return Jt(r,t,"M"+n+","+a+"H-"+a+"V-"+n+"Z")}},"triangle-nw":{n:12,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.6,2),n=lt(e*1.2,2);return Jt(r,t,"M-"+a+","+n+"V-"+a+"H"+n+"Z")}},pentagon:{n:13,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.951,2),n=lt(e*.588,2),i=lt(-e,2),o=lt(e*-.309,2),l=lt(e*.809,2);return Jt(r,t,"M"+a+","+o+"L"+n+","+l+"H-"+n+"L-"+a+","+o+"L0,"+i+"Z")}},hexagon:{n:14,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n=lt(e/2,2),i=lt(e*zc/2,2);return Jt(r,t,"M"+i+",-"+n+"V"+n+"L0,"+a+"L-"+i+","+n+"V-"+n+"L0,-"+a+"Z")}},hexagon2:{n:15,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n=lt(e/2,2),i=lt(e*zc/2,2);return Jt(r,t,"M-"+n+","+i+"H"+n+"L"+a+",0L"+n+",-"+i+"H-"+n+"L-"+a+",0Z")}},octagon:{n:16,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.924,2),n=lt(e*.383,2);return Jt(r,t,"M-"+n+",-"+a+"H"+n+"L"+a+",-"+n+"V"+n+"L"+n+","+a+"H-"+n+"L-"+a+","+n+"V-"+n+"Z")}},star:{n:17,f:function(e,r,t){if(Zt(r))return Xt;var a=e*1.4,n=lt(a*.225,2),i=lt(a*.951,2),o=lt(a*.363,2),l=lt(a*.588,2),s=lt(-a,2),f=lt(a*-.309,2),u=lt(a*.118,2),c=lt(a*.809,2),v=lt(a*.382,2);return Jt(r,t,"M"+n+","+f+"H"+i+"L"+o+","+u+"L"+l+","+c+"L0,"+v+"L-"+l+","+c+"L-"+o+","+u+"L-"+i+","+f+"H-"+n+"L0,"+s+"Z")}},hexagram:{n:18,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.66,2),n=lt(e*.38,2),i=lt(e*.76,2);return Jt(r,t,"M-"+i+",0l-"+n+",-"+a+"h"+i+"l"+n+",-"+a+"l"+n+","+a+"h"+i+"l-"+n+","+a+"l"+n+","+a+"h-"+i+"l-"+n+","+a+"l-"+n+",-"+a+"h-"+i+"Z")}},"star-triangle-up":{n:19,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*zc*.8,2),n=lt(e*.8,2),i=lt(e*1.6,2),o=lt(e*4,2),l="A "+o+","+o+" 0 0 1 ";return Jt(r,t,"M-"+a+","+n+l+a+","+n+l+"0,-"+i+l+"-"+a+","+n+"Z")}},"star-triangle-down":{n:20,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*zc*.8,2),n=lt(e*.8,2),i=lt(e*1.6,2),o=lt(e*4,2),l="A "+o+","+o+" 0 0 1 ";return Jt(r,t,"M"+a+",-"+n+l+"-"+a+",-"+n+l+"0,"+i+l+a+",-"+n+"Z")}},"star-square":{n:21,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.1,2),n=lt(e*2,2),i="A "+n+","+n+" 0 0 1 ";return Jt(r,t,"M-"+a+",-"+a+i+"-"+a+","+a+i+a+","+a+i+a+",-"+a+i+"-"+a+",-"+a+"Z")}},"star-diamond":{n:22,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.4,2),n=lt(e*1.9,2),i="A "+n+","+n+" 0 0 1 ";return Jt(r,t,"M-"+a+",0"+i+"0,"+a+i+a+",0"+i+"0,-"+a+i+"-"+a+",0Z")}},"diamond-tall":{n:23,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.7,2),n=lt(e*1.4,2);return Jt(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},"diamond-wide":{n:24,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.4,2),n=lt(e*.7,2);return Jt(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},hourglass:{n:25,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M"+a+","+a+"H-"+a+"L"+a+",-"+a+"H-"+a+"Z")},noDot:!0},bowtie:{n:26,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M"+a+","+a+"V-"+a+"L-"+a+","+a+"V-"+a+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n=lt(e/SD,2);return Jt(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.3,2);return Jt(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM0,-"+a+"V"+a+"M-"+a+",0H"+a)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.3,2),n=lt(e*.65,2);return Jt(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM-"+n+",-"+n+"L"+n+","+n+"M-"+n+","+n+"L"+n+",-"+n)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.4,2);return Jt(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.2,2),n=lt(e*.85,2);return Jt(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e/2,2),n=lt(e,2);return Jt(r,t,"M"+a+","+n+"V-"+n+"M"+(a-n)+",-"+n+"V"+n+"M"+n+","+a+"H-"+n+"M-"+n+","+(a-n)+"H"+n)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.2,2),n=lt(e*1.6,2),i=lt(e*.8,2);return Jt(r,t,"M-"+a+","+i+"L0,0M"+a+","+i+"L0,0M0,-"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.2,2),n=lt(e*1.6,2),i=lt(e*.8,2);return Jt(r,t,"M-"+a+",-"+i+"L0,0M"+a+",-"+i+"L0,0M0,"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.2,2),n=lt(e*1.6,2),i=lt(e*.8,2);return Jt(r,t,"M"+i+","+a+"L0,0M"+i+",-"+a+"L0,0M-"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.2,2),n=lt(e*1.6,2),i=lt(e*.8,2);return Jt(r,t,"M-"+i+","+a+"L0,0M-"+i+",-"+a+"L0,0M"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.4,2);return Jt(r,t,"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.4,2);return Jt(r,t,"M0,"+a+"V-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M"+a+","+a+"L-"+a+",-"+a)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n=lt(e*2,2);return Jt(r,t,"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n=lt(e*2,2);return Jt(r,t,"M0,0L-"+a+",-"+n+"H"+a+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2,2),n=lt(e,2);return Jt(r,t,"M0,0L"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2,2),n=lt(e,2);return Jt(r,t,"M0,0L-"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n=lt(e*2,2);return Jt(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n=lt(e*2,2);return Jt(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+",-"+n+"H"+a+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2,2),n=lt(e,2);return Jt(r,t,"M0,-"+n+"V"+n+"M0,0L"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2,2),n=lt(e,2);return Jt(r,t,"M0,-"+n+"V"+n+"M0,0L-"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,r,t){if(Zt(r))return Xt;var a=G4/2.5,n=2*e*U4(a),i=2*e*H4(a);return Jt(r,t,"M0,0L"+-n+","+i+"L"+n+","+i+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,r,t){if(Zt(r))return Xt;var a=G4/4,n=2*e*U4(a),i=2*e*H4(a);return Jt(r,t,"M0,0L"+-n+","+i+"A "+2*e+","+2*e+" 0 0 1 "+n+","+i+"Z")},backoff:.4,noDot:!0}};function Zt(e){return e===null}var ED,kD,CD,LD;function Jt(e,r,t){if((!e||e%360===0)&&!r)return t;if(CD===e&&LD===r&&ED===t)return kD;CD=e,LD=r,ED=t;function a(m,b){var A=U4(m),_=H4(m),x=b[0],T=b[1]+(r||0);return[x*A-T*_,x*_+T*A]}for(var n=e/180*G4,i=0,o=0,l=due(t),s="",f=0;f{"use strict";var _i=da(),Ga=Ur(),pue=Ga.numberFormat,F0=ba(),Z4=ks(),L2=Bt(),Ui=ha(),mue=xd(),sm=Ga.strTranslate,D2=po(),yue=Oc(),gue=ho(),bue=gue.LINE_SPACING,UD=$h().DESELECTDIM,xue=Ri(),_ue=B4(),wue=Cu().appendArrayPointValue,gt=QD.exports={};gt.font=function(e,r){var t=r.variant,a=r.style,n=r.weight,i=r.color,o=r.size,l=r.family,s=r.shadow,f=r.lineposition,u=r.textcase;l&&e.style("font-family",l),o+1&&e.style("font-size",o+"px"),i&&e.call(Ui.fill,i),n&&e.style("font-weight",n),a&&e.style("font-style",a),t&&e.style("font-variant",t),u&&e.style("text-transform",V4(Tue(u))),s&&e.style("text-shadow",s==="auto"?D2.makeTextShadow(Ui.contrast(i)):V4(s)),f&&e.style("text-decoration-line",V4(Mue(f)))};function V4(e){return e==="none"?void 0:e}var Aue={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function Tue(e){return Aue[e]}function Mue(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}gt.setPosition=function(e,r,t){e.attr("x",r).attr("y",t)};gt.setSize=function(e,r,t){e.attr("width",r).attr("height",t)};gt.setRect=function(e,r,t,a,n){e.call(gt.setPosition,r,t).call(gt.setSize,a,n)};gt.translatePoint=function(e,r,t,a){var n=t.c2p(e.x),i=a.c2p(e.y);if(F0(n)&&F0(i)&&r.node())r.node().nodeName==="text"?r.attr("x",n).attr("y",i):r.attr("transform",sm(n,i));else return!1;return!0};gt.translatePoints=function(e,r,t){e.each(function(a){var n=_i.select(this);gt.translatePoint(a,n,r,t)})};gt.hideOutsideRangePoint=function(e,r,t,a,n,i){r.attr("display",t.isPtWithinRange(e,n)&&a.isPtWithinRange(e,i)?null:"none")};gt.hideOutsideRangePoints=function(e,r){if(r._hasClipOnAxisFalse){var t=r.xaxis,a=r.yaxis;e.each(function(n){var i=n[0].trace,o=i.xcalendar,l=i.ycalendar,s=L2.traceIs(i,"bar-like")?".bartext":".point,.textpoint";e.selectAll(s).each(function(f){gt.hideOutsideRangePoint(f,_i.select(this),t,a,o,l)})})}};gt.crispRound=function(e,r,t){return!r||!F0(r)?t||0:e._context.staticPlot?r:r<1?1:Math.round(r)};gt.singleLineStyle=function(e,r,t,a,n){r.style("fill","none");var i=(((e||[])[0]||{}).trace||{}).line||{},o=t||i.width||0,l=n||i.dash||"";Ui.stroke(r,a||i.color),gt.dashLine(r,l,o)};gt.lineGroupStyle=function(e,r,t,a){e.style("fill","none").each(function(n){var i=(((n||[])[0]||{}).trace||{}).line||{},o=r||i.width||0,l=a||i.dash||"";_i.select(this).call(Ui.stroke,t||i.color).call(gt.dashLine,l,o)})};gt.dashLine=function(e,r,t){t=+t||0,r=gt.dashStyle(r,t),e.style({"stroke-dasharray":r,"stroke-width":t+"px"})};gt.dashStyle=function(e,r){r=+r||1;var t=Math.max(r,3);return e==="solid"?e="":e==="dot"?e=t+"px,"+t+"px":e==="dash"?e=3*t+"px,"+3*t+"px":e==="longdash"?e=5*t+"px,"+5*t+"px":e==="dashdot"?e=3*t+"px,"+t+"px,"+t+"px,"+t+"px":e==="longdashdot"&&(e=5*t+"px,"+2*t+"px,"+t+"px,"+2*t+"px"),e};function HD(e,r,t,a){var n=r.fillpattern,i=r.fillgradient,o=gt.getPatternAttr,l=n&&(o(n.shape,0,"")||o(n.path,0,""));if(l){var s=o(n.bgcolor,0,null),f=o(n.fgcolor,0,null),u=n.fgopacity,c=o(n.size,0,8),v=o(n.solidity,0,.3),d=r.uid;gt.pattern(e,"point",t,d,l,c,v,void 0,n.fillmode,s,f,u)}else if(i&&i.type!=="none"){var p=i.type,y="scatterfill-"+r.uid;if(a&&(y="legendfill-"+r.uid),!a&&(i.start!==void 0||i.stop!==void 0)){var m,b;p==="horizontal"?(m={x:i.start,y:0},b={x:i.stop,y:0}):p==="vertical"&&(m={x:0,y:i.start},b={x:0,y:i.stop}),m.x=r._xA.c2p(m.x===void 0?r._extremes.x.min[0].val:m.x,!0),m.y=r._yA.c2p(m.y===void 0?r._extremes.y.min[0].val:m.y,!0),b.x=r._xA.c2p(b.x===void 0?r._extremes.x.max[0].val:b.x,!0),b.y=r._yA.c2p(b.y===void 0?r._extremes.y.max[0].val:b.y,!0),e.call(WD,t,y,"linear",i.colorscale,"fill",m,b,!0,!1)}else p==="horizontal"&&(p=p+"reversed"),e.call(gt.gradient,t,y,p,i.colorscale,"fill")}else r.fillcolor&&e.call(Ui.fill,r.fillcolor)}gt.singleFillStyle=function(e,r){var t=_i.select(e.node()),a=t.data(),n=((a[0]||[])[0]||{}).trace||{};HD(e,n,r,!1)};gt.fillGroupStyle=function(e,r,t){e.style("stroke-width",0).each(function(a){var n=_i.select(this);a[0].trace&&HD(n,a[0].trace,r,t)})};var qD=FD();gt.symbolNames=[];gt.symbolFuncs=[];gt.symbolBackOffs=[];gt.symbolNeedLines={};gt.symbolNoDot={};gt.symbolNoFill={};gt.symbolList=[];Object.keys(qD).forEach(function(e){var r=qD[e],t=r.n;gt.symbolList.push(t,String(t),e,t+100,String(t+100),e+"-open"),gt.symbolNames[t]=e,gt.symbolFuncs[t]=r.f,gt.symbolBackOffs[t]=r.backoff||0,r.needLine&&(gt.symbolNeedLines[t]=!0),r.noDot?gt.symbolNoDot[t]=!0:gt.symbolList.push(t+200,String(t+200),e+"-dot",t+300,String(t+300),e+"-open-dot"),r.noFill&&(gt.symbolNoFill[t]=!0)});var Sue=gt.symbolNames.length,Eue="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";gt.symbolNumber=function(e){if(F0(e))e=+e;else if(typeof e=="string"){var r=0;e.indexOf("-open")>0&&(r=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(r+=200,e=e.replace("-dot","")),e=gt.symbolNames.indexOf(e),e>=0&&(e+=r)}return e%100>=Sue||e>=400?0:Math.floor(Math.max(e,0))};function VD(e,r,t,a){var n=e%100;return gt.symbolFuncs[n](r,t,a)+(e>=200?Eue:"")}var RD=pue("~f"),YD={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};gt.gradient=function(e,r,t,a,n,i){var o=YD[a];return WD(e,r,t,o.type,n,i,o.start,o.stop,!1,o.reversed)};function WD(e,r,t,a,n,i,o,l,s,f){var u=n.length,c;a==="linear"?c={node:"linearGradient",attrs:{x1:o.x,y1:o.y,x2:l.x,y2:l.y,gradientUnits:s?"userSpaceOnUse":"objectBoundingBox"},reversed:f}:a==="radial"&&(c={node:"radialGradient",reversed:f});for(var v=new Array(u),d=0;d=0&&e.i===void 0&&(e.i=i.i),r.style("opacity",a.selectedOpacityFn?a.selectedOpacityFn(e):e.mo===void 0?o.opacity:e.mo),a.ms2mrc){var s;e.ms==="various"||o.size==="various"?s=3:s=a.ms2mrc(e.ms),e.mrc=s,a.selectedSizeFn&&(s=e.mrc=a.selectedSizeFn(e));var f=gt.symbolNumber(e.mx||o.symbol)||0;e.om=f%200>=100;var u=Q4(e,t),c=$4(e,t);r.attr("d",VD(f,s,u,c))}var v=!1,d,p,y;if(e.so)y=l.outlierwidth,p=l.outliercolor,d=o.outliercolor;else{var m=(l||{}).width;y=(e.mlw+1||m+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?p=e.mlcc=a.lineScale(e.mlc):Ga.isArrayOrTypedArray(l.color)?p=Ui.defaultLine:p=l.color,Ga.isArrayOrTypedArray(o.color)&&(d=Ui.defaultLine,v=!0),"mc"in e?d=e.mcc=a.markerScale(e.mc):d=o.color||o.colors||"rgba(0,0,0,0)",a.selectedColorFn&&(d=a.selectedColorFn(e))}if(e.om)r.call(Ui.stroke,d).style({"stroke-width":(y||1)+"px",fill:"none"});else{r.style("stroke-width",(e.isBlank?0:y)+"px");var b=o.gradient,A=e.mgt;A?v=!0:A=b&&b.type,Ga.isArrayOrTypedArray(A)&&(A=A[0],YD[A]||(A=0));var _=o.pattern,x=gt.getPatternAttr,T=_&&(x(_.shape,e.i,"")||x(_.path,e.i,""));if(A&&A!=="none"){var E=e.mgc;E?v=!0:E=b.color;var M=t.uid;v&&(M+="-"+e.i),gt.gradient(r,n,M,A,[[0,E],[1,d]],"fill")}else if(T){var k=!1,F=_.fgcolor;!F&&i&&i.color&&(F=i.color,k=!0);var I=x(F,e.i,i&&i.color||null),O=x(_.bgcolor,e.i,null),q=_.fgopacity,H=x(_.size,e.i,8),X=x(_.solidity,e.i,.3);k=k||e.mcc||Ga.isArrayOrTypedArray(_.shape)||Ga.isArrayOrTypedArray(_.path)||Ga.isArrayOrTypedArray(_.bgcolor)||Ga.isArrayOrTypedArray(_.fgcolor)||Ga.isArrayOrTypedArray(_.size)||Ga.isArrayOrTypedArray(_.solidity);var oe=t.uid;k&&(oe+="-"+e.i),gt.pattern(r,"point",n,oe,T,H,X,e.mcc,_.fillmode,O,I,q)}else Ga.isArrayOrTypedArray(d)?Ui.fill(r,d[e.i]):Ui.fill(r,d);y&&Ui.stroke(r,p)}};gt.makePointStyleFns=function(e){var r={},t=e.marker;return r.markerScale=gt.tryColorscale(t,""),r.lineScale=gt.tryColorscale(t,"line"),L2.traceIs(e,"symbols")&&(r.ms2mrc=xue.isBubble(e)?_ue(e):function(){return(t.size||6)/2}),e.selectedpoints&&Ga.extendFlat(r,gt.makeSelectedPointStyleFns(e)),r};gt.makeSelectedPointStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.marker||{},i=t.marker||{},o=a.marker||{},l=n.opacity,s=i.opacity,f=o.opacity,u=s!==void 0,c=f!==void 0;(Ga.isArrayOrTypedArray(l)||u||c)&&(r.selectedOpacityFn=function(x){var T=x.mo===void 0?n.opacity:x.mo;return x.selected?u?s:T:c?f:UD*T});var v=n.color,d=i.color,p=o.color;(d||p)&&(r.selectedColorFn=function(x){var T=x.mcc||v;return x.selected?d||T:p||T});var y=n.size,m=i.size,b=o.size,A=m!==void 0,_=b!==void 0;return L2.traceIs(e,"symbols")&&(A||_)&&(r.selectedSizeFn=function(x){var T=x.mrc||y/2;return x.selected?A?m/2:T:_?b/2:T}),r};gt.makeSelectedTextStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.textfont||{},i=t.textfont||{},o=a.textfont||{},l=n.color,s=i.color,f=o.color;return r.selectedTextColorFn=function(u){var c=u.tc||l;return u.selected?s||c:f||(s?c:Ui.addOpacity(c,UD))},r};gt.selectedPointStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=gt.makeSelectedPointStyleFns(r),a=r.marker||{},n=[];t.selectedOpacityFn&&n.push(function(i,o){i.style("opacity",t.selectedOpacityFn(o))}),t.selectedColorFn&&n.push(function(i,o){Ui.fill(i,t.selectedColorFn(o))}),t.selectedSizeFn&&n.push(function(i,o){var l=o.mx||a.symbol||0,s=t.selectedSizeFn(o);i.attr("d",VD(gt.symbolNumber(l),s,Q4(o,r),$4(o,r))),o.mrc2=s}),n.length&&e.each(function(i){for(var o=_i.select(this),l=0;l0?t:0}gt.textPointStyle=function(e,r,t){if(e.size()){var a;if(r.selectedpoints){var n=gt.makeSelectedTextStyleFns(r);a=n.selectedTextColorFn}var i=r.texttemplate,o=t._fullLayout;e.each(function(l){var s=_i.select(this),f=i?Ga.extractOption(l,r,"txt","texttemplate"):Ga.extractOption(l,r,"tx","text");if(!f&&f!==0){s.remove();return}if(i){var u=r._module.formatLabels,c=u?u(l,r,o):{},v={};wue(v,r,l.i),f=Ga.texttemplateString({data:[v,l,r._meta],fallback:r.texttemplatefallback,labels:c,locale:o._d3locale,template:f})}var d=l.tp||r.textposition,p=XD(l,r),y=a?a(l):l.tc||r.textfont.color;s.call(gt.font,{family:l.tf||r.textfont.family,weight:l.tw||r.textfont.weight,style:l.ty||r.textfont.style,variant:l.tv||r.textfont.variant,textcase:l.tC||r.textfont.textcase,lineposition:l.tE||r.textfont.lineposition,shadow:l.tS||r.textfont.shadow,size:p,color:y}).text(f).call(D2.convertToTspans,t).call(jD,d,p,l.mrc)})}};gt.selectedTextStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=gt.makeSelectedTextStyleFns(r);e.each(function(a){var n=_i.select(this),i=t.selectedTextColorFn(a),o=a.tp||r.textposition,l=XD(a,r);Ui.fill(n,i);var s=L2.traceIs(r,"bar-like");jD(n,o,l,a.mrc2||a.mrc,s)})}};var PD=.5;gt.smoothopen=function(e,r){if(e.length<3)return"M"+e.join("L");var t="M"+e[0],a=[],n;for(n=1;n=s||x>=u&&x<=s)&&(T<=c&&T>=f||T>=c&&T<=f)&&(e=[x,T])}return e}gt.applyBackoff=$D;gt.makeTester=function(){var e=Ga.ensureSingleById(_i.select("body"),"svg","js-plotly-tester",function(t){t.attr(yue.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),r=Ga.ensureSingle(e,"path","js-reference-point",function(t){t.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});gt.tester=e,gt.testref=r};gt.savedBBoxes={};var W4=0,Lue=1e4;gt.bBox=function(e,r,t){t||(t=ND(e));var a;if(t){if(a=gt.savedBBoxes[t],a)return Ga.extendFlat({},a)}else if(e.childNodes.length===1){var n=e.childNodes[0];if(t=ND(n),t){var i=+n.getAttribute("x")||0,o=+n.getAttribute("y")||0,l=n.getAttribute("transform");if(!l){var s=gt.bBox(n,!1,t);return i&&(s.left+=i,s.right+=i),o&&(s.top+=o,s.bottom+=o),s}if(t+="~"+i+"~"+o+"~"+l,a=gt.savedBBoxes[t],a)return Ga.extendFlat({},a)}}var f,u;r?f=e:(u=gt.tester.node(),f=e.cloneNode(!0),u.appendChild(f)),_i.select(f).attr("transform",null).call(D2.positionText,0,0);var c=f.getBoundingClientRect(),v=gt.testref.node().getBoundingClientRect();r||u.removeChild(f);var d={height:c.height,width:c.width,left:c.left-v.left,top:c.top-v.top,right:c.right-v.left,bottom:c.bottom-v.top};return W4>=Lue&&(gt.savedBBoxes={},W4=0),t&&(gt.savedBBoxes[t]=d),W4++,Ga.extendFlat({},d)};function ND(e){var r=e.getAttribute("data-unformatted");if(r!==null)return r+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}gt.setClipUrl=function(e,r,t){e.attr("clip-path",J4(r,t))};function J4(e,r){if(!e)return null;var t=r._context,a=t._exportedPlot?"":t._baseUrl||"";return a?"url('"+a+"#"+e+"')":"url(#"+e+")"}gt.getTranslate=function(e){var r=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,o,l){return[o,l].join(" ")}).split(" ");return{x:+n[0]||0,y:+n[1]||0}};gt.setTranslate=function(e,r,t){var a=/(\btranslate\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",o=e[n]("transform")||"";return r=r||0,t=t||0,o=o.replace(a,"").trim(),o+=sm(r,t),o=o.trim(),e[i]("transform",o),o};gt.getScale=function(e){var r=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,o,l){return[o,l].join(" ")}).split(" ");return{x:+n[0]||1,y:+n[1]||1}};gt.setScale=function(e,r,t){var a=/(\bscale\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",o=e[n]("transform")||"";return r=r||1,t=t||1,o=o.replace(a,"").trim(),o+="scale("+r+","+t+")",o=o.trim(),e[i]("transform",o),o};var Due=/\s*sc.*/;gt.setPointGroupScale=function(e,r,t){if(r=r||1,t=t||1,!!e){var a=r===1&&t===1?"":"scale("+r+","+t+")";e.each(function(){var n=(this.getAttribute("transform")||"").replace(Due,"");n+=a,n=n.trim(),this.setAttribute("transform",n)})}};var Fue=/translate\([^)]*\)\s*$/;gt.setTextPointsScale=function(e,r,t){e&&e.each(function(){var a,n=_i.select(this),i=n.select("text");if(i.node()){var o=parseFloat(i.attr("x")||0),l=parseFloat(i.attr("y")||0),s=(n.attr("transform")||"").match(Fue);r===1&&t===1?a=[]:a=[sm(o,l),"scale("+r+","+t+")",sm(-o,-l)],s&&a.push(s),n.attr("transform",a.join(""))}})};function $4(e,r){var t;return e&&(t=e.mf),t===void 0&&(t=r.marker&&r.marker.standoff||0),!r._geo&&!r._xA?-t:t}gt.getMarkerStandoff=$4;var lm=Math.atan2,C0=Math.cos,wd=Math.sin;function ID(e,r){var t=r[0],a=r[1];return[t*C0(e)-a*wd(e),t*wd(e)+a*C0(e)]}var OD,BD,zD,GD,j4,X4;function Q4(e,r){var t=e.ma;t===void 0&&(t=r.marker.angle,(!t||Ga.isArrayOrTypedArray(t))&&(t=0));var a,n,i=r.marker.angleref;if(i==="previous"||i==="north"){if(r._geo){var o=r._geo.project(e.lonlat);a=o[0],n=o[1]}else{var l=r._xA,s=r._yA;if(l&&s)a=l.c2p(e.x),n=s.c2p(e.y);else return 90}if(r._geo){var f=e.lonlat[0],u=e.lonlat[1],c=r._geo.project([f,u+1e-5]),v=r._geo.project([f+1e-5,u]),d=lm(v[1]-n,v[0]-a),p=lm(c[1]-n,c[0]-a),y;if(i==="north")y=t/180*Math.PI;else if(i==="previous"){var m=f/180*Math.PI,b=u/180*Math.PI,A=OD/180*Math.PI,_=BD/180*Math.PI,x=A-m,T=C0(_)*wd(x),E=wd(_)*C0(b)-C0(_)*wd(b)*C0(x);y=-lm(T,E)-Math.PI,OD=f,BD=u}var M=ID(d,[C0(y),0]),k=ID(p,[wd(y),0]);t=lm(M[1]+k[1],M[0]+k[0])/Math.PI*180,i==="previous"&&!(X4===r.uid&&e.i===j4+1)&&(t=null)}if(i==="previous"&&!r._geo)if(X4===r.uid&&e.i===j4+1&&F0(a)&&F0(n)){var F=a-zD,I=n-GD,O=r.line&&r.line.shape||"",q=O.slice(O.length-1);q==="h"&&(I=0),q==="v"&&(F=0),t+=lm(I,F)/Math.PI*180+90}else t=null}return zD=a,GD=n,j4=e.i,X4=r.uid,t}gt.getMarkerAngle=Q4});var fm=P((rLe,tF)=>{"use strict";var Ad=da(),que=ba(),Rue=xi(),K4=Bt(),q0=Ur(),KD=q0.strTranslate,F2=Ha(),q2=ha(),Td=po(),eF=$h(),Pue=ho().OPPOSITE_SIDE,rF=/ [XY][0-9]* /,ew=1.6,rw=1.6;function Nue(e,r,t){var a=e._fullLayout,n=t.propContainer,i=t.propName,o=t.placeholder,l=t.traceIndex,s=t.avoid||{},f=t.attributes,u=t.transform,c=t.containerGroup,v=1,d=n.title,p=(d&&d.text?d.text:"").trim(),y=!1,m=d&&d.font?d.font:{},b=m.family,A=m.size,_=m.color,x=m.weight,T=m.style,E=m.variant,M=m.textcase,k=m.lineposition,F=m.shadow,I=t.subtitlePropName,O=!!I,q=t.subtitlePlaceholder,H=(n.title||{}).subtitle||{text:"",font:{}},X=(H.text||"").trim(),oe=!1,te=1,Q=H.font,Z=Q.family,J=Q.size,le=Q.color,ce=Q.weight,De=Q.style,Be=Q.variant,Ee=Q.textcase,Xe=Q.lineposition,Ae=Q.shadow,rr;i==="title.text"?rr="titleText":i.indexOf("axis")!==-1?rr="axisTitleText":i.indexOf("colorbar")!==-1&&(rr="colorbarTitleText");var ze=e._context.edits[rr];function We(Yr,Kr){return Yr===void 0||Kr===void 0?!1:Yr.replace(rF," % ")===Kr.replace(rF," % ")}p===""?v=0:We(p,o)&&(ze||(p=""),v=.2,y=!0),O&&(X===""?te=0:We(X,q)&&(ze||(X=""),te=.2,oe=!0)),t._meta?p=q0.templateString(p,t._meta):a._meta&&(p=q0.templateString(p,a._meta));var $e=p||X||ze,Ue;c||(c=q0.ensureSingle(a._infolayer,"g","g-"+r),Ue=a._hColorbarMoveTitle);var ee=c.selectAll("text."+r).data($e?[0]:[]);ee.enter().append("text"),ee.text(p).attr("class",r),ee.exit().remove();var de=null,ae=r+"-subtitle",je=X||ze;if(O&&(de=c.selectAll("text."+ae).data(je?[0]:[]),de.enter().append("text"),de.text(X).attr("class",ae),de.exit().remove()),!$e)return c;function ur(Yr,Kr){q0.syncOrAsync([er,Lr],{title:Yr,subtitle:Kr})}function er(Yr){var Kr=Yr.title,wr=Yr.subtitle,Vr;!u&&Ue&&(u={}),u?(Vr="",u.rotate&&(Vr+="rotate("+[u.rotate,f.x,f.y]+")"),(u.offset||Ue)&&(Vr+=KD(0,(u.offset||0)-(Ue||0)))):Vr=null,Kr.attr("transform",Vr);function Wr(tr){if(tr){var cr=Ad.select(tr.node().parentNode).select("."+ae);if(!cr.empty()){var Hr=tr.node().getBBox();if(Hr.height){var ot=Hr.y+Hr.height+ew*J;cr.attr("y",ot)}}}}if(Kr.style("opacity",v*q2.opacity(_)).call(F2.font,{color:q2.rgb(_),size:Ad.round(A,2),family:b,weight:x,style:T,variant:E,textcase:M,shadow:F,lineposition:k}).attr(f).call(Td.convertToTspans,e,Wr),wr&&!wr.empty()){var Re=c.select("."+r+"-math-group"),lr=Kr.node().getBBox(),st=Re.node()?Re.node().getBBox():void 0,kt=st?st.y+st.height+ew*J:lr.y+lr.height+rw*J,Ar=q0.extendFlat({},f,{y:kt});wr.attr("transform",Vr),wr.style("opacity",te*q2.opacity(le)).call(F2.font,{color:q2.rgb(le),size:Ad.round(J,2),family:Z,weight:ce,style:De,variant:Be,textcase:Ee,shadow:Ae,lineposition:Xe}).attr(Ar).call(Td.convertToTspans,e)}return Rue.previousPromises(e)}function Lr(Yr){var Kr=Yr.title,wr=Ad.select(Kr.node().parentNode);if(s&&s.selection&&s.side&&p){wr.attr("transform",null);var Vr=Pue[s.side],Wr=s.side==="left"||s.side==="top"?-1:1,Re=que(s.pad)?s.pad:2,lr=F2.bBox(wr.node()),st={t:0,b:0,l:0,r:0},kt=e._fullLayout._reservedMargin;for(var Ar in kt)for(var tr in kt[Ar]){var cr=kt[Ar][tr];st[tr]=Math.max(st[tr],cr)}var Hr={left:st.l,top:st.t,right:a.width-st.r,bottom:a.height-st.b},ot=s.maxShift||Wr*(Hr[s.side]-lr[s.side]),jr=0;if(ot<0)jr=ot;else{var at=s.offsetLeft||0,xt=s.offsetTop||0;lr.left-=at,lr.right-=at,lr.top-=xt,lr.bottom-=xt,s.selection.each(function(){var nt=F2.bBox(this);q0.bBoxIntersect(lr,nt,Re)&&(jr=Math.max(jr,Wr*(nt[s.side]-lr[Vr])+Re))}),jr=Math.min(ot,jr),n._titleScoot=Math.abs(jr)}if(jr>0||ot<0){var Xr={left:[-jr,0],right:[jr,0],top:[0,-jr],bottom:[0,jr]}[s.side];wr.attr("transform",KD(Xr[0],Xr[1]))}}}ee.call(ur,de);function Pr(Yr,Kr){Yr.text(Kr).on("mouseover.opacity",function(){Ad.select(this).transition().duration(eF.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){Ad.select(this).transition().duration(eF.HIDE_PLACEHOLDER).style("opacity",0)})}if(ze&&(p?ee.on(".opacity",null):(Pr(ee,o),y=!0),ee.call(Td.makeEditable,{gd:e}).on("edit",function(Yr){l!==void 0?K4.call("_guiRestyle",e,i,Yr,l):K4.call("_guiRelayout",e,i,Yr)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ur)}).on("input",function(Yr){this.text(Yr||" ").call(Td.positionText,f.x,f.y)}),O)){if(O&&!p){var _r=ee.node().getBBox(),Ir=_r.y+_r.height+rw*J;de.attr("y",Ir)}X?de.on(".opacity",null):(Pr(de,q),oe=!0),de.call(Td.makeEditable,{gd:e}).on("edit",function(Yr){K4.call("_guiRelayout",e,"title.subtitle.text",Yr)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ur)}).on("input",function(Yr){this.text(Yr||" ").call(Td.positionText,de.attr("x"),de.attr("y"))})}return ee.classed("js-placeholder",y),de&&!de.empty()&&de.classed("js-placeholder",oe),c}tF.exports={draw:Nue,SUBTITLE_PADDING_EM:rw,SUBTITLE_PADDING_MATHJAX_EM:ew}});var G2=P((tLe,lF)=>{"use strict";var Iue=da(),Oue=jh().utcFormat,Za=Ur(),Bue=Za.numberFormat,Sf=ba(),Gc=Za.cleanNumber,zue=Za.ms2DateTime,aF=Za.dateTime2ms,Ef=Za.ensureNumber,nF=Za.isArrayOrTypedArray,Uc=Kn(),R2=Uc.FP_SAFE,Ps=Uc.BADNUM,Gue=Uc.LOG_CLIP,Uue=Uc.ONEWEEK,P2=Uc.ONEDAY,N2=Uc.ONEHOUR,iF=Uc.ONEMIN,oF=Uc.ONESEC,I2=kn(),z2=qi(),O2=z2.HOUR_PATTERN,B2=z2.WEEKDAY_PATTERN;function um(e){return Math.pow(10,e)}function tw(e){return e!=null}lF.exports=function(r,t){t=t||{};var a=r._id||"x",n=a.charAt(0);function i(x,T){if(x>0)return Math.log(x)/Math.LN10;if(x<=0&&T&&r.range&&r.range.length===2){var E=r.range[0],M=r.range[1];return .5*(E+M-2*Gue*Math.abs(E-M))}else return Ps}function o(x,T,E,M){if((M||{}).msUTC&&Sf(x))return+x;var k=aF(x,E||r.calendar);if(k===Ps)if(Sf(x)){x=+x;var F=Math.floor(Za.mod(x+.05,1)*10),I=Math.round(x-F/10);k=aF(new Date(I))+F/10}else return Ps;return k}function l(x,T,E){return zue(x,T,E||r.calendar)}function s(x){return r._categories[Math.round(x)]}function f(x){if(tw(x)){if(r._categoriesMap===void 0&&(r._categoriesMap={}),r._categoriesMap[x]!==void 0)return r._categoriesMap[x];r._categories.push(typeof x=="number"?String(x):x);var T=r._categories.length-1;return r._categoriesMap[x]=T,T}return Ps}function u(x,T){for(var E=new Array(T),M=0;Mr.range[1]&&(E=!E);for(var M=E?-1:1,k=M*x,F=0,I=0;Iq)F=I+1;else{F=k<(O+q)/2?I:I+1;break}}var H=r._B[F]||0;return isFinite(H)?p(x,r._m2,H):0},b=function(x){var T=r._rangebreaks.length;if(!T)return y(x,r._m,r._b);for(var E=0,M=0;Mr._rangebreaks[M].pmax&&(E=M+1);return y(x,r._m2,r._B[E])}}r.c2l=r.type==="log"?i:Ef,r.l2c=r.type==="log"?um:Ef,r.l2p=m,r.p2l=b,r.c2p=r.type==="log"?function(x,T){return m(i(x,T))}:m,r.p2c=r.type==="log"?function(x){return um(b(x))}:b,["linear","-"].indexOf(r.type)!==-1?(r.d2r=r.r2d=r.d2c=r.r2c=r.d2l=r.r2l=Gc,r.c2d=r.c2r=r.l2d=r.l2r=Ef,r.d2p=r.r2p=function(x){return r.l2p(Gc(x))},r.p2d=r.p2r=b,r.cleanPos=Ef):r.type==="log"?(r.d2r=r.d2l=function(x,T){return i(Gc(x),T)},r.r2d=r.r2c=function(x){return um(Gc(x))},r.d2c=r.r2l=Gc,r.c2d=r.l2r=Ef,r.c2r=i,r.l2d=um,r.d2p=function(x,T){return r.l2p(r.d2r(x,T))},r.p2d=function(x){return um(b(x))},r.r2p=function(x){return r.l2p(Gc(x))},r.p2r=b,r.cleanPos=Ef):r.type==="date"?(r.d2r=r.r2d=Za.identity,r.d2c=r.r2c=r.d2l=r.r2l=o,r.c2d=r.c2r=r.l2d=r.l2r=l,r.d2p=r.r2p=function(x,T,E){return r.l2p(o(x,0,E))},r.p2d=r.p2r=function(x,T,E){return l(b(x),T,E)},r.cleanPos=function(x){return Za.cleanDate(x,Ps,r.calendar)}):r.type==="category"?(r.d2c=r.d2l=f,r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=v,r.r2c=function(x){var T=d(x);return T!==void 0?T:r.fraction2r(.5)},r.l2r=r.c2r=Ef,r.r2l=d,r.d2p=function(x){return r.l2p(r.r2c(x))},r.p2d=function(x){return s(b(x))},r.r2p=r.d2p,r.p2r=b,r.cleanPos=function(x){return typeof x=="string"&&x!==""?x:Ef(x)}):r.type==="multicategory"&&(r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=v,r.r2c=function(x){var T=v(x);return T!==void 0?T:r.fraction2r(.5)},r.r2c_just_indices=c,r.l2r=r.c2r=Ef,r.r2l=v,r.d2p=function(x){return r.l2p(r.r2c(x))},r.p2d=function(x){return s(b(x))},r.r2p=r.d2p,r.p2r=b,r.cleanPos=function(x){return Array.isArray(x)||typeof x=="string"&&x!==""?x:Ef(x)},r.setupMultiCategory=function(x){var T=r._traceIndices,E,M,k=r._matchGroup;if(k&&r._categories.length===0){for(var F in k)if(F!==a){var I=t[I2.id2name(F)];T=T.concat(I._traceIndices)}}var O=[[0,{}],[0,{}]],q=[];for(E=0;EI[1]&&(M[F?0:1]=E),M[0]===M[1]){var O=r.l2r(T),q=r.l2r(E);if(T!==void 0){var H=O+1;E!==void 0&&(H=Math.min(H,q)),M[F?1:0]=H}if(E!==void 0){var X=q+1;T!==void 0&&(X=Math.max(X,O)),M[F?0:1]=X}}}},r.cleanRange=function(x,T){r._cleanRange(x,T),r.limitRange(x)},r._cleanRange=function(x,T){T||(T={}),x||(x="range");var E=Za.nestedProperty(r,x).get(),M,k;if(r.type==="date"?k=Za.dfltRange(r.calendar):n==="y"?k=z2.DFLTRANGEY:r._name==="realaxis"?k=[0,1]:k=T.dfltRange||z2.DFLTRANGEX,k=k.slice(),(r.rangemode==="tozero"||r.rangemode==="nonnegative")&&(k[0]=0),!E||E.length!==2){Za.nestedProperty(r,x).set(k);return}var F=E[0]===null,I=E[1]===null;for(r.type==="date"&&!r.autorange&&(E[0]=Za.cleanDate(E[0],Ps,r.calendar),E[1]=Za.cleanDate(E[1],Ps,r.calendar)),M=0;M<2;M++)if(r.type==="date"){if(!Za.isDateTime(E[M],r.calendar)){r[x]=k;break}if(r.r2l(E[0])===r.r2l(E[1])){var O=Za.constrain(r.r2l(E[0]),Za.MIN_MS+1e3,Za.MAX_MS-1e3);E[0]=r.l2r(O-1e3),E[1]=r.l2r(O+1e3);break}}else{if(!Sf(E[M]))if(!(F||I)&&Sf(E[1-M]))E[M]=E[1-M]*(M?10:.1);else{r[x]=k;break}if(E[M]<-R2?E[M]=-R2:E[M]>R2&&(E[M]=R2),E[0]===E[1]){var q=Math.max(1,Math.abs(E[0]*1e-6));E[0]-=q,E[1]+=q}}},r.setScale=function(x){var T=t._size;if(r.overlaying){var E=I2.getFromId({_fullLayout:t},r.overlaying);r.domain=E.domain}var M=x&&r._r?"_r":"range",k=r.calendar;r.cleanRange(M);var F=r.r2l(r[M][0],k),I=r.r2l(r[M][1],k),O=n==="y";if(O?(r._offset=T.t+(1-r.domain[1])*T.h,r._length=T.h*(r.domain[1]-r.domain[0]),r._m=r._length/(F-I),r._b=-r._m*I):(r._offset=T.l+r.domain[0]*T.w,r._length=T.w*(r.domain[1]-r.domain[0]),r._m=r._length/(I-F),r._b=-r._m*F),r._rangebreaks=[],r._lBreaks=0,r._m2=0,r._B=[],r.rangebreaks){var q,H;if(r._rangebreaks=r.locateBreaks(Math.min(F,I),Math.max(F,I)),r._rangebreaks.length){for(q=0;qI&&(X=!X),X&&r._rangebreaks.reverse();var oe=X?-1:1;for(r._m2=oe*r._length/(Math.abs(I-F)-r._lBreaks),r._B.push(-r._m2*(O?I:F)),q=0;qk&&(k+=7,Fk&&(k+=24,F=M&&F=M&&x=Ae.min&&(DeAe.max&&(Ae.max=Be),Ee=!1)}Ee&&I.push({min:De,max:Be})}};for(E=0;E{"use strict";var sF=ba(),aw=Ur(),Hue=Kn().BADNUM,U2=aw.isArrayOrTypedArray,Vue=aw.isDateTime,Yue=aw.cleanNumber,fF=Math.round;cF.exports=function(r,t,a){var n=r,i=a.noMultiCategory;if(U2(n)&&!n.length)return"-";if(!i&&Jue(n))return"multicategory";if(i&&Array.isArray(n[0])){for(var o=[],l=0;li*2}function uF(e){return Math.max(1,(e-1)/1e3)}function Zue(e,r){for(var t=e.length,a=uF(t),n=0,i=0,o={},l=0;ln*2}function Jue(e){return U2(e[0])&&U2(e[1])}});var Md=P((nLe,bF)=>{"use strict";var $ue=da(),pF=ba(),Hc=Ur(),H2=Kn().FP_SAFE,Que=Bt(),Kue=Ha(),mF=kn(),ece=mF.getFromId,rce=mF.isLinked;bF.exports={applyAutorangeOptions:gF,getAutoRange:iw,makePadFn:ow,doAutoRange:ace,findExtremes:nce,concatExtremes:fw};function iw(e,r){var t,a,n=[],i=e._fullLayout,o=ow(i,r,0),l=ow(i,r,1),s=fw(e,r),f=s.min,u=s.max;if(f.length===0||u.length===0)return Hc.simpleMap(r.range,r.r2l);var c=f[0].val,v=u[0].val;for(t=1;t0&&(I=_-o(E)-l(M),I>x?O/I>T&&(k=E,F=M,T=O/I):O/_>T&&(k={val:E.val,nopad:1},F={val:M.val,nopad:1},T=O/_));function q(Q,Z){return Math.max(Q,l(Z))}if(c===v){var H=c-1,X=c+1;if(b)if(c===0)n=[0,1];else{var oe=(c>0?u:f).reduce(q,0),te=c/(1-Math.min(.5,oe/_));n=c>0?[0,te]:[te,0]}else A?n=[Math.max(0,H),Math.max(1,X)]:n=[H,X]}else b?(k.val>=0&&(k={val:0,nopad:1}),F.val<=0&&(F={val:0,nopad:1})):A&&(k.val-T*o(k)<0&&(k={val:0,nopad:1}),F.val<=0&&(F={val:1,nopad:1})),T=(F.val-k.val-vF(r,E.val,M.val))/(_-o(k)-l(F)),n=[k.val-T*o(k),F.val+T*l(F)];return n=gF(n,r),r.limitRange&&r.limitRange(),p&&n.reverse(),Hc.simpleMap(n,r.l2r||Number)}function vF(e,r,t){var a=0;if(e.rangebreaks)for(var n=e.locateBreaks(r,t),i=0;i0?t.ppadplus:t.ppadminus)||t.ppad||0),E=x((e._m>0?t.ppadminus:t.ppadplus)||t.ppad||0),M=x(t.vpadplus||t.vpad),k=x(t.vpadminus||t.vpad);if(!f){if(A=1/0,_=-1/0,s)for(c=0;c0&&(A=v),v>_&&v-H2&&(A=v),v>_&&v=O;c--)I(c);return{min:a,max:n,opts:t}}function lw(e,r,t,a){yF(e,r,t,a,ice)}function sw(e,r,t,a){yF(e,r,t,a,oce)}function yF(e,r,t,a,n){for(var i=a.tozero,o=a.extrapad,l=!0,s=0;s=t&&(f.extrapad||!o)){l=!1;break}else n(r,f.val)&&f.pad<=t&&(o||!f.extrapad)&&(e.splice(s,1),s--)}if(l){var u=i&&r===0;e.push({val:r,pad:u?0:t,extrapad:u?!1:o})}}function dF(e){return pF(e)&&Math.abs(e)=r}function lce(e,r){var t=r.autorangeoptions;return t&&t.minallowed!==void 0&&V2(r,t.minallowed,t.maxallowed)?t.minallowed:t&&t.clipmin!==void 0&&V2(r,t.clipmin,t.clipmax)?Math.max(e,r.d2l(t.clipmin)):e}function sce(e,r){var t=r.autorangeoptions;return t&&t.maxallowed!==void 0&&V2(r,t.minallowed,t.maxallowed)?t.maxallowed:t&&t.clipmax!==void 0&&V2(r,t.clipmin,t.clipmax)?Math.min(e,r.d2l(t.clipmax)):e}function V2(e,r,t){return r!==void 0&&t!==void 0?(r=e.d2l(r),t=e.d2l(t),r=s&&(i=s,t=s),o<=s&&(o=s,a=s)}}return t=lce(t,r),a=sce(a,r),[t,a]}});var yn=P((iLe,UF)=>{"use strict";var Hl=da(),ri=ba(),Sd=xi(),vm=Bt(),Ot=Ur(),Ed=Ot.strTranslate,R0=po(),fce=fm(),hm=ha(),bl=Ha(),uce=Ul(),xF=S4(),Hi=Kn(),cce=Hi.ONEMAXYEAR,j2=Hi.ONEAVGYEAR,X2=Hi.ONEMINYEAR,vce=Hi.ONEMAXQUARTER,hw=Hi.ONEAVGQUARTER,Z2=Hi.ONEMINQUARTER,hce=Hi.ONEMAXMONTH,kd=Hi.ONEAVGMONTH,J2=Hi.ONEMINMONTH,xl=Hi.ONEWEEK,mo=Hi.ONEDAY,Vc=mo/2,Cf=Hi.ONEHOUR,dm=Hi.ONEMIN,$2=Hi.ONESEC,dce=Hi.ONEMILLI,pce=Hi.ONEMICROSEC,P0=Hi.MINUS_SIGN,K2=Hi.BADNUM,dw={K:"zeroline"},pw={K:"gridline",L:"path"},mw={K:"minor-gridline",L:"path"},DF={K:"tick",L:"path"},_F={K:"tick",L:"text"},wF={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},e3=ho(),cm=e3.MID_SHIFT,N0=e3.CAP_SHIFT,pm=e3.LINE_SPACING,mce=e3.OPPOSITE_SIDE,Q2=3,rt=UF.exports={};rt.setConvert=G2();var yce=nw(),Lu=kn(),gce=Lu.idSort,bce=Lu.isLinked;rt.id2name=Lu.id2name;rt.name2id=Lu.name2id;rt.cleanId=Lu.cleanId;rt.list=Lu.list;rt.listIds=Lu.listIds;rt.getFromId=Lu.getFromId;rt.getFromTrace=Lu.getFromTrace;var FF=Md();rt.getAutoRange=FF.getAutoRange;rt.findExtremes=FF.findExtremes;var xce=1e-4;function xw(e){var r=(e[1]-e[0])*xce;return[e[0]-r,e[1]+r]}rt.coerceRef=function(e,r,t,a,n,i){var o=a.charAt(a.length-1),l=t._fullLayout._subplots[o+"axis"],s=a+"ref",f={};return n||(n=l[0]||(typeof i=="string"?i:i[0])),i||(i=n),l=l.concat(l.map(function(u){return u+" domain"})),f[s]={valType:"enumerated",values:l.concat(i?typeof i=="string"?[i]:i:[]),dflt:n},Ot.coerce(e,r,f,s)};rt.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};rt.coercePosition=function(e,r,t,a,n,i){var o,l,s=rt.getRefType(a);if(s!=="range")o=Ot.ensureNumber,l=t(n,i);else{var f=rt.getFromId(r,a);i=f.fraction2r(i),l=t(n,i),o=f.cleanPos}e[n]=o(l)};rt.cleanPosition=function(e,r,t){var a=t==="paper"||t==="pixel"?Ot.ensureNumber:rt.getFromId(r,t).cleanPos;return a(e)};rt.redrawComponents=function(e,r){r=r||rt.listIds(e);var t=e._fullLayout;function a(n,i,o,l){for(var s=vm.getComponentMethod(n,i),f={},u=0;u2e-6||((t-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};rt.saveRangeInitial=function(e,r){for(var t=rt.list(e,"",!0),a=!1,n=0;nc*.3||f(a)||f(n))){var v=t.dtick/2;e+=e+vo){var l=Number(t.substr(1));i.exactYears>o&&l%12===0?e=rt.tickIncrement(e,"M6","reverse")+mo*1.5:i.exactMonths>o?e=rt.tickIncrement(e,"M1","reverse")+mo*15.5:e-=Vc;var s=rt.tickIncrement(e,t);if(s<=a)return s}return e}rt.prepMinorTicks=function(e,r,t){if(!r.minor.dtick){delete e.dtick;var a=r.dtick&&ri(r._tmin),n;if(a){var i=rt.tickIncrement(r._tmin,r.dtick,!0);n=[r._tmin,i*.99+r._tmin*.01]}else{var o=Ot.simpleMap(r.range,r.r2l);n=[o[0],.8*o[0]+.2*o[1]]}if(e.range=Ot.simpleMap(n,r.l2r),e._isMinor=!0,rt.prepTicks(e,t),a){var l=ri(r.dtick),s=ri(e.dtick),f=l?r.dtick:+r.dtick.substring(1),u=s?e.dtick:+e.dtick.substring(1);l&&s?uw(f,u)?f===2*xl&&u===2*mo&&(e.dtick=xl):f===2*xl&&u===3*mo?e.dtick=xl:f===xl&&!(r._input.minor||{}).nticks?e.dtick=mo:MF(f/u,2.5)?e.dtick=f/2:e.dtick=f:String(r.dtick).charAt(0)==="M"?s?e.dtick="M1":uw(f,u)?f>=12&&u===2&&(e.dtick="M3"):e.dtick=r.dtick:String(e.dtick).charAt(0)==="L"?String(r.dtick).charAt(0)==="L"?uw(f,u)||(e.dtick=MF(f/u,2.5)?r.dtick/2:r.dtick):e.dtick="D1":e.dtick==="D2"&&+r.dtick>1&&(e.dtick=1)}e.range=r.range}r.minor._tick0Init===void 0&&(e.tick0=r.tick0)};function uw(e,r){return Math.abs((e/r+.5)%1-.5)<.001}function MF(e,r){return Math.abs(e/r-1)<.001}rt.prepTicks=function(e,r){var t=Ot.simpleMap(e.range,e.r2l,void 0,void 0,r);if(e.tickmode==="auto"||!e.dtick){var a=e.nticks,n;a||(e.type==="category"||e.type==="multicategory"?(n=e.tickfont?Ot.bigFont(e.tickfont.size||12):15,a=e._length/n):(n=e._id.charAt(0)==="y"?40:80,a=Ot.constrain(e._length/n,4,9)+1),e._name==="radialaxis"&&(a*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(a*=100),e._roughDTick=Math.abs(t[1]-t[0])/a,rt.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(i=a-1,o=a):(i=a,o=a);var l=e[i].value,s=e[o].value,f=Math.abs(s-l),u=t||f,c=0;u>=X2?f>=X2&&f<=cce?c=f:c=j2:t===hw&&u>=Z2?f>=Z2&&f<=vce?c=f:c=hw:u>=J2?f>=J2&&f<=hce?c=f:c=kd:t===xl&&u>=xl?c=xl:u>=mo?c=mo:t===Vc&&u>=Vc?c=Vc:t===Cf&&u>=Cf&&(c=Cf);var v;c>=f&&(c=f,v=!0);var d=n+c;if(r.rangebreaks&&c>0){for(var p=84,y=0,m=0;mxl&&(c=f)}(c>0||a===0)&&(e[a].periodX=n+c/2)}}rt.calcTicks=function(r,t){for(var a=r.type,n=r.calendar,i=r.ticklabelstep,o=r.ticklabelmode==="period",l=r.range[0]>r.range[1],s=!r.ticklabelindex||Ot.isArrayOrTypedArray(r.ticklabelindex)?r.ticklabelindex:[r.ticklabelindex],f=Ot.simpleMap(r.range,r.r2l,void 0,void 0,t),u=f[1]=(_?0:1);x--){var T=!x;x?(r._dtickInit=r.dtick,r._tick0Init=r.tick0):(r.minor._dtickInit=r.minor.dtick,r.minor._tick0Init=r.minor.tick0);var E=x?r:Ot.extendFlat({},r,r.minor);if(T?rt.prepMinorTicks(E,r,t):rt.prepTicks(E,t),E.tickmode==="array"){x?(m=[],p=SF(r,!T)):(b=[],y=SF(r,!T));continue}if(E.tickmode==="sync"){m=[],p=Sce(r);continue}var M=xw(f),k=M[0],F=M[1],I=ri(E.dtick),O=a==="log"&&!(I||E.dtick.charAt(0)==="L"),q=rt.tickFirst(E,t);if(x){if(r._tmin=q,q=F:X<=F;X=rt.tickIncrement(X,Q,u,n)){if(x&&oe++,E.rangebreaks&&!u){if(X=v)break}if(m.length>d||X===H)break;H=X;var Z={value:X};x?(O&&X!==(X|0)&&(Z.simpleLabel=!0),i>1&&oe%i&&(Z.skipLabel=!0),m.push(Z)):(Z.minor=!0,b.push(Z))}}if(!b||b.length<2)s=!1;else{var J=(b[1].value-b[0].value)*(l?-1:1);$ce(J,r.tickformat)||(s=!1)}if(!s)A=m;else{var le=m.concat(b);o&&m.length&&(le=le.slice(1)),le=le.sort(function(Ir,Yr){return Ir.value-Yr.value}).filter(function(Ir,Yr,Kr){return Yr===0||Ir.value!==Kr[Yr-1].value});var ce=le.map(function(Ir,Yr){return Ir.minor===void 0&&!Ir.skipLabel?Yr:null}).filter(function(Ir){return Ir!==null});ce.forEach(function(Ir){s.map(function(Yr){var Kr=Ir+Yr;Kr>=0&&Kr-1;$e--){if(m[$e].drop){m.splice($e,1);continue}m[$e].value=vw(m[$e].value,r);var ae=r.c2p(m[$e].value);(Ue?de>ae-ee:dev||wrv&&(Kr.periodX=v),wrn&&vj2)r/=j2,a=n(10),e.dtick="M"+12*kf(r,a,Y2);else if(i>kd)r/=kd,e.dtick="M"+kf(r,1,EF);else if(i>mo){if(e.dtick=kf(r,mo,e._hasDayOfWeekBreaks?[1,2,7,14]:Ece),!t){var o=rt.getTickFormat(e),l=e.ticklabelmode==="period";l&&(e._rawTick0=e.tick0),/%[uVW]/.test(o)?e.tick0=Ot.dateTick0(e.calendar,2):e.tick0=Ot.dateTick0(e.calendar,1),l&&(e._dowTick0=e.tick0)}}else i>Cf?e.dtick=kf(r,Cf,EF):i>dm?e.dtick=kf(r,dm,kF):i>$2?e.dtick=kf(r,$2,kF):(a=n(10),e.dtick=kf(r,a,Y2))}else if(e.type==="log"){e.tick0=0;var s=Ot.simpleMap(e.range,e.r2l);if(e._isMinor&&(r*=1.5),r>.7)e.dtick=Math.ceil(r);else if(Math.abs(s[1]-s[0])<1){var f=1.5*Math.abs((s[1]-s[0])/r);r=Math.abs(Math.pow(10,s[1])-Math.pow(10,s[0]))/f,a=n(10),e.dtick="L"+kf(r,a,Y2)}else e.dtick=r>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(r,1))):Tw(e)?(e.tick0=0,a=1,e.dtick=kf(r,a,kce)):(e.tick0=0,a=n(10),e.dtick=kf(r,a,Y2));if(e.dtick===0&&(e.dtick=1),!ri(e.dtick)&&typeof e.dtick!="string"){var u=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(u)}};function NF(e){var r=e.dtick;if(e._tickexponent=0,!ri(r)&&typeof r!="string"&&(r=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var t=e.r2l(e.tick0),a=e.l2r(t).replace(/(^-|i)/g,""),n=a.length;if(String(r).charAt(0)==="M")n>10||a.substr(5)!=="01-01"?e._tickround="d":e._tickround=+r.substr(1)%12===0?"y":"m";else if(r>=mo&&n<=10||r>=mo*15)e._tickround="d";else if(r>=dm&&n<=16||r>=Cf)e._tickround="M";else if(r>=$2&&n<=19||r>=dm)e._tickround="S";else{var i=e.l2r(t+r).replace(/^-/,"").length;e._tickround=Math.max(n,i)-20,e._tickround<0&&(e._tickround=4)}}else if(ri(r)||r.charAt(0)==="L"){var o=e.range.map(e.r2d||Number);ri(r)||(r=Number(r.substr(1))),e._tickround=2-Math.floor(Math.log(r)/Math.LN10+.01);var l=Math.max(Math.abs(o[0]),Math.abs(o[1])),s=Math.floor(Math.log(l)/Math.LN10+.01),f=e.minexponent===void 0?3:e.minexponent;Math.abs(s)>f&&(Cd(e.exponentformat)&&e.exponentformat!=="SI extended"&&!_w(s)||Cd(e.exponentformat)&&e.exponentformat==="SI extended"&&!ww(s)?e._tickexponent=3*Math.round((s-1)/3):e._tickexponent=s)}else e._tickround=null}rt.tickIncrement=function(e,r,t,a){var n=t?-1:1;if(ri(r))return Ot.increment(e,n*r);var i=r.charAt(0),o=n*Number(r.substr(1));if(i==="M")return Ot.incrementMonth(e,o,a);if(i==="L")return Math.log(Math.pow(10,e)+o)/Math.LN10;if(i==="D"){var l=r==="D2"?PF:RF,s=e+n*.01,f=Ot.roundUp(Ot.mod(s,1),l,t);return Math.floor(s)+Math.log(Hl.round(Math.pow(10,f),1))/Math.LN10}throw"unrecognized dtick "+String(r)};rt.tickFirst=function(e,r){var t=e.r2l||Number,a=Ot.simpleMap(e.range,t,void 0,void 0,r),n=a[1]=0&&b<=e._length?m:null};if(i&&Ot.isArrayOrTypedArray(e.ticktext)){var c=Ot.simpleMap(e.range,e.r2l),v=(Math.abs(c[1]-c[0])-(e._lBreaks||0))/1e4;for(f=0;f"+l;else{var f=ym(e),u=e._trueSide||e.side;(!f&&u==="top"||f&&u==="bottom")&&(o+="
")}r.text=o}function Lce(e,r,t,a,n){var i=e.dtick,o=r.x,l=e.tickformat,s=typeof i=="string"&&i.charAt(0);if(n==="never"&&(n=""),a&&s!=="L"&&(i="L3",s="L"),l||s==="L")r.text=mm(Math.pow(10,o),e,n,a);else if(ri(i)||s==="D"&&(e.minorloglabels==="complete"||Ot.mod(o+.01,1)<.1)){var f;e.minorloglabels==="complete"&&!(Ot.mod(o+.01,1)<.1)&&(f=!0,r.fontSize*=.75);var u=Math.pow(10,o).toExponential(0),c=u.split("e"),v=+c[1],d=Math.abs(v),p=e.exponentformat;p==="power"||Cd(p)&&p!=="SI extended"&&_w(v)||Cd(p)&&p==="SI extended"&&ww(v)?(r.text=c[0],d>0&&(r.text+="x10"),r.text==="1x10"&&(r.text="10"),v!==0&&v!==1&&(r.text+=""+(v>0?"":P0)+d+""),r.fontSize*=1.25):(p==="e"||p==="E")&&d>2?r.text=c[0]+p+(v>0?"+":P0)+d:(r.text=mm(Math.pow(10,o),e,"","fakehover"),i==="D1"&&e._id.charAt(0)==="y"&&(r.dy-=r.fontSize/6))}else if(s==="D")r.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,Ot.mod(o,1)))),r.fontSize*=.75;else throw"unrecognized dtick "+String(i);if(e.dtick==="D1"){var y=String(r.text).charAt(0);(y==="0"||y==="1")&&(e._id.charAt(0)==="y"?r.dx-=r.fontSize/4:(r.dy+=r.fontSize/2,r.dx+=(e.range[1]>e.range[0]?1:-1)*r.fontSize*(o<0?.5:.25)))}}function Dce(e,r){var t=e._categories[Math.round(r.x)];t===void 0&&(t=""),r.text=String(t)}function Fce(e,r,t){var a=Math.round(r.x),n=e._categories[a]||[],i=n[1]===void 0?"":String(n[1]),o=n[0]===void 0?"":String(n[0]);t?r.text=o+" - "+i:(r.text=i,r.text2=o)}function qce(e,r,t,a,n){n==="never"?n="":e.showexponent==="all"&&Math.abs(r.x/e.dtick)<1e-6&&(n="hide"),r.text=mm(r.x,e,n,a)}function Rce(e,r,t,a,n){if(e.thetaunit==="radians"&&!t){var i=r.x/180;if(i===0)r.text="0";else{var o=Pce(i);if(o[1]>=100)r.text=mm(Ot.deg2rad(r.x),e,n,a);else{var l=r.x<0;o[1]===1?o[0]===1?r.text="\u03C0":r.text=o[0]+"\u03C0":r.text=["",o[0],"","\u2044","",o[1],"","\u03C0"].join(""),l&&(r.text=P0+r.text)}}}else r.text=mm(r.x,e,n,a)}function Pce(e){function r(l,s){return Math.abs(l-s)<=1e-6}function t(l,s){return r(s,0)?l:t(s,l%s)}function a(l){for(var s=1;!r(Math.round(l*s)/s,l);)s*=10;return s}var n=a(e),i=e*n,o=Math.abs(t(i,n));return[Math.round(i/o),Math.round(n/o)]}var OF=["f","p","n","\u03BC","m","","k","M","G","T"],Nce=["q","r","y","z","a",...OF,"P","E","Z","Y","R","Q"],Cd=e=>["SI","SI extended","B"].includes(e);function _w(e){return e>14||e<-15}function ww(e){return e>32||e<-30}function Ice(e,r){return Cd(r)?!!(r==="SI extended"&&ww(e)||r!=="SI extended"&&_w(e)):!1}function mm(e,r,t,a){var n=e<0,i=r._tickround,o=t||r.exponentformat||"B",l=r._tickexponent,s=rt.getTickFormat(r),f=r.separatethousands;if(a){var u={exponentformat:o,minexponent:r.minexponent,dtick:r.showexponent==="none"?r.dtick:ri(e)&&Math.abs(e)||1,range:r.showexponent==="none"?r.range.map(r.r2d):[0,e||1]};NF(u),i=(Number(u._tickround)||0)+4,l=u._tickexponent,r.hoverformat&&(s=r.hoverformat)}if(s)return r._numFormat(s)(e).replace(/-/g,P0);var c=Math.pow(10,-i)/2;if(o==="none"&&(l=0),e=Math.abs(e),e"+p+"":o==="B"&&l===9?e+="B":Cd(o)&&(e+=o==="SI extended"?Nce[l/3+10]:OF[l/3+5])}return n?P0+e:e}rt.getTickFormat=function(e){var r;function t(s){return typeof s!="string"?s:Number(s.replace("M",""))*kd}function a(s,f){var u=["L","D"];if(typeof s==typeof f){if(typeof s=="number")return s-f;var c=u.indexOf(s.charAt(0)),v=u.indexOf(f.charAt(0));return c===v?Number(s.replace(/(L|D)/g,""))-Number(f.replace(/(L|D)/g,"")):c-v}else return typeof s=="number"?1:-1}function n(s,f,u){var c=u||function(p){return p},v=f[0],d=f[1];return(!v&&typeof v!="number"||c(v)<=c(s))&&(!d&&typeof d!="number"||c(d)>=c(s))}function i(s,f){var u=f[0]===null,c=f[1]===null,v=a(s,f[0])>=0,d=a(s,f[1])<=0;return(u||v)&&(c||d)}var o,l;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(r=0;r=0&&n.unshift(n.splice(u,1).shift())}});var l={false:{left:0,right:0}};return Ot.syncOrAsync(n.map(function(s){return function(){if(s){var f=rt.getFromId(e,s);t||(t={}),t.axShifts=l,t.overlayingShiftedAx=o;var u=rt.drawOne(e,f,t);return f._shiftPusher&&bw(f,f._fullDepth||0,l,!0),f._r=f.range.slice(),f._rl=Ot.simpleMap(f._r,f.r2l),u}}}))};rt.drawOne=function(e,r,t){t=t||{};var a=t.axShifts||{},n=t.overlayingShiftedAx||[],i,o,l;r.setScale();var s=e._fullLayout,f=r._id,u=f.charAt(0),c=rt.counterLetter(f),v=s._plots[r._mainSubplot],d=r.zerolinelayer==="above traces";if(!v)return;if(r._shiftPusher=r.autoshift||n.indexOf(r._id)!==-1||n.indexOf(r.overlaying)!==-1,r._shiftPusher&r.anchor==="free"){var p=r.linewidth/2||0;r.ticks==="inside"&&(p+=r.ticklen),bw(r,p,a,!0),bw(r,r.shift||0,a,!1)}(t.skipTitle!==!0||r._shift===void 0)&&(r._shift=Jce(r,a));var y=v[u+"axislayer"],m=r._mainLinePosition,b=m+=r._shift,A=r._mainMirrorPosition,_=r._vals=rt.calcTicks(r),x=[r.mirror,b,A].join("_");for(i=0;i<_.length;i++)_[i].axInfo=x;r._selections={},r._tickAngles&&(r._prevTickAngles=r._tickAngles),r._tickAngles={},r._depth=null;var T={};function E(_r){var Ir=f+(_r||"tick");return T[Ir]||(T[Ir]=Gce(r,Ir,b)),T[Ir]}if(r.visible){var M=rt.makeTransTickFn(r),k=rt.makeTransTickLabelFn(r),F,I,O=r.ticks==="inside",q=r.ticks==="outside";if(r.tickson==="boundaries"){var H=Oce(r,_);I=rt.clipEnds(r,H),F=O?I:H}else I=rt.clipEnds(r,_),F=O&&r.ticklabelmode!=="period"?I:_;var X=r._gridVals=I,oe=zce(r,_);if(!s._hasOnlyLargeSploms){var te=r._subplotsWith,Q={};for(i=0;i0?wr.bottom-Yr:0,Kr))));var lr=0,st=0;if(r._shiftPusher&&(lr=Math.max(Kr,wr.height>0?_r==="l"?Yr-wr.left:wr.right-Yr:0),r.title.text!==s._dfltTitle[u]&&(st=(r._titleStandoff||0)+(r._titleScoot||0),_r==="l"&&(st+=LF(r))),r._fullDepth=Math.max(lr,st)),r.automargin){Vr={x:0,y:0,r:0,l:0,t:0,b:0};var kt=[0,1],Ar=typeof r._shift=="number"?r._shift:0;if(u==="x"){if(_r==="b"?Vr[_r]=r._depth:(Vr[_r]=r._depth=Math.max(wr.width>0?Yr-wr.top:0,Kr),kt.reverse()),wr.width>0){var tr=wr.right-(r._offset+r._length);tr>0&&(Vr.xr=1,Vr.r=tr);var cr=r._offset-wr.left;cr>0&&(Vr.xl=0,Vr.l=cr)}}else if(_r==="l"?(r._depth=Math.max(wr.height>0?Yr-wr.left:0,Kr),Vr[_r]=r._depth-Ar):(r._depth=Math.max(wr.height>0?wr.right-Yr:0,Kr),Vr[_r]=r._depth+Ar,kt.reverse()),wr.height>0){var Hr=wr.bottom-(r._offset+r._length);Hr>0&&(Vr.yb=0,Vr.b=Hr);var ot=r._offset-wr.top;ot>0&&(Vr.yt=1,Vr.t=ot)}Vr[c]=r.anchor==="free"?r.position:r._anchorAxis.domain[kt[0]],r.title.text!==s._dfltTitle[u]&&(Vr[_r]+=LF(r)+(r.title.standoff||0)),r.mirror&&r.anchor!=="free"&&(Wr={x:0,y:0,r:0,l:0,t:0,b:0},Wr[Ir]=r.linewidth,r.mirror&&r.mirror!==!0&&(Wr[Ir]+=Kr),r.mirror===!0||r.mirror==="ticks"?Wr[c]=r._anchorAxis.domain[kt[1]]:(r.mirror==="all"||r.mirror==="allticks")&&(Wr[c]=[r._counterDomainMin,r._counterDomainMax][kt[1]]))}Pr&&(Re=vm.getComponentMethod("rangeslider","autoMarginOpts")(e,r)),typeof r.automargin=="string"&&(CF(Vr,r.automargin),CF(Wr,r.automargin)),Sd.autoMargin(e,Aw(r),Vr),Sd.autoMargin(e,zF(r),Wr),Sd.autoMargin(e,GF(r),Re)}),Ot.syncOrAsync(er)}};function CF(e,r){if(e){var t=Object.keys(wF).reduce(function(a,n){return r.indexOf(n)!==-1&&wF[n].forEach(function(i){a[i]=1}),a},{});Object.keys(e).forEach(function(a){t[a]||(a.length===1?e[a]=0:delete e[a])})}}function Oce(e,r){var t=[],a,n=function(i,o){var l=i.xbnd[o];l!==null&&t.push(Ot.extendFlat({},i,{x:l}))};if(r.length){for(a=0;ae.range[1],l=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,s=!l;if(t){var f=o?-1:1;t=t*f}if(a){var u=e.side,c=l&&(u==="top"||u==="left")||s&&(u==="bottom"||u==="right")?1:-1;a=a*c}return e._id.charAt(0)==="x"?function(v){return Ed(n+e._offset+e.l2p(yw(v))+t,i+a)}:function(v){return Ed(i+a,n+e._offset+e.l2p(yw(v))+t)}};function yw(e){return e.periodX!==void 0?e.periodX:e.x}function Uce(e){var r=e.ticklabelposition||"",t=e.tickson||"",a=function(p){return r.indexOf(p)!==-1},n=a("top"),i=a("left"),o=a("right"),l=a("bottom"),s=a("inside"),f=t!=="boundaries"&&(l||i||n||o);if(!f&&!s)return[0,0];var u=e.side,c=f?(e.tickwidth||0)/2:0,v=Q2,d=e.tickfont?e.tickfont.size:12;return(l||n)&&(c+=d*N0,v+=(e.linewidth||0)/2),(i||o)&&(c+=(e.linewidth||0)/2,v+=Q2),s&&u==="top"&&(v-=d*(1-N0)),(i||n)&&(c=-c),(u==="bottom"||u==="right")&&(v=-v),[f?c:0,s?v:0]}rt.makeTickPath=function(e,r,t,a){a||(a={});var n=a.minor;if(n&&!e.minor)return"";var i=a.len!==void 0?a.len:n?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),l=(e.linewidth||1)/2;return o==="x"?"M0,"+(r+l*t)+"v"+i*t:"M"+(r+l*t)+",0h"+i*t};rt.makeLabelFns=function(e,r,t){var a=e.ticklabelposition||"",n=e.tickson||"",i=function(H){return a.indexOf(H)!==-1},o=i("top"),l=i("left"),s=i("right"),f=i("bottom"),u=n!=="boundaries"&&(f||l||o||s),c=i("inside"),v=a==="inside"&&e.ticks==="inside"||!c&&e.ticks==="outside"&&n!=="boundaries",d=0,p=0,y=v?e.ticklen:0;if(c?y*=-1:u&&(y=0),v&&(d+=y,t)){var m=Ot.deg2rad(t);d=y*Math.cos(m)+1,p=y*Math.sin(m)}e.showticklabels&&(v||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(c?-1:1);var b={labelStandoff:d,labelShift:p},A,_,x,T,E=0,M=e.side,k=e._id.charAt(0),F=e.tickangle,I;if(k==="x")I=!c&&M==="bottom"||c&&M==="top",T=I?1:-1,c&&(T*=-1),A=p*T,_=r+d*T,x=I?1:-.2,Math.abs(F)===90&&(c?x+=cm:F===-90&&M==="bottom"?x=N0:F===90&&M==="top"?x=cm:x=.5,E=cm/2*(F/90)),b.xFn=function(H){return H.dx+A+E*H.fontSize},b.yFn=function(H){return H.dy+_+H.fontSize*x},b.anchorFn=function(H,X){if(u){if(l)return"end";if(s)return"start"}return!ri(X)||X===0||X===180?"middle":X*T<0!==c?"end":"start"},b.heightFn=function(H,X,oe){return X<-60||X>60?-.5*oe:e.side==="top"!==c?-oe:0};else if(k==="y"){if(I=!c&&M==="left"||c&&M==="right",T=I?1:-1,c&&(T*=-1),A=d,_=p*T,x=0,!c&&Math.abs(F)===90&&(F===-90&&M==="left"||F===90&&M==="right"?x=N0:x=.5),c){var O=ri(F)?+F:0;if(O!==0){var q=Ot.deg2rad(O);E=Math.abs(Math.sin(q))*N0*T,x=0}}b.xFn=function(H){return H.dx+r-(A+H.fontSize*x)*T+E*H.fontSize},b.yFn=function(H){return H.dy+_+H.fontSize*cm},b.anchorFn=function(H,X){return ri(X)&&Math.abs(X)===90?"middle":I?"end":"start"},b.heightFn=function(H,X,oe){return e.side==="right"&&(X*=-1),X<-30?-oe:X<30?-.5*oe:0}}return b};function r3(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}rt.drawTicks=function(e,r,t){t=t||{};var a=r._id+"tick",n=[].concat(r.minor&&r.minor.ticks?t.vals.filter(function(o){return o.minor&&!o.noTick}):[]).concat(r.ticks?t.vals.filter(function(o){return!o.minor&&!o.noTick}):[]),i=t.layer.selectAll("path."+a).data(n,r3);i.exit().remove(),i.enter().append("path").classed(a,1).classed("ticks",1).classed("crisp",t.crisp!==!1).each(function(o){return hm.stroke(Hl.select(this),o.minor?r.minor.tickcolor:r.tickcolor)}).style("stroke-width",function(o){return bl.crispRound(e,o.minor?r.minor.tickwidth:r.tickwidth,1)+"px"}).attr("d",t.path).style("display",null),t3(r,[DF]),i.attr("transform",t.transFn)};rt.drawGrid=function(e,r,t){if(t=t||{},r.tickmode!=="sync"){var a=r._id+"grid",n=r.minor&&r.minor.showgrid,i=n?t.vals.filter(function(b){return b.minor}):[],o=r.showgrid?t.vals.filter(function(b){return!b.minor}):[],l=t.counterAxis;if(l&&rt.shouldShowZeroLine(e,r,l))for(var s=r.tickmode==="array",f=0;f=0;p--){var y=p?v:d;if(y){var m=y.selectAll("path."+a).data(p?o:i,r3);m.exit().remove(),m.enter().append("path").classed(a,1).classed("crisp",t.crisp!==!1),m.attr("transform",t.transFn).attr("d",t.path).each(function(b){return hm.stroke(Hl.select(this),b.minor?r.minor.gridcolor:r.gridcolor||"#ddd")}).style("stroke-dasharray",function(b){return bl.dashStyle(b.minor?r.minor.griddash:r.griddash,b.minor?r.minor.gridwidth:r.gridwidth)}).style("stroke-width",function(b){return(b.minor?c:r._gw)+"px"}).style("display",null),typeof t.path=="function"&&m.attr("d",t.path)}}t3(r,[pw,mw])}};rt.drawZeroLine=function(e,r,t){t=t||t;var a=r._id+"zl",n=rt.shouldShowZeroLine(e,r,t.counterAxis),i=t.layer.selectAll("path."+a).data(n?[{x:0,id:r._id}]:[]);i.exit().remove(),i.enter().append("path").classed(a,1).classed("zl",1).classed("crisp",t.crisp!==!1).each(function(){t.layer.selectAll("path").sort(function(o,l){return gce(o.id,l.id)})}),i.attr("transform",t.transFn).attr("d",t.path).call(hm.stroke,r.zerolinecolor||hm.defaultLine).style("stroke-width",bl.crispRound(e,r.zerolinewidth,r._gw||1)+"px").style("display",null),t3(r,[dw])};rt.drawLabels=function(e,r,t){t=t||{};var a=e._fullLayout,n=r._id,i=r.zerolinelayer==="above traces",o=t.cls||n+"tick",l=t.vals.filter(function(J){return J.text}),s=t.labelFns,f=t.secondary?0:r.tickangle,u=(r._prevTickAngles||{})[o],c=t.layer.selectAll("g."+o).data(r.showticklabels?l:[],r3),v=[];c.enter().append("g").classed(o,1).append("text").attr("text-anchor","middle").each(function(J){var le=Hl.select(this),ce=e._promises.length;le.call(R0.positionText,s.xFn(J),s.yFn(J)).call(bl.font,{family:J.font,size:J.fontSize,color:J.fontColor,weight:J.fontWeight,style:J.fontStyle,variant:J.fontVariant,textcase:J.fontTextcase,lineposition:J.fontLineposition,shadow:J.fontShadow}).text(J.text).call(R0.convertToTspans,e),e._promises[ce]?v.push(e._promises.pop().then(function(){d(le,f)})):d(le,f)}),t3(r,[_F]),c.exit().remove(),t.repositionOnUpdate&&c.each(function(J){Hl.select(this).select("text").call(R0.positionText,s.xFn(J),s.yFn(J))});function d(J,le){J.each(function(ce){var De=Hl.select(this),Be=De.select(".text-math-group"),Ee=s.anchorFn(ce,le),Xe=t.transFn.call(De.node(),ce)+(ri(le)&&+le!=0?" rotate("+le+","+s.xFn(ce)+","+(s.yFn(ce)-ce.fontSize/2)+")":""),Ae=R0.lineCount(De),rr=pm*ce.fontSize,ze=s.heightFn(ce,ri(le)?+le:0,(Ae-1)*rr);if(ze&&(Xe+=Ed(0,ze)),Be.empty()){var We=De.select("text");We.attr({transform:Xe,"text-anchor":Ee}),We.style("display",null),r._adjustTickLabelsOverflow&&r._adjustTickLabelsOverflow()}else{var $e=bl.bBox(Be.node()).width,Ue=$e*{end:-.5,start:.5}[Ee];Be.attr("transform",Xe+Ed(Ue,0))}})}r._adjustTickLabelsOverflow=function(){var J=r.ticklabeloverflow;if(!(!J||J==="allow")){var le=J.indexOf("hide")!==-1,ce=r._id.charAt(0)==="x",De=0,Be=ce?e._fullLayout.width:e._fullLayout.height;if(J.indexOf("domain")!==-1){var Ee=Ot.simpleMap(r.range,r.r2l);De=r.l2p(Ee[0])+r._offset,Be=r.l2p(Ee[1])+r._offset}var Xe=Math.min(De,Be),Ae=Math.max(De,Be),rr=r.side,ze=1/0,We=-1/0;c.each(function(de){var ae=Hl.select(this),je=ae.select(".text-math-group");if(je.empty()){var ur=bl.bBox(ae.node()),er=0;ce?(ur.right>Ae||ur.leftAe||ur.top+(r.tickangle?0:de.fontSize/4)r["_visibleLabelMin_"+Ee._id]?ae.style("display","none"):Ae.K==="tick"&&!Xe&&ae.node().style.display!=="none"&&ae.style("display",null)})})})})},d(c,u+1?u:f);function p(){return v.length&&Promise.all(v)}var y=null;function m(){if(d(c,f),l.length&&r.autotickangles&&(r.type!=="log"||String(r.dtick).charAt(0)!=="D")){y=r.autotickangles[0];var J=0,le=[],ce,De=1;c.each(function(Vr){J=Math.max(J,Vr.fontSize);var Wr=r.l2p(Vr.x),Re=gw(this),lr=bl.bBox(Re.node());De=Math.max(De,R0.lineCount(Re)),le.push({top:0,bottom:10,height:10,left:Wr-lr.width/2,right:Wr+lr.width/2+2,width:lr.width+2})});var Be=(r.tickson==="boundaries"||r.showdividers)&&!t.secondary,Ee=l.length,Xe=Math.abs((l[Ee-1].x-l[0].x)*r._m)/(Ee-1),Ae=Be?Xe/2:Xe,rr=Be?r.ticklen:J*1.25*De,ze=Math.sqrt(Math.pow(Ae,2)+Math.pow(rr,2)),We=Ae/ze,$e=r.autotickangles.map(function(Vr){return Vr*Math.PI/180}),Ue=$e.find(function(Vr){return Math.abs(Math.cos(Vr))<=We});Ue===void 0&&(Ue=$e.reduce(function(Vr,Wr){return Math.abs(Math.cos(Vr))te*oe&&(q=oe,F[k]=I[k]=H[k])}var Q=Math.abs(q-O);Q-T>0?(Q-=T,T*=1+T/Q):T=0,r._id.charAt(0)!=="y"&&(T=-T),F[M]=_.p2r(_.r2p(I[M])+E*T),_.autorange==="min"||_.autorange==="max reversed"?(F[0]=null,_._rangeInitial0=void 0,_._rangeInitial1=void 0):(_.autorange==="max"||_.autorange==="min reversed")&&(F[1]=null,_._rangeInitial0=void 0,_._rangeInitial1=void 0),a._insideTickLabelsUpdaterange[_._name+".range"]=F}var Z=Ot.syncOrAsync(b);return Z&&Z.then&&e._promises.push(Z),Z};function Hce(e,r,t){var a=r._id+"divider",n=t.vals,i=t.layer.selectAll("path."+a).data(n,r3);i.exit().remove(),i.enter().insert("path",":first-child").classed(a,1).classed("crisp",1).call(hm.stroke,r.dividercolor).style("stroke-width",bl.crispRound(e,r.dividerwidth,1)+"px"),i.attr("transform",t.transFn).attr("d",t.path)}rt.getPxPosition=function(e,r){var t=e._fullLayout._size,a=r._id.charAt(0),n=r.side,i;if(r.anchor!=="free"?i=r._anchorAxis:a==="x"?i={_offset:t.t+(1-(r.position||0))*t.h,_length:0}:a==="y"&&(i={_offset:t.l+(r.position||0)*t.w+r._shift,_length:0}),n==="top"||n==="left")return i._offset;if(n==="bottom"||n==="right")return i._offset+i._length};function LF(e){var r=e.title.font.size,t=(e.title.text.match(R0.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?r*(N0+t*pm):t?r*(t+1)*pm:r}function Vce(e,r){var t=e._fullLayout,a=r._id,n=a.charAt(0),i=r.title.font.size,o,l=(r.title.text.match(R0.BR_TAG_ALL)||[]).length;if(r.title.hasOwnProperty("standoff"))r.side==="bottom"||r.side==="right"?o=r._depth+r.title.standoff+i*N0:(r.side==="top"||r.side==="left")&&(o=r._depth+r.title.standoff+i*(cm+l*pm));else{var s=ym(r);if(r.type==="multicategory")o=r._depth;else{var f=1.5*i;s&&(f=.5*i,r.ticks==="outside"&&(f+=r.ticklen)),o=10+f+(r.linewidth?r.linewidth-1:0)}s||(n==="x"?o+=r.side==="top"?i*(r.showticklabels?1:0):i*(r.showticklabels?1.5:.5):o+=r.side==="right"?i*(r.showticklabels?1:.5):i*(r.showticklabels?.5:0))}var u=rt.getPxPosition(e,r),c,v,d;n==="x"?(v=r._offset+r._length/2,d=r.side==="top"?u-o:u+o):(d=r._offset+r._length/2,v=r.side==="right"?u+o:u-o,c={rotate:"-90",offset:0});var p;if(r.type!=="multicategory"){var y=r._selections[r._id+"tick"];if(p={selection:y,side:r.side},y&&y.node()&&y.node().parentNode){var m=bl.getTranslate(y.node().parentNode);p.offsetLeft=m.x,p.offsetTop=m.y}r.title.hasOwnProperty("standoff")&&(p.pad=0)}return r._titleStandoff=o,fce.draw(e,a+"title",{propContainer:r,propName:r._name+".title.text",placeholder:t._dfltTitle[n],avoid:p,transform:c,attributes:{x:v,y:d,"text-anchor":"middle"}})}rt.shouldShowZeroLine=function(e,r,t){var a=Ot.simpleMap(r.range,r.r2l);return a[0]*a[1]<=0&&r.zeroline&&(r.type==="linear"||r.type==="-")&&!(r.rangebreaks&&r.maskBreaks(0)===K2)&&(BF(r,0)||!Yce(e,r,t,a)||Wce(e,r))};rt.clipEnds=function(e,r){return r.filter(function(t){return BF(e,t.x)})};function BF(e,r){var t=e.l2p(r);return t>1&&t1)for(n=1;n=n.min&&e=pce:/%L/.test(r)?e>=dce:/%[SX]/.test(r)?e>=$2:/%M/.test(r)?e>=dm:/%[HI]/.test(r)?e>=Cf:/%p/.test(r)?e>=Vc:/%[Aadejuwx]/.test(r)?e>=mo:/%[UVW]/.test(r)?e>=xl:/%[Bbm]/.test(r)?e>=J2:/%[q]/.test(r)?e>=Z2:/%[Yy]/.test(r)?e>=X2:!0}});var VF=P((oLe,HF)=>{"use strict";HF.exports=function(r,t,a){var n,i;if(a){var o=t==="reversed"||t==="min reversed"||t==="max reversed";n=a[o?1:0],i=a[o?0:1]}var l=r("autorangeoptions.minallowed",i===null?n:void 0),s=r("autorangeoptions.maxallowed",n===null?i:void 0);l===void 0&&r("autorangeoptions.clipmin"),s===void 0&&r("autorangeoptions.clipmax"),r("autorangeoptions.include")}});var Mw=P((lLe,YF)=>{"use strict";var Qce=VF();YF.exports=function(r,t,a,n){var i=t._template||{},o=t.type||i.type||"-";a("minallowed"),a("maxallowed");var l=a("range");if(!l){var s;!n.noInsiderange&&o!=="log"&&(s=a("insiderange"),s&&(s[0]===null||s[1]===null)&&(t.insiderange=!1,s=void 0),s&&(l=a("range",s)))}var f=t.getAutorangeDflt(l,n),u=a("autorange",f),c;l&&(l[0]===null&&l[1]===null||(l[0]===null||l[1]===null)&&(u==="reversed"||u===!0)||l[0]!==null&&(u==="min"||u==="max reversed")||l[1]!==null&&(u==="max"||u==="min reversed"))&&(l=void 0,delete t.range,t.autorange=!0,c=!0),c||(f=t.getAutorangeDflt(l,n),u=a("autorange",f)),u&&(Qce(a,u,l),(o==="linear"||o==="-")&&a("rangemode")),t.cleanRange()}});var jF=P((sLe,WF)=>{var Kce={left:0,top:0};WF.exports=eve;function eve(e,r,t){r=r||e.currentTarget||e.srcElement,Array.isArray(t)||(t=[0,0]);var a=e.clientX||0,n=e.clientY||0,i=rve(r);return t[0]=a-i.left,t[1]=n-i.top,t}function rve(e){return e===window||e===document||e===document.body?Kce:e.getBoundingClientRect()}});var Sw=P((fLe,XF)=>{"use strict";var tve=r4();function ave(){var e=!1;try{var r=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,r),window.removeEventListener("test",null,r)}catch(t){e=!1}return e}XF.exports=tve&&ave()});var JF=P((uLe,ZF)=>{"use strict";ZF.exports=function(r,t,a,n,i){var o=(r-a)/(n-a),l=o+t/(n-a),s=(o+l)/2;return i==="left"||i==="bottom"?o:i==="center"||i==="middle"?s:i==="right"||i==="top"?l:o<2/3-s?o:l>4/3-s?l:s}});var KF=P((cLe,QF)=>{"use strict";var $F=Ur(),nve=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];QF.exports=function(r,t,a,n){return a==="left"?r=0:a==="center"?r=1:a==="right"?r=2:r=$F.constrain(Math.floor(r*3),0,2),n==="bottom"?t=0:n==="middle"?t=1:n==="top"?t=2:t=$F.constrain(Math.floor(t*3),0,2),nve[t][r]}});var rq=P((vLe,eq)=>{"use strict";var ive=Q1(),ove=n2(),lve=V1().getGraphDiv,sve=z1(),Ew=eq.exports={};Ew.wrapped=function(e,r,t){e=lve(e),e._fullLayout&&ove.clear(e._fullLayout._uid+sve.HOVERID),Ew.raw(e,r,t)};Ew.raw=function(r,t){var a=r._fullLayout,n=r._hoverdata;t||(t={}),!(t.target&&!r._dragged&&ive.triggerHandler(r,"plotly_beforehover",t)===!1)&&(a._hoverlayer.selectAll("g").remove(),a._hoverlayer.selectAll("line").remove(),a._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,t.target&&n&&r.emit("plotly_unhover",{event:t,points:n}))}});var Ns=P((hLe,iq)=>{"use strict";var fve=jF(),kw=a4(),uve=Sw(),cve=Ur().removeElement,vve=qi(),I0=iq.exports={};I0.align=JF();I0.getCursor=KF();var aq=rq();I0.unhover=aq.wrapped;I0.unhoverRaw=aq.raw;I0.init=function(r){var t=r.gd,a=1,n=t._context.doubleClickDelay,i=r.element,o,l,s,f,u,c,v,d;t._mouseDownTime||(t._mouseDownTime=0),i.style.pointerEvents="all",i.onmousedown=m,uve?(i._ontouchstart&&i.removeEventListener("touchstart",i._ontouchstart),i._ontouchstart=m,i.addEventListener("touchstart",m,{passive:!1})):i.ontouchstart=m;function p(_,x,T){return Math.abs(_)n&&(a=Math.max(a-1,1)),t._dragged)r.doneFn&&r.doneFn();else{var x;c.target===v?x=c:(x={target:v,srcElement:v,toElement:v},Object.keys(c).concat(Object.keys(c.__proto__)).forEach(T=>{var E=c[T];!x[T]&&typeof E!="function"&&(x[T]=E)})),r.clickFn&&r.clickFn(a,x),d||v.dispatchEvent(new MouseEvent("click",_))}t._dragging=!1,t._dragged=!1}};function nq(){var e=document.createElement("div");e.className="dragcover";var r=e.style;return r.position="fixed",r.left=0,r.right=0,r.top=0,r.bottom=0,r.zIndex=999999999,r.background="none",document.body.appendChild(e),e}I0.coverSlip=nq;function tq(e){return fve(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Yc=P((dLe,oq)=>{"use strict";oq.exports=function(r,t){(r.attr("class")||"").split(" ").forEach(function(a){a.indexOf("cursor-")===0&&r.classed(a,!1)}),t&&r.classed("cursor-"+t,!0)}});var fq=P((pLe,sq)=>{"use strict";var Cw=Yc(),gm="data-savedcursor",lq="!!";sq.exports=function(r,t){var a=r.attr(gm);if(t){if(!a){for(var n=(r.attr("class")||"").split(" "),i=0;i{"use strict";var Lw=Gi(),hve=wf();uq.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:hve.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:Lw({editType:"legend"}),grouptitlefont:Lw({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:Lw({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var n3=P(a3=>{"use strict";a3.isGrouped=function(r){return(r.traceorder||"").indexOf("grouped")!==-1};a3.isVertical=function(r){return r.orientation!=="h"};a3.isReversed=function(r){return(r.traceorder||"").indexOf("reversed")!==-1}});var Rw=P((gLe,cq)=>{"use strict";var Fw=Bt(),_l=Ur(),dve=Xa(),pve=Cs(),mve=Dw(),yve=ad(),qw=n3();function gve(e,r,t,a){var n=r[e]||{},i=dve.newContainer(t,e);function o(Q,Z){return _l.coerce(n,i,mve,Q,Z)}var l=_l.coerceFont(o,"font",t.font);o("bgcolor",t.paper_bgcolor),o("bordercolor");var s=o("visible");if(s){for(var f,u=function(Q,Z){var J=f._input,le=f;return _l.coerce(J,le,pve,Q,Z)},c=t.font||{},v=_l.coerceFont(o,"grouptitlefont",c,{overrideDflt:{size:Math.round(c.size*1.1)}}),d=0,p=!1,y="normal",m=(t.shapes||[]).filter(function(Q){return Q.showlegend}),b=a.concat(m).filter(function(Q){return e===(Q.legend||"legend")}),A=0;A(e==="legend"?1:0));if(x===!1&&(t[e]=void 0),!(x===!1&&!n.uirevision)&&(o("uirevision",t.uirevision),x!==!1)){o("borderwidth");var T=o("orientation"),E=o("yref"),M=o("xref"),k=T==="h",F=E==="paper",I=M==="paper",O,q,H,X="left";k?(O=0,Fw.getComponentMethod("rangeslider","isVisible")(r.xaxis)?F?(q=1.1,H="bottom"):(q=1,H="top"):F?(q=-.1,H="top"):(q=0,H="bottom")):(q=1,H="auto",I?O=1.02:(O=1,X="right")),_l.coerce(n,i,{x:{valType:"number",editType:"legend",min:I?-2:0,max:I?3:1,dflt:O}},"x"),_l.coerce(n,i,{y:{valType:"number",editType:"legend",min:F?-2:0,max:F?3:1,dflt:q}},"y"),o("traceorder",y),qw.isGrouped(t[e])&&o("tracegroupgap"),o("entrywidth"),o("entrywidthmode"),o("indentation"),o("itemsizing"),o("itemwidth"),o("itemclick"),o("itemdoubleclick"),o("groupclick"),o("xanchor",X),o("yanchor",H),o("maxheight"),o("valign"),_l.noneOrAll(n,i,["x","y"]);var oe=o("title.text");if(oe){o("title.side",k?"left":"top");var te=_l.extendFlat({},l,{size:_l.bigFont(l.size)});_l.coerceFont(o,"title.font",te)}}}}cq.exports=function(r,t,a){var n,i=a.slice(),o=t.shapes;if(o)for(n=0;n{"use strict";var Ld=Bt(),Nw=Ur(),bve=Nw.pushUnique,Pw=!0;vq.exports=function(r,t,a){var n=t._fullLayout;if(t._dragged||t._editing)return;var i=n.legend.itemclick,o=n.legend.itemdoubleclick,l=n.legend.groupclick;a===1&&i==="toggle"&&o==="toggleothers"&&Pw&&t.data&&t._context.showTips&&Nw.notifier(Nw._(t,"Double-click on legend to isolate one trace"),"long"),Pw=!1;var s;if(a===1?s=i:a===2&&(s=o),!s)return;var f=l==="togglegroup",u=n.hiddenlabels?n.hiddenlabels.slice():[],c=r.data()[0][0];if(c.groupTitle&&c.noClick)return;var v=t._fullData,d=(n.shapes||[]).filter(function(Ir){return Ir.showlegend}),p=v.concat(d),y=c.trace;y._isShape&&(y=y._fullInput);var m=y.legendgroup,b,A,_,x,T,E,M={},k=[],F=[],I=[];function O(Ir,Yr){var Kr=k.indexOf(Ir),wr=M.visible;return wr||(wr=M.visible=[]),k.indexOf(Ir)===-1&&(k.push(Ir),Kr=k.length-1),wr[Kr]=Yr,Kr}var q=(n.shapes||[]).map(function(Ir){return Ir._input}),H=!1;function X(Ir,Yr){q[Ir].visible=Yr,H=!0}function oe(Ir,Yr){if(!(c.groupTitle&&!f)){var Kr=Ir._fullInput||Ir,wr=Kr._isShape,Vr=Kr.index;Vr===void 0&&(Vr=Kr._index);var Wr=Kr.visible===!1?!1:Yr;wr?X(Vr,Wr):O(Vr,Wr)}}var te=y.legend,Q=y._fullInput,Z=Q&&Q._isShape;if(!Z&&Ld.traceIs(y,"pie-like")){var J=c.label,le=u.indexOf(J);if(s==="toggle")le===-1?u.push(J):u.splice(le,1);else if(s==="toggleothers"){var ce=le!==-1,De=[];for(b=0;b{"use strict";dq.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var yq=P((_Le,mq)=>{"use strict";var pq=Bt(),Ow=n3();mq.exports=function(r,t,a){var n=t._inHover,i=Ow.isGrouped(t),o=Ow.isReversed(t),l={},s=[],f=!1,u={},c=0,v=0,d,p;function y(Q,Z,J){if(t.visible!==!1&&!(a&&Q!==t._id))if(Z===""||!Ow.isGrouped(t)){var le="~~i"+c;s.push(le),l[le]=[J],c++}else s.indexOf(Z)===-1?(s.push(Z),f=!0,l[Z]=[J]):l[Z].push(J)}for(d=0;dI&&(F=I)}M[d][0]._groupMinRank=F,M[d][0]._preGroupSort=d}var O=function(Q,Z){return Q[0]._groupMinRank-Z[0]._groupMinRank||Q[0]._preGroupSort-Z[0]._preGroupSort},q=function(Q,Z){return Q.trace.legendrank-Z.trace.legendrank||Q._preSort-Z._preSort};for(M.forEach(function(Q,Z){Q[0]._preGroupSort=Z}),M.sort(O),d=0;d{"use strict";var i3=Ur();function gq(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}O0.formatPiePercent=function(r,t){var a=gq((r*100).toPrecision(3));return i3.numSeparate(a,t)+"%"};O0.formatPieValue=function(r,t){var a=gq(r.toPrecision(10));return i3.numSeparate(a,t)};O0.getFirstFilled=function(r,t){if(i3.isArrayOrTypedArray(r))for(var a=0;a{"use strict";var xve=Ha(),_ve=ha();bq.exports=function(r,t,a,n){var i=a.marker.pattern;i&&i.shape?xve.pointStyle(r,a,n,t):_ve.fill(r,t.color)}});var Tq=P((TLe,Aq)=>{"use strict";var _q=ha(),wq=Bw().castOption,wve=xq();Aq.exports=function(r,t,a,n){var i=a.marker.line,o=wq(i.color,t.pts)||_q.defaultLine,l=wq(i.width,t.pts)||0;r.call(wve,t,a,n).style("stroke-width",l).call(_q.stroke,o)}});var Hw=P((MLe,Lq)=>{"use strict";var yo=da(),zw=Bt(),to=Ur(),Mq=to.strTranslate,wl=Ha(),Vl=ha(),Gw=Rs().extractOpts,o3=Ri(),Ave=Tq(),Tve=Bw().castOption,Mve=Iw(),Sq=12,Eq=5,B0=2,Sve=10,Dd=5;Lq.exports=function(r,t,a){var n=t._fullLayout;a||(a=n.legend);var i=a.itemsizing==="constant",o=a.itemwidth,l=(o+Mve.itemGap*2)/2,s=Mq(l,0),f=function(M,k,F,I){var O;if(M+1)O=M;else if(k&&k.width>0)O=k.width;else return 0;return i?I:Math.min(O,F)};r.each(function(M){var k=yo.select(this),F=to.ensureSingle(k,"g","layers");F.style("opacity",M[0].trace.opacity);var I=a.indentation,O=a.valign,q=M[0].lineHeight,H=M[0].height;if(O==="middle"&&I===0||!q||!H)F.attr("transform",null);else{var X={top:1,bottom:-1}[O],oe=X*(.5*(q-H+3))||0,te=a.indentation;F.attr("transform",Mq(te,oe))}var Q=F.selectAll("g.legendfill").data([M]);Q.enter().append("g").classed("legendfill",!0);var Z=F.selectAll("g.legendlines").data([M]);Z.enter().append("g").classed("legendlines",!0);var J=F.selectAll("g.legendsymbols").data([M]);J.enter().append("g").classed("legendsymbols",!0),J.selectAll("g.legendpoints").data([M]).enter().append("g").classed("legendpoints",!0)}).each(E).each(v).each(p).each(d).each(m).each(x).each(_).each(u).each(c).each(b).each(A);function u(M){var k=kq(M),F=k.showFill,I=k.showLine,O=k.showGradientLine,q=k.showGradientFill,H=k.anyFill,X=k.anyLine,oe=M[0],te=oe.trace,Q,Z,J=Gw(te),le=J.colorscale,ce=J.reversescale,De=function(We){if(We.size())if(F)wl.fillGroupStyle(We,t,!0);else{var $e="legendfill-"+te.uid;wl.gradient(We,t,$e,Uw(ce),le,"fill")}},Be=function(We){if(We.size()){var $e="legendline-"+te.uid;wl.lineGroupStyle(We),wl.gradient(We,t,$e,Uw(ce),le,"stroke")}},Ee=o3.hasMarkers(te)||!H?"M5,0":X?"M5,-2":"M5,-3",Xe=yo.select(this),Ae=Xe.select(".legendfill").selectAll("path").data(F||q?[M]:[]);if(Ae.enter().append("path").classed("js-fill",!0),Ae.exit().remove(),Ae.attr("d",Ee+"h"+o+"v6h-"+o+"z").call(De),I||O){var rr=f(void 0,te.line,Sve,Eq);Z=to.minExtend(te,{line:{width:rr}}),Q=[to.minExtend(oe,{trace:Z})]}var ze=Xe.select(".legendlines").selectAll("path").data(I||O?[Q]:[]);ze.enter().append("path").classed("js-line",!0),ze.exit().remove(),ze.attr("d",Ee+(O?"l"+o+",0.0001":"h"+o)).call(I?wl.lineGroupStyle:Be)}function c(M){var k=kq(M),F=k.anyFill,I=k.anyLine,O=k.showLine,q=k.showMarker,H=M[0],X=H.trace,oe=!q&&!I&&!F&&o3.hasText(X),te,Q;function Z(Ae,rr,ze,We){var $e=to.nestedProperty(X,Ae).get(),Ue=to.isArrayOrTypedArray($e)&&rr?rr($e):$e;if(i&&Ue&&We!==void 0&&(Ue=We),ze){if(Ueze[1])return ze[1]}return Ue}function J(Ae){return H._distinct&&H.index&&Ae[H.index]?Ae[H.index]:Ae[0]}if(q||oe||O){var le={},ce={};if(q){le.mc=Z("marker.color",J),le.mx=Z("marker.symbol",J),le.mo=Z("marker.opacity",to.mean,[.2,1]),le.mlc=Z("marker.line.color",J),le.mlw=Z("marker.line.width",to.mean,[0,5],B0),ce.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var De=Z("marker.size",to.mean,[2,16],Sq);le.ms=De,ce.marker.size=De}O&&(ce.line={width:Z("line.width",J,[0,10],Eq)}),oe&&(le.tx="Aa",le.tp=Z("textposition",J),le.ts=10,le.tc=Z("textfont.color",J),le.tf=Z("textfont.family",J),le.tw=Z("textfont.weight",J),le.ty=Z("textfont.style",J),le.tv=Z("textfont.variant",J),le.tC=Z("textfont.textcase",J),le.tE=Z("textfont.lineposition",J),le.tS=Z("textfont.shadow",J)),te=[to.minExtend(H,le)],Q=to.minExtend(X,ce),Q.selectedpoints=null,Q.texttemplate=null}var Be=yo.select(this).select("g.legendpoints"),Ee=Be.selectAll("path.scatterpts").data(q?te:[]);Ee.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",s),Ee.exit().remove(),Ee.call(wl.pointStyle,Q,t),q&&(te[0].mrc=3);var Xe=Be.selectAll("g.pointtext").data(oe?te:[]);Xe.enter().append("g").classed("pointtext",!0).append("text").attr("transform",s),Xe.exit().remove(),Xe.selectAll("text").call(wl.textPointStyle,Q,t)}function v(M){var k=M[0].trace,F=k.type==="waterfall";if(M[0]._distinct&&F){var I=M[0].trace[M[0].dir].marker;return M[0].mc=I.color,M[0].mlw=I.line.width,M[0].mlc=I.line.color,y(M,this,"waterfall")}var O=[];k.visible&&F&&(O=M[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var q=yo.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(O);q.enter().append("path").classed("legendwaterfall",!0).attr("transform",s).style("stroke-miterlimit",1),q.exit().remove(),q.each(function(H){var X=yo.select(this),oe=k[H[0]].marker,te=f(void 0,oe.line,Dd,B0);X.attr("d",H[1]).style("stroke-width",te+"px").call(Vl.fill,oe.color),te&&X.call(Vl.stroke,oe.line.color)})}function d(M){y(M,this)}function p(M){y(M,this,"funnel")}function y(M,k,F){var I=M[0].trace,O=I.marker||{},q=O.line||{},H=O.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",X=F?I.visible&&I.type===F:zw.traceIs(I,"bar"),oe=yo.select(k).select("g.legendpoints").selectAll("path.legend"+F).data(X?[M]:[]);oe.enter().append("path").classed("legend"+F,!0).attr("d",H).attr("transform",s),oe.exit().remove(),oe.each(function(te){var Q=yo.select(this),Z=te[0],J=f(Z.mlw,O.line,Dd,B0);Q.style("stroke-width",J+"px");var le=Z.mcc;if(!a._inHover&&"mc"in Z){var ce=Gw(O),De=ce.mid;De===void 0&&(De=(ce.max+ce.min)/2),le=wl.tryColorscale(O,"")(De)}var Be=le||Z.mc||O.color,Ee=O.pattern,Xe=wl.getPatternAttr,Ae=Ee&&(Xe(Ee.shape,0,"")||Xe(Ee.path,0,""));if(Ae){var rr=Xe(Ee.bgcolor,0,null),ze=Xe(Ee.fgcolor,0,null),We=Ee.fgopacity,$e=Cq(Ee.size,8,10),Ue=Cq(Ee.solidity,.5,1),ee="legend-"+I.uid;Q.call(wl.pattern,"legend",t,ee,Ae,$e,Ue,le,Ee.fillmode,rr,ze,We)}else Q.call(Vl.fill,Be);J&&Vl.stroke(Q,Z.mlc||q.color)})}function m(M){var k=M[0].trace,F=yo.select(this).select("g.legendpoints").selectAll("path.legendbox").data(k.visible&&zw.traceIs(k,"box-violin")?[M]:[]);F.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),F.exit().remove(),F.each(function(){var I=yo.select(this);if((k.boxpoints==="all"||k.points==="all")&&Vl.opacity(k.fillcolor)===0&&Vl.opacity((k.line||{}).color)===0){var O=to.minExtend(k,{marker:{size:i?Sq:to.constrain(k.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});F.call(wl.pointStyle,O,t)}else{var q=f(void 0,k.line,Dd,B0);I.style("stroke-width",q+"px").call(Vl.fill,k.fillcolor),q&&Vl.stroke(I,k.line.color)}})}function b(M){var k=M[0].trace,F=yo.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(k.visible&&k.type==="candlestick"?[M,M]:[]);F.enter().append("path").classed("legendcandle",!0).attr("d",function(I,O){return O?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",s).style("stroke-miterlimit",1),F.exit().remove(),F.each(function(I,O){var q=yo.select(this),H=k[O?"increasing":"decreasing"],X=f(void 0,H.line,Dd,B0);q.style("stroke-width",X+"px").call(Vl.fill,H.fillcolor),X&&Vl.stroke(q,H.line.color)})}function A(M){var k=M[0].trace,F=yo.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(k.visible&&k.type==="ohlc"?[M,M]:[]);F.enter().append("path").classed("legendohlc",!0).attr("d",function(I,O){return O?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",s).style("stroke-miterlimit",1),F.exit().remove(),F.each(function(I,O){var q=yo.select(this),H=k[O?"increasing":"decreasing"],X=f(void 0,H.line,Dd,B0);q.style("fill","none").call(wl.dashLine,H.line.dash,X),X&&Vl.stroke(q,H.line.color)})}function _(M){T(M,this,"pie")}function x(M){T(M,this,"funnelarea")}function T(M,k,F){var I=M[0],O=I.trace,q=F?O.visible&&O.type===F:zw.traceIs(O,F),H=yo.select(k).select("g.legendpoints").selectAll("path.legend"+F).data(q?[M]:[]);if(H.enter().append("path").classed("legend"+F,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),H.exit().remove(),H.size()){var X=O.marker||{},oe=f(Tve(X.line.width,I.pts),X.line,Dd,B0),te="pieLike",Q=to.minExtend(O,{marker:{line:{width:oe}}},te),Z=to.minExtend(I,{trace:Q},te);Ave(H,Z,Q,t)}}function E(M){var k=M[0].trace,F,I=[];if(k.visible)switch(k.type){case"histogram2d":case"heatmap":I=[["M-15,-2V4H15V-2Z"]],F=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":I=[["M-6,-6V6H6V-6Z"]],F=!0;break;case"densitymapbox":case"densitymap":I=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],F="radial";break;case"cone":I=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],F=!1;break;case"streamtube":I=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],F=!1;break;case"surface":I=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],F=!0;break;case"mesh3d":I=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],F=!1;break;case"volume":I=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],F=!0;break;case"isosurface":I=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],F=!1;break}var O=yo.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(I);O.enter().append("path").classed("legend3dandfriends",!0).attr("transform",s).style("stroke-miterlimit",1),O.exit().remove(),O.each(function(q,H){var X=yo.select(this),oe=Gw(k),te=oe.colorscale,Q=oe.reversescale,Z=function(De){if(De.size()){var Be="legendfill-"+k.uid;wl.gradient(De,t,Be,Uw(Q,F==="radial"),te,"fill")}},J;if(te){if(!F){var ce=te.length;J=H===0?te[Q?ce-1:0][1]:H===1?te[Q?0:ce-1][1]:te[Math.floor((ce-1)/2)][1]}}else{var le=k.vertexcolor||k.facecolor||k.color;J=to.isArrayOrTypedArray(le)?le[H]||le[0]:le}X.attr("d",q[0]),J?X.call(Vl.fill,J):X.call(Z)})}};function Uw(e,r){var t=r?"radial":"horizontal";return t+(e?"":"reversed")}function kq(e){var r=e[0].trace,t=r.contours,a=o3.hasLines(r),n=o3.hasMarkers(r),i=r.visible&&r.fill&&r.fill!=="none",o=!1,l=!1;if(t){var s=t.coloring;s==="lines"?o=!0:a=s==="none"||s==="heatmap"||t.showlines,t.type==="constraint"?i=t._operation!=="=":(s==="fill"||s==="heatmap")&&(l=!0)}return{showMarker:n,showLine:a,showFill:i,showGradientLine:o,showGradientFill:l,anyLine:a||o,anyFill:i||l}}function Cq(e,r,t){return e&&to.isArrayOrTypedArray(e)?r:e>t?t:e}});var jw=P((SLe,zq)=>{"use strict";var $o=da(),ti=Ur(),Yw=xi(),Rd=Bt(),Dq=Q1(),Vw=Ns(),ai=Ha(),s3=ha(),z0=po(),Fq=hq(),ui=Iw(),Ww=ho(),Oq=Ww.LINE_SPACING,qd=Ww.FROM_TL,qq=Ww.FROM_BR,Rq=yq(),Eve=Hw(),Pq=n3(),Fd=1,kve=/^legend[0-9]*$/;zq.exports=function(r,t){if(t)Nq(r,t);else{var a=r._fullLayout,n=a._legends,i=a._infolayer.selectAll('[class^="legend"]');i.each(function(){var f=$o.select(this),u=f.attr("class"),c=u.split(" ")[0];c.match(kve)&&n.indexOf(c)===-1&&f.remove()});for(var o=0;o1)}var p=a.hiddenlabels||[];if(!l&&(!a.showlegend||!s.length))return o.selectAll("."+n).remove(),a._topdefs.select("#"+i).remove(),Yw.autoMargin(e,n);var y=ti.ensureSingle(o,"g",n,function(k){l||k.attr("pointer-events","all")}),m=ti.ensureSingleById(a._topdefs,"clipPath",i,function(k){k.append("rect")}),b=ti.ensureSingle(y,"rect","bg",function(k){k.attr("shape-rendering","crispEdges")});b.call(s3.stroke,t.bordercolor).call(s3.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px");var A=ti.ensureSingle(y,"g","scrollbox"),_=t.title;t._titleWidth=0,t._titleHeight=0;var x;_.text?(x=ti.ensureSingle(A,"text",n+"titletext"),x.attr("text-anchor","start").call(ai.font,_.font).text(_.text),f3(x,A,e,t,Fd)):A.selectAll("."+n+"titletext").remove();var T=ti.ensureSingle(y,"rect","scrollbar",function(k){k.attr(ui.scrollBarEnterAttrs).call(s3.fill,ui.scrollBarColor)}),E=A.selectAll("g.groups").data(s);E.enter().append("g").attr("class","groups"),E.exit().remove();var M=E.selectAll("g.traces").data(ti.identity);M.enter().append("g").attr("class","traces"),M.exit().remove(),M.style("opacity",function(k){var F=k[0].trace;return Rd.traceIs(F,"pie-like")?p.indexOf(k[0].label)!==-1?.5:1:F.visible==="legendonly"?.5:1}).each(function(){$o.select(this).call(Lve,e,t)}).call(Eve,e,t).each(function(){l||$o.select(this).call(Dve,e,n)}),ti.syncOrAsync([Yw.previousPromises,function(){return Rve(e,E,M,t)},function(){var k=a._size,F=t.borderwidth,I=t.xref==="paper",O=t.yref==="paper";if(_.text&&Cve(x,t,F),!l){var q,H;I?q=k.l+k.w*t.x-qd[u3(t)]*t._width:q=a.width*t.x-qd[u3(t)]*t._width,O?H=k.t+k.h*(1-t.y)-qd[c3(t)]*t._effHeight:H=a.height*(1-t.y)-qd[c3(t)]*t._effHeight;var X=Pve(e,n,q,H);if(X)return;if(a.margin.autoexpand){var oe=q,te=H;q=I?ti.constrain(q,0,a.width-t._width):oe,H=O?ti.constrain(H,0,a.height-t._effHeight):te,q!==oe&&ti.log("Constrain "+n+".x to make legend fit inside graph"),H!==te&&ti.log("Constrain "+n+".y to make legend fit inside graph")}ai.setTranslate(y,q,H)}if(T.on(".drag",null),y.on("wheel",null),l||t._height<=t._maxHeight||e._context.staticPlot){var Q=t._effHeight;l&&(Q=t._height),b.attr({width:t._width-F,height:Q-F,x:F/2,y:F/2}),ai.setTranslate(A,0,0),m.select("rect").attr({width:t._width-2*F,height:Q-2*F,x:F,y:F}),ai.setClipUrl(A,i,e),ai.setRect(T,0,0,0,0),delete t._scrollY}else{var Z=Math.max(ui.scrollBarMinHeight,t._effHeight*t._effHeight/t._height),J=t._effHeight-Z-2*ui.scrollBarMargin,le=t._height-t._effHeight,ce=J/le,De=Math.min(t._scrollY||0,le);b.attr({width:t._width-2*F+ui.scrollBarWidth+ui.scrollBarMargin,height:t._effHeight-F,x:F/2,y:F/2}),m.select("rect").attr({width:t._width-2*F+ui.scrollBarWidth+ui.scrollBarMargin,height:t._effHeight-2*F,x:F,y:F+De}),ai.setClipUrl(A,i,e),$e(De,Z,ce),y.on("wheel",function(){De=ti.constrain(t._scrollY+$o.event.deltaY/le*J,0,le),$e(De,Z,ce),De!==0&&De!==le&&$o.event.preventDefault()});var Be,Ee,Xe,Ae=function(je,ur,er){var Lr=(er-ur)/ce+je;return ti.constrain(Lr,0,le)},rr=function(je,ur,er){var Lr=(ur-er)/ce+je;return ti.constrain(Lr,0,le)},ze=$o.behavior.drag().on("dragstart",function(){var je=$o.event.sourceEvent;je.type==="touchstart"?Be=je.changedTouches[0].clientY:Be=je.clientY,Xe=De}).on("drag",function(){var je=$o.event.sourceEvent;je.buttons===2||je.ctrlKey||(je.type==="touchmove"?Ee=je.changedTouches[0].clientY:Ee=je.clientY,De=Ae(Xe,Be,Ee),$e(De,Z,ce))});T.call(ze);var We=$o.behavior.drag().on("dragstart",function(){var je=$o.event.sourceEvent;je.type==="touchstart"&&(Be=je.changedTouches[0].clientY,Xe=De)}).on("drag",function(){var je=$o.event.sourceEvent;je.type==="touchmove"&&(Ee=je.changedTouches[0].clientY,De=rr(Xe,Be,Ee),$e(De,Z,ce))});A.call(We)}function $e(je,ur,er){t._scrollY=e._fullLayout[n]._scrollY=je,ai.setTranslate(A,0,-je),ai.setRect(T,t._width,ui.scrollBarMargin+je*er,ui.scrollBarWidth,ur),m.select("rect").attr("y",F+je)}if(e._context.edits.legendPosition){var Ue,ee,de,ae;y.classed("cursor-move",!0),Vw.init({element:y.node(),gd:e,prepFn:function(je){if(je.target!==T.node()){var ur=ai.getTranslate(y);de=ur.x,ae=ur.y}},moveFn:function(je,ur){if(de!==void 0&&ae!==void 0){var er=de+je,Lr=ae+ur;ai.setTranslate(y,er,Lr),Ue=Vw.align(er,t._width,k.l,k.l+k.w,t.xanchor),ee=Vw.align(Lr+t._height,-t._height,k.t+k.h,k.t,t.yanchor)}},doneFn:function(){if(Ue!==void 0&&ee!==void 0){var je={};je[n+".x"]=Ue,je[n+".y"]=ee,Rd.call("_guiRelayout",e,je)}},clickFn:function(je,ur){var er=o.selectAll("g.traces").filter(function(){var Lr=this.getBoundingClientRect();return ur.clientX>=Lr.left&&ur.clientX<=Lr.right&&ur.clientY>=Lr.top&&ur.clientY<=Lr.bottom});er.size()>0&&Bq(e,y,er,je,ur)}})}}],e)}}function l3(e,r,t){var a=e[0],n=a.width,i=r.entrywidthmode,o=a.trace.legendwidth||r.entrywidth;return i==="fraction"?r._maxWidth*o:t+(o||n)}function Bq(e,r,t,a,n){var i=t.data()[0][0].trace,o={event:n,node:t.node(),curveNumber:i.index,expandedIndex:i.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};i._group&&(o.group=i._group),Rd.traceIs(i,"pie-like")&&(o.label=t.datum()[0].label);var l=Dq.triggerHandler(e,"plotly_legendclick",o);if(a===1){if(l===!1)return;r._clickTimeout=setTimeout(function(){e._fullLayout&&Fq(t,e,a)},e._context.doubleClickDelay)}else if(a===2){r._clickTimeout&&clearTimeout(r._clickTimeout),e._legendMouseDownTime=0;var s=Dq.triggerHandler(e,"plotly_legenddoubleclick",o);s!==!1&&l!==!1&&Fq(t,e,a)}}function Lve(e,r,t){var a=v3(t),n=e.data()[0][0],i=n.trace,o=Rd.traceIs(i,"pie-like"),l=!t._inHover&&r._context.edits.legendText&&!o,s=t._maxNameLength,f,u;n.groupTitle?(f=n.groupTitle.text,u=n.groupTitle.font):(u=t.font,t.entries?f=n.text:(f=o?n.label:i.name,i._meta&&(f=ti.templateString(f,i._meta))));var c=ti.ensureSingle(e,"text",a+"text");c.attr("text-anchor","start").call(ai.font,u).text(l?Iq(f,s):f);var v=t.indentation+t.itemwidth+ui.itemGap*2;z0.positionText(c,v,0),l?c.call(z0.makeEditable,{gd:r,text:f}).call(f3,e,r,t).on("edit",function(d){this.text(Iq(d,s)).call(f3,e,r,t);var p=n.trace._fullInput||{},y={};return y.name=d,p._isShape?Rd.call("_guiRelayout",r,"shapes["+i.index+"].name",y.name):Rd.call("_guiRestyle",r,y,i.index)}):f3(c,e,r,t)}function Iq(e,r){var t=Math.max(4,r);if(e&&e.trim().length>=t/2)return e;e=e||"";for(var a=t-e.length;a>0;a--)e+=" ";return e}function Dve(e,r,t){var a=r._context.doubleClickDelay,n,i=1,o=ti.ensureSingle(e,"rect",t+"toggle",function(l){r._context.staticPlot||l.style("cursor","pointer").attr("pointer-events","all"),l.call(s3.fill,"rgba(0,0,0,0)")});r._context.staticPlot||(o.on("mousedown",function(){n=new Date().getTime(),n-r._legendMouseDownTimea&&(i=Math.max(i-1,1)),Bq(r,l,e,i,$o.event)}}))}function f3(e,r,t,a,n){a._inHover&&e.attr("data-notex",!0),z0.convertToTspans(e,t,function(){Fve(r,t,a,n)})}function Fve(e,r,t,a){var n=e.data()[0][0];if(!t._inHover&&n&&!n.trace.showlegend){e.remove();return}var i=e.select("g[class*=math-group]"),o=i.node(),l=v3(t);t||(t=r._fullLayout[l]);var s=t.borderwidth,f;a===Fd?f=t.title.font:n.groupTitle?f=n.groupTitle.font:f=t.font;var u=f.size*Oq,c,v;if(o){var d=ai.bBox(o);c=d.height,v=d.width,a===Fd?ai.setTranslate(i,s,s+c*.75):ai.setTranslate(i,0,c*.25)}else{var p="."+l+(a===Fd?"title":"")+"text",y=e.select(p),m=z0.lineCount(y),b=y.node();if(c=u*m,v=b?ai.bBox(b).width:0,a===Fd)t.title.side==="left"&&(v+=ui.itemGap*2),z0.positionText(y,s+ui.titlePad,s+u);else{var A=ui.itemGap*2+t.indentation+t.itemwidth;n.groupTitle&&(A=ui.itemGap,v-=t.indentation+t.itemwidth),z0.positionText(y,A,-u*((m-1)/2-.3))}}a===Fd?(t._titleWidth=v,t._titleHeight=c):(n.lineHeight=u,n.height=Math.max(c,16)+3,n.width=v)}function qve(e){var r=0,t=0,a=e.title.side;return a&&(a.indexOf("left")!==-1&&(r=e._titleWidth),a.indexOf("top")!==-1&&(t=e._titleHeight)),[r,t]}function Rve(e,r,t,a){var n=e._fullLayout,i=v3(a);a||(a=n[i]);var o=n._size,l=Pq.isVertical(a),s=Pq.isGrouped(a),f=a.entrywidthmode==="fraction",u=a.borderwidth,c=2*u,v=ui.itemGap,d=a.indentation+a.itemwidth+v*2,p=2*(u+v),y=c3(a),m=a.y<0||a.y===0&&y==="top",b=a.y>1||a.y===1&&y==="bottom",A=a.tracegroupgap,_={};let{orientation:x,yref:T}=a,{maxheight:E}=a,M=m||b||x!=="v"||T!=="paper";E||(E=M?.5:1);let k=M?n.height:o.h;a._maxHeight=Math.max(E>1?E:E*k,30);var F=0;a._width=0,a._height=0;var I=qve(a);if(l)t.each(function($e){var Ue=$e[0].height;ai.setTranslate(this,u+I[0],u+I[1]+a._height+Ue/2+v),a._height+=Ue,a._width=Math.max(a._width,$e[0].width)}),F=d+a._width,a._width+=v+d+c,a._height+=p,s&&(r.each(function($e,Ue){ai.setTranslate(this,0,Ue*a.tracegroupgap)}),a._height+=(a._lgroupsLength-1)*a.tracegroupgap);else{var O=u3(a),q=a.x<0||a.x===0&&O==="right",H=a.x>1||a.x===1&&O==="left",X=b||m,oe=n.width/2;a._maxWidth=Math.max(q?X&&O==="left"?o.l+o.w:oe:H?X&&O==="right"?o.r+o.w:oe:o.w,2*d);var te=0,Q=0;t.each(function($e){var Ue=l3($e,a,d);te=Math.max(te,Ue),Q+=Ue}),F=null;var Z=0;if(s){var J=0,le=0,ce=0;r.each(function(){var $e=0,Ue=0;$o.select(this).selectAll("g.traces").each(function(de){var ae=l3(de,a,d),je=de[0].height;ai.setTranslate(this,I[0],I[1]+u+v+je/2+Ue),Ue+=je,$e=Math.max($e,ae),_[de[0].trace.legendgroup]=$e});var ee=$e+v;le>0&&ee+u+le>a._maxWidth?(Z=Math.max(Z,le),le=0,ce+=J+A,J=Ue):J=Math.max(J,Ue),ai.setTranslate(this,le,ce),le+=ee}),a._width=Math.max(Z,le)+u,a._height=ce+J+p}else{var De=t.size(),Be=Q+c+(De-1)*v=a._maxWidth&&(Z=Math.max(Z,rr),Xe=0,Ae+=Ee,a._height+=Ee,Ee=0),ai.setTranslate(this,I[0]+u+Xe,I[1]+u+Ae+Ue/2+v),rr=Xe+ee+v,Xe+=de,Ee=Math.max(Ee,Ue)}),Be?(a._width=Xe+c,a._height=Ee+p):(a._width=Math.max(Z,rr)+c,a._height+=Ee+p)}}a._width=Math.ceil(Math.max(a._width+I[0],a._titleWidth+2*(u+ui.titlePad))),a._height=Math.ceil(Math.max(a._height+I[1],a._titleHeight+2*(u+ui.itemGap))),a._effHeight=Math.min(a._height,a._maxHeight);var ze=e._context.edits,We=ze.legendText||ze.legendPosition;t.each(function($e){var Ue=$o.select(this).select("."+i+"toggle"),ee=$e[0].height,de=$e[0].trace.legendgroup,ae=l3($e,a,d);s&&de!==""&&(ae=_[de]);var je=We?d:F||ae;!l&&!f&&(je+=v/2),ai.setRect(Ue,0,-ee/2,je,ee)})}function Pve(e,r,t,a){var n=e._fullLayout,i=n[r],o=u3(i),l=c3(i),s=i.xref==="paper",f=i.yref==="paper";e._fullLayout._reservedMargin[r]={};var u=i.y<.5?"b":"t",c=i.x<.5?"l":"r",v={r:n.width-t,l:t+i._width,b:n.height-a,t:a+i._effHeight};if(s&&f)return Yw.autoMargin(e,r,{x:i.x,y:i.y,l:i._width*qd[o],r:i._width*qq[o],b:i._effHeight*qq[l],t:i._effHeight*qd[l]});s?e._fullLayout._reservedMargin[r][u]=v[u]:f||i.orientation==="v"?e._fullLayout._reservedMargin[r][c]=v[c]:e._fullLayout._reservedMargin[r][u]=v[u]}function u3(e){return ti.isRightAnchor(e)?"right":ti.isCenterAnchor(e)?"center":"left"}function c3(e){return ti.isBottomAnchor(e)?"bottom":ti.isMiddleAnchor(e)?"middle":"top"}function v3(e){return e._id||"legend"}});var $w=P(Jw=>{"use strict";var G0=da(),Du=ba(),Gq=ks(),qn=Ur(),Nve=qn.pushUnique,Xw=qn.strTranslate,Ive=qn.strRotate,Ove=Q1(),Yl=po(),Bve=fq(),Lf=Ha(),wi=ha(),h3=Ns(),Df=yn(),zve=qi().zindexSeparator,Nd=Bt(),Is=Cu(),U0=z1(),Gve=Rw(),Uve=jw(),Zq=U0.YANGLE,Zw=Math.PI*Zq/180,Hve=1/Math.sin(Zw),Vve=Math.cos(Zw),Yve=Math.sin(Zw),gn=U0.HOVERARROWSIZE,ua=U0.HOVERTEXTPAD,Uq={box:!0,ohlc:!0,violin:!0,candlestick:!0},Wve={scatter:!0,scattergl:!0,splom:!0};function Hq(e,r){return e.distance-r.distance}Jw.hover=function(r,t,a,n){r=qn.getGraphDiv(r);var i=t.target;qn.throttle(r._fullLayout._uid+U0.HOVERID,U0.HOVERMINTIME,function(){jve(r,t,a,n,i)})};Jw.loneHover=function(r,t){var a=!0;Array.isArray(r)||(a=!1,r=[r]);var n=t.gd,i=eR(n),o=rR(n),l=r.map(function(m){var b=m._x0||m.x0||m.x||0,A=m._x1||m.x1||m.x||0,_=m._y0||m.y0||m.y||0,x=m._y1||m.y1||m.y||0,T=m.eventData;if(T){var E=Math.min(b,A),M=Math.max(b,A),k=Math.min(_,x),F=Math.max(_,x),I=m.trace;if(Nd.traceIs(I,"gl3d")){var O=n._fullLayout[I.scene]._scene.container,q=O.offsetLeft,H=O.offsetTop;E+=q,M+=q,k+=H,F+=H}T.bbox={x0:E+o,x1:M+o,y0:k+i,y1:F+i},t.inOut_bbox&&t.inOut_bbox.push(T.bbox)}else T=!1;return{color:m.color||wi.defaultLine,x0:m.x0||m.x||0,x1:m.x1||m.x||0,y0:m.y0||m.y||0,y1:m.y1||m.y||0,xLabel:m.xLabel,yLabel:m.yLabel,zLabel:m.zLabel,text:m.text,name:m.name,idealAlign:m.idealAlign,borderColor:m.borderColor,fontFamily:m.fontFamily,fontSize:m.fontSize,fontColor:m.fontColor,fontWeight:m.fontWeight,fontStyle:m.fontStyle,fontVariant:m.fontVariant,nameLength:m.nameLength,textAlign:m.textAlign,trace:m.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:m.hovertemplate||!1,hovertemplateLabels:m.hovertemplateLabels||!1,eventData:T}}),s=!1,f=$q(l,{gd:n,hovermode:"closest",rotateLabels:s,bgColor:t.bgColor||wi.background,container:G0.select(t.container),outerContainer:t.outerContainer||t.container}),u=f.hoverLabels,c=5,v=0,d=0;u.sort(function(m,b){return m.y0-b.y0}).each(function(m,b){var A=m.y0-m.by/2;A-cM[0]._length||ae<0||ae>k[0]._length)return h3.unhoverRaw(e,r)}if(r.pointerX=de+M[0]._offset,r.pointerY=ae+k[0]._offset,"xval"in r?te=Is.flat(i,r.xval):te=Is.p2c(M,de),"yval"in r?Q=Is.flat(i,r.yval):Q=Is.p2c(k,ae),!Du(te[0])||!Du(Q[0]))return qn.warn("Fx.hover failed",r,e),h3.unhoverRaw(e,r)}var er=1/0;function Lr(Et,Pa){for(J=0;Jze&&(X.splice(0,ze),er=X[0].distance),c&&H!==0&&X.length===0){rr.distance=H,rr.index=!1;var fa=ce._module.hoverPoints(rr,Xe,Ae,"closest",{hoverLayer:l._hoverlayer});if(fa&&(fa=fa.filter(function(dn){return dn.spikeDistance<=H})),fa&&fa.length){var Tn,Ka=fa.filter(function(dn){return dn.xa.showspikes&&dn.xa.spikesnap!=="hovered data"});if(Ka.length){var en=Ka[0];Du(en.x0)&&Du(en.y0)&&(Tn=_r(en),(!We.vLinePoint||We.vLinePoint.spikeDistance>Tn.spikeDistance)&&(We.vLinePoint=Tn))}var lo=fa.filter(function(dn){return dn.ya.showspikes&&dn.ya.spikesnap!=="hovered data"});if(lo.length){var Oi=lo[0];Du(Oi.x0)&&Du(Oi.y0)&&(Tn=_r(Oi),(!We.hLinePoint||We.hLinePoint.spikeDistance>Tn.spikeDistance)&&(We.hLinePoint=Tn))}}}}}Lr();function Pr(Et,Pa,ia){for(var Ia=null,$a=1/0,Qa,fa=0;faEt.trace.index===tr.trace.index):X=[tr];var cr=X.length,Hr=Xq("x",tr,l),ot=Xq("y",tr,l);Lr(Hr,ot);var jr=[],at={},xt=0,Xr=function(Et){var Pa=Uq[Et.trace.type]?Jq(Et):Et.trace.index;if(!at[Pa])xt++,at[Pa]=xt,jr.push(Et);else{var ia=at[Pa]-1,Ia=jr[ia];ia>0&&Math.abs(Et.distance)cr-1;nt--)Xr(X[nt]);X=jr,wr()}var gr=e._hoverdata,Se=[],Ne=eR(e),pr=rR(e);for(let Et of X){var xr=Is.makeEventData(Et,Et.trace,Et.cd);if(Et.hovertemplate!==!1){var ht=!1;Et.cd[Et.index]&&Et.cd[Et.index].ht&&(ht=Et.cd[Et.index].ht),Et.hovertemplate=ht||Et.trace.hovertemplate||!1}if(Et.xa&&Et.ya){var Tt=Et.x0+Et.xa._offset,wt=Et.x1+Et.xa._offset,It=Et.y0+Et.ya._offset,ta=Et.y1+Et.ya._offset,Ma=Math.min(Tt,wt),Ba=Math.max(Tt,wt),an=Math.min(It,ta),Va=Math.max(It,ta);xr.bbox={x0:Ma+pr,x1:Ba+pr,y0:an+Ne,y1:Va+Ne}}Et.eventData=[xr],Se.push(xr)}e._hoverdata=Se;var xn=v==="y"&&(oe.length>1||X.length>1)||v==="closest"&&$e&&X.length>1,Rn=wi.combine(l.plot_bgcolor||wi.background,l.paper_bgcolor),hi=$q(X,{gd:e,hovermode:v,rotateLabels:xn,bgColor:Rn,container:l._hoverlayer,outerContainer:l._paper.node(),commonLabelOpts:l.hoverlabel,hoverdistance:l.hoverdistance}),hn=hi.hoverLabels;if(Is.isUnifiedHover(v)||(Zve(hn,xn,l,hi.commonLabelBoundingBox),Kq(hn,xn,l._invScaleX,l._invScaleY)),n&&n.tagName){var Xn=Nd.getComponentMethod("annotations","hasClickToShow")(e,Se);Bve(G0.select(n),Xn?"pointer":"")}!n||a||!Qve(e,r,gr)||(gr&&e.emit("plotly_unhover",{event:r,points:gr}),e.emit("plotly_hover",{event:r,points:e._hoverdata,xaxes:M,yaxes:k,xvals:te,yvals:Q}))}function Jq(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var Xve=/([\s\S]*)<\/extra>/;function $q(e,r){var t=r.gd,a=t._fullLayout,n=r.hovermode,i=r.rotateLabels,o=r.bgColor,l=r.container,s=r.outerContainer,f=r.commonLabelOpts||{};if(e.length===0)return[[]];var u=r.fontFamily||U0.HOVERFONT,c=r.fontSize||U0.HOVERFONTSIZE,v=r.fontWeight||a.font.weight,d=r.fontStyle||a.font.style,p=r.fontVariant||a.font.variant,y=r.fontTextcase||a.font.textcase,m=r.fontLineposition||a.font.lineposition,b=r.fontShadow||a.font.shadow,A=e[0],_=A.xa,x=A.ya,T=n.charAt(0),E=T+"Label",M=A[E];if(M===void 0&&_.type==="multicategory")for(var k=0;ka.width-Ne&&(pr=a.width-Ne),tr.attr("d","M"+(nt-pr)+",0L"+(nt-pr+gn)+","+Se+gn+"H"+Ne+"v"+Se+(ua*2+Xr.height)+"H"+-Ne+"V"+Se+gn+"H"+(nt-pr-gn)+"Z"),nt=pr,J.minX=nt-Ne,J.maxX=nt+Ne,_.side==="top"?(J.minY=gr-(ua*2+Xr.height),J.maxY=gr-ua):(J.minY=gr+ua,J.maxY=gr+(ua*2+Xr.height))}else{var xr,ht,Tt;x.side==="right"?(xr="start",ht=1,Tt="",nt=_._offset+_._length):(xr="end",ht=-1,Tt="-",nt=_._offset),gr=x._offset+(A.y0+A.y1)/2,cr.attr("text-anchor",xr),tr.attr("d","M0,0L"+Tt+gn+","+gn+"V"+(ua+Xr.height/2)+"h"+Tt+(ua*2+Xr.width)+"V-"+(ua+Xr.height/2)+"H"+Tt+gn+"V-"+gn+"Z"),J.minY=gr-(ua+Xr.height/2),J.maxY=gr+(ua+Xr.height/2),x.side==="right"?(J.minX=nt+gn,J.maxX=nt+gn+(ua*2+Xr.width)):(J.minX=nt-gn-(ua*2+Xr.width),J.maxX=nt-gn);var wt=Xr.height/2,It=I-Xr.top-wt,ta="clip"+a._uid+"commonlabel"+x._id,Ma;if(nttr.hoverinfo!=="none");if(Ar.length===0)return[];var le=a.hoverlabel,ce=le.font,De=Ar[0],Be=((n==="x unified"?De.xa:De.ya).unifiedhovertitle||{}).text,Ee=Be?qn.hovertemplateString({data:n==="x unified"?[{xa:De.xa,x:De.xVal}]:[{ya:De.ya,y:De.yVal}],fallback:De.trace.hovertemplatefallback,locale:a._d3locale,template:Be}):M,Xe={showlegend:!0,legend:{title:{text:Ee,font:ce},font:ce,bgcolor:le.bgcolor,bordercolor:le.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:a.legend?a.legend.traceorder:void 0,orientation:"v"}},Ae={font:ce};Gve(Xe,Ae,t._fullData);var rr=Ae.legend;rr.entries=[];for(var ze=0;ze=0?lr=wr:Vr+ur=0?lr=Vr:Wr+ur=0?st=Yr:Kr+er=0?st=Kr:Re+er=0,(Ar.idealAlign==="top"||!Va)&&xn?(Tt-=It/2,Ar.anchor="end"):Va?(Tt+=It/2,Ar.anchor="start"):Ar.anchor="middle",Ar.crossPos=Tt;else{if(Ar.pos=Tt,Va=ht+wt/2+an<=O,xn=ht-wt/2-an>=0,(Ar.idealAlign==="left"||!Va)&&xn)ht-=wt/2,Ar.anchor="end";else if(Va)ht+=wt/2,Ar.anchor="start";else{Ar.anchor="middle";var Rn=an/2,hi=ht+Rn-O,hn=ht-Rn;hi>0&&(ht-=hi),hn<0&&(ht+=-hn)}Ar.crossPos=ht}gr.attr("text-anchor",Ar.anchor),Ne&&Se.attr("text-anchor",Ar.anchor),tr.attr("transform",Xw(ht,Tt)+(i?Ive(Zq):""))}),{hoverLabels:kt,commonLabelBoundingBox:J}}function Vq(e,r,t,a,n,i){var c,v;var o="",l="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=qn.templateString(e.name,e.trace._meta)),o=jq(e.name,e.nameLength));var s=t.charAt(0),f=s==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(l+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(l+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(l+=(l?"z: ":"")+e.zLabel)):r&&e[s+"Label"]===n?l=e[f+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(l=e.yLabel):e.yLabel===void 0?l=e.xLabel:l="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(l+=(l?"
":"")+e.text),e.extraText!==void 0&&(l+=(l?"
":"")+e.extraText),i&&l===""&&!e.hovertemplate&&(o===""&&i.remove(),l=o),(v=(c=e.trace)==null?void 0:c.hoverlabel)!=null&&v.split&&(e.hovertemplate="");let{hovertemplate:u=!1}=e;if(u){let d=e.hovertemplateLabels||e;e[s+"Label"]!==n&&(d[s+"other"]=d[s+"Val"],d[s+"otherLabel"]=d[s+"Label"]),l=qn.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:a._d3locale,template:u}),l=l.replace(Xve,(p,y)=>(o=jq(y,e.nameLength),""))}return[l,o]}function Zve(e,r,t,a){var n=r?"xa":"ya",i=r?"ya":"xa",o=0,l=1,s=e.size(),f=new Array(s),u=0,c=a.minX,v=a.maxX,d=a.minY,p=a.maxY,y=function(te){return te*t._invScaleX},m=function(te){return te*t._invScaleY};e.each(function(te){var Q=te[n],Z=te[i],J=Q._id.charAt(0)==="x",le=Q.range;u===0&&le&&le[0]>le[1]!==J&&(l=-1);var ce=0,De=J?t.width:t.height;if(t.hovermode==="x"||t.hovermode==="y"){var Be=Qq(te,r),Ee=te.anchor,Xe=Ee==="end"?-1:1,Ae,rr;if(Ee==="middle")Ae=te.crossPos+(J?m(Be.y-te.by/2):y(te.bx/2+te.tx2width/2)),rr=Ae+(J?m(te.by):y(te.bx));else if(J)Ae=te.crossPos+m(gn+Be.y)-m(te.by/2-gn),rr=Ae+m(te.by);else{var ze=y(Xe*gn+Be.x),We=ze+y(Xe*te.bx);Ae=te.crossPos+Math.min(ze,We),rr=te.crossPos+Math.max(ze,We)}J?d!==void 0&&p!==void 0&&Math.min(rr,p)-Math.max(Ae,d)>1&&(Z.side==="left"?(ce=Z._mainLinePosition,De=t.width):De=Z._mainLinePosition):c!==void 0&&v!==void 0&&Math.min(rr,v)-Math.max(Ae,c)>1&&(Z.side==="top"?(ce=Z._mainLinePosition,De=t.height):De=Z._mainLinePosition)}f[u++]=[{datum:te,traceIndex:te.trace.index,dp:0,pos:te.pos,posref:te.posref,size:te.by*(J?Hve:1)/2,pmin:ce,pmax:De}]}),f.sort(function(te,Q){return te[0].posref-Q[0].posref||l*(Q[0].traceIndex-te[0].traceIndex)});var b,A,_,x,T,E,M;function k(te){var Q=te[0],Z=te[te.length-1];if(A=Q.pmin-Q.pos-Q.dp+Q.size,_=Z.pos+Z.dp+Z.size-Q.pmax,A>.01){for(T=te.length-1;T>=0;T--)te[T].dp+=A;b=!1}if(!(_<.01)){if(A<-.01){for(T=te.length-1;T>=0;T--)te[T].dp-=_;b=!1}if(b){var J=0;for(x=0;xQ.pmax&&J++;for(x=te.length-1;x>=0&&!(J<=0);x--)E=te[x],E.pos>Q.pmax-1&&(E.del=!0,J--);for(x=0;x=0;T--)te[T].dp-=_;for(x=te.length-1;x>=0&&!(J<=0);x--)E=te[x],E.pos+E.dp+E.size>Q.pmax&&(E.del=!0,J--)}}}for(;!b&&o<=s;){for(o++,b=!0,x=0;x.01){for(T=I.length-1;T>=0;T--)I[T].dp+=A;for(F.push.apply(F,I),f.splice(x+1,1),M=0,T=F.length-1;T>=0;T--)M+=F[T].dp;for(_=M/F.length,T=F.length-1;T>=0;T--)F[T].dp-=_;b=!1}else x++}f.forEach(k)}for(x=f.length-1;x>=0;x--){var H=f[x];for(T=H.length-1;T>=0;T--){var X=H[T],oe=X.datum;oe.offset=X.dp,oe.del=X.del}}}function Qq(e,r){var t=0,a=e.offset;return r&&(a*=-Yve,t=e.offset*Vve),{x:t,y:a}}function Jve(e){var r={start:1,end:-1,middle:0}[e.anchor],t=r*(gn+ua),a=t+r*(e.txwidth+ua),n=e.anchor==="middle";return n&&(t-=e.tx2width/2,a+=e.txwidth/2+ua),{alignShift:r,textShiftX:t,text2ShiftX:a}}function Kq(e,r,t,a){var n=function(o){return o*t},i=function(o){return o*a};e.each(function(o){var l=G0.select(this);if(o.del)return l.remove();var s=l.select("text.nums"),f=o.anchor,u=f==="end"?-1:1,c=Jve(o),v=Qq(o,r),d=v.x,p=v.y,y=f==="middle",m="hoverlabel"in o.trace?o.trace.hoverlabel.showarrow:!0,b;y?b="M-"+n(o.bx/2+o.tx2width/2)+","+i(p-o.by/2)+"h"+n(o.bx)+"v"+i(o.by)+"h-"+n(o.bx)+"Z":m?b="M0,0L"+n(u*gn+d)+","+i(gn+p)+"v"+i(o.by/2-gn)+"h"+n(u*o.bx)+"v-"+i(o.by)+"H"+n(u*gn+d)+"V"+i(p-gn)+"Z":b="M"+n(u*gn+d)+","+i(p-o.by/2)+"h"+n(u*o.bx)+"v"+i(o.by)+"h"+n(-u*o.bx)+"Z",l.select("path").attr("d",b);var A=d+c.textShiftX,_=p+o.ty0-o.by/2+ua,x=o.textAlign||"auto";x!=="auto"&&(x==="left"&&f!=="start"?(s.attr("text-anchor","start"),A=y?-o.bx/2-o.tx2width/2+ua:-o.bx-ua):x==="right"&&f!=="end"&&(s.attr("text-anchor","end"),A=y?o.bx/2-o.tx2width/2-ua:o.bx+ua)),s.call(Yl.positionText,n(A),i(_)),o.tx2width&&(l.select("text.name").call(Yl.positionText,n(c.text2ShiftX+c.alignShift*ua+d),i(p+o.ty0-o.by/2+ua)),l.select("rect").call(Lf.setRect,n(c.text2ShiftX+(c.alignShift-1)*o.tx2width/2+d),i(p-o.by/2-1),n(o.tx2width),i(o.by+2)))})}function $ve(e,r){var t=e.index,a=e.trace||{},n=e.cd[0],i=e.cd[t]||{};function o(v){return v||Du(v)&&v===0}var l=Array.isArray(t)?function(v,d){var p=qn.castOption(n,t,v);return o(p)?p:qn.extractOption({},a,"",d)}:function(v,d){return qn.extractOption(i,a,v,d)};function s(v,d,p){var y=l(d,p);o(y)&&(e[v]=y)}if(s("hoverinfo","hi","hoverinfo"),s("bgcolor","hbg","hoverlabel.bgcolor"),s("borderColor","hbc","hoverlabel.bordercolor"),s("fontFamily","htf","hoverlabel.font.family"),s("fontSize","hts","hoverlabel.font.size"),s("fontColor","htc","hoverlabel.font.color"),s("fontWeight","htw","hoverlabel.font.weight"),s("fontStyle","hty","hoverlabel.font.style"),s("fontVariant","htv","hoverlabel.font.variant"),s("nameLength","hnl","hoverlabel.namelength"),s("textAlign","hta","hoverlabel.align"),e.posref=r==="y"||r==="closest"&&a.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=qn.constrain(e.x0,0,e.xa._length),e.x1=qn.constrain(e.x1,0,e.xa._length),e.y0=qn.constrain(e.y0,0,e.ya._length),e.y1=qn.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:Df.hoverLabelText(e.xa,e.xLabelVal,a.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:Df.hoverLabelText(e.ya,e.yLabelVal,a.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var f=Df.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+f+" / -"+Df.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+f,r==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var u=Df.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+u+" / -"+Df.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+u,r==="y"&&(e.distance+=1)}var c=e.hoverinfo||e.trace.hoverinfo;return c&&c!=="all"&&(c=Array.isArray(c)?c:c.split("+"),c.indexOf("x")===-1&&(e.xLabel=void 0),c.indexOf("y")===-1&&(e.yLabel=void 0),c.indexOf("z")===-1&&(e.zLabel=void 0),c.indexOf("text")===-1&&(e.text=void 0),c.indexOf("name")===-1&&(e.name=void 0)),e}function Yq(e,r,t){var a=t.container,n=t.fullLayout,i=n._size,o=t.event,l=!!r.hLinePoint,s=!!r.vLinePoint,f,u;if(a.selectAll(".spikeline").remove(),!!(s||l)){var c=wi.combine(n.plot_bgcolor,n.paper_bgcolor);if(l){var v=r.hLinePoint,d,p;f=v&&v.xa,u=v&&v.ya;var y=u.spikesnap;y==="cursor"?(d=o.pointerX,p=o.pointerY):(d=f._offset+v.x,p=u._offset+v.y);var m=Gq.readability(v.color,c)<1.5?wi.contrast(c):v.color,b=u.spikemode,A=u.spikethickness,_=u.spikecolor||m,x=Df.getPxPosition(e,u),T,E;if(b.indexOf("toaxis")!==-1||b.indexOf("across")!==-1){if(b.indexOf("toaxis")!==-1&&(T=x,E=d),b.indexOf("across")!==-1){var M=u._counterDomainMin,k=u._counterDomainMax;u.anchor==="free"&&(M=Math.min(M,u.position),k=Math.max(k,u.position)),T=i.l+M*i.w,E=i.l+k*i.w}a.insert("line",":first-child").attr({x1:T,x2:E,y1:p,y2:p,"stroke-width":A,stroke:_,"stroke-dasharray":Lf.dashStyle(u.spikedash,A)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:T,x2:E,y1:p,y2:p,"stroke-width":A+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}b.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:x+(u.side!=="right"?A:-A),cy:p,r:A,fill:_}).classed("spikeline",!0)}if(s){var F=r.vLinePoint,I,O;f=F&&F.xa,u=F&&F.ya;var q=f.spikesnap;q==="cursor"?(I=o.pointerX,O=o.pointerY):(I=f._offset+F.x,O=u._offset+F.y);var H=Gq.readability(F.color,c)<1.5?wi.contrast(c):F.color,X=f.spikemode,oe=f.spikethickness,te=f.spikecolor||H,Q=Df.getPxPosition(e,f),Z,J;if(X.indexOf("toaxis")!==-1||X.indexOf("across")!==-1){if(X.indexOf("toaxis")!==-1&&(Z=Q,J=O),X.indexOf("across")!==-1){var le=f._counterDomainMin,ce=f._counterDomainMax;f.anchor==="free"&&(le=Math.min(le,f.position),ce=Math.max(ce,f.position)),Z=i.t+(1-ce)*i.h,J=i.t+(1-le)*i.h}a.insert("line",":first-child").attr({x1:I,x2:I,y1:Z,y2:J,"stroke-width":oe,stroke:te,"stroke-dasharray":Lf.dashStyle(f.spikedash,oe)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:I,x2:I,y1:Z,y2:J,"stroke-width":oe+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}X.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:I,cy:Q-(f.side!=="top"?oe:-oe),r:oe,fill:te}).classed("spikeline",!0)}}}function Qve(e,r,t){if(!t||t.length!==e._hoverdata.length)return!0;for(var a=t.length-1;a>=0;a--){var n=t[a],i=e._hoverdata[a];if(n.curveNumber!==i.curveNumber||String(n.pointNumber)!==String(i.pointNumber)||String(n.pointNumbers)!==String(i.pointNumbers)||n.binNumber!==i.binNumber)return!0}return!1}function Wq(e,r){return!r||r.vLinePoint!==e._spikepoints.vLinePoint||r.hLinePoint!==e._spikepoints.hLinePoint}function jq(e,r){return Yl.plainText(e||"",{len:r,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function Kve(e,r){for(var t=r.charAt(0),a=[],n=[],i=[],o=0;oe.offsetTop+e.clientTop,rR=e=>e.offsetLeft+e.clientLeft;function Pd(e,r){var t=e._fullLayout,a=r.getBoundingClientRect(),n=a.left,i=a.top,o=n+a.width,l=i+a.height,s=qn.apply3DTransform(t._invTransform)(n,i),f=qn.apply3DTransform(t._invTransform)(o,l),u=s[0],c=s[1],v=f[0],d=f[1];return{x:u,y:c,width:v-u,height:d-c,top:Math.min(c,d),left:Math.min(u,v),right:Math.max(u,v),bottom:Math.max(c,d)}}});var d3=P((kLe,tR)=>{"use strict";var e0e=Ur(),r0e=ha(),t0e=Cu().isUnifiedHover;tR.exports=function(r,t,a,n){n=n||{};var i=t.legend;function o(l){n.font[l]||(n.font[l]=i?t.legend.font[l]:t.font[l])}t&&t0e(t.hovermode)&&(n.font||(n.font={}),o("size"),o("family"),o("color"),o("weight"),o("style"),o("variant"),i?(n.bgcolor||(n.bgcolor=r0e.combine(t.legend.bgcolor,t.paper_bgcolor)),n.bordercolor||(n.bordercolor=t.legend.bordercolor)):n.bgcolor||(n.bgcolor=t.paper_bgcolor)),a("hoverlabel.bgcolor",n.bgcolor),a("hoverlabel.bordercolor",n.bordercolor),a("hoverlabel.namelength",n.namelength),a("hoverlabel.showarrow",n.showarrow),e0e.coerceFont(a,"hoverlabel.font",n.font),a("hoverlabel.align",n.align)}});var nR=P((CLe,aR)=>{"use strict";var a0e=Ur(),n0e=d3(),i0e=Jh();aR.exports=function(r,t){function a(n,i){return a0e.coerce(r,t,i0e,n,i)}n0e(r,t,a)}});var lR=P((LLe,oR)=>{"use strict";var iR=Ur(),o0e=Bg(),l0e=d3();oR.exports=function(r,t,a,n){function i(l,s){return iR.coerce(r,t,o0e,l,s)}var o=iR.extendFlat({},n.hoverlabel);t.hovertemplate&&(o.namelength=-1),l0e(r,t,i,o)}});var Qw=P((DLe,sR)=>{"use strict";var s0e=Ur(),f0e=Jh();sR.exports=function(r,t){function a(n,i){return t[n]!==void 0?t[n]:s0e.coerce(r,t,f0e,n,i)}return a("clickmode"),a("hoversubplots"),a("hovermode")}});var cR=P((FLe,uR)=>{"use strict";var fR=Ur(),u0e=Jh(),c0e=Qw(),v0e=d3();uR.exports=function(r,t){function a(u,c){return fR.coerce(r,t,u0e,u,c)}var n=c0e(r,t);n&&(a("hoverdistance"),a("spikedistance"));var i=a("dragmode");i==="select"&&a("selectdirection");var o=t._has("mapbox"),l=t._has("map"),s=t._has("geo"),f=t._basePlotModules.length;t.dragmode==="zoom"&&((o||l||s)&&f===1||(o||l)&&s&&f===2)&&(t.dragmode="pan"),v0e(r,t,a),fR.coerceFont(a,"hoverlabel.grouptitlefont",t.hoverlabel.font)}});var dR=P((qLe,hR)=>{"use strict";var Kw=Ur(),vR=Bt();hR.exports=function(r){var t=r.calcdata,a=r._fullLayout;function n(f){return function(u){return Kw.coerceHoverinfo({hoverinfo:u},{_module:f._module},a)}}for(var i=0;i{"use strict";var d0e=Bt(),p0e=$w().hover;pR.exports=function(r,t,a){var n=d0e.getComponentMethod("annotations","onClick")(r,r._hoverdata);a!==void 0&&p0e(r,t,a,!0);function i(){r.emit("plotly_click",{points:r._hoverdata,event:t})}r._hoverdata&&t&&t.target&&(n&&n.then?n.then(i):i(),t.stopImmediatePropagation&&t.stopImmediatePropagation())}});var Wc=P((PLe,bR)=>{"use strict";var m0e=da(),p3=Ur(),y0e=Ns(),bm=Cu(),yR=Jh(),gR=$w();bR.exports={moduleType:"component",name:"fx",constants:z1(),schema:{layout:yR},attributes:Bg(),layoutAttributes:yR,supplyLayoutGlobalDefaults:nR(),supplyDefaults:lR(),supplyLayoutDefaults:cR(),calc:dR(),getDistanceFunction:bm.getDistanceFunction,getClosest:bm.getClosest,inbox:bm.inbox,quadrature:bm.quadrature,appendArrayPointValue:bm.appendArrayPointValue,castHoverOption:b0e,castHoverinfo:x0e,hover:gR.hover,unhover:y0e.unhover,loneHover:gR.loneHover,loneUnhover:g0e,click:mR()};function g0e(e){var r=p3.isD3Selection(e)?e:m0e.select(e);r.selectAll("g.hovertext").remove(),r.selectAll(".spikeline").remove()}function b0e(e,r,t){return p3.castOption(e,r,"hoverlabel."+t)}function x0e(e,r,t){function a(n){return p3.coerceHoverinfo({hoverinfo:n},{_module:e._module},r)}return p3.castOption(e,t,"hoverinfo",a)}});var jc=P(Fu=>{"use strict";Fu.selectMode=function(e){return e==="lasso"||e==="select"};Fu.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Fu.openMode=function(e){return e==="drawline"||e==="drawopenpath"};Fu.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Fu.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};Fu.selectingOrDrawing=function(e){return Fu.freeMode(e)||Fu.rectMode(e)}});var m3=P((ILe,xR)=>{"use strict";xR.exports=function(r){var t=r._fullLayout;t._glcanvas&&t._glcanvas.size()&&t._glcanvas.each(function(a){a.regl&&a.regl.clear({color:!0,depth:!0})})}});var y3=P((OLe,_R)=>{"use strict";_R.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var b3=P((BLe,wR)=>{"use strict";var g3=32;wR.exports={CIRCLE_SIDES:g3,i000:0,i090:g3/4,i180:g3/2,i270:g3/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var x3=P((zLe,TR)=>{"use strict";var _0e=Ur().strTranslate;function AR(e,r){switch(e.type){case"log":return e.p2d(r);case"date":return e.p2r(r,0,e.calendar);default:return e.p2r(r)}}function w0e(e,r){switch(e.type){case"log":return e.d2p(r);case"date":return e.r2p(r,0,e.calendar);default:return e.r2p(r)}}function A0e(e){var r=e._id.charAt(0)==="y"?1:0;return function(t){return AR(e,t[r])}}function T0e(e){return _0e(e.xaxis._offset,e.yaxis._offset)}TR.exports={p2r:AR,r2p:w0e,axValue:A0e,getTransform:T0e}});var Xc=P(qu=>{"use strict";var M0e=om(),ER=b3(),Id=ER.CIRCLE_SIDES,eA=ER.SQRT2,kR=x3(),MR=kR.p2r,SR=kR.r2p,S0e=[0,3,4,5,6,1,2],E0e=[0,3,4,1,2];qu.writePaths=function(e){var r=e.length;if(!r)return"M0,0Z";for(var t="",a=0;a0&&s{"use strict";var CR=kn(),RR=jc(),k0e=RR.drawMode,C0e=RR.openMode,Od=b3(),LR=Od.i000,DR=Od.i090,FR=Od.i180,qR=Od.i270,L0e=Od.cos45,D0e=Od.sin45,PR=x3(),w3=PR.p2r,Zc=PR.r2p,F0e=Ic(),q0e=F0e.clearOutline,A3=Xc(),R0e=A3.readPaths,P0e=A3.writePaths,N0e=A3.ellipseOver,I0e=A3.fixDatesForPaths;function O0e(e,r){if(e.length){var t=e[0][0];if(t){var a=r.gd,n=r.isActiveShape,i=r.dragmode,o=(a.layout||{}).shapes||[];if(!k0e(i)&&n!==void 0){var l=a._fullLayout._activeShapeIndex;if(l{"use strict";var B0e=jc(),z0e=B0e.selectMode,G0e=Ic(),U0e=G0e.clearOutline,rA=Xc(),H0e=rA.readPaths,V0e=rA.writePaths,Y0e=rA.fixDatesForPaths;OR.exports=function(r,t){if(r.length){var a=r[0][0];if(a){var n=a.getAttribute("d"),i=t.gd,o=i._fullLayout.newselection,l=t.plotinfo,s=l.xaxis,f=l.yaxis,u=t.isActiveSelection,c=t.dragmode,v=(i.layout||{}).selections||[];if(!z0e(c)&&u!==void 0){var d=i._fullLayout._activeSelectionIndex;if(d{"use strict";BR.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var Jc=P(Pi=>{"use strict";var H0=_m(),zR=Ur(),M3=yn();Pi.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(r){return r}};Pi.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(r){return r}};Pi.decodeDate=function(e){return function(r){return r.replace&&(r=r.replace("_"," ")),e(r)}};Pi.encodeDate=function(e){return function(r){return e(r).replace(" ","_")}};Pi.extractPathCoords=function(e,r,t){var a=[],n=e.match(H0.segmentRE);return n.forEach(function(i){var o=r[i.charAt(0)].drawn;if(o!==void 0){var l=i.substr(1).match(H0.paramRE);if(!(!l||l.lengthd&&(y="X"),y});return f>d&&(p=p.replace(/[\s,]*X.*/,""),zR.log("Ignoring extra params in segment "+s)),u+p})}function wm(e,r){r=r||0;var t=0;return r&&e&&(e.type==="category"||e.type==="multicategory")&&(t=(e.r2p(1)-e.r2p(0))*r),t}});var nA=P((WLe,VR)=>{"use strict";var j0e=Ur(),Bd=yn(),GR=po(),UR=Ha(),X0e=Xc().readPaths,aA=Jc(),Z0e=aA.getPathString,HR=jg(),J0e=ho().FROM_TL;VR.exports=function(r,t,a,n){if(n.selectAll(".shape-label").remove(),!!(a.label.text||a.label.texttemplate)){var i;if(a.label.texttemplate){var o={};if(a.type!=="path"){var l=Bd.getFromId(r,a.xref),s=Bd.getFromId(r,a.yref);for(var f in HR){var u=HR[f](a,l,s);u!==void 0&&(o[f]=u)}}i=j0e.texttemplateStringForShapes({data:[o],fallback:a.label.texttemplatefallback,locale:r._fullLayout._d3locale,template:a.label.texttemplate})}else i=a.label.text;var c={"data-index":t},v=a.label.font,d={"data-notex":1},p=n.append("g").attr(c).classed("shape-label",!0),y=p.append("text").attr(d).classed("shape-label-text",!0).text(i),m,b,A,_;if(a.path){var x=Z0e(r,a),T=X0e(x,r);m=1/0,A=1/0,b=-1/0,_=-1/0;for(var E=0;E=e?n=r-a:n=a-r,-180/Math.PI*Math.atan2(n,i)}function Q0e(e,r,t,a,n,i,o){var l=n.label.textposition,s=n.label.textangle,f=n.label.padding,u=n.type,c=Math.PI/180*i,v=Math.sin(c),d=Math.cos(c),p=n.label.xanchor,y=n.label.yanchor,m,b,A,_;if(u==="line"){l==="start"?(m=e,b=r):l==="end"?(m=t,b=a):(m=(e+t)/2,b=(r+a)/2),p==="auto"&&(l==="start"?s==="auto"?t>e?p="left":te?p="right":te?p="right":te?p="left":t{"use strict";var K0e=Ur(),ehe=K0e.strTranslate,YR=Ns(),XR=jc(),rhe=XR.drawMode,ZR=XR.selectMode,JR=Bt(),WR=ha(),E3=b3(),the=E3.i000,ahe=E3.i090,nhe=E3.i180,ihe=E3.i270,ohe=Ic(),$R=ohe.clearOutlineControllers,oA=Xc(),S3=oA.pointsOnRectangle,iA=oA.pointsOnEllipse,lhe=oA.writePaths,she=T3().newShapes,fhe=T3().createShapeObj,uhe=tA(),che=nA();QR.exports=function e(r,t,a,n){n||(n=0);var i=a.gd;function o(){e(r,t,a,n++),(iA(r[0])||a.hasText)&&l({redrawing:!0})}function l(Q){var Z={};a.isActiveShape!==void 0&&(a.isActiveShape=!1,Z=she(t,a)),a.isActiveSelection!==void 0&&(a.isActiveSelection=!1,Z=uhe(t,a),i._fullLayout._reselect=!0),Object.keys(Z).length&&JR.call((Q||{}).redrawing?"relayout":"_guiRelayout",i,Z)}var s=i._fullLayout,f=s._zoomlayer,u=a.dragmode,c=rhe(u),v=ZR(u);(c||v)&&(i._fullLayout._outlining=!0),$R(i),t.attr("d",lhe(r));var d,p,y,m,b;if(!n&&(a.isActiveShape||a.isActiveSelection)){b=vhe([],r);var A=f.append("g").attr("class","outline-controllers");I(A),te()}if(c&&a.hasText){var _=f.select(".label-temp"),x=fhe(t,a,a.dragmode);che(i,"label-temp",x,_)}function T(Q){y=+Q.srcElement.getAttribute("data-i"),m=+Q.srcElement.getAttribute("data-j"),d[y][m].moveFn=E}function E(Q,Z){if(r.length){var J=b[y][m][1],le=b[y][m][2],ce=r[y],De=ce.length;if(S3(ce)){var Be=Q,Ee=Z;if(a.isActiveSelection){var Xe=jR(ce,m);Xe[1]===ce[m][1]?Ee=0:Be=0}for(var Ae=0;Ae1&&!(Q.length===2&&Q[1][0]==="Z")&&(m===0&&(Q[0][0]="M"),r[y]=Q,o(),l())}}function F(Q,Z){if(Q===2){y=+Z.srcElement.getAttribute("data-i"),m=+Z.srcElement.getAttribute("data-j");var J=r[y];!S3(J)&&!iA(J)&&k()}}function I(Q){d=[];for(var Z=0;Z{"use strict";var dhe=da(),nP=Bt(),KR=Ur(),zd=yn(),phe=Xc().readPaths,mhe=k3(),L3=nA(),iP=Ic().clearOutlineControllers,lA=ha(),fA=Ha(),yhe=Xa().arrayEditor,eP=Ns(),rP=Yc(),V0=_m(),Qo=Jc(),sA=Qo.getPathString;sP.exports={draw:uA,drawOne:oP,eraseActiveShape:xhe,drawLabel:L3};function uA(e){var r=e._fullLayout;r._shapeUpperLayer.selectAll("path").remove(),r._shapeLowerLayer.selectAll("path").remove(),r._shapeUpperLayer.selectAll("text").remove(),r._shapeLowerLayer.selectAll("text").remove();for(var t in r._plots){var a=r._plots[t].shapelayer;a&&(a.selectAll("path").remove(),a.selectAll("text").remove())}for(var n=0;no&&Yr>l&&!Pr.shiftKey?eP.getCursor(Kr/Ir,1-wr/Yr):"move";rP(r,Vr),rr=Vr.split("-")[0]}}function Ue(Pr){C3(e)||(s&&(b=ce(t.xanchor)),f&&(A=De(t.yanchor)),t.type==="path"?O=t.path:(d=s?t.x0:ce(t.x0),p=f?t.y0:De(t.y0),y=s?t.x1:ce(t.x1),m=f?t.y1:De(t.y1)),dm?(_=p,M="y0",x=m,k="y1"):(_=m,M="y1",x=p,k="y0"),$e(Pr),ur(n,t),Lr(r,t,e),Ae.moveFn=rr==="move"?ae:je,Ae.altKey=Pr.altKey)}function ee(){C3(e)||(rP(r),er(n),lP(r,e,t),nP.call("_guiRelayout",e,i.getUpdateObj()))}function de(){C3(e)||er(n)}function ae(Pr,_r){if(t.type==="path"){var Ir=function(wr){return wr},Yr=Ir,Kr=Ir;s?v("xanchor",t.xanchor=Be(b+Pr)):(Yr=function(Vr){return Be(ce(Vr)+Pr)},H&&H.type==="date"&&(Yr=Qo.encodeDate(Yr))),f?v("yanchor",t.yanchor=Ee(A+_r)):(Kr=function(Vr){return Ee(De(Vr)+_r)},oe&&oe.type==="date"&&(Kr=Qo.encodeDate(Kr))),v("path",t.path=tP(O,Yr,Kr))}else s?v("xanchor",t.xanchor=Be(b+Pr)):(v("x0",t.x0=Be(d+Pr)),v("x1",t.x1=Be(y+Pr))),f?v("yanchor",t.yanchor=Ee(A+_r)):(v("y0",t.y0=Ee(p+_r)),v("y1",t.y1=Ee(m+_r)));r.attr("d",sA(e,t)),ur(n,t),L3(e,a,t,q)}function je(Pr,_r){if(c){var Ir=function(at){return at},Yr=Ir,Kr=Ir;s?v("xanchor",t.xanchor=Be(b+Pr)):(Yr=function(xt){return Be(ce(xt)+Pr)},H&&H.type==="date"&&(Yr=Qo.encodeDate(Yr))),f?v("yanchor",t.yanchor=Ee(A+_r)):(Kr=function(xt){return Ee(De(xt)+_r)},oe&&oe.type==="date"&&(Kr=Qo.encodeDate(Kr))),v("path",t.path=tP(O,Yr,Kr))}else if(u){if(rr==="resize-over-start-point"){var wr=d+Pr,Vr=f?p-_r:p+_r;v("x0",t.x0=s?wr:Be(wr)),v("y0",t.y0=f?Vr:Ee(Vr))}else if(rr==="resize-over-end-point"){var Wr=y+Pr,Re=f?m-_r:m+_r;v("x1",t.x1=s?Wr:Be(Wr)),v("y1",t.y1=f?Re:Ee(Re))}}else{var lr=function(at){return rr.indexOf(at)!==-1},st=lr("n"),kt=lr("s"),Ar=lr("w"),tr=lr("e"),cr=st?_+_r:_,Hr=kt?x+_r:x,ot=Ar?T+Pr:T,jr=tr?E+Pr:E;f&&(st&&(cr=_-_r),kt&&(Hr=x-_r)),(!f&&Hr-cr>l||f&&cr-Hr>l)&&(v(M,t[M]=f?cr:Ee(cr)),v(k,t[k]=f?Hr:Ee(Hr))),jr-ot>o&&(v(F,t[F]=s?ot:Be(ot)),v(I,t[I]=s?jr:Be(jr)))}r.attr("d",sA(e,t)),ur(n,t),L3(e,a,t,q)}function ur(Pr,_r){(s||f)&&Ir();function Ir(){var Yr=_r.type!=="path",Kr=Pr.selectAll(".visual-cue").data([0]),wr=1;Kr.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":wr}).classed("visual-cue",!0);var Vr=ce(s?_r.xanchor:KR.midRange(Yr?[_r.x0,_r.x1]:Qo.extractPathCoords(_r.path,V0.paramIsX))),Wr=De(f?_r.yanchor:KR.midRange(Yr?[_r.y0,_r.y1]:Qo.extractPathCoords(_r.path,V0.paramIsY)));if(Vr=Qo.roundPositionForSharpStrokeRendering(Vr,wr),Wr=Qo.roundPositionForSharpStrokeRendering(Wr,wr),s&&f){var Re="M"+(Vr-1-wr)+","+(Wr-1-wr)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Kr.attr("d",Re)}else if(s){var lr="M"+(Vr-1-wr)+","+(Wr-9-wr)+"v18 h2 v-18 Z";Kr.attr("d",lr)}else{var st="M"+(Vr-9-wr)+","+(Wr-1-wr)+"h18 v2 h-18 Z";Kr.attr("d",st)}}}function er(Pr){Pr.selectAll(".visual-cue").remove()}function Lr(Pr,_r,Ir){var Yr=_r.xref,Kr=_r.yref,wr=zd.getFromId(Ir,Yr),Vr=zd.getFromId(Ir,Kr),Wr="";Yr!=="paper"&&!wr.autorange&&(Wr+=Yr),Kr!=="paper"&&!Vr.autorange&&(Wr+=Kr),fA.setClipUrl(Pr,Wr?"clip"+Ir._fullLayout._uid+Wr:null,Ir)}}function tP(e,r,t){return e.replace(V0.segmentRE,function(a){var n=0,i=a.charAt(0),o=V0.paramIsX[i],l=V0.paramIsY[i],s=V0.numParams[i],f=a.substr(1).replace(V0.paramRE,function(u){return n>=s||(o[n]?u=r(u):l[n]&&(u=t(u)),n++),u});return i+f})}function bhe(e,r){if(D3(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeShapeIndex){aP(e);return}e._fullLayout._activeShapeIndex=a,e._fullLayout._deactivateShape=aP,uA(e)}}}function aP(e){if(D3(e)){var r=e._fullLayout._activeShapeIndex;r>=0&&(iP(e),delete e._fullLayout._activeShapeIndex,uA(e))}}function xhe(e){if(D3(e)){iP(e);var r=e._fullLayout._activeShapeIndex,t=(e.layout||{}).shapes||[];if(r{"use strict";var Wl=Bt(),fP=xi(),uP=kn(),xa=y3(),_he=F3().eraseActiveShape,q3=Ur(),la=q3._,_a=yP.exports={};_a.toImage={name:"toImage",title:function(e){var r=e._context.toImageButtonOptions||{},t=r.format||"png";return t==="png"?la(e,"Download plot as a PNG"):la(e,"Download plot")},icon:xa.camera,click:function(e){var r=e._context.toImageButtonOptions,t={format:r.format||"png"};q3.notifier(la(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(a){a in r&&(t[a]=r[a])}),Wl.call("downloadImage",e,t).then(function(a){q3.notifier(la(e,"Snapshot succeeded")+" - "+a,"long")}).catch(function(){q3.notifier(la(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};_a.sendDataToCloud={name:"sendDataToCloud",title:function(e){return la(e,"Edit in Chart Studio")},icon:xa.disk,click:function(e){fP.sendDataToCloud(e)}};_a.editInChartStudio={name:"editInChartStudio",title:function(e){return la(e,"Edit in Chart Studio")},icon:xa.pencil,click:function(e){fP.sendDataToCloud(e)}};_a.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return la(e,"Zoom")},attr:"dragmode",val:"zoom",icon:xa.zoombox,click:go};_a.pan2d={name:"pan2d",_cat:"pan",title:function(e){return la(e,"Pan")},attr:"dragmode",val:"pan",icon:xa.pan,click:go};_a.select2d={name:"select2d",_cat:"select",title:function(e){return la(e,"Box Select")},attr:"dragmode",val:"select",icon:xa.selectbox,click:go};_a.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return la(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:xa.lasso,click:go};_a.drawclosedpath={name:"drawclosedpath",title:function(e){return la(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:xa.drawclosedpath,click:go};_a.drawopenpath={name:"drawopenpath",title:function(e){return la(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:xa.drawopenpath,click:go};_a.drawline={name:"drawline",title:function(e){return la(e,"Draw line")},attr:"dragmode",val:"drawline",icon:xa.drawline,click:go};_a.drawrect={name:"drawrect",title:function(e){return la(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:xa.drawrect,click:go};_a.drawcircle={name:"drawcircle",title:function(e){return la(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:xa.drawcircle,click:go};_a.eraseshape={name:"eraseshape",title:function(e){return la(e,"Erase active shape")},icon:xa.eraseshape,click:_he};_a.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return la(e,"Zoom in")},attr:"zoom",val:"in",icon:xa.zoom_plus,click:go};_a.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return la(e,"Zoom out")},attr:"zoom",val:"out",icon:xa.zoom_minus,click:go};_a.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return la(e,"Autoscale")},attr:"zoom",val:"auto",icon:xa.autoscale,click:go};_a.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return la(e,"Reset axes")},attr:"zoom",val:"reset",icon:xa.home,click:go};_a.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return la(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:xa.tooltip_basic,gravity:"ne",click:go};_a.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return la(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:xa.tooltip_compare,gravity:"ne",click:go};function go(e,r){var t=r.currentTarget,a=t.getAttribute("data-attr"),n=t.getAttribute("data-val")||!0,i=e._fullLayout,o={},l=uP.list(e,null,!0),s=i._cartesianSpikesEnabled,f,u;if(a==="zoom"){var c=n==="in"?.5:2,v=(1+c)/2,d=(1-c)/2,p,y;for(u=0;u{"use strict";var gP=hA(),The=Object.keys(gP),bP=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],xP=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(bP),Ud=[],Mhe=function(e){if(xP.indexOf(e._cat||e.name)===-1){var r=e.name,t=(e._cat||e.name).toLowerCase();Ud.indexOf(r)===-1&&Ud.push(r),Ud.indexOf(t)===-1&&Ud.push(t)}};The.forEach(function(e){Mhe(gP[e])});Ud.sort();_P.exports={DRAW_MODES:bP,backButtons:xP,foreButtons:Ud}});var pA=P((QLe,wP)=>{"use strict";var $Le=dA();wP.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var TP=P((KLe,AP)=>{"use strict";var She=Ur(),Am=ha(),Ehe=Xa(),khe=pA();AP.exports=function(r,t){var a=r.modebar||{},n=Ehe.newContainer(t,"modebar");function i(l,s){return She.coerce(a,n,khe,l,s)}i("orientation"),i("bgcolor",Am.addOpacity(t.paper_bgcolor,.5));var o=Am.contrast(Am.rgb(t.modebar.bgcolor));i("color",Am.addOpacity(o,.3)),i("activecolor",Am.addOpacity(o,.7)),i("uirevision",t.uirevision),i("add"),i("remove")}});var kP=P((eDe,EP)=>{"use strict";var mA=da(),Che=ba(),P3=Ur(),MP=y3(),Lhe=Eg().version,Dhe=new DOMParser;function SP(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Ff=SP.prototype;Ff.update=function(e,r){this.graphInfo=e;var t=this.graphInfo._context,a=this.graphInfo._fullLayout,n="modebar-"+a._uid;this.element.setAttribute("id",n),this.element.setAttribute("role","toolbar"),this._uid=n,this.element.className="modebar modebar--custom",t.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),a.modebar.orientation==="v"&&(this.element.className+=" vertical",r=r.reverse());var i=a.modebar,o="#"+n+" .modebar-group";document.querySelectorAll(o).forEach(function(c){c.style.backgroundColor=i.bgcolor});var l=!this.hasButtons(r),s=this.hasLogo!==t.displaylogo,f=this.locale!==t.locale;if(this.locale=t.locale,(l||s||f)&&(this.removeAllButtons(),this.updateButtons(r),t.watermark||t.displaylogo)){var u=this.getLogo();t.watermark&&(u.className=u.className+" watermark"),a.modebar.orientation==="v"?this.element.insertBefore(u,this.element.childNodes[0]):this.element.appendChild(u),this.hasLogo=!0}this.updateActiveButton(),P3.setStyleOnHover("#"+n+" .modebar-btn",".active",".icon path","fill: "+i.activecolor,"fill: "+i.color,this.element)};Ff.updateButtons=function(e){var r=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(t){var a=r.createGroup();t.forEach(function(n){var i=n.name;if(!i)throw new Error("must provide button 'name' in button config");if(r.buttonsNames.indexOf(i)!==-1)throw new Error("button name '"+i+"' is taken");r.buttonsNames.push(i);var o=r.createButton(n);r.buttonElements.push(o),a.appendChild(o)}),r.element.appendChild(a)})};Ff.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var r=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=r.bgcolor,e};Ff.createButton=function(e){var r=this,t=document.createElement("button");t.setAttribute("type","button"),t.setAttribute("rel","tooltip"),t.className="modebar-btn";var a=e.title;a===void 0?a=e.name:typeof a=="function"&&(a=a(this.graphInfo)),(a||a===0)&&(t.setAttribute("data-title",a),t.setAttribute("aria-label",a)),e.attr!==void 0&&t.setAttribute("data-attr",e.attr);var n=e.val;n!==void 0&&(typeof n=="function"&&(n=n(this.graphInfo)),t.setAttribute("data-val",n));var i=e.click;if(typeof i!="function")throw new Error("must provide button 'click' function in button config");t.addEventListener("click",function(l){e.click(r.graphInfo,l),r.updateActiveButton(l.currentTarget)}),t.setAttribute("data-toggle",e.toggle||!1),e.toggle&&mA.select(t).classed("active",!0);var o=e.icon;return typeof o=="function"?t.appendChild(o()):t.appendChild(this.createIcon(o||MP.question)),t.setAttribute("data-gravity",e.gravity||"n"),t};Ff.createIcon=function(e){var r=Che(e.height)?Number(e.height):e.ascent-e.descent,t="http://www.w3.org/2000/svg",a;if(e.path){a=document.createElementNS(t,"svg"),a.setAttribute("viewBox",[0,0,e.width,r].join(" ")),a.setAttribute("class","icon");var n=document.createElementNS(t,"path");n.setAttribute("d",e.path),e.transform?n.setAttribute("transform",e.transform):e.ascent!==void 0&&n.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),a.appendChild(n)}if(e.svg){var i=Dhe.parseFromString(e.svg,"application/xml");a=i.childNodes[0]}return a.setAttribute("height","1em"),a.setAttribute("width","1em"),a};Ff.updateActiveButton=function(e){var r=this.graphInfo._fullLayout,t=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(a){var n=a.getAttribute("data-val")||!0,i=a.getAttribute("data-attr"),o=a.getAttribute("data-toggle")==="true",l=mA.select(a),s=function(c,v){var d=r.modebar,p=c.querySelector(".icon path");p&&(v||c.matches(":hover")?p.style.fill=d.activecolor:p.style.fill=d.color)};if(o){if(i===t){var f=!l.classed("active");l.classed("active",f),s(a,f)}}else{var u=i===null?i:P3.nestedProperty(r,i).get();l.classed("active",u===n),s(a,u===n)}})};Ff.hasButtons=function(e){var r=this.buttons;if(!r||e.length!==r.length)return!1;for(var t=0;t{"use strict";var Rhe=kn(),CP=Ri(),yA=Bt(),Phe=Cu().isUnifiedHover,Nhe=kP(),N3=hA(),Ihe=dA().DRAW_MODES,Ohe=Ur().extendDeep;LP.exports=function(r){var t=r._fullLayout,a=r._context,n=t._modeBar;if(!a.displayModeBar&&!a.watermark){n&&(n.destroy(),delete t._modeBar);return}if(!Array.isArray(a.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(a.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var i=a.modeBarButtons,o;Array.isArray(i)&&i.length?o=Vhe(i):!a.displayModeBar&&a.watermark?o=[]:o=Bhe(r),n?n.update(r,o):t._modeBar=Nhe(r,o)};function Bhe(e){var r=e._fullLayout,t=e._fullData,a=e._context;function n(Z,J){if(typeof J=="string"){if(J.toLowerCase()===Z.toLowerCase())return!0}else{var le=J.name,ce=J._cat||J.name;if(le===Z||ce===Z.toLowerCase())return!0}return!1}var i=r.modebar.add;typeof i=="string"&&(i=[i]);var o=r.modebar.remove;typeof o=="string"&&(o=[o]);var l=a.modeBarButtonsToAdd.concat(i.filter(function(Z){for(var J=0;J1?(I=["toggleHover"],O=["resetViews"]):c?(F=["zoomInGeo","zoomOutGeo"],I=["hoverClosestGeo"],O=["resetGeo"]):u?(I=["hoverClosest3d"],O=["resetCameraDefault3d","resetCameraLastSave3d"]):y?(F=["zoomInMapbox","zoomOutMapbox"],I=["toggleHover"],O=["resetViewMapbox"]):m?(F=["zoomInMap","zoomOutMap"],I=["toggleHover"],O=["resetViewMap"]):v?I=["hoverClosestPie"]:_?(I=["hoverClosestCartesian","hoverCompareCartesian"],O=["resetViewSankey"]):I=["toggleHover"],f&&I.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(Uhe(t)||T)&&(I=[]),f&&!x&&(F=["zoomIn2d","zoomOut2d","autoScale2d"],O[0]!=="resetViews"&&(O=["resetScale2d"])),u?q=["zoom3d","pan3d","orbitRotation","tableRotation"]:f&&!x||p?q=["zoom2d","pan2d"]:y||m||c?q=["pan2d"]:b&&(q=["zoom2d"]),Ghe(t)&&q.push("select2d","lasso2d");var H=[],X=function(Z){H.indexOf(Z)===-1&&I.indexOf(Z)!==-1&&H.push(Z)};if(Array.isArray(l)){for(var oe=[],te=0;te{"use strict";FP.exports={moduleType:"component",name:"modebar",layoutAttributes:pA(),supplyLayoutDefaults:TP(),manage:DP()}});var bA=P((aDe,qP)=>{"use strict";var Yhe=ho().FROM_BL;qP.exports=function(r,t,a){a===void 0&&(a=Yhe[r.constraintoward||"center"]);var n=[r.r2l(r.range[0]),r.r2l(r.range[1])],i=n[0]+(n[1]-n[0])*a;r.range=r._input.range=[r.l2r(i+(n[0]-i)*t),r.l2r(i+(n[1]-i)*t)],r.setScale()}});var Mm=P(Tm=>{"use strict";var Y0=Ur(),xA=Md(),Os=kn().id2name,Whe=Ul(),RP=bA(),jhe=G2(),Xhe=Kn().ALMOST_EQUAL,Zhe=ho().FROM_BL;Tm.handleDefaults=function(e,r,t){var a=t.axIds,n=t.axHasImage,i=r._axisConstraintGroups=[],o=r._axisMatchGroups=[],l,s,f,u,c,v,d,p;for(l=0;li?t.substr(i):a.substr(n))+o}function $he(e,r){for(var t=r._size,a=t.h/t.w,n={},i=Object.keys(e),o=0;oXhe*p&&!A)){for(i=0;iq&&leI&&(I=le);var De=(I-F)/(2*O);c/=De,F=s.l2r(F),I=s.l2r(I),s.range=s._input.range=E{"use strict";var O3=da(),bo=Bt(),Al=xi(),jl=Ur(),AA=po(),TA=m3(),Sm=ha(),Hd=Ha(),OP=fm(),HP=gA(),Em=yn(),Ru=ho(),VP=Mm(),Qhe=VP.enforce,Khe=VP.clean,BP=Md().doAutoRange,YP="start",ede="middle",WP="end",rde=qi().zindexSeparator;Ai.layoutStyles=function(e){return jl.syncOrAsync([Al.doAutoMargin,ade],e)};function tde(e,r,t){for(var a=0;a=e[1]||n[1]<=e[0])&&i[0]r[0])return!0}return!1}function ade(e){var r=e._fullLayout,t=r._size,a=t.p,n=Em.list(e,"",!0),i,o,l,s,f,u;if(r._paperdiv.style({width:e._context.responsive&&r.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":r.width+"px",height:e._context.responsive&&r.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":r.height+"px"}).selectAll(".main-svg").call(Hd.setSize,r.width,r.height),e._context.setBackground(e,r.paper_bgcolor),Ai.drawMainTitle(e),HP.manage(e),!r._has("cartesian"))return Al.previousPromises(e);function c(Ue,ee,de){var ae=Ue._lw/2;if(Ue._id.charAt(0)==="x"){if(ee){if(de==="top")return ee._offset-a-ae}else return t.t+t.h*(1-(Ue.position||0))+ae%1;return ee._offset+ee._length+a+ae}if(ee){if(de==="right")return ee._offset+ee._length+a+ae}else return t.l+t.w*(Ue.position||0)+ae%1;return ee._offset-a-ae}for(i=0;i0){lde(e,i,f,s),l.attr({x:o,y:i,"text-anchor":a,dy:UP(r.yanchor)}).call(AA.positionText,o,i);var u=(r.text.match(AA.BR_TAG_ALL)||[]).length;if(u){var c=Ru.LINE_SPACING*u+Ru.MID_SHIFT;r.y===0&&(c=-c),l.selectAll(".line").each(function(){var m=+this.getAttribute("dy").slice(0,-2)-c+"em";this.setAttribute("dy",m)})}var v=O3.select(e).selectAll(".gtitle-subtitle");if(v.node()){var d=l.node().getBBox(),p=d.y+d.height,y=p+OP.SUBTITLE_PADDING_EM*r.subtitle.font.size;v.attr({x:o,y,"text-anchor":a,dy:UP(r.yanchor)}).call(AA.positionText,o,y)}}}};function nde(e,r,t,a,n){var i=r.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,o=jl.isTopAnchor(r)?a:a-n,l=t==="b"?i-o:o;return jl.isTopAnchor(r)&&t==="t"||jl.isBottomAnchor(r)&&t==="b"?!1:l.5?"t":"b",o=e._fullLayout.margin[i],l=0;return r.yref==="paper"?l=t+r.pad.t+r.pad.b:r.yref==="container"&&(l=ide(i,a,n,e._fullLayout.height,t)+r.pad.t+r.pad.b),l>o?l:0}function lde(e,r,t,a){var n="title.automargin",i=e._fullLayout.title,o=i.y>.5?"t":"b",l={x:i.x,y:i.y,t:0,b:0},s={};i.yref==="paper"&&nde(e,i,o,r,a)?l[o]=t:i.yref==="container"&&(s[o]=t,e._fullLayout._reservedMargin[n]=s),Al.allowAutoMargin(e,n),Al.autoMargin(e,n,l)}function sde(e,r){var t=e.title,a=e._size,n=0;switch(r===YP?n=t.pad.l:r===WP&&(n=-t.pad.r),t.xref){case"paper":return a.l+a.w*t.x+n;case"container":default:return e.width*t.x+n}}function fde(e,r){var t=e.title,a=e._size,n=0;if(r==="0em"||!r?n=-t.pad.b:r===Ru.CAP_SHIFT+"em"&&(n=t.pad.t),t.y==="auto")return a.t/2;switch(t.yref){case"paper":return a.t+a.h-a.h*t.y+n;case"container":default:return e.height-e.height*t.y+n}}function UP(e){return e==="top"?Ru.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":Ru.MID_SHIFT+"em"}function ude(e){var r=e.title,t=ede;return jl.isRightAnchor(r)?t=WP:jl.isLeftAnchor(r)&&(t=YP),t}function cde(e){var r=e.title,t="0em";return jl.isTopAnchor(r)?t=Ru.CAP_SHIFT+"em":jl.isMiddleAnchor(r)&&(t=Ru.MID_SHIFT+"em"),t}Ai.doTraceStyle=function(e){var r=e.calcdata,t=[],a;for(a=0;a{"use strict";var vde=Xc().readPaths,hde=k3(),jP=Ic().clearOutlineControllers,MA=ha(),XP=Ha(),dde=Xa().arrayEditor,ZP=Jc(),pde=ZP.getPathString;$P.exports={draw:z3,drawOne:JP,activateLastSelection:gde};function z3(e){var r=e._fullLayout;jP(e),r._selectionLayer.selectAll("path").remove();for(var t in r._plots){var a=r._plots[t].selectionLayer;a&&a.selectAll("path").remove()}for(var n=0;n=0;m--){var b=o.append("path").attr(s).style("opacity",m?.1:f).call(MA.stroke,c).call(MA.fill,u).call(XP.dashLine,m?"solid":d,m?4+v:v);if(mde(b,e,a),p){var A=dde(e.layout,"selections",a);b.style({cursor:"move"});var _={element:b.node(),plotinfo:n,gd:e,editHelpers:A,isActiveSelection:!0},x=vde(l,e);hde(x,b,_)}else b.style("pointer-events",m?"all":"none");y[m]=b}var T=y[0],E=y[1];E.node().addEventListener("click",function(){return yde(e,T)})}}function mde(e,r,t){var a=t.xref+t.yref;XP.setClipUrl(e,"clip"+r._fullLayout._uid+a,r)}function yde(e,r){if(G3(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeSelectionIndex){SA(e);return}e._fullLayout._activeSelectionIndex=a,e._fullLayout._deactivateSelection=SA,z3(e)}}}function gde(e){if(G3(e)){var r=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=r,e._fullLayout._deactivateSelection=SA,z3(e)}}function SA(e){if(G3(e)){var r=e._fullLayout._activeSelectionIndex;r>=0&&(jP(e),delete e._fullLayout._activeSelectionIndex,z3(e))}}});var KP=P((lDe,QP)=>{function bde(){var e,r=0,t=!1;function a(n,i){return e.list.push({type:n,data:i?JSON.parse(JSON.stringify(i)):void 0}),e}return e={list:[],segmentId:function(){return r++},checkIntersection:function(n,i){return a("check",{seg1:n,seg2:i})},segmentChop:function(n,i){return a("div_seg",{seg:n,pt:i}),a("chop",{seg:n,pt:i})},statusRemove:function(n){return a("pop_seg",{seg:n})},segmentUpdate:function(n){return a("seg_update",{seg:n})},segmentNew:function(n,i){return a("new_seg",{seg:n,primary:i})},segmentRemove:function(n){return a("rem_seg",{seg:n})},tempStatus:function(n,i,o){return a("temp_status",{seg:n,above:i,below:o})},rewind:function(n){return a("rewind",{seg:n})},status:function(n,i,o){return a("status",{seg:n,above:i,below:o})},vert:function(n){return n===t?e:(t=n,a("vert",{x:n}))},log:function(n){return typeof n!="string"&&(n=JSON.stringify(n,!1," ")),a("log",{txt:n})},reset:function(){return a("reset")},selected:function(n){return a("selected",{segs:n})},chainStart:function(n){return a("chain_start",{seg:n})},chainRemoveHead:function(n,i){return a("chain_rem_head",{index:n,pt:i})},chainRemoveTail:function(n,i){return a("chain_rem_tail",{index:n,pt:i})},chainNew:function(n,i){return a("chain_new",{pt1:n,pt2:i})},chainMatch:function(n){return a("chain_match",{index:n})},chainClose:function(n){return a("chain_close",{index:n})},chainAddHead:function(n,i){return a("chain_add_head",{index:n,pt:i})},chainAddTail:function(n,i){return a("chain_add_tail",{index:n,pt:i})},chainConnect:function(n,i){return a("chain_con",{index1:n,index2:i})},chainReverse:function(n){return a("chain_rev",{index:n})},chainJoin:function(n,i){return a("chain_join",{index1:n,index2:i})},done:function(){return a("done")}},e}QP.exports=bde});var rN=P((sDe,eN)=>{function xde(e){typeof e!="number"&&(e=1e-10);var r={epsilon:function(t){return typeof t=="number"&&(e=t),e},pointAboveOrOnLine:function(t,a,n){var i=a[0],o=a[1],l=n[0],s=n[1],f=t[0],u=t[1];return(l-i)*(u-o)-(s-o)*(f-i)>=-e},pointBetween:function(t,a,n){var i=t[1]-a[1],o=n[0]-a[0],l=t[0]-a[0],s=n[1]-a[1],f=l*o+i*s;if(f-e)},pointsSameX:function(t,a){return Math.abs(t[0]-a[0])e!=l-i>e&&(o-u)*(i-c)/(l-c)+u-n>e&&(s=!s),o=u,l=c}return s}};return r}eN.exports=xde});var aN=P((fDe,tN)=>{var _de={create:function(){var e={root:{root:!0,next:null},exists:function(r){return!(r===null||r===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(r,t){for(var a=e.root,n=e.root.next;n!==null;){if(t(n)){r.prev=n.prev,r.next=n,n.prev.next=r,n.prev=r;return}a=n,n=n.next}a.next=r,r.prev=a,r.next=null},findTransition:function(r){for(var t=e.root,a=e.root.next;a!==null&&!r(a);)t=a,a=a.next;return{before:t===e.root?null:t,after:a,insert:function(n){return n.prev=t,n.next=a,t.next=n,a!==null&&(a.prev=n),n}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};tN.exports=_de});var iN=P((uDe,nN)=>{var km=aN();function wde(e,r,t){function a(p,y){return{id:t?t.segmentId():-1,start:p,end:y,myFill:{above:null,below:null},otherFill:null}}function n(p,y,m){return{id:t?t.segmentId():-1,start:p,end:y,myFill:{above:m.myFill.above,below:m.myFill.below},otherFill:null}}var i=km.create();function o(p,y,m,b,A,_){var x=r.pointsCompare(y,A);return x!==0?x:r.pointsSame(m,_)?0:p!==b?p?1:-1:r.pointAboveOrOnLine(m,b?A:_,b?_:A)?1:-1}function l(p,y){i.insertBefore(p,function(m){var b=o(p.isStart,p.pt,y,m.isStart,m.pt,m.other.pt);return b<0})}function s(p,y){var m=km.node({isStart:!0,pt:p.start,seg:p,primary:y,other:null,status:null});return l(m,p.end),m}function f(p,y,m){var b=km.node({isStart:!1,pt:y.end,seg:y,primary:m,other:p,status:null});p.other=b,l(b,p.pt)}function u(p,y){var m=s(p,y);return f(m,p,y),m}function c(p,y){t&&t.segmentChop(p.seg,y),p.other.remove(),p.seg.end=y,p.other.pt=y,l(p.other,p.pt)}function v(p,y){var m=n(y,p.seg.end,p.seg);return c(p,y),u(m,p.primary)}function d(p,y){var m=km.create();function b(oe,te){var Q=oe.seg.start,Z=oe.seg.end,J=te.seg.start,le=te.seg.end;return r.pointsCollinear(Q,J,le)?r.pointsCollinear(Z,J,le)||r.pointAboveOrOnLine(Z,J,le)?1:-1:r.pointAboveOrOnLine(Q,J,le)?1:-1}function A(oe){return m.findTransition(function(te){var Q=b(oe,te.ev);return Q>0})}function _(oe,te){var Q=oe.seg,Z=te.seg,J=Q.start,le=Q.end,ce=Z.start,De=Z.end;t&&t.checkIntersection(Q,Z);var Be=r.linesIntersect(J,le,ce,De);if(Be===!1){if(!r.pointsCollinear(J,le,ce)||r.pointsSame(J,De)||r.pointsSame(le,ce))return!1;var Ee=r.pointsSame(J,ce),Xe=r.pointsSame(le,De);if(Ee&&Xe)return te;var Ae=!Ee&&r.pointBetween(J,ce,De),rr=!Xe&&r.pointBetween(le,ce,De);if(Ee)return rr?v(te,le):v(oe,De),te;Ae&&(Xe||(rr?v(te,le):v(oe,De)),v(te,J))}else Be.alongA===0&&(Be.alongB===-1?v(oe,ce):Be.alongB===0?v(oe,Be.pt):Be.alongB===1&&v(oe,De)),Be.alongB===0&&(Be.alongA===-1?v(te,J):Be.alongA===0?v(te,Be.pt):Be.alongA===1&&v(te,le));return!1}for(var x=[];!i.isEmpty();){var T=i.getHead();if(t&&t.vert(T.pt[0]),T.isStart){let oe=function(){if(M){var te=_(T,M);if(te)return te}return k?_(T,k):!1};var X=oe;t&&t.segmentNew(T.seg,T.primary);var E=A(T),M=E.before?E.before.ev:null,k=E.after?E.after.ev:null;t&&t.tempStatus(T.seg,M?M.seg:!1,k?k.seg:!1);var F=oe();if(F){if(e){var I;T.seg.myFill.below===null?I=!0:I=T.seg.myFill.above!==T.seg.myFill.below,I&&(F.seg.myFill.above=!F.seg.myFill.above)}else F.seg.otherFill=T.seg.myFill;t&&t.segmentUpdate(F.seg),T.other.remove(),T.remove()}if(i.getHead()!==T){t&&t.rewind(T.seg);continue}if(e){var I;T.seg.myFill.below===null?I=!0:I=T.seg.myFill.above!==T.seg.myFill.below,k?T.seg.myFill.below=k.seg.myFill.above:T.seg.myFill.below=p,I?T.seg.myFill.above=!T.seg.myFill.below:T.seg.myFill.above=T.seg.myFill.below}else if(T.seg.otherFill===null){var O;k?T.primary===k.primary?O=k.seg.otherFill.above:O=k.seg.myFill.above:O=T.primary?y:p,T.seg.otherFill={above:O,below:O}}t&&t.status(T.seg,M?M.seg:!1,k?k.seg:!1),T.other.status=E.insert(km.node({ev:T}))}else{var q=T.status;if(q===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(m.exists(q.prev)&&m.exists(q.next)&&_(q.prev.ev,q.next.ev),t&&t.statusRemove(q.ev.seg),q.remove(),!T.primary){var H=T.seg.myFill;T.seg.myFill=T.seg.otherFill,T.seg.otherFill=H}x.push(T.seg)}i.getHead().remove()}return t&&t.done(),x}return e?{addRegion:function(p){for(var y,m=p[p.length-1],b=0;b{function Ade(e,r,t){var a=[],n=[];return e.forEach(function(i){var o=i.start,l=i.end;if(r.pointsSame(o,l)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}t&&t.chainStart(i);var s={index:0,matches_head:!1,matches_pt1:!1},f={index:0,matches_head:!1,matches_pt1:!1},u=s;function c(X,oe,te){return u.index=X,u.matches_head=oe,u.matches_pt1=te,u===s?(u=f,!1):(u=null,!0)}for(var v=0;v{function Cm(e,r,t){var a=[];return e.forEach(function(n){var i=(n.myFill.above?8:0)+(n.myFill.below?4:0)+(n.otherFill&&n.otherFill.above?2:0)+(n.otherFill&&n.otherFill.below?1:0);r[i]!==0&&a.push({id:t?t.segmentId():-1,start:n.start,end:n.end,myFill:{above:r[i]===1,below:r[i]===2},otherFill:null})}),t&&t.selected(a),a}var Tde={union:function(e,r){return Cm(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],r)},intersect:function(e,r){return Cm(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],r)},difference:function(e,r){return Cm(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],r)},differenceRev:function(e,r){return Cm(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],r)},xor:function(e,r){return Cm(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],r)}};sN.exports=Tde});var cN=P((hDe,uN)=>{var Mde={toPolygon:function(e,r){function t(i){if(i.length<=0)return e.segments({inverted:!1,regions:[]});function o(f){var u=f.slice(0,f.length-1);return e.segments({inverted:!1,regions:[u]})}for(var l=o(i[0]),s=1;s{var Sde=KP(),Ede=rN(),vN=iN(),kde=lN(),Lm=fN(),hN=cN(),Xl=!1,Dm=Ede(),Ko;Ko={buildLog:function(e){return e===!0?Xl=Sde():e===!1&&(Xl=!1),Xl===!1?!1:Xl.list},epsilon:function(e){return Dm.epsilon(e)},segments:function(e){var r=vN(!0,Dm,Xl);return e.regions.forEach(r.addRegion),{segments:r.calculate(e.inverted),inverted:e.inverted}},combine:function(e,r){var t=vN(!1,Dm,Xl);return{combined:t.calculate(e.segments,e.inverted,r.segments,r.inverted),inverted1:e.inverted,inverted2:r.inverted}},selectUnion:function(e){return{segments:Lm.union(e.combined,Xl),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:Lm.intersect(e.combined,Xl),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:Lm.difference(e.combined,Xl),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:Lm.differenceRev(e.combined,Xl),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:Lm.xor(e.combined,Xl),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:kde(e.segments,Dm,Xl),inverted:e.inverted}},polygonFromGeoJSON:function(e){return hN.toPolygon(Ko,e)},polygonToGeoJSON:function(e){return hN.fromPolygon(Ko,Dm,e)},union:function(e,r){return Fm(e,r,Ko.selectUnion)},intersect:function(e,r){return Fm(e,r,Ko.selectIntersect)},difference:function(e,r){return Fm(e,r,Ko.selectDifference)},differenceRev:function(e,r){return Fm(e,r,Ko.selectDifferenceRev)},xor:function(e,r){return Fm(e,r,Ko.selectXor)}};function Fm(e,r,t){var a=Ko.segments(e),n=Ko.segments(r),i=Ko.combine(a,n),o=t(i);return Ko.polygon(o)}typeof window=="object"&&(window.PolyBool=Ko);dN.exports=Ko});var yN=P((pDe,mN)=>{mN.exports=function(r,t,a,n){var i=r[0],o=r[1],l=!1;a===void 0&&(a=0),n===void 0&&(n=t.length);for(var s=n-a,f=0,u=s-1;fo!=p>o&&i<(d-c)*(o-v)/(p-v)+c;y&&(l=!l)}return l}});var CA=P((mDe,gN)=>{"use strict";var kA=Vg().dot,U3=Kn().BADNUM,H3=gN.exports={};H3.tester=function(r){var t=r.slice(),a=t[0][0],n=a,i=t[0][1],o=i,l;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),l=1;ln||b===U3||bo||y&&f(p))}function c(p,y){var m=p[0],b=p[1];if(m===U3||mn||b===U3||bo)return!1;var A=t.length,_=t[0][0],x=t[0][1],T=0,E,M,k,F,I;for(E=1;EMath.max(M,_)||b>Math.max(k,x)))if(bl||Math.abs(kA(c,f))>n)return!0;return!1};H3.filter=function(r,t){var a=[r[0]],n=0,i=0;function o(s){r.push(s);var f=a.length,u=n;a.splice(i+1);for(var c=u+1;c1){var l=r.pop();o(l)}return{addPt:o,raw:r,filtered:a}}});var xN=P((yDe,bN)=>{"use strict";bN.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var UN=P((gDe,GN)=>{"use strict";var _N=pN(),Cde=yN(),Pm=Bt(),Lde=Ha().dashStyle,qm=ha(),Dde=Wc(),Fde=Cu().makeEventData,zm=jc(),qde=zm.freeMode,Rde=zm.rectMode,Nm=zm.drawMode,qA=zm.openMode,RA=zm.selectMode,wN=Jc(),AN=_m(),kN=k3(),CN=Ic().clearOutline,LN=Xc(),LA=LN.handleEllipse,Pde=LN.readPaths,Nde=T3().newShapes,Ide=tA(),Ode=EA().activateLastSelection,Y3=Ur(),Bde=Y3.sorterAsc,DN=CA(),Rm=n2(),Zl=kn().getFromId,zde=m3(),Gde=B3().redrawReglTraces,W3=xN(),qf=W3.MINSELECT,Ude=DN.filter,PA=DN.tester,NA=x3(),TN=NA.p2r,Hde=NA.axValue,Vde=NA.getTransform;function IA(e){return e.subplot!==void 0}function Yde(e,r,t,a,n){var i=!IA(a),o=qde(n),l=Rde(n),s=qA(n),f=Nm(n),u=RA(n),c=n==="drawline",v=n==="drawcircle",d=c||v,p=a.gd,y=p._fullLayout,m=u&&y.newselection.mode==="immediate"&&i,b=y._zoomlayer,A=a.element.getBoundingClientRect(),_=a.plotinfo,x=Vde(_),T=r-A.left,E=t-A.top;y._calcInverseTransform(p);var M=Y3.apply3DTransform(y._invTransform)(T,E);T=M[0],E=M[1];var k=y._invScaleX,F=y._invScaleY,I=T,O=E,q="M"+T+","+E,H=a.xaxes[0],X=a.yaxes[0],oe=H._length,te=X._length,Q=e.altKey&&!(Nm(n)&&s),Z,J,le,ce,De,Be,Ee;qN(e,p,a),o&&(Z=Ude([[T,E]],W3.BENDPX));var Xe=b.selectAll("path.select-outline-"+_.id).data([1]),Ae=f?y.newshape:y.newselection;f&&(a.hasText=Ae.label.text||Ae.label.texttemplate);var rr=f&&!s?Ae.fillcolor:"rgba(0,0,0,0)",ze=Ae.line.color||(i?qm.contrast(p._fullLayout.plot_bgcolor):"#7f7f7f");Xe.enter().append("path").attr("class","select-outline select-outline-"+_.id).style({opacity:f?Ae.opacity/2:1,"stroke-dasharray":Lde(Ae.line.dash,Ae.line.width),"stroke-width":Ae.line.width+"px","shape-rendering":"crispEdges"}).call(qm.stroke,ze).call(qm.fill,rr).attr("fill-rule","evenodd").classed("cursor-move",!!f).attr("transform",x).attr("d",q+"Z");var We=b.append("path").attr("class","zoombox-corners").style({fill:qm.background,stroke:qm.defaultLine,"stroke-width":1}).attr("transform",x).attr("d","M0,0Z");if(f&&a.hasText){var $e=b.select(".label-temp");$e.empty()&&($e=b.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var Ue=y._uid+W3.SELECTID,ee=[],de=j3(p,a.xaxes,a.yaxes,a.subplot);m&&!e.shiftKey&&(a._clearSubplotSelections=function(){if(i){var je=H._id,ur=X._id;ON(p,je,ur,de);for(var er=(p.layout||{}).selections||[],Lr=[],Pr=!1,_r=0;_r=0){p._fullLayout._deactivateShape(p);return}if(!f){var er=y.clickmode;Rm.done(Ue).then(function(){if(Rm.clear(Ue),je===2){for(Xe.remove(),De=0;De-1&&FN(ur,p,a.xaxes,a.yaxes,a.subplot,a,Xe),er==="event"&&Bm(p,void 0);Dde.click(p,ur,_.id)}).catch(Y3.error)}},a.doneFn=function(){We.remove(),Rm.done(Ue).then(function(){Rm.clear(Ue),!m&&ce&&a.selectionDefs&&(ce.subtract=Q,a.selectionDefs.push(ce),a.mergedPolygons.length=0,[].push.apply(a.mergedPolygons,le)),(m||f)&&Im(a,m),a.doneFnCompleted&&a.doneFnCompleted(ee),u&&Bm(p,Ee)}).catch(Y3.error)}}function FN(e,r,t,a,n,i,o){var l=r._hoverdata,s=r._fullLayout,f=s.clickmode,u=f.indexOf("event")>-1,c=[],v,d,p,y,m,b,A,_,x,T;if(Jde(l)){qN(e,r,i),v=j3(r,t,a,n);var E=$de(l,v),M=E.pointNumbers.length>0;if(M?Qde(v,E):Kde(v)&&(A=SN(E))){for(o&&o.remove(),T=0;T=0}function Zde(e){return e._fullLayout._activeSelectionIndex>=0}function Im(e,r){var t=e.dragmode,a=e.plotinfo,n=e.gd;Xde(n)&&n._fullLayout._deactivateShape(n),Zde(n)&&n._fullLayout._deactivateSelection(n);var i=n._fullLayout,o=i._zoomlayer,l=Nm(t),s=RA(t);if(l||s){var f=o.selectAll(".select-outline-"+a.id);if(f&&n._fullLayout._outlining){var u;l&&(u=Nde(f,e)),u&&Pm.call("_guiRelayout",n,{shapes:u});var c;s&&!IA(e)&&(c=Ide(f,e)),c&&(n._fullLayout._noEmitSelectedAtStart=!0,Pm.call("_guiRelayout",n,{selections:c}).then(function(){r&&Ode(n)})),n._fullLayout._outlining=!1}}a.selection={},a.selection.selectionDefs=e.selectionDefs=[],a.selection.mergedPolygons=e.mergedPolygons=[]}function MN(e){return e._id}function j3(e,r,t,a){if(!e.calcdata)return[];var n=[],i=r.map(MN),o=t.map(MN),l,s,f;for(f=0;f0,i=n?a[0]:t;return r.selectedpoints?r.selectedpoints.indexOf(i)>-1:!1}function Qde(e,r){var t=[],a,n,i,o;for(o=0;o0&&t.push(a);if(t.length===1&&(i=t[0]===r.searchInfo,i&&(n=r.searchInfo.cd[0].trace,n.selectedpoints.length===r.pointNumbers.length))){for(o=0;o1||(r+=a.selectedpoints.length,r>1)))return!1;return r===1}function Om(e,r,t){var a;for(a=0;a-1&&r;if(!o&&r){var je=EN(e,!0);if(je.length){var ur=je[0].xref,er=je[0].yref;if(ur&&er){var Lr=BN(je),Pr=zN([Zl(e,ur,"x"),Zl(e,er,"y")]);Pr(ee,Lr)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:ae&&Bm(e,ee),v._reselect=!1}if(!o&&v._deselect){var _r=v._deselect;l=_r.xref,s=_r.yref,tpe(l,s,u)||ON(e,l,s,a),ae&&(ee.points.length?Bm(e,ee):zA(e)),v._deselect=!1}return{eventData:ee,selectionTesters:t}}function rpe(e){var r=e.calcdata;if(r)for(var t=0;t{"use strict";HN.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var Gm=P((xDe,VN)=>{"use strict";VN.exports={axisRefDescription:function(e,r,t){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",r,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",r,"("+t+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",r,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",r,"and the",t,"of the domain of the","second",e,"axis."].join(" ")}}});var Vd=P((wDe,jN)=>{"use strict";var YN=GA(),WN=Gi(),X3=qi(),lpe=Xa().templatedArray,_De=Gm();jN.exports=lpe("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:WN({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:YN.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:YN.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",X3.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",X3.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",X3.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",X3.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:WN({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Um=P((ADe,XN)=>{"use strict";XN.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var UA=P((TDe,ZN)=>{"use strict";ZN.exports=function(r){return{valType:"color",editType:"style",anim:!0}}});var Qc=P((MDe,tI)=>{"use strict";var JN=im().axisHoverFormat,{hovertemplateAttrs:spe,texttemplateAttrs:fpe,templatefallbackAttrs:$N}=td(),QN=k0(),upe=Gi(),cpe=kc().dash,vpe=kc().pattern,hpe=Ha(),dpe=Um(),Z3=zn().extendFlat,ppe=UA();function KN(e){return{valType:"any",dflt:0,editType:"calc"}}function eI(e){return{valType:"any",editType:"calc"}}function rI(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}tI.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:KN("x"),yperiod:KN("y"),xperiod0:eI("x0"),yperiod0:eI("y0"),xperiodalignment:rI("x"),yperiodalignment:rI("y"),xhoverformat:JN("x"),yhoverformat:JN("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:fpe(),texttemplatefallback:$N({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:spe({},{keys:dpe.eventDataKeys}),hovertemplatefallback:$N(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:Z3({},cpe,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:ppe(!0),fillgradient:Z3({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:vpe,marker:Z3({symbol:{valType:"enumerated",values:hpe.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:Z3({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},QN("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},QN("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:upe({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var HA=P((EDe,iI)=>{"use strict";var aI=Vd(),nI=Qc().line,mpe=kc().dash,J3=zn().extendFlat,ype=Ls().overrideAll,gpe=Xa().templatedArray,SDe=Gm();iI.exports=ype(gpe("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:J3({},aI.xref,{}),yref:J3({},aI.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:nI.color,width:J3({},nI.width,{min:1,dflt:1}),dash:J3({},mpe,{dflt:"dot"})}}),"arraydraw","from-root")});var fI=P((kDe,sI)=>{"use strict";var oI=Ur(),$3=yn(),bpe=gl(),xpe=HA(),lI=Jc();sI.exports=function(r,t){bpe(r,t,{name:"selections",handleItemDefaults:_pe});for(var a=t.selections,n=0;n{"use strict";uI.exports=function(r,t,a){a("newselection.mode");var n=a("newselection.line.width");n&&(a("newselection.line.color"),a("newselection.line.dash")),a("activeselection.fillcolor"),a("activeselection.opacity")}});var Hm=P((LDe,dI)=>{"use strict";var wpe=Bt(),vI=Ur(),hI=kn();dI.exports=function(r){return function(a,n){var i=a[r];if(Array.isArray(i))for(var o=wpe.subplotsRegistry.cartesian,l=o.idRegex,s=n._subplots,f=s.xaxis,u=s.yaxis,c=s.cartesian,v=n._has("cartesian"),d=0;d{"use strict";var pI=EA(),Vm=UN();mI.exports={moduleType:"component",name:"selections",layoutAttributes:HA(),supplyLayoutDefaults:fI(),supplyDrawNewSelectionDefaults:cI(),includeBasePlot:Hm()("selections"),draw:pI.draw,drawOne:pI.drawOne,reselect:Vm.reselect,prepSelect:Vm.prepSelect,clearOutline:Vm.clearOutline,clearSelectionsCache:Vm.clearSelectionsCache,selectOnClick:Vm.selectOnClick}});var II=P((FDe,NI)=>{"use strict";var XA=da(),Jl=Ur(),yI=Jl.numberFormat,Ape=ks(),Tpe=Sw(),Q3=Bt(),SI=Jl.strTranslate,Mpe=po(),gI=ha(),Kc=Ha(),Spe=Wc(),bI=yn(),Epe=Yc(),kpe=Ns(),EI=jc(),K3=EI.selectingOrDrawing,Cpe=EI.freeMode,Lpe=ho().FROM_TL,Dpe=m3(),Fpe=B3().redrawReglTraces,qpe=xi(),YA=kn().getFromId,Rpe=Yd().prepSelect,Ppe=Yd().clearOutline,Npe=Yd().selectOnClick,VA=bA(),ZA=qi(),xI=ZA.MINDRAG,Ro=ZA.MINZOOM,_I=!0;function Ipe(e,r,t,a,n,i,o,l){var s=e._fullLayout._zoomlayer,f=o+l==="nsew",u=(o+l).length===1,c,v,d,p,y,m,b,A,_,x,T,E,M,k,F,I,O,q,H,X,oe,te,Q;t+=r.yaxis._shift;function Z(){if(c=r.xaxis,v=r.yaxis,_=c._length,x=v._length,b=c._offset,A=v._offset,d={},d[c._id]=c,p={},p[v._id]=v,o&&l)for(var tr=r.overlays,cr=0;cr=0){Hr._fullLayout._deactivateShape(Hr);return}var ot=Hr._fullLayout.clickmode;if(jA(Hr),tr===2&&!u&&Wr(),f)ot.indexOf("select")>-1&&Npe(cr,Hr,y,m,r.id,ce),ot.indexOf("event")>-1&&Spe.click(Hr,cr,r.id);else if(tr===1&&u){var jr=o?v:c,at=o==="s"||l==="w"?0:1,xt=jr._name+".range["+at+"]",Xr=Ope(jr,at),nt="left",gr="middle";if(jr.fixedrange)return;o?(gr=o==="n"?"top":"bottom",jr.side==="right"&&(nt="right")):l==="e"&&(nt="right"),Hr._context.showAxisRangeEntryBoxes&&XA.select(le).call(Mpe.makeEditable,{gd:Hr,immediate:!0,background:Hr._fullLayout.paper_bgcolor,text:String(Xr),fill:jr.tickfont?jr.tickfont.color:"#444",horizontalAlign:nt,verticalAlign:gr}).on("edit",function(Se){var Ne=jr.d2r(Se);Ne!==void 0&&Q3.call("_guiRelayout",Hr,xt,Ne)})}}kpe.init(ce);var Ee,Xe,Ae,rr,ze,We,$e,Ue,ee,de;function ae(tr,cr,Hr){var ot=le.getBoundingClientRect();Ee=cr-ot.left,Xe=Hr-ot.top,e._fullLayout._calcInverseTransform(e);var jr=Jl.apply3DTransform(e._fullLayout._invTransform)(Ee,Xe);Ee=jr[0],Xe=jr[1],Ae={l:Ee,r:Ee,w:0,t:Xe,b:Xe,h:0},rr=e._hmpixcount?e._hmlumcount/e._hmpixcount:Ape(e._fullLayout.plot_bgcolor).getLuminance(),ze="M0,0H"+_+"V"+x+"H0V0",We=!1,$e="xy",de=!1,Ue=LI(s,rr,b,A,ze),ee=DI(s,b,A)}function je(tr,cr){if(e._transitioningWithDuration)return!1;var Hr=Math.max(0,Math.min(_,te*tr+Ee)),ot=Math.max(0,Math.min(x,Q*cr+Xe)),jr=Math.abs(Hr-Ee),at=Math.abs(ot-Xe);Ae.l=Math.min(Ee,Hr),Ae.r=Math.max(Ee,Hr),Ae.t=Math.min(Xe,ot),Ae.b=Math.max(Xe,ot);function xt(){$e="",Ae.r=Ae.l,Ae.t=Ae.b,ee.attr("d","M0,0Z")}if(T.isSubplotConstrained)jr>Ro||at>Ro?($e="xy",jr/_>at/x?(at=jr*x/_,Xe>ot?Ae.t=Xe-at:Ae.b=Xe+at):(jr=at*_/x,Ee>Hr?Ae.l=Ee-jr:Ae.r=Ee+jr),ee.attr("d",eb(Ae))):xt();else if(E.isSubplotConstrained)if(jr>Ro||at>Ro){$e="xy";var Xr=Math.min(Ae.l/_,(x-Ae.b)/x),nt=Math.max(Ae.r/_,(x-Ae.t)/x);Ae.l=Xr*_,Ae.r=nt*_,Ae.b=(1-Xr)*x,Ae.t=(1-nt)*x,ee.attr("d",eb(Ae))}else xt();else!k||at0){var Se;if(E.isSubplotConstrained||!M&&k.length===1){for(Se=0;Se1&&(xt.maxallowed!==void 0&&I===(xt.range[0]1&&(Xr.maxallowed!==void 0&&O===(Xr.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function zpe(e,r,t){return e?e==="nsew"?t?"":r==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function LI(e,r,t,a,n){return e.append("path").attr("class","zoombox").style({fill:r>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",SI(t,a)).attr("d",n+"Z")}function DI(e,r,t){return e.append("path").attr("class","zoombox-corners").style({fill:gI.background,stroke:gI.defaultLine,"stroke-width":1,opacity:0}).attr("transform",SI(r,t)).attr("d","M0,0Z")}function FI(e,r,t,a,n,i){e.attr("d",a+"M"+t.l+","+t.t+"v"+t.h+"h"+t.w+"v-"+t.h+"h-"+t.w+"Z"),qI(e,r,n,i)}function qI(e,r,t,a){t||(e.transition().style("fill",a>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),r.transition().style("opacity",1).duration(200))}function jA(e){XA.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function RI(e){_I&&e.data&&e._context.showTips&&(Jl.notifier(Jl._(e,"Double-click to zoom back out"),"long"),_I=!1)}function Gpe(e,r){return"M"+(e.l-.5)+","+(r-Ro-.5)+"h-3v"+(2*Ro+1)+"h3ZM"+(e.r+.5)+","+(r-Ro-.5)+"h3v"+(2*Ro+1)+"h-3Z"}function Upe(e,r){return"M"+(r-Ro-.5)+","+(e.t-.5)+"v-3h"+(2*Ro+1)+"v3ZM"+(r-Ro-.5)+","+(e.b+.5)+"v3h"+(2*Ro+1)+"v-3Z"}function eb(e){var r=Math.floor(Math.min(e.b-e.t,e.r-e.l,Ro)/2);return"M"+(e.l-3.5)+","+(e.t-.5+r)+"h3v"+-r+"h"+r+"v-3h-"+(r+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+r)+"h-3v"+-r+"h"+-r+"v-3h"+(r+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-r)+"h-3v"+r+"h"+-r+"v3h"+(r+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-r)+"h3v"+r+"h"+r+"v3h-"+(r+3)+"Z"}function TI(e,r,t,a,n){for(var i=!1,o={},l={},s,f,u,c,v=(n||{}).xaHash,d=(n||{}).yaHash,p=0;p{"use strict";var Hpe=da(),rb=Wc(),Vpe=Ns(),Ype=Yc(),Bs=II().makeDragBox,Ti=qi().DRAGGERSIZE;tb.initInteractions=function(r){var t=r._fullLayout;if(r._context.staticPlot){Hpe.select(r).selectAll(".drag").remove();return}if(!(!t._has("cartesian")&&!t._has("splom"))){var a=Object.keys(t._plots||{}).sort(function(i,o){if((t._plots[i].mainplot&&!0)===(t._plots[o].mainplot&&!0)){var l=i.split("y"),s=o.split("y");return l[0]===s[0]?Number(l[1]||1)-Number(s[1]||1):Number(l[0]||1)-Number(s[0]||1)}return t._plots[i].mainplot?1:-1});a.forEach(function(i){var o=t._plots[i],l=o.xaxis,s=o.yaxis;if(!o.mainplot){var f=Bs(r,o,l._offset,s._offset,l._length,s._length,"ns","ew");f.onmousemove=function(v){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===i&&r._fullLayout._plots[i]&&rb.hover(r,v,i)},rb.hover(r,v,i),r._fullLayout._lasthover=f,r._fullLayout._hoversubplot=i},f.onmouseout=function(v){r._dragging||(r._fullLayout._hoversubplot=null,Vpe.unhover(r,v))},r._context.showAxisDragHandles&&(Bs(r,o,l._offset-Ti,s._offset-Ti,Ti,Ti,"n","w"),Bs(r,o,l._offset+l._length,s._offset-Ti,Ti,Ti,"n","e"),Bs(r,o,l._offset-Ti,s._offset+s._length,Ti,Ti,"s","w"),Bs(r,o,l._offset+l._length,s._offset+s._length,Ti,Ti,"s","e"))}if(r._context.showAxisDragHandles){if(i===l._mainSubplot){var u=l._mainLinePosition;l.side==="top"&&(u-=Ti),Bs(r,o,l._offset+l._length*.1,u,l._length*.8,Ti,"","ew"),Bs(r,o,l._offset,u,l._length*.1,Ti,"","w"),Bs(r,o,l._offset+l._length*.9,u,l._length*.1,Ti,"","e")}if(i===s._mainSubplot){var c=s._mainLinePosition;s.side!=="right"&&(c-=Ti),Bs(r,o,c,s._offset+s._length*.1,Ti,s._length*.8,"ns",""),Bs(r,o,c,s._offset+s._length*.9,Ti,s._length*.1,"s",""),Bs(r,o,c,s._offset,Ti,s._length*.1,"n","")}}});var n=t._hoverlayer.node();n.onmousemove=function(i){i.target=r._fullLayout._lasthover,rb.hover(r,i,t._hoversubplot)},n.onclick=function(i){i.target=r._fullLayout._lasthover,rb.click(r,i)},n.onmousedown=function(i){r._fullLayout._lasthover.onmousedown(i)},tb.updateFx(r)}};tb.updateFx=function(e){var r=e._fullLayout,t=r.dragmode==="pan"?"move":"crosshair";Ype(r._draggers,t)}});var zI=P((RDe,BI)=>{"use strict";var OI=Bt();BI.exports=function(r){for(var t=OI.layoutArrayContainers,a=OI.layoutArrayRegexes,n=r.split("[")[0],i,o,l=0;l{"use strict";var Wpe=Mc(),$A=Hg(),Ym=g0(),jpe=V5().sorterAsc,QA=Bt();Wm.containerArrayMatch=zI();var Xpe=Wm.isAddVal=function(r){return r==="add"||Wpe(r)},GI=Wm.isRemoveVal=function(r){return r===null||r==="remove"};Wm.applyContainerArrayChanges=function(r,t,a,n,i){var o=t.astr,l=QA.getComponentMethod(o,"supplyLayoutDefaults"),s=QA.getComponentMethod(o,"draw"),f=QA.getComponentMethod(o,"drawOne"),u=n.replot||n.recalc||l===$A||s===$A,c=r.layout,v=r._fullLayout;if(a[""]){Object.keys(a).length>1&&Ym.warn("Full array edits are incompatible with other edits",o);var d=a[""][""];if(GI(d))t.set(null);else if(Array.isArray(d))t.set(d);else return Ym.warn("Unrecognized full array edit value",o,d),!0;return u?!1:(l(c,v),s(r),!0)}var p=Object.keys(a).map(Number).sort(jpe),y=t.get(),m=y||[],b=i(v,o).get(),A=[],_=-1,x=m.length,T,E,M,k,F,I,O,q;for(T=0;Tm.length-(O?0:1)){Ym.warn("index out of range",o,M);continue}if(I!==void 0)F.length>1&&Ym.warn("Insertion & removal are incompatible with edits to the same index.",o,M),GI(I)?A.push(M):O?(I==="add"&&(I={}),m.splice(M,0,I),b&&b.splice(M,0,{})):Ym.warn("Unrecognized full object edit value",o,M,I),_===-1&&(_=M);else for(E=0;E=0;T--)m.splice(A[T],1),b&&b.splice(A[T],1);if(m.length?y||t.set(m):t.set(null),u)return!1;if(l(c,v),f!==$A){var H;if(_===-1)H=p;else{for(x=Math.max(m.length,x),H=[],T=0;T=_));T++)H.push(M);for(T=_;T{"use strict";var WI=ba(),jI=Bt(),xo=Ur(),jm=xi(),XI=kn(),ZI=ha(),Xm=XI.cleanId,Zpe=XI.getFromTrace,KA=jI.traceIs,Jpe=["x","y","z"];$l.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&xo.log("Clearing previous rejected promises from queue."),e._promises=[]};$l.cleanLayout=function(e){var r,t;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var a=(jm.subplotsRegistry.cartesian||{}).attrRegex,n=(jm.subplotsRegistry.polar||{}).attrRegex,i=(jm.subplotsRegistry.ternary||{}).attrRegex,o=(jm.subplotsRegistry.gl3d||{}).attrRegex,l=Object.keys(e);for(r=0;r3?(m.x=1.02,m.xanchor="left"):m.x<-2&&(m.x=-.02,m.xanchor="right"),m.y>3?(m.y=1.02,m.yanchor="bottom"):m.y<-2&&(m.y=-.02,m.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),ZI.clean(e),e.template&&e.template.layout&&$l.cleanLayout(e.template.layout),e};function Wd(e,r){var t=e[r],a=r.charAt(0);t&&t!=="paper"&&(e[r]=Xm(t,a,!0))}$l.cleanData=function(e){for(var r=0;r0)return e.substr(0,r)}$l.hasParent=function(e,r){for(var t=YI(r);t;){if(t in e)return!0;t=YI(t)}return!1};$l.clearAxisTypes=function(e,r,t){for(var a=0;a{let t=(...a)=>a.every(n=>xo.isPlainObject(n))||a.every(n=>Array.isArray(n));if([e,r].every(a=>Array.isArray(a))){if(e.length!==r.length)return!1;for(let a=0;axo.isPlainObject(a))){if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let a in e){if(a.startsWith("_"))continue;let n=e[a],i=r[a];if(n!==i&&!(t(n,i)?e6(n,i):!1))return!1}return!0}return!1};$l.collectionsAreEqual=e6});var o6=P(pa=>{"use strict";var ob=da(),Kpe=ba(),e1e=a4(),bt=Ur(),rn=bt.nestedProperty,a6=Q1(),Po=kC(),Ql=Bt(),hb=dd(),zt=xi(),_o=yn(),r1e=Mw(),t1e=Ul(),r6=Ha(),a1e=ha(),n1e=JA().initInteractions,i1e=Oc(),o1e=Yd().clearOutline,rO=y0().dfltConfig,nb=UI(),Vn=JI(),Oa=B3(),ev=Ls(),l1e=qi().AX_NAME_PATTERN,t6=0,$I=5;function s1e(e,r,t,a){var n;if(e=bt.getGraphDiv(e),a6.init(e),bt.isPlainObject(r)){var i=r;r=i.data,t=i.layout,a=i.config,n=i.frames}var o=a6.triggerHandler(e,"plotly_beforeplot",[r,t,a]);if(o===!1)return Promise.reject();!r&&!t&&!bt.isPlotDiv(e)&&bt.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function l(){if(n)return pa.addFrames(e,n)}aO(e,a),t||(t={}),ob.select(e).classed("js-plotly-plot",!0),r6.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var s=(e.data||[]).length===0&&Array.isArray(r);Array.isArray(r)&&(Vn.cleanData(r),s?e.data=r:e.data.push.apply(e.data,r),e.empty=!1),(!e.layout||s)&&(e.layout=Vn.cleanLayout(t)),zt.supplyDefaults(e);var f=e._fullLayout,u=f._has("cartesian");f._replotting=!0,(s||f._shouldCreateBgLayer)&&(D1e(e),f._shouldCreateBgLayer&&delete f._shouldCreateBgLayer),r6.initGradients(e),r6.initPatterns(e),s&&_o.saveShowSpikeInitial(e);var c=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;c&&zt.doCalcdata(e);for(var v=0;v=e.data.length||n<-e.data.length)throw new Error(t+" must be valid indices for gd.data.");if(r.indexOf(n,a+1)>-1||n>=0&&r.indexOf(-e.data.length+n)>-1||n<0&&r.indexOf(e.data.length+n)>-1)throw new Error("each index in "+t+" must be unique.")}}function nO(e,r,t){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(r)||(r=[r]),sb(e,r,"currentIndices"),typeof t!="undefined"&&!Array.isArray(t)&&(t=[t]),typeof t!="undefined"&&sb(e,t,"newIndices"),typeof t!="undefined"&&r.length!==t.length)throw new Error("current and new indices must be of equal length.")}function h1e(e,r,t){var a,n;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("traces must be defined.");for(Array.isArray(r)||(r=[r]),a=0;a=0&&u=0&&u0&&typeof k.parts[O]!="string";)O--;var q=k.parts[O],H=k.parts[O-1]+"."+q,X=k.parts.slice(0,O).join("."),oe=rn(e.layout,X).get(),te=rn(a,X).get(),Q=k.get();if(F!==void 0){b[M]=F,A[M]=q==="reverse"?F:Pu(Q);var Z=hb.getLayoutValObject(a,k.parts);if(Z&&Z.impliedEdits&&F!==null)for(var J in Z.impliedEdits)_(bt.relativeAttr(M,J),Z.impliedEdits[J]);if(["width","height"].indexOf(M)!==-1)if(F){_("autosize",null);var le=M==="height"?"width":"height";_(le,a[le])}else a[M]=e._initialAutoSize[M];else if(M==="autosize")_("width",F?null:a.width),_("height",F?null:a.height);else if(H.match(hO))E(H),rn(a,X+"._inputRange").set(null);else if(H.match(dO)){E(H),rn(a,X+"._inputRange").set(null);var ce=rn(a,X).get();ce._inputDomain&&(ce._input.domain=ce._inputDomain.slice())}else H.match(y1e)&&rn(a,X+"._inputDomain").set(null);if(q==="type"){T=oe;var De=te.type==="linear"&&F==="log",Be=te.type==="log"&&F==="linear";if(De||Be){if(!T||!T.range)_(X+".autorange",!0);else if(te.autorange)De&&(T.range=T.range[1]>T.range[0]?[1,2]:[2,1]);else{var Ee=T.range[0],Xe=T.range[1];De?(Ee<=0&&Xe<=0&&_(X+".autorange",!0),Ee<=0?Ee=Xe/1e6:Xe<=0&&(Xe=Ee/1e6),_(X+".range[0]",Math.log(Ee)/Math.LN10),_(X+".range[1]",Math.log(Xe)/Math.LN10)):(_(X+".range[0]",Math.pow(10,Ee)),_(X+".range[1]",Math.pow(10,Xe)))}Array.isArray(a._subplots.polar)&&a._subplots.polar.length&&a[k.parts[0]]&&k.parts[1]==="radialaxis"&&delete a[k.parts[0]]._subplot.viewInitial["radialaxis.range"],Ql.getComponentMethod("annotations","convertCoords")(e,te,F,_),Ql.getComponentMethod("images","convertCoords")(e,te,F,_)}else _(X+".autorange",!0),_(X+".range",null);rn(a,X+"._inputRange").set(null)}else if(q.match(l1e)){var Ae=rn(a,M).get(),rr=(F||{}).type;(!rr||rr==="-")&&(rr="linear"),Ql.getComponentMethod("annotations","convertCoords")(e,Ae,rr,_),Ql.getComponentMethod("images","convertCoords")(e,Ae,rr,_)}var ze=nb.containerArrayMatch(M);if(ze){u=ze.array,c=ze.index;var We=ze.property,$e=Z||{editType:"calc"};c!==""&&We===""&&(nb.isAddVal(F)?A[M]=null:nb.isRemoveVal(F)?A[M]=(rn(t,u).get()||[])[c]:bt.warn("unrecognized full object value",r)),ev.update(m,$e),f[u]||(f[u]={});var Ue=f[u][c];Ue||(Ue=f[u][c]={}),Ue[We]=F,delete r[M]}else q==="reverse"?(oe.range?oe.range.reverse():(_(X+".autorange",!0),oe.range=[1,0]),te.autorange?m.calc=!0:m.plot=!0):(M==="dragmode"&&(F===!1&&Q!==!1||F!==!1&&Q===!1)||a._has("scatter-like")&&a._has("regl")&&M==="dragmode"&&(F==="lasso"||F==="select")&&!(Q==="lasso"||Q==="select")?m.plot=!0:Z?ev.update(m,Z):m.calc=!0,k.set(F))}}for(u in f){var ee=nb.applyContainerArrayChanges(e,i(t,u),f[u],m,i);ee||(m.plot=!0)}for(var de in x){T=_o.getFromId(e,de);var ae=T&&T._constraintGroup;if(ae){m.calc=!0;for(var je in ae)x[je]||(_o.getFromId(e,je)._constraintShrinkable=!0)}}(mO(e)||r.height||r.width)&&(m.plot=!0);var ur=a.shapes;for(c=0;c1;)if(a.pop(),t=rn(r,a.join(".")+".uirevision").get(),t!==void 0)return t;return r.uirevision}function x1e(e,r){for(var t=0;t[X,e._ev.listeners(X)]);i=pa.newPlot(e,r,t,a).then(()=>{for(let[X,oe]of H)oe.forEach(te=>e.on(X,te));return pa.react(e,r,t,a)})}else{e.data=r||[],Vn.cleanData(e.data),e.layout=t||{},Vn.cleanLayout(e.layout),w1e(e.data,e.layout,l,s),zt.supplyDefaults(e,{skipUpdateCalc:!0});var c=e._fullData,v=e._fullLayout,d=v.datarevision===void 0,p=v.transition,y=M1e(e,s,v,d,p),m=y.newDataRevision,b=T1e(e,l,c,d,p,m);if(mO(e)&&(y.layoutReplot=!0),b.calc||y.calc){e.calcdata=void 0;for(var A=Object.getOwnPropertyNames(v),_=0;_(u||e.emit("plotly_react",{config:a,data:r,layout:t}),e))}function T1e(e,r,t,a,n,i){var o=r.length===t.length;if(!n&&!o)return{fullReplot:!0,calc:!0};var l=ev.traceFlags();l.arrays={},l.nChanges=0,l.nChangesAnim=0;var s,f;function u(d){var p=hb.getTraceValObject(f,d);return!f._module.animatable&&p.anim&&(p.anim=!1),p}var c={getValObject:u,flags:l,immutable:a,transition:n,newDataRevision:i,gd:e},v={};for(s=0;s=n.length?n[0]:n[f]:n}function l(f){return Array.isArray(i)?f>=i.length?i[0]:i[f]:i}function s(f,u){var c=0;return function(){if(f&&++c===u)return f()}}return new Promise(function(f,u){function c(){if(a._frameQueue.length!==0){for(;a._frameQueue.length;){var q=a._frameQueue.pop();q.onInterrupt&&q.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function v(q){if(q.length!==0){for(var H=0;Ha._timeToNext&&p()};q()}var m=0;function b(q){return Array.isArray(n)?m>=n.length?q.transitionOpts=n[m]:q.transitionOpts=n[0]:q.transitionOpts=n,m++,q}var A,_,x=[],T=r==null,E=Array.isArray(r),M=!T&&!E&&bt.isPlainObject(r);if(M)x.push({type:"object",data:b(bt.extendFlat({},r))});else if(T||["string","number"].indexOf(typeof r)!==-1)for(A=0;A0&&II)&&O.push(_);x=O}}x.length>0?v(x):(e.emit("plotly_animated"),f())})}function E1e(e,r,t){if(e=bt.getGraphDiv(e),r==null)return Promise.resolve();if(!bt.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var a,n,i,o,l=e._transitionData._frames,s=e._transitionData._frameHash;if(!Array.isArray(r))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+r);var f=l.length+r.length*2,u=[],c={};for(a=r.length-1;a>=0;a--)if(bt.isPlainObject(r[a])){var v=r[a].name,d=(s[v]||c[v]||{}).name,p=r[a].name,y=s[d]||c[d];d&&p&&typeof p=="number"&&y&&t6<$I&&(t6++,bt.warn('addFrames: overwriting frame "'+(s[d]||c[d]).name+'" with a frame whose name of type "number" also equates to "'+d+'". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),t6===$I&&bt.warn("addFrames: This API call has yielded too many of these warnings. For the rest of this call, further warnings about numeric frame names will be suppressed.")),c[v]={name:v},u.push({frame:zt.supplyFrameDefaults(r[a]),index:t&&t[a]!==void 0&&t[a]!==null?t[a]:f+a})}u.sort(function(M,k){return M.index>k.index?-1:M.index=0;a--){if(n=u[a].frame,typeof n.name=="number"&&bt.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!n.name)for(;s[n.name="frame "+e._transitionData._counter++];);if(s[n.name]){for(i=0;i=0;t--)a=r[t],i.push({type:"delete",index:a}),o.unshift({type:"insert",index:a,value:n[a]});var l=zt.modifyFrames,s=zt.modifyFrames,f=[e,o],u=[e,i];return Po&&Po.add(e,l,f,s,u),zt.modifyFrames(e,i)}function C1e(e){e=bt.getGraphDiv(e);var r=e._fullLayout||{},t=e._fullData||[];return zt.cleanPlot([],{},t,r),zt.purge(e),a6.purge(e),r._container&&r._container.remove(),delete e._context,e}function L1e(e){var r=e._fullLayout,t=e.getBoundingClientRect();if(!bt.equalDomRects(t,r._lastBBox)){var a=r._invTransform=bt.inverseTransformMatrix(bt.getFullTransformMatrix(e));r._invScaleX=Math.sqrt(a[0][0]*a[0][0]+a[0][1]*a[0][1]+a[0][2]*a[0][2]),r._invScaleY=Math.sqrt(a[1][0]*a[1][0]+a[1][1]*a[1][1]+a[1][2]*a[1][2]),r._lastBBox=t}}function D1e(e){var r=ob.select(e),t=e._fullLayout;if(t._calcInverseTransform=L1e,t._calcInverseTransform(e),t._container=r.selectAll(".plot-container").data([0]),t._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),t._paperdiv=t._container.selectAll(".svg-container").data([0]),t._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),t._glcontainer=t._paperdiv.selectAll(".gl-container").data([{}]),t._glcontainer.enter().append("div").classed("gl-container",!0),t._paperdiv.selectAll(".main-svg").remove(),t._paperdiv.select(".modebar-container").remove(),t._paper=t._paperdiv.insert("svg",":first-child").classed("main-svg",!0),t._toppaper=t._paperdiv.append("svg").classed("main-svg",!0),t._modebardiv=t._paperdiv.append("div"),delete t._modeBar,t._hoverpaper=t._paperdiv.append("svg").classed("main-svg",!0),!t._uid){var a={};ob.selectAll("defs").each(function(){this.id&&(a[this.id.split("-")[1]]=1)}),t._uid=bt.randstr(a)}t._paperdiv.selectAll(".main-svg").attr(i1e.svgAttrs),t._defs=t._paper.append("defs").attr("id","defs-"+t._uid),t._clips=t._defs.append("g").classed("clips",!0),t._topdefs=t._toppaper.append("defs").attr("id","topdefs-"+t._uid),t._topclips=t._topdefs.append("g").classed("clips",!0),t._bgLayer=t._paper.append("g").classed("bglayer",!0),t._draggers=t._paper.append("g").classed("draglayer",!0);var n=t._paper.append("g").classed("layer-below",!0);t._imageLowerLayer=n.append("g").classed("imagelayer",!0),t._shapeLowerLayer=n.append("g").classed("shapelayer",!0),t._cartesianlayer=t._paper.append("g").classed("cartesianlayer",!0),t._polarlayer=t._paper.append("g").classed("polarlayer",!0),t._smithlayer=t._paper.append("g").classed("smithlayer",!0),t._ternarylayer=t._paper.append("g").classed("ternarylayer",!0),t._geolayer=t._paper.append("g").classed("geolayer",!0),t._funnelarealayer=t._paper.append("g").classed("funnelarealayer",!0),t._pielayer=t._paper.append("g").classed("pielayer",!0),t._iciclelayer=t._paper.append("g").classed("iciclelayer",!0),t._treemaplayer=t._paper.append("g").classed("treemaplayer",!0),t._sunburstlayer=t._paper.append("g").classed("sunburstlayer",!0),t._indicatorlayer=t._toppaper.append("g").classed("indicatorlayer",!0),t._glimages=t._paper.append("g").classed("glimages",!0);var i=t._toppaper.append("g").classed("layer-above",!0);t._imageUpperLayer=i.append("g").classed("imagelayer",!0),t._shapeUpperLayer=i.append("g").classed("shapelayer",!0),t._selectionLayer=t._toppaper.append("g").classed("selectionlayer",!0),t._infolayer=t._toppaper.append("g").classed("infolayer",!0),t._menulayer=t._toppaper.append("g").classed("menulayer",!0),t._zoomlayer=t._toppaper.append("g").classed("zoomlayer",!0),t._hoverlayer=t._hoverpaper.append("g").classed("hoverlayer",!0),t._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}pa.animate=S1e;pa.addFrames=E1e;pa.deleteFrames=k1e;pa.addTraces=fO;pa.deleteTraces=uO;pa.extendTraces=lO;pa.moveTraces=n6;pa.prependTraces=sO;pa.newPlot=v1e;pa._doPlot=s1e;pa.purge=C1e;pa.react=A1e;pa.redraw=c1e;pa.relayout=Zm;pa.restyle=fb;pa.setPlotConfig=f1e;pa.update=cb;pa._guiRelayout=i6(Zm);pa._guiRestyle=i6(fb);pa._guiUpdate=i6(cb);pa._storeDirectGUIEdit=m1e});var W0=P(Rf=>{"use strict";var F1e=Bt();Rf.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Rf.getRedrawFunc=function(e){return function(){F1e.getComponentMethod("colorbar","draw")(e)}};Rf.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Rf.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var yO=window.URL||window.webkitURL;Rf.createObjectURL=function(e){return yO.createObjectURL(e)};Rf.revokeObjectURL=function(e){return yO.revokeObjectURL(e)};Rf.createBlob=function(e,r){if(r==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(r==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var t=q1e(window.atob(e));return new window.Blob([t],{type:"image/"+r})};Rf.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function q1e(e){for(var r=e.length,t=new ArrayBuffer(r),a=new Uint8Array(t),n=0;n{"use strict";var s6=da(),BDe=Ur(),R1e=Ha(),P1e=ha(),zDe=Oc(),l6=/"/g,$m="TOBESTRIPPED",N1e=new RegExp('("'+$m+")|("+$m+'")',"g");function I1e(e){var r=s6.select("body").append("div").style({display:"none"}).html(""),t=e.replace(/(&[^;]*;)/gi,function(a){return a==="<"?"<":a==="&rt;"?">":a.indexOf("<")!==-1||a.indexOf(">")!==-1?"":r.html(a).text()});return r.remove(),t}function O1e(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}gO.exports=function(r,t,a){var n=r._fullLayout,i=n._paper,o=n._toppaper,l=n.width,s=n.height,f;i.insert("rect",":first-child").call(R1e.setRect,0,0,l,s).call(P1e.fill,n.paper_bgcolor);var u=n._basePlotModules||[];for(f=0;f{"use strict";var B1e=Ur(),z1e=c2().EventEmitter,Qm=W0();function G1e(e){var r=e.emitter||new z1e,t=new Promise(function(a,n){var i=window.Image,o=e.svg,l=e.format||"png",s=e.canvas,f=e.scale||1,u=e.width||300,c=e.height||150,v=f*u,d=f*c,p=s.getContext("2d",{willReadFrequently:!0}),y=new i,m,b;l==="svg"||B1e.isSafari()?b=Qm.encodeSVG(o):(m=Qm.createBlob(o,"svg"),b=Qm.createObjectURL(m)),s.width=v,s.height=d,y.onload=function(){var A;switch(m=null,Qm.revokeObjectURL(b),l!=="svg"&&p.drawImage(y,0,0,v,d),l){case"jpeg":A=s.toDataURL("image/jpeg");break;case"png":A=s.toDataURL("image/png");break;case"webp":A=s.toDataURL("image/webp");break;case"svg":A=b;break;default:var _="Image format is not jpeg, png, svg or webp.";if(n(new Error(_)),!e.promise)return r.emit("error",_)}a(A),e.promise||r.emit("success",A)},y.onerror=function(A){if(m=null,Qm.revokeObjectURL(b),n(A),!e.promise)return r.emit("error",A)},y.src=b});return e.promise?t:r}bO.exports=G1e});var u6=P((HDe,wO)=>{"use strict";var xO=ba(),_O=o6(),U1e=xi(),Pf=Ur(),Km=W0(),H1e=pb(),V1e=mb(),Y1e=Eg().version,f6={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function W1e(e,r){r=r||{};var t,a,n,i;Pf.isPlainObject(e)?(t=e.data||[],a=e.layout||{},n=e.config||{},i={}):(e=Pf.getGraphDiv(e),t=Pf.extendDeep([],e.data),a=Pf.extendDeep({},e.layout),n=e._context,i=e._fullLayout||{});function o(E){return!(E in r)||Pf.validate(r[E],f6[E])}if(!o("width")&&r.width!==null||!o("height")&&r.height!==null)throw new Error("Height and width should be pixel values.");if(!o("format"))throw new Error("Export format is not "+Pf.join2(f6.format.values,", "," or ")+".");var l={};function s(E,M){return Pf.coerce(r,l,f6,E,M)}var f=s("format"),u=s("width"),c=s("height"),v=s("scale"),d=s("setBackground"),p=s("imageDataOnly"),y=document.createElement("div");y.style.position="absolute",y.style.left="-5000px",document.body.appendChild(y);var m=Pf.extendFlat({},a);u?m.width=u:r.width===null&&xO(i.width)&&(m.width=i.width),c?m.height=c:r.height===null&&xO(i.height)&&(m.height=i.height);var b=Pf.extendFlat({},n,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),A=Km.getRedrawFunc(y);function _(){return new Promise(function(E){setTimeout(E,Km.getDelay(y._fullLayout))})}function x(){return new Promise(function(E,M){var k=H1e(y,f,v),F=y._fullLayout.width,I=y._fullLayout.height;function O(){_O.purge(y),document.body.removeChild(y)}if(f==="full-json"){var q=U1e.graphJson(y,!1,"keepdata","object",!0,!0);return q.version=Y1e,q=JSON.stringify(q),O(),E(p?q:Km.encodeJSON(q))}if(O(),f==="svg")return E(p?k:Km.encodeSVG(k));var H=document.createElement("canvas");H.id=Pf.randstr(),V1e({format:f,width:F,height:I,scale:v,canvas:H,svg:k,promise:!0}).then(E).catch(M)})}function T(E){return p?E.replace(Km.IMAGE_URL_PREFIX,""):E}return new Promise(function(E,M){_O.newPlot(y,t,m,b).then(A).then(_).then(x).then(function(k){E(T(k))}).catch(function(k){M(k)})})}wO.exports=W1e});var MO=P((VDe,TO)=>{"use strict";var Kl=Ur(),j1e=xi(),X1e=dd(),Z1e=y0().dfltConfig,zs=Kl.isPlainObject,X0=Array.isArray,c6=Kl.isArrayOrTypedArray;TO.exports=function(r,t){r===void 0&&(r=[]),t===void 0&&(t={});var a=X1e.get(),n=[],i={_context:Kl.extendFlat({},Z1e)},o,l;X0(r)?(i.data=Kl.extendDeep([],r),o=r):(i.data=[],o=[],n.push(Mi("array","data"))),zs(t)?(i.layout=Kl.extendDeep({},t),l=t):(i.layout={},l={},arguments.length>1&&n.push(Mi("object","layout"))),j1e.supplyDefaults(i);for(var s=i._fullData,f=o.length,u=0;uc.length&&a.push(Mi("unused",n,f.concat(c.length)));var b=c.length,A=Array.isArray(m);A&&(b=Math.min(b,m.length));var _,x,T,E,M;if(v.dimensions===2)for(x=0;xc[x].length&&a.push(Mi("unused",n,f.concat(x,c[x].length)));var k=c[x].length;for(_=0;_<(A?Math.min(k,m[x].length):k);_++)T=A?m[x][_]:m,E=u[x][_],M=c[x][_],Kl.validate(E,T)?M!==E&&M!==+E&&a.push(Mi("dynamic",n,f.concat(x,_),E,M)):a.push(Mi("value",n,f.concat(x,_),E))}else a.push(Mi("array",n,f.concat(x),u[x]));else for(x=0;x{"use strict";var tme=Ur(),gb=W0();function ame(e,r,t){var a=document.createElement("a"),n="download"in a,i=new Promise(function(o,l){var s,f;if(n)return s=gb.createBlob(e,t),f=gb.createObjectURL(s),a.href=f,a.download=r,document.body.appendChild(a),a.click(),document.body.removeChild(a),gb.revokeObjectURL(f),s=null,o(r);if(tme.isSafari()){var u=t==="svg"?",":";base64,";return gb.octetStream(u+encodeURIComponent(e)),o(r)}l(new Error("download error"))});return i}SO.exports=ame});var v6=P((jDe,CO)=>{"use strict";var kO=Ur(),nme=u6(),ime=EO(),WDe=W0();function ome(e,r){var t;return kO.isPlainObject(e)||(t=kO.getGraphDiv(e)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(a,n){t&&t._snapshotInProgress&&n(new Error("Snapshotting already in progress.")),t&&(t._snapshotInProgress=!0);var i=nme(e,r),o=r.filename||e.fn||"newplot";o+="."+r.format.replace("-","."),i.then(function(l){return t&&(t._snapshotInProgress=!1),ime(l,o,r.format)}).then(function(l){a(l)}).catch(function(l){t&&(t._snapshotInProgress=!1),n(l)})})}CO.exports=ome});var RO=P(h6=>{"use strict";var el=Ur(),rl=el.isPlainObject,LO=dd(),DO=xi(),lme=Cs(),FO=Xa(),qO=y0().dfltConfig;h6.makeTemplate=function(e){e=el.isPlainObject(e)?e:el.getGraphDiv(e),e=el.extendDeep({_context:qO},{data:e.data,layout:e.layout}),DO.supplyDefaults(e);var r=e.data||[],t=e.layout||{};t._basePlotModules=e._fullLayout._basePlotModules,t._modules=e._fullLayout._modules;var a={data:{},layout:{}};r.forEach(function(d){var p={};ey(d,p,fme.bind(null,d));var y=el.coerce(d,{},lme,"type"),m=a.data[y];m||(m=a.data[y]=[]),m.push(p)}),ey(t,a.layout,sme.bind(null,t)),delete a.layout.template;var n=t.template;if(rl(n)){var i=n.layout,o,l,s,f,u,c;rl(i)&&bb(i,a.layout);var v=n.data;if(rl(v)){for(l in a.data)if(s=v[l],Array.isArray(s)){for(u=a.data[l],c=u.length,f=s.length,o=0;ob?o.push({code:"unused",traceType:d,templateCount:m,dataCount:b}):b>m&&o.push({code:"reused",traceType:d,templateCount:m,dataCount:b})}}function A(_,x){for(var T in _)if(T.charAt(0)!=="_"){var E=_[T],M=es(_,T,x);rl(E)?(Array.isArray(_)&&E._template===!1&&E.templateitemname&&o.push({code:"missing",path:M,templateitemname:E.templateitemname}),A(E,M)):Array.isArray(E)&&ume(E)&&A(E,M)}}if(A({data:s,layout:l},""),o.length)return o.map(cme)};function ume(e){for(var r=0;r{"use strict";var ci=o6();bn._doPlot=ci._doPlot;bn.newPlot=ci.newPlot;bn.restyle=ci.restyle;bn.relayout=ci.relayout;bn.redraw=ci.redraw;bn.update=ci.update;bn._guiRestyle=ci._guiRestyle;bn._guiRelayout=ci._guiRelayout;bn._guiUpdate=ci._guiUpdate;bn._storeDirectGUIEdit=ci._storeDirectGUIEdit;bn.react=ci.react;bn.extendTraces=ci.extendTraces;bn.prependTraces=ci.prependTraces;bn.addTraces=ci.addTraces;bn.deleteTraces=ci.deleteTraces;bn.moveTraces=ci.moveTraces;bn.purge=ci.purge;bn.addFrames=ci.addFrames;bn.deleteFrames=ci.deleteFrames;bn.animate=ci.animate;bn.setPlotConfig=ci.setPlotConfig;var vme=V1().getGraphDiv,hme=F3().eraseActiveShape;bn.deleteActiveShape=function(e){return hme(vme(e))};bn.toImage=u6();bn.validate=MO();bn.downloadImage=v6();var PO=RO();bn.makeTemplate=PO.makeTemplate;bn.validateTemplate=PO.validateTemplate});var p6=P((JDe,IO)=>{"use strict";var d6=Ur(),dme=Bt();IO.exports=function(r,t,a,n){var i=n("x"),o=n("y"),l,s=dme.getComponentMethod("calendars","handleTraceDefaults");if(s(r,t,["x","y"],a),i){var f=d6.minRowLength(i);o?l=Math.min(f,d6.minRowLength(o)):(l=f,n("y0"),n("dy"))}else{if(!o)return 0;l=d6.minRowLength(o),n("x0"),n("dx")}return t._length=l,l}});var m6=P(($De,zO)=>{"use strict";var OO=Ur().dateTick0,pme=Kn(),mme=pme.ONEWEEK;function BO(e,r){return e%mme===0?OO(r,1):OO(r,0)}zO.exports=function(r,t,a,n,i){if(i||(i={x:!0,y:!0}),i.x){var o=n("xperiod");o&&(n("xperiod0",BO(o,t.xcalendar)),n("xperiodalignment"))}if(i.y){var l=n("yperiod");l&&(n("yperiod0",BO(l,t.ycalendar)),n("yperiodalignment"))}}});var HO=P((QDe,UO)=>{"use strict";var GO=["orientation","groupnorm","stackgaps"];UO.exports=function(r,t,a,n){var i=a._scatterStackOpts,o=n("stackgroup");if(o){var l=t.xaxis+t.yaxis,s=i[l];s||(s=i[l]={});var f=s[o],u=!1;f?f.traces.push(t):(f=s[o]={traceIndices:[],traces:[t]},u=!0);for(var c={orientation:t.x&&!t.y?"h":"v"},v=0;v{"use strict";var VO=ha(),YO=Rs().hasColorscale,WO=gd(),yme=Ri();jO.exports=function(r,t,a,n,i,o){var l=yme.isBubble(r),s=(r.line||{}).color,f;if(o=o||{},s&&(a=s),i("marker.symbol"),i("marker.opacity",l?.7:1),i("marker.size"),o.noAngle||(i("marker.angle"),o.noAngleRef||i("marker.angleref"),o.noStandOff||i("marker.standoff")),i("marker.color",a),YO(r,"marker")&&WO(r,t,n,i,{prefix:"marker.",cLetter:"c"}),o.noSelect||(i("selected.marker.color"),i("unselected.marker.color"),i("selected.marker.size"),i("unselected.marker.size")),o.noLine||(s&&!Array.isArray(s)&&t.marker.color!==s?f=s:l?f=VO.background:f=VO.defaultLine,i("marker.line.color",f),YO(r,"marker.line")&&WO(r,t,n,i,{prefix:"marker.line.",cLetter:"c"}),i("marker.line.width",l?1:0)),l&&(i("marker.sizeref"),i("marker.sizemin"),i("marker.sizemode")),o.gradient){var u=i("marker.gradient.type");u!=="none"&&i("marker.gradient.color")}}});var y6=P((eFe,XO)=>{"use strict";var gme=Ur().isArrayOrTypedArray,bme=Rs().hasColorscale,xme=gd();XO.exports=function(r,t,a,n,i,o){o||(o={});var l=(r.marker||{}).color;if(l&&l._inputArray&&(l=l._inputArray),i("line.color",a),bme(r,"line"))xme(r,t,n,i,{prefix:"line.",cLetter:"c"});else{var s=(gme(l)?!1:l)||a;i("line.color",s)}i("line.width"),o.noDash||i("line.dash"),o.backoff&&i("line.backoff")}});var JO=P((rFe,ZO)=>{"use strict";ZO.exports=function(r,t,a){var n=a("line.shape");n==="spline"&&a("line.smoothing")}});var g6=P((tFe,$O)=>{"use strict";var _me=Ur();$O.exports=function(e,r,t,a,n){n=n||{},a("textposition"),_me.coerceFont(a,"textfont",n.font||t.font,n),n.noSelect||(a("selected.textfont.color"),a("unselected.textfont.color"))}});var b6=P((aFe,KO)=>{"use strict";var wb=ha(),QO=Ur().isArrayOrTypedArray;function wme(e){for(var r=wb.interpolate(e[0][1],e[1][1],.5),t=2;t{"use strict";var eB=Ur(),Ame=Bt(),Tme=Qc(),Mme=Um(),jd=Ri(),Sme=p6(),Eme=m6(),kme=HO(),Cme=_b(),Lme=y6(),rB=JO(),Dme=g6(),Fme=b6(),qme=Ur().coercePattern;tB.exports=function(r,t,a,n){function i(d,p){return eB.coerce(r,t,Tme,d,p)}var o=Sme(r,t,n,i);if(o||(t.visible=!1),!!t.visible){Eme(r,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder");var l=kme(r,t,n,i);n.scattermode==="group"&&t.orientation===void 0&&i("orientation","v");var s=!l&&o{"use strict";var Rme=Mm().getAxisGroup;nB.exports=function(r,t,a,n,i){var o=t.orientation,l=t[{v:"x",h:"y"}[o]+"axis"],s=Rme(a,l)+o,f=a._alignmentOpts||{},u=n("alignmentgroup"),c=f[s];c||(c=f[s]={});var v=c[u];v?v.traces.push(t):v=c[u]={traces:[t],alignmentIndex:Object.keys(c).length,offsetGroups:{}};var d=n("offsetgroup")||"",p=v.offsetGroups,y=p[d];t._offsetIndex=0,(i!=="group"||d)&&(y||(y=p[d]={offsetIndex:Object.keys(p).length}),t._offsetIndex=y.offsetIndex)}});var x6=P((oFe,oB)=>{"use strict";var Pme=Ur(),Nme=iB(),Ime=Qc();oB.exports=function(r,t){var a,n,i,o=t.scattermode;function l(v){return Pme.coerce(n._input,n,Ime,v)}if(t.scattermode==="group")for(i=0;i=0;u--){var c=r[u];if(c.type==="scatter"&&c.xaxis===s.xaxis&&c.yaxis===s.yaxis){c.opacity=void 0;break}}}}}});var sB=P((lFe,lB)=>{"use strict";var Ome=Ur(),Bme=m2();lB.exports=function(e,r){function t(n,i){return Ome.coerce(e,r,Bme,n,i)}var a=r.barmode==="group";r.scattermode==="group"&&t("scattergap",a?r.bargap:.2)}});var _6=P((sFe,uB)=>{"use strict";var zme=ba(),fB=Ur(),Gme=fB.dateTime2ms,Ab=fB.incrementMonth,Ume=Kn(),Hme=Ume.ONEAVGMONTH;uB.exports=function(r,t,a,n){if(t.type!=="date")return{vals:n};var i=r[a+"periodalignment"];if(!i)return{vals:n};var o=r[a+"period"],l;if(zme(o)){if(o=+o,o<=0)return{vals:n}}else if(typeof o=="string"&&o.charAt(0)==="M"){var s=+o.substring(1);if(s>0&&Math.round(s)===s)l=s;else return{vals:n}}for(var f=t.calendar,u=i==="start",c=i==="end",v=r[a+"period0"],d=Gme(v,f)||0,p=[],y=[],m=[],b=n.length,A=0;A_;)E=Ab(E,-l,f);for(;E<=_;)E=Ab(E,l,f);T=Ab(E,-l,f)}else{for(x=Math.round((_-d)/o),E=d+x*o;E>_;)E-=o;for(;E<=_;)E+=o;T=E-o}p[A]=u?T:c?E:(T+E)/2,y[A]=T,m[A]=E}return{vals:p,starts:y,ends:m}}});var ry=P((fFe,vB)=>{"use strict";var w6=Rs().hasColorscale,A6=O4(),cB=Ri();vB.exports=function(r,t){cB.hasLines(t)&&w6(t,"line")&&A6(r,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),cB.hasMarkers(t)&&(w6(t,"marker")&&A6(r,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),w6(t,"marker.line")&&A6(r,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var T6=P((uFe,hB)=>{"use strict";var Nn=Ur();hB.exports=function(r,t){for(var a=0;a{"use strict";var dB=Ur();pB.exports=function(r,t){dB.isArrayOrTypedArray(t.selectedpoints)&&dB.tagSelected(r,t)}});var Xd=P((vFe,AB)=>{"use strict";var yB=ba(),S6=Ur(),ty=yn(),gB=_6(),M6=Kn().BADNUM,E6=Ri(),Vme=ry(),Yme=T6(),Wme=mB();function jme(e,r){var t=e._fullLayout,a=r._xA=ty.getFromId(e,r.xaxis||"x","x"),n=r._yA=ty.getFromId(e,r.yaxis||"y","y"),i=a.makeCalcdata(r,"x"),o=n.makeCalcdata(r,"y"),l=gB(r,a,"x",i),s=gB(r,n,"y",o),f=l.vals,u=s.vals,c=r._length,v=new Array(c),d=r.ids,p=k6(r,t,a,n),y=!1,m,b,A,_,x,T;_B(t,r);var E="x",M="y",k;if(p)S6.pushUnique(p.traceIndices,r.index),m=p.orientation==="v",m?(M="s",k="x"):(E="s",k="y"),x=p.stackgaps==="interpolate";else{var F=xB(r,c);bB(e,r,a,n,f,u,F)}var I=!!r.xperiodalignment,O=!!r.yperiodalignment;for(b=0;bb&&v[_].gap;)_--;for(T=v[_].s,A=v.length-1;A>_;A--)v[A].s=T;for(;b<_;)if(b++,v[b].gap){for(A=b+1;v[A].gap;)A++;for(var oe=v[b-1][k],te=v[b-1].s,Q=(v[A].s-te)/(v[A][k]-oe);b{"use strict";TB.exports=Tb;var Xme=Ur().distinctVals;function Tb(e,r){this.traces=e,this.sepNegVal=r.sepNegVal,this.overlapNoMerge=r.overlapNoMerge;for(var t=1/0,a=r.posAxis._id.charAt(0),n=[],i=0;i{"use strict";var rs=ba(),rv=Ur().isArrayOrTypedArray,Zd=Kn().BADNUM,Zme=Bt(),ay=yn(),Jme=Mm().getAxisGroup,Mb=MB();function $me(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,o=e.calcdata,l=[],s=[],f=0;fs+o||!rs(l))}for(var u=0;u{"use strict";var DB=Xd(),FB=LB().setGroupPositions;function fye(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,o=e.calcdata,l=[],s=[],f=0;fF[u]&&u{"use strict";var cye=Ha(),OB=Kn(),ny=OB.BADNUM,BB=OB.LOG_CLIP,PB=BB+.5,NB=BB-.5,Sb=Ur(),vye=Sb.segmentsIntersect,IB=Sb.constrain,R6=Um();zB.exports=function(r,t){var a=t.trace||{},n=t.xaxis,i=t.yaxis,o=n.type==="log",l=i.type==="log",s=n._length,f=i._length,u=t.backoff,c=a.marker,v=t.connectGaps,d=t.baseTolerance,p=t.shape,y=p==="linear",m=a.fill&&a.fill!=="none",b=[],A=R6.minTolerance,_=r.length,x=new Array(_),T=0,E,M,k,F,I,O,q,H,X,oe,te,Q,Z,J,le,ce;function De(gr){var Se=r[gr];if(!Se)return!1;var Ne=t.linearized?n.l2p(Se.x):n.c2p(Se.x),pr=t.linearized?i.l2p(Se.y):i.c2p(Se.y);if(Ne===ny){if(o&&(Ne=n.c2p(Se.x,!0)),Ne===ny)return!1;l&&pr===ny&&(Ne*=Math.abs(n._m*f*(n._m>0?PB:NB)/(i._m*s*(i._m>0?PB:NB)))),Ne*=1e3}if(pr===ny){if(l&&(pr=i.c2p(Se.y,!0)),pr===ny)return!1;pr*=1e3}return[Ne,pr]}function Be(gr,Se,Ne,pr){var xr=Ne-gr,ht=pr-Se,Tt=.5-gr,wt=.5-Se,It=xr*xr+ht*ht,ta=xr*Tt+ht*wt;if(ta>0&&ta1||Math.abs(Tt.y-Ne[0][1])>1)&&(Tt=[Tt.x,Tt.y],pr&&rr(Tt,gr)$e||gr[1]ee)return[IB(gr[0],We,$e),IB(gr[1],Ue,ee)]}function Yr(gr,Se){if(gr[0]===Se[0]&&(gr[0]===We||gr[0]===$e)||gr[1]===Se[1]&&(gr[1]===Ue||gr[1]===ee))return!0}function Kr(gr,Se){var Ne=[],pr=Ir(gr),xr=Ir(Se);return pr&&xr&&Yr(pr,xr)||(pr&&Ne.push(pr),xr&&Ne.push(xr)),Ne}function wr(gr,Se,Ne){return function(pr,xr){var ht=Ir(pr),Tt=Ir(xr),wt=[];if(ht&&Tt&&Yr(ht,Tt))return wt;ht&&wt.push(ht),Tt&&wt.push(Tt);var It=2*Sb.constrain((pr[gr]+xr[gr])/2,Se,Ne)-((ht||pr)[gr]+(Tt||xr)[gr]);if(It){var ta;ht&&Tt?ta=It>0==ht[gr]>Tt[gr]?ht:Tt:ta=ht||Tt,ta[gr]+=It}return wt}}var Vr;p==="linear"||p==="spline"?Vr=_r:p==="hv"||p==="vh"?Vr=Kr:p==="hvh"?Vr=wr(0,We,$e):p==="vhv"&&(Vr=wr(1,Ue,ee));function Wr(gr,Se){var Ne=Se[0]-gr[0],pr=(Se[1]-gr[1])/Ne,xr=(gr[1]*Se[0]-Se[1]*gr[0])/Ne;return xr>0?[pr>0?We:$e,ee]:[pr>0?$e:We,Ue]}function Re(gr){var Se=gr[0],Ne=gr[1],pr=Se===x[T-1][0],xr=Ne===x[T-1][1];if(!(pr&&xr))if(T>1){var ht=Se===x[T-2][0],Tt=Ne===x[T-2][1];pr&&(Se===We||Se===$e)&&ht?Tt?T--:x[T-1]=gr:xr&&(Ne===Ue||Ne===ee)&&Tt?ht?T--:x[T-1]=gr:x[T++]=gr}else x[T++]=gr}function lr(gr){x[T-1][0]!==gr[0]&&x[T-1][1]!==gr[1]&&Re([ur,er]),Re(gr),Lr=null,ur=er=0}var st=Sb.isArrayOrTypedArray(c);function kt(gr){if(gr&&u&&(gr.i=E,gr.d=r,gr.trace=a,gr.marker=st?c[gr.i]:c,gr.backoff=u),Ee=gr[0]/s,Xe=gr[1]/f,ae=gr[0]$e?$e:0,je=gr[1]ee?ee:0,ae||je){if(!T)x[T++]=[ae||gr[0],je||gr[1]];else if(Lr){var Se=Vr(Lr,gr);Se.length>1&&(lr(Se[0]),x[T++]=Se[1])}else Pr=Vr(x[T-1],gr)[0],x[T++]=Pr;var Ne=x[T-1];ae&&je&&(Ne[0]!==ae||Ne[1]!==je)?(Lr&&(ur!==ae&&er!==je?Re(ur&&er?Wr(Lr,gr):[ur||ae,er||je]):ur&&er&&Re([ur,er])),Re([ae,je])):ur-ae&&er-je&&Re([ae||ur,je||er]),Lr=gr,ur=ae,er=je}else Lr&&lr(Vr(Lr,gr)[0]),x[T++]=gr}for(E=0;E<_;E++)if(M=De(E),!!M){for(T=0,Lr=null,kt(M),E++;E<_;E++){if(F=De(E),!F){if(v)continue;break}if(!y||!t.simplify){kt(F);continue}var Ar=De(E+1);if(oe=rr(F,M),!(!(m&&(T===0||T===_-1))&&oeAe(O,Ar))break;k=O,Z=X[0]*H[0]+X[1]*H[1],Z>te?(te=Z,F=O,q=!1):Z=r.length||!O)break;kt(O),M=O}}Lr&&Re([ur||Lr[0],er||Lr[1]]),b.push(x.slice(0,T))}var tr=p.slice(p.length-1);if(u&&tr!=="h"&&tr!=="v"){for(var cr=!1,Hr=-1,ot=[],jr=0;jr{"use strict";var UB={tonextx:1,tonexty:1,tonext:1};HB.exports=function(r,t,a){var n,i,o,l,s,f={},u=!1,c=-1,v=0,d=-1;for(i=0;i=0?s=d:(s=d=v,v++),s{"use strict";var Gs=da(),hye=Bt(),iy=Ur(),$d=iy.ensureSingle,YB=iy.identity,In=Ha(),Qd=Ri(),dye=GB(),pye=P6(),Eb=CA().tester;WB.exports=function(r,t,a,n,i,o){var l,s,f=!i,u=!!i&&i.duration>0,c=pye(r,t,a);if(l=n.selectAll("g.trace").data(c,function(d){return d[0].trace.uid}),l.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),l.order(),mye(r,l,t),u){o&&(s=o());var v=Gs.transition().duration(i.duration).ease(i.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});v.each(function(){n.selectAll("g.trace").each(function(d,p){VB(r,p,t,d,c,this,i)})})}else l.each(function(d,p){VB(r,p,t,d,c,this,i)});f&&l.exit().remove(),n.selectAll("path:not([d])").remove()};function mye(e,r,t){r.each(function(a){var n=$d(Gs.select(this),"g","fills");In.setClipUrl(n,t.layerClipId,e);var i=a[0].trace,o=[];i._ownfill&&o.push("_ownFill"),i._nexttrace&&o.push("_nextFill");var l=n.selectAll("g").data(o,YB);l.enter().append("g"),l.exit().each(function(s){i[s]=null}).remove(),l.order().each(function(s){i[s]=$d(Gs.select(this),"path","js-fill")})})}function VB(e,r,t,a,n,i,o){var l=e._context.staticPlot,s;yye(e,r,t,a,n);var f=!!o&&o.duration>0;function u(wr){return f?wr.transition():wr}var c=t.xaxis,v=t.yaxis,d=a[0].trace,p=d.line,y=Gs.select(i),m=$d(y,"g","errorbars"),b=$d(y,"g","lines"),A=$d(y,"g","points"),_=$d(y,"g","text");if(hye.getComponentMethod("errorbars","plot")(e,m,t,o),d.visible!==!0)return;u(y).style("opacity",d.opacity);var x,T,E=d.fill.charAt(d.fill.length-1);E!=="x"&&E!=="y"&&(E="");var M,k;E==="y"?(M=1,k=v.c2p(0,!0)):E==="x"&&(M=0,k=c.c2p(0,!0)),a[0][t.isRangePlot?"nodeRangePlot3":"node3"]=y;var F="",I=[],O=d._prevtrace,q=null,H=null;O&&(F=O._prevRevpath||"",T=O._nextFill,I=O._ownPolygons,q=O._fillsegments,H=O._fillElement);var X,oe,te="",Q="",Z,J,le,ce,De,Be,Ee=[];d._polygons=[];var Xe=[],Ae=[],rr=iy.noop;if(x=d._ownFill,Qd.hasLines(d)||d.fill!=="none"){T&&T.datum(a),["hv","vh","hvh","vhv"].indexOf(p.shape)!==-1?(Z=In.steps(p.shape),J=In.steps(p.shape.split("").reverse().join(""))):p.shape==="spline"?Z=J=function(wr){var Vr=wr[wr.length-1];return wr.length>1&&wr[0][0]===Vr[0]&&wr[0][1]===Vr[1]?In.smoothclosed(wr.slice(1),p.smoothing):In.smoothopen(wr,p.smoothing)}:Z=J=function(wr){return"M"+wr.join("L")},le=function(wr){return J(wr.reverse())},Ae=dye(a,{xaxis:c,yaxis:v,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(p.width||1,3)/4,shape:p.shape,backoff:p.backoff,simplify:p.simplify,fill:d.fill}),Xe=new Array(Ae.length);var ze=0;for(s=0;s=l[0]&&y.x<=l[1]&&y.y>=s[0]&&y.y<=s[1]}),v=Math.ceil(c.length/u),d=0;n.forEach(function(y,m){var b=y[0].trace;Qd.hasMarkers(b)&&b.marker.maxdisplayed>0&&m{"use strict";XB.exports={container:"marker",min:"cmin",max:"cmax"}});var N6=P((xFe,ZB)=>{"use strict";var Cb=yn();ZB.exports=function(r,t,a){var n={},i={_fullLayout:a},o=Cb.getFromTrace(i,t,"x"),l=Cb.getFromTrace(i,t,"y"),s=r.orig_x;s===void 0&&(s=r.x);var f=r.orig_y;return f===void 0&&(f=r.y),n.xLabel=Cb.tickText(o,o.c2l(s),!0).text,n.yLabel=Cb.tickText(l,l.c2l(f),!0).text,n}});var z6=P((_Fe,JB)=>{"use strict";var I6=da(),Kd=Ha(),gye=Bt();function bye(e){var r=I6.select(e).selectAll("g.trace.scatter");r.style("opacity",function(t){return t[0].trace.opacity}),r.selectAll("g.points").each(function(t){var a=I6.select(this),n=t.trace||t[0].trace;O6(a,n,e)}),r.selectAll("g.text").each(function(t){var a=I6.select(this),n=t.trace||t[0].trace;B6(a,n,e)}),r.selectAll("g.trace path.js-line").call(Kd.lineGroupStyle),r.selectAll("g.trace path.js-fill").call(Kd.fillGroupStyle,e,!1),gye.getComponentMethod("errorbars","style")(r)}function O6(e,r,t){Kd.pointStyle(e.selectAll("path.point"),r,t)}function B6(e,r,t){Kd.textPointStyle(e.selectAll("text"),r,t)}function xye(e,r,t){var a=r[0].trace;a.selectedpoints?(Kd.selectedPointStyle(t.selectAll("path.point"),a),Kd.selectedTextStyle(t.selectAll("text"),a)):(O6(t,a,e),B6(t,a,e))}JB.exports={style:bye,stylePoints:O6,styleText:B6,styleOnSelect:xye}});var G6=P((wFe,$B)=>{"use strict";var ep=ha(),_ye=Ri();$B.exports=function(r,t){var a,n;if(r.mode==="lines")return a=r.line.color,a&&ep.opacity(a)?a:r.fillcolor;if(r.mode==="none")return r.fill?r.fillcolor:"";var i=t.mcc||(r.marker||{}).color,o=t.mlcc||((r.marker||{}).line||{}).color;return n=i&&ep.opacity(i)?i:o&&ep.opacity(o)&&(t.mlw||((r.marker||{}).line||{}).width)?o:"",n?ep.opacity(n)<.3?ep.addOpacity(n,.3):n:(a=(r.line||{}).color,a&&ep.opacity(a)&&_ye.hasLines(r)&&r.line.width?a:r.fillcolor)}});var ez=P((AFe,KB)=>{"use strict";var Lb=Ur(),QB=Wc(),wye=Bt(),Aye=G6(),U6=ha(),Tye=Lb.fillText;KB.exports=function(r,t,a,n){var i=r.cd,o=i[0].trace,l=r.xa,s=r.ya,f=l.c2p(t),u=s.c2p(a),c=[f,u],v=o.hoveron||"",d=o.mode.indexOf("markers")!==-1?3:.5,p=!!o.xperiodalignment,y=!!o.yperiodalignment;if(v.indexOf("points")!==-1){var m=function(Q){if(p){var Z=l.c2p(Q.xStart),J=l.c2p(Q.xEnd);return f>=Math.min(Z,J)&&f<=Math.max(Z,J)?0:1/0}var le=Math.max(3,Q.mrc||0),ce=1-1/le,De=Math.abs(l.c2p(Q.x)-f);return De=Math.min(Z,J)&&u<=Math.max(Z,J)?0:1/0}var le=Math.max(3,Q.mrc||0),ce=1-1/le,De=Math.abs(s.c2p(Q.y)-u);return DeEe!=ee>=Ee&&(We=rr[Ae-1][0],$e=rr[Ae][0],ee-Ue&&(ze=We+($e-We)*(Ee-Ue)/(ee-Ue),le=Math.min(le,ze),ce=Math.max(ce,ze)));return le=Math.max(le,0),ce=Math.min(ce,l._length),{x0:le,x1:ce,y0:Ee,y1:Ee}}if(v.indexOf("fills")!==-1&&o._fillElement){var X=q(o._fillElement)&&!q(o._fillExclusionElement);if(X){var oe=H(o._polygons);oe===null&&(oe={x0:c[0],x1:c[0],y0:c[1],y1:c[1]});var te=U6.defaultLine;return U6.opacity(o.fillcolor)?te=o.fillcolor:U6.opacity((o.line||{}).color)&&(te=o.line.color),Lb.extendFlat(r,{distance:r.maxHoverDistance,x0:oe.x0,x1:oe.x1,y0:oe.y0,y1:oe.y1,color:te,hovertemplate:!1}),delete r.index,o.text&&!Lb.isArrayOrTypedArray(o.text)?r.text=String(o.text):r.text=o.name,[r]}}}});var az=P((TFe,tz)=>{"use strict";var rz=Ri();tz.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,o=[],l=a[0].trace,s,f,u,c,v=!rz.hasMarkers(l)&&!rz.hasText(l);if(v)return[];if(t===!1)for(s=0;s{"use strict";nz.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var fz=P((SFe,sz)=>{"use strict";var oy=Bt().traceIs,H6=nw();sz.exports=function(r,t,a,n){a("autotypenumbers",n.autotypenumbersDflt);var i=a("type",(n.splomStash||{}).type);i==="-"&&(Mye(t,n.data),t.type==="-"?t.type="linear":r.type=t.type)};function Mye(e,r){if(e.type==="-"){var t=e._id,a=t.charAt(0),n;t.indexOf("scene")!==-1&&(t=a);var i=Sye(r,t,a);if(i){if(i.type==="histogram"&&a==={v:"y",h:"x"}[i.orientation||"v"]){e.type="linear";return}var o=a+"calendar",l=i[o],s={noMultiCategory:!oy(i,"cartesian")||oy(i,"noMultiCategory")};if(i.type==="box"&&i._hasPreCompStats&&a==={h:"x",v:"y"}[i.orientation||"v"]&&(s.noMultiCategory=!0),s.autotypenumbers=e.autotypenumbers,lz(i,a)){var f=oz(i),u=[];for(n=0;n0&&(n["_"+t+"axes"]||{})[r])return n;if((n[t+"axis"]||t)===r){if(lz(n,t))return n;if((n[t]||[]).length||n[t+"0"])return n}}}function oz(e){return{v:"x",h:"y"}[e.orientation||"v"]}function lz(e,r){var t=oz(e),a=oy(e,"box-violin"),n=oy(e._fullInput||{},"candlestick");return a&&!n&&r===t&&e[t]===void 0&&e[t+"0"]===void 0}});var cz=P((EFe,uz)=>{"use strict";var Eye=Yo().isTypedArraySpec;function kye(e,r){var t=r.dataAttr||e._id.charAt(0),a={},n,i,o;if(r.axData)n=r.axData;else for(n=[],i=0;i0||Eye(i),l;o&&(l="array");var s=a("categoryorder",l),f;s==="array"&&(f=a("categoryarray")),!o&&s==="array"&&(s=t.categoryorder="trace"),s==="trace"?t._initialCategories=[]:s==="array"?t._initialCategories=f.slice():(f=kye(t,n).sort(),s==="category ascending"?t._initialCategories=f:s==="category descending"&&(t._initialCategories=f.reverse()))}}});var dz=P((kFe,hz)=>{"use strict";var vz=ks().mix,Cye=wf(),Lye=Ur();hz.exports=function(r,t,a,n){n=n||{};var i=n.dfltColor;function o(k,F){return Lye.coerce2(r,t,n.attributes,k,F)}var l=o("linecolor",i),s=o("linewidth"),f=a("showline",n.showLine||!!l||!!s);f||(delete t.linecolor,delete t.linewidth);var u=vz(i,n.bgColor,n.blend||Cye.lightFraction).toRgbString(),c=o("gridcolor",u),v=o("gridwidth"),d=o("griddash"),p=a("showgrid",n.showGrid||!!c||!!v||!!d);if(p||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),n.hasMinor){var y=vz(t.gridcolor,n.bgColor,67).toRgbString(),m=o("minor.gridcolor",y),b=o("minor.gridwidth",t.gridwidth||1),A=o("minor.griddash",t.griddash||"solid"),_=a("minor.showgrid",!!m||!!b||!!A);_||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!n.noZeroLine){var x=o("zerolinelayer"),T=o("zerolinecolor",i),E=o("zerolinewidth"),M=a("zeroline",n.showGrid||!!T||!!E);M||(delete t.zerolinelayer,delete t.zerolinecolor,delete t.zerolinewidth)}}});var Y6=P((CFe,xz)=>{"use strict";var pz=ba(),Dye=Bt(),ly=Ur(),Fye=Xa(),qye=gl(),V6=Ul(),mz=E4(),yz=C4(),Rye=F4(),Pye=q4(),Nye=cz(),Iye=dz(),Oye=Mw(),gz=G2(),Db=qi().WEEKDAY_PATTERN,Bye=qi().HOUR_PATTERN;xz.exports=function(r,t,a,n,i){var o=n.letter,l=n.font||{},s=n.splomStash||{},f=a("visible",!n.visibleDflt),u=t._template||{},c=t.type||u.type||"-",v;if(c==="date"){var d=Dye.getComponentMethod("calendars","handleDefaults");d(r,t,"calendar",n.calendar),n.noTicklabelmode||(v=a("ticklabelmode"))}!n.noTicklabelindex&&(c==="date"||c==="linear")&&a("ticklabelindex");var p="";(!n.noTicklabelposition||c==="multicategory")&&(p=ly.coerce(r,t,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:v==="period"?["outside","inside"]:o==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),n.noTicklabeloverflow||a("ticklabeloverflow",p.indexOf("inside")!==-1?"hide past domain":c==="category"||c==="multicategory"?"allow":"hide past div"),gz(t,i),Oye(r,t,a,n),Nye(r,t,a,n),n.noHover||(c!=="category"&&a("hoverformat"),n.noUnifiedhovertitle||a("unifiedhovertitle.text"));var y=a("color"),m=y!==V6.color.dflt?y:l.color,b=s.label||i._dfltTitle[o];if(Pye(r,t,a,c,n),!f)return t;a("title.text",b),ly.coerceFont(a,"title.font",l,{overrideDflt:{size:ly.bigFont(l.size),color:m}}),mz(r,t,a,c);var A=n.hasMinor;if(A&&(Fye.newContainer(t,"minor"),mz(r,t,a,c,{isMinor:!0})),Rye(r,t,a,c,n),yz(r,t,a,n),A){var _=n.isMinor;n.isMinor=!0,yz(r,t,a,n),n.isMinor=_}Iye(r,t,a,{dfltColor:y,bgColor:n.bgColor,showGrid:n.showGrid,hasMinor:A,attributes:V6}),A&&!t.minor.ticks&&!t.minor.showgrid&&delete t.minor,(t.showline||t.ticks)&&a("mirror");var x=c==="multicategory";if(!n.noTickson&&(c==="category"||x)&&(t.ticks||t.showgrid)&&(x?(a("tickson","boundaries"),delete t.ticklabelposition):a("tickson")),x){var T=a("showdividers");T&&(a("dividercolor"),a("dividerwidth"))}if(c==="date")if(qye(r,t,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:zye}),!t.rangebreaks.length)delete t.rangebreaks;else{for(var E=0;E=2){var o="",l,s;if(i.length===2){for(l=0;l<2;l++)if(s=bz(i[l]),s){o=Db;break}}var f=a("pattern",o);if(f===Db)for(l=0;l<2;l++)s=bz(i[l]),s&&(r.bounds[l]=i[l]=s-1);if(f)for(l=0;l<2;l++)switch(s=i[l],f){case Db:if(!pz(s)){r.enabled=!1;return}if(s=+s,s!==Math.floor(s)||s<0||s>=7){r.enabled=!1;return}r.bounds[l]=i[l]=s;break;case Bye:if(!pz(s)){r.enabled=!1;return}if(s=+s,s<0||s>24){r.enabled=!1;return}r.bounds[l]=i[l]=s;break}if(t.autorange===!1){var u=t.range;if(u[0]u[1]){r.enabled=!1;return}}else if(i[0]>u[0]&&i[1]{"use strict";var Uye=ba(),Fb=Ur();_z.exports=function(r,t,a,n){var i=n.counterAxes||[],o=n.overlayableAxes||[],l=n.letter,s=n.grid,f=n.overlayingDomain,u,c,v,d,p,y;s&&(c=s._domains[l][s._axisMap[t._id]],u=s._anchors[t._id],c&&(v=s[l+"side"].split(" ")[0],d=s.domain[l][v==="right"||v==="top"?1:0])),c=c||[0,1],u=u||(Uye(r.position)?"free":i[0]||"free"),v=v||(l==="x"?"bottom":"left"),d=d||0,p=0,y=!1;var m=Fb.coerce(r,t,{anchor:{valType:"enumerated",values:["free"].concat(i),dflt:u}},"anchor"),b=Fb.coerce(r,t,{side:{valType:"enumerated",values:l==="x"?["bottom","top"]:["left","right"],dflt:v}},"side");if(m==="free"){if(l==="y"){var A=a("autoshift");A&&(d=b==="left"?f[0]:f[1],y=t.automargin?t.automargin:!0,p=b==="left"?-3:3),a("shift",p)}a("position",d)}a("automargin",y);var _=!1;if(o.length&&(_=Fb.coerce(r,t,{overlaying:{valType:"enumerated",values:[!1].concat(o),dflt:!1}},"overlaying")),!_){var x=a("domain",c);x[0]>x[1]-1/4096&&(t.domain=c),Fb.noneOrAll(r.domain,t.domain,c),t.tickmode==="sync"&&(t.tickmode="auto")}return a("layer"),t}});var Lz=P((DFe,Cz)=>{"use strict";var Z0=Ur(),wz=ha(),Hye=Cu().isUnifiedHover,Vye=Qw(),Az=Xa(),Yye=ad(),Tz=Ul(),Wye=fz(),Mz=Y6(),jye=Mm(),Sz=W6(),X6=kn(),Nf=X6.id2name,Ez=X6.name2id,Xye=qi().AX_ID_PATTERN,kz=Bt(),qb=kz.traceIs,j6=kz.getComponentMethod;function Rb(e,r,t){Array.isArray(e[r])?e[r].push(t):e[r]=[t]}Cz.exports=function(r,t,a){var n=t.autotypenumbers,i={},o={},l={},s={},f={},u={},c={},v={},d={},p={},y,m;for(y=0;y{"use strict";var Zye=da(),Dz=Bt(),Pb=Ur(),Tl=Ha(),Nb=yn();Fz.exports=function(r,t,a,n){var i=r._fullLayout;if(t.length===0){Nb.redrawComponents(r);return}function o(m){var b=m.xaxis,A=m.yaxis;i._defs.select("#"+m.clipId+"> rect").call(Tl.setTranslate,0,0).call(Tl.setScale,1,1),m.plot.call(Tl.setTranslate,b._offset,A._offset).call(Tl.setScale,1,1);var _=m.plot.selectAll(".scatterlayer .trace");_.selectAll(".point").call(Tl.setPointGroupScale,1,1),_.selectAll(".textpoint").call(Tl.setTextPointsScale,1,1),_.call(Tl.hideOutsideRangePoints,m)}function l(m,b){var A=m.plotinfo,_=A.xaxis,x=A.yaxis,T=_._length,E=x._length,M=!!m.xr1,k=!!m.yr1,F=[];if(M){var I=Pb.simpleMap(m.xr0,_.r2l),O=Pb.simpleMap(m.xr1,_.r2l),q=I[1]-I[0],H=O[1]-O[0];F[0]=(I[0]*(1-b)+b*O[0]-I[0])/(I[1]-I[0])*T,F[2]=T*(1-b+b*H/q),_.range[0]=_.l2r(I[0]*(1-b)+b*O[0]),_.range[1]=_.l2r(I[1]*(1-b)+b*O[1])}else F[0]=0,F[2]=T;if(k){var X=Pb.simpleMap(m.yr0,x.r2l),oe=Pb.simpleMap(m.yr1,x.r2l),te=X[1]-X[0],Q=oe[1]-oe[0];F[1]=(X[1]*(1-b)+b*oe[1]-X[1])/(X[0]-X[1])*E,F[3]=E*(1-b+b*Q/te),x.range[0]=_.l2r(X[0]*(1-b)+b*oe[0]),x.range[1]=x.l2r(X[1]*(1-b)+b*oe[1])}else F[1]=0,F[3]=E;Nb.drawOne(r,_,{skipTitle:!0}),Nb.drawOne(r,x,{skipTitle:!0}),Nb.redrawComponents(r,[_._id,x._id]);var Z=M?T/F[2]:1,J=k?E/F[3]:1,le=M?F[0]:0,ce=k?F[1]:0,De=M?F[0]/F[2]*T:0,Be=k?F[1]/F[3]*E:0,Ee=_._offset-De,Xe=x._offset-Be;A.clipRect.call(Tl.setTranslate,le,ce).call(Tl.setScale,1/Z,1/J),A.plot.call(Tl.setTranslate,Ee,Xe).call(Tl.setScale,Z,J),Tl.setPointGroupScale(A.zoomScalePts,1/Z,1/J),Tl.setTextPointsScale(A.zoomScaleTxt,1/Z,1/J)}var s;n&&(s=n());function f(){for(var m={},b=0;ba.duration?(f(),d=window.cancelAnimationFrame(y)):d=window.requestAnimationFrame(y)}return c=Date.now(),d=window.requestAnimationFrame(y),Promise.resolve()}});var sy=P(ao=>{"use strict";var Ob=da(),Rz=Bt(),J0=Ur(),Jye=xi(),$ye=Ha(),Pz=rm().getModuleCalcData,tv=kn(),Us=qi(),Qye=Oc(),La=J0.ensureSingle;function Ib(e,r,t){return J0.ensureSingle(e,r,t,function(a){a.datum(t)})}var $0=Us.zindexSeparator;ao.name="cartesian";ao.attr=["xaxis","yaxis"];ao.idRoot=["x","y"];ao.idRegex=Us.idRegex;ao.attrRegex=Us.attrRegex;ao.attributes=iz();ao.layoutAttributes=Ul();ao.supplyLayoutDefaults=Lz();ao.transitionAxes=qz();ao.finalizeSubplots=function(e,r){var t=r._subplots,a=t.xaxis,n=t.yaxis,i=t.cartesian,o=i,l={},s={},f,u,c;for(f=0;f0){var d=v.id;if(d.indexOf($0)!==-1)continue;d+=$0+(f+1),v=J0.extendFlat({},v,{id:d,plot:n._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var p=[],y,m=0;m1&&(T+=$0+x),_.push(l+T),o=0;o1,c=r.mainplotinfo;if(!r.mainplot||u)if(f)r.xlines=La(a,"path","xlines-above"),r.ylines=La(a,"path","ylines-above"),r.xaxislayer=La(a,"g","xaxislayer-above"),r.yaxislayer=La(a,"g","yaxislayer-above");else{if(!o){var v=La(a,"g","layer-subplot");r.shapelayer=La(v,"g","shapelayer"),r.imagelayer=La(v,"g","imagelayer"),c&&u?(r.minorGridlayer=c.minorGridlayer,r.gridlayer=c.gridlayer,r.zerolinelayer=c.zerolinelayer):(r.minorGridlayer=La(a,"g","minor-gridlayer"),r.gridlayer=La(a,"g","gridlayer"),r.zerolinelayer=La(a,"g","zerolinelayer"));var d=La(a,"g","layer-between");r.shapelayerBetween=La(d,"g","shapelayer"),r.imagelayerBetween=La(d,"g","imagelayer"),La(a,"path","xlines-below"),La(a,"path","ylines-below"),r.overlinesBelow=La(a,"g","overlines-below"),La(a,"g","xaxislayer-below"),La(a,"g","yaxislayer-below"),r.overaxesBelow=La(a,"g","overaxes-below")}r.overplot=La(a,"g","overplot"),r.plot=La(r.overplot,"g",n),c&&u?r.zerolinelayerAbove=c.zerolinelayerAbove:r.zerolinelayerAbove=La(a,"g","zerolinelayer-above"),o||(r.xlines=La(a,"path","xlines-above"),r.ylines=La(a,"path","ylines-above"),r.overlinesAbove=La(a,"g","overlines-above"),La(a,"g","xaxislayer-above"),La(a,"g","yaxislayer-above"),r.overaxesAbove=La(a,"g","overaxes-above"),r.xlines=a.select(".xlines-"+l),r.ylines=a.select(".ylines-"+s),r.xaxislayer=a.select(".xaxislayer-"+l),r.yaxislayer=a.select(".yaxislayer-"+s))}else{var p=c.plotgroup,y=n+"-x",m=n+"-y";r.minorGridlayer=c.minorGridlayer,r.gridlayer=c.gridlayer,r.zerolinelayer=c.zerolinelayer,r.zerolinelayerAbove=c.zerolinelayerAbove,La(c.overlinesBelow,"path",y),La(c.overlinesBelow,"path",m),La(c.overaxesBelow,"g",y),La(c.overaxesBelow,"g",m),r.plot=La(c.overplot,"g",n),La(c.overlinesAbove,"path",y),La(c.overlinesAbove,"path",m),La(c.overaxesAbove,"g",y),La(c.overaxesAbove,"g",m),r.xlines=p.select(".overlines-"+l).select("."+y),r.ylines=p.select(".overlines-"+s).select("."+m),r.xaxislayer=p.select(".overaxes-"+l).select("."+y),r.yaxislayer=p.select(".overaxes-"+s).select("."+m)}o||(f||(Ib(r.minorGridlayer,"g",r.xaxis._id),Ib(r.minorGridlayer,"g",r.yaxis._id),r.minorGridlayer.selectAll("g").map(function(b){return b[0]}).sort(tv.idSort),Ib(r.gridlayer,"g",r.xaxis._id),Ib(r.gridlayer,"g",r.yaxis._id),r.gridlayer.selectAll("g").map(function(b){return b[0]}).sort(tv.idSort)),r.xlines.style("fill","none").classed("crisp",!0),r.ylines.style("fill","none").classed("crisp",!0))}function Oz(e,r){if(e){var t={};e.each(function(s){var f=s[0],u=Ob.select(this);u.remove(),Bz(f,r),t[f]=!0});for(var a in r._plots)for(var n=r._plots[a],i=n.overlays||[],o=0;o{"use strict";var Bb=Ri();zz.exports={hasLines:Bb.hasLines,hasMarkers:Bb.hasMarkers,hasText:Bb.hasText,isBubble:Bb.isBubble,attributes:Qc(),layoutAttributes:m2(),supplyDefaults:aB(),crossTraceDefaults:x6(),supplyLayoutDefaults:sB(),calc:Xd().calc,crossTraceCalc:RB(),arraysToCalcdata:T6(),plot:jB(),colorbar:kb(),formatLabels:N6(),style:z6().style,styleOnSelect:z6().styleOnSelect,hoverPoints:ez(),selectPoints:az(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:sy(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var Vz=P((PFe,Hz)=>{"use strict";var ege=da(),rge=ha(),Uz=GA(),Z6=Ur(),tge=Z6.strScale,age=Z6.strRotate,nge=Z6.strTranslate;Hz.exports=function(r,t,a){var n=r.node(),i=Uz[a.arrowhead||0],o=Uz[a.startarrowhead||0],l=(a.arrowwidth||1)*(a.arrowsize||1),s=(a.arrowwidth||1)*(a.startarrowsize||1),f=t.indexOf("start")>=0,u=t.indexOf("end")>=0,c=i.backoff*l+a.standoff,v=o.backoff*s+a.startstandoff,d,p,y,m;if(n.nodeName==="line"){d={x:+r.attr("x1"),y:+r.attr("y1")},p={x:+r.attr("x2"),y:+r.attr("y2")};var b=d.x-p.x,A=d.y-p.y;if(y=Math.atan2(A,b),m=y+Math.PI,c&&v&&c+v>Math.sqrt(b*b+A*A)){X();return}if(c){if(c*c>b*b+A*A){X();return}var _=c*Math.cos(y),x=c*Math.sin(y);p.x+=_,p.y+=x,r.attr({x2:p.x,y2:p.y})}if(v){if(v*v>b*b+A*A){X();return}var T=v*Math.cos(y),E=v*Math.sin(y);d.x-=T,d.y-=E,r.attr({x1:d.x,y1:d.y})}}else if(n.nodeName==="path"){var M=n.getTotalLength(),k="";if(M{"use strict";var Yz=da(),J6=Bt(),ige=xi(),nv=Ur(),$6=nv.strTranslate,uy=yn(),Q0=ha(),Nu=Ha(),Wz=Wc(),Q6=po(),K6=Yc(),fy=Ns(),oge=Xa().arrayEditor,lge=Vz();Zz.exports={draw:sge,drawOne:jz,drawRaw:Xz};function sge(e){var r=e._fullLayout;r._infolayer.selectAll(".annotation").remove();for(var t=0;t2/3?xr="right":xr="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[xr]}for(var Ue=!1,ee=["x","y"],de=0;de1)&&(ur===je?(Ar=er.r2fraction(r["a"+ae]),(Ar<0||Ar>1)&&(Ue=!0)):Ue=!0),Vr=er._offset+er.r2p(r[ae]),lr=.5}else{var tr=kt==="domain";ae==="x"?(Re=r[ae],Vr=tr?er._offset+er._length*Re:Vr=l.l+l.w*Re):(Re=1-r[ae],Vr=tr?er._offset+er._length*Re:Vr=l.t+l.h*Re),lr=r.showarrow?.5:Re}if(r.showarrow){wr.head=Vr;var cr=r["a"+ae];if(st=Pr*$e(.5,r.xanchor)-_r*$e(.5,r.yanchor),ur===je){var Hr=uy.getRefType(ur);Hr==="domain"?(ae==="y"&&(cr=1-cr),wr.tail=er._offset+er._length*cr):Hr==="paper"?ae==="y"?(cr=1-cr,wr.tail=l.t+l.h*cr):wr.tail=l.l+l.w*cr:wr.tail=er._offset+er.r2p(cr),Wr=st}else wr.tail=Vr+cr,Wr=st+cr;wr.text=wr.tail+st;var ot=o[ae==="x"?"width":"height"];if(je==="paper"&&(wr.head=nv.constrain(wr.head,1,ot-1)),ur==="pixel"){var jr=-Math.max(wr.tail-3,wr.text),at=Math.min(wr.tail+3,wr.text)-ot;jr>0?(wr.tail+=jr,wr.text+=jr):at>0&&(wr.tail-=at,wr.text-=at)}wr.tail+=Kr,wr.head+=Kr}else st=Ir*$e(lr,Yr),Wr=st,wr.text=Vr+st;wr.text+=Kr,st+=Kr,Wr+=Kr,r["_"+ae+"padplus"]=Ir/2+Wr,r["_"+ae+"padminus"]=Ir/2-Wr,r["_"+ae+"size"]=Ir,r["_"+ae+"shift"]=st}if(Ue){M.remove();return}var xt=0,Xr=0;if(r.align!=="left"&&(xt=(Ae-Ee)*(r.align==="center"?.5:1)),r.valign!=="top"&&(Xr=(rr-Xe)*(r.valign==="middle"?.5:1)),De)ce.select("svg").attr({x:I+xt-1,y:I+Xr}).call(Nu.setClipUrl,q?y:null,e);else{var nt=I+Xr-Be.top,gr=I+xt-Be.left;te.call(Q6.positionText,gr,nt).call(Nu.setClipUrl,q?y:null,e)}H.select("rect").call(Nu.setRect,I,I,Ae,rr),O.call(Nu.setRect,k/2,k/2,ze-k,We-k),M.call(Nu.setTranslate,Math.round(m.x.text-ze/2),Math.round(m.y.text-We/2)),_.attr({transform:"rotate("+b+","+m.x.text+","+m.y.text+")"});var Se=function(pr,xr){A.selectAll(".annotation-arrow-g").remove();var ht=m.x.head,Tt=m.y.head,wt=m.x.tail+pr,It=m.y.tail+xr,ta=m.x.text+pr,Ma=m.y.text+xr,Ba=nv.rotationXYMatrix(b,ta,Ma),an=nv.apply2DTransform(Ba),Va=nv.apply2DTransform2(Ba),xn=+O.attr("width"),Rn=+O.attr("height"),hi=ta-.5*xn,hn=hi+xn,Xn=Ma-.5*Rn,Et=Xn+Rn,Pa=[[hi,Xn,hi,Et],[hi,Et,hn,Et],[hn,Et,hn,Xn],[hn,Xn,hi,Xn]].map(Va);if(!Pa.reduce(function(nn,Zn){return nn^!!nv.segmentsIntersect(ht,Tt,ht+1e6,Tt+1e6,Zn[0],Zn[1],Zn[2],Zn[3])},!1)){Pa.forEach(function(nn){var Zn=nv.segmentsIntersect(wt,It,ht,Tt,nn[0],nn[1],nn[2],nn[3]);Zn&&(wt=Zn.x,It=Zn.y)});var ia=r.arrowwidth,Ia=r.arrowcolor,$a=r.arrowside,Qa=A.append("g").style({opacity:Q0.opacity(Ia)}).classed("annotation-arrow-g",!0),fa=Qa.append("path").attr("d","M"+wt+","+It+"L"+ht+","+Tt).style("stroke-width",ia+"px").call(Q0.stroke,Q0.rgb(Ia));if(lge(fa,$a,r),s.annotationPosition&&fa.node().parentNode&&!a){var Tn=ht,Ka=Tt;if(r.standoff){var en=Math.sqrt(Math.pow(ht-wt,2)+Math.pow(Tt-It,2));Tn+=r.standoff*(wt-ht)/en,Ka+=r.standoff*(It-Tt)/en}var lo=Qa.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(wt-Tn)+","+(It-Ka),transform:$6(Tn,Ka)}).style("stroke-width",ia+6+"px").call(Q0.stroke,"rgba(0,0,0,0)").call(Q0.fill,"rgba(0,0,0,0)"),Oi,dn;fy.init({element:lo.node(),gd:e,prepFn:function(){var nn=Nu.getTranslate(M);Oi=nn.x,dn=nn.y,n&&n.autorange&&v(n._name+".autorange",!0),i&&i.autorange&&v(i._name+".autorange",!0)},moveFn:function(nn,Zn){var fs=an(Oi,dn),us=fs[0]+nn,kl=fs[1]+Zn;M.call(Nu.setTranslate,us,kl),d("x",av(n,nn,"x",l,r)),d("y",av(i,Zn,"y",l,r)),r.axref===r.xref&&d("ax",av(n,nn,"ax",l,r)),r.ayref===r.yref&&d("ay",av(i,Zn,"ay",l,r)),Qa.attr("transform",$6(nn,Zn)),_.attr({transform:"rotate("+b+","+us+","+kl+")"})},doneFn:function(){J6.call("_guiRelayout",e,p());var nn=document.querySelector(".js-notes-box-panel");nn&&nn.redraw(nn.selectedObj)}})}}};if(r.showarrow&&Se(0,0),x){var Ne;fy.init({element:M.node(),gd:e,prepFn:function(){Ne=_.attr("transform")},moveFn:function(pr,xr){var ht="pointer";if(r.showarrow)r.axref===r.xref?d("ax",av(n,pr,"ax",l,r)):d("ax",r.ax+pr),r.ayref===r.yref?d("ay",av(i,xr,"ay",l.w,r)):d("ay",r.ay+xr),Se(pr,xr);else{if(a)return;var Tt,wt;if(n)Tt=av(n,pr,"x",l,r);else{var It=r._xsize/l.w,ta=r.x+(r._xshift-r.xshift)/l.w-It/2;Tt=fy.align(ta+pr/l.w,It,0,1,r.xanchor)}if(i)wt=av(i,xr,"y",l,r);else{var Ma=r._ysize/l.h,Ba=r.y-(r._yshift+r.yshift)/l.h-Ma/2;wt=fy.align(Ba-xr/l.h,Ma,0,1,r.yanchor)}d("x",Tt),d("y",wt),(!n||!i)&&(ht=fy.getCursor(n?.5:Tt,i?.5:wt,r.xanchor,r.yanchor))}_.attr({transform:$6(pr,xr)+Ne}),K6(M,ht)},clickFn:function(pr,xr){r.captureevents&&e.emit("plotly_clickannotation",E(xr))},doneFn:function(){K6(M),J6.call("_guiRelayout",e,p());var pr=document.querySelector(".js-notes-box-panel");pr&&pr.redraw(pr.selectedObj)}})}}s.annotationText?te.call(Q6.makeEditable,{delegate:M,gd:e}).call(Q).on("edit",function(J){r.text=J,this.call(Q),d("text",J),n&&n.autorange&&v(n._name+".autorange",!0),i&&i.autorange&&v(i._name+".autorange",!0),J6.call("_guiRelayout",e,p())}):te.call(Q)}});var rG=P((IFe,eG)=>{"use strict";var Jz=Ur(),fge=Bt(),$z=Xa().arrayEditor;eG.exports={hasClickToShow:uge,onClick:cge};function uge(e,r){var t=Kz(e,r);return t.on.length>0||t.explicitOff.length>0}function cge(e,r){var t=Kz(e,r),a=t.on,n=t.off.concat(t.explicitOff),i={},o=e._fullLayout.annotations,l,s;if(a.length||n.length){for(l=0;l{"use strict";var eT=Ur(),rp=ha();tG.exports=function(r,t,a,n){n("opacity");var i=n("bgcolor"),o=n("bordercolor"),l=rp.opacity(o);n("borderpad");var s=n("borderwidth"),f=n("showarrow");n("text",f?" ":a._dfltTitle.annotation),n("textangle"),eT.coerceFont(n,"font",a.font),n("width"),n("align");var u=n("height");if(u&&n("valign"),f){var c=n("arrowside"),v,d;c.indexOf("end")!==-1&&(v=n("arrowhead"),d=n("arrowsize")),c.indexOf("start")!==-1&&(n("startarrowhead",v),n("startarrowsize",d)),n("arrowcolor",l?t.bordercolor:rp.defaultLine),n("arrowwidth",(l&&s||1)*2),n("standoff"),n("startstandoff")}var p=n("hovertext"),y=a.hoverlabel||{};if(p){var m=n("hoverlabel.bgcolor",y.bgcolor||(rp.opacity(i)?rp.rgb(i):rp.defaultLine)),b=n("hoverlabel.bordercolor",y.bordercolor||rp.contrast(m)),A=eT.extendFlat({},y.font);A.color||(A.color=b),eT.coerceFont(n,"hoverlabel.font",A)}n("captureevents",!!p)}});var nG=P((BFe,aG)=>{"use strict";var tT=Ur(),K0=yn(),vge=gl(),hge=rT(),dge=Vd();aG.exports=function(r,t){vge(r,t,{name:"annotations",handleItemDefaults:pge})};function pge(e,r,t){function a(_,x){return tT.coerce(e,r,dge,_,x)}var n=a("visible"),i=a("clicktoshow");if(n||i){hge(e,r,t,a);for(var o=r.showarrow,l=["x","y"],s=[-10,-30],f={_fullLayout:t},u=0;u<2;u++){var c=l[u],v=K0.coerceRef(e,r,f,c,"","paper");if(v!=="paper"){var d=K0.getFromId(f,v);d._annIndices.push(r._index)}if(K0.coercePosition(r,f,a,v,c,.5),o){var p="a"+c,y=K0.coerceRef(e,r,f,p,"pixel",["pixel","paper"]);y!=="pixel"&&y!==v&&(y=r[p]="pixel");var m=y==="pixel"?s[u]:.4;K0.coercePosition(r,f,a,y,p,m)}a(c+"anchor"),a(c+"shift")}if(tT.noneOrAll(e,r,["x","y"]),o&&tT.noneOrAll(e,r,["ax","ay"]),i){var b=a("xclick"),A=a("yclick");r._xclick=b===void 0?r.x:K0.cleanPosition(b,f,r.xref),r._yclick=A===void 0?r.y:K0.cleanPosition(A,f,r.yref)}}}});var lG=P((zFe,oG)=>{"use strict";var aT=Ur(),eh=yn(),mge=zb().draw;oG.exports=function(r){var t=r._fullLayout,a=aT.filterVisible(t.annotations);if(a.length&&r._fullData.length)return aT.syncOrAsync([mge,yge],r)};function yge(e){var r=e._fullLayout;aT.filterVisible(r.annotations).forEach(function(t){var a=eh.getFromId(e,t.xref),n=eh.getFromId(e,t.yref),i=eh.getRefType(t.xref),o=eh.getRefType(t.yref);t._extremes={},i==="range"&&iG(t,a),o==="range"&&iG(t,n)})}function iG(e,r){var t=r._id,a=t.charAt(0),n=e[a],i=e["a"+a],o=e[a+"ref"],l=e["a"+a+"ref"],s=e["_"+a+"padplus"],f=e["_"+a+"padminus"],u={x:1,y:-1}[a]*e[a+"shift"],c=3*e.arrowsize*e.arrowwidth||0,v=c+u,d=c-u,p=3*e.startarrowsize*e.arrowwidth||0,y=p+u,m=p-u,b;if(l===o){var A=eh.findExtremes(r,[r.r2c(n)],{ppadplus:v,ppadminus:d}),_=eh.findExtremes(r,[r.r2c(i)],{ppadplus:Math.max(s,y),ppadminus:Math.max(f,m)});b={min:[A.min[0],_.min[0]],max:[A.max[0],_.max[0]]}}else y=i?y+i:y,m=i?m-i:m,b=eh.findExtremes(r,[r.r2c(n)],{ppadplus:Math.max(s,v,y),ppadminus:Math.max(f,d,m)});e._extremes[t]=b}});var fG=P((GFe,sG)=>{"use strict";var gge=ba(),bge=Ig();sG.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",o=a==="linear"&&t.type==="log";if(!(i||o))return;var l=r._fullLayout.annotations,s=t._id.charAt(0),f,u;function c(d){var p=f[d],y=null;i?y=bge(p,t.range):y=Math.pow(10,p),gge(y)||(y=null),n(u+d,y)}for(var v=0;v{"use strict";var nT=zb(),uG=rG();cG.exports={moduleType:"component",name:"annotations",layoutAttributes:Vd(),supplyLayoutDefaults:nG(),includeBasePlot:Hm()("annotations"),calcAutorange:lG(),draw:nT.draw,drawOne:nT.drawOne,drawRaw:nT.drawRaw,hasClickToShow:uG.hasClickToShow,onClick:uG.onClick,convertCoords:fG()}});var Gb=P((HFe,hG)=>{"use strict";var tn=Vd(),xge=Ls().overrideAll,_ge=Xa().templatedArray;hG.exports=xge(_ge("annotation",{visible:tn.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:tn.xanchor,xshift:tn.xshift,yanchor:tn.yanchor,yshift:tn.yshift,text:tn.text,textangle:tn.textangle,font:tn.font,width:tn.width,height:tn.height,opacity:tn.opacity,align:tn.align,valign:tn.valign,bgcolor:tn.bgcolor,bordercolor:tn.bordercolor,borderpad:tn.borderpad,borderwidth:tn.borderwidth,showarrow:tn.showarrow,arrowcolor:tn.arrowcolor,arrowhead:tn.arrowhead,startarrowhead:tn.startarrowhead,arrowside:tn.arrowside,arrowsize:tn.arrowsize,startarrowsize:tn.startarrowsize,arrowwidth:tn.arrowwidth,standoff:tn.standoff,startstandoff:tn.startstandoff,hovertext:tn.hovertext,hoverlabel:tn.hoverlabel,captureevents:tn.captureevents}),"calc","from-root")});var pG=P((VFe,dG)=>{"use strict";var iT=Ur(),wge=yn(),Age=gl(),Tge=rT(),Mge=Gb();dG.exports=function(r,t,a){Age(r,t,{name:"annotations",handleItemDefaults:Sge,fullLayout:a.fullLayout})};function Sge(e,r,t,a){function n(l,s){return iT.coerce(e,r,Mge,l,s)}function i(l){var s=l+"axis",f={_fullLayout:{}};return f._fullLayout[s]=t[s],wge.coercePosition(r,f,n,l,l,.5)}var o=n("visible");o&&(Tge(e,r,a.fullLayout,n),i("x"),i("y"),i("z"),iT.noneOrAll(e,r,["x","y","z"]),r.xref="x",r.yref="y",r.zref="z",n("xanchor"),n("yanchor"),n("xshift"),n("yshift"),r.showarrow&&(r.axref="pixel",r.ayref="pixel",n("ax",-10),n("ay",-30),iT.noneOrAll(e,r,["ax","ay"])))}});var bG=P((YFe,gG)=>{"use strict";var mG=Ur(),yG=yn();gG.exports=function(r){for(var t=r.fullSceneLayout,a=t.annotations,n=0;n{"use strict";function oT(e,r){var t=[0,0,0,0],a,n;for(a=0;a<4;++a)for(n=0;n<4;++n)t[n]+=e[4*a+n]*r[a];return t}function kge(e,r){var t=oT(e.projection,oT(e.view,oT(e.model,[r[0],r[1],r[2],1])));return t}xG.exports=kge});var AG=P((jFe,wG)=>{"use strict";var Cge=zb().drawRaw,Lge=_G(),Dge=["x","y","z"];wG.exports=function(r){for(var t=r.fullSceneLayout,a=r.dataScale,n=t.annotations,i=0;i1){l=!0;break}}l?r.fullLayout._infolayer.select(".annotation-"+r.id+'[data-index="'+i+'"]').remove():(o._pdata=Lge(r.glplot.cameraParams,[t.xaxis.r2l(o.x)*a[0],t.yaxis.r2l(o.y)*a[1],t.zaxis.r2l(o.z)*a[2]]),Cge(r.graphDiv,o,i,r.id,o._xa,o._ya))}}});var SG=P((XFe,MG)=>{"use strict";var Fge=Bt(),TG=Ur();MG.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:Gb()}}},layoutAttributes:Gb(),handleDefaults:pG(),includeBasePlot:qge,convert:bG(),draw:AG()};function qge(e,r){var t=Fge.subplotsRegistry.gl3d;if(t)for(var a=t.attrRegex,n=Object.keys(e),i=0;i{"use strict";var EG=Vd(),kG=Gi(),CG=Qc().line,Rge=kc().dash,Hs=zn().extendFlat,Pge=Xa().templatedArray,ZFe=Gm(),tp=Cs(),{shapeTexttemplateAttrs:Nge,templatefallbackAttrs:Ige}=td(),Oge=jg();LG.exports=Pge("shape",{visible:Hs({},tp.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:Hs({},tp.legend,{editType:"calc+arraydraw"}),legendgroup:Hs({},tp.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:Hs({},tp.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:kG({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:Hs({},tp.legendrank,{editType:"calc+arraydraw"}),legendwidth:Hs({},tp.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:Hs({},EG.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:Hs({},EG.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:Hs({},CG.color,{editType:"arraydraw"}),width:Hs({},CG.width,{editType:"calc+arraydraw"}),dash:Hs({},Rge,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:Nge({},{keys:Object.keys(Oge)}),texttemplatefallback:Ige({editType:"arraydraw"}),font:kG({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var qG=P(($Fe,FG)=>{"use strict";var cy=Ur(),ap=yn(),Bge=gl(),zge=lT(),DG=Jc();FG.exports=function(r,t){Bge(r,t,{name:"shapes",handleItemDefaults:Uge})};function Gge(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}function Uge(e,r,t){function a(J,le){return cy.coerce(e,r,zge,J,le)}r._isShape=!0;var n=a("visible");if(n){var i=a("showlegend");i&&(a("legend"),a("legendwidth"),a("legendgroup"),a("legendgrouptitle.text"),cy.coerceFont(a,"legendgrouptitle.font"),a("legendrank"));var o=a("path"),l=o?"path":"rect",s=a("type",l),f=s!=="path";f&&delete r.path,a("editable"),a("layer"),a("opacity"),a("fillcolor"),a("fillrule");var u=a("line.width");u&&(a("line.color"),a("line.dash"));for(var c=a("xsizemode"),v=a("ysizemode"),d=["x","y"],p=0;p<2;p++){var y=d[p],m=y+"anchor",b=y==="x"?c:v,A={_fullLayout:t},_,x,T,E=ap.coerceRef(e,r,A,y,void 0,"paper"),M=ap.getRefType(E);if(M==="range"?(_=ap.getFromId(A,E),_._shapeIndices.push(r._index),T=DG.rangeToShapePosition(_),x=DG.shapePositionToRange(_),(_.type==="category"||_.type==="multicategory")&&(a(y+"0shift"),a(y+"1shift"))):x=T=cy.identity,f){var k=.25,F=.75,I=y+"0",O=y+"1",q=e[I],H=e[O];e[I]=x(e[I],!0),e[O]=x(e[O],!0),b==="pixel"?(a(I,0),a(O,10)):(ap.coercePosition(r,A,a,E,I,k),ap.coercePosition(r,A,a,E,O,F)),r[I]=T(r[I]),r[O]=T(r[O]),e[I]=q,e[O]=H}if(b==="pixel"){var X=e[m];e[m]=x(e[m],!0),ap.coercePosition(r,A,a,E,m,.25),r[m]=T(r[m]),e[m]=X}}f&&cy.noneOrAll(e,r,["x0","x1","y0","y1"]);var oe=s==="line",te,Q;if(f&&(te=a("label.texttemplate"),a("label.texttemplatefallback")),te||(Q=a("label.text")),Q||te){a("label.textangle");var Z=a("label.textposition",oe?"middle":"middle center");a("label.xanchor"),a("label.yanchor",Gge(oe,Z)),a("label.padding"),cy.coerceFont(a,"label.font",t.font)}}}});var NG=P((QFe,PG)=>{"use strict";var Hge=ha(),RG=Ur();function Vge(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}PG.exports=function(r,t,a){a("newshape.visible"),a("newshape.name"),a("newshape.showlegend"),a("newshape.legend"),a("newshape.legendwidth"),a("newshape.legendgroup"),a("newshape.legendgrouptitle.text"),RG.coerceFont(a,"newshape.legendgrouptitle.font"),a("newshape.legendrank"),a("newshape.drawdirection"),a("newshape.layer"),a("newshape.fillcolor"),a("newshape.fillrule"),a("newshape.opacity");var n=a("newshape.line.width");if(n){var i=(r||{}).plot_bgcolor||"#FFF";a("newshape.line.color",Hge.contrast(i)),a("newshape.line.dash")}var o=r.dragmode==="drawline",l=a("newshape.label.text"),s=a("newshape.label.texttemplate");if(a("newshape.label.texttemplatefallback"),l||s){a("newshape.label.textangle");var f=a("newshape.label.textposition",o?"middle":"middle center");a("newshape.label.xanchor"),a("newshape.label.yanchor",Vge(o,f)),a("newshape.label.padding"),RG.coerceFont(a,"newshape.label.font",t.font)}a("activeshape.fillcolor"),a("activeshape.opacity")}});var GG=P((KFe,zG)=>{"use strict";var sT=Ur(),np=yn(),ip=_m(),OG=Jc();zG.exports=function(r){var t=r._fullLayout,a=sT.filterVisible(t.shapes);if(!(!a.length||!r._fullData.length))for(var n=0;n0?f+o:o;return{ppad:o,ppadplus:l?c:v,ppadminus:l?v:c}}else return{ppad:o}}function IG(e,r,t){var a=e._id.charAt(0)==="x"?"x":"y",n=e.type==="category"||e.type==="multicategory",i,o,l=0,s=0,f=n?e.r2c:e.d2c,u=r[a+"sizemode"]==="scaled";if(u?(i=r[a+"0"],o=r[a+"1"],n&&(l=r[a+"0shift"],s=r[a+"1shift"])):(i=r[a+"anchor"],o=r[a+"anchor"]),i!==void 0)return[f(i)+l,f(o)+s];if(r.path){var c=1/0,v=-1/0,d=r.path.match(ip.segmentRE),p,y,m,b,A;for(e.type==="date"&&(f=OG.decodeDate(f)),p=0;pv&&(v=A)));if(v>=c)return[c,v]}}});var VG=P((eqe,HG)=>{"use strict";var UG=F3();HG.exports={moduleType:"component",name:"shapes",layoutAttributes:lT(),supplyLayoutDefaults:qG(),supplyDrawNewShapeDefaults:NG(),includeBasePlot:Hm()("shapes"),calcAutorange:GG(),draw:UG.draw,drawOne:UG.drawOne}});var fT=P((tqe,WG)=>{"use strict";var YG=qi(),jge=Xa().templatedArray,rqe=Gm();WG.exports=jge("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",YG.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",YG.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var XG=P((aqe,jG)=>{"use strict";var Xge=Ur(),uT=yn(),Zge=gl(),Jge=fT(),$ge="images";jG.exports=function(r,t){var a={name:$ge,handleItemDefaults:Qge};Zge(r,t,a)};function Qge(e,r,t){function a(v,d){return Xge.coerce(e,r,Jge,v,d)}var n=a("source"),i=a("visible",!!n);if(!i)return r;a("layer"),a("xanchor"),a("yanchor"),a("sizex"),a("sizey"),a("sizing"),a("opacity");for(var o={_fullLayout:t},l=["x","y"],s=0;s<2;s++){var f=l[s],u=uT.coerceRef(e,r,o,f,"paper",void 0);if(u!=="paper"){var c=uT.getFromId(o,u);c._imgIndices.push(r._index)}uT.coercePosition(r,o,a,u,f,0)}return r}});var QG=P((nqe,$G)=>{"use strict";var ZG=da(),Kge=Ha(),op=yn(),JG=kn(),e2e=Oc();$G.exports=function(r){var t=r._fullLayout,a=[],n={},i=[],o,l;for(l=0;l{"use strict";var KG=ba(),r2e=Ig();eU.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",o=a==="linear"&&t.type==="log";if(i||o){for(var l=r._fullLayout.images,s=t._id.charAt(0),f,u,c=0;c{"use strict";tU.exports={moduleType:"component",name:"images",layoutAttributes:fT(),supplyLayoutDefaults:XG(),includeBasePlot:Hm()("images"),draw:QG(),convertCoords:rU()}});var Ub=P((lqe,nU)=>{"use strict";nU.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var cT=P((sqe,oU)=>{"use strict";var t2e=Gi(),a2e=wf(),n2e=zn().extendFlat,i2e=Ls().overrideAll,o2e=Xg(),iU=Xa().templatedArray,l2e=iU("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});oU.exports=i2e(iU("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:l2e,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:n2e(o2e({editType:"arraydraw"}),{}),font:t2e({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:a2e.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var uU=P((fqe,fU)=>{"use strict";var Hb=Ur(),lU=gl(),sU=cT(),s2e=Ub(),f2e=s2e.name,u2e=sU.buttons;fU.exports=function(r,t){var a={name:f2e,handleItemDefaults:c2e};lU(r,t,a)};function c2e(e,r,t){function a(o,l){return Hb.coerce(e,r,sU,o,l)}var n=lU(e,r,{name:"buttons",handleItemDefaults:v2e}),i=a("visible",n.length>0);i&&(a("active"),a("direction"),a("type"),a("showactive"),a("x"),a("y"),Hb.noneOrAll(e,r,["x","y"]),a("xanchor"),a("yanchor"),a("pad.t"),a("pad.r"),a("pad.b"),a("pad.l"),Hb.coerceFont(a,"font",t.font),a("bgcolor",t.paper_bgcolor),a("bordercolor"),a("borderwidth"))}function v2e(e,r){function t(n,i){return Hb.coerce(e,r,u2e,n,i)}var a=t("visible",e.method==="skip"||Array.isArray(e.args));a&&(t("method"),t("args"),t("args2"),t("label"),t("execute"))}});var hU=P((uqe,vU)=>{"use strict";vU.exports=Cn;var Vs=da(),cU=ha(),lp=Ha(),Vb=Ur();function Cn(e,r,t){this.gd=e,this.container=r,this.id=t,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}Cn.barWidth=2;Cn.barLength=20;Cn.barRadius=2;Cn.barPad=1;Cn.barColor="#808BA4";Cn.prototype.enable=function(r,t,a){var n=this.gd._fullLayout,i=n.width,o=n.height;this.position=r;var l=this.position.l,s=this.position.w,f=this.position.t,u=this.position.h,c=this.position.direction,v=c==="down",d=c==="left",p=c==="right",y=c==="up",m=s,b=u,A,_,x,T;!v&&!d&&!p&&!y&&(this.position.direction="down",v=!0);var E=v||y;E?(A=l,_=A+m,v?(x=f,T=Math.min(x+b,o),b=T-x):(T=f+b,x=Math.max(T-b,0),b=T-x)):(x=f,T=x+b,d?(_=l+m,A=Math.max(_-m,0),m=_-A):(A=l,_=Math.min(A+m,i),m=_-A)),this._box={l:A,t:x,w:m,h:b};var M=s>m,k=Cn.barLength+2*Cn.barPad,F=Cn.barWidth+2*Cn.barPad,I=l,O=f+u;O+F>o&&(O=o-F);var q=this.container.selectAll("rect.scrollbar-horizontal").data(M?[0]:[]);q.exit().on(".drag",null).remove(),q.enter().append("rect").classed("scrollbar-horizontal",!0).call(cU.fill,Cn.barColor),M?(this.hbar=q.attr({rx:Cn.barRadius,ry:Cn.barRadius,x:I,y:O,width:k,height:F}),this._hbarXMin=I+k/2,this._hbarTranslateMax=m-k):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var H=u>b,X=Cn.barWidth+2*Cn.barPad,oe=Cn.barLength+2*Cn.barPad,te=l+s,Q=f;te+X>i&&(te=i-X);var Z=this.container.selectAll("rect.scrollbar-vertical").data(H?[0]:[]);Z.exit().on(".drag",null).remove(),Z.enter().append("rect").classed("scrollbar-vertical",!0).call(cU.fill,Cn.barColor),H?(this.vbar=Z.attr({rx:Cn.barRadius,ry:Cn.barRadius,x:te,y:Q,width:X,height:oe}),this._vbarYMin=Q+oe/2,this._vbarTranslateMax=b-oe):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var J=this.id,le=A-.5,ce=H?_+X+.5:_+.5,De=x-.5,Be=M?T+F+.5:T+.5,Ee=n._topdefs.selectAll("#"+J).data(M||H?[0]:[]);if(Ee.exit().remove(),Ee.enter().append("clipPath").attr("id",J).append("rect"),M||H?(this._clipRect=Ee.select("rect").attr({x:Math.floor(le),y:Math.floor(De),width:Math.ceil(ce)-Math.floor(le),height:Math.ceil(Be)-Math.floor(De)}),this.container.call(lp.setClipUrl,J,this.gd),this.bg.attr({x:l,y:f,width:s,height:u})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(lp.setClipUrl,null),delete this._clipRect),M||H){var Xe=Vs.behavior.drag().on("dragstart",function(){Vs.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(Xe);var Ae=Vs.behavior.drag().on("dragstart",function(){Vs.event.sourceEvent.preventDefault(),Vs.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));M&&this.hbar.on(".drag",null).call(Ae),H&&this.vbar.on(".drag",null).call(Ae)}this.setTranslate(t,a)};Cn.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(lp.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};Cn.prototype._onBoxDrag=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r-=Vs.event.dx),this.vbar&&(t-=Vs.event.dy),this.setTranslate(r,t)};Cn.prototype._onBoxWheel=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r+=Vs.event.deltaY),this.vbar&&(t+=Vs.event.deltaY),this.setTranslate(r,t)};Cn.prototype._onBarDrag=function(){var r=this.translateX,t=this.translateY;if(this.hbar){var a=r+this._hbarXMin,n=a+this._hbarTranslateMax,i=Vb.constrain(Vs.event.x,a,n),o=(i-a)/(n-a),l=this.position.w-this._box.w;r=o*l}if(this.vbar){var s=t+this._vbarYMin,f=s+this._vbarTranslateMax,u=Vb.constrain(Vs.event.y,s,f),c=(u-s)/(f-s),v=this.position.h-this._box.h;t=c*v}this.setTranslate(r,t)};Cn.prototype.setTranslate=function(r,t){var a=this.position.w-this._box.w,n=this.position.h-this._box.h;if(r=Vb.constrain(r||0,0,a),t=Vb.constrain(t||0,0,n),this.translateX=r,this.translateY=t,this.container.call(lp.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-t),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+t-.5)}),this.hbar){var i=r/a;this.hbar.call(lp.setTranslate,r+i*this._hbarTranslateMax,t)}if(this.vbar){var o=t/n;this.vbar.call(lp.setTranslate,r,t+o*this._vbarTranslateMax)}}});var AU=P((cqe,wU)=>{"use strict";var sp=da(),vy=xi(),hy=ha(),fp=Ha(),Ml=Ur(),Yb=po(),h2e=Xa().arrayEditor,pU=ho().LINE_SPACING,Gt=Ub(),d2e=hU();wU.exports=function(r){var t=r._fullLayout,a=Ml.filterVisible(t[Gt.name]);function n(v){vy.autoMargin(r,xU(v))}var i=t._menulayer.selectAll("g."+Gt.containerClassName).data(a.length>0?[0]:[]);if(i.enter().append("g").classed(Gt.containerClassName,!0).style("cursor","pointer"),i.exit().each(function(){sp.select(this).selectAll("g."+Gt.headerGroupClassName).each(n)}).remove(),a.length!==0){var o=i.selectAll("g."+Gt.headerGroupClassName).data(a,p2e);o.enter().append("g").classed(Gt.headerGroupClassName,!0);for(var l=Ml.ensureSingle(i,"g",Gt.dropdownButtonGroupClassName,function(v){v.style("pointer-events","all")}),s=0;s{"use strict";var w2e=Ub();TU.exports={moduleType:"component",name:w2e.name,layoutAttributes:cT(),supplyLayoutDefaults:uU(),draw:AU()}});var py=P((hqe,SU)=>{"use strict";SU.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var pT=P((dqe,CU)=>{"use strict";var EU=Gi(),A2e=Xg(),T2e=zn().extendDeepAll,M2e=Ls().overrideAll,S2e=Y1(),kU=Xa().templatedArray,rh=py(),E2e=kU("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});CU.exports=M2e(kU("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:E2e,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:T2e(A2e({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:S2e.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:EU({})},font:EU({}),activebgcolor:{valType:"color",dflt:rh.gripBgActiveColor},bgcolor:{valType:"color",dflt:rh.railBgColor},bordercolor:{valType:"color",dflt:rh.railBorderColor},borderwidth:{valType:"number",min:0,dflt:rh.railBorderWidth},ticklen:{valType:"number",min:0,dflt:rh.tickLength},tickcolor:{valType:"color",dflt:rh.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:rh.minorTickLength}}),"arraydraw","from-root")});var qU=P((pqe,FU)=>{"use strict";var up=Ur(),LU=gl(),DU=pT(),k2e=py(),C2e=k2e.name,L2e=DU.steps;FU.exports=function(r,t){LU(r,t,{name:C2e,handleItemDefaults:D2e})};function D2e(e,r,t){function a(c,v){return up.coerce(e,r,DU,c,v)}for(var n=LU(e,r,{name:"steps",handleItemDefaults:F2e}),i=0,o=0;o{"use strict";var Ys=da(),Wb=xi(),iv=ha(),Ws=Ha(),Sl=Ur(),q2e=Sl.strTranslate,my=po(),R2e=Xa().arrayEditor,ea=py(),gT=ho(),NU=gT.LINE_SPACING,mT=gT.FROM_TL,yT=gT.FROM_BR;UU.exports=function(r){var t=r._context.staticPlot,a=r._fullLayout,n=P2e(a,r),i=a._infolayer.selectAll("g."+ea.containerClassName).data(n.length>0?[0]:[]);i.enter().append("g").classed(ea.containerClassName,!0).style("cursor",t?null:"ew-resize");function o(u){u._commandObserver&&(u._commandObserver.remove(),delete u._commandObserver),Wb.autoMargin(r,IU(u))}if(i.exit().each(function(){Ys.select(this).selectAll("g."+ea.groupClassName).each(o)}).remove(),n.length!==0){var l=i.selectAll("g."+ea.groupClassName).data(n,N2e);l.enter().append("g").classed(ea.groupClassName,!0),l.exit().each(o).remove();for(var s=0;s0&&(l=l.transition().duration(r.transition.duration).ease(r.transition.easing)),l.attr("transform",q2e(o-ea.gripWidth*.5,r._dims.currentValueTotalHeight))}}function bT(e,r){var t=e._dims;return t.inputAreaStart+ea.stepInset+(t.inputAreaLength-2*ea.stepInset)*Math.min(1,Math.max(0,r))}function PU(e,r){var t=e._dims;return Math.min(1,Math.max(0,(r-ea.stepInset-t.inputAreaStart)/(t.inputAreaLength-2*ea.stepInset-2*t.inputAreaStart)))}function H2e(e,r,t){var a=t._dims,n=Sl.ensureSingle(e,"rect",ea.railTouchRectClass,function(i){i.call(zU,r,e,t).style("pointer-events","all")});n.attr({width:a.inputAreaLength,height:Math.max(a.inputAreaWidth,ea.tickOffset+t.ticklen+a.labelHeight)}).call(iv.fill,t.bgcolor).attr("opacity",0),Ws.setTranslate(n,0,a.currentValueTotalHeight)}function V2e(e,r){var t=r._dims,a=t.inputAreaLength-ea.railInset*2,n=Sl.ensureSingle(e,"rect",ea.railRectClass);n.attr({width:a,height:ea.railWidth,rx:ea.railRadius,ry:ea.railRadius,"shape-rendering":"crispEdges"}).call(iv.stroke,r.bordercolor).call(iv.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px"),Ws.setTranslate(n,ea.railInset,(t.inputAreaWidth-ea.railWidth)*.5+t.currentValueTotalHeight)}});var YU=P((yqe,VU)=>{"use strict";var Y2e=py();VU.exports={moduleType:"component",name:Y2e.name,layoutAttributes:pT(),supplyLayoutDefaults:qU(),draw:HU()}});var Xb=P((gqe,jU)=>{"use strict";var WU=wf();jU.exports={bgcolor:{valType:"color",dflt:WU.background,editType:"plot"},bordercolor:{valType:"color",dflt:WU.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var xT=P((bqe,XU)=>{"use strict";XU.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var Zb=P((xqe,ZU)=>{"use strict";ZU.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var QU=P($b=>{"use strict";var W2e=kn(),j2e=po(),JU=Zb(),X2e=ho().LINE_SPACING,Jb=JU.name;function $U(e){var r=e&&e[Jb];return r&&r.visible}$b.isVisible=$U;$b.makeData=function(e){for(var r=W2e.list({_fullLayout:e},"x",!0),t=e.margin,a=[],n=0;n{"use strict";var Qb=Ur(),KU=Xa(),eH=kn(),Z2e=Xb(),J2e=xT();rH.exports=function(r,t,a){var n=r[a],i=t[a];if(!(n.rangeslider||t._requestRangeslider[i._id]))return;Qb.isPlainObject(n.rangeslider)||(n.rangeslider={});var o=n.rangeslider,l=KU.newContainer(i,"rangeslider");function s(T,E){return Qb.coerce(o,l,Z2e,T,E)}var f,u;function c(T,E){return Qb.coerce(f,u,J2e,T,E)}var v=s("visible");if(v){s("bgcolor",t.plot_bgcolor),s("bordercolor"),s("borderwidth"),s("thickness"),s("autorange",!i.isValidRange(o.range)),s("range");var d=t._subplots;if(d)for(var p=d.cartesian.filter(function(T){return T.substr(0,T.indexOf("y"))===eH.name2id(a)}).map(function(T){return T.substr(T.indexOf("y"),T.length)}),y=Qb.simpleMap(p,eH.id2name),m=0;m{"use strict";var $2e=kn().list,Q2e=Md().getAutoRange,K2e=Zb();aH.exports=function(r){for(var t=$2e(r,"x",!0),a=0;a{"use strict";var Kb=da(),e3e=Bt(),r3e=xi(),On=Ur(),ex=On.strTranslate,oH=Ha(),ov=ha(),t3e=fm(),a3e=sy(),_T=kn(),n3e=Ns(),i3e=Yc(),sa=Zb();lH.exports=function(e){for(var r=e._fullLayout,t=r._rangeSliderData,a=0;a=Z.max)te=O[Q+1];else if(oe=Z.pmax)te=O[Q+1];else if(oe0?e.touches[0].clientX:0}function o3e(e,r,t,a){if(r._context.staticPlot)return;var n=e.select("rect."+sa.slideBoxClassName).node(),i=e.select("rect."+sa.grabAreaMinClassName).node(),o=e.select("rect."+sa.grabAreaMaxClassName).node();function l(){var s=Kb.event,f=s.target,u=iH(s),c=u-e.node().getBoundingClientRect().left,v=a.d2p(t._rl[0]),d=a.d2p(t._rl[1]),p=n3e.coverSlip();this.addEventListener("touchmove",y),this.addEventListener("touchend",m),p.addEventListener("mousemove",y),p.addEventListener("mouseup",m);function y(b){var A=iH(b),_=+A-u,x,T,E;switch(f){case n:if(E="ew-resize",v+_>t._length||d+_<0)return;x=v+_,T=d+_;break;case i:if(E="col-resize",v+_>t._length)return;x=v+_,T=d;break;case o:if(E="col-resize",d+_<0)return;x=v,T=d+_;break;default:E="ew-resize",x=c,T=c+_;break}if(T{"use strict";var m3e=Ur(),y3e=Xb(),g3e=xT(),wT=QU();fH.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:m3e.extendFlat({},y3e,{yaxis:g3e})}}},layoutAttributes:Xb(),handleDefaults:tH(),calcAutorange:nH(),draw:sH(),isVisible:wT.isVisible,makeData:wT.makeData,autoMarginOpts:wT.autoMarginOpts}});var rx=P((Sqe,vH)=>{"use strict";var b3e=Gi(),cH=wf(),x3e=Xa().templatedArray,_3e=x3e("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});vH.exports={visible:{valType:"boolean",editType:"plot"},buttons:_3e,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:b3e({editType:"plot"}),bgcolor:{valType:"color",dflt:cH.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:cH.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var AT=P((Eqe,hH)=>{"use strict";hH.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var mH=P((kqe,pH)=>{"use strict";var tx=Ur(),w3e=ha(),A3e=Xa(),T3e=gl(),dH=rx(),TT=AT();pH.exports=function(r,t,a,n,i){var o=r.rangeselector||{},l=A3e.newContainer(t,"rangeselector");function s(d,p){return tx.coerce(o,l,dH,d,p)}var f=T3e(o,l,{name:"buttons",handleItemDefaults:M3e,calendar:i}),u=s("visible",f.length>0);if(u){var c=S3e(t,a,n);s("x",c[0]),s("y",c[1]),tx.noneOrAll(r,t,["x","y"]),s("xanchor"),s("yanchor"),tx.coerceFont(s,"font",a.font);var v=s("bgcolor");s("activecolor",w3e.contrast(v,TT.lightAmount,TT.darkAmount)),s("bordercolor"),s("borderwidth")}};function M3e(e,r,t,a){var n=a.calendar;function i(s,f){return tx.coerce(e,r,dH.buttons,s,f)}var o=i("visible");if(o){var l=i("step");l!=="all"&&(n&&n!=="gregorian"&&(l==="month"||l==="year")?r.stepmode="backward":i("stepmode"),i("count")),i("label")}}function S3e(e,r,t){for(var a=t.filter(function(l){return r[l].anchor===e._id}),n=0,i=0;i{"use strict";var E3e=x5(),k3e=Ur().titleCase;yH.exports=function(r,t){var a=r._name,n={};if(t.step==="all")n[a+".autorange"]=!0;else{var i=C3e(r,t);n[a+".range[0]"]=i[0],n[a+".range[1]"]=i[1]}return n};function C3e(e,r){var t=e.range,a=new Date(e.r2l(t[1])),n=r.step,i=E3e["utc"+k3e(n)],o=r.count,l;switch(r.stepmode){case"backward":l=e.l2r(+i.offset(a,-o));break;case"todate":var s=i.offset(a,-o);l=e.l2r(+i.ceil(s));break}var f=t[1];return[l,f]}});var SH=P((Lqe,MH)=>{"use strict";var nx=da(),L3e=Bt(),D3e=xi(),bH=ha(),TH=Ha(),Iu=Ur(),xH=Iu.strTranslate,ax=po(),F3e=kn(),ET=ho(),_H=ET.LINE_SPACING,wH=ET.FROM_TL,AH=ET.FROM_BR,ST=AT(),q3e=gH();MH.exports=function(r){var t=r._fullLayout,a=t._infolayer.selectAll(".rangeselector").data(R3e(r),P3e);a.enter().append("g").classed("rangeselector",!0),a.exit().remove(),a.style({cursor:"pointer","pointer-events":"all"}),a.each(function(n){var i=nx.select(this),o=n,l=o.rangeselector,s=i.selectAll("g.button").data(Iu.filterVisible(l.buttons));s.enter().append("g").classed("button",!0),s.exit().remove(),s.each(function(f){var u=nx.select(this),c=q3e(o,f);f._isActive=N3e(o,f,c),u.call(MT,l,f),u.call(O3e,l,f,r),u.on("click",function(){r._dragged||L3e.call("_guiRelayout",r,c)}),u.on("mouseover",function(){f._isHovered=!0,u.call(MT,l,f)}),u.on("mouseout",function(){f._isHovered=!1,u.call(MT,l,f)})}),z3e(r,s,l,o._name,i)})};function R3e(e){for(var r=F3e.list(e,"x",!0),t=[],a=0;a{"use strict";EH.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:rx()}}},layoutAttributes:rx(),handleDefaults:mH(),draw:SH()}});var ix=P(kT=>{"use strict";var CH=zn().extendFlat;kT.attributes=function(e,r){e=e||{},r=r||{};var t={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},a=e.name?e.name+" ":"",n=e.trace?"trace ":"subplot ",i=r.description?" "+r.description:"",o={x:CH({},t,{}),y:CH({},t,{}),editType:e.editType};return e.noGridCell||(o.row={valType:"integer",min:0,dflt:0,editType:e.editType},o.column={valType:"integer",min:0,dflt:0,editType:e.editType}),o};kT.defaults=function(e,r,t,a){var n=a&&a.x||[0,1],i=a&&a.y||[0,1],o=r.grid;if(o){var l=t("domain.column");l!==void 0&&(l{"use strict";var G3e=Ur(),U3e=Qh().counter,H3e=ix().attributes,LH=qi().idRegex,V3e=Xa(),CT={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[U3e("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[LH.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[LH.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:H3e({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function ox(e,r,t){var a=r[t+"axes"],n=Object.keys((e._splomAxes||{})[t]||{});if(Array.isArray(a))return a;if(n.length)return n}function Y3e(e,r){var t=e.grid||{},a=ox(r,t,"x"),n=ox(r,t,"y");if(!e.grid&&!a&&!n)return;var i=Array.isArray(t.subplots)&&Array.isArray(t.subplots[0]),o=Array.isArray(a),l=Array.isArray(n),s=o&&a!==t.xaxes&&l&&n!==t.yaxes,f,u;i?(f=t.subplots.length,u=t.subplots[0].length):(l&&(f=n.length),o&&(u=a.length));var c=V3e.newContainer(r,"grid");function v(E,M){return G3e.coerce(t,c,CT,E,M)}var d=v("rows",f),p=v("columns",u);if(!(d*p>1)){delete r.grid;return}if(!i&&!o&&!l){var y=v("pattern")==="independent";y&&(i=!0)}c._hasSubplotGrid=i;var m=v("roworder"),b=m==="top to bottom",A=i?.2:.1,_=i?.3:.1,x,T;s&&r._splomGridDflt&&(x=r._splomGridDflt.xside,T=r._splomGridDflt.yside),c._domains={x:DH("x",v,A,x,p),y:DH("y",v,_,T,d,b)}}function DH(e,r,t,a,n,i){var o=r(e+"gap",t),l=r("domain."+e);r(e+"side",a);for(var s=new Array(n),f=l[0],u=(l[1]-f)/(n-o),c=u*(1-o),v=0;v{"use strict";RH.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var IH=P((Pqe,NH)=>{"use strict";var PH=ba(),j3e=Bt(),X3e=Ur(),Z3e=Xa(),J3e=DT();NH.exports=function(e,r,t,a){var n="error_"+a.axis,i=Z3e.newContainer(r,n),o=e[n]||{};function l(p,y){return X3e.coerce(o,i,J3e,p,y)}var s=o.array!==void 0||o.value!==void 0||o.type==="sqrt",f=l("visible",s);if(f!==!1){var u=l("type","array"in o?"data":"percent"),c=!0;u!=="sqrt"&&(c=l("symmetric",!((u==="data"?"arrayminus":"valueminus")in o))),u==="data"?(l("array"),l("traceref"),c||(l("arrayminus"),l("tracerefminus"))):(u==="percent"||u==="constant")&&(l("value"),c||l("valueminus"));var v="copy_"+a.inherit+"style";if(a.inherit){var d=r["error_"+a.inherit];(d||{}).visible&&l(v,!(o.color||PH(o.thickness)||PH(o.width)))}(!a.inherit||!i[v])&&(l("color",t),l("thickness"),l("width",j3e.traceIs(r,"gl3d")?0:4))}}});var FT=P((Nqe,BH)=>{"use strict";BH.exports=function(r){var t=r.type,a=r.symmetric;if(t==="data"){var n=r.array||[];if(a)return function(f,u){var c=+n[u];return[c,c]};var i=r.arrayminus||[];return function(f,u){var c=+n[u],v=+i[u];return!isNaN(c)||!isNaN(v)?[v||0,c||0]:[NaN,NaN]}}else{var o=OH(t,r.value),l=OH(t,r.valueminus);return a||r.valueminus===void 0?function(f){var u=o(f);return[u,u]}:function(f){return[l(f),o(f)]}}};function OH(e,r){if(e==="percent")return function(t){return Math.abs(t*r/100)};if(e==="constant")return function(){return Math.abs(r)};if(e==="sqrt")return function(t){return Math.sqrt(Math.abs(t))}}});var UH=P((Iqe,GH)=>{"use strict";var qT=ba(),$3e=Bt(),RT=yn(),Q3e=Ur(),K3e=FT();GH.exports=function(r){for(var t=r.calcdata,a=0;a{"use strict";var HH=da(),lv=ba(),ebe=Ha(),rbe=Ri();VH.exports=function(r,t,a,n){var i,o=a.xaxis,l=a.yaxis,s=n&&n.duration>0,f=r._context.staticPlot;t.each(function(u){var c=u[0].trace,v=c.error_x||{},d=c.error_y||{},p;c.ids&&(p=function(A){return A.id});var y=rbe.hasMarkers(c)&&c.marker.maxdisplayed>0;!d.visible&&!v.visible&&(u=[]);var m=HH.select(this).selectAll("g.errorbar").data(u,p);if(m.exit().remove(),!!u.length){v.visible||m.selectAll("path.xerror").remove(),d.visible||m.selectAll("path.yerror").remove(),m.style("opacity",1);var b=m.enter().append("g").classed("errorbar",!0);s&&b.style("opacity",0).transition().duration(n.duration).style("opacity",1),ebe.setClipUrl(m,a.layerClipId,r),m.each(function(A){var _=HH.select(this),x=tbe(A,o,l);if(!(y&&!A.vis)){var T,E=_.select("path.yerror");if(d.visible&&lv(x.x)&&lv(x.yh)&&lv(x.ys)){var M=d.width;T="M"+(x.x-M)+","+x.yh+"h"+2*M+"m-"+M+",0V"+x.ys,x.noYS||(T+="m-"+M+",0h"+2*M),i=!E.size(),i?E=_.append("path").style("vector-effect",f?"none":"non-scaling-stroke").classed("yerror",!0):s&&(E=E.transition().duration(n.duration).ease(n.easing)),E.attr("d",T)}else E.remove();var k=_.select("path.xerror");if(v.visible&&lv(x.y)&&lv(x.xh)&&lv(x.xs)){var F=(v.copy_ystyle?d:v).width;T="M"+x.xh+","+(x.y-F)+"v"+2*F+"m0,-"+F+"H"+x.xs,x.noXS||(T+="m0,-"+F+"v"+2*F),i=!k.size(),i?k=_.append("path").style("vector-effect",f?"none":"non-scaling-stroke").classed("xerror",!0):s&&(k=k.transition().duration(n.duration).ease(n.easing)),k.attr("d",T)}else k.remove()}})}})};function tbe(e,r,t){var a={x:r.c2p(e.x),y:t.c2p(e.y)};return e.yh!==void 0&&(a.yh=t.c2p(e.yh),a.ys=t.c2p(e.ys),lv(a.ys)||(a.noYS=!0,a.ys=t.c2p(e.ys,!0))),e.xh!==void 0&&(a.xh=r.c2p(e.xh),a.xs=r.c2p(e.xs),lv(a.xs)||(a.noXS=!0,a.xs=r.c2p(e.xs,!0))),a}});var XH=P((Bqe,jH)=>{"use strict";var abe=da(),WH=ha();jH.exports=function(r){r.each(function(t){var a=t[0].trace,n=a.error_y||{},i=a.error_x||{},o=abe.select(this);o.selectAll("path.yerror").style("stroke-width",n.thickness+"px").call(WH.stroke,n.color),i.copy_ystyle&&(i=n),o.selectAll("path.xerror").style("stroke-width",i.thickness+"px").call(WH.stroke,i.color)})}});var $H=P((zqe,JH)=>{"use strict";var yy=Ur(),ZH=Ls().overrideAll,gy=DT(),th={error_x:yy.extendFlat({},gy),error_y:yy.extendFlat({},gy)};delete th.error_x.copy_zstyle;delete th.error_y.copy_zstyle;delete th.error_y.copy_ystyle;var by={error_x:yy.extendFlat({},gy),error_y:yy.extendFlat({},gy),error_z:yy.extendFlat({},gy)};delete by.error_x.copy_ystyle;delete by.error_y.copy_ystyle;delete by.error_z.copy_ystyle;delete by.error_z.copy_zstyle;JH.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:th,bar:th,histogram:th,scatter3d:ZH(by,"calc","nested"),scattergl:ZH(th,"calc","nested")}},supplyDefaults:IH(),calc:UH(),makeComputeError:FT(),plot:YH(),style:XH(),hoverInfo:nbe};function nbe(e,r,t){(r.error_y||{}).visible&&(t.yerr=e.yh-e.y,r.error_y.symmetric||(t.yerrneg=e.y-e.ys)),(r.error_x||{}).visible&&(t.xerr=e.xh-e.x,r.error_x.symmetric||(t.xerrneg=e.x-e.xs))}});var KH=P((Gqe,QH)=>{"use strict";QH.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var oV=P((Uqe,iV)=>{"use strict";var sv=da(),PT=ks(),sx=xi(),eV=Bt(),Ou=yn(),lx=Ns(),ts=Ur(),Xs=ts.strTranslate,nV=zn().extendFlat,NT=Yc(),js=Ha(),IT=ha(),ibe=fm(),obe=po(),lbe=Rs().flipScale,sbe=Y6(),fbe=W6(),ube=Ul(),OT=ho(),rV=OT.LINE_SPACING,tV=OT.FROM_TL,aV=OT.FROM_BR,wn=KH().cn;function cbe(e){var r=e._fullLayout,t=r._infolayer.selectAll("g."+wn.colorbar).data(vbe(e),function(a){return a._id});t.enter().append("g").attr("class",function(a){return a._id}).classed(wn.colorbar,!0),t.each(function(a){var n=sv.select(this);ts.ensureSingle(n,"rect",wn.cbbg),ts.ensureSingle(n,"g",wn.cbfills),ts.ensureSingle(n,"g",wn.cblines),ts.ensureSingle(n,"g",wn.cbaxis,function(o){o.classed(wn.crisp,!0)}),ts.ensureSingle(n,"g",wn.cbtitleunshift,function(o){o.append("g").classed(wn.cbtitle,!0)}),ts.ensureSingle(n,"rect",wn.cboutline);var i=hbe(n,a,e);i&&i.then&&(e._promises||[]).push(i),e._context.edits.colorbarPosition&&dbe(n,a,e)}),t.exit().each(function(a){sx.autoMargin(e,a._id)}).remove(),t.order()}function vbe(e){var r=e._fullLayout,t=e.calcdata,a=[],n,i,o,l;function s(_){return nV(_,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function f(){typeof l.calc=="function"?l.calc(e,o,n):(n._fillgradient=i.reversescale?lbe(i.colorscale):i.colorscale,n._zrange=[i[l.min],i[l.max]])}for(var u=0;u1){var de=Math.pow(10,Math.floor(Math.log(ee)/Math.LN10));$e*=de*ts.roundUp(ee/de,[2,5,10]),(Math.abs(q.start)/q.size+1e-6)%1<2e-6&&(ze.tick0=0)}ze.dtick=$e}ze.domain=a?[Ae+p/x.h,Ae+J-p/x.h]:[Ae+d/x.w,Ae+J-d/x.w],ze.setScale(),e.attr("transform",Xs(Math.round(x.l),Math.round(x.t)));var ae=e.select("."+wn.cbtitleunshift).attr("transform",Xs(-Math.round(x.l),-Math.round(x.t))),je=ze.ticklabelposition,ur=ze.title.font.size,er=e.select("."+wn.cbaxis),Lr,Pr=0,_r=0;function Ir(Wr,Re){var lr={propContainer:ze,propName:r._propPrefix+"title.text",traceIndex:r._traceIndex,_meta:r._meta,placeholder:_._dfltTitle.colorbar,containerGroup:e.select("."+wn.cbtitle)},st=Wr.charAt(0)==="h"?Wr.substr(1):"h"+Wr;e.selectAll("."+st+",."+st+"-math-group").remove(),ibe.draw(t,Wr,nV(lr,Re||{}))}function Yr(){if(a&&We||!a&&!We){var Wr,Re;k==="top"&&(Wr=d+x.l+le*y,Re=p+x.t+ce*(1-Ae-J)+3+ur*.75),k==="bottom"&&(Wr=d+x.l+le*y,Re=p+x.t+ce*(1-Ae)-3-ur*.25),k==="right"&&(Re=p+x.t+ce*m+3+ur*.75,Wr=d+x.l+le*Ae),Ir(ze._id+"title",{attributes:{x:Wr,y:Re,"text-anchor":a?"start":"middle"}})}}function Kr(){if(a&&!We||!a&&We){var Wr=ze.position||0,Re=ze._offset+ze._length/2,lr,st;if(k==="right")st=Re,lr=x.l+le*Wr+10+ur*(ze.showticklabels?1:.5);else if(lr=Re,k==="bottom"&&(st=x.t+ce*Wr+10+(je.indexOf("inside")===-1?ze.tickfont.size:0)+(ze.ticks!=="inside"&&r.ticklen||0)),k==="top"){var kt=M.text.split("
").length;st=x.t+ce*Wr+10-te-rV*ur*kt}Ir((a?"h":"v")+ze._id+"title",{avoid:{selection:sv.select(t).selectAll("g."+ze._id+"tick"),side:k,offsetTop:a?0:x.t,offsetLeft:a?x.l:0,maxShift:a?_.width:_.height},attributes:{x:lr,y:st,"text-anchor":"middle"},transform:{rotate:a?-90:0,offset:0}})}}function wr(){if(!a&&!We||a&&We){var Wr=e.select("."+wn.cbtitle),Re=Wr.select("text"),lr=[-s/2,s/2],st=Wr.select(".h"+ze._id+"title-math-group").node(),kt=15.6;Re.node()&&(kt=parseInt(Re.node().style.fontSize,10)*rV);var Ar;if(st?(Ar=js.bBox(st),_r=Ar.width,Pr=Ar.height,Pr>kt&&(lr[1]-=(Pr-kt)/2)):Re.node()&&!Re.classed(wn.jsPlaceholder)&&(Ar=js.bBox(Re.node()),_r=Ar.width,Pr=Ar.height),a){if(Pr){if(Pr+=5,k==="top")ze.domain[1]-=Pr/x.h,lr[1]*=-1;else{ze.domain[0]+=Pr/x.h;var tr=obe.lineCount(Re);lr[1]+=(1-tr)*kt}Wr.attr("transform",Xs(lr[0],lr[1])),ze.setScale()}}else _r&&(k==="right"&&(ze.domain[0]+=(_r+ur/2)/x.w),Wr.attr("transform",Xs(lr[0],lr[1])),ze.setScale())}e.selectAll("."+wn.cbfills+",."+wn.cblines).attr("transform",a?Xs(0,Math.round(x.h*(1-ze.domain[1]))):Xs(Math.round(x.w*ze.domain[0]),0)),er.attr("transform",a?Xs(0,Math.round(-x.t)):Xs(Math.round(-x.l),0));var cr=e.select("."+wn.cbfills).selectAll("rect."+wn.cbfill).attr("style","").data(X);cr.enter().append("rect").classed(wn.cbfill,!0).attr("style",""),cr.exit().remove();var Hr=F.map(ze.c2p).map(Math.round).sort(function(Xr,nt){return Xr-nt});cr.each(function(Xr,nt){var gr=[nt===0?F[0]:(X[nt]+X[nt-1])/2,nt===X.length-1?F[1]:(X[nt]+X[nt+1])/2].map(ze.c2p).map(Math.round);a&&(gr[1]=ts.constrain(gr[1]+(gr[1]>gr[0])?1:-1,Hr[0],Hr[1]));var Se=sv.select(this).attr(a?"x":"y",De).attr(a?"y":"x",sv.min(gr)).attr(a?"width":"height",Math.max(te,2)).attr(a?"height":"width",Math.max(sv.max(gr)-sv.min(gr),2));if(r._fillgradient)js.gradient(Se,t,r._id,a?"vertical":"horizontalreversed",r._fillgradient,"fill");else{var Ne=O(Xr).replace("e-","");Se.attr("fill",PT(Ne).toHexString())}});var ot=e.select("."+wn.cblines).selectAll("path."+wn.cbline).data(E.color&&E.width?oe:[]);ot.enter().append("path").classed(wn.cbline,!0),ot.exit().remove(),ot.each(function(Xr){var nt=De,gr=Math.round(ze.c2p(Xr))+E.width/2%1;sv.select(this).attr("d","M"+(a?nt+","+gr:gr+","+nt)+(a?"h":"v")+te).call(js.lineGroupStyle,E.width,I(Xr),E.dash)}),er.selectAll("g."+ze._id+"tick,path").remove();var jr=De+te+(s||0)/2-(r.ticks==="outside"?1:0),at=Ou.calcTicks(ze),xt=Ou.getTickSigns(ze)[2];return Ou.drawTicks(t,ze,{vals:ze.ticks==="inside"?Ou.clipEnds(ze,at):at,layer:er,path:Ou.makeTickPath(ze,jr,xt),transFn:Ou.makeTransTickFn(ze)}),Ou.drawLabels(t,ze,{vals:at,layer:er,transFn:Ou.makeTransTickLabelFn(ze),labelFns:Ou.makeLabelFns(ze,jr)})}function Vr(){var Wr,Re=te+s/2;je.indexOf("inside")===-1&&(Wr=js.bBox(er.node()),Re+=a?Wr.width:Wr.height),Lr=ae.select("text");var lr=0,st=a&&k==="top",kt=!a&&k==="right",Ar=0;if(Lr.node()&&!Lr.classed(wn.jsPlaceholder)){var tr,cr=ae.select(".h"+ze._id+"title-math-group").node();cr&&(a&&We||!a&&!We)?(Wr=js.bBox(cr),lr=Wr.width,tr=Wr.height):(Wr=js.bBox(ae.node()),lr=Wr.right-x.l-(a?De:rr),tr=Wr.bottom-x.t-(a?rr:De),!a&&k==="top"&&(Re+=Wr.height,Ar=Wr.height)),kt&&(Lr.attr("transform",Xs(lr/2+ur/2,0)),lr*=2),Re=Math.max(Re,a?lr:tr)}var Hr=(a?d:p)*2+Re+f+s/2,ot=0;!a&&M.text&&v==="bottom"&&m<=0&&(ot=Hr/2,Hr+=ot,Ar+=ot),_._hColorbarMoveTitle=ot,_._hColorbarMoveCBTitle=Ar;var jr=f+s,at=(a?De:rr)-jr/2-(a?d:0),xt=(a?rr:De)-(a?Z:p+Ar-ot);e.select("."+wn.cbbg).attr("x",at).attr("y",xt).attr(a?"width":"height",Math.max(Hr-ot,2)).attr(a?"height":"width",Math.max(Z+jr,2)).call(IT.fill,u).call(IT.stroke,r.bordercolor).style("stroke-width",f);var Xr=kt?Math.max(lr-10,0):0;e.selectAll("."+wn.cboutline).attr("x",(a?De:rr+d)+Xr).attr("y",(a?rr+p-Z:De)+(st?Pr:0)).attr(a?"width":"height",Math.max(te,2)).attr(a?"height":"width",Math.max(Z-(a?2*p+Pr:2*d+Xr),2)).call(IT.stroke,r.outlinecolor).style({fill:"none","stroke-width":s});var nt=a?Be*Hr:0,gr=a?0:(1-Ee)*Hr-Ar;if(nt=A?x.l-nt:-nt,gr=b?x.t-gr:-gr,e.attr("transform",Xs(nt,gr)),!a&&(f||PT(u).getAlpha()&&!PT.equals(_.paper_bgcolor,u))){var Se=er.selectAll("text"),Ne=Se[0].length,pr=e.select("."+wn.cbbg).node(),xr=js.bBox(pr),ht=js.getTranslate(e),Tt=2;Se.each(function(hi,hn){var Xn=0,Et=Ne-1;if(hn===Xn||hn===Et){var Pa=js.bBox(this),ia=js.getTranslate(this),Ia;if(hn===Et){var $a=Pa.right+ia.x,Qa=xr.right+ht.x+rr-f-Tt+y;Ia=Qa-$a,Ia>0&&(Ia=0)}else if(hn===Xn){var fa=Pa.left+ia.x,Tn=xr.left+ht.x+rr+f+Tt;Ia=Tn-fa,Ia<0&&(Ia=0)}Ia&&(Ne<3?this.setAttribute("transform","translate("+Ia+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var wt={},It=tV[c],ta=aV[c],Ma=tV[v],Ba=aV[v],an=Hr-te;a?(i==="pixels"?(wt.y=m,wt.t=Z*Ma,wt.b=Z*Ba):(wt.t=wt.b=0,wt.yt=m+n*Ma,wt.yb=m-n*Ba),l==="pixels"?(wt.x=y,wt.l=Hr*It,wt.r=Hr*ta):(wt.l=an*It,wt.r=an*ta,wt.xl=y-o*It,wt.xr=y+o*ta)):(i==="pixels"?(wt.x=y,wt.l=Z*It,wt.r=Z*ta):(wt.l=wt.r=0,wt.xl=y+n*It,wt.xr=y-n*ta),l==="pixels"?(wt.y=1-m,wt.t=Hr*Ma,wt.b=Hr*Ba):(wt.t=an*Ma,wt.b=an*Ba,wt.yt=m-o*Ma,wt.yb=m+o*Ba));var Va=r.y<.5?"b":"t",xn=r.x<.5?"l":"r";t._fullLayout._reservedMargin[r._id]={};var Rn={r:_.width-at-nt,l:at+wt.r,b:_.height-xt-gr,t:xt+wt.b};A&&b?sx.autoMargin(t,r._id,wt):A?t._fullLayout._reservedMargin[r._id][Va]=Rn[Va]:b||a?t._fullLayout._reservedMargin[r._id][xn]=Rn[xn]:t._fullLayout._reservedMargin[r._id][Va]=Rn[Va]}return ts.syncOrAsync([sx.previousPromises,Yr,wr,Kr,sx.previousPromises,Vr],t)}function dbe(e,r,t){var a=r.orientation==="v",n=t._fullLayout,i=n._size,o,l,s;lx.init({element:e.node(),gd:t,prepFn:function(){o=e.attr("transform"),NT(e)},moveFn:function(f,u){e.attr("transform",o+Xs(f,u)),l=lx.align((a?r._uFrac:r._vFrac)+f/i.w,a?r._thickFrac:r._lenFrac,0,1,r.xanchor),s=lx.align((a?r._vFrac:1-r._uFrac)-u/i.h,a?r._lenFrac:r._thickFrac,0,1,r.yanchor);var c=lx.getCursor(l,s,r.xanchor,r.yanchor);NT(e,c)},doneFn:function(){if(NT(e),l!==void 0&&s!==void 0){var f={};f[r._propPrefix+"x"]=l,f[r._propPrefix+"y"]=s,r._traceIndex!==void 0?eV.call("_guiRestyle",t,f,r._traceIndex):eV.call("_guiRelayout",t,f)}}})}function pbe(e,r,t){var a=r._levels,n=[],i=[],o,l,s=a.end+a.size/100,f=a.size,u=1.001*t[0]-.001*t[1],c=1.001*t[1]-.001*t[0];for(l=0;l<1e5&&(o=a.start+l*f,!(f>0?o>=s:o<=s));l++)o>u&&o0?o>=s:o<=s));l++)o>t[0]&&o{"use strict";lV.exports={moduleType:"component",name:"colorbar",attributes:T2(),supplyDefaults:R4(),draw:oV().draw,hasColorbar:A4()}});var uV=P((Vqe,fV)=>{"use strict";fV.exports={moduleType:"component",name:"legend",layoutAttributes:Dw(),supplyLayoutDefaults:Rw(),draw:jw(),style:Hw()}});var vV=P((Yqe,cV)=>{"use strict";cV.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var dV=P((Wqe,hV)=>{"use strict";hV.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var zT=P((jqe,gV)=>{"use strict";var ybe=Bt(),yV=Ur(),BT=yV.extendFlat,pV=yV.extendDeep;function mV(e){var r;switch(e){case"themes__thumb":r={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":r={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:r={}}return r}function gbe(e){var r=["xaxis","yaxis","zaxis"];return r.indexOf(e.slice(0,5))>-1}gV.exports=function(r,t){var a,n=r.data,i=r.layout,o=pV([],n),l=pV({},i,mV(t.tileClass)),s=r._context||{};if(t.width&&(l.width=t.width),t.height&&(l.height=t.height),t.tileClass==="thumbnail"||t.tileClass==="themes__thumb"){l.annotations=[];var f=Object.keys(l);for(a=0;a{"use strict";var bbe=c2().EventEmitter,xbe=Bt(),_be=Ur(),bV=W0(),wbe=zT(),Abe=pb(),Tbe=mb();function Mbe(e,r){var t=new bbe,a=wbe(e,{format:"png"}),n=a.gd;n.style.position="absolute",n.style.left="-5000px",document.body.appendChild(n);function i(){var l=bV.getDelay(n._fullLayout);setTimeout(function(){var s=Abe(n),f=document.createElement("canvas");f.id=_be.randstr(),t=Tbe({format:r.format,width:n._fullLayout.width,height:n._fullLayout.height,canvas:f,emitter:t,svg:s}),t.clean=function(){n&&document.body.removeChild(n)}},l)}var o=bV.getRedrawFunc(n);return xbe.call("_doPlot",n,a.data,a.layout,a.config).then(o).then(i).catch(function(l){t.emit("error",l)}),t}xV.exports=Mbe});var TV=P((Zqe,AV)=>{"use strict";var wV=W0(),Sbe={getDelay:wV.getDelay,getRedrawFunc:wV.getRedrawFunc,clone:zT(),toSVG:pb(),svgToImg:mb(),toImage:_V(),downloadImage:v6()};AV.exports=Sbe});var SV=P(Bu=>{"use strict";Bu.version=Eg().version;AM();vC();var Ebe=Bt(),xy=Bu.register=Ebe.register,UT=NO(),MV=Object.keys(UT);for(fx=0;fx{"use strict";EV.exports=SV()});var HT=P((Qqe,LV)=>{"use strict";var kbe=Bt(),El=Ur(),Cbe=G6();function Lbe(e,r,t,a){var n=e.cd,i=n[0].t,o=n[0].trace,l=e.xa,s=e.ya,f=i.x,u=i.y,c=l.c2p(r),v=s.c2p(t),d=e.distance,p;if(i.tree){var y=l.p2c(c-d),m=l.p2c(c+d),b=s.p2c(v-d),A=s.p2c(v+d);a==="x"?p=i.tree.range(Math.min(y,m),Math.min(s._rl[0],s._rl[1]),Math.max(y,m),Math.max(s._rl[0],s._rl[1])):p=i.tree.range(Math.min(y,m),Math.min(b,A),Math.max(y,m),Math.max(b,A))}else p=i.ids;var _,x,T,E,M,k,F,I,O,q=d;if(a==="x"){var H=!!o.xperiodalignment,X=!!o.yperiodalignment;for(M=0;M=Math.min(oe,te)&&c<=Math.max(oe,te)?0:1/0}if(k=Math.min(Q,Z)&&v<=Math.max(Q,Z)?0:1/0}O=Math.sqrt(k*k+F*F),x=p[M]}}}else for(M=p.length-1;M>-1;M--)_=p[M],T=f[_],E=u[_],k=l.c2p(T)-c,F=s.c2p(E)-v,I=Math.sqrt(k*k+F*F),I{"use strict";var DV=20;FV.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:DV,SYMBOL_STROKE:DV/20,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}});var cx=P((eRe,NV)=>{"use strict";var Dbe=Cs(),Fbe=Gi(),qbe=UA(),An=Qc(),qV=im().axisHoverFormat,RV=k0(),Rbe=r2(),VT=zn().extendFlat,Pbe=Ls().overrideAll,Nbe=vp().DASHES,PV=An.line,zu=An.marker,Ibe=zu.line,fv=NV.exports=Pbe({x:An.x,x0:An.x0,dx:An.dx,y:An.y,y0:An.y0,dy:An.dy,xperiod:An.xperiod,yperiod:An.yperiod,xperiod0:An.xperiod0,yperiod0:An.yperiod0,xperiodalignment:An.xperiodalignment,yperiodalignment:An.yperiodalignment,xhoverformat:qV("x"),yhoverformat:qV("y"),text:An.text,hovertext:An.hovertext,textposition:An.textposition,textfont:Fbe({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,noNumericWeightValues:!0,variantValues:["normal","small-caps"]}),mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"]},line:{color:PV.color,width:PV.width,shape:{valType:"enumerated",values:["linear","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},dash:{valType:"enumerated",values:Rbe(Nbe),dflt:"solid"}},marker:VT({},RV("marker"),{symbol:zu.symbol,angle:zu.angle,size:zu.size,sizeref:zu.sizeref,sizemin:zu.sizemin,sizemode:zu.sizemode,opacity:zu.opacity,colorbar:zu.colorbar,line:VT({},RV("marker.line"),{width:Ibe.width})}),connectgaps:An.connectgaps,fill:VT({},An.fill,{dflt:"none"}),fillcolor:qbe(),selected:{marker:An.selected.marker,textfont:An.selected.textfont},unselected:{marker:An.unselected.marker,textfont:An.unselected.textfont},opacity:Dbe.opacity},"calc","nested");fv.x.editType=fv.y.editType=fv.x0.editType=fv.y0.editType="calc+clearAxisTypes";fv.hovertemplate=An.hovertemplate;fv.hovertemplatefallback=An.hovertemplatefallback;fv.texttemplate=An.texttemplate;fv.texttemplatefallback=An.texttemplatefallback});var vx=P(YT=>{"use strict";var IV=vp();YT.isOpenSymbol=function(e){return typeof e=="string"?IV.OPEN_RE.test(e):e%200>100};YT.isDotSymbol=function(e){return typeof e=="string"?IV.DOT_RE.test(e):e>200}});var zV=P((tRe,BV)=>{"use strict";var OV=Ur(),Obe=Bt(),Bbe=vx(),zbe=cx(),Gbe=Um(),hx=Ri(),Ube=p6(),Hbe=m6(),Vbe=_b(),Ybe=y6(),Wbe=b6(),jbe=g6();BV.exports=function(r,t,a,n){function i(d,p){return OV.coerce(r,t,zbe,d,p)}var o=r.marker?Bbe.isOpenSymbol(r.marker.symbol):!1,l=hx.isBubble(r),s=Ube(r,t,n,i);if(!s){t.visible=!1;return}Hbe(r,t,n,i),i("xhoverformat"),i("yhoverformat");var f=s{"use strict";var Xbe=N6();GV.exports=function(r,t,a){var n=r.i;return"x"in r||(r.x=t._x[n]),"y"in r||(r.y=t._y[n]),Xbe(r,t,a)}});var VV=P((nRe,HV)=>{"use strict";function Zbe(e,r,t,a,n){for(var i=n+1;a<=n;){var o=a+n>>>1,l=e[o],s=t!==void 0?t(l,r):l-r;s>=0?(i=o,n=o-1):a=o+1}return i}function Jbe(e,r,t,a,n){for(var i=n+1;a<=n;){var o=a+n>>>1,l=e[o],s=t!==void 0?t(l,r):l-r;s>0?(i=o,n=o-1):a=o+1}return i}function $be(e,r,t,a,n){for(var i=a-1;a<=n;){var o=a+n>>>1,l=e[o],s=t!==void 0?t(l,r):l-r;s<0?(i=o,a=o+1):n=o-1}return i}function Qbe(e,r,t,a,n){for(var i=a-1;a<=n;){var o=a+n>>>1,l=e[o],s=t!==void 0?t(l,r):l-r;s<=0?(i=o,a=o+1):n=o-1}return i}function Kbe(e,r,t,a,n){for(;a<=n;){var i=a+n>>>1,o=e[i],l=t!==void 0?t(o,r):o-r;if(l===0)return i;l<=0?a=i+1:n=i-1}return-1}function _y(e,r,t,a,n,i){return typeof t=="function"?i(e,r,t,a===void 0?0:a|0,n===void 0?e.length-1:n|0):i(e,r,void 0,t===void 0?0:t|0,a===void 0?e.length-1:a|0)}HV.exports={ge:function(e,r,t,a,n){return _y(e,r,t,a,n,Zbe)},gt:function(e,r,t,a,n){return _y(e,r,t,a,n,Jbe)},lt:function(e,r,t,a,n){return _y(e,r,t,a,n,$be)},le:function(e,r,t,a,n){return _y(e,r,t,a,n,Qbe)},eq:function(e,r,t,a,n){return _y(e,r,t,a,n,Kbe)}}});var wy=P((iRe,YV)=>{YV.exports=exe;function exe(e,r,t){return rt?t:e:er?r:e}});var If=P((oRe,jV)=>{"use strict";jV.exports=function(r,t,a){var n={},i,o;if(typeof t=="string"&&(t=WV(t)),Array.isArray(t)){var l={};for(o=0;o{"use strict";var rxe=If();XV.exports=txe;function txe(e){var r;return arguments.length>1&&(e=arguments),typeof e=="string"?e=e.split(/\s/).map(parseFloat):typeof e=="number"&&(e=[e]),e.length&&typeof e[0]=="number"?e.length===1?r={width:e[0],height:e[0],x:0,y:0}:e.length===2?r={width:e[0],height:e[1],x:0,y:0}:r={x:e[0],y:e[1],width:e[2]-e[0]||0,height:e[3]-e[1]||0}:e&&(e=rxe(e,{left:"x l left Left",top:"y t top Top",width:"w width W Width",height:"h height W Width",bottom:"b bottom Bottom",right:"r right Right"}),r={x:e.left||0,y:e.top||0},e.width==null?e.right?r.width=e.right-r.x:r.width=0:r.width=e.width,e.height==null?e.bottom?r.height=e.bottom-r.y:r.height=0:r.height=e.height),r}});var ah=P((sRe,ZV)=>{"use strict";ZV.exports=axe;function axe(e,r){if(!e||e.length==null)throw Error("Argument should be an array");r==null?r=1:r=Math.floor(r);for(var t=Array(r*2),a=0;an&&(n=e[o]),e[o]{JV.exports=function(){for(var e=0;e{QV.exports=function(e){switch(e){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}});var nh=P((cRe,eY)=>{var KV=dx();eY.exports=nxe;function nxe(e,r,t){if(!e)throw new TypeError("must specify data as first parameter");if(t=+(t||0)|0,Array.isArray(e)&&e[0]&&typeof e[0][0]=="number"){var a=e[0].length,n=e.length*a,i,o,l,s;(!r||typeof r=="string")&&(r=new(KV(r||"float32"))(n+t));var f=r.length-t;if(n!==f)throw new Error("source length "+n+" ("+a+"x"+e.length+") does not match destination length "+f);for(i=0,l=t;i{"use strict";rY.exports=function(e){var r=typeof e;return e!==null&&(r==="object"||r==="function")}});var nY=P((hRe,aY)=>{"use strict";aY.exports=Math.log2||function(e){return Math.log(e)*Math.LOG2E}});var cY=P((dRe,uY)=>{"use strict";var iY=VV(),oY=wy(),ixe=hp(),oxe=ah(),lY=If(),jT=$V(),lxe=nh(),sxe=tY(),fxe=dx(),sY=nY(),uxe=1073741824;uY.exports=function(r,t){t||(t={}),r=lxe(r,"float64"),t=lY(t,{bounds:"range bounds dataBox databox",maxDepth:"depth maxDepth maxdepth level maxLevel maxlevel levels",dtype:"type dtype format out dst output destination"});let a=jT(t.maxDepth,255),n=jT(t.bounds,oxe(r,2));n[0]===n[2]&&n[2]++,n[1]===n[3]&&n[3]++;let i=fY(r,n),o=r.length>>>1,l;t.dtype||(t.dtype="array"),typeof t.dtype=="string"?l=new(fxe(t.dtype))(o):t.dtype&&(l=t.dtype,Array.isArray(l)&&(l.length=o));for(let b=0;ba||E>uxe){for(let Z=0;ZDe||F>Be||I=q||le===ce)return;let Ee=s[J];ce===void 0&&(ce=Ee.length);for(let de=le;de=x&&je<=E&&ur>=T&&ur<=M&&H.push(ae)}let Xe=f[J],Ae=Xe[le*4+0],rr=Xe[le*4+1],ze=Xe[le*4+2],We=Xe[le*4+3],$e=oe(Xe,le+1),Ue=Z*.5,ee=J+1;X(te,Q,Ue,ee,Ae,rr||ze||We||$e),X(te,Q+Ue,Ue,ee,rr,ze||We||$e),X(te+Ue,Q,Ue,ee,ze,We||$e),X(te+Ue,Q+Ue,Ue,ee,We,$e)}function oe(te,Q){let Z=null,J=0;for(;Z===null;)if(Z=te[Q*4+J],J++,J>te.length)return null;return Z}return H}function y(b,A,_,x,T){let E=[];for(let M=0;M{"use strict";vY.exports=cY()});var ZT=P((mRe,hY)=>{hY.exports=cxe;function cxe(e){var r=0,t=0,a=0,n=0;return e.map(function(i){i=i.slice();var o=i[0],l=o.toUpperCase();if(o!=l)switch(i[0]=l,o){case"a":i[6]+=a,i[7]+=n;break;case"v":i[1]+=n;break;case"h":i[1]+=a;break;default:for(var s=1;s{"use strict";Object.defineProperty(px,"__esModule",{value:!0});var vxe=function(){function e(r,t){var a=[],n=!0,i=!1,o=void 0;try{for(var l=r[Symbol.iterator](),s;!(n=(s=l.next()).done)&&(a.push(s.value),!(t&&a.length===t));n=!0);}catch(f){i=!0,o=f}finally{try{!n&&l.return&&l.return()}finally{if(i)throw o}}return a}return function(r,t){if(Array.isArray(r))return r;if(Symbol.iterator in Object(r))return e(r,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),Ay=Math.PI*2,JT=function(r,t,a,n,i,o,l){var s=r.x,f=r.y;s*=t,f*=a;var u=n*s-i*f,c=i*s+n*f;return{x:u+o,y:c+l}},hxe=function(r,t){var a=t===1.5707963267948966?.551915024494:t===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(t/4),n=Math.cos(r),i=Math.sin(r),o=Math.cos(r+t),l=Math.sin(r+t);return[{x:n-i*a,y:i+n*a},{x:o+l*a,y:l-o*a},{x:o,y:l}]},dY=function(r,t,a,n){var i=r*n-t*a<0?-1:1,o=r*a+t*n;return o>1&&(o=1),o<-1&&(o=-1),i*Math.acos(o)},dxe=function(r,t,a,n,i,o,l,s,f,u,c,v){var d=Math.pow(i,2),p=Math.pow(o,2),y=Math.pow(c,2),m=Math.pow(v,2),b=d*p-d*m-p*y;b<0&&(b=0),b/=d*m+p*y,b=Math.sqrt(b)*(l===s?-1:1);var A=b*i/o*v,_=b*-o/i*c,x=u*A-f*_+(r+a)/2,T=f*A+u*_+(t+n)/2,E=(c-A)/i,M=(v-_)/o,k=(-c-A)/i,F=(-v-_)/o,I=dY(1,0,E,M),O=dY(E,M,k,F);return s===0&&O>0&&(O-=Ay),s===1&&O<0&&(O+=Ay),[x,T,I,O]},pxe=function(r){var t=r.px,a=r.py,n=r.cx,i=r.cy,o=r.rx,l=r.ry,s=r.xAxisRotation,f=s===void 0?0:s,u=r.largeArcFlag,c=u===void 0?0:u,v=r.sweepFlag,d=v===void 0?0:v,p=[];if(o===0||l===0)return[];var y=Math.sin(f*Ay/360),m=Math.cos(f*Ay/360),b=m*(t-n)/2+y*(a-i)/2,A=-y*(t-n)/2+m*(a-i)/2;if(b===0&&A===0)return[];o=Math.abs(o),l=Math.abs(l);var _=Math.pow(b,2)/Math.pow(o,2)+Math.pow(A,2)/Math.pow(l,2);_>1&&(o*=Math.sqrt(_),l*=Math.sqrt(_));var x=dxe(t,a,n,i,o,l,c,d,y,m,b,A),T=vxe(x,4),E=T[0],M=T[1],k=T[2],F=T[3],I=Math.abs(F)/(Ay/4);Math.abs(1-I)<1e-7&&(I=1);var O=Math.max(Math.ceil(I),1);F/=O;for(var q=0;q{"use strict";gY.exports=yxe;var mxe=mY();function yxe(e){for(var r,t=[],a=0,n=0,i=0,o=0,l=null,s=null,f=0,u=0,c=0,v=e.length;c4?(a=d[d.length-4],n=d[d.length-3]):(a=f,n=u),t.push(d)}return t}function mx(e,r,t,a){return["C",e,r,t,a,t,a]}function yY(e,r,t,a,n,i){return["C",e/3+2/3*t,r/3+2/3*a,n/3+2/3*t,i/3+2/3*a,n,i]}});var $T=P((gRe,xY)=>{"use strict";xY.exports=function(r){return typeof r!="string"?!1:(r=r.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(r)&&/[\dz]$/i.test(r)&&r.length>4))}});var yx=P((bRe,_Y)=>{"use strict";_Y.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var r={},t=Symbol("test"),a=Object(t);if(typeof t=="string"||Object.prototype.toString.call(t)!=="[object Symbol]"||Object.prototype.toString.call(a)!=="[object Symbol]")return!1;var n=42;r[t]=n;for(var i in r)return!1;if(typeof Object.keys=="function"&&Object.keys(r).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(r).length!==0)return!1;var o=Object.getOwnPropertySymbols(r);if(o.length!==1||o[0]!==t||!Object.prototype.propertyIsEnumerable.call(r,t))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var l=Object.getOwnPropertyDescriptor(r,t);if(l.value!==n||l.enumerable!==!0)return!1}return!0}});var Ty=P((xRe,wY)=>{"use strict";var gxe=yx();wY.exports=function(){return gxe()&&!!Symbol.toStringTag}});var QT=P((_Re,AY)=>{"use strict";AY.exports=Object});var MY=P((wRe,TY)=>{"use strict";TY.exports=Error});var EY=P((ARe,SY)=>{"use strict";SY.exports=EvalError});var CY=P((TRe,kY)=>{"use strict";kY.exports=RangeError});var DY=P((MRe,LY)=>{"use strict";LY.exports=ReferenceError});var KT=P((SRe,FY)=>{"use strict";FY.exports=SyntaxError});var dp=P((ERe,qY)=>{"use strict";qY.exports=TypeError});var PY=P((kRe,RY)=>{"use strict";RY.exports=URIError});var IY=P((CRe,NY)=>{"use strict";NY.exports=Math.abs});var BY=P((LRe,OY)=>{"use strict";OY.exports=Math.floor});var GY=P((DRe,zY)=>{"use strict";zY.exports=Math.max});var HY=P((FRe,UY)=>{"use strict";UY.exports=Math.min});var YY=P((qRe,VY)=>{"use strict";VY.exports=Math.pow});var jY=P((RRe,WY)=>{"use strict";WY.exports=Math.round});var ZY=P((PRe,XY)=>{"use strict";XY.exports=Number.isNaN||function(r){return r!==r}});var $Y=P((NRe,JY)=>{"use strict";var bxe=ZY();JY.exports=function(r){return bxe(r)||r===0?r:r<0?-1:1}});var KY=P((IRe,QY)=>{"use strict";QY.exports=Object.getOwnPropertyDescriptor});var ih=P((ORe,eW)=>{"use strict";var gx=KY();if(gx)try{gx([],"length")}catch(e){gx=null}eW.exports=gx});var My=P((BRe,rW)=>{"use strict";var bx=Object.defineProperty||!1;if(bx)try{bx({},"a",{value:1})}catch(e){bx=!1}rW.exports=bx});var nW=P((zRe,aW)=>{"use strict";var tW=typeof Symbol!="undefined"&&Symbol,xxe=yx();aW.exports=function(){return typeof tW!="function"||typeof Symbol!="function"||typeof tW("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:xxe()}});var e8=P((GRe,iW)=>{"use strict";iW.exports=typeof Reflect!="undefined"&&Reflect.getPrototypeOf||null});var r8=P((URe,oW)=>{"use strict";var _xe=QT();oW.exports=_xe.getPrototypeOf||null});var fW=P((HRe,sW)=>{"use strict";var wxe="Function.prototype.bind called on incompatible ",Axe=Object.prototype.toString,Txe=Math.max,Mxe="[object Function]",lW=function(r,t){for(var a=[],n=0;n{"use strict";var kxe=fW();uW.exports=Function.prototype.bind||kxe});var xx=P((YRe,cW)=>{"use strict";cW.exports=Function.prototype.call});var t8=P((WRe,vW)=>{"use strict";vW.exports=Function.prototype.apply});var dW=P((jRe,hW)=>{"use strict";hW.exports=typeof Reflect!="undefined"&&Reflect&&Reflect.apply});var mW=P((XRe,pW)=>{"use strict";var Cxe=pp(),Lxe=t8(),Dxe=xx(),Fxe=dW();pW.exports=Fxe||Cxe.call(Dxe,Lxe)});var gW=P((ZRe,yW)=>{"use strict";var qxe=pp(),Rxe=dp(),Pxe=xx(),Nxe=mW();yW.exports=function(r){if(r.length<1||typeof r[0]!="function")throw new Rxe("a function is required");return Nxe(qxe,Pxe,r)}});var TW=P((JRe,AW)=>{"use strict";var Ixe=gW(),bW=ih(),_W;try{_W=[].__proto__===Array.prototype}catch(e){if(!e||typeof e!="object"||!("code"in e)||e.code!=="ERR_PROTO_ACCESS")throw e}var a8=!!_W&&bW&&bW(Object.prototype,"__proto__"),wW=Object,xW=wW.getPrototypeOf;AW.exports=a8&&typeof a8.get=="function"?Ixe([a8.get]):typeof xW=="function"?function(r){return xW(r==null?r:wW(r))}:!1});var CW=P(($Re,kW)=>{"use strict";var MW=e8(),SW=r8(),EW=TW();kW.exports=MW?function(r){return MW(r)}:SW?function(r){if(!r||typeof r!="object"&&typeof r!="function")throw new TypeError("getProto: not an object");return SW(r)}:EW?function(r){return EW(r)}:null});var DW=P((QRe,LW)=>{"use strict";var Oxe=Function.prototype.call,Bxe=Object.prototype.hasOwnProperty,zxe=pp();LW.exports=zxe.call(Oxe,Bxe)});var Ax=P((KRe,IW)=>{"use strict";var Fa,Gxe=QT(),Uxe=MY(),Hxe=EY(),Vxe=CY(),Yxe=DY(),bp=KT(),gp=dp(),Wxe=PY(),jxe=IY(),Xxe=BY(),Zxe=GY(),Jxe=HY(),$xe=YY(),Qxe=jY(),Kxe=$Y(),PW=Function,n8=function(e){try{return PW('"use strict"; return ('+e+").constructor;")()}catch(r){}},Sy=ih(),e_e=My(),i8=function(){throw new gp},r_e=Sy?function(){try{return arguments.callee,i8}catch(e){try{return Sy(arguments,"callee").get}catch(r){return i8}}}():i8,mp=nW()(),Vi=CW(),t_e=r8(),a_e=e8(),NW=t8(),Ey=xx(),yp={},n_e=typeof Uint8Array=="undefined"||!Vi?Fa:Vi(Uint8Array),oh={__proto__:null,"%AggregateError%":typeof AggregateError=="undefined"?Fa:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer=="undefined"?Fa:ArrayBuffer,"%ArrayIteratorPrototype%":mp&&Vi?Vi([][Symbol.iterator]()):Fa,"%AsyncFromSyncIteratorPrototype%":Fa,"%AsyncFunction%":yp,"%AsyncGenerator%":yp,"%AsyncGeneratorFunction%":yp,"%AsyncIteratorPrototype%":yp,"%Atomics%":typeof Atomics=="undefined"?Fa:Atomics,"%BigInt%":typeof BigInt=="undefined"?Fa:BigInt,"%BigInt64Array%":typeof BigInt64Array=="undefined"?Fa:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array=="undefined"?Fa:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView=="undefined"?Fa:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Uxe,"%eval%":eval,"%EvalError%":Hxe,"%Float16Array%":typeof Float16Array=="undefined"?Fa:Float16Array,"%Float32Array%":typeof Float32Array=="undefined"?Fa:Float32Array,"%Float64Array%":typeof Float64Array=="undefined"?Fa:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry=="undefined"?Fa:FinalizationRegistry,"%Function%":PW,"%GeneratorFunction%":yp,"%Int8Array%":typeof Int8Array=="undefined"?Fa:Int8Array,"%Int16Array%":typeof Int16Array=="undefined"?Fa:Int16Array,"%Int32Array%":typeof Int32Array=="undefined"?Fa:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":mp&&Vi?Vi(Vi([][Symbol.iterator]())):Fa,"%JSON%":typeof JSON=="object"?JSON:Fa,"%Map%":typeof Map=="undefined"?Fa:Map,"%MapIteratorPrototype%":typeof Map=="undefined"||!mp||!Vi?Fa:Vi(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Gxe,"%Object.getOwnPropertyDescriptor%":Sy,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise=="undefined"?Fa:Promise,"%Proxy%":typeof Proxy=="undefined"?Fa:Proxy,"%RangeError%":Vxe,"%ReferenceError%":Yxe,"%Reflect%":typeof Reflect=="undefined"?Fa:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set=="undefined"?Fa:Set,"%SetIteratorPrototype%":typeof Set=="undefined"||!mp||!Vi?Fa:Vi(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer=="undefined"?Fa:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":mp&&Vi?Vi(""[Symbol.iterator]()):Fa,"%Symbol%":mp?Symbol:Fa,"%SyntaxError%":bp,"%ThrowTypeError%":r_e,"%TypedArray%":n_e,"%TypeError%":gp,"%Uint8Array%":typeof Uint8Array=="undefined"?Fa:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray=="undefined"?Fa:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array=="undefined"?Fa:Uint16Array,"%Uint32Array%":typeof Uint32Array=="undefined"?Fa:Uint32Array,"%URIError%":Wxe,"%WeakMap%":typeof WeakMap=="undefined"?Fa:WeakMap,"%WeakRef%":typeof WeakRef=="undefined"?Fa:WeakRef,"%WeakSet%":typeof WeakSet=="undefined"?Fa:WeakSet,"%Function.prototype.call%":Ey,"%Function.prototype.apply%":NW,"%Object.defineProperty%":e_e,"%Object.getPrototypeOf%":t_e,"%Math.abs%":jxe,"%Math.floor%":Xxe,"%Math.max%":Zxe,"%Math.min%":Jxe,"%Math.pow%":$xe,"%Math.round%":Qxe,"%Math.sign%":Kxe,"%Reflect.getPrototypeOf%":a_e};if(Vi)try{null.error}catch(e){FW=Vi(Vi(e)),oh["%Error.prototype%"]=FW}var FW,i_e=function e(r){var t;if(r==="%AsyncFunction%")t=n8("async function () {}");else if(r==="%GeneratorFunction%")t=n8("function* () {}");else if(r==="%AsyncGeneratorFunction%")t=n8("async function* () {}");else if(r==="%AsyncGenerator%"){var a=e("%AsyncGeneratorFunction%");a&&(t=a.prototype)}else if(r==="%AsyncIteratorPrototype%"){var n=e("%AsyncGenerator%");n&&Vi&&(t=Vi(n.prototype))}return oh[r]=t,t},qW={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},ky=pp(),_x=DW(),o_e=ky.call(Ey,Array.prototype.concat),l_e=ky.call(NW,Array.prototype.splice),RW=ky.call(Ey,String.prototype.replace),wx=ky.call(Ey,String.prototype.slice),s_e=ky.call(Ey,RegExp.prototype.exec),f_e=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,u_e=/\\(\\)?/g,c_e=function(r){var t=wx(r,0,1),a=wx(r,-1);if(t==="%"&&a!=="%")throw new bp("invalid intrinsic syntax, expected closing `%`");if(a==="%"&&t!=="%")throw new bp("invalid intrinsic syntax, expected opening `%`");var n=[];return RW(r,f_e,function(i,o,l,s){n[n.length]=l?RW(s,u_e,"$1"):o||i}),n},v_e=function(r,t){var a=r,n;if(_x(qW,a)&&(n=qW[a],a="%"+n[0]+"%"),_x(oh,a)){var i=oh[a];if(i===yp&&(i=i_e(a)),typeof i=="undefined"&&!t)throw new gp("intrinsic "+r+" exists, but is not available. Please file an issue!");return{alias:n,name:a,value:i}}throw new bp("intrinsic "+r+" does not exist!")};IW.exports=function(r,t){if(typeof r!="string"||r.length===0)throw new gp("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof t!="boolean")throw new gp('"allowMissing" argument must be a boolean');if(s_e(/^%?[^%]*%?$/,r)===null)throw new bp("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var a=c_e(r),n=a.length>0?a[0]:"",i=v_e("%"+n+"%",t),o=i.name,l=i.value,s=!1,f=i.alias;f&&(n=f[0],l_e(a,o_e([0,1],f)));for(var u=1,c=!0;u=a.length){var y=Sy(l,v);c=!!y,c&&"get"in y&&!("originalValue"in y.get)?l=y.get:l=l[v]}else c=_x(l,v),l=l[v];c&&!s&&(oh[o]=l)}}return l}});var GW=P((ePe,zW)=>{"use strict";var OW=My(),h_e=KT(),xp=dp(),BW=ih();zW.exports=function(r,t,a){if(!r||typeof r!="object"&&typeof r!="function")throw new xp("`obj` must be an object or a function`");if(typeof t!="string"&&typeof t!="symbol")throw new xp("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new xp("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new xp("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new xp("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new xp("`loose`, if provided, must be a boolean");var n=arguments.length>3?arguments[3]:null,i=arguments.length>4?arguments[4]:null,o=arguments.length>5?arguments[5]:null,l=arguments.length>6?arguments[6]:!1,s=!!BW&&BW(r,t);if(OW)OW(r,t,{configurable:o===null&&s?s.configurable:!o,enumerable:n===null&&s?s.enumerable:!n,value:a,writable:i===null&&s?s.writable:!i});else if(l||!n&&!i&&!o)r[t]=a;else throw new h_e("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var l8=P((rPe,HW)=>{"use strict";var o8=My(),UW=function(){return!!o8};UW.hasArrayLengthDefineBug=function(){if(!o8)return null;try{return o8([],"length",{value:1}).length!==1}catch(r){return!0}};HW.exports=UW});var XW=P((tPe,jW)=>{"use strict";var d_e=Ax(),VW=GW(),p_e=l8()(),YW=ih(),WW=dp(),m_e=d_e("%Math.floor%");jW.exports=function(r,t){if(typeof r!="function")throw new WW("`fn` is not a function");if(typeof t!="number"||t<0||t>4294967295||m_e(t)!==t)throw new WW("`length` must be a positive 32-bit integer");var a=arguments.length>2&&!!arguments[2],n=!0,i=!0;if("length"in r&&YW){var o=YW(r,"length");o&&!o.configurable&&(n=!1),o&&!o.writable&&(i=!1)}return(n||i||!a)&&(p_e?VW(r,"length",t,!0,!0):VW(r,"length",t)),r}});var Cy=P((aPe,Tx)=>{"use strict";var s8=pp(),Mx=Ax(),y_e=XW(),g_e=dp(),$W=Mx("%Function.prototype.apply%"),QW=Mx("%Function.prototype.call%"),KW=Mx("%Reflect.apply%",!0)||s8.call(QW,$W),ZW=My(),b_e=Mx("%Math.max%");Tx.exports=function(r){if(typeof r!="function")throw new g_e("a function is required");var t=KW(s8,QW,arguments);return y_e(t,1+b_e(0,r.length-(arguments.length-1)),!0)};var JW=function(){return KW(s8,$W,arguments)};ZW?ZW(Tx.exports,"apply",{value:JW}):Tx.exports.apply=JW});var _p=P((nPe,tj)=>{"use strict";var ej=Ax(),rj=Cy(),x_e=rj(ej("String.prototype.indexOf"));tj.exports=function(r,t){var a=ej(r,!!t);return typeof a=="function"&&x_e(r,".prototype.")>-1?rj(a):a}});var ij=P((iPe,nj)=>{"use strict";var __e=Ty()(),w_e=_p(),f8=w_e("Object.prototype.toString"),Sx=function(r){return __e&&r&&typeof r=="object"&&Symbol.toStringTag in r?!1:f8(r)==="[object Arguments]"},aj=function(r){return Sx(r)?!0:r!==null&&typeof r=="object"&&typeof r.length=="number"&&r.length>=0&&f8(r)!=="[object Array]"&&f8(r.callee)==="[object Function]"},A_e=function(){return Sx(arguments)}();Sx.isLegacyArguments=aj;nj.exports=A_e?Sx:aj});var sj=P((oPe,lj)=>{"use strict";var T_e=Object.prototype.toString,M_e=Function.prototype.toString,S_e=/^\s*(?:function)?\*/,oj=Ty()(),u8=Object.getPrototypeOf,E_e=function(){if(!oj)return!1;try{return Function("return function*() {}")()}catch(e){}},c8;lj.exports=function(r){if(typeof r!="function")return!1;if(S_e.test(M_e.call(r)))return!0;if(!oj){var t=T_e.call(r);return t==="[object GeneratorFunction]"}if(!u8)return!1;if(typeof c8=="undefined"){var a=E_e();c8=a?u8(a):!1}return u8(r)===c8}});var vj=P((lPe,cj)=>{"use strict";var uj=Function.prototype.toString,wp=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,h8,Ex;if(typeof wp=="function"&&typeof Object.defineProperty=="function")try{h8=Object.defineProperty({},"length",{get:function(){throw Ex}}),Ex={},wp(function(){throw 42},null,h8)}catch(e){e!==Ex&&(wp=null)}else wp=null;var k_e=/^\s*class\b/,d8=function(r){try{var t=uj.call(r);return k_e.test(t)}catch(a){return!1}},v8=function(r){try{return d8(r)?!1:(uj.call(r),!0)}catch(t){return!1}},kx=Object.prototype.toString,C_e="[object Object]",L_e="[object Function]",D_e="[object GeneratorFunction]",F_e="[object HTMLAllCollection]",q_e="[object HTML document.all class]",R_e="[object HTMLCollection]",P_e=typeof Symbol=="function"&&!!Symbol.toStringTag,N_e=!(0 in[,]),p8=function(){return!1};typeof document=="object"&&(fj=document.all,kx.call(fj)===kx.call(document.all)&&(p8=function(r){if((N_e||!r)&&(typeof r=="undefined"||typeof r=="object"))try{var t=kx.call(r);return(t===F_e||t===q_e||t===R_e||t===C_e)&&r("")==null}catch(a){}return!1}));var fj;cj.exports=wp?function(r){if(p8(r))return!0;if(!r||typeof r!="function"&&typeof r!="object")return!1;try{wp(r,null,h8)}catch(t){if(t!==Ex)return!1}return!d8(r)&&v8(r)}:function(r){if(p8(r))return!0;if(!r||typeof r!="function"&&typeof r!="object")return!1;if(P_e)return v8(r);if(d8(r))return!1;var t=kx.call(r);return t!==L_e&&t!==D_e&&!/^\[object HTML/.test(t)?!1:v8(r)}});var m8=P((sPe,dj)=>{"use strict";var I_e=vj(),O_e=Object.prototype.toString,hj=Object.prototype.hasOwnProperty,B_e=function(r,t,a){for(var n=0,i=r.length;n=3&&(n=a),O_e.call(r)==="[object Array]"?B_e(r,t,n):typeof r=="string"?z_e(r,t,n):G_e(r,t,n)};dj.exports=U_e});var g8=P((fPe,pj)=>{"use strict";var y8=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],H_e=typeof globalThis=="undefined"?window:globalThis;pj.exports=function(){for(var r=[],t=0;t{"use strict";var Lx=m8(),V_e=g8(),mj=Cy(),_8=_p(),Cx=ih(),Y_e=_8("Object.prototype.toString"),gj=Ty()(),yj=typeof globalThis=="undefined"?window:globalThis,x8=V_e(),w8=_8("String.prototype.slice"),b8=Object.getPrototypeOf,W_e=_8("Array.prototype.indexOf",!0)||function(r,t){for(var a=0;a-1?t:t!=="Object"?!1:X_e(r)}return Cx?j_e(r):null}});var Sj=P((cPe,Mj)=>{"use strict";var _j=m8(),Z_e=g8(),T8=_p(),J_e=T8("Object.prototype.toString"),wj=Ty()(),Fx=ih(),$_e=typeof globalThis=="undefined"?window:globalThis,Aj=Z_e(),Q_e=T8("Array.prototype.indexOf",!0)||function(r,t){for(var a=0;a-1}return Fx?e5e(r):!1}});var zj=P(qa=>{"use strict";var r5e=ij(),t5e=sj(),Zs=xj(),Ej=Sj();function Ap(e){return e.call.bind(e)}var kj=typeof BigInt!="undefined",Cj=typeof Symbol!="undefined",as=Ap(Object.prototype.toString),a5e=Ap(Number.prototype.valueOf),n5e=Ap(String.prototype.valueOf),i5e=Ap(Boolean.prototype.valueOf);kj&&(Lj=Ap(BigInt.prototype.valueOf));var Lj;Cj&&(Dj=Ap(Symbol.prototype.valueOf));var Dj;function Dy(e,r){if(typeof e!="object")return!1;try{return r(e),!0}catch(t){return!1}}qa.isArgumentsObject=r5e;qa.isGeneratorFunction=t5e;qa.isTypedArray=Ej;function o5e(e){return typeof Promise!="undefined"&&e instanceof Promise||e!==null&&typeof e=="object"&&typeof e.then=="function"&&typeof e.catch=="function"}qa.isPromise=o5e;function l5e(e){return typeof ArrayBuffer!="undefined"&&ArrayBuffer.isView?ArrayBuffer.isView(e):Ej(e)||qj(e)}qa.isArrayBufferView=l5e;function s5e(e){return Zs(e)==="Uint8Array"}qa.isUint8Array=s5e;function f5e(e){return Zs(e)==="Uint8ClampedArray"}qa.isUint8ClampedArray=f5e;function u5e(e){return Zs(e)==="Uint16Array"}qa.isUint16Array=u5e;function c5e(e){return Zs(e)==="Uint32Array"}qa.isUint32Array=c5e;function v5e(e){return Zs(e)==="Int8Array"}qa.isInt8Array=v5e;function h5e(e){return Zs(e)==="Int16Array"}qa.isInt16Array=h5e;function d5e(e){return Zs(e)==="Int32Array"}qa.isInt32Array=d5e;function p5e(e){return Zs(e)==="Float32Array"}qa.isFloat32Array=p5e;function m5e(e){return Zs(e)==="Float64Array"}qa.isFloat64Array=m5e;function y5e(e){return Zs(e)==="BigInt64Array"}qa.isBigInt64Array=y5e;function g5e(e){return Zs(e)==="BigUint64Array"}qa.isBigUint64Array=g5e;function qx(e){return as(e)==="[object Map]"}qx.working=typeof Map!="undefined"&&qx(new Map);function b5e(e){return typeof Map=="undefined"?!1:qx.working?qx(e):e instanceof Map}qa.isMap=b5e;function Rx(e){return as(e)==="[object Set]"}Rx.working=typeof Set!="undefined"&&Rx(new Set);function x5e(e){return typeof Set=="undefined"?!1:Rx.working?Rx(e):e instanceof Set}qa.isSet=x5e;function Px(e){return as(e)==="[object WeakMap]"}Px.working=typeof WeakMap!="undefined"&&Px(new WeakMap);function _5e(e){return typeof WeakMap=="undefined"?!1:Px.working?Px(e):e instanceof WeakMap}qa.isWeakMap=_5e;function S8(e){return as(e)==="[object WeakSet]"}S8.working=typeof WeakSet!="undefined"&&S8(new WeakSet);function w5e(e){return S8(e)}qa.isWeakSet=w5e;function Nx(e){return as(e)==="[object ArrayBuffer]"}Nx.working=typeof ArrayBuffer!="undefined"&&Nx(new ArrayBuffer);function Fj(e){return typeof ArrayBuffer=="undefined"?!1:Nx.working?Nx(e):e instanceof ArrayBuffer}qa.isArrayBuffer=Fj;function Ix(e){return as(e)==="[object DataView]"}Ix.working=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined"&&Ix(new DataView(new ArrayBuffer(1),0,1));function qj(e){return typeof DataView=="undefined"?!1:Ix.working?Ix(e):e instanceof DataView}qa.isDataView=qj;var M8=typeof SharedArrayBuffer!="undefined"?SharedArrayBuffer:void 0;function Ly(e){return as(e)==="[object SharedArrayBuffer]"}function Rj(e){return typeof M8=="undefined"?!1:(typeof Ly.working=="undefined"&&(Ly.working=Ly(new M8)),Ly.working?Ly(e):e instanceof M8)}qa.isSharedArrayBuffer=Rj;function A5e(e){return as(e)==="[object AsyncFunction]"}qa.isAsyncFunction=A5e;function T5e(e){return as(e)==="[object Map Iterator]"}qa.isMapIterator=T5e;function M5e(e){return as(e)==="[object Set Iterator]"}qa.isSetIterator=M5e;function S5e(e){return as(e)==="[object Generator]"}qa.isGeneratorObject=S5e;function E5e(e){return as(e)==="[object WebAssembly.Module]"}qa.isWebAssemblyCompiledModule=E5e;function Pj(e){return Dy(e,a5e)}qa.isNumberObject=Pj;function Nj(e){return Dy(e,n5e)}qa.isStringObject=Nj;function Ij(e){return Dy(e,i5e)}qa.isBooleanObject=Ij;function Oj(e){return kj&&Dy(e,Lj)}qa.isBigIntObject=Oj;function Bj(e){return Cj&&Dy(e,Dj)}qa.isSymbolObject=Bj;function k5e(e){return Pj(e)||Nj(e)||Ij(e)||Oj(e)||Bj(e)}qa.isBoxedPrimitive=k5e;function C5e(e){return typeof Uint8Array!="undefined"&&(Fj(e)||Rj(e))}qa.isAnyArrayBuffer=C5e;["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(e){Object.defineProperty(qa,e,{enumerable:!1,value:function(){throw new Error(e+" is not supported in userland")}})})});var Uj=P((hPe,Gj)=>{Gj.exports=function(r){return r&&typeof r=="object"&&typeof r.copy=="function"&&typeof r.fill=="function"&&typeof r.readUInt8=="function"}});var Hj=P((dPe,E8)=>{typeof Object.create=="function"?E8.exports=function(r,t){t&&(r.super_=t,r.prototype=Object.create(t.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}))}:E8.exports=function(r,t){if(t){r.super_=t;var a=function(){};a.prototype=t.prototype,r.prototype=new a,r.prototype.constructor=r}}});var Mp=P(Ra=>{var Vj=Object.getOwnPropertyDescriptors||function(r){for(var t=Object.keys(r),a={},n=0;n=n)return l;switch(l){case"%s":return String(a[t++]);case"%d":return Number(a[t++]);case"%j":try{return JSON.stringify(a[t++])}catch(s){return"[Circular]"}default:return l}}),o=a[t];t=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),D8(r)?t.showHidden=r:r&&Ra._extend(t,r),sh(t.showHidden)&&(t.showHidden=!1),sh(t.depth)&&(t.depth=2),sh(t.colors)&&(t.colors=!1),sh(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=D5e),Gx(t,e,t.depth)}Ra.inspect=uv;uv.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};uv.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function D5e(e,r){var t=uv.styles[r];return t?"\x1B["+uv.colors[t][0]+"m"+e+"\x1B["+uv.colors[t][1]+"m":e}function F5e(e,r){return e}function q5e(e){var r={};return e.forEach(function(t,a){r[t]=!0}),r}function Gx(e,r,t){if(e.customInspect&&r&&zx(r.inspect)&&r.inspect!==Ra.inspect&&!(r.constructor&&r.constructor.prototype===r)){var a=r.inspect(t,e);return Vx(a)||(a=Gx(e,a,t)),a}var n=R5e(e,r);if(n)return n;var i=Object.keys(r),o=q5e(i);if(e.showHidden&&(i=Object.getOwnPropertyNames(r)),qy(r)&&(i.indexOf("message")>=0||i.indexOf("description")>=0))return k8(r);if(i.length===0){if(zx(r)){var l=r.name?": "+r.name:"";return e.stylize("[Function"+l+"]","special")}if(Fy(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(Ux(r))return e.stylize(Date.prototype.toString.call(r),"date");if(qy(r))return k8(r)}var s="",f=!1,u=["{","}"];if(Wj(r)&&(f=!0,u=["[","]"]),zx(r)){var c=r.name?": "+r.name:"";s=" [Function"+c+"]"}if(Fy(r)&&(s=" "+RegExp.prototype.toString.call(r)),Ux(r)&&(s=" "+Date.prototype.toUTCString.call(r)),qy(r)&&(s=" "+k8(r)),i.length===0&&(!f||r.length==0))return u[0]+s+u[1];if(t<0)return Fy(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special");e.seen.push(r);var v;return f?v=P5e(e,r,t,o,i):v=i.map(function(d){return L8(e,r,t,o,d,f)}),e.seen.pop(),N5e(v,s,u)}function R5e(e,r){if(sh(r))return e.stylize("undefined","undefined");if(Vx(r)){var t="'"+JSON.stringify(r).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(t,"string")}if(jj(r))return e.stylize(""+r,"number");if(D8(r))return e.stylize(""+r,"boolean");if(Hx(r))return e.stylize("null","null")}function k8(e){return"["+Error.prototype.toString.call(e)+"]"}function P5e(e,r,t,a,n){for(var i=[],o=0,l=r.length;o{"use strict";_k.exports=function(r){return r}});var Y5=P(Tu=>{"use strict";var fle=ba(),ule=g0(),cle=e2(),vle=Kn().BADNUM,V5=1e-9;Tu.findBin=function(e,r,t){if(fle(r.start))return t?Math.ceil((e-r.start)/r.size-V5)-1:Math.floor((e-r.start)/r.size+V5);var a=0,n=r.length,i=0,o=n>1?(r[n-1]-r[0])/(n-1):1,l,s;for(o>=0?s=t?hle:dle:s=t?mle:ple,e+=o*V5*(t?-1:1)*(o>=0?1:-1);a90&&ule.log("Long binary search..."),a-1};function hle(e,r){return er}function mle(e,r){return e>=r}Tu.sorterAsc=function(e,r){return e-r};Tu.sorterDes=function(e,r){return r-e};Tu.distinctVals=function(e){var r=e.slice();r.sort(Tu.sorterAsc);var t;for(t=r.length-1;t>-1&&r[t]===vle;t--);for(var a=r[t]-r[0]||1,n=a/(t||1)/1e4,i=[],o,l=0;l<=t;l++){var s=r[l],f=s-o;o===void 0?(i.push(s),o=s):f>n&&(a=Math.min(a,f),i.push(s),o=s)}return{vals:i,minDiff:a}};Tu.roundUp=function(e,r,t){for(var a=0,n=r.length-1,i,o=0,l=t?0:1,s=t?1:0,f=t?Math.ceil:Math.floor;a0&&(a=1),t&&a)return e.sort(r)}return a?e:e.reverse()};Tu.findIndexOfMin=function(e,r){r=r||cle;for(var t=1/0,a,n=0;n{"use strict";wk.exports=function(r){return Object.keys(r).sort()}});var Ak=P(Hn=>{"use strict";var X1=ba(),yle=Yo().isArrayOrTypedArray;Hn.aggNums=function(e,r,t,a){var n,i;if((!a||a>t.length)&&(a=t.length),X1(r)||(r=!1),yle(t[0])){for(i=new Array(a),n=0;ne.length-1)return e[e.length-1];var t=r%1;return t*e[Math.ceil(r)]+(1-t)*e[Math.floor(r)]}});var kk=P((Yke,Ek)=>{"use strict";var Tk=Zh(),W5=Tk.mod,gle=Tk.modHalf,Z1=Math.PI,qc=2*Z1;function ble(e){return e/180*Z1}function xle(e){return e/Z1*180}function j5(e){return Math.abs(e[1]-e[0])>qc-1e-14}function Mk(e,r){return gle(r-e,qc)}function _le(e,r){return Math.abs(Mk(e,r))}function Sk(e,r){if(j5(r))return!0;var t,a;r[0]a&&(a+=qc);var n=W5(e,qc),i=n+qc;return n>=t&&n<=a||i>=t&&i<=a}function wle(e,r,t,a){if(!Sk(r,a))return!1;var n,i;return t[0]=n&&e<=i}function X5(e,r,t,a,n,i,o){n=n||0,i=i||0;var l=j5([t,a]),s,f,u,c,v;l?(s=0,f=Z1,u=qc):t{"use strict";x0.isLeftAnchor=function(r){return r.xanchor==="left"||r.xanchor==="auto"&&r.x<=1/3};x0.isCenterAnchor=function(r){return r.xanchor==="center"||r.xanchor==="auto"&&r.x>1/3&&r.x<2/3};x0.isRightAnchor=function(r){return r.xanchor==="right"||r.xanchor==="auto"&&r.x>=2/3};x0.isTopAnchor=function(r){return r.yanchor==="top"||r.yanchor==="auto"&&r.y>=2/3};x0.isMiddleAnchor=function(r){return r.yanchor==="middle"||r.yanchor==="auto"&&r.y>1/3&&r.y<2/3};x0.isBottomAnchor=function(r){return r.yanchor==="bottom"||r.yanchor==="auto"&&r.y<=1/3}});var Fk=P(_0=>{"use strict";var Z5=Zh().mod;_0.segmentsIntersect=Dk;function Dk(e,r,t,a,n,i,o,l){var s=t-e,f=n-e,u=o-n,c=a-r,v=i-r,d=l-i,p=s*d-u*c;if(p===0)return null;var y=(f*d-u*v)/p,m=(f*c-s*v)/p;return m<0||m>1||y<0||y>1?null:{x:e+s*y,y:r+c*y}}_0.segmentDistance=function(r,t,a,n,i,o,l,s){if(Dk(r,t,a,n,i,o,l,s))return 0;var f=a-r,u=n-t,c=l-i,v=s-o,d=f*f+u*u,p=c*c+v*v,y=Math.min(t2(f,u,d,i-r,o-t),t2(f,u,d,l-r,s-t),t2(c,v,p,r-i,t-o),t2(c,v,p,a-i,n-o));return Math.sqrt(y)};function t2(e,r,t,a,n){var i=a*e+n*r;if(i<0)return a*a+n*n;if(i>t){var o=a-e,l=n-r;return o*o+l*l}else{var s=a*r-n*e;return s*s/t}}var a2,J5,Lk;_0.getTextLocation=function(r,t,a,n){if((r!==J5||n!==Lk)&&(a2={},J5=r,Lk=n),a2[a])return a2[a];var i=r.getPointAtLength(Z5(a-n/2,t)),o=r.getPointAtLength(Z5(a+n/2,t)),l=Math.atan((o.y-i.y)/(o.x-i.x)),s=r.getPointAtLength(Z5(a,t)),f=(s.x*4+i.x+o.x)/6,u=(s.y*4+i.y+o.y)/6,c={x:f,y:u,theta:l};return a2[a]=c,c};_0.clearLocationCache=function(){J5=null};_0.getVisibleSegment=function(r,t,a){var n=t.left,i=t.right,o=t.top,l=t.bottom,s=0,f=r.getTotalLength(),u=f,c,v;function d(y){var m=r.getPointAtLength(y);y===0?c=m:y===f&&(v=m);var b=m.xi?m.x-i:0,A=m.yl?m.y-l:0;return Math.sqrt(b*b+A*A)}for(var p=d(s);p;){if(s+=p+a,s>u)return;p=d(s)}for(p=d(u);p;){if(u-=p+a,s>u)return;p=d(u)}return{min:s,max:u,len:u-s,total:f,isClosed:s===0&&u===f&&Math.abs(c.x-v.x)<.1&&Math.abs(c.y-v.y)<.1}};_0.findPointOnPath=function(r,t,a,n){n=n||{};for(var i=n.pathLength||r.getTotalLength(),o=n.tolerance||.001,l=n.iterationLimit||30,s=r.getPointAtLength(0)[a]>r.getPointAtLength(i)[a]?-1:1,f=0,u=0,c=i,v,d,p;f0?c=v:u=v,f++}return d}});var n2=P(J1=>{"use strict";var Mu={};J1.throttle=function(r,t,a){var n=Mu[r],i=Date.now();if(!n){for(var o in Mu)Mu[o].tsn.ts+t){l();return}n.timer=setTimeout(function(){l(),n.timer=null},t)};J1.done=function(e){var r=Mu[e];return!r||!r.timer?Promise.resolve():new Promise(function(t){var a=r.onDone;r.onDone=function(){a&&a(),t(),r.onDone=null}})};J1.clear=function(e){if(e)qk(Mu[e]),delete Mu[e];else for(var r in Mu)J1.clear(r)};function qk(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var Pk=P((Zke,Rk)=>{"use strict";Rk.exports=function(r){r._responsiveChartHandler&&(window.removeEventListener("resize",r._responsiveChartHandler),delete r._responsiveChartHandler)}});var Nk=P((Jke,i2)=>{"use strict";i2.exports=$5;i2.exports.isMobile=$5;i2.exports.default=$5;var Sle=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,Ele=/CrOS/,kle=/android|ipad|playbook|silk/i;function $5(e){e||(e={});let r=e.ua;if(!r&&typeof navigator!="undefined"&&(r=navigator.userAgent),r&&r.headers&&typeof r.headers["user-agent"]=="string"&&(r=r.headers["user-agent"]),typeof r!="string")return!1;let t=Sle.test(r)&&!Ele.test(r)||!!e.tablet&&kle.test(r);return!t&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&r.indexOf("Macintosh")!==-1&&r.indexOf("Safari")!==-1&&(t=!0),t}});var Ok=P(($ke,Ik)=>{"use strict";var Cle=ba(),Lle=Nk();Ik.exports=function(r){var t;if(r&&r.hasOwnProperty("userAgent")?t=r.userAgent:t=Dle(),typeof t!="string")return!0;var a=Lle({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!a)for(var n=t.split(" "),i=1;i-1;l--){var s=n[l];if(s.slice(0,8)==="Version/"){var f=s.slice(8).split(".")[0];if(Cle(f)&&(f=+f),f>=13)return!0}}}return a};function Dle(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var zk=P((Qke,Bk)=>{"use strict";var Fle=da();Bk.exports=function(r,t,a){var n=r.selectAll("g."+a.replace(/\s/g,".")).data(t,function(o){return o[0].trace.uid});n.exit().remove(),n.enter().append("g").attr("class",a),n.order();var i=r.classed("rangeplot")?"nodeRangePlot3":"node3";return n.each(function(o){o[0][i]=Fle.select(this)}),n}});var Uk=P((Kke,Gk)=>{"use strict";var qle=Bt();Gk.exports=function(r,t){for(var a=r._context.locale,n=0;n<2;n++){for(var i=r._context.locales,o=0;o<2;o++){var l=(i[a]||{}).dictionary;if(l){var s=l[t];if(s)return s}i=qle.localeRegistry}var f=a.split("-")[0];if(f===a)break;a=f}return t}});var Vk=P((eCe,Hk)=>{"use strict";Hk.exports=function(r){for(var t={},a=[],n=0,i=0;i{"use strict";Yk.exports=function(r){for(var t=Nle(r)?Ple:Rle,a=[],n=0;n{"use strict";jk.exports=function(r,t){if(!t)return r;var a=1/Math.abs(t),n=a>1?(a*r+a*t)/a:r+t,i=String(n).length;if(i>16){var o=String(t).length,l=String(r).length;if(i>=l+o){var s=parseFloat(n).toPrecision(12);s.indexOf("e+")===-1&&(n=+s)}}return n}});var Jk=P((aCe,Zk)=>{"use strict";var Ile=ba(),Ole=Kn().BADNUM,Ble=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;Zk.exports=function(r){return typeof r=="string"&&(r=r.replace(Ble,"")),Ile(r)?Number(r):Ole}});var Ur=P((nCe,fC)=>{"use strict";var $1=da(),zle=jh().utcFormat,Gle=w5().format,tC=ba(),aC=Kn(),nC=aC.FP_SAFE,Ule=-nC,$k=aC.BADNUM,Ve=fC.exports={};Ve.adjustFormat=function(r){return!r||/^\d[.]\df/.test(r)||/[.]\d%/.test(r)?r:r==="0.f"?"~f":/^\d%/.test(r)?"~%":/^\ds/.test(r)?"~s":!/^[~,.0$]/.test(r)&&/[&fps]/.test(r)?"~"+r:r};var Qk={};Ve.warnBadFormat=function(e){var r=String(e);Qk[r]||(Qk[r]=1,Ve.warn('encountered bad format: "'+r+'"'))};Ve.noFormat=function(e){return String(e)};Ve.numberFormat=function(e){var r;try{r=Gle(Ve.adjustFormat(e))}catch(t){return Ve.warnBadFormat(e),Ve.noFormat}return r};Ve.nestedProperty=Pg();Ve.keyedContainer=HM();Ve.relativeAttr=YM();Ve.isPlainObject=Mc();Ve.toLogRange=Ig();Ve.relinkPrivateKeys=ZM();var Rc=Yo();Ve.isArrayBuffer=Rc.isArrayBuffer;Ve.isTypedArray=Rc.isTypedArray;Ve.isArrayOrTypedArray=Rc.isArrayOrTypedArray;Ve.isArray1D=Rc.isArray1D;Ve.ensureArray=Rc.ensureArray;Ve.concat=Rc.concat;Ve.maxRowLength=Rc.maxRowLength;Ve.minRowLength=Rc.minRowLength;var iC=Zh();Ve.mod=iC.mod;Ve.modHalf=iC.modHalf;var Pc=dS();Ve.valObjectMeta=Pc.valObjectMeta;Ve.coerce=Pc.coerce;Ve.coerce2=Pc.coerce2;Ve.coerceFont=Pc.coerceFont;Ve.coercePattern=Pc.coercePattern;Ve.coerceHoverinfo=Pc.coerceHoverinfo;Ve.coerceSelectionMarkerOpacity=Pc.coerceSelectionMarkerOpacity;Ve.validate=Pc.validate;var yl=xk();Ve.dateTime2ms=yl.dateTime2ms;Ve.isDateTime=yl.isDateTime;Ve.ms2DateTime=yl.ms2DateTime;Ve.ms2DateTimeLocal=yl.ms2DateTimeLocal;Ve.cleanDate=yl.cleanDate;Ve.isJSDate=yl.isJSDate;Ve.formatDate=yl.formatDate;Ve.incrementMonth=yl.incrementMonth;Ve.dateTick0=yl.dateTick0;Ve.dfltRange=yl.dfltRange;Ve.findExactDates=yl.findExactDates;Ve.MIN_MS=yl.MIN_MS;Ve.MAX_MS=yl.MAX_MS;var w0=Y5();Ve.findBin=w0.findBin;Ve.sorterAsc=w0.sorterAsc;Ve.sorterDes=w0.sorterDes;Ve.distinctVals=w0.distinctVals;Ve.roundUp=w0.roundUp;Ve.sort=w0.sort;Ve.findIndexOfMin=w0.findIndexOfMin;Ve.sortObjectKeys=r2();var Su=Ak();Ve.aggNums=Su.aggNums;Ve.len=Su.len;Ve.mean=Su.mean;Ve.geometricMean=Su.geometricMean;Ve.median=Su.median;Ve.midRange=Su.midRange;Ve.variance=Su.variance;Ve.stdev=Su.stdev;Ve.interp=Su.interp;var Fs=Vg();Ve.init2dArray=Fs.init2dArray;Ve.transposeRagged=Fs.transposeRagged;Ve.dot=Fs.dot;Ve.translationMatrix=Fs.translationMatrix;Ve.rotationMatrix=Fs.rotationMatrix;Ve.rotationXYMatrix=Fs.rotationXYMatrix;Ve.apply3DTransform=Fs.apply3DTransform;Ve.apply2DTransform=Fs.apply2DTransform;Ve.apply2DTransform2=Fs.apply2DTransform2;Ve.convertCssMatrix=Fs.convertCssMatrix;Ve.inverseTransformMatrix=Fs.inverseTransformMatrix;var Tf=kk();Ve.deg2rad=Tf.deg2rad;Ve.rad2deg=Tf.rad2deg;Ve.angleDelta=Tf.angleDelta;Ve.angleDist=Tf.angleDist;Ve.isFullCircle=Tf.isFullCircle;Ve.isAngleInsideSector=Tf.isAngleInsideSector;Ve.isPtInsideSector=Tf.isPtInsideSector;Ve.pathArc=Tf.pathArc;Ve.pathSector=Tf.pathSector;Ve.pathAnnulus=Tf.pathAnnulus;var fd=Ck();Ve.isLeftAnchor=fd.isLeftAnchor;Ve.isCenterAnchor=fd.isCenterAnchor;Ve.isRightAnchor=fd.isRightAnchor;Ve.isTopAnchor=fd.isTopAnchor;Ve.isMiddleAnchor=fd.isMiddleAnchor;Ve.isBottomAnchor=fd.isBottomAnchor;var ud=Fk();Ve.segmentsIntersect=ud.segmentsIntersect;Ve.segmentDistance=ud.segmentDistance;Ve.getTextLocation=ud.getTextLocation;Ve.clearLocationCache=ud.clearLocationCache;Ve.getVisibleSegment=ud.getVisibleSegment;Ve.findPointOnPath=ud.findPointOnPath;var s2=zn();Ve.extendFlat=s2.extendFlat;Ve.extendDeep=s2.extendDeep;Ve.extendDeepAll=s2.extendDeepAll;Ve.extendDeepNoArrays=s2.extendDeepNoArrays;var Q5=g0();Ve.log=Q5.log;Ve.warn=Q5.warn;Ve.error=Q5.error;var Hle=Qh();Ve.counterRegex=Hle.counter;var K5=n2();Ve.throttle=K5.throttle;Ve.throttleDone=K5.done;Ve.clearThrottle=K5.clear;var qs=V1();Ve.getGraphDiv=qs.getGraphDiv;Ve.isPlotDiv=qs.isPlotDiv;Ve.removeElement=qs.removeElement;Ve.addStyleRule=qs.addStyleRule;Ve.addRelatedStyleRule=qs.addRelatedStyleRule;Ve.deleteRelatedStyleRule=qs.deleteRelatedStyleRule;Ve.setStyleOnHover=qs.setStyleOnHover;Ve.getFullTransformMatrix=qs.getFullTransformMatrix;Ve.getElementTransformMatrix=qs.getElementTransformMatrix;Ve.getElementAndAncestors=qs.getElementAndAncestors;Ve.equalDomRects=qs.equalDomRects;Ve.clearResponsive=Pk();Ve.preserveDrawingBuffer=Ok();Ve.makeTraceGroups=zk();Ve._=Uk();Ve.notifier=q5();Ve.filterUnique=Vk();Ve.filterVisible=Wk();Ve.pushUnique=N5();Ve.increment=Xk();Ve.cleanNumber=Jk();Ve.ensureNumber=function(r){return tC(r)?(r=Number(r),r>nC||r=r?!1:tC(e)&&e>=0&&e%1===0};Ve.noop=Hg();Ve.identity=e2();Ve.repeat=function(e,r){for(var t=new Array(r),a=0;at?Math.max(t,Math.min(r,e)):Math.max(r,Math.min(t,e))};Ve.bBoxIntersect=function(e,r,t){return t=t||0,e.left<=r.right+t&&r.left<=e.right+t&&e.top<=r.bottom+t&&r.top<=e.bottom+t};Ve.simpleMap=function(e,r,t,a,n){for(var i=e.length,o=new Array(i),l=0;l=Math.pow(2,t)?n>10?(Ve.warn("randstr failed uniqueness"),o):e(r,t,a,(n||0)+1):o};Ve.OptionControl=function(e,r){e||(e={}),r||(r="opt");var t={};return t.optionList=[],t._newoption=function(a){a[r]=e,t[a.name]=a,t.optionList.push(a)},t["_"+r]=e,t};Ve.smooth=function(e,r){if(r=Math.round(r)||0,r<2)return e;var t=e.length,a=2*t,n=2*r-1,i=new Array(n),o=new Array(t),l,s,f,u;for(l=0;l=a&&(f-=a*Math.floor(f/a)),f<0?f=-1-f:f>=t&&(f=a-1-f),u+=e[f]*i[s];o[l]=u}return o};Ve.syncOrAsync=function(e,r,t){var a,n;function i(){return Ve.syncOrAsync(e,r,t)}for(;e.length;)if(n=e.splice(0,1)[0],a=n(r),a&&a.then)return a.then(i);return t&&t(r)};Ve.stripTrailingSlash=function(e){return e.slice(-1)==="/"?e.slice(0,-1):e};Ve.noneOrAll=function(e,r,t){if(e){var a=!1,n=!0,i,o;for(i=0;i0?n:0})};Ve.fillArray=function(e,r,t,a){if(a=a||Ve.identity,Ve.isArrayOrTypedArray(e))for(var n=0;nWle.test(window.navigator.userAgent);var jle=/Firefox\/(\d+)\.\d+/;Ve.getFirefoxVersion=function(){var e=jle.exec(window.navigator.userAgent);if(e&&e.length===2){var r=parseInt(e[1]);if(!isNaN(r))return r}return null};Ve.isD3Selection=function(e){return e instanceof $1.selection};Ve.ensureSingle=function(e,r,t,a){var n=e.select(r+(t?"."+t:""));if(n.size())return n;var i=e.append(r);return t&&i.classed(t,!0),a&&i.call(a),i};Ve.ensureSingleById=function(e,r,t,a){var n=e.select(r+"#"+t);if(n.size())return n;var i=e.append(r).attr("id",t);return a&&i.call(a),i};Ve.objectFromPath=function(e,r){for(var t=e.split("."),a,n=a={},i=0;i1?n+o[1]:"";if(i&&(o.length>1||l.length>4||t))for(;a.test(l);)l=l.replace(a,"$1"+i+"$2");return l+s};Ve.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var sC=/^\w*$/;Ve.templateString=function(e,r){var t={};return e.replace(Ve.TEMPLATE_STRING_REGEX,function(a,n){var i;return sC.test(n)?i=r[n]:(t[n]=t[n]||Ve.nestedProperty(r,n).get,i=t[n](!0)),i!==void 0?i:""})};var Jle={max:10,count:0,name:"hovertemplate"};Ve.hovertemplateString=e=>e4(Mg(h0({},e),{opts:Jle}));var $le={max:10,count:0,name:"texttemplate"};Ve.texttemplateString=e=>e4(Mg(h0({},e),{opts:$le}));var Qle=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function Kle(e){var r=e.match(Qle);return r?{key:r[1],op:r[2],number:Number(r[3])}:{key:e,op:null,number:null}}var ese={max:10,count:0,name:"texttemplate",parseMultDiv:!0};Ve.texttemplateStringForShapes=e=>e4(Mg(h0({},e),{opts:ese}));var Kk=/^[:|\|]/;function e4({data:e=[],locale:r,fallback:t,labels:a={},opts:n,template:i}){return i.replace(Ve.TEMPLATE_STRING_REGEX,(o,l,s)=>{let f=["xother","yother"].includes(l),u=["_xother","_yother"].includes(l),c=["_xother_","_yother_"].includes(l),v=["xother_","yother_"].includes(l),d=f||u||v||c;(u||c)&&(l=l.substring(1)),(v||c)&&(l=l.substring(0,l.length-1));let p=null,y=null;if(n.parseMultDiv){var m=Kle(l);l=m.key,p=m.op,y=m.number}let b;if(d){if(a[l]===void 0)return"";b=a[l]}else for(let T of e)if(T){if(T.hasOwnProperty(l)){b=T[l];break}if(sC.test(l)||(b=Ve.nestedProperty(T,l).get(!0)),b!==void 0)break}if(b===void 0){let{count:T,max:E,name:S}=n,k=t===!1?o:t;return T=l2&&o<=eC,f=l>=l2&&l<=eC;if(s&&(a=10*a+o-l2),f&&(n=10*n+l-l2),!s||!f){if(a!==n)return a-n;if(o!==l)return o-l}}return n-a};var sd=2e9;Ve.seedPseudoRandom=function(){sd=2e9};Ve.pseudoRandom=function(){var e=sd;return sd=(69069*sd+1)%4294967296,Math.abs(sd-e)<429496729?Ve.pseudoRandom():sd/4294967296};Ve.fillText=function(e,r,t){var a=Array.isArray(t)?function(o){t.push(o)}:function(o){t.text=o},n=Ve.extractOption(e,r,"htx","hovertext");if(Ve.isValidTextValue(n))return a(n);var i=Ve.extractOption(e,r,"tx","text");if(Ve.isValidTextValue(i))return a(i)};Ve.isValidTextValue=function(e){return e||e===0};Ve.formatPercent=function(e,r){r=r||0;for(var t=(Math.round(100*e*Math.pow(10,r))*Math.pow(.1,r)).toFixed(r)+"%",a=0;a1&&(f=1):f=0,Ve.strTranslate(n-f*(t+o),i-f*(a+l))+Ve.strScale(f)+(s?"rotate("+s+(r?"":" "+t+" "+a)+")":"")};Ve.setTransormAndDisplay=function(e,r){e.attr("transform",Ve.getTextTransform(r)),e.style("display",r.scale?null:"none")};Ve.ensureUniformFontSize=function(e,r){var t=Ve.extendFlat({},r);return t.size=Math.max(r.size,e._fullLayout.uniformtext.minsize||0),t};Ve.join2=function(e,r,t){var a=e.length;return a>1?e.slice(0,-1).join(r)+t+e[a-1]:e.join(r)};Ve.bigFont=function(e){return Math.round(1.2*e)};var rC=Ve.getFirefoxVersion(),rse=rC!==null&&rC<86;Ve.getPositionFromD3Event=function(){return rse?[$1.event.layerX,$1.event.layerY]:[$1.event.offsetX,$1.event.offsetY]}});var vC=P(()=>{"use strict";var tse=Ur(),uC={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(r4 in uC)cC=r4.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),tse.addStyleRule(cC,uC[r4]);var cC,r4});var t4=P((sCe,hC)=>{hC.exports=!0});var n4=P((fCe,dC)=>{"use strict";var ase=t4(),a4;typeof window.matchMedia=="function"?a4=!window.matchMedia("(hover: none)").matches:a4=ase;dC.exports=a4});var c2=P((uCe,i4)=>{"use strict";var cd=typeof Reflect=="object"?Reflect:null,pC=cd&&typeof cd.apply=="function"?cd.apply:function(r,t,a){return Function.prototype.apply.call(r,t,a)},f2;cd&&typeof cd.ownKeys=="function"?f2=cd.ownKeys:Object.getOwnPropertySymbols?f2=function(r){return Object.getOwnPropertyNames(r).concat(Object.getOwnPropertySymbols(r))}:f2=function(r){return Object.getOwnPropertyNames(r)};function nse(e){console&&console.warn&&console.warn(e)}var yC=Number.isNaN||function(r){return r!==r};function pn(){pn.init.call(this)}i4.exports=pn;i4.exports.once=sse;pn.EventEmitter=pn;pn.prototype._events=void 0;pn.prototype._eventsCount=0;pn.prototype._maxListeners=void 0;var mC=10;function u2(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(pn,"defaultMaxListeners",{enumerable:!0,get:function(){return mC},set:function(e){if(typeof e!="number"||e<0||yC(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");mC=e}});pn.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};pn.prototype.setMaxListeners=function(r){if(typeof r!="number"||r<0||yC(r))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+r+".");return this._maxListeners=r,this};function gC(e){return e._maxListeners===void 0?pn.defaultMaxListeners:e._maxListeners}pn.prototype.getMaxListeners=function(){return gC(this)};pn.prototype.emit=function(r){for(var t=[],a=1;a0&&(o=t[0]),o instanceof Error)throw o;var l=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw l.context=o,l}var s=i[r];if(s===void 0)return!1;if(typeof s=="function")pC(s,this,t);else for(var f=s.length,u=AC(s,f),a=0;a0&&o.length>n&&!o.warned){o.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(r)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=r,l.count=o.length,nse(l)}return e}pn.prototype.addListener=function(r,t){return bC(this,r,t,!1)};pn.prototype.on=pn.prototype.addListener;pn.prototype.prependListener=function(r,t){return bC(this,r,t,!0)};function ise(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function xC(e,r,t){var a={fired:!1,wrapFn:void 0,target:e,type:r,listener:t},n=ise.bind(a);return n.listener=t,a.wrapFn=n,n}pn.prototype.once=function(r,t){return u2(t),this.on(r,xC(this,r,t)),this};pn.prototype.prependOnceListener=function(r,t){return u2(t),this.prependListener(r,xC(this,r,t)),this};pn.prototype.removeListener=function(r,t){var a,n,i,o,l;if(u2(t),n=this._events,n===void 0)return this;if(a=n[r],a===void 0)return this;if(a===t||a.listener===t)--this._eventsCount===0?this._events=Object.create(null):(delete n[r],n.removeListener&&this.emit("removeListener",r,a.listener||t));else if(typeof a!="function"){for(i=-1,o=a.length-1;o>=0;o--)if(a[o]===t||a[o].listener===t){l=a[o].listener,i=o;break}if(i<0)return this;i===0?a.shift():ose(a,i),a.length===1&&(n[r]=a[0]),n.removeListener!==void 0&&this.emit("removeListener",r,l||t)}return this};pn.prototype.off=pn.prototype.removeListener;pn.prototype.removeAllListeners=function(r){var t,a,n;if(a=this._events,a===void 0)return this;if(a.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):a[r]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete a[r]),this;if(arguments.length===0){var i=Object.keys(a),o;for(n=0;n=0;n--)this.removeListener(r,t[n]);return this};function _C(e,r,t){var a=e._events;if(a===void 0)return[];var n=a[r];return n===void 0?[]:typeof n=="function"?t?[n.listener||n]:[n]:t?lse(n):AC(n,n.length)}pn.prototype.listeners=function(r){return _C(this,r,!0)};pn.prototype.rawListeners=function(r){return _C(this,r,!1)};pn.listenerCount=function(e,r){return typeof e.listenerCount=="function"?e.listenerCount(r):wC.call(e,r)};pn.prototype.listenerCount=wC;function wC(e){var r=this._events;if(r!==void 0){var t=r[e];if(typeof t=="function")return 1;if(t!==void 0)return t.length}return 0}pn.prototype.eventNames=function(){return this._eventsCount>0?f2(this._events):[]};function AC(e,r){for(var t=new Array(r),a=0;a{"use strict";var o4=c2().EventEmitter,use={init:function(e){if(e._ev instanceof o4)return e;var r=new o4,t=new o4;return e._ev=r,e._internalEv=t,e.on=r.on.bind(r),e.once=r.once.bind(r),e.removeListener=r.removeListener.bind(r),e.removeAllListeners=r.removeAllListeners.bind(r),e._internalOn=t.on.bind(t),e._internalOnce=t.once.bind(t),e._removeInternalListener=t.removeListener.bind(t),e._removeAllInternalListeners=t.removeAllListeners.bind(t),e.emit=function(a,n){r.emit(a,n),t.emit(a,n)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,r,t){var a,n=e._ev;if(!n)return;var i=n._events[r];if(!i)return;function o(s){if(s.listener){if(n.removeListener(r,s.listener),!s.fired)return s.fired=!0,s.listener.apply(n,[t])}else return s.apply(n,[t])}i=Array.isArray(i)?i:[i];var l;for(l=0;l{"use strict";var SC=Ur(),cse=y0().dfltConfig;function vse(e,r){for(var t=[],a,n=0;ncse.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};Eu.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};Eu.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};Eu.undo=function(r){var t,a;if(!(r.undoQueue===void 0||isNaN(r.undoQueue.index)||r.undoQueue.index<=0)){for(r.undoQueue.index--,t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a=r.undoQueue.queue.length)){for(t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,a=0;a{"use strict";CC.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var dd=P(fi=>{"use strict";var zl=Bt(),K1=Ur(),h2=Cs(),s4=ad(),hse=l4(),dse=Y1(),pse=y0().configAttributes,LC=Ds(),Rs=K1.extendDeepAll,vd=K1.isPlainObject,mse=K1.isArrayOrTypedArray,d2=K1.nestedProperty,yse=K1.valObjectMeta,f4="_isSubplotObj",p2="_isLinkedToArray",gse="_arrayAttrRegexps",FC="_deprecated",u4=[f4,p2,gse,FC];fi.IS_SUBPLOT_OBJ=f4;fi.IS_LINKED_TO_ARRAY=p2;fi.DEPRECATED=FC;fi.UNDERSCORE_ATTRS=u4;fi.get=function(){var e={};return zl.allTypes.forEach(function(r){e[r]=xse(r)}),{defs:{valObjects:yse,metaKeys:u4.concat(["description","role","editType","impliedEdits"]),editType:{traces:LC.traces,layout:LC.layout},impliedEdits:{}},traces:e,layout:_se(),frames:wse(),animation:hd(dse),config:hd(pse)}};fi.crawl=function(e,r,t,a){var n=t||0;a=a||"",Object.keys(e).forEach(function(i){var o=e[i];if(u4.indexOf(i)===-1){var l=(a?a+".":"")+i;r(o,i,e,n,l),!fi.isValObject(o)&&vd(o)&&i!=="impliedEdits"&&fi.crawl(o,r,n+1,l)}})};fi.isValObject=function(e){return e&&e.valType!==void 0};fi.findArrayAttributes=function(e){var r=[],t=[],a=[],n,i;function o(s,f,u,c){t=t.slice(0,c).concat([f]),a=a.slice(0,c).concat([s&&s._isLinkedToArray]);var v=s&&(s.valType==="data_array"||s.arrayOk===!0)&&!(t[c-1]==="colorbar"&&(f==="ticktext"||f==="tickvals"));v&&l(n,0,"")}function l(s,f,u){var c=s[t[f]],v=u+t[f];if(f===t.length-1)mse(c)&&r.push(i+v);else if(a[f]){if(Array.isArray(c))for(var d=0;d=i.length)return!1;if(e.dimensions===2){if(t++,r.length===t)return e;var o=r[t];if(!v2(o))return!1;e=i[n][o]}else e=i[n]}else e=i}}return e}function v2(e){return e===Math.round(e)&&e>=0}function xse(e){var r,t;r=zl.modules[e]._module,t=r.basePlotModule;var a={};a.type=null;var n=Rs({},h2),i=Rs({},r.attributes);fi.crawl(i,function(s,f,u,c,v){d2(n,v).set(void 0),s===void 0&&d2(i,v).set(void 0)}),Rs(a,n),zl.traceIs(e,"noOpacity")&&delete a.opacity,zl.traceIs(e,"showLegend")||(delete a.showlegend,delete a.legendgroup),zl.traceIs(e,"noHover")&&(delete a.hoverinfo,delete a.hoverlabel),r.selectPoints||delete a.selectedpoints,Rs(a,i),t.attributes&&Rs(a,t.attributes),a.type=e;var o={meta:r.meta||{},categories:r.categories||{},animatable:!!r.animatable,type:e,attributes:hd(a)};if(r.layoutAttributes){var l={};Rs(l,r.layoutAttributes),o.layoutAttributes=hd(l)}return r.animatable||fi.crawl(o,function(s){fi.isValObject(s)&&"anim"in s&&delete s.anim}),o}function _se(){var e={},r,t;Rs(e,s4);for(r in zl.subplotsRegistry)if(t=zl.subplotsRegistry[r],!!t.layoutAttributes)if(Array.isArray(t.attr))for(var a=0;a{"use strict";var pd=Ur(),Ese=Cs(),Nc="templateitemname",c4={name:{valType:"string",editType:"none"}};c4[Nc]={valType:"string",editType:"calc"};A0.templatedArray=function(e,r){return r._isLinkedToArray=e,r.name=c4.name,r[Nc]=c4[Nc],r};A0.traceTemplater=function(e){var r={},t,a;for(t in e)a=e[t],Array.isArray(a)&&a.length&&(r[t]=0);function n(i){t=pd.coerce(i,{},Ese,"type");var o={type:t,_template:null};if(t in r){a=e[t];var l=r[t]%a.length;r[t]++,o._template=a[l]}return o}return{newTrace:n}};A0.newContainer=function(e,r,t){var a=e._template,n=a&&(a[r]||t&&a[t]);pd.isPlainObject(n)||(n=null);var i=e[r]={_template:n};return i};A0.arrayTemplater=function(e,r,t){var a=e._template,n=a&&a[PC(r)],i=a&&a[r];(!Array.isArray(i)||!i.length)&&(i=[]);var o={};function l(f){var u={name:f.name,_input:f},c=u[Nc]=f[Nc];if(!RC(c))return u._template=n,u;for(var v=0;v=a&&(t._input||{})._templateitemname;i&&(n=a);var o=r+"["+n+"]",l;function s(){l={},i&&(l[o]={},l[o][Nc]=i)}s();function f(d,p){l[d]=p}function u(d,p){i?pd.nestedProperty(l[o],d).set(p):l[o+"."+d]=p}function c(){var d=l;return s(),d}function v(d,p){d&&u(d,p);var y=c();for(var m in y)pd.nestedProperty(e,m).set(y[m])}return{modifyBase:f,modifyItem:u,getUpdateObj:c,applyUpdate:v}}});var qi=P((mCe,NC)=>{"use strict";var em=Qh().counter;NC.exports={idRegex:{x:em("x","( domain)?"),y:em("y","( domain)?")},attrRegex:em("[xy]axis"),xAxisMatch:em("xaxis"),yAxisMatch:em("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var kn=P(Zo=>{"use strict";var kse=Bt(),v4=qi();Zo.id2name=function(r){if(!(typeof r!="string"||!r.match(v4.AX_ID_PATTERN))){var t=r.split(" ")[0].slice(1);return t==="1"&&(t=""),r.charAt(0)+"axis"+t}};Zo.name2id=function(r){if(r.match(v4.AX_NAME_PATTERN)){var t=r.slice(5);return t==="1"&&(t=""),r.charAt(0)+t}};Zo.cleanId=function(r,t,a){var n=/( domain)$/.test(r);if(!(typeof r!="string"||!r.match(v4.AX_ID_PATTERN))&&!(t&&r.charAt(0)!==t)&&!(n&&!a)){var i=r.split(" ")[0].slice(1).replace(/^0+/,"");return i==="1"&&(i=""),r.charAt(0)+i+(n&&a?" domain":"")}};Zo.list=function(e,r,t){var a=e._fullLayout;if(!a)return[];var n=Zo.listIds(e,r),i=new Array(n.length),o;for(o=0;oa?1:-1:+(e.slice(1)||1)-+(r.slice(1)||1)};Zo.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function IC(e,r){if(r&&r.length){for(var t=0;t{"use strict";function Cse(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".outline-controllers").remove()}function Lse(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}OC.exports={clearOutlineControllers:Cse,clearOutline:Lse}});var m2=P((bCe,BC)=>{"use strict";BC.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var rm=P(g2=>{"use strict";var y2=Bt(),xCe=qi().SUBPLOT_PATTERN;g2.getSubplotCalcData=function(e,r,t){var a=y2.subplotsRegistry[r];if(!a)return[];for(var n=a.attr,i=[],o=0;o{"use strict";var Dse=Bt(),md=Ur();T0.manageCommandObserver=function(e,r,t,a){var n={},i=!0;r&&r._commandObserver&&(n=r._commandObserver),n.cache||(n.cache={}),n.lookupTable={};var o=T0.hasSimpleAPICommandBindings(e,t,n.lookupTable);if(r&&r._commandObserver){if(o)return n;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,n}if(o){zC(e,o,n.cache),n.check=function(){if(i){var u=zC(e,o,n.cache);return u.changed&&a&&n.lookupTable[u.value]!==void 0&&(n.disable(),Promise.resolve(a({value:u.value,type:o.type,prop:o.prop,traces:o.traces,index:n.lookupTable[u.value]})).then(n.enable,n.enable)),u.changed}};for(var l=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],s=0;s0?".":"")+n;md.isPlainObject(i)?h4(i,r,o,a+1):r(o,n,i)}})}});var xi=P((ACe,aL)=>{"use strict";var JC=da(),qse=jh().timeFormatLocale,Rse=w5().formatLocale,tm=ba(),Pse=A5(),ka=Bt(),$C=dd(),Nse=Xa(),Mt=Ur(),QC=ha(),VC=Kn().BADNUM,Jo=kn(),Ise=Ic().clearOutline,Ose=m2(),d4=Y1(),Bse=l4(),zse=rm().getModuleCalcData,YC=Mt.relinkPrivateKeys,M0=Mt._,mt=aL.exports={};Mt.extendFlat(mt,ka);mt.attributes=Cs();mt.attributes.type.values=mt.allTypes;mt.fontAttrs=Gi();mt.layoutAttributes=ad();var x2=HC();mt.executeAPICommand=x2.executeAPICommand;mt.computeAPICommandBindings=x2.computeAPICommandBindings;mt.manageCommandObserver=x2.manageCommandObserver;mt.hasSimpleAPICommandBindings=x2.hasSimpleAPICommandBindings;mt.redrawText=function(e){return e=Mt.getGraphDiv(e),new Promise(function(r){setTimeout(function(){e._fullLayout&&(ka.getComponentMethod("annotations","draw")(e),ka.getComponentMethod("legend","draw")(e),ka.getComponentMethod("colorbar","draw")(e),r(mt.previousPromises(e)))},300)})};mt.resize=function(e){e=Mt.getGraphDiv(e);var r,t=new Promise(function(a,n){(!e||Mt.isHidden(e))&&n(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(r=e._resolveResize),e._resolveResize=a,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||Mt.isHidden(e)){a(e);return}delete e.layout.width,delete e.layout.height;var i=e.changed;e.autoplay=!0,ka.call("relayout",e,{autosize:!0}).then(function(){e.changed=i,e._resolveResize===a&&(delete e._resolveResize,a(e))})},100)});return r&&r(t),t};mt.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};mt.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var r=e._fullLayout,t=Mt.ensureSingle(r._paper,"text","js-plot-link-container",function(s){s.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:QC.defaultLine,"pointer-events":"all"}).each(function(){var f=JC.select(this);f.append("tspan").classed("js-link-to-tool",!0),f.append("tspan").classed("js-link-spacer",!0),f.append("tspan").classed("js-sourcelinks",!0)})}),a=t.node(),n={y:r._paper.attr("height")-9};document.body.contains(a)&&a.getComputedTextLength()>=r.width-20?(n["text-anchor"]="start",n.x=5):(n["text-anchor"]="end",n.x=r._paper.attr("width")-7),t.attr(n);var i=t.select(".js-link-to-tool"),o=t.select(".js-link-spacer"),l=t.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&Gse(e,i),o.text(i.text()&&l.text()?" - ":"")}};function Gse(e,r){r.text("");var t=r.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)t.on("click",function(){mt.sendDataToCloud(e)});else{var a=window.location.pathname.split("/"),n=window.location.search;t.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+a[2].split(".")[0]+"/"+a[1]+n})}}mt.sendDataToCloud=function(e){var r=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(r){e.emit("plotly_beforeexport");var t=JC.select(e).append("div").attr("id","hiddenform").style("display","none"),a=t.append("form").attr({action:r+"/external",method:"post",target:"_blank"}),n=a.append("input").attr({type:"text",name:"data"});return n.node().value=mt.graphJson(e,!1,"keepdata"),a.node().submit(),t.remove(),e.emit("plotly_afterexport"),!1}};var Use=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],Hse=["year","month","dayMonth","dayMonthYear"];mt.supplyDefaults=function(e,r){var t=r&&r.skipUpdateCalc,a=e._fullLayout||{};if(a._skipDefaults){delete a._skipDefaults;return}var n=e._fullLayout={},i=e.layout||{},o=e._fullData||[],l=e._fullData=[],s=e.data||[],f=e.calcdata||[],u=e._context||{},c;e._transitionData||mt.createTransitionData(e),n._dfltTitle={plot:M0(e,"Click to enter Plot title"),subtitle:M0(e,"Click to enter Plot subtitle"),x:M0(e,"Click to enter X axis title"),y:M0(e,"Click to enter Y axis title"),colorbar:M0(e,"Click to enter Colorscale title"),annotation:M0(e,"new text")},n._traceWord=M0(e,"trace");var v=WC(e,Use);if(n._mapboxAccessToken=u.mapboxAccessToken,a._initialAutoSizeIsDone){var d=a.width,p=a.height;mt.supplyLayoutGlobalDefaults(i,n,v),i.width||(n.width=d),i.height||(n.height=p),mt.sanitizeMargins(n)}else{mt.supplyLayoutGlobalDefaults(i,n,v);var y=!i.width||!i.height,m=n.autosize,b=u.autosizable,A=y&&(m||b);A?mt.plotAutoSize(e,i,n):y&&mt.sanitizeMargins(n),!m&&y&&(i.width=n.width,i.height=n.height)}n._d3locale=Wse(v,n.separators),n._extraFormat=WC(e,Hse),n._initialAutoSizeIsDone=!0,n._dataLength=s.length,n._modules=[],n._visibleModules=[],n._basePlotModules=[];var _=n._subplots=Yse(),x=n._splomAxes={x:{},y:{}},T=n._splomSubplots={};n._splomGridDflt={},n._scatterStackOpts={},n._firstScatter={},n._alignmentOpts={},n._colorAxes={},n._requestRangeslider={},n._traceUids=Vse(o,s),mt.supplyDataDefaults(s,l,i,n);var E=Object.keys(x.x),S=Object.keys(x.y);if(E.length>1&&S.length>1){for(ka.getComponentMethod("grid","sizeDefaults")(i,n),c=0;c15&&S.length>15&&n.shapes.length===0&&n.images.length===0,mt.linkSubplots(l,n,o,a),mt.cleanPlot(l,n,o,a);var q=!!(a._has&&a._has("cartesian")),H=!!(n._has&&n._has("cartesian")),j=q,le=H;j&&!le?a._bgLayer.remove():le&&!j&&(n._shouldCreateBgLayer=!0),a._zoomlayer&&!e._dragging&&Ise({_fullLayout:a}),jse(l,n),YC(n,a),ka.getComponentMethod("colorscale","crossTraceDefaults")(l,n),n._preGUI||(n._preGUI={}),n._tracePreGUI||(n._tracePreGUI={});var te=n._tracePreGUI,Q={},J;for(J in te)Q[J]="old";for(c=0;c0){var u=1-2*i;o=Math.round(u*o),l=Math.round(u*l)}}var c=mt.layoutAttributes.width.min,v=mt.layoutAttributes.height.min;o1,p=!t.height&&Math.abs(a.height-l)>1;(p||d)&&(d&&(a.width=o),p&&(a.height=l)),r._initialAutoSize||(r._initialAutoSize={width:o,height:l}),mt.sanitizeMargins(a)};mt.supplyLayoutModuleDefaults=function(e,r,t,a){var n=ka.componentsRegistry,i=r._basePlotModules,o,l,s,f=ka.subplotsRegistry.cartesian;for(o in n)s=n[o],s.includeBasePlot&&s.includeBasePlot(e,r);i.length||i.push(f),r._has("cartesian")&&(ka.getComponentMethod("grid","contentDefaults")(e,r),f.finalizeSubplots(e,r));for(var u in r._subplots)r._subplots[u].sort(Mt.subplotSort);for(l=0;l1&&(t.l/=m,t.r/=m)}if(v){var b=(t.t+t.b)/v;b>1&&(t.t/=b,t.b/=b)}var A=t.xl!==void 0?t.xl:t.x,_=t.xr!==void 0?t.xr:t.x,x=t.yt!==void 0?t.yt:t.y,T=t.yb!==void 0?t.yb:t.y;d[r]={l:{val:A,size:t.l+y},r:{val:_,size:t.r+y},b:{val:T,size:t.b+y},t:{val:x,size:t.t+y}},p[r]=1}if(!a._replotting)return mt.doAutoMargin(e)}};function Zse(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var r=Jo.list(e,"",!0);for(var t in r)if(r[t].autoshift||r[t].shift)return!0;return!1}mt.doAutoMargin=function(e){var r=e._fullLayout,t=r.width,a=r.height;r._size||(r._size={}),KC(r);var n=r._size,i=r.margin,o={t:0,b:0,l:0,r:0},l=Mt.extendFlat({},n),s=i.l,f=i.r,u=i.t,c=i.b,v=r._pushmargin,d=r._pushmarginIds,p=r.minreducedwidth,y=r.minreducedheight;if(i.autoexpand!==!1){for(var m in v)d[m]||delete v[m];var b=e._fullLayout._reservedMargin;for(var A in b)for(var _ in b[A]){var x=b[A][_];o[_]=Math.max(o[_],x)}v.base={l:{val:0,size:s},r:{val:1,size:f},t:{val:1,size:u},b:{val:0,size:c}};for(var T in o){var E=0;for(var S in v)S!=="base"&&tm(v[S][T].size)&&(E=v[S][T].size>E?v[S][T].size:E);var k=Math.max(0,i[T]-E);o[T]=Math.max(0,o[T]-k)}for(var F in v){var I=v[F].l||{},O=v[F].b||{},q=I.val,H=I.size,j=O.val,le=O.size,te=t-o.r-o.l,Q=a-o.t-o.b;for(var J in v){if(tm(H)&&v[J].r){var Z=v[J].r.val,ae=v[J].r.size;if(Z>q){var ue=(H*Z+(ae-te)*q)/(Z-q),Le=(ae*(1-q)+(H-te)*(1-Z))/(Z-q);ue+Le>s+f&&(s=ue,f=Le)}}if(tm(le)&&v[J].t){var Be=v[J].t.val,Ee=v[J].t.size;if(Be>j){var Xe=(le*Be+(Ee-Q)*j)/(Be-j),Ae=(Ee*(1-j)+(le-Q)*(1-Be))/(Be-j);Xe+Ae>c+u&&(c=Xe,u=Ae)}}}}}var rr=Mt.constrain(t-i.l-i.r,eL,p),ze=Mt.constrain(a-i.t-i.b,rL,y),We=Math.max(0,t-rr),$e=Math.max(0,a-ze);if(We){var Ue=(s+f)/We;Ue>1&&(s/=Ue,f/=Ue)}if($e){var ee=(c+u)/$e;ee>1&&(c/=ee,u/=ee)}if(n.l=Math.round(s)+o.l,n.r=Math.round(f)+o.r,n.t=Math.round(u)+o.t,n.b=Math.round(c)+o.b,n.p=Math.round(i.pad),n.w=Math.round(t)-n.l-n.r,n.h=Math.round(a)-n.t-n.b,!r._replotting&&(mt.didMarginChange(l,n)||Zse(e))){"_redrawFromAutoMarginCount"in r?r._redrawFromAutoMarginCount++:r._redrawFromAutoMarginCount=1;var de=3*(1+Object.keys(d).length);if(r._redrawFromAutoMarginCount1)return!0}return!1};mt.graphJson=function(e,r,t,a,n,i){(n&&r&&!e._fullData||n&&!r&&!e._fullLayout)&&mt.supplyDefaults(e);var o=n?e._fullData:e.data,l=n?e._fullLayout:e.layout,s=(e._transitionData||{})._frames;function f(v,d){if(typeof v=="function")return d?"_function_":null;if(Mt.isPlainObject(v)){var p={},y;return Object.keys(v).sort().forEach(function(_){if(["_","["].indexOf(_.charAt(0))===-1){if(typeof v[_]=="function"){d&&(p[_]="_function");return}if(t==="keepdata"){if(_.slice(-3)==="src")return}else if(t==="keepstream"){if(y=v[_+"src"],typeof y=="string"&&y.indexOf(":")>0&&!Mt.isPlainObject(v.stream))return}else if(t!=="keepall"&&(y=v[_+"src"],typeof y=="string"&&y.indexOf(":")>0))return;p[_]=f(v[_],d)}}),p}var m=Array.isArray(v),b=Mt.isTypedArray(v);if((m||b)&&v.dtype&&v.shape){var A=v.bdata;return f({dtype:v.dtype,shape:v.shape,bdata:Mt.isArrayBuffer(A)?Pse.encode(A):A},d)}return m?v.map(function(_){return f(_,d)}):b?Mt.simpleMap(v,Mt.identity):Mt.isJSDate(v)?Mt.ms2DateTimeLocal(+v):v}var u={data:(o||[]).map(function(v){var d=f(v);return r&&delete d.fit,d})};if(!r&&(u.layout=f(l),n)){var c=l._size;u.layout.computed={margin:{b:c.b,l:c.l,r:c.r,t:c.t}}}return s&&(u.frames=f(s)),i&&(u.config=f(e._context,!0)),a==="object"?u:JSON.stringify(u)};mt.modifyFrames=function(e,r){var t,a,n,i=e._transitionData._frames,o=e._transitionData._frameHash;for(t=0;t0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){a=!0}),t.redraw&&e._transitionData._interruptCallbacks.push(function(){return ka.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var v=0,d=0;function p(){return v++,function(){d++,!a&&d===v&&l(c)}}t.runFn(p),setTimeout(p())})}function l(c){if(e._transitionData)return i(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(t.redraw)return ka.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(c)}function s(){if(e._transitionData)return e._transitioning=!1,n(e._transitionData._interruptCallbacks)}var f=[mt.previousPromises,s,t.prepareFn,mt.rehover,mt.reselect,o],u=Mt.syncOrAsync(f,e);return(!u||!u.then)&&(u=Promise.resolve()),u.then(function(){return e})}mt.doCalcdata=function(e,r){var t=Jo.list(e),a=e._fullData,n=e._fullLayout,i,o,l,s,f=new Array(a.length),u=(e.calcdata||[]).slice();for(e.calcdata=f,n._numBoxes=0,n._numViolins=0,n._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,n._piecolormap={},n._sunburstcolormap={},n._treemapcolormap={},n._iciclecolormap={},n._funnelareacolormap={},l=0;l=0;s--)if(T[s].enabled){i._indexToPoints=T[s]._indexToPoints;break}o&&o.calc&&(x=o.calc(e,i))}(!Array.isArray(x)||!x[0])&&(x=[{x:VC,y:VC}]),x[0].t||(x[0].t={}),x[0].trace=i,f[A]=x}}for(XC(t,a,n),l=0;l{"use strict";S0.xmlns="http://www.w3.org/2000/xmlns/";S0.svg="http://www.w3.org/2000/svg";S0.xlink="http://www.w3.org/1999/xlink";S0.svgAttrs={xmlns:S0.svg,"xmlns:xlink":S0.xlink}});var ho=P((MCe,nL)=>{"use strict";nL.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var po=P(Gl=>{"use strict";var ei=da(),ku=Ur(),Kse=ku.strTranslate,p4=Oc(),efe=ho().LINE_SPACING,rfe=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;Gl.convertToTspans=function(e,r,t){var a=e.text(),n=!e.attr("data-notex")&&r&&r._context.typesetMath&&typeof MathJax!="undefined"&&a.match(rfe),i=ei.select(e.node().parentNode);if(i.empty())return;var o=e.attr("class")?e.attr("class").split(" ")[0]:"text";o+="-math",i.selectAll("svg."+o).remove(),i.selectAll("g."+o+"-group").remove(),e.style("display",null).attr({"data-unformatted":a,"data-math":"N"});function l(){i.empty()||(o=e.attr("class")+"-math",i.select("svg."+o).remove()),e.text("").style("white-space","pre");var s=dfe(e.node(),a);s&&e.style("pointer-events","all"),Gl.positionText(e),t&&t.call(e)}return n?(r&&r._promises||[]).push(new Promise(function(s){e.style("display","none");var f=parseInt(e.node().style.fontSize,10),u={fontSize:f};ife(n[2],u,function(c,v,d){i.selectAll("svg."+o).remove(),i.selectAll("g."+o+"-group").remove();var p=c&&c.select("svg");if(!p||!p.node()){l(),s();return}var y=i.append("g").classed(o+"-group",!0).attr({"pointer-events":"none","data-unformatted":a,"data-math":"Y"});y.node().appendChild(p.node()),v&&v.node()&&p.node().insertBefore(v.node().cloneNode(!0),p.node().firstChild);var m=d.width,b=d.height;p.attr({class:o,height:b,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var A=e.node().style.fill||"black",_=p.select("g");_.attr({fill:A,stroke:A});var x=_.node().getBoundingClientRect(),T=x.width,E=x.height;(T>m||E>b)&&(p.style("overflow","hidden"),x=p.node().getBoundingClientRect(),T=x.width,E=x.height);var S=+e.attr("x"),k=+e.attr("y"),F=f||e.node().getBoundingClientRect().height,I=-F/4;if(o[0]==="y")y.attr({transform:"rotate("+[-90,S,k]+")"+Kse(-T/2,I-E/2)});else if(o[0]==="l")k=I-E/2;else if(o[0]==="a"&&o.indexOf("atitle")!==0)S=0,k=I;else{var O=e.attr("text-anchor");S=S-T*(O==="middle"?.5:O==="end"?1:0),k=k+I-E/2}p.attr({x:S,y:k}),t&&t.call(e,y),s(y)})})):l(),e};var tfe=/(<|<|<)/g,afe=/(>|>|>)/g;function nfe(e){return e.replace(tfe,"\\lt ").replace(afe,"\\gt ")}var iL=[["$","$"],["\\(","\\)"]];function ife(e,r,t){var a=parseInt((MathJax.version||"").split(".")[0]);if(a!==2&&a!==3){ku.warn("No MathJax version:",MathJax.version);return}var n,i,o,l,s=function(){return i=ku.extendDeepAll({},MathJax.Hub.config),o=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:iL},displayAlign:"left"})},f=function(){i=ku.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=iL},u=function(){if(n=MathJax.Hub.config.menuSettings.renderer,n!=="SVG")return MathJax.Hub.setRenderer("SVG")},c=function(){n=MathJax.config.startup.output,n!=="svg"&&(MathJax.config.startup.output="svg")},v=function(){var A="math-output-"+ku.randstr({},64);l=ei.select("body").append("div").attr({id:A}).style({visibility:"hidden",position:"absolute","font-size":r.fontSize+"px"}).text(nfe(e));var _=l.node();return a===2?MathJax.Hub.Typeset(_):MathJax.typeset([_])},d=function(){var A=l.select(a===2?".MathJax_SVG":".MathJax"),_=!A.empty()&&l.select("svg").node();if(!_)ku.log("There was an error in the tex syntax.",e),t();else{var x=_.getBoundingClientRect(),T;a===2?T=ei.select("body").select("#MathJax_SVG_glyphs"):T=A.select("defs"),t(A,T,x)}l.remove()},p=function(){if(n!=="SVG")return MathJax.Hub.setRenderer(n)},y=function(){n!=="svg"&&(MathJax.config.startup.output=n)},m=function(){return o!==void 0&&(MathJax.Hub.processSectionDelay=o),MathJax.Hub.Config(i)},b=function(){MathJax.config=i};a===2?MathJax.Hub.Queue(s,u,v,d,p,m):a===3&&(f(),c(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){v(),d(),y(),b()}))}var fL={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},ofe={sub:"0.3em",sup:"-0.6em"},lfe={sub:"-0.21em",sup:"0.42em"},oL="\u200B",lL=["http:","https:","mailto:","",void 0,":"],uL=Gl.NEWLINES=/(\r\n?|\n)/g,y4=/(<[^<>]*>)/,g4=/<(\/?)([^ >]*)(\s+(.*))?>/i,sfe=//i;Gl.BR_TAG_ALL=//gi;var cL=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,vL=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,hL=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,ffe=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function E0(e,r){if(!e)return null;var t=e.match(r),a=t&&(t[3]||t[4]);return a&&_2(a)}var ufe=/(^|;)\s*color:/;Gl.plainText=function(e,r){r=r||{};for(var t=r.len!==void 0&&r.len!==-1?r.len:1/0,a=r.allowedTags!==void 0?r.allowedTags:["br"],n="...",i=n.length,o=e.split(y4),l=[],s="",f=0,u=0;ui?l.push(c.slice(0,Math.max(0,y-i))+n):l.push(c.slice(0,y));break}s=""}}return l.join("")};var cfe={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},vfe=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function _2(e){return e.replace(vfe,function(r,t){var a;return t.charAt(0)==="#"?a=hfe(t.charAt(1)==="x"?parseInt(t.slice(2),16):parseInt(t.slice(1),10)):a=cfe[t],a||r})}Gl.convertEntities=_2;function hfe(e){if(!(e>1114111)){var r=String.fromCodePoint;if(r)return r(e);var t=String.fromCharCode;return e<=65535?t(e):t((e>>10)+55232,e%1024+56320)}}function dfe(e,r){r=r.replace(uL," ");var t=!1,a=[],n,i=-1;function o(){i++;var E=document.createElementNS(p4.svg,"tspan");ei.select(E).attr({class:"line",dy:i*efe+"em"}),e.appendChild(E),n=E;var S=a;if(a=[{node:E}],S.length>1)for(var k=1;k.",r);return}var S=a.pop();E!==S.type&&ku.log("Start tag <"+S.type+"> doesnt match end tag <"+E+">. Pretending it did match.",r),n=a[a.length-1].node}var u=sfe.test(r);u?o():(n=e,a=[{node:e}]);for(var c=r.split(y4),v=0;v{"use strict";var pfe=da(),A2=ks(),nm=ba(),w2=Ur(),pL=ha(),mfe=p0().isValid;function yfe(e,r,t){var a=r?w2.nestedProperty(e,r).get()||{}:e,n=a[t||"color"];n&&n._inputArray&&(n=n._inputArray);var i=!1;if(w2.isArrayOrTypedArray(n)){for(var o=0;o=0;a--,n++){var i=e[a];t[n]=[1-i[0],i[1]]}return t}function _L(e,r){r=r||{};for(var t=e.domain,a=e.range,n=a.length,i=new Array(n),o=0;o{"use strict";var AL=z5(),bfe=AL.FORMAT_LINK,xfe=AL.DATE_FORMAT_LINK;function _fe(e,r){return{valType:"string",dflt:"",editType:"none",description:(r?b4:TL)("hover text",e)+["By default the values are formatted using "+(r?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function b4(e,r){return["Sets the "+e+" formatting rule"+(r?"for `"+r+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+bfe+"."].join(" ")}function TL(e,r){return b4(e,r)+[" And for dates see: "+xfe+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}ML.exports={axisHoverFormat:_fe,descriptionOnlyNumbers:b4,descriptionWithDates:TL}});var Ul=P((LCe,UL)=>{"use strict";var SL=Gi(),yd=Af(),GL=kc().dash,_4=zn().extendFlat,EL=Xa().templatedArray,CCe=td().templateFormatStringDescription,kL=im().descriptionWithDates,wfe=Kn().ONEDAY,Mf=qi(),Afe=Mf.HOUR_PATTERN,Tfe=Mf.WEEKDAY_PATTERN,x4={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},Mfe=_4({},x4,{values:x4.values.slice().concat(["sync"])});function CL(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var LL={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},DL={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},FL={valType:"data_array",editType:"ticks"},qL={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function RL(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=5),r}function PL(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var NL={valType:"color",dflt:yd.defaultLine,editType:"ticks"},IL={valType:"color",dflt:yd.lightLine,editType:"ticks"};function OL(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var BL=_4({},GL,{editType:"ticks"}),zL={valType:"boolean",editType:"ticks"};UL.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:yd.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:SL({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[Mf.idRegex.x.toString(),Mf.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[Mf.idRegex.x.toString(),Mf.idRegex.y.toString()],editType:"calc"},rangebreaks:EL("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[Tfe,Afe,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:wfe},editType:"calc"}),tickmode:Mfe,nticks:CL(),tick0:LL,dtick:DL,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:FL,ticktext:{valType:"data_array",editType:"ticks"},ticks:qL,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:RL(),tickwidth:PL(),tickcolor:NL,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:_4({},GL,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:SL({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:kL("tick label")},tickformatstops:EL("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:kL("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:yd.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:zL,gridcolor:IL,gridwidth:OL(),griddash:BL,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:yd.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:yd.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",Mf.idRegex.x.toString(),Mf.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",Mf.idRegex.x.toString(),Mf.idRegex.y.toString()],editType:"plot"},minor:{tickmode:x4,nticks:CL("minor"),tick0:LL,dtick:DL,tickvals:FL,ticks:qL,ticklen:RL("minor"),tickwidth:PL("minor"),tickcolor:NL,gridcolor:IL,gridwidth:OL("minor"),griddash:BL,showgrid:zL,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var T2=P((DCe,YL)=>{"use strict";var mn=Ul(),HL=Gi(),VL=zn().extendFlat,Sfe=Ds().overrideAll;YL.exports=Sfe({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:mn.linecolor,outlinewidth:mn.linewidth,bordercolor:mn.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:mn.minor.tickmode,nticks:mn.nticks,tick0:mn.tick0,dtick:mn.dtick,tickvals:mn.tickvals,ticktext:mn.ticktext,ticks:VL({},mn.ticks,{dflt:""}),ticklabeloverflow:VL({},mn.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:mn.ticklen,tickwidth:mn.tickwidth,tickcolor:mn.tickcolor,ticklabelstep:mn.ticklabelstep,showticklabels:mn.showticklabels,labelalias:mn.labelalias,tickfont:HL({}),tickangle:mn.tickangle,tickformat:mn.tickformat,tickformatstops:mn.tickformatstops,tickprefix:mn.tickprefix,showtickprefix:mn.showtickprefix,ticksuffix:mn.ticksuffix,showticksuffix:mn.showticksuffix,separatethousands:mn.separatethousands,exponentformat:mn.exponentformat,minexponent:mn.minexponent,showexponent:mn.showexponent,title:{text:{valType:"string"},font:HL({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var k0=P((qCe,jL)=>{"use strict";var Efe=T2(),kfe=Qh().counter,Cfe=r2(),WL=p0().scales,FCe=Cfe(WL);function M2(e){return"`"+e+"`"}jL.exports=function(r,t){r=r||"",t=t||{};var a=t.cLetter||"c",n="onlyIfNumerical"in t?t.onlyIfNumerical:!!r,i="noScale"in t?t.noScale:r==="marker.line",o="showScaleDflt"in t?t.showScaleDflt:a==="z",l=typeof t.colorscaleDflt=="string"?WL[t.colorscaleDflt]:null,s=t.editTypeOverride||"",f=r?r+".":"",u,c;"colorAttr"in t?(u=t.colorAttr,c=t.colorAttr):(u={z:"z",c:"color"}[a],c="in "+M2(f+u));var v=n?" Has an effect only if "+c+" is set to a numerical array.":"",d=a+"auto",p=a+"min",y=a+"max",m=a+"mid",b=M2(f+d),A=M2(f+p),_=M2(f+y),x=A+" and "+_,T={};T[p]=T[y]=void 0;var E={};E[d]=!1;var S={};return u==="color"&&(S.color={valType:"color",arrayOk:!0,editType:s||"style"},t.anim&&(S.color.anim=!0)),S[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:T},S[p]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:E},S[y]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:E},S[m]={valType:"number",dflt:null,editType:"calc",impliedEdits:T},S.colorscale={valType:"colorscale",editType:"calc",dflt:l,impliedEdits:{autocolorscale:!1}},S.autocolorscale={valType:"boolean",dflt:t.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},S.reversescale={valType:"boolean",dflt:!1,editType:"plot"},i||(S.showscale={valType:"boolean",dflt:o,editType:"calc"},S.colorbar=Efe),t.noColorAxis||(S.coloraxis={valType:"subplotid",regex:kfe("coloraxis"),dflt:null,editType:"calc"}),S}});var A4=P((RCe,XL)=>{"use strict";var Lfe=zn().extendFlat,Dfe=k0(),w4=p0().scales;XL.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:w4.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:w4.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:w4.RdBu,editType:"calc"}},coloraxis:Lfe({_isSubplotObj:!0,editType:"calc"},Dfe("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var T4=P((PCe,ZL)=>{"use strict";var Ffe=Ur();ZL.exports=function(r){return Ffe.isPlainObject(r.colorbar)}});var E4=P(S4=>{"use strict";var M4=ba(),JL=Ur(),$L=Kn(),qfe=$L.ONEDAY,Rfe=$L.ONEWEEK;S4.dtick=function(e,r){var t=r==="log",a=r==="date",n=r==="category",i=a?qfe:1;if(!e)return i;if(M4(e))return e=Number(e),e<=0?i:n?Math.max(1,Math.round(e)):a?Math.max(.1,e):e;if(typeof e!="string"||!(a||t))return i;var o=e.charAt(0),l=e.slice(1);return l=M4(l)?Number(l):0,l<=0||!(a&&o==="M"&&l===Math.round(l)||t&&o==="L"||t&&o==="D"&&(l===1||l===2))?i:e};S4.tick0=function(e,r,t,a){if(r==="date")return JL.cleanDate(e,JL.dateTick0(t,a%Rfe===0?1:0));if(!(a==="D1"||a==="D2"))return M4(e)?Number(e):0}});var k4=P((ICe,KL)=>{"use strict";var QL=E4(),Pfe=Ur().isArrayOrTypedArray,Nfe=Yo().isTypedArraySpec,Ife=Yo().decodeTypedArraySpec;KL.exports=function(r,t,a,n,i){i||(i={});var o=i.isMinor,l=o?r.minor||{}:r,s=o?t.minor:t,f=o?"minor.":"";function u(A){var _=l[A];return Nfe(_)&&(_=Ife(_)),_!==void 0?_:(s._template||{})[A]}var c=u("tick0"),v=u("dtick"),d=u("tickvals"),p=Pfe(d)?"array":v?"linear":"auto",y=a(f+"tickmode",p);if(y==="auto"||y==="sync")a(f+"nticks");else if(y==="linear"){var m=s.dtick=QL.dtick(v,n);s.tick0=QL.tick0(c,n,t.calendar,m)}else if(n!=="multicategory"){var b=a(f+"tickvals");b===void 0?s.tickmode="auto":o||a("ticktext")}}});var L4=P((OCe,rD)=>{"use strict";var C4=Ur(),eD=Ul();rD.exports=function(r,t,a,n){var i=n.isMinor,o=i?r.minor||{}:r,l=i?t.minor:t,s=i?eD.minor:eD,f=i?"minor.":"",u=C4.coerce2(o,l,s,"ticklen",i?(t.ticklen||5)*.6:void 0),c=C4.coerce2(o,l,s,"tickwidth",i?t.tickwidth||1:void 0),v=C4.coerce2(o,l,s,"tickcolor",(i?t.tickcolor:void 0)||l.color),d=a(f+"ticks",!i&&n.outerTicks||u||c||v?"outside":"");d||(delete l.ticklen,delete l.tickwidth,delete l.tickcolor)}});var D4=P((BCe,tD)=>{"use strict";tD.exports=function(r){var t=["showexponent","showtickprefix","showticksuffix"],a=t.filter(function(i){return r[i]!==void 0}),n=function(i){return r[i]===r[a[0]]};if(a.every(n)||a.length===1)return r[a[0]]}});var gl=P((zCe,aD)=>{"use strict";var S2=Ur(),Ofe=Xa();aD.exports=function(r,t,a){var n=a.name,i=a.inclusionAttr||"visible",o=t[n],l=S2.isArrayOrTypedArray(r[n])?r[n]:[],s=t[n]=[],f=Ofe.arrayTemplater(t,n,i),u,c;for(u=0;u{"use strict";var F4=Ur(),Bfe=ha().contrast,nD=Ul(),zfe=D4(),Gfe=gl();iD.exports=function(r,t,a,n,i){i||(i={});var o=a("labelalias");F4.isPlainObject(o)||delete t.labelalias;var l=zfe(r),s=a("showticklabels");if(s){i.noTicklabelshift||a("ticklabelshift"),i.noTicklabelstandoff||a("ticklabelstandoff");var f=i.font||{},u=t.color,c=t.ticklabelposition||"",v=c.indexOf("inside")!==-1?Bfe(i.bgColor):u&&u!==nD.color.dflt?u:f.color;if(F4.coerceFont(a,"tickfont",f,{overrideDflt:{color:v}}),!i.noTicklabelstep&&n!=="multicategory"&&n!=="log"&&a("ticklabelstep"),!i.noAng){var d=a("tickangle");!i.noAutotickangles&&d==="auto"&&a("autotickangles")}if(n!=="category"){var p=a("tickformat");Gfe(r,t,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:Ufe}),t.tickformatstops.length||delete t.tickformatstops,!i.noExp&&!p&&n!=="date"&&(a("showexponent",l),a("exponentformat"),a("minexponent"),a("separatethousands"))}!i.noMinorloglabels&&n==="log"&&a("minorloglabels")}};function Ufe(e,r){function t(n,i){return F4.coerce(e,r,nD.tickformatstops,n,i)}var a=t("enabled");a&&(t("dtickrange"),t("value"))}});var R4=P((UCe,oD)=>{"use strict";var Hfe=D4();oD.exports=function(r,t,a,n,i){i||(i={});var o=i.tickSuffixDflt,l=Hfe(r),s=a("tickprefix");s&&a("showtickprefix",l);var f=a("ticksuffix",o);f&&a("showticksuffix",l)}});var P4=P((HCe,lD)=>{"use strict";var Bc=Ur(),Vfe=Xa(),Yfe=k4(),Wfe=L4(),jfe=q4(),Xfe=R4(),Zfe=T2();lD.exports=function(r,t,a){var n=Vfe.newContainer(t,"colorbar"),i=r.colorbar||{};function o(O,q){return Bc.coerce(i,n,Zfe,O,q)}var l=a.margin||{t:0,b:0,l:0,r:0},s=a.width-l.l-l.r,f=a.height-l.t-l.b,u=o("orientation"),c=u==="v",v=o("thicknessmode");o("thickness",v==="fraction"?30/(c?s:f):30);var d=o("lenmode");o("len",d==="fraction"?1:c?f:s);var p=o("yref"),y=o("xref"),m=p==="paper",b=y==="paper",A,_,x,T="left";c?(x="middle",T=b?"left":"right",A=b?1.02:1,_=.5):(x=m?"bottom":"top",T="center",A=.5,_=m?1.02:1),Bc.coerce(i,n,{x:{valType:"number",min:b?-2:0,max:b?3:1,dflt:A}},"x"),Bc.coerce(i,n,{y:{valType:"number",min:m?-2:0,max:m?3:1,dflt:_}},"y"),o("xanchor",T),o("xpad"),o("yanchor",x),o("ypad"),Bc.noneOrAll(i,n,["x","y"]),o("outlinecolor"),o("outlinewidth"),o("bordercolor"),o("borderwidth"),o("bgcolor");var E=Bc.coerce(i,n,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:c?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");o("ticklabeloverflow",E.indexOf("inside")!==-1?"hide past domain":"hide past div"),Yfe(i,n,o,"linear");var S=a.font,k={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:S};E.indexOf("inside")!==-1&&(k.bgColor="black"),Xfe(i,n,o,"linear",k),jfe(i,n,o,"linear",k),Wfe(i,n,o,"linear",k),o("title.text",a._dfltTitle.colorbar);var F=n.showticklabels?n.tickfont:S,I=Bc.extendFlat({},S,{family:F.family,size:Bc.bigFont(F.size)});Bc.coerceFont(o,"title.font",I),o("title.side",c?"top":"right")}});var gd=P((VCe,uD)=>{"use strict";var sD=ba(),I4=Ur(),Jfe=T4(),$fe=P4(),fD=p0().isValid,Qfe=Bt().traceIs;function N4(e,r){var t=r.slice(0,r.length-1);return r?I4.nestedProperty(e,t).get()||{}:e}uD.exports=function e(r,t,a,n,i){var o=i.prefix,l=i.cLetter,s="_module"in t,f=N4(r,o),u=N4(t,o),c=N4(t._template||{},o)||{},v=function(){return delete r.coloraxis,delete t.coloraxis,e(r,t,a,n,i)};if(s){var d=a._colorAxes||{},p=n(o+"coloraxis");if(p){var y=Qfe(t,"contour")&&I4.nestedProperty(t,"contours.coloring").get()||"heatmap",m=d[p];m?(m[2].push(v),m[0]!==y&&(m[0]=!1,I4.warn(["Ignoring coloraxis:",p,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[p]=[y,t,[v]];return}}var b=f[l+"min"],A=f[l+"max"],_=sD(b)&&sD(A)&&b{"use strict";var cD=Ur(),Kfe=Xa(),vD=A4(),eue=gd();hD.exports=function(r,t){function a(c,v){return cD.coerce(r,t,vD,c,v)}a("colorscale.sequential"),a("colorscale.sequentialminus"),a("colorscale.diverging");var n=t._colorAxes,i,o;function l(c,v){return cD.coerce(i,o,vD.coloraxis,c,v)}for(var s in n){var f=n[s];if(f[0])i=r[s]||{},o=Kfe.newContainer(t,s,"coloraxis"),o._name=s,eue(i,o,t,l,{prefix:"",cLetter:"c"});else{for(var u=0;u{"use strict";var rue=Ur(),tue=Ps().hasColorscale,aue=Ps().extractOpts;pD.exports=function(r,t){function a(u,c){var v=u["_"+c];v!==void 0&&(u[c]=v)}function n(u,c){var v=c.container?rue.nestedProperty(u,c.container).get():u;if(v)if(v.coloraxis)v._colorAx=t[v.coloraxis];else{var d=aue(v),p=d.auto;(p||d.min===void 0)&&a(v,c.min),(p||d.max===void 0)&&a(v,c.max),d.autocolorscale&&a(v,"colorscale")}}for(var i=0;i{"use strict";var yD=ba(),O4=Ur(),nue=Ps().extractOpts;gD.exports=function(r,t,a){var n=r._fullLayout,i=a.vals,o=a.containerStr,l=o?O4.nestedProperty(t,o).get():t,s=nue(l),f=s.auto!==!1,u=s.min,c=s.max,v=s.mid,d=function(){return O4.aggNums(Math.min,null,i)},p=function(){return O4.aggNums(Math.max,null,i)};if(u===void 0?u=d():f&&(l._colorAx&&yD(u)?u=Math.min(u,d()):u=d()),c===void 0?c=p():f&&(l._colorAx&&yD(c)?c=Math.max(c,p()):c=p()),f&&v!==void 0&&(c-v>v-u?u=v-(c-v):c-v=0?y=n.colorscale.sequential:y=n.colorscale.sequentialminus,s._sync("colorscale",y)}}});var xd=P((XCe,bD)=>{"use strict";var E2=p0(),bd=Ps();bD.exports={moduleType:"component",name:"colorscale",attributes:k0(),layoutAttributes:A4(),supplyLayoutDefaults:dD(),handleDefaults:gd(),crossTraceDefaults:mD(),calc:B4(),scales:E2.scales,defaultScale:E2.defaultScale,getScale:E2.get,isValidScale:E2.isValid,hasColorscale:bd.hasColorscale,extractOpts:bd.extractOpts,extractScale:bd.extractScale,flipScale:bd.flipScale,makeColorScaleFunc:bd.makeColorScaleFunc,makeColorScaleFuncFromTrace:bd.makeColorScaleFuncFromTrace}});var Ri=P((ZCe,_D)=>{"use strict";var xD=Ur(),iue=Yo().isTypedArraySpec;_D.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var r=e.marker;return xD.isPlainObject(r)&&(xD.isArrayOrTypedArray(r.size)||iue(r.size))}}});var z4=P((JCe,wD)=>{"use strict";var oue=ba();wD.exports=function(r,t){t||(t=2);var a=r.marker,n=a.sizeref||1,i=a.sizemin||0,o=a.sizemode==="area"?function(l){return Math.sqrt(l/n)}:function(l){return l/n};return function(l){var s=o(l/t);return oue(s)&&s>0?Math.max(s,i):0}}});var Cu=P(ro=>{"use strict";var k2=Ur();ro.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};ro.isTraceInSubplots=function(e,r){if(e.type==="splom"){for(var t=e.xaxes||[],a=e.yaxes||[],n=0;n=0&&t.index{MD.exports=cue;var G4={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},uue=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function cue(e){var r=[];return e.replace(uue,function(t,a,n){var i=a.toLowerCase();for(n=hue(n),i=="m"&&n.length>2&&(r.push([a].concat(n.splice(0,2))),i="l",a=a=="m"?"l":"L");;){if(n.length==G4[i])return n.unshift(a),r.push(n);if(n.length{"use strict";var due=om(),lt=function(e,r){return r?Math.round(e*(r=Math.pow(10,r)))/r:Math.round(e)},Xt="M0,0Z",SD=Math.sqrt(2),zc=Math.sqrt(3),U4=Math.PI,H4=Math.cos,V4=Math.sin;DD.exports={circle:{n:0,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n="M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z";return t?Jt(r,t,n):n}},square:{n:1,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")}},diamond:{n:2,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.3,2);return Jt(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"Z")}},cross:{n:3,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.4,2),n=lt(e*1.2,2);return Jt(r,t,"M"+n+","+a+"H"+a+"V"+n+"H-"+a+"V"+a+"H-"+n+"V-"+a+"H-"+a+"V-"+n+"H"+a+"V-"+a+"H"+n+"Z")}},x:{n:4,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.8/SD,2),n="l"+a+","+a,i="l"+a+",-"+a,o="l-"+a+",-"+a,l="l-"+a+","+a;return Jt(r,t,"M0,"+a+n+i+o+i+o+l+o+l+n+l+n+"Z")}},"triangle-up":{n:5,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2/zc,2),n=lt(e/2,2),i=lt(e,2);return Jt(r,t,"M-"+a+","+n+"H"+a+"L0,-"+i+"Z")}},"triangle-down":{n:6,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2/zc,2),n=lt(e/2,2),i=lt(e,2);return Jt(r,t,"M-"+a+",-"+n+"H"+a+"L0,"+i+"Z")}},"triangle-left":{n:7,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2/zc,2),n=lt(e/2,2),i=lt(e,2);return Jt(r,t,"M"+n+",-"+a+"V"+a+"L-"+i+",0Z")}},"triangle-right":{n:8,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2/zc,2),n=lt(e/2,2),i=lt(e,2);return Jt(r,t,"M-"+n+",-"+a+"V"+a+"L"+i+",0Z")}},"triangle-ne":{n:9,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.6,2),n=lt(e*1.2,2);return Jt(r,t,"M-"+n+",-"+a+"H"+a+"V"+n+"Z")}},"triangle-se":{n:10,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.6,2),n=lt(e*1.2,2);return Jt(r,t,"M"+a+",-"+n+"V"+a+"H-"+n+"Z")}},"triangle-sw":{n:11,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.6,2),n=lt(e*1.2,2);return Jt(r,t,"M"+n+","+a+"H-"+a+"V-"+n+"Z")}},"triangle-nw":{n:12,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.6,2),n=lt(e*1.2,2);return Jt(r,t,"M-"+a+","+n+"V-"+a+"H"+n+"Z")}},pentagon:{n:13,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.951,2),n=lt(e*.588,2),i=lt(-e,2),o=lt(e*-.309,2),l=lt(e*.809,2);return Jt(r,t,"M"+a+","+o+"L"+n+","+l+"H-"+n+"L-"+a+","+o+"L0,"+i+"Z")}},hexagon:{n:14,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n=lt(e/2,2),i=lt(e*zc/2,2);return Jt(r,t,"M"+i+",-"+n+"V"+n+"L0,"+a+"L-"+i+","+n+"V-"+n+"L0,-"+a+"Z")}},hexagon2:{n:15,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n=lt(e/2,2),i=lt(e*zc/2,2);return Jt(r,t,"M-"+n+","+i+"H"+n+"L"+a+",0L"+n+",-"+i+"H-"+n+"L-"+a+",0Z")}},octagon:{n:16,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.924,2),n=lt(e*.383,2);return Jt(r,t,"M-"+n+",-"+a+"H"+n+"L"+a+",-"+n+"V"+n+"L"+n+","+a+"H-"+n+"L-"+a+","+n+"V-"+n+"Z")}},star:{n:17,f:function(e,r,t){if(Zt(r))return Xt;var a=e*1.4,n=lt(a*.225,2),i=lt(a*.951,2),o=lt(a*.363,2),l=lt(a*.588,2),s=lt(-a,2),f=lt(a*-.309,2),u=lt(a*.118,2),c=lt(a*.809,2),v=lt(a*.382,2);return Jt(r,t,"M"+n+","+f+"H"+i+"L"+o+","+u+"L"+l+","+c+"L0,"+v+"L-"+l+","+c+"L-"+o+","+u+"L-"+i+","+f+"H-"+n+"L0,"+s+"Z")}},hexagram:{n:18,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.66,2),n=lt(e*.38,2),i=lt(e*.76,2);return Jt(r,t,"M-"+i+",0l-"+n+",-"+a+"h"+i+"l"+n+",-"+a+"l"+n+","+a+"h"+i+"l-"+n+","+a+"l"+n+","+a+"h-"+i+"l-"+n+","+a+"l-"+n+",-"+a+"h-"+i+"Z")}},"star-triangle-up":{n:19,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*zc*.8,2),n=lt(e*.8,2),i=lt(e*1.6,2),o=lt(e*4,2),l="A "+o+","+o+" 0 0 1 ";return Jt(r,t,"M-"+a+","+n+l+a+","+n+l+"0,-"+i+l+"-"+a+","+n+"Z")}},"star-triangle-down":{n:20,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*zc*.8,2),n=lt(e*.8,2),i=lt(e*1.6,2),o=lt(e*4,2),l="A "+o+","+o+" 0 0 1 ";return Jt(r,t,"M"+a+",-"+n+l+"-"+a+",-"+n+l+"0,"+i+l+a+",-"+n+"Z")}},"star-square":{n:21,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.1,2),n=lt(e*2,2),i="A "+n+","+n+" 0 0 1 ";return Jt(r,t,"M-"+a+",-"+a+i+"-"+a+","+a+i+a+","+a+i+a+",-"+a+i+"-"+a+",-"+a+"Z")}},"star-diamond":{n:22,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.4,2),n=lt(e*1.9,2),i="A "+n+","+n+" 0 0 1 ";return Jt(r,t,"M-"+a+",0"+i+"0,"+a+i+a+",0"+i+"0,-"+a+i+"-"+a+",0Z")}},"diamond-tall":{n:23,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*.7,2),n=lt(e*1.4,2);return Jt(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},"diamond-wide":{n:24,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.4,2),n=lt(e*.7,2);return Jt(r,t,"M0,"+n+"L"+a+",0L0,-"+n+"L-"+a+",0Z")}},hourglass:{n:25,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M"+a+","+a+"H-"+a+"L"+a+",-"+a+"H-"+a+"Z")},noDot:!0},bowtie:{n:26,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M"+a+","+a+"V-"+a+"L-"+a+","+a+"V-"+a+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n=lt(e/SD,2);return Jt(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+a+",0A"+a+","+a+" 0 1,1 0,-"+a+"A"+a+","+a+" 0 0,1 "+a+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a+"M"+a+","+a+"H-"+a+"V-"+a+"H"+a+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.3,2);return Jt(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM0,-"+a+"V"+a+"M-"+a+",0H"+a)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.3,2),n=lt(e*.65,2);return Jt(r,t,"M"+a+",0L0,"+a+"L-"+a+",0L0,-"+a+"ZM-"+n+",-"+n+"L"+n+","+n+"M-"+n+","+n+"L"+n+",-"+n)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.4,2);return Jt(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.2,2),n=lt(e*.85,2);return Jt(r,t,"M0,"+a+"V-"+a+"M"+a+",0H-"+a+"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e/2,2),n=lt(e,2);return Jt(r,t,"M"+a+","+n+"V-"+n+"M"+(a-n)+",-"+n+"V"+n+"M"+n+","+a+"H-"+n+"M-"+n+","+(a-n)+"H"+n)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.2,2),n=lt(e*1.6,2),i=lt(e*.8,2);return Jt(r,t,"M-"+a+","+i+"L0,0M"+a+","+i+"L0,0M0,-"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.2,2),n=lt(e*1.6,2),i=lt(e*.8,2);return Jt(r,t,"M-"+a+",-"+i+"L0,0M"+a+",-"+i+"L0,0M0,"+n+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.2,2),n=lt(e*1.6,2),i=lt(e*.8,2);return Jt(r,t,"M"+i+","+a+"L0,0M"+i+",-"+a+"L0,0M-"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.2,2),n=lt(e*1.6,2),i=lt(e*.8,2);return Jt(r,t,"M-"+i+","+a+"L0,0M-"+i+",-"+a+"L0,0M"+n+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.4,2);return Jt(r,t,"M"+a+",0H-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*1.4,2);return Jt(r,t,"M0,"+a+"V-"+a)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2);return Jt(r,t,"M"+a+","+a+"L-"+a+",-"+a)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n=lt(e*2,2);return Jt(r,t,"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n=lt(e*2,2);return Jt(r,t,"M0,0L-"+a+",-"+n+"H"+a+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2,2),n=lt(e,2);return Jt(r,t,"M0,0L"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2,2),n=lt(e,2);return Jt(r,t,"M0,0L-"+a+",-"+n+"V"+n+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n=lt(e*2,2);return Jt(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+","+n+"H"+a+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e,2),n=lt(e*2,2);return Jt(r,t,"M-"+a+",0H"+a+"M0,0L-"+a+",-"+n+"H"+a+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2,2),n=lt(e,2);return Jt(r,t,"M0,-"+n+"V"+n+"M0,0L"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,r,t){if(Zt(r))return Xt;var a=lt(e*2,2),n=lt(e,2);return Jt(r,t,"M0,-"+n+"V"+n+"M0,0L-"+a+",-"+n+"V"+n+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,r,t){if(Zt(r))return Xt;var a=U4/2.5,n=2*e*H4(a),i=2*e*V4(a);return Jt(r,t,"M0,0L"+-n+","+i+"L"+n+","+i+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,r,t){if(Zt(r))return Xt;var a=U4/4,n=2*e*H4(a),i=2*e*V4(a);return Jt(r,t,"M0,0L"+-n+","+i+"A "+2*e+","+2*e+" 0 0 1 "+n+","+i+"Z")},backoff:.4,noDot:!0}};function Zt(e){return e===null}var ED,kD,CD,LD;function Jt(e,r,t){if((!e||e%360===0)&&!r)return t;if(CD===e&&LD===r&&ED===t)return kD;CD=e,LD=r,ED=t;function a(m,b){var A=H4(m),_=V4(m),x=b[0],T=b[1]+(r||0);return[x*A-T*_,x*_+T*A]}for(var n=e/180*U4,i=0,o=0,l=due(t),s="",f=0;f{"use strict";var _i=da(),Ga=Ur(),pue=Ga.numberFormat,F0=ba(),J4=ks(),L2=Bt(),Ui=ha(),mue=xd(),sm=Ga.strTranslate,D2=po(),yue=Oc(),gue=ho(),bue=gue.LINE_SPACING,UD=$h().DESELECTDIM,xue=Ri(),_ue=z4(),wue=Cu().appendArrayPointValue,gt=QD.exports={};gt.font=function(e,r){var t=r.variant,a=r.style,n=r.weight,i=r.color,o=r.size,l=r.family,s=r.shadow,f=r.lineposition,u=r.textcase;l&&e.style("font-family",l),o+1&&e.style("font-size",o+"px"),i&&e.call(Ui.fill,i),n&&e.style("font-weight",n),a&&e.style("font-style",a),t&&e.style("font-variant",t),u&&e.style("text-transform",Y4(Tue(u))),s&&e.style("text-shadow",s==="auto"?D2.makeTextShadow(Ui.contrast(i)):Y4(s)),f&&e.style("text-decoration-line",Y4(Mue(f)))};function Y4(e){return e==="none"?void 0:e}var Aue={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function Tue(e){return Aue[e]}function Mue(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}gt.setPosition=function(e,r,t){e.attr("x",r).attr("y",t)};gt.setSize=function(e,r,t){e.attr("width",r).attr("height",t)};gt.setRect=function(e,r,t,a,n){e.call(gt.setPosition,r,t).call(gt.setSize,a,n)};gt.translatePoint=function(e,r,t,a){var n=t.c2p(e.x),i=a.c2p(e.y);if(F0(n)&&F0(i)&&r.node())r.node().nodeName==="text"?r.attr("x",n).attr("y",i):r.attr("transform",sm(n,i));else return!1;return!0};gt.translatePoints=function(e,r,t){e.each(function(a){var n=_i.select(this);gt.translatePoint(a,n,r,t)})};gt.hideOutsideRangePoint=function(e,r,t,a,n,i){r.attr("display",t.isPtWithinRange(e,n)&&a.isPtWithinRange(e,i)?null:"none")};gt.hideOutsideRangePoints=function(e,r){if(r._hasClipOnAxisFalse){var t=r.xaxis,a=r.yaxis;e.each(function(n){var i=n[0].trace,o=i.xcalendar,l=i.ycalendar,s=L2.traceIs(i,"bar-like")?".bartext":".point,.textpoint";e.selectAll(s).each(function(f){gt.hideOutsideRangePoint(f,_i.select(this),t,a,o,l)})})}};gt.crispRound=function(e,r,t){return!r||!F0(r)?t||0:e._context.staticPlot?r:r<1?1:Math.round(r)};gt.singleLineStyle=function(e,r,t,a,n){r.style("fill","none");var i=(((e||[])[0]||{}).trace||{}).line||{},o=t||i.width||0,l=n||i.dash||"";Ui.stroke(r,a||i.color),gt.dashLine(r,l,o)};gt.lineGroupStyle=function(e,r,t,a){e.style("fill","none").each(function(n){var i=(((n||[])[0]||{}).trace||{}).line||{},o=r||i.width||0,l=a||i.dash||"";_i.select(this).call(Ui.stroke,t||i.color).call(gt.dashLine,l,o)})};gt.dashLine=function(e,r,t){t=+t||0,r=gt.dashStyle(r,t),e.style({"stroke-dasharray":r,"stroke-width":t+"px"})};gt.dashStyle=function(e,r){r=+r||1;var t=Math.max(r,3);return e==="solid"?e="":e==="dot"?e=t+"px,"+t+"px":e==="dash"?e=3*t+"px,"+3*t+"px":e==="longdash"?e=5*t+"px,"+5*t+"px":e==="dashdot"?e=3*t+"px,"+t+"px,"+t+"px,"+t+"px":e==="longdashdot"&&(e=5*t+"px,"+2*t+"px,"+t+"px,"+2*t+"px"),e};function HD(e,r,t,a){var n=r.fillpattern,i=r.fillgradient,o=gt.getPatternAttr,l=n&&(o(n.shape,0,"")||o(n.path,0,""));if(l){var s=o(n.bgcolor,0,null),f=o(n.fgcolor,0,null),u=n.fgopacity,c=o(n.size,0,8),v=o(n.solidity,0,.3),d=r.uid;gt.pattern(e,"point",t,d,l,c,v,void 0,n.fillmode,s,f,u)}else if(i&&i.type!=="none"){var p=i.type,y="scatterfill-"+r.uid;if(a&&(y="legendfill-"+r.uid),!a&&(i.start!==void 0||i.stop!==void 0)){var m,b;p==="horizontal"?(m={x:i.start,y:0},b={x:i.stop,y:0}):p==="vertical"&&(m={x:0,y:i.start},b={x:0,y:i.stop}),m.x=r._xA.c2p(m.x===void 0?r._extremes.x.min[0].val:m.x,!0),m.y=r._yA.c2p(m.y===void 0?r._extremes.y.min[0].val:m.y,!0),b.x=r._xA.c2p(b.x===void 0?r._extremes.x.max[0].val:b.x,!0),b.y=r._yA.c2p(b.y===void 0?r._extremes.y.max[0].val:b.y,!0),e.call(WD,t,y,"linear",i.colorscale,"fill",m,b,!0,!1)}else p==="horizontal"&&(p=p+"reversed"),e.call(gt.gradient,t,y,p,i.colorscale,"fill")}else r.fillcolor&&e.call(Ui.fill,r.fillcolor)}gt.singleFillStyle=function(e,r){var t=_i.select(e.node()),a=t.data(),n=((a[0]||[])[0]||{}).trace||{};HD(e,n,r,!1)};gt.fillGroupStyle=function(e,r,t){e.style("stroke-width",0).each(function(a){var n=_i.select(this);a[0].trace&&HD(n,a[0].trace,r,t)})};var qD=FD();gt.symbolNames=[];gt.symbolFuncs=[];gt.symbolBackOffs=[];gt.symbolNeedLines={};gt.symbolNoDot={};gt.symbolNoFill={};gt.symbolList=[];Object.keys(qD).forEach(function(e){var r=qD[e],t=r.n;gt.symbolList.push(t,String(t),e,t+100,String(t+100),e+"-open"),gt.symbolNames[t]=e,gt.symbolFuncs[t]=r.f,gt.symbolBackOffs[t]=r.backoff||0,r.needLine&&(gt.symbolNeedLines[t]=!0),r.noDot?gt.symbolNoDot[t]=!0:gt.symbolList.push(t+200,String(t+200),e+"-dot",t+300,String(t+300),e+"-open-dot"),r.noFill&&(gt.symbolNoFill[t]=!0)});var Sue=gt.symbolNames.length,Eue="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";gt.symbolNumber=function(e){if(F0(e))e=+e;else if(typeof e=="string"){var r=0;e.indexOf("-open")>0&&(r=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(r+=200,e=e.replace("-dot","")),e=gt.symbolNames.indexOf(e),e>=0&&(e+=r)}return e%100>=Sue||e>=400?0:Math.floor(Math.max(e,0))};function VD(e,r,t,a){var n=e%100;return gt.symbolFuncs[n](r,t,a)+(e>=200?Eue:"")}var RD=pue("~f"),YD={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};gt.gradient=function(e,r,t,a,n,i){var o=YD[a];return WD(e,r,t,o.type,n,i,o.start,o.stop,!1,o.reversed)};function WD(e,r,t,a,n,i,o,l,s,f){var u=n.length,c;a==="linear"?c={node:"linearGradient",attrs:{x1:o.x,y1:o.y,x2:l.x,y2:l.y,gradientUnits:s?"userSpaceOnUse":"objectBoundingBox"},reversed:f}:a==="radial"&&(c={node:"radialGradient",reversed:f});for(var v=new Array(u),d=0;d=0&&e.i===void 0&&(e.i=i.i),r.style("opacity",a.selectedOpacityFn?a.selectedOpacityFn(e):e.mo===void 0?o.opacity:e.mo),a.ms2mrc){var s;e.ms==="various"||o.size==="various"?s=3:s=a.ms2mrc(e.ms),e.mrc=s,a.selectedSizeFn&&(s=e.mrc=a.selectedSizeFn(e));var f=gt.symbolNumber(e.mx||o.symbol)||0;e.om=f%200>=100;var u=K4(e,t),c=Q4(e,t);r.attr("d",VD(f,s,u,c))}var v=!1,d,p,y;if(e.so)y=l.outlierwidth,p=l.outliercolor,d=o.outliercolor;else{var m=(l||{}).width;y=(e.mlw+1||m+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?p=e.mlcc=a.lineScale(e.mlc):Ga.isArrayOrTypedArray(l.color)?p=Ui.defaultLine:p=l.color,Ga.isArrayOrTypedArray(o.color)&&(d=Ui.defaultLine,v=!0),"mc"in e?d=e.mcc=a.markerScale(e.mc):d=o.color||o.colors||"rgba(0,0,0,0)",a.selectedColorFn&&(d=a.selectedColorFn(e))}if(e.om)r.call(Ui.stroke,d).style({"stroke-width":(y||1)+"px",fill:"none"});else{r.style("stroke-width",(e.isBlank?0:y)+"px");var b=o.gradient,A=e.mgt;A?v=!0:A=b&&b.type,Ga.isArrayOrTypedArray(A)&&(A=A[0],YD[A]||(A=0));var _=o.pattern,x=gt.getPatternAttr,T=_&&(x(_.shape,e.i,"")||x(_.path,e.i,""));if(A&&A!=="none"){var E=e.mgc;E?v=!0:E=b.color;var S=t.uid;v&&(S+="-"+e.i),gt.gradient(r,n,S,A,[[0,E],[1,d]],"fill")}else if(T){var k=!1,F=_.fgcolor;!F&&i&&i.color&&(F=i.color,k=!0);var I=x(F,e.i,i&&i.color||null),O=x(_.bgcolor,e.i,null),q=_.fgopacity,H=x(_.size,e.i,8),j=x(_.solidity,e.i,.3);k=k||e.mcc||Ga.isArrayOrTypedArray(_.shape)||Ga.isArrayOrTypedArray(_.path)||Ga.isArrayOrTypedArray(_.bgcolor)||Ga.isArrayOrTypedArray(_.fgcolor)||Ga.isArrayOrTypedArray(_.size)||Ga.isArrayOrTypedArray(_.solidity);var le=t.uid;k&&(le+="-"+e.i),gt.pattern(r,"point",n,le,T,H,j,e.mcc,_.fillmode,O,I,q)}else Ga.isArrayOrTypedArray(d)?Ui.fill(r,d[e.i]):Ui.fill(r,d);y&&Ui.stroke(r,p)}};gt.makePointStyleFns=function(e){var r={},t=e.marker;return r.markerScale=gt.tryColorscale(t,""),r.lineScale=gt.tryColorscale(t,"line"),L2.traceIs(e,"symbols")&&(r.ms2mrc=xue.isBubble(e)?_ue(e):function(){return(t.size||6)/2}),e.selectedpoints&&Ga.extendFlat(r,gt.makeSelectedPointStyleFns(e)),r};gt.makeSelectedPointStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.marker||{},i=t.marker||{},o=a.marker||{},l=n.opacity,s=i.opacity,f=o.opacity,u=s!==void 0,c=f!==void 0;(Ga.isArrayOrTypedArray(l)||u||c)&&(r.selectedOpacityFn=function(x){var T=x.mo===void 0?n.opacity:x.mo;return x.selected?u?s:T:c?f:UD*T});var v=n.color,d=i.color,p=o.color;(d||p)&&(r.selectedColorFn=function(x){var T=x.mcc||v;return x.selected?d||T:p||T});var y=n.size,m=i.size,b=o.size,A=m!==void 0,_=b!==void 0;return L2.traceIs(e,"symbols")&&(A||_)&&(r.selectedSizeFn=function(x){var T=x.mrc||y/2;return x.selected?A?m/2:T:_?b/2:T}),r};gt.makeSelectedTextStyleFns=function(e){var r={},t=e.selected||{},a=e.unselected||{},n=e.textfont||{},i=t.textfont||{},o=a.textfont||{},l=n.color,s=i.color,f=o.color;return r.selectedTextColorFn=function(u){var c=u.tc||l;return u.selected?s||c:f||(s?c:Ui.addOpacity(c,UD))},r};gt.selectedPointStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=gt.makeSelectedPointStyleFns(r),a=r.marker||{},n=[];t.selectedOpacityFn&&n.push(function(i,o){i.style("opacity",t.selectedOpacityFn(o))}),t.selectedColorFn&&n.push(function(i,o){Ui.fill(i,t.selectedColorFn(o))}),t.selectedSizeFn&&n.push(function(i,o){var l=o.mx||a.symbol||0,s=t.selectedSizeFn(o);i.attr("d",VD(gt.symbolNumber(l),s,K4(o,r),Q4(o,r))),o.mrc2=s}),n.length&&e.each(function(i){for(var o=_i.select(this),l=0;l0?t:0}gt.textPointStyle=function(e,r,t){if(e.size()){var a;if(r.selectedpoints){var n=gt.makeSelectedTextStyleFns(r);a=n.selectedTextColorFn}var i=r.texttemplate,o=t._fullLayout;e.each(function(l){var s=_i.select(this),f=i?Ga.extractOption(l,r,"txt","texttemplate"):Ga.extractOption(l,r,"tx","text");if(!f&&f!==0){s.remove();return}if(i){var u=r._module.formatLabels,c=u?u(l,r,o):{},v={};wue(v,r,l.i),f=Ga.texttemplateString({data:[v,l,r._meta],fallback:r.texttemplatefallback,labels:c,locale:o._d3locale,template:f})}var d=l.tp||r.textposition,p=XD(l,r),y=a?a(l):l.tc||r.textfont.color;s.call(gt.font,{family:l.tf||r.textfont.family,weight:l.tw||r.textfont.weight,style:l.ty||r.textfont.style,variant:l.tv||r.textfont.variant,textcase:l.tC||r.textfont.textcase,lineposition:l.tE||r.textfont.lineposition,shadow:l.tS||r.textfont.shadow,size:p,color:y}).text(f).call(D2.convertToTspans,t).call(jD,d,p,l.mrc)})}};gt.selectedTextStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=gt.makeSelectedTextStyleFns(r);e.each(function(a){var n=_i.select(this),i=t.selectedTextColorFn(a),o=a.tp||r.textposition,l=XD(a,r);Ui.fill(n,i);var s=L2.traceIs(r,"bar-like");jD(n,o,l,a.mrc2||a.mrc,s)})}};var PD=.5;gt.smoothopen=function(e,r){if(e.length<3)return"M"+e.join("L");var t="M"+e[0],a=[],n;for(n=1;n=s||x>=u&&x<=s)&&(T<=c&&T>=f||T>=c&&T<=f)&&(e=[x,T])}return e}gt.applyBackoff=$D;gt.makeTester=function(){var e=Ga.ensureSingleById(_i.select("body"),"svg","js-plotly-tester",function(t){t.attr(yue.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),r=Ga.ensureSingle(e,"path","js-reference-point",function(t){t.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});gt.tester=e,gt.testref=r};gt.savedBBoxes={};var j4=0,Lue=1e4;gt.bBox=function(e,r,t){t||(t=ND(e));var a;if(t){if(a=gt.savedBBoxes[t],a)return Ga.extendFlat({},a)}else if(e.childNodes.length===1){var n=e.childNodes[0];if(t=ND(n),t){var i=+n.getAttribute("x")||0,o=+n.getAttribute("y")||0,l=n.getAttribute("transform");if(!l){var s=gt.bBox(n,!1,t);return i&&(s.left+=i,s.right+=i),o&&(s.top+=o,s.bottom+=o),s}if(t+="~"+i+"~"+o+"~"+l,a=gt.savedBBoxes[t],a)return Ga.extendFlat({},a)}}var f,u;r?f=e:(u=gt.tester.node(),f=e.cloneNode(!0),u.appendChild(f)),_i.select(f).attr("transform",null).call(D2.positionText,0,0);var c=f.getBoundingClientRect(),v=gt.testref.node().getBoundingClientRect();r||u.removeChild(f);var d={height:c.height,width:c.width,left:c.left-v.left,top:c.top-v.top,right:c.right-v.left,bottom:c.bottom-v.top};return j4>=Lue&&(gt.savedBBoxes={},j4=0),t&&(gt.savedBBoxes[t]=d),j4++,Ga.extendFlat({},d)};function ND(e){var r=e.getAttribute("data-unformatted");if(r!==null)return r+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}gt.setClipUrl=function(e,r,t){e.attr("clip-path",$4(r,t))};function $4(e,r){if(!e)return null;var t=r._context,a=t._exportedPlot?"":t._baseUrl||"";return a?"url('"+a+"#"+e+"')":"url(#"+e+")"}gt.getTranslate=function(e){var r=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,o,l){return[o,l].join(" ")}).split(" ");return{x:+n[0]||0,y:+n[1]||0}};gt.setTranslate=function(e,r,t){var a=/(\btranslate\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",o=e[n]("transform")||"";return r=r||0,t=t||0,o=o.replace(a,"").trim(),o+=sm(r,t),o=o.trim(),e[i]("transform",o),o};gt.getScale=function(e){var r=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",a=e[t]("transform")||"",n=a.replace(r,function(i,o,l){return[o,l].join(" ")}).split(" ");return{x:+n[0]||1,y:+n[1]||1}};gt.setScale=function(e,r,t){var a=/(\bscale\(.*?\);?)/,n=e.attr?"attr":"getAttribute",i=e.attr?"attr":"setAttribute",o=e[n]("transform")||"";return r=r||1,t=t||1,o=o.replace(a,"").trim(),o+="scale("+r+","+t+")",o=o.trim(),e[i]("transform",o),o};var Due=/\s*sc.*/;gt.setPointGroupScale=function(e,r,t){if(r=r||1,t=t||1,!!e){var a=r===1&&t===1?"":"scale("+r+","+t+")";e.each(function(){var n=(this.getAttribute("transform")||"").replace(Due,"");n+=a,n=n.trim(),this.setAttribute("transform",n)})}};var Fue=/translate\([^)]*\)\s*$/;gt.setTextPointsScale=function(e,r,t){e&&e.each(function(){var a,n=_i.select(this),i=n.select("text");if(i.node()){var o=parseFloat(i.attr("x")||0),l=parseFloat(i.attr("y")||0),s=(n.attr("transform")||"").match(Fue);r===1&&t===1?a=[]:a=[sm(o,l),"scale("+r+","+t+")",sm(-o,-l)],s&&a.push(s),n.attr("transform",a.join(""))}})};function Q4(e,r){var t;return e&&(t=e.mf),t===void 0&&(t=r.marker&&r.marker.standoff||0),!r._geo&&!r._xA?-t:t}gt.getMarkerStandoff=Q4;var lm=Math.atan2,C0=Math.cos,wd=Math.sin;function ID(e,r){var t=r[0],a=r[1];return[t*C0(e)-a*wd(e),t*wd(e)+a*C0(e)]}var OD,BD,zD,GD,X4,Z4;function K4(e,r){var t=e.ma;t===void 0&&(t=r.marker.angle,(!t||Ga.isArrayOrTypedArray(t))&&(t=0));var a,n,i=r.marker.angleref;if(i==="previous"||i==="north"){if(r._geo){var o=r._geo.project(e.lonlat);a=o[0],n=o[1]}else{var l=r._xA,s=r._yA;if(l&&s)a=l.c2p(e.x),n=s.c2p(e.y);else return 90}if(r._geo){var f=e.lonlat[0],u=e.lonlat[1],c=r._geo.project([f,u+1e-5]),v=r._geo.project([f+1e-5,u]),d=lm(v[1]-n,v[0]-a),p=lm(c[1]-n,c[0]-a),y;if(i==="north")y=t/180*Math.PI;else if(i==="previous"){var m=f/180*Math.PI,b=u/180*Math.PI,A=OD/180*Math.PI,_=BD/180*Math.PI,x=A-m,T=C0(_)*wd(x),E=wd(_)*C0(b)-C0(_)*wd(b)*C0(x);y=-lm(T,E)-Math.PI,OD=f,BD=u}var S=ID(d,[C0(y),0]),k=ID(p,[wd(y),0]);t=lm(S[1]+k[1],S[0]+k[0])/Math.PI*180,i==="previous"&&!(Z4===r.uid&&e.i===X4+1)&&(t=null)}if(i==="previous"&&!r._geo)if(Z4===r.uid&&e.i===X4+1&&F0(a)&&F0(n)){var F=a-zD,I=n-GD,O=r.line&&r.line.shape||"",q=O.slice(O.length-1);q==="h"&&(I=0),q==="v"&&(F=0),t+=lm(I,F)/Math.PI*180+90}else t=null}return zD=a,GD=n,X4=e.i,Z4=r.uid,t}gt.getMarkerAngle=K4});var fm=P((rLe,tF)=>{"use strict";var Ad=da(),que=ba(),Rue=xi(),ew=Bt(),q0=Ur(),KD=q0.strTranslate,F2=Ha(),q2=ha(),Td=po(),eF=$h(),Pue=ho().OPPOSITE_SIDE,rF=/ [XY][0-9]* /,rw=1.6,tw=1.6;function Nue(e,r,t){var a=e._fullLayout,n=t.propContainer,i=t.propName,o=t.placeholder,l=t.traceIndex,s=t.avoid||{},f=t.attributes,u=t.transform,c=t.containerGroup,v=1,d=n.title,p=(d&&d.text?d.text:"").trim(),y=!1,m=d&&d.font?d.font:{},b=m.family,A=m.size,_=m.color,x=m.weight,T=m.style,E=m.variant,S=m.textcase,k=m.lineposition,F=m.shadow,I=t.subtitlePropName,O=!!I,q=t.subtitlePlaceholder,H=(n.title||{}).subtitle||{text:"",font:{}},j=(H.text||"").trim(),le=!1,te=1,Q=H.font,J=Q.family,Z=Q.size,ae=Q.color,ue=Q.weight,Le=Q.style,Be=Q.variant,Ee=Q.textcase,Xe=Q.lineposition,Ae=Q.shadow,rr;i==="title.text"?rr="titleText":i.indexOf("axis")!==-1?rr="axisTitleText":i.indexOf("colorbar")!==-1&&(rr="colorbarTitleText");var ze=e._context.edits[rr];function We(Yr,Kr){return Yr===void 0||Kr===void 0?!1:Yr.replace(rF," % ")===Kr.replace(rF," % ")}p===""?v=0:We(p,o)&&(ze||(p=""),v=.2,y=!0),O&&(j===""?te=0:We(j,q)&&(ze||(j=""),te=.2,le=!0)),t._meta?p=q0.templateString(p,t._meta):a._meta&&(p=q0.templateString(p,a._meta));var $e=p||j||ze,Ue;c||(c=q0.ensureSingle(a._infolayer,"g","g-"+r),Ue=a._hColorbarMoveTitle);var ee=c.selectAll("text."+r).data($e?[0]:[]);ee.enter().append("text"),ee.text(p).attr("class",r),ee.exit().remove();var de=null,ne=r+"-subtitle",je=j||ze;if(O&&(de=c.selectAll("text."+ne).data(je?[0]:[]),de.enter().append("text"),de.text(j).attr("class",ne),de.exit().remove()),!$e)return c;function ur(Yr,Kr){q0.syncOrAsync([er,Lr],{title:Yr,subtitle:Kr})}function er(Yr){var Kr=Yr.title,wr=Yr.subtitle,Vr;!u&&Ue&&(u={}),u?(Vr="",u.rotate&&(Vr+="rotate("+[u.rotate,f.x,f.y]+")"),(u.offset||Ue)&&(Vr+=KD(0,(u.offset||0)-(Ue||0)))):Vr=null,Kr.attr("transform",Vr);function Wr(tr){if(tr){var cr=Ad.select(tr.node().parentNode).select("."+ne);if(!cr.empty()){var Hr=tr.node().getBBox();if(Hr.height){var ot=Hr.y+Hr.height+rw*Z;cr.attr("y",ot)}}}}if(Kr.style("opacity",v*q2.opacity(_)).call(F2.font,{color:q2.rgb(_),size:Ad.round(A,2),family:b,weight:x,style:T,variant:E,textcase:S,shadow:F,lineposition:k}).attr(f).call(Td.convertToTspans,e,Wr),wr&&!wr.empty()){var Re=c.select("."+r+"-math-group"),lr=Kr.node().getBBox(),st=Re.node()?Re.node().getBBox():void 0,kt=st?st.y+st.height+rw*Z:lr.y+lr.height+tw*Z,Ar=q0.extendFlat({},f,{y:kt});wr.attr("transform",Vr),wr.style("opacity",te*q2.opacity(ae)).call(F2.font,{color:q2.rgb(ae),size:Ad.round(Z,2),family:J,weight:ue,style:Le,variant:Be,textcase:Ee,shadow:Ae,lineposition:Xe}).attr(Ar).call(Td.convertToTspans,e)}return Rue.previousPromises(e)}function Lr(Yr){var Kr=Yr.title,wr=Ad.select(Kr.node().parentNode);if(s&&s.selection&&s.side&&p){wr.attr("transform",null);var Vr=Pue[s.side],Wr=s.side==="left"||s.side==="top"?-1:1,Re=que(s.pad)?s.pad:2,lr=F2.bBox(wr.node()),st={t:0,b:0,l:0,r:0},kt=e._fullLayout._reservedMargin;for(var Ar in kt)for(var tr in kt[Ar]){var cr=kt[Ar][tr];st[tr]=Math.max(st[tr],cr)}var Hr={left:st.l,top:st.t,right:a.width-st.r,bottom:a.height-st.b},ot=s.maxShift||Wr*(Hr[s.side]-lr[s.side]),jr=0;if(ot<0)jr=ot;else{var at=s.offsetLeft||0,xt=s.offsetTop||0;lr.left-=at,lr.right-=at,lr.top-=xt,lr.bottom-=xt,s.selection.each(function(){var nt=F2.bBox(this);q0.bBoxIntersect(lr,nt,Re)&&(jr=Math.max(jr,Wr*(nt[s.side]-lr[Vr])+Re))}),jr=Math.min(ot,jr),n._titleScoot=Math.abs(jr)}if(jr>0||ot<0){var Xr={left:[-jr,0],right:[jr,0],top:[0,-jr],bottom:[0,jr]}[s.side];wr.attr("transform",KD(Xr[0],Xr[1]))}}}ee.call(ur,de);function Pr(Yr,Kr){Yr.text(Kr).on("mouseover.opacity",function(){Ad.select(this).transition().duration(eF.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){Ad.select(this).transition().duration(eF.HIDE_PLACEHOLDER).style("opacity",0)})}if(ze&&(p?ee.on(".opacity",null):(Pr(ee,o),y=!0),ee.call(Td.makeEditable,{gd:e}).on("edit",function(Yr){l!==void 0?ew.call("_guiRestyle",e,i,Yr,l):ew.call("_guiRelayout",e,i,Yr)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ur)}).on("input",function(Yr){this.text(Yr||" ").call(Td.positionText,f.x,f.y)}),O)){if(O&&!p){var _r=ee.node().getBBox(),Ir=_r.y+_r.height+tw*Z;de.attr("y",Ir)}j?de.on(".opacity",null):(Pr(de,q),le=!0),de.call(Td.makeEditable,{gd:e}).on("edit",function(Yr){ew.call("_guiRelayout",e,"title.subtitle.text",Yr)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ur)}).on("input",function(Yr){this.text(Yr||" ").call(Td.positionText,de.attr("x"),de.attr("y"))})}return ee.classed("js-placeholder",y),de&&!de.empty()&&de.classed("js-placeholder",le),c}tF.exports={draw:Nue,SUBTITLE_PADDING_EM:tw,SUBTITLE_PADDING_MATHJAX_EM:rw}});var G2=P((tLe,lF)=>{"use strict";var Iue=da(),Oue=jh().utcFormat,Za=Ur(),Bue=Za.numberFormat,Sf=ba(),Gc=Za.cleanNumber,zue=Za.ms2DateTime,aF=Za.dateTime2ms,Ef=Za.ensureNumber,nF=Za.isArrayOrTypedArray,Uc=Kn(),R2=Uc.FP_SAFE,Ns=Uc.BADNUM,Gue=Uc.LOG_CLIP,Uue=Uc.ONEWEEK,P2=Uc.ONEDAY,N2=Uc.ONEHOUR,iF=Uc.ONEMIN,oF=Uc.ONESEC,I2=kn(),z2=qi(),O2=z2.HOUR_PATTERN,B2=z2.WEEKDAY_PATTERN;function um(e){return Math.pow(10,e)}function aw(e){return e!=null}lF.exports=function(r,t){t=t||{};var a=r._id||"x",n=a.charAt(0);function i(x,T){if(x>0)return Math.log(x)/Math.LN10;if(x<=0&&T&&r.range&&r.range.length===2){var E=r.range[0],S=r.range[1];return .5*(E+S-2*Gue*Math.abs(E-S))}else return Ns}function o(x,T,E,S){if((S||{}).msUTC&&Sf(x))return+x;var k=aF(x,E||r.calendar);if(k===Ns)if(Sf(x)){x=+x;var F=Math.floor(Za.mod(x+.05,1)*10),I=Math.round(x-F/10);k=aF(new Date(I))+F/10}else return Ns;return k}function l(x,T,E){return zue(x,T,E||r.calendar)}function s(x){return r._categories[Math.round(x)]}function f(x){if(aw(x)){if(r._categoriesMap===void 0&&(r._categoriesMap={}),r._categoriesMap[x]!==void 0)return r._categoriesMap[x];r._categories.push(typeof x=="number"?String(x):x);var T=r._categories.length-1;return r._categoriesMap[x]=T,T}return Ns}function u(x,T){for(var E=new Array(T),S=0;Sr.range[1]&&(E=!E);for(var S=E?-1:1,k=S*x,F=0,I=0;Iq)F=I+1;else{F=k<(O+q)/2?I:I+1;break}}var H=r._B[F]||0;return isFinite(H)?p(x,r._m2,H):0},b=function(x){var T=r._rangebreaks.length;if(!T)return y(x,r._m,r._b);for(var E=0,S=0;Sr._rangebreaks[S].pmax&&(E=S+1);return y(x,r._m2,r._B[E])}}r.c2l=r.type==="log"?i:Ef,r.l2c=r.type==="log"?um:Ef,r.l2p=m,r.p2l=b,r.c2p=r.type==="log"?function(x,T){return m(i(x,T))}:m,r.p2c=r.type==="log"?function(x){return um(b(x))}:b,["linear","-"].indexOf(r.type)!==-1?(r.d2r=r.r2d=r.d2c=r.r2c=r.d2l=r.r2l=Gc,r.c2d=r.c2r=r.l2d=r.l2r=Ef,r.d2p=r.r2p=function(x){return r.l2p(Gc(x))},r.p2d=r.p2r=b,r.cleanPos=Ef):r.type==="log"?(r.d2r=r.d2l=function(x,T){return i(Gc(x),T)},r.r2d=r.r2c=function(x){return um(Gc(x))},r.d2c=r.r2l=Gc,r.c2d=r.l2r=Ef,r.c2r=i,r.l2d=um,r.d2p=function(x,T){return r.l2p(r.d2r(x,T))},r.p2d=function(x){return um(b(x))},r.r2p=function(x){return r.l2p(Gc(x))},r.p2r=b,r.cleanPos=Ef):r.type==="date"?(r.d2r=r.r2d=Za.identity,r.d2c=r.r2c=r.d2l=r.r2l=o,r.c2d=r.c2r=r.l2d=r.l2r=l,r.d2p=r.r2p=function(x,T,E){return r.l2p(o(x,0,E))},r.p2d=r.p2r=function(x,T,E){return l(b(x),T,E)},r.cleanPos=function(x){return Za.cleanDate(x,Ns,r.calendar)}):r.type==="category"?(r.d2c=r.d2l=f,r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=v,r.r2c=function(x){var T=d(x);return T!==void 0?T:r.fraction2r(.5)},r.l2r=r.c2r=Ef,r.r2l=d,r.d2p=function(x){return r.l2p(r.r2c(x))},r.p2d=function(x){return s(b(x))},r.r2p=r.d2p,r.p2r=b,r.cleanPos=function(x){return typeof x=="string"&&x!==""?x:Ef(x)}):r.type==="multicategory"&&(r.r2d=r.c2d=r.l2d=s,r.d2r=r.d2l_noadd=v,r.r2c=function(x){var T=v(x);return T!==void 0?T:r.fraction2r(.5)},r.r2c_just_indices=c,r.l2r=r.c2r=Ef,r.r2l=v,r.d2p=function(x){return r.l2p(r.r2c(x))},r.p2d=function(x){return s(b(x))},r.r2p=r.d2p,r.p2r=b,r.cleanPos=function(x){return Array.isArray(x)||typeof x=="string"&&x!==""?x:Ef(x)},r.setupMultiCategory=function(x){var T=r._traceIndices,E,S,k=r._matchGroup;if(k&&r._categories.length===0){for(var F in k)if(F!==a){var I=t[I2.id2name(F)];T=T.concat(I._traceIndices)}}var O=[[0,{}],[0,{}]],q=[];for(E=0;EI[1]&&(S[F?0:1]=E),S[0]===S[1]){var O=r.l2r(T),q=r.l2r(E);if(T!==void 0){var H=O+1;E!==void 0&&(H=Math.min(H,q)),S[F?1:0]=H}if(E!==void 0){var j=q+1;T!==void 0&&(j=Math.max(j,O)),S[F?0:1]=j}}}},r.cleanRange=function(x,T){r._cleanRange(x,T),r.limitRange(x)},r._cleanRange=function(x,T){T||(T={}),x||(x="range");var E=Za.nestedProperty(r,x).get(),S,k;if(r.type==="date"?k=Za.dfltRange(r.calendar):n==="y"?k=z2.DFLTRANGEY:r._name==="realaxis"?k=[0,1]:k=T.dfltRange||z2.DFLTRANGEX,k=k.slice(),(r.rangemode==="tozero"||r.rangemode==="nonnegative")&&(k[0]=0),!E||E.length!==2){Za.nestedProperty(r,x).set(k);return}var F=E[0]===null,I=E[1]===null;for(r.type==="date"&&!r.autorange&&(E[0]=Za.cleanDate(E[0],Ns,r.calendar),E[1]=Za.cleanDate(E[1],Ns,r.calendar)),S=0;S<2;S++)if(r.type==="date"){if(!Za.isDateTime(E[S],r.calendar)){r[x]=k;break}if(r.r2l(E[0])===r.r2l(E[1])){var O=Za.constrain(r.r2l(E[0]),Za.MIN_MS+1e3,Za.MAX_MS-1e3);E[0]=r.l2r(O-1e3),E[1]=r.l2r(O+1e3);break}}else{if(!Sf(E[S]))if(!(F||I)&&Sf(E[1-S]))E[S]=E[1-S]*(S?10:.1);else{r[x]=k;break}if(E[S]<-R2?E[S]=-R2:E[S]>R2&&(E[S]=R2),E[0]===E[1]){var q=Math.max(1,Math.abs(E[0]*1e-6));E[0]-=q,E[1]+=q}}},r.setScale=function(x){var T=t._size;if(r.overlaying){var E=I2.getFromId({_fullLayout:t},r.overlaying);r.domain=E.domain}var S=x&&r._r?"_r":"range",k=r.calendar;r.cleanRange(S);var F=r.r2l(r[S][0],k),I=r.r2l(r[S][1],k),O=n==="y";if(O?(r._offset=T.t+(1-r.domain[1])*T.h,r._length=T.h*(r.domain[1]-r.domain[0]),r._m=r._length/(F-I),r._b=-r._m*I):(r._offset=T.l+r.domain[0]*T.w,r._length=T.w*(r.domain[1]-r.domain[0]),r._m=r._length/(I-F),r._b=-r._m*F),r._rangebreaks=[],r._lBreaks=0,r._m2=0,r._B=[],r.rangebreaks){var q,H;if(r._rangebreaks=r.locateBreaks(Math.min(F,I),Math.max(F,I)),r._rangebreaks.length){for(q=0;qI&&(j=!j),j&&r._rangebreaks.reverse();var le=j?-1:1;for(r._m2=le*r._length/(Math.abs(I-F)-r._lBreaks),r._B.push(-r._m2*(O?I:F)),q=0;qk&&(k+=7,Fk&&(k+=24,F=S&&F=S&&x=Ae.min&&(LeAe.max&&(Ae.max=Be),Ee=!1)}Ee&&I.push({min:Le,max:Be})}};for(E=0;E{"use strict";var sF=ba(),nw=Ur(),Hue=Kn().BADNUM,U2=nw.isArrayOrTypedArray,Vue=nw.isDateTime,Yue=nw.cleanNumber,fF=Math.round;cF.exports=function(r,t,a){var n=r,i=a.noMultiCategory;if(U2(n)&&!n.length)return"-";if(!i&&Jue(n))return"multicategory";if(i&&Array.isArray(n[0])){for(var o=[],l=0;li*2}function uF(e){return Math.max(1,(e-1)/1e3)}function Zue(e,r){for(var t=e.length,a=uF(t),n=0,i=0,o={},l=0;ln*2}function Jue(e){return U2(e[0])&&U2(e[1])}});var Md=P((nLe,bF)=>{"use strict";var $ue=da(),pF=ba(),Hc=Ur(),H2=Kn().FP_SAFE,Que=Bt(),Kue=Ha(),mF=kn(),ece=mF.getFromId,rce=mF.isLinked;bF.exports={applyAutorangeOptions:gF,getAutoRange:ow,makePadFn:lw,doAutoRange:ace,findExtremes:nce,concatExtremes:uw};function ow(e,r){var t,a,n=[],i=e._fullLayout,o=lw(i,r,0),l=lw(i,r,1),s=uw(e,r),f=s.min,u=s.max;if(f.length===0||u.length===0)return Hc.simpleMap(r.range,r.r2l);var c=f[0].val,v=u[0].val;for(t=1;t0&&(I=_-o(E)-l(S),I>x?O/I>T&&(k=E,F=S,T=O/I):O/_>T&&(k={val:E.val,nopad:1},F={val:S.val,nopad:1},T=O/_));function q(Q,J){return Math.max(Q,l(J))}if(c===v){var H=c-1,j=c+1;if(b)if(c===0)n=[0,1];else{var le=(c>0?u:f).reduce(q,0),te=c/(1-Math.min(.5,le/_));n=c>0?[0,te]:[te,0]}else A?n=[Math.max(0,H),Math.max(1,j)]:n=[H,j]}else b?(k.val>=0&&(k={val:0,nopad:1}),F.val<=0&&(F={val:0,nopad:1})):A&&(k.val-T*o(k)<0&&(k={val:0,nopad:1}),F.val<=0&&(F={val:1,nopad:1})),T=(F.val-k.val-vF(r,E.val,S.val))/(_-o(k)-l(F)),n=[k.val-T*o(k),F.val+T*l(F)];return n=gF(n,r),r.limitRange&&r.limitRange(),p&&n.reverse(),Hc.simpleMap(n,r.l2r||Number)}function vF(e,r,t){var a=0;if(e.rangebreaks)for(var n=e.locateBreaks(r,t),i=0;i0?t.ppadplus:t.ppadminus)||t.ppad||0),E=x((e._m>0?t.ppadminus:t.ppadplus)||t.ppad||0),S=x(t.vpadplus||t.vpad),k=x(t.vpadminus||t.vpad);if(!f){if(A=1/0,_=-1/0,s)for(c=0;c0&&(A=v),v>_&&v-H2&&(A=v),v>_&&v=O;c--)I(c);return{min:a,max:n,opts:t}}function sw(e,r,t,a){yF(e,r,t,a,ice)}function fw(e,r,t,a){yF(e,r,t,a,oce)}function yF(e,r,t,a,n){for(var i=a.tozero,o=a.extrapad,l=!0,s=0;s=t&&(f.extrapad||!o)){l=!1;break}else n(r,f.val)&&f.pad<=t&&(o||!f.extrapad)&&(e.splice(s,1),s--)}if(l){var u=i&&r===0;e.push({val:r,pad:u?0:t,extrapad:u?!1:o})}}function dF(e){return pF(e)&&Math.abs(e)=r}function lce(e,r){var t=r.autorangeoptions;return t&&t.minallowed!==void 0&&V2(r,t.minallowed,t.maxallowed)?t.minallowed:t&&t.clipmin!==void 0&&V2(r,t.clipmin,t.clipmax)?Math.max(e,r.d2l(t.clipmin)):e}function sce(e,r){var t=r.autorangeoptions;return t&&t.maxallowed!==void 0&&V2(r,t.minallowed,t.maxallowed)?t.maxallowed:t&&t.clipmax!==void 0&&V2(r,t.clipmin,t.clipmax)?Math.min(e,r.d2l(t.clipmax)):e}function V2(e,r,t){return r!==void 0&&t!==void 0?(r=e.d2l(r),t=e.d2l(t),r=s&&(i=s,t=s),o<=s&&(o=s,a=s)}}return t=lce(t,r),a=sce(a,r),[t,a]}});var yn=P((iLe,UF)=>{"use strict";var Hl=da(),ri=ba(),Sd=xi(),vm=Bt(),Ot=Ur(),Ed=Ot.strTranslate,R0=po(),fce=fm(),hm=ha(),bl=Ha(),uce=Ul(),xF=E4(),Hi=Kn(),cce=Hi.ONEMAXYEAR,j2=Hi.ONEAVGYEAR,X2=Hi.ONEMINYEAR,vce=Hi.ONEMAXQUARTER,dw=Hi.ONEAVGQUARTER,Z2=Hi.ONEMINQUARTER,hce=Hi.ONEMAXMONTH,kd=Hi.ONEAVGMONTH,J2=Hi.ONEMINMONTH,xl=Hi.ONEWEEK,mo=Hi.ONEDAY,Vc=mo/2,Cf=Hi.ONEHOUR,dm=Hi.ONEMIN,$2=Hi.ONESEC,dce=Hi.ONEMILLI,pce=Hi.ONEMICROSEC,P0=Hi.MINUS_SIGN,K2=Hi.BADNUM,pw={K:"zeroline"},mw={K:"gridline",L:"path"},yw={K:"minor-gridline",L:"path"},DF={K:"tick",L:"path"},_F={K:"tick",L:"text"},wF={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},e3=ho(),cm=e3.MID_SHIFT,N0=e3.CAP_SHIFT,pm=e3.LINE_SPACING,mce=e3.OPPOSITE_SIDE,Q2=3,rt=UF.exports={};rt.setConvert=G2();var yce=iw(),Lu=kn(),gce=Lu.idSort,bce=Lu.isLinked;rt.id2name=Lu.id2name;rt.name2id=Lu.name2id;rt.cleanId=Lu.cleanId;rt.list=Lu.list;rt.listIds=Lu.listIds;rt.getFromId=Lu.getFromId;rt.getFromTrace=Lu.getFromTrace;var FF=Md();rt.getAutoRange=FF.getAutoRange;rt.findExtremes=FF.findExtremes;var xce=1e-4;function _w(e){var r=(e[1]-e[0])*xce;return[e[0]-r,e[1]+r]}rt.coerceRef=function(e,r,t,a,n,i){var o=a.charAt(a.length-1),l=t._fullLayout._subplots[o+"axis"],s=a+"ref",f={};return n||(n=l[0]||(typeof i=="string"?i:i[0])),i||(i=n),l=l.concat(l.map(function(u){return u+" domain"})),f[s]={valType:"enumerated",values:l.concat(i?typeof i=="string"?[i]:i:[]),dflt:n},Ot.coerce(e,r,f,s)};rt.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};rt.coercePosition=function(e,r,t,a,n,i){var o,l,s=rt.getRefType(a);if(s!=="range")o=Ot.ensureNumber,l=t(n,i);else{var f=rt.getFromId(r,a);i=f.fraction2r(i),l=t(n,i),o=f.cleanPos}e[n]=o(l)};rt.cleanPosition=function(e,r,t){var a=t==="paper"||t==="pixel"?Ot.ensureNumber:rt.getFromId(r,t).cleanPos;return a(e)};rt.redrawComponents=function(e,r){r=r||rt.listIds(e);var t=e._fullLayout;function a(n,i,o,l){for(var s=vm.getComponentMethod(n,i),f={},u=0;u2e-6||((t-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};rt.saveRangeInitial=function(e,r){for(var t=rt.list(e,"",!0),a=!1,n=0;nc*.3||f(a)||f(n))){var v=t.dtick/2;e+=e+vo){var l=Number(t.slice(1));i.exactYears>o&&l%12===0?e=rt.tickIncrement(e,"M6","reverse")+mo*1.5:i.exactMonths>o?e=rt.tickIncrement(e,"M1","reverse")+mo*15.5:e-=Vc;var s=rt.tickIncrement(e,t);if(s<=a)return s}return e}rt.prepMinorTicks=function(e,r,t){if(!r.minor.dtick){delete e.dtick;var a=r.dtick&&ri(r._tmin),n;if(a){var i=rt.tickIncrement(r._tmin,r.dtick,!0);n=[r._tmin,i*.99+r._tmin*.01]}else{var o=Ot.simpleMap(r.range,r.r2l);n=[o[0],.8*o[0]+.2*o[1]]}if(e.range=Ot.simpleMap(n,r.l2r),e._isMinor=!0,rt.prepTicks(e,t),a){var l=ri(r.dtick),s=ri(e.dtick),f=l?r.dtick:+r.dtick.substring(1),u=s?e.dtick:+e.dtick.substring(1);l&&s?cw(f,u)?f===2*xl&&u===2*mo&&(e.dtick=xl):f===2*xl&&u===3*mo?e.dtick=xl:f===xl&&!(r._input.minor||{}).nticks?e.dtick=mo:MF(f/u,2.5)?e.dtick=f/2:e.dtick=f:String(r.dtick).charAt(0)==="M"?s?e.dtick="M1":cw(f,u)?f>=12&&u===2&&(e.dtick="M3"):e.dtick=r.dtick:String(e.dtick).charAt(0)==="L"?String(r.dtick).charAt(0)==="L"?cw(f,u)||(e.dtick=MF(f/u,2.5)?r.dtick/2:r.dtick):e.dtick="D1":e.dtick==="D2"&&+r.dtick>1&&(e.dtick=1)}e.range=r.range}r.minor._tick0Init===void 0&&(e.tick0=r.tick0)};function cw(e,r){return Math.abs((e/r+.5)%1-.5)<.001}function MF(e,r){return Math.abs(e/r-1)<.001}rt.prepTicks=function(e,r){var t=Ot.simpleMap(e.range,e.r2l,void 0,void 0,r);if(e.tickmode==="auto"||!e.dtick){var a=e.nticks,n;a||(e.type==="category"||e.type==="multicategory"?(n=e.tickfont?Ot.bigFont(e.tickfont.size||12):15,a=e._length/n):(n=e._id.charAt(0)==="y"?40:80,a=Ot.constrain(e._length/n,4,9)+1),e._name==="radialaxis"&&(a*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(a*=100),e._roughDTick=Math.abs(t[1]-t[0])/a,rt.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(i=a-1,o=a):(i=a,o=a);var l=e[i].value,s=e[o].value,f=Math.abs(s-l),u=t||f,c=0;u>=X2?f>=X2&&f<=cce?c=f:c=j2:t===dw&&u>=Z2?f>=Z2&&f<=vce?c=f:c=dw:u>=J2?f>=J2&&f<=hce?c=f:c=kd:t===xl&&u>=xl?c=xl:u>=mo?c=mo:t===Vc&&u>=Vc?c=Vc:t===Cf&&u>=Cf&&(c=Cf);var v;c>=f&&(c=f,v=!0);var d=n+c;if(r.rangebreaks&&c>0){for(var p=84,y=0,m=0;mxl&&(c=f)}(c>0||a===0)&&(e[a].periodX=n+c/2)}}rt.calcTicks=function(r,t){for(var a=r.type,n=r.calendar,i=r.ticklabelstep,o=r.ticklabelmode==="period",l=r.range[0]>r.range[1],s=!r.ticklabelindex||Ot.isArrayOrTypedArray(r.ticklabelindex)?r.ticklabelindex:[r.ticklabelindex],f=Ot.simpleMap(r.range,r.r2l,void 0,void 0,t),u=f[1]=(_?0:1);x--){var T=!x;x?(r._dtickInit=r.dtick,r._tick0Init=r.tick0):(r.minor._dtickInit=r.minor.dtick,r.minor._tick0Init=r.minor.tick0);var E=x?r:Ot.extendFlat({},r,r.minor);if(T?rt.prepMinorTicks(E,r,t):rt.prepTicks(E,t),E.tickmode==="array"){x?(m=[],p=SF(r,!T)):(b=[],y=SF(r,!T));continue}if(E.tickmode==="sync"){m=[],p=Sce(r);continue}var S=_w(f),k=S[0],F=S[1],I=ri(E.dtick),O=a==="log"&&!(I||E.dtick.charAt(0)==="L"),q=rt.tickFirst(E,t);if(x){if(r._tmin=q,q=F:j<=F;j=rt.tickIncrement(j,Q,u,n)){if(x&&le++,E.rangebreaks&&!u){if(j=v)break}if(m.length>d||j===H)break;H=j;var J={value:j};x?(O&&j!==(j|0)&&(J.simpleLabel=!0),i>1&&le%i&&(J.skipLabel=!0),m.push(J)):(J.minor=!0,b.push(J))}}if(!b||b.length<2)s=!1;else{var Z=(b[1].value-b[0].value)*(l?-1:1);$ce(Z,r.tickformat)||(s=!1)}if(!s)A=m;else{var ae=m.concat(b);o&&m.length&&(ae=ae.slice(1)),ae=ae.sort(function(Ir,Yr){return Ir.value-Yr.value}).filter(function(Ir,Yr,Kr){return Yr===0||Ir.value!==Kr[Yr-1].value});var ue=ae.map(function(Ir,Yr){return Ir.minor===void 0&&!Ir.skipLabel?Yr:null}).filter(function(Ir){return Ir!==null});ue.forEach(function(Ir){s.map(function(Yr){var Kr=Ir+Yr;Kr>=0&&Kr-1;$e--){if(m[$e].drop){m.splice($e,1);continue}m[$e].value=hw(m[$e].value,r);var ne=r.c2p(m[$e].value);(Ue?de>ne-ee:dev||wrv&&(Kr.periodX=v),wrn&&vj2)r/=j2,a=n(10),e.dtick="M"+12*kf(r,a,Y2);else if(i>kd)r/=kd,e.dtick="M"+kf(r,1,EF);else if(i>mo){if(e.dtick=kf(r,mo,e._hasDayOfWeekBreaks?[1,2,7,14]:Ece),!t){var o=rt.getTickFormat(e),l=e.ticklabelmode==="period";l&&(e._rawTick0=e.tick0),/%[uVW]/.test(o)?e.tick0=Ot.dateTick0(e.calendar,2):e.tick0=Ot.dateTick0(e.calendar,1),l&&(e._dowTick0=e.tick0)}}else i>Cf?e.dtick=kf(r,Cf,EF):i>dm?e.dtick=kf(r,dm,kF):i>$2?e.dtick=kf(r,$2,kF):(a=n(10),e.dtick=kf(r,a,Y2))}else if(e.type==="log"){e.tick0=0;var s=Ot.simpleMap(e.range,e.r2l);if(e._isMinor&&(r*=1.5),r>.7)e.dtick=Math.ceil(r);else if(Math.abs(s[1]-s[0])<1){var f=1.5*Math.abs((s[1]-s[0])/r);r=Math.abs(Math.pow(10,s[1])-Math.pow(10,s[0]))/f,a=n(10),e.dtick="L"+kf(r,a,Y2)}else e.dtick=r>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(r,1))):Mw(e)?(e.tick0=0,a=1,e.dtick=kf(r,a,kce)):(e.tick0=0,a=n(10),e.dtick=kf(r,a,Y2));if(e.dtick===0&&(e.dtick=1),!ri(e.dtick)&&typeof e.dtick!="string"){var u=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(u)}};function NF(e){var r=e.dtick;if(e._tickexponent=0,!ri(r)&&typeof r!="string"&&(r=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var t=e.r2l(e.tick0),a=e.l2r(t).replace(/(^-|i)/g,""),n=a.length;if(String(r).charAt(0)==="M")n>10||a.slice(5)!=="01-01"?e._tickround="d":e._tickround=+r.slice(1)%12===0?"y":"m";else if(r>=mo&&n<=10||r>=mo*15)e._tickround="d";else if(r>=dm&&n<=16||r>=Cf)e._tickround="M";else if(r>=$2&&n<=19||r>=dm)e._tickround="S";else{var i=e.l2r(t+r).replace(/^-/,"").length;e._tickround=Math.max(n,i)-20,e._tickround<0&&(e._tickround=4)}}else if(ri(r)||r.charAt(0)==="L"){var o=e.range.map(e.r2d||Number);ri(r)||(r=Number(r.slice(1))),e._tickround=2-Math.floor(Math.log(r)/Math.LN10+.01);var l=Math.max(Math.abs(o[0]),Math.abs(o[1])),s=Math.floor(Math.log(l)/Math.LN10+.01),f=e.minexponent===void 0?3:e.minexponent;Math.abs(s)>f&&(Cd(e.exponentformat)&&e.exponentformat!=="SI extended"&&!ww(s)||Cd(e.exponentformat)&&e.exponentformat==="SI extended"&&!Aw(s)?e._tickexponent=3*Math.round((s-1)/3):e._tickexponent=s)}else e._tickround=null}rt.tickIncrement=function(e,r,t,a){var n=t?-1:1;if(ri(r))return Ot.increment(e,n*r);var i=r.charAt(0),o=n*Number(r.slice(1));if(i==="M")return Ot.incrementMonth(e,o,a);if(i==="L")return Math.log(Math.pow(10,e)+o)/Math.LN10;if(i==="D"){var l=r==="D2"?PF:RF,s=e+n*.01,f=Ot.roundUp(Ot.mod(s,1),l,t);return Math.floor(s)+Math.log(Hl.round(Math.pow(10,f),1))/Math.LN10}throw"unrecognized dtick "+String(r)};rt.tickFirst=function(e,r){var t=e.r2l||Number,a=Ot.simpleMap(e.range,t,void 0,void 0,r),n=a[1]=0&&b<=e._length?m:null};if(i&&Ot.isArrayOrTypedArray(e.ticktext)){var c=Ot.simpleMap(e.range,e.r2l),v=(Math.abs(c[1]-c[0])-(e._lBreaks||0))/1e4;for(f=0;f"+l;else{var f=ym(e),u=e._trueSide||e.side;(!f&&u==="top"||f&&u==="bottom")&&(o+="
")}r.text=o}function Lce(e,r,t,a,n){var i=e.dtick,o=r.x,l=e.tickformat,s=typeof i=="string"&&i.charAt(0);if(n==="never"&&(n=""),a&&s!=="L"&&(i="L3",s="L"),l||s==="L")r.text=mm(Math.pow(10,o),e,n,a);else if(ri(i)||s==="D"&&(e.minorloglabels==="complete"||Ot.mod(o+.01,1)<.1)){var f;e.minorloglabels==="complete"&&!(Ot.mod(o+.01,1)<.1)&&(f=!0,r.fontSize*=.75);var u=Math.pow(10,o).toExponential(0),c=u.split("e"),v=+c[1],d=Math.abs(v),p=e.exponentformat;p==="power"||Cd(p)&&p!=="SI extended"&&ww(v)||Cd(p)&&p==="SI extended"&&Aw(v)?(r.text=c[0],d>0&&(r.text+="x10"),r.text==="1x10"&&(r.text="10"),v!==0&&v!==1&&(r.text+=""+(v>0?"":P0)+d+""),r.fontSize*=1.25):(p==="e"||p==="E")&&d>2?r.text=c[0]+p+(v>0?"+":P0)+d:(r.text=mm(Math.pow(10,o),e,"","fakehover"),i==="D1"&&e._id.charAt(0)==="y"&&(r.dy-=r.fontSize/6))}else if(s==="D")r.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,Ot.mod(o,1)))),r.fontSize*=.75;else throw"unrecognized dtick "+String(i);if(e.dtick==="D1"){var y=String(r.text).charAt(0);(y==="0"||y==="1")&&(e._id.charAt(0)==="y"?r.dx-=r.fontSize/4:(r.dy+=r.fontSize/2,r.dx+=(e.range[1]>e.range[0]?1:-1)*r.fontSize*(o<0?.5:.25)))}}function Dce(e,r){var t=e._categories[Math.round(r.x)];t===void 0&&(t=""),r.text=String(t)}function Fce(e,r,t){var a=Math.round(r.x),n=e._categories[a]||[],i=n[1]===void 0?"":String(n[1]),o=n[0]===void 0?"":String(n[0]);t?r.text=o+" - "+i:(r.text=i,r.text2=o)}function qce(e,r,t,a,n){n==="never"?n="":e.showexponent==="all"&&Math.abs(r.x/e.dtick)<1e-6&&(n="hide"),r.text=mm(r.x,e,n,a)}function Rce(e,r,t,a,n){if(e.thetaunit==="radians"&&!t){var i=r.x/180;if(i===0)r.text="0";else{var o=Pce(i);if(o[1]>=100)r.text=mm(Ot.deg2rad(r.x),e,n,a);else{var l=r.x<0;o[1]===1?o[0]===1?r.text="\u03C0":r.text=o[0]+"\u03C0":r.text=["",o[0],"","\u2044","",o[1],"","\u03C0"].join(""),l&&(r.text=P0+r.text)}}}else r.text=mm(r.x,e,n,a)}function Pce(e){function r(l,s){return Math.abs(l-s)<=1e-6}function t(l,s){return r(s,0)?l:t(s,l%s)}function a(l){for(var s=1;!r(Math.round(l*s)/s,l);)s*=10;return s}var n=a(e),i=e*n,o=Math.abs(t(i,n));return[Math.round(i/o),Math.round(n/o)]}var OF=["f","p","n","\u03BC","m","","k","M","G","T"],Nce=["q","r","y","z","a",...OF,"P","E","Z","Y","R","Q"],Cd=e=>["SI","SI extended","B"].includes(e);function ww(e){return e>14||e<-15}function Aw(e){return e>32||e<-30}function Ice(e,r){return Cd(r)?!!(r==="SI extended"&&Aw(e)||r!=="SI extended"&&ww(e)):!1}function mm(e,r,t,a){var n=e<0,i=r._tickround,o=t||r.exponentformat||"B",l=r._tickexponent,s=rt.getTickFormat(r),f=r.separatethousands;if(a){var u={exponentformat:o,minexponent:r.minexponent,dtick:r.showexponent==="none"?r.dtick:ri(e)&&Math.abs(e)||1,range:r.showexponent==="none"?r.range.map(r.r2d):[0,e||1]};NF(u),i=(Number(u._tickround)||0)+4,l=u._tickexponent,r.hoverformat&&(s=r.hoverformat)}if(s)return r._numFormat(s)(e).replace(/-/g,P0);var c=Math.pow(10,-i)/2;if(o==="none"&&(l=0),e=Math.abs(e),e"+p+"":o==="B"&&l===9?e+="B":Cd(o)&&(e+=o==="SI extended"?Nce[l/3+10]:OF[l/3+5])}return n?P0+e:e}rt.getTickFormat=function(e){var r;function t(s){return typeof s!="string"?s:Number(s.replace("M",""))*kd}function a(s,f){var u=["L","D"];if(typeof s==typeof f){if(typeof s=="number")return s-f;var c=u.indexOf(s.charAt(0)),v=u.indexOf(f.charAt(0));return c===v?Number(s.replace(/(L|D)/g,""))-Number(f.replace(/(L|D)/g,"")):c-v}else return typeof s=="number"?1:-1}function n(s,f,u){var c=u||function(p){return p},v=f[0],d=f[1];return(!v&&typeof v!="number"||c(v)<=c(s))&&(!d&&typeof d!="number"||c(d)>=c(s))}function i(s,f){var u=f[0]===null,c=f[1]===null,v=a(s,f[0])>=0,d=a(s,f[1])<=0;return(u||v)&&(c||d)}var o,l;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(r=0;r=0&&n.unshift(n.splice(u,1).shift())}});var l={false:{left:0,right:0}};return Ot.syncOrAsync(n.map(function(s){return function(){if(s){var f=rt.getFromId(e,s);t||(t={}),t.axShifts=l,t.overlayingShiftedAx=o;var u=rt.drawOne(e,f,t);return f._shiftPusher&&xw(f,f._fullDepth||0,l,!0),f._r=f.range.slice(),f._rl=Ot.simpleMap(f._r,f.r2l),u}}}))};rt.drawOne=function(e,r,t){t=t||{};var a=t.axShifts||{},n=t.overlayingShiftedAx||[],i,o,l;r.setScale();var s=e._fullLayout,f=r._id,u=f.charAt(0),c=rt.counterLetter(f),v=s._plots[r._mainSubplot],d=r.zerolinelayer==="above traces";if(!v)return;if(r._shiftPusher=r.autoshift||n.indexOf(r._id)!==-1||n.indexOf(r.overlaying)!==-1,r._shiftPusher&r.anchor==="free"){var p=r.linewidth/2||0;r.ticks==="inside"&&(p+=r.ticklen),xw(r,p,a,!0),xw(r,r.shift||0,a,!1)}(t.skipTitle!==!0||r._shift===void 0)&&(r._shift=Jce(r,a));var y=v[u+"axislayer"],m=r._mainLinePosition,b=m+=r._shift,A=r._mainMirrorPosition,_=r._vals=rt.calcTicks(r),x=[r.mirror,b,A].join("_");for(i=0;i<_.length;i++)_[i].axInfo=x;r._selections={},r._tickAngles&&(r._prevTickAngles=r._tickAngles),r._tickAngles={},r._depth=null;var T={};function E(_r){var Ir=f+(_r||"tick");return T[Ir]||(T[Ir]=Gce(r,Ir,b)),T[Ir]}if(r.visible){var S=rt.makeTransTickFn(r),k=rt.makeTransTickLabelFn(r),F,I,O=r.ticks==="inside",q=r.ticks==="outside";if(r.tickson==="boundaries"){var H=Oce(r,_);I=rt.clipEnds(r,H),F=O?I:H}else I=rt.clipEnds(r,_),F=O&&r.ticklabelmode!=="period"?I:_;var j=r._gridVals=I,le=zce(r,_);if(!s._hasOnlyLargeSploms){var te=r._subplotsWith,Q={};for(i=0;i0?wr.bottom-Yr:0,Kr))));var lr=0,st=0;if(r._shiftPusher&&(lr=Math.max(Kr,wr.height>0?_r==="l"?Yr-wr.left:wr.right-Yr:0),r.title.text!==s._dfltTitle[u]&&(st=(r._titleStandoff||0)+(r._titleScoot||0),_r==="l"&&(st+=LF(r))),r._fullDepth=Math.max(lr,st)),r.automargin){Vr={x:0,y:0,r:0,l:0,t:0,b:0};var kt=[0,1],Ar=typeof r._shift=="number"?r._shift:0;if(u==="x"){if(_r==="b"?Vr[_r]=r._depth:(Vr[_r]=r._depth=Math.max(wr.width>0?Yr-wr.top:0,Kr),kt.reverse()),wr.width>0){var tr=wr.right-(r._offset+r._length);tr>0&&(Vr.xr=1,Vr.r=tr);var cr=r._offset-wr.left;cr>0&&(Vr.xl=0,Vr.l=cr)}}else if(_r==="l"?(r._depth=Math.max(wr.height>0?Yr-wr.left:0,Kr),Vr[_r]=r._depth-Ar):(r._depth=Math.max(wr.height>0?wr.right-Yr:0,Kr),Vr[_r]=r._depth+Ar,kt.reverse()),wr.height>0){var Hr=wr.bottom-(r._offset+r._length);Hr>0&&(Vr.yb=0,Vr.b=Hr);var ot=r._offset-wr.top;ot>0&&(Vr.yt=1,Vr.t=ot)}Vr[c]=r.anchor==="free"?r.position:r._anchorAxis.domain[kt[0]],r.title.text!==s._dfltTitle[u]&&(Vr[_r]+=LF(r)+(r.title.standoff||0)),r.mirror&&r.anchor!=="free"&&(Wr={x:0,y:0,r:0,l:0,t:0,b:0},Wr[Ir]=r.linewidth,r.mirror&&r.mirror!==!0&&(Wr[Ir]+=Kr),r.mirror===!0||r.mirror==="ticks"?Wr[c]=r._anchorAxis.domain[kt[1]]:(r.mirror==="all"||r.mirror==="allticks")&&(Wr[c]=[r._counterDomainMin,r._counterDomainMax][kt[1]]))}Pr&&(Re=vm.getComponentMethod("rangeslider","autoMarginOpts")(e,r)),typeof r.automargin=="string"&&(CF(Vr,r.automargin),CF(Wr,r.automargin)),Sd.autoMargin(e,Tw(r),Vr),Sd.autoMargin(e,zF(r),Wr),Sd.autoMargin(e,GF(r),Re)}),Ot.syncOrAsync(er)}};function CF(e,r){if(e){var t=Object.keys(wF).reduce(function(a,n){return r.indexOf(n)!==-1&&wF[n].forEach(function(i){a[i]=1}),a},{});Object.keys(e).forEach(function(a){t[a]||(a.length===1?e[a]=0:delete e[a])})}}function Oce(e,r){var t=[],a,n=function(i,o){var l=i.xbnd[o];l!==null&&t.push(Ot.extendFlat({},i,{x:l}))};if(r.length){for(a=0;ae.range[1],l=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,s=!l;if(t){var f=o?-1:1;t=t*f}if(a){var u=e.side,c=l&&(u==="top"||u==="left")||s&&(u==="bottom"||u==="right")?1:-1;a=a*c}return e._id.charAt(0)==="x"?function(v){return Ed(n+e._offset+e.l2p(gw(v))+t,i+a)}:function(v){return Ed(i+a,n+e._offset+e.l2p(gw(v))+t)}};function gw(e){return e.periodX!==void 0?e.periodX:e.x}function Uce(e){var r=e.ticklabelposition||"",t=e.tickson||"",a=function(p){return r.indexOf(p)!==-1},n=a("top"),i=a("left"),o=a("right"),l=a("bottom"),s=a("inside"),f=t!=="boundaries"&&(l||i||n||o);if(!f&&!s)return[0,0];var u=e.side,c=f?(e.tickwidth||0)/2:0,v=Q2,d=e.tickfont?e.tickfont.size:12;return(l||n)&&(c+=d*N0,v+=(e.linewidth||0)/2),(i||o)&&(c+=(e.linewidth||0)/2,v+=Q2),s&&u==="top"&&(v-=d*(1-N0)),(i||n)&&(c=-c),(u==="bottom"||u==="right")&&(v=-v),[f?c:0,s?v:0]}rt.makeTickPath=function(e,r,t,a){a||(a={});var n=a.minor;if(n&&!e.minor)return"";var i=a.len!==void 0?a.len:n?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),l=(e.linewidth||1)/2;return o==="x"?"M0,"+(r+l*t)+"v"+i*t:"M"+(r+l*t)+",0h"+i*t};rt.makeLabelFns=function(e,r,t){var a=e.ticklabelposition||"",n=e.tickson||"",i=function(H){return a.indexOf(H)!==-1},o=i("top"),l=i("left"),s=i("right"),f=i("bottom"),u=n!=="boundaries"&&(f||l||o||s),c=i("inside"),v=a==="inside"&&e.ticks==="inside"||!c&&e.ticks==="outside"&&n!=="boundaries",d=0,p=0,y=v?e.ticklen:0;if(c?y*=-1:u&&(y=0),v&&(d+=y,t)){var m=Ot.deg2rad(t);d=y*Math.cos(m)+1,p=y*Math.sin(m)}e.showticklabels&&(v||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(c?-1:1);var b={labelStandoff:d,labelShift:p},A,_,x,T,E=0,S=e.side,k=e._id.charAt(0),F=e.tickangle,I;if(k==="x")I=!c&&S==="bottom"||c&&S==="top",T=I?1:-1,c&&(T*=-1),A=p*T,_=r+d*T,x=I?1:-.2,Math.abs(F)===90&&(c?x+=cm:F===-90&&S==="bottom"?x=N0:F===90&&S==="top"?x=cm:x=.5,E=cm/2*(F/90)),b.xFn=function(H){return H.dx+A+E*H.fontSize},b.yFn=function(H){return H.dy+_+H.fontSize*x},b.anchorFn=function(H,j){if(u){if(l)return"end";if(s)return"start"}return!ri(j)||j===0||j===180?"middle":j*T<0!==c?"end":"start"},b.heightFn=function(H,j,le){return j<-60||j>60?-.5*le:e.side==="top"!==c?-le:0};else if(k==="y"){if(I=!c&&S==="left"||c&&S==="right",T=I?1:-1,c&&(T*=-1),A=d,_=p*T,x=0,!c&&Math.abs(F)===90&&(F===-90&&S==="left"||F===90&&S==="right"?x=N0:x=.5),c){var O=ri(F)?+F:0;if(O!==0){var q=Ot.deg2rad(O);E=Math.abs(Math.sin(q))*N0*T,x=0}}b.xFn=function(H){return H.dx+r-(A+H.fontSize*x)*T+E*H.fontSize},b.yFn=function(H){return H.dy+_+H.fontSize*cm},b.anchorFn=function(H,j){return ri(j)&&Math.abs(j)===90?"middle":I?"end":"start"},b.heightFn=function(H,j,le){return e.side==="right"&&(j*=-1),j<-30?-le:j<30?-.5*le:0}}return b};function r3(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}rt.drawTicks=function(e,r,t){t=t||{};var a=r._id+"tick",n=[].concat(r.minor&&r.minor.ticks?t.vals.filter(function(o){return o.minor&&!o.noTick}):[]).concat(r.ticks?t.vals.filter(function(o){return!o.minor&&!o.noTick}):[]),i=t.layer.selectAll("path."+a).data(n,r3);i.exit().remove(),i.enter().append("path").classed(a,1).classed("ticks",1).classed("crisp",t.crisp!==!1).each(function(o){return hm.stroke(Hl.select(this),o.minor?r.minor.tickcolor:r.tickcolor)}).style("stroke-width",function(o){return bl.crispRound(e,o.minor?r.minor.tickwidth:r.tickwidth,1)+"px"}).attr("d",t.path).style("display",null),t3(r,[DF]),i.attr("transform",t.transFn)};rt.drawGrid=function(e,r,t){if(t=t||{},r.tickmode!=="sync"){var a=r._id+"grid",n=r.minor&&r.minor.showgrid,i=n?t.vals.filter(function(b){return b.minor}):[],o=r.showgrid?t.vals.filter(function(b){return!b.minor}):[],l=t.counterAxis;if(l&&rt.shouldShowZeroLine(e,r,l))for(var s=r.tickmode==="array",f=0;f=0;p--){var y=p?v:d;if(y){var m=y.selectAll("path."+a).data(p?o:i,r3);m.exit().remove(),m.enter().append("path").classed(a,1).classed("crisp",t.crisp!==!1),m.attr("transform",t.transFn).attr("d",t.path).each(function(b){return hm.stroke(Hl.select(this),b.minor?r.minor.gridcolor:r.gridcolor||"#ddd")}).style("stroke-dasharray",function(b){return bl.dashStyle(b.minor?r.minor.griddash:r.griddash,b.minor?r.minor.gridwidth:r.gridwidth)}).style("stroke-width",function(b){return(b.minor?c:r._gw)+"px"}).style("display",null),typeof t.path=="function"&&m.attr("d",t.path)}}t3(r,[mw,yw])}};rt.drawZeroLine=function(e,r,t){t=t||t;var a=r._id+"zl",n=rt.shouldShowZeroLine(e,r,t.counterAxis),i=t.layer.selectAll("path."+a).data(n?[{x:0,id:r._id}]:[]);i.exit().remove(),i.enter().append("path").classed(a,1).classed("zl",1).classed("crisp",t.crisp!==!1).each(function(){t.layer.selectAll("path").sort(function(o,l){return gce(o.id,l.id)})}),i.attr("transform",t.transFn).attr("d",t.path).call(hm.stroke,r.zerolinecolor||hm.defaultLine).style("stroke-width",bl.crispRound(e,r.zerolinewidth,r._gw||1)+"px").style("display",null),t3(r,[pw])};rt.drawLabels=function(e,r,t){t=t||{};var a=e._fullLayout,n=r._id,i=r.zerolinelayer==="above traces",o=t.cls||n+"tick",l=t.vals.filter(function(Z){return Z.text}),s=t.labelFns,f=t.secondary?0:r.tickangle,u=(r._prevTickAngles||{})[o],c=t.layer.selectAll("g."+o).data(r.showticklabels?l:[],r3),v=[];c.enter().append("g").classed(o,1).append("text").attr("text-anchor","middle").each(function(Z){var ae=Hl.select(this),ue=e._promises.length;ae.call(R0.positionText,s.xFn(Z),s.yFn(Z)).call(bl.font,{family:Z.font,size:Z.fontSize,color:Z.fontColor,weight:Z.fontWeight,style:Z.fontStyle,variant:Z.fontVariant,textcase:Z.fontTextcase,lineposition:Z.fontLineposition,shadow:Z.fontShadow}).text(Z.text).call(R0.convertToTspans,e),e._promises[ue]?v.push(e._promises.pop().then(function(){d(ae,f)})):d(ae,f)}),t3(r,[_F]),c.exit().remove(),t.repositionOnUpdate&&c.each(function(Z){Hl.select(this).select("text").call(R0.positionText,s.xFn(Z),s.yFn(Z))});function d(Z,ae){Z.each(function(ue){var Le=Hl.select(this),Be=Le.select(".text-math-group"),Ee=s.anchorFn(ue,ae),Xe=t.transFn.call(Le.node(),ue)+(ri(ae)&&+ae!=0?" rotate("+ae+","+s.xFn(ue)+","+(s.yFn(ue)-ue.fontSize/2)+")":""),Ae=R0.lineCount(Le),rr=pm*ue.fontSize,ze=s.heightFn(ue,ri(ae)?+ae:0,(Ae-1)*rr);if(ze&&(Xe+=Ed(0,ze)),Be.empty()){var We=Le.select("text");We.attr({transform:Xe,"text-anchor":Ee}),We.style("display",null),r._adjustTickLabelsOverflow&&r._adjustTickLabelsOverflow()}else{var $e=bl.bBox(Be.node()).width,Ue=$e*{end:-.5,start:.5}[Ee];Be.attr("transform",Xe+Ed(Ue,0))}})}r._adjustTickLabelsOverflow=function(){var Z=r.ticklabeloverflow;if(!(!Z||Z==="allow")){var ae=Z.indexOf("hide")!==-1,ue=r._id.charAt(0)==="x",Le=0,Be=ue?e._fullLayout.width:e._fullLayout.height;if(Z.indexOf("domain")!==-1){var Ee=Ot.simpleMap(r.range,r.r2l);Le=r.l2p(Ee[0])+r._offset,Be=r.l2p(Ee[1])+r._offset}var Xe=Math.min(Le,Be),Ae=Math.max(Le,Be),rr=r.side,ze=1/0,We=-1/0;c.each(function(de){var ne=Hl.select(this),je=ne.select(".text-math-group");if(je.empty()){var ur=bl.bBox(ne.node()),er=0;ue?(ur.right>Ae||ur.leftAe||ur.top+(r.tickangle?0:de.fontSize/4)r["_visibleLabelMin_"+Ee._id]?ne.style("display","none"):Ae.K==="tick"&&!Xe&&ne.node().style.display!=="none"&&ne.style("display",null)})})})})},d(c,u+1?u:f);function p(){return v.length&&Promise.all(v)}var y=null;function m(){if(d(c,f),l.length&&r.autotickangles&&(r.type!=="log"||String(r.dtick).charAt(0)!=="D")){y=r.autotickangles[0];var Z=0,ae=[],ue,Le=1;c.each(function(Vr){Z=Math.max(Z,Vr.fontSize);var Wr=r.l2p(Vr.x),Re=bw(this),lr=bl.bBox(Re.node());Le=Math.max(Le,R0.lineCount(Re)),ae.push({top:0,bottom:10,height:10,left:Wr-lr.width/2,right:Wr+lr.width/2+2,width:lr.width+2})});var Be=(r.tickson==="boundaries"||r.showdividers)&&!t.secondary,Ee=l.length,Xe=Math.abs((l[Ee-1].x-l[0].x)*r._m)/(Ee-1),Ae=Be?Xe/2:Xe,rr=Be?r.ticklen:Z*1.25*Le,ze=Math.sqrt(Math.pow(Ae,2)+Math.pow(rr,2)),We=Ae/ze,$e=r.autotickangles.map(function(Vr){return Vr*Math.PI/180}),Ue=$e.find(function(Vr){return Math.abs(Math.cos(Vr))<=We});Ue===void 0&&(Ue=$e.reduce(function(Vr,Wr){return Math.abs(Math.cos(Vr))te*le&&(q=le,F[k]=I[k]=H[k])}var Q=Math.abs(q-O);Q-T>0?(Q-=T,T*=1+T/Q):T=0,r._id.charAt(0)!=="y"&&(T=-T),F[S]=_.p2r(_.r2p(I[S])+E*T),_.autorange==="min"||_.autorange==="max reversed"?(F[0]=null,_._rangeInitial0=void 0,_._rangeInitial1=void 0):(_.autorange==="max"||_.autorange==="min reversed")&&(F[1]=null,_._rangeInitial0=void 0,_._rangeInitial1=void 0),a._insideTickLabelsUpdaterange[_._name+".range"]=F}var J=Ot.syncOrAsync(b);return J&&J.then&&e._promises.push(J),J};function Hce(e,r,t){var a=r._id+"divider",n=t.vals,i=t.layer.selectAll("path."+a).data(n,r3);i.exit().remove(),i.enter().insert("path",":first-child").classed(a,1).classed("crisp",1).call(hm.stroke,r.dividercolor).style("stroke-width",bl.crispRound(e,r.dividerwidth,1)+"px"),i.attr("transform",t.transFn).attr("d",t.path)}rt.getPxPosition=function(e,r){var t=e._fullLayout._size,a=r._id.charAt(0),n=r.side,i;if(r.anchor!=="free"?i=r._anchorAxis:a==="x"?i={_offset:t.t+(1-(r.position||0))*t.h,_length:0}:a==="y"&&(i={_offset:t.l+(r.position||0)*t.w+r._shift,_length:0}),n==="top"||n==="left")return i._offset;if(n==="bottom"||n==="right")return i._offset+i._length};function LF(e){var r=e.title.font.size,t=(e.title.text.match(R0.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?r*(N0+t*pm):t?r*(t+1)*pm:r}function Vce(e,r){var t=e._fullLayout,a=r._id,n=a.charAt(0),i=r.title.font.size,o,l=(r.title.text.match(R0.BR_TAG_ALL)||[]).length;if(r.title.hasOwnProperty("standoff"))r.side==="bottom"||r.side==="right"?o=r._depth+r.title.standoff+i*N0:(r.side==="top"||r.side==="left")&&(o=r._depth+r.title.standoff+i*(cm+l*pm));else{var s=ym(r);if(r.type==="multicategory")o=r._depth;else{var f=1.5*i;s&&(f=.5*i,r.ticks==="outside"&&(f+=r.ticklen)),o=10+f+(r.linewidth?r.linewidth-1:0)}s||(n==="x"?o+=r.side==="top"?i*(r.showticklabels?1:0):i*(r.showticklabels?1.5:.5):o+=r.side==="right"?i*(r.showticklabels?1:.5):i*(r.showticklabels?.5:0))}var u=rt.getPxPosition(e,r),c,v,d;n==="x"?(v=r._offset+r._length/2,d=r.side==="top"?u-o:u+o):(d=r._offset+r._length/2,v=r.side==="right"?u+o:u-o,c={rotate:"-90",offset:0});var p;if(r.type!=="multicategory"){var y=r._selections[r._id+"tick"];if(p={selection:y,side:r.side},y&&y.node()&&y.node().parentNode){var m=bl.getTranslate(y.node().parentNode);p.offsetLeft=m.x,p.offsetTop=m.y}r.title.hasOwnProperty("standoff")&&(p.pad=0)}return r._titleStandoff=o,fce.draw(e,a+"title",{propContainer:r,propName:r._name+".title.text",placeholder:t._dfltTitle[n],avoid:p,transform:c,attributes:{x:v,y:d,"text-anchor":"middle"}})}rt.shouldShowZeroLine=function(e,r,t){var a=Ot.simpleMap(r.range,r.r2l);return a[0]*a[1]<=0&&r.zeroline&&(r.type==="linear"||r.type==="-")&&!(r.rangebreaks&&r.maskBreaks(0)===K2)&&(BF(r,0)||!Yce(e,r,t,a)||Wce(e,r))};rt.clipEnds=function(e,r){return r.filter(function(t){return BF(e,t.x)})};function BF(e,r){var t=e.l2p(r);return t>1&&t1)for(n=1;n=n.min&&e=pce:/%L/.test(r)?e>=dce:/%[SX]/.test(r)?e>=$2:/%M/.test(r)?e>=dm:/%[HI]/.test(r)?e>=Cf:/%p/.test(r)?e>=Vc:/%[Aadejuwx]/.test(r)?e>=mo:/%[UVW]/.test(r)?e>=xl:/%[Bbm]/.test(r)?e>=J2:/%[q]/.test(r)?e>=Z2:/%[Yy]/.test(r)?e>=X2:!0}});var VF=P((oLe,HF)=>{"use strict";HF.exports=function(r,t,a){var n,i;if(a){var o=t==="reversed"||t==="min reversed"||t==="max reversed";n=a[o?1:0],i=a[o?0:1]}var l=r("autorangeoptions.minallowed",i===null?n:void 0),s=r("autorangeoptions.maxallowed",n===null?i:void 0);l===void 0&&r("autorangeoptions.clipmin"),s===void 0&&r("autorangeoptions.clipmax"),r("autorangeoptions.include")}});var Sw=P((lLe,YF)=>{"use strict";var Qce=VF();YF.exports=function(r,t,a,n){var i=t._template||{},o=t.type||i.type||"-";a("minallowed"),a("maxallowed");var l=a("range");if(!l){var s;!n.noInsiderange&&o!=="log"&&(s=a("insiderange"),s&&(s[0]===null||s[1]===null)&&(t.insiderange=!1,s=void 0),s&&(l=a("range",s)))}var f=t.getAutorangeDflt(l,n),u=a("autorange",f),c;l&&(l[0]===null&&l[1]===null||(l[0]===null||l[1]===null)&&(u==="reversed"||u===!0)||l[0]!==null&&(u==="min"||u==="max reversed")||l[1]!==null&&(u==="max"||u==="min reversed"))&&(l=void 0,delete t.range,t.autorange=!0,c=!0),c||(f=t.getAutorangeDflt(l,n),u=a("autorange",f)),u&&(Qce(a,u,l),(o==="linear"||o==="-")&&a("rangemode")),t.cleanRange()}});var jF=P((sLe,WF)=>{var Kce={left:0,top:0};WF.exports=eve;function eve(e,r,t){r=r||e.currentTarget||e.srcElement,Array.isArray(t)||(t=[0,0]);var a=e.clientX||0,n=e.clientY||0,i=rve(r);return t[0]=a-i.left,t[1]=n-i.top,t}function rve(e){return e===window||e===document||e===document.body?Kce:e.getBoundingClientRect()}});var Ew=P((fLe,XF)=>{"use strict";var tve=t4();function ave(){var e=!1;try{var r=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,r),window.removeEventListener("test",null,r)}catch(t){e=!1}return e}XF.exports=tve&&ave()});var JF=P((uLe,ZF)=>{"use strict";ZF.exports=function(r,t,a,n,i){var o=(r-a)/(n-a),l=o+t/(n-a),s=(o+l)/2;return i==="left"||i==="bottom"?o:i==="center"||i==="middle"?s:i==="right"||i==="top"?l:o<2/3-s?o:l>4/3-s?l:s}});var KF=P((cLe,QF)=>{"use strict";var $F=Ur(),nve=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];QF.exports=function(r,t,a,n){return a==="left"?r=0:a==="center"?r=1:a==="right"?r=2:r=$F.constrain(Math.floor(r*3),0,2),n==="bottom"?t=0:n==="middle"?t=1:n==="top"?t=2:t=$F.constrain(Math.floor(t*3),0,2),nve[t][r]}});var rq=P((vLe,eq)=>{"use strict";var ive=Q1(),ove=n2(),lve=V1().getGraphDiv,sve=z1(),kw=eq.exports={};kw.wrapped=function(e,r,t){e=lve(e),e._fullLayout&&ove.clear(e._fullLayout._uid+sve.HOVERID),kw.raw(e,r,t)};kw.raw=function(r,t){var a=r._fullLayout,n=r._hoverdata;t||(t={}),!(t.target&&!r._dragged&&ive.triggerHandler(r,"plotly_beforehover",t)===!1)&&(a._hoverlayer.selectAll("g").remove(),a._hoverlayer.selectAll("line").remove(),a._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,t.target&&n&&r.emit("plotly_unhover",{event:t,points:n}))}});var Is=P((hLe,iq)=>{"use strict";var fve=jF(),Cw=n4(),uve=Ew(),cve=Ur().removeElement,vve=qi(),I0=iq.exports={};I0.align=JF();I0.getCursor=KF();var aq=rq();I0.unhover=aq.wrapped;I0.unhoverRaw=aq.raw;I0.init=function(r){var t=r.gd,a=1,n=t._context.doubleClickDelay,i=r.element,o,l,s,f,u,c,v,d;t._mouseDownTime||(t._mouseDownTime=0),i.style.pointerEvents="all",i.onmousedown=m,uve?(i._ontouchstart&&i.removeEventListener("touchstart",i._ontouchstart),i._ontouchstart=m,i.addEventListener("touchstart",m,{passive:!1})):i.ontouchstart=m;function p(_,x,T){return Math.abs(_)n&&(a=Math.max(a-1,1)),t._dragged)r.doneFn&&r.doneFn();else{var x;c.target===v?x=c:(x={target:v,srcElement:v,toElement:v},Object.keys(c).concat(Object.keys(c.__proto__)).forEach(T=>{var E=c[T];!x[T]&&typeof E!="function"&&(x[T]=E)})),r.clickFn&&r.clickFn(a,x),d||v.dispatchEvent(new MouseEvent("click",_))}t._dragging=!1,t._dragged=!1}};function nq(){var e=document.createElement("div");e.className="dragcover";var r=e.style;return r.position="fixed",r.left=0,r.right=0,r.top=0,r.bottom=0,r.zIndex=999999999,r.background="none",document.body.appendChild(e),e}I0.coverSlip=nq;function tq(e){return fve(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Yc=P((dLe,oq)=>{"use strict";oq.exports=function(r,t){(r.attr("class")||"").split(" ").forEach(function(a){a.indexOf("cursor-")===0&&r.classed(a,!1)}),t&&r.classed("cursor-"+t,!0)}});var fq=P((pLe,sq)=>{"use strict";var Lw=Yc(),gm="data-savedcursor",lq="!!";sq.exports=function(r,t){var a=r.attr(gm);if(t){if(!a){for(var n=(r.attr("class")||"").split(" "),i=0;i{"use strict";var Dw=Gi(),hve=Af();uq.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:hve.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:Dw({editType:"legend"}),grouptitlefont:Dw({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:Dw({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var n3=P(a3=>{"use strict";a3.isGrouped=function(r){return(r.traceorder||"").indexOf("grouped")!==-1};a3.isVertical=function(r){return r.orientation!=="h"};a3.isReversed=function(r){return(r.traceorder||"").indexOf("reversed")!==-1}});var Rw=P((gLe,cq)=>{"use strict";var i3=Bt(),_l=Ur(),dve=Xa(),pve=Cs(),mve=Fw(),yve=ad(),qw=n3();function gve(e,r,t,a){var n=r[e]||{},i=dve.newContainer(t,e);function o(J,Z){return _l.coerce(n,i,mve,J,Z)}var l=_l.coerceFont(o,"font",t.font);o("bgcolor",t.paper_bgcolor),o("bordercolor");var s=o("visible");if(!s)return;var f,u=function(J,Z){var ae=f._input,ue=f;return _l.coerce(ae,ue,pve,J,Z)},c=t.font||{},v=_l.coerceFont(o,"grouptitlefont",c,{overrideDflt:{size:Math.round(c.size*1.1)}}),d=0,p=!1,y="normal",m=(t.shapes||[]).filter(function(J){return J.showlegend});function b(J){return i3.traceIs(J,"pie-like")&&J._length!=null&&(Array.isArray(J.legend)||Array.isArray(J.showlegend))}a.filter(b).forEach(function(J){J.visible&&d++;for(var Z=0;ZJ.legend.length)for(var ue=J.legend.length;ue(e==="legend"?1:0));if(T===!1&&(t[e]=void 0),!(T===!1&&!n.uirevision)&&(o("uirevision",t.uirevision),T!==!1)){o("borderwidth");var E=o("orientation"),S=o("yref"),k=o("xref"),F=E==="h",I=S==="paper",O=k==="paper",q,H,j,le="left";F?(q=0,i3.getComponentMethod("rangeslider","isVisible")(r.xaxis)?I?(H=1.1,j="bottom"):(H=1,j="top"):I?(H=-.1,j="top"):(H=0,j="bottom")):(H=1,j="auto",O?q=1.02:(q=1,le="right")),_l.coerce(n,i,{x:{valType:"number",editType:"legend",min:O?-2:0,max:O?3:1,dflt:q}},"x"),_l.coerce(n,i,{y:{valType:"number",editType:"legend",min:I?-2:0,max:I?3:1,dflt:H}},"y"),o("traceorder",y),qw.isGrouped(t[e])&&o("tracegroupgap"),o("entrywidth"),o("entrywidthmode"),o("indentation"),o("itemsizing"),o("itemwidth"),o("itemclick"),o("itemdoubleclick"),o("groupclick"),o("xanchor",le),o("yanchor",j),o("maxheight"),o("valign"),_l.noneOrAll(n,i,["x","y"]);var te=o("title.text");if(te){o("title.side",F?"left":"top");var Q=_l.extendFlat({},l,{size:_l.bigFont(l.size)});_l.coerceFont(o,"title.font",Q)}}}cq.exports=function(r,t,a){var n,i=a.slice(),o=t.shapes;if(o)for(n=0;n{"use strict";var Ld=Bt(),Nw=Ur(),bve=Nw.pushUnique,Pw=!0;vq.exports=function(r,t,a){var n=t._fullLayout;if(t._dragged||t._editing)return;var i=n.legend.itemclick,o=n.legend.itemdoubleclick,l=n.legend.groupclick;a===1&&i==="toggle"&&o==="toggleothers"&&Pw&&t.data&&t._context.showTips&&Nw.notifier(Nw._(t,"Double-click on legend to isolate one trace"),"long"),Pw=!1;var s;if(a===1?s=i:a===2&&(s=o),!s)return;var f=l==="togglegroup",u=n.hiddenlabels?n.hiddenlabels.slice():[],c=r.data()[0][0];if(c.groupTitle&&c.noClick)return;var v=t._fullData,d=(n.shapes||[]).filter(function(Ir){return Ir.showlegend}),p=v.concat(d),y=c.trace;y._isShape&&(y=y._fullInput);var m=y.legendgroup,b,A,_,x,T,E,S={},k=[],F=[],I=[];function O(Ir,Yr){var Kr=k.indexOf(Ir),wr=S.visible;return wr||(wr=S.visible=[]),k.indexOf(Ir)===-1&&(k.push(Ir),Kr=k.length-1),wr[Kr]=Yr,Kr}var q=(n.shapes||[]).map(function(Ir){return Ir._input}),H=!1;function j(Ir,Yr){q[Ir].visible=Yr,H=!0}function le(Ir,Yr){if(!(c.groupTitle&&!f)){var Kr=Ir._fullInput||Ir,wr=Kr._isShape,Vr=Kr.index;Vr===void 0&&(Vr=Kr._index);var Wr=Kr.visible===!1?!1:Yr;wr?j(Vr,Wr):O(Vr,Wr)}}var te=y.legend,Q=y._fullInput,J=Q&&Q._isShape;if(!J&&Ld.traceIs(y,"pie-like")){var Z=c.label,ae=u.indexOf(Z);if(s==="toggle")ae===-1?u.push(Z):u.splice(ae,1);else if(s==="toggleothers"){var ue=ae!==-1,Le=[];for(b=0;b{"use strict";dq.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var yq=P((_Le,mq)=>{"use strict";var pq=Bt(),Ow=n3();mq.exports=function(r,t,a){var n=t._inHover,i=Ow.isGrouped(t),o=Ow.isReversed(t),l={},s=[],f=!1,u={},c=0,v=0,d,p;function y(Z,ae,ue){if(t.visible!==!1&&!(a&&Z!==t._id))if(ae===""||!Ow.isGrouped(t)){var Le="~~i"+c;s.push(Le),l[Le]=[ue],c++}else s.indexOf(ae)===-1?(s.push(ae),f=!0,l[ae]=[ue]):l[ae].push(ue)}for(d=0;dq&&(O=q)}F[d][0]._groupMinRank=O,F[d][0]._preGroupSort=d}var H=function(Z,ae){return Z[0]._groupMinRank-ae[0]._groupMinRank||Z[0]._preGroupSort-ae[0]._preGroupSort},j=function(Z,ae){return Z.trace.legendrank-ae.trace.legendrank||Z._preSort-ae._preSort};for(F.forEach(function(Z,ae){Z[0]._preGroupSort=ae}),F.sort(H),d=0;d{"use strict";var o3=Ur();function gq(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}O0.formatPiePercent=function(r,t){var a=gq((r*100).toPrecision(3));return o3.numSeparate(a,t)+"%"};O0.formatPieValue=function(r,t){var a=gq(r.toPrecision(10));return o3.numSeparate(a,t)};O0.getFirstFilled=function(r,t){if(o3.isArrayOrTypedArray(r))for(var a=0;a{"use strict";var xve=Ha(),_ve=ha();bq.exports=function(r,t,a,n){var i=a.marker.pattern;i&&i.shape?xve.pointStyle(r,a,n,t):_ve.fill(r,t.color)}});var Tq=P((TLe,Aq)=>{"use strict";var _q=ha(),wq=Bw().castOption,wve=xq();Aq.exports=function(r,t,a,n){var i=a.marker.line,o=wq(i.color,t.pts)||_q.defaultLine,l=wq(i.width,t.pts)||0;r.call(wve,t,a,n).style("stroke-width",l).call(_q.stroke,o)}});var Hw=P((MLe,Lq)=>{"use strict";var yo=da(),zw=Bt(),to=Ur(),Mq=to.strTranslate,wl=Ha(),Vl=ha(),Gw=Ps().extractOpts,l3=Ri(),Ave=Tq(),Tve=Bw().castOption,Mve=Iw(),Sq=12,Eq=5,B0=2,Sve=10,Dd=5;Lq.exports=function(r,t,a){var n=t._fullLayout;a||(a=n.legend);var i=a.itemsizing==="constant",o=a.itemwidth,l=(o+Mve.itemGap*2)/2,s=Mq(l,0),f=function(S,k,F,I){var O;if(S+1)O=S;else if(k&&k.width>0)O=k.width;else return 0;return i?I:Math.min(O,F)};r.each(function(S){var k=yo.select(this),F=to.ensureSingle(k,"g","layers");F.style("opacity",S[0].trace.opacity);var I=a.indentation,O=a.valign,q=S[0].lineHeight,H=S[0].height;if(O==="middle"&&I===0||!q||!H)F.attr("transform",null);else{var j={top:1,bottom:-1}[O],le=j*(.5*(q-H+3))||0,te=a.indentation;F.attr("transform",Mq(te,le))}var Q=F.selectAll("g.legendfill").data([S]);Q.enter().append("g").classed("legendfill",!0);var J=F.selectAll("g.legendlines").data([S]);J.enter().append("g").classed("legendlines",!0);var Z=F.selectAll("g.legendsymbols").data([S]);Z.enter().append("g").classed("legendsymbols",!0),Z.selectAll("g.legendpoints").data([S]).enter().append("g").classed("legendpoints",!0)}).each(E).each(v).each(p).each(d).each(m).each(x).each(_).each(u).each(c).each(b).each(A);function u(S){var k=kq(S),F=k.showFill,I=k.showLine,O=k.showGradientLine,q=k.showGradientFill,H=k.anyFill,j=k.anyLine,le=S[0],te=le.trace,Q,J,Z=Gw(te),ae=Z.colorscale,ue=Z.reversescale,Le=function(We){if(We.size())if(F)wl.fillGroupStyle(We,t,!0);else{var $e="legendfill-"+te.uid;wl.gradient(We,t,$e,Uw(ue),ae,"fill")}},Be=function(We){if(We.size()){var $e="legendline-"+te.uid;wl.lineGroupStyle(We),wl.gradient(We,t,$e,Uw(ue),ae,"stroke")}},Ee=l3.hasMarkers(te)||!H?"M5,0":j?"M5,-2":"M5,-3",Xe=yo.select(this),Ae=Xe.select(".legendfill").selectAll("path").data(F||q?[S]:[]);if(Ae.enter().append("path").classed("js-fill",!0),Ae.exit().remove(),Ae.attr("d",Ee+"h"+o+"v6h-"+o+"z").call(Le),I||O){var rr=f(void 0,te.line,Sve,Eq);J=to.minExtend(te,{line:{width:rr}}),Q=[to.minExtend(le,{trace:J})]}var ze=Xe.select(".legendlines").selectAll("path").data(I||O?[Q]:[]);ze.enter().append("path").classed("js-line",!0),ze.exit().remove(),ze.attr("d",Ee+(O?"l"+o+",0.0001":"h"+o)).call(I?wl.lineGroupStyle:Be)}function c(S){var k=kq(S),F=k.anyFill,I=k.anyLine,O=k.showLine,q=k.showMarker,H=S[0],j=H.trace,le=!q&&!I&&!F&&l3.hasText(j),te,Q;function J(Ae,rr,ze,We){var $e=to.nestedProperty(j,Ae).get(),Ue=to.isArrayOrTypedArray($e)&&rr?rr($e):$e;if(i&&Ue&&We!==void 0&&(Ue=We),ze){if(Ueze[1])return ze[1]}return Ue}function Z(Ae){return H._distinct&&H.index&&Ae[H.index]?Ae[H.index]:Ae[0]}if(q||le||O){var ae={},ue={};if(q){ae.mc=J("marker.color",Z),ae.mx=J("marker.symbol",Z),ae.mo=J("marker.opacity",to.mean,[.2,1]),ae.mlc=J("marker.line.color",Z),ae.mlw=J("marker.line.width",to.mean,[0,5],B0),ue.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var Le=J("marker.size",to.mean,[2,16],Sq);ae.ms=Le,ue.marker.size=Le}O&&(ue.line={width:J("line.width",Z,[0,10],Eq)}),le&&(ae.tx="Aa",ae.tp=J("textposition",Z),ae.ts=10,ae.tc=J("textfont.color",Z),ae.tf=J("textfont.family",Z),ae.tw=J("textfont.weight",Z),ae.ty=J("textfont.style",Z),ae.tv=J("textfont.variant",Z),ae.tC=J("textfont.textcase",Z),ae.tE=J("textfont.lineposition",Z),ae.tS=J("textfont.shadow",Z)),te=[to.minExtend(H,ae)],Q=to.minExtend(j,ue),Q.selectedpoints=null,Q.texttemplate=null}var Be=yo.select(this).select("g.legendpoints"),Ee=Be.selectAll("path.scatterpts").data(q?te:[]);Ee.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",s),Ee.exit().remove(),Ee.call(wl.pointStyle,Q,t),q&&(te[0].mrc=3);var Xe=Be.selectAll("g.pointtext").data(le?te:[]);Xe.enter().append("g").classed("pointtext",!0).append("text").attr("transform",s),Xe.exit().remove(),Xe.selectAll("text").call(wl.textPointStyle,Q,t)}function v(S){var k=S[0].trace,F=k.type==="waterfall";if(S[0]._distinct&&F){var I=S[0].trace[S[0].dir].marker;return S[0].mc=I.color,S[0].mlw=I.line.width,S[0].mlc=I.line.color,y(S,this,"waterfall")}var O=[];k.visible&&F&&(O=S[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var q=yo.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(O);q.enter().append("path").classed("legendwaterfall",!0).attr("transform",s).style("stroke-miterlimit",1),q.exit().remove(),q.each(function(H){var j=yo.select(this),le=k[H[0]].marker,te=f(void 0,le.line,Dd,B0);j.attr("d",H[1]).style("stroke-width",te+"px").call(Vl.fill,le.color),te&&j.call(Vl.stroke,le.line.color)})}function d(S){y(S,this)}function p(S){y(S,this,"funnel")}function y(S,k,F){var I=S[0].trace,O=I.marker||{},q=O.line||{},H=O.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",j=F?I.visible&&I.type===F:zw.traceIs(I,"bar"),le=yo.select(k).select("g.legendpoints").selectAll("path.legend"+F).data(j?[S]:[]);le.enter().append("path").classed("legend"+F,!0).attr("d",H).attr("transform",s),le.exit().remove(),le.each(function(te){var Q=yo.select(this),J=te[0],Z=f(J.mlw,O.line,Dd,B0);Q.style("stroke-width",Z+"px");var ae=J.mcc;if(!a._inHover&&"mc"in J){var ue=Gw(O),Le=ue.mid;Le===void 0&&(Le=(ue.max+ue.min)/2),ae=wl.tryColorscale(O,"")(Le)}var Be=ae||J.mc||O.color,Ee=O.pattern,Xe=wl.getPatternAttr,Ae=Ee&&(Xe(Ee.shape,0,"")||Xe(Ee.path,0,""));if(Ae){var rr=Xe(Ee.bgcolor,0,null),ze=Xe(Ee.fgcolor,0,null),We=Ee.fgopacity,$e=Cq(Ee.size,8,10),Ue=Cq(Ee.solidity,.5,1),ee="legend-"+I.uid;Q.call(wl.pattern,"legend",t,ee,Ae,$e,Ue,ae,Ee.fillmode,rr,ze,We)}else Q.call(Vl.fill,Be);Z&&Vl.stroke(Q,J.mlc||q.color)})}function m(S){var k=S[0].trace,F=yo.select(this).select("g.legendpoints").selectAll("path.legendbox").data(k.visible&&zw.traceIs(k,"box-violin")?[S]:[]);F.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),F.exit().remove(),F.each(function(){var I=yo.select(this);if((k.boxpoints==="all"||k.points==="all")&&Vl.opacity(k.fillcolor)===0&&Vl.opacity((k.line||{}).color)===0){var O=to.minExtend(k,{marker:{size:i?Sq:to.constrain(k.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});F.call(wl.pointStyle,O,t)}else{var q=f(void 0,k.line,Dd,B0);I.style("stroke-width",q+"px").call(Vl.fill,k.fillcolor),q&&Vl.stroke(I,k.line.color)}})}function b(S){var k=S[0].trace,F=yo.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(k.visible&&k.type==="candlestick"?[S,S]:[]);F.enter().append("path").classed("legendcandle",!0).attr("d",function(I,O){return O?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",s).style("stroke-miterlimit",1),F.exit().remove(),F.each(function(I,O){var q=yo.select(this),H=k[O?"increasing":"decreasing"],j=f(void 0,H.line,Dd,B0);q.style("stroke-width",j+"px").call(Vl.fill,H.fillcolor),j&&Vl.stroke(q,H.line.color)})}function A(S){var k=S[0].trace,F=yo.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(k.visible&&k.type==="ohlc"?[S,S]:[]);F.enter().append("path").classed("legendohlc",!0).attr("d",function(I,O){return O?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",s).style("stroke-miterlimit",1),F.exit().remove(),F.each(function(I,O){var q=yo.select(this),H=k[O?"increasing":"decreasing"],j=f(void 0,H.line,Dd,B0);q.style("fill","none").call(wl.dashLine,H.line.dash,j),j&&Vl.stroke(q,H.line.color)})}function _(S){T(S,this,"pie")}function x(S){T(S,this,"funnelarea")}function T(S,k,F){var I=S[0],O=I.trace,q=F?O.visible&&O.type===F:zw.traceIs(O,F),H=yo.select(k).select("g.legendpoints").selectAll("path.legend"+F).data(q?[S]:[]);if(H.enter().append("path").classed("legend"+F,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",s),H.exit().remove(),H.size()){var j=O.marker||{},le=f(Tve(j.line.width,I.pts),j.line,Dd,B0),te="pieLike",Q=to.minExtend(O,{marker:{line:{width:le}}},te),J=to.minExtend(I,{trace:Q},te);Ave(H,J,Q,t)}}function E(S){var k=S[0].trace,F,I=[];if(k.visible)switch(k.type){case"histogram2d":case"heatmap":I=[["M-15,-2V4H15V-2Z"]],F=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":I=[["M-6,-6V6H6V-6Z"]],F=!0;break;case"densitymapbox":case"densitymap":I=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],F="radial";break;case"cone":I=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],F=!1;break;case"streamtube":I=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],F=!1;break;case"surface":I=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],F=!0;break;case"mesh3d":I=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],F=!1;break;case"volume":I=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],F=!0;break;case"isosurface":I=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],F=!1;break}var O=yo.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(I);O.enter().append("path").classed("legend3dandfriends",!0).attr("transform",s).style("stroke-miterlimit",1),O.exit().remove(),O.each(function(q,H){var j=yo.select(this),le=Gw(k),te=le.colorscale,Q=le.reversescale,J=function(Le){if(Le.size()){var Be="legendfill-"+k.uid;wl.gradient(Le,t,Be,Uw(Q,F==="radial"),te,"fill")}},Z;if(te){if(!F){var ue=te.length;Z=H===0?te[Q?ue-1:0][1]:H===1?te[Q?0:ue-1][1]:te[Math.floor((ue-1)/2)][1]}}else{var ae=k.vertexcolor||k.facecolor||k.color;Z=to.isArrayOrTypedArray(ae)?ae[H]||ae[0]:ae}j.attr("d",q[0]),Z?j.call(Vl.fill,Z):j.call(J)})}};function Uw(e,r){var t=r?"radial":"horizontal";return t+(e?"":"reversed")}function kq(e){var r=e[0].trace,t=r.contours,a=l3.hasLines(r),n=l3.hasMarkers(r),i=r.visible&&r.fill&&r.fill!=="none",o=!1,l=!1;if(t){var s=t.coloring;s==="lines"?o=!0:a=s==="none"||s==="heatmap"||t.showlines,t.type==="constraint"?i=t._operation!=="=":(s==="fill"||s==="heatmap")&&(l=!0)}return{showMarker:n,showLine:a,showFill:i,showGradientLine:o,showGradientFill:l,anyLine:a||o,anyFill:i||l}}function Cq(e,r,t){return e&&to.isArrayOrTypedArray(e)?r:e>t?t:e}});var jw=P((SLe,zq)=>{"use strict";var $o=da(),ti=Ur(),Yw=xi(),Rd=Bt(),Dq=Q1(),Vw=Is(),ai=Ha(),f3=ha(),z0=po(),Fq=hq(),ui=Iw(),Ww=ho(),Oq=Ww.LINE_SPACING,qd=Ww.FROM_TL,qq=Ww.FROM_BR,Rq=yq(),Eve=Hw(),Pq=n3(),Fd=1,kve=/^legend[0-9]*$/;zq.exports=function(r,t){if(t)Nq(r,t);else{var a=r._fullLayout,n=a._legends,i=a._infolayer.selectAll('[class^="legend"]');i.each(function(){var f=$o.select(this),u=f.attr("class"),c=u.split(" ")[0];c.match(kve)&&n.indexOf(c)===-1&&f.remove()});for(var o=0;o1)}var p=a.hiddenlabels||[];if(!l&&(!a.showlegend||!s.length))return o.selectAll("."+n).remove(),a._topdefs.select("#"+i).remove(),Yw.autoMargin(e,n);var y=ti.ensureSingle(o,"g",n,function(k){l||k.attr("pointer-events","all")}),m=ti.ensureSingleById(a._topdefs,"clipPath",i,function(k){k.append("rect")}),b=ti.ensureSingle(y,"rect","bg",function(k){k.attr("shape-rendering","crispEdges")});b.call(f3.stroke,t.bordercolor).call(f3.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px");var A=ti.ensureSingle(y,"g","scrollbox"),_=t.title;t._titleWidth=0,t._titleHeight=0;var x;_.text?(x=ti.ensureSingle(A,"text",n+"titletext"),x.attr("text-anchor","start").call(ai.font,_.font).text(_.text),u3(x,A,e,t,Fd)):A.selectAll("."+n+"titletext").remove();var T=ti.ensureSingle(y,"rect","scrollbar",function(k){k.attr(ui.scrollBarEnterAttrs).call(f3.fill,ui.scrollBarColor)}),E=A.selectAll("g.groups").data(s);E.enter().append("g").attr("class","groups"),E.exit().remove();var S=E.selectAll("g.traces").data(ti.identity);S.enter().append("g").attr("class","traces"),S.exit().remove(),S.style("opacity",function(k){var F=k[0].trace;return Rd.traceIs(F,"pie-like")?p.indexOf(k[0].label)!==-1?.5:1:F.visible==="legendonly"?.5:1}).each(function(){$o.select(this).call(Lve,e,t)}).call(Eve,e,t).each(function(){l||$o.select(this).call(Dve,e,n)}),ti.syncOrAsync([Yw.previousPromises,function(){return Rve(e,E,S,t)},function(){var k=a._size,F=t.borderwidth,I=t.xref==="paper",O=t.yref==="paper";if(_.text&&Cve(x,t,F),!l){var q,H;I?q=k.l+k.w*t.x-qd[c3(t)]*t._width:q=a.width*t.x-qd[c3(t)]*t._width,O?H=k.t+k.h*(1-t.y)-qd[v3(t)]*t._effHeight:H=a.height*(1-t.y)-qd[v3(t)]*t._effHeight;var j=Pve(e,n,q,H);if(j)return;if(a.margin.autoexpand){var le=q,te=H;q=I?ti.constrain(q,0,a.width-t._width):le,H=O?ti.constrain(H,0,a.height-t._effHeight):te,q!==le&&ti.log("Constrain "+n+".x to make legend fit inside graph"),H!==te&&ti.log("Constrain "+n+".y to make legend fit inside graph")}ai.setTranslate(y,q,H)}if(T.on(".drag",null),y.on("wheel",null),l||t._height<=t._maxHeight||e._context.staticPlot){var Q=t._effHeight;l&&(Q=t._height),b.attr({width:t._width-F,height:Q-F,x:F/2,y:F/2}),ai.setTranslate(A,0,0),m.select("rect").attr({width:t._width-2*F,height:Q-2*F,x:F,y:F}),ai.setClipUrl(A,i,e),ai.setRect(T,0,0,0,0),delete t._scrollY}else{var J=Math.max(ui.scrollBarMinHeight,t._effHeight*t._effHeight/t._height),Z=t._effHeight-J-2*ui.scrollBarMargin,ae=t._height-t._effHeight,ue=Z/ae,Le=Math.min(t._scrollY||0,ae);b.attr({width:t._width-2*F+ui.scrollBarWidth+ui.scrollBarMargin,height:t._effHeight-F,x:F/2,y:F/2}),m.select("rect").attr({width:t._width-2*F+ui.scrollBarWidth+ui.scrollBarMargin,height:t._effHeight-2*F,x:F,y:F+Le}),ai.setClipUrl(A,i,e),$e(Le,J,ue),y.on("wheel",function(){Le=ti.constrain(t._scrollY+$o.event.deltaY/ae*Z,0,ae),$e(Le,J,ue),Le!==0&&Le!==ae&&$o.event.preventDefault()});var Be,Ee,Xe,Ae=function(je,ur,er){var Lr=(er-ur)/ue+je;return ti.constrain(Lr,0,ae)},rr=function(je,ur,er){var Lr=(ur-er)/ue+je;return ti.constrain(Lr,0,ae)},ze=$o.behavior.drag().on("dragstart",function(){var je=$o.event.sourceEvent;je.type==="touchstart"?Be=je.changedTouches[0].clientY:Be=je.clientY,Xe=Le}).on("drag",function(){var je=$o.event.sourceEvent;je.buttons===2||je.ctrlKey||(je.type==="touchmove"?Ee=je.changedTouches[0].clientY:Ee=je.clientY,Le=Ae(Xe,Be,Ee),$e(Le,J,ue))});T.call(ze);var We=$o.behavior.drag().on("dragstart",function(){var je=$o.event.sourceEvent;je.type==="touchstart"&&(Be=je.changedTouches[0].clientY,Xe=Le)}).on("drag",function(){var je=$o.event.sourceEvent;je.type==="touchmove"&&(Ee=je.changedTouches[0].clientY,Le=rr(Xe,Be,Ee),$e(Le,J,ue))});A.call(We)}function $e(je,ur,er){t._scrollY=e._fullLayout[n]._scrollY=je,ai.setTranslate(A,0,-je),ai.setRect(T,t._width,ui.scrollBarMargin+je*er,ui.scrollBarWidth,ur),m.select("rect").attr("y",F+je)}if(e._context.edits.legendPosition){var Ue,ee,de,ne;y.classed("cursor-move",!0),Vw.init({element:y.node(),gd:e,prepFn:function(je){if(je.target!==T.node()){var ur=ai.getTranslate(y);de=ur.x,ne=ur.y}},moveFn:function(je,ur){if(de!==void 0&&ne!==void 0){var er=de+je,Lr=ne+ur;ai.setTranslate(y,er,Lr),Ue=Vw.align(er,t._width,k.l,k.l+k.w,t.xanchor),ee=Vw.align(Lr+t._height,-t._height,k.t+k.h,k.t,t.yanchor)}},doneFn:function(){if(Ue!==void 0&&ee!==void 0){var je={};je[n+".x"]=Ue,je[n+".y"]=ee,Rd.call("_guiRelayout",e,je)}},clickFn:function(je,ur){var er=o.selectAll("g.traces").filter(function(){var Lr=this.getBoundingClientRect();return ur.clientX>=Lr.left&&ur.clientX<=Lr.right&&ur.clientY>=Lr.top&&ur.clientY<=Lr.bottom});er.size()>0&&Bq(e,y,er,je,ur)}})}}],e)}}function s3(e,r,t){var a=e[0],n=a.width,i=r.entrywidthmode,o=a.trace.legendwidth||r.entrywidth;return i==="fraction"?r._maxWidth*o:t+(o||n)}function Bq(e,r,t,a,n){var i=t.data()[0][0].trace,o={event:n,node:t.node(),curveNumber:i.index,expandedIndex:i.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};i._group&&(o.group=i._group),Rd.traceIs(i,"pie-like")&&(o.label=t.datum()[0].label);var l=Dq.triggerHandler(e,"plotly_legendclick",o);if(a===1){if(l===!1)return;r._clickTimeout=setTimeout(function(){e._fullLayout&&Fq(t,e,a)},e._context.doubleClickDelay)}else if(a===2){r._clickTimeout&&clearTimeout(r._clickTimeout),e._legendMouseDownTime=0;var s=Dq.triggerHandler(e,"plotly_legenddoubleclick",o);s!==!1&&l!==!1&&Fq(t,e,a)}}function Lve(e,r,t){var a=h3(t),n=e.data()[0][0],i=n.trace,o=Rd.traceIs(i,"pie-like"),l=!t._inHover&&r._context.edits.legendText&&!o,s=t._maxNameLength,f,u;n.groupTitle?(f=n.groupTitle.text,u=n.groupTitle.font):(u=t.font,t.entries?f=n.text:(f=o?n.label:i.name,i._meta&&(f=ti.templateString(f,i._meta))));var c=ti.ensureSingle(e,"text",a+"text");c.attr("text-anchor","start").call(ai.font,u).text(l?Iq(f,s):f);var v=t.indentation+t.itemwidth+ui.itemGap*2;z0.positionText(c,v,0),l?c.call(z0.makeEditable,{gd:r,text:f}).call(u3,e,r,t).on("edit",function(d){this.text(Iq(d,s)).call(u3,e,r,t);var p=n.trace._fullInput||{},y={};return y.name=d,p._isShape?Rd.call("_guiRelayout",r,"shapes["+i.index+"].name",y.name):Rd.call("_guiRestyle",r,y,i.index)}):u3(c,e,r,t)}function Iq(e,r){var t=Math.max(4,r);if(e&&e.trim().length>=t/2)return e;e=e||"";for(var a=t-e.length;a>0;a--)e+=" ";return e}function Dve(e,r,t){var a=r._context.doubleClickDelay,n,i=1,o=ti.ensureSingle(e,"rect",t+"toggle",function(l){r._context.staticPlot||l.style("cursor","pointer").attr("pointer-events","all"),l.call(f3.fill,"rgba(0,0,0,0)")});r._context.staticPlot||(o.on("mousedown",function(){n=new Date().getTime(),n-r._legendMouseDownTimea&&(i=Math.max(i-1,1)),Bq(r,l,e,i,$o.event)}}))}function u3(e,r,t,a,n){a._inHover&&e.attr("data-notex",!0),z0.convertToTspans(e,t,function(){Fve(r,t,a,n)})}function Fve(e,r,t,a){var n=e.data()[0][0],i=n&&n.trace.showlegend;if(Array.isArray(i)&&(i=i[n.i]!==!1),!t._inHover&&n&&!i){e.remove();return}var o=e.select("g[class*=math-group]"),l=o.node(),s=h3(t);t||(t=r._fullLayout[s]);var f=t.borderwidth,u;a===Fd?u=t.title.font:n.groupTitle?u=n.groupTitle.font:u=t.font;var c=u.size*Oq,v,d;if(l){var p=ai.bBox(l);v=p.height,d=p.width,a===Fd?ai.setTranslate(o,f,f+v*.75):ai.setTranslate(o,0,v*.25)}else{var y="."+s+(a===Fd?"title":"")+"text",m=e.select(y),b=z0.lineCount(m),A=m.node();if(v=c*b,d=A?ai.bBox(A).width:0,a===Fd)t.title.side==="left"&&(d+=ui.itemGap*2),z0.positionText(m,f+ui.titlePad,f+c);else{var _=ui.itemGap*2+t.indentation+t.itemwidth;n.groupTitle&&(_=ui.itemGap,d-=t.indentation+t.itemwidth),z0.positionText(m,_,-c*((b-1)/2-.3))}}a===Fd?(t._titleWidth=d,t._titleHeight=v):(n.lineHeight=c,n.height=Math.max(v,16)+3,n.width=d)}function qve(e){var r=0,t=0,a=e.title.side;return a&&(a.indexOf("left")!==-1&&(r=e._titleWidth),a.indexOf("top")!==-1&&(t=e._titleHeight)),[r,t]}function Rve(e,r,t,a){var n=e._fullLayout,i=h3(a);a||(a=n[i]);var o=n._size,l=Pq.isVertical(a),s=Pq.isGrouped(a),f=a.entrywidthmode==="fraction",u=a.borderwidth,c=2*u,v=ui.itemGap,d=a.indentation+a.itemwidth+v*2,p=2*(u+v),y=v3(a),m=a.y<0||a.y===0&&y==="top",b=a.y>1||a.y===1&&y==="bottom",A=a.tracegroupgap,_={};let{orientation:x,yref:T}=a,{maxheight:E}=a,S=m||b||x!=="v"||T!=="paper";E||(E=S?.5:1);let k=S?n.height:o.h;a._maxHeight=Math.max(E>1?E:E*k,30);var F=0;a._width=0,a._height=0;var I=qve(a);if(l)t.each(function($e){var Ue=$e[0].height;ai.setTranslate(this,u+I[0],u+I[1]+a._height+Ue/2+v),a._height+=Ue,a._width=Math.max(a._width,$e[0].width)}),F=d+a._width,a._width+=v+d+c,a._height+=p,s&&(r.each(function($e,Ue){ai.setTranslate(this,0,Ue*a.tracegroupgap)}),a._height+=(a._lgroupsLength-1)*a.tracegroupgap);else{var O=c3(a),q=a.x<0||a.x===0&&O==="right",H=a.x>1||a.x===1&&O==="left",j=b||m,le=n.width/2;a._maxWidth=Math.max(q?j&&O==="left"?o.l+o.w:le:H?j&&O==="right"?o.r+o.w:le:o.w,2*d);var te=0,Q=0;t.each(function($e){var Ue=s3($e,a,d);te=Math.max(te,Ue),Q+=Ue}),F=null;var J=0;if(s){var Z=0,ae=0,ue=0;r.each(function(){var $e=0,Ue=0;$o.select(this).selectAll("g.traces").each(function(de){var ne=s3(de,a,d),je=de[0].height;ai.setTranslate(this,I[0],I[1]+u+v+je/2+Ue),Ue+=je,$e=Math.max($e,ne),_[de[0].trace.legendgroup]=$e});var ee=$e+v;ae>0&&ee+u+ae>a._maxWidth?(J=Math.max(J,ae),ae=0,ue+=Z+A,Z=Ue):Z=Math.max(Z,Ue),ai.setTranslate(this,ae,ue),ae+=ee}),a._width=Math.max(J,ae)+u,a._height=ue+Z+p}else{var Le=t.size(),Be=Q+c+(Le-1)*v=a._maxWidth&&(J=Math.max(J,rr),Xe=0,Ae+=Ee,a._height+=Ee,Ee=0),ai.setTranslate(this,I[0]+u+Xe,I[1]+u+Ae+Ue/2+v),rr=Xe+ee+v,Xe+=de,Ee=Math.max(Ee,Ue)}),Be?(a._width=Xe+c,a._height=Ee+p):(a._width=Math.max(J,rr)+c,a._height+=Ee+p)}}a._width=Math.ceil(Math.max(a._width+I[0],a._titleWidth+2*(u+ui.titlePad))),a._height=Math.ceil(Math.max(a._height+I[1],a._titleHeight+2*(u+ui.itemGap))),a._effHeight=Math.min(a._height,a._maxHeight);var ze=e._context.edits,We=ze.legendText||ze.legendPosition;t.each(function($e){var Ue=$o.select(this).select("."+i+"toggle"),ee=$e[0].height,de=$e[0].trace.legendgroup,ne=s3($e,a,d);s&&de!==""&&(ne=_[de]);var je=We?d:F||ne;!l&&!f&&(je+=v/2),ai.setRect(Ue,0,-ee/2,je,ee)})}function Pve(e,r,t,a){var n=e._fullLayout,i=n[r],o=c3(i),l=v3(i),s=i.xref==="paper",f=i.yref==="paper";e._fullLayout._reservedMargin[r]={};var u=i.y<.5?"b":"t",c=i.x<.5?"l":"r",v={r:n.width-t,l:t+i._width,b:n.height-a,t:a+i._effHeight};if(s&&f)return Yw.autoMargin(e,r,{x:i.x,y:i.y,l:i._width*qd[o],r:i._width*qq[o],b:i._effHeight*qq[l],t:i._effHeight*qd[l]});s?e._fullLayout._reservedMargin[r][u]=v[u]:f||i.orientation==="v"?e._fullLayout._reservedMargin[r][c]=v[c]:e._fullLayout._reservedMargin[r][u]=v[u]}function c3(e){return ti.isRightAnchor(e)?"right":ti.isCenterAnchor(e)?"center":"left"}function v3(e){return ti.isBottomAnchor(e)?"bottom":ti.isMiddleAnchor(e)?"middle":"top"}function h3(e){return e._id||"legend"}});var $w=P(Jw=>{"use strict";var G0=da(),Du=ba(),Gq=ks(),qn=Ur(),Nve=qn.pushUnique,Xw=qn.strTranslate,Ive=qn.strRotate,Ove=Q1(),Yl=po(),Bve=fq(),Lf=Ha(),wi=ha(),d3=Is(),Df=yn(),zve=qi().zindexSeparator,Nd=Bt(),Os=Cu(),U0=z1(),Gve=Rw(),Uve=jw(),Zq=U0.YANGLE,Zw=Math.PI*Zq/180,Hve=1/Math.sin(Zw),Vve=Math.cos(Zw),Yve=Math.sin(Zw),gn=U0.HOVERARROWSIZE,ua=U0.HOVERTEXTPAD,Uq={box:!0,ohlc:!0,violin:!0,candlestick:!0},Wve={scatter:!0,scattergl:!0,splom:!0};function Hq(e,r){return e.distance-r.distance}Jw.hover=function(r,t,a,n){r=qn.getGraphDiv(r);var i=t.target;qn.throttle(r._fullLayout._uid+U0.HOVERID,U0.HOVERMINTIME,function(){jve(r,t,a,n,i)})};Jw.loneHover=function(r,t){var a=!0;Array.isArray(r)||(a=!1,r=[r]);var n=t.gd,i=eR(n),o=rR(n),l=r.map(function(m){var b=m._x0||m.x0||m.x||0,A=m._x1||m.x1||m.x||0,_=m._y0||m.y0||m.y||0,x=m._y1||m.y1||m.y||0,T=m.eventData;if(T){var E=Math.min(b,A),S=Math.max(b,A),k=Math.min(_,x),F=Math.max(_,x),I=m.trace;if(Nd.traceIs(I,"gl3d")){var O=n._fullLayout[I.scene]._scene.container,q=O.offsetLeft,H=O.offsetTop;E+=q,S+=q,k+=H,F+=H}T.bbox={x0:E+o,x1:S+o,y0:k+i,y1:F+i},t.inOut_bbox&&t.inOut_bbox.push(T.bbox)}else T=!1;return{color:m.color||wi.defaultLine,x0:m.x0||m.x||0,x1:m.x1||m.x||0,y0:m.y0||m.y||0,y1:m.y1||m.y||0,xLabel:m.xLabel,yLabel:m.yLabel,zLabel:m.zLabel,text:m.text,name:m.name,idealAlign:m.idealAlign,borderColor:m.borderColor,fontFamily:m.fontFamily,fontSize:m.fontSize,fontColor:m.fontColor,fontWeight:m.fontWeight,fontStyle:m.fontStyle,fontVariant:m.fontVariant,nameLength:m.nameLength,textAlign:m.textAlign,trace:m.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:m.hovertemplate||!1,hovertemplateLabels:m.hovertemplateLabels||!1,eventData:T}}),s=!1,f=$q(l,{gd:n,hovermode:"closest",rotateLabels:s,bgColor:t.bgColor||wi.background,container:G0.select(t.container),outerContainer:t.outerContainer||t.container}),u=f.hoverLabels,c=5,v=0,d=0;u.sort(function(m,b){return m.y0-b.y0}).each(function(m,b){var A=m.y0-m.by/2;A-cS[0]._length||ne<0||ne>k[0]._length)return d3.unhoverRaw(e,r)}if(r.pointerX=de+S[0]._offset,r.pointerY=ne+k[0]._offset,"xval"in r?te=Os.flat(i,r.xval):te=Os.p2c(S,de),"yval"in r?Q=Os.flat(i,r.yval):Q=Os.p2c(k,ne),!Du(te[0])||!Du(Q[0]))return qn.warn("Fx.hover failed",r,e),d3.unhoverRaw(e,r)}var er=1/0;function Lr(Et,Pa){for(Z=0;Zze&&(j.splice(0,ze),er=j[0].distance),c&&H!==0&&j.length===0){rr.distance=H,rr.index=!1;var fa=ue._module.hoverPoints(rr,Xe,Ae,"closest",{hoverLayer:l._hoverlayer});if(fa&&(fa=fa.filter(function(dn){return dn.spikeDistance<=H})),fa&&fa.length){var Tn,Ka=fa.filter(function(dn){return dn.xa.showspikes&&dn.xa.spikesnap!=="hovered data"});if(Ka.length){var en=Ka[0];Du(en.x0)&&Du(en.y0)&&(Tn=_r(en),(!We.vLinePoint||We.vLinePoint.spikeDistance>Tn.spikeDistance)&&(We.vLinePoint=Tn))}var lo=fa.filter(function(dn){return dn.ya.showspikes&&dn.ya.spikesnap!=="hovered data"});if(lo.length){var Oi=lo[0];Du(Oi.x0)&&Du(Oi.y0)&&(Tn=_r(Oi),(!We.hLinePoint||We.hLinePoint.spikeDistance>Tn.spikeDistance)&&(We.hLinePoint=Tn))}}}}}Lr();function Pr(Et,Pa,ia){for(var Ia=null,$a=1/0,Qa,fa=0;faEt.trace.index===tr.trace.index):j=[tr];var cr=j.length,Hr=Xq("x",tr,l),ot=Xq("y",tr,l);Lr(Hr,ot);var jr=[],at={},xt=0,Xr=function(Et){var Pa=Uq[Et.trace.type]?Jq(Et):Et.trace.index;if(!at[Pa])xt++,at[Pa]=xt,jr.push(Et);else{var ia=at[Pa]-1,Ia=jr[ia];ia>0&&Math.abs(Et.distance)cr-1;nt--)Xr(j[nt]);j=jr,wr()}var gr=e._hoverdata,Se=[],Ne=eR(e),pr=rR(e);for(let Et of j){var xr=Os.makeEventData(Et,Et.trace,Et.cd);if(Et.hovertemplate!==!1){var ht=!1;Et.cd[Et.index]&&Et.cd[Et.index].ht&&(ht=Et.cd[Et.index].ht),Et.hovertemplate=ht||Et.trace.hovertemplate||!1}if(Et.xa&&Et.ya){var Tt=Et.x0+Et.xa._offset,wt=Et.x1+Et.xa._offset,It=Et.y0+Et.ya._offset,ta=Et.y1+Et.ya._offset,Ma=Math.min(Tt,wt),Ba=Math.max(Tt,wt),an=Math.min(It,ta),Va=Math.max(It,ta);xr.bbox={x0:Ma+pr,x1:Ba+pr,y0:an+Ne,y1:Va+Ne}}Et.eventData=[xr],Se.push(xr)}e._hoverdata=Se;var xn=v==="y"&&(le.length>1||j.length>1)||v==="closest"&&$e&&j.length>1,Rn=wi.combine(l.plot_bgcolor||wi.background,l.paper_bgcolor),hi=$q(j,{gd:e,hovermode:v,rotateLabels:xn,bgColor:Rn,container:l._hoverlayer,outerContainer:l._paper.node(),commonLabelOpts:l.hoverlabel,hoverdistance:l.hoverdistance}),hn=hi.hoverLabels;if(Os.isUnifiedHover(v)||(Zve(hn,xn,l,hi.commonLabelBoundingBox),Kq(hn,xn,l._invScaleX,l._invScaleY)),n&&n.tagName){var Xn=Nd.getComponentMethod("annotations","hasClickToShow")(e,Se);Bve(G0.select(n),Xn?"pointer":"")}!n||a||!Qve(e,r,gr)||(gr&&e.emit("plotly_unhover",{event:r,points:gr}),e.emit("plotly_hover",{event:r,points:e._hoverdata,xaxes:S,yaxes:k,xvals:te,yvals:Q}))}function Jq(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var Xve=/([\s\S]*)<\/extra>/;function $q(e,r){var t=r.gd,a=t._fullLayout,n=r.hovermode,i=r.rotateLabels,o=r.bgColor,l=r.container,s=r.outerContainer,f=r.commonLabelOpts||{};if(e.length===0)return[[]];var u=r.fontFamily||U0.HOVERFONT,c=r.fontSize||U0.HOVERFONTSIZE,v=r.fontWeight||a.font.weight,d=r.fontStyle||a.font.style,p=r.fontVariant||a.font.variant,y=r.fontTextcase||a.font.textcase,m=r.fontLineposition||a.font.lineposition,b=r.fontShadow||a.font.shadow,A=e[0],_=A.xa,x=A.ya,T=n.charAt(0),E=T+"Label",S=A[E];if(S===void 0&&_.type==="multicategory")for(var k=0;ka.width-Ne&&(pr=a.width-Ne),tr.attr("d","M"+(nt-pr)+",0L"+(nt-pr+gn)+","+Se+gn+"H"+Ne+"v"+Se+(ua*2+Xr.height)+"H"+-Ne+"V"+Se+gn+"H"+(nt-pr-gn)+"Z"),nt=pr,Z.minX=nt-Ne,Z.maxX=nt+Ne,_.side==="top"?(Z.minY=gr-(ua*2+Xr.height),Z.maxY=gr-ua):(Z.minY=gr+ua,Z.maxY=gr+(ua*2+Xr.height))}else{var xr,ht,Tt;x.side==="right"?(xr="start",ht=1,Tt="",nt=_._offset+_._length):(xr="end",ht=-1,Tt="-",nt=_._offset),gr=x._offset+(A.y0+A.y1)/2,cr.attr("text-anchor",xr),tr.attr("d","M0,0L"+Tt+gn+","+gn+"V"+(ua+Xr.height/2)+"h"+Tt+(ua*2+Xr.width)+"V-"+(ua+Xr.height/2)+"H"+Tt+gn+"V-"+gn+"Z"),Z.minY=gr-(ua+Xr.height/2),Z.maxY=gr+(ua+Xr.height/2),x.side==="right"?(Z.minX=nt+gn,Z.maxX=nt+gn+(ua*2+Xr.width)):(Z.minX=nt-gn-(ua*2+Xr.width),Z.maxX=nt-gn);var wt=Xr.height/2,It=I-Xr.top-wt,ta="clip"+a._uid+"commonlabel"+x._id,Ma;if(nttr.hoverinfo!=="none");if(Ar.length===0)return[];var ae=a.hoverlabel,ue=ae.font,Le=Ar[0],Be=((n==="x unified"?Le.xa:Le.ya).unifiedhovertitle||{}).text,Ee=Be?qn.hovertemplateString({data:n==="x unified"?[{xa:Le.xa,x:Le.xVal}]:[{ya:Le.ya,y:Le.yVal}],fallback:Le.trace.hovertemplatefallback,locale:a._d3locale,template:Be}):S,Xe={showlegend:!0,legend:{title:{text:Ee,font:ue},font:ue,bgcolor:ae.bgcolor,bordercolor:ae.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:a.legend?a.legend.traceorder:void 0,orientation:"v"}},Ae={font:ue};Gve(Xe,Ae,t._fullData);var rr=Ae.legend;rr.entries=[];for(var ze=0;ze=0?lr=wr:Vr+ur=0?lr=Vr:Wr+ur=0?st=Yr:Kr+er=0?st=Kr:Re+er=0,(Ar.idealAlign==="top"||!Va)&&xn?(Tt-=It/2,Ar.anchor="end"):Va?(Tt+=It/2,Ar.anchor="start"):Ar.anchor="middle",Ar.crossPos=Tt;else{if(Ar.pos=Tt,Va=ht+wt/2+an<=O,xn=ht-wt/2-an>=0,(Ar.idealAlign==="left"||!Va)&&xn)ht-=wt/2,Ar.anchor="end";else if(Va)ht+=wt/2,Ar.anchor="start";else{Ar.anchor="middle";var Rn=an/2,hi=ht+Rn-O,hn=ht-Rn;hi>0&&(ht-=hi),hn<0&&(ht+=-hn)}Ar.crossPos=ht}gr.attr("text-anchor",Ar.anchor),Ne&&Se.attr("text-anchor",Ar.anchor),tr.attr("transform",Xw(ht,Tt)+(i?Ive(Zq):""))}),{hoverLabels:kt,commonLabelBoundingBox:Z}}function Vq(e,r,t,a,n,i){var c,v;var o="",l="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=qn.templateString(e.name,e.trace._meta)),o=jq(e.name,e.nameLength));var s=t.charAt(0),f=s==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(l+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(l+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(l+=(l?"z: ":"")+e.zLabel)):r&&e[s+"Label"]===n?l=e[f+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(l=e.yLabel):e.yLabel===void 0?l=e.xLabel:l="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(l+=(l?"
":"")+e.text),e.extraText!==void 0&&(l+=(l?"
":"")+e.extraText),i&&l===""&&!e.hovertemplate&&(o===""&&i.remove(),l=o),(v=(c=e.trace)==null?void 0:c.hoverlabel)!=null&&v.split&&(e.hovertemplate="");let{hovertemplate:u=!1}=e;if(u){let d=e.hovertemplateLabels||e;e[s+"Label"]!==n&&(d[s+"other"]=d[s+"Val"],d[s+"otherLabel"]=d[s+"Label"]),l=qn.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:a._d3locale,template:u}),l=l.replace(Xve,(p,y)=>(o=jq(y,e.nameLength),""))}return[l,o]}function Zve(e,r,t,a){var n=r?"xa":"ya",i=r?"ya":"xa",o=0,l=1,s=e.size(),f=new Array(s),u=0,c=a.minX,v=a.maxX,d=a.minY,p=a.maxY,y=function(te){return te*t._invScaleX},m=function(te){return te*t._invScaleY};e.each(function(te){var Q=te[n],J=te[i],Z=Q._id.charAt(0)==="x",ae=Q.range;u===0&&ae&&ae[0]>ae[1]!==Z&&(l=-1);var ue=0,Le=Z?t.width:t.height;if(t.hovermode==="x"||t.hovermode==="y"){var Be=Qq(te,r),Ee=te.anchor,Xe=Ee==="end"?-1:1,Ae,rr;if(Ee==="middle")Ae=te.crossPos+(Z?m(Be.y-te.by/2):y(te.bx/2+te.tx2width/2)),rr=Ae+(Z?m(te.by):y(te.bx));else if(Z)Ae=te.crossPos+m(gn+Be.y)-m(te.by/2-gn),rr=Ae+m(te.by);else{var ze=y(Xe*gn+Be.x),We=ze+y(Xe*te.bx);Ae=te.crossPos+Math.min(ze,We),rr=te.crossPos+Math.max(ze,We)}Z?d!==void 0&&p!==void 0&&Math.min(rr,p)-Math.max(Ae,d)>1&&(J.side==="left"?(ue=J._mainLinePosition,Le=t.width):Le=J._mainLinePosition):c!==void 0&&v!==void 0&&Math.min(rr,v)-Math.max(Ae,c)>1&&(J.side==="top"?(ue=J._mainLinePosition,Le=t.height):Le=J._mainLinePosition)}f[u++]=[{datum:te,traceIndex:te.trace.index,dp:0,pos:te.pos,posref:te.posref,size:te.by*(Z?Hve:1)/2,pmin:ue,pmax:Le}]}),f.sort(function(te,Q){return te[0].posref-Q[0].posref||l*(Q[0].traceIndex-te[0].traceIndex)});var b,A,_,x,T,E,S;function k(te){var Q=te[0],J=te[te.length-1];if(A=Q.pmin-Q.pos-Q.dp+Q.size,_=J.pos+J.dp+J.size-Q.pmax,A>.01){for(T=te.length-1;T>=0;T--)te[T].dp+=A;b=!1}if(!(_<.01)){if(A<-.01){for(T=te.length-1;T>=0;T--)te[T].dp-=_;b=!1}if(b){var Z=0;for(x=0;xQ.pmax&&Z++;for(x=te.length-1;x>=0&&!(Z<=0);x--)E=te[x],E.pos>Q.pmax-1&&(E.del=!0,Z--);for(x=0;x=0;T--)te[T].dp-=_;for(x=te.length-1;x>=0&&!(Z<=0);x--)E=te[x],E.pos+E.dp+E.size>Q.pmax&&(E.del=!0,Z--)}}}for(;!b&&o<=s;){for(o++,b=!0,x=0;x.01){for(T=I.length-1;T>=0;T--)I[T].dp+=A;for(F.push.apply(F,I),f.splice(x+1,1),S=0,T=F.length-1;T>=0;T--)S+=F[T].dp;for(_=S/F.length,T=F.length-1;T>=0;T--)F[T].dp-=_;b=!1}else x++}f.forEach(k)}for(x=f.length-1;x>=0;x--){var H=f[x];for(T=H.length-1;T>=0;T--){var j=H[T],le=j.datum;le.offset=j.dp,le.del=j.del}}}function Qq(e,r){var t=0,a=e.offset;return r&&(a*=-Yve,t=e.offset*Vve),{x:t,y:a}}function Jve(e){var r={start:1,end:-1,middle:0}[e.anchor],t=r*(gn+ua),a=t+r*(e.txwidth+ua),n=e.anchor==="middle";return n&&(t-=e.tx2width/2,a+=e.txwidth/2+ua),{alignShift:r,textShiftX:t,text2ShiftX:a}}function Kq(e,r,t,a){var n=function(o){return o*t},i=function(o){return o*a};e.each(function(o){var l=G0.select(this);if(o.del)return l.remove();var s=l.select("text.nums"),f=o.anchor,u=f==="end"?-1:1,c=Jve(o),v=Qq(o,r),d=v.x,p=v.y,y=f==="middle",m="hoverlabel"in o.trace?o.trace.hoverlabel.showarrow:!0,b;y?b="M-"+n(o.bx/2+o.tx2width/2)+","+i(p-o.by/2)+"h"+n(o.bx)+"v"+i(o.by)+"h-"+n(o.bx)+"Z":m?b="M0,0L"+n(u*gn+d)+","+i(gn+p)+"v"+i(o.by/2-gn)+"h"+n(u*o.bx)+"v-"+i(o.by)+"H"+n(u*gn+d)+"V"+i(p-gn)+"Z":b="M"+n(u*gn+d)+","+i(p-o.by/2)+"h"+n(u*o.bx)+"v"+i(o.by)+"h"+n(-u*o.bx)+"Z",l.select("path").attr("d",b);var A=d+c.textShiftX,_=p+o.ty0-o.by/2+ua,x=o.textAlign||"auto";x!=="auto"&&(x==="left"&&f!=="start"?(s.attr("text-anchor","start"),A=y?-o.bx/2-o.tx2width/2+ua:-o.bx-ua):x==="right"&&f!=="end"&&(s.attr("text-anchor","end"),A=y?o.bx/2-o.tx2width/2-ua:o.bx+ua)),s.call(Yl.positionText,n(A),i(_)),o.tx2width&&(l.select("text.name").call(Yl.positionText,n(c.text2ShiftX+c.alignShift*ua+d),i(p+o.ty0-o.by/2+ua)),l.select("rect").call(Lf.setRect,n(c.text2ShiftX+(c.alignShift-1)*o.tx2width/2+d),i(p-o.by/2-1),n(o.tx2width),i(o.by+2)))})}function $ve(e,r){var t=e.index,a=e.trace||{},n=e.cd[0],i=e.cd[t]||{};function o(v){return v||Du(v)&&v===0}var l=Array.isArray(t)?function(v,d){var p=qn.castOption(n,t,v);return o(p)?p:qn.extractOption({},a,"",d)}:function(v,d){return qn.extractOption(i,a,v,d)};function s(v,d,p){var y=l(d,p);o(y)&&(e[v]=y)}if(s("hoverinfo","hi","hoverinfo"),s("bgcolor","hbg","hoverlabel.bgcolor"),s("borderColor","hbc","hoverlabel.bordercolor"),s("fontFamily","htf","hoverlabel.font.family"),s("fontSize","hts","hoverlabel.font.size"),s("fontColor","htc","hoverlabel.font.color"),s("fontWeight","htw","hoverlabel.font.weight"),s("fontStyle","hty","hoverlabel.font.style"),s("fontVariant","htv","hoverlabel.font.variant"),s("nameLength","hnl","hoverlabel.namelength"),s("textAlign","hta","hoverlabel.align"),e.posref=r==="y"||r==="closest"&&a.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=qn.constrain(e.x0,0,e.xa._length),e.x1=qn.constrain(e.x1,0,e.xa._length),e.y0=qn.constrain(e.y0,0,e.ya._length),e.y1=qn.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:Df.hoverLabelText(e.xa,e.xLabelVal,a.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:Df.hoverLabelText(e.ya,e.yLabelVal,a.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var f=Df.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+f+" / -"+Df.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+f,r==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var u=Df.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+u+" / -"+Df.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+u,r==="y"&&(e.distance+=1)}var c=e.hoverinfo||e.trace.hoverinfo;return c&&c!=="all"&&(c=Array.isArray(c)?c:c.split("+"),c.indexOf("x")===-1&&(e.xLabel=void 0),c.indexOf("y")===-1&&(e.yLabel=void 0),c.indexOf("z")===-1&&(e.zLabel=void 0),c.indexOf("text")===-1&&(e.text=void 0),c.indexOf("name")===-1&&(e.name=void 0)),e}function Yq(e,r,t){var a=t.container,n=t.fullLayout,i=n._size,o=t.event,l=!!r.hLinePoint,s=!!r.vLinePoint,f,u;if(a.selectAll(".spikeline").remove(),!!(s||l)){var c=wi.combine(n.plot_bgcolor,n.paper_bgcolor);if(l){var v=r.hLinePoint,d,p;f=v&&v.xa,u=v&&v.ya;var y=u.spikesnap;y==="cursor"?(d=o.pointerX,p=o.pointerY):(d=f._offset+v.x,p=u._offset+v.y);var m=Gq.readability(v.color,c)<1.5?wi.contrast(c):v.color,b=u.spikemode,A=u.spikethickness,_=u.spikecolor||m,x=Df.getPxPosition(e,u),T,E;if(b.indexOf("toaxis")!==-1||b.indexOf("across")!==-1){if(b.indexOf("toaxis")!==-1&&(T=x,E=d),b.indexOf("across")!==-1){var S=u._counterDomainMin,k=u._counterDomainMax;u.anchor==="free"&&(S=Math.min(S,u.position),k=Math.max(k,u.position)),T=i.l+S*i.w,E=i.l+k*i.w}a.insert("line",":first-child").attr({x1:T,x2:E,y1:p,y2:p,"stroke-width":A,stroke:_,"stroke-dasharray":Lf.dashStyle(u.spikedash,A)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:T,x2:E,y1:p,y2:p,"stroke-width":A+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}b.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:x+(u.side!=="right"?A:-A),cy:p,r:A,fill:_}).classed("spikeline",!0)}if(s){var F=r.vLinePoint,I,O;f=F&&F.xa,u=F&&F.ya;var q=f.spikesnap;q==="cursor"?(I=o.pointerX,O=o.pointerY):(I=f._offset+F.x,O=u._offset+F.y);var H=Gq.readability(F.color,c)<1.5?wi.contrast(c):F.color,j=f.spikemode,le=f.spikethickness,te=f.spikecolor||H,Q=Df.getPxPosition(e,f),J,Z;if(j.indexOf("toaxis")!==-1||j.indexOf("across")!==-1){if(j.indexOf("toaxis")!==-1&&(J=Q,Z=O),j.indexOf("across")!==-1){var ae=f._counterDomainMin,ue=f._counterDomainMax;f.anchor==="free"&&(ae=Math.min(ae,f.position),ue=Math.max(ue,f.position)),J=i.t+(1-ue)*i.h,Z=i.t+(1-ae)*i.h}a.insert("line",":first-child").attr({x1:I,x2:I,y1:J,y2:Z,"stroke-width":le,stroke:te,"stroke-dasharray":Lf.dashStyle(f.spikedash,le)}).classed("spikeline",!0).classed("crisp",!0),a.insert("line",":first-child").attr({x1:I,x2:I,y1:J,y2:Z,"stroke-width":le+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}j.indexOf("marker")!==-1&&a.insert("circle",":first-child").attr({cx:I,cy:Q-(f.side!=="top"?le:-le),r:le,fill:te}).classed("spikeline",!0)}}}function Qve(e,r,t){if(!t||t.length!==e._hoverdata.length)return!0;for(var a=t.length-1;a>=0;a--){var n=t[a],i=e._hoverdata[a];if(n.curveNumber!==i.curveNumber||String(n.pointNumber)!==String(i.pointNumber)||String(n.pointNumbers)!==String(i.pointNumbers)||n.binNumber!==i.binNumber)return!0}return!1}function Wq(e,r){return!r||r.vLinePoint!==e._spikepoints.vLinePoint||r.hLinePoint!==e._spikepoints.hLinePoint}function jq(e,r){return Yl.plainText(e||"",{len:r,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function Kve(e,r){for(var t=r.charAt(0),a=[],n=[],i=[],o=0;oe.offsetTop+e.clientTop,rR=e=>e.offsetLeft+e.clientLeft;function Pd(e,r){var t=e._fullLayout,a=r.getBoundingClientRect(),n=a.left,i=a.top,o=n+a.width,l=i+a.height,s=qn.apply3DTransform(t._invTransform)(n,i),f=qn.apply3DTransform(t._invTransform)(o,l),u=s[0],c=s[1],v=f[0],d=f[1];return{x:u,y:c,width:v-u,height:d-c,top:Math.min(c,d),left:Math.min(u,v),right:Math.max(u,v),bottom:Math.max(c,d)}}});var p3=P((kLe,tR)=>{"use strict";var e0e=Ur(),r0e=ha(),t0e=Cu().isUnifiedHover;tR.exports=function(r,t,a,n){n=n||{};var i=t.legend;function o(l){n.font[l]||(n.font[l]=i?t.legend.font[l]:t.font[l])}t&&t0e(t.hovermode)&&(n.font||(n.font={}),o("size"),o("family"),o("color"),o("weight"),o("style"),o("variant"),i?(n.bgcolor||(n.bgcolor=r0e.combine(t.legend.bgcolor,t.paper_bgcolor)),n.bordercolor||(n.bordercolor=t.legend.bordercolor)):n.bgcolor||(n.bgcolor=t.paper_bgcolor)),a("hoverlabel.bgcolor",n.bgcolor),a("hoverlabel.bordercolor",n.bordercolor),a("hoverlabel.namelength",n.namelength),a("hoverlabel.showarrow",n.showarrow),e0e.coerceFont(a,"hoverlabel.font",n.font),a("hoverlabel.align",n.align)}});var nR=P((CLe,aR)=>{"use strict";var a0e=Ur(),n0e=p3(),i0e=Jh();aR.exports=function(r,t){function a(n,i){return a0e.coerce(r,t,i0e,n,i)}n0e(r,t,a)}});var lR=P((LLe,oR)=>{"use strict";var iR=Ur(),o0e=Bg(),l0e=p3();oR.exports=function(r,t,a,n){function i(l,s){return iR.coerce(r,t,o0e,l,s)}var o=iR.extendFlat({},n.hoverlabel);t.hovertemplate&&(o.namelength=-1),l0e(r,t,i,o)}});var Qw=P((DLe,sR)=>{"use strict";var s0e=Ur(),f0e=Jh();sR.exports=function(r,t){function a(n,i){return t[n]!==void 0?t[n]:s0e.coerce(r,t,f0e,n,i)}return a("clickmode"),a("hoversubplots"),a("hovermode")}});var cR=P((FLe,uR)=>{"use strict";var fR=Ur(),u0e=Jh(),c0e=Qw(),v0e=p3();uR.exports=function(r,t){function a(u,c){return fR.coerce(r,t,u0e,u,c)}var n=c0e(r,t);n&&(a("hoverdistance"),a("spikedistance"));var i=a("dragmode");i==="select"&&a("selectdirection");var o=t._has("mapbox"),l=t._has("map"),s=t._has("geo"),f=t._basePlotModules.length;t.dragmode==="zoom"&&((o||l||s)&&f===1||(o||l)&&s&&f===2)&&(t.dragmode="pan"),v0e(r,t,a),fR.coerceFont(a,"hoverlabel.grouptitlefont",t.hoverlabel.font)}});var dR=P((qLe,hR)=>{"use strict";var Kw=Ur(),vR=Bt();hR.exports=function(r){var t=r.calcdata,a=r._fullLayout;function n(f){return function(u){return Kw.coerceHoverinfo({hoverinfo:u},{_module:f._module},a)}}for(var i=0;i{"use strict";var d0e=Bt(),p0e=$w().hover;pR.exports=function(r,t,a){var n=d0e.getComponentMethod("annotations","onClick")(r,r._hoverdata);a!==void 0&&p0e(r,t,a,!0);function i(){r.emit("plotly_click",{points:r._hoverdata,event:t})}r._hoverdata&&t&&t.target&&(n&&n.then?n.then(i):i(),t.stopImmediatePropagation&&t.stopImmediatePropagation())}});var Wc=P((PLe,bR)=>{"use strict";var m0e=da(),m3=Ur(),y0e=Is(),bm=Cu(),yR=Jh(),gR=$w();bR.exports={moduleType:"component",name:"fx",constants:z1(),schema:{layout:yR},attributes:Bg(),layoutAttributes:yR,supplyLayoutGlobalDefaults:nR(),supplyDefaults:lR(),supplyLayoutDefaults:cR(),calc:dR(),getDistanceFunction:bm.getDistanceFunction,getClosest:bm.getClosest,inbox:bm.inbox,quadrature:bm.quadrature,appendArrayPointValue:bm.appendArrayPointValue,castHoverOption:b0e,castHoverinfo:x0e,hover:gR.hover,unhover:y0e.unhover,loneHover:gR.loneHover,loneUnhover:g0e,click:mR()};function g0e(e){var r=m3.isD3Selection(e)?e:m0e.select(e);r.selectAll("g.hovertext").remove(),r.selectAll(".spikeline").remove()}function b0e(e,r,t){return m3.castOption(e,r,"hoverlabel."+t)}function x0e(e,r,t){function a(n){return m3.coerceHoverinfo({hoverinfo:n},{_module:e._module},r)}return m3.castOption(e,t,"hoverinfo",a)}});var jc=P(Fu=>{"use strict";Fu.selectMode=function(e){return e==="lasso"||e==="select"};Fu.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Fu.openMode=function(e){return e==="drawline"||e==="drawopenpath"};Fu.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Fu.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};Fu.selectingOrDrawing=function(e){return Fu.freeMode(e)||Fu.rectMode(e)}});var y3=P((ILe,xR)=>{"use strict";xR.exports=function(r){var t=r._fullLayout;t._glcanvas&&t._glcanvas.size()&&t._glcanvas.each(function(a){a.regl&&a.regl.clear({color:!0,depth:!0})})}});var g3=P((OLe,_R)=>{"use strict";_R.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var x3=P((BLe,wR)=>{"use strict";var b3=32;wR.exports={CIRCLE_SIDES:b3,i000:0,i090:b3/4,i180:b3/2,i270:b3/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var _3=P((zLe,TR)=>{"use strict";var _0e=Ur().strTranslate;function AR(e,r){switch(e.type){case"log":return e.p2d(r);case"date":return e.p2r(r,0,e.calendar);default:return e.p2r(r)}}function w0e(e,r){switch(e.type){case"log":return e.d2p(r);case"date":return e.r2p(r,0,e.calendar);default:return e.r2p(r)}}function A0e(e){var r=e._id.charAt(0)==="y"?1:0;return function(t){return AR(e,t[r])}}function T0e(e){return _0e(e.xaxis._offset,e.yaxis._offset)}TR.exports={p2r:AR,r2p:w0e,axValue:A0e,getTransform:T0e}});var Xc=P(qu=>{"use strict";var M0e=om(),ER=x3(),Id=ER.CIRCLE_SIDES,eA=ER.SQRT2,kR=_3(),MR=kR.p2r,SR=kR.r2p,S0e=[0,3,4,5,6,1,2],E0e=[0,3,4,1,2];qu.writePaths=function(e){var r=e.length;if(!r)return"M0,0Z";for(var t="",a=0;a0&&s{"use strict";var CR=kn(),RR=jc(),k0e=RR.drawMode,C0e=RR.openMode,Od=x3(),LR=Od.i000,DR=Od.i090,FR=Od.i180,qR=Od.i270,L0e=Od.cos45,D0e=Od.sin45,PR=_3(),A3=PR.p2r,Zc=PR.r2p,F0e=Ic(),q0e=F0e.clearOutline,T3=Xc(),R0e=T3.readPaths,P0e=T3.writePaths,N0e=T3.ellipseOver,I0e=T3.fixDatesForPaths;function O0e(e,r){if(e.length){var t=e[0][0];if(t){var a=r.gd,n=r.isActiveShape,i=r.dragmode,o=(a.layout||{}).shapes||[];if(!k0e(i)&&n!==void 0){var l=a._fullLayout._activeShapeIndex;if(l{"use strict";var B0e=jc(),z0e=B0e.selectMode,G0e=Ic(),U0e=G0e.clearOutline,rA=Xc(),H0e=rA.readPaths,V0e=rA.writePaths,Y0e=rA.fixDatesForPaths;OR.exports=function(r,t){if(r.length){var a=r[0][0];if(a){var n=a.getAttribute("d"),i=t.gd,o=i._fullLayout.newselection,l=t.plotinfo,s=l.xaxis,f=l.yaxis,u=t.isActiveSelection,c=t.dragmode,v=(i.layout||{}).selections||[];if(!z0e(c)&&u!==void 0){var d=i._fullLayout._activeSelectionIndex;if(d{"use strict";BR.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var Jc=P(Pi=>{"use strict";var H0=_m(),zR=Ur(),S3=yn();Pi.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(r){return r}};Pi.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(r){return r}};Pi.decodeDate=function(e){return function(r){return r.replace&&(r=r.replace("_"," ")),e(r)}};Pi.encodeDate=function(e){return function(r){return e(r).replace(" ","_")}};Pi.extractPathCoords=function(e,r,t){var a=[],n=e.match(H0.segmentRE);return n.forEach(function(i){var o=r[i.charAt(0)].drawn;if(o!==void 0){var l=i.slice(1).match(H0.paramRE);if(!(!l||l.lengthd&&(y="X"),y});return f>d&&(p=p.replace(/[\s,]*X.*/,""),zR.log("Ignoring extra params in segment "+s)),u+p})}function wm(e,r){r=r||0;var t=0;return r&&e&&(e.type==="category"||e.type==="multicategory")&&(t=(e.r2p(1)-e.r2p(0))*r),t}});var nA=P((WLe,VR)=>{"use strict";var j0e=Ur(),Bd=yn(),GR=po(),UR=Ha(),X0e=Xc().readPaths,aA=Jc(),Z0e=aA.getPathString,HR=jg(),J0e=ho().FROM_TL;VR.exports=function(r,t,a,n){if(n.selectAll(".shape-label").remove(),!!(a.label.text||a.label.texttemplate)){var i;if(a.label.texttemplate){var o={};if(a.type!=="path"){var l=Bd.getFromId(r,a.xref),s=Bd.getFromId(r,a.yref);for(var f in HR){var u=HR[f](a,l,s);u!==void 0&&(o[f]=u)}}i=j0e.texttemplateStringForShapes({data:[o],fallback:a.label.texttemplatefallback,locale:r._fullLayout._d3locale,template:a.label.texttemplate})}else i=a.label.text;var c={"data-index":t},v=a.label.font,d={"data-notex":1},p=n.append("g").attr(c).classed("shape-label",!0),y=p.append("text").attr(d).classed("shape-label-text",!0).text(i),m,b,A,_;if(a.path){var x=Z0e(r,a),T=X0e(x,r);m=1/0,A=1/0,b=-1/0,_=-1/0;for(var E=0;E=e?n=r-a:n=a-r,-180/Math.PI*Math.atan2(n,i)}function Q0e(e,r,t,a,n,i,o){var l=n.label.textposition,s=n.label.textangle,f=n.label.padding,u=n.type,c=Math.PI/180*i,v=Math.sin(c),d=Math.cos(c),p=n.label.xanchor,y=n.label.yanchor,m,b,A,_;if(u==="line"){l==="start"?(m=e,b=r):l==="end"?(m=t,b=a):(m=(e+t)/2,b=(r+a)/2),p==="auto"&&(l==="start"?s==="auto"?t>e?p="left":te?p="right":te?p="right":te?p="left":t{"use strict";var K0e=Ur(),ehe=K0e.strTranslate,YR=Is(),XR=jc(),rhe=XR.drawMode,ZR=XR.selectMode,JR=Bt(),WR=ha(),k3=x3(),the=k3.i000,ahe=k3.i090,nhe=k3.i180,ihe=k3.i270,ohe=Ic(),$R=ohe.clearOutlineControllers,oA=Xc(),E3=oA.pointsOnRectangle,iA=oA.pointsOnEllipse,lhe=oA.writePaths,she=M3().newShapes,fhe=M3().createShapeObj,uhe=tA(),che=nA();QR.exports=function e(r,t,a,n){n||(n=0);var i=a.gd;function o(){e(r,t,a,n++),(iA(r[0])||a.hasText)&&l({redrawing:!0})}function l(Q){var J={};a.isActiveShape!==void 0&&(a.isActiveShape=!1,J=she(t,a)),a.isActiveSelection!==void 0&&(a.isActiveSelection=!1,J=uhe(t,a),i._fullLayout._reselect=!0),Object.keys(J).length&&JR.call((Q||{}).redrawing?"relayout":"_guiRelayout",i,J)}var s=i._fullLayout,f=s._zoomlayer,u=a.dragmode,c=rhe(u),v=ZR(u);(c||v)&&(i._fullLayout._outlining=!0),$R(i),t.attr("d",lhe(r));var d,p,y,m,b;if(!n&&(a.isActiveShape||a.isActiveSelection)){b=vhe([],r);var A=f.append("g").attr("class","outline-controllers");I(A),te()}if(c&&a.hasText){var _=f.select(".label-temp"),x=fhe(t,a,a.dragmode);che(i,"label-temp",x,_)}function T(Q){y=+Q.srcElement.getAttribute("data-i"),m=+Q.srcElement.getAttribute("data-j"),d[y][m].moveFn=E}function E(Q,J){if(r.length){var Z=b[y][m][1],ae=b[y][m][2],ue=r[y],Le=ue.length;if(E3(ue)){var Be=Q,Ee=J;if(a.isActiveSelection){var Xe=jR(ue,m);Xe[1]===ue[m][1]?Ee=0:Be=0}for(var Ae=0;Ae1&&!(Q.length===2&&Q[1][0]==="Z")&&(m===0&&(Q[0][0]="M"),r[y]=Q,o(),l())}}function F(Q,J){if(Q===2){y=+J.srcElement.getAttribute("data-i"),m=+J.srcElement.getAttribute("data-j");var Z=r[y];!E3(Z)&&!iA(Z)&&k()}}function I(Q){d=[];for(var J=0;J{"use strict";var dhe=da(),nP=Bt(),KR=Ur(),zd=yn(),phe=Xc().readPaths,mhe=C3(),D3=nA(),iP=Ic().clearOutlineControllers,lA=ha(),fA=Ha(),yhe=Xa().arrayEditor,eP=Is(),rP=Yc(),V0=_m(),Qo=Jc(),sA=Qo.getPathString;sP.exports={draw:uA,drawOne:oP,eraseActiveShape:xhe,drawLabel:D3};function uA(e){var r=e._fullLayout;r._shapeUpperLayer.selectAll("path").remove(),r._shapeLowerLayer.selectAll("path").remove(),r._shapeUpperLayer.selectAll("text").remove(),r._shapeLowerLayer.selectAll("text").remove();for(var t in r._plots){var a=r._plots[t].shapelayer;a&&(a.selectAll("path").remove(),a.selectAll("text").remove())}for(var n=0;no&&Yr>l&&!Pr.shiftKey?eP.getCursor(Kr/Ir,1-wr/Yr):"move";rP(r,Vr),rr=Vr.split("-")[0]}}function Ue(Pr){L3(e)||(s&&(b=ue(t.xanchor)),f&&(A=Le(t.yanchor)),t.type==="path"?O=t.path:(d=s?t.x0:ue(t.x0),p=f?t.y0:Le(t.y0),y=s?t.x1:ue(t.x1),m=f?t.y1:Le(t.y1)),dm?(_=p,S="y0",x=m,k="y1"):(_=m,S="y1",x=p,k="y0"),$e(Pr),ur(n,t),Lr(r,t,e),Ae.moveFn=rr==="move"?ne:je,Ae.altKey=Pr.altKey)}function ee(){L3(e)||(rP(r),er(n),lP(r,e,t),nP.call("_guiRelayout",e,i.getUpdateObj()))}function de(){L3(e)||er(n)}function ne(Pr,_r){if(t.type==="path"){var Ir=function(wr){return wr},Yr=Ir,Kr=Ir;s?v("xanchor",t.xanchor=Be(b+Pr)):(Yr=function(Vr){return Be(ue(Vr)+Pr)},H&&H.type==="date"&&(Yr=Qo.encodeDate(Yr))),f?v("yanchor",t.yanchor=Ee(A+_r)):(Kr=function(Vr){return Ee(Le(Vr)+_r)},le&&le.type==="date"&&(Kr=Qo.encodeDate(Kr))),v("path",t.path=tP(O,Yr,Kr))}else s?v("xanchor",t.xanchor=Be(b+Pr)):(v("x0",t.x0=Be(d+Pr)),v("x1",t.x1=Be(y+Pr))),f?v("yanchor",t.yanchor=Ee(A+_r)):(v("y0",t.y0=Ee(p+_r)),v("y1",t.y1=Ee(m+_r)));r.attr("d",sA(e,t)),ur(n,t),D3(e,a,t,q)}function je(Pr,_r){if(c){var Ir=function(at){return at},Yr=Ir,Kr=Ir;s?v("xanchor",t.xanchor=Be(b+Pr)):(Yr=function(xt){return Be(ue(xt)+Pr)},H&&H.type==="date"&&(Yr=Qo.encodeDate(Yr))),f?v("yanchor",t.yanchor=Ee(A+_r)):(Kr=function(xt){return Ee(Le(xt)+_r)},le&&le.type==="date"&&(Kr=Qo.encodeDate(Kr))),v("path",t.path=tP(O,Yr,Kr))}else if(u){if(rr==="resize-over-start-point"){var wr=d+Pr,Vr=f?p-_r:p+_r;v("x0",t.x0=s?wr:Be(wr)),v("y0",t.y0=f?Vr:Ee(Vr))}else if(rr==="resize-over-end-point"){var Wr=y+Pr,Re=f?m-_r:m+_r;v("x1",t.x1=s?Wr:Be(Wr)),v("y1",t.y1=f?Re:Ee(Re))}}else{var lr=function(at){return rr.indexOf(at)!==-1},st=lr("n"),kt=lr("s"),Ar=lr("w"),tr=lr("e"),cr=st?_+_r:_,Hr=kt?x+_r:x,ot=Ar?T+Pr:T,jr=tr?E+Pr:E;f&&(st&&(cr=_-_r),kt&&(Hr=x-_r)),(!f&&Hr-cr>l||f&&cr-Hr>l)&&(v(S,t[S]=f?cr:Ee(cr)),v(k,t[k]=f?Hr:Ee(Hr))),jr-ot>o&&(v(F,t[F]=s?ot:Be(ot)),v(I,t[I]=s?jr:Be(jr)))}r.attr("d",sA(e,t)),ur(n,t),D3(e,a,t,q)}function ur(Pr,_r){(s||f)&&Ir();function Ir(){var Yr=_r.type!=="path",Kr=Pr.selectAll(".visual-cue").data([0]),wr=1;Kr.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":wr}).classed("visual-cue",!0);var Vr=ue(s?_r.xanchor:KR.midRange(Yr?[_r.x0,_r.x1]:Qo.extractPathCoords(_r.path,V0.paramIsX))),Wr=Le(f?_r.yanchor:KR.midRange(Yr?[_r.y0,_r.y1]:Qo.extractPathCoords(_r.path,V0.paramIsY)));if(Vr=Qo.roundPositionForSharpStrokeRendering(Vr,wr),Wr=Qo.roundPositionForSharpStrokeRendering(Wr,wr),s&&f){var Re="M"+(Vr-1-wr)+","+(Wr-1-wr)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Kr.attr("d",Re)}else if(s){var lr="M"+(Vr-1-wr)+","+(Wr-9-wr)+"v18 h2 v-18 Z";Kr.attr("d",lr)}else{var st="M"+(Vr-9-wr)+","+(Wr-1-wr)+"h18 v2 h-18 Z";Kr.attr("d",st)}}}function er(Pr){Pr.selectAll(".visual-cue").remove()}function Lr(Pr,_r,Ir){var Yr=_r.xref,Kr=_r.yref,wr=zd.getFromId(Ir,Yr),Vr=zd.getFromId(Ir,Kr),Wr="";Yr!=="paper"&&!wr.autorange&&(Wr+=Yr),Kr!=="paper"&&!Vr.autorange&&(Wr+=Kr),fA.setClipUrl(Pr,Wr?"clip"+Ir._fullLayout._uid+Wr:null,Ir)}}function tP(e,r,t){return e.replace(V0.segmentRE,function(a){var n=0,i=a.charAt(0),o=V0.paramIsX[i],l=V0.paramIsY[i],s=V0.numParams[i],f=a.slice(1).replace(V0.paramRE,function(u){return n>=s||(o[n]?u=r(u):l[n]&&(u=t(u)),n++),u});return i+f})}function bhe(e,r){if(F3(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeShapeIndex){aP(e);return}e._fullLayout._activeShapeIndex=a,e._fullLayout._deactivateShape=aP,uA(e)}}}function aP(e){if(F3(e)){var r=e._fullLayout._activeShapeIndex;r>=0&&(iP(e),delete e._fullLayout._activeShapeIndex,uA(e))}}function xhe(e){if(F3(e)){iP(e);var r=e._fullLayout._activeShapeIndex,t=(e.layout||{}).shapes||[];if(r{"use strict";var Wl=Bt(),fP=xi(),uP=kn(),xa=g3(),_he=q3().eraseActiveShape,R3=Ur(),la=R3._,_a=yP.exports={};_a.toImage={name:"toImage",title:function(e){var r=e._context.toImageButtonOptions||{},t=r.format||"png";return t==="png"?la(e,"Download plot as a PNG"):la(e,"Download plot")},icon:xa.camera,click:function(e){var r=e._context.toImageButtonOptions,t={format:r.format||"png"};R3.notifier(la(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(a){a in r&&(t[a]=r[a])}),Wl.call("downloadImage",e,t).then(function(a){R3.notifier(la(e,"Snapshot succeeded")+" - "+a,"long")}).catch(function(){R3.notifier(la(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};_a.sendDataToCloud={name:"sendDataToCloud",title:function(e){return la(e,"Edit in Chart Studio")},icon:xa.disk,click:function(e){fP.sendDataToCloud(e)}};_a.editInChartStudio={name:"editInChartStudio",title:function(e){return la(e,"Edit in Chart Studio")},icon:xa.pencil,click:function(e){fP.sendDataToCloud(e)}};_a.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return la(e,"Zoom")},attr:"dragmode",val:"zoom",icon:xa.zoombox,click:go};_a.pan2d={name:"pan2d",_cat:"pan",title:function(e){return la(e,"Pan")},attr:"dragmode",val:"pan",icon:xa.pan,click:go};_a.select2d={name:"select2d",_cat:"select",title:function(e){return la(e,"Box Select")},attr:"dragmode",val:"select",icon:xa.selectbox,click:go};_a.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return la(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:xa.lasso,click:go};_a.drawclosedpath={name:"drawclosedpath",title:function(e){return la(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:xa.drawclosedpath,click:go};_a.drawopenpath={name:"drawopenpath",title:function(e){return la(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:xa.drawopenpath,click:go};_a.drawline={name:"drawline",title:function(e){return la(e,"Draw line")},attr:"dragmode",val:"drawline",icon:xa.drawline,click:go};_a.drawrect={name:"drawrect",title:function(e){return la(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:xa.drawrect,click:go};_a.drawcircle={name:"drawcircle",title:function(e){return la(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:xa.drawcircle,click:go};_a.eraseshape={name:"eraseshape",title:function(e){return la(e,"Erase active shape")},icon:xa.eraseshape,click:_he};_a.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return la(e,"Zoom in")},attr:"zoom",val:"in",icon:xa.zoom_plus,click:go};_a.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return la(e,"Zoom out")},attr:"zoom",val:"out",icon:xa.zoom_minus,click:go};_a.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return la(e,"Autoscale")},attr:"zoom",val:"auto",icon:xa.autoscale,click:go};_a.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return la(e,"Reset axes")},attr:"zoom",val:"reset",icon:xa.home,click:go};_a.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return la(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:xa.tooltip_basic,gravity:"ne",click:go};_a.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return la(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:xa.tooltip_compare,gravity:"ne",click:go};function go(e,r){var t=r.currentTarget,a=t.getAttribute("data-attr"),n=t.getAttribute("data-val")||!0,i=e._fullLayout,o={},l=uP.list(e,null,!0),s=i._cartesianSpikesEnabled,f,u;if(a==="zoom"){var c=n==="in"?.5:2,v=(1+c)/2,d=(1-c)/2,p,y;for(u=0;u{"use strict";var gP=hA(),The=Object.keys(gP),bP=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],xP=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(bP),Ud=[],Mhe=function(e){if(xP.indexOf(e._cat||e.name)===-1){var r=e.name,t=(e._cat||e.name).toLowerCase();Ud.indexOf(r)===-1&&Ud.push(r),Ud.indexOf(t)===-1&&Ud.push(t)}};The.forEach(function(e){Mhe(gP[e])});Ud.sort();_P.exports={DRAW_MODES:bP,backButtons:xP,foreButtons:Ud}});var pA=P((QLe,wP)=>{"use strict";var $Le=dA();wP.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var TP=P((KLe,AP)=>{"use strict";var She=Ur(),Am=ha(),Ehe=Xa(),khe=pA();AP.exports=function(r,t){var a=r.modebar||{},n=Ehe.newContainer(t,"modebar");function i(l,s){return She.coerce(a,n,khe,l,s)}i("orientation"),i("bgcolor",Am.addOpacity(t.paper_bgcolor,.5));var o=Am.contrast(Am.rgb(t.modebar.bgcolor));i("color",Am.addOpacity(o,.3)),i("activecolor",Am.addOpacity(o,.7)),i("uirevision",t.uirevision),i("add"),i("remove")}});var kP=P((eDe,EP)=>{"use strict";var mA=da(),Che=ba(),N3=Ur(),MP=g3(),Lhe=Eg().version,Dhe=new DOMParser;function SP(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Ff=SP.prototype;Ff.update=function(e,r){this.graphInfo=e;var t=this.graphInfo._context,a=this.graphInfo._fullLayout,n="modebar-"+a._uid;this.element.setAttribute("id",n),this.element.setAttribute("role","toolbar"),this._uid=n,this.element.className="modebar modebar--custom",t.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),a.modebar.orientation==="v"&&(this.element.className+=" vertical",r=r.reverse());var i=a.modebar,o="#"+n+" .modebar-group";document.querySelectorAll(o).forEach(function(c){c.style.backgroundColor=i.bgcolor});var l=!this.hasButtons(r),s=this.hasLogo!==t.displaylogo,f=this.locale!==t.locale;if(this.locale=t.locale,(l||s||f)&&(this.removeAllButtons(),this.updateButtons(r),t.watermark||t.displaylogo)){var u=this.getLogo();t.watermark&&(u.className=u.className+" watermark"),a.modebar.orientation==="v"?this.element.insertBefore(u,this.element.childNodes[0]):this.element.appendChild(u),this.hasLogo=!0}this.updateActiveButton(),N3.setStyleOnHover("#"+n+" .modebar-btn",".active",".icon path","fill: "+i.activecolor,"fill: "+i.color,this.element)};Ff.updateButtons=function(e){var r=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(t){var a=r.createGroup();t.forEach(function(n){var i=n.name;if(!i)throw new Error("must provide button 'name' in button config");if(r.buttonsNames.indexOf(i)!==-1)throw new Error("button name '"+i+"' is taken");r.buttonsNames.push(i);var o=r.createButton(n);r.buttonElements.push(o),a.appendChild(o)}),r.element.appendChild(a)})};Ff.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var r=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=r.bgcolor,e};Ff.createButton=function(e){var r=this,t=document.createElement("button");t.setAttribute("type","button"),t.setAttribute("rel","tooltip"),t.className="modebar-btn";var a=e.title;a===void 0?a=e.name:typeof a=="function"&&(a=a(this.graphInfo)),(a||a===0)&&(t.setAttribute("data-title",a),t.setAttribute("aria-label",a)),e.attr!==void 0&&t.setAttribute("data-attr",e.attr);var n=e.val;n!==void 0&&(typeof n=="function"&&(n=n(this.graphInfo)),t.setAttribute("data-val",n));var i=e.click;if(typeof i!="function")throw new Error("must provide button 'click' function in button config");t.addEventListener("click",function(l){e.click(r.graphInfo,l),r.updateActiveButton(l.currentTarget)}),t.setAttribute("data-toggle",e.toggle||!1),e.toggle&&mA.select(t).classed("active",!0);var o=e.icon;return typeof o=="function"?t.appendChild(o()):t.appendChild(this.createIcon(o||MP.question)),t.setAttribute("data-gravity",e.gravity||"n"),t};Ff.createIcon=function(e){var r=Che(e.height)?Number(e.height):e.ascent-e.descent,t="http://www.w3.org/2000/svg",a;if(e.path){a=document.createElementNS(t,"svg"),a.setAttribute("viewBox",[0,0,e.width,r].join(" ")),a.setAttribute("class","icon");var n=document.createElementNS(t,"path");n.setAttribute("d",e.path),e.transform?n.setAttribute("transform",e.transform):e.ascent!==void 0&&n.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),a.appendChild(n)}if(e.svg){var i=Dhe.parseFromString(e.svg,"application/xml");a=i.childNodes[0]}return a.setAttribute("height","1em"),a.setAttribute("width","1em"),a};Ff.updateActiveButton=function(e){var r=this.graphInfo._fullLayout,t=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(a){var n=a.getAttribute("data-val")||!0,i=a.getAttribute("data-attr"),o=a.getAttribute("data-toggle")==="true",l=mA.select(a),s=function(c,v){var d=r.modebar,p=c.querySelector(".icon path");p&&(v||c.matches(":hover")?p.style.fill=d.activecolor:p.style.fill=d.color)};if(o){if(i===t){var f=!l.classed("active");l.classed("active",f),s(a,f)}}else{var u=i===null?i:N3.nestedProperty(r,i).get();l.classed("active",u===n),s(a,u===n)}})};Ff.hasButtons=function(e){var r=this.buttons;if(!r||e.length!==r.length)return!1;for(var t=0;t{"use strict";var Rhe=kn(),CP=Ri(),yA=Bt(),Phe=Cu().isUnifiedHover,Nhe=kP(),I3=hA(),Ihe=dA().DRAW_MODES,Ohe=Ur().extendDeep;LP.exports=function(r){var t=r._fullLayout,a=r._context,n=t._modeBar;if(!a.displayModeBar&&!a.watermark){n&&(n.destroy(),delete t._modeBar);return}if(!Array.isArray(a.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(a.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var i=a.modeBarButtons,o;Array.isArray(i)&&i.length?o=Vhe(i):!a.displayModeBar&&a.watermark?o=[]:o=Bhe(r),n?n.update(r,o):t._modeBar=Nhe(r,o)};function Bhe(e){var r=e._fullLayout,t=e._fullData,a=e._context;function n(J,Z){if(typeof Z=="string"){if(Z.toLowerCase()===J.toLowerCase())return!0}else{var ae=Z.name,ue=Z._cat||Z.name;if(ae===J||ue===J.toLowerCase())return!0}return!1}var i=r.modebar.add;typeof i=="string"&&(i=[i]);var o=r.modebar.remove;typeof o=="string"&&(o=[o]);var l=a.modeBarButtonsToAdd.concat(i.filter(function(J){for(var Z=0;Z1?(I=["toggleHover"],O=["resetViews"]):c?(F=["zoomInGeo","zoomOutGeo"],I=["hoverClosestGeo"],O=["resetGeo"]):u?(I=["hoverClosest3d"],O=["resetCameraDefault3d","resetCameraLastSave3d"]):y?(F=["zoomInMapbox","zoomOutMapbox"],I=["toggleHover"],O=["resetViewMapbox"]):m?(F=["zoomInMap","zoomOutMap"],I=["toggleHover"],O=["resetViewMap"]):v?I=["hoverClosestPie"]:_?(I=["hoverClosestCartesian","hoverCompareCartesian"],O=["resetViewSankey"]):I=["toggleHover"],f&&I.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(Uhe(t)||T)&&(I=[]),f&&!x&&(F=["zoomIn2d","zoomOut2d","autoScale2d"],O[0]!=="resetViews"&&(O=["resetScale2d"])),u?q=["zoom3d","pan3d","orbitRotation","tableRotation"]:f&&!x||p?q=["zoom2d","pan2d"]:y||m||c?q=["pan2d"]:b&&(q=["zoom2d"]),Ghe(t)&&q.push("select2d","lasso2d");var H=[],j=function(J){H.indexOf(J)===-1&&I.indexOf(J)!==-1&&H.push(J)};if(Array.isArray(l)){for(var le=[],te=0;te{"use strict";FP.exports={moduleType:"component",name:"modebar",layoutAttributes:pA(),supplyLayoutDefaults:TP(),manage:DP()}});var bA=P((aDe,qP)=>{"use strict";var Yhe=ho().FROM_BL;qP.exports=function(r,t,a){a===void 0&&(a=Yhe[r.constraintoward||"center"]);var n=[r.r2l(r.range[0]),r.r2l(r.range[1])],i=n[0]+(n[1]-n[0])*a;r.range=r._input.range=[r.l2r(i+(n[0]-i)*t),r.l2r(i+(n[1]-i)*t)],r.setScale()}});var Mm=P(Tm=>{"use strict";var Y0=Ur(),xA=Md(),Bs=kn().id2name,Whe=Ul(),RP=bA(),jhe=G2(),Xhe=Kn().ALMOST_EQUAL,Zhe=ho().FROM_BL;Tm.handleDefaults=function(e,r,t){var a=t.axIds,n=t.axHasImage,i=r._axisConstraintGroups=[],o=r._axisMatchGroups=[],l,s,f,u,c,v,d,p;for(l=0;li?t.slice(i):a.slice(n))+o}function $he(e,r){for(var t=r._size,a=t.h/t.w,n={},i=Object.keys(e),o=0;oXhe*p&&!A)){for(i=0;iq&&aeI&&(I=ae);var Le=(I-F)/(2*O);c/=Le,F=s.l2r(F),I=s.l2r(I),s.range=s._input.range=E{"use strict";var B3=da(),bo=Bt(),Al=xi(),jl=Ur(),AA=po(),TA=y3(),Sm=ha(),Hd=Ha(),OP=fm(),HP=gA(),Em=yn(),Ru=ho(),VP=Mm(),Qhe=VP.enforce,Khe=VP.clean,BP=Md().doAutoRange,YP="start",ede="middle",WP="end",rde=qi().zindexSeparator;Ai.layoutStyles=function(e){return jl.syncOrAsync([Al.doAutoMargin,ade],e)};function tde(e,r,t){for(var a=0;a=e[1]||n[1]<=e[0])&&i[0]r[0])return!0}return!1}function ade(e){var r=e._fullLayout,t=r._size,a=t.p,n=Em.list(e,"",!0),i,o,l,s,f,u;if(r._paperdiv.style({width:e._context.responsive&&r.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":r.width+"px",height:e._context.responsive&&r.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":r.height+"px"}).selectAll(".main-svg").call(Hd.setSize,r.width,r.height),e._context.setBackground(e,r.paper_bgcolor),Ai.drawMainTitle(e),HP.manage(e),!r._has("cartesian"))return Al.previousPromises(e);function c(Ue,ee,de){var ne=Ue._lw/2;if(Ue._id.charAt(0)==="x"){if(ee){if(de==="top")return ee._offset-a-ne}else return t.t+t.h*(1-(Ue.position||0))+ne%1;return ee._offset+ee._length+a+ne}if(ee){if(de==="right")return ee._offset+ee._length+a+ne}else return t.l+t.w*(Ue.position||0)+ne%1;return ee._offset-a-ne}for(i=0;i0){lde(e,i,f,s),l.attr({x:o,y:i,"text-anchor":a,dy:UP(r.yanchor)}).call(AA.positionText,o,i);var u=(r.text.match(AA.BR_TAG_ALL)||[]).length;if(u){var c=Ru.LINE_SPACING*u+Ru.MID_SHIFT;r.y===0&&(c=-c),l.selectAll(".line").each(function(){var m=+this.getAttribute("dy").slice(0,-2)-c+"em";this.setAttribute("dy",m)})}var v=B3.select(e).selectAll(".gtitle-subtitle");if(v.node()){var d=l.node().getBBox(),p=d.y+d.height,y=p+OP.SUBTITLE_PADDING_EM*r.subtitle.font.size;v.attr({x:o,y,"text-anchor":a,dy:UP(r.yanchor)}).call(AA.positionText,o,y)}}}};function nde(e,r,t,a,n){var i=r.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,o=jl.isTopAnchor(r)?a:a-n,l=t==="b"?i-o:o;return jl.isTopAnchor(r)&&t==="t"||jl.isBottomAnchor(r)&&t==="b"?!1:l.5?"t":"b",o=e._fullLayout.margin[i],l=0;return r.yref==="paper"?l=t+r.pad.t+r.pad.b:r.yref==="container"&&(l=ide(i,a,n,e._fullLayout.height,t)+r.pad.t+r.pad.b),l>o?l:0}function lde(e,r,t,a){var n="title.automargin",i=e._fullLayout.title,o=i.y>.5?"t":"b",l={x:i.x,y:i.y,t:0,b:0},s={};i.yref==="paper"&&nde(e,i,o,r,a)?l[o]=t:i.yref==="container"&&(s[o]=t,e._fullLayout._reservedMargin[n]=s),Al.allowAutoMargin(e,n),Al.autoMargin(e,n,l)}function sde(e,r){var t=e.title,a=e._size,n=0;switch(r===YP?n=t.pad.l:r===WP&&(n=-t.pad.r),t.xref){case"paper":return a.l+a.w*t.x+n;case"container":default:return e.width*t.x+n}}function fde(e,r){var t=e.title,a=e._size,n=0;if(r==="0em"||!r?n=-t.pad.b:r===Ru.CAP_SHIFT+"em"&&(n=t.pad.t),t.y==="auto")return a.t/2;switch(t.yref){case"paper":return a.t+a.h-a.h*t.y+n;case"container":default:return e.height-e.height*t.y+n}}function UP(e){return e==="top"?Ru.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":Ru.MID_SHIFT+"em"}function ude(e){var r=e.title,t=ede;return jl.isRightAnchor(r)?t=WP:jl.isLeftAnchor(r)&&(t=YP),t}function cde(e){var r=e.title,t="0em";return jl.isTopAnchor(r)?t=Ru.CAP_SHIFT+"em":jl.isMiddleAnchor(r)&&(t=Ru.MID_SHIFT+"em"),t}Ai.doTraceStyle=function(e){var r=e.calcdata,t=[],a;for(a=0;a{"use strict";var vde=Xc().readPaths,hde=C3(),jP=Ic().clearOutlineControllers,MA=ha(),XP=Ha(),dde=Xa().arrayEditor,ZP=Jc(),pde=ZP.getPathString;$P.exports={draw:G3,drawOne:JP,activateLastSelection:gde};function G3(e){var r=e._fullLayout;jP(e),r._selectionLayer.selectAll("path").remove();for(var t in r._plots){var a=r._plots[t].selectionLayer;a&&a.selectAll("path").remove()}for(var n=0;n=0;m--){var b=o.append("path").attr(s).style("opacity",m?.1:f).call(MA.stroke,c).call(MA.fill,u).call(XP.dashLine,m?"solid":d,m?4+v:v);if(mde(b,e,a),p){var A=dde(e.layout,"selections",a);b.style({cursor:"move"});var _={element:b.node(),plotinfo:n,gd:e,editHelpers:A,isActiveSelection:!0},x=vde(l,e);hde(x,b,_)}else b.style("pointer-events",m?"all":"none");y[m]=b}var T=y[0],E=y[1];E.node().addEventListener("click",function(){return yde(e,T)})}}function mde(e,r,t){var a=t.xref+t.yref;XP.setClipUrl(e,"clip"+r._fullLayout._uid+a,r)}function yde(e,r){if(U3(e)){var t=r.node(),a=+t.getAttribute("data-index");if(a>=0){if(a===e._fullLayout._activeSelectionIndex){SA(e);return}e._fullLayout._activeSelectionIndex=a,e._fullLayout._deactivateSelection=SA,G3(e)}}}function gde(e){if(U3(e)){var r=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=r,e._fullLayout._deactivateSelection=SA,G3(e)}}function SA(e){if(U3(e)){var r=e._fullLayout._activeSelectionIndex;r>=0&&(jP(e),delete e._fullLayout._activeSelectionIndex,G3(e))}}});var KP=P((lDe,QP)=>{function bde(){var e,r=0,t=!1;function a(n,i){return e.list.push({type:n,data:i?JSON.parse(JSON.stringify(i)):void 0}),e}return e={list:[],segmentId:function(){return r++},checkIntersection:function(n,i){return a("check",{seg1:n,seg2:i})},segmentChop:function(n,i){return a("div_seg",{seg:n,pt:i}),a("chop",{seg:n,pt:i})},statusRemove:function(n){return a("pop_seg",{seg:n})},segmentUpdate:function(n){return a("seg_update",{seg:n})},segmentNew:function(n,i){return a("new_seg",{seg:n,primary:i})},segmentRemove:function(n){return a("rem_seg",{seg:n})},tempStatus:function(n,i,o){return a("temp_status",{seg:n,above:i,below:o})},rewind:function(n){return a("rewind",{seg:n})},status:function(n,i,o){return a("status",{seg:n,above:i,below:o})},vert:function(n){return n===t?e:(t=n,a("vert",{x:n}))},log:function(n){return typeof n!="string"&&(n=JSON.stringify(n,!1," ")),a("log",{txt:n})},reset:function(){return a("reset")},selected:function(n){return a("selected",{segs:n})},chainStart:function(n){return a("chain_start",{seg:n})},chainRemoveHead:function(n,i){return a("chain_rem_head",{index:n,pt:i})},chainRemoveTail:function(n,i){return a("chain_rem_tail",{index:n,pt:i})},chainNew:function(n,i){return a("chain_new",{pt1:n,pt2:i})},chainMatch:function(n){return a("chain_match",{index:n})},chainClose:function(n){return a("chain_close",{index:n})},chainAddHead:function(n,i){return a("chain_add_head",{index:n,pt:i})},chainAddTail:function(n,i){return a("chain_add_tail",{index:n,pt:i})},chainConnect:function(n,i){return a("chain_con",{index1:n,index2:i})},chainReverse:function(n){return a("chain_rev",{index:n})},chainJoin:function(n,i){return a("chain_join",{index1:n,index2:i})},done:function(){return a("done")}},e}QP.exports=bde});var rN=P((sDe,eN)=>{function xde(e){typeof e!="number"&&(e=1e-10);var r={epsilon:function(t){return typeof t=="number"&&(e=t),e},pointAboveOrOnLine:function(t,a,n){var i=a[0],o=a[1],l=n[0],s=n[1],f=t[0],u=t[1];return(l-i)*(u-o)-(s-o)*(f-i)>=-e},pointBetween:function(t,a,n){var i=t[1]-a[1],o=n[0]-a[0],l=t[0]-a[0],s=n[1]-a[1],f=l*o+i*s;if(f-e)},pointsSameX:function(t,a){return Math.abs(t[0]-a[0])e!=l-i>e&&(o-u)*(i-c)/(l-c)+u-n>e&&(s=!s),o=u,l=c}return s}};return r}eN.exports=xde});var aN=P((fDe,tN)=>{var _de={create:function(){var e={root:{root:!0,next:null},exists:function(r){return!(r===null||r===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(r,t){for(var a=e.root,n=e.root.next;n!==null;){if(t(n)){r.prev=n.prev,r.next=n,n.prev.next=r,n.prev=r;return}a=n,n=n.next}a.next=r,r.prev=a,r.next=null},findTransition:function(r){for(var t=e.root,a=e.root.next;a!==null&&!r(a);)t=a,a=a.next;return{before:t===e.root?null:t,after:a,insert:function(n){return n.prev=t,n.next=a,t.next=n,a!==null&&(a.prev=n),n}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};tN.exports=_de});var iN=P((uDe,nN)=>{var km=aN();function wde(e,r,t){function a(p,y){return{id:t?t.segmentId():-1,start:p,end:y,myFill:{above:null,below:null},otherFill:null}}function n(p,y,m){return{id:t?t.segmentId():-1,start:p,end:y,myFill:{above:m.myFill.above,below:m.myFill.below},otherFill:null}}var i=km.create();function o(p,y,m,b,A,_){var x=r.pointsCompare(y,A);return x!==0?x:r.pointsSame(m,_)?0:p!==b?p?1:-1:r.pointAboveOrOnLine(m,b?A:_,b?_:A)?1:-1}function l(p,y){i.insertBefore(p,function(m){var b=o(p.isStart,p.pt,y,m.isStart,m.pt,m.other.pt);return b<0})}function s(p,y){var m=km.node({isStart:!0,pt:p.start,seg:p,primary:y,other:null,status:null});return l(m,p.end),m}function f(p,y,m){var b=km.node({isStart:!1,pt:y.end,seg:y,primary:m,other:p,status:null});p.other=b,l(b,p.pt)}function u(p,y){var m=s(p,y);return f(m,p,y),m}function c(p,y){t&&t.segmentChop(p.seg,y),p.other.remove(),p.seg.end=y,p.other.pt=y,l(p.other,p.pt)}function v(p,y){var m=n(y,p.seg.end,p.seg);return c(p,y),u(m,p.primary)}function d(p,y){var m=km.create();function b(le,te){var Q=le.seg.start,J=le.seg.end,Z=te.seg.start,ae=te.seg.end;return r.pointsCollinear(Q,Z,ae)?r.pointsCollinear(J,Z,ae)||r.pointAboveOrOnLine(J,Z,ae)?1:-1:r.pointAboveOrOnLine(Q,Z,ae)?1:-1}function A(le){return m.findTransition(function(te){var Q=b(le,te.ev);return Q>0})}function _(le,te){var Q=le.seg,J=te.seg,Z=Q.start,ae=Q.end,ue=J.start,Le=J.end;t&&t.checkIntersection(Q,J);var Be=r.linesIntersect(Z,ae,ue,Le);if(Be===!1){if(!r.pointsCollinear(Z,ae,ue)||r.pointsSame(Z,Le)||r.pointsSame(ae,ue))return!1;var Ee=r.pointsSame(Z,ue),Xe=r.pointsSame(ae,Le);if(Ee&&Xe)return te;var Ae=!Ee&&r.pointBetween(Z,ue,Le),rr=!Xe&&r.pointBetween(ae,ue,Le);if(Ee)return rr?v(te,ae):v(le,Le),te;Ae&&(Xe||(rr?v(te,ae):v(le,Le)),v(te,Z))}else Be.alongA===0&&(Be.alongB===-1?v(le,ue):Be.alongB===0?v(le,Be.pt):Be.alongB===1&&v(le,Le)),Be.alongB===0&&(Be.alongA===-1?v(te,Z):Be.alongA===0?v(te,Be.pt):Be.alongA===1&&v(te,ae));return!1}for(var x=[];!i.isEmpty();){var T=i.getHead();if(t&&t.vert(T.pt[0]),T.isStart){let le=function(){if(S){var te=_(T,S);if(te)return te}return k?_(T,k):!1};var j=le;t&&t.segmentNew(T.seg,T.primary);var E=A(T),S=E.before?E.before.ev:null,k=E.after?E.after.ev:null;t&&t.tempStatus(T.seg,S?S.seg:!1,k?k.seg:!1);var F=le();if(F){if(e){var I;T.seg.myFill.below===null?I=!0:I=T.seg.myFill.above!==T.seg.myFill.below,I&&(F.seg.myFill.above=!F.seg.myFill.above)}else F.seg.otherFill=T.seg.myFill;t&&t.segmentUpdate(F.seg),T.other.remove(),T.remove()}if(i.getHead()!==T){t&&t.rewind(T.seg);continue}if(e){var I;T.seg.myFill.below===null?I=!0:I=T.seg.myFill.above!==T.seg.myFill.below,k?T.seg.myFill.below=k.seg.myFill.above:T.seg.myFill.below=p,I?T.seg.myFill.above=!T.seg.myFill.below:T.seg.myFill.above=T.seg.myFill.below}else if(T.seg.otherFill===null){var O;k?T.primary===k.primary?O=k.seg.otherFill.above:O=k.seg.myFill.above:O=T.primary?y:p,T.seg.otherFill={above:O,below:O}}t&&t.status(T.seg,S?S.seg:!1,k?k.seg:!1),T.other.status=E.insert(km.node({ev:T}))}else{var q=T.status;if(q===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(m.exists(q.prev)&&m.exists(q.next)&&_(q.prev.ev,q.next.ev),t&&t.statusRemove(q.ev.seg),q.remove(),!T.primary){var H=T.seg.myFill;T.seg.myFill=T.seg.otherFill,T.seg.otherFill=H}x.push(T.seg)}i.getHead().remove()}return t&&t.done(),x}return e?{addRegion:function(p){for(var y,m=p[p.length-1],b=0;b{function Ade(e,r,t){var a=[],n=[];return e.forEach(function(i){var o=i.start,l=i.end;if(r.pointsSame(o,l)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}t&&t.chainStart(i);var s={index:0,matches_head:!1,matches_pt1:!1},f={index:0,matches_head:!1,matches_pt1:!1},u=s;function c(j,le,te){return u.index=j,u.matches_head=le,u.matches_pt1=te,u===s?(u=f,!1):(u=null,!0)}for(var v=0;v{function Cm(e,r,t){var a=[];return e.forEach(function(n){var i=(n.myFill.above?8:0)+(n.myFill.below?4:0)+(n.otherFill&&n.otherFill.above?2:0)+(n.otherFill&&n.otherFill.below?1:0);r[i]!==0&&a.push({id:t?t.segmentId():-1,start:n.start,end:n.end,myFill:{above:r[i]===1,below:r[i]===2},otherFill:null})}),t&&t.selected(a),a}var Tde={union:function(e,r){return Cm(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],r)},intersect:function(e,r){return Cm(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],r)},difference:function(e,r){return Cm(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],r)},differenceRev:function(e,r){return Cm(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],r)},xor:function(e,r){return Cm(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],r)}};sN.exports=Tde});var cN=P((hDe,uN)=>{var Mde={toPolygon:function(e,r){function t(i){if(i.length<=0)return e.segments({inverted:!1,regions:[]});function o(f){var u=f.slice(0,f.length-1);return e.segments({inverted:!1,regions:[u]})}for(var l=o(i[0]),s=1;s{var Sde=KP(),Ede=rN(),vN=iN(),kde=lN(),Lm=fN(),hN=cN(),Xl=!1,Dm=Ede(),Ko;Ko={buildLog:function(e){return e===!0?Xl=Sde():e===!1&&(Xl=!1),Xl===!1?!1:Xl.list},epsilon:function(e){return Dm.epsilon(e)},segments:function(e){var r=vN(!0,Dm,Xl);return e.regions.forEach(r.addRegion),{segments:r.calculate(e.inverted),inverted:e.inverted}},combine:function(e,r){var t=vN(!1,Dm,Xl);return{combined:t.calculate(e.segments,e.inverted,r.segments,r.inverted),inverted1:e.inverted,inverted2:r.inverted}},selectUnion:function(e){return{segments:Lm.union(e.combined,Xl),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:Lm.intersect(e.combined,Xl),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:Lm.difference(e.combined,Xl),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:Lm.differenceRev(e.combined,Xl),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:Lm.xor(e.combined,Xl),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:kde(e.segments,Dm,Xl),inverted:e.inverted}},polygonFromGeoJSON:function(e){return hN.toPolygon(Ko,e)},polygonToGeoJSON:function(e){return hN.fromPolygon(Ko,Dm,e)},union:function(e,r){return Fm(e,r,Ko.selectUnion)},intersect:function(e,r){return Fm(e,r,Ko.selectIntersect)},difference:function(e,r){return Fm(e,r,Ko.selectDifference)},differenceRev:function(e,r){return Fm(e,r,Ko.selectDifferenceRev)},xor:function(e,r){return Fm(e,r,Ko.selectXor)}};function Fm(e,r,t){var a=Ko.segments(e),n=Ko.segments(r),i=Ko.combine(a,n),o=t(i);return Ko.polygon(o)}typeof window=="object"&&(window.PolyBool=Ko);dN.exports=Ko});var yN=P((pDe,mN)=>{mN.exports=function(r,t,a,n){var i=r[0],o=r[1],l=!1;a===void 0&&(a=0),n===void 0&&(n=t.length);for(var s=n-a,f=0,u=s-1;fo!=p>o&&i<(d-c)*(o-v)/(p-v)+c;y&&(l=!l)}return l}});var CA=P((mDe,gN)=>{"use strict";var kA=Vg().dot,H3=Kn().BADNUM,V3=gN.exports={};V3.tester=function(r){var t=r.slice(),a=t[0][0],n=a,i=t[0][1],o=i,l;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),l=1;ln||b===H3||bo||y&&f(p))}function c(p,y){var m=p[0],b=p[1];if(m===H3||mn||b===H3||bo)return!1;var A=t.length,_=t[0][0],x=t[0][1],T=0,E,S,k,F,I;for(E=1;EMath.max(S,_)||b>Math.max(k,x)))if(bl||Math.abs(kA(c,f))>n)return!0;return!1};V3.filter=function(r,t){var a=[r[0]],n=0,i=0;function o(s){r.push(s);var f=a.length,u=n;a.splice(i+1);for(var c=u+1;c1){var l=r.pop();o(l)}return{addPt:o,raw:r,filtered:a}}});var xN=P((yDe,bN)=>{"use strict";bN.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var UN=P((gDe,GN)=>{"use strict";var _N=pN(),Cde=yN(),Pm=Bt(),Lde=Ha().dashStyle,qm=ha(),Dde=Wc(),Fde=Cu().makeEventData,zm=jc(),qde=zm.freeMode,Rde=zm.rectMode,Nm=zm.drawMode,qA=zm.openMode,RA=zm.selectMode,wN=Jc(),AN=_m(),kN=C3(),CN=Ic().clearOutline,LN=Xc(),LA=LN.handleEllipse,Pde=LN.readPaths,Nde=M3().newShapes,Ide=tA(),Ode=EA().activateLastSelection,W3=Ur(),Bde=W3.sorterAsc,DN=CA(),Rm=n2(),Zl=kn().getFromId,zde=y3(),Gde=z3().redrawReglTraces,j3=xN(),qf=j3.MINSELECT,Ude=DN.filter,PA=DN.tester,NA=_3(),TN=NA.p2r,Hde=NA.axValue,Vde=NA.getTransform;function IA(e){return e.subplot!==void 0}function Yde(e,r,t,a,n){var i=!IA(a),o=qde(n),l=Rde(n),s=qA(n),f=Nm(n),u=RA(n),c=n==="drawline",v=n==="drawcircle",d=c||v,p=a.gd,y=p._fullLayout,m=u&&y.newselection.mode==="immediate"&&i,b=y._zoomlayer,A=a.element.getBoundingClientRect(),_=a.plotinfo,x=Vde(_),T=r-A.left,E=t-A.top;y._calcInverseTransform(p);var S=W3.apply3DTransform(y._invTransform)(T,E);T=S[0],E=S[1];var k=y._invScaleX,F=y._invScaleY,I=T,O=E,q="M"+T+","+E,H=a.xaxes[0],j=a.yaxes[0],le=H._length,te=j._length,Q=e.altKey&&!(Nm(n)&&s),J,Z,ae,ue,Le,Be,Ee;qN(e,p,a),o&&(J=Ude([[T,E]],j3.BENDPX));var Xe=b.selectAll("path.select-outline-"+_.id).data([1]),Ae=f?y.newshape:y.newselection;f&&(a.hasText=Ae.label.text||Ae.label.texttemplate);var rr=f&&!s?Ae.fillcolor:"rgba(0,0,0,0)",ze=Ae.line.color||(i?qm.contrast(p._fullLayout.plot_bgcolor):"#7f7f7f");Xe.enter().append("path").attr("class","select-outline select-outline-"+_.id).style({opacity:f?Ae.opacity/2:1,"stroke-dasharray":Lde(Ae.line.dash,Ae.line.width),"stroke-width":Ae.line.width+"px","shape-rendering":"crispEdges"}).call(qm.stroke,ze).call(qm.fill,rr).attr("fill-rule","evenodd").classed("cursor-move",!!f).attr("transform",x).attr("d",q+"Z");var We=b.append("path").attr("class","zoombox-corners").style({fill:qm.background,stroke:qm.defaultLine,"stroke-width":1}).attr("transform",x).attr("d","M0,0Z");if(f&&a.hasText){var $e=b.select(".label-temp");$e.empty()&&($e=b.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var Ue=y._uid+j3.SELECTID,ee=[],de=X3(p,a.xaxes,a.yaxes,a.subplot);m&&!e.shiftKey&&(a._clearSubplotSelections=function(){if(i){var je=H._id,ur=j._id;ON(p,je,ur,de);for(var er=(p.layout||{}).selections||[],Lr=[],Pr=!1,_r=0;_r=0){p._fullLayout._deactivateShape(p);return}if(!f){var er=y.clickmode;Rm.done(Ue).then(function(){if(Rm.clear(Ue),je===2){for(Xe.remove(),Le=0;Le-1&&FN(ur,p,a.xaxes,a.yaxes,a.subplot,a,Xe),er==="event"&&Bm(p,void 0);Dde.click(p,ur,_.id)}).catch(W3.error)}},a.doneFn=function(){We.remove(),Rm.done(Ue).then(function(){Rm.clear(Ue),!m&&ue&&a.selectionDefs&&(ue.subtract=Q,a.selectionDefs.push(ue),a.mergedPolygons.length=0,[].push.apply(a.mergedPolygons,ae)),(m||f)&&Im(a,m),a.doneFnCompleted&&a.doneFnCompleted(ee),u&&Bm(p,Ee)}).catch(W3.error)}}function FN(e,r,t,a,n,i,o){var l=r._hoverdata,s=r._fullLayout,f=s.clickmode,u=f.indexOf("event")>-1,c=[],v,d,p,y,m,b,A,_,x,T;if(Jde(l)){qN(e,r,i),v=X3(r,t,a,n);var E=$de(l,v),S=E.pointNumbers.length>0;if(S?Qde(v,E):Kde(v)&&(A=SN(E))){for(o&&o.remove(),T=0;T=0}function Zde(e){return e._fullLayout._activeSelectionIndex>=0}function Im(e,r){var t=e.dragmode,a=e.plotinfo,n=e.gd;Xde(n)&&n._fullLayout._deactivateShape(n),Zde(n)&&n._fullLayout._deactivateSelection(n);var i=n._fullLayout,o=i._zoomlayer,l=Nm(t),s=RA(t);if(l||s){var f=o.selectAll(".select-outline-"+a.id);if(f&&n._fullLayout._outlining){var u;l&&(u=Nde(f,e)),u&&Pm.call("_guiRelayout",n,{shapes:u});var c;s&&!IA(e)&&(c=Ide(f,e)),c&&(n._fullLayout._noEmitSelectedAtStart=!0,Pm.call("_guiRelayout",n,{selections:c}).then(function(){r&&Ode(n)})),n._fullLayout._outlining=!1}}a.selection={},a.selection.selectionDefs=e.selectionDefs=[],a.selection.mergedPolygons=e.mergedPolygons=[]}function MN(e){return e._id}function X3(e,r,t,a){if(!e.calcdata)return[];var n=[],i=r.map(MN),o=t.map(MN),l,s,f;for(f=0;f0,i=n?a[0]:t;return r.selectedpoints?r.selectedpoints.indexOf(i)>-1:!1}function Qde(e,r){var t=[],a,n,i,o;for(o=0;o0&&t.push(a);if(t.length===1&&(i=t[0]===r.searchInfo,i&&(n=r.searchInfo.cd[0].trace,n.selectedpoints.length===r.pointNumbers.length))){for(o=0;o1||(r+=a.selectedpoints.length,r>1)))return!1;return r===1}function Om(e,r,t){var a;for(a=0;a-1&&r;if(!o&&r){var je=EN(e,!0);if(je.length){var ur=je[0].xref,er=je[0].yref;if(ur&&er){var Lr=BN(je),Pr=zN([Zl(e,ur,"x"),Zl(e,er,"y")]);Pr(ee,Lr)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:ne&&Bm(e,ee),v._reselect=!1}if(!o&&v._deselect){var _r=v._deselect;l=_r.xref,s=_r.yref,tpe(l,s,u)||ON(e,l,s,a),ne&&(ee.points.length?Bm(e,ee):zA(e)),v._deselect=!1}return{eventData:ee,selectionTesters:t}}function rpe(e){var r=e.calcdata;if(r)for(var t=0;t{"use strict";HN.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var Gm=P((xDe,VN)=>{"use strict";VN.exports={axisRefDescription:function(e,r,t){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",r,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",r,"("+t+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",r,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",r,"and the",t,"of the domain of the","second",e,"axis."].join(" ")}}});var Vd=P((wDe,jN)=>{"use strict";var YN=GA(),WN=Gi(),Z3=qi(),lpe=Xa().templatedArray,_De=Gm();jN.exports=lpe("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:WN({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:YN.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:YN.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",Z3.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",Z3.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",Z3.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",Z3.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:WN({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Um=P((ADe,XN)=>{"use strict";XN.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var UA=P((TDe,ZN)=>{"use strict";ZN.exports=function(r){return{valType:"color",editType:"style",anim:!0}}});var Qc=P((MDe,tI)=>{"use strict";var JN=im().axisHoverFormat,{hovertemplateAttrs:spe,texttemplateAttrs:fpe,templatefallbackAttrs:$N}=td(),QN=k0(),upe=Gi(),cpe=kc().dash,vpe=kc().pattern,hpe=Ha(),dpe=Um(),J3=zn().extendFlat,ppe=UA();function KN(e){return{valType:"any",dflt:0,editType:"calc"}}function eI(e){return{valType:"any",editType:"calc"}}function rI(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}tI.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:KN("x"),yperiod:KN("y"),xperiod0:eI("x0"),yperiod0:eI("y0"),xperiodalignment:rI("x"),yperiodalignment:rI("y"),xhoverformat:JN("x"),yhoverformat:JN("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:fpe(),texttemplatefallback:$N({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:spe({},{keys:dpe.eventDataKeys}),hovertemplatefallback:$N(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:J3({},cpe,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:ppe(!0),fillgradient:J3({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:vpe,marker:J3({symbol:{valType:"enumerated",values:hpe.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:J3({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},QN("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},QN("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:upe({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var HA=P((EDe,iI)=>{"use strict";var aI=Vd(),nI=Qc().line,mpe=kc().dash,$3=zn().extendFlat,ype=Ds().overrideAll,gpe=Xa().templatedArray,SDe=Gm();iI.exports=ype(gpe("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:$3({},aI.xref,{}),yref:$3({},aI.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:nI.color,width:$3({},nI.width,{min:1,dflt:1}),dash:$3({},mpe,{dflt:"dot"})}}),"arraydraw","from-root")});var fI=P((kDe,sI)=>{"use strict";var oI=Ur(),Q3=yn(),bpe=gl(),xpe=HA(),lI=Jc();sI.exports=function(r,t){bpe(r,t,{name:"selections",handleItemDefaults:_pe});for(var a=t.selections,n=0;n{"use strict";uI.exports=function(r,t,a){a("newselection.mode");var n=a("newselection.line.width");n&&(a("newselection.line.color"),a("newselection.line.dash")),a("activeselection.fillcolor"),a("activeselection.opacity")}});var Hm=P((LDe,dI)=>{"use strict";var wpe=Bt(),vI=Ur(),hI=kn();dI.exports=function(r){return function(a,n){var i=a[r];if(Array.isArray(i))for(var o=wpe.subplotsRegistry.cartesian,l=o.idRegex,s=n._subplots,f=s.xaxis,u=s.yaxis,c=s.cartesian,v=n._has("cartesian"),d=0;d{"use strict";var pI=EA(),Vm=UN();mI.exports={moduleType:"component",name:"selections",layoutAttributes:HA(),supplyLayoutDefaults:fI(),supplyDrawNewSelectionDefaults:cI(),includeBasePlot:Hm()("selections"),draw:pI.draw,drawOne:pI.drawOne,reselect:Vm.reselect,prepSelect:Vm.prepSelect,clearOutline:Vm.clearOutline,clearSelectionsCache:Vm.clearSelectionsCache,selectOnClick:Vm.selectOnClick}});var II=P((FDe,NI)=>{"use strict";var XA=da(),Jl=Ur(),yI=Jl.numberFormat,Ape=ks(),Tpe=Ew(),K3=Bt(),SI=Jl.strTranslate,Mpe=po(),gI=ha(),Kc=Ha(),Spe=Wc(),bI=yn(),Epe=Yc(),kpe=Is(),EI=jc(),eb=EI.selectingOrDrawing,Cpe=EI.freeMode,Lpe=ho().FROM_TL,Dpe=y3(),Fpe=z3().redrawReglTraces,qpe=xi(),YA=kn().getFromId,Rpe=Yd().prepSelect,Ppe=Yd().clearOutline,Npe=Yd().selectOnClick,VA=bA(),ZA=qi(),xI=ZA.MINDRAG,Ro=ZA.MINZOOM,_I=!0;function Ipe(e,r,t,a,n,i,o,l){var s=e._fullLayout._zoomlayer,f=o+l==="nsew",u=(o+l).length===1,c,v,d,p,y,m,b,A,_,x,T,E,S,k,F,I,O,q,H,j,le,te,Q;t+=r.yaxis._shift;function J(){if(c=r.xaxis,v=r.yaxis,_=c._length,x=v._length,b=c._offset,A=v._offset,d={},d[c._id]=c,p={},p[v._id]=v,o&&l)for(var tr=r.overlays,cr=0;cr=0){Hr._fullLayout._deactivateShape(Hr);return}var ot=Hr._fullLayout.clickmode;if(jA(Hr),tr===2&&!u&&Wr(),f)ot.indexOf("select")>-1&&Npe(cr,Hr,y,m,r.id,ue),ot.indexOf("event")>-1&&Spe.click(Hr,cr,r.id);else if(tr===1&&u){var jr=o?v:c,at=o==="s"||l==="w"?0:1,xt=jr._name+".range["+at+"]",Xr=Ope(jr,at),nt="left",gr="middle";if(jr.fixedrange)return;o?(gr=o==="n"?"top":"bottom",jr.side==="right"&&(nt="right")):l==="e"&&(nt="right"),Hr._context.showAxisRangeEntryBoxes&&XA.select(ae).call(Mpe.makeEditable,{gd:Hr,immediate:!0,background:Hr._fullLayout.paper_bgcolor,text:String(Xr),fill:jr.tickfont?jr.tickfont.color:"#444",horizontalAlign:nt,verticalAlign:gr}).on("edit",function(Se){var Ne=jr.d2r(Se);Ne!==void 0&&K3.call("_guiRelayout",Hr,xt,Ne)})}}kpe.init(ue);var Ee,Xe,Ae,rr,ze,We,$e,Ue,ee,de;function ne(tr,cr,Hr){var ot=ae.getBoundingClientRect();Ee=cr-ot.left,Xe=Hr-ot.top,e._fullLayout._calcInverseTransform(e);var jr=Jl.apply3DTransform(e._fullLayout._invTransform)(Ee,Xe);Ee=jr[0],Xe=jr[1],Ae={l:Ee,r:Ee,w:0,t:Xe,b:Xe,h:0},rr=e._hmpixcount?e._hmlumcount/e._hmpixcount:Ape(e._fullLayout.plot_bgcolor).getLuminance(),ze="M0,0H"+_+"V"+x+"H0V0",We=!1,$e="xy",de=!1,Ue=LI(s,rr,b,A,ze),ee=DI(s,b,A)}function je(tr,cr){if(e._transitioningWithDuration)return!1;var Hr=Math.max(0,Math.min(_,te*tr+Ee)),ot=Math.max(0,Math.min(x,Q*cr+Xe)),jr=Math.abs(Hr-Ee),at=Math.abs(ot-Xe);Ae.l=Math.min(Ee,Hr),Ae.r=Math.max(Ee,Hr),Ae.t=Math.min(Xe,ot),Ae.b=Math.max(Xe,ot);function xt(){$e="",Ae.r=Ae.l,Ae.t=Ae.b,ee.attr("d","M0,0Z")}if(T.isSubplotConstrained)jr>Ro||at>Ro?($e="xy",jr/_>at/x?(at=jr*x/_,Xe>ot?Ae.t=Xe-at:Ae.b=Xe+at):(jr=at*_/x,Ee>Hr?Ae.l=Ee-jr:Ae.r=Ee+jr),ee.attr("d",rb(Ae))):xt();else if(E.isSubplotConstrained)if(jr>Ro||at>Ro){$e="xy";var Xr=Math.min(Ae.l/_,(x-Ae.b)/x),nt=Math.max(Ae.r/_,(x-Ae.t)/x);Ae.l=Xr*_,Ae.r=nt*_,Ae.b=(1-Xr)*x,Ae.t=(1-nt)*x,ee.attr("d",rb(Ae))}else xt();else!k||at0){var Se;if(E.isSubplotConstrained||!S&&k.length===1){for(Se=0;Se1&&(xt.maxallowed!==void 0&&I===(xt.range[0]1&&(Xr.maxallowed!==void 0&&O===(Xr.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function zpe(e,r,t){return e?e==="nsew"?t?"":r==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function LI(e,r,t,a,n){return e.append("path").attr("class","zoombox").style({fill:r>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",SI(t,a)).attr("d",n+"Z")}function DI(e,r,t){return e.append("path").attr("class","zoombox-corners").style({fill:gI.background,stroke:gI.defaultLine,"stroke-width":1,opacity:0}).attr("transform",SI(r,t)).attr("d","M0,0Z")}function FI(e,r,t,a,n,i){e.attr("d",a+"M"+t.l+","+t.t+"v"+t.h+"h"+t.w+"v-"+t.h+"h-"+t.w+"Z"),qI(e,r,n,i)}function qI(e,r,t,a){t||(e.transition().style("fill",a>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),r.transition().style("opacity",1).duration(200))}function jA(e){XA.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function RI(e){_I&&e.data&&e._context.showTips&&(Jl.notifier(Jl._(e,"Double-click to zoom back out"),"long"),_I=!1)}function Gpe(e,r){return"M"+(e.l-.5)+","+(r-Ro-.5)+"h-3v"+(2*Ro+1)+"h3ZM"+(e.r+.5)+","+(r-Ro-.5)+"h3v"+(2*Ro+1)+"h-3Z"}function Upe(e,r){return"M"+(r-Ro-.5)+","+(e.t-.5)+"v-3h"+(2*Ro+1)+"v3ZM"+(r-Ro-.5)+","+(e.b+.5)+"v3h"+(2*Ro+1)+"v-3Z"}function rb(e){var r=Math.floor(Math.min(e.b-e.t,e.r-e.l,Ro)/2);return"M"+(e.l-3.5)+","+(e.t-.5+r)+"h3v"+-r+"h"+r+"v-3h-"+(r+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+r)+"h-3v"+-r+"h"+-r+"v-3h"+(r+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-r)+"h-3v"+r+"h"+-r+"v3h"+(r+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-r)+"h3v"+r+"h"+r+"v3h-"+(r+3)+"Z"}function TI(e,r,t,a,n){for(var i=!1,o={},l={},s,f,u,c,v=(n||{}).xaHash,d=(n||{}).yaHash,p=0;p{"use strict";var Hpe=da(),tb=Wc(),Vpe=Is(),Ype=Yc(),zs=II().makeDragBox,Ti=qi().DRAGGERSIZE;ab.initInteractions=function(r){var t=r._fullLayout;if(r._context.staticPlot){Hpe.select(r).selectAll(".drag").remove();return}if(!(!t._has("cartesian")&&!t._has("splom"))){var a=Object.keys(t._plots||{}).sort(function(i,o){if((t._plots[i].mainplot&&!0)===(t._plots[o].mainplot&&!0)){var l=i.split("y"),s=o.split("y");return l[0]===s[0]?Number(l[1]||1)-Number(s[1]||1):Number(l[0]||1)-Number(s[0]||1)}return t._plots[i].mainplot?1:-1});a.forEach(function(i){var o=t._plots[i],l=o.xaxis,s=o.yaxis;if(!o.mainplot){var f=zs(r,o,l._offset,s._offset,l._length,s._length,"ns","ew");f.onmousemove=function(v){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===i&&r._fullLayout._plots[i]&&tb.hover(r,v,i)},tb.hover(r,v,i),r._fullLayout._lasthover=f,r._fullLayout._hoversubplot=i},f.onmouseout=function(v){r._dragging||(r._fullLayout._hoversubplot=null,Vpe.unhover(r,v))},r._context.showAxisDragHandles&&(zs(r,o,l._offset-Ti,s._offset-Ti,Ti,Ti,"n","w"),zs(r,o,l._offset+l._length,s._offset-Ti,Ti,Ti,"n","e"),zs(r,o,l._offset-Ti,s._offset+s._length,Ti,Ti,"s","w"),zs(r,o,l._offset+l._length,s._offset+s._length,Ti,Ti,"s","e"))}if(r._context.showAxisDragHandles){if(i===l._mainSubplot){var u=l._mainLinePosition;l.side==="top"&&(u-=Ti),zs(r,o,l._offset+l._length*.1,u,l._length*.8,Ti,"","ew"),zs(r,o,l._offset,u,l._length*.1,Ti,"","w"),zs(r,o,l._offset+l._length*.9,u,l._length*.1,Ti,"","e")}if(i===s._mainSubplot){var c=s._mainLinePosition;s.side!=="right"&&(c-=Ti),zs(r,o,c,s._offset+s._length*.1,Ti,s._length*.8,"ns",""),zs(r,o,c,s._offset+s._length*.9,Ti,s._length*.1,"s",""),zs(r,o,c,s._offset,Ti,s._length*.1,"n","")}}});var n=t._hoverlayer.node();n.onmousemove=function(i){i.target=r._fullLayout._lasthover,tb.hover(r,i,t._hoversubplot)},n.onclick=function(i){i.target=r._fullLayout._lasthover,tb.click(r,i)},n.onmousedown=function(i){r._fullLayout._lasthover.onmousedown(i)},ab.updateFx(r)}};ab.updateFx=function(e){var r=e._fullLayout,t=r.dragmode==="pan"?"move":"crosshair";Ype(r._draggers,t)}});var zI=P((RDe,BI)=>{"use strict";var OI=Bt();BI.exports=function(r){for(var t=OI.layoutArrayContainers,a=OI.layoutArrayRegexes,n=r.split("[")[0],i,o,l=0;l{"use strict";var Wpe=Mc(),$A=Hg(),Ym=g0(),jpe=Y5().sorterAsc,QA=Bt();Wm.containerArrayMatch=zI();var Xpe=Wm.isAddVal=function(r){return r==="add"||Wpe(r)},GI=Wm.isRemoveVal=function(r){return r===null||r==="remove"};Wm.applyContainerArrayChanges=function(r,t,a,n,i){var o=t.astr,l=QA.getComponentMethod(o,"supplyLayoutDefaults"),s=QA.getComponentMethod(o,"draw"),f=QA.getComponentMethod(o,"drawOne"),u=n.replot||n.recalc||l===$A||s===$A,c=r.layout,v=r._fullLayout;if(a[""]){Object.keys(a).length>1&&Ym.warn("Full array edits are incompatible with other edits",o);var d=a[""][""];if(GI(d))t.set(null);else if(Array.isArray(d))t.set(d);else return Ym.warn("Unrecognized full array edit value",o,d),!0;return u?!1:(l(c,v),s(r),!0)}var p=Object.keys(a).map(Number).sort(jpe),y=t.get(),m=y||[],b=i(v,o).get(),A=[],_=-1,x=m.length,T,E,S,k,F,I,O,q;for(T=0;Tm.length-(O?0:1)){Ym.warn("index out of range",o,S);continue}if(I!==void 0)F.length>1&&Ym.warn("Insertion & removal are incompatible with edits to the same index.",o,S),GI(I)?A.push(S):O?(I==="add"&&(I={}),m.splice(S,0,I),b&&b.splice(S,0,{})):Ym.warn("Unrecognized full object edit value",o,S,I),_===-1&&(_=S);else for(E=0;E=0;T--)m.splice(A[T],1),b&&b.splice(A[T],1);if(m.length?y||t.set(m):t.set(null),u)return!1;if(l(c,v),f!==$A){var H;if(_===-1)H=p;else{for(x=Math.max(m.length,x),H=[],T=0;T=_));T++)H.push(S);for(T=_;T{"use strict";var WI=ba(),jI=Bt(),xo=Ur(),jm=xi(),XI=kn(),ZI=ha(),Xm=XI.cleanId,Zpe=XI.getFromTrace,KA=jI.traceIs,Jpe=["x","y","z"];$l.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&xo.log("Clearing previous rejected promises from queue."),e._promises=[]};$l.cleanLayout=function(e){var r,t;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var a=(jm.subplotsRegistry.cartesian||{}).attrRegex,n=(jm.subplotsRegistry.polar||{}).attrRegex,i=(jm.subplotsRegistry.ternary||{}).attrRegex,o=(jm.subplotsRegistry.gl3d||{}).attrRegex,l=Object.keys(e);for(r=0;r3?(m.x=1.02,m.xanchor="left"):m.x<-2&&(m.x=-.02,m.xanchor="right"),m.y>3?(m.y=1.02,m.yanchor="bottom"):m.y<-2&&(m.y=-.02,m.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),ZI.clean(e),e.template&&e.template.layout&&$l.cleanLayout(e.template.layout),e};function Wd(e,r){var t=e[r],a=r.charAt(0);t&&t!=="paper"&&(e[r]=Xm(t,a,!0))}$l.cleanData=function(e){for(var r=0;r0)return e.slice(0,r)}$l.hasParent=function(e,r){for(var t=YI(r);t;){if(t in e)return!0;t=YI(t)}return!1};$l.clearAxisTypes=function(e,r,t){for(var a=0;a{let t=(...a)=>a.every(n=>xo.isPlainObject(n))||a.every(n=>Array.isArray(n));if([e,r].every(a=>Array.isArray(a))){if(e.length!==r.length)return!1;for(let a=0;axo.isPlainObject(a))){if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let a in e){if(a.startsWith("_"))continue;let n=e[a],i=r[a];if(n!==i&&!(t(n,i)?e6(n,i):!1))return!1}return!0}return!1};$l.collectionsAreEqual=e6});var o6=P(pa=>{"use strict";var lb=da(),Kpe=ba(),e1e=n4(),bt=Ur(),rn=bt.nestedProperty,a6=Q1(),Po=kC(),Ql=Bt(),db=dd(),zt=xi(),_o=yn(),r1e=Sw(),t1e=Ul(),r6=Ha(),a1e=ha(),n1e=JA().initInteractions,i1e=Oc(),o1e=Yd().clearOutline,rO=y0().dfltConfig,ib=UI(),Vn=JI(),Oa=z3(),ev=Ds(),l1e=qi().AX_NAME_PATTERN,t6=0,$I=5;function s1e(e,r,t,a){var n;if(e=bt.getGraphDiv(e),a6.init(e),bt.isPlainObject(r)){var i=r;r=i.data,t=i.layout,a=i.config,n=i.frames}var o=a6.triggerHandler(e,"plotly_beforeplot",[r,t,a]);if(o===!1)return Promise.reject();!r&&!t&&!bt.isPlotDiv(e)&&bt.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function l(){if(n)return pa.addFrames(e,n)}aO(e,a),t||(t={}),lb.select(e).classed("js-plotly-plot",!0),r6.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var s=(e.data||[]).length===0&&Array.isArray(r);Array.isArray(r)&&(Vn.cleanData(r),s?e.data=r:e.data.push.apply(e.data,r),e.empty=!1),(!e.layout||s)&&(e.layout=Vn.cleanLayout(t)),zt.supplyDefaults(e);var f=e._fullLayout,u=f._has("cartesian");f._replotting=!0,(s||f._shouldCreateBgLayer)&&(D1e(e),f._shouldCreateBgLayer&&delete f._shouldCreateBgLayer),r6.initGradients(e),r6.initPatterns(e),s&&_o.saveShowSpikeInitial(e);var c=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;c&&zt.doCalcdata(e);for(var v=0;v=e.data.length||n<-e.data.length)throw new Error(t+" must be valid indices for gd.data.");if(r.indexOf(n,a+1)>-1||n>=0&&r.indexOf(-e.data.length+n)>-1||n<0&&r.indexOf(e.data.length+n)>-1)throw new Error("each index in "+t+" must be unique.")}}function nO(e,r,t){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(r)||(r=[r]),fb(e,r,"currentIndices"),typeof t!="undefined"&&!Array.isArray(t)&&(t=[t]),typeof t!="undefined"&&fb(e,t,"newIndices"),typeof t!="undefined"&&r.length!==t.length)throw new Error("current and new indices must be of equal length.")}function h1e(e,r,t){var a,n;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("traces must be defined.");for(Array.isArray(r)||(r=[r]),a=0;a=0&&u=0&&u0&&typeof k.parts[O]!="string";)O--;var q=k.parts[O],H=k.parts[O-1]+"."+q,j=k.parts.slice(0,O).join("."),le=rn(e.layout,j).get(),te=rn(a,j).get(),Q=k.get();if(F!==void 0){b[S]=F,A[S]=q==="reverse"?F:Pu(Q);var J=db.getLayoutValObject(a,k.parts);if(J&&J.impliedEdits&&F!==null)for(var Z in J.impliedEdits)_(bt.relativeAttr(S,Z),J.impliedEdits[Z]);if(["width","height"].indexOf(S)!==-1)if(F){_("autosize",null);var ae=S==="height"?"width":"height";_(ae,a[ae])}else a[S]=e._initialAutoSize[S];else if(S==="autosize")_("width",F?null:a.width),_("height",F?null:a.height);else if(H.match(hO))E(H),rn(a,j+"._inputRange").set(null);else if(H.match(dO)){E(H),rn(a,j+"._inputRange").set(null);var ue=rn(a,j).get();ue._inputDomain&&(ue._input.domain=ue._inputDomain.slice())}else H.match(y1e)&&rn(a,j+"._inputDomain").set(null);if(q==="type"){T=le;var Le=te.type==="linear"&&F==="log",Be=te.type==="log"&&F==="linear";if(Le||Be){if(!T||!T.range)_(j+".autorange",!0);else if(te.autorange)Le&&(T.range=T.range[1]>T.range[0]?[1,2]:[2,1]);else{var Ee=T.range[0],Xe=T.range[1];Le?(Ee<=0&&Xe<=0&&_(j+".autorange",!0),Ee<=0?Ee=Xe/1e6:Xe<=0&&(Xe=Ee/1e6),_(j+".range[0]",Math.log(Ee)/Math.LN10),_(j+".range[1]",Math.log(Xe)/Math.LN10)):(_(j+".range[0]",Math.pow(10,Ee)),_(j+".range[1]",Math.pow(10,Xe)))}Array.isArray(a._subplots.polar)&&a._subplots.polar.length&&a[k.parts[0]]&&k.parts[1]==="radialaxis"&&delete a[k.parts[0]]._subplot.viewInitial["radialaxis.range"],Ql.getComponentMethod("annotations","convertCoords")(e,te,F,_),Ql.getComponentMethod("images","convertCoords")(e,te,F,_)}else _(j+".autorange",!0),_(j+".range",null);rn(a,j+"._inputRange").set(null)}else if(q.match(l1e)){var Ae=rn(a,S).get(),rr=(F||{}).type;(!rr||rr==="-")&&(rr="linear"),Ql.getComponentMethod("annotations","convertCoords")(e,Ae,rr,_),Ql.getComponentMethod("images","convertCoords")(e,Ae,rr,_)}var ze=ib.containerArrayMatch(S);if(ze){u=ze.array,c=ze.index;var We=ze.property,$e=J||{editType:"calc"};c!==""&&We===""&&(ib.isAddVal(F)?A[S]=null:ib.isRemoveVal(F)?A[S]=(rn(t,u).get()||[])[c]:bt.warn("unrecognized full object value",r)),ev.update(m,$e),f[u]||(f[u]={});var Ue=f[u][c];Ue||(Ue=f[u][c]={}),Ue[We]=F,delete r[S]}else q==="reverse"?(le.range?le.range.reverse():(_(j+".autorange",!0),le.range=[1,0]),te.autorange?m.calc=!0:m.plot=!0):(S==="dragmode"&&(F===!1&&Q!==!1||F!==!1&&Q===!1)||a._has("scatter-like")&&a._has("regl")&&S==="dragmode"&&(F==="lasso"||F==="select")&&!(Q==="lasso"||Q==="select")?m.plot=!0:J?ev.update(m,J):m.calc=!0,k.set(F))}}for(u in f){var ee=ib.applyContainerArrayChanges(e,i(t,u),f[u],m,i);ee||(m.plot=!0)}for(var de in x){T=_o.getFromId(e,de);var ne=T&&T._constraintGroup;if(ne){m.calc=!0;for(var je in ne)x[je]||(_o.getFromId(e,je)._constraintShrinkable=!0)}}(mO(e)||r.height||r.width)&&(m.plot=!0);var ur=a.shapes;for(c=0;c1;)if(a.pop(),t=rn(r,a.join(".")+".uirevision").get(),t!==void 0)return t;return r.uirevision}function x1e(e,r){for(var t=0;t[j,e._ev.listeners(j)]);i=pa.newPlot(e,r,t,a).then(()=>{for(let[j,le]of H)le.forEach(te=>e.on(j,te));return pa.react(e,r,t,a)})}else{e.data=r||[],Vn.cleanData(e.data),e.layout=t||{},Vn.cleanLayout(e.layout),w1e(e.data,e.layout,l,s),zt.supplyDefaults(e,{skipUpdateCalc:!0});var c=e._fullData,v=e._fullLayout,d=v.datarevision===void 0,p=v.transition,y=M1e(e,s,v,d,p),m=y.newDataRevision,b=T1e(e,l,c,d,p,m);if(mO(e)&&(y.layoutReplot=!0),b.calc||y.calc){e.calcdata=void 0;for(var A=Object.getOwnPropertyNames(v),_=0;_(u||e.emit("plotly_react",{config:a,data:r,layout:t}),e))}function T1e(e,r,t,a,n,i){var o=r.length===t.length;if(!n&&!o)return{fullReplot:!0,calc:!0};var l=ev.traceFlags();l.arrays={},l.nChanges=0,l.nChangesAnim=0;var s,f;function u(d){var p=db.getTraceValObject(f,d);return!f._module.animatable&&p.anim&&(p.anim=!1),p}var c={getValObject:u,flags:l,immutable:a,transition:n,newDataRevision:i,gd:e},v={};for(s=0;s=n.length?n[0]:n[f]:n}function l(f){return Array.isArray(i)?f>=i.length?i[0]:i[f]:i}function s(f,u){var c=0;return function(){if(f&&++c===u)return f()}}return new Promise(function(f,u){function c(){if(a._frameQueue.length!==0){for(;a._frameQueue.length;){var q=a._frameQueue.pop();q.onInterrupt&&q.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function v(q){if(q.length!==0){for(var H=0;Ha._timeToNext&&p()};q()}var m=0;function b(q){return Array.isArray(n)?m>=n.length?q.transitionOpts=n[m]:q.transitionOpts=n[0]:q.transitionOpts=n,m++,q}var A,_,x=[],T=r==null,E=Array.isArray(r),S=!T&&!E&&bt.isPlainObject(r);if(S)x.push({type:"object",data:b(bt.extendFlat({},r))});else if(T||["string","number"].indexOf(typeof r)!==-1)for(A=0;A0&&II)&&O.push(_);x=O}}x.length>0?v(x):(e.emit("plotly_animated"),f())})}function E1e(e,r,t){if(e=bt.getGraphDiv(e),r==null)return Promise.resolve();if(!bt.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var a,n,i,o,l=e._transitionData._frames,s=e._transitionData._frameHash;if(!Array.isArray(r))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+r);var f=l.length+r.length*2,u=[],c={};for(a=r.length-1;a>=0;a--)if(bt.isPlainObject(r[a])){var v=r[a].name,d=(s[v]||c[v]||{}).name,p=r[a].name,y=s[d]||c[d];d&&p&&typeof p=="number"&&y&&t6<$I&&(t6++,bt.warn('addFrames: overwriting frame "'+(s[d]||c[d]).name+'" with a frame whose name of type "number" also equates to "'+d+'". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),t6===$I&&bt.warn("addFrames: This API call has yielded too many of these warnings. For the rest of this call, further warnings about numeric frame names will be suppressed.")),c[v]={name:v},u.push({frame:zt.supplyFrameDefaults(r[a]),index:t&&t[a]!==void 0&&t[a]!==null?t[a]:f+a})}u.sort(function(S,k){return S.index>k.index?-1:S.index=0;a--){if(n=u[a].frame,typeof n.name=="number"&&bt.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!n.name)for(;s[n.name="frame "+e._transitionData._counter++];);if(s[n.name]){for(i=0;i=0;t--)a=r[t],i.push({type:"delete",index:a}),o.unshift({type:"insert",index:a,value:n[a]});var l=zt.modifyFrames,s=zt.modifyFrames,f=[e,o],u=[e,i];return Po&&Po.add(e,l,f,s,u),zt.modifyFrames(e,i)}function C1e(e){e=bt.getGraphDiv(e);var r=e._fullLayout||{},t=e._fullData||[];return zt.cleanPlot([],{},t,r),zt.purge(e),a6.purge(e),r._container&&r._container.remove(),delete e._context,e}function L1e(e){var r=e._fullLayout,t=e.getBoundingClientRect();if(!bt.equalDomRects(t,r._lastBBox)){var a=r._invTransform=bt.inverseTransformMatrix(bt.getFullTransformMatrix(e));r._invScaleX=Math.sqrt(a[0][0]*a[0][0]+a[0][1]*a[0][1]+a[0][2]*a[0][2]),r._invScaleY=Math.sqrt(a[1][0]*a[1][0]+a[1][1]*a[1][1]+a[1][2]*a[1][2]),r._lastBBox=t}}function D1e(e){var r=lb.select(e),t=e._fullLayout;if(t._calcInverseTransform=L1e,t._calcInverseTransform(e),t._container=r.selectAll(".plot-container").data([0]),t._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),t._paperdiv=t._container.selectAll(".svg-container").data([0]),t._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),t._glcontainer=t._paperdiv.selectAll(".gl-container").data([{}]),t._glcontainer.enter().append("div").classed("gl-container",!0),t._paperdiv.selectAll(".main-svg").remove(),t._paperdiv.select(".modebar-container").remove(),t._paper=t._paperdiv.insert("svg",":first-child").classed("main-svg",!0),t._toppaper=t._paperdiv.append("svg").classed("main-svg",!0),t._modebardiv=t._paperdiv.append("div"),delete t._modeBar,t._hoverpaper=t._paperdiv.append("svg").classed("main-svg",!0),!t._uid){var a={};lb.selectAll("defs").each(function(){this.id&&(a[this.id.split("-")[1]]=1)}),t._uid=bt.randstr(a)}t._paperdiv.selectAll(".main-svg").attr(i1e.svgAttrs),t._defs=t._paper.append("defs").attr("id","defs-"+t._uid),t._clips=t._defs.append("g").classed("clips",!0),t._topdefs=t._toppaper.append("defs").attr("id","topdefs-"+t._uid),t._topclips=t._topdefs.append("g").classed("clips",!0),t._bgLayer=t._paper.append("g").classed("bglayer",!0),t._draggers=t._paper.append("g").classed("draglayer",!0);var n=t._paper.append("g").classed("layer-below",!0);t._imageLowerLayer=n.append("g").classed("imagelayer",!0),t._shapeLowerLayer=n.append("g").classed("shapelayer",!0),t._cartesianlayer=t._paper.append("g").classed("cartesianlayer",!0),t._polarlayer=t._paper.append("g").classed("polarlayer",!0),t._smithlayer=t._paper.append("g").classed("smithlayer",!0),t._ternarylayer=t._paper.append("g").classed("ternarylayer",!0),t._geolayer=t._paper.append("g").classed("geolayer",!0),t._funnelarealayer=t._paper.append("g").classed("funnelarealayer",!0),t._pielayer=t._paper.append("g").classed("pielayer",!0),t._iciclelayer=t._paper.append("g").classed("iciclelayer",!0),t._treemaplayer=t._paper.append("g").classed("treemaplayer",!0),t._sunburstlayer=t._paper.append("g").classed("sunburstlayer",!0),t._indicatorlayer=t._toppaper.append("g").classed("indicatorlayer",!0),t._glimages=t._paper.append("g").classed("glimages",!0);var i=t._toppaper.append("g").classed("layer-above",!0);t._imageUpperLayer=i.append("g").classed("imagelayer",!0),t._shapeUpperLayer=i.append("g").classed("shapelayer",!0),t._selectionLayer=t._toppaper.append("g").classed("selectionlayer",!0),t._infolayer=t._toppaper.append("g").classed("infolayer",!0),t._menulayer=t._toppaper.append("g").classed("menulayer",!0),t._zoomlayer=t._toppaper.append("g").classed("zoomlayer",!0),t._hoverlayer=t._hoverpaper.append("g").classed("hoverlayer",!0),t._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}pa.animate=S1e;pa.addFrames=E1e;pa.deleteFrames=k1e;pa.addTraces=fO;pa.deleteTraces=uO;pa.extendTraces=lO;pa.moveTraces=n6;pa.prependTraces=sO;pa.newPlot=v1e;pa._doPlot=s1e;pa.purge=C1e;pa.react=A1e;pa.redraw=c1e;pa.relayout=Zm;pa.restyle=ub;pa.setPlotConfig=f1e;pa.update=vb;pa._guiRelayout=i6(Zm);pa._guiRestyle=i6(ub);pa._guiUpdate=i6(vb);pa._storeDirectGUIEdit=m1e});var W0=P(Rf=>{"use strict";var F1e=Bt();Rf.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Rf.getRedrawFunc=function(e){return function(){F1e.getComponentMethod("colorbar","draw")(e)}};Rf.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Rf.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var yO=window.URL||window.webkitURL;Rf.createObjectURL=function(e){return yO.createObjectURL(e)};Rf.revokeObjectURL=function(e){return yO.revokeObjectURL(e)};Rf.createBlob=function(e,r){if(r==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(r==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var t=q1e(window.atob(e));return new window.Blob([t],{type:"image/"+r})};Rf.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function q1e(e){for(var r=e.length,t=new ArrayBuffer(r),a=new Uint8Array(t),n=0;n{"use strict";var s6=da(),BDe=Ur(),R1e=Ha(),P1e=ha(),zDe=Oc(),l6=/"/g,$m="TOBESTRIPPED",N1e=new RegExp('("'+$m+")|("+$m+'")',"g");function I1e(e){var r=s6.select("body").append("div").style({display:"none"}).html(""),t=e.replace(/(&[^;]*;)/gi,function(a){return a==="<"?"<":a==="&rt;"?">":a.indexOf("<")!==-1||a.indexOf(">")!==-1?"":r.html(a).text()});return r.remove(),t}function O1e(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}gO.exports=function(r,t,a){var n=r._fullLayout,i=n._paper,o=n._toppaper,l=n.width,s=n.height,f;i.insert("rect",":first-child").call(R1e.setRect,0,0,l,s).call(P1e.fill,n.paper_bgcolor);var u=n._basePlotModules||[];for(f=0;f{"use strict";var B1e=Ur(),z1e=c2().EventEmitter,Qm=W0();function G1e(e){var r=e.emitter||new z1e,t=new Promise(function(a,n){var i=window.Image,o=e.svg,l=e.format||"png",s=e.canvas,f=e.scale||1,u=e.width||300,c=e.height||150,v=f*u,d=f*c,p=s.getContext("2d",{willReadFrequently:!0}),y=new i,m,b;l==="svg"||B1e.isSafari()?b=Qm.encodeSVG(o):(m=Qm.createBlob(o,"svg"),b=Qm.createObjectURL(m)),s.width=v,s.height=d,y.onload=function(){var A;switch(m=null,Qm.revokeObjectURL(b),l!=="svg"&&p.drawImage(y,0,0,v,d),l){case"jpeg":A=s.toDataURL("image/jpeg");break;case"png":A=s.toDataURL("image/png");break;case"webp":A=s.toDataURL("image/webp");break;case"svg":A=b;break;default:var _="Image format is not jpeg, png, svg or webp.";if(n(new Error(_)),!e.promise)return r.emit("error",_)}a(A),e.promise||r.emit("success",A)},y.onerror=function(A){if(m=null,Qm.revokeObjectURL(b),n(A),!e.promise)return r.emit("error",A)},y.src=b});return e.promise?t:r}bO.exports=G1e});var u6=P((HDe,wO)=>{"use strict";var xO=ba(),_O=o6(),U1e=xi(),Pf=Ur(),Km=W0(),H1e=mb(),V1e=yb(),Y1e=Eg().version,f6={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function W1e(e,r){r=r||{};var t,a,n,i;Pf.isPlainObject(e)?(t=e.data||[],a=e.layout||{},n=e.config||{},i={}):(e=Pf.getGraphDiv(e),t=Pf.extendDeep([],e.data),a=Pf.extendDeep({},e.layout),n=e._context,i=e._fullLayout||{});function o(E){return!(E in r)||Pf.validate(r[E],f6[E])}if(!o("width")&&r.width!==null||!o("height")&&r.height!==null)throw new Error("Height and width should be pixel values.");if(!o("format"))throw new Error("Export format is not "+Pf.join2(f6.format.values,", "," or ")+".");var l={};function s(E,S){return Pf.coerce(r,l,f6,E,S)}var f=s("format"),u=s("width"),c=s("height"),v=s("scale"),d=s("setBackground"),p=s("imageDataOnly"),y=document.createElement("div");y.style.position="absolute",y.style.left="-5000px",document.body.appendChild(y);var m=Pf.extendFlat({},a);u?m.width=u:r.width===null&&xO(i.width)&&(m.width=i.width),c?m.height=c:r.height===null&&xO(i.height)&&(m.height=i.height);var b=Pf.extendFlat({},n,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),A=Km.getRedrawFunc(y);function _(){return new Promise(function(E){setTimeout(E,Km.getDelay(y._fullLayout))})}function x(){return new Promise(function(E,S){var k=H1e(y,f,v),F=y._fullLayout.width,I=y._fullLayout.height;function O(){_O.purge(y),document.body.removeChild(y)}if(f==="full-json"){var q=U1e.graphJson(y,!1,"keepdata","object",!0,!0);return q.version=Y1e,q=JSON.stringify(q),O(),E(p?q:Km.encodeJSON(q))}if(O(),f==="svg")return E(p?k:Km.encodeSVG(k));var H=document.createElement("canvas");H.id=Pf.randstr(),V1e({format:f,width:F,height:I,scale:v,canvas:H,svg:k,promise:!0}).then(E).catch(S)})}function T(E){return p?E.replace(Km.IMAGE_URL_PREFIX,""):E}return new Promise(function(E,S){_O.newPlot(y,t,m,b).then(A).then(_).then(x).then(function(k){E(T(k))}).catch(function(k){S(k)})})}wO.exports=W1e});var MO=P((VDe,TO)=>{"use strict";var Kl=Ur(),j1e=xi(),X1e=dd(),Z1e=y0().dfltConfig,Gs=Kl.isPlainObject,X0=Array.isArray,c6=Kl.isArrayOrTypedArray;TO.exports=function(r,t){r===void 0&&(r=[]),t===void 0&&(t={});var a=X1e.get(),n=[],i={_context:Kl.extendFlat({},Z1e)},o,l;X0(r)?(i.data=Kl.extendDeep([],r),o=r):(i.data=[],o=[],n.push(Mi("array","data"))),Gs(t)?(i.layout=Kl.extendDeep({},t),l=t):(i.layout={},l={},arguments.length>1&&n.push(Mi("object","layout"))),j1e.supplyDefaults(i);for(var s=i._fullData,f=o.length,u=0;uc.length&&a.push(Mi("unused",n,f.concat(c.length)));var b=c.length,A=Array.isArray(m);A&&(b=Math.min(b,m.length));var _,x,T,E,S;if(v.dimensions===2)for(x=0;xc[x].length&&a.push(Mi("unused",n,f.concat(x,c[x].length)));var k=c[x].length;for(_=0;_<(A?Math.min(k,m[x].length):k);_++)T=A?m[x][_]:m,E=u[x][_],S=c[x][_],Kl.validate(E,T)?S!==E&&S!==+E&&a.push(Mi("dynamic",n,f.concat(x,_),E,S)):a.push(Mi("value",n,f.concat(x,_),E))}else a.push(Mi("array",n,f.concat(x),u[x]));else for(x=0;x{"use strict";var tme=Ur(),bb=W0();function ame(e,r,t){var a=document.createElement("a"),n="download"in a,i=new Promise(function(o,l){var s,f;if(n)return s=bb.createBlob(e,t),f=bb.createObjectURL(s),a.href=f,a.download=r,document.body.appendChild(a),a.click(),document.body.removeChild(a),bb.revokeObjectURL(f),s=null,o(r);if(tme.isSafari()){var u=t==="svg"?",":";base64,";return bb.octetStream(u+encodeURIComponent(e)),o(r)}l(new Error("download error"))});return i}SO.exports=ame});var v6=P((jDe,CO)=>{"use strict";var kO=Ur(),nme=u6(),ime=EO(),WDe=W0();function ome(e,r){var t;return kO.isPlainObject(e)||(t=kO.getGraphDiv(e)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(a,n){t&&t._snapshotInProgress&&n(new Error("Snapshotting already in progress.")),t&&(t._snapshotInProgress=!0);var i=nme(e,r),o=r.filename||e.fn||"newplot";o+="."+r.format.replace("-","."),i.then(function(l){return t&&(t._snapshotInProgress=!1),ime(l,o,r.format)}).then(function(l){a(l)}).catch(function(l){t&&(t._snapshotInProgress=!1),n(l)})})}CO.exports=ome});var RO=P(h6=>{"use strict";var el=Ur(),rl=el.isPlainObject,LO=dd(),DO=xi(),lme=Cs(),FO=Xa(),qO=y0().dfltConfig;h6.makeTemplate=function(e){e=el.isPlainObject(e)?e:el.getGraphDiv(e),e=el.extendDeep({_context:qO},{data:e.data,layout:e.layout}),DO.supplyDefaults(e);var r=e.data||[],t=e.layout||{};t._basePlotModules=e._fullLayout._basePlotModules,t._modules=e._fullLayout._modules;var a={data:{},layout:{}};r.forEach(function(d){var p={};ey(d,p,fme.bind(null,d));var y=el.coerce(d,{},lme,"type"),m=a.data[y];m||(m=a.data[y]=[]),m.push(p)}),ey(t,a.layout,sme.bind(null,t)),delete a.layout.template;var n=t.template;if(rl(n)){var i=n.layout,o,l,s,f,u,c;rl(i)&&xb(i,a.layout);var v=n.data;if(rl(v)){for(l in a.data)if(s=v[l],Array.isArray(s)){for(u=a.data[l],c=u.length,f=s.length,o=0;ob?o.push({code:"unused",traceType:d,templateCount:m,dataCount:b}):b>m&&o.push({code:"reused",traceType:d,templateCount:m,dataCount:b})}}function A(_,x){for(var T in _)if(T.charAt(0)!=="_"){var E=_[T],S=es(_,T,x);rl(E)?(Array.isArray(_)&&E._template===!1&&E.templateitemname&&o.push({code:"missing",path:S,templateitemname:E.templateitemname}),A(E,S)):Array.isArray(E)&&ume(E)&&A(E,S)}}if(A({data:s,layout:l},""),o.length)return o.map(cme)};function ume(e){for(var r=0;r{"use strict";var ci=o6();bn._doPlot=ci._doPlot;bn.newPlot=ci.newPlot;bn.restyle=ci.restyle;bn.relayout=ci.relayout;bn.redraw=ci.redraw;bn.update=ci.update;bn._guiRestyle=ci._guiRestyle;bn._guiRelayout=ci._guiRelayout;bn._guiUpdate=ci._guiUpdate;bn._storeDirectGUIEdit=ci._storeDirectGUIEdit;bn.react=ci.react;bn.extendTraces=ci.extendTraces;bn.prependTraces=ci.prependTraces;bn.addTraces=ci.addTraces;bn.deleteTraces=ci.deleteTraces;bn.moveTraces=ci.moveTraces;bn.purge=ci.purge;bn.addFrames=ci.addFrames;bn.deleteFrames=ci.deleteFrames;bn.animate=ci.animate;bn.setPlotConfig=ci.setPlotConfig;var vme=V1().getGraphDiv,hme=q3().eraseActiveShape;bn.deleteActiveShape=function(e){return hme(vme(e))};bn.toImage=u6();bn.validate=MO();bn.downloadImage=v6();var PO=RO();bn.makeTemplate=PO.makeTemplate;bn.validateTemplate=PO.validateTemplate});var p6=P((JDe,IO)=>{"use strict";var d6=Ur(),dme=Bt();IO.exports=function(r,t,a,n){var i=n("x"),o=n("y"),l,s=dme.getComponentMethod("calendars","handleTraceDefaults");if(s(r,t,["x","y"],a),i){var f=d6.minRowLength(i);o?l=Math.min(f,d6.minRowLength(o)):(l=f,n("y0"),n("dy"))}else{if(!o)return 0;l=d6.minRowLength(o),n("x0"),n("dx")}return t._length=l,l}});var m6=P(($De,zO)=>{"use strict";var OO=Ur().dateTick0,pme=Kn(),mme=pme.ONEWEEK;function BO(e,r){return e%mme===0?OO(r,1):OO(r,0)}zO.exports=function(r,t,a,n,i){if(i||(i={x:!0,y:!0}),i.x){var o=n("xperiod");o&&(n("xperiod0",BO(o,t.xcalendar)),n("xperiodalignment"))}if(i.y){var l=n("yperiod");l&&(n("yperiod0",BO(l,t.ycalendar)),n("yperiodalignment"))}}});var HO=P((QDe,UO)=>{"use strict";var GO=["orientation","groupnorm","stackgaps"];UO.exports=function(r,t,a,n){var i=a._scatterStackOpts,o=n("stackgroup");if(o){var l=t.xaxis+t.yaxis,s=i[l];s||(s=i[l]={});var f=s[o],u=!1;f?f.traces.push(t):(f=s[o]={traceIndices:[],traces:[t]},u=!0);for(var c={orientation:t.x&&!t.y?"h":"v"},v=0;v{"use strict";var VO=ha(),YO=Ps().hasColorscale,WO=gd(),yme=Ri();jO.exports=function(r,t,a,n,i,o){var l=yme.isBubble(r),s=(r.line||{}).color,f;if(o=o||{},s&&(a=s),i("marker.symbol"),i("marker.opacity",l?.7:1),i("marker.size"),o.noAngle||(i("marker.angle"),o.noAngleRef||i("marker.angleref"),o.noStandOff||i("marker.standoff")),i("marker.color",a),YO(r,"marker")&&WO(r,t,n,i,{prefix:"marker.",cLetter:"c"}),o.noSelect||(i("selected.marker.color"),i("unselected.marker.color"),i("selected.marker.size"),i("unselected.marker.size")),o.noLine||(s&&!Array.isArray(s)&&t.marker.color!==s?f=s:l?f=VO.background:f=VO.defaultLine,i("marker.line.color",f),YO(r,"marker.line")&&WO(r,t,n,i,{prefix:"marker.line.",cLetter:"c"}),i("marker.line.width",l?1:0)),l&&(i("marker.sizeref"),i("marker.sizemin"),i("marker.sizemode")),o.gradient){var u=i("marker.gradient.type");u!=="none"&&i("marker.gradient.color")}}});var y6=P((eFe,XO)=>{"use strict";var gme=Ur().isArrayOrTypedArray,bme=Ps().hasColorscale,xme=gd();XO.exports=function(r,t,a,n,i,o){o||(o={});var l=(r.marker||{}).color;if(l&&l._inputArray&&(l=l._inputArray),i("line.color",a),bme(r,"line"))xme(r,t,n,i,{prefix:"line.",cLetter:"c"});else{var s=(gme(l)?!1:l)||a;i("line.color",s)}i("line.width"),o.noDash||i("line.dash"),o.backoff&&i("line.backoff")}});var JO=P((rFe,ZO)=>{"use strict";ZO.exports=function(r,t,a){var n=a("line.shape");n==="spline"&&a("line.smoothing")}});var g6=P((tFe,$O)=>{"use strict";var _me=Ur();$O.exports=function(e,r,t,a,n){n=n||{},a("textposition"),_me.coerceFont(a,"textfont",n.font||t.font,n),n.noSelect||(a("selected.textfont.color"),a("unselected.textfont.color"))}});var b6=P((aFe,KO)=>{"use strict";var Ab=ha(),QO=Ur().isArrayOrTypedArray;function wme(e){for(var r=Ab.interpolate(e[0][1],e[1][1],.5),t=2;t{"use strict";var eB=Ur(),Ame=Bt(),Tme=Qc(),Mme=Um(),jd=Ri(),Sme=p6(),Eme=m6(),kme=HO(),Cme=wb(),Lme=y6(),rB=JO(),Dme=g6(),Fme=b6(),qme=Ur().coercePattern;tB.exports=function(r,t,a,n){function i(d,p){return eB.coerce(r,t,Tme,d,p)}var o=Sme(r,t,n,i);if(o||(t.visible=!1),!!t.visible){Eme(r,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder");var l=kme(r,t,n,i);n.scattermode==="group"&&t.orientation===void 0&&i("orientation","v");var s=!l&&o{"use strict";var Rme=Mm().getAxisGroup;nB.exports=function(r,t,a,n,i){var o=t.orientation,l=t[{v:"x",h:"y"}[o]+"axis"],s=Rme(a,l)+o,f=a._alignmentOpts||{},u=n("alignmentgroup"),c=f[s];c||(c=f[s]={});var v=c[u];v?v.traces.push(t):v=c[u]={traces:[t],alignmentIndex:Object.keys(c).length,offsetGroups:{}};var d=n("offsetgroup")||"",p=v.offsetGroups,y=p[d];t._offsetIndex=0,(i!=="group"||d)&&(y||(y=p[d]={offsetIndex:Object.keys(p).length}),t._offsetIndex=y.offsetIndex)}});var x6=P((oFe,oB)=>{"use strict";var Pme=Ur(),Nme=iB(),Ime=Qc();oB.exports=function(r,t){var a,n,i,o=t.scattermode;function l(v){return Pme.coerce(n._input,n,Ime,v)}if(t.scattermode==="group")for(i=0;i=0;u--){var c=r[u];if(c.type==="scatter"&&c.xaxis===s.xaxis&&c.yaxis===s.yaxis){c.opacity=void 0;break}}}}}});var sB=P((lFe,lB)=>{"use strict";var Ome=Ur(),Bme=m2();lB.exports=function(e,r){function t(n,i){return Ome.coerce(e,r,Bme,n,i)}var a=r.barmode==="group";r.scattermode==="group"&&t("scattergap",a?r.bargap:.2)}});var _6=P((sFe,uB)=>{"use strict";var zme=ba(),fB=Ur(),Gme=fB.dateTime2ms,Tb=fB.incrementMonth,Ume=Kn(),Hme=Ume.ONEAVGMONTH;uB.exports=function(r,t,a,n){if(t.type!=="date")return{vals:n};var i=r[a+"periodalignment"];if(!i)return{vals:n};var o=r[a+"period"],l;if(zme(o)){if(o=+o,o<=0)return{vals:n}}else if(typeof o=="string"&&o.charAt(0)==="M"){var s=+o.substring(1);if(s>0&&Math.round(s)===s)l=s;else return{vals:n}}for(var f=t.calendar,u=i==="start",c=i==="end",v=r[a+"period0"],d=Gme(v,f)||0,p=[],y=[],m=[],b=n.length,A=0;A_;)E=Tb(E,-l,f);for(;E<=_;)E=Tb(E,l,f);T=Tb(E,-l,f)}else{for(x=Math.round((_-d)/o),E=d+x*o;E>_;)E-=o;for(;E<=_;)E+=o;T=E-o}p[A]=u?T:c?E:(T+E)/2,y[A]=T,m[A]=E}return{vals:p,starts:y,ends:m}}});var ry=P((fFe,vB)=>{"use strict";var w6=Ps().hasColorscale,A6=B4(),cB=Ri();vB.exports=function(r,t){cB.hasLines(t)&&w6(t,"line")&&A6(r,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),cB.hasMarkers(t)&&(w6(t,"marker")&&A6(r,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),w6(t,"marker.line")&&A6(r,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var T6=P((uFe,hB)=>{"use strict";var Nn=Ur();hB.exports=function(r,t){for(var a=0;a{"use strict";var dB=Ur();pB.exports=function(r,t){dB.isArrayOrTypedArray(t.selectedpoints)&&dB.tagSelected(r,t)}});var Xd=P((vFe,AB)=>{"use strict";var yB=ba(),S6=Ur(),ty=yn(),gB=_6(),M6=Kn().BADNUM,E6=Ri(),Vme=ry(),Yme=T6(),Wme=mB();function jme(e,r){var t=e._fullLayout,a=r._xA=ty.getFromId(e,r.xaxis||"x","x"),n=r._yA=ty.getFromId(e,r.yaxis||"y","y"),i=a.makeCalcdata(r,"x"),o=n.makeCalcdata(r,"y"),l=gB(r,a,"x",i),s=gB(r,n,"y",o),f=l.vals,u=s.vals,c=r._length,v=new Array(c),d=r.ids,p=k6(r,t,a,n),y=!1,m,b,A,_,x,T;_B(t,r);var E="x",S="y",k;if(p)S6.pushUnique(p.traceIndices,r.index),m=p.orientation==="v",m?(S="s",k="x"):(E="s",k="y"),x=p.stackgaps==="interpolate";else{var F=xB(r,c);bB(e,r,a,n,f,u,F)}var I=!!r.xperiodalignment,O=!!r.yperiodalignment;for(b=0;bb&&v[_].gap;)_--;for(T=v[_].s,A=v.length-1;A>_;A--)v[A].s=T;for(;b<_;)if(b++,v[b].gap){for(A=b+1;v[A].gap;)A++;for(var le=v[b-1][k],te=v[b-1].s,Q=(v[A].s-te)/(v[A][k]-le);b{"use strict";TB.exports=Mb;var Xme=Ur().distinctVals;function Mb(e,r){this.traces=e,this.sepNegVal=r.sepNegVal,this.overlapNoMerge=r.overlapNoMerge;for(var t=1/0,a=r.posAxis._id.charAt(0),n=[],i=0;i{"use strict";var rs=ba(),rv=Ur().isArrayOrTypedArray,Zd=Kn().BADNUM,Zme=Bt(),ay=yn(),Jme=Mm().getAxisGroup,Sb=MB();function $me(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,o=e.calcdata,l=[],s=[],f=0;fs+o||!rs(l))}for(var u=0;u{"use strict";var DB=Xd(),FB=LB().setGroupPositions;function fye(e,r){for(var t=r.xaxis,a=r.yaxis,n=e._fullLayout,i=e._fullData,o=e.calcdata,l=[],s=[],f=0;fF[u]&&u{"use strict";var cye=Ha(),OB=Kn(),ny=OB.BADNUM,BB=OB.LOG_CLIP,PB=BB+.5,NB=BB-.5,Eb=Ur(),vye=Eb.segmentsIntersect,IB=Eb.constrain,R6=Um();zB.exports=function(r,t){var a=t.trace||{},n=t.xaxis,i=t.yaxis,o=n.type==="log",l=i.type==="log",s=n._length,f=i._length,u=t.backoff,c=a.marker,v=t.connectGaps,d=t.baseTolerance,p=t.shape,y=p==="linear",m=a.fill&&a.fill!=="none",b=[],A=R6.minTolerance,_=r.length,x=new Array(_),T=0,E,S,k,F,I,O,q,H,j,le,te,Q,J,Z,ae,ue;function Le(gr){var Se=r[gr];if(!Se)return!1;var Ne=t.linearized?n.l2p(Se.x):n.c2p(Se.x),pr=t.linearized?i.l2p(Se.y):i.c2p(Se.y);if(Ne===ny){if(o&&(Ne=n.c2p(Se.x,!0)),Ne===ny)return!1;l&&pr===ny&&(Ne*=Math.abs(n._m*f*(n._m>0?PB:NB)/(i._m*s*(i._m>0?PB:NB)))),Ne*=1e3}if(pr===ny){if(l&&(pr=i.c2p(Se.y,!0)),pr===ny)return!1;pr*=1e3}return[Ne,pr]}function Be(gr,Se,Ne,pr){var xr=Ne-gr,ht=pr-Se,Tt=.5-gr,wt=.5-Se,It=xr*xr+ht*ht,ta=xr*Tt+ht*wt;if(ta>0&&ta1||Math.abs(Tt.y-Ne[0][1])>1)&&(Tt=[Tt.x,Tt.y],pr&&rr(Tt,gr)$e||gr[1]ee)return[IB(gr[0],We,$e),IB(gr[1],Ue,ee)]}function Yr(gr,Se){if(gr[0]===Se[0]&&(gr[0]===We||gr[0]===$e)||gr[1]===Se[1]&&(gr[1]===Ue||gr[1]===ee))return!0}function Kr(gr,Se){var Ne=[],pr=Ir(gr),xr=Ir(Se);return pr&&xr&&Yr(pr,xr)||(pr&&Ne.push(pr),xr&&Ne.push(xr)),Ne}function wr(gr,Se,Ne){return function(pr,xr){var ht=Ir(pr),Tt=Ir(xr),wt=[];if(ht&&Tt&&Yr(ht,Tt))return wt;ht&&wt.push(ht),Tt&&wt.push(Tt);var It=2*Eb.constrain((pr[gr]+xr[gr])/2,Se,Ne)-((ht||pr)[gr]+(Tt||xr)[gr]);if(It){var ta;ht&&Tt?ta=It>0==ht[gr]>Tt[gr]?ht:Tt:ta=ht||Tt,ta[gr]+=It}return wt}}var Vr;p==="linear"||p==="spline"?Vr=_r:p==="hv"||p==="vh"?Vr=Kr:p==="hvh"?Vr=wr(0,We,$e):p==="vhv"&&(Vr=wr(1,Ue,ee));function Wr(gr,Se){var Ne=Se[0]-gr[0],pr=(Se[1]-gr[1])/Ne,xr=(gr[1]*Se[0]-Se[1]*gr[0])/Ne;return xr>0?[pr>0?We:$e,ee]:[pr>0?$e:We,Ue]}function Re(gr){var Se=gr[0],Ne=gr[1],pr=Se===x[T-1][0],xr=Ne===x[T-1][1];if(!(pr&&xr))if(T>1){var ht=Se===x[T-2][0],Tt=Ne===x[T-2][1];pr&&(Se===We||Se===$e)&&ht?Tt?T--:x[T-1]=gr:xr&&(Ne===Ue||Ne===ee)&&Tt?ht?T--:x[T-1]=gr:x[T++]=gr}else x[T++]=gr}function lr(gr){x[T-1][0]!==gr[0]&&x[T-1][1]!==gr[1]&&Re([ur,er]),Re(gr),Lr=null,ur=er=0}var st=Eb.isArrayOrTypedArray(c);function kt(gr){if(gr&&u&&(gr.i=E,gr.d=r,gr.trace=a,gr.marker=st?c[gr.i]:c,gr.backoff=u),Ee=gr[0]/s,Xe=gr[1]/f,ne=gr[0]$e?$e:0,je=gr[1]ee?ee:0,ne||je){if(!T)x[T++]=[ne||gr[0],je||gr[1]];else if(Lr){var Se=Vr(Lr,gr);Se.length>1&&(lr(Se[0]),x[T++]=Se[1])}else Pr=Vr(x[T-1],gr)[0],x[T++]=Pr;var Ne=x[T-1];ne&&je&&(Ne[0]!==ne||Ne[1]!==je)?(Lr&&(ur!==ne&&er!==je?Re(ur&&er?Wr(Lr,gr):[ur||ne,er||je]):ur&&er&&Re([ur,er])),Re([ne,je])):ur-ne&&er-je&&Re([ne||ur,je||er]),Lr=gr,ur=ne,er=je}else Lr&&lr(Vr(Lr,gr)[0]),x[T++]=gr}for(E=0;E<_;E++)if(S=Le(E),!!S){for(T=0,Lr=null,kt(S),E++;E<_;E++){if(F=Le(E),!F){if(v)continue;break}if(!y||!t.simplify){kt(F);continue}var Ar=Le(E+1);if(le=rr(F,S),!(!(m&&(T===0||T===_-1))&&leAe(O,Ar))break;k=O,J=j[0]*H[0]+j[1]*H[1],J>te?(te=J,F=O,q=!1):J=r.length||!O)break;kt(O),S=O}}Lr&&Re([ur||Lr[0],er||Lr[1]]),b.push(x.slice(0,T))}var tr=p.slice(p.length-1);if(u&&tr!=="h"&&tr!=="v"){for(var cr=!1,Hr=-1,ot=[],jr=0;jr{"use strict";var UB={tonextx:1,tonexty:1,tonext:1};HB.exports=function(r,t,a){var n,i,o,l,s,f={},u=!1,c=-1,v=0,d=-1;for(i=0;i=0?s=d:(s=d=v,v++),s{"use strict";var Us=da(),hye=Bt(),iy=Ur(),$d=iy.ensureSingle,YB=iy.identity,In=Ha(),Qd=Ri(),dye=GB(),pye=P6(),kb=CA().tester;WB.exports=function(r,t,a,n,i,o){var l,s,f=!i,u=!!i&&i.duration>0,c=pye(r,t,a);if(l=n.selectAll("g.trace").data(c,function(d){return d[0].trace.uid}),l.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),l.order(),mye(r,l,t),u){o&&(s=o());var v=Us.transition().duration(i.duration).ease(i.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});v.each(function(){n.selectAll("g.trace").each(function(d,p){VB(r,p,t,d,c,this,i)})})}else l.each(function(d,p){VB(r,p,t,d,c,this,i)});f&&l.exit().remove(),n.selectAll("path:not([d])").remove()};function mye(e,r,t){r.each(function(a){var n=$d(Us.select(this),"g","fills");In.setClipUrl(n,t.layerClipId,e);var i=a[0].trace,o=[];i._ownfill&&o.push("_ownFill"),i._nexttrace&&o.push("_nextFill");var l=n.selectAll("g").data(o,YB);l.enter().append("g"),l.exit().each(function(s){i[s]=null}).remove(),l.order().each(function(s){i[s]=$d(Us.select(this),"path","js-fill")})})}function VB(e,r,t,a,n,i,o){var l=e._context.staticPlot,s;yye(e,r,t,a,n);var f=!!o&&o.duration>0;function u(wr){return f?wr.transition():wr}var c=t.xaxis,v=t.yaxis,d=a[0].trace,p=d.line,y=Us.select(i),m=$d(y,"g","errorbars"),b=$d(y,"g","lines"),A=$d(y,"g","points"),_=$d(y,"g","text");if(hye.getComponentMethod("errorbars","plot")(e,m,t,o),d.visible!==!0)return;u(y).style("opacity",d.opacity);var x,T,E=d.fill.charAt(d.fill.length-1);E!=="x"&&E!=="y"&&(E="");var S,k;E==="y"?(S=1,k=v.c2p(0,!0)):E==="x"&&(S=0,k=c.c2p(0,!0)),a[0][t.isRangePlot?"nodeRangePlot3":"node3"]=y;var F="",I=[],O=d._prevtrace,q=null,H=null;O&&(F=O._prevRevpath||"",T=O._nextFill,I=O._ownPolygons,q=O._fillsegments,H=O._fillElement);var j,le,te="",Q="",J,Z,ae,ue,Le,Be,Ee=[];d._polygons=[];var Xe=[],Ae=[],rr=iy.noop;if(x=d._ownFill,Qd.hasLines(d)||d.fill!=="none"){T&&T.datum(a),["hv","vh","hvh","vhv"].indexOf(p.shape)!==-1?(J=In.steps(p.shape),Z=In.steps(p.shape.split("").reverse().join(""))):p.shape==="spline"?J=Z=function(wr){var Vr=wr[wr.length-1];return wr.length>1&&wr[0][0]===Vr[0]&&wr[0][1]===Vr[1]?In.smoothclosed(wr.slice(1),p.smoothing):In.smoothopen(wr,p.smoothing)}:J=Z=function(wr){return"M"+wr.join("L")},ae=function(wr){return Z(wr.reverse())},Ae=dye(a,{xaxis:c,yaxis:v,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(p.width||1,3)/4,shape:p.shape,backoff:p.backoff,simplify:p.simplify,fill:d.fill}),Xe=new Array(Ae.length);var ze=0;for(s=0;s=l[0]&&y.x<=l[1]&&y.y>=s[0]&&y.y<=s[1]}),v=Math.ceil(c.length/u),d=0;n.forEach(function(y,m){var b=y[0].trace;Qd.hasMarkers(b)&&b.marker.maxdisplayed>0&&m{"use strict";XB.exports={container:"marker",min:"cmin",max:"cmax"}});var N6=P((xFe,ZB)=>{"use strict";var Lb=yn();ZB.exports=function(r,t,a){var n={},i={_fullLayout:a},o=Lb.getFromTrace(i,t,"x"),l=Lb.getFromTrace(i,t,"y"),s=r.orig_x;s===void 0&&(s=r.x);var f=r.orig_y;return f===void 0&&(f=r.y),n.xLabel=Lb.tickText(o,o.c2l(s),!0).text,n.yLabel=Lb.tickText(l,l.c2l(f),!0).text,n}});var z6=P((_Fe,JB)=>{"use strict";var I6=da(),Kd=Ha(),gye=Bt();function bye(e){var r=I6.select(e).selectAll("g.trace.scatter");r.style("opacity",function(t){return t[0].trace.opacity}),r.selectAll("g.points").each(function(t){var a=I6.select(this),n=t.trace||t[0].trace;O6(a,n,e)}),r.selectAll("g.text").each(function(t){var a=I6.select(this),n=t.trace||t[0].trace;B6(a,n,e)}),r.selectAll("g.trace path.js-line").call(Kd.lineGroupStyle),r.selectAll("g.trace path.js-fill").call(Kd.fillGroupStyle,e,!1),gye.getComponentMethod("errorbars","style")(r)}function O6(e,r,t){Kd.pointStyle(e.selectAll("path.point"),r,t)}function B6(e,r,t){Kd.textPointStyle(e.selectAll("text"),r,t)}function xye(e,r,t){var a=r[0].trace;a.selectedpoints?(Kd.selectedPointStyle(t.selectAll("path.point"),a),Kd.selectedTextStyle(t.selectAll("text"),a)):(O6(t,a,e),B6(t,a,e))}JB.exports={style:bye,stylePoints:O6,styleText:B6,styleOnSelect:xye}});var G6=P((wFe,$B)=>{"use strict";var ep=ha(),_ye=Ri();$B.exports=function(r,t){var a,n;if(r.mode==="lines")return a=r.line.color,a&&ep.opacity(a)?a:r.fillcolor;if(r.mode==="none")return r.fill?r.fillcolor:"";var i=t.mcc||(r.marker||{}).color,o=t.mlcc||((r.marker||{}).line||{}).color;return n=i&&ep.opacity(i)?i:o&&ep.opacity(o)&&(t.mlw||((r.marker||{}).line||{}).width)?o:"",n?ep.opacity(n)<.3?ep.addOpacity(n,.3):n:(a=(r.line||{}).color,a&&ep.opacity(a)&&_ye.hasLines(r)&&r.line.width?a:r.fillcolor)}});var ez=P((AFe,KB)=>{"use strict";var Db=Ur(),QB=Wc(),wye=Bt(),Aye=G6(),U6=ha(),Tye=Db.fillText;KB.exports=function(r,t,a,n){var i=r.cd,o=i[0].trace,l=r.xa,s=r.ya,f=l.c2p(t),u=s.c2p(a),c=[f,u],v=o.hoveron||"",d=o.mode.indexOf("markers")!==-1?3:.5,p=!!o.xperiodalignment,y=!!o.yperiodalignment;if(v.indexOf("points")!==-1){var m=function(Q){if(p){var J=l.c2p(Q.xStart),Z=l.c2p(Q.xEnd);return f>=Math.min(J,Z)&&f<=Math.max(J,Z)?0:1/0}var ae=Math.max(3,Q.mrc||0),ue=1-1/ae,Le=Math.abs(l.c2p(Q.x)-f);return Le=Math.min(J,Z)&&u<=Math.max(J,Z)?0:1/0}var ae=Math.max(3,Q.mrc||0),ue=1-1/ae,Le=Math.abs(s.c2p(Q.y)-u);return LeEe!=ee>=Ee&&(We=rr[Ae-1][0],$e=rr[Ae][0],ee-Ue&&(ze=We+($e-We)*(Ee-Ue)/(ee-Ue),ae=Math.min(ae,ze),ue=Math.max(ue,ze)));return ae=Math.max(ae,0),ue=Math.min(ue,l._length),{x0:ae,x1:ue,y0:Ee,y1:Ee}}if(v.indexOf("fills")!==-1&&o._fillElement){var j=q(o._fillElement)&&!q(o._fillExclusionElement);if(j){var le=H(o._polygons);le===null&&(le={x0:c[0],x1:c[0],y0:c[1],y1:c[1]});var te=U6.defaultLine;return U6.opacity(o.fillcolor)?te=o.fillcolor:U6.opacity((o.line||{}).color)&&(te=o.line.color),Db.extendFlat(r,{distance:r.maxHoverDistance,x0:le.x0,x1:le.x1,y0:le.y0,y1:le.y1,color:te,hovertemplate:!1}),delete r.index,o.text&&!Db.isArrayOrTypedArray(o.text)?r.text=String(o.text):r.text=o.name,[r]}}}});var az=P((TFe,tz)=>{"use strict";var rz=Ri();tz.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,o=[],l=a[0].trace,s,f,u,c,v=!rz.hasMarkers(l)&&!rz.hasText(l);if(v)return[];if(t===!1)for(s=0;s{"use strict";nz.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var fz=P((SFe,sz)=>{"use strict";var oy=Bt().traceIs,H6=iw();sz.exports=function(r,t,a,n){a("autotypenumbers",n.autotypenumbersDflt);var i=a("type",(n.splomStash||{}).type);i==="-"&&(Mye(t,n.data),t.type==="-"?t.type="linear":r.type=t.type)};function Mye(e,r){if(e.type==="-"){var t=e._id,a=t.charAt(0),n;t.indexOf("scene")!==-1&&(t=a);var i=Sye(r,t,a);if(i){if(i.type==="histogram"&&a==={v:"y",h:"x"}[i.orientation||"v"]){e.type="linear";return}var o=a+"calendar",l=i[o],s={noMultiCategory:!oy(i,"cartesian")||oy(i,"noMultiCategory")};if(i.type==="box"&&i._hasPreCompStats&&a==={h:"x",v:"y"}[i.orientation||"v"]&&(s.noMultiCategory=!0),s.autotypenumbers=e.autotypenumbers,lz(i,a)){var f=oz(i),u=[];for(n=0;n0&&(n["_"+t+"axes"]||{})[r])return n;if((n[t+"axis"]||t)===r){if(lz(n,t))return n;if((n[t]||[]).length||n[t+"0"])return n}}}function oz(e){return{v:"x",h:"y"}[e.orientation||"v"]}function lz(e,r){var t=oz(e),a=oy(e,"box-violin"),n=oy(e._fullInput||{},"candlestick");return a&&!n&&r===t&&e[t]===void 0&&e[t+"0"]===void 0}});var cz=P((EFe,uz)=>{"use strict";var Eye=Yo().isTypedArraySpec;function kye(e,r){var t=r.dataAttr||e._id.charAt(0),a={},n,i,o;if(r.axData)n=r.axData;else for(n=[],i=0;i0||Eye(i),l;o&&(l="array");var s=a("categoryorder",l),f;s==="array"&&(f=a("categoryarray")),!o&&s==="array"&&(s=t.categoryorder="trace"),s==="trace"?t._initialCategories=[]:s==="array"?t._initialCategories=f.slice():(f=kye(t,n).sort(),s==="category ascending"?t._initialCategories=f:s==="category descending"&&(t._initialCategories=f.reverse()))}}});var dz=P((kFe,hz)=>{"use strict";var vz=ks().mix,Cye=Af(),Lye=Ur();hz.exports=function(r,t,a,n){n=n||{};var i=n.dfltColor;function o(k,F){return Lye.coerce2(r,t,n.attributes,k,F)}var l=o("linecolor",i),s=o("linewidth"),f=a("showline",n.showLine||!!l||!!s);f||(delete t.linecolor,delete t.linewidth);var u=vz(i,n.bgColor,n.blend||Cye.lightFraction).toRgbString(),c=o("gridcolor",u),v=o("gridwidth"),d=o("griddash"),p=a("showgrid",n.showGrid||!!c||!!v||!!d);if(p||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),n.hasMinor){var y=vz(t.gridcolor,n.bgColor,67).toRgbString(),m=o("minor.gridcolor",y),b=o("minor.gridwidth",t.gridwidth||1),A=o("minor.griddash",t.griddash||"solid"),_=a("minor.showgrid",!!m||!!b||!!A);_||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!n.noZeroLine){var x=o("zerolinelayer"),T=o("zerolinecolor",i),E=o("zerolinewidth"),S=a("zeroline",n.showGrid||!!T||!!E);S||(delete t.zerolinelayer,delete t.zerolinecolor,delete t.zerolinewidth)}}});var Y6=P((CFe,xz)=>{"use strict";var pz=ba(),Dye=Bt(),ly=Ur(),Fye=Xa(),qye=gl(),V6=Ul(),mz=k4(),yz=L4(),Rye=q4(),Pye=R4(),Nye=cz(),Iye=dz(),Oye=Sw(),gz=G2(),Fb=qi().WEEKDAY_PATTERN,Bye=qi().HOUR_PATTERN;xz.exports=function(r,t,a,n,i){var o=n.letter,l=n.font||{},s=n.splomStash||{},f=a("visible",!n.visibleDflt),u=t._template||{},c=t.type||u.type||"-",v;if(c==="date"){var d=Dye.getComponentMethod("calendars","handleDefaults");d(r,t,"calendar",n.calendar),n.noTicklabelmode||(v=a("ticklabelmode"))}!n.noTicklabelindex&&(c==="date"||c==="linear")&&a("ticklabelindex");var p="";(!n.noTicklabelposition||c==="multicategory")&&(p=ly.coerce(r,t,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:v==="period"?["outside","inside"]:o==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),n.noTicklabeloverflow||a("ticklabeloverflow",p.indexOf("inside")!==-1?"hide past domain":c==="category"||c==="multicategory"?"allow":"hide past div"),gz(t,i),Oye(r,t,a,n),Nye(r,t,a,n),n.noHover||(c!=="category"&&a("hoverformat"),n.noUnifiedhovertitle||a("unifiedhovertitle.text"));var y=a("color"),m=y!==V6.color.dflt?y:l.color,b=s.label||i._dfltTitle[o];if(Pye(r,t,a,c,n),!f)return t;a("title.text",b),ly.coerceFont(a,"title.font",l,{overrideDflt:{size:ly.bigFont(l.size),color:m}}),mz(r,t,a,c);var A=n.hasMinor;if(A&&(Fye.newContainer(t,"minor"),mz(r,t,a,c,{isMinor:!0})),Rye(r,t,a,c,n),yz(r,t,a,n),A){var _=n.isMinor;n.isMinor=!0,yz(r,t,a,n),n.isMinor=_}Iye(r,t,a,{dfltColor:y,bgColor:n.bgColor,showGrid:n.showGrid,hasMinor:A,attributes:V6}),A&&!t.minor.ticks&&!t.minor.showgrid&&delete t.minor,(t.showline||t.ticks)&&a("mirror");var x=c==="multicategory";if(!n.noTickson&&(c==="category"||x)&&(t.ticks||t.showgrid)&&(x?(a("tickson","boundaries"),delete t.ticklabelposition):a("tickson")),x){var T=a("showdividers");T&&(a("dividercolor"),a("dividerwidth"))}if(c==="date")if(qye(r,t,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:zye}),!t.rangebreaks.length)delete t.rangebreaks;else{for(var E=0;E=2){var o="",l,s;if(i.length===2){for(l=0;l<2;l++)if(s=bz(i[l]),s){o=Fb;break}}var f=a("pattern",o);if(f===Fb)for(l=0;l<2;l++)s=bz(i[l]),s&&(r.bounds[l]=i[l]=s-1);if(f)for(l=0;l<2;l++)switch(s=i[l],f){case Fb:if(!pz(s)){r.enabled=!1;return}if(s=+s,s!==Math.floor(s)||s<0||s>=7){r.enabled=!1;return}r.bounds[l]=i[l]=s;break;case Bye:if(!pz(s)){r.enabled=!1;return}if(s=+s,s<0||s>24){r.enabled=!1;return}r.bounds[l]=i[l]=s;break}if(t.autorange===!1){var u=t.range;if(u[0]u[1]){r.enabled=!1;return}}else if(i[0]>u[0]&&i[1]{"use strict";var Uye=ba(),qb=Ur();_z.exports=function(r,t,a,n){var i=n.counterAxes||[],o=n.overlayableAxes||[],l=n.letter,s=n.grid,f=n.overlayingDomain,u,c,v,d,p,y;s&&(c=s._domains[l][s._axisMap[t._id]],u=s._anchors[t._id],c&&(v=s[l+"side"].split(" ")[0],d=s.domain[l][v==="right"||v==="top"?1:0])),c=c||[0,1],u=u||(Uye(r.position)?"free":i[0]||"free"),v=v||(l==="x"?"bottom":"left"),d=d||0,p=0,y=!1;var m=qb.coerce(r,t,{anchor:{valType:"enumerated",values:["free"].concat(i),dflt:u}},"anchor"),b=qb.coerce(r,t,{side:{valType:"enumerated",values:l==="x"?["bottom","top"]:["left","right"],dflt:v}},"side");if(m==="free"){if(l==="y"){var A=a("autoshift");A&&(d=b==="left"?f[0]:f[1],y=t.automargin?t.automargin:!0,p=b==="left"?-3:3),a("shift",p)}a("position",d)}a("automargin",y);var _=!1;if(o.length&&(_=qb.coerce(r,t,{overlaying:{valType:"enumerated",values:[!1].concat(o),dflt:!1}},"overlaying")),!_){var x=a("domain",c);x[0]>x[1]-1/4096&&(t.domain=c),qb.noneOrAll(r.domain,t.domain,c),t.tickmode==="sync"&&(t.tickmode="auto")}return a("layer"),t}});var Lz=P((DFe,Cz)=>{"use strict";var Z0=Ur(),wz=ha(),Hye=Cu().isUnifiedHover,Vye=Qw(),Az=Xa(),Yye=ad(),Tz=Ul(),Wye=fz(),Mz=Y6(),jye=Mm(),Sz=W6(),X6=kn(),Nf=X6.id2name,Ez=X6.name2id,Xye=qi().AX_ID_PATTERN,kz=Bt(),Rb=kz.traceIs,j6=kz.getComponentMethod;function Pb(e,r,t){Array.isArray(e[r])?e[r].push(t):e[r]=[t]}Cz.exports=function(r,t,a){var n=t.autotypenumbers,i={},o={},l={},s={},f={},u={},c={},v={},d={},p={},y,m;for(y=0;y{"use strict";var Zye=da(),Dz=Bt(),Nb=Ur(),Tl=Ha(),Ib=yn();Fz.exports=function(r,t,a,n){var i=r._fullLayout;if(t.length===0){Ib.redrawComponents(r);return}function o(m){var b=m.xaxis,A=m.yaxis;i._defs.select("#"+m.clipId+"> rect").call(Tl.setTranslate,0,0).call(Tl.setScale,1,1),m.plot.call(Tl.setTranslate,b._offset,A._offset).call(Tl.setScale,1,1);var _=m.plot.selectAll(".scatterlayer .trace");_.selectAll(".point").call(Tl.setPointGroupScale,1,1),_.selectAll(".textpoint").call(Tl.setTextPointsScale,1,1),_.call(Tl.hideOutsideRangePoints,m)}function l(m,b){var A=m.plotinfo,_=A.xaxis,x=A.yaxis,T=_._length,E=x._length,S=!!m.xr1,k=!!m.yr1,F=[];if(S){var I=Nb.simpleMap(m.xr0,_.r2l),O=Nb.simpleMap(m.xr1,_.r2l),q=I[1]-I[0],H=O[1]-O[0];F[0]=(I[0]*(1-b)+b*O[0]-I[0])/(I[1]-I[0])*T,F[2]=T*(1-b+b*H/q),_.range[0]=_.l2r(I[0]*(1-b)+b*O[0]),_.range[1]=_.l2r(I[1]*(1-b)+b*O[1])}else F[0]=0,F[2]=T;if(k){var j=Nb.simpleMap(m.yr0,x.r2l),le=Nb.simpleMap(m.yr1,x.r2l),te=j[1]-j[0],Q=le[1]-le[0];F[1]=(j[1]*(1-b)+b*le[1]-j[1])/(j[0]-j[1])*E,F[3]=E*(1-b+b*Q/te),x.range[0]=_.l2r(j[0]*(1-b)+b*le[0]),x.range[1]=x.l2r(j[1]*(1-b)+b*le[1])}else F[1]=0,F[3]=E;Ib.drawOne(r,_,{skipTitle:!0}),Ib.drawOne(r,x,{skipTitle:!0}),Ib.redrawComponents(r,[_._id,x._id]);var J=S?T/F[2]:1,Z=k?E/F[3]:1,ae=S?F[0]:0,ue=k?F[1]:0,Le=S?F[0]/F[2]*T:0,Be=k?F[1]/F[3]*E:0,Ee=_._offset-Le,Xe=x._offset-Be;A.clipRect.call(Tl.setTranslate,ae,ue).call(Tl.setScale,1/J,1/Z),A.plot.call(Tl.setTranslate,Ee,Xe).call(Tl.setScale,J,Z),Tl.setPointGroupScale(A.zoomScalePts,1/J,1/Z),Tl.setTextPointsScale(A.zoomScaleTxt,1/J,1/Z)}var s;n&&(s=n());function f(){for(var m={},b=0;ba.duration?(f(),d=window.cancelAnimationFrame(y)):d=window.requestAnimationFrame(y)}return c=Date.now(),d=window.requestAnimationFrame(y),Promise.resolve()}});var sy=P(ao=>{"use strict";var Bb=da(),Rz=Bt(),J0=Ur(),Jye=xi(),$ye=Ha(),Pz=rm().getModuleCalcData,tv=kn(),Hs=qi(),Qye=Oc(),La=J0.ensureSingle;function Ob(e,r,t){return J0.ensureSingle(e,r,t,function(a){a.datum(t)})}var $0=Hs.zindexSeparator;ao.name="cartesian";ao.attr=["xaxis","yaxis"];ao.idRoot=["x","y"];ao.idRegex=Hs.idRegex;ao.attrRegex=Hs.attrRegex;ao.attributes=iz();ao.layoutAttributes=Ul();ao.supplyLayoutDefaults=Lz();ao.transitionAxes=qz();ao.finalizeSubplots=function(e,r){var t=r._subplots,a=t.xaxis,n=t.yaxis,i=t.cartesian,o=i,l={},s={},f,u,c;for(f=0;f0){var d=v.id;if(d.indexOf($0)!==-1)continue;d+=$0+(f+1),v=J0.extendFlat({},v,{id:d,plot:n._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var p=[],y,m=0;m1&&(T+=$0+x),_.push(l+T),o=0;o1,c=r.mainplotinfo;if(!r.mainplot||u)if(f)r.xlines=La(a,"path","xlines-above"),r.ylines=La(a,"path","ylines-above"),r.xaxislayer=La(a,"g","xaxislayer-above"),r.yaxislayer=La(a,"g","yaxislayer-above");else{if(!o){var v=La(a,"g","layer-subplot");r.shapelayer=La(v,"g","shapelayer"),r.imagelayer=La(v,"g","imagelayer"),c&&u?(r.minorGridlayer=c.minorGridlayer,r.gridlayer=c.gridlayer,r.zerolinelayer=c.zerolinelayer):(r.minorGridlayer=La(a,"g","minor-gridlayer"),r.gridlayer=La(a,"g","gridlayer"),r.zerolinelayer=La(a,"g","zerolinelayer"));var d=La(a,"g","layer-between");r.shapelayerBetween=La(d,"g","shapelayer"),r.imagelayerBetween=La(d,"g","imagelayer"),La(a,"path","xlines-below"),La(a,"path","ylines-below"),r.overlinesBelow=La(a,"g","overlines-below"),La(a,"g","xaxislayer-below"),La(a,"g","yaxislayer-below"),r.overaxesBelow=La(a,"g","overaxes-below")}r.overplot=La(a,"g","overplot"),r.plot=La(r.overplot,"g",n),c&&u?r.zerolinelayerAbove=c.zerolinelayerAbove:r.zerolinelayerAbove=La(a,"g","zerolinelayer-above"),o||(r.xlines=La(a,"path","xlines-above"),r.ylines=La(a,"path","ylines-above"),r.overlinesAbove=La(a,"g","overlines-above"),La(a,"g","xaxislayer-above"),La(a,"g","yaxislayer-above"),r.overaxesAbove=La(a,"g","overaxes-above"),r.xlines=a.select(".xlines-"+l),r.ylines=a.select(".ylines-"+s),r.xaxislayer=a.select(".xaxislayer-"+l),r.yaxislayer=a.select(".yaxislayer-"+s))}else{var p=c.plotgroup,y=n+"-x",m=n+"-y";r.minorGridlayer=c.minorGridlayer,r.gridlayer=c.gridlayer,r.zerolinelayer=c.zerolinelayer,r.zerolinelayerAbove=c.zerolinelayerAbove,La(c.overlinesBelow,"path",y),La(c.overlinesBelow,"path",m),La(c.overaxesBelow,"g",y),La(c.overaxesBelow,"g",m),r.plot=La(c.overplot,"g",n),La(c.overlinesAbove,"path",y),La(c.overlinesAbove,"path",m),La(c.overaxesAbove,"g",y),La(c.overaxesAbove,"g",m),r.xlines=p.select(".overlines-"+l).select("."+y),r.ylines=p.select(".overlines-"+s).select("."+m),r.xaxislayer=p.select(".overaxes-"+l).select("."+y),r.yaxislayer=p.select(".overaxes-"+s).select("."+m)}o||(f||(Ob(r.minorGridlayer,"g",r.xaxis._id),Ob(r.minorGridlayer,"g",r.yaxis._id),r.minorGridlayer.selectAll("g").map(function(b){return b[0]}).sort(tv.idSort),Ob(r.gridlayer,"g",r.xaxis._id),Ob(r.gridlayer,"g",r.yaxis._id),r.gridlayer.selectAll("g").map(function(b){return b[0]}).sort(tv.idSort)),r.xlines.style("fill","none").classed("crisp",!0),r.ylines.style("fill","none").classed("crisp",!0))}function Oz(e,r){if(e){var t={};e.each(function(s){var f=s[0],u=Bb.select(this);u.remove(),Bz(f,r),t[f]=!0});for(var a in r._plots)for(var n=r._plots[a],i=n.overlays||[],o=0;o{"use strict";var zb=Ri();zz.exports={hasLines:zb.hasLines,hasMarkers:zb.hasMarkers,hasText:zb.hasText,isBubble:zb.isBubble,attributes:Qc(),layoutAttributes:m2(),supplyDefaults:aB(),crossTraceDefaults:x6(),supplyLayoutDefaults:sB(),calc:Xd().calc,crossTraceCalc:RB(),arraysToCalcdata:T6(),plot:jB(),colorbar:Cb(),formatLabels:N6(),style:z6().style,styleOnSelect:z6().styleOnSelect,hoverPoints:ez(),selectPoints:az(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:sy(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var Vz=P((PFe,Hz)=>{"use strict";var ege=da(),rge=ha(),Uz=GA(),Z6=Ur(),tge=Z6.strScale,age=Z6.strRotate,nge=Z6.strTranslate;Hz.exports=function(r,t,a){var n=r.node(),i=Uz[a.arrowhead||0],o=Uz[a.startarrowhead||0],l=(a.arrowwidth||1)*(a.arrowsize||1),s=(a.arrowwidth||1)*(a.startarrowsize||1),f=t.indexOf("start")>=0,u=t.indexOf("end")>=0,c=i.backoff*l+a.standoff,v=o.backoff*s+a.startstandoff,d,p,y,m;if(n.nodeName==="line"){d={x:+r.attr("x1"),y:+r.attr("y1")},p={x:+r.attr("x2"),y:+r.attr("y2")};var b=d.x-p.x,A=d.y-p.y;if(y=Math.atan2(A,b),m=y+Math.PI,c&&v&&c+v>Math.sqrt(b*b+A*A)){j();return}if(c){if(c*c>b*b+A*A){j();return}var _=c*Math.cos(y),x=c*Math.sin(y);p.x+=_,p.y+=x,r.attr({x2:p.x,y2:p.y})}if(v){if(v*v>b*b+A*A){j();return}var T=v*Math.cos(y),E=v*Math.sin(y);d.x-=T,d.y-=E,r.attr({x1:d.x,y1:d.y})}}else if(n.nodeName==="path"){var S=n.getTotalLength(),k="";if(S{"use strict";var Yz=da(),J6=Bt(),ige=xi(),nv=Ur(),$6=nv.strTranslate,uy=yn(),Q0=ha(),Nu=Ha(),Wz=Wc(),Q6=po(),K6=Yc(),fy=Is(),oge=Xa().arrayEditor,lge=Vz();Zz.exports={draw:sge,drawOne:jz,drawRaw:Xz};function sge(e){var r=e._fullLayout;r._infolayer.selectAll(".annotation").remove();for(var t=0;t2/3?xr="right":xr="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[xr]}for(var Ue=!1,ee=["x","y"],de=0;de1)&&(ur===je?(Ar=er.r2fraction(r["a"+ne]),(Ar<0||Ar>1)&&(Ue=!0)):Ue=!0),Vr=er._offset+er.r2p(r[ne]),lr=.5}else{var tr=kt==="domain";ne==="x"?(Re=r[ne],Vr=tr?er._offset+er._length*Re:Vr=l.l+l.w*Re):(Re=1-r[ne],Vr=tr?er._offset+er._length*Re:Vr=l.t+l.h*Re),lr=r.showarrow?.5:Re}if(r.showarrow){wr.head=Vr;var cr=r["a"+ne];if(st=Pr*$e(.5,r.xanchor)-_r*$e(.5,r.yanchor),ur===je){var Hr=uy.getRefType(ur);Hr==="domain"?(ne==="y"&&(cr=1-cr),wr.tail=er._offset+er._length*cr):Hr==="paper"?ne==="y"?(cr=1-cr,wr.tail=l.t+l.h*cr):wr.tail=l.l+l.w*cr:wr.tail=er._offset+er.r2p(cr),Wr=st}else wr.tail=Vr+cr,Wr=st+cr;wr.text=wr.tail+st;var ot=o[ne==="x"?"width":"height"];if(je==="paper"&&(wr.head=nv.constrain(wr.head,1,ot-1)),ur==="pixel"){var jr=-Math.max(wr.tail-3,wr.text),at=Math.min(wr.tail+3,wr.text)-ot;jr>0?(wr.tail+=jr,wr.text+=jr):at>0&&(wr.tail-=at,wr.text-=at)}wr.tail+=Kr,wr.head+=Kr}else st=Ir*$e(lr,Yr),Wr=st,wr.text=Vr+st;wr.text+=Kr,st+=Kr,Wr+=Kr,r["_"+ne+"padplus"]=Ir/2+Wr,r["_"+ne+"padminus"]=Ir/2-Wr,r["_"+ne+"size"]=Ir,r["_"+ne+"shift"]=st}if(Ue){S.remove();return}var xt=0,Xr=0;if(r.align!=="left"&&(xt=(Ae-Ee)*(r.align==="center"?.5:1)),r.valign!=="top"&&(Xr=(rr-Xe)*(r.valign==="middle"?.5:1)),Le)ue.select("svg").attr({x:I+xt-1,y:I+Xr}).call(Nu.setClipUrl,q?y:null,e);else{var nt=I+Xr-Be.top,gr=I+xt-Be.left;te.call(Q6.positionText,gr,nt).call(Nu.setClipUrl,q?y:null,e)}H.select("rect").call(Nu.setRect,I,I,Ae,rr),O.call(Nu.setRect,k/2,k/2,ze-k,We-k),S.call(Nu.setTranslate,Math.round(m.x.text-ze/2),Math.round(m.y.text-We/2)),_.attr({transform:"rotate("+b+","+m.x.text+","+m.y.text+")"});var Se=function(pr,xr){A.selectAll(".annotation-arrow-g").remove();var ht=m.x.head,Tt=m.y.head,wt=m.x.tail+pr,It=m.y.tail+xr,ta=m.x.text+pr,Ma=m.y.text+xr,Ba=nv.rotationXYMatrix(b,ta,Ma),an=nv.apply2DTransform(Ba),Va=nv.apply2DTransform2(Ba),xn=+O.attr("width"),Rn=+O.attr("height"),hi=ta-.5*xn,hn=hi+xn,Xn=Ma-.5*Rn,Et=Xn+Rn,Pa=[[hi,Xn,hi,Et],[hi,Et,hn,Et],[hn,Et,hn,Xn],[hn,Xn,hi,Xn]].map(Va);if(!Pa.reduce(function(nn,Zn){return nn^!!nv.segmentsIntersect(ht,Tt,ht+1e6,Tt+1e6,Zn[0],Zn[1],Zn[2],Zn[3])},!1)){Pa.forEach(function(nn){var Zn=nv.segmentsIntersect(wt,It,ht,Tt,nn[0],nn[1],nn[2],nn[3]);Zn&&(wt=Zn.x,It=Zn.y)});var ia=r.arrowwidth,Ia=r.arrowcolor,$a=r.arrowside,Qa=A.append("g").style({opacity:Q0.opacity(Ia)}).classed("annotation-arrow-g",!0),fa=Qa.append("path").attr("d","M"+wt+","+It+"L"+ht+","+Tt).style("stroke-width",ia+"px").call(Q0.stroke,Q0.rgb(Ia));if(lge(fa,$a,r),s.annotationPosition&&fa.node().parentNode&&!a){var Tn=ht,Ka=Tt;if(r.standoff){var en=Math.sqrt(Math.pow(ht-wt,2)+Math.pow(Tt-It,2));Tn+=r.standoff*(wt-ht)/en,Ka+=r.standoff*(It-Tt)/en}var lo=Qa.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(wt-Tn)+","+(It-Ka),transform:$6(Tn,Ka)}).style("stroke-width",ia+6+"px").call(Q0.stroke,"rgba(0,0,0,0)").call(Q0.fill,"rgba(0,0,0,0)"),Oi,dn;fy.init({element:lo.node(),gd:e,prepFn:function(){var nn=Nu.getTranslate(S);Oi=nn.x,dn=nn.y,n&&n.autorange&&v(n._name+".autorange",!0),i&&i.autorange&&v(i._name+".autorange",!0)},moveFn:function(nn,Zn){var fs=an(Oi,dn),us=fs[0]+nn,kl=fs[1]+Zn;S.call(Nu.setTranslate,us,kl),d("x",av(n,nn,"x",l,r)),d("y",av(i,Zn,"y",l,r)),r.axref===r.xref&&d("ax",av(n,nn,"ax",l,r)),r.ayref===r.yref&&d("ay",av(i,Zn,"ay",l,r)),Qa.attr("transform",$6(nn,Zn)),_.attr({transform:"rotate("+b+","+us+","+kl+")"})},doneFn:function(){J6.call("_guiRelayout",e,p());var nn=document.querySelector(".js-notes-box-panel");nn&&nn.redraw(nn.selectedObj)}})}}};if(r.showarrow&&Se(0,0),x){var Ne;fy.init({element:S.node(),gd:e,prepFn:function(){Ne=_.attr("transform")},moveFn:function(pr,xr){var ht="pointer";if(r.showarrow)r.axref===r.xref?d("ax",av(n,pr,"ax",l,r)):d("ax",r.ax+pr),r.ayref===r.yref?d("ay",av(i,xr,"ay",l.w,r)):d("ay",r.ay+xr),Se(pr,xr);else{if(a)return;var Tt,wt;if(n)Tt=av(n,pr,"x",l,r);else{var It=r._xsize/l.w,ta=r.x+(r._xshift-r.xshift)/l.w-It/2;Tt=fy.align(ta+pr/l.w,It,0,1,r.xanchor)}if(i)wt=av(i,xr,"y",l,r);else{var Ma=r._ysize/l.h,Ba=r.y-(r._yshift+r.yshift)/l.h-Ma/2;wt=fy.align(Ba-xr/l.h,Ma,0,1,r.yanchor)}d("x",Tt),d("y",wt),(!n||!i)&&(ht=fy.getCursor(n?.5:Tt,i?.5:wt,r.xanchor,r.yanchor))}_.attr({transform:$6(pr,xr)+Ne}),K6(S,ht)},clickFn:function(pr,xr){r.captureevents&&e.emit("plotly_clickannotation",E(xr))},doneFn:function(){K6(S),J6.call("_guiRelayout",e,p());var pr=document.querySelector(".js-notes-box-panel");pr&&pr.redraw(pr.selectedObj)}})}}s.annotationText?te.call(Q6.makeEditable,{delegate:S,gd:e}).call(Q).on("edit",function(Z){r.text=Z,this.call(Q),d("text",Z),n&&n.autorange&&v(n._name+".autorange",!0),i&&i.autorange&&v(i._name+".autorange",!0),J6.call("_guiRelayout",e,p())}):te.call(Q)}});var rG=P((IFe,eG)=>{"use strict";var Jz=Ur(),fge=Bt(),$z=Xa().arrayEditor;eG.exports={hasClickToShow:uge,onClick:cge};function uge(e,r){var t=Kz(e,r);return t.on.length>0||t.explicitOff.length>0}function cge(e,r){var t=Kz(e,r),a=t.on,n=t.off.concat(t.explicitOff),i={},o=e._fullLayout.annotations,l,s;if(a.length||n.length){for(l=0;l{"use strict";var eT=Ur(),rp=ha();tG.exports=function(r,t,a,n){n("opacity");var i=n("bgcolor"),o=n("bordercolor"),l=rp.opacity(o);n("borderpad");var s=n("borderwidth"),f=n("showarrow");n("text",f?" ":a._dfltTitle.annotation),n("textangle"),eT.coerceFont(n,"font",a.font),n("width"),n("align");var u=n("height");if(u&&n("valign"),f){var c=n("arrowside"),v,d;c.indexOf("end")!==-1&&(v=n("arrowhead"),d=n("arrowsize")),c.indexOf("start")!==-1&&(n("startarrowhead",v),n("startarrowsize",d)),n("arrowcolor",l?t.bordercolor:rp.defaultLine),n("arrowwidth",(l&&s||1)*2),n("standoff"),n("startstandoff")}var p=n("hovertext"),y=a.hoverlabel||{};if(p){var m=n("hoverlabel.bgcolor",y.bgcolor||(rp.opacity(i)?rp.rgb(i):rp.defaultLine)),b=n("hoverlabel.bordercolor",y.bordercolor||rp.contrast(m)),A=eT.extendFlat({},y.font);A.color||(A.color=b),eT.coerceFont(n,"hoverlabel.font",A)}n("captureevents",!!p)}});var nG=P((BFe,aG)=>{"use strict";var tT=Ur(),K0=yn(),vge=gl(),hge=rT(),dge=Vd();aG.exports=function(r,t){vge(r,t,{name:"annotations",handleItemDefaults:pge})};function pge(e,r,t){function a(_,x){return tT.coerce(e,r,dge,_,x)}var n=a("visible"),i=a("clicktoshow");if(n||i){hge(e,r,t,a);for(var o=r.showarrow,l=["x","y"],s=[-10,-30],f={_fullLayout:t},u=0;u<2;u++){var c=l[u],v=K0.coerceRef(e,r,f,c,"","paper");if(v!=="paper"){var d=K0.getFromId(f,v);d._annIndices.push(r._index)}if(K0.coercePosition(r,f,a,v,c,.5),o){var p="a"+c,y=K0.coerceRef(e,r,f,p,"pixel",["pixel","paper"]);y!=="pixel"&&y!==v&&(y=r[p]="pixel");var m=y==="pixel"?s[u]:.4;K0.coercePosition(r,f,a,y,p,m)}a(c+"anchor"),a(c+"shift")}if(tT.noneOrAll(e,r,["x","y"]),o&&tT.noneOrAll(e,r,["ax","ay"]),i){var b=a("xclick"),A=a("yclick");r._xclick=b===void 0?r.x:K0.cleanPosition(b,f,r.xref),r._yclick=A===void 0?r.y:K0.cleanPosition(A,f,r.yref)}}}});var lG=P((zFe,oG)=>{"use strict";var aT=Ur(),eh=yn(),mge=Gb().draw;oG.exports=function(r){var t=r._fullLayout,a=aT.filterVisible(t.annotations);if(a.length&&r._fullData.length)return aT.syncOrAsync([mge,yge],r)};function yge(e){var r=e._fullLayout;aT.filterVisible(r.annotations).forEach(function(t){var a=eh.getFromId(e,t.xref),n=eh.getFromId(e,t.yref),i=eh.getRefType(t.xref),o=eh.getRefType(t.yref);t._extremes={},i==="range"&&iG(t,a),o==="range"&&iG(t,n)})}function iG(e,r){var t=r._id,a=t.charAt(0),n=e[a],i=e["a"+a],o=e[a+"ref"],l=e["a"+a+"ref"],s=e["_"+a+"padplus"],f=e["_"+a+"padminus"],u={x:1,y:-1}[a]*e[a+"shift"],c=3*e.arrowsize*e.arrowwidth||0,v=c+u,d=c-u,p=3*e.startarrowsize*e.arrowwidth||0,y=p+u,m=p-u,b;if(l===o){var A=eh.findExtremes(r,[r.r2c(n)],{ppadplus:v,ppadminus:d}),_=eh.findExtremes(r,[r.r2c(i)],{ppadplus:Math.max(s,y),ppadminus:Math.max(f,m)});b={min:[A.min[0],_.min[0]],max:[A.max[0],_.max[0]]}}else y=i?y+i:y,m=i?m-i:m,b=eh.findExtremes(r,[r.r2c(n)],{ppadplus:Math.max(s,v,y),ppadminus:Math.max(f,d,m)});e._extremes[t]=b}});var fG=P((GFe,sG)=>{"use strict";var gge=ba(),bge=Ig();sG.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",o=a==="linear"&&t.type==="log";if(!(i||o))return;var l=r._fullLayout.annotations,s=t._id.charAt(0),f,u;function c(d){var p=f[d],y=null;i?y=bge(p,t.range):y=Math.pow(10,p),gge(y)||(y=null),n(u+d,y)}for(var v=0;v{"use strict";var nT=Gb(),uG=rG();cG.exports={moduleType:"component",name:"annotations",layoutAttributes:Vd(),supplyLayoutDefaults:nG(),includeBasePlot:Hm()("annotations"),calcAutorange:lG(),draw:nT.draw,drawOne:nT.drawOne,drawRaw:nT.drawRaw,hasClickToShow:uG.hasClickToShow,onClick:uG.onClick,convertCoords:fG()}});var Ub=P((HFe,hG)=>{"use strict";var tn=Vd(),xge=Ds().overrideAll,_ge=Xa().templatedArray;hG.exports=xge(_ge("annotation",{visible:tn.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:tn.xanchor,xshift:tn.xshift,yanchor:tn.yanchor,yshift:tn.yshift,text:tn.text,textangle:tn.textangle,font:tn.font,width:tn.width,height:tn.height,opacity:tn.opacity,align:tn.align,valign:tn.valign,bgcolor:tn.bgcolor,bordercolor:tn.bordercolor,borderpad:tn.borderpad,borderwidth:tn.borderwidth,showarrow:tn.showarrow,arrowcolor:tn.arrowcolor,arrowhead:tn.arrowhead,startarrowhead:tn.startarrowhead,arrowside:tn.arrowside,arrowsize:tn.arrowsize,startarrowsize:tn.startarrowsize,arrowwidth:tn.arrowwidth,standoff:tn.standoff,startstandoff:tn.startstandoff,hovertext:tn.hovertext,hoverlabel:tn.hoverlabel,captureevents:tn.captureevents}),"calc","from-root")});var pG=P((VFe,dG)=>{"use strict";var iT=Ur(),wge=yn(),Age=gl(),Tge=rT(),Mge=Ub();dG.exports=function(r,t,a){Age(r,t,{name:"annotations",handleItemDefaults:Sge,fullLayout:a.fullLayout})};function Sge(e,r,t,a){function n(l,s){return iT.coerce(e,r,Mge,l,s)}function i(l){var s=l+"axis",f={_fullLayout:{}};return f._fullLayout[s]=t[s],wge.coercePosition(r,f,n,l,l,.5)}var o=n("visible");o&&(Tge(e,r,a.fullLayout,n),i("x"),i("y"),i("z"),iT.noneOrAll(e,r,["x","y","z"]),r.xref="x",r.yref="y",r.zref="z",n("xanchor"),n("yanchor"),n("xshift"),n("yshift"),r.showarrow&&(r.axref="pixel",r.ayref="pixel",n("ax",-10),n("ay",-30),iT.noneOrAll(e,r,["ax","ay"])))}});var bG=P((YFe,gG)=>{"use strict";var mG=Ur(),yG=yn();gG.exports=function(r){for(var t=r.fullSceneLayout,a=t.annotations,n=0;n{"use strict";function oT(e,r){var t=[0,0,0,0],a,n;for(a=0;a<4;++a)for(n=0;n<4;++n)t[n]+=e[4*a+n]*r[a];return t}function kge(e,r){var t=oT(e.projection,oT(e.view,oT(e.model,[r[0],r[1],r[2],1])));return t}xG.exports=kge});var AG=P((jFe,wG)=>{"use strict";var Cge=Gb().drawRaw,Lge=_G(),Dge=["x","y","z"];wG.exports=function(r){for(var t=r.fullSceneLayout,a=r.dataScale,n=t.annotations,i=0;i1){l=!0;break}}l?r.fullLayout._infolayer.select(".annotation-"+r.id+'[data-index="'+i+'"]').remove():(o._pdata=Lge(r.glplot.cameraParams,[t.xaxis.r2l(o.x)*a[0],t.yaxis.r2l(o.y)*a[1],t.zaxis.r2l(o.z)*a[2]]),Cge(r.graphDiv,o,i,r.id,o._xa,o._ya))}}});var SG=P((XFe,MG)=>{"use strict";var Fge=Bt(),TG=Ur();MG.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:Ub()}}},layoutAttributes:Ub(),handleDefaults:pG(),includeBasePlot:qge,convert:bG(),draw:AG()};function qge(e,r){var t=Fge.subplotsRegistry.gl3d;if(t)for(var a=t.attrRegex,n=Object.keys(e),i=0;i{"use strict";var EG=Vd(),kG=Gi(),CG=Qc().line,Rge=kc().dash,Vs=zn().extendFlat,Pge=Xa().templatedArray,ZFe=Gm(),tp=Cs(),{shapeTexttemplateAttrs:Nge,templatefallbackAttrs:Ige}=td(),Oge=jg();LG.exports=Pge("shape",{visible:Vs({},tp.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:Vs({},tp.legend,{editType:"calc+arraydraw"}),legendgroup:Vs({},tp.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:Vs({},tp.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:kG({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:Vs({},tp.legendrank,{editType:"calc+arraydraw"}),legendwidth:Vs({},tp.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:Vs({},EG.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:Vs({},EG.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:Vs({},CG.color,{editType:"arraydraw"}),width:Vs({},CG.width,{editType:"calc+arraydraw"}),dash:Vs({},Rge,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:Nge({},{keys:Object.keys(Oge)}),texttemplatefallback:Ige({editType:"arraydraw"}),font:kG({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var qG=P(($Fe,FG)=>{"use strict";var cy=Ur(),ap=yn(),Bge=gl(),zge=lT(),DG=Jc();FG.exports=function(r,t){Bge(r,t,{name:"shapes",handleItemDefaults:Uge})};function Gge(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}function Uge(e,r,t){function a(Z,ae){return cy.coerce(e,r,zge,Z,ae)}r._isShape=!0;var n=a("visible");if(n){var i=a("showlegend");i&&(a("legend"),a("legendwidth"),a("legendgroup"),a("legendgrouptitle.text"),cy.coerceFont(a,"legendgrouptitle.font"),a("legendrank"));var o=a("path"),l=o?"path":"rect",s=a("type",l),f=s!=="path";f&&delete r.path,a("editable"),a("layer"),a("opacity"),a("fillcolor"),a("fillrule");var u=a("line.width");u&&(a("line.color"),a("line.dash"));for(var c=a("xsizemode"),v=a("ysizemode"),d=["x","y"],p=0;p<2;p++){var y=d[p],m=y+"anchor",b=y==="x"?c:v,A={_fullLayout:t},_,x,T,E=ap.coerceRef(e,r,A,y,void 0,"paper"),S=ap.getRefType(E);if(S==="range"?(_=ap.getFromId(A,E),_._shapeIndices.push(r._index),T=DG.rangeToShapePosition(_),x=DG.shapePositionToRange(_),(_.type==="category"||_.type==="multicategory")&&(a(y+"0shift"),a(y+"1shift"))):x=T=cy.identity,f){var k=.25,F=.75,I=y+"0",O=y+"1",q=e[I],H=e[O];e[I]=x(e[I],!0),e[O]=x(e[O],!0),b==="pixel"?(a(I,0),a(O,10)):(ap.coercePosition(r,A,a,E,I,k),ap.coercePosition(r,A,a,E,O,F)),r[I]=T(r[I]),r[O]=T(r[O]),e[I]=q,e[O]=H}if(b==="pixel"){var j=e[m];e[m]=x(e[m],!0),ap.coercePosition(r,A,a,E,m,.25),r[m]=T(r[m]),e[m]=j}}f&&cy.noneOrAll(e,r,["x0","x1","y0","y1"]);var le=s==="line",te,Q;if(f&&(te=a("label.texttemplate"),a("label.texttemplatefallback")),te||(Q=a("label.text")),Q||te){a("label.textangle");var J=a("label.textposition",le?"middle":"middle center");a("label.xanchor"),a("label.yanchor",Gge(le,J)),a("label.padding"),cy.coerceFont(a,"label.font",t.font)}}}});var NG=P((QFe,PG)=>{"use strict";var Hge=ha(),RG=Ur();function Vge(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}PG.exports=function(r,t,a){a("newshape.visible"),a("newshape.name"),a("newshape.showlegend"),a("newshape.legend"),a("newshape.legendwidth"),a("newshape.legendgroup"),a("newshape.legendgrouptitle.text"),RG.coerceFont(a,"newshape.legendgrouptitle.font"),a("newshape.legendrank"),a("newshape.drawdirection"),a("newshape.layer"),a("newshape.fillcolor"),a("newshape.fillrule"),a("newshape.opacity");var n=a("newshape.line.width");if(n){var i=(r||{}).plot_bgcolor||"#FFF";a("newshape.line.color",Hge.contrast(i)),a("newshape.line.dash")}var o=r.dragmode==="drawline",l=a("newshape.label.text"),s=a("newshape.label.texttemplate");if(a("newshape.label.texttemplatefallback"),l||s){a("newshape.label.textangle");var f=a("newshape.label.textposition",o?"middle":"middle center");a("newshape.label.xanchor"),a("newshape.label.yanchor",Vge(o,f)),a("newshape.label.padding"),RG.coerceFont(a,"newshape.label.font",t.font)}a("activeshape.fillcolor"),a("activeshape.opacity")}});var GG=P((KFe,zG)=>{"use strict";var sT=Ur(),np=yn(),ip=_m(),OG=Jc();zG.exports=function(r){var t=r._fullLayout,a=sT.filterVisible(t.shapes);if(!(!a.length||!r._fullData.length))for(var n=0;n0?f+o:o;return{ppad:o,ppadplus:l?c:v,ppadminus:l?v:c}}else return{ppad:o}}function IG(e,r,t){var a=e._id.charAt(0)==="x"?"x":"y",n=e.type==="category"||e.type==="multicategory",i,o,l=0,s=0,f=n?e.r2c:e.d2c,u=r[a+"sizemode"]==="scaled";if(u?(i=r[a+"0"],o=r[a+"1"],n&&(l=r[a+"0shift"],s=r[a+"1shift"])):(i=r[a+"anchor"],o=r[a+"anchor"]),i!==void 0)return[f(i)+l,f(o)+s];if(r.path){var c=1/0,v=-1/0,d=r.path.match(ip.segmentRE),p,y,m,b,A;for(e.type==="date"&&(f=OG.decodeDate(f)),p=0;pv&&(v=A)));if(v>=c)return[c,v]}}});var VG=P((eqe,HG)=>{"use strict";var UG=q3();HG.exports={moduleType:"component",name:"shapes",layoutAttributes:lT(),supplyLayoutDefaults:qG(),supplyDrawNewShapeDefaults:NG(),includeBasePlot:Hm()("shapes"),calcAutorange:GG(),draw:UG.draw,drawOne:UG.drawOne}});var fT=P((tqe,WG)=>{"use strict";var YG=qi(),jge=Xa().templatedArray,rqe=Gm();WG.exports=jge("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",YG.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",YG.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var XG=P((aqe,jG)=>{"use strict";var Xge=Ur(),uT=yn(),Zge=gl(),Jge=fT(),$ge="images";jG.exports=function(r,t){var a={name:$ge,handleItemDefaults:Qge};Zge(r,t,a)};function Qge(e,r,t){function a(v,d){return Xge.coerce(e,r,Jge,v,d)}var n=a("source"),i=a("visible",!!n);if(!i)return r;a("layer"),a("xanchor"),a("yanchor"),a("sizex"),a("sizey"),a("sizing"),a("opacity");for(var o={_fullLayout:t},l=["x","y"],s=0;s<2;s++){var f=l[s],u=uT.coerceRef(e,r,o,f,"paper",void 0);if(u!=="paper"){var c=uT.getFromId(o,u);c._imgIndices.push(r._index)}uT.coercePosition(r,o,a,u,f,0)}return r}});var QG=P((nqe,$G)=>{"use strict";var ZG=da(),Kge=Ha(),op=yn(),JG=kn(),e2e=Oc();$G.exports=function(r){var t=r._fullLayout,a=[],n={},i=[],o,l;for(l=0;l{"use strict";var KG=ba(),r2e=Ig();eU.exports=function(r,t,a,n){t=t||{};var i=a==="log"&&t.type==="linear",o=a==="linear"&&t.type==="log";if(i||o){for(var l=r._fullLayout.images,s=t._id.charAt(0),f,u,c=0;c{"use strict";tU.exports={moduleType:"component",name:"images",layoutAttributes:fT(),supplyLayoutDefaults:XG(),includeBasePlot:Hm()("images"),draw:QG(),convertCoords:rU()}});var Hb=P((lqe,nU)=>{"use strict";nU.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var cT=P((sqe,oU)=>{"use strict";var t2e=Gi(),a2e=Af(),n2e=zn().extendFlat,i2e=Ds().overrideAll,o2e=Xg(),iU=Xa().templatedArray,l2e=iU("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});oU.exports=i2e(iU("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:l2e,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:n2e(o2e({editType:"arraydraw"}),{}),font:t2e({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:a2e.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var uU=P((fqe,fU)=>{"use strict";var Vb=Ur(),lU=gl(),sU=cT(),s2e=Hb(),f2e=s2e.name,u2e=sU.buttons;fU.exports=function(r,t){var a={name:f2e,handleItemDefaults:c2e};lU(r,t,a)};function c2e(e,r,t){function a(o,l){return Vb.coerce(e,r,sU,o,l)}var n=lU(e,r,{name:"buttons",handleItemDefaults:v2e}),i=a("visible",n.length>0);i&&(a("active"),a("direction"),a("type"),a("showactive"),a("x"),a("y"),Vb.noneOrAll(e,r,["x","y"]),a("xanchor"),a("yanchor"),a("pad.t"),a("pad.r"),a("pad.b"),a("pad.l"),Vb.coerceFont(a,"font",t.font),a("bgcolor",t.paper_bgcolor),a("bordercolor"),a("borderwidth"))}function v2e(e,r){function t(n,i){return Vb.coerce(e,r,u2e,n,i)}var a=t("visible",e.method==="skip"||Array.isArray(e.args));a&&(t("method"),t("args"),t("args2"),t("label"),t("execute"))}});var hU=P((uqe,vU)=>{"use strict";vU.exports=Cn;var Ys=da(),cU=ha(),lp=Ha(),Yb=Ur();function Cn(e,r,t){this.gd=e,this.container=r,this.id=t,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}Cn.barWidth=2;Cn.barLength=20;Cn.barRadius=2;Cn.barPad=1;Cn.barColor="#808BA4";Cn.prototype.enable=function(r,t,a){var n=this.gd._fullLayout,i=n.width,o=n.height;this.position=r;var l=this.position.l,s=this.position.w,f=this.position.t,u=this.position.h,c=this.position.direction,v=c==="down",d=c==="left",p=c==="right",y=c==="up",m=s,b=u,A,_,x,T;!v&&!d&&!p&&!y&&(this.position.direction="down",v=!0);var E=v||y;E?(A=l,_=A+m,v?(x=f,T=Math.min(x+b,o),b=T-x):(T=f+b,x=Math.max(T-b,0),b=T-x)):(x=f,T=x+b,d?(_=l+m,A=Math.max(_-m,0),m=_-A):(A=l,_=Math.min(A+m,i),m=_-A)),this._box={l:A,t:x,w:m,h:b};var S=s>m,k=Cn.barLength+2*Cn.barPad,F=Cn.barWidth+2*Cn.barPad,I=l,O=f+u;O+F>o&&(O=o-F);var q=this.container.selectAll("rect.scrollbar-horizontal").data(S?[0]:[]);q.exit().on(".drag",null).remove(),q.enter().append("rect").classed("scrollbar-horizontal",!0).call(cU.fill,Cn.barColor),S?(this.hbar=q.attr({rx:Cn.barRadius,ry:Cn.barRadius,x:I,y:O,width:k,height:F}),this._hbarXMin=I+k/2,this._hbarTranslateMax=m-k):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var H=u>b,j=Cn.barWidth+2*Cn.barPad,le=Cn.barLength+2*Cn.barPad,te=l+s,Q=f;te+j>i&&(te=i-j);var J=this.container.selectAll("rect.scrollbar-vertical").data(H?[0]:[]);J.exit().on(".drag",null).remove(),J.enter().append("rect").classed("scrollbar-vertical",!0).call(cU.fill,Cn.barColor),H?(this.vbar=J.attr({rx:Cn.barRadius,ry:Cn.barRadius,x:te,y:Q,width:j,height:le}),this._vbarYMin=Q+le/2,this._vbarTranslateMax=b-le):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var Z=this.id,ae=A-.5,ue=H?_+j+.5:_+.5,Le=x-.5,Be=S?T+F+.5:T+.5,Ee=n._topdefs.selectAll("#"+Z).data(S||H?[0]:[]);if(Ee.exit().remove(),Ee.enter().append("clipPath").attr("id",Z).append("rect"),S||H?(this._clipRect=Ee.select("rect").attr({x:Math.floor(ae),y:Math.floor(Le),width:Math.ceil(ue)-Math.floor(ae),height:Math.ceil(Be)-Math.floor(Le)}),this.container.call(lp.setClipUrl,Z,this.gd),this.bg.attr({x:l,y:f,width:s,height:u})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(lp.setClipUrl,null),delete this._clipRect),S||H){var Xe=Ys.behavior.drag().on("dragstart",function(){Ys.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(Xe);var Ae=Ys.behavior.drag().on("dragstart",function(){Ys.event.sourceEvent.preventDefault(),Ys.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));S&&this.hbar.on(".drag",null).call(Ae),H&&this.vbar.on(".drag",null).call(Ae)}this.setTranslate(t,a)};Cn.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(lp.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};Cn.prototype._onBoxDrag=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r-=Ys.event.dx),this.vbar&&(t-=Ys.event.dy),this.setTranslate(r,t)};Cn.prototype._onBoxWheel=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r+=Ys.event.deltaY),this.vbar&&(t+=Ys.event.deltaY),this.setTranslate(r,t)};Cn.prototype._onBarDrag=function(){var r=this.translateX,t=this.translateY;if(this.hbar){var a=r+this._hbarXMin,n=a+this._hbarTranslateMax,i=Yb.constrain(Ys.event.x,a,n),o=(i-a)/(n-a),l=this.position.w-this._box.w;r=o*l}if(this.vbar){var s=t+this._vbarYMin,f=s+this._vbarTranslateMax,u=Yb.constrain(Ys.event.y,s,f),c=(u-s)/(f-s),v=this.position.h-this._box.h;t=c*v}this.setTranslate(r,t)};Cn.prototype.setTranslate=function(r,t){var a=this.position.w-this._box.w,n=this.position.h-this._box.h;if(r=Yb.constrain(r||0,0,a),t=Yb.constrain(t||0,0,n),this.translateX=r,this.translateY=t,this.container.call(lp.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-t),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+t-.5)}),this.hbar){var i=r/a;this.hbar.call(lp.setTranslate,r+i*this._hbarTranslateMax,t)}if(this.vbar){var o=t/n;this.vbar.call(lp.setTranslate,r,t+o*this._vbarTranslateMax)}}});var AU=P((cqe,wU)=>{"use strict";var sp=da(),vy=xi(),hy=ha(),fp=Ha(),Ml=Ur(),Wb=po(),h2e=Xa().arrayEditor,pU=ho().LINE_SPACING,Gt=Hb(),d2e=hU();wU.exports=function(r){var t=r._fullLayout,a=Ml.filterVisible(t[Gt.name]);function n(v){vy.autoMargin(r,xU(v))}var i=t._menulayer.selectAll("g."+Gt.containerClassName).data(a.length>0?[0]:[]);if(i.enter().append("g").classed(Gt.containerClassName,!0).style("cursor","pointer"),i.exit().each(function(){sp.select(this).selectAll("g."+Gt.headerGroupClassName).each(n)}).remove(),a.length!==0){var o=i.selectAll("g."+Gt.headerGroupClassName).data(a,p2e);o.enter().append("g").classed(Gt.headerGroupClassName,!0);for(var l=Ml.ensureSingle(i,"g",Gt.dropdownButtonGroupClassName,function(v){v.style("pointer-events","all")}),s=0;s{"use strict";var w2e=Hb();TU.exports={moduleType:"component",name:w2e.name,layoutAttributes:cT(),supplyLayoutDefaults:uU(),draw:AU()}});var py=P((hqe,SU)=>{"use strict";SU.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var pT=P((dqe,CU)=>{"use strict";var EU=Gi(),A2e=Xg(),T2e=zn().extendDeepAll,M2e=Ds().overrideAll,S2e=Y1(),kU=Xa().templatedArray,rh=py(),E2e=kU("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});CU.exports=M2e(kU("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:E2e,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:T2e(A2e({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:S2e.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:EU({})},font:EU({}),activebgcolor:{valType:"color",dflt:rh.gripBgActiveColor},bgcolor:{valType:"color",dflt:rh.railBgColor},bordercolor:{valType:"color",dflt:rh.railBorderColor},borderwidth:{valType:"number",min:0,dflt:rh.railBorderWidth},ticklen:{valType:"number",min:0,dflt:rh.tickLength},tickcolor:{valType:"color",dflt:rh.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:rh.minorTickLength}}),"arraydraw","from-root")});var qU=P((pqe,FU)=>{"use strict";var up=Ur(),LU=gl(),DU=pT(),k2e=py(),C2e=k2e.name,L2e=DU.steps;FU.exports=function(r,t){LU(r,t,{name:C2e,handleItemDefaults:D2e})};function D2e(e,r,t){function a(c,v){return up.coerce(e,r,DU,c,v)}for(var n=LU(e,r,{name:"steps",handleItemDefaults:F2e}),i=0,o=0;o{"use strict";var Ws=da(),jb=xi(),iv=ha(),js=Ha(),Sl=Ur(),q2e=Sl.strTranslate,my=po(),R2e=Xa().arrayEditor,ea=py(),gT=ho(),NU=gT.LINE_SPACING,mT=gT.FROM_TL,yT=gT.FROM_BR;UU.exports=function(r){var t=r._context.staticPlot,a=r._fullLayout,n=P2e(a,r),i=a._infolayer.selectAll("g."+ea.containerClassName).data(n.length>0?[0]:[]);i.enter().append("g").classed(ea.containerClassName,!0).style("cursor",t?null:"ew-resize");function o(u){u._commandObserver&&(u._commandObserver.remove(),delete u._commandObserver),jb.autoMargin(r,IU(u))}if(i.exit().each(function(){Ws.select(this).selectAll("g."+ea.groupClassName).each(o)}).remove(),n.length!==0){var l=i.selectAll("g."+ea.groupClassName).data(n,N2e);l.enter().append("g").classed(ea.groupClassName,!0),l.exit().each(o).remove();for(var s=0;s0&&(l=l.transition().duration(r.transition.duration).ease(r.transition.easing)),l.attr("transform",q2e(o-ea.gripWidth*.5,r._dims.currentValueTotalHeight))}}function bT(e,r){var t=e._dims;return t.inputAreaStart+ea.stepInset+(t.inputAreaLength-2*ea.stepInset)*Math.min(1,Math.max(0,r))}function PU(e,r){var t=e._dims;return Math.min(1,Math.max(0,(r-ea.stepInset-t.inputAreaStart)/(t.inputAreaLength-2*ea.stepInset-2*t.inputAreaStart)))}function H2e(e,r,t){var a=t._dims,n=Sl.ensureSingle(e,"rect",ea.railTouchRectClass,function(i){i.call(zU,r,e,t).style("pointer-events","all")});n.attr({width:a.inputAreaLength,height:Math.max(a.inputAreaWidth,ea.tickOffset+t.ticklen+a.labelHeight)}).call(iv.fill,t.bgcolor).attr("opacity",0),js.setTranslate(n,0,a.currentValueTotalHeight)}function V2e(e,r){var t=r._dims,a=t.inputAreaLength-ea.railInset*2,n=Sl.ensureSingle(e,"rect",ea.railRectClass);n.attr({width:a,height:ea.railWidth,rx:ea.railRadius,ry:ea.railRadius,"shape-rendering":"crispEdges"}).call(iv.stroke,r.bordercolor).call(iv.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px"),js.setTranslate(n,ea.railInset,(t.inputAreaWidth-ea.railWidth)*.5+t.currentValueTotalHeight)}});var YU=P((yqe,VU)=>{"use strict";var Y2e=py();VU.exports={moduleType:"component",name:Y2e.name,layoutAttributes:pT(),supplyLayoutDefaults:qU(),draw:HU()}});var Zb=P((gqe,jU)=>{"use strict";var WU=Af();jU.exports={bgcolor:{valType:"color",dflt:WU.background,editType:"plot"},bordercolor:{valType:"color",dflt:WU.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var xT=P((bqe,XU)=>{"use strict";XU.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var Jb=P((xqe,ZU)=>{"use strict";ZU.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var QU=P(Qb=>{"use strict";var W2e=kn(),j2e=po(),JU=Jb(),X2e=ho().LINE_SPACING,$b=JU.name;function $U(e){var r=e&&e[$b];return r&&r.visible}Qb.isVisible=$U;Qb.makeData=function(e){for(var r=W2e.list({_fullLayout:e},"x",!0),t=e.margin,a=[],n=0;n{"use strict";var Kb=Ur(),KU=Xa(),eH=kn(),Z2e=Zb(),J2e=xT();rH.exports=function(r,t,a){var n=r[a],i=t[a];if(!(n.rangeslider||t._requestRangeslider[i._id]))return;Kb.isPlainObject(n.rangeslider)||(n.rangeslider={});var o=n.rangeslider,l=KU.newContainer(i,"rangeslider");function s(T,E){return Kb.coerce(o,l,Z2e,T,E)}var f,u;function c(T,E){return Kb.coerce(f,u,J2e,T,E)}var v=s("visible");if(v){s("bgcolor",t.plot_bgcolor),s("bordercolor"),s("borderwidth"),s("thickness"),s("autorange",!i.isValidRange(o.range)),s("range");var d=t._subplots;if(d)for(var p=d.cartesian.filter(function(T){return T.slice(0,Math.max(0,T.indexOf("y")))===eH.name2id(a)}).map(function(T){return T.slice(T.indexOf("y"),T.length)}),y=Kb.simpleMap(p,eH.id2name),m=0;m{"use strict";var $2e=kn().list,Q2e=Md().getAutoRange,K2e=Jb();aH.exports=function(r){for(var t=$2e(r,"x",!0),a=0;a{"use strict";var ex=da(),e3e=Bt(),r3e=xi(),On=Ur(),rx=On.strTranslate,oH=Ha(),ov=ha(),t3e=fm(),a3e=sy(),_T=kn(),n3e=Is(),i3e=Yc(),sa=Jb();lH.exports=function(e){for(var r=e._fullLayout,t=r._rangeSliderData,a=0;a=J.max)te=O[Q+1];else if(le=J.pmax)te=O[Q+1];else if(le0?e.touches[0].clientX:0}function o3e(e,r,t,a){if(r._context.staticPlot)return;var n=e.select("rect."+sa.slideBoxClassName).node(),i=e.select("rect."+sa.grabAreaMinClassName).node(),o=e.select("rect."+sa.grabAreaMaxClassName).node();function l(){var s=ex.event,f=s.target,u=iH(s),c=u-e.node().getBoundingClientRect().left,v=a.d2p(t._rl[0]),d=a.d2p(t._rl[1]),p=n3e.coverSlip();this.addEventListener("touchmove",y),this.addEventListener("touchend",m),p.addEventListener("mousemove",y),p.addEventListener("mouseup",m);function y(b){var A=iH(b),_=+A-u,x,T,E;switch(f){case n:if(E="ew-resize",v+_>t._length||d+_<0)return;x=v+_,T=d+_;break;case i:if(E="col-resize",v+_>t._length)return;x=v+_,T=d;break;case o:if(E="col-resize",d+_<0)return;x=v,T=d+_;break;default:E="ew-resize",x=c,T=c+_;break}if(T{"use strict";var m3e=Ur(),y3e=Zb(),g3e=xT(),wT=QU();fH.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:m3e.extendFlat({},y3e,{yaxis:g3e})}}},layoutAttributes:Zb(),handleDefaults:tH(),calcAutorange:nH(),draw:sH(),isVisible:wT.isVisible,makeData:wT.makeData,autoMarginOpts:wT.autoMarginOpts}});var tx=P((Sqe,vH)=>{"use strict";var b3e=Gi(),cH=Af(),x3e=Xa().templatedArray,_3e=x3e("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});vH.exports={visible:{valType:"boolean",editType:"plot"},buttons:_3e,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:b3e({editType:"plot"}),bgcolor:{valType:"color",dflt:cH.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:cH.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var AT=P((Eqe,hH)=>{"use strict";hH.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var mH=P((kqe,pH)=>{"use strict";var ax=Ur(),w3e=ha(),A3e=Xa(),T3e=gl(),dH=tx(),TT=AT();pH.exports=function(r,t,a,n,i){var o=r.rangeselector||{},l=A3e.newContainer(t,"rangeselector");function s(d,p){return ax.coerce(o,l,dH,d,p)}var f=T3e(o,l,{name:"buttons",handleItemDefaults:M3e,calendar:i}),u=s("visible",f.length>0);if(u){var c=S3e(t,a,n);s("x",c[0]),s("y",c[1]),ax.noneOrAll(r,t,["x","y"]),s("xanchor"),s("yanchor"),ax.coerceFont(s,"font",a.font);var v=s("bgcolor");s("activecolor",w3e.contrast(v,TT.lightAmount,TT.darkAmount)),s("bordercolor"),s("borderwidth")}};function M3e(e,r,t,a){var n=a.calendar;function i(s,f){return ax.coerce(e,r,dH.buttons,s,f)}var o=i("visible");if(o){var l=i("step");l!=="all"&&(n&&n!=="gregorian"&&(l==="month"||l==="year")?r.stepmode="backward":i("stepmode"),i("count")),i("label")}}function S3e(e,r,t){for(var a=t.filter(function(l){return r[l].anchor===e._id}),n=0,i=0;i{"use strict";var E3e=_5(),k3e=Ur().titleCase;yH.exports=function(r,t){var a=r._name,n={};if(t.step==="all")n[a+".autorange"]=!0;else{var i=C3e(r,t);n[a+".range[0]"]=i[0],n[a+".range[1]"]=i[1]}return n};function C3e(e,r){var t=e.range,a=new Date(e.r2l(t[1])),n=r.step,i=E3e["utc"+k3e(n)],o=r.count,l;switch(r.stepmode){case"backward":l=e.l2r(+i.offset(a,-o));break;case"todate":var s=i.offset(a,-o);l=e.l2r(+i.ceil(s));break}var f=t[1];return[l,f]}});var SH=P((Lqe,MH)=>{"use strict";var ix=da(),L3e=Bt(),D3e=xi(),bH=ha(),TH=Ha(),Iu=Ur(),xH=Iu.strTranslate,nx=po(),F3e=kn(),ET=ho(),_H=ET.LINE_SPACING,wH=ET.FROM_TL,AH=ET.FROM_BR,ST=AT(),q3e=gH();MH.exports=function(r){var t=r._fullLayout,a=t._infolayer.selectAll(".rangeselector").data(R3e(r),P3e);a.enter().append("g").classed("rangeselector",!0),a.exit().remove(),a.style({cursor:"pointer","pointer-events":"all"}),a.each(function(n){var i=ix.select(this),o=n,l=o.rangeselector,s=i.selectAll("g.button").data(Iu.filterVisible(l.buttons));s.enter().append("g").classed("button",!0),s.exit().remove(),s.each(function(f){var u=ix.select(this),c=q3e(o,f);f._isActive=N3e(o,f,c),u.call(MT,l,f),u.call(O3e,l,f,r),u.on("click",function(){r._dragged||L3e.call("_guiRelayout",r,c)}),u.on("mouseover",function(){f._isHovered=!0,u.call(MT,l,f)}),u.on("mouseout",function(){f._isHovered=!1,u.call(MT,l,f)})}),z3e(r,s,l,o._name,i)})};function R3e(e){for(var r=F3e.list(e,"x",!0),t=[],a=0;a{"use strict";EH.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:tx()}}},layoutAttributes:tx(),handleDefaults:mH(),draw:SH()}});var ox=P(kT=>{"use strict";var CH=zn().extendFlat;kT.attributes=function(e,r){e=e||{},r=r||{};var t={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},a=e.name?e.name+" ":"",n=e.trace?"trace ":"subplot ",i=r.description?" "+r.description:"",o={x:CH({},t,{}),y:CH({},t,{}),editType:e.editType};return e.noGridCell||(o.row={valType:"integer",min:0,dflt:0,editType:e.editType},o.column={valType:"integer",min:0,dflt:0,editType:e.editType}),o};kT.defaults=function(e,r,t,a){var n=a&&a.x||[0,1],i=a&&a.y||[0,1],o=r.grid;if(o){var l=t("domain.column");l!==void 0&&(l{"use strict";var G3e=Ur(),U3e=Qh().counter,H3e=ox().attributes,LH=qi().idRegex,V3e=Xa(),CT={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[U3e("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[LH.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[LH.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:H3e({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function lx(e,r,t){var a=r[t+"axes"],n=Object.keys((e._splomAxes||{})[t]||{});if(Array.isArray(a))return a;if(n.length)return n}function Y3e(e,r){var t=e.grid||{},a=lx(r,t,"x"),n=lx(r,t,"y");if(!e.grid&&!a&&!n)return;var i=Array.isArray(t.subplots)&&Array.isArray(t.subplots[0]),o=Array.isArray(a),l=Array.isArray(n),s=o&&a!==t.xaxes&&l&&n!==t.yaxes,f,u;i?(f=t.subplots.length,u=t.subplots[0].length):(l&&(f=n.length),o&&(u=a.length));var c=V3e.newContainer(r,"grid");function v(E,S){return G3e.coerce(t,c,CT,E,S)}var d=v("rows",f),p=v("columns",u);if(!(d*p>1)){delete r.grid;return}if(!i&&!o&&!l){var y=v("pattern")==="independent";y&&(i=!0)}c._hasSubplotGrid=i;var m=v("roworder"),b=m==="top to bottom",A=i?.2:.1,_=i?.3:.1,x,T;s&&r._splomGridDflt&&(x=r._splomGridDflt.xside,T=r._splomGridDflt.yside),c._domains={x:DH("x",v,A,x,p),y:DH("y",v,_,T,d,b)}}function DH(e,r,t,a,n,i){var o=r(e+"gap",t),l=r("domain."+e);r(e+"side",a);for(var s=new Array(n),f=l[0],u=(l[1]-f)/(n-o),c=u*(1-o),v=0;v{"use strict";RH.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var IH=P((Pqe,NH)=>{"use strict";var PH=ba(),j3e=Bt(),X3e=Ur(),Z3e=Xa(),J3e=DT();NH.exports=function(e,r,t,a){var n="error_"+a.axis,i=Z3e.newContainer(r,n),o=e[n]||{};function l(p,y){return X3e.coerce(o,i,J3e,p,y)}var s=o.array!==void 0||o.value!==void 0||o.type==="sqrt",f=l("visible",s);if(f!==!1){var u=l("type","array"in o?"data":"percent"),c=!0;u!=="sqrt"&&(c=l("symmetric",!((u==="data"?"arrayminus":"valueminus")in o))),u==="data"?(l("array"),l("traceref"),c||(l("arrayminus"),l("tracerefminus"))):(u==="percent"||u==="constant")&&(l("value"),c||l("valueminus"));var v="copy_"+a.inherit+"style";if(a.inherit){var d=r["error_"+a.inherit];(d||{}).visible&&l(v,!(o.color||PH(o.thickness)||PH(o.width)))}(!a.inherit||!i[v])&&(l("color",t),l("thickness"),l("width",j3e.traceIs(r,"gl3d")?0:4))}}});var FT=P((Nqe,BH)=>{"use strict";BH.exports=function(r){var t=r.type,a=r.symmetric;if(t==="data"){var n=r.array||[];if(a)return function(f,u){var c=+n[u];return[c,c]};var i=r.arrayminus||[];return function(f,u){var c=+n[u],v=+i[u];return!isNaN(c)||!isNaN(v)?[v||0,c||0]:[NaN,NaN]}}else{var o=OH(t,r.value),l=OH(t,r.valueminus);return a||r.valueminus===void 0?function(f){var u=o(f);return[u,u]}:function(f){return[l(f),o(f)]}}};function OH(e,r){if(e==="percent")return function(t){return Math.abs(t*r/100)};if(e==="constant")return function(){return Math.abs(r)};if(e==="sqrt")return function(t){return Math.sqrt(Math.abs(t))}}});var UH=P((Iqe,GH)=>{"use strict";var qT=ba(),$3e=Bt(),RT=yn(),Q3e=Ur(),K3e=FT();GH.exports=function(r){for(var t=r.calcdata,a=0;a{"use strict";var HH=da(),lv=ba(),ebe=Ha(),rbe=Ri();VH.exports=function(r,t,a,n){var i,o=a.xaxis,l=a.yaxis,s=n&&n.duration>0,f=r._context.staticPlot;t.each(function(u){var c=u[0].trace,v=c.error_x||{},d=c.error_y||{},p;c.ids&&(p=function(A){return A.id});var y=rbe.hasMarkers(c)&&c.marker.maxdisplayed>0;!d.visible&&!v.visible&&(u=[]);var m=HH.select(this).selectAll("g.errorbar").data(u,p);if(m.exit().remove(),!!u.length){v.visible||m.selectAll("path.xerror").remove(),d.visible||m.selectAll("path.yerror").remove(),m.style("opacity",1);var b=m.enter().append("g").classed("errorbar",!0);s&&b.style("opacity",0).transition().duration(n.duration).style("opacity",1),ebe.setClipUrl(m,a.layerClipId,r),m.each(function(A){var _=HH.select(this),x=tbe(A,o,l);if(!(y&&!A.vis)){var T,E=_.select("path.yerror");if(d.visible&&lv(x.x)&&lv(x.yh)&&lv(x.ys)){var S=d.width;T="M"+(x.x-S)+","+x.yh+"h"+2*S+"m-"+S+",0V"+x.ys,x.noYS||(T+="m-"+S+",0h"+2*S),i=!E.size(),i?E=_.append("path").style("vector-effect",f?"none":"non-scaling-stroke").classed("yerror",!0):s&&(E=E.transition().duration(n.duration).ease(n.easing)),E.attr("d",T)}else E.remove();var k=_.select("path.xerror");if(v.visible&&lv(x.y)&&lv(x.xh)&&lv(x.xs)){var F=(v.copy_ystyle?d:v).width;T="M"+x.xh+","+(x.y-F)+"v"+2*F+"m0,-"+F+"H"+x.xs,x.noXS||(T+="m0,-"+F+"v"+2*F),i=!k.size(),i?k=_.append("path").style("vector-effect",f?"none":"non-scaling-stroke").classed("xerror",!0):s&&(k=k.transition().duration(n.duration).ease(n.easing)),k.attr("d",T)}else k.remove()}})}})};function tbe(e,r,t){var a={x:r.c2p(e.x),y:t.c2p(e.y)};return e.yh!==void 0&&(a.yh=t.c2p(e.yh),a.ys=t.c2p(e.ys),lv(a.ys)||(a.noYS=!0,a.ys=t.c2p(e.ys,!0))),e.xh!==void 0&&(a.xh=r.c2p(e.xh),a.xs=r.c2p(e.xs),lv(a.xs)||(a.noXS=!0,a.xs=r.c2p(e.xs,!0))),a}});var XH=P((Bqe,jH)=>{"use strict";var abe=da(),WH=ha();jH.exports=function(r){r.each(function(t){var a=t[0].trace,n=a.error_y||{},i=a.error_x||{},o=abe.select(this);o.selectAll("path.yerror").style("stroke-width",n.thickness+"px").call(WH.stroke,n.color),i.copy_ystyle&&(i=n),o.selectAll("path.xerror").style("stroke-width",i.thickness+"px").call(WH.stroke,i.color)})}});var $H=P((zqe,JH)=>{"use strict";var yy=Ur(),ZH=Ds().overrideAll,gy=DT(),th={error_x:yy.extendFlat({},gy),error_y:yy.extendFlat({},gy)};delete th.error_x.copy_zstyle;delete th.error_y.copy_zstyle;delete th.error_y.copy_ystyle;var by={error_x:yy.extendFlat({},gy),error_y:yy.extendFlat({},gy),error_z:yy.extendFlat({},gy)};delete by.error_x.copy_ystyle;delete by.error_y.copy_ystyle;delete by.error_z.copy_ystyle;delete by.error_z.copy_zstyle;JH.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:th,bar:th,histogram:th,scatter3d:ZH(by,"calc","nested"),scattergl:ZH(th,"calc","nested")}},supplyDefaults:IH(),calc:UH(),makeComputeError:FT(),plot:YH(),style:XH(),hoverInfo:nbe};function nbe(e,r,t){(r.error_y||{}).visible&&(t.yerr=e.yh-e.y,r.error_y.symmetric||(t.yerrneg=e.y-e.ys)),(r.error_x||{}).visible&&(t.xerr=e.xh-e.x,r.error_x.symmetric||(t.xerrneg=e.x-e.xs))}});var KH=P((Gqe,QH)=>{"use strict";QH.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var oV=P((Uqe,iV)=>{"use strict";var sv=da(),PT=ks(),fx=xi(),eV=Bt(),Ou=yn(),sx=Is(),ts=Ur(),Zs=ts.strTranslate,nV=zn().extendFlat,NT=Yc(),Xs=Ha(),IT=ha(),ibe=fm(),obe=po(),lbe=Ps().flipScale,sbe=Y6(),fbe=W6(),ube=Ul(),OT=ho(),rV=OT.LINE_SPACING,tV=OT.FROM_TL,aV=OT.FROM_BR,wn=KH().cn;function cbe(e){var r=e._fullLayout,t=r._infolayer.selectAll("g."+wn.colorbar).data(vbe(e),function(a){return a._id});t.enter().append("g").attr("class",function(a){return a._id}).classed(wn.colorbar,!0),t.each(function(a){var n=sv.select(this);ts.ensureSingle(n,"rect",wn.cbbg),ts.ensureSingle(n,"g",wn.cbfills),ts.ensureSingle(n,"g",wn.cblines),ts.ensureSingle(n,"g",wn.cbaxis,function(o){o.classed(wn.crisp,!0)}),ts.ensureSingle(n,"g",wn.cbtitleunshift,function(o){o.append("g").classed(wn.cbtitle,!0)}),ts.ensureSingle(n,"rect",wn.cboutline);var i=hbe(n,a,e);i&&i.then&&(e._promises||[]).push(i),e._context.edits.colorbarPosition&&dbe(n,a,e)}),t.exit().each(function(a){fx.autoMargin(e,a._id)}).remove(),t.order()}function vbe(e){var r=e._fullLayout,t=e.calcdata,a=[],n,i,o,l;function s(_){return nV(_,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function f(){typeof l.calc=="function"?l.calc(e,o,n):(n._fillgradient=i.reversescale?lbe(i.colorscale):i.colorscale,n._zrange=[i[l.min],i[l.max]])}for(var u=0;u1){var de=Math.pow(10,Math.floor(Math.log(ee)/Math.LN10));$e*=de*ts.roundUp(ee/de,[2,5,10]),(Math.abs(q.start)/q.size+1e-6)%1<2e-6&&(ze.tick0=0)}ze.dtick=$e}ze.domain=a?[Ae+p/x.h,Ae+Z-p/x.h]:[Ae+d/x.w,Ae+Z-d/x.w],ze.setScale(),e.attr("transform",Zs(Math.round(x.l),Math.round(x.t)));var ne=e.select("."+wn.cbtitleunshift).attr("transform",Zs(-Math.round(x.l),-Math.round(x.t))),je=ze.ticklabelposition,ur=ze.title.font.size,er=e.select("."+wn.cbaxis),Lr,Pr=0,_r=0;function Ir(Wr,Re){var lr={propContainer:ze,propName:r._propPrefix+"title.text",traceIndex:r._traceIndex,_meta:r._meta,placeholder:_._dfltTitle.colorbar,containerGroup:e.select("."+wn.cbtitle)},st=Wr.charAt(0)==="h"?Wr.slice(1):"h"+Wr;e.selectAll("."+st+",."+st+"-math-group").remove(),ibe.draw(t,Wr,nV(lr,Re||{}))}function Yr(){if(a&&We||!a&&!We){var Wr,Re;k==="top"&&(Wr=d+x.l+ae*y,Re=p+x.t+ue*(1-Ae-Z)+3+ur*.75),k==="bottom"&&(Wr=d+x.l+ae*y,Re=p+x.t+ue*(1-Ae)-3-ur*.25),k==="right"&&(Re=p+x.t+ue*m+3+ur*.75,Wr=d+x.l+ae*Ae),Ir(ze._id+"title",{attributes:{x:Wr,y:Re,"text-anchor":a?"start":"middle"}})}}function Kr(){if(a&&!We||!a&&We){var Wr=ze.position||0,Re=ze._offset+ze._length/2,lr,st;if(k==="right")st=Re,lr=x.l+ae*Wr+10+ur*(ze.showticklabels?1:.5);else if(lr=Re,k==="bottom"&&(st=x.t+ue*Wr+10+(je.indexOf("inside")===-1?ze.tickfont.size:0)+(ze.ticks!=="inside"&&r.ticklen||0)),k==="top"){var kt=S.text.split("
").length;st=x.t+ue*Wr+10-te-rV*ur*kt}Ir((a?"h":"v")+ze._id+"title",{avoid:{selection:sv.select(t).selectAll("g."+ze._id+"tick"),side:k,offsetTop:a?0:x.t,offsetLeft:a?x.l:0,maxShift:a?_.width:_.height},attributes:{x:lr,y:st,"text-anchor":"middle"},transform:{rotate:a?-90:0,offset:0}})}}function wr(){if(!a&&!We||a&&We){var Wr=e.select("."+wn.cbtitle),Re=Wr.select("text"),lr=[-s/2,s/2],st=Wr.select(".h"+ze._id+"title-math-group").node(),kt=15.6;Re.node()&&(kt=parseInt(Re.node().style.fontSize,10)*rV);var Ar;if(st?(Ar=Xs.bBox(st),_r=Ar.width,Pr=Ar.height,Pr>kt&&(lr[1]-=(Pr-kt)/2)):Re.node()&&!Re.classed(wn.jsPlaceholder)&&(Ar=Xs.bBox(Re.node()),_r=Ar.width,Pr=Ar.height),a){if(Pr){if(Pr+=5,k==="top")ze.domain[1]-=Pr/x.h,lr[1]*=-1;else{ze.domain[0]+=Pr/x.h;var tr=obe.lineCount(Re);lr[1]+=(1-tr)*kt}Wr.attr("transform",Zs(lr[0],lr[1])),ze.setScale()}}else _r&&(k==="right"&&(ze.domain[0]+=(_r+ur/2)/x.w),Wr.attr("transform",Zs(lr[0],lr[1])),ze.setScale())}e.selectAll("."+wn.cbfills+",."+wn.cblines).attr("transform",a?Zs(0,Math.round(x.h*(1-ze.domain[1]))):Zs(Math.round(x.w*ze.domain[0]),0)),er.attr("transform",a?Zs(0,Math.round(-x.t)):Zs(Math.round(-x.l),0));var cr=e.select("."+wn.cbfills).selectAll("rect."+wn.cbfill).attr("style","").data(j);cr.enter().append("rect").classed(wn.cbfill,!0).attr("style",""),cr.exit().remove();var Hr=F.map(ze.c2p).map(Math.round).sort(function(Xr,nt){return Xr-nt});cr.each(function(Xr,nt){var gr=[nt===0?F[0]:(j[nt]+j[nt-1])/2,nt===j.length-1?F[1]:(j[nt]+j[nt+1])/2].map(ze.c2p).map(Math.round);a&&(gr[1]=ts.constrain(gr[1]+(gr[1]>gr[0])?1:-1,Hr[0],Hr[1]));var Se=sv.select(this).attr(a?"x":"y",Le).attr(a?"y":"x",sv.min(gr)).attr(a?"width":"height",Math.max(te,2)).attr(a?"height":"width",Math.max(sv.max(gr)-sv.min(gr),2));if(r._fillgradient)Xs.gradient(Se,t,r._id,a?"vertical":"horizontalreversed",r._fillgradient,"fill");else{var Ne=O(Xr).replace("e-","");Se.attr("fill",PT(Ne).toHexString())}});var ot=e.select("."+wn.cblines).selectAll("path."+wn.cbline).data(E.color&&E.width?le:[]);ot.enter().append("path").classed(wn.cbline,!0),ot.exit().remove(),ot.each(function(Xr){var nt=Le,gr=Math.round(ze.c2p(Xr))+E.width/2%1;sv.select(this).attr("d","M"+(a?nt+","+gr:gr+","+nt)+(a?"h":"v")+te).call(Xs.lineGroupStyle,E.width,I(Xr),E.dash)}),er.selectAll("g."+ze._id+"tick,path").remove();var jr=Le+te+(s||0)/2-(r.ticks==="outside"?1:0),at=Ou.calcTicks(ze),xt=Ou.getTickSigns(ze)[2];return Ou.drawTicks(t,ze,{vals:ze.ticks==="inside"?Ou.clipEnds(ze,at):at,layer:er,path:Ou.makeTickPath(ze,jr,xt),transFn:Ou.makeTransTickFn(ze)}),Ou.drawLabels(t,ze,{vals:at,layer:er,transFn:Ou.makeTransTickLabelFn(ze),labelFns:Ou.makeLabelFns(ze,jr)})}function Vr(){var Wr,Re=te+s/2;je.indexOf("inside")===-1&&(Wr=Xs.bBox(er.node()),Re+=a?Wr.width:Wr.height),Lr=ne.select("text");var lr=0,st=a&&k==="top",kt=!a&&k==="right",Ar=0;if(Lr.node()&&!Lr.classed(wn.jsPlaceholder)){var tr,cr=ne.select(".h"+ze._id+"title-math-group").node();cr&&(a&&We||!a&&!We)?(Wr=Xs.bBox(cr),lr=Wr.width,tr=Wr.height):(Wr=Xs.bBox(ne.node()),lr=Wr.right-x.l-(a?Le:rr),tr=Wr.bottom-x.t-(a?rr:Le),!a&&k==="top"&&(Re+=Wr.height,Ar=Wr.height)),kt&&(Lr.attr("transform",Zs(lr/2+ur/2,0)),lr*=2),Re=Math.max(Re,a?lr:tr)}var Hr=(a?d:p)*2+Re+f+s/2,ot=0;!a&&S.text&&v==="bottom"&&m<=0&&(ot=Hr/2,Hr+=ot,Ar+=ot),_._hColorbarMoveTitle=ot,_._hColorbarMoveCBTitle=Ar;var jr=f+s,at=(a?Le:rr)-jr/2-(a?d:0),xt=(a?rr:Le)-(a?J:p+Ar-ot);e.select("."+wn.cbbg).attr("x",at).attr("y",xt).attr(a?"width":"height",Math.max(Hr-ot,2)).attr(a?"height":"width",Math.max(J+jr,2)).call(IT.fill,u).call(IT.stroke,r.bordercolor).style("stroke-width",f);var Xr=kt?Math.max(lr-10,0):0;e.selectAll("."+wn.cboutline).attr("x",(a?Le:rr+d)+Xr).attr("y",(a?rr+p-J:Le)+(st?Pr:0)).attr(a?"width":"height",Math.max(te,2)).attr(a?"height":"width",Math.max(J-(a?2*p+Pr:2*d+Xr),2)).call(IT.stroke,r.outlinecolor).style({fill:"none","stroke-width":s});var nt=a?Be*Hr:0,gr=a?0:(1-Ee)*Hr-Ar;if(nt=A?x.l-nt:-nt,gr=b?x.t-gr:-gr,e.attr("transform",Zs(nt,gr)),!a&&(f||PT(u).getAlpha()&&!PT.equals(_.paper_bgcolor,u))){var Se=er.selectAll("text"),Ne=Se[0].length,pr=e.select("."+wn.cbbg).node(),xr=Xs.bBox(pr),ht=Xs.getTranslate(e),Tt=2;Se.each(function(hi,hn){var Xn=0,Et=Ne-1;if(hn===Xn||hn===Et){var Pa=Xs.bBox(this),ia=Xs.getTranslate(this),Ia;if(hn===Et){var $a=Pa.right+ia.x,Qa=xr.right+ht.x+rr-f-Tt+y;Ia=Qa-$a,Ia>0&&(Ia=0)}else if(hn===Xn){var fa=Pa.left+ia.x,Tn=xr.left+ht.x+rr+f+Tt;Ia=Tn-fa,Ia<0&&(Ia=0)}Ia&&(Ne<3?this.setAttribute("transform","translate("+Ia+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var wt={},It=tV[c],ta=aV[c],Ma=tV[v],Ba=aV[v],an=Hr-te;a?(i==="pixels"?(wt.y=m,wt.t=J*Ma,wt.b=J*Ba):(wt.t=wt.b=0,wt.yt=m+n*Ma,wt.yb=m-n*Ba),l==="pixels"?(wt.x=y,wt.l=Hr*It,wt.r=Hr*ta):(wt.l=an*It,wt.r=an*ta,wt.xl=y-o*It,wt.xr=y+o*ta)):(i==="pixels"?(wt.x=y,wt.l=J*It,wt.r=J*ta):(wt.l=wt.r=0,wt.xl=y+n*It,wt.xr=y-n*ta),l==="pixels"?(wt.y=1-m,wt.t=Hr*Ma,wt.b=Hr*Ba):(wt.t=an*Ma,wt.b=an*Ba,wt.yt=m-o*Ma,wt.yb=m+o*Ba));var Va=r.y<.5?"b":"t",xn=r.x<.5?"l":"r";t._fullLayout._reservedMargin[r._id]={};var Rn={r:_.width-at-nt,l:at+wt.r,b:_.height-xt-gr,t:xt+wt.b};A&&b?fx.autoMargin(t,r._id,wt):A?t._fullLayout._reservedMargin[r._id][Va]=Rn[Va]:b||a?t._fullLayout._reservedMargin[r._id][xn]=Rn[xn]:t._fullLayout._reservedMargin[r._id][Va]=Rn[Va]}return ts.syncOrAsync([fx.previousPromises,Yr,wr,Kr,fx.previousPromises,Vr],t)}function dbe(e,r,t){var a=r.orientation==="v",n=t._fullLayout,i=n._size,o,l,s;sx.init({element:e.node(),gd:t,prepFn:function(){o=e.attr("transform"),NT(e)},moveFn:function(f,u){e.attr("transform",o+Zs(f,u)),l=sx.align((a?r._uFrac:r._vFrac)+f/i.w,a?r._thickFrac:r._lenFrac,0,1,r.xanchor),s=sx.align((a?r._vFrac:1-r._uFrac)-u/i.h,a?r._lenFrac:r._thickFrac,0,1,r.yanchor);var c=sx.getCursor(l,s,r.xanchor,r.yanchor);NT(e,c)},doneFn:function(){if(NT(e),l!==void 0&&s!==void 0){var f={};f[r._propPrefix+"x"]=l,f[r._propPrefix+"y"]=s,r._traceIndex!==void 0?eV.call("_guiRestyle",t,f,r._traceIndex):eV.call("_guiRelayout",t,f)}}})}function pbe(e,r,t){var a=r._levels,n=[],i=[],o,l,s=a.end+a.size/100,f=a.size,u=1.001*t[0]-.001*t[1],c=1.001*t[1]-.001*t[0];for(l=0;l<1e5&&(o=a.start+l*f,!(f>0?o>=s:o<=s));l++)o>u&&o0?o>=s:o<=s));l++)o>t[0]&&o{"use strict";lV.exports={moduleType:"component",name:"colorbar",attributes:T2(),supplyDefaults:P4(),draw:oV().draw,hasColorbar:T4()}});var uV=P((Vqe,fV)=>{"use strict";fV.exports={moduleType:"component",name:"legend",layoutAttributes:Fw(),supplyLayoutDefaults:Rw(),draw:jw(),style:Hw()}});var vV=P((Yqe,cV)=>{"use strict";cV.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var dV=P((Wqe,hV)=>{"use strict";hV.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var zT=P((jqe,gV)=>{"use strict";var ybe=Bt(),yV=Ur(),BT=yV.extendFlat,pV=yV.extendDeep;function mV(e){var r;switch(e){case"themes__thumb":r={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":r={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:r={}}return r}function gbe(e){var r=["xaxis","yaxis","zaxis"];return r.indexOf(e.slice(0,5))>-1}gV.exports=function(r,t){var a,n=r.data,i=r.layout,o=pV([],n),l=pV({},i,mV(t.tileClass)),s=r._context||{};if(t.width&&(l.width=t.width),t.height&&(l.height=t.height),t.tileClass==="thumbnail"||t.tileClass==="themes__thumb"){l.annotations=[];var f=Object.keys(l);for(a=0;a{"use strict";var bbe=c2().EventEmitter,xbe=Bt(),_be=Ur(),bV=W0(),wbe=zT(),Abe=mb(),Tbe=yb();function Mbe(e,r){var t=new bbe,a=wbe(e,{format:"png"}),n=a.gd;n.style.position="absolute",n.style.left="-5000px",document.body.appendChild(n);function i(){var l=bV.getDelay(n._fullLayout);setTimeout(function(){var s=Abe(n),f=document.createElement("canvas");f.id=_be.randstr(),t=Tbe({format:r.format,width:n._fullLayout.width,height:n._fullLayout.height,canvas:f,emitter:t,svg:s}),t.clean=function(){n&&document.body.removeChild(n)}},l)}var o=bV.getRedrawFunc(n);return xbe.call("_doPlot",n,a.data,a.layout,a.config).then(o).then(i).catch(function(l){t.emit("error",l)}),t}xV.exports=Mbe});var TV=P((Zqe,AV)=>{"use strict";var wV=W0(),Sbe={getDelay:wV.getDelay,getRedrawFunc:wV.getRedrawFunc,clone:zT(),toSVG:mb(),svgToImg:yb(),toImage:_V(),downloadImage:v6()};AV.exports=Sbe});var SV=P(Bu=>{"use strict";Bu.version=Eg().version;AM();vC();var Ebe=Bt(),xy=Bu.register=Ebe.register,UT=NO(),MV=Object.keys(UT);for(ux=0;ux{"use strict";EV.exports=SV()});var HT=P((Qqe,LV)=>{"use strict";var kbe=Bt(),El=Ur(),Cbe=G6();function Lbe(e,r,t,a){var n=e.cd,i=n[0].t,o=n[0].trace,l=e.xa,s=e.ya,f=i.x,u=i.y,c=l.c2p(r),v=s.c2p(t),d=e.distance,p;if(i.tree){var y=l.p2c(c-d),m=l.p2c(c+d),b=s.p2c(v-d),A=s.p2c(v+d);a==="x"?p=i.tree.range(Math.min(y,m),Math.min(s._rl[0],s._rl[1]),Math.max(y,m),Math.max(s._rl[0],s._rl[1])):p=i.tree.range(Math.min(y,m),Math.min(b,A),Math.max(y,m),Math.max(b,A))}else p=i.ids;var _,x,T,E,S,k,F,I,O,q=d;if(a==="x"){var H=!!o.xperiodalignment,j=!!o.yperiodalignment;for(S=0;S=Math.min(le,te)&&c<=Math.max(le,te)?0:1/0}if(k=Math.min(Q,J)&&v<=Math.max(Q,J)?0:1/0}O=Math.sqrt(k*k+F*F),x=p[S]}}}else for(S=p.length-1;S>-1;S--)_=p[S],T=f[_],E=u[_],k=l.c2p(T)-c,F=s.c2p(E)-v,I=Math.sqrt(k*k+F*F),I{"use strict";var DV=20;FV.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:DV,SYMBOL_STROKE:DV/20,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}});var vx=P((eRe,NV)=>{"use strict";var Dbe=Cs(),Fbe=Gi(),qbe=UA(),An=Qc(),qV=im().axisHoverFormat,RV=k0(),Rbe=r2(),VT=zn().extendFlat,Pbe=Ds().overrideAll,Nbe=vp().DASHES,PV=An.line,zu=An.marker,Ibe=zu.line,fv=NV.exports=Pbe({x:An.x,x0:An.x0,dx:An.dx,y:An.y,y0:An.y0,dy:An.dy,xperiod:An.xperiod,yperiod:An.yperiod,xperiod0:An.xperiod0,yperiod0:An.yperiod0,xperiodalignment:An.xperiodalignment,yperiodalignment:An.yperiodalignment,xhoverformat:qV("x"),yhoverformat:qV("y"),text:An.text,hovertext:An.hovertext,textposition:An.textposition,textfont:Fbe({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,noNumericWeightValues:!0,variantValues:["normal","small-caps"]}),mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"]},line:{color:PV.color,width:PV.width,shape:{valType:"enumerated",values:["linear","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},dash:{valType:"enumerated",values:Rbe(Nbe),dflt:"solid"}},marker:VT({},RV("marker"),{symbol:zu.symbol,angle:zu.angle,size:zu.size,sizeref:zu.sizeref,sizemin:zu.sizemin,sizemode:zu.sizemode,opacity:zu.opacity,colorbar:zu.colorbar,line:VT({},RV("marker.line"),{width:Ibe.width})}),connectgaps:An.connectgaps,fill:VT({},An.fill,{dflt:"none"}),fillcolor:qbe(),selected:{marker:An.selected.marker,textfont:An.selected.textfont},unselected:{marker:An.unselected.marker,textfont:An.unselected.textfont},opacity:Dbe.opacity},"calc","nested");fv.x.editType=fv.y.editType=fv.x0.editType=fv.y0.editType="calc+clearAxisTypes";fv.hovertemplate=An.hovertemplate;fv.hovertemplatefallback=An.hovertemplatefallback;fv.texttemplate=An.texttemplate;fv.texttemplatefallback=An.texttemplatefallback});var hx=P(YT=>{"use strict";var IV=vp();YT.isOpenSymbol=function(e){return typeof e=="string"?IV.OPEN_RE.test(e):e%200>100};YT.isDotSymbol=function(e){return typeof e=="string"?IV.DOT_RE.test(e):e>200}});var zV=P((tRe,BV)=>{"use strict";var OV=Ur(),Obe=Bt(),Bbe=hx(),zbe=vx(),Gbe=Um(),dx=Ri(),Ube=p6(),Hbe=m6(),Vbe=wb(),Ybe=y6(),Wbe=b6(),jbe=g6();BV.exports=function(r,t,a,n){function i(d,p){return OV.coerce(r,t,zbe,d,p)}var o=r.marker?Bbe.isOpenSymbol(r.marker.symbol):!1,l=dx.isBubble(r),s=Ube(r,t,n,i);if(!s){t.visible=!1;return}Hbe(r,t,n,i),i("xhoverformat"),i("yhoverformat");var f=s{"use strict";var Xbe=N6();GV.exports=function(r,t,a){var n=r.i;return"x"in r||(r.x=t._x[n]),"y"in r||(r.y=t._y[n]),Xbe(r,t,a)}});var VV=P((nRe,HV)=>{"use strict";function Zbe(e,r,t,a,n){for(var i=n+1;a<=n;){var o=a+n>>>1,l=e[o],s=t!==void 0?t(l,r):l-r;s>=0?(i=o,n=o-1):a=o+1}return i}function Jbe(e,r,t,a,n){for(var i=n+1;a<=n;){var o=a+n>>>1,l=e[o],s=t!==void 0?t(l,r):l-r;s>0?(i=o,n=o-1):a=o+1}return i}function $be(e,r,t,a,n){for(var i=a-1;a<=n;){var o=a+n>>>1,l=e[o],s=t!==void 0?t(l,r):l-r;s<0?(i=o,a=o+1):n=o-1}return i}function Qbe(e,r,t,a,n){for(var i=a-1;a<=n;){var o=a+n>>>1,l=e[o],s=t!==void 0?t(l,r):l-r;s<=0?(i=o,a=o+1):n=o-1}return i}function Kbe(e,r,t,a,n){for(;a<=n;){var i=a+n>>>1,o=e[i],l=t!==void 0?t(o,r):o-r;if(l===0)return i;l<=0?a=i+1:n=i-1}return-1}function _y(e,r,t,a,n,i){return typeof t=="function"?i(e,r,t,a===void 0?0:a|0,n===void 0?e.length-1:n|0):i(e,r,void 0,t===void 0?0:t|0,a===void 0?e.length-1:a|0)}HV.exports={ge:function(e,r,t,a,n){return _y(e,r,t,a,n,Zbe)},gt:function(e,r,t,a,n){return _y(e,r,t,a,n,Jbe)},lt:function(e,r,t,a,n){return _y(e,r,t,a,n,$be)},le:function(e,r,t,a,n){return _y(e,r,t,a,n,Qbe)},eq:function(e,r,t,a,n){return _y(e,r,t,a,n,Kbe)}}});var wy=P((iRe,YV)=>{YV.exports=exe;function exe(e,r,t){return rt?t:e:er?r:e}});var If=P((oRe,jV)=>{"use strict";jV.exports=function(r,t,a){var n={},i,o;if(typeof t=="string"&&(t=WV(t)),Array.isArray(t)){var l={};for(o=0;o{"use strict";var rxe=If();XV.exports=txe;function txe(e){var r;return arguments.length>1&&(e=arguments),typeof e=="string"?e=e.split(/\s/).map(parseFloat):typeof e=="number"&&(e=[e]),e.length&&typeof e[0]=="number"?e.length===1?r={width:e[0],height:e[0],x:0,y:0}:e.length===2?r={width:e[0],height:e[1],x:0,y:0}:r={x:e[0],y:e[1],width:e[2]-e[0]||0,height:e[3]-e[1]||0}:e&&(e=rxe(e,{left:"x l left Left",top:"y t top Top",width:"w width W Width",height:"h height W Width",bottom:"b bottom Bottom",right:"r right Right"}),r={x:e.left||0,y:e.top||0},e.width==null?e.right?r.width=e.right-r.x:r.width=0:r.width=e.width,e.height==null?e.bottom?r.height=e.bottom-r.y:r.height=0:r.height=e.height),r}});var ah=P((sRe,ZV)=>{"use strict";ZV.exports=axe;function axe(e,r){if(!e||e.length==null)throw Error("Argument should be an array");r==null?r=1:r=Math.floor(r);for(var t=Array(r*2),a=0;an&&(n=e[o]),e[o]{JV.exports=function(){for(var e=0;e{QV.exports=function(e){switch(e){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}});var nh=P((cRe,eY)=>{var KV=px();eY.exports=nxe;function nxe(e,r,t){if(!e)throw new TypeError("must specify data as first parameter");if(t=+(t||0)|0,Array.isArray(e)&&e[0]&&typeof e[0][0]=="number"){var a=e[0].length,n=e.length*a,i,o,l,s;(!r||typeof r=="string")&&(r=new(KV(r||"float32"))(n+t));var f=r.length-t;if(n!==f)throw new Error("source length "+n+" ("+a+"x"+e.length+") does not match destination length "+f);for(i=0,l=t;i{"use strict";rY.exports=function(e){var r=typeof e;return e!==null&&(r==="object"||r==="function")}});var nY=P((hRe,aY)=>{"use strict";aY.exports=Math.log2||function(e){return Math.log(e)*Math.LOG2E}});var cY=P((dRe,uY)=>{"use strict";var iY=VV(),oY=wy(),ixe=hp(),oxe=ah(),lY=If(),jT=$V(),lxe=nh(),sxe=tY(),fxe=px(),sY=nY(),uxe=1073741824;uY.exports=function(r,t){t||(t={}),r=lxe(r,"float64"),t=lY(t,{bounds:"range bounds dataBox databox",maxDepth:"depth maxDepth maxdepth level maxLevel maxlevel levels",dtype:"type dtype format out dst output destination"});let a=jT(t.maxDepth,255),n=jT(t.bounds,oxe(r,2));n[0]===n[2]&&n[2]++,n[1]===n[3]&&n[3]++;let i=fY(r,n),o=r.length>>>1,l;t.dtype||(t.dtype="array"),typeof t.dtype=="string"?l=new(fxe(t.dtype))(o):t.dtype&&(l=t.dtype,Array.isArray(l)&&(l.length=o));for(let b=0;ba||E>uxe){for(let J=0;JLe||F>Be||I=q||ae===ue)return;let Ee=s[Z];ue===void 0&&(ue=Ee.length);for(let de=ae;de=x&&je<=E&&ur>=T&&ur<=S&&H.push(ne)}let Xe=f[Z],Ae=Xe[ae*4+0],rr=Xe[ae*4+1],ze=Xe[ae*4+2],We=Xe[ae*4+3],$e=le(Xe,ae+1),Ue=J*.5,ee=Z+1;j(te,Q,Ue,ee,Ae,rr||ze||We||$e),j(te,Q+Ue,Ue,ee,rr,ze||We||$e),j(te+Ue,Q,Ue,ee,ze,We||$e),j(te+Ue,Q+Ue,Ue,ee,We,$e)}function le(te,Q){let J=null,Z=0;for(;J===null;)if(J=te[Q*4+Z],Z++,Z>te.length)return null;return J}return H}function y(b,A,_,x,T){let E=[];for(let S=0;S{"use strict";vY.exports=cY()});var ZT=P((mRe,hY)=>{hY.exports=cxe;function cxe(e){var r=0,t=0,a=0,n=0;return e.map(function(i){i=i.slice();var o=i[0],l=o.toUpperCase();if(o!=l)switch(i[0]=l,o){case"a":i[6]+=a,i[7]+=n;break;case"v":i[1]+=n;break;case"h":i[1]+=a;break;default:for(var s=1;s{"use strict";Object.defineProperty(mx,"__esModule",{value:!0});var vxe=function(){function e(r,t){var a=[],n=!0,i=!1,o=void 0;try{for(var l=r[Symbol.iterator](),s;!(n=(s=l.next()).done)&&(a.push(s.value),!(t&&a.length===t));n=!0);}catch(f){i=!0,o=f}finally{try{!n&&l.return&&l.return()}finally{if(i)throw o}}return a}return function(r,t){if(Array.isArray(r))return r;if(Symbol.iterator in Object(r))return e(r,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),Ay=Math.PI*2,JT=function(r,t,a,n,i,o,l){var s=r.x,f=r.y;s*=t,f*=a;var u=n*s-i*f,c=i*s+n*f;return{x:u+o,y:c+l}},hxe=function(r,t){var a=t===1.5707963267948966?.551915024494:t===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(t/4),n=Math.cos(r),i=Math.sin(r),o=Math.cos(r+t),l=Math.sin(r+t);return[{x:n-i*a,y:i+n*a},{x:o+l*a,y:l-o*a},{x:o,y:l}]},dY=function(r,t,a,n){var i=r*n-t*a<0?-1:1,o=r*a+t*n;return o>1&&(o=1),o<-1&&(o=-1),i*Math.acos(o)},dxe=function(r,t,a,n,i,o,l,s,f,u,c,v){var d=Math.pow(i,2),p=Math.pow(o,2),y=Math.pow(c,2),m=Math.pow(v,2),b=d*p-d*m-p*y;b<0&&(b=0),b/=d*m+p*y,b=Math.sqrt(b)*(l===s?-1:1);var A=b*i/o*v,_=b*-o/i*c,x=u*A-f*_+(r+a)/2,T=f*A+u*_+(t+n)/2,E=(c-A)/i,S=(v-_)/o,k=(-c-A)/i,F=(-v-_)/o,I=dY(1,0,E,S),O=dY(E,S,k,F);return s===0&&O>0&&(O-=Ay),s===1&&O<0&&(O+=Ay),[x,T,I,O]},pxe=function(r){var t=r.px,a=r.py,n=r.cx,i=r.cy,o=r.rx,l=r.ry,s=r.xAxisRotation,f=s===void 0?0:s,u=r.largeArcFlag,c=u===void 0?0:u,v=r.sweepFlag,d=v===void 0?0:v,p=[];if(o===0||l===0)return[];var y=Math.sin(f*Ay/360),m=Math.cos(f*Ay/360),b=m*(t-n)/2+y*(a-i)/2,A=-y*(t-n)/2+m*(a-i)/2;if(b===0&&A===0)return[];o=Math.abs(o),l=Math.abs(l);var _=Math.pow(b,2)/Math.pow(o,2)+Math.pow(A,2)/Math.pow(l,2);_>1&&(o*=Math.sqrt(_),l*=Math.sqrt(_));var x=dxe(t,a,n,i,o,l,c,d,y,m,b,A),T=vxe(x,4),E=T[0],S=T[1],k=T[2],F=T[3],I=Math.abs(F)/(Ay/4);Math.abs(1-I)<1e-7&&(I=1);var O=Math.max(Math.ceil(I),1);F/=O;for(var q=0;q{"use strict";gY.exports=yxe;var mxe=mY();function yxe(e){for(var r,t=[],a=0,n=0,i=0,o=0,l=null,s=null,f=0,u=0,c=0,v=e.length;c4?(a=d[d.length-4],n=d[d.length-3]):(a=f,n=u),t.push(d)}return t}function yx(e,r,t,a){return["C",e,r,t,a,t,a]}function yY(e,r,t,a,n,i){return["C",e/3+2/3*t,r/3+2/3*a,n/3+2/3*t,i/3+2/3*a,n,i]}});var $T=P((gRe,xY)=>{"use strict";xY.exports=function(r){return typeof r!="string"?!1:(r=r.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(r)&&/[\dz]$/i.test(r)&&r.length>4))}});var gx=P((bRe,_Y)=>{"use strict";_Y.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var r={},t=Symbol("test"),a=Object(t);if(typeof t=="string"||Object.prototype.toString.call(t)!=="[object Symbol]"||Object.prototype.toString.call(a)!=="[object Symbol]")return!1;var n=42;r[t]=n;for(var i in r)return!1;if(typeof Object.keys=="function"&&Object.keys(r).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(r).length!==0)return!1;var o=Object.getOwnPropertySymbols(r);if(o.length!==1||o[0]!==t||!Object.prototype.propertyIsEnumerable.call(r,t))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var l=Object.getOwnPropertyDescriptor(r,t);if(l.value!==n||l.enumerable!==!0)return!1}return!0}});var Ty=P((xRe,wY)=>{"use strict";var gxe=gx();wY.exports=function(){return gxe()&&!!Symbol.toStringTag}});var QT=P((_Re,AY)=>{"use strict";AY.exports=Object});var MY=P((wRe,TY)=>{"use strict";TY.exports=Error});var EY=P((ARe,SY)=>{"use strict";SY.exports=EvalError});var CY=P((TRe,kY)=>{"use strict";kY.exports=RangeError});var DY=P((MRe,LY)=>{"use strict";LY.exports=ReferenceError});var KT=P((SRe,FY)=>{"use strict";FY.exports=SyntaxError});var dp=P((ERe,qY)=>{"use strict";qY.exports=TypeError});var PY=P((kRe,RY)=>{"use strict";RY.exports=URIError});var IY=P((CRe,NY)=>{"use strict";NY.exports=Math.abs});var BY=P((LRe,OY)=>{"use strict";OY.exports=Math.floor});var GY=P((DRe,zY)=>{"use strict";zY.exports=Math.max});var HY=P((FRe,UY)=>{"use strict";UY.exports=Math.min});var YY=P((qRe,VY)=>{"use strict";VY.exports=Math.pow});var jY=P((RRe,WY)=>{"use strict";WY.exports=Math.round});var ZY=P((PRe,XY)=>{"use strict";XY.exports=Number.isNaN||function(r){return r!==r}});var $Y=P((NRe,JY)=>{"use strict";var bxe=ZY();JY.exports=function(r){return bxe(r)||r===0?r:r<0?-1:1}});var KY=P((IRe,QY)=>{"use strict";QY.exports=Object.getOwnPropertyDescriptor});var ih=P((ORe,eW)=>{"use strict";var bx=KY();if(bx)try{bx([],"length")}catch(e){bx=null}eW.exports=bx});var My=P((BRe,rW)=>{"use strict";var xx=Object.defineProperty||!1;if(xx)try{xx({},"a",{value:1})}catch(e){xx=!1}rW.exports=xx});var nW=P((zRe,aW)=>{"use strict";var tW=typeof Symbol!="undefined"&&Symbol,xxe=gx();aW.exports=function(){return typeof tW!="function"||typeof Symbol!="function"||typeof tW("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:xxe()}});var e8=P((GRe,iW)=>{"use strict";iW.exports=typeof Reflect!="undefined"&&Reflect.getPrototypeOf||null});var r8=P((URe,oW)=>{"use strict";var _xe=QT();oW.exports=_xe.getPrototypeOf||null});var fW=P((HRe,sW)=>{"use strict";var wxe="Function.prototype.bind called on incompatible ",Axe=Object.prototype.toString,Txe=Math.max,Mxe="[object Function]",lW=function(r,t){for(var a=[],n=0;n{"use strict";var kxe=fW();uW.exports=Function.prototype.bind||kxe});var _x=P((YRe,cW)=>{"use strict";cW.exports=Function.prototype.call});var t8=P((WRe,vW)=>{"use strict";vW.exports=Function.prototype.apply});var dW=P((jRe,hW)=>{"use strict";hW.exports=typeof Reflect!="undefined"&&Reflect&&Reflect.apply});var mW=P((XRe,pW)=>{"use strict";var Cxe=pp(),Lxe=t8(),Dxe=_x(),Fxe=dW();pW.exports=Fxe||Cxe.call(Dxe,Lxe)});var gW=P((ZRe,yW)=>{"use strict";var qxe=pp(),Rxe=dp(),Pxe=_x(),Nxe=mW();yW.exports=function(r){if(r.length<1||typeof r[0]!="function")throw new Rxe("a function is required");return Nxe(qxe,Pxe,r)}});var TW=P((JRe,AW)=>{"use strict";var Ixe=gW(),bW=ih(),_W;try{_W=[].__proto__===Array.prototype}catch(e){if(!e||typeof e!="object"||!("code"in e)||e.code!=="ERR_PROTO_ACCESS")throw e}var a8=!!_W&&bW&&bW(Object.prototype,"__proto__"),wW=Object,xW=wW.getPrototypeOf;AW.exports=a8&&typeof a8.get=="function"?Ixe([a8.get]):typeof xW=="function"?function(r){return xW(r==null?r:wW(r))}:!1});var CW=P(($Re,kW)=>{"use strict";var MW=e8(),SW=r8(),EW=TW();kW.exports=MW?function(r){return MW(r)}:SW?function(r){if(!r||typeof r!="object"&&typeof r!="function")throw new TypeError("getProto: not an object");return SW(r)}:EW?function(r){return EW(r)}:null});var DW=P((QRe,LW)=>{"use strict";var Oxe=Function.prototype.call,Bxe=Object.prototype.hasOwnProperty,zxe=pp();LW.exports=zxe.call(Oxe,Bxe)});var Tx=P((KRe,IW)=>{"use strict";var Fa,Gxe=QT(),Uxe=MY(),Hxe=EY(),Vxe=CY(),Yxe=DY(),bp=KT(),gp=dp(),Wxe=PY(),jxe=IY(),Xxe=BY(),Zxe=GY(),Jxe=HY(),$xe=YY(),Qxe=jY(),Kxe=$Y(),PW=Function,n8=function(e){try{return PW('"use strict"; return ('+e+").constructor;")()}catch(r){}},Sy=ih(),e_e=My(),i8=function(){throw new gp},r_e=Sy?function(){try{return arguments.callee,i8}catch(e){try{return Sy(arguments,"callee").get}catch(r){return i8}}}():i8,mp=nW()(),Vi=CW(),t_e=r8(),a_e=e8(),NW=t8(),Ey=_x(),yp={},n_e=typeof Uint8Array=="undefined"||!Vi?Fa:Vi(Uint8Array),oh={__proto__:null,"%AggregateError%":typeof AggregateError=="undefined"?Fa:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer=="undefined"?Fa:ArrayBuffer,"%ArrayIteratorPrototype%":mp&&Vi?Vi([][Symbol.iterator]()):Fa,"%AsyncFromSyncIteratorPrototype%":Fa,"%AsyncFunction%":yp,"%AsyncGenerator%":yp,"%AsyncGeneratorFunction%":yp,"%AsyncIteratorPrototype%":yp,"%Atomics%":typeof Atomics=="undefined"?Fa:Atomics,"%BigInt%":typeof BigInt=="undefined"?Fa:BigInt,"%BigInt64Array%":typeof BigInt64Array=="undefined"?Fa:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array=="undefined"?Fa:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView=="undefined"?Fa:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Uxe,"%eval%":eval,"%EvalError%":Hxe,"%Float16Array%":typeof Float16Array=="undefined"?Fa:Float16Array,"%Float32Array%":typeof Float32Array=="undefined"?Fa:Float32Array,"%Float64Array%":typeof Float64Array=="undefined"?Fa:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry=="undefined"?Fa:FinalizationRegistry,"%Function%":PW,"%GeneratorFunction%":yp,"%Int8Array%":typeof Int8Array=="undefined"?Fa:Int8Array,"%Int16Array%":typeof Int16Array=="undefined"?Fa:Int16Array,"%Int32Array%":typeof Int32Array=="undefined"?Fa:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":mp&&Vi?Vi(Vi([][Symbol.iterator]())):Fa,"%JSON%":typeof JSON=="object"?JSON:Fa,"%Map%":typeof Map=="undefined"?Fa:Map,"%MapIteratorPrototype%":typeof Map=="undefined"||!mp||!Vi?Fa:Vi(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Gxe,"%Object.getOwnPropertyDescriptor%":Sy,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise=="undefined"?Fa:Promise,"%Proxy%":typeof Proxy=="undefined"?Fa:Proxy,"%RangeError%":Vxe,"%ReferenceError%":Yxe,"%Reflect%":typeof Reflect=="undefined"?Fa:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set=="undefined"?Fa:Set,"%SetIteratorPrototype%":typeof Set=="undefined"||!mp||!Vi?Fa:Vi(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer=="undefined"?Fa:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":mp&&Vi?Vi(""[Symbol.iterator]()):Fa,"%Symbol%":mp?Symbol:Fa,"%SyntaxError%":bp,"%ThrowTypeError%":r_e,"%TypedArray%":n_e,"%TypeError%":gp,"%Uint8Array%":typeof Uint8Array=="undefined"?Fa:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray=="undefined"?Fa:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array=="undefined"?Fa:Uint16Array,"%Uint32Array%":typeof Uint32Array=="undefined"?Fa:Uint32Array,"%URIError%":Wxe,"%WeakMap%":typeof WeakMap=="undefined"?Fa:WeakMap,"%WeakRef%":typeof WeakRef=="undefined"?Fa:WeakRef,"%WeakSet%":typeof WeakSet=="undefined"?Fa:WeakSet,"%Function.prototype.call%":Ey,"%Function.prototype.apply%":NW,"%Object.defineProperty%":e_e,"%Object.getPrototypeOf%":t_e,"%Math.abs%":jxe,"%Math.floor%":Xxe,"%Math.max%":Zxe,"%Math.min%":Jxe,"%Math.pow%":$xe,"%Math.round%":Qxe,"%Math.sign%":Kxe,"%Reflect.getPrototypeOf%":a_e};if(Vi)try{null.error}catch(e){FW=Vi(Vi(e)),oh["%Error.prototype%"]=FW}var FW,i_e=function e(r){var t;if(r==="%AsyncFunction%")t=n8("async function () {}");else if(r==="%GeneratorFunction%")t=n8("function* () {}");else if(r==="%AsyncGeneratorFunction%")t=n8("async function* () {}");else if(r==="%AsyncGenerator%"){var a=e("%AsyncGeneratorFunction%");a&&(t=a.prototype)}else if(r==="%AsyncIteratorPrototype%"){var n=e("%AsyncGenerator%");n&&Vi&&(t=Vi(n.prototype))}return oh[r]=t,t},qW={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},ky=pp(),wx=DW(),o_e=ky.call(Ey,Array.prototype.concat),l_e=ky.call(NW,Array.prototype.splice),RW=ky.call(Ey,String.prototype.replace),Ax=ky.call(Ey,String.prototype.slice),s_e=ky.call(Ey,RegExp.prototype.exec),f_e=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,u_e=/\\(\\)?/g,c_e=function(r){var t=Ax(r,0,1),a=Ax(r,-1);if(t==="%"&&a!=="%")throw new bp("invalid intrinsic syntax, expected closing `%`");if(a==="%"&&t!=="%")throw new bp("invalid intrinsic syntax, expected opening `%`");var n=[];return RW(r,f_e,function(i,o,l,s){n[n.length]=l?RW(s,u_e,"$1"):o||i}),n},v_e=function(r,t){var a=r,n;if(wx(qW,a)&&(n=qW[a],a="%"+n[0]+"%"),wx(oh,a)){var i=oh[a];if(i===yp&&(i=i_e(a)),typeof i=="undefined"&&!t)throw new gp("intrinsic "+r+" exists, but is not available. Please file an issue!");return{alias:n,name:a,value:i}}throw new bp("intrinsic "+r+" does not exist!")};IW.exports=function(r,t){if(typeof r!="string"||r.length===0)throw new gp("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof t!="boolean")throw new gp('"allowMissing" argument must be a boolean');if(s_e(/^%?[^%]*%?$/,r)===null)throw new bp("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var a=c_e(r),n=a.length>0?a[0]:"",i=v_e("%"+n+"%",t),o=i.name,l=i.value,s=!1,f=i.alias;f&&(n=f[0],l_e(a,o_e([0,1],f)));for(var u=1,c=!0;u=a.length){var y=Sy(l,v);c=!!y,c&&"get"in y&&!("originalValue"in y.get)?l=y.get:l=l[v]}else c=wx(l,v),l=l[v];c&&!s&&(oh[o]=l)}}return l}});var GW=P((ePe,zW)=>{"use strict";var OW=My(),h_e=KT(),xp=dp(),BW=ih();zW.exports=function(r,t,a){if(!r||typeof r!="object"&&typeof r!="function")throw new xp("`obj` must be an object or a function`");if(typeof t!="string"&&typeof t!="symbol")throw new xp("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new xp("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new xp("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new xp("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new xp("`loose`, if provided, must be a boolean");var n=arguments.length>3?arguments[3]:null,i=arguments.length>4?arguments[4]:null,o=arguments.length>5?arguments[5]:null,l=arguments.length>6?arguments[6]:!1,s=!!BW&&BW(r,t);if(OW)OW(r,t,{configurable:o===null&&s?s.configurable:!o,enumerable:n===null&&s?s.enumerable:!n,value:a,writable:i===null&&s?s.writable:!i});else if(l||!n&&!i&&!o)r[t]=a;else throw new h_e("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var l8=P((rPe,HW)=>{"use strict";var o8=My(),UW=function(){return!!o8};UW.hasArrayLengthDefineBug=function(){if(!o8)return null;try{return o8([],"length",{value:1}).length!==1}catch(r){return!0}};HW.exports=UW});var XW=P((tPe,jW)=>{"use strict";var d_e=Tx(),VW=GW(),p_e=l8()(),YW=ih(),WW=dp(),m_e=d_e("%Math.floor%");jW.exports=function(r,t){if(typeof r!="function")throw new WW("`fn` is not a function");if(typeof t!="number"||t<0||t>4294967295||m_e(t)!==t)throw new WW("`length` must be a positive 32-bit integer");var a=arguments.length>2&&!!arguments[2],n=!0,i=!0;if("length"in r&&YW){var o=YW(r,"length");o&&!o.configurable&&(n=!1),o&&!o.writable&&(i=!1)}return(n||i||!a)&&(p_e?VW(r,"length",t,!0,!0):VW(r,"length",t)),r}});var Cy=P((aPe,Mx)=>{"use strict";var s8=pp(),Sx=Tx(),y_e=XW(),g_e=dp(),$W=Sx("%Function.prototype.apply%"),QW=Sx("%Function.prototype.call%"),KW=Sx("%Reflect.apply%",!0)||s8.call(QW,$W),ZW=My(),b_e=Sx("%Math.max%");Mx.exports=function(r){if(typeof r!="function")throw new g_e("a function is required");var t=KW(s8,QW,arguments);return y_e(t,1+b_e(0,r.length-(arguments.length-1)),!0)};var JW=function(){return KW(s8,$W,arguments)};ZW?ZW(Mx.exports,"apply",{value:JW}):Mx.exports.apply=JW});var _p=P((nPe,tj)=>{"use strict";var ej=Tx(),rj=Cy(),x_e=rj(ej("String.prototype.indexOf"));tj.exports=function(r,t){var a=ej(r,!!t);return typeof a=="function"&&x_e(r,".prototype.")>-1?rj(a):a}});var ij=P((iPe,nj)=>{"use strict";var __e=Ty()(),w_e=_p(),f8=w_e("Object.prototype.toString"),Ex=function(r){return __e&&r&&typeof r=="object"&&Symbol.toStringTag in r?!1:f8(r)==="[object Arguments]"},aj=function(r){return Ex(r)?!0:r!==null&&typeof r=="object"&&typeof r.length=="number"&&r.length>=0&&f8(r)!=="[object Array]"&&f8(r.callee)==="[object Function]"},A_e=function(){return Ex(arguments)}();Ex.isLegacyArguments=aj;nj.exports=A_e?Ex:aj});var sj=P((oPe,lj)=>{"use strict";var T_e=Object.prototype.toString,M_e=Function.prototype.toString,S_e=/^\s*(?:function)?\*/,oj=Ty()(),u8=Object.getPrototypeOf,E_e=function(){if(!oj)return!1;try{return Function("return function*() {}")()}catch(e){}},c8;lj.exports=function(r){if(typeof r!="function")return!1;if(S_e.test(M_e.call(r)))return!0;if(!oj){var t=T_e.call(r);return t==="[object GeneratorFunction]"}if(!u8)return!1;if(typeof c8=="undefined"){var a=E_e();c8=a?u8(a):!1}return u8(r)===c8}});var vj=P((lPe,cj)=>{"use strict";var uj=Function.prototype.toString,wp=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,h8,kx;if(typeof wp=="function"&&typeof Object.defineProperty=="function")try{h8=Object.defineProperty({},"length",{get:function(){throw kx}}),kx={},wp(function(){throw 42},null,h8)}catch(e){e!==kx&&(wp=null)}else wp=null;var k_e=/^\s*class\b/,d8=function(r){try{var t=uj.call(r);return k_e.test(t)}catch(a){return!1}},v8=function(r){try{return d8(r)?!1:(uj.call(r),!0)}catch(t){return!1}},Cx=Object.prototype.toString,C_e="[object Object]",L_e="[object Function]",D_e="[object GeneratorFunction]",F_e="[object HTMLAllCollection]",q_e="[object HTML document.all class]",R_e="[object HTMLCollection]",P_e=typeof Symbol=="function"&&!!Symbol.toStringTag,N_e=!(0 in[,]),p8=function(){return!1};typeof document=="object"&&(fj=document.all,Cx.call(fj)===Cx.call(document.all)&&(p8=function(r){if((N_e||!r)&&(typeof r=="undefined"||typeof r=="object"))try{var t=Cx.call(r);return(t===F_e||t===q_e||t===R_e||t===C_e)&&r("")==null}catch(a){}return!1}));var fj;cj.exports=wp?function(r){if(p8(r))return!0;if(!r||typeof r!="function"&&typeof r!="object")return!1;try{wp(r,null,h8)}catch(t){if(t!==kx)return!1}return!d8(r)&&v8(r)}:function(r){if(p8(r))return!0;if(!r||typeof r!="function"&&typeof r!="object")return!1;if(P_e)return v8(r);if(d8(r))return!1;var t=Cx.call(r);return t!==L_e&&t!==D_e&&!/^\[object HTML/.test(t)?!1:v8(r)}});var m8=P((sPe,dj)=>{"use strict";var I_e=vj(),O_e=Object.prototype.toString,hj=Object.prototype.hasOwnProperty,B_e=function(r,t,a){for(var n=0,i=r.length;n=3&&(n=a),O_e.call(r)==="[object Array]"?B_e(r,t,n):typeof r=="string"?z_e(r,t,n):G_e(r,t,n)};dj.exports=U_e});var g8=P((fPe,pj)=>{"use strict";var y8=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],H_e=typeof globalThis=="undefined"?window:globalThis;pj.exports=function(){for(var r=[],t=0;t{"use strict";var Dx=m8(),V_e=g8(),mj=Cy(),_8=_p(),Lx=ih(),Y_e=_8("Object.prototype.toString"),gj=Ty()(),yj=typeof globalThis=="undefined"?window:globalThis,x8=V_e(),w8=_8("String.prototype.slice"),b8=Object.getPrototypeOf,W_e=_8("Array.prototype.indexOf",!0)||function(r,t){for(var a=0;a-1?t:t!=="Object"?!1:X_e(r)}return Lx?j_e(r):null}});var Sj=P((cPe,Mj)=>{"use strict";var _j=m8(),Z_e=g8(),T8=_p(),J_e=T8("Object.prototype.toString"),wj=Ty()(),qx=ih(),$_e=typeof globalThis=="undefined"?window:globalThis,Aj=Z_e(),Q_e=T8("Array.prototype.indexOf",!0)||function(r,t){for(var a=0;a-1}return qx?e5e(r):!1}});var zj=P(qa=>{"use strict";var r5e=ij(),t5e=sj(),Js=xj(),Ej=Sj();function Ap(e){return e.call.bind(e)}var kj=typeof BigInt!="undefined",Cj=typeof Symbol!="undefined",as=Ap(Object.prototype.toString),a5e=Ap(Number.prototype.valueOf),n5e=Ap(String.prototype.valueOf),i5e=Ap(Boolean.prototype.valueOf);kj&&(Lj=Ap(BigInt.prototype.valueOf));var Lj;Cj&&(Dj=Ap(Symbol.prototype.valueOf));var Dj;function Dy(e,r){if(typeof e!="object")return!1;try{return r(e),!0}catch(t){return!1}}qa.isArgumentsObject=r5e;qa.isGeneratorFunction=t5e;qa.isTypedArray=Ej;function o5e(e){return typeof Promise!="undefined"&&e instanceof Promise||e!==null&&typeof e=="object"&&typeof e.then=="function"&&typeof e.catch=="function"}qa.isPromise=o5e;function l5e(e){return typeof ArrayBuffer!="undefined"&&ArrayBuffer.isView?ArrayBuffer.isView(e):Ej(e)||qj(e)}qa.isArrayBufferView=l5e;function s5e(e){return Js(e)==="Uint8Array"}qa.isUint8Array=s5e;function f5e(e){return Js(e)==="Uint8ClampedArray"}qa.isUint8ClampedArray=f5e;function u5e(e){return Js(e)==="Uint16Array"}qa.isUint16Array=u5e;function c5e(e){return Js(e)==="Uint32Array"}qa.isUint32Array=c5e;function v5e(e){return Js(e)==="Int8Array"}qa.isInt8Array=v5e;function h5e(e){return Js(e)==="Int16Array"}qa.isInt16Array=h5e;function d5e(e){return Js(e)==="Int32Array"}qa.isInt32Array=d5e;function p5e(e){return Js(e)==="Float32Array"}qa.isFloat32Array=p5e;function m5e(e){return Js(e)==="Float64Array"}qa.isFloat64Array=m5e;function y5e(e){return Js(e)==="BigInt64Array"}qa.isBigInt64Array=y5e;function g5e(e){return Js(e)==="BigUint64Array"}qa.isBigUint64Array=g5e;function Rx(e){return as(e)==="[object Map]"}Rx.working=typeof Map!="undefined"&&Rx(new Map);function b5e(e){return typeof Map=="undefined"?!1:Rx.working?Rx(e):e instanceof Map}qa.isMap=b5e;function Px(e){return as(e)==="[object Set]"}Px.working=typeof Set!="undefined"&&Px(new Set);function x5e(e){return typeof Set=="undefined"?!1:Px.working?Px(e):e instanceof Set}qa.isSet=x5e;function Nx(e){return as(e)==="[object WeakMap]"}Nx.working=typeof WeakMap!="undefined"&&Nx(new WeakMap);function _5e(e){return typeof WeakMap=="undefined"?!1:Nx.working?Nx(e):e instanceof WeakMap}qa.isWeakMap=_5e;function S8(e){return as(e)==="[object WeakSet]"}S8.working=typeof WeakSet!="undefined"&&S8(new WeakSet);function w5e(e){return S8(e)}qa.isWeakSet=w5e;function Ix(e){return as(e)==="[object ArrayBuffer]"}Ix.working=typeof ArrayBuffer!="undefined"&&Ix(new ArrayBuffer);function Fj(e){return typeof ArrayBuffer=="undefined"?!1:Ix.working?Ix(e):e instanceof ArrayBuffer}qa.isArrayBuffer=Fj;function Ox(e){return as(e)==="[object DataView]"}Ox.working=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined"&&Ox(new DataView(new ArrayBuffer(1),0,1));function qj(e){return typeof DataView=="undefined"?!1:Ox.working?Ox(e):e instanceof DataView}qa.isDataView=qj;var M8=typeof SharedArrayBuffer!="undefined"?SharedArrayBuffer:void 0;function Ly(e){return as(e)==="[object SharedArrayBuffer]"}function Rj(e){return typeof M8=="undefined"?!1:(typeof Ly.working=="undefined"&&(Ly.working=Ly(new M8)),Ly.working?Ly(e):e instanceof M8)}qa.isSharedArrayBuffer=Rj;function A5e(e){return as(e)==="[object AsyncFunction]"}qa.isAsyncFunction=A5e;function T5e(e){return as(e)==="[object Map Iterator]"}qa.isMapIterator=T5e;function M5e(e){return as(e)==="[object Set Iterator]"}qa.isSetIterator=M5e;function S5e(e){return as(e)==="[object Generator]"}qa.isGeneratorObject=S5e;function E5e(e){return as(e)==="[object WebAssembly.Module]"}qa.isWebAssemblyCompiledModule=E5e;function Pj(e){return Dy(e,a5e)}qa.isNumberObject=Pj;function Nj(e){return Dy(e,n5e)}qa.isStringObject=Nj;function Ij(e){return Dy(e,i5e)}qa.isBooleanObject=Ij;function Oj(e){return kj&&Dy(e,Lj)}qa.isBigIntObject=Oj;function Bj(e){return Cj&&Dy(e,Dj)}qa.isSymbolObject=Bj;function k5e(e){return Pj(e)||Nj(e)||Ij(e)||Oj(e)||Bj(e)}qa.isBoxedPrimitive=k5e;function C5e(e){return typeof Uint8Array!="undefined"&&(Fj(e)||Rj(e))}qa.isAnyArrayBuffer=C5e;["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(e){Object.defineProperty(qa,e,{enumerable:!1,value:function(){throw new Error(e+" is not supported in userland")}})})});var Uj=P((hPe,Gj)=>{Gj.exports=function(r){return r&&typeof r=="object"&&typeof r.copy=="function"&&typeof r.fill=="function"&&typeof r.readUInt8=="function"}});var Hj=P((dPe,E8)=>{typeof Object.create=="function"?E8.exports=function(r,t){t&&(r.super_=t,r.prototype=Object.create(t.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}))}:E8.exports=function(r,t){if(t){r.super_=t;var a=function(){};a.prototype=t.prototype,r.prototype=new a,r.prototype.constructor=r}}});var Mp=P(Ra=>{var Vj=Object.getOwnPropertyDescriptors||function(r){for(var t=Object.keys(r),a={},n=0;n=n)return l;switch(l){case"%s":return String(a[t++]);case"%d":return Number(a[t++]);case"%j":try{return JSON.stringify(a[t++])}catch(s){return"[Circular]"}default:return l}}),o=a[t];t=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),D8(r)?t.showHidden=r:r&&Ra._extend(t,r),sh(t.showHidden)&&(t.showHidden=!1),sh(t.depth)&&(t.depth=2),sh(t.colors)&&(t.colors=!1),sh(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=D5e),Ux(t,e,t.depth)}Ra.inspect=uv;uv.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};uv.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function D5e(e,r){var t=uv.styles[r];return t?"\x1B["+uv.colors[t][0]+"m"+e+"\x1B["+uv.colors[t][1]+"m":e}function F5e(e,r){return e}function q5e(e){var r={};return e.forEach(function(t,a){r[t]=!0}),r}function Ux(e,r,t){if(e.customInspect&&r&&Gx(r.inspect)&&r.inspect!==Ra.inspect&&!(r.constructor&&r.constructor.prototype===r)){var a=r.inspect(t,e);return Yx(a)||(a=Ux(e,a,t)),a}var n=R5e(e,r);if(n)return n;var i=Object.keys(r),o=q5e(i);if(e.showHidden&&(i=Object.getOwnPropertyNames(r)),qy(r)&&(i.indexOf("message")>=0||i.indexOf("description")>=0))return k8(r);if(i.length===0){if(Gx(r)){var l=r.name?": "+r.name:"";return e.stylize("[Function"+l+"]","special")}if(Fy(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(Hx(r))return e.stylize(Date.prototype.toString.call(r),"date");if(qy(r))return k8(r)}var s="",f=!1,u=["{","}"];if(Wj(r)&&(f=!0,u=["[","]"]),Gx(r)){var c=r.name?": "+r.name:"";s=" [Function"+c+"]"}if(Fy(r)&&(s=" "+RegExp.prototype.toString.call(r)),Hx(r)&&(s=" "+Date.prototype.toUTCString.call(r)),qy(r)&&(s=" "+k8(r)),i.length===0&&(!f||r.length==0))return u[0]+s+u[1];if(t<0)return Fy(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special");e.seen.push(r);var v;return f?v=P5e(e,r,t,o,i):v=i.map(function(d){return L8(e,r,t,o,d,f)}),e.seen.pop(),N5e(v,s,u)}function R5e(e,r){if(sh(r))return e.stylize("undefined","undefined");if(Yx(r)){var t="'"+JSON.stringify(r).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(t,"string")}if(jj(r))return e.stylize(""+r,"number");if(D8(r))return e.stylize(""+r,"boolean");if(Vx(r))return e.stylize("null","null")}function k8(e){return"["+Error.prototype.toString.call(e)+"]"}function P5e(e,r,t,a,n){for(var i=[],o=0,l=r.length;o-1&&(i?l=l.split(` `).map(function(f){return" "+f}).join(` `).slice(2):l=` @@ -27,7 +27,7 @@ `))):l=e.stylize("[Circular]","special")),sh(o)){if(i&&n.match(/^\d+$/))return l;o=JSON.stringify(""+n),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+l}function N5e(e,r,t){var a=0,n=e.reduce(function(i,o){return a++,o.indexOf(` `)>=0&&a++,i+o.replace(/\u001b\[\d\d?m/g,"").length+1},0);return n>60?t[0]+(r===""?"":r+` `)+" "+e.join(`, - `)+" "+t[1]:t[0]+r+" "+e.join(", ")+" "+t[1]}Ra.types=zj();function Wj(e){return Array.isArray(e)}Ra.isArray=Wj;function D8(e){return typeof e=="boolean"}Ra.isBoolean=D8;function Hx(e){return e===null}Ra.isNull=Hx;function I5e(e){return e==null}Ra.isNullOrUndefined=I5e;function jj(e){return typeof e=="number"}Ra.isNumber=jj;function Vx(e){return typeof e=="string"}Ra.isString=Vx;function O5e(e){return typeof e=="symbol"}Ra.isSymbol=O5e;function sh(e){return e===void 0}Ra.isUndefined=sh;function Fy(e){return Tp(e)&&F8(e)==="[object RegExp]"}Ra.isRegExp=Fy;Ra.types.isRegExp=Fy;function Tp(e){return typeof e=="object"&&e!==null}Ra.isObject=Tp;function Ux(e){return Tp(e)&&F8(e)==="[object Date]"}Ra.isDate=Ux;Ra.types.isDate=Ux;function qy(e){return Tp(e)&&(F8(e)==="[object Error]"||e instanceof Error)}Ra.isError=qy;Ra.types.isNativeError=qy;function zx(e){return typeof e=="function"}Ra.isFunction=zx;function B5e(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}Ra.isPrimitive=B5e;Ra.isBuffer=Uj();function F8(e){return Object.prototype.toString.call(e)}function C8(e){return e<10?"0"+e.toString(10):e.toString(10)}var z5e=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function G5e(){var e=new Date,r=[C8(e.getHours()),C8(e.getMinutes()),C8(e.getSeconds())].join(":");return[e.getDate(),z5e[e.getMonth()],r].join(" ")}Ra.log=function(){console.log("%s - %s",G5e(),Ra.format.apply(Ra,arguments))};Ra.inherits=Hj();Ra._extend=function(e,r){if(!r||!Tp(r))return e;for(var t=Object.keys(r),a=t.length;a--;)e[t[a]]=r[t[a]];return e};function Xj(e,r){return Object.prototype.hasOwnProperty.call(e,r)}var lh=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;Ra.promisify=function(r){if(typeof r!="function")throw new TypeError('The "original" argument must be of type Function');if(lh&&r[lh]){var t=r[lh];if(typeof t!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,lh,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var a,n,i=new Promise(function(s,f){a=s,n=f}),o=[],l=0;l{"use strict";function cv(e){"@babel/helpers - typeof";return cv=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},cv(e)}function Zj(e,r){for(var t=0;t2?"one of ".concat(r," ").concat(e.slice(0,t-1).join(", "),", or ")+e[t-1]:t===2?"one of ".concat(r," ").concat(e[0]," or ").concat(e[1]):"of ".concat(r," ").concat(e[0])}else return"of ".concat(r," ").concat(String(e))}function K5e(e,r,t){return e.substr(!t||t<0?0:+t,r.length)===r}function e4e(e,r,t){return(t===void 0||t>e.length)&&(t=e.length),e.substring(t-r.length,t)===r}function r4e(e,r,t){return typeof t!="number"&&(t=0),t+r.length>e.length?!1:e.indexOf(r,t)!==-1}Ry("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError);Ry("ERR_INVALID_ARG_TYPE",function(e,r,t){Sp===void 0&&(Sp=Wx()),Sp(typeof e=="string","'name' must be a string");var a;typeof r=="string"&&K5e(r,"not ")?(a="must not be",r=r.replace(/^not /,"")):a="must be";var n;if(e4e(e," argument"))n="The ".concat(e," ").concat(a," ").concat(Jj(r,"type"));else{var i=r4e(e,".")?"property":"argument";n='The "'.concat(e,'" ').concat(i," ").concat(a," ").concat(Jj(r,"type"))}return n+=". Received type ".concat(cv(t)),n},TypeError);Ry("ERR_INVALID_ARG_VALUE",function(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";q8===void 0&&(q8=Mp());var a=q8.inspect(r);return a.length>128&&(a="".concat(a.slice(0,128),"...")),"The argument '".concat(e,"' ").concat(t,". Received ").concat(a)},TypeError,RangeError);Ry("ERR_INVALID_RETURN_VALUE",function(e,r,t){var a;return t&&t.constructor&&t.constructor.name?a="instance of ".concat(t.constructor.name):a="type ".concat(cv(t)),"Expected ".concat(e,' to be returned from the "').concat(r,'"')+" function but got ".concat(a,".")},TypeError);Ry("ERR_MISSING_ARGS",function(){for(var e=arguments.length,r=new Array(e),t=0;t0,"At least one arg needs to be specified");var a="The ",n=r.length;switch(r=r.map(function(i){return'"'.concat(i,'"')}),n){case 1:a+="".concat(r[0]," argument");break;case 2:a+="".concat(r[0]," and ").concat(r[1]," arguments");break;default:a+=r.slice(0,n-1).join(", "),a+=", and ".concat(r[n-1]," arguments");break}return"".concat(a," must be specified")},TypeError);Qj.exports.codes=$j});var sX=P((yPe,lX)=>{"use strict";function Kj(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);r&&(a=a.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,a)}return t}function eX(e){for(var r=1;re.length)&&(t=e.length),e.substring(t-r.length,t)===r}function v4e(e,r){if(r=Math.floor(r),e.length==0||r==0)return"";var t=e.length*r;for(r=Math.floor(Math.log(r)/Math.log(2));r;)e+=e,r--;return e+=e.substring(0,t-e.length),e}var Js="",Py="",Ny="",no="",fh={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},h4e=10;function aX(e){var r=Object.keys(e),t=Object.create(Object.getPrototypeOf(e));return r.forEach(function(a){t[a]=e[a]}),Object.defineProperty(t,"message",{value:e.message}),t}function Iy(e){return O8(e,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function d4e(e,r,t){var a="",n="",i=0,o="",l=!1,s=Iy(e),f=s.split(` + `)+" "+t[1]:t[0]+r+" "+e.join(", ")+" "+t[1]}Ra.types=zj();function Wj(e){return Array.isArray(e)}Ra.isArray=Wj;function D8(e){return typeof e=="boolean"}Ra.isBoolean=D8;function Vx(e){return e===null}Ra.isNull=Vx;function I5e(e){return e==null}Ra.isNullOrUndefined=I5e;function jj(e){return typeof e=="number"}Ra.isNumber=jj;function Yx(e){return typeof e=="string"}Ra.isString=Yx;function O5e(e){return typeof e=="symbol"}Ra.isSymbol=O5e;function sh(e){return e===void 0}Ra.isUndefined=sh;function Fy(e){return Tp(e)&&F8(e)==="[object RegExp]"}Ra.isRegExp=Fy;Ra.types.isRegExp=Fy;function Tp(e){return typeof e=="object"&&e!==null}Ra.isObject=Tp;function Hx(e){return Tp(e)&&F8(e)==="[object Date]"}Ra.isDate=Hx;Ra.types.isDate=Hx;function qy(e){return Tp(e)&&(F8(e)==="[object Error]"||e instanceof Error)}Ra.isError=qy;Ra.types.isNativeError=qy;function Gx(e){return typeof e=="function"}Ra.isFunction=Gx;function B5e(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}Ra.isPrimitive=B5e;Ra.isBuffer=Uj();function F8(e){return Object.prototype.toString.call(e)}function C8(e){return e<10?"0"+e.toString(10):e.toString(10)}var z5e=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function G5e(){var e=new Date,r=[C8(e.getHours()),C8(e.getMinutes()),C8(e.getSeconds())].join(":");return[e.getDate(),z5e[e.getMonth()],r].join(" ")}Ra.log=function(){console.log("%s - %s",G5e(),Ra.format.apply(Ra,arguments))};Ra.inherits=Hj();Ra._extend=function(e,r){if(!r||!Tp(r))return e;for(var t=Object.keys(r),a=t.length;a--;)e[t[a]]=r[t[a]];return e};function Xj(e,r){return Object.prototype.hasOwnProperty.call(e,r)}var lh=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;Ra.promisify=function(r){if(typeof r!="function")throw new TypeError('The "original" argument must be of type Function');if(lh&&r[lh]){var t=r[lh];if(typeof t!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,lh,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var a,n,i=new Promise(function(s,f){a=s,n=f}),o=[],l=0;l{"use strict";function cv(e){"@babel/helpers - typeof";return cv=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},cv(e)}function Zj(e,r){for(var t=0;t2?"one of ".concat(r," ").concat(e.slice(0,t-1).join(", "),", or ")+e[t-1]:t===2?"one of ".concat(r," ").concat(e[0]," or ").concat(e[1]):"of ".concat(r," ").concat(e[0])}else return"of ".concat(r," ").concat(String(e))}function K5e(e,r,t){return e.substr(!t||t<0?0:+t,r.length)===r}function e4e(e,r,t){return(t===void 0||t>e.length)&&(t=e.length),e.substring(t-r.length,t)===r}function r4e(e,r,t){return typeof t!="number"&&(t=0),t+r.length>e.length?!1:e.indexOf(r,t)!==-1}Ry("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError);Ry("ERR_INVALID_ARG_TYPE",function(e,r,t){Sp===void 0&&(Sp=jx()),Sp(typeof e=="string","'name' must be a string");var a;typeof r=="string"&&K5e(r,"not ")?(a="must not be",r=r.replace(/^not /,"")):a="must be";var n;if(e4e(e," argument"))n="The ".concat(e," ").concat(a," ").concat(Jj(r,"type"));else{var i=r4e(e,".")?"property":"argument";n='The "'.concat(e,'" ').concat(i," ").concat(a," ").concat(Jj(r,"type"))}return n+=". Received type ".concat(cv(t)),n},TypeError);Ry("ERR_INVALID_ARG_VALUE",function(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";q8===void 0&&(q8=Mp());var a=q8.inspect(r);return a.length>128&&(a="".concat(a.slice(0,128),"...")),"The argument '".concat(e,"' ").concat(t,". Received ").concat(a)},TypeError,RangeError);Ry("ERR_INVALID_RETURN_VALUE",function(e,r,t){var a;return t&&t.constructor&&t.constructor.name?a="instance of ".concat(t.constructor.name):a="type ".concat(cv(t)),"Expected ".concat(e,' to be returned from the "').concat(r,'"')+" function but got ".concat(a,".")},TypeError);Ry("ERR_MISSING_ARGS",function(){for(var e=arguments.length,r=new Array(e),t=0;t0,"At least one arg needs to be specified");var a="The ",n=r.length;switch(r=r.map(function(i){return'"'.concat(i,'"')}),n){case 1:a+="".concat(r[0]," argument");break;case 2:a+="".concat(r[0]," and ").concat(r[1]," arguments");break;default:a+=r.slice(0,n-1).join(", "),a+=", and ".concat(r[n-1]," arguments");break}return"".concat(a," must be specified")},TypeError);Qj.exports.codes=$j});var sX=P((yPe,lX)=>{"use strict";function Kj(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);r&&(a=a.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,a)}return t}function eX(e){for(var r=1;re.length)&&(t=e.length),e.substring(t-r.length,t)===r}function v4e(e,r){if(r=Math.floor(r),e.length==0||r==0)return"";var t=e.length*r;for(r=Math.floor(Math.log(r)/Math.log(2));r;)e+=e,r--;return e+=e.substring(0,t-e.length),e}var $s="",Py="",Ny="",no="",fh={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},h4e=10;function aX(e){var r=Object.keys(e),t=Object.create(Object.getPrototypeOf(e));return r.forEach(function(a){t[a]=e[a]}),Object.defineProperty(t,"message",{value:e.message}),t}function Iy(e){return O8(e,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function d4e(e,r,t){var a="",n="",i=0,o="",l=!1,s=Iy(e),f=s.split(` `),u=Iy(r).split(` `),c=0,v="";if(t==="strictEqual"&&tl(e)==="object"&&tl(r)==="object"&&e!==null&&r!==null&&(t="strictEqualObject"),f.length===1&&u.length===1&&f[0]!==u[0]){var d=f[0].length+u[0].length;if(d<=h4e){if((tl(e)!=="object"||e===null)&&(tl(r)!=="object"||r===null)&&(e!==0||r!==0))return"".concat(fh[t],` @@ -35,33 +35,33 @@ `)}else if(t!=="strictEqualObject"){var p=process.stderr&&process.stderr.isTTY?process.stderr.columns:80;if(d2&&(v=` `.concat(v4e(" ",c),"^"),c=0)}}}for(var y=f[f.length-1],m=u[u.length-1];y===m&&(c++<2?o=` `.concat(y).concat(o):a=y,f.pop(),u.pop(),!(f.length===0||u.length===0));)y=f[f.length-1],m=u[u.length-1];var b=Math.max(f.length,u.length);if(b===0){var A=s.split(` -`);if(A.length>30)for(A[26]="".concat(Js,"...").concat(no);A.length>27;)A.pop();return"".concat(fh.notIdentical,` +`);if(A.length>30)for(A[26]="".concat($s,"...").concat(no);A.length>27;)A.pop();return"".concat(fh.notIdentical,` `).concat(A.join(` `),` `)}c>3&&(o=` -`.concat(Js,"...").concat(no).concat(o),l=!0),a!==""&&(o=` +`.concat($s,"...").concat(no).concat(o),l=!0),a!==""&&(o=` `.concat(a).concat(o),a="");var _=0,x=fh[t]+` -`.concat(Py,"+ actual").concat(no," ").concat(Ny,"- expected").concat(no),T=" ".concat(Js,"...").concat(no," Lines skipped");for(c=0;c1&&c>2&&(E>4?(n+=` -`.concat(Js,"...").concat(no),l=!0):E>3&&(n+=` +`.concat(Py,"+ actual").concat(no," ").concat(Ny,"- expected").concat(no),T=" ".concat($s,"...").concat(no," Lines skipped");for(c=0;c1&&c>2&&(E>4?(n+=` +`.concat($s,"...").concat(no),l=!0):E>3&&(n+=` `.concat(u[c-2]),_++),n+=` `.concat(u[c-1]),_++),i=c,a+=` `.concat(Ny,"-").concat(no," ").concat(u[c]),_++;else if(u.length1&&c>2&&(E>4?(n+=` -`.concat(Js,"...").concat(no),l=!0):E>3&&(n+=` +`.concat($s,"...").concat(no),l=!0):E>3&&(n+=` `.concat(f[c-2]),_++),n+=` `.concat(f[c-1]),_++),i=c,n+=` -`.concat(Py,"+").concat(no," ").concat(f[c]),_++;else{var M=u[c],k=f[c],F=k!==M&&(!tX(k,",")||k.slice(0,-1)!==M);F&&tX(M,",")&&M.slice(0,-1)===k&&(F=!1,k+=","),F?(E>1&&c>2&&(E>4?(n+=` -`.concat(Js,"...").concat(no),l=!0):E>3&&(n+=` +`.concat(Py,"+").concat(no," ").concat(f[c]),_++;else{var S=u[c],k=f[c],F=k!==S&&(!tX(k,",")||k.slice(0,-1)!==S);F&&tX(S,",")&&S.slice(0,-1)===k&&(F=!1,k+=","),F?(E>1&&c>2&&(E>4?(n+=` +`.concat($s,"...").concat(no),l=!0):E>3&&(n+=` `.concat(f[c-2]),_++),n+=` `.concat(f[c-1]),_++),i=c,n+=` `.concat(Py,"+").concat(no," ").concat(k),a+=` -`.concat(Ny,"-").concat(no," ").concat(M),_+=2):(n+=a,a="",(E===1||c===0)&&(n+=` +`.concat(Ny,"-").concat(no," ").concat(S),_+=2):(n+=a,a="",(E===1||c===0)&&(n+=` `.concat(k),_++))}if(_>20&&c30)for(d[26]="".concat(Js,"...").concat(no);d.length>27;)d.pop();d.length===1?i=t.call(this,"".concat(v," ").concat(d[0])):i=t.call(this,"".concat(v,` +`).concat($s,"...").concat(no).concat(a,` +`)+"".concat($s,"...").concat(no)}return"".concat(x).concat(l?T:"",` +`).concat(n).concat(a).concat(o).concat(v)}var p4e=function(e,r){o4e(a,e);var t=l4e(a);function a(n){var i;if(a4e(this,a),tl(n)!=="object"||n===null)throw new c4e("options","Object",n);var o=n.message,l=n.operator,s=n.stackStartFn,f=n.actual,u=n.expected,c=Error.stackTraceLimit;if(Error.stackTraceLimit=0,o!=null)i=t.call(this,String(o));else if(process.stderr&&process.stderr.isTTY&&(process.stderr&&process.stderr.getColorDepth&&process.stderr.getColorDepth()!==1?($s="\x1B[34m",Py="\x1B[32m",no="\x1B[39m",Ny="\x1B[31m"):($s="",Py="",no="",Ny="")),tl(f)==="object"&&f!==null&&tl(u)==="object"&&u!==null&&"stack"in f&&f instanceof Error&&"stack"in u&&u instanceof Error&&(f=aX(f),u=aX(u)),l==="deepStrictEqual"||l==="strictEqual")i=t.call(this,d4e(f,u,l));else if(l==="notDeepStrictEqual"||l==="notStrictEqual"){var v=fh[l],d=Iy(f).split(` +`);if(l==="notStrictEqual"&&tl(f)==="object"&&f!==null&&(v=fh.notStrictEqualObject),d.length>30)for(d[26]="".concat($s,"...").concat(no);d.length>27;)d.pop();d.length===1?i=t.call(this,"".concat(v," ").concat(d[0])):i=t.call(this,"".concat(v,` `).concat(d.join(` `),` @@ -73,19 +73,19 @@ should equal -`):y=" ".concat(l," ").concat(y)),i=t.call(this,"".concat(p).concat(y))}return Error.stackTraceLimit=c,i.generatedMessage=!o,Object.defineProperty(N8(i),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),i.code="ERR_ASSERTION",i.actual=f,i.expected=u,i.operator=l,Error.captureStackTrace&&Error.captureStackTrace(N8(i),s),i.stack,i.name="AssertionError",iX(i)}return n4e(a,[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:r,value:function(i,o){return O8(this,eX(eX({},o),{},{customInspect:!1,depth:0}))}}]),a}(I8(Error),O8.custom);lX.exports=p4e});var B8=P((gPe,uX)=>{"use strict";var fX=Object.prototype.toString;uX.exports=function(r){var t=fX.call(r),a=t==="[object Arguments]";return a||(a=t!=="[object Array]"&&r!==null&&typeof r=="object"&&typeof r.length=="number"&&r.length>=0&&fX.call(r.callee)==="[object Function]"),a}});var bX=P((bPe,gX)=>{"use strict";var yX;Object.keys||(zy=Object.prototype.hasOwnProperty,z8=Object.prototype.toString,cX=B8(),G8=Object.prototype.propertyIsEnumerable,vX=!G8.call({toString:null},"toString"),hX=G8.call(function(){},"prototype"),Gy=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],Xx=function(e){var r=e.constructor;return r&&r.prototype===e},dX={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},pX=function(){if(typeof window=="undefined")return!1;for(var e in window)try{if(!dX["$"+e]&&zy.call(window,e)&&window[e]!==null&&typeof window[e]=="object")try{Xx(window[e])}catch(r){return!0}}catch(r){return!0}return!1}(),mX=function(e){if(typeof window=="undefined"||!pX)return Xx(e);try{return Xx(e)}catch(r){return!1}},yX=function(r){var t=r!==null&&typeof r=="object",a=z8.call(r)==="[object Function]",n=cX(r),i=t&&z8.call(r)==="[object String]",o=[];if(!t&&!a&&!n)throw new TypeError("Object.keys called on a non-object");var l=hX&&a;if(i&&r.length>0&&!zy.call(r,0))for(var s=0;s0)for(var f=0;f{"use strict";var m4e=Array.prototype.slice,y4e=B8(),xX=Object.keys,Zx=xX?function(r){return xX(r)}:bX(),_X=Object.keys;Zx.shim=function(){if(Object.keys){var r=function(){var t=Object.keys(arguments);return t&&t.length===arguments.length}(1,2);r||(Object.keys=function(a){return y4e(a)?_X(m4e.call(a)):_X(a)})}else Object.keys=Zx;return Object.keys||Zx};wX.exports=Zx});var kX=P((_Pe,EX)=>{"use strict";var g4e=U8(),MX=yx()(),SX=_p(),AX=Object,b4e=SX("Array.prototype.push"),TX=SX("Object.prototype.propertyIsEnumerable"),x4e=MX?Object.getOwnPropertySymbols:null;EX.exports=function(r,t){if(r==null)throw new TypeError("target must be an object");var a=AX(r);if(arguments.length===1)return a;for(var n=1;n{"use strict";var H8=kX(),_4e=function(){if(!Object.assign)return!1;for(var e="abcdefghijklmnopqrst",r=e.split(""),t={},a=0;a{"use strict";var DX=function(e){return e!==e};FX.exports=function(r,t){return r===0&&t===0?1/r===1/t:!!(r===t||DX(r)&&DX(t))}});var Jx=P((TPe,qX)=>{"use strict";var A4e=V8();qX.exports=function(){return typeof Object.is=="function"?Object.is:A4e}});var Uy=P((MPe,IX)=>{"use strict";var T4e=U8(),M4e=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",S4e=Object.prototype.toString,E4e=Array.prototype.concat,RX=Object.defineProperty,k4e=function(e){return typeof e=="function"&&S4e.call(e)==="[object Function]"},C4e=l8()(),PX=RX&&C4e,L4e=function(e,r,t,a){if(r in e){if(a===!0){if(e[r]===t)return}else if(!k4e(a)||!a())return}PX?RX(e,r,{configurable:!0,enumerable:!1,value:t,writable:!0}):e[r]=t},NX=function(e,r){var t=arguments.length>2?arguments[2]:{},a=T4e(r);M4e&&(a=E4e.call(a,Object.getOwnPropertySymbols(r)));for(var n=0;n{"use strict";var D4e=Jx(),F4e=Uy();OX.exports=function(){var r=D4e();return F4e(Object,{is:r},{is:function(){return Object.is!==r}}),r}});var HX=P((EPe,UX)=>{"use strict";var q4e=Uy(),R4e=Cy(),P4e=V8(),zX=Jx(),N4e=BX(),GX=R4e(zX(),Object);q4e(GX,{getPolyfill:zX,implementation:P4e,shim:N4e});UX.exports=GX});var Y8=P((kPe,VX)=>{"use strict";VX.exports=function(r){return r!==r}});var W8=P((CPe,YX)=>{"use strict";var I4e=Y8();YX.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:I4e}});var jX=P((LPe,WX)=>{"use strict";var O4e=Uy(),B4e=W8();WX.exports=function(){var r=B4e();return O4e(Number,{isNaN:r},{isNaN:function(){return Number.isNaN!==r}}),r}});var $X=P((DPe,JX)=>{"use strict";var z4e=Cy(),G4e=Uy(),U4e=Y8(),XX=W8(),H4e=jX(),ZX=z4e(XX(),Number);G4e(ZX,{getPolyfill:XX,implementation:U4e,shim:H4e});JX.exports=ZX});var yZ=P((FPe,mZ)=>{"use strict";function QX(e,r){return j4e(e)||W4e(e,r)||Y4e(e,r)||V4e()}function V4e(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Y4e(e,r){if(e){if(typeof e=="string")return KX(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);if(t==="Object"&&e.constructor&&(t=e.constructor.name),t==="Map"||t==="Set")return Array.from(e);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return KX(e,r)}}function KX(e,r){(r==null||r>e.length)&&(r=e.length);for(var t=0,a=new Array(r);t10)return!0;for(var r=0;r57)return!0}return e.length===10&&e>=Math.pow(2,32)}function Kx(e){return Object.keys(e).filter(twe).concat(r_(e).filter(Object.prototype.propertyIsEnumerable.bind(e)))}function vZ(e,r){if(e===r)return 0;for(var t=e.length,a=r.length,n=0,i=Math.min(t,a);n{"use strict";function $s(e){"@babel/helpers - typeof";return $s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},$s(e)}function gZ(e,r){for(var t=0;t1?t-1:0),n=1;n1?t-1:0),n=1;n1?t-1:0),n=1;n1?t-1:0),n=1;n{"use strict";var fX=Object.prototype.toString;uX.exports=function(r){var t=fX.call(r),a=t==="[object Arguments]";return a||(a=t!=="[object Array]"&&r!==null&&typeof r=="object"&&typeof r.length=="number"&&r.length>=0&&fX.call(r.callee)==="[object Function]"),a}});var bX=P((bPe,gX)=>{"use strict";var yX;Object.keys||(zy=Object.prototype.hasOwnProperty,z8=Object.prototype.toString,cX=B8(),G8=Object.prototype.propertyIsEnumerable,vX=!G8.call({toString:null},"toString"),hX=G8.call(function(){},"prototype"),Gy=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],Zx=function(e){var r=e.constructor;return r&&r.prototype===e},dX={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},pX=function(){if(typeof window=="undefined")return!1;for(var e in window)try{if(!dX["$"+e]&&zy.call(window,e)&&window[e]!==null&&typeof window[e]=="object")try{Zx(window[e])}catch(r){return!0}}catch(r){return!0}return!1}(),mX=function(e){if(typeof window=="undefined"||!pX)return Zx(e);try{return Zx(e)}catch(r){return!1}},yX=function(r){var t=r!==null&&typeof r=="object",a=z8.call(r)==="[object Function]",n=cX(r),i=t&&z8.call(r)==="[object String]",o=[];if(!t&&!a&&!n)throw new TypeError("Object.keys called on a non-object");var l=hX&&a;if(i&&r.length>0&&!zy.call(r,0))for(var s=0;s0)for(var f=0;f{"use strict";var m4e=Array.prototype.slice,y4e=B8(),xX=Object.keys,Jx=xX?function(r){return xX(r)}:bX(),_X=Object.keys;Jx.shim=function(){if(Object.keys){var r=function(){var t=Object.keys(arguments);return t&&t.length===arguments.length}(1,2);r||(Object.keys=function(a){return y4e(a)?_X(m4e.call(a)):_X(a)})}else Object.keys=Jx;return Object.keys||Jx};wX.exports=Jx});var kX=P((_Pe,EX)=>{"use strict";var g4e=U8(),MX=gx()(),SX=_p(),AX=Object,b4e=SX("Array.prototype.push"),TX=SX("Object.prototype.propertyIsEnumerable"),x4e=MX?Object.getOwnPropertySymbols:null;EX.exports=function(r,t){if(r==null)throw new TypeError("target must be an object");var a=AX(r);if(arguments.length===1)return a;for(var n=1;n{"use strict";var H8=kX(),_4e=function(){if(!Object.assign)return!1;for(var e="abcdefghijklmnopqrst",r=e.split(""),t={},a=0;a{"use strict";var DX=function(e){return e!==e};FX.exports=function(r,t){return r===0&&t===0?1/r===1/t:!!(r===t||DX(r)&&DX(t))}});var $x=P((TPe,qX)=>{"use strict";var A4e=V8();qX.exports=function(){return typeof Object.is=="function"?Object.is:A4e}});var Uy=P((MPe,IX)=>{"use strict";var T4e=U8(),M4e=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",S4e=Object.prototype.toString,E4e=Array.prototype.concat,RX=Object.defineProperty,k4e=function(e){return typeof e=="function"&&S4e.call(e)==="[object Function]"},C4e=l8()(),PX=RX&&C4e,L4e=function(e,r,t,a){if(r in e){if(a===!0){if(e[r]===t)return}else if(!k4e(a)||!a())return}PX?RX(e,r,{configurable:!0,enumerable:!1,value:t,writable:!0}):e[r]=t},NX=function(e,r){var t=arguments.length>2?arguments[2]:{},a=T4e(r);M4e&&(a=E4e.call(a,Object.getOwnPropertySymbols(r)));for(var n=0;n{"use strict";var D4e=$x(),F4e=Uy();OX.exports=function(){var r=D4e();return F4e(Object,{is:r},{is:function(){return Object.is!==r}}),r}});var HX=P((EPe,UX)=>{"use strict";var q4e=Uy(),R4e=Cy(),P4e=V8(),zX=$x(),N4e=BX(),GX=R4e(zX(),Object);q4e(GX,{getPolyfill:zX,implementation:P4e,shim:N4e});UX.exports=GX});var Y8=P((kPe,VX)=>{"use strict";VX.exports=function(r){return r!==r}});var W8=P((CPe,YX)=>{"use strict";var I4e=Y8();YX.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:I4e}});var jX=P((LPe,WX)=>{"use strict";var O4e=Uy(),B4e=W8();WX.exports=function(){var r=B4e();return O4e(Number,{isNaN:r},{isNaN:function(){return Number.isNaN!==r}}),r}});var $X=P((DPe,JX)=>{"use strict";var z4e=Cy(),G4e=Uy(),U4e=Y8(),XX=W8(),H4e=jX(),ZX=z4e(XX(),Number);G4e(ZX,{getPolyfill:XX,implementation:U4e,shim:H4e});JX.exports=ZX});var yZ=P((FPe,mZ)=>{"use strict";function QX(e,r){return j4e(e)||W4e(e,r)||Y4e(e,r)||V4e()}function V4e(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Y4e(e,r){if(e){if(typeof e=="string")return KX(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);if(t==="Object"&&e.constructor&&(t=e.constructor.name),t==="Map"||t==="Set")return Array.from(e);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return KX(e,r)}}function KX(e,r){(r==null||r>e.length)&&(r=e.length);for(var t=0,a=new Array(r);t10)return!0;for(var r=0;r57)return!0}return e.length===10&&e>=Math.pow(2,32)}function e_(e){return Object.keys(e).filter(twe).concat(t_(e).filter(Object.prototype.propertyIsEnumerable.bind(e)))}function vZ(e,r){if(e===r)return 0;for(var t=e.length,a=r.length,n=0,i=Math.min(t,a);n{"use strict";function Qs(e){"@babel/helpers - typeof";return Qs=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},Qs(e)}function gZ(e,r){for(var t=0;t1?t-1:0),n=1;n1?t-1:0),n=1;n1?t-1:0),n=1;n1?t-1:0),n=1;n{"use strict";var kwe=om(),Cwe=ZT(),Lwe=bY(),Dwe=$T(),NZ=Wx();IZ.exports=Fwe;function Fwe(e){if(Array.isArray(e)&&e.length===1&&typeof e[0]=="string"&&(e=e[0]),typeof e=="string"&&(NZ(Dwe(e),"String is not an SVG path."),e=kwe(e)),NZ(Array.isArray(e),"Argument should be a string or an array of path segments."),e=Cwe(e),e=Lwe(e),!e.length)return[0,0,0,0];for(var r=[1/0,1/0,-1/0,-1/0],t=0,a=e.length;tr[2]&&(r[2]=n[i+0]),n[i+1]>r[3]&&(r[3]=n[i+1]);return r}});var VZ=P((PPe,HZ)=>{var uh=Math.PI,BZ=UZ(120);HZ.exports=qwe;function qwe(e){for(var r,t=[],a=0,n=0,i=0,o=0,l=null,s=null,f=0,u=0,c=0,v=e.length;c7&&(t.push(d.splice(0,7)),d.unshift("C"));break;case"S":var y=f,m=u;(r=="C"||r=="S")&&(y+=y-a,m+=m-n),d=["C",y,m,d[1],d[2],d[3],d[4]];break;case"T":r=="Q"||r=="T"?(l=f*2-l,s=u*2-s):(l=f,s=u),d=zZ(f,u,l,s,d[1],d[2]);break;case"Q":l=d[1],s=d[2],d=zZ(f,u,d[1],d[2],d[3],d[4]);break;case"L":d=f_(f,u,d[1],d[2]);break;case"H":d=f_(f,u,d[1],u);break;case"V":d=f_(f,u,f,d[1]);break;case"Z":d=f_(f,u,i,o);break}r=p,f=d[d.length-2],u=d[d.length-1],d.length>4?(a=d[d.length-4],n=d[d.length-3]):(a=f,n=u),t.push(d)}return t}function f_(e,r,t,a){return["C",e,r,t,a,t,a]}function zZ(e,r,t,a,n,i){return["C",e/3+2/3*t,r/3+2/3*a,n/3+2/3*t,i/3+2/3*a,n,i]}function GZ(e,r,t,a,n,i,o,l,s,f){if(f)_=f[0],x=f[1],b=f[2],A=f[3];else{var u=Q8(e,r,-n);e=u.x,r=u.y,u=Q8(l,s,-n),l=u.x,s=u.y;var c=(e-l)/2,v=(r-s)/2,d=c*c/(t*t)+v*v/(a*a);d>1&&(d=Math.sqrt(d),t=d*t,a=d*a);var p=t*t,y=a*a,m=(i==o?-1:1)*Math.sqrt(Math.abs((p*y-p*v*v-y*c*c)/(p*v*v+y*c*c)));m==1/0&&(m=1);var b=m*t*v/a+(e+l)/2,A=m*-a*c/t+(r+s)/2,_=Math.asin(((r-A)/a).toFixed(9)),x=Math.asin(((s-A)/a).toFixed(9));_=ex&&(_=_-uh*2),!o&&x>_&&(x=x-uh*2)}if(Math.abs(x-_)>BZ){var T=x,E=l,M=s;x=_+BZ*(o&&x>_?1:-1),l=b+t*Math.cos(x),s=A+a*Math.sin(x);var k=GZ(l,s,t,a,n,0,o,E,M,[x,T,b,A])}var F=Math.tan((x-_)/4),I=4/3*t*F,O=4/3*a*F,q=[2*e-(e+I*Math.sin(_)),2*r-(r-O*Math.cos(_)),l+I*Math.sin(x),s-O*Math.cos(x),l,s];if(f)return q;k&&(q=q.concat(k));for(var H=0;H{var Rwe=ZT(),Pwe=VZ(),Nwe={M:"moveTo",C:"bezierCurveTo"};YZ.exports=function(e,r){e.beginPath(),Pwe(Rwe(r)).forEach(function(t){var a=t[0],n=t.slice(1);e[Nwe[a]].apply(e,n)}),e.closePath()}});var JZ=P((IPe,ZZ)=>{"use strict";var Iwe=wy();ZZ.exports=Owe;var jy=1e20;function Owe(e,r){r||(r={});var t=r.cutoff==null?.25:r.cutoff,a=r.radius==null?8:r.radius,n=r.channel||0,i,o,l,s,f,u,c,v,d,p,y;if(ArrayBuffer.isView(e)||Array.isArray(e)){if(!r.width||!r.height)throw Error("For raw data width and height should be provided by options");i=r.width,o=r.height,s=e,r.stride?u=r.stride:u=Math.floor(e.length/i/o)}else window.HTMLCanvasElement&&e instanceof window.HTMLCanvasElement?(v=e,c=v.getContext("2d"),i=v.width,o=v.height,d=c.getImageData(0,0,i,o),s=d.data,u=4):window.CanvasRenderingContext2D&&e instanceof window.CanvasRenderingContext2D?(v=e.canvas,c=e,i=v.width,o=v.height,d=c.getImageData(0,0,i,o),s=d.data,u=4):window.ImageData&&e instanceof window.ImageData&&(d=e,i=e.width,o=e.height,s=d.data,u=4);if(l=Math.max(i,o),window.Uint8ClampedArray&&s instanceof window.Uint8ClampedArray||window.Uint8Array&&s instanceof window.Uint8Array)for(f=s,s=Array(i*o),p=0,y=f.length;p{"use strict";var Bwe=OZ(),zwe=om(),Gwe=WZ(),Uwe=$T(),Hwe=JZ(),K8=document.createElement("canvas"),Io=K8.getContext("2d");$Z.exports=Vwe;function Vwe(e,r){if(!Uwe(e))throw Error("Argument should be valid svg path string");r||(r={});var t,a;r.shape?(t=r.shape[0],a=r.shape[1]):(t=K8.width=r.w||r.width||200,a=K8.height=r.h||r.height||200);var n=Math.min(t,a),i=r.stroke||0,o=r.viewbox||r.viewBox||Bwe(e),l=[t/(o[2]-o[0]),a/(o[3]-o[1])],s=Math.min(l[0]||0,l[1]||0)/2;if(Io.fillStyle="black",Io.fillRect(0,0,t,a),Io.fillStyle="white",i&&(typeof i!="number"&&(i=1),i>0?Io.strokeStyle="white":Io.strokeStyle="black",Io.lineWidth=Math.abs(i)),Io.translate(t*.5,a*.5),Io.scale(s,s),Ywe()){var f=new Path2D(e);Io.fill(f),i&&Io.stroke(f)}else{var u=zwe(e);Gwe(Io,u),Io.fill(),i&&Io.stroke()}Io.setTransform(1,0,0,1,0,0);var c=Hwe(Io,{cutoff:r.cutoff!=null?r.cutoff:.5,radius:r.radius!=null?r.radius:n*.5});return c}var u_;function Ywe(){if(u_!=null)return u_;var e=document.createElement("canvas").getContext("2d");if(e.canvas.width=e.canvas.height=1,!window.Path2D)return u_=!1;var r=new Path2D("M0,0h1v1h-1v-1Z");e.fillStyle="black",e.fill(r);var t=e.getImageData(0,0,1,1);return u_=t&&t.data&&t.data[3]===255}});var e7=P((BPe,KZ)=>{"use strict";KZ.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var aJ=P((zPe,tJ)=>{"use strict";var eJ=e7();tJ.exports=Wwe;var rJ={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function Wwe(e){var r,t=[],a=1,n;if(typeof e=="string")if(e=e.toLowerCase(),eJ[e])t=eJ[e].slice(),n="rgb";else if(e==="transparent")a=0,n="rgb",t=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var i=e.slice(1),o=i.length,l=o<=4;a=1,l?(t=[parseInt(i[0]+i[0],16),parseInt(i[1]+i[1],16),parseInt(i[2]+i[2],16)],o===4&&(a=parseInt(i[3]+i[3],16)/255)):(t=[parseInt(i[0]+i[1],16),parseInt(i[2]+i[3],16),parseInt(i[4]+i[5],16)],o===8&&(a=parseInt(i[6]+i[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),n="rgb"}else if(r=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var s=r[1],f=s==="rgb",i=s.replace(/a$/,"");n=i;var o=i==="cmyk"?4:i==="gray"?1:3;t=r[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(v,d){if(/%$/.test(v))return d===o?parseFloat(v)/100:i==="rgb"?parseFloat(v)*255/100:parseFloat(v);if(i[d]==="h"){if(/deg$/.test(v))return parseFloat(v);if(rJ[v]!==void 0)return rJ[v]}return parseFloat(v)}),s===i&&t.push(1),a=f||t[o]===void 0?1:t[o],t=t.slice(0,o)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(t=e.match(/([0-9]+)/g).map(function(u){return parseFloat(u)}),n=e.match(/([a-z])/ig).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(t=[e[0],e[1],e[2]],n="rgb",a=e.length===4?e[3]:1):e instanceof Object&&(e.r!=null||e.red!=null||e.R!=null?(n="rgb",t=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(n="hsl",t=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),a=e.a||e.alpha||e.opacity||1,e.opacity!=null&&(a/=100)):(n="rgb",t=[e>>>16,(e&65280)>>>8,e&255]);return{space:n,values:t,alpha:a}}});var iJ=P((GPe,nJ)=>{"use strict";var jwe=aJ();nJ.exports=function(r){Array.isArray(r)&&r.raw&&(r=String.raw.apply(null,arguments));var t,a,n,i=jwe(r);if(!i.space)return[];var o=[0,0,0],l=i.space[0]==="h"?[360,100,100]:[255,255,255];return t=Array(3),t[0]=Math.min(Math.max(i.values[0],o[0]),l[0]),t[1]=Math.min(Math.max(i.values[1],o[1]),l[1]),t[2]=Math.min(Math.max(i.values[2],o[2]),l[2]),i.space[0]==="h"&&(t=Xwe(t)),t.push(Math.min(Math.max(i.alpha,0),1)),t};function Xwe(e){var r=e[0]/360,t=e[1]/100,a=e[2]/100,n,i,o,l,s,f=0;if(t===0)return s=a*255,[s,s,s];for(i=a<.5?a*(1+t):a+t-a*t,n=2*a-i,l=[0,0,0];f<3;)o=r+1/3*-(f-1),o<0?o++:o>1&&o--,s=6*o<1?n+(i-n)*6*o:2*o<1?i:3*o<2?n+(i-n)*(2/3-o)*6:n,l[f++]=s*255;return l}});var ch=P((UPe,oJ)=>{"use strict";var Zwe=iJ(),c_=wy(),Jwe=dx();oJ.exports=function(r,t){(t==="float"||!t)&&(t="array"),t==="uint"&&(t="uint8"),t==="uint_clamped"&&(t="uint8_clamped");var a=Jwe(t),n=new a(4),i=t!=="uint8"&&t!=="uint8_clamped";return(!r.length||typeof r=="string")&&(r=Zwe(r),r[0]/=255,r[1]/=255,r[2]/=255),$we(r)?(n[0]=r[0],n[1]=r[1],n[2]=r[2],n[3]=r[3]!=null?r[3]:255,i&&(n[0]/=255,n[1]/=255,n[2]/=255,n[3]/=255),n):(i?(n[0]=r[0],n[1]=r[1],n[2]=r[2],n[3]=r[3]!=null?r[3]:1):(n[0]=c_(Math.floor(r[0]*255),0,255),n[1]=c_(Math.floor(r[1]*255),0,255),n[2]=c_(Math.floor(r[2]*255),0,255),n[3]=r[3]==null?255:c_(Math.floor(r[3]*255),0,255)),n)};function $we(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}});var dJ=P((HPe,hJ)=>{"use strict";var cJ=ba(),Qwe=ks(),v_=ch(),h_=xd(),Kwe=wf().defaultLine,lJ=Yo().isArrayOrTypedArray,r7=v_(Kwe),vJ=1;function sJ(e,r){var t=e;return t[3]*=r,t}function fJ(e){if(cJ(e))return r7;var r=v_(e);return r.length?r:r7}function uJ(e){return cJ(e)?e:vJ}function eAe(e,r,t){var a=e.color;a&&a._inputArray&&(a=a._inputArray);var n=lJ(a),i=lJ(r),o=h_.extractOpts(e),l=[],s,f,u,c,v;if(o.colorscale!==void 0?s=h_.makeColorScaleFuncFromTrace(e):s=fJ,n?f=function(p,y){return p[y]===void 0?r7:v_(s(p[y]))}:f=fJ,i?u=function(p,y){return p[y]===void 0?vJ:uJ(p[y])}:u=uJ,n||i)for(var d=0;d{"use strict";var p_=ba(),tAe=QZ(),d_=ch(),aAe=Bt(),Lp=Ur(),Yn=Lp.isArrayOrTypedArray,kp=Ha(),pJ=kn(),mJ=dJ().formatColor,Cp=Ri(),nAe=B4(),a7=vx(),Xy=vp(),iAe=$h().DESELECTDIM,yJ={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},oAe=Cu().appendArrayPointValue;function lAe(e,r){var t,a={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0},n=e._context.plotGlPixelRatio;if(r.visible!==!0)return a;if(Cp.hasText(r)&&(a.text=TJ(e,r),a.textSel=bJ(e,r,r.selected),a.textUnsel=bJ(e,r,r.unselected)),Cp.hasMarkers(r)&&(a.marker=i7(e,r),a.markerSel=n7(e,r,r.selected),a.markerUnsel=n7(e,r,r.unselected),!r.unselected&&Yn(r.marker.opacity))){var i=r.marker.opacity;for(a.markerUnsel.opacity=new Array(i.length),t=0;t500?"bold":"normal":e}function i7(e,r){var t=r._length,a=r.marker,n={},i,o=Yn(a.symbol),l=Yn(a.angle),s=Yn(a.color),f=Yn(a.line.color),u=Yn(a.opacity),c=Yn(a.size),v=Yn(a.line.width),d;if(o||(d=a7.isOpenSymbol(a.symbol)),o||s||f||u||l){n.symbols=new Array(t),n.angles=new Array(t),n.colors=new Array(t),n.borderColors=new Array(t);var p=a.symbol,y=a.angle,m=mJ(a,a.opacity,t),b=mJ(a.line,a.opacity,t);if(!Yn(b[0])){var A=b;for(b=Array(t),i=0;iXy.TOO_MANY_POINTS||Cp.hasMarkers(r)?"rect":"round";if(f&&r.connectgaps){var c=i[0],v=i[1];for(o=0;o1?s[o]:s[0]:s,d=Yn(f)?f.length>1?f[o]:f[0]:f,p=yJ[v],y=yJ[d],m=u?u/.8+1:0,b=-y*m-y*.5;i.offset[o]=[p*m/c,b/c]}}return i}MJ.exports={style:lAe,markerStyle:i7,markerSelection:n7,linePositions:fAe,errorBarPositions:uAe,textPosition:cAe}});var EJ=P((YPe,SJ)=>{"use strict";var m_=Ur();SJ.exports=function(r,t){var a=t._scene,n={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},i={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return t._scene||(a=t._scene={},a.init=function(){m_.extendFlat(a,i,n)},a.init(),a.update=function(l){var s=m_.repeat(l,a.count);if(a.fill2d&&a.fill2d.update(s),a.scatter2d&&a.scatter2d.update(s),a.line2d&&a.line2d.update(s),a.error2d&&a.error2d.update(s.concat(s)),a.select2d&&a.select2d.update(s),a.glText)for(var f=0;f{"use strict";var vAe=XT(),Dp=Ur(),kJ=kn(),hAe=Md().findExtremes,CJ=_6(),o7=Xd(),dAe=o7.calcMarkerSize,pAe=o7.calcAxisExpansion,mAe=o7.setFirstScatter,yAe=ry(),Fp=Zy(),gAe=EJ(),LJ=Kn().BADNUM,bAe=vp().TOO_MANY_POINTS;FJ.exports=function(r,t){var a=r._fullLayout,n=t._xA=kJ.getFromId(r,t.xaxis,"x"),i=t._yA=kJ.getFromId(r,t.yaxis,"y"),o=a._plots[t.xaxis+t.yaxis],l=t._length,s=l>=bAe,f=l*2,u={},c,v=n.makeCalcdata(t,"x"),d=i.makeCalcdata(t,"y"),p=CJ(t,n,"x",v),y=CJ(t,i,"y",d),m=p.vals,b=y.vals;t._x=m,t._y=b,t.xperiodalignment&&(t._origX=v,t._xStarts=p.starts,t._xEnds=p.ends),t.yperiodalignment&&(t._origY=d,t._yStarts=y.starts,t._yEnds=y.ends);var A=new Array(f),_=new Array(l);for(c=0;c1&&Dp.extendFlat(o.line,Fp.linePositions(e,t,a)),o.errorX||o.errorY){var l=Fp.errorBarPositions(e,t,a,n,i);o.errorX&&Dp.extendFlat(o.errorX,l.x),o.errorY&&Dp.extendFlat(o.errorY,l.y)}return o.text&&(Dp.extendFlat(o.text,{positions:a},Fp.textPosition(e,t,o.text,o.marker)),Dp.extendFlat(o.textSel,{positions:a},Fp.textPosition(e,t,o.text,o.markerSel)),Dp.extendFlat(o.textUnsel,{positions:a},Fp.textPosition(e,t,o.text,o.markerUnsel))),o}});var l7=P((jPe,PJ)=>{"use strict";var RJ=Ur(),_Ae=ha(),wAe=$h().DESELECTDIM;function AAe(e){var r=e[0],t=r.trace,a=r.t,n=a._scene,i=a.index,o=n.selectBatch[i],l=n.unselectBatch[i],s=n.textOptions[i],f=n.textSelectedOptions[i]||{},u=n.textUnselectedOptions[i]||{},c=RJ.extendFlat({},s),v,d;if(o.length||l.length){var p=f.color,y=u.color,m=s.color,b=RJ.isArrayOrTypedArray(m);for(c.color=new Array(t._length),v=0;v{"use strict";var NJ=Ri(),TAe=l7().styleTextSelection;IJ.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,o=[],l=a[0].trace,s=a[0].t,f=l._length,u=s.x,c=s.y,v=s._scene,d=s.index;if(!v)return o;var p=NJ.hasText(l),y=NJ.hasMarkers(l),m=!y&&!p;if(l.visible!==!0||m)return o;var b=[],A=[];if(t!==!1&&!t.degenerate)for(var _=0;_{"use strict";var MAe=HT();BJ.exports={moduleType:"trace",name:"scattergl",basePlotModule:sy(),categories:["gl","regl","cartesian","symbols","errorBarsOK","showLegend","scatter-like"],attributes:cx(),supplyDefaults:zV(),crossTraceDefaults:x6(),colorbar:kb(),formatLabels:UV(),calc:qJ(),hoverPoints:MAe.hoverPoints,selectPoints:OJ(),meta:{}}});var UJ=P((JPe,g_)=>{"use strict";var y_=wy();g_.exports=GJ;g_.exports.to=GJ;g_.exports.from=SAe;function GJ(e,r){r==null&&(r=!0);var t=e[0],a=e[1],n=e[2],i=e[3];i==null&&(i=r?1:255),r&&(t*=255,a*=255,n*=255,i*=255),t=y_(t,0,255)&255,a=y_(a,0,255)&255,n=y_(n,0,255)&255,i=y_(i,0,255)&255;var o=t*16777216+(a<<16)+(n<<8)+i;return o}function SAe(e,r){e=+e;var t=e>>>24,a=(e&16711680)>>>16,n=(e&65280)>>>8,i=e&255;return r===!1?[t,a,n,i]:[t/255,a/255,n/255,i/255]}});var ni=P(($Pe,VJ)=>{"use strict";var HJ=Object.getOwnPropertySymbols,EAe=Object.prototype.hasOwnProperty,kAe=Object.prototype.propertyIsEnumerable;function CAe(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function LAe(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var r={},t=0;t<10;t++)r["_"+String.fromCharCode(t)]=t;var a=Object.getOwnPropertyNames(r).map(function(i){return r[i]});if(a.join("")!=="0123456789")return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach(function(i){n[i]=i}),Object.keys(Object.assign({},n)).join("")==="abcdefghijklmnopqrst"}catch(i){return!1}}VJ.exports=LAe()?Object.assign:function(e,r){for(var t,a=CAe(e),n,i=1;i{YJ.exports=function(e){typeof e=="string"&&(e=[e]);for(var r=[].slice.call(arguments,1),t=[],a=0;a{"use strict";jJ.exports=function(r,t,a){Array.isArray(a)||(a=[].slice.call(arguments,2));for(var n=0,i=a.length;n{"use strict";XJ.exports=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))});var b_=P((rNe,qp)=>{"use strict";qp.exports=Jy;qp.exports.float32=qp.exports.float=Jy;qp.exports.fract32=qp.exports.fract=DAe;var JJ=new Float32Array(1);function DAe(e,r){if(e.length){if(e instanceof Float32Array)return new Float32Array(e.length);r instanceof Float32Array||(r=Jy(e));for(var t=0,a=r.length;t{"use strict";function FAe(e,r){var t=e==null?null:typeof Symbol!="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t!=null){var a,n,i,o,l=[],s=!0,f=!1;try{if(i=(t=t.call(e)).next,r===0){if(Object(t)!==t)return;s=!1}else for(;!(s=(a=i.call(t)).done)&&(l.push(a.value),l.length!==r);s=!0);}catch(u){f=!0,n=u}finally{try{if(!s&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(f)throw n}}return l}}function qAe(e,r){return NAe(e)||FAe(e,r)||QJ(e,r)||BAe()}function RAe(e){return PAe(e)||IAe(e)||QJ(e)||OAe()}function PAe(e){if(Array.isArray(e))return f7(e)}function NAe(e){if(Array.isArray(e))return e}function IAe(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function QJ(e,r){if(e){if(typeof e=="string")return f7(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);if(t==="Object"&&e.constructor&&(t=e.constructor.name),t==="Map"||t==="Set")return Array.from(e);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return f7(e,r)}}function f7(e,r){(r==null||r>e.length)&&(r=e.length);for(var t=0,a=new Array(r);t{"use strict";var kwe=om(),Cwe=ZT(),Lwe=bY(),Dwe=$T(),NZ=jx();IZ.exports=Fwe;function Fwe(e){if(Array.isArray(e)&&e.length===1&&typeof e[0]=="string"&&(e=e[0]),typeof e=="string"&&(NZ(Dwe(e),"String is not an SVG path."),e=kwe(e)),NZ(Array.isArray(e),"Argument should be a string or an array of path segments."),e=Cwe(e),e=Lwe(e),!e.length)return[0,0,0,0];for(var r=[1/0,1/0,-1/0,-1/0],t=0,a=e.length;tr[2]&&(r[2]=n[i+0]),n[i+1]>r[3]&&(r[3]=n[i+1]);return r}});var VZ=P((PPe,HZ)=>{var uh=Math.PI,BZ=UZ(120);HZ.exports=qwe;function qwe(e){for(var r,t=[],a=0,n=0,i=0,o=0,l=null,s=null,f=0,u=0,c=0,v=e.length;c7&&(t.push(d.splice(0,7)),d.unshift("C"));break;case"S":var y=f,m=u;(r=="C"||r=="S")&&(y+=y-a,m+=m-n),d=["C",y,m,d[1],d[2],d[3],d[4]];break;case"T":r=="Q"||r=="T"?(l=f*2-l,s=u*2-s):(l=f,s=u),d=zZ(f,u,l,s,d[1],d[2]);break;case"Q":l=d[1],s=d[2],d=zZ(f,u,d[1],d[2],d[3],d[4]);break;case"L":d=u_(f,u,d[1],d[2]);break;case"H":d=u_(f,u,d[1],u);break;case"V":d=u_(f,u,f,d[1]);break;case"Z":d=u_(f,u,i,o);break}r=p,f=d[d.length-2],u=d[d.length-1],d.length>4?(a=d[d.length-4],n=d[d.length-3]):(a=f,n=u),t.push(d)}return t}function u_(e,r,t,a){return["C",e,r,t,a,t,a]}function zZ(e,r,t,a,n,i){return["C",e/3+2/3*t,r/3+2/3*a,n/3+2/3*t,i/3+2/3*a,n,i]}function GZ(e,r,t,a,n,i,o,l,s,f){if(f)_=f[0],x=f[1],b=f[2],A=f[3];else{var u=Q8(e,r,-n);e=u.x,r=u.y,u=Q8(l,s,-n),l=u.x,s=u.y;var c=(e-l)/2,v=(r-s)/2,d=c*c/(t*t)+v*v/(a*a);d>1&&(d=Math.sqrt(d),t=d*t,a=d*a);var p=t*t,y=a*a,m=(i==o?-1:1)*Math.sqrt(Math.abs((p*y-p*v*v-y*c*c)/(p*v*v+y*c*c)));m==1/0&&(m=1);var b=m*t*v/a+(e+l)/2,A=m*-a*c/t+(r+s)/2,_=Math.asin(((r-A)/a).toFixed(9)),x=Math.asin(((s-A)/a).toFixed(9));_=ex&&(_=_-uh*2),!o&&x>_&&(x=x-uh*2)}if(Math.abs(x-_)>BZ){var T=x,E=l,S=s;x=_+BZ*(o&&x>_?1:-1),l=b+t*Math.cos(x),s=A+a*Math.sin(x);var k=GZ(l,s,t,a,n,0,o,E,S,[x,T,b,A])}var F=Math.tan((x-_)/4),I=4/3*t*F,O=4/3*a*F,q=[2*e-(e+I*Math.sin(_)),2*r-(r-O*Math.cos(_)),l+I*Math.sin(x),s-O*Math.cos(x),l,s];if(f)return q;k&&(q=q.concat(k));for(var H=0;H{var Rwe=ZT(),Pwe=VZ(),Nwe={M:"moveTo",C:"bezierCurveTo"};YZ.exports=function(e,r){e.beginPath(),Pwe(Rwe(r)).forEach(function(t){var a=t[0],n=t.slice(1);e[Nwe[a]].apply(e,n)}),e.closePath()}});var JZ=P((IPe,ZZ)=>{"use strict";var Iwe=wy();ZZ.exports=Owe;var jy=1e20;function Owe(e,r){r||(r={});var t=r.cutoff==null?.25:r.cutoff,a=r.radius==null?8:r.radius,n=r.channel||0,i,o,l,s,f,u,c,v,d,p,y;if(ArrayBuffer.isView(e)||Array.isArray(e)){if(!r.width||!r.height)throw Error("For raw data width and height should be provided by options");i=r.width,o=r.height,s=e,r.stride?u=r.stride:u=Math.floor(e.length/i/o)}else window.HTMLCanvasElement&&e instanceof window.HTMLCanvasElement?(v=e,c=v.getContext("2d"),i=v.width,o=v.height,d=c.getImageData(0,0,i,o),s=d.data,u=4):window.CanvasRenderingContext2D&&e instanceof window.CanvasRenderingContext2D?(v=e.canvas,c=e,i=v.width,o=v.height,d=c.getImageData(0,0,i,o),s=d.data,u=4):window.ImageData&&e instanceof window.ImageData&&(d=e,i=e.width,o=e.height,s=d.data,u=4);if(l=Math.max(i,o),window.Uint8ClampedArray&&s instanceof window.Uint8ClampedArray||window.Uint8Array&&s instanceof window.Uint8Array)for(f=s,s=Array(i*o),p=0,y=f.length;p{"use strict";var Bwe=OZ(),zwe=om(),Gwe=WZ(),Uwe=$T(),Hwe=JZ(),K8=document.createElement("canvas"),Io=K8.getContext("2d");$Z.exports=Vwe;function Vwe(e,r){if(!Uwe(e))throw Error("Argument should be valid svg path string");r||(r={});var t,a;r.shape?(t=r.shape[0],a=r.shape[1]):(t=K8.width=r.w||r.width||200,a=K8.height=r.h||r.height||200);var n=Math.min(t,a),i=r.stroke||0,o=r.viewbox||r.viewBox||Bwe(e),l=[t/(o[2]-o[0]),a/(o[3]-o[1])],s=Math.min(l[0]||0,l[1]||0)/2;if(Io.fillStyle="black",Io.fillRect(0,0,t,a),Io.fillStyle="white",i&&(typeof i!="number"&&(i=1),i>0?Io.strokeStyle="white":Io.strokeStyle="black",Io.lineWidth=Math.abs(i)),Io.translate(t*.5,a*.5),Io.scale(s,s),Ywe()){var f=new Path2D(e);Io.fill(f),i&&Io.stroke(f)}else{var u=zwe(e);Gwe(Io,u),Io.fill(),i&&Io.stroke()}Io.setTransform(1,0,0,1,0,0);var c=Hwe(Io,{cutoff:r.cutoff!=null?r.cutoff:.5,radius:r.radius!=null?r.radius:n*.5});return c}var c_;function Ywe(){if(c_!=null)return c_;var e=document.createElement("canvas").getContext("2d");if(e.canvas.width=e.canvas.height=1,!window.Path2D)return c_=!1;var r=new Path2D("M0,0h1v1h-1v-1Z");e.fillStyle="black",e.fill(r);var t=e.getImageData(0,0,1,1);return c_=t&&t.data&&t.data[3]===255}});var e7=P((BPe,KZ)=>{"use strict";KZ.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var aJ=P((zPe,tJ)=>{"use strict";var eJ=e7();tJ.exports=Wwe;var rJ={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function Wwe(e){var r,t=[],a=1,n;if(typeof e=="string")if(e=e.toLowerCase(),eJ[e])t=eJ[e].slice(),n="rgb";else if(e==="transparent")a=0,n="rgb",t=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var i=e.slice(1),o=i.length,l=o<=4;a=1,l?(t=[parseInt(i[0]+i[0],16),parseInt(i[1]+i[1],16),parseInt(i[2]+i[2],16)],o===4&&(a=parseInt(i[3]+i[3],16)/255)):(t=[parseInt(i[0]+i[1],16),parseInt(i[2]+i[3],16),parseInt(i[4]+i[5],16)],o===8&&(a=parseInt(i[6]+i[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),n="rgb"}else if(r=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var s=r[1],f=s==="rgb",i=s.replace(/a$/,"");n=i;var o=i==="cmyk"?4:i==="gray"?1:3;t=r[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(v,d){if(/%$/.test(v))return d===o?parseFloat(v)/100:i==="rgb"?parseFloat(v)*255/100:parseFloat(v);if(i[d]==="h"){if(/deg$/.test(v))return parseFloat(v);if(rJ[v]!==void 0)return rJ[v]}return parseFloat(v)}),s===i&&t.push(1),a=f||t[o]===void 0?1:t[o],t=t.slice(0,o)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(t=e.match(/([0-9]+)/g).map(function(u){return parseFloat(u)}),n=e.match(/([a-z])/ig).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(t=[e[0],e[1],e[2]],n="rgb",a=e.length===4?e[3]:1):e instanceof Object&&(e.r!=null||e.red!=null||e.R!=null?(n="rgb",t=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(n="hsl",t=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),a=e.a||e.alpha||e.opacity||1,e.opacity!=null&&(a/=100)):(n="rgb",t=[e>>>16,(e&65280)>>>8,e&255]);return{space:n,values:t,alpha:a}}});var iJ=P((GPe,nJ)=>{"use strict";var jwe=aJ();nJ.exports=function(r){Array.isArray(r)&&r.raw&&(r=String.raw.apply(null,arguments));var t,a,n,i=jwe(r);if(!i.space)return[];var o=[0,0,0],l=i.space[0]==="h"?[360,100,100]:[255,255,255];return t=Array(3),t[0]=Math.min(Math.max(i.values[0],o[0]),l[0]),t[1]=Math.min(Math.max(i.values[1],o[1]),l[1]),t[2]=Math.min(Math.max(i.values[2],o[2]),l[2]),i.space[0]==="h"&&(t=Xwe(t)),t.push(Math.min(Math.max(i.alpha,0),1)),t};function Xwe(e){var r=e[0]/360,t=e[1]/100,a=e[2]/100,n,i,o,l,s,f=0;if(t===0)return s=a*255,[s,s,s];for(i=a<.5?a*(1+t):a+t-a*t,n=2*a-i,l=[0,0,0];f<3;)o=r+1/3*-(f-1),o<0?o++:o>1&&o--,s=6*o<1?n+(i-n)*6*o:2*o<1?i:3*o<2?n+(i-n)*(2/3-o)*6:n,l[f++]=s*255;return l}});var ch=P((UPe,oJ)=>{"use strict";var Zwe=iJ(),v_=wy(),Jwe=px();oJ.exports=function(r,t){(t==="float"||!t)&&(t="array"),t==="uint"&&(t="uint8"),t==="uint_clamped"&&(t="uint8_clamped");var a=Jwe(t),n=new a(4),i=t!=="uint8"&&t!=="uint8_clamped";return(!r.length||typeof r=="string")&&(r=Zwe(r),r[0]/=255,r[1]/=255,r[2]/=255),$we(r)?(n[0]=r[0],n[1]=r[1],n[2]=r[2],n[3]=r[3]!=null?r[3]:255,i&&(n[0]/=255,n[1]/=255,n[2]/=255,n[3]/=255),n):(i?(n[0]=r[0],n[1]=r[1],n[2]=r[2],n[3]=r[3]!=null?r[3]:1):(n[0]=v_(Math.floor(r[0]*255),0,255),n[1]=v_(Math.floor(r[1]*255),0,255),n[2]=v_(Math.floor(r[2]*255),0,255),n[3]=r[3]==null?255:v_(Math.floor(r[3]*255),0,255)),n)};function $we(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}});var dJ=P((HPe,hJ)=>{"use strict";var cJ=ba(),Qwe=ks(),h_=ch(),d_=xd(),Kwe=Af().defaultLine,lJ=Yo().isArrayOrTypedArray,r7=h_(Kwe),vJ=1;function sJ(e,r){var t=e;return t[3]*=r,t}function fJ(e){if(cJ(e))return r7;var r=h_(e);return r.length?r:r7}function uJ(e){return cJ(e)?e:vJ}function eAe(e,r,t){var a=e.color;a&&a._inputArray&&(a=a._inputArray);var n=lJ(a),i=lJ(r),o=d_.extractOpts(e),l=[],s,f,u,c,v;if(o.colorscale!==void 0?s=d_.makeColorScaleFuncFromTrace(e):s=fJ,n?f=function(p,y){return p[y]===void 0?r7:h_(s(p[y]))}:f=fJ,i?u=function(p,y){return p[y]===void 0?vJ:uJ(p[y])}:u=uJ,n||i)for(var d=0;d{"use strict";var m_=ba(),tAe=QZ(),p_=ch(),aAe=Bt(),Lp=Ur(),Yn=Lp.isArrayOrTypedArray,kp=Ha(),pJ=kn(),mJ=dJ().formatColor,Cp=Ri(),nAe=z4(),a7=hx(),Xy=vp(),iAe=$h().DESELECTDIM,yJ={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},oAe=Cu().appendArrayPointValue;function lAe(e,r){var t,a={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0},n=e._context.plotGlPixelRatio;if(r.visible!==!0)return a;if(Cp.hasText(r)&&(a.text=TJ(e,r),a.textSel=bJ(e,r,r.selected),a.textUnsel=bJ(e,r,r.unselected)),Cp.hasMarkers(r)&&(a.marker=i7(e,r),a.markerSel=n7(e,r,r.selected),a.markerUnsel=n7(e,r,r.unselected),!r.unselected&&Yn(r.marker.opacity))){var i=r.marker.opacity;for(a.markerUnsel.opacity=new Array(i.length),t=0;t500?"bold":"normal":e}function i7(e,r){var t=r._length,a=r.marker,n={},i,o=Yn(a.symbol),l=Yn(a.angle),s=Yn(a.color),f=Yn(a.line.color),u=Yn(a.opacity),c=Yn(a.size),v=Yn(a.line.width),d;if(o||(d=a7.isOpenSymbol(a.symbol)),o||s||f||u||l){n.symbols=new Array(t),n.angles=new Array(t),n.colors=new Array(t),n.borderColors=new Array(t);var p=a.symbol,y=a.angle,m=mJ(a,a.opacity,t),b=mJ(a.line,a.opacity,t);if(!Yn(b[0])){var A=b;for(b=Array(t),i=0;iXy.TOO_MANY_POINTS||Cp.hasMarkers(r)?"rect":"round";if(f&&r.connectgaps){var c=i[0],v=i[1];for(o=0;o1?s[o]:s[0]:s,d=Yn(f)?f.length>1?f[o]:f[0]:f,p=yJ[v],y=yJ[d],m=u?u/.8+1:0,b=-y*m-y*.5;i.offset[o]=[p*m/c,b/c]}}return i}MJ.exports={style:lAe,markerStyle:i7,markerSelection:n7,linePositions:fAe,errorBarPositions:uAe,textPosition:cAe}});var EJ=P((YPe,SJ)=>{"use strict";var y_=Ur();SJ.exports=function(r,t){var a=t._scene,n={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},i={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return t._scene||(a=t._scene={},a.init=function(){y_.extendFlat(a,i,n)},a.init(),a.update=function(l){var s=y_.repeat(l,a.count);if(a.fill2d&&a.fill2d.update(s),a.scatter2d&&a.scatter2d.update(s),a.line2d&&a.line2d.update(s),a.error2d&&a.error2d.update(s.concat(s)),a.select2d&&a.select2d.update(s),a.glText)for(var f=0;f{"use strict";var vAe=XT(),Dp=Ur(),kJ=kn(),hAe=Md().findExtremes,CJ=_6(),o7=Xd(),dAe=o7.calcMarkerSize,pAe=o7.calcAxisExpansion,mAe=o7.setFirstScatter,yAe=ry(),Fp=Zy(),gAe=EJ(),LJ=Kn().BADNUM,bAe=vp().TOO_MANY_POINTS;FJ.exports=function(r,t){var a=r._fullLayout,n=t._xA=kJ.getFromId(r,t.xaxis,"x"),i=t._yA=kJ.getFromId(r,t.yaxis,"y"),o=a._plots[t.xaxis+t.yaxis],l=t._length,s=l>=bAe,f=l*2,u={},c,v=n.makeCalcdata(t,"x"),d=i.makeCalcdata(t,"y"),p=CJ(t,n,"x",v),y=CJ(t,i,"y",d),m=p.vals,b=y.vals;t._x=m,t._y=b,t.xperiodalignment&&(t._origX=v,t._xStarts=p.starts,t._xEnds=p.ends),t.yperiodalignment&&(t._origY=d,t._yStarts=y.starts,t._yEnds=y.ends);var A=new Array(f),_=new Array(l);for(c=0;c1&&Dp.extendFlat(o.line,Fp.linePositions(e,t,a)),o.errorX||o.errorY){var l=Fp.errorBarPositions(e,t,a,n,i);o.errorX&&Dp.extendFlat(o.errorX,l.x),o.errorY&&Dp.extendFlat(o.errorY,l.y)}return o.text&&(Dp.extendFlat(o.text,{positions:a},Fp.textPosition(e,t,o.text,o.marker)),Dp.extendFlat(o.textSel,{positions:a},Fp.textPosition(e,t,o.text,o.markerSel)),Dp.extendFlat(o.textUnsel,{positions:a},Fp.textPosition(e,t,o.text,o.markerUnsel))),o}});var l7=P((jPe,PJ)=>{"use strict";var RJ=Ur(),_Ae=ha(),wAe=$h().DESELECTDIM;function AAe(e){var r=e[0],t=r.trace,a=r.t,n=a._scene,i=a.index,o=n.selectBatch[i],l=n.unselectBatch[i],s=n.textOptions[i],f=n.textSelectedOptions[i]||{},u=n.textUnselectedOptions[i]||{},c=RJ.extendFlat({},s),v,d;if(o.length||l.length){var p=f.color,y=u.color,m=s.color,b=RJ.isArrayOrTypedArray(m);for(c.color=new Array(t._length),v=0;v{"use strict";var NJ=Ri(),TAe=l7().styleTextSelection;IJ.exports=function(r,t){var a=r.cd,n=r.xaxis,i=r.yaxis,o=[],l=a[0].trace,s=a[0].t,f=l._length,u=s.x,c=s.y,v=s._scene,d=s.index;if(!v)return o;var p=NJ.hasText(l),y=NJ.hasMarkers(l),m=!y&&!p;if(l.visible!==!0||m)return o;var b=[],A=[];if(t!==!1&&!t.degenerate)for(var _=0;_{"use strict";var MAe=HT();BJ.exports={moduleType:"trace",name:"scattergl",basePlotModule:sy(),categories:["gl","regl","cartesian","symbols","errorBarsOK","showLegend","scatter-like"],attributes:vx(),supplyDefaults:zV(),crossTraceDefaults:x6(),colorbar:Cb(),formatLabels:UV(),calc:qJ(),hoverPoints:MAe.hoverPoints,selectPoints:OJ(),meta:{}}});var UJ=P((JPe,b_)=>{"use strict";var g_=wy();b_.exports=GJ;b_.exports.to=GJ;b_.exports.from=SAe;function GJ(e,r){r==null&&(r=!0);var t=e[0],a=e[1],n=e[2],i=e[3];i==null&&(i=r?1:255),r&&(t*=255,a*=255,n*=255,i*=255),t=g_(t,0,255)&255,a=g_(a,0,255)&255,n=g_(n,0,255)&255,i=g_(i,0,255)&255;var o=t*16777216+(a<<16)+(n<<8)+i;return o}function SAe(e,r){e=+e;var t=e>>>24,a=(e&16711680)>>>16,n=(e&65280)>>>8,i=e&255;return r===!1?[t,a,n,i]:[t/255,a/255,n/255,i/255]}});var ni=P(($Pe,VJ)=>{"use strict";var HJ=Object.getOwnPropertySymbols,EAe=Object.prototype.hasOwnProperty,kAe=Object.prototype.propertyIsEnumerable;function CAe(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function LAe(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var r={},t=0;t<10;t++)r["_"+String.fromCharCode(t)]=t;var a=Object.getOwnPropertyNames(r).map(function(i){return r[i]});if(a.join("")!=="0123456789")return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach(function(i){n[i]=i}),Object.keys(Object.assign({},n)).join("")==="abcdefghijklmnopqrst"}catch(i){return!1}}VJ.exports=LAe()?Object.assign:function(e,r){for(var t,a=CAe(e),n,i=1;i{YJ.exports=function(e){typeof e=="string"&&(e=[e]);for(var r=[].slice.call(arguments,1),t=[],a=0;a{"use strict";jJ.exports=function(r,t,a){Array.isArray(a)||(a=[].slice.call(arguments,2));for(var n=0,i=a.length;n{"use strict";XJ.exports=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))});var x_=P((rNe,qp)=>{"use strict";qp.exports=Jy;qp.exports.float32=qp.exports.float=Jy;qp.exports.fract32=qp.exports.fract=DAe;var JJ=new Float32Array(1);function DAe(e,r){if(e.length){if(e instanceof Float32Array)return new Float32Array(e.length);r instanceof Float32Array||(r=Jy(e));for(var t=0,a=r.length;t{"use strict";function FAe(e,r){var t=e==null?null:typeof Symbol!="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t!=null){var a,n,i,o,l=[],s=!0,f=!1;try{if(i=(t=t.call(e)).next,r===0){if(Object(t)!==t)return;s=!1}else for(;!(s=(a=i.call(t)).done)&&(l.push(a.value),l.length!==r);s=!0);}catch(u){f=!0,n=u}finally{try{if(!s&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(f)throw n}}return l}}function qAe(e,r){return NAe(e)||FAe(e,r)||QJ(e,r)||BAe()}function RAe(e){return PAe(e)||IAe(e)||QJ(e)||OAe()}function PAe(e){if(Array.isArray(e))return f7(e)}function NAe(e){if(Array.isArray(e))return e}function IAe(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function QJ(e,r){if(e){if(typeof e=="string")return f7(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);if(t==="Object"&&e.constructor&&(t=e.constructor.name),t==="Map"||t==="Set")return Array.from(e);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return f7(e,r)}}function f7(e,r){(r==null||r>e.length)&&(r=e.length);for(var t=0,a=new Array(r);tle)?Z.tree=HAe(Q,{bounds:Xe}):le&&le.length&&(Z.tree=le),Z.tree){var Ae={primitive:"points",usage:"static",data:Z.tree,type:"uint32"};Z.elements?Z.elements(Ae):Z.elements=o.elements(Ae)}var rr=__.float32(Q);ce({data:rr,usage:"dynamic"});var ze=__.fract32(Q,rr);return De({data:ze,usage:"dynamic"}),Be({data:new Uint8Array(Ee),type:"uint8",usage:"stream"}),Q}},{marker:function(Q,Z,J){var le=Z.activation;if(le.forEach(function(ze){return ze&&ze.destroy&&ze.destroy()}),le.length=0,!Q||typeof Q[0]=="number"){var ce=e.addMarker(Q);le[ce]=!0}else{for(var De=[],Be=0,Ee=Math.min(Q.length,Z.count);Be=0)return n;var i;if(e instanceof Uint8Array||e instanceof Uint8ClampedArray)i=e;else{i=new Uint8Array(e.length);for(var o=0,l=e.length;oa*4&&(this.tooManyColors=!0),this.updatePalette(t),n.length===1?n[0]:n};Yi.prototype.updatePalette=function(e){if(!this.tooManyColors){var r=this.maxColors,t=this.paletteTexture,a=Math.ceil(e.length*.25/r);if(a>1){e=e.slice();for(var n=e.length*.25%r;n{"use strict";d7.exports=T_;d7.exports.default=T_;function T_(e,r,t){t=t||2;var a=r&&r.length,n=a?r[0]*t:e.length,i=r$(e,0,n,t,!0),o=[];if(!i||i.next===i.prev)return o;var l,s,f,u,c,v,d;if(a&&(i=r6e(e,r,i,t)),e.length>80*t){l=f=e[0],s=u=e[1];for(var p=t;pf&&(f=c),v>u&&(u=v);d=Math.max(f-l,u-s),d=d!==0?32767/d:0}return $y(i,o,t,l,s,d,0),o}function r$(e,r,t,a,n){var i,o;if(n===h7(e,r,t,a)>0)for(i=r;i=r;i-=a)o=e$(i,e[i],e[i+1],o);return o&&M_(o,o.next)&&(Ky(o),o=o.next),o}function dh(e,r){if(!e)return e;r||(r=e);var t=e,a;do if(a=!1,!t.steiner&&(M_(t,t.next)||Wn(t.prev,t,t.next)===0)){if(Ky(t),t=r=t.prev,t===t.next)break;a=!0}else t=t.next;while(a||t!==r);return r}function $y(e,r,t,a,n,i,o){if(e){!o&&i&&o6e(e,a,n,i);for(var l=e,s,f;e.prev!==e.next;){if(s=e.prev,f=e.next,i?QAe(e,a,n,i):$Ae(e)){r.push(s.i/t|0),r.push(e.i/t|0),r.push(f.i/t|0),Ky(e),e=f.next,l=f.next;continue}if(e=f,e===l){o?o===1?(e=KAe(dh(e),r,t),$y(e,r,t,a,n,i,2)):o===2&&e6e(e,r,t,a,n,i):$y(dh(e),r,t,a,n,i,1);break}}}}function $Ae(e){var r=e.prev,t=e,a=e.next;if(Wn(r,t,a)>=0)return!1;for(var n=r.x,i=t.x,o=a.x,l=r.y,s=t.y,f=a.y,u=ni?n>o?n:o:i>o?i:o,d=l>s?l>f?l:f:s>f?s:f,p=a.next;p!==r;){if(p.x>=u&&p.x<=v&&p.y>=c&&p.y<=d&&Rp(n,l,i,s,o,f,p.x,p.y)&&Wn(p.prev,p,p.next)>=0)return!1;p=p.next}return!0}function QAe(e,r,t,a){var n=e.prev,i=e,o=e.next;if(Wn(n,i,o)>=0)return!1;for(var l=n.x,s=i.x,f=o.x,u=n.y,c=i.y,v=o.y,d=ls?l>f?l:f:s>f?s:f,m=u>c?u>v?u:v:c>v?c:v,b=c7(d,p,r,t,a),A=c7(y,m,r,t,a),_=e.prevZ,x=e.nextZ;_&&_.z>=b&&x&&x.z<=A;){if(_.x>=d&&_.x<=y&&_.y>=p&&_.y<=m&&_!==n&&_!==o&&Rp(l,u,s,c,f,v,_.x,_.y)&&Wn(_.prev,_,_.next)>=0||(_=_.prevZ,x.x>=d&&x.x<=y&&x.y>=p&&x.y<=m&&x!==n&&x!==o&&Rp(l,u,s,c,f,v,x.x,x.y)&&Wn(x.prev,x,x.next)>=0))return!1;x=x.nextZ}for(;_&&_.z>=b;){if(_.x>=d&&_.x<=y&&_.y>=p&&_.y<=m&&_!==n&&_!==o&&Rp(l,u,s,c,f,v,_.x,_.y)&&Wn(_.prev,_,_.next)>=0)return!1;_=_.prevZ}for(;x&&x.z<=A;){if(x.x>=d&&x.x<=y&&x.y>=p&&x.y<=m&&x!==n&&x!==o&&Rp(l,u,s,c,f,v,x.x,x.y)&&Wn(x.prev,x,x.next)>=0)return!1;x=x.nextZ}return!0}function KAe(e,r,t){var a=e;do{var n=a.prev,i=a.next.next;!M_(n,i)&&t$(n,a,a.next,i)&&Qy(n,i)&&Qy(i,n)&&(r.push(n.i/t|0),r.push(a.i/t|0),r.push(i.i/t|0),Ky(a),Ky(a.next),a=e=i),a=a.next}while(a!==e);return dh(a)}function e6e(e,r,t,a,n,i){var o=e;do{for(var l=o.next.next;l!==o.prev;){if(o.i!==l.i&&f6e(o,l)){var s=a$(o,l);o=dh(o,o.next),s=dh(s,s.next),$y(o,r,t,a,n,i,0),$y(s,r,t,a,n,i,0);return}l=l.next}o=o.next}while(o!==e)}function r6e(e,r,t,a){var n=[],i,o,l,s,f;for(i=0,o=r.length;i=t.next.y&&t.next.y!==t.y){var l=t.x+(n-t.y)*(t.next.x-t.x)/(t.next.y-t.y);if(l<=a&&l>i&&(i=l,o=t.x=t.x&&t.x>=f&&a!==t.x&&Rp(no.x||t.x===o.x&&i6e(o,t)))&&(o=t,c=v)),t=t.next;while(t!==s);return o}function i6e(e,r){return Wn(e.prev,e,r.prev)<0&&Wn(r.next,e,e.next)<0}function o6e(e,r,t,a){var n=e;do n.z===0&&(n.z=c7(n.x,n.y,r,t,a)),n.prevZ=n.prev,n.nextZ=n.next,n=n.next;while(n!==e);n.prevZ.nextZ=null,n.prevZ=null,l6e(n)}function l6e(e){var r,t,a,n,i,o,l,s,f=1;do{for(t=e,e=null,i=null,o=0;t;){for(o++,a=t,l=0,r=0;r0||s>0&&a;)l!==0&&(s===0||!a||t.z<=a.z)?(n=t,t=t.nextZ,l--):(n=a,a=a.nextZ,s--),i?i.nextZ=n:e=n,n.prevZ=i,i=n;t=a}i.nextZ=null,f*=2}while(o>1);return e}function c7(e,r,t,a,n){return e=(e-t)*n|0,r=(r-a)*n|0,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,r=(r|r<<8)&16711935,r=(r|r<<4)&252645135,r=(r|r<<2)&858993459,r=(r|r<<1)&1431655765,e|r<<1}function s6e(e){var r=e,t=e;do(r.x=(e-o)*(i-l)&&(e-o)*(a-l)>=(t-o)*(r-l)&&(t-o)*(i-l)>=(n-o)*(a-l)}function f6e(e,r){return e.next.i!==r.i&&e.prev.i!==r.i&&!u6e(e,r)&&(Qy(e,r)&&Qy(r,e)&&c6e(e,r)&&(Wn(e.prev,e,r.prev)||Wn(e,r.prev,r))||M_(e,r)&&Wn(e.prev,e,e.next)>0&&Wn(r.prev,r,r.next)>0)}function Wn(e,r,t){return(r.y-e.y)*(t.x-r.x)-(r.x-e.x)*(t.y-r.y)}function M_(e,r){return e.x===r.x&&e.y===r.y}function t$(e,r,t,a){var n=A_(Wn(e,r,t)),i=A_(Wn(e,r,a)),o=A_(Wn(t,a,e)),l=A_(Wn(t,a,r));return!!(n!==i&&o!==l||n===0&&w_(e,t,r)||i===0&&w_(e,a,r)||o===0&&w_(t,e,a)||l===0&&w_(t,r,a))}function w_(e,r,t){return r.x<=Math.max(e.x,t.x)&&r.x>=Math.min(e.x,t.x)&&r.y<=Math.max(e.y,t.y)&&r.y>=Math.min(e.y,t.y)}function A_(e){return e>0?1:e<0?-1:0}function u6e(e,r){var t=e;do{if(t.i!==e.i&&t.next.i!==e.i&&t.i!==r.i&&t.next.i!==r.i&&t$(t,t.next,e,r))return!0;t=t.next}while(t!==e);return!1}function Qy(e,r){return Wn(e.prev,e,e.next)<0?Wn(e,r,e.next)>=0&&Wn(e,e.prev,r)>=0:Wn(e,r,e.prev)<0||Wn(e,e.next,r)<0}function c6e(e,r){var t=e,a=!1,n=(e.x+r.x)/2,i=(e.y+r.y)/2;do t.y>i!=t.next.y>i&&t.next.y!==t.y&&n<(t.next.x-t.x)*(i-t.y)/(t.next.y-t.y)+t.x&&(a=!a),t=t.next;while(t!==e);return a}function a$(e,r){var t=new v7(e.i,e.x,e.y),a=new v7(r.i,r.x,r.y),n=e.next,i=r.prev;return e.next=r,r.prev=e,t.next=n,n.prev=t,a.next=t,t.prev=a,i.next=a,a.prev=i,a}function e$(e,r,t,a){var n=new v7(e,r,t);return a?(n.next=a.next,n.prev=a,a.next.prev=n,a.next=n):(n.prev=n,n.next=n),n}function Ky(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function v7(e,r,t){this.i=e,this.x=r,this.y=t,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}T_.deviation=function(e,r,t,a){var n=r&&r.length,i=n?r[0]*t:e.length,o=Math.abs(h7(e,0,i,t));if(n)for(var l=0,s=r.length;l0&&(a+=e[n-1].length,t.holes.push(a))}return t}});var o$=P((nNe,i$)=>{"use strict";var v6e=ah();i$.exports=h6e;function h6e(e,r,t){if(!e||e.length==null)throw Error("Argument should be an array");r==null&&(r=1),t==null&&(t=v6e(e,r));for(var a=0;a{"use strict";l$.exports=function(){var e,r;if(typeof WeakMap!="function")return!1;try{e=new WeakMap([[r={},"one"],[{},"two"],[{},"three"]])}catch(t){return!1}return!(String(e)!=="[object WeakMap]"||typeof e.set!="function"||e.set({},1)!==e||typeof e.delete!="function"||typeof e.has!="function"||e.get(r)!=="one")}});var u$=P((oNe,f$)=>{"use strict";f$.exports=function(){}});var pv=P((lNe,c$)=>{"use strict";var d6e=u$()();c$.exports=function(e){return e!==d6e&&e!==null}});var p7=P((sNe,h$)=>{"use strict";var p6e=Object.create,m6e=Object.getPrototypeOf,v$={};h$.exports=function(){var e=Object.setPrototypeOf,r=arguments[0]||p6e;return typeof e!="function"?!1:m6e(e(r(null),v$))===v$}});var m7=P((fNe,d$)=>{"use strict";var y6e=pv(),g6e={function:!0,object:!0};d$.exports=function(e){return y6e(e)&&g6e[typeof e]||!1}});var Gu=P((uNe,p$)=>{"use strict";var b6e=pv();p$.exports=function(e){if(!b6e(e))throw new TypeError("Cannot use null or undefined");return e}});var y$=P((cNe,m$)=>{"use strict";var y7=Object.create,S_;p7()()||(S_=g7());m$.exports=function(){var e,r,t;return!S_||S_.level!==1?y7:(e={},r={},t={configurable:!1,enumerable:!1,writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(a){if(a==="__proto__"){r[a]={configurable:!0,enumerable:!1,writable:!0,value:void 0};return}r[a]=t}),Object.defineProperties(e,r),Object.defineProperty(S_,"nullPolyfill",{configurable:!1,enumerable:!1,writable:!1,value:e}),function(a,n){return y7(a===null?e:a,n)})}()});var g7=P((vNe,g$)=>{"use strict";var x6e=m7(),_6e=Gu(),w6e=Object.prototype.isPrototypeOf,A6e=Object.defineProperty,T6e={configurable:!0,enumerable:!1,writable:!0,value:void 0},E_;E_=function(e,r){if(_6e(e),r===null||x6e(r))return e;throw new TypeError("Prototype must be null or an object")};g$.exports=function(e){var r,t;return e?(e.level===2?e.set?(t=e.set,r=function(a,n){return t.call(E_(a,n),n),a}):r=function(a,n){return E_(a,n).__proto__=n,a}:r=function a(n,i){var o;return E_(n,i),o=w6e.call(a.nullPolyfill,n),o&&delete a.nullPolyfill.__proto__,i===null&&(i=a.nullPolyfill),n.__proto__=i,o&&A6e(a.nullPolyfill,"__proto__",T6e),n},Object.defineProperty(r,"level",{configurable:!1,enumerable:!1,writable:!1,value:e.level})):null}(function(){var e=Object.create(null),r={},t,a=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__");if(a){try{t=a.set,t.call(e,r)}catch(n){}if(Object.getPrototypeOf(e)===r)return{set:t,level:2}}return e.__proto__=r,Object.getPrototypeOf(e)===r?{level:2}:(e={},e.__proto__=r,Object.getPrototypeOf(e)===r?{level:1}:!1)}());y$()});var k_=P((hNe,b$)=>{"use strict";b$.exports=p7()()?Object.setPrototypeOf:g7()});var _$=P((dNe,x$)=>{"use strict";var M6e=m7();x$.exports=function(e){if(!M6e(e))throw new TypeError(e+" is not an Object");return e}});var A$=P((pNe,w$)=>{"use strict";var S6e=Object.create(null),E6e=Math.random;w$.exports=function(){var e;do e=E6e().toString(36).slice(2);while(S6e[e]);return e}});var ph=P((mNe,T$)=>{"use strict";var k6e=void 0;T$.exports=function(e){return e!==k6e&&e!==null}});var C_=P((yNe,M$)=>{"use strict";var C6e=ph(),L6e={object:!0,function:!0,undefined:!0};M$.exports=function(e){return C6e(e)?hasOwnProperty.call(L6e,typeof e):!1}});var E$=P((gNe,S$)=>{"use strict";var D6e=C_();S$.exports=function(e){if(!D6e(e))return!1;try{return e.constructor?e.constructor.prototype===e:!1}catch(r){return!1}}});var C$=P((bNe,k$)=>{"use strict";var F6e=E$();k$.exports=function(e){if(typeof e!="function"||!hasOwnProperty.call(e,"length"))return!1;try{if(typeof e.length!="number"||typeof e.call!="function"||typeof e.apply!="function")return!1}catch(r){return!1}return!F6e(e)}});var b7=P((xNe,L$)=>{"use strict";var q6e=C$(),R6e=/^\s*class[\s{/}]/,P6e=Function.prototype.toString;L$.exports=function(e){return!(!q6e(e)||R6e.test(P6e.call(e)))}});var F$=P((_Ne,D$)=>{"use strict";D$.exports=function(){var e=Object.assign,r;return typeof e!="function"?!1:(r={foo:"raz"},e(r,{bar:"dwa"},{trzy:"trzy"}),r.foo+r.bar+r.trzy==="razdwatrzy")}});var R$=P((wNe,q$)=>{"use strict";q$.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}});var N$=P((ANe,P$)=>{"use strict";var N6e=pv(),I6e=Object.keys;P$.exports=function(e){return I6e(N6e(e)?Object(e):e)}});var O$=P((TNe,I$)=>{"use strict";I$.exports=R$()()?Object.keys:N$()});var z$=P((MNe,B$)=>{"use strict";var O6e=O$(),B6e=Gu(),z6e=Math.max;B$.exports=function(e,r){var t,a,n=z6e(arguments.length,2),i;for(e=Object(B6e(e)),i=function(o){try{e[o]=r[o]}catch(l){t||(t=l)}},a=1;a{"use strict";G$.exports=F$()()?Object.assign:z$()});var x7=P((ENe,U$)=>{"use strict";var G6e=pv(),U6e=Array.prototype.forEach,H6e=Object.create,V6e=function(e,r){var t;for(t in e)r[t]=e[t]};U$.exports=function(e){var r=H6e(null);return U6e.call(arguments,function(t){G6e(t)&&V6e(Object(t),r)}),r}});var V$=P((kNe,H$)=>{"use strict";var _7="razdwatrzy";H$.exports=function(){return typeof _7.contains!="function"?!1:_7.contains("dwa")===!0&&_7.contains("foo")===!1}});var W$=P((CNe,Y$)=>{"use strict";var Y6e=String.prototype.indexOf;Y$.exports=function(e){return Y6e.call(this,e,arguments[1])>-1}});var w7=P((LNe,j$)=>{"use strict";j$.exports=V$()()?String.prototype.contains:W$()});var Uu=P((DNe,$$)=>{"use strict";var D_=ph(),X$=b7(),Z$=L_(),J$=x7(),eg=w7(),W6e=$$.exports=function(e,r){var t,a,n,i,o;return arguments.length<2||typeof e!="string"?(i=r,r=e,e=null):i=arguments[2],D_(e)?(t=eg.call(e,"c"),a=eg.call(e,"e"),n=eg.call(e,"w")):(t=n=!0,a=!1),o={value:r,configurable:t,enumerable:a,writable:n},i?Z$(J$(i),o):o};W6e.gs=function(e,r,t){var a,n,i,o;return typeof e!="string"?(i=t,t=r,r=e,e=null):i=arguments[3],D_(r)?X$(r)?D_(t)?X$(t)||(i=t,t=void 0):t=void 0:(i=r,r=t=void 0):r=void 0,D_(e)?(a=eg.call(e,"c"),n=eg.call(e,"e")):(a=!0,n=!1),o={get:r,set:t,configurable:a,enumerable:n},i?Z$(J$(i),o):o}});var rg=P((FNe,K$)=>{"use strict";var Q$=Object.prototype.toString,j6e=Q$.call(function(){return arguments}());K$.exports=function(e){return Q$.call(e)===j6e}});var tg=P((qNe,rQ)=>{"use strict";var eQ=Object.prototype.toString,X6e=eQ.call("");rQ.exports=function(e){return typeof e=="string"||e&&typeof e=="object"&&(e instanceof String||eQ.call(e)===X6e)||!1}});var aQ=P((RNe,tQ)=>{"use strict";tQ.exports=function(){return typeof globalThis!="object"||!globalThis?!1:globalThis.Array===Array}});var oQ=P((PNe,iQ)=>{var nQ=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};iQ.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch(e){return nQ()}try{return __global__||nQ()}finally{delete Object.prototype.__global__}}()});var ag=P((NNe,lQ)=>{"use strict";lQ.exports=aQ()()?globalThis:oQ()});var fQ=P((INe,sQ)=>{"use strict";var Z6e=ag(),A7={object:!0,symbol:!0};sQ.exports=function(){var e=Z6e.Symbol,r;if(typeof e!="function")return!1;r=e("test symbol");try{String(r)}catch(t){return!1}return!(!A7[typeof e.iterator]||!A7[typeof e.toPrimitive]||!A7[typeof e.toStringTag])}});var cQ=P((ONe,uQ)=>{"use strict";uQ.exports=function(e){return e?typeof e=="symbol"?!0:!e.constructor||e.constructor.name!=="Symbol"?!1:e[e.constructor.toStringTag]==="Symbol":!1}});var T7=P((BNe,vQ)=>{"use strict";var J6e=cQ();vQ.exports=function(e){if(!J6e(e))throw new TypeError(e+" is not a symbol");return e}});var yQ=P((zNe,mQ)=>{"use strict";var hQ=Uu(),$6e=Object.create,dQ=Object.defineProperty,Q6e=Object.prototype,pQ=$6e(null);mQ.exports=function(e){for(var r=0,t,a;pQ[e+(r||"")];)++r;return e+=r||"",pQ[e]=!0,t="@@"+e,dQ(Q6e,t,hQ.gs(null,function(n){a||(a=!0,dQ(this,t,hQ(n)),a=!1)})),t}});var bQ=P((GNe,gQ)=>{"use strict";var Ks=Uu(),ii=ag().Symbol;gQ.exports=function(e){return Object.defineProperties(e,{hasInstance:Ks("",ii&&ii.hasInstance||e("hasInstance")),isConcatSpreadable:Ks("",ii&&ii.isConcatSpreadable||e("isConcatSpreadable")),iterator:Ks("",ii&&ii.iterator||e("iterator")),match:Ks("",ii&&ii.match||e("match")),replace:Ks("",ii&&ii.replace||e("replace")),search:Ks("",ii&&ii.search||e("search")),species:Ks("",ii&&ii.species||e("species")),split:Ks("",ii&&ii.split||e("split")),toPrimitive:Ks("",ii&&ii.toPrimitive||e("toPrimitive")),toStringTag:Ks("",ii&&ii.toStringTag||e("toStringTag")),unscopables:Ks("",ii&&ii.unscopables||e("unscopables"))})}});var wQ=P((UNe,_Q)=>{"use strict";var xQ=Uu(),K6e=T7(),ng=Object.create(null);_Q.exports=function(e){return Object.defineProperties(e,{for:xQ(function(r){return ng[r]?ng[r]:ng[r]=e(String(r))}),keyFor:xQ(function(r){var t;K6e(r);for(t in ng)if(ng[t]===r)return t})})}});var MQ=P((HNe,TQ)=>{"use strict";var Of=Uu(),M7=T7(),F_=ag().Symbol,eTe=yQ(),rTe=bQ(),tTe=wQ(),aTe=Object.create,S7=Object.defineProperties,q_=Object.defineProperty,wo,Pp,AQ;if(typeof F_=="function")try{String(F_()),AQ=!0}catch(e){}else F_=null;Pp=function(r){if(this instanceof Pp)throw new TypeError("Symbol is not a constructor");return wo(r)};TQ.exports=wo=function e(r){var t;if(this instanceof e)throw new TypeError("Symbol is not a constructor");return AQ?F_(r):(t=aTe(Pp.prototype),r=r===void 0?"":String(r),S7(t,{__description__:Of("",r),__name__:Of("",eTe(r))}))};rTe(wo);tTe(wo);S7(Pp.prototype,{constructor:Of(wo),toString:Of("",function(){return this.__name__})});S7(wo.prototype,{toString:Of(function(){return"Symbol ("+M7(this).__description__+")"}),valueOf:Of(function(){return M7(this)})});q_(wo.prototype,wo.toPrimitive,Of("",function(){var e=M7(this);return typeof e=="symbol"?e:e.toString()}));q_(wo.prototype,wo.toStringTag,Of("c","Symbol"));q_(Pp.prototype,wo.toStringTag,Of("c",wo.prototype[wo.toStringTag]));q_(Pp.prototype,wo.toPrimitive,Of("c",wo.prototype[wo.toPrimitive]))});var mv=P((VNe,SQ)=>{"use strict";SQ.exports=fQ()()?ag().Symbol:MQ()});var kQ=P((YNe,EQ)=>{"use strict";var nTe=Gu();EQ.exports=function(){return nTe(this).length=0,this}});var Np=P((WNe,CQ)=>{"use strict";CQ.exports=function(e){if(typeof e!="function")throw new TypeError(e+" is not a function");return e}});var DQ=P((jNe,LQ)=>{"use strict";var iTe=ph(),oTe=C_(),lTe=Object.prototype.toString;LQ.exports=function(e){if(!iTe(e))return null;if(oTe(e)){var r=e.toString;if(typeof r!="function"||r===lTe)return null}try{return""+e}catch(t){return null}}});var qQ=P((XNe,FQ)=>{"use strict";FQ.exports=function(e){try{return e.toString()}catch(r){try{return String(e)}catch(t){return null}}}});var PQ=P((ZNe,RQ)=>{"use strict";var sTe=qQ(),fTe=/[\n\r\u2028\u2029]/g;RQ.exports=function(e){var r=sTe(e);return r===null?"":(r.length>100&&(r=r.slice(0,99)+"\u2026"),r=r.replace(fTe,function(t){switch(t){case` -`:return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}}),r)}});var E7=P((JNe,OQ)=>{"use strict";var NQ=ph(),uTe=C_(),cTe=DQ(),vTe=PQ(),IQ=function(e,r){return e.replace("%v",vTe(r))};OQ.exports=function(e,r,t){if(!uTe(t))throw new TypeError(IQ(r,e));if(!NQ(e)){if("default"in t)return t.default;if(t.isOptional)return null}var a=cTe(t.errorMessage);throw NQ(a)||(a=r),new TypeError(IQ(a,e))}});var zQ=P(($Ne,BQ)=>{"use strict";var hTe=E7(),dTe=ph();BQ.exports=function(e){return dTe(e)?e:hTe(e,"Cannot use %v",arguments[1])}});var UQ=P((QNe,GQ)=>{"use strict";var pTe=E7(),mTe=b7();GQ.exports=function(e){return mTe(e)?e:pTe(e,"%v is not a plain function",arguments[1])}});var VQ=P((KNe,HQ)=>{"use strict";HQ.exports=function(){var e=Array.from,r,t;return typeof e!="function"?!1:(r=["raz","dwa"],t=e(r),!!(t&&t!==r&&t[1]==="dwa"))}});var WQ=P((eIe,YQ)=>{"use strict";var yTe=Object.prototype.toString,gTe=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);YQ.exports=function(e){return typeof e=="function"&&gTe(yTe.call(e))}});var XQ=P((rIe,jQ)=>{"use strict";jQ.exports=function(){var e=Math.sign;return typeof e!="function"?!1:e(10)===1&&e(-20)===-1}});var JQ=P((tIe,ZQ)=>{"use strict";ZQ.exports=function(e){return e=Number(e),isNaN(e)||e===0?e:e>0?1:-1}});var QQ=P((aIe,$Q)=>{"use strict";$Q.exports=XQ()()?Math.sign:JQ()});var eK=P((nIe,KQ)=>{"use strict";var bTe=QQ(),xTe=Math.abs,_Te=Math.floor;KQ.exports=function(e){return isNaN(e)?0:(e=Number(e),e===0||!isFinite(e)?e:bTe(e)*_Te(xTe(e)))}});var tK=P((iIe,rK)=>{"use strict";var wTe=eK(),ATe=Math.max;rK.exports=function(e){return ATe(0,wTe(e))}});var oK=P((oIe,iK)=>{"use strict";var TTe=mv().iterator,MTe=rg(),STe=WQ(),ETe=tK(),aK=Np(),kTe=Gu(),CTe=pv(),LTe=tg(),nK=Array.isArray,k7=Function.prototype.call,mh={configurable:!0,enumerable:!0,writable:!0,value:null},C7=Object.defineProperty;iK.exports=function(e){var r=arguments[1],t=arguments[2],a,n,i,o,l,s,f,u,c,v;if(e=Object(kTe(e)),CTe(r)&&aK(r),!this||this===Array||!STe(this)){if(!r){if(MTe(e))return l=e.length,l!==1?Array.apply(null,e):(o=new Array(1),o[0]=e[0],o);if(nK(e)){for(o=new Array(l=e.length),n=0;n=55296&&s<=56319&&(v+=e[++n])),v=r?k7.call(r,t,v,i):v,a?(mh.value=v,C7(o,i,mh)):o[i]=v,++i;l=i}}if(l===void 0)for(l=ETe(e.length),a&&(o=new a(l)),n=0;n{"use strict";lK.exports=VQ()()?Array.from:oK()});var uK=P((sIe,fK)=>{"use strict";var DTe=sK(),FTe=L_(),qTe=Gu();fK.exports=function(e){var r=Object(qTe(e)),t=arguments[1],a=Object(arguments[2]);if(r!==e&&!t)return r;var n={};return t?DTe(t,function(i){(a.ensure||i in e)&&(n[i]=e[i])}):FTe(n,e),n}});var hK=P((fIe,vK)=>{"use strict";var RTe=Np(),PTe=Gu(),NTe=Function.prototype.bind,cK=Function.prototype.call,ITe=Object.keys,OTe=Object.prototype.propertyIsEnumerable;vK.exports=function(e,r){return function(t,a){var n,i=arguments[2],o=arguments[3];return t=Object(PTe(t)),RTe(a),n=ITe(t),o&&n.sort(typeof o=="function"?NTe.call(o,t):void 0),typeof e!="function"&&(e=n[e]),cK.call(e,n,function(l,s){return OTe.call(t,l)?cK.call(a,i,t[l],l,t,s):r})}}});var pK=P((uIe,dK)=>{"use strict";dK.exports=hK()("forEach")});var yK=P((cIe,mK)=>{"use strict";var BTe=Np(),zTe=pK(),GTe=Function.prototype.call;mK.exports=function(e,r){var t={},a=arguments[2];return BTe(r),zTe(e,function(n,i,o,l){t[i]=GTe.call(r,a,n,i,o,l)}),t}});var _K=P((vIe,xK)=>{"use strict";var UTe=ph(),HTe=zQ(),gK=UQ(),VTe=uK(),YTe=x7(),WTe=yK(),jTe=Function.prototype.bind,XTe=Object.defineProperty,ZTe=Object.prototype.hasOwnProperty,bK;bK=function(e,r,t){var a=HTe(r)&&gK(r.value),n;return n=VTe(r),delete n.writable,delete n.value,n.get=function(){return!t.overwriteDefinition&&ZTe.call(this,e)?a:(r.value=jTe.call(a,t.resolveContext?t.resolveContext(this):this),XTe(this,e,r),this[e])},n};xK.exports=function(e){var r=YTe(arguments[1]);return UTe(r.resolveContext)&&gK(r.resolveContext),WTe(e,function(t,a){return bK(a,t,r)})}});var L7=P((hIe,MK)=>{"use strict";var JTe=kQ(),$Te=L_(),QTe=Np(),KTe=Gu(),al=Uu(),e8e=_K(),wK=mv(),AK=Object.defineProperty,TK=Object.defineProperties,ig;MK.exports=ig=function(e,r){if(!(this instanceof ig))throw new TypeError("Constructor requires 'new'");TK(this,{__list__:al("w",KTe(e)),__context__:al("w",r),__nextIndex__:al("w",0)}),r&&(QTe(r.on),r.on("_add",this._onAdd),r.on("_delete",this._onDelete),r.on("_clear",this._onClear))};delete ig.prototype.constructor;TK(ig.prototype,$Te({_next:al(function(){var e;if(this.__list__){if(this.__redo__&&(e=this.__redo__.shift(),e!==void 0))return e;if(this.__nextIndex__=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__){AK(this,"__redo__",al("c",[e]));return}this.__redo__.forEach(function(r,t){r>=e&&(this.__redo__[t]=++r)},this),this.__redo__.push(e)}}),_onDelete:al(function(e){var r;e>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(r=this.__redo__.indexOf(e),r!==-1&&this.__redo__.splice(r,1),this.__redo__.forEach(function(t,a){t>e&&(this.__redo__[a]=--t)},this)))}),_onClear:al(function(){this.__redo__&&JTe.call(this.__redo__),this.__nextIndex__=0})})));AK(ig.prototype,wK.iterator,al(function(){return this}))});var LK=P((dIe,CK)=>{"use strict";var SK=k_(),EK=w7(),D7=Uu(),r8e=mv(),F7=L7(),kK=Object.defineProperty,Ip;Ip=CK.exports=function(e,r){if(!(this instanceof Ip))throw new TypeError("Constructor requires 'new'");F7.call(this,e),r?EK.call(r,"key+value")?r="key+value":EK.call(r,"key")?r="key":r="value":r="value",kK(this,"__kind__",D7("",r))};SK&&SK(Ip,F7);delete Ip.prototype.constructor;Ip.prototype=Object.create(F7.prototype,{_resolve:D7(function(e){return this.__kind__==="value"?this.__list__[e]:this.__kind__==="key+value"?[e,this.__list__[e]]:e})});kK(Ip.prototype,r8e.toStringTag,D7("c","Array Iterator"))});var RK=P((pIe,qK)=>{"use strict";var DK=k_(),R_=Uu(),t8e=mv(),q7=L7(),FK=Object.defineProperty,Op;Op=qK.exports=function(e){if(!(this instanceof Op))throw new TypeError("Constructor requires 'new'");e=String(e),q7.call(this,e),FK(this,"__length__",R_("",e.length))};DK&&DK(Op,q7);delete Op.prototype.constructor;Op.prototype=Object.create(q7.prototype,{_next:R_(function(){if(this.__list__){if(this.__nextIndex__=55296&&t<=56319?r+this.__list__[this.__nextIndex__++]:r)})});FK(Op.prototype,t8e.toStringTag,R_("c","String Iterator"))});var NK=P((mIe,PK)=>{"use strict";var a8e=rg(),n8e=pv(),i8e=tg(),o8e=mv().iterator,l8e=Array.isArray;PK.exports=function(e){return n8e(e)?l8e(e)||i8e(e)||a8e(e)?!0:typeof e[o8e]=="function":!1}});var OK=P((yIe,IK)=>{"use strict";var s8e=NK();IK.exports=function(e){if(!s8e(e))throw new TypeError(e+" is not iterable");return e}});var R7=P((gIe,GK)=>{"use strict";var f8e=rg(),u8e=tg(),BK=LK(),c8e=RK(),v8e=OK(),zK=mv().iterator;GK.exports=function(e){return typeof v8e(e)[zK]=="function"?e[zK]():f8e(e)?new BK(e):u8e(e)?new c8e(e):new BK(e)}});var HK=P((bIe,UK)=>{"use strict";var h8e=rg(),d8e=Np(),p8e=tg(),m8e=R7(),y8e=Array.isArray,P7=Function.prototype.call,g8e=Array.prototype.some;UK.exports=function(e,r){var t,a=arguments[2],n,i,o,l,s,f,u;if(y8e(e)||h8e(e)?t="array":p8e(e)?t="string":e=m8e(e),d8e(r),i=function(){o=!0},t==="array"){g8e.call(e,function(c){return P7.call(r,a,c,i),o});return}if(t==="string"){for(s=e.length,l=0;l=55296&&u<=56319&&(f+=e[++l])),P7.call(r,a,f,i),!o);++l);return}for(n=e.next();!n.done;){if(P7.call(r,a,n.value,i),o)return;n=e.next()}}});var YK=P((xIe,VK)=>{"use strict";VK.exports=function(){return typeof WeakMap!="function"?!1:Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"}()});var XK=P((_Ie,jK)=>{"use strict";var b8e=pv(),N_=k_(),P_=_$(),x8e=Gu(),_8e=A$(),Hu=Uu(),w8e=R7(),A8e=HK(),T8e=mv().toStringTag,WK=YK(),M8e=Array.isArray,I7=Object.defineProperty,N7=Object.prototype.hasOwnProperty,S8e=Object.getPrototypeOf,yv;jK.exports=yv=function(){var e=arguments[0],r;if(!(this instanceof yv))throw new TypeError("Constructor requires 'new'");return r=WK&&N_&&WeakMap!==yv?N_(new WeakMap,S8e(this)):this,b8e(e)&&(M8e(e)||(e=w8e(e))),I7(r,"__weakMapData__",Hu("c","$weakMap$"+_8e())),e&&A8e(e,function(t){x8e(t),r.set(t[0],t[1])}),r};WK&&(N_&&N_(yv,WeakMap),yv.prototype=Object.create(WeakMap.prototype,{constructor:Hu(yv)}));Object.defineProperties(yv.prototype,{delete:Hu(function(e){return N7.call(P_(e),this.__weakMapData__)?(delete e[this.__weakMapData__],!0):!1}),get:Hu(function(e){if(N7.call(P_(e),this.__weakMapData__))return e[this.__weakMapData__]}),has:Hu(function(e){return N7.call(P_(e),this.__weakMapData__)}),set:Hu(function(e,r){return I7(P_(e),this.__weakMapData__,Hu("c",r)),this}),toString:Hu(function(){return"[object WeakMap]"})});I7(yv.prototype,T8e,Hu("c","WeakMap"))});var O7=P((wIe,ZK)=>{"use strict";ZK.exports=s$()()?WeakMap:XK()});var $K=P((AIe,JK)=>{"use strict";JK.exports=function(e,r,t){if(typeof Array.prototype.findIndex=="function")return e.findIndex(r,t);if(typeof r!="function")throw new TypeError("predicate must be a function");var a=Object(e),n=a.length;if(n===0)return-1;for(var i=0;i{"use strict";var I_=ch(),E8e=ah(),z7=ni(),k8e=If(),C8e=nh(),QK=n$(),L8e=o$(),{float32:D8e,fract32:B7}=b_(),F8e=O7(),KK=hp(),q8e=$K(),R8e=` +`]),$J&&(p.frag=p.frag.replace("smoothstep","smoothStep"),d.frag=d.frag.replace("smoothstep","smoothStep")),this.drawCircle=e(p)}Yi.defaults={color:"black",borderColor:"transparent",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4};Yi.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this};Yi.prototype.draw=function(){for(var e=this,r=arguments.length,t=new Array(r),a=0;aae)?J.tree=HAe(Q,{bounds:Xe}):ae&&ae.length&&(J.tree=ae),J.tree){var Ae={primitive:"points",usage:"static",data:J.tree,type:"uint32"};J.elements?J.elements(Ae):J.elements=o.elements(Ae)}var rr=w_.float32(Q);ue({data:rr,usage:"dynamic"});var ze=w_.fract32(Q,rr);return Le({data:ze,usage:"dynamic"}),Be({data:new Uint8Array(Ee),type:"uint8",usage:"stream"}),Q}},{marker:function(Q,J,Z){var ae=J.activation;if(ae.forEach(function(ze){return ze&&ze.destroy&&ze.destroy()}),ae.length=0,!Q||typeof Q[0]=="number"){var ue=e.addMarker(Q);ae[ue]=!0}else{for(var Le=[],Be=0,Ee=Math.min(Q.length,J.count);Be=0)return n;var i;if(e instanceof Uint8Array||e instanceof Uint8ClampedArray)i=e;else{i=new Uint8Array(e.length);for(var o=0,l=e.length;oa*4&&(this.tooManyColors=!0),this.updatePalette(t),n.length===1?n[0]:n};Yi.prototype.updatePalette=function(e){if(!this.tooManyColors){var r=this.maxColors,t=this.paletteTexture,a=Math.ceil(e.length*.25/r);if(a>1){e=e.slice();for(var n=e.length*.25%r;n{"use strict";d7.exports=M_;d7.exports.default=M_;function M_(e,r,t){t=t||2;var a=r&&r.length,n=a?r[0]*t:e.length,i=r$(e,0,n,t,!0),o=[];if(!i||i.next===i.prev)return o;var l,s,f,u,c,v,d;if(a&&(i=r6e(e,r,i,t)),e.length>80*t){l=f=e[0],s=u=e[1];for(var p=t;pf&&(f=c),v>u&&(u=v);d=Math.max(f-l,u-s),d=d!==0?32767/d:0}return $y(i,o,t,l,s,d,0),o}function r$(e,r,t,a,n){var i,o;if(n===h7(e,r,t,a)>0)for(i=r;i=r;i-=a)o=e$(i,e[i],e[i+1],o);return o&&S_(o,o.next)&&(Ky(o),o=o.next),o}function dh(e,r){if(!e)return e;r||(r=e);var t=e,a;do if(a=!1,!t.steiner&&(S_(t,t.next)||Wn(t.prev,t,t.next)===0)){if(Ky(t),t=r=t.prev,t===t.next)break;a=!0}else t=t.next;while(a||t!==r);return r}function $y(e,r,t,a,n,i,o){if(e){!o&&i&&o6e(e,a,n,i);for(var l=e,s,f;e.prev!==e.next;){if(s=e.prev,f=e.next,i?QAe(e,a,n,i):$Ae(e)){r.push(s.i/t|0),r.push(e.i/t|0),r.push(f.i/t|0),Ky(e),e=f.next,l=f.next;continue}if(e=f,e===l){o?o===1?(e=KAe(dh(e),r,t),$y(e,r,t,a,n,i,2)):o===2&&e6e(e,r,t,a,n,i):$y(dh(e),r,t,a,n,i,1);break}}}}function $Ae(e){var r=e.prev,t=e,a=e.next;if(Wn(r,t,a)>=0)return!1;for(var n=r.x,i=t.x,o=a.x,l=r.y,s=t.y,f=a.y,u=ni?n>o?n:o:i>o?i:o,d=l>s?l>f?l:f:s>f?s:f,p=a.next;p!==r;){if(p.x>=u&&p.x<=v&&p.y>=c&&p.y<=d&&Rp(n,l,i,s,o,f,p.x,p.y)&&Wn(p.prev,p,p.next)>=0)return!1;p=p.next}return!0}function QAe(e,r,t,a){var n=e.prev,i=e,o=e.next;if(Wn(n,i,o)>=0)return!1;for(var l=n.x,s=i.x,f=o.x,u=n.y,c=i.y,v=o.y,d=ls?l>f?l:f:s>f?s:f,m=u>c?u>v?u:v:c>v?c:v,b=c7(d,p,r,t,a),A=c7(y,m,r,t,a),_=e.prevZ,x=e.nextZ;_&&_.z>=b&&x&&x.z<=A;){if(_.x>=d&&_.x<=y&&_.y>=p&&_.y<=m&&_!==n&&_!==o&&Rp(l,u,s,c,f,v,_.x,_.y)&&Wn(_.prev,_,_.next)>=0||(_=_.prevZ,x.x>=d&&x.x<=y&&x.y>=p&&x.y<=m&&x!==n&&x!==o&&Rp(l,u,s,c,f,v,x.x,x.y)&&Wn(x.prev,x,x.next)>=0))return!1;x=x.nextZ}for(;_&&_.z>=b;){if(_.x>=d&&_.x<=y&&_.y>=p&&_.y<=m&&_!==n&&_!==o&&Rp(l,u,s,c,f,v,_.x,_.y)&&Wn(_.prev,_,_.next)>=0)return!1;_=_.prevZ}for(;x&&x.z<=A;){if(x.x>=d&&x.x<=y&&x.y>=p&&x.y<=m&&x!==n&&x!==o&&Rp(l,u,s,c,f,v,x.x,x.y)&&Wn(x.prev,x,x.next)>=0)return!1;x=x.nextZ}return!0}function KAe(e,r,t){var a=e;do{var n=a.prev,i=a.next.next;!S_(n,i)&&t$(n,a,a.next,i)&&Qy(n,i)&&Qy(i,n)&&(r.push(n.i/t|0),r.push(a.i/t|0),r.push(i.i/t|0),Ky(a),Ky(a.next),a=e=i),a=a.next}while(a!==e);return dh(a)}function e6e(e,r,t,a,n,i){var o=e;do{for(var l=o.next.next;l!==o.prev;){if(o.i!==l.i&&f6e(o,l)){var s=a$(o,l);o=dh(o,o.next),s=dh(s,s.next),$y(o,r,t,a,n,i,0),$y(s,r,t,a,n,i,0);return}l=l.next}o=o.next}while(o!==e)}function r6e(e,r,t,a){var n=[],i,o,l,s,f;for(i=0,o=r.length;i=t.next.y&&t.next.y!==t.y){var l=t.x+(n-t.y)*(t.next.x-t.x)/(t.next.y-t.y);if(l<=a&&l>i&&(i=l,o=t.x=t.x&&t.x>=f&&a!==t.x&&Rp(no.x||t.x===o.x&&i6e(o,t)))&&(o=t,c=v)),t=t.next;while(t!==s);return o}function i6e(e,r){return Wn(e.prev,e,r.prev)<0&&Wn(r.next,e,e.next)<0}function o6e(e,r,t,a){var n=e;do n.z===0&&(n.z=c7(n.x,n.y,r,t,a)),n.prevZ=n.prev,n.nextZ=n.next,n=n.next;while(n!==e);n.prevZ.nextZ=null,n.prevZ=null,l6e(n)}function l6e(e){var r,t,a,n,i,o,l,s,f=1;do{for(t=e,e=null,i=null,o=0;t;){for(o++,a=t,l=0,r=0;r0||s>0&&a;)l!==0&&(s===0||!a||t.z<=a.z)?(n=t,t=t.nextZ,l--):(n=a,a=a.nextZ,s--),i?i.nextZ=n:e=n,n.prevZ=i,i=n;t=a}i.nextZ=null,f*=2}while(o>1);return e}function c7(e,r,t,a,n){return e=(e-t)*n|0,r=(r-a)*n|0,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,r=(r|r<<8)&16711935,r=(r|r<<4)&252645135,r=(r|r<<2)&858993459,r=(r|r<<1)&1431655765,e|r<<1}function s6e(e){var r=e,t=e;do(r.x=(e-o)*(i-l)&&(e-o)*(a-l)>=(t-o)*(r-l)&&(t-o)*(i-l)>=(n-o)*(a-l)}function f6e(e,r){return e.next.i!==r.i&&e.prev.i!==r.i&&!u6e(e,r)&&(Qy(e,r)&&Qy(r,e)&&c6e(e,r)&&(Wn(e.prev,e,r.prev)||Wn(e,r.prev,r))||S_(e,r)&&Wn(e.prev,e,e.next)>0&&Wn(r.prev,r,r.next)>0)}function Wn(e,r,t){return(r.y-e.y)*(t.x-r.x)-(r.x-e.x)*(t.y-r.y)}function S_(e,r){return e.x===r.x&&e.y===r.y}function t$(e,r,t,a){var n=T_(Wn(e,r,t)),i=T_(Wn(e,r,a)),o=T_(Wn(t,a,e)),l=T_(Wn(t,a,r));return!!(n!==i&&o!==l||n===0&&A_(e,t,r)||i===0&&A_(e,a,r)||o===0&&A_(t,e,a)||l===0&&A_(t,r,a))}function A_(e,r,t){return r.x<=Math.max(e.x,t.x)&&r.x>=Math.min(e.x,t.x)&&r.y<=Math.max(e.y,t.y)&&r.y>=Math.min(e.y,t.y)}function T_(e){return e>0?1:e<0?-1:0}function u6e(e,r){var t=e;do{if(t.i!==e.i&&t.next.i!==e.i&&t.i!==r.i&&t.next.i!==r.i&&t$(t,t.next,e,r))return!0;t=t.next}while(t!==e);return!1}function Qy(e,r){return Wn(e.prev,e,e.next)<0?Wn(e,r,e.next)>=0&&Wn(e,e.prev,r)>=0:Wn(e,r,e.prev)<0||Wn(e,e.next,r)<0}function c6e(e,r){var t=e,a=!1,n=(e.x+r.x)/2,i=(e.y+r.y)/2;do t.y>i!=t.next.y>i&&t.next.y!==t.y&&n<(t.next.x-t.x)*(i-t.y)/(t.next.y-t.y)+t.x&&(a=!a),t=t.next;while(t!==e);return a}function a$(e,r){var t=new v7(e.i,e.x,e.y),a=new v7(r.i,r.x,r.y),n=e.next,i=r.prev;return e.next=r,r.prev=e,t.next=n,n.prev=t,a.next=t,t.prev=a,i.next=a,a.prev=i,a}function e$(e,r,t,a){var n=new v7(e,r,t);return a?(n.next=a.next,n.prev=a,a.next.prev=n,a.next=n):(n.prev=n,n.next=n),n}function Ky(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function v7(e,r,t){this.i=e,this.x=r,this.y=t,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}M_.deviation=function(e,r,t,a){var n=r&&r.length,i=n?r[0]*t:e.length,o=Math.abs(h7(e,0,i,t));if(n)for(var l=0,s=r.length;l0&&(a+=e[n-1].length,t.holes.push(a))}return t}});var o$=P((nNe,i$)=>{"use strict";var v6e=ah();i$.exports=h6e;function h6e(e,r,t){if(!e||e.length==null)throw Error("Argument should be an array");r==null&&(r=1),t==null&&(t=v6e(e,r));for(var a=0;a{"use strict";l$.exports=function(){var e,r;if(typeof WeakMap!="function")return!1;try{e=new WeakMap([[r={},"one"],[{},"two"],[{},"three"]])}catch(t){return!1}return!(String(e)!=="[object WeakMap]"||typeof e.set!="function"||e.set({},1)!==e||typeof e.delete!="function"||typeof e.has!="function"||e.get(r)!=="one")}});var u$=P((oNe,f$)=>{"use strict";f$.exports=function(){}});var pv=P((lNe,c$)=>{"use strict";var d6e=u$()();c$.exports=function(e){return e!==d6e&&e!==null}});var p7=P((sNe,h$)=>{"use strict";var p6e=Object.create,m6e=Object.getPrototypeOf,v$={};h$.exports=function(){var e=Object.setPrototypeOf,r=arguments[0]||p6e;return typeof e!="function"?!1:m6e(e(r(null),v$))===v$}});var m7=P((fNe,d$)=>{"use strict";var y6e=pv(),g6e={function:!0,object:!0};d$.exports=function(e){return y6e(e)&&g6e[typeof e]||!1}});var Gu=P((uNe,p$)=>{"use strict";var b6e=pv();p$.exports=function(e){if(!b6e(e))throw new TypeError("Cannot use null or undefined");return e}});var y$=P((cNe,m$)=>{"use strict";var y7=Object.create,E_;p7()()||(E_=g7());m$.exports=function(){var e,r,t;return!E_||E_.level!==1?y7:(e={},r={},t={configurable:!1,enumerable:!1,writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(a){if(a==="__proto__"){r[a]={configurable:!0,enumerable:!1,writable:!0,value:void 0};return}r[a]=t}),Object.defineProperties(e,r),Object.defineProperty(E_,"nullPolyfill",{configurable:!1,enumerable:!1,writable:!1,value:e}),function(a,n){return y7(a===null?e:a,n)})}()});var g7=P((vNe,g$)=>{"use strict";var x6e=m7(),_6e=Gu(),w6e=Object.prototype.isPrototypeOf,A6e=Object.defineProperty,T6e={configurable:!0,enumerable:!1,writable:!0,value:void 0},k_;k_=function(e,r){if(_6e(e),r===null||x6e(r))return e;throw new TypeError("Prototype must be null or an object")};g$.exports=function(e){var r,t;return e?(e.level===2?e.set?(t=e.set,r=function(a,n){return t.call(k_(a,n),n),a}):r=function(a,n){return k_(a,n).__proto__=n,a}:r=function a(n,i){var o;return k_(n,i),o=w6e.call(a.nullPolyfill,n),o&&delete a.nullPolyfill.__proto__,i===null&&(i=a.nullPolyfill),n.__proto__=i,o&&A6e(a.nullPolyfill,"__proto__",T6e),n},Object.defineProperty(r,"level",{configurable:!1,enumerable:!1,writable:!1,value:e.level})):null}(function(){var e=Object.create(null),r={},t,a=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__");if(a){try{t=a.set,t.call(e,r)}catch(n){}if(Object.getPrototypeOf(e)===r)return{set:t,level:2}}return e.__proto__=r,Object.getPrototypeOf(e)===r?{level:2}:(e={},e.__proto__=r,Object.getPrototypeOf(e)===r?{level:1}:!1)}());y$()});var C_=P((hNe,b$)=>{"use strict";b$.exports=p7()()?Object.setPrototypeOf:g7()});var _$=P((dNe,x$)=>{"use strict";var M6e=m7();x$.exports=function(e){if(!M6e(e))throw new TypeError(e+" is not an Object");return e}});var A$=P((pNe,w$)=>{"use strict";var S6e=Object.create(null),E6e=Math.random;w$.exports=function(){var e;do e=E6e().toString(36).slice(2);while(S6e[e]);return e}});var ph=P((mNe,T$)=>{"use strict";var k6e=void 0;T$.exports=function(e){return e!==k6e&&e!==null}});var L_=P((yNe,M$)=>{"use strict";var C6e=ph(),L6e={object:!0,function:!0,undefined:!0};M$.exports=function(e){return C6e(e)?hasOwnProperty.call(L6e,typeof e):!1}});var E$=P((gNe,S$)=>{"use strict";var D6e=L_();S$.exports=function(e){if(!D6e(e))return!1;try{return e.constructor?e.constructor.prototype===e:!1}catch(r){return!1}}});var C$=P((bNe,k$)=>{"use strict";var F6e=E$();k$.exports=function(e){if(typeof e!="function"||!hasOwnProperty.call(e,"length"))return!1;try{if(typeof e.length!="number"||typeof e.call!="function"||typeof e.apply!="function")return!1}catch(r){return!1}return!F6e(e)}});var b7=P((xNe,L$)=>{"use strict";var q6e=C$(),R6e=/^\s*class[\s{/}]/,P6e=Function.prototype.toString;L$.exports=function(e){return!(!q6e(e)||R6e.test(P6e.call(e)))}});var F$=P((_Ne,D$)=>{"use strict";D$.exports=function(){var e=Object.assign,r;return typeof e!="function"?!1:(r={foo:"raz"},e(r,{bar:"dwa"},{trzy:"trzy"}),r.foo+r.bar+r.trzy==="razdwatrzy")}});var R$=P((wNe,q$)=>{"use strict";q$.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}});var N$=P((ANe,P$)=>{"use strict";var N6e=pv(),I6e=Object.keys;P$.exports=function(e){return I6e(N6e(e)?Object(e):e)}});var O$=P((TNe,I$)=>{"use strict";I$.exports=R$()()?Object.keys:N$()});var z$=P((MNe,B$)=>{"use strict";var O6e=O$(),B6e=Gu(),z6e=Math.max;B$.exports=function(e,r){var t,a,n=z6e(arguments.length,2),i;for(e=Object(B6e(e)),i=function(o){try{e[o]=r[o]}catch(l){t||(t=l)}},a=1;a{"use strict";G$.exports=F$()()?Object.assign:z$()});var x7=P((ENe,U$)=>{"use strict";var G6e=pv(),U6e=Array.prototype.forEach,H6e=Object.create,V6e=function(e,r){var t;for(t in e)r[t]=e[t]};U$.exports=function(e){var r=H6e(null);return U6e.call(arguments,function(t){G6e(t)&&V6e(Object(t),r)}),r}});var V$=P((kNe,H$)=>{"use strict";var _7="razdwatrzy";H$.exports=function(){return typeof _7.contains!="function"?!1:_7.contains("dwa")===!0&&_7.contains("foo")===!1}});var W$=P((CNe,Y$)=>{"use strict";var Y6e=String.prototype.indexOf;Y$.exports=function(e){return Y6e.call(this,e,arguments[1])>-1}});var w7=P((LNe,j$)=>{"use strict";j$.exports=V$()()?String.prototype.contains:W$()});var Uu=P((DNe,$$)=>{"use strict";var F_=ph(),X$=b7(),Z$=D_(),J$=x7(),eg=w7(),W6e=$$.exports=function(e,r){var t,a,n,i,o;return arguments.length<2||typeof e!="string"?(i=r,r=e,e=null):i=arguments[2],F_(e)?(t=eg.call(e,"c"),a=eg.call(e,"e"),n=eg.call(e,"w")):(t=n=!0,a=!1),o={value:r,configurable:t,enumerable:a,writable:n},i?Z$(J$(i),o):o};W6e.gs=function(e,r,t){var a,n,i,o;return typeof e!="string"?(i=t,t=r,r=e,e=null):i=arguments[3],F_(r)?X$(r)?F_(t)?X$(t)||(i=t,t=void 0):t=void 0:(i=r,r=t=void 0):r=void 0,F_(e)?(a=eg.call(e,"c"),n=eg.call(e,"e")):(a=!0,n=!1),o={get:r,set:t,configurable:a,enumerable:n},i?Z$(J$(i),o):o}});var rg=P((FNe,K$)=>{"use strict";var Q$=Object.prototype.toString,j6e=Q$.call(function(){return arguments}());K$.exports=function(e){return Q$.call(e)===j6e}});var tg=P((qNe,rQ)=>{"use strict";var eQ=Object.prototype.toString,X6e=eQ.call("");rQ.exports=function(e){return typeof e=="string"||e&&typeof e=="object"&&(e instanceof String||eQ.call(e)===X6e)||!1}});var aQ=P((RNe,tQ)=>{"use strict";tQ.exports=function(){return typeof globalThis!="object"||!globalThis?!1:globalThis.Array===Array}});var oQ=P((PNe,iQ)=>{var nQ=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};iQ.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch(e){return nQ()}try{return __global__||nQ()}finally{delete Object.prototype.__global__}}()});var ag=P((NNe,lQ)=>{"use strict";lQ.exports=aQ()()?globalThis:oQ()});var fQ=P((INe,sQ)=>{"use strict";var Z6e=ag(),A7={object:!0,symbol:!0};sQ.exports=function(){var e=Z6e.Symbol,r;if(typeof e!="function")return!1;r=e("test symbol");try{String(r)}catch(t){return!1}return!(!A7[typeof e.iterator]||!A7[typeof e.toPrimitive]||!A7[typeof e.toStringTag])}});var cQ=P((ONe,uQ)=>{"use strict";uQ.exports=function(e){return e?typeof e=="symbol"?!0:!e.constructor||e.constructor.name!=="Symbol"?!1:e[e.constructor.toStringTag]==="Symbol":!1}});var T7=P((BNe,vQ)=>{"use strict";var J6e=cQ();vQ.exports=function(e){if(!J6e(e))throw new TypeError(e+" is not a symbol");return e}});var yQ=P((zNe,mQ)=>{"use strict";var hQ=Uu(),$6e=Object.create,dQ=Object.defineProperty,Q6e=Object.prototype,pQ=$6e(null);mQ.exports=function(e){for(var r=0,t,a;pQ[e+(r||"")];)++r;return e+=r||"",pQ[e]=!0,t="@@"+e,dQ(Q6e,t,hQ.gs(null,function(n){a||(a=!0,dQ(this,t,hQ(n)),a=!1)})),t}});var bQ=P((GNe,gQ)=>{"use strict";var ef=Uu(),ii=ag().Symbol;gQ.exports=function(e){return Object.defineProperties(e,{hasInstance:ef("",ii&&ii.hasInstance||e("hasInstance")),isConcatSpreadable:ef("",ii&&ii.isConcatSpreadable||e("isConcatSpreadable")),iterator:ef("",ii&&ii.iterator||e("iterator")),match:ef("",ii&&ii.match||e("match")),replace:ef("",ii&&ii.replace||e("replace")),search:ef("",ii&&ii.search||e("search")),species:ef("",ii&&ii.species||e("species")),split:ef("",ii&&ii.split||e("split")),toPrimitive:ef("",ii&&ii.toPrimitive||e("toPrimitive")),toStringTag:ef("",ii&&ii.toStringTag||e("toStringTag")),unscopables:ef("",ii&&ii.unscopables||e("unscopables"))})}});var wQ=P((UNe,_Q)=>{"use strict";var xQ=Uu(),K6e=T7(),ng=Object.create(null);_Q.exports=function(e){return Object.defineProperties(e,{for:xQ(function(r){return ng[r]?ng[r]:ng[r]=e(String(r))}),keyFor:xQ(function(r){var t;K6e(r);for(t in ng)if(ng[t]===r)return t})})}});var MQ=P((HNe,TQ)=>{"use strict";var Of=Uu(),M7=T7(),q_=ag().Symbol,eTe=yQ(),rTe=bQ(),tTe=wQ(),aTe=Object.create,S7=Object.defineProperties,R_=Object.defineProperty,wo,Pp,AQ;if(typeof q_=="function")try{String(q_()),AQ=!0}catch(e){}else q_=null;Pp=function(r){if(this instanceof Pp)throw new TypeError("Symbol is not a constructor");return wo(r)};TQ.exports=wo=function e(r){var t;if(this instanceof e)throw new TypeError("Symbol is not a constructor");return AQ?q_(r):(t=aTe(Pp.prototype),r=r===void 0?"":String(r),S7(t,{__description__:Of("",r),__name__:Of("",eTe(r))}))};rTe(wo);tTe(wo);S7(Pp.prototype,{constructor:Of(wo),toString:Of("",function(){return this.__name__})});S7(wo.prototype,{toString:Of(function(){return"Symbol ("+M7(this).__description__+")"}),valueOf:Of(function(){return M7(this)})});R_(wo.prototype,wo.toPrimitive,Of("",function(){var e=M7(this);return typeof e=="symbol"?e:e.toString()}));R_(wo.prototype,wo.toStringTag,Of("c","Symbol"));R_(Pp.prototype,wo.toStringTag,Of("c",wo.prototype[wo.toStringTag]));R_(Pp.prototype,wo.toPrimitive,Of("c",wo.prototype[wo.toPrimitive]))});var mv=P((VNe,SQ)=>{"use strict";SQ.exports=fQ()()?ag().Symbol:MQ()});var kQ=P((YNe,EQ)=>{"use strict";var nTe=Gu();EQ.exports=function(){return nTe(this).length=0,this}});var Np=P((WNe,CQ)=>{"use strict";CQ.exports=function(e){if(typeof e!="function")throw new TypeError(e+" is not a function");return e}});var DQ=P((jNe,LQ)=>{"use strict";var iTe=ph(),oTe=L_(),lTe=Object.prototype.toString;LQ.exports=function(e){if(!iTe(e))return null;if(oTe(e)){var r=e.toString;if(typeof r!="function"||r===lTe)return null}try{return""+e}catch(t){return null}}});var qQ=P((XNe,FQ)=>{"use strict";FQ.exports=function(e){try{return e.toString()}catch(r){try{return String(e)}catch(t){return null}}}});var PQ=P((ZNe,RQ)=>{"use strict";var sTe=qQ(),fTe=/[\n\r\u2028\u2029]/g;RQ.exports=function(e){var r=sTe(e);return r===null?"":(r.length>100&&(r=r.slice(0,99)+"\u2026"),r=r.replace(fTe,function(t){switch(t){case` +`:return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}}),r)}});var E7=P((JNe,OQ)=>{"use strict";var NQ=ph(),uTe=L_(),cTe=DQ(),vTe=PQ(),IQ=function(e,r){return e.replace("%v",vTe(r))};OQ.exports=function(e,r,t){if(!uTe(t))throw new TypeError(IQ(r,e));if(!NQ(e)){if("default"in t)return t.default;if(t.isOptional)return null}var a=cTe(t.errorMessage);throw NQ(a)||(a=r),new TypeError(IQ(a,e))}});var zQ=P(($Ne,BQ)=>{"use strict";var hTe=E7(),dTe=ph();BQ.exports=function(e){return dTe(e)?e:hTe(e,"Cannot use %v",arguments[1])}});var UQ=P((QNe,GQ)=>{"use strict";var pTe=E7(),mTe=b7();GQ.exports=function(e){return mTe(e)?e:pTe(e,"%v is not a plain function",arguments[1])}});var VQ=P((KNe,HQ)=>{"use strict";HQ.exports=function(){var e=Array.from,r,t;return typeof e!="function"?!1:(r=["raz","dwa"],t=e(r),!!(t&&t!==r&&t[1]==="dwa"))}});var WQ=P((eIe,YQ)=>{"use strict";var yTe=Object.prototype.toString,gTe=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);YQ.exports=function(e){return typeof e=="function"&&gTe(yTe.call(e))}});var XQ=P((rIe,jQ)=>{"use strict";jQ.exports=function(){var e=Math.sign;return typeof e!="function"?!1:e(10)===1&&e(-20)===-1}});var JQ=P((tIe,ZQ)=>{"use strict";ZQ.exports=function(e){return e=Number(e),isNaN(e)||e===0?e:e>0?1:-1}});var QQ=P((aIe,$Q)=>{"use strict";$Q.exports=XQ()()?Math.sign:JQ()});var eK=P((nIe,KQ)=>{"use strict";var bTe=QQ(),xTe=Math.abs,_Te=Math.floor;KQ.exports=function(e){return isNaN(e)?0:(e=Number(e),e===0||!isFinite(e)?e:bTe(e)*_Te(xTe(e)))}});var tK=P((iIe,rK)=>{"use strict";var wTe=eK(),ATe=Math.max;rK.exports=function(e){return ATe(0,wTe(e))}});var oK=P((oIe,iK)=>{"use strict";var TTe=mv().iterator,MTe=rg(),STe=WQ(),ETe=tK(),aK=Np(),kTe=Gu(),CTe=pv(),LTe=tg(),nK=Array.isArray,k7=Function.prototype.call,mh={configurable:!0,enumerable:!0,writable:!0,value:null},C7=Object.defineProperty;iK.exports=function(e){var r=arguments[1],t=arguments[2],a,n,i,o,l,s,f,u,c,v;if(e=Object(kTe(e)),CTe(r)&&aK(r),!this||this===Array||!STe(this)){if(!r){if(MTe(e))return l=e.length,l!==1?Array.apply(null,e):(o=new Array(1),o[0]=e[0],o);if(nK(e)){for(o=new Array(l=e.length),n=0;n=55296&&s<=56319&&(v+=e[++n])),v=r?k7.call(r,t,v,i):v,a?(mh.value=v,C7(o,i,mh)):o[i]=v,++i;l=i}}if(l===void 0)for(l=ETe(e.length),a&&(o=new a(l)),n=0;n{"use strict";lK.exports=VQ()()?Array.from:oK()});var uK=P((sIe,fK)=>{"use strict";var DTe=sK(),FTe=D_(),qTe=Gu();fK.exports=function(e){var r=Object(qTe(e)),t=arguments[1],a=Object(arguments[2]);if(r!==e&&!t)return r;var n={};return t?DTe(t,function(i){(a.ensure||i in e)&&(n[i]=e[i])}):FTe(n,e),n}});var hK=P((fIe,vK)=>{"use strict";var RTe=Np(),PTe=Gu(),NTe=Function.prototype.bind,cK=Function.prototype.call,ITe=Object.keys,OTe=Object.prototype.propertyIsEnumerable;vK.exports=function(e,r){return function(t,a){var n,i=arguments[2],o=arguments[3];return t=Object(PTe(t)),RTe(a),n=ITe(t),o&&n.sort(typeof o=="function"?NTe.call(o,t):void 0),typeof e!="function"&&(e=n[e]),cK.call(e,n,function(l,s){return OTe.call(t,l)?cK.call(a,i,t[l],l,t,s):r})}}});var pK=P((uIe,dK)=>{"use strict";dK.exports=hK()("forEach")});var yK=P((cIe,mK)=>{"use strict";var BTe=Np(),zTe=pK(),GTe=Function.prototype.call;mK.exports=function(e,r){var t={},a=arguments[2];return BTe(r),zTe(e,function(n,i,o,l){t[i]=GTe.call(r,a,n,i,o,l)}),t}});var _K=P((vIe,xK)=>{"use strict";var UTe=ph(),HTe=zQ(),gK=UQ(),VTe=uK(),YTe=x7(),WTe=yK(),jTe=Function.prototype.bind,XTe=Object.defineProperty,ZTe=Object.prototype.hasOwnProperty,bK;bK=function(e,r,t){var a=HTe(r)&&gK(r.value),n;return n=VTe(r),delete n.writable,delete n.value,n.get=function(){return!t.overwriteDefinition&&ZTe.call(this,e)?a:(r.value=jTe.call(a,t.resolveContext?t.resolveContext(this):this),XTe(this,e,r),this[e])},n};xK.exports=function(e){var r=YTe(arguments[1]);return UTe(r.resolveContext)&&gK(r.resolveContext),WTe(e,function(t,a){return bK(a,t,r)})}});var L7=P((hIe,MK)=>{"use strict";var JTe=kQ(),$Te=D_(),QTe=Np(),KTe=Gu(),al=Uu(),e8e=_K(),wK=mv(),AK=Object.defineProperty,TK=Object.defineProperties,ig;MK.exports=ig=function(e,r){if(!(this instanceof ig))throw new TypeError("Constructor requires 'new'");TK(this,{__list__:al("w",KTe(e)),__context__:al("w",r),__nextIndex__:al("w",0)}),r&&(QTe(r.on),r.on("_add",this._onAdd),r.on("_delete",this._onDelete),r.on("_clear",this._onClear))};delete ig.prototype.constructor;TK(ig.prototype,$Te({_next:al(function(){var e;if(this.__list__){if(this.__redo__&&(e=this.__redo__.shift(),e!==void 0))return e;if(this.__nextIndex__=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__){AK(this,"__redo__",al("c",[e]));return}this.__redo__.forEach(function(r,t){r>=e&&(this.__redo__[t]=++r)},this),this.__redo__.push(e)}}),_onDelete:al(function(e){var r;e>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(r=this.__redo__.indexOf(e),r!==-1&&this.__redo__.splice(r,1),this.__redo__.forEach(function(t,a){t>e&&(this.__redo__[a]=--t)},this)))}),_onClear:al(function(){this.__redo__&&JTe.call(this.__redo__),this.__nextIndex__=0})})));AK(ig.prototype,wK.iterator,al(function(){return this}))});var LK=P((dIe,CK)=>{"use strict";var SK=C_(),EK=w7(),D7=Uu(),r8e=mv(),F7=L7(),kK=Object.defineProperty,Ip;Ip=CK.exports=function(e,r){if(!(this instanceof Ip))throw new TypeError("Constructor requires 'new'");F7.call(this,e),r?EK.call(r,"key+value")?r="key+value":EK.call(r,"key")?r="key":r="value":r="value",kK(this,"__kind__",D7("",r))};SK&&SK(Ip,F7);delete Ip.prototype.constructor;Ip.prototype=Object.create(F7.prototype,{_resolve:D7(function(e){return this.__kind__==="value"?this.__list__[e]:this.__kind__==="key+value"?[e,this.__list__[e]]:e})});kK(Ip.prototype,r8e.toStringTag,D7("c","Array Iterator"))});var RK=P((pIe,qK)=>{"use strict";var DK=C_(),P_=Uu(),t8e=mv(),q7=L7(),FK=Object.defineProperty,Op;Op=qK.exports=function(e){if(!(this instanceof Op))throw new TypeError("Constructor requires 'new'");e=String(e),q7.call(this,e),FK(this,"__length__",P_("",e.length))};DK&&DK(Op,q7);delete Op.prototype.constructor;Op.prototype=Object.create(q7.prototype,{_next:P_(function(){if(this.__list__){if(this.__nextIndex__=55296&&t<=56319?r+this.__list__[this.__nextIndex__++]:r)})});FK(Op.prototype,t8e.toStringTag,P_("c","String Iterator"))});var NK=P((mIe,PK)=>{"use strict";var a8e=rg(),n8e=pv(),i8e=tg(),o8e=mv().iterator,l8e=Array.isArray;PK.exports=function(e){return n8e(e)?l8e(e)||i8e(e)||a8e(e)?!0:typeof e[o8e]=="function":!1}});var OK=P((yIe,IK)=>{"use strict";var s8e=NK();IK.exports=function(e){if(!s8e(e))throw new TypeError(e+" is not iterable");return e}});var R7=P((gIe,GK)=>{"use strict";var f8e=rg(),u8e=tg(),BK=LK(),c8e=RK(),v8e=OK(),zK=mv().iterator;GK.exports=function(e){return typeof v8e(e)[zK]=="function"?e[zK]():f8e(e)?new BK(e):u8e(e)?new c8e(e):new BK(e)}});var HK=P((bIe,UK)=>{"use strict";var h8e=rg(),d8e=Np(),p8e=tg(),m8e=R7(),y8e=Array.isArray,P7=Function.prototype.call,g8e=Array.prototype.some;UK.exports=function(e,r){var t,a=arguments[2],n,i,o,l,s,f,u;if(y8e(e)||h8e(e)?t="array":p8e(e)?t="string":e=m8e(e),d8e(r),i=function(){o=!0},t==="array"){g8e.call(e,function(c){return P7.call(r,a,c,i),o});return}if(t==="string"){for(s=e.length,l=0;l=55296&&u<=56319&&(f+=e[++l])),P7.call(r,a,f,i),!o);++l);return}for(n=e.next();!n.done;){if(P7.call(r,a,n.value,i),o)return;n=e.next()}}});var YK=P((xIe,VK)=>{"use strict";VK.exports=function(){return typeof WeakMap!="function"?!1:Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"}()});var XK=P((_Ie,jK)=>{"use strict";var b8e=pv(),I_=C_(),N_=_$(),x8e=Gu(),_8e=A$(),Hu=Uu(),w8e=R7(),A8e=HK(),T8e=mv().toStringTag,WK=YK(),M8e=Array.isArray,I7=Object.defineProperty,N7=Object.prototype.hasOwnProperty,S8e=Object.getPrototypeOf,yv;jK.exports=yv=function(){var e=arguments[0],r;if(!(this instanceof yv))throw new TypeError("Constructor requires 'new'");return r=WK&&I_&&WeakMap!==yv?I_(new WeakMap,S8e(this)):this,b8e(e)&&(M8e(e)||(e=w8e(e))),I7(r,"__weakMapData__",Hu("c","$weakMap$"+_8e())),e&&A8e(e,function(t){x8e(t),r.set(t[0],t[1])}),r};WK&&(I_&&I_(yv,WeakMap),yv.prototype=Object.create(WeakMap.prototype,{constructor:Hu(yv)}));Object.defineProperties(yv.prototype,{delete:Hu(function(e){return N7.call(N_(e),this.__weakMapData__)?(delete e[this.__weakMapData__],!0):!1}),get:Hu(function(e){if(N7.call(N_(e),this.__weakMapData__))return e[this.__weakMapData__]}),has:Hu(function(e){return N7.call(N_(e),this.__weakMapData__)}),set:Hu(function(e,r){return I7(N_(e),this.__weakMapData__,Hu("c",r)),this}),toString:Hu(function(){return"[object WeakMap]"})});I7(yv.prototype,T8e,Hu("c","WeakMap"))});var O7=P((wIe,ZK)=>{"use strict";ZK.exports=s$()()?WeakMap:XK()});var $K=P((AIe,JK)=>{"use strict";JK.exports=function(e,r,t){if(typeof Array.prototype.findIndex=="function")return e.findIndex(r,t);if(typeof r!="function")throw new TypeError("predicate must be a function");var a=Object(e),n=a.length;if(n===0)return-1;for(var i=0;i{"use strict";var O_=ch(),E8e=ah(),z7=ni(),k8e=If(),C8e=nh(),QK=n$(),L8e=o$(),{float32:D8e,fract32:B7}=x_(),F8e=O7(),KK=hp(),q8e=$K(),R8e=` precision highp float; attribute vec2 aCoord, bCoord, aCoordFract, bCoordFract; @@ -662,7 +662,7 @@ void main() { gl_FragColor = fragColor; gl_FragColor.a *= alpha * opacity * dash; } -`;eee.exports=vn;function vn(e,r){if(!(this instanceof vn))return new vn(e,r);if(typeof e=="function"?(r||(r={}),r.regl=e):r=e,r.length&&(r.positions=r),e=r.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=e._gl,this.regl=e,this.passes=[],this.shaders=vn.shaders.has(e)?vn.shaders.get(e):vn.shaders.set(e,vn.createShaders(e)).get(e),this.update(r)}vn.dashMult=2;vn.maxPatternLength=256;vn.precisionThreshold=3e6;vn.maxPoints=1e4;vn.maxLines=2048;vn.shaders=new F8e;vn.createShaders=function(e){let r=e.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),t={primitive:"triangle strip",instances:e.prop("count"),count:4,offset:0,uniforms:{miterMode:(o,l)=>l.join==="round"?2:1,miterLimit:e.prop("miterLimit"),scale:e.prop("scale"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),thickness:e.prop("thickness"),dashTexture:e.prop("dashTexture"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),dashLength:e.prop("dashLength"),viewport:(o,l)=>[l.viewport.x,l.viewport.y,o.viewportWidth,o.viewportHeight],depth:e.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:(o,l)=>!l.overlay},stencil:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport")},a=e(z7({vert:R8e,frag:P8e,attributes:{lineEnd:{buffer:r,divisor:0,stride:8,offset:0},lineTop:{buffer:r,divisor:0,stride:8,offset:4},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},t)),n;try{n=e(z7({cull:{enable:!0,face:"back"},vert:O8e,frag:B8e,attributes:{lineEnd:{buffer:r,divisor:0,stride:8,offset:0},lineTop:{buffer:r,divisor:0,stride:8,offset:4},aColor:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:e.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},t))}catch(o){n=a}return{fill:e({primitive:"triangle",elements:(o,l)=>l.triangles,offset:0,vert:N8e,frag:I8e,uniforms:{scale:e.prop("scale"),color:e.prop("fill"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),viewport:(o,l)=>[l.viewport.x,l.viewport.y,o.viewportWidth,o.viewportHeight]},attributes:{position:{buffer:e.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8}},blend:t.blend,depth:{enable:!1},scissor:t.scissor,stencil:t.stencil,viewport:t.viewport}),rect:a,miter:n}};vn.defaults={dashes:null,join:"miter",miterLimit:1,thickness:10,cap:"square",color:"black",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null};vn.prototype.render=function(...e){e.length&&this.update(...e),this.draw()};vn.prototype.draw=function(...e){return(e.length?e:this.passes).forEach((r,t)=>{if(r&&Array.isArray(r))return this.draw(...r);typeof r=="number"&&(r=this.passes[r]),r&&r.count>1&&r.opacity&&(this.regl._refresh(),r.fill&&r.triangles&&r.triangles.length>2&&this.shaders.fill(r),r.thickness&&(r.scale[0]*r.viewport.width>vn.precisionThreshold||r.scale[1]*r.viewport.height>vn.precisionThreshold?this.shaders.rect(r):r.join==="rect"||!r.join&&(r.thickness<=2||r.count>=vn.maxPoints)?this.shaders.rect(r):this.shaders.miter(r)))}),this};vn.prototype.update=function(e){if(!e)return;e.length!=null?typeof e[0]=="number"&&(e=[{positions:e}]):Array.isArray(e)||(e=[e]);let{regl:r,gl:t}=this;if(e.forEach((n,i)=>{let o=this.passes[i];if(n!==void 0){if(n===null){this.passes[i]=null;return}if(typeof n[0]=="number"&&(n={positions:n}),n=k8e(n,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),o||(this.passes[i]=o={id:i,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:r.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:r.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:r.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:r.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},n=z7({},vn.defaults,n)),n.thickness!=null&&(o.thickness=parseFloat(n.thickness)),n.opacity!=null&&(o.opacity=parseFloat(n.opacity)),n.miterLimit!=null&&(o.miterLimit=parseFloat(n.miterLimit)),n.overlay!=null&&(o.overlay=!!n.overlay,iT-E),A=[],_=0,x=o.hole!=null?o.hole[0]:null;if(x!=null){let T=q8e(b,E=>E>=x);b=b.slice(0,T),b.push(x)}for(let T=0;TF-x+(b[T]-_)),k=QK(E,M);k=k.map(F=>F+_+(F+_{e.colorBuffer.destroy(),e.positionBuffer.destroy(),e.dashTexture.destroy()}),this.passes.length=0,this}});var iee=P((MIe,nee)=>{"use strict";var z8e=ah(),G8e=ch(),U8e=s7(),H8e=If(),ree=ni(),tee=nh(),{float32:V8e,fract32:U7}=b_();nee.exports=Y8e;var aee=[[1,0,0,1,0,0],[1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]];function Y8e(e,r){if(typeof e=="function"?(r||(r={}),r.regl=e):r=e,r.length&&(r.positions=r),e=r.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");let t=e._gl,a,n,i,o,l,s,f={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},u=[];return o=e.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),n=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),i=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),l=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),s=e.buffer({usage:"static",type:"float",data:aee}),p(r),a=e({vert:` +`;eee.exports=vn;function vn(e,r){if(!(this instanceof vn))return new vn(e,r);if(typeof e=="function"?(r||(r={}),r.regl=e):r=e,r.length&&(r.positions=r),e=r.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=e._gl,this.regl=e,this.passes=[],this.shaders=vn.shaders.has(e)?vn.shaders.get(e):vn.shaders.set(e,vn.createShaders(e)).get(e),this.update(r)}vn.dashMult=2;vn.maxPatternLength=256;vn.precisionThreshold=3e6;vn.maxPoints=1e4;vn.maxLines=2048;vn.shaders=new F8e;vn.createShaders=function(e){let r=e.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),t={primitive:"triangle strip",instances:e.prop("count"),count:4,offset:0,uniforms:{miterMode:(o,l)=>l.join==="round"?2:1,miterLimit:e.prop("miterLimit"),scale:e.prop("scale"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),thickness:e.prop("thickness"),dashTexture:e.prop("dashTexture"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),dashLength:e.prop("dashLength"),viewport:(o,l)=>[l.viewport.x,l.viewport.y,o.viewportWidth,o.viewportHeight],depth:e.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:(o,l)=>!l.overlay},stencil:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport")},a=e(z7({vert:R8e,frag:P8e,attributes:{lineEnd:{buffer:r,divisor:0,stride:8,offset:0},lineTop:{buffer:r,divisor:0,stride:8,offset:4},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},t)),n;try{n=e(z7({cull:{enable:!0,face:"back"},vert:O8e,frag:B8e,attributes:{lineEnd:{buffer:r,divisor:0,stride:8,offset:0},lineTop:{buffer:r,divisor:0,stride:8,offset:4},aColor:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:e.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},t))}catch(o){n=a}return{fill:e({primitive:"triangle",elements:(o,l)=>l.triangles,offset:0,vert:N8e,frag:I8e,uniforms:{scale:e.prop("scale"),color:e.prop("fill"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),viewport:(o,l)=>[l.viewport.x,l.viewport.y,o.viewportWidth,o.viewportHeight]},attributes:{position:{buffer:e.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8}},blend:t.blend,depth:{enable:!1},scissor:t.scissor,stencil:t.stencil,viewport:t.viewport}),rect:a,miter:n}};vn.defaults={dashes:null,join:"miter",miterLimit:1,thickness:10,cap:"square",color:"black",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null};vn.prototype.render=function(...e){e.length&&this.update(...e),this.draw()};vn.prototype.draw=function(...e){return(e.length?e:this.passes).forEach((r,t)=>{if(r&&Array.isArray(r))return this.draw(...r);typeof r=="number"&&(r=this.passes[r]),r&&r.count>1&&r.opacity&&(this.regl._refresh(),r.fill&&r.triangles&&r.triangles.length>2&&this.shaders.fill(r),r.thickness&&(r.scale[0]*r.viewport.width>vn.precisionThreshold||r.scale[1]*r.viewport.height>vn.precisionThreshold?this.shaders.rect(r):r.join==="rect"||!r.join&&(r.thickness<=2||r.count>=vn.maxPoints)?this.shaders.rect(r):this.shaders.miter(r)))}),this};vn.prototype.update=function(e){if(!e)return;e.length!=null?typeof e[0]=="number"&&(e=[{positions:e}]):Array.isArray(e)||(e=[e]);let{regl:r,gl:t}=this;if(e.forEach((n,i)=>{let o=this.passes[i];if(n!==void 0){if(n===null){this.passes[i]=null;return}if(typeof n[0]=="number"&&(n={positions:n}),n=k8e(n,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),o||(this.passes[i]=o={id:i,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:r.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:r.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:r.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:r.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},n=z7({},vn.defaults,n)),n.thickness!=null&&(o.thickness=parseFloat(n.thickness)),n.opacity!=null&&(o.opacity=parseFloat(n.opacity)),n.miterLimit!=null&&(o.miterLimit=parseFloat(n.miterLimit)),n.overlay!=null&&(o.overlay=!!n.overlay,iT-E),A=[],_=0,x=o.hole!=null?o.hole[0]:null;if(x!=null){let T=q8e(b,E=>E>=x);b=b.slice(0,T),b.push(x)}for(let T=0;TF-x+(b[T]-_)),k=QK(E,S);k=k.map(F=>F+_+(F+_{e.colorBuffer.destroy(),e.positionBuffer.destroy(),e.dashTexture.destroy()}),this.passes.length=0,this}});var iee=P((MIe,nee)=>{"use strict";var z8e=ah(),G8e=ch(),U8e=s7(),H8e=If(),ree=ni(),tee=nh(),{float32:V8e,fract32:U7}=x_();nee.exports=Y8e;var aee=[[1,0,0,1,0,0],[1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]];function Y8e(e,r){if(typeof e=="function"?(r||(r={}),r.regl=e):r=e,r.length&&(r.positions=r),e=r.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");let t=e._gl,a,n,i,o,l,s,f={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},u=[];return o=e.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),n=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),i=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),l=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),s=e.buffer({usage:"static",type:"float",data:aee}),p(r),a=e({vert:` precision highp float; attribute vec2 position, positionFract; @@ -706,10 +706,10 @@ void main() { gl_FragColor = fragColor; gl_FragColor.a *= opacity; } - `,uniforms:{range:e.prop("range"),lineWidth:e.prop("lineWidth"),capSize:e.prop("capSize"),opacity:e.prop("opacity"),scale:e.prop("scale"),translate:e.prop("translate"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),viewport:(m,b)=>[b.viewport.x,b.viewport.y,m.viewportWidth,m.viewportHeight]},attributes:{color:{buffer:o,offset:(m,b)=>b.offset*4,divisor:1},position:{buffer:n,offset:(m,b)=>b.offset*8,divisor:1},positionFract:{buffer:i,offset:(m,b)=>b.offset*8,divisor:1},error:{buffer:l,offset:(m,b)=>b.offset*16,divisor:1},direction:{buffer:s,stride:24,offset:0},lineOffset:{buffer:s,stride:24,offset:8},capOffset:{buffer:s,stride:24,offset:16}},primitive:"triangles",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport"),stencil:!1,instances:e.prop("count"),count:aee.length}),ree(c,{update:p,draw:v,destroy:y,regl:e,gl:t,canvas:t.canvas,groups:u}),c;function c(m){m?p(m):m===null&&y(),v()}function v(m){if(typeof m=="number")return d(m);m&&!Array.isArray(m)&&(m=[m]),e._refresh(),u.forEach((b,A)=>{if(b){if(m&&(m[A]?b.draw=!0:b.draw=!1),!b.draw){b.draw=!0;return}d(A)}})}function d(m){typeof m=="number"&&(m=u[m]),m!=null&&m&&m.count&&m.color&&m.opacity&&m.positions&&m.positions.length>1&&(m.scaleRatio=[m.scale[0]*m.viewport.width,m.scale[1]*m.viewport.height],a(m),m.after&&m.after(m))}function p(m){if(!m)return;m.length!=null?typeof m[0]=="number"&&(m=[{positions:m}]):Array.isArray(m)||(m=[m]);let b=0,A=0;if(c.groups=u=m.map((T,E)=>{let M=u[E];if(T)typeof T=="function"?T={after:T}:typeof T[0]=="number"&&(T={positions:T});else return M;return T=H8e(T,{color:"color colors fill",capSize:"capSize cap capsize cap-size",lineWidth:"lineWidth line-width width line thickness",opacity:"opacity alpha",range:"range dataBox",viewport:"viewport viewBox",errors:"errors error",positions:"positions position data points"}),M||(u[E]=M={id:E,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},T=ree({},f,T)),U8e(M,T,[{lineWidth:k=>+k*.5,capSize:k=>+k*.5,opacity:parseFloat,errors:k=>(k=tee(k),A+=k.length,k),positions:(k,F)=>(k=tee(k,"float64"),F.count=Math.floor(k.length/2),F.bounds=z8e(k,2),F.offset=b,b+=F.count,k)},{color:(k,F)=>{let I=F.count;if(k||(k="transparent"),!Array.isArray(k)||typeof k[0]=="number"){let q=k;k=Array(I);for(let H=0;H{let O=F.bounds;return k||(k=O),F.scale=[1/(k[2]-k[0]),1/(k[3]-k[1])],F.translate=[-k[0],-k[1]],F.scaleFract=U7(F.scale),F.translateFract=U7(F.translate),k},viewport:k=>{let F;return Array.isArray(k)?F={x:k[0],y:k[1],width:k[2]-k[0],height:k[3]-k[1]}:k?(F={x:k.x||k.left||0,y:k.y||k.top||0},k.right?F.width=k.right-F.x:F.width=k.w||k.width||0,k.bottom?F.height=k.bottom-F.y:F.height=k.h||k.height||0):F={x:0,y:0,width:t.drawingBufferWidth,height:t.drawingBufferHeight},F}}]),M}),b||A){let T=u.reduce((F,I,O)=>F+(I?I.count:0),0),E=new Float64Array(T*2),M=new Uint8Array(T*4),k=new Float32Array(T*4);u.forEach((F,I)=>{if(!F)return;let{positions:O,count:q,offset:H,color:X,errors:oe}=F;q&&(M.set(X,H*4),k.set(oe,H*4),E.set(O,H*2))});var _=V8e(E);n(_);var x=U7(E,_);i(x),o(M),l(k)}}function y(){n.destroy(),i.destroy(),o.destroy(),l.destroy(),s.destroy()}}});var see=P((SIe,lee)=>{var oee=/[\'\"]/;lee.exports=function(r){return r?(oee.test(r.charAt(0))&&(r=r.substr(1)),oee.test(r.charAt(r.length-1))&&(r=r.substr(0,r.length-1)),r):""}});var H7=P((EIe,W8e)=>{W8e.exports=["inherit","initial","unset"]});var V7=P((kIe,j8e)=>{j8e.exports=["caption","icon","menu","message-box","small-caption","status-bar"]});var Y7=P((CIe,X8e)=>{X8e.exports=["normal","bold","bolder","lighter","100","200","300","400","500","600","700","800","900"]});var W7=P((LIe,Z8e)=>{Z8e.exports=["normal","italic","oblique"]});var j7=P((DIe,J8e)=>{J8e.exports=["normal","condensed","semi-condensed","extra-condensed","ultra-condensed","expanded","semi-expanded","extra-expanded","ultra-expanded"]});var vee=P((FIe,cee)=>{"use strict";function fee(e,r){if(typeof e!="string")return[e];var t=[e];typeof r=="string"||Array.isArray(r)?r={brackets:r}:r||(r={});var a=r.brackets?Array.isArray(r.brackets)?r.brackets:[r.brackets]:["{}","[]","()"],n=r.escape||"___",i=!!r.flat;a.forEach(function(s){var f=new RegExp(["\\",s[0],"[^\\",s[0],"\\",s[1],"]*\\",s[1]].join("")),u=[];function c(v,d,p){var y=t.push(v.slice(s[0].length,-s[1].length))-1;return u.push(y),n+y+n}t.forEach(function(v,d){for(var p,y=0;v!=p;)if(p=v,v=v.replace(f,c),y++>1e4)throw Error("References have circular dependency. Please, check them.");t[d]=v}),u=u.reverse(),t=t.map(function(v){return u.forEach(function(d){v=v.replace(new RegExp("(\\"+n+d+"\\"+n+")","g"),s[0]+"$1"+s[1])}),v})});var o=new RegExp("\\"+n+"([0-9]+)\\"+n);function l(s,f,u){for(var c=[],v,d=0;v=o.exec(s);){if(d++>1e4)throw Error("Circular references in parenthesis");c.push(s.slice(0,v.index)),c.push(l(f[v[1]],f)),s=s.slice(v.index+v[0].length)}return c.push(s),c}return i?t:l(t[0],t)}function uee(e,r){if(r&&r.flat){var t=r&&r.escape||"___",a=e[0],n;if(!a)return"";for(var i=new RegExp("\\"+t+"([0-9]+)\\"+t),o=0;a!=n;){if(o++>1e4)throw Error("Circular references in "+e);n=a,a=a.replace(i,l)}return a}return e.reduce(function s(f,u){return Array.isArray(u)&&(u=u.reduce(s,"")),f+u},"");function l(s,f){if(e[f]==null)throw Error("Reference "+f+"is undefined");return e[f]}}function X7(e,r){return Array.isArray(e)?uee(e,r):fee(e,r)}X7.parse=fee;X7.stringify=uee;cee.exports=X7});var pee=P((qIe,dee)=>{"use strict";var hee=vee();dee.exports=function(r,t,a){if(r==null)throw Error("First argument should be a string");if(t==null)throw Error("Separator should be a string or a RegExp");a?(typeof a=="string"||Array.isArray(a))&&(a={ignore:a}):a={},a.escape==null&&(a.escape=!0),a.ignore==null?a.ignore=["[]","()","{}","<>",'""',"''","``","\u201C\u201D","\xAB\xBB"]:(typeof a.ignore=="string"&&(a.ignore=[a.ignore]),a.ignore=a.ignore.map(function(c){return c.length===1&&(c=c+c),c}));var n=hee.parse(r,{flat:!0,brackets:a.ignore}),i=n[0],o=i.split(t);if(a.escape){for(var l=[],s=0;s{$8e.exports=["xx-small","x-small","small","medium","large","x-large","xx-large","larger","smaller"]});var Z7=P((PIe,yee)=>{"use strict";var Q8e=mee();yee.exports={isSize:function(r){return/^[\d\.]/.test(r)||r.indexOf("/")!==-1||Q8e.indexOf(r)!==-1}}});var _ee=P((NIe,xee)=>{"use strict";var K8e=see(),e7e=H7(),r7e=V7(),t7e=Y7(),a7e=W7(),n7e=j7(),J7=pee(),i7e=Z7().isSize;xee.exports=bee;var og=bee.cache={};function bee(e){if(typeof e!="string")throw new Error("Font argument must be a string.");if(og[e])return og[e];if(e==="")throw new Error("Cannot parse an empty string.");if(r7e.indexOf(e)!==-1)return og[e]={system:e};for(var r={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},t=J7(e,/\s+/),a;a=t.shift();){if(e7e.indexOf(a)!==-1)return["style","variant","weight","stretch"].forEach(function(i){r[i]=a}),og[e]=r;if(a7e.indexOf(a)!==-1){r.style=a;continue}if(a==="normal"||a==="small-caps"){r.variant=a;continue}if(n7e.indexOf(a)!==-1){r.stretch=a;continue}if(t7e.indexOf(a)!==-1){r.weight=a;continue}if(i7e(a)){var n=J7(a,"/");if(r.size=n[0],n[1]!=null?r.lineHeight=gee(n[1]):t[0]==="/"&&(t.shift(),r.lineHeight=gee(t.shift())),!t.length)throw new Error("Missing required font-family.");return r.family=J7(t.join(" "),/\s*,\s*/).map(K8e),og[e]=r}throw new Error("Unknown or unsupported font token: "+a)}throw new Error("Missing required font-size.")}function gee(e){var r=parseFloat(e);return r.toString()===e?r:e}});var Q7=P((IIe,wee)=>{"use strict";var o7e=If(),l7e=Z7().isSize,s7e=sg(H7()),f7e=sg(V7()),u7e=sg(Y7()),c7e=sg(W7()),v7e=sg(j7()),h7e={normal:1,"small-caps":1},d7e={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},$7={style:"normal",variant:"normal",weight:"normal",stretch:"normal",size:"1rem",lineHeight:"normal",family:"serif"};wee.exports=function(r){if(r=o7e(r,{style:"style fontstyle fontStyle font-style slope distinction",variant:"variant font-variant fontVariant fontvariant var capitalization",weight:"weight w font-weight fontWeight fontweight",stretch:"stretch font-stretch fontStretch fontstretch width",size:"size s font-size fontSize fontsize height em emSize",lineHeight:"lh line-height lineHeight lineheight leading",family:"font family fontFamily font-family fontfamily type typeface face",system:"system reserved default global"}),r.system)return r.system&&lg(r.system,f7e),r.system;if(lg(r.style,c7e),lg(r.variant,h7e),lg(r.weight,u7e),lg(r.stretch,v7e),r.size==null&&(r.size=$7.size),typeof r.size=="number"&&(r.size+="px"),!l7e)throw Error("Bad size value `"+r.size+"`");r.family||(r.family=$7.family),Array.isArray(r.family)&&(r.family.length||(r.family=[$7.family]),r.family=r.family.map(function(a){return d7e[a]?a:'"'+a+'"'}).join(", "));var t=[];return t.push(r.style),r.variant!==r.style&&t.push(r.variant),r.weight!==r.variant&&r.weight!==r.style&&t.push(r.weight),r.stretch!==r.weight&&r.stretch!==r.variant&&r.stretch!==r.style&&t.push(r.stretch),t.push(r.size+(r.lineHeight==null||r.lineHeight==="normal"||r.lineHeight+""=="1"?"":"/"+r.lineHeight)),t.push(r.family),t.filter(Boolean).join(" ")};function lg(e,r){if(e&&!r[e]&&!s7e[e])throw Error("Unknown keyword `"+e+"`");return e}function sg(e){for(var r={},t=0;t{"use strict";Aee.exports={parse:_ee(),stringify:Q7()}});var Mee=P((K7,e9)=>{(function(e,r){typeof K7=="object"&&typeof e9!="undefined"?e9.exports=r():e.createREGL=r()})(K7,function(){"use strict";var e=function(S,B){for(var V=Object.keys(B),he=0;he1&&B===V&&(B==='"'||B==="'"))return['"'+o(S.substr(1,S.length-2))+'"'];var he=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(S);if(he)return l(S.substr(0,he.index)).concat(l(he[1])).concat(l(S.substr(he.index+he[0].length)));var xe=S.split(".");if(xe.length===1)return['"'+o(S)+'"'];for(var we=[],_e=0;_e65535)<<4,S>>>=B,V=(S>255)<<3,S>>>=V,B|=V,V=(S>15)<<2,S>>>=V,B|=V,V=(S>3)<<1,S>>>=V,B|=V,B|S>>1}function Z(){var S=k(8,function(){return[]});function B(we){var _e=te(we),He=S[Q(_e)>>2];return He.length>0?He.pop():new ArrayBuffer(_e)}function V(we){S[Q(we.byteLength)>>2].push(we)}function he(we,_e){var He=null;switch(we){case F:He=new Int8Array(B(_e),0,_e);break;case I:He=new Uint8Array(B(_e),0,_e);break;case O:He=new Int16Array(B(2*_e),0,_e);break;case q:He=new Uint16Array(B(2*_e),0,_e);break;case H:He=new Int32Array(B(4*_e),0,_e);break;case X:He=new Uint32Array(B(4*_e),0,_e);break;case oe:He=new Float32Array(B(4*_e),0,_e);break;default:return null}return He.length!==_e?He.subarray(0,_e):He}function xe(we){V(we.buffer)}return{alloc:B,free:V,allocType:he,freeType:xe}}var J=Z();J.zero=Z();var le=3408,ce=3410,De=3411,Be=3412,Ee=3413,Xe=3414,Ae=3415,rr=33901,ze=33902,We=3379,$e=3386,Ue=34921,ee=36347,de=36348,ae=35661,je=35660,ur=34930,er=36349,Lr=34076,Pr=34024,_r=7936,Ir=7937,Yr=7938,Kr=35724,wr=34047,Vr=36063,Wr=34852,Re=3553,lr=34067,st=34069,kt=33984,Ar=6408,tr=5126,cr=5121,Hr=36160,ot=36053,jr=36064,at=16384,xt=function(S,B){var V=1;B.ext_texture_filter_anisotropic&&(V=S.getParameter(wr));var he=1,xe=1;B.webgl_draw_buffers&&(he=S.getParameter(Wr),xe=S.getParameter(Vr));var we=!!B.oes_texture_float;if(we){var _e=S.createTexture();S.bindTexture(Re,_e),S.texImage2D(Re,0,Ar,1,1,0,Ar,tr,null);var He=S.createFramebuffer();if(S.bindFramebuffer(Hr,He),S.framebufferTexture2D(Hr,jr,Re,_e,0),S.bindTexture(Re,null),S.checkFramebufferStatus(Hr)!==ot)we=!1;else{S.viewport(0,0,1,1),S.clearColor(1,0,0,1),S.clear(at);var or=J.allocType(tr,4);S.readPixels(0,0,1,1,Ar,tr,or),S.getError()?we=!1:(S.deleteFramebuffer(He),S.deleteTexture(_e),we=or[0]===1),J.freeType(or)}}var ir=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),sr=!0;if(!ir){var Qr=S.createTexture(),Fr=J.allocType(cr,36);S.activeTexture(kt),S.bindTexture(lr,Qr),S.texImage2D(st,0,Ar,3,3,0,Ar,cr,Fr),J.freeType(Fr),S.bindTexture(lr,null),S.deleteTexture(Qr),sr=!S.getError()}return{colorBits:[S.getParameter(ce),S.getParameter(De),S.getParameter(Be),S.getParameter(Ee)],depthBits:S.getParameter(Xe),stencilBits:S.getParameter(Ae),subpixelBits:S.getParameter(le),extensions:Object.keys(B).filter(function(yr){return!!B[yr]}),maxAnisotropic:V,maxDrawbuffers:he,maxColorAttachments:xe,pointSizeDims:S.getParameter(rr),lineWidthDims:S.getParameter(ze),maxViewportDims:S.getParameter($e),maxCombinedTextureUnits:S.getParameter(ae),maxCubeMapSize:S.getParameter(Lr),maxRenderbufferSize:S.getParameter(Pr),maxTextureUnits:S.getParameter(ur),maxTextureSize:S.getParameter(We),maxAttributes:S.getParameter(Ue),maxVertexUniforms:S.getParameter(ee),maxVertexTextureUnits:S.getParameter(je),maxVaryingVectors:S.getParameter(de),maxFragmentUniforms:S.getParameter(er),glsl:S.getParameter(Kr),renderer:S.getParameter(Ir),vendor:S.getParameter(_r),version:S.getParameter(Yr),readFloat:we,npotTextureCube:sr}},Xr=function(S){return S instanceof Uint8Array||S instanceof Uint16Array||S instanceof Uint32Array||S instanceof Int8Array||S instanceof Int16Array||S instanceof Int32Array||S instanceof Float32Array||S instanceof Float64Array||S instanceof Uint8ClampedArray};function nt(S){return!!S&&typeof S=="object"&&Array.isArray(S.shape)&&Array.isArray(S.stride)&&typeof S.offset=="number"&&S.shape.length===S.stride.length&&(Array.isArray(S.data)||Xr(S.data))}var gr=function(S){return Object.keys(S).map(function(B){return S[B]})},Se={shape:wt,flatten:Tt};function Ne(S,B,V){for(var he=0;he0){var Zr;if(Array.isArray(ke[0])){dr=Ia(ke);for(var Ie=1,qe=1;qe0){if(typeof Ie[0]=="number"){var fr=J.allocType(Oe.dtype,Ie.length);lo(fr,Ie),dr(fr,Sr),J.freeType(fr)}else if(Array.isArray(Ie[0])||Xr(Ie[0])){hr=Ia(Ie);var vr=ia(Ie,hr,Oe.dtype);dr(vr,Sr),J.freeType(vr)}}}else if(nt(Ie)){hr=Ie.shape;var Er=Ie.stride,Jr=0,ct=0,mr=0,Cr=0;hr.length===1?(Jr=hr[0],ct=1,mr=Er[0],Cr=0):hr.length===2&&(Jr=hr[0],ct=hr[1],mr=Er[0],Cr=Er[1]);var ft=Array.isArray(Ie.data)?Oe.dtype:en(Ie.data),ut=J.allocType(ft,Jr*ct);Oi(ut,Ie.data,Jr,ct,mr,Cr,Ie.offset),dr(ut,Sr),J.freeType(ut)}return br}return Ze||br(fe),br._reglType="buffer",br._buffer=Oe,br.subdata=Zr,V.profile&&(br.stats=Oe.stats),br.destroy=function(){Fr(Oe)},br}function Pe(){gr(we).forEach(function(fe){fe.buffer=S.createBuffer(),S.bindBuffer(fe.type,fe.buffer),S.bufferData(fe.type,fe.persistentData||fe.byteLength,fe.usage)})}return V.profile&&(B.getTotalBufferSize=function(){var fe=0;return Object.keys(we).forEach(function(ke){fe+=we[ke].stats.size}),fe}),{create:yr,createStream:or,destroyStream:ir,clear:function(){gr(we).forEach(Fr),He.forEach(Fr)},getBuffer:function(fe){return fe&&fe._buffer instanceof _e?fe._buffer:null},restore:Pe,_initBuffer:Qr}}var nn=0,Zn=0,fs=1,us=1,kl=4,Zu=4,Oo={points:nn,point:Zn,lines:fs,line:us,triangles:kl,triangle:Zu,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Yf=0,Wf=1,ji=4,di=5120,Bi=5121,Cl=5122,pi=5123,Pt=5124,$t=5125,ca=34963,_t=35040,Jn=35044;function za(S,B,V,he){var xe={},we=0,_e={uint8:Bi,uint16:pi};B.oes_element_index_uint&&(_e.uint32=$t);function He(Pe){this.id=we++,xe[this.id]=this,this.buffer=Pe,this.primType=ji,this.vertCount=0,this.type=0}He.prototype.bind=function(){this.buffer.bind()};var or=[];function ir(Pe){var fe=or.pop();return fe||(fe=new He(V.create(null,ca,!0,!1)._buffer)),Qr(fe,Pe,_t,-1,-1,0,0),fe}function sr(Pe){or.push(Pe)}function Qr(Pe,fe,ke,Ze,nr,Oe,br){Pe.buffer.bind();var dr;if(fe){var Zr=br;!br&&(!Xr(fe)||nt(fe)&&!Xr(fe.data))&&(Zr=B.oes_element_index_uint?$t:pi),V._initBuffer(Pe.buffer,fe,ke,Zr,3)}else S.bufferData(ca,Oe,ke),Pe.buffer.dtype=dr||Bi,Pe.buffer.usage=ke,Pe.buffer.dimension=3,Pe.buffer.byteLength=Oe;if(dr=br,!br){switch(Pe.buffer.dtype){case Bi:case di:dr=Bi;break;case pi:case Cl:dr=pi;break;case $t:case Pt:dr=$t;break;default:}Pe.buffer.dtype=dr}Pe.type=dr;var Ie=nr;Ie<0&&(Ie=Pe.buffer.byteLength,dr===pi?Ie>>=1:dr===$t&&(Ie>>=2)),Pe.vertCount=Ie;var qe=Ze;if(Ze<0){qe=ji;var Sr=Pe.buffer.dimension;Sr===1&&(qe=Yf),Sr===2&&(qe=Wf),Sr===3&&(qe=ji)}Pe.primType=qe}function Fr(Pe){he.elementsCount--,delete xe[Pe.id],Pe.buffer.destroy(),Pe.buffer=null}function yr(Pe,fe){var ke=V.create(null,ca,!0),Ze=new He(ke._buffer);he.elementsCount++;function nr(Oe){if(!Oe)ke(),Ze.primType=ji,Ze.vertCount=0,Ze.type=Bi;else if(typeof Oe=="number")ke(Oe),Ze.primType=ji,Ze.vertCount=Oe|0,Ze.type=Bi;else{var br=null,dr=Jn,Zr=-1,Ie=-1,qe=0,Sr=0;Array.isArray(Oe)||Xr(Oe)||nt(Oe)?br=Oe:("data"in Oe&&(br=Oe.data),"usage"in Oe&&(dr=Pa[Oe.usage]),"primitive"in Oe&&(Zr=Oo[Oe.primitive]),"count"in Oe&&(Ie=Oe.count|0),"type"in Oe&&(Sr=_e[Oe.type]),"length"in Oe?qe=Oe.length|0:(qe=Ie,Sr===pi||Sr===Cl?qe*=2:(Sr===$t||Sr===Pt)&&(qe*=4))),Qr(Ze,br,dr,Zr,Ie,qe,Sr)}return nr}return nr(Pe),nr._reglType="elements",nr._elements=Ze,nr.subdata=function(Oe,br){return ke.subdata(Oe,br),nr},nr.destroy=function(){Fr(Ze)},nr}return{create:yr,createStream:ir,destroyStream:sr,getElements:function(Pe){return typeof Pe=="function"&&Pe._elements instanceof He?Pe._elements:null},clear:function(){gr(xe).forEach(Fr)}}}var Pn=new Float32Array(1),ra=new Uint32Array(Pn.buffer),Ao=5123;function ol(S){for(var B=J.allocType(Ao,S.length),V=0;V>>31<<15,we=(he<<1>>>24)-127,_e=he>>13&1023;if(we<-24)B[V]=xe;else if(we<-14){var He=-14-we;B[V]=xe+(_e+1024>>He)}else we>15?B[V]=xe+31744:B[V]=xe+(we+15<<10)+_e}return B}function Si(S){return Array.isArray(S)||Xr(S)}var Qp=34467,Mn=3553,Ll=34067,Bo=34069,mi=6408,rf=6406,zo=6407,To=6409,Dl=6410,Ju=32854,Go=32855,cs=36194,Sh=32819,Kp=32820,$u=33635,Dv=34042,vs=6402,Fl=34041,Uo=35904,Mo=35906,yi=36193,tf=33776,hs=33777,ll=33778,af=33779,Fv=35986,Qu=35987,jf=34798,qv=35840,Rv=35841,Ku=35842,Pv=35843,ec=36196,So=5121,nf=5123,Xf=5125,zi=5126,of=10242,e1=10243,r1=10497,Zf=33071,Eh=33648,Jf=10240,t1=10241,ql=9728,rc=9729,ds=9984,lf=9985,ps=9986,sl=9987,kh=33170,fl=4352,a1=4353,tc=4354,n1=34046,i1=3317,o1=37440,Ch=37441,$f=37443,Nv=37444,Eo=33984,Lh=[ds,ps,lf,sl],Ei=[0,To,Dl,zo,mi],Sn={};Sn[To]=Sn[rf]=Sn[vs]=1,Sn[Fl]=Sn[Dl]=2,Sn[zo]=Sn[Uo]=3,Sn[mi]=Sn[Mo]=4;function Xi(S){return"[object "+S+"]"}var Qf=Xi("HTMLCanvasElement"),ul=Xi("OffscreenCanvas"),sf=Xi("CanvasRenderingContext2D"),ac=Xi("ImageBitmap"),Iv=Xi("HTMLImageElement"),Ov=Xi("HTMLVideoElement"),l1=Object.keys(It).concat([Qf,ul,sf,ac,Iv,Ov]),so=[];so[So]=1,so[zi]=4,so[yi]=2,so[nf]=2,so[Xf]=4;var Aa=[];Aa[Ju]=2,Aa[Go]=2,Aa[cs]=2,Aa[Fl]=4,Aa[tf]=.5,Aa[hs]=.5,Aa[ll]=1,Aa[af]=1,Aa[Fv]=.5,Aa[Qu]=1,Aa[jf]=1,Aa[qv]=.5,Aa[Rv]=.25,Aa[Ku]=.5,Aa[Pv]=.25,Aa[ec]=.5;function Bv(S){return Array.isArray(S)&&(S.length===0||typeof S[0]=="number")}function zv(S){if(!Array.isArray(S))return!1;var B=S.length;return!(B===0||!Si(S[0]))}function Zi(S){return Object.prototype.toString.call(S)}function Gv(S){return Zi(S)===Qf}function Uv(S){return Zi(S)===ul}function s1(S){return Zi(S)===sf}function f1(S){return Zi(S)===ac}function u1(S){return Zi(S)===Iv}function c1(S){return Zi(S)===Ov}function Kf(S){if(!S)return!1;var B=Zi(S);return l1.indexOf(B)>=0?!0:Bv(S)||zv(S)||nt(S)}function Hv(S){return It[Object.prototype.toString.call(S)]|0}function v1(S,B){var V=B.length;switch(S.type){case So:case nf:case Xf:case zi:var he=J.allocType(S.type,V);he.set(B),S.data=he;break;case yi:S.data=ol(B);break;default:}}function Vv(S,B){return J.allocType(S.type===yi?zi:S.type,B)}function nc(S,B){S.type===yi?(S.data=ol(B),J.freeType(B)):S.data=B}function Dh(S,B,V,he,xe,we){for(var _e=S.width,He=S.height,or=S.channels,ir=_e*He*or,sr=Vv(S,ir),Qr=0,Fr=0;Fr=1;)He+=_e*or*or,or/=2;return He}else return _e*V*he}function Fh(S,B,V,he,xe,we,_e){var He={"don't care":fl,"dont care":fl,nice:tc,fast:a1},or={repeat:r1,clamp:Zf,mirror:Eh},ir={nearest:ql,linear:rc},sr=e({mipmap:sl,"nearest mipmap nearest":ds,"linear mipmap nearest":lf,"nearest mipmap linear":ps,"linear mipmap linear":sl},ir),Qr={none:0,browser:Nv},Fr={uint8:So,rgba4:Sh,rgb565:$u,"rgb5 a1":Kp},yr={alpha:rf,luminance:To,"luminance alpha":Dl,rgb:zo,rgba:mi,rgba4:Ju,"rgb5 a1":Go,rgb565:cs},Pe={};B.ext_srgb&&(yr.srgb=Uo,yr.srgba=Mo),B.oes_texture_float&&(Fr.float32=Fr.float=zi),B.oes_texture_half_float&&(Fr.float16=Fr["half float"]=yi),B.webgl_depth_texture&&(e(yr,{depth:vs,"depth stencil":Fl}),e(Fr,{uint16:nf,uint32:Xf,"depth stencil":Dv})),B.webgl_compressed_texture_s3tc&&e(Pe,{"rgb s3tc dxt1":tf,"rgba s3tc dxt1":hs,"rgba s3tc dxt3":ll,"rgba s3tc dxt5":af}),B.webgl_compressed_texture_atc&&e(Pe,{"rgb atc":Fv,"rgba atc explicit alpha":Qu,"rgba atc interpolated alpha":jf}),B.webgl_compressed_texture_pvrtc&&e(Pe,{"rgb pvrtc 4bppv1":qv,"rgb pvrtc 2bppv1":Rv,"rgba pvrtc 4bppv1":Ku,"rgba pvrtc 2bppv1":Pv}),B.webgl_compressed_texture_etc1&&(Pe["rgb etc1"]=ec);var fe=Array.prototype.slice.call(S.getParameter(Qp));Object.keys(Pe).forEach(function(z){var me=Pe[z];fe.indexOf(me)>=0&&(yr[z]=me)});var ke=Object.keys(yr);V.textureFormats=ke;var Ze=[];Object.keys(yr).forEach(function(z){var me=yr[z];Ze[me]=z});var nr=[];Object.keys(Fr).forEach(function(z){var me=Fr[z];nr[me]=z});var Oe=[];Object.keys(ir).forEach(function(z){var me=ir[z];Oe[me]=z});var br=[];Object.keys(sr).forEach(function(z){var me=sr[z];br[me]=z});var dr=[];Object.keys(or).forEach(function(z){var me=or[z];dr[me]=z});var Zr=ke.reduce(function(z,me){var be=yr[me];return be===To||be===rf||be===To||be===Dl||be===vs||be===Fl||B.ext_srgb&&(be===Uo||be===Mo)?z[be]=be:be===Go||me.indexOf("rgba")>=0?z[be]=mi:z[be]=zo,z},{});function Ie(){this.internalformat=mi,this.format=mi,this.type=So,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=Nv,this.width=0,this.height=0,this.channels=0}function qe(z,me){z.internalformat=me.internalformat,z.format=me.format,z.type=me.type,z.compressed=me.compressed,z.premultiplyAlpha=me.premultiplyAlpha,z.flipY=me.flipY,z.unpackAlignment=me.unpackAlignment,z.colorSpace=me.colorSpace,z.width=me.width,z.height=me.height,z.channels=me.channels}function Sr(z,me){if(!(typeof me!="object"||!me)){if("premultiplyAlpha"in me&&(z.premultiplyAlpha=me.premultiplyAlpha),"flipY"in me&&(z.flipY=me.flipY),"alignment"in me&&(z.unpackAlignment=me.alignment),"colorSpace"in me&&(z.colorSpace=Qr[me.colorSpace]),"type"in me){var be=me.type;z.type=Fr[be]}var Nr=z.width,Ft=z.height,Ht=z.channels,qr=!1;"shape"in me?(Nr=me.shape[0],Ft=me.shape[1],me.shape.length===3&&(Ht=me.shape[2],qr=!0)):("radius"in me&&(Nr=Ft=me.radius),"width"in me&&(Nr=me.width),"height"in me&&(Ft=me.height),"channels"in me&&(Ht=me.channels,qr=!0)),z.width=Nr|0,z.height=Ft|0,z.channels=Ht|0;var N=!1;if("format"in me){var U=me.format,$=z.internalformat=yr[U];z.format=Zr[$],U in Fr&&("type"in me||(z.type=Fr[U])),U in Pe&&(z.compressed=!0),N=!0}!qr&&N?z.channels=Sn[z.format]:qr&&!N&&z.channels!==Ei[z.format]&&(z.format=z.internalformat=Ei[z.channels])}}function hr(z){S.pixelStorei(o1,z.flipY),S.pixelStorei(Ch,z.premultiplyAlpha),S.pixelStorei($f,z.colorSpace),S.pixelStorei(i1,z.unpackAlignment)}function fr(){Ie.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function vr(z,me){var be=null;if(Kf(me)?be=me:me&&(Sr(z,me),"x"in me&&(z.xOffset=me.x|0),"y"in me&&(z.yOffset=me.y|0),Kf(me.data)&&(be=me.data)),me.copy){var Nr=xe.viewportWidth,Ft=xe.viewportHeight;z.width=z.width||Nr-z.xOffset,z.height=z.height||Ft-z.yOffset,z.needsCopy=!0}else if(!be)z.width=z.width||1,z.height=z.height||1,z.channels=z.channels||4;else if(Xr(be))z.channels=z.channels||4,z.data=be,!("type"in me)&&z.type===So&&(z.type=Hv(be));else if(Bv(be))z.channels=z.channels||4,v1(z,be),z.alignment=1,z.needsFree=!0;else if(nt(be)){var Ht=be.data;!Array.isArray(Ht)&&z.type===So&&(z.type=Hv(Ht));var qr=be.shape,N=be.stride,U,$,pe,Te,ue,se;qr.length===3?(pe=qr[2],se=N[2]):(pe=1,se=1),U=qr[0],$=qr[1],Te=N[0],ue=N[1],z.alignment=1,z.width=U,z.height=$,z.channels=pe,z.format=z.internalformat=Ei[pe],z.needsFree=!0,Dh(z,Ht,Te,ue,se,be.offset)}else if(Gv(be)||Uv(be)||s1(be))Gv(be)||Uv(be)?z.element=be:z.element=be.canvas,z.width=z.element.width,z.height=z.element.height,z.channels=4;else if(f1(be))z.element=be,z.width=be.width,z.height=be.height,z.channels=4;else if(u1(be))z.element=be,z.width=be.naturalWidth,z.height=be.naturalHeight,z.channels=4;else if(c1(be))z.element=be,z.width=be.videoWidth,z.height=be.videoHeight,z.channels=4;else if(zv(be)){var re=z.width||be[0].length,W=z.height||be.length,K=z.channels;Si(be[0][0])?K=K||be[0][0].length:K=K||1;for(var Y=Se.shape(be),ve=1,Ce=0;Ce>=Ft,be.height>>=Ft,vr(be,Nr[Ft]),z.mipmask|=1<=0&&!("faces"in me)&&(z.genMipmaps=!0)}if("mag"in me){var Nr=me.mag;z.magFilter=ir[Nr]}var Ft=z.wrapS,Ht=z.wrapT;if("wrap"in me){var qr=me.wrap;typeof qr=="string"?Ft=Ht=or[qr]:Array.isArray(qr)&&(Ft=or[qr[0]],Ht=or[qr[1]])}else{if("wrapS"in me){var N=me.wrapS;Ft=or[N]}if("wrapT"in me){var U=me.wrapT;Ht=or[U]}}if(z.wrapS=Ft,z.wrapT=Ht,"anisotropic"in me){var $=me.anisotropic;z.anisotropic=me.anisotropic}if("mipmap"in me){var pe=!1;switch(typeof me.mipmap){case"string":z.mipmapHint=He[me.mipmap],z.genMipmaps=!0,pe=!0;break;case"boolean":pe=z.genMipmaps=me.mipmap;break;case"object":z.genMipmaps=!1,pe=!0;break;default:}pe&&!("min"in me)&&(z.minFilter=ds)}}function Wa(z,me){S.texParameteri(me,t1,z.minFilter),S.texParameteri(me,Jf,z.magFilter),S.texParameteri(me,of,z.wrapS),S.texParameteri(me,e1,z.wrapT),B.ext_texture_filter_anisotropic&&S.texParameteri(me,n1,z.anisotropic),z.genMipmaps&&(S.hint(kh,z.mipmapHint),S.generateMipmap(me))}var sn=0,ya={},ga=V.maxTextureUnits,Ea=Array(ga).map(function(){return null});function At(z){Ie.call(this),this.mipmask=0,this.internalformat=mi,this.id=sn++,this.refCount=1,this.target=z,this.texture=S.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new Ut,_e.profile&&(this.stats={size:0})}function Da(z){S.activeTexture(Eo),S.bindTexture(z.target,z.texture)}function Wt(){var z=Ea[0];z?S.bindTexture(z.target,z.texture):S.bindTexture(Mn,null)}function ja(z){var me=z.texture,be=z.unit,Nr=z.target;be>=0&&(S.activeTexture(Eo+be),S.bindTexture(Nr,null),Ea[be]=null),S.deleteTexture(me),z.texture=null,z.params=null,z.pixels=null,z.refCount=0,delete ya[z.id],we.textureCount--}e(At.prototype,{bind:function(){var z=this;z.bindCount+=1;var me=z.unit;if(me<0){for(var be=0;be0)continue;Nr.unit=-1}Ea[be]=z,me=be;break}me>=ga,_e.profile&&we.maxTextureUnits>ue)-pe,se.height=se.height||(be.height>>ue)-Te,Da(be),Jr(se,Mn,pe,Te,ue),Wt(),Cr(se),Nr}function Ht(qr,N){var U=qr|0,$=N|0||U;if(U===be.width&&$===be.height)return Nr;Nr.width=be.width=U,Nr.height=be.height=$,Da(be);for(var pe=0;be.mipmask>>pe;++pe){var Te=U>>pe,ue=$>>pe;if(!Te||!ue)break;S.texImage2D(Mn,pe,be.format,Te,ue,0,be.format,be.type,null)}return Wt(),_e.profile&&(be.stats.size=Rl(be.internalformat,be.type,U,$,!1,!1)),Nr}return Nr(z,me),Nr.subimage=Ft,Nr.resize=Ht,Nr._reglType="texture2d",Nr._texture=be,_e.profile&&(Nr.stats=be.stats),Nr.destroy=function(){be.decRef()},Nr}function un(z,me,be,Nr,Ft,Ht){var qr=new At(Ll);ya[qr.id]=qr,we.cubeCount++;var N=new Array(6);function U(Te,ue,se,re,W,K){var Y,ve=qr.texInfo;for(Ut.call(ve),Y=0;Y<6;++Y)N[Y]=Dt();if(typeof Te=="number"||!Te){var Ce=Te|0||1;for(Y=0;Y<6;++Y)ut(N[Y],Ce,Ce)}else if(typeof Te=="object")if(ue)St(N[0],Te),St(N[1],ue),St(N[2],se),St(N[3],re),St(N[4],W),St(N[5],K);else if(Ua(ve,Te),Sr(qr,Te),"faces"in Te){var Je=Te.faces;for(Y=0;Y<6;++Y)qe(N[Y],qr),St(N[Y],Je[Y])}else for(Y=0;Y<6;++Y)St(N[Y],Te);for(qe(qr,N[0]),ve.genMipmaps?qr.mipmask=(N[0].width<<1)-1:qr.mipmask=N[0].mipmask,qr.internalformat=N[0].internalformat,U.width=N[0].width,U.height=N[0].height,Da(qr),Y=0;Y<6;++Y)aa(N[Y],Bo+Y);for(Wa(ve,Ll),Wt(),_e.profile&&(qr.stats.size=Rl(qr.internalformat,qr.type,U.width,U.height,ve.genMipmaps,!0)),U.format=Ze[qr.internalformat],U.type=nr[qr.type],U.mag=Oe[ve.magFilter],U.min=br[ve.minFilter],U.wrapS=dr[ve.wrapS],U.wrapT=dr[ve.wrapT],Y=0;Y<6;++Y)ln(N[Y]);return U}function $(Te,ue,se,re,W){var K=se|0,Y=re|0,ve=W|0,Ce=mr();return qe(Ce,qr),Ce.width=0,Ce.height=0,vr(Ce,ue),Ce.width=Ce.width||(qr.width>>ve)-K,Ce.height=Ce.height||(qr.height>>ve)-Y,Da(qr),Jr(Ce,Bo+Te,K,Y,ve),Wt(),Cr(Ce),U}function pe(Te){var ue=Te|0;if(ue!==qr.width){U.width=qr.width=ue,U.height=qr.height=ue,Da(qr);for(var se=0;se<6;++se)for(var re=0;qr.mipmask>>re;++re)S.texImage2D(Bo+se,re,qr.format,ue>>re,ue>>re,0,qr.format,qr.type,null);return Wt(),_e.profile&&(qr.stats.size=Rl(qr.internalformat,qr.type,U.width,U.height,!1,!0)),U}}return U(z,me,be,Nr,Ft,Ht),U.subimage=$,U.resize=pe,U._reglType="textureCube",U._texture=qr,_e.profile&&(U.stats=qr.stats),U.destroy=function(){qr.decRef()},U}function pt(){for(var z=0;z>Nr,be.height>>Nr,0,be.internalformat,be.type,null);else for(var Ft=0;Ft<6;++Ft)S.texImage2D(Bo+Ft,Nr,be.internalformat,be.width>>Nr,be.height>>Nr,0,be.internalformat,be.type,null);Wa(be.texInfo,be.target)})}function Qt(){for(var z=0;z=0?ln=!0:or.indexOf(Ut)>=0&&(ln=!1))),("depthTexture"in At||"depthStencilTexture"in At)&&(Ea=!!(At.depthTexture||At.depthStencilTexture)),"depth"in At&&(typeof At.depth=="boolean"?aa=At.depth:(sn=At.depth,Sa=!1)),"stencil"in At&&(typeof At.stencil=="boolean"?Sa=At.stencil:(ya=At.stencil,aa=!1)),"depthStencil"in At&&(typeof At.depthStencil=="boolean"?aa=Sa=At.depthStencil:(ga=At.depthStencil,aa=!1,Sa=!1))}var Wt=null,ja=null,fn=null,un=null;if(Array.isArray(Dt))Wt=Dt.map(Pe);else if(Dt)Wt=[Pe(Dt)];else for(Wt=new Array(Wa),ft=0;ft0&&(Cr.depth=vr[0].depth,Cr.stencil=vr[0].stencil,Cr.depthStencil=vr[0].depthStencil),vr[mr]?vr[mr](Cr):vr[mr]=qe(Cr)}return e(Er,{width:ft,height:ft,color:Ut})}function Jr(ct){var mr,Cr=ct|0;if(Cr===Er.width)return Er;var ft=Er.color;for(mr=0;mr=ft.byteLength?ut.subdata(ft):(ut.destroy(),qe.buffers[ct]=null)),qe.buffers[ct]||(ut=qe.buffers[ct]=xe.create(mr,t0,!1,!0)),Cr.buffer=xe.getBuffer(ut),Cr.size=Cr.buffer.dimension|0,Cr.normalized=!1,Cr.type=Cr.buffer.dtype,Cr.offset=0,Cr.stride=0,Cr.divisor=0,Cr.state=1,Er[ct]=1}else xe.getBuffer(mr)?(Cr.buffer=xe.getBuffer(mr),Cr.size=Cr.buffer.dimension|0,Cr.normalized=!1,Cr.type=Cr.buffer.dtype,Cr.offset=0,Cr.stride=0,Cr.divisor=0,Cr.state=1):xe.getBuffer(mr.buffer)?(Cr.buffer=xe.getBuffer(mr.buffer),Cr.size=(+mr.size||Cr.buffer.dimension)|0,Cr.normalized=!!mr.normalized||!1,"type"in mr?Cr.type=hn[mr.type]:Cr.type=Cr.buffer.dtype,Cr.offset=(mr.offset||0)|0,Cr.stride=(mr.stride||0)|0,Cr.divisor=(mr.divisor||0)|0,Cr.state=1):"x"in mr&&(Cr.x=+mr.x||0,Cr.y=+mr.y||0,Cr.z=+mr.z||0,Cr.w=+mr.w||0,Cr.state=2)}for(var St=0;St1)for(var hr=0;hrfe&&(fe=ke.stats.uniformsCount)}),fe},V.getMaxAttributesCount=function(){var fe=0;return sr.forEach(function(ke){ke.stats.attributesCount>fe&&(fe=ke.stats.attributesCount)}),fe});function Pe(){xe={},we={};for(var fe=0;fe16&&(V=cl(V,S.length*8));for(var he=Array(16),xe=Array(16),we=0;we<16;we++)he[we]=V[we]^909522486,xe[we]=V[we]^1549556828;var _e=cl(he.concat(au(B)),512+B.length*8);return o0(cl(xe.concat(_e),768))}function Ih(S){for(var B=Ph?"0123456789ABCDEF":"0123456789abcdef",V="",he,xe=0;xe>>4&15)+B.charAt(he&15);return V}function S1(S){for(var B="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",V="",he=S.length,xe=0;xeS.length*8?V+=T1:V+=B.charAt(we>>>6*(3-_e)&63);return V}function E1(S,B){var V=B.length,he=Array(),xe,we,_e,He,or=Array(Math.ceil(S.length/2));for(xe=0;xe0;){for(He=Array(),_e=0,xe=0;xe0||we>0)&&(He[He.length]=we);he[he.length]=_e,or=He}var ir="";for(xe=he.length-1;xe>=0;xe--)ir+=B.charAt(he[xe]);var sr=Math.ceil(S.length*8/(Math.log(B.length)/Math.log(2)));for(xe=ir.length;xe>>6&31,128|he&63):he<=65535?B+=String.fromCharCode(224|he>>>12&15,128|he>>>6&63,128|he&63):he<=2097151&&(B+=String.fromCharCode(240|he>>>18&7,128|he>>>12&63,128|he>>>6&63,128|he&63));return B}function au(S){for(var B=Array(S.length>>2),V=0;V>5]|=(S.charCodeAt(V/8)&255)<<24-V%32;return B}function o0(S){for(var B="",V=0;V>5]>>>24-V%32&255);return B}function Bn(S,B){return S>>>B|S<<32-B}function l0(S,B){return S>>>B}function Oh(S,B,V){return S&B^~S&V}function Bh(S,B,V){return S&B^S&V^B&V}function s0(S){return Bn(S,2)^Bn(S,13)^Bn(S,22)}function zh(S){return Bn(S,6)^Bn(S,11)^Bn(S,25)}function sc(S){return Bn(S,7)^Bn(S,18)^l0(S,3)}function fc(S){return Bn(S,17)^Bn(S,19)^l0(S,10)}var C1=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function cl(S,B){var V=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),he=new Array(64),xe,we,_e,He,or,ir,sr,Qr,Fr,yr,Pe,fe;for(S[B>>5]|=128<<24-B%32,S[(B+64>>9<<4)+15]=B,Fr=0;Fr>16)+(B>>16)+(V>>16);return he<<16|V&65535}function Co(S){return Array.prototype.slice.call(S)}function Lo(S){return Co(S).join("")}function Gh(S){var B=S&&S.cache,V=0,he=[],xe=[],we=[];function _e(Pe,fe){var ke=fe&&fe.stable;if(!ke){for(var Ze=0;Ze0&&(Pe.push(nr,"="),Pe.push.apply(Pe,Co(arguments)),Pe.push(";")),nr}return e(fe,{def:Ze,toString:function(){return Lo([ke.length>0?"var "+ke.join(",")+";":"",Lo(Pe)])}})}function or(){var Pe=He(),fe=He(),ke=Pe.toString,Ze=fe.toString;function nr(Oe,br){fe(Oe,br,"=",Pe.def(Oe,br),";")}return e(function(){Pe.apply(Pe,Co(arguments))},{def:Pe.def,entry:Pe,exit:fe,save:nr,set:function(Oe,br,dr){nr(Oe,br),Pe(Oe,br,"=",dr,";")},toString:function(){return ke()+Ze()}})}function ir(){var Pe=Lo(arguments),fe=or(),ke=or(),Ze=fe.toString,nr=ke.toString;return e(fe,{then:function(){return fe.apply(fe,Co(arguments)),this},else:function(){return ke.apply(ke,Co(arguments)),this},toString:function(){var Oe=nr();return Oe&&(Oe="else{"+Oe+"}"),Lo(["if(",Pe,"){",Ze(),"}",Oe])}})}var sr=He(),Qr={};function Fr(Pe,fe){var ke=[];function Ze(){var Zr="a"+ke.length;return ke.push(Zr),Zr}fe=fe||0;for(var nr=0;nr[b.viewport.x,b.viewport.y,m.viewportWidth,m.viewportHeight]},attributes:{color:{buffer:o,offset:(m,b)=>b.offset*4,divisor:1},position:{buffer:n,offset:(m,b)=>b.offset*8,divisor:1},positionFract:{buffer:i,offset:(m,b)=>b.offset*8,divisor:1},error:{buffer:l,offset:(m,b)=>b.offset*16,divisor:1},direction:{buffer:s,stride:24,offset:0},lineOffset:{buffer:s,stride:24,offset:8},capOffset:{buffer:s,stride:24,offset:16}},primitive:"triangles",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport"),stencil:!1,instances:e.prop("count"),count:aee.length}),ree(c,{update:p,draw:v,destroy:y,regl:e,gl:t,canvas:t.canvas,groups:u}),c;function c(m){m?p(m):m===null&&y(),v()}function v(m){if(typeof m=="number")return d(m);m&&!Array.isArray(m)&&(m=[m]),e._refresh(),u.forEach((b,A)=>{if(b){if(m&&(m[A]?b.draw=!0:b.draw=!1),!b.draw){b.draw=!0;return}d(A)}})}function d(m){typeof m=="number"&&(m=u[m]),m!=null&&m&&m.count&&m.color&&m.opacity&&m.positions&&m.positions.length>1&&(m.scaleRatio=[m.scale[0]*m.viewport.width,m.scale[1]*m.viewport.height],a(m),m.after&&m.after(m))}function p(m){if(!m)return;m.length!=null?typeof m[0]=="number"&&(m=[{positions:m}]):Array.isArray(m)||(m=[m]);let b=0,A=0;if(c.groups=u=m.map((T,E)=>{let S=u[E];if(T)typeof T=="function"?T={after:T}:typeof T[0]=="number"&&(T={positions:T});else return S;return T=H8e(T,{color:"color colors fill",capSize:"capSize cap capsize cap-size",lineWidth:"lineWidth line-width width line thickness",opacity:"opacity alpha",range:"range dataBox",viewport:"viewport viewBox",errors:"errors error",positions:"positions position data points"}),S||(u[E]=S={id:E,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},T=ree({},f,T)),U8e(S,T,[{lineWidth:k=>+k*.5,capSize:k=>+k*.5,opacity:parseFloat,errors:k=>(k=tee(k),A+=k.length,k),positions:(k,F)=>(k=tee(k,"float64"),F.count=Math.floor(k.length/2),F.bounds=z8e(k,2),F.offset=b,b+=F.count,k)},{color:(k,F)=>{let I=F.count;if(k||(k="transparent"),!Array.isArray(k)||typeof k[0]=="number"){let q=k;k=Array(I);for(let H=0;H{let O=F.bounds;return k||(k=O),F.scale=[1/(k[2]-k[0]),1/(k[3]-k[1])],F.translate=[-k[0],-k[1]],F.scaleFract=U7(F.scale),F.translateFract=U7(F.translate),k},viewport:k=>{let F;return Array.isArray(k)?F={x:k[0],y:k[1],width:k[2]-k[0],height:k[3]-k[1]}:k?(F={x:k.x||k.left||0,y:k.y||k.top||0},k.right?F.width=k.right-F.x:F.width=k.w||k.width||0,k.bottom?F.height=k.bottom-F.y:F.height=k.h||k.height||0):F={x:0,y:0,width:t.drawingBufferWidth,height:t.drawingBufferHeight},F}}]),S}),b||A){let T=u.reduce((F,I,O)=>F+(I?I.count:0),0),E=new Float64Array(T*2),S=new Uint8Array(T*4),k=new Float32Array(T*4);u.forEach((F,I)=>{if(!F)return;let{positions:O,count:q,offset:H,color:j,errors:le}=F;q&&(S.set(j,H*4),k.set(le,H*4),E.set(O,H*2))});var _=V8e(E);n(_);var x=U7(E,_);i(x),o(S),l(k)}}function y(){n.destroy(),i.destroy(),o.destroy(),l.destroy(),s.destroy()}}});var see=P((SIe,lee)=>{var oee=/[\'\"]/;lee.exports=function(r){return r?(oee.test(r.charAt(0))&&(r=r.substr(1)),oee.test(r.charAt(r.length-1))&&(r=r.substr(0,r.length-1)),r):""}});var H7=P((EIe,W8e)=>{W8e.exports=["inherit","initial","unset"]});var V7=P((kIe,j8e)=>{j8e.exports=["caption","icon","menu","message-box","small-caption","status-bar"]});var Y7=P((CIe,X8e)=>{X8e.exports=["normal","bold","bolder","lighter","100","200","300","400","500","600","700","800","900"]});var W7=P((LIe,Z8e)=>{Z8e.exports=["normal","italic","oblique"]});var j7=P((DIe,J8e)=>{J8e.exports=["normal","condensed","semi-condensed","extra-condensed","ultra-condensed","expanded","semi-expanded","extra-expanded","ultra-expanded"]});var vee=P((FIe,cee)=>{"use strict";function fee(e,r){if(typeof e!="string")return[e];var t=[e];typeof r=="string"||Array.isArray(r)?r={brackets:r}:r||(r={});var a=r.brackets?Array.isArray(r.brackets)?r.brackets:[r.brackets]:["{}","[]","()"],n=r.escape||"___",i=!!r.flat;a.forEach(function(s){var f=new RegExp(["\\",s[0],"[^\\",s[0],"\\",s[1],"]*\\",s[1]].join("")),u=[];function c(v,d,p){var y=t.push(v.slice(s[0].length,-s[1].length))-1;return u.push(y),n+y+n}t.forEach(function(v,d){for(var p,y=0;v!=p;)if(p=v,v=v.replace(f,c),y++>1e4)throw Error("References have circular dependency. Please, check them.");t[d]=v}),u=u.reverse(),t=t.map(function(v){return u.forEach(function(d){v=v.replace(new RegExp("(\\"+n+d+"\\"+n+")","g"),s[0]+"$1"+s[1])}),v})});var o=new RegExp("\\"+n+"([0-9]+)\\"+n);function l(s,f,u){for(var c=[],v,d=0;v=o.exec(s);){if(d++>1e4)throw Error("Circular references in parenthesis");c.push(s.slice(0,v.index)),c.push(l(f[v[1]],f)),s=s.slice(v.index+v[0].length)}return c.push(s),c}return i?t:l(t[0],t)}function uee(e,r){if(r&&r.flat){var t=r&&r.escape||"___",a=e[0],n;if(!a)return"";for(var i=new RegExp("\\"+t+"([0-9]+)\\"+t),o=0;a!=n;){if(o++>1e4)throw Error("Circular references in "+e);n=a,a=a.replace(i,l)}return a}return e.reduce(function s(f,u){return Array.isArray(u)&&(u=u.reduce(s,"")),f+u},"");function l(s,f){if(e[f]==null)throw Error("Reference "+f+"is undefined");return e[f]}}function X7(e,r){return Array.isArray(e)?uee(e,r):fee(e,r)}X7.parse=fee;X7.stringify=uee;cee.exports=X7});var pee=P((qIe,dee)=>{"use strict";var hee=vee();dee.exports=function(r,t,a){if(r==null)throw Error("First argument should be a string");if(t==null)throw Error("Separator should be a string or a RegExp");a?(typeof a=="string"||Array.isArray(a))&&(a={ignore:a}):a={},a.escape==null&&(a.escape=!0),a.ignore==null?a.ignore=["[]","()","{}","<>",'""',"''","``","\u201C\u201D","\xAB\xBB"]:(typeof a.ignore=="string"&&(a.ignore=[a.ignore]),a.ignore=a.ignore.map(function(c){return c.length===1&&(c=c+c),c}));var n=hee.parse(r,{flat:!0,brackets:a.ignore}),i=n[0],o=i.split(t);if(a.escape){for(var l=[],s=0;s{$8e.exports=["xx-small","x-small","small","medium","large","x-large","xx-large","larger","smaller"]});var Z7=P((PIe,yee)=>{"use strict";var Q8e=mee();yee.exports={isSize:function(r){return/^[\d\.]/.test(r)||r.indexOf("/")!==-1||Q8e.indexOf(r)!==-1}}});var _ee=P((NIe,xee)=>{"use strict";var K8e=see(),e7e=H7(),r7e=V7(),t7e=Y7(),a7e=W7(),n7e=j7(),J7=pee(),i7e=Z7().isSize;xee.exports=bee;var og=bee.cache={};function bee(e){if(typeof e!="string")throw new Error("Font argument must be a string.");if(og[e])return og[e];if(e==="")throw new Error("Cannot parse an empty string.");if(r7e.indexOf(e)!==-1)return og[e]={system:e};for(var r={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},t=J7(e,/\s+/),a;a=t.shift();){if(e7e.indexOf(a)!==-1)return["style","variant","weight","stretch"].forEach(function(i){r[i]=a}),og[e]=r;if(a7e.indexOf(a)!==-1){r.style=a;continue}if(a==="normal"||a==="small-caps"){r.variant=a;continue}if(n7e.indexOf(a)!==-1){r.stretch=a;continue}if(t7e.indexOf(a)!==-1){r.weight=a;continue}if(i7e(a)){var n=J7(a,"/");if(r.size=n[0],n[1]!=null?r.lineHeight=gee(n[1]):t[0]==="/"&&(t.shift(),r.lineHeight=gee(t.shift())),!t.length)throw new Error("Missing required font-family.");return r.family=J7(t.join(" "),/\s*,\s*/).map(K8e),og[e]=r}throw new Error("Unknown or unsupported font token: "+a)}throw new Error("Missing required font-size.")}function gee(e){var r=parseFloat(e);return r.toString()===e?r:e}});var Q7=P((IIe,wee)=>{"use strict";var o7e=If(),l7e=Z7().isSize,s7e=sg(H7()),f7e=sg(V7()),u7e=sg(Y7()),c7e=sg(W7()),v7e=sg(j7()),h7e={normal:1,"small-caps":1},d7e={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},$7={style:"normal",variant:"normal",weight:"normal",stretch:"normal",size:"1rem",lineHeight:"normal",family:"serif"};wee.exports=function(r){if(r=o7e(r,{style:"style fontstyle fontStyle font-style slope distinction",variant:"variant font-variant fontVariant fontvariant var capitalization",weight:"weight w font-weight fontWeight fontweight",stretch:"stretch font-stretch fontStretch fontstretch width",size:"size s font-size fontSize fontsize height em emSize",lineHeight:"lh line-height lineHeight lineheight leading",family:"font family fontFamily font-family fontfamily type typeface face",system:"system reserved default global"}),r.system)return r.system&&lg(r.system,f7e),r.system;if(lg(r.style,c7e),lg(r.variant,h7e),lg(r.weight,u7e),lg(r.stretch,v7e),r.size==null&&(r.size=$7.size),typeof r.size=="number"&&(r.size+="px"),!l7e)throw Error("Bad size value `"+r.size+"`");r.family||(r.family=$7.family),Array.isArray(r.family)&&(r.family.length||(r.family=[$7.family]),r.family=r.family.map(function(a){return d7e[a]?a:'"'+a+'"'}).join(", "));var t=[];return t.push(r.style),r.variant!==r.style&&t.push(r.variant),r.weight!==r.variant&&r.weight!==r.style&&t.push(r.weight),r.stretch!==r.weight&&r.stretch!==r.variant&&r.stretch!==r.style&&t.push(r.stretch),t.push(r.size+(r.lineHeight==null||r.lineHeight==="normal"||r.lineHeight+""=="1"?"":"/"+r.lineHeight)),t.push(r.family),t.filter(Boolean).join(" ")};function lg(e,r){if(e&&!r[e]&&!s7e[e])throw Error("Unknown keyword `"+e+"`");return e}function sg(e){for(var r={},t=0;t{"use strict";Aee.exports={parse:_ee(),stringify:Q7()}});var Mee=P((K7,e9)=>{(function(e,r){typeof K7=="object"&&typeof e9!="undefined"?e9.exports=r():e.createREGL=r()})(K7,function(){"use strict";var e=function(M,B){for(var V=Object.keys(B),he=0;he1&&B===V&&(B==='"'||B==="'"))return['"'+o(M.substr(1,M.length-2))+'"'];var he=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(M);if(he)return l(M.substr(0,he.index)).concat(l(he[1])).concat(l(M.substr(he.index+he[0].length)));var xe=M.split(".");if(xe.length===1)return['"'+o(M)+'"'];for(var we=[],_e=0;_e65535)<<4,M>>>=B,V=(M>255)<<3,M>>>=V,B|=V,V=(M>15)<<2,M>>>=V,B|=V,V=(M>3)<<1,M>>>=V,B|=V,B|M>>1}function J(){var M=k(8,function(){return[]});function B(we){var _e=te(we),He=M[Q(_e)>>2];return He.length>0?He.pop():new ArrayBuffer(_e)}function V(we){M[Q(we.byteLength)>>2].push(we)}function he(we,_e){var He=null;switch(we){case F:He=new Int8Array(B(_e),0,_e);break;case I:He=new Uint8Array(B(_e),0,_e);break;case O:He=new Int16Array(B(2*_e),0,_e);break;case q:He=new Uint16Array(B(2*_e),0,_e);break;case H:He=new Int32Array(B(4*_e),0,_e);break;case j:He=new Uint32Array(B(4*_e),0,_e);break;case le:He=new Float32Array(B(4*_e),0,_e);break;default:return null}return He.length!==_e?He.subarray(0,_e):He}function xe(we){V(we.buffer)}return{alloc:B,free:V,allocType:he,freeType:xe}}var Z=J();Z.zero=J();var ae=3408,ue=3410,Le=3411,Be=3412,Ee=3413,Xe=3414,Ae=3415,rr=33901,ze=33902,We=3379,$e=3386,Ue=34921,ee=36347,de=36348,ne=35661,je=35660,ur=34930,er=36349,Lr=34076,Pr=34024,_r=7936,Ir=7937,Yr=7938,Kr=35724,wr=34047,Vr=36063,Wr=34852,Re=3553,lr=34067,st=34069,kt=33984,Ar=6408,tr=5126,cr=5121,Hr=36160,ot=36053,jr=36064,at=16384,xt=function(M,B){var V=1;B.ext_texture_filter_anisotropic&&(V=M.getParameter(wr));var he=1,xe=1;B.webgl_draw_buffers&&(he=M.getParameter(Wr),xe=M.getParameter(Vr));var we=!!B.oes_texture_float;if(we){var _e=M.createTexture();M.bindTexture(Re,_e),M.texImage2D(Re,0,Ar,1,1,0,Ar,tr,null);var He=M.createFramebuffer();if(M.bindFramebuffer(Hr,He),M.framebufferTexture2D(Hr,jr,Re,_e,0),M.bindTexture(Re,null),M.checkFramebufferStatus(Hr)!==ot)we=!1;else{M.viewport(0,0,1,1),M.clearColor(1,0,0,1),M.clear(at);var or=Z.allocType(tr,4);M.readPixels(0,0,1,1,Ar,tr,or),M.getError()?we=!1:(M.deleteFramebuffer(He),M.deleteTexture(_e),we=or[0]===1),Z.freeType(or)}}var ir=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),sr=!0;if(!ir){var Qr=M.createTexture(),Fr=Z.allocType(cr,36);M.activeTexture(kt),M.bindTexture(lr,Qr),M.texImage2D(st,0,Ar,3,3,0,Ar,cr,Fr),Z.freeType(Fr),M.bindTexture(lr,null),M.deleteTexture(Qr),sr=!M.getError()}return{colorBits:[M.getParameter(ue),M.getParameter(Le),M.getParameter(Be),M.getParameter(Ee)],depthBits:M.getParameter(Xe),stencilBits:M.getParameter(Ae),subpixelBits:M.getParameter(ae),extensions:Object.keys(B).filter(function(yr){return!!B[yr]}),maxAnisotropic:V,maxDrawbuffers:he,maxColorAttachments:xe,pointSizeDims:M.getParameter(rr),lineWidthDims:M.getParameter(ze),maxViewportDims:M.getParameter($e),maxCombinedTextureUnits:M.getParameter(ne),maxCubeMapSize:M.getParameter(Lr),maxRenderbufferSize:M.getParameter(Pr),maxTextureUnits:M.getParameter(ur),maxTextureSize:M.getParameter(We),maxAttributes:M.getParameter(Ue),maxVertexUniforms:M.getParameter(ee),maxVertexTextureUnits:M.getParameter(je),maxVaryingVectors:M.getParameter(de),maxFragmentUniforms:M.getParameter(er),glsl:M.getParameter(Kr),renderer:M.getParameter(Ir),vendor:M.getParameter(_r),version:M.getParameter(Yr),readFloat:we,npotTextureCube:sr}},Xr=function(M){return M instanceof Uint8Array||M instanceof Uint16Array||M instanceof Uint32Array||M instanceof Int8Array||M instanceof Int16Array||M instanceof Int32Array||M instanceof Float32Array||M instanceof Float64Array||M instanceof Uint8ClampedArray};function nt(M){return!!M&&typeof M=="object"&&Array.isArray(M.shape)&&Array.isArray(M.stride)&&typeof M.offset=="number"&&M.shape.length===M.stride.length&&(Array.isArray(M.data)||Xr(M.data))}var gr=function(M){return Object.keys(M).map(function(B){return M[B]})},Se={shape:wt,flatten:Tt};function Ne(M,B,V){for(var he=0;he0){var Zr;if(Array.isArray(ke[0])){dr=Ia(ke);for(var Ie=1,qe=1;qe0){if(typeof Ie[0]=="number"){var fr=Z.allocType(Oe.dtype,Ie.length);lo(fr,Ie),dr(fr,Sr),Z.freeType(fr)}else if(Array.isArray(Ie[0])||Xr(Ie[0])){hr=Ia(Ie);var vr=ia(Ie,hr,Oe.dtype);dr(vr,Sr),Z.freeType(vr)}}}else if(nt(Ie)){hr=Ie.shape;var Er=Ie.stride,Jr=0,ct=0,mr=0,Cr=0;hr.length===1?(Jr=hr[0],ct=1,mr=Er[0],Cr=0):hr.length===2&&(Jr=hr[0],ct=hr[1],mr=Er[0],Cr=Er[1]);var ft=Array.isArray(Ie.data)?Oe.dtype:en(Ie.data),ut=Z.allocType(ft,Jr*ct);Oi(ut,Ie.data,Jr,ct,mr,Cr,Ie.offset),dr(ut,Sr),Z.freeType(ut)}return br}return Ze||br(fe),br._reglType="buffer",br._buffer=Oe,br.subdata=Zr,V.profile&&(br.stats=Oe.stats),br.destroy=function(){Fr(Oe)},br}function Pe(){gr(we).forEach(function(fe){fe.buffer=M.createBuffer(),M.bindBuffer(fe.type,fe.buffer),M.bufferData(fe.type,fe.persistentData||fe.byteLength,fe.usage)})}return V.profile&&(B.getTotalBufferSize=function(){var fe=0;return Object.keys(we).forEach(function(ke){fe+=we[ke].stats.size}),fe}),{create:yr,createStream:or,destroyStream:ir,clear:function(){gr(we).forEach(Fr),He.forEach(Fr)},getBuffer:function(fe){return fe&&fe._buffer instanceof _e?fe._buffer:null},restore:Pe,_initBuffer:Qr}}var nn=0,Zn=0,fs=1,us=1,kl=4,Zu=4,Oo={points:nn,point:Zn,lines:fs,line:us,triangles:kl,triangle:Zu,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Yf=0,Wf=1,ji=4,di=5120,Bi=5121,Cl=5122,pi=5123,Pt=5124,$t=5125,ca=34963,_t=35040,Jn=35044;function za(M,B,V,he){var xe={},we=0,_e={uint8:Bi,uint16:pi};B.oes_element_index_uint&&(_e.uint32=$t);function He(Pe){this.id=we++,xe[this.id]=this,this.buffer=Pe,this.primType=ji,this.vertCount=0,this.type=0}He.prototype.bind=function(){this.buffer.bind()};var or=[];function ir(Pe){var fe=or.pop();return fe||(fe=new He(V.create(null,ca,!0,!1)._buffer)),Qr(fe,Pe,_t,-1,-1,0,0),fe}function sr(Pe){or.push(Pe)}function Qr(Pe,fe,ke,Ze,nr,Oe,br){Pe.buffer.bind();var dr;if(fe){var Zr=br;!br&&(!Xr(fe)||nt(fe)&&!Xr(fe.data))&&(Zr=B.oes_element_index_uint?$t:pi),V._initBuffer(Pe.buffer,fe,ke,Zr,3)}else M.bufferData(ca,Oe,ke),Pe.buffer.dtype=dr||Bi,Pe.buffer.usage=ke,Pe.buffer.dimension=3,Pe.buffer.byteLength=Oe;if(dr=br,!br){switch(Pe.buffer.dtype){case Bi:case di:dr=Bi;break;case pi:case Cl:dr=pi;break;case $t:case Pt:dr=$t;break;default:}Pe.buffer.dtype=dr}Pe.type=dr;var Ie=nr;Ie<0&&(Ie=Pe.buffer.byteLength,dr===pi?Ie>>=1:dr===$t&&(Ie>>=2)),Pe.vertCount=Ie;var qe=Ze;if(Ze<0){qe=ji;var Sr=Pe.buffer.dimension;Sr===1&&(qe=Yf),Sr===2&&(qe=Wf),Sr===3&&(qe=ji)}Pe.primType=qe}function Fr(Pe){he.elementsCount--,delete xe[Pe.id],Pe.buffer.destroy(),Pe.buffer=null}function yr(Pe,fe){var ke=V.create(null,ca,!0),Ze=new He(ke._buffer);he.elementsCount++;function nr(Oe){if(!Oe)ke(),Ze.primType=ji,Ze.vertCount=0,Ze.type=Bi;else if(typeof Oe=="number")ke(Oe),Ze.primType=ji,Ze.vertCount=Oe|0,Ze.type=Bi;else{var br=null,dr=Jn,Zr=-1,Ie=-1,qe=0,Sr=0;Array.isArray(Oe)||Xr(Oe)||nt(Oe)?br=Oe:("data"in Oe&&(br=Oe.data),"usage"in Oe&&(dr=Pa[Oe.usage]),"primitive"in Oe&&(Zr=Oo[Oe.primitive]),"count"in Oe&&(Ie=Oe.count|0),"type"in Oe&&(Sr=_e[Oe.type]),"length"in Oe?qe=Oe.length|0:(qe=Ie,Sr===pi||Sr===Cl?qe*=2:(Sr===$t||Sr===Pt)&&(qe*=4))),Qr(Ze,br,dr,Zr,Ie,qe,Sr)}return nr}return nr(Pe),nr._reglType="elements",nr._elements=Ze,nr.subdata=function(Oe,br){return ke.subdata(Oe,br),nr},nr.destroy=function(){Fr(Ze)},nr}return{create:yr,createStream:ir,destroyStream:sr,getElements:function(Pe){return typeof Pe=="function"&&Pe._elements instanceof He?Pe._elements:null},clear:function(){gr(xe).forEach(Fr)}}}var Pn=new Float32Array(1),ra=new Uint32Array(Pn.buffer),Ao=5123;function ol(M){for(var B=Z.allocType(Ao,M.length),V=0;V>>31<<15,we=(he<<1>>>24)-127,_e=he>>13&1023;if(we<-24)B[V]=xe;else if(we<-14){var He=-14-we;B[V]=xe+(_e+1024>>He)}else we>15?B[V]=xe+31744:B[V]=xe+(we+15<<10)+_e}return B}function Si(M){return Array.isArray(M)||Xr(M)}var Qp=34467,Mn=3553,Ll=34067,Bo=34069,mi=6408,tf=6406,zo=6407,To=6409,Dl=6410,Ju=32854,Go=32855,cs=36194,Sh=32819,Kp=32820,$u=33635,Dv=34042,vs=6402,Fl=34041,Uo=35904,Mo=35906,yi=36193,af=33776,hs=33777,ll=33778,nf=33779,Fv=35986,Qu=35987,jf=34798,qv=35840,Rv=35841,Ku=35842,Pv=35843,ec=36196,So=5121,of=5123,Xf=5125,zi=5126,lf=10242,e1=10243,r1=10497,Zf=33071,Eh=33648,Jf=10240,t1=10241,ql=9728,rc=9729,ds=9984,sf=9985,ps=9986,sl=9987,kh=33170,fl=4352,a1=4353,tc=4354,n1=34046,i1=3317,o1=37440,Ch=37441,$f=37443,Nv=37444,Eo=33984,Lh=[ds,ps,sf,sl],Ei=[0,To,Dl,zo,mi],Sn={};Sn[To]=Sn[tf]=Sn[vs]=1,Sn[Fl]=Sn[Dl]=2,Sn[zo]=Sn[Uo]=3,Sn[mi]=Sn[Mo]=4;function Xi(M){return"[object "+M+"]"}var Qf=Xi("HTMLCanvasElement"),ul=Xi("OffscreenCanvas"),ff=Xi("CanvasRenderingContext2D"),ac=Xi("ImageBitmap"),Iv=Xi("HTMLImageElement"),Ov=Xi("HTMLVideoElement"),l1=Object.keys(It).concat([Qf,ul,ff,ac,Iv,Ov]),so=[];so[So]=1,so[zi]=4,so[yi]=2,so[of]=2,so[Xf]=4;var Aa=[];Aa[Ju]=2,Aa[Go]=2,Aa[cs]=2,Aa[Fl]=4,Aa[af]=.5,Aa[hs]=.5,Aa[ll]=1,Aa[nf]=1,Aa[Fv]=.5,Aa[Qu]=1,Aa[jf]=1,Aa[qv]=.5,Aa[Rv]=.25,Aa[Ku]=.5,Aa[Pv]=.25,Aa[ec]=.5;function Bv(M){return Array.isArray(M)&&(M.length===0||typeof M[0]=="number")}function zv(M){if(!Array.isArray(M))return!1;var B=M.length;return!(B===0||!Si(M[0]))}function Zi(M){return Object.prototype.toString.call(M)}function Gv(M){return Zi(M)===Qf}function Uv(M){return Zi(M)===ul}function s1(M){return Zi(M)===ff}function f1(M){return Zi(M)===ac}function u1(M){return Zi(M)===Iv}function c1(M){return Zi(M)===Ov}function Kf(M){if(!M)return!1;var B=Zi(M);return l1.indexOf(B)>=0?!0:Bv(M)||zv(M)||nt(M)}function Hv(M){return It[Object.prototype.toString.call(M)]|0}function v1(M,B){var V=B.length;switch(M.type){case So:case of:case Xf:case zi:var he=Z.allocType(M.type,V);he.set(B),M.data=he;break;case yi:M.data=ol(B);break;default:}}function Vv(M,B){return Z.allocType(M.type===yi?zi:M.type,B)}function nc(M,B){M.type===yi?(M.data=ol(B),Z.freeType(B)):M.data=B}function Dh(M,B,V,he,xe,we){for(var _e=M.width,He=M.height,or=M.channels,ir=_e*He*or,sr=Vv(M,ir),Qr=0,Fr=0;Fr=1;)He+=_e*or*or,or/=2;return He}else return _e*V*he}function Fh(M,B,V,he,xe,we,_e){var He={"don't care":fl,"dont care":fl,nice:tc,fast:a1},or={repeat:r1,clamp:Zf,mirror:Eh},ir={nearest:ql,linear:rc},sr=e({mipmap:sl,"nearest mipmap nearest":ds,"linear mipmap nearest":sf,"nearest mipmap linear":ps,"linear mipmap linear":sl},ir),Qr={none:0,browser:Nv},Fr={uint8:So,rgba4:Sh,rgb565:$u,"rgb5 a1":Kp},yr={alpha:tf,luminance:To,"luminance alpha":Dl,rgb:zo,rgba:mi,rgba4:Ju,"rgb5 a1":Go,rgb565:cs},Pe={};B.ext_srgb&&(yr.srgb=Uo,yr.srgba=Mo),B.oes_texture_float&&(Fr.float32=Fr.float=zi),B.oes_texture_half_float&&(Fr.float16=Fr["half float"]=yi),B.webgl_depth_texture&&(e(yr,{depth:vs,"depth stencil":Fl}),e(Fr,{uint16:of,uint32:Xf,"depth stencil":Dv})),B.webgl_compressed_texture_s3tc&&e(Pe,{"rgb s3tc dxt1":af,"rgba s3tc dxt1":hs,"rgba s3tc dxt3":ll,"rgba s3tc dxt5":nf}),B.webgl_compressed_texture_atc&&e(Pe,{"rgb atc":Fv,"rgba atc explicit alpha":Qu,"rgba atc interpolated alpha":jf}),B.webgl_compressed_texture_pvrtc&&e(Pe,{"rgb pvrtc 4bppv1":qv,"rgb pvrtc 2bppv1":Rv,"rgba pvrtc 4bppv1":Ku,"rgba pvrtc 2bppv1":Pv}),B.webgl_compressed_texture_etc1&&(Pe["rgb etc1"]=ec);var fe=Array.prototype.slice.call(M.getParameter(Qp));Object.keys(Pe).forEach(function(z){var me=Pe[z];fe.indexOf(me)>=0&&(yr[z]=me)});var ke=Object.keys(yr);V.textureFormats=ke;var Ze=[];Object.keys(yr).forEach(function(z){var me=yr[z];Ze[me]=z});var nr=[];Object.keys(Fr).forEach(function(z){var me=Fr[z];nr[me]=z});var Oe=[];Object.keys(ir).forEach(function(z){var me=ir[z];Oe[me]=z});var br=[];Object.keys(sr).forEach(function(z){var me=sr[z];br[me]=z});var dr=[];Object.keys(or).forEach(function(z){var me=or[z];dr[me]=z});var Zr=ke.reduce(function(z,me){var be=yr[me];return be===To||be===tf||be===To||be===Dl||be===vs||be===Fl||B.ext_srgb&&(be===Uo||be===Mo)?z[be]=be:be===Go||me.indexOf("rgba")>=0?z[be]=mi:z[be]=zo,z},{});function Ie(){this.internalformat=mi,this.format=mi,this.type=So,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=Nv,this.width=0,this.height=0,this.channels=0}function qe(z,me){z.internalformat=me.internalformat,z.format=me.format,z.type=me.type,z.compressed=me.compressed,z.premultiplyAlpha=me.premultiplyAlpha,z.flipY=me.flipY,z.unpackAlignment=me.unpackAlignment,z.colorSpace=me.colorSpace,z.width=me.width,z.height=me.height,z.channels=me.channels}function Sr(z,me){if(!(typeof me!="object"||!me)){if("premultiplyAlpha"in me&&(z.premultiplyAlpha=me.premultiplyAlpha),"flipY"in me&&(z.flipY=me.flipY),"alignment"in me&&(z.unpackAlignment=me.alignment),"colorSpace"in me&&(z.colorSpace=Qr[me.colorSpace]),"type"in me){var be=me.type;z.type=Fr[be]}var Nr=z.width,Ft=z.height,Ht=z.channels,qr=!1;"shape"in me?(Nr=me.shape[0],Ft=me.shape[1],me.shape.length===3&&(Ht=me.shape[2],qr=!0)):("radius"in me&&(Nr=Ft=me.radius),"width"in me&&(Nr=me.width),"height"in me&&(Ft=me.height),"channels"in me&&(Ht=me.channels,qr=!0)),z.width=Nr|0,z.height=Ft|0,z.channels=Ht|0;var N=!1;if("format"in me){var U=me.format,$=z.internalformat=yr[U];z.format=Zr[$],U in Fr&&("type"in me||(z.type=Fr[U])),U in Pe&&(z.compressed=!0),N=!0}!qr&&N?z.channels=Sn[z.format]:qr&&!N&&z.channels!==Ei[z.format]&&(z.format=z.internalformat=Ei[z.channels])}}function hr(z){M.pixelStorei(o1,z.flipY),M.pixelStorei(Ch,z.premultiplyAlpha),M.pixelStorei($f,z.colorSpace),M.pixelStorei(i1,z.unpackAlignment)}function fr(){Ie.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function vr(z,me){var be=null;if(Kf(me)?be=me:me&&(Sr(z,me),"x"in me&&(z.xOffset=me.x|0),"y"in me&&(z.yOffset=me.y|0),Kf(me.data)&&(be=me.data)),me.copy){var Nr=xe.viewportWidth,Ft=xe.viewportHeight;z.width=z.width||Nr-z.xOffset,z.height=z.height||Ft-z.yOffset,z.needsCopy=!0}else if(!be)z.width=z.width||1,z.height=z.height||1,z.channels=z.channels||4;else if(Xr(be))z.channels=z.channels||4,z.data=be,!("type"in me)&&z.type===So&&(z.type=Hv(be));else if(Bv(be))z.channels=z.channels||4,v1(z,be),z.alignment=1,z.needsFree=!0;else if(nt(be)){var Ht=be.data;!Array.isArray(Ht)&&z.type===So&&(z.type=Hv(Ht));var qr=be.shape,N=be.stride,U,$,pe,Te,ce,se;qr.length===3?(pe=qr[2],se=N[2]):(pe=1,se=1),U=qr[0],$=qr[1],Te=N[0],ce=N[1],z.alignment=1,z.width=U,z.height=$,z.channels=pe,z.format=z.internalformat=Ei[pe],z.needsFree=!0,Dh(z,Ht,Te,ce,se,be.offset)}else if(Gv(be)||Uv(be)||s1(be))Gv(be)||Uv(be)?z.element=be:z.element=be.canvas,z.width=z.element.width,z.height=z.element.height,z.channels=4;else if(f1(be))z.element=be,z.width=be.width,z.height=be.height,z.channels=4;else if(u1(be))z.element=be,z.width=be.naturalWidth,z.height=be.naturalHeight,z.channels=4;else if(c1(be))z.element=be,z.width=be.videoWidth,z.height=be.videoHeight,z.channels=4;else if(zv(be)){var re=z.width||be[0].length,W=z.height||be.length,K=z.channels;Si(be[0][0])?K=K||be[0][0].length:K=K||1;for(var Y=Se.shape(be),ve=1,Ce=0;Ce>=Ft,be.height>>=Ft,vr(be,Nr[Ft]),z.mipmask|=1<=0&&!("faces"in me)&&(z.genMipmaps=!0)}if("mag"in me){var Nr=me.mag;z.magFilter=ir[Nr]}var Ft=z.wrapS,Ht=z.wrapT;if("wrap"in me){var qr=me.wrap;typeof qr=="string"?Ft=Ht=or[qr]:Array.isArray(qr)&&(Ft=or[qr[0]],Ht=or[qr[1]])}else{if("wrapS"in me){var N=me.wrapS;Ft=or[N]}if("wrapT"in me){var U=me.wrapT;Ht=or[U]}}if(z.wrapS=Ft,z.wrapT=Ht,"anisotropic"in me){var $=me.anisotropic;z.anisotropic=me.anisotropic}if("mipmap"in me){var pe=!1;switch(typeof me.mipmap){case"string":z.mipmapHint=He[me.mipmap],z.genMipmaps=!0,pe=!0;break;case"boolean":pe=z.genMipmaps=me.mipmap;break;case"object":z.genMipmaps=!1,pe=!0;break;default:}pe&&!("min"in me)&&(z.minFilter=ds)}}function Wa(z,me){M.texParameteri(me,t1,z.minFilter),M.texParameteri(me,Jf,z.magFilter),M.texParameteri(me,lf,z.wrapS),M.texParameteri(me,e1,z.wrapT),B.ext_texture_filter_anisotropic&&M.texParameteri(me,n1,z.anisotropic),z.genMipmaps&&(M.hint(kh,z.mipmapHint),M.generateMipmap(me))}var sn=0,ya={},ga=V.maxTextureUnits,Ea=Array(ga).map(function(){return null});function At(z){Ie.call(this),this.mipmask=0,this.internalformat=mi,this.id=sn++,this.refCount=1,this.target=z,this.texture=M.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new Ut,_e.profile&&(this.stats={size:0})}function Da(z){M.activeTexture(Eo),M.bindTexture(z.target,z.texture)}function Wt(){var z=Ea[0];z?M.bindTexture(z.target,z.texture):M.bindTexture(Mn,null)}function ja(z){var me=z.texture,be=z.unit,Nr=z.target;be>=0&&(M.activeTexture(Eo+be),M.bindTexture(Nr,null),Ea[be]=null),M.deleteTexture(me),z.texture=null,z.params=null,z.pixels=null,z.refCount=0,delete ya[z.id],we.textureCount--}e(At.prototype,{bind:function(){var z=this;z.bindCount+=1;var me=z.unit;if(me<0){for(var be=0;be0)continue;Nr.unit=-1}Ea[be]=z,me=be;break}me>=ga,_e.profile&&we.maxTextureUnits>ce)-pe,se.height=se.height||(be.height>>ce)-Te,Da(be),Jr(se,Mn,pe,Te,ce),Wt(),Cr(se),Nr}function Ht(qr,N){var U=qr|0,$=N|0||U;if(U===be.width&&$===be.height)return Nr;Nr.width=be.width=U,Nr.height=be.height=$,Da(be);for(var pe=0;be.mipmask>>pe;++pe){var Te=U>>pe,ce=$>>pe;if(!Te||!ce)break;M.texImage2D(Mn,pe,be.format,Te,ce,0,be.format,be.type,null)}return Wt(),_e.profile&&(be.stats.size=Rl(be.internalformat,be.type,U,$,!1,!1)),Nr}return Nr(z,me),Nr.subimage=Ft,Nr.resize=Ht,Nr._reglType="texture2d",Nr._texture=be,_e.profile&&(Nr.stats=be.stats),Nr.destroy=function(){be.decRef()},Nr}function un(z,me,be,Nr,Ft,Ht){var qr=new At(Ll);ya[qr.id]=qr,we.cubeCount++;var N=new Array(6);function U(Te,ce,se,re,W,K){var Y,ve=qr.texInfo;for(Ut.call(ve),Y=0;Y<6;++Y)N[Y]=Dt();if(typeof Te=="number"||!Te){var Ce=Te|0||1;for(Y=0;Y<6;++Y)ut(N[Y],Ce,Ce)}else if(typeof Te=="object")if(ce)St(N[0],Te),St(N[1],ce),St(N[2],se),St(N[3],re),St(N[4],W),St(N[5],K);else if(Ua(ve,Te),Sr(qr,Te),"faces"in Te){var Je=Te.faces;for(Y=0;Y<6;++Y)qe(N[Y],qr),St(N[Y],Je[Y])}else for(Y=0;Y<6;++Y)St(N[Y],Te);for(qe(qr,N[0]),ve.genMipmaps?qr.mipmask=(N[0].width<<1)-1:qr.mipmask=N[0].mipmask,qr.internalformat=N[0].internalformat,U.width=N[0].width,U.height=N[0].height,Da(qr),Y=0;Y<6;++Y)aa(N[Y],Bo+Y);for(Wa(ve,Ll),Wt(),_e.profile&&(qr.stats.size=Rl(qr.internalformat,qr.type,U.width,U.height,ve.genMipmaps,!0)),U.format=Ze[qr.internalformat],U.type=nr[qr.type],U.mag=Oe[ve.magFilter],U.min=br[ve.minFilter],U.wrapS=dr[ve.wrapS],U.wrapT=dr[ve.wrapT],Y=0;Y<6;++Y)ln(N[Y]);return U}function $(Te,ce,se,re,W){var K=se|0,Y=re|0,ve=W|0,Ce=mr();return qe(Ce,qr),Ce.width=0,Ce.height=0,vr(Ce,ce),Ce.width=Ce.width||(qr.width>>ve)-K,Ce.height=Ce.height||(qr.height>>ve)-Y,Da(qr),Jr(Ce,Bo+Te,K,Y,ve),Wt(),Cr(Ce),U}function pe(Te){var ce=Te|0;if(ce!==qr.width){U.width=qr.width=ce,U.height=qr.height=ce,Da(qr);for(var se=0;se<6;++se)for(var re=0;qr.mipmask>>re;++re)M.texImage2D(Bo+se,re,qr.format,ce>>re,ce>>re,0,qr.format,qr.type,null);return Wt(),_e.profile&&(qr.stats.size=Rl(qr.internalformat,qr.type,U.width,U.height,!1,!0)),U}}return U(z,me,be,Nr,Ft,Ht),U.subimage=$,U.resize=pe,U._reglType="textureCube",U._texture=qr,_e.profile&&(U.stats=qr.stats),U.destroy=function(){qr.decRef()},U}function pt(){for(var z=0;z>Nr,be.height>>Nr,0,be.internalformat,be.type,null);else for(var Ft=0;Ft<6;++Ft)M.texImage2D(Bo+Ft,Nr,be.internalformat,be.width>>Nr,be.height>>Nr,0,be.internalformat,be.type,null);Wa(be.texInfo,be.target)})}function Qt(){for(var z=0;z=0?ln=!0:or.indexOf(Ut)>=0&&(ln=!1))),("depthTexture"in At||"depthStencilTexture"in At)&&(Ea=!!(At.depthTexture||At.depthStencilTexture)),"depth"in At&&(typeof At.depth=="boolean"?aa=At.depth:(sn=At.depth,Sa=!1)),"stencil"in At&&(typeof At.stencil=="boolean"?Sa=At.stencil:(ya=At.stencil,aa=!1)),"depthStencil"in At&&(typeof At.depthStencil=="boolean"?aa=Sa=At.depthStencil:(ga=At.depthStencil,aa=!1,Sa=!1))}var Wt=null,ja=null,fn=null,un=null;if(Array.isArray(Dt))Wt=Dt.map(Pe);else if(Dt)Wt=[Pe(Dt)];else for(Wt=new Array(Wa),ft=0;ft0&&(Cr.depth=vr[0].depth,Cr.stencil=vr[0].stencil,Cr.depthStencil=vr[0].depthStencil),vr[mr]?vr[mr](Cr):vr[mr]=qe(Cr)}return e(Er,{width:ft,height:ft,color:Ut})}function Jr(ct){var mr,Cr=ct|0;if(Cr===Er.width)return Er;var ft=Er.color;for(mr=0;mr=ft.byteLength?ut.subdata(ft):(ut.destroy(),qe.buffers[ct]=null)),qe.buffers[ct]||(ut=qe.buffers[ct]=xe.create(mr,t0,!1,!0)),Cr.buffer=xe.getBuffer(ut),Cr.size=Cr.buffer.dimension|0,Cr.normalized=!1,Cr.type=Cr.buffer.dtype,Cr.offset=0,Cr.stride=0,Cr.divisor=0,Cr.state=1,Er[ct]=1}else xe.getBuffer(mr)?(Cr.buffer=xe.getBuffer(mr),Cr.size=Cr.buffer.dimension|0,Cr.normalized=!1,Cr.type=Cr.buffer.dtype,Cr.offset=0,Cr.stride=0,Cr.divisor=0,Cr.state=1):xe.getBuffer(mr.buffer)?(Cr.buffer=xe.getBuffer(mr.buffer),Cr.size=(+mr.size||Cr.buffer.dimension)|0,Cr.normalized=!!mr.normalized||!1,"type"in mr?Cr.type=hn[mr.type]:Cr.type=Cr.buffer.dtype,Cr.offset=(mr.offset||0)|0,Cr.stride=(mr.stride||0)|0,Cr.divisor=(mr.divisor||0)|0,Cr.state=1):"x"in mr&&(Cr.x=+mr.x||0,Cr.y=+mr.y||0,Cr.z=+mr.z||0,Cr.w=+mr.w||0,Cr.state=2)}for(var St=0;St1)for(var hr=0;hrfe&&(fe=ke.stats.uniformsCount)}),fe},V.getMaxAttributesCount=function(){var fe=0;return sr.forEach(function(ke){ke.stats.attributesCount>fe&&(fe=ke.stats.attributesCount)}),fe});function Pe(){xe={},we={};for(var fe=0;fe16&&(V=cl(V,M.length*8));for(var he=Array(16),xe=Array(16),we=0;we<16;we++)he[we]=V[we]^909522486,xe[we]=V[we]^1549556828;var _e=cl(he.concat(au(B)),512+B.length*8);return o0(cl(xe.concat(_e),768))}function Ih(M){for(var B=Ph?"0123456789ABCDEF":"0123456789abcdef",V="",he,xe=0;xe>>4&15)+B.charAt(he&15);return V}function S1(M){for(var B="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",V="",he=M.length,xe=0;xeM.length*8?V+=T1:V+=B.charAt(we>>>6*(3-_e)&63);return V}function E1(M,B){var V=B.length,he=Array(),xe,we,_e,He,or=Array(Math.ceil(M.length/2));for(xe=0;xe0;){for(He=Array(),_e=0,xe=0;xe0||we>0)&&(He[He.length]=we);he[he.length]=_e,or=He}var ir="";for(xe=he.length-1;xe>=0;xe--)ir+=B.charAt(he[xe]);var sr=Math.ceil(M.length*8/(Math.log(B.length)/Math.log(2)));for(xe=ir.length;xe>>6&31,128|he&63):he<=65535?B+=String.fromCharCode(224|he>>>12&15,128|he>>>6&63,128|he&63):he<=2097151&&(B+=String.fromCharCode(240|he>>>18&7,128|he>>>12&63,128|he>>>6&63,128|he&63));return B}function au(M){for(var B=Array(M.length>>2),V=0;V>5]|=(M.charCodeAt(V/8)&255)<<24-V%32;return B}function o0(M){for(var B="",V=0;V>5]>>>24-V%32&255);return B}function Bn(M,B){return M>>>B|M<<32-B}function l0(M,B){return M>>>B}function Oh(M,B,V){return M&B^~M&V}function Bh(M,B,V){return M&B^M&V^B&V}function s0(M){return Bn(M,2)^Bn(M,13)^Bn(M,22)}function zh(M){return Bn(M,6)^Bn(M,11)^Bn(M,25)}function sc(M){return Bn(M,7)^Bn(M,18)^l0(M,3)}function fc(M){return Bn(M,17)^Bn(M,19)^l0(M,10)}var C1=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function cl(M,B){var V=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),he=new Array(64),xe,we,_e,He,or,ir,sr,Qr,Fr,yr,Pe,fe;for(M[B>>5]|=128<<24-B%32,M[(B+64>>9<<4)+15]=B,Fr=0;Fr>16)+(B>>16)+(V>>16);return he<<16|V&65535}function Co(M){return Array.prototype.slice.call(M)}function Lo(M){return Co(M).join("")}function Gh(M){var B=M&&M.cache,V=0,he=[],xe=[],we=[];function _e(Pe,fe){var ke=fe&&fe.stable;if(!ke){for(var Ze=0;Ze0&&(Pe.push(nr,"="),Pe.push.apply(Pe,Co(arguments)),Pe.push(";")),nr}return e(fe,{def:Ze,toString:function(){return Lo([ke.length>0?"var "+ke.join(",")+";":"",Lo(Pe)])}})}function or(){var Pe=He(),fe=He(),ke=Pe.toString,Ze=fe.toString;function nr(Oe,br){fe(Oe,br,"=",Pe.def(Oe,br),";")}return e(function(){Pe.apply(Pe,Co(arguments))},{def:Pe.def,entry:Pe,exit:fe,save:nr,set:function(Oe,br,dr){nr(Oe,br),Pe(Oe,br,"=",dr,";")},toString:function(){return ke()+Ze()}})}function ir(){var Pe=Lo(arguments),fe=or(),ke=or(),Ze=fe.toString,nr=ke.toString;return e(fe,{then:function(){return fe.apply(fe,Co(arguments)),this},else:function(){return ke.apply(ke,Co(arguments)),this},toString:function(){var Oe=nr();return Oe&&(Oe="else{"+Oe+"}"),Lo(["if(",Pe,"){",Ze(),"}",Oe])}})}var sr=He(),Qr={};function Fr(Pe,fe){var ke=[];function Ze(){var Zr="a"+ke.length;return ke.push(Zr),Zr}fe=fe||0;for(var nr=0;nr":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Fe={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Ge={cw:w,ccw:C};function Ke(S){return Array.isArray(S)||Xr(S)||nt(S)}function ar(S){return S.sort(function(B,V){return B===si?-1:V===si?1:B=1,he>=2,B)}else if(V===ws){var xe=S.data;return new Le(xe.thisDep,xe.contextDep,xe.propDep,B)}else{if(V===vc)return new Le(!1,!1,!1,B);if(V===vf){for(var we=!1,_e=!1,He=!1,or=0;or=1&&(_e=!0),sr>=2&&(He=!0)}else ir.type===ws&&(we=we||ir.data.thisDep,_e=_e||ir.data.contextDep,He=He||ir.data.propDep)}return new Le(we,_e,He,B)}else return new Le(V===cf,V===cc,V===uf,B)}}var yt=new Le(!1,!1,!1,function(){});function Ct(S,B,V,he,xe,we,_e,He,or,ir,sr,Qr,Fr,yr,Pe,fe){var ke=ir.Record,Ze={add:32774,subtract:32778,"reverse subtract":32779};V.ext_blend_minmax&&(Ze.min=L,Ze.max=D);var nr=V.angle_instanced_arrays,Oe=V.webgl_draw_buffers,br=V.oes_vertex_array_object,dr={dirty:!0,profile:fe.profile},Zr={},Ie=[],qe={},Sr={};function hr(N){return N.replace(".","_")}function fr(N,U,$){var pe=hr(N);Ie.push(N),Zr[pe]=dr[pe]=!!$,qe[pe]=U}function vr(N,U,$){var pe=hr(N);Ie.push(N),Array.isArray($)?(dr[pe]=$.slice(),Zr[pe]=$.slice()):dr[pe]=Zr[pe]=$,Sr[pe]=U}function Er(N){return!!isNaN(N)}fr(hc,q1),fr(f0,F1),vr(u0,"blendColor",[0,0,0,0]),vr(iu,"blendEquationSeparate",[ie,ie]),vr(ou,"blendFuncSeparate",[ne,j,ne,j]),fr(dc,Vh,!0),vr(pc,"depthFunc",ye),vr(mc,"depthRange",[0,1]),vr(yc,"depthMask",!0),vr(lu,lu,[!0,!0,!0,!0]),fr(hf,Hh),vr(c0,"cullFace",g),vr(su,su,C),vr(df,df,1),fr(gc,wc),vr(fu,"polygonOffset",[0,0]),fr(pf,Wh),fr(mf,Ac),vr(yf,"sampleCoverage",[1,!1]),fr(bc,R1),vr(uu,"stencilMask",-1),vr(Ci,"stencilFunc",[G,0,-1]),vr(gf,"stencilOpSeparate",[h,R,R,R]),vr(vl,"stencilOpSeparate",[g,R,R,R]),fr(cu,Yh),vr(hl,"scissor",[0,0,S.drawingBufferWidth,S.drawingBufferHeight]),vr(si,si,[0,0,S.drawingBufferWidth,S.drawingBufferHeight]);var Jr={gl:S,context:Fr,strings:B,next:Zr,current:dr,draw:Qr,elements:we,buffer:xe,shader:sr,attributes:ir.state,vao:ir,uniforms:or,framebuffer:He,extensions:V,timer:yr,isBufferArgs:Ke},ct={primTypes:Oo,compareFuncs:Me,blendFuncs:Qe,blendEquations:Ze,stencilOps:Fe,glTypes:hn,orientationType:Ge};Oe&&(ct.backBuffer=[g],ct.drawBuffer=k(he.maxDrawbuffers,function(N){return N===0?[0]:k(N,function(U){return Ye+U})}));var mr=0;function Cr(){var N=Gh({cache:Pe}),U=N.link,$=N.global;N.id=mr++,N.batchId="0";var pe=U(Jr),Te=N.shared={props:"a0"};Object.keys(Jr).forEach(function(K){Te[K]=$.def(pe,".",K)});var ue=N.next={},se=N.current={};Object.keys(Sr).forEach(function(K){Array.isArray(dr[K])&&(ue[K]=$.def(Te.next,".",K),se[K]=$.def(Te.current,".",K))});var re=N.constants={};Object.keys(ct).forEach(function(K){re[K]=$.def(JSON.stringify(ct[K]))}),N.invoke=function(K,Y){switch(Y.type){case nu:var ve=["this",Te.context,Te.props,N.batchId];return K.def(U(Y.data),".call(",ve.slice(0,Math.max(Y.data.length+1,4)),")");case uf:return K.def(Te.props,Y.data);case cc:return K.def(Te.context,Y.data);case cf:return K.def("this",Y.data);case ws:return Y.data.append(N,K),Y.data.ref;case vc:return Y.data.toString();case vf:return Y.data.map(function(Ce){return N.invoke(K,Ce)})}},N.attribCache={};var W={};return N.scopeAttrib=function(K){var Y=B.id(K);if(Y in W)return W[Y];var ve=ir.scope[Y];ve||(ve=ir.scope[Y]=new ke);var Ce=W[Y]=U(ve);return Ce},N}function ft(N){var U=N.static,$=N.dynamic,pe;if(As in U){var Te=!!U[As];pe=zr(function(se,re){return Te}),pe.enable=Te}else if(As in $){var ue=$[As];pe=it(ue,function(se,re){return se.invoke(re,ue)})}return pe}function ut(N,U){var $=N.static,pe=N.dynamic;if(Do in $){var Te=$[Do];return Te?(Te=He.getFramebuffer(Te),zr(function(se,re){var W=se.link(Te),K=se.shared;re.set(K.framebuffer,".next",W);var Y=K.context;return re.set(Y,"."+$i,W+".width"),re.set(Y,"."+Qi,W+".height"),W})):zr(function(se,re){var W=se.shared;re.set(W.framebuffer,".next","null");var K=W.context;return re.set(K,"."+$i,K+"."+xc),re.set(K,"."+Qi,K+"."+_c),"null"})}else if(Do in pe){var ue=pe[Do];return it(ue,function(se,re){var W=se.invoke(re,ue),K=se.shared,Y=K.framebuffer,ve=re.def(Y,".getFramebuffer(",W,")");re.set(Y,".next",ve);var Ce=K.context;return re.set(Ce,"."+$i,ve+"?"+ve+".width:"+Ce+"."+xc),re.set(Ce,"."+Qi,ve+"?"+ve+".height:"+Ce+"."+_c),ve})}else return null}function St(N,U,$){var pe=N.static,Te=N.dynamic;function ue(W){if(W in pe){var K=pe[W],Y=!0,ve=K.x|0,Ce=K.y|0,Je,et;return"width"in K?Je=K.width|0:Y=!1,"height"in K?et=K.height|0:Y=!1,new Le(!Y&&U&&U.thisDep,!Y&&U&&U.contextDep,!Y&&U&&U.propDep,function($r,Gr){var Br=$r.shared.context,Mr=Je;"width"in K||(Mr=Gr.def(Br,".",$i,"-",ve));var Rr=et;return"height"in K||(Rr=Gr.def(Br,".",Qi,"-",Ce)),[ve,Ce,Mr,Rr]})}else if(W in Te){var kr=Te[W],Tr=it(kr,function($r,Gr){var Br=$r.invoke(Gr,kr),Mr=$r.shared.context,Rr=Gr.def(Br,".x|0"),Or=Gr.def(Br,".y|0"),vt=Gr.def('"width" in ',Br,"?",Br,".width|0:","(",Mr,".",$i,"-",Rr,")"),Kt=Gr.def('"height" in ',Br,"?",Br,".height|0:","(",Mr,".",Qi,"-",Or,")");return[Rr,Or,vt,Kt]});return U&&(Tr.thisDep=Tr.thisDep||U.thisDep,Tr.contextDep=Tr.contextDep||U.contextDep,Tr.propDep=Tr.propDep||U.propDep),Tr}else return U?new Le(U.thisDep,U.contextDep,U.propDep,function($r,Gr){var Br=$r.shared.context;return[0,0,Gr.def(Br,".",$i),Gr.def(Br,".",Qi)]}):null}var se=ue(si);if(se){var re=se;se=new Le(se.thisDep,se.contextDep,se.propDep,function(W,K){var Y=re.append(W,K),ve=W.shared.context;return K.set(ve,"."+L1,Y[2]),K.set(ve,"."+D1,Y[3]),Y})}return{viewport:se,scissor_box:ue(hl)}}function aa(N,U){var $=N.static,pe=typeof $[dl]=="string"&&typeof $[Vo]=="string";if(pe){if(Object.keys(U.dynamic).length>0)return null;var Te=U.static,ue=Object.keys(Te);if(ue.length>0&&typeof Te[ue[0]]=="number"){for(var se=[],re=0;re"+Rr+"?"+Y+".constant["+Rr+"]:0;"}).join(""),"}}else{","if(",Je,"(",Y,".buffer)){",$r,"=",et,".createStream(",vo,",",Y,".buffer);","}else{",$r,"=",et,".getBuffer(",Y,".buffer);","}",Gr,'="type" in ',Y,"?",Ce.glTypes,"[",Y,".type]:",$r,".dtype;",kr.normalized,"=!!",Y,".normalized;");function Br(Mr){K(kr[Mr],"=",Y,".",Mr,"|0;")}return Br("size"),Br("offset"),Br("stride"),Br("divisor"),K("}}"),K.exit("if(",kr.isStream,"){",et,".destroyStream(",$r,");","}"),kr}Te[ue]=it(se,re)}),Te}function Wa(N){var U=N.static,$=N.dynamic,pe={};return Object.keys(U).forEach(function(Te){var ue=U[Te];pe[Te]=zr(function(se,re){return typeof ue=="number"||typeof ue=="boolean"?""+ue:se.link(ue)})}),Object.keys($).forEach(function(Te){var ue=$[Te];pe[Te]=it(ue,function(se,re){return se.invoke(re,ue)})}),pe}function sn(N,U,$,pe,Te){var ue=N.static,se=N.dynamic,re=aa(N,U),W=ut(N,Te),K=St(N,W,Te),Y=Dt(N,Te),ve=ln(N,Te),Ce=Sa(N,Te,re);function Je(Br){var Mr=K[Br];Mr&&(ve[Br]=Mr)}Je(si),Je(hr(hl));var et=Object.keys(ve).length>0,kr={framebuffer:W,draw:Y,shader:Ce,state:ve,dirty:et,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(kr.profile=ft(N,Te),kr.uniforms=Ut($,Te),kr.drawVAO=kr.scopeVAO=Y.vao,!kr.drawVAO&&Ce.program&&!re&&V.angle_instanced_arrays&&Y.static.elements){var Tr=!0,$r=Ce.program.attributes.map(function(Br){var Mr=U.static[Br];return Tr=Tr&&!!Mr,Mr});if(Tr&&$r.length>0){var Gr=ir.getVAO(ir.createVAO({attributes:$r,elements:Y.static.elements}));kr.drawVAO=new Le(null,null,null,function(Br,Mr){return Br.link(Gr)}),kr.useVAO=!0}}return re?kr.useVAO=!0:kr.attributes=Ua(U,Te),kr.context=Wa(pe,Te),kr}function ya(N,U,$){var pe=N.shared,Te=pe.context,ue=N.scope();Object.keys($).forEach(function(se){U.save(Te,"."+se);var re=$[se],W=re.append(N,U);Array.isArray(W)?ue(Te,".",se,"=[",W.join(),"];"):ue(Te,".",se,"=",W,";")}),U(ue)}function ga(N,U,$,pe){var Te=N.shared,ue=Te.gl,se=Te.framebuffer,re;Oe&&(re=U.def(Te.extensions,".webgl_draw_buffers"));var W=N.constants,K=W.drawBuffer,Y=W.backBuffer,ve;$?ve=$.append(N,U):ve=U.def(se,".next"),pe||U("if(",ve,"!==",se,".cur){"),U("if(",ve,"){",ue,".bindFramebuffer(",ge,",",ve,".framebuffer);"),Oe&&U(re,".drawBuffersWEBGL(",K,"[",ve,".colorAttachments.length]);"),U("}else{",ue,".bindFramebuffer(",ge,",null);"),Oe&&U(re,".drawBuffersWEBGL(",Y,");"),U("}",se,".cur=",ve,";"),pe||U("}")}function Ea(N,U,$){var pe=N.shared,Te=pe.gl,ue=N.current,se=N.next,re=pe.current,W=pe.next,K=N.cond(re,".dirty");Ie.forEach(function(Y){var ve=hr(Y);if(!(ve in $.state)){var Ce,Je;if(ve in se){Ce=se[ve],Je=ue[ve];var et=k(dr[ve].length,function(Tr){return K.def(Ce,"[",Tr,"]")});K(N.cond(et.map(function(Tr,$r){return Tr+"!=="+Je+"["+$r+"]"}).join("||")).then(Te,".",Sr[ve],"(",et,");",et.map(function(Tr,$r){return Je+"["+$r+"]="+Tr}).join(";"),";"))}else{Ce=K.def(W,".",ve);var kr=N.cond(Ce,"!==",re,".",ve);K(kr),ve in qe?kr(N.cond(Ce).then(Te,".enable(",qe[ve],");").else(Te,".disable(",qe[ve],");"),re,".",ve,"=",Ce,";"):kr(Te,".",Sr[ve],"(",Ce,");",re,".",ve,"=",Ce,";")}}}),Object.keys($.state).length===0&&K(re,".dirty=false;"),U(K)}function At(N,U,$,pe){var Te=N.shared,ue=N.current,se=Te.current,re=Te.gl,W;ar(Object.keys($)).forEach(function(K){var Y=$[K];if(!(pe&&!pe(Y))){var ve=Y.append(N,U);if(qe[K]){var Ce=qe[K];Dr(Y)?(W=N.link(ve,{stable:!0}),U(N.cond(W).then(re,".enable(",Ce,");").else(re,".disable(",Ce,");")),U(se,".",K,"=",W,";")):(U(N.cond(ve).then(re,".enable(",Ce,");").else(re,".disable(",Ce,");")),U(se,".",K,"=",ve,";"))}else if(Si(ve)){var Je=ue[K];U(re,".",Sr[K],"(",ve,");",ve.map(function(et,kr){return Je+"["+kr+"]="+et}).join(";"),";")}else Dr(Y)?(W=N.link(ve,{stable:!0}),U(re,".",Sr[K],"(",W,");",se,".",K,"=",W,";")):U(re,".",Sr[K],"(",ve,");",se,".",K,"=",ve,";")}})}function Da(N,U){nr&&(N.instancing=U.def(N.shared.extensions,".angle_instanced_arrays"))}function Wt(N,U,$,pe,Te){var ue=N.shared,se=N.stats,re=ue.current,W=ue.timer,K=$.profile;function Y(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var ve,Ce;function Je(Br){ve=U.def(),Br(ve,"=",Y(),";"),typeof Te=="string"?Br(se,".count+=",Te,";"):Br(se,".count++;"),yr&&(pe?(Ce=U.def(),Br(Ce,"=",W,".getNumPendingQueries();")):Br(W,".beginQuery(",se,");"))}function et(Br){Br(se,".cpuTime+=",Y(),"-",ve,";"),yr&&(pe?Br(W,".pushScopeStats(",Ce,",",W,".getNumPendingQueries(),",se,");"):Br(W,".endQuery();"))}function kr(Br){var Mr=U.def(re,".profile");U(re,".profile=",Br,";"),U.exit(re,".profile=",Mr,";")}var Tr;if(K){if(Dr(K)){K.enable?(Je(U),et(U.exit),kr("true")):kr("false");return}Tr=K.append(N,U),kr(Tr)}else Tr=U.def(re,".profile");var $r=N.block();Je($r),U("if(",Tr,"){",$r,"}");var Gr=N.block();et(Gr),U.exit("if(",Tr,"){",Gr,"}")}function ja(N,U,$,pe,Te){var ue=N.shared;function se(W){switch(W){case pl:case Il:case Ol:return 2;case on:case Ts:case _f:return 3;case xf:case du:case mu:return 4;default:return 1}}function re(W,K,Y){var ve=ue.gl,Ce=U.def(W,".location"),Je=U.def(ue.attributes,"[",Ce,"]"),et=Y.state,kr=Y.buffer,Tr=[Y.x,Y.y,Y.z,Y.w],$r=["buffer","normalized","offset","stride"];function Gr(){U("if(!",Je,".buffer){",ve,".enableVertexAttribArray(",Ce,");}");var Mr=Y.type,Rr;if(Y.size?Rr=U.def(Y.size,"||",K):Rr=K,U("if(",Je,".type!==",Mr,"||",Je,".size!==",Rr,"||",$r.map(function(vt){return Je+"."+vt+"!=="+Y[vt]}).join("||"),"){",ve,".bindBuffer(",vo,",",kr,".buffer);",ve,".vertexAttribPointer(",[Ce,Rr,Mr,Y.normalized,Y.stride,Y.offset],");",Je,".type=",Mr,";",Je,".size=",Rr,";",$r.map(function(vt){return Je+"."+vt+"="+Y[vt]+";"}).join(""),"}"),nr){var Or=Y.divisor;U("if(",Je,".divisor!==",Or,"){",N.instancing,".vertexAttribDivisorANGLE(",[Ce,Or],");",Je,".divisor=",Or,";}")}}function Br(){U("if(",Je,".buffer){",ve,".disableVertexAttribArray(",Ce,");",Je,".buffer=null;","}if(",fo.map(function(Mr,Rr){return Je+"."+Mr+"!=="+Tr[Rr]}).join("||"),"){",ve,".vertexAttrib4f(",Ce,",",Tr,");",fo.map(function(Mr,Rr){return Je+"."+Mr+"="+Tr[Rr]+";"}).join(""),"}")}et===Ji?Gr():et===_s?Br():(U("if(",et,"===",Ji,"){"),Gr(),U("}else{"),Br(),U("}"))}pe.forEach(function(W){var K=W.name,Y=$.attributes[K],ve;if(Y){if(!Te(Y))return;ve=Y.append(N,U)}else{if(!Te(yt))return;var Ce=N.scopeAttrib(K);ve={},Object.keys(new ke).forEach(function(Je){ve[Je]=U.def(Ce,".",Je)})}re(N.link(W),se(W.info.type),ve)})}function fn(N,U,$,pe,Te,ue){for(var se=N.shared,re=se.gl,W,K=0;K1){for(var cn=[],Di=[],Ki=0;Ki>1)",kr],");")}function Or(){$(Tr,".drawArraysInstancedANGLE(",[Ce,Je,et,kr],");")}Y&&Y!=="null"?Gr?Rr():($("if(",Y,"){"),Rr(),$("}else{"),Or(),$("}")):Or()}function Mr(){function Rr(){$(ue+".drawElements("+[Ce,et,$r,Je+"<<(("+$r+"-"+uc+")>>1)"]+");")}function Or(){$(ue+".drawArrays("+[Ce,Je,et]+");")}Y&&Y!=="null"?Gr?Rr():($("if(",Y,"){"),Rr(),$("}else{"),Or(),$("}")):Or()}nr&&(typeof kr!="number"||kr>=0)?typeof kr=="string"?($("if(",kr,">0){"),Br(),$("}else if(",kr,"<0){"),Mr(),$("}")):Br():Mr()}function pt(N,U,$,pe,Te){var ue=Cr(),se=ue.proc("body",Te);return nr&&(ue.instancing=se.def(ue.shared.extensions,".angle_instanced_arrays")),N(ue,se,$,pe),ue.compile().body}function Rt(N,U,$,pe){Da(N,U),$.useVAO?$.drawVAO?U(N.shared.vao,".setVAO(",$.drawVAO.append(N,U),");"):U(N.shared.vao,".setVAO(",N.shared.vao,".targetVAO);"):(U(N.shared.vao,".setVAO(null);"),ja(N,U,$,pe.attributes,function(){return!0})),fn(N,U,$,pe.uniforms,function(){return!0},!1),un(N,U,U,$)}function Qt(N,U){var $=N.proc("draw",1);Da(N,$),ya(N,$,U.context),ga(N,$,U.framebuffer),Ea(N,$,U),At(N,$,U.state),Wt(N,$,U,!1,!0);var pe=U.shader.progVar.append(N,$);if($(N.shared.gl,".useProgram(",pe,".program);"),U.shader.program)Rt(N,$,U,U.shader.program);else{$(N.shared.vao,".setVAO(null);");var Te=N.global.def("{}"),ue=$.def(pe,".id"),se=$.def(Te,"[",ue,"]");$(N.cond(se).then(se,".call(this,a0);").else(se,"=",Te,"[",ue,"]=",N.link(function(re){return pt(Rt,N,U,re,1)}),"(",pe,");",se,".call(this,a0);"))}Object.keys(U.state).length>0&&$(N.shared.current,".dirty=true;"),N.shared.vao&&$(N.shared.vao,".setVAO(null);")}function z(N,U,$,pe){N.batchId="a1",Da(N,U);function Te(){return!0}ja(N,U,$,pe.attributes,Te),fn(N,U,$,pe.uniforms,Te,!1),un(N,U,U,$)}function me(N,U,$,pe){Da(N,U);var Te=$.contextDep,ue=U.def(),se="a0",re="a1",W=U.def();N.shared.props=W,N.batchId=ue;var K=N.scope(),Y=N.scope();U(K.entry,"for(",ue,"=0;",ue,"<",re,";++",ue,"){",W,"=",se,"[",ue,"];",Y,"}",K.exit);function ve($r){return $r.contextDep&&Te||$r.propDep}function Ce($r){return!ve($r)}if($.needsContext&&ya(N,Y,$.context),$.needsFramebuffer&&ga(N,Y,$.framebuffer),At(N,Y,$.state,ve),$.profile&&ve($.profile)&&Wt(N,Y,$,!1,!0),pe)$.useVAO?$.drawVAO?ve($.drawVAO)?Y(N.shared.vao,".setVAO(",$.drawVAO.append(N,Y),");"):K(N.shared.vao,".setVAO(",$.drawVAO.append(N,K),");"):K(N.shared.vao,".setVAO(",N.shared.vao,".targetVAO);"):(K(N.shared.vao,".setVAO(null);"),ja(N,K,$,pe.attributes,Ce),ja(N,Y,$,pe.attributes,ve)),fn(N,K,$,pe.uniforms,Ce,!1),fn(N,Y,$,pe.uniforms,ve,!0),un(N,K,Y,$);else{var Je=N.global.def("{}"),et=$.shader.progVar.append(N,Y),kr=Y.def(et,".id"),Tr=Y.def(Je,"[",kr,"]");Y(N.shared.gl,".useProgram(",et,".program);","if(!",Tr,"){",Tr,"=",Je,"[",kr,"]=",N.link(function($r){return pt(z,N,$,$r,2)}),"(",et,");}",Tr,".call(this,a0[",ue,"],",ue,");")}}function be(N,U){var $=N.proc("batch",2);N.batchId="0",Da(N,$);var pe=!1,Te=!0;Object.keys(U.context).forEach(function(Je){pe=pe||U.context[Je].propDep}),pe||(ya(N,$,U.context),Te=!1);var ue=U.framebuffer,se=!1;ue?(ue.propDep?pe=se=!0:ue.contextDep&&pe&&(se=!0),se||ga(N,$,ue)):ga(N,$,null),U.state.viewport&&U.state.viewport.propDep&&(pe=!0);function re(Je){return Je.contextDep&&pe||Je.propDep}Ea(N,$,U),At(N,$,U.state,function(Je){return!re(Je)}),(!U.profile||!re(U.profile))&&Wt(N,$,U,!1,"a1"),U.contextDep=pe,U.needsContext=Te,U.needsFramebuffer=se;var W=U.shader.progVar;if(W.contextDep&&pe||W.propDep)me(N,$,U,null);else{var K=W.append(N,$);if($(N.shared.gl,".useProgram(",K,".program);"),U.shader.program)me(N,$,U,U.shader.program);else{$(N.shared.vao,".setVAO(null);");var Y=N.global.def("{}"),ve=$.def(K,".id"),Ce=$.def(Y,"[",ve,"]");$(N.cond(Ce).then(Ce,".call(this,a0,a1);").else(Ce,"=",Y,"[",ve,"]=",N.link(function(Je){return pt(me,N,U,Je,2)}),"(",K,");",Ce,".call(this,a0,a1);"))}}Object.keys(U.state).length>0&&$(N.shared.current,".dirty=true;"),N.shared.vao&&$(N.shared.vao,".setVAO(null);")}function Nr(N,U){var $=N.proc("scope",3);N.batchId="a2";var pe=N.shared,Te=pe.current;if(ya(N,$,U.context),U.framebuffer&&U.framebuffer.append(N,$),ar(Object.keys(U.state)).forEach(function(re){var W=U.state[re],K=W.append(N,$);Si(K)?K.forEach(function(Y,ve){Er(Y)?$.set(N.next[re],"["+ve+"]",Y):$.set(N.next[re],"["+ve+"]",N.link(Y,{stable:!0}))}):Dr(W)?$.set(pe.next,"."+re,N.link(K,{stable:!0})):$.set(pe.next,"."+re,K)}),Wt(N,$,U,!0,!0),[uo,vu,qo,gi,Fo].forEach(function(re){var W=U.draw[re];if(W){var K=W.append(N,$);Er(K)?$.set(pe.draw,"."+re,K):$.set(pe.draw,"."+re,N.link(K),{stable:!0})}}),Object.keys(U.uniforms).forEach(function(re){var W=U.uniforms[re].append(N,$);Array.isArray(W)&&(W="["+W.map(function(K){return Er(K)?K:N.link(K,{stable:!0})})+"]"),$.set(pe.uniforms,"["+N.link(B.id(re),{stable:!0})+"]",W)}),Object.keys(U.attributes).forEach(function(re){var W=U.attributes[re].append(N,$),K=N.scopeAttrib(re);Object.keys(new ke).forEach(function(Y){$.set(K,"."+Y,W[Y])})}),U.scopeVAO){var ue=U.scopeVAO.append(N,$);Er(ue)?$.set(pe.vao,".targetVAO",ue):$.set(pe.vao,".targetVAO",N.link(ue,{stable:!0}))}function se(re){var W=U.shader[re];if(W){var K=W.append(N,$);Er(K)?$.set(pe.shader,"."+re,K):$.set(pe.shader,"."+re,N.link(K,{stable:!0}))}}se(Vo),se(dl),Object.keys(U.state).length>0&&($(Te,".dirty=true;"),$.exit(Te,".dirty=true;")),$("a1(",N.shared.context,",a0,",N.batchId,");")}function Ft(N){if(!(typeof N!="object"||Si(N))){for(var U=Object.keys(N),$=0;$=0;--pt){var Rt=Jr[pt];Rt&&Rt(Pe,null,0)}V.flush(),sr&&sr.update()}function St(){!ft&&Jr.length>0&&(ft=d.next(ut))}function aa(){ft&&(d.cancel(ut),ft=null)}function Sa(pt){pt.preventDefault(),xe=!0,aa(),ct.forEach(function(Rt){Rt()})}function Dt(pt){V.getError(),xe=!1,we.restore(),Zr.restore(),nr.restore(),Ie.restore(),qe.restore(),Sr.restore(),br.restore(),sr&&sr.restore(),hr.procs.refresh(),St(),mr.forEach(function(Rt){Rt()})}Er&&(Er.addEventListener(jt,Sa,!1),Er.addEventListener(va,Dt,!1));function ln(){Jr.length=0,aa(),Er&&(Er.removeEventListener(jt,Sa),Er.removeEventListener(va,Dt)),Zr.clear(),Sr.clear(),qe.clear(),br.clear(),Ie.clear(),Oe.clear(),nr.clear(),sr&&sr.clear(),Cr.forEach(function(pt){pt()})}function Ut(pt){function Rt(ue){var se=e({},ue);delete se.uniforms,delete se.attributes,delete se.context,delete se.vao,"stencil"in se&&se.stencil.op&&(se.stencil.opBack=se.stencil.opFront=se.stencil.op,delete se.stencil.op);function re(W){if(W in se){var K=se[W];delete se[W],Object.keys(K).forEach(function(Y){se[W+"."+Y]=K[Y]})}}return re("blend"),re("depth"),re("cull"),re("stencil"),re("polygonOffset"),re("scissor"),re("sample"),"vao"in ue&&(se.vao=ue.vao),se}function Qt(ue,se){var re={},W={};return Object.keys(ue).forEach(function(K){var Y=ue[K];if(v.isDynamic(Y)){W[K]=v.unbox(Y,K);return}else if(se&&Array.isArray(Y)){for(var ve=0;ve0)return N.call(this,pe(ue|0),ue|0)}else if(Array.isArray(ue)){if(ue.length)return N.call(this,ue,ue.length)}else return qr.call(this,ue)}return e(Te,{stats:Ft,destroy:function(){Ht.destroy()}})}var Ua=Sr.setFBO=Ut({framebuffer:v.define.call(null,Ya,"framebuffer")});function Wa(pt,Rt){var Qt=0;hr.procs.poll();var z=Rt.color;z&&(V.clearColor(+z[0]||0,+z[1]||0,+z[2]||0,+z[3]||0),Qt|=_n),"depth"in Rt&&(V.clearDepth(+Rt.depth),Qt|=Ca),"stencil"in Rt&&(V.clearStencil(Rt.stencil|0),Qt|=dt),V.clear(Qt)}function sn(pt){if("framebuffer"in pt)if(pt.framebuffer&&pt.framebuffer_reglType==="framebufferCube")for(var Rt=0;Rt<6;++Rt)Ua(e({framebuffer:pt.framebuffer.faces[Rt]},pt),Wa);else Ua(pt,Wa);else Wa(null,pt)}function ya(pt){Jr.push(pt);function Rt(){var Qt=Qn(Jr,pt);function z(){var me=Qn(Jr,z);Jr[me]=Jr[Jr.length-1],Jr.length-=1,Jr.length<=0&&aa()}Jr[Qt]=z}return St(),{cancel:Rt}}function ga(){var pt=vr.viewport,Rt=vr.scissor_box;pt[0]=pt[1]=Rt[0]=Rt[1]=0,Pe.viewportWidth=Pe.framebufferWidth=Pe.drawingBufferWidth=pt[2]=Rt[2]=V.drawingBufferWidth,Pe.viewportHeight=Pe.framebufferHeight=Pe.drawingBufferHeight=pt[3]=Rt[3]=V.drawingBufferHeight}function Ea(){Pe.tick+=1,Pe.time=Da(),ga(),hr.procs.poll()}function At(){Ie.refresh(),ga(),hr.procs.refresh(),sr&&sr.update()}function Da(){return(p()-Qr)/1e3}At();function Wt(pt,Rt){var Qt;switch(pt){case"frame":return ya(Rt);case"lost":Qt=ct;break;case"restore":Qt=mr;break;case"destroy":Qt=Cr;break;default:}return Qt.push(Rt),{cancel:function(){for(var z=0;z=0},read:fr,destroy:ln,_gl:V,_refresh:At,poll:function(){Ea(),sr&&sr.update()},now:Da,stats:He,getCachedCode:ja,preloadCachedCode:fn});return B.onDone(null,un),un}return Li})});var Lee=P((BIe,Cee)=>{"use strict";var p7e=If();Cee.exports=function(r){if(r?typeof r=="string"&&(r={container:r}):r={},Eee(r)?r={container:r}:m7e(r)?r={container:r}:y7e(r)?r={gl:r}:r=p7e(r,{container:"container target element el canvas holder parent parentNode wrapper use ref root node",gl:"gl context webgl glContext",attrs:"attributes attrs contextAttributes",pixelRatio:"pixelRatio pxRatio px ratio pxratio pixelratio",width:"w width",height:"h height"},!0),r.pixelRatio||(r.pixelRatio=window.pixelRatio||1),r.gl)return r.gl;if(r.canvas&&(r.container=r.canvas.parentNode),r.container){if(typeof r.container=="string"){var t=document.querySelector(r.container);if(!t)throw Error("Element "+r.container+" is not found");r.container=t}Eee(r.container)?(r.canvas=r.container,r.container=r.canvas.parentNode):r.canvas||(r.canvas=kee(),r.container.appendChild(r.canvas),See(r))}else if(!r.canvas)if(typeof document!="undefined")r.container=document.body||document.documentElement,r.canvas=kee(),r.container.appendChild(r.canvas),See(r);else throw Error("Not DOM environment. Use headless-gl.");return r.gl||["webgl","experimental-webgl","webgl-experimental"].some(function(a){try{r.gl=r.canvas.getContext(a,r.attrs)}catch(n){}return r.gl}),r.gl};function See(e){if(e.container)if(e.container==document.body)document.body.style.width||(e.canvas.width=e.width||e.pixelRatio*window.innerWidth),document.body.style.height||(e.canvas.height=e.height||e.pixelRatio*window.innerHeight);else{var r=e.container.getBoundingClientRect();e.canvas.width=e.width||r.right-r.left,e.canvas.height=e.height||r.bottom-r.top}}function Eee(e){return typeof e.getContext=="function"&&"width"in e&&"height"in e}function m7e(e){return typeof e.nodeName=="string"&&typeof e.appendChild=="function"&&typeof e.getBoundingClientRect=="function"}function y7e(e){return typeof e.drawArrays=="function"||typeof e.drawElements=="function"}function kee(){var e=document.createElement("canvas");return e.style.position="absolute",e.style.top=0,e.style.left=0,e}});var Fee=P((zIe,Dee)=>{"use strict";var g7e=Q7(),b7e=[32,126];Dee.exports=x7e;function x7e(e){e=e||{};var r=e.shape?e.shape:e.canvas?[e.canvas.width,e.canvas.height]:[512,512],t=e.canvas||document.createElement("canvas"),a=e.font,n=typeof e.step=="number"?[e.step,e.step]:e.step||[32,32],i=e.chars||b7e;if(a&&typeof a!="string"&&(a=g7e(a)),!Array.isArray(i))i=String(i).split("");else if(i.length===2&&typeof i[0]=="number"&&typeof i[1]=="number"){for(var o=[],l=i[0],s=0;l<=i[1];l++)o[s++]=String.fromCharCode(l);i=o}r=r.slice(),t.width=r[0],t.height=r[1];var f=t.getContext("2d");f.fillStyle="#000",f.fillRect(0,0,t.width,t.height),f.font=a,f.textAlign="center",f.textBaseline="middle",f.fillStyle="#fff";for(var u=n[0]/2,c=n[1]/2,l=0;lr[0]-n[0]/2&&(u=n[0]/2,c+=n[1]);return t}});var t9=P(oi=>{"use strict";"use restrict";var r9=32;oi.INT_BITS=r9;oi.INT_MAX=2147483647;oi.INT_MIN=-1<0)-(e<0)};oi.abs=function(e){var r=e>>r9-1;return(e^r)-r};oi.min=function(e,r){return r^(e^r)&-(e65535)<<4,e>>>=r,t=(e>255)<<3,e>>>=t,r|=t,t=(e>15)<<2,e>>>=t,r|=t,t=(e>3)<<1,e>>>=t,r|=t,r|e>>1};oi.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0};oi.popCount=function(e){return e=e-(e>>>1&1431655765),e=(e&858993459)+(e>>>2&858993459),(e+(e>>>4)&252645135)*16843009>>>24};function qee(e){var r=32;return e&=-e,e&&r--,e&65535&&(r-=16),e&16711935&&(r-=8),e&252645135&&(r-=4),e&858993459&&(r-=2),e&1431655765&&(r-=1),r}oi.countTrailingZeros=qee;oi.nextPow2=function(e){return e+=e===0,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e+1};oi.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e-(e>>>1)};oi.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,e&=15,27030>>>e&1};var fg=new Array(256);(function(e){for(var r=0;r<256;++r){var t=r,a=r,n=7;for(t>>>=1;t;t>>>=1)a<<=1,a|=t&1,--n;e[r]=a<>>8&255]<<16|fg[e>>>16&255]<<8|fg[e>>>24&255]};oi.interleave2=function(e,r){return e&=65535,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,r&=65535,r=(r|r<<8)&16711935,r=(r|r<<4)&252645135,r=(r|r<<2)&858993459,r=(r|r<<1)&1431655765,e|r<<1};oi.deinterleave2=function(e,r){return e=e>>>r&1431655765,e=(e|e>>>1)&858993459,e=(e|e>>>2)&252645135,e=(e|e>>>4)&16711935,e=(e|e>>>16)&65535,e<<16>>16};oi.interleave3=function(e,r,t){return e&=1023,e=(e|e<<16)&4278190335,e=(e|e<<8)&251719695,e=(e|e<<4)&3272356035,e=(e|e<<2)&1227133513,r&=1023,r=(r|r<<16)&4278190335,r=(r|r<<8)&251719695,r=(r|r<<4)&3272356035,r=(r|r<<2)&1227133513,e|=r<<1,t&=1023,t=(t|t<<16)&4278190335,t=(t|t<<8)&251719695,t=(t|t<<4)&3272356035,t=(t|t<<2)&1227133513,e|t<<2};oi.deinterleave3=function(e,r){return e=e>>>r&1227133513,e=(e|e>>>2)&3272356035,e=(e|e>>>4)&251719695,e=(e|e>>>8)&4278190335,e=(e|e>>>16)&1023,e<<22>>22};oi.nextCombination=function(e){var r=e|e-1;return r+1|(~r&-~r)-1>>>qee(e)+1}});var Nee=P((UIe,Pee)=>{"use strict";function Ree(e,r,t){var a=e[t]|0;if(a<=0)return[];var n=new Array(a),i;if(t===e.length-1)for(i=0;i0)return _7e(e|0,r);break;case"object":if(typeof e.length=="number")return Ree(e,r,0);break}return[]}Pee.exports=w7e});var Bee=P(O_=>{"use strict";O_.byteLength=T7e;O_.toByteArray=S7e;O_.fromByteArray=C7e;var Bf=[],os=[],A7e=typeof Uint8Array!="undefined"?Uint8Array:Array,a9="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(yh=0,Iee=a9.length;yh0)throw new Error("Invalid string. Length must be a multiple of 4");var t=e.indexOf("=");t===-1&&(t=r);var a=t===r?0:4-t%4;return[t,a]}function T7e(e){var r=Oee(e),t=r[0],a=r[1];return(t+a)*3/4-a}function M7e(e,r,t){return(r+t)*3/4-t}function S7e(e){var r,t=Oee(e),a=t[0],n=t[1],i=new A7e(M7e(e,a,n)),o=0,l=n>0?a-4:a,s;for(s=0;s>16&255,i[o++]=r>>8&255,i[o++]=r&255;return n===2&&(r=os[e.charCodeAt(s)]<<2|os[e.charCodeAt(s+1)]>>4,i[o++]=r&255),n===1&&(r=os[e.charCodeAt(s)]<<10|os[e.charCodeAt(s+1)]<<4|os[e.charCodeAt(s+2)]>>2,i[o++]=r>>8&255,i[o++]=r&255),i}function E7e(e){return Bf[e>>18&63]+Bf[e>>12&63]+Bf[e>>6&63]+Bf[e&63]}function k7e(e,r,t){for(var a,n=[],i=r;il?l:o+i));return a===1?(r=e[t-1],n.push(Bf[r>>2]+Bf[r<<4&63]+"==")):a===2&&(r=(e[t-2]<<8)+e[t-1],n.push(Bf[r>>10]+Bf[r>>4&63]+Bf[r<<2&63]+"=")),n.join("")}});var zee=P(n9=>{n9.read=function(e,r,t,a,n){var i,o,l=n*8-a-1,s=(1<>1,u=-7,c=t?n-1:0,v=t?-1:1,d=e[r+c];for(c+=v,i=d&(1<<-u)-1,d>>=-u,u+=l;u>0;i=i*256+e[r+c],c+=v,u-=8);for(o=i&(1<<-u)-1,i>>=-u,u+=a;u>0;o=o*256+e[r+c],c+=v,u-=8);if(i===0)i=1-f;else{if(i===s)return o?NaN:(d?-1:1)*(1/0);o=o+Math.pow(2,a),i=i-f}return(d?-1:1)*o*Math.pow(2,i-a)};n9.write=function(e,r,t,a,n,i){var o,l,s,f=i*8-n-1,u=(1<>1,v=n===23?Math.pow(2,-24)-Math.pow(2,-77):0,d=a?0:i-1,p=a?1:-1,y=r<0||r===0&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(l=isNaN(r)?1:0,o=u):(o=Math.floor(Math.log(r)/Math.LN2),r*(s=Math.pow(2,-o))<1&&(o--,s*=2),o+c>=1?r+=v/s:r+=v*Math.pow(2,1-c),r*s>=2&&(o++,s/=2),o+c>=u?(l=0,o=u):o+c>=1?(l=(r*s-1)*Math.pow(2,n),o=o+c):(l=r*Math.pow(2,c-1)*Math.pow(2,n),o=0));n>=8;e[t+d]=l&255,d+=p,l/=256,n-=8);for(o=o<0;e[t+d]=o&255,d+=p,o/=256,f-=8);e[t+d-p]|=y*128}});var are=P(Up=>{"use strict";var i9=Bee(),zp=zee(),Gee=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;Up.Buffer=tt;Up.SlowBuffer=P7e;Up.INSPECT_MAX_BYTES=50;var B_=2147483647;Up.kMaxLength=B_;tt.TYPED_ARRAY_SUPPORT=L7e();!tt.TYPED_ARRAY_SUPPORT&&typeof console!="undefined"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function L7e(){try{let e=new Uint8Array(1),r={foo:function(){return 42}};return Object.setPrototypeOf(r,Uint8Array.prototype),Object.setPrototypeOf(e,r),e.foo()===42}catch(e){return!1}}Object.defineProperty(tt.prototype,"parent",{enumerable:!0,get:function(){if(tt.isBuffer(this))return this.buffer}});Object.defineProperty(tt.prototype,"offset",{enumerable:!0,get:function(){if(tt.isBuffer(this))return this.byteOffset}});function Vu(e){if(e>B_)throw new RangeError('The value "'+e+'" is invalid for option "size"');let r=new Uint8Array(e);return Object.setPrototypeOf(r,tt.prototype),r}function tt(e,r,t){if(typeof e=="number"){if(typeof r=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return f9(e)}return Yee(e,r,t)}tt.poolSize=8192;function Yee(e,r,t){if(typeof e=="string")return F7e(e,r);if(ArrayBuffer.isView(e))return q7e(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(zf(e,ArrayBuffer)||e&&zf(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(zf(e,SharedArrayBuffer)||e&&zf(e.buffer,SharedArrayBuffer)))return l9(e,r,t);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let a=e.valueOf&&e.valueOf();if(a!=null&&a!==e)return tt.from(a,r,t);let n=R7e(e);if(n)return n;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return tt.from(e[Symbol.toPrimitive]("string"),r,t);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}tt.from=function(e,r,t){return Yee(e,r,t)};Object.setPrototypeOf(tt.prototype,Uint8Array.prototype);Object.setPrototypeOf(tt,Uint8Array);function Wee(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function D7e(e,r,t){return Wee(e),e<=0?Vu(e):r!==void 0?typeof t=="string"?Vu(e).fill(r,t):Vu(e).fill(r):Vu(e)}tt.alloc=function(e,r,t){return D7e(e,r,t)};function f9(e){return Wee(e),Vu(e<0?0:u9(e)|0)}tt.allocUnsafe=function(e){return f9(e)};tt.allocUnsafeSlow=function(e){return f9(e)};function F7e(e,r){if((typeof r!="string"||r==="")&&(r="utf8"),!tt.isEncoding(r))throw new TypeError("Unknown encoding: "+r);let t=jee(e,r)|0,a=Vu(t),n=a.write(e,r);return n!==t&&(a=a.slice(0,n)),a}function o9(e){let r=e.length<0?0:u9(e.length)|0,t=Vu(r);for(let a=0;a=B_)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+B_.toString(16)+" bytes");return e|0}function P7e(e){return+e!=e&&(e=0),tt.alloc(+e)}tt.isBuffer=function(r){return r!=null&&r._isBuffer===!0&&r!==tt.prototype};tt.compare=function(r,t){if(zf(r,Uint8Array)&&(r=tt.from(r,r.offset,r.byteLength)),zf(t,Uint8Array)&&(t=tt.from(t,t.offset,t.byteLength)),!tt.isBuffer(r)||!tt.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(r===t)return 0;let a=r.length,n=t.length;for(let i=0,o=Math.min(a,n);in.length?(tt.isBuffer(o)||(o=tt.from(o)),o.copy(n,i)):Uint8Array.prototype.set.call(n,o,i);else if(tt.isBuffer(o))o.copy(n,i);else throw new TypeError('"list" argument must be an Array of Buffers');i+=o.length}return n};function jee(e,r){if(tt.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||zf(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let t=e.length,a=arguments.length>2&&arguments[2]===!0;if(!a&&t===0)return 0;let n=!1;for(;;)switch(r){case"ascii":case"latin1":case"binary":return t;case"utf8":case"utf-8":return s9(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return t*2;case"hex":return t>>>1;case"base64":return tre(e).length;default:if(n)return a?-1:s9(e).length;r=(""+r).toLowerCase(),n=!0}}tt.byteLength=jee;function N7e(e,r,t){let a=!1;if((r===void 0||r<0)&&(r=0),r>this.length||((t===void 0||t>this.length)&&(t=this.length),t<=0)||(t>>>=0,r>>>=0,t<=r))return"";for(e||(e="utf8");;)switch(e){case"hex":return W7e(this,r,t);case"utf8":case"utf-8":return Zee(this,r,t);case"ascii":return V7e(this,r,t);case"latin1":case"binary":return Y7e(this,r,t);case"base64":return U7e(this,r,t);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return j7e(this,r,t);default:if(a)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),a=!0}}tt.prototype._isBuffer=!0;function gh(e,r,t){let a=e[r];e[r]=e[t],e[t]=a}tt.prototype.swap16=function(){let r=this.length;if(r%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tt&&(r+=" ... "),""};Gee&&(tt.prototype[Gee]=tt.prototype.inspect);tt.prototype.compare=function(r,t,a,n,i){if(zf(r,Uint8Array)&&(r=tt.from(r,r.offset,r.byteLength)),!tt.isBuffer(r))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof r);if(t===void 0&&(t=0),a===void 0&&(a=r?r.length:0),n===void 0&&(n=0),i===void 0&&(i=this.length),t<0||a>r.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=a)return 0;if(n>=i)return-1;if(t>=a)return 1;if(t>>>=0,a>>>=0,n>>>=0,i>>>=0,this===r)return 0;let o=i-n,l=a-t,s=Math.min(o,l),f=this.slice(n,i),u=r.slice(t,a);for(let c=0;c2147483647?t=2147483647:t<-2147483648&&(t=-2147483648),t=+t,v9(t)&&(t=n?0:e.length-1),t<0&&(t=e.length+t),t>=e.length){if(n)return-1;t=e.length-1}else if(t<0)if(n)t=0;else return-1;if(typeof r=="string"&&(r=tt.from(r,a)),tt.isBuffer(r))return r.length===0?-1:Uee(e,r,t,a,n);if(typeof r=="number")return r=r&255,typeof Uint8Array.prototype.indexOf=="function"?n?Uint8Array.prototype.indexOf.call(e,r,t):Uint8Array.prototype.lastIndexOf.call(e,r,t):Uee(e,[r],t,a,n);throw new TypeError("val must be string, number or Buffer")}function Uee(e,r,t,a,n){let i=1,o=e.length,l=r.length;if(a!==void 0&&(a=String(a).toLowerCase(),a==="ucs2"||a==="ucs-2"||a==="utf16le"||a==="utf-16le")){if(e.length<2||r.length<2)return-1;i=2,o/=2,l/=2,t/=2}function s(u,c){return i===1?u[c]:u.readUInt16BE(c*i)}let f;if(n){let u=-1;for(f=t;fo&&(t=o-l),f=t;f>=0;f--){let u=!0;for(let c=0;cn&&(a=n)):a=n;let i=r.length;a>i/2&&(a=i/2);let o;for(o=0;o>>0,isFinite(a)?(a=a>>>0,n===void 0&&(n="utf8")):(n=a,a=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let i=this.length-t;if((a===void 0||a>i)&&(a=i),r.length>0&&(a<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return I7e(this,r,t,a);case"utf8":case"utf-8":return O7e(this,r,t,a);case"ascii":case"latin1":case"binary":return B7e(this,r,t,a);case"base64":return z7e(this,r,t,a);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return G7e(this,r,t,a);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}};tt.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function U7e(e,r,t){return r===0&&t===e.length?i9.fromByteArray(e):i9.fromByteArray(e.slice(r,t))}function Zee(e,r,t){t=Math.min(e.length,t);let a=[],n=r;for(;n239?4:i>223?3:i>191?2:1;if(n+l<=t){let s,f,u,c;switch(l){case 1:i<128&&(o=i);break;case 2:s=e[n+1],(s&192)===128&&(c=(i&31)<<6|s&63,c>127&&(o=c));break;case 3:s=e[n+1],f=e[n+2],(s&192)===128&&(f&192)===128&&(c=(i&15)<<12|(s&63)<<6|f&63,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:s=e[n+1],f=e[n+2],u=e[n+3],(s&192)===128&&(f&192)===128&&(u&192)===128&&(c=(i&15)<<18|(s&63)<<12|(f&63)<<6|u&63,c>65535&&c<1114112&&(o=c))}}o===null?(o=65533,l=1):o>65535&&(o-=65536,a.push(o>>>10&1023|55296),o=56320|o&1023),a.push(o),n+=l}return H7e(a)}var Hee=4096;function H7e(e){let r=e.length;if(r<=Hee)return String.fromCharCode.apply(String,e);let t="",a=0;for(;aa)&&(t=a);let n="";for(let i=r;ia&&(r=a),t<0?(t+=a,t<0&&(t=0)):t>a&&(t=a),tt)throw new RangeError("Trying to access beyond buffer length")}tt.prototype.readUintLE=tt.prototype.readUIntLE=function(r,t,a){r=r>>>0,t=t>>>0,a||Wi(r,t,this.length);let n=this[r],i=1,o=0;for(;++o>>0,t=t>>>0,a||Wi(r,t,this.length);let n=this[r+--t],i=1;for(;t>0&&(i*=256);)n+=this[r+--t]*i;return n};tt.prototype.readUint8=tt.prototype.readUInt8=function(r,t){return r=r>>>0,t||Wi(r,1,this.length),this[r]};tt.prototype.readUint16LE=tt.prototype.readUInt16LE=function(r,t){return r=r>>>0,t||Wi(r,2,this.length),this[r]|this[r+1]<<8};tt.prototype.readUint16BE=tt.prototype.readUInt16BE=function(r,t){return r=r>>>0,t||Wi(r,2,this.length),this[r]<<8|this[r+1]};tt.prototype.readUint32LE=tt.prototype.readUInt32LE=function(r,t){return r=r>>>0,t||Wi(r,4,this.length),(this[r]|this[r+1]<<8|this[r+2]<<16)+this[r+3]*16777216};tt.prototype.readUint32BE=tt.prototype.readUInt32BE=function(r,t){return r=r>>>0,t||Wi(r,4,this.length),this[r]*16777216+(this[r+1]<<16|this[r+2]<<8|this[r+3])};tt.prototype.readBigUInt64LE=gv(function(r){r=r>>>0,Gp(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&ug(r,this.length-8);let n=t+this[++r]*2**8+this[++r]*2**16+this[++r]*2**24,i=this[++r]+this[++r]*2**8+this[++r]*2**16+a*2**24;return BigInt(n)+(BigInt(i)<>>0,Gp(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&ug(r,this.length-8);let n=t*2**24+this[++r]*2**16+this[++r]*2**8+this[++r],i=this[++r]*2**24+this[++r]*2**16+this[++r]*2**8+a;return(BigInt(n)<>>0,t=t>>>0,a||Wi(r,t,this.length);let n=this[r],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n};tt.prototype.readIntBE=function(r,t,a){r=r>>>0,t=t>>>0,a||Wi(r,t,this.length);let n=t,i=1,o=this[r+--n];for(;n>0&&(i*=256);)o+=this[r+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o};tt.prototype.readInt8=function(r,t){return r=r>>>0,t||Wi(r,1,this.length),this[r]&128?(255-this[r]+1)*-1:this[r]};tt.prototype.readInt16LE=function(r,t){r=r>>>0,t||Wi(r,2,this.length);let a=this[r]|this[r+1]<<8;return a&32768?a|4294901760:a};tt.prototype.readInt16BE=function(r,t){r=r>>>0,t||Wi(r,2,this.length);let a=this[r+1]|this[r]<<8;return a&32768?a|4294901760:a};tt.prototype.readInt32LE=function(r,t){return r=r>>>0,t||Wi(r,4,this.length),this[r]|this[r+1]<<8|this[r+2]<<16|this[r+3]<<24};tt.prototype.readInt32BE=function(r,t){return r=r>>>0,t||Wi(r,4,this.length),this[r]<<24|this[r+1]<<16|this[r+2]<<8|this[r+3]};tt.prototype.readBigInt64LE=gv(function(r){r=r>>>0,Gp(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&ug(r,this.length-8);let n=this[r+4]+this[r+5]*2**8+this[r+6]*2**16+(a<<24);return(BigInt(n)<>>0,Gp(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&ug(r,this.length-8);let n=(t<<24)+this[++r]*2**16+this[++r]*2**8+this[++r];return(BigInt(n)<>>0,t||Wi(r,4,this.length),zp.read(this,r,!0,23,4)};tt.prototype.readFloatBE=function(r,t){return r=r>>>0,t||Wi(r,4,this.length),zp.read(this,r,!1,23,4)};tt.prototype.readDoubleLE=function(r,t){return r=r>>>0,t||Wi(r,8,this.length),zp.read(this,r,!0,52,8)};tt.prototype.readDoubleBE=function(r,t){return r=r>>>0,t||Wi(r,8,this.length),zp.read(this,r,!1,52,8)};function nl(e,r,t,a,n,i){if(!tt.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(r>n||re.length)throw new RangeError("Index out of range")}tt.prototype.writeUintLE=tt.prototype.writeUIntLE=function(r,t,a,n){if(r=+r,t=t>>>0,a=a>>>0,!n){let l=Math.pow(2,8*a)-1;nl(this,r,t,a,l,0)}let i=1,o=0;for(this[t]=r&255;++o>>0,a=a>>>0,!n){let l=Math.pow(2,8*a)-1;nl(this,r,t,a,l,0)}let i=a-1,o=1;for(this[t+i]=r&255;--i>=0&&(o*=256);)this[t+i]=r/o&255;return t+a};tt.prototype.writeUint8=tt.prototype.writeUInt8=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,1,255,0),this[t]=r&255,t+1};tt.prototype.writeUint16LE=tt.prototype.writeUInt16LE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,2,65535,0),this[t]=r&255,this[t+1]=r>>>8,t+2};tt.prototype.writeUint16BE=tt.prototype.writeUInt16BE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,2,65535,0),this[t]=r>>>8,this[t+1]=r&255,t+2};tt.prototype.writeUint32LE=tt.prototype.writeUInt32LE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,4,4294967295,0),this[t+3]=r>>>24,this[t+2]=r>>>16,this[t+1]=r>>>8,this[t]=r&255,t+4};tt.prototype.writeUint32BE=tt.prototype.writeUInt32BE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,4,4294967295,0),this[t]=r>>>24,this[t+1]=r>>>16,this[t+2]=r>>>8,this[t+3]=r&255,t+4};function Jee(e,r,t,a,n){rre(r,a,n,e,t,7);let i=Number(r&BigInt(4294967295));e[t++]=i,i=i>>8,e[t++]=i,i=i>>8,e[t++]=i,i=i>>8,e[t++]=i;let o=Number(r>>BigInt(32)&BigInt(4294967295));return e[t++]=o,o=o>>8,e[t++]=o,o=o>>8,e[t++]=o,o=o>>8,e[t++]=o,t}function $ee(e,r,t,a,n){rre(r,a,n,e,t,7);let i=Number(r&BigInt(4294967295));e[t+7]=i,i=i>>8,e[t+6]=i,i=i>>8,e[t+5]=i,i=i>>8,e[t+4]=i;let o=Number(r>>BigInt(32)&BigInt(4294967295));return e[t+3]=o,o=o>>8,e[t+2]=o,o=o>>8,e[t+1]=o,o=o>>8,e[t]=o,t+8}tt.prototype.writeBigUInt64LE=gv(function(r,t=0){return Jee(this,r,t,BigInt(0),BigInt("0xffffffffffffffff"))});tt.prototype.writeBigUInt64BE=gv(function(r,t=0){return $ee(this,r,t,BigInt(0),BigInt("0xffffffffffffffff"))});tt.prototype.writeIntLE=function(r,t,a,n){if(r=+r,t=t>>>0,!n){let s=Math.pow(2,8*a-1);nl(this,r,t,a,s-1,-s)}let i=0,o=1,l=0;for(this[t]=r&255;++i>0)-l&255;return t+a};tt.prototype.writeIntBE=function(r,t,a,n){if(r=+r,t=t>>>0,!n){let s=Math.pow(2,8*a-1);nl(this,r,t,a,s-1,-s)}let i=a-1,o=1,l=0;for(this[t+i]=r&255;--i>=0&&(o*=256);)r<0&&l===0&&this[t+i+1]!==0&&(l=1),this[t+i]=(r/o>>0)-l&255;return t+a};tt.prototype.writeInt8=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,1,127,-128),r<0&&(r=255+r+1),this[t]=r&255,t+1};tt.prototype.writeInt16LE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,2,32767,-32768),this[t]=r&255,this[t+1]=r>>>8,t+2};tt.prototype.writeInt16BE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,2,32767,-32768),this[t]=r>>>8,this[t+1]=r&255,t+2};tt.prototype.writeInt32LE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,4,2147483647,-2147483648),this[t]=r&255,this[t+1]=r>>>8,this[t+2]=r>>>16,this[t+3]=r>>>24,t+4};tt.prototype.writeInt32BE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,4,2147483647,-2147483648),r<0&&(r=4294967295+r+1),this[t]=r>>>24,this[t+1]=r>>>16,this[t+2]=r>>>8,this[t+3]=r&255,t+4};tt.prototype.writeBigInt64LE=gv(function(r,t=0){return Jee(this,r,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});tt.prototype.writeBigInt64BE=gv(function(r,t=0){return $ee(this,r,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Qee(e,r,t,a,n,i){if(t+a>e.length)throw new RangeError("Index out of range");if(t<0)throw new RangeError("Index out of range")}function Kee(e,r,t,a,n){return r=+r,t=t>>>0,n||Qee(e,r,t,4,34028234663852886e22,-34028234663852886e22),zp.write(e,r,t,a,23,4),t+4}tt.prototype.writeFloatLE=function(r,t,a){return Kee(this,r,t,!0,a)};tt.prototype.writeFloatBE=function(r,t,a){return Kee(this,r,t,!1,a)};function ere(e,r,t,a,n){return r=+r,t=t>>>0,n||Qee(e,r,t,8,17976931348623157e292,-17976931348623157e292),zp.write(e,r,t,a,52,8),t+8}tt.prototype.writeDoubleLE=function(r,t,a){return ere(this,r,t,!0,a)};tt.prototype.writeDoubleBE=function(r,t,a){return ere(this,r,t,!1,a)};tt.prototype.copy=function(r,t,a,n){if(!tt.isBuffer(r))throw new TypeError("argument should be a Buffer");if(a||(a=0),!n&&n!==0&&(n=this.length),t>=r.length&&(t=r.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),r.length-t>>0,a=a===void 0?this.length:a>>>0,r||(r=0);let i;if(typeof r=="number")for(i=t;i2**32?n=Vee(String(t)):typeof t=="bigint"&&(n=String(t),(t>BigInt(2)**BigInt(32)||t<-(BigInt(2)**BigInt(32)))&&(n=Vee(n)),n+="n"),a+=` It must be ${r}. Received ${n}`,a},RangeError);function Vee(e){let r="",t=e.length,a=e[0]==="-"?1:0;for(;t>=a+4;t-=3)r=`_${e.slice(t-3,t)}${r}`;return`${e.slice(0,t)}${r}`}function X7e(e,r,t){Gp(r,"offset"),(e[r]===void 0||e[r+t]===void 0)&&ug(r,e.length-(t+1))}function rre(e,r,t,a,n,i){if(e>t||e3?r===0||r===BigInt(0)?l=`>= 0${o} and < 2${o} ** ${(i+1)*8}${o}`:l=`>= -(2${o} ** ${(i+1)*8-1}${o}) and < 2 ** ${(i+1)*8-1}${o}`:l=`>= ${r}${o} and <= ${t}${o}`,new Bp.ERR_OUT_OF_RANGE("value",l,e)}X7e(a,n,i)}function Gp(e,r){if(typeof e!="number")throw new Bp.ERR_INVALID_ARG_TYPE(r,"number",e)}function ug(e,r,t){throw Math.floor(e)!==e?(Gp(e,t),new Bp.ERR_OUT_OF_RANGE(t||"offset","an integer",e)):r<0?new Bp.ERR_BUFFER_OUT_OF_BOUNDS:new Bp.ERR_OUT_OF_RANGE(t||"offset",`>= ${t?1:0} and <= ${r}`,e)}var Z7e=/[^+/0-9A-Za-z-_]/g;function J7e(e){if(e=e.split("=")[0],e=e.trim().replace(Z7e,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function s9(e,r){r=r||1/0;let t,a=e.length,n=null,i=[];for(let o=0;o55295&&t<57344){if(!n){if(t>56319){(r-=3)>-1&&i.push(239,191,189);continue}else if(o+1===a){(r-=3)>-1&&i.push(239,191,189);continue}n=t;continue}if(t<56320){(r-=3)>-1&&i.push(239,191,189),n=t;continue}t=(n-55296<<10|t-56320)+65536}else n&&(r-=3)>-1&&i.push(239,191,189);if(n=null,t<128){if((r-=1)<0)break;i.push(t)}else if(t<2048){if((r-=2)<0)break;i.push(t>>6|192,t&63|128)}else if(t<65536){if((r-=3)<0)break;i.push(t>>12|224,t>>6&63|128,t&63|128)}else if(t<1114112){if((r-=4)<0)break;i.push(t>>18|240,t>>12&63|128,t>>6&63|128,t&63|128)}else throw new Error("Invalid code point")}return i}function $7e(e){let r=[];for(let t=0;t>8,n=t%256,i.push(n),i.push(a);return i}function tre(e){return i9.toByteArray(J7e(e))}function z_(e,r,t,a){let n;for(n=0;n=r.length||n>=e.length);++n)r[n+t]=e[n];return n}function zf(e,r){return e instanceof r||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===r.name}function v9(e){return e!==e}var K7e=function(){let e="0123456789abcdef",r=new Array(256);for(let t=0;t<16;++t){let a=t*16;for(let n=0;n<16;++n)r[a+n]=e[t]+e[n]}return r}();function gv(e){return typeof BigInt=="undefined"?e9e:e}function e9e(){throw new Error("BigInt not supported")}});var gre=P(Na=>{"use strict";var bv=t9(),io=Nee(),nre=are().Buffer;window.__TYPEDARRAY_POOL||(window.__TYPEDARRAY_POOL={UINT8:io([32,0]),UINT16:io([32,0]),UINT32:io([32,0]),BIGUINT64:io([32,0]),INT8:io([32,0]),INT16:io([32,0]),INT32:io([32,0]),BIGINT64:io([32,0]),FLOAT:io([32,0]),DOUBLE:io([32,0]),DATA:io([32,0]),UINT8C:io([32,0]),BUFFER:io([32,0])});var r9e=typeof Uint8ClampedArray!="undefined",t9e=typeof BigUint64Array!="undefined",a9e=typeof BigInt64Array!="undefined",vi=window.__TYPEDARRAY_POOL;vi.UINT8C||(vi.UINT8C=io([32,0]));vi.BIGUINT64||(vi.BIGUINT64=io([32,0]));vi.BIGINT64||(vi.BIGINT64=io([32,0]));vi.BUFFER||(vi.BUFFER=io([32,0]));var G_=vi.DATA,U_=vi.BUFFER;Na.free=function(r){if(nre.isBuffer(r))U_[bv.log2(r.length)].push(r);else{if(Object.prototype.toString.call(r)!=="[object ArrayBuffer]"&&(r=r.buffer),!r)return;var t=r.length||r.byteLength,a=bv.log2(t)|0;G_[a].push(r)}};function ire(e){if(e){var r=e.length||e.byteLength,t=bv.log2(r);G_[t].push(e)}}function n9e(e){ire(e.buffer)}Na.freeUint8=Na.freeUint16=Na.freeUint32=Na.freeBigUint64=Na.freeInt8=Na.freeInt16=Na.freeInt32=Na.freeBigInt64=Na.freeFloat32=Na.freeFloat=Na.freeFloat64=Na.freeDouble=Na.freeUint8Clamped=Na.freeDataView=n9e;Na.freeArrayBuffer=ire;Na.freeBuffer=function(r){U_[bv.log2(r.length)].push(r)};Na.malloc=function(r,t){if(t===void 0||t==="arraybuffer")return il(r);switch(t){case"uint8":return h9(r);case"uint16":return ore(r);case"uint32":return lre(r);case"int8":return sre(r);case"int16":return fre(r);case"int32":return ure(r);case"float":case"float32":return cre(r);case"double":case"float64":return vre(r);case"uint8_clamped":return hre(r);case"bigint64":return pre(r);case"biguint64":return dre(r);case"buffer":return yre(r);case"data":case"dataview":return mre(r);default:return null}return null};function il(r){var r=bv.nextPow2(r),t=bv.log2(r),a=G_[t];return a.length>0?a.pop():new ArrayBuffer(r)}Na.mallocArrayBuffer=il;function h9(e){return new Uint8Array(il(e),0,e)}Na.mallocUint8=h9;function ore(e){return new Uint16Array(il(2*e),0,e)}Na.mallocUint16=ore;function lre(e){return new Uint32Array(il(4*e),0,e)}Na.mallocUint32=lre;function sre(e){return new Int8Array(il(e),0,e)}Na.mallocInt8=sre;function fre(e){return new Int16Array(il(2*e),0,e)}Na.mallocInt16=fre;function ure(e){return new Int32Array(il(4*e),0,e)}Na.mallocInt32=ure;function cre(e){return new Float32Array(il(4*e),0,e)}Na.mallocFloat32=Na.mallocFloat=cre;function vre(e){return new Float64Array(il(8*e),0,e)}Na.mallocFloat64=Na.mallocDouble=vre;function hre(e){return r9e?new Uint8ClampedArray(il(e),0,e):h9(e)}Na.mallocUint8Clamped=hre;function dre(e){return t9e?new BigUint64Array(il(8*e),0,e):null}Na.mallocBigUint64=dre;function pre(e){return a9e?new BigInt64Array(il(8*e),0,e):null}Na.mallocBigInt64=pre;function mre(e){return new DataView(il(e),0,e)}Na.mallocDataView=mre;function yre(e){e=bv.nextPow2(e);var r=bv.log2(e),t=U_[r];return t.length>0?t.pop():new nre(e)}Na.mallocBuffer=yre;Na.clearCache=function(){for(var r=0;r<32;++r)vi.UINT8[r].length=0,vi.UINT16[r].length=0,vi.UINT32[r].length=0,vi.INT8[r].length=0,vi.INT16[r].length=0,vi.INT32[r].length=0,vi.FLOAT[r].length=0,vi.DOUBLE[r].length=0,vi.BIGUINT64[r].length=0,vi.BIGINT64[r].length=0,vi.UINT8C[r].length=0,G_[r].length=0,U_[r].length=0}});var xre=P((XIe,bre)=>{"use strict";var i9e=Object.prototype.toString;bre.exports=function(e){var r;return i9e.call(e)==="[object Object]"&&(r=Object.getPrototypeOf(e),r===null||r===Object.getPrototypeOf({}))}});var d9=P((ZIe,_re)=>{_re.exports=function(r,t){t||(t=[0,""]),r=String(r);var a=parseFloat(r,10);return t[0]=a,t[1]=r.match(/[\d.\-\+]*\s*(.*)/)[1]||"",t}});var Tre=P((JIe,Are)=>{"use strict";var o9e=d9();Are.exports=wre;var cg=96;function p9(e,r){var t=o9e(getComputedStyle(e).getPropertyValue(r));return t[0]*wre(t[1],e)}function l9e(e,r){var t=document.createElement("div");t.style["font-size"]="128"+e,r.appendChild(t);var a=p9(t,"font-size")/128;return r.removeChild(t),a}function wre(e,r){switch(r=r||document.body,e=(e||"px").trim().toLowerCase(),(r===window||r===document)&&(r=document.body),e){case"%":return r.clientHeight/100;case"ch":case"ex":return l9e(e,r);case"em":return p9(r,"font-size");case"rem":return p9(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return cg;case"cm":return cg/2.54;case"mm":return cg/25.4;case"pt":return cg/72;case"pc":return cg/6}return 1}});var Ere=P(($Ie,Sre)=>{"use strict";Sre.exports=Y_;var s9e=Y_.canvas=document.createElement("canvas"),H_=s9e.getContext("2d"),Mre=V_([32,126]);Y_.createPairs=V_;Y_.ascii=Mre;function Y_(e,r){Array.isArray(e)&&(e=e.join(", "));var t={},a,n=16,i=.05;r&&(r.length===2&&typeof r[0]=="number"?a=V_(r):Array.isArray(r)?a=r:(r.o?a=V_(r.o):r.pairs&&(a=r.pairs),r.fontSize&&(n=r.fontSize),r.threshold!=null&&(i=r.threshold))),a||(a=Mre),H_.font=n+"px "+e;for(var o=0;on*i){var u=(f-s)/n;t[l]=u*1e3}}return t}function V_(e){for(var r=[],t=e[0];t<=e[1];t++)for(var a=String.fromCharCode(t),n=e[0];n{"use strict";Lre.exports=xv;xv.canvas=document.createElement("canvas");xv.cache={};function xv(o,r){r||(r={}),(typeof o=="string"||Array.isArray(o))&&(r.family=o);var t=Array.isArray(r.family)?r.family.join(", "):r.family;if(!t)throw Error("`family` must be defined");var a=r.size||r.fontSize||r.em||48,n=r.weight||r.fontWeight||"",i=r.style||r.fontStyle||"",o=[i,n,a].join(" ")+"px "+t,l=r.origin||"top";if(xv.cache[t]&&a<=xv.cache[t].em)return kre(xv.cache[t],l);var s=r.canvas||xv.canvas,f=s.getContext("2d"),u={upper:r.upper!==void 0?r.upper:"H",lower:r.lower!==void 0?r.lower:"x",descent:r.descent!==void 0?r.descent:"p",ascent:r.ascent!==void 0?r.ascent:"h",tittle:r.tittle!==void 0?r.tittle:"i",overshoot:r.overshoot!==void 0?r.overshoot:"O"},c=Math.ceil(a*1.5);s.height=c,s.width=c*.5,f.font=o;var v="H",d={top:0};f.clearRect(0,0,c,c),f.textBaseline="top",f.fillStyle="black",f.fillText(v,0,0);var p=Gf(f.getImageData(0,0,c,c));f.clearRect(0,0,c,c),f.textBaseline="bottom",f.fillText(v,0,c);var y=Gf(f.getImageData(0,0,c,c));d.lineHeight=d.bottom=c-y+p,f.clearRect(0,0,c,c),f.textBaseline="alphabetic",f.fillText(v,0,c);var m=Gf(f.getImageData(0,0,c,c)),b=c-m-1+p;d.baseline=d.alphabetic=b,f.clearRect(0,0,c,c),f.textBaseline="middle",f.fillText(v,0,c*.5);var A=Gf(f.getImageData(0,0,c,c));d.median=d.middle=c-A-1+p-c*.5,f.clearRect(0,0,c,c),f.textBaseline="hanging",f.fillText(v,0,c*.5);var _=Gf(f.getImageData(0,0,c,c));d.hanging=c-_-1+p-c*.5,f.clearRect(0,0,c,c),f.textBaseline="ideographic",f.fillText(v,0,c);var x=Gf(f.getImageData(0,0,c,c));if(d.ideographic=c-x-1+p,u.upper&&(f.clearRect(0,0,c,c),f.textBaseline="top",f.fillText(u.upper,0,0),d.upper=Gf(f.getImageData(0,0,c,c)),d.capHeight=d.baseline-d.upper),u.lower&&(f.clearRect(0,0,c,c),f.textBaseline="top",f.fillText(u.lower,0,0),d.lower=Gf(f.getImageData(0,0,c,c)),d.xHeight=d.baseline-d.lower),u.tittle&&(f.clearRect(0,0,c,c),f.textBaseline="top",f.fillText(u.tittle,0,0),d.tittle=Gf(f.getImageData(0,0,c,c))),u.ascent&&(f.clearRect(0,0,c,c),f.textBaseline="top",f.fillText(u.ascent,0,0),d.ascent=Gf(f.getImageData(0,0,c,c))),u.descent&&(f.clearRect(0,0,c,c),f.textBaseline="top",f.fillText(u.descent,0,0),d.descent=Cre(f.getImageData(0,0,c,c))),u.overshoot){f.clearRect(0,0,c,c),f.textBaseline="top",f.fillText(u.overshoot,0,0);var T=Cre(f.getImageData(0,0,c,c));d.overshoot=T-b}for(var E in d)d[E]/=a;return d.em=a,xv.cache[t]=d,kre(d,l)}function kre(e,r){var t={};typeof r=="string"&&(r=e[r]);for(var a in e)a!=="em"&&(t[a]=e[a]-r);return t}function Gf(e){for(var r=e.height,t=e.data,a=3;a0;a-=4)if(t[a]!==0)return Math.floor((a-3)*.25/r)}});var Pre=P((KIe,Rre)=>{"use strict";var Hp=Tee(),f9e=If(),u9e=Mee(),c9e=Lee(),v9e=O7(),m9=ch(),h9e=Fee(),_v=gre(),d9e=hp(),p9e=xre(),m9e=d9(),y9e=Tre(),g9e=Ere(),b9e=ni(),x9e=Dre(),_9e=nh(),w9e=t9(),Fre=w9e.nextPow2,qre=new v9e,j_=!1;document.body&&(W_=document.body.appendChild(document.createElement("div")),W_.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(W_).fontStretch&&(j_=!0),document.body.removeChild(W_));var W_,Ja=function(r){A9e(r)?(r={regl:r},this.gl=r.regl._gl):this.gl=c9e(r),this.shader=qre.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=r.regl||u9e({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),qre.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(p9e(r)?r:{})};Ja.prototype.createShader=function(){var r=this.regl,t=r({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:r.prop("count"),offset:r.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:r.this("sizeBuffer")},width:{offset:0,stride:8,buffer:r.this("sizeBuffer")},char:r.this("charBuffer"),position:r.this("position")},uniforms:{atlasSize:function(n,i){return[i.atlas.width,i.atlas.height]},atlasDim:function(n,i){return[i.atlas.cols,i.atlas.rows]},atlas:function(n,i){return i.atlas.texture},charStep:function(n,i){return i.atlas.step},em:function(n,i){return i.atlas.em},color:r.prop("color"),opacity:r.prop("opacity"),viewport:r.this("viewportArray"),scale:r.this("scale"),align:r.prop("align"),baseline:r.prop("baseline"),translate:r.this("translate"),positionOffset:r.prop("positionOffset")},primitive:"points",viewport:r.this("viewport"),vert:` +`),ke;if(B&&(ke=M1(fe),B[ke]))return B[ke].apply(null,xe);var Ze=Function.apply(null,he.concat(fe));return B&&(B[ke]=Ze),Ze.apply(null,xe)}return{global:sr,link:_e,block:He,proc:Fr,scope:or,cond:ir,compile:yr}}var fo="xyzw".split(""),uc=5121,Ji=1,_s=2,nu=0,cf=1,cc=2,vf=3,ws=4,vc=5,hf=6,hc="dither",f0="blend.enable",u0="blend.color",iu="blend.equation",ou="blend.func",dc="depth.enable",pc="depth.func",mc="depth.range",yc="depth.mask",lu="colorMask",df="cull.enable",c0="cull.face",su="frontFace",pf="lineWidth",gc="polygonOffset.enable",fu="polygonOffset.offset",mf="sample.alpha",yf="sample.enable",gf="sample.coverage",bc="stencil.enable",uu="stencil.mask",Ci="stencil.func",bf="stencil.opFront",vl="stencil.opBack",cu="scissor.enable",hl="scissor.box",si="viewport",As="profile",Do="framebuffer",Vo="vert",dl="frag",uo="elements",Fo="primitive",qo="count",vu="offset",gi="instances",Nl="vao",xf="Width",co="Height",$i=Do+xf,Qi=Do+co,L1=si+xf,D1=si+co,v0="drawingBuffer",xc=v0+xf,_c=v0+co,Uh=[ou,iu,Ci,bf,vl,gf,si,hl,fu],vo=34962,hu=34963,Hh=2884,F1=3042,q1=3024,R1=2960,Vh=2929,Yh=3089,wc=32823,Wh=32926,Ac=32928,Tc=5126,pl=35664,on=35665,_f=35666,ml=5124,Il=35667,Ts=35668,du=35669,pu=35670,Ol=35671,wf=35672,mu=35673,yu=35674,gu=35675,bu=35676,Ms=35678,xu=35680,_u=4,h=1028,g=1029,w=2304,C=2305,L=32775,D=32776,G=519,R=7680,X=0,ie=1,oe=32774,ye=513,ge=36160,Ye=36064,Qe={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Me={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Fe={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Ge={cw:w,ccw:C};function Ke(M){return Array.isArray(M)||Xr(M)||nt(M)}function ar(M){return M.sort(function(B,V){return B===si?-1:V===si?1:B=1,he>=2,B)}else if(V===ws){var xe=M.data;return new De(xe.thisDep,xe.contextDep,xe.propDep,B)}else{if(V===vc)return new De(!1,!1,!1,B);if(V===hf){for(var we=!1,_e=!1,He=!1,or=0;or=1&&(_e=!0),sr>=2&&(He=!0)}else ir.type===ws&&(we=we||ir.data.thisDep,_e=_e||ir.data.contextDep,He=He||ir.data.propDep)}return new De(we,_e,He,B)}else return new De(V===vf,V===cc,V===cf,B)}}var yt=new De(!1,!1,!1,function(){});function Ct(M,B,V,he,xe,we,_e,He,or,ir,sr,Qr,Fr,yr,Pe,fe){var ke=ir.Record,Ze={add:32774,subtract:32778,"reverse subtract":32779};V.ext_blend_minmax&&(Ze.min=L,Ze.max=D);var nr=V.angle_instanced_arrays,Oe=V.webgl_draw_buffers,br=V.oes_vertex_array_object,dr={dirty:!0,profile:fe.profile},Zr={},Ie=[],qe={},Sr={};function hr(N){return N.replace(".","_")}function fr(N,U,$){var pe=hr(N);Ie.push(N),Zr[pe]=dr[pe]=!!$,qe[pe]=U}function vr(N,U,$){var pe=hr(N);Ie.push(N),Array.isArray($)?(dr[pe]=$.slice(),Zr[pe]=$.slice()):dr[pe]=Zr[pe]=$,Sr[pe]=U}function Er(N){return!!isNaN(N)}fr(hc,q1),fr(f0,F1),vr(u0,"blendColor",[0,0,0,0]),vr(iu,"blendEquationSeparate",[oe,oe]),vr(ou,"blendFuncSeparate",[ie,X,ie,X]),fr(dc,Vh,!0),vr(pc,"depthFunc",ye),vr(mc,"depthRange",[0,1]),vr(yc,"depthMask",!0),vr(lu,lu,[!0,!0,!0,!0]),fr(df,Hh),vr(c0,"cullFace",g),vr(su,su,C),vr(pf,pf,1),fr(gc,wc),vr(fu,"polygonOffset",[0,0]),fr(mf,Wh),fr(yf,Ac),vr(gf,"sampleCoverage",[1,!1]),fr(bc,R1),vr(uu,"stencilMask",-1),vr(Ci,"stencilFunc",[G,0,-1]),vr(bf,"stencilOpSeparate",[h,R,R,R]),vr(vl,"stencilOpSeparate",[g,R,R,R]),fr(cu,Yh),vr(hl,"scissor",[0,0,M.drawingBufferWidth,M.drawingBufferHeight]),vr(si,si,[0,0,M.drawingBufferWidth,M.drawingBufferHeight]);var Jr={gl:M,context:Fr,strings:B,next:Zr,current:dr,draw:Qr,elements:we,buffer:xe,shader:sr,attributes:ir.state,vao:ir,uniforms:or,framebuffer:He,extensions:V,timer:yr,isBufferArgs:Ke},ct={primTypes:Oo,compareFuncs:Me,blendFuncs:Qe,blendEquations:Ze,stencilOps:Fe,glTypes:hn,orientationType:Ge};Oe&&(ct.backBuffer=[g],ct.drawBuffer=k(he.maxDrawbuffers,function(N){return N===0?[0]:k(N,function(U){return Ye+U})}));var mr=0;function Cr(){var N=Gh({cache:Pe}),U=N.link,$=N.global;N.id=mr++,N.batchId="0";var pe=U(Jr),Te=N.shared={props:"a0"};Object.keys(Jr).forEach(function(K){Te[K]=$.def(pe,".",K)});var ce=N.next={},se=N.current={};Object.keys(Sr).forEach(function(K){Array.isArray(dr[K])&&(ce[K]=$.def(Te.next,".",K),se[K]=$.def(Te.current,".",K))});var re=N.constants={};Object.keys(ct).forEach(function(K){re[K]=$.def(JSON.stringify(ct[K]))}),N.invoke=function(K,Y){switch(Y.type){case nu:var ve=["this",Te.context,Te.props,N.batchId];return K.def(U(Y.data),".call(",ve.slice(0,Math.max(Y.data.length+1,4)),")");case cf:return K.def(Te.props,Y.data);case cc:return K.def(Te.context,Y.data);case vf:return K.def("this",Y.data);case ws:return Y.data.append(N,K),Y.data.ref;case vc:return Y.data.toString();case hf:return Y.data.map(function(Ce){return N.invoke(K,Ce)})}},N.attribCache={};var W={};return N.scopeAttrib=function(K){var Y=B.id(K);if(Y in W)return W[Y];var ve=ir.scope[Y];ve||(ve=ir.scope[Y]=new ke);var Ce=W[Y]=U(ve);return Ce},N}function ft(N){var U=N.static,$=N.dynamic,pe;if(As in U){var Te=!!U[As];pe=zr(function(se,re){return Te}),pe.enable=Te}else if(As in $){var ce=$[As];pe=it(ce,function(se,re){return se.invoke(re,ce)})}return pe}function ut(N,U){var $=N.static,pe=N.dynamic;if(Do in $){var Te=$[Do];return Te?(Te=He.getFramebuffer(Te),zr(function(se,re){var W=se.link(Te),K=se.shared;re.set(K.framebuffer,".next",W);var Y=K.context;return re.set(Y,"."+$i,W+".width"),re.set(Y,"."+Qi,W+".height"),W})):zr(function(se,re){var W=se.shared;re.set(W.framebuffer,".next","null");var K=W.context;return re.set(K,"."+$i,K+"."+xc),re.set(K,"."+Qi,K+"."+_c),"null"})}else if(Do in pe){var ce=pe[Do];return it(ce,function(se,re){var W=se.invoke(re,ce),K=se.shared,Y=K.framebuffer,ve=re.def(Y,".getFramebuffer(",W,")");re.set(Y,".next",ve);var Ce=K.context;return re.set(Ce,"."+$i,ve+"?"+ve+".width:"+Ce+"."+xc),re.set(Ce,"."+Qi,ve+"?"+ve+".height:"+Ce+"."+_c),ve})}else return null}function St(N,U,$){var pe=N.static,Te=N.dynamic;function ce(W){if(W in pe){var K=pe[W],Y=!0,ve=K.x|0,Ce=K.y|0,Je,et;return"width"in K?Je=K.width|0:Y=!1,"height"in K?et=K.height|0:Y=!1,new De(!Y&&U&&U.thisDep,!Y&&U&&U.contextDep,!Y&&U&&U.propDep,function($r,Gr){var Br=$r.shared.context,Mr=Je;"width"in K||(Mr=Gr.def(Br,".",$i,"-",ve));var Rr=et;return"height"in K||(Rr=Gr.def(Br,".",Qi,"-",Ce)),[ve,Ce,Mr,Rr]})}else if(W in Te){var kr=Te[W],Tr=it(kr,function($r,Gr){var Br=$r.invoke(Gr,kr),Mr=$r.shared.context,Rr=Gr.def(Br,".x|0"),Or=Gr.def(Br,".y|0"),vt=Gr.def('"width" in ',Br,"?",Br,".width|0:","(",Mr,".",$i,"-",Rr,")"),Kt=Gr.def('"height" in ',Br,"?",Br,".height|0:","(",Mr,".",Qi,"-",Or,")");return[Rr,Or,vt,Kt]});return U&&(Tr.thisDep=Tr.thisDep||U.thisDep,Tr.contextDep=Tr.contextDep||U.contextDep,Tr.propDep=Tr.propDep||U.propDep),Tr}else return U?new De(U.thisDep,U.contextDep,U.propDep,function($r,Gr){var Br=$r.shared.context;return[0,0,Gr.def(Br,".",$i),Gr.def(Br,".",Qi)]}):null}var se=ce(si);if(se){var re=se;se=new De(se.thisDep,se.contextDep,se.propDep,function(W,K){var Y=re.append(W,K),ve=W.shared.context;return K.set(ve,"."+L1,Y[2]),K.set(ve,"."+D1,Y[3]),Y})}return{viewport:se,scissor_box:ce(hl)}}function aa(N,U){var $=N.static,pe=typeof $[dl]=="string"&&typeof $[Vo]=="string";if(pe){if(Object.keys(U.dynamic).length>0)return null;var Te=U.static,ce=Object.keys(Te);if(ce.length>0&&typeof Te[ce[0]]=="number"){for(var se=[],re=0;re"+Rr+"?"+Y+".constant["+Rr+"]:0;"}).join(""),"}}else{","if(",Je,"(",Y,".buffer)){",$r,"=",et,".createStream(",vo,",",Y,".buffer);","}else{",$r,"=",et,".getBuffer(",Y,".buffer);","}",Gr,'="type" in ',Y,"?",Ce.glTypes,"[",Y,".type]:",$r,".dtype;",kr.normalized,"=!!",Y,".normalized;");function Br(Mr){K(kr[Mr],"=",Y,".",Mr,"|0;")}return Br("size"),Br("offset"),Br("stride"),Br("divisor"),K("}}"),K.exit("if(",kr.isStream,"){",et,".destroyStream(",$r,");","}"),kr}Te[ce]=it(se,re)}),Te}function Wa(N){var U=N.static,$=N.dynamic,pe={};return Object.keys(U).forEach(function(Te){var ce=U[Te];pe[Te]=zr(function(se,re){return typeof ce=="number"||typeof ce=="boolean"?""+ce:se.link(ce)})}),Object.keys($).forEach(function(Te){var ce=$[Te];pe[Te]=it(ce,function(se,re){return se.invoke(re,ce)})}),pe}function sn(N,U,$,pe,Te){var ce=N.static,se=N.dynamic,re=aa(N,U),W=ut(N,Te),K=St(N,W,Te),Y=Dt(N,Te),ve=ln(N,Te),Ce=Sa(N,Te,re);function Je(Br){var Mr=K[Br];Mr&&(ve[Br]=Mr)}Je(si),Je(hr(hl));var et=Object.keys(ve).length>0,kr={framebuffer:W,draw:Y,shader:Ce,state:ve,dirty:et,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(kr.profile=ft(N,Te),kr.uniforms=Ut($,Te),kr.drawVAO=kr.scopeVAO=Y.vao,!kr.drawVAO&&Ce.program&&!re&&V.angle_instanced_arrays&&Y.static.elements){var Tr=!0,$r=Ce.program.attributes.map(function(Br){var Mr=U.static[Br];return Tr=Tr&&!!Mr,Mr});if(Tr&&$r.length>0){var Gr=ir.getVAO(ir.createVAO({attributes:$r,elements:Y.static.elements}));kr.drawVAO=new De(null,null,null,function(Br,Mr){return Br.link(Gr)}),kr.useVAO=!0}}return re?kr.useVAO=!0:kr.attributes=Ua(U,Te),kr.context=Wa(pe,Te),kr}function ya(N,U,$){var pe=N.shared,Te=pe.context,ce=N.scope();Object.keys($).forEach(function(se){U.save(Te,"."+se);var re=$[se],W=re.append(N,U);Array.isArray(W)?ce(Te,".",se,"=[",W.join(),"];"):ce(Te,".",se,"=",W,";")}),U(ce)}function ga(N,U,$,pe){var Te=N.shared,ce=Te.gl,se=Te.framebuffer,re;Oe&&(re=U.def(Te.extensions,".webgl_draw_buffers"));var W=N.constants,K=W.drawBuffer,Y=W.backBuffer,ve;$?ve=$.append(N,U):ve=U.def(se,".next"),pe||U("if(",ve,"!==",se,".cur){"),U("if(",ve,"){",ce,".bindFramebuffer(",ge,",",ve,".framebuffer);"),Oe&&U(re,".drawBuffersWEBGL(",K,"[",ve,".colorAttachments.length]);"),U("}else{",ce,".bindFramebuffer(",ge,",null);"),Oe&&U(re,".drawBuffersWEBGL(",Y,");"),U("}",se,".cur=",ve,";"),pe||U("}")}function Ea(N,U,$){var pe=N.shared,Te=pe.gl,ce=N.current,se=N.next,re=pe.current,W=pe.next,K=N.cond(re,".dirty");Ie.forEach(function(Y){var ve=hr(Y);if(!(ve in $.state)){var Ce,Je;if(ve in se){Ce=se[ve],Je=ce[ve];var et=k(dr[ve].length,function(Tr){return K.def(Ce,"[",Tr,"]")});K(N.cond(et.map(function(Tr,$r){return Tr+"!=="+Je+"["+$r+"]"}).join("||")).then(Te,".",Sr[ve],"(",et,");",et.map(function(Tr,$r){return Je+"["+$r+"]="+Tr}).join(";"),";"))}else{Ce=K.def(W,".",ve);var kr=N.cond(Ce,"!==",re,".",ve);K(kr),ve in qe?kr(N.cond(Ce).then(Te,".enable(",qe[ve],");").else(Te,".disable(",qe[ve],");"),re,".",ve,"=",Ce,";"):kr(Te,".",Sr[ve],"(",Ce,");",re,".",ve,"=",Ce,";")}}}),Object.keys($.state).length===0&&K(re,".dirty=false;"),U(K)}function At(N,U,$,pe){var Te=N.shared,ce=N.current,se=Te.current,re=Te.gl,W;ar(Object.keys($)).forEach(function(K){var Y=$[K];if(!(pe&&!pe(Y))){var ve=Y.append(N,U);if(qe[K]){var Ce=qe[K];Dr(Y)?(W=N.link(ve,{stable:!0}),U(N.cond(W).then(re,".enable(",Ce,");").else(re,".disable(",Ce,");")),U(se,".",K,"=",W,";")):(U(N.cond(ve).then(re,".enable(",Ce,");").else(re,".disable(",Ce,");")),U(se,".",K,"=",ve,";"))}else if(Si(ve)){var Je=ce[K];U(re,".",Sr[K],"(",ve,");",ve.map(function(et,kr){return Je+"["+kr+"]="+et}).join(";"),";")}else Dr(Y)?(W=N.link(ve,{stable:!0}),U(re,".",Sr[K],"(",W,");",se,".",K,"=",W,";")):U(re,".",Sr[K],"(",ve,");",se,".",K,"=",ve,";")}})}function Da(N,U){nr&&(N.instancing=U.def(N.shared.extensions,".angle_instanced_arrays"))}function Wt(N,U,$,pe,Te){var ce=N.shared,se=N.stats,re=ce.current,W=ce.timer,K=$.profile;function Y(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var ve,Ce;function Je(Br){ve=U.def(),Br(ve,"=",Y(),";"),typeof Te=="string"?Br(se,".count+=",Te,";"):Br(se,".count++;"),yr&&(pe?(Ce=U.def(),Br(Ce,"=",W,".getNumPendingQueries();")):Br(W,".beginQuery(",se,");"))}function et(Br){Br(se,".cpuTime+=",Y(),"-",ve,";"),yr&&(pe?Br(W,".pushScopeStats(",Ce,",",W,".getNumPendingQueries(),",se,");"):Br(W,".endQuery();"))}function kr(Br){var Mr=U.def(re,".profile");U(re,".profile=",Br,";"),U.exit(re,".profile=",Mr,";")}var Tr;if(K){if(Dr(K)){K.enable?(Je(U),et(U.exit),kr("true")):kr("false");return}Tr=K.append(N,U),kr(Tr)}else Tr=U.def(re,".profile");var $r=N.block();Je($r),U("if(",Tr,"){",$r,"}");var Gr=N.block();et(Gr),U.exit("if(",Tr,"){",Gr,"}")}function ja(N,U,$,pe,Te){var ce=N.shared;function se(W){switch(W){case pl:case Il:case Ol:return 2;case on:case Ts:case wf:return 3;case _f:case du:case mu:return 4;default:return 1}}function re(W,K,Y){var ve=ce.gl,Ce=U.def(W,".location"),Je=U.def(ce.attributes,"[",Ce,"]"),et=Y.state,kr=Y.buffer,Tr=[Y.x,Y.y,Y.z,Y.w],$r=["buffer","normalized","offset","stride"];function Gr(){U("if(!",Je,".buffer){",ve,".enableVertexAttribArray(",Ce,");}");var Mr=Y.type,Rr;if(Y.size?Rr=U.def(Y.size,"||",K):Rr=K,U("if(",Je,".type!==",Mr,"||",Je,".size!==",Rr,"||",$r.map(function(vt){return Je+"."+vt+"!=="+Y[vt]}).join("||"),"){",ve,".bindBuffer(",vo,",",kr,".buffer);",ve,".vertexAttribPointer(",[Ce,Rr,Mr,Y.normalized,Y.stride,Y.offset],");",Je,".type=",Mr,";",Je,".size=",Rr,";",$r.map(function(vt){return Je+"."+vt+"="+Y[vt]+";"}).join(""),"}"),nr){var Or=Y.divisor;U("if(",Je,".divisor!==",Or,"){",N.instancing,".vertexAttribDivisorANGLE(",[Ce,Or],");",Je,".divisor=",Or,";}")}}function Br(){U("if(",Je,".buffer){",ve,".disableVertexAttribArray(",Ce,");",Je,".buffer=null;","}if(",fo.map(function(Mr,Rr){return Je+"."+Mr+"!=="+Tr[Rr]}).join("||"),"){",ve,".vertexAttrib4f(",Ce,",",Tr,");",fo.map(function(Mr,Rr){return Je+"."+Mr+"="+Tr[Rr]+";"}).join(""),"}")}et===Ji?Gr():et===_s?Br():(U("if(",et,"===",Ji,"){"),Gr(),U("}else{"),Br(),U("}"))}pe.forEach(function(W){var K=W.name,Y=$.attributes[K],ve;if(Y){if(!Te(Y))return;ve=Y.append(N,U)}else{if(!Te(yt))return;var Ce=N.scopeAttrib(K);ve={},Object.keys(new ke).forEach(function(Je){ve[Je]=U.def(Ce,".",Je)})}re(N.link(W),se(W.info.type),ve)})}function fn(N,U,$,pe,Te,ce){for(var se=N.shared,re=se.gl,W,K=0;K1){for(var cn=[],Di=[],Ki=0;Ki>1)",kr],");")}function Or(){$(Tr,".drawArraysInstancedANGLE(",[Ce,Je,et,kr],");")}Y&&Y!=="null"?Gr?Rr():($("if(",Y,"){"),Rr(),$("}else{"),Or(),$("}")):Or()}function Mr(){function Rr(){$(ce+".drawElements("+[Ce,et,$r,Je+"<<(("+$r+"-"+uc+")>>1)"]+");")}function Or(){$(ce+".drawArrays("+[Ce,Je,et]+");")}Y&&Y!=="null"?Gr?Rr():($("if(",Y,"){"),Rr(),$("}else{"),Or(),$("}")):Or()}nr&&(typeof kr!="number"||kr>=0)?typeof kr=="string"?($("if(",kr,">0){"),Br(),$("}else if(",kr,"<0){"),Mr(),$("}")):Br():Mr()}function pt(N,U,$,pe,Te){var ce=Cr(),se=ce.proc("body",Te);return nr&&(ce.instancing=se.def(ce.shared.extensions,".angle_instanced_arrays")),N(ce,se,$,pe),ce.compile().body}function Rt(N,U,$,pe){Da(N,U),$.useVAO?$.drawVAO?U(N.shared.vao,".setVAO(",$.drawVAO.append(N,U),");"):U(N.shared.vao,".setVAO(",N.shared.vao,".targetVAO);"):(U(N.shared.vao,".setVAO(null);"),ja(N,U,$,pe.attributes,function(){return!0})),fn(N,U,$,pe.uniforms,function(){return!0},!1),un(N,U,U,$)}function Qt(N,U){var $=N.proc("draw",1);Da(N,$),ya(N,$,U.context),ga(N,$,U.framebuffer),Ea(N,$,U),At(N,$,U.state),Wt(N,$,U,!1,!0);var pe=U.shader.progVar.append(N,$);if($(N.shared.gl,".useProgram(",pe,".program);"),U.shader.program)Rt(N,$,U,U.shader.program);else{$(N.shared.vao,".setVAO(null);");var Te=N.global.def("{}"),ce=$.def(pe,".id"),se=$.def(Te,"[",ce,"]");$(N.cond(se).then(se,".call(this,a0);").else(se,"=",Te,"[",ce,"]=",N.link(function(re){return pt(Rt,N,U,re,1)}),"(",pe,");",se,".call(this,a0);"))}Object.keys(U.state).length>0&&$(N.shared.current,".dirty=true;"),N.shared.vao&&$(N.shared.vao,".setVAO(null);")}function z(N,U,$,pe){N.batchId="a1",Da(N,U);function Te(){return!0}ja(N,U,$,pe.attributes,Te),fn(N,U,$,pe.uniforms,Te,!1),un(N,U,U,$)}function me(N,U,$,pe){Da(N,U);var Te=$.contextDep,ce=U.def(),se="a0",re="a1",W=U.def();N.shared.props=W,N.batchId=ce;var K=N.scope(),Y=N.scope();U(K.entry,"for(",ce,"=0;",ce,"<",re,";++",ce,"){",W,"=",se,"[",ce,"];",Y,"}",K.exit);function ve($r){return $r.contextDep&&Te||$r.propDep}function Ce($r){return!ve($r)}if($.needsContext&&ya(N,Y,$.context),$.needsFramebuffer&&ga(N,Y,$.framebuffer),At(N,Y,$.state,ve),$.profile&&ve($.profile)&&Wt(N,Y,$,!1,!0),pe)$.useVAO?$.drawVAO?ve($.drawVAO)?Y(N.shared.vao,".setVAO(",$.drawVAO.append(N,Y),");"):K(N.shared.vao,".setVAO(",$.drawVAO.append(N,K),");"):K(N.shared.vao,".setVAO(",N.shared.vao,".targetVAO);"):(K(N.shared.vao,".setVAO(null);"),ja(N,K,$,pe.attributes,Ce),ja(N,Y,$,pe.attributes,ve)),fn(N,K,$,pe.uniforms,Ce,!1),fn(N,Y,$,pe.uniforms,ve,!0),un(N,K,Y,$);else{var Je=N.global.def("{}"),et=$.shader.progVar.append(N,Y),kr=Y.def(et,".id"),Tr=Y.def(Je,"[",kr,"]");Y(N.shared.gl,".useProgram(",et,".program);","if(!",Tr,"){",Tr,"=",Je,"[",kr,"]=",N.link(function($r){return pt(z,N,$,$r,2)}),"(",et,");}",Tr,".call(this,a0[",ce,"],",ce,");")}}function be(N,U){var $=N.proc("batch",2);N.batchId="0",Da(N,$);var pe=!1,Te=!0;Object.keys(U.context).forEach(function(Je){pe=pe||U.context[Je].propDep}),pe||(ya(N,$,U.context),Te=!1);var ce=U.framebuffer,se=!1;ce?(ce.propDep?pe=se=!0:ce.contextDep&&pe&&(se=!0),se||ga(N,$,ce)):ga(N,$,null),U.state.viewport&&U.state.viewport.propDep&&(pe=!0);function re(Je){return Je.contextDep&&pe||Je.propDep}Ea(N,$,U),At(N,$,U.state,function(Je){return!re(Je)}),(!U.profile||!re(U.profile))&&Wt(N,$,U,!1,"a1"),U.contextDep=pe,U.needsContext=Te,U.needsFramebuffer=se;var W=U.shader.progVar;if(W.contextDep&&pe||W.propDep)me(N,$,U,null);else{var K=W.append(N,$);if($(N.shared.gl,".useProgram(",K,".program);"),U.shader.program)me(N,$,U,U.shader.program);else{$(N.shared.vao,".setVAO(null);");var Y=N.global.def("{}"),ve=$.def(K,".id"),Ce=$.def(Y,"[",ve,"]");$(N.cond(Ce).then(Ce,".call(this,a0,a1);").else(Ce,"=",Y,"[",ve,"]=",N.link(function(Je){return pt(me,N,U,Je,2)}),"(",K,");",Ce,".call(this,a0,a1);"))}}Object.keys(U.state).length>0&&$(N.shared.current,".dirty=true;"),N.shared.vao&&$(N.shared.vao,".setVAO(null);")}function Nr(N,U){var $=N.proc("scope",3);N.batchId="a2";var pe=N.shared,Te=pe.current;if(ya(N,$,U.context),U.framebuffer&&U.framebuffer.append(N,$),ar(Object.keys(U.state)).forEach(function(re){var W=U.state[re],K=W.append(N,$);Si(K)?K.forEach(function(Y,ve){Er(Y)?$.set(N.next[re],"["+ve+"]",Y):$.set(N.next[re],"["+ve+"]",N.link(Y,{stable:!0}))}):Dr(W)?$.set(pe.next,"."+re,N.link(K,{stable:!0})):$.set(pe.next,"."+re,K)}),Wt(N,$,U,!0,!0),[uo,vu,qo,gi,Fo].forEach(function(re){var W=U.draw[re];if(W){var K=W.append(N,$);Er(K)?$.set(pe.draw,"."+re,K):$.set(pe.draw,"."+re,N.link(K),{stable:!0})}}),Object.keys(U.uniforms).forEach(function(re){var W=U.uniforms[re].append(N,$);Array.isArray(W)&&(W="["+W.map(function(K){return Er(K)?K:N.link(K,{stable:!0})})+"]"),$.set(pe.uniforms,"["+N.link(B.id(re),{stable:!0})+"]",W)}),Object.keys(U.attributes).forEach(function(re){var W=U.attributes[re].append(N,$),K=N.scopeAttrib(re);Object.keys(new ke).forEach(function(Y){$.set(K,"."+Y,W[Y])})}),U.scopeVAO){var ce=U.scopeVAO.append(N,$);Er(ce)?$.set(pe.vao,".targetVAO",ce):$.set(pe.vao,".targetVAO",N.link(ce,{stable:!0}))}function se(re){var W=U.shader[re];if(W){var K=W.append(N,$);Er(K)?$.set(pe.shader,"."+re,K):$.set(pe.shader,"."+re,N.link(K,{stable:!0}))}}se(Vo),se(dl),Object.keys(U.state).length>0&&($(Te,".dirty=true;"),$.exit(Te,".dirty=true;")),$("a1(",N.shared.context,",a0,",N.batchId,");")}function Ft(N){if(!(typeof N!="object"||Si(N))){for(var U=Object.keys(N),$=0;$=0;--pt){var Rt=Jr[pt];Rt&&Rt(Pe,null,0)}V.flush(),sr&&sr.update()}function St(){!ft&&Jr.length>0&&(ft=d.next(ut))}function aa(){ft&&(d.cancel(ut),ft=null)}function Sa(pt){pt.preventDefault(),xe=!0,aa(),ct.forEach(function(Rt){Rt()})}function Dt(pt){V.getError(),xe=!1,we.restore(),Zr.restore(),nr.restore(),Ie.restore(),qe.restore(),Sr.restore(),br.restore(),sr&&sr.restore(),hr.procs.refresh(),St(),mr.forEach(function(Rt){Rt()})}Er&&(Er.addEventListener(jt,Sa,!1),Er.addEventListener(va,Dt,!1));function ln(){Jr.length=0,aa(),Er&&(Er.removeEventListener(jt,Sa),Er.removeEventListener(va,Dt)),Zr.clear(),Sr.clear(),qe.clear(),br.clear(),Ie.clear(),Oe.clear(),nr.clear(),sr&&sr.clear(),Cr.forEach(function(pt){pt()})}function Ut(pt){function Rt(ce){var se=e({},ce);delete se.uniforms,delete se.attributes,delete se.context,delete se.vao,"stencil"in se&&se.stencil.op&&(se.stencil.opBack=se.stencil.opFront=se.stencil.op,delete se.stencil.op);function re(W){if(W in se){var K=se[W];delete se[W],Object.keys(K).forEach(function(Y){se[W+"."+Y]=K[Y]})}}return re("blend"),re("depth"),re("cull"),re("stencil"),re("polygonOffset"),re("scissor"),re("sample"),"vao"in ce&&(se.vao=ce.vao),se}function Qt(ce,se){var re={},W={};return Object.keys(ce).forEach(function(K){var Y=ce[K];if(v.isDynamic(Y)){W[K]=v.unbox(Y,K);return}else if(se&&Array.isArray(Y)){for(var ve=0;ve0)return N.call(this,pe(ce|0),ce|0)}else if(Array.isArray(ce)){if(ce.length)return N.call(this,ce,ce.length)}else return qr.call(this,ce)}return e(Te,{stats:Ft,destroy:function(){Ht.destroy()}})}var Ua=Sr.setFBO=Ut({framebuffer:v.define.call(null,Ya,"framebuffer")});function Wa(pt,Rt){var Qt=0;hr.procs.poll();var z=Rt.color;z&&(V.clearColor(+z[0]||0,+z[1]||0,+z[2]||0,+z[3]||0),Qt|=_n),"depth"in Rt&&(V.clearDepth(+Rt.depth),Qt|=Ca),"stencil"in Rt&&(V.clearStencil(Rt.stencil|0),Qt|=dt),V.clear(Qt)}function sn(pt){if("framebuffer"in pt)if(pt.framebuffer&&pt.framebuffer_reglType==="framebufferCube")for(var Rt=0;Rt<6;++Rt)Ua(e({framebuffer:pt.framebuffer.faces[Rt]},pt),Wa);else Ua(pt,Wa);else Wa(null,pt)}function ya(pt){Jr.push(pt);function Rt(){var Qt=Qn(Jr,pt);function z(){var me=Qn(Jr,z);Jr[me]=Jr[Jr.length-1],Jr.length-=1,Jr.length<=0&&aa()}Jr[Qt]=z}return St(),{cancel:Rt}}function ga(){var pt=vr.viewport,Rt=vr.scissor_box;pt[0]=pt[1]=Rt[0]=Rt[1]=0,Pe.viewportWidth=Pe.framebufferWidth=Pe.drawingBufferWidth=pt[2]=Rt[2]=V.drawingBufferWidth,Pe.viewportHeight=Pe.framebufferHeight=Pe.drawingBufferHeight=pt[3]=Rt[3]=V.drawingBufferHeight}function Ea(){Pe.tick+=1,Pe.time=Da(),ga(),hr.procs.poll()}function At(){Ie.refresh(),ga(),hr.procs.refresh(),sr&&sr.update()}function Da(){return(p()-Qr)/1e3}At();function Wt(pt,Rt){var Qt;switch(pt){case"frame":return ya(Rt);case"lost":Qt=ct;break;case"restore":Qt=mr;break;case"destroy":Qt=Cr;break;default:}return Qt.push(Rt),{cancel:function(){for(var z=0;z=0},read:fr,destroy:ln,_gl:V,_refresh:At,poll:function(){Ea(),sr&&sr.update()},now:Da,stats:He,getCachedCode:ja,preloadCachedCode:fn});return B.onDone(null,un),un}return Li})});var Lee=P((BIe,Cee)=>{"use strict";var p7e=If();Cee.exports=function(r){if(r?typeof r=="string"&&(r={container:r}):r={},Eee(r)?r={container:r}:m7e(r)?r={container:r}:y7e(r)?r={gl:r}:r=p7e(r,{container:"container target element el canvas holder parent parentNode wrapper use ref root node",gl:"gl context webgl glContext",attrs:"attributes attrs contextAttributes",pixelRatio:"pixelRatio pxRatio px ratio pxratio pixelratio",width:"w width",height:"h height"},!0),r.pixelRatio||(r.pixelRatio=window.pixelRatio||1),r.gl)return r.gl;if(r.canvas&&(r.container=r.canvas.parentNode),r.container){if(typeof r.container=="string"){var t=document.querySelector(r.container);if(!t)throw Error("Element "+r.container+" is not found");r.container=t}Eee(r.container)?(r.canvas=r.container,r.container=r.canvas.parentNode):r.canvas||(r.canvas=kee(),r.container.appendChild(r.canvas),See(r))}else if(!r.canvas)if(typeof document!="undefined")r.container=document.body||document.documentElement,r.canvas=kee(),r.container.appendChild(r.canvas),See(r);else throw Error("Not DOM environment. Use headless-gl.");return r.gl||["webgl","experimental-webgl","webgl-experimental"].some(function(a){try{r.gl=r.canvas.getContext(a,r.attrs)}catch(n){}return r.gl}),r.gl};function See(e){if(e.container)if(e.container==document.body)document.body.style.width||(e.canvas.width=e.width||e.pixelRatio*window.innerWidth),document.body.style.height||(e.canvas.height=e.height||e.pixelRatio*window.innerHeight);else{var r=e.container.getBoundingClientRect();e.canvas.width=e.width||r.right-r.left,e.canvas.height=e.height||r.bottom-r.top}}function Eee(e){return typeof e.getContext=="function"&&"width"in e&&"height"in e}function m7e(e){return typeof e.nodeName=="string"&&typeof e.appendChild=="function"&&typeof e.getBoundingClientRect=="function"}function y7e(e){return typeof e.drawArrays=="function"||typeof e.drawElements=="function"}function kee(){var e=document.createElement("canvas");return e.style.position="absolute",e.style.top=0,e.style.left=0,e}});var Fee=P((zIe,Dee)=>{"use strict";var g7e=Q7(),b7e=[32,126];Dee.exports=x7e;function x7e(e){e=e||{};var r=e.shape?e.shape:e.canvas?[e.canvas.width,e.canvas.height]:[512,512],t=e.canvas||document.createElement("canvas"),a=e.font,n=typeof e.step=="number"?[e.step,e.step]:e.step||[32,32],i=e.chars||b7e;if(a&&typeof a!="string"&&(a=g7e(a)),!Array.isArray(i))i=String(i).split("");else if(i.length===2&&typeof i[0]=="number"&&typeof i[1]=="number"){for(var o=[],l=i[0],s=0;l<=i[1];l++)o[s++]=String.fromCharCode(l);i=o}r=r.slice(),t.width=r[0],t.height=r[1];var f=t.getContext("2d");f.fillStyle="#000",f.fillRect(0,0,t.width,t.height),f.font=a,f.textAlign="center",f.textBaseline="middle",f.fillStyle="#fff";for(var u=n[0]/2,c=n[1]/2,l=0;lr[0]-n[0]/2&&(u=n[0]/2,c+=n[1]);return t}});var t9=P(oi=>{"use strict";"use restrict";var r9=32;oi.INT_BITS=r9;oi.INT_MAX=2147483647;oi.INT_MIN=-1<0)-(e<0)};oi.abs=function(e){var r=e>>r9-1;return(e^r)-r};oi.min=function(e,r){return r^(e^r)&-(e65535)<<4,e>>>=r,t=(e>255)<<3,e>>>=t,r|=t,t=(e>15)<<2,e>>>=t,r|=t,t=(e>3)<<1,e>>>=t,r|=t,r|e>>1};oi.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0};oi.popCount=function(e){return e=e-(e>>>1&1431655765),e=(e&858993459)+(e>>>2&858993459),(e+(e>>>4)&252645135)*16843009>>>24};function qee(e){var r=32;return e&=-e,e&&r--,e&65535&&(r-=16),e&16711935&&(r-=8),e&252645135&&(r-=4),e&858993459&&(r-=2),e&1431655765&&(r-=1),r}oi.countTrailingZeros=qee;oi.nextPow2=function(e){return e+=e===0,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e+1};oi.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e-(e>>>1)};oi.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,e&=15,27030>>>e&1};var fg=new Array(256);(function(e){for(var r=0;r<256;++r){var t=r,a=r,n=7;for(t>>>=1;t;t>>>=1)a<<=1,a|=t&1,--n;e[r]=a<>>8&255]<<16|fg[e>>>16&255]<<8|fg[e>>>24&255]};oi.interleave2=function(e,r){return e&=65535,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,r&=65535,r=(r|r<<8)&16711935,r=(r|r<<4)&252645135,r=(r|r<<2)&858993459,r=(r|r<<1)&1431655765,e|r<<1};oi.deinterleave2=function(e,r){return e=e>>>r&1431655765,e=(e|e>>>1)&858993459,e=(e|e>>>2)&252645135,e=(e|e>>>4)&16711935,e=(e|e>>>16)&65535,e<<16>>16};oi.interleave3=function(e,r,t){return e&=1023,e=(e|e<<16)&4278190335,e=(e|e<<8)&251719695,e=(e|e<<4)&3272356035,e=(e|e<<2)&1227133513,r&=1023,r=(r|r<<16)&4278190335,r=(r|r<<8)&251719695,r=(r|r<<4)&3272356035,r=(r|r<<2)&1227133513,e|=r<<1,t&=1023,t=(t|t<<16)&4278190335,t=(t|t<<8)&251719695,t=(t|t<<4)&3272356035,t=(t|t<<2)&1227133513,e|t<<2};oi.deinterleave3=function(e,r){return e=e>>>r&1227133513,e=(e|e>>>2)&3272356035,e=(e|e>>>4)&251719695,e=(e|e>>>8)&4278190335,e=(e|e>>>16)&1023,e<<22>>22};oi.nextCombination=function(e){var r=e|e-1;return r+1|(~r&-~r)-1>>>qee(e)+1}});var Nee=P((UIe,Pee)=>{"use strict";function Ree(e,r,t){var a=e[t]|0;if(a<=0)return[];var n=new Array(a),i;if(t===e.length-1)for(i=0;i0)return _7e(e|0,r);break;case"object":if(typeof e.length=="number")return Ree(e,r,0);break}return[]}Pee.exports=w7e});var Bee=P(B_=>{"use strict";B_.byteLength=T7e;B_.toByteArray=S7e;B_.fromByteArray=C7e;var Bf=[],os=[],A7e=typeof Uint8Array!="undefined"?Uint8Array:Array,a9="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(yh=0,Iee=a9.length;yh0)throw new Error("Invalid string. Length must be a multiple of 4");var t=e.indexOf("=");t===-1&&(t=r);var a=t===r?0:4-t%4;return[t,a]}function T7e(e){var r=Oee(e),t=r[0],a=r[1];return(t+a)*3/4-a}function M7e(e,r,t){return(r+t)*3/4-t}function S7e(e){var r,t=Oee(e),a=t[0],n=t[1],i=new A7e(M7e(e,a,n)),o=0,l=n>0?a-4:a,s;for(s=0;s>16&255,i[o++]=r>>8&255,i[o++]=r&255;return n===2&&(r=os[e.charCodeAt(s)]<<2|os[e.charCodeAt(s+1)]>>4,i[o++]=r&255),n===1&&(r=os[e.charCodeAt(s)]<<10|os[e.charCodeAt(s+1)]<<4|os[e.charCodeAt(s+2)]>>2,i[o++]=r>>8&255,i[o++]=r&255),i}function E7e(e){return Bf[e>>18&63]+Bf[e>>12&63]+Bf[e>>6&63]+Bf[e&63]}function k7e(e,r,t){for(var a,n=[],i=r;il?l:o+i));return a===1?(r=e[t-1],n.push(Bf[r>>2]+Bf[r<<4&63]+"==")):a===2&&(r=(e[t-2]<<8)+e[t-1],n.push(Bf[r>>10]+Bf[r>>4&63]+Bf[r<<2&63]+"=")),n.join("")}});var zee=P(n9=>{n9.read=function(e,r,t,a,n){var i,o,l=n*8-a-1,s=(1<>1,u=-7,c=t?n-1:0,v=t?-1:1,d=e[r+c];for(c+=v,i=d&(1<<-u)-1,d>>=-u,u+=l;u>0;i=i*256+e[r+c],c+=v,u-=8);for(o=i&(1<<-u)-1,i>>=-u,u+=a;u>0;o=o*256+e[r+c],c+=v,u-=8);if(i===0)i=1-f;else{if(i===s)return o?NaN:(d?-1:1)*(1/0);o=o+Math.pow(2,a),i=i-f}return(d?-1:1)*o*Math.pow(2,i-a)};n9.write=function(e,r,t,a,n,i){var o,l,s,f=i*8-n-1,u=(1<>1,v=n===23?Math.pow(2,-24)-Math.pow(2,-77):0,d=a?0:i-1,p=a?1:-1,y=r<0||r===0&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(l=isNaN(r)?1:0,o=u):(o=Math.floor(Math.log(r)/Math.LN2),r*(s=Math.pow(2,-o))<1&&(o--,s*=2),o+c>=1?r+=v/s:r+=v*Math.pow(2,1-c),r*s>=2&&(o++,s/=2),o+c>=u?(l=0,o=u):o+c>=1?(l=(r*s-1)*Math.pow(2,n),o=o+c):(l=r*Math.pow(2,c-1)*Math.pow(2,n),o=0));n>=8;e[t+d]=l&255,d+=p,l/=256,n-=8);for(o=o<0;e[t+d]=o&255,d+=p,o/=256,f-=8);e[t+d-p]|=y*128}});var are=P(Up=>{"use strict";var i9=Bee(),zp=zee(),Gee=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;Up.Buffer=tt;Up.SlowBuffer=P7e;Up.INSPECT_MAX_BYTES=50;var z_=2147483647;Up.kMaxLength=z_;tt.TYPED_ARRAY_SUPPORT=L7e();!tt.TYPED_ARRAY_SUPPORT&&typeof console!="undefined"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function L7e(){try{let e=new Uint8Array(1),r={foo:function(){return 42}};return Object.setPrototypeOf(r,Uint8Array.prototype),Object.setPrototypeOf(e,r),e.foo()===42}catch(e){return!1}}Object.defineProperty(tt.prototype,"parent",{enumerable:!0,get:function(){if(tt.isBuffer(this))return this.buffer}});Object.defineProperty(tt.prototype,"offset",{enumerable:!0,get:function(){if(tt.isBuffer(this))return this.byteOffset}});function Vu(e){if(e>z_)throw new RangeError('The value "'+e+'" is invalid for option "size"');let r=new Uint8Array(e);return Object.setPrototypeOf(r,tt.prototype),r}function tt(e,r,t){if(typeof e=="number"){if(typeof r=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return f9(e)}return Yee(e,r,t)}tt.poolSize=8192;function Yee(e,r,t){if(typeof e=="string")return F7e(e,r);if(ArrayBuffer.isView(e))return q7e(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(zf(e,ArrayBuffer)||e&&zf(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(zf(e,SharedArrayBuffer)||e&&zf(e.buffer,SharedArrayBuffer)))return l9(e,r,t);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let a=e.valueOf&&e.valueOf();if(a!=null&&a!==e)return tt.from(a,r,t);let n=R7e(e);if(n)return n;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return tt.from(e[Symbol.toPrimitive]("string"),r,t);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}tt.from=function(e,r,t){return Yee(e,r,t)};Object.setPrototypeOf(tt.prototype,Uint8Array.prototype);Object.setPrototypeOf(tt,Uint8Array);function Wee(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function D7e(e,r,t){return Wee(e),e<=0?Vu(e):r!==void 0?typeof t=="string"?Vu(e).fill(r,t):Vu(e).fill(r):Vu(e)}tt.alloc=function(e,r,t){return D7e(e,r,t)};function f9(e){return Wee(e),Vu(e<0?0:u9(e)|0)}tt.allocUnsafe=function(e){return f9(e)};tt.allocUnsafeSlow=function(e){return f9(e)};function F7e(e,r){if((typeof r!="string"||r==="")&&(r="utf8"),!tt.isEncoding(r))throw new TypeError("Unknown encoding: "+r);let t=jee(e,r)|0,a=Vu(t),n=a.write(e,r);return n!==t&&(a=a.slice(0,n)),a}function o9(e){let r=e.length<0?0:u9(e.length)|0,t=Vu(r);for(let a=0;a=z_)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+z_.toString(16)+" bytes");return e|0}function P7e(e){return+e!=e&&(e=0),tt.alloc(+e)}tt.isBuffer=function(r){return r!=null&&r._isBuffer===!0&&r!==tt.prototype};tt.compare=function(r,t){if(zf(r,Uint8Array)&&(r=tt.from(r,r.offset,r.byteLength)),zf(t,Uint8Array)&&(t=tt.from(t,t.offset,t.byteLength)),!tt.isBuffer(r)||!tt.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(r===t)return 0;let a=r.length,n=t.length;for(let i=0,o=Math.min(a,n);in.length?(tt.isBuffer(o)||(o=tt.from(o)),o.copy(n,i)):Uint8Array.prototype.set.call(n,o,i);else if(tt.isBuffer(o))o.copy(n,i);else throw new TypeError('"list" argument must be an Array of Buffers');i+=o.length}return n};function jee(e,r){if(tt.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||zf(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let t=e.length,a=arguments.length>2&&arguments[2]===!0;if(!a&&t===0)return 0;let n=!1;for(;;)switch(r){case"ascii":case"latin1":case"binary":return t;case"utf8":case"utf-8":return s9(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return t*2;case"hex":return t>>>1;case"base64":return tre(e).length;default:if(n)return a?-1:s9(e).length;r=(""+r).toLowerCase(),n=!0}}tt.byteLength=jee;function N7e(e,r,t){let a=!1;if((r===void 0||r<0)&&(r=0),r>this.length||((t===void 0||t>this.length)&&(t=this.length),t<=0)||(t>>>=0,r>>>=0,t<=r))return"";for(e||(e="utf8");;)switch(e){case"hex":return W7e(this,r,t);case"utf8":case"utf-8":return Zee(this,r,t);case"ascii":return V7e(this,r,t);case"latin1":case"binary":return Y7e(this,r,t);case"base64":return U7e(this,r,t);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return j7e(this,r,t);default:if(a)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),a=!0}}tt.prototype._isBuffer=!0;function gh(e,r,t){let a=e[r];e[r]=e[t],e[t]=a}tt.prototype.swap16=function(){let r=this.length;if(r%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tt&&(r+=" ... "),""};Gee&&(tt.prototype[Gee]=tt.prototype.inspect);tt.prototype.compare=function(r,t,a,n,i){if(zf(r,Uint8Array)&&(r=tt.from(r,r.offset,r.byteLength)),!tt.isBuffer(r))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof r);if(t===void 0&&(t=0),a===void 0&&(a=r?r.length:0),n===void 0&&(n=0),i===void 0&&(i=this.length),t<0||a>r.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=a)return 0;if(n>=i)return-1;if(t>=a)return 1;if(t>>>=0,a>>>=0,n>>>=0,i>>>=0,this===r)return 0;let o=i-n,l=a-t,s=Math.min(o,l),f=this.slice(n,i),u=r.slice(t,a);for(let c=0;c2147483647?t=2147483647:t<-2147483648&&(t=-2147483648),t=+t,v9(t)&&(t=n?0:e.length-1),t<0&&(t=e.length+t),t>=e.length){if(n)return-1;t=e.length-1}else if(t<0)if(n)t=0;else return-1;if(typeof r=="string"&&(r=tt.from(r,a)),tt.isBuffer(r))return r.length===0?-1:Uee(e,r,t,a,n);if(typeof r=="number")return r=r&255,typeof Uint8Array.prototype.indexOf=="function"?n?Uint8Array.prototype.indexOf.call(e,r,t):Uint8Array.prototype.lastIndexOf.call(e,r,t):Uee(e,[r],t,a,n);throw new TypeError("val must be string, number or Buffer")}function Uee(e,r,t,a,n){let i=1,o=e.length,l=r.length;if(a!==void 0&&(a=String(a).toLowerCase(),a==="ucs2"||a==="ucs-2"||a==="utf16le"||a==="utf-16le")){if(e.length<2||r.length<2)return-1;i=2,o/=2,l/=2,t/=2}function s(u,c){return i===1?u[c]:u.readUInt16BE(c*i)}let f;if(n){let u=-1;for(f=t;fo&&(t=o-l),f=t;f>=0;f--){let u=!0;for(let c=0;cn&&(a=n)):a=n;let i=r.length;a>i/2&&(a=i/2);let o;for(o=0;o>>0,isFinite(a)?(a=a>>>0,n===void 0&&(n="utf8")):(n=a,a=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let i=this.length-t;if((a===void 0||a>i)&&(a=i),r.length>0&&(a<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return I7e(this,r,t,a);case"utf8":case"utf-8":return O7e(this,r,t,a);case"ascii":case"latin1":case"binary":return B7e(this,r,t,a);case"base64":return z7e(this,r,t,a);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return G7e(this,r,t,a);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}};tt.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function U7e(e,r,t){return r===0&&t===e.length?i9.fromByteArray(e):i9.fromByteArray(e.slice(r,t))}function Zee(e,r,t){t=Math.min(e.length,t);let a=[],n=r;for(;n239?4:i>223?3:i>191?2:1;if(n+l<=t){let s,f,u,c;switch(l){case 1:i<128&&(o=i);break;case 2:s=e[n+1],(s&192)===128&&(c=(i&31)<<6|s&63,c>127&&(o=c));break;case 3:s=e[n+1],f=e[n+2],(s&192)===128&&(f&192)===128&&(c=(i&15)<<12|(s&63)<<6|f&63,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:s=e[n+1],f=e[n+2],u=e[n+3],(s&192)===128&&(f&192)===128&&(u&192)===128&&(c=(i&15)<<18|(s&63)<<12|(f&63)<<6|u&63,c>65535&&c<1114112&&(o=c))}}o===null?(o=65533,l=1):o>65535&&(o-=65536,a.push(o>>>10&1023|55296),o=56320|o&1023),a.push(o),n+=l}return H7e(a)}var Hee=4096;function H7e(e){let r=e.length;if(r<=Hee)return String.fromCharCode.apply(String,e);let t="",a=0;for(;aa)&&(t=a);let n="";for(let i=r;ia&&(r=a),t<0?(t+=a,t<0&&(t=0)):t>a&&(t=a),tt)throw new RangeError("Trying to access beyond buffer length")}tt.prototype.readUintLE=tt.prototype.readUIntLE=function(r,t,a){r=r>>>0,t=t>>>0,a||Wi(r,t,this.length);let n=this[r],i=1,o=0;for(;++o>>0,t=t>>>0,a||Wi(r,t,this.length);let n=this[r+--t],i=1;for(;t>0&&(i*=256);)n+=this[r+--t]*i;return n};tt.prototype.readUint8=tt.prototype.readUInt8=function(r,t){return r=r>>>0,t||Wi(r,1,this.length),this[r]};tt.prototype.readUint16LE=tt.prototype.readUInt16LE=function(r,t){return r=r>>>0,t||Wi(r,2,this.length),this[r]|this[r+1]<<8};tt.prototype.readUint16BE=tt.prototype.readUInt16BE=function(r,t){return r=r>>>0,t||Wi(r,2,this.length),this[r]<<8|this[r+1]};tt.prototype.readUint32LE=tt.prototype.readUInt32LE=function(r,t){return r=r>>>0,t||Wi(r,4,this.length),(this[r]|this[r+1]<<8|this[r+2]<<16)+this[r+3]*16777216};tt.prototype.readUint32BE=tt.prototype.readUInt32BE=function(r,t){return r=r>>>0,t||Wi(r,4,this.length),this[r]*16777216+(this[r+1]<<16|this[r+2]<<8|this[r+3])};tt.prototype.readBigUInt64LE=gv(function(r){r=r>>>0,Gp(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&ug(r,this.length-8);let n=t+this[++r]*2**8+this[++r]*2**16+this[++r]*2**24,i=this[++r]+this[++r]*2**8+this[++r]*2**16+a*2**24;return BigInt(n)+(BigInt(i)<>>0,Gp(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&ug(r,this.length-8);let n=t*2**24+this[++r]*2**16+this[++r]*2**8+this[++r],i=this[++r]*2**24+this[++r]*2**16+this[++r]*2**8+a;return(BigInt(n)<>>0,t=t>>>0,a||Wi(r,t,this.length);let n=this[r],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n};tt.prototype.readIntBE=function(r,t,a){r=r>>>0,t=t>>>0,a||Wi(r,t,this.length);let n=t,i=1,o=this[r+--n];for(;n>0&&(i*=256);)o+=this[r+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o};tt.prototype.readInt8=function(r,t){return r=r>>>0,t||Wi(r,1,this.length),this[r]&128?(255-this[r]+1)*-1:this[r]};tt.prototype.readInt16LE=function(r,t){r=r>>>0,t||Wi(r,2,this.length);let a=this[r]|this[r+1]<<8;return a&32768?a|4294901760:a};tt.prototype.readInt16BE=function(r,t){r=r>>>0,t||Wi(r,2,this.length);let a=this[r+1]|this[r]<<8;return a&32768?a|4294901760:a};tt.prototype.readInt32LE=function(r,t){return r=r>>>0,t||Wi(r,4,this.length),this[r]|this[r+1]<<8|this[r+2]<<16|this[r+3]<<24};tt.prototype.readInt32BE=function(r,t){return r=r>>>0,t||Wi(r,4,this.length),this[r]<<24|this[r+1]<<16|this[r+2]<<8|this[r+3]};tt.prototype.readBigInt64LE=gv(function(r){r=r>>>0,Gp(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&ug(r,this.length-8);let n=this[r+4]+this[r+5]*2**8+this[r+6]*2**16+(a<<24);return(BigInt(n)<>>0,Gp(r,"offset");let t=this[r],a=this[r+7];(t===void 0||a===void 0)&&ug(r,this.length-8);let n=(t<<24)+this[++r]*2**16+this[++r]*2**8+this[++r];return(BigInt(n)<>>0,t||Wi(r,4,this.length),zp.read(this,r,!0,23,4)};tt.prototype.readFloatBE=function(r,t){return r=r>>>0,t||Wi(r,4,this.length),zp.read(this,r,!1,23,4)};tt.prototype.readDoubleLE=function(r,t){return r=r>>>0,t||Wi(r,8,this.length),zp.read(this,r,!0,52,8)};tt.prototype.readDoubleBE=function(r,t){return r=r>>>0,t||Wi(r,8,this.length),zp.read(this,r,!1,52,8)};function nl(e,r,t,a,n,i){if(!tt.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(r>n||re.length)throw new RangeError("Index out of range")}tt.prototype.writeUintLE=tt.prototype.writeUIntLE=function(r,t,a,n){if(r=+r,t=t>>>0,a=a>>>0,!n){let l=Math.pow(2,8*a)-1;nl(this,r,t,a,l,0)}let i=1,o=0;for(this[t]=r&255;++o>>0,a=a>>>0,!n){let l=Math.pow(2,8*a)-1;nl(this,r,t,a,l,0)}let i=a-1,o=1;for(this[t+i]=r&255;--i>=0&&(o*=256);)this[t+i]=r/o&255;return t+a};tt.prototype.writeUint8=tt.prototype.writeUInt8=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,1,255,0),this[t]=r&255,t+1};tt.prototype.writeUint16LE=tt.prototype.writeUInt16LE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,2,65535,0),this[t]=r&255,this[t+1]=r>>>8,t+2};tt.prototype.writeUint16BE=tt.prototype.writeUInt16BE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,2,65535,0),this[t]=r>>>8,this[t+1]=r&255,t+2};tt.prototype.writeUint32LE=tt.prototype.writeUInt32LE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,4,4294967295,0),this[t+3]=r>>>24,this[t+2]=r>>>16,this[t+1]=r>>>8,this[t]=r&255,t+4};tt.prototype.writeUint32BE=tt.prototype.writeUInt32BE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,4,4294967295,0),this[t]=r>>>24,this[t+1]=r>>>16,this[t+2]=r>>>8,this[t+3]=r&255,t+4};function Jee(e,r,t,a,n){rre(r,a,n,e,t,7);let i=Number(r&BigInt(4294967295));e[t++]=i,i=i>>8,e[t++]=i,i=i>>8,e[t++]=i,i=i>>8,e[t++]=i;let o=Number(r>>BigInt(32)&BigInt(4294967295));return e[t++]=o,o=o>>8,e[t++]=o,o=o>>8,e[t++]=o,o=o>>8,e[t++]=o,t}function $ee(e,r,t,a,n){rre(r,a,n,e,t,7);let i=Number(r&BigInt(4294967295));e[t+7]=i,i=i>>8,e[t+6]=i,i=i>>8,e[t+5]=i,i=i>>8,e[t+4]=i;let o=Number(r>>BigInt(32)&BigInt(4294967295));return e[t+3]=o,o=o>>8,e[t+2]=o,o=o>>8,e[t+1]=o,o=o>>8,e[t]=o,t+8}tt.prototype.writeBigUInt64LE=gv(function(r,t=0){return Jee(this,r,t,BigInt(0),BigInt("0xffffffffffffffff"))});tt.prototype.writeBigUInt64BE=gv(function(r,t=0){return $ee(this,r,t,BigInt(0),BigInt("0xffffffffffffffff"))});tt.prototype.writeIntLE=function(r,t,a,n){if(r=+r,t=t>>>0,!n){let s=Math.pow(2,8*a-1);nl(this,r,t,a,s-1,-s)}let i=0,o=1,l=0;for(this[t]=r&255;++i>0)-l&255;return t+a};tt.prototype.writeIntBE=function(r,t,a,n){if(r=+r,t=t>>>0,!n){let s=Math.pow(2,8*a-1);nl(this,r,t,a,s-1,-s)}let i=a-1,o=1,l=0;for(this[t+i]=r&255;--i>=0&&(o*=256);)r<0&&l===0&&this[t+i+1]!==0&&(l=1),this[t+i]=(r/o>>0)-l&255;return t+a};tt.prototype.writeInt8=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,1,127,-128),r<0&&(r=255+r+1),this[t]=r&255,t+1};tt.prototype.writeInt16LE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,2,32767,-32768),this[t]=r&255,this[t+1]=r>>>8,t+2};tt.prototype.writeInt16BE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,2,32767,-32768),this[t]=r>>>8,this[t+1]=r&255,t+2};tt.prototype.writeInt32LE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,4,2147483647,-2147483648),this[t]=r&255,this[t+1]=r>>>8,this[t+2]=r>>>16,this[t+3]=r>>>24,t+4};tt.prototype.writeInt32BE=function(r,t,a){return r=+r,t=t>>>0,a||nl(this,r,t,4,2147483647,-2147483648),r<0&&(r=4294967295+r+1),this[t]=r>>>24,this[t+1]=r>>>16,this[t+2]=r>>>8,this[t+3]=r&255,t+4};tt.prototype.writeBigInt64LE=gv(function(r,t=0){return Jee(this,r,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});tt.prototype.writeBigInt64BE=gv(function(r,t=0){return $ee(this,r,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Qee(e,r,t,a,n,i){if(t+a>e.length)throw new RangeError("Index out of range");if(t<0)throw new RangeError("Index out of range")}function Kee(e,r,t,a,n){return r=+r,t=t>>>0,n||Qee(e,r,t,4,34028234663852886e22,-34028234663852886e22),zp.write(e,r,t,a,23,4),t+4}tt.prototype.writeFloatLE=function(r,t,a){return Kee(this,r,t,!0,a)};tt.prototype.writeFloatBE=function(r,t,a){return Kee(this,r,t,!1,a)};function ere(e,r,t,a,n){return r=+r,t=t>>>0,n||Qee(e,r,t,8,17976931348623157e292,-17976931348623157e292),zp.write(e,r,t,a,52,8),t+8}tt.prototype.writeDoubleLE=function(r,t,a){return ere(this,r,t,!0,a)};tt.prototype.writeDoubleBE=function(r,t,a){return ere(this,r,t,!1,a)};tt.prototype.copy=function(r,t,a,n){if(!tt.isBuffer(r))throw new TypeError("argument should be a Buffer");if(a||(a=0),!n&&n!==0&&(n=this.length),t>=r.length&&(t=r.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),r.length-t>>0,a=a===void 0?this.length:a>>>0,r||(r=0);let i;if(typeof r=="number")for(i=t;i2**32?n=Vee(String(t)):typeof t=="bigint"&&(n=String(t),(t>BigInt(2)**BigInt(32)||t<-(BigInt(2)**BigInt(32)))&&(n=Vee(n)),n+="n"),a+=` It must be ${r}. Received ${n}`,a},RangeError);function Vee(e){let r="",t=e.length,a=e[0]==="-"?1:0;for(;t>=a+4;t-=3)r=`_${e.slice(t-3,t)}${r}`;return`${e.slice(0,t)}${r}`}function X7e(e,r,t){Gp(r,"offset"),(e[r]===void 0||e[r+t]===void 0)&&ug(r,e.length-(t+1))}function rre(e,r,t,a,n,i){if(e>t||e3?r===0||r===BigInt(0)?l=`>= 0${o} and < 2${o} ** ${(i+1)*8}${o}`:l=`>= -(2${o} ** ${(i+1)*8-1}${o}) and < 2 ** ${(i+1)*8-1}${o}`:l=`>= ${r}${o} and <= ${t}${o}`,new Bp.ERR_OUT_OF_RANGE("value",l,e)}X7e(a,n,i)}function Gp(e,r){if(typeof e!="number")throw new Bp.ERR_INVALID_ARG_TYPE(r,"number",e)}function ug(e,r,t){throw Math.floor(e)!==e?(Gp(e,t),new Bp.ERR_OUT_OF_RANGE(t||"offset","an integer",e)):r<0?new Bp.ERR_BUFFER_OUT_OF_BOUNDS:new Bp.ERR_OUT_OF_RANGE(t||"offset",`>= ${t?1:0} and <= ${r}`,e)}var Z7e=/[^+/0-9A-Za-z-_]/g;function J7e(e){if(e=e.split("=")[0],e=e.trim().replace(Z7e,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function s9(e,r){r=r||1/0;let t,a=e.length,n=null,i=[];for(let o=0;o55295&&t<57344){if(!n){if(t>56319){(r-=3)>-1&&i.push(239,191,189);continue}else if(o+1===a){(r-=3)>-1&&i.push(239,191,189);continue}n=t;continue}if(t<56320){(r-=3)>-1&&i.push(239,191,189),n=t;continue}t=(n-55296<<10|t-56320)+65536}else n&&(r-=3)>-1&&i.push(239,191,189);if(n=null,t<128){if((r-=1)<0)break;i.push(t)}else if(t<2048){if((r-=2)<0)break;i.push(t>>6|192,t&63|128)}else if(t<65536){if((r-=3)<0)break;i.push(t>>12|224,t>>6&63|128,t&63|128)}else if(t<1114112){if((r-=4)<0)break;i.push(t>>18|240,t>>12&63|128,t>>6&63|128,t&63|128)}else throw new Error("Invalid code point")}return i}function $7e(e){let r=[];for(let t=0;t>8,n=t%256,i.push(n),i.push(a);return i}function tre(e){return i9.toByteArray(J7e(e))}function G_(e,r,t,a){let n;for(n=0;n=r.length||n>=e.length);++n)r[n+t]=e[n];return n}function zf(e,r){return e instanceof r||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===r.name}function v9(e){return e!==e}var K7e=function(){let e="0123456789abcdef",r=new Array(256);for(let t=0;t<16;++t){let a=t*16;for(let n=0;n<16;++n)r[a+n]=e[t]+e[n]}return r}();function gv(e){return typeof BigInt=="undefined"?e9e:e}function e9e(){throw new Error("BigInt not supported")}});var gre=P(Na=>{"use strict";var bv=t9(),io=Nee(),nre=are().Buffer;window.__TYPEDARRAY_POOL||(window.__TYPEDARRAY_POOL={UINT8:io([32,0]),UINT16:io([32,0]),UINT32:io([32,0]),BIGUINT64:io([32,0]),INT8:io([32,0]),INT16:io([32,0]),INT32:io([32,0]),BIGINT64:io([32,0]),FLOAT:io([32,0]),DOUBLE:io([32,0]),DATA:io([32,0]),UINT8C:io([32,0]),BUFFER:io([32,0])});var r9e=typeof Uint8ClampedArray!="undefined",t9e=typeof BigUint64Array!="undefined",a9e=typeof BigInt64Array!="undefined",vi=window.__TYPEDARRAY_POOL;vi.UINT8C||(vi.UINT8C=io([32,0]));vi.BIGUINT64||(vi.BIGUINT64=io([32,0]));vi.BIGINT64||(vi.BIGINT64=io([32,0]));vi.BUFFER||(vi.BUFFER=io([32,0]));var U_=vi.DATA,H_=vi.BUFFER;Na.free=function(r){if(nre.isBuffer(r))H_[bv.log2(r.length)].push(r);else{if(Object.prototype.toString.call(r)!=="[object ArrayBuffer]"&&(r=r.buffer),!r)return;var t=r.length||r.byteLength,a=bv.log2(t)|0;U_[a].push(r)}};function ire(e){if(e){var r=e.length||e.byteLength,t=bv.log2(r);U_[t].push(e)}}function n9e(e){ire(e.buffer)}Na.freeUint8=Na.freeUint16=Na.freeUint32=Na.freeBigUint64=Na.freeInt8=Na.freeInt16=Na.freeInt32=Na.freeBigInt64=Na.freeFloat32=Na.freeFloat=Na.freeFloat64=Na.freeDouble=Na.freeUint8Clamped=Na.freeDataView=n9e;Na.freeArrayBuffer=ire;Na.freeBuffer=function(r){H_[bv.log2(r.length)].push(r)};Na.malloc=function(r,t){if(t===void 0||t==="arraybuffer")return il(r);switch(t){case"uint8":return h9(r);case"uint16":return ore(r);case"uint32":return lre(r);case"int8":return sre(r);case"int16":return fre(r);case"int32":return ure(r);case"float":case"float32":return cre(r);case"double":case"float64":return vre(r);case"uint8_clamped":return hre(r);case"bigint64":return pre(r);case"biguint64":return dre(r);case"buffer":return yre(r);case"data":case"dataview":return mre(r);default:return null}return null};function il(r){var r=bv.nextPow2(r),t=bv.log2(r),a=U_[t];return a.length>0?a.pop():new ArrayBuffer(r)}Na.mallocArrayBuffer=il;function h9(e){return new Uint8Array(il(e),0,e)}Na.mallocUint8=h9;function ore(e){return new Uint16Array(il(2*e),0,e)}Na.mallocUint16=ore;function lre(e){return new Uint32Array(il(4*e),0,e)}Na.mallocUint32=lre;function sre(e){return new Int8Array(il(e),0,e)}Na.mallocInt8=sre;function fre(e){return new Int16Array(il(2*e),0,e)}Na.mallocInt16=fre;function ure(e){return new Int32Array(il(4*e),0,e)}Na.mallocInt32=ure;function cre(e){return new Float32Array(il(4*e),0,e)}Na.mallocFloat32=Na.mallocFloat=cre;function vre(e){return new Float64Array(il(8*e),0,e)}Na.mallocFloat64=Na.mallocDouble=vre;function hre(e){return r9e?new Uint8ClampedArray(il(e),0,e):h9(e)}Na.mallocUint8Clamped=hre;function dre(e){return t9e?new BigUint64Array(il(8*e),0,e):null}Na.mallocBigUint64=dre;function pre(e){return a9e?new BigInt64Array(il(8*e),0,e):null}Na.mallocBigInt64=pre;function mre(e){return new DataView(il(e),0,e)}Na.mallocDataView=mre;function yre(e){e=bv.nextPow2(e);var r=bv.log2(e),t=H_[r];return t.length>0?t.pop():new nre(e)}Na.mallocBuffer=yre;Na.clearCache=function(){for(var r=0;r<32;++r)vi.UINT8[r].length=0,vi.UINT16[r].length=0,vi.UINT32[r].length=0,vi.INT8[r].length=0,vi.INT16[r].length=0,vi.INT32[r].length=0,vi.FLOAT[r].length=0,vi.DOUBLE[r].length=0,vi.BIGUINT64[r].length=0,vi.BIGINT64[r].length=0,vi.UINT8C[r].length=0,U_[r].length=0,H_[r].length=0}});var xre=P((XIe,bre)=>{"use strict";var i9e=Object.prototype.toString;bre.exports=function(e){var r;return i9e.call(e)==="[object Object]"&&(r=Object.getPrototypeOf(e),r===null||r===Object.getPrototypeOf({}))}});var d9=P((ZIe,_re)=>{_re.exports=function(r,t){t||(t=[0,""]),r=String(r);var a=parseFloat(r,10);return t[0]=a,t[1]=r.match(/[\d.\-\+]*\s*(.*)/)[1]||"",t}});var Tre=P((JIe,Are)=>{"use strict";var o9e=d9();Are.exports=wre;var cg=96;function p9(e,r){var t=o9e(getComputedStyle(e).getPropertyValue(r));return t[0]*wre(t[1],e)}function l9e(e,r){var t=document.createElement("div");t.style["font-size"]="128"+e,r.appendChild(t);var a=p9(t,"font-size")/128;return r.removeChild(t),a}function wre(e,r){switch(r=r||document.body,e=(e||"px").trim().toLowerCase(),(r===window||r===document)&&(r=document.body),e){case"%":return r.clientHeight/100;case"ch":case"ex":return l9e(e,r);case"em":return p9(r,"font-size");case"rem":return p9(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return cg;case"cm":return cg/2.54;case"mm":return cg/25.4;case"pt":return cg/72;case"pc":return cg/6}return 1}});var Ere=P(($Ie,Sre)=>{"use strict";Sre.exports=W_;var s9e=W_.canvas=document.createElement("canvas"),V_=s9e.getContext("2d"),Mre=Y_([32,126]);W_.createPairs=Y_;W_.ascii=Mre;function W_(e,r){Array.isArray(e)&&(e=e.join(", "));var t={},a,n=16,i=.05;r&&(r.length===2&&typeof r[0]=="number"?a=Y_(r):Array.isArray(r)?a=r:(r.o?a=Y_(r.o):r.pairs&&(a=r.pairs),r.fontSize&&(n=r.fontSize),r.threshold!=null&&(i=r.threshold))),a||(a=Mre),V_.font=n+"px "+e;for(var o=0;on*i){var u=(f-s)/n;t[l]=u*1e3}}return t}function Y_(e){for(var r=[],t=e[0];t<=e[1];t++)for(var a=String.fromCharCode(t),n=e[0];n{"use strict";Lre.exports=xv;xv.canvas=document.createElement("canvas");xv.cache={};function xv(o,r){r||(r={}),(typeof o=="string"||Array.isArray(o))&&(r.family=o);var t=Array.isArray(r.family)?r.family.join(", "):r.family;if(!t)throw Error("`family` must be defined");var a=r.size||r.fontSize||r.em||48,n=r.weight||r.fontWeight||"",i=r.style||r.fontStyle||"",o=[i,n,a].join(" ")+"px "+t,l=r.origin||"top";if(xv.cache[t]&&a<=xv.cache[t].em)return kre(xv.cache[t],l);var s=r.canvas||xv.canvas,f=s.getContext("2d"),u={upper:r.upper!==void 0?r.upper:"H",lower:r.lower!==void 0?r.lower:"x",descent:r.descent!==void 0?r.descent:"p",ascent:r.ascent!==void 0?r.ascent:"h",tittle:r.tittle!==void 0?r.tittle:"i",overshoot:r.overshoot!==void 0?r.overshoot:"O"},c=Math.ceil(a*1.5);s.height=c,s.width=c*.5,f.font=o;var v="H",d={top:0};f.clearRect(0,0,c,c),f.textBaseline="top",f.fillStyle="black",f.fillText(v,0,0);var p=Gf(f.getImageData(0,0,c,c));f.clearRect(0,0,c,c),f.textBaseline="bottom",f.fillText(v,0,c);var y=Gf(f.getImageData(0,0,c,c));d.lineHeight=d.bottom=c-y+p,f.clearRect(0,0,c,c),f.textBaseline="alphabetic",f.fillText(v,0,c);var m=Gf(f.getImageData(0,0,c,c)),b=c-m-1+p;d.baseline=d.alphabetic=b,f.clearRect(0,0,c,c),f.textBaseline="middle",f.fillText(v,0,c*.5);var A=Gf(f.getImageData(0,0,c,c));d.median=d.middle=c-A-1+p-c*.5,f.clearRect(0,0,c,c),f.textBaseline="hanging",f.fillText(v,0,c*.5);var _=Gf(f.getImageData(0,0,c,c));d.hanging=c-_-1+p-c*.5,f.clearRect(0,0,c,c),f.textBaseline="ideographic",f.fillText(v,0,c);var x=Gf(f.getImageData(0,0,c,c));if(d.ideographic=c-x-1+p,u.upper&&(f.clearRect(0,0,c,c),f.textBaseline="top",f.fillText(u.upper,0,0),d.upper=Gf(f.getImageData(0,0,c,c)),d.capHeight=d.baseline-d.upper),u.lower&&(f.clearRect(0,0,c,c),f.textBaseline="top",f.fillText(u.lower,0,0),d.lower=Gf(f.getImageData(0,0,c,c)),d.xHeight=d.baseline-d.lower),u.tittle&&(f.clearRect(0,0,c,c),f.textBaseline="top",f.fillText(u.tittle,0,0),d.tittle=Gf(f.getImageData(0,0,c,c))),u.ascent&&(f.clearRect(0,0,c,c),f.textBaseline="top",f.fillText(u.ascent,0,0),d.ascent=Gf(f.getImageData(0,0,c,c))),u.descent&&(f.clearRect(0,0,c,c),f.textBaseline="top",f.fillText(u.descent,0,0),d.descent=Cre(f.getImageData(0,0,c,c))),u.overshoot){f.clearRect(0,0,c,c),f.textBaseline="top",f.fillText(u.overshoot,0,0);var T=Cre(f.getImageData(0,0,c,c));d.overshoot=T-b}for(var E in d)d[E]/=a;return d.em=a,xv.cache[t]=d,kre(d,l)}function kre(e,r){var t={};typeof r=="string"&&(r=e[r]);for(var a in e)a!=="em"&&(t[a]=e[a]-r);return t}function Gf(e){for(var r=e.height,t=e.data,a=3;a0;a-=4)if(t[a]!==0)return Math.floor((a-3)*.25/r)}});var Pre=P((KIe,Rre)=>{"use strict";var Hp=Tee(),f9e=If(),u9e=Mee(),c9e=Lee(),v9e=O7(),m9=ch(),h9e=Fee(),_v=gre(),d9e=hp(),p9e=xre(),m9e=d9(),y9e=Tre(),g9e=Ere(),b9e=ni(),x9e=Dre(),_9e=nh(),w9e=t9(),Fre=w9e.nextPow2,qre=new v9e,X_=!1;document.body&&(j_=document.body.appendChild(document.createElement("div")),j_.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(j_).fontStretch&&(X_=!0),document.body.removeChild(j_));var j_,Ja=function(r){A9e(r)?(r={regl:r},this.gl=r.regl._gl):this.gl=c9e(r),this.shader=qre.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=r.regl||u9e({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),qre.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(p9e(r)?r:{})};Ja.prototype.createShader=function(){var r=this.regl,t=r({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:r.prop("count"),offset:r.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:r.this("sizeBuffer")},width:{offset:0,stride:8,buffer:r.this("sizeBuffer")},char:r.this("charBuffer"),position:r.this("position")},uniforms:{atlasSize:function(n,i){return[i.atlas.width,i.atlas.height]},atlasDim:function(n,i){return[i.atlas.cols,i.atlas.rows]},atlas:function(n,i){return i.atlas.texture},charStep:function(n,i){return i.atlas.step},em:function(n,i){return i.atlas.em},color:r.prop("color"),opacity:r.prop("opacity"),viewport:r.this("viewportArray"),scale:r.this("scale"),align:r.prop("align"),baseline:r.prop("baseline"),translate:r.this("translate"),positionOffset:r.prop("positionOffset")},primitive:"points",viewport:r.this("viewport"),vert:` precision highp float; attribute float width, charOffset, char; attribute vec2 position; @@ -783,12 +783,12 @@ void main() { // color.rgb += (1. - color.rgb) * (1. - mask.rgb); gl_FragColor = color; - }`}),a={};return{regl:r,draw:t,atlas:a}};Ja.prototype.update=function(r){var t=this;if(typeof r=="string")r={text:r};else if(!r)return;r=f9e(r,{position:"position positions coord coords coordinates",font:"font fontFace fontface typeface cssFont css-font family fontFamily",fontSize:"fontSize fontsize size font-size",text:"text texts chars characters value values symbols",align:"align alignment textAlign textbaseline",baseline:"baseline textBaseline textbaseline",direction:"dir direction textDirection",color:"color colour fill fill-color fillColor textColor textcolor",kerning:"kerning kern",range:"range dataBox",viewport:"vp viewport viewBox viewbox viewPort",opacity:"opacity alpha transparency visible visibility opaque",offset:"offset positionOffset padding shift indent indentation"},!0),r.opacity!=null&&(Array.isArray(r.opacity)?this.opacity=r.opacity.map(function(Ee){return parseFloat(Ee)}):this.opacity=parseFloat(r.opacity)),r.viewport!=null&&(this.viewport=d9e(r.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),this.viewport==null&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),r.kerning!=null&&(this.kerning=r.kerning),r.offset!=null&&(typeof r.offset=="number"&&(r.offset=[r.offset,0]),this.positionOffset=_9e(r.offset)),r.direction&&(this.direction=r.direction),r.range&&(this.range=r.range,this.scale=[1/(r.range[2]-r.range[0]),1/(r.range[3]-r.range[1])],this.translate=[-r.range[0],-r.range[1]]),r.scale&&(this.scale=r.scale),r.translate&&(this.translate=r.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),!this.font.length&&!r.font&&(r.font=Ja.baseFontSize+"px sans-serif");var a=!1,n=!1;if(r.font&&(Array.isArray(r.font)?r.font:[r.font]).forEach(function(Ee,Xe){if(typeof Ee=="string")try{Ee=Hp.parse(Ee)}catch(je){Ee=Hp.parse(Ja.baseFontSize+"px "+Ee)}else{var Ae=Ee.style,rr=Ee.weight,ze=Ee.stretch,We=Ee.variant;Ee=Hp.parse(Hp.stringify(Ee)),Ae&&(Ee.style=Ae),rr&&(Ee.weight=rr),ze&&(Ee.stretch=ze),We&&(Ee.variant=We)}var $e=Hp.stringify({size:Ja.baseFontSize,family:Ee.family,stretch:j_?Ee.stretch:void 0,variant:Ee.variant,weight:Ee.weight,style:Ee.style}),Ue=m9e(Ee.size),ee=Math.round(Ue[0]*y9e(Ue[1]));if(ee!==t.fontSize[Xe]&&(n=!0,t.fontSize[Xe]=ee),(!t.font[Xe]||$e!=t.font[Xe].baseString)&&(a=!0,t.font[Xe]=Ja.fonts[$e],!t.font[Xe])){var de=Ee.family.join(", "),ae=[Ee.style];Ee.style!=Ee.variant&&ae.push(Ee.variant),Ee.variant!=Ee.weight&&ae.push(Ee.weight),j_&&Ee.weight!=Ee.stretch&&ae.push(Ee.stretch),t.font[Xe]={baseString:$e,family:de,weight:Ee.weight,stretch:Ee.stretch,style:Ee.style,variant:Ee.variant,width:{},kerning:{},metrics:x9e(de,{origin:"top",fontSize:Ja.baseFontSize,fontStyle:ae.join(" ")})},Ja.fonts[$e]=t.font[Xe]}}),(a||n)&&this.font.forEach(function(Ee,Xe){var Ae=Hp.stringify({size:t.fontSize[Xe],family:Ee.family,stretch:j_?Ee.stretch:void 0,variant:Ee.variant,weight:Ee.weight,style:Ee.style});if(t.fontAtlas[Xe]=t.shader.atlas[Ae],!t.fontAtlas[Xe]){var rr=Ee.metrics;t.shader.atlas[Ae]=t.fontAtlas[Xe]={fontString:Ae,step:Math.ceil(t.fontSize[Xe]*rr.bottom*.5)*2,em:t.fontSize[Xe],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:t.regl.texture()}}r.text==null&&(r.text=t.text)}),typeof r.text=="string"&&r.position&&r.position.length>2){for(var i=Array(r.position.length*.5),o=0;o2){for(var f=!r.position[0].length,u=_v.mallocFloat(this.count*2),c=0,v=0;c1?t.align[Xe]:t.align[0]:t.align;if(typeof Ae=="number")return Ae;switch(Ae){case"right":case"end":return-Ee;case"center":case"centre":case"middle":return-Ee*.5}return 0})),this.baseline==null&&r.baseline==null&&(r.baseline=0),r.baseline!=null&&(this.baseline=r.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map(function(Ee,Xe){var Ae=(t.font[Xe]||t.font[0]).metrics,rr=0;return rr+=Ae.bottom*.5,typeof Ee=="number"?rr+=Ee-Ae.baseline:rr+=-Ae[Ee],rr*=-1,rr})),r.color!=null)if(r.color||(r.color="transparent"),typeof r.color=="string"||!isNaN(r.color))this.color=m9(r.color,"uint8");else{var oe;if(typeof r.color[0]=="number"&&r.color.length>this.counts.length){var te=r.color.length;oe=_v.mallocUint8(te);for(var Q=(r.color.subarray||r.color.slice).bind(r.color),Z=0;Z4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2;if(ce){var De=Math.max(this.position.length*.5||0,this.color.length*.25||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,this.positionOffset.length*.5||0);this.batch=Array(De);for(var Be=0;Be1?this.counts[Be]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[Be]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(Be*4,Be*4+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[Be]:this.opacity,baseline:this.baselineOffset[Be]!=null?this.baselineOffset[Be]:this.baselineOffset[0],align:this.align?this.alignOffset[Be]!=null?this.alignOffset[Be]:this.alignOffset[0]:0,atlas:this.fontAtlas[Be]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(Be*2,Be*2+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]}};Ja.prototype.destroy=function(){};Ja.prototype.kerning=!0;Ja.prototype.position={constant:new Float32Array(2)};Ja.prototype.translate=null;Ja.prototype.scale=null;Ja.prototype.font=null;Ja.prototype.text="";Ja.prototype.positionOffset=[0,0];Ja.prototype.opacity=1;Ja.prototype.color=new Uint8Array([0,0,0,255]);Ja.prototype.alignOffset=[0,0];Ja.maxAtlasSize=1024;Ja.atlasCanvas=document.createElement("canvas");Ja.atlasContext=Ja.atlasCanvas.getContext("2d",{alpha:!1});Ja.baseFontSize=64;Ja.fonts={};function A9e(e){return typeof e=="function"&&e._gl&&e.prop&&e.texture&&e.buffer}Rre.exports=Ja});var Ore=P((eOe,Ire)=>{"use strict";var Nre=ha(),T9e=function(){};Ire.exports=function(r){for(var t in r)typeof r[t]=="function"&&(r[t]=T9e);r.destroy=function(){r.container.parentNode.removeChild(r.container)};var a=document.createElement("div");a.className="no-webgl",a.style.cursor="pointer",a.style.fontSize="24px",a.style.color=Nre.defaults[0],a.style.position="absolute",a.style.left=a.style.top="0px",a.style.width=a.style.height="100%",a.style["background-color"]=Nre.lightLine,a.style["z-index"]=30;var n=document.createElement("p");return n.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",n.style.position="relative",n.style.top="50%",n.style.left="50%",n.style.height="30%",n.style.width="50%",n.style.margin="-15% 0 0 -25%",a.appendChild(n),r.container.appendChild(a),r.container.style.background="#FFFFFF",r.container.onclick=function(){window.open("https://get.webgl.org")},!1}});var Bre=P((y9,g9)=>{(function(e,r){typeof y9=="object"&&typeof g9!="undefined"?g9.exports=r():e.createREGL=r()})(y9,function(){"use strict";var e=function(S,B){for(var V=Object.keys(B),he=0;he1&&B===V&&(B==='"'||B==="'"))return['"'+o(S.substr(1,S.length-2))+'"'];var he=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(S);if(he)return l(S.substr(0,he.index)).concat(l(he[1])).concat(l(S.substr(he.index+he[0].length)));var xe=S.split(".");if(xe.length===1)return['"'+o(S)+'"'];for(var we=[],_e=0;_e65535)<<4,S>>>=B,V=(S>255)<<3,S>>>=V,B|=V,V=(S>15)<<2,S>>>=V,B|=V,V=(S>3)<<1,S>>>=V,B|=V,B|S>>1}function Z(){var S=k(8,function(){return[]});function B(we){var _e=te(we),He=S[Q(_e)>>2];return He.length>0?He.pop():new ArrayBuffer(_e)}function V(we){S[Q(we.byteLength)>>2].push(we)}function he(we,_e){var He=null;switch(we){case F:He=new Int8Array(B(_e),0,_e);break;case I:He=new Uint8Array(B(_e),0,_e);break;case O:He=new Int16Array(B(2*_e),0,_e);break;case q:He=new Uint16Array(B(2*_e),0,_e);break;case H:He=new Int32Array(B(4*_e),0,_e);break;case X:He=new Uint32Array(B(4*_e),0,_e);break;case oe:He=new Float32Array(B(4*_e),0,_e);break;default:return null}return He.length!==_e?He.subarray(0,_e):He}function xe(we){V(we.buffer)}return{alloc:B,free:V,allocType:he,freeType:xe}}var J=Z();J.zero=Z();var le=3408,ce=3410,De=3411,Be=3412,Ee=3413,Xe=3414,Ae=3415,rr=33901,ze=33902,We=3379,$e=3386,Ue=34921,ee=36347,de=36348,ae=35661,je=35660,ur=34930,er=36349,Lr=34076,Pr=34024,_r=7936,Ir=7937,Yr=7938,Kr=35724,wr=34047,Vr=36063,Wr=34852,Re=3553,lr=34067,st=34069,kt=33984,Ar=6408,tr=5126,cr=5121,Hr=36160,ot=36053,jr=36064,at=16384,xt=function(S,B){var V=1;B.ext_texture_filter_anisotropic&&(V=S.getParameter(wr));var he=1,xe=1;B.webgl_draw_buffers&&(he=S.getParameter(Wr),xe=S.getParameter(Vr));var we=!!B.oes_texture_float;if(we){var _e=S.createTexture();S.bindTexture(Re,_e),S.texImage2D(Re,0,Ar,1,1,0,Ar,tr,null);var He=S.createFramebuffer();if(S.bindFramebuffer(Hr,He),S.framebufferTexture2D(Hr,jr,Re,_e,0),S.bindTexture(Re,null),S.checkFramebufferStatus(Hr)!==ot)we=!1;else{S.viewport(0,0,1,1),S.clearColor(1,0,0,1),S.clear(at);var or=J.allocType(tr,4);S.readPixels(0,0,1,1,Ar,tr,or),S.getError()?we=!1:(S.deleteFramebuffer(He),S.deleteTexture(_e),we=or[0]===1),J.freeType(or)}}var ir=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),sr=!0;if(!ir){var Qr=S.createTexture(),Fr=J.allocType(cr,36);S.activeTexture(kt),S.bindTexture(lr,Qr),S.texImage2D(st,0,Ar,3,3,0,Ar,cr,Fr),J.freeType(Fr),S.bindTexture(lr,null),S.deleteTexture(Qr),sr=!S.getError()}return{colorBits:[S.getParameter(ce),S.getParameter(De),S.getParameter(Be),S.getParameter(Ee)],depthBits:S.getParameter(Xe),stencilBits:S.getParameter(Ae),subpixelBits:S.getParameter(le),extensions:Object.keys(B).filter(function(yr){return!!B[yr]}),maxAnisotropic:V,maxDrawbuffers:he,maxColorAttachments:xe,pointSizeDims:S.getParameter(rr),lineWidthDims:S.getParameter(ze),maxViewportDims:S.getParameter($e),maxCombinedTextureUnits:S.getParameter(ae),maxCubeMapSize:S.getParameter(Lr),maxRenderbufferSize:S.getParameter(Pr),maxTextureUnits:S.getParameter(ur),maxTextureSize:S.getParameter(We),maxAttributes:S.getParameter(Ue),maxVertexUniforms:S.getParameter(ee),maxVertexTextureUnits:S.getParameter(je),maxVaryingVectors:S.getParameter(de),maxFragmentUniforms:S.getParameter(er),glsl:S.getParameter(Kr),renderer:S.getParameter(Ir),vendor:S.getParameter(_r),version:S.getParameter(Yr),readFloat:we,npotTextureCube:sr}},Xr=function(S){return S instanceof Uint8Array||S instanceof Uint16Array||S instanceof Uint32Array||S instanceof Int8Array||S instanceof Int16Array||S instanceof Int32Array||S instanceof Float32Array||S instanceof Float64Array||S instanceof Uint8ClampedArray};function nt(S){return!!S&&typeof S=="object"&&Array.isArray(S.shape)&&Array.isArray(S.stride)&&typeof S.offset=="number"&&S.shape.length===S.stride.length&&(Array.isArray(S.data)||Xr(S.data))}var gr=function(S){return Object.keys(S).map(function(B){return S[B]})},Se={shape:wt,flatten:Tt};function Ne(S,B,V){for(var he=0;he0){var Zr;if(Array.isArray(ke[0])){dr=Ia(ke);for(var Ie=1,qe=1;qe0){if(typeof Ie[0]=="number"){var fr=J.allocType(Oe.dtype,Ie.length);lo(fr,Ie),dr(fr,Sr),J.freeType(fr)}else if(Array.isArray(Ie[0])||Xr(Ie[0])){hr=Ia(Ie);var vr=ia(Ie,hr,Oe.dtype);dr(vr,Sr),J.freeType(vr)}}}else if(nt(Ie)){hr=Ie.shape;var Er=Ie.stride,Jr=0,ct=0,mr=0,Cr=0;hr.length===1?(Jr=hr[0],ct=1,mr=Er[0],Cr=0):hr.length===2&&(Jr=hr[0],ct=hr[1],mr=Er[0],Cr=Er[1]);var ft=Array.isArray(Ie.data)?Oe.dtype:en(Ie.data),ut=J.allocType(ft,Jr*ct);Oi(ut,Ie.data,Jr,ct,mr,Cr,Ie.offset),dr(ut,Sr),J.freeType(ut)}return br}return Ze||br(fe),br._reglType="buffer",br._buffer=Oe,br.subdata=Zr,V.profile&&(br.stats=Oe.stats),br.destroy=function(){Fr(Oe)},br}function Pe(){gr(we).forEach(function(fe){fe.buffer=S.createBuffer(),S.bindBuffer(fe.type,fe.buffer),S.bufferData(fe.type,fe.persistentData||fe.byteLength,fe.usage)})}return V.profile&&(B.getTotalBufferSize=function(){var fe=0;return Object.keys(we).forEach(function(ke){fe+=we[ke].stats.size}),fe}),{create:yr,createStream:or,destroyStream:ir,clear:function(){gr(we).forEach(Fr),He.forEach(Fr)},getBuffer:function(fe){return fe&&fe._buffer instanceof _e?fe._buffer:null},restore:Pe,_initBuffer:Qr}}var nn=0,Zn=0,fs=1,us=1,kl=4,Zu=4,Oo={points:nn,point:Zn,lines:fs,line:us,triangles:kl,triangle:Zu,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Yf=0,Wf=1,ji=4,di=5120,Bi=5121,Cl=5122,pi=5123,Pt=5124,$t=5125,ca=34963,_t=35040,Jn=35044;function za(S,B,V,he){var xe={},we=0,_e={uint8:Bi,uint16:pi};B.oes_element_index_uint&&(_e.uint32=$t);function He(Pe){this.id=we++,xe[this.id]=this,this.buffer=Pe,this.primType=ji,this.vertCount=0,this.type=0}He.prototype.bind=function(){this.buffer.bind()};var or=[];function ir(Pe){var fe=or.pop();return fe||(fe=new He(V.create(null,ca,!0,!1)._buffer)),Qr(fe,Pe,_t,-1,-1,0,0),fe}function sr(Pe){or.push(Pe)}function Qr(Pe,fe,ke,Ze,nr,Oe,br){Pe.buffer.bind();var dr;if(fe){var Zr=br;!br&&(!Xr(fe)||nt(fe)&&!Xr(fe.data))&&(Zr=B.oes_element_index_uint?$t:pi),V._initBuffer(Pe.buffer,fe,ke,Zr,3)}else S.bufferData(ca,Oe,ke),Pe.buffer.dtype=dr||Bi,Pe.buffer.usage=ke,Pe.buffer.dimension=3,Pe.buffer.byteLength=Oe;if(dr=br,!br){switch(Pe.buffer.dtype){case Bi:case di:dr=Bi;break;case pi:case Cl:dr=pi;break;case $t:case Pt:dr=$t;break;default:}Pe.buffer.dtype=dr}Pe.type=dr;var Ie=nr;Ie<0&&(Ie=Pe.buffer.byteLength,dr===pi?Ie>>=1:dr===$t&&(Ie>>=2)),Pe.vertCount=Ie;var qe=Ze;if(Ze<0){qe=ji;var Sr=Pe.buffer.dimension;Sr===1&&(qe=Yf),Sr===2&&(qe=Wf),Sr===3&&(qe=ji)}Pe.primType=qe}function Fr(Pe){he.elementsCount--,delete xe[Pe.id],Pe.buffer.destroy(),Pe.buffer=null}function yr(Pe,fe){var ke=V.create(null,ca,!0),Ze=new He(ke._buffer);he.elementsCount++;function nr(Oe){if(!Oe)ke(),Ze.primType=ji,Ze.vertCount=0,Ze.type=Bi;else if(typeof Oe=="number")ke(Oe),Ze.primType=ji,Ze.vertCount=Oe|0,Ze.type=Bi;else{var br=null,dr=Jn,Zr=-1,Ie=-1,qe=0,Sr=0;Array.isArray(Oe)||Xr(Oe)||nt(Oe)?br=Oe:("data"in Oe&&(br=Oe.data),"usage"in Oe&&(dr=Pa[Oe.usage]),"primitive"in Oe&&(Zr=Oo[Oe.primitive]),"count"in Oe&&(Ie=Oe.count|0),"type"in Oe&&(Sr=_e[Oe.type]),"length"in Oe?qe=Oe.length|0:(qe=Ie,Sr===pi||Sr===Cl?qe*=2:(Sr===$t||Sr===Pt)&&(qe*=4))),Qr(Ze,br,dr,Zr,Ie,qe,Sr)}return nr}return nr(Pe),nr._reglType="elements",nr._elements=Ze,nr.subdata=function(Oe,br){return ke.subdata(Oe,br),nr},nr.destroy=function(){Fr(Ze)},nr}return{create:yr,createStream:ir,destroyStream:sr,getElements:function(Pe){return typeof Pe=="function"&&Pe._elements instanceof He?Pe._elements:null},clear:function(){gr(xe).forEach(Fr)}}}var Pn=new Float32Array(1),ra=new Uint32Array(Pn.buffer),Ao=5123;function ol(S){for(var B=J.allocType(Ao,S.length),V=0;V>>31<<15,we=(he<<1>>>24)-127,_e=he>>13&1023;if(we<-24)B[V]=xe;else if(we<-14){var He=-14-we;B[V]=xe+(_e+1024>>He)}else we>15?B[V]=xe+31744:B[V]=xe+(we+15<<10)+_e}return B}function Si(S){return Array.isArray(S)||Xr(S)}var Qp=34467,Mn=3553,Ll=34067,Bo=34069,mi=6408,rf=6406,zo=6407,To=6409,Dl=6410,Ju=32854,Go=32855,cs=36194,Sh=32819,Kp=32820,$u=33635,Dv=34042,vs=6402,Fl=34041,Uo=35904,Mo=35906,yi=36193,tf=33776,hs=33777,ll=33778,af=33779,Fv=35986,Qu=35987,jf=34798,qv=35840,Rv=35841,Ku=35842,Pv=35843,ec=36196,So=5121,nf=5123,Xf=5125,zi=5126,of=10242,e1=10243,r1=10497,Zf=33071,Eh=33648,Jf=10240,t1=10241,ql=9728,rc=9729,ds=9984,lf=9985,ps=9986,sl=9987,kh=33170,fl=4352,a1=4353,tc=4354,n1=34046,i1=3317,o1=37440,Ch=37441,$f=37443,Nv=37444,Eo=33984,Lh=[ds,ps,lf,sl],Ei=[0,To,Dl,zo,mi],Sn={};Sn[To]=Sn[rf]=Sn[vs]=1,Sn[Fl]=Sn[Dl]=2,Sn[zo]=Sn[Uo]=3,Sn[mi]=Sn[Mo]=4;function Xi(S){return"[object "+S+"]"}var Qf=Xi("HTMLCanvasElement"),ul=Xi("OffscreenCanvas"),sf=Xi("CanvasRenderingContext2D"),ac=Xi("ImageBitmap"),Iv=Xi("HTMLImageElement"),Ov=Xi("HTMLVideoElement"),l1=Object.keys(It).concat([Qf,ul,sf,ac,Iv,Ov]),so=[];so[So]=1,so[zi]=4,so[yi]=2,so[nf]=2,so[Xf]=4;var Aa=[];Aa[Ju]=2,Aa[Go]=2,Aa[cs]=2,Aa[Fl]=4,Aa[tf]=.5,Aa[hs]=.5,Aa[ll]=1,Aa[af]=1,Aa[Fv]=.5,Aa[Qu]=1,Aa[jf]=1,Aa[qv]=.5,Aa[Rv]=.25,Aa[Ku]=.5,Aa[Pv]=.25,Aa[ec]=.5;function Bv(S){return Array.isArray(S)&&(S.length===0||typeof S[0]=="number")}function zv(S){if(!Array.isArray(S))return!1;var B=S.length;return!(B===0||!Si(S[0]))}function Zi(S){return Object.prototype.toString.call(S)}function Gv(S){return Zi(S)===Qf}function Uv(S){return Zi(S)===ul}function s1(S){return Zi(S)===sf}function f1(S){return Zi(S)===ac}function u1(S){return Zi(S)===Iv}function c1(S){return Zi(S)===Ov}function Kf(S){if(!S)return!1;var B=Zi(S);return l1.indexOf(B)>=0?!0:Bv(S)||zv(S)||nt(S)}function Hv(S){return It[Object.prototype.toString.call(S)]|0}function v1(S,B){var V=B.length;switch(S.type){case So:case nf:case Xf:case zi:var he=J.allocType(S.type,V);he.set(B),S.data=he;break;case yi:S.data=ol(B);break;default:}}function Vv(S,B){return J.allocType(S.type===yi?zi:S.type,B)}function nc(S,B){S.type===yi?(S.data=ol(B),J.freeType(B)):S.data=B}function Dh(S,B,V,he,xe,we){for(var _e=S.width,He=S.height,or=S.channels,ir=_e*He*or,sr=Vv(S,ir),Qr=0,Fr=0;Fr=1;)He+=_e*or*or,or/=2;return He}else return _e*V*he}function Fh(S,B,V,he,xe,we,_e){var He={"don't care":fl,"dont care":fl,nice:tc,fast:a1},or={repeat:r1,clamp:Zf,mirror:Eh},ir={nearest:ql,linear:rc},sr=e({mipmap:sl,"nearest mipmap nearest":ds,"linear mipmap nearest":lf,"nearest mipmap linear":ps,"linear mipmap linear":sl},ir),Qr={none:0,browser:Nv},Fr={uint8:So,rgba4:Sh,rgb565:$u,"rgb5 a1":Kp},yr={alpha:rf,luminance:To,"luminance alpha":Dl,rgb:zo,rgba:mi,rgba4:Ju,"rgb5 a1":Go,rgb565:cs},Pe={};B.ext_srgb&&(yr.srgb=Uo,yr.srgba=Mo),B.oes_texture_float&&(Fr.float32=Fr.float=zi),B.oes_texture_half_float&&(Fr.float16=Fr["half float"]=yi),B.webgl_depth_texture&&(e(yr,{depth:vs,"depth stencil":Fl}),e(Fr,{uint16:nf,uint32:Xf,"depth stencil":Dv})),B.webgl_compressed_texture_s3tc&&e(Pe,{"rgb s3tc dxt1":tf,"rgba s3tc dxt1":hs,"rgba s3tc dxt3":ll,"rgba s3tc dxt5":af}),B.webgl_compressed_texture_atc&&e(Pe,{"rgb atc":Fv,"rgba atc explicit alpha":Qu,"rgba atc interpolated alpha":jf}),B.webgl_compressed_texture_pvrtc&&e(Pe,{"rgb pvrtc 4bppv1":qv,"rgb pvrtc 2bppv1":Rv,"rgba pvrtc 4bppv1":Ku,"rgba pvrtc 2bppv1":Pv}),B.webgl_compressed_texture_etc1&&(Pe["rgb etc1"]=ec);var fe=Array.prototype.slice.call(S.getParameter(Qp));Object.keys(Pe).forEach(function(z){var me=Pe[z];fe.indexOf(me)>=0&&(yr[z]=me)});var ke=Object.keys(yr);V.textureFormats=ke;var Ze=[];Object.keys(yr).forEach(function(z){var me=yr[z];Ze[me]=z});var nr=[];Object.keys(Fr).forEach(function(z){var me=Fr[z];nr[me]=z});var Oe=[];Object.keys(ir).forEach(function(z){var me=ir[z];Oe[me]=z});var br=[];Object.keys(sr).forEach(function(z){var me=sr[z];br[me]=z});var dr=[];Object.keys(or).forEach(function(z){var me=or[z];dr[me]=z});var Zr=ke.reduce(function(z,me){var be=yr[me];return be===To||be===rf||be===To||be===Dl||be===vs||be===Fl||B.ext_srgb&&(be===Uo||be===Mo)?z[be]=be:be===Go||me.indexOf("rgba")>=0?z[be]=mi:z[be]=zo,z},{});function Ie(){this.internalformat=mi,this.format=mi,this.type=So,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=Nv,this.width=0,this.height=0,this.channels=0}function qe(z,me){z.internalformat=me.internalformat,z.format=me.format,z.type=me.type,z.compressed=me.compressed,z.premultiplyAlpha=me.premultiplyAlpha,z.flipY=me.flipY,z.unpackAlignment=me.unpackAlignment,z.colorSpace=me.colorSpace,z.width=me.width,z.height=me.height,z.channels=me.channels}function Sr(z,me){if(!(typeof me!="object"||!me)){if("premultiplyAlpha"in me&&(z.premultiplyAlpha=me.premultiplyAlpha),"flipY"in me&&(z.flipY=me.flipY),"alignment"in me&&(z.unpackAlignment=me.alignment),"colorSpace"in me&&(z.colorSpace=Qr[me.colorSpace]),"type"in me){var be=me.type;z.type=Fr[be]}var Nr=z.width,Ft=z.height,Ht=z.channels,qr=!1;"shape"in me?(Nr=me.shape[0],Ft=me.shape[1],me.shape.length===3&&(Ht=me.shape[2],qr=!0)):("radius"in me&&(Nr=Ft=me.radius),"width"in me&&(Nr=me.width),"height"in me&&(Ft=me.height),"channels"in me&&(Ht=me.channels,qr=!0)),z.width=Nr|0,z.height=Ft|0,z.channels=Ht|0;var N=!1;if("format"in me){var U=me.format,$=z.internalformat=yr[U];z.format=Zr[$],U in Fr&&("type"in me||(z.type=Fr[U])),U in Pe&&(z.compressed=!0),N=!0}!qr&&N?z.channels=Sn[z.format]:qr&&!N&&z.channels!==Ei[z.format]&&(z.format=z.internalformat=Ei[z.channels])}}function hr(z){S.pixelStorei(o1,z.flipY),S.pixelStorei(Ch,z.premultiplyAlpha),S.pixelStorei($f,z.colorSpace),S.pixelStorei(i1,z.unpackAlignment)}function fr(){Ie.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function vr(z,me){var be=null;if(Kf(me)?be=me:me&&(Sr(z,me),"x"in me&&(z.xOffset=me.x|0),"y"in me&&(z.yOffset=me.y|0),Kf(me.data)&&(be=me.data)),me.copy){var Nr=xe.viewportWidth,Ft=xe.viewportHeight;z.width=z.width||Nr-z.xOffset,z.height=z.height||Ft-z.yOffset,z.needsCopy=!0}else if(!be)z.width=z.width||1,z.height=z.height||1,z.channels=z.channels||4;else if(Xr(be))z.channels=z.channels||4,z.data=be,!("type"in me)&&z.type===So&&(z.type=Hv(be));else if(Bv(be))z.channels=z.channels||4,v1(z,be),z.alignment=1,z.needsFree=!0;else if(nt(be)){var Ht=be.data;!Array.isArray(Ht)&&z.type===So&&(z.type=Hv(Ht));var qr=be.shape,N=be.stride,U,$,pe,Te,ue,se;qr.length===3?(pe=qr[2],se=N[2]):(pe=1,se=1),U=qr[0],$=qr[1],Te=N[0],ue=N[1],z.alignment=1,z.width=U,z.height=$,z.channels=pe,z.format=z.internalformat=Ei[pe],z.needsFree=!0,Dh(z,Ht,Te,ue,se,be.offset)}else if(Gv(be)||Uv(be)||s1(be))Gv(be)||Uv(be)?z.element=be:z.element=be.canvas,z.width=z.element.width,z.height=z.element.height,z.channels=4;else if(f1(be))z.element=be,z.width=be.width,z.height=be.height,z.channels=4;else if(u1(be))z.element=be,z.width=be.naturalWidth,z.height=be.naturalHeight,z.channels=4;else if(c1(be))z.element=be,z.width=be.videoWidth,z.height=be.videoHeight,z.channels=4;else if(zv(be)){var re=z.width||be[0].length,W=z.height||be.length,K=z.channels;Si(be[0][0])?K=K||be[0][0].length:K=K||1;for(var Y=Se.shape(be),ve=1,Ce=0;Ce>=Ft,be.height>>=Ft,vr(be,Nr[Ft]),z.mipmask|=1<=0&&!("faces"in me)&&(z.genMipmaps=!0)}if("mag"in me){var Nr=me.mag;z.magFilter=ir[Nr]}var Ft=z.wrapS,Ht=z.wrapT;if("wrap"in me){var qr=me.wrap;typeof qr=="string"?Ft=Ht=or[qr]:Array.isArray(qr)&&(Ft=or[qr[0]],Ht=or[qr[1]])}else{if("wrapS"in me){var N=me.wrapS;Ft=or[N]}if("wrapT"in me){var U=me.wrapT;Ht=or[U]}}if(z.wrapS=Ft,z.wrapT=Ht,"anisotropic"in me){var $=me.anisotropic;z.anisotropic=me.anisotropic}if("mipmap"in me){var pe=!1;switch(typeof me.mipmap){case"string":z.mipmapHint=He[me.mipmap],z.genMipmaps=!0,pe=!0;break;case"boolean":pe=z.genMipmaps=me.mipmap;break;case"object":z.genMipmaps=!1,pe=!0;break;default:}pe&&!("min"in me)&&(z.minFilter=ds)}}function Wa(z,me){S.texParameteri(me,t1,z.minFilter),S.texParameteri(me,Jf,z.magFilter),S.texParameteri(me,of,z.wrapS),S.texParameteri(me,e1,z.wrapT),B.ext_texture_filter_anisotropic&&S.texParameteri(me,n1,z.anisotropic),z.genMipmaps&&(S.hint(kh,z.mipmapHint),S.generateMipmap(me))}var sn=0,ya={},ga=V.maxTextureUnits,Ea=Array(ga).map(function(){return null});function At(z){Ie.call(this),this.mipmask=0,this.internalformat=mi,this.id=sn++,this.refCount=1,this.target=z,this.texture=S.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new Ut,_e.profile&&(this.stats={size:0})}function Da(z){S.activeTexture(Eo),S.bindTexture(z.target,z.texture)}function Wt(){var z=Ea[0];z?S.bindTexture(z.target,z.texture):S.bindTexture(Mn,null)}function ja(z){var me=z.texture,be=z.unit,Nr=z.target;be>=0&&(S.activeTexture(Eo+be),S.bindTexture(Nr,null),Ea[be]=null),S.deleteTexture(me),z.texture=null,z.params=null,z.pixels=null,z.refCount=0,delete ya[z.id],we.textureCount--}e(At.prototype,{bind:function(){var z=this;z.bindCount+=1;var me=z.unit;if(me<0){for(var be=0;be0)continue;Nr.unit=-1}Ea[be]=z,me=be;break}me>=ga,_e.profile&&we.maxTextureUnits>ue)-pe,se.height=se.height||(be.height>>ue)-Te,Da(be),Jr(se,Mn,pe,Te,ue),Wt(),Cr(se),Nr}function Ht(qr,N){var U=qr|0,$=N|0||U;if(U===be.width&&$===be.height)return Nr;Nr.width=be.width=U,Nr.height=be.height=$,Da(be);for(var pe=0;be.mipmask>>pe;++pe){var Te=U>>pe,ue=$>>pe;if(!Te||!ue)break;S.texImage2D(Mn,pe,be.format,Te,ue,0,be.format,be.type,null)}return Wt(),_e.profile&&(be.stats.size=Rl(be.internalformat,be.type,U,$,!1,!1)),Nr}return Nr(z,me),Nr.subimage=Ft,Nr.resize=Ht,Nr._reglType="texture2d",Nr._texture=be,_e.profile&&(Nr.stats=be.stats),Nr.destroy=function(){be.decRef()},Nr}function un(z,me,be,Nr,Ft,Ht){var qr=new At(Ll);ya[qr.id]=qr,we.cubeCount++;var N=new Array(6);function U(Te,ue,se,re,W,K){var Y,ve=qr.texInfo;for(Ut.call(ve),Y=0;Y<6;++Y)N[Y]=Dt();if(typeof Te=="number"||!Te){var Ce=Te|0||1;for(Y=0;Y<6;++Y)ut(N[Y],Ce,Ce)}else if(typeof Te=="object")if(ue)St(N[0],Te),St(N[1],ue),St(N[2],se),St(N[3],re),St(N[4],W),St(N[5],K);else if(Ua(ve,Te),Sr(qr,Te),"faces"in Te){var Je=Te.faces;for(Y=0;Y<6;++Y)qe(N[Y],qr),St(N[Y],Je[Y])}else for(Y=0;Y<6;++Y)St(N[Y],Te);for(qe(qr,N[0]),ve.genMipmaps?qr.mipmask=(N[0].width<<1)-1:qr.mipmask=N[0].mipmask,qr.internalformat=N[0].internalformat,U.width=N[0].width,U.height=N[0].height,Da(qr),Y=0;Y<6;++Y)aa(N[Y],Bo+Y);for(Wa(ve,Ll),Wt(),_e.profile&&(qr.stats.size=Rl(qr.internalformat,qr.type,U.width,U.height,ve.genMipmaps,!0)),U.format=Ze[qr.internalformat],U.type=nr[qr.type],U.mag=Oe[ve.magFilter],U.min=br[ve.minFilter],U.wrapS=dr[ve.wrapS],U.wrapT=dr[ve.wrapT],Y=0;Y<6;++Y)ln(N[Y]);return U}function $(Te,ue,se,re,W){var K=se|0,Y=re|0,ve=W|0,Ce=mr();return qe(Ce,qr),Ce.width=0,Ce.height=0,vr(Ce,ue),Ce.width=Ce.width||(qr.width>>ve)-K,Ce.height=Ce.height||(qr.height>>ve)-Y,Da(qr),Jr(Ce,Bo+Te,K,Y,ve),Wt(),Cr(Ce),U}function pe(Te){var ue=Te|0;if(ue!==qr.width){U.width=qr.width=ue,U.height=qr.height=ue,Da(qr);for(var se=0;se<6;++se)for(var re=0;qr.mipmask>>re;++re)S.texImage2D(Bo+se,re,qr.format,ue>>re,ue>>re,0,qr.format,qr.type,null);return Wt(),_e.profile&&(qr.stats.size=Rl(qr.internalformat,qr.type,U.width,U.height,!1,!0)),U}}return U(z,me,be,Nr,Ft,Ht),U.subimage=$,U.resize=pe,U._reglType="textureCube",U._texture=qr,_e.profile&&(U.stats=qr.stats),U.destroy=function(){qr.decRef()},U}function pt(){for(var z=0;z>Nr,be.height>>Nr,0,be.internalformat,be.type,null);else for(var Ft=0;Ft<6;++Ft)S.texImage2D(Bo+Ft,Nr,be.internalformat,be.width>>Nr,be.height>>Nr,0,be.internalformat,be.type,null);Wa(be.texInfo,be.target)})}function Qt(){for(var z=0;z=0?ln=!0:or.indexOf(Ut)>=0&&(ln=!1))),("depthTexture"in At||"depthStencilTexture"in At)&&(Ea=!!(At.depthTexture||At.depthStencilTexture)),"depth"in At&&(typeof At.depth=="boolean"?aa=At.depth:(sn=At.depth,Sa=!1)),"stencil"in At&&(typeof At.stencil=="boolean"?Sa=At.stencil:(ya=At.stencil,aa=!1)),"depthStencil"in At&&(typeof At.depthStencil=="boolean"?aa=Sa=At.depthStencil:(ga=At.depthStencil,aa=!1,Sa=!1))}var Wt=null,ja=null,fn=null,un=null;if(Array.isArray(Dt))Wt=Dt.map(Pe);else if(Dt)Wt=[Pe(Dt)];else for(Wt=new Array(Wa),ft=0;ft0&&(Cr.depth=vr[0].depth,Cr.stencil=vr[0].stencil,Cr.depthStencil=vr[0].depthStencil),vr[mr]?vr[mr](Cr):vr[mr]=qe(Cr)}return e(Er,{width:ft,height:ft,color:Ut})}function Jr(ct){var mr,Cr=ct|0;if(Cr===Er.width)return Er;var ft=Er.color;for(mr=0;mr=ft.byteLength?ut.subdata(ft):(ut.destroy(),qe.buffers[ct]=null)),qe.buffers[ct]||(ut=qe.buffers[ct]=xe.create(mr,t0,!1,!0)),Cr.buffer=xe.getBuffer(ut),Cr.size=Cr.buffer.dimension|0,Cr.normalized=!1,Cr.type=Cr.buffer.dtype,Cr.offset=0,Cr.stride=0,Cr.divisor=0,Cr.state=1,Er[ct]=1}else xe.getBuffer(mr)?(Cr.buffer=xe.getBuffer(mr),Cr.size=Cr.buffer.dimension|0,Cr.normalized=!1,Cr.type=Cr.buffer.dtype,Cr.offset=0,Cr.stride=0,Cr.divisor=0,Cr.state=1):xe.getBuffer(mr.buffer)?(Cr.buffer=xe.getBuffer(mr.buffer),Cr.size=(+mr.size||Cr.buffer.dimension)|0,Cr.normalized=!!mr.normalized||!1,"type"in mr?Cr.type=hn[mr.type]:Cr.type=Cr.buffer.dtype,Cr.offset=(mr.offset||0)|0,Cr.stride=(mr.stride||0)|0,Cr.divisor=(mr.divisor||0)|0,Cr.state=1):"x"in mr&&(Cr.x=+mr.x||0,Cr.y=+mr.y||0,Cr.z=+mr.z||0,Cr.w=+mr.w||0,Cr.state=2)}for(var St=0;St1)for(var hr=0;hrfe&&(fe=ke.stats.uniformsCount)}),fe},V.getMaxAttributesCount=function(){var fe=0;return sr.forEach(function(ke){ke.stats.attributesCount>fe&&(fe=ke.stats.attributesCount)}),fe});function Pe(){xe={},we={};for(var fe=0;fe16&&(V=cl(V,S.length*8));for(var he=Array(16),xe=Array(16),we=0;we<16;we++)he[we]=V[we]^909522486,xe[we]=V[we]^1549556828;var _e=cl(he.concat(au(B)),512+B.length*8);return o0(cl(xe.concat(_e),768))}function Ih(S){for(var B=Ph?"0123456789ABCDEF":"0123456789abcdef",V="",he,xe=0;xe>>4&15)+B.charAt(he&15);return V}function S1(S){for(var B="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",V="",he=S.length,xe=0;xeS.length*8?V+=T1:V+=B.charAt(we>>>6*(3-_e)&63);return V}function E1(S,B){var V=B.length,he=Array(),xe,we,_e,He,or=Array(Math.ceil(S.length/2));for(xe=0;xe0;){for(He=Array(),_e=0,xe=0;xe0||we>0)&&(He[He.length]=we);he[he.length]=_e,or=He}var ir="";for(xe=he.length-1;xe>=0;xe--)ir+=B.charAt(he[xe]);var sr=Math.ceil(S.length*8/(Math.log(B.length)/Math.log(2)));for(xe=ir.length;xe>>6&31,128|he&63):he<=65535?B+=String.fromCharCode(224|he>>>12&15,128|he>>>6&63,128|he&63):he<=2097151&&(B+=String.fromCharCode(240|he>>>18&7,128|he>>>12&63,128|he>>>6&63,128|he&63));return B}function au(S){for(var B=Array(S.length>>2),V=0;V>5]|=(S.charCodeAt(V/8)&255)<<24-V%32;return B}function o0(S){for(var B="",V=0;V>5]>>>24-V%32&255);return B}function Bn(S,B){return S>>>B|S<<32-B}function l0(S,B){return S>>>B}function Oh(S,B,V){return S&B^~S&V}function Bh(S,B,V){return S&B^S&V^B&V}function s0(S){return Bn(S,2)^Bn(S,13)^Bn(S,22)}function zh(S){return Bn(S,6)^Bn(S,11)^Bn(S,25)}function sc(S){return Bn(S,7)^Bn(S,18)^l0(S,3)}function fc(S){return Bn(S,17)^Bn(S,19)^l0(S,10)}var C1=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function cl(S,B){var V=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),he=new Array(64),xe,we,_e,He,or,ir,sr,Qr,Fr,yr,Pe,fe;for(S[B>>5]|=128<<24-B%32,S[(B+64>>9<<4)+15]=B,Fr=0;Fr>16)+(B>>16)+(V>>16);return he<<16|V&65535}function Co(S){return Array.prototype.slice.call(S)}function Lo(S){return Co(S).join("")}function Gh(S){var B=S&&S.cache,V=0,he=[],xe=[],we=[];function _e(Pe,fe){var ke=fe&&fe.stable;if(!ke){for(var Ze=0;Ze0&&(Pe.push(nr,"="),Pe.push.apply(Pe,Co(arguments)),Pe.push(";")),nr}return e(fe,{def:Ze,toString:function(){return Lo([ke.length>0?"var "+ke.join(",")+";":"",Lo(Pe)])}})}function or(){var Pe=He(),fe=He(),ke=Pe.toString,Ze=fe.toString;function nr(Oe,br){fe(Oe,br,"=",Pe.def(Oe,br),";")}return e(function(){Pe.apply(Pe,Co(arguments))},{def:Pe.def,entry:Pe,exit:fe,save:nr,set:function(Oe,br,dr){nr(Oe,br),Pe(Oe,br,"=",dr,";")},toString:function(){return ke()+Ze()}})}function ir(){var Pe=Lo(arguments),fe=or(),ke=or(),Ze=fe.toString,nr=ke.toString;return e(fe,{then:function(){return fe.apply(fe,Co(arguments)),this},else:function(){return ke.apply(ke,Co(arguments)),this},toString:function(){var Oe=nr();return Oe&&(Oe="else{"+Oe+"}"),Lo(["if(",Pe,"){",Ze(),"}",Oe])}})}var sr=He(),Qr={};function Fr(Pe,fe){var ke=[];function Ze(){var Zr="a"+ke.length;return ke.push(Zr),Zr}fe=fe||0;for(var nr=0;nr2){for(var i=Array(r.position.length*.5),o=0;o2){for(var f=!r.position[0].length,u=_v.mallocFloat(this.count*2),c=0,v=0;c1?t.align[Xe]:t.align[0]:t.align;if(typeof Ae=="number")return Ae;switch(Ae){case"right":case"end":return-Ee;case"center":case"centre":case"middle":return-Ee*.5}return 0})),this.baseline==null&&r.baseline==null&&(r.baseline=0),r.baseline!=null&&(this.baseline=r.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map(function(Ee,Xe){var Ae=(t.font[Xe]||t.font[0]).metrics,rr=0;return rr+=Ae.bottom*.5,typeof Ee=="number"?rr+=Ee-Ae.baseline:rr+=-Ae[Ee],rr*=-1,rr})),r.color!=null)if(r.color||(r.color="transparent"),typeof r.color=="string"||!isNaN(r.color))this.color=m9(r.color,"uint8");else{var le;if(typeof r.color[0]=="number"&&r.color.length>this.counts.length){var te=r.color.length;le=_v.mallocUint8(te);for(var Q=(r.color.subarray||r.color.slice).bind(r.color),J=0;J4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2;if(ue){var Le=Math.max(this.position.length*.5||0,this.color.length*.25||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,this.positionOffset.length*.5||0);this.batch=Array(Le);for(var Be=0;Be1?this.counts[Be]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[Be]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(Be*4,Be*4+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[Be]:this.opacity,baseline:this.baselineOffset[Be]!=null?this.baselineOffset[Be]:this.baselineOffset[0],align:this.align?this.alignOffset[Be]!=null?this.alignOffset[Be]:this.alignOffset[0]:0,atlas:this.fontAtlas[Be]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(Be*2,Be*2+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]}};Ja.prototype.destroy=function(){};Ja.prototype.kerning=!0;Ja.prototype.position={constant:new Float32Array(2)};Ja.prototype.translate=null;Ja.prototype.scale=null;Ja.prototype.font=null;Ja.prototype.text="";Ja.prototype.positionOffset=[0,0];Ja.prototype.opacity=1;Ja.prototype.color=new Uint8Array([0,0,0,255]);Ja.prototype.alignOffset=[0,0];Ja.maxAtlasSize=1024;Ja.atlasCanvas=document.createElement("canvas");Ja.atlasContext=Ja.atlasCanvas.getContext("2d",{alpha:!1});Ja.baseFontSize=64;Ja.fonts={};function A9e(e){return typeof e=="function"&&e._gl&&e.prop&&e.texture&&e.buffer}Rre.exports=Ja});var Ore=P((eOe,Ire)=>{"use strict";var Nre=ha(),T9e=function(){};Ire.exports=function(r){for(var t in r)typeof r[t]=="function"&&(r[t]=T9e);r.destroy=function(){r.container.parentNode.removeChild(r.container)};var a=document.createElement("div");a.className="no-webgl",a.style.cursor="pointer",a.style.fontSize="24px",a.style.color=Nre.defaults[0],a.style.position="absolute",a.style.left=a.style.top="0px",a.style.width=a.style.height="100%",a.style["background-color"]=Nre.lightLine,a.style["z-index"]=30;var n=document.createElement("p");return n.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",n.style.position="relative",n.style.top="50%",n.style.left="50%",n.style.height="30%",n.style.width="50%",n.style.margin="-15% 0 0 -25%",a.appendChild(n),r.container.appendChild(a),r.container.style.background="#FFFFFF",r.container.onclick=function(){window.open("https://get.webgl.org")},!1}});var Bre=P((y9,g9)=>{(function(e,r){typeof y9=="object"&&typeof g9!="undefined"?g9.exports=r():e.createREGL=r()})(y9,function(){"use strict";var e=function(M,B){for(var V=Object.keys(B),he=0;he1&&B===V&&(B==='"'||B==="'"))return['"'+o(M.substr(1,M.length-2))+'"'];var he=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(M);if(he)return l(M.substr(0,he.index)).concat(l(he[1])).concat(l(M.substr(he.index+he[0].length)));var xe=M.split(".");if(xe.length===1)return['"'+o(M)+'"'];for(var we=[],_e=0;_e65535)<<4,M>>>=B,V=(M>255)<<3,M>>>=V,B|=V,V=(M>15)<<2,M>>>=V,B|=V,V=(M>3)<<1,M>>>=V,B|=V,B|M>>1}function J(){var M=k(8,function(){return[]});function B(we){var _e=te(we),He=M[Q(_e)>>2];return He.length>0?He.pop():new ArrayBuffer(_e)}function V(we){M[Q(we.byteLength)>>2].push(we)}function he(we,_e){var He=null;switch(we){case F:He=new Int8Array(B(_e),0,_e);break;case I:He=new Uint8Array(B(_e),0,_e);break;case O:He=new Int16Array(B(2*_e),0,_e);break;case q:He=new Uint16Array(B(2*_e),0,_e);break;case H:He=new Int32Array(B(4*_e),0,_e);break;case j:He=new Uint32Array(B(4*_e),0,_e);break;case le:He=new Float32Array(B(4*_e),0,_e);break;default:return null}return He.length!==_e?He.subarray(0,_e):He}function xe(we){V(we.buffer)}return{alloc:B,free:V,allocType:he,freeType:xe}}var Z=J();Z.zero=J();var ae=3408,ue=3410,Le=3411,Be=3412,Ee=3413,Xe=3414,Ae=3415,rr=33901,ze=33902,We=3379,$e=3386,Ue=34921,ee=36347,de=36348,ne=35661,je=35660,ur=34930,er=36349,Lr=34076,Pr=34024,_r=7936,Ir=7937,Yr=7938,Kr=35724,wr=34047,Vr=36063,Wr=34852,Re=3553,lr=34067,st=34069,kt=33984,Ar=6408,tr=5126,cr=5121,Hr=36160,ot=36053,jr=36064,at=16384,xt=function(M,B){var V=1;B.ext_texture_filter_anisotropic&&(V=M.getParameter(wr));var he=1,xe=1;B.webgl_draw_buffers&&(he=M.getParameter(Wr),xe=M.getParameter(Vr));var we=!!B.oes_texture_float;if(we){var _e=M.createTexture();M.bindTexture(Re,_e),M.texImage2D(Re,0,Ar,1,1,0,Ar,tr,null);var He=M.createFramebuffer();if(M.bindFramebuffer(Hr,He),M.framebufferTexture2D(Hr,jr,Re,_e,0),M.bindTexture(Re,null),M.checkFramebufferStatus(Hr)!==ot)we=!1;else{M.viewport(0,0,1,1),M.clearColor(1,0,0,1),M.clear(at);var or=Z.allocType(tr,4);M.readPixels(0,0,1,1,Ar,tr,or),M.getError()?we=!1:(M.deleteFramebuffer(He),M.deleteTexture(_e),we=or[0]===1),Z.freeType(or)}}var ir=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),sr=!0;if(!ir){var Qr=M.createTexture(),Fr=Z.allocType(cr,36);M.activeTexture(kt),M.bindTexture(lr,Qr),M.texImage2D(st,0,Ar,3,3,0,Ar,cr,Fr),Z.freeType(Fr),M.bindTexture(lr,null),M.deleteTexture(Qr),sr=!M.getError()}return{colorBits:[M.getParameter(ue),M.getParameter(Le),M.getParameter(Be),M.getParameter(Ee)],depthBits:M.getParameter(Xe),stencilBits:M.getParameter(Ae),subpixelBits:M.getParameter(ae),extensions:Object.keys(B).filter(function(yr){return!!B[yr]}),maxAnisotropic:V,maxDrawbuffers:he,maxColorAttachments:xe,pointSizeDims:M.getParameter(rr),lineWidthDims:M.getParameter(ze),maxViewportDims:M.getParameter($e),maxCombinedTextureUnits:M.getParameter(ne),maxCubeMapSize:M.getParameter(Lr),maxRenderbufferSize:M.getParameter(Pr),maxTextureUnits:M.getParameter(ur),maxTextureSize:M.getParameter(We),maxAttributes:M.getParameter(Ue),maxVertexUniforms:M.getParameter(ee),maxVertexTextureUnits:M.getParameter(je),maxVaryingVectors:M.getParameter(de),maxFragmentUniforms:M.getParameter(er),glsl:M.getParameter(Kr),renderer:M.getParameter(Ir),vendor:M.getParameter(_r),version:M.getParameter(Yr),readFloat:we,npotTextureCube:sr}},Xr=function(M){return M instanceof Uint8Array||M instanceof Uint16Array||M instanceof Uint32Array||M instanceof Int8Array||M instanceof Int16Array||M instanceof Int32Array||M instanceof Float32Array||M instanceof Float64Array||M instanceof Uint8ClampedArray};function nt(M){return!!M&&typeof M=="object"&&Array.isArray(M.shape)&&Array.isArray(M.stride)&&typeof M.offset=="number"&&M.shape.length===M.stride.length&&(Array.isArray(M.data)||Xr(M.data))}var gr=function(M){return Object.keys(M).map(function(B){return M[B]})},Se={shape:wt,flatten:Tt};function Ne(M,B,V){for(var he=0;he0){var Zr;if(Array.isArray(ke[0])){dr=Ia(ke);for(var Ie=1,qe=1;qe0){if(typeof Ie[0]=="number"){var fr=Z.allocType(Oe.dtype,Ie.length);lo(fr,Ie),dr(fr,Sr),Z.freeType(fr)}else if(Array.isArray(Ie[0])||Xr(Ie[0])){hr=Ia(Ie);var vr=ia(Ie,hr,Oe.dtype);dr(vr,Sr),Z.freeType(vr)}}}else if(nt(Ie)){hr=Ie.shape;var Er=Ie.stride,Jr=0,ct=0,mr=0,Cr=0;hr.length===1?(Jr=hr[0],ct=1,mr=Er[0],Cr=0):hr.length===2&&(Jr=hr[0],ct=hr[1],mr=Er[0],Cr=Er[1]);var ft=Array.isArray(Ie.data)?Oe.dtype:en(Ie.data),ut=Z.allocType(ft,Jr*ct);Oi(ut,Ie.data,Jr,ct,mr,Cr,Ie.offset),dr(ut,Sr),Z.freeType(ut)}return br}return Ze||br(fe),br._reglType="buffer",br._buffer=Oe,br.subdata=Zr,V.profile&&(br.stats=Oe.stats),br.destroy=function(){Fr(Oe)},br}function Pe(){gr(we).forEach(function(fe){fe.buffer=M.createBuffer(),M.bindBuffer(fe.type,fe.buffer),M.bufferData(fe.type,fe.persistentData||fe.byteLength,fe.usage)})}return V.profile&&(B.getTotalBufferSize=function(){var fe=0;return Object.keys(we).forEach(function(ke){fe+=we[ke].stats.size}),fe}),{create:yr,createStream:or,destroyStream:ir,clear:function(){gr(we).forEach(Fr),He.forEach(Fr)},getBuffer:function(fe){return fe&&fe._buffer instanceof _e?fe._buffer:null},restore:Pe,_initBuffer:Qr}}var nn=0,Zn=0,fs=1,us=1,kl=4,Zu=4,Oo={points:nn,point:Zn,lines:fs,line:us,triangles:kl,triangle:Zu,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Yf=0,Wf=1,ji=4,di=5120,Bi=5121,Cl=5122,pi=5123,Pt=5124,$t=5125,ca=34963,_t=35040,Jn=35044;function za(M,B,V,he){var xe={},we=0,_e={uint8:Bi,uint16:pi};B.oes_element_index_uint&&(_e.uint32=$t);function He(Pe){this.id=we++,xe[this.id]=this,this.buffer=Pe,this.primType=ji,this.vertCount=0,this.type=0}He.prototype.bind=function(){this.buffer.bind()};var or=[];function ir(Pe){var fe=or.pop();return fe||(fe=new He(V.create(null,ca,!0,!1)._buffer)),Qr(fe,Pe,_t,-1,-1,0,0),fe}function sr(Pe){or.push(Pe)}function Qr(Pe,fe,ke,Ze,nr,Oe,br){Pe.buffer.bind();var dr;if(fe){var Zr=br;!br&&(!Xr(fe)||nt(fe)&&!Xr(fe.data))&&(Zr=B.oes_element_index_uint?$t:pi),V._initBuffer(Pe.buffer,fe,ke,Zr,3)}else M.bufferData(ca,Oe,ke),Pe.buffer.dtype=dr||Bi,Pe.buffer.usage=ke,Pe.buffer.dimension=3,Pe.buffer.byteLength=Oe;if(dr=br,!br){switch(Pe.buffer.dtype){case Bi:case di:dr=Bi;break;case pi:case Cl:dr=pi;break;case $t:case Pt:dr=$t;break;default:}Pe.buffer.dtype=dr}Pe.type=dr;var Ie=nr;Ie<0&&(Ie=Pe.buffer.byteLength,dr===pi?Ie>>=1:dr===$t&&(Ie>>=2)),Pe.vertCount=Ie;var qe=Ze;if(Ze<0){qe=ji;var Sr=Pe.buffer.dimension;Sr===1&&(qe=Yf),Sr===2&&(qe=Wf),Sr===3&&(qe=ji)}Pe.primType=qe}function Fr(Pe){he.elementsCount--,delete xe[Pe.id],Pe.buffer.destroy(),Pe.buffer=null}function yr(Pe,fe){var ke=V.create(null,ca,!0),Ze=new He(ke._buffer);he.elementsCount++;function nr(Oe){if(!Oe)ke(),Ze.primType=ji,Ze.vertCount=0,Ze.type=Bi;else if(typeof Oe=="number")ke(Oe),Ze.primType=ji,Ze.vertCount=Oe|0,Ze.type=Bi;else{var br=null,dr=Jn,Zr=-1,Ie=-1,qe=0,Sr=0;Array.isArray(Oe)||Xr(Oe)||nt(Oe)?br=Oe:("data"in Oe&&(br=Oe.data),"usage"in Oe&&(dr=Pa[Oe.usage]),"primitive"in Oe&&(Zr=Oo[Oe.primitive]),"count"in Oe&&(Ie=Oe.count|0),"type"in Oe&&(Sr=_e[Oe.type]),"length"in Oe?qe=Oe.length|0:(qe=Ie,Sr===pi||Sr===Cl?qe*=2:(Sr===$t||Sr===Pt)&&(qe*=4))),Qr(Ze,br,dr,Zr,Ie,qe,Sr)}return nr}return nr(Pe),nr._reglType="elements",nr._elements=Ze,nr.subdata=function(Oe,br){return ke.subdata(Oe,br),nr},nr.destroy=function(){Fr(Ze)},nr}return{create:yr,createStream:ir,destroyStream:sr,getElements:function(Pe){return typeof Pe=="function"&&Pe._elements instanceof He?Pe._elements:null},clear:function(){gr(xe).forEach(Fr)}}}var Pn=new Float32Array(1),ra=new Uint32Array(Pn.buffer),Ao=5123;function ol(M){for(var B=Z.allocType(Ao,M.length),V=0;V>>31<<15,we=(he<<1>>>24)-127,_e=he>>13&1023;if(we<-24)B[V]=xe;else if(we<-14){var He=-14-we;B[V]=xe+(_e+1024>>He)}else we>15?B[V]=xe+31744:B[V]=xe+(we+15<<10)+_e}return B}function Si(M){return Array.isArray(M)||Xr(M)}var Qp=34467,Mn=3553,Ll=34067,Bo=34069,mi=6408,tf=6406,zo=6407,To=6409,Dl=6410,Ju=32854,Go=32855,cs=36194,Sh=32819,Kp=32820,$u=33635,Dv=34042,vs=6402,Fl=34041,Uo=35904,Mo=35906,yi=36193,af=33776,hs=33777,ll=33778,nf=33779,Fv=35986,Qu=35987,jf=34798,qv=35840,Rv=35841,Ku=35842,Pv=35843,ec=36196,So=5121,of=5123,Xf=5125,zi=5126,lf=10242,e1=10243,r1=10497,Zf=33071,Eh=33648,Jf=10240,t1=10241,ql=9728,rc=9729,ds=9984,sf=9985,ps=9986,sl=9987,kh=33170,fl=4352,a1=4353,tc=4354,n1=34046,i1=3317,o1=37440,Ch=37441,$f=37443,Nv=37444,Eo=33984,Lh=[ds,ps,sf,sl],Ei=[0,To,Dl,zo,mi],Sn={};Sn[To]=Sn[tf]=Sn[vs]=1,Sn[Fl]=Sn[Dl]=2,Sn[zo]=Sn[Uo]=3,Sn[mi]=Sn[Mo]=4;function Xi(M){return"[object "+M+"]"}var Qf=Xi("HTMLCanvasElement"),ul=Xi("OffscreenCanvas"),ff=Xi("CanvasRenderingContext2D"),ac=Xi("ImageBitmap"),Iv=Xi("HTMLImageElement"),Ov=Xi("HTMLVideoElement"),l1=Object.keys(It).concat([Qf,ul,ff,ac,Iv,Ov]),so=[];so[So]=1,so[zi]=4,so[yi]=2,so[of]=2,so[Xf]=4;var Aa=[];Aa[Ju]=2,Aa[Go]=2,Aa[cs]=2,Aa[Fl]=4,Aa[af]=.5,Aa[hs]=.5,Aa[ll]=1,Aa[nf]=1,Aa[Fv]=.5,Aa[Qu]=1,Aa[jf]=1,Aa[qv]=.5,Aa[Rv]=.25,Aa[Ku]=.5,Aa[Pv]=.25,Aa[ec]=.5;function Bv(M){return Array.isArray(M)&&(M.length===0||typeof M[0]=="number")}function zv(M){if(!Array.isArray(M))return!1;var B=M.length;return!(B===0||!Si(M[0]))}function Zi(M){return Object.prototype.toString.call(M)}function Gv(M){return Zi(M)===Qf}function Uv(M){return Zi(M)===ul}function s1(M){return Zi(M)===ff}function f1(M){return Zi(M)===ac}function u1(M){return Zi(M)===Iv}function c1(M){return Zi(M)===Ov}function Kf(M){if(!M)return!1;var B=Zi(M);return l1.indexOf(B)>=0?!0:Bv(M)||zv(M)||nt(M)}function Hv(M){return It[Object.prototype.toString.call(M)]|0}function v1(M,B){var V=B.length;switch(M.type){case So:case of:case Xf:case zi:var he=Z.allocType(M.type,V);he.set(B),M.data=he;break;case yi:M.data=ol(B);break;default:}}function Vv(M,B){return Z.allocType(M.type===yi?zi:M.type,B)}function nc(M,B){M.type===yi?(M.data=ol(B),Z.freeType(B)):M.data=B}function Dh(M,B,V,he,xe,we){for(var _e=M.width,He=M.height,or=M.channels,ir=_e*He*or,sr=Vv(M,ir),Qr=0,Fr=0;Fr=1;)He+=_e*or*or,or/=2;return He}else return _e*V*he}function Fh(M,B,V,he,xe,we,_e){var He={"don't care":fl,"dont care":fl,nice:tc,fast:a1},or={repeat:r1,clamp:Zf,mirror:Eh},ir={nearest:ql,linear:rc},sr=e({mipmap:sl,"nearest mipmap nearest":ds,"linear mipmap nearest":sf,"nearest mipmap linear":ps,"linear mipmap linear":sl},ir),Qr={none:0,browser:Nv},Fr={uint8:So,rgba4:Sh,rgb565:$u,"rgb5 a1":Kp},yr={alpha:tf,luminance:To,"luminance alpha":Dl,rgb:zo,rgba:mi,rgba4:Ju,"rgb5 a1":Go,rgb565:cs},Pe={};B.ext_srgb&&(yr.srgb=Uo,yr.srgba=Mo),B.oes_texture_float&&(Fr.float32=Fr.float=zi),B.oes_texture_half_float&&(Fr.float16=Fr["half float"]=yi),B.webgl_depth_texture&&(e(yr,{depth:vs,"depth stencil":Fl}),e(Fr,{uint16:of,uint32:Xf,"depth stencil":Dv})),B.webgl_compressed_texture_s3tc&&e(Pe,{"rgb s3tc dxt1":af,"rgba s3tc dxt1":hs,"rgba s3tc dxt3":ll,"rgba s3tc dxt5":nf}),B.webgl_compressed_texture_atc&&e(Pe,{"rgb atc":Fv,"rgba atc explicit alpha":Qu,"rgba atc interpolated alpha":jf}),B.webgl_compressed_texture_pvrtc&&e(Pe,{"rgb pvrtc 4bppv1":qv,"rgb pvrtc 2bppv1":Rv,"rgba pvrtc 4bppv1":Ku,"rgba pvrtc 2bppv1":Pv}),B.webgl_compressed_texture_etc1&&(Pe["rgb etc1"]=ec);var fe=Array.prototype.slice.call(M.getParameter(Qp));Object.keys(Pe).forEach(function(z){var me=Pe[z];fe.indexOf(me)>=0&&(yr[z]=me)});var ke=Object.keys(yr);V.textureFormats=ke;var Ze=[];Object.keys(yr).forEach(function(z){var me=yr[z];Ze[me]=z});var nr=[];Object.keys(Fr).forEach(function(z){var me=Fr[z];nr[me]=z});var Oe=[];Object.keys(ir).forEach(function(z){var me=ir[z];Oe[me]=z});var br=[];Object.keys(sr).forEach(function(z){var me=sr[z];br[me]=z});var dr=[];Object.keys(or).forEach(function(z){var me=or[z];dr[me]=z});var Zr=ke.reduce(function(z,me){var be=yr[me];return be===To||be===tf||be===To||be===Dl||be===vs||be===Fl||B.ext_srgb&&(be===Uo||be===Mo)?z[be]=be:be===Go||me.indexOf("rgba")>=0?z[be]=mi:z[be]=zo,z},{});function Ie(){this.internalformat=mi,this.format=mi,this.type=So,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=Nv,this.width=0,this.height=0,this.channels=0}function qe(z,me){z.internalformat=me.internalformat,z.format=me.format,z.type=me.type,z.compressed=me.compressed,z.premultiplyAlpha=me.premultiplyAlpha,z.flipY=me.flipY,z.unpackAlignment=me.unpackAlignment,z.colorSpace=me.colorSpace,z.width=me.width,z.height=me.height,z.channels=me.channels}function Sr(z,me){if(!(typeof me!="object"||!me)){if("premultiplyAlpha"in me&&(z.premultiplyAlpha=me.premultiplyAlpha),"flipY"in me&&(z.flipY=me.flipY),"alignment"in me&&(z.unpackAlignment=me.alignment),"colorSpace"in me&&(z.colorSpace=Qr[me.colorSpace]),"type"in me){var be=me.type;z.type=Fr[be]}var Nr=z.width,Ft=z.height,Ht=z.channels,qr=!1;"shape"in me?(Nr=me.shape[0],Ft=me.shape[1],me.shape.length===3&&(Ht=me.shape[2],qr=!0)):("radius"in me&&(Nr=Ft=me.radius),"width"in me&&(Nr=me.width),"height"in me&&(Ft=me.height),"channels"in me&&(Ht=me.channels,qr=!0)),z.width=Nr|0,z.height=Ft|0,z.channels=Ht|0;var N=!1;if("format"in me){var U=me.format,$=z.internalformat=yr[U];z.format=Zr[$],U in Fr&&("type"in me||(z.type=Fr[U])),U in Pe&&(z.compressed=!0),N=!0}!qr&&N?z.channels=Sn[z.format]:qr&&!N&&z.channels!==Ei[z.format]&&(z.format=z.internalformat=Ei[z.channels])}}function hr(z){M.pixelStorei(o1,z.flipY),M.pixelStorei(Ch,z.premultiplyAlpha),M.pixelStorei($f,z.colorSpace),M.pixelStorei(i1,z.unpackAlignment)}function fr(){Ie.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function vr(z,me){var be=null;if(Kf(me)?be=me:me&&(Sr(z,me),"x"in me&&(z.xOffset=me.x|0),"y"in me&&(z.yOffset=me.y|0),Kf(me.data)&&(be=me.data)),me.copy){var Nr=xe.viewportWidth,Ft=xe.viewportHeight;z.width=z.width||Nr-z.xOffset,z.height=z.height||Ft-z.yOffset,z.needsCopy=!0}else if(!be)z.width=z.width||1,z.height=z.height||1,z.channels=z.channels||4;else if(Xr(be))z.channels=z.channels||4,z.data=be,!("type"in me)&&z.type===So&&(z.type=Hv(be));else if(Bv(be))z.channels=z.channels||4,v1(z,be),z.alignment=1,z.needsFree=!0;else if(nt(be)){var Ht=be.data;!Array.isArray(Ht)&&z.type===So&&(z.type=Hv(Ht));var qr=be.shape,N=be.stride,U,$,pe,Te,ce,se;qr.length===3?(pe=qr[2],se=N[2]):(pe=1,se=1),U=qr[0],$=qr[1],Te=N[0],ce=N[1],z.alignment=1,z.width=U,z.height=$,z.channels=pe,z.format=z.internalformat=Ei[pe],z.needsFree=!0,Dh(z,Ht,Te,ce,se,be.offset)}else if(Gv(be)||Uv(be)||s1(be))Gv(be)||Uv(be)?z.element=be:z.element=be.canvas,z.width=z.element.width,z.height=z.element.height,z.channels=4;else if(f1(be))z.element=be,z.width=be.width,z.height=be.height,z.channels=4;else if(u1(be))z.element=be,z.width=be.naturalWidth,z.height=be.naturalHeight,z.channels=4;else if(c1(be))z.element=be,z.width=be.videoWidth,z.height=be.videoHeight,z.channels=4;else if(zv(be)){var re=z.width||be[0].length,W=z.height||be.length,K=z.channels;Si(be[0][0])?K=K||be[0][0].length:K=K||1;for(var Y=Se.shape(be),ve=1,Ce=0;Ce>=Ft,be.height>>=Ft,vr(be,Nr[Ft]),z.mipmask|=1<=0&&!("faces"in me)&&(z.genMipmaps=!0)}if("mag"in me){var Nr=me.mag;z.magFilter=ir[Nr]}var Ft=z.wrapS,Ht=z.wrapT;if("wrap"in me){var qr=me.wrap;typeof qr=="string"?Ft=Ht=or[qr]:Array.isArray(qr)&&(Ft=or[qr[0]],Ht=or[qr[1]])}else{if("wrapS"in me){var N=me.wrapS;Ft=or[N]}if("wrapT"in me){var U=me.wrapT;Ht=or[U]}}if(z.wrapS=Ft,z.wrapT=Ht,"anisotropic"in me){var $=me.anisotropic;z.anisotropic=me.anisotropic}if("mipmap"in me){var pe=!1;switch(typeof me.mipmap){case"string":z.mipmapHint=He[me.mipmap],z.genMipmaps=!0,pe=!0;break;case"boolean":pe=z.genMipmaps=me.mipmap;break;case"object":z.genMipmaps=!1,pe=!0;break;default:}pe&&!("min"in me)&&(z.minFilter=ds)}}function Wa(z,me){M.texParameteri(me,t1,z.minFilter),M.texParameteri(me,Jf,z.magFilter),M.texParameteri(me,lf,z.wrapS),M.texParameteri(me,e1,z.wrapT),B.ext_texture_filter_anisotropic&&M.texParameteri(me,n1,z.anisotropic),z.genMipmaps&&(M.hint(kh,z.mipmapHint),M.generateMipmap(me))}var sn=0,ya={},ga=V.maxTextureUnits,Ea=Array(ga).map(function(){return null});function At(z){Ie.call(this),this.mipmask=0,this.internalformat=mi,this.id=sn++,this.refCount=1,this.target=z,this.texture=M.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new Ut,_e.profile&&(this.stats={size:0})}function Da(z){M.activeTexture(Eo),M.bindTexture(z.target,z.texture)}function Wt(){var z=Ea[0];z?M.bindTexture(z.target,z.texture):M.bindTexture(Mn,null)}function ja(z){var me=z.texture,be=z.unit,Nr=z.target;be>=0&&(M.activeTexture(Eo+be),M.bindTexture(Nr,null),Ea[be]=null),M.deleteTexture(me),z.texture=null,z.params=null,z.pixels=null,z.refCount=0,delete ya[z.id],we.textureCount--}e(At.prototype,{bind:function(){var z=this;z.bindCount+=1;var me=z.unit;if(me<0){for(var be=0;be0)continue;Nr.unit=-1}Ea[be]=z,me=be;break}me>=ga,_e.profile&&we.maxTextureUnits>ce)-pe,se.height=se.height||(be.height>>ce)-Te,Da(be),Jr(se,Mn,pe,Te,ce),Wt(),Cr(se),Nr}function Ht(qr,N){var U=qr|0,$=N|0||U;if(U===be.width&&$===be.height)return Nr;Nr.width=be.width=U,Nr.height=be.height=$,Da(be);for(var pe=0;be.mipmask>>pe;++pe){var Te=U>>pe,ce=$>>pe;if(!Te||!ce)break;M.texImage2D(Mn,pe,be.format,Te,ce,0,be.format,be.type,null)}return Wt(),_e.profile&&(be.stats.size=Rl(be.internalformat,be.type,U,$,!1,!1)),Nr}return Nr(z,me),Nr.subimage=Ft,Nr.resize=Ht,Nr._reglType="texture2d",Nr._texture=be,_e.profile&&(Nr.stats=be.stats),Nr.destroy=function(){be.decRef()},Nr}function un(z,me,be,Nr,Ft,Ht){var qr=new At(Ll);ya[qr.id]=qr,we.cubeCount++;var N=new Array(6);function U(Te,ce,se,re,W,K){var Y,ve=qr.texInfo;for(Ut.call(ve),Y=0;Y<6;++Y)N[Y]=Dt();if(typeof Te=="number"||!Te){var Ce=Te|0||1;for(Y=0;Y<6;++Y)ut(N[Y],Ce,Ce)}else if(typeof Te=="object")if(ce)St(N[0],Te),St(N[1],ce),St(N[2],se),St(N[3],re),St(N[4],W),St(N[5],K);else if(Ua(ve,Te),Sr(qr,Te),"faces"in Te){var Je=Te.faces;for(Y=0;Y<6;++Y)qe(N[Y],qr),St(N[Y],Je[Y])}else for(Y=0;Y<6;++Y)St(N[Y],Te);for(qe(qr,N[0]),ve.genMipmaps?qr.mipmask=(N[0].width<<1)-1:qr.mipmask=N[0].mipmask,qr.internalformat=N[0].internalformat,U.width=N[0].width,U.height=N[0].height,Da(qr),Y=0;Y<6;++Y)aa(N[Y],Bo+Y);for(Wa(ve,Ll),Wt(),_e.profile&&(qr.stats.size=Rl(qr.internalformat,qr.type,U.width,U.height,ve.genMipmaps,!0)),U.format=Ze[qr.internalformat],U.type=nr[qr.type],U.mag=Oe[ve.magFilter],U.min=br[ve.minFilter],U.wrapS=dr[ve.wrapS],U.wrapT=dr[ve.wrapT],Y=0;Y<6;++Y)ln(N[Y]);return U}function $(Te,ce,se,re,W){var K=se|0,Y=re|0,ve=W|0,Ce=mr();return qe(Ce,qr),Ce.width=0,Ce.height=0,vr(Ce,ce),Ce.width=Ce.width||(qr.width>>ve)-K,Ce.height=Ce.height||(qr.height>>ve)-Y,Da(qr),Jr(Ce,Bo+Te,K,Y,ve),Wt(),Cr(Ce),U}function pe(Te){var ce=Te|0;if(ce!==qr.width){U.width=qr.width=ce,U.height=qr.height=ce,Da(qr);for(var se=0;se<6;++se)for(var re=0;qr.mipmask>>re;++re)M.texImage2D(Bo+se,re,qr.format,ce>>re,ce>>re,0,qr.format,qr.type,null);return Wt(),_e.profile&&(qr.stats.size=Rl(qr.internalformat,qr.type,U.width,U.height,!1,!0)),U}}return U(z,me,be,Nr,Ft,Ht),U.subimage=$,U.resize=pe,U._reglType="textureCube",U._texture=qr,_e.profile&&(U.stats=qr.stats),U.destroy=function(){qr.decRef()},U}function pt(){for(var z=0;z>Nr,be.height>>Nr,0,be.internalformat,be.type,null);else for(var Ft=0;Ft<6;++Ft)M.texImage2D(Bo+Ft,Nr,be.internalformat,be.width>>Nr,be.height>>Nr,0,be.internalformat,be.type,null);Wa(be.texInfo,be.target)})}function Qt(){for(var z=0;z=0?ln=!0:or.indexOf(Ut)>=0&&(ln=!1))),("depthTexture"in At||"depthStencilTexture"in At)&&(Ea=!!(At.depthTexture||At.depthStencilTexture)),"depth"in At&&(typeof At.depth=="boolean"?aa=At.depth:(sn=At.depth,Sa=!1)),"stencil"in At&&(typeof At.stencil=="boolean"?Sa=At.stencil:(ya=At.stencil,aa=!1)),"depthStencil"in At&&(typeof At.depthStencil=="boolean"?aa=Sa=At.depthStencil:(ga=At.depthStencil,aa=!1,Sa=!1))}var Wt=null,ja=null,fn=null,un=null;if(Array.isArray(Dt))Wt=Dt.map(Pe);else if(Dt)Wt=[Pe(Dt)];else for(Wt=new Array(Wa),ft=0;ft0&&(Cr.depth=vr[0].depth,Cr.stencil=vr[0].stencil,Cr.depthStencil=vr[0].depthStencil),vr[mr]?vr[mr](Cr):vr[mr]=qe(Cr)}return e(Er,{width:ft,height:ft,color:Ut})}function Jr(ct){var mr,Cr=ct|0;if(Cr===Er.width)return Er;var ft=Er.color;for(mr=0;mr=ft.byteLength?ut.subdata(ft):(ut.destroy(),qe.buffers[ct]=null)),qe.buffers[ct]||(ut=qe.buffers[ct]=xe.create(mr,t0,!1,!0)),Cr.buffer=xe.getBuffer(ut),Cr.size=Cr.buffer.dimension|0,Cr.normalized=!1,Cr.type=Cr.buffer.dtype,Cr.offset=0,Cr.stride=0,Cr.divisor=0,Cr.state=1,Er[ct]=1}else xe.getBuffer(mr)?(Cr.buffer=xe.getBuffer(mr),Cr.size=Cr.buffer.dimension|0,Cr.normalized=!1,Cr.type=Cr.buffer.dtype,Cr.offset=0,Cr.stride=0,Cr.divisor=0,Cr.state=1):xe.getBuffer(mr.buffer)?(Cr.buffer=xe.getBuffer(mr.buffer),Cr.size=(+mr.size||Cr.buffer.dimension)|0,Cr.normalized=!!mr.normalized||!1,"type"in mr?Cr.type=hn[mr.type]:Cr.type=Cr.buffer.dtype,Cr.offset=(mr.offset||0)|0,Cr.stride=(mr.stride||0)|0,Cr.divisor=(mr.divisor||0)|0,Cr.state=1):"x"in mr&&(Cr.x=+mr.x||0,Cr.y=+mr.y||0,Cr.z=+mr.z||0,Cr.w=+mr.w||0,Cr.state=2)}for(var St=0;St1)for(var hr=0;hrfe&&(fe=ke.stats.uniformsCount)}),fe},V.getMaxAttributesCount=function(){var fe=0;return sr.forEach(function(ke){ke.stats.attributesCount>fe&&(fe=ke.stats.attributesCount)}),fe});function Pe(){xe={},we={};for(var fe=0;fe16&&(V=cl(V,M.length*8));for(var he=Array(16),xe=Array(16),we=0;we<16;we++)he[we]=V[we]^909522486,xe[we]=V[we]^1549556828;var _e=cl(he.concat(au(B)),512+B.length*8);return o0(cl(xe.concat(_e),768))}function Ih(M){for(var B=Ph?"0123456789ABCDEF":"0123456789abcdef",V="",he,xe=0;xe>>4&15)+B.charAt(he&15);return V}function S1(M){for(var B="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",V="",he=M.length,xe=0;xeM.length*8?V+=T1:V+=B.charAt(we>>>6*(3-_e)&63);return V}function E1(M,B){var V=B.length,he=Array(),xe,we,_e,He,or=Array(Math.ceil(M.length/2));for(xe=0;xe0;){for(He=Array(),_e=0,xe=0;xe0||we>0)&&(He[He.length]=we);he[he.length]=_e,or=He}var ir="";for(xe=he.length-1;xe>=0;xe--)ir+=B.charAt(he[xe]);var sr=Math.ceil(M.length*8/(Math.log(B.length)/Math.log(2)));for(xe=ir.length;xe>>6&31,128|he&63):he<=65535?B+=String.fromCharCode(224|he>>>12&15,128|he>>>6&63,128|he&63):he<=2097151&&(B+=String.fromCharCode(240|he>>>18&7,128|he>>>12&63,128|he>>>6&63,128|he&63));return B}function au(M){for(var B=Array(M.length>>2),V=0;V>5]|=(M.charCodeAt(V/8)&255)<<24-V%32;return B}function o0(M){for(var B="",V=0;V>5]>>>24-V%32&255);return B}function Bn(M,B){return M>>>B|M<<32-B}function l0(M,B){return M>>>B}function Oh(M,B,V){return M&B^~M&V}function Bh(M,B,V){return M&B^M&V^B&V}function s0(M){return Bn(M,2)^Bn(M,13)^Bn(M,22)}function zh(M){return Bn(M,6)^Bn(M,11)^Bn(M,25)}function sc(M){return Bn(M,7)^Bn(M,18)^l0(M,3)}function fc(M){return Bn(M,17)^Bn(M,19)^l0(M,10)}var C1=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function cl(M,B){var V=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),he=new Array(64),xe,we,_e,He,or,ir,sr,Qr,Fr,yr,Pe,fe;for(M[B>>5]|=128<<24-B%32,M[(B+64>>9<<4)+15]=B,Fr=0;Fr>16)+(B>>16)+(V>>16);return he<<16|V&65535}function Co(M){return Array.prototype.slice.call(M)}function Lo(M){return Co(M).join("")}function Gh(M){var B=M&&M.cache,V=0,he=[],xe=[],we=[];function _e(Pe,fe){var ke=fe&&fe.stable;if(!ke){for(var Ze=0;Ze0&&(Pe.push(nr,"="),Pe.push.apply(Pe,Co(arguments)),Pe.push(";")),nr}return e(fe,{def:Ze,toString:function(){return Lo([ke.length>0?"var "+ke.join(",")+";":"",Lo(Pe)])}})}function or(){var Pe=He(),fe=He(),ke=Pe.toString,Ze=fe.toString;function nr(Oe,br){fe(Oe,br,"=",Pe.def(Oe,br),";")}return e(function(){Pe.apply(Pe,Co(arguments))},{def:Pe.def,entry:Pe,exit:fe,save:nr,set:function(Oe,br,dr){nr(Oe,br),Pe(Oe,br,"=",dr,";")},toString:function(){return ke()+Ze()}})}function ir(){var Pe=Lo(arguments),fe=or(),ke=or(),Ze=fe.toString,nr=ke.toString;return e(fe,{then:function(){return fe.apply(fe,Co(arguments)),this},else:function(){return ke.apply(ke,Co(arguments)),this},toString:function(){var Oe=nr();return Oe&&(Oe="else{"+Oe+"}"),Lo(["if(",Pe,"){",Ze(),"}",Oe])}})}var sr=He(),Qr={};function Fr(Pe,fe){var ke=[];function Ze(){var Zr="a"+ke.length;return ke.push(Zr),Zr}fe=fe||0;for(var nr=0;nr":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Fe={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Ge={cw:w,ccw:C};function Ke(S){return Array.isArray(S)||Xr(S)||nt(S)}function ar(S){return S.sort(function(B,V){return B===si?-1:V===si?1:B=1,he>=2,B)}else if(V===ws){var xe=S.data;return new Le(xe.thisDep,xe.contextDep,xe.propDep,B)}else{if(V===vc)return new Le(!1,!1,!1,B);if(V===vf){for(var we=!1,_e=!1,He=!1,or=0;or=1&&(_e=!0),sr>=2&&(He=!0)}else ir.type===ws&&(we=we||ir.data.thisDep,_e=_e||ir.data.contextDep,He=He||ir.data.propDep)}return new Le(we,_e,He,B)}else return new Le(V===cf,V===cc,V===uf,B)}}var yt=new Le(!1,!1,!1,function(){});function Ct(S,B,V,he,xe,we,_e,He,or,ir,sr,Qr,Fr,yr,Pe,fe){var ke=ir.Record,Ze={add:32774,subtract:32778,"reverse subtract":32779};V.ext_blend_minmax&&(Ze.min=L,Ze.max=D);var nr=V.angle_instanced_arrays,Oe=V.webgl_draw_buffers,br=V.oes_vertex_array_object,dr={dirty:!0,profile:fe.profile},Zr={},Ie=[],qe={},Sr={};function hr(N){return N.replace(".","_")}function fr(N,U,$){var pe=hr(N);Ie.push(N),Zr[pe]=dr[pe]=!!$,qe[pe]=U}function vr(N,U,$){var pe=hr(N);Ie.push(N),Array.isArray($)?(dr[pe]=$.slice(),Zr[pe]=$.slice()):dr[pe]=Zr[pe]=$,Sr[pe]=U}function Er(N){return!!isNaN(N)}fr(hc,q1),fr(f0,F1),vr(u0,"blendColor",[0,0,0,0]),vr(iu,"blendEquationSeparate",[ie,ie]),vr(ou,"blendFuncSeparate",[ne,j,ne,j]),fr(dc,Vh,!0),vr(pc,"depthFunc",ye),vr(mc,"depthRange",[0,1]),vr(yc,"depthMask",!0),vr(lu,lu,[!0,!0,!0,!0]),fr(hf,Hh),vr(c0,"cullFace",g),vr(su,su,C),vr(df,df,1),fr(gc,wc),vr(fu,"polygonOffset",[0,0]),fr(pf,Wh),fr(mf,Ac),vr(yf,"sampleCoverage",[1,!1]),fr(bc,R1),vr(uu,"stencilMask",-1),vr(Ci,"stencilFunc",[G,0,-1]),vr(gf,"stencilOpSeparate",[h,R,R,R]),vr(vl,"stencilOpSeparate",[g,R,R,R]),fr(cu,Yh),vr(hl,"scissor",[0,0,S.drawingBufferWidth,S.drawingBufferHeight]),vr(si,si,[0,0,S.drawingBufferWidth,S.drawingBufferHeight]);var Jr={gl:S,context:Fr,strings:B,next:Zr,current:dr,draw:Qr,elements:we,buffer:xe,shader:sr,attributes:ir.state,vao:ir,uniforms:or,framebuffer:He,extensions:V,timer:yr,isBufferArgs:Ke},ct={primTypes:Oo,compareFuncs:Me,blendFuncs:Qe,blendEquations:Ze,stencilOps:Fe,glTypes:hn,orientationType:Ge};Oe&&(ct.backBuffer=[g],ct.drawBuffer=k(he.maxDrawbuffers,function(N){return N===0?[0]:k(N,function(U){return Ye+U})}));var mr=0;function Cr(){var N=Gh({cache:Pe}),U=N.link,$=N.global;N.id=mr++,N.batchId="0";var pe=U(Jr),Te=N.shared={props:"a0"};Object.keys(Jr).forEach(function(K){Te[K]=$.def(pe,".",K)});var ue=N.next={},se=N.current={};Object.keys(Sr).forEach(function(K){Array.isArray(dr[K])&&(ue[K]=$.def(Te.next,".",K),se[K]=$.def(Te.current,".",K))});var re=N.constants={};Object.keys(ct).forEach(function(K){re[K]=$.def(JSON.stringify(ct[K]))}),N.invoke=function(K,Y){switch(Y.type){case nu:var ve=["this",Te.context,Te.props,N.batchId];return K.def(U(Y.data),".call(",ve.slice(0,Math.max(Y.data.length+1,4)),")");case uf:return K.def(Te.props,Y.data);case cc:return K.def(Te.context,Y.data);case cf:return K.def("this",Y.data);case ws:return Y.data.append(N,K),Y.data.ref;case vc:return Y.data.toString();case vf:return Y.data.map(function(Ce){return N.invoke(K,Ce)})}},N.attribCache={};var W={};return N.scopeAttrib=function(K){var Y=B.id(K);if(Y in W)return W[Y];var ve=ir.scope[Y];ve||(ve=ir.scope[Y]=new ke);var Ce=W[Y]=U(ve);return Ce},N}function ft(N){var U=N.static,$=N.dynamic,pe;if(As in U){var Te=!!U[As];pe=zr(function(se,re){return Te}),pe.enable=Te}else if(As in $){var ue=$[As];pe=it(ue,function(se,re){return se.invoke(re,ue)})}return pe}function ut(N,U){var $=N.static,pe=N.dynamic;if(Do in $){var Te=$[Do];return Te?(Te=He.getFramebuffer(Te),zr(function(se,re){var W=se.link(Te),K=se.shared;re.set(K.framebuffer,".next",W);var Y=K.context;return re.set(Y,"."+$i,W+".width"),re.set(Y,"."+Qi,W+".height"),W})):zr(function(se,re){var W=se.shared;re.set(W.framebuffer,".next","null");var K=W.context;return re.set(K,"."+$i,K+"."+xc),re.set(K,"."+Qi,K+"."+_c),"null"})}else if(Do in pe){var ue=pe[Do];return it(ue,function(se,re){var W=se.invoke(re,ue),K=se.shared,Y=K.framebuffer,ve=re.def(Y,".getFramebuffer(",W,")");re.set(Y,".next",ve);var Ce=K.context;return re.set(Ce,"."+$i,ve+"?"+ve+".width:"+Ce+"."+xc),re.set(Ce,"."+Qi,ve+"?"+ve+".height:"+Ce+"."+_c),ve})}else return null}function St(N,U,$){var pe=N.static,Te=N.dynamic;function ue(W){if(W in pe){var K=pe[W],Y=!0,ve=K.x|0,Ce=K.y|0,Je,et;return"width"in K?Je=K.width|0:Y=!1,"height"in K?et=K.height|0:Y=!1,new Le(!Y&&U&&U.thisDep,!Y&&U&&U.contextDep,!Y&&U&&U.propDep,function($r,Gr){var Br=$r.shared.context,Mr=Je;"width"in K||(Mr=Gr.def(Br,".",$i,"-",ve));var Rr=et;return"height"in K||(Rr=Gr.def(Br,".",Qi,"-",Ce)),[ve,Ce,Mr,Rr]})}else if(W in Te){var kr=Te[W],Tr=it(kr,function($r,Gr){var Br=$r.invoke(Gr,kr),Mr=$r.shared.context,Rr=Gr.def(Br,".x|0"),Or=Gr.def(Br,".y|0"),vt=Gr.def('"width" in ',Br,"?",Br,".width|0:","(",Mr,".",$i,"-",Rr,")"),Kt=Gr.def('"height" in ',Br,"?",Br,".height|0:","(",Mr,".",Qi,"-",Or,")");return[Rr,Or,vt,Kt]});return U&&(Tr.thisDep=Tr.thisDep||U.thisDep,Tr.contextDep=Tr.contextDep||U.contextDep,Tr.propDep=Tr.propDep||U.propDep),Tr}else return U?new Le(U.thisDep,U.contextDep,U.propDep,function($r,Gr){var Br=$r.shared.context;return[0,0,Gr.def(Br,".",$i),Gr.def(Br,".",Qi)]}):null}var se=ue(si);if(se){var re=se;se=new Le(se.thisDep,se.contextDep,se.propDep,function(W,K){var Y=re.append(W,K),ve=W.shared.context;return K.set(ve,"."+L1,Y[2]),K.set(ve,"."+D1,Y[3]),Y})}return{viewport:se,scissor_box:ue(hl)}}function aa(N,U){var $=N.static,pe=typeof $[dl]=="string"&&typeof $[Vo]=="string";if(pe){if(Object.keys(U.dynamic).length>0)return null;var Te=U.static,ue=Object.keys(Te);if(ue.length>0&&typeof Te[ue[0]]=="number"){for(var se=[],re=0;re"+Rr+"?"+Y+".constant["+Rr+"]:0;"}).join(""),"}}else{","if(",Je,"(",Y,".buffer)){",$r,"=",et,".createStream(",vo,",",Y,".buffer);","}else{",$r,"=",et,".getBuffer(",Y,".buffer);","}",Gr,'="type" in ',Y,"?",Ce.glTypes,"[",Y,".type]:",$r,".dtype;",kr.normalized,"=!!",Y,".normalized;");function Br(Mr){K(kr[Mr],"=",Y,".",Mr,"|0;")}return Br("size"),Br("offset"),Br("stride"),Br("divisor"),K("}}"),K.exit("if(",kr.isStream,"){",et,".destroyStream(",$r,");","}"),kr}Te[ue]=it(se,re)}),Te}function Wa(N){var U=N.static,$=N.dynamic,pe={};return Object.keys(U).forEach(function(Te){var ue=U[Te];pe[Te]=zr(function(se,re){return typeof ue=="number"||typeof ue=="boolean"?""+ue:se.link(ue)})}),Object.keys($).forEach(function(Te){var ue=$[Te];pe[Te]=it(ue,function(se,re){return se.invoke(re,ue)})}),pe}function sn(N,U,$,pe,Te){var ue=N.static,se=N.dynamic,re=aa(N,U),W=ut(N,Te),K=St(N,W,Te),Y=Dt(N,Te),ve=ln(N,Te),Ce=Sa(N,Te,re);function Je(Br){var Mr=K[Br];Mr&&(ve[Br]=Mr)}Je(si),Je(hr(hl));var et=Object.keys(ve).length>0,kr={framebuffer:W,draw:Y,shader:Ce,state:ve,dirty:et,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(kr.profile=ft(N,Te),kr.uniforms=Ut($,Te),kr.drawVAO=kr.scopeVAO=Y.vao,!kr.drawVAO&&Ce.program&&!re&&V.angle_instanced_arrays&&Y.static.elements){var Tr=!0,$r=Ce.program.attributes.map(function(Br){var Mr=U.static[Br];return Tr=Tr&&!!Mr,Mr});if(Tr&&$r.length>0){var Gr=ir.getVAO(ir.createVAO({attributes:$r,elements:Y.static.elements}));kr.drawVAO=new Le(null,null,null,function(Br,Mr){return Br.link(Gr)}),kr.useVAO=!0}}return re?kr.useVAO=!0:kr.attributes=Ua(U,Te),kr.context=Wa(pe,Te),kr}function ya(N,U,$){var pe=N.shared,Te=pe.context,ue=N.scope();Object.keys($).forEach(function(se){U.save(Te,"."+se);var re=$[se],W=re.append(N,U);Array.isArray(W)?ue(Te,".",se,"=[",W.join(),"];"):ue(Te,".",se,"=",W,";")}),U(ue)}function ga(N,U,$,pe){var Te=N.shared,ue=Te.gl,se=Te.framebuffer,re;Oe&&(re=U.def(Te.extensions,".webgl_draw_buffers"));var W=N.constants,K=W.drawBuffer,Y=W.backBuffer,ve;$?ve=$.append(N,U):ve=U.def(se,".next"),pe||U("if(",ve,"!==",se,".cur){"),U("if(",ve,"){",ue,".bindFramebuffer(",ge,",",ve,".framebuffer);"),Oe&&U(re,".drawBuffersWEBGL(",K,"[",ve,".colorAttachments.length]);"),U("}else{",ue,".bindFramebuffer(",ge,",null);"),Oe&&U(re,".drawBuffersWEBGL(",Y,");"),U("}",se,".cur=",ve,";"),pe||U("}")}function Ea(N,U,$){var pe=N.shared,Te=pe.gl,ue=N.current,se=N.next,re=pe.current,W=pe.next,K=N.cond(re,".dirty");Ie.forEach(function(Y){var ve=hr(Y);if(!(ve in $.state)){var Ce,Je;if(ve in se){Ce=se[ve],Je=ue[ve];var et=k(dr[ve].length,function(Tr){return K.def(Ce,"[",Tr,"]")});K(N.cond(et.map(function(Tr,$r){return Tr+"!=="+Je+"["+$r+"]"}).join("||")).then(Te,".",Sr[ve],"(",et,");",et.map(function(Tr,$r){return Je+"["+$r+"]="+Tr}).join(";"),";"))}else{Ce=K.def(W,".",ve);var kr=N.cond(Ce,"!==",re,".",ve);K(kr),ve in qe?kr(N.cond(Ce).then(Te,".enable(",qe[ve],");").else(Te,".disable(",qe[ve],");"),re,".",ve,"=",Ce,";"):kr(Te,".",Sr[ve],"(",Ce,");",re,".",ve,"=",Ce,";")}}}),Object.keys($.state).length===0&&K(re,".dirty=false;"),U(K)}function At(N,U,$,pe){var Te=N.shared,ue=N.current,se=Te.current,re=Te.gl,W;ar(Object.keys($)).forEach(function(K){var Y=$[K];if(!(pe&&!pe(Y))){var ve=Y.append(N,U);if(qe[K]){var Ce=qe[K];Dr(Y)?(W=N.link(ve,{stable:!0}),U(N.cond(W).then(re,".enable(",Ce,");").else(re,".disable(",Ce,");")),U(se,".",K,"=",W,";")):(U(N.cond(ve).then(re,".enable(",Ce,");").else(re,".disable(",Ce,");")),U(se,".",K,"=",ve,";"))}else if(Si(ve)){var Je=ue[K];U(re,".",Sr[K],"(",ve,");",ve.map(function(et,kr){return Je+"["+kr+"]="+et}).join(";"),";")}else Dr(Y)?(W=N.link(ve,{stable:!0}),U(re,".",Sr[K],"(",W,");",se,".",K,"=",W,";")):U(re,".",Sr[K],"(",ve,");",se,".",K,"=",ve,";")}})}function Da(N,U){nr&&(N.instancing=U.def(N.shared.extensions,".angle_instanced_arrays"))}function Wt(N,U,$,pe,Te){var ue=N.shared,se=N.stats,re=ue.current,W=ue.timer,K=$.profile;function Y(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var ve,Ce;function Je(Br){ve=U.def(),Br(ve,"=",Y(),";"),typeof Te=="string"?Br(se,".count+=",Te,";"):Br(se,".count++;"),yr&&(pe?(Ce=U.def(),Br(Ce,"=",W,".getNumPendingQueries();")):Br(W,".beginQuery(",se,");"))}function et(Br){Br(se,".cpuTime+=",Y(),"-",ve,";"),yr&&(pe?Br(W,".pushScopeStats(",Ce,",",W,".getNumPendingQueries(),",se,");"):Br(W,".endQuery();"))}function kr(Br){var Mr=U.def(re,".profile");U(re,".profile=",Br,";"),U.exit(re,".profile=",Mr,";")}var Tr;if(K){if(Dr(K)){K.enable?(Je(U),et(U.exit),kr("true")):kr("false");return}Tr=K.append(N,U),kr(Tr)}else Tr=U.def(re,".profile");var $r=N.block();Je($r),U("if(",Tr,"){",$r,"}");var Gr=N.block();et(Gr),U.exit("if(",Tr,"){",Gr,"}")}function ja(N,U,$,pe,Te){var ue=N.shared;function se(W){switch(W){case pl:case Il:case Ol:return 2;case on:case Ts:case _f:return 3;case xf:case du:case mu:return 4;default:return 1}}function re(W,K,Y){var ve=ue.gl,Ce=U.def(W,".location"),Je=U.def(ue.attributes,"[",Ce,"]"),et=Y.state,kr=Y.buffer,Tr=[Y.x,Y.y,Y.z,Y.w],$r=["buffer","normalized","offset","stride"];function Gr(){U("if(!",Je,".buffer){",ve,".enableVertexAttribArray(",Ce,");}");var Mr=Y.type,Rr;if(Y.size?Rr=U.def(Y.size,"||",K):Rr=K,U("if(",Je,".type!==",Mr,"||",Je,".size!==",Rr,"||",$r.map(function(vt){return Je+"."+vt+"!=="+Y[vt]}).join("||"),"){",ve,".bindBuffer(",vo,",",kr,".buffer);",ve,".vertexAttribPointer(",[Ce,Rr,Mr,Y.normalized,Y.stride,Y.offset],");",Je,".type=",Mr,";",Je,".size=",Rr,";",$r.map(function(vt){return Je+"."+vt+"="+Y[vt]+";"}).join(""),"}"),nr){var Or=Y.divisor;U("if(",Je,".divisor!==",Or,"){",N.instancing,".vertexAttribDivisorANGLE(",[Ce,Or],");",Je,".divisor=",Or,";}")}}function Br(){U("if(",Je,".buffer){",ve,".disableVertexAttribArray(",Ce,");",Je,".buffer=null;","}if(",fo.map(function(Mr,Rr){return Je+"."+Mr+"!=="+Tr[Rr]}).join("||"),"){",ve,".vertexAttrib4f(",Ce,",",Tr,");",fo.map(function(Mr,Rr){return Je+"."+Mr+"="+Tr[Rr]+";"}).join(""),"}")}et===Ji?Gr():et===_s?Br():(U("if(",et,"===",Ji,"){"),Gr(),U("}else{"),Br(),U("}"))}pe.forEach(function(W){var K=W.name,Y=$.attributes[K],ve;if(Y){if(!Te(Y))return;ve=Y.append(N,U)}else{if(!Te(yt))return;var Ce=N.scopeAttrib(K);ve={},Object.keys(new ke).forEach(function(Je){ve[Je]=U.def(Ce,".",Je)})}re(N.link(W),se(W.info.type),ve)})}function fn(N,U,$,pe,Te,ue){for(var se=N.shared,re=se.gl,W,K=0;K1){for(var cn=[],Di=[],Ki=0;Ki>1)",kr],");")}function Or(){$(Tr,".drawArraysInstancedANGLE(",[Ce,Je,et,kr],");")}Y&&Y!=="null"?Gr?Rr():($("if(",Y,"){"),Rr(),$("}else{"),Or(),$("}")):Or()}function Mr(){function Rr(){$(ue+".drawElements("+[Ce,et,$r,Je+"<<(("+$r+"-"+uc+")>>1)"]+");")}function Or(){$(ue+".drawArrays("+[Ce,Je,et]+");")}Y&&Y!=="null"?Gr?Rr():($("if(",Y,"){"),Rr(),$("}else{"),Or(),$("}")):Or()}nr&&(typeof kr!="number"||kr>=0)?typeof kr=="string"?($("if(",kr,">0){"),Br(),$("}else if(",kr,"<0){"),Mr(),$("}")):Br():Mr()}function pt(N,U,$,pe,Te){var ue=Cr(),se=ue.proc("body",Te);return nr&&(ue.instancing=se.def(ue.shared.extensions,".angle_instanced_arrays")),N(ue,se,$,pe),ue.compile().body}function Rt(N,U,$,pe){Da(N,U),$.useVAO?$.drawVAO?U(N.shared.vao,".setVAO(",$.drawVAO.append(N,U),");"):U(N.shared.vao,".setVAO(",N.shared.vao,".targetVAO);"):(U(N.shared.vao,".setVAO(null);"),ja(N,U,$,pe.attributes,function(){return!0})),fn(N,U,$,pe.uniforms,function(){return!0},!1),un(N,U,U,$)}function Qt(N,U){var $=N.proc("draw",1);Da(N,$),ya(N,$,U.context),ga(N,$,U.framebuffer),Ea(N,$,U),At(N,$,U.state),Wt(N,$,U,!1,!0);var pe=U.shader.progVar.append(N,$);if($(N.shared.gl,".useProgram(",pe,".program);"),U.shader.program)Rt(N,$,U,U.shader.program);else{$(N.shared.vao,".setVAO(null);");var Te=N.global.def("{}"),ue=$.def(pe,".id"),se=$.def(Te,"[",ue,"]");$(N.cond(se).then(se,".call(this,a0);").else(se,"=",Te,"[",ue,"]=",N.link(function(re){return pt(Rt,N,U,re,1)}),"(",pe,");",se,".call(this,a0);"))}Object.keys(U.state).length>0&&$(N.shared.current,".dirty=true;"),N.shared.vao&&$(N.shared.vao,".setVAO(null);")}function z(N,U,$,pe){N.batchId="a1",Da(N,U);function Te(){return!0}ja(N,U,$,pe.attributes,Te),fn(N,U,$,pe.uniforms,Te,!1),un(N,U,U,$)}function me(N,U,$,pe){Da(N,U);var Te=$.contextDep,ue=U.def(),se="a0",re="a1",W=U.def();N.shared.props=W,N.batchId=ue;var K=N.scope(),Y=N.scope();U(K.entry,"for(",ue,"=0;",ue,"<",re,";++",ue,"){",W,"=",se,"[",ue,"];",Y,"}",K.exit);function ve($r){return $r.contextDep&&Te||$r.propDep}function Ce($r){return!ve($r)}if($.needsContext&&ya(N,Y,$.context),$.needsFramebuffer&&ga(N,Y,$.framebuffer),At(N,Y,$.state,ve),$.profile&&ve($.profile)&&Wt(N,Y,$,!1,!0),pe)$.useVAO?$.drawVAO?ve($.drawVAO)?Y(N.shared.vao,".setVAO(",$.drawVAO.append(N,Y),");"):K(N.shared.vao,".setVAO(",$.drawVAO.append(N,K),");"):K(N.shared.vao,".setVAO(",N.shared.vao,".targetVAO);"):(K(N.shared.vao,".setVAO(null);"),ja(N,K,$,pe.attributes,Ce),ja(N,Y,$,pe.attributes,ve)),fn(N,K,$,pe.uniforms,Ce,!1),fn(N,Y,$,pe.uniforms,ve,!0),un(N,K,Y,$);else{var Je=N.global.def("{}"),et=$.shader.progVar.append(N,Y),kr=Y.def(et,".id"),Tr=Y.def(Je,"[",kr,"]");Y(N.shared.gl,".useProgram(",et,".program);","if(!",Tr,"){",Tr,"=",Je,"[",kr,"]=",N.link(function($r){return pt(z,N,$,$r,2)}),"(",et,");}",Tr,".call(this,a0[",ue,"],",ue,");")}}function be(N,U){var $=N.proc("batch",2);N.batchId="0",Da(N,$);var pe=!1,Te=!0;Object.keys(U.context).forEach(function(Je){pe=pe||U.context[Je].propDep}),pe||(ya(N,$,U.context),Te=!1);var ue=U.framebuffer,se=!1;ue?(ue.propDep?pe=se=!0:ue.contextDep&&pe&&(se=!0),se||ga(N,$,ue)):ga(N,$,null),U.state.viewport&&U.state.viewport.propDep&&(pe=!0);function re(Je){return Je.contextDep&&pe||Je.propDep}Ea(N,$,U),At(N,$,U.state,function(Je){return!re(Je)}),(!U.profile||!re(U.profile))&&Wt(N,$,U,!1,"a1"),U.contextDep=pe,U.needsContext=Te,U.needsFramebuffer=se;var W=U.shader.progVar;if(W.contextDep&&pe||W.propDep)me(N,$,U,null);else{var K=W.append(N,$);if($(N.shared.gl,".useProgram(",K,".program);"),U.shader.program)me(N,$,U,U.shader.program);else{$(N.shared.vao,".setVAO(null);");var Y=N.global.def("{}"),ve=$.def(K,".id"),Ce=$.def(Y,"[",ve,"]");$(N.cond(Ce).then(Ce,".call(this,a0,a1);").else(Ce,"=",Y,"[",ve,"]=",N.link(function(Je){return pt(me,N,U,Je,2)}),"(",K,");",Ce,".call(this,a0,a1);"))}}Object.keys(U.state).length>0&&$(N.shared.current,".dirty=true;"),N.shared.vao&&$(N.shared.vao,".setVAO(null);")}function Nr(N,U){var $=N.proc("scope",3);N.batchId="a2";var pe=N.shared,Te=pe.current;if(ya(N,$,U.context),U.framebuffer&&U.framebuffer.append(N,$),ar(Object.keys(U.state)).forEach(function(re){var W=U.state[re],K=W.append(N,$);Si(K)?K.forEach(function(Y,ve){Er(Y)?$.set(N.next[re],"["+ve+"]",Y):$.set(N.next[re],"["+ve+"]",N.link(Y,{stable:!0}))}):Dr(W)?$.set(pe.next,"."+re,N.link(K,{stable:!0})):$.set(pe.next,"."+re,K)}),Wt(N,$,U,!0,!0),[uo,vu,qo,gi,Fo].forEach(function(re){var W=U.draw[re];if(W){var K=W.append(N,$);Er(K)?$.set(pe.draw,"."+re,K):$.set(pe.draw,"."+re,N.link(K),{stable:!0})}}),Object.keys(U.uniforms).forEach(function(re){var W=U.uniforms[re].append(N,$);Array.isArray(W)&&(W="["+W.map(function(K){return Er(K)?K:N.link(K,{stable:!0})})+"]"),$.set(pe.uniforms,"["+N.link(B.id(re),{stable:!0})+"]",W)}),Object.keys(U.attributes).forEach(function(re){var W=U.attributes[re].append(N,$),K=N.scopeAttrib(re);Object.keys(new ke).forEach(function(Y){$.set(K,"."+Y,W[Y])})}),U.scopeVAO){var ue=U.scopeVAO.append(N,$);Er(ue)?$.set(pe.vao,".targetVAO",ue):$.set(pe.vao,".targetVAO",N.link(ue,{stable:!0}))}function se(re){var W=U.shader[re];if(W){var K=W.append(N,$);Er(K)?$.set(pe.shader,"."+re,K):$.set(pe.shader,"."+re,N.link(K,{stable:!0}))}}se(Vo),se(dl),Object.keys(U.state).length>0&&($(Te,".dirty=true;"),$.exit(Te,".dirty=true;")),$("a1(",N.shared.context,",a0,",N.batchId,");")}function Ft(N){if(!(typeof N!="object"||Si(N))){for(var U=Object.keys(N),$=0;$=0;--pt){var Rt=Jr[pt];Rt&&Rt(Pe,null,0)}V.flush(),sr&&sr.update()}function St(){!ft&&Jr.length>0&&(ft=d.next(ut))}function aa(){ft&&(d.cancel(ut),ft=null)}function Sa(pt){pt.preventDefault(),xe=!0,aa(),ct.forEach(function(Rt){Rt()})}function Dt(pt){V.getError(),xe=!1,we.restore(),Zr.restore(),nr.restore(),Ie.restore(),qe.restore(),Sr.restore(),br.restore(),sr&&sr.restore(),hr.procs.refresh(),St(),mr.forEach(function(Rt){Rt()})}Er&&(Er.addEventListener(jt,Sa,!1),Er.addEventListener(va,Dt,!1));function ln(){Jr.length=0,aa(),Er&&(Er.removeEventListener(jt,Sa),Er.removeEventListener(va,Dt)),Zr.clear(),Sr.clear(),qe.clear(),br.clear(),Ie.clear(),Oe.clear(),nr.clear(),sr&&sr.clear(),Cr.forEach(function(pt){pt()})}function Ut(pt){function Rt(ue){var se=e({},ue);delete se.uniforms,delete se.attributes,delete se.context,delete se.vao,"stencil"in se&&se.stencil.op&&(se.stencil.opBack=se.stencil.opFront=se.stencil.op,delete se.stencil.op);function re(W){if(W in se){var K=se[W];delete se[W],Object.keys(K).forEach(function(Y){se[W+"."+Y]=K[Y]})}}return re("blend"),re("depth"),re("cull"),re("stencil"),re("polygonOffset"),re("scissor"),re("sample"),"vao"in ue&&(se.vao=ue.vao),se}function Qt(ue,se){var re={},W={};return Object.keys(ue).forEach(function(K){var Y=ue[K];if(v.isDynamic(Y)){W[K]=v.unbox(Y,K);return}else if(se&&Array.isArray(Y)){for(var ve=0;ve0)return N.call(this,pe(ue|0),ue|0)}else if(Array.isArray(ue)){if(ue.length)return N.call(this,ue,ue.length)}else return qr.call(this,ue)}return e(Te,{stats:Ft,destroy:function(){Ht.destroy()}})}var Ua=Sr.setFBO=Ut({framebuffer:v.define.call(null,Ya,"framebuffer")});function Wa(pt,Rt){var Qt=0;hr.procs.poll();var z=Rt.color;z&&(V.clearColor(+z[0]||0,+z[1]||0,+z[2]||0,+z[3]||0),Qt|=_n),"depth"in Rt&&(V.clearDepth(+Rt.depth),Qt|=Ca),"stencil"in Rt&&(V.clearStencil(Rt.stencil|0),Qt|=dt),V.clear(Qt)}function sn(pt){if("framebuffer"in pt)if(pt.framebuffer&&pt.framebuffer_reglType==="framebufferCube")for(var Rt=0;Rt<6;++Rt)Ua(e({framebuffer:pt.framebuffer.faces[Rt]},pt),Wa);else Ua(pt,Wa);else Wa(null,pt)}function ya(pt){Jr.push(pt);function Rt(){var Qt=Qn(Jr,pt);function z(){var me=Qn(Jr,z);Jr[me]=Jr[Jr.length-1],Jr.length-=1,Jr.length<=0&&aa()}Jr[Qt]=z}return St(),{cancel:Rt}}function ga(){var pt=vr.viewport,Rt=vr.scissor_box;pt[0]=pt[1]=Rt[0]=Rt[1]=0,Pe.viewportWidth=Pe.framebufferWidth=Pe.drawingBufferWidth=pt[2]=Rt[2]=V.drawingBufferWidth,Pe.viewportHeight=Pe.framebufferHeight=Pe.drawingBufferHeight=pt[3]=Rt[3]=V.drawingBufferHeight}function Ea(){Pe.tick+=1,Pe.time=Da(),ga(),hr.procs.poll()}function At(){Ie.refresh(),ga(),hr.procs.refresh(),sr&&sr.update()}function Da(){return(p()-Qr)/1e3}At();function Wt(pt,Rt){var Qt;switch(pt){case"frame":return ya(Rt);case"lost":Qt=ct;break;case"restore":Qt=mr;break;case"destroy":Qt=Cr;break;default:}return Qt.push(Rt),{cancel:function(){for(var z=0;z=0},read:fr,destroy:ln,_gl:V,_refresh:At,poll:function(){Ea(),sr&&sr.update()},now:Da,stats:He,getCachedCode:ja,preloadCachedCode:fn});return B.onDone(null,un),un}return Li})});var X_=P((rOe,zre)=>{"use strict";var M9e=Ore(),S9e=Bre();zre.exports=function(r,t,a){var n=r._fullLayout,i=!0;return n._glcanvas.each(function(o){if(o.regl){o.regl.preloadCachedCode(a);return}if(!(o.pick&&!n._has("parcoords"))){try{o.regl=S9e({canvas:this,attributes:{antialias:!o.pick,preserveDrawingBuffer:!0},pixelRatio:r._context.plotGlPixelRatio||window.devicePixelRatio,extensions:t||[],cachedCode:a||{}})}catch(l){i=!1}o.regl||(i=!1),i&&this.addEventListener("webglcontextlost",function(l){r&&r.emit&&r.emit("plotly_webglcontextlost",{event:l,layer:o.key})},!1)}}),i||M9e({container:n._glcontainer.node()}),i}});var Wre=P((x9,Yre)=>{"use strict";var Gre=u7(),Ure=G7(),E9e=iee(),Hre=Pre(),b9=Ur(),k9e=jc().selectMode,C9e=X_(),L9e=Ri(),D9e=P6(),F9e=l7().styleTextSelection,Vre={};function q9e(e,r,t,a){var n=e._size,i=e.width*a,o=e.height*a,l=n.l*a,s=n.b*a,f=n.r*a,u=n.t*a,c=n.w*a,v=n.h*a;return[l+r.domain[0]*c,s+t.domain[0]*v,i-f-(1-r.domain[1])*c,o-u-(1-t.domain[1])*v]}var x9=Yre.exports=function(r,t,a){if(a.length){var n=r._fullLayout,i=t._scene,o=t.xaxis,l=t.yaxis,s,f;if(i){var u=C9e(r,["ANGLE_instanced_arrays","OES_element_index_uint"],Vre);if(!u){i.init();return}var c=i.count,v=n._glcanvas.data()[0].regl;if(D9e(r,t,a),i.dirty){if((i.line2d||i.error2d)&&!(i.scatter2d||i.fill2d||i.glText)&&v.clear({color:!0,depth:!0}),i.error2d===!0&&(i.error2d=E9e(v)),i.line2d===!0&&(i.line2d=Ure(v)),i.scatter2d===!0&&(i.scatter2d=Gre(v)),i.fill2d===!0&&(i.fill2d=Ure(v)),i.glText===!0)for(i.glText=new Array(c),s=0;si.glText.length){var d=c-i.glText.length;for(s=0;sce&&(isNaN(le[De])||isNaN(le[De+1]));)De-=2;J.positions=le.slice(ce,De+2)}return J}),i.line2d.update(i.lineOptions)),i.error2d){var m=(i.errorXOptions||[]).concat(i.errorYOptions||[]);i.error2d.update(m)}i.scatter2d&&i.scatter2d.update(i.markerOptions),i.fillOrder=b9.repeat(null,c),i.fill2d&&(i.fillOptions=i.fillOptions.map(function(J,le){var ce=a[le];if(!(!J||!ce||!ce[0]||!ce[0].trace)){var De=ce[0],Be=De.trace,Ee=De.t,Xe=i.lineOptions[le],Ae,rr,ze=[];Be._ownfill&&ze.push(le),Be._nexttrace&&ze.push(le+1),ze.length&&(i.fillOrder[le]=ze);var We=[],$e=Xe&&Xe.positions||Ee.positions,Ue,ee;if(Be.fill==="tozeroy"){for(Ue=0;Ue<$e.length&&isNaN($e[Ue+1]);)Ue+=2;for(ee=$e.length-2;ee>Ue&&isNaN($e[ee+1]);)ee-=2;$e[Ue+1]!==0&&(We=[$e[Ue],0]),We=We.concat($e.slice(Ue,ee+2)),$e[ee+1]!==0&&(We=We.concat([$e[ee],0]))}else if(Be.fill==="tozerox"){for(Ue=0;Ue<$e.length&&isNaN($e[Ue]);)Ue+=2;for(ee=$e.length-2;ee>Ue&&isNaN($e[ee]);)ee-=2;$e[Ue]!==0&&(We=[0,$e[Ue+1]]),We=We.concat($e.slice(Ue,ee+2)),$e[ee]!==0&&(We=We.concat([0,$e[ee+1]]))}else if(Be.fill==="toself"||Be.fill==="tonext"){for(We=[],Ae=0,J.splitNull=!0,rr=0;rr<$e.length;rr+=2)(isNaN($e[rr])||isNaN($e[rr+1]))&&(We=We.concat($e.slice(Ae,rr)),We.push($e[Ae],$e[Ae+1]),We.push(null,null),Ae=rr+2);We=We.concat($e.slice(Ae)),Ae&&We.push($e[Ae],$e[Ae+1])}else{var de=Be._nexttrace;if(de){var ae=i.lineOptions[le+1];if(ae){var je=ae.positions;if(Be.fill==="tonexty"){for(We=$e.slice(),le=Math.floor(je.length/2);le--;){var ur=je[le*2],er=je[le*2+1];isNaN(ur)||isNaN(er)||We.push(ur,er)}J.fill=de.fillcolor}}}}if(Be._prevtrace&&Be._prevtrace.fill==="tonext"){var Lr=i.lineOptions[le-1].positions,Pr=We.length/2;Ae=Pr;var _r=[Ae];for(rr=0;rr-1;for(s=0;s{"use strict";var jre=zJ();jre.plot=Wre();Xre.exports=jre});var $re=P((aOe,Jre)=>{"use strict";Jre.exports=Zre()});var _9=P((nOe,rte)=>{"use strict";var R9e=Qc(),ete=k0(),Qre=im().axisHoverFormat,{hovertemplateAttrs:P9e,templatefallbackAttrs:N9e}=td(),vg=cx(),I9e=qi().idRegex,O9e=Xa().templatedArray,Vp=zn().extendFlat,Yu=R9e.marker,B9e=Yu.line,z9e=Vp(ete("marker.line",{editTypeOverride:"calc"}),{width:Vp({},B9e.width,{editType:"calc"}),editType:"calc"}),Z_=Vp(ete("marker"),{symbol:Yu.symbol,angle:Yu.angle,size:Vp({},Yu.size,{editType:"markerSize"}),sizeref:Yu.sizeref,sizemin:Yu.sizemin,sizemode:Yu.sizemode,opacity:Yu.opacity,colorbar:Yu.colorbar,line:z9e,editType:"calc"});Z_.color.editType=Z_.cmin.editType=Z_.cmax.editType="style";function Kre(e){return{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"subplotid",regex:I9e[e],editType:"plot"}}}rte.exports={dimensions:O9e("dimension",{visible:{valType:"boolean",dflt:!0,editType:"calc"},label:{valType:"string",editType:"calc"},values:{valType:"data_array",editType:"calc+clearAxisTypes"},axis:{type:{valType:"enumerated",values:["linear","log","date","category"],editType:"calc+clearAxisTypes"},matches:{valType:"boolean",dflt:!1,editType:"calc"},editType:"calc+clearAxisTypes"},editType:"calc+clearAxisTypes"}),text:Vp({},vg.text,{}),hovertext:Vp({},vg.hovertext,{}),hovertemplate:P9e(),hovertemplatefallback:N9e(),xhoverformat:Qre("x"),yhoverformat:Qre("y"),marker:Z_,xaxes:Kre("x"),yaxes:Kre("y"),diagonal:{visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"},showupperhalf:{valType:"boolean",dflt:!0,editType:"calc"},showlowerhalf:{valType:"boolean",dflt:!0,editType:"calc"},selected:{marker:vg.selected.marker,editType:"calc"},unselected:{marker:vg.unselected.marker,editType:"calc"},opacity:vg.opacity}});var w9=P((iOe,tte)=>{"use strict";tte.exports=function(e,r,t,a){a||(a=1/0);var n,i;for(n=0;n{"use strict";var A9=Ur(),G9e=gl(),ate=_9(),U9e=Ri(),H9e=_b(),V9e=w9(),Y9e=vx().isOpenSymbol;nte.exports=function(r,t,a,n){function i(d,p){return A9.coerce(r,t,ate,d,p)}var o=G9e(r,t,{name:"dimensions",handleItemDefaults:W9e}),l=i("diagonal.visible"),s=i("showupperhalf"),f=i("showlowerhalf"),u=V9e(t,o,"values");if(!u||!l&&!s&&!f){t.visible=!1;return}i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),i("xhoverformat"),i("yhoverformat"),H9e(r,t,a,n,i,{noAngleRef:!0,noStandOff:!0});var c=Y9e(t.marker.symbol),v=U9e.isBubble(t);i("marker.line.width",c||v?1:0),j9e(r,t,n,i),A9.coerceSelectionMarkerOpacity(t,i)};function W9e(e,r){function t(n,i){return A9.coerce(e,r,ate.dimensions,n,i)}t("label");var a=t("values");a&&a.length?t("visible"):r.visible=!1,t("axis.type"),t("axis.matches")}function j9e(e,r,t,a){var n=r.dimensions,i=n.length,o=r.showupperhalf,l=r.showlowerhalf,s=r.diagonal.visible,f,u,c=new Array(i),v=new Array(i);for(f=0;fu&&o||f{"use strict";var ote=Ur();lte.exports=function(r,t){var a=r._fullLayout,n=t.uid,i=a._splomScenes;i||(i=a._splomScenes={});var o={dirty:!0,selectBatch:[],unselectBatch:[]},l={matrix:!1,selectBatch:[],unselectBatch:[]},s=i[t.uid];return s||(s=i[n]=ote.extendFlat({},o,l),s.draw=function(){s.matrix&&s.matrix.draw&&(s.selectBatch.length||s.unselectBatch.length?s.matrix.draw(s.unselectBatch,s.selectBatch):s.matrix.draw()),s.dirty=!1},s.destroy=function(){s.matrix&&s.matrix.destroy&&s.matrix.destroy(),s.matrixOptions=null,s.selectBatch=null,s.unselectBatch=null,s=null}),s.dirty||ote.extendFlat(s,o),s}});var cte=P((sOe,ute)=>{"use strict";var T9=Ur(),J_=kn(),X9e=Xd().calcMarkerSize,Z9e=Xd().calcAxisExpansion,J9e=ry(),fte=Zy().markerSelection,$9e=Zy().markerStyle,Q9e=ste(),K9e=Kn().BADNUM,eMe=vp().TOO_MANY_POINTS;ute.exports=function(r,t){var a=t.dimensions,n=t._length,i={},o=i.cdata=[],l=i.data=[],s=t._visibleDims=[],f,u,c,v,d;function p(_,x){for(var T=_.makeCalcdata({v:x.values,vcalendar:t.calendar},"v"),E=0;EeMe,b;for(m?b=i.sizeAvg||Math.max(i.size,3):b=X9e(t,n),u=0;u{(function(){var e,r,t,a,n,i;typeof performance!="undefined"&&performance!==null&&performance.now?hg.exports=function(){return performance.now()}:typeof process!="undefined"&&process!==null&&process.hrtime?(hg.exports=function(){return(e()-n)/1e6},r=process.hrtime,e=function(){var o;return o=r(),o[0]*1e9+o[1]},a=e(),i=process.uptime()*1e9,n=a-i):Date.now?(hg.exports=function(){return Date.now()-t},t=Date.now()):(hg.exports=function(){return new Date().getTime()-t},t=new Date().getTime())}).call(vte)});var pte=P((fOe,K_)=>{var rMe=hte(),Wu=window,$_=["moz","webkit"],Wp="AnimationFrame",jp=Wu["request"+Wp],dg=Wu["cancel"+Wp]||Wu["cancelRequest"+Wp];for(Yp=0;!jp&&Yp<$_.length;Yp++)jp=Wu[$_[Yp]+"Request"+Wp],dg=Wu[$_[Yp]+"Cancel"+Wp]||Wu[$_[Yp]+"CancelRequest"+Wp];var Yp;(!jp||!dg)&&(Q_=0,M9=0,wv=[],dte=1e3/60,jp=function(e){if(wv.length===0){var r=rMe(),t=Math.max(0,dte-(r-Q_));Q_=t+r,setTimeout(function(){var a=wv.slice(0);wv.length=0;for(var n=0;n{mte.exports=function(r,t){var a=typeof r=="number",n=typeof t=="number";a&&!n?(t=r,r=0):!a&&!n&&(r=0,t=0),r=r|0,t=t|0;var i=t-r;if(i<0)throw new Error("array length must be positive");for(var o=new Array(i),l=0,s=r;l{"use strict";var tMe=u7(),aMe=If(),nMe=ah(),gte=pte(),iMe=yte(),S9=hp(),oMe=nh();xte.exports=Av;function Av(e,r){if(!(this instanceof Av))return new Av(e,r);this.traces=[],this.passes={},this.regl=e,this.scatter=tMe(e),this.canvas=this.scatter.canvas}Av.prototype.render=function(...e){return e.length&&this.update(...e),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?this.planned==null&&(this.planned=gte(()=>{this.draw(),this.dirty=!0,this.planned=null})):(this.draw(),this.dirty=!0,gte(()=>{this.dirty=!1})),this)};Av.prototype.update=function(...e){if(!e.length)return;for(let a=0;am||!n.lower&&y{r[i+l]=a})}this.scatter.draw(...r)}return this};Av.prototype.destroy=function(){return this.traces.forEach(e=>{e.buffer&&e.buffer.destroy&&e.buffer.destroy()}),this.traces=null,this.passes=null,this.scatter.destroy(),this};function lMe(e,r,t){let a=e.id!=null?e.id:e,n=r,i=t;return a<<16|(n&255)<<8|i&255}function e5(e,r,t){let a,n,i,o,l,s,f,u,c=e[r],v=e[t];return c.length>2?(a=c[0],i=c[2],n=c[1],o=c[3]):c.length?(a=n=c[0],i=o=c[1]):(a=c.x,n=c.y,i=c.x+c.width,o=c.y+c.height),v.length>2?(l=v[0],f=v[2],s=v[1],u=v[3]):v.length?(l=s=v[0],f=u=v[1]):(l=v.x,s=v.y,f=v.x+v.width,u=v.y+v.height),[l,n,f,o]}function bte(e){if(typeof e=="number")return[e,e,e,e];if(e.length===2)return[e[0],e[1],e[0],e[1]];{let r=S9(e);return[r.x,r.y,r.x+r.width,r.y+r.height]}}});var Ate=P((vOe,wte)=>{"use strict";var sMe=_te(),E9=Ur(),r5=kn(),fMe=jc().selectMode;wte.exports=function(r,t,a){if(a.length)for(var n=0;n-1,O=fMe(u)||!!n.selectedpoints||I,q=!0;if(O){var H=n._length;if(n.selectedpoints){o.selectBatch=n.selectedpoints;var X=n.selectedpoints,oe={};for(d=0;d{"use strict";Tte.getDimIndex=function(r,t){for(var a=t._id,n=a.charAt(0),i={x:0,y:1}[n],o=r._visibleDims,l=0;l{"use strict";var Mte=k9(),cMe=HT().calcHover,Ste=yn().getFromId,vMe=zn().extendFlat;function hMe(e,r,t,a,n){n||(n={});var i=(a||"").charAt(0)==="x",o=(a||"").charAt(0)==="y",l=Ete(e,r,t);if((i||o)&&n.hoversubplots==="axis"&&l[0])for(var s=(i?e.xa:e.ya)._subplotsWith,f=n.gd,u=vMe({},e),c=0;c{"use strict";var qte=Ur(),Lte=qte.pushUnique,Dte=Ri(),Fte=k9();Rte.exports=function(r,t){var a=r.cd,n=a[0].trace,i=a[0].t,o=r.scene,l=o.matrixOptions.cdata,s=r.xaxis,f=r.yaxis,u=[];if(!o)return u;var c=!Dte.hasMarkers(n)&&!Dte.hasText(n);if(n.visible!==!0||c)return u;var v=Fte.getDimIndex(n,s),d=Fte.getDimIndex(n,f);if(v===!1||d===!1)return u;var p=i.xpx[v],y=i.ypx[d],m=l[v],b=l[d],A=(r.scene.selectBatch||[]).slice(),_=[];if(t!==!1&&!t.degenerate)for(var x=0;x{"use strict";var Nte=Ur(),dMe=ry(),pMe=Zy().markerStyle;Ite.exports=function(r,t){var a=t.trace,n=r._fullLayout._splomScenes[a.uid];if(n){dMe(r,a),Nte.extendFlat(n.matrixOptions,pMe(r,a));var i=Nte.extendFlat({},n.matrixOptions,n.viewOpts);n.matrix.update(i,null)}}});var zte=P((yOe,Bte)=>{"use strict";var mMe=Bt(),yMe=LT();Bte.exports={moduleType:"trace",name:"splom",categories:["gl","regl","cartesian","symbols","showLegend","scatter-like"],attributes:_9(),supplyDefaults:ite(),colorbar:kb(),calc:cte(),plot:Ate(),hoverPoints:Cte().hoverPoints,selectPoints:Pte(),editStyle:Ote(),meta:{}};mMe.register(yMe)});var Wte=P((gOe,Yte)=>{"use strict";var gMe=G7(),bMe=Bt(),xMe=X_(),_Me=rm().getModuleCalcData,Tv=sy(),Gte=kn().getFromId,Ute=yn().shouldShowZeroLine,Hte="splom",Vte={};function wMe(e){var r=e._fullLayout,t=bMe.getModule(Hte),a=_Me(e.calcdata,t)[0],n=xMe(e,["ANGLE_instanced_arrays","OES_element_index_uint"],Vte);n&&(r._hasOnlyLargeSploms&&C9(e),t.plot(e,{},a))}function AMe(e){var r=e.calcdata,t=e._fullLayout;t._hasOnlyLargeSploms&&C9(e);for(var a=0;a{"use strict";var jte=zte();jte.basePlotModule=Wte(),Xte.exports=jte});var $te=P((xOe,Jte)=>{"use strict";Jte.exports=Zte()});var F9=P((_Oe,Qte)=>{"use strict";var EMe=k0(),L9=Ul(),D9=Gi(),kMe=ix().attributes,t5=zn().extendFlat,CMe=Xa().templatedArray;Qte.exports={domain:kMe({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:D9({editType:"plot"}),tickfont:D9({autoShadowDflt:!0,editType:"plot"}),rangefont:D9({editType:"plot"}),dimensions:CMe("dimension",{label:{valType:"string",editType:"plot"},tickvals:t5({},L9.tickvals,{editType:"plot"}),ticktext:t5({},L9.ticktext,{editType:"plot"}),tickformat:t5({},L9.tickformat,{editType:"plot"}),visible:{valType:"boolean",dflt:!0,editType:"plot"},range:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},constraintrange:{valType:"info_array",freeLength:!0,dimensions:"1-2",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},multiselect:{valType:"boolean",dflt:!0,editType:"plot"},values:{valType:"data_array",editType:"calc"},editType:"calc"}),line:t5({editType:"calc"},EMe("line",{colorscaleDflt:"Viridis",autoColorDflt:!1,editTypeOverride:"calc"})),unselected:{line:{color:{valType:"color",dflt:"#7f7f7f",editType:"plot"},opacity:{valType:"number",min:0,max:1,dflt:"auto",editType:"plot"},editType:"plot"},editType:"plot"}}});var pg=P((wOe,Kte)=>{"use strict";Kte.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:["contextLineLayer","focusLineLayer","pickLineLayer"],axisTitleOffset:28,axisExtentOffset:10,bar:{width:4,captureWidth:10,fillColor:"magenta",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeOpacity:1,strokeWidth:1,handleHeight:8,handleOpacity:1,handleOverlap:0},cn:{axisExtentText:"axis-extent-text",parcoordsLineLayers:"parcoords-line-layers",parcoordsLineLayer:"parcoords-lines",parcoords:"parcoords",parcoordsControlView:"parcoords-control-view",yAxis:"y-axis",axisOverlays:"axis-overlays",axis:"axis",axisHeading:"axis-heading",axisTitle:"axis-title",axisExtent:"axis-extent",axisExtentTop:"axis-extent-top",axisExtentTopText:"axis-extent-top-text",axisExtentBottom:"axis-extent-bottom",axisExtentBottomText:"axis-extent-bottom-text",axisBrush:"axis-brush"},id:{filterBarPattern:"filter-bar-pattern"}}});var mg=P((AOe,rae)=>{"use strict";var LMe=e2();function eae(e){return[e]}rae.exports={keyFun:function(e){return e.key},repeat:eae,descend:LMe,wrap:eae,unwrap:function(e){return e[0]}}});var P9=P((TOe,vae)=>{"use strict";var jn=pg(),ef=da(),DMe=mg().keyFun,a5=mg().repeat,Xp=Ur().sorterAsc,FMe=Ur().strTranslate,tae=jn.bar.snapRatio;function aae(e,r){return e*(1-tae)+r*tae}var nae=jn.bar.snapClose;function qMe(e,r){return e*(1-nae)+r*nae}function i5(e,r,t,a){if(RMe(t,a))return t;var n=e?-1:1,i=0,o=r.length-1;if(n<0){var l=i;i=o,o=l}for(var s=r[i],f=s,u=i;n*u=r[t][0]&&e<=r[t][1])return!0;return!1}function PMe(e){e.attr("x",-jn.bar.captureWidth/2).attr("width",jn.bar.captureWidth)}function NMe(e){e.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function IMe(e){if(!e.brush.filterSpecified)return"0,"+e.height;for(var r=iae(e.brush.filter.getConsolidated(),e.height),t=[0],a,n,i,o=r.length?r[0][0]:null,l=0;le[1]+t||r=.9*e[1]+.1*e[0]?"n":r<=.9*e[0]+.1*e[1]?"s":"ns"}function oae(){ef.select(document.body).style("cursor",null)}function R9(e){e.attr("stroke-dasharray",IMe)}function n5(e,r){var t=ef.select(e).selectAll(".highlight, .highlight-shadow"),a=r?t.transition().duration(jn.bar.snapDuration).each("end",r):t;R9(a)}function lae(e,r){var t=e.brush,a=t.filterSpecified,n=NaN,i={},o;if(a){var l=e.height,s=t.filter.getConsolidated(),f=iae(s,l),u=NaN,c=NaN,v=NaN;for(o=0;o<=f.length;o++){var d=f[o];if(d&&d[0]<=r&&r<=d[1]){u=o;break}else if(c=o?o-1:NaN,d&&d[0]>r){v=o;break}}if(n=u,isNaN(n)&&(isNaN(c)||isNaN(v)?n=isNaN(c)?v:c:n=r-f[c][1]=A[0]&&b<=A[1]){i.clickableOrdinalRange=A;break}}}return i}function BMe(e,r){ef.event.sourceEvent.stopPropagation();var t=r.height-ef.mouse(e)[1]-2*jn.verticalPadding,a=r.unitToPaddedPx.invert(t),n=r.brush,i=lae(r,t),o=i.interval,l=n.svgBrush;if(l.wasDragged=!1,l.grabbingBar=i.region==="ns",l.grabbingBar){var s=o.map(r.unitToPaddedPx);l.grabPoint=t-s[0]-jn.verticalPadding,l.barLength=s[1]-s[0]}l.clickableOrdinalRange=i.clickableOrdinalRange,l.stayingIntervals=r.multiselect&&n.filterSpecified?n.filter.getConsolidated():[],o&&(l.stayingIntervals=l.stayingIntervals.filter(function(f){return f[0]!==o[0]&&f[1]!==o[1]})),l.startExtent=i.region?o[i.region==="s"?1:0]:a,r.parent.inBrushDrag=!0,l.brushStartCallback()}function sae(e,r){ef.event.sourceEvent.stopPropagation();var t=r.height-ef.mouse(e)[1]-2*jn.verticalPadding,a=r.brush.svgBrush;a.wasDragged=!0,a._dragging=!0,a.grabbingBar?a.newExtent=[t-a.grabPoint,t+a.barLength-a.grabPoint].map(r.unitToPaddedPx.invert):a.newExtent=[a.startExtent,r.unitToPaddedPx.invert(t)].sort(Xp),r.brush.filterSpecified=!0,a.extent=a.stayingIntervals.concat([a.newExtent]),a.brushCallback(r),n5(e.parentNode)}function zMe(e,r){var t=r.brush,a=t.filter,n=t.svgBrush;n._dragging||(fae(e,r),sae(e,r),r.brush.svgBrush.wasDragged=!1),n._dragging=!1;var i=ef.event;i.sourceEvent.stopPropagation();var o=n.grabbingBar;if(n.grabbingBar=!1,n.grabLocation=void 0,r.parent.inBrushDrag=!1,oae(),!n.wasDragged){n.wasDragged=void 0,n.clickableOrdinalRange?t.filterSpecified&&r.multiselect?n.extent.push(n.clickableOrdinalRange):(n.extent=[n.clickableOrdinalRange],t.filterSpecified=!0):o?(n.extent=n.stayingIntervals,n.extent.length===0&&q9(t)):q9(t),n.brushCallback(r),n5(e.parentNode),n.brushEndCallback(t.filterSpecified?a.getConsolidated():[]);return}var l=function(){a.set(a.getConsolidated())};if(r.ordinal){var s=r.unitTickvals;s[s.length-1]n.newExtent[0];n.extent=n.stayingIntervals.concat(f?[n.newExtent]:[]),n.extent.length||q9(t),n.brushCallback(r),f?n5(e.parentNode,l):(l(),n5(e.parentNode))}else l();n.brushEndCallback(t.filterSpecified?a.getConsolidated():[])}function fae(e,r){var t=r.height-ef.mouse(e)[1]-2*jn.verticalPadding,a=lae(r,t),n="crosshair";a.clickableOrdinalRange?n="pointer":a.region&&(n=a.region+"-resize"),ef.select(document.body).style("cursor",n)}function GMe(e){e.on("mousemove",function(r){ef.event.preventDefault(),r.parent.inBrushDrag||fae(this,r)}).on("mouseleave",function(r){r.parent.inBrushDrag||oae()}).call(ef.behavior.drag().on("dragstart",function(r){BMe(this,r)}).on("drag",function(r){sae(this,r)}).on("dragend",function(r){zMe(this,r)}))}function uae(e,r){return e[0]-r[0]}function UMe(e,r,t){var a=t._context.staticPlot,n=e.selectAll(".background").data(a5);n.enter().append("rect").classed("background",!0).call(PMe).call(NMe).style("pointer-events",a?"none":"auto").attr("transform",FMe(0,jn.verticalPadding)),n.call(GMe).attr("height",function(l){return l.height-jn.verticalPadding});var i=e.selectAll(".highlight-shadow").data(a5);i.enter().append("line").classed("highlight-shadow",!0).attr("x",-jn.bar.width/2).attr("stroke-width",jn.bar.width+jn.bar.strokeWidth).attr("stroke",r).attr("opacity",jn.bar.strokeOpacity).attr("stroke-linecap","butt"),i.attr("y1",function(l){return l.height}).call(R9);var o=e.selectAll(".highlight").data(a5);o.enter().append("line").classed("highlight",!0).attr("x",-jn.bar.width/2).attr("stroke-width",jn.bar.width-jn.bar.strokeWidth).attr("stroke",jn.bar.fillColor).attr("opacity",jn.bar.fillOpacity).attr("stroke-linecap","butt"),o.attr("y1",function(l){return l.height}).call(R9)}function HMe(e,r,t){var a=e.selectAll("."+jn.cn.axisBrush).data(a5,DMe);a.enter().append("g").classed(jn.cn.axisBrush,!0),UMe(a,r,t)}function VMe(e){return e.svgBrush.extent.map(function(r){return r.slice()})}function q9(e){e.filterSpecified=!1,e.svgBrush.extent=[[-1/0,1/0]]}function YMe(e){return function(t){var a=t.brush,n=VMe(a),i=n.slice();a.filter.set(i),e()}}function cae(e){for(var r=e.slice(),t=[],a,n=r.shift();n;){for(a=n.slice();(n=r.shift())&&n[0]<=a[1];)a[1]=Math.max(a[1],n[1]);t.push(a)}return t.length===1&&t[0][0]>t[0][1]&&(t=[]),t}function WMe(){var e=[],r,t;return{set:function(a){e=a.map(function(n){return n.slice().sort(Xp)}).sort(uae),e.length===1&&e[0][0]===-1/0&&e[0][1]===1/0&&(e=[[0,-1]]),r=cae(e),t=e.reduce(function(n,i){return[Math.min(n[0],i[0]),Math.max(n[1],i[1])]},[1/0,-1/0])},get:function(){return e.slice()},getConsolidated:function(){return r},getBounds:function(){return t}}}function jMe(e,r,t,a,n,i){var o=WMe();return o.set(t),{filter:o,filterSpecified:r,svgBrush:{extent:[],brushStartCallback:a,brushCallback:YMe(n),brushEndCallback:i}}}function XMe(e,r){if(Array.isArray(e[0])?(e=e.map(function(a){return a.sort(Xp)}),r.multiselect?e=cae(e.sort(uae)):e=[e[0]]):e=[e.sort(Xp)],r.tickvals){var t=r.tickvals.slice().sort(Xp);if(e=e.map(function(a){var n=[i5(0,t,a[0],[]),i5(1,t,a[1],[])];if(n[1]>n[0])return n}).filter(function(a){return a}),!e.length)return}return e.length>1?e:e[0]}vae.exports={makeBrush:jMe,ensureAxisBrush:HMe,cleanRanges:XMe}});var pae=P((MOe,dae)=>{"use strict";var Mv=Ur(),ZMe=Rs().hasColorscale,JMe=gd(),$Me=ix().defaults,QMe=gl(),KMe=yn(),hae=F9(),eSe=P9(),N9=pg().maxDimensionCount,rSe=w9();function tSe(e,r,t,a,n){var i=n("line.color",t);if(ZMe(e,"line")&&Mv.isArrayOrTypedArray(i)){if(i.length)return n("line.colorscale"),JMe(e,r,a,n,{prefix:"line.",cLetter:"c"}),i.length;r.line.color=t}return 1/0}function aSe(e,r,t,a){function n(f,u){return Mv.coerce(e,r,hae.dimensions,f,u)}var i=n("values"),o=n("visible");if(i&&i.length||(o=r.visible=!1),o){n("label"),n("tickvals"),n("ticktext"),n("tickformat");var l=n("range");r._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:l},KMe.setConvert(r._ax,a.layout),n("multiselect");var s=n("constraintrange");s&&(r.constraintrange=eSe.cleanRanges(s,r))}}dae.exports=function(r,t,a,n){function i(u,c){return Mv.coerce(r,t,hae,u,c)}var o=r.dimensions;Array.isArray(o)&&o.length>N9&&(Mv.log("parcoords traces support up to "+N9+" dimensions at the moment"),o.splice(N9));var l=QMe(r,t,{name:"dimensions",layout:n,handleItemDefaults:aSe}),s=tSe(r,t,a,n,i);$Me(t,n,i),(!Array.isArray(l)||!l.length)&&(t.visible=!1),rSe(t,l,"values",s);var f=Mv.extendFlat({},n.font,{size:Math.round(n.font.size/1.2)});Mv.coerceFont(i,"labelfont",f),Mv.coerceFont(i,"tickfont",f,{autoShadowDflt:!0}),Mv.coerceFont(i,"rangefont",f),i("labelangle"),i("labelside"),i("unselected.line.color"),i("unselected.line.opacity")}});var yae=P((SOe,mae)=>{"use strict";var nSe=Ur().isArrayOrTypedArray,I9=xd(),iSe=mg().wrap;mae.exports=function(r,t){var a,n;return I9.hasColorscale(t,"line")&&nSe(t.line.color)?(a=t.line.color,n=I9.extractOpts(t.line).colorscale,I9.calc(r,t,{vals:a,containerStr:"line",cLetter:"c"})):(a=oSe(t._length),n=[[0,t.line.color],[1,t.line.color]]),iSe({lineColor:a,cscale:n})};function oSe(e){for(var r=new Array(e),t=0;t>>16,(e&65280)>>>8,e&255],alpha:1};if(typeof e=="number")return{space:"rgb",values:[e>>>16,(e&65280)>>>8,e&255],alpha:1};if(e=String(e).toLowerCase(),O9.default[e])t=O9.default[e].slice(),n="rgb";else if(e==="transparent")a=0,n="rgb",t=[0,0,0];else if(e[0]==="#"){var i=e.slice(1),o=i.length,l=o<=4;a=1,l?(t=[parseInt(i[0]+i[0],16),parseInt(i[1]+i[1],16),parseInt(i[2]+i[2],16)],o===4&&(a=parseInt(i[3]+i[3],16)/255)):(t=[parseInt(i[0]+i[1],16),parseInt(i[2]+i[3],16),parseInt(i[4]+i[5],16)],o===8&&(a=parseInt(i[6]+i[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),n="rgb"}else if(r=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(e)){var s=r[1];n=s.replace(/a$/,"");var f=n==="cmyk"?4:n==="gray"?1:3;t=r[2].trim().split(/\s*[,\/]\s*|\s+/),n==="color"&&(n=t.shift()),t=t.map(function(v,d){if(v[v.length-1]==="%")return v=parseFloat(v)/100,d===3?v:n==="rgb"?v*255:n[0]==="h"||n[0]==="l"&&!d?v*100:n==="lab"?v*125:n==="lch"?d<2?v*150:v*360:n[0]==="o"&&!d?v:n==="oklab"?v*.4:n==="oklch"?d<2?v*.4:v*360:v;if(n[d]==="h"||d===2&&n[n.length-1]==="h"){if(gae[v]!==void 0)return gae[v];if(v.endsWith("deg"))return parseFloat(v);if(v.endsWith("turn"))return parseFloat(v)*360;if(v.endsWith("grad"))return parseFloat(v)*360/400;if(v.endsWith("rad"))return parseFloat(v)*180/Math.PI}return v==="none"?0:parseFloat(v)}),a=t.length>f?t.pop():1}else/[0-9](?:\s|\/|,)/.test(e)&&(t=e.match(/([0-9]+)/g).map(function(v){return parseFloat(v)}),n=((c=(u=e.match(/([a-z])/ig))==null?void 0:u.join(""))==null?void 0:c.toLowerCase())||"rgb");return{space:n,values:t,alpha:a}}var O9,bae,gae,xae=Sg(()=>{O9=Xne(e7(),1),bae=lSe,gae={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}});var yg,B9=Sg(()=>{yg={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}});var o5,_ae=Sg(()=>{B9();o5={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(e){var r=e[0]/360,t=e[1]/100,a=e[2]/100,n,i,o,l,s,f=0;if(t===0)return s=a*255,[s,s,s];for(i=a<.5?a*(1+t):a+t-a*t,n=2*a-i,l=[0,0,0];f<3;)o=r+1/3*-(f-1),o<0?o++:o>1&&o--,s=6*o<1?n+(i-n)*6*o:2*o<1?i:3*o<2?n+(i-n)*(2/3-o)*6:n,l[f++]=s*255;return l}};yg.hsl=function(e){var r=e[0]/255,t=e[1]/255,a=e[2]/255,n=Math.min(r,t,a),i=Math.max(r,t,a),o=i-n,l,s,f;return i===n?l=0:r===i?l=(t-a)/o:t===i?l=2+(a-r)/o:a===i&&(l=4+(r-t)/o),l=Math.min(l*60,360),l<0&&(l+=360),f=(n+i)/2,i===n?s=0:f<=.5?s=o/(i+n):s=o/(2-i-n),[l,s*100,f*100]}});var Aae={};jne(Aae,{default:()=>wae});function wae(e){Array.isArray(e)&&e.raw&&(e=String.raw(...arguments)),e instanceof Number&&(e=+e);var r,t,a,n=bae(e);if(!n.space)return[];let i=n.space[0]==="h"?o5.min:yg.min,o=n.space[0]==="h"?o5.max:yg.max;return r=Array(3),r[0]=Math.min(Math.max(n.values[0],i[0]),o[0]),r[1]=Math.min(Math.max(n.values[1],i[1]),o[1]),r[2]=Math.min(Math.max(n.values[2],i[2]),o[2]),n.space[0]==="h"&&(r=o5.rgb(r)),r.push(Math.min(Math.max(n.alpha,0),1)),r}var Tae=Sg(()=>{xae();B9();_ae()});var z9=P(l5=>{"use strict";var sSe=Ur().isTypedArray;l5.convertTypedArray=function(e){return sSe(e)?Array.prototype.slice.call(e):e};l5.isOrdinal=function(e){return!!e.tickvals};l5.isVisible=function(e){return e.visible||!("visible"in e)}});var Rae=P((POe,qae)=>{"use strict";var fSe=["precision highp float;","","varying vec4 fragColor;","","attribute vec4 p01_04, p05_08, p09_12, p13_16,"," p17_20, p21_24, p25_28, p29_32,"," p33_36, p37_40, p41_44, p45_48,"," p49_52, p53_56, p57_60, colors;","","uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,"," loA, hiA, loB, hiB, loC, hiC, loD, hiD;","","uniform vec2 resolution, viewBoxPos, viewBoxSize;","uniform float maskHeight;","uniform float drwLayer; // 0: context, 1: focus, 2: pick","uniform vec4 contextColor;","uniform sampler2D maskTexture, palette;","","bool isPick = (drwLayer > 1.5);","bool isContext = (drwLayer < 0.5);","","const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);","const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);","","float val(mat4 p, mat4 v) {"," return dot(matrixCompMult(p, v) * UNITS, UNITS);","}","","float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {"," float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);"," float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);"," return y1 * (1.0 - ratio) + y2 * ratio;","}","","int iMod(int a, int b) {"," return a - b * (a / b);","}","","bool fOutside(float p, float lo, float hi) {"," return (lo < hi) && (lo > p || p > hi);","}","","bool vOutside(vec4 p, vec4 lo, vec4 hi) {"," return ("," fOutside(p[0], lo[0], hi[0]) ||"," fOutside(p[1], lo[1], hi[1]) ||"," fOutside(p[2], lo[2], hi[2]) ||"," fOutside(p[3], lo[3], hi[3])"," );","}","","bool mOutside(mat4 p, mat4 lo, mat4 hi) {"," return ("," vOutside(p[0], lo[0], hi[0]) ||"," vOutside(p[1], lo[1], hi[1]) ||"," vOutside(p[2], lo[2], hi[2]) ||"," vOutside(p[3], lo[3], hi[3])"," );","}","","bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {"," return mOutside(A, loA, hiA) ||"," mOutside(B, loB, hiB) ||"," mOutside(C, loC, hiC) ||"," mOutside(D, loD, hiD);","}","","bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {"," mat4 pnts[4];"," pnts[0] = A;"," pnts[1] = B;"," pnts[2] = C;"," pnts[3] = D;",""," for(int i = 0; i < 4; ++i) {"," for(int j = 0; j < 4; ++j) {"," for(int k = 0; k < 4; ++k) {"," if(0 == iMod("," int(255.0 * texture2D(maskTexture,"," vec2("," (float(i * 2 + j / 2) + 0.5) / 8.0,"," (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight"," ))[3]"," ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),"," 2"," )) return true;"," }"," }"," }"," return false;","}","","vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {"," float x = 0.5 * sign(v) + 0.5;"," float y = axisY(x, A, B, C, D);"," float z = 1.0 - abs(v);",""," z += isContext ? 0.0 : 2.0 * float("," outsideBoundingBox(A, B, C, D) ||"," outsideRasterMask(A, B, C, D)"," );",""," return vec4("," 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,"," z,"," 1.0"," );","}","","void main() {"," mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);"," mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);"," mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);"," mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);",""," float v = colors[3];",""," gl_Position = position(isContext, v, A, B, C, D);",""," fragColor ="," isContext ? vec4(contextColor) :"," isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));","}"].join(` +`),ke;if(B&&(ke=M1(fe),B[ke]))return B[ke].apply(null,xe);var Ze=Function.apply(null,he.concat(fe));return B&&(B[ke]=Ze),Ze.apply(null,xe)}return{global:sr,link:_e,block:He,proc:Fr,scope:or,cond:ir,compile:yr}}var fo="xyzw".split(""),uc=5121,Ji=1,_s=2,nu=0,cf=1,cc=2,vf=3,ws=4,vc=5,hf=6,hc="dither",f0="blend.enable",u0="blend.color",iu="blend.equation",ou="blend.func",dc="depth.enable",pc="depth.func",mc="depth.range",yc="depth.mask",lu="colorMask",df="cull.enable",c0="cull.face",su="frontFace",pf="lineWidth",gc="polygonOffset.enable",fu="polygonOffset.offset",mf="sample.alpha",yf="sample.enable",gf="sample.coverage",bc="stencil.enable",uu="stencil.mask",Ci="stencil.func",bf="stencil.opFront",vl="stencil.opBack",cu="scissor.enable",hl="scissor.box",si="viewport",As="profile",Do="framebuffer",Vo="vert",dl="frag",uo="elements",Fo="primitive",qo="count",vu="offset",gi="instances",Nl="vao",xf="Width",co="Height",$i=Do+xf,Qi=Do+co,L1=si+xf,D1=si+co,v0="drawingBuffer",xc=v0+xf,_c=v0+co,Uh=[ou,iu,Ci,bf,vl,gf,si,hl,fu],vo=34962,hu=34963,Hh=2884,F1=3042,q1=3024,R1=2960,Vh=2929,Yh=3089,wc=32823,Wh=32926,Ac=32928,Tc=5126,pl=35664,on=35665,_f=35666,ml=5124,Il=35667,Ts=35668,du=35669,pu=35670,Ol=35671,wf=35672,mu=35673,yu=35674,gu=35675,bu=35676,Ms=35678,xu=35680,_u=4,h=1028,g=1029,w=2304,C=2305,L=32775,D=32776,G=519,R=7680,X=0,ie=1,oe=32774,ye=513,ge=36160,Ye=36064,Qe={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Me={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Fe={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Ge={cw:w,ccw:C};function Ke(M){return Array.isArray(M)||Xr(M)||nt(M)}function ar(M){return M.sort(function(B,V){return B===si?-1:V===si?1:B=1,he>=2,B)}else if(V===ws){var xe=M.data;return new De(xe.thisDep,xe.contextDep,xe.propDep,B)}else{if(V===vc)return new De(!1,!1,!1,B);if(V===hf){for(var we=!1,_e=!1,He=!1,or=0;or=1&&(_e=!0),sr>=2&&(He=!0)}else ir.type===ws&&(we=we||ir.data.thisDep,_e=_e||ir.data.contextDep,He=He||ir.data.propDep)}return new De(we,_e,He,B)}else return new De(V===vf,V===cc,V===cf,B)}}var yt=new De(!1,!1,!1,function(){});function Ct(M,B,V,he,xe,we,_e,He,or,ir,sr,Qr,Fr,yr,Pe,fe){var ke=ir.Record,Ze={add:32774,subtract:32778,"reverse subtract":32779};V.ext_blend_minmax&&(Ze.min=L,Ze.max=D);var nr=V.angle_instanced_arrays,Oe=V.webgl_draw_buffers,br=V.oes_vertex_array_object,dr={dirty:!0,profile:fe.profile},Zr={},Ie=[],qe={},Sr={};function hr(N){return N.replace(".","_")}function fr(N,U,$){var pe=hr(N);Ie.push(N),Zr[pe]=dr[pe]=!!$,qe[pe]=U}function vr(N,U,$){var pe=hr(N);Ie.push(N),Array.isArray($)?(dr[pe]=$.slice(),Zr[pe]=$.slice()):dr[pe]=Zr[pe]=$,Sr[pe]=U}function Er(N){return!!isNaN(N)}fr(hc,q1),fr(f0,F1),vr(u0,"blendColor",[0,0,0,0]),vr(iu,"blendEquationSeparate",[oe,oe]),vr(ou,"blendFuncSeparate",[ie,X,ie,X]),fr(dc,Vh,!0),vr(pc,"depthFunc",ye),vr(mc,"depthRange",[0,1]),vr(yc,"depthMask",!0),vr(lu,lu,[!0,!0,!0,!0]),fr(df,Hh),vr(c0,"cullFace",g),vr(su,su,C),vr(pf,pf,1),fr(gc,wc),vr(fu,"polygonOffset",[0,0]),fr(mf,Wh),fr(yf,Ac),vr(gf,"sampleCoverage",[1,!1]),fr(bc,R1),vr(uu,"stencilMask",-1),vr(Ci,"stencilFunc",[G,0,-1]),vr(bf,"stencilOpSeparate",[h,R,R,R]),vr(vl,"stencilOpSeparate",[g,R,R,R]),fr(cu,Yh),vr(hl,"scissor",[0,0,M.drawingBufferWidth,M.drawingBufferHeight]),vr(si,si,[0,0,M.drawingBufferWidth,M.drawingBufferHeight]);var Jr={gl:M,context:Fr,strings:B,next:Zr,current:dr,draw:Qr,elements:we,buffer:xe,shader:sr,attributes:ir.state,vao:ir,uniforms:or,framebuffer:He,extensions:V,timer:yr,isBufferArgs:Ke},ct={primTypes:Oo,compareFuncs:Me,blendFuncs:Qe,blendEquations:Ze,stencilOps:Fe,glTypes:hn,orientationType:Ge};Oe&&(ct.backBuffer=[g],ct.drawBuffer=k(he.maxDrawbuffers,function(N){return N===0?[0]:k(N,function(U){return Ye+U})}));var mr=0;function Cr(){var N=Gh({cache:Pe}),U=N.link,$=N.global;N.id=mr++,N.batchId="0";var pe=U(Jr),Te=N.shared={props:"a0"};Object.keys(Jr).forEach(function(K){Te[K]=$.def(pe,".",K)});var ce=N.next={},se=N.current={};Object.keys(Sr).forEach(function(K){Array.isArray(dr[K])&&(ce[K]=$.def(Te.next,".",K),se[K]=$.def(Te.current,".",K))});var re=N.constants={};Object.keys(ct).forEach(function(K){re[K]=$.def(JSON.stringify(ct[K]))}),N.invoke=function(K,Y){switch(Y.type){case nu:var ve=["this",Te.context,Te.props,N.batchId];return K.def(U(Y.data),".call(",ve.slice(0,Math.max(Y.data.length+1,4)),")");case cf:return K.def(Te.props,Y.data);case cc:return K.def(Te.context,Y.data);case vf:return K.def("this",Y.data);case ws:return Y.data.append(N,K),Y.data.ref;case vc:return Y.data.toString();case hf:return Y.data.map(function(Ce){return N.invoke(K,Ce)})}},N.attribCache={};var W={};return N.scopeAttrib=function(K){var Y=B.id(K);if(Y in W)return W[Y];var ve=ir.scope[Y];ve||(ve=ir.scope[Y]=new ke);var Ce=W[Y]=U(ve);return Ce},N}function ft(N){var U=N.static,$=N.dynamic,pe;if(As in U){var Te=!!U[As];pe=zr(function(se,re){return Te}),pe.enable=Te}else if(As in $){var ce=$[As];pe=it(ce,function(se,re){return se.invoke(re,ce)})}return pe}function ut(N,U){var $=N.static,pe=N.dynamic;if(Do in $){var Te=$[Do];return Te?(Te=He.getFramebuffer(Te),zr(function(se,re){var W=se.link(Te),K=se.shared;re.set(K.framebuffer,".next",W);var Y=K.context;return re.set(Y,"."+$i,W+".width"),re.set(Y,"."+Qi,W+".height"),W})):zr(function(se,re){var W=se.shared;re.set(W.framebuffer,".next","null");var K=W.context;return re.set(K,"."+$i,K+"."+xc),re.set(K,"."+Qi,K+"."+_c),"null"})}else if(Do in pe){var ce=pe[Do];return it(ce,function(se,re){var W=se.invoke(re,ce),K=se.shared,Y=K.framebuffer,ve=re.def(Y,".getFramebuffer(",W,")");re.set(Y,".next",ve);var Ce=K.context;return re.set(Ce,"."+$i,ve+"?"+ve+".width:"+Ce+"."+xc),re.set(Ce,"."+Qi,ve+"?"+ve+".height:"+Ce+"."+_c),ve})}else return null}function St(N,U,$){var pe=N.static,Te=N.dynamic;function ce(W){if(W in pe){var K=pe[W],Y=!0,ve=K.x|0,Ce=K.y|0,Je,et;return"width"in K?Je=K.width|0:Y=!1,"height"in K?et=K.height|0:Y=!1,new De(!Y&&U&&U.thisDep,!Y&&U&&U.contextDep,!Y&&U&&U.propDep,function($r,Gr){var Br=$r.shared.context,Mr=Je;"width"in K||(Mr=Gr.def(Br,".",$i,"-",ve));var Rr=et;return"height"in K||(Rr=Gr.def(Br,".",Qi,"-",Ce)),[ve,Ce,Mr,Rr]})}else if(W in Te){var kr=Te[W],Tr=it(kr,function($r,Gr){var Br=$r.invoke(Gr,kr),Mr=$r.shared.context,Rr=Gr.def(Br,".x|0"),Or=Gr.def(Br,".y|0"),vt=Gr.def('"width" in ',Br,"?",Br,".width|0:","(",Mr,".",$i,"-",Rr,")"),Kt=Gr.def('"height" in ',Br,"?",Br,".height|0:","(",Mr,".",Qi,"-",Or,")");return[Rr,Or,vt,Kt]});return U&&(Tr.thisDep=Tr.thisDep||U.thisDep,Tr.contextDep=Tr.contextDep||U.contextDep,Tr.propDep=Tr.propDep||U.propDep),Tr}else return U?new De(U.thisDep,U.contextDep,U.propDep,function($r,Gr){var Br=$r.shared.context;return[0,0,Gr.def(Br,".",$i),Gr.def(Br,".",Qi)]}):null}var se=ce(si);if(se){var re=se;se=new De(se.thisDep,se.contextDep,se.propDep,function(W,K){var Y=re.append(W,K),ve=W.shared.context;return K.set(ve,"."+L1,Y[2]),K.set(ve,"."+D1,Y[3]),Y})}return{viewport:se,scissor_box:ce(hl)}}function aa(N,U){var $=N.static,pe=typeof $[dl]=="string"&&typeof $[Vo]=="string";if(pe){if(Object.keys(U.dynamic).length>0)return null;var Te=U.static,ce=Object.keys(Te);if(ce.length>0&&typeof Te[ce[0]]=="number"){for(var se=[],re=0;re"+Rr+"?"+Y+".constant["+Rr+"]:0;"}).join(""),"}}else{","if(",Je,"(",Y,".buffer)){",$r,"=",et,".createStream(",vo,",",Y,".buffer);","}else{",$r,"=",et,".getBuffer(",Y,".buffer);","}",Gr,'="type" in ',Y,"?",Ce.glTypes,"[",Y,".type]:",$r,".dtype;",kr.normalized,"=!!",Y,".normalized;");function Br(Mr){K(kr[Mr],"=",Y,".",Mr,"|0;")}return Br("size"),Br("offset"),Br("stride"),Br("divisor"),K("}}"),K.exit("if(",kr.isStream,"){",et,".destroyStream(",$r,");","}"),kr}Te[ce]=it(se,re)}),Te}function Wa(N){var U=N.static,$=N.dynamic,pe={};return Object.keys(U).forEach(function(Te){var ce=U[Te];pe[Te]=zr(function(se,re){return typeof ce=="number"||typeof ce=="boolean"?""+ce:se.link(ce)})}),Object.keys($).forEach(function(Te){var ce=$[Te];pe[Te]=it(ce,function(se,re){return se.invoke(re,ce)})}),pe}function sn(N,U,$,pe,Te){var ce=N.static,se=N.dynamic,re=aa(N,U),W=ut(N,Te),K=St(N,W,Te),Y=Dt(N,Te),ve=ln(N,Te),Ce=Sa(N,Te,re);function Je(Br){var Mr=K[Br];Mr&&(ve[Br]=Mr)}Je(si),Je(hr(hl));var et=Object.keys(ve).length>0,kr={framebuffer:W,draw:Y,shader:Ce,state:ve,dirty:et,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(kr.profile=ft(N,Te),kr.uniforms=Ut($,Te),kr.drawVAO=kr.scopeVAO=Y.vao,!kr.drawVAO&&Ce.program&&!re&&V.angle_instanced_arrays&&Y.static.elements){var Tr=!0,$r=Ce.program.attributes.map(function(Br){var Mr=U.static[Br];return Tr=Tr&&!!Mr,Mr});if(Tr&&$r.length>0){var Gr=ir.getVAO(ir.createVAO({attributes:$r,elements:Y.static.elements}));kr.drawVAO=new De(null,null,null,function(Br,Mr){return Br.link(Gr)}),kr.useVAO=!0}}return re?kr.useVAO=!0:kr.attributes=Ua(U,Te),kr.context=Wa(pe,Te),kr}function ya(N,U,$){var pe=N.shared,Te=pe.context,ce=N.scope();Object.keys($).forEach(function(se){U.save(Te,"."+se);var re=$[se],W=re.append(N,U);Array.isArray(W)?ce(Te,".",se,"=[",W.join(),"];"):ce(Te,".",se,"=",W,";")}),U(ce)}function ga(N,U,$,pe){var Te=N.shared,ce=Te.gl,se=Te.framebuffer,re;Oe&&(re=U.def(Te.extensions,".webgl_draw_buffers"));var W=N.constants,K=W.drawBuffer,Y=W.backBuffer,ve;$?ve=$.append(N,U):ve=U.def(se,".next"),pe||U("if(",ve,"!==",se,".cur){"),U("if(",ve,"){",ce,".bindFramebuffer(",ge,",",ve,".framebuffer);"),Oe&&U(re,".drawBuffersWEBGL(",K,"[",ve,".colorAttachments.length]);"),U("}else{",ce,".bindFramebuffer(",ge,",null);"),Oe&&U(re,".drawBuffersWEBGL(",Y,");"),U("}",se,".cur=",ve,";"),pe||U("}")}function Ea(N,U,$){var pe=N.shared,Te=pe.gl,ce=N.current,se=N.next,re=pe.current,W=pe.next,K=N.cond(re,".dirty");Ie.forEach(function(Y){var ve=hr(Y);if(!(ve in $.state)){var Ce,Je;if(ve in se){Ce=se[ve],Je=ce[ve];var et=k(dr[ve].length,function(Tr){return K.def(Ce,"[",Tr,"]")});K(N.cond(et.map(function(Tr,$r){return Tr+"!=="+Je+"["+$r+"]"}).join("||")).then(Te,".",Sr[ve],"(",et,");",et.map(function(Tr,$r){return Je+"["+$r+"]="+Tr}).join(";"),";"))}else{Ce=K.def(W,".",ve);var kr=N.cond(Ce,"!==",re,".",ve);K(kr),ve in qe?kr(N.cond(Ce).then(Te,".enable(",qe[ve],");").else(Te,".disable(",qe[ve],");"),re,".",ve,"=",Ce,";"):kr(Te,".",Sr[ve],"(",Ce,");",re,".",ve,"=",Ce,";")}}}),Object.keys($.state).length===0&&K(re,".dirty=false;"),U(K)}function At(N,U,$,pe){var Te=N.shared,ce=N.current,se=Te.current,re=Te.gl,W;ar(Object.keys($)).forEach(function(K){var Y=$[K];if(!(pe&&!pe(Y))){var ve=Y.append(N,U);if(qe[K]){var Ce=qe[K];Dr(Y)?(W=N.link(ve,{stable:!0}),U(N.cond(W).then(re,".enable(",Ce,");").else(re,".disable(",Ce,");")),U(se,".",K,"=",W,";")):(U(N.cond(ve).then(re,".enable(",Ce,");").else(re,".disable(",Ce,");")),U(se,".",K,"=",ve,";"))}else if(Si(ve)){var Je=ce[K];U(re,".",Sr[K],"(",ve,");",ve.map(function(et,kr){return Je+"["+kr+"]="+et}).join(";"),";")}else Dr(Y)?(W=N.link(ve,{stable:!0}),U(re,".",Sr[K],"(",W,");",se,".",K,"=",W,";")):U(re,".",Sr[K],"(",ve,");",se,".",K,"=",ve,";")}})}function Da(N,U){nr&&(N.instancing=U.def(N.shared.extensions,".angle_instanced_arrays"))}function Wt(N,U,$,pe,Te){var ce=N.shared,se=N.stats,re=ce.current,W=ce.timer,K=$.profile;function Y(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var ve,Ce;function Je(Br){ve=U.def(),Br(ve,"=",Y(),";"),typeof Te=="string"?Br(se,".count+=",Te,";"):Br(se,".count++;"),yr&&(pe?(Ce=U.def(),Br(Ce,"=",W,".getNumPendingQueries();")):Br(W,".beginQuery(",se,");"))}function et(Br){Br(se,".cpuTime+=",Y(),"-",ve,";"),yr&&(pe?Br(W,".pushScopeStats(",Ce,",",W,".getNumPendingQueries(),",se,");"):Br(W,".endQuery();"))}function kr(Br){var Mr=U.def(re,".profile");U(re,".profile=",Br,";"),U.exit(re,".profile=",Mr,";")}var Tr;if(K){if(Dr(K)){K.enable?(Je(U),et(U.exit),kr("true")):kr("false");return}Tr=K.append(N,U),kr(Tr)}else Tr=U.def(re,".profile");var $r=N.block();Je($r),U("if(",Tr,"){",$r,"}");var Gr=N.block();et(Gr),U.exit("if(",Tr,"){",Gr,"}")}function ja(N,U,$,pe,Te){var ce=N.shared;function se(W){switch(W){case pl:case Il:case Ol:return 2;case on:case Ts:case wf:return 3;case _f:case du:case mu:return 4;default:return 1}}function re(W,K,Y){var ve=ce.gl,Ce=U.def(W,".location"),Je=U.def(ce.attributes,"[",Ce,"]"),et=Y.state,kr=Y.buffer,Tr=[Y.x,Y.y,Y.z,Y.w],$r=["buffer","normalized","offset","stride"];function Gr(){U("if(!",Je,".buffer){",ve,".enableVertexAttribArray(",Ce,");}");var Mr=Y.type,Rr;if(Y.size?Rr=U.def(Y.size,"||",K):Rr=K,U("if(",Je,".type!==",Mr,"||",Je,".size!==",Rr,"||",$r.map(function(vt){return Je+"."+vt+"!=="+Y[vt]}).join("||"),"){",ve,".bindBuffer(",vo,",",kr,".buffer);",ve,".vertexAttribPointer(",[Ce,Rr,Mr,Y.normalized,Y.stride,Y.offset],");",Je,".type=",Mr,";",Je,".size=",Rr,";",$r.map(function(vt){return Je+"."+vt+"="+Y[vt]+";"}).join(""),"}"),nr){var Or=Y.divisor;U("if(",Je,".divisor!==",Or,"){",N.instancing,".vertexAttribDivisorANGLE(",[Ce,Or],");",Je,".divisor=",Or,";}")}}function Br(){U("if(",Je,".buffer){",ve,".disableVertexAttribArray(",Ce,");",Je,".buffer=null;","}if(",fo.map(function(Mr,Rr){return Je+"."+Mr+"!=="+Tr[Rr]}).join("||"),"){",ve,".vertexAttrib4f(",Ce,",",Tr,");",fo.map(function(Mr,Rr){return Je+"."+Mr+"="+Tr[Rr]+";"}).join(""),"}")}et===Ji?Gr():et===_s?Br():(U("if(",et,"===",Ji,"){"),Gr(),U("}else{"),Br(),U("}"))}pe.forEach(function(W){var K=W.name,Y=$.attributes[K],ve;if(Y){if(!Te(Y))return;ve=Y.append(N,U)}else{if(!Te(yt))return;var Ce=N.scopeAttrib(K);ve={},Object.keys(new ke).forEach(function(Je){ve[Je]=U.def(Ce,".",Je)})}re(N.link(W),se(W.info.type),ve)})}function fn(N,U,$,pe,Te,ce){for(var se=N.shared,re=se.gl,W,K=0;K1){for(var cn=[],Di=[],Ki=0;Ki>1)",kr],");")}function Or(){$(Tr,".drawArraysInstancedANGLE(",[Ce,Je,et,kr],");")}Y&&Y!=="null"?Gr?Rr():($("if(",Y,"){"),Rr(),$("}else{"),Or(),$("}")):Or()}function Mr(){function Rr(){$(ce+".drawElements("+[Ce,et,$r,Je+"<<(("+$r+"-"+uc+")>>1)"]+");")}function Or(){$(ce+".drawArrays("+[Ce,Je,et]+");")}Y&&Y!=="null"?Gr?Rr():($("if(",Y,"){"),Rr(),$("}else{"),Or(),$("}")):Or()}nr&&(typeof kr!="number"||kr>=0)?typeof kr=="string"?($("if(",kr,">0){"),Br(),$("}else if(",kr,"<0){"),Mr(),$("}")):Br():Mr()}function pt(N,U,$,pe,Te){var ce=Cr(),se=ce.proc("body",Te);return nr&&(ce.instancing=se.def(ce.shared.extensions,".angle_instanced_arrays")),N(ce,se,$,pe),ce.compile().body}function Rt(N,U,$,pe){Da(N,U),$.useVAO?$.drawVAO?U(N.shared.vao,".setVAO(",$.drawVAO.append(N,U),");"):U(N.shared.vao,".setVAO(",N.shared.vao,".targetVAO);"):(U(N.shared.vao,".setVAO(null);"),ja(N,U,$,pe.attributes,function(){return!0})),fn(N,U,$,pe.uniforms,function(){return!0},!1),un(N,U,U,$)}function Qt(N,U){var $=N.proc("draw",1);Da(N,$),ya(N,$,U.context),ga(N,$,U.framebuffer),Ea(N,$,U),At(N,$,U.state),Wt(N,$,U,!1,!0);var pe=U.shader.progVar.append(N,$);if($(N.shared.gl,".useProgram(",pe,".program);"),U.shader.program)Rt(N,$,U,U.shader.program);else{$(N.shared.vao,".setVAO(null);");var Te=N.global.def("{}"),ce=$.def(pe,".id"),se=$.def(Te,"[",ce,"]");$(N.cond(se).then(se,".call(this,a0);").else(se,"=",Te,"[",ce,"]=",N.link(function(re){return pt(Rt,N,U,re,1)}),"(",pe,");",se,".call(this,a0);"))}Object.keys(U.state).length>0&&$(N.shared.current,".dirty=true;"),N.shared.vao&&$(N.shared.vao,".setVAO(null);")}function z(N,U,$,pe){N.batchId="a1",Da(N,U);function Te(){return!0}ja(N,U,$,pe.attributes,Te),fn(N,U,$,pe.uniforms,Te,!1),un(N,U,U,$)}function me(N,U,$,pe){Da(N,U);var Te=$.contextDep,ce=U.def(),se="a0",re="a1",W=U.def();N.shared.props=W,N.batchId=ce;var K=N.scope(),Y=N.scope();U(K.entry,"for(",ce,"=0;",ce,"<",re,";++",ce,"){",W,"=",se,"[",ce,"];",Y,"}",K.exit);function ve($r){return $r.contextDep&&Te||$r.propDep}function Ce($r){return!ve($r)}if($.needsContext&&ya(N,Y,$.context),$.needsFramebuffer&&ga(N,Y,$.framebuffer),At(N,Y,$.state,ve),$.profile&&ve($.profile)&&Wt(N,Y,$,!1,!0),pe)$.useVAO?$.drawVAO?ve($.drawVAO)?Y(N.shared.vao,".setVAO(",$.drawVAO.append(N,Y),");"):K(N.shared.vao,".setVAO(",$.drawVAO.append(N,K),");"):K(N.shared.vao,".setVAO(",N.shared.vao,".targetVAO);"):(K(N.shared.vao,".setVAO(null);"),ja(N,K,$,pe.attributes,Ce),ja(N,Y,$,pe.attributes,ve)),fn(N,K,$,pe.uniforms,Ce,!1),fn(N,Y,$,pe.uniforms,ve,!0),un(N,K,Y,$);else{var Je=N.global.def("{}"),et=$.shader.progVar.append(N,Y),kr=Y.def(et,".id"),Tr=Y.def(Je,"[",kr,"]");Y(N.shared.gl,".useProgram(",et,".program);","if(!",Tr,"){",Tr,"=",Je,"[",kr,"]=",N.link(function($r){return pt(z,N,$,$r,2)}),"(",et,");}",Tr,".call(this,a0[",ce,"],",ce,");")}}function be(N,U){var $=N.proc("batch",2);N.batchId="0",Da(N,$);var pe=!1,Te=!0;Object.keys(U.context).forEach(function(Je){pe=pe||U.context[Je].propDep}),pe||(ya(N,$,U.context),Te=!1);var ce=U.framebuffer,se=!1;ce?(ce.propDep?pe=se=!0:ce.contextDep&&pe&&(se=!0),se||ga(N,$,ce)):ga(N,$,null),U.state.viewport&&U.state.viewport.propDep&&(pe=!0);function re(Je){return Je.contextDep&&pe||Je.propDep}Ea(N,$,U),At(N,$,U.state,function(Je){return!re(Je)}),(!U.profile||!re(U.profile))&&Wt(N,$,U,!1,"a1"),U.contextDep=pe,U.needsContext=Te,U.needsFramebuffer=se;var W=U.shader.progVar;if(W.contextDep&&pe||W.propDep)me(N,$,U,null);else{var K=W.append(N,$);if($(N.shared.gl,".useProgram(",K,".program);"),U.shader.program)me(N,$,U,U.shader.program);else{$(N.shared.vao,".setVAO(null);");var Y=N.global.def("{}"),ve=$.def(K,".id"),Ce=$.def(Y,"[",ve,"]");$(N.cond(Ce).then(Ce,".call(this,a0,a1);").else(Ce,"=",Y,"[",ve,"]=",N.link(function(Je){return pt(me,N,U,Je,2)}),"(",K,");",Ce,".call(this,a0,a1);"))}}Object.keys(U.state).length>0&&$(N.shared.current,".dirty=true;"),N.shared.vao&&$(N.shared.vao,".setVAO(null);")}function Nr(N,U){var $=N.proc("scope",3);N.batchId="a2";var pe=N.shared,Te=pe.current;if(ya(N,$,U.context),U.framebuffer&&U.framebuffer.append(N,$),ar(Object.keys(U.state)).forEach(function(re){var W=U.state[re],K=W.append(N,$);Si(K)?K.forEach(function(Y,ve){Er(Y)?$.set(N.next[re],"["+ve+"]",Y):$.set(N.next[re],"["+ve+"]",N.link(Y,{stable:!0}))}):Dr(W)?$.set(pe.next,"."+re,N.link(K,{stable:!0})):$.set(pe.next,"."+re,K)}),Wt(N,$,U,!0,!0),[uo,vu,qo,gi,Fo].forEach(function(re){var W=U.draw[re];if(W){var K=W.append(N,$);Er(K)?$.set(pe.draw,"."+re,K):$.set(pe.draw,"."+re,N.link(K),{stable:!0})}}),Object.keys(U.uniforms).forEach(function(re){var W=U.uniforms[re].append(N,$);Array.isArray(W)&&(W="["+W.map(function(K){return Er(K)?K:N.link(K,{stable:!0})})+"]"),$.set(pe.uniforms,"["+N.link(B.id(re),{stable:!0})+"]",W)}),Object.keys(U.attributes).forEach(function(re){var W=U.attributes[re].append(N,$),K=N.scopeAttrib(re);Object.keys(new ke).forEach(function(Y){$.set(K,"."+Y,W[Y])})}),U.scopeVAO){var ce=U.scopeVAO.append(N,$);Er(ce)?$.set(pe.vao,".targetVAO",ce):$.set(pe.vao,".targetVAO",N.link(ce,{stable:!0}))}function se(re){var W=U.shader[re];if(W){var K=W.append(N,$);Er(K)?$.set(pe.shader,"."+re,K):$.set(pe.shader,"."+re,N.link(K,{stable:!0}))}}se(Vo),se(dl),Object.keys(U.state).length>0&&($(Te,".dirty=true;"),$.exit(Te,".dirty=true;")),$("a1(",N.shared.context,",a0,",N.batchId,");")}function Ft(N){if(!(typeof N!="object"||Si(N))){for(var U=Object.keys(N),$=0;$=0;--pt){var Rt=Jr[pt];Rt&&Rt(Pe,null,0)}V.flush(),sr&&sr.update()}function St(){!ft&&Jr.length>0&&(ft=d.next(ut))}function aa(){ft&&(d.cancel(ut),ft=null)}function Sa(pt){pt.preventDefault(),xe=!0,aa(),ct.forEach(function(Rt){Rt()})}function Dt(pt){V.getError(),xe=!1,we.restore(),Zr.restore(),nr.restore(),Ie.restore(),qe.restore(),Sr.restore(),br.restore(),sr&&sr.restore(),hr.procs.refresh(),St(),mr.forEach(function(Rt){Rt()})}Er&&(Er.addEventListener(jt,Sa,!1),Er.addEventListener(va,Dt,!1));function ln(){Jr.length=0,aa(),Er&&(Er.removeEventListener(jt,Sa),Er.removeEventListener(va,Dt)),Zr.clear(),Sr.clear(),qe.clear(),br.clear(),Ie.clear(),Oe.clear(),nr.clear(),sr&&sr.clear(),Cr.forEach(function(pt){pt()})}function Ut(pt){function Rt(ce){var se=e({},ce);delete se.uniforms,delete se.attributes,delete se.context,delete se.vao,"stencil"in se&&se.stencil.op&&(se.stencil.opBack=se.stencil.opFront=se.stencil.op,delete se.stencil.op);function re(W){if(W in se){var K=se[W];delete se[W],Object.keys(K).forEach(function(Y){se[W+"."+Y]=K[Y]})}}return re("blend"),re("depth"),re("cull"),re("stencil"),re("polygonOffset"),re("scissor"),re("sample"),"vao"in ce&&(se.vao=ce.vao),se}function Qt(ce,se){var re={},W={};return Object.keys(ce).forEach(function(K){var Y=ce[K];if(v.isDynamic(Y)){W[K]=v.unbox(Y,K);return}else if(se&&Array.isArray(Y)){for(var ve=0;ve0)return N.call(this,pe(ce|0),ce|0)}else if(Array.isArray(ce)){if(ce.length)return N.call(this,ce,ce.length)}else return qr.call(this,ce)}return e(Te,{stats:Ft,destroy:function(){Ht.destroy()}})}var Ua=Sr.setFBO=Ut({framebuffer:v.define.call(null,Ya,"framebuffer")});function Wa(pt,Rt){var Qt=0;hr.procs.poll();var z=Rt.color;z&&(V.clearColor(+z[0]||0,+z[1]||0,+z[2]||0,+z[3]||0),Qt|=_n),"depth"in Rt&&(V.clearDepth(+Rt.depth),Qt|=Ca),"stencil"in Rt&&(V.clearStencil(Rt.stencil|0),Qt|=dt),V.clear(Qt)}function sn(pt){if("framebuffer"in pt)if(pt.framebuffer&&pt.framebuffer_reglType==="framebufferCube")for(var Rt=0;Rt<6;++Rt)Ua(e({framebuffer:pt.framebuffer.faces[Rt]},pt),Wa);else Ua(pt,Wa);else Wa(null,pt)}function ya(pt){Jr.push(pt);function Rt(){var Qt=Qn(Jr,pt);function z(){var me=Qn(Jr,z);Jr[me]=Jr[Jr.length-1],Jr.length-=1,Jr.length<=0&&aa()}Jr[Qt]=z}return St(),{cancel:Rt}}function ga(){var pt=vr.viewport,Rt=vr.scissor_box;pt[0]=pt[1]=Rt[0]=Rt[1]=0,Pe.viewportWidth=Pe.framebufferWidth=Pe.drawingBufferWidth=pt[2]=Rt[2]=V.drawingBufferWidth,Pe.viewportHeight=Pe.framebufferHeight=Pe.drawingBufferHeight=pt[3]=Rt[3]=V.drawingBufferHeight}function Ea(){Pe.tick+=1,Pe.time=Da(),ga(),hr.procs.poll()}function At(){Ie.refresh(),ga(),hr.procs.refresh(),sr&&sr.update()}function Da(){return(p()-Qr)/1e3}At();function Wt(pt,Rt){var Qt;switch(pt){case"frame":return ya(Rt);case"lost":Qt=ct;break;case"restore":Qt=mr;break;case"destroy":Qt=Cr;break;default:}return Qt.push(Rt),{cancel:function(){for(var z=0;z=0},read:fr,destroy:ln,_gl:V,_refresh:At,poll:function(){Ea(),sr&&sr.update()},now:Da,stats:He,getCachedCode:ja,preloadCachedCode:fn});return B.onDone(null,un),un}return Li})});var Z_=P((rOe,zre)=>{"use strict";var M9e=Ore(),S9e=Bre();zre.exports=function(r,t,a){var n=r._fullLayout,i=!0;return n._glcanvas.each(function(o){if(o.regl){o.regl.preloadCachedCode(a);return}if(!(o.pick&&!n._has("parcoords"))){try{o.regl=S9e({canvas:this,attributes:{antialias:!o.pick,preserveDrawingBuffer:!0},pixelRatio:r._context.plotGlPixelRatio||window.devicePixelRatio,extensions:t||[],cachedCode:a||{}})}catch(l){i=!1}o.regl||(i=!1),i&&this.addEventListener("webglcontextlost",function(l){r&&r.emit&&r.emit("plotly_webglcontextlost",{event:l,layer:o.key})},!1)}}),i||M9e({container:n._glcontainer.node()}),i}});var Wre=P((x9,Yre)=>{"use strict";var Gre=u7(),Ure=G7(),E9e=iee(),Hre=Pre(),b9=Ur(),k9e=jc().selectMode,C9e=Z_(),L9e=Ri(),D9e=P6(),F9e=l7().styleTextSelection,Vre={};function q9e(e,r,t,a){var n=e._size,i=e.width*a,o=e.height*a,l=n.l*a,s=n.b*a,f=n.r*a,u=n.t*a,c=n.w*a,v=n.h*a;return[l+r.domain[0]*c,s+t.domain[0]*v,i-f-(1-r.domain[1])*c,o-u-(1-t.domain[1])*v]}var x9=Yre.exports=function(r,t,a){if(a.length){var n=r._fullLayout,i=t._scene,o=t.xaxis,l=t.yaxis,s,f;if(i){var u=C9e(r,["ANGLE_instanced_arrays","OES_element_index_uint"],Vre);if(!u){i.init();return}var c=i.count,v=n._glcanvas.data()[0].regl;if(D9e(r,t,a),i.dirty){if((i.line2d||i.error2d)&&!(i.scatter2d||i.fill2d||i.glText)&&v.clear({color:!0,depth:!0}),i.error2d===!0&&(i.error2d=E9e(v)),i.line2d===!0&&(i.line2d=Ure(v)),i.scatter2d===!0&&(i.scatter2d=Gre(v)),i.fill2d===!0&&(i.fill2d=Ure(v)),i.glText===!0)for(i.glText=new Array(c),s=0;si.glText.length){var d=c-i.glText.length;for(s=0;sue&&(isNaN(ae[Le])||isNaN(ae[Le+1]));)Le-=2;Z.positions=ae.slice(ue,Le+2)}return Z}),i.line2d.update(i.lineOptions)),i.error2d){var m=(i.errorXOptions||[]).concat(i.errorYOptions||[]);i.error2d.update(m)}i.scatter2d&&i.scatter2d.update(i.markerOptions),i.fillOrder=b9.repeat(null,c),i.fill2d&&(i.fillOptions=i.fillOptions.map(function(Z,ae){var ue=a[ae];if(!(!Z||!ue||!ue[0]||!ue[0].trace)){var Le=ue[0],Be=Le.trace,Ee=Le.t,Xe=i.lineOptions[ae],Ae,rr,ze=[];Be._ownfill&&ze.push(ae),Be._nexttrace&&ze.push(ae+1),ze.length&&(i.fillOrder[ae]=ze);var We=[],$e=Xe&&Xe.positions||Ee.positions,Ue,ee;if(Be.fill==="tozeroy"){for(Ue=0;Ue<$e.length&&isNaN($e[Ue+1]);)Ue+=2;for(ee=$e.length-2;ee>Ue&&isNaN($e[ee+1]);)ee-=2;$e[Ue+1]!==0&&(We=[$e[Ue],0]),We=We.concat($e.slice(Ue,ee+2)),$e[ee+1]!==0&&(We=We.concat([$e[ee],0]))}else if(Be.fill==="tozerox"){for(Ue=0;Ue<$e.length&&isNaN($e[Ue]);)Ue+=2;for(ee=$e.length-2;ee>Ue&&isNaN($e[ee]);)ee-=2;$e[Ue]!==0&&(We=[0,$e[Ue+1]]),We=We.concat($e.slice(Ue,ee+2)),$e[ee]!==0&&(We=We.concat([0,$e[ee+1]]))}else if(Be.fill==="toself"||Be.fill==="tonext"){for(We=[],Ae=0,Z.splitNull=!0,rr=0;rr<$e.length;rr+=2)(isNaN($e[rr])||isNaN($e[rr+1]))&&(We=We.concat($e.slice(Ae,rr)),We.push($e[Ae],$e[Ae+1]),We.push(null,null),Ae=rr+2);We=We.concat($e.slice(Ae)),Ae&&We.push($e[Ae],$e[Ae+1])}else{var de=Be._nexttrace;if(de){var ne=i.lineOptions[ae+1];if(ne){var je=ne.positions;if(Be.fill==="tonexty"){for(We=$e.slice(),ae=Math.floor(je.length/2);ae--;){var ur=je[ae*2],er=je[ae*2+1];isNaN(ur)||isNaN(er)||We.push(ur,er)}Z.fill=de.fillcolor}}}}if(Be._prevtrace&&Be._prevtrace.fill==="tonext"){var Lr=i.lineOptions[ae-1].positions,Pr=We.length/2;Ae=Pr;var _r=[Ae];for(rr=0;rr-1;for(s=0;s{"use strict";var jre=zJ();jre.plot=Wre();Xre.exports=jre});var $re=P((aOe,Jre)=>{"use strict";Jre.exports=Zre()});var _9=P((nOe,rte)=>{"use strict";var R9e=Qc(),ete=k0(),Qre=im().axisHoverFormat,{hovertemplateAttrs:P9e,templatefallbackAttrs:N9e}=td(),vg=vx(),I9e=qi().idRegex,O9e=Xa().templatedArray,Vp=zn().extendFlat,Yu=R9e.marker,B9e=Yu.line,z9e=Vp(ete("marker.line",{editTypeOverride:"calc"}),{width:Vp({},B9e.width,{editType:"calc"}),editType:"calc"}),J_=Vp(ete("marker"),{symbol:Yu.symbol,angle:Yu.angle,size:Vp({},Yu.size,{editType:"markerSize"}),sizeref:Yu.sizeref,sizemin:Yu.sizemin,sizemode:Yu.sizemode,opacity:Yu.opacity,colorbar:Yu.colorbar,line:z9e,editType:"calc"});J_.color.editType=J_.cmin.editType=J_.cmax.editType="style";function Kre(e){return{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"subplotid",regex:I9e[e],editType:"plot"}}}rte.exports={dimensions:O9e("dimension",{visible:{valType:"boolean",dflt:!0,editType:"calc"},label:{valType:"string",editType:"calc"},values:{valType:"data_array",editType:"calc+clearAxisTypes"},axis:{type:{valType:"enumerated",values:["linear","log","date","category"],editType:"calc+clearAxisTypes"},matches:{valType:"boolean",dflt:!1,editType:"calc"},editType:"calc+clearAxisTypes"},editType:"calc+clearAxisTypes"}),text:Vp({},vg.text,{}),hovertext:Vp({},vg.hovertext,{}),hovertemplate:P9e(),hovertemplatefallback:N9e(),xhoverformat:Qre("x"),yhoverformat:Qre("y"),marker:J_,xaxes:Kre("x"),yaxes:Kre("y"),diagonal:{visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"},showupperhalf:{valType:"boolean",dflt:!0,editType:"calc"},showlowerhalf:{valType:"boolean",dflt:!0,editType:"calc"},selected:{marker:vg.selected.marker,editType:"calc"},unselected:{marker:vg.unselected.marker,editType:"calc"},opacity:vg.opacity}});var w9=P((iOe,tte)=>{"use strict";tte.exports=function(e,r,t,a){a||(a=1/0);var n,i;for(n=0;n{"use strict";var A9=Ur(),G9e=gl(),ate=_9(),U9e=Ri(),H9e=wb(),V9e=w9(),Y9e=hx().isOpenSymbol;nte.exports=function(r,t,a,n){function i(d,p){return A9.coerce(r,t,ate,d,p)}var o=G9e(r,t,{name:"dimensions",handleItemDefaults:W9e}),l=i("diagonal.visible"),s=i("showupperhalf"),f=i("showlowerhalf"),u=V9e(t,o,"values");if(!u||!l&&!s&&!f){t.visible=!1;return}i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),i("xhoverformat"),i("yhoverformat"),H9e(r,t,a,n,i,{noAngleRef:!0,noStandOff:!0});var c=Y9e(t.marker.symbol),v=U9e.isBubble(t);i("marker.line.width",c||v?1:0),j9e(r,t,n,i),A9.coerceSelectionMarkerOpacity(t,i)};function W9e(e,r){function t(n,i){return A9.coerce(e,r,ate.dimensions,n,i)}t("label");var a=t("values");a&&a.length?t("visible"):r.visible=!1,t("axis.type"),t("axis.matches")}function j9e(e,r,t,a){var n=r.dimensions,i=n.length,o=r.showupperhalf,l=r.showlowerhalf,s=r.diagonal.visible,f,u,c=new Array(i),v=new Array(i);for(f=0;fu&&o||f{"use strict";var ote=Ur();lte.exports=function(r,t){var a=r._fullLayout,n=t.uid,i=a._splomScenes;i||(i=a._splomScenes={});var o={dirty:!0,selectBatch:[],unselectBatch:[]},l={matrix:!1,selectBatch:[],unselectBatch:[]},s=i[t.uid];return s||(s=i[n]=ote.extendFlat({},o,l),s.draw=function(){s.matrix&&s.matrix.draw&&(s.selectBatch.length||s.unselectBatch.length?s.matrix.draw(s.unselectBatch,s.selectBatch):s.matrix.draw()),s.dirty=!1},s.destroy=function(){s.matrix&&s.matrix.destroy&&s.matrix.destroy(),s.matrixOptions=null,s.selectBatch=null,s.unselectBatch=null,s=null}),s.dirty||ote.extendFlat(s,o),s}});var cte=P((sOe,ute)=>{"use strict";var T9=Ur(),$_=kn(),X9e=Xd().calcMarkerSize,Z9e=Xd().calcAxisExpansion,J9e=ry(),fte=Zy().markerSelection,$9e=Zy().markerStyle,Q9e=ste(),K9e=Kn().BADNUM,eMe=vp().TOO_MANY_POINTS;ute.exports=function(r,t){var a=t.dimensions,n=t._length,i={},o=i.cdata=[],l=i.data=[],s=t._visibleDims=[],f,u,c,v,d;function p(_,x){for(var T=_.makeCalcdata({v:x.values,vcalendar:t.calendar},"v"),E=0;EeMe,b;for(m?b=i.sizeAvg||Math.max(i.size,3):b=X9e(t,n),u=0;u{(function(){var e,r,t,a,n,i;typeof performance!="undefined"&&performance!==null&&performance.now?hg.exports=function(){return performance.now()}:typeof process!="undefined"&&process!==null&&process.hrtime?(hg.exports=function(){return(e()-n)/1e6},r=process.hrtime,e=function(){var o;return o=r(),o[0]*1e9+o[1]},a=e(),i=process.uptime()*1e9,n=a-i):Date.now?(hg.exports=function(){return Date.now()-t},t=Date.now()):(hg.exports=function(){return new Date().getTime()-t},t=new Date().getTime())}).call(vte)});var pte=P((fOe,e5)=>{var rMe=hte(),Wu=window,Q_=["moz","webkit"],Wp="AnimationFrame",jp=Wu["request"+Wp],dg=Wu["cancel"+Wp]||Wu["cancelRequest"+Wp];for(Yp=0;!jp&&Yp{mte.exports=function(r,t){var a=typeof r=="number",n=typeof t=="number";a&&!n?(t=r,r=0):!a&&!n&&(r=0,t=0),r=r|0,t=t|0;var i=t-r;if(i<0)throw new Error("array length must be positive");for(var o=new Array(i),l=0,s=r;l{"use strict";var tMe=u7(),aMe=If(),nMe=ah(),gte=pte(),iMe=yte(),S9=hp(),oMe=nh();xte.exports=Av;function Av(e,r){if(!(this instanceof Av))return new Av(e,r);this.traces=[],this.passes={},this.regl=e,this.scatter=tMe(e),this.canvas=this.scatter.canvas}Av.prototype.render=function(...e){return e.length&&this.update(...e),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?this.planned==null&&(this.planned=gte(()=>{this.draw(),this.dirty=!0,this.planned=null})):(this.draw(),this.dirty=!0,gte(()=>{this.dirty=!1})),this)};Av.prototype.update=function(...e){if(!e.length)return;for(let a=0;am||!n.lower&&y{r[i+l]=a})}this.scatter.draw(...r)}return this};Av.prototype.destroy=function(){return this.traces.forEach(e=>{e.buffer&&e.buffer.destroy&&e.buffer.destroy()}),this.traces=null,this.passes=null,this.scatter.destroy(),this};function lMe(e,r,t){let a=e.id!=null?e.id:e,n=r,i=t;return a<<16|(n&255)<<8|i&255}function r5(e,r,t){let a,n,i,o,l,s,f,u,c=e[r],v=e[t];return c.length>2?(a=c[0],i=c[2],n=c[1],o=c[3]):c.length?(a=n=c[0],i=o=c[1]):(a=c.x,n=c.y,i=c.x+c.width,o=c.y+c.height),v.length>2?(l=v[0],f=v[2],s=v[1],u=v[3]):v.length?(l=s=v[0],f=u=v[1]):(l=v.x,s=v.y,f=v.x+v.width,u=v.y+v.height),[l,n,f,o]}function bte(e){if(typeof e=="number")return[e,e,e,e];if(e.length===2)return[e[0],e[1],e[0],e[1]];{let r=S9(e);return[r.x,r.y,r.x+r.width,r.y+r.height]}}});var Ate=P((vOe,wte)=>{"use strict";var sMe=_te(),E9=Ur(),t5=kn(),fMe=jc().selectMode;wte.exports=function(r,t,a){if(a.length)for(var n=0;n-1,O=fMe(u)||!!n.selectedpoints||I,q=!0;if(O){var H=n._length;if(n.selectedpoints){o.selectBatch=n.selectedpoints;var j=n.selectedpoints,le={};for(d=0;d{"use strict";Tte.getDimIndex=function(r,t){for(var a=t._id,n=a.charAt(0),i={x:0,y:1}[n],o=r._visibleDims,l=0;l{"use strict";var Mte=k9(),cMe=HT().calcHover,Ste=yn().getFromId,vMe=zn().extendFlat;function hMe(e,r,t,a,n){n||(n={});var i=(a||"").charAt(0)==="x",o=(a||"").charAt(0)==="y",l=Ete(e,r,t);if((i||o)&&n.hoversubplots==="axis"&&l[0])for(var s=(i?e.xa:e.ya)._subplotsWith,f=n.gd,u=vMe({},e),c=0;c{"use strict";var qte=Ur(),Lte=qte.pushUnique,Dte=Ri(),Fte=k9();Rte.exports=function(r,t){var a=r.cd,n=a[0].trace,i=a[0].t,o=r.scene,l=o.matrixOptions.cdata,s=r.xaxis,f=r.yaxis,u=[];if(!o)return u;var c=!Dte.hasMarkers(n)&&!Dte.hasText(n);if(n.visible!==!0||c)return u;var v=Fte.getDimIndex(n,s),d=Fte.getDimIndex(n,f);if(v===!1||d===!1)return u;var p=i.xpx[v],y=i.ypx[d],m=l[v],b=l[d],A=(r.scene.selectBatch||[]).slice(),_=[];if(t!==!1&&!t.degenerate)for(var x=0;x{"use strict";var Nte=Ur(),dMe=ry(),pMe=Zy().markerStyle;Ite.exports=function(r,t){var a=t.trace,n=r._fullLayout._splomScenes[a.uid];if(n){dMe(r,a),Nte.extendFlat(n.matrixOptions,pMe(r,a));var i=Nte.extendFlat({},n.matrixOptions,n.viewOpts);n.matrix.update(i,null)}}});var zte=P((yOe,Bte)=>{"use strict";var mMe=Bt(),yMe=LT();Bte.exports={moduleType:"trace",name:"splom",categories:["gl","regl","cartesian","symbols","showLegend","scatter-like"],attributes:_9(),supplyDefaults:ite(),colorbar:Cb(),calc:cte(),plot:Ate(),hoverPoints:Cte().hoverPoints,selectPoints:Pte(),editStyle:Ote(),meta:{}};mMe.register(yMe)});var Wte=P((gOe,Yte)=>{"use strict";var gMe=G7(),bMe=Bt(),xMe=Z_(),_Me=rm().getModuleCalcData,Tv=sy(),Gte=kn().getFromId,Ute=yn().shouldShowZeroLine,Hte="splom",Vte={};function wMe(e){var r=e._fullLayout,t=bMe.getModule(Hte),a=_Me(e.calcdata,t)[0],n=xMe(e,["ANGLE_instanced_arrays","OES_element_index_uint"],Vte);n&&(r._hasOnlyLargeSploms&&C9(e),t.plot(e,{},a))}function AMe(e){var r=e.calcdata,t=e._fullLayout;t._hasOnlyLargeSploms&&C9(e);for(var a=0;a{"use strict";var jte=zte();jte.basePlotModule=Wte(),Xte.exports=jte});var $te=P((xOe,Jte)=>{"use strict";Jte.exports=Zte()});var F9=P((_Oe,Qte)=>{"use strict";var EMe=k0(),L9=Ul(),D9=Gi(),kMe=ox().attributes,a5=zn().extendFlat,CMe=Xa().templatedArray;Qte.exports={domain:kMe({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:D9({editType:"plot"}),tickfont:D9({autoShadowDflt:!0,editType:"plot"}),rangefont:D9({editType:"plot"}),dimensions:CMe("dimension",{label:{valType:"string",editType:"plot"},tickvals:a5({},L9.tickvals,{editType:"plot"}),ticktext:a5({},L9.ticktext,{editType:"plot"}),tickformat:a5({},L9.tickformat,{editType:"plot"}),visible:{valType:"boolean",dflt:!0,editType:"plot"},range:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},constraintrange:{valType:"info_array",freeLength:!0,dimensions:"1-2",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},multiselect:{valType:"boolean",dflt:!0,editType:"plot"},values:{valType:"data_array",editType:"calc"},editType:"calc"}),line:a5({editType:"calc"},EMe("line",{colorscaleDflt:"Viridis",autoColorDflt:!1,editTypeOverride:"calc"})),unselected:{line:{color:{valType:"color",dflt:"#7f7f7f",editType:"plot"},opacity:{valType:"number",min:0,max:1,dflt:"auto",editType:"plot"},editType:"plot"},editType:"plot"}}});var pg=P((wOe,Kte)=>{"use strict";Kte.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:["contextLineLayer","focusLineLayer","pickLineLayer"],axisTitleOffset:28,axisExtentOffset:10,bar:{width:4,captureWidth:10,fillColor:"magenta",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeOpacity:1,strokeWidth:1,handleHeight:8,handleOpacity:1,handleOverlap:0},cn:{axisExtentText:"axis-extent-text",parcoordsLineLayers:"parcoords-line-layers",parcoordsLineLayer:"parcoords-lines",parcoords:"parcoords",parcoordsControlView:"parcoords-control-view",yAxis:"y-axis",axisOverlays:"axis-overlays",axis:"axis",axisHeading:"axis-heading",axisTitle:"axis-title",axisExtent:"axis-extent",axisExtentTop:"axis-extent-top",axisExtentTopText:"axis-extent-top-text",axisExtentBottom:"axis-extent-bottom",axisExtentBottomText:"axis-extent-bottom-text",axisBrush:"axis-brush"},id:{filterBarPattern:"filter-bar-pattern"}}});var mg=P((AOe,rae)=>{"use strict";var LMe=e2();function eae(e){return[e]}rae.exports={keyFun:function(e){return e.key},repeat:eae,descend:LMe,wrap:eae,unwrap:function(e){return e[0]}}});var P9=P((TOe,vae)=>{"use strict";var jn=pg(),rf=da(),DMe=mg().keyFun,n5=mg().repeat,Xp=Ur().sorterAsc,FMe=Ur().strTranslate,tae=jn.bar.snapRatio;function aae(e,r){return e*(1-tae)+r*tae}var nae=jn.bar.snapClose;function qMe(e,r){return e*(1-nae)+r*nae}function o5(e,r,t,a){if(RMe(t,a))return t;var n=e?-1:1,i=0,o=r.length-1;if(n<0){var l=i;i=o,o=l}for(var s=r[i],f=s,u=i;n*u=r[t][0]&&e<=r[t][1])return!0;return!1}function PMe(e){e.attr("x",-jn.bar.captureWidth/2).attr("width",jn.bar.captureWidth)}function NMe(e){e.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function IMe(e){if(!e.brush.filterSpecified)return"0,"+e.height;for(var r=iae(e.brush.filter.getConsolidated(),e.height),t=[0],a,n,i,o=r.length?r[0][0]:null,l=0;le[1]+t||r=.9*e[1]+.1*e[0]?"n":r<=.9*e[0]+.1*e[1]?"s":"ns"}function oae(){rf.select(document.body).style("cursor",null)}function R9(e){e.attr("stroke-dasharray",IMe)}function i5(e,r){var t=rf.select(e).selectAll(".highlight, .highlight-shadow"),a=r?t.transition().duration(jn.bar.snapDuration).each("end",r):t;R9(a)}function lae(e,r){var t=e.brush,a=t.filterSpecified,n=NaN,i={},o;if(a){var l=e.height,s=t.filter.getConsolidated(),f=iae(s,l),u=NaN,c=NaN,v=NaN;for(o=0;o<=f.length;o++){var d=f[o];if(d&&d[0]<=r&&r<=d[1]){u=o;break}else if(c=o?o-1:NaN,d&&d[0]>r){v=o;break}}if(n=u,isNaN(n)&&(isNaN(c)||isNaN(v)?n=isNaN(c)?v:c:n=r-f[c][1]=A[0]&&b<=A[1]){i.clickableOrdinalRange=A;break}}}return i}function BMe(e,r){rf.event.sourceEvent.stopPropagation();var t=r.height-rf.mouse(e)[1]-2*jn.verticalPadding,a=r.unitToPaddedPx.invert(t),n=r.brush,i=lae(r,t),o=i.interval,l=n.svgBrush;if(l.wasDragged=!1,l.grabbingBar=i.region==="ns",l.grabbingBar){var s=o.map(r.unitToPaddedPx);l.grabPoint=t-s[0]-jn.verticalPadding,l.barLength=s[1]-s[0]}l.clickableOrdinalRange=i.clickableOrdinalRange,l.stayingIntervals=r.multiselect&&n.filterSpecified?n.filter.getConsolidated():[],o&&(l.stayingIntervals=l.stayingIntervals.filter(function(f){return f[0]!==o[0]&&f[1]!==o[1]})),l.startExtent=i.region?o[i.region==="s"?1:0]:a,r.parent.inBrushDrag=!0,l.brushStartCallback()}function sae(e,r){rf.event.sourceEvent.stopPropagation();var t=r.height-rf.mouse(e)[1]-2*jn.verticalPadding,a=r.brush.svgBrush;a.wasDragged=!0,a._dragging=!0,a.grabbingBar?a.newExtent=[t-a.grabPoint,t+a.barLength-a.grabPoint].map(r.unitToPaddedPx.invert):a.newExtent=[a.startExtent,r.unitToPaddedPx.invert(t)].sort(Xp),r.brush.filterSpecified=!0,a.extent=a.stayingIntervals.concat([a.newExtent]),a.brushCallback(r),i5(e.parentNode)}function zMe(e,r){var t=r.brush,a=t.filter,n=t.svgBrush;n._dragging||(fae(e,r),sae(e,r),r.brush.svgBrush.wasDragged=!1),n._dragging=!1;var i=rf.event;i.sourceEvent.stopPropagation();var o=n.grabbingBar;if(n.grabbingBar=!1,n.grabLocation=void 0,r.parent.inBrushDrag=!1,oae(),!n.wasDragged){n.wasDragged=void 0,n.clickableOrdinalRange?t.filterSpecified&&r.multiselect?n.extent.push(n.clickableOrdinalRange):(n.extent=[n.clickableOrdinalRange],t.filterSpecified=!0):o?(n.extent=n.stayingIntervals,n.extent.length===0&&q9(t)):q9(t),n.brushCallback(r),i5(e.parentNode),n.brushEndCallback(t.filterSpecified?a.getConsolidated():[]);return}var l=function(){a.set(a.getConsolidated())};if(r.ordinal){var s=r.unitTickvals;s[s.length-1]n.newExtent[0];n.extent=n.stayingIntervals.concat(f?[n.newExtent]:[]),n.extent.length||q9(t),n.brushCallback(r),f?i5(e.parentNode,l):(l(),i5(e.parentNode))}else l();n.brushEndCallback(t.filterSpecified?a.getConsolidated():[])}function fae(e,r){var t=r.height-rf.mouse(e)[1]-2*jn.verticalPadding,a=lae(r,t),n="crosshair";a.clickableOrdinalRange?n="pointer":a.region&&(n=a.region+"-resize"),rf.select(document.body).style("cursor",n)}function GMe(e){e.on("mousemove",function(r){rf.event.preventDefault(),r.parent.inBrushDrag||fae(this,r)}).on("mouseleave",function(r){r.parent.inBrushDrag||oae()}).call(rf.behavior.drag().on("dragstart",function(r){BMe(this,r)}).on("drag",function(r){sae(this,r)}).on("dragend",function(r){zMe(this,r)}))}function uae(e,r){return e[0]-r[0]}function UMe(e,r,t){var a=t._context.staticPlot,n=e.selectAll(".background").data(n5);n.enter().append("rect").classed("background",!0).call(PMe).call(NMe).style("pointer-events",a?"none":"auto").attr("transform",FMe(0,jn.verticalPadding)),n.call(GMe).attr("height",function(l){return l.height-jn.verticalPadding});var i=e.selectAll(".highlight-shadow").data(n5);i.enter().append("line").classed("highlight-shadow",!0).attr("x",-jn.bar.width/2).attr("stroke-width",jn.bar.width+jn.bar.strokeWidth).attr("stroke",r).attr("opacity",jn.bar.strokeOpacity).attr("stroke-linecap","butt"),i.attr("y1",function(l){return l.height}).call(R9);var o=e.selectAll(".highlight").data(n5);o.enter().append("line").classed("highlight",!0).attr("x",-jn.bar.width/2).attr("stroke-width",jn.bar.width-jn.bar.strokeWidth).attr("stroke",jn.bar.fillColor).attr("opacity",jn.bar.fillOpacity).attr("stroke-linecap","butt"),o.attr("y1",function(l){return l.height}).call(R9)}function HMe(e,r,t){var a=e.selectAll("."+jn.cn.axisBrush).data(n5,DMe);a.enter().append("g").classed(jn.cn.axisBrush,!0),UMe(a,r,t)}function VMe(e){return e.svgBrush.extent.map(function(r){return r.slice()})}function q9(e){e.filterSpecified=!1,e.svgBrush.extent=[[-1/0,1/0]]}function YMe(e){return function(t){var a=t.brush,n=VMe(a),i=n.slice();a.filter.set(i),e()}}function cae(e){for(var r=e.slice(),t=[],a,n=r.shift();n;){for(a=n.slice();(n=r.shift())&&n[0]<=a[1];)a[1]=Math.max(a[1],n[1]);t.push(a)}return t.length===1&&t[0][0]>t[0][1]&&(t=[]),t}function WMe(){var e=[],r,t;return{set:function(a){e=a.map(function(n){return n.slice().sort(Xp)}).sort(uae),e.length===1&&e[0][0]===-1/0&&e[0][1]===1/0&&(e=[[0,-1]]),r=cae(e),t=e.reduce(function(n,i){return[Math.min(n[0],i[0]),Math.max(n[1],i[1])]},[1/0,-1/0])},get:function(){return e.slice()},getConsolidated:function(){return r},getBounds:function(){return t}}}function jMe(e,r,t,a,n,i){var o=WMe();return o.set(t),{filter:o,filterSpecified:r,svgBrush:{extent:[],brushStartCallback:a,brushCallback:YMe(n),brushEndCallback:i}}}function XMe(e,r){if(Array.isArray(e[0])?(e=e.map(function(a){return a.sort(Xp)}),r.multiselect?e=cae(e.sort(uae)):e=[e[0]]):e=[e.sort(Xp)],r.tickvals){var t=r.tickvals.slice().sort(Xp);if(e=e.map(function(a){var n=[o5(0,t,a[0],[]),o5(1,t,a[1],[])];if(n[1]>n[0])return n}).filter(function(a){return a}),!e.length)return}return e.length>1?e:e[0]}vae.exports={makeBrush:jMe,ensureAxisBrush:HMe,cleanRanges:XMe}});var pae=P((MOe,dae)=>{"use strict";var Mv=Ur(),ZMe=Ps().hasColorscale,JMe=gd(),$Me=ox().defaults,QMe=gl(),KMe=yn(),hae=F9(),eSe=P9(),N9=pg().maxDimensionCount,rSe=w9();function tSe(e,r,t,a,n){var i=n("line.color",t);if(ZMe(e,"line")&&Mv.isArrayOrTypedArray(i)){if(i.length)return n("line.colorscale"),JMe(e,r,a,n,{prefix:"line.",cLetter:"c"}),i.length;r.line.color=t}return 1/0}function aSe(e,r,t,a){function n(f,u){return Mv.coerce(e,r,hae.dimensions,f,u)}var i=n("values"),o=n("visible");if(i&&i.length||(o=r.visible=!1),o){n("label"),n("tickvals"),n("ticktext"),n("tickformat");var l=n("range");r._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:l},KMe.setConvert(r._ax,a.layout),n("multiselect");var s=n("constraintrange");s&&(r.constraintrange=eSe.cleanRanges(s,r))}}dae.exports=function(r,t,a,n){function i(u,c){return Mv.coerce(r,t,hae,u,c)}var o=r.dimensions;Array.isArray(o)&&o.length>N9&&(Mv.log("parcoords traces support up to "+N9+" dimensions at the moment"),o.splice(N9));var l=QMe(r,t,{name:"dimensions",layout:n,handleItemDefaults:aSe}),s=tSe(r,t,a,n,i);$Me(t,n,i),(!Array.isArray(l)||!l.length)&&(t.visible=!1),rSe(t,l,"values",s);var f=Mv.extendFlat({},n.font,{size:Math.round(n.font.size/1.2)});Mv.coerceFont(i,"labelfont",f),Mv.coerceFont(i,"tickfont",f,{autoShadowDflt:!0}),Mv.coerceFont(i,"rangefont",f),i("labelangle"),i("labelside"),i("unselected.line.color"),i("unselected.line.opacity")}});var yae=P((SOe,mae)=>{"use strict";var nSe=Ur().isArrayOrTypedArray,I9=xd(),iSe=mg().wrap;mae.exports=function(r,t){var a,n;return I9.hasColorscale(t,"line")&&nSe(t.line.color)?(a=t.line.color,n=I9.extractOpts(t.line).colorscale,I9.calc(r,t,{vals:a,containerStr:"line",cLetter:"c"})):(a=oSe(t._length),n=[[0,t.line.color],[1,t.line.color]]),iSe({lineColor:a,cscale:n})};function oSe(e){for(var r=new Array(e),t=0;t>>16,(e&65280)>>>8,e&255],alpha:1};if(typeof e=="number")return{space:"rgb",values:[e>>>16,(e&65280)>>>8,e&255],alpha:1};if(e=String(e).toLowerCase(),O9.default[e])t=O9.default[e].slice(),n="rgb";else if(e==="transparent")a=0,n="rgb",t=[0,0,0];else if(e[0]==="#"){var i=e.slice(1),o=i.length,l=o<=4;a=1,l?(t=[parseInt(i[0]+i[0],16),parseInt(i[1]+i[1],16),parseInt(i[2]+i[2],16)],o===4&&(a=parseInt(i[3]+i[3],16)/255)):(t=[parseInt(i[0]+i[1],16),parseInt(i[2]+i[3],16),parseInt(i[4]+i[5],16)],o===8&&(a=parseInt(i[6]+i[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),n="rgb"}else if(r=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(e)){var s=r[1];n=s.replace(/a$/,"");var f=n==="cmyk"?4:n==="gray"?1:3;t=r[2].trim().split(/\s*[,\/]\s*|\s+/),n==="color"&&(n=t.shift()),t=t.map(function(v,d){if(v[v.length-1]==="%")return v=parseFloat(v)/100,d===3?v:n==="rgb"?v*255:n[0]==="h"||n[0]==="l"&&!d?v*100:n==="lab"?v*125:n==="lch"?d<2?v*150:v*360:n[0]==="o"&&!d?v:n==="oklab"?v*.4:n==="oklch"?d<2?v*.4:v*360:v;if(n[d]==="h"||d===2&&n[n.length-1]==="h"){if(gae[v]!==void 0)return gae[v];if(v.endsWith("deg"))return parseFloat(v);if(v.endsWith("turn"))return parseFloat(v)*360;if(v.endsWith("grad"))return parseFloat(v)*360/400;if(v.endsWith("rad"))return parseFloat(v)*180/Math.PI}return v==="none"?0:parseFloat(v)}),a=t.length>f?t.pop():1}else/[0-9](?:\s|\/|,)/.test(e)&&(t=e.match(/([0-9]+)/g).map(function(v){return parseFloat(v)}),n=((c=(u=e.match(/([a-z])/ig))==null?void 0:u.join(""))==null?void 0:c.toLowerCase())||"rgb");return{space:n,values:t,alpha:a}}var O9,bae,gae,xae=Sg(()=>{O9=Xne(e7(),1),bae=lSe,gae={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}});var yg,B9=Sg(()=>{yg={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}});var l5,_ae=Sg(()=>{B9();l5={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(e){var r=e[0]/360,t=e[1]/100,a=e[2]/100,n,i,o,l,s,f=0;if(t===0)return s=a*255,[s,s,s];for(i=a<.5?a*(1+t):a+t-a*t,n=2*a-i,l=[0,0,0];f<3;)o=r+1/3*-(f-1),o<0?o++:o>1&&o--,s=6*o<1?n+(i-n)*6*o:2*o<1?i:3*o<2?n+(i-n)*(2/3-o)*6:n,l[f++]=s*255;return l}};yg.hsl=function(e){var r=e[0]/255,t=e[1]/255,a=e[2]/255,n=Math.min(r,t,a),i=Math.max(r,t,a),o=i-n,l,s,f;return i===n?l=0:r===i?l=(t-a)/o:t===i?l=2+(a-r)/o:a===i&&(l=4+(r-t)/o),l=Math.min(l*60,360),l<0&&(l+=360),f=(n+i)/2,i===n?s=0:f<=.5?s=o/(i+n):s=o/(2-i-n),[l,s*100,f*100]}});var Aae={};jne(Aae,{default:()=>wae});function wae(e){Array.isArray(e)&&e.raw&&(e=String.raw(...arguments)),e instanceof Number&&(e=+e);var r,t,a,n=bae(e);if(!n.space)return[];let i=n.space[0]==="h"?l5.min:yg.min,o=n.space[0]==="h"?l5.max:yg.max;return r=Array(3),r[0]=Math.min(Math.max(n.values[0],i[0]),o[0]),r[1]=Math.min(Math.max(n.values[1],i[1]),o[1]),r[2]=Math.min(Math.max(n.values[2],i[2]),o[2]),n.space[0]==="h"&&(r=l5.rgb(r)),r.push(Math.min(Math.max(n.alpha,0),1)),r}var Tae=Sg(()=>{xae();B9();_ae()});var z9=P(s5=>{"use strict";var sSe=Ur().isTypedArray;s5.convertTypedArray=function(e){return sSe(e)?Array.prototype.slice.call(e):e};s5.isOrdinal=function(e){return!!e.tickvals};s5.isVisible=function(e){return e.visible||!("visible"in e)}});var Rae=P((POe,qae)=>{"use strict";var fSe=["precision highp float;","","varying vec4 fragColor;","","attribute vec4 p01_04, p05_08, p09_12, p13_16,"," p17_20, p21_24, p25_28, p29_32,"," p33_36, p37_40, p41_44, p45_48,"," p49_52, p53_56, p57_60, colors;","","uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,"," loA, hiA, loB, hiB, loC, hiC, loD, hiD;","","uniform vec2 resolution, viewBoxPos, viewBoxSize;","uniform float maskHeight;","uniform float drwLayer; // 0: context, 1: focus, 2: pick","uniform vec4 contextColor;","uniform sampler2D maskTexture, palette;","","bool isPick = (drwLayer > 1.5);","bool isContext = (drwLayer < 0.5);","","const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);","const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);","","float val(mat4 p, mat4 v) {"," return dot(matrixCompMult(p, v) * UNITS, UNITS);","}","","float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {"," float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);"," float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);"," return y1 * (1.0 - ratio) + y2 * ratio;","}","","int iMod(int a, int b) {"," return a - b * (a / b);","}","","bool fOutside(float p, float lo, float hi) {"," return (lo < hi) && (lo > p || p > hi);","}","","bool vOutside(vec4 p, vec4 lo, vec4 hi) {"," return ("," fOutside(p[0], lo[0], hi[0]) ||"," fOutside(p[1], lo[1], hi[1]) ||"," fOutside(p[2], lo[2], hi[2]) ||"," fOutside(p[3], lo[3], hi[3])"," );","}","","bool mOutside(mat4 p, mat4 lo, mat4 hi) {"," return ("," vOutside(p[0], lo[0], hi[0]) ||"," vOutside(p[1], lo[1], hi[1]) ||"," vOutside(p[2], lo[2], hi[2]) ||"," vOutside(p[3], lo[3], hi[3])"," );","}","","bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {"," return mOutside(A, loA, hiA) ||"," mOutside(B, loB, hiB) ||"," mOutside(C, loC, hiC) ||"," mOutside(D, loD, hiD);","}","","bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {"," mat4 pnts[4];"," pnts[0] = A;"," pnts[1] = B;"," pnts[2] = C;"," pnts[3] = D;",""," for(int i = 0; i < 4; ++i) {"," for(int j = 0; j < 4; ++j) {"," for(int k = 0; k < 4; ++k) {"," if(0 == iMod("," int(255.0 * texture2D(maskTexture,"," vec2("," (float(i * 2 + j / 2) + 0.5) / 8.0,"," (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight"," ))[3]"," ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),"," 2"," )) return true;"," }"," }"," }"," return false;","}","","vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {"," float x = 0.5 * sign(v) + 0.5;"," float y = axisY(x, A, B, C, D);"," float z = 1.0 - abs(v);",""," z += isContext ? 0.0 : 2.0 * float("," outsideBoundingBox(A, B, C, D) ||"," outsideRasterMask(A, B, C, D)"," );",""," return vec4("," 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,"," z,"," 1.0"," );","}","","void main() {"," mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);"," mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);"," mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);"," mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);",""," float v = colors[3];",""," gl_Position = position(isContext, v, A, B, C, D);",""," fragColor ="," isContext ? vec4(contextColor) :"," isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));","}"].join(` `),uSe=["precision highp float;","","varying vec4 fragColor;","","void main() {"," gl_FragColor = fragColor;","}"].join(` -`),gg=pg().maxDimensionCount,Lae=Ur(),Mae=1e-6,s5=2048,cSe=new Uint8Array(4),Sae=new Uint8Array(4),Eae={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function vSe(e){e.read({x:0,y:0,width:1,height:1,data:cSe})}function Dae(e,r,t,a,n){var i=e._gl;i.enable(i.SCISSOR_TEST),i.scissor(r,t,a,n),e.clear({color:[0,0,0,0],depth:1})}function hSe(e,r,t,a,n,i){var o=i.key;function l(s){var f=Math.min(a,n-s*a);s===0&&(window.cancelAnimationFrame(t.currentRafs[o]),delete t.currentRafs[o],Dae(e,i.scissorX,i.scissorY,i.scissorWidth,i.viewBoxSize[1])),!t.clearOnly&&(i.count=2*f,i.offset=2*s*a,r(i),s*a+f>>8*r)%256/255}function mSe(e,r,t){for(var a=new Array(e*(gg+4)),n=0,i=0;ite&&(te=k[q].dim1.canvasX,X=q);O===0&&Dae(n,0,0,f.canvasWidth,f.canvasHeight);var Q=_(t);for(q=0;q{"use strict";var Ni=da(),ju=Ur(),U9=ju.isArrayOrTypedArray,zae=ju.numberFormat,Gae=(Tae(),Zne(Aae)).default,Uae=yn(),_Se=ju.strRotate,Uf=ju.strTranslate,wSe=po(),f5=Ha(),Pae=xd(),Y9=mg(),ls=Y9.keyFun,Hf=Y9.repeat,Hae=Y9.unwrap,Zp=z9(),wa=pg(),Vae=P9(),ASe=Rae();function Nae(e,r,t){return ju.aggNums(e,null,r,t)}function Yae(e,r){return W9(Nae(Math.min,e,r),Nae(Math.max,e,r))}function u5(e){var r=e.range;return r?W9(r[0],r[1]):Yae(e.values,e._length)}function W9(e,r){return(isNaN(e)||!isFinite(e))&&(e=0),(isNaN(r)||!isFinite(r))&&(r=0),e===r&&(e===0?(e-=1,r+=1):(e*=.9,r*=1.1)),[e,r]}function TSe(e,r){return r?function(t,a){var n=r[a];return n==null?e(t):n}:e}function MSe(e,r,t,a,n){var i=u5(t);return a?Ni.scale.ordinal().domain(a.map(TSe(zae(t.tickformat),n))).range(a.map(function(o){var l=(o-i[0])/(i[1]-i[0]);return e-r+l*(2*r-e)})):Ni.scale.linear().domain(i).range([e-r,r])}function SSe(e,r){return Ni.scale.linear().range([r,e-r])}function ESe(e,r){return Ni.scale.linear().domain(u5(e)).range([r,1-r])}function kSe(e){if(e.tickvals){var r=u5(e);return Ni.scale.ordinal().domain(e.tickvals).range(e.tickvals.map(function(t){return(t-r[0])/(r[1]-r[0])}))}}function CSe(e){var r=e.map(function(i){return i[0]}),t=e.map(function(i){var o=Gae(i[1]);return Ni.rgb("rgb("+o[0]+","+o[1]+","+o[2]+")")}),a=function(i){return function(o){return o[i]}},n="rgb".split("").map(function(i){return Ni.scale.linear().clamp(!0).domain(r).range(t.map(a(i)))});return function(i){return n.map(function(o){return o(i)})}}function V9(e){return e.dimensions.some(function(r){return r.brush.filterSpecified})}function LSe(e,r,t){var a=Hae(r),n=a.trace,i=Zp.convertTypedArray(a.lineColor),o=n.line,l={color:Gae(n.unselected.line.color),opacity:n.unselected.line.opacity},s=Pae.extractOpts(o),f=s.reversescale?Pae.flipScale(a.cscale):a.cscale,u=n.domain,c=n.dimensions,v=e.width,d=n.labelangle,p=n.labelside,y=n.labelfont,m=n.tickfont,b=n.rangefont,A=ju.extendDeepNoArrays({},o,{color:i.map(Ni.scale.linear().domain(u5({values:i,range:[s.min,s.max],_length:n._length}))),blockLineCount:wa.blockLineCount,canvasOverdrag:wa.overdrag*wa.canvasPixelRatio}),_=Math.floor(v*(u.x[1]-u.x[0])),x=Math.floor(e.height*(u.y[1]-u.y[0])),T=e.margin||{l:80,r:80,t:100,b:80},E=_,M=x;return{key:t,colCount:c.filter(Zp.isVisible).length,dimensions:c,tickDistance:wa.tickDistance,unitToColor:CSe(f),lines:A,deselectedLines:l,labelAngle:d,labelSide:p,labelFont:y,tickFont:m,rangeFont:b,layoutWidth:v,layoutHeight:e.height,domain:u,translateX:u.x[0]*v,translateY:e.height-u.y[1]*e.height,pad:T,canvasWidth:E*wa.canvasPixelRatio+2*A.canvasOverdrag,canvasHeight:M*wa.canvasPixelRatio,width:E,height:M,canvasPixelRatio:wa.canvasPixelRatio}}function DSe(e,r,t){var a=t.width,n=t.height,i=t.dimensions,o=t.canvasPixelRatio,l=function(v){return a*v/Math.max(1,t.colCount-1)},s=wa.verticalPadding/n,f=SSe(n,wa.verticalPadding),u={key:t.key,xScale:l,model:t,inBrushDrag:!1},c={};return u.dimensions=i.filter(Zp.isVisible).map(function(v,d){var p=ESe(v,s),y=c[v.label];c[v.label]=(y||0)+1;var m=v.label+(y?"__"+y:""),b=v.constraintrange,A=b&&b.length;A&&!U9(b[0])&&(b=[b]);var _=A?b.map(function(H){return H.map(p)}):[[-1/0,1/0]],x=function(){var H=u;H.focusLayer&&H.focusLayer.render(H.panels,!0);var X=V9(H);!e.contextShown()&&X?(H.contextLayer&&H.contextLayer.render(H.panels,!0),e.contextShown(!0)):e.contextShown()&&!X&&(H.contextLayer&&H.contextLayer.render(H.panels,!0,!0),e.contextShown(!1))},T=v.values;T.length>v._length&&(T=T.slice(0,v._length));var E=v.tickvals,M;function k(H,X){return{val:H,text:M[X]}}function F(H,X){return H.val-X.val}if(U9(E)&&E.length){ju.isTypedArray(E)&&(E=Array.from(E)),M=v.ticktext,!U9(M)||!M.length?M=E.map(zae(v.tickformat)):M.length>E.length?M=M.slice(0,E.length):E.length>M.length&&(E=E.slice(0,M.length));for(var I=1;I=X||Z>=oe)return;var J=q.lineLayer.readPixel(Q,oe-1-Z),le=J[3]!==0,ce=le?J[2]+256*(J[1]+256*J[0]):null,De={x:Q,y:Z,clientX:H.clientX,clientY:H.clientY,dataIndex:q.model.key,curveNumber:ce};ce!==p&&(le?n.hover(De):n.unhover&&n.unhover(De),p=ce)}}),d.style("opacity",function(q){return q.pick?0:1}),l.style("background","rgba(255, 255, 255, 0)");var m=l.selectAll("."+wa.cn.parcoords).data(v,ls);m.exit().remove(),m.enter().append("g").classed(wa.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),m.attr("transform",function(q){return Uf(q.model.translateX,q.model.translateY)});var b=m.selectAll("."+wa.cn.parcoordsControlView).data(Hf,ls);b.enter().append("g").classed(wa.cn.parcoordsControlView,!0),b.attr("transform",function(q){return Uf(q.model.pad.l,q.model.pad.t)});var A=b.selectAll("."+wa.cn.yAxis).data(function(q){return q.dimensions},ls);A.enter().append("g").classed(wa.cn.yAxis,!0),b.each(function(q){H9(A,q,f)}),d.each(function(q){if(q.viewModel){!q.lineLayer||n?q.lineLayer=ASe(this,q):q.lineLayer.update(q),(q.key||q.key===0)&&(q.viewModel[q.key]=q.lineLayer);var H=!q.context||n;q.lineLayer.render(q.viewModel.panels,H)}}),A.attr("transform",function(q){return Uf(q.xScale(q.xIndex),0)}),A.call(Ni.behavior.drag().origin(function(q){return q}).on("drag",function(q){var H=q.parent;c.linePickActive(!1),q.x=Math.max(-wa.overdrag,Math.min(q.model.width+wa.overdrag,Ni.event.x)),q.canvasX=q.x*q.model.canvasPixelRatio,A.sort(function(X,oe){return X.x-oe.x}).each(function(X,oe){X.xIndex=oe,X.x=q===X?X.x:X.xScale(X.xIndex),X.canvasX=X.x*X.model.canvasPixelRatio}),H9(A,H,f),A.filter(function(X){return Math.abs(q.xIndex-X.xIndex)!==0}).attr("transform",function(X){return Uf(X.xScale(X.xIndex),0)}),Ni.select(this).attr("transform",Uf(q.x,0)),A.each(function(X,oe,te){te===q.parent.key&&(H.dimensions[oe]=X)}),H.contextLayer&&H.contextLayer.render(H.panels,!1,!V9(H)),H.focusLayer.render&&H.focusLayer.render(H.panels)}).on("dragend",function(q){var H=q.parent;q.x=q.xScale(q.xIndex),q.canvasX=q.x*q.model.canvasPixelRatio,H9(A,H,f),Ni.select(this).attr("transform",function(X){return Uf(X.x,0)}),H.contextLayer&&H.contextLayer.render(H.panels,!1,!V9(H)),H.focusLayer&&H.focusLayer.render(H.panels),H.pickLayer&&H.pickLayer.render(H.panels,!0),c.linePickActive(!0),n&&n.axesMoved&&n.axesMoved(H.key,H.dimensions.map(function(X){return X.crossfilterDimensionIndex}))})),A.exit().remove();var _=A.selectAll("."+wa.cn.axisOverlays).data(Hf,ls);_.enter().append("g").classed(wa.cn.axisOverlays,!0),_.selectAll("."+wa.cn.axis).remove();var x=_.selectAll("."+wa.cn.axis).data(Hf,ls);x.enter().append("g").classed(wa.cn.axis,!0),x.each(function(q){var H=q.model.height/q.model.tickDistance,X=q.domainScale,oe=X.domain();Ni.select(this).call(Ni.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(H,q.tickFormat).tickValues(q.ordinal?oe:null).tickFormat(function(te){return Zp.isOrdinal(q)?te:Wae(q.model.dimensions[q.visibleIndex],te)}).scale(X)),f5.font(x.selectAll("text"),q.model.tickFont)}),x.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),x.selectAll("text").style("cursor","default");var T=_.selectAll("."+wa.cn.axisHeading).data(Hf,ls);T.enter().append("g").classed(wa.cn.axisHeading,!0);var E=T.selectAll("."+wa.cn.axisTitle).data(Hf,ls);E.enter().append("text").classed(wa.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",i?"none":"auto"),E.text(function(q){return q.label}).each(function(q){var H=Ni.select(this);f5.font(H,q.model.labelFont),wSe.convertToTspans(H,r)}).attr("transform",function(q){var H=Oae(q.model.labelAngle,q.model.labelSide),X=wa.axisTitleOffset;return(H.dir>0?"":Uf(0,2*X+q.model.height))+_Se(H.degrees)+Uf(-X*H.dx,-X*H.dy)}).attr("text-anchor",function(q){var H=Oae(q.model.labelAngle,q.model.labelSide),X=Math.abs(H.dx),oe=Math.abs(H.dy);return 2*X>oe?H.dir*H.dx<0?"start":"end":"middle"});var M=_.selectAll("."+wa.cn.axisExtent).data(Hf,ls);M.enter().append("g").classed(wa.cn.axisExtent,!0);var k=M.selectAll("."+wa.cn.axisExtentTop).data(Hf,ls);k.enter().append("g").classed(wa.cn.axisExtentTop,!0),k.attr("transform",Uf(0,-wa.axisExtentOffset));var F=k.selectAll("."+wa.cn.axisExtentTopText).data(Hf,ls);F.enter().append("text").classed(wa.cn.axisExtentTopText,!0).call(Iae),F.text(function(q){return Bae(q,!0)}).each(function(q){f5.font(Ni.select(this),q.model.rangeFont)});var I=M.selectAll("."+wa.cn.axisExtentBottom).data(Hf,ls);I.enter().append("g").classed(wa.cn.axisExtentBottom,!0),I.attr("transform",function(q){return Uf(0,q.model.height+wa.axisExtentOffset)});var O=I.selectAll("."+wa.cn.axisExtentBottomText).data(Hf,ls);O.enter().append("text").classed(wa.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(Iae),O.text(function(q){return Bae(q,!1)}).each(function(q){f5.font(Ni.select(this),q.model.rangeFont)}),Vae.ensureAxisBrush(_,u,r)}});var X9=P((j9,Qae)=>{"use strict";var RSe=Xae(),PSe=X_(),Zae=z9().isVisible,$ae={};function Jae(e,r,t){var a=r.indexOf(t),n=e.indexOf(a);return n===-1&&(n+=r.length),n}function NSe(e,r){return function(a,n){return Jae(e,r,a)-Jae(e,r,n)}}var j9=Qae.exports=function(r,t){var a=r._fullLayout,n=PSe(r,[],$ae);if(n){var i={},o={},l={},s={},f=a._size;t.forEach(function(p,y){var m=p[0].trace;l[y]=m.index;var b=s[y]=m.index;i[y]=r.data[b].dimensions,o[y]=r.data[b].dimensions.slice()});var u=function(p,y,m){var b=o[p][y],A=m.map(function(k){return k.slice()}),_="dimensions["+y+"].constraintrange",x=a._tracePreGUI[r._fullData[l[p]]._fullInput.uid];if(x[_]===void 0){var T=b.constraintrange;x[_]=T||null}var E=r._fullData[l[p]].dimensions[y];A.length?(A.length===1&&(A=A[0]),b.constraintrange=A,E.constraintrange=A.slice(),A=[A]):(delete b.constraintrange,delete E.constraintrange,A=null);var M={};M[_]=A,r.emit("plotly_restyle",[M,[s[p]]])},c=function(p){r.emit("plotly_hover",p)},v=function(p){r.emit("plotly_unhover",p)},d=function(p,y){var m=NSe(y,o[p].filter(Zae));i[p].sort(m),o[p].filter(function(b){return!Zae(b)}).sort(function(b){return o[p].indexOf(b)}).forEach(function(b){i[p].splice(i[p].indexOf(b),1),i[p].splice(o[p].indexOf(b),0,b)}),r.emit("plotly_restyle",[{dimensions:[i[p]]},[s[p]]])};RSe(r,t,{width:f.w,height:f.h,margin:{t:f.t,r:f.r,b:f.b,l:f.l}},{filterChanged:u,hover:c,unhover:v,axesMoved:d})}};j9.reglPrecompiled=$ae});var ene=P(bg=>{"use strict";var Kae=da(),ISe=rm().getModuleCalcData,OSe=X9(),BSe=Oc();bg.name="parcoords";bg.plot=function(e){var r=ISe(e.calcdata,"parcoords")[0];r.length&&OSe(e,r)};bg.clean=function(e,r,t,a){var n=a._has&&a._has("parcoords"),i=r._has&&r._has("parcoords");n&&!i&&(a._paperdiv.selectAll(".parcoords").remove(),a._glimages.selectAll("*").remove())};bg.toSVG=function(e){var r=e._fullLayout._glimages,t=Kae.select(e).selectAll(".svg-container"),a=t.filter(function(i,o){return o===t.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function n(){var i=this,o=i.toDataURL("image/png"),l=r.append("svg:image");l.attr({xmlns:BSe.svg,"xlink:href":o,preserveAspectRatio:"none",x:0,y:0,width:i.style.width,height:i.style.height})}a.each(n),window.setTimeout(function(){Kae.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}});var tne=P((OOe,rne)=>{"use strict";rne.exports={attributes:F9(),supplyDefaults:pae(),calc:yae(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:ene(),categories:["gl","regl","noOpacity","noHover"],meta:{}}});var ine=P((BOe,nne)=>{"use strict";var ane=tne();ane.plot=X9();nne.exports=ane});var lne=P((zOe,one)=>{"use strict";one.exports=ine()});var oo=P((GOe,fne)=>{var v5=ni();function sne(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}v5(sne.prototype,{instance:function(e,r){e=(e||"gregorian").toLowerCase(),r=r||"";var t=this._localCals[e+"-"+r];if(!t&&this.calendars[e]&&(t=new this.calendars[e](r),this._localCals[e+"-"+r]=t),!t)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return t},newDate:function(e,r,t,a,n){return a=(e!=null&&e.year?e.calendar():typeof a=="string"?this.instance(a,n):a)||this.instance(),a.newDate(e,r,t)},substituteDigits:function(e){return function(r){return(r+"").replace(/[0-9]/g,function(t){return e[t]})}},substituteChineseDigits:function(e,r){return function(t){for(var a="",n=0;t>0;){var i=t%10;a=(i===0?"":e[i]+r[n])+a,n++,t=Math.floor(t/10)}return a.indexOf(e[1]+r[1])===0&&(a=a.substr(1)),a||e[0]}}});function Z9(e,r,t,a){if(this._calendar=e,this._year=r,this._month=t,this._day=a,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(na.local.invalidDate||na.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function c5(e,r){return e=""+e,"000000".substring(0,r-e.length)+e}v5(Z9.prototype,{newDate:function(e,r,t){return this._calendar.newDate(e==null?this:e,r,t)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,r,t){if(!this._calendar.isValid(e,r,t))throw(na.local.invalidDate||na.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=r,this._day=t,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,r){return this._calendar.add(this,e,r)},set:function(e,r){return this._calendar.set(this,e,r)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(na.local.differentCalendars||na.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var r=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return r===0?0:r<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+c5(Math.abs(this.year()),4)+"-"+c5(this.month(),2)+"-"+c5(this.day(),2)}});function J9(){this.shortYearCutoff="+10"}v5(J9.prototype,{_validateLevel:0,newDate:function(e,r,t){return e==null?this.today():(e.year&&(this._validate(e,r,t,na.local.invalidDate||na.regionalOptions[""].invalidDate),t=e.day(),r=e.month(),e=e.year()),new Z9(this,e,r,t))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var r=this._validate(e,this.minMonth,this.minDay,na.local.invalidYear||na.regionalOptions[""].invalidYear);return r.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,na.local.invalidYear||na.regionalOptions[""].invalidYear);return(r.year()<0?"-":"")+c5(Math.abs(r.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,na.local.invalidYear||na.regionalOptions[""].invalidYear),12},monthOfYear:function(e,r){var t=this._validate(e,r,this.minDay,na.local.invalidMonth||na.regionalOptions[""].invalidMonth);return(t.month()+this.monthsInYear(t)-this.firstMonth)%this.monthsInYear(t)+this.minMonth},fromMonthOfYear:function(e,r){var t=(r+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,t,this.minDay,na.local.invalidMonth||na.regionalOptions[""].invalidMonth),t},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,na.local.invalidYear||na.regionalOptions[""].invalidYear);return this.leapYear(r)?366:365},dayOfYear:function(e,r,t){var a=this._validate(e,r,t,na.local.invalidDate||na.regionalOptions[""].invalidDate);return a.toJD()-this.newDate(a.year(),this.fromMonthOfYear(a.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,na.local.invalidDate||na.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(a))+2)%this.daysInWeek()},extraInfo:function(e,r,t){return this._validate(e,r,t,na.local.invalidDate||na.regionalOptions[""].invalidDate),{}},add:function(e,r,t){return this._validate(e,this.minMonth,this.minDay,na.local.invalidDate||na.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,r,t),r,t)},_add:function(e,r,t){if(this._validateLevel++,t==="d"||t==="w"){var a=e.toJD()+r*(t==="w"?this.daysInWeek():1),n=e.calendar().fromJD(a);return this._validateLevel--,[n.year(),n.month(),n.day()]}try{var i=e.year()+(t==="y"?r:0),o=e.monthOfYear()+(t==="m"?r:0),n=e.day(),l=function(u){for(;oc-1+u.minMonth;)i++,o-=c,c=u.monthsInYear(i)};t==="y"?(e.month()!==this.fromMonthOfYear(i,o)&&(o=this.newDate(i,e.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(i)),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,o)))):t==="m"&&(l(this),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,o))));var s=[i,this.fromMonthOfYear(i,o),n];return this._validateLevel--,s}catch(f){throw this._validateLevel--,f}},_correctAdd:function(e,r,t,a){if(!this.hasYearZero&&(a==="y"||a==="m")&&(r[0]===0||e.year()>0!=r[0]>0)){var n={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[a],i=t<0?-1:1;r=this._add(e,t*n[0]+i*n[1],n[2])}return e.date(r[0],r[1],r[2])},set:function(e,r,t){this._validate(e,this.minMonth,this.minDay,na.local.invalidDate||na.regionalOptions[""].invalidDate);var a=t==="y"?r:e.year(),n=t==="m"?r:e.month(),i=t==="d"?r:e.day();return(t==="y"||t==="m")&&(i=Math.min(i,this.daysInMonth(a,n))),e.date(a,n,i)},isValid:function(e,r,t){this._validateLevel++;var a=this.hasYearZero||e!==0;if(a){var n=this.newDate(e,r,this.minDay);a=r>=this.minMonth&&r-this.minMonth=this.minDay&&t-this.minDay13.5?13:1),f=n-(s>2.5?4716:4715);return f<=0&&f--,this.newDate(f,s,l)},toJSDate:function(e,r,t){var a=this._validate(e,r,t,na.local.invalidDate||na.regionalOptions[""].invalidDate),n=new Date(a.year(),a.month()-1,a.day());return n.setHours(0),n.setMinutes(0),n.setSeconds(0),n.setMilliseconds(0),n.setHours(n.getHours()>12?n.getHours()+2:0),n},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var na=fne.exports=new sne;na.cdate=Z9;na.baseCalendar=J9;na.calendars.gregorian=$9});var une=P(()=>{var Q9=ni(),Ii=oo();Q9(Ii.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});Ii.local=Ii.regionalOptions[""];Q9(Ii.cdate.prototype,{formatDate:function(e,r){return typeof e!="string"&&(r=e,e=""),this._calendar.formatDate(e||"",this,r)}});Q9(Ii.baseCalendar.prototype,{UNIX_EPOCH:Ii.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:Ii.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,r,t){if(typeof e!="string"&&(t=r,r=e,e=""),!r)return"";if(r.calendar()!==this)throw Ii.local.invalidFormat||Ii.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,t=t||{};for(var a=t.dayNamesShort||this.local.dayNamesShort,n=t.dayNames||this.local.dayNames,i=t.monthNumbers||this.local.monthNumbers,o=t.monthNamesShort||this.local.monthNamesShort,l=t.monthNames||this.local.monthNames,s=t.calculateWeek||this.local.calculateWeek,f=function(x,T){for(var E=1;_+E1},u=function(x,T,E,M){var k=""+T;if(f(x,M))for(;k.length1},A=function(q,H){var X=b(q,H),oe=[2,3,X?4:2,X?4:2,10,11,20]["oyYJ@!".indexOf(q)+1],te=new RegExp("^-?\\d{1,"+oe+"}"),Q=r.substring(k).match(te);if(!Q)throw(Ii.local.missingNumberAt||Ii.regionalOptions[""].missingNumberAt).replace(/\{0\}/,k);return k+=Q[0].length,parseInt(Q[0],10)},_=this,x=function(){if(typeof l=="function"){b("m");var q=l.call(_,r.substring(k));return k+=q.length,q}return A("m")},T=function(q,H,X,oe){for(var te=b(q,oe)?X:H,Q=0;Q-1){v=1,d=p;for(var O=this.daysInMonth(c,v);d>O;O=this.daysInMonth(c,v))v++,d-=O}return u>-1?this.fromJD(u):this.newDate(c,v,d)},determineDate:function(e,r,t,a,n){t&&typeof t!="object"&&(n=a,a=t,t=null),typeof a!="string"&&(n=a,a="");var i=this,o=function(l){try{return i.parseDate(a,l,n)}catch(c){}l=l.toLowerCase();for(var s=(l.match(/^c/)&&t?t.newDate():null)||i.today(),f=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,u=f.exec(l);u;)s.add(parseInt(u[1],10),u[2]||"d"),u=f.exec(l);return s};return r=r?r.newDate():null,e=e==null?r:typeof e=="string"?o(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?r:i.today().add(e,"d"):i.newDate(e),e}})});var cne=P(()=>{var Sv=oo(),zSe=ni(),K9=Sv.instance();function h5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}h5.prototype=new Sv.baseCalendar;zSe(h5.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,r){if(typeof e=="string"){var t=e.match(USe);return t?t[0]:""}var a=this._validateYear(e),n=e.month(),i=""+this.toChineseMonth(a,n);return r&&i.length<2&&(i="0"+i),this.isIntercalaryMonth(a,n)&&(i+="i"),i},monthNames:function(e){if(typeof e=="string"){var r=e.match(HSe);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},monthNamesShort:function(e){if(typeof e=="string"){var r=e.match(VSe);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},parseMonth:function(e,r){e=this._validateYear(e);var t=parseInt(r),a;if(isNaN(t))r[0]==="\u95F0"&&(a=!0,r=r.substring(1)),r[r.length-1]==="\u6708"&&(r=r.substring(0,r.length-1)),t=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(r);else{var n=r[r.length-1];a=n==="i"||n==="I"}var i=this.toMonthIndex(e,t,a);return i},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,r){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw r.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,r,t){var a=this.intercalaryMonth(e),n=t&&r!==a;if(n||r<1||r>12)throw Sv.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return a?!t&&r<=a?i=r-1:i=r:i=r-1,i},toChineseMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e),a=t?12:11;if(r<0||r>a)throw Sv.local.invalidMonth.replace(/\{0\}/,this.local.name);var n;return t?r>13;return t},isIntercalaryMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e);return!!t&&t===r},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,r,t){var a=this._validateYear(e,Sv.local.invalidyear),n=kv[a-kv[0]],i=n>>9&4095,o=n>>5&15,l=n&31,s;s=K9.newDate(i,o,l),s.add(4-(s.dayOfWeek()||7),"d");var f=this.toJD(e,r,t)-s.toJD();return 1+Math.floor(f/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,r){e.year&&(r=e.month(),e=e.year()),e=this._validateYear(e);var t=Ev[e-Ev[0]],a=t>>13,n=a?12:11;if(r>n)throw Sv.local.invalidMonth.replace(/\{0\}/,this.local.name);var i=t&1<<12-r?30:29;return i},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,i,t,Sv.local.invalidDate);e=this._validateYear(a.year()),r=a.month(),t=a.day();var n=this.isIntercalaryMonth(e,r),i=this.toChineseMonth(e,r),o=WSe(e,i,t,n);return K9.toJD(o.year,o.month,o.day)},fromJD:function(e){var r=K9.fromJD(e),t=YSe(r.year(),r.month(),r.day()),a=this.toMonthIndex(t.year,t.month,t.isIntercalary);return this.newDate(t.year,a,t.day)},fromString:function(e){var r=e.match(GSe),t=this._validateYear(+r[1]),a=+r[2],n=!!r[3],i=this.toMonthIndex(t,a,n),o=+r[4];return this.newDate(t,i,o)},add:function(e,r,t){var a=e.year(),n=e.month(),i=this.isIntercalaryMonth(a,n),o=this.toChineseMonth(a,n),l=Object.getPrototypeOf(h5.prototype).add.call(this,e,r,t);if(t==="y"){var s=l.year(),f=l.month(),u=this.isIntercalaryMonth(s,o),c=i&&u?this.toMonthIndex(s,o,!0):this.toMonthIndex(s,o,!1);c!==f&&l.month(c)}return l}});var GSe=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,USe=/^\d?\d[iI]?/m,HSe=/^闰?十?[一二三四五六七八九]?月/m,VSe=/^闰?十?[一二三四五六七八九]?/m;Sv.calendars.chinese=h5;var Ev=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],kv=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function YSe(e,r,t,a){var n,i;if(typeof e=="object")n=e,i=r||{};else{var o=typeof e=="number"&&e>=1888&&e<=2111;if(!o)throw new Error("Solar year outside range 1888-2111");var l=typeof r=="number"&&r>=1&&r<=12;if(!l)throw new Error("Solar month outside range 1 - 12");var s=typeof t=="number"&&t>=1&&t<=31;if(!s)throw new Error("Solar day outside range 1 - 31");n={year:e,month:r,day:t},i=a||{}}var f=kv[n.year-kv[0]],u=n.year<<9|n.month<<5|n.day;i.year=u>=f?n.year:n.year-1,f=kv[i.year-kv[0]];var c=f>>9&4095,v=f>>5&15,d=f&31,p,y=new Date(c,v-1,d),m=new Date(n.year,n.month-1,n.day);p=Math.round((m-y)/(24*3600*1e3));var b=Ev[i.year-Ev[0]],A;for(A=0;A<13;A++){var _=b&1<<12-A?30:29;if(p<_)break;p-=_}var x=b>>13;return!x||A=1888&&e<=2111;if(!l)throw new Error("Lunar year outside range 1888-2111");var s=typeof r=="number"&&r>=1&&r<=12;if(!s)throw new Error("Lunar month outside range 1 - 12");var f=typeof t=="number"&&t>=1&&t<=30;if(!f)throw new Error("Lunar day outside range 1 - 30");var u;typeof a=="object"?(u=!1,i=a):(u=!!a,i=n||{}),o={year:e,month:r,day:t,isIntercalary:u}}var c;c=o.day-1;var v=Ev[o.year-Ev[0]],d=v>>13,p;d&&(o.month>d||o.isIntercalary)?p=o.month:p=o.month-1;for(var y=0;y>9&4095,_=b>>5&15,x=b&31,T=new Date(A,_-1,x+c);return i.year=T.getFullYear(),i.month=1+T.getMonth(),i.day=T.getDate(),i}});var vne=P(()=>{var bh=oo(),jSe=ni();function eM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}eM.prototype=new bh.baseCalendar;jSe(eM.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,bh.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,bh.local.invalidYear||bh.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,bh.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,bh.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});bh.calendars.coptic=eM});var hne=P(()=>{var Xu=oo(),XSe=ni();function rM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}rM.prototype=new Xu.baseCalendar;XSe(rM.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Xu.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Xu.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Xu.local.invalidYear),400},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/8)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Xu.local.invalidMonth);return this.daysPerMonth[t.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Xu.local.invalidDate);return(a.day()+1)%8},weekDay:function(e,r,t){var a=this.dayOfWeek(e,r,t);return a>=2&&a<=6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Xu.local.invalidDate);return{century:ZSe[Math.floor((a.year()-1)/100)+1]||""}},toJD:function(e,r,t){var a=this._validate(e,r,t,Xu.local.invalidDate);return e=a.year()+(a.year()<0?1:0),r=a.month(),t=a.day(),t+(r>1?16:0)+(r>2?(r-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var r=Math.floor(e/400)+1;e-=(r-1)*400,e+=e>15?16:0;var t=Math.floor(e/32)+1,a=e-(t-1)*32+1;return this.newDate(r<=0?r-1:r,t,a)}});var ZSe={20:"Fruitbat",21:"Anchovy"};Xu.calendars.discworld=rM});var dne=P(()=>{var xh=oo(),JSe=ni();function tM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}tM.prototype=new xh.baseCalendar;JSe(tM.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,xh.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,xh.local.invalidYear||xh.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,xh.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,xh.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});xh.calendars.ethiopian=tM});var pne=P(()=>{var Cv=oo(),$Se=ni();function aM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}aM.prototype=new Cv.baseCalendar;$Se(aM.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Cv.local.invalidYear);return this._leapYear(r.year())},_leapYear:function(e){return e=e<0?e+1:e,d5(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Cv.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Cv.local.invalidYear);return e=r.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,Cv.local.invalidMonth),r===12&&this.leapYear(e)||r===8&&d5(this.daysInYear(e),10)===5?30:r===9&&d5(this.daysInYear(e),10)===3?29:this.daysPerMonth[r-1]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Cv.local.invalidDate);return{yearType:(this.leapYear(a)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(a)%10-3]}},toJD:function(e,r,t){var a=this._validate(e,r,t,Cv.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=e<=0?e+1:e,i=this.jdEpoch+this._delay1(n)+this._delay2(n)+t+1;if(r<7){for(var o=7;o<=this.monthsInYear(e);o++)i+=this.daysInMonth(e,o);for(var o=1;o=this.toJD(r===-1?1:r+1,7,1);)r++;for(var t=ethis.toJD(r,t,this.daysInMonth(r,t));)t++;var a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});function d5(e,r){return e-r*Math.floor(e/r)}Cv.calendars.hebrew=aM});var mne=P(()=>{var xg=oo(),QSe=ni();function nM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}nM.prototype=new xg.baseCalendar;QSe(nM.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,xg.local.invalidYear);return(r.year()*11+14)%30<11},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,xg.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,xg.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e=e<=0?e+1:e,t+Math.ceil(29.5*(r-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=Math.floor((30*(e-this.jdEpoch)+10646)/10631);r=r<=0?r-1:r;var t=Math.min(12,Math.ceil((e-29-this.toJD(r,1,1))/29.5)+1),a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});xg.calendars.islamic=nM});var yne=P(()=>{var _g=oo(),KSe=ni();function iM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}iM.prototype=new _g.baseCalendar;KSe(iM.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,_g.local.invalidYear),t=r.year()<0?r.year()+1:r.year();return t%4===0},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(4-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,_g.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,_g.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e<0&&e++,r<=2&&(e--,r+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(r+1))+t-1524.5},fromJD:function(e){var r=Math.floor(e+.5),t=r+1524,a=Math.floor((t-122.1)/365.25),n=Math.floor(365.25*a),i=Math.floor((t-n)/30.6001),o=i-Math.floor(i<14?1:13),l=a-Math.floor(o>2?4716:4715),s=t-n-Math.floor(30.6001*i);return l<=0&&l--,this.newDate(l,o,s)}});_g.calendars.julian=iM});var bne=P(()=>{var ss=oo(),eEe=ni();function lM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}lM.prototype=new ss.baseCalendar;eEe(lM.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,ss.local.invalidYear),!1},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,ss.local.invalidYear);e=r.year();var t=Math.floor(e/400);e=e%400,e+=e<0?400:0;var a=Math.floor(e/20);return t+"."+a+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var r=0,t=0;t19||t>0&&a<0)throw"Invalid Mayan year";r=r*20+a}return r},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ss.local.invalidYear),18},weekOfYear:function(e,r,t){return this._validate(e,r,t,ss.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ss.local.invalidYear),360},daysInMonth:function(e,r){return this._validate(e,r,this.minDay,ss.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,ss.local.invalidDate);return a.day()},weekDay:function(e,r,t){return this._validate(e,r,t,ss.local.invalidDate),!0},extraInfo:function(e,r,t){var a=this._validate(e,r,t,ss.local.invalidDate),n=a.toJD(),i=this._toHaab(n),o=this._toTzolkin(n);return{haabMonthName:this.local.haabMonths[i[0]-1],haabMonth:i[0],haabDay:i[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(e){e-=this.jdEpoch;var r=oM(e+8+17*20,365);return[Math.floor(r/20)+1,oM(r,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[gne(e+20,20),gne(e+4,13)]},toJD:function(e,r,t){var a=this._validate(e,r,t,ss.local.invalidDate);return a.day()+a.month()*20+a.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var r=Math.floor(e/360);e=e%360,e+=e<0?360:0;var t=Math.floor(e/20),a=e%20;return this.newDate(r,t,a)}});function oM(e,r){return e-r*Math.floor(e/r)}function gne(e,r){return oM(e-1,r)+1}ss.calendars.mayan=lM});var _ne=P(()=>{var _h=oo(),rEe=ni();function sM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}sM.prototype=new _h.baseCalendar;var xne=_h.instance("gregorian");rEe(sM.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,_h.local.invalidYear||_h.regionalOptions[""].invalidYear);return xne.leapYear(r.year()+(r.year()<1?1:0)+1469)},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(1-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,_h.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,_h.local.invalidMonth),n=a.year();n<0&&n++;for(var i=a.day(),o=1;o=this.toJD(r+1,1,1);)r++;for(var t=e-Math.floor(this.toJD(r,1,1)+.5)+1,a=1;t>this.daysInMonth(r,a);)t-=this.daysInMonth(r,a),a++;return this.newDate(r,a,t)}});_h.calendars.nanakshahi=sM});var wne=P(()=>{var wh=oo(),tEe=ni();function fM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}fM.prototype=new wh.baseCalendar;tEe(fM.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,wh.local.invalidYear);if(e=r.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var t=0,a=this.minMonth;a<=12;a++)t+=this.NEPALI_CALENDAR_DATA[e][a];return t},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,wh.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[r-1]:this.NEPALI_CALENDAR_DATA[e][r]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},toJD:function(e,r,t){var a=this._validate(e,r,t,wh.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=wh.instance(),i=0,o=r,l=e;this._createMissingCalendarData(e);var s=e-(o>9||o===9&&t>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(r!==9&&(i=t,o--);o!==9;)o<=0&&(o=12,l--),i+=this.NEPALI_CALENDAR_DATA[l][o],o--;return r===9?(i+=t-this.NEPALI_CALENDAR_DATA[l][0],i<0&&(i+=n.daysInYear(s))):i+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],n.newDate(s,1,1).add(i,"d").toJD()},fromJD:function(e){var r=wh.instance(),t=r.fromJD(e),a=t.year(),n=t.dayOfYear(),i=a+56;this._createMissingCalendarData(i);for(var o=9,l=this.NEPALI_CALENDAR_DATA[i][0],s=this.NEPALI_CALENDAR_DATA[i][o]-l+1;n>s;)o++,o>12&&(o=1,i++),s+=this.NEPALI_CALENDAR_DATA[i][o];var f=this.NEPALI_CALENDAR_DATA[i][o]-(s-n);return this.newDate(i,o,f)},_createMissingCalendarData:function(e){var r=this.daysPerMonth.slice(0);r.unshift(17);for(var t=e-1;t{var Jp=oo(),aEe=ni();function m5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function p5(e){var r=e-475;e<0&&r++;var t=.242197,a=t*r,n=t*(r+1),i=a-Math.floor(a),o=n-Math.floor(n);return i>o}m5.prototype=new Jp.baseCalendar;aEe(m5.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Jp.local.invalidYear);return p5(r.year())},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-((a.dayOfWeek()+1)%7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Jp.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,Jp.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=0;if(e>0)for(var i=1;i0?e-1:e)*365+n+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=475+(e-this.toJD(475,1,1))/365.242197,t=Math.floor(r);t<=0&&t--,e>this.toJD(t,12,p5(t)?30:29)&&(t++,t===0&&t++);var a=e-this.toJD(t,1,1)+1,n=a<=186?Math.ceil(a/31):Math.ceil((a-6)/30),i=e-this.toJD(t,n,1)+1;return this.newDate(t,n,i)}});Jp.calendars.persian=m5;Jp.calendars.jalali=m5});var Tne=P(()=>{var Ah=oo(),nEe=ni(),y5=Ah.instance();function uM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}uM.prototype=new Ah.baseCalendar;nEe(uM.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Ah.local.invalidYear),t=this._t2gYear(r.year());return y5.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,Ah.local.invalidYear),n=this._t2gYear(a.year());return y5.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Ah.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,Ah.local.invalidDate),n=this._t2gYear(a.year());return y5.toJD(n,a.month(),a.day())},fromJD:function(e){var r=y5.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Ah.calendars.taiwan=uM});var Mne=P(()=>{var Th=oo(),iEe=ni(),g5=Th.instance();function cM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}cM.prototype=new Th.baseCalendar;iEe(cM.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Th.local.invalidYear),t=this._t2gYear(r.year());return g5.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,Th.local.invalidYear),n=this._t2gYear(a.year());return g5.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Th.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,Th.local.invalidDate),n=this._t2gYear(a.year());return g5.toJD(n,a.month(),a.day())},fromJD:function(e){var r=g5.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});Th.calendars.thai=cM});var Sne=P(()=>{var Mh=oo(),oEe=ni();function vM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}vM.prototype=new Mh.baseCalendar;oEe(vM.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Mh.local.invalidYear);return this.daysInYear(r.year())===355},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var r=0,t=1;t<=12;t++)r+=this.daysInMonth(e,t);return r},daysInMonth:function(e,r){for(var t=this._validate(e,r,this.minDay,Mh.local.invalidMonth),a=t.toJD()-24e5+.5,n=0,i=0;ia)return Lv[n]-Lv[n-1];n++}return 30},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,Mh.local.invalidDate),n=12*(a.year()-1)+a.month()-15292,i=a.day()+Lv[n-1]-1;return i+24e5-.5},fromJD:function(e){for(var r=e-24e5+.5,t=0,a=0;ar);a++)t++;var n=t+15292,i=Math.floor((n-1)/12),o=i+1,l=n-12*i,s=r-Lv[t-1]+1;return this.newDate(o,l,s)},isValid:function(e,r,t){var a=Mh.baseCalendar.prototype.isValid.apply(this,arguments);return a&&(e=e.year!=null?e.year:e,a=e>=1276&&e<=1500),a},_validate:function(e,r,t,a){var n=Mh.baseCalendar.prototype._validate.apply(this,arguments);if(n.year<1276||n.year>1500)throw a.replace(/\{0\}/,this.local.name);return n}});Mh.calendars.ummalqura=vM;var Lv=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var kne=P((gBe,Ene)=>{"use strict";Ene.exports=oo();une();cne();vne();hne();dne();pne();mne();yne();bne();_ne();wne();Ane();Tne();Mne();Sne()});var Pne=P((bBe,Rne)=>{"use strict";var Lne=kne(),wg=Ur(),Dne=Kn(),lEe=Dne.EPOCHJD,sEe=Dne.ONEDAY,pM={valType:"enumerated",values:wg.sortObjectKeys(Lne.calendars),editType:"calc",dflt:"gregorian"},Fne=function(e,r,t,a){var n={};return n[t]=pM,wg.coerce(e,r,n,t,a)},fEe=function(e,r,t,a){for(var n=0;n{"use strict";Nne.exports=Pne()});var pEe=P((_Be,Bne)=>{var One=kV();One.register([$re(),$te(),lne(),Ine()]);Bne.exports=One});return pEe();})(); +`),gg=pg().maxDimensionCount,Lae=Ur(),Mae=1e-6,f5=2048,cSe=new Uint8Array(4),Sae=new Uint8Array(4),Eae={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function vSe(e){e.read({x:0,y:0,width:1,height:1,data:cSe})}function Dae(e,r,t,a,n){var i=e._gl;i.enable(i.SCISSOR_TEST),i.scissor(r,t,a,n),e.clear({color:[0,0,0,0],depth:1})}function hSe(e,r,t,a,n,i){var o=i.key;function l(s){var f=Math.min(a,n-s*a);s===0&&(window.cancelAnimationFrame(t.currentRafs[o]),delete t.currentRafs[o],Dae(e,i.scissorX,i.scissorY,i.scissorWidth,i.viewBoxSize[1])),!t.clearOnly&&(i.count=2*f,i.offset=2*s*a,r(i),s*a+f>>8*r)%256/255}function mSe(e,r,t){for(var a=new Array(e*(gg+4)),n=0,i=0;ite&&(te=k[q].dim1.canvasX,j=q);O===0&&Dae(n,0,0,f.canvasWidth,f.canvasHeight);var Q=_(t);for(q=0;q{"use strict";var Ni=da(),ju=Ur(),U9=ju.isArrayOrTypedArray,zae=ju.numberFormat,Gae=(Tae(),Zne(Aae)).default,Uae=yn(),_Se=ju.strRotate,Uf=ju.strTranslate,wSe=po(),u5=Ha(),Pae=xd(),Y9=mg(),ls=Y9.keyFun,Hf=Y9.repeat,Hae=Y9.unwrap,Zp=z9(),wa=pg(),Vae=P9(),ASe=Rae();function Nae(e,r,t){return ju.aggNums(e,null,r,t)}function Yae(e,r){return W9(Nae(Math.min,e,r),Nae(Math.max,e,r))}function c5(e){var r=e.range;return r?W9(r[0],r[1]):Yae(e.values,e._length)}function W9(e,r){return(isNaN(e)||!isFinite(e))&&(e=0),(isNaN(r)||!isFinite(r))&&(r=0),e===r&&(e===0?(e-=1,r+=1):(e*=.9,r*=1.1)),[e,r]}function TSe(e,r){return r?function(t,a){var n=r[a];return n==null?e(t):n}:e}function MSe(e,r,t,a,n){var i=c5(t);return a?Ni.scale.ordinal().domain(a.map(TSe(zae(t.tickformat),n))).range(a.map(function(o){var l=(o-i[0])/(i[1]-i[0]);return e-r+l*(2*r-e)})):Ni.scale.linear().domain(i).range([e-r,r])}function SSe(e,r){return Ni.scale.linear().range([r,e-r])}function ESe(e,r){return Ni.scale.linear().domain(c5(e)).range([r,1-r])}function kSe(e){if(e.tickvals){var r=c5(e);return Ni.scale.ordinal().domain(e.tickvals).range(e.tickvals.map(function(t){return(t-r[0])/(r[1]-r[0])}))}}function CSe(e){var r=e.map(function(i){return i[0]}),t=e.map(function(i){var o=Gae(i[1]);return Ni.rgb("rgb("+o[0]+","+o[1]+","+o[2]+")")}),a=function(i){return function(o){return o[i]}},n="rgb".split("").map(function(i){return Ni.scale.linear().clamp(!0).domain(r).range(t.map(a(i)))});return function(i){return n.map(function(o){return o(i)})}}function V9(e){return e.dimensions.some(function(r){return r.brush.filterSpecified})}function LSe(e,r,t){var a=Hae(r),n=a.trace,i=Zp.convertTypedArray(a.lineColor),o=n.line,l={color:Gae(n.unselected.line.color),opacity:n.unselected.line.opacity},s=Pae.extractOpts(o),f=s.reversescale?Pae.flipScale(a.cscale):a.cscale,u=n.domain,c=n.dimensions,v=e.width,d=n.labelangle,p=n.labelside,y=n.labelfont,m=n.tickfont,b=n.rangefont,A=ju.extendDeepNoArrays({},o,{color:i.map(Ni.scale.linear().domain(c5({values:i,range:[s.min,s.max],_length:n._length}))),blockLineCount:wa.blockLineCount,canvasOverdrag:wa.overdrag*wa.canvasPixelRatio}),_=Math.floor(v*(u.x[1]-u.x[0])),x=Math.floor(e.height*(u.y[1]-u.y[0])),T=e.margin||{l:80,r:80,t:100,b:80},E=_,S=x;return{key:t,colCount:c.filter(Zp.isVisible).length,dimensions:c,tickDistance:wa.tickDistance,unitToColor:CSe(f),lines:A,deselectedLines:l,labelAngle:d,labelSide:p,labelFont:y,tickFont:m,rangeFont:b,layoutWidth:v,layoutHeight:e.height,domain:u,translateX:u.x[0]*v,translateY:e.height-u.y[1]*e.height,pad:T,canvasWidth:E*wa.canvasPixelRatio+2*A.canvasOverdrag,canvasHeight:S*wa.canvasPixelRatio,width:E,height:S,canvasPixelRatio:wa.canvasPixelRatio}}function DSe(e,r,t){var a=t.width,n=t.height,i=t.dimensions,o=t.canvasPixelRatio,l=function(v){return a*v/Math.max(1,t.colCount-1)},s=wa.verticalPadding/n,f=SSe(n,wa.verticalPadding),u={key:t.key,xScale:l,model:t,inBrushDrag:!1},c={};return u.dimensions=i.filter(Zp.isVisible).map(function(v,d){var p=ESe(v,s),y=c[v.label];c[v.label]=(y||0)+1;var m=v.label+(y?"__"+y:""),b=v.constraintrange,A=b&&b.length;A&&!U9(b[0])&&(b=[b]);var _=A?b.map(function(H){return H.map(p)}):[[-1/0,1/0]],x=function(){var H=u;H.focusLayer&&H.focusLayer.render(H.panels,!0);var j=V9(H);!e.contextShown()&&j?(H.contextLayer&&H.contextLayer.render(H.panels,!0),e.contextShown(!0)):e.contextShown()&&!j&&(H.contextLayer&&H.contextLayer.render(H.panels,!0,!0),e.contextShown(!1))},T=v.values;T.length>v._length&&(T=T.slice(0,v._length));var E=v.tickvals,S;function k(H,j){return{val:H,text:S[j]}}function F(H,j){return H.val-j.val}if(U9(E)&&E.length){ju.isTypedArray(E)&&(E=Array.from(E)),S=v.ticktext,!U9(S)||!S.length?S=E.map(zae(v.tickformat)):S.length>E.length?S=S.slice(0,E.length):E.length>S.length&&(E=E.slice(0,S.length));for(var I=1;I=j||J>=le)return;var Z=q.lineLayer.readPixel(Q,le-1-J),ae=Z[3]!==0,ue=ae?Z[2]+256*(Z[1]+256*Z[0]):null,Le={x:Q,y:J,clientX:H.clientX,clientY:H.clientY,dataIndex:q.model.key,curveNumber:ue};ue!==p&&(ae?n.hover(Le):n.unhover&&n.unhover(Le),p=ue)}}),d.style("opacity",function(q){return q.pick?0:1}),l.style("background","rgba(255, 255, 255, 0)");var m=l.selectAll("."+wa.cn.parcoords).data(v,ls);m.exit().remove(),m.enter().append("g").classed(wa.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),m.attr("transform",function(q){return Uf(q.model.translateX,q.model.translateY)});var b=m.selectAll("."+wa.cn.parcoordsControlView).data(Hf,ls);b.enter().append("g").classed(wa.cn.parcoordsControlView,!0),b.attr("transform",function(q){return Uf(q.model.pad.l,q.model.pad.t)});var A=b.selectAll("."+wa.cn.yAxis).data(function(q){return q.dimensions},ls);A.enter().append("g").classed(wa.cn.yAxis,!0),b.each(function(q){H9(A,q,f)}),d.each(function(q){if(q.viewModel){!q.lineLayer||n?q.lineLayer=ASe(this,q):q.lineLayer.update(q),(q.key||q.key===0)&&(q.viewModel[q.key]=q.lineLayer);var H=!q.context||n;q.lineLayer.render(q.viewModel.panels,H)}}),A.attr("transform",function(q){return Uf(q.xScale(q.xIndex),0)}),A.call(Ni.behavior.drag().origin(function(q){return q}).on("drag",function(q){var H=q.parent;c.linePickActive(!1),q.x=Math.max(-wa.overdrag,Math.min(q.model.width+wa.overdrag,Ni.event.x)),q.canvasX=q.x*q.model.canvasPixelRatio,A.sort(function(j,le){return j.x-le.x}).each(function(j,le){j.xIndex=le,j.x=q===j?j.x:j.xScale(j.xIndex),j.canvasX=j.x*j.model.canvasPixelRatio}),H9(A,H,f),A.filter(function(j){return Math.abs(q.xIndex-j.xIndex)!==0}).attr("transform",function(j){return Uf(j.xScale(j.xIndex),0)}),Ni.select(this).attr("transform",Uf(q.x,0)),A.each(function(j,le,te){te===q.parent.key&&(H.dimensions[le]=j)}),H.contextLayer&&H.contextLayer.render(H.panels,!1,!V9(H)),H.focusLayer.render&&H.focusLayer.render(H.panels)}).on("dragend",function(q){var H=q.parent;q.x=q.xScale(q.xIndex),q.canvasX=q.x*q.model.canvasPixelRatio,H9(A,H,f),Ni.select(this).attr("transform",function(j){return Uf(j.x,0)}),H.contextLayer&&H.contextLayer.render(H.panels,!1,!V9(H)),H.focusLayer&&H.focusLayer.render(H.panels),H.pickLayer&&H.pickLayer.render(H.panels,!0),c.linePickActive(!0),n&&n.axesMoved&&n.axesMoved(H.key,H.dimensions.map(function(j){return j.crossfilterDimensionIndex}))})),A.exit().remove();var _=A.selectAll("."+wa.cn.axisOverlays).data(Hf,ls);_.enter().append("g").classed(wa.cn.axisOverlays,!0),_.selectAll("."+wa.cn.axis).remove();var x=_.selectAll("."+wa.cn.axis).data(Hf,ls);x.enter().append("g").classed(wa.cn.axis,!0),x.each(function(q){var H=q.model.height/q.model.tickDistance,j=q.domainScale,le=j.domain();Ni.select(this).call(Ni.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(H,q.tickFormat).tickValues(q.ordinal?le:null).tickFormat(function(te){return Zp.isOrdinal(q)?te:Wae(q.model.dimensions[q.visibleIndex],te)}).scale(j)),u5.font(x.selectAll("text"),q.model.tickFont)}),x.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),x.selectAll("text").style("cursor","default");var T=_.selectAll("."+wa.cn.axisHeading).data(Hf,ls);T.enter().append("g").classed(wa.cn.axisHeading,!0);var E=T.selectAll("."+wa.cn.axisTitle).data(Hf,ls);E.enter().append("text").classed(wa.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",i?"none":"auto"),E.text(function(q){return q.label}).each(function(q){var H=Ni.select(this);u5.font(H,q.model.labelFont),wSe.convertToTspans(H,r)}).attr("transform",function(q){var H=Oae(q.model.labelAngle,q.model.labelSide),j=wa.axisTitleOffset;return(H.dir>0?"":Uf(0,2*j+q.model.height))+_Se(H.degrees)+Uf(-j*H.dx,-j*H.dy)}).attr("text-anchor",function(q){var H=Oae(q.model.labelAngle,q.model.labelSide),j=Math.abs(H.dx),le=Math.abs(H.dy);return 2*j>le?H.dir*H.dx<0?"start":"end":"middle"});var S=_.selectAll("."+wa.cn.axisExtent).data(Hf,ls);S.enter().append("g").classed(wa.cn.axisExtent,!0);var k=S.selectAll("."+wa.cn.axisExtentTop).data(Hf,ls);k.enter().append("g").classed(wa.cn.axisExtentTop,!0),k.attr("transform",Uf(0,-wa.axisExtentOffset));var F=k.selectAll("."+wa.cn.axisExtentTopText).data(Hf,ls);F.enter().append("text").classed(wa.cn.axisExtentTopText,!0).call(Iae),F.text(function(q){return Bae(q,!0)}).each(function(q){u5.font(Ni.select(this),q.model.rangeFont)});var I=S.selectAll("."+wa.cn.axisExtentBottom).data(Hf,ls);I.enter().append("g").classed(wa.cn.axisExtentBottom,!0),I.attr("transform",function(q){return Uf(0,q.model.height+wa.axisExtentOffset)});var O=I.selectAll("."+wa.cn.axisExtentBottomText).data(Hf,ls);O.enter().append("text").classed(wa.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(Iae),O.text(function(q){return Bae(q,!1)}).each(function(q){u5.font(Ni.select(this),q.model.rangeFont)}),Vae.ensureAxisBrush(_,u,r)}});var X9=P((j9,Qae)=>{"use strict";var RSe=Xae(),PSe=Z_(),Zae=z9().isVisible,$ae={};function Jae(e,r,t){var a=r.indexOf(t),n=e.indexOf(a);return n===-1&&(n+=r.length),n}function NSe(e,r){return function(a,n){return Jae(e,r,a)-Jae(e,r,n)}}var j9=Qae.exports=function(r,t){var a=r._fullLayout,n=PSe(r,[],$ae);if(n){var i={},o={},l={},s={},f=a._size;t.forEach(function(p,y){var m=p[0].trace;l[y]=m.index;var b=s[y]=m.index;i[y]=r.data[b].dimensions,o[y]=r.data[b].dimensions.slice()});var u=function(p,y,m){var b=o[p][y],A=m.map(function(k){return k.slice()}),_="dimensions["+y+"].constraintrange",x=a._tracePreGUI[r._fullData[l[p]]._fullInput.uid];if(x[_]===void 0){var T=b.constraintrange;x[_]=T||null}var E=r._fullData[l[p]].dimensions[y];A.length?(A.length===1&&(A=A[0]),b.constraintrange=A,E.constraintrange=A.slice(),A=[A]):(delete b.constraintrange,delete E.constraintrange,A=null);var S={};S[_]=A,r.emit("plotly_restyle",[S,[s[p]]])},c=function(p){r.emit("plotly_hover",p)},v=function(p){r.emit("plotly_unhover",p)},d=function(p,y){var m=NSe(y,o[p].filter(Zae));i[p].sort(m),o[p].filter(function(b){return!Zae(b)}).sort(function(b){return o[p].indexOf(b)}).forEach(function(b){i[p].splice(i[p].indexOf(b),1),i[p].splice(o[p].indexOf(b),0,b)}),r.emit("plotly_restyle",[{dimensions:[i[p]]},[s[p]]])};RSe(r,t,{width:f.w,height:f.h,margin:{t:f.t,r:f.r,b:f.b,l:f.l}},{filterChanged:u,hover:c,unhover:v,axesMoved:d})}};j9.reglPrecompiled=$ae});var ene=P(bg=>{"use strict";var Kae=da(),ISe=rm().getModuleCalcData,OSe=X9(),BSe=Oc();bg.name="parcoords";bg.plot=function(e){var r=ISe(e.calcdata,"parcoords")[0];r.length&&OSe(e,r)};bg.clean=function(e,r,t,a){var n=a._has&&a._has("parcoords"),i=r._has&&r._has("parcoords");n&&!i&&(a._paperdiv.selectAll(".parcoords").remove(),a._glimages.selectAll("*").remove())};bg.toSVG=function(e){var r=e._fullLayout._glimages,t=Kae.select(e).selectAll(".svg-container"),a=t.filter(function(i,o){return o===t.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function n(){var i=this,o=i.toDataURL("image/png"),l=r.append("svg:image");l.attr({xmlns:BSe.svg,"xlink:href":o,preserveAspectRatio:"none",x:0,y:0,width:i.style.width,height:i.style.height})}a.each(n),window.setTimeout(function(){Kae.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}});var tne=P((OOe,rne)=>{"use strict";rne.exports={attributes:F9(),supplyDefaults:pae(),calc:yae(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:ene(),categories:["gl","regl","noOpacity","noHover"],meta:{}}});var ine=P((BOe,nne)=>{"use strict";var ane=tne();ane.plot=X9();nne.exports=ane});var lne=P((zOe,one)=>{"use strict";one.exports=ine()});var oo=P((GOe,fne)=>{var h5=ni();function sne(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}h5(sne.prototype,{instance:function(e,r){e=(e||"gregorian").toLowerCase(),r=r||"";var t=this._localCals[e+"-"+r];if(!t&&this.calendars[e]&&(t=new this.calendars[e](r),this._localCals[e+"-"+r]=t),!t)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return t},newDate:function(e,r,t,a,n){return a=(e!=null&&e.year?e.calendar():typeof a=="string"?this.instance(a,n):a)||this.instance(),a.newDate(e,r,t)},substituteDigits:function(e){return function(r){return(r+"").replace(/[0-9]/g,function(t){return e[t]})}},substituteChineseDigits:function(e,r){return function(t){for(var a="",n=0;t>0;){var i=t%10;a=(i===0?"":e[i]+r[n])+a,n++,t=Math.floor(t/10)}return a.indexOf(e[1]+r[1])===0&&(a=a.substr(1)),a||e[0]}}});function Z9(e,r,t,a){if(this._calendar=e,this._year=r,this._month=t,this._day=a,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(na.local.invalidDate||na.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function v5(e,r){return e=""+e,"000000".substring(0,r-e.length)+e}h5(Z9.prototype,{newDate:function(e,r,t){return this._calendar.newDate(e==null?this:e,r,t)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,r,t){if(!this._calendar.isValid(e,r,t))throw(na.local.invalidDate||na.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=r,this._day=t,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,r){return this._calendar.add(this,e,r)},set:function(e,r){return this._calendar.set(this,e,r)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(na.local.differentCalendars||na.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var r=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return r===0?0:r<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+v5(Math.abs(this.year()),4)+"-"+v5(this.month(),2)+"-"+v5(this.day(),2)}});function J9(){this.shortYearCutoff="+10"}h5(J9.prototype,{_validateLevel:0,newDate:function(e,r,t){return e==null?this.today():(e.year&&(this._validate(e,r,t,na.local.invalidDate||na.regionalOptions[""].invalidDate),t=e.day(),r=e.month(),e=e.year()),new Z9(this,e,r,t))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var r=this._validate(e,this.minMonth,this.minDay,na.local.invalidYear||na.regionalOptions[""].invalidYear);return r.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,na.local.invalidYear||na.regionalOptions[""].invalidYear);return(r.year()<0?"-":"")+v5(Math.abs(r.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,na.local.invalidYear||na.regionalOptions[""].invalidYear),12},monthOfYear:function(e,r){var t=this._validate(e,r,this.minDay,na.local.invalidMonth||na.regionalOptions[""].invalidMonth);return(t.month()+this.monthsInYear(t)-this.firstMonth)%this.monthsInYear(t)+this.minMonth},fromMonthOfYear:function(e,r){var t=(r+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,t,this.minDay,na.local.invalidMonth||na.regionalOptions[""].invalidMonth),t},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,na.local.invalidYear||na.regionalOptions[""].invalidYear);return this.leapYear(r)?366:365},dayOfYear:function(e,r,t){var a=this._validate(e,r,t,na.local.invalidDate||na.regionalOptions[""].invalidDate);return a.toJD()-this.newDate(a.year(),this.fromMonthOfYear(a.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,na.local.invalidDate||na.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(a))+2)%this.daysInWeek()},extraInfo:function(e,r,t){return this._validate(e,r,t,na.local.invalidDate||na.regionalOptions[""].invalidDate),{}},add:function(e,r,t){return this._validate(e,this.minMonth,this.minDay,na.local.invalidDate||na.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,r,t),r,t)},_add:function(e,r,t){if(this._validateLevel++,t==="d"||t==="w"){var a=e.toJD()+r*(t==="w"?this.daysInWeek():1),n=e.calendar().fromJD(a);return this._validateLevel--,[n.year(),n.month(),n.day()]}try{var i=e.year()+(t==="y"?r:0),o=e.monthOfYear()+(t==="m"?r:0),n=e.day(),l=function(u){for(;oc-1+u.minMonth;)i++,o-=c,c=u.monthsInYear(i)};t==="y"?(e.month()!==this.fromMonthOfYear(i,o)&&(o=this.newDate(i,e.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(i)),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,o)))):t==="m"&&(l(this),n=Math.min(n,this.daysInMonth(i,this.fromMonthOfYear(i,o))));var s=[i,this.fromMonthOfYear(i,o),n];return this._validateLevel--,s}catch(f){throw this._validateLevel--,f}},_correctAdd:function(e,r,t,a){if(!this.hasYearZero&&(a==="y"||a==="m")&&(r[0]===0||e.year()>0!=r[0]>0)){var n={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[a],i=t<0?-1:1;r=this._add(e,t*n[0]+i*n[1],n[2])}return e.date(r[0],r[1],r[2])},set:function(e,r,t){this._validate(e,this.minMonth,this.minDay,na.local.invalidDate||na.regionalOptions[""].invalidDate);var a=t==="y"?r:e.year(),n=t==="m"?r:e.month(),i=t==="d"?r:e.day();return(t==="y"||t==="m")&&(i=Math.min(i,this.daysInMonth(a,n))),e.date(a,n,i)},isValid:function(e,r,t){this._validateLevel++;var a=this.hasYearZero||e!==0;if(a){var n=this.newDate(e,r,this.minDay);a=r>=this.minMonth&&r-this.minMonth=this.minDay&&t-this.minDay13.5?13:1),f=n-(s>2.5?4716:4715);return f<=0&&f--,this.newDate(f,s,l)},toJSDate:function(e,r,t){var a=this._validate(e,r,t,na.local.invalidDate||na.regionalOptions[""].invalidDate),n=new Date(a.year(),a.month()-1,a.day());return n.setHours(0),n.setMinutes(0),n.setSeconds(0),n.setMilliseconds(0),n.setHours(n.getHours()>12?n.getHours()+2:0),n},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var na=fne.exports=new sne;na.cdate=Z9;na.baseCalendar=J9;na.calendars.gregorian=$9});var une=P(()=>{var Q9=ni(),Ii=oo();Q9(Ii.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});Ii.local=Ii.regionalOptions[""];Q9(Ii.cdate.prototype,{formatDate:function(e,r){return typeof e!="string"&&(r=e,e=""),this._calendar.formatDate(e||"",this,r)}});Q9(Ii.baseCalendar.prototype,{UNIX_EPOCH:Ii.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:Ii.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,r,t){if(typeof e!="string"&&(t=r,r=e,e=""),!r)return"";if(r.calendar()!==this)throw Ii.local.invalidFormat||Ii.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,t=t||{};for(var a=t.dayNamesShort||this.local.dayNamesShort,n=t.dayNames||this.local.dayNames,i=t.monthNumbers||this.local.monthNumbers,o=t.monthNamesShort||this.local.monthNamesShort,l=t.monthNames||this.local.monthNames,s=t.calculateWeek||this.local.calculateWeek,f=function(x,T){for(var E=1;_+E1},u=function(x,T,E,S){var k=""+T;if(f(x,S))for(;k.length1},A=function(q,H){var j=b(q,H),le=[2,3,j?4:2,j?4:2,10,11,20]["oyYJ@!".indexOf(q)+1],te=new RegExp("^-?\\d{1,"+le+"}"),Q=r.substring(k).match(te);if(!Q)throw(Ii.local.missingNumberAt||Ii.regionalOptions[""].missingNumberAt).replace(/\{0\}/,k);return k+=Q[0].length,parseInt(Q[0],10)},_=this,x=function(){if(typeof l=="function"){b("m");var q=l.call(_,r.substring(k));return k+=q.length,q}return A("m")},T=function(q,H,j,le){for(var te=b(q,le)?j:H,Q=0;Q-1){v=1,d=p;for(var O=this.daysInMonth(c,v);d>O;O=this.daysInMonth(c,v))v++,d-=O}return u>-1?this.fromJD(u):this.newDate(c,v,d)},determineDate:function(e,r,t,a,n){t&&typeof t!="object"&&(n=a,a=t,t=null),typeof a!="string"&&(n=a,a="");var i=this,o=function(l){try{return i.parseDate(a,l,n)}catch(c){}l=l.toLowerCase();for(var s=(l.match(/^c/)&&t?t.newDate():null)||i.today(),f=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,u=f.exec(l);u;)s.add(parseInt(u[1],10),u[2]||"d"),u=f.exec(l);return s};return r=r?r.newDate():null,e=e==null?r:typeof e=="string"?o(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?r:i.today().add(e,"d"):i.newDate(e),e}})});var cne=P(()=>{var Sv=oo(),zSe=ni(),K9=Sv.instance();function d5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}d5.prototype=new Sv.baseCalendar;zSe(d5.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,r){if(typeof e=="string"){var t=e.match(USe);return t?t[0]:""}var a=this._validateYear(e),n=e.month(),i=""+this.toChineseMonth(a,n);return r&&i.length<2&&(i="0"+i),this.isIntercalaryMonth(a,n)&&(i+="i"),i},monthNames:function(e){if(typeof e=="string"){var r=e.match(HSe);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},monthNamesShort:function(e){if(typeof e=="string"){var r=e.match(VSe);return r?r[0]:""}var t=this._validateYear(e),a=e.month(),n=this.toChineseMonth(t,a),i=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][n-1];return this.isIntercalaryMonth(t,a)&&(i="\u95F0"+i),i},parseMonth:function(e,r){e=this._validateYear(e);var t=parseInt(r),a;if(isNaN(t))r[0]==="\u95F0"&&(a=!0,r=r.substring(1)),r[r.length-1]==="\u6708"&&(r=r.substring(0,r.length-1)),t=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(r);else{var n=r[r.length-1];a=n==="i"||n==="I"}var i=this.toMonthIndex(e,t,a);return i},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,r){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw r.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,r,t){var a=this.intercalaryMonth(e),n=t&&r!==a;if(n||r<1||r>12)throw Sv.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return a?!t&&r<=a?i=r-1:i=r:i=r-1,i},toChineseMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e),a=t?12:11;if(r<0||r>a)throw Sv.local.invalidMonth.replace(/\{0\}/,this.local.name);var n;return t?r>13;return t},isIntercalaryMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e);return!!t&&t===r},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,r,t){var a=this._validateYear(e,Sv.local.invalidyear),n=kv[a-kv[0]],i=n>>9&4095,o=n>>5&15,l=n&31,s;s=K9.newDate(i,o,l),s.add(4-(s.dayOfWeek()||7),"d");var f=this.toJD(e,r,t)-s.toJD();return 1+Math.floor(f/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,r){e.year&&(r=e.month(),e=e.year()),e=this._validateYear(e);var t=Ev[e-Ev[0]],a=t>>13,n=a?12:11;if(r>n)throw Sv.local.invalidMonth.replace(/\{0\}/,this.local.name);var i=t&1<<12-r?30:29;return i},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,i,t,Sv.local.invalidDate);e=this._validateYear(a.year()),r=a.month(),t=a.day();var n=this.isIntercalaryMonth(e,r),i=this.toChineseMonth(e,r),o=WSe(e,i,t,n);return K9.toJD(o.year,o.month,o.day)},fromJD:function(e){var r=K9.fromJD(e),t=YSe(r.year(),r.month(),r.day()),a=this.toMonthIndex(t.year,t.month,t.isIntercalary);return this.newDate(t.year,a,t.day)},fromString:function(e){var r=e.match(GSe),t=this._validateYear(+r[1]),a=+r[2],n=!!r[3],i=this.toMonthIndex(t,a,n),o=+r[4];return this.newDate(t,i,o)},add:function(e,r,t){var a=e.year(),n=e.month(),i=this.isIntercalaryMonth(a,n),o=this.toChineseMonth(a,n),l=Object.getPrototypeOf(d5.prototype).add.call(this,e,r,t);if(t==="y"){var s=l.year(),f=l.month(),u=this.isIntercalaryMonth(s,o),c=i&&u?this.toMonthIndex(s,o,!0):this.toMonthIndex(s,o,!1);c!==f&&l.month(c)}return l}});var GSe=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,USe=/^\d?\d[iI]?/m,HSe=/^闰?十?[一二三四五六七八九]?月/m,VSe=/^闰?十?[一二三四五六七八九]?/m;Sv.calendars.chinese=d5;var Ev=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],kv=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function YSe(e,r,t,a){var n,i;if(typeof e=="object")n=e,i=r||{};else{var o=typeof e=="number"&&e>=1888&&e<=2111;if(!o)throw new Error("Solar year outside range 1888-2111");var l=typeof r=="number"&&r>=1&&r<=12;if(!l)throw new Error("Solar month outside range 1 - 12");var s=typeof t=="number"&&t>=1&&t<=31;if(!s)throw new Error("Solar day outside range 1 - 31");n={year:e,month:r,day:t},i=a||{}}var f=kv[n.year-kv[0]],u=n.year<<9|n.month<<5|n.day;i.year=u>=f?n.year:n.year-1,f=kv[i.year-kv[0]];var c=f>>9&4095,v=f>>5&15,d=f&31,p,y=new Date(c,v-1,d),m=new Date(n.year,n.month-1,n.day);p=Math.round((m-y)/(24*3600*1e3));var b=Ev[i.year-Ev[0]],A;for(A=0;A<13;A++){var _=b&1<<12-A?30:29;if(p<_)break;p-=_}var x=b>>13;return!x||A=1888&&e<=2111;if(!l)throw new Error("Lunar year outside range 1888-2111");var s=typeof r=="number"&&r>=1&&r<=12;if(!s)throw new Error("Lunar month outside range 1 - 12");var f=typeof t=="number"&&t>=1&&t<=30;if(!f)throw new Error("Lunar day outside range 1 - 30");var u;typeof a=="object"?(u=!1,i=a):(u=!!a,i=n||{}),o={year:e,month:r,day:t,isIntercalary:u}}var c;c=o.day-1;var v=Ev[o.year-Ev[0]],d=v>>13,p;d&&(o.month>d||o.isIntercalary)?p=o.month:p=o.month-1;for(var y=0;y>9&4095,_=b>>5&15,x=b&31,T=new Date(A,_-1,x+c);return i.year=T.getFullYear(),i.month=1+T.getMonth(),i.day=T.getDate(),i}});var vne=P(()=>{var bh=oo(),jSe=ni();function eM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}eM.prototype=new bh.baseCalendar;jSe(eM.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,bh.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,bh.local.invalidYear||bh.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,bh.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,bh.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});bh.calendars.coptic=eM});var hne=P(()=>{var Xu=oo(),XSe=ni();function rM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}rM.prototype=new Xu.baseCalendar;XSe(rM.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Xu.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Xu.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Xu.local.invalidYear),400},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/8)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Xu.local.invalidMonth);return this.daysPerMonth[t.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,Xu.local.invalidDate);return(a.day()+1)%8},weekDay:function(e,r,t){var a=this.dayOfWeek(e,r,t);return a>=2&&a<=6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Xu.local.invalidDate);return{century:ZSe[Math.floor((a.year()-1)/100)+1]||""}},toJD:function(e,r,t){var a=this._validate(e,r,t,Xu.local.invalidDate);return e=a.year()+(a.year()<0?1:0),r=a.month(),t=a.day(),t+(r>1?16:0)+(r>2?(r-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var r=Math.floor(e/400)+1;e-=(r-1)*400,e+=e>15?16:0;var t=Math.floor(e/32)+1,a=e-(t-1)*32+1;return this.newDate(r<=0?r-1:r,t,a)}});var ZSe={20:"Fruitbat",21:"Anchovy"};Xu.calendars.discworld=rM});var dne=P(()=>{var xh=oo(),JSe=ni();function tM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}tM.prototype=new xh.baseCalendar;JSe(tM.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,xh.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,xh.local.invalidYear||xh.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,xh.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,xh.local.invalidDate);return e=a.year(),e<0&&e++,a.day()+(a.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var a=Math.floor(r/30)+1,n=r-(a-1)*30+1;return this.newDate(t,a,n)}});xh.calendars.ethiopian=tM});var pne=P(()=>{var Cv=oo(),$Se=ni();function aM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}aM.prototype=new Cv.baseCalendar;$Se(aM.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Cv.local.invalidYear);return this._leapYear(r.year())},_leapYear:function(e){return e=e<0?e+1:e,p5(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Cv.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Cv.local.invalidYear);return e=r.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,Cv.local.invalidMonth),r===12&&this.leapYear(e)||r===8&&p5(this.daysInYear(e),10)===5?30:r===9&&p5(this.daysInYear(e),10)===3?29:this.daysPerMonth[r-1]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},extraInfo:function(e,r,t){var a=this._validate(e,r,t,Cv.local.invalidDate);return{yearType:(this.leapYear(a)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(a)%10-3]}},toJD:function(e,r,t){var a=this._validate(e,r,t,Cv.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=e<=0?e+1:e,i=this.jdEpoch+this._delay1(n)+this._delay2(n)+t+1;if(r<7){for(var o=7;o<=this.monthsInYear(e);o++)i+=this.daysInMonth(e,o);for(var o=1;o=this.toJD(r===-1?1:r+1,7,1);)r++;for(var t=ethis.toJD(r,t,this.daysInMonth(r,t));)t++;var a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});function p5(e,r){return e-r*Math.floor(e/r)}Cv.calendars.hebrew=aM});var mne=P(()=>{var xg=oo(),QSe=ni();function nM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}nM.prototype=new xg.baseCalendar;QSe(nM.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,xg.local.invalidYear);return(r.year()*11+14)%30<11},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,xg.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,xg.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e=e<=0?e+1:e,t+Math.ceil(29.5*(r-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=Math.floor((30*(e-this.jdEpoch)+10646)/10631);r=r<=0?r-1:r;var t=Math.min(12,Math.ceil((e-29-this.toJD(r,1,1))/29.5)+1),a=e-this.toJD(r,t,1)+1;return this.newDate(r,t,a)}});xg.calendars.islamic=nM});var yne=P(()=>{var _g=oo(),KSe=ni();function iM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}iM.prototype=new _g.baseCalendar;KSe(iM.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,_g.local.invalidYear),t=r.year()<0?r.year()+1:r.year();return t%4===0},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(4-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,_g.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var a=this._validate(e,r,t,_g.local.invalidDate);return e=a.year(),r=a.month(),t=a.day(),e<0&&e++,r<=2&&(e--,r+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(r+1))+t-1524.5},fromJD:function(e){var r=Math.floor(e+.5),t=r+1524,a=Math.floor((t-122.1)/365.25),n=Math.floor(365.25*a),i=Math.floor((t-n)/30.6001),o=i-Math.floor(i<14?1:13),l=a-Math.floor(o>2?4716:4715),s=t-n-Math.floor(30.6001*i);return l<=0&&l--,this.newDate(l,o,s)}});_g.calendars.julian=iM});var bne=P(()=>{var ss=oo(),eEe=ni();function lM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}lM.prototype=new ss.baseCalendar;eEe(lM.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,ss.local.invalidYear),!1},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,ss.local.invalidYear);e=r.year();var t=Math.floor(e/400);e=e%400,e+=e<0?400:0;var a=Math.floor(e/20);return t+"."+a+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var r=0,t=0;t19||t>0&&a<0)throw"Invalid Mayan year";r=r*20+a}return r},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ss.local.invalidYear),18},weekOfYear:function(e,r,t){return this._validate(e,r,t,ss.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ss.local.invalidYear),360},daysInMonth:function(e,r){return this._validate(e,r,this.minDay,ss.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,r,t){var a=this._validate(e,r,t,ss.local.invalidDate);return a.day()},weekDay:function(e,r,t){return this._validate(e,r,t,ss.local.invalidDate),!0},extraInfo:function(e,r,t){var a=this._validate(e,r,t,ss.local.invalidDate),n=a.toJD(),i=this._toHaab(n),o=this._toTzolkin(n);return{haabMonthName:this.local.haabMonths[i[0]-1],haabMonth:i[0],haabDay:i[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(e){e-=this.jdEpoch;var r=oM(e+8+17*20,365);return[Math.floor(r/20)+1,oM(r,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[gne(e+20,20),gne(e+4,13)]},toJD:function(e,r,t){var a=this._validate(e,r,t,ss.local.invalidDate);return a.day()+a.month()*20+a.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var r=Math.floor(e/360);e=e%360,e+=e<0?360:0;var t=Math.floor(e/20),a=e%20;return this.newDate(r,t,a)}});function oM(e,r){return e-r*Math.floor(e/r)}function gne(e,r){return oM(e-1,r)+1}ss.calendars.mayan=lM});var _ne=P(()=>{var _h=oo(),rEe=ni();function sM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}sM.prototype=new _h.baseCalendar;var xne=_h.instance("gregorian");rEe(sM.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,_h.local.invalidYear||_h.regionalOptions[""].invalidYear);return xne.leapYear(r.year()+(r.year()<1?1:0)+1469)},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(1-(a.dayOfWeek()||7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,_h.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,_h.local.invalidMonth),n=a.year();n<0&&n++;for(var i=a.day(),o=1;o=this.toJD(r+1,1,1);)r++;for(var t=e-Math.floor(this.toJD(r,1,1)+.5)+1,a=1;t>this.daysInMonth(r,a);)t-=this.daysInMonth(r,a),a++;return this.newDate(r,a,t)}});_h.calendars.nanakshahi=sM});var wne=P(()=>{var wh=oo(),tEe=ni();function fM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}fM.prototype=new wh.baseCalendar;tEe(fM.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,wh.local.invalidYear);if(e=r.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var t=0,a=this.minMonth;a<=12;a++)t+=this.NEPALI_CALENDAR_DATA[e][a];return t},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,wh.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[r-1]:this.NEPALI_CALENDAR_DATA[e][r]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},toJD:function(e,r,t){var a=this._validate(e,r,t,wh.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=wh.instance(),i=0,o=r,l=e;this._createMissingCalendarData(e);var s=e-(o>9||o===9&&t>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(r!==9&&(i=t,o--);o!==9;)o<=0&&(o=12,l--),i+=this.NEPALI_CALENDAR_DATA[l][o],o--;return r===9?(i+=t-this.NEPALI_CALENDAR_DATA[l][0],i<0&&(i+=n.daysInYear(s))):i+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],n.newDate(s,1,1).add(i,"d").toJD()},fromJD:function(e){var r=wh.instance(),t=r.fromJD(e),a=t.year(),n=t.dayOfYear(),i=a+56;this._createMissingCalendarData(i);for(var o=9,l=this.NEPALI_CALENDAR_DATA[i][0],s=this.NEPALI_CALENDAR_DATA[i][o]-l+1;n>s;)o++,o>12&&(o=1,i++),s+=this.NEPALI_CALENDAR_DATA[i][o];var f=this.NEPALI_CALENDAR_DATA[i][o]-(s-n);return this.newDate(i,o,f)},_createMissingCalendarData:function(e){var r=this.daysPerMonth.slice(0);r.unshift(17);for(var t=e-1;t{var Jp=oo(),aEe=ni();function y5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function m5(e){var r=e-475;e<0&&r++;var t=.242197,a=t*r,n=t*(r+1),i=a-Math.floor(a),o=n-Math.floor(n);return i>o}y5.prototype=new Jp.baseCalendar;aEe(y5.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Jp.local.invalidYear);return m5(r.year())},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-((a.dayOfWeek()+1)%7),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Jp.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,Jp.local.invalidDate);e=a.year(),r=a.month(),t=a.day();var n=0;if(e>0)for(var i=1;i0?e-1:e)*365+n+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=475+(e-this.toJD(475,1,1))/365.242197,t=Math.floor(r);t<=0&&t--,e>this.toJD(t,12,m5(t)?30:29)&&(t++,t===0&&t++);var a=e-this.toJD(t,1,1)+1,n=a<=186?Math.ceil(a/31):Math.ceil((a-6)/30),i=e-this.toJD(t,n,1)+1;return this.newDate(t,n,i)}});Jp.calendars.persian=y5;Jp.calendars.jalali=y5});var Tne=P(()=>{var Ah=oo(),nEe=ni(),g5=Ah.instance();function uM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}uM.prototype=new Ah.baseCalendar;nEe(uM.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Ah.local.invalidYear),t=this._t2gYear(r.year());return g5.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,Ah.local.invalidYear),n=this._t2gYear(a.year());return g5.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Ah.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,Ah.local.invalidDate),n=this._t2gYear(a.year());return g5.toJD(n,a.month(),a.day())},fromJD:function(e){var r=g5.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Ah.calendars.taiwan=uM});var Mne=P(()=>{var Th=oo(),iEe=ni(),b5=Th.instance();function cM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}cM.prototype=new Th.baseCalendar;iEe(cM.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Th.local.invalidYear),t=this._t2gYear(r.year());return b5.leapYear(t)},weekOfYear:function(n,r,t){var a=this._validate(n,this.minMonth,this.minDay,Th.local.invalidYear),n=this._t2gYear(a.year());return b5.weekOfYear(n,a.month(),a.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Th.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(n,r,t){var a=this._validate(n,r,t,Th.local.invalidDate),n=this._t2gYear(a.year());return b5.toJD(n,a.month(),a.day())},fromJD:function(e){var r=b5.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});Th.calendars.thai=cM});var Sne=P(()=>{var Mh=oo(),oEe=ni();function vM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}vM.prototype=new Mh.baseCalendar;oEe(vM.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Mh.local.invalidYear);return this.daysInYear(r.year())===355},weekOfYear:function(e,r,t){var a=this.newDate(e,r,t);return a.add(-a.dayOfWeek(),"d"),Math.floor((a.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var r=0,t=1;t<=12;t++)r+=this.daysInMonth(e,t);return r},daysInMonth:function(e,r){for(var t=this._validate(e,r,this.minDay,Mh.local.invalidMonth),a=t.toJD()-24e5+.5,n=0,i=0;ia)return Lv[n]-Lv[n-1];n++}return 30},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var a=this._validate(e,r,t,Mh.local.invalidDate),n=12*(a.year()-1)+a.month()-15292,i=a.day()+Lv[n-1]-1;return i+24e5-.5},fromJD:function(e){for(var r=e-24e5+.5,t=0,a=0;ar);a++)t++;var n=t+15292,i=Math.floor((n-1)/12),o=i+1,l=n-12*i,s=r-Lv[t-1]+1;return this.newDate(o,l,s)},isValid:function(e,r,t){var a=Mh.baseCalendar.prototype.isValid.apply(this,arguments);return a&&(e=e.year!=null?e.year:e,a=e>=1276&&e<=1500),a},_validate:function(e,r,t,a){var n=Mh.baseCalendar.prototype._validate.apply(this,arguments);if(n.year<1276||n.year>1500)throw a.replace(/\{0\}/,this.local.name);return n}});Mh.calendars.ummalqura=vM;var Lv=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var kne=P((gBe,Ene)=>{"use strict";Ene.exports=oo();une();cne();vne();hne();dne();pne();mne();yne();bne();_ne();wne();Ane();Tne();Mne();Sne()});var Pne=P((bBe,Rne)=>{"use strict";var Lne=kne(),wg=Ur(),Dne=Kn(),lEe=Dne.EPOCHJD,sEe=Dne.ONEDAY,pM={valType:"enumerated",values:wg.sortObjectKeys(Lne.calendars),editType:"calc",dflt:"gregorian"},Fne=function(e,r,t,a){var n={};return n[t]=pM,wg.coerce(e,r,n,t,a)},fEe=function(e,r,t,a){for(var n=0;n{"use strict";Nne.exports=Pne()});var pEe=P((_Be,Bne)=>{var One=kV();One.register([$re(),$te(),lne(),Ine()]);Bne.exports=One});return pEe();})(); /*! Bundled license information: native-promise-only/lib/npo.src.js: diff --git a/dist/plotly-gl3d.js b/dist/plotly-gl3d.js index 576ac77036c..aef012b7ee2 100644 --- a/dist/plotly-gl3d.js +++ b/dist/plotly-gl3d.js @@ -1,5 +1,5 @@ /** -* plotly.js (gl3d) v3.3.0 +* plotly.js (gl3d) v3.3.1 * 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.3.0"; + exports.version = "3.3.1"; } }); @@ -8750,7 +8750,7 @@ var Plotly = (() => { var isArrayOrTypedArray = require_array().isArrayOrTypedArray; module.exports = function nestedProperty(container, propStr) { if (isNumeric(propStr)) propStr = String(propStr); - else if (typeof propStr !== "string" || propStr.substr(propStr.length - 4) === "[-1]") { + else if (typeof propStr !== "string" || propStr.slice(-4) === "[-1]") { throw "bad property string"; } var propParts = propStr.split("."); @@ -8769,7 +8769,7 @@ var Plotly = (() => { if (indexed[1]) propParts[j] = indexed[1]; else if (j === 0) propParts.splice(0, 1); else throw "bad property string"; - indices = indexed[2].substr(1, indexed[2].length - 2).split("]["); + indices = indexed[2].slice(1, -1).split("]["); for (i = 0; i < indices.length; i++) { j++; propParts.splice(j, 0, Number(indices[i])); @@ -10847,11 +10847,11 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { key = keys[i]; val = container[key]; - if (key.substr(key.length - 5) === "color") { + if (key.slice(-5) === "color") { if (Array.isArray(val)) { for (j = 0; j < val.length; j++) val[j] = cleanOne(val[j]); } else container[key] = cleanOne(val); - } else if (key.substr(key.length - 10) === "colorscale" && Array.isArray(val)) { + } else if (key.slice(-10) === "colorscale" && Array.isArray(val)) { for (j = 0; j < val.length; j++) { if (Array.isArray(val[j])) val[j][1] = cleanOne(val[j][1]); } @@ -10866,7 +10866,7 @@ var Plotly = (() => { function cleanOne(val) { if (isNumeric(val) || typeof val !== "string") return val; var valTrim = val.trim(); - if (valTrim.substr(0, 3) !== "rgb") return val; + if (valTrim.slice(0, 3) !== "rgb") return val; var match = valTrim.match(/^rgba?\s*\(([^()]*)\)$/); if (!match) return val; var parts = match[1].trim().split(/\s*[\s,]\s*/); @@ -10960,7 +10960,7 @@ var Plotly = (() => { for (var i = 0; i < values.length; i++) { var k = String(values[i]); if (k.charAt(0) === "/" && k.charAt(k.length - 1) === "/") { - var regex = new RegExp(k.substr(1, k.length - 2)); + var regex = new RegExp(k.slice(1, -1)); if (regex.test(v)) return true; } else if (v === values[i]) return true; } @@ -10968,9 +10968,13 @@ var Plotly = (() => { } }, boolean: { - coerceFunction: function(v, propOut, dflt) { - if (v === true || v === false) propOut.set(v); - else propOut.set(dflt); + coerceFunction: function(v, propOut, dflt, opts) { + const isBoolean = (value) => value === true || value === false; + if (isBoolean(v) || opts.arrayOk && Array.isArray(v) && v.length > 0 && v.every(isBoolean)) { + propOut.set(v); + } else { + propOut.set(dflt); + } } }, number: { @@ -11037,11 +11041,12 @@ var Plotly = (() => { subplotid: { coerceFunction: function(v, propOut, dflt, opts) { var regex = opts.regex || counterRegex(dflt); - if (typeof v === "string" && regex.test(v)) { + const isSubplotId = (value) => typeof value === "string" && regex.test(value); + if (isSubplotId(v) || opts.arrayOk && isArrayOrTypedArray(v) && v.length > 0 && v.every(isSubplotId)) { propOut.set(v); - return; + } else { + propOut.set(dflt); } - propOut.set(dflt); }, validateFunction: function(v, opts) { var dflt = opts.dflt; @@ -13747,9 +13752,9 @@ var Plotly = (() => { var require_maplibre_gl = __commonJS({ "node_modules/maplibre-gl/dist/maplibre-gl.css"() { (function() { - if (!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")) { + if (!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")) { var e = document.createElement("style"); - e.id = "ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe"; + e.id = "696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97"; e.textContent = `.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`; document.head.appendChild(e); } @@ -14072,10 +14077,10 @@ var Plotly = (() => { var isWorld = isWorldCalendar(calendar); var s0 = s.charAt(0); if (isWorld && (s0 === "G" || s0 === "g")) { - s = s.substr(1); + s = s.slice(1); calendar = ""; } - var isChinese = isWorld && calendar.substr(0, 7) === "chinese"; + var isChinese = isWorld && calendar.slice(0, 7) === "chinese"; var match = s.match(isChinese ? DATETIME_REGEXP_CN : DATETIME_REGEXP); if (!match) return BADNUM; var y = match[1]; @@ -14119,7 +14124,7 @@ var Plotly = (() => { return exports.dateTime2ms(s, calendar) !== BADNUM; }; function lpad(val, digits) { - return String(val + Math.pow(10, digits)).substr(1); + return String(val + Math.pow(10, digits)).slice(1); } var NINETYDAYS = 90 * ONEDAY; var THREEHOURS = 3 * ONEHOUR; @@ -14139,7 +14144,7 @@ var Plotly = (() => { dateStr = utcFormat("G%Y-%m-%d")(new Date(msRounded)); } if (dateStr.charAt(0) === "-") { - while (dateStr.length < 11) dateStr = "-0" + dateStr.substr(1); + while (dateStr.length < 11) dateStr = "-0" + dateStr.slice(1); } else { while (dateStr.length < 10) dateStr = "0" + dateStr; } @@ -14211,7 +14216,7 @@ var Plotly = (() => { function modDateFormat(fmt, x, formatter, calendar) { fmt = fmt.replace(fracMatch, function(match) { var digits = Math.min(+match.charAt(1) || 6, 6); - var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).substr(2).replace(/0+$/, "") || "0"; + var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).slice(2).replace(/0+$/, "") || "0"; return fracSecs; }); var d = new Date(Math.floor(x + 0.05)); @@ -14234,7 +14239,7 @@ var Plotly = (() => { if (tr !== "M") { if (!isNumeric(tr)) tr = 0; var sec = Math.min(mod(x / ONESEC, 60), MAXSECONDS[tr]); - var secStr = (100 + sec).toFixed(tr).substr(1); + var secStr = (100 + sec).toFixed(tr).slice(1); if (tr > 0) { secStr = secStr.replace(/0+$/, "").replace(/[\.]$/, ""); } @@ -14948,8 +14953,8 @@ var Plotly = (() => { if (part.indexOf("Safari") !== -1) { for (var k = i - 1; k > -1; k--) { var prevPart = allParts[k]; - if (prevPart.substr(0, 8) === "Version/") { - var v = prevPart.substr(8).split(".")[0]; + if (prevPart.slice(0, 8) === "Version/") { + var v = prevPart.slice(8).split(".")[0]; if (isNumeric(v)) v = +v; if (v >= 13) return true; } @@ -15416,7 +15421,7 @@ var Plotly = (() => { return finalStep && finalStep(arg); }; lib.stripTrailingSlash = function(str) { - if (str.substr(-1) === "/") return str.substr(0, str.length - 1); + if (str.slice(-1) === "/") return str.slice(0, -1); return str; }; lib.noneOrAll = function(containerIn, containerOut, attrList) { @@ -15577,7 +15582,7 @@ var Plotly = (() => { } lib.minExtend = minExtend; lib.titleCase = function(s) { - return s.charAt(0).toUpperCase() + s.substr(1); + return s.charAt(0).toUpperCase() + s.slice(1); }; lib.containsAny = function(s, fragments) { for (var i = 0; i < fragments.length; i++) { @@ -17089,7 +17094,7 @@ var Plotly = (() => { if (name2.charAt(lastChar) !== "s") { Lib.warn("bad argument to arrayDefaultKey: " + name2); } - return name2.substr(0, name2.length - 1) + "defaults"; + return name2.slice(0, -1) + "defaults"; } exports.arrayDefaultKey = arrayDefaultKey; exports.arrayEditor = function(parentIn, containerStr, itemOut) { @@ -17214,13 +17219,13 @@ var Plotly = (() => { var constants = require_constants2(); exports.id2name = function id2name(id) { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; - var axNum = id.split(" ")[0].substr(1); + var axNum = id.split(" ")[0].slice(1); if (axNum === "1") axNum = ""; return id.charAt(0) + "axis" + axNum; }; exports.name2id = function name2id(name2) { if (!name2.match(constants.AX_NAME_PATTERN)) return; - var axNum = name2.substr(5); + var axNum = name2.slice(5); if (axNum === "1") axNum = ""; return name2.charAt(0) + axNum; }; @@ -17229,7 +17234,7 @@ var Plotly = (() => { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; if (axLetter && id.charAt(0) !== axLetter) return; if (domainTest && !domainId) return; - var axNum = id.split(" ")[0].substr(1).replace(/^0+/, ""); + var axNum = id.split(" ")[0].slice(1).replace(/^0+/, ""); if (axNum === "1") axNum = ""; return id.charAt(0) + axNum + (domainTest && domainId ? " domain" : ""); }; @@ -17241,7 +17246,7 @@ var Plotly = (() => { var i; for (i = 0; i < idList.length; i++) { var idi = idList[i]; - out[i] = fullLayout[idi.charAt(0) + "axis" + idi.substr(1)]; + out[i] = fullLayout[idi.charAt(0) + "axis" + idi.slice(1)]; } if (!only2d) { var sceneIds3D = fullLayout._subplots.gl3d || []; @@ -17272,7 +17277,7 @@ var Plotly = (() => { var ax = null; if (Registry.traceIs(fullTrace, "gl3d")) { var scene = fullTrace.scene; - if (scene.substr(0, 5) === "scene") { + if (scene.slice(0, 5) === "scene") { ax = fullLayout[scene][type + "axis"]; } } else { @@ -17284,7 +17289,7 @@ var Plotly = (() => { var letter1 = id1.charAt(0); var letter2 = id2.charAt(0); if (letter1 !== letter2) return letter1 > letter2 ? 1 : -1; - return +(id1.substr(1) || 1) - +(id2.substr(1) || 1); + return +(id1.slice(1) || 1) - +(id2.slice(1) || 1); }; exports.ref2id = function(ar) { return /^[xyz]/.test(ar) ? ar.split(" ")[0] : false; @@ -18517,7 +18522,12 @@ var Plotly = (() => { _module.attributes.showlegend ? _module.attributes : plots.attributes, "showlegend" ); - coerce("legend"); + Lib.coerce( + traceIn, + traceOut, + _module.attributes.legend ? _module.attributes : plots.attributes, + "legend" + ); coerce("legendwidth"); coerce("legendgroup"); coerce("legendgrouptitle.text"); @@ -18652,7 +18662,7 @@ var Plotly = (() => { Lib.coerce(layoutIn, layoutOut, scatterAttrs, "scattermode"); }; function getComputedSize(attr) { - return typeof attr === "string" && attr.substr(attr.length - 2) === "px" && parseFloat(attr); + return typeof attr === "string" && attr.slice(-2) === "px" && parseFloat(attr); } plots.plotAutoSize = function plotAutoSize(gd, layout, fullLayout) { var context = gd._context || {}; @@ -19092,7 +19102,7 @@ var Plotly = (() => { return; } if (mode === "keepdata") { - if (v.substr(v.length - 3) === "src") { + if (v.slice(-3) === "src") { return; } } else if (mode === "keepstream") { @@ -20324,9 +20334,9 @@ var Plotly = (() => { newParts.pop(); } if (len > eLen) { - newParts.push(p.substr(0, pLen2 - eLen) + ellipsis); + newParts.push(p.slice(0, Math.max(0, pLen2 - eLen)) + ellipsis); } else { - newParts.push(p.substr(0, pLen2)); + newParts.push(p.slice(0, pLen2)); } break; } @@ -20351,7 +20361,7 @@ var Plotly = (() => { var outChar; if (innerMatch.charAt(0) === "#") { outChar = fromCodePoint( - innerMatch.charAt(1) === "x" ? parseInt(innerMatch.substr(2), 16) : parseInt(innerMatch.substr(1), 10) + innerMatch.charAt(1) === "x" ? parseInt(innerMatch.slice(2), 16) : parseInt(innerMatch.slice(1), 10) ); } else outChar = entityToUnicode[innerMatch]; return outChar || fullMatch; @@ -21983,7 +21993,7 @@ var Plotly = (() => { return dtickDflt; } var prefix = dtick.charAt(0); - var dtickNum = dtick.substr(1); + var dtickNum = dtick.slice(1); dtickNum = isNumeric(dtickNum) ? Number(dtickNum) : 0; if (dtickNum <= 0 || !// "M" gives ticks every (integer) n months (isDate && prefix === "M" && dtickNum === Math.round(dtickNum) || // "L" gives ticks linearly spaced in data (not in position) every (float) f @@ -26840,7 +26850,7 @@ var Plotly = (() => { var stats = Lib.findExactDates(data, calendar); var threshold = 0.8; if (stats.exactDays > threshold) { - var numMonths = Number(dtick.substr(1)); + var numMonths = Number(dtick.slice(1)); if (stats.exactYears > threshold && numMonths % 12 === 0) { binStart = axes.tickIncrement(binStart, "M6", "reverse") + ONEDAY * 1.5; } else if (stats.exactMonths > threshold) { @@ -27492,8 +27502,8 @@ var Plotly = (() => { var tick0str = ax.l2r(tick0ms).replace(/(^-|i)/g, ""); var tick0len = tick0str.length; if (String(dtick).charAt(0) === "M") { - if (tick0len > 10 || tick0str.substr(5) !== "01-01") ax._tickround = "d"; - else ax._tickround = +dtick.substr(1) % 12 === 0 ? "y" : "m"; + if (tick0len > 10 || tick0str.slice(5) !== "01-01") ax._tickround = "d"; + else ax._tickround = +dtick.slice(1) % 12 === 0 ? "y" : "m"; } else if (dtick >= ONEDAY && tick0len <= 10 || dtick >= ONEDAY * 15) ax._tickround = "d"; else if (dtick >= ONEMIN && tick0len <= 16 || dtick >= ONEHOUR) ax._tickround = "M"; else if (dtick >= ONESEC && tick0len <= 19 || dtick >= ONEMIN) ax._tickround = "S"; @@ -27504,7 +27514,7 @@ var Plotly = (() => { } } else if (isNumeric(dtick) || dtick.charAt(0) === "L") { var rng = ax.range.map(ax.r2d || Number); - if (!isNumeric(dtick)) dtick = Number(dtick.substr(1)); + if (!isNumeric(dtick)) dtick = Number(dtick.slice(1)); ax._tickround = 2 - Math.floor(Math.log(dtick) / Math.LN10 + 0.01); var maxend = Math.max(Math.abs(rng[0]), Math.abs(rng[1])); var rangeexp = Math.floor(Math.log(maxend) / Math.LN10 + 0.01); @@ -27522,7 +27532,7 @@ var Plotly = (() => { var axSign = axrev ? -1 : 1; if (isNumeric(dtick)) return Lib.increment(x, axSign * dtick); var tType = dtick.charAt(0); - var dtSigned = axSign * Number(dtick.substr(1)); + var dtSigned = axSign * Number(dtick.slice(1)); if (tType === "M") return Lib.incrementMonth(x, dtSigned, calendar); if (tType === "L") return Math.log(Math.pow(10, x) + dtSigned) / Math.LN10; if (tType === "D") { @@ -27549,7 +27559,7 @@ var Plotly = (() => { return tmin; } var tType = dtick.charAt(0); - var dtNum = Number(dtick.substr(1)); + var dtNum = Number(dtick.slice(1)); if (tType === "M") { var cnt = 0; var t0 = tick0; @@ -27679,8 +27689,8 @@ var Plotly = (() => { var headStr; var splitIndex = dateStr.indexOf("\n"); if (splitIndex !== -1) { - headStr = dateStr.substr(splitIndex + 1); - dateStr = dateStr.substr(0, splitIndex); + headStr = dateStr.slice(splitIndex + 1); + dateStr = dateStr.slice(0, splitIndex); } if (extraPrecision) { if (headStr !== void 0 && (dateStr === "00:00:00" || dateStr === "00:00")) { @@ -27901,12 +27911,12 @@ var Plotly = (() => { if (tickRound === 0) v = String(Math.floor(v)); else if (tickRound < 0) { v = String(Math.round(v)); - v = v.substr(0, v.length + tickRound); + v = v.slice(0, Math.max(0, v.length + tickRound)); for (var i = tickRound; i < 0; i++) v += "0"; } else { v = String(v); var dp = v.indexOf(".") + 1; - if (dp) v = v.substr(0, dp + tickRound).replace(/\.?0+$/, ""); + if (dp) v = v.slice(0, dp + tickRound).replace(/\.?0+$/, ""); } v = Lib.numSeparate(v, ax._separators, separatethousands); } @@ -28001,8 +28011,8 @@ var Plotly = (() => { var allSubplots = subplotObj.cartesian.concat(subplotObj.gl2d || []); var out = ax ? axes.findSubplotsWithAxis(allSubplots, ax) : allSubplots; out.sort(function(a, b) { - var aParts = a.substr(1).split("y"); - var bParts = b.substr(1).split("y"); + var aParts = a.slice(1).split("y"); + var bParts = b.slice(1).split("y"); if (aParts[0] === bParts[0]) return +aParts[1] - +bParts[1]; return +aParts[0] - +bParts[0]; }); @@ -29977,7 +29987,7 @@ var Plotly = (() => { for (var i = 0; i < classes.length; i++) { var cls = classes[i]; if (cls.indexOf("cursor-") === 0) { - el3.attr(STASHATTR, cls.substr(7)).classed(cls, false); + el3.attr(STASHATTR, cls.slice(7)).classed(cls, false); } } if (!el3.attr(STASHATTR)) { @@ -30219,8 +30229,33 @@ var Plotly = (() => { var shapesWithLegend = (layoutOut.shapes || []).filter(function(d) { return d.showlegend; }); + function isPieWithLegendArray(trace2) { + return Registry.traceIs(trace2, "pie-like") && trace2._length != null && (Array.isArray(trace2.legend) || Array.isArray(trace2.showlegend)); + } + ; + fullData.filter(isPieWithLegendArray).forEach(function(trace2) { + if (trace2.visible) { + legendTraceCount++; + } + for (var index = 0; index < trace2._length; index++) { + var legend = (Array.isArray(trace2.legend) ? trace2.legend[index] : trace2.legend) || "legend"; + if (legend === legendId) { + const showInLegend = Array.isArray(trace2.showlegend) ? trace2.showlegend[index] : trace2.showlegend; + if (showInLegend || trace2._dfltShowLegend) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + } + if (legendId === "legend" && trace2._length > trace2.legend.length) { + for (var idx = trace2.legend.length; idx < trace2._length; idx++) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + }); var allLegendItems = fullData.concat(shapesWithLegend).filter(function(d) { - return legendId === (d.legend || "legend"); + return !isPieWithLegendArray(trace) && legendId === (d.legend || "legend"); }); for (var i = 0; i < allLegendItems.length; i++) { trace = allLegendItems[i]; @@ -30248,7 +30283,7 @@ var Plotly = (() => { layoutOut, basePlotLayoutAttributes, "showlegend", - legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) + layoutOut.showlegend || legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) ); if (showLegend === false) layoutOut[legendId] = void 0; if (showLegend === false && !containerIn.uirevision) return; @@ -30353,7 +30388,11 @@ var Plotly = (() => { } var legends = ["legend"]; for (i = 0; i < allLegendsData.length; i++) { - Lib.pushUnique(legends, allLegendsData[i].legend); + if (Array.isArray(allLegendsData[i].legend)) { + legends = legends.concat(allLegendsData[i].legend); + } else { + Lib.pushUnique(legends, allLegendsData[i].legend); + } } layoutOut._legends = []; for (i = 0; i < legends.length; i++) { @@ -30644,8 +30683,16 @@ var Plotly = (() => { var lgroup = trace.legendgroup; if (!inHover && (!trace.visible || !trace.showlegend)) continue; if (Registry.traceIs(trace, "pie-like")) { + var legendPerSlice = Array.isArray(trace.legend); + var showlegendPerSlice = Array.isArray(trace.showlegend); if (!slicesShown[lgroup]) slicesShown[lgroup] = {}; for (j = 0; j < cd.length; j++) { + if (showlegendPerSlice && trace.showlegend[cd[j].i] === false) { + continue; + } + if (legendPerSlice) { + lid = trace.legend[cd[j].i] || "legend"; + } var labelj = cd[j].label; if (!slicesShown[lgroup][labelj]) { addOneItem(lid, lgroup, { @@ -31841,7 +31888,11 @@ var Plotly = (() => { } function computeTextDimensions(g, gd, legendObj, aTitle) { var legendItem = g.data()[0][0]; - if (!legendObj._inHover && legendItem && !legendItem.trace.showlegend) { + var showlegend = legendItem && legendItem.trace.showlegend; + if (Array.isArray(showlegend)) { + showlegend = showlegend[legendItem.i] !== false; + } + if (!legendObj._inHover && legendItem && !showlegend) { g.remove(); return; } @@ -35111,7 +35162,7 @@ var Plotly = (() => { segments.forEach(function(segment) { var relevantParamIdx = paramsToUse[segment.charAt(0)].drawn; if (relevantParamIdx === void 0) return; - var params = segment.substr(1).match(constants.paramRE); + var params = segment.slice(1).match(constants.paramRE); if (!params || params.length < relevantParamIdx) return; var str = params[relevantParamIdx]; var pos = isRaw ? str : Lib.cleanNumber(str); @@ -35302,7 +35353,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (xParams[paramNumber]) { if (xSizemode === "pixel") param = x2p(xAnchor) + Number(param); else param = x2p(param); @@ -36311,7 +36362,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (paramNumber >= nParams) return param; if (xParams[paramNumber]) param = moveX(param); else if (yParams[paramNumber]) param = moveY(param); @@ -38034,12 +38085,12 @@ var Plotly = (() => { if (typeof a === "string") { aPrefix = a.match(/^[xy]*/)[0]; aLen = aPrefix.length; - a = +a.substr(aLen); + a = +a.slice(aLen); } if (typeof b === "string") { bPrefix = b.match(/^[xy]*/)[0]; bLen = bPrefix.length; - b = +b.substr(bLen); + b = +b.slice(bLen); } var c = a * b; if (!aLen && !bLen) { @@ -38051,7 +38102,7 @@ var Plotly = (() => { if (aLen === bLen) { return c; } - return (aLen > bLen ? aPrefix.substr(bLen) : bPrefix.substr(aLen)) + c; + return (aLen > bLen ? aPrefix.slice(bLen) : bPrefix.slice(aLen)) + c; } function finalRatios(group, fullLayout) { var size = fullLayout._size; @@ -38064,7 +38115,7 @@ var Plotly = (() => { if (typeof val === "string") { var prefix = val.match(/^[xy]*/)[0]; var pLen = prefix.length; - val = +val.substr(pLen); + val = +val.slice(pLen); var mult = prefix.charAt(0) === "y" ? yRatio : 1 / yRatio; for (var j = 0; j < pLen; j++) { val *= mult; @@ -43681,7 +43732,7 @@ var Plotly = (() => { } if (!arrayStr) arrayStr = rootContainers[rootContainers.indexOf(rootPart)]; if (!arrayStr) return false; - var tail = astr.substr(arrayStr.length); + var tail = astr.slice(arrayStr.length); if (!tail) return { array: arrayStr, index: "", property: "" }; match = tail.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/); if (!match) return false; @@ -44038,7 +44089,7 @@ var Plotly = (() => { for (i = 0; i < minLen; i++) { if (name1.charAt(i) !== name2.charAt(i)) break; } - var out = name1.substr(0, i); + var out = name1.slice(0, i); return out.trim(); } function cleanTextPosition(textposition) { @@ -44119,7 +44170,7 @@ var Plotly = (() => { var ATTR_TAIL_RE = /(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/; function getParent(attr) { var tail = attr.search(ATTR_TAIL_RE); - if (tail > 0) return attr.substr(0, tail); + if (tail > 0) return attr.slice(0, tail); } exports.hasParent = function(aobj, attr) { var attrParent = getParent(attr); @@ -44136,8 +44187,8 @@ var Plotly = (() => { var ax = getFromTrace(gd, trace, AX_LETTERS[j]); if (ax && ax.type !== "log") { var axAttr = ax._name; - var sceneName = ax._id.substr(1); - if (sceneName.substr(0, 5) === "scene") { + var sceneName = ax._id.slice(1); + if (sceneName.slice(0, 5) === "scene") { if (layoutUpdate[sceneName] !== void 0) continue; axAttr = sceneName + "." + axAttr; } @@ -45019,7 +45070,7 @@ var Plotly = (() => { } if (attr in aobj || helpers.hasParent(aobj, attr)) return; var extraparam; - if (attr.substr(0, 6) === "LAYOUT") { + if (attr.slice(0, 6) === "LAYOUT") { extraparam = layoutNP(gd.layout, attr.replace("LAYOUT", "")); } else { var tracei = traces[i2]; @@ -45064,7 +45115,7 @@ var Plotly = (() => { else vi = null; } redoit[ai] = vi; - if (ai.substr(0, 6) === "LAYOUT") { + if (ai.slice(0, 6) === "LAYOUT") { param = layoutNP(gd.layout, ai.replace("LAYOUT", "")); undoit[ai] = [undefinedToNull(param.get())]; param.set(Array.isArray(vi) ? vi[0] : vi); @@ -45081,7 +45132,7 @@ var Plotly = (() => { newVal = Array.isArray(vi) ? vi[i % vi.length] : vi; if (newVal === void 0) continue; var finalPart = param.parts[param.parts.length - 1]; - var prefix = ai.substr(0, ai.length - finalPart.length - 1); + var prefix = ai.slice(0, ai.length - finalPart.length - 1); var prefixDot = prefix ? prefix + "." : ""; var innerContFull = prefix ? nestedProperty(contFull, prefix).get() : contFull; valObject = PlotSchema.getTraceValObject(contFull, param.parts); @@ -45306,7 +45357,7 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { if (keys[i].indexOf("allaxes") === 0) { for (j = 0; j < axes.length; j++) { - var scene = axes[j]._id.substr(1); + var scene = axes[j]._id.slice(1); var axisAttr = scene.indexOf("scene") !== -1 ? scene + "." : ""; var newkey = keys[i].replace("allaxes", axisAttr + axes[j]._name); if (!aobj[newkey]) aobj[newkey] = aobj[keys[i]]; @@ -45614,7 +45665,7 @@ var Plotly = (() => { var match = key.match(spec.pattern); if (match) { var head = match[1] || ""; - return { head, tail: key.substr(head.length + 1), attr: spec.attr }; + return { head, tail: key.slice(head.length + 1), attr: spec.attr }; } } } @@ -45675,7 +45726,7 @@ var Plotly = (() => { } newNP.set(undefinedToNull(nestedProperty(oldFullLayout, key).get())); continue; - } else if (tail === "autorange" || tail.substr(0, 6) === "range[") { + } else if (tail === "autorange" || tail.slice(0, 6) === "range[") { var pre0 = layoutPreGUI[head + ".range[0]"]; var pre1 = layoutPreGUI[head + ".range[1]"]; var preAuto = layoutPreGUI[head + ".autorange"]; @@ -45695,7 +45746,7 @@ var Plotly = (() => { Lib.warn("unrecognized GUI edit: " + key); } delete layoutPreGUI[key]; - if (match && match.tail.substr(0, 6) === "range[") { + if (match && match.tail.slice(0, 6) === "range[") { newRangeAccepted[match.head] = 1; } } @@ -47219,7 +47270,7 @@ var Plotly = (() => { for (var i = 0; i < path.length; i++) { var p = path[i]; if (typeof p === "number") { - astr = astr.substr(0, astr.length - 1) + "[" + p + "]"; + astr = astr.slice(0, -1) + "[" + p + "]"; } else { astr += p; } @@ -49810,7 +49861,7 @@ var Plotly = (() => { prevtrace._nexttrace = trace; } } - trace._ownfill = trace.fill && (trace.fill.substr(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.substr(0, 2) === "to" && !trace._prevtrace); + trace._ownfill = trace.fill && (trace.fill.slice(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.slice(0, 2) === "to" && !trace._prevtrace); prevtraces[group] = trace; } else { trace._prevtrace = trace._nexttrace = trace._ownfill = null; @@ -50013,8 +50064,8 @@ var Plotly = (() => { fullpath = thispath; revpath = thisrevpath; } else if (ownFillDir) { - fullpath += "L" + thispath.substr(1); - revpath = thisrevpath + ("L" + revpath.substr(1)); + fullpath += "L" + thispath.slice(1); + revpath = thisrevpath + ("L" + revpath.slice(1)); } else { fullpath += "Z" + thispath; revpath = thisrevpath + "Z" + revpath; @@ -50079,7 +50130,7 @@ var Plotly = (() => { if (pt0 && pt1) { if (ownFillDir) { pt0[fillAxisIndex] = pt1[fillAxisIndex] = fillAxisZero; - transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.substr(1)).call(Drawing.singleFillStyle, gd); + transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.slice(1)).call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(null); } else { transition(ownFillEl3).attr("d", fullpath + "Z").call(Drawing.singleFillStyle, gd); @@ -50089,13 +50140,13 @@ var Plotly = (() => { trace._polygons = thisPolygons; trace._fillElement = ownFillEl3; } else if (tonext) { - if (trace.fill.substr(0, 6) === "tonext" && fullpath && prevRevpath) { + if (trace.fill.slice(0, 6) === "tonext" && fullpath && prevRevpath) { if (trace.fill === "tonext") { transition(tonext).attr("d", fullpath + "Z" + prevRevpath + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makeSelfPolygons(); trace._polygons = thisPolygons.concat(prevPolygons); } else { - transition(tonext).attr("d", fullpath + "L" + prevRevpath.substr(1) + "Z").call(Drawing.singleFillStyle, gd); + transition(tonext).attr("d", fullpath + "L" + prevRevpath.slice(1) + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(prevFillsegments); trace._polygons = thisPolygons; } @@ -51070,7 +51121,7 @@ var Plotly = (() => { }; function indexOfDay(v) { if (typeof v !== "string") return; - return dayStrToNum[v.substr(0, 3).toLowerCase()]; + return dayStrToNum[v.slice(0, 3).toLowerCase()]; } } }); @@ -51661,10 +51712,10 @@ var Plotly = (() => { if (constants.attrRegex.test(ki)) { var axLetter = ki.charAt(0); if (axLetter === "x") { - if (!xi || +ki.substr(5) < +xi.substr(5)) { + if (!xi || +ki.slice(5) < +xi.slice(5)) { xi = ki; } - } else if (!yi || +ki.substr(5) < +yi.substr(5)) { + } else if (!yi || +ki.slice(5) < +yi.slice(5)) { yi = ki; } } @@ -53888,7 +53939,7 @@ var Plotly = (() => { segment = segments[i]; drawnParam = paramsToUse[segment.charAt(0)].drawn; if (drawnParam === void 0) continue; - params = segments[i].substr(1).match(constants.paramRE); + params = segments[i].slice(1).match(constants.paramRE); if (!params || params.length < drawnParam) continue; val = convertVal(params[drawnParam]); if (val < min) min = val; @@ -56239,9 +56290,9 @@ var Plotly = (() => { var subplots = layoutOut._subplots; if (subplots) { var yIds = subplots.cartesian.filter(function(subplotId) { - return subplotId.substr(0, subplotId.indexOf("y")) === axisIds.name2id(axName); + return subplotId.slice(0, Math.max(0, subplotId.indexOf("y"))) === axisIds.name2id(axName); }).map(function(subplotId) { - return subplotId.substr(subplotId.indexOf("y"), subplotId.length); + return subplotId.slice(subplotId.indexOf("y"), subplotId.length); }); var yNames = Lib.simpleMap(yIds, axisIds.id2name); for (var i = 0; i < yNames.length; i++) { @@ -58243,7 +58294,7 @@ var Plotly = (() => { placeholder: fullLayout._dfltTitle.colorbar, containerGroup: g.select("." + cn.cbtitle) }; - var otherClass = titleClass.charAt(0) === "h" ? titleClass.substr(1) : "h" + titleClass; + var otherClass = titleClass.charAt(0) === "h" ? titleClass.slice(1) : "h" + titleClass; g.selectAll("." + otherClass + ",." + otherClass + "-math-group").remove(); Titles.draw(gd, titleClass, extendFlat(dfltTitleOpts, titleOpts || {})); } @@ -96013,7 +96064,7 @@ var Plotly = (() => { }; exports.cleanId = function cleanId(id) { if (!id.match(/^scene[0-9]*$/)) return; - var sceneNum = id.substr(5); + var sceneNum = id.slice(5); if (sceneNum === "1") sceneNum = ""; return SCENE + sceneNum; }; @@ -108389,7 +108440,7 @@ var Plotly = (() => { } else { if (directiveObj === UNKNOWN) replacementPart = UNKNOWN; else replacementPart = cDate.formatDate(directiveObj[modifier]); - fmt = fmt.substr(0, i) + replacementPart + fmt.substr(i + directiveLen); + fmt = fmt.slice(0, i) + replacementPart + fmt.slice(i + directiveLen); i += replacementPart.length; } } diff --git a/dist/plotly-gl3d.min.js b/dist/plotly-gl3d.min.js index 1991049455c..f9bc8112081 100644 --- a/dist/plotly-gl3d.min.js +++ b/dist/plotly-gl3d.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (gl3d - minified) v3.3.0 +* plotly.js (gl3d - minified) v3.3.1 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,13 +12,13 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var EB=Object.defineProperty,LB=Object.defineProperties;var DB=Object.getOwnPropertyDescriptors;var lx=Object.getOwnPropertySymbols;var RB=Object.prototype.hasOwnProperty,PB=Object.prototype.propertyIsEnumerable;var sx=(e,r,t)=>r in e?EB(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,xl=(e,r)=>{for(var t in r||(r={}))RB.call(r,t)&&sx(e,t,r[t]);if(lx)for(var t of lx(r))PB.call(r,t)&&sx(e,t,r[t]);return e},xc=(e,r)=>LB(e,DB(r));var de=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var _c=de(ux=>{"use strict";ux.version="3.3.0"});var cx=de((fx,wc)=>{(function(r,t,n){t[r]=t[r]||n(),typeof wc!="undefined"&&wc.exports&&(wc.exports=t[r])})("Promise",typeof window!="undefined"?window:fx,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,b,M){return Object.defineProperty(k,S,{value:b,writable:!0,configurable:M!==!1})}}catch(y){r=function(S,b,M){return S[b]=M,S}}n=function(){var k,S,b;function M(d,x){this.fn=d,this.self=x,this.next=void 0}return{add:function(x,g){b=new M(x,g),S?S.next=b:k=b,S=b,b=void 0},drain:function(){var x=k;for(k=S=t=void 0;x;)x.fn.call(x.self),x=x.next}}}();function i(y,k){n.add(y,k),t||(t=o(n.drain))}function l(y){var k,S=typeof y;return y!=null&&(S=="object"||S=="function")&&(k=y.then),typeof k=="function"?k:!1}function u(){for(var y=0;y0&&i(u,S))}catch(b){h.call(new _(S),b)}}}function h(y){var k=this;k.triggered||(k.triggered=!0,k.def&&(k=k.def),k.msg=y,k.state=2,k.chain.length>0&&i(u,k))}function p(y,k,S,b){for(var M=0;M{(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,G=new Array(B);B--;)G[B]=z[B];return G}}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,G){u.call(this,z,B,G+"")},s.setProperty=function(z,B,G){f.call(this,z,B+"",G)}}e.ascending=h;function h(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,G=C.length,W,Z;if(arguments.length===1){for(;++B=Z){W=Z;break}for(;++BZ&&(W=Z)}else{for(;++B=Z){W=Z;break}for(;++BZ&&(W=Z)}return W},e.max=function(C,z){var B=-1,G=C.length,W,Z;if(arguments.length===1){for(;++B=Z){W=Z;break}for(;++BW&&(W=Z)}else{for(;++B=Z){W=Z;break}for(;++BW&&(W=Z)}return W},e.extent=function(C,z){var B=-1,G=C.length,W,Z,le;if(arguments.length===1){for(;++B=Z){W=le=Z;break}for(;++BZ&&(W=Z),le=Z){W=le=Z;break}for(;++BZ&&(W=Z),le1)return le/(fe-1)},e.deviation=function(){var C=e.variance.apply(this,arguments);return C&&Math.sqrt(C)};function m(C){return{left:function(z,B,G,W){for(arguments.length<3&&(G=0),arguments.length<4&&(W=z.length);G>>1;C(z[Z],B)<0?G=Z+1:W=Z}return G},right:function(z,B,G,W){for(arguments.length<3&&(G=0),arguments.length<4&&(W=z.length);G>>1;C(z[Z],B)>0?W=Z:G=Z+1}return G}}}var w=m(h);e.bisectLeft=w.left,e.bisect=e.bisectRight=w.right,e.bisector=function(C){return m(C.length===1?function(z,B){return h(C(z),B)}:C)},e.shuffle=function(C,z,B){(G=arguments.length)<3&&(B=C.length,G<2&&(z=0));for(var G=B-z,W,Z;G;)Z=Math.random()*G--|0,W=C[G+z],C[G+z]=C[Z+z],C[Z+z]=W;return C},e.permute=function(C,z){for(var B=z.length,G=new Array(B);B--;)G[B]=C[z[B]];return G},e.pairs=function(C){for(var z=0,B=C.length-1,G,W=C[0],Z=new Array(B<0?0:B);z=0;)for(le=C[z],B=le.length;--B>=0;)Z[--W]=le[B];return Z};var y=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 G=[],W=k(y(B)),Z=-1,le;if(C*=W,z*=W,B*=W,B<0)for(;(le=C+B*++Z)>z;)G.push(le/W);else for(;(le=C+B*++Z)=z.length)return W?W.call(C,fe):G?fe.sort(G):fe;for(var _e=-1,Ie=fe.length,Fe=z[xe++],Je,rr,Oe,Ge=new b,We;++_e=z.length)return ie;var xe=[],_e=B[fe++];return ie.forEach(function(Ie,Fe){xe.push({key:Ie,values:le(Fe,fe)})}),_e?xe.sort(function(Ie,Fe){return _e(Ie.key,Fe.key)}):xe}return C.map=function(ie,fe){return Z(fe,ie,0)},C.entries=function(ie){return le(Z(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 G=ie,C},C.rollup=function(ie){return W=ie,C},C},e.set=function(C){var z=new R;if(C)for(var B=0,G=C.length;B=0&&(G=C.slice(B+1),C=C.slice(0,B)),C)return arguments.length<2?this[C].on(G):this[C].on(G,z);if(arguments.length===2){if(z==null)for(C in this)this.hasOwnProperty(C)&&this[C].on(G,null);return this}};function U(C){var z=[],B=new b;function G(){for(var W=z,Z=-1,le=W.length,ie;++Z=0&&(B=C.slice(0,z))!=="xmlns"&&(C=C.slice(z+1)),te.hasOwnProperty(B)?{space:te[B],local:C}:C}},re.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 G(){this.removeAttributeNS(C.space,C.local)}function W(){this.setAttribute(C,z)}function Z(){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?G:B:typeof z=="function"?C.local?ie:le:C.local?Z:W}function ve(C){return C.trim().replace(/\s+/g," ")}re.classed=function(C,z){if(arguments.length<2){if(typeof C=="string"){var B=this.node(),G=(C=Se(C)).length,W=-1;if(z=B.classList){for(;++W=0;)(Z=B[G])&&(W&&W!==Z.nextSibling&&W.parentNode.insertBefore(Z,W),W=Z);return this},re.sort=function(C){C=we.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,Z=qe);function ie(){var _e=this[G];_e&&(this.removeEventListener(C,_e,_e.$),delete this[G])}function fe(){var _e=Z(z,t(arguments));ie.call(this),this.addEventListener(C,this[G]=_e,_e.$=B),_e._=z}function xe(){var _e=new RegExp("^__on([^.]+)"+e.requote(C)+"$"),Ie;for(var Fe in this)if(Ie=Fe.match(_e)){var Je=this[Fe];this.removeEventListener(Ie[1],Je,Je.$),delete this[Fe]}}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 Le(C,z){return function(B){var G=e.event;e.event=B,z[0]=this.__data__;try{C.apply(this,z)}finally{e.event=G}}}function qe(C,z){var B=Le(C,z);return function(G){var W=this,Z=G.relatedTarget;(!Z||Z!==W&&!(Z.compareDocumentPosition(W)&8))&&B.call(W,G)}}var ze,$e=0;function Ve(C){var z=".dragsuppress-"+ ++$e,B="click"+z,G=e.select(o(C)).on("touchmove"+z,X).on("dragstart"+z,X).on("selectstart"+z,X);if(ze==null&&(ze="onselectstart"in C?!1:I(C.style,"userSelect")),ze){var W=a(C).style,Z=W[ze];W[ze]="none"}return function(le){if(G.on(z,null),ze&&(W[ze]=Z),le){var ie=function(){G.on(B,null)};G.on(B,function(){X(),ie()},!0),setTimeout(ie,0)}}}e.mouse=function(C){return Ye(C,$())};var Be=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Ye(C,z){z.changedTouches&&(z=z.changedTouches[0]);var B=C.ownerSVGElement||C;if(B.createSVGPoint){var G=B.createSVGPoint();if(Be<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 Z=B[0][0].getScreenCTM();Be=!(Z.f||Z.e),B.remove()}}return Be?(G.x=z.pageX,G.y=z.pageY):(G.x=z.clientX,G.y=z.clientY),G=G.matrixTransform(C.getScreenCTM().inverse()),[G.x,G.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=$().changedTouches),z){for(var G=0,W=z.length,Z;G0?1:C<0?-1:0}function er(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?Ke:Math.acos(C)}function fr(C){return C>1?J:C<-1?-J:Math.asin(C)}function xr(C){return((C=Math.exp(C))-1/C)/2}function Sr(C){return((C=Math.exp(C))+1/C)/2}function Mr(C){return((C=Math.exp(2*C))-1)/(C+1)}function Ar(C){return(C=Math.sin(C/2))*C}var ft=Math.SQRT2,sr=2,Pr=4;e.interpolateZoom=function(C,z){var B=C[0],G=C[1],W=C[2],Z=z[0],le=z[1],ie=z[2],fe=Z-B,xe=le-G,_e=fe*fe+xe*xe,Ie,Fe;if(_e0&&(hr=hr.transition().duration(le)),hr.call(tr.event)}function _r(){Ge&&Ge.domain(Oe.range().map(function(hr){return(hr-C.x)/C.k}).map(Oe.invert)),je&&je.domain(We.range().map(function(hr){return(hr-C.y)/C.k}).map(We.invert))}function wr(hr){ie++||hr({type:"zoomstart"})}function Or(hr){_r(),hr({type:"zoom",scale:C.k,translate:[C.x,C.y]})}function Tr(hr){--ie||(hr({type:"zoomend"}),B=null)}function Ir(){var hr=this,Br=rr.of(hr,arguments),Hr=0,ut=e.select(o(hr)).on(xe,bn).on(_e,Fn),Pt=Ze(e.mouse(hr)),Qt=Ve(hr);gc.call(hr),wr(Br);function bn(){Hr=1,mr(e.mouse(hr),Pt),Or(Br)}function Fn(){ut.on(xe,null).on(_e,null),Qt(Hr),Tr(Br)}}function st(){var hr=this,Br=rr.of(hr,arguments),Hr={},ut=0,Pt,Qt=".zoom-"+e.event.changedTouches[0].identifier,bn="touchmove"+Qt,Fn="touchend"+Qt,Yn=[],Nn=e.select(hr),$n=Ve(hr);jn(),wr(Br),Nn.on(fe,null).on(Fe,jn);function An(){var Za=e.touches(hr);return Pt=C.k,Za.forEach(function(xn){xn.identifier in Hr&&(Hr[xn.identifier]=Ze(xn))}),Za}function jn(){var Za=e.event.target;e.select(Za).on(bn,ml).on(Fn,CB),Yn.push(Za);for(var xn=e.event.changedTouches,Ta=0,Mi=xn.length;Ta1){var bl=Aa[0],_o=Aa[1],bc=bl[0]-_o[0],ox=bl[1]-_o[1];ut=bc*bc+ox*ox}}function ml(){var Za=e.touches(hr),xn,Ta,Mi,Aa;gc.call(hr);for(var ks=0,bl=Za.length;ks1?1:z,B=B<0?0:B>1?1:B,W=B<=.5?B*(1+z):B+z-B*z,G=2*B-W;function Z(ie){return ie>360?ie-=360:ie<0&&(ie+=360),ie<60?G+(W-G)*ie/60:ie<180?W:ie<240?G+(W-G)*(240-ie)/60:G}function le(ie){return Math.round(Z(ie)*255)}return new tn(le(C+120),le(C),le(C-120))}e.hcl=Et;function Et(C,z,B){return this instanceof Et?(this.h=+C,this.c=+z,void(this.l=+B)):arguments.length<2?C instanceof Et?new Et(C.h,C.c,C.l):C instanceof xt?bi(C.l,C.a,C.b):bi((C=yr((C=e.rgb(C)).r,C.g,C.b)).l,C.a,C.b):new Et(C,z,B)}var Tn=Et.prototype=new pt;Tn.brighter=function(C){return new Et(this.h,this.c,Math.min(100,this.l+gt*(arguments.length?C:1)))},Tn.darker=function(C){return new Et(this.h,this.c,Math.max(0,this.l-gt*(arguments.length?C:1)))},Tn.rgb=function(){return Ot(this.h,this.c,this.l).rgb()};function Ot(C,z,B){return isNaN(C)&&(C=0),isNaN(z)&&(z=0),new xt(B,Math.cos(C*=ae)*z,Math.sin(C)*z)}e.lab=xt;function xt(C,z,B){return this instanceof xt?(this.l=+C,this.a=+z,void(this.b=+B)):arguments.length<2?C instanceof xt?new xt(C.l,C.a,C.b):C instanceof Et?Ot(C.h,C.c,C.l):yr((C=tn(C)).r,C.g,C.b):new xt(C,z,B)}var gt=18,Ft=.95047,ha=1,Qn=1.08883,In=xt.prototype=new pt;In.brighter=function(C){return new xt(Math.min(100,this.l+gt*(arguments.length?C:1)),this.a,this.b)},In.darker=function(C){return new xt(Math.max(0,this.l-gt*(arguments.length?C:1)),this.a,this.b)},In.rgb=function(){return wa(this.l,this.a,this.b)};function wa(C,z,B){var G=(C+16)/116,W=G+z/500,Z=G-B/200;return W=Gi(W)*Ft,G=Gi(G)*ha,Z=Gi(Z)*Qn,new tn(Wi(3.2404542*W-1.5371385*G-.4985314*Z),Wi(-.969266*W+1.8760108*G+.041556*Z),Wi(.0556434*W-.2040259*G+1.0572252*Z))}function bi(C,z,B){return C>0?new Et(Math.atan2(B,z)*De,Math.sqrt(z*z+B*B),C):new Et(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=tn;function tn(C,z,B){return this instanceof tn?(this.r=~~C,this.g=~~z,void(this.b=~~B)):arguments.length<2?C instanceof tn?new tn(C.r,C.g,C.b):at(""+C,tn,hn):new tn(C,z,B)}function bo(C){return new tn(C>>16,C>>8&255,C&255)}function xi(C){return bo(C)+""}var _i=tn.prototype=new pt;_i.brighter=function(C){C=Math.pow(.7,arguments.length?C:1);var z=this.r,B=this.g,G=this.b,W=30;return!z&&!B&&!G?new tn(W,W,W):(z&&z>4,G=G>>4|G,W=fe&240,W=W>>4|W,Z=fe&15,Z=Z<<4|Z):C.length===7&&(G=(fe&16711680)>>16,W=(fe&65280)>>8,Z=fe&255)),z(G,W,Z))}function ct(C,z,B){var G=Math.min(C/=255,z/=255,B/=255),W=Math.max(C,z,B),Z=W-G,le,ie,fe=(W+G)/2;return Z?(ie=fe<.5?Z/(W+G):Z/(2-W-G),C==W?le=(z-B)/Z+(z0&&fe<1?0:le),new Rr(le,ie,fe)}function yr(C,z,B){C=yn(C),z=yn(z),B=yn(B);var G=Yi((.4124564*C+.3575761*z+.1804375*B)/Ft),W=Yi((.2126729*C+.7151522*z+.072175*B)/ha),Z=Yi((.0193339*C+.119192*z+.9503041*B)/Qn);return xt(116*W-16,500*(G-W),200*(W-Z))}function yn(C){return(C/=255)<=.04045?C/12.92:Math.pow((C+.055)/1.055,2.4)}function _t(C){var z=parseFloat(C);return C.charAt(C.length-1)==="%"?Math.round(z*2.55):z}var mn=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});mn.forEach(function(C,z){mn.set(C,bo(z))});function Wr(C){return typeof C=="function"?C:function(){return C}}e.functor=Wr,e.xhr=Wa(N);function Wa(C){return function(z,B,G){return arguments.length===2&&typeof B=="function"&&(G=B,B=null),vl(z,B,C,G)}}function vl(C,z,B,G){var W={},Z=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&&Lq(ie)||_e>=200&&_e<300||_e===304){try{Ie=B.call(W,ie)}catch(Fe){Z.error.call(W,Fe);return}Z.load.call(W,Ie)}else Z.error.call(W,ie)}return ie.onprogress=function(_e){var Ie=e.event;e.event=_e;try{Z.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,Fe){if(arguments.length===2&&typeof Ie=="function"&&(Fe=Ie,Ie=null),ie.open(_e,C,!0),z!=null&&!("accept"in le)&&(le.accept=z+",*/*"),ie.setRequestHeader)for(var Je in le)ie.setRequestHeader(Je,le[Je]);return z!=null&&ie.overrideMimeType&&ie.overrideMimeType(z),fe!=null&&(ie.responseType=fe),Fe!=null&&W.on("error",Fe).on("load",function(rr){Fe(null,rr)}),Z.beforesend.call(W,ie),ie.send(Ie==null?null:Ie),W},W.abort=function(){return ie.abort(),W},e.rebind(W,Z,"on"),G==null?W:W.get(Eq(G))}function Eq(C){return C.length===1?function(z,B){C(z==null?B:null)}:C}function Lq(C){var z=C.responseType;return z&&z!=="text"?C.response:C.responseText}e.dsv=function(C,z){var B=new RegExp('["'+C+` -]`),G=C.charCodeAt(0);function W(xe,_e,Ie){arguments.length<3&&(Ie=_e,_e=null);var Fe=vl(xe,z,_e==null?Z:le(_e),Ie);return Fe.row=function(Je){return arguments.length?Fe.response((_e=Je)==null?Z:le(Je)):_e},Fe}function Z(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(Fe,Je){if(Ie)return Ie(Fe,Je-1);var rr=function(Oe){for(var Ge={},We=Fe.length,je=0;je=rr)return Fe;if(je)return je=!1,Ie;var or=Oe;if(xe.charCodeAt(or)===34){for(var pr=or;pr++24?(isFinite(z)&&(clearTimeout(ec),ec=setTimeout(Id,z)),j0=0):(j0=1,W5(Id))}e.timer.flush=function(){X5(),Z5()};function X5(){for(var C=Date.now(),z=Q0;z;)C>=z.t&&z.c(C-z.t)&&(z.c=null),z=z.n;return C}function Z5(){for(var C,z=Q0,B=1/0;z;)z.c?(z.t=0;--ie)Oe.push(W[xe[Ie[ie]][2]]);for(ie=+Je;ie1&&er(C[B[G-2]],C[B[G-1]],C[W])<=0;)--G;B[G++]=W}return B.slice(0,G)}function Dq(C,z){return C[0]-z[0]||C[1]-z[1]}e.geom.polygon=function(C){return q(C,tc),C};var tc=e.geom.polygon.prototype=[];tc.area=function(){for(var C=-1,z=this.length,B,G=this[z-1],W=0;++CRe)ie=ie.L;else if(le=z-Fq(ie,B),le>Re){if(!ie.R){G=ie;break}ie=ie.R}else{Z>-Re?(G=ie.P,W=ie):le>-Re?(G=ie,W=ie.N):G=W=ie;break}var fe=j5(C);if(ws.insert(G,fe),!(!G&&!W)){if(G===W){Ts(G),W=j5(G.site),ws.insert(fe,W),fe.edge=W.edge=ju(G.site,fe.site),Ms(G),Ms(W);return}if(!W){fe.edge=ju(G.site,fe.site);return}Ts(G),Ts(W);var xe=G.site,_e=xe.x,Ie=xe.y,Fe=C.x-_e,Je=C.y-Ie,rr=W.site,Oe=rr.x-_e,Ge=rr.y-Ie,We=2*(Fe*Ge-Je*Oe),je=Fe*Fe+Je*Je,tr=Oe*Oe+Ge*Ge,Ze={x:(Ge*je-Je*tr)/We+_e,y:(Fe*tr-Oe*je)/We+Ie};nc(W.edge,xe,rr,Ze),fe.edge=ju(xe,C,null,Ze),W.edge=ju(C,rr,null,Ze),Ms(G),Ms(W)}}function eb(C,z){var B=C.site,G=B.x,W=B.y,Z=W-z;if(!Z)return G;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-G,Ie=1/Z-1/xe,Fe=_e/xe;return Ie?(-Fe+Math.sqrt(Fe*Fe-2*Ie*(_e*_e/(-2*xe)-fe+xe/2+W-Z/2)))/Ie+G:(G+ie)/2}function Fq(C,z){var B=C.N;if(B)return eb(B,z);var G=C.site;return G.y===z?G.x:1/0}function rb(C){this.site=C,this.edges=[]}rb.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(tb),C.length};function Nq(C){for(var z=C[0][0],B=C[1][0],G=C[0][1],W=C[1][1],Z,le,ie,fe,xe=dl,_e=xe.length,Ie,Fe,Je,rr,Oe,Ge;_e--;)if(Ie=xe[_e],!(!Ie||!Ie.prepare()))for(Je=Ie.edges,rr=Je.length,Fe=0;FeRe||y(fe-le)>Re)&&(Je.splice(Fe,0,new ac(Uq(Ie.site,Ge,y(ie-z)Re?{x:z,y:y(Z-z)Re?{x:y(le-W)Re?{x:B,y:y(Z-B)Re?{x:y(le-G)=-Qe)){var Fe=fe*fe+xe*xe,Je=_e*_e+Ge*Ge,rr=(Ge*Fe-xe*Je)/Ie,Oe=(fe*Je-_e*Fe)/Ie,Ge=Oe+ie,We=$5.pop()||new zq;We.arc=C,We.site=W,We.x=rr+le,We.y=Ge+Math.sqrt(rr*rr+Oe*Oe),We.cy=Ge,C.circle=We;for(var je=null,tr=$u._;tr;)if(We.y0)){if(Oe/=Je,Je<0){if(Oe0){if(Oe>Fe)return;Oe>Ie&&(Ie=Oe)}if(Oe=B-ie,!(!Je&&Oe<0)){if(Oe/=Je,Je<0){if(Oe>Fe)return;Oe>Ie&&(Ie=Oe)}else if(Je>0){if(Oe0)){if(Oe/=rr,rr<0){if(Oe0){if(Oe>Fe)return;Oe>Ie&&(Ie=Oe)}if(Oe=G-fe,!(!rr&&Oe<0)){if(Oe/=rr,rr<0){if(Oe>Fe)return;Oe>Ie&&(Ie=Oe)}else if(rr>0){if(Oe0&&(W.a={x:ie+Ie*Je,y:fe+Ie*rr}),Fe<1&&(W.b={x:ie+Fe*Je,y:fe+Fe*rr}),W}}}}}}function Oq(C){for(var z=_s,B=qq(C[0][0],C[0][1],C[1][0],C[1][1]),G=z.length,W;G--;)W=z[G],(!Bq(W,C)||!B(W)||y(W.a.x-W.b.x)=Z)return;if(_e>Fe){if(!G)G={x:rr,y:le};else if(G.y>=ie)return;B={x:rr,y:ie}}else{if(!G)G={x:rr,y:ie};else if(G.y1)if(_e>Fe){if(!G)G={x:(le-We)/Ge,y:le};else if(G.y>=ie)return;B={x:(ie-We)/Ge,y:ie}}else{if(!G)G={x:(ie-We)/Ge,y:ie};else if(G.y=Z)return;B={x:Z,y:Ge*Z+We}}else{if(!G)G={x:Z,y:Ge*Z+We};else if(G.x=_e&&We.x<=Fe&&We.y>=Ie&&We.y<=Je?[[_e,Je],[Fe,Je],[Fe,Ie],[_e,Ie]]:[];je.point=fe[Oe]}),xe}function ie(fe){return fe.map(function(xe,_e){return{x:Math.round(G(xe,_e)/Re)*Re,y:Math.round(W(xe,_e)/Re)*Re,i:_e}})}return le.links=function(fe){return Bd(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 Bd(ie(fe)).cells.forEach(function(_e,Ie){for(var Fe=_e.site,Je=_e.edges.sort(tb),rr=-1,Oe=Je.length,Ge,We,je=Je[Oe-1].edge,tr=je.l===Fe?je.r:je.l;++rrtr&&(tr=_e.x),_e.y>Ze&&(Ze=_e.y),Je.push(_e.x),rr.push(_e.y);else for(Oe=0;Oetr&&(tr=or),pr>Ze&&(Ze=pr),Je.push(or),rr.push(pr)}var mr=tr-We,gr=Ze-je;mr>gr?Ze=je+mr:tr=We+gr;function _r(Tr,Ir,st,Bt,vt,hr,Br,Hr){if(!(isNaN(st)||isNaN(Bt)))if(Tr.leaf){var ut=Tr.x,Pt=Tr.y;if(ut!=null)if(y(ut-st)+y(Pt-Bt)<.01)wr(Tr,Ir,st,Bt,vt,hr,Br,Hr);else{var Qt=Tr.point;Tr.x=Tr.y=Tr.point=null,wr(Tr,Qt,ut,Pt,vt,hr,Br,Hr),wr(Tr,Ir,st,Bt,vt,hr,Br,Hr)}else Tr.x=st,Tr.y=Bt,Tr.point=Ir}else wr(Tr,Ir,st,Bt,vt,hr,Br,Hr)}function wr(Tr,Ir,st,Bt,vt,hr,Br,Hr){var ut=(vt+Br)*.5,Pt=(hr+Hr)*.5,Qt=st>=ut,bn=Bt>=Pt,Fn=bn<<1|Qt;Tr.leaf=!1,Tr=Tr.nodes[Fn]||(Tr.nodes[Fn]=ib()),Qt?vt=ut:Br=ut,bn?hr=Pt:Hr=Pt,_r(Tr,Ir,st,Bt,vt,hr,Br,Hr)}var Or=ib();if(Or.add=function(Tr){_r(Or,Tr,+Ie(Tr,++Oe),+Fe(Tr,Oe),We,je,tr,Ze)},Or.visit=function(Tr){tf(Tr,Or,We,je,tr,Ze)},Or.find=function(Tr){return Wq(Or,Tr[0],Tr[1],We,je,tr,Ze)},Oe=-1,z==null){for(;++OeZ||Fe>le||Je=or,gr=B>=pr,_r=gr<<1|mr,wr=_r+4;_rB&&(Z=z.slice(B,Z),ie[le]?ie[le]+=Z:ie[++le]=Z),(G=G[0])===(W=W[0])?ie[le]?ie[le]+=W:ie[++le]=W:(ie[++le]=null,fe.push({i:le,x:Xi(G,W)})),B=Vd.lastIndex;return B=0&&!(G=e.interpolators[B](C,z)););return G}e.interpolators=[function(C,z){var B=typeof z;return(B==="string"?mn.has(z.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(z)?Ud:lb:z instanceof pt?Ud:Array.isArray(z)?lc:B==="object"&&isNaN(z)?ob:Xi)(C,z)}],e.interpolateArray=lc;function lc(C,z){var B=[],G=[],W=C.length,Z=z.length,le=Math.min(C.length,z.length),ie;for(ie=0;ie=0?C.slice(0,z):C,G=z>=0?C.slice(z+1):"in";return B=Xq.get(B)||sb,G=Zq.get(G)||N,Jq(G(B.apply(null,r.call(arguments,1))))};function Jq(C){return function(z){return z<=0?0:z>=1?1:C(z)}}function ub(C){return function(z){return 1-C(1-z)}}function fb(C){return function(z){return .5*(z<.5?C(2*z):2-C(2-2*z))}}function Kq(C){return C*C}function Qq(C){return C*C*C}function $q(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 jq(C){return function(z){return Math.pow(z,C)}}function eO(C){return 1-Math.cos(C*J)}function rO(C){return Math.pow(2,10*(C-1))}function tO(C){return 1-Math.sqrt(1-C*C)}function nO(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(G){return 1+C*Math.pow(2,-10*G)*Math.sin((G-B)*ar/z)}}function aO(C){return C||(C=1.70158),function(z){return z*z*((C+1)*z-C)}}function iO(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=oO;function oO(C,z){C=e.hcl(C),z=e.hcl(z);var B=C.h,G=C.c,W=C.l,Z=z.h-B,le=z.c-G,ie=z.l-W;return isNaN(le)&&(le=0,G=isNaN(G)?z.c:G),isNaN(Z)?(Z=0,B=isNaN(B)?z.h:B):Z>180?Z-=360:Z<-180&&(Z+=360),function(fe){return Ot(B+Z*fe,G+le*fe,W+ie*fe)+""}}e.interpolateHsl=lO;function lO(C,z){C=e.hsl(C),z=e.hsl(z);var B=C.h,G=C.s,W=C.l,Z=z.h-B,le=z.s-G,ie=z.l-W;return isNaN(le)&&(le=0,G=isNaN(G)?z.s:G),isNaN(Z)?(Z=0,B=isNaN(B)?z.h:B):Z>180?Z-=360:Z<-180&&(Z+=360),function(fe){return hn(B+Z*fe,G+le*fe,W+ie*fe)+""}}e.interpolateLab=sO;function sO(C,z){C=e.lab(C),z=e.lab(z);var B=C.l,G=C.a,W=C.b,Z=z.l-B,le=z.a-G,ie=z.b-W;return function(fe){return wa(B+Z*fe,G+le*fe,W+ie*fe)+""}}e.interpolateRound=cb;function cb(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 G=z.transform.baseVal.consolidate()}return new hb(G?G.matrix:fO)})(C)};function hb(C){var z=[C.a,C.b],B=[C.c,C.d],G=db(z),W=vb(z,B),Z=db(uO(B,z,-W))||0;z[0]*B[1]180?z+=360:z-C>180&&(C+=360),G.push({i:B.push(As(B)+"rotate(",null,")")-2,x:Xi(C,z)})):z&&B.push(As(B)+"rotate("+z+")")}function vO(C,z,B,G){C!==z?G.push({i:B.push(As(B)+"skewX(",null,")")-2,x:Xi(C,z)}):z&&B.push(As(B)+"skewX("+z+")")}function dO(C,z,B,G){if(C[0]!==z[0]||C[1]!==z[1]){var W=B.push(As(B)+"scale(",null,",",null,")");G.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(As(B)+"scale("+z+")")}function pb(C,z){var B=[],G=[];return C=e.transform(C),z=e.transform(z),cO(C.translate,z.translate,B,G),hO(C.rotate,z.rotate,B,G),vO(C.skew,z.skew,B,G),dO(C.scale,z.scale,B,G),C=z=null,function(W){for(var Z=-1,le=G.length,ie;++Z0?Z=Ze:(B.c=null,B.t=NaN,B=null,z.end({type:"end",alpha:Z=0})):Ze>0&&(z.start({type:"start",alpha:Z=Ze}),B=rc(C.tick)),C):Z},C.start=function(){var Ze,or=Je.length,pr=rr.length,mr=G[0],gr=G[1],_r,wr;for(Ze=0;Ze=0;)Z.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(G,ie,ie.depth)||0),delete ie.children;return wi(W,function(Ie){var Fe,Je;C&&(Fe=Ie.children)&&Fe.sort(C),B&&(Je=Ie.parent)&&(Je.value+=Ie.value)}),le}return G.sort=function(W){return arguments.length?(C=W,G):C},G.children=function(W){return arguments.length?(z=W,G):z},G.value=function(W){return arguments.length?(B=W,G):B},G.revalue=function(W){return B&&(af(W,function(Z){Z.children&&(Z.value=0)}),wi(W,function(Z){var le;Z.children||(Z.value=+B.call(G,Z,Z.depth)||0),(le=Z.parent)&&(le.value+=Z.value)})),W},G};function nf(C,z){return e.rebind(C,z,"sort","children","value"),C.nodes=C,C.links=EO,C}function af(C,z){for(var B=[C];(C=B.pop())!=null;)if(z(C),(W=C.children)&&(G=W.length))for(var G,W;--G>=0;)B.push(W[G])}function wi(C,z){for(var B=[C],G=[];(C=B.pop())!=null;)if(G.push(C),(le=C.children)&&(Z=le.length))for(var W=-1,Z,le;++WW&&(W=ie),G.push(ie)}for(le=0;leG&&(B=z,G=W);return B}function NO(C){return C.reduce(zO,0)}function zO(C,z){return C+z[1]}e.layout.histogram=function(){var C=!0,z=Number,B=OO,G=qO;function W(Z,Fe){for(var ie=[],fe=Z.map(z,this),xe=B.call(this,fe,Fe),_e=G.call(this,xe,fe,Fe),Ie,Fe=-1,Je=fe.length,rr=_e.length-1,Oe=C?1:1/Je,Ge;++Fe0)for(Fe=-1;++Fe=xe[0]&&Ge<=xe[1]&&(Ie=ie[e.bisect(_e,Ge,1,rr)-1],Ie.y+=Oe,Ie.push(Z[Fe]));return ie}return W.value=function(Z){return arguments.length?(z=Z,W):z},W.range=function(Z){return arguments.length?(B=Wr(Z),W):B},W.bins=function(Z){return arguments.length?(G=typeof Z=="number"?function(le){return bb(le,Z)}:Wr(Z),W):G},W.frequency=function(Z){return arguments.length?(C=!!Z,W):C},W};function qO(C,z){return bb(C,Math.ceil(Math.log(z.length)/Math.LN2+1))}function bb(C,z){for(var B=-1,G=+C[0],W=(C[1]-G)/z,Z=[];++B<=z;)Z[B]=W*B+G;return Z}function OO(C){return[e.min(C),e.max(C)]}e.layout.pack=function(){var C=e.layout.hierarchy().sort(BO),z=0,B=[1,1],G;function W(Z,le){var ie=C.call(this,Z,le),fe=ie[0],xe=B[0],_e=B[1],Ie=G==null?Math.sqrt:typeof G=="function"?G:function(){return G};if(fe.x=fe.y=0,wi(fe,function(Je){Je.r=+Ie(Je.value)}),wi(fe,wb),z){var Fe=z*(G?1:Math.max(2*fe.r/xe,2*fe.r/_e))/2;wi(fe,function(Je){Je.r+=Fe}),wi(fe,wb),wi(fe,function(Je){Je.r-=Fe})}return Mb(fe,xe/2,_e/2,G?1:1/Math.max(2*fe.r/xe,2*fe.r/_e)),ie}return W.size=function(Z){return arguments.length?(B=Z,W):B},W.radius=function(Z){return arguments.length?(G=Z==null||typeof Z=="function"?Z:+Z,W):G},W.padding=function(Z){return arguments.length?(z=+Z,W):z},nf(W,C)};function BO(C,z){return C.value-z.value}function Wd(C,z){var B=C._pack_next;C._pack_next=z,z._pack_prev=C,z._pack_next=B,B._pack_prev=z}function xb(C,z){C._pack_next=z,z._pack_prev=C}function _b(C,z){var B=z.x-C.x,G=z.y-C.y,W=C.r+z.r;return .999*W*W>B*B+G*G}function wb(C){if(!(z=C.children)||!(Fe=z.length))return;var z,B=1/0,G=-1/0,W=1/0,Z=-1/0,le,ie,fe,xe,_e,Ie,Fe;function Je(Ze){B=Math.min(Ze.x-Ze.r,B),G=Math.max(Ze.x+Ze.r,G),W=Math.min(Ze.y-Ze.r,W),Z=Math.max(Ze.y+Ze.r,Z)}if(z.forEach(UO),le=z[0],le.x=-le.r,le.y=0,Je(le),Fe>1&&(ie=z[1],ie.x=ie.r,ie.y=0,Je(ie),Fe>2))for(fe=z[2],Tb(le,ie,fe),Je(fe),Wd(le,fe),le._pack_prev=fe,Wd(fe,ie),ie=le._pack_next,xe=3;xeGe.x&&(Ge=or),or.depth>We.depth&&(We=or)});var je=z(Oe,Ge)/2-Oe.x,tr=B[0]/(Ge.x+z(Ge,Oe)/2+je),Ze=B[1]/(We.depth||1);af(Je,function(or){or.x=(or.x+je)*tr,or.y=or.depth*Ze})}return Fe}function Z(_e){for(var Ie={A:null,children:[_e]},Fe=[Ie],Je;(Je=Fe.pop())!=null;)for(var rr=Je.children,Oe,Ge=0,We=rr.length;Ge0&&(VO(YO(Oe,_e,Fe),_e,or),We+=or,je+=or),tr+=Oe.m,We+=Je.m,Ze+=Ge.m,je+=rr.m;Oe&&!Zd(rr)&&(rr.t=Oe,rr.m+=tr-je),Je&&!Xd(Ge)&&(Ge.t=Je,Ge.m+=We-Ze,Fe=_e)}return Fe}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?(G=(B=_e)==null?xe:null,W):G?null:B},W.nodeSize=function(_e){return arguments.length?(G=(B=_e)==null?null:xe,W):G?B:null},nf(W,C)};function Ab(C,z){return C.parent==z.parent?1:2}function Xd(C){var z=C.children;return z.length?z[0]:C.t}function Zd(C){var z=C.children,B;return(B=z.length)?z[B-1]:C.t}function VO(C,z,B){var G=B/(z.i-C.i);z.c-=G,z.s+=B,C.c+=G,z.z+=B,z.m+=B}function GO(C){for(var z=0,B=0,G=C.children,W=G.length,Z;--W>=0;)Z=G[W],Z.z+=z,Z.m+=z,z+=Z.s+(B+=Z.c)}function YO(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=Ab,B=[1,1],G=!1;function W(Z,le){var ie=C.call(this,Z,le),fe=ie[0],xe,_e=0;wi(fe,function(Oe){var Ge=Oe.children;Ge&&Ge.length?(Oe.x=XO(Ge),Oe.y=WO(Ge)):(Oe.x=xe?_e+=z(Oe,xe):0,Oe.y=0,xe=Oe)});var Ie=kb(fe),Fe=Sb(fe),Je=Ie.x-z(Ie,Fe)/2,rr=Fe.x+z(Fe,Ie)/2;return wi(fe,G?function(Oe){Oe.x=(Oe.x-fe.x)*B[0],Oe.y=(fe.y-Oe.y)*B[1]}:function(Oe){Oe.x=(Oe.x-Je)/(rr-Je)*B[0],Oe.y=(1-(fe.y?Oe.y/fe.y:1))*B[1]}),ie}return W.separation=function(Z){return arguments.length?(z=Z,W):z},W.size=function(Z){return arguments.length?(G=(B=Z)==null,W):G?null:B},W.nodeSize=function(Z){return arguments.length?(G=(B=Z)!=null,W):G?B:null},nf(W,C)};function WO(C){return 1+e.max(C,function(z){return z.y})}function XO(C){return C.reduce(function(z,B){return z+B.x},0)/C.length}function kb(C){var z=C.children;return z&&z.length?kb(z[0]):C}function Sb(C){var z=C.children,B;return z&&(B=z.length)?Sb(z[B-1]):C}e.layout.treemap=function(){var C=e.layout.hierarchy(),z=Math.round,B=[1,1],G=null,W=Jd,Z=!1,le,ie="squarify",fe=.5*(1+Math.sqrt(5));function xe(Oe,Ge){for(var We=-1,je=Oe.length,tr,Ze;++We0;)je.push(Ze=tr[gr-1]),je.area+=Ze.area,ie!=="squarify"||(pr=Fe(je,mr))<=or?(tr.pop(),or=pr):(je.area-=je.pop().area,Je(je,mr,We,!1),mr=Math.min(We.dx,We.dy),je.length=je.area=0,or=1/0);je.length&&(Je(je,mr,We,!0),je.length=je.area=0),Ge.forEach(_e)}}function Ie(Oe){var Ge=Oe.children;if(Ge&&Ge.length){var We=W(Oe),je=Ge.slice(),tr,Ze=[];for(xe(je,We.dx*We.dy/Oe.value),Ze.area=0;tr=je.pop();)Ze.push(tr),Ze.area+=tr.area,tr.z!=null&&(Je(Ze,tr.z?We.dx:We.dy,We,!je.length),Ze.length=Ze.area=0);Ge.forEach(Ie)}}function Fe(Oe,Ge){for(var We=Oe.area,je,tr=0,Ze=1/0,or=-1,pr=Oe.length;++ortr&&(tr=je));return We*=We,Ge*=Ge,We?Math.max(Ge*tr*fe/We,We/(Ge*Ze*fe)):1/0}function Je(Oe,Ge,We,je){var tr=-1,Ze=Oe.length,or=We.x,pr=We.y,mr=Ge?z(Oe.area/Ge):0,gr;if(Ge==We.dx){for((je||mr>We.dy)&&(mr=We.dy);++trWe.dx)&&(mr=We.dx);++tr1);return C+z*G*Math.sqrt(-2*Math.log(Z)/Z)}},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?KO:ZO,xe=G?gO:pO;return W=fe(C,z,xe,B),Z=fe(z,C,xe,pl),ie}function ie(fe){return W(fe)}return ie.invert=function(fe){return Z(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(cb)},ie.clamp=function(fe){return arguments.length?(G=fe,le()):G},ie.interpolate=function(fe){return arguments.length?(B=fe,le()):B},ie.ticks=function(fe){return $d(C,fe)},ie.tickFormat=function(fe,xe){return d3_scale_linearTickFormat(C,fe,xe)},ie.nice=function(fe){return Rb(C,fe),le()},ie.copy=function(){return Lb(C,z,B,G)},le()}function Db(C,z){return e.rebind(C,z,"range","rangeRound","interpolate","clamp")}function Rb(C,z){return Kd(C,Eb(Qd(C,z)[2])),Kd(C,Eb(Qd(C,z)[2])),C}function Qd(C,z){z==null&&(z=10);var B=sc(C),G=B[1]-B[0],W=Math.pow(10,Math.floor(Math.log(G/z)/Math.LN10)),Z=z/G*W;return Z<=.15?W*=10:Z<=.35?W*=5:Z<=.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 $d(C,z){return e.range.apply(e,Qd(C,z))}var QO={s:1,g:1,p:1,r:1,e:1};function Pb(C){return-Math.floor(Math.log(C)/Math.LN10+.01)}function Jue(C,z){var B=Pb(z[2]);return C in QO?Math.abs(B-Pb(Math.max(y(z[0]),y(z[1]))))+ +(C!=="e"):B-(C==="%")*2}e.scale.log=function(){return Ib(e.scale.linear().domain([0,1]),10,!0,[1,10])};function Ib(C,z,B,G){function W(ie){return(B?Math.log(ie<0?0:ie):-Math.log(ie>0?0:-ie))/Math.log(z)}function Z(ie){return B?Math.pow(z,ie):-Math.pow(z,-ie)}function le(ie){return C(W(ie))}return le.invert=function(ie){return Z(C.invert(ie))},le.domain=function(ie){return arguments.length?(B=ie[0]>=0,C.domain((G=ie.map(Number)).map(W)),le):G},le.base=function(ie){return arguments.length?(z=+ie,C.domain(G.map(W)),le):z},le.nice=function(){var ie=Kd(G.map(W),B?Math:$O);return C.domain(ie),G=ie.map(Z),le},le.ticks=function(){var ie=sc(G),fe=[],xe=ie[0],_e=ie[1],Ie=Math.floor(W(xe)),Fe=Math.ceil(W(_e)),Je=z%1?2:z;if(isFinite(Fe-Ie)){if(B){for(;Ie0;rr--)fe.push(Z(Ie)*rr);for(Ie=0;fe[Ie]_e;Fe--);fe=fe.slice(Ie,Fe)}return fe},le.copy=function(){return Ib(C.copy(),z,B,G)},Db(le,C)}var $O={floor:function(C){return-Math.ceil(-C)},ceil:function(C){return-Math.floor(-C)}};e.scale.pow=function(){return Fb(e.scale.linear(),1,[0,1])};function Fb(C,z,B){var G=fc(z),W=fc(1/z);function Z(le){return C(G(le))}return Z.invert=function(le){return W(C.invert(le))},Z.domain=function(le){return arguments.length?(C.domain((B=le.map(Number)).map(G)),Z):B},Z.ticks=function(le){return $d(B,le)},Z.tickFormat=function(le,ie){return d3_scale_linearTickFormat(B,le,ie)},Z.nice=function(le){return Z.domain(Rb(B,le))},Z.exponent=function(le){return arguments.length?(G=fc(z=le),W=fc(1/z),C.domain(B.map(G)),Z):z},Z.copy=function(){return Fb(C.copy(),z,B)},Db(Z,C)}function fc(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 Nb([],{t:"range",a:[[]]})};function Nb(C,z){var B,G,W;function Z(ie){return G[((B.get(ie)||(z.t==="range"?B.set(ie,C.push(ie)):NaN))-1)%G.length]}function le(ie,fe){return e.range(C.length).map(function(xe){return ie+fe*xe})}return Z.domain=function(ie){if(!arguments.length)return C;C=[],B=new b;for(var fe=-1,xe=ie.length,_e;++fe0?B[Z-1]:C[0],ZFe?0:1;if(_e=se)return fe(_e,rr)+(xe?fe(xe,1-rr):"")+"Z";var Oe,Ge,We,je,tr=0,Ze=0,or,pr,mr,gr,_r,wr,Or,Tr,Ir=[];if((je=(+le.apply(this,arguments)||0)/2)&&(We=G===cc?Math.sqrt(xe*xe+_e*_e):+G.apply(this,arguments),rr||(Ze*=-1),_e&&(Ze=fr(We/_e*Math.sin(je))),xe&&(tr=fr(We/xe*Math.sin(je)))),_e){or=_e*Math.cos(Ie+Ze),pr=_e*Math.sin(Ie+Ze),mr=_e*Math.cos(Fe-Ze),gr=_e*Math.sin(Fe-Ze);var st=Math.abs(Fe-Ie-2*Ze)<=Ke?0:1;if(Ze&&hc(or,pr,mr,gr)===rr^st){var Bt=(Ie+Fe)/2;or=_e*Math.cos(Bt),pr=_e*Math.sin(Bt),mr=gr=null}}else or=pr=0;if(xe){_r=xe*Math.cos(Fe-tr),wr=xe*Math.sin(Fe-tr),Or=xe*Math.cos(Ie+tr),Tr=xe*Math.sin(Ie+tr);var vt=Math.abs(Ie-Fe+2*tr)<=Ke?0:1;if(tr&&hc(_r,wr,Or,Tr)===1-rr^vt){var hr=(Ie+Fe)/2;_r=xe*Math.cos(hr),wr=xe*Math.sin(hr),Or=Tr=null}}else _r=wr=0;if(Je>Re&&(Oe=Math.min(Math.abs(_e-xe)/2,+B.apply(this,arguments)))>.001){Ge=xe<_e^rr?0:1;var Br=Oe,Hr=Oe;if(Je0?0:1}function vc(C,z,B,G,W){var Z=C[0]-z[0],le=C[1]-z[1],ie=(W?G:-G)/Math.sqrt(Z*Z+le*le),fe=ie*le,xe=-ie*Z,_e=C[0]+fe,Ie=C[1]+xe,Fe=z[0]+fe,Je=z[1]+xe,rr=(_e+Fe)/2,Oe=(Ie+Je)/2,Ge=Fe-_e,We=Je-Ie,je=Ge*Ge+We*We,tr=B-G,Ze=_e*Je-Fe*Ie,or=(We<0?-1:1)*Math.sqrt(Math.max(0,tr*tr*je-Ze*Ze)),pr=(Ze*We-Ge*or)/je,mr=(-Ze*Ge-We*or)/je,gr=(Ze*We+Ge*or)/je,_r=(-Ze*Ge+We*or)/je,wr=pr-rr,Or=mr-Oe,Tr=gr-rr,Ir=_r-Oe;return wr*wr+Or*Or>Tr*Tr+Ir*Ir&&(pr=gr,mr=_r),[[pr-fe,mr-xe],[pr*B/tr,mr*B/tr]]}function Vb(){return!0}function Gb(C){var z=xs,B=Qu,G=Vb,W=Xa,Z=W.key,le=.7;function ie(fe){var xe=[],_e=[],Ie=-1,Fe=fe.length,Je,rr=Wr(z),Oe=Wr(B);function Ge(){xe.push("M",W(C(_e),le))}for(;++Ie1?C.join("L"):C+"Z"}function Yb(C){return C.join("L")+"Z"}function lB(C){for(var z=0,B=C.length,G=C[0],W=[G[0],",",G[1]];++z1&&W.push("H",G[0]),W.join("")}function ep(C){for(var z=0,B=C.length,G=C[0],W=[G[0],",",G[1]];++z1){ie=z[1],Z=C[fe],fe++,G+="C"+(W[0]+le[0])+","+(W[1]+le[1])+","+(Z[0]-ie[0])+","+(Z[1]-ie[1])+","+Z[0]+","+Z[1];for(var xe=2;xe9&&(Z=B*3/Math.sqrt(Z),le[ie]=Z*G,le[ie+1]=Z*W));for(ie=-1;++ie<=fe;)Z=(C[Math.min(fe,ie+1)][0]-C[Math.max(0,ie-1)][0])/(6*(1+le[ie]*le[ie])),z.push([Z||0,le[ie]*Z||0]);return z}function gB(C){return C.length<3?Xa(C):C[0]+dc(C,pB(C))}e.svg.line.radial=function(){var C=Gb(Jb);return C.radius=C.x,delete C.x,C.angle=C.y,delete C.y,C};function Jb(C){for(var z,B=-1,G=C.length,W,Z;++BKe)+",1 "+Ie}function xe(_e,Ie,Fe,Je){return"Q 0,0 "+Je}return Z.radius=function(_e){return arguments.length?(B=Wr(_e),Z):B},Z.source=function(_e){return arguments.length?(C=Wr(_e),Z):C},Z.target=function(_e){return arguments.length?(z=Wr(_e),Z):z},Z.startAngle=function(_e){return arguments.length?(G=Wr(_e),Z):G},Z.endAngle=function(_e){return arguments.length?(W=Wr(_e),Z):W},Z};function yB(C){return C.radius}e.svg.diagonal=function(){var C=Qb,z=$b,B=jb;function G(W,Z){var le=C.call(this,W,Z),ie=z.call(this,W,Z),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 G.source=function(W){return arguments.length?(C=Wr(W),G):C},G.target=function(W){return arguments.length?(z=Wr(W),G):z},G.projection=function(W){return arguments.length?(B=W,G):B},G};function jb(C){return[C.x,C.y]}e.svg.diagonal.radial=function(){var C=e.svg.diagonal(),z=jb,B=C.projection;return C.projection=function(G){return arguments.length?B(mB(z=G)):z},C};function mB(C){return function(){var z=C.apply(this,arguments),B=z[0],G=z[1]-J;return[B*Math.cos(G),B*Math.sin(G)]}}e.svg.symbol=function(){var C=xB,z=bB;function B(G,W){return(rx.get(C.call(this,G,W))||ex)(z.call(this,G,W))}return B.type=function(G){return arguments.length?(C=Wr(G),B):C},B.size=function(G){return arguments.length?(z=Wr(G),B):z},B};function bB(){return 64}function xB(){return"circle"}function ex(C){var z=Math.sqrt(C/Ke);return"M0,"+z+"A"+z+","+z+" 0 1,1 0,"+-z+"A"+z+","+z+" 0 1,1 0,"+z+"Z"}var rx=e.map({circle:ex,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*tx)),B=z*tx;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/pc),B=z*pc/2;return"M0,"+B+"L"+z+","+-B+" "+-z+","+-B+"Z"},"triangle-up":function(C){var z=Math.sqrt(C/pc),B=z*pc/2;return"M0,"+-B+"L"+z+","+B+" "+-z+","+B+"Z"}});e.svg.symbolTypes=rx.keys();var pc=Math.sqrt(3),tx=Math.tan(30*ae);re.transition=function(C){for(var z=yl||++ax,B=op(C),G=[],W,Z,le=yc||{time:Date.now(),ease:$q,delay:0,duration:250},ie=-1,fe=this.length;++ie0;)Ie[--je].call(C,We);if(Ge>=1)return le.event&&le.event.end.call(C,C.__data__,z),--Z.count?delete Z[G]:delete C[B],1}le||(ie=W.time,fe=rc(Fe,0,ie),le=Z[G]={tween:new b,time:ie,timer:fe,delay:W.delay,duration:W.duration,ease:W.ease,index:z},W=null,++Z.count)}e.svg.axis=function(){var C=e.scale.linear(),z=ix,B=6,G=6,W=3,Z=[10],le=null,ie;function fe(xe){xe.each(function(){var _e=e.select(this),Ie=this.__chart__||C,Fe=this.__chart__=C.copy(),Je=le==null?Fe.ticks?Fe.ticks.apply(Fe,Z):Fe.domain():le,rr=ie==null?Fe.tickFormat?Fe.tickFormat.apply(Fe,Z):N:ie,Oe=_e.selectAll(".tick").data(Je,Fe),Ge=Oe.enter().insert("g",".domain").attr("class","tick").style("opacity",Re),We=e.transition(Oe.exit()).style("opacity",Re).remove(),je=e.transition(Oe.order()).style("opacity",1),tr=Math.max(B,0)+W,Ze,or=uc(Fe),pr=_e.selectAll(".domain").data([0]),mr=(pr.enter().append("path").attr("class","domain"),e.transition(pr));Ge.append("line"),Ge.append("text");var gr=Ge.select("line"),_r=je.select("line"),wr=Oe.select("text").text(rr),Or=Ge.select("text"),Tr=je.select("text"),Ir=z==="top"||z==="left"?-1:1,st,Bt,vt,hr;if(z==="bottom"||z==="top"?(Ze=MB,st="x",vt="y",Bt="x2",hr="y2",wr.attr("dy",Ir<0?"0em":".71em").style("text-anchor","middle"),mr.attr("d","M"+or[0]+","+Ir*G+"V0H"+or[1]+"V"+Ir*G)):(Ze=TB,st="y",vt="x",Bt="y2",hr="x2",wr.attr("dy",".32em").style("text-anchor",Ir<0?"end":"start"),mr.attr("d","M"+Ir*G+","+or[0]+"H0V"+or[1]+"H"+Ir*G)),gr.attr(hr,Ir*B),Or.attr(vt,Ir*tr),_r.attr(Bt,0).attr(hr,Ir*B),Tr.attr(st,0).attr(vt,Ir*tr),Fe.rangeBand){var Br=Fe,Hr=Br.rangeBand()/2;Ie=Fe=function(ut){return Br(ut)+Hr}}else Ie.rangeBand?Ie=Fe:We.call(Ze,Fe,Ie);Ge.call(Ze,Ie,Fe),je.call(Ze,Fe,Fe)})}return fe.scale=function(xe){return arguments.length?(C=xe,fe):C},fe.orient=function(xe){return arguments.length?(z=xe in wB?xe+"":ix,fe):z},fe.ticks=function(){return arguments.length?(Z=t(arguments),fe):Z},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,G=+arguments[_e-1],fe):B},fe.innerTickSize=function(xe){return arguments.length?(B=+xe,fe):B},fe.outerTickSize=function(xe){return arguments.length?(G=+xe,fe):G},fe.tickPadding=function(xe){return arguments.length?(W=+xe,fe):W},fe.tickSubdivide=function(){return arguments.length&&fe},fe};var ix="bottom",wB={top:1,right:1,bottom:1,left:1};function MB(C,z,B){C.attr("transform",function(G){var W=z(G);return"translate("+(isFinite(W)?W:B(G))+",0)"})}function TB(C,z,B){C.attr("transform",function(G){var W=z(G);return"translate(0,"+(isFinite(W)?W:B(G))+")"})}e.svg.brush=function(){var C=j(_e,"brushstart","brush","brushend"),z=null,B=null,G=[0,0],W=[0,0],Z,le,ie=!0,fe=!0,xe=lp[0];function _e(Oe){Oe.each(function(){var Ge=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),We=Ge.selectAll(".background").data([0]);We.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ge.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var je=Ge.selectAll(".resize").data(xe,N);je.exit().remove(),je.enter().append("g").attr("class",function(pr){return"resize "+pr}).style("cursor",function(pr){return AB[pr]}).append("rect").attr("x",function(pr){return/[ew]$/.test(pr)?-3:null}).attr("y",function(pr){return/^[ns]/.test(pr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),je.style("display",_e.empty()?"none":null);var tr=e.transition(Ge),Ze=e.transition(We),or;z&&(or=uc(z),Ze.attr("x",or[0]).attr("width",or[1]-or[0]),Fe(tr)),B&&(or=uc(B),Ze.attr("y",or[0]).attr("height",or[1]-or[0]),Je(tr)),Ie(tr)})}_e.event=function(Oe){Oe.each(function(){var Ge=C.of(this,arguments),We={x:G,y:W,i:Z,j:le},je=this.__chart__||We;this.__chart__=We,yl?e.select(this).transition().each("start.brush",function(){Z=je.i,le=je.j,G=je.x,W=je.y,Ge({type:"brushstart"})}).tween("brush:brush",function(){var tr=lc(G,We.x),Ze=lc(W,We.y);return Z=le=null,function(or){G=We.x=tr(or),W=We.y=Ze(or),Ge({type:"brush",mode:"resize"})}}).each("end.brush",function(){Z=We.i,le=We.j,Ge({type:"brush",mode:"resize"}),Ge({type:"brushend"})}):(Ge({type:"brushstart"}),Ge({type:"brush",mode:"resize"}),Ge({type:"brushend"}))})};function Ie(Oe){Oe.selectAll(".resize").attr("transform",function(Ge){return"translate("+G[+/e$/.test(Ge)]+","+W[+/^s/.test(Ge)]+")"})}function Fe(Oe){Oe.select(".extent").attr("x",G[0]),Oe.selectAll(".extent,.n>rect,.s>rect").attr("width",G[1]-G[0])}function Je(Oe){Oe.select(".extent").attr("y",W[0]),Oe.selectAll(".extent,.e>rect,.w>rect").attr("height",W[1]-W[0])}function rr(){var Oe=this,Ge=e.select(e.event.target),We=C.of(Oe,arguments),je=e.select(Oe),tr=Ge.datum(),Ze=!/^(n|s)$/.test(tr)&&z,or=!/^(e|w)$/.test(tr)&&B,pr=Ge.classed("extent"),mr=Ve(Oe),gr,_r=e.mouse(Oe),wr,Or=e.select(o(Oe)).on("keydown.brush",st).on("keyup.brush",Bt);if(e.event.changedTouches?Or.on("touchmove.brush",vt).on("touchend.brush",Br):Or.on("mousemove.brush",vt).on("mouseup.brush",Br),je.interrupt().selectAll("*").interrupt(),pr)_r[0]=G[0]-_r[0],_r[1]=W[0]-_r[1];else if(tr){var Tr=+/w$/.test(tr),Ir=+/^n/.test(tr);wr=[G[1-Tr]-_r[0],W[1-Ir]-_r[1]],_r[0]=G[Tr],_r[1]=W[Ir]}else e.event.altKey&&(gr=_r.slice());je.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Ge.style("cursor")),We({type:"brushstart"}),vt();function st(){e.event.keyCode==32&&(pr||(gr=null,_r[0]-=G[1],_r[1]-=W[1],pr=2),X())}function Bt(){e.event.keyCode==32&&pr==2&&(_r[0]+=G[1],_r[1]+=W[1],pr=0,X())}function vt(){var Hr=e.mouse(Oe),ut=!1;wr&&(Hr[0]+=wr[0],Hr[1]+=wr[1]),pr||(e.event.altKey?(gr||(gr=[(G[0]+G[1])/2,(W[0]+W[1])/2]),_r[0]=G[+(Hr[0]{(function(e,r){typeof Tc=="object"&&typeof hx!="undefined"?r(Tc):(e=e||self,r(e.d3=e.d3||{}))})(Tc,function(e){"use strict";var r=new Date,t=new Date;function n(ge,we,Te,me){function ye(pe){return ge(pe=arguments.length===0?new Date:new Date(+pe)),pe}return ye.floor=function(pe){return ge(pe=new Date(+pe)),pe},ye.ceil=function(pe){return ge(pe=new Date(pe-1)),we(pe,1),ge(pe),pe},ye.round=function(pe){var ce=ye(pe),be=ye.ceil(pe);return pe-ce0))return Le;do Le.push(qe=new Date(+pe)),we(pe,be),ge(pe);while(qe=ce)for(;ge(ce),!pe(ce);)ce.setTime(ce-1)},function(ce,be){if(ce>=ce)if(be<0)for(;++be<=0;)for(;we(ce,-1),!pe(ce););else for(;--be>=0;)for(;we(ce,1),!pe(ce););})},Te&&(ye.count=function(pe,ce){return r.setTime(+pe),t.setTime(+ce),ge(r),ge(t),Math.floor(Te(r,t))},ye.every=function(pe){return pe=Math.floor(pe),!isFinite(pe)||!(pe>0)?null:pe>1?ye.filter(me?function(ce){return me(ce)%pe===0}:function(ce){return ye.count(0,ce)%pe===0}):ye}),ye}var a=n(function(){},function(ge,we){ge.setTime(+ge+we)},function(ge,we){return we-ge});a.every=function(ge){return ge=Math.floor(ge),!isFinite(ge)||!(ge>0)?null:ge>1?n(function(we){we.setTime(Math.floor(we/ge)*ge)},function(we,Te){we.setTime(+we+Te*ge)},function(we,Te){return(Te-we)/ge}):a};var o=a.range,i=1e3,l=6e4,u=36e5,s=864e5,f=6048e5,h=n(function(ge){ge.setTime(ge-ge.getMilliseconds())},function(ge,we){ge.setTime(+ge+we*i)},function(ge,we){return(we-ge)/i},function(ge){return ge.getUTCSeconds()}),p=h.range,_=n(function(ge){ge.setTime(ge-ge.getMilliseconds()-ge.getSeconds()*i)},function(ge,we){ge.setTime(+ge+we*l)},function(ge,we){return(we-ge)/l},function(ge){return ge.getMinutes()}),m=_.range,w=n(function(ge){ge.setTime(ge-ge.getMilliseconds()-ge.getSeconds()*i-ge.getMinutes()*l)},function(ge,we){ge.setTime(+ge+we*u)},function(ge,we){return(we-ge)/u},function(ge){return ge.getHours()}),T=w.range,y=n(function(ge){ge.setHours(0,0,0,0)},function(ge,we){ge.setDate(ge.getDate()+we)},function(ge,we){return(we-ge-(we.getTimezoneOffset()-ge.getTimezoneOffset())*l)/s},function(ge){return ge.getDate()-1}),k=y.range;function S(ge){return n(function(we){we.setDate(we.getDate()-(we.getDay()+7-ge)%7),we.setHours(0,0,0,0)},function(we,Te){we.setDate(we.getDate()+Te*7)},function(we,Te){return(Te-we-(Te.getTimezoneOffset()-we.getTimezoneOffset())*l)/f})}var b=S(0),M=S(1),d=S(2),x=S(3),g=S(4),c=S(5),A=S(6),v=b.range,D=M.range,E=d.range,R=x.range,N=g.range,F=c.range,I=A.range,L=n(function(ge){ge.setDate(1),ge.setHours(0,0,0,0)},function(ge,we){ge.setMonth(ge.getMonth()+we)},function(ge,we){return we.getMonth()-ge.getMonth()+(we.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,we){ge.setFullYear(ge.getFullYear()+we)},function(ge,we){return we.getFullYear()-ge.getFullYear()},function(ge){return ge.getFullYear()});O.every=function(ge){return!isFinite(ge=Math.floor(ge))||!(ge>0)?null:n(function(we){we.setFullYear(Math.floor(we.getFullYear()/ge)*ge),we.setMonth(0,1),we.setHours(0,0,0,0)},function(we,Te){we.setFullYear(we.getFullYear()+Te*ge)})};var U=O.range,X=n(function(ge){ge.setUTCSeconds(0,0)},function(ge,we){ge.setTime(+ge+we*l)},function(ge,we){return(we-ge)/l},function(ge){return ge.getUTCMinutes()}),$=X.range,j=n(function(ge){ge.setUTCMinutes(0,0,0)},function(ge,we){ge.setTime(+ge+we*u)},function(ge,we){return(we-ge)/u},function(ge){return ge.getUTCHours()}),Y=j.range,q=n(function(ge){ge.setUTCHours(0,0,0,0)},function(ge,we){ge.setUTCDate(ge.getUTCDate()+we)},function(ge,we){return(we-ge)/s},function(ge){return ge.getUTCDate()-1}),K=q.range;function ne(ge){return n(function(we){we.setUTCDate(we.getUTCDate()-(we.getUTCDay()+7-ge)%7),we.setUTCHours(0,0,0,0)},function(we,Te){we.setUTCDate(we.getUTCDate()+Te*7)},function(we,Te){return(Te-we)/f})}var Q=ne(0),oe=ne(1),re=ne(2),H=ne(3),ee=ne(4),V=ne(5),te=ne(6),ue=Q.range,ve=oe.range,ke=re.range,Se=H.range,he=ee.range,Ae=V.range,Ce=te.range,Pe=n(function(ge){ge.setUTCDate(1),ge.setUTCHours(0,0,0,0)},function(ge,we){ge.setUTCMonth(ge.getUTCMonth()+we)},function(ge,we){return we.getUTCMonth()-ge.getUTCMonth()+(we.getUTCFullYear()-ge.getUTCFullYear())*12},function(ge){return ge.getUTCMonth()}),Ee=Pe.range,Ne=n(function(ge){ge.setUTCMonth(0,1),ge.setUTCHours(0,0,0,0)},function(ge,we){ge.setUTCFullYear(ge.getUTCFullYear()+we)},function(ge,we){return we.getUTCFullYear()-ge.getUTCFullYear()},function(ge){return ge.getUTCFullYear()});Ne.every=function(ge){return!isFinite(ge=Math.floor(ge))||!(ge>0)?null:n(function(we){we.setUTCFullYear(Math.floor(we.getUTCFullYear()/ge)*ge),we.setUTCMonth(0,1),we.setUTCHours(0,0,0,0)},function(we,Te){we.setUTCFullYear(we.getUTCFullYear()+Te*ge)})};var Ue=Ne.range;e.timeDay=y,e.timeDays=k,e.timeFriday=c,e.timeFridays=F,e.timeHour=w,e.timeHours=T,e.timeInterval=n,e.timeMillisecond=a,e.timeMilliseconds=o,e.timeMinute=_,e.timeMinutes=m,e.timeMonday=M,e.timeMondays=D,e.timeMonth=L,e.timeMonths=P,e.timeSaturday=A,e.timeSaturdays=I,e.timeSecond=h,e.timeSeconds=p,e.timeSunday=b,e.timeSundays=v,e.timeThursday=g,e.timeThursdays=N,e.timeTuesday=d,e.timeTuesdays=E,e.timeWednesday=x,e.timeWednesdays=R,e.timeWeek=b,e.timeWeeks=v,e.timeYear=O,e.timeYears=U,e.utcDay=q,e.utcDays=K,e.utcFriday=V,e.utcFridays=Ae,e.utcHour=j,e.utcHours=Y,e.utcMillisecond=a,e.utcMilliseconds=o,e.utcMinute=X,e.utcMinutes=$,e.utcMonday=oe,e.utcMondays=ve,e.utcMonth=Pe,e.utcMonths=Ee,e.utcSaturday=te,e.utcSaturdays=Ce,e.utcSecond=h,e.utcSeconds=p,e.utcSunday=Q,e.utcSundays=ue,e.utcThursday=ee,e.utcThursdays=he,e.utcTuesday=re,e.utcTuesdays=ke,e.utcWednesday=H,e.utcWednesdays=Se,e.utcWeek=Q,e.utcWeeks=ue,e.utcYear=Ne,e.utcYears=Ue,Object.defineProperty(e,"__esModule",{value:!0})})});var Ss=de((Ac,vx)=>{(function(e,r){typeof Ac=="object"&&typeof vx!="undefined"?r(Ac,sp()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(Ac,function(e,r){"use strict";function t(Me){if(0<=Me.y&&Me.y<100){var Re=new Date(-1,Me.m,Me.d,Me.H,Me.M,Me.S,Me.L);return Re.setFullYear(Me.y),Re}return new Date(Me.y,Me.m,Me.d,Me.H,Me.M,Me.S,Me.L)}function n(Me){if(0<=Me.y&&Me.y<100){var Re=new Date(Date.UTC(-1,Me.m,Me.d,Me.H,Me.M,Me.S,Me.L));return Re.setUTCFullYear(Me.y),Re}return new Date(Date.UTC(Me.y,Me.m,Me.d,Me.H,Me.M,Me.S,Me.L))}function a(Me,Re,Qe){return{y:Me,m:Re,d:Qe,H:0,M:0,S:0,L:0}}function o(Me){var Re=Me.dateTime,Qe=Me.date,Ke=Me.time,ar=Me.periods,se=Me.days,J=Me.shortDays,ae=Me.months,De=Me.shortMonths,He=p(ar),er=_(ar),nr=p(se),fr=_(se),xr=p(J),Sr=_(J),Mr=p(ae),Ar=_(ae),ft=p(De),sr=_(De),Pr={a:ha,A:Qn,b:In,B:wa,c:null,d:L,e:L,f:$,H:P,I:O,j:U,L:X,m:j,M:Y,p:bi,q:Gi,Q:ce,s:be,S:q,u:K,U:ne,V:Q,w:oe,W:re,x:null,X:null,y:H,Y:ee,Z:V,"%":pe},$r={a:Yi,A:Wi,b:tn,B:bo,c:null,d:te,e:te,f:he,H:ue,I:ve,j:ke,L:Se,m:Ae,M:Ce,p:xi,q:_i,Q:ce,s:be,S:Pe,u:Ee,U:Ne,V:Ue,w:ge,W:we,x:null,X:null,y:Te,Y:me,Z:ye,"%":pe},Fr={a:hn,A:Et,b:Tn,B:Ot,c:xt,d:g,e:g,f:R,H:A,I:A,j:c,L:E,m:x,M:v,p:jr,q:d,Q:F,s:I,S:D,u:w,U:T,V:y,w:m,W:k,x:gt,X:Ft,y:b,Y:S,Z:M,"%":N};Pr.x=Gr(Qe,Pr),Pr.X=Gr(Ke,Pr),Pr.c=Gr(Re,Pr),$r.x=Gr(Qe,$r),$r.X=Gr(Ke,$r),$r.c=Gr(Re,$r);function Gr(kr,at){return function(ct){var yr=[],yn=-1,_t=0,mn=kr.length,Wr,Wa,vl;for(ct instanceof Date||(ct=new Date(+ct));++yn53)return null;"w"in yr||(yr.w=1),"Z"in yr?(_t=n(a(yr.y,0,1)),mn=_t.getUTCDay(),_t=mn>4||mn===0?r.utcMonday.ceil(_t):r.utcMonday(_t),_t=r.utcDay.offset(_t,(yr.V-1)*7),yr.y=_t.getUTCFullYear(),yr.m=_t.getUTCMonth(),yr.d=_t.getUTCDate()+(yr.w+6)%7):(_t=t(a(yr.y,0,1)),mn=_t.getDay(),_t=mn>4||mn===0?r.timeMonday.ceil(_t):r.timeMonday(_t),_t=r.timeDay.offset(_t,(yr.V-1)*7),yr.y=_t.getFullYear(),yr.m=_t.getMonth(),yr.d=_t.getDate()+(yr.w+6)%7)}else("W"in yr||"U"in yr)&&("w"in yr||(yr.w="u"in yr?yr.u%7:"W"in yr?1:0),mn="Z"in yr?n(a(yr.y,0,1)).getUTCDay():t(a(yr.y,0,1)).getDay(),yr.m=0,yr.d="W"in yr?(yr.w+6)%7+yr.W*7-(mn+5)%7:yr.w+yr.U*7-(mn+6)%7);return"Z"in yr?(yr.H+=yr.Z/100|0,yr.M+=yr.Z%100,n(yr)):t(yr)}}function Rr(kr,at,ct,yr){for(var yn=0,_t=at.length,mn=ct.length,Wr,Wa;yn<_t;){if(yr>=mn)return-1;if(Wr=at.charCodeAt(yn++),Wr===37){if(Wr=at.charAt(yn++),Wa=Fr[Wr in i?at.charAt(yn++):Wr],!Wa||(yr=Wa(kr,ct,yr))<0)return-1}else if(Wr!=ct.charCodeAt(yr++))return-1}return yr}function jr(kr,at,ct){var yr=He.exec(at.slice(ct));return yr?(kr.p=er[yr[0].toLowerCase()],ct+yr[0].length):-1}function hn(kr,at,ct){var yr=xr.exec(at.slice(ct));return yr?(kr.w=Sr[yr[0].toLowerCase()],ct+yr[0].length):-1}function Et(kr,at,ct){var yr=nr.exec(at.slice(ct));return yr?(kr.w=fr[yr[0].toLowerCase()],ct+yr[0].length):-1}function Tn(kr,at,ct){var yr=ft.exec(at.slice(ct));return yr?(kr.m=sr[yr[0].toLowerCase()],ct+yr[0].length):-1}function Ot(kr,at,ct){var yr=Mr.exec(at.slice(ct));return yr?(kr.m=Ar[yr[0].toLowerCase()],ct+yr[0].length):-1}function xt(kr,at,ct){return Rr(kr,Re,at,ct)}function gt(kr,at,ct){return Rr(kr,Qe,at,ct)}function Ft(kr,at,ct){return Rr(kr,Ke,at,ct)}function ha(kr){return J[kr.getDay()]}function Qn(kr){return se[kr.getDay()]}function In(kr){return De[kr.getMonth()]}function wa(kr){return ae[kr.getMonth()]}function bi(kr){return ar[+(kr.getHours()>=12)]}function Gi(kr){return 1+~~(kr.getMonth()/3)}function Yi(kr){return J[kr.getUTCDay()]}function Wi(kr){return se[kr.getUTCDay()]}function tn(kr){return De[kr.getUTCMonth()]}function bo(kr){return ae[kr.getUTCMonth()]}function xi(kr){return ar[+(kr.getUTCHours()>=12)]}function _i(kr){return 1+~~(kr.getUTCMonth()/3)}return{format:function(kr){var at=Gr(kr+="",Pr);return at.toString=function(){return kr},at},parse:function(kr){var at=pt(kr+="",!1);return at.toString=function(){return kr},at},utcFormat:function(kr){var at=Gr(kr+="",$r);return at.toString=function(){return kr},at},utcParse:function(kr){var at=pt(kr+="",!0);return at.toString=function(){return kr},at}}}var i={"-":"",_:" ",0:"0"},l=/^\s*\d+/,u=/^%/,s=/[\\^$*+?|[\]().{}]/g;function f(Me,Re,Qe){var Ke=Me<0?"-":"",ar=(Ke?-Me:Me)+"",se=ar.length;return Ke+(se68?1900:2e3),Qe+Ke[0].length):-1}function M(Me,Re,Qe){var Ke=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Re.slice(Qe,Qe+6));return Ke?(Me.Z=Ke[1]?0:-(Ke[2]+(Ke[3]||"00")),Qe+Ke[0].length):-1}function d(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+1));return Ke?(Me.q=Ke[0]*3-3,Qe+Ke[0].length):-1}function x(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+2));return Ke?(Me.m=Ke[0]-1,Qe+Ke[0].length):-1}function g(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+2));return Ke?(Me.d=+Ke[0],Qe+Ke[0].length):-1}function c(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+3));return Ke?(Me.m=0,Me.d=+Ke[0],Qe+Ke[0].length):-1}function A(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+2));return Ke?(Me.H=+Ke[0],Qe+Ke[0].length):-1}function v(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+2));return Ke?(Me.M=+Ke[0],Qe+Ke[0].length):-1}function D(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+2));return Ke?(Me.S=+Ke[0],Qe+Ke[0].length):-1}function E(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+3));return Ke?(Me.L=+Ke[0],Qe+Ke[0].length):-1}function R(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+6));return Ke?(Me.L=Math.floor(Ke[0]/1e3),Qe+Ke[0].length):-1}function N(Me,Re,Qe){var Ke=u.exec(Re.slice(Qe,Qe+1));return Ke?Qe+Ke[0].length:-1}function F(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe));return Ke?(Me.Q=+Ke[0],Qe+Ke[0].length):-1}function I(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe));return Ke?(Me.s=+Ke[0],Qe+Ke[0].length):-1}function L(Me,Re){return f(Me.getDate(),Re,2)}function P(Me,Re){return f(Me.getHours(),Re,2)}function O(Me,Re){return f(Me.getHours()%12||12,Re,2)}function U(Me,Re){return f(1+r.timeDay.count(r.timeYear(Me),Me),Re,3)}function X(Me,Re){return f(Me.getMilliseconds(),Re,3)}function $(Me,Re){return X(Me,Re)+"000"}function j(Me,Re){return f(Me.getMonth()+1,Re,2)}function Y(Me,Re){return f(Me.getMinutes(),Re,2)}function q(Me,Re){return f(Me.getSeconds(),Re,2)}function K(Me){var Re=Me.getDay();return Re===0?7:Re}function ne(Me,Re){return f(r.timeSunday.count(r.timeYear(Me)-1,Me),Re,2)}function Q(Me,Re){var Qe=Me.getDay();return Me=Qe>=4||Qe===0?r.timeThursday(Me):r.timeThursday.ceil(Me),f(r.timeThursday.count(r.timeYear(Me),Me)+(r.timeYear(Me).getDay()===4),Re,2)}function oe(Me){return Me.getDay()}function re(Me,Re){return f(r.timeMonday.count(r.timeYear(Me)-1,Me),Re,2)}function H(Me,Re){return f(Me.getFullYear()%100,Re,2)}function ee(Me,Re){return f(Me.getFullYear()%1e4,Re,4)}function V(Me){var Re=Me.getTimezoneOffset();return(Re>0?"-":(Re*=-1,"+"))+f(Re/60|0,"0",2)+f(Re%60,"0",2)}function te(Me,Re){return f(Me.getUTCDate(),Re,2)}function ue(Me,Re){return f(Me.getUTCHours(),Re,2)}function ve(Me,Re){return f(Me.getUTCHours()%12||12,Re,2)}function ke(Me,Re){return f(1+r.utcDay.count(r.utcYear(Me),Me),Re,3)}function Se(Me,Re){return f(Me.getUTCMilliseconds(),Re,3)}function he(Me,Re){return Se(Me,Re)+"000"}function Ae(Me,Re){return f(Me.getUTCMonth()+1,Re,2)}function Ce(Me,Re){return f(Me.getUTCMinutes(),Re,2)}function Pe(Me,Re){return f(Me.getUTCSeconds(),Re,2)}function Ee(Me){var Re=Me.getUTCDay();return Re===0?7:Re}function Ne(Me,Re){return f(r.utcSunday.count(r.utcYear(Me)-1,Me),Re,2)}function Ue(Me,Re){var Qe=Me.getUTCDay();return Me=Qe>=4||Qe===0?r.utcThursday(Me):r.utcThursday.ceil(Me),f(r.utcThursday.count(r.utcYear(Me),Me)+(r.utcYear(Me).getUTCDay()===4),Re,2)}function ge(Me){return Me.getUTCDay()}function we(Me,Re){return f(r.utcMonday.count(r.utcYear(Me)-1,Me),Re,2)}function Te(Me,Re){return f(Me.getUTCFullYear()%100,Re,2)}function me(Me,Re){return f(Me.getUTCFullYear()%1e4,Re,4)}function ye(){return"+0000"}function pe(){return"%"}function ce(Me){return+Me}function be(Me){return Math.floor(+Me/1e3)}var Le;qe({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 qe(Me){return Le=o(Me),e.timeFormat=Le.format,e.timeParse=Le.parse,e.utcFormat=Le.utcFormat,e.utcParse=Le.utcParse,Le}var ze="%Y-%m-%dT%H:%M:%S.%LZ";function $e(Me){return Me.toISOString()}var Ve=Date.prototype.toISOString?$e:e.utcFormat(ze);function Be(Me){var Re=new Date(Me);return isNaN(Re)?null:Re}var Ye=+new Date("2000-01-01T00:00:00.000Z")?Be:e.utcParse(ze);e.isoFormat=Ve,e.isoParse=Ye,e.timeFormatDefaultLocale=qe,e.timeFormatLocale=o,Object.defineProperty(e,"__esModule",{value:!0})})});var up=de((kc,dx)=>{(function(e,r){typeof kc=="object"&&typeof dx!="undefined"?r(kc):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(kc,function(e){"use strict";function r(x){return Math.abs(x=Math.round(x))>=1e21?x.toLocaleString("en").replace(/,/g,""):x.toString(10)}function t(x,g){if((c=(x=g?x.toExponential(g-1):x.toExponential()).indexOf("e"))<0)return null;var c,A=x.slice(0,c);return[A.length>1?A[0]+A.slice(2):A,+x.slice(c+1)]}function n(x){return x=t(Math.abs(x)),x?x[1]:NaN}function a(x,g){return function(c,A){for(var v=c.length,D=[],E=0,R=x[0],N=0;v>0&&R>0&&(N+R+1>A&&(R=Math.max(1,A-N)),D.push(c.substring(v-=R,v+R)),!((N+=R+1)>A));)R=x[E=(E+1)%x.length];return D.reverse().join(g)}}function o(x){return function(g){return g.replace(/[0-9]/g,function(c){return x[+c]})}}var i=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function l(x){if(!(g=i.exec(x)))throw new Error("invalid format: "+x);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(x){this.fill=x.fill===void 0?" ":x.fill+"",this.align=x.align===void 0?">":x.align+"",this.sign=x.sign===void 0?"-":x.sign+"",this.symbol=x.symbol===void 0?"":x.symbol+"",this.zero=!!x.zero,this.width=x.width===void 0?void 0:+x.width,this.comma=!!x.comma,this.precision=x.precision===void 0?void 0:+x.precision,this.trim=!!x.trim,this.type=x.type===void 0?"":x.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(x){e:for(var g=x.length,c=1,A=-1,v;c0&&(A=0);break}return A>0?x.slice(0,A)+x.slice(v+1):x}var f;function h(x,g){var c=t(x,g);if(!c)return x+"";var A=c[0],v=c[1],D=v-(f=Math.max(-8,Math.min(8,Math.floor(v/3)))*3)+1,E=A.length;return D===E?A:D>E?A+new Array(D-E+1).join("0"):D>0?A.slice(0,D)+"."+A.slice(D):"0."+new Array(1-D).join("0")+t(x,Math.max(0,g+D-1))[0]}function p(x,g){var c=t(x,g);if(!c)return x+"";var A=c[0],v=c[1];return v<0?"0."+new Array(-v).join("0")+A:A.length>v+1?A.slice(0,v+1)+"."+A.slice(v+1):A+new Array(v-A.length+2).join("0")}var _={"%":function(x,g){return(x*100).toFixed(g)},b:function(x){return Math.round(x).toString(2)},c:function(x){return x+""},d:r,e:function(x,g){return x.toExponential(g)},f:function(x,g){return x.toFixed(g)},g:function(x,g){return x.toPrecision(g)},o:function(x){return Math.round(x).toString(8)},p:function(x,g){return p(x*100,g)},r:p,s:h,X:function(x){return Math.round(x).toString(16).toUpperCase()},x:function(x){return Math.round(x).toString(16)}};function m(x){return x}var w=Array.prototype.map,T=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function y(x){var g=x.grouping===void 0||x.thousands===void 0?m:a(w.call(x.grouping,Number),x.thousands+""),c=x.currency===void 0?"":x.currency[0]+"",A=x.currency===void 0?"":x.currency[1]+"",v=x.decimal===void 0?".":x.decimal+"",D=x.numerals===void 0?m:o(w.call(x.numerals,String)),E=x.percent===void 0?"%":x.percent+"",R=x.minus===void 0?"-":x.minus+"",N=x.nan===void 0?"NaN":x.nan+"";function F(L){L=l(L);var P=L.fill,O=L.align,U=L.sign,X=L.symbol,$=L.zero,j=L.width,Y=L.comma,q=L.precision,K=L.trim,ne=L.type;ne==="n"?(Y=!0,ne="g"):_[ne]||(q===void 0&&(q=12),K=!0,ne="g"),($||P==="0"&&O==="=")&&($=!0,P="0",O="=");var Q=X==="$"?c:X==="#"&&/[boxX]/.test(ne)?"0"+ne.toLowerCase():"",oe=X==="$"?A:/[%p]/.test(ne)?E:"",re=_[ne],H=/[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 ee(V){var te=Q,ue=oe,ve,ke,Se;if(ne==="c")ue=re(V)+ue,V="";else{V=+V;var he=V<0||1/V<0;if(V=isNaN(V)?N:re(Math.abs(V),q),K&&(V=s(V)),he&&+V==0&&U!=="+"&&(he=!1),te=(he?U==="("?U:R:U==="-"||U==="("?"":U)+te,ue=(ne==="s"?T[8+f/3]:"")+ue+(he&&U==="("?")":""),H){for(ve=-1,ke=V.length;++veSe||Se>57){ue=(Se===46?v+V.slice(ve+1):V.slice(ve))+ue,V=V.slice(0,ve);break}}}Y&&!$&&(V=g(V,1/0));var Ae=te.length+V.length+ue.length,Ce=Ae>1)+te+V+ue+Ce.slice(Ae);break;default:V=Ce+te+V+ue;break}return D(V)}return ee.toString=function(){return L+""},ee}function I(L,P){var O=F((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),$=T[8+U/3];return function(j){return O(X*j)+$}}return{format:F,formatPrefix:I}}var k;S({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function S(x){return k=y(x),e.format=k.format,e.formatPrefix=k.formatPrefix,k}function b(x){return Math.max(0,-n(Math.abs(x)))}function M(x,g){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(n(g)/3)))*3-n(Math.abs(x)))}function d(x,g){return x=Math.abs(x),g=Math.abs(g)-x,Math.max(0,n(g)-n(x))+1}e.FormatSpecifier=u,e.formatDefaultLocale=S,e.formatLocale=y,e.formatSpecifier=l,e.precisionFixed=b,e.precisionPrefix=M,e.precisionRound=d,Object.defineProperty(e,"__esModule",{value:!0})})});var gx=de((jue,px)=>{"use strict";px.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 nt=de((efe,yx)=>{"use strict";var IB=gx();yx.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&IB(t))return!1}else if(r!=="number")return!1;return e-e<1}});var nn=de((rfe,mx)=>{"use strict";mx.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 fp=de((Sc,bx)=>{(function(e,r){typeof Sc=="object"&&typeof bx!="undefined"?r(Sc):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(Sc,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,h,p,_,m;i[i.length-1]==="="&&(l--,i[i.length-2]==="="&&l--);var w=new ArrayBuffer(l),T=new Uint8Array(w);for(s=0;s>4,T[f++]=(p&15)<<4|_>>2,T[f++]=(_&3)<<6|m&63;return w};e.decode=o,e.encode=a,Object.defineProperty(e,"__esModule",{value:!0})})});var wo=de((tfe,xx)=>{"use strict";xx.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=de(Ja=>{"use strict";var FB=fp().decode,NB=wo(),cp=Array.isArray,zB=ArrayBuffer,qB=DataView;function _x(e){return zB.isView(e)&&!(e instanceof qB)}Ja.isTypedArray=_x;function Cc(e){return cp(e)||_x(e)}Ja.isArrayOrTypedArray=Cc;function OB(e){return!Cc(e[0])}Ja.isArray1D=OB;Ja.ensureArray=function(e,r){return cp(e)||(e=[]),e.length=r,e};var vn={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};vn.uint8c=vn.u1c;vn.uint8=vn.u1;vn.int8=vn.i1;vn.uint16=vn.u2;vn.int16=vn.i2;vn.uint32=vn.u4;vn.int32=vn.i4;vn.float32=vn.f4;vn.float64=vn.f8;function hp(e){return e.constructor===ArrayBuffer}Ja.isArrayBuffer=hp;Ja.decodeTypedArraySpec=function(e){var r=[],t=BB(e),n=t.dtype,a=vn[n];if(!a)throw new Error('Error in dtype: "'+n+'"');var o=a.BYTES_PER_ELEMENT,i=t.bdata;hp(i)||(i=FB(i));var l=t.shape===void 0?[i.byteLength/o]:(""+t.shape).split(",");l.reverse();var u=l.length,s,f,h=+l[0],p=o*h,_=0;if(u===1)r=new a(i);else if(u===2)for(s=+l[1],f=0;f{"use strict";var Mx=nt(),dp=ea().isArrayOrTypedArray;Sx.exports=function(r,t){if(Mx(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 Cs=Ec(),YB=/^\w*$/,WB=0,Cx=1,Lc=2,Ex=3,_l=4;Lx.exports=function(r,t,n,a){n=n||"name",a=a||"value";var o,i,l,u={};t&&t.length?(l=Cs(r,t),i=l.get()):i=r,t=t||"";var s={};if(i)for(o=0;o2)return u[_]=u[_]|Lc,h.set(p,null);if(f){for(o=_;o{"use strict";var XB=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,ZB=/^[^\.\[\]]+$/;Rx.exports=function(e,r){for(;r;){var t=e.match(XB);if(t)e=t[1];else if(e.match(ZB))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 Dc=de((lfe,Ix)=>{"use strict";var JB=nt();Ix.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 JB(n)||(n=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),n}});var zx=de((sfe,Nx)=>{"use strict";var Fx=ea().isArrayOrTypedArray,lf=wo();Nx.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(Fx(a)&&Fx(o)&&lf(a[0])){if(n==="customdata"||n==="ids")continue;for(var i=Math.min(a.length,o.length),l=0;l{"use strict";function KB(e,r){var t=e%r;return t<0?t+r:t}function QB(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}qx.exports={mod:KB,modHalf:QB}});var ka=de((ffe,Rc)=>{(function(e){var r=/^\s+/,t=/\s+$/,n=0,a=e.round,o=e.min,i=e.max,l=e.random;function u(H,ee){if(H=H||"",ee=ee||{},H instanceof u)return H;if(!(this instanceof u))return new u(H,ee);var V=s(H);this._originalInput=H,this._r=V.r,this._g=V.g,this._b=V.b,this._a=V.a,this._roundA=a(100*this._a)/100,this._format=ee.format||V.format,this._gradientType=ee.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=V.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 H=this.toRgb();return(H.r*299+H.g*587+H.b*114)/1e3},getLuminance:function(){var H=this.toRgb(),ee,V,te,ue,ve,ke;return ee=H.r/255,V=H.g/255,te=H.b/255,ee<=.03928?ue=ee/12.92:ue=e.pow((ee+.055)/1.055,2.4),V<=.03928?ve=V/12.92:ve=e.pow((V+.055)/1.055,2.4),te<=.03928?ke=te/12.92:ke=e.pow((te+.055)/1.055,2.4),.2126*ue+.7152*ve+.0722*ke},setAlpha:function(H){return this._a=L(H),this._roundA=a(100*this._a)/100,this},toHsv:function(){var H=_(this._r,this._g,this._b);return{h:H.h*360,s:H.s,v:H.v,a:this._a}},toHsvString:function(){var H=_(this._r,this._g,this._b),ee=a(H.h*360),V=a(H.s*100),te=a(H.v*100);return this._a==1?"hsv("+ee+", "+V+"%, "+te+"%)":"hsva("+ee+", "+V+"%, "+te+"%, "+this._roundA+")"},toHsl:function(){var H=h(this._r,this._g,this._b);return{h:H.h*360,s:H.s,l:H.l,a:this._a}},toHslString:function(){var H=h(this._r,this._g,this._b),ee=a(H.h*360),V=a(H.s*100),te=a(H.l*100);return this._a==1?"hsl("+ee+", "+V+"%, "+te+"%)":"hsla("+ee+", "+V+"%, "+te+"%, "+this._roundA+")"},toHex:function(H){return w(this._r,this._g,this._b,H)},toHexString:function(H){return"#"+this.toHex(H)},toHex8:function(H){return T(this._r,this._g,this._b,this._a,H)},toHex8String:function(H){return"#"+this.toHex8(H)},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:F[w(this._r,this._g,this._b,!0)]||!1},toFilter:function(H){var ee="#"+y(this._r,this._g,this._b,this._a),V=ee,te=this._gradientType?"GradientType = 1, ":"";if(H){var ue=u(H);V="#"+y(ue._r,ue._g,ue._b,ue._a)}return"progid:DXImageTransform.Microsoft.gradient("+te+"startColorstr="+ee+",endColorstr="+V+")"},toString:function(H){var ee=!!H;H=H||this._format;var V=!1,te=this._a<1&&this._a>=0,ue=!ee&&te&&(H==="hex"||H==="hex6"||H==="hex3"||H==="hex4"||H==="hex8"||H==="name");return ue?H==="name"&&this._a===0?this.toName():this.toRgbString():(H==="rgb"&&(V=this.toRgbString()),H==="prgb"&&(V=this.toPercentageRgbString()),(H==="hex"||H==="hex6")&&(V=this.toHexString()),H==="hex3"&&(V=this.toHexString(!0)),H==="hex4"&&(V=this.toHex8String(!0)),H==="hex8"&&(V=this.toHex8String()),H==="name"&&(V=this.toName()),H==="hsl"&&(V=this.toHslString()),H==="hsv"&&(V=this.toHsvString()),V||this.toHexString())},clone:function(){return u(this.toString())},_applyModification:function(H,ee){var V=H.apply(null,[this].concat([].slice.call(ee)));return this._r=V._r,this._g=V._g,this._b=V._b,this.setAlpha(V._a),this},lighten:function(){return this._applyModification(M,arguments)},brighten:function(){return this._applyModification(d,arguments)},darken:function(){return this._applyModification(x,arguments)},desaturate:function(){return this._applyModification(k,arguments)},saturate:function(){return this._applyModification(S,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(g,arguments)},_applyCombination:function(H,ee){return H.apply(null,[this].concat([].slice.call(ee)))},analogous:function(){return this._applyCombination(E,arguments)},complement:function(){return this._applyCombination(c,arguments)},monochromatic:function(){return this._applyCombination(R,arguments)},splitcomplement:function(){return this._applyCombination(D,arguments)},triad:function(){return this._applyCombination(A,arguments)},tetrad:function(){return this._applyCombination(v,arguments)}},u.fromRatio=function(H,ee){if(typeof H=="object"){var V={};for(var te in H)H.hasOwnProperty(te)&&(te==="a"?V[te]=H[te]:V[te]=Y(H[te]));H=V}return u(H,ee)};function s(H){var ee={r:0,g:0,b:0},V=1,te=null,ue=null,ve=null,ke=!1,Se=!1;return typeof H=="string"&&(H=oe(H)),typeof H=="object"&&(Q(H.r)&&Q(H.g)&&Q(H.b)?(ee=f(H.r,H.g,H.b),ke=!0,Se=String(H.r).substr(-1)==="%"?"prgb":"rgb"):Q(H.h)&&Q(H.s)&&Q(H.v)?(te=Y(H.s),ue=Y(H.v),ee=m(H.h,te,ue),ke=!0,Se="hsv"):Q(H.h)&&Q(H.s)&&Q(H.l)&&(te=Y(H.s),ve=Y(H.l),ee=p(H.h,te,ve),ke=!0,Se="hsl"),H.hasOwnProperty("a")&&(V=H.a)),V=L(V),{ok:ke,format:H.format||Se,r:o(255,i(ee.r,0)),g:o(255,i(ee.g,0)),b:o(255,i(ee.b,0)),a:V}}function f(H,ee,V){return{r:P(H,255)*255,g:P(ee,255)*255,b:P(V,255)*255}}function h(H,ee,V){H=P(H,255),ee=P(ee,255),V=P(V,255);var te=i(H,ee,V),ue=o(H,ee,V),ve,ke,Se=(te+ue)/2;if(te==ue)ve=ke=0;else{var he=te-ue;switch(ke=Se>.5?he/(2-te-ue):he/(te+ue),te){case H:ve=(ee-V)/he+(ee1&&(Pe-=1),Pe<1/6?Ae+(Ce-Ae)*6*Pe:Pe<1/2?Ce:Pe<2/3?Ae+(Ce-Ae)*(2/3-Pe)*6:Ae}if(ee===0)te=ue=ve=V;else{var Se=V<.5?V*(1+ee):V+ee-V*ee,he=2*V-Se;te=ke(he,Se,H+1/3),ue=ke(he,Se,H),ve=ke(he,Se,H-1/3)}return{r:te*255,g:ue*255,b:ve*255}}function _(H,ee,V){H=P(H,255),ee=P(ee,255),V=P(V,255);var te=i(H,ee,V),ue=o(H,ee,V),ve,ke,Se=te,he=te-ue;if(ke=te===0?0:he/te,te==ue)ve=0;else{switch(te){case H:ve=(ee-V)/he+(ee>1)+720)%360;--ee;)te.h=(te.h+ue)%360,ve.push(u(te));return ve}function R(H,ee){ee=ee||6;for(var V=u(H).toHsv(),te=V.h,ue=V.s,ve=V.v,ke=[],Se=1/ee;ee--;)ke.push(u({h:te,s:ue,v:ve})),ve=(ve+Se)%1;return ke}u.mix=function(H,ee,V){V=V===0?0:V||50;var te=u(H).toRgb(),ue=u(ee).toRgb(),ve=V/100,ke={r:(ue.r-te.r)*ve+te.r,g:(ue.g-te.g)*ve+te.g,b:(ue.b-te.b)*ve+te.b,a:(ue.a-te.a)*ve+te.a};return u(ke)},u.readability=function(H,ee){var V=u(H),te=u(ee);return(e.max(V.getLuminance(),te.getLuminance())+.05)/(e.min(V.getLuminance(),te.getLuminance())+.05)},u.isReadable=function(H,ee,V){var te=u.readability(H,ee),ue,ve;switch(ve=!1,ue=re(V),ue.level+ue.size){case"AAsmall":case"AAAlarge":ve=te>=4.5;break;case"AAlarge":ve=te>=3;break;case"AAAsmall":ve=te>=7;break}return ve},u.mostReadable=function(H,ee,V){var te=null,ue=0,ve,ke,Se,he;V=V||{},ke=V.includeFallbackColors,Se=V.level,he=V.size;for(var Ae=0;Aeue&&(ue=ve,te=u(ee[Ae]));return u.isReadable(H,te,{level:Se,size:he})||!ke?te:(V.includeFallbackColors=!1,u.mostReadable(H,["#fff","#000"],V))};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"},F=u.hexNames=I(N);function I(H){var ee={};for(var V in H)H.hasOwnProperty(V)&&(ee[H[V]]=V);return ee}function L(H){return H=parseFloat(H),(isNaN(H)||H<0||H>1)&&(H=1),H}function P(H,ee){X(H)&&(H="100%");var V=$(H);return H=o(ee,i(0,parseFloat(H))),V&&(H=parseInt(H*ee,10)/100),e.abs(H-ee)<1e-6?1:H%ee/parseFloat(ee)}function O(H){return o(1,i(0,H))}function U(H){return parseInt(H,16)}function X(H){return typeof H=="string"&&H.indexOf(".")!=-1&&parseFloat(H)===1}function $(H){return typeof H=="string"&&H.indexOf("%")!=-1}function j(H){return H.length==1?"0"+H:""+H}function Y(H){return H<=1&&(H=H*100+"%"),H}function q(H){return e.round(parseFloat(H)*255).toString(16)}function K(H){return U(H)/255}var ne=function(){var H="[-\\+]?\\d+%?",ee="[-\\+]?\\d*\\.\\d+%?",V="(?:"+ee+")|(?:"+H+")",te="[\\s|\\(]+("+V+")[,|\\s]+("+V+")[,|\\s]+("+V+")\\s*\\)?",ue="[\\s|\\(]+("+V+")[,|\\s]+("+V+")[,|\\s]+("+V+")[,|\\s]+("+V+")\\s*\\)?";return{CSS_UNIT:new RegExp(V),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(H){return!!ne.CSS_UNIT.exec(H)}function oe(H){H=H.replace(r,"").replace(t,"").toLowerCase();var ee=!1;if(N[H])H=N[H],ee=!0;else if(H=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var V;return(V=ne.rgb.exec(H))?{r:V[1],g:V[2],b:V[3]}:(V=ne.rgba.exec(H))?{r:V[1],g:V[2],b:V[3],a:V[4]}:(V=ne.hsl.exec(H))?{h:V[1],s:V[2],l:V[3]}:(V=ne.hsla.exec(H))?{h:V[1],s:V[2],l:V[3],a:V[4]}:(V=ne.hsv.exec(H))?{h:V[1],s:V[2],v:V[3]}:(V=ne.hsva.exec(H))?{h:V[1],s:V[2],v:V[3],a:V[4]}:(V=ne.hex8.exec(H))?{r:U(V[1]),g:U(V[2]),b:U(V[3]),a:K(V[4]),format:ee?"name":"hex8"}:(V=ne.hex6.exec(H))?{r:U(V[1]),g:U(V[2]),b:U(V[3]),format:ee?"name":"hex"}:(V=ne.hex4.exec(H))?{r:U(V[1]+""+V[1]),g:U(V[2]+""+V[2]),b:U(V[3]+""+V[3]),a:K(V[4]+""+V[4]),format:ee?"name":"hex8"}:(V=ne.hex3.exec(H))?{r:U(V[1]+""+V[1]),g:U(V[2]+""+V[2]),b:U(V[3]+""+V[3]),format:ee?"name":"hex"}:!1}function re(H){var ee,V;return H=H||{level:"AA",size:"small"},ee=(H.level||"AA").toUpperCase(),V=(H.size||"small").toLowerCase(),ee!=="AA"&&ee!=="AAA"&&(ee="AA"),V!=="small"&&V!=="large"&&(V="small"),{level:ee,size:V}}typeof Rc!="undefined"&&Rc.exports?Rc.exports=u:window.tinycolor=u})(Math)});var Tt=de(ff=>{"use strict";var Ox=wo(),sf=Array.isArray;function $B(e,r){var t,n;for(t=0;t{"use strict";Bx.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 cf=de((vfe,Ux)=>{"use strict";Ux.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var wl=de((dfe,Gx)=>{"use strict";var Hx=cf(),Vx=kn(),pp=Vx({editType:"none"});pp.family.dflt=Hx.HOVERFONT;pp.size.dflt=Hx.HOVERFONTSIZE;Gx.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:pp,grouptitlefont:Vx({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var Pc=de((pfe,Yx)=>{"use strict";var jB=kn(),hf=wl().hoverlabel,vf=Tt().extendFlat;Yx.exports={hoverlabel:{bgcolor:vf({},hf.bgcolor,{arrayOk:!0}),bordercolor:vf({},hf.bordercolor,{arrayOk:!0}),font:jB({arrayOk:!0,editType:"none"}),align:vf({},hf.align,{arrayOk:!0}),namelength:vf({},hf.namelength,{arrayOk:!0}),showarrow:vf({},hf.showarrow),editType:"none"}}});var Sn=de((gfe,Wx)=>{"use strict";var eU=kn(),rU=Pc();Wx.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:eU({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:rU.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 Ml=de((yfe,Jx)=>{"use strict";var tU=ka(),Ic={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)"]]},Xx=Ic.RdBu;function nU(e,r){if(r||(r=Xx),!e)return r;function t(){try{e=Ic[e]||JSON.parse(e)}catch(n){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),Zx(e)?e:r}function Zx(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";Tl.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];Tl.defaultLine="#444";Tl.lightLine="#eee";Tl.background="#fff";Tl.borderLine="#BEC8D9";Tl.lightFraction=100*10/11});var Xr=de((bfe,Kx)=>{"use strict";var ra=ka(),iU=nt(),oU=ea().isTypedArray,an=Kx.exports={},Fc=Ti();an.defaults=Fc.defaults;var lU=an.defaultLine=Fc.defaultLine;an.lightLine=Fc.lightLine;var yp=an.background=Fc.background;an.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};an.rgb=function(e){return an.tinyRGB(ra(e))};an.opacity=function(e){return e?ra(e).getAlpha():0};an.addOpacity=function(e,r){var t=ra(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};an.combine=function(e,r){var t=ra(e).toRgb();if(t.a===1)return ra(e).toRgbString();var n=ra(r||yp).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()};an.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()};an.contrast=function(e,r,t){var n=ra(e);n.getAlpha()!==1&&(n=ra(an.combine(e,yp)));var a=n.isDark()?r?n.lighten(r):yp:t?n.darken(t):lU;return a.toString()};an.stroke=function(e,r){var t=ra(r);e.style({stroke:an.tinyRGB(t),"stroke-opacity":t.getAlpha()})};an.fill=function(e,r){var t=ra(r);e.style({fill:an.tinyRGB(t),"fill-opacity":t.getAlpha()})};an.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 Nc=de((xfe,Qx)=>{"use strict";Qx.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var Ls=de($x=>{"use strict";$x.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 t4=de(ta=>{"use strict";var mp=nt(),jx=ka(),e4=Tt().extendFlat,sU=Sn(),uU=Ml(),fU=Xr(),cU=Nc().DESELECTDIM,Ds=Ec(),r4=Ls().counter,hU=Es().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||!mp(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)),jx(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function n(a){return jx(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(uU.get(e,t))}},angle:{coerceFunction:function(e,r,t){Mo(e)&&(e=To(e)),e==="auto"?r.set("auto"):mp(e)?r.set(hU(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,n){var a=n.regex||r4(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:!!r4(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 n4={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/un/"},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:{}}},a4={};function i4(e,r){for(var t in e){var n=e[t];n.valType?r[t]=n.dflt:(r[t]||(r[t]={}),i4(n,r[t]))}}i4(n4,a4);o4.exports={configAttributes:n4,dfltConfig:a4}});var xp=de((Tfe,l4)=>{"use strict";var bp=it(),vU=nt(),df=[];l4.exports=function(e,r){if(df.indexOf(e)!==-1)return;df.push(e);var t=1e3;vU(r)?t=r:r==="long"&&(t=3e3);var n=bp.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var a=n.selectAll(".notifier-note").data(df);function o(i){i.duration(700).style("opacity",0).each("end",function(l){var u=df.indexOf(l);u!==-1&&df.splice(u,1),bp.select(this).remove()})}a.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(i){var l=bp.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=Al().dfltConfig,_p=xp(),wp=s4.exports={};wp.log=function(){var e;if(Rs.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};wp.warn=function(){var e;if(Rs.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};wp.error=function(){var e;if(Rs.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var qc=de((kfe,u4)=>{"use strict";u4.exports=function(){}});var Mp=de((Sfe,f4)=>{"use strict";f4.exports=function(r,t){if(t instanceof RegExp){for(var n=t.toString(),a=0;a{c4.exports=dU;function dU(){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 d4=de((Efe,v4)=>{v4.exports=pU;function pU(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 g4=de((Lfe,p4)=>{p4.exports=gU;function gU(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=de((Dfe,y4)=>{y4.exports=yU;function yU(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 b4=de((Rfe,m4)=>{m4.exports=mU;function mU(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 _4=de((Pfe,x4)=>{x4.exports=bU;function bU(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],h=r[9],p=r[10],_=r[11],m=r[12],w=r[13],T=r[14],y=r[15],k=t*l-n*i,S=t*u-a*i,b=t*s-o*i,M=n*u-a*l,d=n*s-o*l,x=a*s-o*u,g=f*w-h*m,c=f*T-p*m,A=f*y-_*m,v=h*T-p*w,D=h*y-_*w,E=p*y-_*T,R=k*E-S*D+b*v+M*A-d*c+x*g;return R?(R=1/R,e[0]=(l*E-u*D+s*v)*R,e[1]=(a*D-n*E-o*v)*R,e[2]=(w*x-T*d+y*M)*R,e[3]=(p*d-h*x-_*M)*R,e[4]=(u*A-i*E-s*c)*R,e[5]=(t*E-a*A+o*c)*R,e[6]=(T*b-m*x-y*S)*R,e[7]=(f*x-p*b+_*S)*R,e[8]=(i*D-l*A+s*g)*R,e[9]=(n*A-t*D-o*g)*R,e[10]=(m*d-w*b+y*k)*R,e[11]=(h*b-f*d-_*k)*R,e[12]=(l*c-i*v-u*g)*R,e[13]=(t*v-n*c+a*g)*R,e[14]=(w*S-m*M-T*k)*R,e[15]=(f*M-h*S+p*k)*R,e):null}});var M4=de((Ife,w4)=>{w4.exports=xU;function xU(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],h=r[9],p=r[10],_=r[11],m=r[12],w=r[13],T=r[14],y=r[15];return e[0]=l*(p*y-_*T)-h*(u*y-s*T)+w*(u*_-s*p),e[1]=-(n*(p*y-_*T)-h*(a*y-o*T)+w*(a*_-o*p)),e[2]=n*(u*y-s*T)-l*(a*y-o*T)+w*(a*s-o*u),e[3]=-(n*(u*_-s*p)-l*(a*_-o*p)+h*(a*s-o*u)),e[4]=-(i*(p*y-_*T)-f*(u*y-s*T)+m*(u*_-s*p)),e[5]=t*(p*y-_*T)-f*(a*y-o*T)+m*(a*_-o*p),e[6]=-(t*(u*y-s*T)-i*(a*y-o*T)+m*(a*s-o*u)),e[7]=t*(u*_-s*p)-i*(a*_-o*p)+f*(a*s-o*u),e[8]=i*(h*y-_*w)-f*(l*y-s*w)+m*(l*_-s*h),e[9]=-(t*(h*y-_*w)-f*(n*y-o*w)+m*(n*_-o*h)),e[10]=t*(l*y-s*w)-i*(n*y-o*w)+m*(n*s-o*l),e[11]=-(t*(l*_-s*h)-i*(n*_-o*h)+f*(n*s-o*l)),e[12]=-(i*(h*T-p*w)-f*(l*T-u*w)+m*(l*p-u*h)),e[13]=t*(h*T-p*w)-f*(n*T-a*w)+m*(n*p-a*h),e[14]=-(t*(l*T-u*w)-i*(n*T-a*w)+m*(n*u-a*l)),e[15]=t*(l*p-u*h)-i*(n*p-a*h)+f*(n*u-a*l),e}});var A4=de((Ffe,T4)=>{T4.exports=_U;function _U(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],h=e[10],p=e[11],_=e[12],m=e[13],w=e[14],T=e[15],y=r*i-t*o,k=r*l-n*o,S=r*u-a*o,b=t*l-n*i,M=t*u-a*i,d=n*u-a*l,x=s*m-f*_,g=s*w-h*_,c=s*T-p*_,A=f*w-h*m,v=f*T-p*m,D=h*T-p*w;return y*D-k*v+S*A+b*c-M*g+d*x}});var S4=de((Nfe,k4)=>{k4.exports=wU;function wU(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],h=r[8],p=r[9],_=r[10],m=r[11],w=r[12],T=r[13],y=r[14],k=r[15],S=t[0],b=t[1],M=t[2],d=t[3];return e[0]=S*n+b*l+M*h+d*w,e[1]=S*a+b*u+M*p+d*T,e[2]=S*o+b*s+M*_+d*y,e[3]=S*i+b*f+M*m+d*k,S=t[4],b=t[5],M=t[6],d=t[7],e[4]=S*n+b*l+M*h+d*w,e[5]=S*a+b*u+M*p+d*T,e[6]=S*o+b*s+M*_+d*y,e[7]=S*i+b*f+M*m+d*k,S=t[8],b=t[9],M=t[10],d=t[11],e[8]=S*n+b*l+M*h+d*w,e[9]=S*a+b*u+M*p+d*T,e[10]=S*o+b*s+M*_+d*y,e[11]=S*i+b*f+M*m+d*k,S=t[12],b=t[13],M=t[14],d=t[15],e[12]=S*n+b*l+M*h+d*w,e[13]=S*a+b*u+M*p+d*T,e[14]=S*o+b*s+M*_+d*y,e[15]=S*i+b*f+M*m+d*k,e}});var E4=de((zfe,C4)=>{C4.exports=MU;function MU(e,r,t){var n=t[0],a=t[1],o=t[2],i,l,u,s,f,h,p,_,m,w,T,y;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],h=r[5],p=r[6],_=r[7],m=r[8],w=r[9],T=r[10],y=r[11],e[0]=i,e[1]=l,e[2]=u,e[3]=s,e[4]=f,e[5]=h,e[6]=p,e[7]=_,e[8]=m,e[9]=w,e[10]=T,e[11]=y,e[12]=i*n+f*a+m*o+r[12],e[13]=l*n+h*a+w*o+r[13],e[14]=u*n+p*a+T*o+r[14],e[15]=s*n+_*a+y*o+r[15]),e}});var D4=de((qfe,L4)=>{L4.exports=TU;function TU(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 P4=de((Ofe,R4)=>{R4.exports=AU;function AU(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,h,p,_,m,w,T,y,k,S,b,M,d,x,g,c,A,v,D,E,R,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,h=r[0],p=r[1],_=r[2],m=r[3],w=r[4],T=r[5],y=r[6],k=r[7],S=r[8],b=r[9],M=r[10],d=r[11],x=a*a*f+s,g=o*a*f+i*u,c=i*a*f-o*u,A=a*o*f-i*u,v=o*o*f+s,D=i*o*f+a*u,E=a*i*f+o*u,R=o*i*f-a*u,N=i*i*f+s,e[0]=h*x+w*g+S*c,e[1]=p*x+T*g+b*c,e[2]=_*x+y*g+M*c,e[3]=m*x+k*g+d*c,e[4]=h*A+w*v+S*D,e[5]=p*A+T*v+b*D,e[6]=_*A+y*v+M*D,e[7]=m*A+k*v+d*D,e[8]=h*E+w*R+S*N,e[9]=p*E+T*R+b*N,e[10]=_*E+y*R+M*N,e[11]=m*E+k*R+d*N,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var F4=de((Bfe,I4)=>{I4.exports=kU;function kU(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],h=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+h*n,e[7]=u*a+p*n,e[8]=s*a-o*n,e[9]=f*a-i*n,e[10]=h*a-l*n,e[11]=p*a-u*n,e}});var z4=de((Ufe,N4)=>{N4.exports=SU;function SU(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],h=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-h*n,e[3]=u*a-p*n,e[8]=o*n+s*a,e[9]=i*n+f*a,e[10]=l*n+h*a,e[11]=u*n+p*a,e}});var O4=de((Hfe,q4)=>{q4.exports=CU;function CU(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],h=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+h*n,e[3]=u*a+p*n,e[4]=s*a-o*n,e[5]=f*a-i*n,e[6]=h*a-l*n,e[7]=p*a-u*n,e}});var U4=de((Vfe,B4)=>{B4.exports=EU;function EU(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 V4=de((Gfe,H4)=>{H4.exports=LU;function LU(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,h=n*u,p=n*s,_=a*u,m=a*s,w=o*s,T=i*l,y=i*u,k=i*s;return e[0]=1-(_+w),e[1]=h+k,e[2]=p-y,e[3]=0,e[4]=h-k,e[5]=1-(f+w),e[6]=m+T,e[7]=0,e[8]=p+y,e[9]=m-T,e[10]=1-(f+_),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var Y4=de((Yfe,G4)=>{G4.exports=DU;function DU(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 X4=de((Wfe,W4)=>{W4.exports=RU;function RU(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 J4=de((Xfe,Z4)=>{Z4.exports=PU;function PU(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 Q4=de((Zfe,K4)=>{K4.exports=IU;function IU(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 j4=de((Jfe,$4)=>{$4.exports=FU;function FU(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 r_=de((Kfe,e_)=>{e_.exports=NU;function NU(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,h=n*l,p=a*i,_=a*l,m=a*u,w=o*i,T=o*l,y=o*u;return e[0]=1-h-m,e[1]=f+y,e[2]=p-T,e[3]=0,e[4]=f-y,e[5]=1-s-m,e[6]=_+w,e[7]=0,e[8]=p+T,e[9]=_-w,e[10]=1-s-h,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var n_=de((Qfe,t_)=>{t_.exports=zU;function zU(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 i_=de(($fe,a_)=>{a_.exports=qU;function qU(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 l_=de((jfe,o_)=>{o_.exports=OU;function OU(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 u_=de((e0e,s_)=>{s_.exports=BU;function BU(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 c_=de((r0e,f_)=>{var UU=Tp();f_.exports=HU;function HU(e,r,t,n){var a,o,i,l,u,s,f,h,p,_,m=r[0],w=r[1],T=r[2],y=n[0],k=n[1],S=n[2],b=t[0],M=t[1],d=t[2];return Math.abs(m-b)<1e-6&&Math.abs(w-M)<1e-6&&Math.abs(T-d)<1e-6?UU(e):(f=m-b,h=w-M,p=T-d,_=1/Math.sqrt(f*f+h*h+p*p),f*=_,h*=_,p*=_,a=k*p-S*h,o=S*f-y*p,i=y*h-k*f,_=Math.sqrt(a*a+o*o+i*i),_?(_=1/_,a*=_,o*=_,i*=_):(a=0,o=0,i=0),l=h*i-p*o,u=p*a-f*i,s=f*o-h*a,_=Math.sqrt(l*l+u*u+s*s),_?(_=1/_,l*=_,u*=_,s*=_):(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]=h,e[7]=0,e[8]=i,e[9]=s,e[10]=p,e[11]=0,e[12]=-(a*m+o*w+i*T),e[13]=-(l*m+u*w+s*T),e[14]=-(f*m+h*w+p*T),e[15]=1,e)}});var v_=de((t0e,h_)=>{h_.exports=VU;function VU(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 Ap=de((n0e,d_)=>{d_.exports={create:h4(),clone:d4(),copy:g4(),identity:Tp(),transpose:b4(),invert:_4(),adjoint:M4(),determinant:A4(),multiply:S4(),translate:E4(),scale:D4(),rotate:P4(),rotateX:F4(),rotateY:z4(),rotateZ:O4(),fromRotation:U4(),fromRotationTranslation:V4(),fromScaling:Y4(),fromTranslation:X4(),fromXRotation:J4(),fromYRotation:Q4(),fromZRotation:j4(),fromQuat:r_(),frustum:n_(),perspective:i_(),perspectiveFromFieldOfView:l_(),ortho:u_(),lookAt:c_(),str:v_()}});var Oc=de(Ut=>{"use strict";var GU=Ap();Ut.init2dArray=function(e,r){for(var t=new Array(e),n=0;n{"use strict";var YU=it(),p_=kl(),WU=Oc(),XU=Ap();function ZU(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 JU(e){var r=YU.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function g_(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function KU(e,r){y_("global",e,r)}function y_(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):p_.warn("addStyleRule failed"):p_.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function QU(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&g_(t)}function $U(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 jU(e){var r=b_(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=m_(n);if(a){var o=WU.convertCssMatrix(a);t=XU.multiply(t,t,o)}}),t}function m_(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 b_(e){for(var r=[];eH(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function eH(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function rH(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}x_.exports={getGraphDiv:ZU,isPlotDiv:JU,removeElement:g_,addStyleRule:KU,addRelatedStyleRule:y_,deleteRelatedStyleRule:QU,setStyleOnHover:$U,getFullTransformMatrix:jU,getElementTransformMatrix:m_,getElementAndAncestors:b_,equalDomRects:rH}});var gf=de((o0e,__)=>{"use strict";__.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=de((l0e,C_)=>{"use strict";var M_=Tt().extendFlat,tH=wo(),T_={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},A_={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},nH=T_.flags.slice().concat(["fullReplot"]),aH=A_.flags.slice().concat("layoutReplot");C_.exports={traces:T_,layout:A_,traceFlags:function(){return w_(nH)},layoutFlags:function(){return w_(aH)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var n=t.split("+"),a=0;a{"use strict";kp.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};kp.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 Sp=de((u0e,E_)=>{"use strict";E_.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 Ka=de(Ps=>{"use strict";var{DATE_FORMAT_LINK:iH,FORMAT_LINK:oH}=Sp(),lH=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function sH({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,oH,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,iH,"for details on the date formatting syntax.",lH].join(" ")}Ps.templateFormatStringDescription=sH;Ps.hovertemplateAttrs=({editType:e="none",arrayOk:r}={},t={})=>xl({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});Ps.texttemplateAttrs=({editType:e="calc",arrayOk:r}={},t={})=>xl({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});Ps.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:r}={},t={})=>({valType:"string",dflt:"",editType:e});Ps.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var Hc=de((h0e,F_)=>{"use strict";function ko(e,r){return r?r.d2l(e):e}function L_(e,r){return r?r.l2d(e):e}function uH(e){return e.x0}function fH(e){return e.x1}function cH(e){return e.y0}function hH(e){return e.y1}function D_(e){return e.x0shift||0}function R_(e){return e.x1shift||0}function P_(e){return e.y0shift||0}function I_(e){return e.y1shift||0}function Bc(e,r){return ko(e.x1,r)+R_(e)-ko(e.x0,r)-D_(e)}function Uc(e,r,t){return ko(e.y1,t)+I_(e)-ko(e.y0,t)-P_(e)}function vH(e,r){return Math.abs(Bc(e,r))}function dH(e,r,t){return Math.abs(Uc(e,r,t))}function pH(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(Bc(e,r),2)+Math.pow(Uc(e,r,t),2))}function gH(e,r){return L_((ko(e.x1,r)+R_(e)+ko(e.x0,r)+D_(e))/2,r)}function yH(e,r,t){return L_((ko(e.y1,t)+I_(e)+ko(e.y0,t)+P_(e))/2,t)}function mH(e,r,t){return e.type!=="line"?void 0:Uc(e,r,t)/Bc(e,r)}F_.exports={x0:uH,x1:fH,y0:cH,y1:hH,slope:mH,dx:Bc,dy:Uc,width:vH,height:dH,length:pH,xcenter:gH,ycenter:yH}});var q_=de((v0e,z_)=>{"use strict";var bH=zn().overrideAll,Sl=Sn(),N_=kn(),xH=Ao().dash,So=Tt().extendFlat,{shapeTexttemplateAttrs:_H,templatefallbackAttrs:wH}=Ka(),MH=Hc();z_.exports=bH({newshape:{visible:So({},Sl.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:So({},Sl.legend,{}),legendgroup:So({},Sl.legendgroup,{}),legendgrouptitle:{text:So({},Sl.legendgrouptitle.text,{}),font:N_({})},legendrank:So({},Sl.legendrank,{}),legendwidth:So({},Sl.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:So({},xH,{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({},Sl.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:_H({newshape:!0},{keys:Object.keys(MH)}),texttemplatefallback:wH({editType:"arraydraw"}),font:N_({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var B_=de((d0e,O_)=>{"use strict";var TH=Ao().dash,AH=Tt().extendFlat;O_.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:AH({},TH,{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 Vc=de((p0e,U_)=>{"use strict";U_.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 Is=de((g0e,Y_)=>{"use strict";var Cp=kn(),kH=gf(),Gc=Ti(),H_=q_(),V_=B_(),SH=Vc(),G_=Tt().extendFlat,Yc=Cp({editType:"calc"});Yc.family.dflt='"Open Sans", verdana, arial, sans-serif';Yc.size.dflt=12;Yc.color.dflt=Gc.defaultLine;Y_.exports={font:Yc,title:{text:{valType:"string",editType:"layoutstyle"},font:Cp({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:Cp({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:G_(SH({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:Gc.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:Gc.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:Gc.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:V_.newselection,activeselection:V_.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:G_({},kH.transition,{editType:"none"})}});var W_=de(()=>{(function(){if(!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")){var e=document.createElement("style");e.id="ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var Cr=de(Zr=>{"use strict";var Fs=kl(),X_=qc(),Z_=Mp(),CH=wo(),EH=pf().addStyleRule,J_=Tt(),LH=Sn(),DH=Is(),RH=J_.extendFlat,Ep=J_.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 qH=Ss().timeFormat,o6=nt(),Lp=kl(),Eo=Es().mod,qs=nn(),Sa=qs.BADNUM,na=qs.ONEDAY,yf=qs.ONEHOUR,Co=qs.ONEMIN,zs=qs.ONESEC,mf=qs.EPOCHJD,Zi=Cr(),e6=Ss().utcFormat,OH=/^\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,BH=/^\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,r6=new Date().getFullYear()-70;function Ji(e){return e&&Zi.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Ht.dateTick0=function(e,r){var t=UH(e,!!r);if(r<2)return t;var n=Ht.dateTime2ms(t,e);return n+=na*(r-1),Ht.ms2DateTime(n,0,e)};function UH(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 Xc,Zc;Ht.dateTime2ms=function(e,r){if(Ht.isJSDate(e)){var t=e.getTimezoneOffset()*Co,n=(e.getUTCMinutes()-e.getMinutes())*Co+(e.getUTCSeconds()-e.getSeconds())*zs+(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>=Xc&&e<=Zc?e:Sa}if(typeof e!="string"&&typeof e!="number")return Sa;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?BH:OH);if(!u)return Sa;var s=u[1],f=u[3]||"1",h=Number(u[5]||1),p=Number(u[7]||0),_=Number(u[9]||0),m=Number(u[11]||0);if(o){if(s.length===2)return Sa;s=Number(s);var w;try{var T=Zi.getComponentMethod("calendars","getCal")(r);if(l){var y=f.charAt(f.length-1)==="i";f=parseInt(f,10),w=T.newDate(s,T.toMonthIndex(s,f,y),h)}else w=T.newDate(s,Number(f),h)}catch(S){return Sa}return w?(w.toJD()-mf)*na+p*yf+_*Co+m*zs:Sa}s.length===2?s=(Number(s)+2e3-r6)%100+r6:s=Number(s),f-=1;var k=new Date(Date.UTC(2e3,f,h,p,_));return k.setUTCFullYear(s),k.getUTCMonth()!==f||k.getUTCDate()!==h?Sa:k.getTime()+m*zs};Xc=Ht.MIN_MS=Ht.dateTime2ms("-9999");Zc=Ht.MAX_MS=Ht.dateTime2ms("9999-12-31 23:59:59.9999");Ht.isDateTime=function(e,r){return Ht.dateTime2ms(e,r)!==Sa};function Ns(e,r){return String(e+Math.pow(10,r)).substr(1)}var Wc=90*na,t6=3*yf,n6=5*Co;Ht.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Xc&&e<=Zc))return Sa;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 h=Math.floor(a/na)+mf,p=Math.floor(Eo(e,na));try{o=Zi.getComponentMethod("calendars","getCal")(t).fromJD(h).formatDate("yyyy-mm-dd")}catch(_){o=e6("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=Xc+na&&e<=Zc-na))return Sa;var r=Math.floor(Eo(e+.05,1)*10),t=new Date(Math.round(e-r/10)),n=qH("%Y-%m-%d")(t),a=t.getHours(),o=t.getMinutes(),i=t.getSeconds(),l=t.getUTCMilliseconds()*10+r;return l6(n,a,o,i,l)};function l6(e,r,t,n,a){if((r||t||n||a)&&(e+=" "+Ns(r,2)+":"+Ns(t,2),(n||a)&&(e+=":"+Ns(n,2),a))){for(var o=4;a%10===0;)o-=1,a/=10;e+="."+Ns(a,o)}return e}Ht.cleanDate=function(e,r,t){if(e===Sa)return r;if(Ht.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Ji(t))return Lp.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 Lp.error("unrecognized date",e),r;return e};var HH=/%\d?f/g,VH=/%h/g,GH={1:"1",2:"1",3:"2",4:"2"};function a6(e,r,t,n){e=e.replace(HH,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(VH,function(){return GH[t("%q")(a)]}),Ji(n))try{e=Zi.getComponentMethod("calendars","worldCalFmt")(e,r,n)}catch(o){return"Invalid"}return t(e)(a)}var YH=[59,59.9,59.99,59.999,59.9999];function WH(e,r){var t=Eo(e+.05,na),n=Ns(Math.floor(t/yf),2)+":"+Ns(Eo(Math.floor(t/Co),60),2);if(r!=="M"){o6(r)||(r=0);var a=Math.min(Eo(e/zs,60),YH[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+` +"use strict";var Plotly=(()=>{var EB=Object.defineProperty,LB=Object.defineProperties;var DB=Object.getOwnPropertyDescriptors;var lb=Object.getOwnPropertySymbols;var RB=Object.prototype.hasOwnProperty,PB=Object.prototype.propertyIsEnumerable;var sb=(e,r,t)=>r in e?EB(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,bl=(e,r)=>{for(var t in r||(r={}))RB.call(r,t)&&sb(e,t,r[t]);if(lb)for(var t of lb(r))PB.call(r,t)&&sb(e,t,r[t]);return e},bc=(e,r)=>LB(e,DB(r));var de=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var _c=de(ub=>{"use strict";ub.version="3.3.1"});var cb=de((fb,wc)=>{(function(r,t,n){t[r]=t[r]||n(),typeof wc!="undefined"&&wc.exports&&(wc.exports=t[r])})("Promise",typeof window!="undefined"?window:fb,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,M){return Object.defineProperty(k,S,{value:x,writable:!0,configurable:M!==!1})}}catch(y){r=function(S,x,M){return S[x]=M,S}}n=function(){var k,S,x;function M(d,_){this.fn=d,this.self=_,this.next=void 0}return{add:function(_,g){x=new M(_,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(y,k){n.add(y,k),t||(t=o(n.drain))}function l(y){var k,S=typeof y;return y!=null&&(S=="object"||S=="function")&&(k=y.then),typeof k=="function"?k:!1}function u(){for(var y=0;y0&&i(u,S))}catch(x){h.call(new b(S),x)}}}function h(y){var k=this;k.triggered||(k.triggered=!0,k.def&&(k=k.def),k.msg=y,k.state=2,k.chain.length>0&&i(u,k))}function p(y,k,S,x){for(var M=0;M{(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,G=new Array(B);B--;)G[B]=z[B];return G}}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,G){u.call(this,z,B,G+"")},s.setProperty=function(z,B,G){f.call(this,z,B+"",G)}}e.ascending=h;function h(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,G=C.length,W,Z;if(arguments.length===1){for(;++B=Z){W=Z;break}for(;++BZ&&(W=Z)}else{for(;++B=Z){W=Z;break}for(;++BZ&&(W=Z)}return W},e.max=function(C,z){var B=-1,G=C.length,W,Z;if(arguments.length===1){for(;++B=Z){W=Z;break}for(;++BW&&(W=Z)}else{for(;++B=Z){W=Z;break}for(;++BW&&(W=Z)}return W},e.extent=function(C,z){var B=-1,G=C.length,W,Z,le;if(arguments.length===1){for(;++B=Z){W=le=Z;break}for(;++BZ&&(W=Z),le=Z){W=le=Z;break}for(;++BZ&&(W=Z),le1)return le/(fe-1)},e.deviation=function(){var C=e.variance.apply(this,arguments);return C&&Math.sqrt(C)};function m(C){return{left:function(z,B,G,W){for(arguments.length<3&&(G=0),arguments.length<4&&(W=z.length);G>>1;C(z[Z],B)<0?G=Z+1:W=Z}return G},right:function(z,B,G,W){for(arguments.length<3&&(G=0),arguments.length<4&&(W=z.length);G>>1;C(z[Z],B)>0?W=Z:G=Z+1}return G}}}var w=m(h);e.bisectLeft=w.left,e.bisect=e.bisectRight=w.right,e.bisector=function(C){return m(C.length===1?function(z,B){return h(C(z),B)}:C)},e.shuffle=function(C,z,B){(G=arguments.length)<3&&(B=C.length,G<2&&(z=0));for(var G=B-z,W,Z;G;)Z=Math.random()*G--|0,W=C[G+z],C[G+z]=C[Z+z],C[Z+z]=W;return C},e.permute=function(C,z){for(var B=z.length,G=new Array(B);B--;)G[B]=C[z[B]];return G},e.pairs=function(C){for(var z=0,B=C.length-1,G,W=C[0],Z=new Array(B<0?0:B);z=0;)for(le=C[z],B=le.length;--B>=0;)Z[--W]=le[B];return Z};var y=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 G=[],W=k(y(B)),Z=-1,le;if(C*=W,z*=W,B*=W,B<0)for(;(le=C+B*++Z)>z;)G.push(le/W);else for(;(le=C+B*++Z)=z.length)return W?W.call(C,fe):G?fe.sort(G):fe;for(var _e=-1,Ie=fe.length,Fe=z[be++],Je,rr,Oe,Ge=new x,We;++_e=z.length)return ie;var be=[],_e=B[fe++];return ie.forEach(function(Ie,Fe){be.push({key:Ie,values:le(Fe,fe)})}),_e?be.sort(function(Ie,Fe){return _e(Ie.key,Fe.key)}):be}return C.map=function(ie,fe){return Z(fe,ie,0)},C.entries=function(ie){return le(Z(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 G=ie,C},C.rollup=function(ie){return W=ie,C},C},e.set=function(C){var z=new R;if(C)for(var B=0,G=C.length;B=0&&(G=C.slice(B+1),C=C.slice(0,B)),C)return arguments.length<2?this[C].on(G):this[C].on(G,z);if(arguments.length===2){if(z==null)for(C in this)this.hasOwnProperty(C)&&this[C].on(G,null);return this}};function U(C){var z=[],B=new x;function G(){for(var W=z,Z=-1,le=W.length,ie;++Z=0&&(B=C.slice(0,z))!=="xmlns"&&(C=C.slice(z+1)),te.hasOwnProperty(B)?{space:te[B],local:C}:C}},re.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 G(){this.removeAttributeNS(C.space,C.local)}function W(){this.setAttribute(C,z)}function Z(){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?G:B:typeof z=="function"?C.local?ie:le:C.local?Z:W}function ve(C){return C.trim().replace(/\s+/g," ")}re.classed=function(C,z){if(arguments.length<2){if(typeof C=="string"){var B=this.node(),G=(C=Se(C)).length,W=-1;if(z=B.classList){for(;++W=0;)(Z=B[G])&&(W&&W!==Z.nextSibling&&W.parentNode.insertBefore(Z,W),W=Z);return this},re.sort=function(C){C=we.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=xe.get(C);le&&(C=le,Z=qe);function ie(){var _e=this[G];_e&&(this.removeEventListener(C,_e,_e.$),delete this[G])}function fe(){var _e=Z(z,t(arguments));ie.call(this),this.addEventListener(C,this[G]=_e,_e.$=B),_e._=z}function be(){var _e=new RegExp("^__on([^.]+)"+e.requote(C)+"$"),Ie;for(var Fe in this)if(Ie=Fe.match(_e)){var Je=this[Fe];this.removeEventListener(Ie[1],Je,Je.$),delete this[Fe]}}return W?z?fe:ie:z?P:be}var xe=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&xe.forEach(function(C){"on"+C in n&&xe.remove(C)});function Le(C,z){return function(B){var G=e.event;e.event=B,z[0]=this.__data__;try{C.apply(this,z)}finally{e.event=G}}}function qe(C,z){var B=Le(C,z);return function(G){var W=this,Z=G.relatedTarget;(!Z||Z!==W&&!(Z.compareDocumentPosition(W)&8))&&B.call(W,G)}}var ze,$e=0;function Ve(C){var z=".dragsuppress-"+ ++$e,B="click"+z,G=e.select(o(C)).on("touchmove"+z,X).on("dragstart"+z,X).on("selectstart"+z,X);if(ze==null&&(ze="onselectstart"in C?!1:I(C.style,"userSelect")),ze){var W=a(C).style,Z=W[ze];W[ze]="none"}return function(le){if(G.on(z,null),ze&&(W[ze]=Z),le){var ie=function(){G.on(B,null)};G.on(B,function(){X(),ie()},!0),setTimeout(ie,0)}}}e.mouse=function(C){return Ye(C,$())};var Be=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Ye(C,z){z.changedTouches&&(z=z.changedTouches[0]);var B=C.ownerSVGElement||C;if(B.createSVGPoint){var G=B.createSVGPoint();if(Be<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 Z=B[0][0].getScreenCTM();Be=!(Z.f||Z.e),B.remove()}}return Be?(G.x=z.pageX,G.y=z.pageY):(G.x=z.clientX,G.y=z.clientY),G=G.matrixTransform(C.getScreenCTM().inverse()),[G.x,G.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=$().changedTouches),z){for(var G=0,W=z.length,Z;G0?1:C<0?-1:0}function er(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?Ke:Math.acos(C)}function fr(C){return C>1?J:C<-1?-J:Math.asin(C)}function br(C){return((C=Math.exp(C))-1/C)/2}function Sr(C){return((C=Math.exp(C))+1/C)/2}function Mr(C){return((C=Math.exp(2*C))-1)/(C+1)}function Ar(C){return(C=Math.sin(C/2))*C}var ft=Math.SQRT2,sr=2,Pr=4;e.interpolateZoom=function(C,z){var B=C[0],G=C[1],W=C[2],Z=z[0],le=z[1],ie=z[2],fe=Z-B,be=le-G,_e=fe*fe+be*be,Ie,Fe;if(_e0&&(hr=hr.transition().duration(le)),hr.call(tr.event)}function _r(){Ge&&Ge.domain(Oe.range().map(function(hr){return(hr-C.x)/C.k}).map(Oe.invert)),je&&je.domain(We.range().map(function(hr){return(hr-C.y)/C.k}).map(We.invert))}function wr(hr){ie++||hr({type:"zoomstart"})}function Or(hr){_r(),hr({type:"zoom",scale:C.k,translate:[C.x,C.y]})}function Tr(hr){--ie||(hr({type:"zoomend"}),B=null)}function Ir(){var hr=this,Br=rr.of(hr,arguments),Hr=0,ut=e.select(o(hr)).on(be,xn).on(_e,Fn),Pt=Ze(e.mouse(hr)),Qt=Ve(hr);gc.call(hr),wr(Br);function xn(){Hr=1,mr(e.mouse(hr),Pt),Or(Br)}function Fn(){ut.on(be,null).on(_e,null),Qt(Hr),Tr(Br)}}function st(){var hr=this,Br=rr.of(hr,arguments),Hr={},ut=0,Pt,Qt=".zoom-"+e.event.changedTouches[0].identifier,xn="touchmove"+Qt,Fn="touchend"+Qt,Yn=[],Nn=e.select(hr),$n=Ve(hr);jn(),wr(Br),Nn.on(fe,null).on(Fe,jn);function An(){var Za=e.touches(hr);return Pt=C.k,Za.forEach(function(bn){bn.identifier in Hr&&(Hr[bn.identifier]=Ze(bn))}),Za}function jn(){var Za=e.event.target;e.select(Za).on(xn,ml).on(Fn,CB),Yn.push(Za);for(var bn=e.event.changedTouches,Ta=0,Ti=bn.length;Ta1){var xl=Aa[0],_o=Aa[1],xc=xl[0]-_o[0],ob=xl[1]-_o[1];ut=xc*xc+ob*ob}}function ml(){var Za=e.touches(hr),bn,Ta,Ti,Aa;gc.call(hr);for(var ks=0,xl=Za.length;ks1?1:z,B=B<0?0:B>1?1:B,W=B<=.5?B*(1+z):B+z-B*z,G=2*B-W;function Z(ie){return ie>360?ie-=360:ie<0&&(ie+=360),ie<60?G+(W-G)*ie/60:ie<180?W:ie<240?G+(W-G)*(240-ie)/60:G}function le(ie){return Math.round(Z(ie)*255)}return new tn(le(C+120),le(C),le(C-120))}e.hcl=Et;function Et(C,z,B){return this instanceof Et?(this.h=+C,this.c=+z,void(this.l=+B)):arguments.length<2?C instanceof Et?new Et(C.h,C.c,C.l):C instanceof bt?bi(C.l,C.a,C.b):bi((C=yr((C=e.rgb(C)).r,C.g,C.b)).l,C.a,C.b):new Et(C,z,B)}var Tn=Et.prototype=new pt;Tn.brighter=function(C){return new Et(this.h,this.c,Math.min(100,this.l+gt*(arguments.length?C:1)))},Tn.darker=function(C){return new Et(this.h,this.c,Math.max(0,this.l-gt*(arguments.length?C:1)))},Tn.rgb=function(){return Ot(this.h,this.c,this.l).rgb()};function Ot(C,z,B){return isNaN(C)&&(C=0),isNaN(z)&&(z=0),new bt(B,Math.cos(C*=ae)*z,Math.sin(C)*z)}e.lab=bt;function bt(C,z,B){return this instanceof bt?(this.l=+C,this.a=+z,void(this.b=+B)):arguments.length<2?C instanceof bt?new bt(C.l,C.a,C.b):C instanceof Et?Ot(C.h,C.c,C.l):yr((C=tn(C)).r,C.g,C.b):new bt(C,z,B)}var gt=18,Ft=.95047,ha=1,Qn=1.08883,In=bt.prototype=new pt;In.brighter=function(C){return new bt(Math.min(100,this.l+gt*(arguments.length?C:1)),this.a,this.b)},In.darker=function(C){return new bt(Math.max(0,this.l-gt*(arguments.length?C:1)),this.a,this.b)},In.rgb=function(){return wa(this.l,this.a,this.b)};function wa(C,z,B){var G=(C+16)/116,W=G+z/500,Z=G-B/200;return W=Gi(W)*Ft,G=Gi(G)*ha,Z=Gi(Z)*Qn,new tn(Wi(3.2404542*W-1.5371385*G-.4985314*Z),Wi(-.969266*W+1.8760108*G+.041556*Z),Wi(.0556434*W-.2040259*G+1.0572252*Z))}function bi(C,z,B){return C>0?new Et(Math.atan2(B,z)*De,Math.sqrt(z*z+B*B),C):new Et(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=tn;function tn(C,z,B){return this instanceof tn?(this.r=~~C,this.g=~~z,void(this.b=~~B)):arguments.length<2?C instanceof tn?new tn(C.r,C.g,C.b):at(""+C,tn,hn):new tn(C,z,B)}function xo(C){return new tn(C>>16,C>>8&255,C&255)}function _i(C){return xo(C)+""}var wi=tn.prototype=new pt;wi.brighter=function(C){C=Math.pow(.7,arguments.length?C:1);var z=this.r,B=this.g,G=this.b,W=30;return!z&&!B&&!G?new tn(W,W,W):(z&&z>4,G=G>>4|G,W=fe&240,W=W>>4|W,Z=fe&15,Z=Z<<4|Z):C.length===7&&(G=(fe&16711680)>>16,W=(fe&65280)>>8,Z=fe&255)),z(G,W,Z))}function ct(C,z,B){var G=Math.min(C/=255,z/=255,B/=255),W=Math.max(C,z,B),Z=W-G,le,ie,fe=(W+G)/2;return Z?(ie=fe<.5?Z/(W+G):Z/(2-W-G),C==W?le=(z-B)/Z+(z0&&fe<1?0:le),new Rr(le,ie,fe)}function yr(C,z,B){C=yn(C),z=yn(z),B=yn(B);var G=Yi((.4124564*C+.3575761*z+.1804375*B)/Ft),W=Yi((.2126729*C+.7151522*z+.072175*B)/ha),Z=Yi((.0193339*C+.119192*z+.9503041*B)/Qn);return bt(116*W-16,500*(G-W),200*(W-Z))}function yn(C){return(C/=255)<=.04045?C/12.92:Math.pow((C+.055)/1.055,2.4)}function _t(C){var z=parseFloat(C);return C.charAt(C.length-1)==="%"?Math.round(z*2.55):z}var mn=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});mn.forEach(function(C,z){mn.set(C,xo(z))});function Wr(C){return typeof C=="function"?C:function(){return C}}e.functor=Wr,e.xhr=Wa(N);function Wa(C){return function(z,B,G){return arguments.length===2&&typeof B=="function"&&(G=B,B=null),vl(z,B,C,G)}}function vl(C,z,B,G){var W={},Z=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=be:ie.onreadystatechange=function(){ie.readyState>3&&be()};function be(){var _e=ie.status,Ie;if(!_e&&Lq(ie)||_e>=200&&_e<300||_e===304){try{Ie=B.call(W,ie)}catch(Fe){Z.error.call(W,Fe);return}Z.load.call(W,Ie)}else Z.error.call(W,ie)}return ie.onprogress=function(_e){var Ie=e.event;e.event=_e;try{Z.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,Fe){if(arguments.length===2&&typeof Ie=="function"&&(Fe=Ie,Ie=null),ie.open(_e,C,!0),z!=null&&!("accept"in le)&&(le.accept=z+",*/*"),ie.setRequestHeader)for(var Je in le)ie.setRequestHeader(Je,le[Je]);return z!=null&&ie.overrideMimeType&&ie.overrideMimeType(z),fe!=null&&(ie.responseType=fe),Fe!=null&&W.on("error",Fe).on("load",function(rr){Fe(null,rr)}),Z.beforesend.call(W,ie),ie.send(Ie==null?null:Ie),W},W.abort=function(){return ie.abort(),W},e.rebind(W,Z,"on"),G==null?W:W.get(Eq(G))}function Eq(C){return C.length===1?function(z,B){C(z==null?B:null)}:C}function Lq(C){var z=C.responseType;return z&&z!=="text"?C.response:C.responseText}e.dsv=function(C,z){var B=new RegExp('["'+C+` +]`),G=C.charCodeAt(0);function W(be,_e,Ie){arguments.length<3&&(Ie=_e,_e=null);var Fe=vl(be,z,_e==null?Z:le(_e),Ie);return Fe.row=function(Je){return arguments.length?Fe.response((_e=Je)==null?Z:le(Je)):_e},Fe}function Z(be){return W.parse(be.responseText)}function le(be){return function(_e){return W.parse(_e.responseText,be)}}W.parse=function(be,_e){var Ie;return W.parseRows(be,function(Fe,Je){if(Ie)return Ie(Fe,Je-1);var rr=function(Oe){for(var Ge={},We=Fe.length,je=0;je=rr)return Fe;if(je)return je=!1,Ie;var or=Oe;if(be.charCodeAt(or)===34){for(var pr=or;pr++24?(isFinite(z)&&(clearTimeout(ec),ec=setTimeout(Fd,z)),j0=0):(j0=1,W5(Fd))}e.timer.flush=function(){X5(),Z5()};function X5(){for(var C=Date.now(),z=Q0;z;)C>=z.t&&z.c(C-z.t)&&(z.c=null),z=z.n;return C}function Z5(){for(var C,z=Q0,B=1/0;z;)z.c?(z.t=0;--ie)Oe.push(W[be[Ie[ie]][2]]);for(ie=+Je;ie1&&er(C[B[G-2]],C[B[G-1]],C[W])<=0;)--G;B[G++]=W}return B.slice(0,G)}function Dq(C,z){return C[0]-z[0]||C[1]-z[1]}e.geom.polygon=function(C){return q(C,tc),C};var tc=e.geom.polygon.prototype=[];tc.area=function(){for(var C=-1,z=this.length,B,G=this[z-1],W=0;++CRe)ie=ie.L;else if(le=z-Fq(ie,B),le>Re){if(!ie.R){G=ie;break}ie=ie.R}else{Z>-Re?(G=ie.P,W=ie):le>-Re?(G=ie,W=ie.N):G=W=ie;break}var fe=j5(C);if(ws.insert(G,fe),!(!G&&!W)){if(G===W){Ts(G),W=j5(G.site),ws.insert(fe,W),fe.edge=W.edge=ju(G.site,fe.site),Ms(G),Ms(W);return}if(!W){fe.edge=ju(G.site,fe.site);return}Ts(G),Ts(W);var be=G.site,_e=be.x,Ie=be.y,Fe=C.x-_e,Je=C.y-Ie,rr=W.site,Oe=rr.x-_e,Ge=rr.y-Ie,We=2*(Fe*Ge-Je*Oe),je=Fe*Fe+Je*Je,tr=Oe*Oe+Ge*Ge,Ze={x:(Ge*je-Je*tr)/We+_e,y:(Fe*tr-Oe*je)/We+Ie};nc(W.edge,be,rr,Ze),fe.edge=ju(be,C,null,Ze),W.edge=ju(C,rr,null,Ze),Ms(G),Ms(W)}}function ex(C,z){var B=C.site,G=B.x,W=B.y,Z=W-z;if(!Z)return G;var le=C.P;if(!le)return-1/0;B=le.site;var ie=B.x,fe=B.y,be=fe-z;if(!be)return ie;var _e=ie-G,Ie=1/Z-1/be,Fe=_e/be;return Ie?(-Fe+Math.sqrt(Fe*Fe-2*Ie*(_e*_e/(-2*be)-fe+be/2+W-Z/2)))/Ie+G:(G+ie)/2}function Fq(C,z){var B=C.N;if(B)return ex(B,z);var G=C.site;return G.y===z?G.x:1/0}function rx(C){this.site=C,this.edges=[]}rx.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(tx),C.length};function Nq(C){for(var z=C[0][0],B=C[1][0],G=C[0][1],W=C[1][1],Z,le,ie,fe,be=dl,_e=be.length,Ie,Fe,Je,rr,Oe,Ge;_e--;)if(Ie=be[_e],!(!Ie||!Ie.prepare()))for(Je=Ie.edges,rr=Je.length,Fe=0;FeRe||y(fe-le)>Re)&&(Je.splice(Fe,0,new ac(Uq(Ie.site,Ge,y(ie-z)Re?{x:z,y:y(Z-z)Re?{x:y(le-W)Re?{x:B,y:y(Z-B)Re?{x:y(le-G)=-Qe)){var Fe=fe*fe+be*be,Je=_e*_e+Ge*Ge,rr=(Ge*Fe-be*Je)/Ie,Oe=(fe*Je-_e*Fe)/Ie,Ge=Oe+ie,We=$5.pop()||new zq;We.arc=C,We.site=W,We.x=rr+le,We.y=Ge+Math.sqrt(rr*rr+Oe*Oe),We.cy=Ge,C.circle=We;for(var je=null,tr=$u._;tr;)if(We.y0)){if(Oe/=Je,Je<0){if(Oe0){if(Oe>Fe)return;Oe>Ie&&(Ie=Oe)}if(Oe=B-ie,!(!Je&&Oe<0)){if(Oe/=Je,Je<0){if(Oe>Fe)return;Oe>Ie&&(Ie=Oe)}else if(Je>0){if(Oe0)){if(Oe/=rr,rr<0){if(Oe0){if(Oe>Fe)return;Oe>Ie&&(Ie=Oe)}if(Oe=G-fe,!(!rr&&Oe<0)){if(Oe/=rr,rr<0){if(Oe>Fe)return;Oe>Ie&&(Ie=Oe)}else if(rr>0){if(Oe0&&(W.a={x:ie+Ie*Je,y:fe+Ie*rr}),Fe<1&&(W.b={x:ie+Fe*Je,y:fe+Fe*rr}),W}}}}}}function Oq(C){for(var z=_s,B=qq(C[0][0],C[0][1],C[1][0],C[1][1]),G=z.length,W;G--;)W=z[G],(!Bq(W,C)||!B(W)||y(W.a.x-W.b.x)=Z)return;if(_e>Fe){if(!G)G={x:rr,y:le};else if(G.y>=ie)return;B={x:rr,y:ie}}else{if(!G)G={x:rr,y:ie};else if(G.y1)if(_e>Fe){if(!G)G={x:(le-We)/Ge,y:le};else if(G.y>=ie)return;B={x:(ie-We)/Ge,y:ie}}else{if(!G)G={x:(ie-We)/Ge,y:ie};else if(G.y=Z)return;B={x:Z,y:Ge*Z+We}}else{if(!G)G={x:Z,y:Ge*Z+We};else if(G.x=_e&&We.x<=Fe&&We.y>=Ie&&We.y<=Je?[[_e,Je],[Fe,Je],[Fe,Ie],[_e,Ie]]:[];je.point=fe[Oe]}),be}function ie(fe){return fe.map(function(be,_e){return{x:Math.round(G(be,_e)/Re)*Re,y:Math.round(W(be,_e)/Re)*Re,i:_e}})}return le.links=function(fe){return Ud(ie(fe)).edges.filter(function(be){return be.l&&be.r}).map(function(be){return{source:fe[be.l.i],target:fe[be.r.i]}})},le.triangles=function(fe){var be=[];return Ud(ie(fe)).cells.forEach(function(_e,Ie){for(var Fe=_e.site,Je=_e.edges.sort(tx),rr=-1,Oe=Je.length,Ge,We,je=Je[Oe-1].edge,tr=je.l===Fe?je.r:je.l;++rrtr&&(tr=_e.x),_e.y>Ze&&(Ze=_e.y),Je.push(_e.x),rr.push(_e.y);else for(Oe=0;Oetr&&(tr=or),pr>Ze&&(Ze=pr),Je.push(or),rr.push(pr)}var mr=tr-We,gr=Ze-je;mr>gr?Ze=je+mr:tr=We+gr;function _r(Tr,Ir,st,Bt,vt,hr,Br,Hr){if(!(isNaN(st)||isNaN(Bt)))if(Tr.leaf){var ut=Tr.x,Pt=Tr.y;if(ut!=null)if(y(ut-st)+y(Pt-Bt)<.01)wr(Tr,Ir,st,Bt,vt,hr,Br,Hr);else{var Qt=Tr.point;Tr.x=Tr.y=Tr.point=null,wr(Tr,Qt,ut,Pt,vt,hr,Br,Hr),wr(Tr,Ir,st,Bt,vt,hr,Br,Hr)}else Tr.x=st,Tr.y=Bt,Tr.point=Ir}else wr(Tr,Ir,st,Bt,vt,hr,Br,Hr)}function wr(Tr,Ir,st,Bt,vt,hr,Br,Hr){var ut=(vt+Br)*.5,Pt=(hr+Hr)*.5,Qt=st>=ut,xn=Bt>=Pt,Fn=xn<<1|Qt;Tr.leaf=!1,Tr=Tr.nodes[Fn]||(Tr.nodes[Fn]=ix()),Qt?vt=ut:Br=ut,xn?hr=Pt:Hr=Pt,_r(Tr,Ir,st,Bt,vt,hr,Br,Hr)}var Or=ix();if(Or.add=function(Tr){_r(Or,Tr,+Ie(Tr,++Oe),+Fe(Tr,Oe),We,je,tr,Ze)},Or.visit=function(Tr){tf(Tr,Or,We,je,tr,Ze)},Or.find=function(Tr){return Wq(Or,Tr[0],Tr[1],We,je,tr,Ze)},Oe=-1,z==null){for(;++OeZ||Fe>le||Je=or,gr=B>=pr,_r=gr<<1|mr,wr=_r+4;_rB&&(Z=z.slice(B,Z),ie[le]?ie[le]+=Z:ie[++le]=Z),(G=G[0])===(W=W[0])?ie[le]?ie[le]+=W:ie[++le]=W:(ie[++le]=null,fe.push({i:le,x:Xi(G,W)})),B=Gd.lastIndex;return B=0&&!(G=e.interpolators[B](C,z)););return G}e.interpolators=[function(C,z){var B=typeof z;return(B==="string"?mn.has(z.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(z)?Hd:lx:z instanceof pt?Hd:Array.isArray(z)?lc:B==="object"&&isNaN(z)?ox:Xi)(C,z)}],e.interpolateArray=lc;function lc(C,z){var B=[],G=[],W=C.length,Z=z.length,le=Math.min(C.length,z.length),ie;for(ie=0;ie=0?C.slice(0,z):C,G=z>=0?C.slice(z+1):"in";return B=Xq.get(B)||sx,G=Zq.get(G)||N,Jq(G(B.apply(null,r.call(arguments,1))))};function Jq(C){return function(z){return z<=0?0:z>=1?1:C(z)}}function ux(C){return function(z){return 1-C(1-z)}}function fx(C){return function(z){return .5*(z<.5?C(2*z):2-C(2-2*z))}}function Kq(C){return C*C}function Qq(C){return C*C*C}function $q(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 jq(C){return function(z){return Math.pow(z,C)}}function eO(C){return 1-Math.cos(C*J)}function rO(C){return Math.pow(2,10*(C-1))}function tO(C){return 1-Math.sqrt(1-C*C)}function nO(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(G){return 1+C*Math.pow(2,-10*G)*Math.sin((G-B)*ar/z)}}function aO(C){return C||(C=1.70158),function(z){return z*z*((C+1)*z-C)}}function iO(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=oO;function oO(C,z){C=e.hcl(C),z=e.hcl(z);var B=C.h,G=C.c,W=C.l,Z=z.h-B,le=z.c-G,ie=z.l-W;return isNaN(le)&&(le=0,G=isNaN(G)?z.c:G),isNaN(Z)?(Z=0,B=isNaN(B)?z.h:B):Z>180?Z-=360:Z<-180&&(Z+=360),function(fe){return Ot(B+Z*fe,G+le*fe,W+ie*fe)+""}}e.interpolateHsl=lO;function lO(C,z){C=e.hsl(C),z=e.hsl(z);var B=C.h,G=C.s,W=C.l,Z=z.h-B,le=z.s-G,ie=z.l-W;return isNaN(le)&&(le=0,G=isNaN(G)?z.s:G),isNaN(Z)?(Z=0,B=isNaN(B)?z.h:B):Z>180?Z-=360:Z<-180&&(Z+=360),function(fe){return hn(B+Z*fe,G+le*fe,W+ie*fe)+""}}e.interpolateLab=sO;function sO(C,z){C=e.lab(C),z=e.lab(z);var B=C.l,G=C.a,W=C.b,Z=z.l-B,le=z.a-G,ie=z.b-W;return function(fe){return wa(B+Z*fe,G+le*fe,W+ie*fe)+""}}e.interpolateRound=cx;function cx(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 G=z.transform.baseVal.consolidate()}return new hx(G?G.matrix:fO)})(C)};function hx(C){var z=[C.a,C.b],B=[C.c,C.d],G=dx(z),W=vx(z,B),Z=dx(uO(B,z,-W))||0;z[0]*B[1]180?z+=360:z-C>180&&(C+=360),G.push({i:B.push(As(B)+"rotate(",null,")")-2,x:Xi(C,z)})):z&&B.push(As(B)+"rotate("+z+")")}function vO(C,z,B,G){C!==z?G.push({i:B.push(As(B)+"skewX(",null,")")-2,x:Xi(C,z)}):z&&B.push(As(B)+"skewX("+z+")")}function dO(C,z,B,G){if(C[0]!==z[0]||C[1]!==z[1]){var W=B.push(As(B)+"scale(",null,",",null,")");G.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(As(B)+"scale("+z+")")}function px(C,z){var B=[],G=[];return C=e.transform(C),z=e.transform(z),cO(C.translate,z.translate,B,G),hO(C.rotate,z.rotate,B,G),vO(C.skew,z.skew,B,G),dO(C.scale,z.scale,B,G),C=z=null,function(W){for(var Z=-1,le=G.length,ie;++Z0?Z=Ze:(B.c=null,B.t=NaN,B=null,z.end({type:"end",alpha:Z=0})):Ze>0&&(z.start({type:"start",alpha:Z=Ze}),B=rc(C.tick)),C):Z},C.start=function(){var Ze,or=Je.length,pr=rr.length,mr=G[0],gr=G[1],_r,wr;for(Ze=0;Ze=0;)Z.push(_e=be[fe]),_e.parent=ie,_e.depth=ie.depth+1;B&&(ie.value=0),ie.children=be}else B&&(ie.value=+B.call(G,ie,ie.depth)||0),delete ie.children;return Mi(W,function(Ie){var Fe,Je;C&&(Fe=Ie.children)&&Fe.sort(C),B&&(Je=Ie.parent)&&(Je.value+=Ie.value)}),le}return G.sort=function(W){return arguments.length?(C=W,G):C},G.children=function(W){return arguments.length?(z=W,G):z},G.value=function(W){return arguments.length?(B=W,G):B},G.revalue=function(W){return B&&(af(W,function(Z){Z.children&&(Z.value=0)}),Mi(W,function(Z){var le;Z.children||(Z.value=+B.call(G,Z,Z.depth)||0),(le=Z.parent)&&(le.value+=Z.value)})),W},G};function nf(C,z){return e.rebind(C,z,"sort","children","value"),C.nodes=C,C.links=EO,C}function af(C,z){for(var B=[C];(C=B.pop())!=null;)if(z(C),(W=C.children)&&(G=W.length))for(var G,W;--G>=0;)B.push(W[G])}function Mi(C,z){for(var B=[C],G=[];(C=B.pop())!=null;)if(G.push(C),(le=C.children)&&(Z=le.length))for(var W=-1,Z,le;++WW&&(W=ie),G.push(ie)}for(le=0;leG&&(B=z,G=W);return B}function NO(C){return C.reduce(zO,0)}function zO(C,z){return C+z[1]}e.layout.histogram=function(){var C=!0,z=Number,B=OO,G=qO;function W(Z,Fe){for(var ie=[],fe=Z.map(z,this),be=B.call(this,fe,Fe),_e=G.call(this,be,fe,Fe),Ie,Fe=-1,Je=fe.length,rr=_e.length-1,Oe=C?1:1/Je,Ge;++Fe0)for(Fe=-1;++Fe=be[0]&&Ge<=be[1]&&(Ie=ie[e.bisect(_e,Ge,1,rr)-1],Ie.y+=Oe,Ie.push(Z[Fe]));return ie}return W.value=function(Z){return arguments.length?(z=Z,W):z},W.range=function(Z){return arguments.length?(B=Wr(Z),W):B},W.bins=function(Z){return arguments.length?(G=typeof Z=="number"?function(le){return xx(le,Z)}:Wr(Z),W):G},W.frequency=function(Z){return arguments.length?(C=!!Z,W):C},W};function qO(C,z){return xx(C,Math.ceil(Math.log(z.length)/Math.LN2+1))}function xx(C,z){for(var B=-1,G=+C[0],W=(C[1]-G)/z,Z=[];++B<=z;)Z[B]=W*B+G;return Z}function OO(C){return[e.min(C),e.max(C)]}e.layout.pack=function(){var C=e.layout.hierarchy().sort(BO),z=0,B=[1,1],G;function W(Z,le){var ie=C.call(this,Z,le),fe=ie[0],be=B[0],_e=B[1],Ie=G==null?Math.sqrt:typeof G=="function"?G:function(){return G};if(fe.x=fe.y=0,Mi(fe,function(Je){Je.r=+Ie(Je.value)}),Mi(fe,wx),z){var Fe=z*(G?1:Math.max(2*fe.r/be,2*fe.r/_e))/2;Mi(fe,function(Je){Je.r+=Fe}),Mi(fe,wx),Mi(fe,function(Je){Je.r-=Fe})}return Mx(fe,be/2,_e/2,G?1:1/Math.max(2*fe.r/be,2*fe.r/_e)),ie}return W.size=function(Z){return arguments.length?(B=Z,W):B},W.radius=function(Z){return arguments.length?(G=Z==null||typeof Z=="function"?Z:+Z,W):G},W.padding=function(Z){return arguments.length?(z=+Z,W):z},nf(W,C)};function BO(C,z){return C.value-z.value}function Xd(C,z){var B=C._pack_next;C._pack_next=z,z._pack_prev=C,z._pack_next=B,B._pack_prev=z}function bx(C,z){C._pack_next=z,z._pack_prev=C}function _x(C,z){var B=z.x-C.x,G=z.y-C.y,W=C.r+z.r;return .999*W*W>B*B+G*G}function wx(C){if(!(z=C.children)||!(Fe=z.length))return;var z,B=1/0,G=-1/0,W=1/0,Z=-1/0,le,ie,fe,be,_e,Ie,Fe;function Je(Ze){B=Math.min(Ze.x-Ze.r,B),G=Math.max(Ze.x+Ze.r,G),W=Math.min(Ze.y-Ze.r,W),Z=Math.max(Ze.y+Ze.r,Z)}if(z.forEach(UO),le=z[0],le.x=-le.r,le.y=0,Je(le),Fe>1&&(ie=z[1],ie.x=ie.r,ie.y=0,Je(ie),Fe>2))for(fe=z[2],Tx(le,ie,fe),Je(fe),Xd(le,fe),le._pack_prev=fe,Xd(fe,ie),ie=le._pack_next,be=3;beGe.x&&(Ge=or),or.depth>We.depth&&(We=or)});var je=z(Oe,Ge)/2-Oe.x,tr=B[0]/(Ge.x+z(Ge,Oe)/2+je),Ze=B[1]/(We.depth||1);af(Je,function(or){or.x=(or.x+je)*tr,or.y=or.depth*Ze})}return Fe}function Z(_e){for(var Ie={A:null,children:[_e]},Fe=[Ie],Je;(Je=Fe.pop())!=null;)for(var rr=Je.children,Oe,Ge=0,We=rr.length;Ge0&&(VO(YO(Oe,_e,Fe),_e,or),We+=or,je+=or),tr+=Oe.m,We+=Je.m,Ze+=Ge.m,je+=rr.m;Oe&&!Jd(rr)&&(rr.t=Oe,rr.m+=tr-je),Je&&!Zd(Ge)&&(Ge.t=Je,Ge.m+=We-Ze,Fe=_e)}return Fe}function be(_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?(G=(B=_e)==null?be:null,W):G?null:B},W.nodeSize=function(_e){return arguments.length?(G=(B=_e)==null?null:be,W):G?B:null},nf(W,C)};function Ax(C,z){return C.parent==z.parent?1:2}function Zd(C){var z=C.children;return z.length?z[0]:C.t}function Jd(C){var z=C.children,B;return(B=z.length)?z[B-1]:C.t}function VO(C,z,B){var G=B/(z.i-C.i);z.c-=G,z.s+=B,C.c+=G,z.z+=B,z.m+=B}function GO(C){for(var z=0,B=0,G=C.children,W=G.length,Z;--W>=0;)Z=G[W],Z.z+=z,Z.m+=z,z+=Z.s+(B+=Z.c)}function YO(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=Ax,B=[1,1],G=!1;function W(Z,le){var ie=C.call(this,Z,le),fe=ie[0],be,_e=0;Mi(fe,function(Oe){var Ge=Oe.children;Ge&&Ge.length?(Oe.x=XO(Ge),Oe.y=WO(Ge)):(Oe.x=be?_e+=z(Oe,be):0,Oe.y=0,be=Oe)});var Ie=kx(fe),Fe=Sx(fe),Je=Ie.x-z(Ie,Fe)/2,rr=Fe.x+z(Fe,Ie)/2;return Mi(fe,G?function(Oe){Oe.x=(Oe.x-fe.x)*B[0],Oe.y=(fe.y-Oe.y)*B[1]}:function(Oe){Oe.x=(Oe.x-Je)/(rr-Je)*B[0],Oe.y=(1-(fe.y?Oe.y/fe.y:1))*B[1]}),ie}return W.separation=function(Z){return arguments.length?(z=Z,W):z},W.size=function(Z){return arguments.length?(G=(B=Z)==null,W):G?null:B},W.nodeSize=function(Z){return arguments.length?(G=(B=Z)!=null,W):G?B:null},nf(W,C)};function WO(C){return 1+e.max(C,function(z){return z.y})}function XO(C){return C.reduce(function(z,B){return z+B.x},0)/C.length}function kx(C){var z=C.children;return z&&z.length?kx(z[0]):C}function Sx(C){var z=C.children,B;return z&&(B=z.length)?Sx(z[B-1]):C}e.layout.treemap=function(){var C=e.layout.hierarchy(),z=Math.round,B=[1,1],G=null,W=Kd,Z=!1,le,ie="squarify",fe=.5*(1+Math.sqrt(5));function be(Oe,Ge){for(var We=-1,je=Oe.length,tr,Ze;++We0;)je.push(Ze=tr[gr-1]),je.area+=Ze.area,ie!=="squarify"||(pr=Fe(je,mr))<=or?(tr.pop(),or=pr):(je.area-=je.pop().area,Je(je,mr,We,!1),mr=Math.min(We.dx,We.dy),je.length=je.area=0,or=1/0);je.length&&(Je(je,mr,We,!0),je.length=je.area=0),Ge.forEach(_e)}}function Ie(Oe){var Ge=Oe.children;if(Ge&&Ge.length){var We=W(Oe),je=Ge.slice(),tr,Ze=[];for(be(je,We.dx*We.dy/Oe.value),Ze.area=0;tr=je.pop();)Ze.push(tr),Ze.area+=tr.area,tr.z!=null&&(Je(Ze,tr.z?We.dx:We.dy,We,!je.length),Ze.length=Ze.area=0);Ge.forEach(Ie)}}function Fe(Oe,Ge){for(var We=Oe.area,je,tr=0,Ze=1/0,or=-1,pr=Oe.length;++ortr&&(tr=je));return We*=We,Ge*=Ge,We?Math.max(Ge*tr*fe/We,We/(Ge*Ze*fe)):1/0}function Je(Oe,Ge,We,je){var tr=-1,Ze=Oe.length,or=We.x,pr=We.y,mr=Ge?z(Oe.area/Ge):0,gr;if(Ge==We.dx){for((je||mr>We.dy)&&(mr=We.dy);++trWe.dx)&&(mr=We.dx);++tr1);return C+z*G*Math.sqrt(-2*Math.log(Z)/Z)}},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?KO:ZO,be=G?gO:pO;return W=fe(C,z,be,B),Z=fe(z,C,be,pl),ie}function ie(fe){return W(fe)}return ie.invert=function(fe){return Z(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(cx)},ie.clamp=function(fe){return arguments.length?(G=fe,le()):G},ie.interpolate=function(fe){return arguments.length?(B=fe,le()):B},ie.ticks=function(fe){return jd(C,fe)},ie.tickFormat=function(fe,be){return d3_scale_linearTickFormat(C,fe,be)},ie.nice=function(fe){return Rx(C,fe),le()},ie.copy=function(){return Lx(C,z,B,G)},le()}function Dx(C,z){return e.rebind(C,z,"range","rangeRound","interpolate","clamp")}function Rx(C,z){return Qd(C,Ex($d(C,z)[2])),Qd(C,Ex($d(C,z)[2])),C}function $d(C,z){z==null&&(z=10);var B=sc(C),G=B[1]-B[0],W=Math.pow(10,Math.floor(Math.log(G/z)/Math.LN10)),Z=z/G*W;return Z<=.15?W*=10:Z<=.35?W*=5:Z<=.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,$d(C,z))}var QO={s:1,g:1,p:1,r:1,e:1};function Px(C){return-Math.floor(Math.log(C)/Math.LN10+.01)}function Jue(C,z){var B=Px(z[2]);return C in QO?Math.abs(B-Px(Math.max(y(z[0]),y(z[1]))))+ +(C!=="e"):B-(C==="%")*2}e.scale.log=function(){return Ix(e.scale.linear().domain([0,1]),10,!0,[1,10])};function Ix(C,z,B,G){function W(ie){return(B?Math.log(ie<0?0:ie):-Math.log(ie>0?0:-ie))/Math.log(z)}function Z(ie){return B?Math.pow(z,ie):-Math.pow(z,-ie)}function le(ie){return C(W(ie))}return le.invert=function(ie){return Z(C.invert(ie))},le.domain=function(ie){return arguments.length?(B=ie[0]>=0,C.domain((G=ie.map(Number)).map(W)),le):G},le.base=function(ie){return arguments.length?(z=+ie,C.domain(G.map(W)),le):z},le.nice=function(){var ie=Qd(G.map(W),B?Math:$O);return C.domain(ie),G=ie.map(Z),le},le.ticks=function(){var ie=sc(G),fe=[],be=ie[0],_e=ie[1],Ie=Math.floor(W(be)),Fe=Math.ceil(W(_e)),Je=z%1?2:z;if(isFinite(Fe-Ie)){if(B){for(;Ie0;rr--)fe.push(Z(Ie)*rr);for(Ie=0;fe[Ie]_e;Fe--);fe=fe.slice(Ie,Fe)}return fe},le.copy=function(){return Ix(C.copy(),z,B,G)},Dx(le,C)}var $O={floor:function(C){return-Math.ceil(-C)},ceil:function(C){return-Math.floor(-C)}};e.scale.pow=function(){return Fx(e.scale.linear(),1,[0,1])};function Fx(C,z,B){var G=fc(z),W=fc(1/z);function Z(le){return C(G(le))}return Z.invert=function(le){return W(C.invert(le))},Z.domain=function(le){return arguments.length?(C.domain((B=le.map(Number)).map(G)),Z):B},Z.ticks=function(le){return jd(B,le)},Z.tickFormat=function(le,ie){return d3_scale_linearTickFormat(B,le,ie)},Z.nice=function(le){return Z.domain(Rx(B,le))},Z.exponent=function(le){return arguments.length?(G=fc(z=le),W=fc(1/z),C.domain(B.map(G)),Z):z},Z.copy=function(){return Fx(C.copy(),z,B)},Dx(Z,C)}function fc(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 Nx([],{t:"range",a:[[]]})};function Nx(C,z){var B,G,W;function Z(ie){return G[((B.get(ie)||(z.t==="range"?B.set(ie,C.push(ie)):NaN))-1)%G.length]}function le(ie,fe){return e.range(C.length).map(function(be){return ie+fe*be})}return Z.domain=function(ie){if(!arguments.length)return C;C=[],B=new x;for(var fe=-1,be=ie.length,_e;++fe0?B[Z-1]:C[0],ZFe?0:1;if(_e=se)return fe(_e,rr)+(be?fe(be,1-rr):"")+"Z";var Oe,Ge,We,je,tr=0,Ze=0,or,pr,mr,gr,_r,wr,Or,Tr,Ir=[];if((je=(+le.apply(this,arguments)||0)/2)&&(We=G===cc?Math.sqrt(be*be+_e*_e):+G.apply(this,arguments),rr||(Ze*=-1),_e&&(Ze=fr(We/_e*Math.sin(je))),be&&(tr=fr(We/be*Math.sin(je)))),_e){or=_e*Math.cos(Ie+Ze),pr=_e*Math.sin(Ie+Ze),mr=_e*Math.cos(Fe-Ze),gr=_e*Math.sin(Fe-Ze);var st=Math.abs(Fe-Ie-2*Ze)<=Ke?0:1;if(Ze&&hc(or,pr,mr,gr)===rr^st){var Bt=(Ie+Fe)/2;or=_e*Math.cos(Bt),pr=_e*Math.sin(Bt),mr=gr=null}}else or=pr=0;if(be){_r=be*Math.cos(Fe-tr),wr=be*Math.sin(Fe-tr),Or=be*Math.cos(Ie+tr),Tr=be*Math.sin(Ie+tr);var vt=Math.abs(Ie-Fe+2*tr)<=Ke?0:1;if(tr&&hc(_r,wr,Or,Tr)===1-rr^vt){var hr=(Ie+Fe)/2;_r=be*Math.cos(hr),wr=be*Math.sin(hr),Or=Tr=null}}else _r=wr=0;if(Je>Re&&(Oe=Math.min(Math.abs(_e-be)/2,+B.apply(this,arguments)))>.001){Ge=be<_e^rr?0:1;var Br=Oe,Hr=Oe;if(Je0?0:1}function vc(C,z,B,G,W){var Z=C[0]-z[0],le=C[1]-z[1],ie=(W?G:-G)/Math.sqrt(Z*Z+le*le),fe=ie*le,be=-ie*Z,_e=C[0]+fe,Ie=C[1]+be,Fe=z[0]+fe,Je=z[1]+be,rr=(_e+Fe)/2,Oe=(Ie+Je)/2,Ge=Fe-_e,We=Je-Ie,je=Ge*Ge+We*We,tr=B-G,Ze=_e*Je-Fe*Ie,or=(We<0?-1:1)*Math.sqrt(Math.max(0,tr*tr*je-Ze*Ze)),pr=(Ze*We-Ge*or)/je,mr=(-Ze*Ge-We*or)/je,gr=(Ze*We+Ge*or)/je,_r=(-Ze*Ge+We*or)/je,wr=pr-rr,Or=mr-Oe,Tr=gr-rr,Ir=_r-Oe;return wr*wr+Or*Or>Tr*Tr+Ir*Ir&&(pr=gr,mr=_r),[[pr-fe,mr-be],[pr*B/tr,mr*B/tr]]}function Vx(){return!0}function Gx(C){var z=bs,B=Qu,G=Vx,W=Xa,Z=W.key,le=.7;function ie(fe){var be=[],_e=[],Ie=-1,Fe=fe.length,Je,rr=Wr(z),Oe=Wr(B);function Ge(){be.push("M",W(C(_e),le))}for(;++Ie1?C.join("L"):C+"Z"}function Yx(C){return C.join("L")+"Z"}function lB(C){for(var z=0,B=C.length,G=C[0],W=[G[0],",",G[1]];++z1&&W.push("H",G[0]),W.join("")}function rp(C){for(var z=0,B=C.length,G=C[0],W=[G[0],",",G[1]];++z1){ie=z[1],Z=C[fe],fe++,G+="C"+(W[0]+le[0])+","+(W[1]+le[1])+","+(Z[0]-ie[0])+","+(Z[1]-ie[1])+","+Z[0]+","+Z[1];for(var be=2;be9&&(Z=B*3/Math.sqrt(Z),le[ie]=Z*G,le[ie+1]=Z*W));for(ie=-1;++ie<=fe;)Z=(C[Math.min(fe,ie+1)][0]-C[Math.max(0,ie-1)][0])/(6*(1+le[ie]*le[ie])),z.push([Z||0,le[ie]*Z||0]);return z}function gB(C){return C.length<3?Xa(C):C[0]+dc(C,pB(C))}e.svg.line.radial=function(){var C=Gx(Jx);return C.radius=C.x,delete C.x,C.angle=C.y,delete C.y,C};function Jx(C){for(var z,B=-1,G=C.length,W,Z;++BKe)+",1 "+Ie}function be(_e,Ie,Fe,Je){return"Q 0,0 "+Je}return Z.radius=function(_e){return arguments.length?(B=Wr(_e),Z):B},Z.source=function(_e){return arguments.length?(C=Wr(_e),Z):C},Z.target=function(_e){return arguments.length?(z=Wr(_e),Z):z},Z.startAngle=function(_e){return arguments.length?(G=Wr(_e),Z):G},Z.endAngle=function(_e){return arguments.length?(W=Wr(_e),Z):W},Z};function yB(C){return C.radius}e.svg.diagonal=function(){var C=Qx,z=$x,B=jx;function G(W,Z){var le=C.call(this,W,Z),ie=z.call(this,W,Z),fe=(le.y+ie.y)/2,be=[le,{x:le.x,y:fe},{x:ie.x,y:fe},ie];return be=be.map(B),"M"+be[0]+"C"+be[1]+" "+be[2]+" "+be[3]}return G.source=function(W){return arguments.length?(C=Wr(W),G):C},G.target=function(W){return arguments.length?(z=Wr(W),G):z},G.projection=function(W){return arguments.length?(B=W,G):B},G};function jx(C){return[C.x,C.y]}e.svg.diagonal.radial=function(){var C=e.svg.diagonal(),z=jx,B=C.projection;return C.projection=function(G){return arguments.length?B(mB(z=G)):z},C};function mB(C){return function(){var z=C.apply(this,arguments),B=z[0],G=z[1]-J;return[B*Math.cos(G),B*Math.sin(G)]}}e.svg.symbol=function(){var C=bB,z=xB;function B(G,W){return(rb.get(C.call(this,G,W))||eb)(z.call(this,G,W))}return B.type=function(G){return arguments.length?(C=Wr(G),B):C},B.size=function(G){return arguments.length?(z=Wr(G),B):z},B};function xB(){return 64}function bB(){return"circle"}function eb(C){var z=Math.sqrt(C/Ke);return"M0,"+z+"A"+z+","+z+" 0 1,1 0,"+-z+"A"+z+","+z+" 0 1,1 0,"+z+"Z"}var rb=e.map({circle:eb,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*tb)),B=z*tb;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/pc),B=z*pc/2;return"M0,"+B+"L"+z+","+-B+" "+-z+","+-B+"Z"},"triangle-up":function(C){var z=Math.sqrt(C/pc),B=z*pc/2;return"M0,"+-B+"L"+z+","+B+" "+-z+","+B+"Z"}});e.svg.symbolTypes=rb.keys();var pc=Math.sqrt(3),tb=Math.tan(30*ae);re.transition=function(C){for(var z=yl||++ab,B=lp(C),G=[],W,Z,le=yc||{time:Date.now(),ease:$q,delay:0,duration:250},ie=-1,fe=this.length;++ie0;)Ie[--je].call(C,We);if(Ge>=1)return le.event&&le.event.end.call(C,C.__data__,z),--Z.count?delete Z[G]:delete C[B],1}le||(ie=W.time,fe=rc(Fe,0,ie),le=Z[G]={tween:new x,time:ie,timer:fe,delay:W.delay,duration:W.duration,ease:W.ease,index:z},W=null,++Z.count)}e.svg.axis=function(){var C=e.scale.linear(),z=ib,B=6,G=6,W=3,Z=[10],le=null,ie;function fe(be){be.each(function(){var _e=e.select(this),Ie=this.__chart__||C,Fe=this.__chart__=C.copy(),Je=le==null?Fe.ticks?Fe.ticks.apply(Fe,Z):Fe.domain():le,rr=ie==null?Fe.tickFormat?Fe.tickFormat.apply(Fe,Z):N:ie,Oe=_e.selectAll(".tick").data(Je,Fe),Ge=Oe.enter().insert("g",".domain").attr("class","tick").style("opacity",Re),We=e.transition(Oe.exit()).style("opacity",Re).remove(),je=e.transition(Oe.order()).style("opacity",1),tr=Math.max(B,0)+W,Ze,or=uc(Fe),pr=_e.selectAll(".domain").data([0]),mr=(pr.enter().append("path").attr("class","domain"),e.transition(pr));Ge.append("line"),Ge.append("text");var gr=Ge.select("line"),_r=je.select("line"),wr=Oe.select("text").text(rr),Or=Ge.select("text"),Tr=je.select("text"),Ir=z==="top"||z==="left"?-1:1,st,Bt,vt,hr;if(z==="bottom"||z==="top"?(Ze=MB,st="x",vt="y",Bt="x2",hr="y2",wr.attr("dy",Ir<0?"0em":".71em").style("text-anchor","middle"),mr.attr("d","M"+or[0]+","+Ir*G+"V0H"+or[1]+"V"+Ir*G)):(Ze=TB,st="y",vt="x",Bt="y2",hr="x2",wr.attr("dy",".32em").style("text-anchor",Ir<0?"end":"start"),mr.attr("d","M"+Ir*G+","+or[0]+"H0V"+or[1]+"H"+Ir*G)),gr.attr(hr,Ir*B),Or.attr(vt,Ir*tr),_r.attr(Bt,0).attr(hr,Ir*B),Tr.attr(st,0).attr(vt,Ir*tr),Fe.rangeBand){var Br=Fe,Hr=Br.rangeBand()/2;Ie=Fe=function(ut){return Br(ut)+Hr}}else Ie.rangeBand?Ie=Fe:We.call(Ze,Fe,Ie);Ge.call(Ze,Ie,Fe),je.call(Ze,Fe,Fe)})}return fe.scale=function(be){return arguments.length?(C=be,fe):C},fe.orient=function(be){return arguments.length?(z=be in wB?be+"":ib,fe):z},fe.ticks=function(){return arguments.length?(Z=t(arguments),fe):Z},fe.tickValues=function(be){return arguments.length?(le=be,fe):le},fe.tickFormat=function(be){return arguments.length?(ie=be,fe):ie},fe.tickSize=function(be){var _e=arguments.length;return _e?(B=+be,G=+arguments[_e-1],fe):B},fe.innerTickSize=function(be){return arguments.length?(B=+be,fe):B},fe.outerTickSize=function(be){return arguments.length?(G=+be,fe):G},fe.tickPadding=function(be){return arguments.length?(W=+be,fe):W},fe.tickSubdivide=function(){return arguments.length&&fe},fe};var ib="bottom",wB={top:1,right:1,bottom:1,left:1};function MB(C,z,B){C.attr("transform",function(G){var W=z(G);return"translate("+(isFinite(W)?W:B(G))+",0)"})}function TB(C,z,B){C.attr("transform",function(G){var W=z(G);return"translate(0,"+(isFinite(W)?W:B(G))+")"})}e.svg.brush=function(){var C=j(_e,"brushstart","brush","brushend"),z=null,B=null,G=[0,0],W=[0,0],Z,le,ie=!0,fe=!0,be=sp[0];function _e(Oe){Oe.each(function(){var Ge=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),We=Ge.selectAll(".background").data([0]);We.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ge.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var je=Ge.selectAll(".resize").data(be,N);je.exit().remove(),je.enter().append("g").attr("class",function(pr){return"resize "+pr}).style("cursor",function(pr){return AB[pr]}).append("rect").attr("x",function(pr){return/[ew]$/.test(pr)?-3:null}).attr("y",function(pr){return/^[ns]/.test(pr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),je.style("display",_e.empty()?"none":null);var tr=e.transition(Ge),Ze=e.transition(We),or;z&&(or=uc(z),Ze.attr("x",or[0]).attr("width",or[1]-or[0]),Fe(tr)),B&&(or=uc(B),Ze.attr("y",or[0]).attr("height",or[1]-or[0]),Je(tr)),Ie(tr)})}_e.event=function(Oe){Oe.each(function(){var Ge=C.of(this,arguments),We={x:G,y:W,i:Z,j:le},je=this.__chart__||We;this.__chart__=We,yl?e.select(this).transition().each("start.brush",function(){Z=je.i,le=je.j,G=je.x,W=je.y,Ge({type:"brushstart"})}).tween("brush:brush",function(){var tr=lc(G,We.x),Ze=lc(W,We.y);return Z=le=null,function(or){G=We.x=tr(or),W=We.y=Ze(or),Ge({type:"brush",mode:"resize"})}}).each("end.brush",function(){Z=We.i,le=We.j,Ge({type:"brush",mode:"resize"}),Ge({type:"brushend"})}):(Ge({type:"brushstart"}),Ge({type:"brush",mode:"resize"}),Ge({type:"brushend"}))})};function Ie(Oe){Oe.selectAll(".resize").attr("transform",function(Ge){return"translate("+G[+/e$/.test(Ge)]+","+W[+/^s/.test(Ge)]+")"})}function Fe(Oe){Oe.select(".extent").attr("x",G[0]),Oe.selectAll(".extent,.n>rect,.s>rect").attr("width",G[1]-G[0])}function Je(Oe){Oe.select(".extent").attr("y",W[0]),Oe.selectAll(".extent,.e>rect,.w>rect").attr("height",W[1]-W[0])}function rr(){var Oe=this,Ge=e.select(e.event.target),We=C.of(Oe,arguments),je=e.select(Oe),tr=Ge.datum(),Ze=!/^(n|s)$/.test(tr)&&z,or=!/^(e|w)$/.test(tr)&&B,pr=Ge.classed("extent"),mr=Ve(Oe),gr,_r=e.mouse(Oe),wr,Or=e.select(o(Oe)).on("keydown.brush",st).on("keyup.brush",Bt);if(e.event.changedTouches?Or.on("touchmove.brush",vt).on("touchend.brush",Br):Or.on("mousemove.brush",vt).on("mouseup.brush",Br),je.interrupt().selectAll("*").interrupt(),pr)_r[0]=G[0]-_r[0],_r[1]=W[0]-_r[1];else if(tr){var Tr=+/w$/.test(tr),Ir=+/^n/.test(tr);wr=[G[1-Tr]-_r[0],W[1-Ir]-_r[1]],_r[0]=G[Tr],_r[1]=W[Ir]}else e.event.altKey&&(gr=_r.slice());je.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Ge.style("cursor")),We({type:"brushstart"}),vt();function st(){e.event.keyCode==32&&(pr||(gr=null,_r[0]-=G[1],_r[1]-=W[1],pr=2),X())}function Bt(){e.event.keyCode==32&&pr==2&&(_r[0]+=G[1],_r[1]+=W[1],pr=0,X())}function vt(){var Hr=e.mouse(Oe),ut=!1;wr&&(Hr[0]+=wr[0],Hr[1]+=wr[1]),pr||(e.event.altKey?(gr||(gr=[(G[0]+G[1])/2,(W[0]+W[1])/2]),_r[0]=G[+(Hr[0]{(function(e,r){typeof Tc=="object"&&typeof hb!="undefined"?r(Tc):(e=e||self,r(e.d3=e.d3||{}))})(Tc,function(e){"use strict";var r=new Date,t=new Date;function n(ge,we,Te,me){function ye(pe){return ge(pe=arguments.length===0?new Date:new Date(+pe)),pe}return ye.floor=function(pe){return ge(pe=new Date(+pe)),pe},ye.ceil=function(pe){return ge(pe=new Date(pe-1)),we(pe,1),ge(pe),pe},ye.round=function(pe){var ce=ye(pe),xe=ye.ceil(pe);return pe-ce0))return Le;do Le.push(qe=new Date(+pe)),we(pe,xe),ge(pe);while(qe=ce)for(;ge(ce),!pe(ce);)ce.setTime(ce-1)},function(ce,xe){if(ce>=ce)if(xe<0)for(;++xe<=0;)for(;we(ce,-1),!pe(ce););else for(;--xe>=0;)for(;we(ce,1),!pe(ce););})},Te&&(ye.count=function(pe,ce){return r.setTime(+pe),t.setTime(+ce),ge(r),ge(t),Math.floor(Te(r,t))},ye.every=function(pe){return pe=Math.floor(pe),!isFinite(pe)||!(pe>0)?null:pe>1?ye.filter(me?function(ce){return me(ce)%pe===0}:function(ce){return ye.count(0,ce)%pe===0}):ye}),ye}var a=n(function(){},function(ge,we){ge.setTime(+ge+we)},function(ge,we){return we-ge});a.every=function(ge){return ge=Math.floor(ge),!isFinite(ge)||!(ge>0)?null:ge>1?n(function(we){we.setTime(Math.floor(we/ge)*ge)},function(we,Te){we.setTime(+we+Te*ge)},function(we,Te){return(Te-we)/ge}):a};var o=a.range,i=1e3,l=6e4,u=36e5,s=864e5,f=6048e5,h=n(function(ge){ge.setTime(ge-ge.getMilliseconds())},function(ge,we){ge.setTime(+ge+we*i)},function(ge,we){return(we-ge)/i},function(ge){return ge.getUTCSeconds()}),p=h.range,b=n(function(ge){ge.setTime(ge-ge.getMilliseconds()-ge.getSeconds()*i)},function(ge,we){ge.setTime(+ge+we*l)},function(ge,we){return(we-ge)/l},function(ge){return ge.getMinutes()}),m=b.range,w=n(function(ge){ge.setTime(ge-ge.getMilliseconds()-ge.getSeconds()*i-ge.getMinutes()*l)},function(ge,we){ge.setTime(+ge+we*u)},function(ge,we){return(we-ge)/u},function(ge){return ge.getHours()}),T=w.range,y=n(function(ge){ge.setHours(0,0,0,0)},function(ge,we){ge.setDate(ge.getDate()+we)},function(ge,we){return(we-ge-(we.getTimezoneOffset()-ge.getTimezoneOffset())*l)/s},function(ge){return ge.getDate()-1}),k=y.range;function S(ge){return n(function(we){we.setDate(we.getDate()-(we.getDay()+7-ge)%7),we.setHours(0,0,0,0)},function(we,Te){we.setDate(we.getDate()+Te*7)},function(we,Te){return(Te-we-(Te.getTimezoneOffset()-we.getTimezoneOffset())*l)/f})}var x=S(0),M=S(1),d=S(2),_=S(3),g=S(4),c=S(5),A=S(6),v=x.range,D=M.range,E=d.range,R=_.range,N=g.range,F=c.range,I=A.range,L=n(function(ge){ge.setDate(1),ge.setHours(0,0,0,0)},function(ge,we){ge.setMonth(ge.getMonth()+we)},function(ge,we){return we.getMonth()-ge.getMonth()+(we.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,we){ge.setFullYear(ge.getFullYear()+we)},function(ge,we){return we.getFullYear()-ge.getFullYear()},function(ge){return ge.getFullYear()});O.every=function(ge){return!isFinite(ge=Math.floor(ge))||!(ge>0)?null:n(function(we){we.setFullYear(Math.floor(we.getFullYear()/ge)*ge),we.setMonth(0,1),we.setHours(0,0,0,0)},function(we,Te){we.setFullYear(we.getFullYear()+Te*ge)})};var U=O.range,X=n(function(ge){ge.setUTCSeconds(0,0)},function(ge,we){ge.setTime(+ge+we*l)},function(ge,we){return(we-ge)/l},function(ge){return ge.getUTCMinutes()}),$=X.range,j=n(function(ge){ge.setUTCMinutes(0,0,0)},function(ge,we){ge.setTime(+ge+we*u)},function(ge,we){return(we-ge)/u},function(ge){return ge.getUTCHours()}),Y=j.range,q=n(function(ge){ge.setUTCHours(0,0,0,0)},function(ge,we){ge.setUTCDate(ge.getUTCDate()+we)},function(ge,we){return(we-ge)/s},function(ge){return ge.getUTCDate()-1}),K=q.range;function ne(ge){return n(function(we){we.setUTCDate(we.getUTCDate()-(we.getUTCDay()+7-ge)%7),we.setUTCHours(0,0,0,0)},function(we,Te){we.setUTCDate(we.getUTCDate()+Te*7)},function(we,Te){return(Te-we)/f})}var Q=ne(0),oe=ne(1),re=ne(2),H=ne(3),ee=ne(4),V=ne(5),te=ne(6),ue=Q.range,ve=oe.range,ke=re.range,Se=H.range,he=ee.range,Ae=V.range,Ce=te.range,Pe=n(function(ge){ge.setUTCDate(1),ge.setUTCHours(0,0,0,0)},function(ge,we){ge.setUTCMonth(ge.getUTCMonth()+we)},function(ge,we){return we.getUTCMonth()-ge.getUTCMonth()+(we.getUTCFullYear()-ge.getUTCFullYear())*12},function(ge){return ge.getUTCMonth()}),Ee=Pe.range,Ne=n(function(ge){ge.setUTCMonth(0,1),ge.setUTCHours(0,0,0,0)},function(ge,we){ge.setUTCFullYear(ge.getUTCFullYear()+we)},function(ge,we){return we.getUTCFullYear()-ge.getUTCFullYear()},function(ge){return ge.getUTCFullYear()});Ne.every=function(ge){return!isFinite(ge=Math.floor(ge))||!(ge>0)?null:n(function(we){we.setUTCFullYear(Math.floor(we.getUTCFullYear()/ge)*ge),we.setUTCMonth(0,1),we.setUTCHours(0,0,0,0)},function(we,Te){we.setUTCFullYear(we.getUTCFullYear()+Te*ge)})};var Ue=Ne.range;e.timeDay=y,e.timeDays=k,e.timeFriday=c,e.timeFridays=F,e.timeHour=w,e.timeHours=T,e.timeInterval=n,e.timeMillisecond=a,e.timeMilliseconds=o,e.timeMinute=b,e.timeMinutes=m,e.timeMonday=M,e.timeMondays=D,e.timeMonth=L,e.timeMonths=P,e.timeSaturday=A,e.timeSaturdays=I,e.timeSecond=h,e.timeSeconds=p,e.timeSunday=x,e.timeSundays=v,e.timeThursday=g,e.timeThursdays=N,e.timeTuesday=d,e.timeTuesdays=E,e.timeWednesday=_,e.timeWednesdays=R,e.timeWeek=x,e.timeWeeks=v,e.timeYear=O,e.timeYears=U,e.utcDay=q,e.utcDays=K,e.utcFriday=V,e.utcFridays=Ae,e.utcHour=j,e.utcHours=Y,e.utcMillisecond=a,e.utcMilliseconds=o,e.utcMinute=X,e.utcMinutes=$,e.utcMonday=oe,e.utcMondays=ve,e.utcMonth=Pe,e.utcMonths=Ee,e.utcSaturday=te,e.utcSaturdays=Ce,e.utcSecond=h,e.utcSeconds=p,e.utcSunday=Q,e.utcSundays=ue,e.utcThursday=ee,e.utcThursdays=he,e.utcTuesday=re,e.utcTuesdays=ke,e.utcWednesday=H,e.utcWednesdays=Se,e.utcWeek=Q,e.utcWeeks=ue,e.utcYear=Ne,e.utcYears=Ue,Object.defineProperty(e,"__esModule",{value:!0})})});var Ss=de((Ac,vb)=>{(function(e,r){typeof Ac=="object"&&typeof vb!="undefined"?r(Ac,up()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(Ac,function(e,r){"use strict";function t(Me){if(0<=Me.y&&Me.y<100){var Re=new Date(-1,Me.m,Me.d,Me.H,Me.M,Me.S,Me.L);return Re.setFullYear(Me.y),Re}return new Date(Me.y,Me.m,Me.d,Me.H,Me.M,Me.S,Me.L)}function n(Me){if(0<=Me.y&&Me.y<100){var Re=new Date(Date.UTC(-1,Me.m,Me.d,Me.H,Me.M,Me.S,Me.L));return Re.setUTCFullYear(Me.y),Re}return new Date(Date.UTC(Me.y,Me.m,Me.d,Me.H,Me.M,Me.S,Me.L))}function a(Me,Re,Qe){return{y:Me,m:Re,d:Qe,H:0,M:0,S:0,L:0}}function o(Me){var Re=Me.dateTime,Qe=Me.date,Ke=Me.time,ar=Me.periods,se=Me.days,J=Me.shortDays,ae=Me.months,De=Me.shortMonths,He=p(ar),er=b(ar),nr=p(se),fr=b(se),br=p(J),Sr=b(J),Mr=p(ae),Ar=b(ae),ft=p(De),sr=b(De),Pr={a:ha,A:Qn,b:In,B:wa,c:null,d:L,e:L,f:$,H:P,I:O,j:U,L:X,m:j,M:Y,p:bi,q:Gi,Q:ce,s:xe,S:q,u:K,U:ne,V:Q,w:oe,W:re,x:null,X:null,y:H,Y:ee,Z:V,"%":pe},$r={a:Yi,A:Wi,b:tn,B:xo,c:null,d:te,e:te,f:he,H:ue,I:ve,j:ke,L:Se,m:Ae,M:Ce,p:_i,q:wi,Q:ce,s:xe,S:Pe,u:Ee,U:Ne,V:Ue,w:ge,W:we,x:null,X:null,y:Te,Y:me,Z:ye,"%":pe},Fr={a:hn,A:Et,b:Tn,B:Ot,c:bt,d:g,e:g,f:R,H:A,I:A,j:c,L:E,m:_,M:v,p:jr,q:d,Q:F,s:I,S:D,u:w,U:T,V:y,w:m,W:k,x:gt,X:Ft,y:x,Y:S,Z:M,"%":N};Pr.x=Gr(Qe,Pr),Pr.X=Gr(Ke,Pr),Pr.c=Gr(Re,Pr),$r.x=Gr(Qe,$r),$r.X=Gr(Ke,$r),$r.c=Gr(Re,$r);function Gr(kr,at){return function(ct){var yr=[],yn=-1,_t=0,mn=kr.length,Wr,Wa,vl;for(ct instanceof Date||(ct=new Date(+ct));++yn53)return null;"w"in yr||(yr.w=1),"Z"in yr?(_t=n(a(yr.y,0,1)),mn=_t.getUTCDay(),_t=mn>4||mn===0?r.utcMonday.ceil(_t):r.utcMonday(_t),_t=r.utcDay.offset(_t,(yr.V-1)*7),yr.y=_t.getUTCFullYear(),yr.m=_t.getUTCMonth(),yr.d=_t.getUTCDate()+(yr.w+6)%7):(_t=t(a(yr.y,0,1)),mn=_t.getDay(),_t=mn>4||mn===0?r.timeMonday.ceil(_t):r.timeMonday(_t),_t=r.timeDay.offset(_t,(yr.V-1)*7),yr.y=_t.getFullYear(),yr.m=_t.getMonth(),yr.d=_t.getDate()+(yr.w+6)%7)}else("W"in yr||"U"in yr)&&("w"in yr||(yr.w="u"in yr?yr.u%7:"W"in yr?1:0),mn="Z"in yr?n(a(yr.y,0,1)).getUTCDay():t(a(yr.y,0,1)).getDay(),yr.m=0,yr.d="W"in yr?(yr.w+6)%7+yr.W*7-(mn+5)%7:yr.w+yr.U*7-(mn+6)%7);return"Z"in yr?(yr.H+=yr.Z/100|0,yr.M+=yr.Z%100,n(yr)):t(yr)}}function Rr(kr,at,ct,yr){for(var yn=0,_t=at.length,mn=ct.length,Wr,Wa;yn<_t;){if(yr>=mn)return-1;if(Wr=at.charCodeAt(yn++),Wr===37){if(Wr=at.charAt(yn++),Wa=Fr[Wr in i?at.charAt(yn++):Wr],!Wa||(yr=Wa(kr,ct,yr))<0)return-1}else if(Wr!=ct.charCodeAt(yr++))return-1}return yr}function jr(kr,at,ct){var yr=He.exec(at.slice(ct));return yr?(kr.p=er[yr[0].toLowerCase()],ct+yr[0].length):-1}function hn(kr,at,ct){var yr=br.exec(at.slice(ct));return yr?(kr.w=Sr[yr[0].toLowerCase()],ct+yr[0].length):-1}function Et(kr,at,ct){var yr=nr.exec(at.slice(ct));return yr?(kr.w=fr[yr[0].toLowerCase()],ct+yr[0].length):-1}function Tn(kr,at,ct){var yr=ft.exec(at.slice(ct));return yr?(kr.m=sr[yr[0].toLowerCase()],ct+yr[0].length):-1}function Ot(kr,at,ct){var yr=Mr.exec(at.slice(ct));return yr?(kr.m=Ar[yr[0].toLowerCase()],ct+yr[0].length):-1}function bt(kr,at,ct){return Rr(kr,Re,at,ct)}function gt(kr,at,ct){return Rr(kr,Qe,at,ct)}function Ft(kr,at,ct){return Rr(kr,Ke,at,ct)}function ha(kr){return J[kr.getDay()]}function Qn(kr){return se[kr.getDay()]}function In(kr){return De[kr.getMonth()]}function wa(kr){return ae[kr.getMonth()]}function bi(kr){return ar[+(kr.getHours()>=12)]}function Gi(kr){return 1+~~(kr.getMonth()/3)}function Yi(kr){return J[kr.getUTCDay()]}function Wi(kr){return se[kr.getUTCDay()]}function tn(kr){return De[kr.getUTCMonth()]}function xo(kr){return ae[kr.getUTCMonth()]}function _i(kr){return ar[+(kr.getUTCHours()>=12)]}function wi(kr){return 1+~~(kr.getUTCMonth()/3)}return{format:function(kr){var at=Gr(kr+="",Pr);return at.toString=function(){return kr},at},parse:function(kr){var at=pt(kr+="",!1);return at.toString=function(){return kr},at},utcFormat:function(kr){var at=Gr(kr+="",$r);return at.toString=function(){return kr},at},utcParse:function(kr){var at=pt(kr+="",!0);return at.toString=function(){return kr},at}}}var i={"-":"",_:" ",0:"0"},l=/^\s*\d+/,u=/^%/,s=/[\\^$*+?|[\]().{}]/g;function f(Me,Re,Qe){var Ke=Me<0?"-":"",ar=(Ke?-Me:Me)+"",se=ar.length;return Ke+(se68?1900:2e3),Qe+Ke[0].length):-1}function M(Me,Re,Qe){var Ke=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Re.slice(Qe,Qe+6));return Ke?(Me.Z=Ke[1]?0:-(Ke[2]+(Ke[3]||"00")),Qe+Ke[0].length):-1}function d(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+1));return Ke?(Me.q=Ke[0]*3-3,Qe+Ke[0].length):-1}function _(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+2));return Ke?(Me.m=Ke[0]-1,Qe+Ke[0].length):-1}function g(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+2));return Ke?(Me.d=+Ke[0],Qe+Ke[0].length):-1}function c(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+3));return Ke?(Me.m=0,Me.d=+Ke[0],Qe+Ke[0].length):-1}function A(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+2));return Ke?(Me.H=+Ke[0],Qe+Ke[0].length):-1}function v(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+2));return Ke?(Me.M=+Ke[0],Qe+Ke[0].length):-1}function D(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+2));return Ke?(Me.S=+Ke[0],Qe+Ke[0].length):-1}function E(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+3));return Ke?(Me.L=+Ke[0],Qe+Ke[0].length):-1}function R(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe,Qe+6));return Ke?(Me.L=Math.floor(Ke[0]/1e3),Qe+Ke[0].length):-1}function N(Me,Re,Qe){var Ke=u.exec(Re.slice(Qe,Qe+1));return Ke?Qe+Ke[0].length:-1}function F(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe));return Ke?(Me.Q=+Ke[0],Qe+Ke[0].length):-1}function I(Me,Re,Qe){var Ke=l.exec(Re.slice(Qe));return Ke?(Me.s=+Ke[0],Qe+Ke[0].length):-1}function L(Me,Re){return f(Me.getDate(),Re,2)}function P(Me,Re){return f(Me.getHours(),Re,2)}function O(Me,Re){return f(Me.getHours()%12||12,Re,2)}function U(Me,Re){return f(1+r.timeDay.count(r.timeYear(Me),Me),Re,3)}function X(Me,Re){return f(Me.getMilliseconds(),Re,3)}function $(Me,Re){return X(Me,Re)+"000"}function j(Me,Re){return f(Me.getMonth()+1,Re,2)}function Y(Me,Re){return f(Me.getMinutes(),Re,2)}function q(Me,Re){return f(Me.getSeconds(),Re,2)}function K(Me){var Re=Me.getDay();return Re===0?7:Re}function ne(Me,Re){return f(r.timeSunday.count(r.timeYear(Me)-1,Me),Re,2)}function Q(Me,Re){var Qe=Me.getDay();return Me=Qe>=4||Qe===0?r.timeThursday(Me):r.timeThursday.ceil(Me),f(r.timeThursday.count(r.timeYear(Me),Me)+(r.timeYear(Me).getDay()===4),Re,2)}function oe(Me){return Me.getDay()}function re(Me,Re){return f(r.timeMonday.count(r.timeYear(Me)-1,Me),Re,2)}function H(Me,Re){return f(Me.getFullYear()%100,Re,2)}function ee(Me,Re){return f(Me.getFullYear()%1e4,Re,4)}function V(Me){var Re=Me.getTimezoneOffset();return(Re>0?"-":(Re*=-1,"+"))+f(Re/60|0,"0",2)+f(Re%60,"0",2)}function te(Me,Re){return f(Me.getUTCDate(),Re,2)}function ue(Me,Re){return f(Me.getUTCHours(),Re,2)}function ve(Me,Re){return f(Me.getUTCHours()%12||12,Re,2)}function ke(Me,Re){return f(1+r.utcDay.count(r.utcYear(Me),Me),Re,3)}function Se(Me,Re){return f(Me.getUTCMilliseconds(),Re,3)}function he(Me,Re){return Se(Me,Re)+"000"}function Ae(Me,Re){return f(Me.getUTCMonth()+1,Re,2)}function Ce(Me,Re){return f(Me.getUTCMinutes(),Re,2)}function Pe(Me,Re){return f(Me.getUTCSeconds(),Re,2)}function Ee(Me){var Re=Me.getUTCDay();return Re===0?7:Re}function Ne(Me,Re){return f(r.utcSunday.count(r.utcYear(Me)-1,Me),Re,2)}function Ue(Me,Re){var Qe=Me.getUTCDay();return Me=Qe>=4||Qe===0?r.utcThursday(Me):r.utcThursday.ceil(Me),f(r.utcThursday.count(r.utcYear(Me),Me)+(r.utcYear(Me).getUTCDay()===4),Re,2)}function ge(Me){return Me.getUTCDay()}function we(Me,Re){return f(r.utcMonday.count(r.utcYear(Me)-1,Me),Re,2)}function Te(Me,Re){return f(Me.getUTCFullYear()%100,Re,2)}function me(Me,Re){return f(Me.getUTCFullYear()%1e4,Re,4)}function ye(){return"+0000"}function pe(){return"%"}function ce(Me){return+Me}function xe(Me){return Math.floor(+Me/1e3)}var Le;qe({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 qe(Me){return Le=o(Me),e.timeFormat=Le.format,e.timeParse=Le.parse,e.utcFormat=Le.utcFormat,e.utcParse=Le.utcParse,Le}var ze="%Y-%m-%dT%H:%M:%S.%LZ";function $e(Me){return Me.toISOString()}var Ve=Date.prototype.toISOString?$e:e.utcFormat(ze);function Be(Me){var Re=new Date(Me);return isNaN(Re)?null:Re}var Ye=+new Date("2000-01-01T00:00:00.000Z")?Be:e.utcParse(ze);e.isoFormat=Ve,e.isoParse=Ye,e.timeFormatDefaultLocale=qe,e.timeFormatLocale=o,Object.defineProperty(e,"__esModule",{value:!0})})});var fp=de((kc,db)=>{(function(e,r){typeof kc=="object"&&typeof db!="undefined"?r(kc):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(kc,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 v=c.length,D=[],E=0,R=_[0],N=0;v>0&&R>0&&(N+R+1>A&&(R=Math.max(1,A-N)),D.push(c.substring(v-=R,v+R)),!((N+=R+1)>A));)R=_[E=(E+1)%_.length];return D.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,v;c0&&(A=0);break}return A>0?_.slice(0,A)+_.slice(v+1):_}var f;function h(_,g){var c=t(_,g);if(!c)return _+"";var A=c[0],v=c[1],D=v-(f=Math.max(-8,Math.min(8,Math.floor(v/3)))*3)+1,E=A.length;return D===E?A:D>E?A+new Array(D-E+1).join("0"):D>0?A.slice(0,D)+"."+A.slice(D):"0."+new Array(1-D).join("0")+t(_,Math.max(0,g+D-1))[0]}function p(_,g){var c=t(_,g);if(!c)return _+"";var A=c[0],v=c[1];return v<0?"0."+new Array(-v).join("0")+A:A.length>v+1?A.slice(0,v+1)+"."+A.slice(v+1):A+new Array(v-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:h,X:function(_){return Math.round(_).toString(16).toUpperCase()},x:function(_){return Math.round(_).toString(16)}};function m(_){return _}var w=Array.prototype.map,T=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function y(_){var g=_.grouping===void 0||_.thousands===void 0?m:a(w.call(_.grouping,Number),_.thousands+""),c=_.currency===void 0?"":_.currency[0]+"",A=_.currency===void 0?"":_.currency[1]+"",v=_.decimal===void 0?".":_.decimal+"",D=_.numerals===void 0?m:o(w.call(_.numerals,String)),E=_.percent===void 0?"%":_.percent+"",R=_.minus===void 0?"-":_.minus+"",N=_.nan===void 0?"NaN":_.nan+"";function F(L){L=l(L);var P=L.fill,O=L.align,U=L.sign,X=L.symbol,$=L.zero,j=L.width,Y=L.comma,q=L.precision,K=L.trim,ne=L.type;ne==="n"?(Y=!0,ne="g"):b[ne]||(q===void 0&&(q=12),K=!0,ne="g"),($||P==="0"&&O==="=")&&($=!0,P="0",O="=");var Q=X==="$"?c:X==="#"&&/[boxX]/.test(ne)?"0"+ne.toLowerCase():"",oe=X==="$"?A:/[%p]/.test(ne)?E:"",re=b[ne],H=/[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 ee(V){var te=Q,ue=oe,ve,ke,Se;if(ne==="c")ue=re(V)+ue,V="";else{V=+V;var he=V<0||1/V<0;if(V=isNaN(V)?N:re(Math.abs(V),q),K&&(V=s(V)),he&&+V==0&&U!=="+"&&(he=!1),te=(he?U==="("?U:R:U==="-"||U==="("?"":U)+te,ue=(ne==="s"?T[8+f/3]:"")+ue+(he&&U==="("?")":""),H){for(ve=-1,ke=V.length;++veSe||Se>57){ue=(Se===46?v+V.slice(ve+1):V.slice(ve))+ue,V=V.slice(0,ve);break}}}Y&&!$&&(V=g(V,1/0));var Ae=te.length+V.length+ue.length,Ce=Ae>1)+te+V+ue+Ce.slice(Ae);break;default:V=Ce+te+V+ue;break}return D(V)}return ee.toString=function(){return L+""},ee}function I(L,P){var O=F((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),$=T[8+U/3];return function(j){return O(X*j)+$}}return{format:F,formatPrefix:I}}var k;S({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function S(_){return k=y(_),e.format=k.format,e.formatPrefix=k.formatPrefix,k}function x(_){return Math.max(0,-n(Math.abs(_)))}function M(_,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=y,e.formatSpecifier=l,e.precisionFixed=x,e.precisionPrefix=M,e.precisionRound=d,Object.defineProperty(e,"__esModule",{value:!0})})});var gb=de((jue,pb)=>{"use strict";pb.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 nt=de((efe,yb)=>{"use strict";var IB=gb();yb.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&IB(t))return!1}else if(r!=="number")return!1;return e-e<1}});var nn=de((rfe,mb)=>{"use strict";mb.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 cp=de((Sc,xb)=>{(function(e,r){typeof Sc=="object"&&typeof xb!="undefined"?r(Sc):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(Sc,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,h,p,b,m;i[i.length-1]==="="&&(l--,i[i.length-2]==="="&&l--);var w=new ArrayBuffer(l),T=new Uint8Array(w);for(s=0;s>4,T[f++]=(p&15)<<4|b>>2,T[f++]=(b&3)<<6|m&63;return w};e.decode=o,e.encode=a,Object.defineProperty(e,"__esModule",{value:!0})})});var wo=de((tfe,bb)=>{"use strict";bb.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=de(Ja=>{"use strict";var FB=cp().decode,NB=wo(),hp=Array.isArray,zB=ArrayBuffer,qB=DataView;function _b(e){return zB.isView(e)&&!(e instanceof qB)}Ja.isTypedArray=_b;function Cc(e){return hp(e)||_b(e)}Ja.isArrayOrTypedArray=Cc;function OB(e){return!Cc(e[0])}Ja.isArray1D=OB;Ja.ensureArray=function(e,r){return hp(e)||(e=[]),e.length=r,e};var vn={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};vn.uint8c=vn.u1c;vn.uint8=vn.u1;vn.int8=vn.i1;vn.uint16=vn.u2;vn.int16=vn.i2;vn.uint32=vn.u4;vn.int32=vn.i4;vn.float32=vn.f4;vn.float64=vn.f8;function vp(e){return e.constructor===ArrayBuffer}Ja.isArrayBuffer=vp;Ja.decodeTypedArraySpec=function(e){var r=[],t=BB(e),n=t.dtype,a=vn[n];if(!a)throw new Error('Error in dtype: "'+n+'"');var o=a.BYTES_PER_ELEMENT,i=t.bdata;vp(i)||(i=FB(i));var l=t.shape===void 0?[i.byteLength/o]:(""+t.shape).split(",");l.reverse();var u=l.length,s,f,h=+l[0],p=o*h,b=0;if(u===1)r=new a(i);else if(u===2)for(s=+l[1],f=0;f{"use strict";var Mb=nt(),pp=ea().isArrayOrTypedArray;Sb.exports=function(r,t){if(Mb(t))t=String(t);else if(typeof t!="string"||t.slice(-4)==="[-1]")throw"bad property string";var n=t.split("."),a,o,i,l;for(l=0;l{"use strict";var Cs=Ec(),YB=/^\w*$/,WB=0,Cb=1,Lc=2,Eb=3,_l=4;Lb.exports=function(r,t,n,a){n=n||"name",a=a||"value";var o,i,l,u={};t&&t.length?(l=Cs(r,t),i=l.get()):i=r,t=t||"";var s={};if(i)for(o=0;o2)return u[b]=u[b]|Lc,h.set(p,null);if(f){for(o=b;o{"use strict";var XB=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,ZB=/^[^\.\[\]]+$/;Rb.exports=function(e,r){for(;r;){var t=e.match(XB);if(t)e=t[1];else if(e.match(ZB))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 Dc=de((lfe,Ib)=>{"use strict";var JB=nt();Ib.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 JB(n)||(n=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),n}});var zb=de((sfe,Nb)=>{"use strict";var Fb=ea().isArrayOrTypedArray,lf=wo();Nb.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(Fb(a)&&Fb(o)&&lf(a[0])){if(n==="customdata"||n==="ids")continue;for(var i=Math.min(a.length,o.length),l=0;l{"use strict";function KB(e,r){var t=e%r;return t<0?t+r:t}function QB(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}qb.exports={mod:KB,modHalf:QB}});var ka=de((ffe,Rc)=>{(function(e){var r=/^\s+/,t=/\s+$/,n=0,a=e.round,o=e.min,i=e.max,l=e.random;function u(H,ee){if(H=H||"",ee=ee||{},H instanceof u)return H;if(!(this instanceof u))return new u(H,ee);var V=s(H);this._originalInput=H,this._r=V.r,this._g=V.g,this._b=V.b,this._a=V.a,this._roundA=a(100*this._a)/100,this._format=ee.format||V.format,this._gradientType=ee.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=V.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 H=this.toRgb();return(H.r*299+H.g*587+H.b*114)/1e3},getLuminance:function(){var H=this.toRgb(),ee,V,te,ue,ve,ke;return ee=H.r/255,V=H.g/255,te=H.b/255,ee<=.03928?ue=ee/12.92:ue=e.pow((ee+.055)/1.055,2.4),V<=.03928?ve=V/12.92:ve=e.pow((V+.055)/1.055,2.4),te<=.03928?ke=te/12.92:ke=e.pow((te+.055)/1.055,2.4),.2126*ue+.7152*ve+.0722*ke},setAlpha:function(H){return this._a=L(H),this._roundA=a(100*this._a)/100,this},toHsv:function(){var H=b(this._r,this._g,this._b);return{h:H.h*360,s:H.s,v:H.v,a:this._a}},toHsvString:function(){var H=b(this._r,this._g,this._b),ee=a(H.h*360),V=a(H.s*100),te=a(H.v*100);return this._a==1?"hsv("+ee+", "+V+"%, "+te+"%)":"hsva("+ee+", "+V+"%, "+te+"%, "+this._roundA+")"},toHsl:function(){var H=h(this._r,this._g,this._b);return{h:H.h*360,s:H.s,l:H.l,a:this._a}},toHslString:function(){var H=h(this._r,this._g,this._b),ee=a(H.h*360),V=a(H.s*100),te=a(H.l*100);return this._a==1?"hsl("+ee+", "+V+"%, "+te+"%)":"hsla("+ee+", "+V+"%, "+te+"%, "+this._roundA+")"},toHex:function(H){return w(this._r,this._g,this._b,H)},toHexString:function(H){return"#"+this.toHex(H)},toHex8:function(H){return T(this._r,this._g,this._b,this._a,H)},toHex8String:function(H){return"#"+this.toHex8(H)},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:F[w(this._r,this._g,this._b,!0)]||!1},toFilter:function(H){var ee="#"+y(this._r,this._g,this._b,this._a),V=ee,te=this._gradientType?"GradientType = 1, ":"";if(H){var ue=u(H);V="#"+y(ue._r,ue._g,ue._b,ue._a)}return"progid:DXImageTransform.Microsoft.gradient("+te+"startColorstr="+ee+",endColorstr="+V+")"},toString:function(H){var ee=!!H;H=H||this._format;var V=!1,te=this._a<1&&this._a>=0,ue=!ee&&te&&(H==="hex"||H==="hex6"||H==="hex3"||H==="hex4"||H==="hex8"||H==="name");return ue?H==="name"&&this._a===0?this.toName():this.toRgbString():(H==="rgb"&&(V=this.toRgbString()),H==="prgb"&&(V=this.toPercentageRgbString()),(H==="hex"||H==="hex6")&&(V=this.toHexString()),H==="hex3"&&(V=this.toHexString(!0)),H==="hex4"&&(V=this.toHex8String(!0)),H==="hex8"&&(V=this.toHex8String()),H==="name"&&(V=this.toName()),H==="hsl"&&(V=this.toHslString()),H==="hsv"&&(V=this.toHsvString()),V||this.toHexString())},clone:function(){return u(this.toString())},_applyModification:function(H,ee){var V=H.apply(null,[this].concat([].slice.call(ee)));return this._r=V._r,this._g=V._g,this._b=V._b,this.setAlpha(V._a),this},lighten:function(){return this._applyModification(M,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(H,ee){return H.apply(null,[this].concat([].slice.call(ee)))},analogous:function(){return this._applyCombination(E,arguments)},complement:function(){return this._applyCombination(c,arguments)},monochromatic:function(){return this._applyCombination(R,arguments)},splitcomplement:function(){return this._applyCombination(D,arguments)},triad:function(){return this._applyCombination(A,arguments)},tetrad:function(){return this._applyCombination(v,arguments)}},u.fromRatio=function(H,ee){if(typeof H=="object"){var V={};for(var te in H)H.hasOwnProperty(te)&&(te==="a"?V[te]=H[te]:V[te]=Y(H[te]));H=V}return u(H,ee)};function s(H){var ee={r:0,g:0,b:0},V=1,te=null,ue=null,ve=null,ke=!1,Se=!1;return typeof H=="string"&&(H=oe(H)),typeof H=="object"&&(Q(H.r)&&Q(H.g)&&Q(H.b)?(ee=f(H.r,H.g,H.b),ke=!0,Se=String(H.r).substr(-1)==="%"?"prgb":"rgb"):Q(H.h)&&Q(H.s)&&Q(H.v)?(te=Y(H.s),ue=Y(H.v),ee=m(H.h,te,ue),ke=!0,Se="hsv"):Q(H.h)&&Q(H.s)&&Q(H.l)&&(te=Y(H.s),ve=Y(H.l),ee=p(H.h,te,ve),ke=!0,Se="hsl"),H.hasOwnProperty("a")&&(V=H.a)),V=L(V),{ok:ke,format:H.format||Se,r:o(255,i(ee.r,0)),g:o(255,i(ee.g,0)),b:o(255,i(ee.b,0)),a:V}}function f(H,ee,V){return{r:P(H,255)*255,g:P(ee,255)*255,b:P(V,255)*255}}function h(H,ee,V){H=P(H,255),ee=P(ee,255),V=P(V,255);var te=i(H,ee,V),ue=o(H,ee,V),ve,ke,Se=(te+ue)/2;if(te==ue)ve=ke=0;else{var he=te-ue;switch(ke=Se>.5?he/(2-te-ue):he/(te+ue),te){case H:ve=(ee-V)/he+(ee1&&(Pe-=1),Pe<1/6?Ae+(Ce-Ae)*6*Pe:Pe<1/2?Ce:Pe<2/3?Ae+(Ce-Ae)*(2/3-Pe)*6:Ae}if(ee===0)te=ue=ve=V;else{var Se=V<.5?V*(1+ee):V+ee-V*ee,he=2*V-Se;te=ke(he,Se,H+1/3),ue=ke(he,Se,H),ve=ke(he,Se,H-1/3)}return{r:te*255,g:ue*255,b:ve*255}}function b(H,ee,V){H=P(H,255),ee=P(ee,255),V=P(V,255);var te=i(H,ee,V),ue=o(H,ee,V),ve,ke,Se=te,he=te-ue;if(ke=te===0?0:he/te,te==ue)ve=0;else{switch(te){case H:ve=(ee-V)/he+(ee>1)+720)%360;--ee;)te.h=(te.h+ue)%360,ve.push(u(te));return ve}function R(H,ee){ee=ee||6;for(var V=u(H).toHsv(),te=V.h,ue=V.s,ve=V.v,ke=[],Se=1/ee;ee--;)ke.push(u({h:te,s:ue,v:ve})),ve=(ve+Se)%1;return ke}u.mix=function(H,ee,V){V=V===0?0:V||50;var te=u(H).toRgb(),ue=u(ee).toRgb(),ve=V/100,ke={r:(ue.r-te.r)*ve+te.r,g:(ue.g-te.g)*ve+te.g,b:(ue.b-te.b)*ve+te.b,a:(ue.a-te.a)*ve+te.a};return u(ke)},u.readability=function(H,ee){var V=u(H),te=u(ee);return(e.max(V.getLuminance(),te.getLuminance())+.05)/(e.min(V.getLuminance(),te.getLuminance())+.05)},u.isReadable=function(H,ee,V){var te=u.readability(H,ee),ue,ve;switch(ve=!1,ue=re(V),ue.level+ue.size){case"AAsmall":case"AAAlarge":ve=te>=4.5;break;case"AAlarge":ve=te>=3;break;case"AAAsmall":ve=te>=7;break}return ve},u.mostReadable=function(H,ee,V){var te=null,ue=0,ve,ke,Se,he;V=V||{},ke=V.includeFallbackColors,Se=V.level,he=V.size;for(var Ae=0;Aeue&&(ue=ve,te=u(ee[Ae]));return u.isReadable(H,te,{level:Se,size:he})||!ke?te:(V.includeFallbackColors=!1,u.mostReadable(H,["#fff","#000"],V))};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"},F=u.hexNames=I(N);function I(H){var ee={};for(var V in H)H.hasOwnProperty(V)&&(ee[H[V]]=V);return ee}function L(H){return H=parseFloat(H),(isNaN(H)||H<0||H>1)&&(H=1),H}function P(H,ee){X(H)&&(H="100%");var V=$(H);return H=o(ee,i(0,parseFloat(H))),V&&(H=parseInt(H*ee,10)/100),e.abs(H-ee)<1e-6?1:H%ee/parseFloat(ee)}function O(H){return o(1,i(0,H))}function U(H){return parseInt(H,16)}function X(H){return typeof H=="string"&&H.indexOf(".")!=-1&&parseFloat(H)===1}function $(H){return typeof H=="string"&&H.indexOf("%")!=-1}function j(H){return H.length==1?"0"+H:""+H}function Y(H){return H<=1&&(H=H*100+"%"),H}function q(H){return e.round(parseFloat(H)*255).toString(16)}function K(H){return U(H)/255}var ne=function(){var H="[-\\+]?\\d+%?",ee="[-\\+]?\\d*\\.\\d+%?",V="(?:"+ee+")|(?:"+H+")",te="[\\s|\\(]+("+V+")[,|\\s]+("+V+")[,|\\s]+("+V+")\\s*\\)?",ue="[\\s|\\(]+("+V+")[,|\\s]+("+V+")[,|\\s]+("+V+")[,|\\s]+("+V+")\\s*\\)?";return{CSS_UNIT:new RegExp(V),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(H){return!!ne.CSS_UNIT.exec(H)}function oe(H){H=H.replace(r,"").replace(t,"").toLowerCase();var ee=!1;if(N[H])H=N[H],ee=!0;else if(H=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var V;return(V=ne.rgb.exec(H))?{r:V[1],g:V[2],b:V[3]}:(V=ne.rgba.exec(H))?{r:V[1],g:V[2],b:V[3],a:V[4]}:(V=ne.hsl.exec(H))?{h:V[1],s:V[2],l:V[3]}:(V=ne.hsla.exec(H))?{h:V[1],s:V[2],l:V[3],a:V[4]}:(V=ne.hsv.exec(H))?{h:V[1],s:V[2],v:V[3]}:(V=ne.hsva.exec(H))?{h:V[1],s:V[2],v:V[3],a:V[4]}:(V=ne.hex8.exec(H))?{r:U(V[1]),g:U(V[2]),b:U(V[3]),a:K(V[4]),format:ee?"name":"hex8"}:(V=ne.hex6.exec(H))?{r:U(V[1]),g:U(V[2]),b:U(V[3]),format:ee?"name":"hex"}:(V=ne.hex4.exec(H))?{r:U(V[1]+""+V[1]),g:U(V[2]+""+V[2]),b:U(V[3]+""+V[3]),a:K(V[4]+""+V[4]),format:ee?"name":"hex8"}:(V=ne.hex3.exec(H))?{r:U(V[1]+""+V[1]),g:U(V[2]+""+V[2]),b:U(V[3]+""+V[3]),format:ee?"name":"hex"}:!1}function re(H){var ee,V;return H=H||{level:"AA",size:"small"},ee=(H.level||"AA").toUpperCase(),V=(H.size||"small").toLowerCase(),ee!=="AA"&&ee!=="AAA"&&(ee="AA"),V!=="small"&&V!=="large"&&(V="small"),{level:ee,size:V}}typeof Rc!="undefined"&&Rc.exports?Rc.exports=u:window.tinycolor=u})(Math)});var Tt=de(ff=>{"use strict";var Ob=wo(),sf=Array.isArray;function $B(e,r){var t,n;for(t=0;t{"use strict";Bb.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 cf=de((vfe,Ub)=>{"use strict";Ub.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var wl=de((dfe,Gb)=>{"use strict";var Hb=cf(),Vb=kn(),gp=Vb({editType:"none"});gp.family.dflt=Hb.HOVERFONT;gp.size.dflt=Hb.HOVERFONTSIZE;Gb.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:gp,grouptitlefont:Vb({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var Pc=de((pfe,Yb)=>{"use strict";var jB=kn(),hf=wl().hoverlabel,vf=Tt().extendFlat;Yb.exports={hoverlabel:{bgcolor:vf({},hf.bgcolor,{arrayOk:!0}),bordercolor:vf({},hf.bordercolor,{arrayOk:!0}),font:jB({arrayOk:!0,editType:"none"}),align:vf({},hf.align,{arrayOk:!0}),namelength:vf({},hf.namelength,{arrayOk:!0}),showarrow:vf({},hf.showarrow),editType:"none"}}});var Sn=de((gfe,Wb)=>{"use strict";var eU=kn(),rU=Pc();Wb.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:eU({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:rU.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 Ml=de((yfe,Jb)=>{"use strict";var tU=ka(),Ic={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)"]]},Xb=Ic.RdBu;function nU(e,r){if(r||(r=Xb),!e)return r;function t(){try{e=Ic[e]||JSON.parse(e)}catch(n){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),Zb(e)?e:r}function Zb(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";Tl.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];Tl.defaultLine="#444";Tl.lightLine="#eee";Tl.background="#fff";Tl.borderLine="#BEC8D9";Tl.lightFraction=100*10/11});var Xr=de((xfe,Kb)=>{"use strict";var ra=ka(),iU=nt(),oU=ea().isTypedArray,an=Kb.exports={},Fc=Ai();an.defaults=Fc.defaults;var lU=an.defaultLine=Fc.defaultLine;an.lightLine=Fc.lightLine;var mp=an.background=Fc.background;an.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};an.rgb=function(e){return an.tinyRGB(ra(e))};an.opacity=function(e){return e?ra(e).getAlpha():0};an.addOpacity=function(e,r){var t=ra(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};an.combine=function(e,r){var t=ra(e).toRgb();if(t.a===1)return ra(e).toRgbString();var n=ra(r||mp).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()};an.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()};an.contrast=function(e,r,t){var n=ra(e);n.getAlpha()!==1&&(n=ra(an.combine(e,mp)));var a=n.isDark()?r?n.lighten(r):mp:t?n.darken(t):lU;return a.toString()};an.stroke=function(e,r){var t=ra(r);e.style({stroke:an.tinyRGB(t),"stroke-opacity":t.getAlpha()})};an.fill=function(e,r){var t=ra(r);e.style({fill:an.tinyRGB(t),"fill-opacity":t.getAlpha()})};an.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 Nc=de((bfe,Qb)=>{"use strict";Qb.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var Ls=de($b=>{"use strict";$b.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 t4=de(ta=>{"use strict";var xp=nt(),jb=ka(),e4=Tt().extendFlat,sU=Sn(),uU=Ml(),fU=Xr(),cU=Nc().DESELECTDIM,Ds=Ec(),r4=Ls().counter,hU=Es().modHalf,Ka=ea().isArrayOrTypedArray,Mo=ea().isTypedArraySpec,To=ea().decodeTypedArraySpec;ta.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(Ka(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;no===!0||o===!1;a(e)||n.arrayOk&&Array.isArray(e)&&e.length>0&&e.every(a)?r.set(e):r.set(t)}},number:{coerceFunction:function(e,r,t,n){Mo(e)&&(e=To(e)),!xp(e)||n.min!==void 0&&en.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||!xp(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)),jb(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function n(a){return jb(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(uU.get(e,t))}},angle:{coerceFunction:function(e,r,t){Mo(e)&&(e=To(e)),e==="auto"?r.set("auto"):xp(e)?r.set(hU(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,n){var a=n.regex||r4(t);let o=i=>typeof i=="string"&&a.test(i);o(e)||n.arrayOk&&Ka(e)&&e.length>0&&e.every(o)?r.set(e):r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!r4(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 n4={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/un/"},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:{}}},a4={};function i4(e,r){for(var t in e){var n=e[t];n.valType?r[t]=n.dflt:(r[t]||(r[t]={}),i4(n,r[t]))}}i4(n4,a4);o4.exports={configAttributes:n4,dfltConfig:a4}});var _p=de((Tfe,l4)=>{"use strict";var bp=it(),vU=nt(),df=[];l4.exports=function(e,r){if(df.indexOf(e)!==-1)return;df.push(e);var t=1e3;vU(r)?t=r:r==="long"&&(t=3e3);var n=bp.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var a=n.selectAll(".notifier-note").data(df);function o(i){i.duration(700).style("opacity",0).each("end",function(l){var u=df.indexOf(l);u!==-1&&df.splice(u,1),bp.select(this).remove()})}a.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(i){var l=bp.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=Al().dfltConfig,wp=_p(),Mp=s4.exports={};Mp.log=function(){var e;if(Rs.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};Mp.warn=function(){var e;if(Rs.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};Mp.error=function(){var e;if(Rs.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var qc=de((kfe,u4)=>{"use strict";u4.exports=function(){}});var Tp=de((Sfe,f4)=>{"use strict";f4.exports=function(r,t){if(t instanceof RegExp){for(var n=t.toString(),a=0;a{c4.exports=dU;function dU(){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 d4=de((Efe,v4)=>{v4.exports=pU;function pU(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 g4=de((Lfe,p4)=>{p4.exports=gU;function gU(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 Ap=de((Dfe,y4)=>{y4.exports=yU;function yU(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 x4=de((Rfe,m4)=>{m4.exports=mU;function mU(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 _4=de((Pfe,b4)=>{b4.exports=xU;function xU(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],h=r[9],p=r[10],b=r[11],m=r[12],w=r[13],T=r[14],y=r[15],k=t*l-n*i,S=t*u-a*i,x=t*s-o*i,M=n*u-a*l,d=n*s-o*l,_=a*s-o*u,g=f*w-h*m,c=f*T-p*m,A=f*y-b*m,v=h*T-p*w,D=h*y-b*w,E=p*y-b*T,R=k*E-S*D+x*v+M*A-d*c+_*g;return R?(R=1/R,e[0]=(l*E-u*D+s*v)*R,e[1]=(a*D-n*E-o*v)*R,e[2]=(w*_-T*d+y*M)*R,e[3]=(p*d-h*_-b*M)*R,e[4]=(u*A-i*E-s*c)*R,e[5]=(t*E-a*A+o*c)*R,e[6]=(T*x-m*_-y*S)*R,e[7]=(f*_-p*x+b*S)*R,e[8]=(i*D-l*A+s*g)*R,e[9]=(n*A-t*D-o*g)*R,e[10]=(m*d-w*x+y*k)*R,e[11]=(h*x-f*d-b*k)*R,e[12]=(l*c-i*v-u*g)*R,e[13]=(t*v-n*c+a*g)*R,e[14]=(w*S-m*M-T*k)*R,e[15]=(f*M-h*S+p*k)*R,e):null}});var M4=de((Ife,w4)=>{w4.exports=bU;function bU(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],h=r[9],p=r[10],b=r[11],m=r[12],w=r[13],T=r[14],y=r[15];return e[0]=l*(p*y-b*T)-h*(u*y-s*T)+w*(u*b-s*p),e[1]=-(n*(p*y-b*T)-h*(a*y-o*T)+w*(a*b-o*p)),e[2]=n*(u*y-s*T)-l*(a*y-o*T)+w*(a*s-o*u),e[3]=-(n*(u*b-s*p)-l*(a*b-o*p)+h*(a*s-o*u)),e[4]=-(i*(p*y-b*T)-f*(u*y-s*T)+m*(u*b-s*p)),e[5]=t*(p*y-b*T)-f*(a*y-o*T)+m*(a*b-o*p),e[6]=-(t*(u*y-s*T)-i*(a*y-o*T)+m*(a*s-o*u)),e[7]=t*(u*b-s*p)-i*(a*b-o*p)+f*(a*s-o*u),e[8]=i*(h*y-b*w)-f*(l*y-s*w)+m*(l*b-s*h),e[9]=-(t*(h*y-b*w)-f*(n*y-o*w)+m*(n*b-o*h)),e[10]=t*(l*y-s*w)-i*(n*y-o*w)+m*(n*s-o*l),e[11]=-(t*(l*b-s*h)-i*(n*b-o*h)+f*(n*s-o*l)),e[12]=-(i*(h*T-p*w)-f*(l*T-u*w)+m*(l*p-u*h)),e[13]=t*(h*T-p*w)-f*(n*T-a*w)+m*(n*p-a*h),e[14]=-(t*(l*T-u*w)-i*(n*T-a*w)+m*(n*u-a*l)),e[15]=t*(l*p-u*h)-i*(n*p-a*h)+f*(n*u-a*l),e}});var A4=de((Ffe,T4)=>{T4.exports=_U;function _U(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],h=e[10],p=e[11],b=e[12],m=e[13],w=e[14],T=e[15],y=r*i-t*o,k=r*l-n*o,S=r*u-a*o,x=t*l-n*i,M=t*u-a*i,d=n*u-a*l,_=s*m-f*b,g=s*w-h*b,c=s*T-p*b,A=f*w-h*m,v=f*T-p*m,D=h*T-p*w;return y*D-k*v+S*A+x*c-M*g+d*_}});var S4=de((Nfe,k4)=>{k4.exports=wU;function wU(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],h=r[8],p=r[9],b=r[10],m=r[11],w=r[12],T=r[13],y=r[14],k=r[15],S=t[0],x=t[1],M=t[2],d=t[3];return e[0]=S*n+x*l+M*h+d*w,e[1]=S*a+x*u+M*p+d*T,e[2]=S*o+x*s+M*b+d*y,e[3]=S*i+x*f+M*m+d*k,S=t[4],x=t[5],M=t[6],d=t[7],e[4]=S*n+x*l+M*h+d*w,e[5]=S*a+x*u+M*p+d*T,e[6]=S*o+x*s+M*b+d*y,e[7]=S*i+x*f+M*m+d*k,S=t[8],x=t[9],M=t[10],d=t[11],e[8]=S*n+x*l+M*h+d*w,e[9]=S*a+x*u+M*p+d*T,e[10]=S*o+x*s+M*b+d*y,e[11]=S*i+x*f+M*m+d*k,S=t[12],x=t[13],M=t[14],d=t[15],e[12]=S*n+x*l+M*h+d*w,e[13]=S*a+x*u+M*p+d*T,e[14]=S*o+x*s+M*b+d*y,e[15]=S*i+x*f+M*m+d*k,e}});var E4=de((zfe,C4)=>{C4.exports=MU;function MU(e,r,t){var n=t[0],a=t[1],o=t[2],i,l,u,s,f,h,p,b,m,w,T,y;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],h=r[5],p=r[6],b=r[7],m=r[8],w=r[9],T=r[10],y=r[11],e[0]=i,e[1]=l,e[2]=u,e[3]=s,e[4]=f,e[5]=h,e[6]=p,e[7]=b,e[8]=m,e[9]=w,e[10]=T,e[11]=y,e[12]=i*n+f*a+m*o+r[12],e[13]=l*n+h*a+w*o+r[13],e[14]=u*n+p*a+T*o+r[14],e[15]=s*n+b*a+y*o+r[15]),e}});var D4=de((qfe,L4)=>{L4.exports=TU;function TU(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 P4=de((Ofe,R4)=>{R4.exports=AU;function AU(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,h,p,b,m,w,T,y,k,S,x,M,d,_,g,c,A,v,D,E,R,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,h=r[0],p=r[1],b=r[2],m=r[3],w=r[4],T=r[5],y=r[6],k=r[7],S=r[8],x=r[9],M=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,v=o*o*f+s,D=i*o*f+a*u,E=a*i*f+o*u,R=o*i*f-a*u,N=i*i*f+s,e[0]=h*_+w*g+S*c,e[1]=p*_+T*g+x*c,e[2]=b*_+y*g+M*c,e[3]=m*_+k*g+d*c,e[4]=h*A+w*v+S*D,e[5]=p*A+T*v+x*D,e[6]=b*A+y*v+M*D,e[7]=m*A+k*v+d*D,e[8]=h*E+w*R+S*N,e[9]=p*E+T*R+x*N,e[10]=b*E+y*R+M*N,e[11]=m*E+k*R+d*N,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var F4=de((Bfe,I4)=>{I4.exports=kU;function kU(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],h=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+h*n,e[7]=u*a+p*n,e[8]=s*a-o*n,e[9]=f*a-i*n,e[10]=h*a-l*n,e[11]=p*a-u*n,e}});var z4=de((Ufe,N4)=>{N4.exports=SU;function SU(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],h=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-h*n,e[3]=u*a-p*n,e[8]=o*n+s*a,e[9]=i*n+f*a,e[10]=l*n+h*a,e[11]=u*n+p*a,e}});var O4=de((Hfe,q4)=>{q4.exports=CU;function CU(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],h=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+h*n,e[3]=u*a+p*n,e[4]=s*a-o*n,e[5]=f*a-i*n,e[6]=h*a-l*n,e[7]=p*a-u*n,e}});var U4=de((Vfe,B4)=>{B4.exports=EU;function EU(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 V4=de((Gfe,H4)=>{H4.exports=LU;function LU(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,h=n*u,p=n*s,b=a*u,m=a*s,w=o*s,T=i*l,y=i*u,k=i*s;return e[0]=1-(b+w),e[1]=h+k,e[2]=p-y,e[3]=0,e[4]=h-k,e[5]=1-(f+w),e[6]=m+T,e[7]=0,e[8]=p+y,e[9]=m-T,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 Y4=de((Yfe,G4)=>{G4.exports=DU;function DU(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 X4=de((Wfe,W4)=>{W4.exports=RU;function RU(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 J4=de((Xfe,Z4)=>{Z4.exports=PU;function PU(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 Q4=de((Zfe,K4)=>{K4.exports=IU;function IU(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 j4=de((Jfe,$4)=>{$4.exports=FU;function FU(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 r_=de((Kfe,e_)=>{e_.exports=NU;function NU(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,h=n*l,p=a*i,b=a*l,m=a*u,w=o*i,T=o*l,y=o*u;return e[0]=1-h-m,e[1]=f+y,e[2]=p-T,e[3]=0,e[4]=f-y,e[5]=1-s-m,e[6]=b+w,e[7]=0,e[8]=p+T,e[9]=b-w,e[10]=1-s-h,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var n_=de((Qfe,t_)=>{t_.exports=zU;function zU(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 i_=de(($fe,a_)=>{a_.exports=qU;function qU(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 l_=de((jfe,o_)=>{o_.exports=OU;function OU(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 u_=de((e0e,s_)=>{s_.exports=BU;function BU(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 c_=de((r0e,f_)=>{var UU=Ap();f_.exports=HU;function HU(e,r,t,n){var a,o,i,l,u,s,f,h,p,b,m=r[0],w=r[1],T=r[2],y=n[0],k=n[1],S=n[2],x=t[0],M=t[1],d=t[2];return Math.abs(m-x)<1e-6&&Math.abs(w-M)<1e-6&&Math.abs(T-d)<1e-6?UU(e):(f=m-x,h=w-M,p=T-d,b=1/Math.sqrt(f*f+h*h+p*p),f*=b,h*=b,p*=b,a=k*p-S*h,o=S*f-y*p,i=y*h-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=h*i-p*o,u=p*a-f*i,s=f*o-h*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]=h,e[7]=0,e[8]=i,e[9]=s,e[10]=p,e[11]=0,e[12]=-(a*m+o*w+i*T),e[13]=-(l*m+u*w+s*T),e[14]=-(f*m+h*w+p*T),e[15]=1,e)}});var v_=de((t0e,h_)=>{h_.exports=VU;function VU(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 kp=de((n0e,d_)=>{d_.exports={create:h4(),clone:d4(),copy:g4(),identity:Ap(),transpose:x4(),invert:_4(),adjoint:M4(),determinant:A4(),multiply:S4(),translate:E4(),scale:D4(),rotate:P4(),rotateX:F4(),rotateY:z4(),rotateZ:O4(),fromRotation:U4(),fromRotationTranslation:V4(),fromScaling:Y4(),fromTranslation:X4(),fromXRotation:J4(),fromYRotation:Q4(),fromZRotation:j4(),fromQuat:r_(),frustum:n_(),perspective:i_(),perspectiveFromFieldOfView:l_(),ortho:u_(),lookAt:c_(),str:v_()}});var Oc=de(Ut=>{"use strict";var GU=kp();Ut.init2dArray=function(e,r){for(var t=new Array(e),n=0;n{"use strict";var YU=it(),p_=kl(),WU=Oc(),XU=kp();function ZU(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 JU(e){var r=YU.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function g_(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function KU(e,r){y_("global",e,r)}function y_(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):p_.warn("addStyleRule failed"):p_.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function QU(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&g_(t)}function $U(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 jU(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=m_(n);if(a){var o=WU.convertCssMatrix(a);t=XU.multiply(t,t,o)}}),t}function m_(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=[];eH(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function eH(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function rH(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}b_.exports={getGraphDiv:ZU,isPlotDiv:JU,removeElement:g_,addStyleRule:KU,addRelatedStyleRule:y_,deleteRelatedStyleRule:QU,setStyleOnHover:$U,getFullTransformMatrix:jU,getElementTransformMatrix:m_,getElementAndAncestors:x_,equalDomRects:rH}});var gf=de((o0e,__)=>{"use strict";__.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=de((l0e,C_)=>{"use strict";var M_=Tt().extendFlat,tH=wo(),T_={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},A_={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},nH=T_.flags.slice().concat(["fullReplot"]),aH=A_.flags.slice().concat("layoutReplot");C_.exports={traces:T_,layout:A_,traceFlags:function(){return w_(nH)},layoutFlags:function(){return w_(aH)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var n=t.split("+"),a=0;a{"use strict";Sp.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};Sp.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 Cp=de((u0e,E_)=>{"use strict";E_.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 Qa=de(Ps=>{"use strict";var{DATE_FORMAT_LINK:iH,FORMAT_LINK:oH}=Cp(),lH=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function sH({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,oH,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,iH,"for details on the date formatting syntax.",lH].join(" ")}Ps.templateFormatStringDescription=sH;Ps.hovertemplateAttrs=({editType:e="none",arrayOk:r}={},t={})=>bl({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});Ps.texttemplateAttrs=({editType:e="calc",arrayOk:r}={},t={})=>bl({valType:"string",dflt:"",editType:e},r!==!1?{arrayOk:!0}:{});Ps.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:r}={},t={})=>({valType:"string",dflt:"",editType:e});Ps.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var Hc=de((h0e,F_)=>{"use strict";function ko(e,r){return r?r.d2l(e):e}function L_(e,r){return r?r.l2d(e):e}function uH(e){return e.x0}function fH(e){return e.x1}function cH(e){return e.y0}function hH(e){return e.y1}function D_(e){return e.x0shift||0}function R_(e){return e.x1shift||0}function P_(e){return e.y0shift||0}function I_(e){return e.y1shift||0}function Bc(e,r){return ko(e.x1,r)+R_(e)-ko(e.x0,r)-D_(e)}function Uc(e,r,t){return ko(e.y1,t)+I_(e)-ko(e.y0,t)-P_(e)}function vH(e,r){return Math.abs(Bc(e,r))}function dH(e,r,t){return Math.abs(Uc(e,r,t))}function pH(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(Bc(e,r),2)+Math.pow(Uc(e,r,t),2))}function gH(e,r){return L_((ko(e.x1,r)+R_(e)+ko(e.x0,r)+D_(e))/2,r)}function yH(e,r,t){return L_((ko(e.y1,t)+I_(e)+ko(e.y0,t)+P_(e))/2,t)}function mH(e,r,t){return e.type!=="line"?void 0:Uc(e,r,t)/Bc(e,r)}F_.exports={x0:uH,x1:fH,y0:cH,y1:hH,slope:mH,dx:Bc,dy:Uc,width:vH,height:dH,length:pH,xcenter:gH,ycenter:yH}});var q_=de((v0e,z_)=>{"use strict";var xH=zn().overrideAll,Sl=Sn(),N_=kn(),bH=Ao().dash,So=Tt().extendFlat,{shapeTexttemplateAttrs:_H,templatefallbackAttrs:wH}=Qa(),MH=Hc();z_.exports=xH({newshape:{visible:So({},Sl.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:So({},Sl.legend,{}),legendgroup:So({},Sl.legendgroup,{}),legendgrouptitle:{text:So({},Sl.legendgrouptitle.text,{}),font:N_({})},legendrank:So({},Sl.legendrank,{}),legendwidth:So({},Sl.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:So({},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:So({},Sl.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:_H({newshape:!0},{keys:Object.keys(MH)}),texttemplatefallback:wH({editType:"arraydraw"}),font:N_({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var B_=de((d0e,O_)=>{"use strict";var TH=Ao().dash,AH=Tt().extendFlat;O_.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:AH({},TH,{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 Vc=de((p0e,U_)=>{"use strict";U_.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 Is=de((g0e,Y_)=>{"use strict";var Ep=kn(),kH=gf(),Gc=Ai(),H_=q_(),V_=B_(),SH=Vc(),G_=Tt().extendFlat,Yc=Ep({editType:"calc"});Yc.family.dflt='"Open Sans", verdana, arial, sans-serif';Yc.size.dflt=12;Yc.color.dflt=Gc.defaultLine;Y_.exports={font:Yc,title:{text:{valType:"string",editType:"layoutstyle"},font:Ep({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:Ep({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:G_(SH({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:Gc.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:Gc.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:Gc.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:V_.newselection,activeselection:V_.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:G_({},kH.transition,{editType:"none"})}});var W_=de(()=>{(function(){if(!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")){var e=document.createElement("style");e.id="696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var Cr=de(Zr=>{"use strict";var Fs=kl(),X_=qc(),Z_=Tp(),CH=wo(),EH=pf().addStyleRule,J_=Tt(),LH=Sn(),DH=Is(),RH=J_.extendFlat,Lp=J_.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 qH=Ss().timeFormat,o6=nt(),Dp=kl(),Eo=Es().mod,qs=nn(),Sa=qs.BADNUM,na=qs.ONEDAY,yf=qs.ONEHOUR,Co=qs.ONEMIN,zs=qs.ONESEC,mf=qs.EPOCHJD,Zi=Cr(),e6=Ss().utcFormat,OH=/^\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,BH=/^\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,r6=new Date().getFullYear()-70;function Ji(e){return e&&Zi.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Ht.dateTick0=function(e,r){var t=UH(e,!!r);if(r<2)return t;var n=Ht.dateTime2ms(t,e);return n+=na*(r-1),Ht.ms2DateTime(n,0,e)};function UH(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 Xc,Zc;Ht.dateTime2ms=function(e,r){if(Ht.isJSDate(e)){var t=e.getTimezoneOffset()*Co,n=(e.getUTCMinutes()-e.getMinutes())*Co+(e.getUTCSeconds()-e.getSeconds())*zs+(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>=Xc&&e<=Zc?e:Sa}if(typeof e!="string"&&typeof e!="number")return Sa;e=String(e);var o=Ji(r),i=e.charAt(0);o&&(i==="G"||i==="g")&&(e=e.slice(1),r="");var l=o&&r.slice(0,7)==="chinese",u=e.match(l?BH:OH);if(!u)return Sa;var s=u[1],f=u[3]||"1",h=Number(u[5]||1),p=Number(u[7]||0),b=Number(u[9]||0),m=Number(u[11]||0);if(o){if(s.length===2)return Sa;s=Number(s);var w;try{var T=Zi.getComponentMethod("calendars","getCal")(r);if(l){var y=f.charAt(f.length-1)==="i";f=parseInt(f,10),w=T.newDate(s,T.toMonthIndex(s,f,y),h)}else w=T.newDate(s,Number(f),h)}catch(S){return Sa}return w?(w.toJD()-mf)*na+p*yf+b*Co+m*zs:Sa}s.length===2?s=(Number(s)+2e3-r6)%100+r6:s=Number(s),f-=1;var k=new Date(Date.UTC(2e3,f,h,p,b));return k.setUTCFullYear(s),k.getUTCMonth()!==f||k.getUTCDate()!==h?Sa:k.getTime()+m*zs};Xc=Ht.MIN_MS=Ht.dateTime2ms("-9999");Zc=Ht.MAX_MS=Ht.dateTime2ms("9999-12-31 23:59:59.9999");Ht.isDateTime=function(e,r){return Ht.dateTime2ms(e,r)!==Sa};function Ns(e,r){return String(e+Math.pow(10,r)).slice(1)}var Wc=90*na,t6=3*yf,n6=5*Co;Ht.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Xc&&e<=Zc))return Sa;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 h=Math.floor(a/na)+mf,p=Math.floor(Eo(e,na));try{o=Zi.getComponentMethod("calendars","getCal")(t).fromJD(h).formatDate("yyyy-mm-dd")}catch(b){o=e6("G%Y-%m-%d")(new Date(a))}if(o.charAt(0)==="-")for(;o.length<11;)o="-0"+o.slice(1);else for(;o.length<10;)o="0"+o;i=r=Xc+na&&e<=Zc-na))return Sa;var r=Math.floor(Eo(e+.05,1)*10),t=new Date(Math.round(e-r/10)),n=qH("%Y-%m-%d")(t),a=t.getHours(),o=t.getMinutes(),i=t.getSeconds(),l=t.getUTCMilliseconds()*10+r;return l6(n,a,o,i,l)};function l6(e,r,t,n,a){if((r||t||n||a)&&(e+=" "+Ns(r,2)+":"+Ns(t,2),(n||a)&&(e+=":"+Ns(n,2),a))){for(var o=4;a%10===0;)o-=1,a/=10;e+="."+Ns(a,o)}return e}Ht.cleanDate=function(e,r,t){if(e===Sa)return r;if(Ht.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Ji(t))return Dp.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 Dp.error("unrecognized date",e),r;return e};var HH=/%\d?f/g,VH=/%h/g,GH={1:"1",2:"1",3:"2",4:"2"};function a6(e,r,t,n){e=e.replace(HH,function(o){var i=Math.min(+o.charAt(1)||6,6),l=(r/1e3%1+2).toFixed(i).slice(2).replace(/0+$/,"")||"0";return l});var a=new Date(Math.floor(r+.05));if(e=e.replace(VH,function(){return GH[t("%q")(a)]}),Ji(n))try{e=Zi.getComponentMethod("calendars","worldCalFmt")(e,r,n)}catch(o){return"Invalid"}return t(e)(a)}var YH=[59,59.9,59.99,59.999,59.9999];function WH(e,r){var t=Eo(e+.05,na),n=Ns(Math.floor(t/yf),2)+":"+Ns(Eo(Math.floor(t/Co),60),2);if(r!=="M"){o6(r)||(r=0);var a=Math.min(Eo(e/zs,60),YH[r]),o=(100+a).toFixed(r).slice(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+` `+o.year;else return WH(e,t)+` -`+a6(o.dayMonthYear,e,n,a);return a6(r,e,n,a)};var i6=3*na;Ht.incrementMonth=function(e,r,t){t=Ji(t)&&t;var n=Eo(e,na);if(e=Math.round(e-n),t)try{var a=Math.round(e/na)+mf,o=Zi.getComponentMethod("calendars","getCal")(t),i=o.fromJD(a);return r%12?o.add(i,r,"m"):o.add(i,r/12,"y"),(i.toJD()-mf)*na+n}catch(u){Lp.error("invalid ms "+e+" in calendar "+t)}var l=new Date(e+i6);return l.setUTCMonth(l.getUTCMonth()+r)+n-i6};Ht.findExactDates=function(e,r){for(var t=0,n=0,a=0,o=0,i,l,u=Ji(r)&&Zi.getComponentMethod("calendars","getCal")(r),s=0;s{"use strict";u6.exports=function(r){return r}});var Pp=de(Ki=>{"use strict";var XH=nt(),ZH=kl(),JH=Dp(),KH=nn().BADNUM,Rp=1e-9;Ki.findBin=function(e,r,t){if(XH(r.start))return t?Math.ceil((e-r.start)/r.size-Rp)-1:Math.floor((e-r.start)/r.size+Rp);var n=0,a=r.length,o=0,i=a>1?(r[a-1]-r[0])/(a-1):1,l,u;for(i>=0?u=t?QH:$H:u=t?eV:jH,e+=i*Rp*(t?-1:1)*(i>=0?1:-1);n90&&ZH.log("Long binary search..."),n-1};function QH(e,r){return er}function eV(e,r){return e>=r}Ki.sorterAsc=function(e,r){return e-r};Ki.sorterDes=function(e,r){return r-e};Ki.distinctVals=function(e){var r=e.slice();r.sort(Ki.sorterAsc);var t;for(t=r.length-1;t>-1&&r[t]===KH;t--);for(var n=r[t]-r[0]||1,a=n/(t||1)/1e4,o=[],i,l=0;l<=t;l++){var u=r[l],s=u-i;i===void 0?(o.push(u),i=u):s>a&&(n=Math.min(n,s),o.push(u),i=u)}return{vals:o,minDiff:n}};Ki.roundUp=function(e,r,t){for(var n=0,a=r.length-1,o,i=0,l=t?0:1,u=t?1:0,s=t?Math.ceil:Math.floor;n0&&(n=1),t&&n)return e.sort(r)}return n?e:e.reverse()};Ki.findIndexOfMin=function(e,r){r=r||JH;for(var t=1/0,n,a=0;a{"use strict";f6.exports=function(r){return Object.keys(r).sort()}});var c6=de(Vt=>{"use strict";var bf=nt(),rV=ea().isArrayOrTypedArray;Vt.aggNums=function(e,r,t,n){var a,o;if((!n||n>t.length)&&(n=t.length),bf(r)||(r=!1),rV(t[0])){for(o=new Array(n),a=0;ae.length-1)return e[e.length-1];var t=r%1;return t*e[Math.ceil(r)]+(1-t)*e[Math.floor(r)]}});var g6=de((A0e,p6)=>{"use strict";var h6=Es(),Ip=h6.mod,tV=h6.modHalf,xf=Math.PI,Lo=2*xf;function nV(e){return e/180*xf}function aV(e){return e/xf*180}function Fp(e){return Math.abs(e[1]-e[0])>Lo-1e-14}function v6(e,r){return tV(r-e,Lo)}function iV(e,r){return Math.abs(v6(e,r))}function d6(e,r){if(Fp(r))return!0;var t,n;r[0]n&&(n+=Lo);var a=Ip(e,Lo),o=a+Lo;return a>=t&&a<=n||o>=t&&o<=n}function oV(e,r,t,n){if(!d6(r,n))return!1;var a,o;return t[0]=a&&e<=o}function Np(e,r,t,n,a,o,i){a=a||0,o=o||0;var l=Fp([t,n]),u,s,f,h,p;l?(u=0,s=xf,f=Lo):t{"use strict";Cl.isLeftAnchor=function(r){return r.xanchor==="left"||r.xanchor==="auto"&&r.x<=1/3};Cl.isCenterAnchor=function(r){return r.xanchor==="center"||r.xanchor==="auto"&&r.x>1/3&&r.x<2/3};Cl.isRightAnchor=function(r){return r.xanchor==="right"||r.xanchor==="auto"&&r.x>=2/3};Cl.isTopAnchor=function(r){return r.yanchor==="top"||r.yanchor==="auto"&&r.y>=2/3};Cl.isMiddleAnchor=function(r){return r.yanchor==="middle"||r.yanchor==="auto"&&r.y>1/3&&r.y<2/3};Cl.isBottomAnchor=function(r){return r.yanchor==="bottom"||r.yanchor==="auto"&&r.y<=1/3}});var x6=de(El=>{"use strict";var zp=Es().mod;El.segmentsIntersect=b6;function b6(e,r,t,n,a,o,i,l){var u=t-e,s=a-e,f=i-a,h=n-r,p=o-r,_=l-o,m=u*_-f*h;if(m===0)return null;var w=(s*_-f*p)/m,T=(s*h-u*p)/m;return T<0||T>1||w<0||w>1?null:{x:e+u*w,y:r+h*w}}El.segmentDistance=function(r,t,n,a,o,i,l,u){if(b6(r,t,n,a,o,i,l,u))return 0;var s=n-r,f=a-t,h=l-o,p=u-i,_=s*s+f*f,m=h*h+p*p,w=Math.min(Kc(s,f,_,o-r,i-t),Kc(s,f,_,l-r,u-t),Kc(h,p,m,r-o,t-i),Kc(h,p,m,n-o,a-i));return Math.sqrt(w)};function Kc(e,r,t,n,a){var o=n*e+a*r;if(o<0)return n*n+a*a;if(o>t){var i=n-e,l=a-r;return i*i+l*l}else{var u=n*r-a*e;return u*u/t}}var Qc,qp,m6;El.getTextLocation=function(r,t,n,a){if((r!==qp||a!==m6)&&(Qc={},qp=r,m6=a),Qc[n])return Qc[n];var o=r.getPointAtLength(zp(n-a/2,t)),i=r.getPointAtLength(zp(n+a/2,t)),l=Math.atan((i.y-o.y)/(i.x-o.x)),u=r.getPointAtLength(zp(n,t)),s=(u.x*4+o.x+i.x)/6,f=(u.y*4+o.y+i.y)/6,h={x:s,y:f,theta:l};return Qc[n]=h,h};El.clearLocationCache=function(){qp=null};El.getVisibleSegment=function(r,t,n){var a=t.left,o=t.right,i=t.top,l=t.bottom,u=0,s=r.getTotalLength(),f=s,h,p;function _(w){var T=r.getPointAtLength(w);w===0?h=T:w===s&&(p=T);var y=T.xo?T.x-o:0,k=T.yl?T.y-l:0;return Math.sqrt(y*y+k*k)}for(var m=_(u);m;){if(u+=m+n,u>f)return;m=_(u)}for(m=_(f);m;){if(f-=m+n,u>f)return;m=_(f)}return{min:u,max:f,len:f-u,total:s,isClosed:u===0&&f===s&&Math.abs(h.x-p.x)<.1&&Math.abs(h.y-p.y)<.1}};El.findPointOnPath=function(r,t,n,a){a=a||{};for(var o=a.pathLength||r.getTotalLength(),i=a.tolerance||.001,l=a.iterationLimit||30,u=r.getPointAtLength(0)[n]>r.getPointAtLength(o)[n]?-1:1,s=0,f=0,h=o,p,_,m;s0?h=p:f=p,s++}return _}});var $c=de(_f=>{"use strict";var Qi={};_f.throttle=function(r,t,n){var a=Qi[r],o=Date.now();if(!a){for(var i in Qi)Qi[i].tsa.ts+t){l();return}a.timer=setTimeout(function(){l(),a.timer=null},t)};_f.done=function(e){var r=Qi[e];return!r||!r.timer?Promise.resolve():new Promise(function(t){var n=r.onDone;r.onDone=function(){n&&n(),t(),r.onDone=null}})};_f.clear=function(e){if(e)_6(Qi[e]),delete Qi[e];else for(var r in Qi)_f.clear(r)};function _6(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var M6=de((E0e,w6)=>{"use strict";w6.exports=function(r){r._responsiveChartHandler&&(window.removeEventListener("resize",r._responsiveChartHandler),delete r._responsiveChartHandler)}});var T6=de((L0e,jc)=>{"use strict";jc.exports=Op;jc.exports.isMobile=Op;jc.exports.default=Op;var fV=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,cV=/CrOS/,hV=/android|ipad|playbook|silk/i;function Op(e){e||(e={});let r=e.ua;if(!r&&typeof navigator!="undefined"&&(r=navigator.userAgent),r&&r.headers&&typeof r.headers["user-agent"]=="string"&&(r=r.headers["user-agent"]),typeof r!="string")return!1;let t=fV.test(r)&&!cV.test(r)||!!e.tablet&&hV.test(r);return!t&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&r.indexOf("Macintosh")!==-1&&r.indexOf("Safari")!==-1&&(t=!0),t}});var k6=de((D0e,A6)=>{"use strict";var vV=nt(),dV=T6();A6.exports=function(r){var t;if(r&&r.hasOwnProperty("userAgent")?t=r.userAgent:t=pV(),typeof t!="string")return!0;var n=dV({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!n)for(var a=t.split(" "),o=1;o-1;l--){var u=a[l];if(u.substr(0,8)==="Version/"){var s=u.substr(8).split(".")[0];if(vV(s)&&(s=+s),s>=13)return!0}}}return n};function pV(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var C6=de((R0e,S6)=>{"use strict";var gV=it();S6.exports=function(r,t,n){var a=r.selectAll("g."+n.replace(/\s/g,".")).data(t,function(i){return i[0].trace.uid});a.exit().remove(),a.enter().append("g").attr("class",n),a.order();var o=r.classed("rangeplot")?"nodeRangePlot3":"node3";return a.each(function(i){i[0][o]=gV.select(this)}),a}});var L6=de((P0e,E6)=>{"use strict";var yV=Cr();E6.exports=function(r,t){for(var n=r._context.locale,a=0;a<2;a++){for(var o=r._context.locales,i=0;i<2;i++){var l=(o[n]||{}).dictionary;if(l){var u=l[t];if(u)return u}o=yV.localeRegistry}var s=n.split("-")[0];if(s===n)break;n=s}return t}});var R6=de((I0e,D6)=>{"use strict";D6.exports=function(r){for(var t={},n=[],a=0,o=0;o{"use strict";P6.exports=function(r){for(var t=xV(r)?bV:mV,n=[],a=0;a{"use strict";F6.exports=function(r,t){if(!t)return r;var n=1/Math.abs(t),a=n>1?(n*r+n*t)/n:r+t,o=String(a).length;if(o>16){var i=String(t).length,l=String(r).length;if(o>=l+i){var u=parseFloat(a).toPrecision(12);u.indexOf("e+")===-1&&(a=+u)}}return a}});var q6=de((z0e,z6)=>{"use strict";var _V=nt(),wV=nn().BADNUM,MV=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;z6.exports=function(r){return typeof r=="string"&&(r=r.replace(MV,"")),_V(r)?Number(r):wV}});var ir=de((q0e,Q6)=>{"use strict";var wf=it(),TV=Ss().utcFormat,AV=up().format,G6=nt(),Y6=nn(),W6=Y6.FP_SAFE,kV=-W6,O6=Y6.BADNUM,Xe=Q6.exports={};Xe.adjustFormat=function(r){return!r||/^\d[.]\df/.test(r)||/[.]\d%/.test(r)?r:r==="0.f"?"~f":/^\d%/.test(r)?"~%":/^\ds/.test(r)?"~s":!/^[~,.0$]/.test(r)&&/[&fps]/.test(r)?"~"+r:r};var B6={};Xe.warnBadFormat=function(e){var r=String(e);B6[r]||(B6[r]=1,Xe.warn('encountered bad format: "'+r+'"'))};Xe.noFormat=function(e){return String(e)};Xe.numberFormat=function(e){var r;try{r=AV(Xe.adjustFormat(e))}catch(t){return Xe.warnBadFormat(e),Xe.noFormat}return r};Xe.nestedProperty=Ec();Xe.keyedContainer=Dx();Xe.relativeAttr=Px();Xe.isPlainObject=wo();Xe.toLogRange=Dc();Xe.relinkPrivateKeys=zx();var Do=ea();Xe.isArrayBuffer=Do.isArrayBuffer;Xe.isTypedArray=Do.isTypedArray;Xe.isArrayOrTypedArray=Do.isArrayOrTypedArray;Xe.isArray1D=Do.isArray1D;Xe.ensureArray=Do.ensureArray;Xe.concat=Do.concat;Xe.maxRowLength=Do.maxRowLength;Xe.minRowLength=Do.minRowLength;var X6=Es();Xe.mod=X6.mod;Xe.modHalf=X6.modHalf;var Ro=t4();Xe.valObjectMeta=Ro.valObjectMeta;Xe.coerce=Ro.coerce;Xe.coerce2=Ro.coerce2;Xe.coerceFont=Ro.coerceFont;Xe.coercePattern=Ro.coercePattern;Xe.coerceHoverinfo=Ro.coerceHoverinfo;Xe.coerceSelectionMarkerOpacity=Ro.coerceSelectionMarkerOpacity;Xe.validate=Ro.validate;var va=s6();Xe.dateTime2ms=va.dateTime2ms;Xe.isDateTime=va.isDateTime;Xe.ms2DateTime=va.ms2DateTime;Xe.ms2DateTimeLocal=va.ms2DateTimeLocal;Xe.cleanDate=va.cleanDate;Xe.isJSDate=va.isJSDate;Xe.formatDate=va.formatDate;Xe.incrementMonth=va.incrementMonth;Xe.dateTick0=va.dateTick0;Xe.dfltRange=va.dfltRange;Xe.findExactDates=va.findExactDates;Xe.MIN_MS=va.MIN_MS;Xe.MAX_MS=va.MAX_MS;var Ll=Pp();Xe.findBin=Ll.findBin;Xe.sorterAsc=Ll.sorterAsc;Xe.sorterDes=Ll.sorterDes;Xe.distinctVals=Ll.distinctVals;Xe.roundUp=Ll.roundUp;Xe.sort=Ll.sort;Xe.findIndexOfMin=Ll.findIndexOfMin;Xe.sortObjectKeys=Jc();var $i=c6();Xe.aggNums=$i.aggNums;Xe.len=$i.len;Xe.mean=$i.mean;Xe.geometricMean=$i.geometricMean;Xe.median=$i.median;Xe.midRange=$i.midRange;Xe.variance=$i.variance;Xe.stdev=$i.stdev;Xe.interp=$i.interp;var Qa=Oc();Xe.init2dArray=Qa.init2dArray;Xe.transposeRagged=Qa.transposeRagged;Xe.dot=Qa.dot;Xe.translationMatrix=Qa.translationMatrix;Xe.rotationMatrix=Qa.rotationMatrix;Xe.rotationXYMatrix=Qa.rotationXYMatrix;Xe.apply3DTransform=Qa.apply3DTransform;Xe.apply2DTransform=Qa.apply2DTransform;Xe.apply2DTransform2=Qa.apply2DTransform2;Xe.convertCssMatrix=Qa.convertCssMatrix;Xe.inverseTransformMatrix=Qa.inverseTransformMatrix;var ki=g6();Xe.deg2rad=ki.deg2rad;Xe.rad2deg=ki.rad2deg;Xe.angleDelta=ki.angleDelta;Xe.angleDist=ki.angleDist;Xe.isFullCircle=ki.isFullCircle;Xe.isAngleInsideSector=ki.isAngleInsideSector;Xe.isPtInsideSector=ki.isPtInsideSector;Xe.pathArc=ki.pathArc;Xe.pathSector=ki.pathSector;Xe.pathAnnulus=ki.pathAnnulus;var Bs=y6();Xe.isLeftAnchor=Bs.isLeftAnchor;Xe.isCenterAnchor=Bs.isCenterAnchor;Xe.isRightAnchor=Bs.isRightAnchor;Xe.isTopAnchor=Bs.isTopAnchor;Xe.isMiddleAnchor=Bs.isMiddleAnchor;Xe.isBottomAnchor=Bs.isBottomAnchor;var Us=x6();Xe.segmentsIntersect=Us.segmentsIntersect;Xe.segmentDistance=Us.segmentDistance;Xe.getTextLocation=Us.getTextLocation;Xe.clearLocationCache=Us.clearLocationCache;Xe.getVisibleSegment=Us.getVisibleSegment;Xe.findPointOnPath=Us.findPointOnPath;var th=Tt();Xe.extendFlat=th.extendFlat;Xe.extendDeep=th.extendDeep;Xe.extendDeepAll=th.extendDeepAll;Xe.extendDeepNoArrays=th.extendDeepNoArrays;var Bp=kl();Xe.log=Bp.log;Xe.warn=Bp.warn;Xe.error=Bp.error;var SV=Ls();Xe.counterRegex=SV.counter;var Up=$c();Xe.throttle=Up.throttle;Xe.throttleDone=Up.done;Xe.clearThrottle=Up.clear;var $a=pf();Xe.getGraphDiv=$a.getGraphDiv;Xe.isPlotDiv=$a.isPlotDiv;Xe.removeElement=$a.removeElement;Xe.addStyleRule=$a.addStyleRule;Xe.addRelatedStyleRule=$a.addRelatedStyleRule;Xe.deleteRelatedStyleRule=$a.deleteRelatedStyleRule;Xe.setStyleOnHover=$a.setStyleOnHover;Xe.getFullTransformMatrix=$a.getFullTransformMatrix;Xe.getElementTransformMatrix=$a.getElementTransformMatrix;Xe.getElementAndAncestors=$a.getElementAndAncestors;Xe.equalDomRects=$a.equalDomRects;Xe.clearResponsive=M6();Xe.preserveDrawingBuffer=k6();Xe.makeTraceGroups=C6();Xe._=L6();Xe.notifier=xp();Xe.filterUnique=R6();Xe.filterVisible=I6();Xe.pushUnique=Mp();Xe.increment=N6();Xe.cleanNumber=q6();Xe.ensureNumber=function(r){return G6(r)?(r=Number(r),r>W6||r=r?!1:G6(e)&&e>=0&&e%1===0};Xe.noop=qc();Xe.identity=Dp();Xe.repeat=function(e,r){for(var t=new Array(r),n=0;nt?Math.max(t,Math.min(r,e)):Math.max(r,Math.min(t,e))};Xe.bBoxIntersect=function(e,r,t){return t=t||0,e.left<=r.right+t&&r.left<=e.right+t&&e.top<=r.bottom+t&&r.top<=e.bottom+t};Xe.simpleMap=function(e,r,t,n,a){for(var o=e.length,i=new Array(o),l=0;l=Math.pow(2,t)?a>10?(Xe.warn("randstr failed uniqueness"),i):e(r,t,n,(a||0)+1):i};Xe.OptionControl=function(e,r){e||(e={}),r||(r="opt");var t={};return t.optionList=[],t._newoption=function(n){n[r]=e,t[n.name]=n,t.optionList.push(n)},t["_"+r]=e,t};Xe.smooth=function(e,r){if(r=Math.round(r)||0,r<2)return e;var t=e.length,n=2*t,a=2*r-1,o=new Array(a),i=new Array(t),l,u,s,f;for(l=0;l=n&&(s-=n*Math.floor(s/n)),s<0?s=-1-s:s>=t&&(s=n-1-s),f+=e[s]*o[u];i[l]=f}return i};Xe.syncOrAsync=function(e,r,t){var n,a;function o(){return Xe.syncOrAsync(e,r,t)}for(;e.length;)if(a=e.splice(0,1)[0],n=a(r),n&&n.then)return n.then(o);return t&&t(r)};Xe.stripTrailingSlash=function(e){return e.substr(-1)==="/"?e.substr(0,e.length-1):e};Xe.noneOrAll=function(e,r,t){if(e){var n=!1,a=!0,o,i;for(o=0;o0?a:0})};Xe.fillArray=function(e,r,t,n){if(n=n||Xe.identity,Xe.isArrayOrTypedArray(e))for(var a=0;aLV.test(window.navigator.userAgent);var DV=/Firefox\/(\d+)\.\d+/;Xe.getFirefoxVersion=function(){var e=DV.exec(window.navigator.userAgent);if(e&&e.length===2){var r=parseInt(e[1]);if(!isNaN(r))return r}return null};Xe.isD3Selection=function(e){return e instanceof wf.selection};Xe.ensureSingle=function(e,r,t,n){var a=e.select(r+(t?"."+t:""));if(a.size())return a;var o=e.append(r);return t&&o.classed(t,!0),n&&o.call(n),o};Xe.ensureSingleById=function(e,r,t,n){var a=e.select(r+"#"+t);if(a.size())return a;var o=e.append(r).attr("id",t);return n&&o.call(n),o};Xe.objectFromPath=function(e,r){for(var t=e.split("."),n,a=n={},o=0;o1?a+i[1]:"";if(o&&(i.length>1||l.length>4||t))for(;n.test(l);)l=l.replace(n,"$1"+o+"$2");return l+u};Xe.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var K6=/^\w*$/;Xe.templateString=function(e,r){var t={};return e.replace(Xe.TEMPLATE_STRING_REGEX,function(n,a){var o;return K6.test(a)?o=r[a]:(t[a]=t[a]||Xe.nestedProperty(r,a).get,o=t[a](!0)),o!==void 0?o:""})};var IV={max:10,count:0,name:"hovertemplate"};Xe.hovertemplateString=e=>Hp(xc(xl({},e),{opts:IV}));var FV={max:10,count:0,name:"texttemplate"};Xe.texttemplateString=e=>Hp(xc(xl({},e),{opts:FV}));var NV=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function zV(e){var r=e.match(NV);return r?{key:r[1],op:r[2],number:Number(r[3])}:{key:e,op:null,number:null}}var qV={max:10,count:0,name:"texttemplate",parseMultDiv:!0};Xe.texttemplateStringForShapes=e=>Hp(xc(xl({},e),{opts:qV}));var U6=/^[:|\|]/;function Hp({data:e=[],locale:r,fallback:t,labels:n={},opts:a,template:o}){return o.replace(Xe.TEMPLATE_STRING_REGEX,(i,l,u)=>{let s=["xother","yother"].includes(l),f=["_xother","_yother"].includes(l),h=["_xother_","_yother_"].includes(l),p=["xother_","yother_"].includes(l),_=s||f||p||h;(f||h)&&(l=l.substring(1)),(p||h)&&(l=l.substring(0,l.length-1));let m=null,w=null;if(a.parseMultDiv){var T=zV(l);l=T.key,m=T.op,w=T.number}let y;if(_){if(n[l]===void 0)return"";y=n[l]}else for(let M of e)if(M){if(M.hasOwnProperty(l)){y=M[l];break}if(K6.test(l)||(y=Xe.nestedProperty(M,l).get(!0)),y!==void 0)break}if(y===void 0){let{count:M,max:d,name:x}=a,g=t===!1?i:t;return M=rh&&i<=H6,s=l>=rh&&l<=H6;if(u&&(n=10*n+i-rh),s&&(a=10*a+l-rh),!u||!s){if(n!==a)return n-a;if(i!==l)return i-l}}return a-n};var Os=2e9;Xe.seedPseudoRandom=function(){Os=2e9};Xe.pseudoRandom=function(){var e=Os;return Os=(69069*Os+1)%4294967296,Math.abs(Os-e)<429496729?Xe.pseudoRandom():Os/4294967296};Xe.fillText=function(e,r,t){var n=Array.isArray(t)?function(i){t.push(i)}:function(i){t.text=i},a=Xe.extractOption(e,r,"htx","hovertext");if(Xe.isValidTextValue(a))return n(a);var o=Xe.extractOption(e,r,"tx","text");if(Xe.isValidTextValue(o))return n(o)};Xe.isValidTextValue=function(e){return e||e===0};Xe.formatPercent=function(e,r){r=r||0;for(var t=(Math.round(100*e*Math.pow(10,r))*Math.pow(.1,r)).toFixed(r)+"%",n=0;n1&&(s=1):s=0,Xe.strTranslate(a-s*(t+i),o-s*(n+l))+Xe.strScale(s)+(u?"rotate("+u+(r?"":" "+t+" "+n)+")":"")};Xe.setTransormAndDisplay=function(e,r){e.attr("transform",Xe.getTextTransform(r)),e.style("display",r.scale?null:"none")};Xe.ensureUniformFontSize=function(e,r){var t=Xe.extendFlat({},r);return t.size=Math.max(r.size,e._fullLayout.uniformtext.minsize||0),t};Xe.join2=function(e,r,t){var n=e.length;return n>1?e.slice(0,-1).join(r)+t+e[n-1]:e.join(r)};Xe.bigFont=function(e){return Math.round(1.2*e)};var V6=Xe.getFirefoxVersion(),OV=V6!==null&&V6<86;Xe.getPositionFromD3Event=function(){return OV?[wf.event.layerX,wf.event.layerY]:[wf.event.offsetX,wf.event.offsetY]}});var ew=de(()=>{"use strict";var BV=ir(),$6={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(Vp in $6)j6=Vp.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),BV.addStyleRule(j6,$6[Vp]);var j6,Vp});var Gp=de((H0e,rw)=>{rw.exports=!0});var Wp=de((V0e,tw)=>{"use strict";var UV=Gp(),Yp;typeof window.matchMedia=="function"?Yp=!window.matchMedia("(hover: none)").matches:Yp=UV;tw.exports=Yp});var ih=de((G0e,Xp)=>{"use strict";var Hs=typeof Reflect=="object"?Reflect:null,nw=Hs&&typeof Hs.apply=="function"?Hs.apply:function(r,t,n){return Function.prototype.apply.call(r,t,n)},nh;Hs&&typeof Hs.ownKeys=="function"?nh=Hs.ownKeys:Object.getOwnPropertySymbols?nh=function(r){return Object.getOwnPropertyNames(r).concat(Object.getOwnPropertySymbols(r))}:nh=function(r){return Object.getOwnPropertyNames(r)};function HV(e){console&&console.warn&&console.warn(e)}var iw=Number.isNaN||function(r){return r!==r};function At(){At.init.call(this)}Xp.exports=At;Xp.exports.once=WV;At.EventEmitter=At;At.prototype._events=void 0;At.prototype._eventsCount=0;At.prototype._maxListeners=void 0;var aw=10;function ah(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(At,"defaultMaxListeners",{enumerable:!0,get:function(){return aw},set:function(e){if(typeof e!="number"||e<0||iw(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");aw=e}});At.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};At.prototype.setMaxListeners=function(r){if(typeof r!="number"||r<0||iw(r))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+r+".");return this._maxListeners=r,this};function ow(e){return e._maxListeners===void 0?At.defaultMaxListeners:e._maxListeners}At.prototype.getMaxListeners=function(){return ow(this)};At.prototype.emit=function(r){for(var t=[],n=1;n0&&(i=t[0]),i instanceof Error)throw i;var l=new Error("Unhandled error."+(i?" ("+i.message+")":""));throw l.context=i,l}var u=o[r];if(u===void 0)return!1;if(typeof u=="function")nw(u,this,t);else for(var s=u.length,f=cw(u,s),n=0;n0&&i.length>a&&!i.warned){i.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+i.length+" "+String(r)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=r,l.count=i.length,HV(l)}return e}At.prototype.addListener=function(r,t){return lw(this,r,t,!1)};At.prototype.on=At.prototype.addListener;At.prototype.prependListener=function(r,t){return lw(this,r,t,!0)};function VV(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function sw(e,r,t){var n={fired:!1,wrapFn:void 0,target:e,type:r,listener:t},a=VV.bind(n);return a.listener=t,n.wrapFn=a,a}At.prototype.once=function(r,t){return ah(t),this.on(r,sw(this,r,t)),this};At.prototype.prependOnceListener=function(r,t){return ah(t),this.prependListener(r,sw(this,r,t)),this};At.prototype.removeListener=function(r,t){var n,a,o,i,l;if(ah(t),a=this._events,a===void 0)return this;if(n=a[r],n===void 0)return this;if(n===t||n.listener===t)--this._eventsCount===0?this._events=Object.create(null):(delete a[r],a.removeListener&&this.emit("removeListener",r,n.listener||t));else if(typeof n!="function"){for(o=-1,i=n.length-1;i>=0;i--)if(n[i]===t||n[i].listener===t){l=n[i].listener,o=i;break}if(o<0)return this;o===0?n.shift():GV(n,o),n.length===1&&(a[r]=n[0]),a.removeListener!==void 0&&this.emit("removeListener",r,l||t)}return this};At.prototype.off=At.prototype.removeListener;At.prototype.removeAllListeners=function(r){var t,n,a;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[r]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[r]),this;if(arguments.length===0){var o=Object.keys(n),i;for(a=0;a=0;a--)this.removeListener(r,t[a]);return this};function uw(e,r,t){var n=e._events;if(n===void 0)return[];var a=n[r];return a===void 0?[]:typeof a=="function"?t?[a.listener||a]:[a]:t?YV(a):cw(a,a.length)}At.prototype.listeners=function(r){return uw(this,r,!0)};At.prototype.rawListeners=function(r){return uw(this,r,!1)};At.listenerCount=function(e,r){return typeof e.listenerCount=="function"?e.listenerCount(r):fw.call(e,r)};At.prototype.listenerCount=fw;function fw(e){var r=this._events;if(r!==void 0){var t=r[e];if(typeof t=="function")return 1;if(t!==void 0)return t.length}return 0}At.prototype.eventNames=function(){return this._eventsCount>0?nh(this._events):[]};function cw(e,r){for(var t=new Array(r),n=0;n{"use strict";var Zp=ih().EventEmitter,ZV={init:function(e){if(e._ev instanceof Zp)return e;var r=new Zp,t=new Zp;return e._ev=r,e._internalEv=t,e.on=r.on.bind(r),e.once=r.once.bind(r),e.removeListener=r.removeListener.bind(r),e.removeAllListeners=r.removeAllListeners.bind(r),e._internalOn=t.on.bind(t),e._internalOnce=t.once.bind(t),e._removeInternalListener=t.removeListener.bind(t),e._removeAllInternalListeners=t.removeAllListeners.bind(t),e.emit=function(n,a){r.emit(n,a),t.emit(n,a)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,r,t){var n,a=e._ev;if(!a)return;var o=a._events[r];if(!o)return;function i(u){if(u.listener){if(a.removeListener(r,u.listener),!u.fired)return u.fired=!0,u.listener.apply(a,[t])}else return u.apply(a,[t])}o=Array.isArray(o)?o:[o];var l;for(l=0;l{"use strict";var dw=ir(),JV=Al().dfltConfig;function KV(e,r){for(var t=[],n,a=0;aJV.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};ji.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};ji.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};ji.undo=function(r){var t,n;if(!(r.undoQueue===void 0||isNaN(r.undoQueue.index)||r.undoQueue.index<=0)){for(r.undoQueue.index--,t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,n=0;n=r.undoQueue.queue.length)){for(t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,n=0;n{"use strict";yw.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var Ys=de($t=>{"use strict";var Ca=Cr(),Tf=ir(),lh=Sn(),Kp=Is(),QV=Jp(),$V=gf(),jV=Al().configAttributes,mw=zn(),ja=Tf.extendDeepAll,Vs=Tf.isPlainObject,eG=Tf.isArrayOrTypedArray,sh=Tf.nestedProperty,rG=Tf.valObjectMeta,Qp="_isSubplotObj",uh="_isLinkedToArray",tG="_arrayAttrRegexps",xw="_deprecated",$p=[Qp,uh,tG,xw];$t.IS_SUBPLOT_OBJ=Qp;$t.IS_LINKED_TO_ARRAY=uh;$t.DEPRECATED=xw;$t.UNDERSCORE_ATTRS=$p;$t.get=function(){var e={};return Ca.allTypes.forEach(function(r){e[r]=aG(r)}),{defs:{valObjects:rG,metaKeys:$p.concat(["description","role","editType","impliedEdits"]),editType:{traces:mw.traces,layout:mw.layout},impliedEdits:{}},traces:e,layout:iG(),frames:oG(),animation:Gs($V),config:Gs(jV)}};$t.crawl=function(e,r,t,n){var a=t||0;n=n||"",Object.keys(e).forEach(function(o){var i=e[o];if($p.indexOf(o)===-1){var l=(n?n+".":"")+o;r(i,o,e,a,l),!$t.isValObject(i)&&Vs(i)&&o!=="impliedEdits"&&$t.crawl(i,r,a+1,l)}})};$t.isValObject=function(e){return e&&e.valType!==void 0};$t.findArrayAttributes=function(e){var r=[],t=[],n=[],a,o;function i(u,s,f,h){t=t.slice(0,h).concat([s]),n=n.slice(0,h).concat([u&&u._isLinkedToArray]);var p=u&&(u.valType==="data_array"||u.arrayOk===!0)&&!(t[h-1]==="colorbar"&&(s==="ticktext"||s==="tickvals"));p&&l(a,0,"")}function l(u,s,f){var h=u[t[s]],p=f+t[s];if(s===t.length-1)eG(h)&&r.push(o+p);else if(n[s]){if(Array.isArray(h))for(var _=0;_=o.length)return!1;if(e.dimensions===2){if(t++,r.length===t)return e;var i=r[t];if(!oh(i))return!1;e=o[a][i]}else e=o[a]}else e=o}}return e}function oh(e){return e===Math.round(e)&&e>=0}function aG(e){var r,t;r=Ca.modules[e]._module,t=r.basePlotModule;var n={};n.type=null;var a=ja({},lh),o=ja({},r.attributes);$t.crawl(o,function(u,s,f,h,p){sh(a,p).set(void 0),u===void 0&&sh(o,p).set(void 0)}),ja(n,a),Ca.traceIs(e,"noOpacity")&&delete n.opacity,Ca.traceIs(e,"showLegend")||(delete n.showlegend,delete n.legendgroup),Ca.traceIs(e,"noHover")&&(delete n.hoverinfo,delete n.hoverlabel),r.selectPoints||delete n.selectedpoints,ja(n,o),t.attributes&&ja(n,t.attributes),n.type=e;var i={meta:r.meta||{},categories:r.categories||{},animatable:!!r.animatable,type:e,attributes:Gs(n)};if(r.layoutAttributes){var l={};ja(l,r.layoutAttributes),i.layoutAttributes=Gs(l)}return r.animatable||$t.crawl(i,function(u){$t.isValObject(u)&&"anim"in u&&delete u.anim}),i}function iG(){var e={},r,t;ja(e,Kp);for(r in Ca.subplotsRegistry)if(t=Ca.subplotsRegistry[r],!!t.layoutAttributes)if(Array.isArray(t.attr))for(var n=0;n{"use strict";var Ws=ir(),cG=Sn(),Po="templateitemname",jp={name:{valType:"string",editType:"none"}};jp[Po]={valType:"string",editType:"calc"};Dl.templatedArray=function(e,r){return r._isLinkedToArray=e,r.name=jp.name,r[Po]=jp[Po],r};Dl.traceTemplater=function(e){var r={},t,n;for(t in e)n=e[t],Array.isArray(n)&&n.length&&(r[t]=0);function a(o){t=Ws.coerce(o,{},cG,"type");var i={type:t,_template:null};if(t in r){n=e[t];var l=r[t]%n.length;r[t]++,i._template=n[l]}return i}return{newTrace:a}};Dl.newContainer=function(e,r,t){var n=e._template,a=n&&(n[r]||t&&n[t]);Ws.isPlainObject(a)||(a=null);var o=e[r]={_template:a};return o};Dl.arrayTemplater=function(e,r,t){var n=e._template,a=n&&n[Mw(r)],o=n&&n[r];(!Array.isArray(o)||!o.length)&&(o=[]);var i={};function l(s){var f={name:s.name,_input:s},h=f[Po]=s[Po];if(!ww(h))return f._template=a,f;for(var p=0;p=n&&(t._input||{})._templateitemname;o&&(a=n);var i=r+"["+a+"]",l;function u(){l={},o&&(l[i]={},l[i][Po]=o)}u();function s(_,m){l[_]=m}function f(_,m){o?Ws.nestedProperty(l[i],_).set(m):l[i+"."+_]=m}function h(){var _=l;return u(),_}function p(_,m){_&&f(_,m);var w=h();for(var T in w)Ws.nestedProperty(e,T).set(w[T])}return{modifyBase:s,modifyItem:f,getUpdateObj:h,applyUpdate:p}}});var _n=de((K0e,Tw)=>{"use strict";var Af=Ls().counter;Tw.exports={idRegex:{x:Af("x","( domain)?"),y:Af("y","( domain)?")},attrRegex:Af("[xy]axis"),xAxisMatch:Af("xaxis"),yAxisMatch:Af("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var jt=de(aa=>{"use strict";var hG=Cr(),eg=_n();aa.id2name=function(r){if(!(typeof r!="string"||!r.match(eg.AX_ID_PATTERN))){var t=r.split(" ")[0].substr(1);return t==="1"&&(t=""),r.charAt(0)+"axis"+t}};aa.name2id=function(r){if(r.match(eg.AX_NAME_PATTERN)){var t=r.substr(5);return t==="1"&&(t=""),r.charAt(0)+t}};aa.cleanId=function(r,t,n){var a=/( domain)$/.test(r);if(!(typeof r!="string"||!r.match(eg.AX_ID_PATTERN))&&!(t&&r.charAt(0)!==t)&&!(a&&!n)){var o=r.split(" ")[0].substr(1).replace(/^0+/,"");return o==="1"&&(o=""),r.charAt(0)+o+(a&&n?" domain":"")}};aa.list=function(e,r,t){var n=e._fullLayout;if(!n)return[];var a=aa.listIds(e,r),o=new Array(a.length),i;for(i=0;in?1:-1:+(e.substr(1)||1)-+(r.substr(1)||1)};aa.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function Aw(e,r){if(r&&r.length){for(var t=0;t{"use strict";function vG(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".outline-controllers").remove()}function dG(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}kw.exports={clearOutlineControllers:vG,clearOutline:dG}});var fh=de((j0e,Sw)=>{"use strict";Sw.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var kf=de(hh=>{"use strict";var ch=Cr(),ece=_n().SUBPLOT_PATTERN;hh.getSubplotCalcData=function(e,r,t){var n=ch.subplotsRegistry[r];if(!n)return[];for(var a=n.attr,o=[],i=0;i{"use strict";var pG=Cr(),Xs=ir();Rl.manageCommandObserver=function(e,r,t,n){var a={},o=!0;r&&r._commandObserver&&(a=r._commandObserver),a.cache||(a.cache={}),a.lookupTable={};var i=Rl.hasSimpleAPICommandBindings(e,t,a.lookupTable);if(r&&r._commandObserver){if(i)return a;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,a}if(i){Cw(e,i,a.cache),a.check=function(){if(o){var f=Cw(e,i,a.cache);return f.changed&&n&&a.lookupTable[f.value]!==void 0&&(a.disable(),Promise.resolve(n({value:f.value,type:i.type,prop:i.prop,traces:i.traces,index:a.lookupTable[f.value]})).then(a.enable,a.enable)),f.changed}};for(var l=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],u=0;u0?".":"")+a;Xs.isPlainObject(o)?rg(o,r,i,n+1):r(i,a,o)}})}});var on=de((nce,Yw)=>{"use strict";var qw=it(),yG=Ss().timeFormatLocale,mG=up().formatLocale,Sf=nt(),bG=fp(),ot=Cr(),Ow=Ys(),xG=yt(),br=ir(),Bw=Xr(),Rw=nn().BADNUM,ia=jt(),_G=Io().clearOutline,wG=fh(),tg=gf(),MG=Jp(),TG=kf().getModuleCalcData,Pw=br.relinkPrivateKeys,Pl=br._,cr=Yw.exports={};br.extendFlat(cr,ot);cr.attributes=Sn();cr.attributes.type.values=cr.allTypes;cr.fontAttrs=kn();cr.layoutAttributes=Is();var dh=Dw();cr.executeAPICommand=dh.executeAPICommand;cr.computeAPICommandBindings=dh.computeAPICommandBindings;cr.manageCommandObserver=dh.manageCommandObserver;cr.hasSimpleAPICommandBindings=dh.hasSimpleAPICommandBindings;cr.redrawText=function(e){return e=br.getGraphDiv(e),new Promise(function(r){setTimeout(function(){e._fullLayout&&(ot.getComponentMethod("annotations","draw")(e),ot.getComponentMethod("legend","draw")(e),ot.getComponentMethod("colorbar","draw")(e),r(cr.previousPromises(e)))},300)})};cr.resize=function(e){e=br.getGraphDiv(e);var r,t=new Promise(function(n,a){(!e||br.isHidden(e))&&a(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(r=e._resolveResize),e._resolveResize=n,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||br.isHidden(e)){n(e);return}delete e.layout.width,delete e.layout.height;var o=e.changed;e.autoplay=!0,ot.call("relayout",e,{autosize:!0}).then(function(){e.changed=o,e._resolveResize===n&&(delete e._resolveResize,n(e))})},100)});return r&&r(t),t};cr.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};cr.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var r=e._fullLayout,t=br.ensureSingle(r._paper,"text","js-plot-link-container",function(u){u.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:Bw.defaultLine,"pointer-events":"all"}).each(function(){var s=qw.select(this);s.append("tspan").classed("js-link-to-tool",!0),s.append("tspan").classed("js-link-spacer",!0),s.append("tspan").classed("js-sourcelinks",!0)})}),n=t.node(),a={y:r._paper.attr("height")-9};document.body.contains(n)&&n.getComputedTextLength()>=r.width-20?(a["text-anchor"]="start",a.x=5):(a["text-anchor"]="end",a.x=r._paper.attr("width")-7),t.attr(a);var o=t.select(".js-link-to-tool"),i=t.select(".js-link-spacer"),l=t.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&AG(e,o),i.text(o.text()&&l.text()?" - ":"")}};function AG(e,r){r.text("");var t=r.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)t.on("click",function(){cr.sendDataToCloud(e)});else{var n=window.location.pathname.split("/"),a=window.location.search;t.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+a})}}cr.sendDataToCloud=function(e){var r=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(r){e.emit("plotly_beforeexport");var t=qw.select(e).append("div").attr("id","hiddenform").style("display","none"),n=t.append("form").attr({action:r+"/external",method:"post",target:"_blank"}),a=n.append("input").attr({type:"text",name:"data"});return a.node().value=cr.graphJson(e,!1,"keepdata"),n.node().submit(),t.remove(),e.emit("plotly_afterexport"),!1}};var kG=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],SG=["year","month","dayMonth","dayMonthYear"];cr.supplyDefaults=function(e,r){var t=r&&r.skipUpdateCalc,n=e._fullLayout||{};if(n._skipDefaults){delete n._skipDefaults;return}var a=e._fullLayout={},o=e.layout||{},i=e._fullData||[],l=e._fullData=[],u=e.data||[],s=e.calcdata||[],f=e._context||{},h;e._transitionData||cr.createTransitionData(e),a._dfltTitle={plot:Pl(e,"Click to enter Plot title"),subtitle:Pl(e,"Click to enter Plot subtitle"),x:Pl(e,"Click to enter X axis title"),y:Pl(e,"Click to enter Y axis title"),colorbar:Pl(e,"Click to enter Colorscale title"),annotation:Pl(e,"new text")},a._traceWord=Pl(e,"trace");var p=Iw(e,kG);if(a._mapboxAccessToken=f.mapboxAccessToken,n._initialAutoSizeIsDone){var _=n.width,m=n.height;cr.supplyLayoutGlobalDefaults(o,a,p),o.width||(a.width=_),o.height||(a.height=m),cr.sanitizeMargins(a)}else{cr.supplyLayoutGlobalDefaults(o,a,p);var w=!o.width||!o.height,T=a.autosize,y=f.autosizable,k=w&&(T||y);k?cr.plotAutoSize(e,o,a):w&&cr.sanitizeMargins(a),!T&&w&&(o.width=a.width,o.height=a.height)}a._d3locale=LG(p,a.separators),a._extraFormat=Iw(e,SG),a._initialAutoSizeIsDone=!0,a._dataLength=u.length,a._modules=[],a._visibleModules=[],a._basePlotModules=[];var S=a._subplots=EG(),b=a._splomAxes={x:{},y:{}},M=a._splomSubplots={};a._splomGridDflt={},a._scatterStackOpts={},a._firstScatter={},a._alignmentOpts={},a._colorAxes={},a._requestRangeslider={},a._traceUids=CG(i,u),cr.supplyDataDefaults(u,l,o,a);var d=Object.keys(b.x),x=Object.keys(b.y);if(d.length>1&&x.length>1){for(ot.getComponentMethod("grid","sizeDefaults")(o,a),h=0;h15&&x.length>15&&a.shapes.length===0&&a.images.length===0,cr.linkSubplots(l,a,i,n),cr.cleanPlot(l,a,i,n);var D=!!(n._has&&n._has("cartesian")),E=!!(a._has&&a._has("cartesian")),R=D,N=E;R&&!N?n._bgLayer.remove():N&&!R&&(a._shouldCreateBgLayer=!0),n._zoomlayer&&!e._dragging&&_G({_fullLayout:n}),DG(l,a),Pw(a,n),ot.getComponentMethod("colorscale","crossTraceDefaults")(l,a),a._preGUI||(a._preGUI={}),a._tracePreGUI||(a._tracePreGUI={});var F=a._tracePreGUI,I={},L;for(L in F)I[L]="old";for(h=0;h0){var f=1-2*o;i=Math.round(f*i),l=Math.round(f*l)}}var h=cr.layoutAttributes.width.min,p=cr.layoutAttributes.height.min;i1,m=!t.height&&Math.abs(n.height-l)>1;(m||_)&&(_&&(n.width=i),m&&(n.height=l)),r._initialAutoSize||(r._initialAutoSize={width:i,height:l}),cr.sanitizeMargins(n)};cr.supplyLayoutModuleDefaults=function(e,r,t,n){var a=ot.componentsRegistry,o=r._basePlotModules,i,l,u,s=ot.subplotsRegistry.cartesian;for(i in a)u=a[i],u.includeBasePlot&&u.includeBasePlot(e,r);o.length||o.push(s),r._has("cartesian")&&(ot.getComponentMethod("grid","contentDefaults")(e,r),s.finalizeSubplots(e,r));for(var f in r._subplots)r._subplots[f].sort(br.subplotSort);for(l=0;l1&&(t.l/=T,t.r/=T)}if(p){var y=(t.t+t.b)/p;y>1&&(t.t/=y,t.b/=y)}var k=t.xl!==void 0?t.xl:t.x,S=t.xr!==void 0?t.xr:t.x,b=t.yt!==void 0?t.yt:t.y,M=t.yb!==void 0?t.yb:t.y;_[r]={l:{val:k,size:t.l+w},r:{val:S,size:t.r+w},b:{val:M,size:t.b+w},t:{val:b,size:t.t+w}},m[r]=1}if(!n._replotting)return cr.doAutoMargin(e)}};function PG(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var r=ia.list(e,"",!0);for(var t in r)if(r[t].autoshift||r[t].shift)return!0;return!1}cr.doAutoMargin=function(e){var r=e._fullLayout,t=r.width,n=r.height;r._size||(r._size={}),Uw(r);var a=r._size,o=r.margin,i={t:0,b:0,l:0,r:0},l=br.extendFlat({},a),u=o.l,s=o.r,f=o.t,h=o.b,p=r._pushmargin,_=r._pushmarginIds,m=r.minreducedwidth,w=r.minreducedheight;if(o.autoexpand!==!1){for(var T in p)_[T]||delete p[T];var y=e._fullLayout._reservedMargin;for(var k in y)for(var S in y[k]){var b=y[k][S];i[S]=Math.max(i[S],b)}p.base={l:{val:0,size:u},r:{val:1,size:s},t:{val:1,size:f},b:{val:0,size:h}};for(var M in i){var d=0;for(var x in p)x!=="base"&&Sf(p[x][M].size)&&(d=p[x][M].size>d?p[x][M].size:d);var g=Math.max(0,o[M]-d);i[M]=Math.max(0,i[M]-g)}for(var c in p){var A=p[c].l||{},v=p[c].b||{},D=A.val,E=A.size,R=v.val,N=v.size,F=t-i.r-i.l,I=n-i.t-i.b;for(var L in p){if(Sf(E)&&p[L].r){var P=p[L].r.val,O=p[L].r.size;if(P>D){var U=(E*P+(O-F)*D)/(P-D),X=(O*(1-D)+(E-F)*(1-P))/(P-D);U+X>u+s&&(u=U,s=X)}}if(Sf(N)&&p[L].t){var $=p[L].t.val,j=p[L].t.size;if($>R){var Y=(N*$+(j-I)*R)/($-R),q=(j*(1-R)+(N-I)*(1-$))/($-R);Y+q>h+f&&(h=Y,f=q)}}}}}var K=br.constrain(t-o.l-o.r,Hw,m),ne=br.constrain(n-o.t-o.b,Vw,w),Q=Math.max(0,t-K),oe=Math.max(0,n-ne);if(Q){var re=(u+s)/Q;re>1&&(u/=re,s/=re)}if(oe){var H=(h+f)/oe;H>1&&(h/=H,f/=H)}if(a.l=Math.round(u)+i.l,a.r=Math.round(s)+i.r,a.t=Math.round(f)+i.t,a.b=Math.round(h)+i.b,a.p=Math.round(o.pad),a.w=Math.round(t)-a.l-a.r,a.h=Math.round(n)-a.t-a.b,!r._replotting&&(cr.didMarginChange(l,a)||PG(e))){"_redrawFromAutoMarginCount"in r?r._redrawFromAutoMarginCount++:r._redrawFromAutoMarginCount=1;var ee=3*(1+Object.keys(_).length);if(r._redrawFromAutoMarginCount1)return!0}return!1};cr.graphJson=function(e,r,t,n,a,o){(a&&r&&!e._fullData||a&&!r&&!e._fullLayout)&&cr.supplyDefaults(e);var i=a?e._fullData:e.data,l=a?e._fullLayout:e.layout,u=(e._transitionData||{})._frames;function s(p,_){if(typeof p=="function")return _?"_function_":null;if(br.isPlainObject(p)){var m={},w;return Object.keys(p).sort().forEach(function(S){if(["_","["].indexOf(S.charAt(0))===-1){if(typeof p[S]=="function"){_&&(m[S]="_function");return}if(t==="keepdata"){if(S.substr(S.length-3)==="src")return}else if(t==="keepstream"){if(w=p[S+"src"],typeof w=="string"&&w.indexOf(":")>0&&!br.isPlainObject(p.stream))return}else if(t!=="keepall"&&(w=p[S+"src"],typeof w=="string"&&w.indexOf(":")>0))return;m[S]=s(p[S],_)}}),m}var T=Array.isArray(p),y=br.isTypedArray(p);if((T||y)&&p.dtype&&p.shape){var k=p.bdata;return s({dtype:p.dtype,shape:p.shape,bdata:br.isArrayBuffer(k)?bG.encode(k):k},_)}return T?p.map(function(S){return s(S,_)}):y?br.simpleMap(p,br.identity):br.isJSDate(p)?br.ms2DateTimeLocal(+p):p}var f={data:(i||[]).map(function(p){var _=s(p);return r&&delete _.fit,_})};if(!r&&(f.layout=s(l),a)){var h=l._size;f.layout.computed={margin:{b:h.b,l:h.l,r:h.r,t:h.t}}}return u&&(f.frames=s(u)),o&&(f.config=s(e._context,!0)),n==="object"?f:JSON.stringify(f)};cr.modifyFrames=function(e,r){var t,n,a,o=e._transitionData._frames,i=e._transitionData._frameHash;for(t=0;t0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){n=!0}),t.redraw&&e._transitionData._interruptCallbacks.push(function(){return ot.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var p=0,_=0;function m(){return p++,function(){_++,!n&&_===p&&l(h)}}t.runFn(m),setTimeout(m())})}function l(h){if(e._transitionData)return o(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(t.redraw)return ot.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(h)}function u(){if(e._transitionData)return e._transitioning=!1,a(e._transitionData._interruptCallbacks)}var s=[cr.previousPromises,u,t.prepareFn,cr.rehover,cr.reselect,i],f=br.syncOrAsync(s,e);return(!f||!f.then)&&(f=Promise.resolve()),f.then(function(){return e})}cr.doCalcdata=function(e,r){var t=ia.list(e),n=e._fullData,a=e._fullLayout,o,i,l,u,s=new Array(n.length),f=(e.calcdata||[]).slice();for(e.calcdata=s,a._numBoxes=0,a._numViolins=0,a._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,a._piecolormap={},a._sunburstcolormap={},a._treemapcolormap={},a._iciclecolormap={},a._funnelareacolormap={},l=0;l=0;u--)if(M[u].enabled){o._indexToPoints=M[u]._indexToPoints;break}i&&i.calc&&(b=i.calc(e,o))}(!Array.isArray(b)||!b[0])&&(b=[{x:Rw,y:Rw}]),b[0].t||(b[0].t={}),b[0].trace=o,s[k]=b}}for(Nw(t,n,a),l=0;l{"use strict";Il.xmlns="http://www.w3.org/2000/xmlns/";Il.svg="http://www.w3.org/2000/svg";Il.xlink="http://www.w3.org/1999/xlink";Il.svgAttrs={xmlns:Il.svg,"xmlns:xlink":Il.xlink}});var qn=de((ice,Ww)=>{"use strict";Ww.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var Wn=de(Ea=>{"use strict";var Wt=it(),eo=ir(),zG=eo.strTranslate,ng=Fo(),qG=qn().LINE_SPACING,OG=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;Ea.convertToTspans=function(e,r,t){var n=e.text(),a=!e.attr("data-notex")&&r&&r._context.typesetMath&&typeof MathJax!="undefined"&&n.match(OG),o=Wt.select(e.node().parentNode);if(o.empty())return;var i=e.attr("class")?e.attr("class").split(" ")[0]:"text";i+="-math",o.selectAll("svg."+i).remove(),o.selectAll("g."+i+"-group").remove(),e.style("display",null).attr({"data-unformatted":n,"data-math":"N"});function l(){o.empty()||(i=e.attr("class")+"-math",o.select("svg."+i).remove()),e.text("").style("white-space","pre");var u=$G(e.node(),n);u&&e.style("pointer-events","all"),Ea.positionText(e),t&&t.call(e)}return a?(r&&r._promises||[]).push(new Promise(function(u){e.style("display","none");var s=parseInt(e.node().style.fontSize,10),f={fontSize:s};VG(a[2],f,function(h,p,_){o.selectAll("svg."+i).remove(),o.selectAll("g."+i+"-group").remove();var m=h&&h.select("svg");if(!m||!m.node()){l(),u();return}var w=o.append("g").classed(i+"-group",!0).attr({"pointer-events":"none","data-unformatted":n,"data-math":"Y"});w.node().appendChild(m.node()),p&&p.node()&&m.node().insertBefore(p.node().cloneNode(!0),m.node().firstChild);var T=_.width,y=_.height;m.attr({class:i,height:y,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var k=e.node().style.fill||"black",S=m.select("g");S.attr({fill:k,stroke:k});var b=S.node().getBoundingClientRect(),M=b.width,d=b.height;(M>T||d>y)&&(m.style("overflow","hidden"),b=m.node().getBoundingClientRect(),M=b.width,d=b.height);var x=+e.attr("x"),g=+e.attr("y"),c=s||e.node().getBoundingClientRect().height,A=-c/4;if(i[0]==="y")w.attr({transform:"rotate("+[-90,x,g]+")"+zG(-M/2,A-d/2)});else if(i[0]==="l")g=A-d/2;else if(i[0]==="a"&&i.indexOf("atitle")!==0)x=0,g=A;else{var v=e.attr("text-anchor");x=x-M*(v==="middle"?.5:v==="end"?1:0),g=g+A-d/2}m.attr({x,y:g}),t&&t.call(e,w),u(w)})})):l(),e};var BG=/(<|<|<)/g,UG=/(>|>|>)/g;function HG(e){return e.replace(BG,"\\lt ").replace(UG,"\\gt ")}var Xw=[["$","$"],["\\(","\\)"]];function VG(e,r,t){var n=parseInt((MathJax.version||"").split(".")[0]);if(n!==2&&n!==3){eo.warn("No MathJax version:",MathJax.version);return}var a,o,i,l,u=function(){return o=eo.extendDeepAll({},MathJax.Hub.config),i=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:Xw},displayAlign:"left"})},s=function(){o=eo.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=Xw},f=function(){if(a=MathJax.Hub.config.menuSettings.renderer,a!=="SVG")return MathJax.Hub.setRenderer("SVG")},h=function(){a=MathJax.config.startup.output,a!=="svg"&&(MathJax.config.startup.output="svg")},p=function(){var k="math-output-"+eo.randstr({},64);l=Wt.select("body").append("div").attr({id:k}).style({visibility:"hidden",position:"absolute","font-size":r.fontSize+"px"}).text(HG(e));var S=l.node();return n===2?MathJax.Hub.Typeset(S):MathJax.typeset([S])},_=function(){var k=l.select(n===2?".MathJax_SVG":".MathJax"),S=!k.empty()&&l.select("svg").node();if(!S)eo.log("There was an error in the tex syntax.",e),t();else{var b=S.getBoundingClientRect(),M;n===2?M=Wt.select("body").select("#MathJax_SVG_glyphs"):M=k.select("defs"),t(k,M,b)}l.remove()},m=function(){if(a!=="SVG")return MathJax.Hub.setRenderer(a)},w=function(){a!=="svg"&&(MathJax.config.startup.output=a)},T=function(){return i!==void 0&&(MathJax.Hub.processSectionDelay=i),MathJax.Hub.Config(o)},y=function(){MathJax.config=o};n===2?MathJax.Hub.Queue(u,f,p,_,m,T):n===3&&(s(),h(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){p(),_(),w(),y()}))}var Qw={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},GG={sub:"0.3em",sup:"-0.6em"},YG={sub:"-0.21em",sup:"0.42em"},Zw="\u200B",Jw=["http:","https:","mailto:","",void 0,":"],$w=Ea.NEWLINES=/(\r\n?|\n)/g,ig=/(<[^<>]*>)/,og=/<(\/?)([^ >]*)(\s+(.*))?>/i,WG=//i;Ea.BR_TAG_ALL=//gi;var jw=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,e7=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,r7=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,XG=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function Fl(e,r){if(!e)return null;var t=e.match(r),n=t&&(t[3]||t[4]);return n&&ph(n)}var ZG=/(^|;)\s*color:/;Ea.plainText=function(e,r){r=r||{};for(var t=r.len!==void 0&&r.len!==-1?r.len:1/0,n=r.allowedTags!==void 0?r.allowedTags:["br"],a="...",o=a.length,i=e.split(ig),l=[],u="",s=0,f=0;fo?l.push(h.substr(0,w-o)+a):l.push(h.substr(0,w));break}u=""}}return l.join("")};var JG={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},KG=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function ph(e){return e.replace(KG,function(r,t){var n;return t.charAt(0)==="#"?n=QG(t.charAt(1)==="x"?parseInt(t.substr(2),16):parseInt(t.substr(1),10)):n=JG[t],n||r})}Ea.convertEntities=ph;function QG(e){if(!(e>1114111)){var r=String.fromCodePoint;if(r)return r(e);var t=String.fromCharCode;return e<=65535?t(e):t((e>>10)+55232,e%1024+56320)}}function $G(e,r){r=r.replace($w," ");var t=!1,n=[],a,o=-1;function i(){o++;var d=document.createElementNS(ng.svg,"tspan");Wt.select(d).attr({class:"line",dy:o*qG+"em"}),e.appendChild(d),a=d;var x=n;if(n=[{node:d}],x.length>1)for(var g=1;g.",r);return}var x=n.pop();d!==x.type&&eo.log("Start tag <"+x.type+"> doesnt match end tag <"+d+">. Pretending it did match.",r),a=n[n.length-1].node}var f=WG.test(r);f?i():(a=e,n=[{node:e}]);for(var h=r.split(ig),p=0;p{"use strict";var jG=it(),yh=ka(),Ef=nt(),gh=ir(),n7=Xr(),eY=Ml().isValid;function rY(e,r,t){var n=r?gh.nestedProperty(e,r).get()||{}:e,a=n[t||"color"];a&&a._inputArray&&(a=a._inputArray);var o=!1;if(gh.isArrayOrTypedArray(a)){for(var i=0;i=0;n--,a++){var o=e[n];t[a]=[1-o[0],o[1]]}return t}function u7(e,r){r=r||{};for(var t=e.domain,n=e.range,a=n.length,o=new Array(a),i=0;i{"use strict";var c7=Sp(),nY=c7.FORMAT_LINK,aY=c7.DATE_FORMAT_LINK;function iY(e,r){return{valType:"string",dflt:"",editType:"none",description:(r?lg:h7)("hover text",e)+["By default the values are formatted using "+(r?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function lg(e,r){return["Sets the "+e+" formatting rule"+(r?"for `"+r+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+nY+"."].join(" ")}function h7(e,r){return lg(e,r)+[" And for dates see: "+aY+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}v7.exports={axisHoverFormat:iY,descriptionOnlyNumbers:lg,descriptionWithDates:h7}});var La=de((fce,L7)=>{"use strict";var d7=kn(),Zs=Ti(),E7=Ao().dash,ug=Tt().extendFlat,p7=yt().templatedArray,uce=Ka().templateFormatStringDescription,g7=ro().descriptionWithDates,oY=nn().ONEDAY,Ci=_n(),lY=Ci.HOUR_PATTERN,sY=Ci.WEEKDAY_PATTERN,sg={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},uY=ug({},sg,{values:sg.values.slice().concat(["sync"])});function y7(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var m7={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},b7={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},x7={valType:"data_array",editType:"ticks"},_7={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function w7(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=5),r}function M7(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var T7={valType:"color",dflt:Zs.defaultLine,editType:"ticks"},A7={valType:"color",dflt:Zs.lightLine,editType:"ticks"};function k7(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var S7=ug({},E7,{editType:"ticks"}),C7={valType:"boolean",editType:"ticks"};L7.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:Zs.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:d7({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[Ci.idRegex.x.toString(),Ci.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[Ci.idRegex.x.toString(),Ci.idRegex.y.toString()],editType:"calc"},rangebreaks:p7("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[sY,lY,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:oY},editType:"calc"}),tickmode:uY,nticks:y7(),tick0:m7,dtick:b7,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:x7,ticktext:{valType:"data_array",editType:"ticks"},ticks:_7,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:w7(),tickwidth:M7(),tickcolor:T7,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:ug({},E7,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:d7({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:g7("tick label")},tickformatstops:p7("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:g7("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:Zs.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:C7,gridcolor:A7,gridwidth:k7(),griddash:S7,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:Zs.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:Zs.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",Ci.idRegex.x.toString(),Ci.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",Ci.idRegex.x.toString(),Ci.idRegex.y.toString()],editType:"plot"},minor:{tickmode:sg,nticks:y7("minor"),tick0:m7,dtick:b7,tickvals:x7,ticks:_7,ticklen:w7("minor"),tickwidth:M7("minor"),tickcolor:T7,gridcolor:A7,gridwidth:k7("minor"),griddash:S7,showgrid:C7,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var mh=de((cce,P7)=>{"use strict";var kt=La(),D7=kn(),R7=Tt().extendFlat,fY=zn().overrideAll;P7.exports=fY({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:kt.linecolor,outlinewidth:kt.linewidth,bordercolor:kt.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:kt.minor.tickmode,nticks:kt.nticks,tick0:kt.tick0,dtick:kt.dtick,tickvals:kt.tickvals,ticktext:kt.ticktext,ticks:R7({},kt.ticks,{dflt:""}),ticklabeloverflow:R7({},kt.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:kt.ticklen,tickwidth:kt.tickwidth,tickcolor:kt.tickcolor,ticklabelstep:kt.ticklabelstep,showticklabels:kt.showticklabels,labelalias:kt.labelalias,tickfont:D7({}),tickangle:kt.tickangle,tickformat:kt.tickformat,tickformatstops:kt.tickformatstops,tickprefix:kt.tickprefix,showtickprefix:kt.showtickprefix,ticksuffix:kt.ticksuffix,showticksuffix:kt.showticksuffix,separatethousands:kt.separatethousands,exponentformat:kt.exponentformat,minexponent:kt.minexponent,showexponent:kt.showexponent,title:{text:{valType:"string"},font:D7({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var ei=de((vce,F7)=>{"use strict";var cY=mh(),hY=Ls().counter,vY=Jc(),I7=Ml().scales,hce=vY(I7);function bh(e){return"`"+e+"`"}F7.exports=function(r,t){r=r||"",t=t||{};var n=t.cLetter||"c",a="onlyIfNumerical"in t?t.onlyIfNumerical:!!r,o="noScale"in t?t.noScale:r==="marker.line",i="showScaleDflt"in t?t.showScaleDflt:n==="z",l=typeof t.colorscaleDflt=="string"?I7[t.colorscaleDflt]:null,u=t.editTypeOverride||"",s=r?r+".":"",f,h;"colorAttr"in t?(f=t.colorAttr,h=t.colorAttr):(f={z:"z",c:"color"}[n],h="in "+bh(s+f));var p=a?" Has an effect only if "+h+" is set to a numerical array.":"",_=n+"auto",m=n+"min",w=n+"max",T=n+"mid",y=bh(s+_),k=bh(s+m),S=bh(s+w),b=k+" and "+S,M={};M[m]=M[w]=void 0;var d={};d[_]=!1;var x={};return f==="color"&&(x.color={valType:"color",arrayOk:!0,editType:u||"style"},t.anim&&(x.color.anim=!0)),x[_]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:M},x[m]={valType:"number",dflt:null,editType:u||"plot",impliedEdits:d},x[w]={valType:"number",dflt:null,editType:u||"plot",impliedEdits:d},x[T]={valType:"number",dflt:null,editType:"calc",impliedEdits:M},x.colorscale={valType:"colorscale",editType:"calc",dflt:l,impliedEdits:{autocolorscale:!1}},x.autocolorscale={valType:"boolean",dflt:t.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},x.reversescale={valType:"boolean",dflt:!1,editType:"plot"},o||(x.showscale={valType:"boolean",dflt:i,editType:"calc"},x.colorbar=cY),t.noColorAxis||(x.coloraxis={valType:"subplotid",regex:hY("coloraxis"),dflt:null,editType:"calc"}),x}});var cg=de((dce,N7)=>{"use strict";var dY=Tt().extendFlat,pY=ei(),fg=Ml().scales;N7.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:fg.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:fg.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:fg.RdBu,editType:"calc"}},coloraxis:dY({_isSubplotObj:!0,editType:"calc"},pY("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var hg=de((pce,z7)=>{"use strict";var gY=ir();z7.exports=function(r){return gY.isPlainObject(r.colorbar)}});var pg=de(dg=>{"use strict";var vg=nt(),q7=ir(),O7=nn(),yY=O7.ONEDAY,mY=O7.ONEWEEK;dg.dtick=function(e,r){var t=r==="log",n=r==="date",a=r==="category",o=n?yY:1;if(!e)return o;if(vg(e))return e=Number(e),e<=0?o:a?Math.max(1,Math.round(e)):n?Math.max(.1,e):e;if(typeof e!="string"||!(n||t))return o;var i=e.charAt(0),l=e.substr(1);return l=vg(l)?Number(l):0,l<=0||!(n&&i==="M"&&l===Math.round(l)||t&&i==="L"||t&&i==="D"&&(l===1||l===2))?o:e};dg.tick0=function(e,r,t,n){if(r==="date")return q7.cleanDate(e,q7.dateTick0(t,n%mY===0?1:0));if(!(n==="D1"||n==="D2"))return vg(e)?Number(e):0}});var gg=de((yce,U7)=>{"use strict";var B7=pg(),bY=ir().isArrayOrTypedArray,xY=ea().isTypedArraySpec,_Y=ea().decodeTypedArraySpec;U7.exports=function(r,t,n,a,o){o||(o={});var i=o.isMinor,l=i?r.minor||{}:r,u=i?t.minor:t,s=i?"minor.":"";function f(k){var S=l[k];return xY(S)&&(S=_Y(S)),S!==void 0?S:(u._template||{})[k]}var h=f("tick0"),p=f("dtick"),_=f("tickvals"),m=bY(_)?"array":p?"linear":"auto",w=n(s+"tickmode",m);if(w==="auto"||w==="sync")n(s+"nticks");else if(w==="linear"){var T=u.dtick=B7.dtick(p,a);u.tick0=B7.tick0(h,a,t.calendar,T)}else if(a!=="multicategory"){var y=n(s+"tickvals");y===void 0?u.tickmode="auto":i||n("ticktext")}}});var mg=de((mce,V7)=>{"use strict";var yg=ir(),H7=La();V7.exports=function(r,t,n,a){var o=a.isMinor,i=o?r.minor||{}:r,l=o?t.minor:t,u=o?H7.minor:H7,s=o?"minor.":"",f=yg.coerce2(i,l,u,"ticklen",o?(t.ticklen||5)*.6:void 0),h=yg.coerce2(i,l,u,"tickwidth",o?t.tickwidth||1:void 0),p=yg.coerce2(i,l,u,"tickcolor",(o?t.tickcolor:void 0)||l.color),_=n(s+"ticks",!o&&a.outerTicks||f||h||p?"outside":"");_||(delete l.ticklen,delete l.tickwidth,delete l.tickcolor)}});var bg=de((bce,G7)=>{"use strict";G7.exports=function(r){var t=["showexponent","showtickprefix","showticksuffix"],n=t.filter(function(o){return r[o]!==void 0}),a=function(o){return r[o]===r[n[0]]};if(n.every(a)||n.length===1)return r[n[0]]}});var ri=de((xce,Y7)=>{"use strict";var xh=ir(),wY=yt();Y7.exports=function(r,t,n){var a=n.name,o=n.inclusionAttr||"visible",i=t[a],l=xh.isArrayOrTypedArray(r[a])?r[a]:[],u=t[a]=[],s=wY.arrayTemplater(t,a,o),f,h;for(f=0;f{"use strict";var xg=ir(),MY=Xr().contrast,W7=La(),TY=bg(),AY=ri();X7.exports=function(r,t,n,a,o){o||(o={});var i=n("labelalias");xg.isPlainObject(i)||delete t.labelalias;var l=TY(r),u=n("showticklabels");if(u){o.noTicklabelshift||n("ticklabelshift"),o.noTicklabelstandoff||n("ticklabelstandoff");var s=o.font||{},f=t.color,h=t.ticklabelposition||"",p=h.indexOf("inside")!==-1?MY(o.bgColor):f&&f!==W7.color.dflt?f:s.color;if(xg.coerceFont(n,"tickfont",s,{overrideDflt:{color:p}}),!o.noTicklabelstep&&a!=="multicategory"&&a!=="log"&&n("ticklabelstep"),!o.noAng){var _=n("tickangle");!o.noAutotickangles&&_==="auto"&&n("autotickangles")}if(a!=="category"){var m=n("tickformat");AY(r,t,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:kY}),t.tickformatstops.length||delete t.tickformatstops,!o.noExp&&!m&&a!=="date"&&(n("showexponent",l),n("exponentformat"),n("minexponent"),n("separatethousands"))}!o.noMinorloglabels&&a==="log"&&n("minorloglabels")}};function kY(e,r){function t(a,o){return xg.coerce(e,r,W7.tickformatstops,a,o)}var n=t("enabled");n&&(t("dtickrange"),t("value"))}});var wg=de((wce,Z7)=>{"use strict";var SY=bg();Z7.exports=function(r,t,n,a,o){o||(o={});var i=o.tickSuffixDflt,l=SY(r),u=n("tickprefix");u&&n("showtickprefix",l);var s=n("ticksuffix",i);s&&n("showticksuffix",l)}});var Mg=de((Mce,J7)=>{"use strict";var No=ir(),CY=yt(),EY=gg(),LY=mg(),DY=_g(),RY=wg(),PY=mh();J7.exports=function(r,t,n){var a=CY.newContainer(t,"colorbar"),o=r.colorbar||{};function i(v,D){return No.coerce(o,a,PY,v,D)}var l=n.margin||{t:0,b:0,l:0,r:0},u=n.width-l.l-l.r,s=n.height-l.t-l.b,f=i("orientation"),h=f==="v",p=i("thicknessmode");i("thickness",p==="fraction"?30/(h?u:s):30);var _=i("lenmode");i("len",_==="fraction"?1:h?s:u);var m=i("yref"),w=i("xref"),T=m==="paper",y=w==="paper",k,S,b,M="left";h?(b="middle",M=y?"left":"right",k=y?1.02:1,S=.5):(b=T?"bottom":"top",M="center",k=.5,S=T?1.02:1),No.coerce(o,a,{x:{valType:"number",min:y?-2:0,max:y?3:1,dflt:k}},"x"),No.coerce(o,a,{y:{valType:"number",min:T?-2:0,max:T?3:1,dflt:S}},"y"),i("xanchor",M),i("xpad"),i("yanchor",b),i("ypad"),No.noneOrAll(o,a,["x","y"]),i("outlinecolor"),i("outlinewidth"),i("bordercolor"),i("borderwidth"),i("bgcolor");var d=No.coerce(o,a,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");i("ticklabeloverflow",d.indexOf("inside")!==-1?"hide past domain":"hide past div"),EY(o,a,i,"linear");var x=n.font,g={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:x};d.indexOf("inside")!==-1&&(g.bgColor="black"),RY(o,a,i,"linear",g),DY(o,a,i,"linear",g),LY(o,a,i,"linear",g),i("title.text",n._dfltTitle.colorbar);var c=a.showticklabels?a.tickfont:x,A=No.extendFlat({},x,{family:c.family,size:No.bigFont(c.size)});No.coerceFont(i,"title.font",A),i("title.side",h?"top":"right")}});var Ei=de((Tce,$7)=>{"use strict";var K7=nt(),Ag=ir(),IY=hg(),FY=Mg(),Q7=Ml().isValid,NY=Cr().traceIs;function Tg(e,r){var t=r.slice(0,r.length-1);return r?Ag.nestedProperty(e,t).get()||{}:e}$7.exports=function e(r,t,n,a,o){var i=o.prefix,l=o.cLetter,u="_module"in t,s=Tg(r,i),f=Tg(t,i),h=Tg(t._template||{},i)||{},p=function(){return delete r.coloraxis,delete t.coloraxis,e(r,t,n,a,o)};if(u){var _=n._colorAxes||{},m=a(i+"coloraxis");if(m){var w=NY(t,"contour")&&Ag.nestedProperty(t,"contours.coloring").get()||"heatmap",T=_[m];T?(T[2].push(p),T[0]!==w&&(T[0]=!1,Ag.warn(["Ignoring coloraxis:",m,"setting","as it is linked to incompatible colorscales."].join(" ")))):_[m]=[w,t,[p]];return}}var y=s[l+"min"],k=s[l+"max"],S=K7(y)&&K7(k)&&y{"use strict";var j7=ir(),zY=yt(),e8=cg(),qY=Ei();r8.exports=function(r,t){function n(h,p){return j7.coerce(r,t,e8,h,p)}n("colorscale.sequential"),n("colorscale.sequentialminus"),n("colorscale.diverging");var a=t._colorAxes,o,i;function l(h,p){return j7.coerce(o,i,e8.coloraxis,h,p)}for(var u in a){var s=a[u];if(s[0])o=r[u]||{},i=zY.newContainer(t,u,"coloraxis"),i._name=u,qY(o,i,t,l,{prefix:"",cLetter:"c"});else{for(var f=0;f{"use strict";var OY=ir(),BY=Si().hasColorscale,UY=Si().extractOpts;n8.exports=function(r,t){function n(f,h){var p=f["_"+h];p!==void 0&&(f[h]=p)}function a(f,h){var p=h.container?OY.nestedProperty(f,h.container).get():f;if(p)if(p.coloraxis)p._colorAx=t[p.coloraxis];else{var _=UY(p),m=_.auto;(m||_.min===void 0)&&n(p,h.min),(m||_.max===void 0)&&n(p,h.max),_.autocolorscale&&n(p,"colorscale")}}for(var o=0;o{"use strict";var i8=nt(),kg=ir(),HY=Si().extractOpts;o8.exports=function(r,t,n){var a=r._fullLayout,o=n.vals,i=n.containerStr,l=i?kg.nestedProperty(t,i).get():t,u=HY(l),s=u.auto!==!1,f=u.min,h=u.max,p=u.mid,_=function(){return kg.aggNums(Math.min,null,o)},m=function(){return kg.aggNums(Math.max,null,o)};if(f===void 0?f=_():s&&(l._colorAx&&i8(f)?f=Math.min(f,_()):f=_()),h===void 0?h=m():s&&(l._colorAx&&i8(h)?h=Math.max(h,m()):h=m()),s&&p!==void 0&&(h-p>p-f?f=p-(h-p):h-p=0?w=a.colorscale.sequential:w=a.colorscale.sequentialminus,u._sync("colorscale",w)}}});var Li=de((Cce,l8)=>{"use strict";var _h=Ml(),Js=Si();l8.exports={moduleType:"component",name:"colorscale",attributes:ei(),layoutAttributes:cg(),supplyLayoutDefaults:t8(),handleDefaults:Ei(),crossTraceDefaults:a8(),calc:zo(),scales:_h.scales,defaultScale:_h.defaultScale,getScale:_h.get,isValidScale:_h.isValid,hasColorscale:Js.hasColorscale,extractOpts:Js.extractOpts,extractScale:Js.extractScale,flipScale:Js.flipScale,makeColorScaleFunc:Js.makeColorScaleFunc,makeColorScaleFuncFromTrace:Js.makeColorScaleFuncFromTrace}});var oa=de((Ece,u8)=>{"use strict";var s8=ir(),VY=ea().isTypedArraySpec;u8.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var r=e.marker;return s8.isPlainObject(r)&&(s8.isArrayOrTypedArray(r.size)||VY(r.size))}}});var Sg=de((Lce,f8)=>{"use strict";var GY=nt();f8.exports=function(r,t){t||(t=2);var n=r.marker,a=n.sizeref||1,o=n.sizemin||0,i=n.sizemode==="area"?function(l){return Math.sqrt(l/a)}:function(l){return l/a};return function(l){var u=i(l/t);return GY(u)&&u>0?Math.max(u,o):0}}});var to=de(Cn=>{"use strict";var wh=ir();Cn.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};Cn.isTraceInSubplots=function(e,r){if(e.type==="splom"){for(var t=e.xaxes||[],n=e.yaxes||[],a=0;a=0&&t.index{v8.exports=JY;var Cg={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},ZY=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function JY(e){var r=[];return e.replace(ZY,function(t,n,a){var o=n.toLowerCase();for(a=QY(a),o=="m"&&a.length>2&&(r.push([n].concat(a.splice(0,2))),o="l",n=n=="m"?"l":"L");;){if(a.length==Cg[o])return a.unshift(n),r.push(a);if(a.length{"use strict";var $Y=Eg(),ur=function(e,r){return r?Math.round(e*(r=Math.pow(10,r)))/r:Math.round(e)},Nr="M0,0Z",d8=Math.sqrt(2),qo=Math.sqrt(3),Lg=Math.PI,Dg=Math.cos,Rg=Math.sin;b8.exports={circle:{n:0,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a="M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z";return t?qr(r,t,a):a}},square:{n:1,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")}},diamond:{n:2,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.3,2);return qr(r,t,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"Z")}},cross:{n:3,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.4,2),a=ur(e*1.2,2);return qr(r,t,"M"+a+","+n+"H"+n+"V"+a+"H-"+n+"V"+n+"H-"+a+"V-"+n+"H-"+n+"V-"+a+"H"+n+"V-"+n+"H"+a+"Z")}},x:{n:4,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.8/d8,2),a="l"+n+","+n,o="l"+n+",-"+n,i="l-"+n+",-"+n,l="l-"+n+","+n;return qr(r,t,"M0,"+n+a+o+i+o+i+l+i+l+a+l+a+"Z")}},"triangle-up":{n:5,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2/qo,2),a=ur(e/2,2),o=ur(e,2);return qr(r,t,"M-"+n+","+a+"H"+n+"L0,-"+o+"Z")}},"triangle-down":{n:6,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2/qo,2),a=ur(e/2,2),o=ur(e,2);return qr(r,t,"M-"+n+",-"+a+"H"+n+"L0,"+o+"Z")}},"triangle-left":{n:7,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2/qo,2),a=ur(e/2,2),o=ur(e,2);return qr(r,t,"M"+a+",-"+n+"V"+n+"L-"+o+",0Z")}},"triangle-right":{n:8,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2/qo,2),a=ur(e/2,2),o=ur(e,2);return qr(r,t,"M-"+a+",-"+n+"V"+n+"L"+o+",0Z")}},"triangle-ne":{n:9,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.6,2),a=ur(e*1.2,2);return qr(r,t,"M-"+a+",-"+n+"H"+n+"V"+a+"Z")}},"triangle-se":{n:10,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.6,2),a=ur(e*1.2,2);return qr(r,t,"M"+n+",-"+a+"V"+n+"H-"+a+"Z")}},"triangle-sw":{n:11,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.6,2),a=ur(e*1.2,2);return qr(r,t,"M"+a+","+n+"H-"+n+"V-"+a+"Z")}},"triangle-nw":{n:12,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.6,2),a=ur(e*1.2,2);return qr(r,t,"M-"+n+","+a+"V-"+n+"H"+a+"Z")}},pentagon:{n:13,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.951,2),a=ur(e*.588,2),o=ur(-e,2),i=ur(e*-.309,2),l=ur(e*.809,2);return qr(r,t,"M"+n+","+i+"L"+a+","+l+"H-"+a+"L-"+n+","+i+"L0,"+o+"Z")}},hexagon:{n:14,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a=ur(e/2,2),o=ur(e*qo/2,2);return qr(r,t,"M"+o+",-"+a+"V"+a+"L0,"+n+"L-"+o+","+a+"V-"+a+"L0,-"+n+"Z")}},hexagon2:{n:15,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a=ur(e/2,2),o=ur(e*qo/2,2);return qr(r,t,"M-"+a+","+o+"H"+a+"L"+n+",0L"+a+",-"+o+"H-"+a+"L-"+n+",0Z")}},octagon:{n:16,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.924,2),a=ur(e*.383,2);return qr(r,t,"M-"+a+",-"+n+"H"+a+"L"+n+",-"+a+"V"+a+"L"+a+","+n+"H-"+a+"L-"+n+","+a+"V-"+a+"Z")}},star:{n:17,f:function(e,r,t){if(zr(r))return Nr;var n=e*1.4,a=ur(n*.225,2),o=ur(n*.951,2),i=ur(n*.363,2),l=ur(n*.588,2),u=ur(-n,2),s=ur(n*-.309,2),f=ur(n*.118,2),h=ur(n*.809,2),p=ur(n*.382,2);return qr(r,t,"M"+a+","+s+"H"+o+"L"+i+","+f+"L"+l+","+h+"L0,"+p+"L-"+l+","+h+"L-"+i+","+f+"L-"+o+","+s+"H-"+a+"L0,"+u+"Z")}},hexagram:{n:18,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.66,2),a=ur(e*.38,2),o=ur(e*.76,2);return qr(r,t,"M-"+o+",0l-"+a+",-"+n+"h"+o+"l"+a+",-"+n+"l"+a+","+n+"h"+o+"l-"+a+","+n+"l"+a+","+n+"h-"+o+"l-"+a+","+n+"l-"+a+",-"+n+"h-"+o+"Z")}},"star-triangle-up":{n:19,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*qo*.8,2),a=ur(e*.8,2),o=ur(e*1.6,2),i=ur(e*4,2),l="A "+i+","+i+" 0 0 1 ";return qr(r,t,"M-"+n+","+a+l+n+","+a+l+"0,-"+o+l+"-"+n+","+a+"Z")}},"star-triangle-down":{n:20,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*qo*.8,2),a=ur(e*.8,2),o=ur(e*1.6,2),i=ur(e*4,2),l="A "+i+","+i+" 0 0 1 ";return qr(r,t,"M"+n+",-"+a+l+"-"+n+",-"+a+l+"0,"+o+l+n+",-"+a+"Z")}},"star-square":{n:21,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.1,2),a=ur(e*2,2),o="A "+a+","+a+" 0 0 1 ";return qr(r,t,"M-"+n+",-"+n+o+"-"+n+","+n+o+n+","+n+o+n+",-"+n+o+"-"+n+",-"+n+"Z")}},"star-diamond":{n:22,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.4,2),a=ur(e*1.9,2),o="A "+a+","+a+" 0 0 1 ";return qr(r,t,"M-"+n+",0"+o+"0,"+n+o+n+",0"+o+"0,-"+n+o+"-"+n+",0Z")}},"diamond-tall":{n:23,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.7,2),a=ur(e*1.4,2);return qr(r,t,"M0,"+a+"L"+n+",0L0,-"+a+"L-"+n+",0Z")}},"diamond-wide":{n:24,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.4,2),a=ur(e*.7,2);return qr(r,t,"M0,"+a+"L"+n+",0L0,-"+a+"L-"+n+",0Z")}},hourglass:{n:25,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M"+n+","+n+"H-"+n+"L"+n+",-"+n+"H-"+n+"Z")},noDot:!0},bowtie:{n:26,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M"+n+","+n+"V-"+n+"L-"+n+","+n+"V-"+n+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a=ur(e/d8,2);return qr(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.3,2);return qr(r,t,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM0,-"+n+"V"+n+"M-"+n+",0H"+n)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.3,2),a=ur(e*.65,2);return qr(r,t,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM-"+a+",-"+a+"L"+a+","+a+"M-"+a+","+a+"L"+a+",-"+a)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.4,2);return qr(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.2,2),a=ur(e*.85,2);return qr(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e/2,2),a=ur(e,2);return qr(r,t,"M"+n+","+a+"V-"+a+"M"+(n-a)+",-"+a+"V"+a+"M"+a+","+n+"H-"+a+"M-"+a+","+(n-a)+"H"+a)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.2,2),a=ur(e*1.6,2),o=ur(e*.8,2);return qr(r,t,"M-"+n+","+o+"L0,0M"+n+","+o+"L0,0M0,-"+a+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.2,2),a=ur(e*1.6,2),o=ur(e*.8,2);return qr(r,t,"M-"+n+",-"+o+"L0,0M"+n+",-"+o+"L0,0M0,"+a+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.2,2),a=ur(e*1.6,2),o=ur(e*.8,2);return qr(r,t,"M"+o+","+n+"L0,0M"+o+",-"+n+"L0,0M-"+a+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.2,2),a=ur(e*1.6,2),o=ur(e*.8,2);return qr(r,t,"M-"+o+","+n+"L0,0M-"+o+",-"+n+"L0,0M"+a+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.4,2);return qr(r,t,"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.4,2);return qr(r,t,"M0,"+n+"V-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M"+n+","+n+"L-"+n+",-"+n)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a=ur(e*2,2);return qr(r,t,"M0,0L-"+n+","+a+"H"+n+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a=ur(e*2,2);return qr(r,t,"M0,0L-"+n+",-"+a+"H"+n+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2,2),a=ur(e,2);return qr(r,t,"M0,0L"+n+",-"+a+"V"+a+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2,2),a=ur(e,2);return qr(r,t,"M0,0L-"+n+",-"+a+"V"+a+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a=ur(e*2,2);return qr(r,t,"M-"+n+",0H"+n+"M0,0L-"+n+","+a+"H"+n+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a=ur(e*2,2);return qr(r,t,"M-"+n+",0H"+n+"M0,0L-"+n+",-"+a+"H"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2,2),a=ur(e,2);return qr(r,t,"M0,-"+a+"V"+a+"M0,0L"+n+",-"+a+"V"+a+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2,2),a=ur(e,2);return qr(r,t,"M0,-"+a+"V"+a+"M0,0L-"+n+",-"+a+"V"+a+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,r,t){if(zr(r))return Nr;var n=Lg/2.5,a=2*e*Dg(n),o=2*e*Rg(n);return qr(r,t,"M0,0L"+-a+","+o+"L"+a+","+o+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,r,t){if(zr(r))return Nr;var n=Lg/4,a=2*e*Dg(n),o=2*e*Rg(n);return qr(r,t,"M0,0L"+-a+","+o+"A "+2*e+","+2*e+" 0 0 1 "+a+","+o+"Z")},backoff:.4,noDot:!0}};function zr(e){return e===null}var p8,g8,y8,m8;function qr(e,r,t){if((!e||e%360===0)&&!r)return t;if(y8===e&&m8===r&&p8===t)return g8;y8=e,m8=r,p8=t;function n(T,y){var k=Dg(T),S=Rg(T),b=y[0],M=y[1]+(r||0);return[b*k-M*S,b*S+M*k]}for(var a=e/180*Lg,o=0,i=0,l=$Y(t),u="",s=0;s{"use strict";var ln=it(),dt=ir(),jY=dt.numberFormat,Ol=nt(),qg=ka(),Th=Cr(),wn=Xr(),eW=Li(),Df=dt.strTranslate,Ah=Wn(),rW=Fo(),tW=qn(),nW=tW.LINE_SPACING,L8=Nc().DESELECTDIM,aW=oa(),iW=Sg(),oW=to().appendArrayPointValue,vr=B8.exports={};vr.font=function(e,r){var t=r.variant,n=r.style,a=r.weight,o=r.color,i=r.size,l=r.family,u=r.shadow,s=r.lineposition,f=r.textcase;l&&e.style("font-family",l),i+1&&e.style("font-size",i+"px"),o&&e.call(wn.fill,o),a&&e.style("font-weight",a),n&&e.style("font-style",n),t&&e.style("font-variant",t),f&&e.style("text-transform",Pg(sW(f))),u&&e.style("text-shadow",u==="auto"?Ah.makeTextShadow(wn.contrast(o)):Pg(u)),s&&e.style("text-decoration-line",Pg(uW(s)))};function Pg(e){return e==="none"?void 0:e}var lW={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function sW(e){return lW[e]}function uW(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}vr.setPosition=function(e,r,t){e.attr("x",r).attr("y",t)};vr.setSize=function(e,r,t){e.attr("width",r).attr("height",t)};vr.setRect=function(e,r,t,n,a){e.call(vr.setPosition,r,t).call(vr.setSize,n,a)};vr.translatePoint=function(e,r,t,n){var a=t.c2p(e.x),o=n.c2p(e.y);if(Ol(a)&&Ol(o)&&r.node())r.node().nodeName==="text"?r.attr("x",a).attr("y",o):r.attr("transform",Df(a,o));else return!1;return!0};vr.translatePoints=function(e,r,t){e.each(function(n){var a=ln.select(this);vr.translatePoint(n,a,r,t)})};vr.hideOutsideRangePoint=function(e,r,t,n,a,o){r.attr("display",t.isPtWithinRange(e,a)&&n.isPtWithinRange(e,o)?null:"none")};vr.hideOutsideRangePoints=function(e,r){if(r._hasClipOnAxisFalse){var t=r.xaxis,n=r.yaxis;e.each(function(a){var o=a[0].trace,i=o.xcalendar,l=o.ycalendar,u=Th.traceIs(o,"bar-like")?".bartext":".point,.textpoint";e.selectAll(u).each(function(s){vr.hideOutsideRangePoint(s,ln.select(this),t,n,i,l)})})}};vr.crispRound=function(e,r,t){return!r||!Ol(r)?t||0:e._context.staticPlot?r:r<1?1:Math.round(r)};vr.singleLineStyle=function(e,r,t,n,a){r.style("fill","none");var o=(((e||[])[0]||{}).trace||{}).line||{},i=t||o.width||0,l=a||o.dash||"";wn.stroke(r,n||o.color),vr.dashLine(r,l,i)};vr.lineGroupStyle=function(e,r,t,n){e.style("fill","none").each(function(a){var o=(((a||[])[0]||{}).trace||{}).line||{},i=r||o.width||0,l=n||o.dash||"";ln.select(this).call(wn.stroke,t||o.color).call(vr.dashLine,l,i)})};vr.dashLine=function(e,r,t){t=+t||0,r=vr.dashStyle(r,t),e.style({"stroke-dasharray":r,"stroke-width":t+"px"})};vr.dashStyle=function(e,r){r=+r||1;var t=Math.max(r,3);return e==="solid"?e="":e==="dot"?e=t+"px,"+t+"px":e==="dash"?e=3*t+"px,"+3*t+"px":e==="longdash"?e=5*t+"px,"+5*t+"px":e==="dashdot"?e=3*t+"px,"+t+"px,"+t+"px,"+t+"px":e==="longdashdot"&&(e=5*t+"px,"+2*t+"px,"+t+"px,"+2*t+"px"),e};function D8(e,r,t,n){var a=r.fillpattern,o=r.fillgradient,i=vr.getPatternAttr,l=a&&(i(a.shape,0,"")||i(a.path,0,""));if(l){var u=i(a.bgcolor,0,null),s=i(a.fgcolor,0,null),f=a.fgopacity,h=i(a.size,0,8),p=i(a.solidity,0,.3),_=r.uid;vr.pattern(e,"point",t,_,l,h,p,void 0,a.fillmode,u,s,f)}else if(o&&o.type!=="none"){var m=o.type,w="scatterfill-"+r.uid;if(n&&(w="legendfill-"+r.uid),!n&&(o.start!==void 0||o.stop!==void 0)){var T,y;m==="horizontal"?(T={x:o.start,y:0},y={x:o.stop,y:0}):m==="vertical"&&(T={x:0,y:o.start},y={x:0,y:o.stop}),T.x=r._xA.c2p(T.x===void 0?r._extremes.x.min[0].val:T.x,!0),T.y=r._yA.c2p(T.y===void 0?r._extremes.y.min[0].val:T.y,!0),y.x=r._xA.c2p(y.x===void 0?r._extremes.x.max[0].val:y.x,!0),y.y=r._yA.c2p(y.y===void 0?r._extremes.y.max[0].val:y.y,!0),e.call(I8,t,w,"linear",o.colorscale,"fill",T,y,!0,!1)}else m==="horizontal"&&(m=m+"reversed"),e.call(vr.gradient,t,w,m,o.colorscale,"fill")}else r.fillcolor&&e.call(wn.fill,r.fillcolor)}vr.singleFillStyle=function(e,r){var t=ln.select(e.node()),n=t.data(),a=((n[0]||[])[0]||{}).trace||{};D8(e,a,r,!1)};vr.fillGroupStyle=function(e,r,t){e.style("stroke-width",0).each(function(n){var a=ln.select(this);n[0].trace&&D8(a,n[0].trace,r,t)})};var _8=x8();vr.symbolNames=[];vr.symbolFuncs=[];vr.symbolBackOffs=[];vr.symbolNeedLines={};vr.symbolNoDot={};vr.symbolNoFill={};vr.symbolList=[];Object.keys(_8).forEach(function(e){var r=_8[e],t=r.n;vr.symbolList.push(t,String(t),e,t+100,String(t+100),e+"-open"),vr.symbolNames[t]=e,vr.symbolFuncs[t]=r.f,vr.symbolBackOffs[t]=r.backoff||0,r.needLine&&(vr.symbolNeedLines[t]=!0),r.noDot?vr.symbolNoDot[t]=!0:vr.symbolList.push(t+200,String(t+200),e+"-dot",t+300,String(t+300),e+"-open-dot"),r.noFill&&(vr.symbolNoFill[t]=!0)});var fW=vr.symbolNames.length,cW="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";vr.symbolNumber=function(e){if(Ol(e))e=+e;else if(typeof e=="string"){var r=0;e.indexOf("-open")>0&&(r=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(r+=200,e=e.replace("-dot","")),e=vr.symbolNames.indexOf(e),e>=0&&(e+=r)}return e%100>=fW||e>=400?0:Math.floor(Math.max(e,0))};function R8(e,r,t,n){var a=e%100;return vr.symbolFuncs[a](r,t,n)+(e>=200?cW:"")}var w8=jY("~f"),P8={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};vr.gradient=function(e,r,t,n,a,o){var i=P8[n];return I8(e,r,t,i.type,a,o,i.start,i.stop,!1,i.reversed)};function I8(e,r,t,n,a,o,i,l,u,s){var f=a.length,h;n==="linear"?h={node:"linearGradient",attrs:{x1:i.x,y1:i.y,x2:l.x,y2:l.y,gradientUnits:u?"userSpaceOnUse":"objectBoundingBox"},reversed:s}:n==="radial"&&(h={node:"radialGradient",reversed:s});for(var p=new Array(f),_=0;_=0&&e.i===void 0&&(e.i=o.i),r.style("opacity",n.selectedOpacityFn?n.selectedOpacityFn(e):e.mo===void 0?i.opacity:e.mo),n.ms2mrc){var u;e.ms==="various"||i.size==="various"?u=3:u=n.ms2mrc(e.ms),e.mrc=u,n.selectedSizeFn&&(u=e.mrc=n.selectedSizeFn(e));var s=vr.symbolNumber(e.mx||i.symbol)||0;e.om=s%200>=100;var f=Ug(e,t),h=Bg(e,t);r.attr("d",R8(s,u,f,h))}var p=!1,_,m,w;if(e.so)w=l.outlierwidth,m=l.outliercolor,_=i.outliercolor;else{var T=(l||{}).width;w=(e.mlw+1||T+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?m=e.mlcc=n.lineScale(e.mlc):dt.isArrayOrTypedArray(l.color)?m=wn.defaultLine:m=l.color,dt.isArrayOrTypedArray(i.color)&&(_=wn.defaultLine,p=!0),"mc"in e?_=e.mcc=n.markerScale(e.mc):_=i.color||i.colors||"rgba(0,0,0,0)",n.selectedColorFn&&(_=n.selectedColorFn(e))}if(e.om)r.call(wn.stroke,_).style({"stroke-width":(w||1)+"px",fill:"none"});else{r.style("stroke-width",(e.isBlank?0:w)+"px");var y=i.gradient,k=e.mgt;k?p=!0:k=y&&y.type,dt.isArrayOrTypedArray(k)&&(k=k[0],P8[k]||(k=0));var S=i.pattern,b=vr.getPatternAttr,M=S&&(b(S.shape,e.i,"")||b(S.path,e.i,""));if(k&&k!=="none"){var d=e.mgc;d?p=!0:d=y.color;var x=t.uid;p&&(x+="-"+e.i),vr.gradient(r,a,x,k,[[0,d],[1,_]],"fill")}else if(M){var g=!1,c=S.fgcolor;!c&&o&&o.color&&(c=o.color,g=!0);var A=b(c,e.i,o&&o.color||null),v=b(S.bgcolor,e.i,null),D=S.fgopacity,E=b(S.size,e.i,8),R=b(S.solidity,e.i,.3);g=g||e.mcc||dt.isArrayOrTypedArray(S.shape)||dt.isArrayOrTypedArray(S.path)||dt.isArrayOrTypedArray(S.bgcolor)||dt.isArrayOrTypedArray(S.fgcolor)||dt.isArrayOrTypedArray(S.size)||dt.isArrayOrTypedArray(S.solidity);var N=t.uid;g&&(N+="-"+e.i),vr.pattern(r,"point",a,N,M,E,R,e.mcc,S.fillmode,v,A,D)}else dt.isArrayOrTypedArray(_)?wn.fill(r,_[e.i]):wn.fill(r,_);w&&wn.stroke(r,m)}};vr.makePointStyleFns=function(e){var r={},t=e.marker;return r.markerScale=vr.tryColorscale(t,""),r.lineScale=vr.tryColorscale(t,"line"),Th.traceIs(e,"symbols")&&(r.ms2mrc=aW.isBubble(e)?iW(e):function(){return(t.size||6)/2}),e.selectedpoints&&dt.extendFlat(r,vr.makeSelectedPointStyleFns(e)),r};vr.makeSelectedPointStyleFns=function(e){var r={},t=e.selected||{},n=e.unselected||{},a=e.marker||{},o=t.marker||{},i=n.marker||{},l=a.opacity,u=o.opacity,s=i.opacity,f=u!==void 0,h=s!==void 0;(dt.isArrayOrTypedArray(l)||f||h)&&(r.selectedOpacityFn=function(b){var M=b.mo===void 0?a.opacity:b.mo;return b.selected?f?u:M:h?s:L8*M});var p=a.color,_=o.color,m=i.color;(_||m)&&(r.selectedColorFn=function(b){var M=b.mcc||p;return b.selected?_||M:m||M});var w=a.size,T=o.size,y=i.size,k=T!==void 0,S=y!==void 0;return Th.traceIs(e,"symbols")&&(k||S)&&(r.selectedSizeFn=function(b){var M=b.mrc||w/2;return b.selected?k?T/2:M:S?y/2:M}),r};vr.makeSelectedTextStyleFns=function(e){var r={},t=e.selected||{},n=e.unselected||{},a=e.textfont||{},o=t.textfont||{},i=n.textfont||{},l=a.color,u=o.color,s=i.color;return r.selectedTextColorFn=function(f){var h=f.tc||l;return f.selected?u||h:s||(u?h:wn.addOpacity(h,L8))},r};vr.selectedPointStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=vr.makeSelectedPointStyleFns(r),n=r.marker||{},a=[];t.selectedOpacityFn&&a.push(function(o,i){o.style("opacity",t.selectedOpacityFn(i))}),t.selectedColorFn&&a.push(function(o,i){wn.fill(o,t.selectedColorFn(i))}),t.selectedSizeFn&&a.push(function(o,i){var l=i.mx||n.symbol||0,u=t.selectedSizeFn(i);o.attr("d",R8(vr.symbolNumber(l),u,Ug(i,r),Bg(i,r))),i.mrc2=u}),a.length&&e.each(function(o){for(var i=ln.select(this),l=0;l0?t:0}vr.textPointStyle=function(e,r,t){if(e.size()){var n;if(r.selectedpoints){var a=vr.makeSelectedTextStyleFns(r);n=a.selectedTextColorFn}var o=r.texttemplate,i=t._fullLayout;e.each(function(l){var u=ln.select(this),s=o?dt.extractOption(l,r,"txt","texttemplate"):dt.extractOption(l,r,"tx","text");if(!s&&s!==0){u.remove();return}if(o){var f=r._module.formatLabels,h=f?f(l,r,i):{},p={};oW(p,r,l.i),s=dt.texttemplateString({data:[p,l,r._meta],fallback:r.texttemplatefallback,labels:h,locale:i._d3locale,template:s})}var _=l.tp||r.textposition,m=N8(l,r),w=n?n(l):l.tc||r.textfont.color;u.call(vr.font,{family:l.tf||r.textfont.family,weight:l.tw||r.textfont.weight,style:l.ty||r.textfont.style,variant:l.tv||r.textfont.variant,textcase:l.tC||r.textfont.textcase,lineposition:l.tE||r.textfont.lineposition,shadow:l.tS||r.textfont.shadow,size:m,color:w}).text(s).call(Ah.convertToTspans,t).call(F8,_,m,l.mrc)})}};vr.selectedTextStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=vr.makeSelectedTextStyleFns(r);e.each(function(n){var a=ln.select(this),o=t.selectedTextColorFn(n),i=n.tp||r.textposition,l=N8(n,r);wn.fill(a,o);var u=Th.traceIs(r,"bar-like");F8(a,i,l,n.mrc2||n.mrc,u)})}};var M8=.5;vr.smoothopen=function(e,r){if(e.length<3)return"M"+e.join("L");var t="M"+e[0],n=[],a;for(a=1;a=u||b>=f&&b<=u)&&(M<=h&&M>=s||M>=h&&M<=s)&&(e=[b,M])}return e}vr.applyBackoff=O8;vr.makeTester=function(){var e=dt.ensureSingleById(ln.select("body"),"svg","js-plotly-tester",function(t){t.attr(rW.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),r=dt.ensureSingle(e,"path","js-reference-point",function(t){t.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});vr.tester=e,vr.testref=r};vr.savedBBoxes={};var Fg=0,dW=1e4;vr.bBox=function(e,r,t){t||(t=T8(e));var n;if(t){if(n=vr.savedBBoxes[t],n)return dt.extendFlat({},n)}else if(e.childNodes.length===1){var a=e.childNodes[0];if(t=T8(a),t){var o=+a.getAttribute("x")||0,i=+a.getAttribute("y")||0,l=a.getAttribute("transform");if(!l){var u=vr.bBox(a,!1,t);return o&&(u.left+=o,u.right+=o),i&&(u.top+=i,u.bottom+=i),u}if(t+="~"+o+"~"+i+"~"+l,n=vr.savedBBoxes[t],n)return dt.extendFlat({},n)}}var s,f;r?s=e:(f=vr.tester.node(),s=e.cloneNode(!0),f.appendChild(s)),ln.select(s).attr("transform",null).call(Ah.positionText,0,0);var h=s.getBoundingClientRect(),p=vr.testref.node().getBoundingClientRect();r||f.removeChild(s);var _={height:h.height,width:h.width,left:h.left-p.left,top:h.top-p.top,right:h.right-p.left,bottom:h.bottom-p.top};return Fg>=dW&&(vr.savedBBoxes={},Fg=0),t&&(vr.savedBBoxes[t]=_),Fg++,dt.extendFlat({},_)};function T8(e){var r=e.getAttribute("data-unformatted");if(r!==null)return r+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}vr.setClipUrl=function(e,r,t){e.attr("clip-path",Og(r,t))};function Og(e,r){if(!e)return null;var t=r._context,n=t._exportedPlot?"":t._baseUrl||"";return n?"url('"+n+"#"+e+"')":"url(#"+e+")"}vr.getTranslate=function(e){var r=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",n=e[t]("transform")||"",a=n.replace(r,function(o,i,l){return[i,l].join(" ")}).split(" ");return{x:+a[0]||0,y:+a[1]||0}};vr.setTranslate=function(e,r,t){var n=/(\btranslate\(.*?\);?)/,a=e.attr?"attr":"getAttribute",o=e.attr?"attr":"setAttribute",i=e[a]("transform")||"";return r=r||0,t=t||0,i=i.replace(n,"").trim(),i+=Df(r,t),i=i.trim(),e[o]("transform",i),i};vr.getScale=function(e){var r=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",n=e[t]("transform")||"",a=n.replace(r,function(o,i,l){return[i,l].join(" ")}).split(" ");return{x:+a[0]||1,y:+a[1]||1}};vr.setScale=function(e,r,t){var n=/(\bscale\(.*?\);?)/,a=e.attr?"attr":"getAttribute",o=e.attr?"attr":"setAttribute",i=e[a]("transform")||"";return r=r||1,t=t||1,i=i.replace(n,"").trim(),i+="scale("+r+","+t+")",i=i.trim(),e[o]("transform",i),i};var pW=/\s*sc.*/;vr.setPointGroupScale=function(e,r,t){if(r=r||1,t=t||1,!!e){var n=r===1&&t===1?"":"scale("+r+","+t+")";e.each(function(){var a=(this.getAttribute("transform")||"").replace(pW,"");a+=n,a=a.trim(),this.setAttribute("transform",a)})}};var gW=/translate\([^)]*\)\s*$/;vr.setTextPointsScale=function(e,r,t){e&&e.each(function(){var n,a=ln.select(this),o=a.select("text");if(o.node()){var i=parseFloat(o.attr("x")||0),l=parseFloat(o.attr("y")||0),u=(a.attr("transform")||"").match(gW);r===1&&t===1?n=[]:n=[Df(i,l),"scale("+r+","+t+")",Df(-i,-l)],u&&n.push(u),a.attr("transform",n.join(""))}})};function Bg(e,r){var t;return e&&(t=e.mf),t===void 0&&(t=r.marker&&r.marker.standoff||0),!r._geo&&!r._xA?-t:t}vr.getMarkerStandoff=Bg;var Lf=Math.atan2,Nl=Math.cos,Qs=Math.sin;function A8(e,r){var t=r[0],n=r[1];return[t*Nl(e)-n*Qs(e),t*Qs(e)+n*Nl(e)]}var k8,S8,C8,E8,Ng,zg;function Ug(e,r){var t=e.ma;t===void 0&&(t=r.marker.angle,(!t||dt.isArrayOrTypedArray(t))&&(t=0));var n,a,o=r.marker.angleref;if(o==="previous"||o==="north"){if(r._geo){var i=r._geo.project(e.lonlat);n=i[0],a=i[1]}else{var l=r._xA,u=r._yA;if(l&&u)n=l.c2p(e.x),a=u.c2p(e.y);else return 90}if(r._geo){var s=e.lonlat[0],f=e.lonlat[1],h=r._geo.project([s,f+1e-5]),p=r._geo.project([s+1e-5,f]),_=Lf(p[1]-a,p[0]-n),m=Lf(h[1]-a,h[0]-n),w;if(o==="north")w=t/180*Math.PI;else if(o==="previous"){var T=s/180*Math.PI,y=f/180*Math.PI,k=k8/180*Math.PI,S=S8/180*Math.PI,b=k-T,M=Nl(S)*Qs(b),d=Qs(S)*Nl(y)-Nl(S)*Qs(y)*Nl(b);w=-Lf(M,d)-Math.PI,k8=s,S8=f}var x=A8(_,[Nl(w),0]),g=A8(m,[Qs(w),0]);t=Lf(x[1]+g[1],x[0]+g[0])/Math.PI*180,o==="previous"&&!(zg===r.uid&&e.i===Ng+1)&&(t=null)}if(o==="previous"&&!r._geo)if(zg===r.uid&&e.i===Ng+1&&Ol(n)&&Ol(a)){var c=n-C8,A=a-E8,v=r.line&&r.line.shape||"",D=v.slice(v.length-1);D==="h"&&(A=0),D==="v"&&(c=0),t+=Lf(A,c)/Math.PI*180+90}else t=null}return C8=n,E8=a,Ng=e.i,zg=r.uid,t}vr.getMarkerAngle=Ug});var Rf=de((Fce,G8)=>{"use strict";var $s=it(),yW=nt(),mW=on(),Hg=Cr(),Bl=ir(),U8=Bl.strTranslate,kh=mt(),Sh=Xr(),js=Wn(),H8=Nc(),bW=qn().OPPOSITE_SIDE,V8=/ [XY][0-9]* /,Vg=1.6,Gg=1.6;function xW(e,r,t){var n=e._fullLayout,a=t.propContainer,o=t.propName,i=t.placeholder,l=t.traceIndex,u=t.avoid||{},s=t.attributes,f=t.transform,h=t.containerGroup,p=1,_=a.title,m=(_&&_.text?_.text:"").trim(),w=!1,T=_&&_.font?_.font:{},y=T.family,k=T.size,S=T.color,b=T.weight,M=T.style,d=T.variant,x=T.textcase,g=T.lineposition,c=T.shadow,A=t.subtitlePropName,v=!!A,D=t.subtitlePlaceholder,E=(a.title||{}).subtitle||{text:"",font:{}},R=(E.text||"").trim(),N=!1,F=1,I=E.font,L=I.family,P=I.size,O=I.color,U=I.weight,X=I.style,$=I.variant,j=I.textcase,Y=I.lineposition,q=I.shadow,K;o==="title.text"?K="titleText":o.indexOf("axis")!==-1?K="axisTitleText":o.indexOf("colorbar")!==-1&&(K="colorbarTitleText");var ne=e._context.edits[K];function Q(Ce,Pe){return Ce===void 0||Pe===void 0?!1:Ce.replace(V8," % ")===Pe.replace(V8," % ")}m===""?p=0:Q(m,i)&&(ne||(m=""),p=.2,w=!0),v&&(R===""?F=0:Q(R,D)&&(ne||(R=""),F=.2,N=!0)),t._meta?m=Bl.templateString(m,t._meta):n._meta&&(m=Bl.templateString(m,n._meta));var oe=m||R||ne,re;h||(h=Bl.ensureSingle(n._infolayer,"g","g-"+r),re=n._hColorbarMoveTitle);var H=h.selectAll("text."+r).data(oe?[0]:[]);H.enter().append("text"),H.text(m).attr("class",r),H.exit().remove();var ee=null,V=r+"-subtitle",te=R||ne;if(v&&(ee=h.selectAll("text."+V).data(te?[0]:[]),ee.enter().append("text"),ee.text(R).attr("class",V),ee.exit().remove()),!oe)return h;function ue(Ce,Pe){Bl.syncOrAsync([ve,ke],{title:Ce,subtitle:Pe})}function ve(Ce){var Pe=Ce.title,Ee=Ce.subtitle,Ne;!f&&re&&(f={}),f?(Ne="",f.rotate&&(Ne+="rotate("+[f.rotate,s.x,s.y]+")"),(f.offset||re)&&(Ne+=U8(0,(f.offset||0)-(re||0)))):Ne=null,Pe.attr("transform",Ne);function Ue(pe){if(pe){var ce=$s.select(pe.node().parentNode).select("."+V);if(!ce.empty()){var be=pe.node().getBBox();if(be.height){var Le=be.y+be.height+Vg*P;ce.attr("y",Le)}}}}if(Pe.style("opacity",p*Sh.opacity(S)).call(kh.font,{color:Sh.rgb(S),size:$s.round(k,2),family:y,weight:b,style:M,variant:d,textcase:x,shadow:c,lineposition:g}).attr(s).call(js.convertToTspans,e,Ue),Ee&&!Ee.empty()){var ge=h.select("."+r+"-math-group"),we=Pe.node().getBBox(),Te=ge.node()?ge.node().getBBox():void 0,me=Te?Te.y+Te.height+Vg*P:we.y+we.height+Gg*P,ye=Bl.extendFlat({},s,{y:me});Ee.attr("transform",Ne),Ee.style("opacity",F*Sh.opacity(O)).call(kh.font,{color:Sh.rgb(O),size:$s.round(P,2),family:L,weight:U,style:X,variant:$,textcase:j,shadow:q,lineposition:Y}).attr(ye).call(js.convertToTspans,e)}return mW.previousPromises(e)}function ke(Ce){var Pe=Ce.title,Ee=$s.select(Pe.node().parentNode);if(u&&u.selection&&u.side&&m){Ee.attr("transform",null);var Ne=bW[u.side],Ue=u.side==="left"||u.side==="top"?-1:1,ge=yW(u.pad)?u.pad:2,we=kh.bBox(Ee.node()),Te={t:0,b:0,l:0,r:0},me=e._fullLayout._reservedMargin;for(var ye in me)for(var pe in me[ye]){var ce=me[ye][pe];Te[pe]=Math.max(Te[pe],ce)}var be={left:Te.l,top:Te.t,right:n.width-Te.r,bottom:n.height-Te.b},Le=u.maxShift||Ue*(be[u.side]-we[u.side]),qe=0;if(Le<0)qe=Le;else{var ze=u.offsetLeft||0,$e=u.offsetTop||0;we.left-=ze,we.right-=ze,we.top-=$e,we.bottom-=$e,u.selection.each(function(){var Be=kh.bBox(this);Bl.bBoxIntersect(we,Be,ge)&&(qe=Math.max(qe,Ue*(Be[u.side]-we[Ne])+ge))}),qe=Math.min(Le,qe),a._titleScoot=Math.abs(qe)}if(qe>0||Le<0){var Ve={left:[-qe,0],right:[qe,0],top:[0,-qe],bottom:[0,qe]}[u.side];Ee.attr("transform",U8(Ve[0],Ve[1]))}}}H.call(ue,ee);function Se(Ce,Pe){Ce.text(Pe).on("mouseover.opacity",function(){$s.select(this).transition().duration(H8.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){$s.select(this).transition().duration(H8.HIDE_PLACEHOLDER).style("opacity",0)})}if(ne&&(m?H.on(".opacity",null):(Se(H,i),w=!0),H.call(js.makeEditable,{gd:e}).on("edit",function(Ce){l!==void 0?Hg.call("_guiRestyle",e,o,Ce,l):Hg.call("_guiRelayout",e,o,Ce)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ue)}).on("input",function(Ce){this.text(Ce||" ").call(js.positionText,s.x,s.y)}),v)){if(v&&!m){var he=H.node().getBBox(),Ae=he.y+he.height+Gg*P;ee.attr("y",Ae)}R?ee.on(".opacity",null):(Se(ee,D),N=!0),ee.call(js.makeEditable,{gd:e}).on("edit",function(Ce){Hg.call("_guiRelayout",e,"title.subtitle.text",Ce)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ue)}).on("input",function(Ce){this.text(Ce||" ").call(js.positionText,ee.attr("x"),ee.attr("y"))})}return H.classed("js-placeholder",w),ee&&!ee.empty()&&ee.classed("js-placeholder",N),h}G8.exports={draw:xW,SUBTITLE_PADDING_EM:Gg,SUBTITLE_PADDING_MATHJAX_EM:Vg}});var Fh=de((Nce,J8)=>{"use strict";var _W=it(),wW=Ss().utcFormat,bt=ir(),MW=bt.numberFormat,Di=nt(),Oo=bt.cleanNumber,TW=bt.ms2DateTime,Y8=bt.dateTime2ms,Ri=bt.ensureNumber,W8=bt.isArrayOrTypedArray,Bo=nn(),Ch=Bo.FP_SAFE,ti=Bo.BADNUM,AW=Bo.LOG_CLIP,kW=Bo.ONEWEEK,Eh=Bo.ONEDAY,Lh=Bo.ONEHOUR,X8=Bo.ONEMIN,Z8=Bo.ONESEC,Dh=jt(),Ih=_n(),Rh=Ih.HOUR_PATTERN,Ph=Ih.WEEKDAY_PATTERN;function Pf(e){return Math.pow(10,e)}function Yg(e){return e!=null}J8.exports=function(r,t){t=t||{};var n=r._id||"x",a=n.charAt(0);function o(b,M){if(b>0)return Math.log(b)/Math.LN10;if(b<=0&&M&&r.range&&r.range.length===2){var d=r.range[0],x=r.range[1];return .5*(d+x-2*AW*Math.abs(d-x))}else return ti}function i(b,M,d,x){if((x||{}).msUTC&&Di(b))return+b;var g=Y8(b,d||r.calendar);if(g===ti)if(Di(b)){b=+b;var c=Math.floor(bt.mod(b+.05,1)*10),A=Math.round(b-c/10);g=Y8(new Date(A))+c/10}else return ti;return g}function l(b,M,d){return TW(b,M,d||r.calendar)}function u(b){return r._categories[Math.round(b)]}function s(b){if(Yg(b)){if(r._categoriesMap===void 0&&(r._categoriesMap={}),r._categoriesMap[b]!==void 0)return r._categoriesMap[b];r._categories.push(typeof b=="number"?String(b):b);var M=r._categories.length-1;return r._categoriesMap[b]=M,M}return ti}function f(b,M){for(var d=new Array(M),x=0;xr.range[1]&&(d=!d);for(var x=d?-1:1,g=x*b,c=0,A=0;AD)c=A+1;else{c=g<(v+D)/2?A:A+1;break}}var E=r._B[c]||0;return isFinite(E)?m(b,r._m2,E):0},y=function(b){var M=r._rangebreaks.length;if(!M)return w(b,r._m,r._b);for(var d=0,x=0;xr._rangebreaks[x].pmax&&(d=x+1);return w(b,r._m2,r._B[d])}}r.c2l=r.type==="log"?o:Ri,r.l2c=r.type==="log"?Pf:Ri,r.l2p=T,r.p2l=y,r.c2p=r.type==="log"?function(b,M){return T(o(b,M))}:T,r.p2c=r.type==="log"?function(b){return Pf(y(b))}:y,["linear","-"].indexOf(r.type)!==-1?(r.d2r=r.r2d=r.d2c=r.r2c=r.d2l=r.r2l=Oo,r.c2d=r.c2r=r.l2d=r.l2r=Ri,r.d2p=r.r2p=function(b){return r.l2p(Oo(b))},r.p2d=r.p2r=y,r.cleanPos=Ri):r.type==="log"?(r.d2r=r.d2l=function(b,M){return o(Oo(b),M)},r.r2d=r.r2c=function(b){return Pf(Oo(b))},r.d2c=r.r2l=Oo,r.c2d=r.l2r=Ri,r.c2r=o,r.l2d=Pf,r.d2p=function(b,M){return r.l2p(r.d2r(b,M))},r.p2d=function(b){return Pf(y(b))},r.r2p=function(b){return r.l2p(Oo(b))},r.p2r=y,r.cleanPos=Ri):r.type==="date"?(r.d2r=r.r2d=bt.identity,r.d2c=r.r2c=r.d2l=r.r2l=i,r.c2d=r.c2r=r.l2d=r.l2r=l,r.d2p=r.r2p=function(b,M,d){return r.l2p(i(b,0,d))},r.p2d=r.p2r=function(b,M,d){return l(y(b),M,d)},r.cleanPos=function(b){return bt.cleanDate(b,ti,r.calendar)}):r.type==="category"?(r.d2c=r.d2l=s,r.r2d=r.c2d=r.l2d=u,r.d2r=r.d2l_noadd=p,r.r2c=function(b){var M=_(b);return M!==void 0?M:r.fraction2r(.5)},r.l2r=r.c2r=Ri,r.r2l=_,r.d2p=function(b){return r.l2p(r.r2c(b))},r.p2d=function(b){return u(y(b))},r.r2p=r.d2p,r.p2r=y,r.cleanPos=function(b){return typeof b=="string"&&b!==""?b:Ri(b)}):r.type==="multicategory"&&(r.r2d=r.c2d=r.l2d=u,r.d2r=r.d2l_noadd=p,r.r2c=function(b){var M=p(b);return M!==void 0?M:r.fraction2r(.5)},r.r2c_just_indices=h,r.l2r=r.c2r=Ri,r.r2l=p,r.d2p=function(b){return r.l2p(r.r2c(b))},r.p2d=function(b){return u(y(b))},r.r2p=r.d2p,r.p2r=y,r.cleanPos=function(b){return Array.isArray(b)||typeof b=="string"&&b!==""?b:Ri(b)},r.setupMultiCategory=function(b){var M=r._traceIndices,d,x,g=r._matchGroup;if(g&&r._categories.length===0){for(var c in g)if(c!==n){var A=t[Dh.id2name(c)];M=M.concat(A._traceIndices)}}var v=[[0,{}],[0,{}]],D=[];for(d=0;dA[1]&&(x[c?0:1]=d),x[0]===x[1]){var v=r.l2r(M),D=r.l2r(d);if(M!==void 0){var E=v+1;d!==void 0&&(E=Math.min(E,D)),x[c?1:0]=E}if(d!==void 0){var R=D+1;M!==void 0&&(R=Math.max(R,v)),x[c?0:1]=R}}}},r.cleanRange=function(b,M){r._cleanRange(b,M),r.limitRange(b)},r._cleanRange=function(b,M){M||(M={}),b||(b="range");var d=bt.nestedProperty(r,b).get(),x,g;if(r.type==="date"?g=bt.dfltRange(r.calendar):a==="y"?g=Ih.DFLTRANGEY:r._name==="realaxis"?g=[0,1]:g=M.dfltRange||Ih.DFLTRANGEX,g=g.slice(),(r.rangemode==="tozero"||r.rangemode==="nonnegative")&&(g[0]=0),!d||d.length!==2){bt.nestedProperty(r,b).set(g);return}var c=d[0]===null,A=d[1]===null;for(r.type==="date"&&!r.autorange&&(d[0]=bt.cleanDate(d[0],ti,r.calendar),d[1]=bt.cleanDate(d[1],ti,r.calendar)),x=0;x<2;x++)if(r.type==="date"){if(!bt.isDateTime(d[x],r.calendar)){r[b]=g;break}if(r.r2l(d[0])===r.r2l(d[1])){var v=bt.constrain(r.r2l(d[0]),bt.MIN_MS+1e3,bt.MAX_MS-1e3);d[0]=r.l2r(v-1e3),d[1]=r.l2r(v+1e3);break}}else{if(!Di(d[x]))if(!(c||A)&&Di(d[1-x]))d[x]=d[1-x]*(x?10:.1);else{r[b]=g;break}if(d[x]<-Ch?d[x]=-Ch:d[x]>Ch&&(d[x]=Ch),d[0]===d[1]){var D=Math.max(1,Math.abs(d[0]*1e-6));d[0]-=D,d[1]+=D}}},r.setScale=function(b){var M=t._size;if(r.overlaying){var d=Dh.getFromId({_fullLayout:t},r.overlaying);r.domain=d.domain}var x=b&&r._r?"_r":"range",g=r.calendar;r.cleanRange(x);var c=r.r2l(r[x][0],g),A=r.r2l(r[x][1],g),v=a==="y";if(v?(r._offset=M.t+(1-r.domain[1])*M.h,r._length=M.h*(r.domain[1]-r.domain[0]),r._m=r._length/(c-A),r._b=-r._m*A):(r._offset=M.l+r.domain[0]*M.w,r._length=M.w*(r.domain[1]-r.domain[0]),r._m=r._length/(A-c),r._b=-r._m*c),r._rangebreaks=[],r._lBreaks=0,r._m2=0,r._B=[],r.rangebreaks){var D,E;if(r._rangebreaks=r.locateBreaks(Math.min(c,A),Math.max(c,A)),r._rangebreaks.length){for(D=0;DA&&(R=!R),R&&r._rangebreaks.reverse();var N=R?-1:1;for(r._m2=N*r._length/(Math.abs(A-c)-r._lBreaks),r._B.push(-r._m2*(v?A:c)),D=0;Dg&&(g+=7,cg&&(g+=24,c=x&&c=x&&b=q.min&&(Xq.max&&(q.max=$),j=!1)}j&&A.push({min:X,max:$})}};for(d=0;d{"use strict";var K8=nt(),Wg=ir(),SW=nn().BADNUM,Nh=Wg.isArrayOrTypedArray,CW=Wg.isDateTime,EW=Wg.cleanNumber,Q8=Math.round;j8.exports=function(r,t,n){var a=r,o=n.noMultiCategory;if(Nh(a)&&!a.length)return"-";if(!o&&IW(a))return"multicategory";if(o&&Array.isArray(a[0])){for(var i=[],l=0;lo*2}function $8(e){return Math.max(1,(e-1)/1e3)}function PW(e,r){for(var t=e.length,n=$8(t),a=0,o=0,i={},l=0;la*2}function IW(e){return Nh(e[0])&&Nh(e[1])}});var eu=de((qce,lM)=>{"use strict";var FW=it(),nM=nt(),Uo=ir(),zh=nn().FP_SAFE,NW=Cr(),zW=mt(),aM=jt(),qW=aM.getFromId,OW=aM.isLinked;lM.exports={applyAutorangeOptions:oM,getAutoRange:Zg,makePadFn:Jg,doAutoRange:UW,findExtremes:HW,concatExtremes:$g};function Zg(e,r){var t,n,a=[],o=e._fullLayout,i=Jg(o,r,0),l=Jg(o,r,1),u=$g(e,r),s=u.min,f=u.max;if(s.length===0||f.length===0)return Uo.simpleMap(r.range,r.r2l);var h=s[0].val,p=f[0].val;for(t=1;t0&&(A=S-i(d)-l(x),A>b?v/A>M&&(g=d,c=x,M=v/A):v/S>M&&(g={val:d.val,nopad:1},c={val:x.val,nopad:1},M=v/S));function D(I,L){return Math.max(I,l(L))}if(h===p){var E=h-1,R=h+1;if(y)if(h===0)a=[0,1];else{var N=(h>0?f:s).reduce(D,0),F=h/(1-Math.min(.5,N/S));a=h>0?[0,F]:[F,0]}else k?a=[Math.max(0,E),Math.max(1,R)]:a=[E,R]}else y?(g.val>=0&&(g={val:0,nopad:1}),c.val<=0&&(c={val:0,nopad:1})):k&&(g.val-M*i(g)<0&&(g={val:0,nopad:1}),c.val<=0&&(c={val:1,nopad:1})),M=(c.val-g.val-eM(r,d.val,x.val))/(S-i(g)-l(c)),a=[g.val-M*i(g),c.val+M*l(c)];return a=oM(a,r),r.limitRange&&r.limitRange(),m&&a.reverse(),Uo.simpleMap(a,r.l2r||Number)}function eM(e,r,t){var n=0;if(e.rangebreaks)for(var a=e.locateBreaks(r,t),o=0;o0?t.ppadplus:t.ppadminus)||t.ppad||0),d=b((e._m>0?t.ppadminus:t.ppadplus)||t.ppad||0),x=b(t.vpadplus||t.vpad),g=b(t.vpadminus||t.vpad);if(!s){if(k=1/0,S=-1/0,u)for(h=0;h0&&(k=p),p>S&&p-zh&&(k=p),p>S&&p=v;h--)A(h);return{min:n,max:a,opts:t}}function Kg(e,r,t,n){iM(e,r,t,n,VW)}function Qg(e,r,t,n){iM(e,r,t,n,GW)}function iM(e,r,t,n,a){for(var o=n.tozero,i=n.extrapad,l=!0,u=0;u=t&&(s.extrapad||!i)){l=!1;break}else a(r,s.val)&&s.pad<=t&&(i||!s.extrapad)&&(e.splice(u,1),u--)}if(l){var f=o&&r===0;e.push({val:r,pad:f?0:t,extrapad:f?!1:i})}}function tM(e){return nM(e)&&Math.abs(e)=r}function YW(e,r){var t=r.autorangeoptions;return t&&t.minallowed!==void 0&&qh(r,t.minallowed,t.maxallowed)?t.minallowed:t&&t.clipmin!==void 0&&qh(r,t.clipmin,t.clipmax)?Math.max(e,r.d2l(t.clipmin)):e}function WW(e,r){var t=r.autorangeoptions;return t&&t.maxallowed!==void 0&&qh(r,t.minallowed,t.maxallowed)?t.maxallowed:t&&t.clipmax!==void 0&&qh(r,t.clipmin,t.clipmax)?Math.min(e,r.d2l(t.clipmax)):e}function qh(e,r,t){return r!==void 0&&t!==void 0?(r=e.d2l(r),t=e.d2l(t),r=u&&(o=u,t=u),i<=u&&(i=u,n=u)}}return t=YW(t,r),n=WW(n,r),[t,n]}});var Lt=de((Oce,LM)=>{"use strict";var Da=it(),Xt=nt(),ru=on(),Ff=Cr(),Er=ir(),tu=Er.strTranslate,Ul=Wn(),XW=Rf(),Nf=Xr(),da=mt(),ZW=La(),sM=pg(),Mn=nn(),JW=Mn.ONEMAXYEAR,Uh=Mn.ONEAVGYEAR,Hh=Mn.ONEMINYEAR,KW=Mn.ONEMAXQUARTER,t2=Mn.ONEAVGQUARTER,Vh=Mn.ONEMINQUARTER,QW=Mn.ONEMAXMONTH,nu=Mn.ONEAVGMONTH,Gh=Mn.ONEMINMONTH,pa=Mn.ONEWEEK,On=Mn.ONEDAY,Ho=On/2,Ii=Mn.ONEHOUR,zf=Mn.ONEMIN,Yh=Mn.ONESEC,$W=Mn.ONEMILLI,jW=Mn.ONEMICROSEC,Hl=Mn.MINUS_SIGN,Xh=Mn.BADNUM,n2={K:"zeroline"},a2={K:"gridline",L:"path"},i2={K:"minor-gridline",L:"path"},bM={K:"tick",L:"path"},uM={K:"tick",L:"text"},fM={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},Zh=qn(),If=Zh.MID_SHIFT,Vl=Zh.CAP_SHIFT,qf=Zh.LINE_SPACING,eX=Zh.OPPOSITE_SIDE,Wh=3,lr=LM.exports={};lr.setConvert=Fh();var rX=Xg(),no=jt(),tX=no.idSort,nX=no.isLinked;lr.id2name=no.id2name;lr.name2id=no.name2id;lr.cleanId=no.cleanId;lr.list=no.list;lr.listIds=no.listIds;lr.getFromId=no.getFromId;lr.getFromTrace=no.getFromTrace;var xM=eu();lr.getAutoRange=xM.getAutoRange;lr.findExtremes=xM.findExtremes;var aX=1e-4;function u2(e){var r=(e[1]-e[0])*aX;return[e[0]-r,e[1]+r]}lr.coerceRef=function(e,r,t,n,a,o){var i=n.charAt(n.length-1),l=t._fullLayout._subplots[i+"axis"],u=n+"ref",s={};return a||(a=l[0]||(typeof o=="string"?o:o[0])),o||(o=a),l=l.concat(l.map(function(f){return f+" domain"})),s[u]={valType:"enumerated",values:l.concat(o?typeof o=="string"?[o]:o:[]),dflt:a},Er.coerce(e,r,s,u)};lr.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};lr.coercePosition=function(e,r,t,n,a,o){var i,l,u=lr.getRefType(n);if(u!=="range")i=Er.ensureNumber,l=t(a,o);else{var s=lr.getFromId(r,n);o=s.fraction2r(o),l=t(a,o),i=s.cleanPos}e[a]=i(l)};lr.cleanPosition=function(e,r,t){var n=t==="paper"||t==="pixel"?Er.ensureNumber:lr.getFromId(r,t).cleanPos;return n(e)};lr.redrawComponents=function(e,r){r=r||lr.listIds(e);var t=e._fullLayout;function n(a,o,i,l){for(var u=Ff.getComponentMethod(a,o),s={},f=0;f2e-6||((t-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};lr.saveRangeInitial=function(e,r){for(var t=lr.list(e,"",!0),n=!1,a=0;ah*.3||s(n)||s(a))){var p=t.dtick/2;e+=e+pi){var l=Number(t.substr(1));o.exactYears>i&&l%12===0?e=lr.tickIncrement(e,"M6","reverse")+On*1.5:o.exactMonths>i?e=lr.tickIncrement(e,"M1","reverse")+On*15.5:e-=Ho;var u=lr.tickIncrement(e,t);if(u<=n)return u}return e}lr.prepMinorTicks=function(e,r,t){if(!r.minor.dtick){delete e.dtick;var n=r.dtick&&Xt(r._tmin),a;if(n){var o=lr.tickIncrement(r._tmin,r.dtick,!0);a=[r._tmin,o*.99+r._tmin*.01]}else{var i=Er.simpleMap(r.range,r.r2l);a=[i[0],.8*i[0]+.2*i[1]]}if(e.range=Er.simpleMap(a,r.l2r),e._isMinor=!0,lr.prepTicks(e,t),n){var l=Xt(r.dtick),u=Xt(e.dtick),s=l?r.dtick:+r.dtick.substring(1),f=u?e.dtick:+e.dtick.substring(1);l&&u?jg(s,f)?s===2*pa&&f===2*On&&(e.dtick=pa):s===2*pa&&f===3*On?e.dtick=pa:s===pa&&!(r._input.minor||{}).nticks?e.dtick=On:vM(s/f,2.5)?e.dtick=s/2:e.dtick=s:String(r.dtick).charAt(0)==="M"?u?e.dtick="M1":jg(s,f)?s>=12&&f===2&&(e.dtick="M3"):e.dtick=r.dtick:String(e.dtick).charAt(0)==="L"?String(r.dtick).charAt(0)==="L"?jg(s,f)||(e.dtick=vM(s/f,2.5)?r.dtick/2:r.dtick):e.dtick="D1":e.dtick==="D2"&&+r.dtick>1&&(e.dtick=1)}e.range=r.range}r.minor._tick0Init===void 0&&(e.tick0=r.tick0)};function jg(e,r){return Math.abs((e/r+.5)%1-.5)<.001}function vM(e,r){return Math.abs(e/r-1)<.001}lr.prepTicks=function(e,r){var t=Er.simpleMap(e.range,e.r2l,void 0,void 0,r);if(e.tickmode==="auto"||!e.dtick){var n=e.nticks,a;n||(e.type==="category"||e.type==="multicategory"?(a=e.tickfont?Er.bigFont(e.tickfont.size||12):15,n=e._length/a):(a=e._id.charAt(0)==="y"?40:80,n=Er.constrain(e._length/a,4,9)+1),e._name==="radialaxis"&&(n*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(n*=100),e._roughDTick=Math.abs(t[1]-t[0])/n,lr.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(o=n-1,i=n):(o=n,i=n);var l=e[o].value,u=e[i].value,s=Math.abs(u-l),f=t||s,h=0;f>=Hh?s>=Hh&&s<=JW?h=s:h=Uh:t===t2&&f>=Vh?s>=Vh&&s<=KW?h=s:h=t2:f>=Gh?s>=Gh&&s<=QW?h=s:h=nu:t===pa&&f>=pa?h=pa:f>=On?h=On:t===Ho&&f>=Ho?h=Ho:t===Ii&&f>=Ii&&(h=Ii);var p;h>=s&&(h=s,p=!0);var _=a+h;if(r.rangebreaks&&h>0){for(var m=84,w=0,T=0;Tpa&&(h=s)}(h>0||n===0)&&(e[n].periodX=a+h/2)}}lr.calcTicks=function(r,t){for(var n=r.type,a=r.calendar,o=r.ticklabelstep,i=r.ticklabelmode==="period",l=r.range[0]>r.range[1],u=!r.ticklabelindex||Er.isArrayOrTypedArray(r.ticklabelindex)?r.ticklabelindex:[r.ticklabelindex],s=Er.simpleMap(r.range,r.r2l,void 0,void 0,t),f=s[1]=(S?0:1);b--){var M=!b;b?(r._dtickInit=r.dtick,r._tick0Init=r.tick0):(r.minor._dtickInit=r.minor.dtick,r.minor._tick0Init=r.minor.tick0);var d=b?r:Er.extendFlat({},r,r.minor);if(M?lr.prepMinorTicks(d,r,t):lr.prepTicks(d,t),d.tickmode==="array"){b?(T=[],m=dM(r,!M)):(y=[],w=dM(r,!M));continue}if(d.tickmode==="sync"){T=[],m=fX(r);continue}var x=u2(s),g=x[0],c=x[1],A=Xt(d.dtick),v=n==="log"&&!(A||d.dtick.charAt(0)==="L"),D=lr.tickFirst(d,t);if(b){if(r._tmin=D,D=c:R<=c;R=lr.tickIncrement(R,I,f,a)){if(b&&N++,d.rangebreaks&&!f){if(R=p)break}if(T.length>_||R===E)break;E=R;var L={value:R};b?(v&&R!==(R|0)&&(L.simpleLabel=!0),o>1&&N%o&&(L.skipLabel=!0),T.push(L)):(L.minor=!0,y.push(L))}}if(!y||y.length<2)u=!1;else{var P=(y[1].value-y[0].value)*(l?-1:1);FX(P,r.tickformat)||(u=!1)}if(!u)k=T;else{var O=T.concat(y);i&&T.length&&(O=O.slice(1)),O=O.sort(function(Ae,Ce){return Ae.value-Ce.value}).filter(function(Ae,Ce,Pe){return Ce===0||Ae.value!==Pe[Ce-1].value});var U=O.map(function(Ae,Ce){return Ae.minor===void 0&&!Ae.skipLabel?Ce:null}).filter(function(Ae){return Ae!==null});U.forEach(function(Ae){u.map(function(Ce){var Pe=Ae+Ce;Pe>=0&&Pe-1;oe--){if(T[oe].drop){T.splice(oe,1);continue}T[oe].value=r2(T[oe].value,r);var V=r.c2p(T[oe].value);(re?ee>V-H:eep||Eep&&(Pe.periodX=p),Eea&&pUh)r/=Uh,n=a(10),e.dtick="M"+12*Pi(r,n,Oh);else if(o>nu)r/=nu,e.dtick="M"+Pi(r,1,pM);else if(o>On){if(e.dtick=Pi(r,On,e._hasDayOfWeekBreaks?[1,2,7,14]:cX),!t){var i=lr.getTickFormat(e),l=e.ticklabelmode==="period";l&&(e._rawTick0=e.tick0),/%[uVW]/.test(i)?e.tick0=Er.dateTick0(e.calendar,2):e.tick0=Er.dateTick0(e.calendar,1),l&&(e._dowTick0=e.tick0)}}else o>Ii?e.dtick=Pi(r,Ii,pM):o>zf?e.dtick=Pi(r,zf,gM):o>Yh?e.dtick=Pi(r,Yh,gM):(n=a(10),e.dtick=Pi(r,n,Oh))}else if(e.type==="log"){e.tick0=0;var u=Er.simpleMap(e.range,e.r2l);if(e._isMinor&&(r*=1.5),r>.7)e.dtick=Math.ceil(r);else if(Math.abs(u[1]-u[0])<1){var s=1.5*Math.abs((u[1]-u[0])/r);r=Math.abs(Math.pow(10,u[1])-Math.pow(10,u[0]))/s,n=a(10),e.dtick="L"+Pi(r,n,Oh)}else e.dtick=r>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(r,1))):v2(e)?(e.tick0=0,n=1,e.dtick=Pi(r,n,hX)):(e.tick0=0,n=a(10),e.dtick=Pi(r,n,Oh));if(e.dtick===0&&(e.dtick=1),!Xt(e.dtick)&&typeof e.dtick!="string"){var f=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(f)}};function TM(e){var r=e.dtick;if(e._tickexponent=0,!Xt(r)&&typeof r!="string"&&(r=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var t=e.r2l(e.tick0),n=e.l2r(t).replace(/(^-|i)/g,""),a=n.length;if(String(r).charAt(0)==="M")a>10||n.substr(5)!=="01-01"?e._tickround="d":e._tickround=+r.substr(1)%12===0?"y":"m";else if(r>=On&&a<=10||r>=On*15)e._tickround="d";else if(r>=zf&&a<=16||r>=Ii)e._tickround="M";else if(r>=Yh&&a<=19||r>=zf)e._tickround="S";else{var o=e.l2r(t+r).replace(/^-/,"").length;e._tickround=Math.max(a,o)-20,e._tickround<0&&(e._tickround=4)}}else if(Xt(r)||r.charAt(0)==="L"){var i=e.range.map(e.r2d||Number);Xt(r)||(r=Number(r.substr(1))),e._tickround=2-Math.floor(Math.log(r)/Math.LN10+.01);var l=Math.max(Math.abs(i[0]),Math.abs(i[1])),u=Math.floor(Math.log(l)/Math.LN10+.01),s=e.minexponent===void 0?3:e.minexponent;Math.abs(u)>s&&(au(e.exponentformat)&&e.exponentformat!=="SI extended"&&!f2(u)||au(e.exponentformat)&&e.exponentformat==="SI extended"&&!c2(u)?e._tickexponent=3*Math.round((u-1)/3):e._tickexponent=u)}else e._tickround=null}lr.tickIncrement=function(e,r,t,n){var a=t?-1:1;if(Xt(r))return Er.increment(e,a*r);var o=r.charAt(0),i=a*Number(r.substr(1));if(o==="M")return Er.incrementMonth(e,i,n);if(o==="L")return Math.log(Math.pow(10,e)+i)/Math.LN10;if(o==="D"){var l=r==="D2"?MM:wM,u=e+a*.01,s=Er.roundUp(Er.mod(u,1),l,t);return Math.floor(u)+Math.log(Da.round(Math.pow(10,s),1))/Math.LN10}throw"unrecognized dtick "+String(r)};lr.tickFirst=function(e,r){var t=e.r2l||Number,n=Er.simpleMap(e.range,t,void 0,void 0,r),a=n[1]=0&&y<=e._length?T:null};if(o&&Er.isArrayOrTypedArray(e.ticktext)){var h=Er.simpleMap(e.range,e.r2l),p=(Math.abs(h[1]-h[0])-(e._lBreaks||0))/1e4;for(s=0;s"+l;else{var s=Bf(e),f=e._trueSide||e.side;(!s&&f==="top"||s&&f==="bottom")&&(i+="
")}r.text=i}function dX(e,r,t,n,a){var o=e.dtick,i=r.x,l=e.tickformat,u=typeof o=="string"&&o.charAt(0);if(a==="never"&&(a=""),n&&u!=="L"&&(o="L3",u="L"),l||u==="L")r.text=Of(Math.pow(10,i),e,a,n);else if(Xt(o)||u==="D"&&(e.minorloglabels==="complete"||Er.mod(i+.01,1)<.1)){var s;e.minorloglabels==="complete"&&!(Er.mod(i+.01,1)<.1)&&(s=!0,r.fontSize*=.75);var f=Math.pow(10,i).toExponential(0),h=f.split("e"),p=+h[1],_=Math.abs(p),m=e.exponentformat;m==="power"||au(m)&&m!=="SI extended"&&f2(p)||au(m)&&m==="SI extended"&&c2(p)?(r.text=h[0],_>0&&(r.text+="x10"),r.text==="1x10"&&(r.text="10"),p!==0&&p!==1&&(r.text+=""+(p>0?"":Hl)+_+""),r.fontSize*=1.25):(m==="e"||m==="E")&&_>2?r.text=h[0]+m+(p>0?"+":Hl)+_:(r.text=Of(Math.pow(10,i),e,"","fakehover"),o==="D1"&&e._id.charAt(0)==="y"&&(r.dy-=r.fontSize/6))}else if(u==="D")r.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,Er.mod(i,1)))),r.fontSize*=.75;else throw"unrecognized dtick "+String(o);if(e.dtick==="D1"){var w=String(r.text).charAt(0);(w==="0"||w==="1")&&(e._id.charAt(0)==="y"?r.dx-=r.fontSize/4:(r.dy+=r.fontSize/2,r.dx+=(e.range[1]>e.range[0]?1:-1)*r.fontSize*(i<0?.5:.25)))}}function pX(e,r){var t=e._categories[Math.round(r.x)];t===void 0&&(t=""),r.text=String(t)}function gX(e,r,t){var n=Math.round(r.x),a=e._categories[n]||[],o=a[1]===void 0?"":String(a[1]),i=a[0]===void 0?"":String(a[0]);t?r.text=i+" - "+o:(r.text=o,r.text2=i)}function yX(e,r,t,n,a){a==="never"?a="":e.showexponent==="all"&&Math.abs(r.x/e.dtick)<1e-6&&(a="hide"),r.text=Of(r.x,e,a,n)}function mX(e,r,t,n,a){if(e.thetaunit==="radians"&&!t){var o=r.x/180;if(o===0)r.text="0";else{var i=bX(o);if(i[1]>=100)r.text=Of(Er.deg2rad(r.x),e,a,n);else{var l=r.x<0;i[1]===1?i[0]===1?r.text="\u03C0":r.text=i[0]+"\u03C0":r.text=["",i[0],"","\u2044","",i[1],"","\u03C0"].join(""),l&&(r.text=Hl+r.text)}}}else r.text=Of(r.x,e,a,n)}function bX(e){function r(l,u){return Math.abs(l-u)<=1e-6}function t(l,u){return r(u,0)?l:t(u,l%u)}function n(l){for(var u=1;!r(Math.round(l*u)/u,l);)u*=10;return u}var a=n(e),o=e*a,i=Math.abs(t(o,a));return[Math.round(o/i),Math.round(a/i)]}var kM=["f","p","n","\u03BC","m","","k","M","G","T"],xX=["q","r","y","z","a",...kM,"P","E","Z","Y","R","Q"],au=e=>["SI","SI extended","B"].includes(e);function f2(e){return e>14||e<-15}function c2(e){return e>32||e<-30}function _X(e,r){return au(r)?!!(r==="SI extended"&&c2(e)||r!=="SI extended"&&f2(e)):!1}function Of(e,r,t,n){var a=e<0,o=r._tickround,i=t||r.exponentformat||"B",l=r._tickexponent,u=lr.getTickFormat(r),s=r.separatethousands;if(n){var f={exponentformat:i,minexponent:r.minexponent,dtick:r.showexponent==="none"?r.dtick:Xt(e)&&Math.abs(e)||1,range:r.showexponent==="none"?r.range.map(r.r2d):[0,e||1]};TM(f),o=(Number(f._tickround)||0)+4,l=f._tickexponent,r.hoverformat&&(u=r.hoverformat)}if(u)return r._numFormat(u)(e).replace(/-/g,Hl);var h=Math.pow(10,-o)/2;if(i==="none"&&(l=0),e=Math.abs(e),e"+m+"":i==="B"&&l===9?e+="B":au(i)&&(e+=i==="SI extended"?xX[l/3+10]:kM[l/3+5])}return a?Hl+e:e}lr.getTickFormat=function(e){var r;function t(u){return typeof u!="string"?u:Number(u.replace("M",""))*nu}function n(u,s){var f=["L","D"];if(typeof u==typeof s){if(typeof u=="number")return u-s;var h=f.indexOf(u.charAt(0)),p=f.indexOf(s.charAt(0));return h===p?Number(u.replace(/(L|D)/g,""))-Number(s.replace(/(L|D)/g,"")):h-p}else return typeof u=="number"?1:-1}function a(u,s,f){var h=f||function(m){return m},p=s[0],_=s[1];return(!p&&typeof p!="number"||h(p)<=h(u))&&(!_&&typeof _!="number"||h(_)>=h(u))}function o(u,s){var f=s[0]===null,h=s[1]===null,p=n(u,s[0])>=0,_=n(u,s[1])<=0;return(f||p)&&(h||_)}var i,l;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(r=0;r=0&&a.unshift(a.splice(f,1).shift())}});var l={false:{left:0,right:0}};return Er.syncOrAsync(a.map(function(u){return function(){if(u){var s=lr.getFromId(e,u);t||(t={}),t.axShifts=l,t.overlayingShiftedAx=i;var f=lr.drawOne(e,s,t);return s._shiftPusher&&s2(s,s._fullDepth||0,l,!0),s._r=s.range.slice(),s._rl=Er.simpleMap(s._r,s.r2l),f}}}))};lr.drawOne=function(e,r,t){t=t||{};var n=t.axShifts||{},a=t.overlayingShiftedAx||[],o,i,l;r.setScale();var u=e._fullLayout,s=r._id,f=s.charAt(0),h=lr.counterLetter(s),p=u._plots[r._mainSubplot],_=r.zerolinelayer==="above traces";if(!p)return;if(r._shiftPusher=r.autoshift||a.indexOf(r._id)!==-1||a.indexOf(r.overlaying)!==-1,r._shiftPusher&r.anchor==="free"){var m=r.linewidth/2||0;r.ticks==="inside"&&(m+=r.ticklen),s2(r,m,n,!0),s2(r,r.shift||0,n,!1)}(t.skipTitle!==!0||r._shift===void 0)&&(r._shift=IX(r,n));var w=p[f+"axislayer"],T=r._mainLinePosition,y=T+=r._shift,k=r._mainMirrorPosition,S=r._vals=lr.calcTicks(r),b=[r.mirror,y,k].join("_");for(o=0;o0?Ee.bottom-Ce:0,Pe))));var we=0,Te=0;if(r._shiftPusher&&(we=Math.max(Pe,Ee.height>0?he==="l"?Ce-Ee.left:Ee.right-Ce:0),r.title.text!==u._dfltTitle[f]&&(Te=(r._titleStandoff||0)+(r._titleScoot||0),he==="l"&&(Te+=mM(r))),r._fullDepth=Math.max(we,Te)),r.automargin){Ne={x:0,y:0,r:0,l:0,t:0,b:0};var me=[0,1],ye=typeof r._shift=="number"?r._shift:0;if(f==="x"){if(he==="b"?Ne[he]=r._depth:(Ne[he]=r._depth=Math.max(Ee.width>0?Ce-Ee.top:0,Pe),me.reverse()),Ee.width>0){var pe=Ee.right-(r._offset+r._length);pe>0&&(Ne.xr=1,Ne.r=pe);var ce=r._offset-Ee.left;ce>0&&(Ne.xl=0,Ne.l=ce)}}else if(he==="l"?(r._depth=Math.max(Ee.height>0?Ce-Ee.left:0,Pe),Ne[he]=r._depth-ye):(r._depth=Math.max(Ee.height>0?Ee.right-Ce:0,Pe),Ne[he]=r._depth+ye,me.reverse()),Ee.height>0){var be=Ee.bottom-(r._offset+r._length);be>0&&(Ne.yb=0,Ne.b=be);var Le=r._offset-Ee.top;Le>0&&(Ne.yt=1,Ne.t=Le)}Ne[h]=r.anchor==="free"?r.position:r._anchorAxis.domain[me[0]],r.title.text!==u._dfltTitle[f]&&(Ne[he]+=mM(r)+(r.title.standoff||0)),r.mirror&&r.anchor!=="free"&&(Ue={x:0,y:0,r:0,l:0,t:0,b:0},Ue[Ae]=r.linewidth,r.mirror&&r.mirror!==!0&&(Ue[Ae]+=Pe),r.mirror===!0||r.mirror==="ticks"?Ue[h]=r._anchorAxis.domain[me[1]]:(r.mirror==="all"||r.mirror==="allticks")&&(Ue[h]=[r._counterDomainMin,r._counterDomainMax][me[1]]))}Se&&(ge=Ff.getComponentMethod("rangeslider","autoMarginOpts")(e,r)),typeof r.automargin=="string"&&(yM(Ne,r.automargin),yM(Ue,r.automargin)),ru.autoMargin(e,h2(r),Ne),ru.autoMargin(e,CM(r),Ue),ru.autoMargin(e,EM(r),ge)}),Er.syncOrAsync(ve)}};function yM(e,r){if(e){var t=Object.keys(fM).reduce(function(n,a){return r.indexOf(a)!==-1&&fM[a].forEach(function(o){n[o]=1}),n},{});Object.keys(e).forEach(function(n){t[n]||(n.length===1?e[n]=0:delete e[n])})}}function wX(e,r){var t=[],n,a=function(o,i){var l=o.xbnd[i];l!==null&&t.push(Er.extendFlat({},o,{x:l}))};if(r.length){for(n=0;ne.range[1],l=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,u=!l;if(t){var s=i?-1:1;t=t*s}if(n){var f=e.side,h=l&&(f==="top"||f==="left")||u&&(f==="bottom"||f==="right")?1:-1;n=n*h}return e._id.charAt(0)==="x"?function(p){return tu(a+e._offset+e.l2p(o2(p))+t,o+n)}:function(p){return tu(o+n,a+e._offset+e.l2p(o2(p))+t)}};function o2(e){return e.periodX!==void 0?e.periodX:e.x}function kX(e){var r=e.ticklabelposition||"",t=e.tickson||"",n=function(m){return r.indexOf(m)!==-1},a=n("top"),o=n("left"),i=n("right"),l=n("bottom"),u=n("inside"),s=t!=="boundaries"&&(l||o||a||i);if(!s&&!u)return[0,0];var f=e.side,h=s?(e.tickwidth||0)/2:0,p=Wh,_=e.tickfont?e.tickfont.size:12;return(l||a)&&(h+=_*Vl,p+=(e.linewidth||0)/2),(o||i)&&(h+=(e.linewidth||0)/2,p+=Wh),u&&f==="top"&&(p-=_*(1-Vl)),(o||a)&&(h=-h),(f==="bottom"||f==="right")&&(p=-p),[s?h:0,u?p:0]}lr.makeTickPath=function(e,r,t,n){n||(n={});var a=n.minor;if(a&&!e.minor)return"";var o=n.len!==void 0?n.len:a?e.minor.ticklen:e.ticklen,i=e._id.charAt(0),l=(e.linewidth||1)/2;return i==="x"?"M0,"+(r+l*t)+"v"+o*t:"M"+(r+l*t)+",0h"+o*t};lr.makeLabelFns=function(e,r,t){var n=e.ticklabelposition||"",a=e.tickson||"",o=function(E){return n.indexOf(E)!==-1},i=o("top"),l=o("left"),u=o("right"),s=o("bottom"),f=a!=="boundaries"&&(s||l||i||u),h=o("inside"),p=n==="inside"&&e.ticks==="inside"||!h&&e.ticks==="outside"&&a!=="boundaries",_=0,m=0,w=p?e.ticklen:0;if(h?w*=-1:f&&(w=0),p&&(_+=w,t)){var T=Er.deg2rad(t);_=w*Math.cos(T)+1,m=w*Math.sin(T)}e.showticklabels&&(p||e.showline)&&(_+=.2*e.tickfont.size),_+=(e.linewidth||1)/2*(h?-1:1);var y={labelStandoff:_,labelShift:m},k,S,b,M,d=0,x=e.side,g=e._id.charAt(0),c=e.tickangle,A;if(g==="x")A=!h&&x==="bottom"||h&&x==="top",M=A?1:-1,h&&(M*=-1),k=m*M,S=r+_*M,b=A?1:-.2,Math.abs(c)===90&&(h?b+=If:c===-90&&x==="bottom"?b=Vl:c===90&&x==="top"?b=If:b=.5,d=If/2*(c/90)),y.xFn=function(E){return E.dx+k+d*E.fontSize},y.yFn=function(E){return E.dy+S+E.fontSize*b},y.anchorFn=function(E,R){if(f){if(l)return"end";if(u)return"start"}return!Xt(R)||R===0||R===180?"middle":R*M<0!==h?"end":"start"},y.heightFn=function(E,R,N){return R<-60||R>60?-.5*N:e.side==="top"!==h?-N:0};else if(g==="y"){if(A=!h&&x==="left"||h&&x==="right",M=A?1:-1,h&&(M*=-1),k=_,S=m*M,b=0,!h&&Math.abs(c)===90&&(c===-90&&x==="left"||c===90&&x==="right"?b=Vl:b=.5),h){var v=Xt(c)?+c:0;if(v!==0){var D=Er.deg2rad(v);d=Math.abs(Math.sin(D))*Vl*M,b=0}}y.xFn=function(E){return E.dx+r-(k+E.fontSize*b)*M+d*E.fontSize},y.yFn=function(E){return E.dy+S+E.fontSize*If},y.anchorFn=function(E,R){return Xt(R)&&Math.abs(R)===90?"middle":A?"end":"start"},y.heightFn=function(E,R,N){return e.side==="right"&&(R*=-1),R<-30?-N:R<30?-.5*N:0}}return y};function Jh(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}lr.drawTicks=function(e,r,t){t=t||{};var n=r._id+"tick",a=[].concat(r.minor&&r.minor.ticks?t.vals.filter(function(i){return i.minor&&!i.noTick}):[]).concat(r.ticks?t.vals.filter(function(i){return!i.minor&&!i.noTick}):[]),o=t.layer.selectAll("path."+n).data(a,Jh);o.exit().remove(),o.enter().append("path").classed(n,1).classed("ticks",1).classed("crisp",t.crisp!==!1).each(function(i){return Nf.stroke(Da.select(this),i.minor?r.minor.tickcolor:r.tickcolor)}).style("stroke-width",function(i){return da.crispRound(e,i.minor?r.minor.tickwidth:r.tickwidth,1)+"px"}).attr("d",t.path).style("display",null),Kh(r,[bM]),o.attr("transform",t.transFn)};lr.drawGrid=function(e,r,t){if(t=t||{},r.tickmode!=="sync"){var n=r._id+"grid",a=r.minor&&r.minor.showgrid,o=a?t.vals.filter(function(y){return y.minor}):[],i=r.showgrid?t.vals.filter(function(y){return!y.minor}):[],l=t.counterAxis;if(l&&lr.shouldShowZeroLine(e,r,l))for(var u=r.tickmode==="array",s=0;s=0;m--){var w=m?p:_;if(w){var T=w.selectAll("path."+n).data(m?i:o,Jh);T.exit().remove(),T.enter().append("path").classed(n,1).classed("crisp",t.crisp!==!1),T.attr("transform",t.transFn).attr("d",t.path).each(function(y){return Nf.stroke(Da.select(this),y.minor?r.minor.gridcolor:r.gridcolor||"#ddd")}).style("stroke-dasharray",function(y){return da.dashStyle(y.minor?r.minor.griddash:r.griddash,y.minor?r.minor.gridwidth:r.gridwidth)}).style("stroke-width",function(y){return(y.minor?h:r._gw)+"px"}).style("display",null),typeof t.path=="function"&&T.attr("d",t.path)}}Kh(r,[a2,i2])}};lr.drawZeroLine=function(e,r,t){t=t||t;var n=r._id+"zl",a=lr.shouldShowZeroLine(e,r,t.counterAxis),o=t.layer.selectAll("path."+n).data(a?[{x:0,id:r._id}]:[]);o.exit().remove(),o.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",t.crisp!==!1).each(function(){t.layer.selectAll("path").sort(function(i,l){return tX(i.id,l.id)})}),o.attr("transform",t.transFn).attr("d",t.path).call(Nf.stroke,r.zerolinecolor||Nf.defaultLine).style("stroke-width",da.crispRound(e,r.zerolinewidth,r._gw||1)+"px").style("display",null),Kh(r,[n2])};lr.drawLabels=function(e,r,t){t=t||{};var n=e._fullLayout,a=r._id,o=r.zerolinelayer==="above traces",i=t.cls||a+"tick",l=t.vals.filter(function(P){return P.text}),u=t.labelFns,s=t.secondary?0:r.tickangle,f=(r._prevTickAngles||{})[i],h=t.layer.selectAll("g."+i).data(r.showticklabels?l:[],Jh),p=[];h.enter().append("g").classed(i,1).append("text").attr("text-anchor","middle").each(function(P){var O=Da.select(this),U=e._promises.length;O.call(Ul.positionText,u.xFn(P),u.yFn(P)).call(da.font,{family:P.font,size:P.fontSize,color:P.fontColor,weight:P.fontWeight,style:P.fontStyle,variant:P.fontVariant,textcase:P.fontTextcase,lineposition:P.fontLineposition,shadow:P.fontShadow}).text(P.text).call(Ul.convertToTspans,e),e._promises[U]?p.push(e._promises.pop().then(function(){_(O,s)})):_(O,s)}),Kh(r,[uM]),h.exit().remove(),t.repositionOnUpdate&&h.each(function(P){Da.select(this).select("text").call(Ul.positionText,u.xFn(P),u.yFn(P))});function _(P,O){P.each(function(U){var X=Da.select(this),$=X.select(".text-math-group"),j=u.anchorFn(U,O),Y=t.transFn.call(X.node(),U)+(Xt(O)&&+O!=0?" rotate("+O+","+u.xFn(U)+","+(u.yFn(U)-U.fontSize/2)+")":""),q=Ul.lineCount(X),K=qf*U.fontSize,ne=u.heightFn(U,Xt(O)?+O:0,(q-1)*K);if(ne&&(Y+=tu(0,ne)),$.empty()){var Q=X.select("text");Q.attr({transform:Y,"text-anchor":j}),Q.style("display",null),r._adjustTickLabelsOverflow&&r._adjustTickLabelsOverflow()}else{var oe=da.bBox($.node()).width,re=oe*{end:-.5,start:.5}[j];$.attr("transform",Y+tu(re,0))}})}r._adjustTickLabelsOverflow=function(){var P=r.ticklabeloverflow;if(!(!P||P==="allow")){var O=P.indexOf("hide")!==-1,U=r._id.charAt(0)==="x",X=0,$=U?e._fullLayout.width:e._fullLayout.height;if(P.indexOf("domain")!==-1){var j=Er.simpleMap(r.range,r.r2l);X=r.l2p(j[0])+r._offset,$=r.l2p(j[1])+r._offset}var Y=Math.min(X,$),q=Math.max(X,$),K=r.side,ne=1/0,Q=-1/0;h.each(function(ee){var V=Da.select(this),te=V.select(".text-math-group");if(te.empty()){var ue=da.bBox(V.node()),ve=0;U?(ue.right>q||ue.leftq||ue.top+(r.tickangle?0:ee.fontSize/4)r["_visibleLabelMin_"+j._id]?V.style("display","none"):q.K==="tick"&&!Y&&V.node().style.display!=="none"&&V.style("display",null)})})})})},_(h,f+1?f:s);function m(){return p.length&&Promise.all(p)}var w=null;function T(){if(_(h,s),l.length&&r.autotickangles&&(r.type!=="log"||String(r.dtick).charAt(0)!=="D")){w=r.autotickangles[0];var P=0,O=[],U,X=1;h.each(function(Ne){P=Math.max(P,Ne.fontSize);var Ue=r.l2p(Ne.x),ge=l2(this),we=da.bBox(ge.node());X=Math.max(X,Ul.lineCount(ge)),O.push({top:0,bottom:10,height:10,left:Ue-we.width/2,right:Ue+we.width/2+2,width:we.width+2})});var $=(r.tickson==="boundaries"||r.showdividers)&&!t.secondary,j=l.length,Y=Math.abs((l[j-1].x-l[0].x)*r._m)/(j-1),q=$?Y/2:Y,K=$?r.ticklen:P*1.25*X,ne=Math.sqrt(Math.pow(q,2)+Math.pow(K,2)),Q=q/ne,oe=r.autotickangles.map(function(Ne){return Ne*Math.PI/180}),re=oe.find(function(Ne){return Math.abs(Math.cos(Ne))<=Q});re===void 0&&(re=oe.reduce(function(Ne,Ue){return Math.abs(Math.cos(Ne))F*N&&(D=N,c[g]=A[g]=E[g])}var I=Math.abs(D-v);I-M>0?(I-=M,M*=1+M/I):M=0,r._id.charAt(0)!=="y"&&(M=-M),c[x]=S.p2r(S.r2p(A[x])+d*M),S.autorange==="min"||S.autorange==="max reversed"?(c[0]=null,S._rangeInitial0=void 0,S._rangeInitial1=void 0):(S.autorange==="max"||S.autorange==="min reversed")&&(c[1]=null,S._rangeInitial0=void 0,S._rangeInitial1=void 0),n._insideTickLabelsUpdaterange[S._name+".range"]=c}var L=Er.syncOrAsync(y);return L&&L.then&&e._promises.push(L),L};function SX(e,r,t){var n=r._id+"divider",a=t.vals,o=t.layer.selectAll("path."+n).data(a,Jh);o.exit().remove(),o.enter().insert("path",":first-child").classed(n,1).classed("crisp",1).call(Nf.stroke,r.dividercolor).style("stroke-width",da.crispRound(e,r.dividerwidth,1)+"px"),o.attr("transform",t.transFn).attr("d",t.path)}lr.getPxPosition=function(e,r){var t=e._fullLayout._size,n=r._id.charAt(0),a=r.side,o;if(r.anchor!=="free"?o=r._anchorAxis:n==="x"?o={_offset:t.t+(1-(r.position||0))*t.h,_length:0}:n==="y"&&(o={_offset:t.l+(r.position||0)*t.w+r._shift,_length:0}),a==="top"||a==="left")return o._offset;if(a==="bottom"||a==="right")return o._offset+o._length};function mM(e){var r=e.title.font.size,t=(e.title.text.match(Ul.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?r*(Vl+t*qf):t?r*(t+1)*qf:r}function CX(e,r){var t=e._fullLayout,n=r._id,a=n.charAt(0),o=r.title.font.size,i,l=(r.title.text.match(Ul.BR_TAG_ALL)||[]).length;if(r.title.hasOwnProperty("standoff"))r.side==="bottom"||r.side==="right"?i=r._depth+r.title.standoff+o*Vl:(r.side==="top"||r.side==="left")&&(i=r._depth+r.title.standoff+o*(If+l*qf));else{var u=Bf(r);if(r.type==="multicategory")i=r._depth;else{var s=1.5*o;u&&(s=.5*o,r.ticks==="outside"&&(s+=r.ticklen)),i=10+s+(r.linewidth?r.linewidth-1:0)}u||(a==="x"?i+=r.side==="top"?o*(r.showticklabels?1:0):o*(r.showticklabels?1.5:.5):i+=r.side==="right"?o*(r.showticklabels?1:.5):o*(r.showticklabels?.5:0))}var f=lr.getPxPosition(e,r),h,p,_;a==="x"?(p=r._offset+r._length/2,_=r.side==="top"?f-i:f+i):(_=r._offset+r._length/2,p=r.side==="right"?f+i:f-i,h={rotate:"-90",offset:0});var m;if(r.type!=="multicategory"){var w=r._selections[r._id+"tick"];if(m={selection:w,side:r.side},w&&w.node()&&w.node().parentNode){var T=da.getTranslate(w.node().parentNode);m.offsetLeft=T.x,m.offsetTop=T.y}r.title.hasOwnProperty("standoff")&&(m.pad=0)}return r._titleStandoff=i,XW.draw(e,n+"title",{propContainer:r,propName:r._name+".title.text",placeholder:t._dfltTitle[a],avoid:m,transform:h,attributes:{x:p,y:_,"text-anchor":"middle"}})}lr.shouldShowZeroLine=function(e,r,t){var n=Er.simpleMap(r.range,r.r2l);return n[0]*n[1]<=0&&r.zeroline&&(r.type==="linear"||r.type==="-")&&!(r.rangebreaks&&r.maskBreaks(0)===Xh)&&(SM(r,0)||!EX(e,r,t,n)||LX(e,r))};lr.clipEnds=function(e,r){return r.filter(function(t){return SM(e,t.x)})};function SM(e,r){var t=e.l2p(r);return t>1&&t1)for(a=1;a=a.min&&e=jW:/%L/.test(r)?e>=$W:/%[SX]/.test(r)?e>=Yh:/%M/.test(r)?e>=zf:/%[HI]/.test(r)?e>=Ii:/%p/.test(r)?e>=Ho:/%[Aadejuwx]/.test(r)?e>=On:/%[UVW]/.test(r)?e>=pa:/%[Bbm]/.test(r)?e>=Gh:/%[q]/.test(r)?e>=Vh:/%[Yy]/.test(r)?e>=Hh:!0}});var RM=de((Bce,DM)=>{"use strict";DM.exports=function(r,t,n){var a,o;if(n){var i=t==="reversed"||t==="min reversed"||t==="max reversed";a=n[i?1:0],o=n[i?0:1]}var l=r("autorangeoptions.minallowed",o===null?a:void 0),u=r("autorangeoptions.maxallowed",a===null?o:void 0);l===void 0&&r("autorangeoptions.clipmin"),u===void 0&&r("autorangeoptions.clipmax"),r("autorangeoptions.include")}});var d2=de((Uce,PM)=>{"use strict";var NX=RM();PM.exports=function(r,t,n,a){var o=t._template||{},i=t.type||o.type||"-";n("minallowed"),n("maxallowed");var l=n("range");if(!l){var u;!a.noInsiderange&&i!=="log"&&(u=n("insiderange"),u&&(u[0]===null||u[1]===null)&&(t.insiderange=!1,u=void 0),u&&(l=n("range",u)))}var s=t.getAutorangeDflt(l,a),f=n("autorange",s),h;l&&(l[0]===null&&l[1]===null||(l[0]===null||l[1]===null)&&(f==="reversed"||f===!0)||l[0]!==null&&(f==="min"||f==="max reversed")||l[1]!==null&&(f==="max"||f==="min reversed"))&&(l=void 0,delete t.range,t.autorange=!0,h=!0),h||(s=t.getAutorangeDflt(l,a),f=n("autorange",s)),f&&(NX(n,f,l),(i==="linear"||i==="-")&&n("rangemode")),t.cleanRange()}});var FM=de((Hce,IM)=>{var zX={left:0,top:0};IM.exports=qX;function qX(e,r,t){r=r||e.currentTarget||e.srcElement,Array.isArray(t)||(t=[0,0]);var n=e.clientX||0,a=e.clientY||0,o=OX(r);return t[0]=n-o.left,t[1]=a-o.top,t}function OX(e){return e===window||e===document||e===document.body?zX:e.getBoundingClientRect()}});var Qh=de((Vce,NM)=>{"use strict";var BX=Gp();function UX(){var e=!1;try{var r=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,r),window.removeEventListener("test",null,r)}catch(t){e=!1}return e}NM.exports=BX&&UX()});var qM=de((Gce,zM)=>{"use strict";zM.exports=function(r,t,n,a,o){var i=(r-n)/(a-n),l=i+t/(a-n),u=(i+l)/2;return o==="left"||o==="bottom"?i:o==="center"||o==="middle"?u:o==="right"||o==="top"?l:i<2/3-u?i:l>4/3-u?l:u}});var UM=de((Yce,BM)=>{"use strict";var OM=ir(),HX=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];BM.exports=function(r,t,n,a){return n==="left"?r=0:n==="center"?r=1:n==="right"?r=2:r=OM.constrain(Math.floor(r*3),0,2),a==="bottom"?t=0:a==="middle"?t=1:a==="top"?t=2:t=OM.constrain(Math.floor(t*3),0,2),HX[t][r]}});var VM=de((Wce,HM)=>{"use strict";var VX=Mf(),GX=$c(),YX=pf().getGraphDiv,WX=cf(),p2=HM.exports={};p2.wrapped=function(e,r,t){e=YX(e),e._fullLayout&&GX.clear(e._fullLayout._uid+WX.HOVERID),p2.raw(e,r,t)};p2.raw=function(r,t){var n=r._fullLayout,a=r._hoverdata;t||(t={}),!(t.target&&!r._dragged&&VX.triggerHandler(r,"plotly_beforehover",t)===!1)&&(n._hoverlayer.selectAll("g").remove(),n._hoverlayer.selectAll("line").remove(),n._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,t.target&&a&&r.emit("plotly_unhover",{event:t,points:a}))}});var ni=de((Xce,XM)=>{"use strict";var XX=FM(),g2=Wp(),ZX=Qh(),JX=ir().removeElement,KX=_n(),Gl=XM.exports={};Gl.align=qM();Gl.getCursor=UM();var YM=VM();Gl.unhover=YM.wrapped;Gl.unhoverRaw=YM.raw;Gl.init=function(r){var t=r.gd,n=1,a=t._context.doubleClickDelay,o=r.element,i,l,u,s,f,h,p,_;t._mouseDownTime||(t._mouseDownTime=0),o.style.pointerEvents="all",o.onmousedown=T,ZX?(o._ontouchstart&&o.removeEventListener("touchstart",o._ontouchstart),o._ontouchstart=T,o.addEventListener("touchstart",T,{passive:!1})):o.ontouchstart=T;function m(S,b,M){return Math.abs(S)a&&(n=Math.max(n-1,1)),t._dragged)r.doneFn&&r.doneFn();else{var b;h.target===p?b=h:(b={target:p,srcElement:p,toElement:p},Object.keys(h).concat(Object.keys(h.__proto__)).forEach(M=>{var d=h[M];!b[M]&&typeof d!="function"&&(b[M]=d)})),r.clickFn&&r.clickFn(n,b),_||p.dispatchEvent(new MouseEvent("click",S))}t._dragging=!1,t._dragged=!1}};function WM(){var e=document.createElement("div");e.className="dragcover";var r=e.style;return r.position="fixed",r.left=0,r.right=0,r.top=0,r.bottom=0,r.zIndex=999999999,r.background="none",document.body.appendChild(e),e}Gl.coverSlip=WM;function GM(e){return XX(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Vo=de((Zce,ZM)=>{"use strict";ZM.exports=function(r,t){(r.attr("class")||"").split(" ").forEach(function(n){n.indexOf("cursor-")===0&&r.classed(n,!1)}),t&&r.classed("cursor-"+t,!0)}});var QM=de((Jce,KM)=>{"use strict";var y2=Vo(),Uf="data-savedcursor",JM="!!";KM.exports=function(r,t){var n=r.attr(Uf);if(t){if(!n){for(var a=(r.attr("class")||"").split(" "),o=0;o{"use strict";var m2=kn(),QX=Ti();$M.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:QX.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:m2({editType:"legend"}),grouptitlefont:m2({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:m2({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var jh=de($h=>{"use strict";$h.isGrouped=function(r){return(r.traceorder||"").indexOf("grouped")!==-1};$h.isVertical=function(r){return r.orientation!=="h"};$h.isReversed=function(r){return(r.traceorder||"").indexOf("reversed")!==-1}});var w2=de(($ce,jM)=>{"use strict";var x2=Cr(),ga=ir(),$X=yt(),jX=Sn(),eZ=b2(),rZ=Is(),_2=jh();function tZ(e,r,t,n){var a=r[e]||{},o=$X.newContainer(t,e);function i(I,L){return ga.coerce(a,o,eZ,I,L)}var l=ga.coerceFont(i,"font",t.font);i("bgcolor",t.paper_bgcolor),i("bordercolor");var u=i("visible");if(u){for(var s,f=function(I,L){var P=s._input,O=s;return ga.coerce(P,O,jX,I,L)},h=t.font||{},p=ga.coerceFont(i,"grouptitlefont",h,{overrideDflt:{size:Math.round(h.size*1.1)}}),_=0,m=!1,w="normal",T=(t.shapes||[]).filter(function(I){return I.showlegend}),y=n.concat(T).filter(function(I){return e===(I.legend||"legend")}),k=0;k(e==="legend"?1:0));if(b===!1&&(t[e]=void 0),!(b===!1&&!a.uirevision)&&(i("uirevision",t.uirevision),b!==!1)){i("borderwidth");var M=i("orientation"),d=i("yref"),x=i("xref"),g=M==="h",c=d==="paper",A=x==="paper",v,D,E,R="left";g?(v=0,x2.getComponentMethod("rangeslider","isVisible")(r.xaxis)?c?(D=1.1,E="bottom"):(D=1,E="top"):c?(D=-.1,E="top"):(D=0,E="bottom")):(D=1,E="auto",A?v=1.02:(v=1,R="right")),ga.coerce(a,o,{x:{valType:"number",editType:"legend",min:A?-2:0,max:A?3:1,dflt:v}},"x"),ga.coerce(a,o,{y:{valType:"number",editType:"legend",min:c?-2:0,max:c?3:1,dflt:D}},"y"),i("traceorder",w),_2.isGrouped(t[e])&&i("tracegroupgap"),i("entrywidth"),i("entrywidthmode"),i("indentation"),i("itemsizing"),i("itemwidth"),i("itemclick"),i("itemdoubleclick"),i("groupclick"),i("xanchor",R),i("yanchor",E),i("maxheight"),i("valign"),ga.noneOrAll(a,o,["x","y"]);var N=i("title.text");if(N){i("title.side",g?"left":"top");var F=ga.extendFlat({},l,{size:ga.bigFont(l.size)});ga.coerceFont(i,"title.font",F)}}}}jM.exports=function(r,t,n){var a,o=n.slice(),i=t.shapes;if(i)for(a=0;a{"use strict";var iu=Cr(),T2=ir(),nZ=T2.pushUnique,M2=!0;eT.exports=function(r,t,n){var a=t._fullLayout;if(t._dragged||t._editing)return;var o=a.legend.itemclick,i=a.legend.itemdoubleclick,l=a.legend.groupclick;n===1&&o==="toggle"&&i==="toggleothers"&&M2&&t.data&&t._context.showTips&&T2.notifier(T2._(t,"Double-click on legend to isolate one trace"),"long"),M2=!1;var u;if(n===1?u=o:n===2&&(u=i),!u)return;var s=l==="togglegroup",f=a.hiddenlabels?a.hiddenlabels.slice():[],h=r.data()[0][0];if(h.groupTitle&&h.noClick)return;var p=t._fullData,_=(a.shapes||[]).filter(function(Ae){return Ae.showlegend}),m=p.concat(_),w=h.trace;w._isShape&&(w=w._fullInput);var T=w.legendgroup,y,k,S,b,M,d,x={},g=[],c=[],A=[];function v(Ae,Ce){var Pe=g.indexOf(Ae),Ee=x.visible;return Ee||(Ee=x.visible=[]),g.indexOf(Ae)===-1&&(g.push(Ae),Pe=g.length-1),Ee[Pe]=Ce,Pe}var D=(a.shapes||[]).map(function(Ae){return Ae._input}),E=!1;function R(Ae,Ce){D[Ae].visible=Ce,E=!0}function N(Ae,Ce){if(!(h.groupTitle&&!s)){var Pe=Ae._fullInput||Ae,Ee=Pe._isShape,Ne=Pe.index;Ne===void 0&&(Ne=Pe._index);var Ue=Pe.visible===!1?!1:Ce;Ee?R(Ne,Ue):v(Ne,Ue)}}var F=w.legend,I=w._fullInput,L=I&&I._isShape;if(!L&&iu.traceIs(w,"pie-like")){var P=h.label,O=f.indexOf(P);if(u==="toggle")O===-1?f.push(P):f.splice(O,1);else if(u==="toggleothers"){var U=O!==-1,X=[];for(y=0;y{"use strict";tT.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var iT=de((rhe,aT)=>{"use strict";var nT=Cr(),k2=jh();aT.exports=function(r,t,n){var a=t._inHover,o=k2.isGrouped(t),i=k2.isReversed(t),l={},u=[],s=!1,f={},h=0,p=0,_,m;function w(I,L,P){if(t.visible!==!1&&!(n&&I!==t._id))if(L===""||!k2.isGrouped(t)){var O="~~i"+h;u.push(O),l[O]=[P],h++}else u.indexOf(L)===-1?(u.push(L),s=!0,l[L]=[P]):l[L].push(P)}for(_=0;_A&&(c=A)}x[_][0]._groupMinRank=c,x[_][0]._preGroupSort=_}var v=function(I,L){return I[0]._groupMinRank-L[0]._groupMinRank||I[0]._preGroupSort-L[0]._preGroupSort},D=function(I,L){return I.trace.legendrank-L.trace.legendrank||I._preSort-L._preSort};for(x.forEach(function(I,L){I[0]._preGroupSort=L}),x.sort(v),_=0;_{"use strict";var ev=ir();function oT(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}Yl.formatPiePercent=function(r,t){var n=oT((r*100).toPrecision(3));return ev.numSeparate(n,t)+"%"};Yl.formatPieValue=function(r,t){var n=oT(r.toPrecision(10));return ev.numSeparate(n,t)};Yl.getFirstFilled=function(r,t){if(ev.isArrayOrTypedArray(r))for(var n=0;n{"use strict";var aZ=mt(),iZ=Xr();lT.exports=function(r,t,n,a){var o=n.marker.pattern;o&&o.shape?aZ.pointStyle(r,n,a,t):iZ.fill(r,t.color)}});var hT=de((ahe,cT)=>{"use strict";var uT=Xr(),fT=S2().castOption,oZ=sT();cT.exports=function(r,t,n,a){var o=n.marker.line,i=fT(o.color,t.pts)||uT.defaultLine,l=fT(o.width,t.pts)||0;r.call(oZ,t,n,a).style("stroke-width",l).call(uT.stroke,i)}});var D2=de((ihe,mT)=>{"use strict";var Bn=it(),C2=Cr(),En=ir(),vT=En.strTranslate,ya=mt(),Ra=Xr(),E2=Si().extractOpts,rv=oa(),lZ=hT(),sZ=S2().castOption,uZ=A2(),dT=12,pT=5,Wl=2,fZ=10,ou=5;mT.exports=function(r,t,n){var a=t._fullLayout;n||(n=a.legend);var o=n.itemsizing==="constant",i=n.itemwidth,l=(i+uZ.itemGap*2)/2,u=vT(l,0),s=function(x,g,c,A){var v;if(x+1)v=x;else if(g&&g.width>0)v=g.width;else return 0;return o?A:Math.min(v,c)};r.each(function(x){var g=Bn.select(this),c=En.ensureSingle(g,"g","layers");c.style("opacity",x[0].trace.opacity);var A=n.indentation,v=n.valign,D=x[0].lineHeight,E=x[0].height;if(v==="middle"&&A===0||!D||!E)c.attr("transform",null);else{var R={top:1,bottom:-1}[v],N=R*(.5*(D-E+3))||0,F=n.indentation;c.attr("transform",vT(F,N))}var I=c.selectAll("g.legendfill").data([x]);I.enter().append("g").classed("legendfill",!0);var L=c.selectAll("g.legendlines").data([x]);L.enter().append("g").classed("legendlines",!0);var P=c.selectAll("g.legendsymbols").data([x]);P.enter().append("g").classed("legendsymbols",!0),P.selectAll("g.legendpoints").data([x]).enter().append("g").classed("legendpoints",!0)}).each(d).each(p).each(m).each(_).each(T).each(b).each(S).each(f).each(h).each(y).each(k);function f(x){var g=gT(x),c=g.showFill,A=g.showLine,v=g.showGradientLine,D=g.showGradientFill,E=g.anyFill,R=g.anyLine,N=x[0],F=N.trace,I,L,P=E2(F),O=P.colorscale,U=P.reversescale,X=function(Q){if(Q.size())if(c)ya.fillGroupStyle(Q,t,!0);else{var oe="legendfill-"+F.uid;ya.gradient(Q,t,oe,L2(U),O,"fill")}},$=function(Q){if(Q.size()){var oe="legendline-"+F.uid;ya.lineGroupStyle(Q),ya.gradient(Q,t,oe,L2(U),O,"stroke")}},j=rv.hasMarkers(F)||!E?"M5,0":R?"M5,-2":"M5,-3",Y=Bn.select(this),q=Y.select(".legendfill").selectAll("path").data(c||D?[x]:[]);if(q.enter().append("path").classed("js-fill",!0),q.exit().remove(),q.attr("d",j+"h"+i+"v6h-"+i+"z").call(X),A||v){var K=s(void 0,F.line,fZ,pT);L=En.minExtend(F,{line:{width:K}}),I=[En.minExtend(N,{trace:L})]}var ne=Y.select(".legendlines").selectAll("path").data(A||v?[I]:[]);ne.enter().append("path").classed("js-line",!0),ne.exit().remove(),ne.attr("d",j+(v?"l"+i+",0.0001":"h"+i)).call(A?ya.lineGroupStyle:$)}function h(x){var g=gT(x),c=g.anyFill,A=g.anyLine,v=g.showLine,D=g.showMarker,E=x[0],R=E.trace,N=!D&&!A&&!c&&rv.hasText(R),F,I;function L(q,K,ne,Q){var oe=En.nestedProperty(R,q).get(),re=En.isArrayOrTypedArray(oe)&&K?K(oe):oe;if(o&&re&&Q!==void 0&&(re=Q),ne){if(rene[1])return ne[1]}return re}function P(q){return E._distinct&&E.index&&q[E.index]?q[E.index]:q[0]}if(D||N||v){var O={},U={};if(D){O.mc=L("marker.color",P),O.mx=L("marker.symbol",P),O.mo=L("marker.opacity",En.mean,[.2,1]),O.mlc=L("marker.line.color",P),O.mlw=L("marker.line.width",En.mean,[0,5],Wl),U.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var X=L("marker.size",En.mean,[2,16],dT);O.ms=X,U.marker.size=X}v&&(U.line={width:L("line.width",P,[0,10],pT)}),N&&(O.tx="Aa",O.tp=L("textposition",P),O.ts=10,O.tc=L("textfont.color",P),O.tf=L("textfont.family",P),O.tw=L("textfont.weight",P),O.ty=L("textfont.style",P),O.tv=L("textfont.variant",P),O.tC=L("textfont.textcase",P),O.tE=L("textfont.lineposition",P),O.tS=L("textfont.shadow",P)),F=[En.minExtend(E,O)],I=En.minExtend(R,U),I.selectedpoints=null,I.texttemplate=null}var $=Bn.select(this).select("g.legendpoints"),j=$.selectAll("path.scatterpts").data(D?F:[]);j.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",u),j.exit().remove(),j.call(ya.pointStyle,I,t),D&&(F[0].mrc=3);var Y=$.selectAll("g.pointtext").data(N?F:[]);Y.enter().append("g").classed("pointtext",!0).append("text").attr("transform",u),Y.exit().remove(),Y.selectAll("text").call(ya.textPointStyle,I,t)}function p(x){var g=x[0].trace,c=g.type==="waterfall";if(x[0]._distinct&&c){var A=x[0].trace[x[0].dir].marker;return x[0].mc=A.color,x[0].mlw=A.line.width,x[0].mlc=A.line.color,w(x,this,"waterfall")}var v=[];g.visible&&c&&(v=x[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var D=Bn.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(v);D.enter().append("path").classed("legendwaterfall",!0).attr("transform",u).style("stroke-miterlimit",1),D.exit().remove(),D.each(function(E){var R=Bn.select(this),N=g[E[0]].marker,F=s(void 0,N.line,ou,Wl);R.attr("d",E[1]).style("stroke-width",F+"px").call(Ra.fill,N.color),F&&R.call(Ra.stroke,N.line.color)})}function _(x){w(x,this)}function m(x){w(x,this,"funnel")}function w(x,g,c){var A=x[0].trace,v=A.marker||{},D=v.line||{},E=v.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",R=c?A.visible&&A.type===c:C2.traceIs(A,"bar"),N=Bn.select(g).select("g.legendpoints").selectAll("path.legend"+c).data(R?[x]:[]);N.enter().append("path").classed("legend"+c,!0).attr("d",E).attr("transform",u),N.exit().remove(),N.each(function(F){var I=Bn.select(this),L=F[0],P=s(L.mlw,v.line,ou,Wl);I.style("stroke-width",P+"px");var O=L.mcc;if(!n._inHover&&"mc"in L){var U=E2(v),X=U.mid;X===void 0&&(X=(U.max+U.min)/2),O=ya.tryColorscale(v,"")(X)}var $=O||L.mc||v.color,j=v.pattern,Y=ya.getPatternAttr,q=j&&(Y(j.shape,0,"")||Y(j.path,0,""));if(q){var K=Y(j.bgcolor,0,null),ne=Y(j.fgcolor,0,null),Q=j.fgopacity,oe=yT(j.size,8,10),re=yT(j.solidity,.5,1),H="legend-"+A.uid;I.call(ya.pattern,"legend",t,H,q,oe,re,O,j.fillmode,K,ne,Q)}else I.call(Ra.fill,$);P&&Ra.stroke(I,L.mlc||D.color)})}function T(x){var g=x[0].trace,c=Bn.select(this).select("g.legendpoints").selectAll("path.legendbox").data(g.visible&&C2.traceIs(g,"box-violin")?[x]:[]);c.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",u),c.exit().remove(),c.each(function(){var A=Bn.select(this);if((g.boxpoints==="all"||g.points==="all")&&Ra.opacity(g.fillcolor)===0&&Ra.opacity((g.line||{}).color)===0){var v=En.minExtend(g,{marker:{size:o?dT:En.constrain(g.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});c.call(ya.pointStyle,v,t)}else{var D=s(void 0,g.line,ou,Wl);A.style("stroke-width",D+"px").call(Ra.fill,g.fillcolor),D&&Ra.stroke(A,g.line.color)}})}function y(x){var g=x[0].trace,c=Bn.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(g.visible&&g.type==="candlestick"?[x,x]:[]);c.enter().append("path").classed("legendcandle",!0).attr("d",function(A,v){return v?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",u).style("stroke-miterlimit",1),c.exit().remove(),c.each(function(A,v){var D=Bn.select(this),E=g[v?"increasing":"decreasing"],R=s(void 0,E.line,ou,Wl);D.style("stroke-width",R+"px").call(Ra.fill,E.fillcolor),R&&Ra.stroke(D,E.line.color)})}function k(x){var g=x[0].trace,c=Bn.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(g.visible&&g.type==="ohlc"?[x,x]:[]);c.enter().append("path").classed("legendohlc",!0).attr("d",function(A,v){return v?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",u).style("stroke-miterlimit",1),c.exit().remove(),c.each(function(A,v){var D=Bn.select(this),E=g[v?"increasing":"decreasing"],R=s(void 0,E.line,ou,Wl);D.style("fill","none").call(ya.dashLine,E.line.dash,R),R&&Ra.stroke(D,E.line.color)})}function S(x){M(x,this,"pie")}function b(x){M(x,this,"funnelarea")}function M(x,g,c){var A=x[0],v=A.trace,D=c?v.visible&&v.type===c:C2.traceIs(v,c),E=Bn.select(g).select("g.legendpoints").selectAll("path.legend"+c).data(D?[x]:[]);if(E.enter().append("path").classed("legend"+c,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",u),E.exit().remove(),E.size()){var R=v.marker||{},N=s(sZ(R.line.width,A.pts),R.line,ou,Wl),F="pieLike",I=En.minExtend(v,{marker:{line:{width:N}}},F),L=En.minExtend(A,{trace:I},F);lZ(E,L,I,t)}}function d(x){var g=x[0].trace,c,A=[];if(g.visible)switch(g.type){case"histogram2d":case"heatmap":A=[["M-15,-2V4H15V-2Z"]],c=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":A=[["M-6,-6V6H6V-6Z"]],c=!0;break;case"densitymapbox":case"densitymap":A=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],c="radial";break;case"cone":A=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],c=!1;break;case"streamtube":A=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],c=!1;break;case"surface":A=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],c=!0;break;case"mesh3d":A=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],c=!1;break;case"volume":A=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],c=!0;break;case"isosurface":A=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],c=!1;break}var v=Bn.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(A);v.enter().append("path").classed("legend3dandfriends",!0).attr("transform",u).style("stroke-miterlimit",1),v.exit().remove(),v.each(function(D,E){var R=Bn.select(this),N=E2(g),F=N.colorscale,I=N.reversescale,L=function(X){if(X.size()){var $="legendfill-"+g.uid;ya.gradient(X,t,$,L2(I,c==="radial"),F,"fill")}},P;if(F){if(!c){var U=F.length;P=E===0?F[I?U-1:0][1]:E===1?F[I?0:U-1][1]:F[Math.floor((U-1)/2)][1]}}else{var O=g.vertexcolor||g.facecolor||g.color;P=En.isArrayOrTypedArray(O)?O[E]||O[0]:O}R.attr("d",D[0]),P?R.call(Ra.fill,P):R.call(L)})}};function L2(e,r){var t=r?"radial":"horizontal";return t+(e?"":"reversed")}function gT(e){var r=e[0].trace,t=r.contours,n=rv.hasLines(r),a=rv.hasMarkers(r),o=r.visible&&r.fill&&r.fill!=="none",i=!1,l=!1;if(t){var u=t.coloring;u==="lines"?i=!0:n=u==="none"||u==="heatmap"||t.showlines,t.type==="constraint"?o=t._operation!=="=":(u==="fill"||u==="heatmap")&&(l=!0)}return{showMarker:a,showLine:n,showFill:o,showGradientLine:i,showGradientFill:l,anyLine:n||i,anyFill:o||l}}function yT(e,r,t){return e&&En.isArrayOrTypedArray(e)?r:e>t?t:e}});var F2=de((ohe,CT)=>{"use strict";var la=it(),Zt=ir(),P2=on(),uu=Cr(),bT=Mf(),R2=ni(),Jt=mt(),nv=Xr(),Xl=Wn(),xT=rT(),en=A2(),I2=qn(),kT=I2.LINE_SPACING,su=I2.FROM_TL,_T=I2.FROM_BR,wT=iT(),cZ=D2(),MT=jh(),lu=1,hZ=/^legend[0-9]*$/;CT.exports=function(r,t){if(t)TT(r,t);else{var n=r._fullLayout,a=n._legends,o=n._infolayer.selectAll('[class^="legend"]');o.each(function(){var s=la.select(this),f=s.attr("class"),h=f.split(" ")[0];h.match(hZ)&&a.indexOf(h)===-1&&s.remove()});for(var i=0;i1)}var m=n.hiddenlabels||[];if(!l&&(!n.showlegend||!u.length))return i.selectAll("."+a).remove(),n._topdefs.select("#"+o).remove(),P2.autoMargin(e,a);var w=Zt.ensureSingle(i,"g",a,function(g){l||g.attr("pointer-events","all")}),T=Zt.ensureSingleById(n._topdefs,"clipPath",o,function(g){g.append("rect")}),y=Zt.ensureSingle(w,"rect","bg",function(g){g.attr("shape-rendering","crispEdges")});y.call(nv.stroke,t.bordercolor).call(nv.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px");var k=Zt.ensureSingle(w,"g","scrollbox"),S=t.title;t._titleWidth=0,t._titleHeight=0;var b;S.text?(b=Zt.ensureSingle(k,"text",a+"titletext"),b.attr("text-anchor","start").call(Jt.font,S.font).text(S.text),av(b,k,e,t,lu)):k.selectAll("."+a+"titletext").remove();var M=Zt.ensureSingle(w,"rect","scrollbar",function(g){g.attr(en.scrollBarEnterAttrs).call(nv.fill,en.scrollBarColor)}),d=k.selectAll("g.groups").data(u);d.enter().append("g").attr("class","groups"),d.exit().remove();var x=d.selectAll("g.traces").data(Zt.identity);x.enter().append("g").attr("class","traces"),x.exit().remove(),x.style("opacity",function(g){var c=g[0].trace;return uu.traceIs(c,"pie-like")?m.indexOf(g[0].label)!==-1?.5:1:c.visible==="legendonly"?.5:1}).each(function(){la.select(this).call(dZ,e,t)}).call(cZ,e,t).each(function(){l||la.select(this).call(pZ,e,a)}),Zt.syncOrAsync([P2.previousPromises,function(){return mZ(e,d,x,t)},function(){var g=n._size,c=t.borderwidth,A=t.xref==="paper",v=t.yref==="paper";if(S.text&&vZ(b,t,c),!l){var D,E;A?D=g.l+g.w*t.x-su[iv(t)]*t._width:D=n.width*t.x-su[iv(t)]*t._width,v?E=g.t+g.h*(1-t.y)-su[ov(t)]*t._effHeight:E=n.height*(1-t.y)-su[ov(t)]*t._effHeight;var R=bZ(e,a,D,E);if(R)return;if(n.margin.autoexpand){var N=D,F=E;D=A?Zt.constrain(D,0,n.width-t._width):N,E=v?Zt.constrain(E,0,n.height-t._effHeight):F,D!==N&&Zt.log("Constrain "+a+".x to make legend fit inside graph"),E!==F&&Zt.log("Constrain "+a+".y to make legend fit inside graph")}Jt.setTranslate(w,D,E)}if(M.on(".drag",null),w.on("wheel",null),l||t._height<=t._maxHeight||e._context.staticPlot){var I=t._effHeight;l&&(I=t._height),y.attr({width:t._width-c,height:I-c,x:c/2,y:c/2}),Jt.setTranslate(k,0,0),T.select("rect").attr({width:t._width-2*c,height:I-2*c,x:c,y:c}),Jt.setClipUrl(k,o,e),Jt.setRect(M,0,0,0,0),delete t._scrollY}else{var L=Math.max(en.scrollBarMinHeight,t._effHeight*t._effHeight/t._height),P=t._effHeight-L-2*en.scrollBarMargin,O=t._height-t._effHeight,U=P/O,X=Math.min(t._scrollY||0,O);y.attr({width:t._width-2*c+en.scrollBarWidth+en.scrollBarMargin,height:t._effHeight-c,x:c/2,y:c/2}),T.select("rect").attr({width:t._width-2*c+en.scrollBarWidth+en.scrollBarMargin,height:t._effHeight-2*c,x:c,y:c+X}),Jt.setClipUrl(k,o,e),oe(X,L,U),w.on("wheel",function(){X=Zt.constrain(t._scrollY+la.event.deltaY/O*P,0,O),oe(X,L,U),X!==0&&X!==O&&la.event.preventDefault()});var $,j,Y,q=function(te,ue,ve){var ke=(ve-ue)/U+te;return Zt.constrain(ke,0,O)},K=function(te,ue,ve){var ke=(ue-ve)/U+te;return Zt.constrain(ke,0,O)},ne=la.behavior.drag().on("dragstart",function(){var te=la.event.sourceEvent;te.type==="touchstart"?$=te.changedTouches[0].clientY:$=te.clientY,Y=X}).on("drag",function(){var te=la.event.sourceEvent;te.buttons===2||te.ctrlKey||(te.type==="touchmove"?j=te.changedTouches[0].clientY:j=te.clientY,X=q(Y,$,j),oe(X,L,U))});M.call(ne);var Q=la.behavior.drag().on("dragstart",function(){var te=la.event.sourceEvent;te.type==="touchstart"&&($=te.changedTouches[0].clientY,Y=X)}).on("drag",function(){var te=la.event.sourceEvent;te.type==="touchmove"&&(j=te.changedTouches[0].clientY,X=K(Y,$,j),oe(X,L,U))});k.call(Q)}function oe(te,ue,ve){t._scrollY=e._fullLayout[a]._scrollY=te,Jt.setTranslate(k,0,-te),Jt.setRect(M,t._width,en.scrollBarMargin+te*ve,en.scrollBarWidth,ue),T.select("rect").attr("y",c+te)}if(e._context.edits.legendPosition){var re,H,ee,V;w.classed("cursor-move",!0),R2.init({element:w.node(),gd:e,prepFn:function(te){if(te.target!==M.node()){var ue=Jt.getTranslate(w);ee=ue.x,V=ue.y}},moveFn:function(te,ue){if(ee!==void 0&&V!==void 0){var ve=ee+te,ke=V+ue;Jt.setTranslate(w,ve,ke),re=R2.align(ve,t._width,g.l,g.l+g.w,t.xanchor),H=R2.align(ke+t._height,-t._height,g.t+g.h,g.t,t.yanchor)}},doneFn:function(){if(re!==void 0&&H!==void 0){var te={};te[a+".x"]=re,te[a+".y"]=H,uu.call("_guiRelayout",e,te)}},clickFn:function(te,ue){var ve=i.selectAll("g.traces").filter(function(){var ke=this.getBoundingClientRect();return ue.clientX>=ke.left&&ue.clientX<=ke.right&&ue.clientY>=ke.top&&ue.clientY<=ke.bottom});ve.size()>0&&ST(e,w,ve,te,ue)}})}}],e)}}function tv(e,r,t){var n=e[0],a=n.width,o=r.entrywidthmode,i=n.trace.legendwidth||r.entrywidth;return o==="fraction"?r._maxWidth*i:t+(i||a)}function ST(e,r,t,n,a){var o=t.data()[0][0].trace,i={event:a,node:t.node(),curveNumber:o.index,expandedIndex:o.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};o._group&&(i.group=o._group),uu.traceIs(o,"pie-like")&&(i.label=t.datum()[0].label);var l=bT.triggerHandler(e,"plotly_legendclick",i);if(n===1){if(l===!1)return;r._clickTimeout=setTimeout(function(){e._fullLayout&&xT(t,e,n)},e._context.doubleClickDelay)}else if(n===2){r._clickTimeout&&clearTimeout(r._clickTimeout),e._legendMouseDownTime=0;var u=bT.triggerHandler(e,"plotly_legenddoubleclick",i);u!==!1&&l!==!1&&xT(t,e,n)}}function dZ(e,r,t){var n=lv(t),a=e.data()[0][0],o=a.trace,i=uu.traceIs(o,"pie-like"),l=!t._inHover&&r._context.edits.legendText&&!i,u=t._maxNameLength,s,f;a.groupTitle?(s=a.groupTitle.text,f=a.groupTitle.font):(f=t.font,t.entries?s=a.text:(s=i?a.label:o.name,o._meta&&(s=Zt.templateString(s,o._meta))));var h=Zt.ensureSingle(e,"text",n+"text");h.attr("text-anchor","start").call(Jt.font,f).text(l?AT(s,u):s);var p=t.indentation+t.itemwidth+en.itemGap*2;Xl.positionText(h,p,0),l?h.call(Xl.makeEditable,{gd:r,text:s}).call(av,e,r,t).on("edit",function(_){this.text(AT(_,u)).call(av,e,r,t);var m=a.trace._fullInput||{},w={};return w.name=_,m._isShape?uu.call("_guiRelayout",r,"shapes["+o.index+"].name",w.name):uu.call("_guiRestyle",r,w,o.index)}):av(h,e,r,t)}function AT(e,r){var t=Math.max(4,r);if(e&&e.trim().length>=t/2)return e;e=e||"";for(var n=t-e.length;n>0;n--)e+=" ";return e}function pZ(e,r,t){var n=r._context.doubleClickDelay,a,o=1,i=Zt.ensureSingle(e,"rect",t+"toggle",function(l){r._context.staticPlot||l.style("cursor","pointer").attr("pointer-events","all"),l.call(nv.fill,"rgba(0,0,0,0)")});r._context.staticPlot||(i.on("mousedown",function(){a=new Date().getTime(),a-r._legendMouseDownTimen&&(o=Math.max(o-1,1)),ST(r,l,e,o,la.event)}}))}function av(e,r,t,n,a){n._inHover&&e.attr("data-notex",!0),Xl.convertToTspans(e,t,function(){gZ(r,t,n,a)})}function gZ(e,r,t,n){var a=e.data()[0][0];if(!t._inHover&&a&&!a.trace.showlegend){e.remove();return}var o=e.select("g[class*=math-group]"),i=o.node(),l=lv(t);t||(t=r._fullLayout[l]);var u=t.borderwidth,s;n===lu?s=t.title.font:a.groupTitle?s=a.groupTitle.font:s=t.font;var f=s.size*kT,h,p;if(i){var _=Jt.bBox(i);h=_.height,p=_.width,n===lu?Jt.setTranslate(o,u,u+h*.75):Jt.setTranslate(o,0,h*.25)}else{var m="."+l+(n===lu?"title":"")+"text",w=e.select(m),T=Xl.lineCount(w),y=w.node();if(h=f*T,p=y?Jt.bBox(y).width:0,n===lu)t.title.side==="left"&&(p+=en.itemGap*2),Xl.positionText(w,u+en.titlePad,u+f);else{var k=en.itemGap*2+t.indentation+t.itemwidth;a.groupTitle&&(k=en.itemGap,p-=t.indentation+t.itemwidth),Xl.positionText(w,k,-f*((T-1)/2-.3))}}n===lu?(t._titleWidth=p,t._titleHeight=h):(a.lineHeight=f,a.height=Math.max(h,16)+3,a.width=p)}function yZ(e){var r=0,t=0,n=e.title.side;return n&&(n.indexOf("left")!==-1&&(r=e._titleWidth),n.indexOf("top")!==-1&&(t=e._titleHeight)),[r,t]}function mZ(e,r,t,n){var a=e._fullLayout,o=lv(n);n||(n=a[o]);var i=a._size,l=MT.isVertical(n),u=MT.isGrouped(n),s=n.entrywidthmode==="fraction",f=n.borderwidth,h=2*f,p=en.itemGap,_=n.indentation+n.itemwidth+p*2,m=2*(f+p),w=ov(n),T=n.y<0||n.y===0&&w==="top",y=n.y>1||n.y===1&&w==="bottom",k=n.tracegroupgap,S={};let{orientation:b,yref:M}=n,{maxheight:d}=n,x=T||y||b!=="v"||M!=="paper";d||(d=x?.5:1);let g=x?a.height:i.h;n._maxHeight=Math.max(d>1?d:d*g,30);var c=0;n._width=0,n._height=0;var A=yZ(n);if(l)t.each(function(oe){var re=oe[0].height;Jt.setTranslate(this,f+A[0],f+A[1]+n._height+re/2+p),n._height+=re,n._width=Math.max(n._width,oe[0].width)}),c=_+n._width,n._width+=p+_+h,n._height+=m,u&&(r.each(function(oe,re){Jt.setTranslate(this,0,re*n.tracegroupgap)}),n._height+=(n._lgroupsLength-1)*n.tracegroupgap);else{var v=iv(n),D=n.x<0||n.x===0&&v==="right",E=n.x>1||n.x===1&&v==="left",R=y||T,N=a.width/2;n._maxWidth=Math.max(D?R&&v==="left"?i.l+i.w:N:E?R&&v==="right"?i.r+i.w:N:i.w,2*_);var F=0,I=0;t.each(function(oe){var re=tv(oe,n,_);F=Math.max(F,re),I+=re}),c=null;var L=0;if(u){var P=0,O=0,U=0;r.each(function(){var oe=0,re=0;la.select(this).selectAll("g.traces").each(function(ee){var V=tv(ee,n,_),te=ee[0].height;Jt.setTranslate(this,A[0],A[1]+f+p+te/2+re),re+=te,oe=Math.max(oe,V),S[ee[0].trace.legendgroup]=oe});var H=oe+p;O>0&&H+f+O>n._maxWidth?(L=Math.max(L,O),O=0,U+=P+k,P=re):P=Math.max(P,re),Jt.setTranslate(this,O,U),O+=H}),n._width=Math.max(L,O)+f,n._height=U+P+m}else{var X=t.size(),$=I+h+(X-1)*p=n._maxWidth&&(L=Math.max(L,K),Y=0,q+=j,n._height+=j,j=0),Jt.setTranslate(this,A[0]+f+Y,A[1]+f+q+re/2+p),K=Y+H+p,Y+=ee,j=Math.max(j,re)}),$?(n._width=Y+h,n._height=j+m):(n._width=Math.max(L,K)+h,n._height+=j+m)}}n._width=Math.ceil(Math.max(n._width+A[0],n._titleWidth+2*(f+en.titlePad))),n._height=Math.ceil(Math.max(n._height+A[1],n._titleHeight+2*(f+en.itemGap))),n._effHeight=Math.min(n._height,n._maxHeight);var ne=e._context.edits,Q=ne.legendText||ne.legendPosition;t.each(function(oe){var re=la.select(this).select("."+o+"toggle"),H=oe[0].height,ee=oe[0].trace.legendgroup,V=tv(oe,n,_);u&&ee!==""&&(V=S[ee]);var te=Q?_:c||V;!l&&!s&&(te+=p/2),Jt.setRect(re,0,-H/2,te,H)})}function bZ(e,r,t,n){var a=e._fullLayout,o=a[r],i=iv(o),l=ov(o),u=o.xref==="paper",s=o.yref==="paper";e._fullLayout._reservedMargin[r]={};var f=o.y<.5?"b":"t",h=o.x<.5?"l":"r",p={r:a.width-t,l:t+o._width,b:a.height-n,t:n+o._effHeight};if(u&&s)return P2.autoMargin(e,r,{x:o.x,y:o.y,l:o._width*su[i],r:o._width*_T[i],b:o._effHeight*_T[l],t:o._effHeight*su[l]});u?e._fullLayout._reservedMargin[r][f]=p[f]:s||o.orientation==="v"?e._fullLayout._reservedMargin[r][h]=p[h]:e._fullLayout._reservedMargin[r][f]=p[f]}function iv(e){return Zt.isRightAnchor(e)?"right":Zt.isCenterAnchor(e)?"center":"left"}function ov(e){return Zt.isBottomAnchor(e)?"bottom":Zt.isMiddleAnchor(e)?"middle":"top"}function lv(e){return e._id||"legend"}});var O2=de(q2=>{"use strict";var Zl=it(),ao=nt(),ET=ka(),It=ir(),xZ=It.pushUnique,N2=It.strTranslate,_Z=It.strRotate,wZ=Mf(),Pa=Wn(),MZ=QM(),Fi=mt(),sn=Xr(),sv=ni(),Ni=Lt(),TZ=_n().zindexSeparator,cu=Cr(),ai=to(),Jl=cf(),AZ=w2(),kZ=F2(),zT=Jl.YANGLE,z2=Math.PI*zT/180,SZ=1/Math.sin(z2),CZ=Math.cos(z2),EZ=Math.sin(z2),St=Jl.HOVERARROWSIZE,Qr=Jl.HOVERTEXTPAD,LT={box:!0,ohlc:!0,violin:!0,candlestick:!0},LZ={scatter:!0,scattergl:!0,splom:!0};function DT(e,r){return e.distance-r.distance}q2.hover=function(r,t,n,a){r=It.getGraphDiv(r);var o=t.target;It.throttle(r._fullLayout._uid+Jl.HOVERID,Jl.HOVERMINTIME,function(){DZ(r,t,n,a,o)})};q2.loneHover=function(r,t){var n=!0;Array.isArray(r)||(n=!1,r=[r]);var a=t.gd,o=HT(a),i=VT(a),l=r.map(function(T){var y=T._x0||T.x0||T.x||0,k=T._x1||T.x1||T.x||0,S=T._y0||T.y0||T.y||0,b=T._y1||T.y1||T.y||0,M=T.eventData;if(M){var d=Math.min(y,k),x=Math.max(y,k),g=Math.min(S,b),c=Math.max(S,b),A=T.trace;if(cu.traceIs(A,"gl3d")){var v=a._fullLayout[A.scene]._scene.container,D=v.offsetLeft,E=v.offsetTop;d+=D,x+=D,g+=E,c+=E}M.bbox={x0:d+i,x1:x+i,y0:g+o,y1:c+o},t.inOut_bbox&&t.inOut_bbox.push(M.bbox)}else M=!1;return{color:T.color||sn.defaultLine,x0:T.x0||T.x||0,x1:T.x1||T.x||0,y0:T.y0||T.y||0,y1:T.y1||T.y||0,xLabel:T.xLabel,yLabel:T.yLabel,zLabel:T.zLabel,text:T.text,name:T.name,idealAlign:T.idealAlign,borderColor:T.borderColor,fontFamily:T.fontFamily,fontSize:T.fontSize,fontColor:T.fontColor,fontWeight:T.fontWeight,fontStyle:T.fontStyle,fontVariant:T.fontVariant,nameLength:T.nameLength,textAlign:T.textAlign,trace:T.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:T.hovertemplate||!1,hovertemplateLabels:T.hovertemplateLabels||!1,eventData:M}}),u=!1,s=OT(l,{gd:a,hovermode:"closest",rotateLabels:u,bgColor:t.bgColor||sn.background,container:Zl.select(t.container),outerContainer:t.outerContainer||t.container}),f=s.hoverLabels,h=5,p=0,_=0;f.sort(function(T,y){return T.y0-y.y0}).each(function(T,y){var k=T.y0-T.by/2;k-hx[0]._length||V<0||V>g[0]._length)return sv.unhoverRaw(e,r)}if(r.pointerX=ee+x[0]._offset,r.pointerY=V+g[0]._offset,"xval"in r?F=ai.flat(o,r.xval):F=ai.p2c(x,ee),"yval"in r?I=ai.flat(o,r.yval):I=ai.p2c(g,V),!ao(F[0])||!ao(I[0]))return It.warn("Fx.hover failed",r,e),sv.unhoverRaw(e,r)}var ve=1/0;function ke(sr,Pr){for(P=0;Pne&&(R.splice(0,ne),ve=R[0].distance),h&&E!==0&&R.length===0){K.distance=E,K.index=!1;var Rr=U._module.hoverPoints(K,Y,q,"closest",{hoverLayer:l._hoverlayer});if(Rr&&(Rr=Rr.filter(function(xt){return xt.spikeDistance<=E})),Rr&&Rr.length){var jr,hn=Rr.filter(function(xt){return xt.xa.showspikes&&xt.xa.spikesnap!=="hovered data"});if(hn.length){var Et=hn[0];ao(Et.x0)&&ao(Et.y0)&&(jr=he(Et),(!Q.vLinePoint||Q.vLinePoint.spikeDistance>jr.spikeDistance)&&(Q.vLinePoint=jr))}var Tn=Rr.filter(function(xt){return xt.ya.showspikes&&xt.ya.spikesnap!=="hovered data"});if(Tn.length){var Ot=Tn[0];ao(Ot.x0)&&ao(Ot.y0)&&(jr=he(Ot),(!Q.hLinePoint||Q.hLinePoint.spikeDistance>jr.spikeDistance)&&(Q.hLinePoint=jr))}}}}}ke();function Se(sr,Pr,$r){for(var Fr=null,Gr=1/0,pt,Rr=0;Rrsr.trace.index===pe.trace.index):R=[pe];var ce=R.length,be=NT("x",pe,l),Le=NT("y",pe,l);ke(be,Le);var qe=[],ze={},$e=0,Ve=function(sr){var Pr=LT[sr.trace.type]?qT(sr):sr.trace.index;if(!ze[Pr])$e++,ze[Pr]=$e,qe.push(sr);else{var $r=ze[Pr]-1,Fr=qe[$r];$r>0&&Math.abs(sr.distance)ce-1;Be--)Ve(R[Be]);R=qe,Ee()}var Ye=e._hoverdata,Me=[],Re=HT(e),Qe=VT(e);for(let sr of R){var Ke=ai.makeEventData(sr,sr.trace,sr.cd);if(sr.hovertemplate!==!1){var ar=!1;sr.cd[sr.index]&&sr.cd[sr.index].ht&&(ar=sr.cd[sr.index].ht),sr.hovertemplate=ar||sr.trace.hovertemplate||!1}if(sr.xa&&sr.ya){var se=sr.x0+sr.xa._offset,J=sr.x1+sr.xa._offset,ae=sr.y0+sr.ya._offset,De=sr.y1+sr.ya._offset,He=Math.min(se,J),er=Math.max(se,J),nr=Math.min(ae,De),fr=Math.max(ae,De);Ke.bbox={x0:He+Qe,x1:er+Qe,y0:nr+Re,y1:fr+Re}}sr.eventData=[Ke],Me.push(Ke)}e._hoverdata=Me;var xr=p==="y"&&(N.length>1||R.length>1)||p==="closest"&&oe&&R.length>1,Sr=sn.combine(l.plot_bgcolor||sn.background,l.paper_bgcolor),Mr=OT(R,{gd:e,hovermode:p,rotateLabels:xr,bgColor:Sr,container:l._hoverlayer,outerContainer:l._paper.node(),commonLabelOpts:l.hoverlabel,hoverdistance:l.hoverdistance}),Ar=Mr.hoverLabels;if(ai.isUnifiedHover(p)||(PZ(Ar,xr,l,Mr.commonLabelBoundingBox),UT(Ar,xr,l._invScaleX,l._invScaleY)),a&&a.tagName){var ft=cu.getComponentMethod("annotations","hasClickToShow")(e,Me);MZ(Zl.select(a),ft?"pointer":"")}!a||n||!NZ(e,r,Ye)||(Ye&&e.emit("plotly_unhover",{event:r,points:Ye}),e.emit("plotly_hover",{event:r,points:e._hoverdata,xaxes:x,yaxes:g,xvals:F,yvals:I}))}function qT(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var RZ=/([\s\S]*)<\/extra>/;function OT(e,r){var t=r.gd,n=t._fullLayout,a=r.hovermode,o=r.rotateLabels,i=r.bgColor,l=r.container,u=r.outerContainer,s=r.commonLabelOpts||{};if(e.length===0)return[[]];var f=r.fontFamily||Jl.HOVERFONT,h=r.fontSize||Jl.HOVERFONTSIZE,p=r.fontWeight||n.font.weight,_=r.fontStyle||n.font.style,m=r.fontVariant||n.font.variant,w=r.fontTextcase||n.font.textcase,T=r.fontLineposition||n.font.lineposition,y=r.fontShadow||n.font.shadow,k=e[0],S=k.xa,b=k.ya,M=a.charAt(0),d=M+"Label",x=k[d];if(x===void 0&&S.type==="multicategory")for(var g=0;gn.width-Re&&(Qe=n.width-Re),pe.attr("d","M"+(Be-Qe)+",0L"+(Be-Qe+St)+","+Me+St+"H"+Re+"v"+Me+(Qr*2+Ve.height)+"H"+-Re+"V"+Me+St+"H"+(Be-Qe-St)+"Z"),Be=Qe,P.minX=Be-Re,P.maxX=Be+Re,S.side==="top"?(P.minY=Ye-(Qr*2+Ve.height),P.maxY=Ye-Qr):(P.minY=Ye+Qr,P.maxY=Ye+(Qr*2+Ve.height))}else{var Ke,ar,se;b.side==="right"?(Ke="start",ar=1,se="",Be=S._offset+S._length):(Ke="end",ar=-1,se="-",Be=S._offset),Ye=b._offset+(k.y0+k.y1)/2,ce.attr("text-anchor",Ke),pe.attr("d","M0,0L"+se+St+","+St+"V"+(Qr+Ve.height/2)+"h"+se+(Qr*2+Ve.width)+"V-"+(Qr+Ve.height/2)+"H"+se+St+"V-"+St+"Z"),P.minY=Ye-(Qr+Ve.height/2),P.maxY=Ye+(Qr+Ve.height/2),b.side==="right"?(P.minX=Be+St,P.maxX=Be+St+(Qr*2+Ve.width)):(P.minX=Be-St-(Qr*2+Ve.width),P.maxX=Be-St);var J=Ve.height/2,ae=A-Ve.top-J,De="clip"+n._uid+"commonlabel"+b._id,He;if(Bepe.hoverinfo!=="none");if(ye.length===0)return[];var O=n.hoverlabel,U=O.font,X=ye[0],$=((a==="x unified"?X.xa:X.ya).unifiedhovertitle||{}).text,j=$?It.hovertemplateString({data:a==="x unified"?[{xa:X.xa,x:X.xVal}]:[{ya:X.ya,y:X.yVal}],fallback:X.trace.hovertemplatefallback,locale:n._d3locale,template:$}):x,Y={showlegend:!0,legend:{title:{text:j,font:U},font:U,bgcolor:O.bgcolor,bordercolor:O.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:n.legend?n.legend.traceorder:void 0,orientation:"v"}},q={font:U};AZ(Y,q,t._fullData);var K=q.legend;K.entries=[];for(var ne=0;ne=0?we=Ee:Ne+ue=0?we=Ne:Ue+ue=0?Te=Ce:Pe+ve=0?Te=Pe:ge+ve=0,(ye.idealAlign==="top"||!fr)&&xr?(se-=ae/2,ye.anchor="end"):fr?(se+=ae/2,ye.anchor="start"):ye.anchor="middle",ye.crossPos=se;else{if(ye.pos=se,fr=ar+J/2+nr<=v,xr=ar-J/2-nr>=0,(ye.idealAlign==="left"||!fr)&&xr)ar-=J/2,ye.anchor="end";else if(fr)ar+=J/2,ye.anchor="start";else{ye.anchor="middle";var Sr=nr/2,Mr=ar+Sr-v,Ar=ar-Sr;Mr>0&&(ar-=Mr),Ar<0&&(ar+=-Ar)}ye.crossPos=ar}Ye.attr("text-anchor",ye.anchor),Re&&Me.attr("text-anchor",ye.anchor),pe.attr("transform",N2(ar,se)+(o?_Z(zT):""))}),{hoverLabels:me,commonLabelBoundingBox:P}}function RT(e,r,t,n,a,o){var h,p;var i="",l="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=It.templateString(e.name,e.trace._meta)),i=FT(e.name,e.nameLength));var u=t.charAt(0),s=u==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(l+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(l+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(l+=(l?"z: ":"")+e.zLabel)):r&&e[u+"Label"]===a?l=e[s+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(l=e.yLabel):e.yLabel===void 0?l=e.xLabel:l="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(l+=(l?"
":"")+e.text),e.extraText!==void 0&&(l+=(l?"
":"")+e.extraText),o&&l===""&&!e.hovertemplate&&(i===""&&o.remove(),l=i),(p=(h=e.trace)==null?void 0:h.hoverlabel)!=null&&p.split&&(e.hovertemplate="");let{hovertemplate:f=!1}=e;if(f){let _=e.hovertemplateLabels||e;e[u+"Label"]!==a&&(_[u+"other"]=_[u+"Val"],_[u+"otherLabel"]=_[u+"Label"]),l=It.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:_,locale:n._d3locale,template:f}),l=l.replace(RZ,(m,w)=>(i=FT(w,e.nameLength),""))}return[l,i]}function PZ(e,r,t,n){var a=r?"xa":"ya",o=r?"ya":"xa",i=0,l=1,u=e.size(),s=new Array(u),f=0,h=n.minX,p=n.maxX,_=n.minY,m=n.maxY,w=function(F){return F*t._invScaleX},T=function(F){return F*t._invScaleY};e.each(function(F){var I=F[a],L=F[o],P=I._id.charAt(0)==="x",O=I.range;f===0&&O&&O[0]>O[1]!==P&&(l=-1);var U=0,X=P?t.width:t.height;if(t.hovermode==="x"||t.hovermode==="y"){var $=BT(F,r),j=F.anchor,Y=j==="end"?-1:1,q,K;if(j==="middle")q=F.crossPos+(P?T($.y-F.by/2):w(F.bx/2+F.tx2width/2)),K=q+(P?T(F.by):w(F.bx));else if(P)q=F.crossPos+T(St+$.y)-T(F.by/2-St),K=q+T(F.by);else{var ne=w(Y*St+$.x),Q=ne+w(Y*F.bx);q=F.crossPos+Math.min(ne,Q),K=F.crossPos+Math.max(ne,Q)}P?_!==void 0&&m!==void 0&&Math.min(K,m)-Math.max(q,_)>1&&(L.side==="left"?(U=L._mainLinePosition,X=t.width):X=L._mainLinePosition):h!==void 0&&p!==void 0&&Math.min(K,p)-Math.max(q,h)>1&&(L.side==="top"?(U=L._mainLinePosition,X=t.height):X=L._mainLinePosition)}s[f++]=[{datum:F,traceIndex:F.trace.index,dp:0,pos:F.pos,posref:F.posref,size:F.by*(P?SZ:1)/2,pmin:U,pmax:X}]}),s.sort(function(F,I){return F[0].posref-I[0].posref||l*(I[0].traceIndex-F[0].traceIndex)});var y,k,S,b,M,d,x;function g(F){var I=F[0],L=F[F.length-1];if(k=I.pmin-I.pos-I.dp+I.size,S=L.pos+L.dp+L.size-I.pmax,k>.01){for(M=F.length-1;M>=0;M--)F[M].dp+=k;y=!1}if(!(S<.01)){if(k<-.01){for(M=F.length-1;M>=0;M--)F[M].dp-=S;y=!1}if(y){var P=0;for(b=0;bI.pmax&&P++;for(b=F.length-1;b>=0&&!(P<=0);b--)d=F[b],d.pos>I.pmax-1&&(d.del=!0,P--);for(b=0;b=0;M--)F[M].dp-=S;for(b=F.length-1;b>=0&&!(P<=0);b--)d=F[b],d.pos+d.dp+d.size>I.pmax&&(d.del=!0,P--)}}}for(;!y&&i<=u;){for(i++,y=!0,b=0;b.01){for(M=A.length-1;M>=0;M--)A[M].dp+=k;for(c.push.apply(c,A),s.splice(b+1,1),x=0,M=c.length-1;M>=0;M--)x+=c[M].dp;for(S=x/c.length,M=c.length-1;M>=0;M--)c[M].dp-=S;y=!1}else b++}s.forEach(g)}for(b=s.length-1;b>=0;b--){var E=s[b];for(M=E.length-1;M>=0;M--){var R=E[M],N=R.datum;N.offset=R.dp,N.del=R.del}}}function BT(e,r){var t=0,n=e.offset;return r&&(n*=-EZ,t=e.offset*CZ),{x:t,y:n}}function IZ(e){var r={start:1,end:-1,middle:0}[e.anchor],t=r*(St+Qr),n=t+r*(e.txwidth+Qr),a=e.anchor==="middle";return a&&(t-=e.tx2width/2,n+=e.txwidth/2+Qr),{alignShift:r,textShiftX:t,text2ShiftX:n}}function UT(e,r,t,n){var a=function(i){return i*t},o=function(i){return i*n};e.each(function(i){var l=Zl.select(this);if(i.del)return l.remove();var u=l.select("text.nums"),s=i.anchor,f=s==="end"?-1:1,h=IZ(i),p=BT(i,r),_=p.x,m=p.y,w=s==="middle",T="hoverlabel"in i.trace?i.trace.hoverlabel.showarrow:!0,y;w?y="M-"+a(i.bx/2+i.tx2width/2)+","+o(m-i.by/2)+"h"+a(i.bx)+"v"+o(i.by)+"h-"+a(i.bx)+"Z":T?y="M0,0L"+a(f*St+_)+","+o(St+m)+"v"+o(i.by/2-St)+"h"+a(f*i.bx)+"v-"+o(i.by)+"H"+a(f*St+_)+"V"+o(m-St)+"Z":y="M"+a(f*St+_)+","+o(m-i.by/2)+"h"+a(f*i.bx)+"v"+o(i.by)+"h"+a(-f*i.bx)+"Z",l.select("path").attr("d",y);var k=_+h.textShiftX,S=m+i.ty0-i.by/2+Qr,b=i.textAlign||"auto";b!=="auto"&&(b==="left"&&s!=="start"?(u.attr("text-anchor","start"),k=w?-i.bx/2-i.tx2width/2+Qr:-i.bx-Qr):b==="right"&&s!=="end"&&(u.attr("text-anchor","end"),k=w?i.bx/2-i.tx2width/2-Qr:i.bx+Qr)),u.call(Pa.positionText,a(k),o(S)),i.tx2width&&(l.select("text.name").call(Pa.positionText,a(h.text2ShiftX+h.alignShift*Qr+_),o(m+i.ty0-i.by/2+Qr)),l.select("rect").call(Fi.setRect,a(h.text2ShiftX+(h.alignShift-1)*i.tx2width/2+_),o(m-i.by/2-1),a(i.tx2width),o(i.by+2)))})}function FZ(e,r){var t=e.index,n=e.trace||{},a=e.cd[0],o=e.cd[t]||{};function i(p){return p||ao(p)&&p===0}var l=Array.isArray(t)?function(p,_){var m=It.castOption(a,t,p);return i(m)?m:It.extractOption({},n,"",_)}:function(p,_){return It.extractOption(o,n,p,_)};function u(p,_,m){var w=l(_,m);i(w)&&(e[p]=w)}if(u("hoverinfo","hi","hoverinfo"),u("bgcolor","hbg","hoverlabel.bgcolor"),u("borderColor","hbc","hoverlabel.bordercolor"),u("fontFamily","htf","hoverlabel.font.family"),u("fontSize","hts","hoverlabel.font.size"),u("fontColor","htc","hoverlabel.font.color"),u("fontWeight","htw","hoverlabel.font.weight"),u("fontStyle","hty","hoverlabel.font.style"),u("fontVariant","htv","hoverlabel.font.variant"),u("nameLength","hnl","hoverlabel.namelength"),u("textAlign","hta","hoverlabel.align"),e.posref=r==="y"||r==="closest"&&n.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=It.constrain(e.x0,0,e.xa._length),e.x1=It.constrain(e.x1,0,e.xa._length),e.y0=It.constrain(e.y0,0,e.ya._length),e.y1=It.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:Ni.hoverLabelText(e.xa,e.xLabelVal,n.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:Ni.hoverLabelText(e.ya,e.yLabelVal,n.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var s=Ni.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+s+" / -"+Ni.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+s,r==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var f=Ni.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+f+" / -"+Ni.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+f,r==="y"&&(e.distance+=1)}var h=e.hoverinfo||e.trace.hoverinfo;return h&&h!=="all"&&(h=Array.isArray(h)?h:h.split("+"),h.indexOf("x")===-1&&(e.xLabel=void 0),h.indexOf("y")===-1&&(e.yLabel=void 0),h.indexOf("z")===-1&&(e.zLabel=void 0),h.indexOf("text")===-1&&(e.text=void 0),h.indexOf("name")===-1&&(e.name=void 0)),e}function PT(e,r,t){var n=t.container,a=t.fullLayout,o=a._size,i=t.event,l=!!r.hLinePoint,u=!!r.vLinePoint,s,f;if(n.selectAll(".spikeline").remove(),!!(u||l)){var h=sn.combine(a.plot_bgcolor,a.paper_bgcolor);if(l){var p=r.hLinePoint,_,m;s=p&&p.xa,f=p&&p.ya;var w=f.spikesnap;w==="cursor"?(_=i.pointerX,m=i.pointerY):(_=s._offset+p.x,m=f._offset+p.y);var T=ET.readability(p.color,h)<1.5?sn.contrast(h):p.color,y=f.spikemode,k=f.spikethickness,S=f.spikecolor||T,b=Ni.getPxPosition(e,f),M,d;if(y.indexOf("toaxis")!==-1||y.indexOf("across")!==-1){if(y.indexOf("toaxis")!==-1&&(M=b,d=_),y.indexOf("across")!==-1){var x=f._counterDomainMin,g=f._counterDomainMax;f.anchor==="free"&&(x=Math.min(x,f.position),g=Math.max(g,f.position)),M=o.l+x*o.w,d=o.l+g*o.w}n.insert("line",":first-child").attr({x1:M,x2:d,y1:m,y2:m,"stroke-width":k,stroke:S,"stroke-dasharray":Fi.dashStyle(f.spikedash,k)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:M,x2:d,y1:m,y2:m,"stroke-width":k+2,stroke:h}).classed("spikeline",!0).classed("crisp",!0)}y.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:b+(f.side!=="right"?k:-k),cy:m,r:k,fill:S}).classed("spikeline",!0)}if(u){var c=r.vLinePoint,A,v;s=c&&c.xa,f=c&&c.ya;var D=s.spikesnap;D==="cursor"?(A=i.pointerX,v=i.pointerY):(A=s._offset+c.x,v=f._offset+c.y);var E=ET.readability(c.color,h)<1.5?sn.contrast(h):c.color,R=s.spikemode,N=s.spikethickness,F=s.spikecolor||E,I=Ni.getPxPosition(e,s),L,P;if(R.indexOf("toaxis")!==-1||R.indexOf("across")!==-1){if(R.indexOf("toaxis")!==-1&&(L=I,P=v),R.indexOf("across")!==-1){var O=s._counterDomainMin,U=s._counterDomainMax;s.anchor==="free"&&(O=Math.min(O,s.position),U=Math.max(U,s.position)),L=o.t+(1-U)*o.h,P=o.t+(1-O)*o.h}n.insert("line",":first-child").attr({x1:A,x2:A,y1:L,y2:P,"stroke-width":N,stroke:F,"stroke-dasharray":Fi.dashStyle(s.spikedash,N)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:A,x2:A,y1:L,y2:P,"stroke-width":N+2,stroke:h}).classed("spikeline",!0).classed("crisp",!0)}R.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:A,cy:I-(s.side!=="top"?N:-N),r:N,fill:F}).classed("spikeline",!0)}}}function NZ(e,r,t){if(!t||t.length!==e._hoverdata.length)return!0;for(var n=t.length-1;n>=0;n--){var a=t[n],o=e._hoverdata[n];if(a.curveNumber!==o.curveNumber||String(a.pointNumber)!==String(o.pointNumber)||String(a.pointNumbers)!==String(o.pointNumbers)||a.binNumber!==o.binNumber)return!0}return!1}function IT(e,r){return!r||r.vLinePoint!==e._spikepoints.vLinePoint||r.hLinePoint!==e._spikepoints.hLinePoint}function FT(e,r){return Pa.plainText(e||"",{len:r,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function zZ(e,r){for(var t=r.charAt(0),n=[],a=[],o=[],i=0;ie.offsetTop+e.clientTop,VT=e=>e.offsetLeft+e.clientLeft;function fu(e,r){var t=e._fullLayout,n=r.getBoundingClientRect(),a=n.left,o=n.top,i=a+n.width,l=o+n.height,u=It.apply3DTransform(t._invTransform)(a,o),s=It.apply3DTransform(t._invTransform)(i,l),f=u[0],h=u[1],p=s[0],_=s[1];return{x:f,y:h,width:p-f,height:_-h,top:Math.min(h,_),left:Math.min(f,p),right:Math.max(f,p),bottom:Math.max(h,_)}}});var uv=de((she,GT)=>{"use strict";var qZ=ir(),OZ=Xr(),BZ=to().isUnifiedHover;GT.exports=function(r,t,n,a){a=a||{};var o=t.legend;function i(l){a.font[l]||(a.font[l]=o?t.legend.font[l]:t.font[l])}t&&BZ(t.hovermode)&&(a.font||(a.font={}),i("size"),i("family"),i("color"),i("weight"),i("style"),i("variant"),o?(a.bgcolor||(a.bgcolor=OZ.combine(t.legend.bgcolor,t.paper_bgcolor)),a.bordercolor||(a.bordercolor=t.legend.bordercolor)):a.bgcolor||(a.bgcolor=t.paper_bgcolor)),n("hoverlabel.bgcolor",a.bgcolor),n("hoverlabel.bordercolor",a.bordercolor),n("hoverlabel.namelength",a.namelength),n("hoverlabel.showarrow",a.showarrow),qZ.coerceFont(n,"hoverlabel.font",a.font),n("hoverlabel.align",a.align)}});var WT=de((uhe,YT)=>{"use strict";var UZ=ir(),HZ=uv(),VZ=wl();YT.exports=function(r,t){function n(a,o){return UZ.coerce(r,t,VZ,a,o)}HZ(r,t,n)}});var JT=de((fhe,ZT)=>{"use strict";var XT=ir(),GZ=Pc(),YZ=uv();ZT.exports=function(r,t,n,a){function o(l,u){return XT.coerce(r,t,GZ,l,u)}var i=XT.extendFlat({},a.hoverlabel);t.hovertemplate&&(i.namelength=-1),YZ(r,t,o,i)}});var B2=de((che,KT)=>{"use strict";var WZ=ir(),XZ=wl();KT.exports=function(r,t){function n(a,o){return t[a]!==void 0?t[a]:WZ.coerce(r,t,XZ,a,o)}return n("clickmode"),n("hoversubplots"),n("hovermode")}});var jT=de((hhe,$T)=>{"use strict";var QT=ir(),ZZ=wl(),JZ=B2(),KZ=uv();$T.exports=function(r,t){function n(f,h){return QT.coerce(r,t,ZZ,f,h)}var a=JZ(r,t);a&&(n("hoverdistance"),n("spikedistance"));var o=n("dragmode");o==="select"&&n("selectdirection");var i=t._has("mapbox"),l=t._has("map"),u=t._has("geo"),s=t._basePlotModules.length;t.dragmode==="zoom"&&((i||l||u)&&s===1||(i||l)&&u&&s===2)&&(t.dragmode="pan"),KZ(r,t,n),QT.coerceFont(n,"hoverlabel.grouptitlefont",t.hoverlabel.font)}});var t9=de((vhe,r9)=>{"use strict";var U2=ir(),e9=Cr();r9.exports=function(r){var t=r.calcdata,n=r._fullLayout;function a(s){return function(f){return U2.coerceHoverinfo({hoverinfo:f},{_module:s._module},n)}}for(var o=0;o{"use strict";var $Z=Cr(),jZ=O2().hover;n9.exports=function(r,t,n){var a=$Z.getComponentMethod("annotations","onClick")(r,r._hoverdata);n!==void 0&&jZ(r,t,n,!0);function o(){r.emit("plotly_click",{points:r._hoverdata,event:t})}r._hoverdata&&t&&t.target&&(a&&a.then?a.then(o):o(),t.stopImmediatePropagation&&t.stopImmediatePropagation())}});var io=de((phe,l9)=>{"use strict";var eJ=it(),fv=ir(),rJ=ni(),Hf=to(),i9=wl(),o9=O2();l9.exports={moduleType:"component",name:"fx",constants:cf(),schema:{layout:i9},attributes:Pc(),layoutAttributes:i9,supplyLayoutGlobalDefaults:WT(),supplyDefaults:JT(),supplyLayoutDefaults:jT(),calc:t9(),getDistanceFunction:Hf.getDistanceFunction,getClosest:Hf.getClosest,inbox:Hf.inbox,quadrature:Hf.quadrature,appendArrayPointValue:Hf.appendArrayPointValue,castHoverOption:nJ,castHoverinfo:aJ,hover:o9.hover,unhover:rJ.unhover,loneHover:o9.loneHover,loneUnhover:tJ,click:a9()};function tJ(e){var r=fv.isD3Selection(e)?e:eJ.select(e);r.selectAll("g.hovertext").remove(),r.selectAll(".spikeline").remove()}function nJ(e,r,t){return fv.castOption(e,r,"hoverlabel."+t)}function aJ(e,r,t){function n(a){return fv.coerceHoverinfo({hoverinfo:a},{_module:e._module},r)}return fv.castOption(e,t,"hoverinfo",n)}});var hu=de(oo=>{"use strict";oo.selectMode=function(e){return e==="lasso"||e==="select"};oo.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};oo.openMode=function(e){return e==="drawline"||e==="drawopenpath"};oo.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};oo.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};oo.selectingOrDrawing=function(e){return oo.freeMode(e)||oo.rectMode(e)}});var cv=de((yhe,s9)=>{"use strict";s9.exports=function(r){var t=r._fullLayout;t._glcanvas&&t._glcanvas.size()&&t._glcanvas.each(function(n){n.regl&&n.regl.clear({color:!0,depth:!0})})}});var hv=de((mhe,u9)=>{"use strict";u9.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var dv=de((bhe,f9)=>{"use strict";var vv=32;f9.exports={CIRCLE_SIDES:vv,i000:0,i090:vv/4,i180:vv/2,i270:vv/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var pv=de((xhe,h9)=>{"use strict";var iJ=ir().strTranslate;function c9(e,r){switch(e.type){case"log":return e.p2d(r);case"date":return e.p2r(r,0,e.calendar);default:return e.p2r(r)}}function oJ(e,r){switch(e.type){case"log":return e.d2p(r);case"date":return e.r2p(r,0,e.calendar);default:return e.r2p(r)}}function lJ(e){var r=e._id.charAt(0)==="y"?1:0;return function(t){return c9(e,t[r])}}function sJ(e){return iJ(e.xaxis._offset,e.yaxis._offset)}h9.exports={p2r:c9,r2p:oJ,axValue:lJ,getTransform:sJ}});var Go=de(lo=>{"use strict";var uJ=Eg(),p9=dv(),vu=p9.CIRCLE_SIDES,H2=p9.SQRT2,g9=pv(),v9=g9.p2r,d9=g9.r2p,fJ=[0,3,4,5,6,1,2],cJ=[0,3,4,1,2];lo.writePaths=function(e){var r=e.length;if(!r)return"M0,0Z";for(var t="",n=0;n0&&u{"use strict";var y9=jt(),w9=hu(),hJ=w9.drawMode,vJ=w9.openMode,du=dv(),m9=du.i000,b9=du.i090,x9=du.i180,_9=du.i270,dJ=du.cos45,pJ=du.sin45,M9=pv(),yv=M9.p2r,Yo=M9.r2p,gJ=Io(),yJ=gJ.clearOutline,mv=Go(),mJ=mv.readPaths,bJ=mv.writePaths,xJ=mv.ellipseOver,_J=mv.fixDatesForPaths;function wJ(e,r){if(e.length){var t=e[0][0];if(t){var n=r.gd,a=r.isActiveShape,o=r.dragmode,i=(n.layout||{}).shapes||[];if(!hJ(o)&&a!==void 0){var l=n._fullLayout._activeShapeIndex;if(l{"use strict";var MJ=hu(),TJ=MJ.selectMode,AJ=Io(),kJ=AJ.clearOutline,V2=Go(),SJ=V2.readPaths,CJ=V2.writePaths,EJ=V2.fixDatesForPaths;k9.exports=function(r,t){if(r.length){var n=r[0][0];if(n){var a=n.getAttribute("d"),o=t.gd,i=o._fullLayout.newselection,l=t.plotinfo,u=l.xaxis,s=l.yaxis,f=t.isActiveSelection,h=t.dragmode,p=(o.layout||{}).selections||[];if(!TJ(h)&&f!==void 0){var _=o._fullLayout._activeSelectionIndex;if(_{"use strict";S9.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var Wo=de(dn=>{"use strict";var Kl=Gf(),C9=ir(),xv=Lt();dn.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(r){return r}};dn.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(r){return r}};dn.decodeDate=function(e){return function(r){return r.replace&&(r=r.replace("_"," ")),e(r)}};dn.encodeDate=function(e){return function(r){return e(r).replace(" ","_")}};dn.extractPathCoords=function(e,r,t){var n=[],a=e.match(Kl.segmentRE);return a.forEach(function(o){var i=r[o.charAt(0)].drawn;if(i!==void 0){var l=o.substr(1).match(Kl.paramRE);if(!(!l||l.length_&&(w="X"),w});return s>_&&(m=m.replace(/[\s,]*X.*/,""),C9.log("Ignoring extra params in segment "+u)),f+m})}function Yf(e,r){r=r||0;var t=0;return r&&e&&(e.type==="category"||e.type==="multicategory")&&(t=(e.r2p(1)-e.r2p(0))*r),t}});var W2=de((khe,R9)=>{"use strict";var DJ=ir(),pu=Lt(),E9=Wn(),L9=mt(),RJ=Go().readPaths,Y2=Wo(),PJ=Y2.getPathString,D9=Hc(),IJ=qn().FROM_TL;R9.exports=function(r,t,n,a){if(a.selectAll(".shape-label").remove(),!!(n.label.text||n.label.texttemplate)){var o;if(n.label.texttemplate){var i={};if(n.type!=="path"){var l=pu.getFromId(r,n.xref),u=pu.getFromId(r,n.yref);for(var s in D9){var f=D9[s](n,l,u);f!==void 0&&(i[s]=f)}}o=DJ.texttemplateStringForShapes({data:[i],fallback:n.label.texttemplatefallback,locale:r._fullLayout._d3locale,template:n.label.texttemplate})}else o=n.label.text;var h={"data-index":t},p=n.label.font,_={"data-notex":1},m=a.append("g").attr(h).classed("shape-label",!0),w=m.append("text").attr(_).classed("shape-label-text",!0).text(o),T,y,k,S;if(n.path){var b=PJ(r,n),M=RJ(b,r);T=1/0,k=1/0,y=-1/0,S=-1/0;for(var d=0;d=e?a=r-n:a=n-r,-180/Math.PI*Math.atan2(a,o)}function NJ(e,r,t,n,a,o,i){var l=a.label.textposition,u=a.label.textangle,s=a.label.padding,f=a.type,h=Math.PI/180*o,p=Math.sin(h),_=Math.cos(h),m=a.label.xanchor,w=a.label.yanchor,T,y,k,S;if(f==="line"){l==="start"?(T=e,y=r):l==="end"?(T=t,y=n):(T=(e+t)/2,y=(r+n)/2),m==="auto"&&(l==="start"?u==="auto"?t>e?m="left":te?m="right":te?m="right":te?m="left":t{"use strict";var zJ=ir(),qJ=zJ.strTranslate,P9=ni(),N9=hu(),OJ=N9.drawMode,z9=N9.selectMode,q9=Cr(),I9=Xr(),wv=dv(),BJ=wv.i000,UJ=wv.i090,HJ=wv.i180,VJ=wv.i270,GJ=Io(),O9=GJ.clearOutlineControllers,Z2=Go(),_v=Z2.pointsOnRectangle,X2=Z2.pointsOnEllipse,YJ=Z2.writePaths,WJ=bv().newShapes,XJ=bv().createShapeObj,ZJ=G2(),JJ=W2();B9.exports=function e(r,t,n,a){a||(a=0);var o=n.gd;function i(){e(r,t,n,a++),(X2(r[0])||n.hasText)&&l({redrawing:!0})}function l(I){var L={};n.isActiveShape!==void 0&&(n.isActiveShape=!1,L=WJ(t,n)),n.isActiveSelection!==void 0&&(n.isActiveSelection=!1,L=ZJ(t,n),o._fullLayout._reselect=!0),Object.keys(L).length&&q9.call((I||{}).redrawing?"relayout":"_guiRelayout",o,L)}var u=o._fullLayout,s=u._zoomlayer,f=n.dragmode,h=OJ(f),p=z9(f);(h||p)&&(o._fullLayout._outlining=!0),O9(o),t.attr("d",YJ(r));var _,m,w,T,y;if(!a&&(n.isActiveShape||n.isActiveSelection)){y=KJ([],r);var k=s.append("g").attr("class","outline-controllers");A(k),F()}if(h&&n.hasText){var S=s.select(".label-temp"),b=XJ(t,n,n.dragmode);JJ(o,"label-temp",b,S)}function M(I){w=+I.srcElement.getAttribute("data-i"),T=+I.srcElement.getAttribute("data-j"),_[w][T].moveFn=d}function d(I,L){if(r.length){var P=y[w][T][1],O=y[w][T][2],U=r[w],X=U.length;if(_v(U)){var $=I,j=L;if(n.isActiveSelection){var Y=F9(U,T);Y[1]===U[T][1]?j=0:$=0}for(var q=0;q1&&!(I.length===2&&I[1][0]==="Z")&&(T===0&&(I[0][0]="M"),r[w]=I,i(),l())}}function c(I,L){if(I===2){w=+L.srcElement.getAttribute("data-i"),T=+L.srcElement.getAttribute("data-j");var P=r[w];!_v(P)&&!X2(P)&&g()}}function A(I){_=[];for(var L=0;L{"use strict";var $J=it(),W9=Cr(),U9=ir(),gu=Lt(),jJ=Go().readPaths,eK=Mv(),Av=W2(),X9=Io().clearOutlineControllers,J2=Xr(),Q2=mt(),rK=yt().arrayEditor,H9=ni(),V9=Vo(),Ql=Gf(),sa=Wo(),K2=sa.getPathString;K9.exports={draw:$2,drawOne:Z9,eraseActiveShape:aK,drawLabel:Av};function $2(e){var r=e._fullLayout;r._shapeUpperLayer.selectAll("path").remove(),r._shapeLowerLayer.selectAll("path").remove(),r._shapeUpperLayer.selectAll("text").remove(),r._shapeLowerLayer.selectAll("text").remove();for(var t in r._plots){var n=r._plots[t].shapelayer;n&&(n.selectAll("path").remove(),n.selectAll("text").remove())}for(var a=0;ai&&Ce>l&&!Se.shiftKey?H9.getCursor(Pe/Ae,1-Ee/Ce):"move";V9(r,Ne),K=Ne.split("-")[0]}}function re(Se){Tv(e)||(u&&(y=U(t.xanchor)),s&&(k=X(t.yanchor)),t.type==="path"?v=t.path:(_=u?t.x0:U(t.x0),m=s?t.y0:X(t.y0),w=u?t.x1:U(t.x1),T=s?t.y1:X(t.y1)),_T?(S=m,x="y0",b=T,g="y1"):(S=T,x="y1",b=m,g="y0"),oe(Se),ue(a,t),ke(r,t,e),q.moveFn=K==="move"?V:te,q.altKey=Se.altKey)}function H(){Tv(e)||(V9(r),ve(a),J9(r,e,t),W9.call("_guiRelayout",e,o.getUpdateObj()))}function ee(){Tv(e)||ve(a)}function V(Se,he){if(t.type==="path"){var Ae=function(Ee){return Ee},Ce=Ae,Pe=Ae;u?p("xanchor",t.xanchor=$(y+Se)):(Ce=function(Ne){return $(U(Ne)+Se)},E&&E.type==="date"&&(Ce=sa.encodeDate(Ce))),s?p("yanchor",t.yanchor=j(k+he)):(Pe=function(Ne){return j(X(Ne)+he)},N&&N.type==="date"&&(Pe=sa.encodeDate(Pe))),p("path",t.path=G9(v,Ce,Pe))}else u?p("xanchor",t.xanchor=$(y+Se)):(p("x0",t.x0=$(_+Se)),p("x1",t.x1=$(w+Se))),s?p("yanchor",t.yanchor=j(k+he)):(p("y0",t.y0=j(m+he)),p("y1",t.y1=j(T+he)));r.attr("d",K2(e,t)),ue(a,t),Av(e,n,t,D)}function te(Se,he){if(h){var Ae=function(ze){return ze},Ce=Ae,Pe=Ae;u?p("xanchor",t.xanchor=$(y+Se)):(Ce=function($e){return $(U($e)+Se)},E&&E.type==="date"&&(Ce=sa.encodeDate(Ce))),s?p("yanchor",t.yanchor=j(k+he)):(Pe=function($e){return j(X($e)+he)},N&&N.type==="date"&&(Pe=sa.encodeDate(Pe))),p("path",t.path=G9(v,Ce,Pe))}else if(f){if(K==="resize-over-start-point"){var Ee=_+Se,Ne=s?m-he:m+he;p("x0",t.x0=u?Ee:$(Ee)),p("y0",t.y0=s?Ne:j(Ne))}else if(K==="resize-over-end-point"){var Ue=w+Se,ge=s?T-he:T+he;p("x1",t.x1=u?Ue:$(Ue)),p("y1",t.y1=s?ge:j(ge))}}else{var we=function(ze){return K.indexOf(ze)!==-1},Te=we("n"),me=we("s"),ye=we("w"),pe=we("e"),ce=Te?S+he:S,be=me?b+he:b,Le=ye?M+Se:M,qe=pe?d+Se:d;s&&(Te&&(ce=S-he),me&&(be=b-he)),(!s&&be-ce>l||s&&ce-be>l)&&(p(x,t[x]=s?ce:j(ce)),p(g,t[g]=s?be:j(be))),qe-Le>i&&(p(c,t[c]=u?Le:$(Le)),p(A,t[A]=u?qe:$(qe)))}r.attr("d",K2(e,t)),ue(a,t),Av(e,n,t,D)}function ue(Se,he){(u||s)&&Ae();function Ae(){var Ce=he.type!=="path",Pe=Se.selectAll(".visual-cue").data([0]),Ee=1;Pe.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":Ee}).classed("visual-cue",!0);var Ne=U(u?he.xanchor:U9.midRange(Ce?[he.x0,he.x1]:sa.extractPathCoords(he.path,Ql.paramIsX))),Ue=X(s?he.yanchor:U9.midRange(Ce?[he.y0,he.y1]:sa.extractPathCoords(he.path,Ql.paramIsY)));if(Ne=sa.roundPositionForSharpStrokeRendering(Ne,Ee),Ue=sa.roundPositionForSharpStrokeRendering(Ue,Ee),u&&s){var ge="M"+(Ne-1-Ee)+","+(Ue-1-Ee)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Pe.attr("d",ge)}else if(u){var we="M"+(Ne-1-Ee)+","+(Ue-9-Ee)+"v18 h2 v-18 Z";Pe.attr("d",we)}else{var Te="M"+(Ne-9-Ee)+","+(Ue-1-Ee)+"h18 v2 h-18 Z";Pe.attr("d",Te)}}}function ve(Se){Se.selectAll(".visual-cue").remove()}function ke(Se,he,Ae){var Ce=he.xref,Pe=he.yref,Ee=gu.getFromId(Ae,Ce),Ne=gu.getFromId(Ae,Pe),Ue="";Ce!=="paper"&&!Ee.autorange&&(Ue+=Ce),Pe!=="paper"&&!Ne.autorange&&(Ue+=Pe),Q2.setClipUrl(Se,Ue?"clip"+Ae._fullLayout._uid+Ue:null,Ae)}}function G9(e,r,t){return e.replace(Ql.segmentRE,function(n){var a=0,o=n.charAt(0),i=Ql.paramIsX[o],l=Ql.paramIsY[o],u=Ql.numParams[o],s=n.substr(1).replace(Ql.paramRE,function(f){return a>=u||(i[a]?f=r(f):l[a]&&(f=t(f)),a++),f});return o+s})}function nK(e,r){if(kv(e)){var t=r.node(),n=+t.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeShapeIndex){Y9(e);return}e._fullLayout._activeShapeIndex=n,e._fullLayout._deactivateShape=Y9,$2(e)}}}function Y9(e){if(kv(e)){var r=e._fullLayout._activeShapeIndex;r>=0&&(X9(e),delete e._fullLayout._activeShapeIndex,$2(e))}}function aK(e){if(kv(e)){X9(e);var r=e._fullLayout._activeShapeIndex,t=(e.layout||{}).shapes||[];if(r{"use strict";var Ia=Cr(),Q9=on(),$9=jt(),rt=hv(),iK=Sv().eraseActiveShape,Cv=ir(),Jr=Cv._,tt=iA.exports={};tt.toImage={name:"toImage",title:function(e){var r=e._context.toImageButtonOptions||{},t=r.format||"png";return t==="png"?Jr(e,"Download plot as a PNG"):Jr(e,"Download plot")},icon:rt.camera,click:function(e){var r=e._context.toImageButtonOptions,t={format:r.format||"png"};Cv.notifier(Jr(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(n){n in r&&(t[n]=r[n])}),Ia.call("downloadImage",e,t).then(function(n){Cv.notifier(Jr(e,"Snapshot succeeded")+" - "+n,"long")}).catch(function(){Cv.notifier(Jr(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};tt.sendDataToCloud={name:"sendDataToCloud",title:function(e){return Jr(e,"Edit in Chart Studio")},icon:rt.disk,click:function(e){Q9.sendDataToCloud(e)}};tt.editInChartStudio={name:"editInChartStudio",title:function(e){return Jr(e,"Edit in Chart Studio")},icon:rt.pencil,click:function(e){Q9.sendDataToCloud(e)}};tt.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return Jr(e,"Zoom")},attr:"dragmode",val:"zoom",icon:rt.zoombox,click:Un};tt.pan2d={name:"pan2d",_cat:"pan",title:function(e){return Jr(e,"Pan")},attr:"dragmode",val:"pan",icon:rt.pan,click:Un};tt.select2d={name:"select2d",_cat:"select",title:function(e){return Jr(e,"Box Select")},attr:"dragmode",val:"select",icon:rt.selectbox,click:Un};tt.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return Jr(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:rt.lasso,click:Un};tt.drawclosedpath={name:"drawclosedpath",title:function(e){return Jr(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:rt.drawclosedpath,click:Un};tt.drawopenpath={name:"drawopenpath",title:function(e){return Jr(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:rt.drawopenpath,click:Un};tt.drawline={name:"drawline",title:function(e){return Jr(e,"Draw line")},attr:"dragmode",val:"drawline",icon:rt.drawline,click:Un};tt.drawrect={name:"drawrect",title:function(e){return Jr(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:rt.drawrect,click:Un};tt.drawcircle={name:"drawcircle",title:function(e){return Jr(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:rt.drawcircle,click:Un};tt.eraseshape={name:"eraseshape",title:function(e){return Jr(e,"Erase active shape")},icon:rt.eraseshape,click:iK};tt.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return Jr(e,"Zoom in")},attr:"zoom",val:"in",icon:rt.zoom_plus,click:Un};tt.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return Jr(e,"Zoom out")},attr:"zoom",val:"out",icon:rt.zoom_minus,click:Un};tt.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return Jr(e,"Autoscale")},attr:"zoom",val:"auto",icon:rt.autoscale,click:Un};tt.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return Jr(e,"Reset axes")},attr:"zoom",val:"reset",icon:rt.home,click:Un};tt.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return Jr(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:rt.tooltip_basic,gravity:"ne",click:Un};tt.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return Jr(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:rt.tooltip_compare,gravity:"ne",click:Un};function Un(e,r){var t=r.currentTarget,n=t.getAttribute("data-attr"),a=t.getAttribute("data-val")||!0,o=e._fullLayout,i={},l=$9.list(e,null,!0),u=o._cartesianSpikesEnabled,s,f;if(n==="zoom"){var h=a==="in"?.5:2,p=(1+h)/2,_=(1-h)/2,m,w;for(f=0;f{"use strict";var oA=ry(),sK=Object.keys(oA),lA=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],sA=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(lA),mu=[],uK=function(e){if(sA.indexOf(e._cat||e.name)===-1){var r=e.name,t=(e._cat||e.name).toLowerCase();mu.indexOf(r)===-1&&mu.push(r),mu.indexOf(t)===-1&&mu.push(t)}};sK.forEach(function(e){uK(oA[e])});mu.sort();uA.exports={DRAW_MODES:lA,backButtons:sA,foreButtons:mu}});var ny=de((Rhe,fA)=>{"use strict";var Dhe=ty();fA.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var hA=de((Phe,cA)=>{"use strict";var fK=ir(),Wf=Xr(),cK=yt(),hK=ny();cA.exports=function(r,t){var n=r.modebar||{},a=cK.newContainer(t,"modebar");function o(l,u){return fK.coerce(n,a,hK,l,u)}o("orientation"),o("bgcolor",Wf.addOpacity(t.paper_bgcolor,.5));var i=Wf.contrast(Wf.rgb(t.modebar.bgcolor));o("color",Wf.addOpacity(i,.3)),o("activecolor",Wf.addOpacity(i,.7)),o("uirevision",t.uirevision),o("add"),o("remove")}});var gA=de((Ihe,pA)=>{"use strict";var ay=it(),vK=nt(),Lv=ir(),vA=hv(),dK=_c().version,pK=new DOMParser;function dA(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var zi=dA.prototype;zi.update=function(e,r){this.graphInfo=e;var t=this.graphInfo._context,n=this.graphInfo._fullLayout,a="modebar-"+n._uid;this.element.setAttribute("id",a),this.element.setAttribute("role","toolbar"),this._uid=a,this.element.className="modebar modebar--custom",t.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),n.modebar.orientation==="v"&&(this.element.className+=" vertical",r=r.reverse());var o=n.modebar,i="#"+a+" .modebar-group";document.querySelectorAll(i).forEach(function(h){h.style.backgroundColor=o.bgcolor});var l=!this.hasButtons(r),u=this.hasLogo!==t.displaylogo,s=this.locale!==t.locale;if(this.locale=t.locale,(l||u||s)&&(this.removeAllButtons(),this.updateButtons(r),t.watermark||t.displaylogo)){var f=this.getLogo();t.watermark&&(f.className=f.className+" watermark"),n.modebar.orientation==="v"?this.element.insertBefore(f,this.element.childNodes[0]):this.element.appendChild(f),this.hasLogo=!0}this.updateActiveButton(),Lv.setStyleOnHover("#"+a+" .modebar-btn",".active",".icon path","fill: "+o.activecolor,"fill: "+o.color,this.element)};zi.updateButtons=function(e){var r=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(t){var n=r.createGroup();t.forEach(function(a){var o=a.name;if(!o)throw new Error("must provide button 'name' in button config");if(r.buttonsNames.indexOf(o)!==-1)throw new Error("button name '"+o+"' is taken");r.buttonsNames.push(o);var i=r.createButton(a);r.buttonElements.push(i),n.appendChild(i)}),r.element.appendChild(n)})};zi.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var r=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=r.bgcolor,e};zi.createButton=function(e){var r=this,t=document.createElement("button");t.setAttribute("type","button"),t.setAttribute("rel","tooltip"),t.className="modebar-btn";var n=e.title;n===void 0?n=e.name:typeof n=="function"&&(n=n(this.graphInfo)),(n||n===0)&&(t.setAttribute("data-title",n),t.setAttribute("aria-label",n)),e.attr!==void 0&&t.setAttribute("data-attr",e.attr);var a=e.val;a!==void 0&&(typeof a=="function"&&(a=a(this.graphInfo)),t.setAttribute("data-val",a));var o=e.click;if(typeof o!="function")throw new Error("must provide button 'click' function in button config");t.addEventListener("click",function(l){e.click(r.graphInfo,l),r.updateActiveButton(l.currentTarget)}),t.setAttribute("data-toggle",e.toggle||!1),e.toggle&&ay.select(t).classed("active",!0);var i=e.icon;return typeof i=="function"?t.appendChild(i()):t.appendChild(this.createIcon(i||vA.question)),t.setAttribute("data-gravity",e.gravity||"n"),t};zi.createIcon=function(e){var r=vK(e.height)?Number(e.height):e.ascent-e.descent,t="http://www.w3.org/2000/svg",n;if(e.path){n=document.createElementNS(t,"svg"),n.setAttribute("viewBox",[0,0,e.width,r].join(" ")),n.setAttribute("class","icon");var a=document.createElementNS(t,"path");a.setAttribute("d",e.path),e.transform?a.setAttribute("transform",e.transform):e.ascent!==void 0&&a.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),n.appendChild(a)}if(e.svg){var o=pK.parseFromString(e.svg,"application/xml");n=o.childNodes[0]}return n.setAttribute("height","1em"),n.setAttribute("width","1em"),n};zi.updateActiveButton=function(e){var r=this.graphInfo._fullLayout,t=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(n){var a=n.getAttribute("data-val")||!0,o=n.getAttribute("data-attr"),i=n.getAttribute("data-toggle")==="true",l=ay.select(n),u=function(h,p){var _=r.modebar,m=h.querySelector(".icon path");m&&(p||h.matches(":hover")?m.style.fill=_.activecolor:m.style.fill=_.color)};if(i){if(o===t){var s=!l.classed("active");l.classed("active",s),u(n,s)}}else{var f=o===null?o:Lv.nestedProperty(r,o).get();l.classed("active",f===a),u(n,f===a)}})};zi.hasButtons=function(e){var r=this.buttons;if(!r||e.length!==r.length)return!1;for(var t=0;t{"use strict";var mK=jt(),yA=oa(),iy=Cr(),bK=to().isUnifiedHover,xK=gA(),Dv=ry(),_K=ty().DRAW_MODES,wK=ir().extendDeep;mA.exports=function(r){var t=r._fullLayout,n=r._context,a=t._modeBar;if(!n.displayModeBar&&!n.watermark){a&&(a.destroy(),delete t._modeBar);return}if(!Array.isArray(n.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(n.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var o=n.modeBarButtons,i;Array.isArray(o)&&o.length?i=CK(o):!n.displayModeBar&&n.watermark?i=[]:i=MK(r),a?a.update(r,i):t._modeBar=xK(r,i)};function MK(e){var r=e._fullLayout,t=e._fullData,n=e._context;function a(L,P){if(typeof P=="string"){if(P.toLowerCase()===L.toLowerCase())return!0}else{var O=P.name,U=P._cat||P.name;if(O===L||U===L.toLowerCase())return!0}return!1}var o=r.modebar.add;typeof o=="string"&&(o=[o]);var i=r.modebar.remove;typeof i=="string"&&(i=[i]);var l=n.modeBarButtonsToAdd.concat(o.filter(function(L){for(var P=0;P1?(A=["toggleHover"],v=["resetViews"]):h?(c=["zoomInGeo","zoomOutGeo"],A=["hoverClosestGeo"],v=["resetGeo"]):f?(A=["hoverClosest3d"],v=["resetCameraDefault3d","resetCameraLastSave3d"]):w?(c=["zoomInMapbox","zoomOutMapbox"],A=["toggleHover"],v=["resetViewMapbox"]):T?(c=["zoomInMap","zoomOutMap"],A=["toggleHover"],v=["resetViewMap"]):p?A=["hoverClosestPie"]:S?(A=["hoverClosestCartesian","hoverCompareCartesian"],v=["resetViewSankey"]):A=["toggleHover"],s&&A.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(kK(t)||M)&&(A=[]),s&&!b&&(c=["zoomIn2d","zoomOut2d","autoScale2d"],v[0]!=="resetViews"&&(v=["resetScale2d"])),f?D=["zoom3d","pan3d","orbitRotation","tableRotation"]:s&&!b||m?D=["zoom2d","pan2d"]:w||T||h?D=["pan2d"]:y&&(D=["zoom2d"]),AK(t)&&D.push("select2d","lasso2d");var E=[],R=function(L){E.indexOf(L)===-1&&A.indexOf(L)!==-1&&E.push(L)};if(Array.isArray(l)){for(var N=[],F=0;F{"use strict";xA.exports={moduleType:"component",name:"modebar",layoutAttributes:ny(),supplyLayoutDefaults:hA(),manage:bA()}});var ly=de((zhe,_A)=>{"use strict";var EK=qn().FROM_BL;_A.exports=function(r,t,n){n===void 0&&(n=EK[r.constraintoward||"center"]);var a=[r.r2l(r.range[0]),r.r2l(r.range[1])],o=a[0]+(a[1]-a[0])*n;r.range=r._input.range=[r.l2r(o+(a[0]-o)*t),r.l2r(o+(a[1]-o)*t)],r.setScale()}});var Zf=de(Xf=>{"use strict";var $l=ir(),sy=eu(),ii=jt().id2name,LK=La(),wA=ly(),DK=Fh(),RK=nn().ALMOST_EQUAL,PK=qn().FROM_BL;Xf.handleDefaults=function(e,r,t){var n=t.axIds,a=t.axHasImage,o=r._axisConstraintGroups=[],i=r._axisMatchGroups=[],l,u,s,f,h,p,_,m;for(l=0;lo?t.substr(o):n.substr(a))+i}function FK(e,r){for(var t=r._size,n=t.h/t.w,a={},o=Object.keys(e),i=0;iRK*m&&!k)){for(o=0;oD&&OA&&(A=O);var X=(A-c)/(2*v);h/=X,c=u.l2r(c),A=u.l2r(A),u.range=u._input.range=d{"use strict";var Pv=it(),Hn=Cr(),ma=on(),Fa=ir(),cy=Wn(),hy=cv(),Jf=Xr(),bu=mt(),kA=Rf(),DA=oy(),Kf=Lt(),so=qn(),RA=Zf(),NK=RA.enforce,zK=RA.clean,SA=eu().doAutoRange,PA="start",qK="middle",IA="end",OK=_n().zindexSeparator;un.layoutStyles=function(e){return Fa.syncOrAsync([ma.doAutoMargin,UK],e)};function BK(e,r,t){for(var n=0;n=e[1]||a[1]<=e[0])&&o[0]r[0])return!0}return!1}function UK(e){var r=e._fullLayout,t=r._size,n=t.p,a=Kf.list(e,"",!0),o,i,l,u,s,f;if(r._paperdiv.style({width:e._context.responsive&&r.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":r.width+"px",height:e._context.responsive&&r.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":r.height+"px"}).selectAll(".main-svg").call(bu.setSize,r.width,r.height),e._context.setBackground(e,r.paper_bgcolor),un.drawMainTitle(e),DA.manage(e),!r._has("cartesian"))return ma.previousPromises(e);function h(re,H,ee){var V=re._lw/2;if(re._id.charAt(0)==="x"){if(H){if(ee==="top")return H._offset-n-V}else return t.t+t.h*(1-(re.position||0))+V%1;return H._offset+H._length+n+V}if(H){if(ee==="right")return H._offset+H._length+n+V}else return t.l+t.w*(re.position||0)+V%1;return H._offset-n-V}for(o=0;o0){YK(e,o,s,u),l.attr({x:i,y:o,"text-anchor":n,dy:LA(r.yanchor)}).call(cy.positionText,i,o);var f=(r.text.match(cy.BR_TAG_ALL)||[]).length;if(f){var h=so.LINE_SPACING*f+so.MID_SHIFT;r.y===0&&(h=-h),l.selectAll(".line").each(function(){var T=+this.getAttribute("dy").slice(0,-2)-h+"em";this.setAttribute("dy",T)})}var p=Pv.select(e).selectAll(".gtitle-subtitle");if(p.node()){var _=l.node().getBBox(),m=_.y+_.height,w=m+kA.SUBTITLE_PADDING_EM*r.subtitle.font.size;p.attr({x:i,y:w,"text-anchor":n,dy:LA(r.yanchor)}).call(cy.positionText,i,w)}}}};function HK(e,r,t,n,a){var o=r.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,i=Fa.isTopAnchor(r)?n:n-a,l=t==="b"?o-i:i;return Fa.isTopAnchor(r)&&t==="t"||Fa.isBottomAnchor(r)&&t==="b"?!1:l.5?"t":"b",i=e._fullLayout.margin[o],l=0;return r.yref==="paper"?l=t+r.pad.t+r.pad.b:r.yref==="container"&&(l=VK(o,n,a,e._fullLayout.height,t)+r.pad.t+r.pad.b),l>i?l:0}function YK(e,r,t,n){var a="title.automargin",o=e._fullLayout.title,i=o.y>.5?"t":"b",l={x:o.x,y:o.y,t:0,b:0},u={};o.yref==="paper"&&HK(e,o,i,r,n)?l[i]=t:o.yref==="container"&&(u[i]=t,e._fullLayout._reservedMargin[a]=u),ma.allowAutoMargin(e,a),ma.autoMargin(e,a,l)}function WK(e,r){var t=e.title,n=e._size,a=0;switch(r===PA?a=t.pad.l:r===IA&&(a=-t.pad.r),t.xref){case"paper":return n.l+n.w*t.x+a;case"container":default:return e.width*t.x+a}}function XK(e,r){var t=e.title,n=e._size,a=0;if(r==="0em"||!r?a=-t.pad.b:r===so.CAP_SHIFT+"em"&&(a=t.pad.t),t.y==="auto")return n.t/2;switch(t.yref){case"paper":return n.t+n.h-n.h*t.y+a;case"container":default:return e.height-e.height*t.y+a}}function LA(e){return e==="top"?so.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":so.MID_SHIFT+"em"}function ZK(e){var r=e.title,t=qK;return Fa.isRightAnchor(r)?t=IA:Fa.isLeftAnchor(r)&&(t=PA),t}function JK(e){var r=e.title,t="0em";return Fa.isTopAnchor(r)?t=so.CAP_SHIFT+"em":Fa.isMiddleAnchor(r)&&(t=so.MID_SHIFT+"em"),t}un.doTraceStyle=function(e){var r=e.calcdata,t=[],n;for(n=0;n{"use strict";var KK=Go().readPaths,QK=Mv(),FA=Io().clearOutlineControllers,vy=Xr(),NA=mt(),$K=yt().arrayEditor,zA=Wo(),jK=zA.getPathString;OA.exports={draw:Fv,drawOne:qA,activateLastSelection:tQ};function Fv(e){var r=e._fullLayout;FA(e),r._selectionLayer.selectAll("path").remove();for(var t in r._plots){var n=r._plots[t].selectionLayer;n&&n.selectAll("path").remove()}for(var a=0;a=0;T--){var y=i.append("path").attr(u).style("opacity",T?.1:s).call(vy.stroke,h).call(vy.fill,f).call(NA.dashLine,T?"solid":_,T?4+p:p);if(eQ(y,e,n),m){var k=$K(e.layout,"selections",n);y.style({cursor:"move"});var S={element:y.node(),plotinfo:a,gd:e,editHelpers:k,isActiveSelection:!0},b=KK(l,e);QK(b,y,S)}else y.style("pointer-events",T?"all":"none");w[T]=y}var M=w[0],d=w[1];d.node().addEventListener("click",function(){return rQ(e,M)})}}function eQ(e,r,t){var n=t.xref+t.yref;NA.setClipUrl(e,"clip"+r._fullLayout._uid+n,r)}function rQ(e,r){if(Nv(e)){var t=r.node(),n=+t.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeSelectionIndex){dy(e);return}e._fullLayout._activeSelectionIndex=n,e._fullLayout._deactivateSelection=dy,Fv(e)}}}function tQ(e){if(Nv(e)){var r=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=r,e._fullLayout._deactivateSelection=dy,Fv(e)}}function dy(e){if(Nv(e)){var r=e._fullLayout._activeSelectionIndex;r>=0&&(FA(e),delete e._fullLayout._activeSelectionIndex,Fv(e))}}});var UA=de((Uhe,BA)=>{function nQ(){var e,r=0,t=!1;function n(a,o){return e.list.push({type:a,data:o?JSON.parse(JSON.stringify(o)):void 0}),e}return e={list:[],segmentId:function(){return r++},checkIntersection:function(a,o){return n("check",{seg1:a,seg2:o})},segmentChop:function(a,o){return n("div_seg",{seg:a,pt:o}),n("chop",{seg:a,pt:o})},statusRemove:function(a){return n("pop_seg",{seg:a})},segmentUpdate:function(a){return n("seg_update",{seg:a})},segmentNew:function(a,o){return n("new_seg",{seg:a,primary:o})},segmentRemove:function(a){return n("rem_seg",{seg:a})},tempStatus:function(a,o,i){return n("temp_status",{seg:a,above:o,below:i})},rewind:function(a){return n("rewind",{seg:a})},status:function(a,o,i){return n("status",{seg:a,above:o,below:i})},vert:function(a){return a===t?e:(t=a,n("vert",{x:a}))},log:function(a){return typeof a!="string"&&(a=JSON.stringify(a,!1," ")),n("log",{txt:a})},reset:function(){return n("reset")},selected:function(a){return n("selected",{segs:a})},chainStart:function(a){return n("chain_start",{seg:a})},chainRemoveHead:function(a,o){return n("chain_rem_head",{index:a,pt:o})},chainRemoveTail:function(a,o){return n("chain_rem_tail",{index:a,pt:o})},chainNew:function(a,o){return n("chain_new",{pt1:a,pt2:o})},chainMatch:function(a){return n("chain_match",{index:a})},chainClose:function(a){return n("chain_close",{index:a})},chainAddHead:function(a,o){return n("chain_add_head",{index:a,pt:o})},chainAddTail:function(a,o){return n("chain_add_tail",{index:a,pt:o})},chainConnect:function(a,o){return n("chain_con",{index1:a,index2:o})},chainReverse:function(a){return n("chain_rev",{index:a})},chainJoin:function(a,o){return n("chain_join",{index1:a,index2:o})},done:function(){return n("done")}},e}BA.exports=nQ});var VA=de((Hhe,HA)=>{function aQ(e){typeof e!="number"&&(e=1e-10);var r={epsilon:function(t){return typeof t=="number"&&(e=t),e},pointAboveOrOnLine:function(t,n,a){var o=n[0],i=n[1],l=a[0],u=a[1],s=t[0],f=t[1];return(l-o)*(f-i)-(u-i)*(s-o)>=-e},pointBetween:function(t,n,a){var o=t[1]-n[1],i=a[0]-n[0],l=t[0]-n[0],u=a[1]-n[1],s=l*i+o*u;if(s-e)},pointsSameX:function(t,n){return Math.abs(t[0]-n[0])e!=l-o>e&&(i-f)*(o-h)/(l-h)+f-a>e&&(u=!u),i=f,l=h}return u}};return r}HA.exports=aQ});var YA=de((Vhe,GA)=>{var iQ={create:function(){var e={root:{root:!0,next:null},exists:function(r){return!(r===null||r===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(r,t){for(var n=e.root,a=e.root.next;a!==null;){if(t(a)){r.prev=a.prev,r.next=a,a.prev.next=r,a.prev=r;return}n=a,a=a.next}n.next=r,r.prev=n,r.next=null},findTransition:function(r){for(var t=e.root,n=e.root.next;n!==null&&!r(n);)t=n,n=n.next;return{before:t===e.root?null:t,after:n,insert:function(a){return a.prev=t,a.next=n,t.next=a,n!==null&&(n.prev=a),a}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};GA.exports=iQ});var XA=de((Ghe,WA)=>{var Qf=YA();function oQ(e,r,t){function n(m,w){return{id:t?t.segmentId():-1,start:m,end:w,myFill:{above:null,below:null},otherFill:null}}function a(m,w,T){return{id:t?t.segmentId():-1,start:m,end:w,myFill:{above:T.myFill.above,below:T.myFill.below},otherFill:null}}var o=Qf.create();function i(m,w,T,y,k,S){var b=r.pointsCompare(w,k);return b!==0?b:r.pointsSame(T,S)?0:m!==y?m?1:-1:r.pointAboveOrOnLine(T,y?k:S,y?S:k)?1:-1}function l(m,w){o.insertBefore(m,function(T){var y=i(m.isStart,m.pt,w,T.isStart,T.pt,T.other.pt);return y<0})}function u(m,w){var T=Qf.node({isStart:!0,pt:m.start,seg:m,primary:w,other:null,status:null});return l(T,m.end),T}function s(m,w,T){var y=Qf.node({isStart:!1,pt:w.end,seg:w,primary:T,other:m,status:null});m.other=y,l(y,m.pt)}function f(m,w){var T=u(m,w);return s(T,m,w),T}function h(m,w){t&&t.segmentChop(m.seg,w),m.other.remove(),m.seg.end=w,m.other.pt=w,l(m.other,m.pt)}function p(m,w){var T=a(w,m.seg.end,m.seg);return h(m,w),f(T,m.primary)}function _(m,w){var T=Qf.create();function y(N,F){var I=N.seg.start,L=N.seg.end,P=F.seg.start,O=F.seg.end;return r.pointsCollinear(I,P,O)?r.pointsCollinear(L,P,O)||r.pointAboveOrOnLine(L,P,O)?1:-1:r.pointAboveOrOnLine(I,P,O)?1:-1}function k(N){return T.findTransition(function(F){var I=y(N,F.ev);return I>0})}function S(N,F){var I=N.seg,L=F.seg,P=I.start,O=I.end,U=L.start,X=L.end;t&&t.checkIntersection(I,L);var $=r.linesIntersect(P,O,U,X);if($===!1){if(!r.pointsCollinear(P,O,U)||r.pointsSame(P,X)||r.pointsSame(O,U))return!1;var j=r.pointsSame(P,U),Y=r.pointsSame(O,X);if(j&&Y)return F;var q=!j&&r.pointBetween(P,U,X),K=!Y&&r.pointBetween(O,U,X);if(j)return K?p(F,O):p(N,X),F;q&&(Y||(K?p(F,O):p(N,X)),p(F,P))}else $.alongA===0&&($.alongB===-1?p(N,U):$.alongB===0?p(N,$.pt):$.alongB===1&&p(N,X)),$.alongB===0&&($.alongA===-1?p(F,P):$.alongA===0?p(F,$.pt):$.alongA===1&&p(F,O));return!1}for(var b=[];!o.isEmpty();){var M=o.getHead();if(t&&t.vert(M.pt[0]),M.isStart){let N=function(){if(x){var F=S(M,x);if(F)return F}return g?S(M,g):!1};var R=N;t&&t.segmentNew(M.seg,M.primary);var d=k(M),x=d.before?d.before.ev:null,g=d.after?d.after.ev:null;t&&t.tempStatus(M.seg,x?x.seg:!1,g?g.seg:!1);var c=N();if(c){if(e){var A;M.seg.myFill.below===null?A=!0:A=M.seg.myFill.above!==M.seg.myFill.below,A&&(c.seg.myFill.above=!c.seg.myFill.above)}else c.seg.otherFill=M.seg.myFill;t&&t.segmentUpdate(c.seg),M.other.remove(),M.remove()}if(o.getHead()!==M){t&&t.rewind(M.seg);continue}if(e){var A;M.seg.myFill.below===null?A=!0:A=M.seg.myFill.above!==M.seg.myFill.below,g?M.seg.myFill.below=g.seg.myFill.above:M.seg.myFill.below=m,A?M.seg.myFill.above=!M.seg.myFill.below:M.seg.myFill.above=M.seg.myFill.below}else if(M.seg.otherFill===null){var v;g?M.primary===g.primary?v=g.seg.otherFill.above:v=g.seg.myFill.above:v=M.primary?w:m,M.seg.otherFill={above:v,below:v}}t&&t.status(M.seg,x?x.seg:!1,g?g.seg:!1),M.other.status=d.insert(Qf.node({ev:M}))}else{var D=M.status;if(D===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(T.exists(D.prev)&&T.exists(D.next)&&S(D.prev.ev,D.next.ev),t&&t.statusRemove(D.ev.seg),D.remove(),!M.primary){var E=M.seg.myFill;M.seg.myFill=M.seg.otherFill,M.seg.otherFill=E}b.push(M.seg)}o.getHead().remove()}return t&&t.done(),b}return e?{addRegion:function(m){for(var w,T=m[m.length-1],y=0;y{function lQ(e,r,t){var n=[],a=[];return e.forEach(function(o){var i=o.start,l=o.end;if(r.pointsSame(i,l)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}t&&t.chainStart(o);var u={index:0,matches_head:!1,matches_pt1:!1},s={index:0,matches_head:!1,matches_pt1:!1},f=u;function h(R,N,F){return f.index=R,f.matches_head=N,f.matches_pt1=F,f===u?(f=s,!1):(f=null,!0)}for(var p=0;p{function $f(e,r,t){var n=[];return e.forEach(function(a){var o=(a.myFill.above?8:0)+(a.myFill.below?4:0)+(a.otherFill&&a.otherFill.above?2:0)+(a.otherFill&&a.otherFill.below?1:0);r[o]!==0&&n.push({id:t?t.segmentId():-1,start:a.start,end:a.end,myFill:{above:r[o]===1,below:r[o]===2},otherFill:null})}),t&&t.selected(n),n}var sQ={union:function(e,r){return $f(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],r)},intersect:function(e,r){return $f(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],r)},difference:function(e,r){return $f(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],r)},differenceRev:function(e,r){return $f(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],r)},xor:function(e,r){return $f(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],r)}};KA.exports=sQ});var jA=de((Xhe,$A)=>{var uQ={toPolygon:function(e,r){function t(o){if(o.length<=0)return e.segments({inverted:!1,regions:[]});function i(s){var f=s.slice(0,s.length-1);return e.segments({inverted:!1,regions:[f]})}for(var l=i(o[0]),u=1;u{var fQ=UA(),cQ=VA(),ek=XA(),hQ=JA(),jf=QA(),rk=jA(),Na=!1,e0=cQ(),ua;ua={buildLog:function(e){return e===!0?Na=fQ():e===!1&&(Na=!1),Na===!1?!1:Na.list},epsilon:function(e){return e0.epsilon(e)},segments:function(e){var r=ek(!0,e0,Na);return e.regions.forEach(r.addRegion),{segments:r.calculate(e.inverted),inverted:e.inverted}},combine:function(e,r){var t=ek(!1,e0,Na);return{combined:t.calculate(e.segments,e.inverted,r.segments,r.inverted),inverted1:e.inverted,inverted2:r.inverted}},selectUnion:function(e){return{segments:jf.union(e.combined,Na),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:jf.intersect(e.combined,Na),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:jf.difference(e.combined,Na),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:jf.differenceRev(e.combined,Na),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:jf.xor(e.combined,Na),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:hQ(e.segments,e0,Na),inverted:e.inverted}},polygonFromGeoJSON:function(e){return rk.toPolygon(ua,e)},polygonToGeoJSON:function(e){return rk.fromPolygon(ua,e0,e)},union:function(e,r){return r0(e,r,ua.selectUnion)},intersect:function(e,r){return r0(e,r,ua.selectIntersect)},difference:function(e,r){return r0(e,r,ua.selectDifference)},differenceRev:function(e,r){return r0(e,r,ua.selectDifferenceRev)},xor:function(e,r){return r0(e,r,ua.selectXor)}};function r0(e,r,t){var n=ua.segments(e),a=ua.segments(r),o=ua.combine(n,a),i=t(o);return ua.polygon(i)}typeof window=="object"&&(window.PolyBool=ua);tk.exports=ua});var ik=de((Jhe,ak)=>{ak.exports=function(r,t,n,a){var o=r[0],i=r[1],l=!1;n===void 0&&(n=0),a===void 0&&(a=t.length);for(var u=a-n,s=0,f=u-1;si!=m>i&&o<(_-h)*(i-p)/(m-p)+h;w&&(l=!l)}return l}});var yy=de((Khe,ok)=>{"use strict";var gy=Oc().dot,zv=nn().BADNUM,qv=ok.exports={};qv.tester=function(r){var t=r.slice(),n=t[0][0],a=n,o=t[0][1],i=o,l;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),l=1;la||y===zv||yi||w&&s(m))}function h(m,w){var T=m[0],y=m[1];if(T===zv||Ta||y===zv||yi)return!1;var k=t.length,S=t[0][0],b=t[0][1],M=0,d,x,g,c,A;for(d=1;dMath.max(x,S)||y>Math.max(g,b)))if(yl||Math.abs(gy(h,s))>a)return!0;return!1};qv.filter=function(r,t){var n=[r[0]],a=0,o=0;function i(u){r.push(u);var s=n.length,f=a;n.splice(o+1);for(var h=f+1;h1){var l=r.pop();i(l)}return{addPt:i,raw:r,filtered:n}}});var sk=de((Qhe,lk)=>{"use strict";lk.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var Lk=de(($he,Ek)=>{"use strict";var uk=nk(),vQ=ik(),a0=Cr(),dQ=mt().dashStyle,t0=Xr(),pQ=io(),gQ=to().makeEventData,u0=hu(),yQ=u0.freeMode,mQ=u0.rectMode,i0=u0.drawMode,_y=u0.openMode,wy=u0.selectMode,fk=Wo(),ck=Gf(),gk=Mv(),yk=Io().clearOutline,mk=Go(),my=mk.handleEllipse,bQ=mk.readPaths,xQ=bv().newShapes,_Q=G2(),wQ=py().activateLastSelection,Bv=ir(),MQ=Bv.sorterAsc,bk=yy(),n0=$c(),za=jt().getFromId,TQ=cv(),AQ=Iv().redrawReglTraces,Uv=sk(),qi=Uv.MINSELECT,kQ=bk.filter,My=bk.tester,Ty=pv(),hk=Ty.p2r,SQ=Ty.axValue,CQ=Ty.getTransform;function Ay(e){return e.subplot!==void 0}function EQ(e,r,t,n,a){var o=!Ay(n),i=yQ(a),l=mQ(a),u=_y(a),s=i0(a),f=wy(a),h=a==="drawline",p=a==="drawcircle",_=h||p,m=n.gd,w=m._fullLayout,T=f&&w.newselection.mode==="immediate"&&o,y=w._zoomlayer,k=n.element.getBoundingClientRect(),S=n.plotinfo,b=CQ(S),M=r-k.left,d=t-k.top;w._calcInverseTransform(m);var x=Bv.apply3DTransform(w._invTransform)(M,d);M=x[0],d=x[1];var g=w._invScaleX,c=w._invScaleY,A=M,v=d,D="M"+M+","+d,E=n.xaxes[0],R=n.yaxes[0],N=E._length,F=R._length,I=e.altKey&&!(i0(a)&&u),L,P,O,U,X,$,j;_k(e,m,n),i&&(L=kQ([[M,d]],Uv.BENDPX));var Y=y.selectAll("path.select-outline-"+S.id).data([1]),q=s?w.newshape:w.newselection;s&&(n.hasText=q.label.text||q.label.texttemplate);var K=s&&!u?q.fillcolor:"rgba(0,0,0,0)",ne=q.line.color||(o?t0.contrast(m._fullLayout.plot_bgcolor):"#7f7f7f");Y.enter().append("path").attr("class","select-outline select-outline-"+S.id).style({opacity:s?q.opacity/2:1,"stroke-dasharray":dQ(q.line.dash,q.line.width),"stroke-width":q.line.width+"px","shape-rendering":"crispEdges"}).call(t0.stroke,ne).call(t0.fill,K).attr("fill-rule","evenodd").classed("cursor-move",!!s).attr("transform",b).attr("d",D+"Z");var Q=y.append("path").attr("class","zoombox-corners").style({fill:t0.background,stroke:t0.defaultLine,"stroke-width":1}).attr("transform",b).attr("d","M0,0Z");if(s&&n.hasText){var oe=y.select(".label-temp");oe.empty()&&(oe=y.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var re=w._uid+Uv.SELECTID,H=[],ee=Hv(m,n.xaxes,n.yaxes,n.subplot);T&&!e.shiftKey&&(n._clearSubplotSelections=function(){if(o){var te=E._id,ue=R._id;kk(m,te,ue,ee);for(var ve=(m.layout||{}).selections||[],ke=[],Se=!1,he=0;he=0){m._fullLayout._deactivateShape(m);return}if(!s){var ve=w.clickmode;n0.done(re).then(function(){if(n0.clear(re),te===2){for(Y.remove(),X=0;X-1&&xk(ue,m,n.xaxes,n.yaxes,n.subplot,n,Y),ve==="event"&&s0(m,void 0);pQ.click(m,ue,S.id)}).catch(Bv.error)}},n.doneFn=function(){Q.remove(),n0.done(re).then(function(){n0.clear(re),!T&&U&&n.selectionDefs&&(U.subtract=I,n.selectionDefs.push(U),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,O)),(T||s)&&o0(n,T),n.doneFnCompleted&&n.doneFnCompleted(H),f&&s0(m,j)}).catch(Bv.error)}}function xk(e,r,t,n,a,o,i){var l=r._hoverdata,u=r._fullLayout,s=u.clickmode,f=s.indexOf("event")>-1,h=[],p,_,m,w,T,y,k,S,b,M;if(IQ(l)){_k(e,r,o),p=Hv(r,t,n,a);var d=FQ(l,p),x=d.pointNumbers.length>0;if(x?NQ(p,d):zQ(p)&&(k=dk(d))){for(i&&i.remove(),M=0;M=0}function PQ(e){return e._fullLayout._activeSelectionIndex>=0}function o0(e,r){var t=e.dragmode,n=e.plotinfo,a=e.gd;RQ(a)&&a._fullLayout._deactivateShape(a),PQ(a)&&a._fullLayout._deactivateSelection(a);var o=a._fullLayout,i=o._zoomlayer,l=i0(t),u=wy(t);if(l||u){var s=i.selectAll(".select-outline-"+n.id);if(s&&a._fullLayout._outlining){var f;l&&(f=xQ(s,e)),f&&a0.call("_guiRelayout",a,{shapes:f});var h;u&&!Ay(e)&&(h=_Q(s,e)),h&&(a._fullLayout._noEmitSelectedAtStart=!0,a0.call("_guiRelayout",a,{selections:h}).then(function(){r&&wQ(a)})),a._fullLayout._outlining=!1}}n.selection={},n.selection.selectionDefs=e.selectionDefs=[],n.selection.mergedPolygons=e.mergedPolygons=[]}function vk(e){return e._id}function Hv(e,r,t,n){if(!e.calcdata)return[];var a=[],o=r.map(vk),i=t.map(vk),l,u,s;for(s=0;s0,o=a?n[0]:t;return r.selectedpoints?r.selectedpoints.indexOf(o)>-1:!1}function NQ(e,r){var t=[],n,a,o,i;for(i=0;i0&&t.push(n);if(t.length===1&&(o=t[0]===r.searchInfo,o&&(a=r.searchInfo.cd[0].trace,a.selectedpoints.length===r.pointNumbers.length))){for(i=0;i1||(r+=n.selectedpoints.length,r>1)))return!1;return r===1}function l0(e,r,t){var n;for(n=0;n-1&&r;if(!i&&r){var te=pk(e,!0);if(te.length){var ue=te[0].xref,ve=te[0].yref;if(ue&&ve){var ke=Sk(te),Se=Ck([za(e,ue,"x"),za(e,ve,"y")]);Se(H,ke)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:V&&s0(e,H),p._reselect=!1}if(!i&&p._deselect){var he=p._deselect;l=he.xref,u=he.yref,BQ(l,u,f)||kk(e,l,u,n),V&&(H.points.length?s0(e,H):Cy(e)),p._deselect=!1}return{eventData:H,selectionTesters:t}}function OQ(e){var r=e.calcdata;if(r)for(var t=0;t{"use strict";Dk.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var f0=de((eve,Rk)=>{"use strict";Rk.exports={axisRefDescription:function(e,r,t){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",r,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",r,"("+t+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",r,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",r,"and the",t,"of the domain of the","second",e,"axis."].join(" ")}}});var xu=de((tve,Fk)=>{"use strict";var Pk=Ey(),Ik=kn(),Vv=_n(),YQ=yt().templatedArray,rve=f0();Fk.exports=YQ("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:Ik({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:Pk.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:Pk.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",Vv.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",Vv.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",Vv.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",Vv.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:Ik({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Gv=de((nve,Nk)=>{"use strict";Nk.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var qk=de((ave,zk)=>{"use strict";zk.exports=function(r){return{valType:"color",editType:"style",anim:!0}}});var jl=de((ive,Yk)=>{"use strict";var Ok=ro().axisHoverFormat,{hovertemplateAttrs:WQ,texttemplateAttrs:XQ,templatefallbackAttrs:Bk}=Ka(),Uk=ei(),ZQ=kn(),JQ=Ao().dash,KQ=Ao().pattern,QQ=mt(),$Q=Gv(),Yv=Tt().extendFlat,jQ=qk();function Hk(e){return{valType:"any",dflt:0,editType:"calc"}}function Vk(e){return{valType:"any",editType:"calc"}}function Gk(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}Yk.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:Hk("x"),yperiod:Hk("y"),xperiod0:Vk("x0"),yperiod0:Vk("y0"),xperiodalignment:Gk("x"),yperiodalignment:Gk("y"),xhoverformat:Ok("x"),yhoverformat:Ok("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:XQ(),texttemplatefallback:Bk({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:WQ({},{keys:$Q.eventDataKeys}),hovertemplatefallback:Bk(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:Yv({},JQ,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:jQ(!0),fillgradient:Yv({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:KQ,marker:Yv({symbol:{valType:"enumerated",values:QQ.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:Yv({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},Uk("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},Uk("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:ZQ({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var Ly=de((lve,Zk)=>{"use strict";var Wk=xu(),Xk=jl().line,e$=Ao().dash,Wv=Tt().extendFlat,r$=zn().overrideAll,t$=yt().templatedArray,ove=f0();Zk.exports=r$(t$("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:Wv({},Wk.xref,{}),yref:Wv({},Wk.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:Xk.color,width:Wv({},Xk.width,{min:1,dflt:1}),dash:Wv({},e$,{dflt:"dot"})}}),"arraydraw","from-root")});var $k=de((sve,Qk)=>{"use strict";var Jk=ir(),Xv=Lt(),n$=ri(),a$=Ly(),Kk=Wo();Qk.exports=function(r,t){n$(r,t,{name:"selections",handleItemDefaults:i$});for(var n=t.selections,a=0;a{"use strict";jk.exports=function(r,t,n){n("newselection.mode");var a=n("newselection.line.width");a&&(n("newselection.line.color"),n("newselection.line.dash")),n("activeselection.fillcolor"),n("activeselection.opacity")}});var c0=de((fve,nS)=>{"use strict";var o$=Cr(),rS=ir(),tS=jt();nS.exports=function(r){return function(n,a){var o=n[r];if(Array.isArray(o))for(var i=o$.subplotsRegistry.cartesian,l=i.idRegex,u=a._subplots,s=u.xaxis,f=u.yaxis,h=u.cartesian,p=a._has("cartesian"),_=0;_{"use strict";var aS=py(),h0=Lk();iS.exports={moduleType:"component",name:"selections",layoutAttributes:Ly(),supplyLayoutDefaults:$k(),supplyDrawNewSelectionDefaults:eS(),includeBasePlot:c0()("selections"),draw:aS.draw,drawOne:aS.drawOne,reselect:h0.reselect,prepSelect:h0.prepSelect,clearOutline:h0.clearOutline,clearSelectionsCache:h0.clearSelectionsCache,selectOnClick:h0.selectOnClick}});var kS=de((hve,AS)=>{"use strict";var Fy=it(),qa=ir(),oS=qa.numberFormat,l$=ka(),s$=Qh(),Zv=Cr(),pS=qa.strTranslate,u$=Wn(),lS=Xr(),Zo=mt(),f$=io(),sS=Lt(),c$=Vo(),h$=ni(),gS=hu(),Jv=gS.selectingOrDrawing,v$=gS.freeMode,d$=qn().FROM_TL,p$=cv(),g$=Iv().redrawReglTraces,y$=on(),Ry=jt().getFromId,m$=_u().prepSelect,b$=_u().clearOutline,x$=_u().selectOnClick,Dy=ly(),Ny=_n(),uS=Ny.MINDRAG,Xn=Ny.MINZOOM,fS=!0;function _$(e,r,t,n,a,o,i,l){var u=e._fullLayout._zoomlayer,s=i+l==="nsew",f=(i+l).length===1,h,p,_,m,w,T,y,k,S,b,M,d,x,g,c,A,v,D,E,R,N,F,I;t+=r.yaxis._shift;function L(){if(h=r.xaxis,p=r.yaxis,S=h._length,b=p._length,y=h._offset,k=p._offset,_={},_[h._id]=h,m={},m[p._id]=p,i&&l)for(var pe=r.overlays,ce=0;ce=0){be._fullLayout._deactivateShape(be);return}var Le=be._fullLayout.clickmode;if(Iy(be),pe===2&&!f&&Ue(),s)Le.indexOf("select")>-1&&x$(ce,be,w,T,r.id,U),Le.indexOf("event")>-1&&f$.click(be,ce,r.id);else if(pe===1&&f){var qe=i?p:h,ze=i==="s"||l==="w"?0:1,$e=qe._name+".range["+ze+"]",Ve=w$(qe,ze),Be="left",Ye="middle";if(qe.fixedrange)return;i?(Ye=i==="n"?"top":"bottom",qe.side==="right"&&(Be="right")):l==="e"&&(Be="right"),be._context.showAxisRangeEntryBoxes&&Fy.select(O).call(u$.makeEditable,{gd:be,immediate:!0,background:be._fullLayout.paper_bgcolor,text:String(Ve),fill:qe.tickfont?qe.tickfont.color:"#444",horizontalAlign:Be,verticalAlign:Ye}).on("edit",function(Me){var Re=qe.d2r(Me);Re!==void 0&&Zv.call("_guiRelayout",be,$e,Re)})}}h$.init(U);var j,Y,q,K,ne,Q,oe,re,H,ee;function V(pe,ce,be){var Le=O.getBoundingClientRect();j=ce-Le.left,Y=be-Le.top,e._fullLayout._calcInverseTransform(e);var qe=qa.apply3DTransform(e._fullLayout._invTransform)(j,Y);j=qe[0],Y=qe[1],q={l:j,r:j,w:0,t:Y,b:Y,h:0},K=e._hmpixcount?e._hmlumcount/e._hmpixcount:l$(e._fullLayout.plot_bgcolor).getLuminance(),ne="M0,0H"+S+"V"+b+"H0V0",Q=!1,oe="xy",ee=!1,re=bS(u,K,y,k,ne),H=xS(u,y,k)}function te(pe,ce){if(e._transitioningWithDuration)return!1;var be=Math.max(0,Math.min(S,F*pe+j)),Le=Math.max(0,Math.min(b,I*ce+Y)),qe=Math.abs(be-j),ze=Math.abs(Le-Y);q.l=Math.min(j,be),q.r=Math.max(j,be),q.t=Math.min(Y,Le),q.b=Math.max(Y,Le);function $e(){oe="",q.r=q.l,q.t=q.b,H.attr("d","M0,0Z")}if(M.isSubplotConstrained)qe>Xn||ze>Xn?(oe="xy",qe/S>ze/b?(ze=qe*b/S,Y>Le?q.t=Y-ze:q.b=Y+ze):(qe=ze*S/b,j>be?q.l=j-qe:q.r=j+qe),H.attr("d",Kv(q))):$e();else if(d.isSubplotConstrained)if(qe>Xn||ze>Xn){oe="xy";var Ve=Math.min(q.l/S,(b-q.b)/b),Be=Math.max(q.r/S,(b-q.t)/b);q.l=Ve*S,q.r=Be*S,q.b=(1-Ve)*b,q.t=(1-Be)*b,H.attr("d",Kv(q))}else $e();else!g||ze0){var Me;if(d.isSubplotConstrained||!x&&g.length===1){for(Me=0;Me1&&($e.maxallowed!==void 0&&A===($e.range[0]<$e.range[1]?"e":"w")||$e.minallowed!==void 0&&A===($e.range[0]<$e.range[1]?"w":"e"))&&(ar=1,J=0),Ke?(se=Re,ae=i||d.isSubplotConstrained?pe[1]:ye(Ve,se)):d.yaHash[Ve._id]?(se=Re,ae=pe[1]*Ve._length/p._length):d.xaHash[Ve._id]?(se=Me,ae=x==="ew"?-pe[0]*Ve._length/h._length:ye(Ve,se,{e:"right",w:"left"}[x])):(se=Te(Ve,Me,Re),ae=me(Ve,se)),se>1&&(Ve.maxallowed!==void 0&&v===(Ve.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function T$(e,r,t){return e?e==="nsew"?t?"":r==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function bS(e,r,t,n,a){return e.append("path").attr("class","zoombox").style({fill:r>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",pS(t,n)).attr("d",a+"Z")}function xS(e,r,t){return e.append("path").attr("class","zoombox-corners").style({fill:lS.background,stroke:lS.defaultLine,"stroke-width":1,opacity:0}).attr("transform",pS(r,t)).attr("d","M0,0Z")}function _S(e,r,t,n,a,o){e.attr("d",n+"M"+t.l+","+t.t+"v"+t.h+"h"+t.w+"v-"+t.h+"h-"+t.w+"Z"),wS(e,r,a,o)}function wS(e,r,t,n){t||(e.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),r.transition().style("opacity",1).duration(200))}function Iy(e){Fy.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function MS(e){fS&&e.data&&e._context.showTips&&(qa.notifier(qa._(e,"Double-click to zoom back out"),"long"),fS=!1)}function A$(e,r){return"M"+(e.l-.5)+","+(r-Xn-.5)+"h-3v"+(2*Xn+1)+"h3ZM"+(e.r+.5)+","+(r-Xn-.5)+"h3v"+(2*Xn+1)+"h-3Z"}function k$(e,r){return"M"+(r-Xn-.5)+","+(e.t-.5)+"v-3h"+(2*Xn+1)+"v3ZM"+(r-Xn-.5)+","+(e.b+.5)+"v3h"+(2*Xn+1)+"v-3Z"}function Kv(e){var r=Math.floor(Math.min(e.b-e.t,e.r-e.l,Xn)/2);return"M"+(e.l-3.5)+","+(e.t-.5+r)+"h3v"+-r+"h"+r+"v-3h-"+(r+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+r)+"h-3v"+-r+"h"+-r+"v-3h"+(r+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-r)+"h-3v"+r+"h"+-r+"v3h"+(r+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-r)+"h3v"+r+"h"+r+"v3h-"+(r+3)+"Z"}function vS(e,r,t,n,a){for(var o=!1,i={},l={},u,s,f,h,p=(a||{}).xaHash,_=(a||{}).yaHash,m=0;m{"use strict";var S$=it(),Qv=io(),C$=ni(),E$=Vo(),oi=kS().makeDragBox,fn=_n().DRAGGERSIZE;$v.initInteractions=function(r){var t=r._fullLayout;if(r._context.staticPlot){S$.select(r).selectAll(".drag").remove();return}if(!(!t._has("cartesian")&&!t._has("splom"))){var n=Object.keys(t._plots||{}).sort(function(o,i){if((t._plots[o].mainplot&&!0)===(t._plots[i].mainplot&&!0)){var l=o.split("y"),u=i.split("y");return l[0]===u[0]?Number(l[1]||1)-Number(u[1]||1):Number(l[0]||1)-Number(u[0]||1)}return t._plots[o].mainplot?1:-1});n.forEach(function(o){var i=t._plots[o],l=i.xaxis,u=i.yaxis;if(!i.mainplot){var s=oi(r,i,l._offset,u._offset,l._length,u._length,"ns","ew");s.onmousemove=function(p){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===o&&r._fullLayout._plots[o]&&Qv.hover(r,p,o)},Qv.hover(r,p,o),r._fullLayout._lasthover=s,r._fullLayout._hoversubplot=o},s.onmouseout=function(p){r._dragging||(r._fullLayout._hoversubplot=null,C$.unhover(r,p))},r._context.showAxisDragHandles&&(oi(r,i,l._offset-fn,u._offset-fn,fn,fn,"n","w"),oi(r,i,l._offset+l._length,u._offset-fn,fn,fn,"n","e"),oi(r,i,l._offset-fn,u._offset+u._length,fn,fn,"s","w"),oi(r,i,l._offset+l._length,u._offset+u._length,fn,fn,"s","e"))}if(r._context.showAxisDragHandles){if(o===l._mainSubplot){var f=l._mainLinePosition;l.side==="top"&&(f-=fn),oi(r,i,l._offset+l._length*.1,f,l._length*.8,fn,"","ew"),oi(r,i,l._offset,f,l._length*.1,fn,"","w"),oi(r,i,l._offset+l._length*.9,f,l._length*.1,fn,"","e")}if(o===u._mainSubplot){var h=u._mainLinePosition;u.side!=="right"&&(h-=fn),oi(r,i,h,u._offset+u._length*.1,fn,u._length*.8,"ns",""),oi(r,i,h,u._offset+u._length*.9,fn,u._length*.1,"s",""),oi(r,i,h,u._offset,fn,u._length*.1,"n","")}}});var a=t._hoverlayer.node();a.onmousemove=function(o){o.target=r._fullLayout._lasthover,Qv.hover(r,o,t._hoversubplot)},a.onclick=function(o){o.target=r._fullLayout._lasthover,Qv.click(r,o)},a.onmousedown=function(o){r._fullLayout._lasthover.onmousedown(o)},$v.updateFx(r)}};$v.updateFx=function(e){var r=e._fullLayout,t=r.dragmode==="pan"?"move":"crosshair";E$(r._draggers,t)}});var ES=de((dve,CS)=>{"use strict";var SS=Cr();CS.exports=function(r){for(var t=SS.layoutArrayContainers,n=SS.layoutArrayRegexes,a=r.split("[")[0],o,i,l=0;l{"use strict";var L$=wo(),qy=qc(),v0=kl(),D$=Pp().sorterAsc,Oy=Cr();d0.containerArrayMatch=ES();var R$=d0.isAddVal=function(r){return r==="add"||L$(r)},LS=d0.isRemoveVal=function(r){return r===null||r==="remove"};d0.applyContainerArrayChanges=function(r,t,n,a,o){var i=t.astr,l=Oy.getComponentMethod(i,"supplyLayoutDefaults"),u=Oy.getComponentMethod(i,"draw"),s=Oy.getComponentMethod(i,"drawOne"),f=a.replot||a.recalc||l===qy||u===qy,h=r.layout,p=r._fullLayout;if(n[""]){Object.keys(n).length>1&&v0.warn("Full array edits are incompatible with other edits",i);var _=n[""][""];if(LS(_))t.set(null);else if(Array.isArray(_))t.set(_);else return v0.warn("Unrecognized full array edit value",i,_),!0;return f?!1:(l(h,p),u(r),!0)}var m=Object.keys(n).map(Number).sort(D$),w=t.get(),T=w||[],y=o(p,i).get(),k=[],S=-1,b=T.length,M,d,x,g,c,A,v,D;for(M=0;MT.length-(v?0:1)){v0.warn("index out of range",i,x);continue}if(A!==void 0)c.length>1&&v0.warn("Insertion & removal are incompatible with edits to the same index.",i,x),LS(A)?k.push(x):v?(A==="add"&&(A={}),T.splice(x,0,A),y&&y.splice(x,0,{})):v0.warn("Unrecognized full object edit value",i,x,A),S===-1&&(S=x);else for(d=0;d=0;M--)T.splice(k[M],1),y&&y.splice(k[M],1);if(T.length?w||t.set(T):t.set(null),f)return!1;if(l(h,p),s!==qy){var E;if(S===-1)E=m;else{for(b=Math.max(T.length,b),E=[],M=0;M=S));M++)E.push(x);for(M=S;M{"use strict";var FS=nt(),NS=Cr(),Vn=ir(),p0=on(),zS=jt(),qS=Xr(),g0=zS.cleanId,P$=zS.getFromTrace,By=NS.traceIs,I$=["x","y","z"];Oa.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&Vn.log("Clearing previous rejected promises from queue."),e._promises=[]};Oa.cleanLayout=function(e){var r,t;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var n=(p0.subplotsRegistry.cartesian||{}).attrRegex,a=(p0.subplotsRegistry.polar||{}).attrRegex,o=(p0.subplotsRegistry.ternary||{}).attrRegex,i=(p0.subplotsRegistry.gl3d||{}).attrRegex,l=Object.keys(e);for(r=0;r3?(T.x=1.02,T.xanchor="left"):T.x<-2&&(T.x=-.02,T.xanchor="right"),T.y>3?(T.y=1.02,T.yanchor="bottom"):T.y<-2&&(T.y=-.02,T.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),qS.clean(e),e.template&&e.template.layout&&Oa.cleanLayout(e.template.layout),e};function wu(e,r){var t=e[r],n=r.charAt(0);t&&t!=="paper"&&(e[r]=g0(t,n,!0))}Oa.cleanData=function(e){for(var r=0;r0)return e.substr(0,r)}Oa.hasParent=function(e,r){for(var t=IS(r);t;){if(t in e)return!0;t=IS(t)}return!1};Oa.clearAxisTypes=function(e,r,t){for(var n=0;n{let t=(...n)=>n.every(a=>Vn.isPlainObject(a))||n.every(a=>Array.isArray(a));if([e,r].every(n=>Array.isArray(n))){if(e.length!==r.length)return!1;for(let n=0;nVn.isPlainObject(n))){if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let n in e){if(n.startsWith("_"))continue;let a=e[n],o=r[n];if(a!==o&&!(t(a,o)?Uy(a,o):!1))return!1}return!0}return!1};Oa.collectionsAreEqual=Uy});var Xy=de(et=>{"use strict";var t1=it(),z$=nt(),q$=Wp(),dr=ir(),wt=dr.nestedProperty,Gy=Mf(),Zn=gw(),Ba=Cr(),u1=Ys(),Lr=on(),Gn=Lt(),O$=d2(),B$=La(),Hy=mt(),U$=Xr(),H$=zy().initInteractions,V$=Fo(),G$=_u().clearOutline,GS=Al().dfltConfig,e1=DS(),Gt=OS(),ht=Iv(),Jo=zn(),Y$=_n().AX_NAME_PATTERN,Vy=0,BS=5;function W$(e,r,t,n){var a;if(e=dr.getGraphDiv(e),Gy.init(e),dr.isPlainObject(r)){var o=r;r=o.data,t=o.layout,n=o.config,a=o.frames}var i=Gy.triggerHandler(e,"plotly_beforeplot",[r,t,n]);if(i===!1)return Promise.reject();!r&&!t&&!dr.isPlotDiv(e)&&dr.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function l(){if(a)return et.addFrames(e,a)}WS(e,n),t||(t={}),t1.select(e).classed("js-plotly-plot",!0),Hy.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var u=(e.data||[]).length===0&&Array.isArray(r);Array.isArray(r)&&(Gt.cleanData(r),u?e.data=r:e.data.push.apply(e.data,r),e.empty=!1),(!e.layout||u)&&(e.layout=Gt.cleanLayout(t)),Lr.supplyDefaults(e);var s=e._fullLayout,f=s._has("cartesian");s._replotting=!0,(u||s._shouldCreateBgLayer)&&(pj(e),s._shouldCreateBgLayer&&delete s._shouldCreateBgLayer),Hy.initGradients(e),Hy.initPatterns(e),u&&Gn.saveShowSpikeInitial(e);var h=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;h&&Lr.doCalcdata(e);for(var p=0;p=e.data.length||a<-e.data.length)throw new Error(t+" must be valid indices for gd.data.");if(r.indexOf(a,n+1)>-1||a>=0&&r.indexOf(-e.data.length+a)>-1||a<0&&r.indexOf(e.data.length+a)>-1)throw new Error("each index in "+t+" must be unique.")}}function XS(e,r,t){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(r)||(r=[r]),a1(e,r,"currentIndices"),typeof t!="undefined"&&!Array.isArray(t)&&(t=[t]),typeof t!="undefined"&&a1(e,t,"newIndices"),typeof t!="undefined"&&r.length!==t.length)throw new Error("current and new indices must be of equal length.")}function Q$(e,r,t){var n,a;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("traces must be defined.");for(Array.isArray(r)||(r=[r]),n=0;n=0&&f=0&&f0&&typeof g.parts[v]!="string";)v--;var D=g.parts[v],E=g.parts[v-1]+"."+D,R=g.parts.slice(0,v).join("."),N=wt(e.layout,R).get(),F=wt(n,R).get(),I=g.get();if(c!==void 0){y[x]=c,k[x]=D==="reverse"?c:uo(I);var L=u1.getLayoutValObject(n,g.parts);if(L&&L.impliedEdits&&c!==null)for(var P in L.impliedEdits)S(dr.relativeAttr(x,P),L.impliedEdits[P]);if(["width","height"].indexOf(x)!==-1)if(c){S("autosize",null);var O=x==="height"?"width":"height";S(O,n[O])}else n[x]=e._initialAutoSize[x];else if(x==="autosize")S("width",c?null:n.width),S("height",c?null:n.height);else if(E.match(tC))d(E),wt(n,R+"._inputRange").set(null);else if(E.match(nC)){d(E),wt(n,R+"._inputRange").set(null);var U=wt(n,R).get();U._inputDomain&&(U._input.domain=U._inputDomain.slice())}else E.match(rj)&&wt(n,R+"._inputDomain").set(null);if(D==="type"){M=N;var X=F.type==="linear"&&c==="log",$=F.type==="log"&&c==="linear";if(X||$){if(!M||!M.range)S(R+".autorange",!0);else if(F.autorange)X&&(M.range=M.range[1]>M.range[0]?[1,2]:[2,1]);else{var j=M.range[0],Y=M.range[1];X?(j<=0&&Y<=0&&S(R+".autorange",!0),j<=0?j=Y/1e6:Y<=0&&(Y=j/1e6),S(R+".range[0]",Math.log(j)/Math.LN10),S(R+".range[1]",Math.log(Y)/Math.LN10)):(S(R+".range[0]",Math.pow(10,j)),S(R+".range[1]",Math.pow(10,Y)))}Array.isArray(n._subplots.polar)&&n._subplots.polar.length&&n[g.parts[0]]&&g.parts[1]==="radialaxis"&&delete n[g.parts[0]]._subplot.viewInitial["radialaxis.range"],Ba.getComponentMethod("annotations","convertCoords")(e,F,c,S),Ba.getComponentMethod("images","convertCoords")(e,F,c,S)}else S(R+".autorange",!0),S(R+".range",null);wt(n,R+"._inputRange").set(null)}else if(D.match(Y$)){var q=wt(n,x).get(),K=(c||{}).type;(!K||K==="-")&&(K="linear"),Ba.getComponentMethod("annotations","convertCoords")(e,q,K,S),Ba.getComponentMethod("images","convertCoords")(e,q,K,S)}var ne=e1.containerArrayMatch(x);if(ne){f=ne.array,h=ne.index;var Q=ne.property,oe=L||{editType:"calc"};h!==""&&Q===""&&(e1.isAddVal(c)?k[x]=null:e1.isRemoveVal(c)?k[x]=(wt(t,f).get()||[])[h]:dr.warn("unrecognized full object value",r)),Jo.update(T,oe),s[f]||(s[f]={});var re=s[f][h];re||(re=s[f][h]={}),re[Q]=c,delete r[x]}else D==="reverse"?(N.range?N.range.reverse():(S(R+".autorange",!0),N.range=[1,0]),F.autorange?T.calc=!0:T.plot=!0):(x==="dragmode"&&(c===!1&&I!==!1||c!==!1&&I===!1)||n._has("scatter-like")&&n._has("regl")&&x==="dragmode"&&(c==="lasso"||c==="select")&&!(I==="lasso"||I==="select")?T.plot=!0:L?Jo.update(T,L):T.calc=!0,g.set(c))}}for(f in s){var H=e1.applyContainerArrayChanges(e,o(t,f),s[f],T,o);H||(T.plot=!0)}for(var ee in b){M=Gn.getFromId(e,ee);var V=M&&M._constraintGroup;if(V){T.calc=!0;for(var te in V)b[te]||(Gn.getFromId(e,te)._constraintShrinkable=!0)}}(iC(e)||r.height||r.width)&&(T.plot=!0);var ue=n.shapes;for(h=0;h1;)if(n.pop(),t=wt(r,n.join(".")+".uirevision").get(),t!==void 0)return t;return r.uirevision}function aj(e,r){for(var t=0;t[R,e._ev.listeners(R)]);o=et.newPlot(e,r,t,n).then(()=>{for(let[R,N]of E)N.forEach(F=>e.on(R,F));return et.react(e,r,t,n)})}else{e.data=r||[],Gt.cleanData(e.data),e.layout=t||{},Gt.cleanLayout(e.layout),oj(e.data,e.layout,l,u),Lr.supplyDefaults(e,{skipUpdateCalc:!0});var h=e._fullData,p=e._fullLayout,_=p.datarevision===void 0,m=p.transition,w=uj(e,u,p,_,m),T=w.newDataRevision,y=sj(e,l,h,_,m,T);if(iC(e)&&(w.layoutReplot=!0),y.calc||w.calc){e.calcdata=void 0;for(var k=Object.getOwnPropertyNames(p),S=0;S(f||e.emit("plotly_react",{config:n,data:r,layout:t}),e))}function sj(e,r,t,n,a,o){var i=r.length===t.length;if(!a&&!i)return{fullReplot:!0,calc:!0};var l=Jo.traceFlags();l.arrays={},l.nChanges=0,l.nChangesAnim=0;var u,s;function f(_){var m=u1.getTraceValObject(s,_);return!s._module.animatable&&m.anim&&(m.anim=!1),m}var h={getValObject:f,flags:l,immutable:n,transition:a,newDataRevision:o,gd:e},p={};for(u=0;u=a.length?a[0]:a[s]:a}function l(s){return Array.isArray(o)?s>=o.length?o[0]:o[s]:o}function u(s,f){var h=0;return function(){if(s&&++h===f)return s()}}return new Promise(function(s,f){function h(){if(n._frameQueue.length!==0){for(;n._frameQueue.length;){var D=n._frameQueue.pop();D.onInterrupt&&D.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function p(D){if(D.length!==0){for(var E=0;En._timeToNext&&m()};D()}var T=0;function y(D){return Array.isArray(a)?T>=a.length?D.transitionOpts=a[T]:D.transitionOpts=a[0]:D.transitionOpts=a,T++,D}var k,S,b=[],M=r==null,d=Array.isArray(r),x=!M&&!d&&dr.isPlainObject(r);if(x)b.push({type:"object",data:y(dr.extendFlat({},r))});else if(M||["string","number"].indexOf(typeof r)!==-1)for(k=0;k0&&AA)&&v.push(S);b=v}}b.length>0?p(b):(e.emit("plotly_animated"),s())})}function cj(e,r,t){if(e=dr.getGraphDiv(e),r==null)return Promise.resolve();if(!dr.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var n,a,o,i,l=e._transitionData._frames,u=e._transitionData._frameHash;if(!Array.isArray(r))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+r);var s=l.length+r.length*2,f=[],h={};for(n=r.length-1;n>=0;n--)if(dr.isPlainObject(r[n])){var p=r[n].name,_=(u[p]||h[p]||{}).name,m=r[n].name,w=u[_]||h[_];_&&m&&typeof m=="number"&&w&&Vyg.index?-1:x.index=0;n--){if(a=f[n].frame,typeof a.name=="number"&&dr.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!a.name)for(;u[a.name="frame "+e._transitionData._counter++];);if(u[a.name]){for(o=0;o=0;t--)n=r[t],o.push({type:"delete",index:n}),i.unshift({type:"insert",index:n,value:a[n]});var l=Lr.modifyFrames,u=Lr.modifyFrames,s=[e,i],f=[e,o];return Zn&&Zn.add(e,l,s,u,f),Lr.modifyFrames(e,o)}function vj(e){e=dr.getGraphDiv(e);var r=e._fullLayout||{},t=e._fullData||[];return Lr.cleanPlot([],{},t,r),Lr.purge(e),Gy.purge(e),r._container&&r._container.remove(),delete e._context,e}function dj(e){var r=e._fullLayout,t=e.getBoundingClientRect();if(!dr.equalDomRects(t,r._lastBBox)){var n=r._invTransform=dr.inverseTransformMatrix(dr.getFullTransformMatrix(e));r._invScaleX=Math.sqrt(n[0][0]*n[0][0]+n[0][1]*n[0][1]+n[0][2]*n[0][2]),r._invScaleY=Math.sqrt(n[1][0]*n[1][0]+n[1][1]*n[1][1]+n[1][2]*n[1][2]),r._lastBBox=t}}function pj(e){var r=t1.select(e),t=e._fullLayout;if(t._calcInverseTransform=dj,t._calcInverseTransform(e),t._container=r.selectAll(".plot-container").data([0]),t._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),t._paperdiv=t._container.selectAll(".svg-container").data([0]),t._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),t._glcontainer=t._paperdiv.selectAll(".gl-container").data([{}]),t._glcontainer.enter().append("div").classed("gl-container",!0),t._paperdiv.selectAll(".main-svg").remove(),t._paperdiv.select(".modebar-container").remove(),t._paper=t._paperdiv.insert("svg",":first-child").classed("main-svg",!0),t._toppaper=t._paperdiv.append("svg").classed("main-svg",!0),t._modebardiv=t._paperdiv.append("div"),delete t._modeBar,t._hoverpaper=t._paperdiv.append("svg").classed("main-svg",!0),!t._uid){var n={};t1.selectAll("defs").each(function(){this.id&&(n[this.id.split("-")[1]]=1)}),t._uid=dr.randstr(n)}t._paperdiv.selectAll(".main-svg").attr(V$.svgAttrs),t._defs=t._paper.append("defs").attr("id","defs-"+t._uid),t._clips=t._defs.append("g").classed("clips",!0),t._topdefs=t._toppaper.append("defs").attr("id","topdefs-"+t._uid),t._topclips=t._topdefs.append("g").classed("clips",!0),t._bgLayer=t._paper.append("g").classed("bglayer",!0),t._draggers=t._paper.append("g").classed("draglayer",!0);var a=t._paper.append("g").classed("layer-below",!0);t._imageLowerLayer=a.append("g").classed("imagelayer",!0),t._shapeLowerLayer=a.append("g").classed("shapelayer",!0),t._cartesianlayer=t._paper.append("g").classed("cartesianlayer",!0),t._polarlayer=t._paper.append("g").classed("polarlayer",!0),t._smithlayer=t._paper.append("g").classed("smithlayer",!0),t._ternarylayer=t._paper.append("g").classed("ternarylayer",!0),t._geolayer=t._paper.append("g").classed("geolayer",!0),t._funnelarealayer=t._paper.append("g").classed("funnelarealayer",!0),t._pielayer=t._paper.append("g").classed("pielayer",!0),t._iciclelayer=t._paper.append("g").classed("iciclelayer",!0),t._treemaplayer=t._paper.append("g").classed("treemaplayer",!0),t._sunburstlayer=t._paper.append("g").classed("sunburstlayer",!0),t._indicatorlayer=t._toppaper.append("g").classed("indicatorlayer",!0),t._glimages=t._paper.append("g").classed("glimages",!0);var o=t._toppaper.append("g").classed("layer-above",!0);t._imageUpperLayer=o.append("g").classed("imagelayer",!0),t._shapeUpperLayer=o.append("g").classed("shapelayer",!0),t._selectionLayer=t._toppaper.append("g").classed("selectionlayer",!0),t._infolayer=t._toppaper.append("g").classed("infolayer",!0),t._menulayer=t._toppaper.append("g").classed("menulayer",!0),t._zoomlayer=t._toppaper.append("g").classed("zoomlayer",!0),t._hoverlayer=t._hoverpaper.append("g").classed("hoverlayer",!0),t._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}et.animate=fj;et.addFrames=cj;et.deleteFrames=hj;et.addTraces=$S;et.deleteTraces=jS;et.extendTraces=KS;et.moveTraces=Yy;et.prependTraces=QS;et.newPlot=K$;et._doPlot=W$;et.purge=vj;et.react=lj;et.redraw=J$;et.relayout=y0;et.restyle=i1;et.setPlotConfig=X$;et.update=l1;et._guiRelayout=Wy(y0);et._guiRestyle=Wy(i1);et._guiUpdate=Wy(l1);et._storeDirectGUIEdit=ej});var es=de(Oi=>{"use strict";var gj=Cr();Oi.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Oi.getRedrawFunc=function(e){return function(){gj.getComponentMethod("colorbar","draw")(e)}};Oi.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Oi.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var oC=window.URL||window.webkitURL;Oi.createObjectURL=function(e){return oC.createObjectURL(e)};Oi.revokeObjectURL=function(e){return oC.revokeObjectURL(e)};Oi.createBlob=function(e,r){if(r==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(r==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var t=yj(window.atob(e));return new window.Blob([t],{type:"image/"+r})};Oi.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function yj(e){for(var r=e.length,t=new ArrayBuffer(r),n=new Uint8Array(t),a=0;a{"use strict";var Jy=it(),bve=ir(),mj=mt(),bj=Xr(),xve=Fo(),Zy=/"/g,b0="TOBESTRIPPED",xj=new RegExp('("'+b0+")|("+b0+'")',"g");function _j(e){var r=Jy.select("body").append("div").style({display:"none"}).html(""),t=e.replace(/(&[^;]*;)/gi,function(n){return n==="<"?"<":n==="&rt;"?">":n.indexOf("<")!==-1||n.indexOf(">")!==-1?"":r.html(n).text()});return r.remove(),t}function wj(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}lC.exports=function(r,t,n){var a=r._fullLayout,o=a._paper,i=a._toppaper,l=a.width,u=a.height,s;o.insert("rect",":first-child").call(mj.setRect,0,0,l,u).call(bj.fill,a.paper_bgcolor);var f=a._basePlotModules||[];for(s=0;s{"use strict";var Mj=ir(),Tj=ih().EventEmitter,x0=es();function Aj(e){var r=e.emitter||new Tj,t=new Promise(function(n,a){var o=window.Image,i=e.svg,l=e.format||"png",u=e.canvas,s=e.scale||1,f=e.width||300,h=e.height||150,p=s*f,_=s*h,m=u.getContext("2d",{willReadFrequently:!0}),w=new o,T,y;l==="svg"||Mj.isSafari()?y=x0.encodeSVG(i):(T=x0.createBlob(i,"svg"),y=x0.createObjectURL(T)),u.width=p,u.height=_,w.onload=function(){var k;switch(T=null,x0.revokeObjectURL(y),l!=="svg"&&m.drawImage(w,0,0,p,_),l){case"jpeg":k=u.toDataURL("image/jpeg");break;case"png":k=u.toDataURL("image/png");break;case"webp":k=u.toDataURL("image/webp");break;case"svg":k=y;break;default:var S="Image format is not jpeg, png, svg or webp.";if(a(new Error(S)),!e.promise)return r.emit("error",S)}n(k),e.promise||r.emit("success",k)},w.onerror=function(k){if(T=null,x0.revokeObjectURL(y),a(k),!e.promise)return r.emit("error",k)},w.src=y});return e.promise?t:r}sC.exports=Aj});var Qy=de((Mve,cC)=>{"use strict";var uC=nt(),fC=Xy(),kj=on(),Bi=ir(),_0=es(),Sj=c1(),Cj=h1(),Ej=_c().version,Ky={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function Lj(e,r){r=r||{};var t,n,a,o;Bi.isPlainObject(e)?(t=e.data||[],n=e.layout||{},a=e.config||{},o={}):(e=Bi.getGraphDiv(e),t=Bi.extendDeep([],e.data),n=Bi.extendDeep({},e.layout),a=e._context,o=e._fullLayout||{});function i(d){return!(d in r)||Bi.validate(r[d],Ky[d])}if(!i("width")&&r.width!==null||!i("height")&&r.height!==null)throw new Error("Height and width should be pixel values.");if(!i("format"))throw new Error("Export format is not "+Bi.join2(Ky.format.values,", "," or ")+".");var l={};function u(d,x){return Bi.coerce(r,l,Ky,d,x)}var s=u("format"),f=u("width"),h=u("height"),p=u("scale"),_=u("setBackground"),m=u("imageDataOnly"),w=document.createElement("div");w.style.position="absolute",w.style.left="-5000px",document.body.appendChild(w);var T=Bi.extendFlat({},n);f?T.width=f:r.width===null&&uC(o.width)&&(T.width=o.width),h?T.height=h:r.height===null&&uC(o.height)&&(T.height=o.height);var y=Bi.extendFlat({},a,{_exportedPlot:!0,staticPlot:!0,setBackground:_}),k=_0.getRedrawFunc(w);function S(){return new Promise(function(d){setTimeout(d,_0.getDelay(w._fullLayout))})}function b(){return new Promise(function(d,x){var g=Sj(w,s,p),c=w._fullLayout.width,A=w._fullLayout.height;function v(){fC.purge(w),document.body.removeChild(w)}if(s==="full-json"){var D=kj.graphJson(w,!1,"keepdata","object",!0,!0);return D.version=Ej,D=JSON.stringify(D),v(),d(m?D:_0.encodeJSON(D))}if(v(),s==="svg")return d(m?g:_0.encodeSVG(g));var E=document.createElement("canvas");E.id=Bi.randstr(),Cj({format:s,width:c,height:A,scale:p,canvas:E,svg:g,promise:!0}).then(d).catch(x)})}function M(d){return m?d.replace(_0.IMAGE_URL_PREFIX,""):d}return new Promise(function(d,x){fC.newPlot(w,t,T,y).then(k).then(S).then(b).then(function(g){d(M(g))}).catch(function(g){x(g)})})}cC.exports=Lj});var dC=de((Tve,vC)=>{"use strict";var Ua=ir(),Dj=on(),Rj=Ys(),Pj=Al().dfltConfig,li=Ua.isPlainObject,ts=Array.isArray,$y=Ua.isArrayOrTypedArray;vC.exports=function(r,t){r===void 0&&(r=[]),t===void 0&&(t={});var n=Rj.get(),a=[],o={_context:Ua.extendFlat({},Pj)},i,l;ts(r)?(o.data=Ua.extendDeep([],r),i=r):(o.data=[],i=[],a.push(cn("array","data"))),li(t)?(o.layout=Ua.extendDeep({},t),l=t):(o.layout={},l={},arguments.length>1&&a.push(cn("object","layout"))),Dj.supplyDefaults(o);for(var u=o._fullData,s=i.length,f=0;fh.length&&n.push(cn("unused",a,s.concat(h.length)));var y=h.length,k=Array.isArray(T);k&&(y=Math.min(y,T.length));var S,b,M,d,x;if(p.dimensions===2)for(b=0;bh[b].length&&n.push(cn("unused",a,s.concat(b,h[b].length)));var g=h[b].length;for(S=0;S<(k?Math.min(g,T[b].length):g);S++)M=k?T[b][S]:T,d=f[b][S],x=h[b][S],Ua.validate(d,M)?x!==d&&x!==+d&&n.push(cn("dynamic",a,s.concat(b,S),d,x)):n.push(cn("value",a,s.concat(b,S),d))}else n.push(cn("array",a,s.concat(b),f[b]));else for(b=0;b{"use strict";var Bj=ir(),d1=es();function Uj(e,r,t){var n=document.createElement("a"),a="download"in n,o=new Promise(function(i,l){var u,s;if(a)return u=d1.createBlob(e,t),s=d1.createObjectURL(u),n.href=s,n.download=r,document.body.appendChild(n),n.click(),document.body.removeChild(n),d1.revokeObjectURL(s),u=null,i(r);if(Bj.isSafari()){var f=t==="svg"?",":";base64,";return d1.octetStream(f+encodeURIComponent(e)),i(r)}l(new Error("download error"))});return o}pC.exports=Uj});var jy=de((Sve,mC)=>{"use strict";var yC=ir(),Hj=Qy(),Vj=gC(),kve=es();function Gj(e,r){var t;return yC.isPlainObject(e)||(t=yC.getGraphDiv(e)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(n,a){t&&t._snapshotInProgress&&a(new Error("Snapshotting already in progress.")),t&&(t._snapshotInProgress=!0);var o=Hj(e,r),i=r.filename||e.fn||"newplot";i+="."+r.format.replace("-","."),o.then(function(l){return t&&(t._snapshotInProgress=!1),Vj(l,i,r.format)}).then(function(l){n(l)}).catch(function(l){t&&(t._snapshotInProgress=!1),a(l)})})}mC.exports=Gj});var MC=de(em=>{"use strict";var fa=ir(),ca=fa.isPlainObject,bC=Ys(),xC=on(),Yj=Sn(),_C=yt(),wC=Al().dfltConfig;em.makeTemplate=function(e){e=fa.isPlainObject(e)?e:fa.getGraphDiv(e),e=fa.extendDeep({_context:wC},{data:e.data,layout:e.layout}),xC.supplyDefaults(e);var r=e.data||[],t=e.layout||{};t._basePlotModules=e._fullLayout._basePlotModules,t._modules=e._fullLayout._modules;var n={data:{},layout:{}};r.forEach(function(_){var m={};w0(_,m,Xj.bind(null,_));var w=fa.coerce(_,{},Yj,"type"),T=n.data[w];T||(T=n.data[w]=[]),T.push(m)}),w0(t,n.layout,Wj.bind(null,t)),delete n.layout.template;var a=t.template;if(ca(a)){var o=a.layout,i,l,u,s,f,h;ca(o)&&p1(o,n.layout);var p=a.data;if(ca(p)){for(l in n.data)if(u=p[l],Array.isArray(u)){for(f=n.data[l],h=f.length,s=u.length,i=0;iy?i.push({code:"unused",traceType:_,templateCount:T,dataCount:y}):y>T&&i.push({code:"reused",traceType:_,templateCount:T,dataCount:y})}}function k(S,b){for(var M in S)if(M.charAt(0)!=="_"){var d=S[M],x=Ha(S,M,b);ca(d)?(Array.isArray(S)&&d._template===!1&&d.templateitemname&&i.push({code:"missing",path:x,templateitemname:d.templateitemname}),k(d,x)):Array.isArray(d)&&Zj(d)&&k(d,x)}}if(k({data:u,layout:l},""),i.length)return i.map(Jj)};function Zj(e){for(var r=0;r{"use strict";var rn=Xy();Ct._doPlot=rn._doPlot;Ct.newPlot=rn.newPlot;Ct.restyle=rn.restyle;Ct.relayout=rn.relayout;Ct.redraw=rn.redraw;Ct.update=rn.update;Ct._guiRestyle=rn._guiRestyle;Ct._guiRelayout=rn._guiRelayout;Ct._guiUpdate=rn._guiUpdate;Ct._storeDirectGUIEdit=rn._storeDirectGUIEdit;Ct.react=rn.react;Ct.extendTraces=rn.extendTraces;Ct.prependTraces=rn.prependTraces;Ct.addTraces=rn.addTraces;Ct.deleteTraces=rn.deleteTraces;Ct.moveTraces=rn.moveTraces;Ct.purge=rn.purge;Ct.addFrames=rn.addFrames;Ct.deleteFrames=rn.deleteFrames;Ct.animate=rn.animate;Ct.setPlotConfig=rn.setPlotConfig;var Kj=pf().getGraphDiv,Qj=Sv().eraseActiveShape;Ct.deleteActiveShape=function(e){return Qj(Kj(e))};Ct.toImage=Qy();Ct.validate=dC();Ct.downloadImage=jy();var TC=MC();Ct.makeTemplate=TC.makeTemplate;Ct.validateTemplate=TC.validateTemplate});var SC=de((Lve,kC)=>{"use strict";var rm=ir(),$j=Cr();kC.exports=function(r,t,n,a){var o=a("x"),i=a("y"),l,u=$j.getComponentMethod("calendars","handleTraceDefaults");if(u(r,t,["x","y"],n),o){var s=rm.minRowLength(o);i?l=Math.min(s,rm.minRowLength(i)):(l=s,a("y0"),a("dy"))}else{if(!i)return 0;l=rm.minRowLength(i),a("x0"),a("dx")}return t._length=l,l}});var DC=de((Dve,LC)=>{"use strict";var CC=ir().dateTick0,jj=nn(),eee=jj.ONEWEEK;function EC(e,r){return e%eee===0?CC(r,1):CC(r,0)}LC.exports=function(r,t,n,a,o){if(o||(o={x:!0,y:!0}),o.x){var i=a("xperiod");i&&(a("xperiod0",EC(i,t.xcalendar)),a("xperiodalignment"))}if(o.y){var l=a("yperiod");l&&(a("yperiod0",EC(l,t.ycalendar)),a("yperiodalignment"))}}});var IC=de((Rve,PC)=>{"use strict";var RC=["orientation","groupnorm","stackgaps"];PC.exports=function(r,t,n,a){var o=n._scatterStackOpts,i=a("stackgroup");if(i){var l=t.xaxis+t.yaxis,u=o[l];u||(u=o[l]={});var s=u[i],f=!1;s?s.traces.push(t):(s=u[i]={traceIndices:[],traces:[t]},f=!0);for(var h={orientation:t.x&&!t.y?"h":"v"},p=0;p{"use strict";var FC=Xr(),NC=Si().hasColorscale,zC=Ei(),ree=oa();qC.exports=function(r,t,n,a,o,i){var l=ree.isBubble(r),u=(r.line||{}).color,s;if(i=i||{},u&&(n=u),o("marker.symbol"),o("marker.opacity",l?.7:1),o("marker.size"),i.noAngle||(o("marker.angle"),i.noAngleRef||o("marker.angleref"),i.noStandOff||o("marker.standoff")),o("marker.color",n),NC(r,"marker")&&zC(r,t,a,o,{prefix:"marker.",cLetter:"c"}),i.noSelect||(o("selected.marker.color"),o("unselected.marker.color"),o("selected.marker.size"),o("unselected.marker.size")),i.noLine||(u&&!Array.isArray(u)&&t.marker.color!==u?s=u:l?s=FC.background:s=FC.defaultLine,o("marker.line.color",s),NC(r,"marker.line")&&zC(r,t,a,o,{prefix:"marker.line.",cLetter:"c"}),o("marker.line.width",l?1:0)),l&&(o("marker.sizeref"),o("marker.sizemin"),o("marker.sizemode")),i.gradient){var f=o("marker.gradient.type");f!=="none"&&o("marker.gradient.color")}}});var nm=de((Ive,OC)=>{"use strict";var tee=ir().isArrayOrTypedArray,nee=Si().hasColorscale,aee=Ei();OC.exports=function(r,t,n,a,o,i){i||(i={});var l=(r.marker||{}).color;if(l&&l._inputArray&&(l=l._inputArray),o("line.color",n),nee(r,"line"))aee(r,t,a,o,{prefix:"line.",cLetter:"c"});else{var u=(tee(l)?!1:l)||n;o("line.color",u)}o("line.width"),i.noDash||o("line.dash"),i.backoff&&o("line.backoff")}});var UC=de((Fve,BC)=>{"use strict";BC.exports=function(r,t,n){var a=n("line.shape");a==="spline"&&n("line.smoothing")}});var am=de((Nve,HC)=>{"use strict";var iee=ir();HC.exports=function(e,r,t,n,a){a=a||{},n("textposition"),iee.coerceFont(n,"textfont",a.font||t.font,a),a.noSelect||(n("selected.textfont.color"),n("unselected.textfont.color"))}});var YC=de((zve,GC)=>{"use strict";var y1=Xr(),VC=ir().isArrayOrTypedArray;function oee(e){for(var r=y1.interpolate(e[0][1],e[1][1],.5),t=2;t{"use strict";var WC=ir(),lee=Cr(),see=jl(),uee=Gv(),Mu=oa(),fee=SC(),cee=DC(),hee=IC(),vee=tm(),dee=nm(),XC=UC(),pee=am(),gee=YC(),yee=ir().coercePattern;ZC.exports=function(r,t,n,a){function o(_,m){return WC.coerce(r,t,see,_,m)}var i=fee(r,t,a,o);if(i||(t.visible=!1),!!t.visible){cee(r,t,a,o),o("xhoverformat"),o("yhoverformat"),o("zorder");var l=hee(r,t,a,o);a.scattermode==="group"&&t.orientation===void 0&&o("orientation","v");var u=!l&&i{"use strict";var mee=Zf().getAxisGroup;KC.exports=function(r,t,n,a,o){var i=t.orientation,l=t[{v:"x",h:"y"}[i]+"axis"],u=mee(n,l)+i,s=n._alignmentOpts||{},f=a("alignmentgroup"),h=s[u];h||(h=s[u]={});var p=h[f];p?p.traces.push(t):p=h[f]={traces:[t],alignmentIndex:Object.keys(h).length,offsetGroups:{}};var _=a("offsetgroup")||"",m=p.offsetGroups,w=m[_];t._offsetIndex=0,(o!=="group"||_)&&(w||(w=m[_]={offsetIndex:Object.keys(m).length}),t._offsetIndex=w.offsetIndex)}});var jC=de((Bve,$C)=>{"use strict";var bee=ir(),xee=QC(),_ee=jl();$C.exports=function(r,t){var n,a,o,i=t.scattermode;function l(p){return bee.coerce(a._input,a,_ee,p)}if(t.scattermode==="group")for(o=0;o=0;f--){var h=r[f];if(h.type==="scatter"&&h.xaxis===u.xaxis&&h.yaxis===u.yaxis){h.opacity=void 0;break}}}}}});var rE=de((Uve,eE)=>{"use strict";var wee=ir(),Mee=fh();eE.exports=function(e,r){function t(a,o){return wee.coerce(e,r,Mee,a,o)}var n=r.barmode==="group";r.scattermode==="group"&&t("scattergap",n?r.bargap:.2)}});var aE=de((Hve,nE)=>{"use strict";var Tee=nt(),tE=ir(),Aee=tE.dateTime2ms,m1=tE.incrementMonth,kee=nn(),See=kee.ONEAVGMONTH;nE.exports=function(r,t,n,a){if(t.type!=="date")return{vals:a};var o=r[n+"periodalignment"];if(!o)return{vals:a};var i=r[n+"period"],l;if(Tee(i)){if(i=+i,i<=0)return{vals:a}}else if(typeof i=="string"&&i.charAt(0)==="M"){var u=+i.substring(1);if(u>0&&Math.round(u)===u)l=u;else return{vals:a}}for(var s=t.calendar,f=o==="start",h=o==="end",p=r[n+"period0"],_=Aee(p,s)||0,m=[],w=[],T=[],y=a.length,k=0;kS;)d=m1(d,-l,s);for(;d<=S;)d=m1(d,l,s);M=m1(d,-l,s)}else{for(b=Math.round((S-_)/i),d=_+b*i;d>S;)d-=i;for(;d<=S;)d+=i;M=d-i}m[k]=f?M:h?d:(M+d)/2,w[k]=M,T[k]=d}return{vals:m,starts:w,ends:T}}});var lm=de((Vve,oE)=>{"use strict";var im=Si().hasColorscale,om=zo(),iE=oa();oE.exports=function(r,t){iE.hasLines(t)&&im(t,"line")&&om(r,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),iE.hasMarkers(t)&&(im(t,"marker")&&om(r,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),im(t,"marker.line")&&om(r,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var b1=de((Gve,lE)=>{"use strict";var Nt=ir();lE.exports=function(r,t){for(var n=0;n{"use strict";var sE=ir();uE.exports=function(r,t){sE.isArrayOrTypedArray(t.selectedpoints)&&sE.tagSelected(r,t)}});var hm=de((Wve,yE)=>{"use strict";var cE=nt(),um=ir(),M0=Lt(),hE=aE(),sm=nn().BADNUM,fm=oa(),Cee=lm(),Eee=b1(),Lee=fE();function Dee(e,r){var t=e._fullLayout,n=r._xA=M0.getFromId(e,r.xaxis||"x","x"),a=r._yA=M0.getFromId(e,r.yaxis||"y","y"),o=n.makeCalcdata(r,"x"),i=a.makeCalcdata(r,"y"),l=hE(r,n,"x",o),u=hE(r,a,"y",i),s=l.vals,f=u.vals,h=r._length,p=new Array(h),_=r.ids,m=cm(r,t,n,a),w=!1,T,y,k,S,b,M;pE(t,r);var d="x",x="y",g;if(m)um.pushUnique(m.traceIndices,r.index),T=m.orientation==="v",T?(x="s",g="x"):(d="s",g="y"),b=m.stackgaps==="interpolate";else{var c=dE(r,h);vE(e,r,n,a,s,f,c)}var A=!!r.xperiodalignment,v=!!r.yperiodalignment;for(y=0;yy&&p[S].gap;)S--;for(M=p[S].s,k=p.length-1;k>S;k--)p[k].s=M;for(;y{"use strict";mE.exports=x1;var Ree=ir().distinctVals;function x1(e,r){this.traces=e,this.sepNegVal=r.sepNegVal,this.overlapNoMerge=r.overlapNoMerge;for(var t=1/0,n=r.posAxis._id.charAt(0),a=[],o=0;o{"use strict";var Va=nt(),Ko=ir().isArrayOrTypedArray,Tu=nn().BADNUM,Pee=Cr(),T0=Lt(),Iee=Zf().getAxisGroup,_1=bE();function Fee(e,r){for(var t=r.xaxis,n=r.yaxis,a=e._fullLayout,o=e._fullData,i=e.calcdata,l=[],u=[],s=0;su+i||!Va(l))}for(var f=0;f{"use strict";var AE=hm(),kE=TE().setGroupPositions;function Xee(e,r){for(var t=r.xaxis,n=r.yaxis,a=e._fullLayout,o=e._fullData,i=e.calcdata,l=[],u=[],s=0;sc[f]&&f{"use strict";var Jee=mt(),RE=nn(),A0=RE.BADNUM,PE=RE.LOG_CLIP,EE=PE+.5,LE=PE-.5,w1=ir(),Kee=w1.segmentsIntersect,DE=w1.constrain,mm=Gv();IE.exports=function(r,t){var n=t.trace||{},a=t.xaxis,o=t.yaxis,i=a.type==="log",l=o.type==="log",u=a._length,s=o._length,f=t.backoff,h=n.marker,p=t.connectGaps,_=t.baseTolerance,m=t.shape,w=m==="linear",T=n.fill&&n.fill!=="none",y=[],k=mm.minTolerance,S=r.length,b=new Array(S),M=0,d,x,g,c,A,v,D,E,R,N,F,I,L,P,O,U;function X(Ye){var Me=r[Ye];if(!Me)return!1;var Re=t.linearized?a.l2p(Me.x):a.c2p(Me.x),Qe=t.linearized?o.l2p(Me.y):o.c2p(Me.y);if(Re===A0){if(i&&(Re=a.c2p(Me.x,!0)),Re===A0)return!1;l&&Qe===A0&&(Re*=Math.abs(a._m*s*(a._m>0?EE:LE)/(o._m*u*(o._m>0?EE:LE)))),Re*=1e3}if(Qe===A0){if(l&&(Qe=o.c2p(Me.y,!0)),Qe===A0)return!1;Qe*=1e3}return[Re,Qe]}function $(Ye,Me,Re,Qe){var Ke=Re-Ye,ar=Qe-Me,se=.5-Ye,J=.5-Me,ae=Ke*Ke+ar*ar,De=Ke*se+ar*J;if(De>0&&De1||Math.abs(se.y-Re[0][1])>1)&&(se=[se.x,se.y],Qe&&K(se,Ye)oe||Ye[1]H)return[DE(Ye[0],Q,oe),DE(Ye[1],re,H)]}function Ce(Ye,Me){if(Ye[0]===Me[0]&&(Ye[0]===Q||Ye[0]===oe)||Ye[1]===Me[1]&&(Ye[1]===re||Ye[1]===H))return!0}function Pe(Ye,Me){var Re=[],Qe=Ae(Ye),Ke=Ae(Me);return Qe&&Ke&&Ce(Qe,Ke)||(Qe&&Re.push(Qe),Ke&&Re.push(Ke)),Re}function Ee(Ye,Me,Re){return function(Qe,Ke){var ar=Ae(Qe),se=Ae(Ke),J=[];if(ar&&se&&Ce(ar,se))return J;ar&&J.push(ar),se&&J.push(se);var ae=2*w1.constrain((Qe[Ye]+Ke[Ye])/2,Me,Re)-((ar||Qe)[Ye]+(se||Ke)[Ye]);if(ae){var De;ar&&se?De=ae>0==ar[Ye]>se[Ye]?ar:se:De=ar||se,De[Ye]+=ae}return J}}var Ne;m==="linear"||m==="spline"?Ne=he:m==="hv"||m==="vh"?Ne=Pe:m==="hvh"?Ne=Ee(0,Q,oe):m==="vhv"&&(Ne=Ee(1,re,H));function Ue(Ye,Me){var Re=Me[0]-Ye[0],Qe=(Me[1]-Ye[1])/Re,Ke=(Ye[1]*Me[0]-Me[1]*Ye[0])/Re;return Ke>0?[Qe>0?Q:oe,H]:[Qe>0?oe:Q,re]}function ge(Ye){var Me=Ye[0],Re=Ye[1],Qe=Me===b[M-1][0],Ke=Re===b[M-1][1];if(!(Qe&&Ke))if(M>1){var ar=Me===b[M-2][0],se=Re===b[M-2][1];Qe&&(Me===Q||Me===oe)&&ar?se?M--:b[M-1]=Ye:Ke&&(Re===re||Re===H)&&se?ar?M--:b[M-1]=Ye:b[M++]=Ye}else b[M++]=Ye}function we(Ye){b[M-1][0]!==Ye[0]&&b[M-1][1]!==Ye[1]&&ge([ue,ve]),ge(Ye),ke=null,ue=ve=0}var Te=w1.isArrayOrTypedArray(h);function me(Ye){if(Ye&&f&&(Ye.i=d,Ye.d=r,Ye.trace=n,Ye.marker=Te?h[Ye.i]:h,Ye.backoff=f),j=Ye[0]/u,Y=Ye[1]/s,V=Ye[0]oe?oe:0,te=Ye[1]H?H:0,V||te){if(!M)b[M++]=[V||Ye[0],te||Ye[1]];else if(ke){var Me=Ne(ke,Ye);Me.length>1&&(we(Me[0]),b[M++]=Me[1])}else Se=Ne(b[M-1],Ye)[0],b[M++]=Se;var Re=b[M-1];V&&te&&(Re[0]!==V||Re[1]!==te)?(ke&&(ue!==V&&ve!==te?ge(ue&&ve?Ue(ke,Ye):[ue||V,ve||te]):ue&&ve&&ge([ue,ve])),ge([V,te])):ue-V&&ve-te&&ge([V||ue,te||ve]),ke=Ye,ue=V,ve=te}else ke&&we(Ne(ke,Ye)[0]),b[M++]=Ye}for(d=0;dq(v,ye))break;g=v,L=R[0]*E[0]+R[1]*E[1],L>F?(F=L,c=v,D=!1):L=r.length||!v)break;me(v),x=v}}ke&&ge([ue||ke[0],ve||ke[1]]),y.push(b.slice(0,M))}var pe=m.slice(m.length-1);if(f&&pe!=="h"&&pe!=="v"){for(var ce=!1,be=-1,Le=[],qe=0;qe{"use strict";var NE={tonextx:1,tonexty:1,tonext:1};zE.exports=function(r,t,n){var a,o,i,l,u,s={},f=!1,h=-1,p=0,_=-1;for(o=0;o=0?u=_:(u=_=p,p++),u{"use strict";var si=it(),Qee=Cr(),k0=ir(),ku=k0.ensureSingle,BE=k0.identity,zt=mt(),Su=oa(),$ee=FE(),jee=qE(),M1=yy().tester;UE.exports=function(r,t,n,a,o,i){var l,u,s=!o,f=!!o&&o.duration>0,h=jee(r,t,n);if(l=a.selectAll("g.trace").data(h,function(_){return _[0].trace.uid}),l.enter().append("g").attr("class",function(_){return"trace scatter trace"+_[0].trace.uid}).style("stroke-miterlimit",2),l.order(),ere(r,l,t),f){i&&(u=i());var p=si.transition().duration(o.duration).ease(o.easing).each("end",function(){u&&u()}).each("interrupt",function(){u&&u()});p.each(function(){a.selectAll("g.trace").each(function(_,m){OE(r,m,t,_,h,this,o)})})}else l.each(function(_,m){OE(r,m,t,_,h,this,o)});s&&l.exit().remove(),a.selectAll("path:not([d])").remove()};function ere(e,r,t){r.each(function(n){var a=ku(si.select(this),"g","fills");zt.setClipUrl(a,t.layerClipId,e);var o=n[0].trace,i=[];o._ownfill&&i.push("_ownFill"),o._nexttrace&&i.push("_nextFill");var l=a.selectAll("g").data(i,BE);l.enter().append("g"),l.exit().each(function(u){o[u]=null}).remove(),l.order().each(function(u){o[u]=ku(si.select(this),"path","js-fill")})})}function OE(e,r,t,n,a,o,i){var l=e._context.staticPlot,u;rre(e,r,t,n,a);var s=!!i&&i.duration>0;function f(Ee){return s?Ee.transition():Ee}var h=t.xaxis,p=t.yaxis,_=n[0].trace,m=_.line,w=si.select(o),T=ku(w,"g","errorbars"),y=ku(w,"g","lines"),k=ku(w,"g","points"),S=ku(w,"g","text");if(Qee.getComponentMethod("errorbars","plot")(e,T,t,i),_.visible!==!0)return;f(w).style("opacity",_.opacity);var b,M,d=_.fill.charAt(_.fill.length-1);d!=="x"&&d!=="y"&&(d="");var x,g;d==="y"?(x=1,g=p.c2p(0,!0)):d==="x"&&(x=0,g=h.c2p(0,!0)),n[0][t.isRangePlot?"nodeRangePlot3":"node3"]=w;var c="",A=[],v=_._prevtrace,D=null,E=null;v&&(c=v._prevRevpath||"",M=v._nextFill,A=v._ownPolygons,D=v._fillsegments,E=v._fillElement);var R,N,F="",I="",L,P,O,U,X,$,j=[];_._polygons=[];var Y=[],q=[],K=k0.noop;if(b=_._ownFill,Su.hasLines(_)||_.fill!=="none"){M&&M.datum(n),["hv","vh","hvh","vhv"].indexOf(m.shape)!==-1?(L=zt.steps(m.shape),P=zt.steps(m.shape.split("").reverse().join(""))):m.shape==="spline"?L=P=function(Ee){var Ne=Ee[Ee.length-1];return Ee.length>1&&Ee[0][0]===Ne[0]&&Ee[0][1]===Ne[1]?zt.smoothclosed(Ee.slice(1),m.smoothing):zt.smoothopen(Ee,m.smoothing)}:L=P=function(Ee){return"M"+Ee.join("L")},O=function(Ee){return P(Ee.reverse())},q=$ee(n,{xaxis:h,yaxis:p,trace:_,connectGaps:_.connectgaps,baseTolerance:Math.max(m.width||1,3)/4,shape:m.shape,backoff:m.backoff,simplify:m.simplify,fill:_.fill}),Y=new Array(q.length);var ne=0;for(u=0;u=l[0]&&w.x<=l[1]&&w.y>=u[0]&&w.y<=u[1]}),p=Math.ceil(h.length/f),_=0;a.forEach(function(w,T){var y=w[0].trace;Su.hasMarkers(y)&&y.marker.maxdisplayed>0&&T{"use strict";VE.exports={container:"marker",min:"cmin",max:"cmax"}});var WE=de((e1e,YE)=>{"use strict";var T1=Lt();YE.exports=function(r,t,n){var a={},o={_fullLayout:n},i=T1.getFromTrace(o,t,"x"),l=T1.getFromTrace(o,t,"y"),u=r.orig_x;u===void 0&&(u=r.x);var s=r.orig_y;return s===void 0&&(s=r.y),a.xLabel=T1.tickText(i,i.c2l(u),!0).text,a.yLabel=T1.tickText(l,l.c2l(s),!0).text,a}});var wm=de((r1e,XE)=>{"use strict";var bm=it(),Cu=mt(),tre=Cr();function nre(e){var r=bm.select(e).selectAll("g.trace.scatter");r.style("opacity",function(t){return t[0].trace.opacity}),r.selectAll("g.points").each(function(t){var n=bm.select(this),a=t.trace||t[0].trace;xm(n,a,e)}),r.selectAll("g.text").each(function(t){var n=bm.select(this),a=t.trace||t[0].trace;_m(n,a,e)}),r.selectAll("g.trace path.js-line").call(Cu.lineGroupStyle),r.selectAll("g.trace path.js-fill").call(Cu.fillGroupStyle,e,!1),tre.getComponentMethod("errorbars","style")(r)}function xm(e,r,t){Cu.pointStyle(e.selectAll("path.point"),r,t)}function _m(e,r,t){Cu.textPointStyle(e.selectAll("text"),r,t)}function are(e,r,t){var n=r[0].trace;n.selectedpoints?(Cu.selectedPointStyle(t.selectAll("path.point"),n),Cu.selectedTextStyle(t.selectAll("text"),n)):(xm(t,n,e),_m(t,n,e))}XE.exports={style:nre,stylePoints:xm,styleText:_m,styleOnSelect:are}});var JE=de((t1e,ZE)=>{"use strict";var Eu=Xr(),ire=oa();ZE.exports=function(r,t){var n,a;if(r.mode==="lines")return n=r.line.color,n&&Eu.opacity(n)?n:r.fillcolor;if(r.mode==="none")return r.fill?r.fillcolor:"";var o=t.mcc||(r.marker||{}).color,i=t.mlcc||((r.marker||{}).line||{}).color;return a=o&&Eu.opacity(o)?o:i&&Eu.opacity(i)&&(t.mlw||((r.marker||{}).line||{}).width)?i:"",a?Eu.opacity(a)<.3?Eu.addOpacity(a,.3):a:(n=(r.line||{}).color,n&&Eu.opacity(n)&&ire.hasLines(r)&&r.line.width?n:r.fillcolor)}});var $E=de((n1e,QE)=>{"use strict";var A1=ir(),KE=io(),ore=Cr(),lre=JE(),Mm=Xr(),sre=A1.fillText;QE.exports=function(r,t,n,a){var o=r.cd,i=o[0].trace,l=r.xa,u=r.ya,s=l.c2p(t),f=u.c2p(n),h=[s,f],p=i.hoveron||"",_=i.mode.indexOf("markers")!==-1?3:.5,m=!!i.xperiodalignment,w=!!i.yperiodalignment;if(p.indexOf("points")!==-1){var T=function(I){if(m){var L=l.c2p(I.xStart),P=l.c2p(I.xEnd);return s>=Math.min(L,P)&&s<=Math.max(L,P)?0:1/0}var O=Math.max(3,I.mrc||0),U=1-1/O,X=Math.abs(l.c2p(I.x)-s);return X=Math.min(L,P)&&f<=Math.max(L,P)?0:1/0}var O=Math.max(3,I.mrc||0),U=1-1/O,X=Math.abs(u.c2p(I.y)-f);return Xj!=H>=j&&(Q=K[q-1][0],oe=K[q][0],H-re&&(ne=Q+(oe-Q)*(j-re)/(H-re),O=Math.min(O,ne),U=Math.max(U,ne)));return O=Math.max(O,0),U=Math.min(U,l._length),{x0:O,x1:U,y0:j,y1:j}}if(p.indexOf("fills")!==-1&&i._fillElement){var R=D(i._fillElement)&&!D(i._fillExclusionElement);if(R){var N=E(i._polygons);N===null&&(N={x0:h[0],x1:h[0],y0:h[1],y1:h[1]});var F=Mm.defaultLine;return Mm.opacity(i.fillcolor)?F=i.fillcolor:Mm.opacity((i.line||{}).color)&&(F=i.line.color),A1.extendFlat(r,{distance:r.maxHoverDistance,x0:N.x0,x1:N.x1,y0:N.y0,y1:N.y1,color:F,hovertemplate:!1}),delete r.index,i.text&&!A1.isArrayOrTypedArray(i.text)?r.text=String(i.text):r.text=i.name,[r]}}}});var rL=de((a1e,eL)=>{"use strict";var jE=oa();eL.exports=function(r,t){var n=r.cd,a=r.xaxis,o=r.yaxis,i=[],l=n[0].trace,u,s,f,h,p=!jE.hasMarkers(l)&&!jE.hasText(l);if(p)return[];if(t===!1)for(u=0;u{"use strict";tL.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var Am=de((o1e,oL)=>{"use strict";var S0=Cr().traceIs,Tm=Xg();oL.exports=function(r,t,n,a){n("autotypenumbers",a.autotypenumbersDflt);var o=n("type",(a.splomStash||{}).type);o==="-"&&(ure(t,a.data),t.type==="-"?t.type="linear":r.type=t.type)};function ure(e,r){if(e.type==="-"){var t=e._id,n=t.charAt(0),a;t.indexOf("scene")!==-1&&(t=n);var o=fre(r,t,n);if(o){if(o.type==="histogram"&&n==={v:"y",h:"x"}[o.orientation||"v"]){e.type="linear";return}var i=n+"calendar",l=o[i],u={noMultiCategory:!S0(o,"cartesian")||S0(o,"noMultiCategory")};if(o.type==="box"&&o._hasPreCompStats&&n==={h:"x",v:"y"}[o.orientation||"v"]&&(u.noMultiCategory=!0),u.autotypenumbers=e.autotypenumbers,iL(o,n)){var s=aL(o),f=[];for(a=0;a0&&(a["_"+t+"axes"]||{})[r])return a;if((a[t+"axis"]||t)===r){if(iL(a,t))return a;if((a[t]||[]).length||a[t+"0"])return a}}}function aL(e){return{v:"x",h:"y"}[e.orientation||"v"]}function iL(e,r){var t=aL(e),n=S0(e,"box-violin"),a=S0(e._fullInput||{},"candlestick");return n&&!a&&r===t&&e[t]===void 0&&e[t+"0"]===void 0}});var sL=de((l1e,lL)=>{"use strict";var cre=ea().isTypedArraySpec;function hre(e,r){var t=r.dataAttr||e._id.charAt(0),n={},a,o,i;if(r.axData)a=r.axData;else for(a=[],o=0;o0||cre(o),l;i&&(l="array");var u=n("categoryorder",l),s;u==="array"&&(s=n("categoryarray")),!i&&u==="array"&&(u=t.categoryorder="trace"),u==="trace"?t._initialCategories=[]:u==="array"?t._initialCategories=s.slice():(s=hre(t,a).sort(),u==="category ascending"?t._initialCategories=s:u==="category descending"&&(t._initialCategories=s.reverse()))}}});var cL=de((s1e,fL)=>{"use strict";var uL=ka().mix,vre=Ti(),dre=ir();fL.exports=function(r,t,n,a){a=a||{};var o=a.dfltColor;function i(g,c){return dre.coerce2(r,t,a.attributes,g,c)}var l=i("linecolor",o),u=i("linewidth"),s=n("showline",a.showLine||!!l||!!u);s||(delete t.linecolor,delete t.linewidth);var f=uL(o,a.bgColor,a.blend||vre.lightFraction).toRgbString(),h=i("gridcolor",f),p=i("gridwidth"),_=i("griddash"),m=n("showgrid",a.showGrid||!!h||!!p||!!_);if(m||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),a.hasMinor){var w=uL(t.gridcolor,a.bgColor,67).toRgbString(),T=i("minor.gridcolor",w),y=i("minor.gridwidth",t.gridwidth||1),k=i("minor.griddash",t.griddash||"solid"),S=n("minor.showgrid",!!T||!!y||!!k);S||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!a.noZeroLine){var b=i("zerolinelayer"),M=i("zerolinecolor",o),d=i("zerolinewidth"),x=n("zeroline",a.showGrid||!!M||!!d);x||(delete t.zerolinelayer,delete t.zerolinecolor,delete t.zerolinewidth)}}});var S1=de((u1e,yL)=>{"use strict";var hL=nt(),pre=Cr(),C0=ir(),gre=yt(),yre=ri(),km=La(),vL=gg(),dL=mg(),mre=_g(),bre=wg(),xre=sL(),_re=cL(),wre=d2(),pL=Fh(),k1=_n().WEEKDAY_PATTERN,Mre=_n().HOUR_PATTERN;yL.exports=function(r,t,n,a,o){var i=a.letter,l=a.font||{},u=a.splomStash||{},s=n("visible",!a.visibleDflt),f=t._template||{},h=t.type||f.type||"-",p;if(h==="date"){var _=pre.getComponentMethod("calendars","handleDefaults");_(r,t,"calendar",a.calendar),a.noTicklabelmode||(p=n("ticklabelmode"))}!a.noTicklabelindex&&(h==="date"||h==="linear")&&n("ticklabelindex");var m="";(!a.noTicklabelposition||h==="multicategory")&&(m=C0.coerce(r,t,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:p==="period"?["outside","inside"]:i==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),a.noTicklabeloverflow||n("ticklabeloverflow",m.indexOf("inside")!==-1?"hide past domain":h==="category"||h==="multicategory"?"allow":"hide past div"),pL(t,o),wre(r,t,n,a),xre(r,t,n,a),a.noHover||(h!=="category"&&n("hoverformat"),a.noUnifiedhovertitle||n("unifiedhovertitle.text"));var w=n("color"),T=w!==km.color.dflt?w:l.color,y=u.label||o._dfltTitle[i];if(bre(r,t,n,h,a),!s)return t;n("title.text",y),C0.coerceFont(n,"title.font",l,{overrideDflt:{size:C0.bigFont(l.size),color:T}}),vL(r,t,n,h);var k=a.hasMinor;if(k&&(gre.newContainer(t,"minor"),vL(r,t,n,h,{isMinor:!0})),mre(r,t,n,h,a),dL(r,t,n,a),k){var S=a.isMinor;a.isMinor=!0,dL(r,t,n,a),a.isMinor=S}_re(r,t,n,{dfltColor:w,bgColor:a.bgColor,showGrid:a.showGrid,hasMinor:k,attributes:km}),k&&!t.minor.ticks&&!t.minor.showgrid&&delete t.minor,(t.showline||t.ticks)&&n("mirror");var b=h==="multicategory";if(!a.noTickson&&(h==="category"||b)&&(t.ticks||t.showgrid)&&(b?(n("tickson","boundaries"),delete t.ticklabelposition):n("tickson")),b){var M=n("showdividers");M&&(n("dividercolor"),n("dividerwidth"))}if(h==="date")if(yre(r,t,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:Tre}),!t.rangebreaks.length)delete t.rangebreaks;else{for(var d=0;d=2){var i="",l,u;if(o.length===2){for(l=0;l<2;l++)if(u=gL(o[l]),u){i=k1;break}}var s=n("pattern",i);if(s===k1)for(l=0;l<2;l++)u=gL(o[l]),u&&(r.bounds[l]=o[l]=u-1);if(s)for(l=0;l<2;l++)switch(u=o[l],s){case k1:if(!hL(u)){r.enabled=!1;return}if(u=+u,u!==Math.floor(u)||u<0||u>=7){r.enabled=!1;return}r.bounds[l]=o[l]=u;break;case Mre:if(!hL(u)){r.enabled=!1;return}if(u=+u,u<0||u>24){r.enabled=!1;return}r.bounds[l]=o[l]=u;break}if(t.autorange===!1){var f=t.range;if(f[0]f[1]){r.enabled=!1;return}}else if(o[0]>f[0]&&o[1]{"use strict";var kre=nt(),C1=ir();mL.exports=function(r,t,n,a){var o=a.counterAxes||[],i=a.overlayableAxes||[],l=a.letter,u=a.grid,s=a.overlayingDomain,f,h,p,_,m,w;u&&(h=u._domains[l][u._axisMap[t._id]],f=u._anchors[t._id],h&&(p=u[l+"side"].split(" ")[0],_=u.domain[l][p==="right"||p==="top"?1:0])),h=h||[0,1],f=f||(kre(r.position)?"free":o[0]||"free"),p=p||(l==="x"?"bottom":"left"),_=_||0,m=0,w=!1;var T=C1.coerce(r,t,{anchor:{valType:"enumerated",values:["free"].concat(o),dflt:f}},"anchor"),y=C1.coerce(r,t,{side:{valType:"enumerated",values:l==="x"?["bottom","top"]:["left","right"],dflt:p}},"side");if(T==="free"){if(l==="y"){var k=n("autoshift");k&&(_=y==="left"?s[0]:s[1],w=t.automargin?t.automargin:!0,m=y==="left"?-3:3),n("shift",m)}n("position",_)}n("automargin",w);var S=!1;if(i.length&&(S=C1.coerce(r,t,{overlaying:{valType:"enumerated",values:[!1].concat(i),dflt:!1}},"overlaying")),!S){var b=n("domain",h);b[0]>b[1]-1/4096&&(t.domain=h),C1.noneOrAll(r.domain,t.domain,h),t.tickmode==="sync"&&(t.tickmode="auto")}return n("layer"),t}});var SL=de((c1e,kL)=>{"use strict";var ns=ir(),bL=Xr(),Sre=to().isUnifiedHover,Cre=B2(),xL=yt(),Ere=Is(),_L=La(),Lre=Am(),wL=S1(),Dre=Zf(),ML=Sm(),Em=jt(),Ui=Em.id2name,TL=Em.name2id,Rre=_n().AX_ID_PATTERN,AL=Cr(),E1=AL.traceIs,Cm=AL.getComponentMethod;function L1(e,r,t){Array.isArray(e[r])?e[r].push(t):e[r]=[t]}kL.exports=function(r,t,n){var a=t.autotypenumbers,o={},i={},l={},u={},s={},f={},h={},p={},_={},m={},w,T;for(w=0;w{"use strict";var Pre=it(),CL=Cr(),D1=ir(),ba=mt(),R1=Lt();EL.exports=function(r,t,n,a){var o=r._fullLayout;if(t.length===0){R1.redrawComponents(r);return}function i(T){var y=T.xaxis,k=T.yaxis;o._defs.select("#"+T.clipId+"> rect").call(ba.setTranslate,0,0).call(ba.setScale,1,1),T.plot.call(ba.setTranslate,y._offset,k._offset).call(ba.setScale,1,1);var S=T.plot.selectAll(".scatterlayer .trace");S.selectAll(".point").call(ba.setPointGroupScale,1,1),S.selectAll(".textpoint").call(ba.setTextPointsScale,1,1),S.call(ba.hideOutsideRangePoints,T)}function l(T,y){var k=T.plotinfo,S=k.xaxis,b=k.yaxis,M=S._length,d=b._length,x=!!T.xr1,g=!!T.yr1,c=[];if(x){var A=D1.simpleMap(T.xr0,S.r2l),v=D1.simpleMap(T.xr1,S.r2l),D=A[1]-A[0],E=v[1]-v[0];c[0]=(A[0]*(1-y)+y*v[0]-A[0])/(A[1]-A[0])*M,c[2]=M*(1-y+y*E/D),S.range[0]=S.l2r(A[0]*(1-y)+y*v[0]),S.range[1]=S.l2r(A[1]*(1-y)+y*v[1])}else c[0]=0,c[2]=M;if(g){var R=D1.simpleMap(T.yr0,b.r2l),N=D1.simpleMap(T.yr1,b.r2l),F=R[1]-R[0],I=N[1]-N[0];c[1]=(R[1]*(1-y)+y*N[1]-R[1])/(R[0]-R[1])*d,c[3]=d*(1-y+y*I/F),b.range[0]=S.l2r(R[0]*(1-y)+y*N[0]),b.range[1]=b.l2r(R[1]*(1-y)+y*N[1])}else c[1]=0,c[3]=d;R1.drawOne(r,S,{skipTitle:!0}),R1.drawOne(r,b,{skipTitle:!0}),R1.redrawComponents(r,[S._id,b._id]);var L=x?M/c[2]:1,P=g?d/c[3]:1,O=x?c[0]:0,U=g?c[1]:0,X=x?c[0]/c[2]*M:0,$=g?c[1]/c[3]*d:0,j=S._offset-X,Y=b._offset-$;k.clipRect.call(ba.setTranslate,O,U).call(ba.setScale,1/L,1/P),k.plot.call(ba.setTranslate,j,Y).call(ba.setScale,L,P),ba.setPointGroupScale(k.zoomScalePts,1/L,1/P),ba.setTextPointsScale(k.zoomScaleTxt,1/L,1/P)}var u;a&&(u=a());function s(){for(var T={},y=0;yn.duration?(s(),_=window.cancelAnimationFrame(w)):_=window.requestAnimationFrame(w)}return h=Date.now(),_=window.requestAnimationFrame(w),Promise.resolve()}});var Lm=de(Ln=>{"use strict";var I1=it(),DL=Cr(),as=ir(),Ire=on(),Fre=mt(),RL=kf().getModuleCalcData,Qo=jt(),ui=_n(),Nre=Fo(),lt=as.ensureSingle;function P1(e,r,t){return as.ensureSingle(e,r,t,function(n){n.datum(t)})}var is=ui.zindexSeparator;Ln.name="cartesian";Ln.attr=["xaxis","yaxis"];Ln.idRoot=["x","y"];Ln.idRegex=ui.idRegex;Ln.attrRegex=ui.attrRegex;Ln.attributes=nL();Ln.layoutAttributes=La();Ln.supplyLayoutDefaults=SL();Ln.transitionAxes=LL();Ln.finalizeSubplots=function(e,r){var t=r._subplots,n=t.xaxis,a=t.yaxis,o=t.cartesian,i=o,l={},u={},s,f,h;for(s=0;s0){var _=p.id;if(_.indexOf(is)!==-1)continue;_+=is+(s+1),p=as.extendFlat({},p,{id:_,plot:a._cartesianlayer.selectAll(".subplot").select("."+_)})}for(var m=[],w,T=0;T1&&(M+=is+b),S.push(l+M),i=0;i1,h=r.mainplotinfo;if(!r.mainplot||f)if(s)r.xlines=lt(n,"path","xlines-above"),r.ylines=lt(n,"path","ylines-above"),r.xaxislayer=lt(n,"g","xaxislayer-above"),r.yaxislayer=lt(n,"g","yaxislayer-above");else{if(!i){var p=lt(n,"g","layer-subplot");r.shapelayer=lt(p,"g","shapelayer"),r.imagelayer=lt(p,"g","imagelayer"),h&&f?(r.minorGridlayer=h.minorGridlayer,r.gridlayer=h.gridlayer,r.zerolinelayer=h.zerolinelayer):(r.minorGridlayer=lt(n,"g","minor-gridlayer"),r.gridlayer=lt(n,"g","gridlayer"),r.zerolinelayer=lt(n,"g","zerolinelayer"));var _=lt(n,"g","layer-between");r.shapelayerBetween=lt(_,"g","shapelayer"),r.imagelayerBetween=lt(_,"g","imagelayer"),lt(n,"path","xlines-below"),lt(n,"path","ylines-below"),r.overlinesBelow=lt(n,"g","overlines-below"),lt(n,"g","xaxislayer-below"),lt(n,"g","yaxislayer-below"),r.overaxesBelow=lt(n,"g","overaxes-below")}r.overplot=lt(n,"g","overplot"),r.plot=lt(r.overplot,"g",a),h&&f?r.zerolinelayerAbove=h.zerolinelayerAbove:r.zerolinelayerAbove=lt(n,"g","zerolinelayer-above"),i||(r.xlines=lt(n,"path","xlines-above"),r.ylines=lt(n,"path","ylines-above"),r.overlinesAbove=lt(n,"g","overlines-above"),lt(n,"g","xaxislayer-above"),lt(n,"g","yaxislayer-above"),r.overaxesAbove=lt(n,"g","overaxes-above"),r.xlines=n.select(".xlines-"+l),r.ylines=n.select(".ylines-"+u),r.xaxislayer=n.select(".xaxislayer-"+l),r.yaxislayer=n.select(".yaxislayer-"+u))}else{var m=h.plotgroup,w=a+"-x",T=a+"-y";r.minorGridlayer=h.minorGridlayer,r.gridlayer=h.gridlayer,r.zerolinelayer=h.zerolinelayer,r.zerolinelayerAbove=h.zerolinelayerAbove,lt(h.overlinesBelow,"path",w),lt(h.overlinesBelow,"path",T),lt(h.overaxesBelow,"g",w),lt(h.overaxesBelow,"g",T),r.plot=lt(h.overplot,"g",a),lt(h.overlinesAbove,"path",w),lt(h.overlinesAbove,"path",T),lt(h.overaxesAbove,"g",w),lt(h.overaxesAbove,"g",T),r.xlines=m.select(".overlines-"+l).select("."+w),r.ylines=m.select(".overlines-"+u).select("."+T),r.xaxislayer=m.select(".overaxes-"+l).select("."+w),r.yaxislayer=m.select(".overaxes-"+u).select("."+T)}i||(s||(P1(r.minorGridlayer,"g",r.xaxis._id),P1(r.minorGridlayer,"g",r.yaxis._id),r.minorGridlayer.selectAll("g").map(function(y){return y[0]}).sort(Qo.idSort),P1(r.gridlayer,"g",r.xaxis._id),P1(r.gridlayer,"g",r.yaxis._id),r.gridlayer.selectAll("g").map(function(y){return y[0]}).sort(Qo.idSort)),r.xlines.style("fill","none").classed("crisp",!0),r.ylines.style("fill","none").classed("crisp",!0))}function FL(e,r){if(e){var t={};e.each(function(u){var s=u[0],f=I1.select(this);f.remove(),NL(s,r),t[s]=!0});for(var n in r._plots)for(var a=r._plots[n],o=a.overlays||[],i=0;i{"use strict";var F1=oa();zL.exports={hasLines:F1.hasLines,hasMarkers:F1.hasMarkers,hasText:F1.hasText,isBubble:F1.isBubble,attributes:jl(),layoutAttributes:fh(),supplyDefaults:JC(),crossTraceDefaults:jC(),supplyLayoutDefaults:rE(),calc:hm().calc,crossTraceCalc:CE(),arraysToCalcdata:b1(),plot:HE(),colorbar:GE(),formatLabels:WE(),style:wm().style,styleOnSelect:wm().styleOnSelect,hoverPoints:$E(),selectPoints:rL(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:Lm(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var UL=de((p1e,BL)=>{"use strict";var qre=it(),Ore=Xr(),OL=Ey(),Dm=ir(),Bre=Dm.strScale,Ure=Dm.strRotate,Hre=Dm.strTranslate;BL.exports=function(r,t,n){var a=r.node(),o=OL[n.arrowhead||0],i=OL[n.startarrowhead||0],l=(n.arrowwidth||1)*(n.arrowsize||1),u=(n.arrowwidth||1)*(n.startarrowsize||1),s=t.indexOf("start")>=0,f=t.indexOf("end")>=0,h=o.backoff*l+n.standoff,p=i.backoff*u+n.startstandoff,_,m,w,T;if(a.nodeName==="line"){_={x:+r.attr("x1"),y:+r.attr("y1")},m={x:+r.attr("x2"),y:+r.attr("y2")};var y=_.x-m.x,k=_.y-m.y;if(w=Math.atan2(k,y),T=w+Math.PI,h&&p&&h+p>Math.sqrt(y*y+k*k)){R();return}if(h){if(h*h>y*y+k*k){R();return}var S=h*Math.cos(w),b=h*Math.sin(w);m.x+=S,m.y+=b,r.attr({x2:m.x,y2:m.y})}if(p){if(p*p>y*y+k*k){R();return}var M=p*Math.cos(w),d=p*Math.sin(w);_.x-=M,_.y-=d,r.attr({x1:_.x,y1:_.y})}}else if(a.nodeName==="path"){var x=a.getTotalLength(),g="";if(x{"use strict";var HL=it(),Rm=Cr(),Vre=on(),jo=ir(),Pm=jo.strTranslate,L0=Lt(),os=Xr(),fo=mt(),VL=io(),Im=Wn(),Fm=Vo(),E0=ni(),Gre=yt().arrayEditor,Yre=UL();WL.exports={draw:Wre,drawOne:GL,drawRaw:YL};function Wre(e){var r=e._fullLayout;r._infolayer.selectAll(".annotation").remove();for(var t=0;t2/3?Ke="right":Ke="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[Ke]}for(var re=!1,H=["x","y"],ee=0;ee1)&&(ue===te?(ye=ve.r2fraction(r["a"+V]),(ye<0||ye>1)&&(re=!0)):re=!0),Ne=ve._offset+ve.r2p(r[V]),we=.5}else{var pe=me==="domain";V==="x"?(ge=r[V],Ne=pe?ve._offset+ve._length*ge:Ne=l.l+l.w*ge):(ge=1-r[V],Ne=pe?ve._offset+ve._length*ge:Ne=l.t+l.h*ge),we=r.showarrow?.5:ge}if(r.showarrow){Ee.head=Ne;var ce=r["a"+V];if(Te=Se*oe(.5,r.xanchor)-he*oe(.5,r.yanchor),ue===te){var be=L0.getRefType(ue);be==="domain"?(V==="y"&&(ce=1-ce),Ee.tail=ve._offset+ve._length*ce):be==="paper"?V==="y"?(ce=1-ce,Ee.tail=l.t+l.h*ce):Ee.tail=l.l+l.w*ce:Ee.tail=ve._offset+ve.r2p(ce),Ue=Te}else Ee.tail=Ne+ce,Ue=Te+ce;Ee.text=Ee.tail+Te;var Le=i[V==="x"?"width":"height"];if(te==="paper"&&(Ee.head=jo.constrain(Ee.head,1,Le-1)),ue==="pixel"){var qe=-Math.max(Ee.tail-3,Ee.text),ze=Math.min(Ee.tail+3,Ee.text)-Le;qe>0?(Ee.tail+=qe,Ee.text+=qe):ze>0&&(Ee.tail-=ze,Ee.text-=ze)}Ee.tail+=Pe,Ee.head+=Pe}else Te=Ae*oe(we,Ce),Ue=Te,Ee.text=Ne+Te;Ee.text+=Pe,Te+=Pe,Ue+=Pe,r["_"+V+"padplus"]=Ae/2+Ue,r["_"+V+"padminus"]=Ae/2-Ue,r["_"+V+"size"]=Ae,r["_"+V+"shift"]=Te}if(re){x.remove();return}var $e=0,Ve=0;if(r.align!=="left"&&($e=(q-j)*(r.align==="center"?.5:1)),r.valign!=="top"&&(Ve=(K-Y)*(r.valign==="middle"?.5:1)),X)U.select("svg").attr({x:A+$e-1,y:A+Ve}).call(fo.setClipUrl,D?w:null,e);else{var Be=A+Ve-$.top,Ye=A+$e-$.left;F.call(Im.positionText,Ye,Be).call(fo.setClipUrl,D?w:null,e)}E.select("rect").call(fo.setRect,A,A,q,K),v.call(fo.setRect,g/2,g/2,ne-g,Q-g),x.call(fo.setTranslate,Math.round(T.x.text-ne/2),Math.round(T.y.text-Q/2)),S.attr({transform:"rotate("+y+","+T.x.text+","+T.y.text+")"});var Me=function(Qe,Ke){k.selectAll(".annotation-arrow-g").remove();var ar=T.x.head,se=T.y.head,J=T.x.tail+Qe,ae=T.y.tail+Ke,De=T.x.text+Qe,He=T.y.text+Ke,er=jo.rotationXYMatrix(y,De,He),nr=jo.apply2DTransform(er),fr=jo.apply2DTransform2(er),xr=+v.attr("width"),Sr=+v.attr("height"),Mr=De-.5*xr,Ar=Mr+xr,ft=He-.5*Sr,sr=ft+Sr,Pr=[[Mr,ft,Mr,sr],[Mr,sr,Ar,sr],[Ar,sr,Ar,ft],[Ar,ft,Mr,ft]].map(fr);if(!Pr.reduce(function(gt,Ft){return gt^!!jo.segmentsIntersect(ar,se,ar+1e6,se+1e6,Ft[0],Ft[1],Ft[2],Ft[3])},!1)){Pr.forEach(function(gt){var Ft=jo.segmentsIntersect(J,ae,ar,se,gt[0],gt[1],gt[2],gt[3]);Ft&&(J=Ft.x,ae=Ft.y)});var $r=r.arrowwidth,Fr=r.arrowcolor,Gr=r.arrowside,pt=k.append("g").style({opacity:os.opacity(Fr)}).classed("annotation-arrow-g",!0),Rr=pt.append("path").attr("d","M"+J+","+ae+"L"+ar+","+se).style("stroke-width",$r+"px").call(os.stroke,os.rgb(Fr));if(Yre(Rr,Gr,r),u.annotationPosition&&Rr.node().parentNode&&!n){var jr=ar,hn=se;if(r.standoff){var Et=Math.sqrt(Math.pow(ar-J,2)+Math.pow(se-ae,2));jr+=r.standoff*(J-ar)/Et,hn+=r.standoff*(ae-se)/Et}var Tn=pt.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(J-jr)+","+(ae-hn),transform:Pm(jr,hn)}).style("stroke-width",$r+6+"px").call(os.stroke,"rgba(0,0,0,0)").call(os.fill,"rgba(0,0,0,0)"),Ot,xt;E0.init({element:Tn.node(),gd:e,prepFn:function(){var gt=fo.getTranslate(x);Ot=gt.x,xt=gt.y,a&&a.autorange&&p(a._name+".autorange",!0),o&&o.autorange&&p(o._name+".autorange",!0)},moveFn:function(gt,Ft){var ha=nr(Ot,xt),Qn=ha[0]+gt,In=ha[1]+Ft;x.call(fo.setTranslate,Qn,In),_("x",$o(a,gt,"x",l,r)),_("y",$o(o,Ft,"y",l,r)),r.axref===r.xref&&_("ax",$o(a,gt,"ax",l,r)),r.ayref===r.yref&&_("ay",$o(o,Ft,"ay",l,r)),pt.attr("transform",Pm(gt,Ft)),S.attr({transform:"rotate("+y+","+Qn+","+In+")"})},doneFn:function(){Rm.call("_guiRelayout",e,m());var gt=document.querySelector(".js-notes-box-panel");gt&>.redraw(gt.selectedObj)}})}}};if(r.showarrow&&Me(0,0),b){var Re;E0.init({element:x.node(),gd:e,prepFn:function(){Re=S.attr("transform")},moveFn:function(Qe,Ke){var ar="pointer";if(r.showarrow)r.axref===r.xref?_("ax",$o(a,Qe,"ax",l,r)):_("ax",r.ax+Qe),r.ayref===r.yref?_("ay",$o(o,Ke,"ay",l.w,r)):_("ay",r.ay+Ke),Me(Qe,Ke);else{if(n)return;var se,J;if(a)se=$o(a,Qe,"x",l,r);else{var ae=r._xsize/l.w,De=r.x+(r._xshift-r.xshift)/l.w-ae/2;se=E0.align(De+Qe/l.w,ae,0,1,r.xanchor)}if(o)J=$o(o,Ke,"y",l,r);else{var He=r._ysize/l.h,er=r.y-(r._yshift+r.yshift)/l.h-He/2;J=E0.align(er-Ke/l.h,He,0,1,r.yanchor)}_("x",se),_("y",J),(!a||!o)&&(ar=E0.getCursor(a?.5:se,o?.5:J,r.xanchor,r.yanchor))}S.attr({transform:Pm(Qe,Ke)+Re}),Fm(x,ar)},clickFn:function(Qe,Ke){r.captureevents&&e.emit("plotly_clickannotation",d(Ke))},doneFn:function(){Fm(x),Rm.call("_guiRelayout",e,m());var Qe=document.querySelector(".js-notes-box-panel");Qe&&Qe.redraw(Qe.selectedObj)}})}}u.annotationText?F.call(Im.makeEditable,{delegate:x,gd:e}).call(I).on("edit",function(P){r.text=P,this.call(I),_("text",P),a&&a.autorange&&p(a._name+".autorange",!0),o&&o.autorange&&p(o._name+".autorange",!0),Rm.call("_guiRelayout",e,m())}):F.call(I)}});var $L=de((y1e,QL)=>{"use strict";var XL=ir(),Xre=Cr(),ZL=yt().arrayEditor;QL.exports={hasClickToShow:Zre,onClick:Jre};function Zre(e,r){var t=KL(e,r);return t.on.length>0||t.explicitOff.length>0}function Jre(e,r){var t=KL(e,r),n=t.on,a=t.off.concat(t.explicitOff),o={},i=e._fullLayout.annotations,l,u;if(n.length||a.length){for(l=0;l{"use strict";var Nm=ir(),Lu=Xr();jL.exports=function(r,t,n,a){a("opacity");var o=a("bgcolor"),i=a("bordercolor"),l=Lu.opacity(i);a("borderpad");var u=a("borderwidth"),s=a("showarrow");a("text",s?" ":n._dfltTitle.annotation),a("textangle"),Nm.coerceFont(a,"font",n.font),a("width"),a("align");var f=a("height");if(f&&a("valign"),s){var h=a("arrowside"),p,_;h.indexOf("end")!==-1&&(p=a("arrowhead"),_=a("arrowsize")),h.indexOf("start")!==-1&&(a("startarrowhead",p),a("startarrowsize",_)),a("arrowcolor",l?t.bordercolor:Lu.defaultLine),a("arrowwidth",(l&&u||1)*2),a("standoff"),a("startstandoff")}var m=a("hovertext"),w=n.hoverlabel||{};if(m){var T=a("hoverlabel.bgcolor",w.bgcolor||(Lu.opacity(o)?Lu.rgb(o):Lu.defaultLine)),y=a("hoverlabel.bordercolor",w.bordercolor||Lu.contrast(T)),k=Nm.extendFlat({},w.font);k.color||(k.color=y),Nm.coerceFont(a,"hoverlabel.font",k)}a("captureevents",!!m)}});var rD=de((b1e,eD)=>{"use strict";var qm=ir(),ls=Lt(),Kre=ri(),Qre=zm(),$re=xu();eD.exports=function(r,t){Kre(r,t,{name:"annotations",handleItemDefaults:jre})};function jre(e,r,t){function n(S,b){return qm.coerce(e,r,$re,S,b)}var a=n("visible"),o=n("clicktoshow");if(a||o){Qre(e,r,t,n);for(var i=r.showarrow,l=["x","y"],u=[-10,-30],s={_fullLayout:t},f=0;f<2;f++){var h=l[f],p=ls.coerceRef(e,r,s,h,"","paper");if(p!=="paper"){var _=ls.getFromId(s,p);_._annIndices.push(r._index)}if(ls.coercePosition(r,s,n,p,h,.5),i){var m="a"+h,w=ls.coerceRef(e,r,s,m,"pixel",["pixel","paper"]);w!=="pixel"&&w!==p&&(w=r[m]="pixel");var T=w==="pixel"?u[f]:.4;ls.coercePosition(r,s,n,w,m,T)}n(h+"anchor"),n(h+"shift")}if(qm.noneOrAll(e,r,["x","y"]),i&&qm.noneOrAll(e,r,["ax","ay"]),o){var y=n("xclick"),k=n("yclick");r._xclick=y===void 0?r.x:ls.cleanPosition(y,s,r.xref),r._yclick=k===void 0?r.y:ls.cleanPosition(k,s,r.yref)}}}});var aD=de((x1e,nD)=>{"use strict";var Om=ir(),ss=Lt(),ete=N1().draw;nD.exports=function(r){var t=r._fullLayout,n=Om.filterVisible(t.annotations);if(n.length&&r._fullData.length)return Om.syncOrAsync([ete,rte],r)};function rte(e){var r=e._fullLayout;Om.filterVisible(r.annotations).forEach(function(t){var n=ss.getFromId(e,t.xref),a=ss.getFromId(e,t.yref),o=ss.getRefType(t.xref),i=ss.getRefType(t.yref);t._extremes={},o==="range"&&tD(t,n),i==="range"&&tD(t,a)})}function tD(e,r){var t=r._id,n=t.charAt(0),a=e[n],o=e["a"+n],i=e[n+"ref"],l=e["a"+n+"ref"],u=e["_"+n+"padplus"],s=e["_"+n+"padminus"],f={x:1,y:-1}[n]*e[n+"shift"],h=3*e.arrowsize*e.arrowwidth||0,p=h+f,_=h-f,m=3*e.startarrowsize*e.arrowwidth||0,w=m+f,T=m-f,y;if(l===i){var k=ss.findExtremes(r,[r.r2c(a)],{ppadplus:p,ppadminus:_}),S=ss.findExtremes(r,[r.r2c(o)],{ppadplus:Math.max(u,w),ppadminus:Math.max(s,T)});y={min:[k.min[0],S.min[0]],max:[k.max[0],S.max[0]]}}else w=o?w+o:w,T=o?T-o:T,y=ss.findExtremes(r,[r.r2c(a)],{ppadplus:Math.max(u,p,w),ppadminus:Math.max(s,_,T)});e._extremes[t]=y}});var oD=de((_1e,iD)=>{"use strict";var tte=nt(),nte=Dc();iD.exports=function(r,t,n,a){t=t||{};var o=n==="log"&&t.type==="linear",i=n==="linear"&&t.type==="log";if(!(o||i))return;var l=r._fullLayout.annotations,u=t._id.charAt(0),s,f;function h(_){var m=s[_],w=null;o?w=nte(m,t.range):w=Math.pow(10,m),tte(w)||(w=null),a(f+_,w)}for(var p=0;p{"use strict";var Bm=N1(),lD=$L();sD.exports={moduleType:"component",name:"annotations",layoutAttributes:xu(),supplyLayoutDefaults:rD(),includeBasePlot:c0()("annotations"),calcAutorange:aD(),draw:Bm.draw,drawOne:Bm.drawOne,drawRaw:Bm.drawRaw,hasClickToShow:lD.hasClickToShow,onClick:lD.onClick,convertCoords:oD()}});var z1=de((M1e,fD)=>{"use strict";var Mt=xu(),ate=zn().overrideAll,ite=yt().templatedArray;fD.exports=ate(ite("annotation",{visible:Mt.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:Mt.xanchor,xshift:Mt.xshift,yanchor:Mt.yanchor,yshift:Mt.yshift,text:Mt.text,textangle:Mt.textangle,font:Mt.font,width:Mt.width,height:Mt.height,opacity:Mt.opacity,align:Mt.align,valign:Mt.valign,bgcolor:Mt.bgcolor,bordercolor:Mt.bordercolor,borderpad:Mt.borderpad,borderwidth:Mt.borderwidth,showarrow:Mt.showarrow,arrowcolor:Mt.arrowcolor,arrowhead:Mt.arrowhead,startarrowhead:Mt.startarrowhead,arrowside:Mt.arrowside,arrowsize:Mt.arrowsize,startarrowsize:Mt.startarrowsize,arrowwidth:Mt.arrowwidth,standoff:Mt.standoff,startstandoff:Mt.startstandoff,hovertext:Mt.hovertext,hoverlabel:Mt.hoverlabel,captureevents:Mt.captureevents}),"calc","from-root")});var hD=de((T1e,cD)=>{"use strict";var Um=ir(),ote=Lt(),lte=ri(),ste=zm(),ute=z1();cD.exports=function(r,t,n){lte(r,t,{name:"annotations",handleItemDefaults:fte,fullLayout:n.fullLayout})};function fte(e,r,t,n){function a(l,u){return Um.coerce(e,r,ute,l,u)}function o(l){var u=l+"axis",s={_fullLayout:{}};return s._fullLayout[u]=t[u],ote.coercePosition(r,s,a,l,l,.5)}var i=a("visible");i&&(ste(e,r,n.fullLayout,a),o("x"),o("y"),o("z"),Um.noneOrAll(e,r,["x","y","z"]),r.xref="x",r.yref="y",r.zref="z",a("xanchor"),a("yanchor"),a("xshift"),a("yshift"),r.showarrow&&(r.axref="pixel",r.ayref="pixel",a("ax",-10),a("ay",-30),Um.noneOrAll(e,r,["ax","ay"])))}});var gD=de((A1e,pD)=>{"use strict";var vD=ir(),dD=Lt();pD.exports=function(r){for(var t=r.fullSceneLayout,n=t.annotations,a=0;a{"use strict";function Hm(e,r){var t=[0,0,0,0],n,a;for(n=0;n<4;++n)for(a=0;a<4;++a)t[a]+=e[4*n+a]*r[n];return t}function hte(e,r){var t=Hm(e.projection,Hm(e.view,Hm(e.model,[r[0],r[1],r[2],1])));return t}yD.exports=hte});var bD=de((S1e,mD)=>{"use strict";var vte=N1().drawRaw,dte=Vm(),pte=["x","y","z"];mD.exports=function(r){for(var t=r.fullSceneLayout,n=r.dataScale,a=t.annotations,o=0;o1){l=!0;break}}l?r.fullLayout._infolayer.select(".annotation-"+r.id+'[data-index="'+o+'"]').remove():(i._pdata=dte(r.glplot.cameraParams,[t.xaxis.r2l(i.x)*n[0],t.yaxis.r2l(i.y)*n[1],t.zaxis.r2l(i.z)*n[2]]),vte(r.graphDiv,i,o,r.id,i._xa,i._ya))}}});var wD=de((C1e,_D)=>{"use strict";var gte=Cr(),xD=ir();_D.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:z1()}}},layoutAttributes:z1(),handleDefaults:hD(),includeBasePlot:yte,convert:gD(),draw:bD()};function yte(e,r){var t=gte.subplotsRegistry.gl3d;if(t)for(var n=t.attrRegex,a=Object.keys(e),o=0;o{"use strict";var MD=xu(),TD=kn(),AD=jl().line,mte=Ao().dash,fi=Tt().extendFlat,bte=yt().templatedArray,E1e=f0(),Du=Sn(),{shapeTexttemplateAttrs:xte,templatefallbackAttrs:_te}=Ka(),wte=Hc();kD.exports=bte("shape",{visible:fi({},Du.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:fi({},Du.legend,{editType:"calc+arraydraw"}),legendgroup:fi({},Du.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:fi({},Du.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:TD({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:fi({},Du.legendrank,{editType:"calc+arraydraw"}),legendwidth:fi({},Du.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:fi({},MD.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:fi({},MD.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:fi({},AD.color,{editType:"arraydraw"}),width:fi({},AD.width,{editType:"calc+arraydraw"}),dash:fi({},mte,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:xte({},{keys:Object.keys(wte)}),texttemplatefallback:_te({editType:"arraydraw"}),font:TD({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var ED=de((D1e,CD)=>{"use strict";var D0=ir(),Ru=Lt(),Mte=ri(),Tte=Gm(),SD=Wo();CD.exports=function(r,t){Mte(r,t,{name:"shapes",handleItemDefaults:kte})};function Ate(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}function kte(e,r,t){function n(P,O){return D0.coerce(e,r,Tte,P,O)}r._isShape=!0;var a=n("visible");if(a){var o=n("showlegend");o&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),D0.coerceFont(n,"legendgrouptitle.font"),n("legendrank"));var i=n("path"),l=i?"path":"rect",u=n("type",l),s=u!=="path";s&&delete r.path,n("editable"),n("layer"),n("opacity"),n("fillcolor"),n("fillrule");var f=n("line.width");f&&(n("line.color"),n("line.dash"));for(var h=n("xsizemode"),p=n("ysizemode"),_=["x","y"],m=0;m<2;m++){var w=_[m],T=w+"anchor",y=w==="x"?h:p,k={_fullLayout:t},S,b,M,d=Ru.coerceRef(e,r,k,w,void 0,"paper"),x=Ru.getRefType(d);if(x==="range"?(S=Ru.getFromId(k,d),S._shapeIndices.push(r._index),M=SD.rangeToShapePosition(S),b=SD.shapePositionToRange(S),(S.type==="category"||S.type==="multicategory")&&(n(w+"0shift"),n(w+"1shift"))):b=M=D0.identity,s){var g=.25,c=.75,A=w+"0",v=w+"1",D=e[A],E=e[v];e[A]=b(e[A],!0),e[v]=b(e[v],!0),y==="pixel"?(n(A,0),n(v,10)):(Ru.coercePosition(r,k,n,d,A,g),Ru.coercePosition(r,k,n,d,v,c)),r[A]=M(r[A]),r[v]=M(r[v]),e[A]=D,e[v]=E}if(y==="pixel"){var R=e[T];e[T]=b(e[T],!0),Ru.coercePosition(r,k,n,d,T,.25),r[T]=M(r[T]),e[T]=R}}s&&D0.noneOrAll(e,r,["x0","x1","y0","y1"]);var N=u==="line",F,I;if(s&&(F=n("label.texttemplate"),n("label.texttemplatefallback")),F||(I=n("label.text")),I||F){n("label.textangle");var L=n("label.textposition",N?"middle":"middle center");n("label.xanchor"),n("label.yanchor",Ate(N,L)),n("label.padding"),D0.coerceFont(n,"label.font",t.font)}}}});var RD=de((R1e,DD)=>{"use strict";var Ste=Xr(),LD=ir();function Cte(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}DD.exports=function(r,t,n){n("newshape.visible"),n("newshape.name"),n("newshape.showlegend"),n("newshape.legend"),n("newshape.legendwidth"),n("newshape.legendgroup"),n("newshape.legendgrouptitle.text"),LD.coerceFont(n,"newshape.legendgrouptitle.font"),n("newshape.legendrank"),n("newshape.drawdirection"),n("newshape.layer"),n("newshape.fillcolor"),n("newshape.fillrule"),n("newshape.opacity");var a=n("newshape.line.width");if(a){var o=(r||{}).plot_bgcolor||"#FFF";n("newshape.line.color",Ste.contrast(o)),n("newshape.line.dash")}var i=r.dragmode==="drawline",l=n("newshape.label.text"),u=n("newshape.label.texttemplate");if(n("newshape.label.texttemplatefallback"),l||u){n("newshape.label.textangle");var s=n("newshape.label.textposition",i?"middle":"middle center");n("newshape.label.xanchor"),n("newshape.label.yanchor",Cte(i,s)),n("newshape.label.padding"),LD.coerceFont(n,"newshape.label.font",t.font)}n("activeshape.fillcolor"),n("activeshape.opacity")}});var zD=de((P1e,ND)=>{"use strict";var Ym=ir(),Pu=Lt(),Iu=Gf(),ID=Wo();ND.exports=function(r){var t=r._fullLayout,n=Ym.filterVisible(t.shapes);if(!(!n.length||!r._fullData.length))for(var a=0;a0?s+i:i;return{ppad:i,ppadplus:l?h:p,ppadminus:l?p:h}}else return{ppad:i}}function PD(e,r,t){var n=e._id.charAt(0)==="x"?"x":"y",a=e.type==="category"||e.type==="multicategory",o,i,l=0,u=0,s=a?e.r2c:e.d2c,f=r[n+"sizemode"]==="scaled";if(f?(o=r[n+"0"],i=r[n+"1"],a&&(l=r[n+"0shift"],u=r[n+"1shift"])):(o=r[n+"anchor"],i=r[n+"anchor"]),o!==void 0)return[s(o)+l,s(i)+u];if(r.path){var h=1/0,p=-1/0,_=r.path.match(Iu.segmentRE),m,w,T,y,k;for(e.type==="date"&&(s=ID.decodeDate(s)),m=0;m<_.length;m++)w=_[m],T=t[w.charAt(0)].drawn,T!==void 0&&(y=_[m].substr(1).match(Iu.paramRE),!(!y||y.lengthp&&(p=k)));if(p>=h)return[h,p]}}});var BD=de((I1e,OD)=>{"use strict";var qD=Sv();OD.exports={moduleType:"component",name:"shapes",layoutAttributes:Gm(),supplyLayoutDefaults:ED(),supplyDrawNewShapeDefaults:RD(),includeBasePlot:c0()("shapes"),calcAutorange:zD(),draw:qD.draw,drawOne:qD.drawOne}});var Wm=de((N1e,HD)=>{"use strict";var UD=_n(),Dte=yt().templatedArray,F1e=f0();HD.exports=Dte("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",UD.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",UD.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var GD=de((z1e,VD)=>{"use strict";var Rte=ir(),Xm=Lt(),Pte=ri(),Ite=Wm(),Fte="images";VD.exports=function(r,t){var n={name:Fte,handleItemDefaults:Nte};Pte(r,t,n)};function Nte(e,r,t){function n(p,_){return Rte.coerce(e,r,Ite,p,_)}var a=n("source"),o=n("visible",!!a);if(!o)return r;n("layer"),n("xanchor"),n("yanchor"),n("sizex"),n("sizey"),n("sizing"),n("opacity");for(var i={_fullLayout:t},l=["x","y"],u=0;u<2;u++){var s=l[u],f=Xm.coerceRef(e,r,i,s,"paper",void 0);if(f!=="paper"){var h=Xm.getFromId(i,f);h._imgIndices.push(r._index)}Xm.coercePosition(r,i,n,f,s,0)}return r}});var ZD=de((q1e,XD)=>{"use strict";var YD=it(),zte=mt(),Fu=Lt(),WD=jt(),qte=Fo();XD.exports=function(r){var t=r._fullLayout,n=[],a={},o=[],i,l;for(l=0;l{"use strict";var JD=nt(),Ote=Dc();KD.exports=function(r,t,n,a){t=t||{};var o=n==="log"&&t.type==="linear",i=n==="linear"&&t.type==="log";if(o||i){for(var l=r._fullLayout.images,u=t._id.charAt(0),s,f,h=0;h{"use strict";$D.exports={moduleType:"component",name:"images",layoutAttributes:Wm(),supplyLayoutDefaults:GD(),includeBasePlot:c0()("images"),draw:ZD(),convertCoords:QD()}});var q1=de((U1e,eR)=>{"use strict";eR.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var Zm=de((H1e,tR)=>{"use strict";var Bte=kn(),Ute=Ti(),Hte=Tt().extendFlat,Vte=zn().overrideAll,Gte=Vc(),rR=yt().templatedArray,Yte=rR("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});tR.exports=Vte(rR("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:Yte,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:Hte(Gte({editType:"arraydraw"}),{}),font:Bte({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:Ute.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var oR=de((V1e,iR)=>{"use strict";var O1=ir(),nR=ri(),aR=Zm(),Wte=q1(),Xte=Wte.name,Zte=aR.buttons;iR.exports=function(r,t){var n={name:Xte,handleItemDefaults:Jte};nR(r,t,n)};function Jte(e,r,t){function n(i,l){return O1.coerce(e,r,aR,i,l)}var a=nR(e,r,{name:"buttons",handleItemDefaults:Kte}),o=n("visible",a.length>0);o&&(n("active"),n("direction"),n("type"),n("showactive"),n("x"),n("y"),O1.noneOrAll(e,r,["x","y"]),n("xanchor"),n("yanchor"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),O1.coerceFont(n,"font",t.font),n("bgcolor",t.paper_bgcolor),n("bordercolor"),n("borderwidth"))}function Kte(e,r){function t(a,o){return O1.coerce(e,r,Zte,a,o)}var n=t("visible",e.method==="skip"||Array.isArray(e.args));n&&(t("method"),t("args"),t("args2"),t("label"),t("execute"))}});var uR=de((G1e,sR)=>{"use strict";sR.exports=Rt;var ci=it(),lR=Xr(),Nu=mt(),B1=ir();function Rt(e,r,t){this.gd=e,this.container=r,this.id=t,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}Rt.barWidth=2;Rt.barLength=20;Rt.barRadius=2;Rt.barPad=1;Rt.barColor="#808BA4";Rt.prototype.enable=function(r,t,n){var a=this.gd._fullLayout,o=a.width,i=a.height;this.position=r;var l=this.position.l,u=this.position.w,s=this.position.t,f=this.position.h,h=this.position.direction,p=h==="down",_=h==="left",m=h==="right",w=h==="up",T=u,y=f,k,S,b,M;!p&&!_&&!m&&!w&&(this.position.direction="down",p=!0);var d=p||w;d?(k=l,S=k+T,p?(b=s,M=Math.min(b+y,i),y=M-b):(M=s+y,b=Math.max(M-y,0),y=M-b)):(b=s,M=b+y,_?(S=l+T,k=Math.max(S-T,0),T=S-k):(k=l,S=Math.min(k+T,o),T=S-k)),this._box={l:k,t:b,w:T,h:y};var x=u>T,g=Rt.barLength+2*Rt.barPad,c=Rt.barWidth+2*Rt.barPad,A=l,v=s+f;v+c>i&&(v=i-c);var D=this.container.selectAll("rect.scrollbar-horizontal").data(x?[0]:[]);D.exit().on(".drag",null).remove(),D.enter().append("rect").classed("scrollbar-horizontal",!0).call(lR.fill,Rt.barColor),x?(this.hbar=D.attr({rx:Rt.barRadius,ry:Rt.barRadius,x:A,y:v,width:g,height:c}),this._hbarXMin=A+g/2,this._hbarTranslateMax=T-g):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var E=f>y,R=Rt.barWidth+2*Rt.barPad,N=Rt.barLength+2*Rt.barPad,F=l+u,I=s;F+R>o&&(F=o-R);var L=this.container.selectAll("rect.scrollbar-vertical").data(E?[0]:[]);L.exit().on(".drag",null).remove(),L.enter().append("rect").classed("scrollbar-vertical",!0).call(lR.fill,Rt.barColor),E?(this.vbar=L.attr({rx:Rt.barRadius,ry:Rt.barRadius,x:F,y:I,width:R,height:N}),this._vbarYMin=I+N/2,this._vbarTranslateMax=y-N):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var P=this.id,O=k-.5,U=E?S+R+.5:S+.5,X=b-.5,$=x?M+c+.5:M+.5,j=a._topdefs.selectAll("#"+P).data(x||E?[0]:[]);if(j.exit().remove(),j.enter().append("clipPath").attr("id",P).append("rect"),x||E?(this._clipRect=j.select("rect").attr({x:Math.floor(O),y:Math.floor(X),width:Math.ceil(U)-Math.floor(O),height:Math.ceil($)-Math.floor(X)}),this.container.call(Nu.setClipUrl,P,this.gd),this.bg.attr({x:l,y:s,width:u,height:f})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Nu.setClipUrl,null),delete this._clipRect),x||E){var Y=ci.behavior.drag().on("dragstart",function(){ci.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(Y);var q=ci.behavior.drag().on("dragstart",function(){ci.event.sourceEvent.preventDefault(),ci.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));x&&this.hbar.on(".drag",null).call(q),E&&this.vbar.on(".drag",null).call(q)}this.setTranslate(t,n)};Rt.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Nu.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};Rt.prototype._onBoxDrag=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r-=ci.event.dx),this.vbar&&(t-=ci.event.dy),this.setTranslate(r,t)};Rt.prototype._onBoxWheel=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r+=ci.event.deltaY),this.vbar&&(t+=ci.event.deltaY),this.setTranslate(r,t)};Rt.prototype._onBarDrag=function(){var r=this.translateX,t=this.translateY;if(this.hbar){var n=r+this._hbarXMin,a=n+this._hbarTranslateMax,o=B1.constrain(ci.event.x,n,a),i=(o-n)/(a-n),l=this.position.w-this._box.w;r=i*l}if(this.vbar){var u=t+this._vbarYMin,s=u+this._vbarTranslateMax,f=B1.constrain(ci.event.y,u,s),h=(f-u)/(s-u),p=this.position.h-this._box.h;t=h*p}this.setTranslate(r,t)};Rt.prototype.setTranslate=function(r,t){var n=this.position.w-this._box.w,a=this.position.h-this._box.h;if(r=B1.constrain(r||0,0,n),t=B1.constrain(t||0,0,a),this.translateX=r,this.translateY=t,this.container.call(Nu.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-t),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+t-.5)}),this.hbar){var o=r/n;this.hbar.call(Nu.setTranslate,r+o*this._hbarTranslateMax,t)}if(this.vbar){var i=t/a;this.vbar.call(Nu.setTranslate,r,t+i*this._vbarTranslateMax)}}});var bR=de((Y1e,mR)=>{"use strict";var zu=it(),R0=on(),P0=Xr(),qu=mt(),xa=ir(),U1=Wn(),Qte=yt().arrayEditor,cR=qn().LINE_SPACING,Dr=q1(),$te=uR();mR.exports=function(r){var t=r._fullLayout,n=xa.filterVisible(t[Dr.name]);function a(p){R0.autoMargin(r,gR(p))}var o=t._menulayer.selectAll("g."+Dr.containerClassName).data(n.length>0?[0]:[]);if(o.enter().append("g").classed(Dr.containerClassName,!0).style("cursor","pointer"),o.exit().each(function(){zu.select(this).selectAll("g."+Dr.headerGroupClassName).each(a)}).remove(),n.length!==0){var i=o.selectAll("g."+Dr.headerGroupClassName).data(n,jte);i.enter().append("g").classed(Dr.headerGroupClassName,!0);for(var l=xa.ensureSingle(o,"g",Dr.dropdownButtonGroupClassName,function(p){p.style("pointer-events","all")}),u=0;u{"use strict";var one=q1();xR.exports={moduleType:"component",name:one.name,layoutAttributes:Zm(),supplyLayoutDefaults:oR(),draw:bR()}});var F0=de((X1e,wR)=>{"use strict";wR.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var $m=de((Z1e,AR)=>{"use strict";var MR=kn(),lne=Vc(),sne=Tt().extendDeepAll,une=zn().overrideAll,fne=gf(),TR=yt().templatedArray,us=F0(),cne=TR("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});AR.exports=une(TR("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:cne,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:sne(lne({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:fne.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:MR({})},font:MR({}),activebgcolor:{valType:"color",dflt:us.gripBgActiveColor},bgcolor:{valType:"color",dflt:us.railBgColor},bordercolor:{valType:"color",dflt:us.railBorderColor},borderwidth:{valType:"number",min:0,dflt:us.railBorderWidth},ticklen:{valType:"number",min:0,dflt:us.tickLength},tickcolor:{valType:"color",dflt:us.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:us.minorTickLength}}),"arraydraw","from-root")});var ER=de((J1e,CR)=>{"use strict";var Ou=ir(),kR=ri(),SR=$m(),hne=F0(),vne=hne.name,dne=SR.steps;CR.exports=function(r,t){kR(r,t,{name:vne,handleItemDefaults:pne})};function pne(e,r,t){function n(h,p){return Ou.coerce(e,r,SR,h,p)}for(var a=kR(e,r,{name:"steps",handleItemDefaults:gne}),o=0,i=0;i{"use strict";var hi=it(),H1=on(),el=Xr(),vi=mt(),_a=ir(),yne=_a.strTranslate,N0=Wn(),mne=yt().arrayEditor,Vr=F0(),r3=qn(),RR=r3.LINE_SPACING,jm=r3.FROM_TL,e3=r3.FROM_BR;qR.exports=function(r){var t=r._context.staticPlot,n=r._fullLayout,a=bne(n,r),o=n._infolayer.selectAll("g."+Vr.containerClassName).data(a.length>0?[0]:[]);o.enter().append("g").classed(Vr.containerClassName,!0).style("cursor",t?null:"ew-resize");function i(f){f._commandObserver&&(f._commandObserver.remove(),delete f._commandObserver),H1.autoMargin(r,PR(f))}if(o.exit().each(function(){hi.select(this).selectAll("g."+Vr.groupClassName).each(i)}).remove(),a.length!==0){var l=o.selectAll("g."+Vr.groupClassName).data(a,xne);l.enter().append("g").classed(Vr.groupClassName,!0),l.exit().each(i).remove();for(var u=0;u0&&(l=l.transition().duration(r.transition.duration).ease(r.transition.easing)),l.attr("transform",yne(i-Vr.gripWidth*.5,r._dims.currentValueTotalHeight))}}function t3(e,r){var t=e._dims;return t.inputAreaStart+Vr.stepInset+(t.inputAreaLength-2*Vr.stepInset)*Math.min(1,Math.max(0,r))}function DR(e,r){var t=e._dims;return Math.min(1,Math.max(0,(r-Vr.stepInset-t.inputAreaStart)/(t.inputAreaLength-2*Vr.stepInset-2*t.inputAreaStart)))}function Sne(e,r,t){var n=t._dims,a=_a.ensureSingle(e,"rect",Vr.railTouchRectClass,function(o){o.call(NR,r,e,t).style("pointer-events","all")});a.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,Vr.tickOffset+t.ticklen+n.labelHeight)}).call(el.fill,t.bgcolor).attr("opacity",0),vi.setTranslate(a,0,n.currentValueTotalHeight)}function Cne(e,r){var t=r._dims,n=t.inputAreaLength-Vr.railInset*2,a=_a.ensureSingle(e,"rect",Vr.railRectClass);a.attr({width:n,height:Vr.railWidth,rx:Vr.railRadius,ry:Vr.railRadius,"shape-rendering":"crispEdges"}).call(el.stroke,r.bordercolor).call(el.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px"),vi.setTranslate(a,Vr.railInset,(t.inputAreaWidth-Vr.railWidth)*.5+t.currentValueTotalHeight)}});var UR=de((Q1e,BR)=>{"use strict";var Ene=F0();BR.exports={moduleType:"component",name:Ene.name,layoutAttributes:$m(),supplyLayoutDefaults:ER(),draw:OR()}});var G1=de(($1e,VR)=>{"use strict";var HR=Ti();VR.exports={bgcolor:{valType:"color",dflt:HR.background,editType:"plot"},bordercolor:{valType:"color",dflt:HR.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var n3=de((j1e,GR)=>{"use strict";GR.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var Y1=de((ede,YR)=>{"use strict";YR.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var ZR=de(X1=>{"use strict";var Lne=jt(),Dne=Wn(),WR=Y1(),Rne=qn().LINE_SPACING,W1=WR.name;function XR(e){var r=e&&e[W1];return r&&r.visible}X1.isVisible=XR;X1.makeData=function(e){for(var r=Lne.list({_fullLayout:e},"x",!0),t=e.margin,n=[],a=0;a{"use strict";var Z1=ir(),JR=yt(),KR=jt(),Pne=G1(),Ine=n3();QR.exports=function(r,t,n){var a=r[n],o=t[n];if(!(a.rangeslider||t._requestRangeslider[o._id]))return;Z1.isPlainObject(a.rangeslider)||(a.rangeslider={});var i=a.rangeslider,l=JR.newContainer(o,"rangeslider");function u(M,d){return Z1.coerce(i,l,Pne,M,d)}var s,f;function h(M,d){return Z1.coerce(s,f,Ine,M,d)}var p=u("visible");if(p){u("bgcolor",t.plot_bgcolor),u("bordercolor"),u("borderwidth"),u("thickness"),u("autorange",!o.isValidRange(i.range)),u("range");var _=t._subplots;if(_)for(var m=_.cartesian.filter(function(M){return M.substr(0,M.indexOf("y"))===KR.name2id(n)}).map(function(M){return M.substr(M.indexOf("y"),M.length)}),w=Z1.simpleMap(m,KR.id2name),T=0;T{"use strict";var Fne=jt().list,Nne=eu().getAutoRange,zne=Y1();jR.exports=function(r){for(var t=Fne(r,"x",!0),n=0;n{"use strict";var J1=it(),qne=Cr(),One=on(),qt=ir(),K1=qt.strTranslate,tP=mt(),rl=Xr(),Bne=Rf(),Une=Lm(),a3=jt(),Hne=ni(),Vne=Vo(),Kr=Y1();nP.exports=function(e){for(var r=e._fullLayout,t=r._rangeSliderData,n=0;n=L.max)F=v[I+1];else if(N=L.pmax)F=v[I+1];else if(N0?e.touches[0].clientX:0}function Gne(e,r,t,n){if(r._context.staticPlot)return;var a=e.select("rect."+Kr.slideBoxClassName).node(),o=e.select("rect."+Kr.grabAreaMinClassName).node(),i=e.select("rect."+Kr.grabAreaMaxClassName).node();function l(){var u=J1.event,s=u.target,f=rP(u),h=f-e.node().getBoundingClientRect().left,p=n.d2p(t._rl[0]),_=n.d2p(t._rl[1]),m=Hne.coverSlip();this.addEventListener("touchmove",w),this.addEventListener("touchend",T),m.addEventListener("mousemove",w),m.addEventListener("mouseup",T);function w(y){var k=rP(y),S=+k-f,b,M,d;switch(s){case a:if(d="ew-resize",p+S>t._length||_+S<0)return;b=p+S,M=_+S;break;case o:if(d="col-resize",p+S>t._length)return;b=p+S,M=_;break;case i:if(d="col-resize",_+S<0)return;b=p,M=_+S;break;default:d="ew-resize",b=h,M=h+S;break}if(M{"use strict";var eae=ir(),rae=G1(),tae=n3(),i3=ZR();iP.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:eae.extendFlat({},rae,{yaxis:tae})}}},layoutAttributes:G1(),handleDefaults:$R(),calcAutorange:eP(),draw:aP(),isVisible:i3.isVisible,makeData:i3.makeData,autoMarginOpts:i3.autoMarginOpts}});var Q1=de((ode,sP)=>{"use strict";var nae=kn(),lP=Ti(),aae=yt().templatedArray,iae=aae("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});sP.exports={visible:{valType:"boolean",editType:"plot"},buttons:iae,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:nae({editType:"plot"}),bgcolor:{valType:"color",dflt:lP.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:lP.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var o3=de((lde,uP)=>{"use strict";uP.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var hP=de((sde,cP)=>{"use strict";var $1=ir(),oae=Xr(),lae=yt(),sae=ri(),fP=Q1(),l3=o3();cP.exports=function(r,t,n,a,o){var i=r.rangeselector||{},l=lae.newContainer(t,"rangeselector");function u(_,m){return $1.coerce(i,l,fP,_,m)}var s=sae(i,l,{name:"buttons",handleItemDefaults:uae,calendar:o}),f=u("visible",s.length>0);if(f){var h=fae(t,n,a);u("x",h[0]),u("y",h[1]),$1.noneOrAll(r,t,["x","y"]),u("xanchor"),u("yanchor"),$1.coerceFont(u,"font",n.font);var p=u("bgcolor");u("activecolor",oae.contrast(p,l3.lightAmount,l3.darkAmount)),u("bordercolor"),u("borderwidth")}};function uae(e,r,t,n){var a=n.calendar;function o(u,s){return $1.coerce(e,r,fP.buttons,u,s)}var i=o("visible");if(i){var l=o("step");l!=="all"&&(a&&a!=="gregorian"&&(l==="month"||l==="year")?r.stepmode="backward":o("stepmode"),o("count")),o("label")}}function fae(e,r,t){for(var n=t.filter(function(l){return r[l].anchor===e._id}),a=0,o=0;o{"use strict";var cae=sp(),hae=ir().titleCase;vP.exports=function(r,t){var n=r._name,a={};if(t.step==="all")a[n+".autorange"]=!0;else{var o=vae(r,t);a[n+".range[0]"]=o[0],a[n+".range[1]"]=o[1]}return a};function vae(e,r){var t=e.range,n=new Date(e.r2l(t[1])),a=r.step,o=cae["utc"+hae(a)],i=r.count,l;switch(r.stepmode){case"backward":l=e.l2r(+o.offset(n,-i));break;case"todate":var u=o.offset(n,-i);l=e.l2r(+o.ceil(u));break}var s=t[1];return[l,s]}});var wP=de((fde,_P)=>{"use strict";var ed=it(),dae=Cr(),pae=on(),pP=Xr(),xP=mt(),co=ir(),gP=co.strTranslate,j1=Wn(),gae=jt(),f3=qn(),yP=f3.LINE_SPACING,mP=f3.FROM_TL,bP=f3.FROM_BR,u3=o3(),yae=dP();_P.exports=function(r){var t=r._fullLayout,n=t._infolayer.selectAll(".rangeselector").data(mae(r),bae);n.enter().append("g").classed("rangeselector",!0),n.exit().remove(),n.style({cursor:"pointer","pointer-events":"all"}),n.each(function(a){var o=ed.select(this),i=a,l=i.rangeselector,u=o.selectAll("g.button").data(co.filterVisible(l.buttons));u.enter().append("g").classed("button",!0),u.exit().remove(),u.each(function(s){var f=ed.select(this),h=yae(i,s);s._isActive=xae(i,s,h),f.call(s3,l,s),f.call(wae,l,s,r),f.on("click",function(){r._dragged||dae.call("_guiRelayout",r,h)}),f.on("mouseover",function(){s._isHovered=!0,f.call(s3,l,s)}),f.on("mouseout",function(){s._isHovered=!1,f.call(s3,l,s)})}),Tae(r,u,l,i._name,o)})};function mae(e){for(var r=gae.list(e,"x",!0),t=[],n=0;n{"use strict";MP.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:Q1()}}},layoutAttributes:Q1(),handleDefaults:hP(),draw:wP()}});var rd=de(c3=>{"use strict";var AP=Tt().extendFlat;c3.attributes=function(e,r){e=e||{},r=r||{};var t={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},n=e.name?e.name+" ":"",a=e.trace?"trace ":"subplot ",o=r.description?" "+r.description:"",i={x:AP({},t,{}),y:AP({},t,{}),editType:e.editType};return e.noGridCell||(i.row={valType:"integer",min:0,dflt:0,editType:e.editType},i.column={valType:"integer",min:0,dflt:0,editType:e.editType}),i};c3.defaults=function(e,r,t,n){var a=n&&n.x||[0,1],o=n&&n.y||[0,1],i=r.grid;if(i){var l=t("domain.column");l!==void 0&&(l{"use strict";var Aae=ir(),kae=Ls().counter,Sae=rd().attributes,kP=_n().idRegex,Cae=yt(),h3={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[kae("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[kP.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[kP.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:Sae({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function td(e,r,t){var n=r[t+"axes"],a=Object.keys((e._splomAxes||{})[t]||{});if(Array.isArray(n))return n;if(a.length)return a}function Eae(e,r){var t=e.grid||{},n=td(r,t,"x"),a=td(r,t,"y");if(!e.grid&&!n&&!a)return;var o=Array.isArray(t.subplots)&&Array.isArray(t.subplots[0]),i=Array.isArray(n),l=Array.isArray(a),u=i&&n!==t.xaxes&&l&&a!==t.yaxes,s,f;o?(s=t.subplots.length,f=t.subplots[0].length):(l&&(s=a.length),i&&(f=n.length));var h=Cae.newContainer(r,"grid");function p(d,x){return Aae.coerce(t,h,h3,d,x)}var _=p("rows",s),m=p("columns",f);if(!(_*m>1)){delete r.grid;return}if(!o&&!i&&!l){var w=p("pattern")==="independent";w&&(o=!0)}h._hasSubplotGrid=o;var T=p("roworder"),y=T==="top to bottom",k=o?.2:.1,S=o?.3:.1,b,M;u&&r._splomGridDflt&&(b=r._splomGridDflt.xside,M=r._splomGridDflt.yside),h._domains={x:SP("x",p,k,b,m),y:SP("y",p,S,M,_,y)}}function SP(e,r,t,n,a,o){var i=r(e+"gap",t),l=r("domain."+e);r(e+"side",n);for(var u=new Array(a),s=l[0],f=(l[1]-s)/(a-i),h=f*(1-i),p=0;p{"use strict";DP.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var IP=de((pde,PP)=>{"use strict";var RP=nt(),Dae=Cr(),Rae=ir(),Pae=yt(),Iae=v3();PP.exports=function(e,r,t,n){var a="error_"+n.axis,o=Pae.newContainer(r,a),i=e[a]||{};function l(m,w){return Rae.coerce(i,o,Iae,m,w)}var u=i.array!==void 0||i.value!==void 0||i.type==="sqrt",s=l("visible",u);if(s!==!1){var f=l("type","array"in i?"data":"percent"),h=!0;f!=="sqrt"&&(h=l("symmetric",!((f==="data"?"arrayminus":"valueminus")in i))),f==="data"?(l("array"),l("traceref"),h||(l("arrayminus"),l("tracerefminus"))):(f==="percent"||f==="constant")&&(l("value"),h||l("valueminus"));var p="copy_"+n.inherit+"style";if(n.inherit){var _=r["error_"+n.inherit];(_||{}).visible&&l(p,!(i.color||RP(i.thickness)||RP(i.width)))}(!n.inherit||!o[p])&&(l("color",t),l("thickness"),l("width",Dae.traceIs(r,"gl3d")?0:4))}}});var d3=de((gde,NP)=>{"use strict";NP.exports=function(r){var t=r.type,n=r.symmetric;if(t==="data"){var a=r.array||[];if(n)return function(s,f){var h=+a[f];return[h,h]};var o=r.arrayminus||[];return function(s,f){var h=+a[f],p=+o[f];return!isNaN(h)||!isNaN(p)?[p||0,h||0]:[NaN,NaN]}}else{var i=FP(t,r.value),l=FP(t,r.valueminus);return n||r.valueminus===void 0?function(s){var f=i(s);return[f,f]}:function(s){return[l(s),i(s)]}}};function FP(e,r){if(e==="percent")return function(t){return Math.abs(t*r/100)};if(e==="constant")return function(){return Math.abs(r)};if(e==="sqrt")return function(t){return Math.sqrt(Math.abs(t))}}});var OP=de((yde,qP)=>{"use strict";var p3=nt(),Fae=Cr(),g3=Lt(),Nae=ir(),zae=d3();qP.exports=function(r){for(var t=r.calcdata,n=0;n{"use strict";var BP=it(),tl=nt(),qae=mt(),Oae=oa();UP.exports=function(r,t,n,a){var o,i=n.xaxis,l=n.yaxis,u=a&&a.duration>0,s=r._context.staticPlot;t.each(function(f){var h=f[0].trace,p=h.error_x||{},_=h.error_y||{},m;h.ids&&(m=function(k){return k.id});var w=Oae.hasMarkers(h)&&h.marker.maxdisplayed>0;!_.visible&&!p.visible&&(f=[]);var T=BP.select(this).selectAll("g.errorbar").data(f,m);if(T.exit().remove(),!!f.length){p.visible||T.selectAll("path.xerror").remove(),_.visible||T.selectAll("path.yerror").remove(),T.style("opacity",1);var y=T.enter().append("g").classed("errorbar",!0);u&&y.style("opacity",0).transition().duration(a.duration).style("opacity",1),qae.setClipUrl(T,n.layerClipId,r),T.each(function(k){var S=BP.select(this),b=Bae(k,i,l);if(!(w&&!k.vis)){var M,d=S.select("path.yerror");if(_.visible&&tl(b.x)&&tl(b.yh)&&tl(b.ys)){var x=_.width;M="M"+(b.x-x)+","+b.yh+"h"+2*x+"m-"+x+",0V"+b.ys,b.noYS||(M+="m-"+x+",0h"+2*x),o=!d.size(),o?d=S.append("path").style("vector-effect",s?"none":"non-scaling-stroke").classed("yerror",!0):u&&(d=d.transition().duration(a.duration).ease(a.easing)),d.attr("d",M)}else d.remove();var g=S.select("path.xerror");if(p.visible&&tl(b.y)&&tl(b.xh)&&tl(b.xs)){var c=(p.copy_ystyle?_:p).width;M="M"+b.xh+","+(b.y-c)+"v"+2*c+"m0,-"+c+"H"+b.xs,b.noXS||(M+="m0,-"+c+"v"+2*c),o=!g.size(),o?g=S.append("path").style("vector-effect",s?"none":"non-scaling-stroke").classed("xerror",!0):u&&(g=g.transition().duration(a.duration).ease(a.easing)),g.attr("d",M)}else g.remove()}})}})};function Bae(e,r,t){var n={x:r.c2p(e.x),y:t.c2p(e.y)};return e.yh!==void 0&&(n.yh=t.c2p(e.yh),n.ys=t.c2p(e.ys),tl(n.ys)||(n.noYS=!0,n.ys=t.c2p(e.ys,!0))),e.xh!==void 0&&(n.xh=r.c2p(e.xh),n.xs=r.c2p(e.xs),tl(n.xs)||(n.noXS=!0,n.xs=r.c2p(e.xs,!0))),n}});var YP=de((bde,GP)=>{"use strict";var Uae=it(),VP=Xr();GP.exports=function(r){r.each(function(t){var n=t[0].trace,a=n.error_y||{},o=n.error_x||{},i=Uae.select(this);i.selectAll("path.yerror").style("stroke-width",a.thickness+"px").call(VP.stroke,a.color),o.copy_ystyle&&(o=a),i.selectAll("path.xerror").style("stroke-width",o.thickness+"px").call(VP.stroke,o.color)})}});var ZP=de((xde,XP)=>{"use strict";var z0=ir(),WP=zn().overrideAll,q0=v3(),fs={error_x:z0.extendFlat({},q0),error_y:z0.extendFlat({},q0)};delete fs.error_x.copy_zstyle;delete fs.error_y.copy_zstyle;delete fs.error_y.copy_ystyle;var O0={error_x:z0.extendFlat({},q0),error_y:z0.extendFlat({},q0),error_z:z0.extendFlat({},q0)};delete O0.error_x.copy_ystyle;delete O0.error_y.copy_ystyle;delete O0.error_z.copy_ystyle;delete O0.error_z.copy_zstyle;XP.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:fs,bar:fs,histogram:fs,scatter3d:WP(O0,"calc","nested"),scattergl:WP(fs,"calc","nested")}},supplyDefaults:IP(),calc:OP(),makeComputeError:d3(),plot:HP(),style:YP(),hoverInfo:Hae};function Hae(e,r,t){(r.error_y||{}).visible&&(t.yerr=e.yh-e.y,r.error_y.symmetric||(t.yerrneg=e.y-e.ys)),(r.error_x||{}).visible&&(t.xerr=e.xh-e.x,r.error_x.symmetric||(t.xerrneg=e.x-e.xs))}});var KP=de((_de,JP)=>{"use strict";JP.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var nI=de((wde,tI)=>{"use strict";var nl=it(),y3=ka(),ad=on(),QP=Cr(),ho=Lt(),nd=ni(),Ga=ir(),pi=Ga.strTranslate,rI=Tt().extendFlat,m3=Vo(),di=mt(),b3=Xr(),Vae=Rf(),Gae=Wn(),Yae=Si().flipScale,Wae=S1(),Xae=Sm(),Zae=La(),x3=qn(),$P=x3.LINE_SPACING,jP=x3.FROM_TL,eI=x3.FROM_BR,Dt=KP().cn;function Jae(e){var r=e._fullLayout,t=r._infolayer.selectAll("g."+Dt.colorbar).data(Kae(e),function(n){return n._id});t.enter().append("g").attr("class",function(n){return n._id}).classed(Dt.colorbar,!0),t.each(function(n){var a=nl.select(this);Ga.ensureSingle(a,"rect",Dt.cbbg),Ga.ensureSingle(a,"g",Dt.cbfills),Ga.ensureSingle(a,"g",Dt.cblines),Ga.ensureSingle(a,"g",Dt.cbaxis,function(i){i.classed(Dt.crisp,!0)}),Ga.ensureSingle(a,"g",Dt.cbtitleunshift,function(i){i.append("g").classed(Dt.cbtitle,!0)}),Ga.ensureSingle(a,"rect",Dt.cboutline);var o=Qae(a,n,e);o&&o.then&&(e._promises||[]).push(o),e._context.edits.colorbarPosition&&$ae(a,n,e)}),t.exit().each(function(n){ad.autoMargin(e,n._id)}).remove(),t.order()}function Kae(e){var r=e._fullLayout,t=e.calcdata,n=[],a,o,i,l;function u(S){return rI(S,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function s(){typeof l.calc=="function"?l.calc(e,i,a):(a._fillgradient=o.reversescale?Yae(o.colorscale):o.colorscale,a._zrange=[o[l.min],o[l.max]])}for(var f=0;f1){var ee=Math.pow(10,Math.floor(Math.log(H)/Math.LN10));oe*=ee*Ga.roundUp(H/ee,[2,5,10]),(Math.abs(D.start)/D.size+1e-6)%1<2e-6&&(ne.tick0=0)}ne.dtick=oe}ne.domain=n?[q+m/b.h,q+P-m/b.h]:[q+_/b.w,q+P-_/b.w],ne.setScale(),e.attr("transform",pi(Math.round(b.l),Math.round(b.t)));var V=e.select("."+Dt.cbtitleunshift).attr("transform",pi(-Math.round(b.l),-Math.round(b.t))),te=ne.ticklabelposition,ue=ne.title.font.size,ve=e.select("."+Dt.cbaxis),ke,Se=0,he=0;function Ae(Ue,ge){var we={propContainer:ne,propName:r._propPrefix+"title.text",traceIndex:r._traceIndex,_meta:r._meta,placeholder:S._dfltTitle.colorbar,containerGroup:e.select("."+Dt.cbtitle)},Te=Ue.charAt(0)==="h"?Ue.substr(1):"h"+Ue;e.selectAll("."+Te+",."+Te+"-math-group").remove(),Vae.draw(t,Ue,rI(we,ge||{}))}function Ce(){if(n&&Q||!n&&!Q){var Ue,ge;g==="top"&&(Ue=_+b.l+O*w,ge=m+b.t+U*(1-q-P)+3+ue*.75),g==="bottom"&&(Ue=_+b.l+O*w,ge=m+b.t+U*(1-q)-3-ue*.25),g==="right"&&(ge=m+b.t+U*T+3+ue*.75,Ue=_+b.l+O*q),Ae(ne._id+"title",{attributes:{x:Ue,y:ge,"text-anchor":n?"start":"middle"}})}}function Pe(){if(n&&!Q||!n&&Q){var Ue=ne.position||0,ge=ne._offset+ne._length/2,we,Te;if(g==="right")Te=ge,we=b.l+O*Ue+10+ue*(ne.showticklabels?1:.5);else if(we=ge,g==="bottom"&&(Te=b.t+U*Ue+10+(te.indexOf("inside")===-1?ne.tickfont.size:0)+(ne.ticks!=="inside"&&r.ticklen||0)),g==="top"){var me=x.text.split("
").length;Te=b.t+U*Ue+10-F-$P*ue*me}Ae((n?"h":"v")+ne._id+"title",{avoid:{selection:nl.select(t).selectAll("g."+ne._id+"tick"),side:g,offsetTop:n?0:b.t,offsetLeft:n?b.l:0,maxShift:n?S.width:S.height},attributes:{x:we,y:Te,"text-anchor":"middle"},transform:{rotate:n?-90:0,offset:0}})}}function Ee(){if(!n&&!Q||n&&Q){var Ue=e.select("."+Dt.cbtitle),ge=Ue.select("text"),we=[-u/2,u/2],Te=Ue.select(".h"+ne._id+"title-math-group").node(),me=15.6;ge.node()&&(me=parseInt(ge.node().style.fontSize,10)*$P);var ye;if(Te?(ye=di.bBox(Te),he=ye.width,Se=ye.height,Se>me&&(we[1]-=(Se-me)/2)):ge.node()&&!ge.classed(Dt.jsPlaceholder)&&(ye=di.bBox(ge.node()),he=ye.width,Se=ye.height),n){if(Se){if(Se+=5,g==="top")ne.domain[1]-=Se/b.h,we[1]*=-1;else{ne.domain[0]+=Se/b.h;var pe=Gae.lineCount(ge);we[1]+=(1-pe)*me}Ue.attr("transform",pi(we[0],we[1])),ne.setScale()}}else he&&(g==="right"&&(ne.domain[0]+=(he+ue/2)/b.w),Ue.attr("transform",pi(we[0],we[1])),ne.setScale())}e.selectAll("."+Dt.cbfills+",."+Dt.cblines).attr("transform",n?pi(0,Math.round(b.h*(1-ne.domain[1]))):pi(Math.round(b.w*ne.domain[0]),0)),ve.attr("transform",n?pi(0,Math.round(-b.t)):pi(Math.round(-b.l),0));var ce=e.select("."+Dt.cbfills).selectAll("rect."+Dt.cbfill).attr("style","").data(R);ce.enter().append("rect").classed(Dt.cbfill,!0).attr("style",""),ce.exit().remove();var be=c.map(ne.c2p).map(Math.round).sort(function(Ve,Be){return Ve-Be});ce.each(function(Ve,Be){var Ye=[Be===0?c[0]:(R[Be]+R[Be-1])/2,Be===R.length-1?c[1]:(R[Be]+R[Be+1])/2].map(ne.c2p).map(Math.round);n&&(Ye[1]=Ga.constrain(Ye[1]+(Ye[1]>Ye[0])?1:-1,be[0],be[1]));var Me=nl.select(this).attr(n?"x":"y",X).attr(n?"y":"x",nl.min(Ye)).attr(n?"width":"height",Math.max(F,2)).attr(n?"height":"width",Math.max(nl.max(Ye)-nl.min(Ye),2));if(r._fillgradient)di.gradient(Me,t,r._id,n?"vertical":"horizontalreversed",r._fillgradient,"fill");else{var Re=v(Ve).replace("e-","");Me.attr("fill",y3(Re).toHexString())}});var Le=e.select("."+Dt.cblines).selectAll("path."+Dt.cbline).data(d.color&&d.width?N:[]);Le.enter().append("path").classed(Dt.cbline,!0),Le.exit().remove(),Le.each(function(Ve){var Be=X,Ye=Math.round(ne.c2p(Ve))+d.width/2%1;nl.select(this).attr("d","M"+(n?Be+","+Ye:Ye+","+Be)+(n?"h":"v")+F).call(di.lineGroupStyle,d.width,A(Ve),d.dash)}),ve.selectAll("g."+ne._id+"tick,path").remove();var qe=X+F+(u||0)/2-(r.ticks==="outside"?1:0),ze=ho.calcTicks(ne),$e=ho.getTickSigns(ne)[2];return ho.drawTicks(t,ne,{vals:ne.ticks==="inside"?ho.clipEnds(ne,ze):ze,layer:ve,path:ho.makeTickPath(ne,qe,$e),transFn:ho.makeTransTickFn(ne)}),ho.drawLabels(t,ne,{vals:ze,layer:ve,transFn:ho.makeTransTickLabelFn(ne),labelFns:ho.makeLabelFns(ne,qe)})}function Ne(){var Ue,ge=F+u/2;te.indexOf("inside")===-1&&(Ue=di.bBox(ve.node()),ge+=n?Ue.width:Ue.height),ke=V.select("text");var we=0,Te=n&&g==="top",me=!n&&g==="right",ye=0;if(ke.node()&&!ke.classed(Dt.jsPlaceholder)){var pe,ce=V.select(".h"+ne._id+"title-math-group").node();ce&&(n&&Q||!n&&!Q)?(Ue=di.bBox(ce),we=Ue.width,pe=Ue.height):(Ue=di.bBox(V.node()),we=Ue.right-b.l-(n?X:K),pe=Ue.bottom-b.t-(n?K:X),!n&&g==="top"&&(ge+=Ue.height,ye=Ue.height)),me&&(ke.attr("transform",pi(we/2+ue/2,0)),we*=2),ge=Math.max(ge,n?we:pe)}var be=(n?_:m)*2+ge+s+u/2,Le=0;!n&&x.text&&p==="bottom"&&T<=0&&(Le=be/2,be+=Le,ye+=Le),S._hColorbarMoveTitle=Le,S._hColorbarMoveCBTitle=ye;var qe=s+u,ze=(n?X:K)-qe/2-(n?_:0),$e=(n?K:X)-(n?L:m+ye-Le);e.select("."+Dt.cbbg).attr("x",ze).attr("y",$e).attr(n?"width":"height",Math.max(be-Le,2)).attr(n?"height":"width",Math.max(L+qe,2)).call(b3.fill,f).call(b3.stroke,r.bordercolor).style("stroke-width",s);var Ve=me?Math.max(we-10,0):0;e.selectAll("."+Dt.cboutline).attr("x",(n?X:K+_)+Ve).attr("y",(n?K+m-L:X)+(Te?Se:0)).attr(n?"width":"height",Math.max(F,2)).attr(n?"height":"width",Math.max(L-(n?2*m+Se:2*_+Ve),2)).call(b3.stroke,r.outlinecolor).style({fill:"none","stroke-width":u});var Be=n?$*be:0,Ye=n?0:(1-j)*be-ye;if(Be=k?b.l-Be:-Be,Ye=y?b.t-Ye:-Ye,e.attr("transform",pi(Be,Ye)),!n&&(s||y3(f).getAlpha()&&!y3.equals(S.paper_bgcolor,f))){var Me=ve.selectAll("text"),Re=Me[0].length,Qe=e.select("."+Dt.cbbg).node(),Ke=di.bBox(Qe),ar=di.getTranslate(e),se=2;Me.each(function(Mr,Ar){var ft=0,sr=Re-1;if(Ar===ft||Ar===sr){var Pr=di.bBox(this),$r=di.getTranslate(this),Fr;if(Ar===sr){var Gr=Pr.right+$r.x,pt=Ke.right+ar.x+K-s-se+w;Fr=pt-Gr,Fr>0&&(Fr=0)}else if(Ar===ft){var Rr=Pr.left+$r.x,jr=Ke.left+ar.x+K+s+se;Fr=jr-Rr,Fr<0&&(Fr=0)}Fr&&(Re<3?this.setAttribute("transform","translate("+Fr+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var J={},ae=jP[h],De=eI[h],He=jP[p],er=eI[p],nr=be-F;n?(o==="pixels"?(J.y=T,J.t=L*He,J.b=L*er):(J.t=J.b=0,J.yt=T+a*He,J.yb=T-a*er),l==="pixels"?(J.x=w,J.l=be*ae,J.r=be*De):(J.l=nr*ae,J.r=nr*De,J.xl=w-i*ae,J.xr=w+i*De)):(o==="pixels"?(J.x=w,J.l=L*ae,J.r=L*De):(J.l=J.r=0,J.xl=w+a*ae,J.xr=w-a*De),l==="pixels"?(J.y=1-T,J.t=be*He,J.b=be*er):(J.t=nr*He,J.b=nr*er,J.yt=T-i*He,J.yb=T+i*er));var fr=r.y<.5?"b":"t",xr=r.x<.5?"l":"r";t._fullLayout._reservedMargin[r._id]={};var Sr={r:S.width-ze-Be,l:ze+J.r,b:S.height-$e-Ye,t:$e+J.b};k&&y?ad.autoMargin(t,r._id,J):k?t._fullLayout._reservedMargin[r._id][fr]=Sr[fr]:y||n?t._fullLayout._reservedMargin[r._id][xr]=Sr[xr]:t._fullLayout._reservedMargin[r._id][fr]=Sr[fr]}return Ga.syncOrAsync([ad.previousPromises,Ce,Ee,Pe,ad.previousPromises,Ne],t)}function $ae(e,r,t){var n=r.orientation==="v",a=t._fullLayout,o=a._size,i,l,u;nd.init({element:e.node(),gd:t,prepFn:function(){i=e.attr("transform"),m3(e)},moveFn:function(s,f){e.attr("transform",i+pi(s,f)),l=nd.align((n?r._uFrac:r._vFrac)+s/o.w,n?r._thickFrac:r._lenFrac,0,1,r.xanchor),u=nd.align((n?r._vFrac:1-r._uFrac)-f/o.h,n?r._lenFrac:r._thickFrac,0,1,r.yanchor);var h=nd.getCursor(l,u,r.xanchor,r.yanchor);m3(e,h)},doneFn:function(){if(m3(e),l!==void 0&&u!==void 0){var s={};s[r._propPrefix+"x"]=l,s[r._propPrefix+"y"]=u,r._traceIndex!==void 0?QP.call("_guiRestyle",t,s,r._traceIndex):QP.call("_guiRelayout",t,s)}}})}function jae(e,r,t){var n=r._levels,a=[],o=[],i,l,u=n.end+n.size/100,s=n.size,f=1.001*t[0]-.001*t[1],h=1.001*t[1]-.001*t[0];for(l=0;l<1e5&&(i=n.start+l*s,!(s>0?i>=u:i<=u));l++)i>f&&i0?i>=u:i<=u));l++)i>t[0]&&i{"use strict";aI.exports={moduleType:"component",name:"colorbar",attributes:mh(),supplyDefaults:Mg(),draw:nI().draw,hasColorbar:hg()}});var lI=de((Tde,oI)=>{"use strict";oI.exports={moduleType:"component",name:"legend",layoutAttributes:b2(),supplyLayoutDefaults:w2(),draw:F2(),style:D2()}});var uI=de((Ade,sI)=>{"use strict";sI.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var cI=de((kde,fI)=>{"use strict";fI.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var w3=de((Sde,pI)=>{"use strict";var rie=Cr(),dI=ir(),_3=dI.extendFlat,hI=dI.extendDeep;function vI(e){var r;switch(e){case"themes__thumb":r={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":r={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:r={}}return r}function tie(e){var r=["xaxis","yaxis","zaxis"];return r.indexOf(e.slice(0,5))>-1}pI.exports=function(r,t){var n,a=r.data,o=r.layout,i=hI([],a),l=hI({},o,vI(t.tileClass)),u=r._context||{};if(t.width&&(l.width=t.width),t.height&&(l.height=t.height),t.tileClass==="thumbnail"||t.tileClass==="themes__thumb"){l.annotations=[];var s=Object.keys(l);for(n=0;n{"use strict";var nie=ih().EventEmitter,aie=Cr(),iie=ir(),gI=es(),oie=w3(),lie=c1(),sie=h1();function uie(e,r){var t=new nie,n=oie(e,{format:"png"}),a=n.gd;a.style.position="absolute",a.style.left="-5000px",document.body.appendChild(a);function o(){var l=gI.getDelay(a._fullLayout);setTimeout(function(){var u=lie(a),s=document.createElement("canvas");s.id=iie.randstr(),t=sie({format:r.format,width:a._fullLayout.width,height:a._fullLayout.height,canvas:s,emitter:t,svg:u}),t.clean=function(){a&&document.body.removeChild(a)}},l)}var i=gI.getRedrawFunc(a);return aie.call("_doPlot",a,n.data,n.layout,n.config).then(i).then(o).catch(function(l){t.emit("error",l)}),t}yI.exports=uie});var _I=de((Ede,xI)=>{"use strict";var bI=es(),fie={getDelay:bI.getDelay,getRedrawFunc:bI.getRedrawFunc,clone:w3(),toSVG:c1(),svgToImg:h1(),toImage:mI(),downloadImage:jy()};xI.exports=fie});var MI=de(vo=>{"use strict";vo.version=_c().version;cx();ew();var cie=Cr(),B0=vo.register=cie.register,T3=AC(),wI=Object.keys(T3);for(id=0;id{"use strict";TI.exports=MI()});var pn=de((Rde,kI)=>{(function(){var e={24:function(a){var o={left:0,top:0};a.exports=i;function i(u,s,f){s=s||u.currentTarget||u.srcElement,Array.isArray(f)||(f=[0,0]);var h=u.clientX||0,p=u.clientY||0,_=l(s);return f[0]=h-_.left,f[1]=p-_.top,f}function l(u){return u===window||u===document||u===document.body?o:u.getBoundingClientRect()}},109:function(a){a.exports=o;function o(i,l,u,s){var f=u[0],h=u[2],p=l[0]-f,_=l[2]-h,m=Math.sin(s),w=Math.cos(s);return i[0]=f+_*m+p*w,i[1]=l[1],i[2]=h+_*w-p*m,i}},160:function(a){a.exports=o;function o(i,l,u){return i[0]=Math.max(l[0],u[0]),i[1]=Math.max(l[1],u[1]),i[2]=Math.max(l[2],u[2]),i[3]=Math.max(l[3],u[3]),i}},216:function(a){"use strict";a.exports=o;function o(i,l){for(var u={},s=0;s1){m[0]in p||(p[m[0]]=[]),p=p[m[0]];for(var w=1;w=0;--L){var K=F[L];P=K[0];var ne=R[P],Q=ne[0],oe=ne[1],re=E[Q],H=E[oe];if((re[0]-H[0]||re[1]-H[1])<0){var ee=Q;Q=oe,oe=ee}ne[0]=Q;var V=ne[1]=K[1],te;for(I&&(te=ne[2]);L>0&&F[L-1][0]===P;){var K=F[--L],ue=K[1];I?R.push([V,ue,te]):R.push([V,ue]),V=ue}I?R.push([V,oe,te]):R.push([V,oe])}return O}function d(E,R,N){for(var F=R.length,I=new l(F),L=[],P=0;PR[2]?1:0)}function c(E,R,N){if(E.length!==0){if(R)for(var F=0;F0||P.length>0}function D(E,R,N){var F;if(N){F=R;for(var I=new Array(R.length),L=0;L{"use strict";u6.exports=function(r){return r}});var Ip=de(Ki=>{"use strict";var XH=nt(),ZH=kl(),JH=Rp(),KH=nn().BADNUM,Pp=1e-9;Ki.findBin=function(e,r,t){if(XH(r.start))return t?Math.ceil((e-r.start)/r.size-Pp)-1:Math.floor((e-r.start)/r.size+Pp);var n=0,a=r.length,o=0,i=a>1?(r[a-1]-r[0])/(a-1):1,l,u;for(i>=0?u=t?QH:$H:u=t?eV:jH,e+=i*Pp*(t?-1:1)*(i>=0?1:-1);n90&&ZH.log("Long binary search..."),n-1};function QH(e,r){return er}function eV(e,r){return e>=r}Ki.sorterAsc=function(e,r){return e-r};Ki.sorterDes=function(e,r){return r-e};Ki.distinctVals=function(e){var r=e.slice();r.sort(Ki.sorterAsc);var t;for(t=r.length-1;t>-1&&r[t]===KH;t--);for(var n=r[t]-r[0]||1,a=n/(t||1)/1e4,o=[],i,l=0;l<=t;l++){var u=r[l],s=u-i;i===void 0?(o.push(u),i=u):s>a&&(n=Math.min(n,s),o.push(u),i=u)}return{vals:o,minDiff:n}};Ki.roundUp=function(e,r,t){for(var n=0,a=r.length-1,o,i=0,l=t?0:1,u=t?1:0,s=t?Math.ceil:Math.floor;n0&&(n=1),t&&n)return e.sort(r)}return n?e:e.reverse()};Ki.findIndexOfMin=function(e,r){r=r||JH;for(var t=1/0,n,a=0;a{"use strict";f6.exports=function(r){return Object.keys(r).sort()}});var c6=de(Vt=>{"use strict";var xf=nt(),rV=ea().isArrayOrTypedArray;Vt.aggNums=function(e,r,t,n){var a,o;if((!n||n>t.length)&&(n=t.length),xf(r)||(r=!1),rV(t[0])){for(o=new Array(n),a=0;ae.length-1)return e[e.length-1];var t=r%1;return t*e[Math.ceil(r)]+(1-t)*e[Math.floor(r)]}});var g6=de((A0e,p6)=>{"use strict";var h6=Es(),Fp=h6.mod,tV=h6.modHalf,bf=Math.PI,Lo=2*bf;function nV(e){return e/180*bf}function aV(e){return e/bf*180}function Np(e){return Math.abs(e[1]-e[0])>Lo-1e-14}function v6(e,r){return tV(r-e,Lo)}function iV(e,r){return Math.abs(v6(e,r))}function d6(e,r){if(Np(r))return!0;var t,n;r[0]n&&(n+=Lo);var a=Fp(e,Lo),o=a+Lo;return a>=t&&a<=n||o>=t&&o<=n}function oV(e,r,t,n){if(!d6(r,n))return!1;var a,o;return t[0]=a&&e<=o}function zp(e,r,t,n,a,o,i){a=a||0,o=o||0;var l=Np([t,n]),u,s,f,h,p;l?(u=0,s=bf,f=Lo):t{"use strict";Cl.isLeftAnchor=function(r){return r.xanchor==="left"||r.xanchor==="auto"&&r.x<=1/3};Cl.isCenterAnchor=function(r){return r.xanchor==="center"||r.xanchor==="auto"&&r.x>1/3&&r.x<2/3};Cl.isRightAnchor=function(r){return r.xanchor==="right"||r.xanchor==="auto"&&r.x>=2/3};Cl.isTopAnchor=function(r){return r.yanchor==="top"||r.yanchor==="auto"&&r.y>=2/3};Cl.isMiddleAnchor=function(r){return r.yanchor==="middle"||r.yanchor==="auto"&&r.y>1/3&&r.y<2/3};Cl.isBottomAnchor=function(r){return r.yanchor==="bottom"||r.yanchor==="auto"&&r.y<=1/3}});var b6=de(El=>{"use strict";var qp=Es().mod;El.segmentsIntersect=x6;function x6(e,r,t,n,a,o,i,l){var u=t-e,s=a-e,f=i-a,h=n-r,p=o-r,b=l-o,m=u*b-f*h;if(m===0)return null;var w=(s*b-f*p)/m,T=(s*h-u*p)/m;return T<0||T>1||w<0||w>1?null:{x:e+u*w,y:r+h*w}}El.segmentDistance=function(r,t,n,a,o,i,l,u){if(x6(r,t,n,a,o,i,l,u))return 0;var s=n-r,f=a-t,h=l-o,p=u-i,b=s*s+f*f,m=h*h+p*p,w=Math.min(Kc(s,f,b,o-r,i-t),Kc(s,f,b,l-r,u-t),Kc(h,p,m,r-o,t-i),Kc(h,p,m,n-o,a-i));return Math.sqrt(w)};function Kc(e,r,t,n,a){var o=n*e+a*r;if(o<0)return n*n+a*a;if(o>t){var i=n-e,l=a-r;return i*i+l*l}else{var u=n*r-a*e;return u*u/t}}var Qc,Op,m6;El.getTextLocation=function(r,t,n,a){if((r!==Op||a!==m6)&&(Qc={},Op=r,m6=a),Qc[n])return Qc[n];var o=r.getPointAtLength(qp(n-a/2,t)),i=r.getPointAtLength(qp(n+a/2,t)),l=Math.atan((i.y-o.y)/(i.x-o.x)),u=r.getPointAtLength(qp(n,t)),s=(u.x*4+o.x+i.x)/6,f=(u.y*4+o.y+i.y)/6,h={x:s,y:f,theta:l};return Qc[n]=h,h};El.clearLocationCache=function(){Op=null};El.getVisibleSegment=function(r,t,n){var a=t.left,o=t.right,i=t.top,l=t.bottom,u=0,s=r.getTotalLength(),f=s,h,p;function b(w){var T=r.getPointAtLength(w);w===0?h=T:w===s&&(p=T);var y=T.xo?T.x-o:0,k=T.yl?T.y-l:0;return Math.sqrt(y*y+k*k)}for(var m=b(u);m;){if(u+=m+n,u>f)return;m=b(u)}for(m=b(f);m;){if(f-=m+n,u>f)return;m=b(f)}return{min:u,max:f,len:f-u,total:s,isClosed:u===0&&f===s&&Math.abs(h.x-p.x)<.1&&Math.abs(h.y-p.y)<.1}};El.findPointOnPath=function(r,t,n,a){a=a||{};for(var o=a.pathLength||r.getTotalLength(),i=a.tolerance||.001,l=a.iterationLimit||30,u=r.getPointAtLength(0)[n]>r.getPointAtLength(o)[n]?-1:1,s=0,f=0,h=o,p,b,m;s0?h=p:f=p,s++}return b}});var $c=de(_f=>{"use strict";var Qi={};_f.throttle=function(r,t,n){var a=Qi[r],o=Date.now();if(!a){for(var i in Qi)Qi[i].tsa.ts+t){l();return}a.timer=setTimeout(function(){l(),a.timer=null},t)};_f.done=function(e){var r=Qi[e];return!r||!r.timer?Promise.resolve():new Promise(function(t){var n=r.onDone;r.onDone=function(){n&&n(),t(),r.onDone=null}})};_f.clear=function(e){if(e)_6(Qi[e]),delete Qi[e];else for(var r in Qi)_f.clear(r)};function _6(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var M6=de((E0e,w6)=>{"use strict";w6.exports=function(r){r._responsiveChartHandler&&(window.removeEventListener("resize",r._responsiveChartHandler),delete r._responsiveChartHandler)}});var T6=de((L0e,jc)=>{"use strict";jc.exports=Bp;jc.exports.isMobile=Bp;jc.exports.default=Bp;var fV=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,cV=/CrOS/,hV=/android|ipad|playbook|silk/i;function Bp(e){e||(e={});let r=e.ua;if(!r&&typeof navigator!="undefined"&&(r=navigator.userAgent),r&&r.headers&&typeof r.headers["user-agent"]=="string"&&(r=r.headers["user-agent"]),typeof r!="string")return!1;let t=fV.test(r)&&!cV.test(r)||!!e.tablet&&hV.test(r);return!t&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&r.indexOf("Macintosh")!==-1&&r.indexOf("Safari")!==-1&&(t=!0),t}});var k6=de((D0e,A6)=>{"use strict";var vV=nt(),dV=T6();A6.exports=function(r){var t;if(r&&r.hasOwnProperty("userAgent")?t=r.userAgent:t=pV(),typeof t!="string")return!0;var n=dV({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!n)for(var a=t.split(" "),o=1;o-1;l--){var u=a[l];if(u.slice(0,8)==="Version/"){var s=u.slice(8).split(".")[0];if(vV(s)&&(s=+s),s>=13)return!0}}}return n};function pV(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var C6=de((R0e,S6)=>{"use strict";var gV=it();S6.exports=function(r,t,n){var a=r.selectAll("g."+n.replace(/\s/g,".")).data(t,function(i){return i[0].trace.uid});a.exit().remove(),a.enter().append("g").attr("class",n),a.order();var o=r.classed("rangeplot")?"nodeRangePlot3":"node3";return a.each(function(i){i[0][o]=gV.select(this)}),a}});var L6=de((P0e,E6)=>{"use strict";var yV=Cr();E6.exports=function(r,t){for(var n=r._context.locale,a=0;a<2;a++){for(var o=r._context.locales,i=0;i<2;i++){var l=(o[n]||{}).dictionary;if(l){var u=l[t];if(u)return u}o=yV.localeRegistry}var s=n.split("-")[0];if(s===n)break;n=s}return t}});var R6=de((I0e,D6)=>{"use strict";D6.exports=function(r){for(var t={},n=[],a=0,o=0;o{"use strict";P6.exports=function(r){for(var t=bV(r)?xV:mV,n=[],a=0;a{"use strict";F6.exports=function(r,t){if(!t)return r;var n=1/Math.abs(t),a=n>1?(n*r+n*t)/n:r+t,o=String(a).length;if(o>16){var i=String(t).length,l=String(r).length;if(o>=l+i){var u=parseFloat(a).toPrecision(12);u.indexOf("e+")===-1&&(a=+u)}}return a}});var q6=de((z0e,z6)=>{"use strict";var _V=nt(),wV=nn().BADNUM,MV=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;z6.exports=function(r){return typeof r=="string"&&(r=r.replace(MV,"")),_V(r)?Number(r):wV}});var ir=de((q0e,Q6)=>{"use strict";var wf=it(),TV=Ss().utcFormat,AV=fp().format,G6=nt(),Y6=nn(),W6=Y6.FP_SAFE,kV=-W6,O6=Y6.BADNUM,Xe=Q6.exports={};Xe.adjustFormat=function(r){return!r||/^\d[.]\df/.test(r)||/[.]\d%/.test(r)?r:r==="0.f"?"~f":/^\d%/.test(r)?"~%":/^\ds/.test(r)?"~s":!/^[~,.0$]/.test(r)&&/[&fps]/.test(r)?"~"+r:r};var B6={};Xe.warnBadFormat=function(e){var r=String(e);B6[r]||(B6[r]=1,Xe.warn('encountered bad format: "'+r+'"'))};Xe.noFormat=function(e){return String(e)};Xe.numberFormat=function(e){var r;try{r=AV(Xe.adjustFormat(e))}catch(t){return Xe.warnBadFormat(e),Xe.noFormat}return r};Xe.nestedProperty=Ec();Xe.keyedContainer=Db();Xe.relativeAttr=Pb();Xe.isPlainObject=wo();Xe.toLogRange=Dc();Xe.relinkPrivateKeys=zb();var Do=ea();Xe.isArrayBuffer=Do.isArrayBuffer;Xe.isTypedArray=Do.isTypedArray;Xe.isArrayOrTypedArray=Do.isArrayOrTypedArray;Xe.isArray1D=Do.isArray1D;Xe.ensureArray=Do.ensureArray;Xe.concat=Do.concat;Xe.maxRowLength=Do.maxRowLength;Xe.minRowLength=Do.minRowLength;var X6=Es();Xe.mod=X6.mod;Xe.modHalf=X6.modHalf;var Ro=t4();Xe.valObjectMeta=Ro.valObjectMeta;Xe.coerce=Ro.coerce;Xe.coerce2=Ro.coerce2;Xe.coerceFont=Ro.coerceFont;Xe.coercePattern=Ro.coercePattern;Xe.coerceHoverinfo=Ro.coerceHoverinfo;Xe.coerceSelectionMarkerOpacity=Ro.coerceSelectionMarkerOpacity;Xe.validate=Ro.validate;var va=s6();Xe.dateTime2ms=va.dateTime2ms;Xe.isDateTime=va.isDateTime;Xe.ms2DateTime=va.ms2DateTime;Xe.ms2DateTimeLocal=va.ms2DateTimeLocal;Xe.cleanDate=va.cleanDate;Xe.isJSDate=va.isJSDate;Xe.formatDate=va.formatDate;Xe.incrementMonth=va.incrementMonth;Xe.dateTick0=va.dateTick0;Xe.dfltRange=va.dfltRange;Xe.findExactDates=va.findExactDates;Xe.MIN_MS=va.MIN_MS;Xe.MAX_MS=va.MAX_MS;var Ll=Ip();Xe.findBin=Ll.findBin;Xe.sorterAsc=Ll.sorterAsc;Xe.sorterDes=Ll.sorterDes;Xe.distinctVals=Ll.distinctVals;Xe.roundUp=Ll.roundUp;Xe.sort=Ll.sort;Xe.findIndexOfMin=Ll.findIndexOfMin;Xe.sortObjectKeys=Jc();var $i=c6();Xe.aggNums=$i.aggNums;Xe.len=$i.len;Xe.mean=$i.mean;Xe.geometricMean=$i.geometricMean;Xe.median=$i.median;Xe.midRange=$i.midRange;Xe.variance=$i.variance;Xe.stdev=$i.stdev;Xe.interp=$i.interp;var $a=Oc();Xe.init2dArray=$a.init2dArray;Xe.transposeRagged=$a.transposeRagged;Xe.dot=$a.dot;Xe.translationMatrix=$a.translationMatrix;Xe.rotationMatrix=$a.rotationMatrix;Xe.rotationXYMatrix=$a.rotationXYMatrix;Xe.apply3DTransform=$a.apply3DTransform;Xe.apply2DTransform=$a.apply2DTransform;Xe.apply2DTransform2=$a.apply2DTransform2;Xe.convertCssMatrix=$a.convertCssMatrix;Xe.inverseTransformMatrix=$a.inverseTransformMatrix;var ki=g6();Xe.deg2rad=ki.deg2rad;Xe.rad2deg=ki.rad2deg;Xe.angleDelta=ki.angleDelta;Xe.angleDist=ki.angleDist;Xe.isFullCircle=ki.isFullCircle;Xe.isAngleInsideSector=ki.isAngleInsideSector;Xe.isPtInsideSector=ki.isPtInsideSector;Xe.pathArc=ki.pathArc;Xe.pathSector=ki.pathSector;Xe.pathAnnulus=ki.pathAnnulus;var Bs=y6();Xe.isLeftAnchor=Bs.isLeftAnchor;Xe.isCenterAnchor=Bs.isCenterAnchor;Xe.isRightAnchor=Bs.isRightAnchor;Xe.isTopAnchor=Bs.isTopAnchor;Xe.isMiddleAnchor=Bs.isMiddleAnchor;Xe.isBottomAnchor=Bs.isBottomAnchor;var Us=b6();Xe.segmentsIntersect=Us.segmentsIntersect;Xe.segmentDistance=Us.segmentDistance;Xe.getTextLocation=Us.getTextLocation;Xe.clearLocationCache=Us.clearLocationCache;Xe.getVisibleSegment=Us.getVisibleSegment;Xe.findPointOnPath=Us.findPointOnPath;var th=Tt();Xe.extendFlat=th.extendFlat;Xe.extendDeep=th.extendDeep;Xe.extendDeepAll=th.extendDeepAll;Xe.extendDeepNoArrays=th.extendDeepNoArrays;var Up=kl();Xe.log=Up.log;Xe.warn=Up.warn;Xe.error=Up.error;var SV=Ls();Xe.counterRegex=SV.counter;var Hp=$c();Xe.throttle=Hp.throttle;Xe.throttleDone=Hp.done;Xe.clearThrottle=Hp.clear;var ja=pf();Xe.getGraphDiv=ja.getGraphDiv;Xe.isPlotDiv=ja.isPlotDiv;Xe.removeElement=ja.removeElement;Xe.addStyleRule=ja.addStyleRule;Xe.addRelatedStyleRule=ja.addRelatedStyleRule;Xe.deleteRelatedStyleRule=ja.deleteRelatedStyleRule;Xe.setStyleOnHover=ja.setStyleOnHover;Xe.getFullTransformMatrix=ja.getFullTransformMatrix;Xe.getElementTransformMatrix=ja.getElementTransformMatrix;Xe.getElementAndAncestors=ja.getElementAndAncestors;Xe.equalDomRects=ja.equalDomRects;Xe.clearResponsive=M6();Xe.preserveDrawingBuffer=k6();Xe.makeTraceGroups=C6();Xe._=L6();Xe.notifier=_p();Xe.filterUnique=R6();Xe.filterVisible=I6();Xe.pushUnique=Tp();Xe.increment=N6();Xe.cleanNumber=q6();Xe.ensureNumber=function(r){return G6(r)?(r=Number(r),r>W6||r=r?!1:G6(e)&&e>=0&&e%1===0};Xe.noop=qc();Xe.identity=Rp();Xe.repeat=function(e,r){for(var t=new Array(r),n=0;nt?Math.max(t,Math.min(r,e)):Math.max(r,Math.min(t,e))};Xe.bBoxIntersect=function(e,r,t){return t=t||0,e.left<=r.right+t&&r.left<=e.right+t&&e.top<=r.bottom+t&&r.top<=e.bottom+t};Xe.simpleMap=function(e,r,t,n,a){for(var o=e.length,i=new Array(o),l=0;l=Math.pow(2,t)?a>10?(Xe.warn("randstr failed uniqueness"),i):e(r,t,n,(a||0)+1):i};Xe.OptionControl=function(e,r){e||(e={}),r||(r="opt");var t={};return t.optionList=[],t._newoption=function(n){n[r]=e,t[n.name]=n,t.optionList.push(n)},t["_"+r]=e,t};Xe.smooth=function(e,r){if(r=Math.round(r)||0,r<2)return e;var t=e.length,n=2*t,a=2*r-1,o=new Array(a),i=new Array(t),l,u,s,f;for(l=0;l=n&&(s-=n*Math.floor(s/n)),s<0?s=-1-s:s>=t&&(s=n-1-s),f+=e[s]*o[u];i[l]=f}return i};Xe.syncOrAsync=function(e,r,t){var n,a;function o(){return Xe.syncOrAsync(e,r,t)}for(;e.length;)if(a=e.splice(0,1)[0],n=a(r),n&&n.then)return n.then(o);return t&&t(r)};Xe.stripTrailingSlash=function(e){return e.slice(-1)==="/"?e.slice(0,-1):e};Xe.noneOrAll=function(e,r,t){if(e){var n=!1,a=!0,o,i;for(o=0;o0?a:0})};Xe.fillArray=function(e,r,t,n){if(n=n||Xe.identity,Xe.isArrayOrTypedArray(e))for(var a=0;aLV.test(window.navigator.userAgent);var DV=/Firefox\/(\d+)\.\d+/;Xe.getFirefoxVersion=function(){var e=DV.exec(window.navigator.userAgent);if(e&&e.length===2){var r=parseInt(e[1]);if(!isNaN(r))return r}return null};Xe.isD3Selection=function(e){return e instanceof wf.selection};Xe.ensureSingle=function(e,r,t,n){var a=e.select(r+(t?"."+t:""));if(a.size())return a;var o=e.append(r);return t&&o.classed(t,!0),n&&o.call(n),o};Xe.ensureSingleById=function(e,r,t,n){var a=e.select(r+"#"+t);if(a.size())return a;var o=e.append(r).attr("id",t);return n&&o.call(n),o};Xe.objectFromPath=function(e,r){for(var t=e.split("."),n,a=n={},o=0;o1?a+i[1]:"";if(o&&(i.length>1||l.length>4||t))for(;n.test(l);)l=l.replace(n,"$1"+o+"$2");return l+u};Xe.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var K6=/^\w*$/;Xe.templateString=function(e,r){var t={};return e.replace(Xe.TEMPLATE_STRING_REGEX,function(n,a){var o;return K6.test(a)?o=r[a]:(t[a]=t[a]||Xe.nestedProperty(r,a).get,o=t[a](!0)),o!==void 0?o:""})};var IV={max:10,count:0,name:"hovertemplate"};Xe.hovertemplateString=e=>Vp(bc(bl({},e),{opts:IV}));var FV={max:10,count:0,name:"texttemplate"};Xe.texttemplateString=e=>Vp(bc(bl({},e),{opts:FV}));var NV=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function zV(e){var r=e.match(NV);return r?{key:r[1],op:r[2],number:Number(r[3])}:{key:e,op:null,number:null}}var qV={max:10,count:0,name:"texttemplate",parseMultDiv:!0};Xe.texttemplateStringForShapes=e=>Vp(bc(bl({},e),{opts:qV}));var U6=/^[:|\|]/;function Vp({data:e=[],locale:r,fallback:t,labels:n={},opts:a,template:o}){return o.replace(Xe.TEMPLATE_STRING_REGEX,(i,l,u)=>{let s=["xother","yother"].includes(l),f=["_xother","_yother"].includes(l),h=["_xother_","_yother_"].includes(l),p=["xother_","yother_"].includes(l),b=s||f||p||h;(f||h)&&(l=l.substring(1)),(p||h)&&(l=l.substring(0,l.length-1));let m=null,w=null;if(a.parseMultDiv){var T=zV(l);l=T.key,m=T.op,w=T.number}let y;if(b){if(n[l]===void 0)return"";y=n[l]}else for(let M of e)if(M){if(M.hasOwnProperty(l)){y=M[l];break}if(K6.test(l)||(y=Xe.nestedProperty(M,l).get(!0)),y!==void 0)break}if(y===void 0){let{count:M,max:d,name:_}=a,g=t===!1?i:t;return M=rh&&i<=H6,s=l>=rh&&l<=H6;if(u&&(n=10*n+i-rh),s&&(a=10*a+l-rh),!u||!s){if(n!==a)return n-a;if(i!==l)return i-l}}return a-n};var Os=2e9;Xe.seedPseudoRandom=function(){Os=2e9};Xe.pseudoRandom=function(){var e=Os;return Os=(69069*Os+1)%4294967296,Math.abs(Os-e)<429496729?Xe.pseudoRandom():Os/4294967296};Xe.fillText=function(e,r,t){var n=Array.isArray(t)?function(i){t.push(i)}:function(i){t.text=i},a=Xe.extractOption(e,r,"htx","hovertext");if(Xe.isValidTextValue(a))return n(a);var o=Xe.extractOption(e,r,"tx","text");if(Xe.isValidTextValue(o))return n(o)};Xe.isValidTextValue=function(e){return e||e===0};Xe.formatPercent=function(e,r){r=r||0;for(var t=(Math.round(100*e*Math.pow(10,r))*Math.pow(.1,r)).toFixed(r)+"%",n=0;n1&&(s=1):s=0,Xe.strTranslate(a-s*(t+i),o-s*(n+l))+Xe.strScale(s)+(u?"rotate("+u+(r?"":" "+t+" "+n)+")":"")};Xe.setTransormAndDisplay=function(e,r){e.attr("transform",Xe.getTextTransform(r)),e.style("display",r.scale?null:"none")};Xe.ensureUniformFontSize=function(e,r){var t=Xe.extendFlat({},r);return t.size=Math.max(r.size,e._fullLayout.uniformtext.minsize||0),t};Xe.join2=function(e,r,t){var n=e.length;return n>1?e.slice(0,-1).join(r)+t+e[n-1]:e.join(r)};Xe.bigFont=function(e){return Math.round(1.2*e)};var V6=Xe.getFirefoxVersion(),OV=V6!==null&&V6<86;Xe.getPositionFromD3Event=function(){return OV?[wf.event.layerX,wf.event.layerY]:[wf.event.offsetX,wf.event.offsetY]}});var ew=de(()=>{"use strict";var BV=ir(),$6={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(Gp in $6)j6=Gp.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),BV.addStyleRule(j6,$6[Gp]);var j6,Gp});var Yp=de((H0e,rw)=>{rw.exports=!0});var Xp=de((V0e,tw)=>{"use strict";var UV=Yp(),Wp;typeof window.matchMedia=="function"?Wp=!window.matchMedia("(hover: none)").matches:Wp=UV;tw.exports=Wp});var ih=de((G0e,Zp)=>{"use strict";var Hs=typeof Reflect=="object"?Reflect:null,nw=Hs&&typeof Hs.apply=="function"?Hs.apply:function(r,t,n){return Function.prototype.apply.call(r,t,n)},nh;Hs&&typeof Hs.ownKeys=="function"?nh=Hs.ownKeys:Object.getOwnPropertySymbols?nh=function(r){return Object.getOwnPropertyNames(r).concat(Object.getOwnPropertySymbols(r))}:nh=function(r){return Object.getOwnPropertyNames(r)};function HV(e){console&&console.warn&&console.warn(e)}var iw=Number.isNaN||function(r){return r!==r};function At(){At.init.call(this)}Zp.exports=At;Zp.exports.once=WV;At.EventEmitter=At;At.prototype._events=void 0;At.prototype._eventsCount=0;At.prototype._maxListeners=void 0;var aw=10;function ah(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(At,"defaultMaxListeners",{enumerable:!0,get:function(){return aw},set:function(e){if(typeof e!="number"||e<0||iw(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");aw=e}});At.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};At.prototype.setMaxListeners=function(r){if(typeof r!="number"||r<0||iw(r))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+r+".");return this._maxListeners=r,this};function ow(e){return e._maxListeners===void 0?At.defaultMaxListeners:e._maxListeners}At.prototype.getMaxListeners=function(){return ow(this)};At.prototype.emit=function(r){for(var t=[],n=1;n0&&(i=t[0]),i instanceof Error)throw i;var l=new Error("Unhandled error."+(i?" ("+i.message+")":""));throw l.context=i,l}var u=o[r];if(u===void 0)return!1;if(typeof u=="function")nw(u,this,t);else for(var s=u.length,f=cw(u,s),n=0;n0&&i.length>a&&!i.warned){i.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+i.length+" "+String(r)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=r,l.count=i.length,HV(l)}return e}At.prototype.addListener=function(r,t){return lw(this,r,t,!1)};At.prototype.on=At.prototype.addListener;At.prototype.prependListener=function(r,t){return lw(this,r,t,!0)};function VV(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function sw(e,r,t){var n={fired:!1,wrapFn:void 0,target:e,type:r,listener:t},a=VV.bind(n);return a.listener=t,n.wrapFn=a,a}At.prototype.once=function(r,t){return ah(t),this.on(r,sw(this,r,t)),this};At.prototype.prependOnceListener=function(r,t){return ah(t),this.prependListener(r,sw(this,r,t)),this};At.prototype.removeListener=function(r,t){var n,a,o,i,l;if(ah(t),a=this._events,a===void 0)return this;if(n=a[r],n===void 0)return this;if(n===t||n.listener===t)--this._eventsCount===0?this._events=Object.create(null):(delete a[r],a.removeListener&&this.emit("removeListener",r,n.listener||t));else if(typeof n!="function"){for(o=-1,i=n.length-1;i>=0;i--)if(n[i]===t||n[i].listener===t){l=n[i].listener,o=i;break}if(o<0)return this;o===0?n.shift():GV(n,o),n.length===1&&(a[r]=n[0]),a.removeListener!==void 0&&this.emit("removeListener",r,l||t)}return this};At.prototype.off=At.prototype.removeListener;At.prototype.removeAllListeners=function(r){var t,n,a;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[r]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[r]),this;if(arguments.length===0){var o=Object.keys(n),i;for(a=0;a=0;a--)this.removeListener(r,t[a]);return this};function uw(e,r,t){var n=e._events;if(n===void 0)return[];var a=n[r];return a===void 0?[]:typeof a=="function"?t?[a.listener||a]:[a]:t?YV(a):cw(a,a.length)}At.prototype.listeners=function(r){return uw(this,r,!0)};At.prototype.rawListeners=function(r){return uw(this,r,!1)};At.listenerCount=function(e,r){return typeof e.listenerCount=="function"?e.listenerCount(r):fw.call(e,r)};At.prototype.listenerCount=fw;function fw(e){var r=this._events;if(r!==void 0){var t=r[e];if(typeof t=="function")return 1;if(t!==void 0)return t.length}return 0}At.prototype.eventNames=function(){return this._eventsCount>0?nh(this._events):[]};function cw(e,r){for(var t=new Array(r),n=0;n{"use strict";var Jp=ih().EventEmitter,ZV={init:function(e){if(e._ev instanceof Jp)return e;var r=new Jp,t=new Jp;return e._ev=r,e._internalEv=t,e.on=r.on.bind(r),e.once=r.once.bind(r),e.removeListener=r.removeListener.bind(r),e.removeAllListeners=r.removeAllListeners.bind(r),e._internalOn=t.on.bind(t),e._internalOnce=t.once.bind(t),e._removeInternalListener=t.removeListener.bind(t),e._removeAllInternalListeners=t.removeAllListeners.bind(t),e.emit=function(n,a){r.emit(n,a),t.emit(n,a)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,r,t){var n,a=e._ev;if(!a)return;var o=a._events[r];if(!o)return;function i(u){if(u.listener){if(a.removeListener(r,u.listener),!u.fired)return u.fired=!0,u.listener.apply(a,[t])}else return u.apply(a,[t])}o=Array.isArray(o)?o:[o];var l;for(l=0;l{"use strict";var dw=ir(),JV=Al().dfltConfig;function KV(e,r){for(var t=[],n,a=0;aJV.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};ji.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};ji.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};ji.undo=function(r){var t,n;if(!(r.undoQueue===void 0||isNaN(r.undoQueue.index)||r.undoQueue.index<=0)){for(r.undoQueue.index--,t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,n=0;n=r.undoQueue.queue.length)){for(t=r.undoQueue.queue[r.undoQueue.index],r.undoQueue.inSequence=!0,n=0;n{"use strict";yw.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var Ys=de($t=>{"use strict";var Ca=Cr(),Tf=ir(),lh=Sn(),Qp=Is(),QV=Kp(),$V=gf(),jV=Al().configAttributes,mw=zn(),ei=Tf.extendDeepAll,Vs=Tf.isPlainObject,eG=Tf.isArrayOrTypedArray,sh=Tf.nestedProperty,rG=Tf.valObjectMeta,$p="_isSubplotObj",uh="_isLinkedToArray",tG="_arrayAttrRegexps",bw="_deprecated",jp=[$p,uh,tG,bw];$t.IS_SUBPLOT_OBJ=$p;$t.IS_LINKED_TO_ARRAY=uh;$t.DEPRECATED=bw;$t.UNDERSCORE_ATTRS=jp;$t.get=function(){var e={};return Ca.allTypes.forEach(function(r){e[r]=aG(r)}),{defs:{valObjects:rG,metaKeys:jp.concat(["description","role","editType","impliedEdits"]),editType:{traces:mw.traces,layout:mw.layout},impliedEdits:{}},traces:e,layout:iG(),frames:oG(),animation:Gs($V),config:Gs(jV)}};$t.crawl=function(e,r,t,n){var a=t||0;n=n||"",Object.keys(e).forEach(function(o){var i=e[o];if(jp.indexOf(o)===-1){var l=(n?n+".":"")+o;r(i,o,e,a,l),!$t.isValObject(i)&&Vs(i)&&o!=="impliedEdits"&&$t.crawl(i,r,a+1,l)}})};$t.isValObject=function(e){return e&&e.valType!==void 0};$t.findArrayAttributes=function(e){var r=[],t=[],n=[],a,o;function i(u,s,f,h){t=t.slice(0,h).concat([s]),n=n.slice(0,h).concat([u&&u._isLinkedToArray]);var p=u&&(u.valType==="data_array"||u.arrayOk===!0)&&!(t[h-1]==="colorbar"&&(s==="ticktext"||s==="tickvals"));p&&l(a,0,"")}function l(u,s,f){var h=u[t[s]],p=f+t[s];if(s===t.length-1)eG(h)&&r.push(o+p);else if(n[s]){if(Array.isArray(h))for(var b=0;b=o.length)return!1;if(e.dimensions===2){if(t++,r.length===t)return e;var i=r[t];if(!oh(i))return!1;e=o[a][i]}else e=o[a]}else e=o}}return e}function oh(e){return e===Math.round(e)&&e>=0}function aG(e){var r,t;r=Ca.modules[e]._module,t=r.basePlotModule;var n={};n.type=null;var a=ei({},lh),o=ei({},r.attributes);$t.crawl(o,function(u,s,f,h,p){sh(a,p).set(void 0),u===void 0&&sh(o,p).set(void 0)}),ei(n,a),Ca.traceIs(e,"noOpacity")&&delete n.opacity,Ca.traceIs(e,"showLegend")||(delete n.showlegend,delete n.legendgroup),Ca.traceIs(e,"noHover")&&(delete n.hoverinfo,delete n.hoverlabel),r.selectPoints||delete n.selectedpoints,ei(n,o),t.attributes&&ei(n,t.attributes),n.type=e;var i={meta:r.meta||{},categories:r.categories||{},animatable:!!r.animatable,type:e,attributes:Gs(n)};if(r.layoutAttributes){var l={};ei(l,r.layoutAttributes),i.layoutAttributes=Gs(l)}return r.animatable||$t.crawl(i,function(u){$t.isValObject(u)&&"anim"in u&&delete u.anim}),i}function iG(){var e={},r,t;ei(e,Qp);for(r in Ca.subplotsRegistry)if(t=Ca.subplotsRegistry[r],!!t.layoutAttributes)if(Array.isArray(t.attr))for(var n=0;n{"use strict";var Ws=ir(),cG=Sn(),Po="templateitemname",eg={name:{valType:"string",editType:"none"}};eg[Po]={valType:"string",editType:"calc"};Dl.templatedArray=function(e,r){return r._isLinkedToArray=e,r.name=eg.name,r[Po]=eg[Po],r};Dl.traceTemplater=function(e){var r={},t,n;for(t in e)n=e[t],Array.isArray(n)&&n.length&&(r[t]=0);function a(o){t=Ws.coerce(o,{},cG,"type");var i={type:t,_template:null};if(t in r){n=e[t];var l=r[t]%n.length;r[t]++,i._template=n[l]}return i}return{newTrace:a}};Dl.newContainer=function(e,r,t){var n=e._template,a=n&&(n[r]||t&&n[t]);Ws.isPlainObject(a)||(a=null);var o=e[r]={_template:a};return o};Dl.arrayTemplater=function(e,r,t){var n=e._template,a=n&&n[Mw(r)],o=n&&n[r];(!Array.isArray(o)||!o.length)&&(o=[]);var i={};function l(s){var f={name:s.name,_input:s},h=f[Po]=s[Po];if(!ww(h))return f._template=a,f;for(var p=0;p=n&&(t._input||{})._templateitemname;o&&(a=n);var i=r+"["+a+"]",l;function u(){l={},o&&(l[i]={},l[i][Po]=o)}u();function s(b,m){l[b]=m}function f(b,m){o?Ws.nestedProperty(l[i],b).set(m):l[i+"."+b]=m}function h(){var b=l;return u(),b}function p(b,m){b&&f(b,m);var w=h();for(var T in w)Ws.nestedProperty(e,T).set(w[T])}return{modifyBase:s,modifyItem:f,getUpdateObj:h,applyUpdate:p}}});var _n=de((K0e,Tw)=>{"use strict";var Af=Ls().counter;Tw.exports={idRegex:{x:Af("x","( domain)?"),y:Af("y","( domain)?")},attrRegex:Af("[xy]axis"),xAxisMatch:Af("xaxis"),yAxisMatch:Af("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var jt=de(aa=>{"use strict";var hG=Cr(),rg=_n();aa.id2name=function(r){if(!(typeof r!="string"||!r.match(rg.AX_ID_PATTERN))){var t=r.split(" ")[0].slice(1);return t==="1"&&(t=""),r.charAt(0)+"axis"+t}};aa.name2id=function(r){if(r.match(rg.AX_NAME_PATTERN)){var t=r.slice(5);return t==="1"&&(t=""),r.charAt(0)+t}};aa.cleanId=function(r,t,n){var a=/( domain)$/.test(r);if(!(typeof r!="string"||!r.match(rg.AX_ID_PATTERN))&&!(t&&r.charAt(0)!==t)&&!(a&&!n)){var o=r.split(" ")[0].slice(1).replace(/^0+/,"");return o==="1"&&(o=""),r.charAt(0)+o+(a&&n?" domain":"")}};aa.list=function(e,r,t){var n=e._fullLayout;if(!n)return[];var a=aa.listIds(e,r),o=new Array(a.length),i;for(i=0;in?1:-1:+(e.slice(1)||1)-+(r.slice(1)||1)};aa.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function Aw(e,r){if(r&&r.length){for(var t=0;t{"use strict";function vG(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".outline-controllers").remove()}function dG(e){var r=e._fullLayout._zoomlayer;r&&r.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}kw.exports={clearOutlineControllers:vG,clearOutline:dG}});var fh=de((j0e,Sw)=>{"use strict";Sw.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var kf=de(hh=>{"use strict";var ch=Cr(),ece=_n().SUBPLOT_PATTERN;hh.getSubplotCalcData=function(e,r,t){var n=ch.subplotsRegistry[r];if(!n)return[];for(var a=n.attr,o=[],i=0;i{"use strict";var pG=Cr(),Xs=ir();Rl.manageCommandObserver=function(e,r,t,n){var a={},o=!0;r&&r._commandObserver&&(a=r._commandObserver),a.cache||(a.cache={}),a.lookupTable={};var i=Rl.hasSimpleAPICommandBindings(e,t,a.lookupTable);if(r&&r._commandObserver){if(i)return a;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,a}if(i){Cw(e,i,a.cache),a.check=function(){if(o){var f=Cw(e,i,a.cache);return f.changed&&n&&a.lookupTable[f.value]!==void 0&&(a.disable(),Promise.resolve(n({value:f.value,type:i.type,prop:i.prop,traces:i.traces,index:a.lookupTable[f.value]})).then(a.enable,a.enable)),f.changed}};for(var l=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],u=0;u0?".":"")+a;Xs.isPlainObject(o)?tg(o,r,i,n+1):r(i,a,o)}})}});var on=de((nce,Yw)=>{"use strict";var qw=it(),yG=Ss().timeFormatLocale,mG=fp().formatLocale,Sf=nt(),xG=cp(),ot=Cr(),Ow=Ys(),bG=yt(),xr=ir(),Bw=Xr(),Rw=nn().BADNUM,ia=jt(),_G=Io().clearOutline,wG=fh(),ng=gf(),MG=Kp(),TG=kf().getModuleCalcData,Pw=xr.relinkPrivateKeys,Pl=xr._,cr=Yw.exports={};xr.extendFlat(cr,ot);cr.attributes=Sn();cr.attributes.type.values=cr.allTypes;cr.fontAttrs=kn();cr.layoutAttributes=Is();var dh=Dw();cr.executeAPICommand=dh.executeAPICommand;cr.computeAPICommandBindings=dh.computeAPICommandBindings;cr.manageCommandObserver=dh.manageCommandObserver;cr.hasSimpleAPICommandBindings=dh.hasSimpleAPICommandBindings;cr.redrawText=function(e){return e=xr.getGraphDiv(e),new Promise(function(r){setTimeout(function(){e._fullLayout&&(ot.getComponentMethod("annotations","draw")(e),ot.getComponentMethod("legend","draw")(e),ot.getComponentMethod("colorbar","draw")(e),r(cr.previousPromises(e)))},300)})};cr.resize=function(e){e=xr.getGraphDiv(e);var r,t=new Promise(function(n,a){(!e||xr.isHidden(e))&&a(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(r=e._resolveResize),e._resolveResize=n,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||xr.isHidden(e)){n(e);return}delete e.layout.width,delete e.layout.height;var o=e.changed;e.autoplay=!0,ot.call("relayout",e,{autosize:!0}).then(function(){e.changed=o,e._resolveResize===n&&(delete e._resolveResize,n(e))})},100)});return r&&r(t),t};cr.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};cr.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var r=e._fullLayout,t=xr.ensureSingle(r._paper,"text","js-plot-link-container",function(u){u.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:Bw.defaultLine,"pointer-events":"all"}).each(function(){var s=qw.select(this);s.append("tspan").classed("js-link-to-tool",!0),s.append("tspan").classed("js-link-spacer",!0),s.append("tspan").classed("js-sourcelinks",!0)})}),n=t.node(),a={y:r._paper.attr("height")-9};document.body.contains(n)&&n.getComputedTextLength()>=r.width-20?(a["text-anchor"]="start",a.x=5):(a["text-anchor"]="end",a.x=r._paper.attr("width")-7),t.attr(a);var o=t.select(".js-link-to-tool"),i=t.select(".js-link-spacer"),l=t.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&AG(e,o),i.text(o.text()&&l.text()?" - ":"")}};function AG(e,r){r.text("");var t=r.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)t.on("click",function(){cr.sendDataToCloud(e)});else{var n=window.location.pathname.split("/"),a=window.location.search;t.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+a})}}cr.sendDataToCloud=function(e){var r=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(r){e.emit("plotly_beforeexport");var t=qw.select(e).append("div").attr("id","hiddenform").style("display","none"),n=t.append("form").attr({action:r+"/external",method:"post",target:"_blank"}),a=n.append("input").attr({type:"text",name:"data"});return a.node().value=cr.graphJson(e,!1,"keepdata"),n.node().submit(),t.remove(),e.emit("plotly_afterexport"),!1}};var kG=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],SG=["year","month","dayMonth","dayMonthYear"];cr.supplyDefaults=function(e,r){var t=r&&r.skipUpdateCalc,n=e._fullLayout||{};if(n._skipDefaults){delete n._skipDefaults;return}var a=e._fullLayout={},o=e.layout||{},i=e._fullData||[],l=e._fullData=[],u=e.data||[],s=e.calcdata||[],f=e._context||{},h;e._transitionData||cr.createTransitionData(e),a._dfltTitle={plot:Pl(e,"Click to enter Plot title"),subtitle:Pl(e,"Click to enter Plot subtitle"),x:Pl(e,"Click to enter X axis title"),y:Pl(e,"Click to enter Y axis title"),colorbar:Pl(e,"Click to enter Colorscale title"),annotation:Pl(e,"new text")},a._traceWord=Pl(e,"trace");var p=Iw(e,kG);if(a._mapboxAccessToken=f.mapboxAccessToken,n._initialAutoSizeIsDone){var b=n.width,m=n.height;cr.supplyLayoutGlobalDefaults(o,a,p),o.width||(a.width=b),o.height||(a.height=m),cr.sanitizeMargins(a)}else{cr.supplyLayoutGlobalDefaults(o,a,p);var w=!o.width||!o.height,T=a.autosize,y=f.autosizable,k=w&&(T||y);k?cr.plotAutoSize(e,o,a):w&&cr.sanitizeMargins(a),!T&&w&&(o.width=a.width,o.height=a.height)}a._d3locale=LG(p,a.separators),a._extraFormat=Iw(e,SG),a._initialAutoSizeIsDone=!0,a._dataLength=u.length,a._modules=[],a._visibleModules=[],a._basePlotModules=[];var S=a._subplots=EG(),x=a._splomAxes={x:{},y:{}},M=a._splomSubplots={};a._splomGridDflt={},a._scatterStackOpts={},a._firstScatter={},a._alignmentOpts={},a._colorAxes={},a._requestRangeslider={},a._traceUids=CG(i,u),cr.supplyDataDefaults(u,l,o,a);var d=Object.keys(x.x),_=Object.keys(x.y);if(d.length>1&&_.length>1){for(ot.getComponentMethod("grid","sizeDefaults")(o,a),h=0;h15&&_.length>15&&a.shapes.length===0&&a.images.length===0,cr.linkSubplots(l,a,i,n),cr.cleanPlot(l,a,i,n);var D=!!(n._has&&n._has("cartesian")),E=!!(a._has&&a._has("cartesian")),R=D,N=E;R&&!N?n._bgLayer.remove():N&&!R&&(a._shouldCreateBgLayer=!0),n._zoomlayer&&!e._dragging&&_G({_fullLayout:n}),DG(l,a),Pw(a,n),ot.getComponentMethod("colorscale","crossTraceDefaults")(l,a),a._preGUI||(a._preGUI={}),a._tracePreGUI||(a._tracePreGUI={});var F=a._tracePreGUI,I={},L;for(L in F)I[L]="old";for(h=0;h0){var f=1-2*o;i=Math.round(f*i),l=Math.round(f*l)}}var h=cr.layoutAttributes.width.min,p=cr.layoutAttributes.height.min;i1,m=!t.height&&Math.abs(n.height-l)>1;(m||b)&&(b&&(n.width=i),m&&(n.height=l)),r._initialAutoSize||(r._initialAutoSize={width:i,height:l}),cr.sanitizeMargins(n)};cr.supplyLayoutModuleDefaults=function(e,r,t,n){var a=ot.componentsRegistry,o=r._basePlotModules,i,l,u,s=ot.subplotsRegistry.cartesian;for(i in a)u=a[i],u.includeBasePlot&&u.includeBasePlot(e,r);o.length||o.push(s),r._has("cartesian")&&(ot.getComponentMethod("grid","contentDefaults")(e,r),s.finalizeSubplots(e,r));for(var f in r._subplots)r._subplots[f].sort(xr.subplotSort);for(l=0;l1&&(t.l/=T,t.r/=T)}if(p){var y=(t.t+t.b)/p;y>1&&(t.t/=y,t.b/=y)}var k=t.xl!==void 0?t.xl:t.x,S=t.xr!==void 0?t.xr:t.x,x=t.yt!==void 0?t.yt:t.y,M=t.yb!==void 0?t.yb:t.y;b[r]={l:{val:k,size:t.l+w},r:{val:S,size:t.r+w},b:{val:M,size:t.b+w},t:{val:x,size:t.t+w}},m[r]=1}if(!n._replotting)return cr.doAutoMargin(e)}};function PG(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var r=ia.list(e,"",!0);for(var t in r)if(r[t].autoshift||r[t].shift)return!0;return!1}cr.doAutoMargin=function(e){var r=e._fullLayout,t=r.width,n=r.height;r._size||(r._size={}),Uw(r);var a=r._size,o=r.margin,i={t:0,b:0,l:0,r:0},l=xr.extendFlat({},a),u=o.l,s=o.r,f=o.t,h=o.b,p=r._pushmargin,b=r._pushmarginIds,m=r.minreducedwidth,w=r.minreducedheight;if(o.autoexpand!==!1){for(var T in p)b[T]||delete p[T];var y=e._fullLayout._reservedMargin;for(var k in y)for(var S in y[k]){var x=y[k][S];i[S]=Math.max(i[S],x)}p.base={l:{val:0,size:u},r:{val:1,size:s},t:{val:1,size:f},b:{val:0,size:h}};for(var M in i){var d=0;for(var _ in p)_!=="base"&&Sf(p[_][M].size)&&(d=p[_][M].size>d?p[_][M].size:d);var g=Math.max(0,o[M]-d);i[M]=Math.max(0,i[M]-g)}for(var c in p){var A=p[c].l||{},v=p[c].b||{},D=A.val,E=A.size,R=v.val,N=v.size,F=t-i.r-i.l,I=n-i.t-i.b;for(var L in p){if(Sf(E)&&p[L].r){var P=p[L].r.val,O=p[L].r.size;if(P>D){var U=(E*P+(O-F)*D)/(P-D),X=(O*(1-D)+(E-F)*(1-P))/(P-D);U+X>u+s&&(u=U,s=X)}}if(Sf(N)&&p[L].t){var $=p[L].t.val,j=p[L].t.size;if($>R){var Y=(N*$+(j-I)*R)/($-R),q=(j*(1-R)+(N-I)*(1-$))/($-R);Y+q>h+f&&(h=Y,f=q)}}}}}var K=xr.constrain(t-o.l-o.r,Hw,m),ne=xr.constrain(n-o.t-o.b,Vw,w),Q=Math.max(0,t-K),oe=Math.max(0,n-ne);if(Q){var re=(u+s)/Q;re>1&&(u/=re,s/=re)}if(oe){var H=(h+f)/oe;H>1&&(h/=H,f/=H)}if(a.l=Math.round(u)+i.l,a.r=Math.round(s)+i.r,a.t=Math.round(f)+i.t,a.b=Math.round(h)+i.b,a.p=Math.round(o.pad),a.w=Math.round(t)-a.l-a.r,a.h=Math.round(n)-a.t-a.b,!r._replotting&&(cr.didMarginChange(l,a)||PG(e))){"_redrawFromAutoMarginCount"in r?r._redrawFromAutoMarginCount++:r._redrawFromAutoMarginCount=1;var ee=3*(1+Object.keys(b).length);if(r._redrawFromAutoMarginCount1)return!0}return!1};cr.graphJson=function(e,r,t,n,a,o){(a&&r&&!e._fullData||a&&!r&&!e._fullLayout)&&cr.supplyDefaults(e);var i=a?e._fullData:e.data,l=a?e._fullLayout:e.layout,u=(e._transitionData||{})._frames;function s(p,b){if(typeof p=="function")return b?"_function_":null;if(xr.isPlainObject(p)){var m={},w;return Object.keys(p).sort().forEach(function(S){if(["_","["].indexOf(S.charAt(0))===-1){if(typeof p[S]=="function"){b&&(m[S]="_function");return}if(t==="keepdata"){if(S.slice(-3)==="src")return}else if(t==="keepstream"){if(w=p[S+"src"],typeof w=="string"&&w.indexOf(":")>0&&!xr.isPlainObject(p.stream))return}else if(t!=="keepall"&&(w=p[S+"src"],typeof w=="string"&&w.indexOf(":")>0))return;m[S]=s(p[S],b)}}),m}var T=Array.isArray(p),y=xr.isTypedArray(p);if((T||y)&&p.dtype&&p.shape){var k=p.bdata;return s({dtype:p.dtype,shape:p.shape,bdata:xr.isArrayBuffer(k)?xG.encode(k):k},b)}return T?p.map(function(S){return s(S,b)}):y?xr.simpleMap(p,xr.identity):xr.isJSDate(p)?xr.ms2DateTimeLocal(+p):p}var f={data:(i||[]).map(function(p){var b=s(p);return r&&delete b.fit,b})};if(!r&&(f.layout=s(l),a)){var h=l._size;f.layout.computed={margin:{b:h.b,l:h.l,r:h.r,t:h.t}}}return u&&(f.frames=s(u)),o&&(f.config=s(e._context,!0)),n==="object"?f:JSON.stringify(f)};cr.modifyFrames=function(e,r){var t,n,a,o=e._transitionData._frames,i=e._transitionData._frameHash;for(t=0;t0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){n=!0}),t.redraw&&e._transitionData._interruptCallbacks.push(function(){return ot.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var p=0,b=0;function m(){return p++,function(){b++,!n&&b===p&&l(h)}}t.runFn(m),setTimeout(m())})}function l(h){if(e._transitionData)return o(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(t.redraw)return ot.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(h)}function u(){if(e._transitionData)return e._transitioning=!1,a(e._transitionData._interruptCallbacks)}var s=[cr.previousPromises,u,t.prepareFn,cr.rehover,cr.reselect,i],f=xr.syncOrAsync(s,e);return(!f||!f.then)&&(f=Promise.resolve()),f.then(function(){return e})}cr.doCalcdata=function(e,r){var t=ia.list(e),n=e._fullData,a=e._fullLayout,o,i,l,u,s=new Array(n.length),f=(e.calcdata||[]).slice();for(e.calcdata=s,a._numBoxes=0,a._numViolins=0,a._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,a._piecolormap={},a._sunburstcolormap={},a._treemapcolormap={},a._iciclecolormap={},a._funnelareacolormap={},l=0;l=0;u--)if(M[u].enabled){o._indexToPoints=M[u]._indexToPoints;break}i&&i.calc&&(x=i.calc(e,o))}(!Array.isArray(x)||!x[0])&&(x=[{x:Rw,y:Rw}]),x[0].t||(x[0].t={}),x[0].trace=o,s[k]=x}}for(Nw(t,n,a),l=0;l{"use strict";Il.xmlns="http://www.w3.org/2000/xmlns/";Il.svg="http://www.w3.org/2000/svg";Il.xlink="http://www.w3.org/1999/xlink";Il.svgAttrs={xmlns:Il.svg,"xmlns:xlink":Il.xlink}});var qn=de((ice,Ww)=>{"use strict";Ww.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var Wn=de(Ea=>{"use strict";var Wt=it(),eo=ir(),zG=eo.strTranslate,ag=Fo(),qG=qn().LINE_SPACING,OG=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;Ea.convertToTspans=function(e,r,t){var n=e.text(),a=!e.attr("data-notex")&&r&&r._context.typesetMath&&typeof MathJax!="undefined"&&n.match(OG),o=Wt.select(e.node().parentNode);if(o.empty())return;var i=e.attr("class")?e.attr("class").split(" ")[0]:"text";i+="-math",o.selectAll("svg."+i).remove(),o.selectAll("g."+i+"-group").remove(),e.style("display",null).attr({"data-unformatted":n,"data-math":"N"});function l(){o.empty()||(i=e.attr("class")+"-math",o.select("svg."+i).remove()),e.text("").style("white-space","pre");var u=$G(e.node(),n);u&&e.style("pointer-events","all"),Ea.positionText(e),t&&t.call(e)}return a?(r&&r._promises||[]).push(new Promise(function(u){e.style("display","none");var s=parseInt(e.node().style.fontSize,10),f={fontSize:s};VG(a[2],f,function(h,p,b){o.selectAll("svg."+i).remove(),o.selectAll("g."+i+"-group").remove();var m=h&&h.select("svg");if(!m||!m.node()){l(),u();return}var w=o.append("g").classed(i+"-group",!0).attr({"pointer-events":"none","data-unformatted":n,"data-math":"Y"});w.node().appendChild(m.node()),p&&p.node()&&m.node().insertBefore(p.node().cloneNode(!0),m.node().firstChild);var T=b.width,y=b.height;m.attr({class:i,height:y,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var k=e.node().style.fill||"black",S=m.select("g");S.attr({fill:k,stroke:k});var x=S.node().getBoundingClientRect(),M=x.width,d=x.height;(M>T||d>y)&&(m.style("overflow","hidden"),x=m.node().getBoundingClientRect(),M=x.width,d=x.height);var _=+e.attr("x"),g=+e.attr("y"),c=s||e.node().getBoundingClientRect().height,A=-c/4;if(i[0]==="y")w.attr({transform:"rotate("+[-90,_,g]+")"+zG(-M/2,A-d/2)});else if(i[0]==="l")g=A-d/2;else if(i[0]==="a"&&i.indexOf("atitle")!==0)_=0,g=A;else{var v=e.attr("text-anchor");_=_-M*(v==="middle"?.5:v==="end"?1:0),g=g+A-d/2}m.attr({x:_,y:g}),t&&t.call(e,w),u(w)})})):l(),e};var BG=/(<|<|<)/g,UG=/(>|>|>)/g;function HG(e){return e.replace(BG,"\\lt ").replace(UG,"\\gt ")}var Xw=[["$","$"],["\\(","\\)"]];function VG(e,r,t){var n=parseInt((MathJax.version||"").split(".")[0]);if(n!==2&&n!==3){eo.warn("No MathJax version:",MathJax.version);return}var a,o,i,l,u=function(){return o=eo.extendDeepAll({},MathJax.Hub.config),i=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:Xw},displayAlign:"left"})},s=function(){o=eo.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=Xw},f=function(){if(a=MathJax.Hub.config.menuSettings.renderer,a!=="SVG")return MathJax.Hub.setRenderer("SVG")},h=function(){a=MathJax.config.startup.output,a!=="svg"&&(MathJax.config.startup.output="svg")},p=function(){var k="math-output-"+eo.randstr({},64);l=Wt.select("body").append("div").attr({id:k}).style({visibility:"hidden",position:"absolute","font-size":r.fontSize+"px"}).text(HG(e));var S=l.node();return n===2?MathJax.Hub.Typeset(S):MathJax.typeset([S])},b=function(){var k=l.select(n===2?".MathJax_SVG":".MathJax"),S=!k.empty()&&l.select("svg").node();if(!S)eo.log("There was an error in the tex syntax.",e),t();else{var x=S.getBoundingClientRect(),M;n===2?M=Wt.select("body").select("#MathJax_SVG_glyphs"):M=k.select("defs"),t(k,M,x)}l.remove()},m=function(){if(a!=="SVG")return MathJax.Hub.setRenderer(a)},w=function(){a!=="svg"&&(MathJax.config.startup.output=a)},T=function(){return i!==void 0&&(MathJax.Hub.processSectionDelay=i),MathJax.Hub.Config(o)},y=function(){MathJax.config=o};n===2?MathJax.Hub.Queue(u,f,p,b,m,T):n===3&&(s(),h(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){p(),b(),w(),y()}))}var Qw={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},GG={sub:"0.3em",sup:"-0.6em"},YG={sub:"-0.21em",sup:"0.42em"},Zw="\u200B",Jw=["http:","https:","mailto:","",void 0,":"],$w=Ea.NEWLINES=/(\r\n?|\n)/g,og=/(<[^<>]*>)/,lg=/<(\/?)([^ >]*)(\s+(.*))?>/i,WG=//i;Ea.BR_TAG_ALL=//gi;var jw=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,e7=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,r7=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,XG=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function Fl(e,r){if(!e)return null;var t=e.match(r),n=t&&(t[3]||t[4]);return n&&ph(n)}var ZG=/(^|;)\s*color:/;Ea.plainText=function(e,r){r=r||{};for(var t=r.len!==void 0&&r.len!==-1?r.len:1/0,n=r.allowedTags!==void 0?r.allowedTags:["br"],a="...",o=a.length,i=e.split(og),l=[],u="",s=0,f=0;fo?l.push(h.slice(0,Math.max(0,w-o))+a):l.push(h.slice(0,w));break}u=""}}return l.join("")};var JG={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},KG=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function ph(e){return e.replace(KG,function(r,t){var n;return t.charAt(0)==="#"?n=QG(t.charAt(1)==="x"?parseInt(t.slice(2),16):parseInt(t.slice(1),10)):n=JG[t],n||r})}Ea.convertEntities=ph;function QG(e){if(!(e>1114111)){var r=String.fromCodePoint;if(r)return r(e);var t=String.fromCharCode;return e<=65535?t(e):t((e>>10)+55232,e%1024+56320)}}function $G(e,r){r=r.replace($w," ");var t=!1,n=[],a,o=-1;function i(){o++;var d=document.createElementNS(ag.svg,"tspan");Wt.select(d).attr({class:"line",dy:o*qG+"em"}),e.appendChild(d),a=d;var _=n;if(n=[{node:d}],_.length>1)for(var g=1;g<_.length;g++)l(_[g])}function l(d){var _=d.type,g={},c;if(_==="a"){c="a";var A=d.target,v=d.href,D=d.popup;v&&(g={"xlink:xlink:show":A==="_blank"||A.charAt(0)!=="_"?"new":"replace",target:A,"xlink:xlink:href":v},D&&(g.onclick='window.open(this.href.baseVal,this.target.baseVal,"'+D+'");return false;'))}else c="tspan";d.style&&(g.style=d.style);var E=document.createElementNS(ag.svg,c);if(_==="sup"||_==="sub"){u(a,Zw),a.appendChild(E);var R=document.createElementNS(ag.svg,"tspan");u(R,Zw),Wt.select(R).attr("dy",YG[_]),g.dy=GG[_],a.appendChild(E),a.appendChild(R)}else a.appendChild(E);Wt.select(E).attr(g),a=d.node=E,n.push(d)}function u(d,_){d.appendChild(document.createTextNode(_))}function s(d){if(n.length===1){eo.log("Ignoring unexpected end tag .",r);return}var _=n.pop();d!==_.type&&eo.log("Start tag <"+_.type+"> doesnt match end tag <"+d+">. Pretending it did match.",r),a=n[n.length-1].node}var f=WG.test(r);f?i():(a=e,n=[{node:e}]);for(var h=r.split(og),p=0;p{"use strict";var jG=it(),yh=ka(),Ef=nt(),gh=ir(),n7=Xr(),eY=Ml().isValid;function rY(e,r,t){var n=r?gh.nestedProperty(e,r).get()||{}:e,a=n[t||"color"];a&&a._inputArray&&(a=a._inputArray);var o=!1;if(gh.isArrayOrTypedArray(a)){for(var i=0;i=0;n--,a++){var o=e[n];t[a]=[1-o[0],o[1]]}return t}function u7(e,r){r=r||{};for(var t=e.domain,n=e.range,a=n.length,o=new Array(a),i=0;i{"use strict";var c7=Cp(),nY=c7.FORMAT_LINK,aY=c7.DATE_FORMAT_LINK;function iY(e,r){return{valType:"string",dflt:"",editType:"none",description:(r?sg:h7)("hover text",e)+["By default the values are formatted using "+(r?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function sg(e,r){return["Sets the "+e+" formatting rule"+(r?"for `"+r+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+nY+"."].join(" ")}function h7(e,r){return sg(e,r)+[" And for dates see: "+aY+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}v7.exports={axisHoverFormat:iY,descriptionOnlyNumbers:sg,descriptionWithDates:h7}});var La=de((fce,L7)=>{"use strict";var d7=kn(),Zs=Ai(),E7=Ao().dash,fg=Tt().extendFlat,p7=yt().templatedArray,uce=Qa().templateFormatStringDescription,g7=ro().descriptionWithDates,oY=nn().ONEDAY,Ci=_n(),lY=Ci.HOUR_PATTERN,sY=Ci.WEEKDAY_PATTERN,ug={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},uY=fg({},ug,{values:ug.values.slice().concat(["sync"])});function y7(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var m7={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},x7={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},b7={valType:"data_array",editType:"ticks"},_7={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function w7(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=5),r}function M7(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var T7={valType:"color",dflt:Zs.defaultLine,editType:"ticks"},A7={valType:"color",dflt:Zs.lightLine,editType:"ticks"};function k7(e){var r={valType:"number",min:0,editType:"ticks"};return e||(r.dflt=1),r}var S7=fg({},E7,{editType:"ticks"}),C7={valType:"boolean",editType:"ticks"};L7.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:Zs.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:d7({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[Ci.idRegex.x.toString(),Ci.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[Ci.idRegex.x.toString(),Ci.idRegex.y.toString()],editType:"calc"},rangebreaks:p7("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[sY,lY,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:oY},editType:"calc"}),tickmode:uY,nticks:y7(),tick0:m7,dtick:x7,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:b7,ticktext:{valType:"data_array",editType:"ticks"},ticks:_7,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:w7(),tickwidth:M7(),tickcolor:T7,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:fg({},E7,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:d7({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:g7("tick label")},tickformatstops:p7("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:g7("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:Zs.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:C7,gridcolor:A7,gridwidth:k7(),griddash:S7,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:Zs.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:Zs.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",Ci.idRegex.x.toString(),Ci.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",Ci.idRegex.x.toString(),Ci.idRegex.y.toString()],editType:"plot"},minor:{tickmode:ug,nticks:y7("minor"),tick0:m7,dtick:x7,tickvals:b7,ticks:_7,ticklen:w7("minor"),tickwidth:M7("minor"),tickcolor:T7,gridcolor:A7,gridwidth:k7("minor"),griddash:S7,showgrid:C7,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var mh=de((cce,P7)=>{"use strict";var kt=La(),D7=kn(),R7=Tt().extendFlat,fY=zn().overrideAll;P7.exports=fY({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:kt.linecolor,outlinewidth:kt.linewidth,bordercolor:kt.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:kt.minor.tickmode,nticks:kt.nticks,tick0:kt.tick0,dtick:kt.dtick,tickvals:kt.tickvals,ticktext:kt.ticktext,ticks:R7({},kt.ticks,{dflt:""}),ticklabeloverflow:R7({},kt.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:kt.ticklen,tickwidth:kt.tickwidth,tickcolor:kt.tickcolor,ticklabelstep:kt.ticklabelstep,showticklabels:kt.showticklabels,labelalias:kt.labelalias,tickfont:D7({}),tickangle:kt.tickangle,tickformat:kt.tickformat,tickformatstops:kt.tickformatstops,tickprefix:kt.tickprefix,showtickprefix:kt.showtickprefix,ticksuffix:kt.ticksuffix,showticksuffix:kt.showticksuffix,separatethousands:kt.separatethousands,exponentformat:kt.exponentformat,minexponent:kt.minexponent,showexponent:kt.showexponent,title:{text:{valType:"string"},font:D7({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var ri=de((vce,F7)=>{"use strict";var cY=mh(),hY=Ls().counter,vY=Jc(),I7=Ml().scales,hce=vY(I7);function xh(e){return"`"+e+"`"}F7.exports=function(r,t){r=r||"",t=t||{};var n=t.cLetter||"c",a="onlyIfNumerical"in t?t.onlyIfNumerical:!!r,o="noScale"in t?t.noScale:r==="marker.line",i="showScaleDflt"in t?t.showScaleDflt:n==="z",l=typeof t.colorscaleDflt=="string"?I7[t.colorscaleDflt]:null,u=t.editTypeOverride||"",s=r?r+".":"",f,h;"colorAttr"in t?(f=t.colorAttr,h=t.colorAttr):(f={z:"z",c:"color"}[n],h="in "+xh(s+f));var p=a?" Has an effect only if "+h+" is set to a numerical array.":"",b=n+"auto",m=n+"min",w=n+"max",T=n+"mid",y=xh(s+b),k=xh(s+m),S=xh(s+w),x=k+" and "+S,M={};M[m]=M[w]=void 0;var d={};d[b]=!1;var _={};return f==="color"&&(_.color={valType:"color",arrayOk:!0,editType:u||"style"},t.anim&&(_.color.anim=!0)),_[b]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:M},_[m]={valType:"number",dflt:null,editType:u||"plot",impliedEdits:d},_[w]={valType:"number",dflt:null,editType:u||"plot",impliedEdits:d},_[T]={valType:"number",dflt:null,editType:"calc",impliedEdits:M},_.colorscale={valType:"colorscale",editType:"calc",dflt:l,impliedEdits:{autocolorscale:!1}},_.autocolorscale={valType:"boolean",dflt:t.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},_.reversescale={valType:"boolean",dflt:!1,editType:"plot"},o||(_.showscale={valType:"boolean",dflt:i,editType:"calc"},_.colorbar=cY),t.noColorAxis||(_.coloraxis={valType:"subplotid",regex:hY("coloraxis"),dflt:null,editType:"calc"}),_}});var hg=de((dce,N7)=>{"use strict";var dY=Tt().extendFlat,pY=ri(),cg=Ml().scales;N7.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:cg.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:cg.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:cg.RdBu,editType:"calc"}},coloraxis:dY({_isSubplotObj:!0,editType:"calc"},pY("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var vg=de((pce,z7)=>{"use strict";var gY=ir();z7.exports=function(r){return gY.isPlainObject(r.colorbar)}});var gg=de(pg=>{"use strict";var dg=nt(),q7=ir(),O7=nn(),yY=O7.ONEDAY,mY=O7.ONEWEEK;pg.dtick=function(e,r){var t=r==="log",n=r==="date",a=r==="category",o=n?yY:1;if(!e)return o;if(dg(e))return e=Number(e),e<=0?o:a?Math.max(1,Math.round(e)):n?Math.max(.1,e):e;if(typeof e!="string"||!(n||t))return o;var i=e.charAt(0),l=e.slice(1);return l=dg(l)?Number(l):0,l<=0||!(n&&i==="M"&&l===Math.round(l)||t&&i==="L"||t&&i==="D"&&(l===1||l===2))?o:e};pg.tick0=function(e,r,t,n){if(r==="date")return q7.cleanDate(e,q7.dateTick0(t,n%mY===0?1:0));if(!(n==="D1"||n==="D2"))return dg(e)?Number(e):0}});var yg=de((yce,U7)=>{"use strict";var B7=gg(),xY=ir().isArrayOrTypedArray,bY=ea().isTypedArraySpec,_Y=ea().decodeTypedArraySpec;U7.exports=function(r,t,n,a,o){o||(o={});var i=o.isMinor,l=i?r.minor||{}:r,u=i?t.minor:t,s=i?"minor.":"";function f(k){var S=l[k];return bY(S)&&(S=_Y(S)),S!==void 0?S:(u._template||{})[k]}var h=f("tick0"),p=f("dtick"),b=f("tickvals"),m=xY(b)?"array":p?"linear":"auto",w=n(s+"tickmode",m);if(w==="auto"||w==="sync")n(s+"nticks");else if(w==="linear"){var T=u.dtick=B7.dtick(p,a);u.tick0=B7.tick0(h,a,t.calendar,T)}else if(a!=="multicategory"){var y=n(s+"tickvals");y===void 0?u.tickmode="auto":i||n("ticktext")}}});var xg=de((mce,V7)=>{"use strict";var mg=ir(),H7=La();V7.exports=function(r,t,n,a){var o=a.isMinor,i=o?r.minor||{}:r,l=o?t.minor:t,u=o?H7.minor:H7,s=o?"minor.":"",f=mg.coerce2(i,l,u,"ticklen",o?(t.ticklen||5)*.6:void 0),h=mg.coerce2(i,l,u,"tickwidth",o?t.tickwidth||1:void 0),p=mg.coerce2(i,l,u,"tickcolor",(o?t.tickcolor:void 0)||l.color),b=n(s+"ticks",!o&&a.outerTicks||f||h||p?"outside":"");b||(delete l.ticklen,delete l.tickwidth,delete l.tickcolor)}});var bg=de((xce,G7)=>{"use strict";G7.exports=function(r){var t=["showexponent","showtickprefix","showticksuffix"],n=t.filter(function(o){return r[o]!==void 0}),a=function(o){return r[o]===r[n[0]]};if(n.every(a)||n.length===1)return r[n[0]]}});var ti=de((bce,Y7)=>{"use strict";var bh=ir(),wY=yt();Y7.exports=function(r,t,n){var a=n.name,o=n.inclusionAttr||"visible",i=t[a],l=bh.isArrayOrTypedArray(r[a])?r[a]:[],u=t[a]=[],s=wY.arrayTemplater(t,a,o),f,h;for(f=0;f{"use strict";var _g=ir(),MY=Xr().contrast,W7=La(),TY=bg(),AY=ti();X7.exports=function(r,t,n,a,o){o||(o={});var i=n("labelalias");_g.isPlainObject(i)||delete t.labelalias;var l=TY(r),u=n("showticklabels");if(u){o.noTicklabelshift||n("ticklabelshift"),o.noTicklabelstandoff||n("ticklabelstandoff");var s=o.font||{},f=t.color,h=t.ticklabelposition||"",p=h.indexOf("inside")!==-1?MY(o.bgColor):f&&f!==W7.color.dflt?f:s.color;if(_g.coerceFont(n,"tickfont",s,{overrideDflt:{color:p}}),!o.noTicklabelstep&&a!=="multicategory"&&a!=="log"&&n("ticklabelstep"),!o.noAng){var b=n("tickangle");!o.noAutotickangles&&b==="auto"&&n("autotickangles")}if(a!=="category"){var m=n("tickformat");AY(r,t,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:kY}),t.tickformatstops.length||delete t.tickformatstops,!o.noExp&&!m&&a!=="date"&&(n("showexponent",l),n("exponentformat"),n("minexponent"),n("separatethousands"))}!o.noMinorloglabels&&a==="log"&&n("minorloglabels")}};function kY(e,r){function t(a,o){return _g.coerce(e,r,W7.tickformatstops,a,o)}var n=t("enabled");n&&(t("dtickrange"),t("value"))}});var Mg=de((wce,Z7)=>{"use strict";var SY=bg();Z7.exports=function(r,t,n,a,o){o||(o={});var i=o.tickSuffixDflt,l=SY(r),u=n("tickprefix");u&&n("showtickprefix",l);var s=n("ticksuffix",i);s&&n("showticksuffix",l)}});var Tg=de((Mce,J7)=>{"use strict";var No=ir(),CY=yt(),EY=yg(),LY=xg(),DY=wg(),RY=Mg(),PY=mh();J7.exports=function(r,t,n){var a=CY.newContainer(t,"colorbar"),o=r.colorbar||{};function i(v,D){return No.coerce(o,a,PY,v,D)}var l=n.margin||{t:0,b:0,l:0,r:0},u=n.width-l.l-l.r,s=n.height-l.t-l.b,f=i("orientation"),h=f==="v",p=i("thicknessmode");i("thickness",p==="fraction"?30/(h?u:s):30);var b=i("lenmode");i("len",b==="fraction"?1:h?s:u);var m=i("yref"),w=i("xref"),T=m==="paper",y=w==="paper",k,S,x,M="left";h?(x="middle",M=y?"left":"right",k=y?1.02:1,S=.5):(x=T?"bottom":"top",M="center",k=.5,S=T?1.02:1),No.coerce(o,a,{x:{valType:"number",min:y?-2:0,max:y?3:1,dflt:k}},"x"),No.coerce(o,a,{y:{valType:"number",min:T?-2:0,max:T?3:1,dflt:S}},"y"),i("xanchor",M),i("xpad"),i("yanchor",x),i("ypad"),No.noneOrAll(o,a,["x","y"]),i("outlinecolor"),i("outlinewidth"),i("bordercolor"),i("borderwidth"),i("bgcolor");var d=No.coerce(o,a,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");i("ticklabeloverflow",d.indexOf("inside")!==-1?"hide past domain":"hide past div"),EY(o,a,i,"linear");var _=n.font,g={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:_};d.indexOf("inside")!==-1&&(g.bgColor="black"),RY(o,a,i,"linear",g),DY(o,a,i,"linear",g),LY(o,a,i,"linear",g),i("title.text",n._dfltTitle.colorbar);var c=a.showticklabels?a.tickfont:_,A=No.extendFlat({},_,{family:c.family,size:No.bigFont(c.size)});No.coerceFont(i,"title.font",A),i("title.side",h?"top":"right")}});var Ei=de((Tce,$7)=>{"use strict";var K7=nt(),kg=ir(),IY=vg(),FY=Tg(),Q7=Ml().isValid,NY=Cr().traceIs;function Ag(e,r){var t=r.slice(0,r.length-1);return r?kg.nestedProperty(e,t).get()||{}:e}$7.exports=function e(r,t,n,a,o){var i=o.prefix,l=o.cLetter,u="_module"in t,s=Ag(r,i),f=Ag(t,i),h=Ag(t._template||{},i)||{},p=function(){return delete r.coloraxis,delete t.coloraxis,e(r,t,n,a,o)};if(u){var b=n._colorAxes||{},m=a(i+"coloraxis");if(m){var w=NY(t,"contour")&&kg.nestedProperty(t,"contours.coloring").get()||"heatmap",T=b[m];T?(T[2].push(p),T[0]!==w&&(T[0]=!1,kg.warn(["Ignoring coloraxis:",m,"setting","as it is linked to incompatible colorscales."].join(" ")))):b[m]=[w,t,[p]];return}}var y=s[l+"min"],k=s[l+"max"],S=K7(y)&&K7(k)&&y{"use strict";var j7=ir(),zY=yt(),e8=hg(),qY=Ei();r8.exports=function(r,t){function n(h,p){return j7.coerce(r,t,e8,h,p)}n("colorscale.sequential"),n("colorscale.sequentialminus"),n("colorscale.diverging");var a=t._colorAxes,o,i;function l(h,p){return j7.coerce(o,i,e8.coloraxis,h,p)}for(var u in a){var s=a[u];if(s[0])o=r[u]||{},i=zY.newContainer(t,u,"coloraxis"),i._name=u,qY(o,i,t,l,{prefix:"",cLetter:"c"});else{for(var f=0;f{"use strict";var OY=ir(),BY=Si().hasColorscale,UY=Si().extractOpts;n8.exports=function(r,t){function n(f,h){var p=f["_"+h];p!==void 0&&(f[h]=p)}function a(f,h){var p=h.container?OY.nestedProperty(f,h.container).get():f;if(p)if(p.coloraxis)p._colorAx=t[p.coloraxis];else{var b=UY(p),m=b.auto;(m||b.min===void 0)&&n(p,h.min),(m||b.max===void 0)&&n(p,h.max),b.autocolorscale&&n(p,"colorscale")}}for(var o=0;o{"use strict";var i8=nt(),Sg=ir(),HY=Si().extractOpts;o8.exports=function(r,t,n){var a=r._fullLayout,o=n.vals,i=n.containerStr,l=i?Sg.nestedProperty(t,i).get():t,u=HY(l),s=u.auto!==!1,f=u.min,h=u.max,p=u.mid,b=function(){return Sg.aggNums(Math.min,null,o)},m=function(){return Sg.aggNums(Math.max,null,o)};if(f===void 0?f=b():s&&(l._colorAx&&i8(f)?f=Math.min(f,b()):f=b()),h===void 0?h=m():s&&(l._colorAx&&i8(h)?h=Math.max(h,m()):h=m()),s&&p!==void 0&&(h-p>p-f?f=p-(h-p):h-p=0?w=a.colorscale.sequential:w=a.colorscale.sequentialminus,u._sync("colorscale",w)}}});var Li=de((Cce,l8)=>{"use strict";var _h=Ml(),Js=Si();l8.exports={moduleType:"component",name:"colorscale",attributes:ri(),layoutAttributes:hg(),supplyLayoutDefaults:t8(),handleDefaults:Ei(),crossTraceDefaults:a8(),calc:zo(),scales:_h.scales,defaultScale:_h.defaultScale,getScale:_h.get,isValidScale:_h.isValid,hasColorscale:Js.hasColorscale,extractOpts:Js.extractOpts,extractScale:Js.extractScale,flipScale:Js.flipScale,makeColorScaleFunc:Js.makeColorScaleFunc,makeColorScaleFuncFromTrace:Js.makeColorScaleFuncFromTrace}});var oa=de((Ece,u8)=>{"use strict";var s8=ir(),VY=ea().isTypedArraySpec;u8.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var r=e.marker;return s8.isPlainObject(r)&&(s8.isArrayOrTypedArray(r.size)||VY(r.size))}}});var Cg=de((Lce,f8)=>{"use strict";var GY=nt();f8.exports=function(r,t){t||(t=2);var n=r.marker,a=n.sizeref||1,o=n.sizemin||0,i=n.sizemode==="area"?function(l){return Math.sqrt(l/a)}:function(l){return l/a};return function(l){var u=i(l/t);return GY(u)&&u>0?Math.max(u,o):0}}});var to=de(Cn=>{"use strict";var wh=ir();Cn.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};Cn.isTraceInSubplots=function(e,r){if(e.type==="splom"){for(var t=e.xaxes||[],n=e.yaxes||[],a=0;a=0&&t.index{v8.exports=JY;var Eg={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},ZY=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function JY(e){var r=[];return e.replace(ZY,function(t,n,a){var o=n.toLowerCase();for(a=QY(a),o=="m"&&a.length>2&&(r.push([n].concat(a.splice(0,2))),o="l",n=n=="m"?"l":"L");;){if(a.length==Eg[o])return a.unshift(n),r.push(a);if(a.length{"use strict";var $Y=Lg(),ur=function(e,r){return r?Math.round(e*(r=Math.pow(10,r)))/r:Math.round(e)},Nr="M0,0Z",d8=Math.sqrt(2),qo=Math.sqrt(3),Dg=Math.PI,Rg=Math.cos,Pg=Math.sin;x8.exports={circle:{n:0,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a="M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z";return t?qr(r,t,a):a}},square:{n:1,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")}},diamond:{n:2,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.3,2);return qr(r,t,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"Z")}},cross:{n:3,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.4,2),a=ur(e*1.2,2);return qr(r,t,"M"+a+","+n+"H"+n+"V"+a+"H-"+n+"V"+n+"H-"+a+"V-"+n+"H-"+n+"V-"+a+"H"+n+"V-"+n+"H"+a+"Z")}},x:{n:4,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.8/d8,2),a="l"+n+","+n,o="l"+n+",-"+n,i="l-"+n+",-"+n,l="l-"+n+","+n;return qr(r,t,"M0,"+n+a+o+i+o+i+l+i+l+a+l+a+"Z")}},"triangle-up":{n:5,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2/qo,2),a=ur(e/2,2),o=ur(e,2);return qr(r,t,"M-"+n+","+a+"H"+n+"L0,-"+o+"Z")}},"triangle-down":{n:6,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2/qo,2),a=ur(e/2,2),o=ur(e,2);return qr(r,t,"M-"+n+",-"+a+"H"+n+"L0,"+o+"Z")}},"triangle-left":{n:7,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2/qo,2),a=ur(e/2,2),o=ur(e,2);return qr(r,t,"M"+a+",-"+n+"V"+n+"L-"+o+",0Z")}},"triangle-right":{n:8,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2/qo,2),a=ur(e/2,2),o=ur(e,2);return qr(r,t,"M-"+a+",-"+n+"V"+n+"L"+o+",0Z")}},"triangle-ne":{n:9,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.6,2),a=ur(e*1.2,2);return qr(r,t,"M-"+a+",-"+n+"H"+n+"V"+a+"Z")}},"triangle-se":{n:10,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.6,2),a=ur(e*1.2,2);return qr(r,t,"M"+n+",-"+a+"V"+n+"H-"+a+"Z")}},"triangle-sw":{n:11,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.6,2),a=ur(e*1.2,2);return qr(r,t,"M"+a+","+n+"H-"+n+"V-"+a+"Z")}},"triangle-nw":{n:12,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.6,2),a=ur(e*1.2,2);return qr(r,t,"M-"+n+","+a+"V-"+n+"H"+a+"Z")}},pentagon:{n:13,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.951,2),a=ur(e*.588,2),o=ur(-e,2),i=ur(e*-.309,2),l=ur(e*.809,2);return qr(r,t,"M"+n+","+i+"L"+a+","+l+"H-"+a+"L-"+n+","+i+"L0,"+o+"Z")}},hexagon:{n:14,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a=ur(e/2,2),o=ur(e*qo/2,2);return qr(r,t,"M"+o+",-"+a+"V"+a+"L0,"+n+"L-"+o+","+a+"V-"+a+"L0,-"+n+"Z")}},hexagon2:{n:15,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a=ur(e/2,2),o=ur(e*qo/2,2);return qr(r,t,"M-"+a+","+o+"H"+a+"L"+n+",0L"+a+",-"+o+"H-"+a+"L-"+n+",0Z")}},octagon:{n:16,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.924,2),a=ur(e*.383,2);return qr(r,t,"M-"+a+",-"+n+"H"+a+"L"+n+",-"+a+"V"+a+"L"+a+","+n+"H-"+a+"L-"+n+","+a+"V-"+a+"Z")}},star:{n:17,f:function(e,r,t){if(zr(r))return Nr;var n=e*1.4,a=ur(n*.225,2),o=ur(n*.951,2),i=ur(n*.363,2),l=ur(n*.588,2),u=ur(-n,2),s=ur(n*-.309,2),f=ur(n*.118,2),h=ur(n*.809,2),p=ur(n*.382,2);return qr(r,t,"M"+a+","+s+"H"+o+"L"+i+","+f+"L"+l+","+h+"L0,"+p+"L-"+l+","+h+"L-"+i+","+f+"L-"+o+","+s+"H-"+a+"L0,"+u+"Z")}},hexagram:{n:18,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.66,2),a=ur(e*.38,2),o=ur(e*.76,2);return qr(r,t,"M-"+o+",0l-"+a+",-"+n+"h"+o+"l"+a+",-"+n+"l"+a+","+n+"h"+o+"l-"+a+","+n+"l"+a+","+n+"h-"+o+"l-"+a+","+n+"l-"+a+",-"+n+"h-"+o+"Z")}},"star-triangle-up":{n:19,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*qo*.8,2),a=ur(e*.8,2),o=ur(e*1.6,2),i=ur(e*4,2),l="A "+i+","+i+" 0 0 1 ";return qr(r,t,"M-"+n+","+a+l+n+","+a+l+"0,-"+o+l+"-"+n+","+a+"Z")}},"star-triangle-down":{n:20,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*qo*.8,2),a=ur(e*.8,2),o=ur(e*1.6,2),i=ur(e*4,2),l="A "+i+","+i+" 0 0 1 ";return qr(r,t,"M"+n+",-"+a+l+"-"+n+",-"+a+l+"0,"+o+l+n+",-"+a+"Z")}},"star-square":{n:21,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.1,2),a=ur(e*2,2),o="A "+a+","+a+" 0 0 1 ";return qr(r,t,"M-"+n+",-"+n+o+"-"+n+","+n+o+n+","+n+o+n+",-"+n+o+"-"+n+",-"+n+"Z")}},"star-diamond":{n:22,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.4,2),a=ur(e*1.9,2),o="A "+a+","+a+" 0 0 1 ";return qr(r,t,"M-"+n+",0"+o+"0,"+n+o+n+",0"+o+"0,-"+n+o+"-"+n+",0Z")}},"diamond-tall":{n:23,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*.7,2),a=ur(e*1.4,2);return qr(r,t,"M0,"+a+"L"+n+",0L0,-"+a+"L-"+n+",0Z")}},"diamond-wide":{n:24,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.4,2),a=ur(e*.7,2);return qr(r,t,"M0,"+a+"L"+n+",0L0,-"+a+"L-"+n+",0Z")}},hourglass:{n:25,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M"+n+","+n+"H-"+n+"L"+n+",-"+n+"H-"+n+"Z")},noDot:!0},bowtie:{n:26,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M"+n+","+n+"V-"+n+"L-"+n+","+n+"V-"+n+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a=ur(e/d8,2);return qr(r,t,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.3,2);return qr(r,t,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM0,-"+n+"V"+n+"M-"+n+",0H"+n)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.3,2),a=ur(e*.65,2);return qr(r,t,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM-"+a+",-"+a+"L"+a+","+a+"M-"+a+","+a+"L"+a+",-"+a)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.4,2);return qr(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.2,2),a=ur(e*.85,2);return qr(r,t,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e/2,2),a=ur(e,2);return qr(r,t,"M"+n+","+a+"V-"+a+"M"+(n-a)+",-"+a+"V"+a+"M"+a+","+n+"H-"+a+"M-"+a+","+(n-a)+"H"+a)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.2,2),a=ur(e*1.6,2),o=ur(e*.8,2);return qr(r,t,"M-"+n+","+o+"L0,0M"+n+","+o+"L0,0M0,-"+a+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.2,2),a=ur(e*1.6,2),o=ur(e*.8,2);return qr(r,t,"M-"+n+",-"+o+"L0,0M"+n+",-"+o+"L0,0M0,"+a+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.2,2),a=ur(e*1.6,2),o=ur(e*.8,2);return qr(r,t,"M"+o+","+n+"L0,0M"+o+",-"+n+"L0,0M-"+a+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.2,2),a=ur(e*1.6,2),o=ur(e*.8,2);return qr(r,t,"M-"+o+","+n+"L0,0M-"+o+",-"+n+"L0,0M"+a+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.4,2);return qr(r,t,"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*1.4,2);return qr(r,t,"M0,"+n+"V-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2);return qr(r,t,"M"+n+","+n+"L-"+n+",-"+n)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a=ur(e*2,2);return qr(r,t,"M0,0L-"+n+","+a+"H"+n+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a=ur(e*2,2);return qr(r,t,"M0,0L-"+n+",-"+a+"H"+n+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2,2),a=ur(e,2);return qr(r,t,"M0,0L"+n+",-"+a+"V"+a+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2,2),a=ur(e,2);return qr(r,t,"M0,0L-"+n+",-"+a+"V"+a+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a=ur(e*2,2);return qr(r,t,"M-"+n+",0H"+n+"M0,0L-"+n+","+a+"H"+n+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e,2),a=ur(e*2,2);return qr(r,t,"M-"+n+",0H"+n+"M0,0L-"+n+",-"+a+"H"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2,2),a=ur(e,2);return qr(r,t,"M0,-"+a+"V"+a+"M0,0L"+n+",-"+a+"V"+a+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,r,t){if(zr(r))return Nr;var n=ur(e*2,2),a=ur(e,2);return qr(r,t,"M0,-"+a+"V"+a+"M0,0L-"+n+",-"+a+"V"+a+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,r,t){if(zr(r))return Nr;var n=Dg/2.5,a=2*e*Rg(n),o=2*e*Pg(n);return qr(r,t,"M0,0L"+-a+","+o+"L"+a+","+o+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,r,t){if(zr(r))return Nr;var n=Dg/4,a=2*e*Rg(n),o=2*e*Pg(n);return qr(r,t,"M0,0L"+-a+","+o+"A "+2*e+","+2*e+" 0 0 1 "+a+","+o+"Z")},backoff:.4,noDot:!0}};function zr(e){return e===null}var p8,g8,y8,m8;function qr(e,r,t){if((!e||e%360===0)&&!r)return t;if(y8===e&&m8===r&&p8===t)return g8;y8=e,m8=r,p8=t;function n(T,y){var k=Rg(T),S=Pg(T),x=y[0],M=y[1]+(r||0);return[x*k-M*S,x*S+M*k]}for(var a=e/180*Dg,o=0,i=0,l=$Y(t),u="",s=0;s{"use strict";var ln=it(),dt=ir(),jY=dt.numberFormat,Ol=nt(),Og=ka(),Th=Cr(),wn=Xr(),eW=Li(),Df=dt.strTranslate,Ah=Wn(),rW=Fo(),tW=qn(),nW=tW.LINE_SPACING,L8=Nc().DESELECTDIM,aW=oa(),iW=Cg(),oW=to().appendArrayPointValue,vr=B8.exports={};vr.font=function(e,r){var t=r.variant,n=r.style,a=r.weight,o=r.color,i=r.size,l=r.family,u=r.shadow,s=r.lineposition,f=r.textcase;l&&e.style("font-family",l),i+1&&e.style("font-size",i+"px"),o&&e.call(wn.fill,o),a&&e.style("font-weight",a),n&&e.style("font-style",n),t&&e.style("font-variant",t),f&&e.style("text-transform",Ig(sW(f))),u&&e.style("text-shadow",u==="auto"?Ah.makeTextShadow(wn.contrast(o)):Ig(u)),s&&e.style("text-decoration-line",Ig(uW(s)))};function Ig(e){return e==="none"?void 0:e}var lW={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function sW(e){return lW[e]}function uW(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}vr.setPosition=function(e,r,t){e.attr("x",r).attr("y",t)};vr.setSize=function(e,r,t){e.attr("width",r).attr("height",t)};vr.setRect=function(e,r,t,n,a){e.call(vr.setPosition,r,t).call(vr.setSize,n,a)};vr.translatePoint=function(e,r,t,n){var a=t.c2p(e.x),o=n.c2p(e.y);if(Ol(a)&&Ol(o)&&r.node())r.node().nodeName==="text"?r.attr("x",a).attr("y",o):r.attr("transform",Df(a,o));else return!1;return!0};vr.translatePoints=function(e,r,t){e.each(function(n){var a=ln.select(this);vr.translatePoint(n,a,r,t)})};vr.hideOutsideRangePoint=function(e,r,t,n,a,o){r.attr("display",t.isPtWithinRange(e,a)&&n.isPtWithinRange(e,o)?null:"none")};vr.hideOutsideRangePoints=function(e,r){if(r._hasClipOnAxisFalse){var t=r.xaxis,n=r.yaxis;e.each(function(a){var o=a[0].trace,i=o.xcalendar,l=o.ycalendar,u=Th.traceIs(o,"bar-like")?".bartext":".point,.textpoint";e.selectAll(u).each(function(s){vr.hideOutsideRangePoint(s,ln.select(this),t,n,i,l)})})}};vr.crispRound=function(e,r,t){return!r||!Ol(r)?t||0:e._context.staticPlot?r:r<1?1:Math.round(r)};vr.singleLineStyle=function(e,r,t,n,a){r.style("fill","none");var o=(((e||[])[0]||{}).trace||{}).line||{},i=t||o.width||0,l=a||o.dash||"";wn.stroke(r,n||o.color),vr.dashLine(r,l,i)};vr.lineGroupStyle=function(e,r,t,n){e.style("fill","none").each(function(a){var o=(((a||[])[0]||{}).trace||{}).line||{},i=r||o.width||0,l=n||o.dash||"";ln.select(this).call(wn.stroke,t||o.color).call(vr.dashLine,l,i)})};vr.dashLine=function(e,r,t){t=+t||0,r=vr.dashStyle(r,t),e.style({"stroke-dasharray":r,"stroke-width":t+"px"})};vr.dashStyle=function(e,r){r=+r||1;var t=Math.max(r,3);return e==="solid"?e="":e==="dot"?e=t+"px,"+t+"px":e==="dash"?e=3*t+"px,"+3*t+"px":e==="longdash"?e=5*t+"px,"+5*t+"px":e==="dashdot"?e=3*t+"px,"+t+"px,"+t+"px,"+t+"px":e==="longdashdot"&&(e=5*t+"px,"+2*t+"px,"+t+"px,"+2*t+"px"),e};function D8(e,r,t,n){var a=r.fillpattern,o=r.fillgradient,i=vr.getPatternAttr,l=a&&(i(a.shape,0,"")||i(a.path,0,""));if(l){var u=i(a.bgcolor,0,null),s=i(a.fgcolor,0,null),f=a.fgopacity,h=i(a.size,0,8),p=i(a.solidity,0,.3),b=r.uid;vr.pattern(e,"point",t,b,l,h,p,void 0,a.fillmode,u,s,f)}else if(o&&o.type!=="none"){var m=o.type,w="scatterfill-"+r.uid;if(n&&(w="legendfill-"+r.uid),!n&&(o.start!==void 0||o.stop!==void 0)){var T,y;m==="horizontal"?(T={x:o.start,y:0},y={x:o.stop,y:0}):m==="vertical"&&(T={x:0,y:o.start},y={x:0,y:o.stop}),T.x=r._xA.c2p(T.x===void 0?r._extremes.x.min[0].val:T.x,!0),T.y=r._yA.c2p(T.y===void 0?r._extremes.y.min[0].val:T.y,!0),y.x=r._xA.c2p(y.x===void 0?r._extremes.x.max[0].val:y.x,!0),y.y=r._yA.c2p(y.y===void 0?r._extremes.y.max[0].val:y.y,!0),e.call(I8,t,w,"linear",o.colorscale,"fill",T,y,!0,!1)}else m==="horizontal"&&(m=m+"reversed"),e.call(vr.gradient,t,w,m,o.colorscale,"fill")}else r.fillcolor&&e.call(wn.fill,r.fillcolor)}vr.singleFillStyle=function(e,r){var t=ln.select(e.node()),n=t.data(),a=((n[0]||[])[0]||{}).trace||{};D8(e,a,r,!1)};vr.fillGroupStyle=function(e,r,t){e.style("stroke-width",0).each(function(n){var a=ln.select(this);n[0].trace&&D8(a,n[0].trace,r,t)})};var _8=b8();vr.symbolNames=[];vr.symbolFuncs=[];vr.symbolBackOffs=[];vr.symbolNeedLines={};vr.symbolNoDot={};vr.symbolNoFill={};vr.symbolList=[];Object.keys(_8).forEach(function(e){var r=_8[e],t=r.n;vr.symbolList.push(t,String(t),e,t+100,String(t+100),e+"-open"),vr.symbolNames[t]=e,vr.symbolFuncs[t]=r.f,vr.symbolBackOffs[t]=r.backoff||0,r.needLine&&(vr.symbolNeedLines[t]=!0),r.noDot?vr.symbolNoDot[t]=!0:vr.symbolList.push(t+200,String(t+200),e+"-dot",t+300,String(t+300),e+"-open-dot"),r.noFill&&(vr.symbolNoFill[t]=!0)});var fW=vr.symbolNames.length,cW="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";vr.symbolNumber=function(e){if(Ol(e))e=+e;else if(typeof e=="string"){var r=0;e.indexOf("-open")>0&&(r=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(r+=200,e=e.replace("-dot","")),e=vr.symbolNames.indexOf(e),e>=0&&(e+=r)}return e%100>=fW||e>=400?0:Math.floor(Math.max(e,0))};function R8(e,r,t,n){var a=e%100;return vr.symbolFuncs[a](r,t,n)+(e>=200?cW:"")}var w8=jY("~f"),P8={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};vr.gradient=function(e,r,t,n,a,o){var i=P8[n];return I8(e,r,t,i.type,a,o,i.start,i.stop,!1,i.reversed)};function I8(e,r,t,n,a,o,i,l,u,s){var f=a.length,h;n==="linear"?h={node:"linearGradient",attrs:{x1:i.x,y1:i.y,x2:l.x,y2:l.y,gradientUnits:u?"userSpaceOnUse":"objectBoundingBox"},reversed:s}:n==="radial"&&(h={node:"radialGradient",reversed:s});for(var p=new Array(f),b=0;b=0&&e.i===void 0&&(e.i=o.i),r.style("opacity",n.selectedOpacityFn?n.selectedOpacityFn(e):e.mo===void 0?i.opacity:e.mo),n.ms2mrc){var u;e.ms==="various"||i.size==="various"?u=3:u=n.ms2mrc(e.ms),e.mrc=u,n.selectedSizeFn&&(u=e.mrc=n.selectedSizeFn(e));var s=vr.symbolNumber(e.mx||i.symbol)||0;e.om=s%200>=100;var f=Hg(e,t),h=Ug(e,t);r.attr("d",R8(s,u,f,h))}var p=!1,b,m,w;if(e.so)w=l.outlierwidth,m=l.outliercolor,b=i.outliercolor;else{var T=(l||{}).width;w=(e.mlw+1||T+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?m=e.mlcc=n.lineScale(e.mlc):dt.isArrayOrTypedArray(l.color)?m=wn.defaultLine:m=l.color,dt.isArrayOrTypedArray(i.color)&&(b=wn.defaultLine,p=!0),"mc"in e?b=e.mcc=n.markerScale(e.mc):b=i.color||i.colors||"rgba(0,0,0,0)",n.selectedColorFn&&(b=n.selectedColorFn(e))}if(e.om)r.call(wn.stroke,b).style({"stroke-width":(w||1)+"px",fill:"none"});else{r.style("stroke-width",(e.isBlank?0:w)+"px");var y=i.gradient,k=e.mgt;k?p=!0:k=y&&y.type,dt.isArrayOrTypedArray(k)&&(k=k[0],P8[k]||(k=0));var S=i.pattern,x=vr.getPatternAttr,M=S&&(x(S.shape,e.i,"")||x(S.path,e.i,""));if(k&&k!=="none"){var d=e.mgc;d?p=!0:d=y.color;var _=t.uid;p&&(_+="-"+e.i),vr.gradient(r,a,_,k,[[0,d],[1,b]],"fill")}else if(M){var g=!1,c=S.fgcolor;!c&&o&&o.color&&(c=o.color,g=!0);var A=x(c,e.i,o&&o.color||null),v=x(S.bgcolor,e.i,null),D=S.fgopacity,E=x(S.size,e.i,8),R=x(S.solidity,e.i,.3);g=g||e.mcc||dt.isArrayOrTypedArray(S.shape)||dt.isArrayOrTypedArray(S.path)||dt.isArrayOrTypedArray(S.bgcolor)||dt.isArrayOrTypedArray(S.fgcolor)||dt.isArrayOrTypedArray(S.size)||dt.isArrayOrTypedArray(S.solidity);var N=t.uid;g&&(N+="-"+e.i),vr.pattern(r,"point",a,N,M,E,R,e.mcc,S.fillmode,v,A,D)}else dt.isArrayOrTypedArray(b)?wn.fill(r,b[e.i]):wn.fill(r,b);w&&wn.stroke(r,m)}};vr.makePointStyleFns=function(e){var r={},t=e.marker;return r.markerScale=vr.tryColorscale(t,""),r.lineScale=vr.tryColorscale(t,"line"),Th.traceIs(e,"symbols")&&(r.ms2mrc=aW.isBubble(e)?iW(e):function(){return(t.size||6)/2}),e.selectedpoints&&dt.extendFlat(r,vr.makeSelectedPointStyleFns(e)),r};vr.makeSelectedPointStyleFns=function(e){var r={},t=e.selected||{},n=e.unselected||{},a=e.marker||{},o=t.marker||{},i=n.marker||{},l=a.opacity,u=o.opacity,s=i.opacity,f=u!==void 0,h=s!==void 0;(dt.isArrayOrTypedArray(l)||f||h)&&(r.selectedOpacityFn=function(x){var M=x.mo===void 0?a.opacity:x.mo;return x.selected?f?u:M:h?s:L8*M});var p=a.color,b=o.color,m=i.color;(b||m)&&(r.selectedColorFn=function(x){var M=x.mcc||p;return x.selected?b||M:m||M});var w=a.size,T=o.size,y=i.size,k=T!==void 0,S=y!==void 0;return Th.traceIs(e,"symbols")&&(k||S)&&(r.selectedSizeFn=function(x){var M=x.mrc||w/2;return x.selected?k?T/2:M:S?y/2:M}),r};vr.makeSelectedTextStyleFns=function(e){var r={},t=e.selected||{},n=e.unselected||{},a=e.textfont||{},o=t.textfont||{},i=n.textfont||{},l=a.color,u=o.color,s=i.color;return r.selectedTextColorFn=function(f){var h=f.tc||l;return f.selected?u||h:s||(u?h:wn.addOpacity(h,L8))},r};vr.selectedPointStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=vr.makeSelectedPointStyleFns(r),n=r.marker||{},a=[];t.selectedOpacityFn&&a.push(function(o,i){o.style("opacity",t.selectedOpacityFn(i))}),t.selectedColorFn&&a.push(function(o,i){wn.fill(o,t.selectedColorFn(i))}),t.selectedSizeFn&&a.push(function(o,i){var l=i.mx||n.symbol||0,u=t.selectedSizeFn(i);o.attr("d",R8(vr.symbolNumber(l),u,Hg(i,r),Ug(i,r))),i.mrc2=u}),a.length&&e.each(function(o){for(var i=ln.select(this),l=0;l0?t:0}vr.textPointStyle=function(e,r,t){if(e.size()){var n;if(r.selectedpoints){var a=vr.makeSelectedTextStyleFns(r);n=a.selectedTextColorFn}var o=r.texttemplate,i=t._fullLayout;e.each(function(l){var u=ln.select(this),s=o?dt.extractOption(l,r,"txt","texttemplate"):dt.extractOption(l,r,"tx","text");if(!s&&s!==0){u.remove();return}if(o){var f=r._module.formatLabels,h=f?f(l,r,i):{},p={};oW(p,r,l.i),s=dt.texttemplateString({data:[p,l,r._meta],fallback:r.texttemplatefallback,labels:h,locale:i._d3locale,template:s})}var b=l.tp||r.textposition,m=N8(l,r),w=n?n(l):l.tc||r.textfont.color;u.call(vr.font,{family:l.tf||r.textfont.family,weight:l.tw||r.textfont.weight,style:l.ty||r.textfont.style,variant:l.tv||r.textfont.variant,textcase:l.tC||r.textfont.textcase,lineposition:l.tE||r.textfont.lineposition,shadow:l.tS||r.textfont.shadow,size:m,color:w}).text(s).call(Ah.convertToTspans,t).call(F8,b,m,l.mrc)})}};vr.selectedTextStyle=function(e,r){if(!(!e.size()||!r.selectedpoints)){var t=vr.makeSelectedTextStyleFns(r);e.each(function(n){var a=ln.select(this),o=t.selectedTextColorFn(n),i=n.tp||r.textposition,l=N8(n,r);wn.fill(a,o);var u=Th.traceIs(r,"bar-like");F8(a,i,l,n.mrc2||n.mrc,u)})}};var M8=.5;vr.smoothopen=function(e,r){if(e.length<3)return"M"+e.join("L");var t="M"+e[0],n=[],a;for(a=1;a=u||x>=f&&x<=u)&&(M<=h&&M>=s||M>=h&&M<=s)&&(e=[x,M])}return e}vr.applyBackoff=O8;vr.makeTester=function(){var e=dt.ensureSingleById(ln.select("body"),"svg","js-plotly-tester",function(t){t.attr(rW.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),r=dt.ensureSingle(e,"path","js-reference-point",function(t){t.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});vr.tester=e,vr.testref=r};vr.savedBBoxes={};var Ng=0,dW=1e4;vr.bBox=function(e,r,t){t||(t=T8(e));var n;if(t){if(n=vr.savedBBoxes[t],n)return dt.extendFlat({},n)}else if(e.childNodes.length===1){var a=e.childNodes[0];if(t=T8(a),t){var o=+a.getAttribute("x")||0,i=+a.getAttribute("y")||0,l=a.getAttribute("transform");if(!l){var u=vr.bBox(a,!1,t);return o&&(u.left+=o,u.right+=o),i&&(u.top+=i,u.bottom+=i),u}if(t+="~"+o+"~"+i+"~"+l,n=vr.savedBBoxes[t],n)return dt.extendFlat({},n)}}var s,f;r?s=e:(f=vr.tester.node(),s=e.cloneNode(!0),f.appendChild(s)),ln.select(s).attr("transform",null).call(Ah.positionText,0,0);var h=s.getBoundingClientRect(),p=vr.testref.node().getBoundingClientRect();r||f.removeChild(s);var b={height:h.height,width:h.width,left:h.left-p.left,top:h.top-p.top,right:h.right-p.left,bottom:h.bottom-p.top};return Ng>=dW&&(vr.savedBBoxes={},Ng=0),t&&(vr.savedBBoxes[t]=b),Ng++,dt.extendFlat({},b)};function T8(e){var r=e.getAttribute("data-unformatted");if(r!==null)return r+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}vr.setClipUrl=function(e,r,t){e.attr("clip-path",Bg(r,t))};function Bg(e,r){if(!e)return null;var t=r._context,n=t._exportedPlot?"":t._baseUrl||"";return n?"url('"+n+"#"+e+"')":"url(#"+e+")"}vr.getTranslate=function(e){var r=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",n=e[t]("transform")||"",a=n.replace(r,function(o,i,l){return[i,l].join(" ")}).split(" ");return{x:+a[0]||0,y:+a[1]||0}};vr.setTranslate=function(e,r,t){var n=/(\btranslate\(.*?\);?)/,a=e.attr?"attr":"getAttribute",o=e.attr?"attr":"setAttribute",i=e[a]("transform")||"";return r=r||0,t=t||0,i=i.replace(n,"").trim(),i+=Df(r,t),i=i.trim(),e[o]("transform",i),i};vr.getScale=function(e){var r=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,t=e.attr?"attr":"getAttribute",n=e[t]("transform")||"",a=n.replace(r,function(o,i,l){return[i,l].join(" ")}).split(" ");return{x:+a[0]||1,y:+a[1]||1}};vr.setScale=function(e,r,t){var n=/(\bscale\(.*?\);?)/,a=e.attr?"attr":"getAttribute",o=e.attr?"attr":"setAttribute",i=e[a]("transform")||"";return r=r||1,t=t||1,i=i.replace(n,"").trim(),i+="scale("+r+","+t+")",i=i.trim(),e[o]("transform",i),i};var pW=/\s*sc.*/;vr.setPointGroupScale=function(e,r,t){if(r=r||1,t=t||1,!!e){var n=r===1&&t===1?"":"scale("+r+","+t+")";e.each(function(){var a=(this.getAttribute("transform")||"").replace(pW,"");a+=n,a=a.trim(),this.setAttribute("transform",a)})}};var gW=/translate\([^)]*\)\s*$/;vr.setTextPointsScale=function(e,r,t){e&&e.each(function(){var n,a=ln.select(this),o=a.select("text");if(o.node()){var i=parseFloat(o.attr("x")||0),l=parseFloat(o.attr("y")||0),u=(a.attr("transform")||"").match(gW);r===1&&t===1?n=[]:n=[Df(i,l),"scale("+r+","+t+")",Df(-i,-l)],u&&n.push(u),a.attr("transform",n.join(""))}})};function Ug(e,r){var t;return e&&(t=e.mf),t===void 0&&(t=r.marker&&r.marker.standoff||0),!r._geo&&!r._xA?-t:t}vr.getMarkerStandoff=Ug;var Lf=Math.atan2,Nl=Math.cos,Qs=Math.sin;function A8(e,r){var t=r[0],n=r[1];return[t*Nl(e)-n*Qs(e),t*Qs(e)+n*Nl(e)]}var k8,S8,C8,E8,zg,qg;function Hg(e,r){var t=e.ma;t===void 0&&(t=r.marker.angle,(!t||dt.isArrayOrTypedArray(t))&&(t=0));var n,a,o=r.marker.angleref;if(o==="previous"||o==="north"){if(r._geo){var i=r._geo.project(e.lonlat);n=i[0],a=i[1]}else{var l=r._xA,u=r._yA;if(l&&u)n=l.c2p(e.x),a=u.c2p(e.y);else return 90}if(r._geo){var s=e.lonlat[0],f=e.lonlat[1],h=r._geo.project([s,f+1e-5]),p=r._geo.project([s+1e-5,f]),b=Lf(p[1]-a,p[0]-n),m=Lf(h[1]-a,h[0]-n),w;if(o==="north")w=t/180*Math.PI;else if(o==="previous"){var T=s/180*Math.PI,y=f/180*Math.PI,k=k8/180*Math.PI,S=S8/180*Math.PI,x=k-T,M=Nl(S)*Qs(x),d=Qs(S)*Nl(y)-Nl(S)*Qs(y)*Nl(x);w=-Lf(M,d)-Math.PI,k8=s,S8=f}var _=A8(b,[Nl(w),0]),g=A8(m,[Qs(w),0]);t=Lf(_[1]+g[1],_[0]+g[0])/Math.PI*180,o==="previous"&&!(qg===r.uid&&e.i===zg+1)&&(t=null)}if(o==="previous"&&!r._geo)if(qg===r.uid&&e.i===zg+1&&Ol(n)&&Ol(a)){var c=n-C8,A=a-E8,v=r.line&&r.line.shape||"",D=v.slice(v.length-1);D==="h"&&(A=0),D==="v"&&(c=0),t+=Lf(A,c)/Math.PI*180+90}else t=null}return C8=n,E8=a,zg=e.i,qg=r.uid,t}vr.getMarkerAngle=Hg});var Rf=de((Fce,G8)=>{"use strict";var $s=it(),yW=nt(),mW=on(),Vg=Cr(),Bl=ir(),U8=Bl.strTranslate,kh=mt(),Sh=Xr(),js=Wn(),H8=Nc(),xW=qn().OPPOSITE_SIDE,V8=/ [XY][0-9]* /,Gg=1.6,Yg=1.6;function bW(e,r,t){var n=e._fullLayout,a=t.propContainer,o=t.propName,i=t.placeholder,l=t.traceIndex,u=t.avoid||{},s=t.attributes,f=t.transform,h=t.containerGroup,p=1,b=a.title,m=(b&&b.text?b.text:"").trim(),w=!1,T=b&&b.font?b.font:{},y=T.family,k=T.size,S=T.color,x=T.weight,M=T.style,d=T.variant,_=T.textcase,g=T.lineposition,c=T.shadow,A=t.subtitlePropName,v=!!A,D=t.subtitlePlaceholder,E=(a.title||{}).subtitle||{text:"",font:{}},R=(E.text||"").trim(),N=!1,F=1,I=E.font,L=I.family,P=I.size,O=I.color,U=I.weight,X=I.style,$=I.variant,j=I.textcase,Y=I.lineposition,q=I.shadow,K;o==="title.text"?K="titleText":o.indexOf("axis")!==-1?K="axisTitleText":o.indexOf("colorbar")!==-1&&(K="colorbarTitleText");var ne=e._context.edits[K];function Q(Ce,Pe){return Ce===void 0||Pe===void 0?!1:Ce.replace(V8," % ")===Pe.replace(V8," % ")}m===""?p=0:Q(m,i)&&(ne||(m=""),p=.2,w=!0),v&&(R===""?F=0:Q(R,D)&&(ne||(R=""),F=.2,N=!0)),t._meta?m=Bl.templateString(m,t._meta):n._meta&&(m=Bl.templateString(m,n._meta));var oe=m||R||ne,re;h||(h=Bl.ensureSingle(n._infolayer,"g","g-"+r),re=n._hColorbarMoveTitle);var H=h.selectAll("text."+r).data(oe?[0]:[]);H.enter().append("text"),H.text(m).attr("class",r),H.exit().remove();var ee=null,V=r+"-subtitle",te=R||ne;if(v&&(ee=h.selectAll("text."+V).data(te?[0]:[]),ee.enter().append("text"),ee.text(R).attr("class",V),ee.exit().remove()),!oe)return h;function ue(Ce,Pe){Bl.syncOrAsync([ve,ke],{title:Ce,subtitle:Pe})}function ve(Ce){var Pe=Ce.title,Ee=Ce.subtitle,Ne;!f&&re&&(f={}),f?(Ne="",f.rotate&&(Ne+="rotate("+[f.rotate,s.x,s.y]+")"),(f.offset||re)&&(Ne+=U8(0,(f.offset||0)-(re||0)))):Ne=null,Pe.attr("transform",Ne);function Ue(pe){if(pe){var ce=$s.select(pe.node().parentNode).select("."+V);if(!ce.empty()){var xe=pe.node().getBBox();if(xe.height){var Le=xe.y+xe.height+Gg*P;ce.attr("y",Le)}}}}if(Pe.style("opacity",p*Sh.opacity(S)).call(kh.font,{color:Sh.rgb(S),size:$s.round(k,2),family:y,weight:x,style:M,variant:d,textcase:_,shadow:c,lineposition:g}).attr(s).call(js.convertToTspans,e,Ue),Ee&&!Ee.empty()){var ge=h.select("."+r+"-math-group"),we=Pe.node().getBBox(),Te=ge.node()?ge.node().getBBox():void 0,me=Te?Te.y+Te.height+Gg*P:we.y+we.height+Yg*P,ye=Bl.extendFlat({},s,{y:me});Ee.attr("transform",Ne),Ee.style("opacity",F*Sh.opacity(O)).call(kh.font,{color:Sh.rgb(O),size:$s.round(P,2),family:L,weight:U,style:X,variant:$,textcase:j,shadow:q,lineposition:Y}).attr(ye).call(js.convertToTspans,e)}return mW.previousPromises(e)}function ke(Ce){var Pe=Ce.title,Ee=$s.select(Pe.node().parentNode);if(u&&u.selection&&u.side&&m){Ee.attr("transform",null);var Ne=xW[u.side],Ue=u.side==="left"||u.side==="top"?-1:1,ge=yW(u.pad)?u.pad:2,we=kh.bBox(Ee.node()),Te={t:0,b:0,l:0,r:0},me=e._fullLayout._reservedMargin;for(var ye in me)for(var pe in me[ye]){var ce=me[ye][pe];Te[pe]=Math.max(Te[pe],ce)}var xe={left:Te.l,top:Te.t,right:n.width-Te.r,bottom:n.height-Te.b},Le=u.maxShift||Ue*(xe[u.side]-we[u.side]),qe=0;if(Le<0)qe=Le;else{var ze=u.offsetLeft||0,$e=u.offsetTop||0;we.left-=ze,we.right-=ze,we.top-=$e,we.bottom-=$e,u.selection.each(function(){var Be=kh.bBox(this);Bl.bBoxIntersect(we,Be,ge)&&(qe=Math.max(qe,Ue*(Be[u.side]-we[Ne])+ge))}),qe=Math.min(Le,qe),a._titleScoot=Math.abs(qe)}if(qe>0||Le<0){var Ve={left:[-qe,0],right:[qe,0],top:[0,-qe],bottom:[0,qe]}[u.side];Ee.attr("transform",U8(Ve[0],Ve[1]))}}}H.call(ue,ee);function Se(Ce,Pe){Ce.text(Pe).on("mouseover.opacity",function(){$s.select(this).transition().duration(H8.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){$s.select(this).transition().duration(H8.HIDE_PLACEHOLDER).style("opacity",0)})}if(ne&&(m?H.on(".opacity",null):(Se(H,i),w=!0),H.call(js.makeEditable,{gd:e}).on("edit",function(Ce){l!==void 0?Vg.call("_guiRestyle",e,o,Ce,l):Vg.call("_guiRelayout",e,o,Ce)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ue)}).on("input",function(Ce){this.text(Ce||" ").call(js.positionText,s.x,s.y)}),v)){if(v&&!m){var he=H.node().getBBox(),Ae=he.y+he.height+Yg*P;ee.attr("y",Ae)}R?ee.on(".opacity",null):(Se(ee,D),N=!0),ee.call(js.makeEditable,{gd:e}).on("edit",function(Ce){Vg.call("_guiRelayout",e,"title.subtitle.text",Ce)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ue)}).on("input",function(Ce){this.text(Ce||" ").call(js.positionText,ee.attr("x"),ee.attr("y"))})}return H.classed("js-placeholder",w),ee&&!ee.empty()&&ee.classed("js-placeholder",N),h}G8.exports={draw:bW,SUBTITLE_PADDING_EM:Yg,SUBTITLE_PADDING_MATHJAX_EM:Gg}});var Fh=de((Nce,J8)=>{"use strict";var _W=it(),wW=Ss().utcFormat,xt=ir(),MW=xt.numberFormat,Di=nt(),Oo=xt.cleanNumber,TW=xt.ms2DateTime,Y8=xt.dateTime2ms,Ri=xt.ensureNumber,W8=xt.isArrayOrTypedArray,Bo=nn(),Ch=Bo.FP_SAFE,ni=Bo.BADNUM,AW=Bo.LOG_CLIP,kW=Bo.ONEWEEK,Eh=Bo.ONEDAY,Lh=Bo.ONEHOUR,X8=Bo.ONEMIN,Z8=Bo.ONESEC,Dh=jt(),Ih=_n(),Rh=Ih.HOUR_PATTERN,Ph=Ih.WEEKDAY_PATTERN;function Pf(e){return Math.pow(10,e)}function Wg(e){return e!=null}J8.exports=function(r,t){t=t||{};var n=r._id||"x",a=n.charAt(0);function o(x,M){if(x>0)return Math.log(x)/Math.LN10;if(x<=0&&M&&r.range&&r.range.length===2){var d=r.range[0],_=r.range[1];return .5*(d+_-2*AW*Math.abs(d-_))}else return ni}function i(x,M,d,_){if((_||{}).msUTC&&Di(x))return+x;var g=Y8(x,d||r.calendar);if(g===ni)if(Di(x)){x=+x;var c=Math.floor(xt.mod(x+.05,1)*10),A=Math.round(x-c/10);g=Y8(new Date(A))+c/10}else return ni;return g}function l(x,M,d){return TW(x,M,d||r.calendar)}function u(x){return r._categories[Math.round(x)]}function s(x){if(Wg(x)){if(r._categoriesMap===void 0&&(r._categoriesMap={}),r._categoriesMap[x]!==void 0)return r._categoriesMap[x];r._categories.push(typeof x=="number"?String(x):x);var M=r._categories.length-1;return r._categoriesMap[x]=M,M}return ni}function f(x,M){for(var d=new Array(M),_=0;_r.range[1]&&(d=!d);for(var _=d?-1:1,g=_*x,c=0,A=0;AD)c=A+1;else{c=g<(v+D)/2?A:A+1;break}}var E=r._B[c]||0;return isFinite(E)?m(x,r._m2,E):0},y=function(x){var M=r._rangebreaks.length;if(!M)return w(x,r._m,r._b);for(var d=0,_=0;_r._rangebreaks[_].pmax&&(d=_+1);return w(x,r._m2,r._B[d])}}r.c2l=r.type==="log"?o:Ri,r.l2c=r.type==="log"?Pf:Ri,r.l2p=T,r.p2l=y,r.c2p=r.type==="log"?function(x,M){return T(o(x,M))}:T,r.p2c=r.type==="log"?function(x){return Pf(y(x))}:y,["linear","-"].indexOf(r.type)!==-1?(r.d2r=r.r2d=r.d2c=r.r2c=r.d2l=r.r2l=Oo,r.c2d=r.c2r=r.l2d=r.l2r=Ri,r.d2p=r.r2p=function(x){return r.l2p(Oo(x))},r.p2d=r.p2r=y,r.cleanPos=Ri):r.type==="log"?(r.d2r=r.d2l=function(x,M){return o(Oo(x),M)},r.r2d=r.r2c=function(x){return Pf(Oo(x))},r.d2c=r.r2l=Oo,r.c2d=r.l2r=Ri,r.c2r=o,r.l2d=Pf,r.d2p=function(x,M){return r.l2p(r.d2r(x,M))},r.p2d=function(x){return Pf(y(x))},r.r2p=function(x){return r.l2p(Oo(x))},r.p2r=y,r.cleanPos=Ri):r.type==="date"?(r.d2r=r.r2d=xt.identity,r.d2c=r.r2c=r.d2l=r.r2l=i,r.c2d=r.c2r=r.l2d=r.l2r=l,r.d2p=r.r2p=function(x,M,d){return r.l2p(i(x,0,d))},r.p2d=r.p2r=function(x,M,d){return l(y(x),M,d)},r.cleanPos=function(x){return xt.cleanDate(x,ni,r.calendar)}):r.type==="category"?(r.d2c=r.d2l=s,r.r2d=r.c2d=r.l2d=u,r.d2r=r.d2l_noadd=p,r.r2c=function(x){var M=b(x);return M!==void 0?M:r.fraction2r(.5)},r.l2r=r.c2r=Ri,r.r2l=b,r.d2p=function(x){return r.l2p(r.r2c(x))},r.p2d=function(x){return u(y(x))},r.r2p=r.d2p,r.p2r=y,r.cleanPos=function(x){return typeof x=="string"&&x!==""?x:Ri(x)}):r.type==="multicategory"&&(r.r2d=r.c2d=r.l2d=u,r.d2r=r.d2l_noadd=p,r.r2c=function(x){var M=p(x);return M!==void 0?M:r.fraction2r(.5)},r.r2c_just_indices=h,r.l2r=r.c2r=Ri,r.r2l=p,r.d2p=function(x){return r.l2p(r.r2c(x))},r.p2d=function(x){return u(y(x))},r.r2p=r.d2p,r.p2r=y,r.cleanPos=function(x){return Array.isArray(x)||typeof x=="string"&&x!==""?x:Ri(x)},r.setupMultiCategory=function(x){var M=r._traceIndices,d,_,g=r._matchGroup;if(g&&r._categories.length===0){for(var c in g)if(c!==n){var A=t[Dh.id2name(c)];M=M.concat(A._traceIndices)}}var v=[[0,{}],[0,{}]],D=[];for(d=0;dA[1]&&(_[c?0:1]=d),_[0]===_[1]){var v=r.l2r(M),D=r.l2r(d);if(M!==void 0){var E=v+1;d!==void 0&&(E=Math.min(E,D)),_[c?1:0]=E}if(d!==void 0){var R=D+1;M!==void 0&&(R=Math.max(R,v)),_[c?0:1]=R}}}},r.cleanRange=function(x,M){r._cleanRange(x,M),r.limitRange(x)},r._cleanRange=function(x,M){M||(M={}),x||(x="range");var d=xt.nestedProperty(r,x).get(),_,g;if(r.type==="date"?g=xt.dfltRange(r.calendar):a==="y"?g=Ih.DFLTRANGEY:r._name==="realaxis"?g=[0,1]:g=M.dfltRange||Ih.DFLTRANGEX,g=g.slice(),(r.rangemode==="tozero"||r.rangemode==="nonnegative")&&(g[0]=0),!d||d.length!==2){xt.nestedProperty(r,x).set(g);return}var c=d[0]===null,A=d[1]===null;for(r.type==="date"&&!r.autorange&&(d[0]=xt.cleanDate(d[0],ni,r.calendar),d[1]=xt.cleanDate(d[1],ni,r.calendar)),_=0;_<2;_++)if(r.type==="date"){if(!xt.isDateTime(d[_],r.calendar)){r[x]=g;break}if(r.r2l(d[0])===r.r2l(d[1])){var v=xt.constrain(r.r2l(d[0]),xt.MIN_MS+1e3,xt.MAX_MS-1e3);d[0]=r.l2r(v-1e3),d[1]=r.l2r(v+1e3);break}}else{if(!Di(d[_]))if(!(c||A)&&Di(d[1-_]))d[_]=d[1-_]*(_?10:.1);else{r[x]=g;break}if(d[_]<-Ch?d[_]=-Ch:d[_]>Ch&&(d[_]=Ch),d[0]===d[1]){var D=Math.max(1,Math.abs(d[0]*1e-6));d[0]-=D,d[1]+=D}}},r.setScale=function(x){var M=t._size;if(r.overlaying){var d=Dh.getFromId({_fullLayout:t},r.overlaying);r.domain=d.domain}var _=x&&r._r?"_r":"range",g=r.calendar;r.cleanRange(_);var c=r.r2l(r[_][0],g),A=r.r2l(r[_][1],g),v=a==="y";if(v?(r._offset=M.t+(1-r.domain[1])*M.h,r._length=M.h*(r.domain[1]-r.domain[0]),r._m=r._length/(c-A),r._b=-r._m*A):(r._offset=M.l+r.domain[0]*M.w,r._length=M.w*(r.domain[1]-r.domain[0]),r._m=r._length/(A-c),r._b=-r._m*c),r._rangebreaks=[],r._lBreaks=0,r._m2=0,r._B=[],r.rangebreaks){var D,E;if(r._rangebreaks=r.locateBreaks(Math.min(c,A),Math.max(c,A)),r._rangebreaks.length){for(D=0;DA&&(R=!R),R&&r._rangebreaks.reverse();var N=R?-1:1;for(r._m2=N*r._length/(Math.abs(A-c)-r._lBreaks),r._B.push(-r._m2*(v?A:c)),D=0;Dg&&(g+=7,c<_&&(c+=7));break;case Rh:A=new Date(x);var R=A.getUTCHours(),N=A.getUTCMinutes(),F=A.getUTCSeconds(),I=A.getUTCMilliseconds();c=R+(N/60+F/3600+I/36e5),_>g&&(g+=24,c<_&&(c+=24));break;case"":c=x;break}if(c>=_&&c=_&&x=q.min&&(Xq.max&&(q.max=$),j=!1)}j&&A.push({min:X,max:$})}};for(d=0;d{"use strict";var K8=nt(),Xg=ir(),SW=nn().BADNUM,Nh=Xg.isArrayOrTypedArray,CW=Xg.isDateTime,EW=Xg.cleanNumber,Q8=Math.round;j8.exports=function(r,t,n){var a=r,o=n.noMultiCategory;if(Nh(a)&&!a.length)return"-";if(!o&&IW(a))return"multicategory";if(o&&Array.isArray(a[0])){for(var i=[],l=0;lo*2}function $8(e){return Math.max(1,(e-1)/1e3)}function PW(e,r){for(var t=e.length,n=$8(t),a=0,o=0,i={},l=0;la*2}function IW(e){return Nh(e[0])&&Nh(e[1])}});var eu=de((qce,lM)=>{"use strict";var FW=it(),nM=nt(),Uo=ir(),zh=nn().FP_SAFE,NW=Cr(),zW=mt(),aM=jt(),qW=aM.getFromId,OW=aM.isLinked;lM.exports={applyAutorangeOptions:oM,getAutoRange:Jg,makePadFn:Kg,doAutoRange:UW,findExtremes:HW,concatExtremes:jg};function Jg(e,r){var t,n,a=[],o=e._fullLayout,i=Kg(o,r,0),l=Kg(o,r,1),u=jg(e,r),s=u.min,f=u.max;if(s.length===0||f.length===0)return Uo.simpleMap(r.range,r.r2l);var h=s[0].val,p=f[0].val;for(t=1;t0&&(A=S-i(d)-l(_),A>x?v/A>M&&(g=d,c=_,M=v/A):v/S>M&&(g={val:d.val,nopad:1},c={val:_.val,nopad:1},M=v/S));function D(I,L){return Math.max(I,l(L))}if(h===p){var E=h-1,R=h+1;if(y)if(h===0)a=[0,1];else{var N=(h>0?f:s).reduce(D,0),F=h/(1-Math.min(.5,N/S));a=h>0?[0,F]:[F,0]}else k?a=[Math.max(0,E),Math.max(1,R)]:a=[E,R]}else y?(g.val>=0&&(g={val:0,nopad:1}),c.val<=0&&(c={val:0,nopad:1})):k&&(g.val-M*i(g)<0&&(g={val:0,nopad:1}),c.val<=0&&(c={val:1,nopad:1})),M=(c.val-g.val-eM(r,d.val,_.val))/(S-i(g)-l(c)),a=[g.val-M*i(g),c.val+M*l(c)];return a=oM(a,r),r.limitRange&&r.limitRange(),m&&a.reverse(),Uo.simpleMap(a,r.l2r||Number)}function eM(e,r,t){var n=0;if(e.rangebreaks)for(var a=e.locateBreaks(r,t),o=0;o0?t.ppadplus:t.ppadminus)||t.ppad||0),d=x((e._m>0?t.ppadminus:t.ppadplus)||t.ppad||0),_=x(t.vpadplus||t.vpad),g=x(t.vpadminus||t.vpad);if(!s){if(k=1/0,S=-1/0,u)for(h=0;h0&&(k=p),p>S&&p-zh&&(k=p),p>S&&p=v;h--)A(h);return{min:n,max:a,opts:t}}function Qg(e,r,t,n){iM(e,r,t,n,VW)}function $g(e,r,t,n){iM(e,r,t,n,GW)}function iM(e,r,t,n,a){for(var o=n.tozero,i=n.extrapad,l=!0,u=0;u=t&&(s.extrapad||!i)){l=!1;break}else a(r,s.val)&&s.pad<=t&&(i||!s.extrapad)&&(e.splice(u,1),u--)}if(l){var f=o&&r===0;e.push({val:r,pad:f?0:t,extrapad:f?!1:i})}}function tM(e){return nM(e)&&Math.abs(e)=r}function YW(e,r){var t=r.autorangeoptions;return t&&t.minallowed!==void 0&&qh(r,t.minallowed,t.maxallowed)?t.minallowed:t&&t.clipmin!==void 0&&qh(r,t.clipmin,t.clipmax)?Math.max(e,r.d2l(t.clipmin)):e}function WW(e,r){var t=r.autorangeoptions;return t&&t.maxallowed!==void 0&&qh(r,t.minallowed,t.maxallowed)?t.maxallowed:t&&t.clipmax!==void 0&&qh(r,t.clipmin,t.clipmax)?Math.min(e,r.d2l(t.clipmax)):e}function qh(e,r,t){return r!==void 0&&t!==void 0?(r=e.d2l(r),t=e.d2l(t),r=u&&(o=u,t=u),i<=u&&(i=u,n=u)}}return t=YW(t,r),n=WW(n,r),[t,n]}});var Lt=de((Oce,LM)=>{"use strict";var Da=it(),Xt=nt(),ru=on(),Ff=Cr(),Er=ir(),tu=Er.strTranslate,Ul=Wn(),XW=Rf(),Nf=Xr(),da=mt(),ZW=La(),sM=gg(),Mn=nn(),JW=Mn.ONEMAXYEAR,Uh=Mn.ONEAVGYEAR,Hh=Mn.ONEMINYEAR,KW=Mn.ONEMAXQUARTER,n2=Mn.ONEAVGQUARTER,Vh=Mn.ONEMINQUARTER,QW=Mn.ONEMAXMONTH,nu=Mn.ONEAVGMONTH,Gh=Mn.ONEMINMONTH,pa=Mn.ONEWEEK,On=Mn.ONEDAY,Ho=On/2,Ii=Mn.ONEHOUR,zf=Mn.ONEMIN,Yh=Mn.ONESEC,$W=Mn.ONEMILLI,jW=Mn.ONEMICROSEC,Hl=Mn.MINUS_SIGN,Xh=Mn.BADNUM,a2={K:"zeroline"},i2={K:"gridline",L:"path"},o2={K:"minor-gridline",L:"path"},xM={K:"tick",L:"path"},uM={K:"tick",L:"text"},fM={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},Zh=qn(),If=Zh.MID_SHIFT,Vl=Zh.CAP_SHIFT,qf=Zh.LINE_SPACING,eX=Zh.OPPOSITE_SIDE,Wh=3,lr=LM.exports={};lr.setConvert=Fh();var rX=Zg(),no=jt(),tX=no.idSort,nX=no.isLinked;lr.id2name=no.id2name;lr.name2id=no.name2id;lr.cleanId=no.cleanId;lr.list=no.list;lr.listIds=no.listIds;lr.getFromId=no.getFromId;lr.getFromTrace=no.getFromTrace;var bM=eu();lr.getAutoRange=bM.getAutoRange;lr.findExtremes=bM.findExtremes;var aX=1e-4;function f2(e){var r=(e[1]-e[0])*aX;return[e[0]-r,e[1]+r]}lr.coerceRef=function(e,r,t,n,a,o){var i=n.charAt(n.length-1),l=t._fullLayout._subplots[i+"axis"],u=n+"ref",s={};return a||(a=l[0]||(typeof o=="string"?o:o[0])),o||(o=a),l=l.concat(l.map(function(f){return f+" domain"})),s[u]={valType:"enumerated",values:l.concat(o?typeof o=="string"?[o]:o:[]),dflt:a},Er.coerce(e,r,s,u)};lr.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};lr.coercePosition=function(e,r,t,n,a,o){var i,l,u=lr.getRefType(n);if(u!=="range")i=Er.ensureNumber,l=t(a,o);else{var s=lr.getFromId(r,n);o=s.fraction2r(o),l=t(a,o),i=s.cleanPos}e[a]=i(l)};lr.cleanPosition=function(e,r,t){var n=t==="paper"||t==="pixel"?Er.ensureNumber:lr.getFromId(r,t).cleanPos;return n(e)};lr.redrawComponents=function(e,r){r=r||lr.listIds(e);var t=e._fullLayout;function n(a,o,i,l){for(var u=Ff.getComponentMethod(a,o),s={},f=0;f2e-6||((t-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};lr.saveRangeInitial=function(e,r){for(var t=lr.list(e,"",!0),n=!1,a=0;ah*.3||s(n)||s(a))){var p=t.dtick/2;e+=e+pi){var l=Number(t.slice(1));o.exactYears>i&&l%12===0?e=lr.tickIncrement(e,"M6","reverse")+On*1.5:o.exactMonths>i?e=lr.tickIncrement(e,"M1","reverse")+On*15.5:e-=Ho;var u=lr.tickIncrement(e,t);if(u<=n)return u}return e}lr.prepMinorTicks=function(e,r,t){if(!r.minor.dtick){delete e.dtick;var n=r.dtick&&Xt(r._tmin),a;if(n){var o=lr.tickIncrement(r._tmin,r.dtick,!0);a=[r._tmin,o*.99+r._tmin*.01]}else{var i=Er.simpleMap(r.range,r.r2l);a=[i[0],.8*i[0]+.2*i[1]]}if(e.range=Er.simpleMap(a,r.l2r),e._isMinor=!0,lr.prepTicks(e,t),n){var l=Xt(r.dtick),u=Xt(e.dtick),s=l?r.dtick:+r.dtick.substring(1),f=u?e.dtick:+e.dtick.substring(1);l&&u?e2(s,f)?s===2*pa&&f===2*On&&(e.dtick=pa):s===2*pa&&f===3*On?e.dtick=pa:s===pa&&!(r._input.minor||{}).nticks?e.dtick=On:vM(s/f,2.5)?e.dtick=s/2:e.dtick=s:String(r.dtick).charAt(0)==="M"?u?e.dtick="M1":e2(s,f)?s>=12&&f===2&&(e.dtick="M3"):e.dtick=r.dtick:String(e.dtick).charAt(0)==="L"?String(r.dtick).charAt(0)==="L"?e2(s,f)||(e.dtick=vM(s/f,2.5)?r.dtick/2:r.dtick):e.dtick="D1":e.dtick==="D2"&&+r.dtick>1&&(e.dtick=1)}e.range=r.range}r.minor._tick0Init===void 0&&(e.tick0=r.tick0)};function e2(e,r){return Math.abs((e/r+.5)%1-.5)<.001}function vM(e,r){return Math.abs(e/r-1)<.001}lr.prepTicks=function(e,r){var t=Er.simpleMap(e.range,e.r2l,void 0,void 0,r);if(e.tickmode==="auto"||!e.dtick){var n=e.nticks,a;n||(e.type==="category"||e.type==="multicategory"?(a=e.tickfont?Er.bigFont(e.tickfont.size||12):15,n=e._length/a):(a=e._id.charAt(0)==="y"?40:80,n=Er.constrain(e._length/a,4,9)+1),e._name==="radialaxis"&&(n*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(n*=100),e._roughDTick=Math.abs(t[1]-t[0])/n,lr.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(o=n-1,i=n):(o=n,i=n);var l=e[o].value,u=e[i].value,s=Math.abs(u-l),f=t||s,h=0;f>=Hh?s>=Hh&&s<=JW?h=s:h=Uh:t===n2&&f>=Vh?s>=Vh&&s<=KW?h=s:h=n2:f>=Gh?s>=Gh&&s<=QW?h=s:h=nu:t===pa&&f>=pa?h=pa:f>=On?h=On:t===Ho&&f>=Ho?h=Ho:t===Ii&&f>=Ii&&(h=Ii);var p;h>=s&&(h=s,p=!0);var b=a+h;if(r.rangebreaks&&h>0){for(var m=84,w=0,T=0;Tpa&&(h=s)}(h>0||n===0)&&(e[n].periodX=a+h/2)}}lr.calcTicks=function(r,t){for(var n=r.type,a=r.calendar,o=r.ticklabelstep,i=r.ticklabelmode==="period",l=r.range[0]>r.range[1],u=!r.ticklabelindex||Er.isArrayOrTypedArray(r.ticklabelindex)?r.ticklabelindex:[r.ticklabelindex],s=Er.simpleMap(r.range,r.r2l,void 0,void 0,t),f=s[1]=(S?0:1);x--){var M=!x;x?(r._dtickInit=r.dtick,r._tick0Init=r.tick0):(r.minor._dtickInit=r.minor.dtick,r.minor._tick0Init=r.minor.tick0);var d=x?r:Er.extendFlat({},r,r.minor);if(M?lr.prepMinorTicks(d,r,t):lr.prepTicks(d,t),d.tickmode==="array"){x?(T=[],m=dM(r,!M)):(y=[],w=dM(r,!M));continue}if(d.tickmode==="sync"){T=[],m=fX(r);continue}var _=f2(s),g=_[0],c=_[1],A=Xt(d.dtick),v=n==="log"&&!(A||d.dtick.charAt(0)==="L"),D=lr.tickFirst(d,t);if(x){if(r._tmin=D,D=c:R<=c;R=lr.tickIncrement(R,I,f,a)){if(x&&N++,d.rangebreaks&&!f){if(R=p)break}if(T.length>b||R===E)break;E=R;var L={value:R};x?(v&&R!==(R|0)&&(L.simpleLabel=!0),o>1&&N%o&&(L.skipLabel=!0),T.push(L)):(L.minor=!0,y.push(L))}}if(!y||y.length<2)u=!1;else{var P=(y[1].value-y[0].value)*(l?-1:1);FX(P,r.tickformat)||(u=!1)}if(!u)k=T;else{var O=T.concat(y);i&&T.length&&(O=O.slice(1)),O=O.sort(function(Ae,Ce){return Ae.value-Ce.value}).filter(function(Ae,Ce,Pe){return Ce===0||Ae.value!==Pe[Ce-1].value});var U=O.map(function(Ae,Ce){return Ae.minor===void 0&&!Ae.skipLabel?Ce:null}).filter(function(Ae){return Ae!==null});U.forEach(function(Ae){u.map(function(Ce){var Pe=Ae+Ce;Pe>=0&&Pe-1;oe--){if(T[oe].drop){T.splice(oe,1);continue}T[oe].value=t2(T[oe].value,r);var V=r.c2p(T[oe].value);(re?ee>V-H:eep||Eep&&(Pe.periodX=p),Eea&&pUh)r/=Uh,n=a(10),e.dtick="M"+12*Pi(r,n,Oh);else if(o>nu)r/=nu,e.dtick="M"+Pi(r,1,pM);else if(o>On){if(e.dtick=Pi(r,On,e._hasDayOfWeekBreaks?[1,2,7,14]:cX),!t){var i=lr.getTickFormat(e),l=e.ticklabelmode==="period";l&&(e._rawTick0=e.tick0),/%[uVW]/.test(i)?e.tick0=Er.dateTick0(e.calendar,2):e.tick0=Er.dateTick0(e.calendar,1),l&&(e._dowTick0=e.tick0)}}else o>Ii?e.dtick=Pi(r,Ii,pM):o>zf?e.dtick=Pi(r,zf,gM):o>Yh?e.dtick=Pi(r,Yh,gM):(n=a(10),e.dtick=Pi(r,n,Oh))}else if(e.type==="log"){e.tick0=0;var u=Er.simpleMap(e.range,e.r2l);if(e._isMinor&&(r*=1.5),r>.7)e.dtick=Math.ceil(r);else if(Math.abs(u[1]-u[0])<1){var s=1.5*Math.abs((u[1]-u[0])/r);r=Math.abs(Math.pow(10,u[1])-Math.pow(10,u[0]))/s,n=a(10),e.dtick="L"+Pi(r,n,Oh)}else e.dtick=r>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(r,1))):d2(e)?(e.tick0=0,n=1,e.dtick=Pi(r,n,hX)):(e.tick0=0,n=a(10),e.dtick=Pi(r,n,Oh));if(e.dtick===0&&(e.dtick=1),!Xt(e.dtick)&&typeof e.dtick!="string"){var f=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(f)}};function TM(e){var r=e.dtick;if(e._tickexponent=0,!Xt(r)&&typeof r!="string"&&(r=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var t=e.r2l(e.tick0),n=e.l2r(t).replace(/(^-|i)/g,""),a=n.length;if(String(r).charAt(0)==="M")a>10||n.slice(5)!=="01-01"?e._tickround="d":e._tickround=+r.slice(1)%12===0?"y":"m";else if(r>=On&&a<=10||r>=On*15)e._tickround="d";else if(r>=zf&&a<=16||r>=Ii)e._tickround="M";else if(r>=Yh&&a<=19||r>=zf)e._tickround="S";else{var o=e.l2r(t+r).replace(/^-/,"").length;e._tickround=Math.max(a,o)-20,e._tickround<0&&(e._tickround=4)}}else if(Xt(r)||r.charAt(0)==="L"){var i=e.range.map(e.r2d||Number);Xt(r)||(r=Number(r.slice(1))),e._tickround=2-Math.floor(Math.log(r)/Math.LN10+.01);var l=Math.max(Math.abs(i[0]),Math.abs(i[1])),u=Math.floor(Math.log(l)/Math.LN10+.01),s=e.minexponent===void 0?3:e.minexponent;Math.abs(u)>s&&(au(e.exponentformat)&&e.exponentformat!=="SI extended"&&!c2(u)||au(e.exponentformat)&&e.exponentformat==="SI extended"&&!h2(u)?e._tickexponent=3*Math.round((u-1)/3):e._tickexponent=u)}else e._tickround=null}lr.tickIncrement=function(e,r,t,n){var a=t?-1:1;if(Xt(r))return Er.increment(e,a*r);var o=r.charAt(0),i=a*Number(r.slice(1));if(o==="M")return Er.incrementMonth(e,i,n);if(o==="L")return Math.log(Math.pow(10,e)+i)/Math.LN10;if(o==="D"){var l=r==="D2"?MM:wM,u=e+a*.01,s=Er.roundUp(Er.mod(u,1),l,t);return Math.floor(u)+Math.log(Da.round(Math.pow(10,s),1))/Math.LN10}throw"unrecognized dtick "+String(r)};lr.tickFirst=function(e,r){var t=e.r2l||Number,n=Er.simpleMap(e.range,t,void 0,void 0,r),a=n[1]=0&&y<=e._length?T:null};if(o&&Er.isArrayOrTypedArray(e.ticktext)){var h=Er.simpleMap(e.range,e.r2l),p=(Math.abs(h[1]-h[0])-(e._lBreaks||0))/1e4;for(s=0;s"+l;else{var s=Bf(e),f=e._trueSide||e.side;(!s&&f==="top"||s&&f==="bottom")&&(i+="
")}r.text=i}function dX(e,r,t,n,a){var o=e.dtick,i=r.x,l=e.tickformat,u=typeof o=="string"&&o.charAt(0);if(a==="never"&&(a=""),n&&u!=="L"&&(o="L3",u="L"),l||u==="L")r.text=Of(Math.pow(10,i),e,a,n);else if(Xt(o)||u==="D"&&(e.minorloglabels==="complete"||Er.mod(i+.01,1)<.1)){var s;e.minorloglabels==="complete"&&!(Er.mod(i+.01,1)<.1)&&(s=!0,r.fontSize*=.75);var f=Math.pow(10,i).toExponential(0),h=f.split("e"),p=+h[1],b=Math.abs(p),m=e.exponentformat;m==="power"||au(m)&&m!=="SI extended"&&c2(p)||au(m)&&m==="SI extended"&&h2(p)?(r.text=h[0],b>0&&(r.text+="x10"),r.text==="1x10"&&(r.text="10"),p!==0&&p!==1&&(r.text+=""+(p>0?"":Hl)+b+""),r.fontSize*=1.25):(m==="e"||m==="E")&&b>2?r.text=h[0]+m+(p>0?"+":Hl)+b:(r.text=Of(Math.pow(10,i),e,"","fakehover"),o==="D1"&&e._id.charAt(0)==="y"&&(r.dy-=r.fontSize/6))}else if(u==="D")r.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,Er.mod(i,1)))),r.fontSize*=.75;else throw"unrecognized dtick "+String(o);if(e.dtick==="D1"){var w=String(r.text).charAt(0);(w==="0"||w==="1")&&(e._id.charAt(0)==="y"?r.dx-=r.fontSize/4:(r.dy+=r.fontSize/2,r.dx+=(e.range[1]>e.range[0]?1:-1)*r.fontSize*(i<0?.5:.25)))}}function pX(e,r){var t=e._categories[Math.round(r.x)];t===void 0&&(t=""),r.text=String(t)}function gX(e,r,t){var n=Math.round(r.x),a=e._categories[n]||[],o=a[1]===void 0?"":String(a[1]),i=a[0]===void 0?"":String(a[0]);t?r.text=i+" - "+o:(r.text=o,r.text2=i)}function yX(e,r,t,n,a){a==="never"?a="":e.showexponent==="all"&&Math.abs(r.x/e.dtick)<1e-6&&(a="hide"),r.text=Of(r.x,e,a,n)}function mX(e,r,t,n,a){if(e.thetaunit==="radians"&&!t){var o=r.x/180;if(o===0)r.text="0";else{var i=xX(o);if(i[1]>=100)r.text=Of(Er.deg2rad(r.x),e,a,n);else{var l=r.x<0;i[1]===1?i[0]===1?r.text="\u03C0":r.text=i[0]+"\u03C0":r.text=["",i[0],"","\u2044","",i[1],"","\u03C0"].join(""),l&&(r.text=Hl+r.text)}}}else r.text=Of(r.x,e,a,n)}function xX(e){function r(l,u){return Math.abs(l-u)<=1e-6}function t(l,u){return r(u,0)?l:t(u,l%u)}function n(l){for(var u=1;!r(Math.round(l*u)/u,l);)u*=10;return u}var a=n(e),o=e*a,i=Math.abs(t(o,a));return[Math.round(o/i),Math.round(a/i)]}var kM=["f","p","n","\u03BC","m","","k","M","G","T"],bX=["q","r","y","z","a",...kM,"P","E","Z","Y","R","Q"],au=e=>["SI","SI extended","B"].includes(e);function c2(e){return e>14||e<-15}function h2(e){return e>32||e<-30}function _X(e,r){return au(r)?!!(r==="SI extended"&&h2(e)||r!=="SI extended"&&c2(e)):!1}function Of(e,r,t,n){var a=e<0,o=r._tickround,i=t||r.exponentformat||"B",l=r._tickexponent,u=lr.getTickFormat(r),s=r.separatethousands;if(n){var f={exponentformat:i,minexponent:r.minexponent,dtick:r.showexponent==="none"?r.dtick:Xt(e)&&Math.abs(e)||1,range:r.showexponent==="none"?r.range.map(r.r2d):[0,e||1]};TM(f),o=(Number(f._tickround)||0)+4,l=f._tickexponent,r.hoverformat&&(u=r.hoverformat)}if(u)return r._numFormat(u)(e).replace(/-/g,Hl);var h=Math.pow(10,-o)/2;if(i==="none"&&(l=0),e=Math.abs(e),e"+m+"":i==="B"&&l===9?e+="B":au(i)&&(e+=i==="SI extended"?bX[l/3+10]:kM[l/3+5])}return a?Hl+e:e}lr.getTickFormat=function(e){var r;function t(u){return typeof u!="string"?u:Number(u.replace("M",""))*nu}function n(u,s){var f=["L","D"];if(typeof u==typeof s){if(typeof u=="number")return u-s;var h=f.indexOf(u.charAt(0)),p=f.indexOf(s.charAt(0));return h===p?Number(u.replace(/(L|D)/g,""))-Number(s.replace(/(L|D)/g,"")):h-p}else return typeof u=="number"?1:-1}function a(u,s,f){var h=f||function(m){return m},p=s[0],b=s[1];return(!p&&typeof p!="number"||h(p)<=h(u))&&(!b&&typeof b!="number"||h(b)>=h(u))}function o(u,s){var f=s[0]===null,h=s[1]===null,p=n(u,s[0])>=0,b=n(u,s[1])<=0;return(f||p)&&(h||b)}var i,l;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(r=0;r=0&&a.unshift(a.splice(f,1).shift())}});var l={false:{left:0,right:0}};return Er.syncOrAsync(a.map(function(u){return function(){if(u){var s=lr.getFromId(e,u);t||(t={}),t.axShifts=l,t.overlayingShiftedAx=i;var f=lr.drawOne(e,s,t);return s._shiftPusher&&u2(s,s._fullDepth||0,l,!0),s._r=s.range.slice(),s._rl=Er.simpleMap(s._r,s.r2l),f}}}))};lr.drawOne=function(e,r,t){t=t||{};var n=t.axShifts||{},a=t.overlayingShiftedAx||[],o,i,l;r.setScale();var u=e._fullLayout,s=r._id,f=s.charAt(0),h=lr.counterLetter(s),p=u._plots[r._mainSubplot],b=r.zerolinelayer==="above traces";if(!p)return;if(r._shiftPusher=r.autoshift||a.indexOf(r._id)!==-1||a.indexOf(r.overlaying)!==-1,r._shiftPusher&r.anchor==="free"){var m=r.linewidth/2||0;r.ticks==="inside"&&(m+=r.ticklen),u2(r,m,n,!0),u2(r,r.shift||0,n,!1)}(t.skipTitle!==!0||r._shift===void 0)&&(r._shift=IX(r,n));var w=p[f+"axislayer"],T=r._mainLinePosition,y=T+=r._shift,k=r._mainMirrorPosition,S=r._vals=lr.calcTicks(r),x=[r.mirror,y,k].join("_");for(o=0;o0?Ee.bottom-Ce:0,Pe))));var we=0,Te=0;if(r._shiftPusher&&(we=Math.max(Pe,Ee.height>0?he==="l"?Ce-Ee.left:Ee.right-Ce:0),r.title.text!==u._dfltTitle[f]&&(Te=(r._titleStandoff||0)+(r._titleScoot||0),he==="l"&&(Te+=mM(r))),r._fullDepth=Math.max(we,Te)),r.automargin){Ne={x:0,y:0,r:0,l:0,t:0,b:0};var me=[0,1],ye=typeof r._shift=="number"?r._shift:0;if(f==="x"){if(he==="b"?Ne[he]=r._depth:(Ne[he]=r._depth=Math.max(Ee.width>0?Ce-Ee.top:0,Pe),me.reverse()),Ee.width>0){var pe=Ee.right-(r._offset+r._length);pe>0&&(Ne.xr=1,Ne.r=pe);var ce=r._offset-Ee.left;ce>0&&(Ne.xl=0,Ne.l=ce)}}else if(he==="l"?(r._depth=Math.max(Ee.height>0?Ce-Ee.left:0,Pe),Ne[he]=r._depth-ye):(r._depth=Math.max(Ee.height>0?Ee.right-Ce:0,Pe),Ne[he]=r._depth+ye,me.reverse()),Ee.height>0){var xe=Ee.bottom-(r._offset+r._length);xe>0&&(Ne.yb=0,Ne.b=xe);var Le=r._offset-Ee.top;Le>0&&(Ne.yt=1,Ne.t=Le)}Ne[h]=r.anchor==="free"?r.position:r._anchorAxis.domain[me[0]],r.title.text!==u._dfltTitle[f]&&(Ne[he]+=mM(r)+(r.title.standoff||0)),r.mirror&&r.anchor!=="free"&&(Ue={x:0,y:0,r:0,l:0,t:0,b:0},Ue[Ae]=r.linewidth,r.mirror&&r.mirror!==!0&&(Ue[Ae]+=Pe),r.mirror===!0||r.mirror==="ticks"?Ue[h]=r._anchorAxis.domain[me[1]]:(r.mirror==="all"||r.mirror==="allticks")&&(Ue[h]=[r._counterDomainMin,r._counterDomainMax][me[1]]))}Se&&(ge=Ff.getComponentMethod("rangeslider","autoMarginOpts")(e,r)),typeof r.automargin=="string"&&(yM(Ne,r.automargin),yM(Ue,r.automargin)),ru.autoMargin(e,v2(r),Ne),ru.autoMargin(e,CM(r),Ue),ru.autoMargin(e,EM(r),ge)}),Er.syncOrAsync(ve)}};function yM(e,r){if(e){var t=Object.keys(fM).reduce(function(n,a){return r.indexOf(a)!==-1&&fM[a].forEach(function(o){n[o]=1}),n},{});Object.keys(e).forEach(function(n){t[n]||(n.length===1?e[n]=0:delete e[n])})}}function wX(e,r){var t=[],n,a=function(o,i){var l=o.xbnd[i];l!==null&&t.push(Er.extendFlat({},o,{x:l}))};if(r.length){for(n=0;ne.range[1],l=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,u=!l;if(t){var s=i?-1:1;t=t*s}if(n){var f=e.side,h=l&&(f==="top"||f==="left")||u&&(f==="bottom"||f==="right")?1:-1;n=n*h}return e._id.charAt(0)==="x"?function(p){return tu(a+e._offset+e.l2p(l2(p))+t,o+n)}:function(p){return tu(o+n,a+e._offset+e.l2p(l2(p))+t)}};function l2(e){return e.periodX!==void 0?e.periodX:e.x}function kX(e){var r=e.ticklabelposition||"",t=e.tickson||"",n=function(m){return r.indexOf(m)!==-1},a=n("top"),o=n("left"),i=n("right"),l=n("bottom"),u=n("inside"),s=t!=="boundaries"&&(l||o||a||i);if(!s&&!u)return[0,0];var f=e.side,h=s?(e.tickwidth||0)/2:0,p=Wh,b=e.tickfont?e.tickfont.size:12;return(l||a)&&(h+=b*Vl,p+=(e.linewidth||0)/2),(o||i)&&(h+=(e.linewidth||0)/2,p+=Wh),u&&f==="top"&&(p-=b*(1-Vl)),(o||a)&&(h=-h),(f==="bottom"||f==="right")&&(p=-p),[s?h:0,u?p:0]}lr.makeTickPath=function(e,r,t,n){n||(n={});var a=n.minor;if(a&&!e.minor)return"";var o=n.len!==void 0?n.len:a?e.minor.ticklen:e.ticklen,i=e._id.charAt(0),l=(e.linewidth||1)/2;return i==="x"?"M0,"+(r+l*t)+"v"+o*t:"M"+(r+l*t)+",0h"+o*t};lr.makeLabelFns=function(e,r,t){var n=e.ticklabelposition||"",a=e.tickson||"",o=function(E){return n.indexOf(E)!==-1},i=o("top"),l=o("left"),u=o("right"),s=o("bottom"),f=a!=="boundaries"&&(s||l||i||u),h=o("inside"),p=n==="inside"&&e.ticks==="inside"||!h&&e.ticks==="outside"&&a!=="boundaries",b=0,m=0,w=p?e.ticklen:0;if(h?w*=-1:f&&(w=0),p&&(b+=w,t)){var T=Er.deg2rad(t);b=w*Math.cos(T)+1,m=w*Math.sin(T)}e.showticklabels&&(p||e.showline)&&(b+=.2*e.tickfont.size),b+=(e.linewidth||1)/2*(h?-1:1);var y={labelStandoff:b,labelShift:m},k,S,x,M,d=0,_=e.side,g=e._id.charAt(0),c=e.tickangle,A;if(g==="x")A=!h&&_==="bottom"||h&&_==="top",M=A?1:-1,h&&(M*=-1),k=m*M,S=r+b*M,x=A?1:-.2,Math.abs(c)===90&&(h?x+=If:c===-90&&_==="bottom"?x=Vl:c===90&&_==="top"?x=If:x=.5,d=If/2*(c/90)),y.xFn=function(E){return E.dx+k+d*E.fontSize},y.yFn=function(E){return E.dy+S+E.fontSize*x},y.anchorFn=function(E,R){if(f){if(l)return"end";if(u)return"start"}return!Xt(R)||R===0||R===180?"middle":R*M<0!==h?"end":"start"},y.heightFn=function(E,R,N){return R<-60||R>60?-.5*N:e.side==="top"!==h?-N:0};else if(g==="y"){if(A=!h&&_==="left"||h&&_==="right",M=A?1:-1,h&&(M*=-1),k=b,S=m*M,x=0,!h&&Math.abs(c)===90&&(c===-90&&_==="left"||c===90&&_==="right"?x=Vl:x=.5),h){var v=Xt(c)?+c:0;if(v!==0){var D=Er.deg2rad(v);d=Math.abs(Math.sin(D))*Vl*M,x=0}}y.xFn=function(E){return E.dx+r-(k+E.fontSize*x)*M+d*E.fontSize},y.yFn=function(E){return E.dy+S+E.fontSize*If},y.anchorFn=function(E,R){return Xt(R)&&Math.abs(R)===90?"middle":A?"end":"start"},y.heightFn=function(E,R,N){return e.side==="right"&&(R*=-1),R<-30?-N:R<30?-.5*N:0}}return y};function Jh(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}lr.drawTicks=function(e,r,t){t=t||{};var n=r._id+"tick",a=[].concat(r.minor&&r.minor.ticks?t.vals.filter(function(i){return i.minor&&!i.noTick}):[]).concat(r.ticks?t.vals.filter(function(i){return!i.minor&&!i.noTick}):[]),o=t.layer.selectAll("path."+n).data(a,Jh);o.exit().remove(),o.enter().append("path").classed(n,1).classed("ticks",1).classed("crisp",t.crisp!==!1).each(function(i){return Nf.stroke(Da.select(this),i.minor?r.minor.tickcolor:r.tickcolor)}).style("stroke-width",function(i){return da.crispRound(e,i.minor?r.minor.tickwidth:r.tickwidth,1)+"px"}).attr("d",t.path).style("display",null),Kh(r,[xM]),o.attr("transform",t.transFn)};lr.drawGrid=function(e,r,t){if(t=t||{},r.tickmode!=="sync"){var n=r._id+"grid",a=r.minor&&r.minor.showgrid,o=a?t.vals.filter(function(y){return y.minor}):[],i=r.showgrid?t.vals.filter(function(y){return!y.minor}):[],l=t.counterAxis;if(l&&lr.shouldShowZeroLine(e,r,l))for(var u=r.tickmode==="array",s=0;s=0;m--){var w=m?p:b;if(w){var T=w.selectAll("path."+n).data(m?i:o,Jh);T.exit().remove(),T.enter().append("path").classed(n,1).classed("crisp",t.crisp!==!1),T.attr("transform",t.transFn).attr("d",t.path).each(function(y){return Nf.stroke(Da.select(this),y.minor?r.minor.gridcolor:r.gridcolor||"#ddd")}).style("stroke-dasharray",function(y){return da.dashStyle(y.minor?r.minor.griddash:r.griddash,y.minor?r.minor.gridwidth:r.gridwidth)}).style("stroke-width",function(y){return(y.minor?h:r._gw)+"px"}).style("display",null),typeof t.path=="function"&&T.attr("d",t.path)}}Kh(r,[i2,o2])}};lr.drawZeroLine=function(e,r,t){t=t||t;var n=r._id+"zl",a=lr.shouldShowZeroLine(e,r,t.counterAxis),o=t.layer.selectAll("path."+n).data(a?[{x:0,id:r._id}]:[]);o.exit().remove(),o.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",t.crisp!==!1).each(function(){t.layer.selectAll("path").sort(function(i,l){return tX(i.id,l.id)})}),o.attr("transform",t.transFn).attr("d",t.path).call(Nf.stroke,r.zerolinecolor||Nf.defaultLine).style("stroke-width",da.crispRound(e,r.zerolinewidth,r._gw||1)+"px").style("display",null),Kh(r,[a2])};lr.drawLabels=function(e,r,t){t=t||{};var n=e._fullLayout,a=r._id,o=r.zerolinelayer==="above traces",i=t.cls||a+"tick",l=t.vals.filter(function(P){return P.text}),u=t.labelFns,s=t.secondary?0:r.tickangle,f=(r._prevTickAngles||{})[i],h=t.layer.selectAll("g."+i).data(r.showticklabels?l:[],Jh),p=[];h.enter().append("g").classed(i,1).append("text").attr("text-anchor","middle").each(function(P){var O=Da.select(this),U=e._promises.length;O.call(Ul.positionText,u.xFn(P),u.yFn(P)).call(da.font,{family:P.font,size:P.fontSize,color:P.fontColor,weight:P.fontWeight,style:P.fontStyle,variant:P.fontVariant,textcase:P.fontTextcase,lineposition:P.fontLineposition,shadow:P.fontShadow}).text(P.text).call(Ul.convertToTspans,e),e._promises[U]?p.push(e._promises.pop().then(function(){b(O,s)})):b(O,s)}),Kh(r,[uM]),h.exit().remove(),t.repositionOnUpdate&&h.each(function(P){Da.select(this).select("text").call(Ul.positionText,u.xFn(P),u.yFn(P))});function b(P,O){P.each(function(U){var X=Da.select(this),$=X.select(".text-math-group"),j=u.anchorFn(U,O),Y=t.transFn.call(X.node(),U)+(Xt(O)&&+O!=0?" rotate("+O+","+u.xFn(U)+","+(u.yFn(U)-U.fontSize/2)+")":""),q=Ul.lineCount(X),K=qf*U.fontSize,ne=u.heightFn(U,Xt(O)?+O:0,(q-1)*K);if(ne&&(Y+=tu(0,ne)),$.empty()){var Q=X.select("text");Q.attr({transform:Y,"text-anchor":j}),Q.style("display",null),r._adjustTickLabelsOverflow&&r._adjustTickLabelsOverflow()}else{var oe=da.bBox($.node()).width,re=oe*{end:-.5,start:.5}[j];$.attr("transform",Y+tu(re,0))}})}r._adjustTickLabelsOverflow=function(){var P=r.ticklabeloverflow;if(!(!P||P==="allow")){var O=P.indexOf("hide")!==-1,U=r._id.charAt(0)==="x",X=0,$=U?e._fullLayout.width:e._fullLayout.height;if(P.indexOf("domain")!==-1){var j=Er.simpleMap(r.range,r.r2l);X=r.l2p(j[0])+r._offset,$=r.l2p(j[1])+r._offset}var Y=Math.min(X,$),q=Math.max(X,$),K=r.side,ne=1/0,Q=-1/0;h.each(function(ee){var V=Da.select(this),te=V.select(".text-math-group");if(te.empty()){var ue=da.bBox(V.node()),ve=0;U?(ue.right>q||ue.leftq||ue.top+(r.tickangle?0:ee.fontSize/4)r["_visibleLabelMin_"+j._id]?V.style("display","none"):q.K==="tick"&&!Y&&V.node().style.display!=="none"&&V.style("display",null)})})})})},b(h,f+1?f:s);function m(){return p.length&&Promise.all(p)}var w=null;function T(){if(b(h,s),l.length&&r.autotickangles&&(r.type!=="log"||String(r.dtick).charAt(0)!=="D")){w=r.autotickangles[0];var P=0,O=[],U,X=1;h.each(function(Ne){P=Math.max(P,Ne.fontSize);var Ue=r.l2p(Ne.x),ge=s2(this),we=da.bBox(ge.node());X=Math.max(X,Ul.lineCount(ge)),O.push({top:0,bottom:10,height:10,left:Ue-we.width/2,right:Ue+we.width/2+2,width:we.width+2})});var $=(r.tickson==="boundaries"||r.showdividers)&&!t.secondary,j=l.length,Y=Math.abs((l[j-1].x-l[0].x)*r._m)/(j-1),q=$?Y/2:Y,K=$?r.ticklen:P*1.25*X,ne=Math.sqrt(Math.pow(q,2)+Math.pow(K,2)),Q=q/ne,oe=r.autotickangles.map(function(Ne){return Ne*Math.PI/180}),re=oe.find(function(Ne){return Math.abs(Math.cos(Ne))<=Q});re===void 0&&(re=oe.reduce(function(Ne,Ue){return Math.abs(Math.cos(Ne))F*N&&(D=N,c[g]=A[g]=E[g])}var I=Math.abs(D-v);I-M>0?(I-=M,M*=1+M/I):M=0,r._id.charAt(0)!=="y"&&(M=-M),c[_]=S.p2r(S.r2p(A[_])+d*M),S.autorange==="min"||S.autorange==="max reversed"?(c[0]=null,S._rangeInitial0=void 0,S._rangeInitial1=void 0):(S.autorange==="max"||S.autorange==="min reversed")&&(c[1]=null,S._rangeInitial0=void 0,S._rangeInitial1=void 0),n._insideTickLabelsUpdaterange[S._name+".range"]=c}var L=Er.syncOrAsync(y);return L&&L.then&&e._promises.push(L),L};function SX(e,r,t){var n=r._id+"divider",a=t.vals,o=t.layer.selectAll("path."+n).data(a,Jh);o.exit().remove(),o.enter().insert("path",":first-child").classed(n,1).classed("crisp",1).call(Nf.stroke,r.dividercolor).style("stroke-width",da.crispRound(e,r.dividerwidth,1)+"px"),o.attr("transform",t.transFn).attr("d",t.path)}lr.getPxPosition=function(e,r){var t=e._fullLayout._size,n=r._id.charAt(0),a=r.side,o;if(r.anchor!=="free"?o=r._anchorAxis:n==="x"?o={_offset:t.t+(1-(r.position||0))*t.h,_length:0}:n==="y"&&(o={_offset:t.l+(r.position||0)*t.w+r._shift,_length:0}),a==="top"||a==="left")return o._offset;if(a==="bottom"||a==="right")return o._offset+o._length};function mM(e){var r=e.title.font.size,t=(e.title.text.match(Ul.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?r*(Vl+t*qf):t?r*(t+1)*qf:r}function CX(e,r){var t=e._fullLayout,n=r._id,a=n.charAt(0),o=r.title.font.size,i,l=(r.title.text.match(Ul.BR_TAG_ALL)||[]).length;if(r.title.hasOwnProperty("standoff"))r.side==="bottom"||r.side==="right"?i=r._depth+r.title.standoff+o*Vl:(r.side==="top"||r.side==="left")&&(i=r._depth+r.title.standoff+o*(If+l*qf));else{var u=Bf(r);if(r.type==="multicategory")i=r._depth;else{var s=1.5*o;u&&(s=.5*o,r.ticks==="outside"&&(s+=r.ticklen)),i=10+s+(r.linewidth?r.linewidth-1:0)}u||(a==="x"?i+=r.side==="top"?o*(r.showticklabels?1:0):o*(r.showticklabels?1.5:.5):i+=r.side==="right"?o*(r.showticklabels?1:.5):o*(r.showticklabels?.5:0))}var f=lr.getPxPosition(e,r),h,p,b;a==="x"?(p=r._offset+r._length/2,b=r.side==="top"?f-i:f+i):(b=r._offset+r._length/2,p=r.side==="right"?f+i:f-i,h={rotate:"-90",offset:0});var m;if(r.type!=="multicategory"){var w=r._selections[r._id+"tick"];if(m={selection:w,side:r.side},w&&w.node()&&w.node().parentNode){var T=da.getTranslate(w.node().parentNode);m.offsetLeft=T.x,m.offsetTop=T.y}r.title.hasOwnProperty("standoff")&&(m.pad=0)}return r._titleStandoff=i,XW.draw(e,n+"title",{propContainer:r,propName:r._name+".title.text",placeholder:t._dfltTitle[a],avoid:m,transform:h,attributes:{x:p,y:b,"text-anchor":"middle"}})}lr.shouldShowZeroLine=function(e,r,t){var n=Er.simpleMap(r.range,r.r2l);return n[0]*n[1]<=0&&r.zeroline&&(r.type==="linear"||r.type==="-")&&!(r.rangebreaks&&r.maskBreaks(0)===Xh)&&(SM(r,0)||!EX(e,r,t,n)||LX(e,r))};lr.clipEnds=function(e,r){return r.filter(function(t){return SM(e,t.x)})};function SM(e,r){var t=e.l2p(r);return t>1&&t1)for(a=1;a=a.min&&e=jW:/%L/.test(r)?e>=$W:/%[SX]/.test(r)?e>=Yh:/%M/.test(r)?e>=zf:/%[HI]/.test(r)?e>=Ii:/%p/.test(r)?e>=Ho:/%[Aadejuwx]/.test(r)?e>=On:/%[UVW]/.test(r)?e>=pa:/%[Bbm]/.test(r)?e>=Gh:/%[q]/.test(r)?e>=Vh:/%[Yy]/.test(r)?e>=Hh:!0}});var RM=de((Bce,DM)=>{"use strict";DM.exports=function(r,t,n){var a,o;if(n){var i=t==="reversed"||t==="min reversed"||t==="max reversed";a=n[i?1:0],o=n[i?0:1]}var l=r("autorangeoptions.minallowed",o===null?a:void 0),u=r("autorangeoptions.maxallowed",a===null?o:void 0);l===void 0&&r("autorangeoptions.clipmin"),u===void 0&&r("autorangeoptions.clipmax"),r("autorangeoptions.include")}});var p2=de((Uce,PM)=>{"use strict";var NX=RM();PM.exports=function(r,t,n,a){var o=t._template||{},i=t.type||o.type||"-";n("minallowed"),n("maxallowed");var l=n("range");if(!l){var u;!a.noInsiderange&&i!=="log"&&(u=n("insiderange"),u&&(u[0]===null||u[1]===null)&&(t.insiderange=!1,u=void 0),u&&(l=n("range",u)))}var s=t.getAutorangeDflt(l,a),f=n("autorange",s),h;l&&(l[0]===null&&l[1]===null||(l[0]===null||l[1]===null)&&(f==="reversed"||f===!0)||l[0]!==null&&(f==="min"||f==="max reversed")||l[1]!==null&&(f==="max"||f==="min reversed"))&&(l=void 0,delete t.range,t.autorange=!0,h=!0),h||(s=t.getAutorangeDflt(l,a),f=n("autorange",s)),f&&(NX(n,f,l),(i==="linear"||i==="-")&&n("rangemode")),t.cleanRange()}});var FM=de((Hce,IM)=>{var zX={left:0,top:0};IM.exports=qX;function qX(e,r,t){r=r||e.currentTarget||e.srcElement,Array.isArray(t)||(t=[0,0]);var n=e.clientX||0,a=e.clientY||0,o=OX(r);return t[0]=n-o.left,t[1]=a-o.top,t}function OX(e){return e===window||e===document||e===document.body?zX:e.getBoundingClientRect()}});var Qh=de((Vce,NM)=>{"use strict";var BX=Yp();function UX(){var e=!1;try{var r=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,r),window.removeEventListener("test",null,r)}catch(t){e=!1}return e}NM.exports=BX&&UX()});var qM=de((Gce,zM)=>{"use strict";zM.exports=function(r,t,n,a,o){var i=(r-n)/(a-n),l=i+t/(a-n),u=(i+l)/2;return o==="left"||o==="bottom"?i:o==="center"||o==="middle"?u:o==="right"||o==="top"?l:i<2/3-u?i:l>4/3-u?l:u}});var UM=de((Yce,BM)=>{"use strict";var OM=ir(),HX=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];BM.exports=function(r,t,n,a){return n==="left"?r=0:n==="center"?r=1:n==="right"?r=2:r=OM.constrain(Math.floor(r*3),0,2),a==="bottom"?t=0:a==="middle"?t=1:a==="top"?t=2:t=OM.constrain(Math.floor(t*3),0,2),HX[t][r]}});var VM=de((Wce,HM)=>{"use strict";var VX=Mf(),GX=$c(),YX=pf().getGraphDiv,WX=cf(),g2=HM.exports={};g2.wrapped=function(e,r,t){e=YX(e),e._fullLayout&&GX.clear(e._fullLayout._uid+WX.HOVERID),g2.raw(e,r,t)};g2.raw=function(r,t){var n=r._fullLayout,a=r._hoverdata;t||(t={}),!(t.target&&!r._dragged&&VX.triggerHandler(r,"plotly_beforehover",t)===!1)&&(n._hoverlayer.selectAll("g").remove(),n._hoverlayer.selectAll("line").remove(),n._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,t.target&&a&&r.emit("plotly_unhover",{event:t,points:a}))}});var ai=de((Xce,XM)=>{"use strict";var XX=FM(),y2=Xp(),ZX=Qh(),JX=ir().removeElement,KX=_n(),Gl=XM.exports={};Gl.align=qM();Gl.getCursor=UM();var YM=VM();Gl.unhover=YM.wrapped;Gl.unhoverRaw=YM.raw;Gl.init=function(r){var t=r.gd,n=1,a=t._context.doubleClickDelay,o=r.element,i,l,u,s,f,h,p,b;t._mouseDownTime||(t._mouseDownTime=0),o.style.pointerEvents="all",o.onmousedown=T,ZX?(o._ontouchstart&&o.removeEventListener("touchstart",o._ontouchstart),o._ontouchstart=T,o.addEventListener("touchstart",T,{passive:!1})):o.ontouchstart=T;function m(S,x,M){return Math.abs(S)a&&(n=Math.max(n-1,1)),t._dragged)r.doneFn&&r.doneFn();else{var x;h.target===p?x=h:(x={target:p,srcElement:p,toElement:p},Object.keys(h).concat(Object.keys(h.__proto__)).forEach(M=>{var d=h[M];!x[M]&&typeof d!="function"&&(x[M]=d)})),r.clickFn&&r.clickFn(n,x),b||p.dispatchEvent(new MouseEvent("click",S))}t._dragging=!1,t._dragged=!1}};function WM(){var e=document.createElement("div");e.className="dragcover";var r=e.style;return r.position="fixed",r.left=0,r.right=0,r.top=0,r.bottom=0,r.zIndex=999999999,r.background="none",document.body.appendChild(e),e}Gl.coverSlip=WM;function GM(e){return XX(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Vo=de((Zce,ZM)=>{"use strict";ZM.exports=function(r,t){(r.attr("class")||"").split(" ").forEach(function(n){n.indexOf("cursor-")===0&&r.classed(n,!1)}),t&&r.classed("cursor-"+t,!0)}});var QM=de((Jce,KM)=>{"use strict";var m2=Vo(),Uf="data-savedcursor",JM="!!";KM.exports=function(r,t){var n=r.attr(Uf);if(t){if(!n){for(var a=(r.attr("class")||"").split(" "),o=0;o{"use strict";var x2=kn(),QX=Ai();$M.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:QX.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:x2({editType:"legend"}),grouptitlefont:x2({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:x2({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var jh=de($h=>{"use strict";$h.isGrouped=function(r){return(r.traceorder||"").indexOf("grouped")!==-1};$h.isVertical=function(r){return r.orientation!=="h"};$h.isReversed=function(r){return(r.traceorder||"").indexOf("reversed")!==-1}});var w2=de(($ce,jM)=>{"use strict";var ev=Cr(),ga=ir(),$X=yt(),jX=Sn(),eZ=b2(),rZ=Is(),_2=jh();function tZ(e,r,t,n){var a=r[e]||{},o=$X.newContainer(t,e);function i(L,P){return ga.coerce(a,o,eZ,L,P)}var l=ga.coerceFont(i,"font",t.font);i("bgcolor",t.paper_bgcolor),i("bordercolor");var u=i("visible");if(!u)return;var s,f=function(L,P){var O=s._input,U=s;return ga.coerce(O,U,jX,L,P)},h=t.font||{},p=ga.coerceFont(i,"grouptitlefont",h,{overrideDflt:{size:Math.round(h.size*1.1)}}),b=0,m=!1,w="normal",T=(t.shapes||[]).filter(function(L){return L.showlegend});function y(L){return ev.traceIs(L,"pie-like")&&L._length!=null&&(Array.isArray(L.legend)||Array.isArray(L.showlegend))}n.filter(y).forEach(function(L){L.visible&&b++;for(var P=0;PL.legend.length)for(var U=L.legend.length;U(e==="legend"?1:0));if(M===!1&&(t[e]=void 0),!(M===!1&&!a.uirevision)&&(i("uirevision",t.uirevision),M!==!1)){i("borderwidth");var d=i("orientation"),_=i("yref"),g=i("xref"),c=d==="h",A=_==="paper",v=g==="paper",D,E,R,N="left";c?(D=0,ev.getComponentMethod("rangeslider","isVisible")(r.xaxis)?A?(E=1.1,R="bottom"):(E=1,R="top"):A?(E=-.1,R="top"):(E=0,R="bottom")):(E=1,R="auto",v?D=1.02:(D=1,N="right")),ga.coerce(a,o,{x:{valType:"number",editType:"legend",min:v?-2:0,max:v?3:1,dflt:D}},"x"),ga.coerce(a,o,{y:{valType:"number",editType:"legend",min:A?-2:0,max:A?3:1,dflt:E}},"y"),i("traceorder",w),_2.isGrouped(t[e])&&i("tracegroupgap"),i("entrywidth"),i("entrywidthmode"),i("indentation"),i("itemsizing"),i("itemwidth"),i("itemclick"),i("itemdoubleclick"),i("groupclick"),i("xanchor",N),i("yanchor",R),i("maxheight"),i("valign"),ga.noneOrAll(a,o,["x","y"]);var F=i("title.text");if(F){i("title.side",c?"left":"top");var I=ga.extendFlat({},l,{size:ga.bigFont(l.size)});ga.coerceFont(i,"title.font",I)}}}jM.exports=function(r,t,n){var a,o=n.slice(),i=t.shapes;if(i)for(a=0;a{"use strict";var iu=Cr(),T2=ir(),nZ=T2.pushUnique,M2=!0;eT.exports=function(r,t,n){var a=t._fullLayout;if(t._dragged||t._editing)return;var o=a.legend.itemclick,i=a.legend.itemdoubleclick,l=a.legend.groupclick;n===1&&o==="toggle"&&i==="toggleothers"&&M2&&t.data&&t._context.showTips&&T2.notifier(T2._(t,"Double-click on legend to isolate one trace"),"long"),M2=!1;var u;if(n===1?u=o:n===2&&(u=i),!u)return;var s=l==="togglegroup",f=a.hiddenlabels?a.hiddenlabels.slice():[],h=r.data()[0][0];if(h.groupTitle&&h.noClick)return;var p=t._fullData,b=(a.shapes||[]).filter(function(Ae){return Ae.showlegend}),m=p.concat(b),w=h.trace;w._isShape&&(w=w._fullInput);var T=w.legendgroup,y,k,S,x,M,d,_={},g=[],c=[],A=[];function v(Ae,Ce){var Pe=g.indexOf(Ae),Ee=_.visible;return Ee||(Ee=_.visible=[]),g.indexOf(Ae)===-1&&(g.push(Ae),Pe=g.length-1),Ee[Pe]=Ce,Pe}var D=(a.shapes||[]).map(function(Ae){return Ae._input}),E=!1;function R(Ae,Ce){D[Ae].visible=Ce,E=!0}function N(Ae,Ce){if(!(h.groupTitle&&!s)){var Pe=Ae._fullInput||Ae,Ee=Pe._isShape,Ne=Pe.index;Ne===void 0&&(Ne=Pe._index);var Ue=Pe.visible===!1?!1:Ce;Ee?R(Ne,Ue):v(Ne,Ue)}}var F=w.legend,I=w._fullInput,L=I&&I._isShape;if(!L&&iu.traceIs(w,"pie-like")){var P=h.label,O=f.indexOf(P);if(u==="toggle")O===-1?f.push(P):f.splice(O,1);else if(u==="toggleothers"){var U=O!==-1,X=[];for(y=0;y{"use strict";tT.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var iT=de((rhe,aT)=>{"use strict";var nT=Cr(),k2=jh();aT.exports=function(r,t,n){var a=t._inHover,o=k2.isGrouped(t),i=k2.isReversed(t),l={},u=[],s=!1,f={},h=0,p=0,b,m;function w(P,O,U){if(t.visible!==!1&&!(n&&P!==t._id))if(O===""||!k2.isGrouped(t)){var X="~~i"+h;u.push(X),l[X]=[U],h++}else u.indexOf(O)===-1?(u.push(O),s=!0,l[O]=[U]):l[O].push(U)}for(b=0;bD&&(v=D)}c[b][0]._groupMinRank=v,c[b][0]._preGroupSort=b}var E=function(P,O){return P[0]._groupMinRank-O[0]._groupMinRank||P[0]._preGroupSort-O[0]._preGroupSort},R=function(P,O){return P.trace.legendrank-O.trace.legendrank||P._preSort-O._preSort};for(c.forEach(function(P,O){P[0]._preGroupSort=O}),c.sort(E),b=0;b{"use strict";var rv=ir();function oT(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}Yl.formatPiePercent=function(r,t){var n=oT((r*100).toPrecision(3));return rv.numSeparate(n,t)+"%"};Yl.formatPieValue=function(r,t){var n=oT(r.toPrecision(10));return rv.numSeparate(n,t)};Yl.getFirstFilled=function(r,t){if(rv.isArrayOrTypedArray(r))for(var n=0;n{"use strict";var aZ=mt(),iZ=Xr();lT.exports=function(r,t,n,a){var o=n.marker.pattern;o&&o.shape?aZ.pointStyle(r,n,a,t):iZ.fill(r,t.color)}});var hT=de((ahe,cT)=>{"use strict";var uT=Xr(),fT=S2().castOption,oZ=sT();cT.exports=function(r,t,n,a){var o=n.marker.line,i=fT(o.color,t.pts)||uT.defaultLine,l=fT(o.width,t.pts)||0;r.call(oZ,t,n,a).style("stroke-width",l).call(uT.stroke,i)}});var D2=de((ihe,mT)=>{"use strict";var Bn=it(),C2=Cr(),En=ir(),vT=En.strTranslate,ya=mt(),Ra=Xr(),E2=Si().extractOpts,tv=oa(),lZ=hT(),sZ=S2().castOption,uZ=A2(),dT=12,pT=5,Wl=2,fZ=10,ou=5;mT.exports=function(r,t,n){var a=t._fullLayout;n||(n=a.legend);var o=n.itemsizing==="constant",i=n.itemwidth,l=(i+uZ.itemGap*2)/2,u=vT(l,0),s=function(_,g,c,A){var v;if(_+1)v=_;else if(g&&g.width>0)v=g.width;else return 0;return o?A:Math.min(v,c)};r.each(function(_){var g=Bn.select(this),c=En.ensureSingle(g,"g","layers");c.style("opacity",_[0].trace.opacity);var A=n.indentation,v=n.valign,D=_[0].lineHeight,E=_[0].height;if(v==="middle"&&A===0||!D||!E)c.attr("transform",null);else{var R={top:1,bottom:-1}[v],N=R*(.5*(D-E+3))||0,F=n.indentation;c.attr("transform",vT(F,N))}var I=c.selectAll("g.legendfill").data([_]);I.enter().append("g").classed("legendfill",!0);var L=c.selectAll("g.legendlines").data([_]);L.enter().append("g").classed("legendlines",!0);var P=c.selectAll("g.legendsymbols").data([_]);P.enter().append("g").classed("legendsymbols",!0),P.selectAll("g.legendpoints").data([_]).enter().append("g").classed("legendpoints",!0)}).each(d).each(p).each(m).each(b).each(T).each(x).each(S).each(f).each(h).each(y).each(k);function f(_){var g=gT(_),c=g.showFill,A=g.showLine,v=g.showGradientLine,D=g.showGradientFill,E=g.anyFill,R=g.anyLine,N=_[0],F=N.trace,I,L,P=E2(F),O=P.colorscale,U=P.reversescale,X=function(Q){if(Q.size())if(c)ya.fillGroupStyle(Q,t,!0);else{var oe="legendfill-"+F.uid;ya.gradient(Q,t,oe,L2(U),O,"fill")}},$=function(Q){if(Q.size()){var oe="legendline-"+F.uid;ya.lineGroupStyle(Q),ya.gradient(Q,t,oe,L2(U),O,"stroke")}},j=tv.hasMarkers(F)||!E?"M5,0":R?"M5,-2":"M5,-3",Y=Bn.select(this),q=Y.select(".legendfill").selectAll("path").data(c||D?[_]:[]);if(q.enter().append("path").classed("js-fill",!0),q.exit().remove(),q.attr("d",j+"h"+i+"v6h-"+i+"z").call(X),A||v){var K=s(void 0,F.line,fZ,pT);L=En.minExtend(F,{line:{width:K}}),I=[En.minExtend(N,{trace:L})]}var ne=Y.select(".legendlines").selectAll("path").data(A||v?[I]:[]);ne.enter().append("path").classed("js-line",!0),ne.exit().remove(),ne.attr("d",j+(v?"l"+i+",0.0001":"h"+i)).call(A?ya.lineGroupStyle:$)}function h(_){var g=gT(_),c=g.anyFill,A=g.anyLine,v=g.showLine,D=g.showMarker,E=_[0],R=E.trace,N=!D&&!A&&!c&&tv.hasText(R),F,I;function L(q,K,ne,Q){var oe=En.nestedProperty(R,q).get(),re=En.isArrayOrTypedArray(oe)&&K?K(oe):oe;if(o&&re&&Q!==void 0&&(re=Q),ne){if(rene[1])return ne[1]}return re}function P(q){return E._distinct&&E.index&&q[E.index]?q[E.index]:q[0]}if(D||N||v){var O={},U={};if(D){O.mc=L("marker.color",P),O.mx=L("marker.symbol",P),O.mo=L("marker.opacity",En.mean,[.2,1]),O.mlc=L("marker.line.color",P),O.mlw=L("marker.line.width",En.mean,[0,5],Wl),U.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var X=L("marker.size",En.mean,[2,16],dT);O.ms=X,U.marker.size=X}v&&(U.line={width:L("line.width",P,[0,10],pT)}),N&&(O.tx="Aa",O.tp=L("textposition",P),O.ts=10,O.tc=L("textfont.color",P),O.tf=L("textfont.family",P),O.tw=L("textfont.weight",P),O.ty=L("textfont.style",P),O.tv=L("textfont.variant",P),O.tC=L("textfont.textcase",P),O.tE=L("textfont.lineposition",P),O.tS=L("textfont.shadow",P)),F=[En.minExtend(E,O)],I=En.minExtend(R,U),I.selectedpoints=null,I.texttemplate=null}var $=Bn.select(this).select("g.legendpoints"),j=$.selectAll("path.scatterpts").data(D?F:[]);j.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",u),j.exit().remove(),j.call(ya.pointStyle,I,t),D&&(F[0].mrc=3);var Y=$.selectAll("g.pointtext").data(N?F:[]);Y.enter().append("g").classed("pointtext",!0).append("text").attr("transform",u),Y.exit().remove(),Y.selectAll("text").call(ya.textPointStyle,I,t)}function p(_){var g=_[0].trace,c=g.type==="waterfall";if(_[0]._distinct&&c){var A=_[0].trace[_[0].dir].marker;return _[0].mc=A.color,_[0].mlw=A.line.width,_[0].mlc=A.line.color,w(_,this,"waterfall")}var v=[];g.visible&&c&&(v=_[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var D=Bn.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(v);D.enter().append("path").classed("legendwaterfall",!0).attr("transform",u).style("stroke-miterlimit",1),D.exit().remove(),D.each(function(E){var R=Bn.select(this),N=g[E[0]].marker,F=s(void 0,N.line,ou,Wl);R.attr("d",E[1]).style("stroke-width",F+"px").call(Ra.fill,N.color),F&&R.call(Ra.stroke,N.line.color)})}function b(_){w(_,this)}function m(_){w(_,this,"funnel")}function w(_,g,c){var A=_[0].trace,v=A.marker||{},D=v.line||{},E=v.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",R=c?A.visible&&A.type===c:C2.traceIs(A,"bar"),N=Bn.select(g).select("g.legendpoints").selectAll("path.legend"+c).data(R?[_]:[]);N.enter().append("path").classed("legend"+c,!0).attr("d",E).attr("transform",u),N.exit().remove(),N.each(function(F){var I=Bn.select(this),L=F[0],P=s(L.mlw,v.line,ou,Wl);I.style("stroke-width",P+"px");var O=L.mcc;if(!n._inHover&&"mc"in L){var U=E2(v),X=U.mid;X===void 0&&(X=(U.max+U.min)/2),O=ya.tryColorscale(v,"")(X)}var $=O||L.mc||v.color,j=v.pattern,Y=ya.getPatternAttr,q=j&&(Y(j.shape,0,"")||Y(j.path,0,""));if(q){var K=Y(j.bgcolor,0,null),ne=Y(j.fgcolor,0,null),Q=j.fgopacity,oe=yT(j.size,8,10),re=yT(j.solidity,.5,1),H="legend-"+A.uid;I.call(ya.pattern,"legend",t,H,q,oe,re,O,j.fillmode,K,ne,Q)}else I.call(Ra.fill,$);P&&Ra.stroke(I,L.mlc||D.color)})}function T(_){var g=_[0].trace,c=Bn.select(this).select("g.legendpoints").selectAll("path.legendbox").data(g.visible&&C2.traceIs(g,"box-violin")?[_]:[]);c.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",u),c.exit().remove(),c.each(function(){var A=Bn.select(this);if((g.boxpoints==="all"||g.points==="all")&&Ra.opacity(g.fillcolor)===0&&Ra.opacity((g.line||{}).color)===0){var v=En.minExtend(g,{marker:{size:o?dT:En.constrain(g.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});c.call(ya.pointStyle,v,t)}else{var D=s(void 0,g.line,ou,Wl);A.style("stroke-width",D+"px").call(Ra.fill,g.fillcolor),D&&Ra.stroke(A,g.line.color)}})}function y(_){var g=_[0].trace,c=Bn.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(g.visible&&g.type==="candlestick"?[_,_]:[]);c.enter().append("path").classed("legendcandle",!0).attr("d",function(A,v){return v?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",u).style("stroke-miterlimit",1),c.exit().remove(),c.each(function(A,v){var D=Bn.select(this),E=g[v?"increasing":"decreasing"],R=s(void 0,E.line,ou,Wl);D.style("stroke-width",R+"px").call(Ra.fill,E.fillcolor),R&&Ra.stroke(D,E.line.color)})}function k(_){var g=_[0].trace,c=Bn.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(g.visible&&g.type==="ohlc"?[_,_]:[]);c.enter().append("path").classed("legendohlc",!0).attr("d",function(A,v){return v?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",u).style("stroke-miterlimit",1),c.exit().remove(),c.each(function(A,v){var D=Bn.select(this),E=g[v?"increasing":"decreasing"],R=s(void 0,E.line,ou,Wl);D.style("fill","none").call(ya.dashLine,E.line.dash,R),R&&Ra.stroke(D,E.line.color)})}function S(_){M(_,this,"pie")}function x(_){M(_,this,"funnelarea")}function M(_,g,c){var A=_[0],v=A.trace,D=c?v.visible&&v.type===c:C2.traceIs(v,c),E=Bn.select(g).select("g.legendpoints").selectAll("path.legend"+c).data(D?[_]:[]);if(E.enter().append("path").classed("legend"+c,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",u),E.exit().remove(),E.size()){var R=v.marker||{},N=s(sZ(R.line.width,A.pts),R.line,ou,Wl),F="pieLike",I=En.minExtend(v,{marker:{line:{width:N}}},F),L=En.minExtend(A,{trace:I},F);lZ(E,L,I,t)}}function d(_){var g=_[0].trace,c,A=[];if(g.visible)switch(g.type){case"histogram2d":case"heatmap":A=[["M-15,-2V4H15V-2Z"]],c=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":A=[["M-6,-6V6H6V-6Z"]],c=!0;break;case"densitymapbox":case"densitymap":A=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],c="radial";break;case"cone":A=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],c=!1;break;case"streamtube":A=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],c=!1;break;case"surface":A=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],c=!0;break;case"mesh3d":A=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],c=!1;break;case"volume":A=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],c=!0;break;case"isosurface":A=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],c=!1;break}var v=Bn.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(A);v.enter().append("path").classed("legend3dandfriends",!0).attr("transform",u).style("stroke-miterlimit",1),v.exit().remove(),v.each(function(D,E){var R=Bn.select(this),N=E2(g),F=N.colorscale,I=N.reversescale,L=function(X){if(X.size()){var $="legendfill-"+g.uid;ya.gradient(X,t,$,L2(I,c==="radial"),F,"fill")}},P;if(F){if(!c){var U=F.length;P=E===0?F[I?U-1:0][1]:E===1?F[I?0:U-1][1]:F[Math.floor((U-1)/2)][1]}}else{var O=g.vertexcolor||g.facecolor||g.color;P=En.isArrayOrTypedArray(O)?O[E]||O[0]:O}R.attr("d",D[0]),P?R.call(Ra.fill,P):R.call(L)})}};function L2(e,r){var t=r?"radial":"horizontal";return t+(e?"":"reversed")}function gT(e){var r=e[0].trace,t=r.contours,n=tv.hasLines(r),a=tv.hasMarkers(r),o=r.visible&&r.fill&&r.fill!=="none",i=!1,l=!1;if(t){var u=t.coloring;u==="lines"?i=!0:n=u==="none"||u==="heatmap"||t.showlines,t.type==="constraint"?o=t._operation!=="=":(u==="fill"||u==="heatmap")&&(l=!0)}return{showMarker:a,showLine:n,showFill:o,showGradientLine:i,showGradientFill:l,anyLine:n||i,anyFill:o||l}}function yT(e,r,t){return e&&En.isArrayOrTypedArray(e)?r:e>t?t:e}});var F2=de((ohe,CT)=>{"use strict";var la=it(),Zt=ir(),P2=on(),uu=Cr(),xT=Mf(),R2=ai(),Jt=mt(),av=Xr(),Xl=Wn(),bT=rT(),en=A2(),I2=qn(),kT=I2.LINE_SPACING,su=I2.FROM_TL,_T=I2.FROM_BR,wT=iT(),cZ=D2(),MT=jh(),lu=1,hZ=/^legend[0-9]*$/;CT.exports=function(r,t){if(t)TT(r,t);else{var n=r._fullLayout,a=n._legends,o=n._infolayer.selectAll('[class^="legend"]');o.each(function(){var s=la.select(this),f=s.attr("class"),h=f.split(" ")[0];h.match(hZ)&&a.indexOf(h)===-1&&s.remove()});for(var i=0;i1)}var m=n.hiddenlabels||[];if(!l&&(!n.showlegend||!u.length))return i.selectAll("."+a).remove(),n._topdefs.select("#"+o).remove(),P2.autoMargin(e,a);var w=Zt.ensureSingle(i,"g",a,function(g){l||g.attr("pointer-events","all")}),T=Zt.ensureSingleById(n._topdefs,"clipPath",o,function(g){g.append("rect")}),y=Zt.ensureSingle(w,"rect","bg",function(g){g.attr("shape-rendering","crispEdges")});y.call(av.stroke,t.bordercolor).call(av.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px");var k=Zt.ensureSingle(w,"g","scrollbox"),S=t.title;t._titleWidth=0,t._titleHeight=0;var x;S.text?(x=Zt.ensureSingle(k,"text",a+"titletext"),x.attr("text-anchor","start").call(Jt.font,S.font).text(S.text),iv(x,k,e,t,lu)):k.selectAll("."+a+"titletext").remove();var M=Zt.ensureSingle(w,"rect","scrollbar",function(g){g.attr(en.scrollBarEnterAttrs).call(av.fill,en.scrollBarColor)}),d=k.selectAll("g.groups").data(u);d.enter().append("g").attr("class","groups"),d.exit().remove();var _=d.selectAll("g.traces").data(Zt.identity);_.enter().append("g").attr("class","traces"),_.exit().remove(),_.style("opacity",function(g){var c=g[0].trace;return uu.traceIs(c,"pie-like")?m.indexOf(g[0].label)!==-1?.5:1:c.visible==="legendonly"?.5:1}).each(function(){la.select(this).call(dZ,e,t)}).call(cZ,e,t).each(function(){l||la.select(this).call(pZ,e,a)}),Zt.syncOrAsync([P2.previousPromises,function(){return mZ(e,d,_,t)},function(){var g=n._size,c=t.borderwidth,A=t.xref==="paper",v=t.yref==="paper";if(S.text&&vZ(x,t,c),!l){var D,E;A?D=g.l+g.w*t.x-su[ov(t)]*t._width:D=n.width*t.x-su[ov(t)]*t._width,v?E=g.t+g.h*(1-t.y)-su[lv(t)]*t._effHeight:E=n.height*(1-t.y)-su[lv(t)]*t._effHeight;var R=xZ(e,a,D,E);if(R)return;if(n.margin.autoexpand){var N=D,F=E;D=A?Zt.constrain(D,0,n.width-t._width):N,E=v?Zt.constrain(E,0,n.height-t._effHeight):F,D!==N&&Zt.log("Constrain "+a+".x to make legend fit inside graph"),E!==F&&Zt.log("Constrain "+a+".y to make legend fit inside graph")}Jt.setTranslate(w,D,E)}if(M.on(".drag",null),w.on("wheel",null),l||t._height<=t._maxHeight||e._context.staticPlot){var I=t._effHeight;l&&(I=t._height),y.attr({width:t._width-c,height:I-c,x:c/2,y:c/2}),Jt.setTranslate(k,0,0),T.select("rect").attr({width:t._width-2*c,height:I-2*c,x:c,y:c}),Jt.setClipUrl(k,o,e),Jt.setRect(M,0,0,0,0),delete t._scrollY}else{var L=Math.max(en.scrollBarMinHeight,t._effHeight*t._effHeight/t._height),P=t._effHeight-L-2*en.scrollBarMargin,O=t._height-t._effHeight,U=P/O,X=Math.min(t._scrollY||0,O);y.attr({width:t._width-2*c+en.scrollBarWidth+en.scrollBarMargin,height:t._effHeight-c,x:c/2,y:c/2}),T.select("rect").attr({width:t._width-2*c+en.scrollBarWidth+en.scrollBarMargin,height:t._effHeight-2*c,x:c,y:c+X}),Jt.setClipUrl(k,o,e),oe(X,L,U),w.on("wheel",function(){X=Zt.constrain(t._scrollY+la.event.deltaY/O*P,0,O),oe(X,L,U),X!==0&&X!==O&&la.event.preventDefault()});var $,j,Y,q=function(te,ue,ve){var ke=(ve-ue)/U+te;return Zt.constrain(ke,0,O)},K=function(te,ue,ve){var ke=(ue-ve)/U+te;return Zt.constrain(ke,0,O)},ne=la.behavior.drag().on("dragstart",function(){var te=la.event.sourceEvent;te.type==="touchstart"?$=te.changedTouches[0].clientY:$=te.clientY,Y=X}).on("drag",function(){var te=la.event.sourceEvent;te.buttons===2||te.ctrlKey||(te.type==="touchmove"?j=te.changedTouches[0].clientY:j=te.clientY,X=q(Y,$,j),oe(X,L,U))});M.call(ne);var Q=la.behavior.drag().on("dragstart",function(){var te=la.event.sourceEvent;te.type==="touchstart"&&($=te.changedTouches[0].clientY,Y=X)}).on("drag",function(){var te=la.event.sourceEvent;te.type==="touchmove"&&(j=te.changedTouches[0].clientY,X=K(Y,$,j),oe(X,L,U))});k.call(Q)}function oe(te,ue,ve){t._scrollY=e._fullLayout[a]._scrollY=te,Jt.setTranslate(k,0,-te),Jt.setRect(M,t._width,en.scrollBarMargin+te*ve,en.scrollBarWidth,ue),T.select("rect").attr("y",c+te)}if(e._context.edits.legendPosition){var re,H,ee,V;w.classed("cursor-move",!0),R2.init({element:w.node(),gd:e,prepFn:function(te){if(te.target!==M.node()){var ue=Jt.getTranslate(w);ee=ue.x,V=ue.y}},moveFn:function(te,ue){if(ee!==void 0&&V!==void 0){var ve=ee+te,ke=V+ue;Jt.setTranslate(w,ve,ke),re=R2.align(ve,t._width,g.l,g.l+g.w,t.xanchor),H=R2.align(ke+t._height,-t._height,g.t+g.h,g.t,t.yanchor)}},doneFn:function(){if(re!==void 0&&H!==void 0){var te={};te[a+".x"]=re,te[a+".y"]=H,uu.call("_guiRelayout",e,te)}},clickFn:function(te,ue){var ve=i.selectAll("g.traces").filter(function(){var ke=this.getBoundingClientRect();return ue.clientX>=ke.left&&ue.clientX<=ke.right&&ue.clientY>=ke.top&&ue.clientY<=ke.bottom});ve.size()>0&&ST(e,w,ve,te,ue)}})}}],e)}}function nv(e,r,t){var n=e[0],a=n.width,o=r.entrywidthmode,i=n.trace.legendwidth||r.entrywidth;return o==="fraction"?r._maxWidth*i:t+(i||a)}function ST(e,r,t,n,a){var o=t.data()[0][0].trace,i={event:a,node:t.node(),curveNumber:o.index,expandedIndex:o.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};o._group&&(i.group=o._group),uu.traceIs(o,"pie-like")&&(i.label=t.datum()[0].label);var l=xT.triggerHandler(e,"plotly_legendclick",i);if(n===1){if(l===!1)return;r._clickTimeout=setTimeout(function(){e._fullLayout&&bT(t,e,n)},e._context.doubleClickDelay)}else if(n===2){r._clickTimeout&&clearTimeout(r._clickTimeout),e._legendMouseDownTime=0;var u=xT.triggerHandler(e,"plotly_legenddoubleclick",i);u!==!1&&l!==!1&&bT(t,e,n)}}function dZ(e,r,t){var n=sv(t),a=e.data()[0][0],o=a.trace,i=uu.traceIs(o,"pie-like"),l=!t._inHover&&r._context.edits.legendText&&!i,u=t._maxNameLength,s,f;a.groupTitle?(s=a.groupTitle.text,f=a.groupTitle.font):(f=t.font,t.entries?s=a.text:(s=i?a.label:o.name,o._meta&&(s=Zt.templateString(s,o._meta))));var h=Zt.ensureSingle(e,"text",n+"text");h.attr("text-anchor","start").call(Jt.font,f).text(l?AT(s,u):s);var p=t.indentation+t.itemwidth+en.itemGap*2;Xl.positionText(h,p,0),l?h.call(Xl.makeEditable,{gd:r,text:s}).call(iv,e,r,t).on("edit",function(b){this.text(AT(b,u)).call(iv,e,r,t);var m=a.trace._fullInput||{},w={};return w.name=b,m._isShape?uu.call("_guiRelayout",r,"shapes["+o.index+"].name",w.name):uu.call("_guiRestyle",r,w,o.index)}):iv(h,e,r,t)}function AT(e,r){var t=Math.max(4,r);if(e&&e.trim().length>=t/2)return e;e=e||"";for(var n=t-e.length;n>0;n--)e+=" ";return e}function pZ(e,r,t){var n=r._context.doubleClickDelay,a,o=1,i=Zt.ensureSingle(e,"rect",t+"toggle",function(l){r._context.staticPlot||l.style("cursor","pointer").attr("pointer-events","all"),l.call(av.fill,"rgba(0,0,0,0)")});r._context.staticPlot||(i.on("mousedown",function(){a=new Date().getTime(),a-r._legendMouseDownTimen&&(o=Math.max(o-1,1)),ST(r,l,e,o,la.event)}}))}function iv(e,r,t,n,a){n._inHover&&e.attr("data-notex",!0),Xl.convertToTspans(e,t,function(){gZ(r,t,n,a)})}function gZ(e,r,t,n){var a=e.data()[0][0],o=a&&a.trace.showlegend;if(Array.isArray(o)&&(o=o[a.i]!==!1),!t._inHover&&a&&!o){e.remove();return}var i=e.select("g[class*=math-group]"),l=i.node(),u=sv(t);t||(t=r._fullLayout[u]);var s=t.borderwidth,f;n===lu?f=t.title.font:a.groupTitle?f=a.groupTitle.font:f=t.font;var h=f.size*kT,p,b;if(l){var m=Jt.bBox(l);p=m.height,b=m.width,n===lu?Jt.setTranslate(i,s,s+p*.75):Jt.setTranslate(i,0,p*.25)}else{var w="."+u+(n===lu?"title":"")+"text",T=e.select(w),y=Xl.lineCount(T),k=T.node();if(p=h*y,b=k?Jt.bBox(k).width:0,n===lu)t.title.side==="left"&&(b+=en.itemGap*2),Xl.positionText(T,s+en.titlePad,s+h);else{var S=en.itemGap*2+t.indentation+t.itemwidth;a.groupTitle&&(S=en.itemGap,b-=t.indentation+t.itemwidth),Xl.positionText(T,S,-h*((y-1)/2-.3))}}n===lu?(t._titleWidth=b,t._titleHeight=p):(a.lineHeight=h,a.height=Math.max(p,16)+3,a.width=b)}function yZ(e){var r=0,t=0,n=e.title.side;return n&&(n.indexOf("left")!==-1&&(r=e._titleWidth),n.indexOf("top")!==-1&&(t=e._titleHeight)),[r,t]}function mZ(e,r,t,n){var a=e._fullLayout,o=sv(n);n||(n=a[o]);var i=a._size,l=MT.isVertical(n),u=MT.isGrouped(n),s=n.entrywidthmode==="fraction",f=n.borderwidth,h=2*f,p=en.itemGap,b=n.indentation+n.itemwidth+p*2,m=2*(f+p),w=lv(n),T=n.y<0||n.y===0&&w==="top",y=n.y>1||n.y===1&&w==="bottom",k=n.tracegroupgap,S={};let{orientation:x,yref:M}=n,{maxheight:d}=n,_=T||y||x!=="v"||M!=="paper";d||(d=_?.5:1);let g=_?a.height:i.h;n._maxHeight=Math.max(d>1?d:d*g,30);var c=0;n._width=0,n._height=0;var A=yZ(n);if(l)t.each(function(oe){var re=oe[0].height;Jt.setTranslate(this,f+A[0],f+A[1]+n._height+re/2+p),n._height+=re,n._width=Math.max(n._width,oe[0].width)}),c=b+n._width,n._width+=p+b+h,n._height+=m,u&&(r.each(function(oe,re){Jt.setTranslate(this,0,re*n.tracegroupgap)}),n._height+=(n._lgroupsLength-1)*n.tracegroupgap);else{var v=ov(n),D=n.x<0||n.x===0&&v==="right",E=n.x>1||n.x===1&&v==="left",R=y||T,N=a.width/2;n._maxWidth=Math.max(D?R&&v==="left"?i.l+i.w:N:E?R&&v==="right"?i.r+i.w:N:i.w,2*b);var F=0,I=0;t.each(function(oe){var re=nv(oe,n,b);F=Math.max(F,re),I+=re}),c=null;var L=0;if(u){var P=0,O=0,U=0;r.each(function(){var oe=0,re=0;la.select(this).selectAll("g.traces").each(function(ee){var V=nv(ee,n,b),te=ee[0].height;Jt.setTranslate(this,A[0],A[1]+f+p+te/2+re),re+=te,oe=Math.max(oe,V),S[ee[0].trace.legendgroup]=oe});var H=oe+p;O>0&&H+f+O>n._maxWidth?(L=Math.max(L,O),O=0,U+=P+k,P=re):P=Math.max(P,re),Jt.setTranslate(this,O,U),O+=H}),n._width=Math.max(L,O)+f,n._height=U+P+m}else{var X=t.size(),$=I+h+(X-1)*p=n._maxWidth&&(L=Math.max(L,K),Y=0,q+=j,n._height+=j,j=0),Jt.setTranslate(this,A[0]+f+Y,A[1]+f+q+re/2+p),K=Y+H+p,Y+=ee,j=Math.max(j,re)}),$?(n._width=Y+h,n._height=j+m):(n._width=Math.max(L,K)+h,n._height+=j+m)}}n._width=Math.ceil(Math.max(n._width+A[0],n._titleWidth+2*(f+en.titlePad))),n._height=Math.ceil(Math.max(n._height+A[1],n._titleHeight+2*(f+en.itemGap))),n._effHeight=Math.min(n._height,n._maxHeight);var ne=e._context.edits,Q=ne.legendText||ne.legendPosition;t.each(function(oe){var re=la.select(this).select("."+o+"toggle"),H=oe[0].height,ee=oe[0].trace.legendgroup,V=nv(oe,n,b);u&&ee!==""&&(V=S[ee]);var te=Q?b:c||V;!l&&!s&&(te+=p/2),Jt.setRect(re,0,-H/2,te,H)})}function xZ(e,r,t,n){var a=e._fullLayout,o=a[r],i=ov(o),l=lv(o),u=o.xref==="paper",s=o.yref==="paper";e._fullLayout._reservedMargin[r]={};var f=o.y<.5?"b":"t",h=o.x<.5?"l":"r",p={r:a.width-t,l:t+o._width,b:a.height-n,t:n+o._effHeight};if(u&&s)return P2.autoMargin(e,r,{x:o.x,y:o.y,l:o._width*su[i],r:o._width*_T[i],b:o._effHeight*_T[l],t:o._effHeight*su[l]});u?e._fullLayout._reservedMargin[r][f]=p[f]:s||o.orientation==="v"?e._fullLayout._reservedMargin[r][h]=p[h]:e._fullLayout._reservedMargin[r][f]=p[f]}function ov(e){return Zt.isRightAnchor(e)?"right":Zt.isCenterAnchor(e)?"center":"left"}function lv(e){return Zt.isBottomAnchor(e)?"bottom":Zt.isMiddleAnchor(e)?"middle":"top"}function sv(e){return e._id||"legend"}});var O2=de(q2=>{"use strict";var Zl=it(),ao=nt(),ET=ka(),It=ir(),bZ=It.pushUnique,N2=It.strTranslate,_Z=It.strRotate,wZ=Mf(),Pa=Wn(),MZ=QM(),Fi=mt(),sn=Xr(),uv=ai(),Ni=Lt(),TZ=_n().zindexSeparator,cu=Cr(),ii=to(),Jl=cf(),AZ=w2(),kZ=F2(),zT=Jl.YANGLE,z2=Math.PI*zT/180,SZ=1/Math.sin(z2),CZ=Math.cos(z2),EZ=Math.sin(z2),St=Jl.HOVERARROWSIZE,Qr=Jl.HOVERTEXTPAD,LT={box:!0,ohlc:!0,violin:!0,candlestick:!0},LZ={scatter:!0,scattergl:!0,splom:!0};function DT(e,r){return e.distance-r.distance}q2.hover=function(r,t,n,a){r=It.getGraphDiv(r);var o=t.target;It.throttle(r._fullLayout._uid+Jl.HOVERID,Jl.HOVERMINTIME,function(){DZ(r,t,n,a,o)})};q2.loneHover=function(r,t){var n=!0;Array.isArray(r)||(n=!1,r=[r]);var a=t.gd,o=HT(a),i=VT(a),l=r.map(function(T){var y=T._x0||T.x0||T.x||0,k=T._x1||T.x1||T.x||0,S=T._y0||T.y0||T.y||0,x=T._y1||T.y1||T.y||0,M=T.eventData;if(M){var d=Math.min(y,k),_=Math.max(y,k),g=Math.min(S,x),c=Math.max(S,x),A=T.trace;if(cu.traceIs(A,"gl3d")){var v=a._fullLayout[A.scene]._scene.container,D=v.offsetLeft,E=v.offsetTop;d+=D,_+=D,g+=E,c+=E}M.bbox={x0:d+i,x1:_+i,y0:g+o,y1:c+o},t.inOut_bbox&&t.inOut_bbox.push(M.bbox)}else M=!1;return{color:T.color||sn.defaultLine,x0:T.x0||T.x||0,x1:T.x1||T.x||0,y0:T.y0||T.y||0,y1:T.y1||T.y||0,xLabel:T.xLabel,yLabel:T.yLabel,zLabel:T.zLabel,text:T.text,name:T.name,idealAlign:T.idealAlign,borderColor:T.borderColor,fontFamily:T.fontFamily,fontSize:T.fontSize,fontColor:T.fontColor,fontWeight:T.fontWeight,fontStyle:T.fontStyle,fontVariant:T.fontVariant,nameLength:T.nameLength,textAlign:T.textAlign,trace:T.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:T.hovertemplate||!1,hovertemplateLabels:T.hovertemplateLabels||!1,eventData:M}}),u=!1,s=OT(l,{gd:a,hovermode:"closest",rotateLabels:u,bgColor:t.bgColor||sn.background,container:Zl.select(t.container),outerContainer:t.outerContainer||t.container}),f=s.hoverLabels,h=5,p=0,b=0;f.sort(function(T,y){return T.y0-y.y0}).each(function(T,y){var k=T.y0-T.by/2;k-h_[0]._length||V<0||V>g[0]._length)return uv.unhoverRaw(e,r)}if(r.pointerX=ee+_[0]._offset,r.pointerY=V+g[0]._offset,"xval"in r?F=ii.flat(o,r.xval):F=ii.p2c(_,ee),"yval"in r?I=ii.flat(o,r.yval):I=ii.p2c(g,V),!ao(F[0])||!ao(I[0]))return It.warn("Fx.hover failed",r,e),uv.unhoverRaw(e,r)}var ve=1/0;function ke(sr,Pr){for(P=0;Pne&&(R.splice(0,ne),ve=R[0].distance),h&&E!==0&&R.length===0){K.distance=E,K.index=!1;var Rr=U._module.hoverPoints(K,Y,q,"closest",{hoverLayer:l._hoverlayer});if(Rr&&(Rr=Rr.filter(function(bt){return bt.spikeDistance<=E})),Rr&&Rr.length){var jr,hn=Rr.filter(function(bt){return bt.xa.showspikes&&bt.xa.spikesnap!=="hovered data"});if(hn.length){var Et=hn[0];ao(Et.x0)&&ao(Et.y0)&&(jr=he(Et),(!Q.vLinePoint||Q.vLinePoint.spikeDistance>jr.spikeDistance)&&(Q.vLinePoint=jr))}var Tn=Rr.filter(function(bt){return bt.ya.showspikes&&bt.ya.spikesnap!=="hovered data"});if(Tn.length){var Ot=Tn[0];ao(Ot.x0)&&ao(Ot.y0)&&(jr=he(Ot),(!Q.hLinePoint||Q.hLinePoint.spikeDistance>jr.spikeDistance)&&(Q.hLinePoint=jr))}}}}}ke();function Se(sr,Pr,$r){for(var Fr=null,Gr=1/0,pt,Rr=0;Rrsr.trace.index===pe.trace.index):R=[pe];var ce=R.length,xe=NT("x",pe,l),Le=NT("y",pe,l);ke(xe,Le);var qe=[],ze={},$e=0,Ve=function(sr){var Pr=LT[sr.trace.type]?qT(sr):sr.trace.index;if(!ze[Pr])$e++,ze[Pr]=$e,qe.push(sr);else{var $r=ze[Pr]-1,Fr=qe[$r];$r>0&&Math.abs(sr.distance)ce-1;Be--)Ve(R[Be]);R=qe,Ee()}var Ye=e._hoverdata,Me=[],Re=HT(e),Qe=VT(e);for(let sr of R){var Ke=ii.makeEventData(sr,sr.trace,sr.cd);if(sr.hovertemplate!==!1){var ar=!1;sr.cd[sr.index]&&sr.cd[sr.index].ht&&(ar=sr.cd[sr.index].ht),sr.hovertemplate=ar||sr.trace.hovertemplate||!1}if(sr.xa&&sr.ya){var se=sr.x0+sr.xa._offset,J=sr.x1+sr.xa._offset,ae=sr.y0+sr.ya._offset,De=sr.y1+sr.ya._offset,He=Math.min(se,J),er=Math.max(se,J),nr=Math.min(ae,De),fr=Math.max(ae,De);Ke.bbox={x0:He+Qe,x1:er+Qe,y0:nr+Re,y1:fr+Re}}sr.eventData=[Ke],Me.push(Ke)}e._hoverdata=Me;var br=p==="y"&&(N.length>1||R.length>1)||p==="closest"&&oe&&R.length>1,Sr=sn.combine(l.plot_bgcolor||sn.background,l.paper_bgcolor),Mr=OT(R,{gd:e,hovermode:p,rotateLabels:br,bgColor:Sr,container:l._hoverlayer,outerContainer:l._paper.node(),commonLabelOpts:l.hoverlabel,hoverdistance:l.hoverdistance}),Ar=Mr.hoverLabels;if(ii.isUnifiedHover(p)||(PZ(Ar,br,l,Mr.commonLabelBoundingBox),UT(Ar,br,l._invScaleX,l._invScaleY)),a&&a.tagName){var ft=cu.getComponentMethod("annotations","hasClickToShow")(e,Me);MZ(Zl.select(a),ft?"pointer":"")}!a||n||!NZ(e,r,Ye)||(Ye&&e.emit("plotly_unhover",{event:r,points:Ye}),e.emit("plotly_hover",{event:r,points:e._hoverdata,xaxes:_,yaxes:g,xvals:F,yvals:I}))}function qT(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var RZ=/([\s\S]*)<\/extra>/;function OT(e,r){var t=r.gd,n=t._fullLayout,a=r.hovermode,o=r.rotateLabels,i=r.bgColor,l=r.container,u=r.outerContainer,s=r.commonLabelOpts||{};if(e.length===0)return[[]];var f=r.fontFamily||Jl.HOVERFONT,h=r.fontSize||Jl.HOVERFONTSIZE,p=r.fontWeight||n.font.weight,b=r.fontStyle||n.font.style,m=r.fontVariant||n.font.variant,w=r.fontTextcase||n.font.textcase,T=r.fontLineposition||n.font.lineposition,y=r.fontShadow||n.font.shadow,k=e[0],S=k.xa,x=k.ya,M=a.charAt(0),d=M+"Label",_=k[d];if(_===void 0&&S.type==="multicategory")for(var g=0;gn.width-Re&&(Qe=n.width-Re),pe.attr("d","M"+(Be-Qe)+",0L"+(Be-Qe+St)+","+Me+St+"H"+Re+"v"+Me+(Qr*2+Ve.height)+"H"+-Re+"V"+Me+St+"H"+(Be-Qe-St)+"Z"),Be=Qe,P.minX=Be-Re,P.maxX=Be+Re,S.side==="top"?(P.minY=Ye-(Qr*2+Ve.height),P.maxY=Ye-Qr):(P.minY=Ye+Qr,P.maxY=Ye+(Qr*2+Ve.height))}else{var Ke,ar,se;x.side==="right"?(Ke="start",ar=1,se="",Be=S._offset+S._length):(Ke="end",ar=-1,se="-",Be=S._offset),Ye=x._offset+(k.y0+k.y1)/2,ce.attr("text-anchor",Ke),pe.attr("d","M0,0L"+se+St+","+St+"V"+(Qr+Ve.height/2)+"h"+se+(Qr*2+Ve.width)+"V-"+(Qr+Ve.height/2)+"H"+se+St+"V-"+St+"Z"),P.minY=Ye-(Qr+Ve.height/2),P.maxY=Ye+(Qr+Ve.height/2),x.side==="right"?(P.minX=Be+St,P.maxX=Be+St+(Qr*2+Ve.width)):(P.minX=Be-St-(Qr*2+Ve.width),P.maxX=Be-St);var J=Ve.height/2,ae=A-Ve.top-J,De="clip"+n._uid+"commonlabel"+x._id,He;if(Bepe.hoverinfo!=="none");if(ye.length===0)return[];var O=n.hoverlabel,U=O.font,X=ye[0],$=((a==="x unified"?X.xa:X.ya).unifiedhovertitle||{}).text,j=$?It.hovertemplateString({data:a==="x unified"?[{xa:X.xa,x:X.xVal}]:[{ya:X.ya,y:X.yVal}],fallback:X.trace.hovertemplatefallback,locale:n._d3locale,template:$}):_,Y={showlegend:!0,legend:{title:{text:j,font:U},font:U,bgcolor:O.bgcolor,bordercolor:O.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:n.legend?n.legend.traceorder:void 0,orientation:"v"}},q={font:U};AZ(Y,q,t._fullData);var K=q.legend;K.entries=[];for(var ne=0;ne=0?we=Ee:Ne+ue=0?we=Ne:Ue+ue=0?Te=Ce:Pe+ve=0?Te=Pe:ge+ve=0,(ye.idealAlign==="top"||!fr)&&br?(se-=ae/2,ye.anchor="end"):fr?(se+=ae/2,ye.anchor="start"):ye.anchor="middle",ye.crossPos=se;else{if(ye.pos=se,fr=ar+J/2+nr<=v,br=ar-J/2-nr>=0,(ye.idealAlign==="left"||!fr)&&br)ar-=J/2,ye.anchor="end";else if(fr)ar+=J/2,ye.anchor="start";else{ye.anchor="middle";var Sr=nr/2,Mr=ar+Sr-v,Ar=ar-Sr;Mr>0&&(ar-=Mr),Ar<0&&(ar+=-Ar)}ye.crossPos=ar}Ye.attr("text-anchor",ye.anchor),Re&&Me.attr("text-anchor",ye.anchor),pe.attr("transform",N2(ar,se)+(o?_Z(zT):""))}),{hoverLabels:me,commonLabelBoundingBox:P}}function RT(e,r,t,n,a,o){var h,p;var i="",l="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=It.templateString(e.name,e.trace._meta)),i=FT(e.name,e.nameLength));var u=t.charAt(0),s=u==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(l+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(l+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(l+=(l?"z: ":"")+e.zLabel)):r&&e[u+"Label"]===a?l=e[s+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(l=e.yLabel):e.yLabel===void 0?l=e.xLabel:l="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(l+=(l?"
":"")+e.text),e.extraText!==void 0&&(l+=(l?"
":"")+e.extraText),o&&l===""&&!e.hovertemplate&&(i===""&&o.remove(),l=i),(p=(h=e.trace)==null?void 0:h.hoverlabel)!=null&&p.split&&(e.hovertemplate="");let{hovertemplate:f=!1}=e;if(f){let b=e.hovertemplateLabels||e;e[u+"Label"]!==a&&(b[u+"other"]=b[u+"Val"],b[u+"otherLabel"]=b[u+"Label"]),l=It.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:b,locale:n._d3locale,template:f}),l=l.replace(RZ,(m,w)=>(i=FT(w,e.nameLength),""))}return[l,i]}function PZ(e,r,t,n){var a=r?"xa":"ya",o=r?"ya":"xa",i=0,l=1,u=e.size(),s=new Array(u),f=0,h=n.minX,p=n.maxX,b=n.minY,m=n.maxY,w=function(F){return F*t._invScaleX},T=function(F){return F*t._invScaleY};e.each(function(F){var I=F[a],L=F[o],P=I._id.charAt(0)==="x",O=I.range;f===0&&O&&O[0]>O[1]!==P&&(l=-1);var U=0,X=P?t.width:t.height;if(t.hovermode==="x"||t.hovermode==="y"){var $=BT(F,r),j=F.anchor,Y=j==="end"?-1:1,q,K;if(j==="middle")q=F.crossPos+(P?T($.y-F.by/2):w(F.bx/2+F.tx2width/2)),K=q+(P?T(F.by):w(F.bx));else if(P)q=F.crossPos+T(St+$.y)-T(F.by/2-St),K=q+T(F.by);else{var ne=w(Y*St+$.x),Q=ne+w(Y*F.bx);q=F.crossPos+Math.min(ne,Q),K=F.crossPos+Math.max(ne,Q)}P?b!==void 0&&m!==void 0&&Math.min(K,m)-Math.max(q,b)>1&&(L.side==="left"?(U=L._mainLinePosition,X=t.width):X=L._mainLinePosition):h!==void 0&&p!==void 0&&Math.min(K,p)-Math.max(q,h)>1&&(L.side==="top"?(U=L._mainLinePosition,X=t.height):X=L._mainLinePosition)}s[f++]=[{datum:F,traceIndex:F.trace.index,dp:0,pos:F.pos,posref:F.posref,size:F.by*(P?SZ:1)/2,pmin:U,pmax:X}]}),s.sort(function(F,I){return F[0].posref-I[0].posref||l*(I[0].traceIndex-F[0].traceIndex)});var y,k,S,x,M,d,_;function g(F){var I=F[0],L=F[F.length-1];if(k=I.pmin-I.pos-I.dp+I.size,S=L.pos+L.dp+L.size-I.pmax,k>.01){for(M=F.length-1;M>=0;M--)F[M].dp+=k;y=!1}if(!(S<.01)){if(k<-.01){for(M=F.length-1;M>=0;M--)F[M].dp-=S;y=!1}if(y){var P=0;for(x=0;xI.pmax&&P++;for(x=F.length-1;x>=0&&!(P<=0);x--)d=F[x],d.pos>I.pmax-1&&(d.del=!0,P--);for(x=0;x=0;M--)F[M].dp-=S;for(x=F.length-1;x>=0&&!(P<=0);x--)d=F[x],d.pos+d.dp+d.size>I.pmax&&(d.del=!0,P--)}}}for(;!y&&i<=u;){for(i++,y=!0,x=0;x.01){for(M=A.length-1;M>=0;M--)A[M].dp+=k;for(c.push.apply(c,A),s.splice(x+1,1),_=0,M=c.length-1;M>=0;M--)_+=c[M].dp;for(S=_/c.length,M=c.length-1;M>=0;M--)c[M].dp-=S;y=!1}else x++}s.forEach(g)}for(x=s.length-1;x>=0;x--){var E=s[x];for(M=E.length-1;M>=0;M--){var R=E[M],N=R.datum;N.offset=R.dp,N.del=R.del}}}function BT(e,r){var t=0,n=e.offset;return r&&(n*=-EZ,t=e.offset*CZ),{x:t,y:n}}function IZ(e){var r={start:1,end:-1,middle:0}[e.anchor],t=r*(St+Qr),n=t+r*(e.txwidth+Qr),a=e.anchor==="middle";return a&&(t-=e.tx2width/2,n+=e.txwidth/2+Qr),{alignShift:r,textShiftX:t,text2ShiftX:n}}function UT(e,r,t,n){var a=function(i){return i*t},o=function(i){return i*n};e.each(function(i){var l=Zl.select(this);if(i.del)return l.remove();var u=l.select("text.nums"),s=i.anchor,f=s==="end"?-1:1,h=IZ(i),p=BT(i,r),b=p.x,m=p.y,w=s==="middle",T="hoverlabel"in i.trace?i.trace.hoverlabel.showarrow:!0,y;w?y="M-"+a(i.bx/2+i.tx2width/2)+","+o(m-i.by/2)+"h"+a(i.bx)+"v"+o(i.by)+"h-"+a(i.bx)+"Z":T?y="M0,0L"+a(f*St+b)+","+o(St+m)+"v"+o(i.by/2-St)+"h"+a(f*i.bx)+"v-"+o(i.by)+"H"+a(f*St+b)+"V"+o(m-St)+"Z":y="M"+a(f*St+b)+","+o(m-i.by/2)+"h"+a(f*i.bx)+"v"+o(i.by)+"h"+a(-f*i.bx)+"Z",l.select("path").attr("d",y);var k=b+h.textShiftX,S=m+i.ty0-i.by/2+Qr,x=i.textAlign||"auto";x!=="auto"&&(x==="left"&&s!=="start"?(u.attr("text-anchor","start"),k=w?-i.bx/2-i.tx2width/2+Qr:-i.bx-Qr):x==="right"&&s!=="end"&&(u.attr("text-anchor","end"),k=w?i.bx/2-i.tx2width/2-Qr:i.bx+Qr)),u.call(Pa.positionText,a(k),o(S)),i.tx2width&&(l.select("text.name").call(Pa.positionText,a(h.text2ShiftX+h.alignShift*Qr+b),o(m+i.ty0-i.by/2+Qr)),l.select("rect").call(Fi.setRect,a(h.text2ShiftX+(h.alignShift-1)*i.tx2width/2+b),o(m-i.by/2-1),a(i.tx2width),o(i.by+2)))})}function FZ(e,r){var t=e.index,n=e.trace||{},a=e.cd[0],o=e.cd[t]||{};function i(p){return p||ao(p)&&p===0}var l=Array.isArray(t)?function(p,b){var m=It.castOption(a,t,p);return i(m)?m:It.extractOption({},n,"",b)}:function(p,b){return It.extractOption(o,n,p,b)};function u(p,b,m){var w=l(b,m);i(w)&&(e[p]=w)}if(u("hoverinfo","hi","hoverinfo"),u("bgcolor","hbg","hoverlabel.bgcolor"),u("borderColor","hbc","hoverlabel.bordercolor"),u("fontFamily","htf","hoverlabel.font.family"),u("fontSize","hts","hoverlabel.font.size"),u("fontColor","htc","hoverlabel.font.color"),u("fontWeight","htw","hoverlabel.font.weight"),u("fontStyle","hty","hoverlabel.font.style"),u("fontVariant","htv","hoverlabel.font.variant"),u("nameLength","hnl","hoverlabel.namelength"),u("textAlign","hta","hoverlabel.align"),e.posref=r==="y"||r==="closest"&&n.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=It.constrain(e.x0,0,e.xa._length),e.x1=It.constrain(e.x1,0,e.xa._length),e.y0=It.constrain(e.y0,0,e.ya._length),e.y1=It.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:Ni.hoverLabelText(e.xa,e.xLabelVal,n.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:Ni.hoverLabelText(e.ya,e.yLabelVal,n.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var s=Ni.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+s+" / -"+Ni.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+s,r==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var f=Ni.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+f+" / -"+Ni.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+f,r==="y"&&(e.distance+=1)}var h=e.hoverinfo||e.trace.hoverinfo;return h&&h!=="all"&&(h=Array.isArray(h)?h:h.split("+"),h.indexOf("x")===-1&&(e.xLabel=void 0),h.indexOf("y")===-1&&(e.yLabel=void 0),h.indexOf("z")===-1&&(e.zLabel=void 0),h.indexOf("text")===-1&&(e.text=void 0),h.indexOf("name")===-1&&(e.name=void 0)),e}function PT(e,r,t){var n=t.container,a=t.fullLayout,o=a._size,i=t.event,l=!!r.hLinePoint,u=!!r.vLinePoint,s,f;if(n.selectAll(".spikeline").remove(),!!(u||l)){var h=sn.combine(a.plot_bgcolor,a.paper_bgcolor);if(l){var p=r.hLinePoint,b,m;s=p&&p.xa,f=p&&p.ya;var w=f.spikesnap;w==="cursor"?(b=i.pointerX,m=i.pointerY):(b=s._offset+p.x,m=f._offset+p.y);var T=ET.readability(p.color,h)<1.5?sn.contrast(h):p.color,y=f.spikemode,k=f.spikethickness,S=f.spikecolor||T,x=Ni.getPxPosition(e,f),M,d;if(y.indexOf("toaxis")!==-1||y.indexOf("across")!==-1){if(y.indexOf("toaxis")!==-1&&(M=x,d=b),y.indexOf("across")!==-1){var _=f._counterDomainMin,g=f._counterDomainMax;f.anchor==="free"&&(_=Math.min(_,f.position),g=Math.max(g,f.position)),M=o.l+_*o.w,d=o.l+g*o.w}n.insert("line",":first-child").attr({x1:M,x2:d,y1:m,y2:m,"stroke-width":k,stroke:S,"stroke-dasharray":Fi.dashStyle(f.spikedash,k)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:M,x2:d,y1:m,y2:m,"stroke-width":k+2,stroke:h}).classed("spikeline",!0).classed("crisp",!0)}y.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:x+(f.side!=="right"?k:-k),cy:m,r:k,fill:S}).classed("spikeline",!0)}if(u){var c=r.vLinePoint,A,v;s=c&&c.xa,f=c&&c.ya;var D=s.spikesnap;D==="cursor"?(A=i.pointerX,v=i.pointerY):(A=s._offset+c.x,v=f._offset+c.y);var E=ET.readability(c.color,h)<1.5?sn.contrast(h):c.color,R=s.spikemode,N=s.spikethickness,F=s.spikecolor||E,I=Ni.getPxPosition(e,s),L,P;if(R.indexOf("toaxis")!==-1||R.indexOf("across")!==-1){if(R.indexOf("toaxis")!==-1&&(L=I,P=v),R.indexOf("across")!==-1){var O=s._counterDomainMin,U=s._counterDomainMax;s.anchor==="free"&&(O=Math.min(O,s.position),U=Math.max(U,s.position)),L=o.t+(1-U)*o.h,P=o.t+(1-O)*o.h}n.insert("line",":first-child").attr({x1:A,x2:A,y1:L,y2:P,"stroke-width":N,stroke:F,"stroke-dasharray":Fi.dashStyle(s.spikedash,N)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:A,x2:A,y1:L,y2:P,"stroke-width":N+2,stroke:h}).classed("spikeline",!0).classed("crisp",!0)}R.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:A,cy:I-(s.side!=="top"?N:-N),r:N,fill:F}).classed("spikeline",!0)}}}function NZ(e,r,t){if(!t||t.length!==e._hoverdata.length)return!0;for(var n=t.length-1;n>=0;n--){var a=t[n],o=e._hoverdata[n];if(a.curveNumber!==o.curveNumber||String(a.pointNumber)!==String(o.pointNumber)||String(a.pointNumbers)!==String(o.pointNumbers)||a.binNumber!==o.binNumber)return!0}return!1}function IT(e,r){return!r||r.vLinePoint!==e._spikepoints.vLinePoint||r.hLinePoint!==e._spikepoints.hLinePoint}function FT(e,r){return Pa.plainText(e||"",{len:r,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function zZ(e,r){for(var t=r.charAt(0),n=[],a=[],o=[],i=0;ie.offsetTop+e.clientTop,VT=e=>e.offsetLeft+e.clientLeft;function fu(e,r){var t=e._fullLayout,n=r.getBoundingClientRect(),a=n.left,o=n.top,i=a+n.width,l=o+n.height,u=It.apply3DTransform(t._invTransform)(a,o),s=It.apply3DTransform(t._invTransform)(i,l),f=u[0],h=u[1],p=s[0],b=s[1];return{x:f,y:h,width:p-f,height:b-h,top:Math.min(h,b),left:Math.min(f,p),right:Math.max(f,p),bottom:Math.max(h,b)}}});var fv=de((she,GT)=>{"use strict";var qZ=ir(),OZ=Xr(),BZ=to().isUnifiedHover;GT.exports=function(r,t,n,a){a=a||{};var o=t.legend;function i(l){a.font[l]||(a.font[l]=o?t.legend.font[l]:t.font[l])}t&&BZ(t.hovermode)&&(a.font||(a.font={}),i("size"),i("family"),i("color"),i("weight"),i("style"),i("variant"),o?(a.bgcolor||(a.bgcolor=OZ.combine(t.legend.bgcolor,t.paper_bgcolor)),a.bordercolor||(a.bordercolor=t.legend.bordercolor)):a.bgcolor||(a.bgcolor=t.paper_bgcolor)),n("hoverlabel.bgcolor",a.bgcolor),n("hoverlabel.bordercolor",a.bordercolor),n("hoverlabel.namelength",a.namelength),n("hoverlabel.showarrow",a.showarrow),qZ.coerceFont(n,"hoverlabel.font",a.font),n("hoverlabel.align",a.align)}});var WT=de((uhe,YT)=>{"use strict";var UZ=ir(),HZ=fv(),VZ=wl();YT.exports=function(r,t){function n(a,o){return UZ.coerce(r,t,VZ,a,o)}HZ(r,t,n)}});var JT=de((fhe,ZT)=>{"use strict";var XT=ir(),GZ=Pc(),YZ=fv();ZT.exports=function(r,t,n,a){function o(l,u){return XT.coerce(r,t,GZ,l,u)}var i=XT.extendFlat({},a.hoverlabel);t.hovertemplate&&(i.namelength=-1),YZ(r,t,o,i)}});var B2=de((che,KT)=>{"use strict";var WZ=ir(),XZ=wl();KT.exports=function(r,t){function n(a,o){return t[a]!==void 0?t[a]:WZ.coerce(r,t,XZ,a,o)}return n("clickmode"),n("hoversubplots"),n("hovermode")}});var jT=de((hhe,$T)=>{"use strict";var QT=ir(),ZZ=wl(),JZ=B2(),KZ=fv();$T.exports=function(r,t){function n(f,h){return QT.coerce(r,t,ZZ,f,h)}var a=JZ(r,t);a&&(n("hoverdistance"),n("spikedistance"));var o=n("dragmode");o==="select"&&n("selectdirection");var i=t._has("mapbox"),l=t._has("map"),u=t._has("geo"),s=t._basePlotModules.length;t.dragmode==="zoom"&&((i||l||u)&&s===1||(i||l)&&u&&s===2)&&(t.dragmode="pan"),KZ(r,t,n),QT.coerceFont(n,"hoverlabel.grouptitlefont",t.hoverlabel.font)}});var t9=de((vhe,r9)=>{"use strict";var U2=ir(),e9=Cr();r9.exports=function(r){var t=r.calcdata,n=r._fullLayout;function a(s){return function(f){return U2.coerceHoverinfo({hoverinfo:f},{_module:s._module},n)}}for(var o=0;o{"use strict";var $Z=Cr(),jZ=O2().hover;n9.exports=function(r,t,n){var a=$Z.getComponentMethod("annotations","onClick")(r,r._hoverdata);n!==void 0&&jZ(r,t,n,!0);function o(){r.emit("plotly_click",{points:r._hoverdata,event:t})}r._hoverdata&&t&&t.target&&(a&&a.then?a.then(o):o(),t.stopImmediatePropagation&&t.stopImmediatePropagation())}});var io=de((phe,l9)=>{"use strict";var eJ=it(),cv=ir(),rJ=ai(),Hf=to(),i9=wl(),o9=O2();l9.exports={moduleType:"component",name:"fx",constants:cf(),schema:{layout:i9},attributes:Pc(),layoutAttributes:i9,supplyLayoutGlobalDefaults:WT(),supplyDefaults:JT(),supplyLayoutDefaults:jT(),calc:t9(),getDistanceFunction:Hf.getDistanceFunction,getClosest:Hf.getClosest,inbox:Hf.inbox,quadrature:Hf.quadrature,appendArrayPointValue:Hf.appendArrayPointValue,castHoverOption:nJ,castHoverinfo:aJ,hover:o9.hover,unhover:rJ.unhover,loneHover:o9.loneHover,loneUnhover:tJ,click:a9()};function tJ(e){var r=cv.isD3Selection(e)?e:eJ.select(e);r.selectAll("g.hovertext").remove(),r.selectAll(".spikeline").remove()}function nJ(e,r,t){return cv.castOption(e,r,"hoverlabel."+t)}function aJ(e,r,t){function n(a){return cv.coerceHoverinfo({hoverinfo:a},{_module:e._module},r)}return cv.castOption(e,t,"hoverinfo",n)}});var hu=de(oo=>{"use strict";oo.selectMode=function(e){return e==="lasso"||e==="select"};oo.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};oo.openMode=function(e){return e==="drawline"||e==="drawopenpath"};oo.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};oo.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};oo.selectingOrDrawing=function(e){return oo.freeMode(e)||oo.rectMode(e)}});var hv=de((yhe,s9)=>{"use strict";s9.exports=function(r){var t=r._fullLayout;t._glcanvas&&t._glcanvas.size()&&t._glcanvas.each(function(n){n.regl&&n.regl.clear({color:!0,depth:!0})})}});var vv=de((mhe,u9)=>{"use strict";u9.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var pv=de((xhe,f9)=>{"use strict";var dv=32;f9.exports={CIRCLE_SIDES:dv,i000:0,i090:dv/4,i180:dv/2,i270:dv/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var gv=de((bhe,h9)=>{"use strict";var iJ=ir().strTranslate;function c9(e,r){switch(e.type){case"log":return e.p2d(r);case"date":return e.p2r(r,0,e.calendar);default:return e.p2r(r)}}function oJ(e,r){switch(e.type){case"log":return e.d2p(r);case"date":return e.r2p(r,0,e.calendar);default:return e.r2p(r)}}function lJ(e){var r=e._id.charAt(0)==="y"?1:0;return function(t){return c9(e,t[r])}}function sJ(e){return iJ(e.xaxis._offset,e.yaxis._offset)}h9.exports={p2r:c9,r2p:oJ,axValue:lJ,getTransform:sJ}});var Go=de(lo=>{"use strict";var uJ=Lg(),p9=pv(),vu=p9.CIRCLE_SIDES,H2=p9.SQRT2,g9=gv(),v9=g9.p2r,d9=g9.r2p,fJ=[0,3,4,5,6,1,2],cJ=[0,3,4,1,2];lo.writePaths=function(e){var r=e.length;if(!r)return"M0,0Z";for(var t="",n=0;n0&&u{"use strict";var y9=jt(),w9=hu(),hJ=w9.drawMode,vJ=w9.openMode,du=pv(),m9=du.i000,x9=du.i090,b9=du.i180,_9=du.i270,dJ=du.cos45,pJ=du.sin45,M9=gv(),mv=M9.p2r,Yo=M9.r2p,gJ=Io(),yJ=gJ.clearOutline,xv=Go(),mJ=xv.readPaths,xJ=xv.writePaths,bJ=xv.ellipseOver,_J=xv.fixDatesForPaths;function wJ(e,r){if(e.length){var t=e[0][0];if(t){var n=r.gd,a=r.isActiveShape,o=r.dragmode,i=(n.layout||{}).shapes||[];if(!hJ(o)&&a!==void 0){var l=n._fullLayout._activeShapeIndex;if(l{"use strict";var MJ=hu(),TJ=MJ.selectMode,AJ=Io(),kJ=AJ.clearOutline,V2=Go(),SJ=V2.readPaths,CJ=V2.writePaths,EJ=V2.fixDatesForPaths;k9.exports=function(r,t){if(r.length){var n=r[0][0];if(n){var a=n.getAttribute("d"),o=t.gd,i=o._fullLayout.newselection,l=t.plotinfo,u=l.xaxis,s=l.yaxis,f=t.isActiveSelection,h=t.dragmode,p=(o.layout||{}).selections||[];if(!TJ(h)&&f!==void 0){var b=o._fullLayout._activeSelectionIndex;if(b{"use strict";S9.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var Wo=de(dn=>{"use strict";var Kl=Gf(),C9=ir(),_v=Lt();dn.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(r){return r}};dn.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(r){return r}};dn.decodeDate=function(e){return function(r){return r.replace&&(r=r.replace("_"," ")),e(r)}};dn.encodeDate=function(e){return function(r){return e(r).replace(" ","_")}};dn.extractPathCoords=function(e,r,t){var n=[],a=e.match(Kl.segmentRE);return a.forEach(function(o){var i=r[o.charAt(0)].drawn;if(i!==void 0){var l=o.slice(1).match(Kl.paramRE);if(!(!l||l.lengthb&&(w="X"),w});return s>b&&(m=m.replace(/[\s,]*X.*/,""),C9.log("Ignoring extra params in segment "+u)),f+m})}function Yf(e,r){r=r||0;var t=0;return r&&e&&(e.type==="category"||e.type==="multicategory")&&(t=(e.r2p(1)-e.r2p(0))*r),t}});var W2=de((khe,R9)=>{"use strict";var DJ=ir(),pu=Lt(),E9=Wn(),L9=mt(),RJ=Go().readPaths,Y2=Wo(),PJ=Y2.getPathString,D9=Hc(),IJ=qn().FROM_TL;R9.exports=function(r,t,n,a){if(a.selectAll(".shape-label").remove(),!!(n.label.text||n.label.texttemplate)){var o;if(n.label.texttemplate){var i={};if(n.type!=="path"){var l=pu.getFromId(r,n.xref),u=pu.getFromId(r,n.yref);for(var s in D9){var f=D9[s](n,l,u);f!==void 0&&(i[s]=f)}}o=DJ.texttemplateStringForShapes({data:[i],fallback:n.label.texttemplatefallback,locale:r._fullLayout._d3locale,template:n.label.texttemplate})}else o=n.label.text;var h={"data-index":t},p=n.label.font,b={"data-notex":1},m=a.append("g").attr(h).classed("shape-label",!0),w=m.append("text").attr(b).classed("shape-label-text",!0).text(o),T,y,k,S;if(n.path){var x=PJ(r,n),M=RJ(x,r);T=1/0,k=1/0,y=-1/0,S=-1/0;for(var d=0;d=e?a=r-n:a=n-r,-180/Math.PI*Math.atan2(a,o)}function NJ(e,r,t,n,a,o,i){var l=a.label.textposition,u=a.label.textangle,s=a.label.padding,f=a.type,h=Math.PI/180*o,p=Math.sin(h),b=Math.cos(h),m=a.label.xanchor,w=a.label.yanchor,T,y,k,S;if(f==="line"){l==="start"?(T=e,y=r):l==="end"?(T=t,y=n):(T=(e+t)/2,y=(r+n)/2),m==="auto"&&(l==="start"?u==="auto"?t>e?m="left":te?m="right":te?m="right":te?m="left":t{"use strict";var zJ=ir(),qJ=zJ.strTranslate,P9=ai(),N9=hu(),OJ=N9.drawMode,z9=N9.selectMode,q9=Cr(),I9=Xr(),Mv=pv(),BJ=Mv.i000,UJ=Mv.i090,HJ=Mv.i180,VJ=Mv.i270,GJ=Io(),O9=GJ.clearOutlineControllers,Z2=Go(),wv=Z2.pointsOnRectangle,X2=Z2.pointsOnEllipse,YJ=Z2.writePaths,WJ=bv().newShapes,XJ=bv().createShapeObj,ZJ=G2(),JJ=W2();B9.exports=function e(r,t,n,a){a||(a=0);var o=n.gd;function i(){e(r,t,n,a++),(X2(r[0])||n.hasText)&&l({redrawing:!0})}function l(I){var L={};n.isActiveShape!==void 0&&(n.isActiveShape=!1,L=WJ(t,n)),n.isActiveSelection!==void 0&&(n.isActiveSelection=!1,L=ZJ(t,n),o._fullLayout._reselect=!0),Object.keys(L).length&&q9.call((I||{}).redrawing?"relayout":"_guiRelayout",o,L)}var u=o._fullLayout,s=u._zoomlayer,f=n.dragmode,h=OJ(f),p=z9(f);(h||p)&&(o._fullLayout._outlining=!0),O9(o),t.attr("d",YJ(r));var b,m,w,T,y;if(!a&&(n.isActiveShape||n.isActiveSelection)){y=KJ([],r);var k=s.append("g").attr("class","outline-controllers");A(k),F()}if(h&&n.hasText){var S=s.select(".label-temp"),x=XJ(t,n,n.dragmode);JJ(o,"label-temp",x,S)}function M(I){w=+I.srcElement.getAttribute("data-i"),T=+I.srcElement.getAttribute("data-j"),b[w][T].moveFn=d}function d(I,L){if(r.length){var P=y[w][T][1],O=y[w][T][2],U=r[w],X=U.length;if(wv(U)){var $=I,j=L;if(n.isActiveSelection){var Y=F9(U,T);Y[1]===U[T][1]?j=0:$=0}for(var q=0;q1&&!(I.length===2&&I[1][0]==="Z")&&(T===0&&(I[0][0]="M"),r[w]=I,i(),l())}}function c(I,L){if(I===2){w=+L.srcElement.getAttribute("data-i"),T=+L.srcElement.getAttribute("data-j");var P=r[w];!wv(P)&&!X2(P)&&g()}}function A(I){b=[];for(var L=0;L{"use strict";var $J=it(),W9=Cr(),U9=ir(),gu=Lt(),jJ=Go().readPaths,eK=Tv(),kv=W2(),X9=Io().clearOutlineControllers,J2=Xr(),Q2=mt(),rK=yt().arrayEditor,H9=ai(),V9=Vo(),Ql=Gf(),sa=Wo(),K2=sa.getPathString;K9.exports={draw:$2,drawOne:Z9,eraseActiveShape:aK,drawLabel:kv};function $2(e){var r=e._fullLayout;r._shapeUpperLayer.selectAll("path").remove(),r._shapeLowerLayer.selectAll("path").remove(),r._shapeUpperLayer.selectAll("text").remove(),r._shapeLowerLayer.selectAll("text").remove();for(var t in r._plots){var n=r._plots[t].shapelayer;n&&(n.selectAll("path").remove(),n.selectAll("text").remove())}for(var a=0;ai&&Ce>l&&!Se.shiftKey?H9.getCursor(Pe/Ae,1-Ee/Ce):"move";V9(r,Ne),K=Ne.split("-")[0]}}function re(Se){Av(e)||(u&&(y=U(t.xanchor)),s&&(k=X(t.yanchor)),t.type==="path"?v=t.path:(b=u?t.x0:U(t.x0),m=s?t.y0:X(t.y0),w=u?t.x1:U(t.x1),T=s?t.y1:X(t.y1)),bT?(S=m,_="y0",x=T,g="y1"):(S=T,_="y1",x=m,g="y0"),oe(Se),ue(a,t),ke(r,t,e),q.moveFn=K==="move"?V:te,q.altKey=Se.altKey)}function H(){Av(e)||(V9(r),ve(a),J9(r,e,t),W9.call("_guiRelayout",e,o.getUpdateObj()))}function ee(){Av(e)||ve(a)}function V(Se,he){if(t.type==="path"){var Ae=function(Ee){return Ee},Ce=Ae,Pe=Ae;u?p("xanchor",t.xanchor=$(y+Se)):(Ce=function(Ne){return $(U(Ne)+Se)},E&&E.type==="date"&&(Ce=sa.encodeDate(Ce))),s?p("yanchor",t.yanchor=j(k+he)):(Pe=function(Ne){return j(X(Ne)+he)},N&&N.type==="date"&&(Pe=sa.encodeDate(Pe))),p("path",t.path=G9(v,Ce,Pe))}else u?p("xanchor",t.xanchor=$(y+Se)):(p("x0",t.x0=$(b+Se)),p("x1",t.x1=$(w+Se))),s?p("yanchor",t.yanchor=j(k+he)):(p("y0",t.y0=j(m+he)),p("y1",t.y1=j(T+he)));r.attr("d",K2(e,t)),ue(a,t),kv(e,n,t,D)}function te(Se,he){if(h){var Ae=function(ze){return ze},Ce=Ae,Pe=Ae;u?p("xanchor",t.xanchor=$(y+Se)):(Ce=function($e){return $(U($e)+Se)},E&&E.type==="date"&&(Ce=sa.encodeDate(Ce))),s?p("yanchor",t.yanchor=j(k+he)):(Pe=function($e){return j(X($e)+he)},N&&N.type==="date"&&(Pe=sa.encodeDate(Pe))),p("path",t.path=G9(v,Ce,Pe))}else if(f){if(K==="resize-over-start-point"){var Ee=b+Se,Ne=s?m-he:m+he;p("x0",t.x0=u?Ee:$(Ee)),p("y0",t.y0=s?Ne:j(Ne))}else if(K==="resize-over-end-point"){var Ue=w+Se,ge=s?T-he:T+he;p("x1",t.x1=u?Ue:$(Ue)),p("y1",t.y1=s?ge:j(ge))}}else{var we=function(ze){return K.indexOf(ze)!==-1},Te=we("n"),me=we("s"),ye=we("w"),pe=we("e"),ce=Te?S+he:S,xe=me?x+he:x,Le=ye?M+Se:M,qe=pe?d+Se:d;s&&(Te&&(ce=S-he),me&&(xe=x-he)),(!s&&xe-ce>l||s&&ce-xe>l)&&(p(_,t[_]=s?ce:j(ce)),p(g,t[g]=s?xe:j(xe))),qe-Le>i&&(p(c,t[c]=u?Le:$(Le)),p(A,t[A]=u?qe:$(qe)))}r.attr("d",K2(e,t)),ue(a,t),kv(e,n,t,D)}function ue(Se,he){(u||s)&&Ae();function Ae(){var Ce=he.type!=="path",Pe=Se.selectAll(".visual-cue").data([0]),Ee=1;Pe.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":Ee}).classed("visual-cue",!0);var Ne=U(u?he.xanchor:U9.midRange(Ce?[he.x0,he.x1]:sa.extractPathCoords(he.path,Ql.paramIsX))),Ue=X(s?he.yanchor:U9.midRange(Ce?[he.y0,he.y1]:sa.extractPathCoords(he.path,Ql.paramIsY)));if(Ne=sa.roundPositionForSharpStrokeRendering(Ne,Ee),Ue=sa.roundPositionForSharpStrokeRendering(Ue,Ee),u&&s){var ge="M"+(Ne-1-Ee)+","+(Ue-1-Ee)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Pe.attr("d",ge)}else if(u){var we="M"+(Ne-1-Ee)+","+(Ue-9-Ee)+"v18 h2 v-18 Z";Pe.attr("d",we)}else{var Te="M"+(Ne-9-Ee)+","+(Ue-1-Ee)+"h18 v2 h-18 Z";Pe.attr("d",Te)}}}function ve(Se){Se.selectAll(".visual-cue").remove()}function ke(Se,he,Ae){var Ce=he.xref,Pe=he.yref,Ee=gu.getFromId(Ae,Ce),Ne=gu.getFromId(Ae,Pe),Ue="";Ce!=="paper"&&!Ee.autorange&&(Ue+=Ce),Pe!=="paper"&&!Ne.autorange&&(Ue+=Pe),Q2.setClipUrl(Se,Ue?"clip"+Ae._fullLayout._uid+Ue:null,Ae)}}function G9(e,r,t){return e.replace(Ql.segmentRE,function(n){var a=0,o=n.charAt(0),i=Ql.paramIsX[o],l=Ql.paramIsY[o],u=Ql.numParams[o],s=n.slice(1).replace(Ql.paramRE,function(f){return a>=u||(i[a]?f=r(f):l[a]&&(f=t(f)),a++),f});return o+s})}function nK(e,r){if(Sv(e)){var t=r.node(),n=+t.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeShapeIndex){Y9(e);return}e._fullLayout._activeShapeIndex=n,e._fullLayout._deactivateShape=Y9,$2(e)}}}function Y9(e){if(Sv(e)){var r=e._fullLayout._activeShapeIndex;r>=0&&(X9(e),delete e._fullLayout._activeShapeIndex,$2(e))}}function aK(e){if(Sv(e)){X9(e);var r=e._fullLayout._activeShapeIndex,t=(e.layout||{}).shapes||[];if(r{"use strict";var Ia=Cr(),Q9=on(),$9=jt(),rt=vv(),iK=Cv().eraseActiveShape,Ev=ir(),Jr=Ev._,tt=iA.exports={};tt.toImage={name:"toImage",title:function(e){var r=e._context.toImageButtonOptions||{},t=r.format||"png";return t==="png"?Jr(e,"Download plot as a PNG"):Jr(e,"Download plot")},icon:rt.camera,click:function(e){var r=e._context.toImageButtonOptions,t={format:r.format||"png"};Ev.notifier(Jr(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(n){n in r&&(t[n]=r[n])}),Ia.call("downloadImage",e,t).then(function(n){Ev.notifier(Jr(e,"Snapshot succeeded")+" - "+n,"long")}).catch(function(){Ev.notifier(Jr(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};tt.sendDataToCloud={name:"sendDataToCloud",title:function(e){return Jr(e,"Edit in Chart Studio")},icon:rt.disk,click:function(e){Q9.sendDataToCloud(e)}};tt.editInChartStudio={name:"editInChartStudio",title:function(e){return Jr(e,"Edit in Chart Studio")},icon:rt.pencil,click:function(e){Q9.sendDataToCloud(e)}};tt.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return Jr(e,"Zoom")},attr:"dragmode",val:"zoom",icon:rt.zoombox,click:Un};tt.pan2d={name:"pan2d",_cat:"pan",title:function(e){return Jr(e,"Pan")},attr:"dragmode",val:"pan",icon:rt.pan,click:Un};tt.select2d={name:"select2d",_cat:"select",title:function(e){return Jr(e,"Box Select")},attr:"dragmode",val:"select",icon:rt.selectbox,click:Un};tt.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return Jr(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:rt.lasso,click:Un};tt.drawclosedpath={name:"drawclosedpath",title:function(e){return Jr(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:rt.drawclosedpath,click:Un};tt.drawopenpath={name:"drawopenpath",title:function(e){return Jr(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:rt.drawopenpath,click:Un};tt.drawline={name:"drawline",title:function(e){return Jr(e,"Draw line")},attr:"dragmode",val:"drawline",icon:rt.drawline,click:Un};tt.drawrect={name:"drawrect",title:function(e){return Jr(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:rt.drawrect,click:Un};tt.drawcircle={name:"drawcircle",title:function(e){return Jr(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:rt.drawcircle,click:Un};tt.eraseshape={name:"eraseshape",title:function(e){return Jr(e,"Erase active shape")},icon:rt.eraseshape,click:iK};tt.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return Jr(e,"Zoom in")},attr:"zoom",val:"in",icon:rt.zoom_plus,click:Un};tt.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return Jr(e,"Zoom out")},attr:"zoom",val:"out",icon:rt.zoom_minus,click:Un};tt.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return Jr(e,"Autoscale")},attr:"zoom",val:"auto",icon:rt.autoscale,click:Un};tt.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return Jr(e,"Reset axes")},attr:"zoom",val:"reset",icon:rt.home,click:Un};tt.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return Jr(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:rt.tooltip_basic,gravity:"ne",click:Un};tt.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return Jr(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:rt.tooltip_compare,gravity:"ne",click:Un};function Un(e,r){var t=r.currentTarget,n=t.getAttribute("data-attr"),a=t.getAttribute("data-val")||!0,o=e._fullLayout,i={},l=$9.list(e,null,!0),u=o._cartesianSpikesEnabled,s,f;if(n==="zoom"){var h=a==="in"?.5:2,p=(1+h)/2,b=(1-h)/2,m,w;for(f=0;f{"use strict";var oA=ry(),sK=Object.keys(oA),lA=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],sA=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(lA),mu=[],uK=function(e){if(sA.indexOf(e._cat||e.name)===-1){var r=e.name,t=(e._cat||e.name).toLowerCase();mu.indexOf(r)===-1&&mu.push(r),mu.indexOf(t)===-1&&mu.push(t)}};sK.forEach(function(e){uK(oA[e])});mu.sort();uA.exports={DRAW_MODES:lA,backButtons:sA,foreButtons:mu}});var ny=de((Rhe,fA)=>{"use strict";var Dhe=ty();fA.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var hA=de((Phe,cA)=>{"use strict";var fK=ir(),Wf=Xr(),cK=yt(),hK=ny();cA.exports=function(r,t){var n=r.modebar||{},a=cK.newContainer(t,"modebar");function o(l,u){return fK.coerce(n,a,hK,l,u)}o("orientation"),o("bgcolor",Wf.addOpacity(t.paper_bgcolor,.5));var i=Wf.contrast(Wf.rgb(t.modebar.bgcolor));o("color",Wf.addOpacity(i,.3)),o("activecolor",Wf.addOpacity(i,.7)),o("uirevision",t.uirevision),o("add"),o("remove")}});var gA=de((Ihe,pA)=>{"use strict";var ay=it(),vK=nt(),Dv=ir(),vA=vv(),dK=_c().version,pK=new DOMParser;function dA(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var zi=dA.prototype;zi.update=function(e,r){this.graphInfo=e;var t=this.graphInfo._context,n=this.graphInfo._fullLayout,a="modebar-"+n._uid;this.element.setAttribute("id",a),this.element.setAttribute("role","toolbar"),this._uid=a,this.element.className="modebar modebar--custom",t.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),n.modebar.orientation==="v"&&(this.element.className+=" vertical",r=r.reverse());var o=n.modebar,i="#"+a+" .modebar-group";document.querySelectorAll(i).forEach(function(h){h.style.backgroundColor=o.bgcolor});var l=!this.hasButtons(r),u=this.hasLogo!==t.displaylogo,s=this.locale!==t.locale;if(this.locale=t.locale,(l||u||s)&&(this.removeAllButtons(),this.updateButtons(r),t.watermark||t.displaylogo)){var f=this.getLogo();t.watermark&&(f.className=f.className+" watermark"),n.modebar.orientation==="v"?this.element.insertBefore(f,this.element.childNodes[0]):this.element.appendChild(f),this.hasLogo=!0}this.updateActiveButton(),Dv.setStyleOnHover("#"+a+" .modebar-btn",".active",".icon path","fill: "+o.activecolor,"fill: "+o.color,this.element)};zi.updateButtons=function(e){var r=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(t){var n=r.createGroup();t.forEach(function(a){var o=a.name;if(!o)throw new Error("must provide button 'name' in button config");if(r.buttonsNames.indexOf(o)!==-1)throw new Error("button name '"+o+"' is taken");r.buttonsNames.push(o);var i=r.createButton(a);r.buttonElements.push(i),n.appendChild(i)}),r.element.appendChild(n)})};zi.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var r=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=r.bgcolor,e};zi.createButton=function(e){var r=this,t=document.createElement("button");t.setAttribute("type","button"),t.setAttribute("rel","tooltip"),t.className="modebar-btn";var n=e.title;n===void 0?n=e.name:typeof n=="function"&&(n=n(this.graphInfo)),(n||n===0)&&(t.setAttribute("data-title",n),t.setAttribute("aria-label",n)),e.attr!==void 0&&t.setAttribute("data-attr",e.attr);var a=e.val;a!==void 0&&(typeof a=="function"&&(a=a(this.graphInfo)),t.setAttribute("data-val",a));var o=e.click;if(typeof o!="function")throw new Error("must provide button 'click' function in button config");t.addEventListener("click",function(l){e.click(r.graphInfo,l),r.updateActiveButton(l.currentTarget)}),t.setAttribute("data-toggle",e.toggle||!1),e.toggle&&ay.select(t).classed("active",!0);var i=e.icon;return typeof i=="function"?t.appendChild(i()):t.appendChild(this.createIcon(i||vA.question)),t.setAttribute("data-gravity",e.gravity||"n"),t};zi.createIcon=function(e){var r=vK(e.height)?Number(e.height):e.ascent-e.descent,t="http://www.w3.org/2000/svg",n;if(e.path){n=document.createElementNS(t,"svg"),n.setAttribute("viewBox",[0,0,e.width,r].join(" ")),n.setAttribute("class","icon");var a=document.createElementNS(t,"path");a.setAttribute("d",e.path),e.transform?a.setAttribute("transform",e.transform):e.ascent!==void 0&&a.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),n.appendChild(a)}if(e.svg){var o=pK.parseFromString(e.svg,"application/xml");n=o.childNodes[0]}return n.setAttribute("height","1em"),n.setAttribute("width","1em"),n};zi.updateActiveButton=function(e){var r=this.graphInfo._fullLayout,t=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(n){var a=n.getAttribute("data-val")||!0,o=n.getAttribute("data-attr"),i=n.getAttribute("data-toggle")==="true",l=ay.select(n),u=function(h,p){var b=r.modebar,m=h.querySelector(".icon path");m&&(p||h.matches(":hover")?m.style.fill=b.activecolor:m.style.fill=b.color)};if(i){if(o===t){var s=!l.classed("active");l.classed("active",s),u(n,s)}}else{var f=o===null?o:Dv.nestedProperty(r,o).get();l.classed("active",f===a),u(n,f===a)}})};zi.hasButtons=function(e){var r=this.buttons;if(!r||e.length!==r.length)return!1;for(var t=0;t{"use strict";var mK=jt(),yA=oa(),iy=Cr(),xK=to().isUnifiedHover,bK=gA(),Rv=ry(),_K=ty().DRAW_MODES,wK=ir().extendDeep;mA.exports=function(r){var t=r._fullLayout,n=r._context,a=t._modeBar;if(!n.displayModeBar&&!n.watermark){a&&(a.destroy(),delete t._modeBar);return}if(!Array.isArray(n.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(n.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var o=n.modeBarButtons,i;Array.isArray(o)&&o.length?i=CK(o):!n.displayModeBar&&n.watermark?i=[]:i=MK(r),a?a.update(r,i):t._modeBar=bK(r,i)};function MK(e){var r=e._fullLayout,t=e._fullData,n=e._context;function a(L,P){if(typeof P=="string"){if(P.toLowerCase()===L.toLowerCase())return!0}else{var O=P.name,U=P._cat||P.name;if(O===L||U===L.toLowerCase())return!0}return!1}var o=r.modebar.add;typeof o=="string"&&(o=[o]);var i=r.modebar.remove;typeof i=="string"&&(i=[i]);var l=n.modeBarButtonsToAdd.concat(o.filter(function(L){for(var P=0;P1?(A=["toggleHover"],v=["resetViews"]):h?(c=["zoomInGeo","zoomOutGeo"],A=["hoverClosestGeo"],v=["resetGeo"]):f?(A=["hoverClosest3d"],v=["resetCameraDefault3d","resetCameraLastSave3d"]):w?(c=["zoomInMapbox","zoomOutMapbox"],A=["toggleHover"],v=["resetViewMapbox"]):T?(c=["zoomInMap","zoomOutMap"],A=["toggleHover"],v=["resetViewMap"]):p?A=["hoverClosestPie"]:S?(A=["hoverClosestCartesian","hoverCompareCartesian"],v=["resetViewSankey"]):A=["toggleHover"],s&&A.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(kK(t)||M)&&(A=[]),s&&!x&&(c=["zoomIn2d","zoomOut2d","autoScale2d"],v[0]!=="resetViews"&&(v=["resetScale2d"])),f?D=["zoom3d","pan3d","orbitRotation","tableRotation"]:s&&!x||m?D=["zoom2d","pan2d"]:w||T||h?D=["pan2d"]:y&&(D=["zoom2d"]),AK(t)&&D.push("select2d","lasso2d");var E=[],R=function(L){E.indexOf(L)===-1&&A.indexOf(L)!==-1&&E.push(L)};if(Array.isArray(l)){for(var N=[],F=0;F{"use strict";bA.exports={moduleType:"component",name:"modebar",layoutAttributes:ny(),supplyLayoutDefaults:hA(),manage:xA()}});var ly=de((zhe,_A)=>{"use strict";var EK=qn().FROM_BL;_A.exports=function(r,t,n){n===void 0&&(n=EK[r.constraintoward||"center"]);var a=[r.r2l(r.range[0]),r.r2l(r.range[1])],o=a[0]+(a[1]-a[0])*n;r.range=r._input.range=[r.l2r(o+(a[0]-o)*t),r.l2r(o+(a[1]-o)*t)],r.setScale()}});var Zf=de(Xf=>{"use strict";var $l=ir(),sy=eu(),oi=jt().id2name,LK=La(),wA=ly(),DK=Fh(),RK=nn().ALMOST_EQUAL,PK=qn().FROM_BL;Xf.handleDefaults=function(e,r,t){var n=t.axIds,a=t.axHasImage,o=r._axisConstraintGroups=[],i=r._axisMatchGroups=[],l,u,s,f,h,p,b,m;for(l=0;lo?t.slice(o):n.slice(a))+i}function FK(e,r){for(var t=r._size,n=t.h/t.w,a={},o=Object.keys(e),i=0;iRK*m&&!k)){for(o=0;oD&&OA&&(A=O);var X=(A-c)/(2*v);h/=X,c=u.l2r(c),A=u.l2r(A),u.range=u._input.range=d<_?[c,A]:[A,c]}TA(u,h)}}}};Xf.getAxisGroup=function(r,t){for(var n=r._axisMatchGroups,a=0;a{"use strict";var Iv=it(),Hn=Cr(),ma=on(),Fa=ir(),cy=Wn(),hy=hv(),Jf=Xr(),xu=mt(),kA=Rf(),DA=oy(),Kf=Lt(),so=qn(),RA=Zf(),NK=RA.enforce,zK=RA.clean,SA=eu().doAutoRange,PA="start",qK="middle",IA="end",OK=_n().zindexSeparator;un.layoutStyles=function(e){return Fa.syncOrAsync([ma.doAutoMargin,UK],e)};function BK(e,r,t){for(var n=0;n=e[1]||a[1]<=e[0])&&o[0]r[0])return!0}return!1}function UK(e){var r=e._fullLayout,t=r._size,n=t.p,a=Kf.list(e,"",!0),o,i,l,u,s,f;if(r._paperdiv.style({width:e._context.responsive&&r.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":r.width+"px",height:e._context.responsive&&r.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":r.height+"px"}).selectAll(".main-svg").call(xu.setSize,r.width,r.height),e._context.setBackground(e,r.paper_bgcolor),un.drawMainTitle(e),DA.manage(e),!r._has("cartesian"))return ma.previousPromises(e);function h(re,H,ee){var V=re._lw/2;if(re._id.charAt(0)==="x"){if(H){if(ee==="top")return H._offset-n-V}else return t.t+t.h*(1-(re.position||0))+V%1;return H._offset+H._length+n+V}if(H){if(ee==="right")return H._offset+H._length+n+V}else return t.l+t.w*(re.position||0)+V%1;return H._offset-n-V}for(o=0;o0){YK(e,o,s,u),l.attr({x:i,y:o,"text-anchor":n,dy:LA(r.yanchor)}).call(cy.positionText,i,o);var f=(r.text.match(cy.BR_TAG_ALL)||[]).length;if(f){var h=so.LINE_SPACING*f+so.MID_SHIFT;r.y===0&&(h=-h),l.selectAll(".line").each(function(){var T=+this.getAttribute("dy").slice(0,-2)-h+"em";this.setAttribute("dy",T)})}var p=Iv.select(e).selectAll(".gtitle-subtitle");if(p.node()){var b=l.node().getBBox(),m=b.y+b.height,w=m+kA.SUBTITLE_PADDING_EM*r.subtitle.font.size;p.attr({x:i,y:w,"text-anchor":n,dy:LA(r.yanchor)}).call(cy.positionText,i,w)}}}};function HK(e,r,t,n,a){var o=r.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,i=Fa.isTopAnchor(r)?n:n-a,l=t==="b"?o-i:i;return Fa.isTopAnchor(r)&&t==="t"||Fa.isBottomAnchor(r)&&t==="b"?!1:l.5?"t":"b",i=e._fullLayout.margin[o],l=0;return r.yref==="paper"?l=t+r.pad.t+r.pad.b:r.yref==="container"&&(l=VK(o,n,a,e._fullLayout.height,t)+r.pad.t+r.pad.b),l>i?l:0}function YK(e,r,t,n){var a="title.automargin",o=e._fullLayout.title,i=o.y>.5?"t":"b",l={x:o.x,y:o.y,t:0,b:0},u={};o.yref==="paper"&&HK(e,o,i,r,n)?l[i]=t:o.yref==="container"&&(u[i]=t,e._fullLayout._reservedMargin[a]=u),ma.allowAutoMargin(e,a),ma.autoMargin(e,a,l)}function WK(e,r){var t=e.title,n=e._size,a=0;switch(r===PA?a=t.pad.l:r===IA&&(a=-t.pad.r),t.xref){case"paper":return n.l+n.w*t.x+a;case"container":default:return e.width*t.x+a}}function XK(e,r){var t=e.title,n=e._size,a=0;if(r==="0em"||!r?a=-t.pad.b:r===so.CAP_SHIFT+"em"&&(a=t.pad.t),t.y==="auto")return n.t/2;switch(t.yref){case"paper":return n.t+n.h-n.h*t.y+a;case"container":default:return e.height-e.height*t.y+a}}function LA(e){return e==="top"?so.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":so.MID_SHIFT+"em"}function ZK(e){var r=e.title,t=qK;return Fa.isRightAnchor(r)?t=IA:Fa.isLeftAnchor(r)&&(t=PA),t}function JK(e){var r=e.title,t="0em";return Fa.isTopAnchor(r)?t=so.CAP_SHIFT+"em":Fa.isMiddleAnchor(r)&&(t=so.MID_SHIFT+"em"),t}un.doTraceStyle=function(e){var r=e.calcdata,t=[],n;for(n=0;n{"use strict";var KK=Go().readPaths,QK=Tv(),FA=Io().clearOutlineControllers,vy=Xr(),NA=mt(),$K=yt().arrayEditor,zA=Wo(),jK=zA.getPathString;OA.exports={draw:Nv,drawOne:qA,activateLastSelection:tQ};function Nv(e){var r=e._fullLayout;FA(e),r._selectionLayer.selectAll("path").remove();for(var t in r._plots){var n=r._plots[t].selectionLayer;n&&n.selectAll("path").remove()}for(var a=0;a=0;T--){var y=i.append("path").attr(u).style("opacity",T?.1:s).call(vy.stroke,h).call(vy.fill,f).call(NA.dashLine,T?"solid":b,T?4+p:p);if(eQ(y,e,n),m){var k=$K(e.layout,"selections",n);y.style({cursor:"move"});var S={element:y.node(),plotinfo:a,gd:e,editHelpers:k,isActiveSelection:!0},x=KK(l,e);QK(x,y,S)}else y.style("pointer-events",T?"all":"none");w[T]=y}var M=w[0],d=w[1];d.node().addEventListener("click",function(){return rQ(e,M)})}}function eQ(e,r,t){var n=t.xref+t.yref;NA.setClipUrl(e,"clip"+r._fullLayout._uid+n,r)}function rQ(e,r){if(zv(e)){var t=r.node(),n=+t.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeSelectionIndex){dy(e);return}e._fullLayout._activeSelectionIndex=n,e._fullLayout._deactivateSelection=dy,Nv(e)}}}function tQ(e){if(zv(e)){var r=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=r,e._fullLayout._deactivateSelection=dy,Nv(e)}}function dy(e){if(zv(e)){var r=e._fullLayout._activeSelectionIndex;r>=0&&(FA(e),delete e._fullLayout._activeSelectionIndex,Nv(e))}}});var UA=de((Uhe,BA)=>{function nQ(){var e,r=0,t=!1;function n(a,o){return e.list.push({type:a,data:o?JSON.parse(JSON.stringify(o)):void 0}),e}return e={list:[],segmentId:function(){return r++},checkIntersection:function(a,o){return n("check",{seg1:a,seg2:o})},segmentChop:function(a,o){return n("div_seg",{seg:a,pt:o}),n("chop",{seg:a,pt:o})},statusRemove:function(a){return n("pop_seg",{seg:a})},segmentUpdate:function(a){return n("seg_update",{seg:a})},segmentNew:function(a,o){return n("new_seg",{seg:a,primary:o})},segmentRemove:function(a){return n("rem_seg",{seg:a})},tempStatus:function(a,o,i){return n("temp_status",{seg:a,above:o,below:i})},rewind:function(a){return n("rewind",{seg:a})},status:function(a,o,i){return n("status",{seg:a,above:o,below:i})},vert:function(a){return a===t?e:(t=a,n("vert",{x:a}))},log:function(a){return typeof a!="string"&&(a=JSON.stringify(a,!1," ")),n("log",{txt:a})},reset:function(){return n("reset")},selected:function(a){return n("selected",{segs:a})},chainStart:function(a){return n("chain_start",{seg:a})},chainRemoveHead:function(a,o){return n("chain_rem_head",{index:a,pt:o})},chainRemoveTail:function(a,o){return n("chain_rem_tail",{index:a,pt:o})},chainNew:function(a,o){return n("chain_new",{pt1:a,pt2:o})},chainMatch:function(a){return n("chain_match",{index:a})},chainClose:function(a){return n("chain_close",{index:a})},chainAddHead:function(a,o){return n("chain_add_head",{index:a,pt:o})},chainAddTail:function(a,o){return n("chain_add_tail",{index:a,pt:o})},chainConnect:function(a,o){return n("chain_con",{index1:a,index2:o})},chainReverse:function(a){return n("chain_rev",{index:a})},chainJoin:function(a,o){return n("chain_join",{index1:a,index2:o})},done:function(){return n("done")}},e}BA.exports=nQ});var VA=de((Hhe,HA)=>{function aQ(e){typeof e!="number"&&(e=1e-10);var r={epsilon:function(t){return typeof t=="number"&&(e=t),e},pointAboveOrOnLine:function(t,n,a){var o=n[0],i=n[1],l=a[0],u=a[1],s=t[0],f=t[1];return(l-o)*(f-i)-(u-i)*(s-o)>=-e},pointBetween:function(t,n,a){var o=t[1]-n[1],i=a[0]-n[0],l=t[0]-n[0],u=a[1]-n[1],s=l*i+o*u;if(s-e)},pointsSameX:function(t,n){return Math.abs(t[0]-n[0])e!=l-o>e&&(i-f)*(o-h)/(l-h)+f-a>e&&(u=!u),i=f,l=h}return u}};return r}HA.exports=aQ});var YA=de((Vhe,GA)=>{var iQ={create:function(){var e={root:{root:!0,next:null},exists:function(r){return!(r===null||r===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(r,t){for(var n=e.root,a=e.root.next;a!==null;){if(t(a)){r.prev=a.prev,r.next=a,a.prev.next=r,a.prev=r;return}n=a,a=a.next}n.next=r,r.prev=n,r.next=null},findTransition:function(r){for(var t=e.root,n=e.root.next;n!==null&&!r(n);)t=n,n=n.next;return{before:t===e.root?null:t,after:n,insert:function(a){return a.prev=t,a.next=n,t.next=a,n!==null&&(n.prev=a),a}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};GA.exports=iQ});var XA=de((Ghe,WA)=>{var Qf=YA();function oQ(e,r,t){function n(m,w){return{id:t?t.segmentId():-1,start:m,end:w,myFill:{above:null,below:null},otherFill:null}}function a(m,w,T){return{id:t?t.segmentId():-1,start:m,end:w,myFill:{above:T.myFill.above,below:T.myFill.below},otherFill:null}}var o=Qf.create();function i(m,w,T,y,k,S){var x=r.pointsCompare(w,k);return x!==0?x:r.pointsSame(T,S)?0:m!==y?m?1:-1:r.pointAboveOrOnLine(T,y?k:S,y?S:k)?1:-1}function l(m,w){o.insertBefore(m,function(T){var y=i(m.isStart,m.pt,w,T.isStart,T.pt,T.other.pt);return y<0})}function u(m,w){var T=Qf.node({isStart:!0,pt:m.start,seg:m,primary:w,other:null,status:null});return l(T,m.end),T}function s(m,w,T){var y=Qf.node({isStart:!1,pt:w.end,seg:w,primary:T,other:m,status:null});m.other=y,l(y,m.pt)}function f(m,w){var T=u(m,w);return s(T,m,w),T}function h(m,w){t&&t.segmentChop(m.seg,w),m.other.remove(),m.seg.end=w,m.other.pt=w,l(m.other,m.pt)}function p(m,w){var T=a(w,m.seg.end,m.seg);return h(m,w),f(T,m.primary)}function b(m,w){var T=Qf.create();function y(N,F){var I=N.seg.start,L=N.seg.end,P=F.seg.start,O=F.seg.end;return r.pointsCollinear(I,P,O)?r.pointsCollinear(L,P,O)||r.pointAboveOrOnLine(L,P,O)?1:-1:r.pointAboveOrOnLine(I,P,O)?1:-1}function k(N){return T.findTransition(function(F){var I=y(N,F.ev);return I>0})}function S(N,F){var I=N.seg,L=F.seg,P=I.start,O=I.end,U=L.start,X=L.end;t&&t.checkIntersection(I,L);var $=r.linesIntersect(P,O,U,X);if($===!1){if(!r.pointsCollinear(P,O,U)||r.pointsSame(P,X)||r.pointsSame(O,U))return!1;var j=r.pointsSame(P,U),Y=r.pointsSame(O,X);if(j&&Y)return F;var q=!j&&r.pointBetween(P,U,X),K=!Y&&r.pointBetween(O,U,X);if(j)return K?p(F,O):p(N,X),F;q&&(Y||(K?p(F,O):p(N,X)),p(F,P))}else $.alongA===0&&($.alongB===-1?p(N,U):$.alongB===0?p(N,$.pt):$.alongB===1&&p(N,X)),$.alongB===0&&($.alongA===-1?p(F,P):$.alongA===0?p(F,$.pt):$.alongA===1&&p(F,O));return!1}for(var x=[];!o.isEmpty();){var M=o.getHead();if(t&&t.vert(M.pt[0]),M.isStart){let N=function(){if(_){var F=S(M,_);if(F)return F}return g?S(M,g):!1};var R=N;t&&t.segmentNew(M.seg,M.primary);var d=k(M),_=d.before?d.before.ev:null,g=d.after?d.after.ev:null;t&&t.tempStatus(M.seg,_?_.seg:!1,g?g.seg:!1);var c=N();if(c){if(e){var A;M.seg.myFill.below===null?A=!0:A=M.seg.myFill.above!==M.seg.myFill.below,A&&(c.seg.myFill.above=!c.seg.myFill.above)}else c.seg.otherFill=M.seg.myFill;t&&t.segmentUpdate(c.seg),M.other.remove(),M.remove()}if(o.getHead()!==M){t&&t.rewind(M.seg);continue}if(e){var A;M.seg.myFill.below===null?A=!0:A=M.seg.myFill.above!==M.seg.myFill.below,g?M.seg.myFill.below=g.seg.myFill.above:M.seg.myFill.below=m,A?M.seg.myFill.above=!M.seg.myFill.below:M.seg.myFill.above=M.seg.myFill.below}else if(M.seg.otherFill===null){var v;g?M.primary===g.primary?v=g.seg.otherFill.above:v=g.seg.myFill.above:v=M.primary?w:m,M.seg.otherFill={above:v,below:v}}t&&t.status(M.seg,_?_.seg:!1,g?g.seg:!1),M.other.status=d.insert(Qf.node({ev:M}))}else{var D=M.status;if(D===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(T.exists(D.prev)&&T.exists(D.next)&&S(D.prev.ev,D.next.ev),t&&t.statusRemove(D.ev.seg),D.remove(),!M.primary){var E=M.seg.myFill;M.seg.myFill=M.seg.otherFill,M.seg.otherFill=E}x.push(M.seg)}o.getHead().remove()}return t&&t.done(),x}return e?{addRegion:function(m){for(var w,T=m[m.length-1],y=0;y{function lQ(e,r,t){var n=[],a=[];return e.forEach(function(o){var i=o.start,l=o.end;if(r.pointsSame(i,l)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}t&&t.chainStart(o);var u={index:0,matches_head:!1,matches_pt1:!1},s={index:0,matches_head:!1,matches_pt1:!1},f=u;function h(R,N,F){return f.index=R,f.matches_head=N,f.matches_pt1=F,f===u?(f=s,!1):(f=null,!0)}for(var p=0;p{function $f(e,r,t){var n=[];return e.forEach(function(a){var o=(a.myFill.above?8:0)+(a.myFill.below?4:0)+(a.otherFill&&a.otherFill.above?2:0)+(a.otherFill&&a.otherFill.below?1:0);r[o]!==0&&n.push({id:t?t.segmentId():-1,start:a.start,end:a.end,myFill:{above:r[o]===1,below:r[o]===2},otherFill:null})}),t&&t.selected(n),n}var sQ={union:function(e,r){return $f(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],r)},intersect:function(e,r){return $f(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],r)},difference:function(e,r){return $f(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],r)},differenceRev:function(e,r){return $f(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],r)},xor:function(e,r){return $f(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],r)}};KA.exports=sQ});var jA=de((Xhe,$A)=>{var uQ={toPolygon:function(e,r){function t(o){if(o.length<=0)return e.segments({inverted:!1,regions:[]});function i(s){var f=s.slice(0,s.length-1);return e.segments({inverted:!1,regions:[f]})}for(var l=i(o[0]),u=1;u{var fQ=UA(),cQ=VA(),ek=XA(),hQ=JA(),jf=QA(),rk=jA(),Na=!1,e0=cQ(),ua;ua={buildLog:function(e){return e===!0?Na=fQ():e===!1&&(Na=!1),Na===!1?!1:Na.list},epsilon:function(e){return e0.epsilon(e)},segments:function(e){var r=ek(!0,e0,Na);return e.regions.forEach(r.addRegion),{segments:r.calculate(e.inverted),inverted:e.inverted}},combine:function(e,r){var t=ek(!1,e0,Na);return{combined:t.calculate(e.segments,e.inverted,r.segments,r.inverted),inverted1:e.inverted,inverted2:r.inverted}},selectUnion:function(e){return{segments:jf.union(e.combined,Na),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:jf.intersect(e.combined,Na),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:jf.difference(e.combined,Na),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:jf.differenceRev(e.combined,Na),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:jf.xor(e.combined,Na),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:hQ(e.segments,e0,Na),inverted:e.inverted}},polygonFromGeoJSON:function(e){return rk.toPolygon(ua,e)},polygonToGeoJSON:function(e){return rk.fromPolygon(ua,e0,e)},union:function(e,r){return r0(e,r,ua.selectUnion)},intersect:function(e,r){return r0(e,r,ua.selectIntersect)},difference:function(e,r){return r0(e,r,ua.selectDifference)},differenceRev:function(e,r){return r0(e,r,ua.selectDifferenceRev)},xor:function(e,r){return r0(e,r,ua.selectXor)}};function r0(e,r,t){var n=ua.segments(e),a=ua.segments(r),o=ua.combine(n,a),i=t(o);return ua.polygon(i)}typeof window=="object"&&(window.PolyBool=ua);tk.exports=ua});var ik=de((Jhe,ak)=>{ak.exports=function(r,t,n,a){var o=r[0],i=r[1],l=!1;n===void 0&&(n=0),a===void 0&&(a=t.length);for(var u=a-n,s=0,f=u-1;si!=m>i&&o<(b-h)*(i-p)/(m-p)+h;w&&(l=!l)}return l}});var yy=de((Khe,ok)=>{"use strict";var gy=Oc().dot,qv=nn().BADNUM,Ov=ok.exports={};Ov.tester=function(r){var t=r.slice(),n=t[0][0],a=n,o=t[0][1],i=o,l;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),l=1;la||y===qv||yi||w&&s(m))}function h(m,w){var T=m[0],y=m[1];if(T===qv||Ta||y===qv||yi)return!1;var k=t.length,S=t[0][0],x=t[0][1],M=0,d,_,g,c,A;for(d=1;dMath.max(_,S)||y>Math.max(g,x)))if(yl||Math.abs(gy(h,s))>a)return!0;return!1};Ov.filter=function(r,t){var n=[r[0]],a=0,o=0;function i(u){r.push(u);var s=n.length,f=a;n.splice(o+1);for(var h=f+1;h1){var l=r.pop();i(l)}return{addPt:i,raw:r,filtered:n}}});var sk=de((Qhe,lk)=>{"use strict";lk.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var Lk=de(($he,Ek)=>{"use strict";var uk=nk(),vQ=ik(),a0=Cr(),dQ=mt().dashStyle,t0=Xr(),pQ=io(),gQ=to().makeEventData,u0=hu(),yQ=u0.freeMode,mQ=u0.rectMode,i0=u0.drawMode,_y=u0.openMode,wy=u0.selectMode,fk=Wo(),ck=Gf(),gk=Tv(),yk=Io().clearOutline,mk=Go(),my=mk.handleEllipse,xQ=mk.readPaths,bQ=bv().newShapes,_Q=G2(),wQ=py().activateLastSelection,Uv=ir(),MQ=Uv.sorterAsc,xk=yy(),n0=$c(),za=jt().getFromId,TQ=hv(),AQ=Fv().redrawReglTraces,Hv=sk(),qi=Hv.MINSELECT,kQ=xk.filter,My=xk.tester,Ty=gv(),hk=Ty.p2r,SQ=Ty.axValue,CQ=Ty.getTransform;function Ay(e){return e.subplot!==void 0}function EQ(e,r,t,n,a){var o=!Ay(n),i=yQ(a),l=mQ(a),u=_y(a),s=i0(a),f=wy(a),h=a==="drawline",p=a==="drawcircle",b=h||p,m=n.gd,w=m._fullLayout,T=f&&w.newselection.mode==="immediate"&&o,y=w._zoomlayer,k=n.element.getBoundingClientRect(),S=n.plotinfo,x=CQ(S),M=r-k.left,d=t-k.top;w._calcInverseTransform(m);var _=Uv.apply3DTransform(w._invTransform)(M,d);M=_[0],d=_[1];var g=w._invScaleX,c=w._invScaleY,A=M,v=d,D="M"+M+","+d,E=n.xaxes[0],R=n.yaxes[0],N=E._length,F=R._length,I=e.altKey&&!(i0(a)&&u),L,P,O,U,X,$,j;_k(e,m,n),i&&(L=kQ([[M,d]],Hv.BENDPX));var Y=y.selectAll("path.select-outline-"+S.id).data([1]),q=s?w.newshape:w.newselection;s&&(n.hasText=q.label.text||q.label.texttemplate);var K=s&&!u?q.fillcolor:"rgba(0,0,0,0)",ne=q.line.color||(o?t0.contrast(m._fullLayout.plot_bgcolor):"#7f7f7f");Y.enter().append("path").attr("class","select-outline select-outline-"+S.id).style({opacity:s?q.opacity/2:1,"stroke-dasharray":dQ(q.line.dash,q.line.width),"stroke-width":q.line.width+"px","shape-rendering":"crispEdges"}).call(t0.stroke,ne).call(t0.fill,K).attr("fill-rule","evenodd").classed("cursor-move",!!s).attr("transform",x).attr("d",D+"Z");var Q=y.append("path").attr("class","zoombox-corners").style({fill:t0.background,stroke:t0.defaultLine,"stroke-width":1}).attr("transform",x).attr("d","M0,0Z");if(s&&n.hasText){var oe=y.select(".label-temp");oe.empty()&&(oe=y.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var re=w._uid+Hv.SELECTID,H=[],ee=Vv(m,n.xaxes,n.yaxes,n.subplot);T&&!e.shiftKey&&(n._clearSubplotSelections=function(){if(o){var te=E._id,ue=R._id;kk(m,te,ue,ee);for(var ve=(m.layout||{}).selections||[],ke=[],Se=!1,he=0;he=0){m._fullLayout._deactivateShape(m);return}if(!s){var ve=w.clickmode;n0.done(re).then(function(){if(n0.clear(re),te===2){for(Y.remove(),X=0;X-1&&bk(ue,m,n.xaxes,n.yaxes,n.subplot,n,Y),ve==="event"&&s0(m,void 0);pQ.click(m,ue,S.id)}).catch(Uv.error)}},n.doneFn=function(){Q.remove(),n0.done(re).then(function(){n0.clear(re),!T&&U&&n.selectionDefs&&(U.subtract=I,n.selectionDefs.push(U),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,O)),(T||s)&&o0(n,T),n.doneFnCompleted&&n.doneFnCompleted(H),f&&s0(m,j)}).catch(Uv.error)}}function bk(e,r,t,n,a,o,i){var l=r._hoverdata,u=r._fullLayout,s=u.clickmode,f=s.indexOf("event")>-1,h=[],p,b,m,w,T,y,k,S,x,M;if(IQ(l)){_k(e,r,o),p=Vv(r,t,n,a);var d=FQ(l,p),_=d.pointNumbers.length>0;if(_?NQ(p,d):zQ(p)&&(k=dk(d))){for(i&&i.remove(),M=0;M=0}function PQ(e){return e._fullLayout._activeSelectionIndex>=0}function o0(e,r){var t=e.dragmode,n=e.plotinfo,a=e.gd;RQ(a)&&a._fullLayout._deactivateShape(a),PQ(a)&&a._fullLayout._deactivateSelection(a);var o=a._fullLayout,i=o._zoomlayer,l=i0(t),u=wy(t);if(l||u){var s=i.selectAll(".select-outline-"+n.id);if(s&&a._fullLayout._outlining){var f;l&&(f=bQ(s,e)),f&&a0.call("_guiRelayout",a,{shapes:f});var h;u&&!Ay(e)&&(h=_Q(s,e)),h&&(a._fullLayout._noEmitSelectedAtStart=!0,a0.call("_guiRelayout",a,{selections:h}).then(function(){r&&wQ(a)})),a._fullLayout._outlining=!1}}n.selection={},n.selection.selectionDefs=e.selectionDefs=[],n.selection.mergedPolygons=e.mergedPolygons=[]}function vk(e){return e._id}function Vv(e,r,t,n){if(!e.calcdata)return[];var a=[],o=r.map(vk),i=t.map(vk),l,u,s;for(s=0;s0,o=a?n[0]:t;return r.selectedpoints?r.selectedpoints.indexOf(o)>-1:!1}function NQ(e,r){var t=[],n,a,o,i;for(i=0;i0&&t.push(n);if(t.length===1&&(o=t[0]===r.searchInfo,o&&(a=r.searchInfo.cd[0].trace,a.selectedpoints.length===r.pointNumbers.length))){for(i=0;i1||(r+=n.selectedpoints.length,r>1)))return!1;return r===1}function l0(e,r,t){var n;for(n=0;n-1&&r;if(!i&&r){var te=pk(e,!0);if(te.length){var ue=te[0].xref,ve=te[0].yref;if(ue&&ve){var ke=Sk(te),Se=Ck([za(e,ue,"x"),za(e,ve,"y")]);Se(H,ke)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:V&&s0(e,H),p._reselect=!1}if(!i&&p._deselect){var he=p._deselect;l=he.xref,u=he.yref,BQ(l,u,f)||kk(e,l,u,n),V&&(H.points.length?s0(e,H):Cy(e)),p._deselect=!1}return{eventData:H,selectionTesters:t}}function OQ(e){var r=e.calcdata;if(r)for(var t=0;t{"use strict";Dk.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var f0=de((eve,Rk)=>{"use strict";Rk.exports={axisRefDescription:function(e,r,t){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",r,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",r,"("+t+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",r,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",r,"and the",t,"of the domain of the","second",e,"axis."].join(" ")}}});var bu=de((tve,Fk)=>{"use strict";var Pk=Ey(),Ik=kn(),Gv=_n(),YQ=yt().templatedArray,rve=f0();Fk.exports=YQ("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:Ik({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:Pk.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:Pk.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",Gv.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",Gv.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",Gv.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",Gv.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:Ik({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Yv=de((nve,Nk)=>{"use strict";Nk.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var qk=de((ave,zk)=>{"use strict";zk.exports=function(r){return{valType:"color",editType:"style",anim:!0}}});var jl=de((ive,Yk)=>{"use strict";var Ok=ro().axisHoverFormat,{hovertemplateAttrs:WQ,texttemplateAttrs:XQ,templatefallbackAttrs:Bk}=Qa(),Uk=ri(),ZQ=kn(),JQ=Ao().dash,KQ=Ao().pattern,QQ=mt(),$Q=Yv(),Wv=Tt().extendFlat,jQ=qk();function Hk(e){return{valType:"any",dflt:0,editType:"calc"}}function Vk(e){return{valType:"any",editType:"calc"}}function Gk(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}Yk.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:Hk("x"),yperiod:Hk("y"),xperiod0:Vk("x0"),yperiod0:Vk("y0"),xperiodalignment:Gk("x"),yperiodalignment:Gk("y"),xhoverformat:Ok("x"),yhoverformat:Ok("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:XQ(),texttemplatefallback:Bk({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:WQ({},{keys:$Q.eventDataKeys}),hovertemplatefallback:Bk(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:Wv({},JQ,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:jQ(!0),fillgradient:Wv({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:KQ,marker:Wv({symbol:{valType:"enumerated",values:QQ.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:Wv({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},Uk("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},Uk("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:ZQ({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var Ly=de((lve,Zk)=>{"use strict";var Wk=bu(),Xk=jl().line,e$=Ao().dash,Xv=Tt().extendFlat,r$=zn().overrideAll,t$=yt().templatedArray,ove=f0();Zk.exports=r$(t$("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:Xv({},Wk.xref,{}),yref:Xv({},Wk.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:Xk.color,width:Xv({},Xk.width,{min:1,dflt:1}),dash:Xv({},e$,{dflt:"dot"})}}),"arraydraw","from-root")});var $k=de((sve,Qk)=>{"use strict";var Jk=ir(),Zv=Lt(),n$=ti(),a$=Ly(),Kk=Wo();Qk.exports=function(r,t){n$(r,t,{name:"selections",handleItemDefaults:i$});for(var n=t.selections,a=0;a{"use strict";jk.exports=function(r,t,n){n("newselection.mode");var a=n("newselection.line.width");a&&(n("newselection.line.color"),n("newselection.line.dash")),n("activeselection.fillcolor"),n("activeselection.opacity")}});var c0=de((fve,nS)=>{"use strict";var o$=Cr(),rS=ir(),tS=jt();nS.exports=function(r){return function(n,a){var o=n[r];if(Array.isArray(o))for(var i=o$.subplotsRegistry.cartesian,l=i.idRegex,u=a._subplots,s=u.xaxis,f=u.yaxis,h=u.cartesian,p=a._has("cartesian"),b=0;b{"use strict";var aS=py(),h0=Lk();iS.exports={moduleType:"component",name:"selections",layoutAttributes:Ly(),supplyLayoutDefaults:$k(),supplyDrawNewSelectionDefaults:eS(),includeBasePlot:c0()("selections"),draw:aS.draw,drawOne:aS.drawOne,reselect:h0.reselect,prepSelect:h0.prepSelect,clearOutline:h0.clearOutline,clearSelectionsCache:h0.clearSelectionsCache,selectOnClick:h0.selectOnClick}});var kS=de((hve,AS)=>{"use strict";var Fy=it(),qa=ir(),oS=qa.numberFormat,l$=ka(),s$=Qh(),Jv=Cr(),pS=qa.strTranslate,u$=Wn(),lS=Xr(),Zo=mt(),f$=io(),sS=Lt(),c$=Vo(),h$=ai(),gS=hu(),Kv=gS.selectingOrDrawing,v$=gS.freeMode,d$=qn().FROM_TL,p$=hv(),g$=Fv().redrawReglTraces,y$=on(),Ry=jt().getFromId,m$=_u().prepSelect,x$=_u().clearOutline,b$=_u().selectOnClick,Dy=ly(),Ny=_n(),uS=Ny.MINDRAG,Xn=Ny.MINZOOM,fS=!0;function _$(e,r,t,n,a,o,i,l){var u=e._fullLayout._zoomlayer,s=i+l==="nsew",f=(i+l).length===1,h,p,b,m,w,T,y,k,S,x,M,d,_,g,c,A,v,D,E,R,N,F,I;t+=r.yaxis._shift;function L(){if(h=r.xaxis,p=r.yaxis,S=h._length,x=p._length,y=h._offset,k=p._offset,b={},b[h._id]=h,m={},m[p._id]=p,i&&l)for(var pe=r.overlays,ce=0;ce=0){xe._fullLayout._deactivateShape(xe);return}var Le=xe._fullLayout.clickmode;if(Iy(xe),pe===2&&!f&&Ue(),s)Le.indexOf("select")>-1&&b$(ce,xe,w,T,r.id,U),Le.indexOf("event")>-1&&f$.click(xe,ce,r.id);else if(pe===1&&f){var qe=i?p:h,ze=i==="s"||l==="w"?0:1,$e=qe._name+".range["+ze+"]",Ve=w$(qe,ze),Be="left",Ye="middle";if(qe.fixedrange)return;i?(Ye=i==="n"?"top":"bottom",qe.side==="right"&&(Be="right")):l==="e"&&(Be="right"),xe._context.showAxisRangeEntryBoxes&&Fy.select(O).call(u$.makeEditable,{gd:xe,immediate:!0,background:xe._fullLayout.paper_bgcolor,text:String(Ve),fill:qe.tickfont?qe.tickfont.color:"#444",horizontalAlign:Be,verticalAlign:Ye}).on("edit",function(Me){var Re=qe.d2r(Me);Re!==void 0&&Jv.call("_guiRelayout",xe,$e,Re)})}}h$.init(U);var j,Y,q,K,ne,Q,oe,re,H,ee;function V(pe,ce,xe){var Le=O.getBoundingClientRect();j=ce-Le.left,Y=xe-Le.top,e._fullLayout._calcInverseTransform(e);var qe=qa.apply3DTransform(e._fullLayout._invTransform)(j,Y);j=qe[0],Y=qe[1],q={l:j,r:j,w:0,t:Y,b:Y,h:0},K=e._hmpixcount?e._hmlumcount/e._hmpixcount:l$(e._fullLayout.plot_bgcolor).getLuminance(),ne="M0,0H"+S+"V"+x+"H0V0",Q=!1,oe="xy",ee=!1,re=xS(u,K,y,k,ne),H=bS(u,y,k)}function te(pe,ce){if(e._transitioningWithDuration)return!1;var xe=Math.max(0,Math.min(S,F*pe+j)),Le=Math.max(0,Math.min(x,I*ce+Y)),qe=Math.abs(xe-j),ze=Math.abs(Le-Y);q.l=Math.min(j,xe),q.r=Math.max(j,xe),q.t=Math.min(Y,Le),q.b=Math.max(Y,Le);function $e(){oe="",q.r=q.l,q.t=q.b,H.attr("d","M0,0Z")}if(M.isSubplotConstrained)qe>Xn||ze>Xn?(oe="xy",qe/S>ze/x?(ze=qe*x/S,Y>Le?q.t=Y-ze:q.b=Y+ze):(qe=ze*S/x,j>xe?q.l=j-qe:q.r=j+qe),H.attr("d",Qv(q))):$e();else if(d.isSubplotConstrained)if(qe>Xn||ze>Xn){oe="xy";var Ve=Math.min(q.l/S,(x-q.b)/x),Be=Math.max(q.r/S,(x-q.t)/x);q.l=Ve*S,q.r=Be*S,q.b=(1-Ve)*x,q.t=(1-Be)*x,H.attr("d",Qv(q))}else $e();else!g||ze0){var Me;if(d.isSubplotConstrained||!_&&g.length===1){for(Me=0;Me1&&($e.maxallowed!==void 0&&A===($e.range[0]<$e.range[1]?"e":"w")||$e.minallowed!==void 0&&A===($e.range[0]<$e.range[1]?"w":"e"))&&(ar=1,J=0),Ke?(se=Re,ae=i||d.isSubplotConstrained?pe[1]:ye(Ve,se)):d.yaHash[Ve._id]?(se=Re,ae=pe[1]*Ve._length/p._length):d.xaHash[Ve._id]?(se=Me,ae=_==="ew"?-pe[0]*Ve._length/h._length:ye(Ve,se,{e:"right",w:"left"}[_])):(se=Te(Ve,Me,Re),ae=me(Ve,se)),se>1&&(Ve.maxallowed!==void 0&&v===(Ve.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function T$(e,r,t){return e?e==="nsew"?t?"":r==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function xS(e,r,t,n,a){return e.append("path").attr("class","zoombox").style({fill:r>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",pS(t,n)).attr("d",a+"Z")}function bS(e,r,t){return e.append("path").attr("class","zoombox-corners").style({fill:lS.background,stroke:lS.defaultLine,"stroke-width":1,opacity:0}).attr("transform",pS(r,t)).attr("d","M0,0Z")}function _S(e,r,t,n,a,o){e.attr("d",n+"M"+t.l+","+t.t+"v"+t.h+"h"+t.w+"v-"+t.h+"h-"+t.w+"Z"),wS(e,r,a,o)}function wS(e,r,t,n){t||(e.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),r.transition().style("opacity",1).duration(200))}function Iy(e){Fy.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function MS(e){fS&&e.data&&e._context.showTips&&(qa.notifier(qa._(e,"Double-click to zoom back out"),"long"),fS=!1)}function A$(e,r){return"M"+(e.l-.5)+","+(r-Xn-.5)+"h-3v"+(2*Xn+1)+"h3ZM"+(e.r+.5)+","+(r-Xn-.5)+"h3v"+(2*Xn+1)+"h-3Z"}function k$(e,r){return"M"+(r-Xn-.5)+","+(e.t-.5)+"v-3h"+(2*Xn+1)+"v3ZM"+(r-Xn-.5)+","+(e.b+.5)+"v3h"+(2*Xn+1)+"v-3Z"}function Qv(e){var r=Math.floor(Math.min(e.b-e.t,e.r-e.l,Xn)/2);return"M"+(e.l-3.5)+","+(e.t-.5+r)+"h3v"+-r+"h"+r+"v-3h-"+(r+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+r)+"h-3v"+-r+"h"+-r+"v-3h"+(r+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-r)+"h-3v"+r+"h"+-r+"v3h"+(r+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-r)+"h3v"+r+"h"+r+"v3h-"+(r+3)+"Z"}function vS(e,r,t,n,a){for(var o=!1,i={},l={},u,s,f,h,p=(a||{}).xaHash,b=(a||{}).yaHash,m=0;m{"use strict";var S$=it(),$v=io(),C$=ai(),E$=Vo(),li=kS().makeDragBox,fn=_n().DRAGGERSIZE;jv.initInteractions=function(r){var t=r._fullLayout;if(r._context.staticPlot){S$.select(r).selectAll(".drag").remove();return}if(!(!t._has("cartesian")&&!t._has("splom"))){var n=Object.keys(t._plots||{}).sort(function(o,i){if((t._plots[o].mainplot&&!0)===(t._plots[i].mainplot&&!0)){var l=o.split("y"),u=i.split("y");return l[0]===u[0]?Number(l[1]||1)-Number(u[1]||1):Number(l[0]||1)-Number(u[0]||1)}return t._plots[o].mainplot?1:-1});n.forEach(function(o){var i=t._plots[o],l=i.xaxis,u=i.yaxis;if(!i.mainplot){var s=li(r,i,l._offset,u._offset,l._length,u._length,"ns","ew");s.onmousemove=function(p){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===o&&r._fullLayout._plots[o]&&$v.hover(r,p,o)},$v.hover(r,p,o),r._fullLayout._lasthover=s,r._fullLayout._hoversubplot=o},s.onmouseout=function(p){r._dragging||(r._fullLayout._hoversubplot=null,C$.unhover(r,p))},r._context.showAxisDragHandles&&(li(r,i,l._offset-fn,u._offset-fn,fn,fn,"n","w"),li(r,i,l._offset+l._length,u._offset-fn,fn,fn,"n","e"),li(r,i,l._offset-fn,u._offset+u._length,fn,fn,"s","w"),li(r,i,l._offset+l._length,u._offset+u._length,fn,fn,"s","e"))}if(r._context.showAxisDragHandles){if(o===l._mainSubplot){var f=l._mainLinePosition;l.side==="top"&&(f-=fn),li(r,i,l._offset+l._length*.1,f,l._length*.8,fn,"","ew"),li(r,i,l._offset,f,l._length*.1,fn,"","w"),li(r,i,l._offset+l._length*.9,f,l._length*.1,fn,"","e")}if(o===u._mainSubplot){var h=u._mainLinePosition;u.side!=="right"&&(h-=fn),li(r,i,h,u._offset+u._length*.1,fn,u._length*.8,"ns",""),li(r,i,h,u._offset+u._length*.9,fn,u._length*.1,"s",""),li(r,i,h,u._offset,fn,u._length*.1,"n","")}}});var a=t._hoverlayer.node();a.onmousemove=function(o){o.target=r._fullLayout._lasthover,$v.hover(r,o,t._hoversubplot)},a.onclick=function(o){o.target=r._fullLayout._lasthover,$v.click(r,o)},a.onmousedown=function(o){r._fullLayout._lasthover.onmousedown(o)},jv.updateFx(r)}};jv.updateFx=function(e){var r=e._fullLayout,t=r.dragmode==="pan"?"move":"crosshair";E$(r._draggers,t)}});var ES=de((dve,CS)=>{"use strict";var SS=Cr();CS.exports=function(r){for(var t=SS.layoutArrayContainers,n=SS.layoutArrayRegexes,a=r.split("[")[0],o,i,l=0;l{"use strict";var L$=wo(),qy=qc(),v0=kl(),D$=Ip().sorterAsc,Oy=Cr();d0.containerArrayMatch=ES();var R$=d0.isAddVal=function(r){return r==="add"||L$(r)},LS=d0.isRemoveVal=function(r){return r===null||r==="remove"};d0.applyContainerArrayChanges=function(r,t,n,a,o){var i=t.astr,l=Oy.getComponentMethod(i,"supplyLayoutDefaults"),u=Oy.getComponentMethod(i,"draw"),s=Oy.getComponentMethod(i,"drawOne"),f=a.replot||a.recalc||l===qy||u===qy,h=r.layout,p=r._fullLayout;if(n[""]){Object.keys(n).length>1&&v0.warn("Full array edits are incompatible with other edits",i);var b=n[""][""];if(LS(b))t.set(null);else if(Array.isArray(b))t.set(b);else return v0.warn("Unrecognized full array edit value",i,b),!0;return f?!1:(l(h,p),u(r),!0)}var m=Object.keys(n).map(Number).sort(D$),w=t.get(),T=w||[],y=o(p,i).get(),k=[],S=-1,x=T.length,M,d,_,g,c,A,v,D;for(M=0;MT.length-(v?0:1)){v0.warn("index out of range",i,_);continue}if(A!==void 0)c.length>1&&v0.warn("Insertion & removal are incompatible with edits to the same index.",i,_),LS(A)?k.push(_):v?(A==="add"&&(A={}),T.splice(_,0,A),y&&y.splice(_,0,{})):v0.warn("Unrecognized full object edit value",i,_,A),S===-1&&(S=_);else for(d=0;d=0;M--)T.splice(k[M],1),y&&y.splice(k[M],1);if(T.length?w||t.set(T):t.set(null),f)return!1;if(l(h,p),s!==qy){var E;if(S===-1)E=m;else{for(x=Math.max(T.length,x),E=[],M=0;M=S));M++)E.push(_);for(M=S;M{"use strict";var FS=nt(),NS=Cr(),Vn=ir(),p0=on(),zS=jt(),qS=Xr(),g0=zS.cleanId,P$=zS.getFromTrace,By=NS.traceIs,I$=["x","y","z"];Oa.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&Vn.log("Clearing previous rejected promises from queue."),e._promises=[]};Oa.cleanLayout=function(e){var r,t;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var n=(p0.subplotsRegistry.cartesian||{}).attrRegex,a=(p0.subplotsRegistry.polar||{}).attrRegex,o=(p0.subplotsRegistry.ternary||{}).attrRegex,i=(p0.subplotsRegistry.gl3d||{}).attrRegex,l=Object.keys(e);for(r=0;r3?(T.x=1.02,T.xanchor="left"):T.x<-2&&(T.x=-.02,T.xanchor="right"),T.y>3?(T.y=1.02,T.yanchor="bottom"):T.y<-2&&(T.y=-.02,T.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),qS.clean(e),e.template&&e.template.layout&&Oa.cleanLayout(e.template.layout),e};function wu(e,r){var t=e[r],n=r.charAt(0);t&&t!=="paper"&&(e[r]=g0(t,n,!0))}Oa.cleanData=function(e){for(var r=0;r0)return e.slice(0,r)}Oa.hasParent=function(e,r){for(var t=IS(r);t;){if(t in e)return!0;t=IS(t)}return!1};Oa.clearAxisTypes=function(e,r,t){for(var n=0;n{let t=(...n)=>n.every(a=>Vn.isPlainObject(a))||n.every(a=>Array.isArray(a));if([e,r].every(n=>Array.isArray(n))){if(e.length!==r.length)return!1;for(let n=0;nVn.isPlainObject(n))){if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let n in e){if(n.startsWith("_"))continue;let a=e[n],o=r[n];if(a!==o&&!(t(a,o)?Uy(a,o):!1))return!1}return!0}return!1};Oa.collectionsAreEqual=Uy});var Xy=de(et=>{"use strict";var n1=it(),z$=nt(),q$=Xp(),dr=ir(),wt=dr.nestedProperty,Gy=Mf(),Zn=gw(),Ba=Cr(),f1=Ys(),Lr=on(),Gn=Lt(),O$=p2(),B$=La(),Hy=mt(),U$=Xr(),H$=zy().initInteractions,V$=Fo(),G$=_u().clearOutline,GS=Al().dfltConfig,r1=DS(),Gt=OS(),ht=Fv(),Jo=zn(),Y$=_n().AX_NAME_PATTERN,Vy=0,BS=5;function W$(e,r,t,n){var a;if(e=dr.getGraphDiv(e),Gy.init(e),dr.isPlainObject(r)){var o=r;r=o.data,t=o.layout,n=o.config,a=o.frames}var i=Gy.triggerHandler(e,"plotly_beforeplot",[r,t,n]);if(i===!1)return Promise.reject();!r&&!t&&!dr.isPlotDiv(e)&&dr.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function l(){if(a)return et.addFrames(e,a)}WS(e,n),t||(t={}),n1.select(e).classed("js-plotly-plot",!0),Hy.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var u=(e.data||[]).length===0&&Array.isArray(r);Array.isArray(r)&&(Gt.cleanData(r),u?e.data=r:e.data.push.apply(e.data,r),e.empty=!1),(!e.layout||u)&&(e.layout=Gt.cleanLayout(t)),Lr.supplyDefaults(e);var s=e._fullLayout,f=s._has("cartesian");s._replotting=!0,(u||s._shouldCreateBgLayer)&&(pj(e),s._shouldCreateBgLayer&&delete s._shouldCreateBgLayer),Hy.initGradients(e),Hy.initPatterns(e),u&&Gn.saveShowSpikeInitial(e);var h=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;h&&Lr.doCalcdata(e);for(var p=0;p=e.data.length||a<-e.data.length)throw new Error(t+" must be valid indices for gd.data.");if(r.indexOf(a,n+1)>-1||a>=0&&r.indexOf(-e.data.length+a)>-1||a<0&&r.indexOf(e.data.length+a)>-1)throw new Error("each index in "+t+" must be unique.")}}function XS(e,r,t){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(r)||(r=[r]),i1(e,r,"currentIndices"),typeof t!="undefined"&&!Array.isArray(t)&&(t=[t]),typeof t!="undefined"&&i1(e,t,"newIndices"),typeof t!="undefined"&&r.length!==t.length)throw new Error("current and new indices must be of equal length.")}function Q$(e,r,t){var n,a;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof r=="undefined")throw new Error("traces must be defined.");for(Array.isArray(r)||(r=[r]),n=0;n=0&&f=0&&f0&&typeof g.parts[v]!="string";)v--;var D=g.parts[v],E=g.parts[v-1]+"."+D,R=g.parts.slice(0,v).join("."),N=wt(e.layout,R).get(),F=wt(n,R).get(),I=g.get();if(c!==void 0){y[_]=c,k[_]=D==="reverse"?c:uo(I);var L=f1.getLayoutValObject(n,g.parts);if(L&&L.impliedEdits&&c!==null)for(var P in L.impliedEdits)S(dr.relativeAttr(_,P),L.impliedEdits[P]);if(["width","height"].indexOf(_)!==-1)if(c){S("autosize",null);var O=_==="height"?"width":"height";S(O,n[O])}else n[_]=e._initialAutoSize[_];else if(_==="autosize")S("width",c?null:n.width),S("height",c?null:n.height);else if(E.match(tC))d(E),wt(n,R+"._inputRange").set(null);else if(E.match(nC)){d(E),wt(n,R+"._inputRange").set(null);var U=wt(n,R).get();U._inputDomain&&(U._input.domain=U._inputDomain.slice())}else E.match(rj)&&wt(n,R+"._inputDomain").set(null);if(D==="type"){M=N;var X=F.type==="linear"&&c==="log",$=F.type==="log"&&c==="linear";if(X||$){if(!M||!M.range)S(R+".autorange",!0);else if(F.autorange)X&&(M.range=M.range[1]>M.range[0]?[1,2]:[2,1]);else{var j=M.range[0],Y=M.range[1];X?(j<=0&&Y<=0&&S(R+".autorange",!0),j<=0?j=Y/1e6:Y<=0&&(Y=j/1e6),S(R+".range[0]",Math.log(j)/Math.LN10),S(R+".range[1]",Math.log(Y)/Math.LN10)):(S(R+".range[0]",Math.pow(10,j)),S(R+".range[1]",Math.pow(10,Y)))}Array.isArray(n._subplots.polar)&&n._subplots.polar.length&&n[g.parts[0]]&&g.parts[1]==="radialaxis"&&delete n[g.parts[0]]._subplot.viewInitial["radialaxis.range"],Ba.getComponentMethod("annotations","convertCoords")(e,F,c,S),Ba.getComponentMethod("images","convertCoords")(e,F,c,S)}else S(R+".autorange",!0),S(R+".range",null);wt(n,R+"._inputRange").set(null)}else if(D.match(Y$)){var q=wt(n,_).get(),K=(c||{}).type;(!K||K==="-")&&(K="linear"),Ba.getComponentMethod("annotations","convertCoords")(e,q,K,S),Ba.getComponentMethod("images","convertCoords")(e,q,K,S)}var ne=r1.containerArrayMatch(_);if(ne){f=ne.array,h=ne.index;var Q=ne.property,oe=L||{editType:"calc"};h!==""&&Q===""&&(r1.isAddVal(c)?k[_]=null:r1.isRemoveVal(c)?k[_]=(wt(t,f).get()||[])[h]:dr.warn("unrecognized full object value",r)),Jo.update(T,oe),s[f]||(s[f]={});var re=s[f][h];re||(re=s[f][h]={}),re[Q]=c,delete r[_]}else D==="reverse"?(N.range?N.range.reverse():(S(R+".autorange",!0),N.range=[1,0]),F.autorange?T.calc=!0:T.plot=!0):(_==="dragmode"&&(c===!1&&I!==!1||c!==!1&&I===!1)||n._has("scatter-like")&&n._has("regl")&&_==="dragmode"&&(c==="lasso"||c==="select")&&!(I==="lasso"||I==="select")?T.plot=!0:L?Jo.update(T,L):T.calc=!0,g.set(c))}}for(f in s){var H=r1.applyContainerArrayChanges(e,o(t,f),s[f],T,o);H||(T.plot=!0)}for(var ee in x){M=Gn.getFromId(e,ee);var V=M&&M._constraintGroup;if(V){T.calc=!0;for(var te in V)x[te]||(Gn.getFromId(e,te)._constraintShrinkable=!0)}}(iC(e)||r.height||r.width)&&(T.plot=!0);var ue=n.shapes;for(h=0;h1;)if(n.pop(),t=wt(r,n.join(".")+".uirevision").get(),t!==void 0)return t;return r.uirevision}function aj(e,r){for(var t=0;t[R,e._ev.listeners(R)]);o=et.newPlot(e,r,t,n).then(()=>{for(let[R,N]of E)N.forEach(F=>e.on(R,F));return et.react(e,r,t,n)})}else{e.data=r||[],Gt.cleanData(e.data),e.layout=t||{},Gt.cleanLayout(e.layout),oj(e.data,e.layout,l,u),Lr.supplyDefaults(e,{skipUpdateCalc:!0});var h=e._fullData,p=e._fullLayout,b=p.datarevision===void 0,m=p.transition,w=uj(e,u,p,b,m),T=w.newDataRevision,y=sj(e,l,h,b,m,T);if(iC(e)&&(w.layoutReplot=!0),y.calc||w.calc){e.calcdata=void 0;for(var k=Object.getOwnPropertyNames(p),S=0;S(f||e.emit("plotly_react",{config:n,data:r,layout:t}),e))}function sj(e,r,t,n,a,o){var i=r.length===t.length;if(!a&&!i)return{fullReplot:!0,calc:!0};var l=Jo.traceFlags();l.arrays={},l.nChanges=0,l.nChangesAnim=0;var u,s;function f(b){var m=f1.getTraceValObject(s,b);return!s._module.animatable&&m.anim&&(m.anim=!1),m}var h={getValObject:f,flags:l,immutable:n,transition:a,newDataRevision:o,gd:e},p={};for(u=0;u=a.length?a[0]:a[s]:a}function l(s){return Array.isArray(o)?s>=o.length?o[0]:o[s]:o}function u(s,f){var h=0;return function(){if(s&&++h===f)return s()}}return new Promise(function(s,f){function h(){if(n._frameQueue.length!==0){for(;n._frameQueue.length;){var D=n._frameQueue.pop();D.onInterrupt&&D.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function p(D){if(D.length!==0){for(var E=0;En._timeToNext&&m()};D()}var T=0;function y(D){return Array.isArray(a)?T>=a.length?D.transitionOpts=a[T]:D.transitionOpts=a[0]:D.transitionOpts=a,T++,D}var k,S,x=[],M=r==null,d=Array.isArray(r),_=!M&&!d&&dr.isPlainObject(r);if(_)x.push({type:"object",data:y(dr.extendFlat({},r))});else if(M||["string","number"].indexOf(typeof r)!==-1)for(k=0;k0&&AA)&&v.push(S);x=v}}x.length>0?p(x):(e.emit("plotly_animated"),s())})}function cj(e,r,t){if(e=dr.getGraphDiv(e),r==null)return Promise.resolve();if(!dr.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var n,a,o,i,l=e._transitionData._frames,u=e._transitionData._frameHash;if(!Array.isArray(r))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+r);var s=l.length+r.length*2,f=[],h={};for(n=r.length-1;n>=0;n--)if(dr.isPlainObject(r[n])){var p=r[n].name,b=(u[p]||h[p]||{}).name,m=r[n].name,w=u[b]||h[b];b&&m&&typeof m=="number"&&w&&Vyg.index?-1:_.index=0;n--){if(a=f[n].frame,typeof a.name=="number"&&dr.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!a.name)for(;u[a.name="frame "+e._transitionData._counter++];);if(u[a.name]){for(o=0;o=0;t--)n=r[t],o.push({type:"delete",index:n}),i.unshift({type:"insert",index:n,value:a[n]});var l=Lr.modifyFrames,u=Lr.modifyFrames,s=[e,i],f=[e,o];return Zn&&Zn.add(e,l,s,u,f),Lr.modifyFrames(e,o)}function vj(e){e=dr.getGraphDiv(e);var r=e._fullLayout||{},t=e._fullData||[];return Lr.cleanPlot([],{},t,r),Lr.purge(e),Gy.purge(e),r._container&&r._container.remove(),delete e._context,e}function dj(e){var r=e._fullLayout,t=e.getBoundingClientRect();if(!dr.equalDomRects(t,r._lastBBox)){var n=r._invTransform=dr.inverseTransformMatrix(dr.getFullTransformMatrix(e));r._invScaleX=Math.sqrt(n[0][0]*n[0][0]+n[0][1]*n[0][1]+n[0][2]*n[0][2]),r._invScaleY=Math.sqrt(n[1][0]*n[1][0]+n[1][1]*n[1][1]+n[1][2]*n[1][2]),r._lastBBox=t}}function pj(e){var r=n1.select(e),t=e._fullLayout;if(t._calcInverseTransform=dj,t._calcInverseTransform(e),t._container=r.selectAll(".plot-container").data([0]),t._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),t._paperdiv=t._container.selectAll(".svg-container").data([0]),t._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),t._glcontainer=t._paperdiv.selectAll(".gl-container").data([{}]),t._glcontainer.enter().append("div").classed("gl-container",!0),t._paperdiv.selectAll(".main-svg").remove(),t._paperdiv.select(".modebar-container").remove(),t._paper=t._paperdiv.insert("svg",":first-child").classed("main-svg",!0),t._toppaper=t._paperdiv.append("svg").classed("main-svg",!0),t._modebardiv=t._paperdiv.append("div"),delete t._modeBar,t._hoverpaper=t._paperdiv.append("svg").classed("main-svg",!0),!t._uid){var n={};n1.selectAll("defs").each(function(){this.id&&(n[this.id.split("-")[1]]=1)}),t._uid=dr.randstr(n)}t._paperdiv.selectAll(".main-svg").attr(V$.svgAttrs),t._defs=t._paper.append("defs").attr("id","defs-"+t._uid),t._clips=t._defs.append("g").classed("clips",!0),t._topdefs=t._toppaper.append("defs").attr("id","topdefs-"+t._uid),t._topclips=t._topdefs.append("g").classed("clips",!0),t._bgLayer=t._paper.append("g").classed("bglayer",!0),t._draggers=t._paper.append("g").classed("draglayer",!0);var a=t._paper.append("g").classed("layer-below",!0);t._imageLowerLayer=a.append("g").classed("imagelayer",!0),t._shapeLowerLayer=a.append("g").classed("shapelayer",!0),t._cartesianlayer=t._paper.append("g").classed("cartesianlayer",!0),t._polarlayer=t._paper.append("g").classed("polarlayer",!0),t._smithlayer=t._paper.append("g").classed("smithlayer",!0),t._ternarylayer=t._paper.append("g").classed("ternarylayer",!0),t._geolayer=t._paper.append("g").classed("geolayer",!0),t._funnelarealayer=t._paper.append("g").classed("funnelarealayer",!0),t._pielayer=t._paper.append("g").classed("pielayer",!0),t._iciclelayer=t._paper.append("g").classed("iciclelayer",!0),t._treemaplayer=t._paper.append("g").classed("treemaplayer",!0),t._sunburstlayer=t._paper.append("g").classed("sunburstlayer",!0),t._indicatorlayer=t._toppaper.append("g").classed("indicatorlayer",!0),t._glimages=t._paper.append("g").classed("glimages",!0);var o=t._toppaper.append("g").classed("layer-above",!0);t._imageUpperLayer=o.append("g").classed("imagelayer",!0),t._shapeUpperLayer=o.append("g").classed("shapelayer",!0),t._selectionLayer=t._toppaper.append("g").classed("selectionlayer",!0),t._infolayer=t._toppaper.append("g").classed("infolayer",!0),t._menulayer=t._toppaper.append("g").classed("menulayer",!0),t._zoomlayer=t._toppaper.append("g").classed("zoomlayer",!0),t._hoverlayer=t._hoverpaper.append("g").classed("hoverlayer",!0),t._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}et.animate=fj;et.addFrames=cj;et.deleteFrames=hj;et.addTraces=$S;et.deleteTraces=jS;et.extendTraces=KS;et.moveTraces=Yy;et.prependTraces=QS;et.newPlot=K$;et._doPlot=W$;et.purge=vj;et.react=lj;et.redraw=J$;et.relayout=y0;et.restyle=o1;et.setPlotConfig=X$;et.update=s1;et._guiRelayout=Wy(y0);et._guiRestyle=Wy(o1);et._guiUpdate=Wy(s1);et._storeDirectGUIEdit=ej});var es=de(Oi=>{"use strict";var gj=Cr();Oi.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Oi.getRedrawFunc=function(e){return function(){gj.getComponentMethod("colorbar","draw")(e)}};Oi.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Oi.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var oC=window.URL||window.webkitURL;Oi.createObjectURL=function(e){return oC.createObjectURL(e)};Oi.revokeObjectURL=function(e){return oC.revokeObjectURL(e)};Oi.createBlob=function(e,r){if(r==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(r==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var t=yj(window.atob(e));return new window.Blob([t],{type:"image/"+r})};Oi.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function yj(e){for(var r=e.length,t=new ArrayBuffer(r),n=new Uint8Array(t),a=0;a{"use strict";var Jy=it(),xve=ir(),mj=mt(),xj=Xr(),bve=Fo(),Zy=/"/g,x0="TOBESTRIPPED",bj=new RegExp('("'+x0+")|("+x0+'")',"g");function _j(e){var r=Jy.select("body").append("div").style({display:"none"}).html(""),t=e.replace(/(&[^;]*;)/gi,function(n){return n==="<"?"<":n==="&rt;"?">":n.indexOf("<")!==-1||n.indexOf(">")!==-1?"":r.html(n).text()});return r.remove(),t}function wj(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}lC.exports=function(r,t,n){var a=r._fullLayout,o=a._paper,i=a._toppaper,l=a.width,u=a.height,s;o.insert("rect",":first-child").call(mj.setRect,0,0,l,u).call(xj.fill,a.paper_bgcolor);var f=a._basePlotModules||[];for(s=0;s{"use strict";var Mj=ir(),Tj=ih().EventEmitter,b0=es();function Aj(e){var r=e.emitter||new Tj,t=new Promise(function(n,a){var o=window.Image,i=e.svg,l=e.format||"png",u=e.canvas,s=e.scale||1,f=e.width||300,h=e.height||150,p=s*f,b=s*h,m=u.getContext("2d",{willReadFrequently:!0}),w=new o,T,y;l==="svg"||Mj.isSafari()?y=b0.encodeSVG(i):(T=b0.createBlob(i,"svg"),y=b0.createObjectURL(T)),u.width=p,u.height=b,w.onload=function(){var k;switch(T=null,b0.revokeObjectURL(y),l!=="svg"&&m.drawImage(w,0,0,p,b),l){case"jpeg":k=u.toDataURL("image/jpeg");break;case"png":k=u.toDataURL("image/png");break;case"webp":k=u.toDataURL("image/webp");break;case"svg":k=y;break;default:var S="Image format is not jpeg, png, svg or webp.";if(a(new Error(S)),!e.promise)return r.emit("error",S)}n(k),e.promise||r.emit("success",k)},w.onerror=function(k){if(T=null,b0.revokeObjectURL(y),a(k),!e.promise)return r.emit("error",k)},w.src=y});return e.promise?t:r}sC.exports=Aj});var Qy=de((Mve,cC)=>{"use strict";var uC=nt(),fC=Xy(),kj=on(),Bi=ir(),_0=es(),Sj=h1(),Cj=v1(),Ej=_c().version,Ky={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function Lj(e,r){r=r||{};var t,n,a,o;Bi.isPlainObject(e)?(t=e.data||[],n=e.layout||{},a=e.config||{},o={}):(e=Bi.getGraphDiv(e),t=Bi.extendDeep([],e.data),n=Bi.extendDeep({},e.layout),a=e._context,o=e._fullLayout||{});function i(d){return!(d in r)||Bi.validate(r[d],Ky[d])}if(!i("width")&&r.width!==null||!i("height")&&r.height!==null)throw new Error("Height and width should be pixel values.");if(!i("format"))throw new Error("Export format is not "+Bi.join2(Ky.format.values,", "," or ")+".");var l={};function u(d,_){return Bi.coerce(r,l,Ky,d,_)}var s=u("format"),f=u("width"),h=u("height"),p=u("scale"),b=u("setBackground"),m=u("imageDataOnly"),w=document.createElement("div");w.style.position="absolute",w.style.left="-5000px",document.body.appendChild(w);var T=Bi.extendFlat({},n);f?T.width=f:r.width===null&&uC(o.width)&&(T.width=o.width),h?T.height=h:r.height===null&&uC(o.height)&&(T.height=o.height);var y=Bi.extendFlat({},a,{_exportedPlot:!0,staticPlot:!0,setBackground:b}),k=_0.getRedrawFunc(w);function S(){return new Promise(function(d){setTimeout(d,_0.getDelay(w._fullLayout))})}function x(){return new Promise(function(d,_){var g=Sj(w,s,p),c=w._fullLayout.width,A=w._fullLayout.height;function v(){fC.purge(w),document.body.removeChild(w)}if(s==="full-json"){var D=kj.graphJson(w,!1,"keepdata","object",!0,!0);return D.version=Ej,D=JSON.stringify(D),v(),d(m?D:_0.encodeJSON(D))}if(v(),s==="svg")return d(m?g:_0.encodeSVG(g));var E=document.createElement("canvas");E.id=Bi.randstr(),Cj({format:s,width:c,height:A,scale:p,canvas:E,svg:g,promise:!0}).then(d).catch(_)})}function M(d){return m?d.replace(_0.IMAGE_URL_PREFIX,""):d}return new Promise(function(d,_){fC.newPlot(w,t,T,y).then(k).then(S).then(x).then(function(g){d(M(g))}).catch(function(g){_(g)})})}cC.exports=Lj});var dC=de((Tve,vC)=>{"use strict";var Ua=ir(),Dj=on(),Rj=Ys(),Pj=Al().dfltConfig,si=Ua.isPlainObject,ts=Array.isArray,$y=Ua.isArrayOrTypedArray;vC.exports=function(r,t){r===void 0&&(r=[]),t===void 0&&(t={});var n=Rj.get(),a=[],o={_context:Ua.extendFlat({},Pj)},i,l;ts(r)?(o.data=Ua.extendDeep([],r),i=r):(o.data=[],i=[],a.push(cn("array","data"))),si(t)?(o.layout=Ua.extendDeep({},t),l=t):(o.layout={},l={},arguments.length>1&&a.push(cn("object","layout"))),Dj.supplyDefaults(o);for(var u=o._fullData,s=i.length,f=0;fh.length&&n.push(cn("unused",a,s.concat(h.length)));var y=h.length,k=Array.isArray(T);k&&(y=Math.min(y,T.length));var S,x,M,d,_;if(p.dimensions===2)for(x=0;xh[x].length&&n.push(cn("unused",a,s.concat(x,h[x].length)));var g=h[x].length;for(S=0;S<(k?Math.min(g,T[x].length):g);S++)M=k?T[x][S]:T,d=f[x][S],_=h[x][S],Ua.validate(d,M)?_!==d&&_!==+d&&n.push(cn("dynamic",a,s.concat(x,S),d,_)):n.push(cn("value",a,s.concat(x,S),d))}else n.push(cn("array",a,s.concat(x),f[x]));else for(x=0;x{"use strict";var Bj=ir(),p1=es();function Uj(e,r,t){var n=document.createElement("a"),a="download"in n,o=new Promise(function(i,l){var u,s;if(a)return u=p1.createBlob(e,t),s=p1.createObjectURL(u),n.href=s,n.download=r,document.body.appendChild(n),n.click(),document.body.removeChild(n),p1.revokeObjectURL(s),u=null,i(r);if(Bj.isSafari()){var f=t==="svg"?",":";base64,";return p1.octetStream(f+encodeURIComponent(e)),i(r)}l(new Error("download error"))});return o}pC.exports=Uj});var jy=de((Sve,mC)=>{"use strict";var yC=ir(),Hj=Qy(),Vj=gC(),kve=es();function Gj(e,r){var t;return yC.isPlainObject(e)||(t=yC.getGraphDiv(e)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(n,a){t&&t._snapshotInProgress&&a(new Error("Snapshotting already in progress.")),t&&(t._snapshotInProgress=!0);var o=Hj(e,r),i=r.filename||e.fn||"newplot";i+="."+r.format.replace("-","."),o.then(function(l){return t&&(t._snapshotInProgress=!1),Vj(l,i,r.format)}).then(function(l){n(l)}).catch(function(l){t&&(t._snapshotInProgress=!1),a(l)})})}mC.exports=Gj});var MC=de(em=>{"use strict";var fa=ir(),ca=fa.isPlainObject,xC=Ys(),bC=on(),Yj=Sn(),_C=yt(),wC=Al().dfltConfig;em.makeTemplate=function(e){e=fa.isPlainObject(e)?e:fa.getGraphDiv(e),e=fa.extendDeep({_context:wC},{data:e.data,layout:e.layout}),bC.supplyDefaults(e);var r=e.data||[],t=e.layout||{};t._basePlotModules=e._fullLayout._basePlotModules,t._modules=e._fullLayout._modules;var n={data:{},layout:{}};r.forEach(function(b){var m={};w0(b,m,Xj.bind(null,b));var w=fa.coerce(b,{},Yj,"type"),T=n.data[w];T||(T=n.data[w]=[]),T.push(m)}),w0(t,n.layout,Wj.bind(null,t)),delete n.layout.template;var a=t.template;if(ca(a)){var o=a.layout,i,l,u,s,f,h;ca(o)&&g1(o,n.layout);var p=a.data;if(ca(p)){for(l in n.data)if(u=p[l],Array.isArray(u)){for(f=n.data[l],h=f.length,s=u.length,i=0;iy?i.push({code:"unused",traceType:b,templateCount:T,dataCount:y}):y>T&&i.push({code:"reused",traceType:b,templateCount:T,dataCount:y})}}function k(S,x){for(var M in S)if(M.charAt(0)!=="_"){var d=S[M],_=Ha(S,M,x);ca(d)?(Array.isArray(S)&&d._template===!1&&d.templateitemname&&i.push({code:"missing",path:_,templateitemname:d.templateitemname}),k(d,_)):Array.isArray(d)&&Zj(d)&&k(d,_)}}if(k({data:u,layout:l},""),i.length)return i.map(Jj)};function Zj(e){for(var r=0;r{"use strict";var rn=Xy();Ct._doPlot=rn._doPlot;Ct.newPlot=rn.newPlot;Ct.restyle=rn.restyle;Ct.relayout=rn.relayout;Ct.redraw=rn.redraw;Ct.update=rn.update;Ct._guiRestyle=rn._guiRestyle;Ct._guiRelayout=rn._guiRelayout;Ct._guiUpdate=rn._guiUpdate;Ct._storeDirectGUIEdit=rn._storeDirectGUIEdit;Ct.react=rn.react;Ct.extendTraces=rn.extendTraces;Ct.prependTraces=rn.prependTraces;Ct.addTraces=rn.addTraces;Ct.deleteTraces=rn.deleteTraces;Ct.moveTraces=rn.moveTraces;Ct.purge=rn.purge;Ct.addFrames=rn.addFrames;Ct.deleteFrames=rn.deleteFrames;Ct.animate=rn.animate;Ct.setPlotConfig=rn.setPlotConfig;var Kj=pf().getGraphDiv,Qj=Cv().eraseActiveShape;Ct.deleteActiveShape=function(e){return Qj(Kj(e))};Ct.toImage=Qy();Ct.validate=dC();Ct.downloadImage=jy();var TC=MC();Ct.makeTemplate=TC.makeTemplate;Ct.validateTemplate=TC.validateTemplate});var SC=de((Lve,kC)=>{"use strict";var rm=ir(),$j=Cr();kC.exports=function(r,t,n,a){var o=a("x"),i=a("y"),l,u=$j.getComponentMethod("calendars","handleTraceDefaults");if(u(r,t,["x","y"],n),o){var s=rm.minRowLength(o);i?l=Math.min(s,rm.minRowLength(i)):(l=s,a("y0"),a("dy"))}else{if(!i)return 0;l=rm.minRowLength(i),a("x0"),a("dx")}return t._length=l,l}});var DC=de((Dve,LC)=>{"use strict";var CC=ir().dateTick0,jj=nn(),eee=jj.ONEWEEK;function EC(e,r){return e%eee===0?CC(r,1):CC(r,0)}LC.exports=function(r,t,n,a,o){if(o||(o={x:!0,y:!0}),o.x){var i=a("xperiod");i&&(a("xperiod0",EC(i,t.xcalendar)),a("xperiodalignment"))}if(o.y){var l=a("yperiod");l&&(a("yperiod0",EC(l,t.ycalendar)),a("yperiodalignment"))}}});var IC=de((Rve,PC)=>{"use strict";var RC=["orientation","groupnorm","stackgaps"];PC.exports=function(r,t,n,a){var o=n._scatterStackOpts,i=a("stackgroup");if(i){var l=t.xaxis+t.yaxis,u=o[l];u||(u=o[l]={});var s=u[i],f=!1;s?s.traces.push(t):(s=u[i]={traceIndices:[],traces:[t]},f=!0);for(var h={orientation:t.x&&!t.y?"h":"v"},p=0;p{"use strict";var FC=Xr(),NC=Si().hasColorscale,zC=Ei(),ree=oa();qC.exports=function(r,t,n,a,o,i){var l=ree.isBubble(r),u=(r.line||{}).color,s;if(i=i||{},u&&(n=u),o("marker.symbol"),o("marker.opacity",l?.7:1),o("marker.size"),i.noAngle||(o("marker.angle"),i.noAngleRef||o("marker.angleref"),i.noStandOff||o("marker.standoff")),o("marker.color",n),NC(r,"marker")&&zC(r,t,a,o,{prefix:"marker.",cLetter:"c"}),i.noSelect||(o("selected.marker.color"),o("unselected.marker.color"),o("selected.marker.size"),o("unselected.marker.size")),i.noLine||(u&&!Array.isArray(u)&&t.marker.color!==u?s=u:l?s=FC.background:s=FC.defaultLine,o("marker.line.color",s),NC(r,"marker.line")&&zC(r,t,a,o,{prefix:"marker.line.",cLetter:"c"}),o("marker.line.width",l?1:0)),l&&(o("marker.sizeref"),o("marker.sizemin"),o("marker.sizemode")),i.gradient){var f=o("marker.gradient.type");f!=="none"&&o("marker.gradient.color")}}});var nm=de((Ive,OC)=>{"use strict";var tee=ir().isArrayOrTypedArray,nee=Si().hasColorscale,aee=Ei();OC.exports=function(r,t,n,a,o,i){i||(i={});var l=(r.marker||{}).color;if(l&&l._inputArray&&(l=l._inputArray),o("line.color",n),nee(r,"line"))aee(r,t,a,o,{prefix:"line.",cLetter:"c"});else{var u=(tee(l)?!1:l)||n;o("line.color",u)}o("line.width"),i.noDash||o("line.dash"),i.backoff&&o("line.backoff")}});var UC=de((Fve,BC)=>{"use strict";BC.exports=function(r,t,n){var a=n("line.shape");a==="spline"&&n("line.smoothing")}});var am=de((Nve,HC)=>{"use strict";var iee=ir();HC.exports=function(e,r,t,n,a){a=a||{},n("textposition"),iee.coerceFont(n,"textfont",a.font||t.font,a),a.noSelect||(n("selected.textfont.color"),n("unselected.textfont.color"))}});var YC=de((zve,GC)=>{"use strict";var m1=Xr(),VC=ir().isArrayOrTypedArray;function oee(e){for(var r=m1.interpolate(e[0][1],e[1][1],.5),t=2;t{"use strict";var WC=ir(),lee=Cr(),see=jl(),uee=Yv(),Mu=oa(),fee=SC(),cee=DC(),hee=IC(),vee=tm(),dee=nm(),XC=UC(),pee=am(),gee=YC(),yee=ir().coercePattern;ZC.exports=function(r,t,n,a){function o(b,m){return WC.coerce(r,t,see,b,m)}var i=fee(r,t,a,o);if(i||(t.visible=!1),!!t.visible){cee(r,t,a,o),o("xhoverformat"),o("yhoverformat"),o("zorder");var l=hee(r,t,a,o);a.scattermode==="group"&&t.orientation===void 0&&o("orientation","v");var u=!l&&i{"use strict";var mee=Zf().getAxisGroup;KC.exports=function(r,t,n,a,o){var i=t.orientation,l=t[{v:"x",h:"y"}[i]+"axis"],u=mee(n,l)+i,s=n._alignmentOpts||{},f=a("alignmentgroup"),h=s[u];h||(h=s[u]={});var p=h[f];p?p.traces.push(t):p=h[f]={traces:[t],alignmentIndex:Object.keys(h).length,offsetGroups:{}};var b=a("offsetgroup")||"",m=p.offsetGroups,w=m[b];t._offsetIndex=0,(o!=="group"||b)&&(w||(w=m[b]={offsetIndex:Object.keys(m).length}),t._offsetIndex=w.offsetIndex)}});var jC=de((Bve,$C)=>{"use strict";var xee=ir(),bee=QC(),_ee=jl();$C.exports=function(r,t){var n,a,o,i=t.scattermode;function l(p){return xee.coerce(a._input,a,_ee,p)}if(t.scattermode==="group")for(o=0;o=0;f--){var h=r[f];if(h.type==="scatter"&&h.xaxis===u.xaxis&&h.yaxis===u.yaxis){h.opacity=void 0;break}}}}}});var rE=de((Uve,eE)=>{"use strict";var wee=ir(),Mee=fh();eE.exports=function(e,r){function t(a,o){return wee.coerce(e,r,Mee,a,o)}var n=r.barmode==="group";r.scattermode==="group"&&t("scattergap",n?r.bargap:.2)}});var aE=de((Hve,nE)=>{"use strict";var Tee=nt(),tE=ir(),Aee=tE.dateTime2ms,x1=tE.incrementMonth,kee=nn(),See=kee.ONEAVGMONTH;nE.exports=function(r,t,n,a){if(t.type!=="date")return{vals:a};var o=r[n+"periodalignment"];if(!o)return{vals:a};var i=r[n+"period"],l;if(Tee(i)){if(i=+i,i<=0)return{vals:a}}else if(typeof i=="string"&&i.charAt(0)==="M"){var u=+i.substring(1);if(u>0&&Math.round(u)===u)l=u;else return{vals:a}}for(var s=t.calendar,f=o==="start",h=o==="end",p=r[n+"period0"],b=Aee(p,s)||0,m=[],w=[],T=[],y=a.length,k=0;kS;)d=x1(d,-l,s);for(;d<=S;)d=x1(d,l,s);M=x1(d,-l,s)}else{for(x=Math.round((S-b)/i),d=b+x*i;d>S;)d-=i;for(;d<=S;)d+=i;M=d-i}m[k]=f?M:h?d:(M+d)/2,w[k]=M,T[k]=d}return{vals:m,starts:w,ends:T}}});var lm=de((Vve,oE)=>{"use strict";var im=Si().hasColorscale,om=zo(),iE=oa();oE.exports=function(r,t){iE.hasLines(t)&&im(t,"line")&&om(r,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),iE.hasMarkers(t)&&(im(t,"marker")&&om(r,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),im(t,"marker.line")&&om(r,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var b1=de((Gve,lE)=>{"use strict";var Nt=ir();lE.exports=function(r,t){for(var n=0;n{"use strict";var sE=ir();uE.exports=function(r,t){sE.isArrayOrTypedArray(t.selectedpoints)&&sE.tagSelected(r,t)}});var hm=de((Wve,yE)=>{"use strict";var cE=nt(),um=ir(),M0=Lt(),hE=aE(),sm=nn().BADNUM,fm=oa(),Cee=lm(),Eee=b1(),Lee=fE();function Dee(e,r){var t=e._fullLayout,n=r._xA=M0.getFromId(e,r.xaxis||"x","x"),a=r._yA=M0.getFromId(e,r.yaxis||"y","y"),o=n.makeCalcdata(r,"x"),i=a.makeCalcdata(r,"y"),l=hE(r,n,"x",o),u=hE(r,a,"y",i),s=l.vals,f=u.vals,h=r._length,p=new Array(h),b=r.ids,m=cm(r,t,n,a),w=!1,T,y,k,S,x,M;pE(t,r);var d="x",_="y",g;if(m)um.pushUnique(m.traceIndices,r.index),T=m.orientation==="v",T?(_="s",g="x"):(d="s",g="y"),x=m.stackgaps==="interpolate";else{var c=dE(r,h);vE(e,r,n,a,s,f,c)}var A=!!r.xperiodalignment,v=!!r.yperiodalignment;for(y=0;yy&&p[S].gap;)S--;for(M=p[S].s,k=p.length-1;k>S;k--)p[k].s=M;for(;y{"use strict";mE.exports=_1;var Ree=ir().distinctVals;function _1(e,r){this.traces=e,this.sepNegVal=r.sepNegVal,this.overlapNoMerge=r.overlapNoMerge;for(var t=1/0,n=r.posAxis._id.charAt(0),a=[],o=0;o{"use strict";var Va=nt(),Ko=ir().isArrayOrTypedArray,Tu=nn().BADNUM,Pee=Cr(),T0=Lt(),Iee=Zf().getAxisGroup,w1=xE();function Fee(e,r){for(var t=r.xaxis,n=r.yaxis,a=e._fullLayout,o=e._fullData,i=e.calcdata,l=[],u=[],s=0;su+i||!Va(l))}for(var f=0;f{"use strict";var AE=hm(),kE=TE().setGroupPositions;function Xee(e,r){for(var t=r.xaxis,n=r.yaxis,a=e._fullLayout,o=e._fullData,i=e.calcdata,l=[],u=[],s=0;sc[f]&&f{"use strict";var Jee=mt(),RE=nn(),A0=RE.BADNUM,PE=RE.LOG_CLIP,EE=PE+.5,LE=PE-.5,M1=ir(),Kee=M1.segmentsIntersect,DE=M1.constrain,mm=Yv();IE.exports=function(r,t){var n=t.trace||{},a=t.xaxis,o=t.yaxis,i=a.type==="log",l=o.type==="log",u=a._length,s=o._length,f=t.backoff,h=n.marker,p=t.connectGaps,b=t.baseTolerance,m=t.shape,w=m==="linear",T=n.fill&&n.fill!=="none",y=[],k=mm.minTolerance,S=r.length,x=new Array(S),M=0,d,_,g,c,A,v,D,E,R,N,F,I,L,P,O,U;function X(Ye){var Me=r[Ye];if(!Me)return!1;var Re=t.linearized?a.l2p(Me.x):a.c2p(Me.x),Qe=t.linearized?o.l2p(Me.y):o.c2p(Me.y);if(Re===A0){if(i&&(Re=a.c2p(Me.x,!0)),Re===A0)return!1;l&&Qe===A0&&(Re*=Math.abs(a._m*s*(a._m>0?EE:LE)/(o._m*u*(o._m>0?EE:LE)))),Re*=1e3}if(Qe===A0){if(l&&(Qe=o.c2p(Me.y,!0)),Qe===A0)return!1;Qe*=1e3}return[Re,Qe]}function $(Ye,Me,Re,Qe){var Ke=Re-Ye,ar=Qe-Me,se=.5-Ye,J=.5-Me,ae=Ke*Ke+ar*ar,De=Ke*se+ar*J;if(De>0&&De1||Math.abs(se.y-Re[0][1])>1)&&(se=[se.x,se.y],Qe&&K(se,Ye)oe||Ye[1]H)return[DE(Ye[0],Q,oe),DE(Ye[1],re,H)]}function Ce(Ye,Me){if(Ye[0]===Me[0]&&(Ye[0]===Q||Ye[0]===oe)||Ye[1]===Me[1]&&(Ye[1]===re||Ye[1]===H))return!0}function Pe(Ye,Me){var Re=[],Qe=Ae(Ye),Ke=Ae(Me);return Qe&&Ke&&Ce(Qe,Ke)||(Qe&&Re.push(Qe),Ke&&Re.push(Ke)),Re}function Ee(Ye,Me,Re){return function(Qe,Ke){var ar=Ae(Qe),se=Ae(Ke),J=[];if(ar&&se&&Ce(ar,se))return J;ar&&J.push(ar),se&&J.push(se);var ae=2*M1.constrain((Qe[Ye]+Ke[Ye])/2,Me,Re)-((ar||Qe)[Ye]+(se||Ke)[Ye]);if(ae){var De;ar&&se?De=ae>0==ar[Ye]>se[Ye]?ar:se:De=ar||se,De[Ye]+=ae}return J}}var Ne;m==="linear"||m==="spline"?Ne=he:m==="hv"||m==="vh"?Ne=Pe:m==="hvh"?Ne=Ee(0,Q,oe):m==="vhv"&&(Ne=Ee(1,re,H));function Ue(Ye,Me){var Re=Me[0]-Ye[0],Qe=(Me[1]-Ye[1])/Re,Ke=(Ye[1]*Me[0]-Me[1]*Ye[0])/Re;return Ke>0?[Qe>0?Q:oe,H]:[Qe>0?oe:Q,re]}function ge(Ye){var Me=Ye[0],Re=Ye[1],Qe=Me===x[M-1][0],Ke=Re===x[M-1][1];if(!(Qe&&Ke))if(M>1){var ar=Me===x[M-2][0],se=Re===x[M-2][1];Qe&&(Me===Q||Me===oe)&&ar?se?M--:x[M-1]=Ye:Ke&&(Re===re||Re===H)&&se?ar?M--:x[M-1]=Ye:x[M++]=Ye}else x[M++]=Ye}function we(Ye){x[M-1][0]!==Ye[0]&&x[M-1][1]!==Ye[1]&&ge([ue,ve]),ge(Ye),ke=null,ue=ve=0}var Te=M1.isArrayOrTypedArray(h);function me(Ye){if(Ye&&f&&(Ye.i=d,Ye.d=r,Ye.trace=n,Ye.marker=Te?h[Ye.i]:h,Ye.backoff=f),j=Ye[0]/u,Y=Ye[1]/s,V=Ye[0]oe?oe:0,te=Ye[1]H?H:0,V||te){if(!M)x[M++]=[V||Ye[0],te||Ye[1]];else if(ke){var Me=Ne(ke,Ye);Me.length>1&&(we(Me[0]),x[M++]=Me[1])}else Se=Ne(x[M-1],Ye)[0],x[M++]=Se;var Re=x[M-1];V&&te&&(Re[0]!==V||Re[1]!==te)?(ke&&(ue!==V&&ve!==te?ge(ue&&ve?Ue(ke,Ye):[ue||V,ve||te]):ue&&ve&&ge([ue,ve])),ge([V,te])):ue-V&&ve-te&&ge([V||ue,te||ve]),ke=Ye,ue=V,ve=te}else ke&&we(Ne(ke,Ye)[0]),x[M++]=Ye}for(d=0;dq(v,ye))break;g=v,L=R[0]*E[0]+R[1]*E[1],L>F?(F=L,c=v,D=!1):L=r.length||!v)break;me(v),_=v}}ke&&ge([ue||ke[0],ve||ke[1]]),y.push(x.slice(0,M))}var pe=m.slice(m.length-1);if(f&&pe!=="h"&&pe!=="v"){for(var ce=!1,xe=-1,Le=[],qe=0;qe{"use strict";var NE={tonextx:1,tonexty:1,tonext:1};zE.exports=function(r,t,n){var a,o,i,l,u,s={},f=!1,h=-1,p=0,b=-1;for(o=0;o=0?u=b:(u=b=p,p++),u{"use strict";var ui=it(),Qee=Cr(),k0=ir(),ku=k0.ensureSingle,BE=k0.identity,zt=mt(),Su=oa(),$ee=FE(),jee=qE(),T1=yy().tester;UE.exports=function(r,t,n,a,o,i){var l,u,s=!o,f=!!o&&o.duration>0,h=jee(r,t,n);if(l=a.selectAll("g.trace").data(h,function(b){return b[0].trace.uid}),l.enter().append("g").attr("class",function(b){return"trace scatter trace"+b[0].trace.uid}).style("stroke-miterlimit",2),l.order(),ere(r,l,t),f){i&&(u=i());var p=ui.transition().duration(o.duration).ease(o.easing).each("end",function(){u&&u()}).each("interrupt",function(){u&&u()});p.each(function(){a.selectAll("g.trace").each(function(b,m){OE(r,m,t,b,h,this,o)})})}else l.each(function(b,m){OE(r,m,t,b,h,this,o)});s&&l.exit().remove(),a.selectAll("path:not([d])").remove()};function ere(e,r,t){r.each(function(n){var a=ku(ui.select(this),"g","fills");zt.setClipUrl(a,t.layerClipId,e);var o=n[0].trace,i=[];o._ownfill&&i.push("_ownFill"),o._nexttrace&&i.push("_nextFill");var l=a.selectAll("g").data(i,BE);l.enter().append("g"),l.exit().each(function(u){o[u]=null}).remove(),l.order().each(function(u){o[u]=ku(ui.select(this),"path","js-fill")})})}function OE(e,r,t,n,a,o,i){var l=e._context.staticPlot,u;rre(e,r,t,n,a);var s=!!i&&i.duration>0;function f(Ee){return s?Ee.transition():Ee}var h=t.xaxis,p=t.yaxis,b=n[0].trace,m=b.line,w=ui.select(o),T=ku(w,"g","errorbars"),y=ku(w,"g","lines"),k=ku(w,"g","points"),S=ku(w,"g","text");if(Qee.getComponentMethod("errorbars","plot")(e,T,t,i),b.visible!==!0)return;f(w).style("opacity",b.opacity);var x,M,d=b.fill.charAt(b.fill.length-1);d!=="x"&&d!=="y"&&(d="");var _,g;d==="y"?(_=1,g=p.c2p(0,!0)):d==="x"&&(_=0,g=h.c2p(0,!0)),n[0][t.isRangePlot?"nodeRangePlot3":"node3"]=w;var c="",A=[],v=b._prevtrace,D=null,E=null;v&&(c=v._prevRevpath||"",M=v._nextFill,A=v._ownPolygons,D=v._fillsegments,E=v._fillElement);var R,N,F="",I="",L,P,O,U,X,$,j=[];b._polygons=[];var Y=[],q=[],K=k0.noop;if(x=b._ownFill,Su.hasLines(b)||b.fill!=="none"){M&&M.datum(n),["hv","vh","hvh","vhv"].indexOf(m.shape)!==-1?(L=zt.steps(m.shape),P=zt.steps(m.shape.split("").reverse().join(""))):m.shape==="spline"?L=P=function(Ee){var Ne=Ee[Ee.length-1];return Ee.length>1&&Ee[0][0]===Ne[0]&&Ee[0][1]===Ne[1]?zt.smoothclosed(Ee.slice(1),m.smoothing):zt.smoothopen(Ee,m.smoothing)}:L=P=function(Ee){return"M"+Ee.join("L")},O=function(Ee){return P(Ee.reverse())},q=$ee(n,{xaxis:h,yaxis:p,trace:b,connectGaps:b.connectgaps,baseTolerance:Math.max(m.width||1,3)/4,shape:m.shape,backoff:m.backoff,simplify:m.simplify,fill:b.fill}),Y=new Array(q.length);var ne=0;for(u=0;u=l[0]&&w.x<=l[1]&&w.y>=u[0]&&w.y<=u[1]}),p=Math.ceil(h.length/f),b=0;a.forEach(function(w,T){var y=w[0].trace;Su.hasMarkers(y)&&y.marker.maxdisplayed>0&&T{"use strict";VE.exports={container:"marker",min:"cmin",max:"cmax"}});var WE=de((e1e,YE)=>{"use strict";var A1=Lt();YE.exports=function(r,t,n){var a={},o={_fullLayout:n},i=A1.getFromTrace(o,t,"x"),l=A1.getFromTrace(o,t,"y"),u=r.orig_x;u===void 0&&(u=r.x);var s=r.orig_y;return s===void 0&&(s=r.y),a.xLabel=A1.tickText(i,i.c2l(u),!0).text,a.yLabel=A1.tickText(l,l.c2l(s),!0).text,a}});var wm=de((r1e,XE)=>{"use strict";var xm=it(),Cu=mt(),tre=Cr();function nre(e){var r=xm.select(e).selectAll("g.trace.scatter");r.style("opacity",function(t){return t[0].trace.opacity}),r.selectAll("g.points").each(function(t){var n=xm.select(this),a=t.trace||t[0].trace;bm(n,a,e)}),r.selectAll("g.text").each(function(t){var n=xm.select(this),a=t.trace||t[0].trace;_m(n,a,e)}),r.selectAll("g.trace path.js-line").call(Cu.lineGroupStyle),r.selectAll("g.trace path.js-fill").call(Cu.fillGroupStyle,e,!1),tre.getComponentMethod("errorbars","style")(r)}function bm(e,r,t){Cu.pointStyle(e.selectAll("path.point"),r,t)}function _m(e,r,t){Cu.textPointStyle(e.selectAll("text"),r,t)}function are(e,r,t){var n=r[0].trace;n.selectedpoints?(Cu.selectedPointStyle(t.selectAll("path.point"),n),Cu.selectedTextStyle(t.selectAll("text"),n)):(bm(t,n,e),_m(t,n,e))}XE.exports={style:nre,stylePoints:bm,styleText:_m,styleOnSelect:are}});var JE=de((t1e,ZE)=>{"use strict";var Eu=Xr(),ire=oa();ZE.exports=function(r,t){var n,a;if(r.mode==="lines")return n=r.line.color,n&&Eu.opacity(n)?n:r.fillcolor;if(r.mode==="none")return r.fill?r.fillcolor:"";var o=t.mcc||(r.marker||{}).color,i=t.mlcc||((r.marker||{}).line||{}).color;return a=o&&Eu.opacity(o)?o:i&&Eu.opacity(i)&&(t.mlw||((r.marker||{}).line||{}).width)?i:"",a?Eu.opacity(a)<.3?Eu.addOpacity(a,.3):a:(n=(r.line||{}).color,n&&Eu.opacity(n)&&ire.hasLines(r)&&r.line.width?n:r.fillcolor)}});var $E=de((n1e,QE)=>{"use strict";var k1=ir(),KE=io(),ore=Cr(),lre=JE(),Mm=Xr(),sre=k1.fillText;QE.exports=function(r,t,n,a){var o=r.cd,i=o[0].trace,l=r.xa,u=r.ya,s=l.c2p(t),f=u.c2p(n),h=[s,f],p=i.hoveron||"",b=i.mode.indexOf("markers")!==-1?3:.5,m=!!i.xperiodalignment,w=!!i.yperiodalignment;if(p.indexOf("points")!==-1){var T=function(I){if(m){var L=l.c2p(I.xStart),P=l.c2p(I.xEnd);return s>=Math.min(L,P)&&s<=Math.max(L,P)?0:1/0}var O=Math.max(3,I.mrc||0),U=1-1/O,X=Math.abs(l.c2p(I.x)-s);return X=Math.min(L,P)&&f<=Math.max(L,P)?0:1/0}var O=Math.max(3,I.mrc||0),U=1-1/O,X=Math.abs(u.c2p(I.y)-f);return Xj!=H>=j&&(Q=K[q-1][0],oe=K[q][0],H-re&&(ne=Q+(oe-Q)*(j-re)/(H-re),O=Math.min(O,ne),U=Math.max(U,ne)));return O=Math.max(O,0),U=Math.min(U,l._length),{x0:O,x1:U,y0:j,y1:j}}if(p.indexOf("fills")!==-1&&i._fillElement){var R=D(i._fillElement)&&!D(i._fillExclusionElement);if(R){var N=E(i._polygons);N===null&&(N={x0:h[0],x1:h[0],y0:h[1],y1:h[1]});var F=Mm.defaultLine;return Mm.opacity(i.fillcolor)?F=i.fillcolor:Mm.opacity((i.line||{}).color)&&(F=i.line.color),k1.extendFlat(r,{distance:r.maxHoverDistance,x0:N.x0,x1:N.x1,y0:N.y0,y1:N.y1,color:F,hovertemplate:!1}),delete r.index,i.text&&!k1.isArrayOrTypedArray(i.text)?r.text=String(i.text):r.text=i.name,[r]}}}});var rL=de((a1e,eL)=>{"use strict";var jE=oa();eL.exports=function(r,t){var n=r.cd,a=r.xaxis,o=r.yaxis,i=[],l=n[0].trace,u,s,f,h,p=!jE.hasMarkers(l)&&!jE.hasText(l);if(p)return[];if(t===!1)for(u=0;u{"use strict";tL.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var Am=de((o1e,oL)=>{"use strict";var S0=Cr().traceIs,Tm=Zg();oL.exports=function(r,t,n,a){n("autotypenumbers",a.autotypenumbersDflt);var o=n("type",(a.splomStash||{}).type);o==="-"&&(ure(t,a.data),t.type==="-"?t.type="linear":r.type=t.type)};function ure(e,r){if(e.type==="-"){var t=e._id,n=t.charAt(0),a;t.indexOf("scene")!==-1&&(t=n);var o=fre(r,t,n);if(o){if(o.type==="histogram"&&n==={v:"y",h:"x"}[o.orientation||"v"]){e.type="linear";return}var i=n+"calendar",l=o[i],u={noMultiCategory:!S0(o,"cartesian")||S0(o,"noMultiCategory")};if(o.type==="box"&&o._hasPreCompStats&&n==={h:"x",v:"y"}[o.orientation||"v"]&&(u.noMultiCategory=!0),u.autotypenumbers=e.autotypenumbers,iL(o,n)){var s=aL(o),f=[];for(a=0;a0&&(a["_"+t+"axes"]||{})[r])return a;if((a[t+"axis"]||t)===r){if(iL(a,t))return a;if((a[t]||[]).length||a[t+"0"])return a}}}function aL(e){return{v:"x",h:"y"}[e.orientation||"v"]}function iL(e,r){var t=aL(e),n=S0(e,"box-violin"),a=S0(e._fullInput||{},"candlestick");return n&&!a&&r===t&&e[t]===void 0&&e[t+"0"]===void 0}});var sL=de((l1e,lL)=>{"use strict";var cre=ea().isTypedArraySpec;function hre(e,r){var t=r.dataAttr||e._id.charAt(0),n={},a,o,i;if(r.axData)a=r.axData;else for(a=[],o=0;o0||cre(o),l;i&&(l="array");var u=n("categoryorder",l),s;u==="array"&&(s=n("categoryarray")),!i&&u==="array"&&(u=t.categoryorder="trace"),u==="trace"?t._initialCategories=[]:u==="array"?t._initialCategories=s.slice():(s=hre(t,a).sort(),u==="category ascending"?t._initialCategories=s:u==="category descending"&&(t._initialCategories=s.reverse()))}}});var cL=de((s1e,fL)=>{"use strict";var uL=ka().mix,vre=Ai(),dre=ir();fL.exports=function(r,t,n,a){a=a||{};var o=a.dfltColor;function i(g,c){return dre.coerce2(r,t,a.attributes,g,c)}var l=i("linecolor",o),u=i("linewidth"),s=n("showline",a.showLine||!!l||!!u);s||(delete t.linecolor,delete t.linewidth);var f=uL(o,a.bgColor,a.blend||vre.lightFraction).toRgbString(),h=i("gridcolor",f),p=i("gridwidth"),b=i("griddash"),m=n("showgrid",a.showGrid||!!h||!!p||!!b);if(m||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),a.hasMinor){var w=uL(t.gridcolor,a.bgColor,67).toRgbString(),T=i("minor.gridcolor",w),y=i("minor.gridwidth",t.gridwidth||1),k=i("minor.griddash",t.griddash||"solid"),S=n("minor.showgrid",!!T||!!y||!!k);S||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!a.noZeroLine){var x=i("zerolinelayer"),M=i("zerolinecolor",o),d=i("zerolinewidth"),_=n("zeroline",a.showGrid||!!M||!!d);_||(delete t.zerolinelayer,delete t.zerolinecolor,delete t.zerolinewidth)}}});var C1=de((u1e,yL)=>{"use strict";var hL=nt(),pre=Cr(),C0=ir(),gre=yt(),yre=ti(),km=La(),vL=yg(),dL=xg(),mre=wg(),xre=Mg(),bre=sL(),_re=cL(),wre=p2(),pL=Fh(),S1=_n().WEEKDAY_PATTERN,Mre=_n().HOUR_PATTERN;yL.exports=function(r,t,n,a,o){var i=a.letter,l=a.font||{},u=a.splomStash||{},s=n("visible",!a.visibleDflt),f=t._template||{},h=t.type||f.type||"-",p;if(h==="date"){var b=pre.getComponentMethod("calendars","handleDefaults");b(r,t,"calendar",a.calendar),a.noTicklabelmode||(p=n("ticklabelmode"))}!a.noTicklabelindex&&(h==="date"||h==="linear")&&n("ticklabelindex");var m="";(!a.noTicklabelposition||h==="multicategory")&&(m=C0.coerce(r,t,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:p==="period"?["outside","inside"]:i==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),a.noTicklabeloverflow||n("ticklabeloverflow",m.indexOf("inside")!==-1?"hide past domain":h==="category"||h==="multicategory"?"allow":"hide past div"),pL(t,o),wre(r,t,n,a),bre(r,t,n,a),a.noHover||(h!=="category"&&n("hoverformat"),a.noUnifiedhovertitle||n("unifiedhovertitle.text"));var w=n("color"),T=w!==km.color.dflt?w:l.color,y=u.label||o._dfltTitle[i];if(xre(r,t,n,h,a),!s)return t;n("title.text",y),C0.coerceFont(n,"title.font",l,{overrideDflt:{size:C0.bigFont(l.size),color:T}}),vL(r,t,n,h);var k=a.hasMinor;if(k&&(gre.newContainer(t,"minor"),vL(r,t,n,h,{isMinor:!0})),mre(r,t,n,h,a),dL(r,t,n,a),k){var S=a.isMinor;a.isMinor=!0,dL(r,t,n,a),a.isMinor=S}_re(r,t,n,{dfltColor:w,bgColor:a.bgColor,showGrid:a.showGrid,hasMinor:k,attributes:km}),k&&!t.minor.ticks&&!t.minor.showgrid&&delete t.minor,(t.showline||t.ticks)&&n("mirror");var x=h==="multicategory";if(!a.noTickson&&(h==="category"||x)&&(t.ticks||t.showgrid)&&(x?(n("tickson","boundaries"),delete t.ticklabelposition):n("tickson")),x){var M=n("showdividers");M&&(n("dividercolor"),n("dividerwidth"))}if(h==="date")if(yre(r,t,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:Tre}),!t.rangebreaks.length)delete t.rangebreaks;else{for(var d=0;d=2){var i="",l,u;if(o.length===2){for(l=0;l<2;l++)if(u=gL(o[l]),u){i=S1;break}}var s=n("pattern",i);if(s===S1)for(l=0;l<2;l++)u=gL(o[l]),u&&(r.bounds[l]=o[l]=u-1);if(s)for(l=0;l<2;l++)switch(u=o[l],s){case S1:if(!hL(u)){r.enabled=!1;return}if(u=+u,u!==Math.floor(u)||u<0||u>=7){r.enabled=!1;return}r.bounds[l]=o[l]=u;break;case Mre:if(!hL(u)){r.enabled=!1;return}if(u=+u,u<0||u>24){r.enabled=!1;return}r.bounds[l]=o[l]=u;break}if(t.autorange===!1){var f=t.range;if(f[0]f[1]){r.enabled=!1;return}}else if(o[0]>f[0]&&o[1]{"use strict";var kre=nt(),E1=ir();mL.exports=function(r,t,n,a){var o=a.counterAxes||[],i=a.overlayableAxes||[],l=a.letter,u=a.grid,s=a.overlayingDomain,f,h,p,b,m,w;u&&(h=u._domains[l][u._axisMap[t._id]],f=u._anchors[t._id],h&&(p=u[l+"side"].split(" ")[0],b=u.domain[l][p==="right"||p==="top"?1:0])),h=h||[0,1],f=f||(kre(r.position)?"free":o[0]||"free"),p=p||(l==="x"?"bottom":"left"),b=b||0,m=0,w=!1;var T=E1.coerce(r,t,{anchor:{valType:"enumerated",values:["free"].concat(o),dflt:f}},"anchor"),y=E1.coerce(r,t,{side:{valType:"enumerated",values:l==="x"?["bottom","top"]:["left","right"],dflt:p}},"side");if(T==="free"){if(l==="y"){var k=n("autoshift");k&&(b=y==="left"?s[0]:s[1],w=t.automargin?t.automargin:!0,m=y==="left"?-3:3),n("shift",m)}n("position",b)}n("automargin",w);var S=!1;if(i.length&&(S=E1.coerce(r,t,{overlaying:{valType:"enumerated",values:[!1].concat(i),dflt:!1}},"overlaying")),!S){var x=n("domain",h);x[0]>x[1]-1/4096&&(t.domain=h),E1.noneOrAll(r.domain,t.domain,h),t.tickmode==="sync"&&(t.tickmode="auto")}return n("layer"),t}});var SL=de((c1e,kL)=>{"use strict";var ns=ir(),xL=Xr(),Sre=to().isUnifiedHover,Cre=B2(),bL=yt(),Ere=Is(),_L=La(),Lre=Am(),wL=C1(),Dre=Zf(),ML=Sm(),Em=jt(),Ui=Em.id2name,TL=Em.name2id,Rre=_n().AX_ID_PATTERN,AL=Cr(),L1=AL.traceIs,Cm=AL.getComponentMethod;function D1(e,r,t){Array.isArray(e[r])?e[r].push(t):e[r]=[t]}kL.exports=function(r,t,n){var a=t.autotypenumbers,o={},i={},l={},u={},s={},f={},h={},p={},b={},m={},w,T;for(w=0;w{"use strict";var Pre=it(),CL=Cr(),R1=ir(),xa=mt(),P1=Lt();EL.exports=function(r,t,n,a){var o=r._fullLayout;if(t.length===0){P1.redrawComponents(r);return}function i(T){var y=T.xaxis,k=T.yaxis;o._defs.select("#"+T.clipId+"> rect").call(xa.setTranslate,0,0).call(xa.setScale,1,1),T.plot.call(xa.setTranslate,y._offset,k._offset).call(xa.setScale,1,1);var S=T.plot.selectAll(".scatterlayer .trace");S.selectAll(".point").call(xa.setPointGroupScale,1,1),S.selectAll(".textpoint").call(xa.setTextPointsScale,1,1),S.call(xa.hideOutsideRangePoints,T)}function l(T,y){var k=T.plotinfo,S=k.xaxis,x=k.yaxis,M=S._length,d=x._length,_=!!T.xr1,g=!!T.yr1,c=[];if(_){var A=R1.simpleMap(T.xr0,S.r2l),v=R1.simpleMap(T.xr1,S.r2l),D=A[1]-A[0],E=v[1]-v[0];c[0]=(A[0]*(1-y)+y*v[0]-A[0])/(A[1]-A[0])*M,c[2]=M*(1-y+y*E/D),S.range[0]=S.l2r(A[0]*(1-y)+y*v[0]),S.range[1]=S.l2r(A[1]*(1-y)+y*v[1])}else c[0]=0,c[2]=M;if(g){var R=R1.simpleMap(T.yr0,x.r2l),N=R1.simpleMap(T.yr1,x.r2l),F=R[1]-R[0],I=N[1]-N[0];c[1]=(R[1]*(1-y)+y*N[1]-R[1])/(R[0]-R[1])*d,c[3]=d*(1-y+y*I/F),x.range[0]=S.l2r(R[0]*(1-y)+y*N[0]),x.range[1]=x.l2r(R[1]*(1-y)+y*N[1])}else c[1]=0,c[3]=d;P1.drawOne(r,S,{skipTitle:!0}),P1.drawOne(r,x,{skipTitle:!0}),P1.redrawComponents(r,[S._id,x._id]);var L=_?M/c[2]:1,P=g?d/c[3]:1,O=_?c[0]:0,U=g?c[1]:0,X=_?c[0]/c[2]*M:0,$=g?c[1]/c[3]*d:0,j=S._offset-X,Y=x._offset-$;k.clipRect.call(xa.setTranslate,O,U).call(xa.setScale,1/L,1/P),k.plot.call(xa.setTranslate,j,Y).call(xa.setScale,L,P),xa.setPointGroupScale(k.zoomScalePts,1/L,1/P),xa.setTextPointsScale(k.zoomScaleTxt,1/L,1/P)}var u;a&&(u=a());function s(){for(var T={},y=0;yn.duration?(s(),b=window.cancelAnimationFrame(w)):b=window.requestAnimationFrame(w)}return h=Date.now(),b=window.requestAnimationFrame(w),Promise.resolve()}});var Lm=de(Ln=>{"use strict";var F1=it(),DL=Cr(),as=ir(),Ire=on(),Fre=mt(),RL=kf().getModuleCalcData,Qo=jt(),fi=_n(),Nre=Fo(),lt=as.ensureSingle;function I1(e,r,t){return as.ensureSingle(e,r,t,function(n){n.datum(t)})}var is=fi.zindexSeparator;Ln.name="cartesian";Ln.attr=["xaxis","yaxis"];Ln.idRoot=["x","y"];Ln.idRegex=fi.idRegex;Ln.attrRegex=fi.attrRegex;Ln.attributes=nL();Ln.layoutAttributes=La();Ln.supplyLayoutDefaults=SL();Ln.transitionAxes=LL();Ln.finalizeSubplots=function(e,r){var t=r._subplots,n=t.xaxis,a=t.yaxis,o=t.cartesian,i=o,l={},u={},s,f,h;for(s=0;s0){var b=p.id;if(b.indexOf(is)!==-1)continue;b+=is+(s+1),p=as.extendFlat({},p,{id:b,plot:a._cartesianlayer.selectAll(".subplot").select("."+b)})}for(var m=[],w,T=0;T1&&(M+=is+x),S.push(l+M),i=0;i1,h=r.mainplotinfo;if(!r.mainplot||f)if(s)r.xlines=lt(n,"path","xlines-above"),r.ylines=lt(n,"path","ylines-above"),r.xaxislayer=lt(n,"g","xaxislayer-above"),r.yaxislayer=lt(n,"g","yaxislayer-above");else{if(!i){var p=lt(n,"g","layer-subplot");r.shapelayer=lt(p,"g","shapelayer"),r.imagelayer=lt(p,"g","imagelayer"),h&&f?(r.minorGridlayer=h.minorGridlayer,r.gridlayer=h.gridlayer,r.zerolinelayer=h.zerolinelayer):(r.minorGridlayer=lt(n,"g","minor-gridlayer"),r.gridlayer=lt(n,"g","gridlayer"),r.zerolinelayer=lt(n,"g","zerolinelayer"));var b=lt(n,"g","layer-between");r.shapelayerBetween=lt(b,"g","shapelayer"),r.imagelayerBetween=lt(b,"g","imagelayer"),lt(n,"path","xlines-below"),lt(n,"path","ylines-below"),r.overlinesBelow=lt(n,"g","overlines-below"),lt(n,"g","xaxislayer-below"),lt(n,"g","yaxislayer-below"),r.overaxesBelow=lt(n,"g","overaxes-below")}r.overplot=lt(n,"g","overplot"),r.plot=lt(r.overplot,"g",a),h&&f?r.zerolinelayerAbove=h.zerolinelayerAbove:r.zerolinelayerAbove=lt(n,"g","zerolinelayer-above"),i||(r.xlines=lt(n,"path","xlines-above"),r.ylines=lt(n,"path","ylines-above"),r.overlinesAbove=lt(n,"g","overlines-above"),lt(n,"g","xaxislayer-above"),lt(n,"g","yaxislayer-above"),r.overaxesAbove=lt(n,"g","overaxes-above"),r.xlines=n.select(".xlines-"+l),r.ylines=n.select(".ylines-"+u),r.xaxislayer=n.select(".xaxislayer-"+l),r.yaxislayer=n.select(".yaxislayer-"+u))}else{var m=h.plotgroup,w=a+"-x",T=a+"-y";r.minorGridlayer=h.minorGridlayer,r.gridlayer=h.gridlayer,r.zerolinelayer=h.zerolinelayer,r.zerolinelayerAbove=h.zerolinelayerAbove,lt(h.overlinesBelow,"path",w),lt(h.overlinesBelow,"path",T),lt(h.overaxesBelow,"g",w),lt(h.overaxesBelow,"g",T),r.plot=lt(h.overplot,"g",a),lt(h.overlinesAbove,"path",w),lt(h.overlinesAbove,"path",T),lt(h.overaxesAbove,"g",w),lt(h.overaxesAbove,"g",T),r.xlines=m.select(".overlines-"+l).select("."+w),r.ylines=m.select(".overlines-"+u).select("."+T),r.xaxislayer=m.select(".overaxes-"+l).select("."+w),r.yaxislayer=m.select(".overaxes-"+u).select("."+T)}i||(s||(I1(r.minorGridlayer,"g",r.xaxis._id),I1(r.minorGridlayer,"g",r.yaxis._id),r.minorGridlayer.selectAll("g").map(function(y){return y[0]}).sort(Qo.idSort),I1(r.gridlayer,"g",r.xaxis._id),I1(r.gridlayer,"g",r.yaxis._id),r.gridlayer.selectAll("g").map(function(y){return y[0]}).sort(Qo.idSort)),r.xlines.style("fill","none").classed("crisp",!0),r.ylines.style("fill","none").classed("crisp",!0))}function FL(e,r){if(e){var t={};e.each(function(u){var s=u[0],f=F1.select(this);f.remove(),NL(s,r),t[s]=!0});for(var n in r._plots)for(var a=r._plots[n],o=a.overlays||[],i=0;i{"use strict";var N1=oa();zL.exports={hasLines:N1.hasLines,hasMarkers:N1.hasMarkers,hasText:N1.hasText,isBubble:N1.isBubble,attributes:jl(),layoutAttributes:fh(),supplyDefaults:JC(),crossTraceDefaults:jC(),supplyLayoutDefaults:rE(),calc:hm().calc,crossTraceCalc:CE(),arraysToCalcdata:b1(),plot:HE(),colorbar:GE(),formatLabels:WE(),style:wm().style,styleOnSelect:wm().styleOnSelect,hoverPoints:$E(),selectPoints:rL(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:Lm(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var UL=de((p1e,BL)=>{"use strict";var qre=it(),Ore=Xr(),OL=Ey(),Dm=ir(),Bre=Dm.strScale,Ure=Dm.strRotate,Hre=Dm.strTranslate;BL.exports=function(r,t,n){var a=r.node(),o=OL[n.arrowhead||0],i=OL[n.startarrowhead||0],l=(n.arrowwidth||1)*(n.arrowsize||1),u=(n.arrowwidth||1)*(n.startarrowsize||1),s=t.indexOf("start")>=0,f=t.indexOf("end")>=0,h=o.backoff*l+n.standoff,p=i.backoff*u+n.startstandoff,b,m,w,T;if(a.nodeName==="line"){b={x:+r.attr("x1"),y:+r.attr("y1")},m={x:+r.attr("x2"),y:+r.attr("y2")};var y=b.x-m.x,k=b.y-m.y;if(w=Math.atan2(k,y),T=w+Math.PI,h&&p&&h+p>Math.sqrt(y*y+k*k)){R();return}if(h){if(h*h>y*y+k*k){R();return}var S=h*Math.cos(w),x=h*Math.sin(w);m.x+=S,m.y+=x,r.attr({x2:m.x,y2:m.y})}if(p){if(p*p>y*y+k*k){R();return}var M=p*Math.cos(w),d=p*Math.sin(w);b.x-=M,b.y-=d,r.attr({x1:b.x,y1:b.y})}}else if(a.nodeName==="path"){var _=a.getTotalLength(),g="";if(_{"use strict";var HL=it(),Rm=Cr(),Vre=on(),jo=ir(),Pm=jo.strTranslate,L0=Lt(),os=Xr(),fo=mt(),VL=io(),Im=Wn(),Fm=Vo(),E0=ai(),Gre=yt().arrayEditor,Yre=UL();WL.exports={draw:Wre,drawOne:GL,drawRaw:YL};function Wre(e){var r=e._fullLayout;r._infolayer.selectAll(".annotation").remove();for(var t=0;t2/3?Ke="right":Ke="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[Ke]}for(var re=!1,H=["x","y"],ee=0;ee1)&&(ue===te?(ye=ve.r2fraction(r["a"+V]),(ye<0||ye>1)&&(re=!0)):re=!0),Ne=ve._offset+ve.r2p(r[V]),we=.5}else{var pe=me==="domain";V==="x"?(ge=r[V],Ne=pe?ve._offset+ve._length*ge:Ne=l.l+l.w*ge):(ge=1-r[V],Ne=pe?ve._offset+ve._length*ge:Ne=l.t+l.h*ge),we=r.showarrow?.5:ge}if(r.showarrow){Ee.head=Ne;var ce=r["a"+V];if(Te=Se*oe(.5,r.xanchor)-he*oe(.5,r.yanchor),ue===te){var xe=L0.getRefType(ue);xe==="domain"?(V==="y"&&(ce=1-ce),Ee.tail=ve._offset+ve._length*ce):xe==="paper"?V==="y"?(ce=1-ce,Ee.tail=l.t+l.h*ce):Ee.tail=l.l+l.w*ce:Ee.tail=ve._offset+ve.r2p(ce),Ue=Te}else Ee.tail=Ne+ce,Ue=Te+ce;Ee.text=Ee.tail+Te;var Le=i[V==="x"?"width":"height"];if(te==="paper"&&(Ee.head=jo.constrain(Ee.head,1,Le-1)),ue==="pixel"){var qe=-Math.max(Ee.tail-3,Ee.text),ze=Math.min(Ee.tail+3,Ee.text)-Le;qe>0?(Ee.tail+=qe,Ee.text+=qe):ze>0&&(Ee.tail-=ze,Ee.text-=ze)}Ee.tail+=Pe,Ee.head+=Pe}else Te=Ae*oe(we,Ce),Ue=Te,Ee.text=Ne+Te;Ee.text+=Pe,Te+=Pe,Ue+=Pe,r["_"+V+"padplus"]=Ae/2+Ue,r["_"+V+"padminus"]=Ae/2-Ue,r["_"+V+"size"]=Ae,r["_"+V+"shift"]=Te}if(re){_.remove();return}var $e=0,Ve=0;if(r.align!=="left"&&($e=(q-j)*(r.align==="center"?.5:1)),r.valign!=="top"&&(Ve=(K-Y)*(r.valign==="middle"?.5:1)),X)U.select("svg").attr({x:A+$e-1,y:A+Ve}).call(fo.setClipUrl,D?w:null,e);else{var Be=A+Ve-$.top,Ye=A+$e-$.left;F.call(Im.positionText,Ye,Be).call(fo.setClipUrl,D?w:null,e)}E.select("rect").call(fo.setRect,A,A,q,K),v.call(fo.setRect,g/2,g/2,ne-g,Q-g),_.call(fo.setTranslate,Math.round(T.x.text-ne/2),Math.round(T.y.text-Q/2)),S.attr({transform:"rotate("+y+","+T.x.text+","+T.y.text+")"});var Me=function(Qe,Ke){k.selectAll(".annotation-arrow-g").remove();var ar=T.x.head,se=T.y.head,J=T.x.tail+Qe,ae=T.y.tail+Ke,De=T.x.text+Qe,He=T.y.text+Ke,er=jo.rotationXYMatrix(y,De,He),nr=jo.apply2DTransform(er),fr=jo.apply2DTransform2(er),br=+v.attr("width"),Sr=+v.attr("height"),Mr=De-.5*br,Ar=Mr+br,ft=He-.5*Sr,sr=ft+Sr,Pr=[[Mr,ft,Mr,sr],[Mr,sr,Ar,sr],[Ar,sr,Ar,ft],[Ar,ft,Mr,ft]].map(fr);if(!Pr.reduce(function(gt,Ft){return gt^!!jo.segmentsIntersect(ar,se,ar+1e6,se+1e6,Ft[0],Ft[1],Ft[2],Ft[3])},!1)){Pr.forEach(function(gt){var Ft=jo.segmentsIntersect(J,ae,ar,se,gt[0],gt[1],gt[2],gt[3]);Ft&&(J=Ft.x,ae=Ft.y)});var $r=r.arrowwidth,Fr=r.arrowcolor,Gr=r.arrowside,pt=k.append("g").style({opacity:os.opacity(Fr)}).classed("annotation-arrow-g",!0),Rr=pt.append("path").attr("d","M"+J+","+ae+"L"+ar+","+se).style("stroke-width",$r+"px").call(os.stroke,os.rgb(Fr));if(Yre(Rr,Gr,r),u.annotationPosition&&Rr.node().parentNode&&!n){var jr=ar,hn=se;if(r.standoff){var Et=Math.sqrt(Math.pow(ar-J,2)+Math.pow(se-ae,2));jr+=r.standoff*(J-ar)/Et,hn+=r.standoff*(ae-se)/Et}var Tn=pt.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(J-jr)+","+(ae-hn),transform:Pm(jr,hn)}).style("stroke-width",$r+6+"px").call(os.stroke,"rgba(0,0,0,0)").call(os.fill,"rgba(0,0,0,0)"),Ot,bt;E0.init({element:Tn.node(),gd:e,prepFn:function(){var gt=fo.getTranslate(_);Ot=gt.x,bt=gt.y,a&&a.autorange&&p(a._name+".autorange",!0),o&&o.autorange&&p(o._name+".autorange",!0)},moveFn:function(gt,Ft){var ha=nr(Ot,bt),Qn=ha[0]+gt,In=ha[1]+Ft;_.call(fo.setTranslate,Qn,In),b("x",$o(a,gt,"x",l,r)),b("y",$o(o,Ft,"y",l,r)),r.axref===r.xref&&b("ax",$o(a,gt,"ax",l,r)),r.ayref===r.yref&&b("ay",$o(o,Ft,"ay",l,r)),pt.attr("transform",Pm(gt,Ft)),S.attr({transform:"rotate("+y+","+Qn+","+In+")"})},doneFn:function(){Rm.call("_guiRelayout",e,m());var gt=document.querySelector(".js-notes-box-panel");gt&>.redraw(gt.selectedObj)}})}}};if(r.showarrow&&Me(0,0),x){var Re;E0.init({element:_.node(),gd:e,prepFn:function(){Re=S.attr("transform")},moveFn:function(Qe,Ke){var ar="pointer";if(r.showarrow)r.axref===r.xref?b("ax",$o(a,Qe,"ax",l,r)):b("ax",r.ax+Qe),r.ayref===r.yref?b("ay",$o(o,Ke,"ay",l.w,r)):b("ay",r.ay+Ke),Me(Qe,Ke);else{if(n)return;var se,J;if(a)se=$o(a,Qe,"x",l,r);else{var ae=r._xsize/l.w,De=r.x+(r._xshift-r.xshift)/l.w-ae/2;se=E0.align(De+Qe/l.w,ae,0,1,r.xanchor)}if(o)J=$o(o,Ke,"y",l,r);else{var He=r._ysize/l.h,er=r.y-(r._yshift+r.yshift)/l.h-He/2;J=E0.align(er-Ke/l.h,He,0,1,r.yanchor)}b("x",se),b("y",J),(!a||!o)&&(ar=E0.getCursor(a?.5:se,o?.5:J,r.xanchor,r.yanchor))}S.attr({transform:Pm(Qe,Ke)+Re}),Fm(_,ar)},clickFn:function(Qe,Ke){r.captureevents&&e.emit("plotly_clickannotation",d(Ke))},doneFn:function(){Fm(_),Rm.call("_guiRelayout",e,m());var Qe=document.querySelector(".js-notes-box-panel");Qe&&Qe.redraw(Qe.selectedObj)}})}}u.annotationText?F.call(Im.makeEditable,{delegate:_,gd:e}).call(I).on("edit",function(P){r.text=P,this.call(I),b("text",P),a&&a.autorange&&p(a._name+".autorange",!0),o&&o.autorange&&p(o._name+".autorange",!0),Rm.call("_guiRelayout",e,m())}):F.call(I)}});var $L=de((y1e,QL)=>{"use strict";var XL=ir(),Xre=Cr(),ZL=yt().arrayEditor;QL.exports={hasClickToShow:Zre,onClick:Jre};function Zre(e,r){var t=KL(e,r);return t.on.length>0||t.explicitOff.length>0}function Jre(e,r){var t=KL(e,r),n=t.on,a=t.off.concat(t.explicitOff),o={},i=e._fullLayout.annotations,l,u;if(n.length||a.length){for(l=0;l{"use strict";var Nm=ir(),Lu=Xr();jL.exports=function(r,t,n,a){a("opacity");var o=a("bgcolor"),i=a("bordercolor"),l=Lu.opacity(i);a("borderpad");var u=a("borderwidth"),s=a("showarrow");a("text",s?" ":n._dfltTitle.annotation),a("textangle"),Nm.coerceFont(a,"font",n.font),a("width"),a("align");var f=a("height");if(f&&a("valign"),s){var h=a("arrowside"),p,b;h.indexOf("end")!==-1&&(p=a("arrowhead"),b=a("arrowsize")),h.indexOf("start")!==-1&&(a("startarrowhead",p),a("startarrowsize",b)),a("arrowcolor",l?t.bordercolor:Lu.defaultLine),a("arrowwidth",(l&&u||1)*2),a("standoff"),a("startstandoff")}var m=a("hovertext"),w=n.hoverlabel||{};if(m){var T=a("hoverlabel.bgcolor",w.bgcolor||(Lu.opacity(o)?Lu.rgb(o):Lu.defaultLine)),y=a("hoverlabel.bordercolor",w.bordercolor||Lu.contrast(T)),k=Nm.extendFlat({},w.font);k.color||(k.color=y),Nm.coerceFont(a,"hoverlabel.font",k)}a("captureevents",!!m)}});var rD=de((x1e,eD)=>{"use strict";var qm=ir(),ls=Lt(),Kre=ti(),Qre=zm(),$re=bu();eD.exports=function(r,t){Kre(r,t,{name:"annotations",handleItemDefaults:jre})};function jre(e,r,t){function n(S,x){return qm.coerce(e,r,$re,S,x)}var a=n("visible"),o=n("clicktoshow");if(a||o){Qre(e,r,t,n);for(var i=r.showarrow,l=["x","y"],u=[-10,-30],s={_fullLayout:t},f=0;f<2;f++){var h=l[f],p=ls.coerceRef(e,r,s,h,"","paper");if(p!=="paper"){var b=ls.getFromId(s,p);b._annIndices.push(r._index)}if(ls.coercePosition(r,s,n,p,h,.5),i){var m="a"+h,w=ls.coerceRef(e,r,s,m,"pixel",["pixel","paper"]);w!=="pixel"&&w!==p&&(w=r[m]="pixel");var T=w==="pixel"?u[f]:.4;ls.coercePosition(r,s,n,w,m,T)}n(h+"anchor"),n(h+"shift")}if(qm.noneOrAll(e,r,["x","y"]),i&&qm.noneOrAll(e,r,["ax","ay"]),o){var y=n("xclick"),k=n("yclick");r._xclick=y===void 0?r.x:ls.cleanPosition(y,s,r.xref),r._yclick=k===void 0?r.y:ls.cleanPosition(k,s,r.yref)}}}});var aD=de((b1e,nD)=>{"use strict";var Om=ir(),ss=Lt(),ete=z1().draw;nD.exports=function(r){var t=r._fullLayout,n=Om.filterVisible(t.annotations);if(n.length&&r._fullData.length)return Om.syncOrAsync([ete,rte],r)};function rte(e){var r=e._fullLayout;Om.filterVisible(r.annotations).forEach(function(t){var n=ss.getFromId(e,t.xref),a=ss.getFromId(e,t.yref),o=ss.getRefType(t.xref),i=ss.getRefType(t.yref);t._extremes={},o==="range"&&tD(t,n),i==="range"&&tD(t,a)})}function tD(e,r){var t=r._id,n=t.charAt(0),a=e[n],o=e["a"+n],i=e[n+"ref"],l=e["a"+n+"ref"],u=e["_"+n+"padplus"],s=e["_"+n+"padminus"],f={x:1,y:-1}[n]*e[n+"shift"],h=3*e.arrowsize*e.arrowwidth||0,p=h+f,b=h-f,m=3*e.startarrowsize*e.arrowwidth||0,w=m+f,T=m-f,y;if(l===i){var k=ss.findExtremes(r,[r.r2c(a)],{ppadplus:p,ppadminus:b}),S=ss.findExtremes(r,[r.r2c(o)],{ppadplus:Math.max(u,w),ppadminus:Math.max(s,T)});y={min:[k.min[0],S.min[0]],max:[k.max[0],S.max[0]]}}else w=o?w+o:w,T=o?T-o:T,y=ss.findExtremes(r,[r.r2c(a)],{ppadplus:Math.max(u,p,w),ppadminus:Math.max(s,b,T)});e._extremes[t]=y}});var oD=de((_1e,iD)=>{"use strict";var tte=nt(),nte=Dc();iD.exports=function(r,t,n,a){t=t||{};var o=n==="log"&&t.type==="linear",i=n==="linear"&&t.type==="log";if(!(o||i))return;var l=r._fullLayout.annotations,u=t._id.charAt(0),s,f;function h(b){var m=s[b],w=null;o?w=nte(m,t.range):w=Math.pow(10,m),tte(w)||(w=null),a(f+b,w)}for(var p=0;p{"use strict";var Bm=z1(),lD=$L();sD.exports={moduleType:"component",name:"annotations",layoutAttributes:bu(),supplyLayoutDefaults:rD(),includeBasePlot:c0()("annotations"),calcAutorange:aD(),draw:Bm.draw,drawOne:Bm.drawOne,drawRaw:Bm.drawRaw,hasClickToShow:lD.hasClickToShow,onClick:lD.onClick,convertCoords:oD()}});var q1=de((M1e,fD)=>{"use strict";var Mt=bu(),ate=zn().overrideAll,ite=yt().templatedArray;fD.exports=ate(ite("annotation",{visible:Mt.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:Mt.xanchor,xshift:Mt.xshift,yanchor:Mt.yanchor,yshift:Mt.yshift,text:Mt.text,textangle:Mt.textangle,font:Mt.font,width:Mt.width,height:Mt.height,opacity:Mt.opacity,align:Mt.align,valign:Mt.valign,bgcolor:Mt.bgcolor,bordercolor:Mt.bordercolor,borderpad:Mt.borderpad,borderwidth:Mt.borderwidth,showarrow:Mt.showarrow,arrowcolor:Mt.arrowcolor,arrowhead:Mt.arrowhead,startarrowhead:Mt.startarrowhead,arrowside:Mt.arrowside,arrowsize:Mt.arrowsize,startarrowsize:Mt.startarrowsize,arrowwidth:Mt.arrowwidth,standoff:Mt.standoff,startstandoff:Mt.startstandoff,hovertext:Mt.hovertext,hoverlabel:Mt.hoverlabel,captureevents:Mt.captureevents}),"calc","from-root")});var hD=de((T1e,cD)=>{"use strict";var Um=ir(),ote=Lt(),lte=ti(),ste=zm(),ute=q1();cD.exports=function(r,t,n){lte(r,t,{name:"annotations",handleItemDefaults:fte,fullLayout:n.fullLayout})};function fte(e,r,t,n){function a(l,u){return Um.coerce(e,r,ute,l,u)}function o(l){var u=l+"axis",s={_fullLayout:{}};return s._fullLayout[u]=t[u],ote.coercePosition(r,s,a,l,l,.5)}var i=a("visible");i&&(ste(e,r,n.fullLayout,a),o("x"),o("y"),o("z"),Um.noneOrAll(e,r,["x","y","z"]),r.xref="x",r.yref="y",r.zref="z",a("xanchor"),a("yanchor"),a("xshift"),a("yshift"),r.showarrow&&(r.axref="pixel",r.ayref="pixel",a("ax",-10),a("ay",-30),Um.noneOrAll(e,r,["ax","ay"])))}});var gD=de((A1e,pD)=>{"use strict";var vD=ir(),dD=Lt();pD.exports=function(r){for(var t=r.fullSceneLayout,n=t.annotations,a=0;a{"use strict";function Hm(e,r){var t=[0,0,0,0],n,a;for(n=0;n<4;++n)for(a=0;a<4;++a)t[a]+=e[4*n+a]*r[n];return t}function hte(e,r){var t=Hm(e.projection,Hm(e.view,Hm(e.model,[r[0],r[1],r[2],1])));return t}yD.exports=hte});var xD=de((S1e,mD)=>{"use strict";var vte=z1().drawRaw,dte=Vm(),pte=["x","y","z"];mD.exports=function(r){for(var t=r.fullSceneLayout,n=r.dataScale,a=t.annotations,o=0;o1){l=!0;break}}l?r.fullLayout._infolayer.select(".annotation-"+r.id+'[data-index="'+o+'"]').remove():(i._pdata=dte(r.glplot.cameraParams,[t.xaxis.r2l(i.x)*n[0],t.yaxis.r2l(i.y)*n[1],t.zaxis.r2l(i.z)*n[2]]),vte(r.graphDiv,i,o,r.id,i._xa,i._ya))}}});var wD=de((C1e,_D)=>{"use strict";var gte=Cr(),bD=ir();_D.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:q1()}}},layoutAttributes:q1(),handleDefaults:hD(),includeBasePlot:yte,convert:gD(),draw:xD()};function yte(e,r){var t=gte.subplotsRegistry.gl3d;if(t)for(var n=t.attrRegex,a=Object.keys(e),o=0;o{"use strict";var MD=bu(),TD=kn(),AD=jl().line,mte=Ao().dash,ci=Tt().extendFlat,xte=yt().templatedArray,E1e=f0(),Du=Sn(),{shapeTexttemplateAttrs:bte,templatefallbackAttrs:_te}=Qa(),wte=Hc();kD.exports=xte("shape",{visible:ci({},Du.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:ci({},Du.legend,{editType:"calc+arraydraw"}),legendgroup:ci({},Du.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:ci({},Du.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:TD({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:ci({},Du.legendrank,{editType:"calc+arraydraw"}),legendwidth:ci({},Du.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:ci({},MD.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:ci({},MD.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:ci({},AD.color,{editType:"arraydraw"}),width:ci({},AD.width,{editType:"calc+arraydraw"}),dash:ci({},mte,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:bte({},{keys:Object.keys(wte)}),texttemplatefallback:_te({editType:"arraydraw"}),font:TD({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var ED=de((D1e,CD)=>{"use strict";var D0=ir(),Ru=Lt(),Mte=ti(),Tte=Gm(),SD=Wo();CD.exports=function(r,t){Mte(r,t,{name:"shapes",handleItemDefaults:kte})};function Ate(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}function kte(e,r,t){function n(P,O){return D0.coerce(e,r,Tte,P,O)}r._isShape=!0;var a=n("visible");if(a){var o=n("showlegend");o&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),D0.coerceFont(n,"legendgrouptitle.font"),n("legendrank"));var i=n("path"),l=i?"path":"rect",u=n("type",l),s=u!=="path";s&&delete r.path,n("editable"),n("layer"),n("opacity"),n("fillcolor"),n("fillrule");var f=n("line.width");f&&(n("line.color"),n("line.dash"));for(var h=n("xsizemode"),p=n("ysizemode"),b=["x","y"],m=0;m<2;m++){var w=b[m],T=w+"anchor",y=w==="x"?h:p,k={_fullLayout:t},S,x,M,d=Ru.coerceRef(e,r,k,w,void 0,"paper"),_=Ru.getRefType(d);if(_==="range"?(S=Ru.getFromId(k,d),S._shapeIndices.push(r._index),M=SD.rangeToShapePosition(S),x=SD.shapePositionToRange(S),(S.type==="category"||S.type==="multicategory")&&(n(w+"0shift"),n(w+"1shift"))):x=M=D0.identity,s){var g=.25,c=.75,A=w+"0",v=w+"1",D=e[A],E=e[v];e[A]=x(e[A],!0),e[v]=x(e[v],!0),y==="pixel"?(n(A,0),n(v,10)):(Ru.coercePosition(r,k,n,d,A,g),Ru.coercePosition(r,k,n,d,v,c)),r[A]=M(r[A]),r[v]=M(r[v]),e[A]=D,e[v]=E}if(y==="pixel"){var R=e[T];e[T]=x(e[T],!0),Ru.coercePosition(r,k,n,d,T,.25),r[T]=M(r[T]),e[T]=R}}s&&D0.noneOrAll(e,r,["x0","x1","y0","y1"]);var N=u==="line",F,I;if(s&&(F=n("label.texttemplate"),n("label.texttemplatefallback")),F||(I=n("label.text")),I||F){n("label.textangle");var L=n("label.textposition",N?"middle":"middle center");n("label.xanchor"),n("label.yanchor",Ate(N,L)),n("label.padding"),D0.coerceFont(n,"label.font",t.font)}}}});var RD=de((R1e,DD)=>{"use strict";var Ste=Xr(),LD=ir();function Cte(e,r){return e?"bottom":r.indexOf("top")!==-1?"top":r.indexOf("bottom")!==-1?"bottom":"middle"}DD.exports=function(r,t,n){n("newshape.visible"),n("newshape.name"),n("newshape.showlegend"),n("newshape.legend"),n("newshape.legendwidth"),n("newshape.legendgroup"),n("newshape.legendgrouptitle.text"),LD.coerceFont(n,"newshape.legendgrouptitle.font"),n("newshape.legendrank"),n("newshape.drawdirection"),n("newshape.layer"),n("newshape.fillcolor"),n("newshape.fillrule"),n("newshape.opacity");var a=n("newshape.line.width");if(a){var o=(r||{}).plot_bgcolor||"#FFF";n("newshape.line.color",Ste.contrast(o)),n("newshape.line.dash")}var i=r.dragmode==="drawline",l=n("newshape.label.text"),u=n("newshape.label.texttemplate");if(n("newshape.label.texttemplatefallback"),l||u){n("newshape.label.textangle");var s=n("newshape.label.textposition",i?"middle":"middle center");n("newshape.label.xanchor"),n("newshape.label.yanchor",Cte(i,s)),n("newshape.label.padding"),LD.coerceFont(n,"newshape.label.font",t.font)}n("activeshape.fillcolor"),n("activeshape.opacity")}});var zD=de((P1e,ND)=>{"use strict";var Ym=ir(),Pu=Lt(),Iu=Gf(),ID=Wo();ND.exports=function(r){var t=r._fullLayout,n=Ym.filterVisible(t.shapes);if(!(!n.length||!r._fullData.length))for(var a=0;a0?s+i:i;return{ppad:i,ppadplus:l?h:p,ppadminus:l?p:h}}else return{ppad:i}}function PD(e,r,t){var n=e._id.charAt(0)==="x"?"x":"y",a=e.type==="category"||e.type==="multicategory",o,i,l=0,u=0,s=a?e.r2c:e.d2c,f=r[n+"sizemode"]==="scaled";if(f?(o=r[n+"0"],i=r[n+"1"],a&&(l=r[n+"0shift"],u=r[n+"1shift"])):(o=r[n+"anchor"],i=r[n+"anchor"]),o!==void 0)return[s(o)+l,s(i)+u];if(r.path){var h=1/0,p=-1/0,b=r.path.match(Iu.segmentRE),m,w,T,y,k;for(e.type==="date"&&(s=ID.decodeDate(s)),m=0;mp&&(p=k)));if(p>=h)return[h,p]}}});var BD=de((I1e,OD)=>{"use strict";var qD=Cv();OD.exports={moduleType:"component",name:"shapes",layoutAttributes:Gm(),supplyLayoutDefaults:ED(),supplyDrawNewShapeDefaults:RD(),includeBasePlot:c0()("shapes"),calcAutorange:zD(),draw:qD.draw,drawOne:qD.drawOne}});var Wm=de((N1e,HD)=>{"use strict";var UD=_n(),Dte=yt().templatedArray,F1e=f0();HD.exports=Dte("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",UD.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",UD.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var GD=de((z1e,VD)=>{"use strict";var Rte=ir(),Xm=Lt(),Pte=ti(),Ite=Wm(),Fte="images";VD.exports=function(r,t){var n={name:Fte,handleItemDefaults:Nte};Pte(r,t,n)};function Nte(e,r,t){function n(p,b){return Rte.coerce(e,r,Ite,p,b)}var a=n("source"),o=n("visible",!!a);if(!o)return r;n("layer"),n("xanchor"),n("yanchor"),n("sizex"),n("sizey"),n("sizing"),n("opacity");for(var i={_fullLayout:t},l=["x","y"],u=0;u<2;u++){var s=l[u],f=Xm.coerceRef(e,r,i,s,"paper",void 0);if(f!=="paper"){var h=Xm.getFromId(i,f);h._imgIndices.push(r._index)}Xm.coercePosition(r,i,n,f,s,0)}return r}});var ZD=de((q1e,XD)=>{"use strict";var YD=it(),zte=mt(),Fu=Lt(),WD=jt(),qte=Fo();XD.exports=function(r){var t=r._fullLayout,n=[],a={},o=[],i,l;for(l=0;l{"use strict";var JD=nt(),Ote=Dc();KD.exports=function(r,t,n,a){t=t||{};var o=n==="log"&&t.type==="linear",i=n==="linear"&&t.type==="log";if(o||i){for(var l=r._fullLayout.images,u=t._id.charAt(0),s,f,h=0;h{"use strict";$D.exports={moduleType:"component",name:"images",layoutAttributes:Wm(),supplyLayoutDefaults:GD(),includeBasePlot:c0()("images"),draw:ZD(),convertCoords:QD()}});var O1=de((U1e,eR)=>{"use strict";eR.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var Zm=de((H1e,tR)=>{"use strict";var Bte=kn(),Ute=Ai(),Hte=Tt().extendFlat,Vte=zn().overrideAll,Gte=Vc(),rR=yt().templatedArray,Yte=rR("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});tR.exports=Vte(rR("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:Yte,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:Hte(Gte({editType:"arraydraw"}),{}),font:Bte({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:Ute.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var oR=de((V1e,iR)=>{"use strict";var B1=ir(),nR=ti(),aR=Zm(),Wte=O1(),Xte=Wte.name,Zte=aR.buttons;iR.exports=function(r,t){var n={name:Xte,handleItemDefaults:Jte};nR(r,t,n)};function Jte(e,r,t){function n(i,l){return B1.coerce(e,r,aR,i,l)}var a=nR(e,r,{name:"buttons",handleItemDefaults:Kte}),o=n("visible",a.length>0);o&&(n("active"),n("direction"),n("type"),n("showactive"),n("x"),n("y"),B1.noneOrAll(e,r,["x","y"]),n("xanchor"),n("yanchor"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),B1.coerceFont(n,"font",t.font),n("bgcolor",t.paper_bgcolor),n("bordercolor"),n("borderwidth"))}function Kte(e,r){function t(a,o){return B1.coerce(e,r,Zte,a,o)}var n=t("visible",e.method==="skip"||Array.isArray(e.args));n&&(t("method"),t("args"),t("args2"),t("label"),t("execute"))}});var uR=de((G1e,sR)=>{"use strict";sR.exports=Rt;var hi=it(),lR=Xr(),Nu=mt(),U1=ir();function Rt(e,r,t){this.gd=e,this.container=r,this.id=t,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}Rt.barWidth=2;Rt.barLength=20;Rt.barRadius=2;Rt.barPad=1;Rt.barColor="#808BA4";Rt.prototype.enable=function(r,t,n){var a=this.gd._fullLayout,o=a.width,i=a.height;this.position=r;var l=this.position.l,u=this.position.w,s=this.position.t,f=this.position.h,h=this.position.direction,p=h==="down",b=h==="left",m=h==="right",w=h==="up",T=u,y=f,k,S,x,M;!p&&!b&&!m&&!w&&(this.position.direction="down",p=!0);var d=p||w;d?(k=l,S=k+T,p?(x=s,M=Math.min(x+y,i),y=M-x):(M=s+y,x=Math.max(M-y,0),y=M-x)):(x=s,M=x+y,b?(S=l+T,k=Math.max(S-T,0),T=S-k):(k=l,S=Math.min(k+T,o),T=S-k)),this._box={l:k,t:x,w:T,h:y};var _=u>T,g=Rt.barLength+2*Rt.barPad,c=Rt.barWidth+2*Rt.barPad,A=l,v=s+f;v+c>i&&(v=i-c);var D=this.container.selectAll("rect.scrollbar-horizontal").data(_?[0]:[]);D.exit().on(".drag",null).remove(),D.enter().append("rect").classed("scrollbar-horizontal",!0).call(lR.fill,Rt.barColor),_?(this.hbar=D.attr({rx:Rt.barRadius,ry:Rt.barRadius,x:A,y:v,width:g,height:c}),this._hbarXMin=A+g/2,this._hbarTranslateMax=T-g):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var E=f>y,R=Rt.barWidth+2*Rt.barPad,N=Rt.barLength+2*Rt.barPad,F=l+u,I=s;F+R>o&&(F=o-R);var L=this.container.selectAll("rect.scrollbar-vertical").data(E?[0]:[]);L.exit().on(".drag",null).remove(),L.enter().append("rect").classed("scrollbar-vertical",!0).call(lR.fill,Rt.barColor),E?(this.vbar=L.attr({rx:Rt.barRadius,ry:Rt.barRadius,x:F,y:I,width:R,height:N}),this._vbarYMin=I+N/2,this._vbarTranslateMax=y-N):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var P=this.id,O=k-.5,U=E?S+R+.5:S+.5,X=x-.5,$=_?M+c+.5:M+.5,j=a._topdefs.selectAll("#"+P).data(_||E?[0]:[]);if(j.exit().remove(),j.enter().append("clipPath").attr("id",P).append("rect"),_||E?(this._clipRect=j.select("rect").attr({x:Math.floor(O),y:Math.floor(X),width:Math.ceil(U)-Math.floor(O),height:Math.ceil($)-Math.floor(X)}),this.container.call(Nu.setClipUrl,P,this.gd),this.bg.attr({x:l,y:s,width:u,height:f})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Nu.setClipUrl,null),delete this._clipRect),_||E){var Y=hi.behavior.drag().on("dragstart",function(){hi.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(Y);var q=hi.behavior.drag().on("dragstart",function(){hi.event.sourceEvent.preventDefault(),hi.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));_&&this.hbar.on(".drag",null).call(q),E&&this.vbar.on(".drag",null).call(q)}this.setTranslate(t,n)};Rt.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Nu.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};Rt.prototype._onBoxDrag=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r-=hi.event.dx),this.vbar&&(t-=hi.event.dy),this.setTranslate(r,t)};Rt.prototype._onBoxWheel=function(){var r=this.translateX,t=this.translateY;this.hbar&&(r+=hi.event.deltaY),this.vbar&&(t+=hi.event.deltaY),this.setTranslate(r,t)};Rt.prototype._onBarDrag=function(){var r=this.translateX,t=this.translateY;if(this.hbar){var n=r+this._hbarXMin,a=n+this._hbarTranslateMax,o=U1.constrain(hi.event.x,n,a),i=(o-n)/(a-n),l=this.position.w-this._box.w;r=i*l}if(this.vbar){var u=t+this._vbarYMin,s=u+this._vbarTranslateMax,f=U1.constrain(hi.event.y,u,s),h=(f-u)/(s-u),p=this.position.h-this._box.h;t=h*p}this.setTranslate(r,t)};Rt.prototype.setTranslate=function(r,t){var n=this.position.w-this._box.w,a=this.position.h-this._box.h;if(r=U1.constrain(r||0,0,n),t=U1.constrain(t||0,0,a),this.translateX=r,this.translateY=t,this.container.call(Nu.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-t),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+t-.5)}),this.hbar){var o=r/n;this.hbar.call(Nu.setTranslate,r+o*this._hbarTranslateMax,t)}if(this.vbar){var i=t/a;this.vbar.call(Nu.setTranslate,r,t+i*this._vbarTranslateMax)}}});var xR=de((Y1e,mR)=>{"use strict";var zu=it(),R0=on(),P0=Xr(),qu=mt(),ba=ir(),H1=Wn(),Qte=yt().arrayEditor,cR=qn().LINE_SPACING,Dr=O1(),$te=uR();mR.exports=function(r){var t=r._fullLayout,n=ba.filterVisible(t[Dr.name]);function a(p){R0.autoMargin(r,gR(p))}var o=t._menulayer.selectAll("g."+Dr.containerClassName).data(n.length>0?[0]:[]);if(o.enter().append("g").classed(Dr.containerClassName,!0).style("cursor","pointer"),o.exit().each(function(){zu.select(this).selectAll("g."+Dr.headerGroupClassName).each(a)}).remove(),n.length!==0){var i=o.selectAll("g."+Dr.headerGroupClassName).data(n,jte);i.enter().append("g").classed(Dr.headerGroupClassName,!0);for(var l=ba.ensureSingle(o,"g",Dr.dropdownButtonGroupClassName,function(p){p.style("pointer-events","all")}),u=0;u{"use strict";var one=O1();bR.exports={moduleType:"component",name:one.name,layoutAttributes:Zm(),supplyLayoutDefaults:oR(),draw:xR()}});var F0=de((X1e,wR)=>{"use strict";wR.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var $m=de((Z1e,AR)=>{"use strict";var MR=kn(),lne=Vc(),sne=Tt().extendDeepAll,une=zn().overrideAll,fne=gf(),TR=yt().templatedArray,us=F0(),cne=TR("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});AR.exports=une(TR("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:cne,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:sne(lne({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:fne.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:MR({})},font:MR({}),activebgcolor:{valType:"color",dflt:us.gripBgActiveColor},bgcolor:{valType:"color",dflt:us.railBgColor},bordercolor:{valType:"color",dflt:us.railBorderColor},borderwidth:{valType:"number",min:0,dflt:us.railBorderWidth},ticklen:{valType:"number",min:0,dflt:us.tickLength},tickcolor:{valType:"color",dflt:us.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:us.minorTickLength}}),"arraydraw","from-root")});var ER=de((J1e,CR)=>{"use strict";var Ou=ir(),kR=ti(),SR=$m(),hne=F0(),vne=hne.name,dne=SR.steps;CR.exports=function(r,t){kR(r,t,{name:vne,handleItemDefaults:pne})};function pne(e,r,t){function n(h,p){return Ou.coerce(e,r,SR,h,p)}for(var a=kR(e,r,{name:"steps",handleItemDefaults:gne}),o=0,i=0;i{"use strict";var vi=it(),V1=on(),el=Xr(),di=mt(),_a=ir(),yne=_a.strTranslate,N0=Wn(),mne=yt().arrayEditor,Vr=F0(),r3=qn(),RR=r3.LINE_SPACING,jm=r3.FROM_TL,e3=r3.FROM_BR;qR.exports=function(r){var t=r._context.staticPlot,n=r._fullLayout,a=xne(n,r),o=n._infolayer.selectAll("g."+Vr.containerClassName).data(a.length>0?[0]:[]);o.enter().append("g").classed(Vr.containerClassName,!0).style("cursor",t?null:"ew-resize");function i(f){f._commandObserver&&(f._commandObserver.remove(),delete f._commandObserver),V1.autoMargin(r,PR(f))}if(o.exit().each(function(){vi.select(this).selectAll("g."+Vr.groupClassName).each(i)}).remove(),a.length!==0){var l=o.selectAll("g."+Vr.groupClassName).data(a,bne);l.enter().append("g").classed(Vr.groupClassName,!0),l.exit().each(i).remove();for(var u=0;u0&&(l=l.transition().duration(r.transition.duration).ease(r.transition.easing)),l.attr("transform",yne(i-Vr.gripWidth*.5,r._dims.currentValueTotalHeight))}}function t3(e,r){var t=e._dims;return t.inputAreaStart+Vr.stepInset+(t.inputAreaLength-2*Vr.stepInset)*Math.min(1,Math.max(0,r))}function DR(e,r){var t=e._dims;return Math.min(1,Math.max(0,(r-Vr.stepInset-t.inputAreaStart)/(t.inputAreaLength-2*Vr.stepInset-2*t.inputAreaStart)))}function Sne(e,r,t){var n=t._dims,a=_a.ensureSingle(e,"rect",Vr.railTouchRectClass,function(o){o.call(NR,r,e,t).style("pointer-events","all")});a.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,Vr.tickOffset+t.ticklen+n.labelHeight)}).call(el.fill,t.bgcolor).attr("opacity",0),di.setTranslate(a,0,n.currentValueTotalHeight)}function Cne(e,r){var t=r._dims,n=t.inputAreaLength-Vr.railInset*2,a=_a.ensureSingle(e,"rect",Vr.railRectClass);a.attr({width:n,height:Vr.railWidth,rx:Vr.railRadius,ry:Vr.railRadius,"shape-rendering":"crispEdges"}).call(el.stroke,r.bordercolor).call(el.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px"),di.setTranslate(a,Vr.railInset,(t.inputAreaWidth-Vr.railWidth)*.5+t.currentValueTotalHeight)}});var UR=de((Q1e,BR)=>{"use strict";var Ene=F0();BR.exports={moduleType:"component",name:Ene.name,layoutAttributes:$m(),supplyLayoutDefaults:ER(),draw:OR()}});var Y1=de(($1e,VR)=>{"use strict";var HR=Ai();VR.exports={bgcolor:{valType:"color",dflt:HR.background,editType:"plot"},bordercolor:{valType:"color",dflt:HR.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var n3=de((j1e,GR)=>{"use strict";GR.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var W1=de((ede,YR)=>{"use strict";YR.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var ZR=de(Z1=>{"use strict";var Lne=jt(),Dne=Wn(),WR=W1(),Rne=qn().LINE_SPACING,X1=WR.name;function XR(e){var r=e&&e[X1];return r&&r.visible}Z1.isVisible=XR;Z1.makeData=function(e){for(var r=Lne.list({_fullLayout:e},"x",!0),t=e.margin,n=[],a=0;a{"use strict";var J1=ir(),JR=yt(),KR=jt(),Pne=Y1(),Ine=n3();QR.exports=function(r,t,n){var a=r[n],o=t[n];if(!(a.rangeslider||t._requestRangeslider[o._id]))return;J1.isPlainObject(a.rangeslider)||(a.rangeslider={});var i=a.rangeslider,l=JR.newContainer(o,"rangeslider");function u(M,d){return J1.coerce(i,l,Pne,M,d)}var s,f;function h(M,d){return J1.coerce(s,f,Ine,M,d)}var p=u("visible");if(p){u("bgcolor",t.plot_bgcolor),u("bordercolor"),u("borderwidth"),u("thickness"),u("autorange",!o.isValidRange(i.range)),u("range");var b=t._subplots;if(b)for(var m=b.cartesian.filter(function(M){return M.slice(0,Math.max(0,M.indexOf("y")))===KR.name2id(n)}).map(function(M){return M.slice(M.indexOf("y"),M.length)}),w=J1.simpleMap(m,KR.id2name),T=0;T{"use strict";var Fne=jt().list,Nne=eu().getAutoRange,zne=W1();jR.exports=function(r){for(var t=Fne(r,"x",!0),n=0;n{"use strict";var K1=it(),qne=Cr(),One=on(),qt=ir(),Q1=qt.strTranslate,tP=mt(),rl=Xr(),Bne=Rf(),Une=Lm(),a3=jt(),Hne=ai(),Vne=Vo(),Kr=W1();nP.exports=function(e){for(var r=e._fullLayout,t=r._rangeSliderData,n=0;n=L.max)F=v[I+1];else if(N=L.pmax)F=v[I+1];else if(N0?e.touches[0].clientX:0}function Gne(e,r,t,n){if(r._context.staticPlot)return;var a=e.select("rect."+Kr.slideBoxClassName).node(),o=e.select("rect."+Kr.grabAreaMinClassName).node(),i=e.select("rect."+Kr.grabAreaMaxClassName).node();function l(){var u=K1.event,s=u.target,f=rP(u),h=f-e.node().getBoundingClientRect().left,p=n.d2p(t._rl[0]),b=n.d2p(t._rl[1]),m=Hne.coverSlip();this.addEventListener("touchmove",w),this.addEventListener("touchend",T),m.addEventListener("mousemove",w),m.addEventListener("mouseup",T);function w(y){var k=rP(y),S=+k-f,x,M,d;switch(s){case a:if(d="ew-resize",p+S>t._length||b+S<0)return;x=p+S,M=b+S;break;case o:if(d="col-resize",p+S>t._length)return;x=p+S,M=b;break;case i:if(d="col-resize",b+S<0)return;x=p,M=b+S;break;default:d="ew-resize",x=h,M=h+S;break}if(M{"use strict";var eae=ir(),rae=Y1(),tae=n3(),i3=ZR();iP.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:eae.extendFlat({},rae,{yaxis:tae})}}},layoutAttributes:Y1(),handleDefaults:$R(),calcAutorange:eP(),draw:aP(),isVisible:i3.isVisible,makeData:i3.makeData,autoMarginOpts:i3.autoMarginOpts}});var $1=de((ode,sP)=>{"use strict";var nae=kn(),lP=Ai(),aae=yt().templatedArray,iae=aae("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});sP.exports={visible:{valType:"boolean",editType:"plot"},buttons:iae,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:nae({editType:"plot"}),bgcolor:{valType:"color",dflt:lP.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:lP.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var o3=de((lde,uP)=>{"use strict";uP.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var hP=de((sde,cP)=>{"use strict";var j1=ir(),oae=Xr(),lae=yt(),sae=ti(),fP=$1(),l3=o3();cP.exports=function(r,t,n,a,o){var i=r.rangeselector||{},l=lae.newContainer(t,"rangeselector");function u(b,m){return j1.coerce(i,l,fP,b,m)}var s=sae(i,l,{name:"buttons",handleItemDefaults:uae,calendar:o}),f=u("visible",s.length>0);if(f){var h=fae(t,n,a);u("x",h[0]),u("y",h[1]),j1.noneOrAll(r,t,["x","y"]),u("xanchor"),u("yanchor"),j1.coerceFont(u,"font",n.font);var p=u("bgcolor");u("activecolor",oae.contrast(p,l3.lightAmount,l3.darkAmount)),u("bordercolor"),u("borderwidth")}};function uae(e,r,t,n){var a=n.calendar;function o(u,s){return j1.coerce(e,r,fP.buttons,u,s)}var i=o("visible");if(i){var l=o("step");l!=="all"&&(a&&a!=="gregorian"&&(l==="month"||l==="year")?r.stepmode="backward":o("stepmode"),o("count")),o("label")}}function fae(e,r,t){for(var n=t.filter(function(l){return r[l].anchor===e._id}),a=0,o=0;o{"use strict";var cae=up(),hae=ir().titleCase;vP.exports=function(r,t){var n=r._name,a={};if(t.step==="all")a[n+".autorange"]=!0;else{var o=vae(r,t);a[n+".range[0]"]=o[0],a[n+".range[1]"]=o[1]}return a};function vae(e,r){var t=e.range,n=new Date(e.r2l(t[1])),a=r.step,o=cae["utc"+hae(a)],i=r.count,l;switch(r.stepmode){case"backward":l=e.l2r(+o.offset(n,-i));break;case"todate":var u=o.offset(n,-i);l=e.l2r(+o.ceil(u));break}var s=t[1];return[l,s]}});var wP=de((fde,_P)=>{"use strict";var rd=it(),dae=Cr(),pae=on(),pP=Xr(),bP=mt(),co=ir(),gP=co.strTranslate,ed=Wn(),gae=jt(),f3=qn(),yP=f3.LINE_SPACING,mP=f3.FROM_TL,xP=f3.FROM_BR,u3=o3(),yae=dP();_P.exports=function(r){var t=r._fullLayout,n=t._infolayer.selectAll(".rangeselector").data(mae(r),xae);n.enter().append("g").classed("rangeselector",!0),n.exit().remove(),n.style({cursor:"pointer","pointer-events":"all"}),n.each(function(a){var o=rd.select(this),i=a,l=i.rangeselector,u=o.selectAll("g.button").data(co.filterVisible(l.buttons));u.enter().append("g").classed("button",!0),u.exit().remove(),u.each(function(s){var f=rd.select(this),h=yae(i,s);s._isActive=bae(i,s,h),f.call(s3,l,s),f.call(wae,l,s,r),f.on("click",function(){r._dragged||dae.call("_guiRelayout",r,h)}),f.on("mouseover",function(){s._isHovered=!0,f.call(s3,l,s)}),f.on("mouseout",function(){s._isHovered=!1,f.call(s3,l,s)})}),Tae(r,u,l,i._name,o)})};function mae(e){for(var r=gae.list(e,"x",!0),t=[],n=0;n{"use strict";MP.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:$1()}}},layoutAttributes:$1(),handleDefaults:hP(),draw:wP()}});var td=de(c3=>{"use strict";var AP=Tt().extendFlat;c3.attributes=function(e,r){e=e||{},r=r||{};var t={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},n=e.name?e.name+" ":"",a=e.trace?"trace ":"subplot ",o=r.description?" "+r.description:"",i={x:AP({},t,{}),y:AP({},t,{}),editType:e.editType};return e.noGridCell||(i.row={valType:"integer",min:0,dflt:0,editType:e.editType},i.column={valType:"integer",min:0,dflt:0,editType:e.editType}),i};c3.defaults=function(e,r,t,n){var a=n&&n.x||[0,1],o=n&&n.y||[0,1],i=r.grid;if(i){var l=t("domain.column");l!==void 0&&(l{"use strict";var Aae=ir(),kae=Ls().counter,Sae=td().attributes,kP=_n().idRegex,Cae=yt(),h3={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[kae("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[kP.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[kP.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:Sae({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function nd(e,r,t){var n=r[t+"axes"],a=Object.keys((e._splomAxes||{})[t]||{});if(Array.isArray(n))return n;if(a.length)return a}function Eae(e,r){var t=e.grid||{},n=nd(r,t,"x"),a=nd(r,t,"y");if(!e.grid&&!n&&!a)return;var o=Array.isArray(t.subplots)&&Array.isArray(t.subplots[0]),i=Array.isArray(n),l=Array.isArray(a),u=i&&n!==t.xaxes&&l&&a!==t.yaxes,s,f;o?(s=t.subplots.length,f=t.subplots[0].length):(l&&(s=a.length),i&&(f=n.length));var h=Cae.newContainer(r,"grid");function p(d,_){return Aae.coerce(t,h,h3,d,_)}var b=p("rows",s),m=p("columns",f);if(!(b*m>1)){delete r.grid;return}if(!o&&!i&&!l){var w=p("pattern")==="independent";w&&(o=!0)}h._hasSubplotGrid=o;var T=p("roworder"),y=T==="top to bottom",k=o?.2:.1,S=o?.3:.1,x,M;u&&r._splomGridDflt&&(x=r._splomGridDflt.xside,M=r._splomGridDflt.yside),h._domains={x:SP("x",p,k,x,m),y:SP("y",p,S,M,b,y)}}function SP(e,r,t,n,a,o){var i=r(e+"gap",t),l=r("domain."+e);r(e+"side",n);for(var u=new Array(a),s=l[0],f=(l[1]-s)/(a-i),h=f*(1-i),p=0;p{"use strict";DP.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var IP=de((pde,PP)=>{"use strict";var RP=nt(),Dae=Cr(),Rae=ir(),Pae=yt(),Iae=v3();PP.exports=function(e,r,t,n){var a="error_"+n.axis,o=Pae.newContainer(r,a),i=e[a]||{};function l(m,w){return Rae.coerce(i,o,Iae,m,w)}var u=i.array!==void 0||i.value!==void 0||i.type==="sqrt",s=l("visible",u);if(s!==!1){var f=l("type","array"in i?"data":"percent"),h=!0;f!=="sqrt"&&(h=l("symmetric",!((f==="data"?"arrayminus":"valueminus")in i))),f==="data"?(l("array"),l("traceref"),h||(l("arrayminus"),l("tracerefminus"))):(f==="percent"||f==="constant")&&(l("value"),h||l("valueminus"));var p="copy_"+n.inherit+"style";if(n.inherit){var b=r["error_"+n.inherit];(b||{}).visible&&l(p,!(i.color||RP(i.thickness)||RP(i.width)))}(!n.inherit||!o[p])&&(l("color",t),l("thickness"),l("width",Dae.traceIs(r,"gl3d")?0:4))}}});var d3=de((gde,NP)=>{"use strict";NP.exports=function(r){var t=r.type,n=r.symmetric;if(t==="data"){var a=r.array||[];if(n)return function(s,f){var h=+a[f];return[h,h]};var o=r.arrayminus||[];return function(s,f){var h=+a[f],p=+o[f];return!isNaN(h)||!isNaN(p)?[p||0,h||0]:[NaN,NaN]}}else{var i=FP(t,r.value),l=FP(t,r.valueminus);return n||r.valueminus===void 0?function(s){var f=i(s);return[f,f]}:function(s){return[l(s),i(s)]}}};function FP(e,r){if(e==="percent")return function(t){return Math.abs(t*r/100)};if(e==="constant")return function(){return Math.abs(r)};if(e==="sqrt")return function(t){return Math.sqrt(Math.abs(t))}}});var OP=de((yde,qP)=>{"use strict";var p3=nt(),Fae=Cr(),g3=Lt(),Nae=ir(),zae=d3();qP.exports=function(r){for(var t=r.calcdata,n=0;n{"use strict";var BP=it(),tl=nt(),qae=mt(),Oae=oa();UP.exports=function(r,t,n,a){var o,i=n.xaxis,l=n.yaxis,u=a&&a.duration>0,s=r._context.staticPlot;t.each(function(f){var h=f[0].trace,p=h.error_x||{},b=h.error_y||{},m;h.ids&&(m=function(k){return k.id});var w=Oae.hasMarkers(h)&&h.marker.maxdisplayed>0;!b.visible&&!p.visible&&(f=[]);var T=BP.select(this).selectAll("g.errorbar").data(f,m);if(T.exit().remove(),!!f.length){p.visible||T.selectAll("path.xerror").remove(),b.visible||T.selectAll("path.yerror").remove(),T.style("opacity",1);var y=T.enter().append("g").classed("errorbar",!0);u&&y.style("opacity",0).transition().duration(a.duration).style("opacity",1),qae.setClipUrl(T,n.layerClipId,r),T.each(function(k){var S=BP.select(this),x=Bae(k,i,l);if(!(w&&!k.vis)){var M,d=S.select("path.yerror");if(b.visible&&tl(x.x)&&tl(x.yh)&&tl(x.ys)){var _=b.width;M="M"+(x.x-_)+","+x.yh+"h"+2*_+"m-"+_+",0V"+x.ys,x.noYS||(M+="m-"+_+",0h"+2*_),o=!d.size(),o?d=S.append("path").style("vector-effect",s?"none":"non-scaling-stroke").classed("yerror",!0):u&&(d=d.transition().duration(a.duration).ease(a.easing)),d.attr("d",M)}else d.remove();var g=S.select("path.xerror");if(p.visible&&tl(x.y)&&tl(x.xh)&&tl(x.xs)){var c=(p.copy_ystyle?b:p).width;M="M"+x.xh+","+(x.y-c)+"v"+2*c+"m0,-"+c+"H"+x.xs,x.noXS||(M+="m0,-"+c+"v"+2*c),o=!g.size(),o?g=S.append("path").style("vector-effect",s?"none":"non-scaling-stroke").classed("xerror",!0):u&&(g=g.transition().duration(a.duration).ease(a.easing)),g.attr("d",M)}else g.remove()}})}})};function Bae(e,r,t){var n={x:r.c2p(e.x),y:t.c2p(e.y)};return e.yh!==void 0&&(n.yh=t.c2p(e.yh),n.ys=t.c2p(e.ys),tl(n.ys)||(n.noYS=!0,n.ys=t.c2p(e.ys,!0))),e.xh!==void 0&&(n.xh=r.c2p(e.xh),n.xs=r.c2p(e.xs),tl(n.xs)||(n.noXS=!0,n.xs=r.c2p(e.xs,!0))),n}});var YP=de((xde,GP)=>{"use strict";var Uae=it(),VP=Xr();GP.exports=function(r){r.each(function(t){var n=t[0].trace,a=n.error_y||{},o=n.error_x||{},i=Uae.select(this);i.selectAll("path.yerror").style("stroke-width",a.thickness+"px").call(VP.stroke,a.color),o.copy_ystyle&&(o=a),i.selectAll("path.xerror").style("stroke-width",o.thickness+"px").call(VP.stroke,o.color)})}});var ZP=de((bde,XP)=>{"use strict";var z0=ir(),WP=zn().overrideAll,q0=v3(),fs={error_x:z0.extendFlat({},q0),error_y:z0.extendFlat({},q0)};delete fs.error_x.copy_zstyle;delete fs.error_y.copy_zstyle;delete fs.error_y.copy_ystyle;var O0={error_x:z0.extendFlat({},q0),error_y:z0.extendFlat({},q0),error_z:z0.extendFlat({},q0)};delete O0.error_x.copy_ystyle;delete O0.error_y.copy_ystyle;delete O0.error_z.copy_ystyle;delete O0.error_z.copy_zstyle;XP.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:fs,bar:fs,histogram:fs,scatter3d:WP(O0,"calc","nested"),scattergl:WP(fs,"calc","nested")}},supplyDefaults:IP(),calc:OP(),makeComputeError:d3(),plot:HP(),style:YP(),hoverInfo:Hae};function Hae(e,r,t){(r.error_y||{}).visible&&(t.yerr=e.yh-e.y,r.error_y.symmetric||(t.yerrneg=e.y-e.ys)),(r.error_x||{}).visible&&(t.xerr=e.xh-e.x,r.error_x.symmetric||(t.xerrneg=e.x-e.xs))}});var KP=de((_de,JP)=>{"use strict";JP.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var nI=de((wde,tI)=>{"use strict";var nl=it(),y3=ka(),id=on(),QP=Cr(),ho=Lt(),ad=ai(),Ga=ir(),gi=Ga.strTranslate,rI=Tt().extendFlat,m3=Vo(),pi=mt(),x3=Xr(),Vae=Rf(),Gae=Wn(),Yae=Si().flipScale,Wae=C1(),Xae=Sm(),Zae=La(),b3=qn(),$P=b3.LINE_SPACING,jP=b3.FROM_TL,eI=b3.FROM_BR,Dt=KP().cn;function Jae(e){var r=e._fullLayout,t=r._infolayer.selectAll("g."+Dt.colorbar).data(Kae(e),function(n){return n._id});t.enter().append("g").attr("class",function(n){return n._id}).classed(Dt.colorbar,!0),t.each(function(n){var a=nl.select(this);Ga.ensureSingle(a,"rect",Dt.cbbg),Ga.ensureSingle(a,"g",Dt.cbfills),Ga.ensureSingle(a,"g",Dt.cblines),Ga.ensureSingle(a,"g",Dt.cbaxis,function(i){i.classed(Dt.crisp,!0)}),Ga.ensureSingle(a,"g",Dt.cbtitleunshift,function(i){i.append("g").classed(Dt.cbtitle,!0)}),Ga.ensureSingle(a,"rect",Dt.cboutline);var o=Qae(a,n,e);o&&o.then&&(e._promises||[]).push(o),e._context.edits.colorbarPosition&&$ae(a,n,e)}),t.exit().each(function(n){id.autoMargin(e,n._id)}).remove(),t.order()}function Kae(e){var r=e._fullLayout,t=e.calcdata,n=[],a,o,i,l;function u(S){return rI(S,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function s(){typeof l.calc=="function"?l.calc(e,i,a):(a._fillgradient=o.reversescale?Yae(o.colorscale):o.colorscale,a._zrange=[o[l.min],o[l.max]])}for(var f=0;f1){var ee=Math.pow(10,Math.floor(Math.log(H)/Math.LN10));oe*=ee*Ga.roundUp(H/ee,[2,5,10]),(Math.abs(D.start)/D.size+1e-6)%1<2e-6&&(ne.tick0=0)}ne.dtick=oe}ne.domain=n?[q+m/x.h,q+P-m/x.h]:[q+b/x.w,q+P-b/x.w],ne.setScale(),e.attr("transform",gi(Math.round(x.l),Math.round(x.t)));var V=e.select("."+Dt.cbtitleunshift).attr("transform",gi(-Math.round(x.l),-Math.round(x.t))),te=ne.ticklabelposition,ue=ne.title.font.size,ve=e.select("."+Dt.cbaxis),ke,Se=0,he=0;function Ae(Ue,ge){var we={propContainer:ne,propName:r._propPrefix+"title.text",traceIndex:r._traceIndex,_meta:r._meta,placeholder:S._dfltTitle.colorbar,containerGroup:e.select("."+Dt.cbtitle)},Te=Ue.charAt(0)==="h"?Ue.slice(1):"h"+Ue;e.selectAll("."+Te+",."+Te+"-math-group").remove(),Vae.draw(t,Ue,rI(we,ge||{}))}function Ce(){if(n&&Q||!n&&!Q){var Ue,ge;g==="top"&&(Ue=b+x.l+O*w,ge=m+x.t+U*(1-q-P)+3+ue*.75),g==="bottom"&&(Ue=b+x.l+O*w,ge=m+x.t+U*(1-q)-3-ue*.25),g==="right"&&(ge=m+x.t+U*T+3+ue*.75,Ue=b+x.l+O*q),Ae(ne._id+"title",{attributes:{x:Ue,y:ge,"text-anchor":n?"start":"middle"}})}}function Pe(){if(n&&!Q||!n&&Q){var Ue=ne.position||0,ge=ne._offset+ne._length/2,we,Te;if(g==="right")Te=ge,we=x.l+O*Ue+10+ue*(ne.showticklabels?1:.5);else if(we=ge,g==="bottom"&&(Te=x.t+U*Ue+10+(te.indexOf("inside")===-1?ne.tickfont.size:0)+(ne.ticks!=="inside"&&r.ticklen||0)),g==="top"){var me=_.text.split("
").length;Te=x.t+U*Ue+10-F-$P*ue*me}Ae((n?"h":"v")+ne._id+"title",{avoid:{selection:nl.select(t).selectAll("g."+ne._id+"tick"),side:g,offsetTop:n?0:x.t,offsetLeft:n?x.l:0,maxShift:n?S.width:S.height},attributes:{x:we,y:Te,"text-anchor":"middle"},transform:{rotate:n?-90:0,offset:0}})}}function Ee(){if(!n&&!Q||n&&Q){var Ue=e.select("."+Dt.cbtitle),ge=Ue.select("text"),we=[-u/2,u/2],Te=Ue.select(".h"+ne._id+"title-math-group").node(),me=15.6;ge.node()&&(me=parseInt(ge.node().style.fontSize,10)*$P);var ye;if(Te?(ye=pi.bBox(Te),he=ye.width,Se=ye.height,Se>me&&(we[1]-=(Se-me)/2)):ge.node()&&!ge.classed(Dt.jsPlaceholder)&&(ye=pi.bBox(ge.node()),he=ye.width,Se=ye.height),n){if(Se){if(Se+=5,g==="top")ne.domain[1]-=Se/x.h,we[1]*=-1;else{ne.domain[0]+=Se/x.h;var pe=Gae.lineCount(ge);we[1]+=(1-pe)*me}Ue.attr("transform",gi(we[0],we[1])),ne.setScale()}}else he&&(g==="right"&&(ne.domain[0]+=(he+ue/2)/x.w),Ue.attr("transform",gi(we[0],we[1])),ne.setScale())}e.selectAll("."+Dt.cbfills+",."+Dt.cblines).attr("transform",n?gi(0,Math.round(x.h*(1-ne.domain[1]))):gi(Math.round(x.w*ne.domain[0]),0)),ve.attr("transform",n?gi(0,Math.round(-x.t)):gi(Math.round(-x.l),0));var ce=e.select("."+Dt.cbfills).selectAll("rect."+Dt.cbfill).attr("style","").data(R);ce.enter().append("rect").classed(Dt.cbfill,!0).attr("style",""),ce.exit().remove();var xe=c.map(ne.c2p).map(Math.round).sort(function(Ve,Be){return Ve-Be});ce.each(function(Ve,Be){var Ye=[Be===0?c[0]:(R[Be]+R[Be-1])/2,Be===R.length-1?c[1]:(R[Be]+R[Be+1])/2].map(ne.c2p).map(Math.round);n&&(Ye[1]=Ga.constrain(Ye[1]+(Ye[1]>Ye[0])?1:-1,xe[0],xe[1]));var Me=nl.select(this).attr(n?"x":"y",X).attr(n?"y":"x",nl.min(Ye)).attr(n?"width":"height",Math.max(F,2)).attr(n?"height":"width",Math.max(nl.max(Ye)-nl.min(Ye),2));if(r._fillgradient)pi.gradient(Me,t,r._id,n?"vertical":"horizontalreversed",r._fillgradient,"fill");else{var Re=v(Ve).replace("e-","");Me.attr("fill",y3(Re).toHexString())}});var Le=e.select("."+Dt.cblines).selectAll("path."+Dt.cbline).data(d.color&&d.width?N:[]);Le.enter().append("path").classed(Dt.cbline,!0),Le.exit().remove(),Le.each(function(Ve){var Be=X,Ye=Math.round(ne.c2p(Ve))+d.width/2%1;nl.select(this).attr("d","M"+(n?Be+","+Ye:Ye+","+Be)+(n?"h":"v")+F).call(pi.lineGroupStyle,d.width,A(Ve),d.dash)}),ve.selectAll("g."+ne._id+"tick,path").remove();var qe=X+F+(u||0)/2-(r.ticks==="outside"?1:0),ze=ho.calcTicks(ne),$e=ho.getTickSigns(ne)[2];return ho.drawTicks(t,ne,{vals:ne.ticks==="inside"?ho.clipEnds(ne,ze):ze,layer:ve,path:ho.makeTickPath(ne,qe,$e),transFn:ho.makeTransTickFn(ne)}),ho.drawLabels(t,ne,{vals:ze,layer:ve,transFn:ho.makeTransTickLabelFn(ne),labelFns:ho.makeLabelFns(ne,qe)})}function Ne(){var Ue,ge=F+u/2;te.indexOf("inside")===-1&&(Ue=pi.bBox(ve.node()),ge+=n?Ue.width:Ue.height),ke=V.select("text");var we=0,Te=n&&g==="top",me=!n&&g==="right",ye=0;if(ke.node()&&!ke.classed(Dt.jsPlaceholder)){var pe,ce=V.select(".h"+ne._id+"title-math-group").node();ce&&(n&&Q||!n&&!Q)?(Ue=pi.bBox(ce),we=Ue.width,pe=Ue.height):(Ue=pi.bBox(V.node()),we=Ue.right-x.l-(n?X:K),pe=Ue.bottom-x.t-(n?K:X),!n&&g==="top"&&(ge+=Ue.height,ye=Ue.height)),me&&(ke.attr("transform",gi(we/2+ue/2,0)),we*=2),ge=Math.max(ge,n?we:pe)}var xe=(n?b:m)*2+ge+s+u/2,Le=0;!n&&_.text&&p==="bottom"&&T<=0&&(Le=xe/2,xe+=Le,ye+=Le),S._hColorbarMoveTitle=Le,S._hColorbarMoveCBTitle=ye;var qe=s+u,ze=(n?X:K)-qe/2-(n?b:0),$e=(n?K:X)-(n?L:m+ye-Le);e.select("."+Dt.cbbg).attr("x",ze).attr("y",$e).attr(n?"width":"height",Math.max(xe-Le,2)).attr(n?"height":"width",Math.max(L+qe,2)).call(x3.fill,f).call(x3.stroke,r.bordercolor).style("stroke-width",s);var Ve=me?Math.max(we-10,0):0;e.selectAll("."+Dt.cboutline).attr("x",(n?X:K+b)+Ve).attr("y",(n?K+m-L:X)+(Te?Se:0)).attr(n?"width":"height",Math.max(F,2)).attr(n?"height":"width",Math.max(L-(n?2*m+Se:2*b+Ve),2)).call(x3.stroke,r.outlinecolor).style({fill:"none","stroke-width":u});var Be=n?$*xe:0,Ye=n?0:(1-j)*xe-ye;if(Be=k?x.l-Be:-Be,Ye=y?x.t-Ye:-Ye,e.attr("transform",gi(Be,Ye)),!n&&(s||y3(f).getAlpha()&&!y3.equals(S.paper_bgcolor,f))){var Me=ve.selectAll("text"),Re=Me[0].length,Qe=e.select("."+Dt.cbbg).node(),Ke=pi.bBox(Qe),ar=pi.getTranslate(e),se=2;Me.each(function(Mr,Ar){var ft=0,sr=Re-1;if(Ar===ft||Ar===sr){var Pr=pi.bBox(this),$r=pi.getTranslate(this),Fr;if(Ar===sr){var Gr=Pr.right+$r.x,pt=Ke.right+ar.x+K-s-se+w;Fr=pt-Gr,Fr>0&&(Fr=0)}else if(Ar===ft){var Rr=Pr.left+$r.x,jr=Ke.left+ar.x+K+s+se;Fr=jr-Rr,Fr<0&&(Fr=0)}Fr&&(Re<3?this.setAttribute("transform","translate("+Fr+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var J={},ae=jP[h],De=eI[h],He=jP[p],er=eI[p],nr=xe-F;n?(o==="pixels"?(J.y=T,J.t=L*He,J.b=L*er):(J.t=J.b=0,J.yt=T+a*He,J.yb=T-a*er),l==="pixels"?(J.x=w,J.l=xe*ae,J.r=xe*De):(J.l=nr*ae,J.r=nr*De,J.xl=w-i*ae,J.xr=w+i*De)):(o==="pixels"?(J.x=w,J.l=L*ae,J.r=L*De):(J.l=J.r=0,J.xl=w+a*ae,J.xr=w-a*De),l==="pixels"?(J.y=1-T,J.t=xe*He,J.b=xe*er):(J.t=nr*He,J.b=nr*er,J.yt=T-i*He,J.yb=T+i*er));var fr=r.y<.5?"b":"t",br=r.x<.5?"l":"r";t._fullLayout._reservedMargin[r._id]={};var Sr={r:S.width-ze-Be,l:ze+J.r,b:S.height-$e-Ye,t:$e+J.b};k&&y?id.autoMargin(t,r._id,J):k?t._fullLayout._reservedMargin[r._id][fr]=Sr[fr]:y||n?t._fullLayout._reservedMargin[r._id][br]=Sr[br]:t._fullLayout._reservedMargin[r._id][fr]=Sr[fr]}return Ga.syncOrAsync([id.previousPromises,Ce,Ee,Pe,id.previousPromises,Ne],t)}function $ae(e,r,t){var n=r.orientation==="v",a=t._fullLayout,o=a._size,i,l,u;ad.init({element:e.node(),gd:t,prepFn:function(){i=e.attr("transform"),m3(e)},moveFn:function(s,f){e.attr("transform",i+gi(s,f)),l=ad.align((n?r._uFrac:r._vFrac)+s/o.w,n?r._thickFrac:r._lenFrac,0,1,r.xanchor),u=ad.align((n?r._vFrac:1-r._uFrac)-f/o.h,n?r._lenFrac:r._thickFrac,0,1,r.yanchor);var h=ad.getCursor(l,u,r.xanchor,r.yanchor);m3(e,h)},doneFn:function(){if(m3(e),l!==void 0&&u!==void 0){var s={};s[r._propPrefix+"x"]=l,s[r._propPrefix+"y"]=u,r._traceIndex!==void 0?QP.call("_guiRestyle",t,s,r._traceIndex):QP.call("_guiRelayout",t,s)}}})}function jae(e,r,t){var n=r._levels,a=[],o=[],i,l,u=n.end+n.size/100,s=n.size,f=1.001*t[0]-.001*t[1],h=1.001*t[1]-.001*t[0];for(l=0;l<1e5&&(i=n.start+l*s,!(s>0?i>=u:i<=u));l++)i>f&&i0?i>=u:i<=u));l++)i>t[0]&&i{"use strict";aI.exports={moduleType:"component",name:"colorbar",attributes:mh(),supplyDefaults:Tg(),draw:nI().draw,hasColorbar:vg()}});var lI=de((Tde,oI)=>{"use strict";oI.exports={moduleType:"component",name:"legend",layoutAttributes:b2(),supplyLayoutDefaults:w2(),draw:F2(),style:D2()}});var uI=de((Ade,sI)=>{"use strict";sI.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var cI=de((kde,fI)=>{"use strict";fI.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var w3=de((Sde,pI)=>{"use strict";var rie=Cr(),dI=ir(),_3=dI.extendFlat,hI=dI.extendDeep;function vI(e){var r;switch(e){case"themes__thumb":r={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":r={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:r={}}return r}function tie(e){var r=["xaxis","yaxis","zaxis"];return r.indexOf(e.slice(0,5))>-1}pI.exports=function(r,t){var n,a=r.data,o=r.layout,i=hI([],a),l=hI({},o,vI(t.tileClass)),u=r._context||{};if(t.width&&(l.width=t.width),t.height&&(l.height=t.height),t.tileClass==="thumbnail"||t.tileClass==="themes__thumb"){l.annotations=[];var s=Object.keys(l);for(n=0;n{"use strict";var nie=ih().EventEmitter,aie=Cr(),iie=ir(),gI=es(),oie=w3(),lie=h1(),sie=v1();function uie(e,r){var t=new nie,n=oie(e,{format:"png"}),a=n.gd;a.style.position="absolute",a.style.left="-5000px",document.body.appendChild(a);function o(){var l=gI.getDelay(a._fullLayout);setTimeout(function(){var u=lie(a),s=document.createElement("canvas");s.id=iie.randstr(),t=sie({format:r.format,width:a._fullLayout.width,height:a._fullLayout.height,canvas:s,emitter:t,svg:u}),t.clean=function(){a&&document.body.removeChild(a)}},l)}var i=gI.getRedrawFunc(a);return aie.call("_doPlot",a,n.data,n.layout,n.config).then(i).then(o).catch(function(l){t.emit("error",l)}),t}yI.exports=uie});var _I=de((Ede,bI)=>{"use strict";var xI=es(),fie={getDelay:xI.getDelay,getRedrawFunc:xI.getRedrawFunc,clone:w3(),toSVG:h1(),svgToImg:v1(),toImage:mI(),downloadImage:jy()};bI.exports=fie});var MI=de(vo=>{"use strict";vo.version=_c().version;cb();ew();var cie=Cr(),B0=vo.register=cie.register,T3=AC(),wI=Object.keys(T3);for(od=0;od{"use strict";TI.exports=MI()});var pn=de((Rde,kI)=>{(function(){var e={24:function(a){var o={left:0,top:0};a.exports=i;function i(u,s,f){s=s||u.currentTarget||u.srcElement,Array.isArray(f)||(f=[0,0]);var h=u.clientX||0,p=u.clientY||0,b=l(s);return f[0]=h-b.left,f[1]=p-b.top,f}function l(u){return u===window||u===document||u===document.body?o:u.getBoundingClientRect()}},109:function(a){a.exports=o;function o(i,l,u,s){var f=u[0],h=u[2],p=l[0]-f,b=l[2]-h,m=Math.sin(s),w=Math.cos(s);return i[0]=f+b*m+p*w,i[1]=l[1],i[2]=h+b*w-p*m,i}},160:function(a){a.exports=o;function o(i,l,u){return i[0]=Math.max(l[0],u[0]),i[1]=Math.max(l[1],u[1]),i[2]=Math.max(l[2],u[2]),i[3]=Math.max(l[3],u[3]),i}},216:function(a){"use strict";a.exports=o;function o(i,l){for(var u={},s=0;s1){m[0]in p||(p[m[0]]=[]),p=p[m[0]];for(var w=1;w=0;--L){var K=F[L];P=K[0];var ne=R[P],Q=ne[0],oe=ne[1],re=E[Q],H=E[oe];if((re[0]-H[0]||re[1]-H[1])<0){var ee=Q;Q=oe,oe=ee}ne[0]=Q;var V=ne[1]=K[1],te;for(I&&(te=ne[2]);L>0&&F[L-1][0]===P;){var K=F[--L],ue=K[1];I?R.push([V,ue,te]):R.push([V,ue]),V=ue}I?R.push([V,oe,te]):R.push([V,oe])}return O}function d(E,R,N){for(var F=R.length,I=new l(F),L=[],P=0;PR[2]?1:0)}function c(E,R,N){if(E.length!==0){if(R)for(var F=0;F0||P.length>0}function D(E,R,N){var F;if(N){F=R;for(var I=new Array(R.length),L=0;L1e-6?(k=Math.acos(S),b=Math.sin(k),M=Math.sin((1-s)*k)/b,d=Math.sin(s*k)/b):(M=1-s,d=s),i[0]=M*f+d*m,i[1]=M*h+d*w,i[2]=M*p+d*T,i[3]=M*_+d*y,i}},799:function(a,o,i){var l=i(3236),u=i(9405),s=l([`precision mediump float; +}`]);o.meshShader={vertex:u,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec3"}]},o.pickShader={vertex:f,fragment:h,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec3"}]}},620:function(a){a.exports=["precision","highp","mediump","lowp","attribute","const","uniform","varying","break","continue","do","for","while","if","else","in","out","inout","float","int","uint","void","bool","true","false","discard","return","mat2","mat3","mat4","vec2","vec3","vec4","ivec2","ivec3","ivec4","bvec2","bvec3","bvec4","sampler1D","sampler2D","sampler3D","samplerCube","sampler1DShadow","sampler2DShadow","struct","asm","class","union","enum","typedef","template","this","packed","goto","switch","default","inline","noinline","volatile","public","static","extern","external","interface","long","short","double","half","fixed","unsigned","input","output","hvec2","hvec3","hvec4","dvec2","dvec3","dvec4","fvec2","fvec3","fvec4","sampler2DRect","sampler3DRect","sampler2DRectShadow","sizeof","cast","namespace","using"]},665:function(a,o,i){"use strict";var l=i(3202);a.exports=h;var u=96;function s(p,b){var m=l(getComputedStyle(p).getPropertyValue(b));return m[0]*h(m[1],p)}function f(p,b){var m=document.createElement("div");m.style["font-size"]="128"+p,b.appendChild(m);var w=s(m,"font-size")/128;return b.removeChild(m),w}function h(p,b){switch(b=b||document.body,p=(p||"px").trim().toLowerCase(),(b===window||b===document)&&(b=document.body),p){case"%":return b.clientHeight/100;case"ch":case"ex":return f(p,b);case"em":return s(b,"font-size");case"rem":return s(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return u;case"cm":return u/2.54;case"mm":return u/25.4;case"pt":return u/72;case"pc":return u/6}return 1}},727:function(a,o,i){"use strict";var l=i(2962),u=6;function s(x){var M=x===2?p:x===3?b:x===4?m:x===5?w:T;return x<6?M(l[x]):M(l)}function f(){return[[0]]}function h(x,M){return[[M[0]],[x[0][0]]]}function p(x){return function(d,_){return[x([[+_[0],+d[0][1]],[+_[1],+d[1][1]]]),x([[+d[0][0],+_[0]],[+d[1][0],+_[1]]]),x(d)]}}function b(x){return function(d,_){return[x([[+_[0],+d[0][1],+d[0][2]],[+_[1],+d[1][1],+d[1][2]],[+_[2],+d[2][1],+d[2][2]]]),x([[+d[0][0],+_[0],+d[0][2]],[+d[1][0],+_[1],+d[1][2]],[+d[2][0],+_[2],+d[2][2]]]),x([[+d[0][0],+d[0][1],+_[0]],[+d[1][0],+d[1][1],+_[1]],[+d[2][0],+d[2][1],+_[2]]]),x(d)]}}function m(x){return function(d,_){return[x([[+_[0],+d[0][1],+d[0][2],+d[0][3]],[+_[1],+d[1][1],+d[1][2],+d[1][3]],[+_[2],+d[2][1],+d[2][2],+d[2][3]],[+_[3],+d[3][1],+d[3][2],+d[3][3]]]),x([[+d[0][0],+_[0],+d[0][2],+d[0][3]],[+d[1][0],+_[1],+d[1][2],+d[1][3]],[+d[2][0],+_[2],+d[2][2],+d[2][3]],[+d[3][0],+_[3],+d[3][2],+d[3][3]]]),x([[+d[0][0],+d[0][1],+_[0],+d[0][3]],[+d[1][0],+d[1][1],+_[1],+d[1][3]],[+d[2][0],+d[2][1],+_[2],+d[2][3]],[+d[3][0],+d[3][1],+_[3],+d[3][3]]]),x([[+d[0][0],+d[0][1],+d[0][2],+_[0]],[+d[1][0],+d[1][1],+d[1][2],+_[1]],[+d[2][0],+d[2][1],+d[2][2],+_[2]],[+d[3][0],+d[3][1],+d[3][2],+_[3]]]),x(d)]}}function w(x){return function(d,_){return[x([[+_[0],+d[0][1],+d[0][2],+d[0][3],+d[0][4]],[+_[1],+d[1][1],+d[1][2],+d[1][3],+d[1][4]],[+_[2],+d[2][1],+d[2][2],+d[2][3],+d[2][4]],[+_[3],+d[3][1],+d[3][2],+d[3][3],+d[3][4]],[+_[4],+d[4][1],+d[4][2],+d[4][3],+d[4][4]]]),x([[+d[0][0],+_[0],+d[0][2],+d[0][3],+d[0][4]],[+d[1][0],+_[1],+d[1][2],+d[1][3],+d[1][4]],[+d[2][0],+_[2],+d[2][2],+d[2][3],+d[2][4]],[+d[3][0],+_[3],+d[3][2],+d[3][3],+d[3][4]],[+d[4][0],+_[4],+d[4][2],+d[4][3],+d[4][4]]]),x([[+d[0][0],+d[0][1],+_[0],+d[0][3],+d[0][4]],[+d[1][0],+d[1][1],+_[1],+d[1][3],+d[1][4]],[+d[2][0],+d[2][1],+_[2],+d[2][3],+d[2][4]],[+d[3][0],+d[3][1],+_[3],+d[3][3],+d[3][4]],[+d[4][0],+d[4][1],+_[4],+d[4][3],+d[4][4]]]),x([[+d[0][0],+d[0][1],+d[0][2],+_[0],+d[0][4]],[+d[1][0],+d[1][1],+d[1][2],+_[1],+d[1][4]],[+d[2][0],+d[2][1],+d[2][2],+_[2],+d[2][4]],[+d[3][0],+d[3][1],+d[3][2],+_[3],+d[3][4]],[+d[4][0],+d[4][1],+d[4][2],+_[4],+d[4][4]]]),x([[+d[0][0],+d[0][1],+d[0][2],+d[0][3],+_[0]],[+d[1][0],+d[1][1],+d[1][2],+d[1][3],+_[1]],[+d[2][0],+d[2][1],+d[2][2],+d[2][3],+_[2]],[+d[3][0],+d[3][1],+d[3][2],+d[3][3],+_[3]],[+d[4][0],+d[4][1],+d[4][2],+d[4][3],+_[4]]]),x(d)]}}function T(x){return function(d,_){return[x([[+_[0],+d[0][1],+d[0][2],+d[0][3],+d[0][4],+d[0][5]],[+_[1],+d[1][1],+d[1][2],+d[1][3],+d[1][4],+d[1][5]],[+_[2],+d[2][1],+d[2][2],+d[2][3],+d[2][4],+d[2][5]],[+_[3],+d[3][1],+d[3][2],+d[3][3],+d[3][4],+d[3][5]],[+_[4],+d[4][1],+d[4][2],+d[4][3],+d[4][4],+d[4][5]],[+_[5],+d[5][1],+d[5][2],+d[5][3],+d[5][4],+d[5][5]]]),x([[+d[0][0],+_[0],+d[0][2],+d[0][3],+d[0][4],+d[0][5]],[+d[1][0],+_[1],+d[1][2],+d[1][3],+d[1][4],+d[1][5]],[+d[2][0],+_[2],+d[2][2],+d[2][3],+d[2][4],+d[2][5]],[+d[3][0],+_[3],+d[3][2],+d[3][3],+d[3][4],+d[3][5]],[+d[4][0],+_[4],+d[4][2],+d[4][3],+d[4][4],+d[4][5]],[+d[5][0],+_[5],+d[5][2],+d[5][3],+d[5][4],+d[5][5]]]),x([[+d[0][0],+d[0][1],+_[0],+d[0][3],+d[0][4],+d[0][5]],[+d[1][0],+d[1][1],+_[1],+d[1][3],+d[1][4],+d[1][5]],[+d[2][0],+d[2][1],+_[2],+d[2][3],+d[2][4],+d[2][5]],[+d[3][0],+d[3][1],+_[3],+d[3][3],+d[3][4],+d[3][5]],[+d[4][0],+d[4][1],+_[4],+d[4][3],+d[4][4],+d[4][5]],[+d[5][0],+d[5][1],+_[5],+d[5][3],+d[5][4],+d[5][5]]]),x([[+d[0][0],+d[0][1],+d[0][2],+_[0],+d[0][4],+d[0][5]],[+d[1][0],+d[1][1],+d[1][2],+_[1],+d[1][4],+d[1][5]],[+d[2][0],+d[2][1],+d[2][2],+_[2],+d[2][4],+d[2][5]],[+d[3][0],+d[3][1],+d[3][2],+_[3],+d[3][4],+d[3][5]],[+d[4][0],+d[4][1],+d[4][2],+_[4],+d[4][4],+d[4][5]],[+d[5][0],+d[5][1],+d[5][2],+_[5],+d[5][4],+d[5][5]]]),x([[+d[0][0],+d[0][1],+d[0][2],+d[0][3],+_[0],+d[0][5]],[+d[1][0],+d[1][1],+d[1][2],+d[1][3],+_[1],+d[1][5]],[+d[2][0],+d[2][1],+d[2][2],+d[2][3],+_[2],+d[2][5]],[+d[3][0],+d[3][1],+d[3][2],+d[3][3],+_[3],+d[3][5]],[+d[4][0],+d[4][1],+d[4][2],+d[4][3],+_[4],+d[4][5]],[+d[5][0],+d[5][1],+d[5][2],+d[5][3],+_[5],+d[5][5]]]),x([[+d[0][0],+d[0][1],+d[0][2],+d[0][3],+d[0][4],+_[0]],[+d[1][0],+d[1][1],+d[1][2],+d[1][3],+d[1][4],+_[1]],[+d[2][0],+d[2][1],+d[2][2],+d[2][3],+d[2][4],+_[2]],[+d[3][0],+d[3][1],+d[3][2],+d[3][3],+d[3][4],+_[3]],[+d[4][0],+d[4][1],+d[4][2],+d[4][3],+d[4][4],+_[4]],[+d[5][0],+d[5][1],+d[5][2],+d[5][3],+d[5][4],+_[5]]]),x(d)]}}var y=[f,h];function k(x,M,d,_,g,c,A,v){return function(E,R){switch(E.length){case 0:return x(E,R);case 1:return M(E,R);case 2:return d(E,R);case 3:return _(E,R);case 4:return g(E,R);case 5:return c(E,R)}var N=A[E.length];return N||(N=A[E.length]=v(E.length)),N(E,R)}}function S(){for(;y.length1e-6?(k=Math.acos(S),x=Math.sin(k),M=Math.sin((1-s)*k)/x,d=Math.sin(s*k)/x):(M=1-s,d=s),i[0]=M*f+d*m,i[1]=M*h+d*w,i[2]=M*p+d*T,i[3]=M*b+d*y,i}},799:function(a,o,i){var l=i(3236),u=i(9405),s=l([`precision mediump float; #define GLSLIFY 1 attribute vec2 position; varying vec2 uv; @@ -614,7 +614,7 @@ void main() { gl_PointSize = pointSize; f_color = color; f_uv = uv; -}`]),_=l([`precision highp float; +}`]),b=l([`precision highp float; #define GLSLIFY 1 uniform sampler2D texture; @@ -737,7 +737,7 @@ uniform vec3 contourColor; void main() { gl_FragColor = vec4(contourColor, 1.0); } -`]);o.meshShader={vertex:u,fragment:s,attributes:[{name:"position",type:"vec3"},{name:"normal",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},o.wireShader={vertex:f,fragment:h,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},o.pointShader={vertex:p,fragment:_,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"pointSize",type:"float"}]},o.pickShader={vertex:m,fragment:w,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},o.pointPickShader={vertex:T,fragment:w,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},o.contourShader={vertex:y,fragment:k,attributes:[{name:"position",type:"vec3"}]}},855:function(a,o,i){"use strict";a.exports={init:S,sweepBipartite:d,sweepComplete:x,scanBipartite:g,scanComplete:c};var l=i(1888),u=i(8828),s=i(4192),f=1<<28,h=1024,p=l.mallocInt32(h),_=l.mallocInt32(h),m=l.mallocInt32(h),w=l.mallocInt32(h),T=l.mallocInt32(h),y=l.mallocInt32(h),k=l.mallocDouble(h*8);function S(A){var v=u.nextPow2(A);p.length>>1;s(k,ne);for(var Q=0,oe=0,j=0;j=f)re=re-f|0,b(m,w,oe--,re);else if(re>=0)b(p,_,Q--,re);else if(re<=-f){re=-re-f|0;for(var H=0;H>>1;s(k,ne);for(var Q=0,oe=0,re=0,j=0;j>1===k[2*j+3]>>1&&(ee=2,j+=1),H<0){for(var V=-(H>>1)-1,te=0;te>1)-1;ee===0?b(p,_,Q--,V):ee===1?b(m,w,oe--,V):ee===2&&b(T,y,re--,V)}}}function g(A,v,D,E,R,N,F,I,L,P,O,U){var X=0,$=2*A,j=v,Y=v+A,q=1,K=1;E?K=f:q=f;for(var ne=R;ne>>1;s(k,H);for(var ee=0,ne=0;ne=f?(te=!E,Q-=f):(te=!!E,Q-=1),te)M(p,_,ee++,Q);else{var ue=U[Q],ve=$*Q,ke=O[ve+v+1],Se=O[ve+v+1+A];e:for(var he=0;he>>1;s(k,Q);for(var oe=0,Y=0;Y=f)p[oe++]=q-f;else{q-=1;var H=O[q],ee=X*q,V=P[ee+v+1],te=P[ee+v+1+A];e:for(var ue=0;ue=0;--ue)if(p[ue]===q){for(var he=ue+1;he>>1;s(k,ne);for(var Q=0,oe=0,j=0;j=f)re=re-f|0,x(m,w,oe--,re);else if(re>=0)x(p,b,Q--,re);else if(re<=-f){re=-re-f|0;for(var H=0;H>>1;s(k,ne);for(var Q=0,oe=0,re=0,j=0;j>1===k[2*j+3]>>1&&(ee=2,j+=1),H<0){for(var V=-(H>>1)-1,te=0;te>1)-1;ee===0?x(p,b,Q--,V):ee===1?x(m,w,oe--,V):ee===2&&x(T,y,re--,V)}}}function g(A,v,D,E,R,N,F,I,L,P,O,U){var X=0,$=2*A,j=v,Y=v+A,q=1,K=1;E?K=f:q=f;for(var ne=R;ne>>1;s(k,H);for(var ee=0,ne=0;ne=f?(te=!E,Q-=f):(te=!!E,Q-=1),te)M(p,b,ee++,Q);else{var ue=U[Q],ve=$*Q,ke=O[ve+v+1],Se=O[ve+v+1+A];e:for(var he=0;he>>1;s(k,Q);for(var oe=0,Y=0;Y=f)p[oe++]=q-f;else{q-=1;var H=O[q],ee=X*q,V=P[ee+v+1],te=P[ee+v+1+A];e:for(var ue=0;ue=0;--ue)if(p[ue]===q){for(var he=ue+1;he0&&w>0||m<0&&w<0)return!1;var T=l(p,f,h),y=l(_,f,h);return T>0&&y>0||T<0&&y<0?!1:m===0&&w===0&&T===0&&y===0?u(f,h,p,_):!0}},1278:function(a,o,i){"use strict";var l=i(2361),u=Math.pow(2,-1074),s=-1>>>0;a.exports=f;function f(h,p){if(isNaN(h)||isNaN(p))return NaN;if(h===p)return h;if(h===0)return p<0?-u:u;var _=l.hi(h),m=l.lo(h);return p>h==h>0?m===s?(_+=1,m=0):m+=1:m===0?(m=s,_-=1):m-=1,l.pack(m,_)}},1283:function(a,o,i){var l=i(9405),u=i(3236),s=u([`precision highp float; +`]);o.createShader=function(b){var m=l(b,s,f,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return m.attributes.uv.location=0,m.attributes.f.location=1,m.attributes.normal.location=2,m},o.createPickShader=function(b){var m=l(b,s,p,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return m.attributes.uv.location=0,m.attributes.f.location=1,m.attributes.normal.location=2,m},o.createContourShader=function(b){var m=l(b,h,f,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return m.attributes.uv.location=0,m.attributes.f.location=1,m},o.createPickContourShader=function(b){var m=l(b,h,p,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return m.attributes.uv.location=0,m.attributes.f.location=1,m}},1085:function(a,o,i){var l=i(1371);a.exports=u;function u(s,f,h){f=typeof f=="number"?f:1,h=h||": ";var p=s.split(/\r?\n/),b=String(p.length+f-1).length;return p.map(function(m,w){var T=w+f,y=String(T).length,k=l(T,b-y);return k+h+m}).join(` +`)}},1091:function(a){a.exports=o;function o(){var i=new Float32Array(3);return i[0]=0,i[1]=0,i[2]=0,i}},1125:function(a,o,i){"use strict";a.exports=s;var l=i(3250)[3];function u(f,h,p,b){for(var m=0;m<2;++m){var w=f[m],T=h[m],y=Math.min(w,T),k=Math.max(w,T),S=p[m],x=b[m],M=Math.min(S,x),d=Math.max(S,x);if(d0&&w>0||m<0&&w<0)return!1;var T=l(p,f,h),y=l(b,f,h);return T>0&&y>0||T<0&&y<0?!1:m===0&&w===0&&T===0&&y===0?u(f,h,p,b):!0}},1278:function(a,o,i){"use strict";var l=i(2361),u=Math.pow(2,-1074),s=-1>>>0;a.exports=f;function f(h,p){if(isNaN(h)||isNaN(p))return NaN;if(h===p)return h;if(h===0)return p<0?-u:u;var b=l.hi(h),m=l.lo(h);return p>h==h>0?m===s?(b+=1,m=0):m+=1:m===0?(m=s,b-=1):m-=1,l.pack(m,b)}},1283:function(a,o,i){var l=i(9405),u=i(3236),s=u([`precision highp float; #define GLSLIFY 1 bool outOfRange(float a, float b, float p) { @@ -1153,7 +1153,7 @@ void main() { ) discard; gl_FragColor = interpColor * opacity; } -`]),_=u([`precision highp float; +`]),b=u([`precision highp float; #define GLSLIFY 1 bool outOfRange(float a, float b, float p) { @@ -1186,7 +1186,7 @@ void main() { if (outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate)) discard; gl_FragColor = vec4(pickGroup, pickId.bgr); -}`]),m=[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"glyph",type:"vec2"},{name:"id",type:"vec4"}],w={vertex:s,fragment:p,attributes:m},T={vertex:f,fragment:p,attributes:m},y={vertex:h,fragment:p,attributes:m},k={vertex:s,fragment:_,attributes:m},S={vertex:f,fragment:_,attributes:m},b={vertex:h,fragment:_,attributes:m};function M(d,x){var g=l(d,x),c=g.attributes;return c.position.location=0,c.color.location=1,c.glyph.location=2,c.id.location=3,g}o.createPerspective=function(d){return M(d,w)},o.createOrtho=function(d){return M(d,T)},o.createProject=function(d){return M(d,y)},o.createPickPerspective=function(d){return M(d,k)},o.createPickOrtho=function(d){return M(d,S)},o.createPickProject=function(d){return M(d,b)}},1303:function(a,o,i){"use strict";a.exports=s;var l=i(3250);function u(f,h){var p,_;if(h[0][0]h[1][0])p=h[1],_=h[0];else{var m=Math.min(f[0][1],f[1][1]),w=Math.max(f[0][1],f[1][1]),T=Math.min(h[0][1],h[1][1]),y=Math.max(h[0][1],h[1][1]);return wy?m-y:w-y}var k,S;f[0][1]h[1][0])p=h[1],_=h[0];else return u(h,f);var m,w;if(f[0][0]f[1][0])m=f[1],w=f[0];else return-u(f,h);var T=l(p,_,w),y=l(p,_,m);if(T<0){if(y<=0)return T}else if(T>0){if(y>=0)return T}else if(y)return y;if(T=l(w,m,_),y=l(w,m,p),T<0){if(y<=0)return T}else if(T>0){if(y>=0)return T}else if(y)return y;return _[0]-w[0]}},1318:function(a){"use strict";a.exports=o;function o(i,l){return i[0].mul(l[1]).cmp(l[0].mul(i[1]))}},1338:function(a){"use strict";function o(u,s,f){var h=u[f]|0;if(h<=0)return[];var p=new Array(h),_;if(f===u.length-1)for(_=0;_0)return i(u|0,s);break;case"object":if(typeof u.length=="number")return o(u,s,0);break}return[]}a.exports=l},1369:function(a,o,i){"use strict";var l=i(5716);a.exports=u;function u(s){var f=s.length,h=s.words,p=0;if(f===1)p=h[0];else if(f===2)p=h[0]+h[1]*67108864;else for(var _=0;_s)throw new Error("gl-vao: Too many vertex attributes");for(var f=0;fh[1][0])p=h[1],b=h[0];else{var m=Math.min(f[0][1],f[1][1]),w=Math.max(f[0][1],f[1][1]),T=Math.min(h[0][1],h[1][1]),y=Math.max(h[0][1],h[1][1]);return wy?m-y:w-y}var k,S;f[0][1]h[1][0])p=h[1],b=h[0];else return u(h,f);var m,w;if(f[0][0]f[1][0])m=f[1],w=f[0];else return-u(f,h);var T=l(p,b,w),y=l(p,b,m);if(T<0){if(y<=0)return T}else if(T>0){if(y>=0)return T}else if(y)return y;if(T=l(w,m,b),y=l(w,m,p),T<0){if(y<=0)return T}else if(T>0){if(y>=0)return T}else if(y)return y;return b[0]-w[0]}},1318:function(a){"use strict";a.exports=o;function o(i,l){return i[0].mul(l[1]).cmp(l[0].mul(i[1]))}},1338:function(a){"use strict";function o(u,s,f){var h=u[f]|0;if(h<=0)return[];var p=new Array(h),b;if(f===u.length-1)for(b=0;b0)return i(u|0,s);break;case"object":if(typeof u.length=="number")return o(u,s,0);break}return[]}a.exports=l},1369:function(a,o,i){"use strict";var l=i(5716);a.exports=u;function u(s){var f=s.length,h=s.words,p=0;if(f===1)p=h[0];else if(f===2)p=h[0]+h[1]*67108864;else for(var b=0;bs)throw new Error("gl-vao: Too many vertex attributes");for(var f=0;f=0?D[O]:P)}function N(L){var P=M(L);return P?E in P:v.indexOf(L)>=0}function F(L,P){var O,U=M(L);return U?U[E]=P:(O=v.indexOf(L),O>=0?D[O]=P:(O=v.length,D[O]=P,v[O]=L)),this}function I(L){var P=M(L),O,U;return P?E in P&&delete P[E]:(O=v.indexOf(L),O<0?!1:(U=v.length-1,v[O]=void 0,D[O]=D[U],v[O]=v[U],v.length=U,D.length=U,!0))}return Object.create(A.prototype,{get___:{value:d(R)},has___:{value:d(N)},set___:{value:d(F)},delete___:{value:d(I)}})};A.prototype=Object.create(Object.prototype,{get:{value:function(D,E){return this.get___(D,E)},writable:!0,configurable:!0},has:{value:function(D){return this.has___(D)},writable:!0,configurable:!0},set:{value:function(D,E){return this.set___(D,E)},writable:!0,configurable:!0},delete:{value:function(D){return this.delete___(D)},writable:!0,configurable:!0}}),typeof u=="function"?function(){l&&typeof Proxy!="undefined"&&(Proxy=void 0);function v(){this instanceof A||g();var D=new u,E=void 0,R=!1;function N(P,O){return E?D.has(P)?D.get(P):E.get___(P,O):D.get(P,O)}function F(P){return D.has(P)||(E?E.has___(P):!1)}var I;l?I=function(P,O){return D.set(P,O),D.has(P)||(E||(E=new A),E.set(P,O)),this}:I=function(P,O){if(R)try{D.set(P,O)}catch(U){E||(E=new A),E.set___(P,O)}else D.set(P,O);return this};function L(P){var O=!!D.delete(P);return E&&E.delete___(P)||O}return Object.create(A.prototype,{get___:{value:d(N)},has___:{value:d(F)},set___:{value:d(I)},delete___:{value:d(L)},permitHostObjects___:{value:d(function(P){if(P===i)R=!0;else throw new Error("bogus call to permitHostObjects___")})}})}v.prototype=A.prototype,a.exports=v,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy!="undefined"&&(Proxy=void 0),a.exports=A)})()},1570:function(a){"use strict";a.exports=i;var o=[function(){function u(f,h,p,_){for(var m=Math.min(p,_)|0,w=Math.max(p,_)|0,T=f[2*m],y=f[2*m+1];T>1,S=h[2*k+1];if(S===w)return k;w>1,S=h[2*k+1];if(S===w)return k;w>1,S=h[2*k+1];if(S===w)return k;w>1,S=h[2*k+1];if(S===w)return k;w=0?D[O]:P)}function N(L){var P=M(L);return P?E in P:v.indexOf(L)>=0}function F(L,P){var O,U=M(L);return U?U[E]=P:(O=v.indexOf(L),O>=0?D[O]=P:(O=v.length,D[O]=P,v[O]=L)),this}function I(L){var P=M(L),O,U;return P?E in P&&delete P[E]:(O=v.indexOf(L),O<0?!1:(U=v.length-1,v[O]=void 0,D[O]=D[U],v[O]=v[U],v.length=U,D.length=U,!0))}return Object.create(A.prototype,{get___:{value:d(R)},has___:{value:d(N)},set___:{value:d(F)},delete___:{value:d(I)}})};A.prototype=Object.create(Object.prototype,{get:{value:function(D,E){return this.get___(D,E)},writable:!0,configurable:!0},has:{value:function(D){return this.has___(D)},writable:!0,configurable:!0},set:{value:function(D,E){return this.set___(D,E)},writable:!0,configurable:!0},delete:{value:function(D){return this.delete___(D)},writable:!0,configurable:!0}}),typeof u=="function"?function(){l&&typeof Proxy!="undefined"&&(Proxy=void 0);function v(){this instanceof A||g();var D=new u,E=void 0,R=!1;function N(P,O){return E?D.has(P)?D.get(P):E.get___(P,O):D.get(P,O)}function F(P){return D.has(P)||(E?E.has___(P):!1)}var I;l?I=function(P,O){return D.set(P,O),D.has(P)||(E||(E=new A),E.set(P,O)),this}:I=function(P,O){if(R)try{D.set(P,O)}catch(U){E||(E=new A),E.set___(P,O)}else D.set(P,O);return this};function L(P){var O=!!D.delete(P);return E&&E.delete___(P)||O}return Object.create(A.prototype,{get___:{value:d(N)},has___:{value:d(F)},set___:{value:d(I)},delete___:{value:d(L)},permitHostObjects___:{value:d(function(P){if(P===i)R=!0;else throw new Error("bogus call to permitHostObjects___")})}})}v.prototype=A.prototype,a.exports=v,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy!="undefined"&&(Proxy=void 0),a.exports=A)})()},1570:function(a){"use strict";a.exports=i;var o=[function(){function u(f,h,p,b){for(var m=Math.min(p,b)|0,w=Math.max(p,b)|0,T=f[2*m],y=f[2*m+1];T>1,S=h[2*k+1];if(S===w)return k;w>1,S=h[2*k+1];if(S===w)return k;w>1,S=h[2*k+1];if(S===w)return k;w>1,S=h[2*k+1];if(S===w)return k;w0?P.pop():new ArrayBuffer(I)}o.mallocArrayBuffer=k;function S(F){return new Uint8Array(k(F),0,F)}o.mallocUint8=S;function b(F){return new Uint16Array(k(2*F),0,F)}o.mallocUint16=b;function M(F){return new Uint32Array(k(4*F),0,F)}o.mallocUint32=M;function d(F){return new Int8Array(k(F),0,F)}o.mallocInt8=d;function x(F){return new Int16Array(k(2*F),0,F)}o.mallocInt16=x;function g(F){return new Int32Array(k(4*F),0,F)}o.mallocInt32=g;function c(F){return new Float32Array(k(4*F),0,F)}o.mallocFloat32=o.mallocFloat=c;function A(F){return new Float64Array(k(8*F),0,F)}o.mallocFloat64=o.mallocDouble=A;function v(F){return f?new Uint8ClampedArray(k(F),0,F):S(F)}o.mallocUint8Clamped=v;function D(F){return h?new BigUint64Array(k(8*F),0,F):null}o.mallocBigUint64=D;function E(F){return p?new BigInt64Array(k(8*F),0,F):null}o.mallocBigInt64=E;function R(F){return new DataView(k(F),0,F)}o.mallocDataView=R;function N(F){F=l.nextPow2(F);var I=l.log2(F),L=w[I];return L.length>0?L.pop():new s(F)}o.mallocBuffer=N,o.clearCache=function(){for(var I=0;I<32;++I)_.UINT8[I].length=0,_.UINT16[I].length=0,_.UINT32[I].length=0,_.INT8[I].length=0,_.INT16[I].length=0,_.INT32[I].length=0,_.FLOAT[I].length=0,_.DOUBLE[I].length=0,_.BIGUINT64[I].length=0,_.BIGINT64[I].length=0,_.UINT8C[I].length=0,m[I].length=0,w[I].length=0}},1903:function(a){a.exports=o;function o(i){var l=new Float32Array(16);return l[0]=i[0],l[1]=i[1],l[2]=i[2],l[3]=i[3],l[4]=i[4],l[5]=i[5],l[6]=i[6],l[7]=i[7],l[8]=i[8],l[9]=i[9],l[10]=i[10],l[11]=i[11],l[12]=i[12],l[13]=i[13],l[14]=i[14],l[15]=i[15],l}},1944:function(a,o,i){"use strict";var l=i(5250),u=i(8210);a.exports=s;function s(f,h){for(var p=l(f[0],h[0]),_=1;_>1,N=p(c[R],A);N<=0?(N===0&&(E=R),v=R+1):N>0&&(D=R-1)}return E}o.findCell=T;function y(c,A){for(var v=new Array(c.length),D=0,E=v.length;D=c.length||p(c[X],R)!==0););}return v}o.incidence=y;function k(c,A){if(!A)return y(w(b(c,0)),c,0);for(var v=new Array(A),D=0;D>>L&1&&I.push(E[L]);A.push(I)}return m(A)}o.explode=S;function b(c,A){if(A<0)return[];for(var v=[],D=(1<0}x=x.filter(g);for(var c=x.length,A=new Array(c),v=new Array(c),d=0;d0;){var V=re.pop(),te=$[V];p(te,function(he,Ae){return he-Ae});var ue=te.length,ve=H[V],ke;if(ve===0){var I=x[V];ke=[I]}for(var d=0;d=0)&&(H[Se]=ve^1,re.push(Se),ve===0)){var I=x[Se];oe(I)||(I.reverse(),ke.push(I))}}ve===0&&ee.push(ke)}return ee}},2145:function(a,o){"use strict";o.uniforms=s,o.attributes=f;var i={FLOAT:"float",FLOAT_VEC2:"vec2",FLOAT_VEC3:"vec3",FLOAT_VEC4:"vec4",INT:"int",INT_VEC2:"ivec2",INT_VEC3:"ivec3",INT_VEC4:"ivec4",BOOL:"bool",BOOL_VEC2:"bvec2",BOOL_VEC3:"bvec3",BOOL_VEC4:"bvec4",FLOAT_MAT2:"mat2",FLOAT_MAT3:"mat3",FLOAT_MAT4:"mat4",SAMPLER_2D:"sampler2D",SAMPLER_CUBE:"samplerCube"},l=null;function u(h,p){if(!l){var _=Object.keys(i);l={};for(var m=0;m<_.length;++m){var w=_[m];l[h[w]]=i[w]}}return l[p]}function s(h,p){for(var _=h.getProgramParameter(p,h.ACTIVE_UNIFORMS),m=[],w=0;w<_;++w){var T=h.getActiveUniform(p,w);if(T){var y=u(h,T.type);if(T.size>1)for(var k=0;k1&&N.drawBuffersWEBGL(u[R]);var O=A.getExtension("WEBGL_depth_texture");O?F?g.depth=y(A,D,E,O.UNSIGNED_INT_24_8_WEBGL,A.DEPTH_STENCIL,A.DEPTH_STENCIL_ATTACHMENT):I&&(g.depth=y(A,D,E,A.UNSIGNED_SHORT,A.DEPTH_COMPONENT,A.DEPTH_ATTACHMENT)):I&&F?g._depth_rb=k(A,D,E,A.DEPTH_STENCIL,A.DEPTH_STENCIL_ATTACHMENT):I?g._depth_rb=k(A,D,E,A.DEPTH_COMPONENT16,A.DEPTH_ATTACHMENT):F&&(g._depth_rb=k(A,D,E,A.STENCIL_INDEX,A.STENCIL_ATTACHMENT));var U=A.checkFramebufferStatus(A.FRAMEBUFFER);if(U!==A.FRAMEBUFFER_COMPLETE){g._destroyed=!0,A.bindFramebuffer(A.FRAMEBUFFER,null),A.deleteFramebuffer(g.handle),g.handle=null,g.depth&&(g.depth.dispose(),g.depth=null),g._depth_rb&&(A.deleteRenderbuffer(g._depth_rb),g._depth_rb=null);for(var P=0;PD||A<0||A>D)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");g._shape[0]=c,g._shape[1]=A;for(var E=_(v),R=0;RE||A<0||A>E)throw new Error("gl-fbo: Parameters are too large for FBO");v=v||{};var R=1;if("color"in v){if(R=Math.max(v.color|0,0),R<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(R>1)if(D){if(R>g.getParameter(D.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+R+" draw buffers")}else throw new Error("gl-fbo: Multiple draw buffer extension not supported")}var N=g.UNSIGNED_BYTE,F=g.getExtension("OES_texture_float");if(v.float&&R>0){if(!F)throw new Error("gl-fbo: Context does not support floating point textures");N=g.FLOAT}else v.preferFloat&&R>0&&F&&(N=g.FLOAT);var I=!0;"depth"in v&&(I=!!v.depth);var L=!1;return"stencil"in v&&(L=!!v.stencil),new b(g,c,A,N,R,I,L,D)}},2272:function(a,o,i){"use strict";var l=i(2646)[4],u=i(2478);a.exports=f;function s(h,p,_,m,w,T){var y=p.opposite(m,w);if(!(y<0)){if(w0;){for(var S=_.pop(),T=_.pop(),b=-1,M=-1,y=w[T],x=1;x=0||(p.flip(T,S),s(h,p,_,b,T,M),s(h,p,_,T,M,b),s(h,p,_,M,S,b),s(h,p,_,S,b,M))}}},2334:function(a){a.exports=o;function o(i,l,u){return i[0]=Math.min(l[0],u[0]),i[1]=Math.min(l[1],u[1]),i[2]=Math.min(l[2],u[2]),i[3]=Math.min(l[3],u[3]),i}},2335:function(a){a.exports=o;function o(i){var l=new Float32Array(4);return l[0]=i[0],l[1]=i[1],l[2]=i[2],l[3]=i[3],l}},2361:function(a){var o=!1;if(typeof Float64Array!="undefined"){var i=new Float64Array(1),l=new Uint32Array(i.buffer);if(i[0]=1,o=!0,l[1]===1072693248){let k=function(M,d){return l[0]=M,l[1]=d,i[0]},S=function(M){return i[0]=M,l[0]},b=function(M){return i[0]=M,l[1]};var s=k,f=S,h=b;a.exports=function(d){return i[0]=d,[l[0],l[1]]},a.exports.pack=k,a.exports.lo=S,a.exports.hi=b}else if(l[0]===1072693248){let k=function(M,d){return l[1]=M,l[0]=d,i[0]},S=function(M){return i[0]=M,l[1]},b=function(M){return i[0]=M,l[0]};var p=k,_=S,m=b;a.exports=function(d){return i[0]=d,[l[1],l[0]]},a.exports.pack=k,a.exports.lo=S,a.exports.hi=b}else o=!1}if(!o){let k=function(M,d){return u.writeUInt32LE(M,0,!0),u.writeUInt32LE(d,4,!0),u.readDoubleLE(0,!0)},S=function(M){return u.writeDoubleLE(M,0,!0),u.readUInt32LE(0,!0)},b=function(M){return u.writeDoubleLE(M,0,!0),u.readUInt32LE(4,!0)};var w=k,T=S,y=b,u=new Buffer(8);a.exports=function(d){return u.writeDoubleLE(d,0,!0),[u.readUInt32LE(0,!0),u.readUInt32LE(4,!0)]},a.exports.pack=k,a.exports.lo=S,a.exports.hi=b}a.exports.sign=function(k){return a.exports.hi(k)>>>31},a.exports.exponent=function(k){var S=a.exports.hi(k);return(S<<1>>>21)-1023},a.exports.fraction=function(k){var S=a.exports.lo(k),b=a.exports.hi(k),M=b&(1<<20)-1;return b&2146435072&&(M+=1048576),[S,M]},a.exports.denormalized=function(k){var S=a.exports.hi(k);return!(S&2146435072)}},2408:function(a){a.exports=o;function o(i,l,u){var s=Math.sin(u),f=Math.cos(u),h=l[0],p=l[1],_=l[2],m=l[3],w=l[8],T=l[9],y=l[10],k=l[11];return l!==i&&(i[4]=l[4],i[5]=l[5],i[6]=l[6],i[7]=l[7],i[12]=l[12],i[13]=l[13],i[14]=l[14],i[15]=l[15]),i[0]=h*f-w*s,i[1]=p*f-T*s,i[2]=_*f-y*s,i[3]=m*f-k*s,i[8]=h*s+w*f,i[9]=p*s+T*f,i[10]=_*s+y*f,i[11]=m*s+k*f,i}},2419:function(a){"use strict";a.exports=o;function o(i){for(var l=1,u=1;ub-S?s(p,_,m,w,T,y,k,S,b,M,d):f(p,_,m,w,T,y,k,S,b,M,d)}return h}function l(){function s(m,w,T,y,k,S,b,M,d,x,g){for(var c=2*m,A=y,v=c*y;Ax-d?y?s(m,w,T,k,S,b,M,d,x,g,c):f(m,w,T,k,S,b,M,d,x,g,c):y?h(m,w,T,k,S,b,M,d,x,g,c):p(m,w,T,k,S,b,M,d,x,g,c)}return _}function u(s){return s?i():l()}o.partial=u(!1),o.full=u(!0)},2478:function(a){"use strict";function o(h,p,_,m,w){for(var T=w+1;m<=w;){var y=m+w>>>1,k=h[y],S=_!==void 0?_(k,p):k-p;S>=0?(T=y,w=y-1):m=y+1}return T}function i(h,p,_,m,w){for(var T=w+1;m<=w;){var y=m+w>>>1,k=h[y],S=_!==void 0?_(k,p):k-p;S>0?(T=y,w=y-1):m=y+1}return T}function l(h,p,_,m,w){for(var T=m-1;m<=w;){var y=m+w>>>1,k=h[y],S=_!==void 0?_(k,p):k-p;S<0?(T=y,m=y+1):w=y-1}return T}function u(h,p,_,m,w){for(var T=m-1;m<=w;){var y=m+w>>>1,k=h[y],S=_!==void 0?_(k,p):k-p;S<=0?(T=y,m=y+1):w=y-1}return T}function s(h,p,_,m,w){for(;m<=w;){var T=m+w>>>1,y=h[T],k=_!==void 0?_(y,p):y-p;if(k===0)return T;k<=0?m=T+1:w=T-1}return-1}function f(h,p,_,m,w,T){return typeof _=="function"?T(h,p,_,m===void 0?0:m|0,w===void 0?h.length-1:w|0):T(h,p,void 0,_===void 0?0:_|0,m===void 0?h.length-1:m|0)}a.exports={ge:function(h,p,_,m,w){return f(h,p,_,m,w,o)},gt:function(h,p,_,m,w){return f(h,p,_,m,w,i)},lt:function(h,p,_,m,w){return f(h,p,_,m,w,l)},le:function(h,p,_,m,w){return f(h,p,_,m,w,u)},eq:function(h,p,_,m,w){return f(h,p,_,m,w,s)}}},2504:function(a){a.exports=o;function o(i,l,u){var s=u[0],f=u[1],h=u[2];return i[0]=l[0]*s,i[1]=l[1]*s,i[2]=l[2]*s,i[3]=l[3]*s,i[4]=l[4]*f,i[5]=l[5]*f,i[6]=l[6]*f,i[7]=l[7]*f,i[8]=l[8]*h,i[9]=l[9]*h,i[10]=l[10]*h,i[11]=l[11]*h,i[12]=l[12],i[13]=l[13],i[14]=l[14],i[15]=l[15],i}},2538:function(a,o,i){"use strict";var l=i(8902),u=i(5542),s=i(2272),f=i(5023);a.exports=w;function h(T){return[Math.min(T[0],T[1]),Math.max(T[0],T[1])]}function p(T,y){return T[0]-y[0]||T[1]-y[1]}function _(T){return T.map(h).sort(p)}function m(T,y,k){return y in T?T[y]:k}function w(T,y,k){Array.isArray(y)?(k=k||{},y=y||[]):(k=y||{},y=[]);var S=!!m(k,"delaunay",!0),b=!!m(k,"interior",!0),M=!!m(k,"exterior",!0),d=!!m(k,"infinity",!1);if(!b&&!M||T.length===0)return[];var x=l(T,y);if(S||b!==M||d){for(var g=u(T.length,_(y)),c=0;c0){if($=1,q[ne++]=m(g[D],S,b,M),D+=O,d>0)for(X=1,E=g[D],Q=q[ne]=m(E,S,b,M),H=q[ne+oe],te=q[ne+ee],ke=q[ne+ue],(Q!==H||Q!==te||Q!==ke)&&(N=g[D+R],I=g[D+F],P=g[D+L],p(X,$,E,N,I,P,Q,H,te,ke,S,b,M),Se=K[ne]=j++),ne+=1,D+=O,X=2;X0)for(X=1,E=g[D],Q=q[ne]=m(E,S,b,M),H=q[ne+oe],te=q[ne+ee],ke=q[ne+ue],(Q!==H||Q!==te||Q!==ke)&&(N=g[D+R],I=g[D+F],P=g[D+L],p(X,$,E,N,I,P,Q,H,te,ke,S,b,M),Se=K[ne]=j++,ke!==te&&_(K[ne+ee],Se,I,P,te,ke,S,b,M)),ne+=1,D+=O,X=2;X0){if(X=1,q[ne++]=m(g[D],S,b,M),D+=O,x>0)for($=1,E=g[D],Q=q[ne]=m(E,S,b,M),te=q[ne+ee],H=q[ne+oe],ke=q[ne+ue],(Q!==te||Q!==H||Q!==ke)&&(N=g[D+R],I=g[D+F],P=g[D+L],p(X,$,E,N,I,P,Q,te,H,ke,S,b,M),Se=K[ne]=j++),ne+=1,D+=O,$=2;$0)for($=1,E=g[D],Q=q[ne]=m(E,S,b,M),te=q[ne+ee],H=q[ne+oe],ke=q[ne+ue],(Q!==te||Q!==H||Q!==ke)&&(N=g[D+R],I=g[D+F],P=g[D+L],p(X,$,E,N,I,P,Q,te,H,ke,S,b,M),Se=K[ne]=j++,ke!==te&&_(K[ne+ee],Se,P,N,ke,te,S,b,M)),ne+=1,D+=O,$=2;$ 0"),typeof h.vertex!="function"&&p("Must specify vertex creation function"),typeof h.cell!="function"&&p("Must specify cell creation function"),typeof h.phase!="function"&&p("Must specify phase function");for(var T=h.getters||[],y=new Array(m),k=0;k=0?y[k]=!0:y[k]=!1;return s(h.vertex,h.cell,h.phase,w,_,y)}},2642:function(a,o,i){"use strict";a.exports=s;var l=i(727);function u(f){for(var h=0,p=0;py[1][2]&&(D[0]=-D[0]),y[0][2]>y[2][0]&&(D[1]=-D[1]),y[1][0]>y[0][1]&&(D[2]=-D[2]),!0};function S(d,x,g){var c=x[0],A=x[1],v=x[2],D=x[3];return d[0]=g[0]*c+g[4]*A+g[8]*v+g[12]*D,d[1]=g[1]*c+g[5]*A+g[9]*v+g[13]*D,d[2]=g[2]*c+g[6]*A+g[10]*v+g[14]*D,d[3]=g[3]*c+g[7]*A+g[11]*v+g[15]*D,d}function b(d,x){d[0][0]=x[0],d[0][1]=x[1],d[0][2]=x[2],d[1][0]=x[4],d[1][1]=x[5],d[1][2]=x[6],d[2][0]=x[8],d[2][1]=x[9],d[2][2]=x[10]}function M(d,x,g,c,A){d[0]=x[0]*c+g[0]*A,d[1]=x[1]*c+g[1]*A,d[2]=x[2]*c+g[2]*A}},2653:function(a,o,i){"use strict";var l=i(3865);a.exports=u;function u(s,f){for(var h=s.length,p=new Array(h),_=0;_=_[b]&&(S+=1);y[k]=S}}return p}function h(p,_){try{return l(p,!0)}catch(y){var m=u(p);if(m.length<=_)return[];var w=s(p,m),T=l(w,!0);return f(T,m)}}},2762:function(a,o,i){"use strict";var l=i(1888),u=i(5298),s=i(9618),f=["uint8","uint8_clamped","uint16","uint32","int8","int16","int32","float32"];function h(y,k,S,b,M){this.gl=y,this.type=k,this.handle=S,this.length=b,this.usage=M}var p=h.prototype;p.bind=function(){this.gl.bindBuffer(this.type,this.handle)},p.unbind=function(){this.gl.bindBuffer(this.type,null)},p.dispose=function(){this.gl.deleteBuffer(this.handle)};function _(y,k,S,b,M,d){var x=M.length*M.BYTES_PER_ELEMENT;if(d<0)return y.bufferData(k,M,b),x;if(x+d>S)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return y.bufferSubData(k,d,M),S}function m(y,k){for(var S=l.malloc(y.length,k),b=y.length,M=0;M=0;--b){if(k[b]!==S)return!1;S*=y[b]}return!0}p.update=function(y,k){if(typeof k!="number"&&(k=-1),this.bind(),typeof y=="object"&&typeof y.shape!="undefined"){var S=y.dtype;if(f.indexOf(S)<0&&(S="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var b=gl.getExtension("OES_element_index_uint");b&&S!=="uint16"?S="uint32":S="uint16"}if(S===y.dtype&&w(y.shape,y.stride))y.offset===0&&y.data.length===y.shape[0]?this.length=_(this.gl,this.type,this.length,this.usage,y.data,k):this.length=_(this.gl,this.type,this.length,this.usage,y.data.subarray(y.offset,y.shape[0]),k);else{var M=l.malloc(y.size,S),d=s(M,y.shape);u.assign(d,y),k<0?this.length=_(this.gl,this.type,this.length,this.usage,M,k):this.length=_(this.gl,this.type,this.length,this.usage,M.subarray(0,y.size),k),l.free(M)}}else if(Array.isArray(y)){var x;this.type===this.gl.ELEMENT_ARRAY_BUFFER?x=m(y,"uint16"):x=m(y,"float32"),k<0?this.length=_(this.gl,this.type,this.length,this.usage,x,k):this.length=_(this.gl,this.type,this.length,this.usage,x.subarray(0,y.length),k),l.free(x)}else if(typeof y=="object"&&typeof y.length=="number")this.length=_(this.gl,this.type,this.length,this.usage,y,k);else if(typeof y=="number"||y===void 0){if(k>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");y=y|0,y<=0&&(y=1),this.gl.bufferData(this.type,y|0,this.usage),this.length=y}else throw new Error("gl-buffer: Invalid data type")};function T(y,k,S,b){if(S=S||y.ARRAY_BUFFER,b=b||y.DYNAMIC_DRAW,S!==y.ARRAY_BUFFER&&S!==y.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(b!==y.DYNAMIC_DRAW&&b!==y.STATIC_DRAW&&b!==y.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var M=y.createBuffer(),d=new h(y,S,M,0,b);return d.update(k),d}a.exports=T},2825:function(a){a.exports=o;function o(i,l,u){var s=new Float32Array(3);return s[0]=i,s[1]=l,s[2]=u,s}},2931:function(a,o,i){a.exports={EPSILON:i(2613),create:i(1091),clone:i(3126),angle:i(8192),fromValues:i(2825),copy:i(3990),set:i(1463),equals:i(9922),exactEquals:i(9265),add:i(5632),subtract:i(6843),sub:i(2229),multiply:i(5847),mul:i(4505),divide:i(6690),div:i(4008),min:i(8107),max:i(7417),floor:i(2681),ceil:i(9226),round:i(2447),scale:i(6621),scaleAndAdd:i(8489),distance:i(7056),dist:i(5455),squaredDistance:i(2953),sqrDist:i(6141),length:i(1387),len:i(868),squaredLength:i(3066),sqrLen:i(5486),negate:i(5093),inverse:i(811),normalize:i(3536),dot:i(244),cross:i(5911),lerp:i(6658),random:i(7636),transformMat4:i(5673),transformMat3:i(492),transformQuat:i(264),rotateX:i(6894),rotateY:i(109),rotateZ:i(8692),forEach:i(5137)}},2933:function(a){a.exports=o;function o(i,l){return i[0]=l[0],i[1]=l[1],i[2]=l[2],i[3]=l[3],i}},2953:function(a){a.exports=o;function o(i,l){var u=l[0]-i[0],s=l[1]-i[1],f=l[2]-i[2];return u*u+s*s+f*f}},2962:function(a,o,i){"use strict";var l=i(5250),u=i(8210),s=i(3012),f=i(7004),h=6;function p(b,M,d,x){return function(c){return x(b(d(c[0][0],c[1][1]),d(-c[0][1],c[1][0])))}}function _(b,M,d,x){return function(c){return x(b(M(b(d(c[1][1],c[2][2]),d(-c[1][2],c[2][1])),c[0][0]),b(M(b(d(c[1][0],c[2][2]),d(-c[1][2],c[2][0])),-c[0][1]),M(b(d(c[1][0],c[2][1]),d(-c[1][1],c[2][0])),c[0][2]))))}}function m(b,M,d,x){return function(c){return x(b(b(M(b(M(b(d(c[2][2],c[3][3]),d(-c[2][3],c[3][2])),c[1][1]),b(M(b(d(c[2][1],c[3][3]),d(-c[2][3],c[3][1])),-c[1][2]),M(b(d(c[2][1],c[3][2]),d(-c[2][2],c[3][1])),c[1][3]))),c[0][0]),M(b(M(b(d(c[2][2],c[3][3]),d(-c[2][3],c[3][2])),c[1][0]),b(M(b(d(c[2][0],c[3][3]),d(-c[2][3],c[3][0])),-c[1][2]),M(b(d(c[2][0],c[3][2]),d(-c[2][2],c[3][0])),c[1][3]))),-c[0][1])),b(M(b(M(b(d(c[2][1],c[3][3]),d(-c[2][3],c[3][1])),c[1][0]),b(M(b(d(c[2][0],c[3][3]),d(-c[2][3],c[3][0])),-c[1][1]),M(b(d(c[2][0],c[3][1]),d(-c[2][1],c[3][0])),c[1][3]))),c[0][2]),M(b(M(b(d(c[2][1],c[3][2]),d(-c[2][2],c[3][1])),c[1][0]),b(M(b(d(c[2][0],c[3][2]),d(-c[2][2],c[3][0])),-c[1][1]),M(b(d(c[2][0],c[3][1]),d(-c[2][1],c[3][0])),c[1][2]))),-c[0][3]))))}}function w(b,M,d,x){return function(c){return x(b(b(M(b(b(M(b(M(b(d(c[3][3],c[4][4]),d(-c[3][4],c[4][3])),c[2][2]),b(M(b(d(c[3][2],c[4][4]),d(-c[3][4],c[4][2])),-c[2][3]),M(b(d(c[3][2],c[4][3]),d(-c[3][3],c[4][2])),c[2][4]))),c[1][1]),M(b(M(b(d(c[3][3],c[4][4]),d(-c[3][4],c[4][3])),c[2][1]),b(M(b(d(c[3][1],c[4][4]),d(-c[3][4],c[4][1])),-c[2][3]),M(b(d(c[3][1],c[4][3]),d(-c[3][3],c[4][1])),c[2][4]))),-c[1][2])),b(M(b(M(b(d(c[3][2],c[4][4]),d(-c[3][4],c[4][2])),c[2][1]),b(M(b(d(c[3][1],c[4][4]),d(-c[3][4],c[4][1])),-c[2][2]),M(b(d(c[3][1],c[4][2]),d(-c[3][2],c[4][1])),c[2][4]))),c[1][3]),M(b(M(b(d(c[3][2],c[4][3]),d(-c[3][3],c[4][2])),c[2][1]),b(M(b(d(c[3][1],c[4][3]),d(-c[3][3],c[4][1])),-c[2][2]),M(b(d(c[3][1],c[4][2]),d(-c[3][2],c[4][1])),c[2][3]))),-c[1][4]))),c[0][0]),M(b(b(M(b(M(b(d(c[3][3],c[4][4]),d(-c[3][4],c[4][3])),c[2][2]),b(M(b(d(c[3][2],c[4][4]),d(-c[3][4],c[4][2])),-c[2][3]),M(b(d(c[3][2],c[4][3]),d(-c[3][3],c[4][2])),c[2][4]))),c[1][0]),M(b(M(b(d(c[3][3],c[4][4]),d(-c[3][4],c[4][3])),c[2][0]),b(M(b(d(c[3][0],c[4][4]),d(-c[3][4],c[4][0])),-c[2][3]),M(b(d(c[3][0],c[4][3]),d(-c[3][3],c[4][0])),c[2][4]))),-c[1][2])),b(M(b(M(b(d(c[3][2],c[4][4]),d(-c[3][4],c[4][2])),c[2][0]),b(M(b(d(c[3][0],c[4][4]),d(-c[3][4],c[4][0])),-c[2][2]),M(b(d(c[3][0],c[4][2]),d(-c[3][2],c[4][0])),c[2][4]))),c[1][3]),M(b(M(b(d(c[3][2],c[4][3]),d(-c[3][3],c[4][2])),c[2][0]),b(M(b(d(c[3][0],c[4][3]),d(-c[3][3],c[4][0])),-c[2][2]),M(b(d(c[3][0],c[4][2]),d(-c[3][2],c[4][0])),c[2][3]))),-c[1][4]))),-c[0][1])),b(M(b(b(M(b(M(b(d(c[3][3],c[4][4]),d(-c[3][4],c[4][3])),c[2][1]),b(M(b(d(c[3][1],c[4][4]),d(-c[3][4],c[4][1])),-c[2][3]),M(b(d(c[3][1],c[4][3]),d(-c[3][3],c[4][1])),c[2][4]))),c[1][0]),M(b(M(b(d(c[3][3],c[4][4]),d(-c[3][4],c[4][3])),c[2][0]),b(M(b(d(c[3][0],c[4][4]),d(-c[3][4],c[4][0])),-c[2][3]),M(b(d(c[3][0],c[4][3]),d(-c[3][3],c[4][0])),c[2][4]))),-c[1][1])),b(M(b(M(b(d(c[3][1],c[4][4]),d(-c[3][4],c[4][1])),c[2][0]),b(M(b(d(c[3][0],c[4][4]),d(-c[3][4],c[4][0])),-c[2][1]),M(b(d(c[3][0],c[4][1]),d(-c[3][1],c[4][0])),c[2][4]))),c[1][3]),M(b(M(b(d(c[3][1],c[4][3]),d(-c[3][3],c[4][1])),c[2][0]),b(M(b(d(c[3][0],c[4][3]),d(-c[3][3],c[4][0])),-c[2][1]),M(b(d(c[3][0],c[4][1]),d(-c[3][1],c[4][0])),c[2][3]))),-c[1][4]))),c[0][2]),b(M(b(b(M(b(M(b(d(c[3][2],c[4][4]),d(-c[3][4],c[4][2])),c[2][1]),b(M(b(d(c[3][1],c[4][4]),d(-c[3][4],c[4][1])),-c[2][2]),M(b(d(c[3][1],c[4][2]),d(-c[3][2],c[4][1])),c[2][4]))),c[1][0]),M(b(M(b(d(c[3][2],c[4][4]),d(-c[3][4],c[4][2])),c[2][0]),b(M(b(d(c[3][0],c[4][4]),d(-c[3][4],c[4][0])),-c[2][2]),M(b(d(c[3][0],c[4][2]),d(-c[3][2],c[4][0])),c[2][4]))),-c[1][1])),b(M(b(M(b(d(c[3][1],c[4][4]),d(-c[3][4],c[4][1])),c[2][0]),b(M(b(d(c[3][0],c[4][4]),d(-c[3][4],c[4][0])),-c[2][1]),M(b(d(c[3][0],c[4][1]),d(-c[3][1],c[4][0])),c[2][4]))),c[1][2]),M(b(M(b(d(c[3][1],c[4][2]),d(-c[3][2],c[4][1])),c[2][0]),b(M(b(d(c[3][0],c[4][2]),d(-c[3][2],c[4][0])),-c[2][1]),M(b(d(c[3][0],c[4][1]),d(-c[3][1],c[4][0])),c[2][2]))),-c[1][4]))),-c[0][3]),M(b(b(M(b(M(b(d(c[3][2],c[4][3]),d(-c[3][3],c[4][2])),c[2][1]),b(M(b(d(c[3][1],c[4][3]),d(-c[3][3],c[4][1])),-c[2][2]),M(b(d(c[3][1],c[4][2]),d(-c[3][2],c[4][1])),c[2][3]))),c[1][0]),M(b(M(b(d(c[3][2],c[4][3]),d(-c[3][3],c[4][2])),c[2][0]),b(M(b(d(c[3][0],c[4][3]),d(-c[3][3],c[4][0])),-c[2][2]),M(b(d(c[3][0],c[4][2]),d(-c[3][2],c[4][0])),c[2][3]))),-c[1][1])),b(M(b(M(b(d(c[3][1],c[4][3]),d(-c[3][3],c[4][1])),c[2][0]),b(M(b(d(c[3][0],c[4][3]),d(-c[3][3],c[4][0])),-c[2][1]),M(b(d(c[3][0],c[4][1]),d(-c[3][1],c[4][0])),c[2][3]))),c[1][2]),M(b(M(b(d(c[3][1],c[4][2]),d(-c[3][2],c[4][1])),c[2][0]),b(M(b(d(c[3][0],c[4][2]),d(-c[3][2],c[4][0])),-c[2][1]),M(b(d(c[3][0],c[4][1]),d(-c[3][1],c[4][0])),c[2][2]))),-c[1][3]))),c[0][4])))))}}function T(b){var M=b===2?p:b===3?_:b===4?m:b===5?w:void 0;return M(u,s,l,f)}var y=[function(){return[0]},function(M){return[M[0][0]]}];function k(b,M,d,x,g,c,A,v){return function(E){switch(E.length){case 0:return b(E);case 1:return M(E);case 2:return d(E);case 3:return x(E);case 4:return g(E);case 5:return c(E)}var R=A[E.length];return R||(R=A[E.length]=v(E.length)),R(E)}}function S(){for(;y.length0?P.pop():new ArrayBuffer(I)}o.mallocArrayBuffer=k;function S(F){return new Uint8Array(k(F),0,F)}o.mallocUint8=S;function x(F){return new Uint16Array(k(2*F),0,F)}o.mallocUint16=x;function M(F){return new Uint32Array(k(4*F),0,F)}o.mallocUint32=M;function d(F){return new Int8Array(k(F),0,F)}o.mallocInt8=d;function _(F){return new Int16Array(k(2*F),0,F)}o.mallocInt16=_;function g(F){return new Int32Array(k(4*F),0,F)}o.mallocInt32=g;function c(F){return new Float32Array(k(4*F),0,F)}o.mallocFloat32=o.mallocFloat=c;function A(F){return new Float64Array(k(8*F),0,F)}o.mallocFloat64=o.mallocDouble=A;function v(F){return f?new Uint8ClampedArray(k(F),0,F):S(F)}o.mallocUint8Clamped=v;function D(F){return h?new BigUint64Array(k(8*F),0,F):null}o.mallocBigUint64=D;function E(F){return p?new BigInt64Array(k(8*F),0,F):null}o.mallocBigInt64=E;function R(F){return new DataView(k(F),0,F)}o.mallocDataView=R;function N(F){F=l.nextPow2(F);var I=l.log2(F),L=w[I];return L.length>0?L.pop():new s(F)}o.mallocBuffer=N,o.clearCache=function(){for(var I=0;I<32;++I)b.UINT8[I].length=0,b.UINT16[I].length=0,b.UINT32[I].length=0,b.INT8[I].length=0,b.INT16[I].length=0,b.INT32[I].length=0,b.FLOAT[I].length=0,b.DOUBLE[I].length=0,b.BIGUINT64[I].length=0,b.BIGINT64[I].length=0,b.UINT8C[I].length=0,m[I].length=0,w[I].length=0}},1903:function(a){a.exports=o;function o(i){var l=new Float32Array(16);return l[0]=i[0],l[1]=i[1],l[2]=i[2],l[3]=i[3],l[4]=i[4],l[5]=i[5],l[6]=i[6],l[7]=i[7],l[8]=i[8],l[9]=i[9],l[10]=i[10],l[11]=i[11],l[12]=i[12],l[13]=i[13],l[14]=i[14],l[15]=i[15],l}},1944:function(a,o,i){"use strict";var l=i(5250),u=i(8210);a.exports=s;function s(f,h){for(var p=l(f[0],h[0]),b=1;b>1,N=p(c[R],A);N<=0?(N===0&&(E=R),v=R+1):N>0&&(D=R-1)}return E}o.findCell=T;function y(c,A){for(var v=new Array(c.length),D=0,E=v.length;D=c.length||p(c[X],R)!==0););}return v}o.incidence=y;function k(c,A){if(!A)return y(w(x(c,0)),c,0);for(var v=new Array(A),D=0;D>>L&1&&I.push(E[L]);A.push(I)}return m(A)}o.explode=S;function x(c,A){if(A<0)return[];for(var v=[],D=(1<0}_=_.filter(g);for(var c=_.length,A=new Array(c),v=new Array(c),d=0;d0;){var V=re.pop(),te=$[V];p(te,function(he,Ae){return he-Ae});var ue=te.length,ve=H[V],ke;if(ve===0){var I=_[V];ke=[I]}for(var d=0;d=0)&&(H[Se]=ve^1,re.push(Se),ve===0)){var I=_[Se];oe(I)||(I.reverse(),ke.push(I))}}ve===0&&ee.push(ke)}return ee}},2145:function(a,o){"use strict";o.uniforms=s,o.attributes=f;var i={FLOAT:"float",FLOAT_VEC2:"vec2",FLOAT_VEC3:"vec3",FLOAT_VEC4:"vec4",INT:"int",INT_VEC2:"ivec2",INT_VEC3:"ivec3",INT_VEC4:"ivec4",BOOL:"bool",BOOL_VEC2:"bvec2",BOOL_VEC3:"bvec3",BOOL_VEC4:"bvec4",FLOAT_MAT2:"mat2",FLOAT_MAT3:"mat3",FLOAT_MAT4:"mat4",SAMPLER_2D:"sampler2D",SAMPLER_CUBE:"samplerCube"},l=null;function u(h,p){if(!l){var b=Object.keys(i);l={};for(var m=0;m1)for(var k=0;k1&&N.drawBuffersWEBGL(u[R]);var O=A.getExtension("WEBGL_depth_texture");O?F?g.depth=y(A,D,E,O.UNSIGNED_INT_24_8_WEBGL,A.DEPTH_STENCIL,A.DEPTH_STENCIL_ATTACHMENT):I&&(g.depth=y(A,D,E,A.UNSIGNED_SHORT,A.DEPTH_COMPONENT,A.DEPTH_ATTACHMENT)):I&&F?g._depth_rb=k(A,D,E,A.DEPTH_STENCIL,A.DEPTH_STENCIL_ATTACHMENT):I?g._depth_rb=k(A,D,E,A.DEPTH_COMPONENT16,A.DEPTH_ATTACHMENT):F&&(g._depth_rb=k(A,D,E,A.STENCIL_INDEX,A.STENCIL_ATTACHMENT));var U=A.checkFramebufferStatus(A.FRAMEBUFFER);if(U!==A.FRAMEBUFFER_COMPLETE){g._destroyed=!0,A.bindFramebuffer(A.FRAMEBUFFER,null),A.deleteFramebuffer(g.handle),g.handle=null,g.depth&&(g.depth.dispose(),g.depth=null),g._depth_rb&&(A.deleteRenderbuffer(g._depth_rb),g._depth_rb=null);for(var P=0;PD||A<0||A>D)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");g._shape[0]=c,g._shape[1]=A;for(var E=b(v),R=0;RE||A<0||A>E)throw new Error("gl-fbo: Parameters are too large for FBO");v=v||{};var R=1;if("color"in v){if(R=Math.max(v.color|0,0),R<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(R>1)if(D){if(R>g.getParameter(D.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+R+" draw buffers")}else throw new Error("gl-fbo: Multiple draw buffer extension not supported")}var N=g.UNSIGNED_BYTE,F=g.getExtension("OES_texture_float");if(v.float&&R>0){if(!F)throw new Error("gl-fbo: Context does not support floating point textures");N=g.FLOAT}else v.preferFloat&&R>0&&F&&(N=g.FLOAT);var I=!0;"depth"in v&&(I=!!v.depth);var L=!1;return"stencil"in v&&(L=!!v.stencil),new x(g,c,A,N,R,I,L,D)}},2272:function(a,o,i){"use strict";var l=i(2646)[4],u=i(2478);a.exports=f;function s(h,p,b,m,w,T){var y=p.opposite(m,w);if(!(y<0)){if(w0;){for(var S=b.pop(),T=b.pop(),x=-1,M=-1,y=w[T],_=1;_=0||(p.flip(T,S),s(h,p,b,x,T,M),s(h,p,b,T,M,x),s(h,p,b,M,S,x),s(h,p,b,S,x,M))}}},2334:function(a){a.exports=o;function o(i,l,u){return i[0]=Math.min(l[0],u[0]),i[1]=Math.min(l[1],u[1]),i[2]=Math.min(l[2],u[2]),i[3]=Math.min(l[3],u[3]),i}},2335:function(a){a.exports=o;function o(i){var l=new Float32Array(4);return l[0]=i[0],l[1]=i[1],l[2]=i[2],l[3]=i[3],l}},2361:function(a){var o=!1;if(typeof Float64Array!="undefined"){var i=new Float64Array(1),l=new Uint32Array(i.buffer);if(i[0]=1,o=!0,l[1]===1072693248){let k=function(M,d){return l[0]=M,l[1]=d,i[0]},S=function(M){return i[0]=M,l[0]},x=function(M){return i[0]=M,l[1]};var s=k,f=S,h=x;a.exports=function(d){return i[0]=d,[l[0],l[1]]},a.exports.pack=k,a.exports.lo=S,a.exports.hi=x}else if(l[0]===1072693248){let k=function(M,d){return l[1]=M,l[0]=d,i[0]},S=function(M){return i[0]=M,l[1]},x=function(M){return i[0]=M,l[0]};var p=k,b=S,m=x;a.exports=function(d){return i[0]=d,[l[1],l[0]]},a.exports.pack=k,a.exports.lo=S,a.exports.hi=x}else o=!1}if(!o){let k=function(M,d){return u.writeUInt32LE(M,0,!0),u.writeUInt32LE(d,4,!0),u.readDoubleLE(0,!0)},S=function(M){return u.writeDoubleLE(M,0,!0),u.readUInt32LE(0,!0)},x=function(M){return u.writeDoubleLE(M,0,!0),u.readUInt32LE(4,!0)};var w=k,T=S,y=x,u=new Buffer(8);a.exports=function(d){return u.writeDoubleLE(d,0,!0),[u.readUInt32LE(0,!0),u.readUInt32LE(4,!0)]},a.exports.pack=k,a.exports.lo=S,a.exports.hi=x}a.exports.sign=function(k){return a.exports.hi(k)>>>31},a.exports.exponent=function(k){var S=a.exports.hi(k);return(S<<1>>>21)-1023},a.exports.fraction=function(k){var S=a.exports.lo(k),x=a.exports.hi(k),M=x&(1<<20)-1;return x&2146435072&&(M+=1048576),[S,M]},a.exports.denormalized=function(k){var S=a.exports.hi(k);return!(S&2146435072)}},2408:function(a){a.exports=o;function o(i,l,u){var s=Math.sin(u),f=Math.cos(u),h=l[0],p=l[1],b=l[2],m=l[3],w=l[8],T=l[9],y=l[10],k=l[11];return l!==i&&(i[4]=l[4],i[5]=l[5],i[6]=l[6],i[7]=l[7],i[12]=l[12],i[13]=l[13],i[14]=l[14],i[15]=l[15]),i[0]=h*f-w*s,i[1]=p*f-T*s,i[2]=b*f-y*s,i[3]=m*f-k*s,i[8]=h*s+w*f,i[9]=p*s+T*f,i[10]=b*s+y*f,i[11]=m*s+k*f,i}},2419:function(a){"use strict";a.exports=o;function o(i){for(var l=1,u=1;ux-S?s(p,b,m,w,T,y,k,S,x,M,d):f(p,b,m,w,T,y,k,S,x,M,d)}return h}function l(){function s(m,w,T,y,k,S,x,M,d,_,g){for(var c=2*m,A=y,v=c*y;A_-d?y?s(m,w,T,k,S,x,M,d,_,g,c):f(m,w,T,k,S,x,M,d,_,g,c):y?h(m,w,T,k,S,x,M,d,_,g,c):p(m,w,T,k,S,x,M,d,_,g,c)}return b}function u(s){return s?i():l()}o.partial=u(!1),o.full=u(!0)},2478:function(a){"use strict";function o(h,p,b,m,w){for(var T=w+1;m<=w;){var y=m+w>>>1,k=h[y],S=b!==void 0?b(k,p):k-p;S>=0?(T=y,w=y-1):m=y+1}return T}function i(h,p,b,m,w){for(var T=w+1;m<=w;){var y=m+w>>>1,k=h[y],S=b!==void 0?b(k,p):k-p;S>0?(T=y,w=y-1):m=y+1}return T}function l(h,p,b,m,w){for(var T=m-1;m<=w;){var y=m+w>>>1,k=h[y],S=b!==void 0?b(k,p):k-p;S<0?(T=y,m=y+1):w=y-1}return T}function u(h,p,b,m,w){for(var T=m-1;m<=w;){var y=m+w>>>1,k=h[y],S=b!==void 0?b(k,p):k-p;S<=0?(T=y,m=y+1):w=y-1}return T}function s(h,p,b,m,w){for(;m<=w;){var T=m+w>>>1,y=h[T],k=b!==void 0?b(y,p):y-p;if(k===0)return T;k<=0?m=T+1:w=T-1}return-1}function f(h,p,b,m,w,T){return typeof b=="function"?T(h,p,b,m===void 0?0:m|0,w===void 0?h.length-1:w|0):T(h,p,void 0,b===void 0?0:b|0,m===void 0?h.length-1:m|0)}a.exports={ge:function(h,p,b,m,w){return f(h,p,b,m,w,o)},gt:function(h,p,b,m,w){return f(h,p,b,m,w,i)},lt:function(h,p,b,m,w){return f(h,p,b,m,w,l)},le:function(h,p,b,m,w){return f(h,p,b,m,w,u)},eq:function(h,p,b,m,w){return f(h,p,b,m,w,s)}}},2504:function(a){a.exports=o;function o(i,l,u){var s=u[0],f=u[1],h=u[2];return i[0]=l[0]*s,i[1]=l[1]*s,i[2]=l[2]*s,i[3]=l[3]*s,i[4]=l[4]*f,i[5]=l[5]*f,i[6]=l[6]*f,i[7]=l[7]*f,i[8]=l[8]*h,i[9]=l[9]*h,i[10]=l[10]*h,i[11]=l[11]*h,i[12]=l[12],i[13]=l[13],i[14]=l[14],i[15]=l[15],i}},2538:function(a,o,i){"use strict";var l=i(8902),u=i(5542),s=i(2272),f=i(5023);a.exports=w;function h(T){return[Math.min(T[0],T[1]),Math.max(T[0],T[1])]}function p(T,y){return T[0]-y[0]||T[1]-y[1]}function b(T){return T.map(h).sort(p)}function m(T,y,k){return y in T?T[y]:k}function w(T,y,k){Array.isArray(y)?(k=k||{},y=y||[]):(k=y||{},y=[]);var S=!!m(k,"delaunay",!0),x=!!m(k,"interior",!0),M=!!m(k,"exterior",!0),d=!!m(k,"infinity",!1);if(!x&&!M||T.length===0)return[];var _=l(T,y);if(S||x!==M||d){for(var g=u(T.length,b(y)),c=0;c<_.length;++c){var A=_[c];g.addTriangle(A[0],A[1],A[2])}return S&&s(T,g),M?x?d?f(g,0,d):g.cells():f(g,1,d):f(g,-1)}else return _}},2573:function(a){a.exports=o;function o(i,l,u,s){var f=l[0],h=l[1],p=l[2],b=l[3];return i[0]=f+s*(u[0]-f),i[1]=h+s*(u[1]-h),i[2]=p+s*(u[2]-p),i[3]=b+s*(u[3]-b),i}},2613:function(a){a.exports=1e-6},2640:function(a,o,i){"use strict";var l=i(1888);a.exports=f;var u={"false,0,1":function(p,b,m,w,T){return function(k,S,x,M){var d=k.shape[0]|0,_=k.shape[1]|0,g=k.data,c=k.offset|0,A=k.stride[0]|0,v=k.stride[1]|0,D=c,E,R=-A|0,N=0,F=-v|0,I=0,L=-A-v|0,P=0,O=A|0,U=v-A*d|0,X=0,$=0,j=0,Y=2*d|0,q=w(Y),K=w(Y),ne=0,Q=0,oe=-1,re=-1,H=0,ee=-d|0,V=d|0,te=0,ue=-d-1|0,ve=d-1|0,ke=0,Se=0,he=0;for(X=0;X0){if($=1,q[ne++]=m(g[D],S,x,M),D+=O,d>0)for(X=1,E=g[D],Q=q[ne]=m(E,S,x,M),H=q[ne+oe],te=q[ne+ee],ke=q[ne+ue],(Q!==H||Q!==te||Q!==ke)&&(N=g[D+R],I=g[D+F],P=g[D+L],p(X,$,E,N,I,P,Q,H,te,ke,S,x,M),Se=K[ne]=j++),ne+=1,D+=O,X=2;X0)for(X=1,E=g[D],Q=q[ne]=m(E,S,x,M),H=q[ne+oe],te=q[ne+ee],ke=q[ne+ue],(Q!==H||Q!==te||Q!==ke)&&(N=g[D+R],I=g[D+F],P=g[D+L],p(X,$,E,N,I,P,Q,H,te,ke,S,x,M),Se=K[ne]=j++,ke!==te&&b(K[ne+ee],Se,I,P,te,ke,S,x,M)),ne+=1,D+=O,X=2;X0){if(X=1,q[ne++]=m(g[D],S,x,M),D+=O,_>0)for($=1,E=g[D],Q=q[ne]=m(E,S,x,M),te=q[ne+ee],H=q[ne+oe],ke=q[ne+ue],(Q!==te||Q!==H||Q!==ke)&&(N=g[D+R],I=g[D+F],P=g[D+L],p(X,$,E,N,I,P,Q,te,H,ke,S,x,M),Se=K[ne]=j++),ne+=1,D+=O,$=2;$<_;++$)E=g[D],Q=q[ne]=m(E,S,x,M),te=q[ne+ee],H=q[ne+oe],ke=q[ne+ue],(Q!==te||Q!==H||Q!==ke)&&(N=g[D+R],I=g[D+F],P=g[D+L],p(X,$,E,N,I,P,Q,te,H,ke,S,x,M),Se=K[ne]=j++,ke!==H&&b(K[ne+oe],Se,I,P,H,ke,S,x,M)),ne+=1,D+=O;for(D+=U,ne=0,he=ee,ee=V,V=he,he=oe,oe=re,re=he,he=ue,ue=ve,ve=he,X=2;X0)for($=1,E=g[D],Q=q[ne]=m(E,S,x,M),te=q[ne+ee],H=q[ne+oe],ke=q[ne+ue],(Q!==te||Q!==H||Q!==ke)&&(N=g[D+R],I=g[D+F],P=g[D+L],p(X,$,E,N,I,P,Q,te,H,ke,S,x,M),Se=K[ne]=j++,ke!==te&&b(K[ne+ee],Se,P,N,ke,te,S,x,M)),ne+=1,D+=O,$=2;$<_;++$)E=g[D],Q=q[ne]=m(E,S,x,M),te=q[ne+ee],H=q[ne+oe],ke=q[ne+ue],(Q!==te||Q!==H||Q!==ke)&&(N=g[D+R],I=g[D+F],P=g[D+L],p(X,$,E,N,I,P,Q,te,H,ke,S,x,M),Se=K[ne]=j++,ke!==H&&b(K[ne+oe],Se,I,P,H,ke,S,x,M),ke!==te&&b(K[ne+ee],Se,P,N,ke,te,S,x,M)),ne+=1,D+=O;X&1&&(ne=0),he=ee,ee=V,V=he,he=oe,oe=re,re=he,he=ue,ue=ve,ve=he,D+=U}}T(K),T(q)}}};function s(h,p,b,m,w,T){var y=[T,w].join(","),k=u[y];return k(h,p,b,l.mallocUint32,l.freeUint32)}function f(h){function p(S){throw new Error("ndarray-extract-contour: "+S)}typeof h!="object"&&p("Must specify arguments");var b=h.order;Array.isArray(b)||p("Must specify order");var m=h.arrayArguments||1;m<1&&p("Must have at least one array argument");var w=h.scalarArguments||0;w<0&&p("Scalar arg count must be > 0"),typeof h.vertex!="function"&&p("Must specify vertex creation function"),typeof h.cell!="function"&&p("Must specify cell creation function"),typeof h.phase!="function"&&p("Must specify phase function");for(var T=h.getters||[],y=new Array(m),k=0;k=0?y[k]=!0:y[k]=!1;return s(h.vertex,h.cell,h.phase,w,b,y)}},2642:function(a,o,i){"use strict";a.exports=s;var l=i(727);function u(f){for(var h=0,p=0;py[1][2]&&(D[0]=-D[0]),y[0][2]>y[2][0]&&(D[1]=-D[1]),y[1][0]>y[0][1]&&(D[2]=-D[2]),!0};function S(d,_,g){var c=_[0],A=_[1],v=_[2],D=_[3];return d[0]=g[0]*c+g[4]*A+g[8]*v+g[12]*D,d[1]=g[1]*c+g[5]*A+g[9]*v+g[13]*D,d[2]=g[2]*c+g[6]*A+g[10]*v+g[14]*D,d[3]=g[3]*c+g[7]*A+g[11]*v+g[15]*D,d}function x(d,_){d[0][0]=_[0],d[0][1]=_[1],d[0][2]=_[2],d[1][0]=_[4],d[1][1]=_[5],d[1][2]=_[6],d[2][0]=_[8],d[2][1]=_[9],d[2][2]=_[10]}function M(d,_,g,c,A){d[0]=_[0]*c+g[0]*A,d[1]=_[1]*c+g[1]*A,d[2]=_[2]*c+g[2]*A}},2653:function(a,o,i){"use strict";var l=i(3865);a.exports=u;function u(s,f){for(var h=s.length,p=new Array(h),b=0;b=b[x]&&(S+=1);y[k]=S}}return p}function h(p,b){try{return l(p,!0)}catch(y){var m=u(p);if(m.length<=b)return[];var w=s(p,m),T=l(w,!0);return f(T,m)}}},2762:function(a,o,i){"use strict";var l=i(1888),u=i(5298),s=i(9618),f=["uint8","uint8_clamped","uint16","uint32","int8","int16","int32","float32"];function h(y,k,S,x,M){this.gl=y,this.type=k,this.handle=S,this.length=x,this.usage=M}var p=h.prototype;p.bind=function(){this.gl.bindBuffer(this.type,this.handle)},p.unbind=function(){this.gl.bindBuffer(this.type,null)},p.dispose=function(){this.gl.deleteBuffer(this.handle)};function b(y,k,S,x,M,d){var _=M.length*M.BYTES_PER_ELEMENT;if(d<0)return y.bufferData(k,M,x),_;if(_+d>S)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return y.bufferSubData(k,d,M),S}function m(y,k){for(var S=l.malloc(y.length,k),x=y.length,M=0;M=0;--x){if(k[x]!==S)return!1;S*=y[x]}return!0}p.update=function(y,k){if(typeof k!="number"&&(k=-1),this.bind(),typeof y=="object"&&typeof y.shape!="undefined"){var S=y.dtype;if(f.indexOf(S)<0&&(S="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var x=gl.getExtension("OES_element_index_uint");x&&S!=="uint16"?S="uint32":S="uint16"}if(S===y.dtype&&w(y.shape,y.stride))y.offset===0&&y.data.length===y.shape[0]?this.length=b(this.gl,this.type,this.length,this.usage,y.data,k):this.length=b(this.gl,this.type,this.length,this.usage,y.data.subarray(y.offset,y.shape[0]),k);else{var M=l.malloc(y.size,S),d=s(M,y.shape);u.assign(d,y),k<0?this.length=b(this.gl,this.type,this.length,this.usage,M,k):this.length=b(this.gl,this.type,this.length,this.usage,M.subarray(0,y.size),k),l.free(M)}}else if(Array.isArray(y)){var _;this.type===this.gl.ELEMENT_ARRAY_BUFFER?_=m(y,"uint16"):_=m(y,"float32"),k<0?this.length=b(this.gl,this.type,this.length,this.usage,_,k):this.length=b(this.gl,this.type,this.length,this.usage,_.subarray(0,y.length),k),l.free(_)}else if(typeof y=="object"&&typeof y.length=="number")this.length=b(this.gl,this.type,this.length,this.usage,y,k);else if(typeof y=="number"||y===void 0){if(k>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");y=y|0,y<=0&&(y=1),this.gl.bufferData(this.type,y|0,this.usage),this.length=y}else throw new Error("gl-buffer: Invalid data type")};function T(y,k,S,x){if(S=S||y.ARRAY_BUFFER,x=x||y.DYNAMIC_DRAW,S!==y.ARRAY_BUFFER&&S!==y.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(x!==y.DYNAMIC_DRAW&&x!==y.STATIC_DRAW&&x!==y.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var M=y.createBuffer(),d=new h(y,S,M,0,x);return d.update(k),d}a.exports=T},2825:function(a){a.exports=o;function o(i,l,u){var s=new Float32Array(3);return s[0]=i,s[1]=l,s[2]=u,s}},2931:function(a,o,i){a.exports={EPSILON:i(2613),create:i(1091),clone:i(3126),angle:i(8192),fromValues:i(2825),copy:i(3990),set:i(1463),equals:i(9922),exactEquals:i(9265),add:i(5632),subtract:i(6843),sub:i(2229),multiply:i(5847),mul:i(4505),divide:i(6690),div:i(4008),min:i(8107),max:i(7417),floor:i(2681),ceil:i(9226),round:i(2447),scale:i(6621),scaleAndAdd:i(8489),distance:i(7056),dist:i(5455),squaredDistance:i(2953),sqrDist:i(6141),length:i(1387),len:i(868),squaredLength:i(3066),sqrLen:i(5486),negate:i(5093),inverse:i(811),normalize:i(3536),dot:i(244),cross:i(5911),lerp:i(6658),random:i(7636),transformMat4:i(5673),transformMat3:i(492),transformQuat:i(264),rotateX:i(6894),rotateY:i(109),rotateZ:i(8692),forEach:i(5137)}},2933:function(a){a.exports=o;function o(i,l){return i[0]=l[0],i[1]=l[1],i[2]=l[2],i[3]=l[3],i}},2953:function(a){a.exports=o;function o(i,l){var u=l[0]-i[0],s=l[1]-i[1],f=l[2]-i[2];return u*u+s*s+f*f}},2962:function(a,o,i){"use strict";var l=i(5250),u=i(8210),s=i(3012),f=i(7004),h=6;function p(x,M,d,_){return function(c){return _(x(d(c[0][0],c[1][1]),d(-c[0][1],c[1][0])))}}function b(x,M,d,_){return function(c){return _(x(M(x(d(c[1][1],c[2][2]),d(-c[1][2],c[2][1])),c[0][0]),x(M(x(d(c[1][0],c[2][2]),d(-c[1][2],c[2][0])),-c[0][1]),M(x(d(c[1][0],c[2][1]),d(-c[1][1],c[2][0])),c[0][2]))))}}function m(x,M,d,_){return function(c){return _(x(x(M(x(M(x(d(c[2][2],c[3][3]),d(-c[2][3],c[3][2])),c[1][1]),x(M(x(d(c[2][1],c[3][3]),d(-c[2][3],c[3][1])),-c[1][2]),M(x(d(c[2][1],c[3][2]),d(-c[2][2],c[3][1])),c[1][3]))),c[0][0]),M(x(M(x(d(c[2][2],c[3][3]),d(-c[2][3],c[3][2])),c[1][0]),x(M(x(d(c[2][0],c[3][3]),d(-c[2][3],c[3][0])),-c[1][2]),M(x(d(c[2][0],c[3][2]),d(-c[2][2],c[3][0])),c[1][3]))),-c[0][1])),x(M(x(M(x(d(c[2][1],c[3][3]),d(-c[2][3],c[3][1])),c[1][0]),x(M(x(d(c[2][0],c[3][3]),d(-c[2][3],c[3][0])),-c[1][1]),M(x(d(c[2][0],c[3][1]),d(-c[2][1],c[3][0])),c[1][3]))),c[0][2]),M(x(M(x(d(c[2][1],c[3][2]),d(-c[2][2],c[3][1])),c[1][0]),x(M(x(d(c[2][0],c[3][2]),d(-c[2][2],c[3][0])),-c[1][1]),M(x(d(c[2][0],c[3][1]),d(-c[2][1],c[3][0])),c[1][2]))),-c[0][3]))))}}function w(x,M,d,_){return function(c){return _(x(x(M(x(x(M(x(M(x(d(c[3][3],c[4][4]),d(-c[3][4],c[4][3])),c[2][2]),x(M(x(d(c[3][2],c[4][4]),d(-c[3][4],c[4][2])),-c[2][3]),M(x(d(c[3][2],c[4][3]),d(-c[3][3],c[4][2])),c[2][4]))),c[1][1]),M(x(M(x(d(c[3][3],c[4][4]),d(-c[3][4],c[4][3])),c[2][1]),x(M(x(d(c[3][1],c[4][4]),d(-c[3][4],c[4][1])),-c[2][3]),M(x(d(c[3][1],c[4][3]),d(-c[3][3],c[4][1])),c[2][4]))),-c[1][2])),x(M(x(M(x(d(c[3][2],c[4][4]),d(-c[3][4],c[4][2])),c[2][1]),x(M(x(d(c[3][1],c[4][4]),d(-c[3][4],c[4][1])),-c[2][2]),M(x(d(c[3][1],c[4][2]),d(-c[3][2],c[4][1])),c[2][4]))),c[1][3]),M(x(M(x(d(c[3][2],c[4][3]),d(-c[3][3],c[4][2])),c[2][1]),x(M(x(d(c[3][1],c[4][3]),d(-c[3][3],c[4][1])),-c[2][2]),M(x(d(c[3][1],c[4][2]),d(-c[3][2],c[4][1])),c[2][3]))),-c[1][4]))),c[0][0]),M(x(x(M(x(M(x(d(c[3][3],c[4][4]),d(-c[3][4],c[4][3])),c[2][2]),x(M(x(d(c[3][2],c[4][4]),d(-c[3][4],c[4][2])),-c[2][3]),M(x(d(c[3][2],c[4][3]),d(-c[3][3],c[4][2])),c[2][4]))),c[1][0]),M(x(M(x(d(c[3][3],c[4][4]),d(-c[3][4],c[4][3])),c[2][0]),x(M(x(d(c[3][0],c[4][4]),d(-c[3][4],c[4][0])),-c[2][3]),M(x(d(c[3][0],c[4][3]),d(-c[3][3],c[4][0])),c[2][4]))),-c[1][2])),x(M(x(M(x(d(c[3][2],c[4][4]),d(-c[3][4],c[4][2])),c[2][0]),x(M(x(d(c[3][0],c[4][4]),d(-c[3][4],c[4][0])),-c[2][2]),M(x(d(c[3][0],c[4][2]),d(-c[3][2],c[4][0])),c[2][4]))),c[1][3]),M(x(M(x(d(c[3][2],c[4][3]),d(-c[3][3],c[4][2])),c[2][0]),x(M(x(d(c[3][0],c[4][3]),d(-c[3][3],c[4][0])),-c[2][2]),M(x(d(c[3][0],c[4][2]),d(-c[3][2],c[4][0])),c[2][3]))),-c[1][4]))),-c[0][1])),x(M(x(x(M(x(M(x(d(c[3][3],c[4][4]),d(-c[3][4],c[4][3])),c[2][1]),x(M(x(d(c[3][1],c[4][4]),d(-c[3][4],c[4][1])),-c[2][3]),M(x(d(c[3][1],c[4][3]),d(-c[3][3],c[4][1])),c[2][4]))),c[1][0]),M(x(M(x(d(c[3][3],c[4][4]),d(-c[3][4],c[4][3])),c[2][0]),x(M(x(d(c[3][0],c[4][4]),d(-c[3][4],c[4][0])),-c[2][3]),M(x(d(c[3][0],c[4][3]),d(-c[3][3],c[4][0])),c[2][4]))),-c[1][1])),x(M(x(M(x(d(c[3][1],c[4][4]),d(-c[3][4],c[4][1])),c[2][0]),x(M(x(d(c[3][0],c[4][4]),d(-c[3][4],c[4][0])),-c[2][1]),M(x(d(c[3][0],c[4][1]),d(-c[3][1],c[4][0])),c[2][4]))),c[1][3]),M(x(M(x(d(c[3][1],c[4][3]),d(-c[3][3],c[4][1])),c[2][0]),x(M(x(d(c[3][0],c[4][3]),d(-c[3][3],c[4][0])),-c[2][1]),M(x(d(c[3][0],c[4][1]),d(-c[3][1],c[4][0])),c[2][3]))),-c[1][4]))),c[0][2]),x(M(x(x(M(x(M(x(d(c[3][2],c[4][4]),d(-c[3][4],c[4][2])),c[2][1]),x(M(x(d(c[3][1],c[4][4]),d(-c[3][4],c[4][1])),-c[2][2]),M(x(d(c[3][1],c[4][2]),d(-c[3][2],c[4][1])),c[2][4]))),c[1][0]),M(x(M(x(d(c[3][2],c[4][4]),d(-c[3][4],c[4][2])),c[2][0]),x(M(x(d(c[3][0],c[4][4]),d(-c[3][4],c[4][0])),-c[2][2]),M(x(d(c[3][0],c[4][2]),d(-c[3][2],c[4][0])),c[2][4]))),-c[1][1])),x(M(x(M(x(d(c[3][1],c[4][4]),d(-c[3][4],c[4][1])),c[2][0]),x(M(x(d(c[3][0],c[4][4]),d(-c[3][4],c[4][0])),-c[2][1]),M(x(d(c[3][0],c[4][1]),d(-c[3][1],c[4][0])),c[2][4]))),c[1][2]),M(x(M(x(d(c[3][1],c[4][2]),d(-c[3][2],c[4][1])),c[2][0]),x(M(x(d(c[3][0],c[4][2]),d(-c[3][2],c[4][0])),-c[2][1]),M(x(d(c[3][0],c[4][1]),d(-c[3][1],c[4][0])),c[2][2]))),-c[1][4]))),-c[0][3]),M(x(x(M(x(M(x(d(c[3][2],c[4][3]),d(-c[3][3],c[4][2])),c[2][1]),x(M(x(d(c[3][1],c[4][3]),d(-c[3][3],c[4][1])),-c[2][2]),M(x(d(c[3][1],c[4][2]),d(-c[3][2],c[4][1])),c[2][3]))),c[1][0]),M(x(M(x(d(c[3][2],c[4][3]),d(-c[3][3],c[4][2])),c[2][0]),x(M(x(d(c[3][0],c[4][3]),d(-c[3][3],c[4][0])),-c[2][2]),M(x(d(c[3][0],c[4][2]),d(-c[3][2],c[4][0])),c[2][3]))),-c[1][1])),x(M(x(M(x(d(c[3][1],c[4][3]),d(-c[3][3],c[4][1])),c[2][0]),x(M(x(d(c[3][0],c[4][3]),d(-c[3][3],c[4][0])),-c[2][1]),M(x(d(c[3][0],c[4][1]),d(-c[3][1],c[4][0])),c[2][3]))),c[1][2]),M(x(M(x(d(c[3][1],c[4][2]),d(-c[3][2],c[4][1])),c[2][0]),x(M(x(d(c[3][0],c[4][2]),d(-c[3][2],c[4][0])),-c[2][1]),M(x(d(c[3][0],c[4][1]),d(-c[3][1],c[4][0])),c[2][2]))),-c[1][3]))),c[0][4])))))}}function T(x){var M=x===2?p:x===3?b:x===4?m:x===5?w:void 0;return M(u,s,l,f)}var y=[function(){return[0]},function(M){return[M[0][0]]}];function k(x,M,d,_,g,c,A,v){return function(E){switch(E.length){case 0:return x(E);case 1:return M(E);case 2:return d(E);case 3:return _(E);case 4:return g(E);case 5:return c(E)}var R=A[E.length];return R||(R=A[E.length]=v(E.length)),R(E)}}function S(){for(;y.length0){D=_[N][A][0],R=N;break}E=D[R^1];for(var F=0;F<2;++F)for(var I=_[F][A],L=0;L0&&(D=P,E=O,R=F)}return v||D&&y(D,R),E}function S(c,A){var v=_[A][c][0],D=[c];y(v,A);for(var E=v[A^1],R=A;;){for(;E!==c;)D.push(E),E=k(D[D.length-2],E,!1);if(_[0][c].length+_[1][c].length===0)break;var N=D[D.length-1],F=c,I=D[1],L=k(N,F,!0);if(l(f[N],f[F],f[I],f[L])<0)break;D.push(c),E=k(N,F)}return D}function b(c,A){return A[1]===A[A.length-1]}for(var m=0;m0;){var x=_[0][m].length,g=S(m,M);b(d,g)?d.push.apply(d,g):(d.length>0&&T.push(d),d=g)}d.length>0&&T.push(d)}return T}},3090:function(a,o,i){"use strict";a.exports=u;var l=i(3250)[3];function u(s){var f=s.length;if(f<3){for(var k=new Array(f),h=0;h1&&l(s[_[y-2]],s[_[y-1]],T)<=0;)y-=1,_.pop();for(_.push(w),y=m.length;y>1&&l(s[m[y-2]],s[m[y-1]],T)>=0;)y-=1,m.pop();m.push(w)}for(var k=new Array(m.length+_.length-2),S=0,h=0,b=_.length;h0;--M)k[S++]=m[M];return k}},3105:function(a,o){"use strict";"use restrict";var i=32;o.INT_BITS=i,o.INT_MAX=2147483647,o.INT_MIN=-1<0)-(s<0)},o.abs=function(s){var f=s>>i-1;return(s^f)-f},o.min=function(s,f){return f^(s^f)&-(s65535)<<4,s>>>=f,h=(s>255)<<3,s>>>=h,f|=h,h=(s>15)<<2,s>>>=h,f|=h,h=(s>3)<<1,s>>>=h,f|=h,f|s>>1},o.log10=function(s){return s>=1e9?9:s>=1e8?8:s>=1e7?7:s>=1e6?6:s>=1e5?5:s>=1e4?4:s>=1e3?3:s>=100?2:s>=10?1:0},o.popCount=function(s){return s=s-(s>>>1&1431655765),s=(s&858993459)+(s>>>2&858993459),(s+(s>>>4)&252645135)*16843009>>>24};function l(s){var f=32;return s&=-s,s&&f--,s&65535&&(f-=16),s&16711935&&(f-=8),s&252645135&&(f-=4),s&858993459&&(f-=2),s&1431655765&&(f-=1),f}o.countTrailingZeros=l,o.nextPow2=function(s){return s+=s===0,--s,s|=s>>>1,s|=s>>>2,s|=s>>>4,s|=s>>>8,s|=s>>>16,s+1},o.prevPow2=function(s){return s|=s>>>1,s|=s>>>2,s|=s>>>4,s|=s>>>8,s|=s>>>16,s-(s>>>1)},o.parity=function(s){return s^=s>>>16,s^=s>>>8,s^=s>>>4,s&=15,27030>>>s&1};var u=new Array(256);(function(s){for(var f=0;f<256;++f){var h=f,p=f,_=7;for(h>>>=1;h;h>>>=1)p<<=1,p|=h&1,--_;s[f]=p<<_&255}})(u),o.reverse=function(s){return u[s&255]<<24|u[s>>>8&255]<<16|u[s>>>16&255]<<8|u[s>>>24&255]},o.interleave2=function(s,f){return s&=65535,s=(s|s<<8)&16711935,s=(s|s<<4)&252645135,s=(s|s<<2)&858993459,s=(s|s<<1)&1431655765,f&=65535,f=(f|f<<8)&16711935,f=(f|f<<4)&252645135,f=(f|f<<2)&858993459,f=(f|f<<1)&1431655765,s|f<<1},o.deinterleave2=function(s,f){return s=s>>>f&1431655765,s=(s|s>>>1)&858993459,s=(s|s>>>2)&252645135,s=(s|s>>>4)&16711935,s=(s|s>>>16)&65535,s<<16>>16},o.interleave3=function(s,f,h){return s&=1023,s=(s|s<<16)&4278190335,s=(s|s<<8)&251719695,s=(s|s<<4)&3272356035,s=(s|s<<2)&1227133513,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,s|=f<<1,h&=1023,h=(h|h<<16)&4278190335,h=(h|h<<8)&251719695,h=(h|h<<4)&3272356035,h=(h|h<<2)&1227133513,s|h<<2},o.deinterleave3=function(s,f){return s=s>>>f&1227133513,s=(s|s>>>2)&3272356035,s=(s|s>>>4)&251719695,s=(s|s>>>8)&4278190335,s=(s|s>>>16)&1023,s<<22>>22},o.nextCombination=function(s){var f=s|s-1;return f+1|(~f&-~f)-1>>>l(s)+1}},3126:function(a){a.exports=o;function o(i){var l=new Float32Array(3);return l[0]=i[0],l[1]=i[1],l[2]=i[2],l}},3134:function(a,o,i){"use strict";a.exports=u;var l=i(1682);function u(s,f){var h=s.length;if(typeof f!="number"){f=0;for(var p=0;p=0}function _(m,w,T,y){var k=l(w,T,y);if(k===0){var S=u(l(m,w,T)),b=u(l(m,w,y));if(S===b){if(S===0){var M=p(m,w,T),d=p(m,w,y);return M===d?0:M?1:-1}return 0}else{if(b===0)return S>0||p(m,w,y)?-1:1;if(S===0)return b>0||p(m,w,T)?1:-1}return u(b-S)}var x=l(m,w,T);if(x>0)return k>0&&l(m,w,y)>0?1:-1;if(x<0)return k>0||l(m,w,y)>0?1:-1;var g=l(m,w,y);return g>0||p(m,w,T)?1:-1}},3202:function(a){a.exports=function(i,l){l||(l=[0,""]),i=String(i);var u=parseFloat(i,10);return l[0]=u,l[1]=i.match(/[\d.\-\+]*\s*(.*)/)[1]||"",l}},3233:function(a){"use strict";var o="",i;a.exports=l;function l(u,s){if(typeof u!="string")throw new TypeError("expected a string");if(s===1)return u;if(s===2)return u+u;var f=u.length*s;if(i!==u||typeof i=="undefined")i=u,o="";else if(o.length>=f)return o.substr(0,f);for(;f>o.length&&s>1;)s&1&&(o+=u),s>>=1,u+=u;return o+=u,o=o.substr(0,f),o}},3236:function(a){a.exports=function(o){typeof o=="string"&&(o=[o]);for(var i=[].slice.call(arguments,1),l=[],u=0;u0){if(R<=0)return N;F=E+R}else if(E<0){if(R>=0)return N;F=-(E+R)}else return N;var I=_*F;return N>=I||N<=-I?N:S(A,v,D)},function(A,v,D,E){var R=A[0]-E[0],N=v[0]-E[0],F=D[0]-E[0],I=A[1]-E[1],L=v[1]-E[1],P=D[1]-E[1],O=A[2]-E[2],U=v[2]-E[2],X=D[2]-E[2],$=N*P,j=F*L,Y=F*I,q=R*P,K=R*L,ne=N*I,Q=O*($-j)+U*(Y-q)+X*(K-ne),oe=(Math.abs($)+Math.abs(j))*Math.abs(O)+(Math.abs(Y)+Math.abs(q))*Math.abs(U)+(Math.abs(K)+Math.abs(ne))*Math.abs(X),re=m*oe;return Q>re||-Q>re?Q:b(A,v,D,E)}];function d(c){var A=M[c.length];return A||(A=M[c.length]=k(c.length)),A.apply(void 0,c)}function x(c,A,v,D,E,R,N){return function(I,L,P,O,U){switch(arguments.length){case 0:case 1:return 0;case 2:return D(I,L);case 3:return E(I,L,P);case 4:return R(I,L,P,O);case 5:return N(I,L,P,O,U)}for(var X=new Array(arguments.length),$=0;$4)throw new u("","Invalid data type");switch(O.charAt(0)){case"b":case"i":p["uniform"+U+"iv"](w[R],N);break;case"v":p["uniform"+U+"fv"](w[R],N);break;default:throw new u("","Unrecognized data type for vector "+name+": "+O)}}else if(O.indexOf("mat")===0&&O.length===4){if(U=O.charCodeAt(O.length-1)-48,U<2||U>4)throw new u("","Invalid uniform dimension type for matrix "+name+": "+O);p["uniformMatrix"+U+"fv"](w[R],!1,N);break}else throw new u("","Unknown uniform data type for "+name+": "+O)}}}}}function k(x,g){if(typeof g!="object")return[[x,g]];var c=[];for(var A in g){var v=g[A],D=x;parseInt(A)+""===A?D+="["+A+"]":D+="."+A,typeof v=="object"?c.push.apply(c,k(D,v)):c.push([D,v])}return c}function S(x){switch(x){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var g=x.indexOf("vec");if(0<=g&&g<=1&&x.length===4+g){var c=x.charCodeAt(x.length-1)-48;if(c<2||c>4)throw new u("","Invalid data type");return x.charAt(0)==="b"?f(c,!1):f(c,0)}else if(x.indexOf("mat")===0&&x.length===4){var c=x.charCodeAt(x.length-1)-48;if(c<2||c>4)throw new u("","Invalid uniform dimension type for matrix "+name+": "+x);return f(c*c,0)}else throw new u("","Unknown uniform data type for "+name+": "+x)}}function b(x,g,c){if(typeof c=="object"){var A=M(c);Object.defineProperty(x,g,{get:s(A),set:y(c),enumerable:!0,configurable:!1})}else w[c]?Object.defineProperty(x,g,{get:T(c),set:y(c),enumerable:!0,configurable:!1}):x[g]=S(m[c].type)}function M(x){var g;if(Array.isArray(x)){g=new Array(x.length);for(var c=0;c=0!=g>=0&&w.push(S[0]+.5+.5*(x+g)/(x-g))}m+=d,++S[0]}}}function i(){return o()}var l=i;function u(h){var p={};return function(m,w,T){var y=m.dtype,k=m.order,S=[y,k.join()].join(),b=p[S];return b||(p[S]=b=h([y,k])),b(m.shape.slice(0),m.data,m.stride,m.offset|0,w,T)}}function s(h){return u(l.bind(void 0,h))}function f(h){return s({funcName:h.funcName})}a.exports=f({funcName:"zeroCrossings"})},3352:function(a,o,i){"use strict";var l=i(2478),u=0,s=1,f=2;a.exports=A;function h(v,D,E,R,N){this.mid=v,this.left=D,this.right=E,this.leftPoints=R,this.rightPoints=N,this.count=(D?D.count:0)+(E?E.count:0)+R.length}var p=h.prototype;function _(v,D){v.mid=D.mid,v.left=D.left,v.right=D.right,v.leftPoints=D.leftPoints,v.rightPoints=D.rightPoints,v.count=D.count}function m(v,D){var E=x(D);v.mid=E.mid,v.left=E.left,v.right=E.right,v.leftPoints=E.leftPoints,v.rightPoints=E.rightPoints,v.count=E.count}function w(v,D){var E=v.intervals([]);E.push(D),m(v,E)}function T(v,D){var E=v.intervals([]),R=E.indexOf(D);return R<0?u:(E.splice(R,1),m(v,E),s)}p.intervals=function(v){return v.push.apply(v,this.leftPoints),this.left&&this.left.intervals(v),this.right&&this.right.intervals(v),v},p.insert=function(v){var D=this.count-this.leftPoints.length;if(this.count+=1,v[1]3*(D+1)?w(this,v):this.left.insert(v):this.left=x([v]);else if(v[0]>this.mid)this.right?4*(this.right.count+1)>3*(D+1)?w(this,v):this.right.insert(v):this.right=x([v]);else{var E=l.ge(this.leftPoints,v,M),R=l.ge(this.rightPoints,v,d);this.leftPoints.splice(E,0,v),this.rightPoints.splice(R,0,v)}},p.remove=function(v){var D=this.count-this.leftPoints;if(v[1]3*(D-1))return T(this,v);var R=this.left.remove(v);return R===f?(this.left=null,this.count-=1,s):(R===s&&(this.count-=1),R)}else if(v[0]>this.mid){if(!this.right)return u;var N=this.left?this.left.count:0;if(4*N>3*(D-1))return T(this,v);var R=this.right.remove(v);return R===f?(this.right=null,this.count-=1,s):(R===s&&(this.count-=1),R)}else{if(this.count===1)return this.leftPoints[0]===v?f:u;if(this.leftPoints.length===1&&this.leftPoints[0]===v){if(this.left&&this.right){for(var F=this,I=this.left;I.right;)F=I,I=I.right;if(F===this)I.right=this.right;else{var L=this.left,R=this.right;F.count-=I.count,F.right=I.left,I.left=L,I.right=R}_(this,I),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?_(this,this.left):_(this,this.right);return s}for(var L=l.ge(this.leftPoints,v,M);L=0&&v[R][1]>=D;--R){var N=E(v[R]);if(N)return N}}function S(v,D){for(var E=0;Ethis.mid){if(this.right){var E=this.right.queryPoint(v,D);if(E)return E}return k(this.rightPoints,v,D)}else return S(this.leftPoints,D)},p.queryInterval=function(v,D,E){if(vthis.mid&&this.right){var R=this.right.queryInterval(v,D,E);if(R)return R}return Dthis.mid?k(this.rightPoints,v,E):S(this.leftPoints,E)};function b(v,D){return v-D}function M(v,D){var E=v[0]-D[0];return E||v[1]-D[1]}function d(v,D){var E=v[1]-D[1];return E||v[0]-D[0]}function x(v){if(v.length===0)return null;for(var D=[],E=0;E>1],N=[],F=[],I=[],E=0;E=0),d.type){case"b":k=parseInt(k,10).toString(2);break;case"c":k=String.fromCharCode(parseInt(k,10));break;case"d":case"i":k=parseInt(k,10);break;case"j":k=JSON.stringify(k,null,d.width?parseInt(d.width):0);break;case"e":k=d.precision?parseFloat(k).toExponential(d.precision):parseFloat(k).toExponential();break;case"f":k=d.precision?parseFloat(k).toFixed(d.precision):parseFloat(k);break;case"g":k=d.precision?String(Number(k.toPrecision(d.precision))):parseFloat(k);break;case"o":k=(parseInt(k,10)>>>0).toString(8);break;case"s":k=String(k),k=d.precision?k.substring(0,d.precision):k;break;case"t":k=String(!!k),k=d.precision?k.substring(0,d.precision):k;break;case"T":k=Object.prototype.toString.call(k).slice(8,-1).toLowerCase(),k=d.precision?k.substring(0,d.precision):k;break;case"u":k=parseInt(k,10)>>>0;break;case"v":k=k.valueOf(),k=d.precision?k.substring(0,d.precision):k;break;case"x":k=(parseInt(k,10)>>>0).toString(16);break;case"X":k=(parseInt(k,10)>>>0).toString(16).toUpperCase();break}u.json.test(d.type)?S+=k:(u.number.test(d.type)&&(!A||d.sign)?(v=A?"+":"-",k=k.toString().replace(u.sign,"")):v="",g=d.pad_char?d.pad_char==="0"?"0":d.pad_char.charAt(1):" ",c=d.width-(v+k).length,x=d.width&&c>0?g.repeat(c):"",S+=d.align?v+k+x:g==="0"?v+x+k:x+v+k)}return S}var p=Object.create(null);function _(m){if(p[m])return p[m];for(var w=m,T,y=[],k=0;w;){if((T=u.text.exec(w))!==null)y.push(T[0]);else if((T=u.modulo.exec(w))!==null)y.push("%");else if((T=u.placeholder.exec(w))!==null){if(T[2]){k|=1;var S=[],b=T[2],M=[];if((M=u.key.exec(b))!==null)for(S.push(M[1]);(b=b.substring(M[0].length))!=="";)if((M=u.key_access.exec(b))!==null)S.push(M[1]);else if((M=u.index_access.exec(b))!==null)S.push(M[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");T[2]=S}else k|=2;if(k===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");y.push({placeholder:T[0],param_no:T[1],keys:T[2],sign:T[3],pad_char:T[4],align:T[5],width:T[6],precision:T[7],type:T[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");w=w.substring(T[0].length)}return p[m]=y}o.sprintf=s,o.vsprintf=f,typeof window!="undefined"&&(window.sprintf=s,window.vsprintf=f,l=function(){return{sprintf:s,vsprintf:f}}.call(o,i,o,a),l!==void 0&&(a.exports=l))})()},3390:function(a){a.exports=o;function o(i,l,u,s){var f=new Float32Array(4);return f[0]=i,f[1]=l,f[2]=u,f[3]=s,f}},3436:function(a,o,i){"use strict";var l=i(3236),u=i(9405),s=l([`precision highp float; +`,A)}}return{long:y.trim(),short:k.trim()}}},3012:function(a,o,i){"use strict";var l=i(5250),u=i(9362);a.exports=s;function s(f,h){var p=f.length;if(p===1){var b=l(f[0],h);return b[0]?b:[b[1]]}var m=new Array(2*p),w=[.1,.1],T=[.1,.1],y=0;l(f[0],h,w),w[0]&&(m[y++]=w[0]);for(var k=1;k0){D=b[N][A][0],R=N;break}E=D[R^1];for(var F=0;F<2;++F)for(var I=b[F][A],L=0;L0&&(D=P,E=O,R=F)}return v||D&&y(D,R),E}function S(c,A){var v=b[A][c][0],D=[c];y(v,A);for(var E=v[A^1],R=A;;){for(;E!==c;)D.push(E),E=k(D[D.length-2],E,!1);if(b[0][c].length+b[1][c].length===0)break;var N=D[D.length-1],F=c,I=D[1],L=k(N,F,!0);if(l(f[N],f[F],f[I],f[L])<0)break;D.push(c),E=k(N,F)}return D}function x(c,A){return A[1]===A[A.length-1]}for(var m=0;m0;){var _=b[0][m].length,g=S(m,M);x(d,g)?d.push.apply(d,g):(d.length>0&&T.push(d),d=g)}d.length>0&&T.push(d)}return T}},3090:function(a,o,i){"use strict";a.exports=u;var l=i(3250)[3];function u(s){var f=s.length;if(f<3){for(var k=new Array(f),h=0;h1&&l(s[b[y-2]],s[b[y-1]],T)<=0;)y-=1,b.pop();for(b.push(w),y=m.length;y>1&&l(s[m[y-2]],s[m[y-1]],T)>=0;)y-=1,m.pop();m.push(w)}for(var k=new Array(m.length+b.length-2),S=0,h=0,x=b.length;h0;--M)k[S++]=m[M];return k}},3105:function(a,o){"use strict";"use restrict";var i=32;o.INT_BITS=i,o.INT_MAX=2147483647,o.INT_MIN=-1<0)-(s<0)},o.abs=function(s){var f=s>>i-1;return(s^f)-f},o.min=function(s,f){return f^(s^f)&-(s65535)<<4,s>>>=f,h=(s>255)<<3,s>>>=h,f|=h,h=(s>15)<<2,s>>>=h,f|=h,h=(s>3)<<1,s>>>=h,f|=h,f|s>>1},o.log10=function(s){return s>=1e9?9:s>=1e8?8:s>=1e7?7:s>=1e6?6:s>=1e5?5:s>=1e4?4:s>=1e3?3:s>=100?2:s>=10?1:0},o.popCount=function(s){return s=s-(s>>>1&1431655765),s=(s&858993459)+(s>>>2&858993459),(s+(s>>>4)&252645135)*16843009>>>24};function l(s){var f=32;return s&=-s,s&&f--,s&65535&&(f-=16),s&16711935&&(f-=8),s&252645135&&(f-=4),s&858993459&&(f-=2),s&1431655765&&(f-=1),f}o.countTrailingZeros=l,o.nextPow2=function(s){return s+=s===0,--s,s|=s>>>1,s|=s>>>2,s|=s>>>4,s|=s>>>8,s|=s>>>16,s+1},o.prevPow2=function(s){return s|=s>>>1,s|=s>>>2,s|=s>>>4,s|=s>>>8,s|=s>>>16,s-(s>>>1)},o.parity=function(s){return s^=s>>>16,s^=s>>>8,s^=s>>>4,s&=15,27030>>>s&1};var u=new Array(256);(function(s){for(var f=0;f<256;++f){var h=f,p=f,b=7;for(h>>>=1;h;h>>>=1)p<<=1,p|=h&1,--b;s[f]=p<>>8&255]<<16|u[s>>>16&255]<<8|u[s>>>24&255]},o.interleave2=function(s,f){return s&=65535,s=(s|s<<8)&16711935,s=(s|s<<4)&252645135,s=(s|s<<2)&858993459,s=(s|s<<1)&1431655765,f&=65535,f=(f|f<<8)&16711935,f=(f|f<<4)&252645135,f=(f|f<<2)&858993459,f=(f|f<<1)&1431655765,s|f<<1},o.deinterleave2=function(s,f){return s=s>>>f&1431655765,s=(s|s>>>1)&858993459,s=(s|s>>>2)&252645135,s=(s|s>>>4)&16711935,s=(s|s>>>16)&65535,s<<16>>16},o.interleave3=function(s,f,h){return s&=1023,s=(s|s<<16)&4278190335,s=(s|s<<8)&251719695,s=(s|s<<4)&3272356035,s=(s|s<<2)&1227133513,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,s|=f<<1,h&=1023,h=(h|h<<16)&4278190335,h=(h|h<<8)&251719695,h=(h|h<<4)&3272356035,h=(h|h<<2)&1227133513,s|h<<2},o.deinterleave3=function(s,f){return s=s>>>f&1227133513,s=(s|s>>>2)&3272356035,s=(s|s>>>4)&251719695,s=(s|s>>>8)&4278190335,s=(s|s>>>16)&1023,s<<22>>22},o.nextCombination=function(s){var f=s|s-1;return f+1|(~f&-~f)-1>>>l(s)+1}},3126:function(a){a.exports=o;function o(i){var l=new Float32Array(3);return l[0]=i[0],l[1]=i[1],l[2]=i[2],l}},3134:function(a,o,i){"use strict";a.exports=u;var l=i(1682);function u(s,f){var h=s.length;if(typeof f!="number"){f=0;for(var p=0;p=0}function b(m,w,T,y){var k=l(w,T,y);if(k===0){var S=u(l(m,w,T)),x=u(l(m,w,y));if(S===x){if(S===0){var M=p(m,w,T),d=p(m,w,y);return M===d?0:M?1:-1}return 0}else{if(x===0)return S>0||p(m,w,y)?-1:1;if(S===0)return x>0||p(m,w,T)?1:-1}return u(x-S)}var _=l(m,w,T);if(_>0)return k>0&&l(m,w,y)>0?1:-1;if(_<0)return k>0||l(m,w,y)>0?1:-1;var g=l(m,w,y);return g>0||p(m,w,T)?1:-1}},3202:function(a){a.exports=function(i,l){l||(l=[0,""]),i=String(i);var u=parseFloat(i,10);return l[0]=u,l[1]=i.match(/[\d.\-\+]*\s*(.*)/)[1]||"",l}},3233:function(a){"use strict";var o="",i;a.exports=l;function l(u,s){if(typeof u!="string")throw new TypeError("expected a string");if(s===1)return u;if(s===2)return u+u;var f=u.length*s;if(i!==u||typeof i=="undefined")i=u,o="";else if(o.length>=f)return o.substr(0,f);for(;f>o.length&&s>1;)s&1&&(o+=u),s>>=1,u+=u;return o+=u,o=o.substr(0,f),o}},3236:function(a){a.exports=function(o){typeof o=="string"&&(o=[o]);for(var i=[].slice.call(arguments,1),l=[],u=0;u0){if(R<=0)return N;F=E+R}else if(E<0){if(R>=0)return N;F=-(E+R)}else return N;var I=b*F;return N>=I||N<=-I?N:S(A,v,D)},function(A,v,D,E){var R=A[0]-E[0],N=v[0]-E[0],F=D[0]-E[0],I=A[1]-E[1],L=v[1]-E[1],P=D[1]-E[1],O=A[2]-E[2],U=v[2]-E[2],X=D[2]-E[2],$=N*P,j=F*L,Y=F*I,q=R*P,K=R*L,ne=N*I,Q=O*($-j)+U*(Y-q)+X*(K-ne),oe=(Math.abs($)+Math.abs(j))*Math.abs(O)+(Math.abs(Y)+Math.abs(q))*Math.abs(U)+(Math.abs(K)+Math.abs(ne))*Math.abs(X),re=m*oe;return Q>re||-Q>re?Q:x(A,v,D,E)}];function d(c){var A=M[c.length];return A||(A=M[c.length]=k(c.length)),A.apply(void 0,c)}function _(c,A,v,D,E,R,N){return function(I,L,P,O,U){switch(arguments.length){case 0:case 1:return 0;case 2:return D(I,L);case 3:return E(I,L,P);case 4:return R(I,L,P,O);case 5:return N(I,L,P,O,U)}for(var X=new Array(arguments.length),$=0;$4)throw new u("","Invalid data type");switch(O.charAt(0)){case"b":case"i":p["uniform"+U+"iv"](w[R],N);break;case"v":p["uniform"+U+"fv"](w[R],N);break;default:throw new u("","Unrecognized data type for vector "+name+": "+O)}}else if(O.indexOf("mat")===0&&O.length===4){if(U=O.charCodeAt(O.length-1)-48,U<2||U>4)throw new u("","Invalid uniform dimension type for matrix "+name+": "+O);p["uniformMatrix"+U+"fv"](w[R],!1,N);break}else throw new u("","Unknown uniform data type for "+name+": "+O)}}}}}function k(_,g){if(typeof g!="object")return[[_,g]];var c=[];for(var A in g){var v=g[A],D=_;parseInt(A)+""===A?D+="["+A+"]":D+="."+A,typeof v=="object"?c.push.apply(c,k(D,v)):c.push([D,v])}return c}function S(_){switch(_){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var g=_.indexOf("vec");if(0<=g&&g<=1&&_.length===4+g){var c=_.charCodeAt(_.length-1)-48;if(c<2||c>4)throw new u("","Invalid data type");return _.charAt(0)==="b"?f(c,!1):f(c,0)}else if(_.indexOf("mat")===0&&_.length===4){var c=_.charCodeAt(_.length-1)-48;if(c<2||c>4)throw new u("","Invalid uniform dimension type for matrix "+name+": "+_);return f(c*c,0)}else throw new u("","Unknown uniform data type for "+name+": "+_)}}function x(_,g,c){if(typeof c=="object"){var A=M(c);Object.defineProperty(_,g,{get:s(A),set:y(c),enumerable:!0,configurable:!1})}else w[c]?Object.defineProperty(_,g,{get:T(c),set:y(c),enumerable:!0,configurable:!1}):_[g]=S(m[c].type)}function M(_){var g;if(Array.isArray(_)){g=new Array(_.length);for(var c=0;c<_.length;++c)x(g,c,_[c])}else{g={};for(var A in _)x(g,A,_[A])}return g}var d=l(m,!0);return{get:s(M(d)),set:y(d),enumerable:!0,configurable:!0}}},3349:function(a){"use strict";function o(){return function(h,p,b,m,w,T){var y=h[0],k=b[0],S=[0],x=k;m|=0;var M=0,d=k;for(M=0;M=0!=g>=0&&w.push(S[0]+.5+.5*(_+g)/(_-g))}m+=d,++S[0]}}}function i(){return o()}var l=i;function u(h){var p={};return function(m,w,T){var y=m.dtype,k=m.order,S=[y,k.join()].join(),x=p[S];return x||(p[S]=x=h([y,k])),x(m.shape.slice(0),m.data,m.stride,m.offset|0,w,T)}}function s(h){return u(l.bind(void 0,h))}function f(h){return s({funcName:h.funcName})}a.exports=f({funcName:"zeroCrossings"})},3352:function(a,o,i){"use strict";var l=i(2478),u=0,s=1,f=2;a.exports=A;function h(v,D,E,R,N){this.mid=v,this.left=D,this.right=E,this.leftPoints=R,this.rightPoints=N,this.count=(D?D.count:0)+(E?E.count:0)+R.length}var p=h.prototype;function b(v,D){v.mid=D.mid,v.left=D.left,v.right=D.right,v.leftPoints=D.leftPoints,v.rightPoints=D.rightPoints,v.count=D.count}function m(v,D){var E=_(D);v.mid=E.mid,v.left=E.left,v.right=E.right,v.leftPoints=E.leftPoints,v.rightPoints=E.rightPoints,v.count=E.count}function w(v,D){var E=v.intervals([]);E.push(D),m(v,E)}function T(v,D){var E=v.intervals([]),R=E.indexOf(D);return R<0?u:(E.splice(R,1),m(v,E),s)}p.intervals=function(v){return v.push.apply(v,this.leftPoints),this.left&&this.left.intervals(v),this.right&&this.right.intervals(v),v},p.insert=function(v){var D=this.count-this.leftPoints.length;if(this.count+=1,v[1]3*(D+1)?w(this,v):this.left.insert(v):this.left=_([v]);else if(v[0]>this.mid)this.right?4*(this.right.count+1)>3*(D+1)?w(this,v):this.right.insert(v):this.right=_([v]);else{var E=l.ge(this.leftPoints,v,M),R=l.ge(this.rightPoints,v,d);this.leftPoints.splice(E,0,v),this.rightPoints.splice(R,0,v)}},p.remove=function(v){var D=this.count-this.leftPoints;if(v[1]3*(D-1))return T(this,v);var R=this.left.remove(v);return R===f?(this.left=null,this.count-=1,s):(R===s&&(this.count-=1),R)}else if(v[0]>this.mid){if(!this.right)return u;var N=this.left?this.left.count:0;if(4*N>3*(D-1))return T(this,v);var R=this.right.remove(v);return R===f?(this.right=null,this.count-=1,s):(R===s&&(this.count-=1),R)}else{if(this.count===1)return this.leftPoints[0]===v?f:u;if(this.leftPoints.length===1&&this.leftPoints[0]===v){if(this.left&&this.right){for(var F=this,I=this.left;I.right;)F=I,I=I.right;if(F===this)I.right=this.right;else{var L=this.left,R=this.right;F.count-=I.count,F.right=I.left,I.left=L,I.right=R}b(this,I),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?b(this,this.left):b(this,this.right);return s}for(var L=l.ge(this.leftPoints,v,M);L=0&&v[R][1]>=D;--R){var N=E(v[R]);if(N)return N}}function S(v,D){for(var E=0;Ethis.mid){if(this.right){var E=this.right.queryPoint(v,D);if(E)return E}return k(this.rightPoints,v,D)}else return S(this.leftPoints,D)},p.queryInterval=function(v,D,E){if(vthis.mid&&this.right){var R=this.right.queryInterval(v,D,E);if(R)return R}return Dthis.mid?k(this.rightPoints,v,E):S(this.leftPoints,E)};function x(v,D){return v-D}function M(v,D){var E=v[0]-D[0];return E||v[1]-D[1]}function d(v,D){var E=v[1]-D[1];return E||v[0]-D[0]}function _(v){if(v.length===0)return null;for(var D=[],E=0;E>1],N=[],F=[],I=[],E=0;E=0),d.type){case"b":k=parseInt(k,10).toString(2);break;case"c":k=String.fromCharCode(parseInt(k,10));break;case"d":case"i":k=parseInt(k,10);break;case"j":k=JSON.stringify(k,null,d.width?parseInt(d.width):0);break;case"e":k=d.precision?parseFloat(k).toExponential(d.precision):parseFloat(k).toExponential();break;case"f":k=d.precision?parseFloat(k).toFixed(d.precision):parseFloat(k);break;case"g":k=d.precision?String(Number(k.toPrecision(d.precision))):parseFloat(k);break;case"o":k=(parseInt(k,10)>>>0).toString(8);break;case"s":k=String(k),k=d.precision?k.substring(0,d.precision):k;break;case"t":k=String(!!k),k=d.precision?k.substring(0,d.precision):k;break;case"T":k=Object.prototype.toString.call(k).slice(8,-1).toLowerCase(),k=d.precision?k.substring(0,d.precision):k;break;case"u":k=parseInt(k,10)>>>0;break;case"v":k=k.valueOf(),k=d.precision?k.substring(0,d.precision):k;break;case"x":k=(parseInt(k,10)>>>0).toString(16);break;case"X":k=(parseInt(k,10)>>>0).toString(16).toUpperCase();break}u.json.test(d.type)?S+=k:(u.number.test(d.type)&&(!A||d.sign)?(v=A?"+":"-",k=k.toString().replace(u.sign,"")):v="",g=d.pad_char?d.pad_char==="0"?"0":d.pad_char.charAt(1):" ",c=d.width-(v+k).length,_=d.width&&c>0?g.repeat(c):"",S+=d.align?v+k+_:g==="0"?v+_+k:_+v+k)}return S}var p=Object.create(null);function b(m){if(p[m])return p[m];for(var w=m,T,y=[],k=0;w;){if((T=u.text.exec(w))!==null)y.push(T[0]);else if((T=u.modulo.exec(w))!==null)y.push("%");else if((T=u.placeholder.exec(w))!==null){if(T[2]){k|=1;var S=[],x=T[2],M=[];if((M=u.key.exec(x))!==null)for(S.push(M[1]);(x=x.substring(M[0].length))!=="";)if((M=u.key_access.exec(x))!==null)S.push(M[1]);else if((M=u.index_access.exec(x))!==null)S.push(M[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");T[2]=S}else k|=2;if(k===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");y.push({placeholder:T[0],param_no:T[1],keys:T[2],sign:T[3],pad_char:T[4],align:T[5],width:T[6],precision:T[7],type:T[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");w=w.substring(T[0].length)}return p[m]=y}o.sprintf=s,o.vsprintf=f,typeof window!="undefined"&&(window.sprintf=s,window.vsprintf=f,l=function(){return{sprintf:s,vsprintf:f}}.call(o,i,o,a),l!==void 0&&(a.exports=l))})()},3390:function(a){a.exports=o;function o(i,l,u,s){var f=new Float32Array(4);return f[0]=i,f[1]=l,f[2]=u,f[3]=s,f}},3436:function(a,o,i){"use strict";var l=i(3236),u=i(9405),s=l([`precision highp float; #define GLSLIFY 1 attribute vec3 position, offset; @@ -1492,11 +1492,11 @@ void main() { ) discard; gl_FragColor = opacity * fragColor; -}`]);a.exports=function(h){return u(h,s,f,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},3502:function(a,o,i){a.exports=s;var l=i(5995),u=i(9127);function s(f,h){return u(l(f,h))}},3508:function(a,o,i){var l=i(6852);l=l.slice().filter(function(u){return!/^(gl\_|texture)/.test(u)}),a.exports=l.concat(["gl_VertexID","gl_InstanceID","gl_Position","gl_PointSize","gl_FragCoord","gl_FrontFacing","gl_FragDepth","gl_PointCoord","gl_MaxVertexAttribs","gl_MaxVertexUniformVectors","gl_MaxVertexOutputVectors","gl_MaxFragmentInputVectors","gl_MaxVertexTextureImageUnits","gl_MaxCombinedTextureImageUnits","gl_MaxTextureImageUnits","gl_MaxFragmentUniformVectors","gl_MaxDrawBuffers","gl_MinProgramTexelOffset","gl_MaxProgramTexelOffset","gl_DepthRangeParameters","gl_DepthRange","trunc","round","roundEven","isnan","isinf","floatBitsToInt","floatBitsToUint","intBitsToFloat","uintBitsToFloat","packSnorm2x16","unpackSnorm2x16","packUnorm2x16","unpackUnorm2x16","packHalf2x16","unpackHalf2x16","outerProduct","transpose","determinant","inverse","texture","textureSize","textureProj","textureLod","textureOffset","texelFetch","texelFetchOffset","textureProjOffset","textureLodOffset","textureProjLod","textureProjLodOffset","textureGrad","textureGradOffset","textureProjGrad","textureProjGradOffset"])},3536:function(a){a.exports=o;function o(i,l){var u=l[0],s=l[1],f=l[2],h=u*u+s*s+f*f;return h>0&&(h=1/Math.sqrt(h),i[0]=l[0]*h,i[1]=l[1]*h,i[2]=l[2]*h),i}},3545:function(a,o,i){"use strict";a.exports=h;var l=i(8105),u=l("lom&&T[x+_]>M;--d,x-=k){for(var g=x,c=x+k,A=0;A>>1,M=2*p,d=b,x=T[M*b+_];k=D?(d=v,x=D):A>=R?(d=c,x=A):(d=E,x=R):D>=R?(d=v,x=D):R>=A?(d=c,x=A):(d=E,x=R);for(var I=M*(S-1),L=M*d,N=0;Nthis.buffer.length){u.free(this.buffer);for(var S=this.buffer=u.mallocUint8(f(k*y*4)),b=0;bd|0},vertex:function(S,b,M,d,x,g,c,A,v,D,E,R,N){var F=(c<<0)+(A<<1)+(v<<2)+(D<<3)|0;if(!(F===0||F===15))switch(F){case 0:E.push([S-.5,b-.5]);break;case 1:E.push([S-.25-.25*(d+M-2*N)/(M-d),b-.25-.25*(x+M-2*N)/(M-x)]);break;case 2:E.push([S-.75-.25*(-d-M+2*N)/(d-M),b-.25-.25*(g+d-2*N)/(d-g)]);break;case 3:E.push([S-.5,b-.5-.5*(x+M+g+d-4*N)/(M-x+d-g)]);break;case 4:E.push([S-.25-.25*(g+x-2*N)/(x-g),b-.75-.25*(-x-M+2*N)/(x-M)]);break;case 5:E.push([S-.5-.5*(d+M+g+x-4*N)/(M-d+x-g),b-.5]);break;case 6:E.push([S-.5-.25*(-d-M+g+x)/(d-M+x-g),b-.5-.25*(-x-M+g+d)/(x-M+d-g)]);break;case 7:E.push([S-.75-.25*(g+x-2*N)/(x-g),b-.75-.25*(g+d-2*N)/(d-g)]);break;case 8:E.push([S-.75-.25*(-g-x+2*N)/(g-x),b-.75-.25*(-g-d+2*N)/(g-d)]);break;case 9:E.push([S-.5-.25*(d+M+-g-x)/(M-d+g-x),b-.5-.25*(x+M+-g-d)/(M-x+g-d)]);break;case 10:E.push([S-.5-.5*(-d-M+-g-x+4*N)/(d-M+g-x),b-.5]);break;case 11:E.push([S-.25-.25*(-g-x+2*N)/(g-x),b-.75-.25*(x+M-2*N)/(M-x)]);break;case 12:E.push([S-.5,b-.5-.5*(-x-M+-g-d+4*N)/(x-M+g-d)]);break;case 13:E.push([S-.75-.25*(d+M-2*N)/(M-d),b-.25-.25*(-g-d+2*N)/(g-d)]);break;case 14:E.push([S-.25-.25*(-d-M+2*N)/(d-M),b-.25-.25*(-x-M+2*N)/(x-M)]);break;case 15:E.push([S-.5,b-.5]);break}},cell:function(S,b,M,d,x,g,c,A,v){x?A.push([S,b]):A.push([b,S])}});return function(k,S){var b=[],M=[];return y(k,b,M,S),{positions:b,cells:M}}}};function f(m,w){var T=m.length+"d",y=s[T];if(y)return y(l,m,w)}function h(m,w){for(var T=u(m,w),y=T.length,k=new Array(y),S=new Array(y),b=0;b>1,T=-7,y=u?f-1:0,k=u?-1:1,S=i[l+y];for(y+=k,h=S&(1<<-T)-1,S>>=-T,T+=_;T>0;h=h*256+i[l+y],y+=k,T-=8);for(p=h&(1<<-T)-1,h>>=-T,T+=s;T>0;p=p*256+i[l+y],y+=k,T-=8);if(h===0)h=1-w;else{if(h===m)return p?NaN:(S?-1:1)*(1/0);p=p+Math.pow(2,s),h=h-w}return(S?-1:1)*p*Math.pow(2,h-s)},o.write=function(i,l,u,s,f,h){var p,_,m,w=h*8-f-1,T=(1<>1,k=f===23?Math.pow(2,-24)-Math.pow(2,-77):0,S=s?0:h-1,b=s?1:-1,M=l<0||l===0&&1/l<0?1:0;for(l=Math.abs(l),isNaN(l)||l===1/0?(_=isNaN(l)?1:0,p=T):(p=Math.floor(Math.log(l)/Math.LN2),l*(m=Math.pow(2,-p))<1&&(p--,m*=2),p+y>=1?l+=k/m:l+=k*Math.pow(2,1-y),l*m>=2&&(p++,m/=2),p+y>=T?(_=0,p=T):p+y>=1?(_=(l*m-1)*Math.pow(2,f),p=p+y):(_=l*Math.pow(2,y-1)*Math.pow(2,f),p=0));f>=8;i[u+S]=_&255,S+=b,_/=256,f-=8);for(p=p<0;i[u+S]=p&255,S+=b,p/=256,w-=8);i[u+S-b]|=M*128}},3788:function(a,o,i){"use strict";var l=i(8507),u=i(2419);a.exports=s;function s(f,h){return l(f,h)||u(f)-u(h)}},3837:function(a,o,i){"use strict";a.exports=E;var l=i(4935),u=i(501),s=i(5304),f=i(6429),h=i(6444),p=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),_=ArrayBuffer,m=DataView;function w(R){return _.isView(R)&&!(R instanceof m)}function T(R){return Array.isArray(R)||w(R)}function y(R,N){return R[0]=N[0],R[1]=N[1],R[2]=N[2],R}function k(R){this.gl=R,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=s(R)}var S=k.prototype;S.update=function(R){R=R||{};function N(Q,oe,re){if(re in R){var H=R[re],ee=this[re],V;(Q?T(H)&&T(H[0]):T(H))?this[re]=V=[oe(H[0]),oe(H[1]),oe(H[2])]:this[re]=V=[oe(H),oe(H),oe(H)];for(var te=0;te<3;++te)if(V[te]!==ee[te])return!0}return!1}var F=N.bind(this,!1,Number),I=N.bind(this,!1,Boolean),L=N.bind(this,!1,String),P=N.bind(this,!0,function(Q){if(T(Q)){if(Q.length===3)return[+Q[0],+Q[1],+Q[2],1];if(Q.length===4)return[+Q[0],+Q[1],+Q[2],+Q[3]]}return[0,0,0,1]}),O,U=!1,X=!1;if("bounds"in R)for(var $=R.bounds,j=0;j<2;++j)for(var Y=0;Y<3;++Y)$[j][Y]!==this.bounds[j][Y]&&(X=!0),this.bounds[j][Y]=$[j][Y];if("ticks"in R){O=R.ticks,U=!0,this.autoTicks=!1;for(var j=0;j<3;++j)this.tickSpacing[j]=0}else F("tickSpacing")&&(this.autoTicks=!0,X=!0);if(this._firstInit&&("ticks"in R||"tickSpacing"in R||(this.autoTicks=!0),X=!0,U=!0,this._firstInit=!1),X&&this.autoTicks&&(O=h.create(this.bounds,this.tickSpacing),U=!0),U){for(var j=0;j<3;++j)O[j].sort(function(oe,re){return oe.x-re.x});h.equal(O,this.ticks)?U=!1:this.ticks=O}I("tickEnable"),L("tickFont")&&(U=!0),L("tickFontStyle")&&(U=!0),L("tickFontWeight")&&(U=!0),L("tickFontVariant")&&(U=!0),F("tickSize"),F("tickAngle"),F("tickPad"),P("tickColor");var q=L("labels");L("labelFont")&&(q=!0),L("labelFontStyle")&&(q=!0),L("labelFontWeight")&&(q=!0),L("labelFontVariant")&&(q=!0),I("labelEnable"),F("labelSize"),F("labelPad"),P("labelColor"),I("lineEnable"),I("lineMirror"),F("lineWidth"),P("lineColor"),I("lineTickEnable"),I("lineTickMirror"),F("lineTickLength"),F("lineTickWidth"),P("lineTickColor"),I("gridEnable"),F("gridWidth"),P("gridColor"),I("zeroEnable"),P("zeroLineColor"),F("zeroLineWidth"),I("backgroundEnable"),P("backgroundColor");var K=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],ne=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(q||U)&&this._text.update(this.bounds,this.labels,K,this.ticks,ne):this._text=l(this.gl,this.bounds,this.labels,K,this.ticks,ne),this._lines&&U&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=u(this.gl,this.bounds,this.ticks))};function b(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}var M=[new b,new b,new b];function d(R,N,F,I,L){for(var P=R.primalOffset,O=R.primalMinor,U=R.mirrorOffset,X=R.mirrorMinor,$=I[N],j=0;j<3;++j)if(N!==j){var Y=P,q=U,K=O,ne=X;$&1<0?(K[j]=-1,ne[j]=0):(K[j]=0,ne[j]=1)}}var x=[0,0,0],g={model:p,view:p,projection:p,_ortho:!1};S.isOpaque=function(){return!0},S.isTransparent=function(){return!1},S.drawTransparent=function(R){};var c=0,A=[0,0,0],v=[0,0,0],D=[0,0,0];S.draw=function(R){R=R||g;for(var re=this.gl,N=R.model||p,F=R.view||p,I=R.projection||p,L=this.bounds,P=R._ortho||!1,O=f(N,F,I,L,P),U=O.cubeEdges,X=O.axis,$=F[12],j=F[13],Y=F[14],q=F[15],K=P?2:1,ne=K*this.pixelRatio*(I[3]*$+I[7]*j+I[11]*Y+I[15]*q)/re.drawingBufferHeight,Q=0;Q<3;++Q)this.lastCubeProps.cubeEdges[Q]=U[Q],this.lastCubeProps.axis[Q]=X[Q];for(var oe=M,Q=0;Q<3;++Q)d(M[Q],Q,this.bounds,U,X);for(var re=this.gl,H=x,Q=0;Q<3;++Q)this.backgroundEnable[Q]?H[Q]=X[Q]:H[Q]=0;this._background.draw(N,F,I,L,H,this.backgroundColor),this._lines.bind(N,F,I,this);for(var Q=0;Q<3;++Q){var ee=[0,0,0];X[Q]>0?ee[Q]=L[1][Q]:ee[Q]=L[0][Q];for(var V=0;V<2;++V){var te=(Q+1+V)%3,ue=(Q+1+(V^1))%3;this.gridEnable[te]&&this._lines.drawGrid(te,ue,this.bounds,ee,this.gridColor[te],this.gridWidth[te]*this.pixelRatio)}for(var V=0;V<2;++V){var te=(Q+1+V)%3,ue=(Q+1+(V^1))%3;this.zeroEnable[ue]&&Math.min(L[0][ue],L[1][ue])<=0&&Math.max(L[0][ue],L[1][ue])>=0&&this._lines.drawZero(te,ue,this.bounds,ee,this.zeroLineColor[ue],this.zeroLineWidth[ue]*this.pixelRatio)}}for(var Q=0;Q<3;++Q){this.lineEnable[Q]&&this._lines.drawAxisLine(Q,this.bounds,oe[Q].primalOffset,this.lineColor[Q],this.lineWidth[Q]*this.pixelRatio),this.lineMirror[Q]&&this._lines.drawAxisLine(Q,this.bounds,oe[Q].mirrorOffset,this.lineColor[Q],this.lineWidth[Q]*this.pixelRatio);for(var ve=y(A,oe[Q].primalMinor),ke=y(v,oe[Q].mirrorMinor),Se=this.lineTickLength,V=0;V<3;++V){var he=ne/N[5*V];ve[V]*=Se[V]*he,ke[V]*=Se[V]*he}this.lineTickEnable[Q]&&this._lines.drawAxisTicks(Q,oe[Q].primalOffset,ve,this.lineTickColor[Q],this.lineTickWidth[Q]*this.pixelRatio),this.lineTickMirror[Q]&&this._lines.drawAxisTicks(Q,oe[Q].mirrorOffset,ke,this.lineTickColor[Q],this.lineTickWidth[Q]*this.pixelRatio)}this._lines.unbind(),this._text.bind(N,F,I,this.pixelRatio);var Ae,Ce=.5,Pe,Ee;function Ne(ye){Ee=[0,0,0],Ee[ye]=1}function Ue(ye,pe,ce){var be=(ye+1)%3,Le=(ye+2)%3,qe=pe[be],ze=pe[Le],$e=ce[be],Ve=ce[Le];if(qe>0&&Ve>0){Ne(be);return}else if(qe>0&&Ve<0){Ne(be);return}else if(qe<0&&Ve>0){Ne(be);return}else if(qe<0&&Ve<0){Ne(be);return}else if(ze>0&&$e>0){Ne(Le);return}else if(ze>0&&$e<0){Ne(Le);return}else if(ze<0&&$e>0){Ne(Le);return}else if(ze<0&&$e<0){Ne(Le);return}}for(var Q=0;Q<3;++Q){for(var ge=oe[Q].primalMinor,we=oe[Q].mirrorMinor,Te=y(D,oe[Q].primalOffset),V=0;V<3;++V)this.lineTickEnable[Q]&&(Te[V]+=ne*ge[V]*Math.max(this.lineTickLength[V],0)/N[5*V]);var me=[0,0,0];if(me[Q]=1,this.tickEnable[Q]){this.tickAngle[Q]===-3600?(this.tickAngle[Q]=0,this.tickAlign[Q]="auto"):this.tickAlign[Q]=-1,Pe=1,Ae=[this.tickAlign[Q],Ce,Pe],Ae[0]==="auto"?Ae[0]=c:Ae[0]=parseInt(""+Ae[0]),Ee=[0,0,0],Ue(Q,ge,we);for(var V=0;V<3;++V)Te[V]+=ne*ge[V]*this.tickPad[V]/N[5*V];this._text.drawTicks(Q,this.tickSize[Q],this.tickAngle[Q],Te,this.tickColor[Q],me,Ee,Ae)}if(this.labelEnable[Q]){Pe=0,Ee=[0,0,0],this.labels[Q].length>4&&(Ne(Q),Pe=1),Ae=[this.labelAlign[Q],Ce,Pe],Ae[0]==="auto"?Ae[0]=c:Ae[0]=parseInt(""+Ae[0]);for(var V=0;V<3;++V)Te[V]+=ne*ge[V]*this.labelPad[V]/N[5*V];Te[Q]+=.5*(L[0][Q]+L[1][Q]),this._text.drawLabel(Q,this.labelSize[Q],this.labelAngle[Q],Te,this.labelColor[Q],[0,0,0],Ee,Ae)}}this._text.unbind()},S.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function E(R,N){var F=new k(R);return F.update(N),F}},3840:function(a){"use strict";a.exports=M;var o=0,i=1;function l(d,x,g,c,A,v){this._color=d,this.key=x,this.value=g,this.left=c,this.right=A,this._count=v}function u(d){return new l(d._color,d.key,d.value,d.left,d.right,d._count)}function s(d,x){return new l(d,x.key,x.value,x.left,x.right,x._count)}function f(d){d._count=1+(d.left?d.left._count:0)+(d.right?d.right._count:0)}function h(d,x){this._compare=d,this.root=x}var p=h.prototype;Object.defineProperty(p,"keys",{get:function(){var d=[];return this.forEach(function(x,g){d.push(x)}),d}}),Object.defineProperty(p,"values",{get:function(){var d=[];return this.forEach(function(x,g){d.push(g)}),d}}),Object.defineProperty(p,"length",{get:function(){return this.root?this.root._count:0}}),p.insert=function(d,x){for(var g=this._compare,c=this.root,A=[],v=[];c;){var D=g(d,c.key);A.push(c),v.push(D),D<=0?c=c.left:c=c.right}A.push(new l(o,d,x,null,null,1));for(var E=A.length-2;E>=0;--E){var c=A[E];v[E]<=0?A[E]=new l(c._color,c.key,c.value,A[E+1],c.right,c._count+1):A[E]=new l(c._color,c.key,c.value,c.left,A[E+1],c._count+1)}for(var E=A.length-1;E>1;--E){var R=A[E-1],c=A[E];if(R._color===i||c._color===i)break;var N=A[E-2];if(N.left===R)if(R.left===c){var F=N.right;if(F&&F._color===o)R._color=i,N.right=s(i,F),N._color=o,E-=1;else{if(N._color=o,N.left=R.right,R._color=i,R.right=N,A[E-2]=R,A[E-1]=c,f(N),f(R),E>=3){var I=A[E-3];I.left===N?I.left=R:I.right=R}break}}else{var F=N.right;if(F&&F._color===o)R._color=i,N.right=s(i,F),N._color=o,E-=1;else{if(R.right=c.left,N._color=o,N.left=c.right,c._color=i,c.left=R,c.right=N,A[E-2]=c,A[E-1]=R,f(N),f(R),f(c),E>=3){var I=A[E-3];I.left===N?I.left=c:I.right=c}break}}else if(R.right===c){var F=N.left;if(F&&F._color===o)R._color=i,N.left=s(i,F),N._color=o,E-=1;else{if(N._color=o,N.right=R.left,R._color=i,R.left=N,A[E-2]=R,A[E-1]=c,f(N),f(R),E>=3){var I=A[E-3];I.right===N?I.right=R:I.left=R}break}}else{var F=N.left;if(F&&F._color===o)R._color=i,N.left=s(i,F),N._color=o,E-=1;else{if(R.left=c.right,N._color=o,N.right=c.left,c._color=i,c.right=R,c.left=N,A[E-2]=c,A[E-1]=R,f(N),f(R),f(c),E>=3){var I=A[E-3];I.right===N?I.right=c:I.left=c}break}}}return A[0]._color=i,new h(g,A[0])};function _(d,x){if(x.left){var g=_(d,x.left);if(g)return g}var g=d(x.key,x.value);if(g)return g;if(x.right)return _(d,x.right)}function m(d,x,g,c){var A=x(d,c.key);if(A<=0){if(c.left){var v=m(d,x,g,c.left);if(v)return v}var v=g(c.key,c.value);if(v)return v}if(c.right)return m(d,x,g,c.right)}function w(d,x,g,c,A){var v=g(d,A.key),D=g(x,A.key),E;if(v<=0&&(A.left&&(E=w(d,x,g,c,A.left),E)||D>0&&(E=c(A.key,A.value),E)))return E;if(D>0&&A.right)return w(d,x,g,c,A.right)}p.forEach=function(x,g,c){if(this.root)switch(arguments.length){case 1:return _(x,this.root);case 2:return m(g,this._compare,x,this.root);case 3:return this._compare(g,c)>=0?void 0:w(g,c,this._compare,x,this.root)}},Object.defineProperty(p,"begin",{get:function(){for(var d=[],x=this.root;x;)d.push(x),x=x.left;return new T(this,d)}}),Object.defineProperty(p,"end",{get:function(){for(var d=[],x=this.root;x;)d.push(x),x=x.right;return new T(this,d)}}),p.at=function(d){if(d<0)return new T(this,[]);for(var x=this.root,g=[];;){if(g.push(x),x.left){if(d=x.right._count)break;x=x.right}else break}return new T(this,[])},p.ge=function(d){for(var x=this._compare,g=this.root,c=[],A=0;g;){var v=x(d,g.key);c.push(g),v<=0&&(A=c.length),v<=0?g=g.left:g=g.right}return c.length=A,new T(this,c)},p.gt=function(d){for(var x=this._compare,g=this.root,c=[],A=0;g;){var v=x(d,g.key);c.push(g),v<0&&(A=c.length),v<0?g=g.left:g=g.right}return c.length=A,new T(this,c)},p.lt=function(d){for(var x=this._compare,g=this.root,c=[],A=0;g;){var v=x(d,g.key);c.push(g),v>0&&(A=c.length),v<=0?g=g.left:g=g.right}return c.length=A,new T(this,c)},p.le=function(d){for(var x=this._compare,g=this.root,c=[],A=0;g;){var v=x(d,g.key);c.push(g),v>=0&&(A=c.length),v<0?g=g.left:g=g.right}return c.length=A,new T(this,c)},p.find=function(d){for(var x=this._compare,g=this.root,c=[];g;){var A=x(d,g.key);if(c.push(g),A===0)return new T(this,c);A<=0?g=g.left:g=g.right}return new T(this,[])},p.remove=function(d){var x=this.find(d);return x?x.remove():this},p.get=function(d){for(var x=this._compare,g=this.root;g;){var c=x(d,g.key);if(c===0)return g.value;c<=0?g=g.left:g=g.right}};function T(d,x){this.tree=d,this._stack=x}var y=T.prototype;Object.defineProperty(y,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(y,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),y.clone=function(){return new T(this.tree,this._stack.slice())};function k(d,x){d.key=x.key,d.value=x.value,d.left=x.left,d.right=x.right,d._color=x._color,d._count=x._count}function S(d){for(var x,g,c,A,v=d.length-1;v>=0;--v){if(x=d[v],v===0){x._color=i;return}if(g=d[v-1],g.left===x){if(c=g.right,c.right&&c.right._color===o){if(c=g.right=u(c),A=c.right=u(c.right),g.right=c.left,c.left=g,c.right=A,c._color=g._color,x._color=i,g._color=i,A._color=i,f(g),f(c),v>1){var D=d[v-2];D.left===g?D.left=c:D.right=c}d[v-1]=c;return}else if(c.left&&c.left._color===o){if(c=g.right=u(c),A=c.left=u(c.left),g.right=A.left,c.left=A.right,A.left=g,A.right=c,A._color=g._color,g._color=i,c._color=i,x._color=i,f(g),f(c),f(A),v>1){var D=d[v-2];D.left===g?D.left=A:D.right=A}d[v-1]=A;return}if(c._color===i)if(g._color===o){g._color=i,g.right=s(o,c);return}else{g.right=s(o,c);continue}else{if(c=u(c),g.right=c.left,c.left=g,c._color=g._color,g._color=o,f(g),f(c),v>1){var D=d[v-2];D.left===g?D.left=c:D.right=c}d[v-1]=c,d[v]=g,v+11){var D=d[v-2];D.right===g?D.right=c:D.left=c}d[v-1]=c;return}else if(c.right&&c.right._color===o){if(c=g.left=u(c),A=c.right=u(c.right),g.left=A.right,c.right=A.left,A.right=g,A.left=c,A._color=g._color,g._color=i,c._color=i,x._color=i,f(g),f(c),f(A),v>1){var D=d[v-2];D.right===g?D.right=A:D.left=A}d[v-1]=A;return}if(c._color===i)if(g._color===o){g._color=i,g.left=s(o,c);return}else{g.left=s(o,c);continue}else{if(c=u(c),g.left=c.right,c.right=g,c._color=g._color,g._color=o,f(g),f(c),v>1){var D=d[v-2];D.right===g?D.right=c:D.left=c}d[v-1]=c,d[v]=g,v+1=0;--c){var g=d[c];g.left===d[c+1]?x[c]=new l(g._color,g.key,g.value,x[c+1],g.right,g._count):x[c]=new l(g._color,g.key,g.value,g.left,x[c+1],g._count)}if(g=x[x.length-1],g.left&&g.right){var A=x.length;for(g=g.left;g.right;)x.push(g),g=g.right;var v=x[A-1];x.push(new l(g._color,v.key,v.value,g.left,g.right,g._count)),x[A-1].key=g.key,x[A-1].value=g.value;for(var c=x.length-2;c>=A;--c)g=x[c],x[c]=new l(g._color,g.key,g.value,g.left,x[c+1],g._count);x[A-1].left=x[A]}if(g=x[x.length-1],g._color===o){var D=x[x.length-2];D.left===g?D.left=null:D.right===g&&(D.right=null),x.pop();for(var c=0;c0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(y,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(y,"index",{get:function(){var d=0,x=this._stack;if(x.length===0){var g=this.tree.root;return g?g._count:0}else x[x.length-1].left&&(d=x[x.length-1].left._count);for(var c=x.length-2;c>=0;--c)x[c+1]===x[c].right&&(++d,x[c].left&&(d+=x[c].left._count));return d},enumerable:!0}),y.next=function(){var d=this._stack;if(d.length!==0){var x=d[d.length-1];if(x.right)for(x=x.right;x;)d.push(x),x=x.left;else for(d.pop();d.length>0&&d[d.length-1].right===x;)x=d[d.length-1],d.pop()}},Object.defineProperty(y,"hasNext",{get:function(){var d=this._stack;if(d.length===0)return!1;if(d[d.length-1].right)return!0;for(var x=d.length-1;x>0;--x)if(d[x-1].left===d[x])return!0;return!1}}),y.update=function(d){var x=this._stack;if(x.length===0)throw new Error("Can't update empty node!");var g=new Array(x.length),c=x[x.length-1];g[g.length-1]=new l(c._color,c.key,d,c.left,c.right,c._count);for(var A=x.length-2;A>=0;--A)c=x[A],c.left===x[A+1]?g[A]=new l(c._color,c.key,c.value,g[A+1],c.right,c._count):g[A]=new l(c._color,c.key,c.value,c.left,g[A+1],c._count);return new h(this.tree._compare,g[0])},y.prev=function(){var d=this._stack;if(d.length!==0){var x=d[d.length-1];if(x.left)for(x=x.left;x;)d.push(x),x=x.right;else for(d.pop();d.length>0&&d[d.length-1].left===x;)x=d[d.length-1],d.pop()}},Object.defineProperty(y,"hasPrev",{get:function(){var d=this._stack;if(d.length===0)return!1;if(d[d.length-1].left)return!0;for(var x=d.length-1;x>0;--x)if(d[x-1].right===d[x])return!0;return!1}});function b(d,x){return dx?1:0}function M(d){return new h(d||b,null)}},3865:function(a,o,i){"use strict";var l=i(869);a.exports=u;function u(s,f){return l(s[0].mul(f[1]).add(f[0].mul(s[1])),s[1].mul(f[1]))}},3952:function(a,o,i){"use strict";a.exports=s;var l=i(3250);function u(f,h){for(var p=new Array(h+1),_=0;_20?52:p+32}},4040:function(a){a.exports=o;function o(i,l,u,s,f,h,p){var _=1/(l-u),m=1/(s-f),w=1/(h-p);return i[0]=-2*_,i[1]=0,i[2]=0,i[3]=0,i[4]=0,i[5]=-2*m,i[6]=0,i[7]=0,i[8]=0,i[9]=0,i[10]=2*w,i[11]=0,i[12]=(l+u)*_,i[13]=(f+s)*m,i[14]=(p+h)*w,i[15]=1,i}},4041:function(a){a.exports=o;function o(i,l,u){var s=l[0],f=l[1],h=l[2],p=u[0],_=u[1],m=u[2],w=u[3],T=w*s+_*h-m*f,y=w*f+m*s-p*h,k=w*h+p*f-_*s,S=-p*s-_*f-m*h;return i[0]=T*w+S*-p+y*-m-k*-_,i[1]=y*w+S*-_+k*-p-T*-m,i[2]=k*w+S*-m+T*-_-y*-p,i[3]=l[3],i}},4081:function(a){"use strict";a.exports=o;function o(i,l,u,s,f,h,p,_,m,w){var T=l+h+w;if(y>0){var y=Math.sqrt(T+1);i[0]=.5*(p-m)/y,i[1]=.5*(_-s)/y,i[2]=.5*(u-h)/y,i[3]=.5*y}else{var k=Math.max(l,h,w),y=Math.sqrt(2*k-T+1);l>=k?(i[0]=.5*y,i[1]=.5*(f+u)/y,i[2]=.5*(_+s)/y,i[3]=.5*(p-m)/y):h>=k?(i[0]=.5*(u+f)/y,i[1]=.5*y,i[2]=.5*(m+p)/y,i[3]=.5*(_-s)/y):(i[0]=.5*(s+_)/y,i[1]=.5*(p+m)/y,i[2]=.5*y,i[3]=.5*(u-f)/y)}return i}},4100:function(a,o,i){"use strict";var l=i(4437),u=i(3837),s=i(5445),f=i(4449),h=i(3589),p=i(2260),_=i(7169),m=i(351),w=i(4772),T=i(4040),y=i(799),k=i(9216)({tablet:!0,featureDetect:!0});a.exports={createScene:x,createCamera:l};function S(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function b(c,A){var v=null;try{v=c.getContext("webgl",A),v||(v=c.getContext("experimental-webgl",A))}catch(D){return null}return v}function M(c){var A=Math.round(Math.log(Math.abs(c))/Math.log(10));if(A<0){var v=Math.round(Math.pow(10,-A));return Math.ceil(c*v)/v}else if(A>0){var v=Math.round(Math.pow(10,A));return Math.ceil(c/v)*v}return Math.ceil(c)}function d(c){return typeof c=="boolean"?c:!0}function x(c){c=c||{},c.camera=c.camera||{};var A=c.canvas;if(!A)if(A=document.createElement("canvas"),c.container){var v=c.container;v.appendChild(A)}else document.body.appendChild(A);var D=c.gl;if(D||(c.glOptions&&(k=!!c.glOptions.preserveDrawingBuffer),D=b(A,c.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:k})),!D)throw new Error("webgl not supported");var E=c.bounds||[[-10,-10,-10],[10,10,10]],R=new S,N=p(D,D.drawingBufferWidth,D.drawingBufferHeight,{preferFloat:!k}),F=y(D),I=c.cameraObject&&c.cameraObject._ortho===!0||c.camera.projection&&c.camera.projection.type==="orthographic"||!1,L={eye:c.camera.eye||[2,0,0],center:c.camera.center||[0,0,0],up:c.camera.up||[0,1,0],zoomMin:c.camera.zoomMax||.1,zoomMax:c.camera.zoomMin||100,mode:c.camera.mode||"turntable",_ortho:I},P=c.axes||{},O=u(D,P);O.enable=!P.disable;var U=c.spikes||{},X=f(D,U),$=[],j=[],Y=[],q=[],K=!0,re=!0,ne=new Array(16),Q=new Array(16),oe={view:null,projection:ne,model:Q,_ortho:!1},re=!0,H=[D.drawingBufferWidth,D.drawingBufferHeight],ee=c.cameraObject||l(A,L),V={gl:D,contextLost:!1,pixelRatio:c.pixelRatio||1,canvas:A,selection:R,camera:ee,axes:O,axesPixels:null,spikes:X,bounds:E,objects:$,shape:H,aspect:c.aspectRatio||[1,1,1],pickRadius:c.pickRadius||10,zNear:c.zNear||.01,zFar:c.zFar||1e3,fovy:c.fovy||Math.PI/4,clearColor:c.clearColor||[0,0,0,0],autoResize:d(c.autoResize),autoBounds:d(c.autoBounds),autoScale:!!c.autoScale,autoCenter:d(c.autoCenter),clipToBounds:d(c.clipToBounds),snapToData:!!c.snapToData,onselect:c.onselect||null,onrender:c.onrender||null,onclick:c.onclick||null,cameraParams:oe,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(Ee){this.aspect[0]=Ee.x,this.aspect[1]=Ee.y,this.aspect[2]=Ee.z,re=!0},setBounds:function(Ee,Ne){this.bounds[0][Ee]=Ne.min,this.bounds[1][Ee]=Ne.max},setClearColor:function(Ee){this.clearColor=Ee},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},te=[D.drawingBufferWidth/V.pixelRatio|0,D.drawingBufferHeight/V.pixelRatio|0];function ue(){if(!V._stopped&&V.autoResize){var Ee=A.parentNode,Ne=1,Ue=1;Ee&&Ee!==document.body?(Ne=Ee.clientWidth,Ue=Ee.clientHeight):(Ne=window.innerWidth,Ue=window.innerHeight);var ge=Math.ceil(Ne*V.pixelRatio)|0,we=Math.ceil(Ue*V.pixelRatio)|0;if(ge!==A.width||we!==A.height){A.width=ge,A.height=we;var Te=A.style;Te.position=Te.position||"absolute",Te.left="0px",Te.top="0px",Te.width=Ne+"px",Te.height=Ue+"px",K=!0}}}V.autoResize&&ue(),window.addEventListener("resize",ue);function ve(){for(var Ee=$.length,Ne=q.length,Ue=0;Ue0&&Y[Ne-1]===0;)Y.pop(),q.pop().dispose()}V.update=function(Ee){V._stopped||(Ee=Ee||{},K=!0,re=!0)},V.add=function(Ee){V._stopped||(Ee.axes=O,$.push(Ee),j.push(-1),K=!0,re=!0,ve())},V.remove=function(Ee){if(!V._stopped){var Ne=$.indexOf(Ee);Ne<0||($.splice(Ne,1),j.pop(),K=!0,re=!0,ve())}},V.dispose=function(){if(!V._stopped&&(V._stopped=!0,window.removeEventListener("resize",ue),A.removeEventListener("webglcontextlost",ke),V.mouseListener.enabled=!1,!V.contextLost)){O.dispose(),X.dispose();for(var Ee=0;Ee<$.length;++Ee)$[Ee].dispose();N.dispose();for(var Ee=0;EeR.distance)continue;for(var ce=0;cew;){var g=y[x-2],c=y[x-1];if(gy[T+1]:!0}function _(w,T,y,k){w*=2;var S=k[w];return S>1,d=M-k,x=M+k,g=S,c=d,A=M,v=x,D=b,E=w+1,R=T-1,N=0;p(g,c,y)&&(N=g,g=c,c=N),p(v,D,y)&&(N=v,v=D,D=N),p(g,A,y)&&(N=g,g=A,A=N),p(c,A,y)&&(N=c,c=A,A=N),p(g,v,y)&&(N=g,g=v,v=N),p(A,v,y)&&(N=A,A=v,v=N),p(c,D,y)&&(N=c,c=D,D=N),p(c,A,y)&&(N=c,c=A,A=N),p(v,D,y)&&(N=v,v=D,D=N);for(var F=y[2*c],I=y[2*c+1],L=y[2*v],P=y[2*v+1],O=2*g,U=2*A,X=2*D,$=2*S,j=2*M,Y=2*b,q=0;q<2;++q){var K=y[O+q],ne=y[U+q],Q=y[X+q];y[$+q]=K,y[j+q]=ne,y[Y+q]=Q}s(d,w,y),s(x,T,y);for(var oe=E;oe<=R;++oe)if(_(oe,F,I,y))oe!==E&&u(oe,E,y),++E;else if(!_(oe,L,P,y))for(;;)if(_(R,L,P,y)){_(R,F,I,y)?(f(oe,E,R,y),++E,--R):(u(oe,R,y),--R);break}else{if(--R0)if(S[0]!==M[1][0])b=k,k=k.right;else{var c=m(k.right,S);if(c)return c;k=k.left}else{if(S[0]!==M[1][0])return k;var c=m(k.right,S);if(c)return c;k=k.left}}return b}p.castUp=function(k){var S=l.le(this.coordinates,k[0]);if(S<0)return-1;var b=this.slabs[S],M=m(this.slabs[S],k),d=-1;if(M&&(d=M.value),this.coordinates[S]===k[0]){var x=null;if(M&&(x=M.key),S>0){var g=m(this.slabs[S-1],k);g&&(x?f(g.key,x)>0&&(x=g.key,d=g.value):(d=g.value,x=g.key))}var c=this.horizontal[S];if(c.length>0){var A=l.ge(c,k[1],_);if(A=c.length)return d;v=c[A]}}if(v.start)if(x){var D=s(x[0],x[1],[k[0],v.y]);x[0][0]>x[1][0]&&(D=-D),D>0&&(d=v.index)}else d=v.index;else v.y!==k[1]&&(d=v.index)}}}return d};function w(k,S,b,M){this.y=k,this.index=S,this.start=b,this.closed=M}function T(k,S,b,M){this.x=k,this.segment=S,this.create=b,this.index=M}function y(k){for(var S=k.length,b=2*S,M=new Array(b),d=0;dMath.abs(c))y.rotate(D,0,0,-g*A*Math.PI*d.rotateSpeed/window.innerWidth);else if(!d._ortho){var E=-d.zoomSpeed*v*c/window.innerHeight*(D-y.lastT())/20;y.pan(D,0,0,S*(Math.exp(E)-1))}}},!0)},d.enableMouseListeners(),d}},4449:function(a,o,i){"use strict";var l=i(2762),u=i(8116),s=i(1493);a.exports=T;var f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function h(y,k,S,b){this.gl=y,this.buffer=k,this.vao=S,this.shader=b,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var p=h.prototype,_=[0,0,0],m=[0,0,0],w=[0,0];p.isTransparent=function(){return!1},p.drawTransparent=function(y){},p.draw=function(y){var k=this.gl,S=this.vao,b=this.shader;S.bind(),b.bind();var M=y.model||f,d=y.view||f,x=y.projection||f,g;this.axes&&(g=this.axes.lastCubeProps.axis);for(var c=_,A=m,v=0;v<3;++v)g&&g[v]<0?(c[v]=this.bounds[0][v],A[v]=this.bounds[1][v]):(c[v]=this.bounds[1][v],A[v]=this.bounds[0][v]);w[0]=k.drawingBufferWidth,w[1]=k.drawingBufferHeight,b.uniforms.model=M,b.uniforms.view=d,b.uniforms.projection=x,b.uniforms.coordinates=[this.position,c,A],b.uniforms.colors=this.colors,b.uniforms.screenShape=w;for(var v=0;v<3;++v)b.uniforms.lineWidth=this.lineWidth[v]*this.pixelRatio,this.enabled[v]&&(S.draw(k.TRIANGLES,6,6*v),this.drawSides[v]&&S.draw(k.TRIANGLES,12,18+12*v));S.unbind()},p.update=function(y){y&&("bounds"in y&&(this.bounds=y.bounds),"position"in y&&(this.position=y.position),"lineWidth"in y&&(this.lineWidth=y.lineWidth),"colors"in y&&(this.colors=y.colors),"enabled"in y&&(this.enabled=y.enabled),"drawSides"in y&&(this.drawSides=y.drawSides))},p.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function T(y,k){var S=[];function b(c,A,v,D,E,R){var N=[c,A,v,0,0,0,1];N[D+3]=1,N[D]=E,S.push.apply(S,N),N[6]=-1,S.push.apply(S,N),N[D]=R,S.push.apply(S,N),S.push.apply(S,N),N[6]=1,S.push.apply(S,N),N[D]=E,S.push.apply(S,N)}b(0,0,0,0,0,1),b(0,0,0,1,0,1),b(0,0,0,2,0,1),b(1,0,0,1,-1,1),b(1,0,0,2,-1,1),b(0,1,0,0,-1,1),b(0,1,0,2,-1,1),b(0,0,1,0,-1,1),b(0,0,1,1,-1,1);var M=l(y,S),d=u(y,[{type:y.FLOAT,buffer:M,size:3,offset:0,stride:28},{type:y.FLOAT,buffer:M,size:3,offset:12,stride:28},{type:y.FLOAT,buffer:M,size:1,offset:24,stride:28}]),x=s(y);x.attributes.position.location=0,x.attributes.color.location=1,x.attributes.weight.location=2;var g=new h(y,M,d,x);return g.update(k),g}},4494:function(a){a.exports=o;function o(i,l){return i[0]=1/l[0],i[1]=1/l[1],i[2]=1/l[2],i[3]=1/l[3],i}},4505:function(a,o,i){a.exports=i(5847)},4578:function(a){a.exports=o;function o(i,l,u,s,f){return i[0]=l,i[1]=u,i[2]=s,i[3]=f,i}},4623:function(a){"use strict";"use restrict";a.exports=o;function o(i){this.roots=new Array(i),this.ranks=new Array(i);for(var l=0;l0)return 1<=0)return 1<=0;--y)p[y]=_*l[y]+m*u[y]+w*s[y]+T*f[y];return p}return _*l+m*u+w*s[y]+T*f}function i(l,u,s,f,h,p){var _=h-1,m=h*h,w=_*_,T=(1+2*h)*w,y=h*w,k=m*(3-2*h),S=m*_;if(l.length){p||(p=new Array(l.length));for(var b=l.length-1;b>=0;--b)p[b]=T*l[b]+y*u[b]+k*s[b]+S*f[b];return p}return T*l+y*u+k*s+S*f}a.exports=i,a.exports.derivative=o},4772:function(a){a.exports=o;function o(i,l,u,s,f){var h=1/Math.tan(l/2),p=1/(s-f);return i[0]=h/u,i[1]=0,i[2]=0,i[3]=0,i[4]=0,i[5]=h,i[6]=0,i[7]=0,i[8]=0,i[9]=0,i[10]=(f+s)*p,i[11]=-1,i[12]=0,i[13]=0,i[14]=2*f*s*p,i[15]=0,i}},4793:function(a,o,i){"use strict";var l;function u(se,J){if(!(se instanceof J))throw new TypeError("Cannot call a class as a function")}function s(se,J){for(var ae=0;aeg)throw new RangeError('The value "'+se+'" is invalid for option "size"');var J=new Uint8Array(se);return Object.setPrototypeOf(J,v.prototype),J}function v(se,J,ae){if(typeof se=="number"){if(typeof J=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return N(se)}return D(se,J,ae)}v.poolSize=8192;function D(se,J,ae){if(typeof se=="string")return F(se,J);if(ArrayBuffer.isView(se))return L(se);if(se==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+b(se));if(Me(se,ArrayBuffer)||se&&Me(se.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(Me(se,SharedArrayBuffer)||se&&Me(se.buffer,SharedArrayBuffer)))return P(se,J,ae);if(typeof se=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var De=se.valueOf&&se.valueOf();if(De!=null&&De!==se)return v.from(De,J,ae);var He=O(se);if(He)return He;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof se[Symbol.toPrimitive]=="function")return v.from(se[Symbol.toPrimitive]("string"),J,ae);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+b(se))}v.from=function(se,J,ae){return D(se,J,ae)},Object.setPrototypeOf(v.prototype,Uint8Array.prototype),Object.setPrototypeOf(v,Uint8Array);function E(se){if(typeof se!="number")throw new TypeError('"size" argument must be of type number');if(se<0)throw new RangeError('The value "'+se+'" is invalid for option "size"')}function R(se,J,ae){return E(se),se<=0?A(se):J!==void 0?typeof ae=="string"?A(se).fill(J,ae):A(se).fill(J):A(se)}v.alloc=function(se,J,ae){return R(se,J,ae)};function N(se){return E(se),A(se<0?0:U(se)|0)}v.allocUnsafe=function(se){return N(se)},v.allocUnsafeSlow=function(se){return N(se)};function F(se,J){if((typeof J!="string"||J==="")&&(J="utf8"),!v.isEncoding(J))throw new TypeError("Unknown encoding: "+J);var ae=$(se,J)|0,De=A(ae),He=De.write(se,J);return He!==ae&&(De=De.slice(0,He)),De}function I(se){for(var J=se.length<0?0:U(se.length)|0,ae=A(J),De=0;De=g)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+g.toString(16)+" bytes");return se|0}function X(se){return+se!=se&&(se=0),v.alloc(+se)}v.isBuffer=function(J){return J!=null&&J._isBuffer===!0&&J!==v.prototype},v.compare=function(J,ae){if(Me(J,Uint8Array)&&(J=v.from(J,J.offset,J.byteLength)),Me(ae,Uint8Array)&&(ae=v.from(ae,ae.offset,ae.byteLength)),!v.isBuffer(J)||!v.isBuffer(ae))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(J===ae)return 0;for(var De=J.length,He=ae.length,er=0,nr=Math.min(De,He);erHe.length?(v.isBuffer(nr)||(nr=v.from(nr)),nr.copy(He,er)):Uint8Array.prototype.set.call(He,nr,er);else if(v.isBuffer(nr))nr.copy(He,er);else throw new TypeError('"list" argument must be an Array of Buffers');er+=nr.length}return He};function $(se,J){if(v.isBuffer(se))return se.length;if(ArrayBuffer.isView(se)||Me(se,ArrayBuffer))return se.byteLength;if(typeof se!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+b(se));var ae=se.length,De=arguments.length>2&&arguments[2]===!0;if(!De&&ae===0)return 0;for(var He=!1;;)switch(J){case"ascii":case"latin1":case"binary":return ae;case"utf8":case"utf-8":return ze(se).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ae*2;case"hex":return ae>>>1;case"base64":return Be(se).length;default:if(He)return De?-1:ze(se).length;J=(""+J).toLowerCase(),He=!0}}v.byteLength=$;function j(se,J,ae){var De=!1;if((J===void 0||J<0)&&(J=0),J>this.length||((ae===void 0||ae>this.length)&&(ae=this.length),ae<=0)||(ae>>>=0,J>>>=0,ae<=J))return"";for(se||(se="utf8");;)switch(se){case"hex":return Se(this,J,ae);case"utf8":case"utf-8":return V(this,J,ae);case"ascii":return ve(this,J,ae);case"latin1":case"binary":return ke(this,J,ae);case"base64":return ee(this,J,ae);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return he(this,J,ae);default:if(De)throw new TypeError("Unknown encoding: "+se);se=(se+"").toLowerCase(),De=!0}}v.prototype._isBuffer=!0;function Y(se,J,ae){var De=se[J];se[J]=se[ae],se[ae]=De}v.prototype.swap16=function(){var J=this.length;if(J%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var ae=0;aeae&&(J+=" ... "),""},x&&(v.prototype[x]=v.prototype.inspect),v.prototype.compare=function(J,ae,De,He,er){if(Me(J,Uint8Array)&&(J=v.from(J,J.offset,J.byteLength)),!v.isBuffer(J))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+b(J));if(ae===void 0&&(ae=0),De===void 0&&(De=J?J.length:0),He===void 0&&(He=0),er===void 0&&(er=this.length),ae<0||De>J.length||He<0||er>this.length)throw new RangeError("out of range index");if(He>=er&&ae>=De)return 0;if(He>=er)return-1;if(ae>=De)return 1;if(ae>>>=0,De>>>=0,He>>>=0,er>>>=0,this===J)return 0;for(var nr=er-He,fr=De-ae,xr=Math.min(nr,fr),Sr=this.slice(He,er),Mr=J.slice(ae,De),Ar=0;Ar2147483647?ae=2147483647:ae<-2147483648&&(ae=-2147483648),ae=+ae,Re(ae)&&(ae=He?0:se.length-1),ae<0&&(ae=se.length+ae),ae>=se.length){if(He)return-1;ae=se.length-1}else if(ae<0)if(He)ae=0;else return-1;if(typeof J=="string"&&(J=v.from(J,De)),v.isBuffer(J))return J.length===0?-1:K(se,J,ae,De,He);if(typeof J=="number")return J=J&255,typeof Uint8Array.prototype.indexOf=="function"?He?Uint8Array.prototype.indexOf.call(se,J,ae):Uint8Array.prototype.lastIndexOf.call(se,J,ae):K(se,[J],ae,De,He);throw new TypeError("val must be string, number or Buffer")}function K(se,J,ae,De,He){var er=1,nr=se.length,fr=J.length;if(De!==void 0&&(De=String(De).toLowerCase(),De==="ucs2"||De==="ucs-2"||De==="utf16le"||De==="utf-16le")){if(se.length<2||J.length<2)return-1;er=2,nr/=2,fr/=2,ae/=2}function xr(sr,Pr){return er===1?sr[Pr]:sr.readUInt16BE(Pr*er)}var Sr;if(He){var Mr=-1;for(Sr=ae;Srnr&&(ae=nr-fr),Sr=ae;Sr>=0;Sr--){for(var Ar=!0,ft=0;ftHe&&(De=He)):De=He;var er=J.length;De>er/2&&(De=er/2);var nr;for(nr=0;nr>>0,isFinite(De)?(De=De>>>0,He===void 0&&(He="utf8")):(He=De,De=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var er=this.length-ae;if((De===void 0||De>er)&&(De=er),J.length>0&&(De<0||ae<0)||ae>this.length)throw new RangeError("Attempt to write outside buffer bounds");He||(He="utf8");for(var nr=!1;;)switch(He){case"hex":return ne(this,J,ae,De);case"utf8":case"utf-8":return Q(this,J,ae,De);case"ascii":case"latin1":case"binary":return oe(this,J,ae,De);case"base64":return re(this,J,ae,De);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return H(this,J,ae,De);default:if(nr)throw new TypeError("Unknown encoding: "+He);He=(""+He).toLowerCase(),nr=!0}},v.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function ee(se,J,ae){return J===0&&ae===se.length?M.fromByteArray(se):M.fromByteArray(se.slice(J,ae))}function V(se,J,ae){ae=Math.min(se.length,ae);for(var De=[],He=J;He239?4:er>223?3:er>191?2:1;if(He+fr<=ae){var xr=void 0,Sr=void 0,Mr=void 0,Ar=void 0;switch(fr){case 1:er<128&&(nr=er);break;case 2:xr=se[He+1],(xr&192)===128&&(Ar=(er&31)<<6|xr&63,Ar>127&&(nr=Ar));break;case 3:xr=se[He+1],Sr=se[He+2],(xr&192)===128&&(Sr&192)===128&&(Ar=(er&15)<<12|(xr&63)<<6|Sr&63,Ar>2047&&(Ar<55296||Ar>57343)&&(nr=Ar));break;case 4:xr=se[He+1],Sr=se[He+2],Mr=se[He+3],(xr&192)===128&&(Sr&192)===128&&(Mr&192)===128&&(Ar=(er&15)<<18|(xr&63)<<12|(Sr&63)<<6|Mr&63,Ar>65535&&Ar<1114112&&(nr=Ar))}}nr===null?(nr=65533,fr=1):nr>65535&&(nr-=65536,De.push(nr>>>10&1023|55296),nr=56320|nr&1023),De.push(nr),He+=fr}return ue(De)}var te=4096;function ue(se){var J=se.length;if(J<=te)return String.fromCharCode.apply(String,se);for(var ae="",De=0;DeDe)&&(ae=De);for(var He="",er=J;erDe&&(J=De),ae<0?(ae+=De,ae<0&&(ae=0)):ae>De&&(ae=De),aeae)throw new RangeError("Trying to access beyond buffer length")}v.prototype.readUintLE=v.prototype.readUIntLE=function(J,ae,De){J=J>>>0,ae=ae>>>0,De||Ae(J,ae,this.length);for(var He=this[J],er=1,nr=0;++nr>>0,ae=ae>>>0,De||Ae(J,ae,this.length);for(var He=this[J+--ae],er=1;ae>0&&(er*=256);)He+=this[J+--ae]*er;return He},v.prototype.readUint8=v.prototype.readUInt8=function(J,ae){return J=J>>>0,ae||Ae(J,1,this.length),this[J]},v.prototype.readUint16LE=v.prototype.readUInt16LE=function(J,ae){return J=J>>>0,ae||Ae(J,2,this.length),this[J]|this[J+1]<<8},v.prototype.readUint16BE=v.prototype.readUInt16BE=function(J,ae){return J=J>>>0,ae||Ae(J,2,this.length),this[J]<<8|this[J+1]},v.prototype.readUint32LE=v.prototype.readUInt32LE=function(J,ae){return J=J>>>0,ae||Ae(J,4,this.length),(this[J]|this[J+1]<<8|this[J+2]<<16)+this[J+3]*16777216},v.prototype.readUint32BE=v.prototype.readUInt32BE=function(J,ae){return J=J>>>0,ae||Ae(J,4,this.length),this[J]*16777216+(this[J+1]<<16|this[J+2]<<8|this[J+3])},v.prototype.readBigUInt64LE=Ke(function(J){J=J>>>0,ce(J,"offset");var ae=this[J],De=this[J+7];(ae===void 0||De===void 0)&&be(J,this.length-8);var He=ae+this[++J]*Math.pow(2,8)+this[++J]*Math.pow(2,16)+this[++J]*Math.pow(2,24),er=this[++J]+this[++J]*Math.pow(2,8)+this[++J]*Math.pow(2,16)+De*Math.pow(2,24);return BigInt(He)+(BigInt(er)<>>0,ce(J,"offset");var ae=this[J],De=this[J+7];(ae===void 0||De===void 0)&&be(J,this.length-8);var He=ae*Math.pow(2,24)+this[++J]*Math.pow(2,16)+this[++J]*Math.pow(2,8)+this[++J],er=this[++J]*Math.pow(2,24)+this[++J]*Math.pow(2,16)+this[++J]*Math.pow(2,8)+De;return(BigInt(He)<>>0,ae=ae>>>0,De||Ae(J,ae,this.length);for(var He=this[J],er=1,nr=0;++nr=er&&(He-=Math.pow(2,8*ae)),He},v.prototype.readIntBE=function(J,ae,De){J=J>>>0,ae=ae>>>0,De||Ae(J,ae,this.length);for(var He=ae,er=1,nr=this[J+--He];He>0&&(er*=256);)nr+=this[J+--He]*er;return er*=128,nr>=er&&(nr-=Math.pow(2,8*ae)),nr},v.prototype.readInt8=function(J,ae){return J=J>>>0,ae||Ae(J,1,this.length),this[J]&128?(255-this[J]+1)*-1:this[J]},v.prototype.readInt16LE=function(J,ae){J=J>>>0,ae||Ae(J,2,this.length);var De=this[J]|this[J+1]<<8;return De&32768?De|4294901760:De},v.prototype.readInt16BE=function(J,ae){J=J>>>0,ae||Ae(J,2,this.length);var De=this[J+1]|this[J]<<8;return De&32768?De|4294901760:De},v.prototype.readInt32LE=function(J,ae){return J=J>>>0,ae||Ae(J,4,this.length),this[J]|this[J+1]<<8|this[J+2]<<16|this[J+3]<<24},v.prototype.readInt32BE=function(J,ae){return J=J>>>0,ae||Ae(J,4,this.length),this[J]<<24|this[J+1]<<16|this[J+2]<<8|this[J+3]},v.prototype.readBigInt64LE=Ke(function(J){J=J>>>0,ce(J,"offset");var ae=this[J],De=this[J+7];(ae===void 0||De===void 0)&&be(J,this.length-8);var He=this[J+4]+this[J+5]*Math.pow(2,8)+this[J+6]*Math.pow(2,16)+(De<<24);return(BigInt(He)<>>0,ce(J,"offset");var ae=this[J],De=this[J+7];(ae===void 0||De===void 0)&&be(J,this.length-8);var He=(ae<<24)+this[++J]*Math.pow(2,16)+this[++J]*Math.pow(2,8)+this[++J];return(BigInt(He)<>>0,ae||Ae(J,4,this.length),d.read(this,J,!0,23,4)},v.prototype.readFloatBE=function(J,ae){return J=J>>>0,ae||Ae(J,4,this.length),d.read(this,J,!1,23,4)},v.prototype.readDoubleLE=function(J,ae){return J=J>>>0,ae||Ae(J,8,this.length),d.read(this,J,!0,52,8)},v.prototype.readDoubleBE=function(J,ae){return J=J>>>0,ae||Ae(J,8,this.length),d.read(this,J,!1,52,8)};function Ce(se,J,ae,De,He,er){if(!v.isBuffer(se))throw new TypeError('"buffer" argument must be a Buffer instance');if(J>He||Jse.length)throw new RangeError("Index out of range")}v.prototype.writeUintLE=v.prototype.writeUIntLE=function(J,ae,De,He){if(J=+J,ae=ae>>>0,De=De>>>0,!He){var er=Math.pow(2,8*De)-1;Ce(this,J,ae,De,er,0)}var nr=1,fr=0;for(this[ae]=J&255;++fr>>0,De=De>>>0,!He){var er=Math.pow(2,8*De)-1;Ce(this,J,ae,De,er,0)}var nr=De-1,fr=1;for(this[ae+nr]=J&255;--nr>=0&&(fr*=256);)this[ae+nr]=J/fr&255;return ae+De},v.prototype.writeUint8=v.prototype.writeUInt8=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,1,255,0),this[ae]=J&255,ae+1},v.prototype.writeUint16LE=v.prototype.writeUInt16LE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,2,65535,0),this[ae]=J&255,this[ae+1]=J>>>8,ae+2},v.prototype.writeUint16BE=v.prototype.writeUInt16BE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,2,65535,0),this[ae]=J>>>8,this[ae+1]=J&255,ae+2},v.prototype.writeUint32LE=v.prototype.writeUInt32LE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,4,4294967295,0),this[ae+3]=J>>>24,this[ae+2]=J>>>16,this[ae+1]=J>>>8,this[ae]=J&255,ae+4},v.prototype.writeUint32BE=v.prototype.writeUInt32BE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,4,4294967295,0),this[ae]=J>>>24,this[ae+1]=J>>>16,this[ae+2]=J>>>8,this[ae+3]=J&255,ae+4};function Pe(se,J,ae,De,He){pe(J,De,He,se,ae,7);var er=Number(J&BigInt(4294967295));se[ae++]=er,er=er>>8,se[ae++]=er,er=er>>8,se[ae++]=er,er=er>>8,se[ae++]=er;var nr=Number(J>>BigInt(32)&BigInt(4294967295));return se[ae++]=nr,nr=nr>>8,se[ae++]=nr,nr=nr>>8,se[ae++]=nr,nr=nr>>8,se[ae++]=nr,ae}function Ee(se,J,ae,De,He){pe(J,De,He,se,ae,7);var er=Number(J&BigInt(4294967295));se[ae+7]=er,er=er>>8,se[ae+6]=er,er=er>>8,se[ae+5]=er,er=er>>8,se[ae+4]=er;var nr=Number(J>>BigInt(32)&BigInt(4294967295));return se[ae+3]=nr,nr=nr>>8,se[ae+2]=nr,nr=nr>>8,se[ae+1]=nr,nr=nr>>8,se[ae]=nr,ae+8}v.prototype.writeBigUInt64LE=Ke(function(J){var ae=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Pe(this,J,ae,BigInt(0),BigInt("0xffffffffffffffff"))}),v.prototype.writeBigUInt64BE=Ke(function(J){var ae=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Ee(this,J,ae,BigInt(0),BigInt("0xffffffffffffffff"))}),v.prototype.writeIntLE=function(J,ae,De,He){if(J=+J,ae=ae>>>0,!He){var er=Math.pow(2,8*De-1);Ce(this,J,ae,De,er-1,-er)}var nr=0,fr=1,xr=0;for(this[ae]=J&255;++nr>0)-xr&255;return ae+De},v.prototype.writeIntBE=function(J,ae,De,He){if(J=+J,ae=ae>>>0,!He){var er=Math.pow(2,8*De-1);Ce(this,J,ae,De,er-1,-er)}var nr=De-1,fr=1,xr=0;for(this[ae+nr]=J&255;--nr>=0&&(fr*=256);)J<0&&xr===0&&this[ae+nr+1]!==0&&(xr=1),this[ae+nr]=(J/fr>>0)-xr&255;return ae+De},v.prototype.writeInt8=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,1,127,-128),J<0&&(J=255+J+1),this[ae]=J&255,ae+1},v.prototype.writeInt16LE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,2,32767,-32768),this[ae]=J&255,this[ae+1]=J>>>8,ae+2},v.prototype.writeInt16BE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,2,32767,-32768),this[ae]=J>>>8,this[ae+1]=J&255,ae+2},v.prototype.writeInt32LE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,4,2147483647,-2147483648),this[ae]=J&255,this[ae+1]=J>>>8,this[ae+2]=J>>>16,this[ae+3]=J>>>24,ae+4},v.prototype.writeInt32BE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,4,2147483647,-2147483648),J<0&&(J=4294967295+J+1),this[ae]=J>>>24,this[ae+1]=J>>>16,this[ae+2]=J>>>8,this[ae+3]=J&255,ae+4},v.prototype.writeBigInt64LE=Ke(function(J){var ae=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Pe(this,J,ae,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),v.prototype.writeBigInt64BE=Ke(function(J){var ae=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Ee(this,J,ae,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Ne(se,J,ae,De,He,er){if(ae+De>se.length)throw new RangeError("Index out of range");if(ae<0)throw new RangeError("Index out of range")}function Ue(se,J,ae,De,He){return J=+J,ae=ae>>>0,He||Ne(se,J,ae,4,34028234663852886e22,-34028234663852886e22),d.write(se,J,ae,De,23,4),ae+4}v.prototype.writeFloatLE=function(J,ae,De){return Ue(this,J,ae,!0,De)},v.prototype.writeFloatBE=function(J,ae,De){return Ue(this,J,ae,!1,De)};function ge(se,J,ae,De,He){return J=+J,ae=ae>>>0,He||Ne(se,J,ae,8,17976931348623157e292,-17976931348623157e292),d.write(se,J,ae,De,52,8),ae+8}v.prototype.writeDoubleLE=function(J,ae,De){return ge(this,J,ae,!0,De)},v.prototype.writeDoubleBE=function(J,ae,De){return ge(this,J,ae,!1,De)},v.prototype.copy=function(J,ae,De,He){if(!v.isBuffer(J))throw new TypeError("argument should be a Buffer");if(De||(De=0),!He&&He!==0&&(He=this.length),ae>=J.length&&(ae=J.length),ae||(ae=0),He>0&&He=this.length)throw new RangeError("Index out of range");if(He<0)throw new RangeError("sourceEnd out of bounds");He>this.length&&(He=this.length),J.length-ae>>0,De=De===void 0?this.length:De>>>0,J||(J=0);var nr;if(typeof J=="number")for(nr=ae;nrMath.pow(2,32)?He=me(String(ae)):typeof ae=="bigint"&&(He=String(ae),(ae>Math.pow(BigInt(2),BigInt(32))||ae<-Math.pow(BigInt(2),BigInt(32)))&&(He=me(He)),He+="n"),De+=" It must be ".concat(J,". Received ").concat(He),De},RangeError);function me(se){for(var J="",ae=se.length,De=se[0]==="-"?1:0;ae>=De+4;ae-=3)J="_".concat(se.slice(ae-3,ae)).concat(J);return"".concat(se.slice(0,ae)).concat(J)}function ye(se,J,ae){ce(J,"offset"),(se[J]===void 0||se[J+ae]===void 0)&&be(J,se.length-(ae+1))}function pe(se,J,ae,De,He,er){if(se>ae||se3?J===0||J===BigInt(0)?fr=">= 0".concat(nr," and < 2").concat(nr," ** ").concat((er+1)*8).concat(nr):fr=">= -(2".concat(nr," ** ").concat((er+1)*8-1).concat(nr,") and < 2 ** ")+"".concat((er+1)*8-1).concat(nr):fr=">= ".concat(J).concat(nr," and <= ").concat(ae).concat(nr),new we.ERR_OUT_OF_RANGE("value",fr,se)}ye(De,He,er)}function ce(se,J){if(typeof se!="number")throw new we.ERR_INVALID_ARG_TYPE(J,"number",se)}function be(se,J,ae){throw Math.floor(se)!==se?(ce(se,ae),new we.ERR_OUT_OF_RANGE(ae||"offset","an integer",se)):J<0?new we.ERR_BUFFER_OUT_OF_BOUNDS:new we.ERR_OUT_OF_RANGE(ae||"offset",">= ".concat(ae?1:0," and <= ").concat(J),se)}var Le=/[^+/0-9A-Za-z-_]/g;function qe(se){if(se=se.split("=")[0],se=se.trim().replace(Le,""),se.length<2)return"";for(;se.length%4!==0;)se=se+"=";return se}function ze(se,J){J=J||1/0;for(var ae,De=se.length,He=null,er=[],nr=0;nr55295&&ae<57344){if(!He){if(ae>56319){(J-=3)>-1&&er.push(239,191,189);continue}else if(nr+1===De){(J-=3)>-1&&er.push(239,191,189);continue}He=ae;continue}if(ae<56320){(J-=3)>-1&&er.push(239,191,189),He=ae;continue}ae=(He-55296<<10|ae-56320)+65536}else He&&(J-=3)>-1&&er.push(239,191,189);if(He=null,ae<128){if((J-=1)<0)break;er.push(ae)}else if(ae<2048){if((J-=2)<0)break;er.push(ae>>6|192,ae&63|128)}else if(ae<65536){if((J-=3)<0)break;er.push(ae>>12|224,ae>>6&63|128,ae&63|128)}else if(ae<1114112){if((J-=4)<0)break;er.push(ae>>18|240,ae>>12&63|128,ae>>6&63|128,ae&63|128)}else throw new Error("Invalid code point")}return er}function $e(se){for(var J=[],ae=0;ae>8,He=ae%256,er.push(He),er.push(De);return er}function Be(se){return M.toByteArray(qe(se))}function Ye(se,J,ae,De){var He;for(He=0;He=J.length||He>=se.length);++He)J[He+ae]=se[He];return He}function Me(se,J){return se instanceof J||se!=null&&se.constructor!=null&&se.constructor.name!=null&&se.constructor.name===J.name}function Re(se){return se!==se}var Qe=function(){for(var se="0123456789abcdef",J=new Array(256),ae=0;ae<16;++ae)for(var De=ae*16,He=0;He<16;++He)J[De+He]=se[ae]+se[He];return J}();function Ke(se){return typeof BigInt=="undefined"?ar:se}function ar(){throw new Error("BigInt not supported")}},4844:function(a){a.exports=o;function o(i,l,u,s){return i[0]=l[0]+u[0]*s,i[1]=l[1]+u[1]*s,i[2]=l[2]+u[2]*s,i[3]=l[3]+u[3]*s,i}},4905:function(a,o,i){var l=i(5874);a.exports=u;function u(s,f){var h=l(f),p=[];return p=p.concat(h(s)),p=p.concat(h(null)),p}},4935:function(a,o,i){"use strict";a.exports=k;var l=i(2762),u=i(8116),s=i(4359),f=i(1879).Q,h=window||process.global||{},p=h.__TEXT_CACHE||{};h.__TEXT_CACHE={};var _=3;function m(S,b,M,d){this.gl=S,this.shader=b,this.buffer=M,this.vao=d,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var w=m.prototype,T=[0,0];w.bind=function(S,b,M,d){this.vao.bind(),this.shader.bind();var x=this.shader.uniforms;x.model=S,x.view=b,x.projection=M,x.pixelScale=d,T[0]=this.gl.drawingBufferWidth,T[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=T},w.unbind=function(){this.vao.unbind()},w.update=function(S,b,M,d,x){var g=[];function c(P,O,U,X,$,j){var Y=[U.style,U.weight,U.variant,U.family].join("_"),q=p[Y];q||(q=p[Y]={});var K=q[O];K||(K=q[O]=y(O,{triangles:!0,font:U.family,fontStyle:U.style,fontWeight:U.weight,fontVariant:U.variant,textAlign:"center",textBaseline:"middle",lineSpacing:$,styletags:j}));for(var ne=(X||12)/12,Q=K.positions,oe=K.cells,re=0,H=oe.length;re=0;--V){var te=Q[ee[V]];g.push(ne*te[0],-ne*te[1],P)}}for(var A=[0,0,0],v=[0,0,0],D=[0,0,0],E=[0,0,0],R=1.25,N={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},F=0;F<3;++F){D[F]=g.length/_|0,c(.5*(S[0][F]+S[1][F]),b[F],M[F],12,R,N),E[F]=(g.length/_|0)-D[F],A[F]=g.length/_|0;for(var I=0;I0||b.length>0;){for(;S.length>0;){var c=S.pop();if(M[c]!==-k){M[c]=k;for(var A=d[c],v=0;v<3;++v){var D=g[3*c+v];D>=0&&M[D]===0&&(x[3*c+v]?b.push(D):(S.push(D),M[D]=k))}}}var E=b;b=S,S=E,b.length=0,k=-k}var R=p(d,M,w);return T?R.concat(y.boundary):R}},5033:function(a){"use strict";a.exports=o;function o(i,l,u){var s=l||0,f=u||1;return[[i[12]+i[0],i[13]+i[1],i[14]+i[2],i[15]+i[3]],[i[12]-i[0],i[13]-i[1],i[14]-i[2],i[15]-i[3]],[i[12]+i[4],i[13]+i[5],i[14]+i[6],i[15]+i[7]],[i[12]-i[4],i[13]-i[5],i[14]-i[6],i[15]-i[7]],[s*i[12]+i[8],s*i[13]+i[9],s*i[14]+i[10],s*i[15]+i[11]],[f*i[12]-i[8],f*i[13]-i[9],f*i[14]-i[10],f*i[15]-i[11]]]}},5085:function(a,o,i){a.exports=k;var l=i(3250)[3],u=i(4209),s=i(3352),f=i(2478);function h(){return!0}function p(S){return function(b,M){var d=S[b];return d?!!d.queryPoint(M,h):!1}}function _(S){for(var b={},M=0;M0&&b[d]===M[0])x=S[d-1];else return 1;for(var g=1;x;){var c=x.key,A=l(M,c[0],c[1]);if(c[0][0]0)g=-1,x=x.right;else return 0;else if(A>0)x=x.left;else if(A<0)g=1,x=x.right;else return 0}return g}}function w(S){return 1}function T(S){return function(M){return S(M[0],M[1])?0:1}}function y(S,b){return function(d){return S(d[0],d[1])?0:b(d)}}function k(S){for(var b=S.length,M=[],d=[],x=0,g=0;g0&&(p=1/Math.sqrt(p),i[0]=u*p,i[1]=s*p,i[2]=f*p,i[3]=h*p),i}},5202:function(a,o,i){"use strict";var l=i(1944),u=i(8210);a.exports=h,a.exports.positive=p,a.exports.negative=_;function s(m,w){var T=u(l(m,w),[w[w.length-1]]);return T[T.length-1]}function f(m,w,T,y){var k=y-w,S=-w/k;S<0?S=0:S>1&&(S=1);for(var b=1-S,M=m.length,d=new Array(M),x=0;x0||k>0&&d<0){var x=f(S,d,b,k);T.push(x),y.push(x.slice())}d<0?y.push(b.slice()):d>0?T.push(b.slice()):(T.push(b.slice()),y.push(b.slice())),k=d}return{positive:T,negative:y}}function p(m,w){for(var T=[],y=s(m[m.length-1],w),k=m[m.length-1],S=m[0],b=0;b0||y>0&&M<0)&&T.push(f(k,M,S,y)),M>=0&&T.push(S.slice()),y=M}return T}function _(m,w){for(var T=[],y=s(m[m.length-1],w),k=m[m.length-1],S=m[0],b=0;b0||y>0&&M<0)&&T.push(f(k,M,S,y)),M<=0&&T.push(S.slice()),y=M}return T}},5219:function(a){"use strict";a.exports=function(o){for(var i=o.length,l,u=0;u13)&&l!==32&&l!==133&&l!==160&&l!==5760&&l!==6158&&(l<8192||l>8205)&&l!==8232&&l!==8233&&l!==8239&&l!==8287&&l!==8288&&l!==12288&&l!==65279)return!1;return!0}},5250:function(a){"use strict";a.exports=i;var o=+(Math.pow(2,27)+1);function i(l,u,s){var f=l*u,h=o*l,p=h-l,_=h-p,m=l-_,w=o*u,T=w-u,y=w-T,k=u-y,S=f-_*y,b=S-m*y,M=b-_*k,d=m*k-M;return s?(s[0]=d,s[1]=f,s):[d,f]}},5298:function(a,o){"use strict";var i={"float64,2,1,0":function(){return function(m,w,T,y,k){var S=m[0],b=m[1],M=m[2],d=T[0],x=T[1],g=T[2];y|=0;var c=0,A=0,v=0,D=g,E=x-M*g,R=d-b*x;for(v=0;v0;){I<64?(d=I,I=0):(d=64,I-=64);for(var L=m[1]|0;L>0;){L<64?(x=L,L=0):(x=64,L-=64),y=N+I*c+L*A,b=F+I*D+L*E;var P=0,O=0,U=0,X=v,$=c-g*v,j=A-d*c,Y=R,q=D-g*R,K=E-d*D;for(U=0;U0;){E<64?(d=E,E=0):(d=64,E-=64);for(var R=m[0]|0;R>0;){R<64?(M=R,R=0):(M=64,R-=64),y=v+E*g+R*x,b=D+E*A+R*c;var N=0,F=0,I=g,L=x-d*g,P=A,O=c-d*A;for(F=0;F0;){F<64?(x=F,F=0):(x=64,F-=64);for(var I=m[0]|0;I>0;){I<64?(M=I,I=0):(M=64,I-=64);for(var L=m[1]|0;L>0;){L<64?(d=L,L=0):(d=64,L-=64),y=R+F*A+I*g+L*c,b=N+F*E+I*v+L*D;var P=0,O=0,U=0,X=A,$=g-x*A,j=c-M*g,Y=E,q=v-x*E,K=D-M*v;for(U=0;U=0}}(),s.removeTriangle=function(p,_,m){var w=this.stars;f(w[p],_,m),f(w[_],m,p),f(w[m],p,_)},s.addTriangle=function(p,_,m){var w=this.stars;w[p].push(_,m),w[_].push(m,p),w[m].push(p,_)},s.opposite=function(p,_){for(var m=this.stars[_],w=1,T=m.length;w0;){var y=m.pop();p[y]=!1;for(var k=h[y],w=0;w0){for(var Y=0;Y<24;++Y)E.push(E[E.length-12]);I+=2,X=!0}continue e}L[0][v]=Math.min(L[0][v],$[v],j[v]),L[1][v]=Math.max(L[1][v],$[v],j[v])}var q,K;Array.isArray(O[0])?(q=O.length>A-1?O[A-1]:O.length>0?O[O.length-1]:[0,0,0,1],K=O.length>A?O[A]:O.length>0?O[O.length-1]:[0,0,0,1]):q=K=O,q.length===3&&(q=[q[0],q[1],q[2],1]),K.length===3&&(K=[K[0],K[1],K[2],1]),!this.hasAlpha&&q[3]<1&&(this.hasAlpha=!0);var ne;Array.isArray(U)?ne=U.length>A-1?U[A-1]:U.length>0?U[U.length-1]:[0,0,0,1]:ne=U;var Q=F;if(F+=S($,j),X){for(v=0;v<2;++v)E.push($[0],$[1],$[2],j[0],j[1],j[2],Q,ne,q[0],q[1],q[2],q[3]);I+=2,X=!1}E.push($[0],$[1],$[2],j[0],j[1],j[2],Q,ne,q[0],q[1],q[2],q[3],$[0],$[1],$[2],j[0],j[1],j[2],Q,-ne,q[0],q[1],q[2],q[3],j[0],j[1],j[2],$[0],$[1],$[2],F,-ne,K[0],K[1],K[2],K[3],j[0],j[1],j[2],$[0],$[1],$[2],F,ne,K[0],K[1],K[2],K[3]),I+=4}}if(this.buffer.update(E),R.push(F),N.push(P[P.length-1].slice()),this.bounds=L,this.vertexCount=I,this.points=N,this.arcLength=R,"dashes"in c){var oe=c.dashes,re=oe.slice();for(re.unshift(0),A=1;Ai[u][0]&&(u=s);return lu?[[u],[l]]:[[l]]}},5771:function(a,o,i){"use strict";var l=i(8507),u=i(3788),s=i(2419);a.exports=f;function f(h){h.sort(u);for(var p=h.length,_=0,m=0;m0){var y=h[_-1];if(l(w,y)===0&&s(y)!==T){_-=1;continue}}h[_++]=w}}return h.length=_,h}},5838:function(a,o,i){"use strict";a.exports=u;var l=i(7842);function u(s){for(var f=new Array(s.length),h=0;h0)continue;me=ge.slice(0,1).join("")}return ee(me),j+=me.length,L=L.slice(me.length),L.length}while(!0)}function Pe(){return/[^a-fA-F0-9]/.test(F)?(ee(L.join("")),N=p,E):(L.push(F),I=F,E+1)}function Ee(){return F==="."||/[eE]/.test(F)?(L.push(F),N=S,I=F,E+1):F==="x"&&L.length===1&&L[0]==="0"?(N=c,L.push(F),I=F,E+1):/[^\d]/.test(F)?(ee(L.join("")),N=p,E):(L.push(F),I=F,E+1)}function Ne(){return F==="f"&&(L.push(F),I=F,E+=1),/[eE]/.test(F)||(F==="-"||F==="+")&&/[eE]/.test(I)?(L.push(F),I=F,E+1):/[^\d]/.test(F)?(ee(L.join("")),N=p,E):(L.push(F),I=F,E+1)}function Ue(){if(/[^\d\w_]/.test(F)){var ge=L.join("");return H[ge]?N=d:re[ge]?N=M:N=b,ee(L.join("")),N=p,E}return L.push(F),I=F,E+1}}},5878:function(a,o,i){"use strict";a.exports=f;var l=i(3250),u=i(2014);function s(h,p,_){var m=Math.abs(l(h,p,_)),w=Math.sqrt(Math.pow(p[0]-_[0],2)+Math.pow(p[1]-_[1],2));return m/w}function f(h,p,_){for(var m=p.length,w=h.length,T=new Array(m),y=new Array(m),k=new Array(m),S=new Array(m),b=0;b>1:(q>>1)-1}function D(q){for(var K=A(q);;){var ne=K,Q=2*q+1,oe=2*(q+1),re=q;if(Q0;){var ne=v(q);if(ne>=0){var Q=A(ne);if(K0){var q=I[0];return c(0,O-1),O-=1,D(0),q}return-1}function N(q,K){var ne=I[q];return k[ne]===K?q:(k[ne]=-1/0,E(q),R(),k[ne]=K,O+=1,E(O-1))}function F(q){if(!S[q]){S[q]=!0;var K=T[q],ne=y[q];T[ne]>=0&&(T[ne]=K),y[K]>=0&&(y[K]=ne),L[K]>=0&&N(L[K],g(K)),L[ne]>=0&&N(L[ne],g(ne))}}for(var I=[],L=new Array(m),b=0;b>1;b>=0;--b)D(b);for(;;){var U=R();if(U<0||k[U]>_)break;F(U)}for(var X=[],b=0;b=0&&ne>=0&&K!==ne){var Q=L[K],oe=L[ne];Q!==oe&&Y.push([Q,oe])}}),u.unique(u.normalize(Y)),{positions:X,edges:Y}}},5911:function(a){a.exports=o;function o(i,l,u){var s=l[0],f=l[1],h=l[2],p=u[0],_=u[1],m=u[2];return i[0]=f*m-h*_,i[1]=h*p-s*m,i[2]=s*_-f*p,i}},5964:function(a){"use strict";a.exports=function(o){return!o&&o!==0?"":o.toString()}},5995:function(a,o,i){"use strict";a.exports=s;var l=i(7642),u=i(6037);function s(f,h){return l(h).filter(function(p){for(var _=new Array(p.length),m=0;m2&&v[1]>2&&g(A.pick(-1,-1).lo(1,1).hi(v[0]-2,v[1]-2),c.pick(-1,-1,0).lo(1,1).hi(v[0]-2,v[1]-2),c.pick(-1,-1,1).lo(1,1).hi(v[0]-2,v[1]-2)),v[1]>2&&(x(A.pick(0,-1).lo(1).hi(v[1]-2),c.pick(0,-1,1).lo(1).hi(v[1]-2)),d(c.pick(0,-1,0).lo(1).hi(v[1]-2))),v[1]>2&&(x(A.pick(v[0]-1,-1).lo(1).hi(v[1]-2),c.pick(v[0]-1,-1,1).lo(1).hi(v[1]-2)),d(c.pick(v[0]-1,-1,0).lo(1).hi(v[1]-2))),v[0]>2&&(x(A.pick(-1,0).lo(1).hi(v[0]-2),c.pick(-1,0,0).lo(1).hi(v[0]-2)),d(c.pick(-1,0,1).lo(1).hi(v[0]-2))),v[0]>2&&(x(A.pick(-1,v[1]-1).lo(1).hi(v[0]-2),c.pick(-1,v[1]-1,0).lo(1).hi(v[0]-2)),d(c.pick(-1,v[1]-1,1).lo(1).hi(v[0]-2))),c.set(0,0,0,0),c.set(0,0,1,0),c.set(v[0]-1,0,0,0),c.set(v[0]-1,0,1,0),c.set(0,v[1]-1,0,0),c.set(0,v[1]-1,1,0),c.set(v[0]-1,v[1]-1,0,0),c.set(v[0]-1,v[1]-1,1,0),c}}function b(M){var d=M.join(),v=m[d];if(v)return v;for(var x=M.length,g=[T,y],c=1;c<=x;++c)g.push(k(c));var A=S,v=A.apply(void 0,g);return m[d]=v,v}a.exports=function(d,x,g){if(Array.isArray(g)||(typeof g=="string"?g=l(x.dimension,g):g=l(x.dimension,"clamp")),x.size===0)return d;if(x.dimension===0)return d.set(0),d;var c=b(g);return c(d,x)}},6204:function(a){"use strict";a.exports=o;function o(i){var l,u,s,f=i.length,h=0;for(l=0;lm&&(m=l.length(E)),v&&!A){var R=2*l.distance(M,D)/(l.length(d)+l.length(E));R?(g=Math.min(g,R),c=!1):c=!0}c||(M=D,d=E),x.push(E)}var N=[w,y,S],F=[T,k,b];f&&(f[0]=N,f[1]=F),m===0&&(m=1);var I=1/m;isFinite(g)||(g=1),_.vectorScale=g;var L=s.coneSize||(A?1:.5);s.absoluteConeSize&&(L=s.absoluteConeSize*I),_.coneScale=L;for(var v=0,P=0;vX&&(F|=1<X){F|=1<_[E][1])&&(oe=E);for(var re=-1,E=0;E<3;++E){var H=oe^1<_[ee][0]&&(ee=H)}}var V=S;V[0]=V[1]=V[2]=0,V[l.log2(re^oe)]=oe&re,V[l.log2(oe^ee)]=oeⅇvar te=ee^7;te===F||te===Q?(te=re^7,V[l.log2(ee^te)]=te&ee):V[l.log2(re^te)]=te&re;for(var ue=b,ve=F,P=0;P<3;++P)ve&1<=0&&(_=h.length-p-1);var m=Math.pow(10,_),w=Math.round(s*f*m),T=w+"";if(T.indexOf("e")>=0)return T;var y=w/m,k=w%m;w<0?(y=-Math.ceil(y)|0,k=-k|0):(y=Math.floor(y)|0,k=k|0);var S=""+y;if(w<0&&(S="-"+S),_){for(var b=""+k;b.length<_;)b="0"+b;return S+"."+b}else return S}function l(s,f){for(var h=[],p=0;p<3;++p){for(var _=[],m=.5*(s[0][p]+s[1][p]),w=0;w*f[p]<=s[1][p];++w)_.push({x:w*f[p],text:i(f[p],w)});for(var w=-1;w*f[p]>=s[0][p];--w)_.push({x:w*f[p],text:i(f[p],w)});h.push(_)}return h}function u(s,f){for(var h=0;h<3;++h){if(s[h].length!==f[h].length)return!1;for(var p=0;pM+1)throw new Error(S+" map requires nshades to be at least size "+k.length);Array.isArray(_.alpha)?_.alpha.length!==2?d=[1,1]:d=_.alpha.slice():typeof _.alpha=="number"?d=[_.alpha,_.alpha]:d=[1,1],m=k.map(function(D){return Math.round(D.index*M)}),d[0]=Math.min(Math.max(d[0],0),1),d[1]=Math.min(Math.max(d[1],0),1);var g=k.map(function(D,E){var R=k[E].index,N=k[E].rgb.slice();return N.length===4&&N[3]>=0&&N[3]<=1||(N[3]=d[0]+(d[1]-d[0])*R),N}),c=[];for(x=0;x0&&(h=1/Math.sqrt(h),i[0]=l[0]*h,i[1]=l[1]*h,i[2]=l[2]*h),i}},3545:function(a,o,i){"use strict";a.exports=h;var l=i(8105),u=l("lom&&T[_+b]>M;--d,_-=k){for(var g=_,c=_+k,A=0;A>>1,M=2*p,d=x,_=T[M*x+b];k=D?(d=v,_=D):A>=R?(d=c,_=A):(d=E,_=R):D>=R?(d=v,_=D):R>=A?(d=c,_=A):(d=E,_=R);for(var I=M*(S-1),L=M*d,N=0;Nthis.buffer.length){u.free(this.buffer);for(var S=this.buffer=u.mallocUint8(f(k*y*4)),x=0;xd|0},vertex:function(S,x,M,d,_,g,c,A,v,D,E,R,N){var F=(c<<0)+(A<<1)+(v<<2)+(D<<3)|0;if(!(F===0||F===15))switch(F){case 0:E.push([S-.5,x-.5]);break;case 1:E.push([S-.25-.25*(d+M-2*N)/(M-d),x-.25-.25*(_+M-2*N)/(M-_)]);break;case 2:E.push([S-.75-.25*(-d-M+2*N)/(d-M),x-.25-.25*(g+d-2*N)/(d-g)]);break;case 3:E.push([S-.5,x-.5-.5*(_+M+g+d-4*N)/(M-_+d-g)]);break;case 4:E.push([S-.25-.25*(g+_-2*N)/(_-g),x-.75-.25*(-_-M+2*N)/(_-M)]);break;case 5:E.push([S-.5-.5*(d+M+g+_-4*N)/(M-d+_-g),x-.5]);break;case 6:E.push([S-.5-.25*(-d-M+g+_)/(d-M+_-g),x-.5-.25*(-_-M+g+d)/(_-M+d-g)]);break;case 7:E.push([S-.75-.25*(g+_-2*N)/(_-g),x-.75-.25*(g+d-2*N)/(d-g)]);break;case 8:E.push([S-.75-.25*(-g-_+2*N)/(g-_),x-.75-.25*(-g-d+2*N)/(g-d)]);break;case 9:E.push([S-.5-.25*(d+M+-g-_)/(M-d+g-_),x-.5-.25*(_+M+-g-d)/(M-_+g-d)]);break;case 10:E.push([S-.5-.5*(-d-M+-g-_+4*N)/(d-M+g-_),x-.5]);break;case 11:E.push([S-.25-.25*(-g-_+2*N)/(g-_),x-.75-.25*(_+M-2*N)/(M-_)]);break;case 12:E.push([S-.5,x-.5-.5*(-_-M+-g-d+4*N)/(_-M+g-d)]);break;case 13:E.push([S-.75-.25*(d+M-2*N)/(M-d),x-.25-.25*(-g-d+2*N)/(g-d)]);break;case 14:E.push([S-.25-.25*(-d-M+2*N)/(d-M),x-.25-.25*(-_-M+2*N)/(_-M)]);break;case 15:E.push([S-.5,x-.5]);break}},cell:function(S,x,M,d,_,g,c,A,v){_?A.push([S,x]):A.push([x,S])}});return function(k,S){var x=[],M=[];return y(k,x,M,S),{positions:x,cells:M}}}};function f(m,w){var T=m.length+"d",y=s[T];if(y)return y(l,m,w)}function h(m,w){for(var T=u(m,w),y=T.length,k=new Array(y),S=new Array(y),x=0;x>1,T=-7,y=u?f-1:0,k=u?-1:1,S=i[l+y];for(y+=k,h=S&(1<<-T)-1,S>>=-T,T+=b;T>0;h=h*256+i[l+y],y+=k,T-=8);for(p=h&(1<<-T)-1,h>>=-T,T+=s;T>0;p=p*256+i[l+y],y+=k,T-=8);if(h===0)h=1-w;else{if(h===m)return p?NaN:(S?-1:1)*(1/0);p=p+Math.pow(2,s),h=h-w}return(S?-1:1)*p*Math.pow(2,h-s)},o.write=function(i,l,u,s,f,h){var p,b,m,w=h*8-f-1,T=(1<>1,k=f===23?Math.pow(2,-24)-Math.pow(2,-77):0,S=s?0:h-1,x=s?1:-1,M=l<0||l===0&&1/l<0?1:0;for(l=Math.abs(l),isNaN(l)||l===1/0?(b=isNaN(l)?1:0,p=T):(p=Math.floor(Math.log(l)/Math.LN2),l*(m=Math.pow(2,-p))<1&&(p--,m*=2),p+y>=1?l+=k/m:l+=k*Math.pow(2,1-y),l*m>=2&&(p++,m/=2),p+y>=T?(b=0,p=T):p+y>=1?(b=(l*m-1)*Math.pow(2,f),p=p+y):(b=l*Math.pow(2,y-1)*Math.pow(2,f),p=0));f>=8;i[u+S]=b&255,S+=x,b/=256,f-=8);for(p=p<0;i[u+S]=p&255,S+=x,p/=256,w-=8);i[u+S-x]|=M*128}},3788:function(a,o,i){"use strict";var l=i(8507),u=i(2419);a.exports=s;function s(f,h){return l(f,h)||u(f)-u(h)}},3837:function(a,o,i){"use strict";a.exports=E;var l=i(4935),u=i(501),s=i(5304),f=i(6429),h=i(6444),p=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),b=ArrayBuffer,m=DataView;function w(R){return b.isView(R)&&!(R instanceof m)}function T(R){return Array.isArray(R)||w(R)}function y(R,N){return R[0]=N[0],R[1]=N[1],R[2]=N[2],R}function k(R){this.gl=R,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=s(R)}var S=k.prototype;S.update=function(R){R=R||{};function N(Q,oe,re){if(re in R){var H=R[re],ee=this[re],V;(Q?T(H)&&T(H[0]):T(H))?this[re]=V=[oe(H[0]),oe(H[1]),oe(H[2])]:this[re]=V=[oe(H),oe(H),oe(H)];for(var te=0;te<3;++te)if(V[te]!==ee[te])return!0}return!1}var F=N.bind(this,!1,Number),I=N.bind(this,!1,Boolean),L=N.bind(this,!1,String),P=N.bind(this,!0,function(Q){if(T(Q)){if(Q.length===3)return[+Q[0],+Q[1],+Q[2],1];if(Q.length===4)return[+Q[0],+Q[1],+Q[2],+Q[3]]}return[0,0,0,1]}),O,U=!1,X=!1;if("bounds"in R)for(var $=R.bounds,j=0;j<2;++j)for(var Y=0;Y<3;++Y)$[j][Y]!==this.bounds[j][Y]&&(X=!0),this.bounds[j][Y]=$[j][Y];if("ticks"in R){O=R.ticks,U=!0,this.autoTicks=!1;for(var j=0;j<3;++j)this.tickSpacing[j]=0}else F("tickSpacing")&&(this.autoTicks=!0,X=!0);if(this._firstInit&&("ticks"in R||"tickSpacing"in R||(this.autoTicks=!0),X=!0,U=!0,this._firstInit=!1),X&&this.autoTicks&&(O=h.create(this.bounds,this.tickSpacing),U=!0),U){for(var j=0;j<3;++j)O[j].sort(function(oe,re){return oe.x-re.x});h.equal(O,this.ticks)?U=!1:this.ticks=O}I("tickEnable"),L("tickFont")&&(U=!0),L("tickFontStyle")&&(U=!0),L("tickFontWeight")&&(U=!0),L("tickFontVariant")&&(U=!0),F("tickSize"),F("tickAngle"),F("tickPad"),P("tickColor");var q=L("labels");L("labelFont")&&(q=!0),L("labelFontStyle")&&(q=!0),L("labelFontWeight")&&(q=!0),L("labelFontVariant")&&(q=!0),I("labelEnable"),F("labelSize"),F("labelPad"),P("labelColor"),I("lineEnable"),I("lineMirror"),F("lineWidth"),P("lineColor"),I("lineTickEnable"),I("lineTickMirror"),F("lineTickLength"),F("lineTickWidth"),P("lineTickColor"),I("gridEnable"),F("gridWidth"),P("gridColor"),I("zeroEnable"),P("zeroLineColor"),F("zeroLineWidth"),I("backgroundEnable"),P("backgroundColor");var K=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],ne=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(q||U)&&this._text.update(this.bounds,this.labels,K,this.ticks,ne):this._text=l(this.gl,this.bounds,this.labels,K,this.ticks,ne),this._lines&&U&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=u(this.gl,this.bounds,this.ticks))};function x(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}var M=[new x,new x,new x];function d(R,N,F,I,L){for(var P=R.primalOffset,O=R.primalMinor,U=R.mirrorOffset,X=R.mirrorMinor,$=I[N],j=0;j<3;++j)if(N!==j){var Y=P,q=U,K=O,ne=X;$&1<0?(K[j]=-1,ne[j]=0):(K[j]=0,ne[j]=1)}}var _=[0,0,0],g={model:p,view:p,projection:p,_ortho:!1};S.isOpaque=function(){return!0},S.isTransparent=function(){return!1},S.drawTransparent=function(R){};var c=0,A=[0,0,0],v=[0,0,0],D=[0,0,0];S.draw=function(R){R=R||g;for(var re=this.gl,N=R.model||p,F=R.view||p,I=R.projection||p,L=this.bounds,P=R._ortho||!1,O=f(N,F,I,L,P),U=O.cubeEdges,X=O.axis,$=F[12],j=F[13],Y=F[14],q=F[15],K=P?2:1,ne=K*this.pixelRatio*(I[3]*$+I[7]*j+I[11]*Y+I[15]*q)/re.drawingBufferHeight,Q=0;Q<3;++Q)this.lastCubeProps.cubeEdges[Q]=U[Q],this.lastCubeProps.axis[Q]=X[Q];for(var oe=M,Q=0;Q<3;++Q)d(M[Q],Q,this.bounds,U,X);for(var re=this.gl,H=_,Q=0;Q<3;++Q)this.backgroundEnable[Q]?H[Q]=X[Q]:H[Q]=0;this._background.draw(N,F,I,L,H,this.backgroundColor),this._lines.bind(N,F,I,this);for(var Q=0;Q<3;++Q){var ee=[0,0,0];X[Q]>0?ee[Q]=L[1][Q]:ee[Q]=L[0][Q];for(var V=0;V<2;++V){var te=(Q+1+V)%3,ue=(Q+1+(V^1))%3;this.gridEnable[te]&&this._lines.drawGrid(te,ue,this.bounds,ee,this.gridColor[te],this.gridWidth[te]*this.pixelRatio)}for(var V=0;V<2;++V){var te=(Q+1+V)%3,ue=(Q+1+(V^1))%3;this.zeroEnable[ue]&&Math.min(L[0][ue],L[1][ue])<=0&&Math.max(L[0][ue],L[1][ue])>=0&&this._lines.drawZero(te,ue,this.bounds,ee,this.zeroLineColor[ue],this.zeroLineWidth[ue]*this.pixelRatio)}}for(var Q=0;Q<3;++Q){this.lineEnable[Q]&&this._lines.drawAxisLine(Q,this.bounds,oe[Q].primalOffset,this.lineColor[Q],this.lineWidth[Q]*this.pixelRatio),this.lineMirror[Q]&&this._lines.drawAxisLine(Q,this.bounds,oe[Q].mirrorOffset,this.lineColor[Q],this.lineWidth[Q]*this.pixelRatio);for(var ve=y(A,oe[Q].primalMinor),ke=y(v,oe[Q].mirrorMinor),Se=this.lineTickLength,V=0;V<3;++V){var he=ne/N[5*V];ve[V]*=Se[V]*he,ke[V]*=Se[V]*he}this.lineTickEnable[Q]&&this._lines.drawAxisTicks(Q,oe[Q].primalOffset,ve,this.lineTickColor[Q],this.lineTickWidth[Q]*this.pixelRatio),this.lineTickMirror[Q]&&this._lines.drawAxisTicks(Q,oe[Q].mirrorOffset,ke,this.lineTickColor[Q],this.lineTickWidth[Q]*this.pixelRatio)}this._lines.unbind(),this._text.bind(N,F,I,this.pixelRatio);var Ae,Ce=.5,Pe,Ee;function Ne(ye){Ee=[0,0,0],Ee[ye]=1}function Ue(ye,pe,ce){var xe=(ye+1)%3,Le=(ye+2)%3,qe=pe[xe],ze=pe[Le],$e=ce[xe],Ve=ce[Le];if(qe>0&&Ve>0){Ne(xe);return}else if(qe>0&&Ve<0){Ne(xe);return}else if(qe<0&&Ve>0){Ne(xe);return}else if(qe<0&&Ve<0){Ne(xe);return}else if(ze>0&&$e>0){Ne(Le);return}else if(ze>0&&$e<0){Ne(Le);return}else if(ze<0&&$e>0){Ne(Le);return}else if(ze<0&&$e<0){Ne(Le);return}}for(var Q=0;Q<3;++Q){for(var ge=oe[Q].primalMinor,we=oe[Q].mirrorMinor,Te=y(D,oe[Q].primalOffset),V=0;V<3;++V)this.lineTickEnable[Q]&&(Te[V]+=ne*ge[V]*Math.max(this.lineTickLength[V],0)/N[5*V]);var me=[0,0,0];if(me[Q]=1,this.tickEnable[Q]){this.tickAngle[Q]===-3600?(this.tickAngle[Q]=0,this.tickAlign[Q]="auto"):this.tickAlign[Q]=-1,Pe=1,Ae=[this.tickAlign[Q],Ce,Pe],Ae[0]==="auto"?Ae[0]=c:Ae[0]=parseInt(""+Ae[0]),Ee=[0,0,0],Ue(Q,ge,we);for(var V=0;V<3;++V)Te[V]+=ne*ge[V]*this.tickPad[V]/N[5*V];this._text.drawTicks(Q,this.tickSize[Q],this.tickAngle[Q],Te,this.tickColor[Q],me,Ee,Ae)}if(this.labelEnable[Q]){Pe=0,Ee=[0,0,0],this.labels[Q].length>4&&(Ne(Q),Pe=1),Ae=[this.labelAlign[Q],Ce,Pe],Ae[0]==="auto"?Ae[0]=c:Ae[0]=parseInt(""+Ae[0]);for(var V=0;V<3;++V)Te[V]+=ne*ge[V]*this.labelPad[V]/N[5*V];Te[Q]+=.5*(L[0][Q]+L[1][Q]),this._text.drawLabel(Q,this.labelSize[Q],this.labelAngle[Q],Te,this.labelColor[Q],[0,0,0],Ee,Ae)}}this._text.unbind()},S.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function E(R,N){var F=new k(R);return F.update(N),F}},3840:function(a){"use strict";a.exports=M;var o=0,i=1;function l(d,_,g,c,A,v){this._color=d,this.key=_,this.value=g,this.left=c,this.right=A,this._count=v}function u(d){return new l(d._color,d.key,d.value,d.left,d.right,d._count)}function s(d,_){return new l(d,_.key,_.value,_.left,_.right,_._count)}function f(d){d._count=1+(d.left?d.left._count:0)+(d.right?d.right._count:0)}function h(d,_){this._compare=d,this.root=_}var p=h.prototype;Object.defineProperty(p,"keys",{get:function(){var d=[];return this.forEach(function(_,g){d.push(_)}),d}}),Object.defineProperty(p,"values",{get:function(){var d=[];return this.forEach(function(_,g){d.push(g)}),d}}),Object.defineProperty(p,"length",{get:function(){return this.root?this.root._count:0}}),p.insert=function(d,_){for(var g=this._compare,c=this.root,A=[],v=[];c;){var D=g(d,c.key);A.push(c),v.push(D),D<=0?c=c.left:c=c.right}A.push(new l(o,d,_,null,null,1));for(var E=A.length-2;E>=0;--E){var c=A[E];v[E]<=0?A[E]=new l(c._color,c.key,c.value,A[E+1],c.right,c._count+1):A[E]=new l(c._color,c.key,c.value,c.left,A[E+1],c._count+1)}for(var E=A.length-1;E>1;--E){var R=A[E-1],c=A[E];if(R._color===i||c._color===i)break;var N=A[E-2];if(N.left===R)if(R.left===c){var F=N.right;if(F&&F._color===o)R._color=i,N.right=s(i,F),N._color=o,E-=1;else{if(N._color=o,N.left=R.right,R._color=i,R.right=N,A[E-2]=R,A[E-1]=c,f(N),f(R),E>=3){var I=A[E-3];I.left===N?I.left=R:I.right=R}break}}else{var F=N.right;if(F&&F._color===o)R._color=i,N.right=s(i,F),N._color=o,E-=1;else{if(R.right=c.left,N._color=o,N.left=c.right,c._color=i,c.left=R,c.right=N,A[E-2]=c,A[E-1]=R,f(N),f(R),f(c),E>=3){var I=A[E-3];I.left===N?I.left=c:I.right=c}break}}else if(R.right===c){var F=N.left;if(F&&F._color===o)R._color=i,N.left=s(i,F),N._color=o,E-=1;else{if(N._color=o,N.right=R.left,R._color=i,R.left=N,A[E-2]=R,A[E-1]=c,f(N),f(R),E>=3){var I=A[E-3];I.right===N?I.right=R:I.left=R}break}}else{var F=N.left;if(F&&F._color===o)R._color=i,N.left=s(i,F),N._color=o,E-=1;else{if(R.left=c.right,N._color=o,N.right=c.left,c._color=i,c.right=R,c.left=N,A[E-2]=c,A[E-1]=R,f(N),f(R),f(c),E>=3){var I=A[E-3];I.right===N?I.right=c:I.left=c}break}}}return A[0]._color=i,new h(g,A[0])};function b(d,_){if(_.left){var g=b(d,_.left);if(g)return g}var g=d(_.key,_.value);if(g)return g;if(_.right)return b(d,_.right)}function m(d,_,g,c){var A=_(d,c.key);if(A<=0){if(c.left){var v=m(d,_,g,c.left);if(v)return v}var v=g(c.key,c.value);if(v)return v}if(c.right)return m(d,_,g,c.right)}function w(d,_,g,c,A){var v=g(d,A.key),D=g(_,A.key),E;if(v<=0&&(A.left&&(E=w(d,_,g,c,A.left),E)||D>0&&(E=c(A.key,A.value),E)))return E;if(D>0&&A.right)return w(d,_,g,c,A.right)}p.forEach=function(_,g,c){if(this.root)switch(arguments.length){case 1:return b(_,this.root);case 2:return m(g,this._compare,_,this.root);case 3:return this._compare(g,c)>=0?void 0:w(g,c,this._compare,_,this.root)}},Object.defineProperty(p,"begin",{get:function(){for(var d=[],_=this.root;_;)d.push(_),_=_.left;return new T(this,d)}}),Object.defineProperty(p,"end",{get:function(){for(var d=[],_=this.root;_;)d.push(_),_=_.right;return new T(this,d)}}),p.at=function(d){if(d<0)return new T(this,[]);for(var _=this.root,g=[];;){if(g.push(_),_.left){if(d<_.left._count){_=_.left;continue}d-=_.left._count}if(!d)return new T(this,g);if(d-=1,_.right){if(d>=_.right._count)break;_=_.right}else break}return new T(this,[])},p.ge=function(d){for(var _=this._compare,g=this.root,c=[],A=0;g;){var v=_(d,g.key);c.push(g),v<=0&&(A=c.length),v<=0?g=g.left:g=g.right}return c.length=A,new T(this,c)},p.gt=function(d){for(var _=this._compare,g=this.root,c=[],A=0;g;){var v=_(d,g.key);c.push(g),v<0&&(A=c.length),v<0?g=g.left:g=g.right}return c.length=A,new T(this,c)},p.lt=function(d){for(var _=this._compare,g=this.root,c=[],A=0;g;){var v=_(d,g.key);c.push(g),v>0&&(A=c.length),v<=0?g=g.left:g=g.right}return c.length=A,new T(this,c)},p.le=function(d){for(var _=this._compare,g=this.root,c=[],A=0;g;){var v=_(d,g.key);c.push(g),v>=0&&(A=c.length),v<0?g=g.left:g=g.right}return c.length=A,new T(this,c)},p.find=function(d){for(var _=this._compare,g=this.root,c=[];g;){var A=_(d,g.key);if(c.push(g),A===0)return new T(this,c);A<=0?g=g.left:g=g.right}return new T(this,[])},p.remove=function(d){var _=this.find(d);return _?_.remove():this},p.get=function(d){for(var _=this._compare,g=this.root;g;){var c=_(d,g.key);if(c===0)return g.value;c<=0?g=g.left:g=g.right}};function T(d,_){this.tree=d,this._stack=_}var y=T.prototype;Object.defineProperty(y,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(y,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),y.clone=function(){return new T(this.tree,this._stack.slice())};function k(d,_){d.key=_.key,d.value=_.value,d.left=_.left,d.right=_.right,d._color=_._color,d._count=_._count}function S(d){for(var _,g,c,A,v=d.length-1;v>=0;--v){if(_=d[v],v===0){_._color=i;return}if(g=d[v-1],g.left===_){if(c=g.right,c.right&&c.right._color===o){if(c=g.right=u(c),A=c.right=u(c.right),g.right=c.left,c.left=g,c.right=A,c._color=g._color,_._color=i,g._color=i,A._color=i,f(g),f(c),v>1){var D=d[v-2];D.left===g?D.left=c:D.right=c}d[v-1]=c;return}else if(c.left&&c.left._color===o){if(c=g.right=u(c),A=c.left=u(c.left),g.right=A.left,c.left=A.right,A.left=g,A.right=c,A._color=g._color,g._color=i,c._color=i,_._color=i,f(g),f(c),f(A),v>1){var D=d[v-2];D.left===g?D.left=A:D.right=A}d[v-1]=A;return}if(c._color===i)if(g._color===o){g._color=i,g.right=s(o,c);return}else{g.right=s(o,c);continue}else{if(c=u(c),g.right=c.left,c.left=g,c._color=g._color,g._color=o,f(g),f(c),v>1){var D=d[v-2];D.left===g?D.left=c:D.right=c}d[v-1]=c,d[v]=g,v+11){var D=d[v-2];D.right===g?D.right=c:D.left=c}d[v-1]=c;return}else if(c.right&&c.right._color===o){if(c=g.left=u(c),A=c.right=u(c.right),g.left=A.right,c.right=A.left,A.right=g,A.left=c,A._color=g._color,g._color=i,c._color=i,_._color=i,f(g),f(c),f(A),v>1){var D=d[v-2];D.right===g?D.right=A:D.left=A}d[v-1]=A;return}if(c._color===i)if(g._color===o){g._color=i,g.left=s(o,c);return}else{g.left=s(o,c);continue}else{if(c=u(c),g.left=c.right,c.right=g,c._color=g._color,g._color=o,f(g),f(c),v>1){var D=d[v-2];D.right===g?D.right=c:D.left=c}d[v-1]=c,d[v]=g,v+1=0;--c){var g=d[c];g.left===d[c+1]?_[c]=new l(g._color,g.key,g.value,_[c+1],g.right,g._count):_[c]=new l(g._color,g.key,g.value,g.left,_[c+1],g._count)}if(g=_[_.length-1],g.left&&g.right){var A=_.length;for(g=g.left;g.right;)_.push(g),g=g.right;var v=_[A-1];_.push(new l(g._color,v.key,v.value,g.left,g.right,g._count)),_[A-1].key=g.key,_[A-1].value=g.value;for(var c=_.length-2;c>=A;--c)g=_[c],_[c]=new l(g._color,g.key,g.value,g.left,_[c+1],g._count);_[A-1].left=_[A]}if(g=_[_.length-1],g._color===o){var D=_[_.length-2];D.left===g?D.left=null:D.right===g&&(D.right=null),_.pop();for(var c=0;c<_.length;++c)_[c]._count--;return new h(this.tree._compare,_[0])}else if(g.left||g.right){g.left?k(g,g.left):g.right&&k(g,g.right),g._color=i;for(var c=0;c<_.length-1;++c)_[c]._count--;return new h(this.tree._compare,_[0])}else{if(_.length===1)return new h(this.tree._compare,null);for(var c=0;c<_.length;++c)_[c]._count--;var E=_[_.length-2];S(_),E.left===g?E.left=null:E.right=null}return new h(this.tree._compare,_[0])},Object.defineProperty(y,"key",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(y,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(y,"index",{get:function(){var d=0,_=this._stack;if(_.length===0){var g=this.tree.root;return g?g._count:0}else _[_.length-1].left&&(d=_[_.length-1].left._count);for(var c=_.length-2;c>=0;--c)_[c+1]===_[c].right&&(++d,_[c].left&&(d+=_[c].left._count));return d},enumerable:!0}),y.next=function(){var d=this._stack;if(d.length!==0){var _=d[d.length-1];if(_.right)for(_=_.right;_;)d.push(_),_=_.left;else for(d.pop();d.length>0&&d[d.length-1].right===_;)_=d[d.length-1],d.pop()}},Object.defineProperty(y,"hasNext",{get:function(){var d=this._stack;if(d.length===0)return!1;if(d[d.length-1].right)return!0;for(var _=d.length-1;_>0;--_)if(d[_-1].left===d[_])return!0;return!1}}),y.update=function(d){var _=this._stack;if(_.length===0)throw new Error("Can't update empty node!");var g=new Array(_.length),c=_[_.length-1];g[g.length-1]=new l(c._color,c.key,d,c.left,c.right,c._count);for(var A=_.length-2;A>=0;--A)c=_[A],c.left===_[A+1]?g[A]=new l(c._color,c.key,c.value,g[A+1],c.right,c._count):g[A]=new l(c._color,c.key,c.value,c.left,g[A+1],c._count);return new h(this.tree._compare,g[0])},y.prev=function(){var d=this._stack;if(d.length!==0){var _=d[d.length-1];if(_.left)for(_=_.left;_;)d.push(_),_=_.right;else for(d.pop();d.length>0&&d[d.length-1].left===_;)_=d[d.length-1],d.pop()}},Object.defineProperty(y,"hasPrev",{get:function(){var d=this._stack;if(d.length===0)return!1;if(d[d.length-1].left)return!0;for(var _=d.length-1;_>0;--_)if(d[_-1].right===d[_])return!0;return!1}});function x(d,_){return d<_?-1:d>_?1:0}function M(d){return new h(d||x,null)}},3865:function(a,o,i){"use strict";var l=i(869);a.exports=u;function u(s,f){return l(s[0].mul(f[1]).add(f[0].mul(s[1])),s[1].mul(f[1]))}},3952:function(a,o,i){"use strict";a.exports=s;var l=i(3250);function u(f,h){for(var p=new Array(h+1),b=0;b20?52:p+32}},4040:function(a){a.exports=o;function o(i,l,u,s,f,h,p){var b=1/(l-u),m=1/(s-f),w=1/(h-p);return i[0]=-2*b,i[1]=0,i[2]=0,i[3]=0,i[4]=0,i[5]=-2*m,i[6]=0,i[7]=0,i[8]=0,i[9]=0,i[10]=2*w,i[11]=0,i[12]=(l+u)*b,i[13]=(f+s)*m,i[14]=(p+h)*w,i[15]=1,i}},4041:function(a){a.exports=o;function o(i,l,u){var s=l[0],f=l[1],h=l[2],p=u[0],b=u[1],m=u[2],w=u[3],T=w*s+b*h-m*f,y=w*f+m*s-p*h,k=w*h+p*f-b*s,S=-p*s-b*f-m*h;return i[0]=T*w+S*-p+y*-m-k*-b,i[1]=y*w+S*-b+k*-p-T*-m,i[2]=k*w+S*-m+T*-b-y*-p,i[3]=l[3],i}},4081:function(a){"use strict";a.exports=o;function o(i,l,u,s,f,h,p,b,m,w){var T=l+h+w;if(y>0){var y=Math.sqrt(T+1);i[0]=.5*(p-m)/y,i[1]=.5*(b-s)/y,i[2]=.5*(u-h)/y,i[3]=.5*y}else{var k=Math.max(l,h,w),y=Math.sqrt(2*k-T+1);l>=k?(i[0]=.5*y,i[1]=.5*(f+u)/y,i[2]=.5*(b+s)/y,i[3]=.5*(p-m)/y):h>=k?(i[0]=.5*(u+f)/y,i[1]=.5*y,i[2]=.5*(m+p)/y,i[3]=.5*(b-s)/y):(i[0]=.5*(s+b)/y,i[1]=.5*(p+m)/y,i[2]=.5*y,i[3]=.5*(u-f)/y)}return i}},4100:function(a,o,i){"use strict";var l=i(4437),u=i(3837),s=i(5445),f=i(4449),h=i(3589),p=i(2260),b=i(7169),m=i(351),w=i(4772),T=i(4040),y=i(799),k=i(9216)({tablet:!0,featureDetect:!0});a.exports={createScene:_,createCamera:l};function S(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function x(c,A){var v=null;try{v=c.getContext("webgl",A),v||(v=c.getContext("experimental-webgl",A))}catch(D){return null}return v}function M(c){var A=Math.round(Math.log(Math.abs(c))/Math.log(10));if(A<0){var v=Math.round(Math.pow(10,-A));return Math.ceil(c*v)/v}else if(A>0){var v=Math.round(Math.pow(10,A));return Math.ceil(c/v)*v}return Math.ceil(c)}function d(c){return typeof c=="boolean"?c:!0}function _(c){c=c||{},c.camera=c.camera||{};var A=c.canvas;if(!A)if(A=document.createElement("canvas"),c.container){var v=c.container;v.appendChild(A)}else document.body.appendChild(A);var D=c.gl;if(D||(c.glOptions&&(k=!!c.glOptions.preserveDrawingBuffer),D=x(A,c.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:k})),!D)throw new Error("webgl not supported");var E=c.bounds||[[-10,-10,-10],[10,10,10]],R=new S,N=p(D,D.drawingBufferWidth,D.drawingBufferHeight,{preferFloat:!k}),F=y(D),I=c.cameraObject&&c.cameraObject._ortho===!0||c.camera.projection&&c.camera.projection.type==="orthographic"||!1,L={eye:c.camera.eye||[2,0,0],center:c.camera.center||[0,0,0],up:c.camera.up||[0,1,0],zoomMin:c.camera.zoomMax||.1,zoomMax:c.camera.zoomMin||100,mode:c.camera.mode||"turntable",_ortho:I},P=c.axes||{},O=u(D,P);O.enable=!P.disable;var U=c.spikes||{},X=f(D,U),$=[],j=[],Y=[],q=[],K=!0,re=!0,ne=new Array(16),Q=new Array(16),oe={view:null,projection:ne,model:Q,_ortho:!1},re=!0,H=[D.drawingBufferWidth,D.drawingBufferHeight],ee=c.cameraObject||l(A,L),V={gl:D,contextLost:!1,pixelRatio:c.pixelRatio||1,canvas:A,selection:R,camera:ee,axes:O,axesPixels:null,spikes:X,bounds:E,objects:$,shape:H,aspect:c.aspectRatio||[1,1,1],pickRadius:c.pickRadius||10,zNear:c.zNear||.01,zFar:c.zFar||1e3,fovy:c.fovy||Math.PI/4,clearColor:c.clearColor||[0,0,0,0],autoResize:d(c.autoResize),autoBounds:d(c.autoBounds),autoScale:!!c.autoScale,autoCenter:d(c.autoCenter),clipToBounds:d(c.clipToBounds),snapToData:!!c.snapToData,onselect:c.onselect||null,onrender:c.onrender||null,onclick:c.onclick||null,cameraParams:oe,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(Ee){this.aspect[0]=Ee.x,this.aspect[1]=Ee.y,this.aspect[2]=Ee.z,re=!0},setBounds:function(Ee,Ne){this.bounds[0][Ee]=Ne.min,this.bounds[1][Ee]=Ne.max},setClearColor:function(Ee){this.clearColor=Ee},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},te=[D.drawingBufferWidth/V.pixelRatio|0,D.drawingBufferHeight/V.pixelRatio|0];function ue(){if(!V._stopped&&V.autoResize){var Ee=A.parentNode,Ne=1,Ue=1;Ee&&Ee!==document.body?(Ne=Ee.clientWidth,Ue=Ee.clientHeight):(Ne=window.innerWidth,Ue=window.innerHeight);var ge=Math.ceil(Ne*V.pixelRatio)|0,we=Math.ceil(Ue*V.pixelRatio)|0;if(ge!==A.width||we!==A.height){A.width=ge,A.height=we;var Te=A.style;Te.position=Te.position||"absolute",Te.left="0px",Te.top="0px",Te.width=Ne+"px",Te.height=Ue+"px",K=!0}}}V.autoResize&&ue(),window.addEventListener("resize",ue);function ve(){for(var Ee=$.length,Ne=q.length,Ue=0;Ue0&&Y[Ne-1]===0;)Y.pop(),q.pop().dispose()}V.update=function(Ee){V._stopped||(Ee=Ee||{},K=!0,re=!0)},V.add=function(Ee){V._stopped||(Ee.axes=O,$.push(Ee),j.push(-1),K=!0,re=!0,ve())},V.remove=function(Ee){if(!V._stopped){var Ne=$.indexOf(Ee);Ne<0||($.splice(Ne,1),j.pop(),K=!0,re=!0,ve())}},V.dispose=function(){if(!V._stopped&&(V._stopped=!0,window.removeEventListener("resize",ue),A.removeEventListener("webglcontextlost",ke),V.mouseListener.enabled=!1,!V.contextLost)){O.dispose(),X.dispose();for(var Ee=0;Ee<$.length;++Ee)$[Ee].dispose();N.dispose();for(var Ee=0;EeR.distance)continue;for(var ce=0;cew;){var g=y[_-2],c=y[_-1];if(gy[T+1]:!0}function b(w,T,y,k){w*=2;var S=k[w];return S>1,d=M-k,_=M+k,g=S,c=d,A=M,v=_,D=x,E=w+1,R=T-1,N=0;p(g,c,y)&&(N=g,g=c,c=N),p(v,D,y)&&(N=v,v=D,D=N),p(g,A,y)&&(N=g,g=A,A=N),p(c,A,y)&&(N=c,c=A,A=N),p(g,v,y)&&(N=g,g=v,v=N),p(A,v,y)&&(N=A,A=v,v=N),p(c,D,y)&&(N=c,c=D,D=N),p(c,A,y)&&(N=c,c=A,A=N),p(v,D,y)&&(N=v,v=D,D=N);for(var F=y[2*c],I=y[2*c+1],L=y[2*v],P=y[2*v+1],O=2*g,U=2*A,X=2*D,$=2*S,j=2*M,Y=2*x,q=0;q<2;++q){var K=y[O+q],ne=y[U+q],Q=y[X+q];y[$+q]=K,y[j+q]=ne,y[Y+q]=Q}s(d,w,y),s(_,T,y);for(var oe=E;oe<=R;++oe)if(b(oe,F,I,y))oe!==E&&u(oe,E,y),++E;else if(!b(oe,L,P,y))for(;;)if(b(R,L,P,y)){b(R,F,I,y)?(f(oe,E,R,y),++E,--R):(u(oe,R,y),--R);break}else{if(--R0)if(S[0]!==M[1][0])x=k,k=k.right;else{var c=m(k.right,S);if(c)return c;k=k.left}else{if(S[0]!==M[1][0])return k;var c=m(k.right,S);if(c)return c;k=k.left}}return x}p.castUp=function(k){var S=l.le(this.coordinates,k[0]);if(S<0)return-1;var x=this.slabs[S],M=m(this.slabs[S],k),d=-1;if(M&&(d=M.value),this.coordinates[S]===k[0]){var _=null;if(M&&(_=M.key),S>0){var g=m(this.slabs[S-1],k);g&&(_?f(g.key,_)>0&&(_=g.key,d=g.value):(d=g.value,_=g.key))}var c=this.horizontal[S];if(c.length>0){var A=l.ge(c,k[1],b);if(A=c.length)return d;v=c[A]}}if(v.start)if(_){var D=s(_[0],_[1],[k[0],v.y]);_[0][0]>_[1][0]&&(D=-D),D>0&&(d=v.index)}else d=v.index;else v.y!==k[1]&&(d=v.index)}}}return d};function w(k,S,x,M){this.y=k,this.index=S,this.start=x,this.closed=M}function T(k,S,x,M){this.x=k,this.segment=S,this.create=x,this.index=M}function y(k){for(var S=k.length,x=2*S,M=new Array(x),d=0;dMath.abs(c))y.rotate(D,0,0,-g*A*Math.PI*d.rotateSpeed/window.innerWidth);else if(!d._ortho){var E=-d.zoomSpeed*v*c/window.innerHeight*(D-y.lastT())/20;y.pan(D,0,0,S*(Math.exp(E)-1))}}},!0)},d.enableMouseListeners(),d}},4449:function(a,o,i){"use strict";var l=i(2762),u=i(8116),s=i(1493);a.exports=T;var f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function h(y,k,S,x){this.gl=y,this.buffer=k,this.vao=S,this.shader=x,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var p=h.prototype,b=[0,0,0],m=[0,0,0],w=[0,0];p.isTransparent=function(){return!1},p.drawTransparent=function(y){},p.draw=function(y){var k=this.gl,S=this.vao,x=this.shader;S.bind(),x.bind();var M=y.model||f,d=y.view||f,_=y.projection||f,g;this.axes&&(g=this.axes.lastCubeProps.axis);for(var c=b,A=m,v=0;v<3;++v)g&&g[v]<0?(c[v]=this.bounds[0][v],A[v]=this.bounds[1][v]):(c[v]=this.bounds[1][v],A[v]=this.bounds[0][v]);w[0]=k.drawingBufferWidth,w[1]=k.drawingBufferHeight,x.uniforms.model=M,x.uniforms.view=d,x.uniforms.projection=_,x.uniforms.coordinates=[this.position,c,A],x.uniforms.colors=this.colors,x.uniforms.screenShape=w;for(var v=0;v<3;++v)x.uniforms.lineWidth=this.lineWidth[v]*this.pixelRatio,this.enabled[v]&&(S.draw(k.TRIANGLES,6,6*v),this.drawSides[v]&&S.draw(k.TRIANGLES,12,18+12*v));S.unbind()},p.update=function(y){y&&("bounds"in y&&(this.bounds=y.bounds),"position"in y&&(this.position=y.position),"lineWidth"in y&&(this.lineWidth=y.lineWidth),"colors"in y&&(this.colors=y.colors),"enabled"in y&&(this.enabled=y.enabled),"drawSides"in y&&(this.drawSides=y.drawSides))},p.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function T(y,k){var S=[];function x(c,A,v,D,E,R){var N=[c,A,v,0,0,0,1];N[D+3]=1,N[D]=E,S.push.apply(S,N),N[6]=-1,S.push.apply(S,N),N[D]=R,S.push.apply(S,N),S.push.apply(S,N),N[6]=1,S.push.apply(S,N),N[D]=E,S.push.apply(S,N)}x(0,0,0,0,0,1),x(0,0,0,1,0,1),x(0,0,0,2,0,1),x(1,0,0,1,-1,1),x(1,0,0,2,-1,1),x(0,1,0,0,-1,1),x(0,1,0,2,-1,1),x(0,0,1,0,-1,1),x(0,0,1,1,-1,1);var M=l(y,S),d=u(y,[{type:y.FLOAT,buffer:M,size:3,offset:0,stride:28},{type:y.FLOAT,buffer:M,size:3,offset:12,stride:28},{type:y.FLOAT,buffer:M,size:1,offset:24,stride:28}]),_=s(y);_.attributes.position.location=0,_.attributes.color.location=1,_.attributes.weight.location=2;var g=new h(y,M,d,_);return g.update(k),g}},4494:function(a){a.exports=o;function o(i,l){return i[0]=1/l[0],i[1]=1/l[1],i[2]=1/l[2],i[3]=1/l[3],i}},4505:function(a,o,i){a.exports=i(5847)},4578:function(a){a.exports=o;function o(i,l,u,s,f){return i[0]=l,i[1]=u,i[2]=s,i[3]=f,i}},4623:function(a){"use strict";"use restrict";a.exports=o;function o(i){this.roots=new Array(i),this.ranks=new Array(i);for(var l=0;l0)return 1<=0)return 1<=0;--y)p[y]=b*l[y]+m*u[y]+w*s[y]+T*f[y];return p}return b*l+m*u+w*s[y]+T*f}function i(l,u,s,f,h,p){var b=h-1,m=h*h,w=b*b,T=(1+2*h)*w,y=h*w,k=m*(3-2*h),S=m*b;if(l.length){p||(p=new Array(l.length));for(var x=l.length-1;x>=0;--x)p[x]=T*l[x]+y*u[x]+k*s[x]+S*f[x];return p}return T*l+y*u+k*s+S*f}a.exports=i,a.exports.derivative=o},4772:function(a){a.exports=o;function o(i,l,u,s,f){var h=1/Math.tan(l/2),p=1/(s-f);return i[0]=h/u,i[1]=0,i[2]=0,i[3]=0,i[4]=0,i[5]=h,i[6]=0,i[7]=0,i[8]=0,i[9]=0,i[10]=(f+s)*p,i[11]=-1,i[12]=0,i[13]=0,i[14]=2*f*s*p,i[15]=0,i}},4793:function(a,o,i){"use strict";var l;function u(se,J){if(!(se instanceof J))throw new TypeError("Cannot call a class as a function")}function s(se,J){for(var ae=0;aeg)throw new RangeError('The value "'+se+'" is invalid for option "size"');var J=new Uint8Array(se);return Object.setPrototypeOf(J,v.prototype),J}function v(se,J,ae){if(typeof se=="number"){if(typeof J=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return N(se)}return D(se,J,ae)}v.poolSize=8192;function D(se,J,ae){if(typeof se=="string")return F(se,J);if(ArrayBuffer.isView(se))return L(se);if(se==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+x(se));if(Me(se,ArrayBuffer)||se&&Me(se.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(Me(se,SharedArrayBuffer)||se&&Me(se.buffer,SharedArrayBuffer)))return P(se,J,ae);if(typeof se=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var De=se.valueOf&&se.valueOf();if(De!=null&&De!==se)return v.from(De,J,ae);var He=O(se);if(He)return He;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof se[Symbol.toPrimitive]=="function")return v.from(se[Symbol.toPrimitive]("string"),J,ae);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+x(se))}v.from=function(se,J,ae){return D(se,J,ae)},Object.setPrototypeOf(v.prototype,Uint8Array.prototype),Object.setPrototypeOf(v,Uint8Array);function E(se){if(typeof se!="number")throw new TypeError('"size" argument must be of type number');if(se<0)throw new RangeError('The value "'+se+'" is invalid for option "size"')}function R(se,J,ae){return E(se),se<=0?A(se):J!==void 0?typeof ae=="string"?A(se).fill(J,ae):A(se).fill(J):A(se)}v.alloc=function(se,J,ae){return R(se,J,ae)};function N(se){return E(se),A(se<0?0:U(se)|0)}v.allocUnsafe=function(se){return N(se)},v.allocUnsafeSlow=function(se){return N(se)};function F(se,J){if((typeof J!="string"||J==="")&&(J="utf8"),!v.isEncoding(J))throw new TypeError("Unknown encoding: "+J);var ae=$(se,J)|0,De=A(ae),He=De.write(se,J);return He!==ae&&(De=De.slice(0,He)),De}function I(se){for(var J=se.length<0?0:U(se.length)|0,ae=A(J),De=0;De=g)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+g.toString(16)+" bytes");return se|0}function X(se){return+se!=se&&(se=0),v.alloc(+se)}v.isBuffer=function(J){return J!=null&&J._isBuffer===!0&&J!==v.prototype},v.compare=function(J,ae){if(Me(J,Uint8Array)&&(J=v.from(J,J.offset,J.byteLength)),Me(ae,Uint8Array)&&(ae=v.from(ae,ae.offset,ae.byteLength)),!v.isBuffer(J)||!v.isBuffer(ae))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(J===ae)return 0;for(var De=J.length,He=ae.length,er=0,nr=Math.min(De,He);erHe.length?(v.isBuffer(nr)||(nr=v.from(nr)),nr.copy(He,er)):Uint8Array.prototype.set.call(He,nr,er);else if(v.isBuffer(nr))nr.copy(He,er);else throw new TypeError('"list" argument must be an Array of Buffers');er+=nr.length}return He};function $(se,J){if(v.isBuffer(se))return se.length;if(ArrayBuffer.isView(se)||Me(se,ArrayBuffer))return se.byteLength;if(typeof se!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+x(se));var ae=se.length,De=arguments.length>2&&arguments[2]===!0;if(!De&&ae===0)return 0;for(var He=!1;;)switch(J){case"ascii":case"latin1":case"binary":return ae;case"utf8":case"utf-8":return ze(se).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ae*2;case"hex":return ae>>>1;case"base64":return Be(se).length;default:if(He)return De?-1:ze(se).length;J=(""+J).toLowerCase(),He=!0}}v.byteLength=$;function j(se,J,ae){var De=!1;if((J===void 0||J<0)&&(J=0),J>this.length||((ae===void 0||ae>this.length)&&(ae=this.length),ae<=0)||(ae>>>=0,J>>>=0,ae<=J))return"";for(se||(se="utf8");;)switch(se){case"hex":return Se(this,J,ae);case"utf8":case"utf-8":return V(this,J,ae);case"ascii":return ve(this,J,ae);case"latin1":case"binary":return ke(this,J,ae);case"base64":return ee(this,J,ae);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return he(this,J,ae);default:if(De)throw new TypeError("Unknown encoding: "+se);se=(se+"").toLowerCase(),De=!0}}v.prototype._isBuffer=!0;function Y(se,J,ae){var De=se[J];se[J]=se[ae],se[ae]=De}v.prototype.swap16=function(){var J=this.length;if(J%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var ae=0;aeae&&(J+=" ... "),""},_&&(v.prototype[_]=v.prototype.inspect),v.prototype.compare=function(J,ae,De,He,er){if(Me(J,Uint8Array)&&(J=v.from(J,J.offset,J.byteLength)),!v.isBuffer(J))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+x(J));if(ae===void 0&&(ae=0),De===void 0&&(De=J?J.length:0),He===void 0&&(He=0),er===void 0&&(er=this.length),ae<0||De>J.length||He<0||er>this.length)throw new RangeError("out of range index");if(He>=er&&ae>=De)return 0;if(He>=er)return-1;if(ae>=De)return 1;if(ae>>>=0,De>>>=0,He>>>=0,er>>>=0,this===J)return 0;for(var nr=er-He,fr=De-ae,br=Math.min(nr,fr),Sr=this.slice(He,er),Mr=J.slice(ae,De),Ar=0;Ar2147483647?ae=2147483647:ae<-2147483648&&(ae=-2147483648),ae=+ae,Re(ae)&&(ae=He?0:se.length-1),ae<0&&(ae=se.length+ae),ae>=se.length){if(He)return-1;ae=se.length-1}else if(ae<0)if(He)ae=0;else return-1;if(typeof J=="string"&&(J=v.from(J,De)),v.isBuffer(J))return J.length===0?-1:K(se,J,ae,De,He);if(typeof J=="number")return J=J&255,typeof Uint8Array.prototype.indexOf=="function"?He?Uint8Array.prototype.indexOf.call(se,J,ae):Uint8Array.prototype.lastIndexOf.call(se,J,ae):K(se,[J],ae,De,He);throw new TypeError("val must be string, number or Buffer")}function K(se,J,ae,De,He){var er=1,nr=se.length,fr=J.length;if(De!==void 0&&(De=String(De).toLowerCase(),De==="ucs2"||De==="ucs-2"||De==="utf16le"||De==="utf-16le")){if(se.length<2||J.length<2)return-1;er=2,nr/=2,fr/=2,ae/=2}function br(sr,Pr){return er===1?sr[Pr]:sr.readUInt16BE(Pr*er)}var Sr;if(He){var Mr=-1;for(Sr=ae;Srnr&&(ae=nr-fr),Sr=ae;Sr>=0;Sr--){for(var Ar=!0,ft=0;ftHe&&(De=He)):De=He;var er=J.length;De>er/2&&(De=er/2);var nr;for(nr=0;nr>>0,isFinite(De)?(De=De>>>0,He===void 0&&(He="utf8")):(He=De,De=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var er=this.length-ae;if((De===void 0||De>er)&&(De=er),J.length>0&&(De<0||ae<0)||ae>this.length)throw new RangeError("Attempt to write outside buffer bounds");He||(He="utf8");for(var nr=!1;;)switch(He){case"hex":return ne(this,J,ae,De);case"utf8":case"utf-8":return Q(this,J,ae,De);case"ascii":case"latin1":case"binary":return oe(this,J,ae,De);case"base64":return re(this,J,ae,De);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return H(this,J,ae,De);default:if(nr)throw new TypeError("Unknown encoding: "+He);He=(""+He).toLowerCase(),nr=!0}},v.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function ee(se,J,ae){return J===0&&ae===se.length?M.fromByteArray(se):M.fromByteArray(se.slice(J,ae))}function V(se,J,ae){ae=Math.min(se.length,ae);for(var De=[],He=J;He239?4:er>223?3:er>191?2:1;if(He+fr<=ae){var br=void 0,Sr=void 0,Mr=void 0,Ar=void 0;switch(fr){case 1:er<128&&(nr=er);break;case 2:br=se[He+1],(br&192)===128&&(Ar=(er&31)<<6|br&63,Ar>127&&(nr=Ar));break;case 3:br=se[He+1],Sr=se[He+2],(br&192)===128&&(Sr&192)===128&&(Ar=(er&15)<<12|(br&63)<<6|Sr&63,Ar>2047&&(Ar<55296||Ar>57343)&&(nr=Ar));break;case 4:br=se[He+1],Sr=se[He+2],Mr=se[He+3],(br&192)===128&&(Sr&192)===128&&(Mr&192)===128&&(Ar=(er&15)<<18|(br&63)<<12|(Sr&63)<<6|Mr&63,Ar>65535&&Ar<1114112&&(nr=Ar))}}nr===null?(nr=65533,fr=1):nr>65535&&(nr-=65536,De.push(nr>>>10&1023|55296),nr=56320|nr&1023),De.push(nr),He+=fr}return ue(De)}var te=4096;function ue(se){var J=se.length;if(J<=te)return String.fromCharCode.apply(String,se);for(var ae="",De=0;DeDe)&&(ae=De);for(var He="",er=J;erDe&&(J=De),ae<0?(ae+=De,ae<0&&(ae=0)):ae>De&&(ae=De),aeae)throw new RangeError("Trying to access beyond buffer length")}v.prototype.readUintLE=v.prototype.readUIntLE=function(J,ae,De){J=J>>>0,ae=ae>>>0,De||Ae(J,ae,this.length);for(var He=this[J],er=1,nr=0;++nr>>0,ae=ae>>>0,De||Ae(J,ae,this.length);for(var He=this[J+--ae],er=1;ae>0&&(er*=256);)He+=this[J+--ae]*er;return He},v.prototype.readUint8=v.prototype.readUInt8=function(J,ae){return J=J>>>0,ae||Ae(J,1,this.length),this[J]},v.prototype.readUint16LE=v.prototype.readUInt16LE=function(J,ae){return J=J>>>0,ae||Ae(J,2,this.length),this[J]|this[J+1]<<8},v.prototype.readUint16BE=v.prototype.readUInt16BE=function(J,ae){return J=J>>>0,ae||Ae(J,2,this.length),this[J]<<8|this[J+1]},v.prototype.readUint32LE=v.prototype.readUInt32LE=function(J,ae){return J=J>>>0,ae||Ae(J,4,this.length),(this[J]|this[J+1]<<8|this[J+2]<<16)+this[J+3]*16777216},v.prototype.readUint32BE=v.prototype.readUInt32BE=function(J,ae){return J=J>>>0,ae||Ae(J,4,this.length),this[J]*16777216+(this[J+1]<<16|this[J+2]<<8|this[J+3])},v.prototype.readBigUInt64LE=Ke(function(J){J=J>>>0,ce(J,"offset");var ae=this[J],De=this[J+7];(ae===void 0||De===void 0)&&xe(J,this.length-8);var He=ae+this[++J]*Math.pow(2,8)+this[++J]*Math.pow(2,16)+this[++J]*Math.pow(2,24),er=this[++J]+this[++J]*Math.pow(2,8)+this[++J]*Math.pow(2,16)+De*Math.pow(2,24);return BigInt(He)+(BigInt(er)<>>0,ce(J,"offset");var ae=this[J],De=this[J+7];(ae===void 0||De===void 0)&&xe(J,this.length-8);var He=ae*Math.pow(2,24)+this[++J]*Math.pow(2,16)+this[++J]*Math.pow(2,8)+this[++J],er=this[++J]*Math.pow(2,24)+this[++J]*Math.pow(2,16)+this[++J]*Math.pow(2,8)+De;return(BigInt(He)<>>0,ae=ae>>>0,De||Ae(J,ae,this.length);for(var He=this[J],er=1,nr=0;++nr=er&&(He-=Math.pow(2,8*ae)),He},v.prototype.readIntBE=function(J,ae,De){J=J>>>0,ae=ae>>>0,De||Ae(J,ae,this.length);for(var He=ae,er=1,nr=this[J+--He];He>0&&(er*=256);)nr+=this[J+--He]*er;return er*=128,nr>=er&&(nr-=Math.pow(2,8*ae)),nr},v.prototype.readInt8=function(J,ae){return J=J>>>0,ae||Ae(J,1,this.length),this[J]&128?(255-this[J]+1)*-1:this[J]},v.prototype.readInt16LE=function(J,ae){J=J>>>0,ae||Ae(J,2,this.length);var De=this[J]|this[J+1]<<8;return De&32768?De|4294901760:De},v.prototype.readInt16BE=function(J,ae){J=J>>>0,ae||Ae(J,2,this.length);var De=this[J+1]|this[J]<<8;return De&32768?De|4294901760:De},v.prototype.readInt32LE=function(J,ae){return J=J>>>0,ae||Ae(J,4,this.length),this[J]|this[J+1]<<8|this[J+2]<<16|this[J+3]<<24},v.prototype.readInt32BE=function(J,ae){return J=J>>>0,ae||Ae(J,4,this.length),this[J]<<24|this[J+1]<<16|this[J+2]<<8|this[J+3]},v.prototype.readBigInt64LE=Ke(function(J){J=J>>>0,ce(J,"offset");var ae=this[J],De=this[J+7];(ae===void 0||De===void 0)&&xe(J,this.length-8);var He=this[J+4]+this[J+5]*Math.pow(2,8)+this[J+6]*Math.pow(2,16)+(De<<24);return(BigInt(He)<>>0,ce(J,"offset");var ae=this[J],De=this[J+7];(ae===void 0||De===void 0)&&xe(J,this.length-8);var He=(ae<<24)+this[++J]*Math.pow(2,16)+this[++J]*Math.pow(2,8)+this[++J];return(BigInt(He)<>>0,ae||Ae(J,4,this.length),d.read(this,J,!0,23,4)},v.prototype.readFloatBE=function(J,ae){return J=J>>>0,ae||Ae(J,4,this.length),d.read(this,J,!1,23,4)},v.prototype.readDoubleLE=function(J,ae){return J=J>>>0,ae||Ae(J,8,this.length),d.read(this,J,!0,52,8)},v.prototype.readDoubleBE=function(J,ae){return J=J>>>0,ae||Ae(J,8,this.length),d.read(this,J,!1,52,8)};function Ce(se,J,ae,De,He,er){if(!v.isBuffer(se))throw new TypeError('"buffer" argument must be a Buffer instance');if(J>He||Jse.length)throw new RangeError("Index out of range")}v.prototype.writeUintLE=v.prototype.writeUIntLE=function(J,ae,De,He){if(J=+J,ae=ae>>>0,De=De>>>0,!He){var er=Math.pow(2,8*De)-1;Ce(this,J,ae,De,er,0)}var nr=1,fr=0;for(this[ae]=J&255;++fr>>0,De=De>>>0,!He){var er=Math.pow(2,8*De)-1;Ce(this,J,ae,De,er,0)}var nr=De-1,fr=1;for(this[ae+nr]=J&255;--nr>=0&&(fr*=256);)this[ae+nr]=J/fr&255;return ae+De},v.prototype.writeUint8=v.prototype.writeUInt8=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,1,255,0),this[ae]=J&255,ae+1},v.prototype.writeUint16LE=v.prototype.writeUInt16LE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,2,65535,0),this[ae]=J&255,this[ae+1]=J>>>8,ae+2},v.prototype.writeUint16BE=v.prototype.writeUInt16BE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,2,65535,0),this[ae]=J>>>8,this[ae+1]=J&255,ae+2},v.prototype.writeUint32LE=v.prototype.writeUInt32LE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,4,4294967295,0),this[ae+3]=J>>>24,this[ae+2]=J>>>16,this[ae+1]=J>>>8,this[ae]=J&255,ae+4},v.prototype.writeUint32BE=v.prototype.writeUInt32BE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,4,4294967295,0),this[ae]=J>>>24,this[ae+1]=J>>>16,this[ae+2]=J>>>8,this[ae+3]=J&255,ae+4};function Pe(se,J,ae,De,He){pe(J,De,He,se,ae,7);var er=Number(J&BigInt(4294967295));se[ae++]=er,er=er>>8,se[ae++]=er,er=er>>8,se[ae++]=er,er=er>>8,se[ae++]=er;var nr=Number(J>>BigInt(32)&BigInt(4294967295));return se[ae++]=nr,nr=nr>>8,se[ae++]=nr,nr=nr>>8,se[ae++]=nr,nr=nr>>8,se[ae++]=nr,ae}function Ee(se,J,ae,De,He){pe(J,De,He,se,ae,7);var er=Number(J&BigInt(4294967295));se[ae+7]=er,er=er>>8,se[ae+6]=er,er=er>>8,se[ae+5]=er,er=er>>8,se[ae+4]=er;var nr=Number(J>>BigInt(32)&BigInt(4294967295));return se[ae+3]=nr,nr=nr>>8,se[ae+2]=nr,nr=nr>>8,se[ae+1]=nr,nr=nr>>8,se[ae]=nr,ae+8}v.prototype.writeBigUInt64LE=Ke(function(J){var ae=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Pe(this,J,ae,BigInt(0),BigInt("0xffffffffffffffff"))}),v.prototype.writeBigUInt64BE=Ke(function(J){var ae=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Ee(this,J,ae,BigInt(0),BigInt("0xffffffffffffffff"))}),v.prototype.writeIntLE=function(J,ae,De,He){if(J=+J,ae=ae>>>0,!He){var er=Math.pow(2,8*De-1);Ce(this,J,ae,De,er-1,-er)}var nr=0,fr=1,br=0;for(this[ae]=J&255;++nr>0)-br&255;return ae+De},v.prototype.writeIntBE=function(J,ae,De,He){if(J=+J,ae=ae>>>0,!He){var er=Math.pow(2,8*De-1);Ce(this,J,ae,De,er-1,-er)}var nr=De-1,fr=1,br=0;for(this[ae+nr]=J&255;--nr>=0&&(fr*=256);)J<0&&br===0&&this[ae+nr+1]!==0&&(br=1),this[ae+nr]=(J/fr>>0)-br&255;return ae+De},v.prototype.writeInt8=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,1,127,-128),J<0&&(J=255+J+1),this[ae]=J&255,ae+1},v.prototype.writeInt16LE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,2,32767,-32768),this[ae]=J&255,this[ae+1]=J>>>8,ae+2},v.prototype.writeInt16BE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,2,32767,-32768),this[ae]=J>>>8,this[ae+1]=J&255,ae+2},v.prototype.writeInt32LE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,4,2147483647,-2147483648),this[ae]=J&255,this[ae+1]=J>>>8,this[ae+2]=J>>>16,this[ae+3]=J>>>24,ae+4},v.prototype.writeInt32BE=function(J,ae,De){return J=+J,ae=ae>>>0,De||Ce(this,J,ae,4,2147483647,-2147483648),J<0&&(J=4294967295+J+1),this[ae]=J>>>24,this[ae+1]=J>>>16,this[ae+2]=J>>>8,this[ae+3]=J&255,ae+4},v.prototype.writeBigInt64LE=Ke(function(J){var ae=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Pe(this,J,ae,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),v.prototype.writeBigInt64BE=Ke(function(J){var ae=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Ee(this,J,ae,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Ne(se,J,ae,De,He,er){if(ae+De>se.length)throw new RangeError("Index out of range");if(ae<0)throw new RangeError("Index out of range")}function Ue(se,J,ae,De,He){return J=+J,ae=ae>>>0,He||Ne(se,J,ae,4,34028234663852886e22,-34028234663852886e22),d.write(se,J,ae,De,23,4),ae+4}v.prototype.writeFloatLE=function(J,ae,De){return Ue(this,J,ae,!0,De)},v.prototype.writeFloatBE=function(J,ae,De){return Ue(this,J,ae,!1,De)};function ge(se,J,ae,De,He){return J=+J,ae=ae>>>0,He||Ne(se,J,ae,8,17976931348623157e292,-17976931348623157e292),d.write(se,J,ae,De,52,8),ae+8}v.prototype.writeDoubleLE=function(J,ae,De){return ge(this,J,ae,!0,De)},v.prototype.writeDoubleBE=function(J,ae,De){return ge(this,J,ae,!1,De)},v.prototype.copy=function(J,ae,De,He){if(!v.isBuffer(J))throw new TypeError("argument should be a Buffer");if(De||(De=0),!He&&He!==0&&(He=this.length),ae>=J.length&&(ae=J.length),ae||(ae=0),He>0&&He=this.length)throw new RangeError("Index out of range");if(He<0)throw new RangeError("sourceEnd out of bounds");He>this.length&&(He=this.length),J.length-ae>>0,De=De===void 0?this.length:De>>>0,J||(J=0);var nr;if(typeof J=="number")for(nr=ae;nrMath.pow(2,32)?He=me(String(ae)):typeof ae=="bigint"&&(He=String(ae),(ae>Math.pow(BigInt(2),BigInt(32))||ae<-Math.pow(BigInt(2),BigInt(32)))&&(He=me(He)),He+="n"),De+=" It must be ".concat(J,". Received ").concat(He),De},RangeError);function me(se){for(var J="",ae=se.length,De=se[0]==="-"?1:0;ae>=De+4;ae-=3)J="_".concat(se.slice(ae-3,ae)).concat(J);return"".concat(se.slice(0,ae)).concat(J)}function ye(se,J,ae){ce(J,"offset"),(se[J]===void 0||se[J+ae]===void 0)&&xe(J,se.length-(ae+1))}function pe(se,J,ae,De,He,er){if(se>ae||se3?J===0||J===BigInt(0)?fr=">= 0".concat(nr," and < 2").concat(nr," ** ").concat((er+1)*8).concat(nr):fr=">= -(2".concat(nr," ** ").concat((er+1)*8-1).concat(nr,") and < 2 ** ")+"".concat((er+1)*8-1).concat(nr):fr=">= ".concat(J).concat(nr," and <= ").concat(ae).concat(nr),new we.ERR_OUT_OF_RANGE("value",fr,se)}ye(De,He,er)}function ce(se,J){if(typeof se!="number")throw new we.ERR_INVALID_ARG_TYPE(J,"number",se)}function xe(se,J,ae){throw Math.floor(se)!==se?(ce(se,ae),new we.ERR_OUT_OF_RANGE(ae||"offset","an integer",se)):J<0?new we.ERR_BUFFER_OUT_OF_BOUNDS:new we.ERR_OUT_OF_RANGE(ae||"offset",">= ".concat(ae?1:0," and <= ").concat(J),se)}var Le=/[^+/0-9A-Za-z-_]/g;function qe(se){if(se=se.split("=")[0],se=se.trim().replace(Le,""),se.length<2)return"";for(;se.length%4!==0;)se=se+"=";return se}function ze(se,J){J=J||1/0;for(var ae,De=se.length,He=null,er=[],nr=0;nr55295&&ae<57344){if(!He){if(ae>56319){(J-=3)>-1&&er.push(239,191,189);continue}else if(nr+1===De){(J-=3)>-1&&er.push(239,191,189);continue}He=ae;continue}if(ae<56320){(J-=3)>-1&&er.push(239,191,189),He=ae;continue}ae=(He-55296<<10|ae-56320)+65536}else He&&(J-=3)>-1&&er.push(239,191,189);if(He=null,ae<128){if((J-=1)<0)break;er.push(ae)}else if(ae<2048){if((J-=2)<0)break;er.push(ae>>6|192,ae&63|128)}else if(ae<65536){if((J-=3)<0)break;er.push(ae>>12|224,ae>>6&63|128,ae&63|128)}else if(ae<1114112){if((J-=4)<0)break;er.push(ae>>18|240,ae>>12&63|128,ae>>6&63|128,ae&63|128)}else throw new Error("Invalid code point")}return er}function $e(se){for(var J=[],ae=0;ae>8,He=ae%256,er.push(He),er.push(De);return er}function Be(se){return M.toByteArray(qe(se))}function Ye(se,J,ae,De){var He;for(He=0;He=J.length||He>=se.length);++He)J[He+ae]=se[He];return He}function Me(se,J){return se instanceof J||se!=null&&se.constructor!=null&&se.constructor.name!=null&&se.constructor.name===J.name}function Re(se){return se!==se}var Qe=function(){for(var se="0123456789abcdef",J=new Array(256),ae=0;ae<16;++ae)for(var De=ae*16,He=0;He<16;++He)J[De+He]=se[ae]+se[He];return J}();function Ke(se){return typeof BigInt=="undefined"?ar:se}function ar(){throw new Error("BigInt not supported")}},4844:function(a){a.exports=o;function o(i,l,u,s){return i[0]=l[0]+u[0]*s,i[1]=l[1]+u[1]*s,i[2]=l[2]+u[2]*s,i[3]=l[3]+u[3]*s,i}},4905:function(a,o,i){var l=i(5874);a.exports=u;function u(s,f){var h=l(f),p=[];return p=p.concat(h(s)),p=p.concat(h(null)),p}},4935:function(a,o,i){"use strict";a.exports=k;var l=i(2762),u=i(8116),s=i(4359),f=i(1879).Q,h=window||process.global||{},p=h.__TEXT_CACHE||{};h.__TEXT_CACHE={};var b=3;function m(S,x,M,d){this.gl=S,this.shader=x,this.buffer=M,this.vao=d,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var w=m.prototype,T=[0,0];w.bind=function(S,x,M,d){this.vao.bind(),this.shader.bind();var _=this.shader.uniforms;_.model=S,_.view=x,_.projection=M,_.pixelScale=d,T[0]=this.gl.drawingBufferWidth,T[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=T},w.unbind=function(){this.vao.unbind()},w.update=function(S,x,M,d,_){var g=[];function c(P,O,U,X,$,j){var Y=[U.style,U.weight,U.variant,U.family].join("_"),q=p[Y];q||(q=p[Y]={});var K=q[O];K||(K=q[O]=y(O,{triangles:!0,font:U.family,fontStyle:U.style,fontWeight:U.weight,fontVariant:U.variant,textAlign:"center",textBaseline:"middle",lineSpacing:$,styletags:j}));for(var ne=(X||12)/12,Q=K.positions,oe=K.cells,re=0,H=oe.length;re=0;--V){var te=Q[ee[V]];g.push(ne*te[0],-ne*te[1],P)}}for(var A=[0,0,0],v=[0,0,0],D=[0,0,0],E=[0,0,0],R=1.25,N={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},F=0;F<3;++F){D[F]=g.length/b|0,c(.5*(S[0][F]+S[1][F]),x[F],M[F],12,R,N),E[F]=(g.length/b|0)-D[F],A[F]=g.length/b|0;for(var I=0;I0||x.length>0;){for(;S.length>0;){var c=S.pop();if(M[c]!==-k){M[c]=k;for(var A=d[c],v=0;v<3;++v){var D=g[3*c+v];D>=0&&M[D]===0&&(_[3*c+v]?x.push(D):(S.push(D),M[D]=k))}}}var E=x;x=S,S=E,x.length=0,k=-k}var R=p(d,M,w);return T?R.concat(y.boundary):R}},5033:function(a){"use strict";a.exports=o;function o(i,l,u){var s=l||0,f=u||1;return[[i[12]+i[0],i[13]+i[1],i[14]+i[2],i[15]+i[3]],[i[12]-i[0],i[13]-i[1],i[14]-i[2],i[15]-i[3]],[i[12]+i[4],i[13]+i[5],i[14]+i[6],i[15]+i[7]],[i[12]-i[4],i[13]-i[5],i[14]-i[6],i[15]-i[7]],[s*i[12]+i[8],s*i[13]+i[9],s*i[14]+i[10],s*i[15]+i[11]],[f*i[12]-i[8],f*i[13]-i[9],f*i[14]-i[10],f*i[15]-i[11]]]}},5085:function(a,o,i){a.exports=k;var l=i(3250)[3],u=i(4209),s=i(3352),f=i(2478);function h(){return!0}function p(S){return function(x,M){var d=S[x];return d?!!d.queryPoint(M,h):!1}}function b(S){for(var x={},M=0;M0&&x[d]===M[0])_=S[d-1];else return 1;for(var g=1;_;){var c=_.key,A=l(M,c[0],c[1]);if(c[0][0]0)g=-1,_=_.right;else return 0;else if(A>0)_=_.left;else if(A<0)g=1,_=_.right;else return 0}return g}}function w(S){return 1}function T(S){return function(M){return S(M[0],M[1])?0:1}}function y(S,x){return function(d){return S(d[0],d[1])?0:x(d)}}function k(S){for(var x=S.length,M=[],d=[],_=0,g=0;g0&&(p=1/Math.sqrt(p),i[0]=u*p,i[1]=s*p,i[2]=f*p,i[3]=h*p),i}},5202:function(a,o,i){"use strict";var l=i(1944),u=i(8210);a.exports=h,a.exports.positive=p,a.exports.negative=b;function s(m,w){var T=u(l(m,w),[w[w.length-1]]);return T[T.length-1]}function f(m,w,T,y){var k=y-w,S=-w/k;S<0?S=0:S>1&&(S=1);for(var x=1-S,M=m.length,d=new Array(M),_=0;_0||k>0&&d<0){var _=f(S,d,x,k);T.push(_),y.push(_.slice())}d<0?y.push(x.slice()):d>0?T.push(x.slice()):(T.push(x.slice()),y.push(x.slice())),k=d}return{positive:T,negative:y}}function p(m,w){for(var T=[],y=s(m[m.length-1],w),k=m[m.length-1],S=m[0],x=0;x0||y>0&&M<0)&&T.push(f(k,M,S,y)),M>=0&&T.push(S.slice()),y=M}return T}function b(m,w){for(var T=[],y=s(m[m.length-1],w),k=m[m.length-1],S=m[0],x=0;x0||y>0&&M<0)&&T.push(f(k,M,S,y)),M<=0&&T.push(S.slice()),y=M}return T}},5219:function(a){"use strict";a.exports=function(o){for(var i=o.length,l,u=0;u13)&&l!==32&&l!==133&&l!==160&&l!==5760&&l!==6158&&(l<8192||l>8205)&&l!==8232&&l!==8233&&l!==8239&&l!==8287&&l!==8288&&l!==12288&&l!==65279)return!1;return!0}},5250:function(a){"use strict";a.exports=i;var o=+(Math.pow(2,27)+1);function i(l,u,s){var f=l*u,h=o*l,p=h-l,b=h-p,m=l-b,w=o*u,T=w-u,y=w-T,k=u-y,S=f-b*y,x=S-m*y,M=x-b*k,d=m*k-M;return s?(s[0]=d,s[1]=f,s):[d,f]}},5298:function(a,o){"use strict";var i={"float64,2,1,0":function(){return function(m,w,T,y,k){var S=m[0],x=m[1],M=m[2],d=T[0],_=T[1],g=T[2];y|=0;var c=0,A=0,v=0,D=g,E=_-M*g,R=d-x*_;for(v=0;v0;){I<64?(d=I,I=0):(d=64,I-=64);for(var L=m[1]|0;L>0;){L<64?(_=L,L=0):(_=64,L-=64),y=N+I*c+L*A,x=F+I*D+L*E;var P=0,O=0,U=0,X=v,$=c-g*v,j=A-d*c,Y=R,q=D-g*R,K=E-d*D;for(U=0;U<_;++U){for(O=0;O0;){E<64?(d=E,E=0):(d=64,E-=64);for(var R=m[0]|0;R>0;){R<64?(M=R,R=0):(M=64,R-=64),y=v+E*g+R*_,x=D+E*A+R*c;var N=0,F=0,I=g,L=_-d*g,P=A,O=c-d*A;for(F=0;F0;){F<64?(_=F,F=0):(_=64,F-=64);for(var I=m[0]|0;I>0;){I<64?(M=I,I=0):(M=64,I-=64);for(var L=m[1]|0;L>0;){L<64?(d=L,L=0):(d=64,L-=64),y=R+F*A+I*g+L*c,x=N+F*E+I*v+L*D;var P=0,O=0,U=0,X=A,$=g-_*A,j=c-M*g,Y=E,q=v-_*E,K=D-M*v;for(U=0;U=0}}(),s.removeTriangle=function(p,b,m){var w=this.stars;f(w[p],b,m),f(w[b],m,p),f(w[m],p,b)},s.addTriangle=function(p,b,m){var w=this.stars;w[p].push(b,m),w[b].push(m,p),w[m].push(p,b)},s.opposite=function(p,b){for(var m=this.stars[b],w=1,T=m.length;w0;){var y=m.pop();p[y]=!1;for(var k=h[y],w=0;w0){for(var Y=0;Y<24;++Y)E.push(E[E.length-12]);I+=2,X=!0}continue e}L[0][v]=Math.min(L[0][v],$[v],j[v]),L[1][v]=Math.max(L[1][v],$[v],j[v])}var q,K;Array.isArray(O[0])?(q=O.length>A-1?O[A-1]:O.length>0?O[O.length-1]:[0,0,0,1],K=O.length>A?O[A]:O.length>0?O[O.length-1]:[0,0,0,1]):q=K=O,q.length===3&&(q=[q[0],q[1],q[2],1]),K.length===3&&(K=[K[0],K[1],K[2],1]),!this.hasAlpha&&q[3]<1&&(this.hasAlpha=!0);var ne;Array.isArray(U)?ne=U.length>A-1?U[A-1]:U.length>0?U[U.length-1]:[0,0,0,1]:ne=U;var Q=F;if(F+=S($,j),X){for(v=0;v<2;++v)E.push($[0],$[1],$[2],j[0],j[1],j[2],Q,ne,q[0],q[1],q[2],q[3]);I+=2,X=!1}E.push($[0],$[1],$[2],j[0],j[1],j[2],Q,ne,q[0],q[1],q[2],q[3],$[0],$[1],$[2],j[0],j[1],j[2],Q,-ne,q[0],q[1],q[2],q[3],j[0],j[1],j[2],$[0],$[1],$[2],F,-ne,K[0],K[1],K[2],K[3],j[0],j[1],j[2],$[0],$[1],$[2],F,ne,K[0],K[1],K[2],K[3]),I+=4}}if(this.buffer.update(E),R.push(F),N.push(P[P.length-1].slice()),this.bounds=L,this.vertexCount=I,this.points=N,this.arcLength=R,"dashes"in c){var oe=c.dashes,re=oe.slice();for(re.unshift(0),A=1;Ai[u][0]&&(u=s);return lu?[[u],[l]]:[[l]]}},5771:function(a,o,i){"use strict";var l=i(8507),u=i(3788),s=i(2419);a.exports=f;function f(h){h.sort(u);for(var p=h.length,b=0,m=0;m0){var y=h[b-1];if(l(w,y)===0&&s(y)!==T){b-=1;continue}}h[b++]=w}}return h.length=b,h}},5838:function(a,o,i){"use strict";a.exports=u;var l=i(7842);function u(s){for(var f=new Array(s.length),h=0;h0)continue;me=ge.slice(0,1).join("")}return ee(me),j+=me.length,L=L.slice(me.length),L.length}while(!0)}function Pe(){return/[^a-fA-F0-9]/.test(F)?(ee(L.join("")),N=p,E):(L.push(F),I=F,E+1)}function Ee(){return F==="."||/[eE]/.test(F)?(L.push(F),N=S,I=F,E+1):F==="x"&&L.length===1&&L[0]==="0"?(N=c,L.push(F),I=F,E+1):/[^\d]/.test(F)?(ee(L.join("")),N=p,E):(L.push(F),I=F,E+1)}function Ne(){return F==="f"&&(L.push(F),I=F,E+=1),/[eE]/.test(F)||(F==="-"||F==="+")&&/[eE]/.test(I)?(L.push(F),I=F,E+1):/[^\d]/.test(F)?(ee(L.join("")),N=p,E):(L.push(F),I=F,E+1)}function Ue(){if(/[^\d\w_]/.test(F)){var ge=L.join("");return H[ge]?N=d:re[ge]?N=M:N=x,ee(L.join("")),N=p,E}return L.push(F),I=F,E+1}}},5878:function(a,o,i){"use strict";a.exports=f;var l=i(3250),u=i(2014);function s(h,p,b){var m=Math.abs(l(h,p,b)),w=Math.sqrt(Math.pow(p[0]-b[0],2)+Math.pow(p[1]-b[1],2));return m/w}function f(h,p,b){for(var m=p.length,w=h.length,T=new Array(m),y=new Array(m),k=new Array(m),S=new Array(m),x=0;x>1:(q>>1)-1}function D(q){for(var K=A(q);;){var ne=K,Q=2*q+1,oe=2*(q+1),re=q;if(Q0;){var ne=v(q);if(ne>=0){var Q=A(ne);if(K0){var q=I[0];return c(0,O-1),O-=1,D(0),q}return-1}function N(q,K){var ne=I[q];return k[ne]===K?q:(k[ne]=-1/0,E(q),R(),k[ne]=K,O+=1,E(O-1))}function F(q){if(!S[q]){S[q]=!0;var K=T[q],ne=y[q];T[ne]>=0&&(T[ne]=K),y[K]>=0&&(y[K]=ne),L[K]>=0&&N(L[K],g(K)),L[ne]>=0&&N(L[ne],g(ne))}}for(var I=[],L=new Array(m),x=0;x>1;x>=0;--x)D(x);for(;;){var U=R();if(U<0||k[U]>b)break;F(U)}for(var X=[],x=0;x=0&&ne>=0&&K!==ne){var Q=L[K],oe=L[ne];Q!==oe&&Y.push([Q,oe])}}),u.unique(u.normalize(Y)),{positions:X,edges:Y}}},5911:function(a){a.exports=o;function o(i,l,u){var s=l[0],f=l[1],h=l[2],p=u[0],b=u[1],m=u[2];return i[0]=f*m-h*b,i[1]=h*p-s*m,i[2]=s*b-f*p,i}},5964:function(a){"use strict";a.exports=function(o){return!o&&o!==0?"":o.toString()}},5995:function(a,o,i){"use strict";a.exports=s;var l=i(7642),u=i(6037);function s(f,h){return l(h).filter(function(p){for(var b=new Array(p.length),m=0;m2&&v[1]>2&&g(A.pick(-1,-1).lo(1,1).hi(v[0]-2,v[1]-2),c.pick(-1,-1,0).lo(1,1).hi(v[0]-2,v[1]-2),c.pick(-1,-1,1).lo(1,1).hi(v[0]-2,v[1]-2)),v[1]>2&&(_(A.pick(0,-1).lo(1).hi(v[1]-2),c.pick(0,-1,1).lo(1).hi(v[1]-2)),d(c.pick(0,-1,0).lo(1).hi(v[1]-2))),v[1]>2&&(_(A.pick(v[0]-1,-1).lo(1).hi(v[1]-2),c.pick(v[0]-1,-1,1).lo(1).hi(v[1]-2)),d(c.pick(v[0]-1,-1,0).lo(1).hi(v[1]-2))),v[0]>2&&(_(A.pick(-1,0).lo(1).hi(v[0]-2),c.pick(-1,0,0).lo(1).hi(v[0]-2)),d(c.pick(-1,0,1).lo(1).hi(v[0]-2))),v[0]>2&&(_(A.pick(-1,v[1]-1).lo(1).hi(v[0]-2),c.pick(-1,v[1]-1,0).lo(1).hi(v[0]-2)),d(c.pick(-1,v[1]-1,1).lo(1).hi(v[0]-2))),c.set(0,0,0,0),c.set(0,0,1,0),c.set(v[0]-1,0,0,0),c.set(v[0]-1,0,1,0),c.set(0,v[1]-1,0,0),c.set(0,v[1]-1,1,0),c.set(v[0]-1,v[1]-1,0,0),c.set(v[0]-1,v[1]-1,1,0),c}}function x(M){var d=M.join(),v=m[d];if(v)return v;for(var _=M.length,g=[T,y],c=1;c<=_;++c)g.push(k(c));var A=S,v=A.apply(void 0,g);return m[d]=v,v}a.exports=function(d,_,g){if(Array.isArray(g)||(typeof g=="string"?g=l(_.dimension,g):g=l(_.dimension,"clamp")),_.size===0)return d;if(_.dimension===0)return d.set(0),d;var c=x(g);return c(d,_)}},6204:function(a){"use strict";a.exports=o;function o(i){var l,u,s,f=i.length,h=0;for(l=0;lm&&(m=l.length(E)),v&&!A){var R=2*l.distance(M,D)/(l.length(d)+l.length(E));R?(g=Math.min(g,R),c=!1):c=!0}c||(M=D,d=E),_.push(E)}var N=[w,y,S],F=[T,k,x];f&&(f[0]=N,f[1]=F),m===0&&(m=1);var I=1/m;isFinite(g)||(g=1),b.vectorScale=g;var L=s.coneSize||(A?1:.5);s.absoluteConeSize&&(L=s.absoluteConeSize*I),b.coneScale=L;for(var v=0,P=0;vX&&(F|=1<X){F|=1<b[E][1])&&(oe=E);for(var re=-1,E=0;E<3;++E){var H=oe^1<b[ee][0]&&(ee=H)}}var V=S;V[0]=V[1]=V[2]=0,V[l.log2(re^oe)]=oe&re,V[l.log2(oe^ee)]=oeⅇvar te=ee^7;te===F||te===Q?(te=re^7,V[l.log2(ee^te)]=te&ee):V[l.log2(re^te)]=te&re;for(var ue=x,ve=F,P=0;P<3;++P)ve&1<=0&&(b=h.length-p-1);var m=Math.pow(10,b),w=Math.round(s*f*m),T=w+"";if(T.indexOf("e")>=0)return T;var y=w/m,k=w%m;w<0?(y=-Math.ceil(y)|0,k=-k|0):(y=Math.floor(y)|0,k=k|0);var S=""+y;if(w<0&&(S="-"+S),b){for(var x=""+k;x.length=s[0][p];--w)b.push({x:w*f[p],text:i(f[p],w)});h.push(b)}return h}function u(s,f){for(var h=0;h<3;++h){if(s[h].length!==f[h].length)return!1;for(var p=0;pM+1)throw new Error(S+" map requires nshades to be at least size "+k.length);Array.isArray(b.alpha)?b.alpha.length!==2?d=[1,1]:d=b.alpha.slice():typeof b.alpha=="number"?d=[b.alpha,b.alpha]:d=[1,1],m=k.map(function(D){return Math.round(D.index*M)}),d[0]=Math.min(Math.max(d[0],0),1),d[1]=Math.min(Math.max(d[1],0),1);var g=k.map(function(D,E){var R=k[E].index,N=k[E].rgb.slice();return N.length===4&&N[3]>=0&&N[3]<=1||(N[3]=d[0]+(d[1]-d[0])*R),N}),c=[];for(_=0;_>1,F=_(A[N],v);F<=0?(F===0&&(R=N),D=N+1):F>0&&(E=N-1)}return R}l=y;function k(A,v){for(var D=new Array(A.length),E=0,R=D.length;E=A.length||_(A[$],N)!==0););}return D}l=k;function S(A,v){if(!v)return k(T(M(A,0)),A,0);for(var D=new Array(v),E=0;E>>P&1&&L.push(R[P]);v.push(L)}return w(v)}l=b;function M(A,v){if(v<0)return[];for(var D=[],E=(1<0?L:P},h.min=function(L,P){return L.cmp(P)<0?L:P},h.prototype._init=function(L,P,O){if(typeof L=="number")return this._initNumber(L,P,O);if(typeof L=="object")return this._initArray(L,P,O);P==="hex"&&(P=16),s(P===(P|0)&&P>=2&&P<=36),L=L.toString().replace(/\s+/g,"");var U=0;L[0]==="-"&&(U++,this.negative=1),U=0;U-=3)$=L[U]|L[U-1]<<8|L[U-2]<<16,this.words[X]|=$<>>26-j&67108863,j+=24,j>=26&&(j-=26,X++);else if(O==="le")for(U=0,X=0;U>>26-j&67108863,j+=24,j>=26&&(j-=26,X++);return this.strip()};function _(I,L){var P=I.charCodeAt(L);return P>=65&&P<=70?P-55:P>=97&&P<=102?P-87:P-48&15}function m(I,L,P){var O=_(I,P);return P-1>=L&&(O|=_(I,P-1)<<4),O}h.prototype._parseHex=function(L,P,O){this.length=Math.ceil((L.length-P)/6),this.words=new Array(this.length);for(var U=0;U=P;U-=2)j=m(L,P,U)<=18?(X-=18,$+=1,this.words[$]|=j>>>26):X+=8;else{var Y=L.length-P;for(U=Y%2===0?P+1:P;U=18?(X-=18,$+=1,this.words[$]|=j>>>26):X+=8}this.strip()};function w(I,L,P,O){for(var U=0,X=Math.min(I.length,P),$=L;$=49?U+=j-49+10:j>=17?U+=j-17+10:U+=j}return U}h.prototype._parseBase=function(L,P,O){this.words=[0],this.length=1;for(var U=0,X=1;X<=67108863;X*=P)U++;U--,X=X/P|0;for(var $=L.length-O,j=$%U,Y=Math.min($,$-j)+O,q=0,K=O;K1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},h.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},h.prototype.inspect=function(){return(this.red?""};var T=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],y=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],k=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];h.prototype.toString=function(L,P){L=L||10,P=P|0||1;var O;if(L===16||L==="hex"){O="";for(var U=0,X=0,$=0;$>>24-U&16777215,X!==0||$!==this.length-1?O=T[6-Y.length]+Y+O:O=Y+O,U+=2,U>=26&&(U-=26,$--)}for(X!==0&&(O=X.toString(16)+O);O.length%P!==0;)O="0"+O;return this.negative!==0&&(O="-"+O),O}if(L===(L|0)&&L>=2&&L<=36){var q=y[L],K=k[L];O="";var ne=this.clone();for(ne.negative=0;!ne.isZero();){var Q=ne.modn(K).toString(L);ne=ne.idivn(K),ne.isZero()?O=Q+O:O=T[q-Q.length]+Q+O}for(this.isZero()&&(O="0"+O);O.length%P!==0;)O="0"+O;return this.negative!==0&&(O="-"+O),O}s(!1,"Base should be between 2 and 36")},h.prototype.toNumber=function(){var L=this.words[0];return this.length===2?L+=this.words[1]*67108864:this.length===3&&this.words[2]===1?L+=4503599627370496+this.words[1]*67108864:this.length>2&&s(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-L:L},h.prototype.toJSON=function(){return this.toString(16)},h.prototype.toBuffer=function(L,P){return s(typeof p!="undefined"),this.toArrayLike(p,L,P)},h.prototype.toArray=function(L,P){return this.toArrayLike(Array,L,P)},h.prototype.toArrayLike=function(L,P,O){var U=this.byteLength(),X=O||Math.max(1,U);s(U<=X,"byte array longer than desired length"),s(X>0,"Requested array length <= 0"),this.strip();var $=P==="le",j=new L(X),Y,q,K=this.clone();if($){for(q=0;!K.isZero();q++)Y=K.andln(255),K.iushrn(8),j[q]=Y;for(;q=4096&&(O+=13,P>>>=13),P>=64&&(O+=7,P>>>=7),P>=8&&(O+=4,P>>>=4),P>=2&&(O+=2,P>>>=2),O+P},h.prototype._zeroBits=function(L){if(L===0)return 26;var P=L,O=0;return(P&8191)===0&&(O+=13,P>>>=13),(P&127)===0&&(O+=7,P>>>=7),(P&15)===0&&(O+=4,P>>>=4),(P&3)===0&&(O+=2,P>>>=2),(P&1)===0&&O++,O},h.prototype.bitLength=function(){var L=this.words[this.length-1],P=this._countBits(L);return(this.length-1)*26+P};function S(I){for(var L=new Array(I.bitLength()),P=0;P>>U}return L}h.prototype.zeroBits=function(){if(this.isZero())return 0;for(var L=0,P=0;PL.length?this.clone().ior(L):L.clone().ior(this)},h.prototype.uor=function(L){return this.length>L.length?this.clone().iuor(L):L.clone().iuor(this)},h.prototype.iuand=function(L){var P;this.length>L.length?P=L:P=this;for(var O=0;OL.length?this.clone().iand(L):L.clone().iand(this)},h.prototype.uand=function(L){return this.length>L.length?this.clone().iuand(L):L.clone().iuand(this)},h.prototype.iuxor=function(L){var P,O;this.length>L.length?(P=this,O=L):(P=L,O=this);for(var U=0;UL.length?this.clone().ixor(L):L.clone().ixor(this)},h.prototype.uxor=function(L){return this.length>L.length?this.clone().iuxor(L):L.clone().iuxor(this)},h.prototype.inotn=function(L){s(typeof L=="number"&&L>=0);var P=Math.ceil(L/26)|0,O=L%26;this._expand(P),O>0&&P--;for(var U=0;U0&&(this.words[U]=~this.words[U]&67108863>>26-O),this.strip()},h.prototype.notn=function(L){return this.clone().inotn(L)},h.prototype.setn=function(L,P){s(typeof L=="number"&&L>=0);var O=L/26|0,U=L%26;return this._expand(O+1),P?this.words[O]=this.words[O]|1<L.length?(O=this,U=L):(O=L,U=this);for(var X=0,$=0;$>>26;for(;X!==0&&$>>26;if(this.length=O.length,X!==0)this.words[this.length]=X,this.length++;else if(O!==this)for(;$L.length?this.clone().iadd(L):L.clone().iadd(this)},h.prototype.isub=function(L){if(L.negative!==0){L.negative=0;var P=this.iadd(L);return L.negative=1,P._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(L),this.negative=1,this._normSign();var O=this.cmp(L);if(O===0)return this.negative=0,this.length=1,this.words[0]=0,this;var U,X;O>0?(U=this,X=L):(U=L,X=this);for(var $=0,j=0;j>26,this.words[j]=P&67108863;for(;$!==0&&j>26,this.words[j]=P&67108863;if($===0&&j>>26,ne=Y&67108863,Q=Math.min(q,L.length-1),oe=Math.max(0,q-I.length+1);oe<=Q;oe++){var re=q-oe|0;U=I.words[re]|0,X=L.words[oe]|0,$=U*X+ne,K+=$/67108864|0,ne=$&67108863}P.words[q]=ne|0,Y=K|0}return Y!==0?P.words[q]=Y|0:P.length--,P.strip()}var M=function(L,P,O){var U=L.words,X=P.words,$=O.words,j=0,Y,q,K,ne=U[0]|0,Q=ne&8191,oe=ne>>>13,re=U[1]|0,H=re&8191,ee=re>>>13,V=U[2]|0,te=V&8191,ue=V>>>13,ve=U[3]|0,ke=ve&8191,Se=ve>>>13,he=U[4]|0,Ae=he&8191,Ce=he>>>13,Pe=U[5]|0,Ee=Pe&8191,Ne=Pe>>>13,Ue=U[6]|0,ge=Ue&8191,we=Ue>>>13,Te=U[7]|0,me=Te&8191,ye=Te>>>13,pe=U[8]|0,ce=pe&8191,be=pe>>>13,Le=U[9]|0,qe=Le&8191,ze=Le>>>13,$e=X[0]|0,Ve=$e&8191,Be=$e>>>13,Ye=X[1]|0,Me=Ye&8191,Re=Ye>>>13,Qe=X[2]|0,Ke=Qe&8191,ar=Qe>>>13,se=X[3]|0,J=se&8191,ae=se>>>13,De=X[4]|0,He=De&8191,er=De>>>13,nr=X[5]|0,fr=nr&8191,xr=nr>>>13,Sr=X[6]|0,Mr=Sr&8191,Ar=Sr>>>13,ft=X[7]|0,sr=ft&8191,Pr=ft>>>13,$r=X[8]|0,Fr=$r&8191,Gr=$r>>>13,pt=X[9]|0,Rr=pt&8191,jr=pt>>>13;O.negative=L.negative^P.negative,O.length=19,Y=Math.imul(Q,Ve),q=Math.imul(Q,Be),q=q+Math.imul(oe,Ve)|0,K=Math.imul(oe,Be);var hn=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(hn>>>26)|0,hn&=67108863,Y=Math.imul(H,Ve),q=Math.imul(H,Be),q=q+Math.imul(ee,Ve)|0,K=Math.imul(ee,Be),Y=Y+Math.imul(Q,Me)|0,q=q+Math.imul(Q,Re)|0,q=q+Math.imul(oe,Me)|0,K=K+Math.imul(oe,Re)|0;var Et=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Et>>>26)|0,Et&=67108863,Y=Math.imul(te,Ve),q=Math.imul(te,Be),q=q+Math.imul(ue,Ve)|0,K=Math.imul(ue,Be),Y=Y+Math.imul(H,Me)|0,q=q+Math.imul(H,Re)|0,q=q+Math.imul(ee,Me)|0,K=K+Math.imul(ee,Re)|0,Y=Y+Math.imul(Q,Ke)|0,q=q+Math.imul(Q,ar)|0,q=q+Math.imul(oe,Ke)|0,K=K+Math.imul(oe,ar)|0;var Tn=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Tn>>>26)|0,Tn&=67108863,Y=Math.imul(ke,Ve),q=Math.imul(ke,Be),q=q+Math.imul(Se,Ve)|0,K=Math.imul(Se,Be),Y=Y+Math.imul(te,Me)|0,q=q+Math.imul(te,Re)|0,q=q+Math.imul(ue,Me)|0,K=K+Math.imul(ue,Re)|0,Y=Y+Math.imul(H,Ke)|0,q=q+Math.imul(H,ar)|0,q=q+Math.imul(ee,Ke)|0,K=K+Math.imul(ee,ar)|0,Y=Y+Math.imul(Q,J)|0,q=q+Math.imul(Q,ae)|0,q=q+Math.imul(oe,J)|0,K=K+Math.imul(oe,ae)|0;var Ot=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,Y=Math.imul(Ae,Ve),q=Math.imul(Ae,Be),q=q+Math.imul(Ce,Ve)|0,K=Math.imul(Ce,Be),Y=Y+Math.imul(ke,Me)|0,q=q+Math.imul(ke,Re)|0,q=q+Math.imul(Se,Me)|0,K=K+Math.imul(Se,Re)|0,Y=Y+Math.imul(te,Ke)|0,q=q+Math.imul(te,ar)|0,q=q+Math.imul(ue,Ke)|0,K=K+Math.imul(ue,ar)|0,Y=Y+Math.imul(H,J)|0,q=q+Math.imul(H,ae)|0,q=q+Math.imul(ee,J)|0,K=K+Math.imul(ee,ae)|0,Y=Y+Math.imul(Q,He)|0,q=q+Math.imul(Q,er)|0,q=q+Math.imul(oe,He)|0,K=K+Math.imul(oe,er)|0;var xt=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(xt>>>26)|0,xt&=67108863,Y=Math.imul(Ee,Ve),q=Math.imul(Ee,Be),q=q+Math.imul(Ne,Ve)|0,K=Math.imul(Ne,Be),Y=Y+Math.imul(Ae,Me)|0,q=q+Math.imul(Ae,Re)|0,q=q+Math.imul(Ce,Me)|0,K=K+Math.imul(Ce,Re)|0,Y=Y+Math.imul(ke,Ke)|0,q=q+Math.imul(ke,ar)|0,q=q+Math.imul(Se,Ke)|0,K=K+Math.imul(Se,ar)|0,Y=Y+Math.imul(te,J)|0,q=q+Math.imul(te,ae)|0,q=q+Math.imul(ue,J)|0,K=K+Math.imul(ue,ae)|0,Y=Y+Math.imul(H,He)|0,q=q+Math.imul(H,er)|0,q=q+Math.imul(ee,He)|0,K=K+Math.imul(ee,er)|0,Y=Y+Math.imul(Q,fr)|0,q=q+Math.imul(Q,xr)|0,q=q+Math.imul(oe,fr)|0,K=K+Math.imul(oe,xr)|0;var gt=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(gt>>>26)|0,gt&=67108863,Y=Math.imul(ge,Ve),q=Math.imul(ge,Be),q=q+Math.imul(we,Ve)|0,K=Math.imul(we,Be),Y=Y+Math.imul(Ee,Me)|0,q=q+Math.imul(Ee,Re)|0,q=q+Math.imul(Ne,Me)|0,K=K+Math.imul(Ne,Re)|0,Y=Y+Math.imul(Ae,Ke)|0,q=q+Math.imul(Ae,ar)|0,q=q+Math.imul(Ce,Ke)|0,K=K+Math.imul(Ce,ar)|0,Y=Y+Math.imul(ke,J)|0,q=q+Math.imul(ke,ae)|0,q=q+Math.imul(Se,J)|0,K=K+Math.imul(Se,ae)|0,Y=Y+Math.imul(te,He)|0,q=q+Math.imul(te,er)|0,q=q+Math.imul(ue,He)|0,K=K+Math.imul(ue,er)|0,Y=Y+Math.imul(H,fr)|0,q=q+Math.imul(H,xr)|0,q=q+Math.imul(ee,fr)|0,K=K+Math.imul(ee,xr)|0,Y=Y+Math.imul(Q,Mr)|0,q=q+Math.imul(Q,Ar)|0,q=q+Math.imul(oe,Mr)|0,K=K+Math.imul(oe,Ar)|0;var Ft=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Ft>>>26)|0,Ft&=67108863,Y=Math.imul(me,Ve),q=Math.imul(me,Be),q=q+Math.imul(ye,Ve)|0,K=Math.imul(ye,Be),Y=Y+Math.imul(ge,Me)|0,q=q+Math.imul(ge,Re)|0,q=q+Math.imul(we,Me)|0,K=K+Math.imul(we,Re)|0,Y=Y+Math.imul(Ee,Ke)|0,q=q+Math.imul(Ee,ar)|0,q=q+Math.imul(Ne,Ke)|0,K=K+Math.imul(Ne,ar)|0,Y=Y+Math.imul(Ae,J)|0,q=q+Math.imul(Ae,ae)|0,q=q+Math.imul(Ce,J)|0,K=K+Math.imul(Ce,ae)|0,Y=Y+Math.imul(ke,He)|0,q=q+Math.imul(ke,er)|0,q=q+Math.imul(Se,He)|0,K=K+Math.imul(Se,er)|0,Y=Y+Math.imul(te,fr)|0,q=q+Math.imul(te,xr)|0,q=q+Math.imul(ue,fr)|0,K=K+Math.imul(ue,xr)|0,Y=Y+Math.imul(H,Mr)|0,q=q+Math.imul(H,Ar)|0,q=q+Math.imul(ee,Mr)|0,K=K+Math.imul(ee,Ar)|0,Y=Y+Math.imul(Q,sr)|0,q=q+Math.imul(Q,Pr)|0,q=q+Math.imul(oe,sr)|0,K=K+Math.imul(oe,Pr)|0;var ha=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(ha>>>26)|0,ha&=67108863,Y=Math.imul(ce,Ve),q=Math.imul(ce,Be),q=q+Math.imul(be,Ve)|0,K=Math.imul(be,Be),Y=Y+Math.imul(me,Me)|0,q=q+Math.imul(me,Re)|0,q=q+Math.imul(ye,Me)|0,K=K+Math.imul(ye,Re)|0,Y=Y+Math.imul(ge,Ke)|0,q=q+Math.imul(ge,ar)|0,q=q+Math.imul(we,Ke)|0,K=K+Math.imul(we,ar)|0,Y=Y+Math.imul(Ee,J)|0,q=q+Math.imul(Ee,ae)|0,q=q+Math.imul(Ne,J)|0,K=K+Math.imul(Ne,ae)|0,Y=Y+Math.imul(Ae,He)|0,q=q+Math.imul(Ae,er)|0,q=q+Math.imul(Ce,He)|0,K=K+Math.imul(Ce,er)|0,Y=Y+Math.imul(ke,fr)|0,q=q+Math.imul(ke,xr)|0,q=q+Math.imul(Se,fr)|0,K=K+Math.imul(Se,xr)|0,Y=Y+Math.imul(te,Mr)|0,q=q+Math.imul(te,Ar)|0,q=q+Math.imul(ue,Mr)|0,K=K+Math.imul(ue,Ar)|0,Y=Y+Math.imul(H,sr)|0,q=q+Math.imul(H,Pr)|0,q=q+Math.imul(ee,sr)|0,K=K+Math.imul(ee,Pr)|0,Y=Y+Math.imul(Q,Fr)|0,q=q+Math.imul(Q,Gr)|0,q=q+Math.imul(oe,Fr)|0,K=K+Math.imul(oe,Gr)|0;var Qn=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Qn>>>26)|0,Qn&=67108863,Y=Math.imul(qe,Ve),q=Math.imul(qe,Be),q=q+Math.imul(ze,Ve)|0,K=Math.imul(ze,Be),Y=Y+Math.imul(ce,Me)|0,q=q+Math.imul(ce,Re)|0,q=q+Math.imul(be,Me)|0,K=K+Math.imul(be,Re)|0,Y=Y+Math.imul(me,Ke)|0,q=q+Math.imul(me,ar)|0,q=q+Math.imul(ye,Ke)|0,K=K+Math.imul(ye,ar)|0,Y=Y+Math.imul(ge,J)|0,q=q+Math.imul(ge,ae)|0,q=q+Math.imul(we,J)|0,K=K+Math.imul(we,ae)|0,Y=Y+Math.imul(Ee,He)|0,q=q+Math.imul(Ee,er)|0,q=q+Math.imul(Ne,He)|0,K=K+Math.imul(Ne,er)|0,Y=Y+Math.imul(Ae,fr)|0,q=q+Math.imul(Ae,xr)|0,q=q+Math.imul(Ce,fr)|0,K=K+Math.imul(Ce,xr)|0,Y=Y+Math.imul(ke,Mr)|0,q=q+Math.imul(ke,Ar)|0,q=q+Math.imul(Se,Mr)|0,K=K+Math.imul(Se,Ar)|0,Y=Y+Math.imul(te,sr)|0,q=q+Math.imul(te,Pr)|0,q=q+Math.imul(ue,sr)|0,K=K+Math.imul(ue,Pr)|0,Y=Y+Math.imul(H,Fr)|0,q=q+Math.imul(H,Gr)|0,q=q+Math.imul(ee,Fr)|0,K=K+Math.imul(ee,Gr)|0,Y=Y+Math.imul(Q,Rr)|0,q=q+Math.imul(Q,jr)|0,q=q+Math.imul(oe,Rr)|0,K=K+Math.imul(oe,jr)|0;var In=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(In>>>26)|0,In&=67108863,Y=Math.imul(qe,Me),q=Math.imul(qe,Re),q=q+Math.imul(ze,Me)|0,K=Math.imul(ze,Re),Y=Y+Math.imul(ce,Ke)|0,q=q+Math.imul(ce,ar)|0,q=q+Math.imul(be,Ke)|0,K=K+Math.imul(be,ar)|0,Y=Y+Math.imul(me,J)|0,q=q+Math.imul(me,ae)|0,q=q+Math.imul(ye,J)|0,K=K+Math.imul(ye,ae)|0,Y=Y+Math.imul(ge,He)|0,q=q+Math.imul(ge,er)|0,q=q+Math.imul(we,He)|0,K=K+Math.imul(we,er)|0,Y=Y+Math.imul(Ee,fr)|0,q=q+Math.imul(Ee,xr)|0,q=q+Math.imul(Ne,fr)|0,K=K+Math.imul(Ne,xr)|0,Y=Y+Math.imul(Ae,Mr)|0,q=q+Math.imul(Ae,Ar)|0,q=q+Math.imul(Ce,Mr)|0,K=K+Math.imul(Ce,Ar)|0,Y=Y+Math.imul(ke,sr)|0,q=q+Math.imul(ke,Pr)|0,q=q+Math.imul(Se,sr)|0,K=K+Math.imul(Se,Pr)|0,Y=Y+Math.imul(te,Fr)|0,q=q+Math.imul(te,Gr)|0,q=q+Math.imul(ue,Fr)|0,K=K+Math.imul(ue,Gr)|0,Y=Y+Math.imul(H,Rr)|0,q=q+Math.imul(H,jr)|0,q=q+Math.imul(ee,Rr)|0,K=K+Math.imul(ee,jr)|0;var wa=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(wa>>>26)|0,wa&=67108863,Y=Math.imul(qe,Ke),q=Math.imul(qe,ar),q=q+Math.imul(ze,Ke)|0,K=Math.imul(ze,ar),Y=Y+Math.imul(ce,J)|0,q=q+Math.imul(ce,ae)|0,q=q+Math.imul(be,J)|0,K=K+Math.imul(be,ae)|0,Y=Y+Math.imul(me,He)|0,q=q+Math.imul(me,er)|0,q=q+Math.imul(ye,He)|0,K=K+Math.imul(ye,er)|0,Y=Y+Math.imul(ge,fr)|0,q=q+Math.imul(ge,xr)|0,q=q+Math.imul(we,fr)|0,K=K+Math.imul(we,xr)|0,Y=Y+Math.imul(Ee,Mr)|0,q=q+Math.imul(Ee,Ar)|0,q=q+Math.imul(Ne,Mr)|0,K=K+Math.imul(Ne,Ar)|0,Y=Y+Math.imul(Ae,sr)|0,q=q+Math.imul(Ae,Pr)|0,q=q+Math.imul(Ce,sr)|0,K=K+Math.imul(Ce,Pr)|0,Y=Y+Math.imul(ke,Fr)|0,q=q+Math.imul(ke,Gr)|0,q=q+Math.imul(Se,Fr)|0,K=K+Math.imul(Se,Gr)|0,Y=Y+Math.imul(te,Rr)|0,q=q+Math.imul(te,jr)|0,q=q+Math.imul(ue,Rr)|0,K=K+Math.imul(ue,jr)|0;var bi=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(bi>>>26)|0,bi&=67108863,Y=Math.imul(qe,J),q=Math.imul(qe,ae),q=q+Math.imul(ze,J)|0,K=Math.imul(ze,ae),Y=Y+Math.imul(ce,He)|0,q=q+Math.imul(ce,er)|0,q=q+Math.imul(be,He)|0,K=K+Math.imul(be,er)|0,Y=Y+Math.imul(me,fr)|0,q=q+Math.imul(me,xr)|0,q=q+Math.imul(ye,fr)|0,K=K+Math.imul(ye,xr)|0,Y=Y+Math.imul(ge,Mr)|0,q=q+Math.imul(ge,Ar)|0,q=q+Math.imul(we,Mr)|0,K=K+Math.imul(we,Ar)|0,Y=Y+Math.imul(Ee,sr)|0,q=q+Math.imul(Ee,Pr)|0,q=q+Math.imul(Ne,sr)|0,K=K+Math.imul(Ne,Pr)|0,Y=Y+Math.imul(Ae,Fr)|0,q=q+Math.imul(Ae,Gr)|0,q=q+Math.imul(Ce,Fr)|0,K=K+Math.imul(Ce,Gr)|0,Y=Y+Math.imul(ke,Rr)|0,q=q+Math.imul(ke,jr)|0,q=q+Math.imul(Se,Rr)|0,K=K+Math.imul(Se,jr)|0;var Gi=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Gi>>>26)|0,Gi&=67108863,Y=Math.imul(qe,He),q=Math.imul(qe,er),q=q+Math.imul(ze,He)|0,K=Math.imul(ze,er),Y=Y+Math.imul(ce,fr)|0,q=q+Math.imul(ce,xr)|0,q=q+Math.imul(be,fr)|0,K=K+Math.imul(be,xr)|0,Y=Y+Math.imul(me,Mr)|0,q=q+Math.imul(me,Ar)|0,q=q+Math.imul(ye,Mr)|0,K=K+Math.imul(ye,Ar)|0,Y=Y+Math.imul(ge,sr)|0,q=q+Math.imul(ge,Pr)|0,q=q+Math.imul(we,sr)|0,K=K+Math.imul(we,Pr)|0,Y=Y+Math.imul(Ee,Fr)|0,q=q+Math.imul(Ee,Gr)|0,q=q+Math.imul(Ne,Fr)|0,K=K+Math.imul(Ne,Gr)|0,Y=Y+Math.imul(Ae,Rr)|0,q=q+Math.imul(Ae,jr)|0,q=q+Math.imul(Ce,Rr)|0,K=K+Math.imul(Ce,jr)|0;var Yi=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Yi>>>26)|0,Yi&=67108863,Y=Math.imul(qe,fr),q=Math.imul(qe,xr),q=q+Math.imul(ze,fr)|0,K=Math.imul(ze,xr),Y=Y+Math.imul(ce,Mr)|0,q=q+Math.imul(ce,Ar)|0,q=q+Math.imul(be,Mr)|0,K=K+Math.imul(be,Ar)|0,Y=Y+Math.imul(me,sr)|0,q=q+Math.imul(me,Pr)|0,q=q+Math.imul(ye,sr)|0,K=K+Math.imul(ye,Pr)|0,Y=Y+Math.imul(ge,Fr)|0,q=q+Math.imul(ge,Gr)|0,q=q+Math.imul(we,Fr)|0,K=K+Math.imul(we,Gr)|0,Y=Y+Math.imul(Ee,Rr)|0,q=q+Math.imul(Ee,jr)|0,q=q+Math.imul(Ne,Rr)|0,K=K+Math.imul(Ne,jr)|0;var Wi=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Wi>>>26)|0,Wi&=67108863,Y=Math.imul(qe,Mr),q=Math.imul(qe,Ar),q=q+Math.imul(ze,Mr)|0,K=Math.imul(ze,Ar),Y=Y+Math.imul(ce,sr)|0,q=q+Math.imul(ce,Pr)|0,q=q+Math.imul(be,sr)|0,K=K+Math.imul(be,Pr)|0,Y=Y+Math.imul(me,Fr)|0,q=q+Math.imul(me,Gr)|0,q=q+Math.imul(ye,Fr)|0,K=K+Math.imul(ye,Gr)|0,Y=Y+Math.imul(ge,Rr)|0,q=q+Math.imul(ge,jr)|0,q=q+Math.imul(we,Rr)|0,K=K+Math.imul(we,jr)|0;var tn=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(tn>>>26)|0,tn&=67108863,Y=Math.imul(qe,sr),q=Math.imul(qe,Pr),q=q+Math.imul(ze,sr)|0,K=Math.imul(ze,Pr),Y=Y+Math.imul(ce,Fr)|0,q=q+Math.imul(ce,Gr)|0,q=q+Math.imul(be,Fr)|0,K=K+Math.imul(be,Gr)|0,Y=Y+Math.imul(me,Rr)|0,q=q+Math.imul(me,jr)|0,q=q+Math.imul(ye,Rr)|0,K=K+Math.imul(ye,jr)|0;var bo=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(bo>>>26)|0,bo&=67108863,Y=Math.imul(qe,Fr),q=Math.imul(qe,Gr),q=q+Math.imul(ze,Fr)|0,K=Math.imul(ze,Gr),Y=Y+Math.imul(ce,Rr)|0,q=q+Math.imul(ce,jr)|0,q=q+Math.imul(be,Rr)|0,K=K+Math.imul(be,jr)|0;var xi=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(xi>>>26)|0,xi&=67108863,Y=Math.imul(qe,Rr),q=Math.imul(qe,jr),q=q+Math.imul(ze,Rr)|0,K=Math.imul(ze,jr);var _i=(j+Y|0)+((q&8191)<<13)|0;return j=(K+(q>>>13)|0)+(_i>>>26)|0,_i&=67108863,$[0]=hn,$[1]=Et,$[2]=Tn,$[3]=Ot,$[4]=xt,$[5]=gt,$[6]=Ft,$[7]=ha,$[8]=Qn,$[9]=In,$[10]=wa,$[11]=bi,$[12]=Gi,$[13]=Yi,$[14]=Wi,$[15]=tn,$[16]=bo,$[17]=xi,$[18]=_i,j!==0&&($[19]=j,O.length++),O};Math.imul||(M=b);function d(I,L,P){P.negative=L.negative^I.negative,P.length=I.length+L.length;for(var O=0,U=0,X=0;X>>26)|0,U+=$>>>26,$&=67108863}P.words[X]=j,O=$,$=U}return O!==0?P.words[X]=O:P.length--,P.strip()}function x(I,L,P){var O=new g;return O.mulp(I,L,P)}h.prototype.mulTo=function(L,P){var O,U=this.length+L.length;return this.length===10&&L.length===10?O=M(this,L,P):U<63?O=b(this,L,P):U<1024?O=d(this,L,P):O=x(this,L,P),O};function g(I,L){this.x=I,this.y=L}g.prototype.makeRBT=function(L){for(var P=new Array(L),O=h.prototype._countBits(L)-1,U=0;U>=1;return U},g.prototype.permute=function(L,P,O,U,X,$){for(var j=0;j<$;j++)U[j]=P[L[j]],X[j]=O[L[j]]},g.prototype.transform=function(L,P,O,U,X,$){this.permute($,L,P,O,U,X);for(var j=1;j>>1)X++;return 1<>>13,O[2*$+1]=X&8191,X=X>>>13;for($=2*P;$>=26,P+=U/67108864|0,P+=X>>>26,this.words[O]=X&67108863}return P!==0&&(this.words[O]=P,this.length++),this},h.prototype.muln=function(L){return this.clone().imuln(L)},h.prototype.sqr=function(){return this.mul(this)},h.prototype.isqr=function(){return this.imul(this.clone())},h.prototype.pow=function(L){var P=S(L);if(P.length===0)return new h(1);for(var O=this,U=0;U=0);var P=L%26,O=(L-P)/26,U=67108863>>>26-P<<26-P,X;if(P!==0){var $=0;for(X=0;X>>26-P}$&&(this.words[X]=$,this.length++)}if(O!==0){for(X=this.length-1;X>=0;X--)this.words[X+O]=this.words[X];for(X=0;X=0);var U;P?U=(P-P%26)/26:U=0;var X=L%26,$=Math.min((L-X)/26,this.length),j=67108863^67108863>>>X<$)for(this.length-=$,q=0;q=0&&(K!==0||q>=U);q--){var ne=this.words[q]|0;this.words[q]=K<<26-X|ne>>>X,K=ne&j}return Y&&K!==0&&(Y.words[Y.length++]=K),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},h.prototype.ishrn=function(L,P,O){return s(this.negative===0),this.iushrn(L,P,O)},h.prototype.shln=function(L){return this.clone().ishln(L)},h.prototype.ushln=function(L){return this.clone().iushln(L)},h.prototype.shrn=function(L){return this.clone().ishrn(L)},h.prototype.ushrn=function(L){return this.clone().iushrn(L)},h.prototype.testn=function(L){s(typeof L=="number"&&L>=0);var P=L%26,O=(L-P)/26,U=1<=0);var P=L%26,O=(L-P)/26;if(s(this.negative===0,"imaskn works only with positive numbers"),this.length<=O)return this;if(P!==0&&O++,this.length=Math.min(O,this.length),P!==0){var U=67108863^67108863>>>P<=67108864;P++)this.words[P]-=67108864,P===this.length-1?this.words[P+1]=1:this.words[P+1]++;return this.length=Math.max(this.length,P+1),this},h.prototype.isubn=function(L){if(s(typeof L=="number"),s(L<67108864),L<0)return this.iaddn(-L);if(this.negative!==0)return this.negative=0,this.iaddn(L),this.negative=1,this;if(this.words[0]-=L,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var P=0;P>26)-(Y/67108864|0),this.words[X+O]=$&67108863}for(;X>26,this.words[X+O]=$&67108863;if(j===0)return this.strip();for(s(j===-1),j=0,X=0;X>26,this.words[X]=$&67108863;return this.negative=1,this.strip()},h.prototype._wordDiv=function(L,P){var O=this.length-L.length,U=this.clone(),X=L,$=X.words[X.length-1]|0,j=this._countBits($);O=26-j,O!==0&&(X=X.ushln(O),U.iushln(O),$=X.words[X.length-1]|0);var Y=U.length-X.length,q;if(P!=="mod"){q=new h(null),q.length=Y+1,q.words=new Array(q.length);for(var K=0;K=0;Q--){var oe=(U.words[X.length+Q]|0)*67108864+(U.words[X.length+Q-1]|0);for(oe=Math.min(oe/$|0,67108863),U._ishlnsubmul(X,oe,Q);U.negative!==0;)oe--,U.negative=0,U._ishlnsubmul(X,1,Q),U.isZero()||(U.negative^=1);q&&(q.words[Q]=oe)}return q&&q.strip(),U.strip(),P!=="div"&&O!==0&&U.iushrn(O),{div:q||null,mod:U}},h.prototype.divmod=function(L,P,O){if(s(!L.isZero()),this.isZero())return{div:new h(0),mod:new h(0)};var U,X,$;return this.negative!==0&&L.negative===0?($=this.neg().divmod(L,P),P!=="mod"&&(U=$.div.neg()),P!=="div"&&(X=$.mod.neg(),O&&X.negative!==0&&X.iadd(L)),{div:U,mod:X}):this.negative===0&&L.negative!==0?($=this.divmod(L.neg(),P),P!=="mod"&&(U=$.div.neg()),{div:U,mod:$.mod}):(this.negative&L.negative)!==0?($=this.neg().divmod(L.neg(),P),P!=="div"&&(X=$.mod.neg(),O&&X.negative!==0&&X.isub(L)),{div:$.div,mod:X}):L.length>this.length||this.cmp(L)<0?{div:new h(0),mod:this}:L.length===1?P==="div"?{div:this.divn(L.words[0]),mod:null}:P==="mod"?{div:null,mod:new h(this.modn(L.words[0]))}:{div:this.divn(L.words[0]),mod:new h(this.modn(L.words[0]))}:this._wordDiv(L,P)},h.prototype.div=function(L){return this.divmod(L,"div",!1).div},h.prototype.mod=function(L){return this.divmod(L,"mod",!1).mod},h.prototype.umod=function(L){return this.divmod(L,"mod",!0).mod},h.prototype.divRound=function(L){var P=this.divmod(L);if(P.mod.isZero())return P.div;var O=P.div.negative!==0?P.mod.isub(L):P.mod,U=L.ushrn(1),X=L.andln(1),$=O.cmp(U);return $<0||X===1&&$===0?P.div:P.div.negative!==0?P.div.isubn(1):P.div.iaddn(1)},h.prototype.modn=function(L){s(L<=67108863);for(var P=(1<<26)%L,O=0,U=this.length-1;U>=0;U--)O=(P*O+(this.words[U]|0))%L;return O},h.prototype.idivn=function(L){s(L<=67108863);for(var P=0,O=this.length-1;O>=0;O--){var U=(this.words[O]|0)+P*67108864;this.words[O]=U/L|0,P=U%L}return this.strip()},h.prototype.divn=function(L){return this.clone().idivn(L)},h.prototype.egcd=function(L){s(L.negative===0),s(!L.isZero());var P=this,O=L.clone();P.negative!==0?P=P.umod(L):P=P.clone();for(var U=new h(1),X=new h(0),$=new h(0),j=new h(1),Y=0;P.isEven()&&O.isEven();)P.iushrn(1),O.iushrn(1),++Y;for(var q=O.clone(),K=P.clone();!P.isZero();){for(var ne=0,Q=1;(P.words[0]&Q)===0&&ne<26;++ne,Q<<=1);if(ne>0)for(P.iushrn(ne);ne-- >0;)(U.isOdd()||X.isOdd())&&(U.iadd(q),X.isub(K)),U.iushrn(1),X.iushrn(1);for(var oe=0,re=1;(O.words[0]&re)===0&&oe<26;++oe,re<<=1);if(oe>0)for(O.iushrn(oe);oe-- >0;)($.isOdd()||j.isOdd())&&($.iadd(q),j.isub(K)),$.iushrn(1),j.iushrn(1);P.cmp(O)>=0?(P.isub(O),U.isub($),X.isub(j)):(O.isub(P),$.isub(U),j.isub(X))}return{a:$,b:j,gcd:O.iushln(Y)}},h.prototype._invmp=function(L){s(L.negative===0),s(!L.isZero());var P=this,O=L.clone();P.negative!==0?P=P.umod(L):P=P.clone();for(var U=new h(1),X=new h(0),$=O.clone();P.cmpn(1)>0&&O.cmpn(1)>0;){for(var j=0,Y=1;(P.words[0]&Y)===0&&j<26;++j,Y<<=1);if(j>0)for(P.iushrn(j);j-- >0;)U.isOdd()&&U.iadd($),U.iushrn(1);for(var q=0,K=1;(O.words[0]&K)===0&&q<26;++q,K<<=1);if(q>0)for(O.iushrn(q);q-- >0;)X.isOdd()&&X.iadd($),X.iushrn(1);P.cmp(O)>=0?(P.isub(O),U.isub(X)):(O.isub(P),X.isub(U))}var ne;return P.cmpn(1)===0?ne=U:ne=X,ne.cmpn(0)<0&&ne.iadd(L),ne},h.prototype.gcd=function(L){if(this.isZero())return L.abs();if(L.isZero())return this.abs();var P=this.clone(),O=L.clone();P.negative=0,O.negative=0;for(var U=0;P.isEven()&&O.isEven();U++)P.iushrn(1),O.iushrn(1);do{for(;P.isEven();)P.iushrn(1);for(;O.isEven();)O.iushrn(1);var X=P.cmp(O);if(X<0){var $=P;P=O,O=$}else if(X===0||O.cmpn(1)===0)break;P.isub(O)}while(!0);return O.iushln(U)},h.prototype.invm=function(L){return this.egcd(L).a.umod(L)},h.prototype.isEven=function(){return(this.words[0]&1)===0},h.prototype.isOdd=function(){return(this.words[0]&1)===1},h.prototype.andln=function(L){return this.words[0]&L},h.prototype.bincn=function(L){s(typeof L=="number");var P=L%26,O=(L-P)/26,U=1<>>26,j&=67108863,this.words[$]=j}return X!==0&&(this.words[$]=X,this.length++),this},h.prototype.isZero=function(){return this.length===1&&this.words[0]===0},h.prototype.cmpn=function(L){var P=L<0;if(this.negative!==0&&!P)return-1;if(this.negative===0&&P)return 1;this.strip();var O;if(this.length>1)O=1;else{P&&(L=-L),s(L<=67108863,"Number is too big");var U=this.words[0]|0;O=U===L?0:UL.length)return 1;if(this.length=0;O--){var U=this.words[O]|0,X=L.words[O]|0;if(U!==X){UX&&(P=1);break}}return P},h.prototype.gtn=function(L){return this.cmpn(L)===1},h.prototype.gt=function(L){return this.cmp(L)===1},h.prototype.gten=function(L){return this.cmpn(L)>=0},h.prototype.gte=function(L){return this.cmp(L)>=0},h.prototype.ltn=function(L){return this.cmpn(L)===-1},h.prototype.lt=function(L){return this.cmp(L)===-1},h.prototype.lten=function(L){return this.cmpn(L)<=0},h.prototype.lte=function(L){return this.cmp(L)<=0},h.prototype.eqn=function(L){return this.cmpn(L)===0},h.prototype.eq=function(L){return this.cmp(L)===0},h.red=function(L){return new N(L)},h.prototype.toRed=function(L){return s(!this.red,"Already a number in reduction context"),s(this.negative===0,"red works only with positives"),L.convertTo(this)._forceRed(L)},h.prototype.fromRed=function(){return s(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},h.prototype._forceRed=function(L){return this.red=L,this},h.prototype.forceRed=function(L){return s(!this.red,"Already a number in reduction context"),this._forceRed(L)},h.prototype.redAdd=function(L){return s(this.red,"redAdd works only with red numbers"),this.red.add(this,L)},h.prototype.redIAdd=function(L){return s(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,L)},h.prototype.redSub=function(L){return s(this.red,"redSub works only with red numbers"),this.red.sub(this,L)},h.prototype.redISub=function(L){return s(this.red,"redISub works only with red numbers"),this.red.isub(this,L)},h.prototype.redShl=function(L){return s(this.red,"redShl works only with red numbers"),this.red.shl(this,L)},h.prototype.redMul=function(L){return s(this.red,"redMul works only with red numbers"),this.red._verify2(this,L),this.red.mul(this,L)},h.prototype.redIMul=function(L){return s(this.red,"redMul works only with red numbers"),this.red._verify2(this,L),this.red.imul(this,L)},h.prototype.redSqr=function(){return s(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},h.prototype.redISqr=function(){return s(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},h.prototype.redSqrt=function(){return s(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},h.prototype.redInvm=function(){return s(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},h.prototype.redNeg=function(){return s(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},h.prototype.redPow=function(L){return s(this.red&&!L.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,L)};var c={k256:null,p224:null,p192:null,p25519:null};function A(I,L){this.name=I,this.p=new h(L,16),this.n=this.p.bitLength(),this.k=new h(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}A.prototype._tmp=function(){var L=new h(null);return L.words=new Array(Math.ceil(this.n/13)),L},A.prototype.ireduce=function(L){var P=L,O;do this.split(P,this.tmp),P=this.imulK(P),P=P.iadd(this.tmp),O=P.bitLength();while(O>this.n);var U=O0?P.isub(this.p):P.strip!==void 0?P.strip():P._strip(),P},A.prototype.split=function(L,P){L.iushrn(this.n,0,P)},A.prototype.imulK=function(L){return L.imul(this.k)};function v(){A.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}f(v,A),v.prototype.split=function(L,P){for(var O=4194303,U=Math.min(L.length,9),X=0;X>>22,$=j}$>>>=22,L.words[X-10]=$,$===0&&L.length>10?L.length-=10:L.length-=9},v.prototype.imulK=function(L){L.words[L.length]=0,L.words[L.length+1]=0,L.length+=2;for(var P=0,O=0;O>>=26,L.words[O]=X,P=U}return P!==0&&(L.words[L.length++]=P),L},h._prime=function(L){if(c[L])return c[L];var P;if(L==="k256")P=new v;else if(L==="p224")P=new D;else if(L==="p192")P=new E;else if(L==="p25519")P=new R;else throw new Error("Unknown prime "+L);return c[L]=P,P};function N(I){if(typeof I=="string"){var L=h._prime(I);this.m=L.p,this.prime=L}else s(I.gtn(1),"modulus must be greater than 1"),this.m=I,this.prime=null}N.prototype._verify1=function(L){s(L.negative===0,"red works only with positives"),s(L.red,"red works only with red numbers")},N.prototype._verify2=function(L,P){s((L.negative|P.negative)===0,"red works only with positives"),s(L.red&&L.red===P.red,"red works only with red numbers")},N.prototype.imod=function(L){return this.prime?this.prime.ireduce(L)._forceRed(this):L.umod(this.m)._forceRed(this)},N.prototype.neg=function(L){return L.isZero()?L.clone():this.m.sub(L)._forceRed(this)},N.prototype.add=function(L,P){this._verify2(L,P);var O=L.add(P);return O.cmp(this.m)>=0&&O.isub(this.m),O._forceRed(this)},N.prototype.iadd=function(L,P){this._verify2(L,P);var O=L.iadd(P);return O.cmp(this.m)>=0&&O.isub(this.m),O},N.prototype.sub=function(L,P){this._verify2(L,P);var O=L.sub(P);return O.cmpn(0)<0&&O.iadd(this.m),O._forceRed(this)},N.prototype.isub=function(L,P){this._verify2(L,P);var O=L.isub(P);return O.cmpn(0)<0&&O.iadd(this.m),O},N.prototype.shl=function(L,P){return this._verify1(L),this.imod(L.ushln(P))},N.prototype.imul=function(L,P){return this._verify2(L,P),this.imod(L.imul(P))},N.prototype.mul=function(L,P){return this._verify2(L,P),this.imod(L.mul(P))},N.prototype.isqr=function(L){return this.imul(L,L.clone())},N.prototype.sqr=function(L){return this.mul(L,L)},N.prototype.sqrt=function(L){if(L.isZero())return L.clone();var P=this.m.andln(3);if(s(P%2===1),P===3){var O=this.m.add(new h(1)).iushrn(2);return this.pow(L,O)}for(var U=this.m.subn(1),X=0;!U.isZero()&&U.andln(1)===0;)X++,U.iushrn(1);s(!U.isZero());var $=new h(1).toRed(this),j=$.redNeg(),Y=this.m.subn(1).iushrn(1),q=this.m.bitLength();for(q=new h(2*q*q).toRed(this);this.pow(q,Y).cmp(j)!==0;)q.redIAdd(j);for(var K=this.pow(q,U),ne=this.pow(L,U.addn(1).iushrn(1)),Q=this.pow(L,U),oe=X;Q.cmp($)!==0;){for(var re=Q,H=0;re.cmp($)!==0;H++)re=re.redSqr();s(H=0;X--){for(var K=P.words[X],ne=q-1;ne>=0;ne--){var Q=K>>ne&1;if($!==U[0]&&($=this.sqr($)),Q===0&&j===0){Y=0;continue}j<<=1,j|=Q,Y++,!(Y!==O&&(X!==0||ne!==0))&&($=this.mul($,U[j]),Y=0,j=0)}q=26}return $},N.prototype.convertTo=function(L){var P=L.umod(this.m);return P===L?P.clone():P},N.prototype.convertFrom=function(L){var P=L.clone();return P.red=null,P},h.mont=function(L){return new F(L)};function F(I){N.call(this,I),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new h(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}f(F,N),F.prototype.convertTo=function(L){return this.imod(L.ushln(this.shift))},F.prototype.convertFrom=function(L){var P=this.imod(L.mul(this.rinv));return P.red=null,P},F.prototype.imul=function(L,P){if(L.isZero()||P.isZero())return L.words[0]=0,L.length=1,L;var O=L.imul(P),U=O.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),X=O.isub(U).iushrn(this.shift),$=X;return X.cmp(this.m)>=0?$=X.isub(this.m):X.cmpn(0)<0&&($=X.iadd(this.m)),$._forceRed(this)},F.prototype.mul=function(L,P){if(L.isZero()||P.isZero())return new h(0)._forceRed(this);var O=L.mul(P),U=O.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),X=O.isub(U).iushrn(this.shift),$=X;return X.cmp(this.m)>=0?$=X.isub(this.m):X.cmpn(0)<0&&($=X.iadd(this.m)),$._forceRed(this)},F.prototype.invm=function(L){var P=this.imod(L._invmp(this.m).mul(this.r2));return P._forceRed(this)}}(a,this)},6860:function(a){a.exports=o;function o(i,l,u){return i[0]=l[0]-u[0],i[1]=l[1]-u[1],i[2]=l[2]-u[2],i[3]=l[3]-u[3],i}},6864:function(a){a.exports=o;function o(){var i=new Float32Array(16);return i[0]=1,i[1]=0,i[2]=0,i[3]=0,i[4]=0,i[5]=1,i[6]=0,i[7]=0,i[8]=0,i[9]=0,i[10]=1,i[11]=0,i[12]=0,i[13]=0,i[14]=0,i[15]=1,i}},6867:function(a,o,i){"use strict";a.exports=y;var l=i(1888),u=i(855),s=i(7150);function f(k,S){for(var b=0;b>>1;if(!(g<=0)){var c,A=l.mallocDouble(2*g*d),v=l.mallocInt32(d);if(d=h(k,g,A,v),d>0){if(g===1&&M)u.init(d),c=u.sweepComplete(g,b,0,d,A,v,0,d,A,v);else{var D=l.mallocDouble(2*g*x),E=l.mallocInt32(x);x=h(S,g,D,E),x>0&&(u.init(d+x),g===1?c=u.sweepBipartite(g,b,0,d,A,v,0,x,D,E):c=s(g,b,M,d,A,v,x,D,E),l.free(D),l.free(E))}l.free(A),l.free(v)}return c}}}var _;function m(k,S){_.push([k,S])}function w(k){return _=[],p(k,k,m,!0),_}function T(k,S){return _=[],p(k,S,m,!1),_}function y(k,S,b){switch(arguments.length){case 1:return w(k);case 2:return typeof S=="function"?p(k,k,S,!0):T(k,S);case 3:return p(k,S,b,!1);default:throw new Error("box-intersect: Invalid arguments")}}},6894:function(a){a.exports=o;function o(i,l,u,s){var f=u[1],h=u[2],p=l[1]-f,_=l[2]-h,m=Math.sin(s),w=Math.cos(s);return i[0]=l[0],i[1]=f+p*w-_*m,i[2]=h+p*m+_*w,i}},7004:function(a){"use strict";a.exports=o;function o(i){for(var l=i.length,u=i[i.length-1],s=l,f=l-2;f>=0;--f){var h=u,p=i[f];u=h+p;var _=u-h,m=p-_;m&&(i[--s]=u,u=m)}for(var w=0,f=s;f=p0)&&!(p1>=hi)"),S=m("lo===p0"),b=m("lo0;){K-=1;var oe=K*g,re=v[oe],H=v[oe+1],ee=v[oe+2],V=v[oe+3],te=v[oe+4],ue=v[oe+5],ve=K*c,ke=D[ve],Se=D[ve+1],he=ue&1,Ae=!!(ue&16),Ce=X,Pe=$,Ee=Y,Ne=q;if(he&&(Ce=Y,Pe=q,Ee=X,Ne=$),!(ue&2&&(ee=b(L,re,H,ee,Ce,Pe,Se),H>=ee))&&!(ue&4&&(H=M(L,re,H,ee,Ce,Pe,ke),H>=ee))){var Ue=ee-H,ge=te-V;if(Ae){if(L*Ue*(Ue+ge)Y&&K>0){var ne=(q[K][0]-Y)/(q[K][0]-q[K-1][0]);return q[K][1]*(1-ne)+ne*q[K-1][1]}}return 1}function F(Y,q){for(var K=y({colormap:Y,nshades:256,format:"rgba"}),ne=new Uint8Array(256*4),Q=0;Q<256;++Q){for(var oe=K[Q],re=0;re<3;++re)ne[4*Q+re]=oe[re];q?ne[4*Q+3]=255*N(Q/255,q):ne[4*Q+3]=255*oe[3]}return T(ne,[256,256,4],[4,0,1])}function I(Y){for(var q=Y.length,K=new Array(q),ne=0;ne0){var ve=this.triShader;ve.bind(),ve.uniforms=H,this.triangleVAO.bind(),q.drawArrays(q.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var ve=this.lineShader;ve.bind(),ve.uniforms=H,this.edgeVAO.bind(),q.lineWidth(this.lineWidth*this.pixelRatio),q.drawArrays(q.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()}if(this.pointCount>0){var ve=this.pointShader;ve.bind(),ve.uniforms=H,this.pointVAO.bind(),q.drawArrays(q.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var ve=this.contourShader;ve.bind(),ve.uniforms=H,this.contourVAO.bind(),q.drawArrays(q.LINES,0,this.contourCount),this.contourVAO.unbind()}},R.drawPick=function(Y){Y=Y||{};for(var q=this.gl,K=Y.model||D,ne=Y.view||D,Q=Y.projection||D,oe=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],re=0;re<3;++re)oe[0][re]=Math.max(oe[0][re],this.clipBounds[0][re]),oe[1][re]=Math.min(oe[1][re],this.clipBounds[1][re]);this._model=[].slice.call(K),this._view=[].slice.call(ne),this._projection=[].slice.call(Q),this._resolution=[q.drawingBufferWidth,q.drawingBufferHeight];var H={model:K,view:ne,projection:Q,clipBounds:oe,pickId:this.pickId/255},ee=this.pickShader;if(ee.bind(),ee.uniforms=H,this.triangleCount>0&&(this.triangleVAO.bind(),q.drawArrays(q.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),q.lineWidth(this.lineWidth*this.pixelRatio),q.drawArrays(q.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var ee=this.pointPickShader;ee.bind(),ee.uniforms=H,this.pointVAO.bind(),q.drawArrays(q.POINTS,0,this.pointCount),this.pointVAO.unbind()}},R.pick=function(Y){if(!Y||Y.id!==this.pickId)return null;for(var q=Y.value[0]+256*Y.value[1]+65536*Y.value[2],K=this.cells[q],ne=this.positions,Q=new Array(K.length),oe=0;oeMath.max(d,x)?g[2]=1:d>Math.max(M,x)?g[0]=1:g[1]=1;for(var c=0,A=0,v=0;v<3;++v)c+=b[v]*b[v],A+=g[v]*b[v];for(var v=0;v<3;++v)g[v]-=A/c*b[v];return h(g,g),g}function T(b,M,d,x,g,c,A,v){this.center=l(d),this.up=l(x),this.right=l(g),this.radius=l([c]),this.angle=l([A,v]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(b,M),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var D=0;D<16;++D)this.computedMatrix[D]=.5;this.recalcMatrix(0)}var y=T.prototype;y.setDistanceLimits=function(b,M){b>0?b=Math.log(b):b=-1/0,M>0?M=Math.log(M):M=1/0,M=Math.max(M,b),this.radius.bounds[0][0]=b,this.radius.bounds[1][0]=M},y.getDistanceLimits=function(b){var M=this.radius.bounds[0];return b?(b[0]=Math.exp(M[0][0]),b[1]=Math.exp(M[1][0]),b):[Math.exp(M[0][0]),Math.exp(M[1][0])]},y.recalcMatrix=function(b){this.center.curve(b),this.up.curve(b),this.right.curve(b),this.radius.curve(b),this.angle.curve(b);for(var M=this.computedUp,d=this.computedRight,x=0,g=0,c=0;c<3;++c)g+=M[c]*d[c],x+=M[c]*M[c];for(var A=Math.sqrt(x),v=0,c=0;c<3;++c)d[c]-=M[c]*g/x,v+=d[c]*d[c],M[c]/=A;for(var D=Math.sqrt(v),c=0;c<3;++c)d[c]/=D;var E=this.computedToward;f(E,M,d),h(E,E);for(var R=Math.exp(this.computedRadius[0]),N=this.computedAngle[0],F=this.computedAngle[1],I=Math.cos(N),L=Math.sin(N),P=Math.cos(F),O=Math.sin(F),U=this.computedCenter,X=I*P,$=L*P,j=O,Y=-I*O,q=-L*O,K=P,ne=this.computedEye,Q=this.computedMatrix,c=0;c<3;++c){var oe=X*d[c]+$*E[c]+j*M[c];Q[4*c+1]=Y*d[c]+q*E[c]+K*M[c],Q[4*c+2]=oe,Q[4*c+3]=0}var re=Q[1],H=Q[5],ee=Q[9],V=Q[2],te=Q[6],ue=Q[10],ve=H*ue-ee*te,ke=ee*V-re*ue,Se=re*te-H*V,he=_(ve,ke,Se);ve/=he,ke/=he,Se/=he,Q[0]=ve,Q[4]=ke,Q[8]=Se;for(var c=0;c<3;++c)ne[c]=U[c]+Q[2+4*c]*R;for(var c=0;c<3;++c){for(var v=0,Ae=0;Ae<3;++Ae)v+=Q[c+4*Ae]*ne[Ae];Q[12+c]=-v}Q[15]=1},y.getMatrix=function(b,M){this.recalcMatrix(b);var d=this.computedMatrix;if(M){for(var x=0;x<16;++x)M[x]=d[x];return M}return d};var k=[0,0,0];y.rotate=function(b,M,d,x){if(this.angle.move(b,M,d),x){this.recalcMatrix(b);var g=this.computedMatrix;k[0]=g[2],k[1]=g[6],k[2]=g[10];for(var c=this.computedUp,A=this.computedRight,v=this.computedToward,D=0;D<3;++D)g[4*D]=c[D],g[4*D+1]=A[D],g[4*D+2]=v[D];s(g,g,x,k);for(var D=0;D<3;++D)c[D]=g[4*D],A[D]=g[4*D+1];this.up.set(b,c[0],c[1],c[2]),this.right.set(b,A[0],A[1],A[2])}},y.pan=function(b,M,d,x){M=M||0,d=d||0,x=x||0,this.recalcMatrix(b);var g=this.computedMatrix,c=Math.exp(this.computedRadius[0]),A=g[1],v=g[5],D=g[9],E=_(A,v,D);A/=E,v/=E,D/=E;var R=g[0],N=g[4],F=g[8],I=R*A+N*v+F*D;R-=A*I,N-=v*I,F-=D*I;var L=_(R,N,F);R/=L,N/=L,F/=L;var P=R*M+A*d,O=N*M+v*d,U=F*M+D*d;this.center.move(b,P,O,U);var X=Math.exp(this.computedRadius[0]);X=Math.max(1e-4,X+x),this.radius.set(b,Math.log(X))},y.translate=function(b,M,d,x){this.center.move(b,M||0,d||0,x||0)},y.setMatrix=function(b,M,d,x){var g=1;typeof d=="number"&&(g=d|0),(g<0||g>3)&&(g=1);var c=(g+2)%3,A=(g+1)%3;M||(this.recalcMatrix(b),M=this.computedMatrix);var v=M[g],D=M[g+4],E=M[g+8];if(x){var N=Math.abs(v),F=Math.abs(D),I=Math.abs(E),L=Math.max(N,F,I);N===L?(v=v<0?-1:1,D=E=0):I===L?(E=E<0?-1:1,v=D=0):(D=D<0?-1:1,v=E=0)}else{var R=_(v,D,E);v/=R,D/=R,E/=R}var P=M[c],O=M[c+4],U=M[c+8],X=P*v+O*D+U*E;P-=v*X,O-=D*X,U-=E*X;var $=_(P,O,U);P/=$,O/=$,U/=$;var j=D*U-E*O,Y=E*P-v*U,q=v*O-D*P,K=_(j,Y,q);j/=K,Y/=K,q/=K,this.center.jump(b,Ue,ge,we),this.radius.idle(b),this.up.jump(b,v,D,E),this.right.jump(b,P,O,U);var ne,Q;if(g===2){var oe=M[1],re=M[5],H=M[9],ee=oe*P+re*O+H*U,V=oe*j+re*Y+H*q;ke<0?ne=-Math.PI/2:ne=Math.PI/2,Q=Math.atan2(V,ee)}else{var te=M[2],ue=M[6],ve=M[10],ke=te*v+ue*D+ve*E,Se=te*P+ue*O+ve*U,he=te*j+ue*Y+ve*q;ne=Math.asin(m(ke)),Q=Math.atan2(he,Se)}this.angle.jump(b,Q,ne),this.recalcMatrix(b);var Ae=M[2],Ce=M[6],Pe=M[10],Ee=this.computedMatrix;u(Ee,M);var Ne=Ee[15],Ue=Ee[12]/Ne,ge=Ee[13]/Ne,we=Ee[14]/Ne,Te=Math.exp(this.computedRadius[0]);this.center.jump(b,Ue-Ae*Te,ge-Ce*Te,we-Pe*Te)},y.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},y.idle=function(b){this.center.idle(b),this.up.idle(b),this.right.idle(b),this.radius.idle(b),this.angle.idle(b)},y.flush=function(b){this.center.flush(b),this.up.flush(b),this.right.flush(b),this.radius.flush(b),this.angle.flush(b)},y.setDistance=function(b,M){M>0&&this.radius.set(b,Math.log(M))},y.lookAt=function(b,M,d,x){this.recalcMatrix(b),M=M||this.computedEye,d=d||this.computedCenter,x=x||this.computedUp;var g=x[0],c=x[1],A=x[2],v=_(g,c,A);if(!(v<1e-6)){g/=v,c/=v,A/=v;var D=M[0]-d[0],E=M[1]-d[1],R=M[2]-d[2],N=_(D,E,R);if(!(N<1e-6)){D/=N,E/=N,R/=N;var F=this.computedRight,I=F[0],L=F[1],P=F[2],O=g*I+c*L+A*P;I-=O*g,L-=O*c,P-=O*A;var U=_(I,L,P);if(!(U<.01&&(I=c*R-A*E,L=A*D-g*R,P=g*E-c*D,U=_(I,L,P),U<1e-6))){I/=U,L/=U,P/=U,this.up.set(b,g,c,A),this.right.set(b,I,L,P),this.center.set(b,d[0],d[1],d[2]),this.radius.set(b,Math.log(N));var X=c*P-A*L,$=A*I-g*P,j=g*L-c*I,Y=_(X,$,j);X/=Y,$/=Y,j/=Y;var q=g*D+c*E+A*R,K=I*D+L*E+P*R,ne=X*D+$*E+j*R,Q=Math.asin(m(q)),oe=Math.atan2(ne,K),re=this.angle._state,H=re[re.length-1],ee=re[re.length-2];H=H%(2*Math.PI);var V=Math.abs(H+2*Math.PI-oe),te=Math.abs(H-oe),ue=Math.abs(H-2*Math.PI-oe);V>1,F=b(A[N],v);F<=0?(F===0&&(R=N),D=N+1):F>0&&(E=N-1)}return R}l=y;function k(A,v){for(var D=new Array(A.length),E=0,R=D.length;E=A.length||b(A[$],N)!==0););}return D}l=k;function S(A,v){if(!v)return k(T(M(A,0)),A,0);for(var D=new Array(v),E=0;E>>P&1&&L.push(R[P]);v.push(L)}return w(v)}l=x;function M(A,v){if(v<0)return[];for(var D=[],E=(1<0?L:P},h.min=function(L,P){return L.cmp(P)<0?L:P},h.prototype._init=function(L,P,O){if(typeof L=="number")return this._initNumber(L,P,O);if(typeof L=="object")return this._initArray(L,P,O);P==="hex"&&(P=16),s(P===(P|0)&&P>=2&&P<=36),L=L.toString().replace(/\s+/g,"");var U=0;L[0]==="-"&&(U++,this.negative=1),U=0;U-=3)$=L[U]|L[U-1]<<8|L[U-2]<<16,this.words[X]|=$<>>26-j&67108863,j+=24,j>=26&&(j-=26,X++);else if(O==="le")for(U=0,X=0;U>>26-j&67108863,j+=24,j>=26&&(j-=26,X++);return this.strip()};function b(I,L){var P=I.charCodeAt(L);return P>=65&&P<=70?P-55:P>=97&&P<=102?P-87:P-48&15}function m(I,L,P){var O=b(I,P);return P-1>=L&&(O|=b(I,P-1)<<4),O}h.prototype._parseHex=function(L,P,O){this.length=Math.ceil((L.length-P)/6),this.words=new Array(this.length);for(var U=0;U=P;U-=2)j=m(L,P,U)<=18?(X-=18,$+=1,this.words[$]|=j>>>26):X+=8;else{var Y=L.length-P;for(U=Y%2===0?P+1:P;U=18?(X-=18,$+=1,this.words[$]|=j>>>26):X+=8}this.strip()};function w(I,L,P,O){for(var U=0,X=Math.min(I.length,P),$=L;$=49?U+=j-49+10:j>=17?U+=j-17+10:U+=j}return U}h.prototype._parseBase=function(L,P,O){this.words=[0],this.length=1;for(var U=0,X=1;X<=67108863;X*=P)U++;U--,X=X/P|0;for(var $=L.length-O,j=$%U,Y=Math.min($,$-j)+O,q=0,K=O;K1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},h.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},h.prototype.inspect=function(){return(this.red?""};var T=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],y=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],k=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];h.prototype.toString=function(L,P){L=L||10,P=P|0||1;var O;if(L===16||L==="hex"){O="";for(var U=0,X=0,$=0;$>>24-U&16777215,X!==0||$!==this.length-1?O=T[6-Y.length]+Y+O:O=Y+O,U+=2,U>=26&&(U-=26,$--)}for(X!==0&&(O=X.toString(16)+O);O.length%P!==0;)O="0"+O;return this.negative!==0&&(O="-"+O),O}if(L===(L|0)&&L>=2&&L<=36){var q=y[L],K=k[L];O="";var ne=this.clone();for(ne.negative=0;!ne.isZero();){var Q=ne.modn(K).toString(L);ne=ne.idivn(K),ne.isZero()?O=Q+O:O=T[q-Q.length]+Q+O}for(this.isZero()&&(O="0"+O);O.length%P!==0;)O="0"+O;return this.negative!==0&&(O="-"+O),O}s(!1,"Base should be between 2 and 36")},h.prototype.toNumber=function(){var L=this.words[0];return this.length===2?L+=this.words[1]*67108864:this.length===3&&this.words[2]===1?L+=4503599627370496+this.words[1]*67108864:this.length>2&&s(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-L:L},h.prototype.toJSON=function(){return this.toString(16)},h.prototype.toBuffer=function(L,P){return s(typeof p!="undefined"),this.toArrayLike(p,L,P)},h.prototype.toArray=function(L,P){return this.toArrayLike(Array,L,P)},h.prototype.toArrayLike=function(L,P,O){var U=this.byteLength(),X=O||Math.max(1,U);s(U<=X,"byte array longer than desired length"),s(X>0,"Requested array length <= 0"),this.strip();var $=P==="le",j=new L(X),Y,q,K=this.clone();if($){for(q=0;!K.isZero();q++)Y=K.andln(255),K.iushrn(8),j[q]=Y;for(;q=4096&&(O+=13,P>>>=13),P>=64&&(O+=7,P>>>=7),P>=8&&(O+=4,P>>>=4),P>=2&&(O+=2,P>>>=2),O+P},h.prototype._zeroBits=function(L){if(L===0)return 26;var P=L,O=0;return(P&8191)===0&&(O+=13,P>>>=13),(P&127)===0&&(O+=7,P>>>=7),(P&15)===0&&(O+=4,P>>>=4),(P&3)===0&&(O+=2,P>>>=2),(P&1)===0&&O++,O},h.prototype.bitLength=function(){var L=this.words[this.length-1],P=this._countBits(L);return(this.length-1)*26+P};function S(I){for(var L=new Array(I.bitLength()),P=0;P>>U}return L}h.prototype.zeroBits=function(){if(this.isZero())return 0;for(var L=0,P=0;PL.length?this.clone().ior(L):L.clone().ior(this)},h.prototype.uor=function(L){return this.length>L.length?this.clone().iuor(L):L.clone().iuor(this)},h.prototype.iuand=function(L){var P;this.length>L.length?P=L:P=this;for(var O=0;OL.length?this.clone().iand(L):L.clone().iand(this)},h.prototype.uand=function(L){return this.length>L.length?this.clone().iuand(L):L.clone().iuand(this)},h.prototype.iuxor=function(L){var P,O;this.length>L.length?(P=this,O=L):(P=L,O=this);for(var U=0;UL.length?this.clone().ixor(L):L.clone().ixor(this)},h.prototype.uxor=function(L){return this.length>L.length?this.clone().iuxor(L):L.clone().iuxor(this)},h.prototype.inotn=function(L){s(typeof L=="number"&&L>=0);var P=Math.ceil(L/26)|0,O=L%26;this._expand(P),O>0&&P--;for(var U=0;U0&&(this.words[U]=~this.words[U]&67108863>>26-O),this.strip()},h.prototype.notn=function(L){return this.clone().inotn(L)},h.prototype.setn=function(L,P){s(typeof L=="number"&&L>=0);var O=L/26|0,U=L%26;return this._expand(O+1),P?this.words[O]=this.words[O]|1<L.length?(O=this,U=L):(O=L,U=this);for(var X=0,$=0;$>>26;for(;X!==0&&$>>26;if(this.length=O.length,X!==0)this.words[this.length]=X,this.length++;else if(O!==this)for(;$L.length?this.clone().iadd(L):L.clone().iadd(this)},h.prototype.isub=function(L){if(L.negative!==0){L.negative=0;var P=this.iadd(L);return L.negative=1,P._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(L),this.negative=1,this._normSign();var O=this.cmp(L);if(O===0)return this.negative=0,this.length=1,this.words[0]=0,this;var U,X;O>0?(U=this,X=L):(U=L,X=this);for(var $=0,j=0;j>26,this.words[j]=P&67108863;for(;$!==0&&j>26,this.words[j]=P&67108863;if($===0&&j>>26,ne=Y&67108863,Q=Math.min(q,L.length-1),oe=Math.max(0,q-I.length+1);oe<=Q;oe++){var re=q-oe|0;U=I.words[re]|0,X=L.words[oe]|0,$=U*X+ne,K+=$/67108864|0,ne=$&67108863}P.words[q]=ne|0,Y=K|0}return Y!==0?P.words[q]=Y|0:P.length--,P.strip()}var M=function(L,P,O){var U=L.words,X=P.words,$=O.words,j=0,Y,q,K,ne=U[0]|0,Q=ne&8191,oe=ne>>>13,re=U[1]|0,H=re&8191,ee=re>>>13,V=U[2]|0,te=V&8191,ue=V>>>13,ve=U[3]|0,ke=ve&8191,Se=ve>>>13,he=U[4]|0,Ae=he&8191,Ce=he>>>13,Pe=U[5]|0,Ee=Pe&8191,Ne=Pe>>>13,Ue=U[6]|0,ge=Ue&8191,we=Ue>>>13,Te=U[7]|0,me=Te&8191,ye=Te>>>13,pe=U[8]|0,ce=pe&8191,xe=pe>>>13,Le=U[9]|0,qe=Le&8191,ze=Le>>>13,$e=X[0]|0,Ve=$e&8191,Be=$e>>>13,Ye=X[1]|0,Me=Ye&8191,Re=Ye>>>13,Qe=X[2]|0,Ke=Qe&8191,ar=Qe>>>13,se=X[3]|0,J=se&8191,ae=se>>>13,De=X[4]|0,He=De&8191,er=De>>>13,nr=X[5]|0,fr=nr&8191,br=nr>>>13,Sr=X[6]|0,Mr=Sr&8191,Ar=Sr>>>13,ft=X[7]|0,sr=ft&8191,Pr=ft>>>13,$r=X[8]|0,Fr=$r&8191,Gr=$r>>>13,pt=X[9]|0,Rr=pt&8191,jr=pt>>>13;O.negative=L.negative^P.negative,O.length=19,Y=Math.imul(Q,Ve),q=Math.imul(Q,Be),q=q+Math.imul(oe,Ve)|0,K=Math.imul(oe,Be);var hn=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(hn>>>26)|0,hn&=67108863,Y=Math.imul(H,Ve),q=Math.imul(H,Be),q=q+Math.imul(ee,Ve)|0,K=Math.imul(ee,Be),Y=Y+Math.imul(Q,Me)|0,q=q+Math.imul(Q,Re)|0,q=q+Math.imul(oe,Me)|0,K=K+Math.imul(oe,Re)|0;var Et=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Et>>>26)|0,Et&=67108863,Y=Math.imul(te,Ve),q=Math.imul(te,Be),q=q+Math.imul(ue,Ve)|0,K=Math.imul(ue,Be),Y=Y+Math.imul(H,Me)|0,q=q+Math.imul(H,Re)|0,q=q+Math.imul(ee,Me)|0,K=K+Math.imul(ee,Re)|0,Y=Y+Math.imul(Q,Ke)|0,q=q+Math.imul(Q,ar)|0,q=q+Math.imul(oe,Ke)|0,K=K+Math.imul(oe,ar)|0;var Tn=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Tn>>>26)|0,Tn&=67108863,Y=Math.imul(ke,Ve),q=Math.imul(ke,Be),q=q+Math.imul(Se,Ve)|0,K=Math.imul(Se,Be),Y=Y+Math.imul(te,Me)|0,q=q+Math.imul(te,Re)|0,q=q+Math.imul(ue,Me)|0,K=K+Math.imul(ue,Re)|0,Y=Y+Math.imul(H,Ke)|0,q=q+Math.imul(H,ar)|0,q=q+Math.imul(ee,Ke)|0,K=K+Math.imul(ee,ar)|0,Y=Y+Math.imul(Q,J)|0,q=q+Math.imul(Q,ae)|0,q=q+Math.imul(oe,J)|0,K=K+Math.imul(oe,ae)|0;var Ot=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,Y=Math.imul(Ae,Ve),q=Math.imul(Ae,Be),q=q+Math.imul(Ce,Ve)|0,K=Math.imul(Ce,Be),Y=Y+Math.imul(ke,Me)|0,q=q+Math.imul(ke,Re)|0,q=q+Math.imul(Se,Me)|0,K=K+Math.imul(Se,Re)|0,Y=Y+Math.imul(te,Ke)|0,q=q+Math.imul(te,ar)|0,q=q+Math.imul(ue,Ke)|0,K=K+Math.imul(ue,ar)|0,Y=Y+Math.imul(H,J)|0,q=q+Math.imul(H,ae)|0,q=q+Math.imul(ee,J)|0,K=K+Math.imul(ee,ae)|0,Y=Y+Math.imul(Q,He)|0,q=q+Math.imul(Q,er)|0,q=q+Math.imul(oe,He)|0,K=K+Math.imul(oe,er)|0;var bt=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(bt>>>26)|0,bt&=67108863,Y=Math.imul(Ee,Ve),q=Math.imul(Ee,Be),q=q+Math.imul(Ne,Ve)|0,K=Math.imul(Ne,Be),Y=Y+Math.imul(Ae,Me)|0,q=q+Math.imul(Ae,Re)|0,q=q+Math.imul(Ce,Me)|0,K=K+Math.imul(Ce,Re)|0,Y=Y+Math.imul(ke,Ke)|0,q=q+Math.imul(ke,ar)|0,q=q+Math.imul(Se,Ke)|0,K=K+Math.imul(Se,ar)|0,Y=Y+Math.imul(te,J)|0,q=q+Math.imul(te,ae)|0,q=q+Math.imul(ue,J)|0,K=K+Math.imul(ue,ae)|0,Y=Y+Math.imul(H,He)|0,q=q+Math.imul(H,er)|0,q=q+Math.imul(ee,He)|0,K=K+Math.imul(ee,er)|0,Y=Y+Math.imul(Q,fr)|0,q=q+Math.imul(Q,br)|0,q=q+Math.imul(oe,fr)|0,K=K+Math.imul(oe,br)|0;var gt=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(gt>>>26)|0,gt&=67108863,Y=Math.imul(ge,Ve),q=Math.imul(ge,Be),q=q+Math.imul(we,Ve)|0,K=Math.imul(we,Be),Y=Y+Math.imul(Ee,Me)|0,q=q+Math.imul(Ee,Re)|0,q=q+Math.imul(Ne,Me)|0,K=K+Math.imul(Ne,Re)|0,Y=Y+Math.imul(Ae,Ke)|0,q=q+Math.imul(Ae,ar)|0,q=q+Math.imul(Ce,Ke)|0,K=K+Math.imul(Ce,ar)|0,Y=Y+Math.imul(ke,J)|0,q=q+Math.imul(ke,ae)|0,q=q+Math.imul(Se,J)|0,K=K+Math.imul(Se,ae)|0,Y=Y+Math.imul(te,He)|0,q=q+Math.imul(te,er)|0,q=q+Math.imul(ue,He)|0,K=K+Math.imul(ue,er)|0,Y=Y+Math.imul(H,fr)|0,q=q+Math.imul(H,br)|0,q=q+Math.imul(ee,fr)|0,K=K+Math.imul(ee,br)|0,Y=Y+Math.imul(Q,Mr)|0,q=q+Math.imul(Q,Ar)|0,q=q+Math.imul(oe,Mr)|0,K=K+Math.imul(oe,Ar)|0;var Ft=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Ft>>>26)|0,Ft&=67108863,Y=Math.imul(me,Ve),q=Math.imul(me,Be),q=q+Math.imul(ye,Ve)|0,K=Math.imul(ye,Be),Y=Y+Math.imul(ge,Me)|0,q=q+Math.imul(ge,Re)|0,q=q+Math.imul(we,Me)|0,K=K+Math.imul(we,Re)|0,Y=Y+Math.imul(Ee,Ke)|0,q=q+Math.imul(Ee,ar)|0,q=q+Math.imul(Ne,Ke)|0,K=K+Math.imul(Ne,ar)|0,Y=Y+Math.imul(Ae,J)|0,q=q+Math.imul(Ae,ae)|0,q=q+Math.imul(Ce,J)|0,K=K+Math.imul(Ce,ae)|0,Y=Y+Math.imul(ke,He)|0,q=q+Math.imul(ke,er)|0,q=q+Math.imul(Se,He)|0,K=K+Math.imul(Se,er)|0,Y=Y+Math.imul(te,fr)|0,q=q+Math.imul(te,br)|0,q=q+Math.imul(ue,fr)|0,K=K+Math.imul(ue,br)|0,Y=Y+Math.imul(H,Mr)|0,q=q+Math.imul(H,Ar)|0,q=q+Math.imul(ee,Mr)|0,K=K+Math.imul(ee,Ar)|0,Y=Y+Math.imul(Q,sr)|0,q=q+Math.imul(Q,Pr)|0,q=q+Math.imul(oe,sr)|0,K=K+Math.imul(oe,Pr)|0;var ha=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(ha>>>26)|0,ha&=67108863,Y=Math.imul(ce,Ve),q=Math.imul(ce,Be),q=q+Math.imul(xe,Ve)|0,K=Math.imul(xe,Be),Y=Y+Math.imul(me,Me)|0,q=q+Math.imul(me,Re)|0,q=q+Math.imul(ye,Me)|0,K=K+Math.imul(ye,Re)|0,Y=Y+Math.imul(ge,Ke)|0,q=q+Math.imul(ge,ar)|0,q=q+Math.imul(we,Ke)|0,K=K+Math.imul(we,ar)|0,Y=Y+Math.imul(Ee,J)|0,q=q+Math.imul(Ee,ae)|0,q=q+Math.imul(Ne,J)|0,K=K+Math.imul(Ne,ae)|0,Y=Y+Math.imul(Ae,He)|0,q=q+Math.imul(Ae,er)|0,q=q+Math.imul(Ce,He)|0,K=K+Math.imul(Ce,er)|0,Y=Y+Math.imul(ke,fr)|0,q=q+Math.imul(ke,br)|0,q=q+Math.imul(Se,fr)|0,K=K+Math.imul(Se,br)|0,Y=Y+Math.imul(te,Mr)|0,q=q+Math.imul(te,Ar)|0,q=q+Math.imul(ue,Mr)|0,K=K+Math.imul(ue,Ar)|0,Y=Y+Math.imul(H,sr)|0,q=q+Math.imul(H,Pr)|0,q=q+Math.imul(ee,sr)|0,K=K+Math.imul(ee,Pr)|0,Y=Y+Math.imul(Q,Fr)|0,q=q+Math.imul(Q,Gr)|0,q=q+Math.imul(oe,Fr)|0,K=K+Math.imul(oe,Gr)|0;var Qn=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Qn>>>26)|0,Qn&=67108863,Y=Math.imul(qe,Ve),q=Math.imul(qe,Be),q=q+Math.imul(ze,Ve)|0,K=Math.imul(ze,Be),Y=Y+Math.imul(ce,Me)|0,q=q+Math.imul(ce,Re)|0,q=q+Math.imul(xe,Me)|0,K=K+Math.imul(xe,Re)|0,Y=Y+Math.imul(me,Ke)|0,q=q+Math.imul(me,ar)|0,q=q+Math.imul(ye,Ke)|0,K=K+Math.imul(ye,ar)|0,Y=Y+Math.imul(ge,J)|0,q=q+Math.imul(ge,ae)|0,q=q+Math.imul(we,J)|0,K=K+Math.imul(we,ae)|0,Y=Y+Math.imul(Ee,He)|0,q=q+Math.imul(Ee,er)|0,q=q+Math.imul(Ne,He)|0,K=K+Math.imul(Ne,er)|0,Y=Y+Math.imul(Ae,fr)|0,q=q+Math.imul(Ae,br)|0,q=q+Math.imul(Ce,fr)|0,K=K+Math.imul(Ce,br)|0,Y=Y+Math.imul(ke,Mr)|0,q=q+Math.imul(ke,Ar)|0,q=q+Math.imul(Se,Mr)|0,K=K+Math.imul(Se,Ar)|0,Y=Y+Math.imul(te,sr)|0,q=q+Math.imul(te,Pr)|0,q=q+Math.imul(ue,sr)|0,K=K+Math.imul(ue,Pr)|0,Y=Y+Math.imul(H,Fr)|0,q=q+Math.imul(H,Gr)|0,q=q+Math.imul(ee,Fr)|0,K=K+Math.imul(ee,Gr)|0,Y=Y+Math.imul(Q,Rr)|0,q=q+Math.imul(Q,jr)|0,q=q+Math.imul(oe,Rr)|0,K=K+Math.imul(oe,jr)|0;var In=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(In>>>26)|0,In&=67108863,Y=Math.imul(qe,Me),q=Math.imul(qe,Re),q=q+Math.imul(ze,Me)|0,K=Math.imul(ze,Re),Y=Y+Math.imul(ce,Ke)|0,q=q+Math.imul(ce,ar)|0,q=q+Math.imul(xe,Ke)|0,K=K+Math.imul(xe,ar)|0,Y=Y+Math.imul(me,J)|0,q=q+Math.imul(me,ae)|0,q=q+Math.imul(ye,J)|0,K=K+Math.imul(ye,ae)|0,Y=Y+Math.imul(ge,He)|0,q=q+Math.imul(ge,er)|0,q=q+Math.imul(we,He)|0,K=K+Math.imul(we,er)|0,Y=Y+Math.imul(Ee,fr)|0,q=q+Math.imul(Ee,br)|0,q=q+Math.imul(Ne,fr)|0,K=K+Math.imul(Ne,br)|0,Y=Y+Math.imul(Ae,Mr)|0,q=q+Math.imul(Ae,Ar)|0,q=q+Math.imul(Ce,Mr)|0,K=K+Math.imul(Ce,Ar)|0,Y=Y+Math.imul(ke,sr)|0,q=q+Math.imul(ke,Pr)|0,q=q+Math.imul(Se,sr)|0,K=K+Math.imul(Se,Pr)|0,Y=Y+Math.imul(te,Fr)|0,q=q+Math.imul(te,Gr)|0,q=q+Math.imul(ue,Fr)|0,K=K+Math.imul(ue,Gr)|0,Y=Y+Math.imul(H,Rr)|0,q=q+Math.imul(H,jr)|0,q=q+Math.imul(ee,Rr)|0,K=K+Math.imul(ee,jr)|0;var wa=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(wa>>>26)|0,wa&=67108863,Y=Math.imul(qe,Ke),q=Math.imul(qe,ar),q=q+Math.imul(ze,Ke)|0,K=Math.imul(ze,ar),Y=Y+Math.imul(ce,J)|0,q=q+Math.imul(ce,ae)|0,q=q+Math.imul(xe,J)|0,K=K+Math.imul(xe,ae)|0,Y=Y+Math.imul(me,He)|0,q=q+Math.imul(me,er)|0,q=q+Math.imul(ye,He)|0,K=K+Math.imul(ye,er)|0,Y=Y+Math.imul(ge,fr)|0,q=q+Math.imul(ge,br)|0,q=q+Math.imul(we,fr)|0,K=K+Math.imul(we,br)|0,Y=Y+Math.imul(Ee,Mr)|0,q=q+Math.imul(Ee,Ar)|0,q=q+Math.imul(Ne,Mr)|0,K=K+Math.imul(Ne,Ar)|0,Y=Y+Math.imul(Ae,sr)|0,q=q+Math.imul(Ae,Pr)|0,q=q+Math.imul(Ce,sr)|0,K=K+Math.imul(Ce,Pr)|0,Y=Y+Math.imul(ke,Fr)|0,q=q+Math.imul(ke,Gr)|0,q=q+Math.imul(Se,Fr)|0,K=K+Math.imul(Se,Gr)|0,Y=Y+Math.imul(te,Rr)|0,q=q+Math.imul(te,jr)|0,q=q+Math.imul(ue,Rr)|0,K=K+Math.imul(ue,jr)|0;var bi=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(bi>>>26)|0,bi&=67108863,Y=Math.imul(qe,J),q=Math.imul(qe,ae),q=q+Math.imul(ze,J)|0,K=Math.imul(ze,ae),Y=Y+Math.imul(ce,He)|0,q=q+Math.imul(ce,er)|0,q=q+Math.imul(xe,He)|0,K=K+Math.imul(xe,er)|0,Y=Y+Math.imul(me,fr)|0,q=q+Math.imul(me,br)|0,q=q+Math.imul(ye,fr)|0,K=K+Math.imul(ye,br)|0,Y=Y+Math.imul(ge,Mr)|0,q=q+Math.imul(ge,Ar)|0,q=q+Math.imul(we,Mr)|0,K=K+Math.imul(we,Ar)|0,Y=Y+Math.imul(Ee,sr)|0,q=q+Math.imul(Ee,Pr)|0,q=q+Math.imul(Ne,sr)|0,K=K+Math.imul(Ne,Pr)|0,Y=Y+Math.imul(Ae,Fr)|0,q=q+Math.imul(Ae,Gr)|0,q=q+Math.imul(Ce,Fr)|0,K=K+Math.imul(Ce,Gr)|0,Y=Y+Math.imul(ke,Rr)|0,q=q+Math.imul(ke,jr)|0,q=q+Math.imul(Se,Rr)|0,K=K+Math.imul(Se,jr)|0;var Gi=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Gi>>>26)|0,Gi&=67108863,Y=Math.imul(qe,He),q=Math.imul(qe,er),q=q+Math.imul(ze,He)|0,K=Math.imul(ze,er),Y=Y+Math.imul(ce,fr)|0,q=q+Math.imul(ce,br)|0,q=q+Math.imul(xe,fr)|0,K=K+Math.imul(xe,br)|0,Y=Y+Math.imul(me,Mr)|0,q=q+Math.imul(me,Ar)|0,q=q+Math.imul(ye,Mr)|0,K=K+Math.imul(ye,Ar)|0,Y=Y+Math.imul(ge,sr)|0,q=q+Math.imul(ge,Pr)|0,q=q+Math.imul(we,sr)|0,K=K+Math.imul(we,Pr)|0,Y=Y+Math.imul(Ee,Fr)|0,q=q+Math.imul(Ee,Gr)|0,q=q+Math.imul(Ne,Fr)|0,K=K+Math.imul(Ne,Gr)|0,Y=Y+Math.imul(Ae,Rr)|0,q=q+Math.imul(Ae,jr)|0,q=q+Math.imul(Ce,Rr)|0,K=K+Math.imul(Ce,jr)|0;var Yi=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Yi>>>26)|0,Yi&=67108863,Y=Math.imul(qe,fr),q=Math.imul(qe,br),q=q+Math.imul(ze,fr)|0,K=Math.imul(ze,br),Y=Y+Math.imul(ce,Mr)|0,q=q+Math.imul(ce,Ar)|0,q=q+Math.imul(xe,Mr)|0,K=K+Math.imul(xe,Ar)|0,Y=Y+Math.imul(me,sr)|0,q=q+Math.imul(me,Pr)|0,q=q+Math.imul(ye,sr)|0,K=K+Math.imul(ye,Pr)|0,Y=Y+Math.imul(ge,Fr)|0,q=q+Math.imul(ge,Gr)|0,q=q+Math.imul(we,Fr)|0,K=K+Math.imul(we,Gr)|0,Y=Y+Math.imul(Ee,Rr)|0,q=q+Math.imul(Ee,jr)|0,q=q+Math.imul(Ne,Rr)|0,K=K+Math.imul(Ne,jr)|0;var Wi=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(Wi>>>26)|0,Wi&=67108863,Y=Math.imul(qe,Mr),q=Math.imul(qe,Ar),q=q+Math.imul(ze,Mr)|0,K=Math.imul(ze,Ar),Y=Y+Math.imul(ce,sr)|0,q=q+Math.imul(ce,Pr)|0,q=q+Math.imul(xe,sr)|0,K=K+Math.imul(xe,Pr)|0,Y=Y+Math.imul(me,Fr)|0,q=q+Math.imul(me,Gr)|0,q=q+Math.imul(ye,Fr)|0,K=K+Math.imul(ye,Gr)|0,Y=Y+Math.imul(ge,Rr)|0,q=q+Math.imul(ge,jr)|0,q=q+Math.imul(we,Rr)|0,K=K+Math.imul(we,jr)|0;var tn=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(tn>>>26)|0,tn&=67108863,Y=Math.imul(qe,sr),q=Math.imul(qe,Pr),q=q+Math.imul(ze,sr)|0,K=Math.imul(ze,Pr),Y=Y+Math.imul(ce,Fr)|0,q=q+Math.imul(ce,Gr)|0,q=q+Math.imul(xe,Fr)|0,K=K+Math.imul(xe,Gr)|0,Y=Y+Math.imul(me,Rr)|0,q=q+Math.imul(me,jr)|0,q=q+Math.imul(ye,Rr)|0,K=K+Math.imul(ye,jr)|0;var xo=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(xo>>>26)|0,xo&=67108863,Y=Math.imul(qe,Fr),q=Math.imul(qe,Gr),q=q+Math.imul(ze,Fr)|0,K=Math.imul(ze,Gr),Y=Y+Math.imul(ce,Rr)|0,q=q+Math.imul(ce,jr)|0,q=q+Math.imul(xe,Rr)|0,K=K+Math.imul(xe,jr)|0;var _i=(j+Y|0)+((q&8191)<<13)|0;j=(K+(q>>>13)|0)+(_i>>>26)|0,_i&=67108863,Y=Math.imul(qe,Rr),q=Math.imul(qe,jr),q=q+Math.imul(ze,Rr)|0,K=Math.imul(ze,jr);var wi=(j+Y|0)+((q&8191)<<13)|0;return j=(K+(q>>>13)|0)+(wi>>>26)|0,wi&=67108863,$[0]=hn,$[1]=Et,$[2]=Tn,$[3]=Ot,$[4]=bt,$[5]=gt,$[6]=Ft,$[7]=ha,$[8]=Qn,$[9]=In,$[10]=wa,$[11]=bi,$[12]=Gi,$[13]=Yi,$[14]=Wi,$[15]=tn,$[16]=xo,$[17]=_i,$[18]=wi,j!==0&&($[19]=j,O.length++),O};Math.imul||(M=x);function d(I,L,P){P.negative=L.negative^I.negative,P.length=I.length+L.length;for(var O=0,U=0,X=0;X>>26)|0,U+=$>>>26,$&=67108863}P.words[X]=j,O=$,$=U}return O!==0?P.words[X]=O:P.length--,P.strip()}function _(I,L,P){var O=new g;return O.mulp(I,L,P)}h.prototype.mulTo=function(L,P){var O,U=this.length+L.length;return this.length===10&&L.length===10?O=M(this,L,P):U<63?O=x(this,L,P):U<1024?O=d(this,L,P):O=_(this,L,P),O};function g(I,L){this.x=I,this.y=L}g.prototype.makeRBT=function(L){for(var P=new Array(L),O=h.prototype._countBits(L)-1,U=0;U>=1;return U},g.prototype.permute=function(L,P,O,U,X,$){for(var j=0;j<$;j++)U[j]=P[L[j]],X[j]=O[L[j]]},g.prototype.transform=function(L,P,O,U,X,$){this.permute($,L,P,O,U,X);for(var j=1;j>>1)X++;return 1<>>13,O[2*$+1]=X&8191,X=X>>>13;for($=2*P;$>=26,P+=U/67108864|0,P+=X>>>26,this.words[O]=X&67108863}return P!==0&&(this.words[O]=P,this.length++),this},h.prototype.muln=function(L){return this.clone().imuln(L)},h.prototype.sqr=function(){return this.mul(this)},h.prototype.isqr=function(){return this.imul(this.clone())},h.prototype.pow=function(L){var P=S(L);if(P.length===0)return new h(1);for(var O=this,U=0;U=0);var P=L%26,O=(L-P)/26,U=67108863>>>26-P<<26-P,X;if(P!==0){var $=0;for(X=0;X>>26-P}$&&(this.words[X]=$,this.length++)}if(O!==0){for(X=this.length-1;X>=0;X--)this.words[X+O]=this.words[X];for(X=0;X=0);var U;P?U=(P-P%26)/26:U=0;var X=L%26,$=Math.min((L-X)/26,this.length),j=67108863^67108863>>>X<$)for(this.length-=$,q=0;q=0&&(K!==0||q>=U);q--){var ne=this.words[q]|0;this.words[q]=K<<26-X|ne>>>X,K=ne&j}return Y&&K!==0&&(Y.words[Y.length++]=K),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},h.prototype.ishrn=function(L,P,O){return s(this.negative===0),this.iushrn(L,P,O)},h.prototype.shln=function(L){return this.clone().ishln(L)},h.prototype.ushln=function(L){return this.clone().iushln(L)},h.prototype.shrn=function(L){return this.clone().ishrn(L)},h.prototype.ushrn=function(L){return this.clone().iushrn(L)},h.prototype.testn=function(L){s(typeof L=="number"&&L>=0);var P=L%26,O=(L-P)/26,U=1<=0);var P=L%26,O=(L-P)/26;if(s(this.negative===0,"imaskn works only with positive numbers"),this.length<=O)return this;if(P!==0&&O++,this.length=Math.min(O,this.length),P!==0){var U=67108863^67108863>>>P<=67108864;P++)this.words[P]-=67108864,P===this.length-1?this.words[P+1]=1:this.words[P+1]++;return this.length=Math.max(this.length,P+1),this},h.prototype.isubn=function(L){if(s(typeof L=="number"),s(L<67108864),L<0)return this.iaddn(-L);if(this.negative!==0)return this.negative=0,this.iaddn(L),this.negative=1,this;if(this.words[0]-=L,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var P=0;P>26)-(Y/67108864|0),this.words[X+O]=$&67108863}for(;X>26,this.words[X+O]=$&67108863;if(j===0)return this.strip();for(s(j===-1),j=0,X=0;X>26,this.words[X]=$&67108863;return this.negative=1,this.strip()},h.prototype._wordDiv=function(L,P){var O=this.length-L.length,U=this.clone(),X=L,$=X.words[X.length-1]|0,j=this._countBits($);O=26-j,O!==0&&(X=X.ushln(O),U.iushln(O),$=X.words[X.length-1]|0);var Y=U.length-X.length,q;if(P!=="mod"){q=new h(null),q.length=Y+1,q.words=new Array(q.length);for(var K=0;K=0;Q--){var oe=(U.words[X.length+Q]|0)*67108864+(U.words[X.length+Q-1]|0);for(oe=Math.min(oe/$|0,67108863),U._ishlnsubmul(X,oe,Q);U.negative!==0;)oe--,U.negative=0,U._ishlnsubmul(X,1,Q),U.isZero()||(U.negative^=1);q&&(q.words[Q]=oe)}return q&&q.strip(),U.strip(),P!=="div"&&O!==0&&U.iushrn(O),{div:q||null,mod:U}},h.prototype.divmod=function(L,P,O){if(s(!L.isZero()),this.isZero())return{div:new h(0),mod:new h(0)};var U,X,$;return this.negative!==0&&L.negative===0?($=this.neg().divmod(L,P),P!=="mod"&&(U=$.div.neg()),P!=="div"&&(X=$.mod.neg(),O&&X.negative!==0&&X.iadd(L)),{div:U,mod:X}):this.negative===0&&L.negative!==0?($=this.divmod(L.neg(),P),P!=="mod"&&(U=$.div.neg()),{div:U,mod:$.mod}):(this.negative&L.negative)!==0?($=this.neg().divmod(L.neg(),P),P!=="div"&&(X=$.mod.neg(),O&&X.negative!==0&&X.isub(L)),{div:$.div,mod:X}):L.length>this.length||this.cmp(L)<0?{div:new h(0),mod:this}:L.length===1?P==="div"?{div:this.divn(L.words[0]),mod:null}:P==="mod"?{div:null,mod:new h(this.modn(L.words[0]))}:{div:this.divn(L.words[0]),mod:new h(this.modn(L.words[0]))}:this._wordDiv(L,P)},h.prototype.div=function(L){return this.divmod(L,"div",!1).div},h.prototype.mod=function(L){return this.divmod(L,"mod",!1).mod},h.prototype.umod=function(L){return this.divmod(L,"mod",!0).mod},h.prototype.divRound=function(L){var P=this.divmod(L);if(P.mod.isZero())return P.div;var O=P.div.negative!==0?P.mod.isub(L):P.mod,U=L.ushrn(1),X=L.andln(1),$=O.cmp(U);return $<0||X===1&&$===0?P.div:P.div.negative!==0?P.div.isubn(1):P.div.iaddn(1)},h.prototype.modn=function(L){s(L<=67108863);for(var P=(1<<26)%L,O=0,U=this.length-1;U>=0;U--)O=(P*O+(this.words[U]|0))%L;return O},h.prototype.idivn=function(L){s(L<=67108863);for(var P=0,O=this.length-1;O>=0;O--){var U=(this.words[O]|0)+P*67108864;this.words[O]=U/L|0,P=U%L}return this.strip()},h.prototype.divn=function(L){return this.clone().idivn(L)},h.prototype.egcd=function(L){s(L.negative===0),s(!L.isZero());var P=this,O=L.clone();P.negative!==0?P=P.umod(L):P=P.clone();for(var U=new h(1),X=new h(0),$=new h(0),j=new h(1),Y=0;P.isEven()&&O.isEven();)P.iushrn(1),O.iushrn(1),++Y;for(var q=O.clone(),K=P.clone();!P.isZero();){for(var ne=0,Q=1;(P.words[0]&Q)===0&&ne<26;++ne,Q<<=1);if(ne>0)for(P.iushrn(ne);ne-- >0;)(U.isOdd()||X.isOdd())&&(U.iadd(q),X.isub(K)),U.iushrn(1),X.iushrn(1);for(var oe=0,re=1;(O.words[0]&re)===0&&oe<26;++oe,re<<=1);if(oe>0)for(O.iushrn(oe);oe-- >0;)($.isOdd()||j.isOdd())&&($.iadd(q),j.isub(K)),$.iushrn(1),j.iushrn(1);P.cmp(O)>=0?(P.isub(O),U.isub($),X.isub(j)):(O.isub(P),$.isub(U),j.isub(X))}return{a:$,b:j,gcd:O.iushln(Y)}},h.prototype._invmp=function(L){s(L.negative===0),s(!L.isZero());var P=this,O=L.clone();P.negative!==0?P=P.umod(L):P=P.clone();for(var U=new h(1),X=new h(0),$=O.clone();P.cmpn(1)>0&&O.cmpn(1)>0;){for(var j=0,Y=1;(P.words[0]&Y)===0&&j<26;++j,Y<<=1);if(j>0)for(P.iushrn(j);j-- >0;)U.isOdd()&&U.iadd($),U.iushrn(1);for(var q=0,K=1;(O.words[0]&K)===0&&q<26;++q,K<<=1);if(q>0)for(O.iushrn(q);q-- >0;)X.isOdd()&&X.iadd($),X.iushrn(1);P.cmp(O)>=0?(P.isub(O),U.isub(X)):(O.isub(P),X.isub(U))}var ne;return P.cmpn(1)===0?ne=U:ne=X,ne.cmpn(0)<0&&ne.iadd(L),ne},h.prototype.gcd=function(L){if(this.isZero())return L.abs();if(L.isZero())return this.abs();var P=this.clone(),O=L.clone();P.negative=0,O.negative=0;for(var U=0;P.isEven()&&O.isEven();U++)P.iushrn(1),O.iushrn(1);do{for(;P.isEven();)P.iushrn(1);for(;O.isEven();)O.iushrn(1);var X=P.cmp(O);if(X<0){var $=P;P=O,O=$}else if(X===0||O.cmpn(1)===0)break;P.isub(O)}while(!0);return O.iushln(U)},h.prototype.invm=function(L){return this.egcd(L).a.umod(L)},h.prototype.isEven=function(){return(this.words[0]&1)===0},h.prototype.isOdd=function(){return(this.words[0]&1)===1},h.prototype.andln=function(L){return this.words[0]&L},h.prototype.bincn=function(L){s(typeof L=="number");var P=L%26,O=(L-P)/26,U=1<>>26,j&=67108863,this.words[$]=j}return X!==0&&(this.words[$]=X,this.length++),this},h.prototype.isZero=function(){return this.length===1&&this.words[0]===0},h.prototype.cmpn=function(L){var P=L<0;if(this.negative!==0&&!P)return-1;if(this.negative===0&&P)return 1;this.strip();var O;if(this.length>1)O=1;else{P&&(L=-L),s(L<=67108863,"Number is too big");var U=this.words[0]|0;O=U===L?0:UL.length)return 1;if(this.length=0;O--){var U=this.words[O]|0,X=L.words[O]|0;if(U!==X){UX&&(P=1);break}}return P},h.prototype.gtn=function(L){return this.cmpn(L)===1},h.prototype.gt=function(L){return this.cmp(L)===1},h.prototype.gten=function(L){return this.cmpn(L)>=0},h.prototype.gte=function(L){return this.cmp(L)>=0},h.prototype.ltn=function(L){return this.cmpn(L)===-1},h.prototype.lt=function(L){return this.cmp(L)===-1},h.prototype.lten=function(L){return this.cmpn(L)<=0},h.prototype.lte=function(L){return this.cmp(L)<=0},h.prototype.eqn=function(L){return this.cmpn(L)===0},h.prototype.eq=function(L){return this.cmp(L)===0},h.red=function(L){return new N(L)},h.prototype.toRed=function(L){return s(!this.red,"Already a number in reduction context"),s(this.negative===0,"red works only with positives"),L.convertTo(this)._forceRed(L)},h.prototype.fromRed=function(){return s(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},h.prototype._forceRed=function(L){return this.red=L,this},h.prototype.forceRed=function(L){return s(!this.red,"Already a number in reduction context"),this._forceRed(L)},h.prototype.redAdd=function(L){return s(this.red,"redAdd works only with red numbers"),this.red.add(this,L)},h.prototype.redIAdd=function(L){return s(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,L)},h.prototype.redSub=function(L){return s(this.red,"redSub works only with red numbers"),this.red.sub(this,L)},h.prototype.redISub=function(L){return s(this.red,"redISub works only with red numbers"),this.red.isub(this,L)},h.prototype.redShl=function(L){return s(this.red,"redShl works only with red numbers"),this.red.shl(this,L)},h.prototype.redMul=function(L){return s(this.red,"redMul works only with red numbers"),this.red._verify2(this,L),this.red.mul(this,L)},h.prototype.redIMul=function(L){return s(this.red,"redMul works only with red numbers"),this.red._verify2(this,L),this.red.imul(this,L)},h.prototype.redSqr=function(){return s(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},h.prototype.redISqr=function(){return s(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},h.prototype.redSqrt=function(){return s(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},h.prototype.redInvm=function(){return s(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},h.prototype.redNeg=function(){return s(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},h.prototype.redPow=function(L){return s(this.red&&!L.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,L)};var c={k256:null,p224:null,p192:null,p25519:null};function A(I,L){this.name=I,this.p=new h(L,16),this.n=this.p.bitLength(),this.k=new h(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}A.prototype._tmp=function(){var L=new h(null);return L.words=new Array(Math.ceil(this.n/13)),L},A.prototype.ireduce=function(L){var P=L,O;do this.split(P,this.tmp),P=this.imulK(P),P=P.iadd(this.tmp),O=P.bitLength();while(O>this.n);var U=O0?P.isub(this.p):P.strip!==void 0?P.strip():P._strip(),P},A.prototype.split=function(L,P){L.iushrn(this.n,0,P)},A.prototype.imulK=function(L){return L.imul(this.k)};function v(){A.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}f(v,A),v.prototype.split=function(L,P){for(var O=4194303,U=Math.min(L.length,9),X=0;X>>22,$=j}$>>>=22,L.words[X-10]=$,$===0&&L.length>10?L.length-=10:L.length-=9},v.prototype.imulK=function(L){L.words[L.length]=0,L.words[L.length+1]=0,L.length+=2;for(var P=0,O=0;O>>=26,L.words[O]=X,P=U}return P!==0&&(L.words[L.length++]=P),L},h._prime=function(L){if(c[L])return c[L];var P;if(L==="k256")P=new v;else if(L==="p224")P=new D;else if(L==="p192")P=new E;else if(L==="p25519")P=new R;else throw new Error("Unknown prime "+L);return c[L]=P,P};function N(I){if(typeof I=="string"){var L=h._prime(I);this.m=L.p,this.prime=L}else s(I.gtn(1),"modulus must be greater than 1"),this.m=I,this.prime=null}N.prototype._verify1=function(L){s(L.negative===0,"red works only with positives"),s(L.red,"red works only with red numbers")},N.prototype._verify2=function(L,P){s((L.negative|P.negative)===0,"red works only with positives"),s(L.red&&L.red===P.red,"red works only with red numbers")},N.prototype.imod=function(L){return this.prime?this.prime.ireduce(L)._forceRed(this):L.umod(this.m)._forceRed(this)},N.prototype.neg=function(L){return L.isZero()?L.clone():this.m.sub(L)._forceRed(this)},N.prototype.add=function(L,P){this._verify2(L,P);var O=L.add(P);return O.cmp(this.m)>=0&&O.isub(this.m),O._forceRed(this)},N.prototype.iadd=function(L,P){this._verify2(L,P);var O=L.iadd(P);return O.cmp(this.m)>=0&&O.isub(this.m),O},N.prototype.sub=function(L,P){this._verify2(L,P);var O=L.sub(P);return O.cmpn(0)<0&&O.iadd(this.m),O._forceRed(this)},N.prototype.isub=function(L,P){this._verify2(L,P);var O=L.isub(P);return O.cmpn(0)<0&&O.iadd(this.m),O},N.prototype.shl=function(L,P){return this._verify1(L),this.imod(L.ushln(P))},N.prototype.imul=function(L,P){return this._verify2(L,P),this.imod(L.imul(P))},N.prototype.mul=function(L,P){return this._verify2(L,P),this.imod(L.mul(P))},N.prototype.isqr=function(L){return this.imul(L,L.clone())},N.prototype.sqr=function(L){return this.mul(L,L)},N.prototype.sqrt=function(L){if(L.isZero())return L.clone();var P=this.m.andln(3);if(s(P%2===1),P===3){var O=this.m.add(new h(1)).iushrn(2);return this.pow(L,O)}for(var U=this.m.subn(1),X=0;!U.isZero()&&U.andln(1)===0;)X++,U.iushrn(1);s(!U.isZero());var $=new h(1).toRed(this),j=$.redNeg(),Y=this.m.subn(1).iushrn(1),q=this.m.bitLength();for(q=new h(2*q*q).toRed(this);this.pow(q,Y).cmp(j)!==0;)q.redIAdd(j);for(var K=this.pow(q,U),ne=this.pow(L,U.addn(1).iushrn(1)),Q=this.pow(L,U),oe=X;Q.cmp($)!==0;){for(var re=Q,H=0;re.cmp($)!==0;H++)re=re.redSqr();s(H=0;X--){for(var K=P.words[X],ne=q-1;ne>=0;ne--){var Q=K>>ne&1;if($!==U[0]&&($=this.sqr($)),Q===0&&j===0){Y=0;continue}j<<=1,j|=Q,Y++,!(Y!==O&&(X!==0||ne!==0))&&($=this.mul($,U[j]),Y=0,j=0)}q=26}return $},N.prototype.convertTo=function(L){var P=L.umod(this.m);return P===L?P.clone():P},N.prototype.convertFrom=function(L){var P=L.clone();return P.red=null,P},h.mont=function(L){return new F(L)};function F(I){N.call(this,I),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new h(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}f(F,N),F.prototype.convertTo=function(L){return this.imod(L.ushln(this.shift))},F.prototype.convertFrom=function(L){var P=this.imod(L.mul(this.rinv));return P.red=null,P},F.prototype.imul=function(L,P){if(L.isZero()||P.isZero())return L.words[0]=0,L.length=1,L;var O=L.imul(P),U=O.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),X=O.isub(U).iushrn(this.shift),$=X;return X.cmp(this.m)>=0?$=X.isub(this.m):X.cmpn(0)<0&&($=X.iadd(this.m)),$._forceRed(this)},F.prototype.mul=function(L,P){if(L.isZero()||P.isZero())return new h(0)._forceRed(this);var O=L.mul(P),U=O.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),X=O.isub(U).iushrn(this.shift),$=X;return X.cmp(this.m)>=0?$=X.isub(this.m):X.cmpn(0)<0&&($=X.iadd(this.m)),$._forceRed(this)},F.prototype.invm=function(L){var P=this.imod(L._invmp(this.m).mul(this.r2));return P._forceRed(this)}}(a,this)},6860:function(a){a.exports=o;function o(i,l,u){return i[0]=l[0]-u[0],i[1]=l[1]-u[1],i[2]=l[2]-u[2],i[3]=l[3]-u[3],i}},6864:function(a){a.exports=o;function o(){var i=new Float32Array(16);return i[0]=1,i[1]=0,i[2]=0,i[3]=0,i[4]=0,i[5]=1,i[6]=0,i[7]=0,i[8]=0,i[9]=0,i[10]=1,i[11]=0,i[12]=0,i[13]=0,i[14]=0,i[15]=1,i}},6867:function(a,o,i){"use strict";a.exports=y;var l=i(1888),u=i(855),s=i(7150);function f(k,S){for(var x=0;x>>1;if(!(g<=0)){var c,A=l.mallocDouble(2*g*d),v=l.mallocInt32(d);if(d=h(k,g,A,v),d>0){if(g===1&&M)u.init(d),c=u.sweepComplete(g,x,0,d,A,v,0,d,A,v);else{var D=l.mallocDouble(2*g*_),E=l.mallocInt32(_);_=h(S,g,D,E),_>0&&(u.init(d+_),g===1?c=u.sweepBipartite(g,x,0,d,A,v,0,_,D,E):c=s(g,x,M,d,A,v,_,D,E),l.free(D),l.free(E))}l.free(A),l.free(v)}return c}}}var b;function m(k,S){b.push([k,S])}function w(k){return b=[],p(k,k,m,!0),b}function T(k,S){return b=[],p(k,S,m,!1),b}function y(k,S,x){switch(arguments.length){case 1:return w(k);case 2:return typeof S=="function"?p(k,k,S,!0):T(k,S);case 3:return p(k,S,x,!1);default:throw new Error("box-intersect: Invalid arguments")}}},6894:function(a){a.exports=o;function o(i,l,u,s){var f=u[1],h=u[2],p=l[1]-f,b=l[2]-h,m=Math.sin(s),w=Math.cos(s);return i[0]=l[0],i[1]=f+p*w-b*m,i[2]=h+p*m+b*w,i}},7004:function(a){"use strict";a.exports=o;function o(i){for(var l=i.length,u=i[i.length-1],s=l,f=l-2;f>=0;--f){var h=u,p=i[f];u=h+p;var b=u-h,m=p-b;m&&(i[--s]=u,u=m)}for(var w=0,f=s;f=p0)&&!(p1>=hi)"),S=m("lo===p0"),x=m("lo0;){K-=1;var oe=K*g,re=v[oe],H=v[oe+1],ee=v[oe+2],V=v[oe+3],te=v[oe+4],ue=v[oe+5],ve=K*c,ke=D[ve],Se=D[ve+1],he=ue&1,Ae=!!(ue&16),Ce=X,Pe=$,Ee=Y,Ne=q;if(he&&(Ce=Y,Pe=q,Ee=X,Ne=$),!(ue&2&&(ee=x(L,re,H,ee,Ce,Pe,Se),H>=ee))&&!(ue&4&&(H=M(L,re,H,ee,Ce,Pe,ke),H>=ee))){var Ue=ee-H,ge=te-V;if(Ae){if(L*Ue*(Ue+ge)Y&&K>0){var ne=(q[K][0]-Y)/(q[K][0]-q[K-1][0]);return q[K][1]*(1-ne)+ne*q[K-1][1]}}return 1}function F(Y,q){for(var K=y({colormap:Y,nshades:256,format:"rgba"}),ne=new Uint8Array(256*4),Q=0;Q<256;++Q){for(var oe=K[Q],re=0;re<3;++re)ne[4*Q+re]=oe[re];q?ne[4*Q+3]=255*N(Q/255,q):ne[4*Q+3]=255*oe[3]}return T(ne,[256,256,4],[4,0,1])}function I(Y){for(var q=Y.length,K=new Array(q),ne=0;ne0){var ve=this.triShader;ve.bind(),ve.uniforms=H,this.triangleVAO.bind(),q.drawArrays(q.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var ve=this.lineShader;ve.bind(),ve.uniforms=H,this.edgeVAO.bind(),q.lineWidth(this.lineWidth*this.pixelRatio),q.drawArrays(q.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()}if(this.pointCount>0){var ve=this.pointShader;ve.bind(),ve.uniforms=H,this.pointVAO.bind(),q.drawArrays(q.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var ve=this.contourShader;ve.bind(),ve.uniforms=H,this.contourVAO.bind(),q.drawArrays(q.LINES,0,this.contourCount),this.contourVAO.unbind()}},R.drawPick=function(Y){Y=Y||{};for(var q=this.gl,K=Y.model||D,ne=Y.view||D,Q=Y.projection||D,oe=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],re=0;re<3;++re)oe[0][re]=Math.max(oe[0][re],this.clipBounds[0][re]),oe[1][re]=Math.min(oe[1][re],this.clipBounds[1][re]);this._model=[].slice.call(K),this._view=[].slice.call(ne),this._projection=[].slice.call(Q),this._resolution=[q.drawingBufferWidth,q.drawingBufferHeight];var H={model:K,view:ne,projection:Q,clipBounds:oe,pickId:this.pickId/255},ee=this.pickShader;if(ee.bind(),ee.uniforms=H,this.triangleCount>0&&(this.triangleVAO.bind(),q.drawArrays(q.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),q.lineWidth(this.lineWidth*this.pixelRatio),q.drawArrays(q.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var ee=this.pointPickShader;ee.bind(),ee.uniforms=H,this.pointVAO.bind(),q.drawArrays(q.POINTS,0,this.pointCount),this.pointVAO.unbind()}},R.pick=function(Y){if(!Y||Y.id!==this.pickId)return null;for(var q=Y.value[0]+256*Y.value[1]+65536*Y.value[2],K=this.cells[q],ne=this.positions,Q=new Array(K.length),oe=0;oeMath.max(d,_)?g[2]=1:d>Math.max(M,_)?g[0]=1:g[1]=1;for(var c=0,A=0,v=0;v<3;++v)c+=x[v]*x[v],A+=g[v]*x[v];for(var v=0;v<3;++v)g[v]-=A/c*x[v];return h(g,g),g}function T(x,M,d,_,g,c,A,v){this.center=l(d),this.up=l(_),this.right=l(g),this.radius=l([c]),this.angle=l([A,v]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(x,M),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var D=0;D<16;++D)this.computedMatrix[D]=.5;this.recalcMatrix(0)}var y=T.prototype;y.setDistanceLimits=function(x,M){x>0?x=Math.log(x):x=-1/0,M>0?M=Math.log(M):M=1/0,M=Math.max(M,x),this.radius.bounds[0][0]=x,this.radius.bounds[1][0]=M},y.getDistanceLimits=function(x){var M=this.radius.bounds[0];return x?(x[0]=Math.exp(M[0][0]),x[1]=Math.exp(M[1][0]),x):[Math.exp(M[0][0]),Math.exp(M[1][0])]},y.recalcMatrix=function(x){this.center.curve(x),this.up.curve(x),this.right.curve(x),this.radius.curve(x),this.angle.curve(x);for(var M=this.computedUp,d=this.computedRight,_=0,g=0,c=0;c<3;++c)g+=M[c]*d[c],_+=M[c]*M[c];for(var A=Math.sqrt(_),v=0,c=0;c<3;++c)d[c]-=M[c]*g/_,v+=d[c]*d[c],M[c]/=A;for(var D=Math.sqrt(v),c=0;c<3;++c)d[c]/=D;var E=this.computedToward;f(E,M,d),h(E,E);for(var R=Math.exp(this.computedRadius[0]),N=this.computedAngle[0],F=this.computedAngle[1],I=Math.cos(N),L=Math.sin(N),P=Math.cos(F),O=Math.sin(F),U=this.computedCenter,X=I*P,$=L*P,j=O,Y=-I*O,q=-L*O,K=P,ne=this.computedEye,Q=this.computedMatrix,c=0;c<3;++c){var oe=X*d[c]+$*E[c]+j*M[c];Q[4*c+1]=Y*d[c]+q*E[c]+K*M[c],Q[4*c+2]=oe,Q[4*c+3]=0}var re=Q[1],H=Q[5],ee=Q[9],V=Q[2],te=Q[6],ue=Q[10],ve=H*ue-ee*te,ke=ee*V-re*ue,Se=re*te-H*V,he=b(ve,ke,Se);ve/=he,ke/=he,Se/=he,Q[0]=ve,Q[4]=ke,Q[8]=Se;for(var c=0;c<3;++c)ne[c]=U[c]+Q[2+4*c]*R;for(var c=0;c<3;++c){for(var v=0,Ae=0;Ae<3;++Ae)v+=Q[c+4*Ae]*ne[Ae];Q[12+c]=-v}Q[15]=1},y.getMatrix=function(x,M){this.recalcMatrix(x);var d=this.computedMatrix;if(M){for(var _=0;_<16;++_)M[_]=d[_];return M}return d};var k=[0,0,0];y.rotate=function(x,M,d,_){if(this.angle.move(x,M,d),_){this.recalcMatrix(x);var g=this.computedMatrix;k[0]=g[2],k[1]=g[6],k[2]=g[10];for(var c=this.computedUp,A=this.computedRight,v=this.computedToward,D=0;D<3;++D)g[4*D]=c[D],g[4*D+1]=A[D],g[4*D+2]=v[D];s(g,g,_,k);for(var D=0;D<3;++D)c[D]=g[4*D],A[D]=g[4*D+1];this.up.set(x,c[0],c[1],c[2]),this.right.set(x,A[0],A[1],A[2])}},y.pan=function(x,M,d,_){M=M||0,d=d||0,_=_||0,this.recalcMatrix(x);var g=this.computedMatrix,c=Math.exp(this.computedRadius[0]),A=g[1],v=g[5],D=g[9],E=b(A,v,D);A/=E,v/=E,D/=E;var R=g[0],N=g[4],F=g[8],I=R*A+N*v+F*D;R-=A*I,N-=v*I,F-=D*I;var L=b(R,N,F);R/=L,N/=L,F/=L;var P=R*M+A*d,O=N*M+v*d,U=F*M+D*d;this.center.move(x,P,O,U);var X=Math.exp(this.computedRadius[0]);X=Math.max(1e-4,X+_),this.radius.set(x,Math.log(X))},y.translate=function(x,M,d,_){this.center.move(x,M||0,d||0,_||0)},y.setMatrix=function(x,M,d,_){var g=1;typeof d=="number"&&(g=d|0),(g<0||g>3)&&(g=1);var c=(g+2)%3,A=(g+1)%3;M||(this.recalcMatrix(x),M=this.computedMatrix);var v=M[g],D=M[g+4],E=M[g+8];if(_){var N=Math.abs(v),F=Math.abs(D),I=Math.abs(E),L=Math.max(N,F,I);N===L?(v=v<0?-1:1,D=E=0):I===L?(E=E<0?-1:1,v=D=0):(D=D<0?-1:1,v=E=0)}else{var R=b(v,D,E);v/=R,D/=R,E/=R}var P=M[c],O=M[c+4],U=M[c+8],X=P*v+O*D+U*E;P-=v*X,O-=D*X,U-=E*X;var $=b(P,O,U);P/=$,O/=$,U/=$;var j=D*U-E*O,Y=E*P-v*U,q=v*O-D*P,K=b(j,Y,q);j/=K,Y/=K,q/=K,this.center.jump(x,Ue,ge,we),this.radius.idle(x),this.up.jump(x,v,D,E),this.right.jump(x,P,O,U);var ne,Q;if(g===2){var oe=M[1],re=M[5],H=M[9],ee=oe*P+re*O+H*U,V=oe*j+re*Y+H*q;ke<0?ne=-Math.PI/2:ne=Math.PI/2,Q=Math.atan2(V,ee)}else{var te=M[2],ue=M[6],ve=M[10],ke=te*v+ue*D+ve*E,Se=te*P+ue*O+ve*U,he=te*j+ue*Y+ve*q;ne=Math.asin(m(ke)),Q=Math.atan2(he,Se)}this.angle.jump(x,Q,ne),this.recalcMatrix(x);var Ae=M[2],Ce=M[6],Pe=M[10],Ee=this.computedMatrix;u(Ee,M);var Ne=Ee[15],Ue=Ee[12]/Ne,ge=Ee[13]/Ne,we=Ee[14]/Ne,Te=Math.exp(this.computedRadius[0]);this.center.jump(x,Ue-Ae*Te,ge-Ce*Te,we-Pe*Te)},y.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},y.idle=function(x){this.center.idle(x),this.up.idle(x),this.right.idle(x),this.radius.idle(x),this.angle.idle(x)},y.flush=function(x){this.center.flush(x),this.up.flush(x),this.right.flush(x),this.radius.flush(x),this.angle.flush(x)},y.setDistance=function(x,M){M>0&&this.radius.set(x,Math.log(M))},y.lookAt=function(x,M,d,_){this.recalcMatrix(x),M=M||this.computedEye,d=d||this.computedCenter,_=_||this.computedUp;var g=_[0],c=_[1],A=_[2],v=b(g,c,A);if(!(v<1e-6)){g/=v,c/=v,A/=v;var D=M[0]-d[0],E=M[1]-d[1],R=M[2]-d[2],N=b(D,E,R);if(!(N<1e-6)){D/=N,E/=N,R/=N;var F=this.computedRight,I=F[0],L=F[1],P=F[2],O=g*I+c*L+A*P;I-=O*g,L-=O*c,P-=O*A;var U=b(I,L,P);if(!(U<.01&&(I=c*R-A*E,L=A*D-g*R,P=g*E-c*D,U=b(I,L,P),U<1e-6))){I/=U,L/=U,P/=U,this.up.set(x,g,c,A),this.right.set(x,I,L,P),this.center.set(x,d[0],d[1],d[2]),this.radius.set(x,Math.log(N));var X=c*P-A*L,$=A*I-g*P,j=g*L-c*I,Y=b(X,$,j);X/=Y,$/=Y,j/=Y;var q=g*D+c*E+A*R,K=I*D+L*E+P*R,ne=X*D+$*E+j*R,Q=Math.asin(m(q)),oe=Math.atan2(ne,K),re=this.angle._state,H=re[re.length-1],ee=re[re.length-2];H=H%(2*Math.PI);var V=Math.abs(H+2*Math.PI-oe),te=Math.abs(H-oe),ue=Math.abs(H-2*Math.PI-oe);V0)throw new Error("Invalid string. Length must be a multiple of 4");var M=S.indexOf("=");M===-1&&(M=b);var d=M===b?0:4-M%4;return[M,d]}function _(S){var b=p(S),M=b[0],d=b[1];return(M+d)*3/4-d}function m(S,b,M){return(b+M)*3/4-M}function w(S){var b,M=p(S),d=M[0],x=M[1],g=new u(m(S,d,x)),c=0,A=x>0?d-4:d,v;for(v=0;v>16&255,g[c++]=b>>8&255,g[c++]=b&255;return x===2&&(b=l[S.charCodeAt(v)]<<2|l[S.charCodeAt(v+1)]>>4,g[c++]=b&255),x===1&&(b=l[S.charCodeAt(v)]<<10|l[S.charCodeAt(v+1)]<<4|l[S.charCodeAt(v+2)]>>2,g[c++]=b>>8&255,g[c++]=b&255),g}function T(S){return i[S>>18&63]+i[S>>12&63]+i[S>>6&63]+i[S&63]}function y(S,b,M){for(var d,x=[],g=b;gA?A:c+g));return d===1?(b=S[M-1],x.push(i[b>>2]+i[b<<4&63]+"==")):d===2&&(b=(S[M-2]<<8)+S[M-1],x.push(i[b>>10]+i[b>>4&63]+i[b<<2&63]+"=")),x.join("")}},7518:function(a,o,i){"use strict";var l=i(1433);function u(h,p,_,m,w,T){this.location=h,this.dimension=p,this.a=_,this.b=m,this.c=w,this.d=T}u.prototype.bind=function(h){switch(this.dimension){case 1:h.vertexAttrib1f(this.location,this.a);break;case 2:h.vertexAttrib2f(this.location,this.a,this.b);break;case 3:h.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:h.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d);break}};function s(h,p,_){this.gl=h,this._ext=p,this.handle=_,this._attribs=[],this._useElements=!1,this._elementsType=h.UNSIGNED_SHORT}s.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var h=0;h1.0001)return null;v+=A[M]}return Math.abs(v-1)>.001?null:[d,p(m,A),A]}},7636:function(a){a.exports=o;function o(i,l){l=l||1;var u=Math.random()*2*Math.PI,s=Math.random()*2-1,f=Math.sqrt(1-s*s)*l;return i[0]=Math.cos(u)*f,i[1]=Math.sin(u)*f,i[2]=s*l,i}},7640:function(a,o,i){"use strict";var l=i(1888);function u(w){switch(w){case"uint32":return[l.mallocUint32,l.freeUint32];default:return null}}var s={"uint32,1,0":function(w,T){return function(k,S,b,M,d,x,g,c,A,v,D){var E,R,N,F=k*d+M,I,L=w(c),P,O,U,X;for(E=k+1;E<=S;++E){for(R=E,F+=d,N=F,P=0,O=F,I=0;Ik;){P=0,O=N-d;r:for(I=0;IX)break r;O+=v,P+=D}for(P=N,O=N-d,I=0;I>1,L=I-R,P=I+R,O=N,U=L,X=I,$=P,j=F,Y=S+1,q=b-1,K=!0,ne,Q,oe,re,H,ee,V,te,ue,ve=0,ke=0,Se=0,he,Ae,Ce,Pe,Ee,Ne,Ue,ge,we,Te,me,ye,pe,ce,be,Le,qe=A,ze=T(qe),$e=T(qe);Ae=x*O,Ce=x*U,Le=d;e:for(he=0;he0){Q=O,O=U,U=Q;break e}if(Se<0)break e;Le+=D}Ae=x*$,Ce=x*j,Le=d;e:for(he=0;he0){Q=$,$=j,j=Q;break e}if(Se<0)break e;Le+=D}Ae=x*O,Ce=x*X,Le=d;e:for(he=0;he0){Q=O,O=X,X=Q;break e}if(Se<0)break e;Le+=D}Ae=x*U,Ce=x*X,Le=d;e:for(he=0;he0){Q=U,U=X,X=Q;break e}if(Se<0)break e;Le+=D}Ae=x*O,Ce=x*$,Le=d;e:for(he=0;he0){Q=O,O=$,$=Q;break e}if(Se<0)break e;Le+=D}Ae=x*X,Ce=x*$,Le=d;e:for(he=0;he0){Q=X,X=$,$=Q;break e}if(Se<0)break e;Le+=D}Ae=x*U,Ce=x*j,Le=d;e:for(he=0;he0){Q=U,U=j,j=Q;break e}if(Se<0)break e;Le+=D}Ae=x*U,Ce=x*X,Le=d;e:for(he=0;he0){Q=U,U=X,X=Q;break e}if(Se<0)break e;Le+=D}Ae=x*$,Ce=x*j,Le=d;e:for(he=0;he0){Q=$,$=j,j=Q;break e}if(Se<0)break e;Le+=D}for(Ae=x*O,Ce=x*U,Pe=x*X,Ee=x*$,Ne=x*j,Ue=x*N,ge=x*I,we=x*F,be=0,Le=d,he=0;he0)q--;else if(Se<0){for(Ae=x*ee,Ce=x*Y,Pe=x*q,Le=d,he=0;he0)for(;;){V=d+q*x,be=0;e:for(he=0;he0){if(--qF){e:for(;;){for(V=d+Y*x,be=0,Le=d,he=0;he1&&k?b(y,k[0],k[1]):b(y)}var _={"uint32,1,0":function(w,T){return function(y){var k=y.data,S=y.offset|0,b=y.shape,M=y.stride,d=M[0]|0,x=b[0]|0,g=M[1]|0,c=b[1]|0,A=g,v=g,D=1;x<=32?w(0,x-1,k,S,d,g,x,c,A,v,D):T(0,x-1,k,S,d,g,x,c,A,v,D)}}};function m(w,T){var y=[T,w].join(","),k=_[y],S=f(w,T),b=p(w,T,S);return k(S,b)}a.exports=m},7642:function(a,o,i){"use strict";var l=i(8954),u=i(1682);a.exports=p;function s(_,m){this.point=_,this.index=m}function f(_,m){for(var w=_.point,T=m.point,y=w.length,k=0;k=2)return!1;N[I]=L}return!0}):R=R.filter(function(N){for(var F=0;F<=T;++F){var I=A[N[F]];if(I<0)return!1;N[F]=I}return!0}),T&1)for(var S=0;S",P="",O=L.length,U=P.length,X=N[0]===k||N[0]===M,$=0,j=-U;$>-1&&($=F.indexOf(L,$),!($===-1||(j=F.indexOf(P,$+O),j===-1)||j<=$));){for(var Y=$;Y=j)I[Y]=null,F=F.substr(0,Y)+" "+F.substr(Y+1);else if(I[Y]!==null){var q=I[Y].indexOf(N[0]);q===-1?I[Y]+=N:X&&(I[Y]=I[Y].substr(0,q+1)+(1+parseInt(I[Y][q+1]))+I[Y].substr(q+2))}var K=$+O,ne=F.substr(K,j-K),Q=ne.indexOf(L);Q!==-1?$=Q:$=j+U}return I}function g(R,N,F){for(var I=N.textAlign||"start",L=N.textBaseline||"alphabetic",P=[1<<30,1<<30],O=[0,0],U=R.length,X=0;X/g,` -`):F=F.replace(/\/g," ");var O="",U=[];for(H=0;H-1?parseInt(ge[1+me]):0,ce=ye>-1?parseInt(we[1+ye]):0;pe!==ce&&(Te=Te.replace(Se(),"?px "),te*=Math.pow(.75,ce-pe),Te=Te.replace("?px ",Se())),V+=.25*q*(ce-pe)}if(P.superscripts===!0){var be=ge.indexOf(k),Le=we.indexOf(k),qe=be>-1?parseInt(ge[1+be]):0,ze=Le>-1?parseInt(we[1+Le]):0;qe!==ze&&(Te=Te.replace(Se(),"?px "),te*=Math.pow(.75,ze-qe),Te=Te.replace("?px ",Se())),V-=.25*q*(ze-qe)}if(P.bolds===!0){var $e=ge.indexOf(m)>-1,Ve=we.indexOf(m)>-1;!$e&&Ve&&(Be?Te=Te.replace("italic ","italic bold "):Te="bold "+Te),$e&&!Ve&&(Te=Te.replace("bold ",""))}if(P.italics===!0){var Be=ge.indexOf(T)>-1,Ye=we.indexOf(T)>-1;!Be&&Ye&&(Te="italic "+Te),Be&&!Ye&&(Te=Te.replace("italic ",""))}N.font=Te}for(re=0;re0&&(L=I.size),I.lineSpacing&&I.lineSpacing>0&&(P=I.lineSpacing),I.styletags&&I.styletags.breaklines&&(O.breaklines=!!I.styletags.breaklines),I.styletags&&I.styletags.bolds&&(O.bolds=!!I.styletags.bolds),I.styletags&&I.styletags.italics&&(O.italics=!!I.styletags.italics),I.styletags&&I.styletags.subscripts&&(O.subscripts=!!I.styletags.subscripts),I.styletags&&I.styletags.superscripts&&(O.superscripts=!!I.styletags.superscripts)),F.font=[I.fontStyle,I.fontVariant,I.fontWeight,L+"px",I.font].filter(function(X){return X}).join(" "),F.textAlign="start",F.textBaseline="alphabetic",F.direction="ltr";var U=c(N,F,R,L,P,O);return D(U,I,L)}},7721:function(a,o,i){"use strict";var l=i(5716);a.exports=u;function u(s){return l(s[0])*l(s[1])}},7765:function(a,o,i){"use strict";a.exports=y;var l=i(9618),u=i(1888),s=i(446),f=i(1570);function h(k){for(var S=k.length,b=0,M=0;MR||D<0||D>R)throw new Error("gl-texture2d: Invalid texture size");return A._shape=[v,D],A.bind(),E.texImage2D(E.TEXTURE_2D,0,A.format,v,D,0,A.format,A.type,null),A._mipLevels=[0],A}function y(A,v,D,E,R,N){this.gl=A,this.handle=v,this.format=R,this.type=N,this._shape=[D,E],this._mipLevels=[0],this._magFilter=A.NEAREST,this._minFilter=A.NEAREST,this._wrapS=A.CLAMP_TO_EDGE,this._wrapT=A.CLAMP_TO_EDGE,this._anisoSamples=1;var F=this,I=[this._wrapS,this._wrapT];Object.defineProperties(I,[{get:function(){return F._wrapS},set:function(P){return F.wrapS=P}},{get:function(){return F._wrapT},set:function(P){return F.wrapT=P}}]),this._wrapVector=I;var L=[this._shape[0],this._shape[1]];Object.defineProperties(L,[{get:function(){return F._shape[0]},set:function(P){return F.width=P}},{get:function(){return F._shape[1]},set:function(P){return F.height=P}}]),this._shapeVector=L}var k=y.prototype;Object.defineProperties(k,{minFilter:{get:function(){return this._minFilter},set:function(A){this.bind();var v=this.gl;if(this.type===v.FLOAT&&f.indexOf(A)>=0&&(v.getExtension("OES_texture_float_linear")||(A=v.NEAREST)),h.indexOf(A)<0)throw new Error("gl-texture2d: Unknown filter mode "+A);return v.texParameteri(v.TEXTURE_2D,v.TEXTURE_MIN_FILTER,A),this._minFilter=A}},magFilter:{get:function(){return this._magFilter},set:function(A){this.bind();var v=this.gl;if(this.type===v.FLOAT&&f.indexOf(A)>=0&&(v.getExtension("OES_texture_float_linear")||(A=v.NEAREST)),h.indexOf(A)<0)throw new Error("gl-texture2d: Unknown filter mode "+A);return v.texParameteri(v.TEXTURE_2D,v.TEXTURE_MAG_FILTER,A),this._magFilter=A}},mipSamples:{get:function(){return this._anisoSamples},set:function(A){var v=this._anisoSamples;if(this._anisoSamples=Math.max(A,1)|0,v!==this._anisoSamples){var D=this.gl.getExtension("EXT_texture_filter_anisotropic");D&&this.gl.texParameterf(this.gl.TEXTURE_2D,D.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(A){if(this.bind(),p.indexOf(A)<0)throw new Error("gl-texture2d: Unknown wrap mode "+A);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,A),this._wrapS=A}},wrapT:{get:function(){return this._wrapT},set:function(A){if(this.bind(),p.indexOf(A)<0)throw new Error("gl-texture2d: Unknown wrap mode "+A);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,A),this._wrapT=A}},wrap:{get:function(){return this._wrapVector},set:function(A){if(Array.isArray(A)||(A=[A,A]),A.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var v=0;v<2;++v)if(p.indexOf(A[v])<0)throw new Error("gl-texture2d: Unknown wrap mode "+A);this._wrapS=A[0],this._wrapT=A[1];var D=this.gl;return this.bind(),D.texParameteri(D.TEXTURE_2D,D.TEXTURE_WRAP_S,this._wrapS),D.texParameteri(D.TEXTURE_2D,D.TEXTURE_WRAP_T,this._wrapT),A}},shape:{get:function(){return this._shapeVector},set:function(A){if(!Array.isArray(A))A=[A|0,A|0];else if(A.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return T(this,A[0]|0,A[1]|0),[A[0]|0,A[1]|0]}},width:{get:function(){return this._shape[0]},set:function(A){return A=A|0,T(this,A,this._shape[1]),A}},height:{get:function(){return this._shape[1]},set:function(A){return A=A|0,T(this,this._shape[0],A),A}}}),k.bind=function(A){var v=this.gl;return A!==void 0&&v.activeTexture(v.TEXTURE0+(A|0)),v.bindTexture(v.TEXTURE_2D,this.handle),A!==void 0?A|0:v.getParameter(v.ACTIVE_TEXTURE)-v.TEXTURE0},k.dispose=function(){this.gl.deleteTexture(this.handle)},k.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var A=Math.min(this._shape[0],this._shape[1]),v=0;A>0;++v,A>>>=1)this._mipLevels.indexOf(v)<0&&this._mipLevels.push(v)},k.setPixels=function(A,v,D,E){var R=this.gl;this.bind(),Array.isArray(v)?(E=D,D=v[1]|0,v=v[0]|0):(v=v||0,D=D||0),E=E||0;var N=m(A)?A:A.raw;if(N){var F=this._mipLevels.indexOf(E)<0;F?(R.texImage2D(R.TEXTURE_2D,0,this.format,this.format,this.type,N),this._mipLevels.push(E)):R.texSubImage2D(R.TEXTURE_2D,E,v,D,this.format,this.type,N)}else if(A.shape&&A.stride&&A.data){if(A.shape.length<2||v+A.shape[1]>this._shape[1]>>>E||D+A.shape[0]>this._shape[0]>>>E||v<0||D<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");b(R,v,D,E,this.format,this.type,this._mipLevels,A)}else throw new Error("gl-texture2d: Unsupported data type")};function S(A,v){return A.length===3?v[2]===1&&v[1]===A[0]*A[2]&&v[0]===A[2]:v[0]===1&&v[1]===A[0]}function b(A,v,D,E,R,N,F,I){var L=I.dtype,P=I.shape.slice();if(P.length<2||P.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var O=0,U=0,X=S(P,I.stride.slice());L==="float32"?O=A.FLOAT:L==="float64"?(O=A.FLOAT,X=!1,L="float32"):L==="uint8"?O=A.UNSIGNED_BYTE:(O=A.UNSIGNED_BYTE,X=!1,L="uint8");var $=1;if(P.length===2)U=A.LUMINANCE,P=[P[0],P[1],1],I=l(I.data,P,[I.stride[0],I.stride[1],1],I.offset);else if(P.length===3){if(P[2]===1)U=A.ALPHA;else if(P[2]===2)U=A.LUMINANCE_ALPHA;else if(P[2]===3)U=A.RGB;else if(P[2]===4)U=A.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");$=P[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((U===A.LUMINANCE||U===A.ALPHA)&&(R===A.LUMINANCE||R===A.ALPHA)&&(U=R),U!==R)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var j=I.size,Y=F.indexOf(E)<0;if(Y&&F.push(E),O===N&&X)I.offset===0&&I.data.length===j?Y?A.texImage2D(A.TEXTURE_2D,E,R,P[0],P[1],0,R,N,I.data):A.texSubImage2D(A.TEXTURE_2D,E,v,D,P[0],P[1],R,N,I.data):Y?A.texImage2D(A.TEXTURE_2D,E,R,P[0],P[1],0,R,N,I.data.subarray(I.offset,I.offset+j)):A.texSubImage2D(A.TEXTURE_2D,E,v,D,P[0],P[1],R,N,I.data.subarray(I.offset,I.offset+j));else{var q;N===A.FLOAT?q=s.mallocFloat32(j):q=s.mallocUint8(j);var K=l(q,P,[P[2],P[2]*P[0],1]);O===A.FLOAT&&N===A.UNSIGNED_BYTE?w(K,I):u.assign(K,I),Y?A.texImage2D(A.TEXTURE_2D,E,R,P[0],P[1],0,R,N,q.subarray(0,j)):A.texSubImage2D(A.TEXTURE_2D,E,v,D,P[0],P[1],R,N,q.subarray(0,j)),N===A.FLOAT?s.freeFloat32(q):s.freeUint8(q)}}function M(A){var v=A.createTexture();return A.bindTexture(A.TEXTURE_2D,v),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_MIN_FILTER,A.NEAREST),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_MAG_FILTER,A.NEAREST),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_WRAP_S,A.CLAMP_TO_EDGE),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_WRAP_T,A.CLAMP_TO_EDGE),v}function d(A,v,D,E,R){var N=A.getParameter(A.MAX_TEXTURE_SIZE);if(v<0||v>N||D<0||D>N)throw new Error("gl-texture2d: Invalid texture shape");if(R===A.FLOAT&&!A.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var F=M(A);return A.texImage2D(A.TEXTURE_2D,0,E,v,D,0,E,R,null),new y(A,F,v,D,E,R)}function x(A,v,D,E,R,N){var F=M(A);return A.texImage2D(A.TEXTURE_2D,0,R,R,N,v),new y(A,F,D,E,R,N)}function g(A,v){var D=v.dtype,E=v.shape.slice(),R=A.getParameter(A.MAX_TEXTURE_SIZE);if(E[0]<0||E[0]>R||E[1]<0||E[1]>R)throw new Error("gl-texture2d: Invalid texture size");var N=S(E,v.stride.slice()),F=0;D==="float32"?F=A.FLOAT:D==="float64"?(F=A.FLOAT,N=!1,D="float32"):D==="uint8"?F=A.UNSIGNED_BYTE:(F=A.UNSIGNED_BYTE,N=!1,D="uint8");var I=0;if(E.length===2)I=A.LUMINANCE,E=[E[0],E[1],1],v=l(v.data,E,[v.stride[0],v.stride[1],1],v.offset);else if(E.length===3)if(E[2]===1)I=A.ALPHA;else if(E[2]===2)I=A.LUMINANCE_ALPHA;else if(E[2]===3)I=A.RGB;else if(E[2]===4)I=A.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");F===A.FLOAT&&!A.getExtension("OES_texture_float")&&(F=A.UNSIGNED_BYTE,N=!1);var L,P,O=v.size;if(N)v.offset===0&&v.data.length===O?L=v.data:L=v.data.subarray(v.offset,v.offset+O);else{var U=[E[2],E[2]*E[0],1];P=s.malloc(O,D);var X=l(P,E,U,0);(D==="float32"||D==="float64")&&F===A.UNSIGNED_BYTE?w(X,v):u.assign(X,v),L=P.subarray(0,O)}var $=M(A);return A.texImage2D(A.TEXTURE_2D,0,I,E[0],E[1],0,I,F,L),N||s.free(P),new y(A,$,E[0],E[1],I,F)}function c(A){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(f||_(A),typeof arguments[1]=="number")return d(A,arguments[1],arguments[2],arguments[3]||A.RGBA,arguments[4]||A.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return d(A,arguments[1][0]|0,arguments[1][1]|0,arguments[2]||A.RGBA,arguments[3]||A.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var v=arguments[1],D=m(v)?v:v.raw;if(D)return x(A,D,v.width|0,v.height|0,arguments[2]||A.RGBA,arguments[3]||A.UNSIGNED_BYTE);if(v.shape&&v.data&&v.stride)return g(A,v)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},7790:function(){},7815:function(a,o,i){"use strict";var l=i(2931),u=i(9970),s=["xyz","xzy","yxz","yzx","zxy","zyx"],f=function(b,M,d,x){for(var g=b.points,c=b.velocities,A=b.divergences,v=[],D=[],E=[],R=[],N=[],F=[],I=0,L=0,P=u.create(),O=u.create(),U=8,X=0;X0)for(var q=0;qM)return x-1}return x},_=function(b,M,d){return bd?d:b},m=function(b,M,d){var x=M.vectors,g=M.meshgrid,c=b[0],A=b[1],v=b[2],D=g[0].length,E=g[1].length,R=g[2].length,N=p(g[0],c),F=p(g[1],A),I=p(g[2],v),L=N+1,P=F+1,O=I+1;if(N=_(N,0,D-1),L=_(L,0,D-1),F=_(F,0,E-1),P=_(P,0,E-1),I=_(I,0,R-1),O=_(O,0,R-1),N<0||F<0||I<0||L>D-1||P>E-1||O>R-1)return l.create();var U=g[0][N],X=g[0][L],$=g[1][F],j=g[1][P],Y=g[2][I],q=g[2][O],K=(c-U)/(X-U),ne=(A-$)/(j-$),Q=(v-Y)/(q-Y);isFinite(K)||(K=.5),isFinite(ne)||(ne=.5),isFinite(Q)||(Q=.5);var oe,re,H,ee,V,te;switch(d.reversedX&&(N=D-1-N,L=D-1-L),d.reversedY&&(F=E-1-F,P=E-1-P),d.reversedZ&&(I=R-1-I,O=R-1-O),d.filled){case 5:V=I,te=O,H=F*R,ee=P*R,oe=N*R*E,re=L*R*E;break;case 4:V=I,te=O,oe=N*R,re=L*R,H=F*R*D,ee=P*R*D;break;case 3:H=F,ee=P,V=I*E,te=O*E,oe=N*E*R,re=L*E*R;break;case 2:H=F,ee=P,oe=N*E,re=L*E,V=I*E*D,te=O*E*D;break;case 1:oe=N,re=L,V=I*D,te=O*D,H=F*D*R,ee=P*D*R;break;default:oe=N,re=L,H=F*D,ee=P*D,V=I*D*E,te=O*D*E;break}var ue=x[oe+H+V],ve=x[oe+H+te],ke=x[oe+ee+V],Se=x[oe+ee+te],he=x[re+H+V],Ae=x[re+H+te],Ce=x[re+ee+V],Pe=x[re+ee+te],Ee=l.create(),Ne=l.create(),Ue=l.create(),ge=l.create();l.lerp(Ee,ue,he,K),l.lerp(Ne,ve,Ae,K),l.lerp(Ue,ke,Ce,K),l.lerp(ge,Se,Pe,K);var we=l.create(),Te=l.create();l.lerp(we,Ee,Ue,ne),l.lerp(Te,Ne,ge,ne);var me=l.create();return l.lerp(me,we,Te,Q),me},w=function(b,M){var d=M[0],x=M[1],g=M[2];return b[0]=d<0?-d:d,b[1]=x<0?-x:x,b[2]=g<0?-g:g,b},T=function(b){var M=1/0;b.sort(function(c,A){return c-A});for(var d=b.length,x=1;xL||PeP||EeO)},X=l.distance(M[0],M[1]),$=10*X/x,j=$*$,Y=1,q=0,K=d.length;K>1&&(Y=y(d));for(var ne=0;neq&&(q=ue),V.push(ue),R.push({points:oe,velocities:re,divergences:V});for(var ve=0;vej&&l.scale(ke,ke,$/Math.sqrt(Se)),l.add(ke,ke,Q),H=D(ke),l.squaredDistance(ee,ke)-j>-1e-4*j){oe.push(ke),ee=ke,re.push(H);var te=E(ke,H),ue=l.length(te);isFinite(ue)&&ue>q&&(q=ue),V.push(ue)}Q=ke}}var he=h(R,b.colormap,q,Y);return c?he.tubeScale=c:(q===0&&(q=1),he.tubeScale=g*.5*Y/q),he};var k=i(6740),S=i(6405).createMesh;a.exports.createTubeMesh=function(b,M){return S(b,M,{shaders:k,traceType:"streamtube"})}},7827:function(a){a.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},7842:function(a,o,i){"use strict";var l=i(6330),u=i(1533),s=i(2651),f=i(6768),h=i(869),p=i(8697);a.exports=_;function _(m,w){if(l(m))return w?p(m,_(w)):[m[0].clone(),m[1].clone()];var T=0,y,k;if(u(m))y=m.clone();else if(typeof m=="string")y=f(m);else{if(m===0)return[s(0),s(1)];if(m===Math.floor(m))y=s(m);else{for(;m!==Math.floor(m);)m=m*Math.pow(2,256),T-=256;y=s(m)}}if(l(w))y.mul(w[1]),k=w[0].clone();else if(u(w))k=w.clone();else if(typeof w=="string")k=f(w);else if(!w)k=s(1);else if(w===Math.floor(w))k=s(w);else{for(;w!==Math.floor(w);)w=w*Math.pow(2,256),T+=256;k=s(w)}return T>0?y=y.ushln(T):T<0&&(k=k.ushln(-T)),h(y,k)}},7894:function(a){a.exports=o;function o(i){return i[0]=1,i[1]=0,i[2]=0,i[3]=0,i[4]=0,i[5]=1,i[6]=0,i[7]=0,i[8]=0,i[9]=0,i[10]=1,i[11]=0,i[12]=0,i[13]=0,i[14]=0,i[15]=1,i}},7932:function(a,o,i){var l=i(620);a.exports=l.slice().concat(["layout","centroid","smooth","case","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","uvec2","uvec3","uvec4","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","coherent","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","image1DShadow","image2DShadow","image1DArrayShadow","image2DArrayShadow","imageBuffer","iimageBuffer","uimageBuffer","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray"])},7960:function(a){a.exports=o;function o(i,l){var u=l[0]-i[0],s=l[1]-i[1],f=l[2]-i[2],h=l[3]-i[3];return u*u+s*s+f*f+h*h}},8105:function(a){"use strict";a.exports=i;var o={"lo===p0":l,"lo=p0)&&!(p1>=hi)":_};function i(m){return o[m]}function l(m,w,T,y,k,S,b){for(var M=2*m,d=M*T,x=d,g=T,c=w,A=m+w,v=T;y>v;++v,d+=M){var D=k[d+c];if(D===b)if(g===v)g+=1,x+=M;else{for(var E=0;M>E;++E){var R=k[d+E];k[d+E]=k[x],k[x++]=R}var N=S[v];S[v]=S[g],S[g++]=N}}return g}function u(m,w,T,y,k,S,b){for(var M=2*m,d=M*T,x=d,g=T,c=w,A=m+w,v=T;y>v;++v,d+=M){var D=k[d+c];if(DE;++E){var R=k[d+E];k[d+E]=k[x],k[x++]=R}var N=S[v];S[v]=S[g],S[g++]=N}}return g}function s(m,w,T,y,k,S,b){for(var M=2*m,d=M*T,x=d,g=T,c=w,A=m+w,v=T;y>v;++v,d+=M){var D=k[d+A];if(D<=b)if(g===v)g+=1,x+=M;else{for(var E=0;M>E;++E){var R=k[d+E];k[d+E]=k[x],k[x++]=R}var N=S[v];S[v]=S[g],S[g++]=N}}return g}function f(m,w,T,y,k,S,b){for(var M=2*m,d=M*T,x=d,g=T,c=w,A=m+w,v=T;y>v;++v,d+=M){var D=k[d+A];if(D<=b)if(g===v)g+=1,x+=M;else{for(var E=0;M>E;++E){var R=k[d+E];k[d+E]=k[x],k[x++]=R}var N=S[v];S[v]=S[g],S[g++]=N}}return g}function h(m,w,T,y,k,S,b){for(var M=2*m,d=M*T,x=d,g=T,c=w,A=m+w,v=T;y>v;++v,d+=M){var D=k[d+c],E=k[d+A];if(D<=b&&b<=E)if(g===v)g+=1,x+=M;else{for(var R=0;M>R;++R){var N=k[d+R];k[d+R]=k[x],k[x++]=N}var F=S[v];S[v]=S[g],S[g++]=F}}return g}function p(m,w,T,y,k,S,b){for(var M=2*m,d=M*T,x=d,g=T,c=w,A=m+w,v=T;y>v;++v,d+=M){var D=k[d+c],E=k[d+A];if(DR;++R){var N=k[d+R];k[d+R]=k[x],k[x++]=N}var F=S[v];S[v]=S[g],S[g++]=F}}return g}function _(m,w,T,y,k,S,b,M){for(var d=2*m,x=d*T,g=x,c=T,A=w,v=m+w,D=T;y>D;++D,x+=d){var E=k[x+A],R=k[x+v];if(!(E>=b)&&!(M>=R))if(c===D)c+=1,g+=d;else{for(var N=0;d>N;++N){var F=k[x+N];k[x+N]=k[g],k[g++]=F}var I=S[D];S[D]=S[c],S[c++]=I}}return c}},8107:function(a){a.exports=o;function o(i,l,u){return i[0]=Math.min(l[0],u[0]),i[1]=Math.min(l[1],u[1]),i[2]=Math.min(l[2],u[2]),i}},8116:function(a,o,i){"use strict";var l=i(7518),u=i(870);function s(h){this.bindVertexArrayOES=h.bindVertexArray.bind(h),this.createVertexArrayOES=h.createVertexArray.bind(h),this.deleteVertexArrayOES=h.deleteVertexArray.bind(h)}function f(h,p,_,m){var w=h.createVertexArray?new s(h):h.getExtension("OES_vertex_array_object"),T;return w?T=l(h,w):T=u(h),T.update(p,_,m),T}a.exports=f},8192:function(a,o,i){a.exports=f;var l=i(2825),u=i(3536),s=i(244);function f(h,p){var _=l(h[0],h[1],h[2]),m=l(p[0],p[1],p[2]);u(_,_),u(m,m);var w=s(_,m);return w>1?0:Math.acos(w)}},8210:function(a){"use strict";a.exports=i;function o(l,u){var s=l+u,f=s-l,h=s-f,p=u-f,_=l-h,m=_+p;return m?[m,s]:[s]}function i(l,u){var s=l.length|0,f=u.length|0;if(s===1&&f===1)return o(l[0],u[0]);var h=s+f,p=new Array(h),_=0,m=0,w=0,T=Math.abs,y=l[m],k=T(y),S=u[w],b=T(S),M,d;k=f?(M=y,m+=1,m_)for(var D=p[y],E=1/Math.sqrt(g*A),v=0;v<3;++v){var R=(v+1)%3,N=(v+2)%3;D[v]+=E*(c[R]*x[N]-c[N]*x[R])}}for(var m=0;m_)for(var E=1/Math.sqrt(F),v=0;v<3;++v)D[v]*=E;else for(var v=0;v<3;++v)D[v]=0}return p},o.faceNormals=function(u,s,f){for(var h=u.length,p=new Array(h),_=f===void 0?l:f,m=0;m_?M=1/Math.sqrt(M):M=0;for(var y=0;y<3;++y)b[y]*=M;p[m]=b}return p}},8418:function(a,o,i){"use strict";var l=i(5219),u=i(2762),s=i(8116),f=i(1888),h=i(6760),p=i(1283),_=i(9366),m=i(5964),w=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],T=ArrayBuffer,y=DataView;function k(Q){return T.isView(Q)&&!(Q instanceof y)}function S(Q){return Array.isArray(Q)||k(Q)}a.exports=ne;function b(Q,oe){var re=Q[0],H=Q[1],ee=Q[2],V=Q[3];return Q[0]=oe[0]*re+oe[4]*H+oe[8]*ee+oe[12]*V,Q[1]=oe[1]*re+oe[5]*H+oe[9]*ee+oe[13]*V,Q[2]=oe[2]*re+oe[6]*H+oe[10]*ee+oe[14]*V,Q[3]=oe[3]*re+oe[7]*H+oe[11]*ee+oe[15]*V,Q}function M(Q,oe,re,H){return b(H,H,re),b(H,H,oe),b(H,H,Q)}function d(Q,oe){this.index=Q,this.dataCoordinate=this.position=oe}function x(Q){return Q===!0||Q>1?1:Q}function g(Q,oe,re,H,ee,V,te,ue,ve,ke,Se,he){this.gl=Q,this.pixelRatio=1,this.shader=oe,this.orthoShader=re,this.projectShader=H,this.pointBuffer=ee,this.colorBuffer=V,this.glyphBuffer=te,this.idBuffer=ue,this.vao=ve,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=ke,this.pickOrthoShader=Se,this.pickProjectShader=he,this.points=[],this._selectResult=new d(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}var c=g.prototype;c.pickSlots=1,c.setPickBase=function(Q){this.pickId=Q},c.isTransparent=function(){if(this.hasAlpha)return!0;for(var Q=0;Q<3;++Q)if(this.axesProject[Q]&&this.projectHasAlpha)return!0;return!1},c.isOpaque=function(){if(!this.hasAlpha)return!0;for(var Q=0;Q<3;++Q)if(this.axesProject[Q]&&!this.projectHasAlpha)return!0;return!1};var A=[0,0],v=[0,0,0],D=[0,0,0],E=[0,0,0,1],R=[0,0,0,1],N=w.slice(),F=[0,0,0],I=[[0,0,0],[0,0,0]];function L(Q){return Q[0]=Q[1]=Q[2]=0,Q}function P(Q,oe){return Q[0]=oe[0],Q[1]=oe[1],Q[2]=oe[2],Q[3]=1,Q}function O(Q,oe,re,H){return Q[0]=oe[0],Q[1]=oe[1],Q[2]=oe[2],Q[re]=H,Q}function U(Q){for(var oe=I,re=0;re<2;++re)for(var H=0;H<3;++H)oe[re][H]=Math.max(Math.min(Q[re][H],1e8),-1e8);return oe}function X(Q,oe,re,H){var ee=oe.axesProject,V=oe.gl,te=Q.uniforms,ue=re.model||w,ve=re.view||w,ke=re.projection||w,Se=oe.axesBounds,he=U(oe.clipBounds),Ae;oe.axes&&oe.axes.lastCubeProps?Ae=oe.axes.lastCubeProps.axis:Ae=[1,1,1],A[0]=2/V.drawingBufferWidth,A[1]=2/V.drawingBufferHeight,Q.bind(),te.view=ve,te.projection=ke,te.screenSize=A,te.highlightId=oe.highlightId,te.highlightScale=oe.highlightScale,te.clipBounds=he,te.pickGroup=oe.pickId/255,te.pixelRatio=H;for(var Ce=0;Ce<3;++Ce)if(ee[Ce]){te.scale=oe.projectScale[Ce],te.opacity=oe.projectOpacity[Ce];for(var Pe=N,Ee=0;Ee<16;++Ee)Pe[Ee]=0;for(var Ee=0;Ee<4;++Ee)Pe[5*Ee]=1;Pe[5*Ce]=0,Ae[Ce]<0?Pe[12+Ce]=Se[0][Ce]:Pe[12+Ce]=Se[1][Ce],h(Pe,ue,Pe),te.model=Pe;var Ne=(Ce+1)%3,Ue=(Ce+2)%3,ge=L(v),we=L(D);ge[Ne]=1,we[Ue]=1;var Te=M(ke,ve,ue,P(E,ge)),me=M(ke,ve,ue,P(R,we));if(Math.abs(Te[1])>Math.abs(me[1])){var ye=Te;Te=me,me=ye,ye=ge,ge=we,we=ye;var pe=Ne;Ne=Ue,Ue=pe}Te[0]<0&&(ge[Ne]=-1),me[1]>0&&(we[Ue]=-1);for(var ce=0,be=0,Ee=0;Ee<4;++Ee)ce+=Math.pow(ue[4*Ne+Ee],2),be+=Math.pow(ue[4*Ue+Ee],2);ge[Ne]/=Math.sqrt(ce),we[Ue]/=Math.sqrt(be),te.axes[0]=ge,te.axes[1]=we,te.fragClipBounds[0]=O(F,he[0],Ce,-1e8),te.fragClipBounds[1]=O(F,he[1],Ce,1e8),oe.vao.bind(),oe.vao.draw(V.TRIANGLES,oe.vertexCount),oe.lineWidth>0&&(V.lineWidth(oe.lineWidth*H),oe.vao.draw(V.LINES,oe.lineVertexCount,oe.vertexCount)),oe.vao.unbind()}}var $=[-1e8,-1e8,-1e8],j=[1e8,1e8,1e8],Y=[$,j];function q(Q,oe,re,H,ee,V,te){var ue=re.gl;if((V===re.projectHasAlpha||te)&&X(oe,re,H,ee),V===re.hasAlpha||te){Q.bind();var ve=Q.uniforms;ve.model=H.model||w,ve.view=H.view||w,ve.projection=H.projection||w,A[0]=2/ue.drawingBufferWidth,A[1]=2/ue.drawingBufferHeight,ve.screenSize=A,ve.highlightId=re.highlightId,ve.highlightScale=re.highlightScale,ve.fragClipBounds=Y,ve.clipBounds=re.axes.bounds,ve.opacity=re.opacity,ve.pickGroup=re.pickId/255,ve.pixelRatio=ee,re.vao.bind(),re.vao.draw(ue.TRIANGLES,re.vertexCount),re.lineWidth>0&&(ue.lineWidth(re.lineWidth*ee),re.vao.draw(ue.LINES,re.lineVertexCount,re.vertexCount)),re.vao.unbind()}}c.draw=function(Q){var oe=this.useOrtho?this.orthoShader:this.shader;q(oe,this.projectShader,this,Q,this.pixelRatio,!1,!1)},c.drawTransparent=function(Q){var oe=this.useOrtho?this.orthoShader:this.shader;q(oe,this.projectShader,this,Q,this.pixelRatio,!0,!1)},c.drawPick=function(Q){var oe=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;q(oe,this.pickProjectShader,this,Q,1,!0,!0)},c.pick=function(Q){if(!Q||Q.id!==this.pickId)return null;var oe=Q.value[2]+(Q.value[1]<<8)+(Q.value[0]<<16);if(oe>=this.pointCount||oe<0)return null;var re=this.points[oe],H=this._selectResult;H.index=oe;for(var ee=0;ee<3;++ee)H.position[ee]=H.dataCoordinate[ee]=re[ee];return H},c.highlight=function(Q){if(!Q)this.highlightId=[1,1,1,1];else{var oe=Q.index,re=oe&255,H=oe>>8&255,ee=oe>>16&255;this.highlightId=[re/255,H/255,ee/255,0]}};function K(Q,oe,re,H){var ee;S(Q)?oe0){var Be=0,Ye=Ue,Me=[0,0,0,1],Re=[0,0,0,1],Qe=S(Ae)&&S(Ae[0]),Ke=S(Ee)&&S(Ee[0]);e:for(var H=0;H0?1-be[0][0]:er<0?1+be[1][0]:1,nr*=nr>0?1-be[0][1]:nr<0?1+be[1][1]:1;for(var fr=[er,nr],ft=pe.cells||[],sr=pe.positions||[],me=0;me=f?(M=y,m+=1,m0?1:0}},8648:function(a,o,i){a.exports=i(783)},8692:function(a){a.exports=o;function o(i,l,u,s){var f=u[0],h=u[1],p=l[0]-f,_=l[1]-h,m=Math.sin(s),w=Math.cos(s);return i[0]=f+p*w-_*m,i[1]=h+p*m+_*w,i[2]=l[2],i}},8697:function(a,o,i){"use strict";var l=i(869);a.exports=u;function u(s,f){return l(s[0].mul(f[1]),s[1].mul(f[0]))}},8731:function(a,o,i){"use strict";a.exports=_;var l=i(8866);function u(m,w,T,y,k,S){this._gl=m,this._wrapper=w,this._index=T,this._locations=y,this._dimension=k,this._constFunc=S}var s=u.prototype;s.pointer=function(w,T,y,k){var S=this,b=S._gl,M=S._locations[S._index];b.vertexAttribPointer(M,S._dimension,w||b.FLOAT,!!T,y||0,k||0),b.enableVertexAttribArray(M)},s.set=function(m,w,T,y){return this._constFunc(this._locations[this._index],m,w,T,y)},Object.defineProperty(s,"location",{get:function(){return this._locations[this._index]},set:function(m){return m!==this._locations[this._index]&&(this._locations[this._index]=m|0,this._wrapper.program=null),m|0}});var f=[function(m,w,T){return T.length===void 0?m.vertexAttrib1f(w,T):m.vertexAttrib1fv(w,T)},function(m,w,T,y){return T.length===void 0?m.vertexAttrib2f(w,T,y):m.vertexAttrib2fv(w,T)},function(m,w,T,y,k){return T.length===void 0?m.vertexAttrib3f(w,T,y,k):m.vertexAttrib3fv(w,T)},function(m,w,T,y,k,S){return T.length===void 0?m.vertexAttrib4f(w,T,y,k,S):m.vertexAttrib4fv(w,T)}];function h(m,w,T,y,k,S,b){var M=f[k],d=new u(m,w,T,y,k,M);Object.defineProperty(S,b,{set:function(x){return m.disableVertexAttribArray(y[T]),M(m,y[T],x),x},get:function(){return d},enumerable:!0})}function p(m,w,T,y,k,S,b){for(var M=new Array(k),d=new Array(k),x=0;x=0){var c=x.charCodeAt(x.length-1)-48;if(c<2||c>4)throw new l("","Invalid data type for attribute "+d+": "+x);h(m,w,g[0],y,c,k,d)}else if(x.indexOf("mat")>=0){var c=x.charCodeAt(x.length-1)-48;if(c<2||c>4)throw new l("","Invalid data type for attribute "+d+": "+x);p(m,w,g,y,c,k,d)}else throw new l("","Unknown data type for attribute "+d+": "+x);break}}return k}},8828:function(a,o){"use strict";"use restrict";var i=32;o.INT_BITS=i,o.INT_MAX=2147483647,o.INT_MIN=-1<0)-(s<0)},o.abs=function(s){var f=s>>i-1;return(s^f)-f},o.min=function(s,f){return f^(s^f)&-(s65535)<<4,s>>>=f,h=(s>255)<<3,s>>>=h,f|=h,h=(s>15)<<2,s>>>=h,f|=h,h=(s>3)<<1,s>>>=h,f|=h,f|s>>1},o.log10=function(s){return s>=1e9?9:s>=1e8?8:s>=1e7?7:s>=1e6?6:s>=1e5?5:s>=1e4?4:s>=1e3?3:s>=100?2:s>=10?1:0},o.popCount=function(s){return s=s-(s>>>1&1431655765),s=(s&858993459)+(s>>>2&858993459),(s+(s>>>4)&252645135)*16843009>>>24};function l(s){var f=32;return s&=-s,s&&f--,s&65535&&(f-=16),s&16711935&&(f-=8),s&252645135&&(f-=4),s&858993459&&(f-=2),s&1431655765&&(f-=1),f}o.countTrailingZeros=l,o.nextPow2=function(s){return s+=s===0,--s,s|=s>>>1,s|=s>>>2,s|=s>>>4,s|=s>>>8,s|=s>>>16,s+1},o.prevPow2=function(s){return s|=s>>>1,s|=s>>>2,s|=s>>>4,s|=s>>>8,s|=s>>>16,s-(s>>>1)},o.parity=function(s){return s^=s>>>16,s^=s>>>8,s^=s>>>4,s&=15,27030>>>s&1};var u=new Array(256);(function(s){for(var f=0;f<256;++f){var h=f,p=f,_=7;for(h>>>=1;h;h>>>=1)p<<=1,p|=h&1,--_;s[f]=p<<_&255}})(u),o.reverse=function(s){return u[s&255]<<24|u[s>>>8&255]<<16|u[s>>>16&255]<<8|u[s>>>24&255]},o.interleave2=function(s,f){return s&=65535,s=(s|s<<8)&16711935,s=(s|s<<4)&252645135,s=(s|s<<2)&858993459,s=(s|s<<1)&1431655765,f&=65535,f=(f|f<<8)&16711935,f=(f|f<<4)&252645135,f=(f|f<<2)&858993459,f=(f|f<<1)&1431655765,s|f<<1},o.deinterleave2=function(s,f){return s=s>>>f&1431655765,s=(s|s>>>1)&858993459,s=(s|s>>>2)&252645135,s=(s|s>>>4)&16711935,s=(s|s>>>16)&65535,s<<16>>16},o.interleave3=function(s,f,h){return s&=1023,s=(s|s<<16)&4278190335,s=(s|s<<8)&251719695,s=(s|s<<4)&3272356035,s=(s|s<<2)&1227133513,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,s|=f<<1,h&=1023,h=(h|h<<16)&4278190335,h=(h|h<<8)&251719695,h=(h|h<<4)&3272356035,h=(h|h<<2)&1227133513,s|h<<2},o.deinterleave3=function(s,f){return s=s>>>f&1227133513,s=(s|s>>>2)&3272356035,s=(s|s>>>4)&251719695,s=(s|s>>>8)&4278190335,s=(s|s>>>16)&1023,s<<22>>22},o.nextCombination=function(s){var f=s|s-1;return f+1|(~f&-~f)-1>>>l(s)+1}},8866:function(a){function o(i,l,u){this.shortMessage=l||"",this.longMessage=u||"",this.rawError=i||"",this.message="gl-shader: "+(l||i||"")+(u?` -`+u:""),this.stack=new Error().stack}o.prototype=new Error,o.prototype.name="GLError",o.prototype.constructor=o,a.exports=o},8902:function(a,o,i){"use strict";var l=i(2478),u=i(3250)[3],s=0,f=1,h=2;a.exports=b;function p(M,d,x,g,c){this.a=M,this.b=d,this.idx=x,this.lowerIds=g,this.upperIds=c}function _(M,d,x,g){this.a=M,this.b=d,this.type=x,this.idx=g}function m(M,d){var x=M.a[0]-d.a[0]||M.a[1]-d.a[1]||M.type-d.type;return x||M.type!==s&&(x=u(M.a,M.b,d.b),x)?x:M.idx-d.idx}function w(M,d){return u(M.a,M.b,d)}function T(M,d,x,g,c){for(var A=l.lt(d,g,w),v=l.gt(d,g,w),D=A;D1&&u(x[R[F-2]],x[R[F-1]],g)>0;)M.push([R[F-1],R[F-2],c]),F-=1;R.length=F,R.push(c);for(var N=E.upperIds,F=N.length;F>1&&u(x[N[F-2]],x[N[F-1]],g)<0;)M.push([N[F-2],N[F-1],c]),F-=1;N.length=F,N.push(c)}}function y(M,d){var x;return M.a[0]E[0]&&c.push(new _(E,D,h,A),new _(D,E,f,A))}c.sort(m);for(var R=c[0].a[0]-(1+Math.abs(c[0].a[0]))*Math.pow(2,-52),N=[new p([R,1],[R,0],-1,[],[],[],[])],F=[],A=0,I=c.length;A0;){k=g.pop();for(var c=k.adjacent,A=0;A<=b;++A){var v=c[A];if(!(!v.boundary||v.lastVisited<=-M)){for(var D=v.vertices,E=0;E<=b;++E){var R=D[E];R<0?d[E]=S:d[E]=x[R]}var N=this.orient();if(N>0)return v;v.lastVisited=-M,N===0&&g.push(v)}}}return null},T.walk=function(k,S){var b=this.vertices.length-1,M=this.dimension,d=this.vertices,x=this.tuple,g=S?this.interior.length*Math.random()|0:this.interior.length-1,c=this.interior[g];e:for(;!c.boundary;){for(var A=c.vertices,v=c.adjacent,D=0;D<=M;++D)x[D]=d[A[D]];c.lastVisited=b;for(var D=0;D<=M;++D){var E=v[D];if(!(E.lastVisited>=b)){var R=x[D];x[D]=k;var N=this.orient();if(x[D]=R,N<0){c=E;continue e}else E.boundary?E.lastVisited=-b:E.lastVisited=b}}return}return c},T.addPeaks=function(k,S){var b=this.vertices.length-1,M=this.dimension,d=this.vertices,x=this.tuple,g=this.interior,c=this.simplices,A=[S];S.lastVisited=b,S.vertices[S.vertices.indexOf(-1)]=b,S.boundary=!1,g.push(S);for(var v=[];A.length>0;){var S=A.pop(),D=S.vertices,E=S.adjacent,R=D.indexOf(b);if(!(R<0)){for(var N=0;N<=M;++N)if(N!==R){var F=E[N];if(!(!F.boundary||F.lastVisited>=b)){var I=F.vertices;if(F.lastVisited!==-b){for(var L=0,P=0;P<=M;++P)I[P]<0?(L=P,x[P]=k):x[P]=d[I[P]];var O=this.orient();if(O>0){I[L]=b,F.boundary=!1,g.push(F),A.push(F),F.lastVisited=b;continue}else F.lastVisited=-b}var U=F.adjacent,X=D.slice(),$=E.slice(),j=new s(X,$,!0);c.push(j);var Y=U.indexOf(S);if(!(Y<0)){U[Y]=j,$[R]=F,X[N]=-1,$[N]=S,E[N]=j,j.flip();for(var P=0;P<=M;++P){var q=X[P];if(!(q<0||q===b)){for(var K=new Array(M-1),ne=0,Q=0;Q<=M;++Q){var oe=X[Q];oe<0||Q===P||(K[ne++]=oe)}v.push(new f(K,j,P))}}}}}}}v.sort(h);for(var N=0;N+1=0?g[A++]=c[D]:v=D&1;if(v===(k&1)){var E=g[0];g[0]=g[1],g[1]=E}S.push(g)}}return S};function y(k,S){var b=k.length;if(b===0)throw new Error("Must have at least d+1 points");var M=k[0].length;if(b<=M)throw new Error("Must input at least d+1 points");var d=k.slice(0,M+1),x=l.apply(void 0,d);if(x===0)throw new Error("Input not in general position");for(var g=new Array(M+1),c=0;c<=M;++c)g[c]=c;x<0&&(g[0]=1,g[1]=0);for(var A=new s(g,new Array(M+1),!1),v=A.adjacent,D=new Array(M+2),c=0;c<=M;++c){for(var E=g.slice(),R=0;R<=M;++R)R===c&&(E[R]=-1);var N=E[0];E[0]=E[1],E[1]=N;var F=new s(E,new Array(M+1),!0);v[c]=F,D[c]=F}D[M+1]=A;for(var c=0;c<=M;++c)for(var E=v[c].vertices,I=v[c].adjacent,R=0;R<=M;++R){var L=E[R];if(L<0){I[R]=A;continue}for(var P=0;P<=M;++P)v[P].vertices.indexOf(L)<0&&(I[R]=v[P])}for(var O=new w(M,d,D),U=!!S,c=M+1;c=1},y.isTransparent=function(){return this.opacity<1},y.pickSlots=1,y.setPickBase=function(x){this.pickId=x};function k(x){for(var g=m({colormap:x,nshades:256,format:"rgba"}),c=new Uint8Array(256*4),A=0;A<256;++A){for(var v=g[A],D=0;D<3;++D)c[4*A+D]=v[D];c[4*A+3]=v[3]*255}return _(c,[256,256,4],[4,0,1])}function S(x){for(var g=x.length,c=new Array(g),A=0;A0){var P=this.triShader;P.bind(),P.uniforms=R,this.triangleVAO.bind(),g.drawArrays(g.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},y.drawPick=function(x){x=x||{};for(var g=this.gl,c=x.model||w,A=x.view||w,v=x.projection||w,D=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],E=0;E<3;++E)D[0][E]=Math.max(D[0][E],this.clipBounds[0][E]),D[1][E]=Math.min(D[1][E],this.clipBounds[1][E]);this._model=[].slice.call(c),this._view=[].slice.call(A),this._projection=[].slice.call(v),this._resolution=[g.drawingBufferWidth,g.drawingBufferHeight];var R={model:c,view:A,projection:v,clipBounds:D,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},N=this.pickShader;N.bind(),N.uniforms=R,this.triangleCount>0&&(this.triangleVAO.bind(),g.drawArrays(g.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},y.pick=function(x){if(!x||x.id!==this.pickId)return null;var g=x.value[0]+256*x.value[1]+65536*x.value[2],c=this.cells[g],A=this.positions[c[1]].slice(0,3),v={position:A,dataCoordinate:A,index:Math.floor(c[1]/48)};return this.traceType==="cone"?v.index=Math.floor(c[1]/48):this.traceType==="streamtube"&&(v.intensity=this.intensity[c[1]],v.velocity=this.vectors[c[1]].slice(0,3),v.divergence=this.vectors[c[1]][3],v.index=g),v},y.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()};function b(x,g){var c=l(x,g.meshShader.vertex,g.meshShader.fragment,null,g.meshShader.attributes);return c.attributes.position.location=0,c.attributes.color.location=2,c.attributes.uv.location=3,c.attributes.vector.location=4,c}function M(x,g){var c=l(x,g.pickShader.vertex,g.pickShader.fragment,null,g.pickShader.attributes);return c.attributes.position.location=0,c.attributes.id.location=1,c.attributes.vector.location=4,c}function d(x,g,c){var A=c.shaders;arguments.length===1&&(g=x,x=g.gl);var v=b(x,A),D=M(x,A),E=f(x,_(new Uint8Array([255,255,255,255]),[1,1,4]));E.generateMipmap(),E.minFilter=x.LINEAR_MIPMAP_LINEAR,E.magFilter=x.LINEAR;var R=u(x),N=u(x),F=u(x),I=u(x),L=u(x),P=s(x,[{buffer:R,type:x.FLOAT,size:4},{buffer:L,type:x.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:F,type:x.FLOAT,size:4},{buffer:I,type:x.FLOAT,size:2},{buffer:N,type:x.FLOAT,size:4}]),O=new T(x,E,v,D,R,N,L,F,I,P,c.traceType||"cone");return O.update(g),O}a.exports=d},9127:function(a,o,i){"use strict";a.exports=s;var l=i(6204),u=i(5771);function s(f){return u(l(f))}},9131:function(a,o,i){var l=i(5177),u=i(9288);a.exports=s;function s(f,h){return h=h||1,f[0]=Math.random(),f[1]=Math.random(),f[2]=Math.random(),f[3]=Math.random(),l(f,f),u(f,f,h),f}},9165:function(a,o,i){"use strict";a.exports=T;var l=i(2762),u=i(8116),s=i(3436),f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function h(y,k,S,b){this.gl=y,this.shader=b,this.buffer=k,this.vao=S,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var p=h.prototype;p.isOpaque=function(){return!this.hasAlpha},p.isTransparent=function(){return this.hasAlpha},p.drawTransparent=p.draw=function(y){var k=this.gl,S=this.shader.uniforms;this.shader.bind();var b=S.view=y.view||f,M=S.projection=y.projection||f;S.model=y.model||f,S.clipBounds=this.clipBounds,S.opacity=this.opacity;var d=b[12],x=b[13],g=b[14],c=b[15],A=y._ortho||!1,v=A?2:1,D=v*this.pixelRatio*(M[3]*d+M[7]*x+M[11]*g+M[15]*c)/k.drawingBufferHeight;this.vao.bind();for(var E=0;E<3;++E)k.lineWidth(this.lineWidth[E]*this.pixelRatio),S.capSize=this.capSize[E]*D,this.lineCount[E]&&k.drawArrays(k.LINES,this.lineOffset[E],this.lineCount[E]);this.vao.unbind()};function _(y,k){for(var S=0;S<3;++S)y[0][S]=Math.min(y[0][S],k[S]),y[1][S]=Math.max(y[1][S],k[S])}var m=function(){for(var y=new Array(3),k=0;k<3;++k){for(var S=[],b=1;b<=2;++b)for(var M=-1;M<=1;M+=2){var d=(b+k)%3,x=[0,0,0];x[d]=M,S.push(x)}y[k]=S}return y}();function w(y,k,S,b){for(var M=m[b],d=0;d0){var R=A.slice();R[g]+=D[1][g],M.push(A[0],A[1],A[2],E[0],E[1],E[2],E[3],0,0,0,R[0],R[1],R[2],E[0],E[1],E[2],E[3],0,0,0),_(this.bounds,R),x+=2+w(M,R,E,g)}}}this.lineCount[g]=x-this.lineOffset[g]}this.buffer.update(M)}},p.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function T(y){var k=y.gl,S=l(k),b=u(k,[{buffer:S,type:k.FLOAT,size:3,offset:0,stride:40},{buffer:S,type:k.FLOAT,size:4,offset:12,stride:40},{buffer:S,type:k.FLOAT,size:3,offset:28,stride:40}]),M=s(k);M.attributes.position.location=0,M.attributes.color.location=1,M.attributes.offset.location=2;var d=new h(k,S,b,M);return d.update(y),d}},9215:function(a,o,i){"use strict";a.exports=_;var l=i(4769),u=i(2478);function s(m,w,T){return Math.min(w,Math.max(m,T))}function f(m,w,T){this.dimension=m.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var y=0;y=T-1)for(var x=S.length-1,c=m-w[T-1],g=0;g=T-1)for(var d=S.length-1,x=m-w[T-1],g=0;g=0;--T)if(m[--w])return!1;return!0},h.jump=function(m){var w=this.lastT(),T=this.dimension;if(!(m0;--g)y.push(s(M[g-1],d[g-1],arguments[g])),k.push(0)}},h.push=function(m){var w=this.lastT(),T=this.dimension;if(!(m1e-6?1/b:0;this._time.push(m);for(var c=T;c>0;--c){var A=s(d[c-1],x[c-1],arguments[c]);y.push(A),k.push((A-y[S++])*g)}}},h.set=function(m){var w=this.dimension;if(!(m0;--M)T.push(s(S[M-1],b[M-1],arguments[M])),y.push(0)}},h.move=function(m){var w=this.lastT(),T=this.dimension;if(!(m<=w||arguments.length!==T+1)){var y=this._state,k=this._velocity,S=y.length-this.dimension,b=this.bounds,M=b[0],d=b[1],x=m-w,g=x>1e-6?1/x:0;this._time.push(m);for(var c=T;c>0;--c){var A=arguments[c];y.push(s(M[c-1],d[c-1],y[S++]+A)),k.push(A*g)}}},h.idle=function(m){var w=this.lastT();if(!(m=0;--g)y.push(s(M[g],d[g],y[S]+x*k[S])),k.push(0),S+=1}};function p(m){for(var w=new Array(m),T=0;T1&&f.indexOf("Macintosh")!==-1&&f.indexOf("Safari")!==-1&&(h=!0),h}},9226:function(a){a.exports=o;function o(i,l){return i[0]=Math.ceil(l[0]),i[1]=Math.ceil(l[1]),i[2]=Math.ceil(l[2]),i}},9265:function(a){a.exports=o;function o(i,l){return i[0]===l[0]&&i[1]===l[1]&&i[2]===l[2]}},9288:function(a){a.exports=o;function o(i,l,u){return i[0]=l[0]*u,i[1]=l[1]*u,i[2]=l[2]*u,i[3]=l[3]*u,i}},9346:function(a){"use strict";var o=new Float64Array(4),i=new Float64Array(4),l=new Float64Array(4);function u(s,f,h,p,_){o.length=w?(c=1,v=w+2*k+b):(c=-k/w,v=k*c+b)):(c=0,S>=0?(A=0,v=b):-S>=y?(A=1,v=y+2*S+b):(A=-S/y,v=S*A+b));else if(A<0)A=0,k>=0?(c=0,v=b):-k>=w?(c=1,v=w+2*k+b):(c=-k/w,v=k*c+b);else{var D=1/g;c*=D,A*=D,v=c*(w*c+T*A+2*k)+A*(T*c+y*A+2*S)+b}else{var E,R,N,F;c<0?(E=T+k,R=y+S,R>E?(N=R-E,F=w-2*T+y,N>=F?(c=1,A=0,v=w+2*k+b):(c=N/F,A=1-c,v=c*(w*c+T*A+2*k)+A*(T*c+y*A+2*S)+b)):(c=0,R<=0?(A=1,v=y+2*S+b):S>=0?(A=0,v=b):(A=-S/y,v=S*A+b))):A<0?(E=T+S,R=w+k,R>E?(N=R-E,F=w-2*T+y,N>=F?(A=1,c=0,v=y+2*S+b):(A=N/F,c=1-A,v=c*(w*c+T*A+2*k)+A*(T*c+y*A+2*S)+b)):(A=0,R<=0?(c=1,v=w+2*k+b):k>=0?(c=0,v=b):(c=-k/w,v=k*c+b))):(N=y+S-T-k,N<=0?(c=0,A=1,v=y+2*S+b):(F=w-2*T+y,N>=F?(c=1,A=0,v=w+2*k+b):(c=N/F,A=1-c,v=c*(w*c+T*A+2*k)+A*(T*c+y*A+2*S)+b)))}for(var I=1-c-A,m=0;mS)for(y=S;yk)for(y=k;y=0){for(var I=F.type.charAt(F.type.length-1)|0,L=new Array(I),P=0;P=0;)O+=1;R[N]=O}var U=new Array(S.length);function X(){d.program=f.program(x,d._vref,d._fref,E,R);for(var $=0;$re&&ee>0){var V=(H[ee][0]-re)/(H[ee][0]-H[ee-1][0]);return H[ee][1]*(1-V)+V*H[ee-1][1]}}return 1}var P=[0,0,0],O={showSurface:!1,showContour:!1,projections:[v.slice(),v.slice(),v.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function U(re,H){var ee,V,te,ue=H.axes&&H.axes.lastCubeProps.axis||P,ve=H.showSurface,ke=H.showContour;for(ee=0;ee<3;++ee)for(ve=ve||H.surfaceProject[ee],V=0;V<3;++V)ke=ke||H.contourProject[ee][V];for(ee=0;ee<3;++ee){var Se=O.projections[ee];for(V=0;V<16;++V)Se[V]=0;for(V=0;V<4;++V)Se[5*V]=1;Se[5*ee]=0,Se[12+ee]=H.axesBounds[+(ue[ee]>0)][ee],y(Se,re.model,Se);var he=O.clipBounds[ee];for(te=0;te<2;++te)for(V=0;V<3;++V)he[te][V]=re.clipBounds[te][V];he[0][ee]=-1e8,he[1][ee]=1e8}return O.showSurface=ve,O.showContour=ke,O}var X={model:v,view:v,projection:v,inverseModel:v.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},$=v.slice(),j=[1,0,0,0,1,0,0,0,1];function Y(re,H){re=re||{};var ee=this.gl;ee.disable(ee.CULL_FACE),this._colorMap.bind(0);var V=X;V.model=re.model||v,V.view=re.view||v,V.projection=re.projection||v,V.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],V.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],V.objectOffset=this.objectOffset,V.contourColor=this.contourColor[0],V.inverseModel=k(V.inverseModel,V.model);for(var te=0;te<2;++te)for(var ue=V.clipBounds[te],ve=0;ve<3;++ve)ue[ve]=Math.min(Math.max(this.clipBounds[te][ve],-1e8),1e8);V.kambient=this.ambientLight,V.kdiffuse=this.diffuseLight,V.kspecular=this.specularLight,V.roughness=this.roughness,V.fresnel=this.fresnel,V.opacity=this.opacity,V.height=0,V.permutation=j,V.vertexColor=this.vertexColor;var ke=$;for(y(ke,V.view,V.model),y(ke,V.projection,ke),k(ke,ke),te=0;te<3;++te)V.eyePosition[te]=ke[12+te]/ke[15];var Se=ke[15];for(te=0;te<3;++te)Se+=this.lightPosition[te]*ke[4*te+3];for(te=0;te<3;++te){var he=ke[12+te];for(ve=0;ve<3;++ve)he+=ke[4*ve+te]*this.lightPosition[ve];V.lightPosition[te]=he/Se}var Ae=U(V,this);if(Ae.showSurface){for(this._shader.bind(),this._shader.uniforms=V,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(ee.TRIANGLES,this._vertexCount),te=0;te<3;++te)!this.surfaceProject[te]||!this.vertexCount||(this._shader.uniforms.model=Ae.projections[te],this._shader.uniforms.clipBounds=Ae.clipBounds[te],this._vao.draw(ee.TRIANGLES,this._vertexCount));this._vao.unbind()}if(Ae.showContour){var Ce=this._contourShader;V.kambient=1,V.kdiffuse=0,V.kspecular=0,V.opacity=1,Ce.bind(),Ce.uniforms=V;var Pe=this._contourVAO;for(Pe.bind(),te=0;te<3;++te)for(Ce.uniforms.permutation=E[te],ee.lineWidth(this.contourWidth[te]*this.pixelRatio),ve=0;ve>4)/16)/255,te=Math.floor(V),ue=V-te,ve=H[1]*(re.value[1]+(re.value[2]&15)/16)/255,ke=Math.floor(ve),Se=ve-ke;te+=1,ke+=1;var he=ee.position;he[0]=he[1]=he[2]=0;for(var Ae=0;Ae<2;++Ae)for(var Ce=Ae?ue:1-ue,Pe=0;Pe<2;++Pe)for(var Ee=Pe?Se:1-Se,Ne=te+Ae,Ue=ke+Pe,ge=Ce*Ee,we=0;we<3;++we)he[we]+=this._field[we].get(Ne,Ue)*ge;for(var Te=this._pickResult.level,me=0;me<3;++me)if(Te[me]=S.le(this.contourLevels[me],he[me]),Te[me]<0)this.contourLevels[me].length>0&&(Te[me]=0);else if(Te[me]Math.abs(pe-he[me])&&(Te[me]+=1)}for(ee.index[0]=ue<.5?te:te+1,ee.index[1]=Se<.5?ke:ke+1,ee.uv[0]=V/H[0],ee.uv[1]=ve/H[1],we=0;we<3;++we)ee.dataCoordinate[we]=this._field[we].get(ee.index[0],ee.index[1]);return ee},I.padField=function(re,H){var ee=H.shape.slice(),V=re.shape.slice();_.assign(re.lo(1,1).hi(ee[0],ee[1]),H),_.assign(re.lo(1).hi(ee[0],1),H.hi(ee[0],1)),_.assign(re.lo(1,V[1]-1).hi(ee[0],1),H.lo(0,ee[1]-1).hi(ee[0],1)),_.assign(re.lo(0,1).hi(1,ee[1]),H.hi(1)),_.assign(re.lo(V[0]-1,1).hi(1,ee[1]),H.lo(ee[0]-1)),re.set(0,0,H.get(0,0)),re.set(0,V[1]-1,H.get(0,ee[1]-1)),re.set(V[0]-1,0,H.get(ee[0]-1,0)),re.set(V[0]-1,V[1]-1,H.get(ee[0]-1,ee[1]-1))};function K(re,H){return Array.isArray(re)?[H(re[0]),H(re[1]),H(re[2])]:[H(re),H(re),H(re)]}function ne(re){return Array.isArray(re)?re.length===3?[re[0],re[1],re[2],1]:[re[0],re[1],re[2],re[3]]:[0,0,0,1]}function Q(re){if(Array.isArray(re)){if(Array.isArray(re))return[ne(re[0]),ne(re[1]),ne(re[2])];var H=ne(re);return[H.slice(),H.slice(),H.slice()]}}I.update=function(re){re=re||{},this.objectOffset=re.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in re&&(this.contourWidth=K(re.contourWidth,Number)),"showContour"in re&&(this.showContour=K(re.showContour,Boolean)),"showSurface"in re&&(this.showSurface=!!re.showSurface),"contourTint"in re&&(this.contourTint=K(re.contourTint,Boolean)),"contourColor"in re&&(this.contourColor=Q(re.contourColor)),"contourProject"in re&&(this.contourProject=K(re.contourProject,function(wa){return K(wa,Boolean)})),"surfaceProject"in re&&(this.surfaceProject=re.surfaceProject),"dynamicColor"in re&&(this.dynamicColor=Q(re.dynamicColor)),"dynamicTint"in re&&(this.dynamicTint=K(re.dynamicTint,Number)),"dynamicWidth"in re&&(this.dynamicWidth=K(re.dynamicWidth,Number)),"opacity"in re&&(this.opacity=re.opacity),"opacityscale"in re&&(this.opacityscale=re.opacityscale),"colorBounds"in re&&(this.colorBounds=re.colorBounds),"vertexColor"in re&&(this.vertexColor=re.vertexColor?1:0),"colormap"in re&&this._colorMap.setPixels(this.genColormap(re.colormap,this.opacityscale));var H=re.field||re.coords&&re.coords[2]||null,ee=!1;if(H||(this._field[2].shape[0]||this._field[2].shape[2]?H=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):H=this._field[2].hi(0,0)),"field"in re||"coords"in re){var V=(H.shape[0]+2)*(H.shape[1]+2);V>this._field[2].data.length&&(h.freeFloat(this._field[2].data),this._field[2].data=h.mallocFloat(l.nextPow2(V))),this._field[2]=w(this._field[2].data,[H.shape[0]+2,H.shape[1]+2]),this.padField(this._field[2],H),this.shape=H.shape.slice();for(var te=this.shape,ue=0;ue<2;++ue)this._field[2].size>this._field[ue].data.length&&(h.freeFloat(this._field[ue].data),this._field[ue].data=h.mallocFloat(this._field[2].size)),this._field[ue]=w(this._field[ue].data,[te[0]+2,te[1]+2]);if(re.coords){var ve=re.coords;if(!Array.isArray(ve)||ve.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(ue=0;ue<2;++ue){var ke=ve[ue];for(Pe=0;Pe<2;++Pe)if(ke.shape[Pe]!==te[Pe])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[ue],ke)}}else if(re.ticks){var Se=re.ticks;if(!Array.isArray(Se)||Se.length!==2)throw new Error("gl-surface: invalid ticks");for(ue=0;ue<2;++ue){var he=Se[ue];if((Array.isArray(he)||he.length)&&(he=w(he)),he.shape[0]!==te[ue])throw new Error("gl-surface: invalid tick length");var Ae=w(he.data,te);Ae.stride[ue]=he.stride[0],Ae.stride[ue^1]=0,this.padField(this._field[ue],Ae)}}else{for(ue=0;ue<2;++ue){var Ce=[0,0];Ce[ue]=1,this._field[ue]=w(this._field[ue].data,[te[0]+2,te[1]+2],Ce,0)}this._field[0].set(0,0,0);for(var Pe=0;Pe0){for(var Qn=0;Qn<5;++Qn)xr.pop();Qe-=1}continue e}}}ft.push(Qe)}this._contourOffsets[Sr]=Ar,this._contourCounts[Sr]=ft}var In=h.mallocFloat(xr.length);for(ue=0;ue=0&&(g=d|0,x+=A*g,c-=g),new S(this.data,c,A,x)},b.step=function(d){var x=this.shape[0],g=this.stride[0],c=this.offset,A=0,v=Math.ceil;return typeof d=="number"&&(A=d|0,A<0?(c+=g*(x-1),x=v(-x/A)):x=v(x/A),g*=A),new S(this.data,x,g,c)},b.transpose=function(d){d=d===void 0?0:d|0;var x=this.shape,g=this.stride;return new S(this.data,x[d],g[d],this.offset)},b.pick=function(d){var x=[],g=[],c=this.offset;typeof d=="number"&&d>=0?c=c+this.stride[0]*d|0:(x.push(this.shape[0]),g.push(this.stride[0]));var A=y[x.length+1];return A(this.data,x,g,c)},function(d,x,g,c){return new S(d,x[0],g[0],c)}},2:function(T,y,k){function S(M,d,x,g,c,A){this.data=M,this.shape=[d,x],this.stride=[g,c],this.offset=A|0}var b=S.prototype;return b.dtype=T,b.dimension=2,Object.defineProperty(b,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(b,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),b.set=function(d,x,g){return T==="generic"?this.data.set(this.offset+this.stride[0]*d+this.stride[1]*x,g):this.data[this.offset+this.stride[0]*d+this.stride[1]*x]=g},b.get=function(d,x){return T==="generic"?this.data.get(this.offset+this.stride[0]*d+this.stride[1]*x):this.data[this.offset+this.stride[0]*d+this.stride[1]*x]},b.index=function(d,x){return this.offset+this.stride[0]*d+this.stride[1]*x},b.hi=function(d,x){return new S(this.data,typeof d!="number"||d<0?this.shape[0]:d|0,typeof x!="number"||x<0?this.shape[1]:x|0,this.stride[0],this.stride[1],this.offset)},b.lo=function(d,x){var g=this.offset,c=0,A=this.shape[0],v=this.shape[1],D=this.stride[0],E=this.stride[1];return typeof d=="number"&&d>=0&&(c=d|0,g+=D*c,A-=c),typeof x=="number"&&x>=0&&(c=x|0,g+=E*c,v-=c),new S(this.data,A,v,D,E,g)},b.step=function(d,x){var g=this.shape[0],c=this.shape[1],A=this.stride[0],v=this.stride[1],D=this.offset,E=0,R=Math.ceil;return typeof d=="number"&&(E=d|0,E<0?(D+=A*(g-1),g=R(-g/E)):g=R(g/E),A*=E),typeof x=="number"&&(E=x|0,E<0?(D+=v*(c-1),c=R(-c/E)):c=R(c/E),v*=E),new S(this.data,g,c,A,v,D)},b.transpose=function(d,x){d=d===void 0?0:d|0,x=x===void 0?1:x|0;var g=this.shape,c=this.stride;return new S(this.data,g[d],g[x],c[d],c[x],this.offset)},b.pick=function(d,x){var g=[],c=[],A=this.offset;typeof d=="number"&&d>=0?A=A+this.stride[0]*d|0:(g.push(this.shape[0]),c.push(this.stride[0])),typeof x=="number"&&x>=0?A=A+this.stride[1]*x|0:(g.push(this.shape[1]),c.push(this.stride[1]));var v=y[g.length+1];return v(this.data,g,c,A)},function(d,x,g,c){return new S(d,x[0],x[1],g[0],g[1],c)}},3:function(T,y,k){function S(M,d,x,g,c,A,v,D){this.data=M,this.shape=[d,x,g],this.stride=[c,A,v],this.offset=D|0}var b=S.prototype;return b.dtype=T,b.dimension=3,Object.defineProperty(b,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(b,"order",{get:function(){var d=Math.abs(this.stride[0]),x=Math.abs(this.stride[1]),g=Math.abs(this.stride[2]);return d>x?x>g?[2,1,0]:d>g?[1,2,0]:[1,0,2]:d>g?[2,0,1]:g>x?[0,1,2]:[0,2,1]}}),b.set=function(d,x,g,c){return T==="generic"?this.data.set(this.offset+this.stride[0]*d+this.stride[1]*x+this.stride[2]*g,c):this.data[this.offset+this.stride[0]*d+this.stride[1]*x+this.stride[2]*g]=c},b.get=function(d,x,g){return T==="generic"?this.data.get(this.offset+this.stride[0]*d+this.stride[1]*x+this.stride[2]*g):this.data[this.offset+this.stride[0]*d+this.stride[1]*x+this.stride[2]*g]},b.index=function(d,x,g){return this.offset+this.stride[0]*d+this.stride[1]*x+this.stride[2]*g},b.hi=function(d,x,g){return new S(this.data,typeof d!="number"||d<0?this.shape[0]:d|0,typeof x!="number"||x<0?this.shape[1]:x|0,typeof g!="number"||g<0?this.shape[2]:g|0,this.stride[0],this.stride[1],this.stride[2],this.offset)},b.lo=function(d,x,g){var c=this.offset,A=0,v=this.shape[0],D=this.shape[1],E=this.shape[2],R=this.stride[0],N=this.stride[1],F=this.stride[2];return typeof d=="number"&&d>=0&&(A=d|0,c+=R*A,v-=A),typeof x=="number"&&x>=0&&(A=x|0,c+=N*A,D-=A),typeof g=="number"&&g>=0&&(A=g|0,c+=F*A,E-=A),new S(this.data,v,D,E,R,N,F,c)},b.step=function(d,x,g){var c=this.shape[0],A=this.shape[1],v=this.shape[2],D=this.stride[0],E=this.stride[1],R=this.stride[2],N=this.offset,F=0,I=Math.ceil;return typeof d=="number"&&(F=d|0,F<0?(N+=D*(c-1),c=I(-c/F)):c=I(c/F),D*=F),typeof x=="number"&&(F=x|0,F<0?(N+=E*(A-1),A=I(-A/F)):A=I(A/F),E*=F),typeof g=="number"&&(F=g|0,F<0?(N+=R*(v-1),v=I(-v/F)):v=I(v/F),R*=F),new S(this.data,c,A,v,D,E,R,N)},b.transpose=function(d,x,g){d=d===void 0?0:d|0,x=x===void 0?1:x|0,g=g===void 0?2:g|0;var c=this.shape,A=this.stride;return new S(this.data,c[d],c[x],c[g],A[d],A[x],A[g],this.offset)},b.pick=function(d,x,g){var c=[],A=[],v=this.offset;typeof d=="number"&&d>=0?v=v+this.stride[0]*d|0:(c.push(this.shape[0]),A.push(this.stride[0])),typeof x=="number"&&x>=0?v=v+this.stride[1]*x|0:(c.push(this.shape[1]),A.push(this.stride[1])),typeof g=="number"&&g>=0?v=v+this.stride[2]*g|0:(c.push(this.shape[2]),A.push(this.stride[2]));var D=y[c.length+1];return D(this.data,c,A,v)},function(d,x,g,c){return new S(d,x[0],x[1],x[2],g[0],g[1],g[2],c)}},4:function(T,y,k){function S(M,d,x,g,c,A,v,D,E,R){this.data=M,this.shape=[d,x,g,c],this.stride=[A,v,D,E],this.offset=R|0}var b=S.prototype;return b.dtype=T,b.dimension=4,Object.defineProperty(b,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(b,"order",{get:k}),b.set=function(d,x,g,c,A){return T==="generic"?this.data.set(this.offset+this.stride[0]*d+this.stride[1]*x+this.stride[2]*g+this.stride[3]*c,A):this.data[this.offset+this.stride[0]*d+this.stride[1]*x+this.stride[2]*g+this.stride[3]*c]=A},b.get=function(d,x,g,c){return T==="generic"?this.data.get(this.offset+this.stride[0]*d+this.stride[1]*x+this.stride[2]*g+this.stride[3]*c):this.data[this.offset+this.stride[0]*d+this.stride[1]*x+this.stride[2]*g+this.stride[3]*c]},b.index=function(d,x,g,c){return this.offset+this.stride[0]*d+this.stride[1]*x+this.stride[2]*g+this.stride[3]*c},b.hi=function(d,x,g,c){return new S(this.data,typeof d!="number"||d<0?this.shape[0]:d|0,typeof x!="number"||x<0?this.shape[1]:x|0,typeof g!="number"||g<0?this.shape[2]:g|0,typeof c!="number"||c<0?this.shape[3]:c|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},b.lo=function(d,x,g,c){var A=this.offset,v=0,D=this.shape[0],E=this.shape[1],R=this.shape[2],N=this.shape[3],F=this.stride[0],I=this.stride[1],L=this.stride[2],P=this.stride[3];return typeof d=="number"&&d>=0&&(v=d|0,A+=F*v,D-=v),typeof x=="number"&&x>=0&&(v=x|0,A+=I*v,E-=v),typeof g=="number"&&g>=0&&(v=g|0,A+=L*v,R-=v),typeof c=="number"&&c>=0&&(v=c|0,A+=P*v,N-=v),new S(this.data,D,E,R,N,F,I,L,P,A)},b.step=function(d,x,g,c){var A=this.shape[0],v=this.shape[1],D=this.shape[2],E=this.shape[3],R=this.stride[0],N=this.stride[1],F=this.stride[2],I=this.stride[3],L=this.offset,P=0,O=Math.ceil;return typeof d=="number"&&(P=d|0,P<0?(L+=R*(A-1),A=O(-A/P)):A=O(A/P),R*=P),typeof x=="number"&&(P=x|0,P<0?(L+=N*(v-1),v=O(-v/P)):v=O(v/P),N*=P),typeof g=="number"&&(P=g|0,P<0?(L+=F*(D-1),D=O(-D/P)):D=O(D/P),F*=P),typeof c=="number"&&(P=c|0,P<0?(L+=I*(E-1),E=O(-E/P)):E=O(E/P),I*=P),new S(this.data,A,v,D,E,R,N,F,I,L)},b.transpose=function(d,x,g,c){d=d===void 0?0:d|0,x=x===void 0?1:x|0,g=g===void 0?2:g|0,c=c===void 0?3:c|0;var A=this.shape,v=this.stride;return new S(this.data,A[d],A[x],A[g],A[c],v[d],v[x],v[g],v[c],this.offset)},b.pick=function(d,x,g,c){var A=[],v=[],D=this.offset;typeof d=="number"&&d>=0?D=D+this.stride[0]*d|0:(A.push(this.shape[0]),v.push(this.stride[0])),typeof x=="number"&&x>=0?D=D+this.stride[1]*x|0:(A.push(this.shape[1]),v.push(this.stride[1])),typeof g=="number"&&g>=0?D=D+this.stride[2]*g|0:(A.push(this.shape[2]),v.push(this.stride[2])),typeof c=="number"&&c>=0?D=D+this.stride[3]*c|0:(A.push(this.shape[3]),v.push(this.stride[3]));var E=y[A.length+1];return E(this.data,A,v,D)},function(d,x,g,c){return new S(d,x[0],x[1],x[2],x[3],g[0],g[1],g[2],g[3],c)}},5:function(y,k,S){function b(d,x,g,c,A,v,D,E,R,N,F,I){this.data=d,this.shape=[x,g,c,A,v],this.stride=[D,E,R,N,F],this.offset=I|0}var M=b.prototype;return M.dtype=y,M.dimension=5,Object.defineProperty(M,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(M,"order",{get:S}),M.set=function(x,g,c,A,v,D){return y==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*g+this.stride[2]*c+this.stride[3]*A+this.stride[4]*v,D):this.data[this.offset+this.stride[0]*x+this.stride[1]*g+this.stride[2]*c+this.stride[3]*A+this.stride[4]*v]=D},M.get=function(x,g,c,A,v){return y==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*g+this.stride[2]*c+this.stride[3]*A+this.stride[4]*v):this.data[this.offset+this.stride[0]*x+this.stride[1]*g+this.stride[2]*c+this.stride[3]*A+this.stride[4]*v]},M.index=function(x,g,c,A,v){return this.offset+this.stride[0]*x+this.stride[1]*g+this.stride[2]*c+this.stride[3]*A+this.stride[4]*v},M.hi=function(x,g,c,A,v){return new b(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof g!="number"||g<0?this.shape[1]:g|0,typeof c!="number"||c<0?this.shape[2]:c|0,typeof A!="number"||A<0?this.shape[3]:A|0,typeof v!="number"||v<0?this.shape[4]:v|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},M.lo=function(x,g,c,A,v){var D=this.offset,E=0,R=this.shape[0],N=this.shape[1],F=this.shape[2],I=this.shape[3],L=this.shape[4],P=this.stride[0],O=this.stride[1],U=this.stride[2],X=this.stride[3],$=this.stride[4];return typeof x=="number"&&x>=0&&(E=x|0,D+=P*E,R-=E),typeof g=="number"&&g>=0&&(E=g|0,D+=O*E,N-=E),typeof c=="number"&&c>=0&&(E=c|0,D+=U*E,F-=E),typeof A=="number"&&A>=0&&(E=A|0,D+=X*E,I-=E),typeof v=="number"&&v>=0&&(E=v|0,D+=$*E,L-=E),new b(this.data,R,N,F,I,L,P,O,U,X,$,D)},M.step=function(x,g,c,A,v){var D=this.shape[0],E=this.shape[1],R=this.shape[2],N=this.shape[3],F=this.shape[4],I=this.stride[0],L=this.stride[1],P=this.stride[2],O=this.stride[3],U=this.stride[4],X=this.offset,$=0,j=Math.ceil;return typeof x=="number"&&($=x|0,$<0?(X+=I*(D-1),D=j(-D/$)):D=j(D/$),I*=$),typeof g=="number"&&($=g|0,$<0?(X+=L*(E-1),E=j(-E/$)):E=j(E/$),L*=$),typeof c=="number"&&($=c|0,$<0?(X+=P*(R-1),R=j(-R/$)):R=j(R/$),P*=$),typeof A=="number"&&($=A|0,$<0?(X+=O*(N-1),N=j(-N/$)):N=j(N/$),O*=$),typeof v=="number"&&($=v|0,$<0?(X+=U*(F-1),F=j(-F/$)):F=j(F/$),U*=$),new b(this.data,D,E,R,N,F,I,L,P,O,U,X)},M.transpose=function(x,g,c,A,v){x=x===void 0?0:x|0,g=g===void 0?1:g|0,c=c===void 0?2:c|0,A=A===void 0?3:A|0,v=v===void 0?4:v|0;var D=this.shape,E=this.stride;return new b(this.data,D[x],D[g],D[c],D[A],D[v],E[x],E[g],E[c],E[A],E[v],this.offset)},M.pick=function(x,g,c,A,v){var D=[],E=[],R=this.offset;typeof x=="number"&&x>=0?R=R+this.stride[0]*x|0:(D.push(this.shape[0]),E.push(this.stride[0])),typeof g=="number"&&g>=0?R=R+this.stride[1]*g|0:(D.push(this.shape[1]),E.push(this.stride[1])),typeof c=="number"&&c>=0?R=R+this.stride[2]*c|0:(D.push(this.shape[2]),E.push(this.stride[2])),typeof A=="number"&&A>=0?R=R+this.stride[3]*A|0:(D.push(this.shape[3]),E.push(this.stride[3])),typeof v=="number"&&v>=0?R=R+this.stride[4]*v|0:(D.push(this.shape[4]),E.push(this.stride[4]));var N=k[D.length+1];return N(this.data,D,E,R)},function(x,g,c,A){return new b(x,g[0],g[1],g[2],g[3],g[4],c[0],c[1],c[2],c[3],c[4],A)}}};function p(T,y){var k=y===-1?"T":String(y),S=h[k];return y===-1?S(T):y===0?S(T,m[T][0]):S(T,m[T],f)}function _(T){if(l(T))return"buffer";if(u)switch(Object.prototype.toString.call(T)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(T)?"array":"generic"}var m={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function w(T,y,k,S){if(T===void 0){var c=m.array[0];return c([])}else typeof T=="number"&&(T=[T]);y===void 0&&(y=[T.length]);var b=y.length;if(k===void 0){k=new Array(b);for(var M=b-1,d=1;M>=0;--M)k[M]=d,d*=y[M]}if(S===void 0){S=0;for(var M=0;M1e-6?(k[0]=b/g,k[1]=M/g,k[2]=d/g,k[3]=x/g):(k[0]=k[1]=k[2]=0,k[3]=1)}function w(k,S,b){this.radius=l([b]),this.center=l(S),this.rotation=l(k),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var T=w.prototype;T.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},T.recalcMatrix=function(k){this.radius.curve(k),this.center.curve(k),this.rotation.curve(k);var S=this.computedRotation;m(S,S);var b=this.computedMatrix;s(b,S);var M=this.computedCenter,d=this.computedEye,x=this.computedUp,g=Math.exp(this.computedRadius[0]);d[0]=M[0]+g*b[2],d[1]=M[1]+g*b[6],d[2]=M[2]+g*b[10],x[0]=b[1],x[1]=b[5],x[2]=b[9];for(var c=0;c<3;++c){for(var A=0,v=0;v<3;++v)A+=b[c+4*v]*d[v];b[12+c]=-A}},T.getMatrix=function(k,S){this.recalcMatrix(k);var b=this.computedMatrix;if(S){for(var M=0;M<16;++M)S[M]=b[M];return S}return b},T.idle=function(k){this.center.idle(k),this.radius.idle(k),this.rotation.idle(k)},T.flush=function(k){this.center.flush(k),this.radius.flush(k),this.rotation.flush(k)},T.pan=function(k,S,b,M){S=S||0,b=b||0,M=M||0,this.recalcMatrix(k);var d=this.computedMatrix,x=d[1],g=d[5],c=d[9],A=p(x,g,c);x/=A,g/=A,c/=A;var v=d[0],D=d[4],E=d[8],R=v*x+D*g+E*c;v-=x*R,D-=g*R,E-=c*R;var N=p(v,D,E);v/=N,D/=N,E/=N;var F=d[2],I=d[6],L=d[10],P=F*x+I*g+L*c,O=F*v+I*D+L*E;F-=P*x+O*v,I-=P*g+O*D,L-=P*c+O*E;var U=p(F,I,L);F/=U,I/=U,L/=U;var X=v*S+x*b,$=D*S+g*b,j=E*S+c*b;this.center.move(k,X,$,j);var Y=Math.exp(this.computedRadius[0]);Y=Math.max(1e-4,Y+M),this.radius.set(k,Math.log(Y))},T.rotate=function(k,S,b,M){this.recalcMatrix(k),S=S||0,b=b||0;var d=this.computedMatrix,x=d[0],g=d[4],c=d[8],A=d[1],v=d[5],D=d[9],E=d[2],R=d[6],N=d[10],F=S*x+b*A,I=S*g+b*v,L=S*c+b*D,P=-(R*L-N*I),O=-(N*F-E*L),U=-(E*I-R*F),X=Math.sqrt(Math.max(0,1-Math.pow(P,2)-Math.pow(O,2)-Math.pow(U,2))),$=_(P,O,U,X);$>1e-6?(P/=$,O/=$,U/=$,X/=$):(P=O=U=0,X=1);var j=this.computedRotation,Y=j[0],q=j[1],K=j[2],ne=j[3],Q=Y*X+ne*P+q*U-K*O,oe=q*X+ne*O+K*P-Y*U,re=K*X+ne*U+Y*O-q*P,H=ne*X-Y*P-q*O-K*U;if(M){P=E,O=R,U=N;var ee=Math.sin(M)/p(P,O,U);P*=ee,O*=ee,U*=ee,X=Math.cos(S),Q=Q*X+H*P+oe*U-re*O,oe=oe*X+H*O+re*P-Q*U,re=re*X+H*U+Q*O-oe*P,H=H*X-Q*P-oe*O-re*U}var V=_(Q,oe,re,H);V>1e-6?(Q/=V,oe/=V,re/=V,H/=V):(Q=oe=re=0,H=1),this.rotation.set(k,Q,oe,re,H)},T.lookAt=function(k,S,b,M){this.recalcMatrix(k),b=b||this.computedCenter,S=S||this.computedEye,M=M||this.computedUp;var d=this.computedMatrix;u(d,S,b,M);var x=this.computedRotation;h(x,d[0],d[1],d[2],d[4],d[5],d[6],d[8],d[9],d[10]),m(x,x),this.rotation.set(k,x[0],x[1],x[2],x[3]);for(var g=0,c=0;c<3;++c)g+=Math.pow(b[c]-S[c],2);this.radius.set(k,.5*Math.log(Math.max(g,1e-6))),this.center.set(k,b[0],b[1],b[2])},T.translate=function(k,S,b,M){this.center.move(k,S||0,b||0,M||0)},T.setMatrix=function(k,S){var b=this.computedRotation;h(b,S[0],S[1],S[2],S[4],S[5],S[6],S[8],S[9],S[10]),m(b,b),this.rotation.set(k,b[0],b[1],b[2],b[3]);var M=this.computedMatrix;f(M,S);var d=M[15];if(Math.abs(d)>1e-6){var x=M[12]/d,g=M[13]/d,c=M[14]/d;this.recalcMatrix(k);var A=Math.exp(this.computedRadius[0]);this.center.set(k,x-M[2]*A,g-M[6]*A,c-M[10]*A),this.radius.idle(k)}else this.center.idle(k),this.radius.idle(k)},T.setDistance=function(k,S){S>0&&this.radius.set(k,Math.log(S))},T.setDistanceLimits=function(k,S){k>0?k=Math.log(k):k=-1/0,S>0?S=Math.log(S):S=1/0,S=Math.max(S,k),this.radius.bounds[0][0]=k,this.radius.bounds[1][0]=S},T.getDistanceLimits=function(k){var S=this.radius.bounds;return k?(k[0]=Math.exp(S[0][0]),k[1]=Math.exp(S[1][0]),k):[Math.exp(S[0][0]),Math.exp(S[1][0])]},T.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},T.fromJSON=function(k){var S=this.lastT(),b=k.center;b&&this.center.set(S,b[0],b[1],b[2]);var M=k.rotation;M&&this.rotation.set(S,M[0],M[1],M[2],M[3]);var d=k.distance;d&&d>0&&this.radius.set(S,Math.log(d)),this.setDistanceLimits(k.zoomMin,k.zoomMax)};function y(k){k=k||{};var S=k.center||[0,0,0],b=k.rotation||[0,0,0,1],M=k.radius||1;S=[].slice.call(S,0,3),b=[].slice.call(b,0,4),m(b,b);var d=new w(b,S,Math.log(M));return d.setDistanceLimits(k.zoomMin,k.zoomMax),("eye"in k||"up"in k)&&d.lookAt(0,k.eye,k.center,k.up),d}},9994:function(a,o,i){"use strict";var l=i(9618),u=i(8277);a.exports=function(f,h){for(var p=[],_=f,m=1;Array.isArray(_);)p.push(_.length),m*=_.length,_=_[0];return p.length===0?l():(h||(h=l(new Float64Array(m),p)),u(h,f),h)}}},r={};function t(a){var o=r[a];if(o!==void 0)return o.exports;var i=r[a]={id:a,loaded:!1,exports:{}};return e[a].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}(function(){t.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch(a){if(typeof window=="object")return window}}()})(),function(){t.nmd=function(a){return a.paths=[],a.children||(a.children=[]),a}}();var n=t(1964);kI.exports=n})()});var CI=de((Pde,SI)=>{"use strict";SI.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var RI=de((Ide,DI)=>{"use strict";var EI=CI();DI.exports=hie;var LI={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function hie(e){var r,t=[],n=1,a;if(typeof e=="string")if(e=e.toLowerCase(),EI[e])t=EI[e].slice(),a="rgb";else if(e==="transparent")n=0,a="rgb",t=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var o=e.slice(1),i=o.length,l=i<=4;n=1,l?(t=[parseInt(o[0]+o[0],16),parseInt(o[1]+o[1],16),parseInt(o[2]+o[2],16)],i===4&&(n=parseInt(o[3]+o[3],16)/255)):(t=[parseInt(o[0]+o[1],16),parseInt(o[2]+o[3],16),parseInt(o[4]+o[5],16)],i===8&&(n=parseInt(o[6]+o[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),a="rgb"}else if(r=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var u=r[1],s=u==="rgb",o=u.replace(/a$/,"");a=o;var i=o==="cmyk"?4:o==="gray"?1:3;t=r[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(p,_){if(/%$/.test(p))return _===i?parseFloat(p)/100:o==="rgb"?parseFloat(p)*255/100:parseFloat(p);if(o[_]==="h"){if(/deg$/.test(p))return parseFloat(p);if(LI[p]!==void 0)return LI[p]}return parseFloat(p)}),u===o&&t.push(1),n=s||t[i]===void 0?1:t[i],t=t.slice(0,i)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(t=e.match(/([0-9]+)/g).map(function(f){return parseFloat(f)}),a=e.match(/([a-z])/ig).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(t=[e[0],e[1],e[2]],a="rgb",n=e.length===4?e[3]:1):e instanceof Object&&(e.r!=null||e.red!=null||e.R!=null?(a="rgb",t=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(a="hsl",t=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),n=e.a||e.alpha||e.opacity||1,e.opacity!=null&&(n/=100)):(a="rgb",t=[e>>>16,(e&65280)>>>8,e&255]);return{space:a,values:t,alpha:n}}});var II=de((Fde,PI)=>{"use strict";var vie=RI();PI.exports=function(r){Array.isArray(r)&&r.raw&&(r=String.raw.apply(null,arguments));var t,n,a,o=vie(r);if(!o.space)return[];var i=[0,0,0],l=o.space[0]==="h"?[360,100,100]:[255,255,255];return t=Array(3),t[0]=Math.min(Math.max(o.values[0],i[0]),l[0]),t[1]=Math.min(Math.max(o.values[1],i[1]),l[1]),t[2]=Math.min(Math.max(o.values[2],i[2]),l[2]),o.space[0]==="h"&&(t=die(t)),t.push(Math.min(Math.max(o.alpha,0),1)),t};function die(e){var r=e[0]/360,t=e[1]/100,n=e[2]/100,a,o,i,l,u,s=0;if(t===0)return u=n*255,[u,u,u];for(o=n<.5?n*(1+t):n+t-n*t,a=2*n-o,l=[0,0,0];s<3;)i=r+1/3*-(s-1),i<0?i++:i>1&&i--,u=6*i<1?a+(o-a)*6*i:2*i<1?o:3*i<2?a+(o-a)*(2/3-i)*6:a,l[s++]=u*255;return l}});var NI=de((Nde,FI)=>{FI.exports=pie;function pie(e,r,t){return rt?t:e:er?r:e}});var qI=de((zde,zI)=>{zI.exports=function(e){switch(e){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}});var A3=de((qde,OI)=>{"use strict";var gie=II(),ld=NI(),yie=qI();OI.exports=function(r,t){(t==="float"||!t)&&(t="array"),t==="uint"&&(t="uint8"),t==="uint_clamped"&&(t="uint8_clamped");var n=yie(t),a=new n(4),o=t!=="uint8"&&t!=="uint8_clamped";return(!r.length||typeof r=="string")&&(r=gie(r),r[0]/=255,r[1]/=255,r[2]/=255),mie(r)?(a[0]=r[0],a[1]=r[1],a[2]=r[2],a[3]=r[3]!=null?r[3]:255,o&&(a[0]/=255,a[1]/=255,a[2]/=255,a[3]/=255),a):(o?(a[0]=r[0],a[1]=r[1],a[2]=r[2],a[3]=r[3]!=null?r[3]:1):(a[0]=ld(Math.floor(r[0]*255),0,255),a[1]=ld(Math.floor(r[1]*255),0,255),a[2]=ld(Math.floor(r[2]*255),0,255),a[3]=r[3]==null?255:ld(Math.floor(r[3]*255),0,255)),a)};function mie(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}});var po=de((Ode,BI)=>{"use strict";var bie=A3();function xie(e){return e?bie(e):[0,0,0,1]}BI.exports=xie});var al=de((Bde,XI)=>{"use strict";var YI=nt(),_ie=ka(),sd=A3(),ud=Li(),wie=Ti().defaultLine,UI=ea().isArrayOrTypedArray,k3=sd(wie),WI=1;function HI(e,r){var t=e;return t[3]*=r,t}function VI(e){if(YI(e))return k3;var r=sd(e);return r.length?r:k3}function GI(e){return YI(e)?e:WI}function Mie(e,r,t){var n=e.color;n&&n._inputArray&&(n=n._inputArray);var a=UI(n),o=UI(r),i=ud.extractOpts(e),l=[],u,s,f,h,p;if(i.colorscale!==void 0?u=ud.makeColorScaleFuncFromTrace(e):u=VI,a?s=function(m,w){return m[w]===void 0?k3:sd(u(m[w]))}:s=VI,o?f=function(m,w){return m[w]===void 0?WI:GI(m[w])}:f=GI,a||o)for(var _=0;_{"use strict";ZI.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}});var fd=de((Hde,JI)=>{"use strict";JI.exports={circle:"\u25CF","circle-open":"\u25CB",square:"\u25A0","square-open":"\u25A1",diamond:"\u25C6","diamond-open":"\u25C7",cross:"+",x:"\u274C"}});var QI=de((Vde,KI)=>{"use strict";var Aie=Cr();function C3(e,r,t,n){if(!r||!r.visible)return null;for(var a=Aie.getComponentMethod("errorbars","makeComputeError")(r),o=new Array(e.length),i=0;i0){var h=n.c2l(s);n._lowerLogErrorBound||(n._lowerLogErrorBound=h),n._lowerErrorBound=Math.min(n._lowerLogErrorBound,h)}}else o[i]=[-l[0]*t,l[1]*t]}return o}function kie(e){for(var r=0;r{"use strict";var Cie=pn().gl_line3d,$I=pn().gl_scatter3d,Eie=pn().gl_error3d,Lie=pn().gl_mesh3d,Die=pn().delaunay_triangulate,go=ir(),nF=po(),cd=al().formatColor,Rie=Sg(),E3=S3(),Pie=fd(),Iie=Lt(),Fie=to().appendArrayPointValue,Nie=QI();function aF(e,r){this.scene=e,this.uid=r,this.linePlot=null,this.scatterPlot=null,this.errorBars=null,this.textMarkers=null,this.delaunayMesh=null,this.color=null,this.mode="",this.dataPoints=[],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.textLabels=null,this.data=null}var D3=aF.prototype;D3.handlePick=function(e){if(e.object&&(e.object===this.linePlot||e.object===this.delaunayMesh||e.object===this.textMarkers||e.object===this.scatterPlot)){var r=e.index=e.data.index;return e.object.highlight&&e.object.highlight(null),this.scatterPlot&&(e.object=this.scatterPlot,this.scatterPlot.highlight(e.data)),e.textLabel="",this.textLabels&&(go.isArrayOrTypedArray(this.textLabels)?(this.textLabels[r]||this.textLabels[r]===0)&&(e.textLabel=this.textLabels[r]):e.textLabel=this.textLabels),e.traceCoordinate=[this.data.x[r],this.data.y[r],this.data.z[r]],!0}};function zie(e,r,t){var n=(t+1)%3,a=(t+2)%3,o=[],i=[],l;for(l=0;l-1?-1:e.indexOf("right")>-1?1:0}function eF(e){return e==null?0:e.indexOf("top")>-1?-1:e.indexOf("bottom")>-1?1:0}function Oie(e){var r=0,t=0,n=[r,t];if(Array.isArray(e))for(var a=0;a=0){var s=zie(l.position,l.delaunayColor,l.delaunayAxis);s.opacity=e.opacity,this.delaunayMesh?this.delaunayMesh.update(s):(s.gl=r,this.delaunayMesh=Lie(s),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)};D3.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())};function Vie(e,r){var t=new aF(e,r.uid);return t.update(r),t}iF.exports=Vie});var N3=de((Yde,fF)=>{"use strict";var yo=jl(),Gie=kn(),F3=ei(),R3=ro().axisHoverFormat,{hovertemplateAttrs:Yie,texttemplateAttrs:Wie,templatefallbackAttrs:lF}=Ka(),sF=Sn(),Xie=S3(),Zie=fd(),gi=Tt().extendFlat,Jie=zn().overrideAll,uF=Jc(),Kie=yo.line,cs=yo.marker,Qie=cs.line,$ie=gi({width:Kie.width,dash:{valType:"enumerated",values:uF(Xie),dflt:"solid"}},F3("line"));function P3(e){return{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}}var I3=fF.exports=Jie({x:yo.x,y:yo.y,z:{valType:"data_array"},text:gi({},yo.text,{}),texttemplate:Wie(),texttemplatefallback:lF({editType:"calc"}),hovertext:gi({},yo.hovertext,{}),hovertemplate:Yie(),hovertemplatefallback:lF(),xhoverformat:R3("x"),yhoverformat:R3("y"),zhoverformat:R3("z"),mode:gi({},yo.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:P3("x"),y:P3("y"),z:P3("z")},connectgaps:yo.connectgaps,line:$ie,marker:gi({symbol:{valType:"enumerated",values:uF(Zie),dflt:"circle",arrayOk:!0},size:gi({},cs.size,{dflt:8}),sizeref:cs.sizeref,sizemin:cs.sizemin,sizemode:cs.sizemode,opacity:gi({},cs.opacity,{arrayOk:!1}),colorbar:cs.colorbar,line:gi({width:gi({},Qie.width,{arrayOk:!1})},F3("marker.line"))},F3("marker")),textposition:gi({},yo.textposition,{dflt:"top center"}),textfont:Gie({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"]}),opacity:sF.opacity,hoverinfo:gi({},sF.hoverinfo)},"calc","nested");I3.x.editType=I3.y.editType=I3.z.editType="calc+clearAxisTypes"});var vF=de((Wde,hF)=>{"use strict";var cF=Cr(),jie=ir(),z3=oa(),eoe=tm(),roe=nm(),toe=am(),noe=N3();hF.exports=function(r,t,n,a){function o(_,m){return jie.coerce(r,t,noe,_,m)}var i=aoe(r,t,o,a);if(!i){t.visible=!1;return}o("text"),o("hovertext"),o("hovertemplate"),o("hovertemplatefallback"),o("xhoverformat"),o("yhoverformat"),o("zhoverformat"),o("mode"),z3.hasMarkers(t)&&eoe(r,t,n,a,o,{noSelect:!0,noAngle:!0}),z3.hasLines(t)&&(o("connectgaps"),roe(r,t,n,a,o)),z3.hasText(t)&&(o("texttemplate"),o("texttemplatefallback"),toe(r,t,a,o,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var l=(t.line||{}).color,u=(t.marker||{}).color;o("surfaceaxis")>=0&&o("surfacecolor",l||u);for(var s=["x","y","z"],f=0;f<3;++f){var h="projection."+s[f];o(h+".show")&&(o(h+".opacity"),o(h+".scale"))}var p=cF.getComponentMethod("errorbars","supplyDefaults");p(r,t,l||u||n,{axis:"z"}),p(r,t,l||u||n,{axis:"y",inherit:"z"}),p(r,t,l||u||n,{axis:"x",inherit:"z"})};function aoe(e,r,t,n){var a=0,o=t("x"),i=t("y"),l=t("z"),u=cF.getComponentMethod("calendars","handleTraceDefaults");return u(e,r,["x","y","z"],n),o&&i&&l&&(a=Math.min(o.length,i.length,l.length),r._length=r._xlength=r._ylength=r._zlength=a),a}});var pF=de((Xde,dF)=>{"use strict";var ioe=b1(),ooe=lm();dF.exports=function(r,t){var n=[{x:!1,y:!1,trace:t,t:{}}];return ioe(n,t),ooe(r,t),n}});var yF=de((Zde,gF)=>{gF.exports=loe;function loe(e,r){if(typeof e!="string")throw new TypeError("must specify type string");if(r=r||{},typeof document=="undefined"&&!r.canvas)return null;var t=r.canvas||document.createElement("canvas");typeof r.width=="number"&&(t.width=r.width),typeof r.height=="number"&&(t.height=r.height);var n=r,a;try{var o=[e];e.indexOf("webgl")===0&&o.push("experimental-"+e);for(var i=0;i{var soe=yF();mF.exports=function(r){return soe("webgl",r)}});var wF=de((Kde,_F)=>{"use strict";var xF=Xr(),uoe=function(){};_F.exports=function(r){for(var t in r)typeof r[t]=="function"&&(r[t]=uoe);r.destroy=function(){r.container.parentNode.removeChild(r.container)};var n=document.createElement("div");n.className="no-webgl",n.style.cursor="pointer",n.style.fontSize="24px",n.style.color=xF.defaults[0],n.style.position="absolute",n.style.left=n.style.top="0px",n.style.width=n.style.height="100%",n.style["background-color"]=xF.lightLine,n.style["z-index"]=30;var a=document.createElement("p");return a.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",a.style.position="relative",a.style.top="50%",a.style.left="50%",a.style.height="30%",a.style.width="50%",a.style.margin="-15% 0 0 -25%",n.appendChild(a),r.container.appendChild(n),r.container.style.background="#FFFFFF",r.container.onclick=function(){window.open("https://get.webgl.org")},!1}});var AF=de((Qde,TF)=>{"use strict";var hs=po(),foe=ir(),coe=["xaxis","yaxis","zaxis"];function MF(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickFontWeight=["normal","normal","normal","normal"],this.tickFontStyle=["normal","normal","normal","normal"],this.tickFontVariant=["normal","normal","normal","normal"],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["Open Sans","Open Sans","Open Sans"],this.labelSize=[20,20,20],this.labelFontWeight=["normal","normal","normal","normal"],this.labelFontStyle=["normal","normal","normal","normal"],this.labelFontVariant=["normal","normal","normal","normal"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[30,30,30],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[10,10,10],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!0,!0,!0],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._defaultTickPad=this.tickPad.slice(),this._defaultLabelPad=this.labelPad.slice(),this._defaultLineTickLength=this.lineTickLength.slice()}var hoe=MF.prototype;hoe.merge=function(e,r){for(var t=this,n=0;n<3;++n){var a=r[coe[n]];if(!a.visible){t.tickEnable[n]=!1,t.labelEnable[n]=!1,t.lineEnable[n]=!1,t.lineTickEnable[n]=!1,t.gridEnable[n]=!1,t.zeroEnable[n]=!1,t.backgroundEnable[n]=!1;continue}t.labels[n]=e._meta?foe.templateString(a.title.text,e._meta):a.title.text,"font"in a.title&&(a.title.font.color&&(t.labelColor[n]=hs(a.title.font.color)),a.title.font.family&&(t.labelFont[n]=a.title.font.family),a.title.font.size&&(t.labelSize[n]=a.title.font.size),a.title.font.weight&&(t.labelFontWeight[n]=a.title.font.weight),a.title.font.style&&(t.labelFontStyle[n]=a.title.font.style),a.title.font.variant&&(t.labelFontVariant[n]=a.title.font.variant)),"showline"in a&&(t.lineEnable[n]=a.showline),"linecolor"in a&&(t.lineColor[n]=hs(a.linecolor)),"linewidth"in a&&(t.lineWidth[n]=a.linewidth),"showgrid"in a&&(t.gridEnable[n]=a.showgrid),"gridcolor"in a&&(t.gridColor[n]=hs(a.gridcolor)),"gridwidth"in a&&(t.gridWidth[n]=a.gridwidth),a.type==="log"?t.zeroEnable[n]=!1:"zeroline"in a&&(t.zeroEnable[n]=a.zeroline),"zerolinecolor"in a&&(t.zeroLineColor[n]=hs(a.zerolinecolor)),"zerolinewidth"in a&&(t.zeroLineWidth[n]=a.zerolinewidth),"ticks"in a&&a.ticks?t.lineTickEnable[n]=!0:t.lineTickEnable[n]=!1,"ticklen"in a&&(t.lineTickLength[n]=t._defaultLineTickLength[n]=a.ticklen),"tickcolor"in a&&(t.lineTickColor[n]=hs(a.tickcolor)),"tickwidth"in a&&(t.lineTickWidth[n]=a.tickwidth),"tickangle"in a&&(t.tickAngle[n]=a.tickangle==="auto"?-3600:Math.PI*-a.tickangle/180),"showticklabels"in a&&(t.tickEnable[n]=a.showticklabels),"tickfont"in a&&(a.tickfont.color&&(t.tickColor[n]=hs(a.tickfont.color)),a.tickfont.family&&(t.tickFont[n]=a.tickfont.family),a.tickfont.size&&(t.tickSize[n]=a.tickfont.size),a.tickfont.weight&&(t.tickFontWeight[n]=a.tickfont.weight),a.tickfont.style&&(t.tickFontStyle[n]=a.tickfont.style),a.tickfont.variant&&(t.tickFontVariant[n]=a.tickfont.variant)),"mirror"in a?["ticks","all","allticks"].indexOf(a.mirror)!==-1?(t.lineTickMirror[n]=!0,t.lineMirror[n]=!0):a.mirror===!0?(t.lineTickMirror[n]=!1,t.lineMirror[n]=!0):(t.lineTickMirror[n]=!1,t.lineMirror[n]=!1):t.lineMirror[n]=!1,"showbackground"in a&&a.showbackground!==!1?(t.backgroundEnable[n]=!0,t.backgroundColor[n]=hs(a.backgroundcolor)):t.backgroundEnable[n]=!1}};function voe(e,r){var t=new MF;return t.merge(e,r),t}TF.exports=voe});var CF=de(($de,SF)=>{"use strict";var doe=po(),poe=["xaxis","yaxis","zaxis"];function kF(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}var goe=kF.prototype;goe.merge=function(e){for(var r=0;r<3;++r){var t=e[poe[r]];if(!t.visible){this.enabled[r]=!1,this.drawSides[r]=!1;continue}this.enabled[r]=t.showspikes,this.colors[r]=doe(t.spikecolor),this.drawSides[r]=t.spikesides,this.lineWidth[r]=t.spikethickness}};function yoe(e){var r=new kF;return r.merge(e),r}SF.exports=yoe});var DF=de((jde,LF)=>{"use strict";LF.exports=woe;var EF=Lt(),moe=ir(),boe=["xaxis","yaxis","zaxis"],xoe=[0,0,0];function _oe(e){for(var r=new Array(3),t=0;t<3;++t){for(var n=e[t],a=new Array(n.length),o=0;o/g," "));a[o]=s,i.tickmode=l}}r.ticks=a;for(var o=0;o<3;++o){xoe[o]=.5*(e.glplot.bounds[0][o]+e.glplot.bounds[1][o]);for(var f=0;f<2;++f)r.bounds[f][o]=e.glplot.bounds[f][o]}e.contourLevels=_oe(a)}});var qF=de((epe,zF)=>{"use strict";var IF=pn().gl_plot3d,Moe=IF.createCamera,RF=IF.createScene,Toe=bF(),Aoe=Qh(),dd=Cr(),Jn=ir(),vd=Jn.preserveDrawingBuffer(),pd=Lt(),yi=io(),koe=po(),Soe=wF(),Coe=Vm(),Eoe=AF(),Loe=CF(),Doe=DF(),Roe=eu().applyAutorangeOptions,U0,hd,FF=!1;function NF(e,r){var t=document.createElement("div"),n=e.container;this.graphDiv=e.graphDiv;var a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.style.position="absolute",a.style.top=a.style.left="0px",a.style.width=a.style.height="100%",a.style["z-index"]=20,a.style["pointer-events"]="none",t.appendChild(a),this.svgContainer=a,t.id=e.id,t.style.position="absolute",t.style.top=t.style.left="0px",t.style.width=t.style.height="100%",n.appendChild(t),this.fullLayout=r,this.id=e.id||"scene",this.fullSceneLayout=r[this.id],this.plotArgs=[[],{},{}],this.axesOptions=Eoe(r,r[this.id]),this.spikeOptions=Loe(r[this.id]),this.container=t,this.staticMode=!!e.staticPlot,this.pixelRatio=this.pixelRatio||e.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=dd.getComponentMethod("annotations3d","convert"),this.drawAnnotations=dd.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var Dn=NF.prototype;Dn.prepareOptions=function(){var e=this,r={canvas:e.canvas,gl:e.gl,glOptions:{preserveDrawingBuffer:vd,premultipliedAlpha:!0,antialias:!0},container:e.container,axes:e.axesOptions,spikes:e.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:e.camera,pixelRatio:e.pixelRatio};if(e.staticMode){if(!hd&&(U0=document.createElement("canvas"),hd=Toe({canvas:U0,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!hd))throw new Error("error creating static canvas/context for image server");r.gl=hd,r.canvas=U0}return r};var PF=!0;Dn.tryCreatePlot=function(){var e=this,r=e.prepareOptions(),t=!0;try{e.glplot=RF(r)}catch(n){if(e.staticMode||!PF||vd)t=!1;else{Jn.warn(["webgl setup failed possibly due to","false preserveDrawingBuffer config.","The mobile/tablet device may not be detected by is-mobile module.","Enabling preserveDrawingBuffer in second attempt to create webgl scene..."].join(" "));try{vd=r.glOptions.preserveDrawingBuffer=!0,e.glplot=RF(r)}catch(a){vd=r.glOptions.preserveDrawingBuffer=!1,t=!1}}}return PF=!1,t};Dn.initializeGLCamera=function(){var e=this,r=e.fullSceneLayout.camera,t=r.projection.type==="orthographic";e.camera=Moe(e.container,{center:[r.center.x,r.center.y,r.center.z],eye:[r.eye.x,r.eye.y,r.eye.z],up:[r.up.x,r.up.y,r.up.z],_ortho:t,zoomMin:.01,zoomMax:100,mode:"orbit"})};Dn.initializeGLPlot=function(){var e=this;e.initializeGLCamera();var r=e.tryCreatePlot();if(!r)return Soe(e);e.traces={},e.make4thDimension();var t=e.graphDiv,n=t.layout,a=function(){var i={};return e.isCameraChanged(n)&&(i[e.id+".camera"]=e.getCamera()),e.isAspectChanged(n)&&(i[e.id+".aspectratio"]=e.glplot.getAspectratio(),n[e.id].aspectmode!=="manual"&&(e.fullSceneLayout.aspectmode=n[e.id].aspectmode=i[e.id+".aspectmode"]="manual")),i},o=function(i){if(i.fullSceneLayout.dragmode!==!1){var l=a();i.saveLayout(n),i.graphDiv.emit("plotly_relayout",l)}};return e.glplot.canvas&&(e.glplot.canvas.addEventListener("mouseup",function(){o(e)}),e.glplot.canvas.addEventListener("touchstart",function(){FF=!0}),e.glplot.canvas.addEventListener("wheel",function(i){if(t._context._scrollZoom.gl3d){if(e.camera._ortho){var l=i.deltaX>i.deltaY?1.1:.9090909090909091,u=e.glplot.getAspectratio();e.glplot.setAspectratio({x:l*u.x,y:l*u.y,z:l*u.z})}o(e)}},Aoe?{passive:!1}:!1),e.glplot.canvas.addEventListener("mousemove",function(){if(e.fullSceneLayout.dragmode!==!1&&e.camera.mouseListener.buttons!==0){var i=a();e.graphDiv.emit("plotly_relayouting",i)}}),e.staticMode||e.glplot.canvas.addEventListener("webglcontextlost",function(i){t&&t.emit&&t.emit("plotly_webglcontextlost",{event:i,layer:e.id})},!1)),e.glplot.oncontextloss=function(){e.recoverContext()},e.glplot.onrender=function(){e.render()},!0};Dn.render=function(){var e=this,r=e.graphDiv,t,n=e.svgContainer,a=e.container.getBoundingClientRect();r._fullLayout._calcInverseTransform(r);var o=r._fullLayout._invScaleX,i=r._fullLayout._invScaleY,l=a.width*o,u=a.height*i;n.setAttributeNS(null,"viewBox","0 0 "+l+" "+u),n.setAttributeNS(null,"width",l),n.setAttributeNS(null,"height",u),Doe(e),e.glplot.axes.update(e.axesOptions);for(var s=Object.keys(e.traces),f=null,h=e.glplot.selection,p=0;p")):t.type==="isosurface"||t.type==="volume"?(y.valueLabel=pd.hoverLabelText(e._mockAxis,e._mockAxis.d2l(h.traceCoordinate[3]),t.valuehoverformat),d.push("value: "+y.valueLabel),h.textLabel&&d.push(h.textLabel),M=d.join("
")):M=h.textLabel;var x={x:h.traceCoordinate[0],y:h.traceCoordinate[1],z:h.traceCoordinate[2],data:w._input,fullData:w,curveNumber:w.index,pointNumber:T};yi.appendArrayPointValue(x,w,T),t._module.eventData&&(x=w._module.eventData(x,h,w,{},T));var g={points:[x]};if(e.fullSceneLayout.hovermode){var c=[];yi.loneHover({trace:w,x:(.5+.5*m[0]/m[3])*l,y:(.5-.5*m[1]/m[3])*u,xLabel:y.xLabel,yLabel:y.yLabel,zLabel:y.zLabel,text:M,name:f.name,color:yi.castHoverOption(w,T,"bgcolor")||f.color,borderColor:yi.castHoverOption(w,T,"bordercolor"),fontFamily:yi.castHoverOption(w,T,"font.family"),fontSize:yi.castHoverOption(w,T,"font.size"),fontColor:yi.castHoverOption(w,T,"font.color"),nameLength:yi.castHoverOption(w,T,"namelength"),textAlign:yi.castHoverOption(w,T,"align"),hovertemplate:Jn.castOption(w,T,"hovertemplate"),hovertemplateLabels:Jn.extendFlat({},x,y),eventData:[x]},{container:n,gd:r,inOut_bbox:c}),x.bbox=c[0]}h.distance<5&&(h.buttons||FF)?r.emit("plotly_click",g):r.emit("plotly_hover",g),this.oldEventData=g}else yi.loneUnhover(n),this.oldEventData&&r.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;e.drawAnnotations(e)};Dn.recoverContext=function(){var e=this;e.glplot.dispose();var r=function(){if(e.glplot.gl.isContextLost()){requestAnimationFrame(r);return}if(!e.initializeGLPlot()){Jn.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}e.plot.apply(e,e.plotArgs)};requestAnimationFrame(r)};var H0=["xaxis","yaxis","zaxis"];function Poe(e,r,t){for(var n=e.fullSceneLayout,a=0;a<3;a++){var o=H0[a],i=o.charAt(0),l=n[o],u=r[i],s=r[i+"calendar"],f=r["_"+i+"length"];if(!Jn.isArrayOrTypedArray(u))t[0][a]=Math.min(t[0][a],0),t[1][a]=Math.max(t[1][a],f-1);else for(var h,p=0;p<(f||u.length);p++)if(Jn.isArrayOrTypedArray(u[p]))for(var _=0;_w[1][i])w[0][i]=-1,w[1][i]=1;else{var v=w[1][i]-w[0][i];w[0][i]-=v/32,w[1][i]+=v/32}if(k=[w[0][i],w[1][i]],k=Roe(k,u),w[0][i]=k[0],w[1][i]=k[1],u.isReversed()){var D=w[0][i];w[0][i]=w[1][i],w[1][i]=D}}else k=u.range,w[0][i]=u.r2l(k[0]),w[1][i]=u.r2l(k[1]);w[0][i]===w[1][i]&&(w[0][i]-=1,w[1][i]+=1),T[i]=w[1][i]-w[0][i],u.range=[w[0][i],w[1][i]],u.limitRange(),n.glplot.setBounds(i,{min:u.range[0]*_[i],max:u.range[1]*_[i]})}var E,R=f.aspectmode;if(R==="cube")E=[1,1,1];else if(R==="manual"){var N=f.aspectratio;E=[N.x,N.y,N.z]}else if(R==="auto"||R==="data"){var F=[1,1,1];for(i=0;i<3;++i){u=f[H0[i]],s=u.type;var I=y[s];F[i]=Math.pow(I.acc,1/I.count)/_[i]}R==="data"||Math.max.apply(null,F)/Math.min.apply(null,F)<=4?E=F:E=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");f.aspectratio.x=h.aspectratio.x=E[0],f.aspectratio.y=h.aspectratio.y=E[1],f.aspectratio.z=h.aspectratio.z=E[2],n.glplot.setAspectratio(f.aspectratio),n.viewInitial.aspectratio||(n.viewInitial.aspectratio={x:f.aspectratio.x,y:f.aspectratio.y,z:f.aspectratio.z}),n.viewInitial.aspectmode||(n.viewInitial.aspectmode=f.aspectmode);var L=f.domain||null,P=r._size||null;if(L&&P){var O=n.container.style;O.position="absolute",O.left=P.l+L.x[0]*P.w+"px",O.top=P.t+(1-L.y[1])*P.h+"px",O.width=P.w*(L.x[1]-L.x[0])+"px",O.height=P.h*(L.y[1]-L.y[0])+"px"}n.glplot.redraw()}};Dn.destroy=function(){var e=this;e.glplot&&(e.camera.mouseListener.enabled=!1,e.container.removeEventListener("wheel",e.camera.wheelListener),e.camera=null,e.glplot.dispose(),e.container.parentNode.removeChild(e.container),e.glplot=null)};function Foe(e){return[[e.eye.x,e.eye.y,e.eye.z],[e.center.x,e.center.y,e.center.z],[e.up.x,e.up.y,e.up.z]]}function Noe(e){return{up:{x:e.up[0],y:e.up[1],z:e.up[2]},center:{x:e.center[0],y:e.center[1],z:e.center[2]},eye:{x:e.eye[0],y:e.eye[1],z:e.eye[2]},projection:{type:e._ortho===!0?"orthographic":"perspective"}}}Dn.getCamera=function(){var e=this;return e.camera.view.recalcMatrix(e.camera.view.lastT()),Noe(e.camera)};Dn.setViewport=function(e){var r=this,t=e.camera;r.camera.lookAt.apply(this,Foe(t)),r.glplot.setAspectratio(e.aspectratio);var n=t.projection.type==="orthographic",a=r.camera._ortho;n!==a&&(r.glplot.redraw(),r.glplot.clearRGBA(),r.glplot.dispose(),r.initializeGLPlot())};Dn.isCameraChanged=function(e){var r=this,t=r.getCamera(),n=Jn.nestedProperty(e,r.id+".camera"),a=n.get();function o(s,f,h,p){var _=["up","center","eye"],m=["x","y","z"];return f[_[h]]&&s[_[h]][m[p]]===f[_[h]][m[p]]}var i=!1;if(a===void 0)i=!0;else{for(var l=0;l<3;l++)for(var u=0;u<3;u++)if(!o(t,a,l,u)){i=!0;break}(!a.projection||t.projection&&t.projection.type!==a.projection.type)&&(i=!0)}return i};Dn.isAspectChanged=function(e){var r=this,t=r.glplot.getAspectratio(),n=Jn.nestedProperty(e,r.id+".aspectratio"),a=n.get();return a===void 0||a.x!==t.x||a.y!==t.y||a.z!==t.z};Dn.saveLayout=function(e){var r=this,t=r.fullLayout,n,a,o,i,l,u,s=r.isCameraChanged(e),f=r.isAspectChanged(e),h=s||f;if(h){var p={};if(s&&(n=r.getCamera(),a=Jn.nestedProperty(e,r.id+".camera"),o=a.get(),p[r.id+".camera"]=o),f&&(i=r.glplot.getAspectratio(),l=Jn.nestedProperty(e,r.id+".aspectratio"),u=l.get(),p[r.id+".aspectratio"]=u),dd.call("_storeDirectGUIEdit",e,t._preGUI,p),s){a.set(n);var _=Jn.nestedProperty(t,r.id+".camera");_.set(n)}if(f){l.set(i);var m=Jn.nestedProperty(t,r.id+".aspectratio");m.set(i),r.glplot.redraw()}}return h};Dn.updateFx=function(e,r){var t=this,n=t.camera;if(n)if(e==="orbit")n.mode="orbit",n.keyBindingMode="rotate";else if(e==="turntable"){n.up=[0,0,1],n.mode="turntable",n.keyBindingMode="rotate";var a=t.graphDiv,o=a._fullLayout,i=t.fullSceneLayout.camera,l=i.up.x,u=i.up.y,s=i.up.z;if(s/Math.sqrt(l*l+u*u+s*s)<.999){var f=t.id+".camera.up",h={x:0,y:0,z:1},p={};p[f]=h;var _=a.layout;dd.call("_storeDirectGUIEdit",_,o._preGUI,p),i.up=h,Jn.nestedProperty(_,f).set(h)}}else n.keyBindingMode=e;t.fullSceneLayout.hovermode=r};function zoe(e,r,t){for(var n=0,a=t-1;n0)for(var l=255/i,u=0;u<3;++u)e[o+u]=Math.min(l*e[o+u],255)}}Dn.toImage=function(e){var r=this;e||(e="png"),r.staticMode&&r.container.appendChild(U0),r.glplot.redraw();var t=r.glplot.gl,n=t.drawingBufferWidth,a=t.drawingBufferHeight;t.bindFramebuffer(t.FRAMEBUFFER,null);var o=new Uint8Array(n*a*4);t.readPixels(0,0,n,a,t.RGBA,t.UNSIGNED_BYTE,o),zoe(o,n,a),qoe(o,n,a);var i=document.createElement("canvas");i.width=n,i.height=a;var l=i.getContext("2d",{willReadFrequently:!0}),u=l.createImageData(n,a);u.data.set(o),l.putImageData(u,0,0);var s;switch(e){case"jpeg":s=i.toDataURL("image/jpeg");break;case"webp":s=i.toDataURL("image/webp");break;default:s=i.toDataURL("image/png")}return r.staticMode&&r.container.removeChild(U0),s};Dn.setConvert=function(){for(var e=this,r=0;r<3;r++){var t=e.fullSceneLayout[H0[r]];pd.setConvert(t,e.fullLayout),t.setScale=Jn.noop}};Dn.make4thDimension=function(){var e=this,r=e.graphDiv,t=r._fullLayout;e._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},pd.setConvert(e._mockAxis,t)};zF.exports=NF});var BF=de((rpe,OF)=>{"use strict";OF.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}});var O3=de((tpe,UF)=>{"use strict";var Ooe=Xr(),Ur=La(),q3=Tt().extendFlat,Boe=zn().overrideAll;UF.exports=Boe({visible:Ur.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:Ooe.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:Ur.color,categoryorder:Ur.categoryorder,categoryarray:Ur.categoryarray,title:{text:Ur.title.text,font:Ur.title.font},type:q3({},Ur.type,{values:["-","linear","log","date","category"]}),autotypenumbers:Ur.autotypenumbers,autorange:Ur.autorange,autorangeoptions:{minallowed:Ur.autorangeoptions.minallowed,maxallowed:Ur.autorangeoptions.maxallowed,clipmin:Ur.autorangeoptions.clipmin,clipmax:Ur.autorangeoptions.clipmax,include:Ur.autorangeoptions.include,editType:"plot"},rangemode:Ur.rangemode,minallowed:Ur.minallowed,maxallowed:Ur.maxallowed,range:q3({},Ur.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:Ur.minor.tickmode,nticks:Ur.nticks,tick0:Ur.tick0,dtick:Ur.dtick,tickvals:Ur.tickvals,ticktext:Ur.ticktext,ticks:Ur.ticks,mirror:Ur.mirror,ticklen:Ur.ticklen,tickwidth:Ur.tickwidth,tickcolor:Ur.tickcolor,showticklabels:Ur.showticklabels,labelalias:Ur.labelalias,tickfont:Ur.tickfont,tickangle:Ur.tickangle,tickprefix:Ur.tickprefix,showtickprefix:Ur.showtickprefix,ticksuffix:Ur.ticksuffix,showticksuffix:Ur.showticksuffix,showexponent:Ur.showexponent,exponentformat:Ur.exponentformat,minexponent:Ur.minexponent,separatethousands:Ur.separatethousands,tickformat:Ur.tickformat,tickformatstops:Ur.tickformatstops,hoverformat:Ur.hoverformat,showline:Ur.showline,linecolor:Ur.linecolor,linewidth:Ur.linewidth,showgrid:Ur.showgrid,gridcolor:q3({},Ur.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:Ur.gridwidth,zeroline:Ur.zeroline,zerolinecolor:Ur.zerolinecolor,zerolinewidth:Ur.zerolinewidth},"plot","from-root")});var V3=de((npe,HF)=>{"use strict";var B3=O3(),Uoe=rd().attributes,U3=Tt().extendFlat,Hoe=ir().counterRegex;function H3(e,r,t){return{x:{valType:"number",dflt:e,editType:"camera"},y:{valType:"number",dflt:r,editType:"camera"},z:{valType:"number",dflt:t,editType:"camera"},editType:"camera"}}HF.exports={_arrayAttrRegexps:[Hoe("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:U3(H3(0,0,1),{}),center:U3(H3(0,0,0),{}),eye:U3(H3(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:Uoe({name:"scene",editType:"plot"}),aspectmode:{valType:"enumerated",values:["auto","cube","data","manual"],dflt:"auto",editType:"plot",impliedEdits:{"aspectratio.x":void 0,"aspectratio.y":void 0,"aspectratio.z":void 0}},aspectratio:{x:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},y:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},z:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},editType:"plot",impliedEdits:{aspectmode:"manual"}},xaxis:B3,yaxis:B3,zaxis:B3,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot"},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar"},uirevision:{valType:"any",editType:"none"},editType:"plot"}});var GF=de((ape,VF)=>{"use strict";var Voe=ir(),Goe=yt(),Yoe=rd().defaults;VF.exports=function(r,t,n,a){var o=a.type,i=a.attributes,l=a.handleDefaults,u=a.partition||"x",s=t._subplots[o],f=s.length,h=f&&s[0].replace(/\d+$/,""),p,_;function m(k,S){return Voe.coerce(p,_,i,k,S)}for(var w=0;w{"use strict";var Woe=ka().mix,YF=ir(),Xoe=yt(),Zoe=O3(),Joe=Am(),Koe=S1(),WF=["xaxis","yaxis","zaxis"],Qoe=100*136/187;XF.exports=function(r,t,n){var a,o;function i(s,f){return YF.coerce(a,o,Zoe,s,f)}for(var l=0;l{"use strict";var $oe=ir(),joe=Xr(),ele=Cr(),rle=GF(),tle=ZF(),JF=V3(),nle=kf().getSubplotData,KF="gl3d";QF.exports=function(r,t,n){var a=t._basePlotModules.length>1;function o(i){if(!a){var l=$oe.validate(r[i],JF[i]);if(l)return r[i]}}rle(r,t,n,{type:KF,attributes:JF,handleDefaults:ale,fullLayout:t,font:t.font,fullData:n,getDfltFromLayout:o,autotypenumbersDflt:t.autotypenumbers,paper_bgcolor:t.paper_bgcolor,calendar:t.calendar})};function ale(e,r,t,n){for(var a=t("bgcolor"),o=joe.combine(a,n.paper_bgcolor),i=["up","center","eye"],l=0;l.999)&&(p="turntable")}else p="turntable";t("dragmode",p),t("hovermode",n.getDfltFromLayout("hovermode"))}});var il=de(Kn=>{"use strict";var ile=zn().overrideAll,ole=wl(),lle=qF(),sle=kf().getSubplotData,ule=ir(),fle=Fo(),Uu="gl3d",G3="scene";Kn.name=Uu;Kn.attr=G3;Kn.idRoot=G3;Kn.idRegex=Kn.attrRegex=ule.counterRegex("scene");Kn.attributes=BF();Kn.layoutAttributes=V3();Kn.baseLayoutAttrOverrides=ile({hoverlabel:ole.hoverlabel},"plot","nested");Kn.supplyLayoutDefaults=$F();Kn.plot=function(r){for(var t=r._fullLayout,n=r._fullData,a=t._subplots[Uu],o=0;o{"use strict";jF.exports={plot:oF(),attributes:N3(),markerSymbols:fd(),supplyDefaults:vF(),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:pF(),moduleType:"trace",name:"scatter3d",basePlotModule:il(),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}});var tN=de((upe,rN)=>{"use strict";rN.exports=eN()});var V0=de((fpe,iN)=>{"use strict";var nN=Xr(),cle=ei(),Y3=ro().axisHoverFormat,{hovertemplateAttrs:hle,templatefallbackAttrs:vle}=Ka(),aN=Sn(),W3=Tt().extendFlat,dle=zn().overrideAll;function X3(e){return{valType:"boolean",dflt:!1}}function Z3(e){return{show:{valType:"boolean",dflt:!1},start:{valType:"number",dflt:null,editType:"plot"},end:{valType:"number",dflt:null,editType:"plot"},size:{valType:"number",dflt:null,min:0,editType:"plot"},project:{x:X3("x"),y:X3("y"),z:X3("z")},color:{valType:"color",dflt:nN.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:nN.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var J3=iN.exports=dle(W3({z:{valType:"data_array"},x:{valType:"data_array"},y:{valType:"data_array"},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:hle(),hovertemplatefallback:vle(),xhoverformat:Y3("x"),yhoverformat:Y3("y"),zhoverformat:Y3("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},cle("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:Z3("x"),y:Z3("y"),z:Z3("z")},hidesurface:{valType:"boolean",dflt:!1},lightposition:{x:{valType:"number",min:-1e5,max:1e5,dflt:10},y:{valType:"number",min:-1e5,max:1e5,dflt:1e4},z:{valType:"number",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:"number",min:0,max:1,dflt:.8},diffuse:{valType:"number",min:0,max:1,dflt:.8},specular:{valType:"number",min:0,max:2,dflt:.05,description:"Represents the level that incident rays are reflected in a single direction, causing shine."},roughness:{valType:"number",min:0,max:1,dflt:.5,description:"Alters specular reflection; the rougher the surface, the wider and less contrasty the shine."},fresnel:{valType:"number",min:0,max:5,dflt:.2}},opacity:{valType:"number",min:0,max:1,dflt:1},opacityscale:{valType:"any",editType:"calc"},hoverinfo:W3({},aN.hoverinfo),showlegend:W3({},aN.showlegend,{dflt:!1})}),"calc","nested");J3.x.editType=J3.y.editType=J3.z.editType="calc+clearAxisTypes"});var Q3=de((cpe,sN)=>{"use strict";var ple=Cr(),oN=ir(),gle=Ei(),yle=V0(),K3=.1;function mle(e,r){for(var t=[],n=32,a=0;a{"use strict";var uN=zo();fN.exports=function(r,t){t.surfacecolor?uN(r,t,{vals:t.surfacecolor,containerStr:"",cLetter:"c"}):uN(r,t,{vals:t.z,containerStr:"",cLetter:"c"})}});var pN=de((vpe,dN)=>{"use strict";var _le=ir(),hN=.01,wle=[[-1,0],[1,0],[0,-1],[0,1]];function Mle(e){return .5-.25*Math.min(1,e*.5)}dN.exports=function(r,t){var n=1,a;for(vN(r,t),a=0;ahN;a++)n=vN(r,t,Mle(n));return n>hN&&_le.log("interp2d didn't converge quickly",n),r};function vN(e,r,t){var n=0,a,o,i,l,u,s,f,h,p,_,m,w,T;for(l=0;lw&&(n=Math.max(n,Math.abs(e[o][i]-m)/(T-w))))}return n}});var yN=de((dpe,gN)=>{"use strict";var Tle=ir().maxRowLength;gN.exports=function(r){var t=[],n={},a=[],o=r[0],i=[],l=[0,0,0],u=Tle(r),s,f,h,p,_,m,w,T;for(f=0;f=0;_--)p=a[_],f=p[0],h=p[1],m=((n[[f-1,h]]||l)[2]+(n[[f+1,h]]||l)[2]+(n[[f,h-1]]||l)[2]+(n[[f,h+1]]||l)[2])/20,m&&(w[p]=[f,h,m],a.splice(_,1),T=!0);if(!T)throw"findEmpties iterated with no new neighbors";for(p in w)n[p]=w[p],t.push(w[p])}return t.sort(function(y,k){return k[2]-y[2]})}});var MN=de((ppe,wN)=>{"use strict";var Ale=pn().gl_surface3d,Hu=pn().ndarray,kle=pn().ndarray_linear_interpolate.d2,Sle=pN(),Cle=yN(),G0=ir().isArrayOrTypedArray,Ele=al().parseColorScale,mN=po(),Lle=Li().extractOpts;function xN(e,r,t){this.scene=e,this.uid=t,this.surface=r,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var mi=xN.prototype;mi.getXat=function(e,r,t,n){var a=G0(this.data.x)?G0(this.data.x[0])?this.data.x[r][e]:this.data.x[e]:e;return t===void 0?a:n.d2l(a,0,t)};mi.getYat=function(e,r,t,n){var a=G0(this.data.y)?G0(this.data.y[0])?this.data.y[r][e]:this.data.y[r]:r;return t===void 0?a:n.d2l(a,0,t)};mi.getZat=function(e,r,t,n){var a=this.data.z[r][e];return a===null&&this.data.connectgaps&&this.data._interpolatedZ&&(a=this.data._interpolatedZ[r][e]),t===void 0?a:n.d2l(a,0,t)};mi.handlePick=function(e){if(e.object===this.surface){var r=(e.data.index[0]-1)/this.dataScaleX-1,t=(e.data.index[1]-1)/this.dataScaleY-1,n=Math.max(Math.min(Math.round(r),this.data.z[0].length-1),0),a=Math.max(Math.min(Math.round(t),this.data._ylength-1),0);e.index=[n,a],e.traceCoordinate=[this.getXat(n,a),this.getYat(n,a),this.getZat(n,a)],e.dataCoordinate=[this.getXat(n,a,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(n,a,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(n,a,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var o=0;o<3;o++){var i=e.dataCoordinate[o];i!=null&&(e.dataCoordinate[o]*=this.scene.dataScale[o])}var l=this.data.hovertext||this.data.text;return G0(l)&&l[a]&&l[a][n]!==void 0?e.textLabel=l[a][n]:l?e.textLabel=l:e.textLabel="",e.data.dataCoordinate=e.dataCoordinate.slice(),this.surface.highlight(e.data),this.scene.glplot.spikes.position=e.dataCoordinate,!0}};function Dle(e){var r=e[0].rgb,t=e[e.length-1].rgb;return r[0]===t[0]&&r[1]===t[1]&&r[2]===t[2]&&r[3]===t[3]}var Vu=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999];function Rle(e,r){if(e0){t=Vu[n];break}return t}function Ile(e,r){if(!(e<1||r<1)){for(var t=$3(e),n=$3(r),a=1,o=0;ogd;)n--,n/=Ple(n),n++,n1?a:1};function Nle(e,r,t){var n=t[8]+t[2]*r[0]+t[5]*r[1];return e[0]=(t[6]+t[0]*r[0]+t[3]*r[1])/n,e[1]=(t[7]+t[1]*r[0]+t[4]*r[1])/n,e}function zle(e,r,t){return qle(e,r,Nle,t),e}function qle(e,r,t,n){for(var a=[0,0],o=e.shape[0],i=e.shape[1],l=0;l0&&this.contourStart[n]!==null&&this.contourEnd[n]!==null&&this.contourEnd[n]>this.contourStart[n]))for(r[n]=!0,a=this.contourStart[n];ap&&(this.minValues[s]=p),this.maxValues[s]{"use strict";TN.exports={attributes:V0(),supplyDefaults:Q3().supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:cN(),plot:MN(),moduleType:"trace",name:"surface",basePlotModule:il(),categories:["gl3d","2dMap","showLegend"],meta:{}}});var SN=de((ype,kN)=>{"use strict";kN.exports=AN()});var Gu=de((mpe,EN)=>{"use strict";var Ule=ei(),j3=ro().axisHoverFormat,{hovertemplateAttrs:Hle,templatefallbackAttrs:Vle}=Ka(),ol=V0(),CN=Sn(),ll=Tt().extendFlat;EN.exports=ll({x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},i:{valType:"data_array",editType:"calc"},j:{valType:"data_array",editType:"calc"},k:{valType:"data_array",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:Hle({editType:"calc"}),hovertemplatefallback:Vle({editType:"calc"}),xhoverformat:j3("x"),yhoverformat:j3("y"),zhoverformat:j3("z"),delaunayaxis:{valType:"enumerated",values:["x","y","z"],dflt:"z",editType:"calc"},alphahull:{valType:"number",dflt:-1,editType:"calc"},intensity:{valType:"data_array",editType:"calc"},intensitymode:{valType:"enumerated",values:["vertex","cell"],dflt:"vertex",editType:"calc"},color:{valType:"color",editType:"calc"},vertexcolor:{valType:"data_array",editType:"calc"},facecolor:{valType:"data_array",editType:"calc"}},Ule("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:ol.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:ll({},ol.contours.x.show,{}),color:ol.contours.x.color,width:ol.contours.x.width,editType:"calc"},lightposition:{x:ll({},ol.lightposition.x,{dflt:1e5}),y:ll({},ol.lightposition.y,{dflt:1e5}),z:ll({},ol.lightposition.z,{dflt:0}),editType:"calc"},lighting:ll({vertexnormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-12,editType:"calc",description:"Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry."},facenormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-6,editType:"calc",description:"Epsilon for face normals calculation avoids math issues arising from degenerate geometry."},editType:"calc"},ol.lighting),hoverinfo:ll({},CN.hoverinfo,{editType:"calc"}),showlegend:ll({},CN.showlegend,{dflt:!1})})});var md=de((bpe,DN)=>{"use strict";var Gle=ei(),yd=ro().axisHoverFormat,{hovertemplateAttrs:Yle,templatefallbackAttrs:Wle}=Ka(),Y0=Gu(),LN=Sn(),e5=Tt().extendFlat,Xle=zn().overrideAll;function r5(e){return{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}}}function t5(e){return{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}}}var Yu=DN.exports=Xle(e5({x:{valType:"data_array"},y:{valType:"data_array"},z:{valType:"data_array"},value:{valType:"data_array"},isomin:{valType:"number"},isomax:{valType:"number"},surface:{show:{valType:"boolean",dflt:!0},count:{valType:"integer",dflt:2,min:1},fill:{valType:"number",min:0,max:1,dflt:1},pattern:{valType:"flaglist",flags:["A","B","C","D","E"],extras:["all","odd","even"],dflt:"all"}},spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:.15}},slices:{x:r5("x"),y:r5("y"),z:r5("z")},caps:{x:t5("x"),y:t5("y"),z:t5("z")},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:Yle(),hovertemplatefallback:Wle(),xhoverformat:yd("x"),yhoverformat:yd("y"),zhoverformat:yd("z"),valuehoverformat:yd("value",1),showlegend:e5({},LN.showlegend,{dflt:!1})},Gle("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:Y0.opacity,lightposition:Y0.lightposition,lighting:Y0.lighting,flatshading:Y0.flatshading,contour:Y0.contour,hoverinfo:e5({},LN.hoverinfo)}),"calc","nested");Yu.flatshading.dflt=!0;Yu.lighting.facenormalsepsilon.dflt=0;Yu.x.editType=Yu.y.editType=Yu.z.editType=Yu.value.editType="calc+clearAxisTypes"});var n5=de((xpe,PN)=>{"use strict";var Zle=ir(),Jle=Cr(),Kle=md(),Qle=Ei();function $le(e,r,t,n){function a(o,i){return Zle.coerce(e,r,Kle,o,i)}RN(e,r,t,n,a)}function RN(e,r,t,n,a){var o=a("isomin"),i=a("isomax");i!=null&&o!==void 0&&o!==null&&o>i&&(r.isomin=null,r.isomax=null);var l=a("x"),u=a("y"),s=a("z"),f=a("value");if(!l||!l.length||!u||!u.length||!s||!s.length||!f||!f.length){r.visible=!1;return}var h=Jle.getComponentMethod("calendars","handleTraceDefaults");h(e,r,["x","y","z"],n),a("valuehoverformat"),["x","y","z"].forEach(function(w){a(w+"hoverformat");var T="caps."+w,y=a(T+".show");y&&a(T+".fill");var k="slices."+w,S=a(k+".show");S&&(a(k+".fill"),a(k+".locations"))});var p=a("spaceframe.show");p&&a("spaceframe.fill");var _=a("surface.show");_&&(a("surface.count"),a("surface.fill"),a("surface.pattern"));var m=a("contour.show");m&&(a("contour.color"),a("contour.width")),["text","hovertext","hovertemplate","lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","opacity"].forEach(function(w){a(w)}),Qle(e,r,n,a,{prefix:"",cLetter:"c"}),r._length=null}PN.exports={supplyDefaults:$le,supplyIsoDefaults:RN}});var bd=de((_pe,FN)=>{"use strict";var i5=ir(),jle=zo();function ese(e,r){r._len=Math.min(r.u.length,r.v.length,r.w.length,r.x.length,r.y.length,r.z.length),r._u=Hi(r.u,r._len),r._v=Hi(r.v,r._len),r._w=Hi(r.w,r._len),r._x=Hi(r.x,r._len),r._y=Hi(r.y,r._len),r._z=Hi(r.z,r._len);var t=IN(r);r._gridFill=t.fill,r._Xs=t.Xs,r._Ys=t.Ys,r._Zs=t.Zs,r._len=t.len;var n=0,a,o,i;r.starts&&(a=Hi(r.starts.x||[]),o=Hi(r.starts.y||[]),i=Hi(r.starts.z||[]),n=Math.min(a.length,o.length,i.length)),r._startsX=a||[],r._startsY=o||[],r._startsZ=i||[];var l=0,u=1/0,s;for(s=0;s1&&(S=r[a-1],M=t[a-1],x=n[a-1]),o=0;oS?"-":"+")+"x"),m=m.replace("y",(b>M?"-":"+")+"y"),m=m.replace("z",(d>x?"-":"+")+"z");var v=function(){a=0,g=[],c=[],A=[]};(!a||a{"use strict";var rse=zo(),tse=bd().processGrid,xd=bd().filter;NN.exports=function(r,t){t._len=Math.min(t.x.length,t.y.length,t.z.length,t.value.length),t._x=xd(t.x,t._len),t._y=xd(t.y,t._len),t._z=xd(t.z,t._len),t._value=xd(t.value,t._len);var n=tse(t);t._gridFill=n.fill,t._Xs=n.Xs,t._Ys=n.Ys,t._Zs=n.Zs,t._len=n.len;for(var a=1/0,o=-1/0,i=0;i{"use strict";zN.exports=function(r,t,n,a){a=a||r.length;for(var o=new Array(a),i=0;i{"use strict";var nse=pn().gl_mesh3d,ase=al().parseColorScale,ise=ir().isArrayOrTypedArray,ose=po(),lse=Li().extractOpts,qN=Wu(),W0=function(e,r){for(var t=r.length-1;t>0;t--){var n=Math.min(r[t],r[t-1]),a=Math.max(r[t],r[t-1]);if(a>n&&n-1}function U(Te,me){return Te===null?me:Te}function X(Te,me,ye){v();var pe=[me],ce=[ye];if(I>=1)pe=[me],ce=[ye];else if(I>0){var be=P(me,ye);pe=be.xyzv,ce=be.abc}for(var Le=0;Le-1?ye[ze]:A($e,Ve,Be);Me>-1?qe[ze]=Me:qe[ze]=E($e,Ve,Be,U(Te,Ye))}R(qe[0],qe[1],qe[2])}}function $(Te,me,ye){var pe=function(ce,be,Le){X(Te,[me[ce],me[be],me[Le]],[ye[ce],ye[be],ye[Le]])};pe(0,1,2),pe(2,3,0)}function j(Te,me,ye){var pe=function(ce,be,Le){X(Te,[me[ce],me[be],me[Le]],[ye[ce],ye[be],ye[Le]])};pe(0,1,2),pe(3,0,1),pe(2,3,0),pe(1,2,3)}function Y(Te,me,ye,pe){var ce=Te[3];cepe&&(ce=pe);for(var be=(Te[3]-ce)/(Te[3]-me[3]+1e-9),Le=[],qe=0;qe<4;qe++)Le[qe]=(1-be)*Te[qe]+be*me[qe];return Le}function q(Te,me,ye){return Te>=me&&Te<=ye}function K(Te){var me=.001*(M-b);return Te>=b-me&&Te<=M+me}function ne(Te){for(var me=[],ye=0;ye<4;ye++){var pe=Te[ye];me.push([e._x[pe],e._y[pe],e._z[pe],e._value[pe]])}return me}var Q=3;function oe(Te,me,ye,pe,ce,be){be||(be=1),ye=[-1,-1,-1];var Le=!1,qe=[q(me[0][3],pe,ce),q(me[1][3],pe,ce),q(me[2][3],pe,ce)];if(!qe[0]&&!qe[1]&&!qe[2])return!1;var ze=function(Ve,Be,Ye){return K(Be[0][3])&&K(Be[1][3])&&K(Be[2][3])?(X(Ve,Be,Ye),!0):beqe?[k,be]:[be,S];Ce(me,ze[0],ze[1])}}var $e=[[Math.min(b,S),Math.max(b,S)],[Math.min(k,M),Math.max(k,M)]];["x","y","z"].forEach(function(Ve){for(var Be=[],Ye=0;Ye<$e.length;Ye++){var Me=0,Re=$e[Ye][0],Qe=$e[Ye][1],Ke=e.slices[Ve];if(Ke.show&&Ke.fill){L(Ke.fill);var ar=[],se=[],J=[];if(Ke.locations.length)for(var ae=0;ae0&&(se.push(De.id),Ve==="x"?J.push([De.distRatio,0,0]):Ve==="y"?J.push([0,De.distRatio,0]):J.push([0,0,De.distRatio]))}else Ve==="x"?ar=Ue(1,_-1):Ve==="y"?ar=Ue(1,m-1):ar=Ue(1,w-1);se.length>0&&(Ve==="x"?Be[Me]=Pe(Te,se,Re,Qe,J,Be[Me]):Ve==="y"?Be[Me]=Ee(Te,se,Re,Qe,J,Be[Me]):Be[Me]=Ne(Te,se,Re,Qe,J,Be[Me]),Me++),ar.length>0&&(Ve==="x"?Be[Me]=ve(Te,ar,Re,Qe,Be[Me]):Ve==="y"?Be[Me]=ke(Te,ar,Re,Qe,Be[Me]):Be[Me]=Se(Te,ar,Re,Qe,Be[Me]),Me++)}var He=e.caps[Ve];He.show&&He.fill&&(L(He.fill),Ve==="x"?Be[Me]=ve(Te,[0,_-1],Re,Qe,Be[Me]):Ve==="y"?Be[Me]=ke(Te,[0,m-1],Re,Qe,Be[Me]):Be[Me]=Se(Te,[0,w-1],Re,Qe,Be[Me]),Me++)}}),l===0&&D(),e._meshX=d,e._meshY=x,e._meshZ=g,e._meshIntensity=c,e._Xs=f,e._Ys=h,e._Zs=p}return we(),e}function use(e,r){var t=e.glplot.gl,n=nse({gl:t}),a=new ON(e,n,r.uid);return n._trace=a,a.update(r),e.glplot.add(n),a}UN.exports={findNearestOnAxis:W0,generateIsoMeshes:BN,createIsosurfaceTrace:use}});var VN=de((Ape,HN)=>{"use strict";HN.exports={attributes:md(),supplyDefaults:n5().supplyDefaults,calc:o5(),colorbar:{min:"cmin",max:"cmax"},plot:_d().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:il(),categories:["gl3d","showLegend"],meta:{}}});var YN=de((kpe,GN)=>{"use strict";GN.exports=VN()});var u5=de((Spe,XN)=>{"use strict";var fse=ei(),Yt=md(),cse=V0(),WN=Sn(),s5=Tt().extendFlat,hse=zn().overrideAll,wd=XN.exports=hse(s5({x:Yt.x,y:Yt.y,z:Yt.z,value:Yt.value,isomin:Yt.isomin,isomax:Yt.isomax,surface:Yt.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:Yt.slices,caps:Yt.caps,text:Yt.text,hovertext:Yt.hovertext,xhoverformat:Yt.xhoverformat,yhoverformat:Yt.yhoverformat,zhoverformat:Yt.zhoverformat,valuehoverformat:Yt.valuehoverformat,hovertemplate:Yt.hovertemplate,hovertemplatefallback:Yt.hovertemplatefallback},fse("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:Yt.colorbar,opacity:Yt.opacity,opacityscale:cse.opacityscale,lightposition:Yt.lightposition,lighting:Yt.lighting,flatshading:Yt.flatshading,contour:Yt.contour,hoverinfo:s5({},WN.hoverinfo),showlegend:s5({},WN.showlegend,{dflt:!1})}),"calc","nested");wd.x.editType=wd.y.editType=wd.z.editType=wd.value.editType="calc+clearAxisTypes"});var JN=de((Cpe,ZN)=>{"use strict";var vse=ir(),dse=u5(),pse=n5().supplyIsoDefaults,gse=Q3().opacityscaleDefaults;ZN.exports=function(r,t,n,a){function o(i,l){return vse.coerce(r,t,dse,i,l)}pse(r,t,n,a,o),gse(r,t,a,o)}});var jN=de((Epe,$N)=>{"use strict";var yse=pn().gl_mesh3d,mse=al().parseColorScale,bse=ir().isArrayOrTypedArray,xse=po(),_se=Li().extractOpts,KN=Wu(),f5=_d().findNearestOnAxis,wse=_d().generateIsoMeshes;function QN(e,r,t){this.scene=e,this.uid=t,this.mesh=r,this.name="",this.data=null,this.showContour=!1}var c5=QN.prototype;c5.handlePick=function(e){if(e.object===this.mesh){var r=e.data.index,t=this.data._meshX[r],n=this.data._meshY[r],a=this.data._meshZ[r],o=this.data._Ys.length,i=this.data._Zs.length,l=f5(t,this.data._Xs).id,u=f5(n,this.data._Ys).id,s=f5(a,this.data._Zs).id,f=e.index=s+i*u+i*o*l;e.traceCoordinate=[this.data._meshX[f],this.data._meshY[f],this.data._meshZ[f],this.data._value[f]];var h=this.data.hovertext||this.data.text;return bse(h)&&h[f]!==void 0?e.textLabel=h[f]:h&&(e.textLabel=h),!0}};c5.update=function(e){var r=this.scene,t=r.fullSceneLayout;this.data=wse(e);function n(u,s,f,h){return s.map(function(p){return u.d2l(p,0,h)*f})}var a=KN(n(t.xaxis,e._meshX,r.dataScale[0],e.xcalendar),n(t.yaxis,e._meshY,r.dataScale[1],e.ycalendar),n(t.zaxis,e._meshZ,r.dataScale[2],e.zcalendar)),o=KN(e._meshI,e._meshJ,e._meshK),i={positions:a,cells:o,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,opacityscale:e.opacityscale,contourEnable:e.contour.show,contourColor:xse(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading},l=_se(e);i.vertexIntensity=e._meshIntensity,i.vertexIntensityBounds=[l.min,l.max],i.colormap=mse(e),this.mesh.update(i)};c5.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function Mse(e,r){var t=e.glplot.gl,n=yse({gl:t}),a=new QN(e,n,r.uid);return n._trace=a,a.update(r),e.glplot.add(n),a}$N.exports=Mse});var rz=de((Lpe,ez)=>{"use strict";ez.exports={attributes:u5(),supplyDefaults:JN(),calc:o5(),colorbar:{min:"cmin",max:"cmax"},plot:jN(),moduleType:"trace",name:"volume",basePlotModule:il(),categories:["gl3d","showLegend"],meta:{}}});var nz=de((Dpe,tz)=>{"use strict";tz.exports=rz()});var oz=de((Rpe,iz)=>{"use strict";var Tse=Cr(),az=ir(),Ase=Ei(),kse=Gu();iz.exports=function(r,t,n,a){function o(f,h){return az.coerce(r,t,kse,f,h)}function i(f){var h=f.map(function(p){var _=o(p);return _&&az.isArrayOrTypedArray(_)?_:null});return h.every(function(p){return p&&p.length===h[0].length})&&h}var l=i(["x","y","z"]);if(!l){t.visible=!1;return}if(i(["i","j","k"]),t.i&&(!t.j||!t.k)||t.j&&(!t.k||!t.i)||t.k&&(!t.i||!t.j)){t.visible=!1;return}var u=Tse.getComponentMethod("calendars","handleTraceDefaults");u(r,t,["x","y","z"],a),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach(function(f){o(f)});var s=o("contour.show");s&&(o("contour.color"),o("contour.width")),"intensity"in r?(o("intensity"),o("intensitymode"),Ase(r,t,a,o,{prefix:"",cLetter:"c"})):(t.showscale=!1,"facecolor"in r?o("facecolor"):"vertexcolor"in r?o("vertexcolor"):o("color",n)),o("text"),o("hovertext"),o("hovertemplate"),o("hovertemplatefallback"),o("xhoverformat"),o("yhoverformat"),o("zhoverformat"),t._length=null}});var sz=de((Ppe,lz)=>{"use strict";var Sse=zo();lz.exports=function(r,t){t.intensity&&Sse(r,t,{vals:t.intensity,containerStr:"",cLetter:"c"})}});var vz=de((Ipe,hz)=>{"use strict";var Cse=pn().gl_mesh3d,Ese=pn().delaunay_triangulate,Lse=pn().alpha_shape,Dse=pn().convex_hull,Rse=al().parseColorScale,Pse=ir().isArrayOrTypedArray,p5=po(),Ise=Li().extractOpts,uz=Wu();function cz(e,r,t){this.scene=e,this.uid=t,this.mesh=r,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var g5=cz.prototype;g5.handlePick=function(e){if(e.object===this.mesh){var r=e.index=e.data.index;e.data._cellCenter?e.traceCoordinate=e.data.dataCoordinate:e.traceCoordinate=[this.data.x[r],this.data.y[r],this.data.z[r]];var t=this.data.hovertext||this.data.text;return Pse(t)&&t[r]!==void 0?e.textLabel=t[r]:t&&(e.textLabel=t),!0}};function fz(e){for(var r=[],t=e.length,n=0;n=r-.5)return!1;return!0}g5.update=function(e){var r=this.scene,t=r.fullSceneLayout;this.data=e;var n=e.x.length,a=uz(h5(t.xaxis,e.x,r.dataScale[0],e.xcalendar),h5(t.yaxis,e.y,r.dataScale[1],e.ycalendar),h5(t.zaxis,e.z,r.dataScale[2],e.zcalendar)),o;if(e.i&&e.j&&e.k){if(e.i.length!==e.j.length||e.j.length!==e.k.length||!d5(e.i,n)||!d5(e.j,n)||!d5(e.k,n))return;o=uz(v5(e.i),v5(e.j),v5(e.k))}else e.alphahull===0?o=Dse(a):e.alphahull>0?o=Lse(e.alphahull,a):o=Fse(e.delaunayaxis,a);var i={positions:a,cells:o,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,contourEnable:e.contour.show,contourColor:p5(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading};if(e.intensity){var l=Ise(e);this.color="#fff";var u=e.intensitymode;i[u+"Intensity"]=e.intensity,i[u+"IntensityBounds"]=[l.min,l.max],i.colormap=Rse(e)}else e.vertexcolor?(this.color=e.vertexcolor[0],i.vertexColors=fz(e.vertexcolor)):e.facecolor?(this.color=e.facecolor[0],i.cellColors=fz(e.facecolor)):(this.color=e.color,i.meshColor=p5(e.color));this.mesh.update(i)};g5.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function Nse(e,r){var t=e.glplot.gl,n=Cse({gl:t}),a=new cz(e,n,r.uid);return n._trace=a,a.update(r),e.glplot.add(n),a}hz.exports=Nse});var pz=de((Fpe,dz)=>{"use strict";dz.exports={attributes:Gu(),supplyDefaults:oz(),calc:sz(),colorbar:{min:"cmin",max:"cmax"},plot:vz(),moduleType:"trace",name:"mesh3d",basePlotModule:il(),categories:["gl3d","showLegend"],meta:{}}});var yz=de((Npe,gz)=>{"use strict";gz.exports=pz()});var m5=de((zpe,bz)=>{"use strict";var zse=ei(),Xu=ro().axisHoverFormat,{hovertemplateAttrs:qse,templatefallbackAttrs:Ose}=Ka(),Bse=Gu(),mz=Sn(),y5=Tt().extendFlat,Md={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},sizemode:{valType:"enumerated",values:["scaled","absolute","raw"],editType:"calc",dflt:"scaled"},sizeref:{valType:"number",editType:"calc",min:0},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:qse({editType:"calc"},{keys:["norm"]}),hovertemplatefallback:Ose({editType:"calc"}),uhoverformat:Xu("u",1),vhoverformat:Xu("v",1),whoverformat:Xu("w",1),xhoverformat:Xu("x"),yhoverformat:Xu("y"),zhoverformat:Xu("z"),showlegend:y5({},mz.showlegend,{dflt:!1})};y5(Md,zse("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var Use=["opacity","lightposition","lighting"];Use.forEach(function(e){Md[e]=Bse[e]});Md.hoverinfo=y5({},mz.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"});bz.exports=Md});var _z=de((qpe,xz)=>{"use strict";var Hse=ir(),Vse=Ei(),Gse=m5();xz.exports=function(r,t,n,a){function o(_,m){return Hse.coerce(r,t,Gse,_,m)}var i=o("u"),l=o("v"),u=o("w"),s=o("x"),f=o("y"),h=o("z");if(!i||!i.length||!l||!l.length||!u||!u.length||!s||!s.length||!f||!f.length||!h||!h.length){t.visible=!1;return}var p=o("sizemode");o("sizeref",p==="raw"?1:.5),o("anchor"),o("lighting.ambient"),o("lighting.diffuse"),o("lighting.specular"),o("lighting.roughness"),o("lighting.fresnel"),o("lightposition.x"),o("lightposition.y"),o("lightposition.z"),Vse(r,t,a,o,{prefix:"",cLetter:"c"}),o("text"),o("hovertext"),o("hovertemplate"),o("hovertemplatefallback"),o("uhoverformat"),o("vhoverformat"),o("whoverformat"),o("xhoverformat"),o("yhoverformat"),o("zhoverformat"),t._length=null}});var Mz=de((Ope,wz)=>{"use strict";var Yse=zo();wz.exports=function(r,t){for(var n=t.u,a=t.v,o=t.w,i=Math.min(t.x.length,t.y.length,t.z.length,n.length,a.length,o.length),l=-1/0,u=1/0,s=0;s{"use strict";var Wse=pn().gl_cone3d,Xse=pn().gl_cone3d.createConeMesh,Zse=ir().simpleMap,Jse=al().parseColorScale,Kse=Li().extractOpts,Qse=ir().isArrayOrTypedArray,Tz=Wu();function Az(e,r){this.scene=e,this.uid=r,this.mesh=null,this.data=null}var b5=Az.prototype;b5.handlePick=function(e){if(e.object===this.mesh){var r=e.index=e.data.index,t=this.data.x[r],n=this.data.y[r],a=this.data.z[r],o=this.data.u[r],i=this.data.v[r],l=this.data.w[r];e.traceCoordinate=[t,n,a,o,i,l,Math.sqrt(o*o+i*i+l*l)];var u=this.data.hovertext||this.data.text;return Qse(u)&&u[r]!==void 0?e.textLabel=u[r]:u&&(e.textLabel=u),!0}};var $se={xaxis:0,yaxis:1,zaxis:2},jse={tip:1,tail:0,cm:.25,center:.5},eue={tip:1,tail:1,cm:.75,center:.5};function kz(e,r){var t=e.fullSceneLayout,n=e.dataScale,a={};function o(f,h){var p=t[h],_=n[$se[h]];return Zse(f,function(m){return p.d2l(m)*_})}a.vectors=Tz(o(r.u,"xaxis"),o(r.v,"yaxis"),o(r.w,"zaxis"),r._len),a.positions=Tz(o(r.x,"xaxis"),o(r.y,"yaxis"),o(r.z,"zaxis"),r._len);var i=Kse(r);a.colormap=Jse(r),a.vertexIntensityBounds=[i.min/r._normMax,i.max/r._normMax],a.coneOffset=jse[r.anchor];var l=r.sizemode;l==="scaled"?a.coneSize=r.sizeref||.5:l==="absolute"?a.coneSize=r.sizeref&&r._normMax?r.sizeref/r._normMax:.5:l==="raw"&&(a.coneSize=r.sizeref),a.coneSizemode=l;var u=Wse(a),s=r.lightposition;return u.lightPosition=[s.x,s.y,s.z],u.ambient=r.lighting.ambient,u.diffuse=r.lighting.diffuse,u.specular=r.lighting.specular,u.roughness=r.lighting.roughness,u.fresnel=r.lighting.fresnel,u.opacity=r.opacity,r._pad=eue[r.anchor]*u.vectorScale*u.coneScale*r._normMax,u}b5.update=function(e){this.data=e;var r=kz(this.scene,e);this.mesh.update(r)};b5.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function rue(e,r){var t=e.glplot.gl,n=kz(e,r),a=Xse(t,n),o=new Az(e,r.uid);return o.mesh=a,o.data=r,a._trace=o,e.glplot.add(a),o}Sz.exports=rue});var Lz=de((Upe,Ez)=>{"use strict";Ez.exports={moduleType:"trace",name:"cone",basePlotModule:il(),categories:["gl3d","showLegend"],attributes:m5(),supplyDefaults:_z(),colorbar:{min:"cmin",max:"cmax"},calc:Mz(),plot:Cz(),eventData:function(e,r){return e.norm=r.traceCoordinate[6],e},meta:{}}});var Rz=de((Hpe,Dz)=>{"use strict";Dz.exports=Lz()});var _5=de((Vpe,Iz)=>{"use strict";var tue=ei(),Zu=ro().axisHoverFormat,{hovertemplateAttrs:nue,templatefallbackAttrs:aue}=Ka(),iue=Gu(),Pz=Sn(),x5=Tt().extendFlat,Td={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},starts:{x:{valType:"data_array",editType:"calc"},y:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},editType:"calc"},maxdisplayed:{valType:"integer",min:0,dflt:1e3,editType:"calc"},sizeref:{valType:"number",editType:"calc",min:0,dflt:1},text:{valType:"string",dflt:"",editType:"calc"},hovertext:{valType:"string",dflt:"",editType:"calc"},hovertemplate:nue({editType:"calc"},{keys:["tubex","tubey","tubez","tubeu","tubev","tubew","norm","divergence"]}),hovertemplatefallback:aue({editType:"calc"}),uhoverformat:Zu("u",1),vhoverformat:Zu("v",1),whoverformat:Zu("w",1),xhoverformat:Zu("x"),yhoverformat:Zu("y"),zhoverformat:Zu("z"),showlegend:x5({},Pz.showlegend,{dflt:!1})};x5(Td,tue("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var oue=["opacity","lightposition","lighting"];oue.forEach(function(e){Td[e]=iue[e]});Td.hoverinfo=x5({},Pz.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","divergence","text","name"],dflt:"x+y+z+norm+text+name"});Iz.exports=Td});var Nz=de((Gpe,Fz)=>{"use strict";var lue=ir(),sue=Ei(),uue=_5();Fz.exports=function(r,t,n,a){function o(p,_){return lue.coerce(r,t,uue,p,_)}var i=o("u"),l=o("v"),u=o("w"),s=o("x"),f=o("y"),h=o("z");if(!i||!i.length||!l||!l.length||!u||!u.length||!s||!s.length||!f||!f.length||!h||!h.length){t.visible=!1;return}o("starts.x"),o("starts.y"),o("starts.z"),o("maxdisplayed"),o("sizeref"),o("lighting.ambient"),o("lighting.diffuse"),o("lighting.specular"),o("lighting.roughness"),o("lighting.fresnel"),o("lightposition.x"),o("lightposition.y"),o("lightposition.z"),sue(r,t,a,o,{prefix:"",cLetter:"c"}),o("text"),o("hovertext"),o("hovertemplate"),o("hovertemplatefallback"),o("uhoverformat"),o("vhoverformat"),o("whoverformat"),o("xhoverformat"),o("yhoverformat"),o("zhoverformat"),t._length=null}});var Gz=de((Ype,Vz)=>{"use strict";var Oz=pn().gl_streamtube3d,fue=Oz.createTubeMesh,cue=ir(),hue=al().parseColorScale,vue=Li().extractOpts,zz=Wu(),Bz={xaxis:0,yaxis:1,zaxis:2};function Uz(e,r){this.scene=e,this.uid=r,this.mesh=null,this.data=null}var M5=Uz.prototype;M5.handlePick=function(e){var r=this.scene.fullSceneLayout,t=this.scene.dataScale;function n(i,l){var u=r[l],s=t[Bz[l]];return u.l2c(i)/s}if(e.object===this.mesh){var a=e.data.position,o=e.data.velocity;return e.traceCoordinate=[n(a[0],"xaxis"),n(a[1],"yaxis"),n(a[2],"zaxis"),n(o[0],"xaxis"),n(o[1],"yaxis"),n(o[2],"zaxis"),e.data.intensity*this.data._normMax,e.data.divergence],e.textLabel=this.data.hovertext||this.data.text,!0}};function qz(e){var r=e.length,t;return r>2?t=e.slice(1,r-1):r===2?t=[(e[0]+e[1])/2]:t=e,t}function w5(e){var r=e.length;return r===1?[.5,.5]:[e[1]-e[0],e[r-1]-e[r-2]]}function Hz(e,r){var t=e.fullSceneLayout,n=e.dataScale,a=r._len,o={};function i(D,E){var R=t[E],N=n[Bz[E]];return cue.simpleMap(D,function(F){return R.d2l(F)*N})}if(o.vectors=zz(i(r._u,"xaxis"),i(r._v,"yaxis"),i(r._w,"zaxis"),a),!a)return{positions:[],cells:[]};var l=i(r._Xs,"xaxis"),u=i(r._Ys,"yaxis"),s=i(r._Zs,"zaxis");o.meshgrid=[l,u,s],o.gridFill=r._gridFill;var f=r._slen;if(f)o.startingPositions=zz(i(r._startsX,"xaxis"),i(r._startsY,"yaxis"),i(r._startsZ,"zaxis"));else{for(var h=u[0],p=qz(l),_=qz(s),m=new Array(p.length*_.length),w=0,T=0;T{"use strict";Yz.exports={moduleType:"trace",name:"streamtube",basePlotModule:il(),categories:["gl3d","showLegend"],attributes:_5(),supplyDefaults:Nz(),colorbar:{min:"cmin",max:"cmax"},calc:bd().calc,plot:Gz(),eventData:function(e,r){return e.tubex=e.x,e.tubey=e.y,e.tubez=e.z,e.tubeu=r.traceCoordinate[3],e.tubev=r.traceCoordinate[4],e.tubew=r.traceCoordinate[5],e.norm=r.traceCoordinate[6],e.divergence=r.traceCoordinate[7],delete e.x,delete e.y,delete e.z,e},meta:{}}});var Zz=de((Xpe,Xz)=>{"use strict";Xz.exports=Wz()});var Rn=de((Zpe,Kz)=>{"use strict";var Jz=Object.getOwnPropertySymbols,pue=Object.prototype.hasOwnProperty,gue=Object.prototype.propertyIsEnumerable;function yue(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function mue(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var r={},t=0;t<10;t++)r["_"+String.fromCharCode(t)]=t;var n=Object.getOwnPropertyNames(r).map(function(o){return r[o]});if(n.join("")!=="0123456789")return!1;var a={};return"abcdefghijklmnopqrst".split("").forEach(function(o){a[o]=o}),Object.keys(Object.assign({},a)).join("")==="abcdefghijklmnopqrst"}catch(o){return!1}}Kz.exports=mue()?Object.assign:function(e,r){for(var t,n=yue(e),a,o=1;o{var kd=Rn();function Qz(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}kd(Qz.prototype,{instance:function(e,r){e=(e||"gregorian").toLowerCase(),r=r||"";var t=this._localCals[e+"-"+r];if(!t&&this.calendars[e]&&(t=new this.calendars[e](r),this._localCals[e+"-"+r]=t),!t)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return t},newDate:function(e,r,t,n,a){return n=(e!=null&&e.year?e.calendar():typeof n=="string"?this.instance(n,a):n)||this.instance(),n.newDate(e,r,t)},substituteDigits:function(e){return function(r){return(r+"").replace(/[0-9]/g,function(t){return e[t]})}},substituteChineseDigits:function(e,r){return function(t){for(var n="",a=0;t>0;){var o=t%10;n=(o===0?"":e[o]+r[a])+n,a++,t=Math.floor(t/10)}return n.indexOf(e[1]+r[1])===0&&(n=n.substr(1)),n||e[0]}}});function T5(e,r,t,n){if(this._calendar=e,this._year=r,this._month=t,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function Ad(e,r){return e=""+e,"000000".substring(0,r-e.length)+e}kd(T5.prototype,{newDate:function(e,r,t){return this._calendar.newDate(e==null?this:e,r,t)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,r,t){if(!this._calendar.isValid(e,r,t))throw(Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=r,this._day=t,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,r){return this._calendar.add(this,e,r)},set:function(e,r){return this._calendar.set(this,e,r)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(Yr.local.differentCalendars||Yr.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var r=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return r===0?0:r<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+Ad(Math.abs(this.year()),4)+"-"+Ad(this.month(),2)+"-"+Ad(this.day(),2)}});function A5(){this.shortYearCutoff="+10"}kd(A5.prototype,{_validateLevel:0,newDate:function(e,r,t){return e==null?this.today():(e.year&&(this._validate(e,r,t,Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate),t=e.day(),r=e.month(),e=e.year()),new T5(this,e,r,t))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var r=this._validate(e,this.minMonth,this.minDay,Yr.local.invalidYear||Yr.regionalOptions[""].invalidYear);return r.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Yr.local.invalidYear||Yr.regionalOptions[""].invalidYear);return(r.year()<0?"-":"")+Ad(Math.abs(r.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Yr.local.invalidYear||Yr.regionalOptions[""].invalidYear),12},monthOfYear:function(e,r){var t=this._validate(e,r,this.minDay,Yr.local.invalidMonth||Yr.regionalOptions[""].invalidMonth);return(t.month()+this.monthsInYear(t)-this.firstMonth)%this.monthsInYear(t)+this.minMonth},fromMonthOfYear:function(e,r){var t=(r+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,t,this.minDay,Yr.local.invalidMonth||Yr.regionalOptions[""].invalidMonth),t},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Yr.local.invalidYear||Yr.regionalOptions[""].invalidYear);return this.leapYear(r)?366:365},dayOfYear:function(e,r,t){var n=this._validate(e,r,t,Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,r,t){var n=this._validate(e,r,t,Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(e,r,t){return this._validate(e,r,t,Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate),{}},add:function(e,r,t){return this._validate(e,this.minMonth,this.minDay,Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,r,t),r,t)},_add:function(e,r,t){if(this._validateLevel++,t==="d"||t==="w"){var n=e.toJD()+r*(t==="w"?this.daysInWeek():1),a=e.calendar().fromJD(n);return this._validateLevel--,[a.year(),a.month(),a.day()]}try{var o=e.year()+(t==="y"?r:0),i=e.monthOfYear()+(t==="m"?r:0),a=e.day(),l=function(f){for(;ih-1+f.minMonth;)o++,i-=h,h=f.monthsInYear(o)};t==="y"?(e.month()!==this.fromMonthOfYear(o,i)&&(i=this.newDate(o,e.month(),this.minDay).monthOfYear()),i=Math.min(i,this.monthsInYear(o)),a=Math.min(a,this.daysInMonth(o,this.fromMonthOfYear(o,i)))):t==="m"&&(l(this),a=Math.min(a,this.daysInMonth(o,this.fromMonthOfYear(o,i))));var u=[o,this.fromMonthOfYear(o,i),a];return this._validateLevel--,u}catch(s){throw this._validateLevel--,s}},_correctAdd:function(e,r,t,n){if(!this.hasYearZero&&(n==="y"||n==="m")&&(r[0]===0||e.year()>0!=r[0]>0)){var a={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],o=t<0?-1:1;r=this._add(e,t*a[0]+o*a[1],a[2])}return e.date(r[0],r[1],r[2])},set:function(e,r,t){this._validate(e,this.minMonth,this.minDay,Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate);var n=t==="y"?r:e.year(),a=t==="m"?r:e.month(),o=t==="d"?r:e.day();return(t==="y"||t==="m")&&(o=Math.min(o,this.daysInMonth(n,a))),e.date(n,a,o)},isValid:function(e,r,t){this._validateLevel++;var n=this.hasYearZero||e!==0;if(n){var a=this.newDate(e,r,this.minDay);n=r>=this.minMonth&&r-this.minMonth=this.minDay&&t-this.minDay13.5?13:1),s=a-(u>2.5?4716:4715);return s<=0&&s--,this.newDate(s,u,l)},toJSDate:function(e,r,t){var n=this._validate(e,r,t,Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate),a=new Date(n.year(),n.month()-1,n.day());return a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0),a.setHours(a.getHours()>12?a.getHours()+2:0),a},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var Yr=$z.exports=new Qz;Yr.cdate=T5;Yr.baseCalendar=A5;Yr.calendars.gregorian=k5});var jz=de(()=>{var S5=Rn(),gn=Pn();S5(gn.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});gn.local=gn.regionalOptions[""];S5(gn.cdate.prototype,{formatDate:function(e,r){return typeof e!="string"&&(r=e,e=""),this._calendar.formatDate(e||"",this,r)}});S5(gn.baseCalendar.prototype,{UNIX_EPOCH:gn.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:gn.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,r,t){if(typeof e!="string"&&(t=r,r=e,e=""),!r)return"";if(r.calendar()!==this)throw gn.local.invalidFormat||gn.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,t=t||{};for(var n=t.dayNamesShort||this.local.dayNamesShort,a=t.dayNames||this.local.dayNames,o=t.monthNumbers||this.local.monthNumbers,i=t.monthNamesShort||this.local.monthNamesShort,l=t.monthNames||this.local.monthNames,u=t.calculateWeek||this.local.calculateWeek,s=function(b,M){for(var d=1;S+d1},f=function(b,M,d,x){var g=""+M;if(s(b,x))for(;g.length1},k=function(D,E){var R=y(D,E),N=[2,3,R?4:2,R?4:2,10,11,20]["oyYJ@!".indexOf(D)+1],F=new RegExp("^-?\\d{1,"+N+"}"),I=r.substring(g).match(F);if(!I)throw(gn.local.missingNumberAt||gn.regionalOptions[""].missingNumberAt).replace(/\{0\}/,g);return g+=I[0].length,parseInt(I[0],10)},S=this,b=function(){if(typeof l=="function"){y("m");var D=l.call(S,r.substring(g));return g+=D.length,D}return k("m")},M=function(D,E,R,N){for(var F=y(D,N)?R:E,I=0;I-1){p=1,_=m;for(var v=this.daysInMonth(h,p);_>v;v=this.daysInMonth(h,p))p++,_-=v}return f>-1?this.fromJD(f):this.newDate(h,p,_)},determineDate:function(e,r,t,n,a){t&&typeof t!="object"&&(a=n,n=t,t=null),typeof n!="string"&&(a=n,n="");var o=this,i=function(l){try{return o.parseDate(n,l,a)}catch(h){}l=l.toLowerCase();for(var u=(l.match(/^c/)&&t?t.newDate():null)||o.today(),s=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,f=s.exec(l);f;)u.add(parseInt(f[1],10),f[2]||"d"),f=s.exec(l);return u};return r=r?r.newDate():null,e=e==null?r:typeof e=="string"?i(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?r:o.today().add(e,"d"):o.newDate(e),e}})});var eq=de(()=>{var sl=Pn(),bue=Rn(),C5=sl.instance();function Sd(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Sd.prototype=new sl.baseCalendar;bue(Sd.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,r){if(typeof e=="string"){var t=e.match(_ue);return t?t[0]:""}var n=this._validateYear(e),a=e.month(),o=""+this.toChineseMonth(n,a);return r&&o.length<2&&(o="0"+o),this.isIntercalaryMonth(n,a)&&(o+="i"),o},monthNames:function(e){if(typeof e=="string"){var r=e.match(wue);return r?r[0]:""}var t=this._validateYear(e),n=e.month(),a=this.toChineseMonth(t,n),o=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][a-1];return this.isIntercalaryMonth(t,n)&&(o="\u95F0"+o),o},monthNamesShort:function(e){if(typeof e=="string"){var r=e.match(Mue);return r?r[0]:""}var t=this._validateYear(e),n=e.month(),a=this.toChineseMonth(t,n),o=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][a-1];return this.isIntercalaryMonth(t,n)&&(o="\u95F0"+o),o},parseMonth:function(e,r){e=this._validateYear(e);var t=parseInt(r),n;if(isNaN(t))r[0]==="\u95F0"&&(n=!0,r=r.substring(1)),r[r.length-1]==="\u6708"&&(r=r.substring(0,r.length-1)),t=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(r);else{var a=r[r.length-1];n=a==="i"||a==="I"}var o=this.toMonthIndex(e,t,n);return o},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,r){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw r.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,r,t){var n=this.intercalaryMonth(e),a=t&&r!==n;if(a||r<1||r>12)throw sl.local.invalidMonth.replace(/\{0\}/,this.local.name);var o;return n?!t&&r<=n?o=r-1:o=r:o=r-1,o},toChineseMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e),n=t?12:11;if(r<0||r>n)throw sl.local.invalidMonth.replace(/\{0\}/,this.local.name);var a;return t?r>13;return t},isIntercalaryMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e);return!!t&&t===r},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,r,t){var n=this._validateYear(e,sl.local.invalidyear),a=fl[n-fl[0]],o=a>>9&4095,i=a>>5&15,l=a&31,u;u=C5.newDate(o,i,l),u.add(4-(u.dayOfWeek()||7),"d");var s=this.toJD(e,r,t)-u.toJD();return 1+Math.floor(s/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,r){e.year&&(r=e.month(),e=e.year()),e=this._validateYear(e);var t=ul[e-ul[0]],n=t>>13,a=n?12:11;if(r>a)throw sl.local.invalidMonth.replace(/\{0\}/,this.local.name);var o=t&1<<12-r?30:29;return o},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,o,t,sl.local.invalidDate);e=this._validateYear(n.year()),r=n.month(),t=n.day();var a=this.isIntercalaryMonth(e,r),o=this.toChineseMonth(e,r),i=Aue(e,o,t,a);return C5.toJD(i.year,i.month,i.day)},fromJD:function(e){var r=C5.fromJD(e),t=Tue(r.year(),r.month(),r.day()),n=this.toMonthIndex(t.year,t.month,t.isIntercalary);return this.newDate(t.year,n,t.day)},fromString:function(e){var r=e.match(xue),t=this._validateYear(+r[1]),n=+r[2],a=!!r[3],o=this.toMonthIndex(t,n,a),i=+r[4];return this.newDate(t,o,i)},add:function(e,r,t){var n=e.year(),a=e.month(),o=this.isIntercalaryMonth(n,a),i=this.toChineseMonth(n,a),l=Object.getPrototypeOf(Sd.prototype).add.call(this,e,r,t);if(t==="y"){var u=l.year(),s=l.month(),f=this.isIntercalaryMonth(u,i),h=o&&f?this.toMonthIndex(u,i,!0):this.toMonthIndex(u,i,!1);h!==s&&l.month(h)}return l}});var xue=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,_ue=/^\d?\d[iI]?/m,wue=/^闰?十?[一二三四五六七八九]?月/m,Mue=/^闰?十?[一二三四五六七八九]?/m;sl.calendars.chinese=Sd;var ul=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],fl=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function Tue(e,r,t,n){var a,o;if(typeof e=="object")a=e,o=r||{};else{var i=typeof e=="number"&&e>=1888&&e<=2111;if(!i)throw new Error("Solar year outside range 1888-2111");var l=typeof r=="number"&&r>=1&&r<=12;if(!l)throw new Error("Solar month outside range 1 - 12");var u=typeof t=="number"&&t>=1&&t<=31;if(!u)throw new Error("Solar day outside range 1 - 31");a={year:e,month:r,day:t},o=n||{}}var s=fl[a.year-fl[0]],f=a.year<<9|a.month<<5|a.day;o.year=f>=s?a.year:a.year-1,s=fl[o.year-fl[0]];var h=s>>9&4095,p=s>>5&15,_=s&31,m,w=new Date(h,p-1,_),T=new Date(a.year,a.month-1,a.day);m=Math.round((T-w)/(24*3600*1e3));var y=ul[o.year-ul[0]],k;for(k=0;k<13;k++){var S=y&1<<12-k?30:29;if(m>13;return!b||k=1888&&e<=2111;if(!l)throw new Error("Lunar year outside range 1888-2111");var u=typeof r=="number"&&r>=1&&r<=12;if(!u)throw new Error("Lunar month outside range 1 - 12");var s=typeof t=="number"&&t>=1&&t<=30;if(!s)throw new Error("Lunar day outside range 1 - 30");var f;typeof n=="object"?(f=!1,o=n):(f=!!n,o=a||{}),i={year:e,month:r,day:t,isIntercalary:f}}var h;h=i.day-1;var p=ul[i.year-ul[0]],_=p>>13,m;_&&(i.month>_||i.isIntercalary)?m=i.month:m=i.month-1;for(var w=0;w>9&4095,S=y>>5&15,b=y&31,M=new Date(k,S-1,b+h);return o.year=M.getFullYear(),o.month=1+M.getMonth(),o.day=M.getDate(),o}});var rq=de(()=>{var vs=Pn(),kue=Rn();function E5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}E5.prototype=new vs.baseCalendar;kue(E5.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,vs.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,vs.local.invalidYear||vs.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,vs.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,r,t,vs.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var n=Math.floor(r/30)+1,a=r-(n-1)*30+1;return this.newDate(t,n,a)}});vs.calendars.coptic=E5});var tq=de(()=>{var mo=Pn(),Sue=Rn();function L5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}L5.prototype=new mo.baseCalendar;Sue(L5.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,mo.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,mo.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,mo.local.invalidYear),400},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/8)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,mo.local.invalidMonth);return this.daysPerMonth[t.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,r,t){var n=this._validate(e,r,t,mo.local.invalidDate);return(n.day()+1)%8},weekDay:function(e,r,t){var n=this.dayOfWeek(e,r,t);return n>=2&&n<=6},extraInfo:function(e,r,t){var n=this._validate(e,r,t,mo.local.invalidDate);return{century:Cue[Math.floor((n.year()-1)/100)+1]||""}},toJD:function(e,r,t){var n=this._validate(e,r,t,mo.local.invalidDate);return e=n.year()+(n.year()<0?1:0),r=n.month(),t=n.day(),t+(r>1?16:0)+(r>2?(r-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var r=Math.floor(e/400)+1;e-=(r-1)*400,e+=e>15?16:0;var t=Math.floor(e/32)+1,n=e-(t-1)*32+1;return this.newDate(r<=0?r-1:r,t,n)}});var Cue={20:"Fruitbat",21:"Anchovy"};mo.calendars.discworld=L5});var nq=de(()=>{var ds=Pn(),Eue=Rn();function D5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}D5.prototype=new ds.baseCalendar;Eue(D5.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,ds.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ds.local.invalidYear||ds.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,ds.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,r,t,ds.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var n=Math.floor(r/30)+1,a=r-(n-1)*30+1;return this.newDate(t,n,a)}});ds.calendars.ethiopian=D5});var aq=de(()=>{var cl=Pn(),Lue=Rn();function R5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}R5.prototype=new cl.baseCalendar;Lue(R5.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,cl.local.invalidYear);return this._leapYear(r.year())},_leapYear:function(e){return e=e<0?e+1:e,Cd(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,cl.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,cl.local.invalidYear);return e=r.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,cl.local.invalidMonth),r===12&&this.leapYear(e)||r===8&&Cd(this.daysInYear(e),10)===5?30:r===9&&Cd(this.daysInYear(e),10)===3?29:this.daysPerMonth[r-1]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},extraInfo:function(e,r,t){var n=this._validate(e,r,t,cl.local.invalidDate);return{yearType:(this.leapYear(n)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(n)%10-3]}},toJD:function(e,r,t){var n=this._validate(e,r,t,cl.local.invalidDate);e=n.year(),r=n.month(),t=n.day();var a=e<=0?e+1:e,o=this.jdEpoch+this._delay1(a)+this._delay2(a)+t+1;if(r<7){for(var i=7;i<=this.monthsInYear(e);i++)o+=this.daysInMonth(e,i);for(var i=1;i=this.toJD(r===-1?1:r+1,7,1);)r++;for(var t=ethis.toJD(r,t,this.daysInMonth(r,t));)t++;var n=e-this.toJD(r,t,1)+1;return this.newDate(r,t,n)}});function Cd(e,r){return e-r*Math.floor(e/r)}cl.calendars.hebrew=R5});var iq=de(()=>{var X0=Pn(),Due=Rn();function P5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}P5.prototype=new X0.baseCalendar;Due(P5.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,X0.local.invalidYear);return(r.year()*11+14)%30<11},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,X0.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var n=this._validate(e,r,t,X0.local.invalidDate);return e=n.year(),r=n.month(),t=n.day(),e=e<=0?e+1:e,t+Math.ceil(29.5*(r-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=Math.floor((30*(e-this.jdEpoch)+10646)/10631);r=r<=0?r-1:r;var t=Math.min(12,Math.ceil((e-29-this.toJD(r,1,1))/29.5)+1),n=e-this.toJD(r,t,1)+1;return this.newDate(r,t,n)}});X0.calendars.islamic=P5});var oq=de(()=>{var Z0=Pn(),Rue=Rn();function I5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}I5.prototype=new Z0.baseCalendar;Rue(I5.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Z0.local.invalidYear),t=r.year()<0?r.year()+1:r.year();return t%4===0},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Z0.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,r,t,Z0.local.invalidDate);return e=n.year(),r=n.month(),t=n.day(),e<0&&e++,r<=2&&(e--,r+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(r+1))+t-1524.5},fromJD:function(e){var r=Math.floor(e+.5),t=r+1524,n=Math.floor((t-122.1)/365.25),a=Math.floor(365.25*n),o=Math.floor((t-a)/30.6001),i=o-Math.floor(o<14?1:13),l=n-Math.floor(i>2?4716:4715),u=t-a-Math.floor(30.6001*o);return l<=0&&l--,this.newDate(l,i,u)}});Z0.calendars.julian=I5});var sq=de(()=>{var Ya=Pn(),Pue=Rn();function N5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}N5.prototype=new Ya.baseCalendar;Pue(N5.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ya.local.invalidYear),!1},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Ya.local.invalidYear);e=r.year();var t=Math.floor(e/400);e=e%400,e+=e<0?400:0;var n=Math.floor(e/20);return t+"."+n+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var r=0,t=0;t19||t>0&&n<0)throw"Invalid Mayan year";r=r*20+n}return r},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ya.local.invalidYear),18},weekOfYear:function(e,r,t){return this._validate(e,r,t,Ya.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ya.local.invalidYear),360},daysInMonth:function(e,r){return this._validate(e,r,this.minDay,Ya.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,r,t){var n=this._validate(e,r,t,Ya.local.invalidDate);return n.day()},weekDay:function(e,r,t){return this._validate(e,r,t,Ya.local.invalidDate),!0},extraInfo:function(e,r,t){var n=this._validate(e,r,t,Ya.local.invalidDate),a=n.toJD(),o=this._toHaab(a),i=this._toTzolkin(a);return{haabMonthName:this.local.haabMonths[o[0]-1],haabMonth:o[0],haabDay:o[1],tzolkinDayName:this.local.tzolkinMonths[i[0]-1],tzolkinDay:i[0],tzolkinTrecena:i[1]}},_toHaab:function(e){e-=this.jdEpoch;var r=F5(e+8+17*20,365);return[Math.floor(r/20)+1,F5(r,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[lq(e+20,20),lq(e+4,13)]},toJD:function(e,r,t){var n=this._validate(e,r,t,Ya.local.invalidDate);return n.day()+n.month()*20+n.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var r=Math.floor(e/360);e=e%360,e+=e<0?360:0;var t=Math.floor(e/20),n=e%20;return this.newDate(r,t,n)}});function F5(e,r){return e-r*Math.floor(e/r)}function lq(e,r){return F5(e-1,r)+1}Ya.calendars.mayan=N5});var fq=de(()=>{var ps=Pn(),Iue=Rn();function z5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}z5.prototype=new ps.baseCalendar;var uq=ps.instance("gregorian");Iue(z5.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,ps.local.invalidYear||ps.regionalOptions[""].invalidYear);return uq.leapYear(r.year()+(r.year()<1?1:0)+1469)},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,ps.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(a,r,t){var n=this._validate(a,r,t,ps.local.invalidMonth),a=n.year();a<0&&a++;for(var o=n.day(),i=1;i=this.toJD(r+1,1,1);)r++;for(var t=e-Math.floor(this.toJD(r,1,1)+.5)+1,n=1;t>this.daysInMonth(r,n);)t-=this.daysInMonth(r,n),n++;return this.newDate(r,n,t)}});ps.calendars.nanakshahi=z5});var cq=de(()=>{var gs=Pn(),Fue=Rn();function q5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}q5.prototype=new gs.baseCalendar;Fue(q5.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,gs.local.invalidYear);if(e=r.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var t=0,n=this.minMonth;n<=12;n++)t+=this.NEPALI_CALENDAR_DATA[e][n];return t},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,gs.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[r-1]:this.NEPALI_CALENDAR_DATA[e][r]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},toJD:function(e,r,t){var n=this._validate(e,r,t,gs.local.invalidDate);e=n.year(),r=n.month(),t=n.day();var a=gs.instance(),o=0,i=r,l=e;this._createMissingCalendarData(e);var u=e-(i>9||i===9&&t>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(r!==9&&(o=t,i--);i!==9;)i<=0&&(i=12,l--),o+=this.NEPALI_CALENDAR_DATA[l][i],i--;return r===9?(o+=t-this.NEPALI_CALENDAR_DATA[l][0],o<0&&(o+=a.daysInYear(u))):o+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],a.newDate(u,1,1).add(o,"d").toJD()},fromJD:function(e){var r=gs.instance(),t=r.fromJD(e),n=t.year(),a=t.dayOfYear(),o=n+56;this._createMissingCalendarData(o);for(var i=9,l=this.NEPALI_CALENDAR_DATA[o][0],u=this.NEPALI_CALENDAR_DATA[o][i]-l+1;a>u;)i++,i>12&&(i=1,o++),u+=this.NEPALI_CALENDAR_DATA[o][i];var s=this.NEPALI_CALENDAR_DATA[o][i]-(u-a);return this.newDate(o,i,s)},_createMissingCalendarData:function(e){var r=this.daysPerMonth.slice(0);r.unshift(17);for(var t=e-1;t{var Ju=Pn(),Nue=Rn();function Ld(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function Ed(e){var r=e-475;e<0&&r++;var t=.242197,n=t*r,a=t*(r+1),o=n-Math.floor(n),i=a-Math.floor(a);return o>i}Ld.prototype=new Ju.baseCalendar;Nue(Ld.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Ju.local.invalidYear);return Ed(r.year())},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-((n.dayOfWeek()+1)%7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Ju.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var n=this._validate(e,r,t,Ju.local.invalidDate);e=n.year(),r=n.month(),t=n.day();var a=0;if(e>0)for(var o=1;o0?e-1:e)*365+a+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=475+(e-this.toJD(475,1,1))/365.242197,t=Math.floor(r);t<=0&&t--,e>this.toJD(t,12,Ed(t)?30:29)&&(t++,t===0&&t++);var n=e-this.toJD(t,1,1)+1,a=n<=186?Math.ceil(n/31):Math.ceil((n-6)/30),o=e-this.toJD(t,a,1)+1;return this.newDate(t,a,o)}});Ju.calendars.persian=Ld;Ju.calendars.jalali=Ld});var vq=de(()=>{var ys=Pn(),zue=Rn(),Dd=ys.instance();function O5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}O5.prototype=new ys.baseCalendar;zue(O5.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,ys.local.invalidYear),t=this._t2gYear(r.year());return Dd.leapYear(t)},weekOfYear:function(a,r,t){var n=this._validate(a,this.minMonth,this.minDay,ys.local.invalidYear),a=this._t2gYear(n.year());return Dd.weekOfYear(a,n.month(),n.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,ys.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(a,r,t){var n=this._validate(a,r,t,ys.local.invalidDate),a=this._t2gYear(n.year());return Dd.toJD(a,n.month(),n.day())},fromJD:function(e){var r=Dd.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});ys.calendars.taiwan=O5});var dq=de(()=>{var ms=Pn(),que=Rn(),Rd=ms.instance();function B5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}B5.prototype=new ms.baseCalendar;que(B5.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,ms.local.invalidYear),t=this._t2gYear(r.year());return Rd.leapYear(t)},weekOfYear:function(a,r,t){var n=this._validate(a,this.minMonth,this.minDay,ms.local.invalidYear),a=this._t2gYear(n.year());return Rd.weekOfYear(a,n.month(),n.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,ms.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(a,r,t){var n=this._validate(a,r,t,ms.local.invalidDate),a=this._t2gYear(n.year());return Rd.toJD(a,n.month(),n.day())},fromJD:function(e){var r=Rd.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});ms.calendars.thai=B5});var pq=de(()=>{var bs=Pn(),Oue=Rn();function U5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}U5.prototype=new bs.baseCalendar;Oue(U5.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,bs.local.invalidYear);return this.daysInYear(r.year())===355},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var r=0,t=1;t<=12;t++)r+=this.daysInMonth(e,t);return r},daysInMonth:function(e,r){for(var t=this._validate(e,r,this.minDay,bs.local.invalidMonth),n=t.toJD()-24e5+.5,a=0,o=0;on)return hl[a]-hl[a-1];a++}return 30},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var n=this._validate(e,r,t,bs.local.invalidDate),a=12*(n.year()-1)+n.month()-15292,o=n.day()+hl[a-1]-1;return o+24e5-.5},fromJD:function(e){for(var r=e-24e5+.5,t=0,n=0;nr);n++)t++;var a=t+15292,o=Math.floor((a-1)/12),i=o+1,l=a-12*o,u=r-hl[t-1]+1;return this.newDate(i,l,u)},isValid:function(e,r,t){var n=bs.baseCalendar.prototype.isValid.apply(this,arguments);return n&&(e=e.year!=null?e.year:e,n=e>=1276&&e<=1500),n},_validate:function(e,r,t,n){var a=bs.baseCalendar.prototype._validate.apply(this,arguments);if(a.year<1276||a.year>1500)throw n.replace(/\{0\}/,this.local.name);return a}});bs.calendars.ummalqura=U5;var hl=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var yq=de((kge,gq)=>{"use strict";gq.exports=Pn();jz();eq();rq();tq();nq();aq();iq();oq();sq();fq();cq();hq();vq();dq();pq()});var Tq=de((Sge,Mq)=>{"use strict";var bq=yq(),J0=ir(),xq=nn(),Bue=xq.EPOCHJD,Uue=xq.ONEDAY,G5={valType:"enumerated",values:J0.sortObjectKeys(bq.calendars),editType:"calc",dflt:"gregorian"},_q=function(e,r,t,n){var a={};return a[t]=G5,J0.coerce(e,r,a,t,n)},Hue=function(e,r,t,n){for(var a=0;a{"use strict";Aq.exports=Tq()});var Zue=de((Ege,Cq)=>{var Sq=AI();Sq.register([tN(),SN(),YN(),nz(),yz(),Rz(),Zz(),kq()]);Cq.exports=Sq});return Zue();})(); +}`]),p=[{name:"position",type:"vec3"},{name:"nextPosition",type:"vec3"},{name:"arcLength",type:"float"},{name:"lineWidth",type:"float"},{name:"color",type:"vec4"}];o.createShader=function(b){return u(b,s,f,null,p)},o.createPickShader=function(b){return u(b,s,h,null,p)}},7352:function(a,o,i){"use strict";var l=i(5721),u=i(4750),s=i(2690);a.exports=f;function f(h){var p=h.length;if(p===0)return[];if(p===1)return[[0]];var b=h[0].length;return b===0?[]:b===1?l(h):b===2?u(h):s(h,b)}},7399:function(a){a.exports=o;function o(i,l){var u=l[0],s=l[1],f=l[2],h=l[3],p=u+u,b=s+s,m=f+f,w=u*p,T=s*p,y=s*b,k=f*p,S=f*b,x=f*m,M=h*p,d=h*b,_=h*m;return i[0]=1-y-x,i[1]=T+_,i[2]=k-d,i[3]=0,i[4]=T-_,i[5]=1-w-x,i[6]=S+M,i[7]=0,i[8]=k+d,i[9]=S-M,i[10]=1-w-y,i[11]=0,i[12]=0,i[13]=0,i[14]=0,i[15]=1,i}},7417:function(a){a.exports=o;function o(i,l,u){return i[0]=Math.max(l[0],u[0]),i[1]=Math.max(l[1],u[1]),i[2]=Math.max(l[2],u[2]),i}},7442:function(a,o,i){var l=i(6658),u=i(7182),s=i(2652),f=i(9921),h=i(8648),p=T(),b=T(),m=T();a.exports=w;function w(S,x,M,d){if(f(x)===0||f(M)===0)return!1;var _=s(x,p.translate,p.scale,p.skew,p.perspective,p.quaternion),g=s(M,b.translate,b.scale,b.skew,b.perspective,b.quaternion);return!_||!g?!1:(l(m.translate,p.translate,b.translate,d),l(m.skew,p.skew,b.skew,d),l(m.scale,p.scale,b.scale,d),l(m.perspective,p.perspective,b.perspective,d),h(m.quaternion,p.quaternion,b.quaternion,d),u(S,m.translate,m.scale,m.skew,m.perspective,m.quaternion),!0)}function T(){return{translate:y(),scale:y(1),skew:y(),perspective:k(),quaternion:k()}}function y(S){return[S||0,S||0,S||0]}function k(){return[0,0,0,1]}},7507:function(a,o){"use strict";o.byteLength=b,o.toByteArray=w,o.fromByteArray=k;for(var i=[],l=[],u=typeof Uint8Array!="undefined"?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",f=0,h=s.length;f0)throw new Error("Invalid string. Length must be a multiple of 4");var M=S.indexOf("=");M===-1&&(M=x);var d=M===x?0:4-M%4;return[M,d]}function b(S){var x=p(S),M=x[0],d=x[1];return(M+d)*3/4-d}function m(S,x,M){return(x+M)*3/4-M}function w(S){var x,M=p(S),d=M[0],_=M[1],g=new u(m(S,d,_)),c=0,A=_>0?d-4:d,v;for(v=0;v>16&255,g[c++]=x>>8&255,g[c++]=x&255;return _===2&&(x=l[S.charCodeAt(v)]<<2|l[S.charCodeAt(v+1)]>>4,g[c++]=x&255),_===1&&(x=l[S.charCodeAt(v)]<<10|l[S.charCodeAt(v+1)]<<4|l[S.charCodeAt(v+2)]>>2,g[c++]=x>>8&255,g[c++]=x&255),g}function T(S){return i[S>>18&63]+i[S>>12&63]+i[S>>6&63]+i[S&63]}function y(S,x,M){for(var d,_=[],g=x;gA?A:c+g));return d===1?(x=S[M-1],_.push(i[x>>2]+i[x<<4&63]+"==")):d===2&&(x=(S[M-2]<<8)+S[M-1],_.push(i[x>>10]+i[x>>4&63]+i[x<<2&63]+"=")),_.join("")}},7518:function(a,o,i){"use strict";var l=i(1433);function u(h,p,b,m,w,T){this.location=h,this.dimension=p,this.a=b,this.b=m,this.c=w,this.d=T}u.prototype.bind=function(h){switch(this.dimension){case 1:h.vertexAttrib1f(this.location,this.a);break;case 2:h.vertexAttrib2f(this.location,this.a,this.b);break;case 3:h.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:h.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d);break}};function s(h,p,b){this.gl=h,this._ext=p,this.handle=b,this._attribs=[],this._useElements=!1,this._elementsType=h.UNSIGNED_SHORT}s.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var h=0;h1.0001)return null;v+=A[M]}return Math.abs(v-1)>.001?null:[d,p(m,A),A]}},7636:function(a){a.exports=o;function o(i,l){l=l||1;var u=Math.random()*2*Math.PI,s=Math.random()*2-1,f=Math.sqrt(1-s*s)*l;return i[0]=Math.cos(u)*f,i[1]=Math.sin(u)*f,i[2]=s*l,i}},7640:function(a,o,i){"use strict";var l=i(1888);function u(w){switch(w){case"uint32":return[l.mallocUint32,l.freeUint32];default:return null}}var s={"uint32,1,0":function(w,T){return function(k,S,x,M,d,_,g,c,A,v,D){var E,R,N,F=k*d+M,I,L=w(c),P,O,U,X;for(E=k+1;E<=S;++E){for(R=E,F+=d,N=F,P=0,O=F,I=0;Ik;){P=0,O=N-d;r:for(I=0;IX)break r;O+=v,P+=D}for(P=N,O=N-d,I=0;I>1,L=I-R,P=I+R,O=N,U=L,X=I,$=P,j=F,Y=S+1,q=x-1,K=!0,ne,Q,oe,re,H,ee,V,te,ue,ve=0,ke=0,Se=0,he,Ae,Ce,Pe,Ee,Ne,Ue,ge,we,Te,me,ye,pe,ce,xe,Le,qe=A,ze=T(qe),$e=T(qe);Ae=_*O,Ce=_*U,Le=d;e:for(he=0;he0){Q=O,O=U,U=Q;break e}if(Se<0)break e;Le+=D}Ae=_*$,Ce=_*j,Le=d;e:for(he=0;he0){Q=$,$=j,j=Q;break e}if(Se<0)break e;Le+=D}Ae=_*O,Ce=_*X,Le=d;e:for(he=0;he0){Q=O,O=X,X=Q;break e}if(Se<0)break e;Le+=D}Ae=_*U,Ce=_*X,Le=d;e:for(he=0;he0){Q=U,U=X,X=Q;break e}if(Se<0)break e;Le+=D}Ae=_*O,Ce=_*$,Le=d;e:for(he=0;he0){Q=O,O=$,$=Q;break e}if(Se<0)break e;Le+=D}Ae=_*X,Ce=_*$,Le=d;e:for(he=0;he0){Q=X,X=$,$=Q;break e}if(Se<0)break e;Le+=D}Ae=_*U,Ce=_*j,Le=d;e:for(he=0;he0){Q=U,U=j,j=Q;break e}if(Se<0)break e;Le+=D}Ae=_*U,Ce=_*X,Le=d;e:for(he=0;he0){Q=U,U=X,X=Q;break e}if(Se<0)break e;Le+=D}Ae=_*$,Ce=_*j,Le=d;e:for(he=0;he0){Q=$,$=j,j=Q;break e}if(Se<0)break e;Le+=D}for(Ae=_*O,Ce=_*U,Pe=_*X,Ee=_*$,Ne=_*j,Ue=_*N,ge=_*I,we=_*F,xe=0,Le=d,he=0;he0)q--;else if(Se<0){for(Ae=_*ee,Ce=_*Y,Pe=_*q,Le=d,he=0;he0)for(;;){V=d+q*_,xe=0;e:for(he=0;he0){if(--qF){e:for(;;){for(V=d+Y*_,xe=0,Le=d,he=0;he1&&k?x(y,k[0],k[1]):x(y)}var b={"uint32,1,0":function(w,T){return function(y){var k=y.data,S=y.offset|0,x=y.shape,M=y.stride,d=M[0]|0,_=x[0]|0,g=M[1]|0,c=x[1]|0,A=g,v=g,D=1;_<=32?w(0,_-1,k,S,d,g,_,c,A,v,D):T(0,_-1,k,S,d,g,_,c,A,v,D)}}};function m(w,T){var y=[T,w].join(","),k=b[y],S=f(w,T),x=p(w,T,S);return k(S,x)}a.exports=m},7642:function(a,o,i){"use strict";var l=i(8954),u=i(1682);a.exports=p;function s(b,m){this.point=b,this.index=m}function f(b,m){for(var w=b.point,T=m.point,y=w.length,k=0;k=2)return!1;N[I]=L}return!0}):R=R.filter(function(N){for(var F=0;F<=T;++F){var I=A[N[F]];if(I<0)return!1;N[F]=I}return!0}),T&1)for(var S=0;S",P="",O=L.length,U=P.length,X=N[0]===k||N[0]===M,$=0,j=-U;$>-1&&($=F.indexOf(L,$),!($===-1||(j=F.indexOf(P,$+O),j===-1)||j<=$));){for(var Y=$;Y=j)I[Y]=null,F=F.substr(0,Y)+" "+F.substr(Y+1);else if(I[Y]!==null){var q=I[Y].indexOf(N[0]);q===-1?I[Y]+=N:X&&(I[Y]=I[Y].substr(0,q+1)+(1+parseInt(I[Y][q+1]))+I[Y].substr(q+2))}var K=$+O,ne=F.substr(K,j-K),Q=ne.indexOf(L);Q!==-1?$=Q:$=j+U}return I}function g(R,N,F){for(var I=N.textAlign||"start",L=N.textBaseline||"alphabetic",P=[1<<30,1<<30],O=[0,0],U=R.length,X=0;X/g,` +`):F=F.replace(/\/g," ");var O="",U=[];for(H=0;H-1?parseInt(ge[1+me]):0,ce=ye>-1?parseInt(we[1+ye]):0;pe!==ce&&(Te=Te.replace(Se(),"?px "),te*=Math.pow(.75,ce-pe),Te=Te.replace("?px ",Se())),V+=.25*q*(ce-pe)}if(P.superscripts===!0){var xe=ge.indexOf(k),Le=we.indexOf(k),qe=xe>-1?parseInt(ge[1+xe]):0,ze=Le>-1?parseInt(we[1+Le]):0;qe!==ze&&(Te=Te.replace(Se(),"?px "),te*=Math.pow(.75,ze-qe),Te=Te.replace("?px ",Se())),V-=.25*q*(ze-qe)}if(P.bolds===!0){var $e=ge.indexOf(m)>-1,Ve=we.indexOf(m)>-1;!$e&&Ve&&(Be?Te=Te.replace("italic ","italic bold "):Te="bold "+Te),$e&&!Ve&&(Te=Te.replace("bold ",""))}if(P.italics===!0){var Be=ge.indexOf(T)>-1,Ye=we.indexOf(T)>-1;!Be&&Ye&&(Te="italic "+Te),Be&&!Ye&&(Te=Te.replace("italic ",""))}N.font=Te}for(re=0;re0&&(L=I.size),I.lineSpacing&&I.lineSpacing>0&&(P=I.lineSpacing),I.styletags&&I.styletags.breaklines&&(O.breaklines=!!I.styletags.breaklines),I.styletags&&I.styletags.bolds&&(O.bolds=!!I.styletags.bolds),I.styletags&&I.styletags.italics&&(O.italics=!!I.styletags.italics),I.styletags&&I.styletags.subscripts&&(O.subscripts=!!I.styletags.subscripts),I.styletags&&I.styletags.superscripts&&(O.superscripts=!!I.styletags.superscripts)),F.font=[I.fontStyle,I.fontVariant,I.fontWeight,L+"px",I.font].filter(function(X){return X}).join(" "),F.textAlign="start",F.textBaseline="alphabetic",F.direction="ltr";var U=c(N,F,R,L,P,O);return D(U,I,L)}},7721:function(a,o,i){"use strict";var l=i(5716);a.exports=u;function u(s){return l(s[0])*l(s[1])}},7765:function(a,o,i){"use strict";a.exports=y;var l=i(9618),u=i(1888),s=i(446),f=i(1570);function h(k){for(var S=k.length,x=0,M=0;MR||D<0||D>R)throw new Error("gl-texture2d: Invalid texture size");return A._shape=[v,D],A.bind(),E.texImage2D(E.TEXTURE_2D,0,A.format,v,D,0,A.format,A.type,null),A._mipLevels=[0],A}function y(A,v,D,E,R,N){this.gl=A,this.handle=v,this.format=R,this.type=N,this._shape=[D,E],this._mipLevels=[0],this._magFilter=A.NEAREST,this._minFilter=A.NEAREST,this._wrapS=A.CLAMP_TO_EDGE,this._wrapT=A.CLAMP_TO_EDGE,this._anisoSamples=1;var F=this,I=[this._wrapS,this._wrapT];Object.defineProperties(I,[{get:function(){return F._wrapS},set:function(P){return F.wrapS=P}},{get:function(){return F._wrapT},set:function(P){return F.wrapT=P}}]),this._wrapVector=I;var L=[this._shape[0],this._shape[1]];Object.defineProperties(L,[{get:function(){return F._shape[0]},set:function(P){return F.width=P}},{get:function(){return F._shape[1]},set:function(P){return F.height=P}}]),this._shapeVector=L}var k=y.prototype;Object.defineProperties(k,{minFilter:{get:function(){return this._minFilter},set:function(A){this.bind();var v=this.gl;if(this.type===v.FLOAT&&f.indexOf(A)>=0&&(v.getExtension("OES_texture_float_linear")||(A=v.NEAREST)),h.indexOf(A)<0)throw new Error("gl-texture2d: Unknown filter mode "+A);return v.texParameteri(v.TEXTURE_2D,v.TEXTURE_MIN_FILTER,A),this._minFilter=A}},magFilter:{get:function(){return this._magFilter},set:function(A){this.bind();var v=this.gl;if(this.type===v.FLOAT&&f.indexOf(A)>=0&&(v.getExtension("OES_texture_float_linear")||(A=v.NEAREST)),h.indexOf(A)<0)throw new Error("gl-texture2d: Unknown filter mode "+A);return v.texParameteri(v.TEXTURE_2D,v.TEXTURE_MAG_FILTER,A),this._magFilter=A}},mipSamples:{get:function(){return this._anisoSamples},set:function(A){var v=this._anisoSamples;if(this._anisoSamples=Math.max(A,1)|0,v!==this._anisoSamples){var D=this.gl.getExtension("EXT_texture_filter_anisotropic");D&&this.gl.texParameterf(this.gl.TEXTURE_2D,D.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(A){if(this.bind(),p.indexOf(A)<0)throw new Error("gl-texture2d: Unknown wrap mode "+A);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,A),this._wrapS=A}},wrapT:{get:function(){return this._wrapT},set:function(A){if(this.bind(),p.indexOf(A)<0)throw new Error("gl-texture2d: Unknown wrap mode "+A);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,A),this._wrapT=A}},wrap:{get:function(){return this._wrapVector},set:function(A){if(Array.isArray(A)||(A=[A,A]),A.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var v=0;v<2;++v)if(p.indexOf(A[v])<0)throw new Error("gl-texture2d: Unknown wrap mode "+A);this._wrapS=A[0],this._wrapT=A[1];var D=this.gl;return this.bind(),D.texParameteri(D.TEXTURE_2D,D.TEXTURE_WRAP_S,this._wrapS),D.texParameteri(D.TEXTURE_2D,D.TEXTURE_WRAP_T,this._wrapT),A}},shape:{get:function(){return this._shapeVector},set:function(A){if(!Array.isArray(A))A=[A|0,A|0];else if(A.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return T(this,A[0]|0,A[1]|0),[A[0]|0,A[1]|0]}},width:{get:function(){return this._shape[0]},set:function(A){return A=A|0,T(this,A,this._shape[1]),A}},height:{get:function(){return this._shape[1]},set:function(A){return A=A|0,T(this,this._shape[0],A),A}}}),k.bind=function(A){var v=this.gl;return A!==void 0&&v.activeTexture(v.TEXTURE0+(A|0)),v.bindTexture(v.TEXTURE_2D,this.handle),A!==void 0?A|0:v.getParameter(v.ACTIVE_TEXTURE)-v.TEXTURE0},k.dispose=function(){this.gl.deleteTexture(this.handle)},k.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var A=Math.min(this._shape[0],this._shape[1]),v=0;A>0;++v,A>>>=1)this._mipLevels.indexOf(v)<0&&this._mipLevels.push(v)},k.setPixels=function(A,v,D,E){var R=this.gl;this.bind(),Array.isArray(v)?(E=D,D=v[1]|0,v=v[0]|0):(v=v||0,D=D||0),E=E||0;var N=m(A)?A:A.raw;if(N){var F=this._mipLevels.indexOf(E)<0;F?(R.texImage2D(R.TEXTURE_2D,0,this.format,this.format,this.type,N),this._mipLevels.push(E)):R.texSubImage2D(R.TEXTURE_2D,E,v,D,this.format,this.type,N)}else if(A.shape&&A.stride&&A.data){if(A.shape.length<2||v+A.shape[1]>this._shape[1]>>>E||D+A.shape[0]>this._shape[0]>>>E||v<0||D<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");x(R,v,D,E,this.format,this.type,this._mipLevels,A)}else throw new Error("gl-texture2d: Unsupported data type")};function S(A,v){return A.length===3?v[2]===1&&v[1]===A[0]*A[2]&&v[0]===A[2]:v[0]===1&&v[1]===A[0]}function x(A,v,D,E,R,N,F,I){var L=I.dtype,P=I.shape.slice();if(P.length<2||P.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var O=0,U=0,X=S(P,I.stride.slice());L==="float32"?O=A.FLOAT:L==="float64"?(O=A.FLOAT,X=!1,L="float32"):L==="uint8"?O=A.UNSIGNED_BYTE:(O=A.UNSIGNED_BYTE,X=!1,L="uint8");var $=1;if(P.length===2)U=A.LUMINANCE,P=[P[0],P[1],1],I=l(I.data,P,[I.stride[0],I.stride[1],1],I.offset);else if(P.length===3){if(P[2]===1)U=A.ALPHA;else if(P[2]===2)U=A.LUMINANCE_ALPHA;else if(P[2]===3)U=A.RGB;else if(P[2]===4)U=A.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");$=P[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((U===A.LUMINANCE||U===A.ALPHA)&&(R===A.LUMINANCE||R===A.ALPHA)&&(U=R),U!==R)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var j=I.size,Y=F.indexOf(E)<0;if(Y&&F.push(E),O===N&&X)I.offset===0&&I.data.length===j?Y?A.texImage2D(A.TEXTURE_2D,E,R,P[0],P[1],0,R,N,I.data):A.texSubImage2D(A.TEXTURE_2D,E,v,D,P[0],P[1],R,N,I.data):Y?A.texImage2D(A.TEXTURE_2D,E,R,P[0],P[1],0,R,N,I.data.subarray(I.offset,I.offset+j)):A.texSubImage2D(A.TEXTURE_2D,E,v,D,P[0],P[1],R,N,I.data.subarray(I.offset,I.offset+j));else{var q;N===A.FLOAT?q=s.mallocFloat32(j):q=s.mallocUint8(j);var K=l(q,P,[P[2],P[2]*P[0],1]);O===A.FLOAT&&N===A.UNSIGNED_BYTE?w(K,I):u.assign(K,I),Y?A.texImage2D(A.TEXTURE_2D,E,R,P[0],P[1],0,R,N,q.subarray(0,j)):A.texSubImage2D(A.TEXTURE_2D,E,v,D,P[0],P[1],R,N,q.subarray(0,j)),N===A.FLOAT?s.freeFloat32(q):s.freeUint8(q)}}function M(A){var v=A.createTexture();return A.bindTexture(A.TEXTURE_2D,v),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_MIN_FILTER,A.NEAREST),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_MAG_FILTER,A.NEAREST),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_WRAP_S,A.CLAMP_TO_EDGE),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_WRAP_T,A.CLAMP_TO_EDGE),v}function d(A,v,D,E,R){var N=A.getParameter(A.MAX_TEXTURE_SIZE);if(v<0||v>N||D<0||D>N)throw new Error("gl-texture2d: Invalid texture shape");if(R===A.FLOAT&&!A.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var F=M(A);return A.texImage2D(A.TEXTURE_2D,0,E,v,D,0,E,R,null),new y(A,F,v,D,E,R)}function _(A,v,D,E,R,N){var F=M(A);return A.texImage2D(A.TEXTURE_2D,0,R,R,N,v),new y(A,F,D,E,R,N)}function g(A,v){var D=v.dtype,E=v.shape.slice(),R=A.getParameter(A.MAX_TEXTURE_SIZE);if(E[0]<0||E[0]>R||E[1]<0||E[1]>R)throw new Error("gl-texture2d: Invalid texture size");var N=S(E,v.stride.slice()),F=0;D==="float32"?F=A.FLOAT:D==="float64"?(F=A.FLOAT,N=!1,D="float32"):D==="uint8"?F=A.UNSIGNED_BYTE:(F=A.UNSIGNED_BYTE,N=!1,D="uint8");var I=0;if(E.length===2)I=A.LUMINANCE,E=[E[0],E[1],1],v=l(v.data,E,[v.stride[0],v.stride[1],1],v.offset);else if(E.length===3)if(E[2]===1)I=A.ALPHA;else if(E[2]===2)I=A.LUMINANCE_ALPHA;else if(E[2]===3)I=A.RGB;else if(E[2]===4)I=A.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");F===A.FLOAT&&!A.getExtension("OES_texture_float")&&(F=A.UNSIGNED_BYTE,N=!1);var L,P,O=v.size;if(N)v.offset===0&&v.data.length===O?L=v.data:L=v.data.subarray(v.offset,v.offset+O);else{var U=[E[2],E[2]*E[0],1];P=s.malloc(O,D);var X=l(P,E,U,0);(D==="float32"||D==="float64")&&F===A.UNSIGNED_BYTE?w(X,v):u.assign(X,v),L=P.subarray(0,O)}var $=M(A);return A.texImage2D(A.TEXTURE_2D,0,I,E[0],E[1],0,I,F,L),N||s.free(P),new y(A,$,E[0],E[1],I,F)}function c(A){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(f||b(A),typeof arguments[1]=="number")return d(A,arguments[1],arguments[2],arguments[3]||A.RGBA,arguments[4]||A.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return d(A,arguments[1][0]|0,arguments[1][1]|0,arguments[2]||A.RGBA,arguments[3]||A.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var v=arguments[1],D=m(v)?v:v.raw;if(D)return _(A,D,v.width|0,v.height|0,arguments[2]||A.RGBA,arguments[3]||A.UNSIGNED_BYTE);if(v.shape&&v.data&&v.stride)return g(A,v)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},7790:function(){},7815:function(a,o,i){"use strict";var l=i(2931),u=i(9970),s=["xyz","xzy","yxz","yzx","zxy","zyx"],f=function(x,M,d,_){for(var g=x.points,c=x.velocities,A=x.divergences,v=[],D=[],E=[],R=[],N=[],F=[],I=0,L=0,P=u.create(),O=u.create(),U=8,X=0;X0)for(var q=0;qM)return _-1}return _},b=function(x,M,d){return xd?d:x},m=function(x,M,d){var _=M.vectors,g=M.meshgrid,c=x[0],A=x[1],v=x[2],D=g[0].length,E=g[1].length,R=g[2].length,N=p(g[0],c),F=p(g[1],A),I=p(g[2],v),L=N+1,P=F+1,O=I+1;if(N=b(N,0,D-1),L=b(L,0,D-1),F=b(F,0,E-1),P=b(P,0,E-1),I=b(I,0,R-1),O=b(O,0,R-1),N<0||F<0||I<0||L>D-1||P>E-1||O>R-1)return l.create();var U=g[0][N],X=g[0][L],$=g[1][F],j=g[1][P],Y=g[2][I],q=g[2][O],K=(c-U)/(X-U),ne=(A-$)/(j-$),Q=(v-Y)/(q-Y);isFinite(K)||(K=.5),isFinite(ne)||(ne=.5),isFinite(Q)||(Q=.5);var oe,re,H,ee,V,te;switch(d.reversedX&&(N=D-1-N,L=D-1-L),d.reversedY&&(F=E-1-F,P=E-1-P),d.reversedZ&&(I=R-1-I,O=R-1-O),d.filled){case 5:V=I,te=O,H=F*R,ee=P*R,oe=N*R*E,re=L*R*E;break;case 4:V=I,te=O,oe=N*R,re=L*R,H=F*R*D,ee=P*R*D;break;case 3:H=F,ee=P,V=I*E,te=O*E,oe=N*E*R,re=L*E*R;break;case 2:H=F,ee=P,oe=N*E,re=L*E,V=I*E*D,te=O*E*D;break;case 1:oe=N,re=L,V=I*D,te=O*D,H=F*D*R,ee=P*D*R;break;default:oe=N,re=L,H=F*D,ee=P*D,V=I*D*E,te=O*D*E;break}var ue=_[oe+H+V],ve=_[oe+H+te],ke=_[oe+ee+V],Se=_[oe+ee+te],he=_[re+H+V],Ae=_[re+H+te],Ce=_[re+ee+V],Pe=_[re+ee+te],Ee=l.create(),Ne=l.create(),Ue=l.create(),ge=l.create();l.lerp(Ee,ue,he,K),l.lerp(Ne,ve,Ae,K),l.lerp(Ue,ke,Ce,K),l.lerp(ge,Se,Pe,K);var we=l.create(),Te=l.create();l.lerp(we,Ee,Ue,ne),l.lerp(Te,Ne,ge,ne);var me=l.create();return l.lerp(me,we,Te,Q),me},w=function(x,M){var d=M[0],_=M[1],g=M[2];return x[0]=d<0?-d:d,x[1]=_<0?-_:_,x[2]=g<0?-g:g,x},T=function(x){var M=1/0;x.sort(function(c,A){return c-A});for(var d=x.length,_=1;_L||PeP||EeO)},X=l.distance(M[0],M[1]),$=10*X/_,j=$*$,Y=1,q=0,K=d.length;K>1&&(Y=y(d));for(var ne=0;neq&&(q=ue),V.push(ue),R.push({points:oe,velocities:re,divergences:V});for(var ve=0;ve<_*100&&oe.length<_&&U(Q);){ve++;var ke=l.clone(H),Se=l.squaredLength(ke);if(Se===0)break;if(Se>j&&l.scale(ke,ke,$/Math.sqrt(Se)),l.add(ke,ke,Q),H=D(ke),l.squaredDistance(ee,ke)-j>-1e-4*j){oe.push(ke),ee=ke,re.push(H);var te=E(ke,H),ue=l.length(te);isFinite(ue)&&ue>q&&(q=ue),V.push(ue)}Q=ke}}var he=h(R,x.colormap,q,Y);return c?he.tubeScale=c:(q===0&&(q=1),he.tubeScale=g*.5*Y/q),he};var k=i(6740),S=i(6405).createMesh;a.exports.createTubeMesh=function(x,M){return S(x,M,{shaders:k,traceType:"streamtube"})}},7827:function(a){a.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},7842:function(a,o,i){"use strict";var l=i(6330),u=i(1533),s=i(2651),f=i(6768),h=i(869),p=i(8697);a.exports=b;function b(m,w){if(l(m))return w?p(m,b(w)):[m[0].clone(),m[1].clone()];var T=0,y,k;if(u(m))y=m.clone();else if(typeof m=="string")y=f(m);else{if(m===0)return[s(0),s(1)];if(m===Math.floor(m))y=s(m);else{for(;m!==Math.floor(m);)m=m*Math.pow(2,256),T-=256;y=s(m)}}if(l(w))y.mul(w[1]),k=w[0].clone();else if(u(w))k=w.clone();else if(typeof w=="string")k=f(w);else if(!w)k=s(1);else if(w===Math.floor(w))k=s(w);else{for(;w!==Math.floor(w);)w=w*Math.pow(2,256),T+=256;k=s(w)}return T>0?y=y.ushln(T):T<0&&(k=k.ushln(-T)),h(y,k)}},7894:function(a){a.exports=o;function o(i){return i[0]=1,i[1]=0,i[2]=0,i[3]=0,i[4]=0,i[5]=1,i[6]=0,i[7]=0,i[8]=0,i[9]=0,i[10]=1,i[11]=0,i[12]=0,i[13]=0,i[14]=0,i[15]=1,i}},7932:function(a,o,i){var l=i(620);a.exports=l.slice().concat(["layout","centroid","smooth","case","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","uvec2","uvec3","uvec4","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","coherent","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","image1DShadow","image2DShadow","image1DArrayShadow","image2DArrayShadow","imageBuffer","iimageBuffer","uimageBuffer","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray"])},7960:function(a){a.exports=o;function o(i,l){var u=l[0]-i[0],s=l[1]-i[1],f=l[2]-i[2],h=l[3]-i[3];return u*u+s*s+f*f+h*h}},8105:function(a){"use strict";a.exports=i;var o={"lo===p0":l,"lo=p0)&&!(p1>=hi)":b};function i(m){return o[m]}function l(m,w,T,y,k,S,x){for(var M=2*m,d=M*T,_=d,g=T,c=w,A=m+w,v=T;y>v;++v,d+=M){var D=k[d+c];if(D===x)if(g===v)g+=1,_+=M;else{for(var E=0;M>E;++E){var R=k[d+E];k[d+E]=k[_],k[_++]=R}var N=S[v];S[v]=S[g],S[g++]=N}}return g}function u(m,w,T,y,k,S,x){for(var M=2*m,d=M*T,_=d,g=T,c=w,A=m+w,v=T;y>v;++v,d+=M){var D=k[d+c];if(DE;++E){var R=k[d+E];k[d+E]=k[_],k[_++]=R}var N=S[v];S[v]=S[g],S[g++]=N}}return g}function s(m,w,T,y,k,S,x){for(var M=2*m,d=M*T,_=d,g=T,c=w,A=m+w,v=T;y>v;++v,d+=M){var D=k[d+A];if(D<=x)if(g===v)g+=1,_+=M;else{for(var E=0;M>E;++E){var R=k[d+E];k[d+E]=k[_],k[_++]=R}var N=S[v];S[v]=S[g],S[g++]=N}}return g}function f(m,w,T,y,k,S,x){for(var M=2*m,d=M*T,_=d,g=T,c=w,A=m+w,v=T;y>v;++v,d+=M){var D=k[d+A];if(D<=x)if(g===v)g+=1,_+=M;else{for(var E=0;M>E;++E){var R=k[d+E];k[d+E]=k[_],k[_++]=R}var N=S[v];S[v]=S[g],S[g++]=N}}return g}function h(m,w,T,y,k,S,x){for(var M=2*m,d=M*T,_=d,g=T,c=w,A=m+w,v=T;y>v;++v,d+=M){var D=k[d+c],E=k[d+A];if(D<=x&&x<=E)if(g===v)g+=1,_+=M;else{for(var R=0;M>R;++R){var N=k[d+R];k[d+R]=k[_],k[_++]=N}var F=S[v];S[v]=S[g],S[g++]=F}}return g}function p(m,w,T,y,k,S,x){for(var M=2*m,d=M*T,_=d,g=T,c=w,A=m+w,v=T;y>v;++v,d+=M){var D=k[d+c],E=k[d+A];if(DR;++R){var N=k[d+R];k[d+R]=k[_],k[_++]=N}var F=S[v];S[v]=S[g],S[g++]=F}}return g}function b(m,w,T,y,k,S,x,M){for(var d=2*m,_=d*T,g=_,c=T,A=w,v=m+w,D=T;y>D;++D,_+=d){var E=k[_+A],R=k[_+v];if(!(E>=x)&&!(M>=R))if(c===D)c+=1,g+=d;else{for(var N=0;d>N;++N){var F=k[_+N];k[_+N]=k[g],k[g++]=F}var I=S[D];S[D]=S[c],S[c++]=I}}return c}},8107:function(a){a.exports=o;function o(i,l,u){return i[0]=Math.min(l[0],u[0]),i[1]=Math.min(l[1],u[1]),i[2]=Math.min(l[2],u[2]),i}},8116:function(a,o,i){"use strict";var l=i(7518),u=i(870);function s(h){this.bindVertexArrayOES=h.bindVertexArray.bind(h),this.createVertexArrayOES=h.createVertexArray.bind(h),this.deleteVertexArrayOES=h.deleteVertexArray.bind(h)}function f(h,p,b,m){var w=h.createVertexArray?new s(h):h.getExtension("OES_vertex_array_object"),T;return w?T=l(h,w):T=u(h),T.update(p,b,m),T}a.exports=f},8192:function(a,o,i){a.exports=f;var l=i(2825),u=i(3536),s=i(244);function f(h,p){var b=l(h[0],h[1],h[2]),m=l(p[0],p[1],p[2]);u(b,b),u(m,m);var w=s(b,m);return w>1?0:Math.acos(w)}},8210:function(a){"use strict";a.exports=i;function o(l,u){var s=l+u,f=s-l,h=s-f,p=u-f,b=l-h,m=b+p;return m?[m,s]:[s]}function i(l,u){var s=l.length|0,f=u.length|0;if(s===1&&f===1)return o(l[0],u[0]);var h=s+f,p=new Array(h),b=0,m=0,w=0,T=Math.abs,y=l[m],k=T(y),S=u[w],x=T(S),M,d;k=f?(M=y,m+=1,mb)for(var D=p[y],E=1/Math.sqrt(g*A),v=0;v<3;++v){var R=(v+1)%3,N=(v+2)%3;D[v]+=E*(c[R]*_[N]-c[N]*_[R])}}for(var m=0;mb)for(var E=1/Math.sqrt(F),v=0;v<3;++v)D[v]*=E;else for(var v=0;v<3;++v)D[v]=0}return p},o.faceNormals=function(u,s,f){for(var h=u.length,p=new Array(h),b=f===void 0?l:f,m=0;mb?M=1/Math.sqrt(M):M=0;for(var y=0;y<3;++y)x[y]*=M;p[m]=x}return p}},8418:function(a,o,i){"use strict";var l=i(5219),u=i(2762),s=i(8116),f=i(1888),h=i(6760),p=i(1283),b=i(9366),m=i(5964),w=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],T=ArrayBuffer,y=DataView;function k(Q){return T.isView(Q)&&!(Q instanceof y)}function S(Q){return Array.isArray(Q)||k(Q)}a.exports=ne;function x(Q,oe){var re=Q[0],H=Q[1],ee=Q[2],V=Q[3];return Q[0]=oe[0]*re+oe[4]*H+oe[8]*ee+oe[12]*V,Q[1]=oe[1]*re+oe[5]*H+oe[9]*ee+oe[13]*V,Q[2]=oe[2]*re+oe[6]*H+oe[10]*ee+oe[14]*V,Q[3]=oe[3]*re+oe[7]*H+oe[11]*ee+oe[15]*V,Q}function M(Q,oe,re,H){return x(H,H,re),x(H,H,oe),x(H,H,Q)}function d(Q,oe){this.index=Q,this.dataCoordinate=this.position=oe}function _(Q){return Q===!0||Q>1?1:Q}function g(Q,oe,re,H,ee,V,te,ue,ve,ke,Se,he){this.gl=Q,this.pixelRatio=1,this.shader=oe,this.orthoShader=re,this.projectShader=H,this.pointBuffer=ee,this.colorBuffer=V,this.glyphBuffer=te,this.idBuffer=ue,this.vao=ve,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=ke,this.pickOrthoShader=Se,this.pickProjectShader=he,this.points=[],this._selectResult=new d(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}var c=g.prototype;c.pickSlots=1,c.setPickBase=function(Q){this.pickId=Q},c.isTransparent=function(){if(this.hasAlpha)return!0;for(var Q=0;Q<3;++Q)if(this.axesProject[Q]&&this.projectHasAlpha)return!0;return!1},c.isOpaque=function(){if(!this.hasAlpha)return!0;for(var Q=0;Q<3;++Q)if(this.axesProject[Q]&&!this.projectHasAlpha)return!0;return!1};var A=[0,0],v=[0,0,0],D=[0,0,0],E=[0,0,0,1],R=[0,0,0,1],N=w.slice(),F=[0,0,0],I=[[0,0,0],[0,0,0]];function L(Q){return Q[0]=Q[1]=Q[2]=0,Q}function P(Q,oe){return Q[0]=oe[0],Q[1]=oe[1],Q[2]=oe[2],Q[3]=1,Q}function O(Q,oe,re,H){return Q[0]=oe[0],Q[1]=oe[1],Q[2]=oe[2],Q[re]=H,Q}function U(Q){for(var oe=I,re=0;re<2;++re)for(var H=0;H<3;++H)oe[re][H]=Math.max(Math.min(Q[re][H],1e8),-1e8);return oe}function X(Q,oe,re,H){var ee=oe.axesProject,V=oe.gl,te=Q.uniforms,ue=re.model||w,ve=re.view||w,ke=re.projection||w,Se=oe.axesBounds,he=U(oe.clipBounds),Ae;oe.axes&&oe.axes.lastCubeProps?Ae=oe.axes.lastCubeProps.axis:Ae=[1,1,1],A[0]=2/V.drawingBufferWidth,A[1]=2/V.drawingBufferHeight,Q.bind(),te.view=ve,te.projection=ke,te.screenSize=A,te.highlightId=oe.highlightId,te.highlightScale=oe.highlightScale,te.clipBounds=he,te.pickGroup=oe.pickId/255,te.pixelRatio=H;for(var Ce=0;Ce<3;++Ce)if(ee[Ce]){te.scale=oe.projectScale[Ce],te.opacity=oe.projectOpacity[Ce];for(var Pe=N,Ee=0;Ee<16;++Ee)Pe[Ee]=0;for(var Ee=0;Ee<4;++Ee)Pe[5*Ee]=1;Pe[5*Ce]=0,Ae[Ce]<0?Pe[12+Ce]=Se[0][Ce]:Pe[12+Ce]=Se[1][Ce],h(Pe,ue,Pe),te.model=Pe;var Ne=(Ce+1)%3,Ue=(Ce+2)%3,ge=L(v),we=L(D);ge[Ne]=1,we[Ue]=1;var Te=M(ke,ve,ue,P(E,ge)),me=M(ke,ve,ue,P(R,we));if(Math.abs(Te[1])>Math.abs(me[1])){var ye=Te;Te=me,me=ye,ye=ge,ge=we,we=ye;var pe=Ne;Ne=Ue,Ue=pe}Te[0]<0&&(ge[Ne]=-1),me[1]>0&&(we[Ue]=-1);for(var ce=0,xe=0,Ee=0;Ee<4;++Ee)ce+=Math.pow(ue[4*Ne+Ee],2),xe+=Math.pow(ue[4*Ue+Ee],2);ge[Ne]/=Math.sqrt(ce),we[Ue]/=Math.sqrt(xe),te.axes[0]=ge,te.axes[1]=we,te.fragClipBounds[0]=O(F,he[0],Ce,-1e8),te.fragClipBounds[1]=O(F,he[1],Ce,1e8),oe.vao.bind(),oe.vao.draw(V.TRIANGLES,oe.vertexCount),oe.lineWidth>0&&(V.lineWidth(oe.lineWidth*H),oe.vao.draw(V.LINES,oe.lineVertexCount,oe.vertexCount)),oe.vao.unbind()}}var $=[-1e8,-1e8,-1e8],j=[1e8,1e8,1e8],Y=[$,j];function q(Q,oe,re,H,ee,V,te){var ue=re.gl;if((V===re.projectHasAlpha||te)&&X(oe,re,H,ee),V===re.hasAlpha||te){Q.bind();var ve=Q.uniforms;ve.model=H.model||w,ve.view=H.view||w,ve.projection=H.projection||w,A[0]=2/ue.drawingBufferWidth,A[1]=2/ue.drawingBufferHeight,ve.screenSize=A,ve.highlightId=re.highlightId,ve.highlightScale=re.highlightScale,ve.fragClipBounds=Y,ve.clipBounds=re.axes.bounds,ve.opacity=re.opacity,ve.pickGroup=re.pickId/255,ve.pixelRatio=ee,re.vao.bind(),re.vao.draw(ue.TRIANGLES,re.vertexCount),re.lineWidth>0&&(ue.lineWidth(re.lineWidth*ee),re.vao.draw(ue.LINES,re.lineVertexCount,re.vertexCount)),re.vao.unbind()}}c.draw=function(Q){var oe=this.useOrtho?this.orthoShader:this.shader;q(oe,this.projectShader,this,Q,this.pixelRatio,!1,!1)},c.drawTransparent=function(Q){var oe=this.useOrtho?this.orthoShader:this.shader;q(oe,this.projectShader,this,Q,this.pixelRatio,!0,!1)},c.drawPick=function(Q){var oe=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;q(oe,this.pickProjectShader,this,Q,1,!0,!0)},c.pick=function(Q){if(!Q||Q.id!==this.pickId)return null;var oe=Q.value[2]+(Q.value[1]<<8)+(Q.value[0]<<16);if(oe>=this.pointCount||oe<0)return null;var re=this.points[oe],H=this._selectResult;H.index=oe;for(var ee=0;ee<3;++ee)H.position[ee]=H.dataCoordinate[ee]=re[ee];return H},c.highlight=function(Q){if(!Q)this.highlightId=[1,1,1,1];else{var oe=Q.index,re=oe&255,H=oe>>8&255,ee=oe>>16&255;this.highlightId=[re/255,H/255,ee/255,0]}};function K(Q,oe,re,H){var ee;S(Q)?oe0){var Be=0,Ye=Ue,Me=[0,0,0,1],Re=[0,0,0,1],Qe=S(Ae)&&S(Ae[0]),Ke=S(Ee)&&S(Ee[0]);e:for(var H=0;H0?1-xe[0][0]:er<0?1+xe[1][0]:1,nr*=nr>0?1-xe[0][1]:nr<0?1+xe[1][1]:1;for(var fr=[er,nr],ft=pe.cells||[],sr=pe.positions||[],me=0;me=f?(M=y,m+=1,m0?1:0}},8648:function(a,o,i){a.exports=i(783)},8692:function(a){a.exports=o;function o(i,l,u,s){var f=u[0],h=u[1],p=l[0]-f,b=l[1]-h,m=Math.sin(s),w=Math.cos(s);return i[0]=f+p*w-b*m,i[1]=h+p*m+b*w,i[2]=l[2],i}},8697:function(a,o,i){"use strict";var l=i(869);a.exports=u;function u(s,f){return l(s[0].mul(f[1]),s[1].mul(f[0]))}},8731:function(a,o,i){"use strict";a.exports=b;var l=i(8866);function u(m,w,T,y,k,S){this._gl=m,this._wrapper=w,this._index=T,this._locations=y,this._dimension=k,this._constFunc=S}var s=u.prototype;s.pointer=function(w,T,y,k){var S=this,x=S._gl,M=S._locations[S._index];x.vertexAttribPointer(M,S._dimension,w||x.FLOAT,!!T,y||0,k||0),x.enableVertexAttribArray(M)},s.set=function(m,w,T,y){return this._constFunc(this._locations[this._index],m,w,T,y)},Object.defineProperty(s,"location",{get:function(){return this._locations[this._index]},set:function(m){return m!==this._locations[this._index]&&(this._locations[this._index]=m|0,this._wrapper.program=null),m|0}});var f=[function(m,w,T){return T.length===void 0?m.vertexAttrib1f(w,T):m.vertexAttrib1fv(w,T)},function(m,w,T,y){return T.length===void 0?m.vertexAttrib2f(w,T,y):m.vertexAttrib2fv(w,T)},function(m,w,T,y,k){return T.length===void 0?m.vertexAttrib3f(w,T,y,k):m.vertexAttrib3fv(w,T)},function(m,w,T,y,k,S){return T.length===void 0?m.vertexAttrib4f(w,T,y,k,S):m.vertexAttrib4fv(w,T)}];function h(m,w,T,y,k,S,x){var M=f[k],d=new u(m,w,T,y,k,M);Object.defineProperty(S,x,{set:function(_){return m.disableVertexAttribArray(y[T]),M(m,y[T],_),_},get:function(){return d},enumerable:!0})}function p(m,w,T,y,k,S,x){for(var M=new Array(k),d=new Array(k),_=0;_=0){var c=_.charCodeAt(_.length-1)-48;if(c<2||c>4)throw new l("","Invalid data type for attribute "+d+": "+_);h(m,w,g[0],y,c,k,d)}else if(_.indexOf("mat")>=0){var c=_.charCodeAt(_.length-1)-48;if(c<2||c>4)throw new l("","Invalid data type for attribute "+d+": "+_);p(m,w,g,y,c,k,d)}else throw new l("","Unknown data type for attribute "+d+": "+_);break}}return k}},8828:function(a,o){"use strict";"use restrict";var i=32;o.INT_BITS=i,o.INT_MAX=2147483647,o.INT_MIN=-1<0)-(s<0)},o.abs=function(s){var f=s>>i-1;return(s^f)-f},o.min=function(s,f){return f^(s^f)&-(s65535)<<4,s>>>=f,h=(s>255)<<3,s>>>=h,f|=h,h=(s>15)<<2,s>>>=h,f|=h,h=(s>3)<<1,s>>>=h,f|=h,f|s>>1},o.log10=function(s){return s>=1e9?9:s>=1e8?8:s>=1e7?7:s>=1e6?6:s>=1e5?5:s>=1e4?4:s>=1e3?3:s>=100?2:s>=10?1:0},o.popCount=function(s){return s=s-(s>>>1&1431655765),s=(s&858993459)+(s>>>2&858993459),(s+(s>>>4)&252645135)*16843009>>>24};function l(s){var f=32;return s&=-s,s&&f--,s&65535&&(f-=16),s&16711935&&(f-=8),s&252645135&&(f-=4),s&858993459&&(f-=2),s&1431655765&&(f-=1),f}o.countTrailingZeros=l,o.nextPow2=function(s){return s+=s===0,--s,s|=s>>>1,s|=s>>>2,s|=s>>>4,s|=s>>>8,s|=s>>>16,s+1},o.prevPow2=function(s){return s|=s>>>1,s|=s>>>2,s|=s>>>4,s|=s>>>8,s|=s>>>16,s-(s>>>1)},o.parity=function(s){return s^=s>>>16,s^=s>>>8,s^=s>>>4,s&=15,27030>>>s&1};var u=new Array(256);(function(s){for(var f=0;f<256;++f){var h=f,p=f,b=7;for(h>>>=1;h;h>>>=1)p<<=1,p|=h&1,--b;s[f]=p<>>8&255]<<16|u[s>>>16&255]<<8|u[s>>>24&255]},o.interleave2=function(s,f){return s&=65535,s=(s|s<<8)&16711935,s=(s|s<<4)&252645135,s=(s|s<<2)&858993459,s=(s|s<<1)&1431655765,f&=65535,f=(f|f<<8)&16711935,f=(f|f<<4)&252645135,f=(f|f<<2)&858993459,f=(f|f<<1)&1431655765,s|f<<1},o.deinterleave2=function(s,f){return s=s>>>f&1431655765,s=(s|s>>>1)&858993459,s=(s|s>>>2)&252645135,s=(s|s>>>4)&16711935,s=(s|s>>>16)&65535,s<<16>>16},o.interleave3=function(s,f,h){return s&=1023,s=(s|s<<16)&4278190335,s=(s|s<<8)&251719695,s=(s|s<<4)&3272356035,s=(s|s<<2)&1227133513,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,s|=f<<1,h&=1023,h=(h|h<<16)&4278190335,h=(h|h<<8)&251719695,h=(h|h<<4)&3272356035,h=(h|h<<2)&1227133513,s|h<<2},o.deinterleave3=function(s,f){return s=s>>>f&1227133513,s=(s|s>>>2)&3272356035,s=(s|s>>>4)&251719695,s=(s|s>>>8)&4278190335,s=(s|s>>>16)&1023,s<<22>>22},o.nextCombination=function(s){var f=s|s-1;return f+1|(~f&-~f)-1>>>l(s)+1}},8866:function(a){function o(i,l,u){this.shortMessage=l||"",this.longMessage=u||"",this.rawError=i||"",this.message="gl-shader: "+(l||i||"")+(u?` +`+u:""),this.stack=new Error().stack}o.prototype=new Error,o.prototype.name="GLError",o.prototype.constructor=o,a.exports=o},8902:function(a,o,i){"use strict";var l=i(2478),u=i(3250)[3],s=0,f=1,h=2;a.exports=x;function p(M,d,_,g,c){this.a=M,this.b=d,this.idx=_,this.lowerIds=g,this.upperIds=c}function b(M,d,_,g){this.a=M,this.b=d,this.type=_,this.idx=g}function m(M,d){var _=M.a[0]-d.a[0]||M.a[1]-d.a[1]||M.type-d.type;return _||M.type!==s&&(_=u(M.a,M.b,d.b),_)?_:M.idx-d.idx}function w(M,d){return u(M.a,M.b,d)}function T(M,d,_,g,c){for(var A=l.lt(d,g,w),v=l.gt(d,g,w),D=A;D1&&u(_[R[F-2]],_[R[F-1]],g)>0;)M.push([R[F-1],R[F-2],c]),F-=1;R.length=F,R.push(c);for(var N=E.upperIds,F=N.length;F>1&&u(_[N[F-2]],_[N[F-1]],g)<0;)M.push([N[F-2],N[F-1],c]),F-=1;N.length=F,N.push(c)}}function y(M,d){var _;return M.a[0]E[0]&&c.push(new b(E,D,h,A),new b(D,E,f,A))}c.sort(m);for(var R=c[0].a[0]-(1+Math.abs(c[0].a[0]))*Math.pow(2,-52),N=[new p([R,1],[R,0],-1,[],[],[],[])],F=[],A=0,I=c.length;A0;){k=g.pop();for(var c=k.adjacent,A=0;A<=x;++A){var v=c[A];if(!(!v.boundary||v.lastVisited<=-M)){for(var D=v.vertices,E=0;E<=x;++E){var R=D[E];R<0?d[E]=S:d[E]=_[R]}var N=this.orient();if(N>0)return v;v.lastVisited=-M,N===0&&g.push(v)}}}return null},T.walk=function(k,S){var x=this.vertices.length-1,M=this.dimension,d=this.vertices,_=this.tuple,g=S?this.interior.length*Math.random()|0:this.interior.length-1,c=this.interior[g];e:for(;!c.boundary;){for(var A=c.vertices,v=c.adjacent,D=0;D<=M;++D)_[D]=d[A[D]];c.lastVisited=x;for(var D=0;D<=M;++D){var E=v[D];if(!(E.lastVisited>=x)){var R=_[D];_[D]=k;var N=this.orient();if(_[D]=R,N<0){c=E;continue e}else E.boundary?E.lastVisited=-x:E.lastVisited=x}}return}return c},T.addPeaks=function(k,S){var x=this.vertices.length-1,M=this.dimension,d=this.vertices,_=this.tuple,g=this.interior,c=this.simplices,A=[S];S.lastVisited=x,S.vertices[S.vertices.indexOf(-1)]=x,S.boundary=!1,g.push(S);for(var v=[];A.length>0;){var S=A.pop(),D=S.vertices,E=S.adjacent,R=D.indexOf(x);if(!(R<0)){for(var N=0;N<=M;++N)if(N!==R){var F=E[N];if(!(!F.boundary||F.lastVisited>=x)){var I=F.vertices;if(F.lastVisited!==-x){for(var L=0,P=0;P<=M;++P)I[P]<0?(L=P,_[P]=k):_[P]=d[I[P]];var O=this.orient();if(O>0){I[L]=x,F.boundary=!1,g.push(F),A.push(F),F.lastVisited=x;continue}else F.lastVisited=-x}var U=F.adjacent,X=D.slice(),$=E.slice(),j=new s(X,$,!0);c.push(j);var Y=U.indexOf(S);if(!(Y<0)){U[Y]=j,$[R]=F,X[N]=-1,$[N]=S,E[N]=j,j.flip();for(var P=0;P<=M;++P){var q=X[P];if(!(q<0||q===x)){for(var K=new Array(M-1),ne=0,Q=0;Q<=M;++Q){var oe=X[Q];oe<0||Q===P||(K[ne++]=oe)}v.push(new f(K,j,P))}}}}}}}v.sort(h);for(var N=0;N+1=0?g[A++]=c[D]:v=D&1;if(v===(k&1)){var E=g[0];g[0]=g[1],g[1]=E}S.push(g)}}return S};function y(k,S){var x=k.length;if(x===0)throw new Error("Must have at least d+1 points");var M=k[0].length;if(x<=M)throw new Error("Must input at least d+1 points");var d=k.slice(0,M+1),_=l.apply(void 0,d);if(_===0)throw new Error("Input not in general position");for(var g=new Array(M+1),c=0;c<=M;++c)g[c]=c;_<0&&(g[0]=1,g[1]=0);for(var A=new s(g,new Array(M+1),!1),v=A.adjacent,D=new Array(M+2),c=0;c<=M;++c){for(var E=g.slice(),R=0;R<=M;++R)R===c&&(E[R]=-1);var N=E[0];E[0]=E[1],E[1]=N;var F=new s(E,new Array(M+1),!0);v[c]=F,D[c]=F}D[M+1]=A;for(var c=0;c<=M;++c)for(var E=v[c].vertices,I=v[c].adjacent,R=0;R<=M;++R){var L=E[R];if(L<0){I[R]=A;continue}for(var P=0;P<=M;++P)v[P].vertices.indexOf(L)<0&&(I[R]=v[P])}for(var O=new w(M,d,D),U=!!S,c=M+1;c=1},y.isTransparent=function(){return this.opacity<1},y.pickSlots=1,y.setPickBase=function(_){this.pickId=_};function k(_){for(var g=m({colormap:_,nshades:256,format:"rgba"}),c=new Uint8Array(256*4),A=0;A<256;++A){for(var v=g[A],D=0;D<3;++D)c[4*A+D]=v[D];c[4*A+3]=v[3]*255}return b(c,[256,256,4],[4,0,1])}function S(_){for(var g=_.length,c=new Array(g),A=0;A0){var P=this.triShader;P.bind(),P.uniforms=R,this.triangleVAO.bind(),g.drawArrays(g.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},y.drawPick=function(_){_=_||{};for(var g=this.gl,c=_.model||w,A=_.view||w,v=_.projection||w,D=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],E=0;E<3;++E)D[0][E]=Math.max(D[0][E],this.clipBounds[0][E]),D[1][E]=Math.min(D[1][E],this.clipBounds[1][E]);this._model=[].slice.call(c),this._view=[].slice.call(A),this._projection=[].slice.call(v),this._resolution=[g.drawingBufferWidth,g.drawingBufferHeight];var R={model:c,view:A,projection:v,clipBounds:D,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},N=this.pickShader;N.bind(),N.uniforms=R,this.triangleCount>0&&(this.triangleVAO.bind(),g.drawArrays(g.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},y.pick=function(_){if(!_||_.id!==this.pickId)return null;var g=_.value[0]+256*_.value[1]+65536*_.value[2],c=this.cells[g],A=this.positions[c[1]].slice(0,3),v={position:A,dataCoordinate:A,index:Math.floor(c[1]/48)};return this.traceType==="cone"?v.index=Math.floor(c[1]/48):this.traceType==="streamtube"&&(v.intensity=this.intensity[c[1]],v.velocity=this.vectors[c[1]].slice(0,3),v.divergence=this.vectors[c[1]][3],v.index=g),v},y.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()};function x(_,g){var c=l(_,g.meshShader.vertex,g.meshShader.fragment,null,g.meshShader.attributes);return c.attributes.position.location=0,c.attributes.color.location=2,c.attributes.uv.location=3,c.attributes.vector.location=4,c}function M(_,g){var c=l(_,g.pickShader.vertex,g.pickShader.fragment,null,g.pickShader.attributes);return c.attributes.position.location=0,c.attributes.id.location=1,c.attributes.vector.location=4,c}function d(_,g,c){var A=c.shaders;arguments.length===1&&(g=_,_=g.gl);var v=x(_,A),D=M(_,A),E=f(_,b(new Uint8Array([255,255,255,255]),[1,1,4]));E.generateMipmap(),E.minFilter=_.LINEAR_MIPMAP_LINEAR,E.magFilter=_.LINEAR;var R=u(_),N=u(_),F=u(_),I=u(_),L=u(_),P=s(_,[{buffer:R,type:_.FLOAT,size:4},{buffer:L,type:_.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:F,type:_.FLOAT,size:4},{buffer:I,type:_.FLOAT,size:2},{buffer:N,type:_.FLOAT,size:4}]),O=new T(_,E,v,D,R,N,L,F,I,P,c.traceType||"cone");return O.update(g),O}a.exports=d},9127:function(a,o,i){"use strict";a.exports=s;var l=i(6204),u=i(5771);function s(f){return u(l(f))}},9131:function(a,o,i){var l=i(5177),u=i(9288);a.exports=s;function s(f,h){return h=h||1,f[0]=Math.random(),f[1]=Math.random(),f[2]=Math.random(),f[3]=Math.random(),l(f,f),u(f,f,h),f}},9165:function(a,o,i){"use strict";a.exports=T;var l=i(2762),u=i(8116),s=i(3436),f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function h(y,k,S,x){this.gl=y,this.shader=x,this.buffer=k,this.vao=S,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var p=h.prototype;p.isOpaque=function(){return!this.hasAlpha},p.isTransparent=function(){return this.hasAlpha},p.drawTransparent=p.draw=function(y){var k=this.gl,S=this.shader.uniforms;this.shader.bind();var x=S.view=y.view||f,M=S.projection=y.projection||f;S.model=y.model||f,S.clipBounds=this.clipBounds,S.opacity=this.opacity;var d=x[12],_=x[13],g=x[14],c=x[15],A=y._ortho||!1,v=A?2:1,D=v*this.pixelRatio*(M[3]*d+M[7]*_+M[11]*g+M[15]*c)/k.drawingBufferHeight;this.vao.bind();for(var E=0;E<3;++E)k.lineWidth(this.lineWidth[E]*this.pixelRatio),S.capSize=this.capSize[E]*D,this.lineCount[E]&&k.drawArrays(k.LINES,this.lineOffset[E],this.lineCount[E]);this.vao.unbind()};function b(y,k){for(var S=0;S<3;++S)y[0][S]=Math.min(y[0][S],k[S]),y[1][S]=Math.max(y[1][S],k[S])}var m=function(){for(var y=new Array(3),k=0;k<3;++k){for(var S=[],x=1;x<=2;++x)for(var M=-1;M<=1;M+=2){var d=(x+k)%3,_=[0,0,0];_[d]=M,S.push(_)}y[k]=S}return y}();function w(y,k,S,x){for(var M=m[x],d=0;d0){var R=A.slice();R[g]+=D[1][g],M.push(A[0],A[1],A[2],E[0],E[1],E[2],E[3],0,0,0,R[0],R[1],R[2],E[0],E[1],E[2],E[3],0,0,0),b(this.bounds,R),_+=2+w(M,R,E,g)}}}this.lineCount[g]=_-this.lineOffset[g]}this.buffer.update(M)}},p.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function T(y){var k=y.gl,S=l(k),x=u(k,[{buffer:S,type:k.FLOAT,size:3,offset:0,stride:40},{buffer:S,type:k.FLOAT,size:4,offset:12,stride:40},{buffer:S,type:k.FLOAT,size:3,offset:28,stride:40}]),M=s(k);M.attributes.position.location=0,M.attributes.color.location=1,M.attributes.offset.location=2;var d=new h(k,S,x,M);return d.update(y),d}},9215:function(a,o,i){"use strict";a.exports=b;var l=i(4769),u=i(2478);function s(m,w,T){return Math.min(w,Math.max(m,T))}function f(m,w,T){this.dimension=m.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var y=0;y=T-1)for(var _=S.length-1,c=m-w[T-1],g=0;g=T-1)for(var d=S.length-1,_=m-w[T-1],g=0;g=0;--T)if(m[--w])return!1;return!0},h.jump=function(m){var w=this.lastT(),T=this.dimension;if(!(m0;--g)y.push(s(M[g-1],d[g-1],arguments[g])),k.push(0)}},h.push=function(m){var w=this.lastT(),T=this.dimension;if(!(m1e-6?1/x:0;this._time.push(m);for(var c=T;c>0;--c){var A=s(d[c-1],_[c-1],arguments[c]);y.push(A),k.push((A-y[S++])*g)}}},h.set=function(m){var w=this.dimension;if(!(m0;--M)T.push(s(S[M-1],x[M-1],arguments[M])),y.push(0)}},h.move=function(m){var w=this.lastT(),T=this.dimension;if(!(m<=w||arguments.length!==T+1)){var y=this._state,k=this._velocity,S=y.length-this.dimension,x=this.bounds,M=x[0],d=x[1],_=m-w,g=_>1e-6?1/_:0;this._time.push(m);for(var c=T;c>0;--c){var A=arguments[c];y.push(s(M[c-1],d[c-1],y[S++]+A)),k.push(A*g)}}},h.idle=function(m){var w=this.lastT();if(!(m=0;--g)y.push(s(M[g],d[g],y[S]+_*k[S])),k.push(0),S+=1}};function p(m){for(var w=new Array(m),T=0;T1&&f.indexOf("Macintosh")!==-1&&f.indexOf("Safari")!==-1&&(h=!0),h}},9226:function(a){a.exports=o;function o(i,l){return i[0]=Math.ceil(l[0]),i[1]=Math.ceil(l[1]),i[2]=Math.ceil(l[2]),i}},9265:function(a){a.exports=o;function o(i,l){return i[0]===l[0]&&i[1]===l[1]&&i[2]===l[2]}},9288:function(a){a.exports=o;function o(i,l,u){return i[0]=l[0]*u,i[1]=l[1]*u,i[2]=l[2]*u,i[3]=l[3]*u,i}},9346:function(a){"use strict";var o=new Float64Array(4),i=new Float64Array(4),l=new Float64Array(4);function u(s,f,h,p,b){o.length=w?(c=1,v=w+2*k+x):(c=-k/w,v=k*c+x)):(c=0,S>=0?(A=0,v=x):-S>=y?(A=1,v=y+2*S+x):(A=-S/y,v=S*A+x));else if(A<0)A=0,k>=0?(c=0,v=x):-k>=w?(c=1,v=w+2*k+x):(c=-k/w,v=k*c+x);else{var D=1/g;c*=D,A*=D,v=c*(w*c+T*A+2*k)+A*(T*c+y*A+2*S)+x}else{var E,R,N,F;c<0?(E=T+k,R=y+S,R>E?(N=R-E,F=w-2*T+y,N>=F?(c=1,A=0,v=w+2*k+x):(c=N/F,A=1-c,v=c*(w*c+T*A+2*k)+A*(T*c+y*A+2*S)+x)):(c=0,R<=0?(A=1,v=y+2*S+x):S>=0?(A=0,v=x):(A=-S/y,v=S*A+x))):A<0?(E=T+S,R=w+k,R>E?(N=R-E,F=w-2*T+y,N>=F?(A=1,c=0,v=y+2*S+x):(A=N/F,c=1-A,v=c*(w*c+T*A+2*k)+A*(T*c+y*A+2*S)+x)):(A=0,R<=0?(c=1,v=w+2*k+x):k>=0?(c=0,v=x):(c=-k/w,v=k*c+x))):(N=y+S-T-k,N<=0?(c=0,A=1,v=y+2*S+x):(F=w-2*T+y,N>=F?(c=1,A=0,v=w+2*k+x):(c=N/F,A=1-c,v=c*(w*c+T*A+2*k)+A*(T*c+y*A+2*S)+x)))}for(var I=1-c-A,m=0;mS)for(y=S;yk)for(y=k;y=0){for(var I=F.type.charAt(F.type.length-1)|0,L=new Array(I),P=0;P=0;)O+=1;R[N]=O}var U=new Array(S.length);function X(){d.program=f.program(_,d._vref,d._fref,E,R);for(var $=0;$re&&ee>0){var V=(H[ee][0]-re)/(H[ee][0]-H[ee-1][0]);return H[ee][1]*(1-V)+V*H[ee-1][1]}}return 1}var P=[0,0,0],O={showSurface:!1,showContour:!1,projections:[v.slice(),v.slice(),v.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function U(re,H){var ee,V,te,ue=H.axes&&H.axes.lastCubeProps.axis||P,ve=H.showSurface,ke=H.showContour;for(ee=0;ee<3;++ee)for(ve=ve||H.surfaceProject[ee],V=0;V<3;++V)ke=ke||H.contourProject[ee][V];for(ee=0;ee<3;++ee){var Se=O.projections[ee];for(V=0;V<16;++V)Se[V]=0;for(V=0;V<4;++V)Se[5*V]=1;Se[5*ee]=0,Se[12+ee]=H.axesBounds[+(ue[ee]>0)][ee],y(Se,re.model,Se);var he=O.clipBounds[ee];for(te=0;te<2;++te)for(V=0;V<3;++V)he[te][V]=re.clipBounds[te][V];he[0][ee]=-1e8,he[1][ee]=1e8}return O.showSurface=ve,O.showContour=ke,O}var X={model:v,view:v,projection:v,inverseModel:v.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},$=v.slice(),j=[1,0,0,0,1,0,0,0,1];function Y(re,H){re=re||{};var ee=this.gl;ee.disable(ee.CULL_FACE),this._colorMap.bind(0);var V=X;V.model=re.model||v,V.view=re.view||v,V.projection=re.projection||v,V.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],V.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],V.objectOffset=this.objectOffset,V.contourColor=this.contourColor[0],V.inverseModel=k(V.inverseModel,V.model);for(var te=0;te<2;++te)for(var ue=V.clipBounds[te],ve=0;ve<3;++ve)ue[ve]=Math.min(Math.max(this.clipBounds[te][ve],-1e8),1e8);V.kambient=this.ambientLight,V.kdiffuse=this.diffuseLight,V.kspecular=this.specularLight,V.roughness=this.roughness,V.fresnel=this.fresnel,V.opacity=this.opacity,V.height=0,V.permutation=j,V.vertexColor=this.vertexColor;var ke=$;for(y(ke,V.view,V.model),y(ke,V.projection,ke),k(ke,ke),te=0;te<3;++te)V.eyePosition[te]=ke[12+te]/ke[15];var Se=ke[15];for(te=0;te<3;++te)Se+=this.lightPosition[te]*ke[4*te+3];for(te=0;te<3;++te){var he=ke[12+te];for(ve=0;ve<3;++ve)he+=ke[4*ve+te]*this.lightPosition[ve];V.lightPosition[te]=he/Se}var Ae=U(V,this);if(Ae.showSurface){for(this._shader.bind(),this._shader.uniforms=V,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(ee.TRIANGLES,this._vertexCount),te=0;te<3;++te)!this.surfaceProject[te]||!this.vertexCount||(this._shader.uniforms.model=Ae.projections[te],this._shader.uniforms.clipBounds=Ae.clipBounds[te],this._vao.draw(ee.TRIANGLES,this._vertexCount));this._vao.unbind()}if(Ae.showContour){var Ce=this._contourShader;V.kambient=1,V.kdiffuse=0,V.kspecular=0,V.opacity=1,Ce.bind(),Ce.uniforms=V;var Pe=this._contourVAO;for(Pe.bind(),te=0;te<3;++te)for(Ce.uniforms.permutation=E[te],ee.lineWidth(this.contourWidth[te]*this.pixelRatio),ve=0;ve>4)/16)/255,te=Math.floor(V),ue=V-te,ve=H[1]*(re.value[1]+(re.value[2]&15)/16)/255,ke=Math.floor(ve),Se=ve-ke;te+=1,ke+=1;var he=ee.position;he[0]=he[1]=he[2]=0;for(var Ae=0;Ae<2;++Ae)for(var Ce=Ae?ue:1-ue,Pe=0;Pe<2;++Pe)for(var Ee=Pe?Se:1-Se,Ne=te+Ae,Ue=ke+Pe,ge=Ce*Ee,we=0;we<3;++we)he[we]+=this._field[we].get(Ne,Ue)*ge;for(var Te=this._pickResult.level,me=0;me<3;++me)if(Te[me]=S.le(this.contourLevels[me],he[me]),Te[me]<0)this.contourLevels[me].length>0&&(Te[me]=0);else if(Te[me]Math.abs(pe-he[me])&&(Te[me]+=1)}for(ee.index[0]=ue<.5?te:te+1,ee.index[1]=Se<.5?ke:ke+1,ee.uv[0]=V/H[0],ee.uv[1]=ve/H[1],we=0;we<3;++we)ee.dataCoordinate[we]=this._field[we].get(ee.index[0],ee.index[1]);return ee},I.padField=function(re,H){var ee=H.shape.slice(),V=re.shape.slice();b.assign(re.lo(1,1).hi(ee[0],ee[1]),H),b.assign(re.lo(1).hi(ee[0],1),H.hi(ee[0],1)),b.assign(re.lo(1,V[1]-1).hi(ee[0],1),H.lo(0,ee[1]-1).hi(ee[0],1)),b.assign(re.lo(0,1).hi(1,ee[1]),H.hi(1)),b.assign(re.lo(V[0]-1,1).hi(1,ee[1]),H.lo(ee[0]-1)),re.set(0,0,H.get(0,0)),re.set(0,V[1]-1,H.get(0,ee[1]-1)),re.set(V[0]-1,0,H.get(ee[0]-1,0)),re.set(V[0]-1,V[1]-1,H.get(ee[0]-1,ee[1]-1))};function K(re,H){return Array.isArray(re)?[H(re[0]),H(re[1]),H(re[2])]:[H(re),H(re),H(re)]}function ne(re){return Array.isArray(re)?re.length===3?[re[0],re[1],re[2],1]:[re[0],re[1],re[2],re[3]]:[0,0,0,1]}function Q(re){if(Array.isArray(re)){if(Array.isArray(re))return[ne(re[0]),ne(re[1]),ne(re[2])];var H=ne(re);return[H.slice(),H.slice(),H.slice()]}}I.update=function(re){re=re||{},this.objectOffset=re.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in re&&(this.contourWidth=K(re.contourWidth,Number)),"showContour"in re&&(this.showContour=K(re.showContour,Boolean)),"showSurface"in re&&(this.showSurface=!!re.showSurface),"contourTint"in re&&(this.contourTint=K(re.contourTint,Boolean)),"contourColor"in re&&(this.contourColor=Q(re.contourColor)),"contourProject"in re&&(this.contourProject=K(re.contourProject,function(wa){return K(wa,Boolean)})),"surfaceProject"in re&&(this.surfaceProject=re.surfaceProject),"dynamicColor"in re&&(this.dynamicColor=Q(re.dynamicColor)),"dynamicTint"in re&&(this.dynamicTint=K(re.dynamicTint,Number)),"dynamicWidth"in re&&(this.dynamicWidth=K(re.dynamicWidth,Number)),"opacity"in re&&(this.opacity=re.opacity),"opacityscale"in re&&(this.opacityscale=re.opacityscale),"colorBounds"in re&&(this.colorBounds=re.colorBounds),"vertexColor"in re&&(this.vertexColor=re.vertexColor?1:0),"colormap"in re&&this._colorMap.setPixels(this.genColormap(re.colormap,this.opacityscale));var H=re.field||re.coords&&re.coords[2]||null,ee=!1;if(H||(this._field[2].shape[0]||this._field[2].shape[2]?H=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):H=this._field[2].hi(0,0)),"field"in re||"coords"in re){var V=(H.shape[0]+2)*(H.shape[1]+2);V>this._field[2].data.length&&(h.freeFloat(this._field[2].data),this._field[2].data=h.mallocFloat(l.nextPow2(V))),this._field[2]=w(this._field[2].data,[H.shape[0]+2,H.shape[1]+2]),this.padField(this._field[2],H),this.shape=H.shape.slice();for(var te=this.shape,ue=0;ue<2;++ue)this._field[2].size>this._field[ue].data.length&&(h.freeFloat(this._field[ue].data),this._field[ue].data=h.mallocFloat(this._field[2].size)),this._field[ue]=w(this._field[ue].data,[te[0]+2,te[1]+2]);if(re.coords){var ve=re.coords;if(!Array.isArray(ve)||ve.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(ue=0;ue<2;++ue){var ke=ve[ue];for(Pe=0;Pe<2;++Pe)if(ke.shape[Pe]!==te[Pe])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[ue],ke)}}else if(re.ticks){var Se=re.ticks;if(!Array.isArray(Se)||Se.length!==2)throw new Error("gl-surface: invalid ticks");for(ue=0;ue<2;++ue){var he=Se[ue];if((Array.isArray(he)||he.length)&&(he=w(he)),he.shape[0]!==te[ue])throw new Error("gl-surface: invalid tick length");var Ae=w(he.data,te);Ae.stride[ue]=he.stride[0],Ae.stride[ue^1]=0,this.padField(this._field[ue],Ae)}}else{for(ue=0;ue<2;++ue){var Ce=[0,0];Ce[ue]=1,this._field[ue]=w(this._field[ue].data,[te[0]+2,te[1]+2],Ce,0)}this._field[0].set(0,0,0);for(var Pe=0;Pe0){for(var Qn=0;Qn<5;++Qn)br.pop();Qe-=1}continue e}}}ft.push(Qe)}this._contourOffsets[Sr]=Ar,this._contourCounts[Sr]=ft}var In=h.mallocFloat(br.length);for(ue=0;ue=0&&(g=d|0,_+=A*g,c-=g),new S(this.data,c,A,_)},x.step=function(d){var _=this.shape[0],g=this.stride[0],c=this.offset,A=0,v=Math.ceil;return typeof d=="number"&&(A=d|0,A<0?(c+=g*(_-1),_=v(-_/A)):_=v(_/A),g*=A),new S(this.data,_,g,c)},x.transpose=function(d){d=d===void 0?0:d|0;var _=this.shape,g=this.stride;return new S(this.data,_[d],g[d],this.offset)},x.pick=function(d){var _=[],g=[],c=this.offset;typeof d=="number"&&d>=0?c=c+this.stride[0]*d|0:(_.push(this.shape[0]),g.push(this.stride[0]));var A=y[_.length+1];return A(this.data,_,g,c)},function(d,_,g,c){return new S(d,_[0],g[0],c)}},2:function(T,y,k){function S(M,d,_,g,c,A){this.data=M,this.shape=[d,_],this.stride=[g,c],this.offset=A|0}var x=S.prototype;return x.dtype=T,x.dimension=2,Object.defineProperty(x,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(x,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),x.set=function(d,_,g){return T==="generic"?this.data.set(this.offset+this.stride[0]*d+this.stride[1]*_,g):this.data[this.offset+this.stride[0]*d+this.stride[1]*_]=g},x.get=function(d,_){return T==="generic"?this.data.get(this.offset+this.stride[0]*d+this.stride[1]*_):this.data[this.offset+this.stride[0]*d+this.stride[1]*_]},x.index=function(d,_){return this.offset+this.stride[0]*d+this.stride[1]*_},x.hi=function(d,_){return new S(this.data,typeof d!="number"||d<0?this.shape[0]:d|0,typeof _!="number"||_<0?this.shape[1]:_|0,this.stride[0],this.stride[1],this.offset)},x.lo=function(d,_){var g=this.offset,c=0,A=this.shape[0],v=this.shape[1],D=this.stride[0],E=this.stride[1];return typeof d=="number"&&d>=0&&(c=d|0,g+=D*c,A-=c),typeof _=="number"&&_>=0&&(c=_|0,g+=E*c,v-=c),new S(this.data,A,v,D,E,g)},x.step=function(d,_){var g=this.shape[0],c=this.shape[1],A=this.stride[0],v=this.stride[1],D=this.offset,E=0,R=Math.ceil;return typeof d=="number"&&(E=d|0,E<0?(D+=A*(g-1),g=R(-g/E)):g=R(g/E),A*=E),typeof _=="number"&&(E=_|0,E<0?(D+=v*(c-1),c=R(-c/E)):c=R(c/E),v*=E),new S(this.data,g,c,A,v,D)},x.transpose=function(d,_){d=d===void 0?0:d|0,_=_===void 0?1:_|0;var g=this.shape,c=this.stride;return new S(this.data,g[d],g[_],c[d],c[_],this.offset)},x.pick=function(d,_){var g=[],c=[],A=this.offset;typeof d=="number"&&d>=0?A=A+this.stride[0]*d|0:(g.push(this.shape[0]),c.push(this.stride[0])),typeof _=="number"&&_>=0?A=A+this.stride[1]*_|0:(g.push(this.shape[1]),c.push(this.stride[1]));var v=y[g.length+1];return v(this.data,g,c,A)},function(d,_,g,c){return new S(d,_[0],_[1],g[0],g[1],c)}},3:function(T,y,k){function S(M,d,_,g,c,A,v,D){this.data=M,this.shape=[d,_,g],this.stride=[c,A,v],this.offset=D|0}var x=S.prototype;return x.dtype=T,x.dimension=3,Object.defineProperty(x,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(x,"order",{get:function(){var d=Math.abs(this.stride[0]),_=Math.abs(this.stride[1]),g=Math.abs(this.stride[2]);return d>_?_>g?[2,1,0]:d>g?[1,2,0]:[1,0,2]:d>g?[2,0,1]:g>_?[0,1,2]:[0,2,1]}}),x.set=function(d,_,g,c){return T==="generic"?this.data.set(this.offset+this.stride[0]*d+this.stride[1]*_+this.stride[2]*g,c):this.data[this.offset+this.stride[0]*d+this.stride[1]*_+this.stride[2]*g]=c},x.get=function(d,_,g){return T==="generic"?this.data.get(this.offset+this.stride[0]*d+this.stride[1]*_+this.stride[2]*g):this.data[this.offset+this.stride[0]*d+this.stride[1]*_+this.stride[2]*g]},x.index=function(d,_,g){return this.offset+this.stride[0]*d+this.stride[1]*_+this.stride[2]*g},x.hi=function(d,_,g){return new S(this.data,typeof d!="number"||d<0?this.shape[0]:d|0,typeof _!="number"||_<0?this.shape[1]:_|0,typeof g!="number"||g<0?this.shape[2]:g|0,this.stride[0],this.stride[1],this.stride[2],this.offset)},x.lo=function(d,_,g){var c=this.offset,A=0,v=this.shape[0],D=this.shape[1],E=this.shape[2],R=this.stride[0],N=this.stride[1],F=this.stride[2];return typeof d=="number"&&d>=0&&(A=d|0,c+=R*A,v-=A),typeof _=="number"&&_>=0&&(A=_|0,c+=N*A,D-=A),typeof g=="number"&&g>=0&&(A=g|0,c+=F*A,E-=A),new S(this.data,v,D,E,R,N,F,c)},x.step=function(d,_,g){var c=this.shape[0],A=this.shape[1],v=this.shape[2],D=this.stride[0],E=this.stride[1],R=this.stride[2],N=this.offset,F=0,I=Math.ceil;return typeof d=="number"&&(F=d|0,F<0?(N+=D*(c-1),c=I(-c/F)):c=I(c/F),D*=F),typeof _=="number"&&(F=_|0,F<0?(N+=E*(A-1),A=I(-A/F)):A=I(A/F),E*=F),typeof g=="number"&&(F=g|0,F<0?(N+=R*(v-1),v=I(-v/F)):v=I(v/F),R*=F),new S(this.data,c,A,v,D,E,R,N)},x.transpose=function(d,_,g){d=d===void 0?0:d|0,_=_===void 0?1:_|0,g=g===void 0?2:g|0;var c=this.shape,A=this.stride;return new S(this.data,c[d],c[_],c[g],A[d],A[_],A[g],this.offset)},x.pick=function(d,_,g){var c=[],A=[],v=this.offset;typeof d=="number"&&d>=0?v=v+this.stride[0]*d|0:(c.push(this.shape[0]),A.push(this.stride[0])),typeof _=="number"&&_>=0?v=v+this.stride[1]*_|0:(c.push(this.shape[1]),A.push(this.stride[1])),typeof g=="number"&&g>=0?v=v+this.stride[2]*g|0:(c.push(this.shape[2]),A.push(this.stride[2]));var D=y[c.length+1];return D(this.data,c,A,v)},function(d,_,g,c){return new S(d,_[0],_[1],_[2],g[0],g[1],g[2],c)}},4:function(T,y,k){function S(M,d,_,g,c,A,v,D,E,R){this.data=M,this.shape=[d,_,g,c],this.stride=[A,v,D,E],this.offset=R|0}var x=S.prototype;return x.dtype=T,x.dimension=4,Object.defineProperty(x,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(x,"order",{get:k}),x.set=function(d,_,g,c,A){return T==="generic"?this.data.set(this.offset+this.stride[0]*d+this.stride[1]*_+this.stride[2]*g+this.stride[3]*c,A):this.data[this.offset+this.stride[0]*d+this.stride[1]*_+this.stride[2]*g+this.stride[3]*c]=A},x.get=function(d,_,g,c){return T==="generic"?this.data.get(this.offset+this.stride[0]*d+this.stride[1]*_+this.stride[2]*g+this.stride[3]*c):this.data[this.offset+this.stride[0]*d+this.stride[1]*_+this.stride[2]*g+this.stride[3]*c]},x.index=function(d,_,g,c){return this.offset+this.stride[0]*d+this.stride[1]*_+this.stride[2]*g+this.stride[3]*c},x.hi=function(d,_,g,c){return new S(this.data,typeof d!="number"||d<0?this.shape[0]:d|0,typeof _!="number"||_<0?this.shape[1]:_|0,typeof g!="number"||g<0?this.shape[2]:g|0,typeof c!="number"||c<0?this.shape[3]:c|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},x.lo=function(d,_,g,c){var A=this.offset,v=0,D=this.shape[0],E=this.shape[1],R=this.shape[2],N=this.shape[3],F=this.stride[0],I=this.stride[1],L=this.stride[2],P=this.stride[3];return typeof d=="number"&&d>=0&&(v=d|0,A+=F*v,D-=v),typeof _=="number"&&_>=0&&(v=_|0,A+=I*v,E-=v),typeof g=="number"&&g>=0&&(v=g|0,A+=L*v,R-=v),typeof c=="number"&&c>=0&&(v=c|0,A+=P*v,N-=v),new S(this.data,D,E,R,N,F,I,L,P,A)},x.step=function(d,_,g,c){var A=this.shape[0],v=this.shape[1],D=this.shape[2],E=this.shape[3],R=this.stride[0],N=this.stride[1],F=this.stride[2],I=this.stride[3],L=this.offset,P=0,O=Math.ceil;return typeof d=="number"&&(P=d|0,P<0?(L+=R*(A-1),A=O(-A/P)):A=O(A/P),R*=P),typeof _=="number"&&(P=_|0,P<0?(L+=N*(v-1),v=O(-v/P)):v=O(v/P),N*=P),typeof g=="number"&&(P=g|0,P<0?(L+=F*(D-1),D=O(-D/P)):D=O(D/P),F*=P),typeof c=="number"&&(P=c|0,P<0?(L+=I*(E-1),E=O(-E/P)):E=O(E/P),I*=P),new S(this.data,A,v,D,E,R,N,F,I,L)},x.transpose=function(d,_,g,c){d=d===void 0?0:d|0,_=_===void 0?1:_|0,g=g===void 0?2:g|0,c=c===void 0?3:c|0;var A=this.shape,v=this.stride;return new S(this.data,A[d],A[_],A[g],A[c],v[d],v[_],v[g],v[c],this.offset)},x.pick=function(d,_,g,c){var A=[],v=[],D=this.offset;typeof d=="number"&&d>=0?D=D+this.stride[0]*d|0:(A.push(this.shape[0]),v.push(this.stride[0])),typeof _=="number"&&_>=0?D=D+this.stride[1]*_|0:(A.push(this.shape[1]),v.push(this.stride[1])),typeof g=="number"&&g>=0?D=D+this.stride[2]*g|0:(A.push(this.shape[2]),v.push(this.stride[2])),typeof c=="number"&&c>=0?D=D+this.stride[3]*c|0:(A.push(this.shape[3]),v.push(this.stride[3]));var E=y[A.length+1];return E(this.data,A,v,D)},function(d,_,g,c){return new S(d,_[0],_[1],_[2],_[3],g[0],g[1],g[2],g[3],c)}},5:function(y,k,S){function x(d,_,g,c,A,v,D,E,R,N,F,I){this.data=d,this.shape=[_,g,c,A,v],this.stride=[D,E,R,N,F],this.offset=I|0}var M=x.prototype;return M.dtype=y,M.dimension=5,Object.defineProperty(M,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(M,"order",{get:S}),M.set=function(_,g,c,A,v,D){return y==="generic"?this.data.set(this.offset+this.stride[0]*_+this.stride[1]*g+this.stride[2]*c+this.stride[3]*A+this.stride[4]*v,D):this.data[this.offset+this.stride[0]*_+this.stride[1]*g+this.stride[2]*c+this.stride[3]*A+this.stride[4]*v]=D},M.get=function(_,g,c,A,v){return y==="generic"?this.data.get(this.offset+this.stride[0]*_+this.stride[1]*g+this.stride[2]*c+this.stride[3]*A+this.stride[4]*v):this.data[this.offset+this.stride[0]*_+this.stride[1]*g+this.stride[2]*c+this.stride[3]*A+this.stride[4]*v]},M.index=function(_,g,c,A,v){return this.offset+this.stride[0]*_+this.stride[1]*g+this.stride[2]*c+this.stride[3]*A+this.stride[4]*v},M.hi=function(_,g,c,A,v){return new x(this.data,typeof _!="number"||_<0?this.shape[0]:_|0,typeof g!="number"||g<0?this.shape[1]:g|0,typeof c!="number"||c<0?this.shape[2]:c|0,typeof A!="number"||A<0?this.shape[3]:A|0,typeof v!="number"||v<0?this.shape[4]:v|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},M.lo=function(_,g,c,A,v){var D=this.offset,E=0,R=this.shape[0],N=this.shape[1],F=this.shape[2],I=this.shape[3],L=this.shape[4],P=this.stride[0],O=this.stride[1],U=this.stride[2],X=this.stride[3],$=this.stride[4];return typeof _=="number"&&_>=0&&(E=_|0,D+=P*E,R-=E),typeof g=="number"&&g>=0&&(E=g|0,D+=O*E,N-=E),typeof c=="number"&&c>=0&&(E=c|0,D+=U*E,F-=E),typeof A=="number"&&A>=0&&(E=A|0,D+=X*E,I-=E),typeof v=="number"&&v>=0&&(E=v|0,D+=$*E,L-=E),new x(this.data,R,N,F,I,L,P,O,U,X,$,D)},M.step=function(_,g,c,A,v){var D=this.shape[0],E=this.shape[1],R=this.shape[2],N=this.shape[3],F=this.shape[4],I=this.stride[0],L=this.stride[1],P=this.stride[2],O=this.stride[3],U=this.stride[4],X=this.offset,$=0,j=Math.ceil;return typeof _=="number"&&($=_|0,$<0?(X+=I*(D-1),D=j(-D/$)):D=j(D/$),I*=$),typeof g=="number"&&($=g|0,$<0?(X+=L*(E-1),E=j(-E/$)):E=j(E/$),L*=$),typeof c=="number"&&($=c|0,$<0?(X+=P*(R-1),R=j(-R/$)):R=j(R/$),P*=$),typeof A=="number"&&($=A|0,$<0?(X+=O*(N-1),N=j(-N/$)):N=j(N/$),O*=$),typeof v=="number"&&($=v|0,$<0?(X+=U*(F-1),F=j(-F/$)):F=j(F/$),U*=$),new x(this.data,D,E,R,N,F,I,L,P,O,U,X)},M.transpose=function(_,g,c,A,v){_=_===void 0?0:_|0,g=g===void 0?1:g|0,c=c===void 0?2:c|0,A=A===void 0?3:A|0,v=v===void 0?4:v|0;var D=this.shape,E=this.stride;return new x(this.data,D[_],D[g],D[c],D[A],D[v],E[_],E[g],E[c],E[A],E[v],this.offset)},M.pick=function(_,g,c,A,v){var D=[],E=[],R=this.offset;typeof _=="number"&&_>=0?R=R+this.stride[0]*_|0:(D.push(this.shape[0]),E.push(this.stride[0])),typeof g=="number"&&g>=0?R=R+this.stride[1]*g|0:(D.push(this.shape[1]),E.push(this.stride[1])),typeof c=="number"&&c>=0?R=R+this.stride[2]*c|0:(D.push(this.shape[2]),E.push(this.stride[2])),typeof A=="number"&&A>=0?R=R+this.stride[3]*A|0:(D.push(this.shape[3]),E.push(this.stride[3])),typeof v=="number"&&v>=0?R=R+this.stride[4]*v|0:(D.push(this.shape[4]),E.push(this.stride[4]));var N=k[D.length+1];return N(this.data,D,E,R)},function(_,g,c,A){return new x(_,g[0],g[1],g[2],g[3],g[4],c[0],c[1],c[2],c[3],c[4],A)}}};function p(T,y){var k=y===-1?"T":String(y),S=h[k];return y===-1?S(T):y===0?S(T,m[T][0]):S(T,m[T],f)}function b(T){if(l(T))return"buffer";if(u)switch(Object.prototype.toString.call(T)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(T)?"array":"generic"}var m={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function w(T,y,k,S){if(T===void 0){var c=m.array[0];return c([])}else typeof T=="number"&&(T=[T]);y===void 0&&(y=[T.length]);var x=y.length;if(k===void 0){k=new Array(x);for(var M=x-1,d=1;M>=0;--M)k[M]=d,d*=y[M]}if(S===void 0){S=0;for(var M=0;M1e-6?(k[0]=x/g,k[1]=M/g,k[2]=d/g,k[3]=_/g):(k[0]=k[1]=k[2]=0,k[3]=1)}function w(k,S,x){this.radius=l([x]),this.center=l(S),this.rotation=l(k),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var T=w.prototype;T.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},T.recalcMatrix=function(k){this.radius.curve(k),this.center.curve(k),this.rotation.curve(k);var S=this.computedRotation;m(S,S);var x=this.computedMatrix;s(x,S);var M=this.computedCenter,d=this.computedEye,_=this.computedUp,g=Math.exp(this.computedRadius[0]);d[0]=M[0]+g*x[2],d[1]=M[1]+g*x[6],d[2]=M[2]+g*x[10],_[0]=x[1],_[1]=x[5],_[2]=x[9];for(var c=0;c<3;++c){for(var A=0,v=0;v<3;++v)A+=x[c+4*v]*d[v];x[12+c]=-A}},T.getMatrix=function(k,S){this.recalcMatrix(k);var x=this.computedMatrix;if(S){for(var M=0;M<16;++M)S[M]=x[M];return S}return x},T.idle=function(k){this.center.idle(k),this.radius.idle(k),this.rotation.idle(k)},T.flush=function(k){this.center.flush(k),this.radius.flush(k),this.rotation.flush(k)},T.pan=function(k,S,x,M){S=S||0,x=x||0,M=M||0,this.recalcMatrix(k);var d=this.computedMatrix,_=d[1],g=d[5],c=d[9],A=p(_,g,c);_/=A,g/=A,c/=A;var v=d[0],D=d[4],E=d[8],R=v*_+D*g+E*c;v-=_*R,D-=g*R,E-=c*R;var N=p(v,D,E);v/=N,D/=N,E/=N;var F=d[2],I=d[6],L=d[10],P=F*_+I*g+L*c,O=F*v+I*D+L*E;F-=P*_+O*v,I-=P*g+O*D,L-=P*c+O*E;var U=p(F,I,L);F/=U,I/=U,L/=U;var X=v*S+_*x,$=D*S+g*x,j=E*S+c*x;this.center.move(k,X,$,j);var Y=Math.exp(this.computedRadius[0]);Y=Math.max(1e-4,Y+M),this.radius.set(k,Math.log(Y))},T.rotate=function(k,S,x,M){this.recalcMatrix(k),S=S||0,x=x||0;var d=this.computedMatrix,_=d[0],g=d[4],c=d[8],A=d[1],v=d[5],D=d[9],E=d[2],R=d[6],N=d[10],F=S*_+x*A,I=S*g+x*v,L=S*c+x*D,P=-(R*L-N*I),O=-(N*F-E*L),U=-(E*I-R*F),X=Math.sqrt(Math.max(0,1-Math.pow(P,2)-Math.pow(O,2)-Math.pow(U,2))),$=b(P,O,U,X);$>1e-6?(P/=$,O/=$,U/=$,X/=$):(P=O=U=0,X=1);var j=this.computedRotation,Y=j[0],q=j[1],K=j[2],ne=j[3],Q=Y*X+ne*P+q*U-K*O,oe=q*X+ne*O+K*P-Y*U,re=K*X+ne*U+Y*O-q*P,H=ne*X-Y*P-q*O-K*U;if(M){P=E,O=R,U=N;var ee=Math.sin(M)/p(P,O,U);P*=ee,O*=ee,U*=ee,X=Math.cos(S),Q=Q*X+H*P+oe*U-re*O,oe=oe*X+H*O+re*P-Q*U,re=re*X+H*U+Q*O-oe*P,H=H*X-Q*P-oe*O-re*U}var V=b(Q,oe,re,H);V>1e-6?(Q/=V,oe/=V,re/=V,H/=V):(Q=oe=re=0,H=1),this.rotation.set(k,Q,oe,re,H)},T.lookAt=function(k,S,x,M){this.recalcMatrix(k),x=x||this.computedCenter,S=S||this.computedEye,M=M||this.computedUp;var d=this.computedMatrix;u(d,S,x,M);var _=this.computedRotation;h(_,d[0],d[1],d[2],d[4],d[5],d[6],d[8],d[9],d[10]),m(_,_),this.rotation.set(k,_[0],_[1],_[2],_[3]);for(var g=0,c=0;c<3;++c)g+=Math.pow(x[c]-S[c],2);this.radius.set(k,.5*Math.log(Math.max(g,1e-6))),this.center.set(k,x[0],x[1],x[2])},T.translate=function(k,S,x,M){this.center.move(k,S||0,x||0,M||0)},T.setMatrix=function(k,S){var x=this.computedRotation;h(x,S[0],S[1],S[2],S[4],S[5],S[6],S[8],S[9],S[10]),m(x,x),this.rotation.set(k,x[0],x[1],x[2],x[3]);var M=this.computedMatrix;f(M,S);var d=M[15];if(Math.abs(d)>1e-6){var _=M[12]/d,g=M[13]/d,c=M[14]/d;this.recalcMatrix(k);var A=Math.exp(this.computedRadius[0]);this.center.set(k,_-M[2]*A,g-M[6]*A,c-M[10]*A),this.radius.idle(k)}else this.center.idle(k),this.radius.idle(k)},T.setDistance=function(k,S){S>0&&this.radius.set(k,Math.log(S))},T.setDistanceLimits=function(k,S){k>0?k=Math.log(k):k=-1/0,S>0?S=Math.log(S):S=1/0,S=Math.max(S,k),this.radius.bounds[0][0]=k,this.radius.bounds[1][0]=S},T.getDistanceLimits=function(k){var S=this.radius.bounds;return k?(k[0]=Math.exp(S[0][0]),k[1]=Math.exp(S[1][0]),k):[Math.exp(S[0][0]),Math.exp(S[1][0])]},T.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},T.fromJSON=function(k){var S=this.lastT(),x=k.center;x&&this.center.set(S,x[0],x[1],x[2]);var M=k.rotation;M&&this.rotation.set(S,M[0],M[1],M[2],M[3]);var d=k.distance;d&&d>0&&this.radius.set(S,Math.log(d)),this.setDistanceLimits(k.zoomMin,k.zoomMax)};function y(k){k=k||{};var S=k.center||[0,0,0],x=k.rotation||[0,0,0,1],M=k.radius||1;S=[].slice.call(S,0,3),x=[].slice.call(x,0,4),m(x,x);var d=new w(x,S,Math.log(M));return d.setDistanceLimits(k.zoomMin,k.zoomMax),("eye"in k||"up"in k)&&d.lookAt(0,k.eye,k.center,k.up),d}},9994:function(a,o,i){"use strict";var l=i(9618),u=i(8277);a.exports=function(f,h){for(var p=[],b=f,m=1;Array.isArray(b);)p.push(b.length),m*=b.length,b=b[0];return p.length===0?l():(h||(h=l(new Float64Array(m),p)),u(h,f),h)}}},r={};function t(a){var o=r[a];if(o!==void 0)return o.exports;var i=r[a]={id:a,loaded:!1,exports:{}};return e[a].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}(function(){t.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch(a){if(typeof window=="object")return window}}()})(),function(){t.nmd=function(a){return a.paths=[],a.children||(a.children=[]),a}}();var n=t(1964);kI.exports=n})()});var CI=de((Pde,SI)=>{"use strict";SI.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var RI=de((Ide,DI)=>{"use strict";var EI=CI();DI.exports=hie;var LI={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function hie(e){var r,t=[],n=1,a;if(typeof e=="string")if(e=e.toLowerCase(),EI[e])t=EI[e].slice(),a="rgb";else if(e==="transparent")n=0,a="rgb",t=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var o=e.slice(1),i=o.length,l=i<=4;n=1,l?(t=[parseInt(o[0]+o[0],16),parseInt(o[1]+o[1],16),parseInt(o[2]+o[2],16)],i===4&&(n=parseInt(o[3]+o[3],16)/255)):(t=[parseInt(o[0]+o[1],16),parseInt(o[2]+o[3],16),parseInt(o[4]+o[5],16)],i===8&&(n=parseInt(o[6]+o[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),a="rgb"}else if(r=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var u=r[1],s=u==="rgb",o=u.replace(/a$/,"");a=o;var i=o==="cmyk"?4:o==="gray"?1:3;t=r[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(p,b){if(/%$/.test(p))return b===i?parseFloat(p)/100:o==="rgb"?parseFloat(p)*255/100:parseFloat(p);if(o[b]==="h"){if(/deg$/.test(p))return parseFloat(p);if(LI[p]!==void 0)return LI[p]}return parseFloat(p)}),u===o&&t.push(1),n=s||t[i]===void 0?1:t[i],t=t.slice(0,i)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(t=e.match(/([0-9]+)/g).map(function(f){return parseFloat(f)}),a=e.match(/([a-z])/ig).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(t=[e[0],e[1],e[2]],a="rgb",n=e.length===4?e[3]:1):e instanceof Object&&(e.r!=null||e.red!=null||e.R!=null?(a="rgb",t=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(a="hsl",t=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),n=e.a||e.alpha||e.opacity||1,e.opacity!=null&&(n/=100)):(a="rgb",t=[e>>>16,(e&65280)>>>8,e&255]);return{space:a,values:t,alpha:n}}});var II=de((Fde,PI)=>{"use strict";var vie=RI();PI.exports=function(r){Array.isArray(r)&&r.raw&&(r=String.raw.apply(null,arguments));var t,n,a,o=vie(r);if(!o.space)return[];var i=[0,0,0],l=o.space[0]==="h"?[360,100,100]:[255,255,255];return t=Array(3),t[0]=Math.min(Math.max(o.values[0],i[0]),l[0]),t[1]=Math.min(Math.max(o.values[1],i[1]),l[1]),t[2]=Math.min(Math.max(o.values[2],i[2]),l[2]),o.space[0]==="h"&&(t=die(t)),t.push(Math.min(Math.max(o.alpha,0),1)),t};function die(e){var r=e[0]/360,t=e[1]/100,n=e[2]/100,a,o,i,l,u,s=0;if(t===0)return u=n*255,[u,u,u];for(o=n<.5?n*(1+t):n+t-n*t,a=2*n-o,l=[0,0,0];s<3;)i=r+1/3*-(s-1),i<0?i++:i>1&&i--,u=6*i<1?a+(o-a)*6*i:2*i<1?o:3*i<2?a+(o-a)*(2/3-i)*6:a,l[s++]=u*255;return l}});var NI=de((Nde,FI)=>{FI.exports=pie;function pie(e,r,t){return rt?t:e:er?r:e}});var qI=de((zde,zI)=>{zI.exports=function(e){switch(e){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}});var A3=de((qde,OI)=>{"use strict";var gie=II(),sd=NI(),yie=qI();OI.exports=function(r,t){(t==="float"||!t)&&(t="array"),t==="uint"&&(t="uint8"),t==="uint_clamped"&&(t="uint8_clamped");var n=yie(t),a=new n(4),o=t!=="uint8"&&t!=="uint8_clamped";return(!r.length||typeof r=="string")&&(r=gie(r),r[0]/=255,r[1]/=255,r[2]/=255),mie(r)?(a[0]=r[0],a[1]=r[1],a[2]=r[2],a[3]=r[3]!=null?r[3]:255,o&&(a[0]/=255,a[1]/=255,a[2]/=255,a[3]/=255),a):(o?(a[0]=r[0],a[1]=r[1],a[2]=r[2],a[3]=r[3]!=null?r[3]:1):(a[0]=sd(Math.floor(r[0]*255),0,255),a[1]=sd(Math.floor(r[1]*255),0,255),a[2]=sd(Math.floor(r[2]*255),0,255),a[3]=r[3]==null?255:sd(Math.floor(r[3]*255),0,255)),a)};function mie(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}});var po=de((Ode,BI)=>{"use strict";var xie=A3();function bie(e){return e?xie(e):[0,0,0,1]}BI.exports=bie});var al=de((Bde,XI)=>{"use strict";var YI=nt(),_ie=ka(),ud=A3(),fd=Li(),wie=Ai().defaultLine,UI=ea().isArrayOrTypedArray,k3=ud(wie),WI=1;function HI(e,r){var t=e;return t[3]*=r,t}function VI(e){if(YI(e))return k3;var r=ud(e);return r.length?r:k3}function GI(e){return YI(e)?e:WI}function Mie(e,r,t){var n=e.color;n&&n._inputArray&&(n=n._inputArray);var a=UI(n),o=UI(r),i=fd.extractOpts(e),l=[],u,s,f,h,p;if(i.colorscale!==void 0?u=fd.makeColorScaleFuncFromTrace(e):u=VI,a?s=function(m,w){return m[w]===void 0?k3:ud(u(m[w]))}:s=VI,o?f=function(m,w){return m[w]===void 0?WI:GI(m[w])}:f=GI,a||o)for(var b=0;b{"use strict";ZI.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}});var cd=de((Hde,JI)=>{"use strict";JI.exports={circle:"\u25CF","circle-open":"\u25CB",square:"\u25A0","square-open":"\u25A1",diamond:"\u25C6","diamond-open":"\u25C7",cross:"+",x:"\u274C"}});var QI=de((Vde,KI)=>{"use strict";var Aie=Cr();function C3(e,r,t,n){if(!r||!r.visible)return null;for(var a=Aie.getComponentMethod("errorbars","makeComputeError")(r),o=new Array(e.length),i=0;i0){var h=n.c2l(s);n._lowerLogErrorBound||(n._lowerLogErrorBound=h),n._lowerErrorBound=Math.min(n._lowerLogErrorBound,h)}}else o[i]=[-l[0]*t,l[1]*t]}return o}function kie(e){for(var r=0;r{"use strict";var Cie=pn().gl_line3d,$I=pn().gl_scatter3d,Eie=pn().gl_error3d,Lie=pn().gl_mesh3d,Die=pn().delaunay_triangulate,go=ir(),nF=po(),hd=al().formatColor,Rie=Cg(),E3=S3(),Pie=cd(),Iie=Lt(),Fie=to().appendArrayPointValue,Nie=QI();function aF(e,r){this.scene=e,this.uid=r,this.linePlot=null,this.scatterPlot=null,this.errorBars=null,this.textMarkers=null,this.delaunayMesh=null,this.color=null,this.mode="",this.dataPoints=[],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.textLabels=null,this.data=null}var D3=aF.prototype;D3.handlePick=function(e){if(e.object&&(e.object===this.linePlot||e.object===this.delaunayMesh||e.object===this.textMarkers||e.object===this.scatterPlot)){var r=e.index=e.data.index;return e.object.highlight&&e.object.highlight(null),this.scatterPlot&&(e.object=this.scatterPlot,this.scatterPlot.highlight(e.data)),e.textLabel="",this.textLabels&&(go.isArrayOrTypedArray(this.textLabels)?(this.textLabels[r]||this.textLabels[r]===0)&&(e.textLabel=this.textLabels[r]):e.textLabel=this.textLabels),e.traceCoordinate=[this.data.x[r],this.data.y[r],this.data.z[r]],!0}};function zie(e,r,t){var n=(t+1)%3,a=(t+2)%3,o=[],i=[],l;for(l=0;l-1?-1:e.indexOf("right")>-1?1:0}function eF(e){return e==null?0:e.indexOf("top")>-1?-1:e.indexOf("bottom")>-1?1:0}function Oie(e){var r=0,t=0,n=[r,t];if(Array.isArray(e))for(var a=0;a=0){var s=zie(l.position,l.delaunayColor,l.delaunayAxis);s.opacity=e.opacity,this.delaunayMesh?this.delaunayMesh.update(s):(s.gl=r,this.delaunayMesh=Lie(s),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)};D3.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())};function Vie(e,r){var t=new aF(e,r.uid);return t.update(r),t}iF.exports=Vie});var N3=de((Yde,fF)=>{"use strict";var yo=jl(),Gie=kn(),F3=ri(),R3=ro().axisHoverFormat,{hovertemplateAttrs:Yie,texttemplateAttrs:Wie,templatefallbackAttrs:lF}=Qa(),sF=Sn(),Xie=S3(),Zie=cd(),yi=Tt().extendFlat,Jie=zn().overrideAll,uF=Jc(),Kie=yo.line,cs=yo.marker,Qie=cs.line,$ie=yi({width:Kie.width,dash:{valType:"enumerated",values:uF(Xie),dflt:"solid"}},F3("line"));function P3(e){return{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}}var I3=fF.exports=Jie({x:yo.x,y:yo.y,z:{valType:"data_array"},text:yi({},yo.text,{}),texttemplate:Wie(),texttemplatefallback:lF({editType:"calc"}),hovertext:yi({},yo.hovertext,{}),hovertemplate:Yie(),hovertemplatefallback:lF(),xhoverformat:R3("x"),yhoverformat:R3("y"),zhoverformat:R3("z"),mode:yi({},yo.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:P3("x"),y:P3("y"),z:P3("z")},connectgaps:yo.connectgaps,line:$ie,marker:yi({symbol:{valType:"enumerated",values:uF(Zie),dflt:"circle",arrayOk:!0},size:yi({},cs.size,{dflt:8}),sizeref:cs.sizeref,sizemin:cs.sizemin,sizemode:cs.sizemode,opacity:yi({},cs.opacity,{arrayOk:!1}),colorbar:cs.colorbar,line:yi({width:yi({},Qie.width,{arrayOk:!1})},F3("marker.line"))},F3("marker")),textposition:yi({},yo.textposition,{dflt:"top center"}),textfont:Gie({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"]}),opacity:sF.opacity,hoverinfo:yi({},sF.hoverinfo)},"calc","nested");I3.x.editType=I3.y.editType=I3.z.editType="calc+clearAxisTypes"});var vF=de((Wde,hF)=>{"use strict";var cF=Cr(),jie=ir(),z3=oa(),eoe=tm(),roe=nm(),toe=am(),noe=N3();hF.exports=function(r,t,n,a){function o(b,m){return jie.coerce(r,t,noe,b,m)}var i=aoe(r,t,o,a);if(!i){t.visible=!1;return}o("text"),o("hovertext"),o("hovertemplate"),o("hovertemplatefallback"),o("xhoverformat"),o("yhoverformat"),o("zhoverformat"),o("mode"),z3.hasMarkers(t)&&eoe(r,t,n,a,o,{noSelect:!0,noAngle:!0}),z3.hasLines(t)&&(o("connectgaps"),roe(r,t,n,a,o)),z3.hasText(t)&&(o("texttemplate"),o("texttemplatefallback"),toe(r,t,a,o,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var l=(t.line||{}).color,u=(t.marker||{}).color;o("surfaceaxis")>=0&&o("surfacecolor",l||u);for(var s=["x","y","z"],f=0;f<3;++f){var h="projection."+s[f];o(h+".show")&&(o(h+".opacity"),o(h+".scale"))}var p=cF.getComponentMethod("errorbars","supplyDefaults");p(r,t,l||u||n,{axis:"z"}),p(r,t,l||u||n,{axis:"y",inherit:"z"}),p(r,t,l||u||n,{axis:"x",inherit:"z"})};function aoe(e,r,t,n){var a=0,o=t("x"),i=t("y"),l=t("z"),u=cF.getComponentMethod("calendars","handleTraceDefaults");return u(e,r,["x","y","z"],n),o&&i&&l&&(a=Math.min(o.length,i.length,l.length),r._length=r._xlength=r._ylength=r._zlength=a),a}});var pF=de((Xde,dF)=>{"use strict";var ioe=b1(),ooe=lm();dF.exports=function(r,t){var n=[{x:!1,y:!1,trace:t,t:{}}];return ioe(n,t),ooe(r,t),n}});var yF=de((Zde,gF)=>{gF.exports=loe;function loe(e,r){if(typeof e!="string")throw new TypeError("must specify type string");if(r=r||{},typeof document=="undefined"&&!r.canvas)return null;var t=r.canvas||document.createElement("canvas");typeof r.width=="number"&&(t.width=r.width),typeof r.height=="number"&&(t.height=r.height);var n=r,a;try{var o=[e];e.indexOf("webgl")===0&&o.push("experimental-"+e);for(var i=0;i{var soe=yF();mF.exports=function(r){return soe("webgl",r)}});var wF=de((Kde,_F)=>{"use strict";var bF=Xr(),uoe=function(){};_F.exports=function(r){for(var t in r)typeof r[t]=="function"&&(r[t]=uoe);r.destroy=function(){r.container.parentNode.removeChild(r.container)};var n=document.createElement("div");n.className="no-webgl",n.style.cursor="pointer",n.style.fontSize="24px",n.style.color=bF.defaults[0],n.style.position="absolute",n.style.left=n.style.top="0px",n.style.width=n.style.height="100%",n.style["background-color"]=bF.lightLine,n.style["z-index"]=30;var a=document.createElement("p");return a.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",a.style.position="relative",a.style.top="50%",a.style.left="50%",a.style.height="30%",a.style.width="50%",a.style.margin="-15% 0 0 -25%",n.appendChild(a),r.container.appendChild(n),r.container.style.background="#FFFFFF",r.container.onclick=function(){window.open("https://get.webgl.org")},!1}});var AF=de((Qde,TF)=>{"use strict";var hs=po(),foe=ir(),coe=["xaxis","yaxis","zaxis"];function MF(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickFontWeight=["normal","normal","normal","normal"],this.tickFontStyle=["normal","normal","normal","normal"],this.tickFontVariant=["normal","normal","normal","normal"],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["Open Sans","Open Sans","Open Sans"],this.labelSize=[20,20,20],this.labelFontWeight=["normal","normal","normal","normal"],this.labelFontStyle=["normal","normal","normal","normal"],this.labelFontVariant=["normal","normal","normal","normal"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[30,30,30],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[10,10,10],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!0,!0,!0],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._defaultTickPad=this.tickPad.slice(),this._defaultLabelPad=this.labelPad.slice(),this._defaultLineTickLength=this.lineTickLength.slice()}var hoe=MF.prototype;hoe.merge=function(e,r){for(var t=this,n=0;n<3;++n){var a=r[coe[n]];if(!a.visible){t.tickEnable[n]=!1,t.labelEnable[n]=!1,t.lineEnable[n]=!1,t.lineTickEnable[n]=!1,t.gridEnable[n]=!1,t.zeroEnable[n]=!1,t.backgroundEnable[n]=!1;continue}t.labels[n]=e._meta?foe.templateString(a.title.text,e._meta):a.title.text,"font"in a.title&&(a.title.font.color&&(t.labelColor[n]=hs(a.title.font.color)),a.title.font.family&&(t.labelFont[n]=a.title.font.family),a.title.font.size&&(t.labelSize[n]=a.title.font.size),a.title.font.weight&&(t.labelFontWeight[n]=a.title.font.weight),a.title.font.style&&(t.labelFontStyle[n]=a.title.font.style),a.title.font.variant&&(t.labelFontVariant[n]=a.title.font.variant)),"showline"in a&&(t.lineEnable[n]=a.showline),"linecolor"in a&&(t.lineColor[n]=hs(a.linecolor)),"linewidth"in a&&(t.lineWidth[n]=a.linewidth),"showgrid"in a&&(t.gridEnable[n]=a.showgrid),"gridcolor"in a&&(t.gridColor[n]=hs(a.gridcolor)),"gridwidth"in a&&(t.gridWidth[n]=a.gridwidth),a.type==="log"?t.zeroEnable[n]=!1:"zeroline"in a&&(t.zeroEnable[n]=a.zeroline),"zerolinecolor"in a&&(t.zeroLineColor[n]=hs(a.zerolinecolor)),"zerolinewidth"in a&&(t.zeroLineWidth[n]=a.zerolinewidth),"ticks"in a&&a.ticks?t.lineTickEnable[n]=!0:t.lineTickEnable[n]=!1,"ticklen"in a&&(t.lineTickLength[n]=t._defaultLineTickLength[n]=a.ticklen),"tickcolor"in a&&(t.lineTickColor[n]=hs(a.tickcolor)),"tickwidth"in a&&(t.lineTickWidth[n]=a.tickwidth),"tickangle"in a&&(t.tickAngle[n]=a.tickangle==="auto"?-3600:Math.PI*-a.tickangle/180),"showticklabels"in a&&(t.tickEnable[n]=a.showticklabels),"tickfont"in a&&(a.tickfont.color&&(t.tickColor[n]=hs(a.tickfont.color)),a.tickfont.family&&(t.tickFont[n]=a.tickfont.family),a.tickfont.size&&(t.tickSize[n]=a.tickfont.size),a.tickfont.weight&&(t.tickFontWeight[n]=a.tickfont.weight),a.tickfont.style&&(t.tickFontStyle[n]=a.tickfont.style),a.tickfont.variant&&(t.tickFontVariant[n]=a.tickfont.variant)),"mirror"in a?["ticks","all","allticks"].indexOf(a.mirror)!==-1?(t.lineTickMirror[n]=!0,t.lineMirror[n]=!0):a.mirror===!0?(t.lineTickMirror[n]=!1,t.lineMirror[n]=!0):(t.lineTickMirror[n]=!1,t.lineMirror[n]=!1):t.lineMirror[n]=!1,"showbackground"in a&&a.showbackground!==!1?(t.backgroundEnable[n]=!0,t.backgroundColor[n]=hs(a.backgroundcolor)):t.backgroundEnable[n]=!1}};function voe(e,r){var t=new MF;return t.merge(e,r),t}TF.exports=voe});var CF=de(($de,SF)=>{"use strict";var doe=po(),poe=["xaxis","yaxis","zaxis"];function kF(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}var goe=kF.prototype;goe.merge=function(e){for(var r=0;r<3;++r){var t=e[poe[r]];if(!t.visible){this.enabled[r]=!1,this.drawSides[r]=!1;continue}this.enabled[r]=t.showspikes,this.colors[r]=doe(t.spikecolor),this.drawSides[r]=t.spikesides,this.lineWidth[r]=t.spikethickness}};function yoe(e){var r=new kF;return r.merge(e),r}SF.exports=yoe});var DF=de((jde,LF)=>{"use strict";LF.exports=woe;var EF=Lt(),moe=ir(),xoe=["xaxis","yaxis","zaxis"],boe=[0,0,0];function _oe(e){for(var r=new Array(3),t=0;t<3;++t){for(var n=e[t],a=new Array(n.length),o=0;o/g," "));a[o]=s,i.tickmode=l}}r.ticks=a;for(var o=0;o<3;++o){boe[o]=.5*(e.glplot.bounds[0][o]+e.glplot.bounds[1][o]);for(var f=0;f<2;++f)r.bounds[f][o]=e.glplot.bounds[f][o]}e.contourLevels=_oe(a)}});var qF=de((epe,zF)=>{"use strict";var IF=pn().gl_plot3d,Moe=IF.createCamera,RF=IF.createScene,Toe=xF(),Aoe=Qh(),pd=Cr(),Jn=ir(),dd=Jn.preserveDrawingBuffer(),gd=Lt(),mi=io(),koe=po(),Soe=wF(),Coe=Vm(),Eoe=AF(),Loe=CF(),Doe=DF(),Roe=eu().applyAutorangeOptions,U0,vd,FF=!1;function NF(e,r){var t=document.createElement("div"),n=e.container;this.graphDiv=e.graphDiv;var a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.style.position="absolute",a.style.top=a.style.left="0px",a.style.width=a.style.height="100%",a.style["z-index"]=20,a.style["pointer-events"]="none",t.appendChild(a),this.svgContainer=a,t.id=e.id,t.style.position="absolute",t.style.top=t.style.left="0px",t.style.width=t.style.height="100%",n.appendChild(t),this.fullLayout=r,this.id=e.id||"scene",this.fullSceneLayout=r[this.id],this.plotArgs=[[],{},{}],this.axesOptions=Eoe(r,r[this.id]),this.spikeOptions=Loe(r[this.id]),this.container=t,this.staticMode=!!e.staticPlot,this.pixelRatio=this.pixelRatio||e.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=pd.getComponentMethod("annotations3d","convert"),this.drawAnnotations=pd.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var Dn=NF.prototype;Dn.prepareOptions=function(){var e=this,r={canvas:e.canvas,gl:e.gl,glOptions:{preserveDrawingBuffer:dd,premultipliedAlpha:!0,antialias:!0},container:e.container,axes:e.axesOptions,spikes:e.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:e.camera,pixelRatio:e.pixelRatio};if(e.staticMode){if(!vd&&(U0=document.createElement("canvas"),vd=Toe({canvas:U0,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!vd))throw new Error("error creating static canvas/context for image server");r.gl=vd,r.canvas=U0}return r};var PF=!0;Dn.tryCreatePlot=function(){var e=this,r=e.prepareOptions(),t=!0;try{e.glplot=RF(r)}catch(n){if(e.staticMode||!PF||dd)t=!1;else{Jn.warn(["webgl setup failed possibly due to","false preserveDrawingBuffer config.","The mobile/tablet device may not be detected by is-mobile module.","Enabling preserveDrawingBuffer in second attempt to create webgl scene..."].join(" "));try{dd=r.glOptions.preserveDrawingBuffer=!0,e.glplot=RF(r)}catch(a){dd=r.glOptions.preserveDrawingBuffer=!1,t=!1}}}return PF=!1,t};Dn.initializeGLCamera=function(){var e=this,r=e.fullSceneLayout.camera,t=r.projection.type==="orthographic";e.camera=Moe(e.container,{center:[r.center.x,r.center.y,r.center.z],eye:[r.eye.x,r.eye.y,r.eye.z],up:[r.up.x,r.up.y,r.up.z],_ortho:t,zoomMin:.01,zoomMax:100,mode:"orbit"})};Dn.initializeGLPlot=function(){var e=this;e.initializeGLCamera();var r=e.tryCreatePlot();if(!r)return Soe(e);e.traces={},e.make4thDimension();var t=e.graphDiv,n=t.layout,a=function(){var i={};return e.isCameraChanged(n)&&(i[e.id+".camera"]=e.getCamera()),e.isAspectChanged(n)&&(i[e.id+".aspectratio"]=e.glplot.getAspectratio(),n[e.id].aspectmode!=="manual"&&(e.fullSceneLayout.aspectmode=n[e.id].aspectmode=i[e.id+".aspectmode"]="manual")),i},o=function(i){if(i.fullSceneLayout.dragmode!==!1){var l=a();i.saveLayout(n),i.graphDiv.emit("plotly_relayout",l)}};return e.glplot.canvas&&(e.glplot.canvas.addEventListener("mouseup",function(){o(e)}),e.glplot.canvas.addEventListener("touchstart",function(){FF=!0}),e.glplot.canvas.addEventListener("wheel",function(i){if(t._context._scrollZoom.gl3d){if(e.camera._ortho){var l=i.deltaX>i.deltaY?1.1:.9090909090909091,u=e.glplot.getAspectratio();e.glplot.setAspectratio({x:l*u.x,y:l*u.y,z:l*u.z})}o(e)}},Aoe?{passive:!1}:!1),e.glplot.canvas.addEventListener("mousemove",function(){if(e.fullSceneLayout.dragmode!==!1&&e.camera.mouseListener.buttons!==0){var i=a();e.graphDiv.emit("plotly_relayouting",i)}}),e.staticMode||e.glplot.canvas.addEventListener("webglcontextlost",function(i){t&&t.emit&&t.emit("plotly_webglcontextlost",{event:i,layer:e.id})},!1)),e.glplot.oncontextloss=function(){e.recoverContext()},e.glplot.onrender=function(){e.render()},!0};Dn.render=function(){var e=this,r=e.graphDiv,t,n=e.svgContainer,a=e.container.getBoundingClientRect();r._fullLayout._calcInverseTransform(r);var o=r._fullLayout._invScaleX,i=r._fullLayout._invScaleY,l=a.width*o,u=a.height*i;n.setAttributeNS(null,"viewBox","0 0 "+l+" "+u),n.setAttributeNS(null,"width",l),n.setAttributeNS(null,"height",u),Doe(e),e.glplot.axes.update(e.axesOptions);for(var s=Object.keys(e.traces),f=null,h=e.glplot.selection,p=0;p")):t.type==="isosurface"||t.type==="volume"?(y.valueLabel=gd.hoverLabelText(e._mockAxis,e._mockAxis.d2l(h.traceCoordinate[3]),t.valuehoverformat),d.push("value: "+y.valueLabel),h.textLabel&&d.push(h.textLabel),M=d.join("
")):M=h.textLabel;var _={x:h.traceCoordinate[0],y:h.traceCoordinate[1],z:h.traceCoordinate[2],data:w._input,fullData:w,curveNumber:w.index,pointNumber:T};mi.appendArrayPointValue(_,w,T),t._module.eventData&&(_=w._module.eventData(_,h,w,{},T));var g={points:[_]};if(e.fullSceneLayout.hovermode){var c=[];mi.loneHover({trace:w,x:(.5+.5*m[0]/m[3])*l,y:(.5-.5*m[1]/m[3])*u,xLabel:y.xLabel,yLabel:y.yLabel,zLabel:y.zLabel,text:M,name:f.name,color:mi.castHoverOption(w,T,"bgcolor")||f.color,borderColor:mi.castHoverOption(w,T,"bordercolor"),fontFamily:mi.castHoverOption(w,T,"font.family"),fontSize:mi.castHoverOption(w,T,"font.size"),fontColor:mi.castHoverOption(w,T,"font.color"),nameLength:mi.castHoverOption(w,T,"namelength"),textAlign:mi.castHoverOption(w,T,"align"),hovertemplate:Jn.castOption(w,T,"hovertemplate"),hovertemplateLabels:Jn.extendFlat({},_,y),eventData:[_]},{container:n,gd:r,inOut_bbox:c}),_.bbox=c[0]}h.distance<5&&(h.buttons||FF)?r.emit("plotly_click",g):r.emit("plotly_hover",g),this.oldEventData=g}else mi.loneUnhover(n),this.oldEventData&&r.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;e.drawAnnotations(e)};Dn.recoverContext=function(){var e=this;e.glplot.dispose();var r=function(){if(e.glplot.gl.isContextLost()){requestAnimationFrame(r);return}if(!e.initializeGLPlot()){Jn.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}e.plot.apply(e,e.plotArgs)};requestAnimationFrame(r)};var H0=["xaxis","yaxis","zaxis"];function Poe(e,r,t){for(var n=e.fullSceneLayout,a=0;a<3;a++){var o=H0[a],i=o.charAt(0),l=n[o],u=r[i],s=r[i+"calendar"],f=r["_"+i+"length"];if(!Jn.isArrayOrTypedArray(u))t[0][a]=Math.min(t[0][a],0),t[1][a]=Math.max(t[1][a],f-1);else for(var h,p=0;p<(f||u.length);p++)if(Jn.isArrayOrTypedArray(u[p]))for(var b=0;bw[1][i])w[0][i]=-1,w[1][i]=1;else{var v=w[1][i]-w[0][i];w[0][i]-=v/32,w[1][i]+=v/32}if(k=[w[0][i],w[1][i]],k=Roe(k,u),w[0][i]=k[0],w[1][i]=k[1],u.isReversed()){var D=w[0][i];w[0][i]=w[1][i],w[1][i]=D}}else k=u.range,w[0][i]=u.r2l(k[0]),w[1][i]=u.r2l(k[1]);w[0][i]===w[1][i]&&(w[0][i]-=1,w[1][i]+=1),T[i]=w[1][i]-w[0][i],u.range=[w[0][i],w[1][i]],u.limitRange(),n.glplot.setBounds(i,{min:u.range[0]*b[i],max:u.range[1]*b[i]})}var E,R=f.aspectmode;if(R==="cube")E=[1,1,1];else if(R==="manual"){var N=f.aspectratio;E=[N.x,N.y,N.z]}else if(R==="auto"||R==="data"){var F=[1,1,1];for(i=0;i<3;++i){u=f[H0[i]],s=u.type;var I=y[s];F[i]=Math.pow(I.acc,1/I.count)/b[i]}R==="data"||Math.max.apply(null,F)/Math.min.apply(null,F)<=4?E=F:E=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");f.aspectratio.x=h.aspectratio.x=E[0],f.aspectratio.y=h.aspectratio.y=E[1],f.aspectratio.z=h.aspectratio.z=E[2],n.glplot.setAspectratio(f.aspectratio),n.viewInitial.aspectratio||(n.viewInitial.aspectratio={x:f.aspectratio.x,y:f.aspectratio.y,z:f.aspectratio.z}),n.viewInitial.aspectmode||(n.viewInitial.aspectmode=f.aspectmode);var L=f.domain||null,P=r._size||null;if(L&&P){var O=n.container.style;O.position="absolute",O.left=P.l+L.x[0]*P.w+"px",O.top=P.t+(1-L.y[1])*P.h+"px",O.width=P.w*(L.x[1]-L.x[0])+"px",O.height=P.h*(L.y[1]-L.y[0])+"px"}n.glplot.redraw()}};Dn.destroy=function(){var e=this;e.glplot&&(e.camera.mouseListener.enabled=!1,e.container.removeEventListener("wheel",e.camera.wheelListener),e.camera=null,e.glplot.dispose(),e.container.parentNode.removeChild(e.container),e.glplot=null)};function Foe(e){return[[e.eye.x,e.eye.y,e.eye.z],[e.center.x,e.center.y,e.center.z],[e.up.x,e.up.y,e.up.z]]}function Noe(e){return{up:{x:e.up[0],y:e.up[1],z:e.up[2]},center:{x:e.center[0],y:e.center[1],z:e.center[2]},eye:{x:e.eye[0],y:e.eye[1],z:e.eye[2]},projection:{type:e._ortho===!0?"orthographic":"perspective"}}}Dn.getCamera=function(){var e=this;return e.camera.view.recalcMatrix(e.camera.view.lastT()),Noe(e.camera)};Dn.setViewport=function(e){var r=this,t=e.camera;r.camera.lookAt.apply(this,Foe(t)),r.glplot.setAspectratio(e.aspectratio);var n=t.projection.type==="orthographic",a=r.camera._ortho;n!==a&&(r.glplot.redraw(),r.glplot.clearRGBA(),r.glplot.dispose(),r.initializeGLPlot())};Dn.isCameraChanged=function(e){var r=this,t=r.getCamera(),n=Jn.nestedProperty(e,r.id+".camera"),a=n.get();function o(s,f,h,p){var b=["up","center","eye"],m=["x","y","z"];return f[b[h]]&&s[b[h]][m[p]]===f[b[h]][m[p]]}var i=!1;if(a===void 0)i=!0;else{for(var l=0;l<3;l++)for(var u=0;u<3;u++)if(!o(t,a,l,u)){i=!0;break}(!a.projection||t.projection&&t.projection.type!==a.projection.type)&&(i=!0)}return i};Dn.isAspectChanged=function(e){var r=this,t=r.glplot.getAspectratio(),n=Jn.nestedProperty(e,r.id+".aspectratio"),a=n.get();return a===void 0||a.x!==t.x||a.y!==t.y||a.z!==t.z};Dn.saveLayout=function(e){var r=this,t=r.fullLayout,n,a,o,i,l,u,s=r.isCameraChanged(e),f=r.isAspectChanged(e),h=s||f;if(h){var p={};if(s&&(n=r.getCamera(),a=Jn.nestedProperty(e,r.id+".camera"),o=a.get(),p[r.id+".camera"]=o),f&&(i=r.glplot.getAspectratio(),l=Jn.nestedProperty(e,r.id+".aspectratio"),u=l.get(),p[r.id+".aspectratio"]=u),pd.call("_storeDirectGUIEdit",e,t._preGUI,p),s){a.set(n);var b=Jn.nestedProperty(t,r.id+".camera");b.set(n)}if(f){l.set(i);var m=Jn.nestedProperty(t,r.id+".aspectratio");m.set(i),r.glplot.redraw()}}return h};Dn.updateFx=function(e,r){var t=this,n=t.camera;if(n)if(e==="orbit")n.mode="orbit",n.keyBindingMode="rotate";else if(e==="turntable"){n.up=[0,0,1],n.mode="turntable",n.keyBindingMode="rotate";var a=t.graphDiv,o=a._fullLayout,i=t.fullSceneLayout.camera,l=i.up.x,u=i.up.y,s=i.up.z;if(s/Math.sqrt(l*l+u*u+s*s)<.999){var f=t.id+".camera.up",h={x:0,y:0,z:1},p={};p[f]=h;var b=a.layout;pd.call("_storeDirectGUIEdit",b,o._preGUI,p),i.up=h,Jn.nestedProperty(b,f).set(h)}}else n.keyBindingMode=e;t.fullSceneLayout.hovermode=r};function zoe(e,r,t){for(var n=0,a=t-1;n0)for(var l=255/i,u=0;u<3;++u)e[o+u]=Math.min(l*e[o+u],255)}}Dn.toImage=function(e){var r=this;e||(e="png"),r.staticMode&&r.container.appendChild(U0),r.glplot.redraw();var t=r.glplot.gl,n=t.drawingBufferWidth,a=t.drawingBufferHeight;t.bindFramebuffer(t.FRAMEBUFFER,null);var o=new Uint8Array(n*a*4);t.readPixels(0,0,n,a,t.RGBA,t.UNSIGNED_BYTE,o),zoe(o,n,a),qoe(o,n,a);var i=document.createElement("canvas");i.width=n,i.height=a;var l=i.getContext("2d",{willReadFrequently:!0}),u=l.createImageData(n,a);u.data.set(o),l.putImageData(u,0,0);var s;switch(e){case"jpeg":s=i.toDataURL("image/jpeg");break;case"webp":s=i.toDataURL("image/webp");break;default:s=i.toDataURL("image/png")}return r.staticMode&&r.container.removeChild(U0),s};Dn.setConvert=function(){for(var e=this,r=0;r<3;r++){var t=e.fullSceneLayout[H0[r]];gd.setConvert(t,e.fullLayout),t.setScale=Jn.noop}};Dn.make4thDimension=function(){var e=this,r=e.graphDiv,t=r._fullLayout;e._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},gd.setConvert(e._mockAxis,t)};zF.exports=NF});var BF=de((rpe,OF)=>{"use strict";OF.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}});var O3=de((tpe,UF)=>{"use strict";var Ooe=Xr(),Ur=La(),q3=Tt().extendFlat,Boe=zn().overrideAll;UF.exports=Boe({visible:Ur.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:Ooe.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:Ur.color,categoryorder:Ur.categoryorder,categoryarray:Ur.categoryarray,title:{text:Ur.title.text,font:Ur.title.font},type:q3({},Ur.type,{values:["-","linear","log","date","category"]}),autotypenumbers:Ur.autotypenumbers,autorange:Ur.autorange,autorangeoptions:{minallowed:Ur.autorangeoptions.minallowed,maxallowed:Ur.autorangeoptions.maxallowed,clipmin:Ur.autorangeoptions.clipmin,clipmax:Ur.autorangeoptions.clipmax,include:Ur.autorangeoptions.include,editType:"plot"},rangemode:Ur.rangemode,minallowed:Ur.minallowed,maxallowed:Ur.maxallowed,range:q3({},Ur.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:Ur.minor.tickmode,nticks:Ur.nticks,tick0:Ur.tick0,dtick:Ur.dtick,tickvals:Ur.tickvals,ticktext:Ur.ticktext,ticks:Ur.ticks,mirror:Ur.mirror,ticklen:Ur.ticklen,tickwidth:Ur.tickwidth,tickcolor:Ur.tickcolor,showticklabels:Ur.showticklabels,labelalias:Ur.labelalias,tickfont:Ur.tickfont,tickangle:Ur.tickangle,tickprefix:Ur.tickprefix,showtickprefix:Ur.showtickprefix,ticksuffix:Ur.ticksuffix,showticksuffix:Ur.showticksuffix,showexponent:Ur.showexponent,exponentformat:Ur.exponentformat,minexponent:Ur.minexponent,separatethousands:Ur.separatethousands,tickformat:Ur.tickformat,tickformatstops:Ur.tickformatstops,hoverformat:Ur.hoverformat,showline:Ur.showline,linecolor:Ur.linecolor,linewidth:Ur.linewidth,showgrid:Ur.showgrid,gridcolor:q3({},Ur.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:Ur.gridwidth,zeroline:Ur.zeroline,zerolinecolor:Ur.zerolinecolor,zerolinewidth:Ur.zerolinewidth},"plot","from-root")});var V3=de((npe,HF)=>{"use strict";var B3=O3(),Uoe=td().attributes,U3=Tt().extendFlat,Hoe=ir().counterRegex;function H3(e,r,t){return{x:{valType:"number",dflt:e,editType:"camera"},y:{valType:"number",dflt:r,editType:"camera"},z:{valType:"number",dflt:t,editType:"camera"},editType:"camera"}}HF.exports={_arrayAttrRegexps:[Hoe("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:U3(H3(0,0,1),{}),center:U3(H3(0,0,0),{}),eye:U3(H3(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:Uoe({name:"scene",editType:"plot"}),aspectmode:{valType:"enumerated",values:["auto","cube","data","manual"],dflt:"auto",editType:"plot",impliedEdits:{"aspectratio.x":void 0,"aspectratio.y":void 0,"aspectratio.z":void 0}},aspectratio:{x:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},y:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},z:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},editType:"plot",impliedEdits:{aspectmode:"manual"}},xaxis:B3,yaxis:B3,zaxis:B3,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot"},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar"},uirevision:{valType:"any",editType:"none"},editType:"plot"}});var GF=de((ape,VF)=>{"use strict";var Voe=ir(),Goe=yt(),Yoe=td().defaults;VF.exports=function(r,t,n,a){var o=a.type,i=a.attributes,l=a.handleDefaults,u=a.partition||"x",s=t._subplots[o],f=s.length,h=f&&s[0].replace(/\d+$/,""),p,b;function m(k,S){return Voe.coerce(p,b,i,k,S)}for(var w=0;w{"use strict";var Woe=ka().mix,YF=ir(),Xoe=yt(),Zoe=O3(),Joe=Am(),Koe=C1(),WF=["xaxis","yaxis","zaxis"],Qoe=100*136/187;XF.exports=function(r,t,n){var a,o;function i(s,f){return YF.coerce(a,o,Zoe,s,f)}for(var l=0;l{"use strict";var $oe=ir(),joe=Xr(),ele=Cr(),rle=GF(),tle=ZF(),JF=V3(),nle=kf().getSubplotData,KF="gl3d";QF.exports=function(r,t,n){var a=t._basePlotModules.length>1;function o(i){if(!a){var l=$oe.validate(r[i],JF[i]);if(l)return r[i]}}rle(r,t,n,{type:KF,attributes:JF,handleDefaults:ale,fullLayout:t,font:t.font,fullData:n,getDfltFromLayout:o,autotypenumbersDflt:t.autotypenumbers,paper_bgcolor:t.paper_bgcolor,calendar:t.calendar})};function ale(e,r,t,n){for(var a=t("bgcolor"),o=joe.combine(a,n.paper_bgcolor),i=["up","center","eye"],l=0;l.999)&&(p="turntable")}else p="turntable";t("dragmode",p),t("hovermode",n.getDfltFromLayout("hovermode"))}});var il=de(Kn=>{"use strict";var ile=zn().overrideAll,ole=wl(),lle=qF(),sle=kf().getSubplotData,ule=ir(),fle=Fo(),Uu="gl3d",G3="scene";Kn.name=Uu;Kn.attr=G3;Kn.idRoot=G3;Kn.idRegex=Kn.attrRegex=ule.counterRegex("scene");Kn.attributes=BF();Kn.layoutAttributes=V3();Kn.baseLayoutAttrOverrides=ile({hoverlabel:ole.hoverlabel},"plot","nested");Kn.supplyLayoutDefaults=$F();Kn.plot=function(r){for(var t=r._fullLayout,n=r._fullData,a=t._subplots[Uu],o=0;o{"use strict";jF.exports={plot:oF(),attributes:N3(),markerSymbols:cd(),supplyDefaults:vF(),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:pF(),moduleType:"trace",name:"scatter3d",basePlotModule:il(),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}});var tN=de((upe,rN)=>{"use strict";rN.exports=eN()});var V0=de((fpe,iN)=>{"use strict";var nN=Xr(),cle=ri(),Y3=ro().axisHoverFormat,{hovertemplateAttrs:hle,templatefallbackAttrs:vle}=Qa(),aN=Sn(),W3=Tt().extendFlat,dle=zn().overrideAll;function X3(e){return{valType:"boolean",dflt:!1}}function Z3(e){return{show:{valType:"boolean",dflt:!1},start:{valType:"number",dflt:null,editType:"plot"},end:{valType:"number",dflt:null,editType:"plot"},size:{valType:"number",dflt:null,min:0,editType:"plot"},project:{x:X3("x"),y:X3("y"),z:X3("z")},color:{valType:"color",dflt:nN.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:nN.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var J3=iN.exports=dle(W3({z:{valType:"data_array"},x:{valType:"data_array"},y:{valType:"data_array"},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:hle(),hovertemplatefallback:vle(),xhoverformat:Y3("x"),yhoverformat:Y3("y"),zhoverformat:Y3("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},cle("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:Z3("x"),y:Z3("y"),z:Z3("z")},hidesurface:{valType:"boolean",dflt:!1},lightposition:{x:{valType:"number",min:-1e5,max:1e5,dflt:10},y:{valType:"number",min:-1e5,max:1e5,dflt:1e4},z:{valType:"number",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:"number",min:0,max:1,dflt:.8},diffuse:{valType:"number",min:0,max:1,dflt:.8},specular:{valType:"number",min:0,max:2,dflt:.05,description:"Represents the level that incident rays are reflected in a single direction, causing shine."},roughness:{valType:"number",min:0,max:1,dflt:.5,description:"Alters specular reflection; the rougher the surface, the wider and less contrasty the shine."},fresnel:{valType:"number",min:0,max:5,dflt:.2}},opacity:{valType:"number",min:0,max:1,dflt:1},opacityscale:{valType:"any",editType:"calc"},hoverinfo:W3({},aN.hoverinfo),showlegend:W3({},aN.showlegend,{dflt:!1})}),"calc","nested");J3.x.editType=J3.y.editType=J3.z.editType="calc+clearAxisTypes"});var Q3=de((cpe,sN)=>{"use strict";var ple=Cr(),oN=ir(),gle=Ei(),yle=V0(),K3=.1;function mle(e,r){for(var t=[],n=32,a=0;a{"use strict";var uN=zo();fN.exports=function(r,t){t.surfacecolor?uN(r,t,{vals:t.surfacecolor,containerStr:"",cLetter:"c"}):uN(r,t,{vals:t.z,containerStr:"",cLetter:"c"})}});var pN=de((vpe,dN)=>{"use strict";var _le=ir(),hN=.01,wle=[[-1,0],[1,0],[0,-1],[0,1]];function Mle(e){return .5-.25*Math.min(1,e*.5)}dN.exports=function(r,t){var n=1,a;for(vN(r,t),a=0;ahN;a++)n=vN(r,t,Mle(n));return n>hN&&_le.log("interp2d didn't converge quickly",n),r};function vN(e,r,t){var n=0,a,o,i,l,u,s,f,h,p,b,m,w,T;for(l=0;lw&&(n=Math.max(n,Math.abs(e[o][i]-m)/(T-w))))}return n}});var yN=de((dpe,gN)=>{"use strict";var Tle=ir().maxRowLength;gN.exports=function(r){var t=[],n={},a=[],o=r[0],i=[],l=[0,0,0],u=Tle(r),s,f,h,p,b,m,w,T;for(f=0;f=0;b--)p=a[b],f=p[0],h=p[1],m=((n[[f-1,h]]||l)[2]+(n[[f+1,h]]||l)[2]+(n[[f,h-1]]||l)[2]+(n[[f,h+1]]||l)[2])/20,m&&(w[p]=[f,h,m],a.splice(b,1),T=!0);if(!T)throw"findEmpties iterated with no new neighbors";for(p in w)n[p]=w[p],t.push(w[p])}return t.sort(function(y,k){return k[2]-y[2]})}});var MN=de((ppe,wN)=>{"use strict";var Ale=pn().gl_surface3d,Hu=pn().ndarray,kle=pn().ndarray_linear_interpolate.d2,Sle=pN(),Cle=yN(),G0=ir().isArrayOrTypedArray,Ele=al().parseColorScale,mN=po(),Lle=Li().extractOpts;function bN(e,r,t){this.scene=e,this.uid=t,this.surface=r,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var xi=bN.prototype;xi.getXat=function(e,r,t,n){var a=G0(this.data.x)?G0(this.data.x[0])?this.data.x[r][e]:this.data.x[e]:e;return t===void 0?a:n.d2l(a,0,t)};xi.getYat=function(e,r,t,n){var a=G0(this.data.y)?G0(this.data.y[0])?this.data.y[r][e]:this.data.y[r]:r;return t===void 0?a:n.d2l(a,0,t)};xi.getZat=function(e,r,t,n){var a=this.data.z[r][e];return a===null&&this.data.connectgaps&&this.data._interpolatedZ&&(a=this.data._interpolatedZ[r][e]),t===void 0?a:n.d2l(a,0,t)};xi.handlePick=function(e){if(e.object===this.surface){var r=(e.data.index[0]-1)/this.dataScaleX-1,t=(e.data.index[1]-1)/this.dataScaleY-1,n=Math.max(Math.min(Math.round(r),this.data.z[0].length-1),0),a=Math.max(Math.min(Math.round(t),this.data._ylength-1),0);e.index=[n,a],e.traceCoordinate=[this.getXat(n,a),this.getYat(n,a),this.getZat(n,a)],e.dataCoordinate=[this.getXat(n,a,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(n,a,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(n,a,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var o=0;o<3;o++){var i=e.dataCoordinate[o];i!=null&&(e.dataCoordinate[o]*=this.scene.dataScale[o])}var l=this.data.hovertext||this.data.text;return G0(l)&&l[a]&&l[a][n]!==void 0?e.textLabel=l[a][n]:l?e.textLabel=l:e.textLabel="",e.data.dataCoordinate=e.dataCoordinate.slice(),this.surface.highlight(e.data),this.scene.glplot.spikes.position=e.dataCoordinate,!0}};function Dle(e){var r=e[0].rgb,t=e[e.length-1].rgb;return r[0]===t[0]&&r[1]===t[1]&&r[2]===t[2]&&r[3]===t[3]}var Vu=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999];function Rle(e,r){if(e0){t=Vu[n];break}return t}function Ile(e,r){if(!(e<1||r<1)){for(var t=$3(e),n=$3(r),a=1,o=0;oyd;)n--,n/=Ple(n),n++,n1?a:1};function Nle(e,r,t){var n=t[8]+t[2]*r[0]+t[5]*r[1];return e[0]=(t[6]+t[0]*r[0]+t[3]*r[1])/n,e[1]=(t[7]+t[1]*r[0]+t[4]*r[1])/n,e}function zle(e,r,t){return qle(e,r,Nle,t),e}function qle(e,r,t,n){for(var a=[0,0],o=e.shape[0],i=e.shape[1],l=0;l0&&this.contourStart[n]!==null&&this.contourEnd[n]!==null&&this.contourEnd[n]>this.contourStart[n]))for(r[n]=!0,a=this.contourStart[n];ap&&(this.minValues[s]=p),this.maxValues[s]{"use strict";TN.exports={attributes:V0(),supplyDefaults:Q3().supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:cN(),plot:MN(),moduleType:"trace",name:"surface",basePlotModule:il(),categories:["gl3d","2dMap","showLegend"],meta:{}}});var SN=de((ype,kN)=>{"use strict";kN.exports=AN()});var Gu=de((mpe,EN)=>{"use strict";var Ule=ri(),j3=ro().axisHoverFormat,{hovertemplateAttrs:Hle,templatefallbackAttrs:Vle}=Qa(),ol=V0(),CN=Sn(),ll=Tt().extendFlat;EN.exports=ll({x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},i:{valType:"data_array",editType:"calc"},j:{valType:"data_array",editType:"calc"},k:{valType:"data_array",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:Hle({editType:"calc"}),hovertemplatefallback:Vle({editType:"calc"}),xhoverformat:j3("x"),yhoverformat:j3("y"),zhoverformat:j3("z"),delaunayaxis:{valType:"enumerated",values:["x","y","z"],dflt:"z",editType:"calc"},alphahull:{valType:"number",dflt:-1,editType:"calc"},intensity:{valType:"data_array",editType:"calc"},intensitymode:{valType:"enumerated",values:["vertex","cell"],dflt:"vertex",editType:"calc"},color:{valType:"color",editType:"calc"},vertexcolor:{valType:"data_array",editType:"calc"},facecolor:{valType:"data_array",editType:"calc"}},Ule("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:ol.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:ll({},ol.contours.x.show,{}),color:ol.contours.x.color,width:ol.contours.x.width,editType:"calc"},lightposition:{x:ll({},ol.lightposition.x,{dflt:1e5}),y:ll({},ol.lightposition.y,{dflt:1e5}),z:ll({},ol.lightposition.z,{dflt:0}),editType:"calc"},lighting:ll({vertexnormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-12,editType:"calc",description:"Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry."},facenormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-6,editType:"calc",description:"Epsilon for face normals calculation avoids math issues arising from degenerate geometry."},editType:"calc"},ol.lighting),hoverinfo:ll({},CN.hoverinfo,{editType:"calc"}),showlegend:ll({},CN.showlegend,{dflt:!1})})});var xd=de((xpe,DN)=>{"use strict";var Gle=ri(),md=ro().axisHoverFormat,{hovertemplateAttrs:Yle,templatefallbackAttrs:Wle}=Qa(),Y0=Gu(),LN=Sn(),e5=Tt().extendFlat,Xle=zn().overrideAll;function r5(e){return{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}}}function t5(e){return{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}}}var Yu=DN.exports=Xle(e5({x:{valType:"data_array"},y:{valType:"data_array"},z:{valType:"data_array"},value:{valType:"data_array"},isomin:{valType:"number"},isomax:{valType:"number"},surface:{show:{valType:"boolean",dflt:!0},count:{valType:"integer",dflt:2,min:1},fill:{valType:"number",min:0,max:1,dflt:1},pattern:{valType:"flaglist",flags:["A","B","C","D","E"],extras:["all","odd","even"],dflt:"all"}},spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:.15}},slices:{x:r5("x"),y:r5("y"),z:r5("z")},caps:{x:t5("x"),y:t5("y"),z:t5("z")},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:Yle(),hovertemplatefallback:Wle(),xhoverformat:md("x"),yhoverformat:md("y"),zhoverformat:md("z"),valuehoverformat:md("value",1),showlegend:e5({},LN.showlegend,{dflt:!1})},Gle("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:Y0.opacity,lightposition:Y0.lightposition,lighting:Y0.lighting,flatshading:Y0.flatshading,contour:Y0.contour,hoverinfo:e5({},LN.hoverinfo)}),"calc","nested");Yu.flatshading.dflt=!0;Yu.lighting.facenormalsepsilon.dflt=0;Yu.x.editType=Yu.y.editType=Yu.z.editType=Yu.value.editType="calc+clearAxisTypes"});var n5=de((bpe,PN)=>{"use strict";var Zle=ir(),Jle=Cr(),Kle=xd(),Qle=Ei();function $le(e,r,t,n){function a(o,i){return Zle.coerce(e,r,Kle,o,i)}RN(e,r,t,n,a)}function RN(e,r,t,n,a){var o=a("isomin"),i=a("isomax");i!=null&&o!==void 0&&o!==null&&o>i&&(r.isomin=null,r.isomax=null);var l=a("x"),u=a("y"),s=a("z"),f=a("value");if(!l||!l.length||!u||!u.length||!s||!s.length||!f||!f.length){r.visible=!1;return}var h=Jle.getComponentMethod("calendars","handleTraceDefaults");h(e,r,["x","y","z"],n),a("valuehoverformat"),["x","y","z"].forEach(function(w){a(w+"hoverformat");var T="caps."+w,y=a(T+".show");y&&a(T+".fill");var k="slices."+w,S=a(k+".show");S&&(a(k+".fill"),a(k+".locations"))});var p=a("spaceframe.show");p&&a("spaceframe.fill");var b=a("surface.show");b&&(a("surface.count"),a("surface.fill"),a("surface.pattern"));var m=a("contour.show");m&&(a("contour.color"),a("contour.width")),["text","hovertext","hovertemplate","lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","opacity"].forEach(function(w){a(w)}),Qle(e,r,n,a,{prefix:"",cLetter:"c"}),r._length=null}PN.exports={supplyDefaults:$le,supplyIsoDefaults:RN}});var bd=de((_pe,FN)=>{"use strict";var i5=ir(),jle=zo();function ese(e,r){r._len=Math.min(r.u.length,r.v.length,r.w.length,r.x.length,r.y.length,r.z.length),r._u=Hi(r.u,r._len),r._v=Hi(r.v,r._len),r._w=Hi(r.w,r._len),r._x=Hi(r.x,r._len),r._y=Hi(r.y,r._len),r._z=Hi(r.z,r._len);var t=IN(r);r._gridFill=t.fill,r._Xs=t.Xs,r._Ys=t.Ys,r._Zs=t.Zs,r._len=t.len;var n=0,a,o,i;r.starts&&(a=Hi(r.starts.x||[]),o=Hi(r.starts.y||[]),i=Hi(r.starts.z||[]),n=Math.min(a.length,o.length,i.length)),r._startsX=a||[],r._startsY=o||[],r._startsZ=i||[];var l=0,u=1/0,s;for(s=0;s1&&(S=r[a-1],M=t[a-1],_=n[a-1]),o=0;oS?"-":"+")+"x"),m=m.replace("y",(x>M?"-":"+")+"y"),m=m.replace("z",(d>_?"-":"+")+"z");var v=function(){a=0,g=[],c=[],A=[]};(!a||a{"use strict";var rse=zo(),tse=bd().processGrid,_d=bd().filter;NN.exports=function(r,t){t._len=Math.min(t.x.length,t.y.length,t.z.length,t.value.length),t._x=_d(t.x,t._len),t._y=_d(t.y,t._len),t._z=_d(t.z,t._len),t._value=_d(t.value,t._len);var n=tse(t);t._gridFill=n.fill,t._Xs=n.Xs,t._Ys=n.Ys,t._Zs=n.Zs,t._len=n.len;for(var a=1/0,o=-1/0,i=0;i{"use strict";zN.exports=function(r,t,n,a){a=a||r.length;for(var o=new Array(a),i=0;i{"use strict";var nse=pn().gl_mesh3d,ase=al().parseColorScale,ise=ir().isArrayOrTypedArray,ose=po(),lse=Li().extractOpts,qN=Wu(),W0=function(e,r){for(var t=r.length-1;t>0;t--){var n=Math.min(r[t],r[t-1]),a=Math.max(r[t],r[t-1]);if(a>n&&n-1}function U(Te,me){return Te===null?me:Te}function X(Te,me,ye){v();var pe=[me],ce=[ye];if(I>=1)pe=[me],ce=[ye];else if(I>0){var xe=P(me,ye);pe=xe.xyzv,ce=xe.abc}for(var Le=0;Le-1?ye[ze]:A($e,Ve,Be);Me>-1?qe[ze]=Me:qe[ze]=E($e,Ve,Be,U(Te,Ye))}R(qe[0],qe[1],qe[2])}}function $(Te,me,ye){var pe=function(ce,xe,Le){X(Te,[me[ce],me[xe],me[Le]],[ye[ce],ye[xe],ye[Le]])};pe(0,1,2),pe(2,3,0)}function j(Te,me,ye){var pe=function(ce,xe,Le){X(Te,[me[ce],me[xe],me[Le]],[ye[ce],ye[xe],ye[Le]])};pe(0,1,2),pe(3,0,1),pe(2,3,0),pe(1,2,3)}function Y(Te,me,ye,pe){var ce=Te[3];cepe&&(ce=pe);for(var xe=(Te[3]-ce)/(Te[3]-me[3]+1e-9),Le=[],qe=0;qe<4;qe++)Le[qe]=(1-xe)*Te[qe]+xe*me[qe];return Le}function q(Te,me,ye){return Te>=me&&Te<=ye}function K(Te){var me=.001*(M-x);return Te>=x-me&&Te<=M+me}function ne(Te){for(var me=[],ye=0;ye<4;ye++){var pe=Te[ye];me.push([e._x[pe],e._y[pe],e._z[pe],e._value[pe]])}return me}var Q=3;function oe(Te,me,ye,pe,ce,xe){xe||(xe=1),ye=[-1,-1,-1];var Le=!1,qe=[q(me[0][3],pe,ce),q(me[1][3],pe,ce),q(me[2][3],pe,ce)];if(!qe[0]&&!qe[1]&&!qe[2])return!1;var ze=function(Ve,Be,Ye){return K(Be[0][3])&&K(Be[1][3])&&K(Be[2][3])?(X(Ve,Be,Ye),!0):xeqe?[k,xe]:[xe,S];Ce(me,ze[0],ze[1])}}var $e=[[Math.min(x,S),Math.max(x,S)],[Math.min(k,M),Math.max(k,M)]];["x","y","z"].forEach(function(Ve){for(var Be=[],Ye=0;Ye<$e.length;Ye++){var Me=0,Re=$e[Ye][0],Qe=$e[Ye][1],Ke=e.slices[Ve];if(Ke.show&&Ke.fill){L(Ke.fill);var ar=[],se=[],J=[];if(Ke.locations.length)for(var ae=0;ae0&&(se.push(De.id),Ve==="x"?J.push([De.distRatio,0,0]):Ve==="y"?J.push([0,De.distRatio,0]):J.push([0,0,De.distRatio]))}else Ve==="x"?ar=Ue(1,b-1):Ve==="y"?ar=Ue(1,m-1):ar=Ue(1,w-1);se.length>0&&(Ve==="x"?Be[Me]=Pe(Te,se,Re,Qe,J,Be[Me]):Ve==="y"?Be[Me]=Ee(Te,se,Re,Qe,J,Be[Me]):Be[Me]=Ne(Te,se,Re,Qe,J,Be[Me]),Me++),ar.length>0&&(Ve==="x"?Be[Me]=ve(Te,ar,Re,Qe,Be[Me]):Ve==="y"?Be[Me]=ke(Te,ar,Re,Qe,Be[Me]):Be[Me]=Se(Te,ar,Re,Qe,Be[Me]),Me++)}var He=e.caps[Ve];He.show&&He.fill&&(L(He.fill),Ve==="x"?Be[Me]=ve(Te,[0,b-1],Re,Qe,Be[Me]):Ve==="y"?Be[Me]=ke(Te,[0,m-1],Re,Qe,Be[Me]):Be[Me]=Se(Te,[0,w-1],Re,Qe,Be[Me]),Me++)}}),l===0&&D(),e._meshX=d,e._meshY=_,e._meshZ=g,e._meshIntensity=c,e._Xs=f,e._Ys=h,e._Zs=p}return we(),e}function use(e,r){var t=e.glplot.gl,n=nse({gl:t}),a=new ON(e,n,r.uid);return n._trace=a,a.update(r),e.glplot.add(n),a}UN.exports={findNearestOnAxis:W0,generateIsoMeshes:BN,createIsosurfaceTrace:use}});var VN=de((Ape,HN)=>{"use strict";HN.exports={attributes:xd(),supplyDefaults:n5().supplyDefaults,calc:o5(),colorbar:{min:"cmin",max:"cmax"},plot:wd().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:il(),categories:["gl3d","showLegend"],meta:{}}});var YN=de((kpe,GN)=>{"use strict";GN.exports=VN()});var u5=de((Spe,XN)=>{"use strict";var fse=ri(),Yt=xd(),cse=V0(),WN=Sn(),s5=Tt().extendFlat,hse=zn().overrideAll,Md=XN.exports=hse(s5({x:Yt.x,y:Yt.y,z:Yt.z,value:Yt.value,isomin:Yt.isomin,isomax:Yt.isomax,surface:Yt.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:Yt.slices,caps:Yt.caps,text:Yt.text,hovertext:Yt.hovertext,xhoverformat:Yt.xhoverformat,yhoverformat:Yt.yhoverformat,zhoverformat:Yt.zhoverformat,valuehoverformat:Yt.valuehoverformat,hovertemplate:Yt.hovertemplate,hovertemplatefallback:Yt.hovertemplatefallback},fse("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:Yt.colorbar,opacity:Yt.opacity,opacityscale:cse.opacityscale,lightposition:Yt.lightposition,lighting:Yt.lighting,flatshading:Yt.flatshading,contour:Yt.contour,hoverinfo:s5({},WN.hoverinfo),showlegend:s5({},WN.showlegend,{dflt:!1})}),"calc","nested");Md.x.editType=Md.y.editType=Md.z.editType=Md.value.editType="calc+clearAxisTypes"});var JN=de((Cpe,ZN)=>{"use strict";var vse=ir(),dse=u5(),pse=n5().supplyIsoDefaults,gse=Q3().opacityscaleDefaults;ZN.exports=function(r,t,n,a){function o(i,l){return vse.coerce(r,t,dse,i,l)}pse(r,t,n,a,o),gse(r,t,a,o)}});var jN=de((Epe,$N)=>{"use strict";var yse=pn().gl_mesh3d,mse=al().parseColorScale,xse=ir().isArrayOrTypedArray,bse=po(),_se=Li().extractOpts,KN=Wu(),f5=wd().findNearestOnAxis,wse=wd().generateIsoMeshes;function QN(e,r,t){this.scene=e,this.uid=t,this.mesh=r,this.name="",this.data=null,this.showContour=!1}var c5=QN.prototype;c5.handlePick=function(e){if(e.object===this.mesh){var r=e.data.index,t=this.data._meshX[r],n=this.data._meshY[r],a=this.data._meshZ[r],o=this.data._Ys.length,i=this.data._Zs.length,l=f5(t,this.data._Xs).id,u=f5(n,this.data._Ys).id,s=f5(a,this.data._Zs).id,f=e.index=s+i*u+i*o*l;e.traceCoordinate=[this.data._meshX[f],this.data._meshY[f],this.data._meshZ[f],this.data._value[f]];var h=this.data.hovertext||this.data.text;return xse(h)&&h[f]!==void 0?e.textLabel=h[f]:h&&(e.textLabel=h),!0}};c5.update=function(e){var r=this.scene,t=r.fullSceneLayout;this.data=wse(e);function n(u,s,f,h){return s.map(function(p){return u.d2l(p,0,h)*f})}var a=KN(n(t.xaxis,e._meshX,r.dataScale[0],e.xcalendar),n(t.yaxis,e._meshY,r.dataScale[1],e.ycalendar),n(t.zaxis,e._meshZ,r.dataScale[2],e.zcalendar)),o=KN(e._meshI,e._meshJ,e._meshK),i={positions:a,cells:o,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,opacityscale:e.opacityscale,contourEnable:e.contour.show,contourColor:bse(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading},l=_se(e);i.vertexIntensity=e._meshIntensity,i.vertexIntensityBounds=[l.min,l.max],i.colormap=mse(e),this.mesh.update(i)};c5.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function Mse(e,r){var t=e.glplot.gl,n=yse({gl:t}),a=new QN(e,n,r.uid);return n._trace=a,a.update(r),e.glplot.add(n),a}$N.exports=Mse});var rz=de((Lpe,ez)=>{"use strict";ez.exports={attributes:u5(),supplyDefaults:JN(),calc:o5(),colorbar:{min:"cmin",max:"cmax"},plot:jN(),moduleType:"trace",name:"volume",basePlotModule:il(),categories:["gl3d","showLegend"],meta:{}}});var nz=de((Dpe,tz)=>{"use strict";tz.exports=rz()});var oz=de((Rpe,iz)=>{"use strict";var Tse=Cr(),az=ir(),Ase=Ei(),kse=Gu();iz.exports=function(r,t,n,a){function o(f,h){return az.coerce(r,t,kse,f,h)}function i(f){var h=f.map(function(p){var b=o(p);return b&&az.isArrayOrTypedArray(b)?b:null});return h.every(function(p){return p&&p.length===h[0].length})&&h}var l=i(["x","y","z"]);if(!l){t.visible=!1;return}if(i(["i","j","k"]),t.i&&(!t.j||!t.k)||t.j&&(!t.k||!t.i)||t.k&&(!t.i||!t.j)){t.visible=!1;return}var u=Tse.getComponentMethod("calendars","handleTraceDefaults");u(r,t,["x","y","z"],a),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach(function(f){o(f)});var s=o("contour.show");s&&(o("contour.color"),o("contour.width")),"intensity"in r?(o("intensity"),o("intensitymode"),Ase(r,t,a,o,{prefix:"",cLetter:"c"})):(t.showscale=!1,"facecolor"in r?o("facecolor"):"vertexcolor"in r?o("vertexcolor"):o("color",n)),o("text"),o("hovertext"),o("hovertemplate"),o("hovertemplatefallback"),o("xhoverformat"),o("yhoverformat"),o("zhoverformat"),t._length=null}});var sz=de((Ppe,lz)=>{"use strict";var Sse=zo();lz.exports=function(r,t){t.intensity&&Sse(r,t,{vals:t.intensity,containerStr:"",cLetter:"c"})}});var vz=de((Ipe,hz)=>{"use strict";var Cse=pn().gl_mesh3d,Ese=pn().delaunay_triangulate,Lse=pn().alpha_shape,Dse=pn().convex_hull,Rse=al().parseColorScale,Pse=ir().isArrayOrTypedArray,p5=po(),Ise=Li().extractOpts,uz=Wu();function cz(e,r,t){this.scene=e,this.uid=t,this.mesh=r,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var g5=cz.prototype;g5.handlePick=function(e){if(e.object===this.mesh){var r=e.index=e.data.index;e.data._cellCenter?e.traceCoordinate=e.data.dataCoordinate:e.traceCoordinate=[this.data.x[r],this.data.y[r],this.data.z[r]];var t=this.data.hovertext||this.data.text;return Pse(t)&&t[r]!==void 0?e.textLabel=t[r]:t&&(e.textLabel=t),!0}};function fz(e){for(var r=[],t=e.length,n=0;n=r-.5)return!1;return!0}g5.update=function(e){var r=this.scene,t=r.fullSceneLayout;this.data=e;var n=e.x.length,a=uz(h5(t.xaxis,e.x,r.dataScale[0],e.xcalendar),h5(t.yaxis,e.y,r.dataScale[1],e.ycalendar),h5(t.zaxis,e.z,r.dataScale[2],e.zcalendar)),o;if(e.i&&e.j&&e.k){if(e.i.length!==e.j.length||e.j.length!==e.k.length||!d5(e.i,n)||!d5(e.j,n)||!d5(e.k,n))return;o=uz(v5(e.i),v5(e.j),v5(e.k))}else e.alphahull===0?o=Dse(a):e.alphahull>0?o=Lse(e.alphahull,a):o=Fse(e.delaunayaxis,a);var i={positions:a,cells:o,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,contourEnable:e.contour.show,contourColor:p5(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading};if(e.intensity){var l=Ise(e);this.color="#fff";var u=e.intensitymode;i[u+"Intensity"]=e.intensity,i[u+"IntensityBounds"]=[l.min,l.max],i.colormap=Rse(e)}else e.vertexcolor?(this.color=e.vertexcolor[0],i.vertexColors=fz(e.vertexcolor)):e.facecolor?(this.color=e.facecolor[0],i.cellColors=fz(e.facecolor)):(this.color=e.color,i.meshColor=p5(e.color));this.mesh.update(i)};g5.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function Nse(e,r){var t=e.glplot.gl,n=Cse({gl:t}),a=new cz(e,n,r.uid);return n._trace=a,a.update(r),e.glplot.add(n),a}hz.exports=Nse});var pz=de((Fpe,dz)=>{"use strict";dz.exports={attributes:Gu(),supplyDefaults:oz(),calc:sz(),colorbar:{min:"cmin",max:"cmax"},plot:vz(),moduleType:"trace",name:"mesh3d",basePlotModule:il(),categories:["gl3d","showLegend"],meta:{}}});var yz=de((Npe,gz)=>{"use strict";gz.exports=pz()});var m5=de((zpe,xz)=>{"use strict";var zse=ri(),Xu=ro().axisHoverFormat,{hovertemplateAttrs:qse,templatefallbackAttrs:Ose}=Qa(),Bse=Gu(),mz=Sn(),y5=Tt().extendFlat,Td={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},sizemode:{valType:"enumerated",values:["scaled","absolute","raw"],editType:"calc",dflt:"scaled"},sizeref:{valType:"number",editType:"calc",min:0},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:qse({editType:"calc"},{keys:["norm"]}),hovertemplatefallback:Ose({editType:"calc"}),uhoverformat:Xu("u",1),vhoverformat:Xu("v",1),whoverformat:Xu("w",1),xhoverformat:Xu("x"),yhoverformat:Xu("y"),zhoverformat:Xu("z"),showlegend:y5({},mz.showlegend,{dflt:!1})};y5(Td,zse("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var Use=["opacity","lightposition","lighting"];Use.forEach(function(e){Td[e]=Bse[e]});Td.hoverinfo=y5({},mz.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"});xz.exports=Td});var _z=de((qpe,bz)=>{"use strict";var Hse=ir(),Vse=Ei(),Gse=m5();bz.exports=function(r,t,n,a){function o(b,m){return Hse.coerce(r,t,Gse,b,m)}var i=o("u"),l=o("v"),u=o("w"),s=o("x"),f=o("y"),h=o("z");if(!i||!i.length||!l||!l.length||!u||!u.length||!s||!s.length||!f||!f.length||!h||!h.length){t.visible=!1;return}var p=o("sizemode");o("sizeref",p==="raw"?1:.5),o("anchor"),o("lighting.ambient"),o("lighting.diffuse"),o("lighting.specular"),o("lighting.roughness"),o("lighting.fresnel"),o("lightposition.x"),o("lightposition.y"),o("lightposition.z"),Vse(r,t,a,o,{prefix:"",cLetter:"c"}),o("text"),o("hovertext"),o("hovertemplate"),o("hovertemplatefallback"),o("uhoverformat"),o("vhoverformat"),o("whoverformat"),o("xhoverformat"),o("yhoverformat"),o("zhoverformat"),t._length=null}});var Mz=de((Ope,wz)=>{"use strict";var Yse=zo();wz.exports=function(r,t){for(var n=t.u,a=t.v,o=t.w,i=Math.min(t.x.length,t.y.length,t.z.length,n.length,a.length,o.length),l=-1/0,u=1/0,s=0;s{"use strict";var Wse=pn().gl_cone3d,Xse=pn().gl_cone3d.createConeMesh,Zse=ir().simpleMap,Jse=al().parseColorScale,Kse=Li().extractOpts,Qse=ir().isArrayOrTypedArray,Tz=Wu();function Az(e,r){this.scene=e,this.uid=r,this.mesh=null,this.data=null}var x5=Az.prototype;x5.handlePick=function(e){if(e.object===this.mesh){var r=e.index=e.data.index,t=this.data.x[r],n=this.data.y[r],a=this.data.z[r],o=this.data.u[r],i=this.data.v[r],l=this.data.w[r];e.traceCoordinate=[t,n,a,o,i,l,Math.sqrt(o*o+i*i+l*l)];var u=this.data.hovertext||this.data.text;return Qse(u)&&u[r]!==void 0?e.textLabel=u[r]:u&&(e.textLabel=u),!0}};var $se={xaxis:0,yaxis:1,zaxis:2},jse={tip:1,tail:0,cm:.25,center:.5},eue={tip:1,tail:1,cm:.75,center:.5};function kz(e,r){var t=e.fullSceneLayout,n=e.dataScale,a={};function o(f,h){var p=t[h],b=n[$se[h]];return Zse(f,function(m){return p.d2l(m)*b})}a.vectors=Tz(o(r.u,"xaxis"),o(r.v,"yaxis"),o(r.w,"zaxis"),r._len),a.positions=Tz(o(r.x,"xaxis"),o(r.y,"yaxis"),o(r.z,"zaxis"),r._len);var i=Kse(r);a.colormap=Jse(r),a.vertexIntensityBounds=[i.min/r._normMax,i.max/r._normMax],a.coneOffset=jse[r.anchor];var l=r.sizemode;l==="scaled"?a.coneSize=r.sizeref||.5:l==="absolute"?a.coneSize=r.sizeref&&r._normMax?r.sizeref/r._normMax:.5:l==="raw"&&(a.coneSize=r.sizeref),a.coneSizemode=l;var u=Wse(a),s=r.lightposition;return u.lightPosition=[s.x,s.y,s.z],u.ambient=r.lighting.ambient,u.diffuse=r.lighting.diffuse,u.specular=r.lighting.specular,u.roughness=r.lighting.roughness,u.fresnel=r.lighting.fresnel,u.opacity=r.opacity,r._pad=eue[r.anchor]*u.vectorScale*u.coneScale*r._normMax,u}x5.update=function(e){this.data=e;var r=kz(this.scene,e);this.mesh.update(r)};x5.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function rue(e,r){var t=e.glplot.gl,n=kz(e,r),a=Xse(t,n),o=new Az(e,r.uid);return o.mesh=a,o.data=r,a._trace=o,e.glplot.add(a),o}Sz.exports=rue});var Lz=de((Upe,Ez)=>{"use strict";Ez.exports={moduleType:"trace",name:"cone",basePlotModule:il(),categories:["gl3d","showLegend"],attributes:m5(),supplyDefaults:_z(),colorbar:{min:"cmin",max:"cmax"},calc:Mz(),plot:Cz(),eventData:function(e,r){return e.norm=r.traceCoordinate[6],e},meta:{}}});var Rz=de((Hpe,Dz)=>{"use strict";Dz.exports=Lz()});var _5=de((Vpe,Iz)=>{"use strict";var tue=ri(),Zu=ro().axisHoverFormat,{hovertemplateAttrs:nue,templatefallbackAttrs:aue}=Qa(),iue=Gu(),Pz=Sn(),b5=Tt().extendFlat,Ad={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},starts:{x:{valType:"data_array",editType:"calc"},y:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},editType:"calc"},maxdisplayed:{valType:"integer",min:0,dflt:1e3,editType:"calc"},sizeref:{valType:"number",editType:"calc",min:0,dflt:1},text:{valType:"string",dflt:"",editType:"calc"},hovertext:{valType:"string",dflt:"",editType:"calc"},hovertemplate:nue({editType:"calc"},{keys:["tubex","tubey","tubez","tubeu","tubev","tubew","norm","divergence"]}),hovertemplatefallback:aue({editType:"calc"}),uhoverformat:Zu("u",1),vhoverformat:Zu("v",1),whoverformat:Zu("w",1),xhoverformat:Zu("x"),yhoverformat:Zu("y"),zhoverformat:Zu("z"),showlegend:b5({},Pz.showlegend,{dflt:!1})};b5(Ad,tue("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var oue=["opacity","lightposition","lighting"];oue.forEach(function(e){Ad[e]=iue[e]});Ad.hoverinfo=b5({},Pz.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","divergence","text","name"],dflt:"x+y+z+norm+text+name"});Iz.exports=Ad});var Nz=de((Gpe,Fz)=>{"use strict";var lue=ir(),sue=Ei(),uue=_5();Fz.exports=function(r,t,n,a){function o(p,b){return lue.coerce(r,t,uue,p,b)}var i=o("u"),l=o("v"),u=o("w"),s=o("x"),f=o("y"),h=o("z");if(!i||!i.length||!l||!l.length||!u||!u.length||!s||!s.length||!f||!f.length||!h||!h.length){t.visible=!1;return}o("starts.x"),o("starts.y"),o("starts.z"),o("maxdisplayed"),o("sizeref"),o("lighting.ambient"),o("lighting.diffuse"),o("lighting.specular"),o("lighting.roughness"),o("lighting.fresnel"),o("lightposition.x"),o("lightposition.y"),o("lightposition.z"),sue(r,t,a,o,{prefix:"",cLetter:"c"}),o("text"),o("hovertext"),o("hovertemplate"),o("hovertemplatefallback"),o("uhoverformat"),o("vhoverformat"),o("whoverformat"),o("xhoverformat"),o("yhoverformat"),o("zhoverformat"),t._length=null}});var Gz=de((Ype,Vz)=>{"use strict";var Oz=pn().gl_streamtube3d,fue=Oz.createTubeMesh,cue=ir(),hue=al().parseColorScale,vue=Li().extractOpts,zz=Wu(),Bz={xaxis:0,yaxis:1,zaxis:2};function Uz(e,r){this.scene=e,this.uid=r,this.mesh=null,this.data=null}var M5=Uz.prototype;M5.handlePick=function(e){var r=this.scene.fullSceneLayout,t=this.scene.dataScale;function n(i,l){var u=r[l],s=t[Bz[l]];return u.l2c(i)/s}if(e.object===this.mesh){var a=e.data.position,o=e.data.velocity;return e.traceCoordinate=[n(a[0],"xaxis"),n(a[1],"yaxis"),n(a[2],"zaxis"),n(o[0],"xaxis"),n(o[1],"yaxis"),n(o[2],"zaxis"),e.data.intensity*this.data._normMax,e.data.divergence],e.textLabel=this.data.hovertext||this.data.text,!0}};function qz(e){var r=e.length,t;return r>2?t=e.slice(1,r-1):r===2?t=[(e[0]+e[1])/2]:t=e,t}function w5(e){var r=e.length;return r===1?[.5,.5]:[e[1]-e[0],e[r-1]-e[r-2]]}function Hz(e,r){var t=e.fullSceneLayout,n=e.dataScale,a=r._len,o={};function i(D,E){var R=t[E],N=n[Bz[E]];return cue.simpleMap(D,function(F){return R.d2l(F)*N})}if(o.vectors=zz(i(r._u,"xaxis"),i(r._v,"yaxis"),i(r._w,"zaxis"),a),!a)return{positions:[],cells:[]};var l=i(r._Xs,"xaxis"),u=i(r._Ys,"yaxis"),s=i(r._Zs,"zaxis");o.meshgrid=[l,u,s],o.gridFill=r._gridFill;var f=r._slen;if(f)o.startingPositions=zz(i(r._startsX,"xaxis"),i(r._startsY,"yaxis"),i(r._startsZ,"zaxis"));else{for(var h=u[0],p=qz(l),b=qz(s),m=new Array(p.length*b.length),w=0,T=0;T{"use strict";Yz.exports={moduleType:"trace",name:"streamtube",basePlotModule:il(),categories:["gl3d","showLegend"],attributes:_5(),supplyDefaults:Nz(),colorbar:{min:"cmin",max:"cmax"},calc:bd().calc,plot:Gz(),eventData:function(e,r){return e.tubex=e.x,e.tubey=e.y,e.tubez=e.z,e.tubeu=r.traceCoordinate[3],e.tubev=r.traceCoordinate[4],e.tubew=r.traceCoordinate[5],e.norm=r.traceCoordinate[6],e.divergence=r.traceCoordinate[7],delete e.x,delete e.y,delete e.z,e},meta:{}}});var Zz=de((Xpe,Xz)=>{"use strict";Xz.exports=Wz()});var Rn=de((Zpe,Kz)=>{"use strict";var Jz=Object.getOwnPropertySymbols,pue=Object.prototype.hasOwnProperty,gue=Object.prototype.propertyIsEnumerable;function yue(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function mue(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var r={},t=0;t<10;t++)r["_"+String.fromCharCode(t)]=t;var n=Object.getOwnPropertyNames(r).map(function(o){return r[o]});if(n.join("")!=="0123456789")return!1;var a={};return"abcdefghijklmnopqrst".split("").forEach(function(o){a[o]=o}),Object.keys(Object.assign({},a)).join("")==="abcdefghijklmnopqrst"}catch(o){return!1}}Kz.exports=mue()?Object.assign:function(e,r){for(var t,n=yue(e),a,o=1;o{var Sd=Rn();function Qz(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}Sd(Qz.prototype,{instance:function(e,r){e=(e||"gregorian").toLowerCase(),r=r||"";var t=this._localCals[e+"-"+r];if(!t&&this.calendars[e]&&(t=new this.calendars[e](r),this._localCals[e+"-"+r]=t),!t)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return t},newDate:function(e,r,t,n,a){return n=(e!=null&&e.year?e.calendar():typeof n=="string"?this.instance(n,a):n)||this.instance(),n.newDate(e,r,t)},substituteDigits:function(e){return function(r){return(r+"").replace(/[0-9]/g,function(t){return e[t]})}},substituteChineseDigits:function(e,r){return function(t){for(var n="",a=0;t>0;){var o=t%10;n=(o===0?"":e[o]+r[a])+n,a++,t=Math.floor(t/10)}return n.indexOf(e[1]+r[1])===0&&(n=n.substr(1)),n||e[0]}}});function T5(e,r,t,n){if(this._calendar=e,this._year=r,this._month=t,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function kd(e,r){return e=""+e,"000000".substring(0,r-e.length)+e}Sd(T5.prototype,{newDate:function(e,r,t){return this._calendar.newDate(e==null?this:e,r,t)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,r,t){if(!this._calendar.isValid(e,r,t))throw(Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=r,this._day=t,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,r){return this._calendar.add(this,e,r)},set:function(e,r){return this._calendar.set(this,e,r)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(Yr.local.differentCalendars||Yr.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var r=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return r===0?0:r<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+kd(Math.abs(this.year()),4)+"-"+kd(this.month(),2)+"-"+kd(this.day(),2)}});function A5(){this.shortYearCutoff="+10"}Sd(A5.prototype,{_validateLevel:0,newDate:function(e,r,t){return e==null?this.today():(e.year&&(this._validate(e,r,t,Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate),t=e.day(),r=e.month(),e=e.year()),new T5(this,e,r,t))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var r=this._validate(e,this.minMonth,this.minDay,Yr.local.invalidYear||Yr.regionalOptions[""].invalidYear);return r.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Yr.local.invalidYear||Yr.regionalOptions[""].invalidYear);return(r.year()<0?"-":"")+kd(Math.abs(r.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Yr.local.invalidYear||Yr.regionalOptions[""].invalidYear),12},monthOfYear:function(e,r){var t=this._validate(e,r,this.minDay,Yr.local.invalidMonth||Yr.regionalOptions[""].invalidMonth);return(t.month()+this.monthsInYear(t)-this.firstMonth)%this.monthsInYear(t)+this.minMonth},fromMonthOfYear:function(e,r){var t=(r+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,t,this.minDay,Yr.local.invalidMonth||Yr.regionalOptions[""].invalidMonth),t},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Yr.local.invalidYear||Yr.regionalOptions[""].invalidYear);return this.leapYear(r)?366:365},dayOfYear:function(e,r,t){var n=this._validate(e,r,t,Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,r,t){var n=this._validate(e,r,t,Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(e,r,t){return this._validate(e,r,t,Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate),{}},add:function(e,r,t){return this._validate(e,this.minMonth,this.minDay,Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,r,t),r,t)},_add:function(e,r,t){if(this._validateLevel++,t==="d"||t==="w"){var n=e.toJD()+r*(t==="w"?this.daysInWeek():1),a=e.calendar().fromJD(n);return this._validateLevel--,[a.year(),a.month(),a.day()]}try{var o=e.year()+(t==="y"?r:0),i=e.monthOfYear()+(t==="m"?r:0),a=e.day(),l=function(f){for(;ih-1+f.minMonth;)o++,i-=h,h=f.monthsInYear(o)};t==="y"?(e.month()!==this.fromMonthOfYear(o,i)&&(i=this.newDate(o,e.month(),this.minDay).monthOfYear()),i=Math.min(i,this.monthsInYear(o)),a=Math.min(a,this.daysInMonth(o,this.fromMonthOfYear(o,i)))):t==="m"&&(l(this),a=Math.min(a,this.daysInMonth(o,this.fromMonthOfYear(o,i))));var u=[o,this.fromMonthOfYear(o,i),a];return this._validateLevel--,u}catch(s){throw this._validateLevel--,s}},_correctAdd:function(e,r,t,n){if(!this.hasYearZero&&(n==="y"||n==="m")&&(r[0]===0||e.year()>0!=r[0]>0)){var a={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],o=t<0?-1:1;r=this._add(e,t*a[0]+o*a[1],a[2])}return e.date(r[0],r[1],r[2])},set:function(e,r,t){this._validate(e,this.minMonth,this.minDay,Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate);var n=t==="y"?r:e.year(),a=t==="m"?r:e.month(),o=t==="d"?r:e.day();return(t==="y"||t==="m")&&(o=Math.min(o,this.daysInMonth(n,a))),e.date(n,a,o)},isValid:function(e,r,t){this._validateLevel++;var n=this.hasYearZero||e!==0;if(n){var a=this.newDate(e,r,this.minDay);n=r>=this.minMonth&&r-this.minMonth=this.minDay&&t-this.minDay13.5?13:1),s=a-(u>2.5?4716:4715);return s<=0&&s--,this.newDate(s,u,l)},toJSDate:function(e,r,t){var n=this._validate(e,r,t,Yr.local.invalidDate||Yr.regionalOptions[""].invalidDate),a=new Date(n.year(),n.month()-1,n.day());return a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0),a.setHours(a.getHours()>12?a.getHours()+2:0),a},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var Yr=$z.exports=new Qz;Yr.cdate=T5;Yr.baseCalendar=A5;Yr.calendars.gregorian=k5});var jz=de(()=>{var S5=Rn(),gn=Pn();S5(gn.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});gn.local=gn.regionalOptions[""];S5(gn.cdate.prototype,{formatDate:function(e,r){return typeof e!="string"&&(r=e,e=""),this._calendar.formatDate(e||"",this,r)}});S5(gn.baseCalendar.prototype,{UNIX_EPOCH:gn.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:gn.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,r,t){if(typeof e!="string"&&(t=r,r=e,e=""),!r)return"";if(r.calendar()!==this)throw gn.local.invalidFormat||gn.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,t=t||{};for(var n=t.dayNamesShort||this.local.dayNamesShort,a=t.dayNames||this.local.dayNames,o=t.monthNumbers||this.local.monthNumbers,i=t.monthNamesShort||this.local.monthNamesShort,l=t.monthNames||this.local.monthNames,u=t.calculateWeek||this.local.calculateWeek,s=function(x,M){for(var d=1;S+d1},f=function(x,M,d,_){var g=""+M;if(s(x,_))for(;g.length1},k=function(D,E){var R=y(D,E),N=[2,3,R?4:2,R?4:2,10,11,20]["oyYJ@!".indexOf(D)+1],F=new RegExp("^-?\\d{1,"+N+"}"),I=r.substring(g).match(F);if(!I)throw(gn.local.missingNumberAt||gn.regionalOptions[""].missingNumberAt).replace(/\{0\}/,g);return g+=I[0].length,parseInt(I[0],10)},S=this,x=function(){if(typeof l=="function"){y("m");var D=l.call(S,r.substring(g));return g+=D.length,D}return k("m")},M=function(D,E,R,N){for(var F=y(D,N)?R:E,I=0;I-1){p=1,b=m;for(var v=this.daysInMonth(h,p);b>v;v=this.daysInMonth(h,p))p++,b-=v}return f>-1?this.fromJD(f):this.newDate(h,p,b)},determineDate:function(e,r,t,n,a){t&&typeof t!="object"&&(a=n,n=t,t=null),typeof n!="string"&&(a=n,n="");var o=this,i=function(l){try{return o.parseDate(n,l,a)}catch(h){}l=l.toLowerCase();for(var u=(l.match(/^c/)&&t?t.newDate():null)||o.today(),s=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,f=s.exec(l);f;)u.add(parseInt(f[1],10),f[2]||"d"),f=s.exec(l);return u};return r=r?r.newDate():null,e=e==null?r:typeof e=="string"?i(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?r:o.today().add(e,"d"):o.newDate(e),e}})});var eq=de(()=>{var sl=Pn(),xue=Rn(),C5=sl.instance();function Cd(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Cd.prototype=new sl.baseCalendar;xue(Cd.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,r){if(typeof e=="string"){var t=e.match(_ue);return t?t[0]:""}var n=this._validateYear(e),a=e.month(),o=""+this.toChineseMonth(n,a);return r&&o.length<2&&(o="0"+o),this.isIntercalaryMonth(n,a)&&(o+="i"),o},monthNames:function(e){if(typeof e=="string"){var r=e.match(wue);return r?r[0]:""}var t=this._validateYear(e),n=e.month(),a=this.toChineseMonth(t,n),o=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][a-1];return this.isIntercalaryMonth(t,n)&&(o="\u95F0"+o),o},monthNamesShort:function(e){if(typeof e=="string"){var r=e.match(Mue);return r?r[0]:""}var t=this._validateYear(e),n=e.month(),a=this.toChineseMonth(t,n),o=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][a-1];return this.isIntercalaryMonth(t,n)&&(o="\u95F0"+o),o},parseMonth:function(e,r){e=this._validateYear(e);var t=parseInt(r),n;if(isNaN(t))r[0]==="\u95F0"&&(n=!0,r=r.substring(1)),r[r.length-1]==="\u6708"&&(r=r.substring(0,r.length-1)),t=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(r);else{var a=r[r.length-1];n=a==="i"||a==="I"}var o=this.toMonthIndex(e,t,n);return o},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,r){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw r.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,r,t){var n=this.intercalaryMonth(e),a=t&&r!==n;if(a||r<1||r>12)throw sl.local.invalidMonth.replace(/\{0\}/,this.local.name);var o;return n?!t&&r<=n?o=r-1:o=r:o=r-1,o},toChineseMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e),n=t?12:11;if(r<0||r>n)throw sl.local.invalidMonth.replace(/\{0\}/,this.local.name);var a;return t?r>13;return t},isIntercalaryMonth:function(e,r){e.year&&(e=e.year(),r=e.month());var t=this.intercalaryMonth(e);return!!t&&t===r},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,r,t){var n=this._validateYear(e,sl.local.invalidyear),a=fl[n-fl[0]],o=a>>9&4095,i=a>>5&15,l=a&31,u;u=C5.newDate(o,i,l),u.add(4-(u.dayOfWeek()||7),"d");var s=this.toJD(e,r,t)-u.toJD();return 1+Math.floor(s/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,r){e.year&&(r=e.month(),e=e.year()),e=this._validateYear(e);var t=ul[e-ul[0]],n=t>>13,a=n?12:11;if(r>a)throw sl.local.invalidMonth.replace(/\{0\}/,this.local.name);var o=t&1<<12-r?30:29;return o},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,o,t,sl.local.invalidDate);e=this._validateYear(n.year()),r=n.month(),t=n.day();var a=this.isIntercalaryMonth(e,r),o=this.toChineseMonth(e,r),i=Aue(e,o,t,a);return C5.toJD(i.year,i.month,i.day)},fromJD:function(e){var r=C5.fromJD(e),t=Tue(r.year(),r.month(),r.day()),n=this.toMonthIndex(t.year,t.month,t.isIntercalary);return this.newDate(t.year,n,t.day)},fromString:function(e){var r=e.match(bue),t=this._validateYear(+r[1]),n=+r[2],a=!!r[3],o=this.toMonthIndex(t,n,a),i=+r[4];return this.newDate(t,o,i)},add:function(e,r,t){var n=e.year(),a=e.month(),o=this.isIntercalaryMonth(n,a),i=this.toChineseMonth(n,a),l=Object.getPrototypeOf(Cd.prototype).add.call(this,e,r,t);if(t==="y"){var u=l.year(),s=l.month(),f=this.isIntercalaryMonth(u,i),h=o&&f?this.toMonthIndex(u,i,!0):this.toMonthIndex(u,i,!1);h!==s&&l.month(h)}return l}});var bue=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,_ue=/^\d?\d[iI]?/m,wue=/^闰?十?[一二三四五六七八九]?月/m,Mue=/^闰?十?[一二三四五六七八九]?/m;sl.calendars.chinese=Cd;var ul=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],fl=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function Tue(e,r,t,n){var a,o;if(typeof e=="object")a=e,o=r||{};else{var i=typeof e=="number"&&e>=1888&&e<=2111;if(!i)throw new Error("Solar year outside range 1888-2111");var l=typeof r=="number"&&r>=1&&r<=12;if(!l)throw new Error("Solar month outside range 1 - 12");var u=typeof t=="number"&&t>=1&&t<=31;if(!u)throw new Error("Solar day outside range 1 - 31");a={year:e,month:r,day:t},o=n||{}}var s=fl[a.year-fl[0]],f=a.year<<9|a.month<<5|a.day;o.year=f>=s?a.year:a.year-1,s=fl[o.year-fl[0]];var h=s>>9&4095,p=s>>5&15,b=s&31,m,w=new Date(h,p-1,b),T=new Date(a.year,a.month-1,a.day);m=Math.round((T-w)/(24*3600*1e3));var y=ul[o.year-ul[0]],k;for(k=0;k<13;k++){var S=y&1<<12-k?30:29;if(m>13;return!x||k=1888&&e<=2111;if(!l)throw new Error("Lunar year outside range 1888-2111");var u=typeof r=="number"&&r>=1&&r<=12;if(!u)throw new Error("Lunar month outside range 1 - 12");var s=typeof t=="number"&&t>=1&&t<=30;if(!s)throw new Error("Lunar day outside range 1 - 30");var f;typeof n=="object"?(f=!1,o=n):(f=!!n,o=a||{}),i={year:e,month:r,day:t,isIntercalary:f}}var h;h=i.day-1;var p=ul[i.year-ul[0]],b=p>>13,m;b&&(i.month>b||i.isIntercalary)?m=i.month:m=i.month-1;for(var w=0;w>9&4095,S=y>>5&15,x=y&31,M=new Date(k,S-1,x+h);return o.year=M.getFullYear(),o.month=1+M.getMonth(),o.day=M.getDate(),o}});var rq=de(()=>{var vs=Pn(),kue=Rn();function E5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}E5.prototype=new vs.baseCalendar;kue(E5.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,vs.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,vs.local.invalidYear||vs.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,vs.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,r,t,vs.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var n=Math.floor(r/30)+1,a=r-(n-1)*30+1;return this.newDate(t,n,a)}});vs.calendars.coptic=E5});var tq=de(()=>{var mo=Pn(),Sue=Rn();function L5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}L5.prototype=new mo.baseCalendar;Sue(L5.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,mo.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,mo.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,mo.local.invalidYear),400},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/8)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,mo.local.invalidMonth);return this.daysPerMonth[t.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,r,t){var n=this._validate(e,r,t,mo.local.invalidDate);return(n.day()+1)%8},weekDay:function(e,r,t){var n=this.dayOfWeek(e,r,t);return n>=2&&n<=6},extraInfo:function(e,r,t){var n=this._validate(e,r,t,mo.local.invalidDate);return{century:Cue[Math.floor((n.year()-1)/100)+1]||""}},toJD:function(e,r,t){var n=this._validate(e,r,t,mo.local.invalidDate);return e=n.year()+(n.year()<0?1:0),r=n.month(),t=n.day(),t+(r>1?16:0)+(r>2?(r-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var r=Math.floor(e/400)+1;e-=(r-1)*400,e+=e>15?16:0;var t=Math.floor(e/32)+1,n=e-(t-1)*32+1;return this.newDate(r<=0?r-1:r,t,n)}});var Cue={20:"Fruitbat",21:"Anchovy"};mo.calendars.discworld=L5});var nq=de(()=>{var ds=Pn(),Eue=Rn();function D5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}D5.prototype=new ds.baseCalendar;Eue(D5.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,ds.local.invalidYear),t=r.year()+(r.year()<0?1:0);return t%4===3||t%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ds.local.invalidYear||ds.regionalOptions[""].invalidYear),13},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,ds.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===13&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,r,t,ds.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var r=Math.floor(e)+.5-this.jdEpoch,t=Math.floor((r-Math.floor((r+366)/1461))/365)+1;t<=0&&t--,r=Math.floor(e)+.5-this.newDate(t,1,1).toJD();var n=Math.floor(r/30)+1,a=r-(n-1)*30+1;return this.newDate(t,n,a)}});ds.calendars.ethiopian=D5});var aq=de(()=>{var cl=Pn(),Lue=Rn();function R5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}R5.prototype=new cl.baseCalendar;Lue(R5.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,cl.local.invalidYear);return this._leapYear(r.year())},_leapYear:function(e){return e=e<0?e+1:e,Ed(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,cl.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,cl.local.invalidYear);return e=r.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,cl.local.invalidMonth),r===12&&this.leapYear(e)||r===8&&Ed(this.daysInYear(e),10)===5?30:r===9&&Ed(this.daysInYear(e),10)===3?29:this.daysPerMonth[r-1]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},extraInfo:function(e,r,t){var n=this._validate(e,r,t,cl.local.invalidDate);return{yearType:(this.leapYear(n)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(n)%10-3]}},toJD:function(e,r,t){var n=this._validate(e,r,t,cl.local.invalidDate);e=n.year(),r=n.month(),t=n.day();var a=e<=0?e+1:e,o=this.jdEpoch+this._delay1(a)+this._delay2(a)+t+1;if(r<7){for(var i=7;i<=this.monthsInYear(e);i++)o+=this.daysInMonth(e,i);for(var i=1;i=this.toJD(r===-1?1:r+1,7,1);)r++;for(var t=ethis.toJD(r,t,this.daysInMonth(r,t));)t++;var n=e-this.toJD(r,t,1)+1;return this.newDate(r,t,n)}});function Ed(e,r){return e-r*Math.floor(e/r)}cl.calendars.hebrew=R5});var iq=de(()=>{var X0=Pn(),Due=Rn();function P5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}P5.prototype=new X0.baseCalendar;Due(P5.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,X0.local.invalidYear);return(r.year()*11+14)%30<11},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,X0.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var n=this._validate(e,r,t,X0.local.invalidDate);return e=n.year(),r=n.month(),t=n.day(),e=e<=0?e+1:e,t+Math.ceil(29.5*(r-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=Math.floor((30*(e-this.jdEpoch)+10646)/10631);r=r<=0?r-1:r;var t=Math.min(12,Math.ceil((e-29-this.toJD(r,1,1))/29.5)+1),n=e-this.toJD(r,t,1)+1;return this.newDate(r,t,n)}});X0.calendars.islamic=P5});var oq=de(()=>{var Z0=Pn(),Rue=Rn();function I5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}I5.prototype=new Z0.baseCalendar;Rue(I5.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,Z0.local.invalidYear),t=r.year()<0?r.year()+1:r.year();return t%4===0},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Z0.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(e,r,t){var n=this._validate(e,r,t,Z0.local.invalidDate);return e=n.year(),r=n.month(),t=n.day(),e<0&&e++,r<=2&&(e--,r+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(r+1))+t-1524.5},fromJD:function(e){var r=Math.floor(e+.5),t=r+1524,n=Math.floor((t-122.1)/365.25),a=Math.floor(365.25*n),o=Math.floor((t-a)/30.6001),i=o-Math.floor(o<14?1:13),l=n-Math.floor(i>2?4716:4715),u=t-a-Math.floor(30.6001*o);return l<=0&&l--,this.newDate(l,i,u)}});Z0.calendars.julian=I5});var sq=de(()=>{var Ya=Pn(),Pue=Rn();function N5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}N5.prototype=new Ya.baseCalendar;Pue(N5.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ya.local.invalidYear),!1},formatYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Ya.local.invalidYear);e=r.year();var t=Math.floor(e/400);e=e%400,e+=e<0?400:0;var n=Math.floor(e/20);return t+"."+n+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var r=0,t=0;t19||t>0&&n<0)throw"Invalid Mayan year";r=r*20+n}return r},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ya.local.invalidYear),18},weekOfYear:function(e,r,t){return this._validate(e,r,t,Ya.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ya.local.invalidYear),360},daysInMonth:function(e,r){return this._validate(e,r,this.minDay,Ya.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,r,t){var n=this._validate(e,r,t,Ya.local.invalidDate);return n.day()},weekDay:function(e,r,t){return this._validate(e,r,t,Ya.local.invalidDate),!0},extraInfo:function(e,r,t){var n=this._validate(e,r,t,Ya.local.invalidDate),a=n.toJD(),o=this._toHaab(a),i=this._toTzolkin(a);return{haabMonthName:this.local.haabMonths[o[0]-1],haabMonth:o[0],haabDay:o[1],tzolkinDayName:this.local.tzolkinMonths[i[0]-1],tzolkinDay:i[0],tzolkinTrecena:i[1]}},_toHaab:function(e){e-=this.jdEpoch;var r=F5(e+8+17*20,365);return[Math.floor(r/20)+1,F5(r,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[lq(e+20,20),lq(e+4,13)]},toJD:function(e,r,t){var n=this._validate(e,r,t,Ya.local.invalidDate);return n.day()+n.month()*20+n.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var r=Math.floor(e/360);e=e%360,e+=e<0?360:0;var t=Math.floor(e/20),n=e%20;return this.newDate(r,t,n)}});function F5(e,r){return e-r*Math.floor(e/r)}function lq(e,r){return F5(e-1,r)+1}Ya.calendars.mayan=N5});var fq=de(()=>{var ps=Pn(),Iue=Rn();function z5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}z5.prototype=new ps.baseCalendar;var uq=ps.instance("gregorian");Iue(z5.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,ps.local.invalidYear||ps.regionalOptions[""].invalidYear);return uq.leapYear(r.year()+(r.year()<1?1:0)+1469)},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,ps.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(a,r,t){var n=this._validate(a,r,t,ps.local.invalidMonth),a=n.year();a<0&&a++;for(var o=n.day(),i=1;i=this.toJD(r+1,1,1);)r++;for(var t=e-Math.floor(this.toJD(r,1,1)+.5)+1,n=1;t>this.daysInMonth(r,n);)t-=this.daysInMonth(r,n),n++;return this.newDate(r,n,t)}});ps.calendars.nanakshahi=z5});var cq=de(()=>{var gs=Pn(),Fue=Rn();function q5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}q5.prototype=new gs.baseCalendar;Fue(q5.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,gs.local.invalidYear);if(e=r.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var t=0,n=this.minMonth;n<=12;n++)t+=this.NEPALI_CALENDAR_DATA[e][n];return t},daysInMonth:function(e,r){return e.year&&(r=e.month(),e=e.year()),this._validate(e,r,this.minDay,gs.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[r-1]:this.NEPALI_CALENDAR_DATA[e][r]},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==6},toJD:function(e,r,t){var n=this._validate(e,r,t,gs.local.invalidDate);e=n.year(),r=n.month(),t=n.day();var a=gs.instance(),o=0,i=r,l=e;this._createMissingCalendarData(e);var u=e-(i>9||i===9&&t>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(r!==9&&(o=t,i--);i!==9;)i<=0&&(i=12,l--),o+=this.NEPALI_CALENDAR_DATA[l][i],i--;return r===9?(o+=t-this.NEPALI_CALENDAR_DATA[l][0],o<0&&(o+=a.daysInYear(u))):o+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],a.newDate(u,1,1).add(o,"d").toJD()},fromJD:function(e){var r=gs.instance(),t=r.fromJD(e),n=t.year(),a=t.dayOfYear(),o=n+56;this._createMissingCalendarData(o);for(var i=9,l=this.NEPALI_CALENDAR_DATA[o][0],u=this.NEPALI_CALENDAR_DATA[o][i]-l+1;a>u;)i++,i>12&&(i=1,o++),u+=this.NEPALI_CALENDAR_DATA[o][i];var s=this.NEPALI_CALENDAR_DATA[o][i]-(u-a);return this.newDate(o,i,s)},_createMissingCalendarData:function(e){var r=this.daysPerMonth.slice(0);r.unshift(17);for(var t=e-1;t{var Ju=Pn(),Nue=Rn();function Dd(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function Ld(e){var r=e-475;e<0&&r++;var t=.242197,n=t*r,a=t*(r+1),o=n-Math.floor(n),i=a-Math.floor(a);return o>i}Dd.prototype=new Ju.baseCalendar;Nue(Dd.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,Ju.local.invalidYear);return Ld(r.year())},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-((n.dayOfWeek()+1)%7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,Ju.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===12&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var n=this._validate(e,r,t,Ju.local.invalidDate);e=n.year(),r=n.month(),t=n.day();var a=0;if(e>0)for(var o=1;o0?e-1:e)*365+a+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var r=475+(e-this.toJD(475,1,1))/365.242197,t=Math.floor(r);t<=0&&t--,e>this.toJD(t,12,Ld(t)?30:29)&&(t++,t===0&&t++);var n=e-this.toJD(t,1,1)+1,a=n<=186?Math.ceil(n/31):Math.ceil((n-6)/30),o=e-this.toJD(t,a,1)+1;return this.newDate(t,a,o)}});Ju.calendars.persian=Dd;Ju.calendars.jalali=Dd});var vq=de(()=>{var ys=Pn(),zue=Rn(),Rd=ys.instance();function O5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}O5.prototype=new ys.baseCalendar;zue(O5.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,ys.local.invalidYear),t=this._t2gYear(r.year());return Rd.leapYear(t)},weekOfYear:function(a,r,t){var n=this._validate(a,this.minMonth,this.minDay,ys.local.invalidYear),a=this._t2gYear(n.year());return Rd.weekOfYear(a,n.month(),n.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,ys.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(a,r,t){var n=this._validate(a,r,t,ys.local.invalidDate),a=this._t2gYear(n.year());return Rd.toJD(a,n.month(),n.day())},fromJD:function(e){var r=Rd.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});ys.calendars.taiwan=O5});var dq=de(()=>{var ms=Pn(),que=Rn(),Pd=ms.instance();function B5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}B5.prototype=new ms.baseCalendar;que(B5.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(t){var r=this._validate(t,this.minMonth,this.minDay,ms.local.invalidYear),t=this._t2gYear(r.year());return Pd.leapYear(t)},weekOfYear:function(a,r,t){var n=this._validate(a,this.minMonth,this.minDay,ms.local.invalidYear),a=this._t2gYear(n.year());return Pd.weekOfYear(a,n.month(),n.day())},daysInMonth:function(e,r){var t=this._validate(e,r,this.minDay,ms.local.invalidMonth);return this.daysPerMonth[t.month()-1]+(t.month()===2&&this.leapYear(t.year())?1:0)},weekDay:function(e,r,t){return(this.dayOfWeek(e,r,t)||7)<6},toJD:function(a,r,t){var n=this._validate(a,r,t,ms.local.invalidDate),a=this._t2gYear(n.year());return Pd.toJD(a,n.month(),n.day())},fromJD:function(e){var r=Pd.fromJD(e),t=this._g2tYear(r.year());return this.newDate(t,r.month(),r.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});ms.calendars.thai=B5});var pq=de(()=>{var xs=Pn(),Oue=Rn();function U5(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}U5.prototype=new xs.baseCalendar;Oue(U5.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var r=this._validate(e,this.minMonth,this.minDay,xs.local.invalidYear);return this.daysInYear(r.year())===355},weekOfYear:function(e,r,t){var n=this.newDate(e,r,t);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var r=0,t=1;t<=12;t++)r+=this.daysInMonth(e,t);return r},daysInMonth:function(e,r){for(var t=this._validate(e,r,this.minDay,xs.local.invalidMonth),n=t.toJD()-24e5+.5,a=0,o=0;on)return hl[a]-hl[a-1];a++}return 30},weekDay:function(e,r,t){return this.dayOfWeek(e,r,t)!==5},toJD:function(e,r,t){var n=this._validate(e,r,t,xs.local.invalidDate),a=12*(n.year()-1)+n.month()-15292,o=n.day()+hl[a-1]-1;return o+24e5-.5},fromJD:function(e){for(var r=e-24e5+.5,t=0,n=0;nr);n++)t++;var a=t+15292,o=Math.floor((a-1)/12),i=o+1,l=a-12*o,u=r-hl[t-1]+1;return this.newDate(i,l,u)},isValid:function(e,r,t){var n=xs.baseCalendar.prototype.isValid.apply(this,arguments);return n&&(e=e.year!=null?e.year:e,n=e>=1276&&e<=1500),n},_validate:function(e,r,t,n){var a=xs.baseCalendar.prototype._validate.apply(this,arguments);if(a.year<1276||a.year>1500)throw n.replace(/\{0\}/,this.local.name);return a}});xs.calendars.ummalqura=U5;var hl=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var yq=de((kge,gq)=>{"use strict";gq.exports=Pn();jz();eq();rq();tq();nq();aq();iq();oq();sq();fq();cq();hq();vq();dq();pq()});var Tq=de((Sge,Mq)=>{"use strict";var xq=yq(),J0=ir(),bq=nn(),Bue=bq.EPOCHJD,Uue=bq.ONEDAY,G5={valType:"enumerated",values:J0.sortObjectKeys(xq.calendars),editType:"calc",dflt:"gregorian"},_q=function(e,r,t,n){var a={};return a[t]=G5,J0.coerce(e,r,a,t,n)},Hue=function(e,r,t,n){for(var a=0;a{"use strict";Aq.exports=Tq()});var Zue=de((Ege,Cq)=>{var Sq=AI();Sq.register([tN(),SN(),YN(),nz(),yz(),Rz(),Zz(),kq()]);Cq.exports=Sq});return Zue();})(); /*! * pad-left * diff --git a/dist/plotly-mapbox.js b/dist/plotly-mapbox.js index 71221e10321..c252fdd5eb3 100644 --- a/dist/plotly-mapbox.js +++ b/dist/plotly-mapbox.js @@ -1,5 +1,5 @@ /** -* plotly.js (mapbox) v3.3.0 +* plotly.js (mapbox) v3.3.1 * 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.3.0"; + exports.version = "3.3.1"; } }); @@ -8750,7 +8750,7 @@ var Plotly = (() => { var isArrayOrTypedArray = require_array().isArrayOrTypedArray; module.exports = function nestedProperty(container, propStr) { if (isNumeric(propStr)) propStr = String(propStr); - else if (typeof propStr !== "string" || propStr.substr(propStr.length - 4) === "[-1]") { + else if (typeof propStr !== "string" || propStr.slice(-4) === "[-1]") { throw "bad property string"; } var propParts = propStr.split("."); @@ -8769,7 +8769,7 @@ var Plotly = (() => { if (indexed[1]) propParts[j] = indexed[1]; else if (j === 0) propParts.splice(0, 1); else throw "bad property string"; - indices = indexed[2].substr(1, indexed[2].length - 2).split("]["); + indices = indexed[2].slice(1, -1).split("]["); for (i = 0; i < indices.length; i++) { j++; propParts.splice(j, 0, Number(indices[i])); @@ -10847,11 +10847,11 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { key = keys[i]; val = container[key]; - if (key.substr(key.length - 5) === "color") { + if (key.slice(-5) === "color") { if (Array.isArray(val)) { for (j = 0; j < val.length; j++) val[j] = cleanOne(val[j]); } else container[key] = cleanOne(val); - } else if (key.substr(key.length - 10) === "colorscale" && Array.isArray(val)) { + } else if (key.slice(-10) === "colorscale" && Array.isArray(val)) { for (j = 0; j < val.length; j++) { if (Array.isArray(val[j])) val[j][1] = cleanOne(val[j][1]); } @@ -10866,7 +10866,7 @@ var Plotly = (() => { function cleanOne(val) { if (isNumeric(val) || typeof val !== "string") return val; var valTrim = val.trim(); - if (valTrim.substr(0, 3) !== "rgb") return val; + if (valTrim.slice(0, 3) !== "rgb") return val; var match = valTrim.match(/^rgba?\s*\(([^()]*)\)$/); if (!match) return val; var parts = match[1].trim().split(/\s*[\s,]\s*/); @@ -10960,7 +10960,7 @@ var Plotly = (() => { for (var i = 0; i < values.length; i++) { var k = String(values[i]); if (k.charAt(0) === "/" && k.charAt(k.length - 1) === "/") { - var regex = new RegExp(k.substr(1, k.length - 2)); + var regex = new RegExp(k.slice(1, -1)); if (regex.test(v)) return true; } else if (v === values[i]) return true; } @@ -10968,9 +10968,13 @@ var Plotly = (() => { } }, boolean: { - coerceFunction: function(v, propOut, dflt) { - if (v === true || v === false) propOut.set(v); - else propOut.set(dflt); + coerceFunction: function(v, propOut, dflt, opts) { + const isBoolean = (value) => value === true || value === false; + if (isBoolean(v) || opts.arrayOk && Array.isArray(v) && v.length > 0 && v.every(isBoolean)) { + propOut.set(v); + } else { + propOut.set(dflt); + } } }, number: { @@ -11037,11 +11041,12 @@ var Plotly = (() => { subplotid: { coerceFunction: function(v, propOut, dflt, opts) { var regex = opts.regex || counterRegex(dflt); - if (typeof v === "string" && regex.test(v)) { + const isSubplotId = (value) => typeof value === "string" && regex.test(value); + if (isSubplotId(v) || opts.arrayOk && isArrayOrTypedArray(v) && v.length > 0 && v.every(isSubplotId)) { propOut.set(v); - return; + } else { + propOut.set(dflt); } - propOut.set(dflt); }, validateFunction: function(v, opts) { var dflt = opts.dflt; @@ -13747,9 +13752,9 @@ var Plotly = (() => { var require_maplibre_gl = __commonJS({ "node_modules/maplibre-gl/dist/maplibre-gl.css"() { (function() { - if (!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")) { + if (!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")) { var e = document.createElement("style"); - e.id = "ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe"; + e.id = "696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97"; e.textContent = `.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`; document.head.appendChild(e); } @@ -14072,10 +14077,10 @@ var Plotly = (() => { var isWorld = isWorldCalendar(calendar); var s0 = s.charAt(0); if (isWorld && (s0 === "G" || s0 === "g")) { - s = s.substr(1); + s = s.slice(1); calendar = ""; } - var isChinese = isWorld && calendar.substr(0, 7) === "chinese"; + var isChinese = isWorld && calendar.slice(0, 7) === "chinese"; var match = s.match(isChinese ? DATETIME_REGEXP_CN : DATETIME_REGEXP); if (!match) return BADNUM; var y = match[1]; @@ -14119,7 +14124,7 @@ var Plotly = (() => { return exports.dateTime2ms(s, calendar) !== BADNUM; }; function lpad(val, digits) { - return String(val + Math.pow(10, digits)).substr(1); + return String(val + Math.pow(10, digits)).slice(1); } var NINETYDAYS = 90 * ONEDAY; var THREEHOURS = 3 * ONEHOUR; @@ -14139,7 +14144,7 @@ var Plotly = (() => { dateStr = utcFormat("G%Y-%m-%d")(new Date(msRounded)); } if (dateStr.charAt(0) === "-") { - while (dateStr.length < 11) dateStr = "-0" + dateStr.substr(1); + while (dateStr.length < 11) dateStr = "-0" + dateStr.slice(1); } else { while (dateStr.length < 10) dateStr = "0" + dateStr; } @@ -14211,7 +14216,7 @@ var Plotly = (() => { function modDateFormat(fmt, x, formatter, calendar) { fmt = fmt.replace(fracMatch, function(match) { var digits = Math.min(+match.charAt(1) || 6, 6); - var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).substr(2).replace(/0+$/, "") || "0"; + var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).slice(2).replace(/0+$/, "") || "0"; return fracSecs; }); var d = new Date(Math.floor(x + 0.05)); @@ -14234,7 +14239,7 @@ var Plotly = (() => { if (tr !== "M") { if (!isNumeric(tr)) tr = 0; var sec = Math.min(mod(x / ONESEC, 60), MAXSECONDS[tr]); - var secStr = (100 + sec).toFixed(tr).substr(1); + var secStr = (100 + sec).toFixed(tr).slice(1); if (tr > 0) { secStr = secStr.replace(/0+$/, "").replace(/[\.]$/, ""); } @@ -14948,8 +14953,8 @@ var Plotly = (() => { if (part.indexOf("Safari") !== -1) { for (var k = i - 1; k > -1; k--) { var prevPart = allParts[k]; - if (prevPart.substr(0, 8) === "Version/") { - var v = prevPart.substr(8).split(".")[0]; + if (prevPart.slice(0, 8) === "Version/") { + var v = prevPart.slice(8).split(".")[0]; if (isNumeric(v)) v = +v; if (v >= 13) return true; } @@ -15416,7 +15421,7 @@ var Plotly = (() => { return finalStep && finalStep(arg); }; lib.stripTrailingSlash = function(str) { - if (str.substr(-1) === "/") return str.substr(0, str.length - 1); + if (str.slice(-1) === "/") return str.slice(0, -1); return str; }; lib.noneOrAll = function(containerIn, containerOut, attrList) { @@ -15577,7 +15582,7 @@ var Plotly = (() => { } lib.minExtend = minExtend; lib.titleCase = function(s) { - return s.charAt(0).toUpperCase() + s.substr(1); + return s.charAt(0).toUpperCase() + s.slice(1); }; lib.containsAny = function(s, fragments) { for (var i = 0; i < fragments.length; i++) { @@ -17089,7 +17094,7 @@ var Plotly = (() => { if (name.charAt(lastChar) !== "s") { Lib.warn("bad argument to arrayDefaultKey: " + name); } - return name.substr(0, name.length - 1) + "defaults"; + return name.slice(0, -1) + "defaults"; } exports.arrayDefaultKey = arrayDefaultKey; exports.arrayEditor = function(parentIn, containerStr, itemOut) { @@ -17214,13 +17219,13 @@ var Plotly = (() => { var constants = require_constants2(); exports.id2name = function id2name(id) { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; - var axNum = id.split(" ")[0].substr(1); + var axNum = id.split(" ")[0].slice(1); if (axNum === "1") axNum = ""; return id.charAt(0) + "axis" + axNum; }; exports.name2id = function name2id(name) { if (!name.match(constants.AX_NAME_PATTERN)) return; - var axNum = name.substr(5); + var axNum = name.slice(5); if (axNum === "1") axNum = ""; return name.charAt(0) + axNum; }; @@ -17229,7 +17234,7 @@ var Plotly = (() => { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; if (axLetter && id.charAt(0) !== axLetter) return; if (domainTest && !domainId) return; - var axNum = id.split(" ")[0].substr(1).replace(/^0+/, ""); + var axNum = id.split(" ")[0].slice(1).replace(/^0+/, ""); if (axNum === "1") axNum = ""; return id.charAt(0) + axNum + (domainTest && domainId ? " domain" : ""); }; @@ -17241,7 +17246,7 @@ var Plotly = (() => { var i; for (i = 0; i < idList.length; i++) { var idi = idList[i]; - out[i] = fullLayout[idi.charAt(0) + "axis" + idi.substr(1)]; + out[i] = fullLayout[idi.charAt(0) + "axis" + idi.slice(1)]; } if (!only2d) { var sceneIds3D = fullLayout._subplots.gl3d || []; @@ -17272,7 +17277,7 @@ var Plotly = (() => { var ax = null; if (Registry.traceIs(fullTrace, "gl3d")) { var scene = fullTrace.scene; - if (scene.substr(0, 5) === "scene") { + if (scene.slice(0, 5) === "scene") { ax = fullLayout[scene][type + "axis"]; } } else { @@ -17284,7 +17289,7 @@ var Plotly = (() => { var letter1 = id1.charAt(0); var letter2 = id2.charAt(0); if (letter1 !== letter2) return letter1 > letter2 ? 1 : -1; - return +(id1.substr(1) || 1) - +(id2.substr(1) || 1); + return +(id1.slice(1) || 1) - +(id2.slice(1) || 1); }; exports.ref2id = function(ar) { return /^[xyz]/.test(ar) ? ar.split(" ")[0] : false; @@ -18517,7 +18522,12 @@ var Plotly = (() => { _module.attributes.showlegend ? _module.attributes : plots.attributes, "showlegend" ); - coerce("legend"); + Lib.coerce( + traceIn, + traceOut, + _module.attributes.legend ? _module.attributes : plots.attributes, + "legend" + ); coerce("legendwidth"); coerce("legendgroup"); coerce("legendgrouptitle.text"); @@ -18652,7 +18662,7 @@ var Plotly = (() => { Lib.coerce(layoutIn, layoutOut, scatterAttrs, "scattermode"); }; function getComputedSize(attr) { - return typeof attr === "string" && attr.substr(attr.length - 2) === "px" && parseFloat(attr); + return typeof attr === "string" && attr.slice(-2) === "px" && parseFloat(attr); } plots.plotAutoSize = function plotAutoSize(gd, layout, fullLayout) { var context = gd._context || {}; @@ -19092,7 +19102,7 @@ var Plotly = (() => { return; } if (mode === "keepdata") { - if (v.substr(v.length - 3) === "src") { + if (v.slice(-3) === "src") { return; } } else if (mode === "keepstream") { @@ -20324,9 +20334,9 @@ var Plotly = (() => { newParts.pop(); } if (len > eLen) { - newParts.push(p.substr(0, pLen2 - eLen) + ellipsis); + newParts.push(p.slice(0, Math.max(0, pLen2 - eLen)) + ellipsis); } else { - newParts.push(p.substr(0, pLen2)); + newParts.push(p.slice(0, pLen2)); } break; } @@ -20351,7 +20361,7 @@ var Plotly = (() => { var outChar; if (innerMatch.charAt(0) === "#") { outChar = fromCodePoint( - innerMatch.charAt(1) === "x" ? parseInt(innerMatch.substr(2), 16) : parseInt(innerMatch.substr(1), 10) + innerMatch.charAt(1) === "x" ? parseInt(innerMatch.slice(2), 16) : parseInt(innerMatch.slice(1), 10) ); } else outChar = entityToUnicode[innerMatch]; return outChar || fullMatch; @@ -21983,7 +21993,7 @@ var Plotly = (() => { return dtickDflt; } var prefix = dtick.charAt(0); - var dtickNum = dtick.substr(1); + var dtickNum = dtick.slice(1); dtickNum = isNumeric(dtickNum) ? Number(dtickNum) : 0; if (dtickNum <= 0 || !// "M" gives ticks every (integer) n months (isDate && prefix === "M" && dtickNum === Math.round(dtickNum) || // "L" gives ticks linearly spaced in data (not in position) every (float) f @@ -26840,7 +26850,7 @@ var Plotly = (() => { var stats = Lib.findExactDates(data, calendar); var threshold = 0.8; if (stats.exactDays > threshold) { - var numMonths = Number(dtick.substr(1)); + var numMonths = Number(dtick.slice(1)); if (stats.exactYears > threshold && numMonths % 12 === 0) { binStart = axes.tickIncrement(binStart, "M6", "reverse") + ONEDAY * 1.5; } else if (stats.exactMonths > threshold) { @@ -27492,8 +27502,8 @@ var Plotly = (() => { var tick0str = ax.l2r(tick0ms).replace(/(^-|i)/g, ""); var tick0len = tick0str.length; if (String(dtick).charAt(0) === "M") { - if (tick0len > 10 || tick0str.substr(5) !== "01-01") ax._tickround = "d"; - else ax._tickround = +dtick.substr(1) % 12 === 0 ? "y" : "m"; + if (tick0len > 10 || tick0str.slice(5) !== "01-01") ax._tickround = "d"; + else ax._tickround = +dtick.slice(1) % 12 === 0 ? "y" : "m"; } else if (dtick >= ONEDAY && tick0len <= 10 || dtick >= ONEDAY * 15) ax._tickround = "d"; else if (dtick >= ONEMIN && tick0len <= 16 || dtick >= ONEHOUR) ax._tickround = "M"; else if (dtick >= ONESEC && tick0len <= 19 || dtick >= ONEMIN) ax._tickround = "S"; @@ -27504,7 +27514,7 @@ var Plotly = (() => { } } else if (isNumeric(dtick) || dtick.charAt(0) === "L") { var rng = ax.range.map(ax.r2d || Number); - if (!isNumeric(dtick)) dtick = Number(dtick.substr(1)); + if (!isNumeric(dtick)) dtick = Number(dtick.slice(1)); ax._tickround = 2 - Math.floor(Math.log(dtick) / Math.LN10 + 0.01); var maxend = Math.max(Math.abs(rng[0]), Math.abs(rng[1])); var rangeexp = Math.floor(Math.log(maxend) / Math.LN10 + 0.01); @@ -27522,7 +27532,7 @@ var Plotly = (() => { var axSign = axrev ? -1 : 1; if (isNumeric(dtick)) return Lib.increment(x, axSign * dtick); var tType = dtick.charAt(0); - var dtSigned = axSign * Number(dtick.substr(1)); + var dtSigned = axSign * Number(dtick.slice(1)); if (tType === "M") return Lib.incrementMonth(x, dtSigned, calendar); if (tType === "L") return Math.log(Math.pow(10, x) + dtSigned) / Math.LN10; if (tType === "D") { @@ -27549,7 +27559,7 @@ var Plotly = (() => { return tmin; } var tType = dtick.charAt(0); - var dtNum = Number(dtick.substr(1)); + var dtNum = Number(dtick.slice(1)); if (tType === "M") { var cnt = 0; var t0 = tick0; @@ -27679,8 +27689,8 @@ var Plotly = (() => { var headStr; var splitIndex = dateStr.indexOf("\n"); if (splitIndex !== -1) { - headStr = dateStr.substr(splitIndex + 1); - dateStr = dateStr.substr(0, splitIndex); + headStr = dateStr.slice(splitIndex + 1); + dateStr = dateStr.slice(0, splitIndex); } if (extraPrecision) { if (headStr !== void 0 && (dateStr === "00:00:00" || dateStr === "00:00")) { @@ -27901,12 +27911,12 @@ var Plotly = (() => { if (tickRound === 0) v = String(Math.floor(v)); else if (tickRound < 0) { v = String(Math.round(v)); - v = v.substr(0, v.length + tickRound); + v = v.slice(0, Math.max(0, v.length + tickRound)); for (var i = tickRound; i < 0; i++) v += "0"; } else { v = String(v); var dp = v.indexOf(".") + 1; - if (dp) v = v.substr(0, dp + tickRound).replace(/\.?0+$/, ""); + if (dp) v = v.slice(0, dp + tickRound).replace(/\.?0+$/, ""); } v = Lib.numSeparate(v, ax._separators, separatethousands); } @@ -28001,8 +28011,8 @@ var Plotly = (() => { var allSubplots = subplotObj.cartesian.concat(subplotObj.gl2d || []); var out = ax ? axes.findSubplotsWithAxis(allSubplots, ax) : allSubplots; out.sort(function(a, b) { - var aParts = a.substr(1).split("y"); - var bParts = b.substr(1).split("y"); + var aParts = a.slice(1).split("y"); + var bParts = b.slice(1).split("y"); if (aParts[0] === bParts[0]) return +aParts[1] - +bParts[1]; return +aParts[0] - +bParts[0]; }); @@ -29977,7 +29987,7 @@ var Plotly = (() => { for (var i = 0; i < classes.length; i++) { var cls = classes[i]; if (cls.indexOf("cursor-") === 0) { - el3.attr(STASHATTR, cls.substr(7)).classed(cls, false); + el3.attr(STASHATTR, cls.slice(7)).classed(cls, false); } } if (!el3.attr(STASHATTR)) { @@ -30219,8 +30229,33 @@ var Plotly = (() => { var shapesWithLegend = (layoutOut.shapes || []).filter(function(d) { return d.showlegend; }); + function isPieWithLegendArray(trace2) { + return Registry.traceIs(trace2, "pie-like") && trace2._length != null && (Array.isArray(trace2.legend) || Array.isArray(trace2.showlegend)); + } + ; + fullData.filter(isPieWithLegendArray).forEach(function(trace2) { + if (trace2.visible) { + legendTraceCount++; + } + for (var index = 0; index < trace2._length; index++) { + var legend = (Array.isArray(trace2.legend) ? trace2.legend[index] : trace2.legend) || "legend"; + if (legend === legendId) { + const showInLegend = Array.isArray(trace2.showlegend) ? trace2.showlegend[index] : trace2.showlegend; + if (showInLegend || trace2._dfltShowLegend) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + } + if (legendId === "legend" && trace2._length > trace2.legend.length) { + for (var idx = trace2.legend.length; idx < trace2._length; idx++) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + }); var allLegendItems = fullData.concat(shapesWithLegend).filter(function(d) { - return legendId === (d.legend || "legend"); + return !isPieWithLegendArray(trace) && legendId === (d.legend || "legend"); }); for (var i = 0; i < allLegendItems.length; i++) { trace = allLegendItems[i]; @@ -30248,7 +30283,7 @@ var Plotly = (() => { layoutOut, basePlotLayoutAttributes, "showlegend", - legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) + layoutOut.showlegend || legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) ); if (showLegend === false) layoutOut[legendId] = void 0; if (showLegend === false && !containerIn.uirevision) return; @@ -30353,7 +30388,11 @@ var Plotly = (() => { } var legends = ["legend"]; for (i = 0; i < allLegendsData.length; i++) { - Lib.pushUnique(legends, allLegendsData[i].legend); + if (Array.isArray(allLegendsData[i].legend)) { + legends = legends.concat(allLegendsData[i].legend); + } else { + Lib.pushUnique(legends, allLegendsData[i].legend); + } } layoutOut._legends = []; for (i = 0; i < legends.length; i++) { @@ -30644,8 +30683,16 @@ var Plotly = (() => { var lgroup = trace.legendgroup; if (!inHover && (!trace.visible || !trace.showlegend)) continue; if (Registry.traceIs(trace, "pie-like")) { + var legendPerSlice = Array.isArray(trace.legend); + var showlegendPerSlice = Array.isArray(trace.showlegend); if (!slicesShown[lgroup]) slicesShown[lgroup] = {}; for (j = 0; j < cd.length; j++) { + if (showlegendPerSlice && trace.showlegend[cd[j].i] === false) { + continue; + } + if (legendPerSlice) { + lid = trace.legend[cd[j].i] || "legend"; + } var labelj = cd[j].label; if (!slicesShown[lgroup][labelj]) { addOneItem(lid, lgroup, { @@ -31841,7 +31888,11 @@ var Plotly = (() => { } function computeTextDimensions(g, gd, legendObj, aTitle) { var legendItem = g.data()[0][0]; - if (!legendObj._inHover && legendItem && !legendItem.trace.showlegend) { + var showlegend = legendItem && legendItem.trace.showlegend; + if (Array.isArray(showlegend)) { + showlegend = showlegend[legendItem.i] !== false; + } + if (!legendObj._inHover && legendItem && !showlegend) { g.remove(); return; } @@ -35111,7 +35162,7 @@ var Plotly = (() => { segments.forEach(function(segment) { var relevantParamIdx = paramsToUse[segment.charAt(0)].drawn; if (relevantParamIdx === void 0) return; - var params = segment.substr(1).match(constants.paramRE); + var params = segment.slice(1).match(constants.paramRE); if (!params || params.length < relevantParamIdx) return; var str = params[relevantParamIdx]; var pos = isRaw ? str : Lib.cleanNumber(str); @@ -35302,7 +35353,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (xParams[paramNumber]) { if (xSizemode === "pixel") param = x2p(xAnchor) + Number(param); else param = x2p(param); @@ -36311,7 +36362,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (paramNumber >= nParams) return param; if (xParams[paramNumber]) param = moveX(param); else if (yParams[paramNumber]) param = moveY(param); @@ -38034,12 +38085,12 @@ var Plotly = (() => { if (typeof a === "string") { aPrefix = a.match(/^[xy]*/)[0]; aLen = aPrefix.length; - a = +a.substr(aLen); + a = +a.slice(aLen); } if (typeof b === "string") { bPrefix = b.match(/^[xy]*/)[0]; bLen = bPrefix.length; - b = +b.substr(bLen); + b = +b.slice(bLen); } var c = a * b; if (!aLen && !bLen) { @@ -38051,7 +38102,7 @@ var Plotly = (() => { if (aLen === bLen) { return c; } - return (aLen > bLen ? aPrefix.substr(bLen) : bPrefix.substr(aLen)) + c; + return (aLen > bLen ? aPrefix.slice(bLen) : bPrefix.slice(aLen)) + c; } function finalRatios(group, fullLayout) { var size = fullLayout._size; @@ -38064,7 +38115,7 @@ var Plotly = (() => { if (typeof val === "string") { var prefix = val.match(/^[xy]*/)[0]; var pLen = prefix.length; - val = +val.substr(pLen); + val = +val.slice(pLen); var mult = prefix.charAt(0) === "y" ? yRatio : 1 / yRatio; for (var j = 0; j < pLen; j++) { val *= mult; @@ -43681,7 +43732,7 @@ var Plotly = (() => { } if (!arrayStr) arrayStr = rootContainers[rootContainers.indexOf(rootPart)]; if (!arrayStr) return false; - var tail = astr.substr(arrayStr.length); + var tail = astr.slice(arrayStr.length); if (!tail) return { array: arrayStr, index: "", property: "" }; match = tail.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/); if (!match) return false; @@ -44038,7 +44089,7 @@ var Plotly = (() => { for (i = 0; i < minLen; i++) { if (name1.charAt(i) !== name2.charAt(i)) break; } - var out = name1.substr(0, i); + var out = name1.slice(0, i); return out.trim(); } function cleanTextPosition(textposition) { @@ -44119,7 +44170,7 @@ var Plotly = (() => { var ATTR_TAIL_RE = /(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/; function getParent(attr) { var tail = attr.search(ATTR_TAIL_RE); - if (tail > 0) return attr.substr(0, tail); + if (tail > 0) return attr.slice(0, tail); } exports.hasParent = function(aobj, attr) { var attrParent = getParent(attr); @@ -44136,8 +44187,8 @@ var Plotly = (() => { var ax = getFromTrace(gd, trace, AX_LETTERS[j]); if (ax && ax.type !== "log") { var axAttr = ax._name; - var sceneName = ax._id.substr(1); - if (sceneName.substr(0, 5) === "scene") { + var sceneName = ax._id.slice(1); + if (sceneName.slice(0, 5) === "scene") { if (layoutUpdate[sceneName] !== void 0) continue; axAttr = sceneName + "." + axAttr; } @@ -45019,7 +45070,7 @@ var Plotly = (() => { } if (attr in aobj || helpers.hasParent(aobj, attr)) return; var extraparam; - if (attr.substr(0, 6) === "LAYOUT") { + if (attr.slice(0, 6) === "LAYOUT") { extraparam = layoutNP(gd.layout, attr.replace("LAYOUT", "")); } else { var tracei = traces[i2]; @@ -45064,7 +45115,7 @@ var Plotly = (() => { else vi = null; } redoit[ai] = vi; - if (ai.substr(0, 6) === "LAYOUT") { + if (ai.slice(0, 6) === "LAYOUT") { param = layoutNP(gd.layout, ai.replace("LAYOUT", "")); undoit[ai] = [undefinedToNull(param.get())]; param.set(Array.isArray(vi) ? vi[0] : vi); @@ -45081,7 +45132,7 @@ var Plotly = (() => { newVal = Array.isArray(vi) ? vi[i % vi.length] : vi; if (newVal === void 0) continue; var finalPart = param.parts[param.parts.length - 1]; - var prefix = ai.substr(0, ai.length - finalPart.length - 1); + var prefix = ai.slice(0, ai.length - finalPart.length - 1); var prefixDot = prefix ? prefix + "." : ""; var innerContFull = prefix ? nestedProperty(contFull, prefix).get() : contFull; valObject = PlotSchema.getTraceValObject(contFull, param.parts); @@ -45306,7 +45357,7 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { if (keys[i].indexOf("allaxes") === 0) { for (j = 0; j < axes.length; j++) { - var scene = axes[j]._id.substr(1); + var scene = axes[j]._id.slice(1); var axisAttr = scene.indexOf("scene") !== -1 ? scene + "." : ""; var newkey = keys[i].replace("allaxes", axisAttr + axes[j]._name); if (!aobj[newkey]) aobj[newkey] = aobj[keys[i]]; @@ -45614,7 +45665,7 @@ var Plotly = (() => { var match = key.match(spec.pattern); if (match) { var head = match[1] || ""; - return { head, tail: key.substr(head.length + 1), attr: spec.attr }; + return { head, tail: key.slice(head.length + 1), attr: spec.attr }; } } } @@ -45675,7 +45726,7 @@ var Plotly = (() => { } newNP.set(undefinedToNull(nestedProperty(oldFullLayout, key).get())); continue; - } else if (tail === "autorange" || tail.substr(0, 6) === "range[") { + } else if (tail === "autorange" || tail.slice(0, 6) === "range[") { var pre0 = layoutPreGUI[head + ".range[0]"]; var pre1 = layoutPreGUI[head + ".range[1]"]; var preAuto = layoutPreGUI[head + ".autorange"]; @@ -45695,7 +45746,7 @@ var Plotly = (() => { Lib.warn("unrecognized GUI edit: " + key); } delete layoutPreGUI[key]; - if (match && match.tail.substr(0, 6) === "range[") { + if (match && match.tail.slice(0, 6) === "range[") { newRangeAccepted[match.head] = 1; } } @@ -47219,7 +47270,7 @@ var Plotly = (() => { for (var i = 0; i < path.length; i++) { var p = path[i]; if (typeof p === "number") { - astr = astr.substr(0, astr.length - 1) + "[" + p + "]"; + astr = astr.slice(0, -1) + "[" + p + "]"; } else { astr += p; } @@ -49810,7 +49861,7 @@ var Plotly = (() => { prevtrace._nexttrace = trace; } } - trace._ownfill = trace.fill && (trace.fill.substr(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.substr(0, 2) === "to" && !trace._prevtrace); + trace._ownfill = trace.fill && (trace.fill.slice(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.slice(0, 2) === "to" && !trace._prevtrace); prevtraces[group] = trace; } else { trace._prevtrace = trace._nexttrace = trace._ownfill = null; @@ -50013,8 +50064,8 @@ var Plotly = (() => { fullpath = thispath; revpath = thisrevpath; } else if (ownFillDir) { - fullpath += "L" + thispath.substr(1); - revpath = thisrevpath + ("L" + revpath.substr(1)); + fullpath += "L" + thispath.slice(1); + revpath = thisrevpath + ("L" + revpath.slice(1)); } else { fullpath += "Z" + thispath; revpath = thisrevpath + "Z" + revpath; @@ -50079,7 +50130,7 @@ var Plotly = (() => { if (pt0 && pt1) { if (ownFillDir) { pt0[fillAxisIndex] = pt1[fillAxisIndex] = fillAxisZero; - transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.substr(1)).call(Drawing.singleFillStyle, gd); + transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.slice(1)).call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(null); } else { transition(ownFillEl3).attr("d", fullpath + "Z").call(Drawing.singleFillStyle, gd); @@ -50089,13 +50140,13 @@ var Plotly = (() => { trace._polygons = thisPolygons; trace._fillElement = ownFillEl3; } else if (tonext) { - if (trace.fill.substr(0, 6) === "tonext" && fullpath && prevRevpath) { + if (trace.fill.slice(0, 6) === "tonext" && fullpath && prevRevpath) { if (trace.fill === "tonext") { transition(tonext).attr("d", fullpath + "Z" + prevRevpath + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makeSelfPolygons(); trace._polygons = thisPolygons.concat(prevPolygons); } else { - transition(tonext).attr("d", fullpath + "L" + prevRevpath.substr(1) + "Z").call(Drawing.singleFillStyle, gd); + transition(tonext).attr("d", fullpath + "L" + prevRevpath.slice(1) + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(prevFillsegments); trace._polygons = thisPolygons; } @@ -51070,7 +51121,7 @@ var Plotly = (() => { }; function indexOfDay(v) { if (typeof v !== "string") return; - return dayStrToNum[v.substr(0, 3).toLowerCase()]; + return dayStrToNum[v.slice(0, 3).toLowerCase()]; } } }); @@ -51661,10 +51712,10 @@ var Plotly = (() => { if (constants.attrRegex.test(ki)) { var axLetter = ki.charAt(0); if (axLetter === "x") { - if (!xi || +ki.substr(5) < +xi.substr(5)) { + if (!xi || +ki.slice(5) < +xi.slice(5)) { xi = ki; } - } else if (!yi || +ki.substr(5) < +yi.substr(5)) { + } else if (!yi || +ki.slice(5) < +yi.slice(5)) { yi = ki; } } @@ -53888,7 +53939,7 @@ var Plotly = (() => { segment = segments[i]; drawnParam = paramsToUse[segment.charAt(0)].drawn; if (drawnParam === void 0) continue; - params = segments[i].substr(1).match(constants.paramRE); + params = segments[i].slice(1).match(constants.paramRE); if (!params || params.length < drawnParam) continue; val = convertVal(params[drawnParam]); if (val < min) min = val; @@ -56239,9 +56290,9 @@ var Plotly = (() => { var subplots = layoutOut._subplots; if (subplots) { var yIds = subplots.cartesian.filter(function(subplotId) { - return subplotId.substr(0, subplotId.indexOf("y")) === axisIds.name2id(axName); + return subplotId.slice(0, Math.max(0, subplotId.indexOf("y"))) === axisIds.name2id(axName); }).map(function(subplotId) { - return subplotId.substr(subplotId.indexOf("y"), subplotId.length); + return subplotId.slice(subplotId.indexOf("y"), subplotId.length); }); var yNames = Lib.simpleMap(yIds, axisIds.id2name); for (var i = 0; i < yNames.length; i++) { @@ -58243,7 +58294,7 @@ var Plotly = (() => { placeholder: fullLayout._dfltTitle.colorbar, containerGroup: g.select("." + cn.cbtitle) }; - var otherClass = titleClass.charAt(0) === "h" ? titleClass.substr(1) : "h" + titleClass; + var otherClass = titleClass.charAt(0) === "h" ? titleClass.slice(1) : "h" + titleClass; g.selectAll("." + otherClass + ",." + otherClass + "-math-group").remove(); Titles.draw(gd, titleClass, extendFlat(dfltTitleOpts, titleOpts || {})); } @@ -114829,7 +114880,7 @@ var Plotly = (() => { } else { if (directiveObj === UNKNOWN) replacementPart = UNKNOWN; else replacementPart = cDate.formatDate(directiveObj[modifier]); - fmt = fmt.substr(0, i) + replacementPart + fmt.substr(i + directiveLen); + fmt = fmt.slice(0, i) + replacementPart + fmt.slice(i + directiveLen); i += replacementPart.length; } } diff --git a/dist/plotly-mapbox.min.js b/dist/plotly-mapbox.min.js index 732472d046b..92b248f2c7d 100644 --- a/dist/plotly-mapbox.min.js +++ b/dist/plotly-mapbox.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (mapbox - minified) v3.3.0 +* plotly.js (mapbox - minified) v3.3.1 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,18 +12,18 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var rj=Object.defineProperty,aj=Object.defineProperties;var ij=Object.getOwnPropertyDescriptors;var y7=Object.getOwnPropertySymbols;var nj=Object.prototype.hasOwnProperty,oj=Object.prototype.propertyIsEnumerable;var g7=(e,t,r)=>t in e?rj(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,$v=(e,t)=>{for(var r in t||(t={}))nj.call(t,r)&&g7(e,r,t[r]);if(y7)for(var r of y7(t))oj.call(t,r)&&g7(e,r,t[r]);return e},Y1=(e,t)=>aj(e,ij(t));var pe=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var W1=pe(_7=>{"use strict";_7.version="3.3.0"});var b7=pe((x7,X1)=>{(function(t,r,i){r[t]=r[t]||i(),typeof X1!="undefined"&&X1.exports&&(X1.exports=r[t])})("Promise",typeof window!="undefined"?window:x7,function(){"use strict";var t,r,i,a=Object.prototype.toString,s=typeof setImmediate!="undefined"?function(B){return setImmediate(B)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(B,q,I,O){return Object.defineProperty(B,q,{value:I,writable:!0,configurable:O!==!1})}}catch(z){t=function(q,I,O){return q[I]=O,q}}i=function(){var B,q,I;function O(H,V){this.fn=H,this.self=V,this.next=void 0}return{add:function(V,W){I=new O(V,W),q?q.next=I:B=I,q=I,I=void 0},drain:function(){var V=B;for(B=q=r=void 0;V;)V.fn.call(V.self),V=V.next}}}();function l(z,B){i.add(z,B),r||(r=s(i.drain))}function f(z){var B,q=typeof z;return z!=null&&(q=="object"||q=="function")&&(B=z.then),typeof B=="function"?B:!1}function h(){for(var z=0;z0&&l(h,q))}catch(I){_.call(new S(q),I)}}}function _(z){var B=this;B.triggered||(B.triggered=!0,B.def&&(B=B.def),B.msg=z,B.state=2,B.chain.length>0&&l(h,B))}function T(z,B,q,I){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 P=M.length,N=new Array(P);P--;)N[P]=M[P];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,P){f.call(this,M,P+"")},l.setAttributeNS=function(M,P,N){h.call(this,M,P,N+"")},v.setProperty=function(M,P,N){m.call(this,M,P+"",N)}}e.ascending=_;function _(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 P=-1,N=y.length,U,Z;if(arguments.length===1){for(;++P=Z){U=Z;break}for(;++PZ&&(U=Z)}else{for(;++P=Z){U=Z;break}for(;++PZ&&(U=Z)}return U},e.max=function(y,M){var P=-1,N=y.length,U,Z;if(arguments.length===1){for(;++P=Z){U=Z;break}for(;++PU&&(U=Z)}else{for(;++P=Z){U=Z;break}for(;++PU&&(U=Z)}return U},e.extent=function(y,M){var P=-1,N=y.length,U,Z,$;if(arguments.length===1){for(;++P=Z){U=$=Z;break}for(;++PZ&&(U=Z),$=Z){U=$=Z;break}for(;++PZ&&(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,P,N,U){for(arguments.length<3&&(N=0),arguments.length<4&&(U=M.length);N>>1;y(M[Z],P)<0?N=Z+1:U=Z}return N},right:function(M,P,N,U){for(arguments.length<3&&(N=0),arguments.length<4&&(U=M.length);N>>1;y(M[Z],P)>0?U=Z:N=Z+1}return N}}}var E=C(_);e.bisectLeft=E.left,e.bisect=e.bisectRight=E.right,e.bisector=function(y){return C(y.length===1?function(M,P){return _(y(M),P)}:y)},e.shuffle=function(y,M,P){(N=arguments.length)<3&&(P=y.length,N<2&&(M=0));for(var N=P-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 P=M.length,N=new Array(P);P--;)N[P]=y[M[P]];return N},e.pairs=function(y){for(var M=0,P=y.length-1,N,U=y[0],Z=new Array(P<0?0:P);M=0;)for($=y[M],P=$.length;--P>=0;)Z[--U]=$[P];return Z};var z=Math.abs;e.range=function(y,M,P){if(arguments.length<3&&(P=1,arguments.length<2&&(M=y,y=0)),(M-y)/P===1/0)throw new Error("infinite range");var N=[],U=B(z(P)),Z=-1,$;if(y*=U,M*=U,P*=U,P<0)for(;($=y+P*++Z)>M;)N.push($/U);else for(;($=y+P*++Z)=M.length)return U?U.call(y,ae):N?ae.sort(N):ae;for(var _e=-1,ze=ae.length,Pe=M[me++],Qe,ot,Ie,Ve=new I,Je;++_e=M.length)return X;var me=[],_e=P[ae++];return X.forEach(function(ze,Pe){me.push({key:ze,values:$(Pe,ae)})}),_e?me.sort(function(ze,Pe){return _e(ze.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 P[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 P=0,N=y.length;P=0&&(N=y.slice(P+1),y=y.slice(0,P)),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=[],P=new I;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 $=P.get(U),X;return arguments.length<2?$&&$.on:($&&($.on=null,M=M.slice(0,X=M.indexOf($)).concat(M.slice(X+1)),P.remove(U)),Z&&M.push(P.set(U,{on:Z})),y)},N}e.event=null;function Ke(){e.event.preventDefault()}function lt(){for(var y=e.event,M;M=y.sourceEvent;)y=M;return y}function at(y){for(var M=new Ce,P=0,N=arguments.length;++P=0&&(P=y.slice(0,M))!=="xmlns"&&(y=y.slice(M+1)),rt.hasOwnProperty(P)?{space:rt[P],local:y}:y}},vt.attr=function(y,M){if(arguments.length<2){if(typeof y=="string"){var P=this.node();return y=e.ns.qualify(y),y.local?P.getAttributeNS(y.space,y.local):P.getAttribute(y)}for(M in y)this.each(dt(M,y[M]));return this}return this.each(dt(y,M))};function dt(y,M){y=e.ns.qualify(y);function P(){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:P:typeof M=="function"?y.local?X:$:y.local?Z:U}function We(y){return y.trim().replace(/\s+/g," ")}vt.classed=function(y,M){if(arguments.length<2){if(typeof y=="string"){var P=this.node(),N=(y=Dt(y)).length,U=-1;if(M=P.classList){for(;++U=0;)(Z=P[N])&&(U&&U!==Z.nextSibling&&U.parentNode.insertBefore(Z,U),U=Z);return this},vt.sort=function(y){y=st.apply(this,arguments);for(var M=-1,P=this.length;++M=M&&(M=U+1);!(ae=$[M])&&++M0&&(y=y.slice(0,U));var $=Ot.get(y);$&&(y=$,Z=Zt);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.$=P),_e._=M}function me(){var _e=new RegExp("^__on([^.]+)"+e.requote(y)+"$"),ze;for(var Pe in this)if(ze=Pe.match(_e)){var Qe=this[Pe];this.removeEventListener(ze[1],Qe,Qe.$),delete this[Pe]}}return U?M?ae:X:M?Te:me}var Ot=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});i&&Ot.forEach(function(y){"on"+y in i&&Ot.remove(y)});function er(y,M){return function(P){var N=e.event;e.event=P,M[0]=this.__data__;try{y.apply(this,M)}finally{e.event=N}}}function Zt(y,M){var P=er(y,M);return function(N){var U=this,Z=N.relatedTarget;(!Z||Z!==U&&!(Z.compareDocumentPosition(U)&8))&&P.call(U,N)}}var Kt,pr=0;function yr(y){var M=".dragsuppress-"+ ++pr,P="click"+M,N=e.select(s(y)).on("touchmove"+M,Ke).on("dragstart"+M,Ke).on("selectstart"+M,Ke);if(Kt==null&&(Kt="onselectstart"in y?!1:Ae(y.style,"userSelect")),Kt){var U=a(y).style,Z=U[Kt];U[Kt]="none"}return function($){if(N.on(M,null),Kt&&(U[Kt]=Z),$){var X=function(){N.on(P,null)};N.on(P,function(){Ke(),X()},!0),setTimeout(X,0)}}}e.mouse=function(y){return Lt(y,lt())};var ur=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Lt(y,M){M.changedTouches&&(M=M.changedTouches[0]);var P=y.ownerSVGElement||y;if(P.createSVGPoint){var N=P.createSVGPoint();if(ur<0){var U=s(y);if(U.scrollX||U.scrollY){P=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var Z=P[0][0].getScreenCTM();ur=!(Z.f||Z.e),P.remove()}}return ur?(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,P){if(arguments.length<3&&(P=M,M=lt().changedTouches),M){for(var N=0,U=M.length,Z;N0?1:y<0?-1:0}function ii(y,M,P){return(M[0]-y[0])*(P[1]-y[1])-(M[1]-y[1])*(P[0]-y[0])}function wi(y){return y>1?0:y<-1?wt:Math.acos(y)}function vi(y){return y>1?Mr:y<-1?-Mr:Math.asin(y)}function Fi(y){return((y=Math.exp(y))-1/y)/2}function Gi(y){return((y=Math.exp(y))+1/y)/2}function hn(y){return((y=Math.exp(2*y))-1)/(y+1)}function nn(y){return(y=Math.sin(y/2))*y}var Ki=Math.SQRT2,ir=2,oi=4;e.interpolateZoom=function(y,M){var P=y[0],N=y[1],U=y[2],Z=M[0],$=M[1],X=M[2],ae=Z-P,me=$-N,_e=ae*ae+me*me,ze,Pe;if(_e0&&(jt=jt.transition().duration($)),jt.call(nt.event)}function zr(){Ve&&Ve.domain(Ie.range().map(function(jt){return(jt-y.x)/y.k}).map(Ie.invert)),ft&&ft.domain(Je.range().map(function(jt){return(jt-y.y)/y.k}).map(Je.invert))}function Rr(jt){X++||jt({type:"zoomstart"})}function ea(jt){zr(),jt({type:"zoom",scale:y.k,translate:[y.x,y.y]})}function Vr(jt){--X||(jt({type:"zoomend"}),P=null)}function Jr(){var jt=this,jr=ot.of(jt,arguments),na=0,oa=e.select(s(jt)).on(me,en).on(_e,bi),Di=Xe(e.mouse(jt)),Vi=yr(jt);ah.call(jt),Rr(jr);function en(){na=1,hr(e.mouse(jt),Di),ea(jr)}function bi(){oa.on(me,null).on(_e,null),Vi(na),Vr(jr)}}function Na(){var jt=this,jr=ot.of(jt,arguments),na={},oa=0,Di,Vi=".zoom-"+e.event.changedTouches[0].identifier,en="touchmove"+Vi,bi="touchend"+Vi,wn=[],Tr=e.select(jt),Hr=yr(jt);Ai(),Rr(jr),Tr.on(ae,null).on(Pe,Ai);function Ni(){var pn=e.touches(jt);return Di=y.k,pn.forEach(function(pi){pi.identifier in na&&(na[pi.identifier]=Xe(pi))}),pn}function Ai(){var pn=e.event.target;e.select(pn).on(en,lo).on(bi,Rn),wn.push(pn);for(var pi=e.event.changedTouches,jo=0,uo=pi.length;jo1){var Ta=ci[0],ui=ci[1],Nl=Ta[0]-ui[0],Hv=Ta[1]-ui[1];oa=Nl*Nl+Hv*Hv}}function lo(){var pn=e.touches(jt),pi,jo,uo,ci;ah.call(jt);for(var yf=0,Ta=pn.length;yf1?1:M,P=P<0?0:P>1?1:P,U=P<=.5?P*(1+M):P+M-P*M,N=2*P-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,P){return this instanceof ce?(this.h=+y,this.c=+M,void(this.l=+P)):arguments.length<2?y instanceof ce?new ce(y.h,y.c,y.l):y instanceof $e?Sr(y.l,y.a,y.b):Sr((y=nr((y=e.rgb(y)).r,y.g,y.b)).l,y.a,y.b):new ce(y,M,P)}var Ee=ce.prototype=new ma;Ee.brighter=function(y){return new ce(this.h,this.c,Math.min(100,this.l+Ze*(arguments.length?y:1)))},Ee.darker=function(y){return new ce(this.h,this.c,Math.max(0,this.l-Ze*(arguments.length?y:1)))},Ee.rgb=function(){return Ne(this.h,this.c,this.l).rgb()};function Ne(y,M,P){return isNaN(y)&&(y=0),isNaN(M)&&(M=0),new $e(P,Math.cos(y*=Gr)*M,Math.sin(y)*M)}e.lab=$e;function $e(y,M,P){return this instanceof $e?(this.l=+y,this.a=+M,void(this.b=+P)):arguments.length<2?y instanceof $e?new $e(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 $e(y,M,P)}var Ze=18,yt=.95047,Pt=1,Ft=1.08883,tr=$e.prototype=new ma;tr.brighter=function(y){return new $e(Math.min(100,this.l+Ze*(arguments.length?y:1)),this.a,this.b)},tr.darker=function(y){return new $e(Math.max(0,this.l-Ze*(arguments.length?y:1)),this.a,this.b)},tr.rgb=function(){return Wt(this.l,this.a,this.b)};function Wt(y,M,P){var N=(y+16)/116,U=N+M/500,Z=N-P/200;return U=Zr(U)*yt,N=Zr(N)*Pt,Z=Zr(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 Sr(y,M,P){return y>0?new ce(Math.atan2(P,M)*pa,Math.sqrt(M*M+P*P),y):new ce(NaN,NaN,y)}function Zr(y){return y>.206893034?y*y*y:(y-4/29)/7.787037}function Or(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,P){return this instanceof ua?(this.r=~~y,this.g=~~M,void(this.b=~~P)):arguments.length<2?y instanceof ua?new ua(y.r,y.g,y.b):$r(""+y,ua,le):new ua(y,M,P)}function qa(y){return new ua(y>>16,y>>8&255,y&255)}function ri(y){return qa(y)+""}var Yr=ua.prototype=new ma;Yr.brighter=function(y){y=Math.pow(.7,arguments.length?y:1);var M=this.r,P=this.g,N=this.b,U=30;return!M&&!P&&!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,P){var N=Math.min(y/=255,M/=255,P/=255),U=Math.max(y,M,P),Z=U-N,$,X,ae=(U+N)/2;return Z?(X=ae<.5?Z/(U+N):Z/(2-U-N),y==U?$=(M-P)/Z+(M0&&ae<1?0:$),new se($,X,ae)}function nr(y,M,P){y=Ti(y),M=Ti(M),P=Ti(P);var N=Or((.4124564*y+.3575761*M+.1804375*P)/yt),U=Or((.2126729*y+.7151522*M+.072175*P)/Pt),Z=Or((.0193339*y+.119192*M+.9503041*P)/Ft);return $e(116*U-16,500*(N-U),200*(U-Z))}function Ti(y){return(y/=255)<=.04045?y/12.92:Math.pow((y+.055)/1.055,2.4)}function Ea(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,qa(M))});function fa(y){return typeof y=="function"?y:function(){return y}}e.functor=fa,e.xhr=Pn(Se);function Pn(y){return function(M,P,N){return arguments.length===2&&typeof P=="function"&&(N=P,P=null),Co(M,P,y,N)}}function Co(y,M,P,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,ze;if(!_e&&Ga(X)||_e>=200&&_e<300||_e===304){try{ze=P.call(U,X)}catch(Pe){Z.error.call(U,Pe);return}Z.load.call(U,ze)}else Z.error.call(U,X)}return X.onprogress=function(_e){var ze=e.event;e.event=_e;try{Z.progress.call(U,X)}finally{e.event=ze}},U.header=function(_e,ze){return _e=(_e+"").toLowerCase(),arguments.length<2?$[_e]:(ze==null?delete $[_e]:$[_e]=ze+"",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 P=_e,U},["get","post"].forEach(function(_e){U[_e]=function(){return U.send.apply(U,[_e].concat(r(arguments)))}}),U.send=function(_e,ze,Pe){if(arguments.length===2&&typeof ze=="function"&&(Pe=ze,ze=null),X.open(_e,y,!0),M!=null&&!("accept"in $)&&($.accept=M+",*/*"),X.setRequestHeader)for(var Qe in $)X.setRequestHeader(Qe,$[Qe]);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(ze==null?null:ze),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,P){y(M==null?P:null)}:y}function Ga(y){var M=y.responseType;return M&&M!=="text"?y.response:y.responseText}e.dsv=function(y,M){var P=new RegExp('["'+y+` -]`),N=y.charCodeAt(0);function U(me,_e,ze){arguments.length<3&&(ze=_e,_e=null);var Pe=Co(me,M,_e==null?Z:$(_e),ze);return Pe.row=function(Qe){return arguments.length?Pe.response((_e=Qe)==null?Z:$(Qe)):_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 ze;return U.parseRows(me,function(Pe,Qe){if(ze)return ze(Pe,Qe-1);var ot=function(Ie){for(var Ve={},Je=Pe.length,ft=0;ft=ot)return Pe;if(ft)return ft=!1,ze;var Gt=Ie;if(me.charCodeAt(Gt)===34){for(var or=Gt;or++{var rj=Object.defineProperty,aj=Object.defineProperties;var ij=Object.getOwnPropertyDescriptors;var y7=Object.getOwnPropertySymbols;var nj=Object.prototype.hasOwnProperty,oj=Object.prototype.propertyIsEnumerable;var g7=(e,t,r)=>t in e?rj(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,$v=(e,t)=>{for(var r in t||(t={}))nj.call(t,r)&&g7(e,r,t[r]);if(y7)for(var r of y7(t))oj.call(t,r)&&g7(e,r,t[r]);return e},Y1=(e,t)=>aj(e,ij(t));var pe=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var W1=pe(_7=>{"use strict";_7.version="3.3.1"});var b7=pe((x7,X1)=>{(function(t,r,i){r[t]=r[t]||i(),typeof X1!="undefined"&&X1.exports&&(X1.exports=r[t])})("Promise",typeof window!="undefined"?window:x7,function(){"use strict";var t,r,i,a=Object.prototype.toString,s=typeof setImmediate!="undefined"?function(B){return setImmediate(B)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(B,q,I,O){return Object.defineProperty(B,q,{value:I,writable:!0,configurable:O!==!1})}}catch(z){t=function(q,I,O){return q[I]=O,q}}i=function(){var B,q,I;function O(H,V){this.fn=H,this.self=V,this.next=void 0}return{add:function(V,W){I=new O(V,W),q?q.next=I:B=I,q=I,I=void 0},drain:function(){var V=B;for(B=q=r=void 0;V;)V.fn.call(V.self),V=V.next}}}();function l(z,B){i.add(z,B),r||(r=s(i.drain))}function f(z){var B,q=typeof z;return z!=null&&(q=="object"||q=="function")&&(B=z.then),typeof B=="function"?B:!1}function h(){for(var z=0;z0&&l(h,q))}catch(I){_.call(new S(q),I)}}}function _(z){var B=this;B.triggered||(B.triggered=!0,B.def&&(B=B.def),B.msg=z,B.state=2,B.chain.length>0&&l(h,B))}function T(z,B,q,I){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 P=M.length,N=new Array(P);P--;)N[P]=M[P];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,P){f.call(this,M,P+"")},l.setAttributeNS=function(M,P,N){h.call(this,M,P,N+"")},v.setProperty=function(M,P,N){m.call(this,M,P+"",N)}}e.ascending=_;function _(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 P=-1,N=y.length,U,Z;if(arguments.length===1){for(;++P=Z){U=Z;break}for(;++PZ&&(U=Z)}else{for(;++P=Z){U=Z;break}for(;++PZ&&(U=Z)}return U},e.max=function(y,M){var P=-1,N=y.length,U,Z;if(arguments.length===1){for(;++P=Z){U=Z;break}for(;++PU&&(U=Z)}else{for(;++P=Z){U=Z;break}for(;++PU&&(U=Z)}return U},e.extent=function(y,M){var P=-1,N=y.length,U,Z,$;if(arguments.length===1){for(;++P=Z){U=$=Z;break}for(;++PZ&&(U=Z),$=Z){U=$=Z;break}for(;++PZ&&(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,P,N,U){for(arguments.length<3&&(N=0),arguments.length<4&&(U=M.length);N>>1;y(M[Z],P)<0?N=Z+1:U=Z}return N},right:function(M,P,N,U){for(arguments.length<3&&(N=0),arguments.length<4&&(U=M.length);N>>1;y(M[Z],P)>0?U=Z:N=Z+1}return N}}}var E=C(_);e.bisectLeft=E.left,e.bisect=e.bisectRight=E.right,e.bisector=function(y){return C(y.length===1?function(M,P){return _(y(M),P)}:y)},e.shuffle=function(y,M,P){(N=arguments.length)<3&&(P=y.length,N<2&&(M=0));for(var N=P-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 P=M.length,N=new Array(P);P--;)N[P]=y[M[P]];return N},e.pairs=function(y){for(var M=0,P=y.length-1,N,U=y[0],Z=new Array(P<0?0:P);M=0;)for($=y[M],P=$.length;--P>=0;)Z[--U]=$[P];return Z};var z=Math.abs;e.range=function(y,M,P){if(arguments.length<3&&(P=1,arguments.length<2&&(M=y,y=0)),(M-y)/P===1/0)throw new Error("infinite range");var N=[],U=B(z(P)),Z=-1,$;if(y*=U,M*=U,P*=U,P<0)for(;($=y+P*++Z)>M;)N.push($/U);else for(;($=y+P*++Z)=M.length)return U?U.call(y,ae):N?ae.sort(N):ae;for(var _e=-1,ze=ae.length,Pe=M[me++],Qe,ot,Ie,Ve=new I,Ke;++_e=M.length)return X;var me=[],_e=P[ae++];return X.forEach(function(ze,Pe){me.push({key:ze,values:$(Pe,ae)})}),_e?me.sort(function(ze,Pe){return _e(ze.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 P[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 he;if(y)for(var P=0,N=y.length;P=0&&(N=y.slice(P+1),y=y.slice(0,P)),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=[],P=new I;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 $=P.get(U),X;return arguments.length<2?$&&$.on:($&&($.on=null,M=M.slice(0,X=M.indexOf($)).concat(M.slice(X+1)),P.remove(U)),Z&&M.push(P.set(U,{on:Z})),y)},N}e.event=null;function je(){e.event.preventDefault()}function lt(){for(var y=e.event,M;M=y.sourceEvent;)y=M;return y}function at(y){for(var M=new Me,P=0,N=arguments.length;++P=0&&(P=y.slice(0,M))!=="xmlns"&&(y=y.slice(M+1)),rt.hasOwnProperty(P)?{space:rt[P],local:y}:y}},vt.attr=function(y,M){if(arguments.length<2){if(typeof y=="string"){var P=this.node();return y=e.ns.qualify(y),y.local?P.getAttributeNS(y.space,y.local):P.getAttribute(y)}for(M in y)this.each(dt(M,y[M]));return this}return this.each(dt(y,M))};function dt(y,M){y=e.ns.qualify(y);function P(){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:P:typeof M=="function"?y.local?X:$:y.local?Z:U}function We(y){return y.trim().replace(/\s+/g," ")}vt.classed=function(y,M){if(arguments.length<2){if(typeof y=="string"){var P=this.node(),N=(y=Dt(y)).length,U=-1;if(M=P.classList){for(;++U=0;)(Z=P[N])&&(U&&U!==Z.nextSibling&&U.parentNode.insertBefore(Z,U),U=Z);return this},vt.sort=function(y){y=st.apply(this,arguments);for(var M=-1,P=this.length;++M=M&&(M=U+1);!(ae=$[M])&&++M0&&(y=y.slice(0,U));var $=Ot.get(y);$&&(y=$,Z=Zt);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.$=P),_e._=M}function me(){var _e=new RegExp("^__on([^.]+)"+e.requote(y)+"$"),ze;for(var Pe in this)if(ze=Pe.match(_e)){var Qe=this[Pe];this.removeEventListener(ze[1],Qe,Qe.$),delete this[Pe]}}return U?M?ae:X:M?be:me}var Ot=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});i&&Ot.forEach(function(y){"on"+y in i&&Ot.remove(y)});function er(y,M){return function(P){var N=e.event;e.event=P,M[0]=this.__data__;try{y.apply(this,M)}finally{e.event=N}}}function Zt(y,M){var P=er(y,M);return function(N){var U=this,Z=N.relatedTarget;(!Z||Z!==U&&!(Z.compareDocumentPosition(U)&8))&&P.call(U,N)}}var Kt,pr=0;function yr(y){var M=".dragsuppress-"+ ++pr,P="click"+M,N=e.select(s(y)).on("touchmove"+M,je).on("dragstart"+M,je).on("selectstart"+M,je);if(Kt==null&&(Kt="onselectstart"in y?!1:Ae(y.style,"userSelect")),Kt){var U=a(y).style,Z=U[Kt];U[Kt]="none"}return function($){if(N.on(M,null),Kt&&(U[Kt]=Z),$){var X=function(){N.on(P,null)};N.on(P,function(){je(),X()},!0),setTimeout(X,0)}}}e.mouse=function(y){return Lt(y,lt())};var ur=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Lt(y,M){M.changedTouches&&(M=M.changedTouches[0]);var P=y.ownerSVGElement||y;if(P.createSVGPoint){var N=P.createSVGPoint();if(ur<0){var U=s(y);if(U.scrollX||U.scrollY){P=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var Z=P[0][0].getScreenCTM();ur=!(Z.f||Z.e),P.remove()}}return ur?(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,P){if(arguments.length<3&&(P=M,M=lt().changedTouches),M){for(var N=0,U=M.length,Z;N0?1:y<0?-1:0}function ii(y,M,P){return(M[0]-y[0])*(P[1]-y[1])-(M[1]-y[1])*(P[0]-y[0])}function wi(y){return y>1?0:y<-1?wt:Math.acos(y)}function vi(y){return y>1?Mr:y<-1?-Mr:Math.asin(y)}function Fi(y){return((y=Math.exp(y))-1/y)/2}function Gi(y){return((y=Math.exp(y))+1/y)/2}function hn(y){return((y=Math.exp(2*y))-1)/(y+1)}function nn(y){return(y=Math.sin(y/2))*y}var Ki=Math.SQRT2,ir=2,oi=4;e.interpolateZoom=function(y,M){var P=y[0],N=y[1],U=y[2],Z=M[0],$=M[1],X=M[2],ae=Z-P,me=$-N,_e=ae*ae+me*me,ze,Pe;if(_e0&&(jt=jt.transition().duration($)),jt.call(nt.event)}function zr(){Ve&&Ve.domain(Ie.range().map(function(jt){return(jt-y.x)/y.k}).map(Ie.invert)),ft&&ft.domain(Ke.range().map(function(jt){return(jt-y.y)/y.k}).map(Ke.invert))}function Rr(jt){X++||jt({type:"zoomstart"})}function ea(jt){zr(),jt({type:"zoom",scale:y.k,translate:[y.x,y.y]})}function Vr(jt){--X||(jt({type:"zoomend"}),P=null)}function Jr(){var jt=this,jr=ot.of(jt,arguments),na=0,oa=e.select(s(jt)).on(me,en).on(_e,bi),Di=Xe(e.mouse(jt)),Vi=yr(jt);ah.call(jt),Rr(jr);function en(){na=1,hr(e.mouse(jt),Di),ea(jr)}function bi(){oa.on(me,null).on(_e,null),Vi(na),Vr(jr)}}function Na(){var jt=this,jr=ot.of(jt,arguments),na={},oa=0,Di,Vi=".zoom-"+e.event.changedTouches[0].identifier,en="touchmove"+Vi,bi="touchend"+Vi,wn=[],Tr=e.select(jt),Hr=yr(jt);Ai(),Rr(jr),Tr.on(ae,null).on(Pe,Ai);function Ni(){var pn=e.touches(jt);return Di=y.k,pn.forEach(function(pi){pi.identifier in na&&(na[pi.identifier]=Xe(pi))}),pn}function Ai(){var pn=e.event.target;e.select(pn).on(en,lo).on(bi,Rn),wn.push(pn);for(var pi=e.event.changedTouches,jo=0,uo=pi.length;jo1){var Ta=ci[0],ui=ci[1],Nl=Ta[0]-ui[0],Hv=Ta[1]-ui[1];oa=Nl*Nl+Hv*Hv}}function lo(){var pn=e.touches(jt),pi,jo,uo,ci;ah.call(jt);for(var gf=0,Ta=pn.length;gf1?1:M,P=P<0?0:P>1?1:P,U=P<=.5?P*(1+M):P+M-P*M,N=2*P-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,P){return this instanceof ce?(this.h=+y,this.c=+M,void(this.l=+P)):arguments.length<2?y instanceof ce?new ce(y.h,y.c,y.l):y instanceof $e?Sr(y.l,y.a,y.b):Sr((y=nr((y=e.rgb(y)).r,y.g,y.b)).l,y.a,y.b):new ce(y,M,P)}var Ee=ce.prototype=new ma;Ee.brighter=function(y){return new ce(this.h,this.c,Math.min(100,this.l+Ze*(arguments.length?y:1)))},Ee.darker=function(y){return new ce(this.h,this.c,Math.max(0,this.l-Ze*(arguments.length?y:1)))},Ee.rgb=function(){return Ne(this.h,this.c,this.l).rgb()};function Ne(y,M,P){return isNaN(y)&&(y=0),isNaN(M)&&(M=0),new $e(P,Math.cos(y*=Gr)*M,Math.sin(y)*M)}e.lab=$e;function $e(y,M,P){return this instanceof $e?(this.l=+y,this.a=+M,void(this.b=+P)):arguments.length<2?y instanceof $e?new $e(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 $e(y,M,P)}var Ze=18,yt=.95047,Pt=1,Ft=1.08883,tr=$e.prototype=new ma;tr.brighter=function(y){return new $e(Math.min(100,this.l+Ze*(arguments.length?y:1)),this.a,this.b)},tr.darker=function(y){return new $e(Math.max(0,this.l-Ze*(arguments.length?y:1)),this.a,this.b)},tr.rgb=function(){return Wt(this.l,this.a,this.b)};function Wt(y,M,P){var N=(y+16)/116,U=N+M/500,Z=N-P/200;return U=Zr(U)*yt,N=Zr(N)*Pt,Z=Zr(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 Sr(y,M,P){return y>0?new ce(Math.atan2(P,M)*pa,Math.sqrt(M*M+P*P),y):new ce(NaN,NaN,y)}function Zr(y){return y>.206893034?y*y*y:(y-4/29)/7.787037}function Or(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,P){return this instanceof ua?(this.r=~~y,this.g=~~M,void(this.b=~~P)):arguments.length<2?y instanceof ua?new ua(y.r,y.g,y.b):$r(""+y,ua,le):new ua(y,M,P)}function qa(y){return new ua(y>>16,y>>8&255,y&255)}function ri(y){return qa(y)+""}var Yr=ua.prototype=new ma;Yr.brighter=function(y){y=Math.pow(.7,arguments.length?y:1);var M=this.r,P=this.g,N=this.b,U=30;return!M&&!P&&!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,P){var N=Math.min(y/=255,M/=255,P/=255),U=Math.max(y,M,P),Z=U-N,$,X,ae=(U+N)/2;return Z?(X=ae<.5?Z/(U+N):Z/(2-U-N),y==U?$=(M-P)/Z+(M0&&ae<1?0:$),new se($,X,ae)}function nr(y,M,P){y=Ti(y),M=Ti(M),P=Ti(P);var N=Or((.4124564*y+.3575761*M+.1804375*P)/yt),U=Or((.2126729*y+.7151522*M+.072175*P)/Pt),Z=Or((.0193339*y+.119192*M+.9503041*P)/Ft);return $e(116*U-16,500*(N-U),200*(U-Z))}function Ti(y){return(y/=255)<=.04045?y/12.92:Math.pow((y+.055)/1.055,2.4)}function Ea(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,qa(M))});function fa(y){return typeof y=="function"?y:function(){return y}}e.functor=fa,e.xhr=Pn(ke);function Pn(y){return function(M,P,N){return arguments.length===2&&typeof P=="function"&&(N=P,P=null),Co(M,P,y,N)}}function Co(y,M,P,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,ze;if(!_e&&Ga(X)||_e>=200&&_e<300||_e===304){try{ze=P.call(U,X)}catch(Pe){Z.error.call(U,Pe);return}Z.load.call(U,ze)}else Z.error.call(U,X)}return X.onprogress=function(_e){var ze=e.event;e.event=_e;try{Z.progress.call(U,X)}finally{e.event=ze}},U.header=function(_e,ze){return _e=(_e+"").toLowerCase(),arguments.length<2?$[_e]:(ze==null?delete $[_e]:$[_e]=ze+"",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 P=_e,U},["get","post"].forEach(function(_e){U[_e]=function(){return U.send.apply(U,[_e].concat(r(arguments)))}}),U.send=function(_e,ze,Pe){if(arguments.length===2&&typeof ze=="function"&&(Pe=ze,ze=null),X.open(_e,y,!0),M!=null&&!("accept"in $)&&($.accept=M+",*/*"),X.setRequestHeader)for(var Qe in $)X.setRequestHeader(Qe,$[Qe]);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(ze==null?null:ze),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,P){y(M==null?P:null)}:y}function Ga(y){var M=y.responseType;return M&&M!=="text"?y.response:y.responseText}e.dsv=function(y,M){var P=new RegExp('["'+y+` +]`),N=y.charCodeAt(0);function U(me,_e,ze){arguments.length<3&&(ze=_e,_e=null);var Pe=Co(me,M,_e==null?Z:$(_e),ze);return Pe.row=function(Qe){return arguments.length?Pe.response((_e=Qe)==null?Z:$(Qe)):_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 ze;return U.parseRows(me,function(Pe,Qe){if(ze)return ze(Pe,Qe-1);var ot=function(Ie){for(var Ve={},Ke=Pe.length,ft=0;ft=ot)return Pe;if(ft)return ft=!1,ze;var Gt=Ie;if(me.charCodeAt(Gt)===34){for(var or=Gt;or++24?(isFinite(M)&&(clearTimeout(dl),dl=setTimeout(Nc,M)),Ui=0):(Ui=1,$d(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,P=1/0;M;)M.c?(M.t=0;--X)Ie.push(U[me[ze[X]][2]]);for(X=+Qe;X1&&ii(y[P[N-2]],y[P[N-1]],y[U])<=0;)--N;P[N++]=U}return P.slice(0,N)}function Ju(y,M){return y[0]-M[0]||y[1]-M[1]}e.geom.polygon=function(y){return Ye(y,Zf),y};var Zf=e.geom.polygon.prototype=[];Zf.area=function(){for(var y=-1,M=this.length,P,N=this[M-1],U=0;++yUe)X=X.L;else if($=M-on(X,P),$>Ue){if(!X.R){N=X;break}X=X.R}else{Z>-Ue?(N=X.P,U=X):$>-Ue?(N=X,U=X.N):N=U=X;break}var ae=oo(y);if(du.insert(N,ae),!(!N&&!U)){if(N===U){ba(N),U=oo(N.site),du.insert(ae,U),ae.edge=U.edge=Ws(N.site,ae.site),Er(N),Er(U);return}if(!U){ae.edge=Ws(N.site,ae.site);return}ba(N),ba(U);var me=N.site,_e=me.x,ze=me.y,Pe=y.x-_e,Qe=y.y-ze,ot=U.site,Ie=ot.x-_e,Ve=ot.y-ze,Je=2*(Pe*Ve-Qe*Ie),ft=Pe*Pe+Qe*Qe,nt=Ie*Ie+Ve*Ve,Xe={x:(Ve*ft-Qe*nt)/Je+_e,y:(Pe*nt-Ie*ft)/Je+ze};fs(U.edge,me,ot,Xe),ae.edge=Ws(me,y,null,Xe),U.edge=Ws(y,ot,null,Xe),Er(N),Er(U)}}function pu(y,M){var P=y.site,N=P.x,U=P.y,Z=U-M;if(!Z)return N;var $=y.P;if(!$)return-1/0;P=$.site;var X=P.x,ae=P.y,me=ae-M;if(!me)return X;var _e=X-N,ze=1/Z-1/me,Pe=_e/me;return ze?(-Pe+Math.sqrt(Pe*Pe-2*ze*(_e*_e/(-2*me)-ae+me/2+U-Z/2)))/ze+N:(N+X)/2}function on(y,M){var P=y.N;if(P)return pu(P,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,P;M--;)P=y[M].edge,(!P.b||!P.a)&&y.splice(M,1);return y.sort(Qu),y.length};function bs(y){for(var M=y[0][0],P=y[1][0],N=y[0][1],U=y[1][1],Z,$,X,ae,me=Go,_e=me.length,ze,Pe,Qe,ot,Ie,Ve;_e--;)if(ze=me[_e],!(!ze||!ze.prepare()))for(Qe=ze.edges,ot=Qe.length,Pe=0;PeUe||z(ae-$)>Ue)&&(Qe.splice(Pe,0,new _l(mu(ze.site,Ve,z(X-M)Ue?{x:M,y:z(Z-M)Ue?{x:z($-U)Ue?{x:P,y:z(Z-P)Ue?{x:z($-N)=-xt)){var Pe=ae*ae+me*me,Qe=_e*_e+Ve*Ve,ot=(Ve*Pe-me*Qe)/ze,Ie=(ae*Qe-_e*Pe)/ze,Ve=Ie+X,Je=pv.pop()||new $u;Je.arc=y,Je.site=U,Je.x=ot+$,Je.y=Ve+Math.sqrt(ot*ot+Ie*Ie),Je.cy=Ve,y.circle=Je;for(var ft=null,nt=Ku._;nt;)if(Je.y0)){if(Ie/=Qe,Qe<0){if(Ie0){if(Ie>Pe)return;Ie>ze&&(ze=Ie)}if(Ie=P-X,!(!Qe&&Ie<0)){if(Ie/=Qe,Qe<0){if(Ie>Pe)return;Ie>ze&&(ze=Ie)}else if(Qe>0){if(Ie0)){if(Ie/=ot,ot<0){if(Ie0){if(Ie>Pe)return;Ie>ze&&(ze=Ie)}if(Ie=N-ae,!(!ot&&Ie<0)){if(Ie/=ot,ot<0){if(Ie>Pe)return;Ie>ze&&(ze=Ie)}else if(ot>0){if(Ie0&&(U.a={x:X+ze*Qe,y:ae+ze*ot}),Pe<1&&(U.b={x:X+Pe*Qe,y:ae+Pe*ot}),U}}}}}}function ws(y){for(var M=ml,P=wa(y[0][0],y[0][1],y[1][0],y[1][1]),N=M.length,U;N--;)U=M[N],(!gl(U,y)||!P(U)||z(U.a.x-U.b.x)=Z)return;if(_e>Pe){if(!N)N={x:ot,y:$};else if(N.y>=X)return;P={x:ot,y:X}}else{if(!N)N={x:ot,y:X};else if(N.y<$)return;P={x:ot,y:$}}}else if(Ve=(_e-Pe)/(Qe-ze),Je=Ie-Ve*ot,Ve<-1||Ve>1)if(_e>Pe){if(!N)N={x:($-Je)/Ve,y:$};else if(N.y>=X)return;P={x:(X-Je)/Ve,y:X}}else{if(!N)N={x:(X-Je)/Ve,y:X};else if(N.y<$)return;P={x:($-Je)/Ve,y:$}}else if(ze=Z)return;P={x:Z,y:Ve*Z+Je}}else{if(!N)N={x:Z,y:Ve*Z+Je};else if(N.x=_e&&Je.x<=Pe&&Je.y>=ze&&Je.y<=Qe?[[_e,Qe],[Pe,Qe],[Pe,ze],[_e,ze]]:[];ft.point=ae[Ie]}),me}function X(ae){return ae.map(function(me,_e){return{x:Math.round(N(me,_e)/Ue)*Ue,y:Math.round(U(me,_e)/Ue)*Ue,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,ze){for(var Pe=_e.site,Qe=_e.edges.sort(Qu),ot=-1,Ie=Qe.length,Ve,Je,ft=Qe[Ie-1].edge,nt=ft.l===Pe?ft.r:ft.l;++otnt&&(nt=_e.x),_e.y>Xe&&(Xe=_e.y),Qe.push(_e.x),ot.push(_e.y);else for(Ie=0;Ient&&(nt=Gt),or>Xe&&(Xe=or),Qe.push(Gt),ot.push(or)}var hr=nt-Je,fr=Xe-ft;hr>fr?Xe=ft+hr:nt=Je+fr;function zr(Vr,Jr,Na,ei,Qa,jt,jr,na){if(!(isNaN(Na)||isNaN(ei)))if(Vr.leaf){var oa=Vr.x,Di=Vr.y;if(oa!=null)if(z(oa-Na)+z(Di-ei)<.01)Rr(Vr,Jr,Na,ei,Qa,jt,jr,na);else{var Vi=Vr.point;Vr.x=Vr.y=Vr.point=null,Rr(Vr,Vi,oa,Di,Qa,jt,jr,na),Rr(Vr,Jr,Na,ei,Qa,jt,jr,na)}else Vr.x=Na,Vr.y=ei,Vr.point=Jr}else Rr(Vr,Jr,Na,ei,Qa,jt,jr,na)}function Rr(Vr,Jr,Na,ei,Qa,jt,jr,na){var oa=(Qa+jr)*.5,Di=(jt+na)*.5,Vi=Na>=oa,en=ei>=Di,bi=en<<1|Vi;Vr.leaf=!1,Vr=Vr.nodes[bi]||(Vr.nodes[bi]=xn()),Vi?Qa=oa:jr=oa,en?jt=Di:na=Di,zr(Vr,Jr,Na,ei,Qa,jt,jr,na)}var ea=xn();if(ea.add=function(Vr){zr(ea,Vr,+ze(Vr,++Ie),+Pe(Vr,Ie),Je,ft,nt,Xe)},ea.visit=function(Vr){zn(Vr,ea,Je,ft,nt,Xe)},ea.find=function(Vr){return ap(ea,Vr[0],Vr[1],Je,ft,nt,Xe)},Ie=-1,M==null){for(;++IeZ||Pe>$||Qe=Gt,fr=P>=or,zr=fr<<1|hr,Rr=zr+4;zrP&&(Z=M.slice(P,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)})),P=Xf.lastIndex;return P=0&&!(N=e.interpolators[P](y,M)););return N}e.interpolators=[function(y,M){var P=typeof M;return(P==="string"?si.has(M.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(M)?ef:Zo:M instanceof ma?ef:Array.isArray(M)?Yo:P==="object"&&isNaN(M)?sn:Eo)(y,M)}],e.interpolateArray=Yo;function Yo(y,M){var P=[],N=[],U=y.length,Z=M.length,$=Math.min(y.length,M.length),X;for(X=0;X<$;++X)P.push(ln(y[X],M[X]));for(;X=0?y.slice(0,M):y,N=M>=0?y.slice(M+1):"in";return P=Em.get(P)||Xs,N=Wo.get(N)||Se,Lm(N(P.apply(null,t.call(arguments,1))))};function Lm(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 In(y){return function(M){return .5*(M<.5?y(2*M):2-y(2-2*M))}}function Dm(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,P=M*y;return 4*(y<.5?P:3*(y-M)+P-.75)}function gv(y){return function(M){return Math.pow(M,y)}}function Pm(y){return 1-Math.cos(y*Mr)}function zm(y){return Math.pow(2,10*(y-1))}function Oc(y){return 1-Math.sqrt(1-y*y)}function Im(y,M){var P;return arguments.length<2&&(M=.45),arguments.length?P=M/mr*Math.asin(1/y):(y=1,P=M/4),function(N){return 1+y*Math.pow(2,-10*N)*Math.sin((N-P)*mr/M)}}function Rm(y){return y||(y=1.70158),function(M){return M*M*((y+1)*M-y)}}function Fm(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 P=y.h,N=y.c,U=y.l,Z=M.h-P,$=M.c-N,X=M.l-U;return isNaN($)&&($=0,N=isNaN(N)?M.c:N),isNaN(Z)?(Z=0,P=isNaN(P)?M.h:P):Z>180?Z-=360:Z<-180&&(Z+=360),function(ae){return Ne(P+Z*ae,N+$*ae,U+X*ae)+""}}e.interpolateHsl=qm;function qm(y,M){y=e.hsl(y),M=e.hsl(M);var P=y.h,N=y.s,U=y.l,Z=M.h-P,$=M.s-N,X=M.l-U;return isNaN($)&&($=0,N=isNaN(N)?M.s:N),isNaN(Z)?(Z=0,P=isNaN(P)?M.h:P):Z>180?Z-=360:Z<-180&&(Z+=360),function(ae){return le(P+Z*ae,N+$*ae,U+X*ae)+""}}e.interpolateLab=Nm;function Nm(y,M){y=e.lab(y),M=e.lab(M);var P=y.l,N=y.a,U=y.b,Z=M.l-P,$=M.a-N,X=M.b-U;return function(ae){return Wt(P+Z*ae,N+$*ae,U+X*ae)+""}}e.interpolateRound=xv;function xv(y,M){return M-=y,function(P){return Math.round(y+M*P)}}e.transform=function(y){var M=i.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(P){if(P!=null){M.setAttribute("transform",P);var N=M.transform.baseVal.consolidate()}return new ip(N?N.matrix:wv)})(y)};function ip(y){var M=[y.a,y.b],P=[y.c,y.d],N=bv(M),U=np(M,P),Z=bv(Bm(P,M,-U))||0;M[0]*P[1]180?M+=360:M-y>180&&(y+=360),N.push({i:P.push(gu(P)+"rotate(",null,")")-2,x:Eo(y,M)})):M&&P.push(gu(P)+"rotate("+M+")")}function sp(y,M,P,N){y!==M?N.push({i:P.push(gu(P)+"skewX(",null,")")-2,x:Eo(y,M)}):M&&P.push(gu(P)+"skewX("+M+")")}function lp(y,M,P,N){if(y[0]!==M[0]||y[1]!==M[1]){var U=P.push(gu(P)+"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)&&P.push(gu(P)+"scale("+M+")")}function up(y,M){var P=[],N=[];return y=e.transform(y),M=e.transform(M),op(y.translate,M.translate,P,N),Om(y.rotate,M.rotate,P,N),sp(y.skew,M.skew,P,N),lp(y.scale,M.scale,P,N),y=M=null,function(U){for(var Z=-1,$=N.length,X;++Z<$;)P[(X=N[Z]).i]=X.x(U);return P.join("")}}function Um(y,M){return M=(M-=y=+y)||1/M,function(P){return(P-y)/M}}function hs(y,M){return M=(M-=y=+y)||1/M,function(P){return Math.max(0,Math.min(1,(P-y)/M))}}e.layout={},e.layout.bundle=function(){return function(y){for(var M=[],P=-1,N=y.length;++P0?Z=Xe:(P.c=null,P.t=NaN,P=null,M.end({type:"end",alpha:Z=0})):Xe>0&&(M.start({type:"start",alpha:Z=Xe}),P=qc(y.tick)),y):Z},y.start=function(){var Xe,Gt=Qe.length,or=ot.length,hr=N[0],fr=N[1],zr,Rr;for(Xe=0;Xe=0;)Z.push(_e=me[ae]),_e.parent=X,_e.depth=X.depth+1;P&&(X.value=0),X.children=me}else P&&(X.value=+P.call(N,X,X.depth)||0),delete X.children;return vs(U,function(ze){var Pe,Qe;y&&(Pe=ze.children)&&Pe.sort(y),P&&(Qe=ze.parent)&&(Qe.value+=ze.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?(P=U,N):P},N.revalue=function(U){return P&&(tf(U,function(Z){Z.children&&(Z.value=0)}),vs(U,function(Z){var $;Z.children||(Z.value=+P.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=hp,y}function tf(y,M){for(var P=[y];(y=P.pop())!=null;)if(M(y),(U=y.children)&&(N=U.length))for(var N,U;--N>=0;)P.push(U[N])}function vs(y,M){for(var P=[y],N=[];(y=P.pop())!=null;)if(N.push(y),($=y.children)&&(Z=$.length))for(var U=-1,Z,$;++UU&&(U=X),N.push(X)}for($=0;$N&&(P=M,N=U);return P}function qi(y){return y.reduce(Ym,0)}function Ym(y,M){return y+M[1]}e.layout.histogram=function(){var y=!0,M=Number,P=pp,N=Zc;function U(Z,Pe){for(var X=[],ae=Z.map(M,this),me=P.call(this,ae,Pe),_e=N.call(this,me,ae,Pe),ze,Pe=-1,Qe=ae.length,ot=_e.length-1,Ie=y?1:1/Qe,Ve;++Pe0)for(Pe=-1;++Pe=me[0]&&Ve<=me[1]&&(ze=X[e.bisect(_e,Ve,1,ot)-1],ze.y+=Ie,ze.push(Z[Pe]));return X}return U.value=function(Z){return arguments.length?(M=Z,U):M},U.range=function(Z){return arguments.length?(P=fa(Z),U):P},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 P=-1,N=+y[0],U=(y[1]-N)/M,Z=[];++P<=M;)Z[P]=U*P+N;return Z}function pp(y){return[e.min(y),e.max(y)]}e.layout.pack=function(){var y=e.layout.hierarchy().sort(af),M=0,P=[1,1],N;function U(Z,$){var X=y.call(this,Z,$),ae=X[0],me=P[0],_e=P[1],ze=N==null?Math.sqrt:typeof N=="function"?N:function(){return N};if(ae.x=ae.y=0,vs(ae,function(Qe){Qe.r=+ze(Qe.value)}),vs(ae,Jf),M){var Pe=M*(N?1:Math.max(2*ae.r/me,2*ae.r/_e))/2;vs(ae,function(Qe){Qe.r+=Pe}),vs(ae,Jf),vs(ae,function(Qe){Qe.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?(P=Z,U):P},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 af(y,M){return y.value-M.value}function _u(y,M){var P=y._pack_next;y._pack_next=M,M._pack_prev=y,M._pack_next=P,P._pack_prev=M}function Cv(y,M){y._pack_next=M,M._pack_prev=y}function bn(y,M){var P=M.x-y.x,N=M.y-y.y,U=y.r+M.r;return .999*U*U>P*P+N*N}function Jf(y){if(!(M=y.children)||!(Pe=M.length))return;var M,P=1/0,N=-1/0,U=1/0,Z=-1/0,$,X,ae,me,_e,ze,Pe;function Qe(Xe){P=Math.min(Xe.x-Xe.r,P),N=Math.max(Xe.x+Xe.r,N),U=Math.min(Xe.y-Xe.r,U),Z=Math.max(Xe.y+Xe.r,Z)}if(M.forEach(Js),$=M[0],$.x=-$.r,$.y=0,Qe($),Pe>1&&(X=M[1],X.x=X.r,X.y=0,Qe(X),Pe>2))for(ae=M[2],Cl($,X,ae),Qe(ae),_u($,ae),$._pack_prev=ae,_u(ae,X),X=$._pack_next,me=3;meVe.x&&(Ve=Gt),Gt.depth>Je.depth&&(Je=Gt)});var ft=M(Ie,Ve)/2-Ie.x,nt=P[0]/(Ve.x+M(Ve,Ie)/2+ft),Xe=P[1]/(Je.depth||1);tf(Qe,function(Gt){Gt.x=(Gt.x+ft)*nt,Gt.y=Gt.depth*Xe})}return Pe}function Z(_e){for(var ze={A:null,children:[_e]},Pe=[ze],Qe;(Qe=Pe.pop())!=null;)for(var ot=Qe.children,Ie,Ve=0,Je=ot.length;Ve0&&(El(Wm(Ie,_e,Pe),_e,Gt),Je+=Gt,ft+=Gt),nt+=Ie.m,Je+=Qe.m,Xe+=Ve.m,ft+=ot.m;Ie&&!Ss(ot)&&(ot.t=Ie,ot.m+=nt-ft),Qe&&!Ms(Ve)&&(Ve.t=Qe,Ve.m+=Je-Xe,Pe=_e)}return Pe}function me(_e){_e.x*=P[0],_e.y=_e.depth*P[1]}return U.separation=function(_e){return arguments.length?(M=_e,U):M},U.size=function(_e){return arguments.length?(N=(P=_e)==null?me:null,U):N?null:P},U.nodeSize=function(_e){return arguments.length?(N=(P=_e)==null?null:me,U):N?P:null},Ml(U,y)};function Ks(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,P;return(P=M.length)?M[P-1]:y.t}function El(y,M,P){var N=P/(M.i-y.i);M.c-=N,M.s+=P,y.c+=N,M.z+=P,M.m+=P}function mp(y){for(var M=0,P=0,N=y.children,U=N.length,Z;--U>=0;)Z=N[U],Z.z+=M,Z.m+=M,M+=Z.s+(P+=Z.c)}function Wm(y,M,P){return y.a.parent===M.parent?y.a:P}e.layout.cluster=function(){var y=e.layout.hierarchy().sort(null).value(null),M=Ks,P=[1,1],N=!1;function U(Z,$){var X=y.call(this,Z,$),ae=X[0],me,_e=0;vs(ae,function(Ie){var Ve=Ie.children;Ve&&Ve.length?(Ie.x=jm(Ve),Ie.y=Xm(Ve)):(Ie.x=me?_e+=M(Ie,me):0,Ie.y=0,me=Ie)});var ze=yp(ae),Pe=gp(ae),Qe=ze.x-M(ze,Pe)/2,ot=Pe.x+M(Pe,ze)/2;return vs(ae,N?function(Ie){Ie.x=(Ie.x-ae.x)*P[0],Ie.y=(ae.y-Ie.y)*P[1]}:function(Ie){Ie.x=(Ie.x-Qe)/(ot-Qe)*P[0],Ie.y=(1-(ae.y?Ie.y/ae.y:1))*P[1]}),X}return U.separation=function(Z){return arguments.length?(M=Z,U):M},U.size=function(Z){return arguments.length?(N=(P=Z)==null,U):N?null:P},U.nodeSize=function(Z){return arguments.length?(N=(P=Z)!=null,U):N?P:null},Ml(U,y)};function Xm(y){return 1+e.max(y,function(M){return M.y})}function jm(y){return y.reduce(function(M,P){return M+P.x},0)/y.length}function yp(y){var M=y.children;return M&&M.length?yp(M[0]):y}function gp(y){var M=y.children,P;return M&&(P=M.length)?gp(M[P-1]):y}e.layout.treemap=function(){var y=e.layout.hierarchy(),M=Math.round,P=[1,1],N=null,U=Ev,Z=!1,$,X="squarify",ae=.5*(1+Math.sqrt(5));function me(Ie,Ve){for(var Je=-1,ft=Ie.length,nt,Xe;++Je0;)ft.push(Xe=nt[fr-1]),ft.area+=Xe.area,X!=="squarify"||(or=Pe(ft,hr))<=Gt?(nt.pop(),Gt=or):(ft.area-=ft.pop().area,Qe(ft,hr,Je,!1),hr=Math.min(Je.dx,Je.dy),ft.length=ft.area=0,Gt=1/0);ft.length&&(Qe(ft,hr,Je,!0),ft.length=ft.area=0),Ve.forEach(_e)}}function ze(Ie){var Ve=Ie.children;if(Ve&&Ve.length){var Je=U(Ie),ft=Ve.slice(),nt,Xe=[];for(me(ft,Je.dx*Je.dy/Ie.value),Xe.area=0;nt=ft.pop();)Xe.push(nt),Xe.area+=nt.area,nt.z!=null&&(Qe(Xe,nt.z?Je.dx:Je.dy,Je,!ft.length),Xe.length=Xe.area=0);Ve.forEach(ze)}}function Pe(Ie,Ve){for(var Je=Ie.area,ft,nt=0,Xe=1/0,Gt=-1,or=Ie.length;++Gtnt&&(nt=ft));return Je*=Je,Ve*=Ve,Je?Math.max(Ve*nt*ae/Je,Je/(Ve*Xe*ae)):1/0}function Qe(Ie,Ve,Je,ft){var nt=-1,Xe=Ie.length,Gt=Je.x,or=Je.y,hr=Ve?M(Ie.area/Ve):0,fr;if(Ve==Je.dx){for((ft||hr>Je.dy)&&(hr=Je.dy);++ntJe.dx)&&(hr=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,P=0;P2?Jm:_p,me=N?hs:Um;return U=ae(y,M,me,P),Z=ae(M,y,me,ln),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?(P=ae,$()):P},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 Tp(y,ae),$()},X.copy=function(){return bp(y,M,P,N)},$()}function wp(y,M){return e.rebind(y,M,"range","rangeRound","interpolate","clamp")}function Tp(y,M){return Dv(y,xp(Pv(y,M)[2])),Dv(y,xp(Pv(y,M)[2])),y}function Pv(y,M){M==null&&(M=10);var P=Kf(y),N=P[1]-P[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),P[0]=Math.ceil(P[0]/U)*U,P[1]=Math.floor(P[1]/U)*U+U*.5,P[2]=U,P}function zv(y,M){return e.range.apply(e,Pv(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 P=Ll(M[2]);return y in xu?Math.abs(P-Ll(Math.max(z(M[0]),z(M[1]))))+ +(y!=="e"):P-(y==="%")*2}e.scale.log=function(){return Iv(e.scale.linear().domain([0,1]),10,!0,[1,10])};function Iv(y,M,P,N){function U(X){return(P?Math.log(X<0?0:X):-Math.log(X>0?0:-X))/Math.log(M)}function Z(X){return P?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?(P=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=Dv(N.map(U),P?Math:Wc);return y.domain(X),N=X.map(Z),$},$.ticks=function(){var X=Kf(N),ae=[],me=X[0],_e=X[1],ze=Math.floor(U(me)),Pe=Math.ceil(U(_e)),Qe=M%1?2:M;if(isFinite(Pe-ze)){if(P){for(;ze0;ot--)ae.push(Z(ze)*ot);for(ze=0;ae[ze]_e;Pe--);ae=ae.slice(ze,Pe)}return ae},$.copy=function(){return Iv(y.copy(),M,P,N)},wp($,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,P){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((P=$.map(Number)).map(N)),Z):P},Z.ticks=function($){return zv(P,$)},Z.tickFormat=function($,X){return d3_scale_linearTickFormat(P,$,X)},Z.nice=function($){return Z.domain(Tp(P,$))},Z.exponent=function($){return arguments.length?(N=jc(M=$),U=jc(1/M),y.domain(P.map(N)),Z):M},Z.copy=function(){return Xc(y.copy(),M,P)},wp(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 Dl([],{t:"range",a:[[]]})};function Dl(y,M){var P,N,U;function Z(X){return N[((P.get(X)||(M.t==="range"?P.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=[],P=new I;for(var ae=-1,me=X.length,_e;++ae0?P[Z-1]:y[0],ZPe?0:1;if(_e=Ar)return ae(_e,ot)+(me?ae(me,1-ot):"")+"Z";var Ie,Ve,Je,ft,nt=0,Xe=0,Gt,or,hr,fr,zr,Rr,ea,Vr,Jr=[];if((ft=(+$.apply(this,arguments)||0)/2)&&(Je=N===Pl?Math.sqrt(me*me+_e*_e):+N.apply(this,arguments),ot||(Xe*=-1),_e&&(Xe=vi(Je/_e*Math.sin(ft))),me&&(nt=vi(Je/me*Math.sin(ft)))),_e){Gt=_e*Math.cos(ze+Xe),or=_e*Math.sin(ze+Xe),hr=_e*Math.cos(Pe-Xe),fr=_e*Math.sin(Pe-Xe);var Na=Math.abs(Pe-ze-2*Xe)<=wt?0:1;if(Xe&&zl(Gt,or,hr,fr)===ot^Na){var ei=(ze+Pe)/2;Gt=_e*Math.cos(ei),or=_e*Math.sin(ei),hr=fr=null}}else Gt=or=0;if(me){zr=me*Math.cos(Pe-nt),Rr=me*Math.sin(Pe-nt),ea=me*Math.cos(ze+nt),Vr=me*Math.sin(ze+nt);var Qa=Math.abs(ze-Pe+2*nt)<=wt?0:1;if(nt&&zl(zr,Rr,ea,Vr)===1-ot^Qa){var jt=(ze+Pe)/2;zr=me*Math.cos(jt),Rr=me*Math.sin(jt),ea=Vr=null}}else zr=Rr=0;if(Qe>Ue&&(Ie=Math.min(Math.abs(_e-me)/2,+P.apply(this,arguments)))>.001){Ve=me<_e^ot?0:1;var jr=Ie,na=Ie;if(Qe0?0:1}function wu(y,M,P,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,ze=y[1]+me,Pe=M[0]+ae,Qe=M[1]+me,ot=(_e+Pe)/2,Ie=(ze+Qe)/2,Ve=Pe-_e,Je=Qe-ze,ft=Ve*Ve+Je*Je,nt=P-N,Xe=_e*Qe-Pe*ze,Gt=(Je<0?-1:1)*Math.sqrt(Math.max(0,nt*nt*ft-Xe*Xe)),or=(Xe*Je-Ve*Gt)/ft,hr=(-Xe*Ve-Je*Gt)/ft,fr=(Xe*Je+Ve*Gt)/ft,zr=(-Xe*Ve+Je*Gt)/ft,Rr=or-ot,ea=hr-Ie,Vr=fr-ot,Jr=zr-Ie;return Rr*Rr+ea*ea>Vr*Vr+Jr*Jr&&(or=fr,hr=zr),[[or-ae,hr-me],[or*P/nt,hr*P/nt]]}function ec(){return!0}function ks(y){var M=vu,P=pl,N=ec,U=Xo,Z=U.key,$=.7;function X(ae){var me=[],_e=[],ze=-1,Pe=ae.length,Qe,ot=fa(M),Ie=fa(P);function Ve(){me.push("M",U(y(_e),$))}for(;++ze1?y.join("L"):y+"Z"}function sf(y){return y.join("L")+"Z"}function Qm(y){for(var M=0,P=y.length,N=y[0],U=[N[0],",",N[1]];++M1&&U.push("H",N[0]),U.join("")}function lf(y){for(var M=0,P=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=P*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 Dp(y){return y.length<3?Xo(y):y[0]+uf(y,ry(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,P=-1,N=y.length,U,Z;++Pwt)+",1 "+ze}function me(_e,ze,Pe,Qe){return"Q 0,0 "+Qe}return Z.radius=function(_e){return arguments.length?(P=fa(_e),Z):P},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,P=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(P),"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?(P=U,N):P},N};function Uv(y){return[y.x,y.y]}e.svg.diagonal.radial=function(){var y=e.svg.diagonal(),M=Uv,P=y.projection;return y.projection=function(N){return arguments.length?P(zp(M=N)):M},y};function zp(y){return function(){var M=y.apply(this,arguments),P=M[0],N=M[1]-Mr;return[P*Math.cos(N),P*Math.sin(N)]}}e.svg.symbol=function(){var y=vf,M=Ip;function P(N,U){return(rh.get(y.call(this,N,U))||th)(M.call(this,N,U))}return P.type=function(N){return arguments.length?(y=fa(N),P):y},P.size=function(N){return arguments.length?(M=fa(N),P):M},P};function Ip(){return 64}function vf(){return"circle"}function th(y){var M=Math.sqrt(y/wt);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)),P=M*Vv;return"M0,"+-M+"L"+P+",0 0,"+M+" "+-P+",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),P=M*Au/2;return"M0,"+P+"L"+M+","+-P+" "+-M+","+-P+"Z"},"triangle-up":function(y){var M=Math.sqrt(y/Au),P=M*Au/2;return"M0,"+-P+"L"+M+","+P+" "+-M+","+P+"Z"}});e.svg.symbolTypes=rh.keys();var Au=Math.sqrt(3),Vv=Math.tan(30*Gr);vt.transition=function(y){for(var M=so||++Li,P=fi(y),N=[],U,Z,$=Es||{time:Date.now(),ease:bl,delay:0,duration:250},X=-1,ae=this.length;++X0;)ze[--ft].call(y,Je);if(Ve>=1)return $.event&&$.event.end.call(y,y.__data__,M),--Z.count?delete Z[N]:delete y[P],1}$||(X=U.time,ae=qc(Pe,0,X),$=Z[N]={tween:new I,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,P=6,N=6,U=3,Z=[10],$=null,X;function ae(me){me.each(function(){var _e=e.select(this),ze=this.__chart__||y,Pe=this.__chart__=y.copy(),Qe=$==null?Pe.ticks?Pe.ticks.apply(Pe,Z):Pe.domain():$,ot=X==null?Pe.tickFormat?Pe.tickFormat.apply(Pe,Z):Se:X,Ie=_e.selectAll(".tick").data(Qe,Pe),Ve=Ie.enter().insert("g",".domain").attr("class","tick").style("opacity",Ue),Je=e.transition(Ie.exit()).style("opacity",Ue).remove(),ft=e.transition(Ie.order()).style("opacity",1),nt=Math.max(P,0)+U,Xe,Gt=Yc(Pe),or=_e.selectAll(".domain").data([0]),hr=(or.enter().append("path").attr("class","domain"),e.transition(or));Ve.append("line"),Ve.append("text");var fr=Ve.select("line"),zr=ft.select("line"),Rr=Ie.select("text").text(ot),ea=Ve.select("text"),Vr=ft.select("text"),Jr=M==="top"||M==="left"?-1:1,Na,ei,Qa,jt;if(M==="bottom"||M==="top"?(Xe=pf,Na="x",Qa="y",ei="x2",jt="y2",Rr.attr("dy",Jr<0?"0em":".71em").style("text-anchor","middle"),hr.attr("d","M"+Gt[0]+","+Jr*N+"V0H"+Gt[1]+"V"+Jr*N)):(Xe=Fl,Na="y",Qa="x",ei="y2",jt="x2",Rr.attr("dy",".32em").style("text-anchor",Jr<0?"end":"start"),hr.attr("d","M"+Jr*N+","+Gt[0]+"H0V"+Gt[1]+"H"+Jr*N)),fr.attr(jt,Jr*P),ea.attr(Qa,Jr*nt),zr.attr(ei,0).attr(jt,Jr*P),Vr.attr(Na,0).attr(Qa,Jr*nt),Pe.rangeBand){var jr=Pe,na=jr.rangeBand()/2;ze=Pe=function(oa){return jr(oa)+na}}else ze.rangeBand?ze=Pe:Je.call(Xe,Pe,ze);Ve.call(Xe,ze,Pe),ft.call(Xe,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?(P=+me,N=+arguments[_e-1],ae):P},ae.innerTickSize=function(me){return arguments.length?(P=+me,ae):P},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 pf(y,M,P){y.attr("transform",function(N){var U=M(N);return"translate("+(isFinite(U)?U:P(N))+",0)"})}function Fl(y,M,P){y.attr("transform",function(N){var U=M(N);return"translate(0,"+(isFinite(U)?U:P(N))+")"})}e.svg.brush=function(){var y=at(_e,"brushstart","brush","brushend"),M=null,P=null,N=[0,0],U=[0,0],Z,$,X=!0,ae=!0,me=nh[0];function _e(Ie){Ie.each(function(){var Ve=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=Ve.selectAll(".background").data([0]);Je.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ve.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var ft=Ve.selectAll(".resize").data(me,Se);ft.exit().remove(),ft.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"),ft.style("display",_e.empty()?"none":null);var nt=e.transition(Ve),Xe=e.transition(Je),Gt;M&&(Gt=Yc(M),Xe.attr("x",Gt[0]).attr("width",Gt[1]-Gt[0]),Pe(nt)),P&&(Gt=Yc(P),Xe.attr("y",Gt[0]).attr("height",Gt[1]-Gt[0]),Qe(nt)),ze(nt)})}_e.event=function(Ie){Ie.each(function(){var Ve=y.of(this,arguments),Je={x:N,y:U,i:Z,j:$},ft=this.__chart__||Je;this.__chart__=Je,so?e.select(this).transition().each("start.brush",function(){Z=ft.i,$=ft.j,N=ft.x,U=ft.y,Ve({type:"brushstart"})}).tween("brush:brush",function(){var nt=Yo(N,Je.x),Xe=Yo(U,Je.y);return Z=$=null,function(Gt){N=Je.x=nt(Gt),U=Je.y=Xe(Gt),Ve({type:"brush",mode:"resize"})}}).each("end.brush",function(){Z=Je.i,$=Je.j,Ve({type:"brush",mode:"resize"}),Ve({type:"brushend"})}):(Ve({type:"brushstart"}),Ve({type:"brush",mode:"resize"}),Ve({type:"brushend"}))})};function ze(Ie){Ie.selectAll(".resize").attr("transform",function(Ve){return"translate("+N[+/e$/.test(Ve)]+","+U[+/^s/.test(Ve)]+")"})}function Pe(Ie){Ie.select(".extent").attr("x",N[0]),Ie.selectAll(".extent,.n>rect,.s>rect").attr("width",N[1]-N[0])}function Qe(Ie){Ie.select(".extent").attr("y",U[0]),Ie.selectAll(".extent,.e>rect,.w>rect").attr("height",U[1]-U[0])}function ot(){var Ie=this,Ve=e.select(e.event.target),Je=y.of(Ie,arguments),ft=e.select(Ie),nt=Ve.datum(),Xe=!/^(n|s)$/.test(nt)&&M,Gt=!/^(e|w)$/.test(nt)&&P,or=Ve.classed("extent"),hr=yr(Ie),fr,zr=e.mouse(Ie),Rr,ea=e.select(s(Ie)).on("keydown.brush",Na).on("keyup.brush",ei);if(e.event.changedTouches?ea.on("touchmove.brush",Qa).on("touchend.brush",jr):ea.on("mousemove.brush",Qa).on("mouseup.brush",jr),ft.interrupt().selectAll("*").interrupt(),or)zr[0]=N[0]-zr[0],zr[1]=U[0]-zr[1];else if(nt){var Vr=+/w$/.test(nt),Jr=+/^n/.test(nt);Rr=[N[1-Vr]-zr[0],U[1-Jr]-zr[1]],zr[0]=N[Vr],zr[1]=U[Jr]}else e.event.altKey&&(fr=zr.slice());ft.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Ve.style("cursor")),Je({type:"brushstart"}),Qa();function Na(){e.event.keyCode==32&&(or||(fr=null,zr[0]-=N[1],zr[1]-=U[1],or=2),Ke())}function ei(){e.event.keyCode==32&&or==2&&(zr[0]+=N[1],zr[1]+=U[1],or=0,Ke())}function Qa(){var na=e.mouse(Ie),oa=!1;Rr&&(na[0]+=Rr[0],na[1]+=Rr[1]),or||(e.event.altKey?(fr||(fr=[(N[0]+N[1])/2,(U[0]+U[1])/2]),zr[0]=N[+(na[0]{(function(e,t){typeof J1=="object"&&typeof w7!="undefined"?t(J1):(e=e||self,t(e.d3=e.d3||{}))})(J1,function(e){"use strict";var t=new Date,r=new Date;function i(Be,st,sr,Dr){function Et(ct){return Be(ct=arguments.length===0?new Date:new Date(+ct)),ct}return Et.floor=function(ct){return Be(ct=new Date(+ct)),ct},Et.ceil=function(ct){return Be(ct=new Date(ct-1)),st(ct,1),Be(ct),ct},Et.round=function(ct){var pt=Et(ct),Ot=Et.ceil(ct);return ct-pt0))return er;do er.push(Zt=new Date(+ct)),st(ct,Ot),Be(ct);while(Zt=pt)for(;Be(pt),!ct(pt);)pt.setTime(pt-1)},function(pt,Ot){if(pt>=pt)if(Ot<0)for(;++Ot<=0;)for(;st(pt,-1),!ct(pt););else for(;--Ot>=0;)for(;st(pt,1),!ct(pt););})},sr&&(Et.count=function(ct,pt){return t.setTime(+ct),r.setTime(+pt),Be(t),Be(r),Math.floor(sr(t,r))},Et.every=function(ct){return ct=Math.floor(ct),!isFinite(ct)||!(ct>0)?null:ct>1?Et.filter(Dr?function(pt){return Dr(pt)%ct===0}:function(pt){return Et.count(0,pt)%ct===0}):Et}),Et}var a=i(function(){},function(Be,st){Be.setTime(+Be+st)},function(Be,st){return st-Be});a.every=function(Be){return Be=Math.floor(Be),!isFinite(Be)||!(Be>0)?null:Be>1?i(function(st){st.setTime(Math.floor(st/Be)*Be)},function(st,sr){st.setTime(+st+sr*Be)},function(st,sr){return(sr-st)/Be}):a};var s=a.range,l=1e3,f=6e4,h=36e5,v=864e5,m=6048e5,_=i(function(Be){Be.setTime(Be-Be.getMilliseconds())},function(Be,st){Be.setTime(+Be+st*l)},function(Be,st){return(st-Be)/l},function(Be){return Be.getUTCSeconds()}),T=_.range,S=i(function(Be){Be.setTime(Be-Be.getMilliseconds()-Be.getSeconds()*l)},function(Be,st){Be.setTime(+Be+st*f)},function(Be,st){return(st-Be)/f},function(Be){return Be.getMinutes()}),C=S.range,E=i(function(Be){Be.setTime(Be-Be.getMilliseconds()-Be.getSeconds()*l-Be.getMinutes()*f)},function(Be,st){Be.setTime(+Be+st*h)},function(Be,st){return(st-Be)/h},function(Be){return Be.getHours()}),D=E.range,z=i(function(Be){Be.setHours(0,0,0,0)},function(Be,st){Be.setDate(Be.getDate()+st)},function(Be,st){return(st-Be-(st.getTimezoneOffset()-Be.getTimezoneOffset())*f)/v},function(Be){return Be.getDate()-1}),B=z.range;function q(Be){return i(function(st){st.setDate(st.getDate()-(st.getDay()+7-Be)%7),st.setHours(0,0,0,0)},function(st,sr){st.setDate(st.getDate()+sr*7)},function(st,sr){return(sr-st-(sr.getTimezoneOffset()-st.getTimezoneOffset())*f)/m})}var I=q(0),O=q(1),H=q(2),V=q(3),W=q(4),J=q(5),te=q(6),ne=I.range,oe=O.range,fe=H.range,ve=V.range,Se=W.range,Me=J.range,Ae=te.range,we=i(function(Be){Be.setDate(1),Be.setHours(0,0,0,0)},function(Be,st){Be.setMonth(Be.getMonth()+st)},function(Be,st){return st.getMonth()-Be.getMonth()+(st.getFullYear()-Be.getFullYear())*12},function(Be){return Be.getMonth()}),Te=we.range,Ce=i(function(Be){Be.setMonth(0,1),Be.setHours(0,0,0,0)},function(Be,st){Be.setFullYear(Be.getFullYear()+st)},function(Be,st){return st.getFullYear()-Be.getFullYear()},function(Be){return Be.getFullYear()});Ce.every=function(Be){return!isFinite(Be=Math.floor(Be))||!(Be>0)?null:i(function(st){st.setFullYear(Math.floor(st.getFullYear()/Be)*Be),st.setMonth(0,1),st.setHours(0,0,0,0)},function(st,sr){st.setFullYear(st.getFullYear()+sr*Be)})};var Le=Ce.range,Ke=i(function(Be){Be.setUTCSeconds(0,0)},function(Be,st){Be.setTime(+Be+st*f)},function(Be,st){return(st-Be)/f},function(Be){return Be.getUTCMinutes()}),lt=Ke.range,at=i(function(Be){Be.setUTCMinutes(0,0,0)},function(Be,st){Be.setTime(+Be+st*h)},function(Be,st){return(st-Be)/h},function(Be){return Be.getUTCHours()}),gt=at.range,Ye=i(function(Be){Be.setUTCHours(0,0,0,0)},function(Be,st){Be.setUTCDate(Be.getUTCDate()+st)},function(Be,st){return(st-Be)/v},function(Be){return Be.getUTCDate()-1}),St=Ye.range;function it(Be){return i(function(st){st.setUTCDate(st.getUTCDate()-(st.getUTCDay()+7-Be)%7),st.setUTCHours(0,0,0,0)},function(st,sr){st.setUTCDate(st.getUTCDate()+sr*7)},function(st,sr){return(sr-st)/m})}var mt=it(0),bt=it(1),vt=it(2),de=it(3),De=it(4),ge=it(5),rt=it(6),dt=mt.range,We=bt.range,qt=vt.range,Dt=de.range,Tt=De.range,Rt=ge.range,Ut=rt.range,Ct=i(function(Be){Be.setUTCDate(1),Be.setUTCHours(0,0,0,0)},function(Be,st){Be.setUTCMonth(Be.getUTCMonth()+st)},function(Be,st){return st.getUTCMonth()-Be.getUTCMonth()+(st.getUTCFullYear()-Be.getUTCFullYear())*12},function(Be){return Be.getUTCMonth()}),At=Ct.range,Vt=i(function(Be){Be.setUTCMonth(0,1),Be.setUTCHours(0,0,0,0)},function(Be,st){Be.setUTCFullYear(Be.getUTCFullYear()+st)},function(Be,st){return st.getUTCFullYear()-Be.getUTCFullYear()},function(Be){return Be.getUTCFullYear()});Vt.every=function(Be){return!isFinite(Be=Math.floor(Be))||!(Be>0)?null:i(function(st){st.setUTCFullYear(Math.floor(st.getUTCFullYear()/Be)*Be),st.setUTCMonth(0,1),st.setUTCHours(0,0,0,0)},function(st,sr){st.setUTCFullYear(st.getUTCFullYear()+sr*Be)})};var Ht=Vt.range;e.timeDay=z,e.timeDays=B,e.timeFriday=J,e.timeFridays=Me,e.timeHour=E,e.timeHours=D,e.timeInterval=i,e.timeMillisecond=a,e.timeMilliseconds=s,e.timeMinute=S,e.timeMinutes=C,e.timeMonday=O,e.timeMondays=oe,e.timeMonth=we,e.timeMonths=Te,e.timeSaturday=te,e.timeSaturdays=Ae,e.timeSecond=_,e.timeSeconds=T,e.timeSunday=I,e.timeSundays=ne,e.timeThursday=W,e.timeThursdays=Se,e.timeTuesday=H,e.timeTuesdays=fe,e.timeWednesday=V,e.timeWednesdays=ve,e.timeWeek=I,e.timeWeeks=ne,e.timeYear=Ce,e.timeYears=Le,e.utcDay=Ye,e.utcDays=St,e.utcFriday=ge,e.utcFridays=Rt,e.utcHour=at,e.utcHours=gt,e.utcMillisecond=a,e.utcMilliseconds=s,e.utcMinute=Ke,e.utcMinutes=lt,e.utcMonday=bt,e.utcMondays=We,e.utcMonth=Ct,e.utcMonths=At,e.utcSaturday=rt,e.utcSaturdays=Ut,e.utcSecond=_,e.utcSeconds=T,e.utcSunday=mt,e.utcSundays=dt,e.utcThursday=De,e.utcThursdays=Tt,e.utcTuesday=vt,e.utcTuesdays=qt,e.utcWednesday=de,e.utcWednesdays=Dt,e.utcWeek=mt,e.utcWeeks=dt,e.utcYear=Vt,e.utcYears=Ht,Object.defineProperty(e,"__esModule",{value:!0})})});var l0=pe((K1,T7)=>{(function(e,t){typeof K1=="object"&&typeof T7!="undefined"?t(K1,O3()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(K1,function(e,t){"use strict";function r(Fe){if(0<=Fe.y&&Fe.y<100){var Ue=new Date(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L);return Ue.setFullYear(Fe.y),Ue}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 Ue=new Date(Date.UTC(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L));return Ue.setUTCFullYear(Fe.y),Ue}return new Date(Date.UTC(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L))}function a(Fe,Ue,xt){return{y:Fe,m:Ue,d:xt,H:0,M:0,S:0,L:0}}function s(Fe){var Ue=Fe.dateTime,xt=Fe.date,wt=Fe.time,mr=Fe.periods,Ar=Fe.days,Mr=Fe.shortDays,Gr=Fe.months,pa=Fe.shortMonths,Ca=T(mr),ii=S(mr),wi=T(Ar),vi=S(Ar),Fi=T(Mr),Gi=S(Mr),hn=T(Gr),nn=S(Gr),Ki=T(pa),ir=S(pa),oi={a:Pt,A:Ft,b:tr,B:Wt,c:null,d:we,e:we,f:lt,H:Te,I:Ce,j:Le,L:Ke,m:at,M:gt,p:Sr,q:Zr,Q:pt,s:Ot,S:Ye,u:St,U:it,V:mt,w:bt,W:vt,x:null,X:null,y:de,Y:De,Z:ge,"%":ct},Sa={a:Or,A:ca,b:ua,B:qa,c:null,d:rt,e:rt,f:Tt,H:dt,I:We,j:qt,L:Dt,m:Rt,M:Ut,p:ri,q:Yr,Q:pt,s:Ot,S:Ct,u:At,U:Vt,V:Ht,w:Be,W:st,x:null,X:null,y:sr,Y:Dr,Z:Et,"%":ct},la={a:le,A:ce,b:Ee,B:Ne,c:$e,d:W,e:W,f:ve,H:te,I:te,j:J,L:fe,m:V,M:ne,p:ee,q:H,Q:Me,s:Ae,S:oe,u:E,U:D,V:z,w:C,W:B,x:Ze,X:yt,y:I,Y:q,Z:O,"%":Se};oi.x=Ci(xt,oi),oi.X=Ci(wt,oi),oi.c=Ci(Ue,oi),Sa.x=Ci(xt,Sa),Sa.X=Ci(wt,Sa),Sa.c=Ci(Ue,Sa);function Ci(gr,$r){return function(ga){var nr=[],Ti=-1,Ea=0,si=gr.length,fa,Pn,Co;for(ga instanceof Date||(ga=new Date(+ga));++Ti53)return null;"w"in nr||(nr.w=1),"Z"in nr?(Ea=i(a(nr.y,0,1)),si=Ea.getUTCDay(),Ea=si>4||si===0?t.utcMonday.ceil(Ea):t.utcMonday(Ea),Ea=t.utcDay.offset(Ea,(nr.V-1)*7),nr.y=Ea.getUTCFullYear(),nr.m=Ea.getUTCMonth(),nr.d=Ea.getUTCDate()+(nr.w+6)%7):(Ea=r(a(nr.y,0,1)),si=Ea.getDay(),Ea=si>4||si===0?t.timeMonday.ceil(Ea):t.timeMonday(Ea),Ea=t.timeDay.offset(Ea,(nr.V-1)*7),nr.y=Ea.getFullYear(),nr.m=Ea.getMonth(),nr.d=Ea.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 se(gr,$r,ga,nr){for(var Ti=0,Ea=$r.length,si=ga.length,fa,Pn;Ti=si)return-1;if(fa=$r.charCodeAt(Ti++),fa===37){if(fa=$r.charAt(Ti++),Pn=la[fa in l?$r.charAt(Ti++):fa],!Pn||(nr=Pn(gr,ga,nr))<0)return-1}else if(fa!=ga.charCodeAt(nr++))return-1}return nr}function ee(gr,$r,ga){var nr=Ca.exec($r.slice(ga));return nr?(gr.p=ii[nr[0].toLowerCase()],ga+nr[0].length):-1}function le(gr,$r,ga){var nr=Fi.exec($r.slice(ga));return nr?(gr.w=Gi[nr[0].toLowerCase()],ga+nr[0].length):-1}function ce(gr,$r,ga){var nr=wi.exec($r.slice(ga));return nr?(gr.w=vi[nr[0].toLowerCase()],ga+nr[0].length):-1}function Ee(gr,$r,ga){var nr=Ki.exec($r.slice(ga));return nr?(gr.m=ir[nr[0].toLowerCase()],ga+nr[0].length):-1}function Ne(gr,$r,ga){var nr=hn.exec($r.slice(ga));return nr?(gr.m=nn[nr[0].toLowerCase()],ga+nr[0].length):-1}function $e(gr,$r,ga){return se(gr,Ue,$r,ga)}function Ze(gr,$r,ga){return se(gr,xt,$r,ga)}function yt(gr,$r,ga){return se(gr,wt,$r,ga)}function Pt(gr){return Mr[gr.getDay()]}function Ft(gr){return Ar[gr.getDay()]}function tr(gr){return pa[gr.getMonth()]}function Wt(gr){return Gr[gr.getMonth()]}function Sr(gr){return mr[+(gr.getHours()>=12)]}function Zr(gr){return 1+~~(gr.getMonth()/3)}function Or(gr){return Mr[gr.getUTCDay()]}function ca(gr){return Ar[gr.getUTCDay()]}function ua(gr){return pa[gr.getUTCMonth()]}function qa(gr){return Gr[gr.getUTCMonth()]}function ri(gr){return mr[+(gr.getUTCHours()>=12)]}function Yr(gr){return 1+~~(gr.getUTCMonth()/3)}return{format:function(gr){var $r=Ci(gr+="",oi);return $r.toString=function(){return gr},$r},parse:function(gr){var $r=ma(gr+="",!1);return $r.toString=function(){return gr},$r},utcFormat:function(gr){var $r=Ci(gr+="",Sa);return $r.toString=function(){return gr},$r},utcParse:function(gr){var $r=ma(gr+="",!0);return $r.toString=function(){return gr},$r}}}var l={"-":"",_:" ",0:"0"},f=/^\s*\d+/,h=/^%/,v=/[\\^$*+?|[\]().{}]/g;function m(Fe,Ue,xt){var wt=Fe<0?"-":"",mr=(wt?-Fe:Fe)+"",Ar=mr.length;return wt+(Ar68?1900:2e3),xt+wt[0].length):-1}function O(Fe,Ue,xt){var wt=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ue.slice(xt,xt+6));return wt?(Fe.Z=wt[1]?0:-(wt[2]+(wt[3]||"00")),xt+wt[0].length):-1}function H(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+1));return wt?(Fe.q=wt[0]*3-3,xt+wt[0].length):-1}function V(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+2));return wt?(Fe.m=wt[0]-1,xt+wt[0].length):-1}function W(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+2));return wt?(Fe.d=+wt[0],xt+wt[0].length):-1}function J(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+3));return wt?(Fe.m=0,Fe.d=+wt[0],xt+wt[0].length):-1}function te(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+2));return wt?(Fe.H=+wt[0],xt+wt[0].length):-1}function ne(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+2));return wt?(Fe.M=+wt[0],xt+wt[0].length):-1}function oe(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+2));return wt?(Fe.S=+wt[0],xt+wt[0].length):-1}function fe(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+3));return wt?(Fe.L=+wt[0],xt+wt[0].length):-1}function ve(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+6));return wt?(Fe.L=Math.floor(wt[0]/1e3),xt+wt[0].length):-1}function Se(Fe,Ue,xt){var wt=h.exec(Ue.slice(xt,xt+1));return wt?xt+wt[0].length:-1}function Me(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt));return wt?(Fe.Q=+wt[0],xt+wt[0].length):-1}function Ae(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt));return wt?(Fe.s=+wt[0],xt+wt[0].length):-1}function we(Fe,Ue){return m(Fe.getDate(),Ue,2)}function Te(Fe,Ue){return m(Fe.getHours(),Ue,2)}function Ce(Fe,Ue){return m(Fe.getHours()%12||12,Ue,2)}function Le(Fe,Ue){return m(1+t.timeDay.count(t.timeYear(Fe),Fe),Ue,3)}function Ke(Fe,Ue){return m(Fe.getMilliseconds(),Ue,3)}function lt(Fe,Ue){return Ke(Fe,Ue)+"000"}function at(Fe,Ue){return m(Fe.getMonth()+1,Ue,2)}function gt(Fe,Ue){return m(Fe.getMinutes(),Ue,2)}function Ye(Fe,Ue){return m(Fe.getSeconds(),Ue,2)}function St(Fe){var Ue=Fe.getDay();return Ue===0?7:Ue}function it(Fe,Ue){return m(t.timeSunday.count(t.timeYear(Fe)-1,Fe),Ue,2)}function mt(Fe,Ue){var xt=Fe.getDay();return Fe=xt>=4||xt===0?t.timeThursday(Fe):t.timeThursday.ceil(Fe),m(t.timeThursday.count(t.timeYear(Fe),Fe)+(t.timeYear(Fe).getDay()===4),Ue,2)}function bt(Fe){return Fe.getDay()}function vt(Fe,Ue){return m(t.timeMonday.count(t.timeYear(Fe)-1,Fe),Ue,2)}function de(Fe,Ue){return m(Fe.getFullYear()%100,Ue,2)}function De(Fe,Ue){return m(Fe.getFullYear()%1e4,Ue,4)}function ge(Fe){var Ue=Fe.getTimezoneOffset();return(Ue>0?"-":(Ue*=-1,"+"))+m(Ue/60|0,"0",2)+m(Ue%60,"0",2)}function rt(Fe,Ue){return m(Fe.getUTCDate(),Ue,2)}function dt(Fe,Ue){return m(Fe.getUTCHours(),Ue,2)}function We(Fe,Ue){return m(Fe.getUTCHours()%12||12,Ue,2)}function qt(Fe,Ue){return m(1+t.utcDay.count(t.utcYear(Fe),Fe),Ue,3)}function Dt(Fe,Ue){return m(Fe.getUTCMilliseconds(),Ue,3)}function Tt(Fe,Ue){return Dt(Fe,Ue)+"000"}function Rt(Fe,Ue){return m(Fe.getUTCMonth()+1,Ue,2)}function Ut(Fe,Ue){return m(Fe.getUTCMinutes(),Ue,2)}function Ct(Fe,Ue){return m(Fe.getUTCSeconds(),Ue,2)}function At(Fe){var Ue=Fe.getUTCDay();return Ue===0?7:Ue}function Vt(Fe,Ue){return m(t.utcSunday.count(t.utcYear(Fe)-1,Fe),Ue,2)}function Ht(Fe,Ue){var xt=Fe.getUTCDay();return Fe=xt>=4||xt===0?t.utcThursday(Fe):t.utcThursday.ceil(Fe),m(t.utcThursday.count(t.utcYear(Fe),Fe)+(t.utcYear(Fe).getUTCDay()===4),Ue,2)}function Be(Fe){return Fe.getUTCDay()}function st(Fe,Ue){return m(t.utcMonday.count(t.utcYear(Fe)-1,Fe),Ue,2)}function sr(Fe,Ue){return m(Fe.getUTCFullYear()%100,Ue,2)}function Dr(Fe,Ue){return m(Fe.getUTCFullYear()%1e4,Ue,4)}function Et(){return"+0000"}function ct(){return"%"}function pt(Fe){return+Fe}function Ot(Fe){return Math.floor(+Fe/1e3)}var er;Zt({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 Zt(Fe){return er=s(Fe),e.timeFormat=er.format,e.timeParse=er.parse,e.utcFormat=er.utcFormat,e.utcParse=er.utcParse,er}var Kt="%Y-%m-%dT%H:%M:%S.%LZ";function pr(Fe){return Fe.toISOString()}var yr=Date.prototype.toISOString?pr:e.utcFormat(Kt);function ur(Fe){var Ue=new Date(Fe);return isNaN(Ue)?null:Ue}var Lt=+new Date("2000-01-01T00:00:00.000Z")?ur:e.utcParse(Kt);e.isoFormat=yr,e.isoParse=Lt,e.timeFormatDefaultLocale=Zt,e.timeFormatLocale=s,Object.defineProperty(e,"__esModule",{value:!0})})});var U3=pe((Q1,A7)=>{(function(e,t){typeof Q1=="object"&&typeof A7!="undefined"?t(Q1):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(Q1,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,te=V.slice(0,J);return[te.length>1?te[0]+te.slice(2):te,+V.slice(J+1)]}function i(V){return V=r(Math.abs(V)),V?V[1]:NaN}function a(V,W){return function(J,te){for(var ne=J.length,oe=[],fe=0,ve=V[0],Se=0;ne>0&&ve>0&&(Se+ve+1>te&&(ve=Math.max(1,te-Se)),oe.push(J.substring(ne-=ve,ne+ve)),!((Se+=ve+1)>te));)ve=V[fe=(fe+1)%V.length];return oe.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,te=-1,ne;J0&&(te=0);break}return te>0?V.slice(0,te)+V.slice(ne+1):V}var m;function _(V,W){var J=r(V,W);if(!J)return V+"";var te=J[0],ne=J[1],oe=ne-(m=Math.max(-8,Math.min(8,Math.floor(ne/3)))*3)+1,fe=te.length;return oe===fe?te:oe>fe?te+new Array(oe-fe+1).join("0"):oe>0?te.slice(0,oe)+"."+te.slice(oe):"0."+new Array(1-oe).join("0")+r(V,Math.max(0,W+oe-1))[0]}function T(V,W){var J=r(V,W);if(!J)return V+"";var te=J[0],ne=J[1];return ne<0?"0."+new Array(-ne).join("0")+te:te.length>ne+1?te.slice(0,ne+1)+"."+te.slice(ne+1):te+new Array(ne-te.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:_,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 E=Array.prototype.map,D=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function z(V){var W=V.grouping===void 0||V.thousands===void 0?C:a(E.call(V.grouping,Number),V.thousands+""),J=V.currency===void 0?"":V.currency[0]+"",te=V.currency===void 0?"":V.currency[1]+"",ne=V.decimal===void 0?".":V.decimal+"",oe=V.numerals===void 0?C:s(E.call(V.numerals,String)),fe=V.percent===void 0?"%":V.percent+"",ve=V.minus===void 0?"-":V.minus+"",Se=V.nan===void 0?"NaN":V.nan+"";function Me(we){we=f(we);var Te=we.fill,Ce=we.align,Le=we.sign,Ke=we.symbol,lt=we.zero,at=we.width,gt=we.comma,Ye=we.precision,St=we.trim,it=we.type;it==="n"?(gt=!0,it="g"):S[it]||(Ye===void 0&&(Ye=12),St=!0,it="g"),(lt||Te==="0"&&Ce==="=")&&(lt=!0,Te="0",Ce="=");var mt=Ke==="$"?J:Ke==="#"&&/[boxX]/.test(it)?"0"+it.toLowerCase():"",bt=Ke==="$"?te:/[%p]/.test(it)?fe:"",vt=S[it],de=/[defgprs%]/.test(it);Ye=Ye===void 0?6:/[gprs]/.test(it)?Math.max(1,Math.min(21,Ye)):Math.max(0,Math.min(20,Ye));function De(ge){var rt=mt,dt=bt,We,qt,Dt;if(it==="c")dt=vt(ge)+dt,ge="";else{ge=+ge;var Tt=ge<0||1/ge<0;if(ge=isNaN(ge)?Se:vt(Math.abs(ge),Ye),St&&(ge=v(ge)),Tt&&+ge==0&&Le!=="+"&&(Tt=!1),rt=(Tt?Le==="("?Le:ve:Le==="-"||Le==="("?"":Le)+rt,dt=(it==="s"?D[8+m/3]:"")+dt+(Tt&&Le==="("?")":""),de){for(We=-1,qt=ge.length;++WeDt||Dt>57){dt=(Dt===46?ne+ge.slice(We+1):ge.slice(We))+dt,ge=ge.slice(0,We);break}}}gt&&!lt&&(ge=W(ge,1/0));var Rt=rt.length+ge.length+dt.length,Ut=Rt>1)+rt+ge+dt+Ut.slice(Rt);break;default:ge=Ut+rt+ge+dt;break}return oe(ge)}return De.toString=function(){return we+""},De}function Ae(we,Te){var Ce=Me((we=f(we),we.type="f",we)),Le=Math.max(-8,Math.min(8,Math.floor(i(Te)/3)))*3,Ke=Math.pow(10,-Le),lt=D[8+Le/3];return function(at){return Ce(Ke*at)+lt}}return{format:Me,formatPrefix:Ae}}var B;q({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function q(V){return B=z(V),e.format=B.format,e.formatPrefix=B.formatPrefix,B}function I(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=q,e.formatLocale=z,e.formatSpecifier=f,e.precisionFixed=I,e.precisionPrefix=O,e.precisionRound=H,Object.defineProperty(e,"__esModule",{value:!0})})});var S7=pe((qme,M7)=>{"use strict";M7.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=pe((Nme,k7)=>{"use strict";var sj=S7();k7.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&sj(r))return!1}else if(t!=="number")return!1;return e-e<1}});var Zi=pe((Bme,C7)=>{"use strict";C7.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 V3=pe(($1,E7)=>{(function(e,t){typeof $1=="object"&&typeof E7!="undefined"?t($1):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})($1,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,_,T,S,C;l[l.length-1]==="="&&(f--,l[l.length-2]==="="&&f--);var E=new ArrayBuffer(f),D=new Uint8Array(E);for(v=0;v>4,D[m++]=(T&15)<<4|S>>2,D[m++]=(S&3)<<6|C&63;return E};e.decode=s,e.encode=a,Object.defineProperty(e,"__esModule",{value:!0})})});var cc=pe((Ome,L7)=>{"use strict";L7.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 al=pe(Du=>{"use strict";var lj=V3().decode,uj=cc(),H3=Array.isArray,fj=ArrayBuffer,cj=DataView;function D7(e){return fj.isView(e)&&!(e instanceof cj)}Du.isTypedArray=D7;function e_(e){return H3(e)||D7(e)}Du.isArrayOrTypedArray=e_;function hj(e){return!e_(e[0])}Du.isArray1D=hj;Du.ensureArray=function(e,t){return H3(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 G3(e){return e.constructor===ArrayBuffer}Du.isArrayBuffer=G3;Du.decodeTypedArraySpec=function(e){var t=[],r=vj(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;G3(l)||(l=lj(l));var f=r.shape===void 0?[l.byteLength/s]:(""+r.shape).split(",");f.reverse();var h=f.length,v,m,_=+f[0],T=s*_,S=0;if(h===1)t=new a(l);else if(h===2)for(v=+f[1],m=0;m{"use strict";var z7=Da(),Y3=al().isArrayOrTypedArray;q7.exports=function(t,r){if(z7(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 u0=My(),gj=/^\w*$/,_j=0,N7=1,t_=2,B7=3,ed=4;O7.exports=function(t,r,i,a){i=i||"name",a=a||"value";var s,l,f,h={};r&&r.length?(f=u0(t,r),l=f.get()):l=t,r=r||"";var v={};if(l)for(s=0;s2)return h[S]=h[S]|t_,_.set(T,null);if(m){for(s=S;s{"use strict";var xj=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,bj=/^[^\.\[\]]+$/;V7.exports=function(e,t){for(;t;){var r=e.match(xj);if(r)e=r[1];else if(e.match(bj))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 r_=pe((Zme,G7)=>{"use strict";var wj=Da();G7.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 wj(i)||(i=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),i}});var W7=pe((Yme,Y7)=>{"use strict";var Z7=al().isArrayOrTypedArray,Sy=cc();Y7.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(Z7(a)&&Z7(s)&&Sy(a[0])){if(i==="customdata"||i==="ids")continue;for(var l=Math.min(a.length,s.length),f=0;f{"use strict";function Tj(e,t){var r=e%t;return r<0?r+t:r}function Aj(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}X7.exports={mod:Tj,modHalf:Aj}});var wf=pe((Xme,a_)=>{(function(e){var t=/^\s+/,r=/\s+$/,i=0,a=e.round,s=e.min,l=e.max,f=e.random;function h(de,De){if(de=de||"",De=De||{},de instanceof h)return de;if(!(this instanceof h))return new h(de,De);var ge=v(de);this._originalInput=de,this._r=ge.r,this._g=ge.g,this._b=ge.b,this._a=ge.a,this._roundA=a(100*this._a)/100,this._format=De.format||ge.format,this._gradientType=De.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=ge.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 de=this.toRgb();return(de.r*299+de.g*587+de.b*114)/1e3},getLuminance:function(){var de=this.toRgb(),De,ge,rt,dt,We,qt;return De=de.r/255,ge=de.g/255,rt=de.b/255,De<=.03928?dt=De/12.92:dt=e.pow((De+.055)/1.055,2.4),ge<=.03928?We=ge/12.92:We=e.pow((ge+.055)/1.055,2.4),rt<=.03928?qt=rt/12.92:qt=e.pow((rt+.055)/1.055,2.4),.2126*dt+.7152*We+.0722*qt},setAlpha:function(de){return this._a=we(de),this._roundA=a(100*this._a)/100,this},toHsv:function(){var de=S(this._r,this._g,this._b);return{h:de.h*360,s:de.s,v:de.v,a:this._a}},toHsvString:function(){var de=S(this._r,this._g,this._b),De=a(de.h*360),ge=a(de.s*100),rt=a(de.v*100);return this._a==1?"hsv("+De+", "+ge+"%, "+rt+"%)":"hsva("+De+", "+ge+"%, "+rt+"%, "+this._roundA+")"},toHsl:function(){var de=_(this._r,this._g,this._b);return{h:de.h*360,s:de.s,l:de.l,a:this._a}},toHslString:function(){var de=_(this._r,this._g,this._b),De=a(de.h*360),ge=a(de.s*100),rt=a(de.l*100);return this._a==1?"hsl("+De+", "+ge+"%, "+rt+"%)":"hsla("+De+", "+ge+"%, "+rt+"%, "+this._roundA+")"},toHex:function(de){return E(this._r,this._g,this._b,de)},toHexString:function(de){return"#"+this.toHex(de)},toHex8:function(de){return D(this._r,this._g,this._b,this._a,de)},toHex8String:function(de){return"#"+this.toHex8(de)},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(Te(this._r,255)*100)+"%",g:a(Te(this._g,255)*100)+"%",b:a(Te(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+a(Te(this._r,255)*100)+"%, "+a(Te(this._g,255)*100)+"%, "+a(Te(this._b,255)*100)+"%)":"rgba("+a(Te(this._r,255)*100)+"%, "+a(Te(this._g,255)*100)+"%, "+a(Te(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:Me[E(this._r,this._g,this._b,!0)]||!1},toFilter:function(de){var De="#"+z(this._r,this._g,this._b,this._a),ge=De,rt=this._gradientType?"GradientType = 1, ":"";if(de){var dt=h(de);ge="#"+z(dt._r,dt._g,dt._b,dt._a)}return"progid:DXImageTransform.Microsoft.gradient("+rt+"startColorstr="+De+",endColorstr="+ge+")"},toString:function(de){var De=!!de;de=de||this._format;var ge=!1,rt=this._a<1&&this._a>=0,dt=!De&&rt&&(de==="hex"||de==="hex6"||de==="hex3"||de==="hex4"||de==="hex8"||de==="name");return dt?de==="name"&&this._a===0?this.toName():this.toRgbString():(de==="rgb"&&(ge=this.toRgbString()),de==="prgb"&&(ge=this.toPercentageRgbString()),(de==="hex"||de==="hex6")&&(ge=this.toHexString()),de==="hex3"&&(ge=this.toHexString(!0)),de==="hex4"&&(ge=this.toHex8String(!0)),de==="hex8"&&(ge=this.toHex8String()),de==="name"&&(ge=this.toName()),de==="hsl"&&(ge=this.toHslString()),de==="hsv"&&(ge=this.toHsvString()),ge||this.toHexString())},clone:function(){return h(this.toString())},_applyModification:function(de,De){var ge=de.apply(null,[this].concat([].slice.call(De)));return this._r=ge._r,this._g=ge._g,this._b=ge._b,this.setAlpha(ge._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(B,arguments)},saturate:function(){return this._applyModification(q,arguments)},greyscale:function(){return this._applyModification(I,arguments)},spin:function(){return this._applyModification(W,arguments)},_applyCombination:function(de,De){return de.apply(null,[this].concat([].slice.call(De)))},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(oe,arguments)},triad:function(){return this._applyCombination(te,arguments)},tetrad:function(){return this._applyCombination(ne,arguments)}},h.fromRatio=function(de,De){if(typeof de=="object"){var ge={};for(var rt in de)de.hasOwnProperty(rt)&&(rt==="a"?ge[rt]=de[rt]:ge[rt]=gt(de[rt]));de=ge}return h(de,De)};function v(de){var De={r:0,g:0,b:0},ge=1,rt=null,dt=null,We=null,qt=!1,Dt=!1;return typeof de=="string"&&(de=bt(de)),typeof de=="object"&&(mt(de.r)&&mt(de.g)&&mt(de.b)?(De=m(de.r,de.g,de.b),qt=!0,Dt=String(de.r).substr(-1)==="%"?"prgb":"rgb"):mt(de.h)&&mt(de.s)&&mt(de.v)?(rt=gt(de.s),dt=gt(de.v),De=C(de.h,rt,dt),qt=!0,Dt="hsv"):mt(de.h)&&mt(de.s)&&mt(de.l)&&(rt=gt(de.s),We=gt(de.l),De=T(de.h,rt,We),qt=!0,Dt="hsl"),de.hasOwnProperty("a")&&(ge=de.a)),ge=we(ge),{ok:qt,format:de.format||Dt,r:s(255,l(De.r,0)),g:s(255,l(De.g,0)),b:s(255,l(De.b,0)),a:ge}}function m(de,De,ge){return{r:Te(de,255)*255,g:Te(De,255)*255,b:Te(ge,255)*255}}function _(de,De,ge){de=Te(de,255),De=Te(De,255),ge=Te(ge,255);var rt=l(de,De,ge),dt=s(de,De,ge),We,qt,Dt=(rt+dt)/2;if(rt==dt)We=qt=0;else{var Tt=rt-dt;switch(qt=Dt>.5?Tt/(2-rt-dt):Tt/(rt+dt),rt){case de:We=(De-ge)/Tt+(De1&&(Ct-=1),Ct<1/6?Rt+(Ut-Rt)*6*Ct:Ct<1/2?Ut:Ct<2/3?Rt+(Ut-Rt)*(2/3-Ct)*6:Rt}if(De===0)rt=dt=We=ge;else{var Dt=ge<.5?ge*(1+De):ge+De-ge*De,Tt=2*ge-Dt;rt=qt(Tt,Dt,de+1/3),dt=qt(Tt,Dt,de),We=qt(Tt,Dt,de-1/3)}return{r:rt*255,g:dt*255,b:We*255}}function S(de,De,ge){de=Te(de,255),De=Te(De,255),ge=Te(ge,255);var rt=l(de,De,ge),dt=s(de,De,ge),We,qt,Dt=rt,Tt=rt-dt;if(qt=rt===0?0:Tt/rt,rt==dt)We=0;else{switch(rt){case de:We=(De-ge)/Tt+(De>1)+720)%360;--De;)rt.h=(rt.h+dt)%360,We.push(h(rt));return We}function ve(de,De){De=De||6;for(var ge=h(de).toHsv(),rt=ge.h,dt=ge.s,We=ge.v,qt=[],Dt=1/De;De--;)qt.push(h({h:rt,s:dt,v:We})),We=(We+Dt)%1;return qt}h.mix=function(de,De,ge){ge=ge===0?0:ge||50;var rt=h(de).toRgb(),dt=h(De).toRgb(),We=ge/100,qt={r:(dt.r-rt.r)*We+rt.r,g:(dt.g-rt.g)*We+rt.g,b:(dt.b-rt.b)*We+rt.b,a:(dt.a-rt.a)*We+rt.a};return h(qt)},h.readability=function(de,De){var ge=h(de),rt=h(De);return(e.max(ge.getLuminance(),rt.getLuminance())+.05)/(e.min(ge.getLuminance(),rt.getLuminance())+.05)},h.isReadable=function(de,De,ge){var rt=h.readability(de,De),dt,We;switch(We=!1,dt=vt(ge),dt.level+dt.size){case"AAsmall":case"AAAlarge":We=rt>=4.5;break;case"AAlarge":We=rt>=3;break;case"AAAsmall":We=rt>=7;break}return We},h.mostReadable=function(de,De,ge){var rt=null,dt=0,We,qt,Dt,Tt;ge=ge||{},qt=ge.includeFallbackColors,Dt=ge.level,Tt=ge.size;for(var Rt=0;Rtdt&&(dt=We,rt=h(De[Rt]));return h.isReadable(de,rt,{level:Dt,size:Tt})||!qt?rt:(ge.includeFallbackColors=!1,h.mostReadable(de,["#fff","#000"],ge))};var Se=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"},Me=h.hexNames=Ae(Se);function Ae(de){var De={};for(var ge in de)de.hasOwnProperty(ge)&&(De[de[ge]]=ge);return De}function we(de){return de=parseFloat(de),(isNaN(de)||de<0||de>1)&&(de=1),de}function Te(de,De){Ke(de)&&(de="100%");var ge=lt(de);return de=s(De,l(0,parseFloat(de))),ge&&(de=parseInt(de*De,10)/100),e.abs(de-De)<1e-6?1:de%De/parseFloat(De)}function Ce(de){return s(1,l(0,de))}function Le(de){return parseInt(de,16)}function Ke(de){return typeof de=="string"&&de.indexOf(".")!=-1&&parseFloat(de)===1}function lt(de){return typeof de=="string"&&de.indexOf("%")!=-1}function at(de){return de.length==1?"0"+de:""+de}function gt(de){return de<=1&&(de=de*100+"%"),de}function Ye(de){return e.round(parseFloat(de)*255).toString(16)}function St(de){return Le(de)/255}var it=function(){var de="[-\\+]?\\d+%?",De="[-\\+]?\\d*\\.\\d+%?",ge="(?:"+De+")|(?:"+de+")",rt="[\\s|\\(]+("+ge+")[,|\\s]+("+ge+")[,|\\s]+("+ge+")\\s*\\)?",dt="[\\s|\\(]+("+ge+")[,|\\s]+("+ge+")[,|\\s]+("+ge+")[,|\\s]+("+ge+")\\s*\\)?";return{CSS_UNIT:new RegExp(ge),rgb:new RegExp("rgb"+rt),rgba:new RegExp("rgba"+dt),hsl:new RegExp("hsl"+rt),hsla:new RegExp("hsla"+dt),hsv:new RegExp("hsv"+rt),hsva:new RegExp("hsva"+dt),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 mt(de){return!!it.CSS_UNIT.exec(de)}function bt(de){de=de.replace(t,"").replace(r,"").toLowerCase();var De=!1;if(Se[de])de=Se[de],De=!0;else if(de=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ge;return(ge=it.rgb.exec(de))?{r:ge[1],g:ge[2],b:ge[3]}:(ge=it.rgba.exec(de))?{r:ge[1],g:ge[2],b:ge[3],a:ge[4]}:(ge=it.hsl.exec(de))?{h:ge[1],s:ge[2],l:ge[3]}:(ge=it.hsla.exec(de))?{h:ge[1],s:ge[2],l:ge[3],a:ge[4]}:(ge=it.hsv.exec(de))?{h:ge[1],s:ge[2],v:ge[3]}:(ge=it.hsva.exec(de))?{h:ge[1],s:ge[2],v:ge[3],a:ge[4]}:(ge=it.hex8.exec(de))?{r:Le(ge[1]),g:Le(ge[2]),b:Le(ge[3]),a:St(ge[4]),format:De?"name":"hex8"}:(ge=it.hex6.exec(de))?{r:Le(ge[1]),g:Le(ge[2]),b:Le(ge[3]),format:De?"name":"hex"}:(ge=it.hex4.exec(de))?{r:Le(ge[1]+""+ge[1]),g:Le(ge[2]+""+ge[2]),b:Le(ge[3]+""+ge[3]),a:St(ge[4]+""+ge[4]),format:De?"name":"hex8"}:(ge=it.hex3.exec(de))?{r:Le(ge[1]+""+ge[1]),g:Le(ge[2]+""+ge[2]),b:Le(ge[3]+""+ge[3]),format:De?"name":"hex"}:!1}function vt(de){var De,ge;return de=de||{level:"AA",size:"small"},De=(de.level||"AA").toUpperCase(),ge=(de.size||"small").toLowerCase(),De!=="AA"&&De!=="AAA"&&(De="AA"),ge!=="small"&&ge!=="large"&&(ge="small"),{level:De,size:ge}}typeof a_!="undefined"&&a_.exports?a_.exports=h:window.tinycolor=h})(Math)});var mn=pe(Ey=>{"use strict";var j7=cc(),ky=Array.isArray;function Mj(e,t){var r,i;for(r=0;r{"use strict";J7.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 Ly=pe((Kme,K7)=>{"use strict";K7.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var c0=pe((Qme,e8)=>{"use strict";var Q7=Ly(),$7=qo(),W3=$7({editType:"none"});W3.family.dflt=Q7.HOVERFONT;W3.size.dflt=Q7.HOVERFONTSIZE;e8.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:W3,grouptitlefont:$7({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var i_=pe(($me,t8)=>{"use strict";var Sj=qo(),Dy=c0().hoverlabel,Py=mn().extendFlat;t8.exports={hoverlabel:{bgcolor:Py({},Dy.bgcolor,{arrayOk:!0}),bordercolor:Py({},Dy.bordercolor,{arrayOk:!0}),font:Sj({arrayOk:!0,editType:"none"}),align:Py({},Dy.align,{arrayOk:!0}),namelength:Py({},Dy.namelength,{arrayOk:!0}),showarrow:Py({},Dy.showarrow),editType:"none"}}});var ys=pe((eye,r8)=>{"use strict";var kj=qo(),Cj=i_();r8.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:kj({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:Cj.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 td=pe((tye,n8)=>{"use strict";var Ej=wf(),n_={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)"]]},a8=n_.RdBu;function Lj(e,t){if(t||(t=a8),!e)return t;function r(){try{e=n_[e]||JSON.parse(e)}catch(i){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),i8(e)?e:t}function i8(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";rd.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];rd.defaultLine="#444";rd.lightLine="#eee";rd.background="#fff";rd.borderLine="#BEC8D9";rd.lightFraction=100*10/11});var Oa=pe((aye,o8)=>{"use strict";var Rs=wf(),Pj=Da(),zj=al().isTypedArray,$n=o8.exports={},o_=Tf();$n.defaults=o_.defaults;var Ij=$n.defaultLine=o_.defaultLine;$n.lightLine=o_.lightLine;var j3=$n.background=o_.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||j3).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,j3)));var a=i.isDark()?t?i.lighten(t):j3:r?i.darken(r):Ij;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 s_=pe((iye,s8)=>{"use strict";s8.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var h0=pe(l8=>{"use strict";l8.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 h8=pe(Fs=>{"use strict";var J3=Da(),u8=wf(),f8=mn().extendFlat,Rj=ys(),Fj=td(),qj=Oa(),Nj=s_().DESELECTDIM,v0=My(),c8=h0().counter,Bj=f0().modHalf,Af=al().isArrayOrTypedArray,bh=al().isTypedArraySpec,wh=al().decodeTypedArraySpec;Fs.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(Af(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||!J3(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)),u8(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function i(a){return u8(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(Fj.get(e,r))}},angle:{coerceFunction:function(e,t,r){bh(e)&&(e=wh(e)),e==="auto"?t.set("auto"):J3(e)?t.set(Bj(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,i){var a=i.regex||c8(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:!!c8(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 v8={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/un/"},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:{}}},d8={};function p8(e,t){for(var r in e){var i=e[r];i.valType?t[r]=i.dflt:(t[r]||(t[r]={}),p8(i,t[r]))}}p8(v8,d8);m8.exports={configAttributes:v8,dfltConfig:d8}});var Q3=pe((lye,y8)=>{"use strict";var K3=ja(),Oj=Da(),zy=[];y8.exports=function(e,t){if(zy.indexOf(e)!==-1)return;zy.push(e);var r=1e3;Oj(t)?r=t:t==="long"&&(r=3e3);var i=K3.select("body").selectAll(".plotly-notifier").data([0]);i.enter().append("div").classed("plotly-notifier",!0);var a=i.selectAll(".notifier-note").data(zy);function s(l){l.duration(700).style("opacity",0).each("end",function(f){var h=zy.indexOf(f);h!==-1&&zy.splice(h,1),K3.select(this).remove()})}a.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(l){var f=K3.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 d0=ad().dfltConfig,$3=Q3(),ew=g8.exports={};ew.log=function(){var e;if(d0.logging>1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}};ew.warn=function(){var e;if(d0.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}};ew.error=function(){var e;if(d0.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}});var u_=pe((fye,_8)=>{"use strict";_8.exports=function(){}});var tw=pe((cye,x8)=>{"use strict";x8.exports=function(t,r){if(r instanceof RegExp){for(var i=r.toString(),a=0;a{b8.exports=Uj;function Uj(){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 A8=pe((vye,T8)=>{T8.exports=Vj;function Vj(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 S8=pe((dye,M8)=>{M8.exports=Hj;function Hj(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 rw=pe((pye,k8)=>{k8.exports=Gj;function Gj(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 E8=pe((mye,C8)=>{C8.exports=Zj;function Zj(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 D8=pe((yye,L8)=>{L8.exports=Yj;function Yj(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],_=t[9],T=t[10],S=t[11],C=t[12],E=t[13],D=t[14],z=t[15],B=r*f-i*l,q=r*h-a*l,I=r*v-s*l,O=i*h-a*f,H=i*v-s*f,V=a*v-s*h,W=m*E-_*C,J=m*D-T*C,te=m*z-S*C,ne=_*D-T*E,oe=_*z-S*E,fe=T*z-S*D,ve=B*fe-q*oe+I*ne+O*te-H*J+V*W;return ve?(ve=1/ve,e[0]=(f*fe-h*oe+v*ne)*ve,e[1]=(a*oe-i*fe-s*ne)*ve,e[2]=(E*V-D*H+z*O)*ve,e[3]=(T*H-_*V-S*O)*ve,e[4]=(h*te-l*fe-v*J)*ve,e[5]=(r*fe-a*te+s*J)*ve,e[6]=(D*I-C*V-z*q)*ve,e[7]=(m*V-T*I+S*q)*ve,e[8]=(l*oe-f*te+v*W)*ve,e[9]=(i*te-r*oe-s*W)*ve,e[10]=(C*H-E*I+z*B)*ve,e[11]=(_*I-m*H-S*B)*ve,e[12]=(f*J-l*ne-h*W)*ve,e[13]=(r*ne-i*J+a*W)*ve,e[14]=(E*q-C*O-D*B)*ve,e[15]=(m*O-_*q+T*B)*ve,e):null}});var z8=pe((gye,P8)=>{P8.exports=Wj;function Wj(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],_=t[9],T=t[10],S=t[11],C=t[12],E=t[13],D=t[14],z=t[15];return e[0]=f*(T*z-S*D)-_*(h*z-v*D)+E*(h*S-v*T),e[1]=-(i*(T*z-S*D)-_*(a*z-s*D)+E*(a*S-s*T)),e[2]=i*(h*z-v*D)-f*(a*z-s*D)+E*(a*v-s*h),e[3]=-(i*(h*S-v*T)-f*(a*S-s*T)+_*(a*v-s*h)),e[4]=-(l*(T*z-S*D)-m*(h*z-v*D)+C*(h*S-v*T)),e[5]=r*(T*z-S*D)-m*(a*z-s*D)+C*(a*S-s*T),e[6]=-(r*(h*z-v*D)-l*(a*z-s*D)+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*(_*z-S*E)-m*(f*z-v*E)+C*(f*S-v*_),e[9]=-(r*(_*z-S*E)-m*(i*z-s*E)+C*(i*S-s*_)),e[10]=r*(f*z-v*E)-l*(i*z-s*E)+C*(i*v-s*f),e[11]=-(r*(f*S-v*_)-l*(i*S-s*_)+m*(i*v-s*f)),e[12]=-(l*(_*D-T*E)-m*(f*D-h*E)+C*(f*T-h*_)),e[13]=r*(_*D-T*E)-m*(i*D-a*E)+C*(i*T-a*_),e[14]=-(r*(f*D-h*E)-l*(i*D-a*E)+C*(i*h-a*f)),e[15]=r*(f*T-h*_)-l*(i*T-a*_)+m*(i*h-a*f),e}});var R8=pe((_ye,I8)=>{I8.exports=Xj;function Xj(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],_=e[10],T=e[11],S=e[12],C=e[13],E=e[14],D=e[15],z=t*l-r*s,B=t*f-i*s,q=t*h-a*s,I=r*f-i*l,O=r*h-a*l,H=i*h-a*f,V=v*C-m*S,W=v*E-_*S,J=v*D-T*S,te=m*E-_*C,ne=m*D-T*C,oe=_*D-T*E;return z*oe-B*ne+q*te+I*J-O*W+H*V}});var q8=pe((xye,F8)=>{F8.exports=jj;function jj(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],_=t[8],T=t[9],S=t[10],C=t[11],E=t[12],D=t[13],z=t[14],B=t[15],q=r[0],I=r[1],O=r[2],H=r[3];return e[0]=q*i+I*f+O*_+H*E,e[1]=q*a+I*h+O*T+H*D,e[2]=q*s+I*v+O*S+H*z,e[3]=q*l+I*m+O*C+H*B,q=r[4],I=r[5],O=r[6],H=r[7],e[4]=q*i+I*f+O*_+H*E,e[5]=q*a+I*h+O*T+H*D,e[6]=q*s+I*v+O*S+H*z,e[7]=q*l+I*m+O*C+H*B,q=r[8],I=r[9],O=r[10],H=r[11],e[8]=q*i+I*f+O*_+H*E,e[9]=q*a+I*h+O*T+H*D,e[10]=q*s+I*v+O*S+H*z,e[11]=q*l+I*m+O*C+H*B,q=r[12],I=r[13],O=r[14],H=r[15],e[12]=q*i+I*f+O*_+H*E,e[13]=q*a+I*h+O*T+H*D,e[14]=q*s+I*v+O*S+H*z,e[15]=q*l+I*m+O*C+H*B,e}});var B8=pe((bye,N8)=>{N8.exports=Jj;function Jj(e,t,r){var i=r[0],a=r[1],s=r[2],l,f,h,v,m,_,T,S,C,E,D,z;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],_=t[5],T=t[6],S=t[7],C=t[8],E=t[9],D=t[10],z=t[11],e[0]=l,e[1]=f,e[2]=h,e[3]=v,e[4]=m,e[5]=_,e[6]=T,e[7]=S,e[8]=C,e[9]=E,e[10]=D,e[11]=z,e[12]=l*i+m*a+C*s+t[12],e[13]=f*i+_*a+E*s+t[13],e[14]=h*i+T*a+D*s+t[14],e[15]=v*i+S*a+z*s+t[15]),e}});var U8=pe((wye,O8)=>{O8.exports=Kj;function Kj(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 H8=pe((Tye,V8)=>{V8.exports=Qj;function Qj(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,_,T,S,C,E,D,z,B,q,I,O,H,V,W,J,te,ne,oe,fe,ve,Se;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,_=t[0],T=t[1],S=t[2],C=t[3],E=t[4],D=t[5],z=t[6],B=t[7],q=t[8],I=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,te=a*s*m-l*h,ne=s*s*m+v,oe=l*s*m+a*h,fe=a*l*m+s*h,ve=s*l*m-a*h,Se=l*l*m+v,e[0]=_*V+E*W+q*J,e[1]=T*V+D*W+I*J,e[2]=S*V+z*W+O*J,e[3]=C*V+B*W+H*J,e[4]=_*te+E*ne+q*oe,e[5]=T*te+D*ne+I*oe,e[6]=S*te+z*ne+O*oe,e[7]=C*te+B*ne+H*oe,e[8]=_*fe+E*ve+q*Se,e[9]=T*fe+D*ve+I*Se,e[10]=S*fe+z*ve+O*Se,e[11]=C*fe+B*ve+H*Se,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var Z8=pe((Aye,G8)=>{G8.exports=$j;function $j(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],_=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+_*i,e[7]=h*a+T*i,e[8]=v*a-s*i,e[9]=m*a-l*i,e[10]=_*a-f*i,e[11]=T*a-h*i,e}});var W8=pe((Mye,Y8)=>{Y8.exports=eJ;function eJ(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],_=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-_*i,e[3]=h*a-T*i,e[8]=s*i+v*a,e[9]=l*i+m*a,e[10]=f*i+_*a,e[11]=h*i+T*a,e}});var j8=pe((Sye,X8)=>{X8.exports=tJ;function tJ(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],_=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+_*i,e[3]=h*a+T*i,e[4]=v*a-s*i,e[5]=m*a-l*i,e[6]=_*a-f*i,e[7]=T*a-h*i,e}});var K8=pe((kye,J8)=>{J8.exports=rJ;function rJ(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 $8=pe((Cye,Q8)=>{Q8.exports=aJ;function aJ(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,_=i*h,T=i*v,S=a*h,C=a*v,E=s*v,D=l*f,z=l*h,B=l*v;return e[0]=1-(S+E),e[1]=_+B,e[2]=T-z,e[3]=0,e[4]=_-B,e[5]=1-(m+E),e[6]=C+D,e[7]=0,e[8]=T+z,e[9]=C-D,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 tS=pe((Eye,eS)=>{eS.exports=iJ;function iJ(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 aS=pe((Lye,rS)=>{rS.exports=nJ;function nJ(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 nS=pe((Dye,iS)=>{iS.exports=oJ;function oJ(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 sS=pe((Pye,oS)=>{oS.exports=sJ;function sJ(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 uS=pe((zye,lS)=>{lS.exports=lJ;function lJ(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 cS=pe((Iye,fS)=>{fS.exports=uJ;function uJ(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,_=i*f,T=a*l,S=a*f,C=a*h,E=s*l,D=s*f,z=s*h;return e[0]=1-_-C,e[1]=m+z,e[2]=T-D,e[3]=0,e[4]=m-z,e[5]=1-v-C,e[6]=S+E,e[7]=0,e[8]=T+D,e[9]=S-E,e[10]=1-v-_,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var vS=pe((Rye,hS)=>{hS.exports=fJ;function fJ(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 pS=pe((Fye,dS)=>{dS.exports=cJ;function cJ(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 yS=pe((qye,mS)=>{mS.exports=hJ;function hJ(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 _S=pe((Nye,gS)=>{gS.exports=vJ;function vJ(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 bS=pe((Bye,xS)=>{var dJ=rw();xS.exports=pJ;function pJ(e,t,r,i){var a,s,l,f,h,v,m,_,T,S,C=t[0],E=t[1],D=t[2],z=i[0],B=i[1],q=i[2],I=r[0],O=r[1],H=r[2];return Math.abs(C-I)<1e-6&&Math.abs(E-O)<1e-6&&Math.abs(D-H)<1e-6?dJ(e):(m=C-I,_=E-O,T=D-H,S=1/Math.sqrt(m*m+_*_+T*T),m*=S,_*=S,T*=S,a=B*T-q*_,s=q*m-z*T,l=z*_-B*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=_*l-T*s,h=T*a-m*l,v=m*s-_*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]=_,e[7]=0,e[8]=l,e[9]=v,e[10]=T,e[11]=0,e[12]=-(a*C+s*E+l*D),e[13]=-(f*C+h*E+v*D),e[14]=-(m*C+_*E+T*D),e[15]=1,e)}});var TS=pe((Oye,wS)=>{wS.exports=mJ;function mJ(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 aw=pe((Uye,AS)=>{AS.exports={create:w8(),clone:A8(),copy:S8(),identity:rw(),transpose:E8(),invert:D8(),adjoint:z8(),determinant:R8(),multiply:q8(),translate:B8(),scale:U8(),rotate:H8(),rotateX:Z8(),rotateY:W8(),rotateZ:j8(),fromRotation:K8(),fromRotationTranslation:$8(),fromScaling:tS(),fromTranslation:aS(),fromXRotation:nS(),fromYRotation:sS(),fromZRotation:uS(),fromQuat:cS(),frustum:vS(),perspective:pS(),perspectiveFromFieldOfView:yS(),ortho:_S(),lookAt:bS(),str:TS()}});var f_=pe(Cn=>{"use strict";var yJ=aw();Cn.init2dArray=function(e,t){for(var r=new Array(e),i=0;i{"use strict";var gJ=ja(),MS=Th(),_J=f_(),xJ=aw();function bJ(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 wJ(e){var t=gJ.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function SS(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function TJ(e,t){kS("global",e,t)}function kS(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):MS.warn("addStyleRule failed"):MS.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function AJ(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&SS(r)}function MJ(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 SJ(e){var t=ES(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=CS(i);if(a){var s=_J.convertCssMatrix(a);r=xJ.multiply(r,r,s)}}),r}function CS(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 ES(e){for(var t=[];kJ(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function kJ(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function CJ(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}LS.exports={getGraphDiv:bJ,isPlotDiv:wJ,removeElement:SS,addStyleRule:TJ,addRelatedStyleRule:kS,deleteRelatedStyleRule:AJ,setStyleOnHover:MJ,getFullTransformMatrix:SJ,getElementTransformMatrix:CS,getElementAndAncestors:ES,equalDomRects:CJ}});var Ry=pe((Gye,DS)=>{"use strict";DS.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 il=pe((Zye,NS)=>{"use strict";var zS=mn().extendFlat,EJ=cc(),IS={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},RS={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},LJ=IS.flags.slice().concat(["fullReplot"]),DJ=RS.flags.slice().concat("layoutReplot");NS.exports={traces:IS,layout:RS,traceFlags:function(){return PS(LJ)},layoutFlags:function(){return PS(DJ)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var i=r.split("+"),a=0;a{"use strict";iw.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};iw.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 nw=pe((Wye,BS)=>{"use strict";BS.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 Mf=pe(p0=>{"use strict";var{DATE_FORMAT_LINK:PJ,FORMAT_LINK:zJ}=nw(),IJ=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function RJ({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,zJ,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,PJ,"for details on the date formatting syntax.",IJ].join(" ")}p0.templateFormatStringDescription=RJ;p0.hovertemplateAttrs=({editType:e="none",arrayOk:t}={},r={})=>$v({valType:"string",dflt:"",editType:e},t!==!1?{arrayOk:!0}:{});p0.texttemplateAttrs=({editType:e="calc",arrayOk:t}={},r={})=>$v({valType:"string",dflt:"",editType:e},t!==!1?{arrayOk:!0}:{});p0.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:t}={},r={})=>({valType:"string",dflt:"",editType:e});p0.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var v_=pe((Jye,ZS)=>{"use strict";function Ah(e,t){return t?t.d2l(e):e}function OS(e,t){return t?t.l2d(e):e}function FJ(e){return e.x0}function qJ(e){return e.x1}function NJ(e){return e.y0}function BJ(e){return e.y1}function US(e){return e.x0shift||0}function VS(e){return e.x1shift||0}function HS(e){return e.y0shift||0}function GS(e){return e.y1shift||0}function c_(e,t){return Ah(e.x1,t)+VS(e)-Ah(e.x0,t)-US(e)}function h_(e,t,r){return Ah(e.y1,r)+GS(e)-Ah(e.y0,r)-HS(e)}function OJ(e,t){return Math.abs(c_(e,t))}function UJ(e,t,r){return Math.abs(h_(e,t,r))}function VJ(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(c_(e,t),2)+Math.pow(h_(e,t,r),2))}function HJ(e,t){return OS((Ah(e.x1,t)+VS(e)+Ah(e.x0,t)+US(e))/2,t)}function GJ(e,t,r){return OS((Ah(e.y1,r)+GS(e)+Ah(e.y0,r)+HS(e))/2,r)}function ZJ(e,t,r){return e.type!=="line"?void 0:h_(e,t,r)/c_(e,t)}ZS.exports={x0:FJ,x1:qJ,y0:NJ,y1:BJ,slope:ZJ,dx:c_,dy:h_,width:OJ,height:UJ,length:VJ,xcenter:HJ,ycenter:GJ}});var XS=pe((Kye,WS)=>{"use strict";var YJ=il().overrideAll,id=ys(),YS=qo(),WJ=hc().dash,Mh=mn().extendFlat,{shapeTexttemplateAttrs:XJ,templatefallbackAttrs:jJ}=Mf(),JJ=v_();WS.exports=YJ({newshape:{visible:Mh({},id.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:Mh({},id.legend,{}),legendgroup:Mh({},id.legendgroup,{}),legendgrouptitle:{text:Mh({},id.legendgrouptitle.text,{}),font:YS({})},legendrank:Mh({},id.legendrank,{}),legendwidth:Mh({},id.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Mh({},WJ,{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({},id.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:XJ({newshape:!0},{keys:Object.keys(JJ)}),texttemplatefallback:jJ({editType:"arraydraw"}),font:YS({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var JS=pe((Qye,jS)=>{"use strict";var KJ=hc().dash,QJ=mn().extendFlat;jS.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:QJ({},KJ,{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_=pe(($ye,KS)=>{"use strict";KS.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 m0=pe((ege,t9)=>{"use strict";var ow=qo(),$J=Ry(),p_=Tf(),QS=XS(),$S=JS(),eK=d_(),e9=mn().extendFlat,m_=ow({editType:"calc"});m_.family.dflt='"Open Sans", verdana, arial, sans-serif';m_.size.dflt=12;m_.color.dflt=p_.defaultLine;t9.exports={font:m_,title:{text:{valType:"string",editType:"layoutstyle"},font:ow({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:ow({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:e9(eK({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:p_.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:p_.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:p_.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:QS.newshape,activeshape:QS.activeshape,newselection:$S.newselection,activeselection:$S.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:e9({},$J.transition,{editType:"none"})}});var r9=pe(()=>{(function(){if(!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")){var e=document.createElement("style");e.id="ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var sa=pe(Pa=>{"use strict";var y0=Th(),a9=u_(),i9=tw(),tK=cc(),rK=Iy().addStyleRule,n9=mn(),aK=ys(),iK=m0(),nK=n9.extendFlat,sw=n9.extendDeepAll;Pa.modules={};Pa.allCategories={};Pa.allTypes=[];Pa.subplotsRegistry={};Pa.componentsRegistry={};Pa.layoutArrayContainers=[];Pa.layoutArrayRegexes=[];Pa.traceLayoutAttributes={};Pa.localeRegistry={};Pa.apiMethodRegistry={};Pa.collectableSubplotTypes=null;Pa.register=function(t){if(Pa.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 cK=l0().timeFormat,m9=Da(),lw=Th(),kh=f0().mod,x0=Zi(),Hl=x0.BADNUM,qs=x0.ONEDAY,Fy=x0.ONEHOUR,Sh=x0.ONEMIN,_0=x0.ONESEC,qy=x0.EPOCHJD,vc=sa(),f9=l0().utcFormat,hK=/^\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,vK=/^\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,c9=new Date().getFullYear()-70;function dc(e){return e&&vc.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}En.dateTick0=function(e,t){var r=dK(e,!!t);if(t<2)return r;var i=En.dateTime2ms(r,e);return i+=qs*(t-1),En.ms2DateTime(i,0,e)};function dK(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"}En.dfltRange=function(e){return dc(e)?vc.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};En.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var g_,__;En.dateTime2ms=function(e,t){if(En.isJSDate(e)){var r=e.getTimezoneOffset()*Sh,i=(e.getUTCMinutes()-e.getMinutes())*Sh+(e.getUTCSeconds()-e.getSeconds())*_0+(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>=g_&&e<=__?e:Hl}if(typeof e!="string"&&typeof e!="number")return Hl;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?vK:hK);if(!h)return Hl;var v=h[1],m=h[3]||"1",_=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 Hl;v=Number(v);var E;try{var D=vc.getComponentMethod("calendars","getCal")(t);if(f){var z=m.charAt(m.length-1)==="i";m=parseInt(m,10),E=D.newDate(v,D.toMonthIndex(v,m,z),_)}else E=D.newDate(v,Number(m),_)}catch(q){return Hl}return E?(E.toJD()-qy)*qs+T*Fy+S*Sh+C*_0:Hl}v.length===2?v=(Number(v)+2e3-c9)%100+c9:v=Number(v),m-=1;var B=new Date(Date.UTC(2e3,m,_,T,S));return B.setUTCFullYear(v),B.getUTCMonth()!==m||B.getUTCDate()!==_?Hl:B.getTime()+C*_0};g_=En.MIN_MS=En.dateTime2ms("-9999");__=En.MAX_MS=En.dateTime2ms("9999-12-31 23:59:59.9999");En.isDateTime=function(e,t){return En.dateTime2ms(e,t)!==Hl};function g0(e,t){return String(e+Math.pow(10,t)).substr(1)}var y_=90*qs,h9=3*Fy,v9=5*Sh;En.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=g_&&e<=__))return Hl;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 _=Math.floor(a/qs)+qy,T=Math.floor(kh(e,qs));try{s=vc.getComponentMethod("calendars","getCal")(r).fromJD(_).formatDate("yyyy-mm-dd")}catch(S){s=f9("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=g_+qs&&e<=__-qs))return Hl;var t=Math.floor(kh(e+.05,1)*10),r=new Date(Math.round(e-t/10)),i=cK("%Y-%m-%d")(r),a=r.getHours(),s=r.getMinutes(),l=r.getSeconds(),f=r.getUTCMilliseconds()*10+t;return y9(i,a,s,l,f)};function y9(e,t,r,i,a){if((t||r||i||a)&&(e+=" "+g0(t,2)+":"+g0(r,2),(i||a)&&(e+=":"+g0(i,2),a))){for(var s=4;a%10===0;)s-=1,a/=10;e+="."+g0(a,s)}return e}En.cleanDate=function(e,t,r){if(e===Hl)return t;if(En.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(dc(r))return lw.error("JS Dates and milliseconds are incompatible with world calendars",e),t;if(e=En.ms2DateTimeLocal(+e),!e&&t!==void 0)return t}else if(!En.isDateTime(e,r))return lw.error("unrecognized date",e),t;return e};var pK=/%\d?f/g,mK=/%h/g,yK={1:"1",2:"1",3:"2",4:"2"};function d9(e,t,r,i){e=e.replace(pK,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(mK,function(){return yK[r("%q")(a)]}),dc(i))try{e=vc.getComponentMethod("calendars","worldCalFmt")(e,t,i)}catch(s){return"Invalid"}return r(e)(a)}var gK=[59,59.9,59.99,59.999,59.9999];function _K(e,t){var r=kh(e+.05,qs),i=g0(Math.floor(r/Fy),2)+":"+g0(kh(Math.floor(r/Sh),60),2);if(t!=="M"){m9(t)||(t=0);var a=Math.min(kh(e/_0,60),gK[t]),s=(100+a).toFixed(t).substr(1);t>0&&(s=s.replace(/0+$/,"").replace(/[\.]$/,"")),i+=":"+s}return i}En.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+` +`)};function X(me){return me.map(ae).join(y)}function ae(me){return P.test(me)?'"'+me.replace(/\"/g,'""')+'"':me}return U},e.csv=e.dsv(",","text/csv"),e.tsv=e.dsv(" ","text/tab-separated-values");var Kn,hu,Ui,dl,$d=this[Ae(this,"requestAnimationFrame")]||function(y){setTimeout(y,17)};e.timer=function(){qc.apply(this,arguments)};function qc(y,M,P){var N=arguments.length;N<2&&(M=0),N<3&&(P=Date.now());var U=P+M,Z={c:y,t:U,n:null};return hu?hu.n=Z:Kn=Z,hu=Z,Ui||(dl=clearTimeout(dl),Ui=1,$d(Nc)),Z}function Nc(){var y=hv(),M=vv()-y;M>24?(isFinite(M)&&(clearTimeout(dl),dl=setTimeout(Nc,M)),Ui=0):(Ui=1,$d(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,P=1/0;M;)M.c?(M.t=0;--X)Ie.push(U[me[ze[X]][2]]);for(X=+Qe;X1&&ii(y[P[N-2]],y[P[N-1]],y[U])<=0;)--N;P[N++]=U}return P.slice(0,N)}function Ku(y,M){return y[0]-M[0]||y[1]-M[1]}e.geom.polygon=function(y){return Ye(y,Zf),y};var Zf=e.geom.polygon.prototype=[];Zf.area=function(){for(var y=-1,M=this.length,P,N=this[M-1],U=0;++yUe)X=X.L;else if($=M-on(X,P),$>Ue){if(!X.R){N=X;break}X=X.R}else{Z>-Ue?(N=X.P,U=X):$>-Ue?(N=X,U=X.N):N=U=X;break}var ae=oo(y);if(du.insert(N,ae),!(!N&&!U)){if(N===U){ba(N),U=oo(N.site),du.insert(ae,U),ae.edge=U.edge=Ws(N.site,ae.site),Er(N),Er(U);return}if(!U){ae.edge=Ws(N.site,ae.site);return}ba(N),ba(U);var me=N.site,_e=me.x,ze=me.y,Pe=y.x-_e,Qe=y.y-ze,ot=U.site,Ie=ot.x-_e,Ve=ot.y-ze,Ke=2*(Pe*Ve-Qe*Ie),ft=Pe*Pe+Qe*Qe,nt=Ie*Ie+Ve*Ve,Xe={x:(Ve*ft-Qe*nt)/Ke+_e,y:(Pe*nt-Ie*ft)/Ke+ze};fs(U.edge,me,ot,Xe),ae.edge=Ws(me,y,null,Xe),U.edge=Ws(y,ot,null,Xe),Er(N),Er(U)}}function pu(y,M){var P=y.site,N=P.x,U=P.y,Z=U-M;if(!Z)return N;var $=y.P;if(!$)return-1/0;P=$.site;var X=P.x,ae=P.y,me=ae-M;if(!me)return X;var _e=X-N,ze=1/Z-1/me,Pe=_e/me;return ze?(-Pe+Math.sqrt(Pe*Pe-2*ze*(_e*_e/(-2*me)-ae+me/2+U-Z/2)))/ze+N:(N+X)/2}function on(y,M){var P=y.N;if(P)return pu(P,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,P;M--;)P=y[M].edge,(!P.b||!P.a)&&y.splice(M,1);return y.sort($u),y.length};function bs(y){for(var M=y[0][0],P=y[1][0],N=y[0][1],U=y[1][1],Z,$,X,ae,me=Go,_e=me.length,ze,Pe,Qe,ot,Ie,Ve;_e--;)if(ze=me[_e],!(!ze||!ze.prepare()))for(Qe=ze.edges,ot=Qe.length,Pe=0;PeUe||z(ae-$)>Ue)&&(Qe.splice(Pe,0,new _l(mu(ze.site,Ve,z(X-M)Ue?{x:M,y:z(Z-M)Ue?{x:z($-U)Ue?{x:P,y:z(Z-P)Ue?{x:z($-N)=-xt)){var Pe=ae*ae+me*me,Qe=_e*_e+Ve*Ve,ot=(Ve*Pe-me*Qe)/ze,Ie=(ae*Qe-_e*Pe)/ze,Ve=Ie+X,Ke=pv.pop()||new ef;Ke.arc=y,Ke.site=U,Ke.x=ot+$,Ke.y=Ve+Math.sqrt(ot*ot+Ie*Ie),Ke.cy=Ve,y.circle=Ke;for(var ft=null,nt=Qu._;nt;)if(Ke.y0)){if(Ie/=Qe,Qe<0){if(Ie0){if(Ie>Pe)return;Ie>ze&&(ze=Ie)}if(Ie=P-X,!(!Qe&&Ie<0)){if(Ie/=Qe,Qe<0){if(Ie>Pe)return;Ie>ze&&(ze=Ie)}else if(Qe>0){if(Ie0)){if(Ie/=ot,ot<0){if(Ie0){if(Ie>Pe)return;Ie>ze&&(ze=Ie)}if(Ie=N-ae,!(!ot&&Ie<0)){if(Ie/=ot,ot<0){if(Ie>Pe)return;Ie>ze&&(ze=Ie)}else if(ot>0){if(Ie0&&(U.a={x:X+ze*Qe,y:ae+ze*ot}),Pe<1&&(U.b={x:X+Pe*Qe,y:ae+Pe*ot}),U}}}}}}function ws(y){for(var M=ml,P=wa(y[0][0],y[0][1],y[1][0],y[1][1]),N=M.length,U;N--;)U=M[N],(!gl(U,y)||!P(U)||z(U.a.x-U.b.x)=Z)return;if(_e>Pe){if(!N)N={x:ot,y:$};else if(N.y>=X)return;P={x:ot,y:X}}else{if(!N)N={x:ot,y:X};else if(N.y<$)return;P={x:ot,y:$}}}else if(Ve=(_e-Pe)/(Qe-ze),Ke=Ie-Ve*ot,Ve<-1||Ve>1)if(_e>Pe){if(!N)N={x:($-Ke)/Ve,y:$};else if(N.y>=X)return;P={x:(X-Ke)/Ve,y:X}}else{if(!N)N={x:(X-Ke)/Ve,y:X};else if(N.y<$)return;P={x:($-Ke)/Ve,y:$}}else if(ze=Z)return;P={x:Z,y:Ve*Z+Ke}}else{if(!N)N={x:Z,y:Ve*Z+Ke};else if(N.x=_e&&Ke.x<=Pe&&Ke.y>=ze&&Ke.y<=Qe?[[_e,Qe],[Pe,Qe],[Pe,ze],[_e,ze]]:[];ft.point=ae[Ie]}),me}function X(ae){return ae.map(function(me,_e){return{x:Math.round(N(me,_e)/Ue)*Ue,y:Math.round(U(me,_e)/Ue)*Ue,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,ze){for(var Pe=_e.site,Qe=_e.edges.sort($u),ot=-1,Ie=Qe.length,Ve,Ke,ft=Qe[Ie-1].edge,nt=ft.l===Pe?ft.r:ft.l;++otnt&&(nt=_e.x),_e.y>Xe&&(Xe=_e.y),Qe.push(_e.x),ot.push(_e.y);else for(Ie=0;Ient&&(nt=Gt),or>Xe&&(Xe=or),Qe.push(Gt),ot.push(or)}var hr=nt-Ke,fr=Xe-ft;hr>fr?Xe=ft+hr:nt=Ke+fr;function zr(Vr,Jr,Na,ei,Qa,jt,jr,na){if(!(isNaN(Na)||isNaN(ei)))if(Vr.leaf){var oa=Vr.x,Di=Vr.y;if(oa!=null)if(z(oa-Na)+z(Di-ei)<.01)Rr(Vr,Jr,Na,ei,Qa,jt,jr,na);else{var Vi=Vr.point;Vr.x=Vr.y=Vr.point=null,Rr(Vr,Vi,oa,Di,Qa,jt,jr,na),Rr(Vr,Jr,Na,ei,Qa,jt,jr,na)}else Vr.x=Na,Vr.y=ei,Vr.point=Jr}else Rr(Vr,Jr,Na,ei,Qa,jt,jr,na)}function Rr(Vr,Jr,Na,ei,Qa,jt,jr,na){var oa=(Qa+jr)*.5,Di=(jt+na)*.5,Vi=Na>=oa,en=ei>=Di,bi=en<<1|Vi;Vr.leaf=!1,Vr=Vr.nodes[bi]||(Vr.nodes[bi]=xn()),Vi?Qa=oa:jr=oa,en?jt=Di:na=Di,zr(Vr,Jr,Na,ei,Qa,jt,jr,na)}var ea=xn();if(ea.add=function(Vr){zr(ea,Vr,+ze(Vr,++Ie),+Pe(Vr,Ie),Ke,ft,nt,Xe)},ea.visit=function(Vr){zn(Vr,ea,Ke,ft,nt,Xe)},ea.find=function(Vr){return ap(ea,Vr[0],Vr[1],Ke,ft,nt,Xe)},Ie=-1,M==null){for(;++IeZ||Pe>$||Qe=Gt,fr=P>=or,zr=fr<<1|hr,Rr=zr+4;zrP&&(Z=M.slice(P,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)})),P=Xf.lastIndex;return P=0&&!(N=e.interpolators[P](y,M)););return N}e.interpolators=[function(y,M){var P=typeof M;return(P==="string"?si.has(M.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(M)?tf:Zo:M instanceof ma?tf:Array.isArray(M)?Yo:P==="object"&&isNaN(M)?sn:Eo)(y,M)}],e.interpolateArray=Yo;function Yo(y,M){var P=[],N=[],U=y.length,Z=M.length,$=Math.min(y.length,M.length),X;for(X=0;X<$;++X)P.push(ln(y[X],M[X]));for(;X=0?y.slice(0,M):y,N=M>=0?y.slice(M+1):"in";return P=Em.get(P)||Xs,N=Wo.get(N)||ke,Lm(N(P.apply(null,t.call(arguments,1))))};function Lm(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 In(y){return function(M){return .5*(M<.5?y(2*M):2-y(2-2*M))}}function Dm(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,P=M*y;return 4*(y<.5?P:3*(y-M)+P-.75)}function gv(y){return function(M){return Math.pow(M,y)}}function Pm(y){return 1-Math.cos(y*Mr)}function zm(y){return Math.pow(2,10*(y-1))}function Oc(y){return 1-Math.sqrt(1-y*y)}function Im(y,M){var P;return arguments.length<2&&(M=.45),arguments.length?P=M/mr*Math.asin(1/y):(y=1,P=M/4),function(N){return 1+y*Math.pow(2,-10*N)*Math.sin((N-P)*mr/M)}}function Rm(y){return y||(y=1.70158),function(M){return M*M*((y+1)*M-y)}}function Fm(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 P=y.h,N=y.c,U=y.l,Z=M.h-P,$=M.c-N,X=M.l-U;return isNaN($)&&($=0,N=isNaN(N)?M.c:N),isNaN(Z)?(Z=0,P=isNaN(P)?M.h:P):Z>180?Z-=360:Z<-180&&(Z+=360),function(ae){return Ne(P+Z*ae,N+$*ae,U+X*ae)+""}}e.interpolateHsl=qm;function qm(y,M){y=e.hsl(y),M=e.hsl(M);var P=y.h,N=y.s,U=y.l,Z=M.h-P,$=M.s-N,X=M.l-U;return isNaN($)&&($=0,N=isNaN(N)?M.s:N),isNaN(Z)?(Z=0,P=isNaN(P)?M.h:P):Z>180?Z-=360:Z<-180&&(Z+=360),function(ae){return le(P+Z*ae,N+$*ae,U+X*ae)+""}}e.interpolateLab=Nm;function Nm(y,M){y=e.lab(y),M=e.lab(M);var P=y.l,N=y.a,U=y.b,Z=M.l-P,$=M.a-N,X=M.b-U;return function(ae){return Wt(P+Z*ae,N+$*ae,U+X*ae)+""}}e.interpolateRound=xv;function xv(y,M){return M-=y,function(P){return Math.round(y+M*P)}}e.transform=function(y){var M=i.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(P){if(P!=null){M.setAttribute("transform",P);var N=M.transform.baseVal.consolidate()}return new ip(N?N.matrix:wv)})(y)};function ip(y){var M=[y.a,y.b],P=[y.c,y.d],N=bv(M),U=np(M,P),Z=bv(Bm(P,M,-U))||0;M[0]*P[1]180?M+=360:M-y>180&&(y+=360),N.push({i:P.push(gu(P)+"rotate(",null,")")-2,x:Eo(y,M)})):M&&P.push(gu(P)+"rotate("+M+")")}function sp(y,M,P,N){y!==M?N.push({i:P.push(gu(P)+"skewX(",null,")")-2,x:Eo(y,M)}):M&&P.push(gu(P)+"skewX("+M+")")}function lp(y,M,P,N){if(y[0]!==M[0]||y[1]!==M[1]){var U=P.push(gu(P)+"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)&&P.push(gu(P)+"scale("+M+")")}function up(y,M){var P=[],N=[];return y=e.transform(y),M=e.transform(M),op(y.translate,M.translate,P,N),Om(y.rotate,M.rotate,P,N),sp(y.skew,M.skew,P,N),lp(y.scale,M.scale,P,N),y=M=null,function(U){for(var Z=-1,$=N.length,X;++Z<$;)P[(X=N[Z]).i]=X.x(U);return P.join("")}}function Um(y,M){return M=(M-=y=+y)||1/M,function(P){return(P-y)/M}}function hs(y,M){return M=(M-=y=+y)||1/M,function(P){return Math.max(0,Math.min(1,(P-y)/M))}}e.layout={},e.layout.bundle=function(){return function(y){for(var M=[],P=-1,N=y.length;++P0?Z=Xe:(P.c=null,P.t=NaN,P=null,M.end({type:"end",alpha:Z=0})):Xe>0&&(M.start({type:"start",alpha:Z=Xe}),P=qc(y.tick)),y):Z},y.start=function(){var Xe,Gt=Qe.length,or=ot.length,hr=N[0],fr=N[1],zr,Rr;for(Xe=0;Xe=0;)Z.push(_e=me[ae]),_e.parent=X,_e.depth=X.depth+1;P&&(X.value=0),X.children=me}else P&&(X.value=+P.call(N,X,X.depth)||0),delete X.children;return vs(U,function(ze){var Pe,Qe;y&&(Pe=ze.children)&&Pe.sort(y),P&&(Qe=ze.parent)&&(Qe.value+=ze.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?(P=U,N):P},N.revalue=function(U){return P&&(rf(U,function(Z){Z.children&&(Z.value=0)}),vs(U,function(Z){var $;Z.children||(Z.value=+P.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=hp,y}function rf(y,M){for(var P=[y];(y=P.pop())!=null;)if(M(y),(U=y.children)&&(N=U.length))for(var N,U;--N>=0;)P.push(U[N])}function vs(y,M){for(var P=[y],N=[];(y=P.pop())!=null;)if(N.push(y),($=y.children)&&(Z=$.length))for(var U=-1,Z,$;++UU&&(U=X),N.push(X)}for($=0;$N&&(P=M,N=U);return P}function qi(y){return y.reduce(Ym,0)}function Ym(y,M){return y+M[1]}e.layout.histogram=function(){var y=!0,M=Number,P=pp,N=Zc;function U(Z,Pe){for(var X=[],ae=Z.map(M,this),me=P.call(this,ae,Pe),_e=N.call(this,me,ae,Pe),ze,Pe=-1,Qe=ae.length,ot=_e.length-1,Ie=y?1:1/Qe,Ve;++Pe0)for(Pe=-1;++Pe=me[0]&&Ve<=me[1]&&(ze=X[e.bisect(_e,Ve,1,ot)-1],ze.y+=Ie,ze.push(Z[Pe]));return X}return U.value=function(Z){return arguments.length?(M=Z,U):M},U.range=function(Z){return arguments.length?(P=fa(Z),U):P},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 P=-1,N=+y[0],U=(y[1]-N)/M,Z=[];++P<=M;)Z[P]=U*P+N;return Z}function pp(y){return[e.min(y),e.max(y)]}e.layout.pack=function(){var y=e.layout.hierarchy().sort(nf),M=0,P=[1,1],N;function U(Z,$){var X=y.call(this,Z,$),ae=X[0],me=P[0],_e=P[1],ze=N==null?Math.sqrt:typeof N=="function"?N:function(){return N};if(ae.x=ae.y=0,vs(ae,function(Qe){Qe.r=+ze(Qe.value)}),vs(ae,Jf),M){var Pe=M*(N?1:Math.max(2*ae.r/me,2*ae.r/_e))/2;vs(ae,function(Qe){Qe.r+=Pe}),vs(ae,Jf),vs(ae,function(Qe){Qe.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?(P=Z,U):P},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 P=y._pack_next;y._pack_next=M,M._pack_prev=y,M._pack_next=P,P._pack_prev=M}function Cv(y,M){y._pack_next=M,M._pack_prev=y}function bn(y,M){var P=M.x-y.x,N=M.y-y.y,U=y.r+M.r;return .999*U*U>P*P+N*N}function Jf(y){if(!(M=y.children)||!(Pe=M.length))return;var M,P=1/0,N=-1/0,U=1/0,Z=-1/0,$,X,ae,me,_e,ze,Pe;function Qe(Xe){P=Math.min(Xe.x-Xe.r,P),N=Math.max(Xe.x+Xe.r,N),U=Math.min(Xe.y-Xe.r,U),Z=Math.max(Xe.y+Xe.r,Z)}if(M.forEach(Js),$=M[0],$.x=-$.r,$.y=0,Qe($),Pe>1&&(X=M[1],X.x=X.r,X.y=0,Qe(X),Pe>2))for(ae=M[2],Cl($,X,ae),Qe(ae),_u($,ae),$._pack_prev=ae,_u(ae,X),X=$._pack_next,me=3;meVe.x&&(Ve=Gt),Gt.depth>Ke.depth&&(Ke=Gt)});var ft=M(Ie,Ve)/2-Ie.x,nt=P[0]/(Ve.x+M(Ve,Ie)/2+ft),Xe=P[1]/(Ke.depth||1);rf(Qe,function(Gt){Gt.x=(Gt.x+ft)*nt,Gt.y=Gt.depth*Xe})}return Pe}function Z(_e){for(var ze={A:null,children:[_e]},Pe=[ze],Qe;(Qe=Pe.pop())!=null;)for(var ot=Qe.children,Ie,Ve=0,Ke=ot.length;Ve0&&(El(Wm(Ie,_e,Pe),_e,Gt),Ke+=Gt,ft+=Gt),nt+=Ie.m,Ke+=Qe.m,Xe+=Ve.m,ft+=ot.m;Ie&&!Ss(ot)&&(ot.t=Ie,ot.m+=nt-ft),Qe&&!Ms(Ve)&&(Ve.t=Qe,Ve.m+=Ke-Xe,Pe=_e)}return Pe}function me(_e){_e.x*=P[0],_e.y=_e.depth*P[1]}return U.separation=function(_e){return arguments.length?(M=_e,U):M},U.size=function(_e){return arguments.length?(N=(P=_e)==null?me:null,U):N?null:P},U.nodeSize=function(_e){return arguments.length?(N=(P=_e)==null?null:me,U):N?P:null},Ml(U,y)};function Ks(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,P;return(P=M.length)?M[P-1]:y.t}function El(y,M,P){var N=P/(M.i-y.i);M.c-=N,M.s+=P,y.c+=N,M.z+=P,M.m+=P}function mp(y){for(var M=0,P=0,N=y.children,U=N.length,Z;--U>=0;)Z=N[U],Z.z+=M,Z.m+=M,M+=Z.s+(P+=Z.c)}function Wm(y,M,P){return y.a.parent===M.parent?y.a:P}e.layout.cluster=function(){var y=e.layout.hierarchy().sort(null).value(null),M=Ks,P=[1,1],N=!1;function U(Z,$){var X=y.call(this,Z,$),ae=X[0],me,_e=0;vs(ae,function(Ie){var Ve=Ie.children;Ve&&Ve.length?(Ie.x=jm(Ve),Ie.y=Xm(Ve)):(Ie.x=me?_e+=M(Ie,me):0,Ie.y=0,me=Ie)});var ze=yp(ae),Pe=gp(ae),Qe=ze.x-M(ze,Pe)/2,ot=Pe.x+M(Pe,ze)/2;return vs(ae,N?function(Ie){Ie.x=(Ie.x-ae.x)*P[0],Ie.y=(ae.y-Ie.y)*P[1]}:function(Ie){Ie.x=(Ie.x-Qe)/(ot-Qe)*P[0],Ie.y=(1-(ae.y?Ie.y/ae.y:1))*P[1]}),X}return U.separation=function(Z){return arguments.length?(M=Z,U):M},U.size=function(Z){return arguments.length?(N=(P=Z)==null,U):N?null:P},U.nodeSize=function(Z){return arguments.length?(N=(P=Z)!=null,U):N?P:null},Ml(U,y)};function Xm(y){return 1+e.max(y,function(M){return M.y})}function jm(y){return y.reduce(function(M,P){return M+P.x},0)/y.length}function yp(y){var M=y.children;return M&&M.length?yp(M[0]):y}function gp(y){var M=y.children,P;return M&&(P=M.length)?gp(M[P-1]):y}e.layout.treemap=function(){var y=e.layout.hierarchy(),M=Math.round,P=[1,1],N=null,U=Ev,Z=!1,$,X="squarify",ae=.5*(1+Math.sqrt(5));function me(Ie,Ve){for(var Ke=-1,ft=Ie.length,nt,Xe;++Ke0;)ft.push(Xe=nt[fr-1]),ft.area+=Xe.area,X!=="squarify"||(or=Pe(ft,hr))<=Gt?(nt.pop(),Gt=or):(ft.area-=ft.pop().area,Qe(ft,hr,Ke,!1),hr=Math.min(Ke.dx,Ke.dy),ft.length=ft.area=0,Gt=1/0);ft.length&&(Qe(ft,hr,Ke,!0),ft.length=ft.area=0),Ve.forEach(_e)}}function ze(Ie){var Ve=Ie.children;if(Ve&&Ve.length){var Ke=U(Ie),ft=Ve.slice(),nt,Xe=[];for(me(ft,Ke.dx*Ke.dy/Ie.value),Xe.area=0;nt=ft.pop();)Xe.push(nt),Xe.area+=nt.area,nt.z!=null&&(Qe(Xe,nt.z?Ke.dx:Ke.dy,Ke,!ft.length),Xe.length=Xe.area=0);Ve.forEach(ze)}}function Pe(Ie,Ve){for(var Ke=Ie.area,ft,nt=0,Xe=1/0,Gt=-1,or=Ie.length;++Gtnt&&(nt=ft));return Ke*=Ke,Ve*=Ve,Ke?Math.max(Ve*nt*ae/Ke,Ke/(Ve*Xe*ae)):1/0}function Qe(Ie,Ve,Ke,ft){var nt=-1,Xe=Ie.length,Gt=Ke.x,or=Ke.y,hr=Ve?M(Ie.area/Ve):0,fr;if(Ve==Ke.dx){for((ft||hr>Ke.dy)&&(hr=Ke.dy);++ntKe.dx)&&(hr=Ke.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,P=0;P2?Jm:_p,me=N?hs:Um;return U=ae(y,M,me,P),Z=ae(M,y,me,ln),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?(P=ae,$()):P},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 Tp(y,ae),$()},X.copy=function(){return bp(y,M,P,N)},$()}function wp(y,M){return e.rebind(y,M,"range","rangeRound","interpolate","clamp")}function Tp(y,M){return Dv(y,xp(Pv(y,M)[2])),Dv(y,xp(Pv(y,M)[2])),y}function Pv(y,M){M==null&&(M=10);var P=Kf(y),N=P[1]-P[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),P[0]=Math.ceil(P[0]/U)*U,P[1]=Math.floor(P[1]/U)*U+U*.5,P[2]=U,P}function zv(y,M){return e.range.apply(e,Pv(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 P=Ll(M[2]);return y in xu?Math.abs(P-Ll(Math.max(z(M[0]),z(M[1]))))+ +(y!=="e"):P-(y==="%")*2}e.scale.log=function(){return Iv(e.scale.linear().domain([0,1]),10,!0,[1,10])};function Iv(y,M,P,N){function U(X){return(P?Math.log(X<0?0:X):-Math.log(X>0?0:-X))/Math.log(M)}function Z(X){return P?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?(P=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=Dv(N.map(U),P?Math:Wc);return y.domain(X),N=X.map(Z),$},$.ticks=function(){var X=Kf(N),ae=[],me=X[0],_e=X[1],ze=Math.floor(U(me)),Pe=Math.ceil(U(_e)),Qe=M%1?2:M;if(isFinite(Pe-ze)){if(P){for(;ze0;ot--)ae.push(Z(ze)*ot);for(ze=0;ae[ze]_e;Pe--);ae=ae.slice(ze,Pe)}return ae},$.copy=function(){return Iv(y.copy(),M,P,N)},wp($,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,P){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((P=$.map(Number)).map(N)),Z):P},Z.ticks=function($){return zv(P,$)},Z.tickFormat=function($,X){return d3_scale_linearTickFormat(P,$,X)},Z.nice=function($){return Z.domain(Tp(P,$))},Z.exponent=function($){return arguments.length?(N=jc(M=$),U=jc(1/M),y.domain(P.map(N)),Z):M},Z.copy=function(){return Xc(y.copy(),M,P)},wp(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 Dl([],{t:"range",a:[[]]})};function Dl(y,M){var P,N,U;function Z(X){return N[((P.get(X)||(M.t==="range"?P.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=[],P=new I;for(var ae=-1,me=X.length,_e;++ae0?P[Z-1]:y[0],ZPe?0:1;if(_e=Ar)return ae(_e,ot)+(me?ae(me,1-ot):"")+"Z";var Ie,Ve,Ke,ft,nt=0,Xe=0,Gt,or,hr,fr,zr,Rr,ea,Vr,Jr=[];if((ft=(+$.apply(this,arguments)||0)/2)&&(Ke=N===Pl?Math.sqrt(me*me+_e*_e):+N.apply(this,arguments),ot||(Xe*=-1),_e&&(Xe=vi(Ke/_e*Math.sin(ft))),me&&(nt=vi(Ke/me*Math.sin(ft)))),_e){Gt=_e*Math.cos(ze+Xe),or=_e*Math.sin(ze+Xe),hr=_e*Math.cos(Pe-Xe),fr=_e*Math.sin(Pe-Xe);var Na=Math.abs(Pe-ze-2*Xe)<=wt?0:1;if(Xe&&zl(Gt,or,hr,fr)===ot^Na){var ei=(ze+Pe)/2;Gt=_e*Math.cos(ei),or=_e*Math.sin(ei),hr=fr=null}}else Gt=or=0;if(me){zr=me*Math.cos(Pe-nt),Rr=me*Math.sin(Pe-nt),ea=me*Math.cos(ze+nt),Vr=me*Math.sin(ze+nt);var Qa=Math.abs(ze-Pe+2*nt)<=wt?0:1;if(nt&&zl(zr,Rr,ea,Vr)===1-ot^Qa){var jt=(ze+Pe)/2;zr=me*Math.cos(jt),Rr=me*Math.sin(jt),ea=Vr=null}}else zr=Rr=0;if(Qe>Ue&&(Ie=Math.min(Math.abs(_e-me)/2,+P.apply(this,arguments)))>.001){Ve=me<_e^ot?0:1;var jr=Ie,na=Ie;if(Qe0?0:1}function wu(y,M,P,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,ze=y[1]+me,Pe=M[0]+ae,Qe=M[1]+me,ot=(_e+Pe)/2,Ie=(ze+Qe)/2,Ve=Pe-_e,Ke=Qe-ze,ft=Ve*Ve+Ke*Ke,nt=P-N,Xe=_e*Qe-Pe*ze,Gt=(Ke<0?-1:1)*Math.sqrt(Math.max(0,nt*nt*ft-Xe*Xe)),or=(Xe*Ke-Ve*Gt)/ft,hr=(-Xe*Ve-Ke*Gt)/ft,fr=(Xe*Ke+Ve*Gt)/ft,zr=(-Xe*Ve+Ke*Gt)/ft,Rr=or-ot,ea=hr-Ie,Vr=fr-ot,Jr=zr-Ie;return Rr*Rr+ea*ea>Vr*Vr+Jr*Jr&&(or=fr,hr=zr),[[or-ae,hr-me],[or*P/nt,hr*P/nt]]}function ec(){return!0}function ks(y){var M=vu,P=pl,N=ec,U=Xo,Z=U.key,$=.7;function X(ae){var me=[],_e=[],ze=-1,Pe=ae.length,Qe,ot=fa(M),Ie=fa(P);function Ve(){me.push("M",U(y(_e),$))}for(;++ze1?y.join("L"):y+"Z"}function lf(y){return y.join("L")+"Z"}function Qm(y){for(var M=0,P=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,P=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=P*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 Dp(y){return y.length<3?Xo(y):y[0]+ff(y,ry(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,P=-1,N=y.length,U,Z;++Pwt)+",1 "+ze}function me(_e,ze,Pe,Qe){return"Q 0,0 "+Qe}return Z.radius=function(_e){return arguments.length?(P=fa(_e),Z):P},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,P=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(P),"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?(P=U,N):P},N};function Uv(y){return[y.x,y.y]}e.svg.diagonal.radial=function(){var y=e.svg.diagonal(),M=Uv,P=y.projection;return y.projection=function(N){return arguments.length?P(zp(M=N)):M},y};function zp(y){return function(){var M=y.apply(this,arguments),P=M[0],N=M[1]-Mr;return[P*Math.cos(N),P*Math.sin(N)]}}e.svg.symbol=function(){var y=df,M=Ip;function P(N,U){return(rh.get(y.call(this,N,U))||th)(M.call(this,N,U))}return P.type=function(N){return arguments.length?(y=fa(N),P):y},P.size=function(N){return arguments.length?(M=fa(N),P):M},P};function Ip(){return 64}function df(){return"circle"}function th(y){var M=Math.sqrt(y/wt);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)),P=M*Vv;return"M0,"+-M+"L"+P+",0 0,"+M+" "+-P+",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),P=M*Au/2;return"M0,"+P+"L"+M+","+-P+" "+-M+","+-P+"Z"},"triangle-up":function(y){var M=Math.sqrt(y/Au),P=M*Au/2;return"M0,"+-P+"L"+M+","+P+" "+-M+","+P+"Z"}});e.svg.symbolTypes=rh.keys();var Au=Math.sqrt(3),Vv=Math.tan(30*Gr);vt.transition=function(y){for(var M=so||++Li,P=fi(y),N=[],U,Z,$=Es||{time:Date.now(),ease:bl,delay:0,duration:250},X=-1,ae=this.length;++X0;)ze[--ft].call(y,Ke);if(Ve>=1)return $.event&&$.event.end.call(y,y.__data__,M),--Z.count?delete Z[N]:delete y[P],1}$||(X=U.time,ae=qc(Pe,0,X),$=Z[N]={tween:new I,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,P=6,N=6,U=3,Z=[10],$=null,X;function ae(me){me.each(function(){var _e=e.select(this),ze=this.__chart__||y,Pe=this.__chart__=y.copy(),Qe=$==null?Pe.ticks?Pe.ticks.apply(Pe,Z):Pe.domain():$,ot=X==null?Pe.tickFormat?Pe.tickFormat.apply(Pe,Z):ke:X,Ie=_e.selectAll(".tick").data(Qe,Pe),Ve=Ie.enter().insert("g",".domain").attr("class","tick").style("opacity",Ue),Ke=e.transition(Ie.exit()).style("opacity",Ue).remove(),ft=e.transition(Ie.order()).style("opacity",1),nt=Math.max(P,0)+U,Xe,Gt=Yc(Pe),or=_e.selectAll(".domain").data([0]),hr=(or.enter().append("path").attr("class","domain"),e.transition(or));Ve.append("line"),Ve.append("text");var fr=Ve.select("line"),zr=ft.select("line"),Rr=Ie.select("text").text(ot),ea=Ve.select("text"),Vr=ft.select("text"),Jr=M==="top"||M==="left"?-1:1,Na,ei,Qa,jt;if(M==="bottom"||M==="top"?(Xe=mf,Na="x",Qa="y",ei="x2",jt="y2",Rr.attr("dy",Jr<0?"0em":".71em").style("text-anchor","middle"),hr.attr("d","M"+Gt[0]+","+Jr*N+"V0H"+Gt[1]+"V"+Jr*N)):(Xe=Fl,Na="y",Qa="x",ei="y2",jt="x2",Rr.attr("dy",".32em").style("text-anchor",Jr<0?"end":"start"),hr.attr("d","M"+Jr*N+","+Gt[0]+"H0V"+Gt[1]+"H"+Jr*N)),fr.attr(jt,Jr*P),ea.attr(Qa,Jr*nt),zr.attr(ei,0).attr(jt,Jr*P),Vr.attr(Na,0).attr(Qa,Jr*nt),Pe.rangeBand){var jr=Pe,na=jr.rangeBand()/2;ze=Pe=function(oa){return jr(oa)+na}}else ze.rangeBand?ze=Pe:Ke.call(Xe,Pe,ze);Ve.call(Xe,ze,Pe),ft.call(Xe,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?(P=+me,N=+arguments[_e-1],ae):P},ae.innerTickSize=function(me){return arguments.length?(P=+me,ae):P},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,P){y.attr("transform",function(N){var U=M(N);return"translate("+(isFinite(U)?U:P(N))+",0)"})}function Fl(y,M,P){y.attr("transform",function(N){var U=M(N);return"translate(0,"+(isFinite(U)?U:P(N))+")"})}e.svg.brush=function(){var y=at(_e,"brushstart","brush","brushend"),M=null,P=null,N=[0,0],U=[0,0],Z,$,X=!0,ae=!0,me=nh[0];function _e(Ie){Ie.each(function(){var Ve=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),Ke=Ve.selectAll(".background").data([0]);Ke.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ve.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var ft=Ve.selectAll(".resize").data(me,ke);ft.exit().remove(),ft.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"),ft.style("display",_e.empty()?"none":null);var nt=e.transition(Ve),Xe=e.transition(Ke),Gt;M&&(Gt=Yc(M),Xe.attr("x",Gt[0]).attr("width",Gt[1]-Gt[0]),Pe(nt)),P&&(Gt=Yc(P),Xe.attr("y",Gt[0]).attr("height",Gt[1]-Gt[0]),Qe(nt)),ze(nt)})}_e.event=function(Ie){Ie.each(function(){var Ve=y.of(this,arguments),Ke={x:N,y:U,i:Z,j:$},ft=this.__chart__||Ke;this.__chart__=Ke,so?e.select(this).transition().each("start.brush",function(){Z=ft.i,$=ft.j,N=ft.x,U=ft.y,Ve({type:"brushstart"})}).tween("brush:brush",function(){var nt=Yo(N,Ke.x),Xe=Yo(U,Ke.y);return Z=$=null,function(Gt){N=Ke.x=nt(Gt),U=Ke.y=Xe(Gt),Ve({type:"brush",mode:"resize"})}}).each("end.brush",function(){Z=Ke.i,$=Ke.j,Ve({type:"brush",mode:"resize"}),Ve({type:"brushend"})}):(Ve({type:"brushstart"}),Ve({type:"brush",mode:"resize"}),Ve({type:"brushend"}))})};function ze(Ie){Ie.selectAll(".resize").attr("transform",function(Ve){return"translate("+N[+/e$/.test(Ve)]+","+U[+/^s/.test(Ve)]+")"})}function Pe(Ie){Ie.select(".extent").attr("x",N[0]),Ie.selectAll(".extent,.n>rect,.s>rect").attr("width",N[1]-N[0])}function Qe(Ie){Ie.select(".extent").attr("y",U[0]),Ie.selectAll(".extent,.e>rect,.w>rect").attr("height",U[1]-U[0])}function ot(){var Ie=this,Ve=e.select(e.event.target),Ke=y.of(Ie,arguments),ft=e.select(Ie),nt=Ve.datum(),Xe=!/^(n|s)$/.test(nt)&&M,Gt=!/^(e|w)$/.test(nt)&&P,or=Ve.classed("extent"),hr=yr(Ie),fr,zr=e.mouse(Ie),Rr,ea=e.select(s(Ie)).on("keydown.brush",Na).on("keyup.brush",ei);if(e.event.changedTouches?ea.on("touchmove.brush",Qa).on("touchend.brush",jr):ea.on("mousemove.brush",Qa).on("mouseup.brush",jr),ft.interrupt().selectAll("*").interrupt(),or)zr[0]=N[0]-zr[0],zr[1]=U[0]-zr[1];else if(nt){var Vr=+/w$/.test(nt),Jr=+/^n/.test(nt);Rr=[N[1-Vr]-zr[0],U[1-Jr]-zr[1]],zr[0]=N[Vr],zr[1]=U[Jr]}else e.event.altKey&&(fr=zr.slice());ft.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Ve.style("cursor")),Ke({type:"brushstart"}),Qa();function Na(){e.event.keyCode==32&&(or||(fr=null,zr[0]-=N[1],zr[1]-=U[1],or=2),je())}function ei(){e.event.keyCode==32&&or==2&&(zr[0]+=N[1],zr[1]+=U[1],or=0,je())}function Qa(){var na=e.mouse(Ie),oa=!1;Rr&&(na[0]+=Rr[0],na[1]+=Rr[1]),or||(e.event.altKey?(fr||(fr=[(N[0]+N[1])/2,(U[0]+U[1])/2]),zr[0]=N[+(na[0]{(function(e,t){typeof J1=="object"&&typeof w7!="undefined"?t(J1):(e=e||self,t(e.d3=e.d3||{}))})(J1,function(e){"use strict";var t=new Date,r=new Date;function i(Be,st,sr,Pr){function Et(ct){return Be(ct=arguments.length===0?new Date:new Date(+ct)),ct}return Et.floor=function(ct){return Be(ct=new Date(+ct)),ct},Et.ceil=function(ct){return Be(ct=new Date(ct-1)),st(ct,1),Be(ct),ct},Et.round=function(ct){var pt=Et(ct),Ot=Et.ceil(ct);return ct-pt0))return er;do er.push(Zt=new Date(+ct)),st(ct,Ot),Be(ct);while(Zt=pt)for(;Be(pt),!ct(pt);)pt.setTime(pt-1)},function(pt,Ot){if(pt>=pt)if(Ot<0)for(;++Ot<=0;)for(;st(pt,-1),!ct(pt););else for(;--Ot>=0;)for(;st(pt,1),!ct(pt););})},sr&&(Et.count=function(ct,pt){return t.setTime(+ct),r.setTime(+pt),Be(t),Be(r),Math.floor(sr(t,r))},Et.every=function(ct){return ct=Math.floor(ct),!isFinite(ct)||!(ct>0)?null:ct>1?Et.filter(Pr?function(pt){return Pr(pt)%ct===0}:function(pt){return Et.count(0,pt)%ct===0}):Et}),Et}var a=i(function(){},function(Be,st){Be.setTime(+Be+st)},function(Be,st){return st-Be});a.every=function(Be){return Be=Math.floor(Be),!isFinite(Be)||!(Be>0)?null:Be>1?i(function(st){st.setTime(Math.floor(st/Be)*Be)},function(st,sr){st.setTime(+st+sr*Be)},function(st,sr){return(sr-st)/Be}):a};var s=a.range,l=1e3,f=6e4,h=36e5,v=864e5,m=6048e5,_=i(function(Be){Be.setTime(Be-Be.getMilliseconds())},function(Be,st){Be.setTime(+Be+st*l)},function(Be,st){return(st-Be)/l},function(Be){return Be.getUTCSeconds()}),T=_.range,S=i(function(Be){Be.setTime(Be-Be.getMilliseconds()-Be.getSeconds()*l)},function(Be,st){Be.setTime(+Be+st*f)},function(Be,st){return(st-Be)/f},function(Be){return Be.getMinutes()}),C=S.range,E=i(function(Be){Be.setTime(Be-Be.getMilliseconds()-Be.getSeconds()*l-Be.getMinutes()*f)},function(Be,st){Be.setTime(+Be+st*h)},function(Be,st){return(st-Be)/h},function(Be){return Be.getHours()}),L=E.range,z=i(function(Be){Be.setHours(0,0,0,0)},function(Be,st){Be.setDate(Be.getDate()+st)},function(Be,st){return(st-Be-(st.getTimezoneOffset()-Be.getTimezoneOffset())*f)/v},function(Be){return Be.getDate()-1}),B=z.range;function q(Be){return i(function(st){st.setDate(st.getDate()-(st.getDay()+7-Be)%7),st.setHours(0,0,0,0)},function(st,sr){st.setDate(st.getDate()+sr*7)},function(st,sr){return(sr-st-(sr.getTimezoneOffset()-st.getTimezoneOffset())*f)/m})}var I=q(0),O=q(1),H=q(2),V=q(3),W=q(4),J=q(5),te=q(6),ne=I.range,oe=O.range,fe=H.range,he=V.range,ke=W.range,Se=J.range,Ae=te.range,xe=i(function(Be){Be.setDate(1),Be.setHours(0,0,0,0)},function(Be,st){Be.setMonth(Be.getMonth()+st)},function(Be,st){return st.getMonth()-Be.getMonth()+(st.getFullYear()-Be.getFullYear())*12},function(Be){return Be.getMonth()}),be=xe.range,Me=i(function(Be){Be.setMonth(0,1),Be.setHours(0,0,0,0)},function(Be,st){Be.setFullYear(Be.getFullYear()+st)},function(Be,st){return st.getFullYear()-Be.getFullYear()},function(Be){return Be.getFullYear()});Me.every=function(Be){return!isFinite(Be=Math.floor(Be))||!(Be>0)?null:i(function(st){st.setFullYear(Math.floor(st.getFullYear()/Be)*Be),st.setMonth(0,1),st.setHours(0,0,0,0)},function(st,sr){st.setFullYear(st.getFullYear()+sr*Be)})};var Le=Me.range,je=i(function(Be){Be.setUTCSeconds(0,0)},function(Be,st){Be.setTime(+Be+st*f)},function(Be,st){return(st-Be)/f},function(Be){return Be.getUTCMinutes()}),lt=je.range,at=i(function(Be){Be.setUTCMinutes(0,0,0)},function(Be,st){Be.setTime(+Be+st*h)},function(Be,st){return(st-Be)/h},function(Be){return Be.getUTCHours()}),gt=at.range,Ye=i(function(Be){Be.setUTCHours(0,0,0,0)},function(Be,st){Be.setUTCDate(Be.getUTCDate()+st)},function(Be,st){return(st-Be)/v},function(Be){return Be.getUTCDate()-1}),St=Ye.range;function it(Be){return i(function(st){st.setUTCDate(st.getUTCDate()-(st.getUTCDay()+7-Be)%7),st.setUTCHours(0,0,0,0)},function(st,sr){st.setUTCDate(st.getUTCDate()+sr*7)},function(st,sr){return(sr-st)/m})}var mt=it(0),bt=it(1),vt=it(2),de=it(3),De=it(4),ge=it(5),rt=it(6),dt=mt.range,We=bt.range,qt=vt.range,Dt=de.range,Tt=De.range,Rt=ge.range,Ut=rt.range,Ct=i(function(Be){Be.setUTCDate(1),Be.setUTCHours(0,0,0,0)},function(Be,st){Be.setUTCMonth(Be.getUTCMonth()+st)},function(Be,st){return st.getUTCMonth()-Be.getUTCMonth()+(st.getUTCFullYear()-Be.getUTCFullYear())*12},function(Be){return Be.getUTCMonth()}),At=Ct.range,Vt=i(function(Be){Be.setUTCMonth(0,1),Be.setUTCHours(0,0,0,0)},function(Be,st){Be.setUTCFullYear(Be.getUTCFullYear()+st)},function(Be,st){return st.getUTCFullYear()-Be.getUTCFullYear()},function(Be){return Be.getUTCFullYear()});Vt.every=function(Be){return!isFinite(Be=Math.floor(Be))||!(Be>0)?null:i(function(st){st.setUTCFullYear(Math.floor(st.getUTCFullYear()/Be)*Be),st.setUTCMonth(0,1),st.setUTCHours(0,0,0,0)},function(st,sr){st.setUTCFullYear(st.getUTCFullYear()+sr*Be)})};var Ht=Vt.range;e.timeDay=z,e.timeDays=B,e.timeFriday=J,e.timeFridays=Se,e.timeHour=E,e.timeHours=L,e.timeInterval=i,e.timeMillisecond=a,e.timeMilliseconds=s,e.timeMinute=S,e.timeMinutes=C,e.timeMonday=O,e.timeMondays=oe,e.timeMonth=xe,e.timeMonths=be,e.timeSaturday=te,e.timeSaturdays=Ae,e.timeSecond=_,e.timeSeconds=T,e.timeSunday=I,e.timeSundays=ne,e.timeThursday=W,e.timeThursdays=ke,e.timeTuesday=H,e.timeTuesdays=fe,e.timeWednesday=V,e.timeWednesdays=he,e.timeWeek=I,e.timeWeeks=ne,e.timeYear=Me,e.timeYears=Le,e.utcDay=Ye,e.utcDays=St,e.utcFriday=ge,e.utcFridays=Rt,e.utcHour=at,e.utcHours=gt,e.utcMillisecond=a,e.utcMilliseconds=s,e.utcMinute=je,e.utcMinutes=lt,e.utcMonday=bt,e.utcMondays=We,e.utcMonth=Ct,e.utcMonths=At,e.utcSaturday=rt,e.utcSaturdays=Ut,e.utcSecond=_,e.utcSeconds=T,e.utcSunday=mt,e.utcSundays=dt,e.utcThursday=De,e.utcThursdays=Tt,e.utcTuesday=vt,e.utcTuesdays=qt,e.utcWednesday=de,e.utcWednesdays=Dt,e.utcWeek=mt,e.utcWeeks=dt,e.utcYear=Vt,e.utcYears=Ht,Object.defineProperty(e,"__esModule",{value:!0})})});var l0=pe((K1,T7)=>{(function(e,t){typeof K1=="object"&&typeof T7!="undefined"?t(K1,U3()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(K1,function(e,t){"use strict";function r(Fe){if(0<=Fe.y&&Fe.y<100){var Ue=new Date(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L);return Ue.setFullYear(Fe.y),Ue}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 Ue=new Date(Date.UTC(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L));return Ue.setUTCFullYear(Fe.y),Ue}return new Date(Date.UTC(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L))}function a(Fe,Ue,xt){return{y:Fe,m:Ue,d:xt,H:0,M:0,S:0,L:0}}function s(Fe){var Ue=Fe.dateTime,xt=Fe.date,wt=Fe.time,mr=Fe.periods,Ar=Fe.days,Mr=Fe.shortDays,Gr=Fe.months,pa=Fe.shortMonths,Ca=T(mr),ii=S(mr),wi=T(Ar),vi=S(Ar),Fi=T(Mr),Gi=S(Mr),hn=T(Gr),nn=S(Gr),Ki=T(pa),ir=S(pa),oi={a:Pt,A:Ft,b:tr,B:Wt,c:null,d:xe,e:xe,f:lt,H:be,I:Me,j:Le,L:je,m:at,M:gt,p:Sr,q:Zr,Q:pt,s:Ot,S:Ye,u:St,U:it,V:mt,w:bt,W:vt,x:null,X:null,y:de,Y:De,Z:ge,"%":ct},Sa={a:Or,A:ca,b:ua,B:qa,c:null,d:rt,e:rt,f:Tt,H:dt,I:We,j:qt,L:Dt,m:Rt,M:Ut,p:ri,q:Yr,Q:pt,s:Ot,S:Ct,u:At,U:Vt,V:Ht,w:Be,W:st,x:null,X:null,y:sr,Y:Pr,Z:Et,"%":ct},la={a:le,A:ce,b:Ee,B:Ne,c:$e,d:W,e:W,f:he,H:te,I:te,j:J,L:fe,m:V,M:ne,p:ee,q:H,Q:Se,s:Ae,S:oe,u:E,U:L,V:z,w:C,W:B,x:Ze,X:yt,y:I,Y:q,Z:O,"%":ke};oi.x=Ci(xt,oi),oi.X=Ci(wt,oi),oi.c=Ci(Ue,oi),Sa.x=Ci(xt,Sa),Sa.X=Ci(wt,Sa),Sa.c=Ci(Ue,Sa);function Ci(gr,$r){return function(ga){var nr=[],Ti=-1,Ea=0,si=gr.length,fa,Pn,Co;for(ga instanceof Date||(ga=new Date(+ga));++Ti53)return null;"w"in nr||(nr.w=1),"Z"in nr?(Ea=i(a(nr.y,0,1)),si=Ea.getUTCDay(),Ea=si>4||si===0?t.utcMonday.ceil(Ea):t.utcMonday(Ea),Ea=t.utcDay.offset(Ea,(nr.V-1)*7),nr.y=Ea.getUTCFullYear(),nr.m=Ea.getUTCMonth(),nr.d=Ea.getUTCDate()+(nr.w+6)%7):(Ea=r(a(nr.y,0,1)),si=Ea.getDay(),Ea=si>4||si===0?t.timeMonday.ceil(Ea):t.timeMonday(Ea),Ea=t.timeDay.offset(Ea,(nr.V-1)*7),nr.y=Ea.getFullYear(),nr.m=Ea.getMonth(),nr.d=Ea.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 se(gr,$r,ga,nr){for(var Ti=0,Ea=$r.length,si=ga.length,fa,Pn;Ti=si)return-1;if(fa=$r.charCodeAt(Ti++),fa===37){if(fa=$r.charAt(Ti++),Pn=la[fa in l?$r.charAt(Ti++):fa],!Pn||(nr=Pn(gr,ga,nr))<0)return-1}else if(fa!=ga.charCodeAt(nr++))return-1}return nr}function ee(gr,$r,ga){var nr=Ca.exec($r.slice(ga));return nr?(gr.p=ii[nr[0].toLowerCase()],ga+nr[0].length):-1}function le(gr,$r,ga){var nr=Fi.exec($r.slice(ga));return nr?(gr.w=Gi[nr[0].toLowerCase()],ga+nr[0].length):-1}function ce(gr,$r,ga){var nr=wi.exec($r.slice(ga));return nr?(gr.w=vi[nr[0].toLowerCase()],ga+nr[0].length):-1}function Ee(gr,$r,ga){var nr=Ki.exec($r.slice(ga));return nr?(gr.m=ir[nr[0].toLowerCase()],ga+nr[0].length):-1}function Ne(gr,$r,ga){var nr=hn.exec($r.slice(ga));return nr?(gr.m=nn[nr[0].toLowerCase()],ga+nr[0].length):-1}function $e(gr,$r,ga){return se(gr,Ue,$r,ga)}function Ze(gr,$r,ga){return se(gr,xt,$r,ga)}function yt(gr,$r,ga){return se(gr,wt,$r,ga)}function Pt(gr){return Mr[gr.getDay()]}function Ft(gr){return Ar[gr.getDay()]}function tr(gr){return pa[gr.getMonth()]}function Wt(gr){return Gr[gr.getMonth()]}function Sr(gr){return mr[+(gr.getHours()>=12)]}function Zr(gr){return 1+~~(gr.getMonth()/3)}function Or(gr){return Mr[gr.getUTCDay()]}function ca(gr){return Ar[gr.getUTCDay()]}function ua(gr){return pa[gr.getUTCMonth()]}function qa(gr){return Gr[gr.getUTCMonth()]}function ri(gr){return mr[+(gr.getUTCHours()>=12)]}function Yr(gr){return 1+~~(gr.getUTCMonth()/3)}return{format:function(gr){var $r=Ci(gr+="",oi);return $r.toString=function(){return gr},$r},parse:function(gr){var $r=ma(gr+="",!1);return $r.toString=function(){return gr},$r},utcFormat:function(gr){var $r=Ci(gr+="",Sa);return $r.toString=function(){return gr},$r},utcParse:function(gr){var $r=ma(gr+="",!0);return $r.toString=function(){return gr},$r}}}var l={"-":"",_:" ",0:"0"},f=/^\s*\d+/,h=/^%/,v=/[\\^$*+?|[\]().{}]/g;function m(Fe,Ue,xt){var wt=Fe<0?"-":"",mr=(wt?-Fe:Fe)+"",Ar=mr.length;return wt+(Ar68?1900:2e3),xt+wt[0].length):-1}function O(Fe,Ue,xt){var wt=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ue.slice(xt,xt+6));return wt?(Fe.Z=wt[1]?0:-(wt[2]+(wt[3]||"00")),xt+wt[0].length):-1}function H(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+1));return wt?(Fe.q=wt[0]*3-3,xt+wt[0].length):-1}function V(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+2));return wt?(Fe.m=wt[0]-1,xt+wt[0].length):-1}function W(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+2));return wt?(Fe.d=+wt[0],xt+wt[0].length):-1}function J(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+3));return wt?(Fe.m=0,Fe.d=+wt[0],xt+wt[0].length):-1}function te(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+2));return wt?(Fe.H=+wt[0],xt+wt[0].length):-1}function ne(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+2));return wt?(Fe.M=+wt[0],xt+wt[0].length):-1}function oe(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+2));return wt?(Fe.S=+wt[0],xt+wt[0].length):-1}function fe(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+3));return wt?(Fe.L=+wt[0],xt+wt[0].length):-1}function he(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt,xt+6));return wt?(Fe.L=Math.floor(wt[0]/1e3),xt+wt[0].length):-1}function ke(Fe,Ue,xt){var wt=h.exec(Ue.slice(xt,xt+1));return wt?xt+wt[0].length:-1}function Se(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt));return wt?(Fe.Q=+wt[0],xt+wt[0].length):-1}function Ae(Fe,Ue,xt){var wt=f.exec(Ue.slice(xt));return wt?(Fe.s=+wt[0],xt+wt[0].length):-1}function xe(Fe,Ue){return m(Fe.getDate(),Ue,2)}function be(Fe,Ue){return m(Fe.getHours(),Ue,2)}function Me(Fe,Ue){return m(Fe.getHours()%12||12,Ue,2)}function Le(Fe,Ue){return m(1+t.timeDay.count(t.timeYear(Fe),Fe),Ue,3)}function je(Fe,Ue){return m(Fe.getMilliseconds(),Ue,3)}function lt(Fe,Ue){return je(Fe,Ue)+"000"}function at(Fe,Ue){return m(Fe.getMonth()+1,Ue,2)}function gt(Fe,Ue){return m(Fe.getMinutes(),Ue,2)}function Ye(Fe,Ue){return m(Fe.getSeconds(),Ue,2)}function St(Fe){var Ue=Fe.getDay();return Ue===0?7:Ue}function it(Fe,Ue){return m(t.timeSunday.count(t.timeYear(Fe)-1,Fe),Ue,2)}function mt(Fe,Ue){var xt=Fe.getDay();return Fe=xt>=4||xt===0?t.timeThursday(Fe):t.timeThursday.ceil(Fe),m(t.timeThursday.count(t.timeYear(Fe),Fe)+(t.timeYear(Fe).getDay()===4),Ue,2)}function bt(Fe){return Fe.getDay()}function vt(Fe,Ue){return m(t.timeMonday.count(t.timeYear(Fe)-1,Fe),Ue,2)}function de(Fe,Ue){return m(Fe.getFullYear()%100,Ue,2)}function De(Fe,Ue){return m(Fe.getFullYear()%1e4,Ue,4)}function ge(Fe){var Ue=Fe.getTimezoneOffset();return(Ue>0?"-":(Ue*=-1,"+"))+m(Ue/60|0,"0",2)+m(Ue%60,"0",2)}function rt(Fe,Ue){return m(Fe.getUTCDate(),Ue,2)}function dt(Fe,Ue){return m(Fe.getUTCHours(),Ue,2)}function We(Fe,Ue){return m(Fe.getUTCHours()%12||12,Ue,2)}function qt(Fe,Ue){return m(1+t.utcDay.count(t.utcYear(Fe),Fe),Ue,3)}function Dt(Fe,Ue){return m(Fe.getUTCMilliseconds(),Ue,3)}function Tt(Fe,Ue){return Dt(Fe,Ue)+"000"}function Rt(Fe,Ue){return m(Fe.getUTCMonth()+1,Ue,2)}function Ut(Fe,Ue){return m(Fe.getUTCMinutes(),Ue,2)}function Ct(Fe,Ue){return m(Fe.getUTCSeconds(),Ue,2)}function At(Fe){var Ue=Fe.getUTCDay();return Ue===0?7:Ue}function Vt(Fe,Ue){return m(t.utcSunday.count(t.utcYear(Fe)-1,Fe),Ue,2)}function Ht(Fe,Ue){var xt=Fe.getUTCDay();return Fe=xt>=4||xt===0?t.utcThursday(Fe):t.utcThursday.ceil(Fe),m(t.utcThursday.count(t.utcYear(Fe),Fe)+(t.utcYear(Fe).getUTCDay()===4),Ue,2)}function Be(Fe){return Fe.getUTCDay()}function st(Fe,Ue){return m(t.utcMonday.count(t.utcYear(Fe)-1,Fe),Ue,2)}function sr(Fe,Ue){return m(Fe.getUTCFullYear()%100,Ue,2)}function Pr(Fe,Ue){return m(Fe.getUTCFullYear()%1e4,Ue,4)}function Et(){return"+0000"}function ct(){return"%"}function pt(Fe){return+Fe}function Ot(Fe){return Math.floor(+Fe/1e3)}var er;Zt({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 Zt(Fe){return er=s(Fe),e.timeFormat=er.format,e.timeParse=er.parse,e.utcFormat=er.utcFormat,e.utcParse=er.utcParse,er}var Kt="%Y-%m-%dT%H:%M:%S.%LZ";function pr(Fe){return Fe.toISOString()}var yr=Date.prototype.toISOString?pr:e.utcFormat(Kt);function ur(Fe){var Ue=new Date(Fe);return isNaN(Ue)?null:Ue}var Lt=+new Date("2000-01-01T00:00:00.000Z")?ur:e.utcParse(Kt);e.isoFormat=yr,e.isoParse=Lt,e.timeFormatDefaultLocale=Zt,e.timeFormatLocale=s,Object.defineProperty(e,"__esModule",{value:!0})})});var V3=pe((Q1,A7)=>{(function(e,t){typeof Q1=="object"&&typeof A7!="undefined"?t(Q1):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(Q1,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,te=V.slice(0,J);return[te.length>1?te[0]+te.slice(2):te,+V.slice(J+1)]}function i(V){return V=r(Math.abs(V)),V?V[1]:NaN}function a(V,W){return function(J,te){for(var ne=J.length,oe=[],fe=0,he=V[0],ke=0;ne>0&&he>0&&(ke+he+1>te&&(he=Math.max(1,te-ke)),oe.push(J.substring(ne-=he,ne+he)),!((ke+=he+1)>te));)he=V[fe=(fe+1)%V.length];return oe.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,te=-1,ne;J0&&(te=0);break}return te>0?V.slice(0,te)+V.slice(ne+1):V}var m;function _(V,W){var J=r(V,W);if(!J)return V+"";var te=J[0],ne=J[1],oe=ne-(m=Math.max(-8,Math.min(8,Math.floor(ne/3)))*3)+1,fe=te.length;return oe===fe?te:oe>fe?te+new Array(oe-fe+1).join("0"):oe>0?te.slice(0,oe)+"."+te.slice(oe):"0."+new Array(1-oe).join("0")+r(V,Math.max(0,W+oe-1))[0]}function T(V,W){var J=r(V,W);if(!J)return V+"";var te=J[0],ne=J[1];return ne<0?"0."+new Array(-ne).join("0")+te:te.length>ne+1?te.slice(0,ne+1)+"."+te.slice(ne+1):te+new Array(ne-te.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:_,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 E=Array.prototype.map,L=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function z(V){var W=V.grouping===void 0||V.thousands===void 0?C:a(E.call(V.grouping,Number),V.thousands+""),J=V.currency===void 0?"":V.currency[0]+"",te=V.currency===void 0?"":V.currency[1]+"",ne=V.decimal===void 0?".":V.decimal+"",oe=V.numerals===void 0?C:s(E.call(V.numerals,String)),fe=V.percent===void 0?"%":V.percent+"",he=V.minus===void 0?"-":V.minus+"",ke=V.nan===void 0?"NaN":V.nan+"";function Se(xe){xe=f(xe);var be=xe.fill,Me=xe.align,Le=xe.sign,je=xe.symbol,lt=xe.zero,at=xe.width,gt=xe.comma,Ye=xe.precision,St=xe.trim,it=xe.type;it==="n"?(gt=!0,it="g"):S[it]||(Ye===void 0&&(Ye=12),St=!0,it="g"),(lt||be==="0"&&Me==="=")&&(lt=!0,be="0",Me="=");var mt=je==="$"?J:je==="#"&&/[boxX]/.test(it)?"0"+it.toLowerCase():"",bt=je==="$"?te:/[%p]/.test(it)?fe:"",vt=S[it],de=/[defgprs%]/.test(it);Ye=Ye===void 0?6:/[gprs]/.test(it)?Math.max(1,Math.min(21,Ye)):Math.max(0,Math.min(20,Ye));function De(ge){var rt=mt,dt=bt,We,qt,Dt;if(it==="c")dt=vt(ge)+dt,ge="";else{ge=+ge;var Tt=ge<0||1/ge<0;if(ge=isNaN(ge)?ke:vt(Math.abs(ge),Ye),St&&(ge=v(ge)),Tt&&+ge==0&&Le!=="+"&&(Tt=!1),rt=(Tt?Le==="("?Le:he:Le==="-"||Le==="("?"":Le)+rt,dt=(it==="s"?L[8+m/3]:"")+dt+(Tt&&Le==="("?")":""),de){for(We=-1,qt=ge.length;++WeDt||Dt>57){dt=(Dt===46?ne+ge.slice(We+1):ge.slice(We))+dt,ge=ge.slice(0,We);break}}}gt&&!lt&&(ge=W(ge,1/0));var Rt=rt.length+ge.length+dt.length,Ut=Rt>1)+rt+ge+dt+Ut.slice(Rt);break;default:ge=Ut+rt+ge+dt;break}return oe(ge)}return De.toString=function(){return xe+""},De}function Ae(xe,be){var Me=Se((xe=f(xe),xe.type="f",xe)),Le=Math.max(-8,Math.min(8,Math.floor(i(be)/3)))*3,je=Math.pow(10,-Le),lt=L[8+Le/3];return function(at){return Me(je*at)+lt}}return{format:Se,formatPrefix:Ae}}var B;q({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function q(V){return B=z(V),e.format=B.format,e.formatPrefix=B.formatPrefix,B}function I(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=q,e.formatLocale=z,e.formatSpecifier=f,e.precisionFixed=I,e.precisionPrefix=O,e.precisionRound=H,Object.defineProperty(e,"__esModule",{value:!0})})});var S7=pe((qme,M7)=>{"use strict";M7.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=pe((Nme,k7)=>{"use strict";var sj=S7();k7.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&sj(r))return!1}else if(t!=="number")return!1;return e-e<1}});var Zi=pe((Bme,C7)=>{"use strict";C7.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 H3=pe(($1,E7)=>{(function(e,t){typeof $1=="object"&&typeof E7!="undefined"?t($1):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})($1,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,_,T,S,C;l[l.length-1]==="="&&(f--,l[l.length-2]==="="&&f--);var E=new ArrayBuffer(f),L=new Uint8Array(E);for(v=0;v>4,L[m++]=(T&15)<<4|S>>2,L[m++]=(S&3)<<6|C&63;return E};e.decode=s,e.encode=a,Object.defineProperty(e,"__esModule",{value:!0})})});var cc=pe((Ome,L7)=>{"use strict";L7.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 al=pe(Du=>{"use strict";var lj=H3().decode,uj=cc(),G3=Array.isArray,fj=ArrayBuffer,cj=DataView;function D7(e){return fj.isView(e)&&!(e instanceof cj)}Du.isTypedArray=D7;function e_(e){return G3(e)||D7(e)}Du.isArrayOrTypedArray=e_;function hj(e){return!e_(e[0])}Du.isArray1D=hj;Du.ensureArray=function(e,t){return G3(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 Z3(e){return e.constructor===ArrayBuffer}Du.isArrayBuffer=Z3;Du.decodeTypedArraySpec=function(e){var t=[],r=vj(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;Z3(l)||(l=lj(l));var f=r.shape===void 0?[l.byteLength/s]:(""+r.shape).split(",");f.reverse();var h=f.length,v,m,_=+f[0],T=s*_,S=0;if(h===1)t=new a(l);else if(h===2)for(v=+f[1],m=0;m{"use strict";var z7=Da(),W3=al().isArrayOrTypedArray;q7.exports=function(t,r){if(z7(r))r=String(r);else if(typeof r!="string"||r.slice(-4)==="[-1]")throw"bad property string";var i=r.split("."),a,s,l,f;for(f=0;f{"use strict";var u0=My(),gj=/^\w*$/,_j=0,N7=1,t_=2,B7=3,ed=4;O7.exports=function(t,r,i,a){i=i||"name",a=a||"value";var s,l,f,h={};r&&r.length?(f=u0(t,r),l=f.get()):l=t,r=r||"";var v={};if(l)for(s=0;s2)return h[S]=h[S]|t_,_.set(T,null);if(m){for(s=S;s{"use strict";var xj=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,bj=/^[^\.\[\]]+$/;V7.exports=function(e,t){for(;t;){var r=e.match(xj);if(r)e=r[1];else if(e.match(bj))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 r_=pe((Zme,G7)=>{"use strict";var wj=Da();G7.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 wj(i)||(i=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),i}});var W7=pe((Yme,Y7)=>{"use strict";var Z7=al().isArrayOrTypedArray,Sy=cc();Y7.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(Z7(a)&&Z7(s)&&Sy(a[0])){if(i==="customdata"||i==="ids")continue;for(var l=Math.min(a.length,s.length),f=0;f{"use strict";function Tj(e,t){var r=e%t;return r<0?r+t:r}function Aj(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}X7.exports={mod:Tj,modHalf:Aj}});var Tf=pe((Xme,a_)=>{(function(e){var t=/^\s+/,r=/\s+$/,i=0,a=e.round,s=e.min,l=e.max,f=e.random;function h(de,De){if(de=de||"",De=De||{},de instanceof h)return de;if(!(this instanceof h))return new h(de,De);var ge=v(de);this._originalInput=de,this._r=ge.r,this._g=ge.g,this._b=ge.b,this._a=ge.a,this._roundA=a(100*this._a)/100,this._format=De.format||ge.format,this._gradientType=De.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=ge.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 de=this.toRgb();return(de.r*299+de.g*587+de.b*114)/1e3},getLuminance:function(){var de=this.toRgb(),De,ge,rt,dt,We,qt;return De=de.r/255,ge=de.g/255,rt=de.b/255,De<=.03928?dt=De/12.92:dt=e.pow((De+.055)/1.055,2.4),ge<=.03928?We=ge/12.92:We=e.pow((ge+.055)/1.055,2.4),rt<=.03928?qt=rt/12.92:qt=e.pow((rt+.055)/1.055,2.4),.2126*dt+.7152*We+.0722*qt},setAlpha:function(de){return this._a=xe(de),this._roundA=a(100*this._a)/100,this},toHsv:function(){var de=S(this._r,this._g,this._b);return{h:de.h*360,s:de.s,v:de.v,a:this._a}},toHsvString:function(){var de=S(this._r,this._g,this._b),De=a(de.h*360),ge=a(de.s*100),rt=a(de.v*100);return this._a==1?"hsv("+De+", "+ge+"%, "+rt+"%)":"hsva("+De+", "+ge+"%, "+rt+"%, "+this._roundA+")"},toHsl:function(){var de=_(this._r,this._g,this._b);return{h:de.h*360,s:de.s,l:de.l,a:this._a}},toHslString:function(){var de=_(this._r,this._g,this._b),De=a(de.h*360),ge=a(de.s*100),rt=a(de.l*100);return this._a==1?"hsl("+De+", "+ge+"%, "+rt+"%)":"hsla("+De+", "+ge+"%, "+rt+"%, "+this._roundA+")"},toHex:function(de){return E(this._r,this._g,this._b,de)},toHexString:function(de){return"#"+this.toHex(de)},toHex8:function(de){return L(this._r,this._g,this._b,this._a,de)},toHex8String:function(de){return"#"+this.toHex8(de)},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(be(this._r,255)*100)+"%",g:a(be(this._g,255)*100)+"%",b:a(be(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+a(be(this._r,255)*100)+"%, "+a(be(this._g,255)*100)+"%, "+a(be(this._b,255)*100)+"%)":"rgba("+a(be(this._r,255)*100)+"%, "+a(be(this._g,255)*100)+"%, "+a(be(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:Se[E(this._r,this._g,this._b,!0)]||!1},toFilter:function(de){var De="#"+z(this._r,this._g,this._b,this._a),ge=De,rt=this._gradientType?"GradientType = 1, ":"";if(de){var dt=h(de);ge="#"+z(dt._r,dt._g,dt._b,dt._a)}return"progid:DXImageTransform.Microsoft.gradient("+rt+"startColorstr="+De+",endColorstr="+ge+")"},toString:function(de){var De=!!de;de=de||this._format;var ge=!1,rt=this._a<1&&this._a>=0,dt=!De&&rt&&(de==="hex"||de==="hex6"||de==="hex3"||de==="hex4"||de==="hex8"||de==="name");return dt?de==="name"&&this._a===0?this.toName():this.toRgbString():(de==="rgb"&&(ge=this.toRgbString()),de==="prgb"&&(ge=this.toPercentageRgbString()),(de==="hex"||de==="hex6")&&(ge=this.toHexString()),de==="hex3"&&(ge=this.toHexString(!0)),de==="hex4"&&(ge=this.toHex8String(!0)),de==="hex8"&&(ge=this.toHex8String()),de==="name"&&(ge=this.toName()),de==="hsl"&&(ge=this.toHslString()),de==="hsv"&&(ge=this.toHsvString()),ge||this.toHexString())},clone:function(){return h(this.toString())},_applyModification:function(de,De){var ge=de.apply(null,[this].concat([].slice.call(De)));return this._r=ge._r,this._g=ge._g,this._b=ge._b,this.setAlpha(ge._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(B,arguments)},saturate:function(){return this._applyModification(q,arguments)},greyscale:function(){return this._applyModification(I,arguments)},spin:function(){return this._applyModification(W,arguments)},_applyCombination:function(de,De){return de.apply(null,[this].concat([].slice.call(De)))},analogous:function(){return this._applyCombination(fe,arguments)},complement:function(){return this._applyCombination(J,arguments)},monochromatic:function(){return this._applyCombination(he,arguments)},splitcomplement:function(){return this._applyCombination(oe,arguments)},triad:function(){return this._applyCombination(te,arguments)},tetrad:function(){return this._applyCombination(ne,arguments)}},h.fromRatio=function(de,De){if(typeof de=="object"){var ge={};for(var rt in de)de.hasOwnProperty(rt)&&(rt==="a"?ge[rt]=de[rt]:ge[rt]=gt(de[rt]));de=ge}return h(de,De)};function v(de){var De={r:0,g:0,b:0},ge=1,rt=null,dt=null,We=null,qt=!1,Dt=!1;return typeof de=="string"&&(de=bt(de)),typeof de=="object"&&(mt(de.r)&&mt(de.g)&&mt(de.b)?(De=m(de.r,de.g,de.b),qt=!0,Dt=String(de.r).substr(-1)==="%"?"prgb":"rgb"):mt(de.h)&&mt(de.s)&&mt(de.v)?(rt=gt(de.s),dt=gt(de.v),De=C(de.h,rt,dt),qt=!0,Dt="hsv"):mt(de.h)&&mt(de.s)&&mt(de.l)&&(rt=gt(de.s),We=gt(de.l),De=T(de.h,rt,We),qt=!0,Dt="hsl"),de.hasOwnProperty("a")&&(ge=de.a)),ge=xe(ge),{ok:qt,format:de.format||Dt,r:s(255,l(De.r,0)),g:s(255,l(De.g,0)),b:s(255,l(De.b,0)),a:ge}}function m(de,De,ge){return{r:be(de,255)*255,g:be(De,255)*255,b:be(ge,255)*255}}function _(de,De,ge){de=be(de,255),De=be(De,255),ge=be(ge,255);var rt=l(de,De,ge),dt=s(de,De,ge),We,qt,Dt=(rt+dt)/2;if(rt==dt)We=qt=0;else{var Tt=rt-dt;switch(qt=Dt>.5?Tt/(2-rt-dt):Tt/(rt+dt),rt){case de:We=(De-ge)/Tt+(De1&&(Ct-=1),Ct<1/6?Rt+(Ut-Rt)*6*Ct:Ct<1/2?Ut:Ct<2/3?Rt+(Ut-Rt)*(2/3-Ct)*6:Rt}if(De===0)rt=dt=We=ge;else{var Dt=ge<.5?ge*(1+De):ge+De-ge*De,Tt=2*ge-Dt;rt=qt(Tt,Dt,de+1/3),dt=qt(Tt,Dt,de),We=qt(Tt,Dt,de-1/3)}return{r:rt*255,g:dt*255,b:We*255}}function S(de,De,ge){de=be(de,255),De=be(De,255),ge=be(ge,255);var rt=l(de,De,ge),dt=s(de,De,ge),We,qt,Dt=rt,Tt=rt-dt;if(qt=rt===0?0:Tt/rt,rt==dt)We=0;else{switch(rt){case de:We=(De-ge)/Tt+(De>1)+720)%360;--De;)rt.h=(rt.h+dt)%360,We.push(h(rt));return We}function he(de,De){De=De||6;for(var ge=h(de).toHsv(),rt=ge.h,dt=ge.s,We=ge.v,qt=[],Dt=1/De;De--;)qt.push(h({h:rt,s:dt,v:We})),We=(We+Dt)%1;return qt}h.mix=function(de,De,ge){ge=ge===0?0:ge||50;var rt=h(de).toRgb(),dt=h(De).toRgb(),We=ge/100,qt={r:(dt.r-rt.r)*We+rt.r,g:(dt.g-rt.g)*We+rt.g,b:(dt.b-rt.b)*We+rt.b,a:(dt.a-rt.a)*We+rt.a};return h(qt)},h.readability=function(de,De){var ge=h(de),rt=h(De);return(e.max(ge.getLuminance(),rt.getLuminance())+.05)/(e.min(ge.getLuminance(),rt.getLuminance())+.05)},h.isReadable=function(de,De,ge){var rt=h.readability(de,De),dt,We;switch(We=!1,dt=vt(ge),dt.level+dt.size){case"AAsmall":case"AAAlarge":We=rt>=4.5;break;case"AAlarge":We=rt>=3;break;case"AAAsmall":We=rt>=7;break}return We},h.mostReadable=function(de,De,ge){var rt=null,dt=0,We,qt,Dt,Tt;ge=ge||{},qt=ge.includeFallbackColors,Dt=ge.level,Tt=ge.size;for(var Rt=0;Rtdt&&(dt=We,rt=h(De[Rt]));return h.isReadable(de,rt,{level:Dt,size:Tt})||!qt?rt:(ge.includeFallbackColors=!1,h.mostReadable(de,["#fff","#000"],ge))};var ke=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=Ae(ke);function Ae(de){var De={};for(var ge in de)de.hasOwnProperty(ge)&&(De[de[ge]]=ge);return De}function xe(de){return de=parseFloat(de),(isNaN(de)||de<0||de>1)&&(de=1),de}function be(de,De){je(de)&&(de="100%");var ge=lt(de);return de=s(De,l(0,parseFloat(de))),ge&&(de=parseInt(de*De,10)/100),e.abs(de-De)<1e-6?1:de%De/parseFloat(De)}function Me(de){return s(1,l(0,de))}function Le(de){return parseInt(de,16)}function je(de){return typeof de=="string"&&de.indexOf(".")!=-1&&parseFloat(de)===1}function lt(de){return typeof de=="string"&&de.indexOf("%")!=-1}function at(de){return de.length==1?"0"+de:""+de}function gt(de){return de<=1&&(de=de*100+"%"),de}function Ye(de){return e.round(parseFloat(de)*255).toString(16)}function St(de){return Le(de)/255}var it=function(){var de="[-\\+]?\\d+%?",De="[-\\+]?\\d*\\.\\d+%?",ge="(?:"+De+")|(?:"+de+")",rt="[\\s|\\(]+("+ge+")[,|\\s]+("+ge+")[,|\\s]+("+ge+")\\s*\\)?",dt="[\\s|\\(]+("+ge+")[,|\\s]+("+ge+")[,|\\s]+("+ge+")[,|\\s]+("+ge+")\\s*\\)?";return{CSS_UNIT:new RegExp(ge),rgb:new RegExp("rgb"+rt),rgba:new RegExp("rgba"+dt),hsl:new RegExp("hsl"+rt),hsla:new RegExp("hsla"+dt),hsv:new RegExp("hsv"+rt),hsva:new RegExp("hsva"+dt),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 mt(de){return!!it.CSS_UNIT.exec(de)}function bt(de){de=de.replace(t,"").replace(r,"").toLowerCase();var De=!1;if(ke[de])de=ke[de],De=!0;else if(de=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ge;return(ge=it.rgb.exec(de))?{r:ge[1],g:ge[2],b:ge[3]}:(ge=it.rgba.exec(de))?{r:ge[1],g:ge[2],b:ge[3],a:ge[4]}:(ge=it.hsl.exec(de))?{h:ge[1],s:ge[2],l:ge[3]}:(ge=it.hsla.exec(de))?{h:ge[1],s:ge[2],l:ge[3],a:ge[4]}:(ge=it.hsv.exec(de))?{h:ge[1],s:ge[2],v:ge[3]}:(ge=it.hsva.exec(de))?{h:ge[1],s:ge[2],v:ge[3],a:ge[4]}:(ge=it.hex8.exec(de))?{r:Le(ge[1]),g:Le(ge[2]),b:Le(ge[3]),a:St(ge[4]),format:De?"name":"hex8"}:(ge=it.hex6.exec(de))?{r:Le(ge[1]),g:Le(ge[2]),b:Le(ge[3]),format:De?"name":"hex"}:(ge=it.hex4.exec(de))?{r:Le(ge[1]+""+ge[1]),g:Le(ge[2]+""+ge[2]),b:Le(ge[3]+""+ge[3]),a:St(ge[4]+""+ge[4]),format:De?"name":"hex8"}:(ge=it.hex3.exec(de))?{r:Le(ge[1]+""+ge[1]),g:Le(ge[2]+""+ge[2]),b:Le(ge[3]+""+ge[3]),format:De?"name":"hex"}:!1}function vt(de){var De,ge;return de=de||{level:"AA",size:"small"},De=(de.level||"AA").toUpperCase(),ge=(de.size||"small").toLowerCase(),De!=="AA"&&De!=="AAA"&&(De="AA"),ge!=="small"&&ge!=="large"&&(ge="small"),{level:De,size:ge}}typeof a_!="undefined"&&a_.exports?a_.exports=h:window.tinycolor=h})(Math)});var mn=pe(Ey=>{"use strict";var j7=cc(),ky=Array.isArray;function Mj(e,t){var r,i;for(r=0;r{"use strict";J7.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 Ly=pe((Kme,K7)=>{"use strict";K7.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var c0=pe((Qme,e8)=>{"use strict";var Q7=Ly(),$7=qo(),X3=$7({editType:"none"});X3.family.dflt=Q7.HOVERFONT;X3.size.dflt=Q7.HOVERFONTSIZE;e8.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:X3,grouptitlefont:$7({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var i_=pe(($me,t8)=>{"use strict";var Sj=qo(),Dy=c0().hoverlabel,Py=mn().extendFlat;t8.exports={hoverlabel:{bgcolor:Py({},Dy.bgcolor,{arrayOk:!0}),bordercolor:Py({},Dy.bordercolor,{arrayOk:!0}),font:Sj({arrayOk:!0,editType:"none"}),align:Py({},Dy.align,{arrayOk:!0}),namelength:Py({},Dy.namelength,{arrayOk:!0}),showarrow:Py({},Dy.showarrow),editType:"none"}}});var ys=pe((eye,r8)=>{"use strict";var kj=qo(),Cj=i_();r8.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:kj({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:Cj.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 td=pe((tye,n8)=>{"use strict";var Ej=Tf(),n_={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)"]]},a8=n_.RdBu;function Lj(e,t){if(t||(t=a8),!e)return t;function r(){try{e=n_[e]||JSON.parse(e)}catch(i){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),i8(e)?e:t}function i8(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";rd.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];rd.defaultLine="#444";rd.lightLine="#eee";rd.background="#fff";rd.borderLine="#BEC8D9";rd.lightFraction=100*10/11});var Oa=pe((aye,o8)=>{"use strict";var Rs=Tf(),Pj=Da(),zj=al().isTypedArray,$n=o8.exports={},o_=Af();$n.defaults=o_.defaults;var Ij=$n.defaultLine=o_.defaultLine;$n.lightLine=o_.lightLine;var J3=$n.background=o_.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||J3).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,J3)));var a=i.isDark()?t?i.lighten(t):J3:r?i.darken(r):Ij;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 s_=pe((iye,s8)=>{"use strict";s8.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var h0=pe(l8=>{"use strict";l8.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 h8=pe(Fs=>{"use strict";var K3=Da(),u8=Tf(),f8=mn().extendFlat,Rj=ys(),Fj=td(),qj=Oa(),Nj=s_().DESELECTDIM,v0=My(),c8=h0().counter,Bj=f0().modHalf,Pu=al().isArrayOrTypedArray,bh=al().isTypedArraySpec,wh=al().decodeTypedArraySpec;Fs.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(Pu(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;is===!0||s===!1;a(e)||i.arrayOk&&Array.isArray(e)&&e.length>0&&e.every(a)?t.set(e):t.set(r)}},number:{coerceFunction:function(e,t,r,i){bh(e)&&(e=wh(e)),!K3(e)||i.min!==void 0&&ei.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||!K3(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)),u8(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function i(a){return u8(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(Fj.get(e,r))}},angle:{coerceFunction:function(e,t,r){bh(e)&&(e=wh(e)),e==="auto"?t.set("auto"):K3(e)?t.set(Bj(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,i){var a=i.regex||c8(r);let s=l=>typeof l=="string"&&a.test(l);s(e)||i.arrayOk&&Pu(e)&&e.length>0&&e.every(s)?t.set(e):t.set(r)},validateFunction:function(e,t){var r=t.dflt;return e===r?!0:typeof e!="string"?!1:!!c8(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 v8={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/un/"},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:{}}},d8={};function p8(e,t){for(var r in e){var i=e[r];i.valType?t[r]=i.dflt:(t[r]||(t[r]={}),p8(i,t[r]))}}p8(v8,d8);m8.exports={configAttributes:v8,dfltConfig:d8}});var $3=pe((lye,y8)=>{"use strict";var Q3=ja(),Oj=Da(),zy=[];y8.exports=function(e,t){if(zy.indexOf(e)!==-1)return;zy.push(e);var r=1e3;Oj(t)?r=t:t==="long"&&(r=3e3);var i=Q3.select("body").selectAll(".plotly-notifier").data([0]);i.enter().append("div").classed("plotly-notifier",!0);var a=i.selectAll(".notifier-note").data(zy);function s(l){l.duration(700).style("opacity",0).each("end",function(f){var h=zy.indexOf(f);h!==-1&&zy.splice(h,1),Q3.select(this).remove()})}a.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(l){var f=Q3.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 d0=ad().dfltConfig,ew=$3(),tw=g8.exports={};tw.log=function(){var e;if(d0.logging>1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}};tw.warn=function(){var e;if(d0.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}};tw.error=function(){var e;if(d0.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}});var u_=pe((fye,_8)=>{"use strict";_8.exports=function(){}});var rw=pe((cye,x8)=>{"use strict";x8.exports=function(t,r){if(r instanceof RegExp){for(var i=r.toString(),a=0;a{b8.exports=Uj;function Uj(){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 A8=pe((vye,T8)=>{T8.exports=Vj;function Vj(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 S8=pe((dye,M8)=>{M8.exports=Hj;function Hj(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 aw=pe((pye,k8)=>{k8.exports=Gj;function Gj(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 E8=pe((mye,C8)=>{C8.exports=Zj;function Zj(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 D8=pe((yye,L8)=>{L8.exports=Yj;function Yj(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],_=t[9],T=t[10],S=t[11],C=t[12],E=t[13],L=t[14],z=t[15],B=r*f-i*l,q=r*h-a*l,I=r*v-s*l,O=i*h-a*f,H=i*v-s*f,V=a*v-s*h,W=m*E-_*C,J=m*L-T*C,te=m*z-S*C,ne=_*L-T*E,oe=_*z-S*E,fe=T*z-S*L,he=B*fe-q*oe+I*ne+O*te-H*J+V*W;return he?(he=1/he,e[0]=(f*fe-h*oe+v*ne)*he,e[1]=(a*oe-i*fe-s*ne)*he,e[2]=(E*V-L*H+z*O)*he,e[3]=(T*H-_*V-S*O)*he,e[4]=(h*te-l*fe-v*J)*he,e[5]=(r*fe-a*te+s*J)*he,e[6]=(L*I-C*V-z*q)*he,e[7]=(m*V-T*I+S*q)*he,e[8]=(l*oe-f*te+v*W)*he,e[9]=(i*te-r*oe-s*W)*he,e[10]=(C*H-E*I+z*B)*he,e[11]=(_*I-m*H-S*B)*he,e[12]=(f*J-l*ne-h*W)*he,e[13]=(r*ne-i*J+a*W)*he,e[14]=(E*q-C*O-L*B)*he,e[15]=(m*O-_*q+T*B)*he,e):null}});var z8=pe((gye,P8)=>{P8.exports=Wj;function Wj(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],_=t[9],T=t[10],S=t[11],C=t[12],E=t[13],L=t[14],z=t[15];return e[0]=f*(T*z-S*L)-_*(h*z-v*L)+E*(h*S-v*T),e[1]=-(i*(T*z-S*L)-_*(a*z-s*L)+E*(a*S-s*T)),e[2]=i*(h*z-v*L)-f*(a*z-s*L)+E*(a*v-s*h),e[3]=-(i*(h*S-v*T)-f*(a*S-s*T)+_*(a*v-s*h)),e[4]=-(l*(T*z-S*L)-m*(h*z-v*L)+C*(h*S-v*T)),e[5]=r*(T*z-S*L)-m*(a*z-s*L)+C*(a*S-s*T),e[6]=-(r*(h*z-v*L)-l*(a*z-s*L)+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*(_*z-S*E)-m*(f*z-v*E)+C*(f*S-v*_),e[9]=-(r*(_*z-S*E)-m*(i*z-s*E)+C*(i*S-s*_)),e[10]=r*(f*z-v*E)-l*(i*z-s*E)+C*(i*v-s*f),e[11]=-(r*(f*S-v*_)-l*(i*S-s*_)+m*(i*v-s*f)),e[12]=-(l*(_*L-T*E)-m*(f*L-h*E)+C*(f*T-h*_)),e[13]=r*(_*L-T*E)-m*(i*L-a*E)+C*(i*T-a*_),e[14]=-(r*(f*L-h*E)-l*(i*L-a*E)+C*(i*h-a*f)),e[15]=r*(f*T-h*_)-l*(i*T-a*_)+m*(i*h-a*f),e}});var R8=pe((_ye,I8)=>{I8.exports=Xj;function Xj(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],_=e[10],T=e[11],S=e[12],C=e[13],E=e[14],L=e[15],z=t*l-r*s,B=t*f-i*s,q=t*h-a*s,I=r*f-i*l,O=r*h-a*l,H=i*h-a*f,V=v*C-m*S,W=v*E-_*S,J=v*L-T*S,te=m*E-_*C,ne=m*L-T*C,oe=_*L-T*E;return z*oe-B*ne+q*te+I*J-O*W+H*V}});var q8=pe((xye,F8)=>{F8.exports=jj;function jj(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],_=t[8],T=t[9],S=t[10],C=t[11],E=t[12],L=t[13],z=t[14],B=t[15],q=r[0],I=r[1],O=r[2],H=r[3];return e[0]=q*i+I*f+O*_+H*E,e[1]=q*a+I*h+O*T+H*L,e[2]=q*s+I*v+O*S+H*z,e[3]=q*l+I*m+O*C+H*B,q=r[4],I=r[5],O=r[6],H=r[7],e[4]=q*i+I*f+O*_+H*E,e[5]=q*a+I*h+O*T+H*L,e[6]=q*s+I*v+O*S+H*z,e[7]=q*l+I*m+O*C+H*B,q=r[8],I=r[9],O=r[10],H=r[11],e[8]=q*i+I*f+O*_+H*E,e[9]=q*a+I*h+O*T+H*L,e[10]=q*s+I*v+O*S+H*z,e[11]=q*l+I*m+O*C+H*B,q=r[12],I=r[13],O=r[14],H=r[15],e[12]=q*i+I*f+O*_+H*E,e[13]=q*a+I*h+O*T+H*L,e[14]=q*s+I*v+O*S+H*z,e[15]=q*l+I*m+O*C+H*B,e}});var B8=pe((bye,N8)=>{N8.exports=Jj;function Jj(e,t,r){var i=r[0],a=r[1],s=r[2],l,f,h,v,m,_,T,S,C,E,L,z;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],_=t[5],T=t[6],S=t[7],C=t[8],E=t[9],L=t[10],z=t[11],e[0]=l,e[1]=f,e[2]=h,e[3]=v,e[4]=m,e[5]=_,e[6]=T,e[7]=S,e[8]=C,e[9]=E,e[10]=L,e[11]=z,e[12]=l*i+m*a+C*s+t[12],e[13]=f*i+_*a+E*s+t[13],e[14]=h*i+T*a+L*s+t[14],e[15]=v*i+S*a+z*s+t[15]),e}});var U8=pe((wye,O8)=>{O8.exports=Kj;function Kj(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 H8=pe((Tye,V8)=>{V8.exports=Qj;function Qj(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,_,T,S,C,E,L,z,B,q,I,O,H,V,W,J,te,ne,oe,fe,he,ke;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,_=t[0],T=t[1],S=t[2],C=t[3],E=t[4],L=t[5],z=t[6],B=t[7],q=t[8],I=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,te=a*s*m-l*h,ne=s*s*m+v,oe=l*s*m+a*h,fe=a*l*m+s*h,he=s*l*m-a*h,ke=l*l*m+v,e[0]=_*V+E*W+q*J,e[1]=T*V+L*W+I*J,e[2]=S*V+z*W+O*J,e[3]=C*V+B*W+H*J,e[4]=_*te+E*ne+q*oe,e[5]=T*te+L*ne+I*oe,e[6]=S*te+z*ne+O*oe,e[7]=C*te+B*ne+H*oe,e[8]=_*fe+E*he+q*ke,e[9]=T*fe+L*he+I*ke,e[10]=S*fe+z*he+O*ke,e[11]=C*fe+B*he+H*ke,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var Z8=pe((Aye,G8)=>{G8.exports=$j;function $j(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],_=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+_*i,e[7]=h*a+T*i,e[8]=v*a-s*i,e[9]=m*a-l*i,e[10]=_*a-f*i,e[11]=T*a-h*i,e}});var W8=pe((Mye,Y8)=>{Y8.exports=eJ;function eJ(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],_=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-_*i,e[3]=h*a-T*i,e[8]=s*i+v*a,e[9]=l*i+m*a,e[10]=f*i+_*a,e[11]=h*i+T*a,e}});var j8=pe((Sye,X8)=>{X8.exports=tJ;function tJ(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],_=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+_*i,e[3]=h*a+T*i,e[4]=v*a-s*i,e[5]=m*a-l*i,e[6]=_*a-f*i,e[7]=T*a-h*i,e}});var K8=pe((kye,J8)=>{J8.exports=rJ;function rJ(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 $8=pe((Cye,Q8)=>{Q8.exports=aJ;function aJ(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,_=i*h,T=i*v,S=a*h,C=a*v,E=s*v,L=l*f,z=l*h,B=l*v;return e[0]=1-(S+E),e[1]=_+B,e[2]=T-z,e[3]=0,e[4]=_-B,e[5]=1-(m+E),e[6]=C+L,e[7]=0,e[8]=T+z,e[9]=C-L,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 tS=pe((Eye,eS)=>{eS.exports=iJ;function iJ(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 aS=pe((Lye,rS)=>{rS.exports=nJ;function nJ(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 nS=pe((Dye,iS)=>{iS.exports=oJ;function oJ(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 sS=pe((Pye,oS)=>{oS.exports=sJ;function sJ(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 uS=pe((zye,lS)=>{lS.exports=lJ;function lJ(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 cS=pe((Iye,fS)=>{fS.exports=uJ;function uJ(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,_=i*f,T=a*l,S=a*f,C=a*h,E=s*l,L=s*f,z=s*h;return e[0]=1-_-C,e[1]=m+z,e[2]=T-L,e[3]=0,e[4]=m-z,e[5]=1-v-C,e[6]=S+E,e[7]=0,e[8]=T+L,e[9]=S-E,e[10]=1-v-_,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var vS=pe((Rye,hS)=>{hS.exports=fJ;function fJ(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 pS=pe((Fye,dS)=>{dS.exports=cJ;function cJ(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 yS=pe((qye,mS)=>{mS.exports=hJ;function hJ(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 _S=pe((Nye,gS)=>{gS.exports=vJ;function vJ(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 bS=pe((Bye,xS)=>{var dJ=aw();xS.exports=pJ;function pJ(e,t,r,i){var a,s,l,f,h,v,m,_,T,S,C=t[0],E=t[1],L=t[2],z=i[0],B=i[1],q=i[2],I=r[0],O=r[1],H=r[2];return Math.abs(C-I)<1e-6&&Math.abs(E-O)<1e-6&&Math.abs(L-H)<1e-6?dJ(e):(m=C-I,_=E-O,T=L-H,S=1/Math.sqrt(m*m+_*_+T*T),m*=S,_*=S,T*=S,a=B*T-q*_,s=q*m-z*T,l=z*_-B*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=_*l-T*s,h=T*a-m*l,v=m*s-_*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]=_,e[7]=0,e[8]=l,e[9]=v,e[10]=T,e[11]=0,e[12]=-(a*C+s*E+l*L),e[13]=-(f*C+h*E+v*L),e[14]=-(m*C+_*E+T*L),e[15]=1,e)}});var TS=pe((Oye,wS)=>{wS.exports=mJ;function mJ(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 iw=pe((Uye,AS)=>{AS.exports={create:w8(),clone:A8(),copy:S8(),identity:aw(),transpose:E8(),invert:D8(),adjoint:z8(),determinant:R8(),multiply:q8(),translate:B8(),scale:U8(),rotate:H8(),rotateX:Z8(),rotateY:W8(),rotateZ:j8(),fromRotation:K8(),fromRotationTranslation:$8(),fromScaling:tS(),fromTranslation:aS(),fromXRotation:nS(),fromYRotation:sS(),fromZRotation:uS(),fromQuat:cS(),frustum:vS(),perspective:pS(),perspectiveFromFieldOfView:yS(),ortho:_S(),lookAt:bS(),str:TS()}});var f_=pe(Cn=>{"use strict";var yJ=iw();Cn.init2dArray=function(e,t){for(var r=new Array(e),i=0;i{"use strict";var gJ=ja(),MS=Th(),_J=f_(),xJ=iw();function bJ(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 wJ(e){var t=gJ.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function SS(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function TJ(e,t){kS("global",e,t)}function kS(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):MS.warn("addStyleRule failed"):MS.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function AJ(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&SS(r)}function MJ(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 SJ(e){var t=ES(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=CS(i);if(a){var s=_J.convertCssMatrix(a);r=xJ.multiply(r,r,s)}}),r}function CS(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 ES(e){for(var t=[];kJ(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function kJ(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function CJ(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}LS.exports={getGraphDiv:bJ,isPlotDiv:wJ,removeElement:SS,addStyleRule:TJ,addRelatedStyleRule:kS,deleteRelatedStyleRule:AJ,setStyleOnHover:MJ,getFullTransformMatrix:SJ,getElementTransformMatrix:CS,getElementAndAncestors:ES,equalDomRects:CJ}});var Ry=pe((Gye,DS)=>{"use strict";DS.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 il=pe((Zye,NS)=>{"use strict";var zS=mn().extendFlat,EJ=cc(),IS={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},RS={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},LJ=IS.flags.slice().concat(["fullReplot"]),DJ=RS.flags.slice().concat("layoutReplot");NS.exports={traces:IS,layout:RS,traceFlags:function(){return PS(LJ)},layoutFlags:function(){return PS(DJ)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var i=r.split("+"),a=0;a{"use strict";nw.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};nw.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 ow=pe((Wye,BS)=>{"use strict";BS.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 Mf=pe(p0=>{"use strict";var{DATE_FORMAT_LINK:PJ,FORMAT_LINK:zJ}=ow(),IJ=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function RJ({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,zJ,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,PJ,"for details on the date formatting syntax.",IJ].join(" ")}p0.templateFormatStringDescription=RJ;p0.hovertemplateAttrs=({editType:e="none",arrayOk:t}={},r={})=>$v({valType:"string",dflt:"",editType:e},t!==!1?{arrayOk:!0}:{});p0.texttemplateAttrs=({editType:e="calc",arrayOk:t}={},r={})=>$v({valType:"string",dflt:"",editType:e},t!==!1?{arrayOk:!0}:{});p0.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:t}={},r={})=>({valType:"string",dflt:"",editType:e});p0.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var v_=pe((Jye,ZS)=>{"use strict";function Ah(e,t){return t?t.d2l(e):e}function OS(e,t){return t?t.l2d(e):e}function FJ(e){return e.x0}function qJ(e){return e.x1}function NJ(e){return e.y0}function BJ(e){return e.y1}function US(e){return e.x0shift||0}function VS(e){return e.x1shift||0}function HS(e){return e.y0shift||0}function GS(e){return e.y1shift||0}function c_(e,t){return Ah(e.x1,t)+VS(e)-Ah(e.x0,t)-US(e)}function h_(e,t,r){return Ah(e.y1,r)+GS(e)-Ah(e.y0,r)-HS(e)}function OJ(e,t){return Math.abs(c_(e,t))}function UJ(e,t,r){return Math.abs(h_(e,t,r))}function VJ(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(c_(e,t),2)+Math.pow(h_(e,t,r),2))}function HJ(e,t){return OS((Ah(e.x1,t)+VS(e)+Ah(e.x0,t)+US(e))/2,t)}function GJ(e,t,r){return OS((Ah(e.y1,r)+GS(e)+Ah(e.y0,r)+HS(e))/2,r)}function ZJ(e,t,r){return e.type!=="line"?void 0:h_(e,t,r)/c_(e,t)}ZS.exports={x0:FJ,x1:qJ,y0:NJ,y1:BJ,slope:ZJ,dx:c_,dy:h_,width:OJ,height:UJ,length:VJ,xcenter:HJ,ycenter:GJ}});var XS=pe((Kye,WS)=>{"use strict";var YJ=il().overrideAll,id=ys(),YS=qo(),WJ=hc().dash,Mh=mn().extendFlat,{shapeTexttemplateAttrs:XJ,templatefallbackAttrs:jJ}=Mf(),JJ=v_();WS.exports=YJ({newshape:{visible:Mh({},id.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:Mh({},id.legend,{}),legendgroup:Mh({},id.legendgroup,{}),legendgrouptitle:{text:Mh({},id.legendgrouptitle.text,{}),font:YS({})},legendrank:Mh({},id.legendrank,{}),legendwidth:Mh({},id.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Mh({},WJ,{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({},id.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:XJ({newshape:!0},{keys:Object.keys(JJ)}),texttemplatefallback:jJ({editType:"arraydraw"}),font:YS({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var JS=pe((Qye,jS)=>{"use strict";var KJ=hc().dash,QJ=mn().extendFlat;jS.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:QJ({},KJ,{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_=pe(($ye,KS)=>{"use strict";KS.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 m0=pe((ege,t9)=>{"use strict";var sw=qo(),$J=Ry(),p_=Af(),QS=XS(),$S=JS(),eK=d_(),e9=mn().extendFlat,m_=sw({editType:"calc"});m_.family.dflt='"Open Sans", verdana, arial, sans-serif';m_.size.dflt=12;m_.color.dflt=p_.defaultLine;t9.exports={font:m_,title:{text:{valType:"string",editType:"layoutstyle"},font:sw({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:sw({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:e9(eK({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:p_.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:p_.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:p_.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:QS.newshape,activeshape:QS.activeshape,newselection:$S.newselection,activeselection:$S.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:e9({},$J.transition,{editType:"none"})}});var r9=pe(()=>{(function(){if(!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")){var e=document.createElement("style");e.id="696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var sa=pe(Pa=>{"use strict";var y0=Th(),a9=u_(),i9=rw(),tK=cc(),rK=Iy().addStyleRule,n9=mn(),aK=ys(),iK=m0(),nK=n9.extendFlat,lw=n9.extendDeepAll;Pa.modules={};Pa.allCategories={};Pa.allTypes=[];Pa.subplotsRegistry={};Pa.componentsRegistry={};Pa.layoutArrayContainers=[];Pa.layoutArrayRegexes=[];Pa.traceLayoutAttributes={};Pa.localeRegistry={};Pa.apiMethodRegistry={};Pa.collectableSubplotTypes=null;Pa.register=function(t){if(Pa.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 cK=l0().timeFormat,m9=Da(),uw=Th(),kh=f0().mod,x0=Zi(),Hl=x0.BADNUM,qs=x0.ONEDAY,Fy=x0.ONEHOUR,Sh=x0.ONEMIN,_0=x0.ONESEC,qy=x0.EPOCHJD,vc=sa(),f9=l0().utcFormat,hK=/^\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,vK=/^\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,c9=new Date().getFullYear()-70;function dc(e){return e&&vc.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}En.dateTick0=function(e,t){var r=dK(e,!!t);if(t<2)return r;var i=En.dateTime2ms(r,e);return i+=qs*(t-1),En.ms2DateTime(i,0,e)};function dK(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"}En.dfltRange=function(e){return dc(e)?vc.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};En.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var g_,__;En.dateTime2ms=function(e,t){if(En.isJSDate(e)){var r=e.getTimezoneOffset()*Sh,i=(e.getUTCMinutes()-e.getMinutes())*Sh+(e.getUTCSeconds()-e.getSeconds())*_0+(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>=g_&&e<=__?e:Hl}if(typeof e!="string"&&typeof e!="number")return Hl;e=String(e);var s=dc(t),l=e.charAt(0);s&&(l==="G"||l==="g")&&(e=e.slice(1),t="");var f=s&&t.slice(0,7)==="chinese",h=e.match(f?vK:hK);if(!h)return Hl;var v=h[1],m=h[3]||"1",_=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 Hl;v=Number(v);var E;try{var L=vc.getComponentMethod("calendars","getCal")(t);if(f){var z=m.charAt(m.length-1)==="i";m=parseInt(m,10),E=L.newDate(v,L.toMonthIndex(v,m,z),_)}else E=L.newDate(v,Number(m),_)}catch(q){return Hl}return E?(E.toJD()-qy)*qs+T*Fy+S*Sh+C*_0:Hl}v.length===2?v=(Number(v)+2e3-c9)%100+c9:v=Number(v),m-=1;var B=new Date(Date.UTC(2e3,m,_,T,S));return B.setUTCFullYear(v),B.getUTCMonth()!==m||B.getUTCDate()!==_?Hl:B.getTime()+C*_0};g_=En.MIN_MS=En.dateTime2ms("-9999");__=En.MAX_MS=En.dateTime2ms("9999-12-31 23:59:59.9999");En.isDateTime=function(e,t){return En.dateTime2ms(e,t)!==Hl};function g0(e,t){return String(e+Math.pow(10,t)).slice(1)}var y_=90*qs,h9=3*Fy,v9=5*Sh;En.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=g_&&e<=__))return Hl;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 _=Math.floor(a/qs)+qy,T=Math.floor(kh(e,qs));try{s=vc.getComponentMethod("calendars","getCal")(r).fromJD(_).formatDate("yyyy-mm-dd")}catch(S){s=f9("G%Y-%m-%d")(new Date(a))}if(s.charAt(0)==="-")for(;s.length<11;)s="-0"+s.slice(1);else for(;s.length<10;)s="0"+s;l=t=g_+qs&&e<=__-qs))return Hl;var t=Math.floor(kh(e+.05,1)*10),r=new Date(Math.round(e-t/10)),i=cK("%Y-%m-%d")(r),a=r.getHours(),s=r.getMinutes(),l=r.getSeconds(),f=r.getUTCMilliseconds()*10+t;return y9(i,a,s,l,f)};function y9(e,t,r,i,a){if((t||r||i||a)&&(e+=" "+g0(t,2)+":"+g0(r,2),(i||a)&&(e+=":"+g0(i,2),a))){for(var s=4;a%10===0;)s-=1,a/=10;e+="."+g0(a,s)}return e}En.cleanDate=function(e,t,r){if(e===Hl)return t;if(En.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(dc(r))return uw.error("JS Dates and milliseconds are incompatible with world calendars",e),t;if(e=En.ms2DateTimeLocal(+e),!e&&t!==void 0)return t}else if(!En.isDateTime(e,r))return uw.error("unrecognized date",e),t;return e};var pK=/%\d?f/g,mK=/%h/g,yK={1:"1",2:"1",3:"2",4:"2"};function d9(e,t,r,i){e=e.replace(pK,function(s){var l=Math.min(+s.charAt(1)||6,6),f=(t/1e3%1+2).toFixed(l).slice(2).replace(/0+$/,"")||"0";return f});var a=new Date(Math.floor(t+.05));if(e=e.replace(mK,function(){return yK[r("%q")(a)]}),dc(i))try{e=vc.getComponentMethod("calendars","worldCalFmt")(e,t,i)}catch(s){return"Invalid"}return r(e)(a)}var gK=[59,59.9,59.99,59.999,59.9999];function _K(e,t){var r=kh(e+.05,qs),i=g0(Math.floor(r/Fy),2)+":"+g0(kh(Math.floor(r/Sh),60),2);if(t!=="M"){m9(t)||(t=0);var a=Math.min(kh(e/_0,60),gK[t]),s=(100+a).toFixed(t).slice(1);t>0&&(s=s.replace(/0+$/,"").replace(/[\.]$/,"")),i+=":"+s}return i}En.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+` `+s.year;else return _K(e,r)+` -`+d9(s.dayMonthYear,e,i,a);return d9(t,e,i,a)};var p9=3*qs;En.incrementMonth=function(e,t,r){r=dc(r)&&r;var i=kh(e,qs);if(e=Math.round(e-i),r)try{var a=Math.round(e/qs)+qy,s=vc.getComponentMethod("calendars","getCal")(r),l=s.fromJD(a);return t%12?s.add(l,t,"m"):s.add(l,t/12,"y"),(l.toJD()-qy)*qs+i}catch(h){lw.error("invalid ms "+e+" in calendar "+r)}var f=new Date(e+p9);return f.setUTCMonth(f.getUTCMonth()+t)+i-p9};En.findExactDates=function(e,t){for(var r=0,i=0,a=0,s=0,l,f,h=dc(t)&&vc.getComponentMethod("calendars","getCal")(t),v=0;v{"use strict";_9.exports=function(t){return t}});var fw=pe(pc=>{"use strict";var xK=Da(),bK=Th(),wK=x_(),TK=Zi().BADNUM,uw=1e-9;pc.findBin=function(e,t,r){if(xK(t.start))return r?Math.ceil((e-t.start)/t.size-uw)-1:Math.floor((e-t.start)/t.size+uw);var i=0,a=t.length,s=0,l=a>1?(t[a-1]-t[0])/(a-1):1,f,h;for(l>=0?h=r?AK:MK:h=r?kK:SK,e+=l*uw*(r?-1:1)*(l>=0?1:-1);i90&&bK.log("Long binary search..."),i-1};function AK(e,t){return et}function kK(e,t){return e>=t}pc.sorterAsc=function(e,t){return e-t};pc.sorterDes=function(e,t){return t-e};pc.distinctVals=function(e){var t=e.slice();t.sort(pc.sorterAsc);var r;for(r=t.length-1;r>-1&&t[r]===TK;r--);for(var i=t[r]-t[0]||1,a=i/(r||1)/1e4,s=[],l,f=0;f<=r;f++){var h=t[f],v=h-l;l===void 0?(s.push(h),l=h):v>a&&(i=Math.min(i,v),s.push(h),l=h)}return{vals:s,minDiff:i}};pc.roundUp=function(e,t,r){for(var i=0,a=t.length-1,s,l=0,f=r?0:1,h=r?1:0,v=r?Math.ceil:Math.floor;i0&&(i=1),r&&i)return e.sort(t)}return i?e:e.reverse()};pc.findIndexOfMin=function(e,t){t=t||wK;for(var r=1/0,i,a=0;a{"use strict";x9.exports=function(t){return Object.keys(t).sort()}});var b9=pe(Ln=>{"use strict";var Ny=Da(),CK=al().isArrayOrTypedArray;Ln.aggNums=function(e,t,r,i){var a,s;if((!i||i>r.length)&&(i=r.length),Ny(t)||(t=!1),CK(r[0])){for(s=new Array(i),a=0;ae.length-1)return e[e.length-1];var r=t%1;return r*e[Math.ceil(t)]+(1-r)*e[Math.floor(t)]}});var S9=pe((uge,M9)=>{"use strict";var w9=f0(),cw=w9.mod,EK=w9.modHalf,By=Math.PI,Ch=2*By;function LK(e){return e/180*By}function DK(e){return e/By*180}function hw(e){return Math.abs(e[1]-e[0])>Ch-1e-14}function T9(e,t){return EK(t-e,Ch)}function PK(e,t){return Math.abs(T9(e,t))}function A9(e,t){if(hw(t))return!0;var r,i;t[0]i&&(i+=Ch);var a=cw(e,Ch),s=a+Ch;return a>=r&&a<=i||s>=r&&s<=i}function zK(e,t,r,i){if(!A9(t,i))return!1;var a,s;return r[0]=a&&e<=s}function vw(e,t,r,i,a,s,l){a=a||0,s=s||0;var f=hw([r,i]),h,v,m,_,T;f?(h=0,v=By,m=Ch):r{"use strict";nd.isLeftAnchor=function(t){return t.xanchor==="left"||t.xanchor==="auto"&&t.x<=1/3};nd.isCenterAnchor=function(t){return t.xanchor==="center"||t.xanchor==="auto"&&t.x>1/3&&t.x<2/3};nd.isRightAnchor=function(t){return t.xanchor==="right"||t.xanchor==="auto"&&t.x>=2/3};nd.isTopAnchor=function(t){return t.yanchor==="top"||t.yanchor==="auto"&&t.y>=2/3};nd.isMiddleAnchor=function(t){return t.yanchor==="middle"||t.yanchor==="auto"&&t.y>1/3&&t.y<2/3};nd.isBottomAnchor=function(t){return t.yanchor==="bottom"||t.yanchor==="auto"&&t.y<=1/3}});var L9=pe(od=>{"use strict";var dw=f0().mod;od.segmentsIntersect=E9;function E9(e,t,r,i,a,s,l,f){var h=r-e,v=a-e,m=l-a,_=i-t,T=s-t,S=f-s,C=h*S-m*_;if(C===0)return null;var E=(v*S-m*T)/C,D=(v*_-h*T)/C;return D<0||D>1||E<0||E>1?null:{x:e+h*E,y:t+_*E}}od.segmentDistance=function(t,r,i,a,s,l,f,h){if(E9(t,r,i,a,s,l,f,h))return 0;var v=i-t,m=a-r,_=f-s,T=h-l,S=v*v+m*m,C=_*_+T*T,E=Math.min(w_(v,m,S,s-t,l-r),w_(v,m,S,f-t,h-r),w_(_,T,C,t-s,r-l),w_(_,T,C,i-s,a-l));return Math.sqrt(E)};function w_(e,t,r,i,a){var s=i*e+a*t;if(s<0)return i*i+a*a;if(s>r){var l=i-e,f=a-t;return l*l+f*f}else{var h=i*t-a*e;return h*h/r}}var T_,pw,C9;od.getTextLocation=function(t,r,i,a){if((t!==pw||a!==C9)&&(T_={},pw=t,C9=a),T_[i])return T_[i];var s=t.getPointAtLength(dw(i-a/2,r)),l=t.getPointAtLength(dw(i+a/2,r)),f=Math.atan((l.y-s.y)/(l.x-s.x)),h=t.getPointAtLength(dw(i,r)),v=(h.x*4+s.x+l.x)/6,m=(h.y*4+s.y+l.y)/6,_={x:v,y:m,theta:f};return T_[i]=_,_};od.clearLocationCache=function(){pw=null};od.getVisibleSegment=function(t,r,i){var a=r.left,s=r.right,l=r.top,f=r.bottom,h=0,v=t.getTotalLength(),m=v,_,T;function S(E){var D=t.getPointAtLength(E);E===0?_=D:E===v&&(T=D);var z=D.xs?D.x-s:0,B=D.yf?D.y-f:0;return Math.sqrt(z*z+B*B)}for(var C=S(h);C;){if(h+=C+i,h>m)return;C=S(h)}for(C=S(m);C;){if(m-=C+i,h>m)return;C=S(m)}return{min:h,max:m,len:m-h,total:v,isClosed:h===0&&m===v&&Math.abs(_.x-T.x)<.1&&Math.abs(_.y-T.y)<.1}};od.findPointOnPath=function(t,r,i,a){a=a||{};for(var s=a.pathLength||t.getTotalLength(),l=a.tolerance||.001,f=a.iterationLimit||30,h=t.getPointAtLength(0)[i]>t.getPointAtLength(s)[i]?-1:1,v=0,m=0,_=s,T,S,C;v0?_=T:m=T,v++}return S}});var A_=pe(Oy=>{"use strict";var mc={};Oy.throttle=function(t,r,i){var a=mc[t],s=Date.now();if(!a){for(var l in mc)mc[l].tsa.ts+r){f();return}a.timer=setTimeout(function(){f(),a.timer=null},r)};Oy.done=function(e){var t=mc[e];return!t||!t.timer?Promise.resolve():new Promise(function(r){var i=t.onDone;t.onDone=function(){i&&i(),r(),t.onDone=null}})};Oy.clear=function(e){if(e)D9(mc[e]),delete mc[e];else for(var t in mc)Oy.clear(t)};function D9(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var z9=pe((vge,P9)=>{"use strict";P9.exports=function(t){t._responsiveChartHandler&&(window.removeEventListener("resize",t._responsiveChartHandler),delete t._responsiveChartHandler)}});var I9=pe((dge,M_)=>{"use strict";M_.exports=mw;M_.exports.isMobile=mw;M_.exports.default=mw;var qK=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,NK=/CrOS/,BK=/android|ipad|playbook|silk/i;function mw(e){e||(e={});let t=e.ua;if(!t&&typeof navigator!="undefined"&&(t=navigator.userAgent),t&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string")return!1;let r=qK.test(t)&&!NK.test(t)||!!e.tablet&&BK.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}});var F9=pe((pge,R9)=>{"use strict";var OK=Da(),UK=I9();R9.exports=function(t){var r;if(t&&t.hasOwnProperty("userAgent")?r=t.userAgent:r=VK(),typeof r!="string")return!0;var i=UK({ua:{headers:{"user-agent":r}},tablet:!0,featureDetect:!1});if(!i)for(var a=r.split(" "),s=1;s-1;f--){var h=a[f];if(h.substr(0,8)==="Version/"){var v=h.substr(8).split(".")[0];if(OK(v)&&(v=+v),v>=13)return!0}}}return i};function VK(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var N9=pe((mge,q9)=>{"use strict";var HK=ja();q9.exports=function(t,r,i){var a=t.selectAll("g."+i.replace(/\s/g,".")).data(r,function(l){return l[0].trace.uid});a.exit().remove(),a.enter().append("g").attr("class",i),a.order();var s=t.classed("rangeplot")?"nodeRangePlot3":"node3";return a.each(function(l){l[0][s]=HK.select(this)}),a}});var O9=pe((yge,B9)=>{"use strict";var GK=sa();B9.exports=function(t,r){for(var i=t._context.locale,a=0;a<2;a++){for(var s=t._context.locales,l=0;l<2;l++){var f=(s[i]||{}).dictionary;if(f){var h=f[r];if(h)return h}s=GK.localeRegistry}var v=i.split("-")[0];if(v===i)break;i=v}return r}});var V9=pe((gge,U9)=>{"use strict";U9.exports=function(t){for(var r={},i=[],a=0,s=0;s{"use strict";H9.exports=function(t){for(var r=WK(t)?YK:ZK,i=[],a=0;a{"use strict";Z9.exports=function(t,r){if(!r)return t;var i=1/Math.abs(r),a=i>1?(i*t+i*r)/i:t+r,s=String(a).length;if(s>16){var l=String(r).length,f=String(t).length;if(s>=f+l){var h=parseFloat(a).toPrecision(12);h.indexOf("e+")===-1&&(a=+h)}}return a}});var X9=pe((bge,W9)=>{"use strict";var XK=Da(),jK=Zi().BADNUM,JK=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;W9.exports=function(t){return typeof t=="string"&&(t=t.replace(JK,"")),XK(t)?Number(t):jK}});var Bt=pe((wge,sk)=>{"use strict";var Uy=ja(),KK=l0().utcFormat,QK=U3().format,ek=Da(),tk=Zi(),rk=tk.FP_SAFE,$K=-rk,j9=tk.BADNUM,tt=sk.exports={};tt.adjustFormat=function(t){return!t||/^\d[.]\df/.test(t)||/[.]\d%/.test(t)?t:t==="0.f"?"~f":/^\d%/.test(t)?"~%":/^\ds/.test(t)?"~s":!/^[~,.0$]/.test(t)&&/[&fps]/.test(t)?"~"+t:t};var J9={};tt.warnBadFormat=function(e){var t=String(e);J9[t]||(J9[t]=1,tt.warn('encountered bad format: "'+t+'"'))};tt.noFormat=function(e){return String(e)};tt.numberFormat=function(e){var t;try{t=QK(tt.adjustFormat(e))}catch(r){return tt.warnBadFormat(e),tt.noFormat}return t};tt.nestedProperty=My();tt.keyedContainer=U7();tt.relativeAttr=H7();tt.isPlainObject=cc();tt.toLogRange=r_();tt.relinkPrivateKeys=W7();var Eh=al();tt.isArrayBuffer=Eh.isArrayBuffer;tt.isTypedArray=Eh.isTypedArray;tt.isArrayOrTypedArray=Eh.isArrayOrTypedArray;tt.isArray1D=Eh.isArray1D;tt.ensureArray=Eh.ensureArray;tt.concat=Eh.concat;tt.maxRowLength=Eh.maxRowLength;tt.minRowLength=Eh.minRowLength;var ak=f0();tt.mod=ak.mod;tt.modHalf=ak.modHalf;var Lh=h8();tt.valObjectMeta=Lh.valObjectMeta;tt.coerce=Lh.coerce;tt.coerce2=Lh.coerce2;tt.coerceFont=Lh.coerceFont;tt.coercePattern=Lh.coercePattern;tt.coerceHoverinfo=Lh.coerceHoverinfo;tt.coerceSelectionMarkerOpacity=Lh.coerceSelectionMarkerOpacity;tt.validate=Lh.validate;var nl=g9();tt.dateTime2ms=nl.dateTime2ms;tt.isDateTime=nl.isDateTime;tt.ms2DateTime=nl.ms2DateTime;tt.ms2DateTimeLocal=nl.ms2DateTimeLocal;tt.cleanDate=nl.cleanDate;tt.isJSDate=nl.isJSDate;tt.formatDate=nl.formatDate;tt.incrementMonth=nl.incrementMonth;tt.dateTick0=nl.dateTick0;tt.dfltRange=nl.dfltRange;tt.findExactDates=nl.findExactDates;tt.MIN_MS=nl.MIN_MS;tt.MAX_MS=nl.MAX_MS;var sd=fw();tt.findBin=sd.findBin;tt.sorterAsc=sd.sorterAsc;tt.sorterDes=sd.sorterDes;tt.distinctVals=sd.distinctVals;tt.roundUp=sd.roundUp;tt.sort=sd.sort;tt.findIndexOfMin=sd.findIndexOfMin;tt.sortObjectKeys=b_();var yc=b9();tt.aggNums=yc.aggNums;tt.len=yc.len;tt.mean=yc.mean;tt.geometricMean=yc.geometricMean;tt.median=yc.median;tt.midRange=yc.midRange;tt.variance=yc.variance;tt.stdev=yc.stdev;tt.interp=yc.interp;var Pu=f_();tt.init2dArray=Pu.init2dArray;tt.transposeRagged=Pu.transposeRagged;tt.dot=Pu.dot;tt.translationMatrix=Pu.translationMatrix;tt.rotationMatrix=Pu.rotationMatrix;tt.rotationXYMatrix=Pu.rotationXYMatrix;tt.apply3DTransform=Pu.apply3DTransform;tt.apply2DTransform=Pu.apply2DTransform;tt.apply2DTransform2=Pu.apply2DTransform2;tt.convertCssMatrix=Pu.convertCssMatrix;tt.inverseTransformMatrix=Pu.inverseTransformMatrix;var Sf=S9();tt.deg2rad=Sf.deg2rad;tt.rad2deg=Sf.rad2deg;tt.angleDelta=Sf.angleDelta;tt.angleDist=Sf.angleDist;tt.isFullCircle=Sf.isFullCircle;tt.isAngleInsideSector=Sf.isAngleInsideSector;tt.isPtInsideSector=Sf.isPtInsideSector;tt.pathArc=Sf.pathArc;tt.pathSector=Sf.pathSector;tt.pathAnnulus=Sf.pathAnnulus;var w0=k9();tt.isLeftAnchor=w0.isLeftAnchor;tt.isCenterAnchor=w0.isCenterAnchor;tt.isRightAnchor=w0.isRightAnchor;tt.isTopAnchor=w0.isTopAnchor;tt.isMiddleAnchor=w0.isMiddleAnchor;tt.isBottomAnchor=w0.isBottomAnchor;var T0=L9();tt.segmentsIntersect=T0.segmentsIntersect;tt.segmentDistance=T0.segmentDistance;tt.getTextLocation=T0.getTextLocation;tt.clearLocationCache=T0.clearLocationCache;tt.getVisibleSegment=T0.getVisibleSegment;tt.findPointOnPath=T0.findPointOnPath;var C_=mn();tt.extendFlat=C_.extendFlat;tt.extendDeep=C_.extendDeep;tt.extendDeepAll=C_.extendDeepAll;tt.extendDeepNoArrays=C_.extendDeepNoArrays;var yw=Th();tt.log=yw.log;tt.warn=yw.warn;tt.error=yw.error;var eQ=h0();tt.counterRegex=eQ.counter;var gw=A_();tt.throttle=gw.throttle;tt.throttleDone=gw.done;tt.clearThrottle=gw.clear;var zu=Iy();tt.getGraphDiv=zu.getGraphDiv;tt.isPlotDiv=zu.isPlotDiv;tt.removeElement=zu.removeElement;tt.addStyleRule=zu.addStyleRule;tt.addRelatedStyleRule=zu.addRelatedStyleRule;tt.deleteRelatedStyleRule=zu.deleteRelatedStyleRule;tt.setStyleOnHover=zu.setStyleOnHover;tt.getFullTransformMatrix=zu.getFullTransformMatrix;tt.getElementTransformMatrix=zu.getElementTransformMatrix;tt.getElementAndAncestors=zu.getElementAndAncestors;tt.equalDomRects=zu.equalDomRects;tt.clearResponsive=z9();tt.preserveDrawingBuffer=F9();tt.makeTraceGroups=N9();tt._=O9();tt.notifier=Q3();tt.filterUnique=V9();tt.filterVisible=G9();tt.pushUnique=tw();tt.increment=Y9();tt.cleanNumber=X9();tt.ensureNumber=function(t){return ek(t)?(t=Number(t),t>rk||t<$K?j9:t):j9};tt.isIndex=function(e,t){return t!==void 0&&e>=t?!1:ek(e)&&e>=0&&e%1===0};tt.noop=u_();tt.identity=x_();tt.repeat=function(e,t){for(var r=new Array(t),i=0;ir?Math.max(r,Math.min(t,e)):Math.max(t,Math.min(r,e))};tt.bBoxIntersect=function(e,t,r){return r=r||0,e.left<=t.right+r&&t.left<=e.right+r&&e.top<=t.bottom+r&&t.top<=e.bottom+r};tt.simpleMap=function(e,t,r,i,a){for(var s=e.length,l=new Array(s),f=0;f=Math.pow(2,r)?a>10?(tt.warn("randstr failed uniqueness"),l):e(t,r,i,(a||0)+1):l};tt.OptionControl=function(e,t){e||(e={}),t||(t="opt");var r={};return r.optionList=[],r._newoption=function(i){i[t]=e,r[i.name]=i,r.optionList.push(i)},r["_"+t]=e,r};tt.smooth=function(e,t){if(t=Math.round(t)||0,t<2)return e;var r=e.length,i=2*r,a=2*t-1,s=new Array(a),l=new Array(r),f,h,v,m;for(f=0;f=i&&(v-=i*Math.floor(v/i)),v<0?v=-1-v:v>=r&&(v=i-1-v),m+=e[v]*s[h];l[f]=m}return l};tt.syncOrAsync=function(e,t,r){var i,a;function s(){return tt.syncOrAsync(e,t,r)}for(;e.length;)if(a=e.splice(0,1)[0],i=a(t),i&&i.then)return i.then(s);return r&&r(t)};tt.stripTrailingSlash=function(e){return e.substr(-1)==="/"?e.substr(0,e.length-1):e};tt.noneOrAll=function(e,t,r){if(e){var i=!1,a=!0,s,l;for(s=0;s0?a:0})};tt.fillArray=function(e,t,r,i){if(i=i||tt.identity,tt.isArrayOrTypedArray(e))for(var a=0;aaQ.test(window.navigator.userAgent);var iQ=/Firefox\/(\d+)\.\d+/;tt.getFirefoxVersion=function(){var e=iQ.exec(window.navigator.userAgent);if(e&&e.length===2){var t=parseInt(e[1]);if(!isNaN(t))return t}return null};tt.isD3Selection=function(e){return e instanceof Uy.selection};tt.ensureSingle=function(e,t,r,i){var a=e.select(t+(r?"."+r:""));if(a.size())return a;var s=e.append(t);return r&&s.classed(r,!0),i&&s.call(i),s};tt.ensureSingleById=function(e,t,r,i){var a=e.select(t+"#"+r);if(a.size())return a;var s=e.append(t).attr("id",r);return i&&s.call(i),s};tt.objectFromPath=function(e,t){for(var r=e.split("."),i,a=i={},s=0;s1?a+l[1]:"";if(s&&(l.length>1||f.length>4||r))for(;i.test(f);)f=f.replace(i,"$1"+s+"$2");return f+h};tt.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var ok=/^\w*$/;tt.templateString=function(e,t){var r={};return e.replace(tt.TEMPLATE_STRING_REGEX,function(i,a){var s;return ok.test(a)?s=t[a]:(r[a]=r[a]||tt.nestedProperty(t,a).get,s=r[a](!0)),s!==void 0?s:""})};var sQ={max:10,count:0,name:"hovertemplate"};tt.hovertemplateString=e=>_w(Y1($v({},e),{opts:sQ}));var lQ={max:10,count:0,name:"texttemplate"};tt.texttemplateString=e=>_w(Y1($v({},e),{opts:lQ}));var uQ=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function fQ(e){var t=e.match(uQ);return t?{key:t[1],op:t[2],number:Number(t[3])}:{key:e,op:null,number:null}}var cQ={max:10,count:0,name:"texttemplate",parseMultDiv:!0};tt.texttemplateStringForShapes=e=>_w(Y1($v({},e),{opts:cQ}));var K9=/^[:|\|]/;function _w({data:e=[],locale:t,fallback:r,labels:i={},opts:a,template:s}){return s.replace(tt.TEMPLATE_STRING_REGEX,(l,f,h)=>{let v=["xother","yother"].includes(f),m=["_xother","_yother"].includes(f),_=["_xother_","_yother_"].includes(f),T=["xother_","yother_"].includes(f),S=v||m||T||_;(m||_)&&(f=f.substring(1)),(T||_)&&(f=f.substring(0,f.length-1));let C=null,E=null;if(a.parseMultDiv){var D=fQ(f);f=D.key,C=D.op,E=D.number}let z;if(S){if(i[f]===void 0)return"";z=i[f]}else for(let O of e)if(O){if(O.hasOwnProperty(f)){z=O[f];break}if(ok.test(f)||(z=tt.nestedProperty(O,f).get(!0)),z!==void 0)break}if(z===void 0){let{count:O,max:H,name:V}=a,W=r===!1?l:r;return O=k_&&l<=Q9,v=f>=k_&&f<=Q9;if(h&&(i=10*i+l-k_),v&&(a=10*a+f-k_),!h||!v){if(i!==a)return i-a;if(l!==f)return l-f}}return a-i};var b0=2e9;tt.seedPseudoRandom=function(){b0=2e9};tt.pseudoRandom=function(){var e=b0;return b0=(69069*b0+1)%4294967296,Math.abs(b0-e)<429496729?tt.pseudoRandom():b0/4294967296};tt.fillText=function(e,t,r){var i=Array.isArray(r)?function(l){r.push(l)}:function(l){r.text=l},a=tt.extractOption(e,t,"htx","hovertext");if(tt.isValidTextValue(a))return i(a);var s=tt.extractOption(e,t,"tx","text");if(tt.isValidTextValue(s))return i(s)};tt.isValidTextValue=function(e){return e||e===0};tt.formatPercent=function(e,t){t=t||0;for(var r=(Math.round(100*e*Math.pow(10,t))*Math.pow(.1,t)).toFixed(t)+"%",i=0;i1&&(v=1):v=0,tt.strTranslate(a-v*(r+l),s-v*(i+f))+tt.strScale(v)+(h?"rotate("+h+(t?"":" "+r+" "+i)+")":"")};tt.setTransormAndDisplay=function(e,t){e.attr("transform",tt.getTextTransform(t)),e.style("display",t.scale?null:"none")};tt.ensureUniformFontSize=function(e,t){var r=tt.extendFlat({},t);return r.size=Math.max(t.size,e._fullLayout.uniformtext.minsize||0),r};tt.join2=function(e,t,r){var i=e.length;return i>1?e.slice(0,-1).join(t)+r+e[i-1]:e.join(t)};tt.bigFont=function(e){return Math.round(1.2*e)};var $9=tt.getFirefoxVersion(),hQ=$9!==null&&$9<86;tt.getPositionFromD3Event=function(){return hQ?[Uy.event.layerX,Uy.event.layerY]:[Uy.event.offsetX,Uy.event.offsetY]}});var fk=pe(()=>{"use strict";var vQ=Bt(),lk={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(xw in lk)uk=xw.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),vQ.addStyleRule(uk,lk[xw]);var uk,xw});var bw=pe((Sge,ck)=>{ck.exports=!0});var Tw=pe((kge,hk)=>{"use strict";var dQ=bw(),ww;typeof window.matchMedia=="function"?ww=!window.matchMedia("(hover: none)").matches:ww=dQ;hk.exports=ww});var D_=pe((Cge,Aw)=>{"use strict";var A0=typeof Reflect=="object"?Reflect:null,vk=A0&&typeof A0.apply=="function"?A0.apply:function(t,r,i){return Function.prototype.apply.call(t,r,i)},E_;A0&&typeof A0.ownKeys=="function"?E_=A0.ownKeys:Object.getOwnPropertySymbols?E_=function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:E_=function(t){return Object.getOwnPropertyNames(t)};function pQ(e){console&&console.warn&&console.warn(e)}var pk=Number.isNaN||function(t){return t!==t};function Yi(){Yi.init.call(this)}Aw.exports=Yi;Aw.exports.once=_Q;Yi.EventEmitter=Yi;Yi.prototype._events=void 0;Yi.prototype._eventsCount=0;Yi.prototype._maxListeners=void 0;var dk=10;function L_(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(Yi,"defaultMaxListeners",{enumerable:!0,get:function(){return dk},set:function(e){if(typeof e!="number"||e<0||pk(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");dk=e}});Yi.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};Yi.prototype.setMaxListeners=function(t){if(typeof t!="number"||t<0||pk(t))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+t+".");return this._maxListeners=t,this};function mk(e){return e._maxListeners===void 0?Yi.defaultMaxListeners:e._maxListeners}Yi.prototype.getMaxListeners=function(){return mk(this)};Yi.prototype.emit=function(t){for(var r=[],i=1;i0&&(l=r[0]),l instanceof Error)throw l;var f=new Error("Unhandled error."+(l?" ("+l.message+")":""));throw f.context=l,f}var h=s[t];if(h===void 0)return!1;if(typeof h=="function")vk(h,this,r);else for(var v=h.length,m=bk(h,v),i=0;i0&&l.length>a&&!l.warned){l.warned=!0;var f=new Error("Possible EventEmitter memory leak detected. "+l.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");f.name="MaxListenersExceededWarning",f.emitter=e,f.type=t,f.count=l.length,pQ(f)}return e}Yi.prototype.addListener=function(t,r){return yk(this,t,r,!1)};Yi.prototype.on=Yi.prototype.addListener;Yi.prototype.prependListener=function(t,r){return yk(this,t,r,!0)};function mQ(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function gk(e,t,r){var i={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},a=mQ.bind(i);return a.listener=r,i.wrapFn=a,a}Yi.prototype.once=function(t,r){return L_(r),this.on(t,gk(this,t,r)),this};Yi.prototype.prependOnceListener=function(t,r){return L_(r),this.prependListener(t,gk(this,t,r)),this};Yi.prototype.removeListener=function(t,r){var i,a,s,l,f;if(L_(r),a=this._events,a===void 0)return this;if(i=a[t],i===void 0)return this;if(i===r||i.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete a[t],a.removeListener&&this.emit("removeListener",t,i.listener||r));else if(typeof i!="function"){for(s=-1,l=i.length-1;l>=0;l--)if(i[l]===r||i[l].listener===r){f=i[l].listener,s=l;break}if(s<0)return this;s===0?i.shift():yQ(i,s),i.length===1&&(a[t]=i[0]),a.removeListener!==void 0&&this.emit("removeListener",t,f||r)}return this};Yi.prototype.off=Yi.prototype.removeListener;Yi.prototype.removeAllListeners=function(t){var r,i,a;if(i=this._events,i===void 0)return this;if(i.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):i[t]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete i[t]),this;if(arguments.length===0){var s=Object.keys(i),l;for(a=0;a=0;a--)this.removeListener(t,r[a]);return this};function _k(e,t,r){var i=e._events;if(i===void 0)return[];var a=i[t];return a===void 0?[]:typeof a=="function"?r?[a.listener||a]:[a]:r?gQ(a):bk(a,a.length)}Yi.prototype.listeners=function(t){return _k(this,t,!0)};Yi.prototype.rawListeners=function(t){return _k(this,t,!1)};Yi.listenerCount=function(e,t){return typeof e.listenerCount=="function"?e.listenerCount(t):xk.call(e,t)};Yi.prototype.listenerCount=xk;function xk(e){var t=this._events;if(t!==void 0){var r=t[e];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}Yi.prototype.eventNames=function(){return this._eventsCount>0?E_(this._events):[]};function bk(e,t){for(var r=new Array(t),i=0;i{"use strict";var Mw=D_().EventEmitter,bQ={init:function(e){if(e._ev instanceof Mw)return e;var t=new Mw,r=new Mw;return e._ev=t,e._internalEv=r,e.on=t.on.bind(t),e.once=t.once.bind(t),e.removeListener=t.removeListener.bind(t),e.removeAllListeners=t.removeAllListeners.bind(t),e._internalOn=r.on.bind(r),e._internalOnce=r.once.bind(r),e._removeInternalListener=r.removeListener.bind(r),e._removeAllInternalListeners=r.removeAllListeners.bind(r),e.emit=function(i,a){t.emit(i,a),r.emit(i,a)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,t,r){var i,a=e._ev;if(!a)return;var s=a._events[t];if(!s)return;function l(h){if(h.listener){if(a.removeListener(t,h.listener),!h.fired)return h.fired=!0,h.listener.apply(a,[r])}else return h.apply(a,[r])}s=Array.isArray(s)?s:[s];var f;for(f=0;f{"use strict";var Ak=Bt(),wQ=ad().dfltConfig;function TQ(e,t){for(var r=[],i,a=0;awQ.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};gc.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};gc.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};gc.undo=function(t){var r,i;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,i=0;i=t.undoQueue.queue.length)){for(r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,i=0;i{"use strict";kk.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var k0=pe(Wn=>{"use strict";var Gl=sa(),Hy=Bt(),z_=ys(),kw=m0(),AQ=Sw(),MQ=Ry(),SQ=ad().configAttributes,Ck=il(),Iu=Hy.extendDeepAll,M0=Hy.isPlainObject,kQ=Hy.isArrayOrTypedArray,I_=Hy.nestedProperty,CQ=Hy.valObjectMeta,Cw="_isSubplotObj",R_="_isLinkedToArray",EQ="_arrayAttrRegexps",Lk="_deprecated",Ew=[Cw,R_,EQ,Lk];Wn.IS_SUBPLOT_OBJ=Cw;Wn.IS_LINKED_TO_ARRAY=R_;Wn.DEPRECATED=Lk;Wn.UNDERSCORE_ATTRS=Ew;Wn.get=function(){var e={};return Gl.allTypes.forEach(function(t){e[t]=DQ(t)}),{defs:{valObjects:CQ,metaKeys:Ew.concat(["description","role","editType","impliedEdits"]),editType:{traces:Ck.traces,layout:Ck.layout},impliedEdits:{}},traces:e,layout:PQ(),frames:zQ(),animation:S0(MQ),config:S0(SQ)}};Wn.crawl=function(e,t,r,i){var a=r||0;i=i||"",Object.keys(e).forEach(function(s){var l=e[s];if(Ew.indexOf(s)===-1){var f=(i?i+".":"")+s;t(l,s,e,a,f),!Wn.isValObject(l)&&M0(l)&&s!=="impliedEdits"&&Wn.crawl(l,t,a+1,f)}})};Wn.isValObject=function(e){return e&&e.valType!==void 0};Wn.findArrayAttributes=function(e){var t=[],r=[],i=[],a,s;function l(h,v,m,_){r=r.slice(0,_).concat([v]),i=i.slice(0,_).concat([h&&h._isLinkedToArray]);var T=h&&(h.valType==="data_array"||h.arrayOk===!0)&&!(r[_-1]==="colorbar"&&(v==="ticktext"||v==="tickvals"));T&&f(a,0,"")}function f(h,v,m){var _=h[r[v]],T=m+r[v];if(v===r.length-1)kQ(_)&&t.push(s+T);else if(i[v]){if(Array.isArray(_))for(var S=0;S<_.length;S++)M0(_[S])&&f(_[S],v+1,T+"["+S+"].")}else M0(_)&&f(_,v+1,T+".")}return a=e,s="",Wn.crawl(z_,l),e._module&&e._module.attributes&&Wn.crawl(e._module.attributes,l),t};Wn.getTraceValObject=function(e,t){var r=t[0],i=1,a,s,l=e._module;if(l||(l=(Gl.modules[e.type||z_.type.dflt]||{})._module),!l)return!1;if(a=l.attributes,s=a&&a[r],!s){var f=l.basePlotModule;f&&f.attributes&&(s=f.attributes[r])}return s||(s=z_[r]),Dk(s,t,i)};Wn.getLayoutValObject=function(e,t){var r=LQ(e,t[0]);return Dk(r,t,1)};function LQ(e,t){var r,i,a,s,l=e._basePlotModules;if(l){var f;for(r=0;r=s.length)return!1;if(e.dimensions===2){if(r++,t.length===r)return e;var l=t[r];if(!P_(l))return!1;e=s[a][l]}else e=s[a]}else e=s}}return e}function P_(e){return e===Math.round(e)&&e>=0}function DQ(e){var t,r;t=Gl.modules[e]._module,r=t.basePlotModule;var i={};i.type=null;var a=Iu({},z_),s=Iu({},t.attributes);Wn.crawl(s,function(h,v,m,_,T){I_(a,T).set(void 0),h===void 0&&I_(s,T).set(void 0)}),Iu(i,a),Gl.traceIs(e,"noOpacity")&&delete i.opacity,Gl.traceIs(e,"showLegend")||(delete i.showlegend,delete i.legendgroup),Gl.traceIs(e,"noHover")&&(delete i.hoverinfo,delete i.hoverlabel),t.selectPoints||delete i.selectedpoints,Iu(i,s),r.attributes&&Iu(i,r.attributes),i.type=e;var l={meta:t.meta||{},categories:t.categories||{},animatable:!!t.animatable,type:e,attributes:S0(i)};if(t.layoutAttributes){var f={};Iu(f,t.layoutAttributes),l.layoutAttributes=S0(f)}return t.animatable||Wn.crawl(l,function(h){Wn.isValObject(h)&&"anim"in h&&delete h.anim}),l}function PQ(){var e={},t,r;Iu(e,kw);for(t in Gl.subplotsRegistry)if(r=Gl.subplotsRegistry[t],!!r.layoutAttributes)if(Array.isArray(r.attr))for(var i=0;i{"use strict";var C0=Bt(),NQ=ys(),Dh="templateitemname",Lw={name:{valType:"string",editType:"none"}};Lw[Dh]={valType:"string",editType:"calc"};ld.templatedArray=function(e,t){return t._isLinkedToArray=e,t.name=Lw.name,t[Dh]=Lw[Dh],t};ld.traceTemplater=function(e){var t={},r,i;for(r in e)i=e[r],Array.isArray(i)&&i.length&&(t[r]=0);function a(s){r=C0.coerce(s,{},NQ,"type");var l={type:r,_template:null};if(r in t){i=e[r];var f=t[r]%i.length;t[r]++,l._template=i[f]}return l}return{newTrace:a}};ld.newContainer=function(e,t,r){var i=e._template,a=i&&(i[t]||r&&i[r]);C0.isPlainObject(a)||(a=null);var s=e[t]={_template:a};return s};ld.arrayTemplater=function(e,t,r){var i=e._template,a=i&&i[zk(t)],s=i&&i[t];(!Array.isArray(s)||!s.length)&&(s=[]);var l={};function f(v){var m={name:v.name,_input:v},_=m[Dh]=v[Dh];if(!Pk(_))return m._template=a,m;for(var T=0;T=i&&(r._input||{})._templateitemname;s&&(a=i);var l=t+"["+a+"]",f;function h(){f={},s&&(f[l]={},f[l][Dh]=s)}h();function v(S,C){f[S]=C}function m(S,C){s?C0.nestedProperty(f[l],S).set(C):f[l+"."+S]=C}function _(){var S=f;return h(),S}function T(S,C){S&&m(S,C);var E=_();for(var D in E)C0.nestedProperty(e,D).set(E[D])}return{modifyBase:v,modifyItem:m,getUpdateObj:_,applyUpdate:T}}});var Ao=pe((Ige,Ik)=>{"use strict";var Gy=h0().counter;Ik.exports={idRegex:{x:Gy("x","( domain)?"),y:Gy("y","( domain)?")},attrRegex:Gy("[xy]axis"),xAxisMatch:Gy("xaxis"),yAxisMatch:Gy("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var Xn=pe(Ns=>{"use strict";var BQ=sa(),Dw=Ao();Ns.id2name=function(t){if(!(typeof t!="string"||!t.match(Dw.AX_ID_PATTERN))){var r=t.split(" ")[0].substr(1);return r==="1"&&(r=""),t.charAt(0)+"axis"+r}};Ns.name2id=function(t){if(t.match(Dw.AX_NAME_PATTERN)){var r=t.substr(5);return r==="1"&&(r=""),t.charAt(0)+r}};Ns.cleanId=function(t,r,i){var a=/( domain)$/.test(t);if(!(typeof t!="string"||!t.match(Dw.AX_ID_PATTERN))&&!(r&&t.charAt(0)!==r)&&!(a&&!i)){var s=t.split(" ")[0].substr(1).replace(/^0+/,"");return s==="1"&&(s=""),t.charAt(0)+s+(a&&i?" domain":"")}};Ns.list=function(e,t,r){var i=e._fullLayout;if(!i)return[];var a=Ns.listIds(e,t),s=new Array(a.length),l;for(l=0;li?1:-1:+(e.substr(1)||1)-+(t.substr(1)||1)};Ns.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function Rk(e,t){if(t&&t.length){for(var r=0;r{"use strict";function OQ(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".outline-controllers").remove()}function UQ(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}Fk.exports={clearOutlineControllers:OQ,clearOutline:UQ}});var F_=pe((qge,qk)=>{"use strict";qk.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var B_=pe(N_=>{"use strict";var q_=sa(),Nge=Ao().SUBPLOT_PATTERN;N_.getSubplotCalcData=function(e,t,r){var i=q_.subplotsRegistry[t];if(!i)return[];for(var a=i.attr,s=[],l=0;l{"use strict";var VQ=sa(),E0=Bt();ud.manageCommandObserver=function(e,t,r,i){var a={},s=!0;t&&t._commandObserver&&(a=t._commandObserver),a.cache||(a.cache={}),a.lookupTable={};var l=ud.hasSimpleAPICommandBindings(e,r,a.lookupTable);if(t&&t._commandObserver){if(l)return a;if(t._commandObserver.remove)return t._commandObserver.remove(),t._commandObserver=null,a}if(l){Nk(e,l,a.cache),a.check=function(){if(s){var m=Nk(e,l,a.cache);return m.changed&&i&&a.lookupTable[m.value]!==void 0&&(a.disable(),Promise.resolve(i({value:m.value,type:l.type,prop:l.prop,traces:l.traces,index:a.lookupTable[m.value]})).then(a.enable,a.enable)),m.changed}};for(var f=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],h=0;h0?".":"")+a;E0.isPlainObject(s)?Pw(s,t,l,i+1):t(l,a,s)}})}});var eo=pe((Uge,tC)=>{"use strict";var Xk=ja(),GQ=l0().timeFormatLocale,ZQ=U3().formatLocale,Zy=Da(),YQ=V3(),ti=sa(),jk=k0(),WQ=Ii(),Pr=Bt(),Jk=Oa(),Vk=Zi().BADNUM,Bs=Xn(),XQ=Ph().clearOutline,jQ=F_(),zw=Ry(),JQ=Sw(),KQ=B_().getModuleCalcData,Hk=Pr.relinkPrivateKeys,fd=Pr._,_r=tC.exports={};Pr.extendFlat(_r,ti);_r.attributes=ys();_r.attributes.type.values=_r.allTypes;_r.fontAttrs=qo();_r.layoutAttributes=m0();var U_=Uk();_r.executeAPICommand=U_.executeAPICommand;_r.computeAPICommandBindings=U_.computeAPICommandBindings;_r.manageCommandObserver=U_.manageCommandObserver;_r.hasSimpleAPICommandBindings=U_.hasSimpleAPICommandBindings;_r.redrawText=function(e){return e=Pr.getGraphDiv(e),new Promise(function(t){setTimeout(function(){e._fullLayout&&(ti.getComponentMethod("annotations","draw")(e),ti.getComponentMethod("legend","draw")(e),ti.getComponentMethod("colorbar","draw")(e),t(_r.previousPromises(e)))},300)})};_r.resize=function(e){e=Pr.getGraphDiv(e);var t,r=new Promise(function(i,a){(!e||Pr.isHidden(e))&&a(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(t=e._resolveResize),e._resolveResize=i,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||Pr.isHidden(e)){i(e);return}delete e.layout.width,delete e.layout.height;var s=e.changed;e.autoplay=!0,ti.call("relayout",e,{autosize:!0}).then(function(){e.changed=s,e._resolveResize===i&&(delete e._resolveResize,i(e))})},100)});return t&&t(r),r};_r.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};_r.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var t=e._fullLayout,r=Pr.ensureSingle(t._paper,"text","js-plot-link-container",function(h){h.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:Jk.defaultLine,"pointer-events":"all"}).each(function(){var v=Xk.select(this);v.append("tspan").classed("js-link-to-tool",!0),v.append("tspan").classed("js-link-spacer",!0),v.append("tspan").classed("js-sourcelinks",!0)})}),i=r.node(),a={y:t._paper.attr("height")-9};document.body.contains(i)&&i.getComputedTextLength()>=t.width-20?(a["text-anchor"]="start",a.x=5):(a["text-anchor"]="end",a.x=t._paper.attr("width")-7),r.attr(a);var s=r.select(".js-link-to-tool"),l=r.select(".js-link-spacer"),f=r.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&QQ(e,s),l.text(s.text()&&f.text()?" - ":"")}};function QQ(e,t){t.text("");var r=t.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)r.on("click",function(){_r.sendDataToCloud(e)});else{var i=window.location.pathname.split("/"),a=window.location.search;r.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+i[2].split(".")[0]+"/"+i[1]+a})}}_r.sendDataToCloud=function(e){var t=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(t){e.emit("plotly_beforeexport");var r=Xk.select(e).append("div").attr("id","hiddenform").style("display","none"),i=r.append("form").attr({action:t+"/external",method:"post",target:"_blank"}),a=i.append("input").attr({type:"text",name:"data"});return a.node().value=_r.graphJson(e,!1,"keepdata"),i.node().submit(),r.remove(),e.emit("plotly_afterexport"),!1}};var $Q=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],e$=["year","month","dayMonth","dayMonthYear"];_r.supplyDefaults=function(e,t){var r=t&&t.skipUpdateCalc,i=e._fullLayout||{};if(i._skipDefaults){delete i._skipDefaults;return}var a=e._fullLayout={},s=e.layout||{},l=e._fullData||[],f=e._fullData=[],h=e.data||[],v=e.calcdata||[],m=e._context||{},_;e._transitionData||_r.createTransitionData(e),a._dfltTitle={plot:fd(e,"Click to enter Plot title"),subtitle:fd(e,"Click to enter Plot subtitle"),x:fd(e,"Click to enter X axis title"),y:fd(e,"Click to enter Y axis title"),colorbar:fd(e,"Click to enter Colorscale title"),annotation:fd(e,"new text")},a._traceWord=fd(e,"trace");var T=Gk(e,$Q);if(a._mapboxAccessToken=m.mapboxAccessToken,i._initialAutoSizeIsDone){var S=i.width,C=i.height;_r.supplyLayoutGlobalDefaults(s,a,T),s.width||(a.width=S),s.height||(a.height=C),_r.sanitizeMargins(a)}else{_r.supplyLayoutGlobalDefaults(s,a,T);var E=!s.width||!s.height,D=a.autosize,z=m.autosizable,B=E&&(D||z);B?_r.plotAutoSize(e,s,a):E&&_r.sanitizeMargins(a),!D&&E&&(s.width=a.width,s.height=a.height)}a._d3locale=a$(T,a.separators),a._extraFormat=Gk(e,e$),a._initialAutoSizeIsDone=!0,a._dataLength=h.length,a._modules=[],a._visibleModules=[],a._basePlotModules=[];var q=a._subplots=r$(),I=a._splomAxes={x:{},y:{}},O=a._splomSubplots={};a._splomGridDflt={},a._scatterStackOpts={},a._firstScatter={},a._alignmentOpts={},a._colorAxes={},a._requestRangeslider={},a._traceUids=t$(l,h),_r.supplyDataDefaults(h,f,s,a);var H=Object.keys(I.x),V=Object.keys(I.y);if(H.length>1&&V.length>1){for(ti.getComponentMethod("grid","sizeDefaults")(s,a),_=0;_15&&V.length>15&&a.shapes.length===0&&a.images.length===0,_r.linkSubplots(f,a,l,i),_r.cleanPlot(f,a,l,i);var oe=!!(i._has&&i._has("cartesian")),fe=!!(a._has&&a._has("cartesian")),ve=oe,Se=fe;ve&&!Se?i._bgLayer.remove():Se&&!ve&&(a._shouldCreateBgLayer=!0),i._zoomlayer&&!e._dragging&&XQ({_fullLayout:i}),i$(f,a),Hk(a,i),ti.getComponentMethod("colorscale","crossTraceDefaults")(f,a),a._preGUI||(a._preGUI={}),a._tracePreGUI||(a._tracePreGUI={});var Me=a._tracePreGUI,Ae={},we;for(we in Me)Ae[we]="old";for(_=0;_0){var m=1-2*s;l=Math.round(m*l),f=Math.round(m*f)}}var _=_r.layoutAttributes.width.min,T=_r.layoutAttributes.height.min;l<_&&(l=_),f1,C=!r.height&&Math.abs(i.height-f)>1;(C||S)&&(S&&(i.width=l),C&&(i.height=f)),t._initialAutoSize||(t._initialAutoSize={width:l,height:f}),_r.sanitizeMargins(i)};_r.supplyLayoutModuleDefaults=function(e,t,r,i){var a=ti.componentsRegistry,s=t._basePlotModules,l,f,h,v=ti.subplotsRegistry.cartesian;for(l in a)h=a[l],h.includeBasePlot&&h.includeBasePlot(e,t);s.length||s.push(v),t._has("cartesian")&&(ti.getComponentMethod("grid","contentDefaults")(e,t),v.finalizeSubplots(e,t));for(var m in t._subplots)t._subplots[m].sort(Pr.subplotSort);for(f=0;f1&&(r.l/=D,r.r/=D)}if(T){var z=(r.t+r.b)/T;z>1&&(r.t/=z,r.b/=z)}var B=r.xl!==void 0?r.xl:r.x,q=r.xr!==void 0?r.xr:r.x,I=r.yt!==void 0?r.yt:r.y,O=r.yb!==void 0?r.yb:r.y;S[t]={l:{val:B,size:r.l+E},r:{val:q,size:r.r+E},b:{val:O,size:r.b+E},t:{val:I,size:r.t+E}},C[t]=1}if(!i._replotting)return _r.doAutoMargin(e)}};function o$(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var t=Bs.list(e,"",!0);for(var r in t)if(t[r].autoshift||t[r].shift)return!0;return!1}_r.doAutoMargin=function(e){var t=e._fullLayout,r=t.width,i=t.height;t._size||(t._size={}),Kk(t);var a=t._size,s=t.margin,l={t:0,b:0,l:0,r:0},f=Pr.extendFlat({},a),h=s.l,v=s.r,m=s.t,_=s.b,T=t._pushmargin,S=t._pushmarginIds,C=t.minreducedwidth,E=t.minreducedheight;if(s.autoexpand!==!1){for(var D in T)S[D]||delete T[D];var z=e._fullLayout._reservedMargin;for(var B in z)for(var q in z[B]){var I=z[B][q];l[q]=Math.max(l[q],I)}T.base={l:{val:0,size:h},r:{val:1,size:v},t:{val:1,size:m},b:{val:0,size:_}};for(var O in l){var H=0;for(var V in T)V!=="base"&&Zy(T[V][O].size)&&(H=T[V][O].size>H?T[V][O].size:H);var W=Math.max(0,s[O]-H);l[O]=Math.max(0,l[O]-W)}for(var J in T){var te=T[J].l||{},ne=T[J].b||{},oe=te.val,fe=te.size,ve=ne.val,Se=ne.size,Me=r-l.r-l.l,Ae=i-l.t-l.b;for(var we in T){if(Zy(fe)&&T[we].r){var Te=T[we].r.val,Ce=T[we].r.size;if(Te>oe){var Le=(fe*Te+(Ce-Me)*oe)/(Te-oe),Ke=(Ce*(1-oe)+(fe-Me)*(1-Te))/(Te-oe);Le+Ke>h+v&&(h=Le,v=Ke)}}if(Zy(Se)&&T[we].t){var lt=T[we].t.val,at=T[we].t.size;if(lt>ve){var gt=(Se*lt+(at-Ae)*ve)/(lt-ve),Ye=(at*(1-ve)+(Se-Ae)*(1-lt))/(lt-ve);gt+Ye>_+m&&(_=gt,m=Ye)}}}}}var St=Pr.constrain(r-s.l-s.r,Qk,C),it=Pr.constrain(i-s.t-s.b,$k,E),mt=Math.max(0,r-St),bt=Math.max(0,i-it);if(mt){var vt=(h+v)/mt;vt>1&&(h/=vt,v/=vt)}if(bt){var de=(_+m)/bt;de>1&&(_/=de,m/=de)}if(a.l=Math.round(h)+l.l,a.r=Math.round(v)+l.r,a.t=Math.round(m)+l.t,a.b=Math.round(_)+l.b,a.p=Math.round(s.pad),a.w=Math.round(r)-a.l-a.r,a.h=Math.round(i)-a.t-a.b,!t._replotting&&(_r.didMarginChange(f,a)||o$(e))){"_redrawFromAutoMarginCount"in t?t._redrawFromAutoMarginCount++:t._redrawFromAutoMarginCount=1;var De=3*(1+Object.keys(S).length);if(t._redrawFromAutoMarginCount1)return!0}return!1};_r.graphJson=function(e,t,r,i,a,s){(a&&t&&!e._fullData||a&&!t&&!e._fullLayout)&&_r.supplyDefaults(e);var l=a?e._fullData:e.data,f=a?e._fullLayout:e.layout,h=(e._transitionData||{})._frames;function v(T,S){if(typeof T=="function")return S?"_function_":null;if(Pr.isPlainObject(T)){var C={},E;return Object.keys(T).sort().forEach(function(q){if(["_","["].indexOf(q.charAt(0))===-1){if(typeof T[q]=="function"){S&&(C[q]="_function");return}if(r==="keepdata"){if(q.substr(q.length-3)==="src")return}else if(r==="keepstream"){if(E=T[q+"src"],typeof E=="string"&&E.indexOf(":")>0&&!Pr.isPlainObject(T.stream))return}else if(r!=="keepall"&&(E=T[q+"src"],typeof E=="string"&&E.indexOf(":")>0))return;C[q]=v(T[q],S)}}),C}var D=Array.isArray(T),z=Pr.isTypedArray(T);if((D||z)&&T.dtype&&T.shape){var B=T.bdata;return v({dtype:T.dtype,shape:T.shape,bdata:Pr.isArrayBuffer(B)?YQ.encode(B):B},S)}return D?T.map(function(q){return v(q,S)}):z?Pr.simpleMap(T,Pr.identity):Pr.isJSDate(T)?Pr.ms2DateTimeLocal(+T):T}var m={data:(l||[]).map(function(T){var S=v(T);return t&&delete S.fit,S})};if(!t&&(m.layout=v(f),a)){var _=f._size;m.layout.computed={margin:{b:_.b,l:_.l,r:_.r,t:_.t}}}return h&&(m.frames=v(h)),s&&(m.config=v(e._context,!0)),i==="object"?m:JSON.stringify(m)};_r.modifyFrames=function(e,t){var r,i,a,s=e._transitionData._frames,l=e._transitionData._frameHash;for(r=0;r0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){i=!0}),r.redraw&&e._transitionData._interruptCallbacks.push(function(){return ti.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var T=0,S=0;function C(){return T++,function(){S++,!i&&S===T&&f(_)}}r.runFn(C),setTimeout(C())})}function f(_){if(e._transitionData)return s(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(r.redraw)return ti.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(_)}function h(){if(e._transitionData)return e._transitioning=!1,a(e._transitionData._interruptCallbacks)}var v=[_r.previousPromises,h,r.prepareFn,_r.rehover,_r.reselect,l],m=Pr.syncOrAsync(v,e);return(!m||!m.then)&&(m=Promise.resolve()),m.then(function(){return e})}_r.doCalcdata=function(e,t){var r=Bs.list(e),i=e._fullData,a=e._fullLayout,s,l,f,h,v=new Array(i.length),m=(e.calcdata||[]).slice();for(e.calcdata=v,a._numBoxes=0,a._numViolins=0,a._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,a._piecolormap={},a._sunburstcolormap={},a._treemapcolormap={},a._iciclecolormap={},a._funnelareacolormap={},f=0;f=0;h--)if(O[h].enabled){s._indexToPoints=O[h]._indexToPoints;break}l&&l.calc&&(I=l.calc(e,s))}(!Array.isArray(I)||!I[0])&&(I=[{x:Vk,y:Vk}]),I[0].t||(I[0].t={}),I[0].trace=s,v[B]=I}}for(Yk(r,i,a),f=0;f{"use strict";cd.xmlns="http://www.w3.org/2000/xmlns/";cd.svg="http://www.w3.org/2000/svg";cd.xlink="http://www.w3.org/1999/xlink";cd.svgAttrs={xmlns:cd.svg,"xmlns:xlink":cd.xlink}});var ts=pe((Hge,rC)=>{"use strict";rC.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var co=pe(Zl=>{"use strict";var Nn=ja(),_c=Bt(),f$=_c.strTranslate,Iw=zh(),c$=ts().LINE_SPACING,h$=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;Zl.convertToTspans=function(e,t,r){var i=e.text(),a=!e.attr("data-notex")&&t&&t._context.typesetMath&&typeof MathJax!="undefined"&&i.match(h$),s=Nn.select(e.node().parentNode);if(s.empty())return;var l=e.attr("class")?e.attr("class").split(" ")[0]:"text";l+="-math",s.selectAll("svg."+l).remove(),s.selectAll("g."+l+"-group").remove(),e.style("display",null).attr({"data-unformatted":i,"data-math":"N"});function f(){s.empty()||(l=e.attr("class")+"-math",s.select("svg."+l).remove()),e.text("").style("white-space","pre");var h=M$(e.node(),i);h&&e.style("pointer-events","all"),Zl.positionText(e),r&&r.call(e)}return a?(t&&t._promises||[]).push(new Promise(function(h){e.style("display","none");var v=parseInt(e.node().style.fontSize,10),m={fontSize:v};m$(a[2],m,function(_,T,S){s.selectAll("svg."+l).remove(),s.selectAll("g."+l+"-group").remove();var C=_&&_.select("svg");if(!C||!C.node()){f(),h();return}var E=s.append("g").classed(l+"-group",!0).attr({"pointer-events":"none","data-unformatted":i,"data-math":"Y"});E.node().appendChild(C.node()),T&&T.node()&&C.node().insertBefore(T.node().cloneNode(!0),C.node().firstChild);var D=S.width,z=S.height;C.attr({class:l,height:z,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var B=e.node().style.fill||"black",q=C.select("g");q.attr({fill:B,stroke:B});var I=q.node().getBoundingClientRect(),O=I.width,H=I.height;(O>D||H>z)&&(C.style("overflow","hidden"),I=C.node().getBoundingClientRect(),O=I.width,H=I.height);var V=+e.attr("x"),W=+e.attr("y"),J=v||e.node().getBoundingClientRect().height,te=-J/4;if(l[0]==="y")E.attr({transform:"rotate("+[-90,V,W]+")"+f$(-O/2,te-H/2)});else if(l[0]==="l")W=te-H/2;else if(l[0]==="a"&&l.indexOf("atitle")!==0)V=0,W=te;else{var ne=e.attr("text-anchor");V=V-O*(ne==="middle"?.5:ne==="end"?1:0),W=W+te-H/2}C.attr({x:V,y:W}),r&&r.call(e,E),h(E)})})):f(),e};var v$=/(<|<|<)/g,d$=/(>|>|>)/g;function p$(e){return e.replace(v$,"\\lt ").replace(d$,"\\gt ")}var aC=[["$","$"],["\\(","\\)"]];function m$(e,t,r){var i=parseInt((MathJax.version||"").split(".")[0]);if(i!==2&&i!==3){_c.warn("No MathJax version:",MathJax.version);return}var a,s,l,f,h=function(){return s=_c.extendDeepAll({},MathJax.Hub.config),l=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:aC},displayAlign:"left"})},v=function(){s=_c.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=aC},m=function(){if(a=MathJax.Hub.config.menuSettings.renderer,a!=="SVG")return MathJax.Hub.setRenderer("SVG")},_=function(){a=MathJax.config.startup.output,a!=="svg"&&(MathJax.config.startup.output="svg")},T=function(){var B="math-output-"+_c.randstr({},64);f=Nn.select("body").append("div").attr({id:B}).style({visibility:"hidden",position:"absolute","font-size":t.fontSize+"px"}).text(p$(e));var q=f.node();return i===2?MathJax.Hub.Typeset(q):MathJax.typeset([q])},S=function(){var B=f.select(i===2?".MathJax_SVG":".MathJax"),q=!B.empty()&&f.select("svg").node();if(!q)_c.log("There was an error in the tex syntax.",e),r();else{var I=q.getBoundingClientRect(),O;i===2?O=Nn.select("body").select("#MathJax_SVG_glyphs"):O=B.select("defs"),r(B,O,I)}f.remove()},C=function(){if(a!=="SVG")return MathJax.Hub.setRenderer(a)},E=function(){a!=="svg"&&(MathJax.config.startup.output=a)},D=function(){return l!==void 0&&(MathJax.Hub.processSectionDelay=l),MathJax.Hub.Config(s)},z=function(){MathJax.config=s};i===2?MathJax.Hub.Queue(h,m,T,S,C,D):i===3&&(v(),_(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){T(),S(),E(),z()}))}var sC={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},y$={sub:"0.3em",sup:"-0.6em"},g$={sub:"-0.21em",sup:"0.42em"},iC="\u200B",nC=["http:","https:","mailto:","",void 0,":"],lC=Zl.NEWLINES=/(\r\n?|\n)/g,Fw=/(<[^<>]*>)/,qw=/<(\/?)([^ >]*)(\s+(.*))?>/i,_$=//i;Zl.BR_TAG_ALL=//gi;var uC=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,fC=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,cC=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,x$=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function hd(e,t){if(!e)return null;var r=e.match(t),i=r&&(r[3]||r[4]);return i&&V_(i)}var b$=/(^|;)\s*color:/;Zl.plainText=function(e,t){t=t||{};for(var r=t.len!==void 0&&t.len!==-1?t.len:1/0,i=t.allowedTags!==void 0?t.allowedTags:["br"],a="...",s=a.length,l=e.split(Fw),f=[],h="",v=0,m=0;ms?f.push(_.substr(0,E-s)+a):f.push(_.substr(0,E));break}h=""}}return f.join("")};var w$={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},T$=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function V_(e){return e.replace(T$,function(t,r){var i;return r.charAt(0)==="#"?i=A$(r.charAt(1)==="x"?parseInt(r.substr(2),16):parseInt(r.substr(1),10)):i=w$[r],i||t})}Zl.convertEntities=V_;function A$(e){if(!(e>1114111)){var t=String.fromCodePoint;if(t)return t(e);var r=String.fromCharCode;return e<=65535?r(e):r((e>>10)+55232,e%1024+56320)}}function M$(e,t){t=t.replace(lC," ");var r=!1,i=[],a,s=-1;function l(){s++;var H=document.createElementNS(Iw.svg,"tspan");Nn.select(H).attr({class:"line",dy:s*c$+"em"}),e.appendChild(H),a=H;var V=i;if(i=[{node:H}],V.length>1)for(var W=1;W.",t);return}var V=i.pop();H!==V.type&&_c.log("Start tag <"+V.type+"> doesnt match end tag <"+H+">. Pretending it did match.",t),a=i[i.length-1].node}var m=_$.test(t);m?l():(a=e,i=[{node:e}]);for(var _=t.split(Fw),T=0;T<_.length;T++){var S=_[T],C=S.match(qw),E=C&&C[2].toLowerCase(),D=sC[E];if(E==="br")l();else if(D===void 0)h(a,V_(S));else if(C[1])v(E);else{var z=C[4],B={type:E},q=hd(z,uC);if(q?(q=q.replace(b$,"$1 fill:"),D&&(q+=";"+D)):D&&(q=D),q&&(B.style=q),E==="a"){r=!0;var I=hd(z,fC);if(I){var O=hC(I);O&&(B.href=O,B.target=hd(z,cC)||"_blank",B.popup=hd(z,x$))}}f(B)}}return r}function hC(e){var t=encodeURI(decodeURI(e)),r=document.createElement("a"),i=document.createElement("a");r.href=e,i.href=t;var a=r.protocol,s=i.protocol;return nC.indexOf(a)!==-1&&nC.indexOf(s)!==-1?t:""}Zl.sanitizeHTML=function(t){t=t.replace(lC," ");for(var r=document.createElement("p"),i=r,a=[],s=t.split(Fw),l=0;l{"use strict";var S$=ja(),G_=wf(),Wy=Da(),H_=Bt(),vC=Oa(),k$=td().isValid;function C$(e,t,r){var i=t?H_.nestedProperty(e,t).get()||{}:e,a=i[r||"color"];a&&a._inputArray&&(a=a._inputArray);var s=!1;if(H_.isArrayOrTypedArray(a)){for(var l=0;l=0;i--,a++){var s=e[i];r[a]=[1-s[0],s[1]]}return r}function _C(e,t){t=t||{};for(var r=e.domain,i=e.range,a=i.length,s=new Array(a),l=0;l{"use strict";var bC=nw(),L$=bC.FORMAT_LINK,D$=bC.DATE_FORMAT_LINK;function P$(e,t){return{valType:"string",dflt:"",editType:"none",description:(t?Nw:wC)("hover text",e)+["By default the values are formatted using "+(t?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function Nw(e,t){return["Sets the "+e+" formatting rule"+(t?"for `"+t+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+L$+"."].join(" ")}function wC(e,t){return Nw(e,t)+[" And for dates see: "+D$+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}TC.exports={axisHoverFormat:P$,descriptionOnlyNumbers:Nw,descriptionWithDates:wC}});var Ru=pe((Xge,OC)=>{"use strict";var AC=qo(),L0=Tf(),BC=hc().dash,Uw=mn().extendFlat,MC=Ii().templatedArray,Wge=Mf().templateFormatStringDescription,SC=Bw().descriptionWithDates,z$=Zi().ONEDAY,Cf=Ao(),I$=Cf.HOUR_PATTERN,R$=Cf.WEEKDAY_PATTERN,Ow={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},F$=Uw({},Ow,{values:Ow.values.slice().concat(["sync"])});function kC(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var CC={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},EC={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},LC={valType:"data_array",editType:"ticks"},DC={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function PC(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=5),t}function zC(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var IC={valType:"color",dflt:L0.defaultLine,editType:"ticks"},RC={valType:"color",dflt:L0.lightLine,editType:"ticks"};function FC(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var qC=Uw({},BC,{editType:"ticks"}),NC={valType:"boolean",editType:"ticks"};OC.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:L0.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:AC({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[Cf.idRegex.x.toString(),Cf.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[Cf.idRegex.x.toString(),Cf.idRegex.y.toString()],editType:"calc"},rangebreaks:MC("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[R$,I$,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:z$},editType:"calc"}),tickmode:F$,nticks:kC(),tick0:CC,dtick:EC,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:LC,ticktext:{valType:"data_array",editType:"ticks"},ticks:DC,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:PC(),tickwidth:zC(),tickcolor:IC,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:Uw({},BC,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:AC({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:SC("tick label")},tickformatstops:MC("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:SC("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:L0.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:NC,gridcolor:RC,gridwidth:FC(),griddash:qC,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:L0.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:L0.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",Cf.idRegex.x.toString(),Cf.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",Cf.idRegex.x.toString(),Cf.idRegex.y.toString()],editType:"plot"},minor:{tickmode:Ow,nticks:kC("minor"),tick0:CC,dtick:EC,tickvals:LC,ticks:DC,ticklen:PC("minor"),tickwidth:zC("minor"),tickcolor:IC,gridcolor:RC,gridwidth:FC("minor"),griddash:qC,showgrid:NC,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var Z_=pe((jge,HC)=>{"use strict";var Wi=Ru(),UC=qo(),VC=mn().extendFlat,q$=il().overrideAll;HC.exports=q$({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:Wi.linecolor,outlinewidth:Wi.linewidth,bordercolor:Wi.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:Wi.minor.tickmode,nticks:Wi.nticks,tick0:Wi.tick0,dtick:Wi.dtick,tickvals:Wi.tickvals,ticktext:Wi.ticktext,ticks:VC({},Wi.ticks,{dflt:""}),ticklabeloverflow:VC({},Wi.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:Wi.ticklen,tickwidth:Wi.tickwidth,tickcolor:Wi.tickcolor,ticklabelstep:Wi.ticklabelstep,showticklabels:Wi.showticklabels,labelalias:Wi.labelalias,tickfont:UC({}),tickangle:Wi.tickangle,tickformat:Wi.tickformat,tickformatstops:Wi.tickformatstops,tickprefix:Wi.tickprefix,showtickprefix:Wi.showtickprefix,ticksuffix:Wi.ticksuffix,showticksuffix:Wi.showticksuffix,separatethousands:Wi.separatethousands,exponentformat:Wi.exponentformat,minexponent:Wi.minexponent,showexponent:Wi.showexponent,title:{text:{valType:"string"},font:UC({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var xc=pe((Kge,ZC)=>{"use strict";var N$=Z_(),B$=h0().counter,O$=b_(),GC=td().scales,Jge=O$(GC);function Y_(e){return"`"+e+"`"}ZC.exports=function(t,r){t=t||"",r=r||{};var i=r.cLetter||"c",a="onlyIfNumerical"in r?r.onlyIfNumerical:!!t,s="noScale"in r?r.noScale:t==="marker.line",l="showScaleDflt"in r?r.showScaleDflt:i==="z",f=typeof r.colorscaleDflt=="string"?GC[r.colorscaleDflt]:null,h=r.editTypeOverride||"",v=t?t+".":"",m,_;"colorAttr"in r?(m=r.colorAttr,_=r.colorAttr):(m={z:"z",c:"color"}[i],_="in "+Y_(v+m));var T=a?" Has an effect only if "+_+" is set to a numerical array.":"",S=i+"auto",C=i+"min",E=i+"max",D=i+"mid",z=Y_(v+S),B=Y_(v+C),q=Y_(v+E),I=B+" and "+q,O={};O[C]=O[E]=void 0;var H={};H[S]=!1;var V={};return m==="color"&&(V.color={valType:"color",arrayOk:!0,editType:h||"style"},r.anim&&(V.color.anim=!0)),V[S]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:O},V[C]={valType:"number",dflt:null,editType:h||"plot",impliedEdits:H},V[E]={valType:"number",dflt:null,editType:h||"plot",impliedEdits:H},V[D]={valType:"number",dflt:null,editType:"calc",impliedEdits:O},V.colorscale={valType:"colorscale",editType:"calc",dflt:f,impliedEdits:{autocolorscale:!1}},V.autocolorscale={valType:"boolean",dflt:r.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},V.reversescale={valType:"boolean",dflt:!1,editType:"plot"},s||(V.showscale={valType:"boolean",dflt:l,editType:"calc"},V.colorbar=N$),r.noColorAxis||(V.coloraxis={valType:"subplotid",regex:B$("coloraxis"),dflt:null,editType:"calc"}),V}});var Hw=pe((Qge,YC)=>{"use strict";var U$=mn().extendFlat,V$=xc(),Vw=td().scales;YC.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:Vw.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:Vw.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:Vw.RdBu,editType:"calc"}},coloraxis:U$({_isSubplotObj:!0,editType:"calc"},V$("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var Gw=pe(($ge,WC)=>{"use strict";var H$=Bt();WC.exports=function(t){return H$.isPlainObject(t.colorbar)}});var Ww=pe(Yw=>{"use strict";var Zw=Da(),XC=Bt(),jC=Zi(),G$=jC.ONEDAY,Z$=jC.ONEWEEK;Yw.dtick=function(e,t){var r=t==="log",i=t==="date",a=t==="category",s=i?G$:1;if(!e)return s;if(Zw(e))return e=Number(e),e<=0?s:a?Math.max(1,Math.round(e)):i?Math.max(.1,e):e;if(typeof e!="string"||!(i||r))return s;var l=e.charAt(0),f=e.substr(1);return f=Zw(f)?Number(f):0,f<=0||!(i&&l==="M"&&f===Math.round(f)||r&&l==="L"||r&&l==="D"&&(f===1||f===2))?s:e};Yw.tick0=function(e,t,r,i){if(t==="date")return XC.cleanDate(e,XC.dateTick0(r,i%Z$===0?1:0));if(!(i==="D1"||i==="D2"))return Zw(e)?Number(e):0}});var Xw=pe((t1e,KC)=>{"use strict";var JC=Ww(),Y$=Bt().isArrayOrTypedArray,W$=al().isTypedArraySpec,X$=al().decodeTypedArraySpec;KC.exports=function(t,r,i,a,s){s||(s={});var l=s.isMinor,f=l?t.minor||{}:t,h=l?r.minor:r,v=l?"minor.":"";function m(B){var q=f[B];return W$(q)&&(q=X$(q)),q!==void 0?q:(h._template||{})[B]}var _=m("tick0"),T=m("dtick"),S=m("tickvals"),C=Y$(S)?"array":T?"linear":"auto",E=i(v+"tickmode",C);if(E==="auto"||E==="sync")i(v+"nticks");else if(E==="linear"){var D=h.dtick=JC.dtick(T,a);h.tick0=JC.tick0(_,a,r.calendar,D)}else if(a!=="multicategory"){var z=i(v+"tickvals");z===void 0?h.tickmode="auto":l||i("ticktext")}}});var Jw=pe((r1e,$C)=>{"use strict";var jw=Bt(),QC=Ru();$C.exports=function(t,r,i,a){var s=a.isMinor,l=s?t.minor||{}:t,f=s?r.minor:r,h=s?QC.minor:QC,v=s?"minor.":"",m=jw.coerce2(l,f,h,"ticklen",s?(r.ticklen||5)*.6:void 0),_=jw.coerce2(l,f,h,"tickwidth",s?r.tickwidth||1:void 0),T=jw.coerce2(l,f,h,"tickcolor",(s?r.tickcolor:void 0)||f.color),S=i(v+"ticks",!s&&a.outerTicks||m||_||T?"outside":"");S||(delete f.ticklen,delete f.tickwidth,delete f.tickcolor)}});var Kw=pe((a1e,eE)=>{"use strict";eE.exports=function(t){var r=["showexponent","showtickprefix","showticksuffix"],i=r.filter(function(s){return t[s]!==void 0}),a=function(s){return t[s]===t[i[0]]};if(i.every(a)||i.length===1)return t[i[0]]}});var Yl=pe((i1e,tE)=>{"use strict";var W_=Bt(),j$=Ii();tE.exports=function(t,r,i){var a=i.name,s=i.inclusionAttr||"visible",l=r[a],f=W_.isArrayOrTypedArray(t[a])?t[a]:[],h=r[a]=[],v=j$.arrayTemplater(r,a,s),m,_;for(m=0;m{"use strict";var Qw=Bt(),J$=Oa().contrast,rE=Ru(),K$=Kw(),Q$=Yl();aE.exports=function(t,r,i,a,s){s||(s={});var l=i("labelalias");Qw.isPlainObject(l)||delete r.labelalias;var f=K$(t),h=i("showticklabels");if(h){s.noTicklabelshift||i("ticklabelshift"),s.noTicklabelstandoff||i("ticklabelstandoff");var v=s.font||{},m=r.color,_=r.ticklabelposition||"",T=_.indexOf("inside")!==-1?J$(s.bgColor):m&&m!==rE.color.dflt?m:v.color;if(Qw.coerceFont(i,"tickfont",v,{overrideDflt:{color:T}}),!s.noTicklabelstep&&a!=="multicategory"&&a!=="log"&&i("ticklabelstep"),!s.noAng){var S=i("tickangle");!s.noAutotickangles&&S==="auto"&&i("autotickangles")}if(a!=="category"){var C=i("tickformat");Q$(t,r,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:$$}),r.tickformatstops.length||delete r.tickformatstops,!s.noExp&&!C&&a!=="date"&&(i("showexponent",f),i("exponentformat"),i("minexponent"),i("separatethousands"))}!s.noMinorloglabels&&a==="log"&&i("minorloglabels")}};function $$(e,t){function r(a,s){return Qw.coerce(e,t,rE.tickformatstops,a,s)}var i=r("enabled");i&&(r("dtickrange"),r("value"))}});var e5=pe((o1e,iE)=>{"use strict";var eee=Kw();iE.exports=function(t,r,i,a,s){s||(s={});var l=s.tickSuffixDflt,f=eee(t),h=i("tickprefix");h&&i("showtickprefix",f);var v=i("ticksuffix",l);v&&i("showticksuffix",f)}});var t5=pe((s1e,nE)=>{"use strict";var Ih=Bt(),tee=Ii(),ree=Xw(),aee=Jw(),iee=$w(),nee=e5(),oee=Z_();nE.exports=function(t,r,i){var a=tee.newContainer(r,"colorbar"),s=t.colorbar||{};function l(ne,oe){return Ih.coerce(s,a,oee,ne,oe)}var f=i.margin||{t:0,b:0,l:0,r:0},h=i.width-f.l-f.r,v=i.height-f.t-f.b,m=l("orientation"),_=m==="v",T=l("thicknessmode");l("thickness",T==="fraction"?30/(_?h:v):30);var S=l("lenmode");l("len",S==="fraction"?1:_?v:h);var C=l("yref"),E=l("xref"),D=C==="paper",z=E==="paper",B,q,I,O="left";_?(I="middle",O=z?"left":"right",B=z?1.02:1,q=.5):(I=D?"bottom":"top",O="center",B=.5,q=D?1.02:1),Ih.coerce(s,a,{x:{valType:"number",min:z?-2:0,max:z?3:1,dflt:B}},"x"),Ih.coerce(s,a,{y:{valType:"number",min:D?-2:0,max:D?3:1,dflt:q}},"y"),l("xanchor",O),l("xpad"),l("yanchor",I),l("ypad"),Ih.noneOrAll(s,a,["x","y"]),l("outlinecolor"),l("outlinewidth"),l("bordercolor"),l("borderwidth"),l("bgcolor");var H=Ih.coerce(s,a,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:_?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");l("ticklabeloverflow",H.indexOf("inside")!==-1?"hide past domain":"hide past div"),ree(s,a,l,"linear");var V=i.font,W={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:V};H.indexOf("inside")!==-1&&(W.bgColor="black"),nee(s,a,l,"linear",W),iee(s,a,l,"linear",W),aee(s,a,l,"linear",W),l("title.text",i._dfltTitle.colorbar);var J=a.showticklabels?a.tickfont:V,te=Ih.extendFlat({},V,{family:J.family,size:Ih.bigFont(J.size)});Ih.coerceFont(l,"title.font",te),l("title.side",_?"top":"right")}});var vd=pe((l1e,lE)=>{"use strict";var oE=Da(),a5=Bt(),see=Gw(),lee=t5(),sE=td().isValid,uee=sa().traceIs;function r5(e,t){var r=t.slice(0,t.length-1);return t?a5.nestedProperty(e,r).get()||{}:e}lE.exports=function e(t,r,i,a,s){var l=s.prefix,f=s.cLetter,h="_module"in r,v=r5(t,l),m=r5(r,l),_=r5(r._template||{},l)||{},T=function(){return delete t.coloraxis,delete r.coloraxis,e(t,r,i,a,s)};if(h){var S=i._colorAxes||{},C=a(l+"coloraxis");if(C){var E=uee(r,"contour")&&a5.nestedProperty(r,"contours.coloring").get()||"heatmap",D=S[C];D?(D[2].push(T),D[0]!==E&&(D[0]=!1,a5.warn(["Ignoring coloraxis:",C,"setting","as it is linked to incompatible colorscales."].join(" ")))):S[C]=[E,r,[T]];return}}var z=v[f+"min"],B=v[f+"max"],q=oE(z)&&oE(B)&&z{"use strict";var uE=Bt(),fee=Ii(),fE=Hw(),cee=vd();cE.exports=function(t,r){function i(_,T){return uE.coerce(t,r,fE,_,T)}i("colorscale.sequential"),i("colorscale.sequentialminus"),i("colorscale.diverging");var a=r._colorAxes,s,l;function f(_,T){return uE.coerce(s,l,fE.coloraxis,_,T)}for(var h in a){var v=a[h];if(v[0])s=t[h]||{},l=fee.newContainer(r,h,"coloraxis"),l._name=h,cee(s,l,r,f,{prefix:"",cLetter:"c"});else{for(var m=0;m{"use strict";var hee=Bt(),vee=kf().hasColorscale,dee=kf().extractOpts;vE.exports=function(t,r){function i(m,_){var T=m["_"+_];T!==void 0&&(m[_]=T)}function a(m,_){var T=_.container?hee.nestedProperty(m,_.container).get():m;if(T)if(T.coloraxis)T._colorAx=r[T.coloraxis];else{var S=dee(T),C=S.auto;(C||S.min===void 0)&&i(T,_.min),(C||S.max===void 0)&&i(T,_.max),S.autocolorscale&&i(T,"colorscale")}}for(var s=0;s{"use strict";var pE=Da(),i5=Bt(),pee=kf().extractOpts;mE.exports=function(t,r,i){var a=t._fullLayout,s=i.vals,l=i.containerStr,f=l?i5.nestedProperty(r,l).get():r,h=pee(f),v=h.auto!==!1,m=h.min,_=h.max,T=h.mid,S=function(){return i5.aggNums(Math.min,null,s)},C=function(){return i5.aggNums(Math.max,null,s)};if(m===void 0?m=S():v&&(f._colorAx&&pE(m)?m=Math.min(m,S()):m=S()),_===void 0?_=C():v&&(f._colorAx&&pE(_)?_=Math.max(_,C()):_=C()),v&&T!==void 0&&(_-T>T-m?m=T-(_-T):_-T=0?E=a.colorscale.sequential:E=a.colorscale.sequentialminus,h._sync("colorscale",E)}}});var P0=pe((h1e,yE)=>{"use strict";var X_=td(),D0=kf();yE.exports={moduleType:"component",name:"colorscale",attributes:xc(),layoutAttributes:Hw(),supplyLayoutDefaults:hE(),handleDefaults:vd(),crossTraceDefaults:dE(),calc:Xy(),scales:X_.scales,defaultScale:X_.defaultScale,getScale:X_.get,isValidScale:X_.isValid,hasColorscale:D0.hasColorscale,extractOpts:D0.extractOpts,extractScale:D0.extractScale,flipScale:D0.flipScale,makeColorScaleFunc:D0.makeColorScaleFunc,makeColorScaleFuncFromTrace:D0.makeColorScaleFuncFromTrace}});var rs=pe((v1e,_E)=>{"use strict";var gE=Bt(),mee=al().isTypedArraySpec;_E.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var t=e.marker;return gE.isPlainObject(t)&&(gE.isArrayOrTypedArray(t.size)||mee(t.size))}}});var n5=pe((d1e,xE)=>{"use strict";var yee=Da();xE.exports=function(t,r){r||(r=2);var i=t.marker,a=i.sizeref||1,s=i.sizemin||0,l=i.sizemode==="area"?function(f){return Math.sqrt(f/a)}:function(f){return f/a};return function(f){var h=l(f/r);return yee(h)&&h>0?Math.max(h,s):0}}});var bc=pe(No=>{"use strict";var j_=Bt();No.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};No.isTraceInSubplots=function(e,t){if(e.type==="splom"){for(var r=e.xaxes||[],i=e.yaxes||[],a=0;a=0&&r.index{TE.exports=wee;var o5={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},bee=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function wee(e){var t=[];return e.replace(bee,function(r,i,a){var s=i.toLowerCase();for(a=Aee(a),s=="m"&&a.length>2&&(t.push([i].concat(a.splice(0,2))),s="l",i=i=="m"?"l":"L");;){if(a.length==o5[s])return a.unshift(i),t.push(a);if(a.length{"use strict";var Mee=s5(),lr=function(e,t){return t?Math.round(e*(t=Math.pow(10,t)))/t:Math.round(e)},ha="M0,0Z",AE=Math.sqrt(2),Rh=Math.sqrt(3),l5=Math.PI,u5=Math.cos,f5=Math.sin;EE.exports={circle:{n:0,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a="M"+i+",0A"+i+","+i+" 0 1,1 0,-"+i+"A"+i+","+i+" 0 0,1 "+i+",0Z";return r?da(t,r,a):a}},square:{n:1,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M"+i+","+i+"H-"+i+"V-"+i+"H"+i+"Z")}},diamond:{n:2,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.3,2);return da(t,r,"M"+i+",0L0,"+i+"L-"+i+",0L0,-"+i+"Z")}},cross:{n:3,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.4,2),a=lr(e*1.2,2);return da(t,r,"M"+a+","+i+"H"+i+"V"+a+"H-"+i+"V"+i+"H-"+a+"V-"+i+"H-"+i+"V-"+a+"H"+i+"V-"+i+"H"+a+"Z")}},x:{n:4,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.8/AE,2),a="l"+i+","+i,s="l"+i+",-"+i,l="l-"+i+",-"+i,f="l-"+i+","+i;return da(t,r,"M0,"+i+a+s+l+s+l+f+l+f+a+f+a+"Z")}},"triangle-up":{n:5,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2/Rh,2),a=lr(e/2,2),s=lr(e,2);return da(t,r,"M-"+i+","+a+"H"+i+"L0,-"+s+"Z")}},"triangle-down":{n:6,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2/Rh,2),a=lr(e/2,2),s=lr(e,2);return da(t,r,"M-"+i+",-"+a+"H"+i+"L0,"+s+"Z")}},"triangle-left":{n:7,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2/Rh,2),a=lr(e/2,2),s=lr(e,2);return da(t,r,"M"+a+",-"+i+"V"+i+"L-"+s+",0Z")}},"triangle-right":{n:8,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2/Rh,2),a=lr(e/2,2),s=lr(e,2);return da(t,r,"M-"+a+",-"+i+"V"+i+"L"+s+",0Z")}},"triangle-ne":{n:9,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.6,2),a=lr(e*1.2,2);return da(t,r,"M-"+a+",-"+i+"H"+i+"V"+a+"Z")}},"triangle-se":{n:10,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.6,2),a=lr(e*1.2,2);return da(t,r,"M"+i+",-"+a+"V"+i+"H-"+a+"Z")}},"triangle-sw":{n:11,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.6,2),a=lr(e*1.2,2);return da(t,r,"M"+a+","+i+"H-"+i+"V-"+a+"Z")}},"triangle-nw":{n:12,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.6,2),a=lr(e*1.2,2);return da(t,r,"M-"+i+","+a+"V-"+i+"H"+a+"Z")}},pentagon:{n:13,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.951,2),a=lr(e*.588,2),s=lr(-e,2),l=lr(e*-.309,2),f=lr(e*.809,2);return da(t,r,"M"+i+","+l+"L"+a+","+f+"H-"+a+"L-"+i+","+l+"L0,"+s+"Z")}},hexagon:{n:14,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a=lr(e/2,2),s=lr(e*Rh/2,2);return da(t,r,"M"+s+",-"+a+"V"+a+"L0,"+i+"L-"+s+","+a+"V-"+a+"L0,-"+i+"Z")}},hexagon2:{n:15,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a=lr(e/2,2),s=lr(e*Rh/2,2);return da(t,r,"M-"+a+","+s+"H"+a+"L"+i+",0L"+a+",-"+s+"H-"+a+"L-"+i+",0Z")}},octagon:{n:16,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.924,2),a=lr(e*.383,2);return da(t,r,"M-"+a+",-"+i+"H"+a+"L"+i+",-"+a+"V"+a+"L"+a+","+i+"H-"+a+"L-"+i+","+a+"V-"+a+"Z")}},star:{n:17,f:function(e,t,r){if(va(t))return ha;var i=e*1.4,a=lr(i*.225,2),s=lr(i*.951,2),l=lr(i*.363,2),f=lr(i*.588,2),h=lr(-i,2),v=lr(i*-.309,2),m=lr(i*.118,2),_=lr(i*.809,2),T=lr(i*.382,2);return da(t,r,"M"+a+","+v+"H"+s+"L"+l+","+m+"L"+f+","+_+"L0,"+T+"L-"+f+","+_+"L-"+l+","+m+"L-"+s+","+v+"H-"+a+"L0,"+h+"Z")}},hexagram:{n:18,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.66,2),a=lr(e*.38,2),s=lr(e*.76,2);return da(t,r,"M-"+s+",0l-"+a+",-"+i+"h"+s+"l"+a+",-"+i+"l"+a+","+i+"h"+s+"l-"+a+","+i+"l"+a+","+i+"h-"+s+"l-"+a+","+i+"l-"+a+",-"+i+"h-"+s+"Z")}},"star-triangle-up":{n:19,f:function(e,t,r){if(va(t))return ha;var i=lr(e*Rh*.8,2),a=lr(e*.8,2),s=lr(e*1.6,2),l=lr(e*4,2),f="A "+l+","+l+" 0 0 1 ";return da(t,r,"M-"+i+","+a+f+i+","+a+f+"0,-"+s+f+"-"+i+","+a+"Z")}},"star-triangle-down":{n:20,f:function(e,t,r){if(va(t))return ha;var i=lr(e*Rh*.8,2),a=lr(e*.8,2),s=lr(e*1.6,2),l=lr(e*4,2),f="A "+l+","+l+" 0 0 1 ";return da(t,r,"M"+i+",-"+a+f+"-"+i+",-"+a+f+"0,"+s+f+i+",-"+a+"Z")}},"star-square":{n:21,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.1,2),a=lr(e*2,2),s="A "+a+","+a+" 0 0 1 ";return da(t,r,"M-"+i+",-"+i+s+"-"+i+","+i+s+i+","+i+s+i+",-"+i+s+"-"+i+",-"+i+"Z")}},"star-diamond":{n:22,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.4,2),a=lr(e*1.9,2),s="A "+a+","+a+" 0 0 1 ";return da(t,r,"M-"+i+",0"+s+"0,"+i+s+i+",0"+s+"0,-"+i+s+"-"+i+",0Z")}},"diamond-tall":{n:23,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.7,2),a=lr(e*1.4,2);return da(t,r,"M0,"+a+"L"+i+",0L0,-"+a+"L-"+i+",0Z")}},"diamond-wide":{n:24,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.4,2),a=lr(e*.7,2);return da(t,r,"M0,"+a+"L"+i+",0L0,-"+a+"L-"+i+",0Z")}},hourglass:{n:25,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M"+i+","+i+"H-"+i+"L"+i+",-"+i+"H-"+i+"Z")},noDot:!0},bowtie:{n:26,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M"+i+","+i+"V-"+i+"L-"+i+","+i+"V-"+i+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M0,"+i+"V-"+i+"M"+i+",0H-"+i+"M"+i+",0A"+i+","+i+" 0 1,1 0,-"+i+"A"+i+","+i+" 0 0,1 "+i+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a=lr(e/AE,2);return da(t,r,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a+"M"+i+",0A"+i+","+i+" 0 1,1 0,-"+i+"A"+i+","+i+" 0 0,1 "+i+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M0,"+i+"V-"+i+"M"+i+",0H-"+i+"M"+i+","+i+"H-"+i+"V-"+i+"H"+i+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i+"M"+i+","+i+"H-"+i+"V-"+i+"H"+i+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.3,2);return da(t,r,"M"+i+",0L0,"+i+"L-"+i+",0L0,-"+i+"ZM0,-"+i+"V"+i+"M-"+i+",0H"+i)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.3,2),a=lr(e*.65,2);return da(t,r,"M"+i+",0L0,"+i+"L-"+i+",0L0,-"+i+"ZM-"+a+",-"+a+"L"+a+","+a+"M-"+a+","+a+"L"+a+",-"+a)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.4,2);return da(t,r,"M0,"+i+"V-"+i+"M"+i+",0H-"+i)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.2,2),a=lr(e*.85,2);return da(t,r,"M0,"+i+"V-"+i+"M"+i+",0H-"+i+"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,t,r){if(va(t))return ha;var i=lr(e/2,2),a=lr(e,2);return da(t,r,"M"+i+","+a+"V-"+a+"M"+(i-a)+",-"+a+"V"+a+"M"+a+","+i+"H-"+a+"M-"+a+","+(i-a)+"H"+a)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.2,2),a=lr(e*1.6,2),s=lr(e*.8,2);return da(t,r,"M-"+i+","+s+"L0,0M"+i+","+s+"L0,0M0,-"+a+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.2,2),a=lr(e*1.6,2),s=lr(e*.8,2);return da(t,r,"M-"+i+",-"+s+"L0,0M"+i+",-"+s+"L0,0M0,"+a+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.2,2),a=lr(e*1.6,2),s=lr(e*.8,2);return da(t,r,"M"+s+","+i+"L0,0M"+s+",-"+i+"L0,0M-"+a+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.2,2),a=lr(e*1.6,2),s=lr(e*.8,2);return da(t,r,"M-"+s+","+i+"L0,0M-"+s+",-"+i+"L0,0M"+a+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.4,2);return da(t,r,"M"+i+",0H-"+i)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.4,2);return da(t,r,"M0,"+i+"V-"+i)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M"+i+",-"+i+"L-"+i+","+i)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M"+i+","+i+"L-"+i+",-"+i)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a=lr(e*2,2);return da(t,r,"M0,0L-"+i+","+a+"H"+i+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a=lr(e*2,2);return da(t,r,"M0,0L-"+i+",-"+a+"H"+i+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2,2),a=lr(e,2);return da(t,r,"M0,0L"+i+",-"+a+"V"+a+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2,2),a=lr(e,2);return da(t,r,"M0,0L-"+i+",-"+a+"V"+a+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a=lr(e*2,2);return da(t,r,"M-"+i+",0H"+i+"M0,0L-"+i+","+a+"H"+i+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a=lr(e*2,2);return da(t,r,"M-"+i+",0H"+i+"M0,0L-"+i+",-"+a+"H"+i+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2,2),a=lr(e,2);return da(t,r,"M0,-"+a+"V"+a+"M0,0L"+i+",-"+a+"V"+a+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2,2),a=lr(e,2);return da(t,r,"M0,-"+a+"V"+a+"M0,0L-"+i+",-"+a+"V"+a+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,t,r){if(va(t))return ha;var i=l5/2.5,a=2*e*u5(i),s=2*e*f5(i);return da(t,r,"M0,0L"+-a+","+s+"L"+a+","+s+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,t,r){if(va(t))return ha;var i=l5/4,a=2*e*u5(i),s=2*e*f5(i);return da(t,r,"M0,0L"+-a+","+s+"A "+2*e+","+2*e+" 0 0 1 "+a+","+s+"Z")},backoff:.4,noDot:!0}};function va(e){return e===null}var ME,SE,kE,CE;function da(e,t,r){if((!e||e%360===0)&&!t)return r;if(kE===e&&CE===t&&ME===r)return SE;kE=e,CE=t,ME=r;function i(D,z){var B=u5(D),q=f5(D),I=z[0],O=z[1]+(t||0);return[I*B-O*q,I*q+O*B]}for(var a=e/180*l5,s=0,l=0,f=Mee(r),h="",v=0;v{"use strict";var to=ja(),_i=Bt(),See=_i.numberFormat,yd=Da(),m5=wf(),K_=sa(),Mo=Oa(),kee=P0(),Jy=_i.strTranslate,Q_=co(),Cee=zh(),Eee=ts(),Lee=Eee.LINE_SPACING,OE=s_().DESELECTDIM,Dee=rs(),Pee=n5(),zee=bc().appendArrayPointValue,xr=JE.exports={};xr.font=function(e,t){var r=t.variant,i=t.style,a=t.weight,s=t.color,l=t.size,f=t.family,h=t.shadow,v=t.lineposition,m=t.textcase;f&&e.style("font-family",f),l+1&&e.style("font-size",l+"px"),s&&e.call(Mo.fill,s),a&&e.style("font-weight",a),i&&e.style("font-style",i),r&&e.style("font-variant",r),m&&e.style("text-transform",c5(Ree(m))),h&&e.style("text-shadow",h==="auto"?Q_.makeTextShadow(Mo.contrast(s)):c5(h)),v&&e.style("text-decoration-line",c5(Fee(v)))};function c5(e){return e==="none"?void 0:e}var Iee={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function Ree(e){return Iee[e]}function Fee(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}xr.setPosition=function(e,t,r){e.attr("x",t).attr("y",r)};xr.setSize=function(e,t,r){e.attr("width",t).attr("height",r)};xr.setRect=function(e,t,r,i,a){e.call(xr.setPosition,t,r).call(xr.setSize,i,a)};xr.translatePoint=function(e,t,r,i){var a=r.c2p(e.x),s=i.c2p(e.y);if(yd(a)&&yd(s)&&t.node())t.node().nodeName==="text"?t.attr("x",a).attr("y",s):t.attr("transform",Jy(a,s));else return!1;return!0};xr.translatePoints=function(e,t,r){e.each(function(i){var a=to.select(this);xr.translatePoint(i,a,t,r)})};xr.hideOutsideRangePoint=function(e,t,r,i,a,s){t.attr("display",r.isPtWithinRange(e,a)&&i.isPtWithinRange(e,s)?null:"none")};xr.hideOutsideRangePoints=function(e,t){if(t._hasClipOnAxisFalse){var r=t.xaxis,i=t.yaxis;e.each(function(a){var s=a[0].trace,l=s.xcalendar,f=s.ycalendar,h=K_.traceIs(s,"bar-like")?".bartext":".point,.textpoint";e.selectAll(h).each(function(v){xr.hideOutsideRangePoint(v,to.select(this),r,i,l,f)})})}};xr.crispRound=function(e,t,r){return!t||!yd(t)?r||0:e._context.staticPlot?t:t<1?1:Math.round(t)};xr.singleLineStyle=function(e,t,r,i,a){t.style("fill","none");var s=(((e||[])[0]||{}).trace||{}).line||{},l=r||s.width||0,f=a||s.dash||"";Mo.stroke(t,i||s.color),xr.dashLine(t,f,l)};xr.lineGroupStyle=function(e,t,r,i){e.style("fill","none").each(function(a){var s=(((a||[])[0]||{}).trace||{}).line||{},l=t||s.width||0,f=i||s.dash||"";to.select(this).call(Mo.stroke,r||s.color).call(xr.dashLine,f,l)})};xr.dashLine=function(e,t,r){r=+r||0,t=xr.dashStyle(t,r),e.style({"stroke-dasharray":t,"stroke-width":r+"px"})};xr.dashStyle=function(e,t){t=+t||1;var r=Math.max(t,3);return e==="solid"?e="":e==="dot"?e=r+"px,"+r+"px":e==="dash"?e=3*r+"px,"+3*r+"px":e==="longdash"?e=5*r+"px,"+5*r+"px":e==="dashdot"?e=3*r+"px,"+r+"px,"+r+"px,"+r+"px":e==="longdashdot"&&(e=5*r+"px,"+2*r+"px,"+r+"px,"+2*r+"px"),e};function UE(e,t,r,i){var a=t.fillpattern,s=t.fillgradient,l=xr.getPatternAttr,f=a&&(l(a.shape,0,"")||l(a.path,0,""));if(f){var h=l(a.bgcolor,0,null),v=l(a.fgcolor,0,null),m=a.fgopacity,_=l(a.size,0,8),T=l(a.solidity,0,.3),S=t.uid;xr.pattern(e,"point",r,S,f,_,T,void 0,a.fillmode,h,v,m)}else if(s&&s.type!=="none"){var C=s.type,E="scatterfill-"+t.uid;if(i&&(E="legendfill-"+t.uid),!i&&(s.start!==void 0||s.stop!==void 0)){var D,z;C==="horizontal"?(D={x:s.start,y:0},z={x:s.stop,y:0}):C==="vertical"&&(D={x:0,y:s.start},z={x:0,y:s.stop}),D.x=t._xA.c2p(D.x===void 0?t._extremes.x.min[0].val:D.x,!0),D.y=t._yA.c2p(D.y===void 0?t._extremes.y.min[0].val:D.y,!0),z.x=t._xA.c2p(z.x===void 0?t._extremes.x.max[0].val:z.x,!0),z.y=t._yA.c2p(z.y===void 0?t._extremes.y.max[0].val:z.y,!0),e.call(GE,r,E,"linear",s.colorscale,"fill",D,z,!0,!1)}else C==="horizontal"&&(C=C+"reversed"),e.call(xr.gradient,r,E,C,s.colorscale,"fill")}else t.fillcolor&&e.call(Mo.fill,t.fillcolor)}xr.singleFillStyle=function(e,t){var r=to.select(e.node()),i=r.data(),a=((i[0]||[])[0]||{}).trace||{};UE(e,a,t,!1)};xr.fillGroupStyle=function(e,t,r){e.style("stroke-width",0).each(function(i){var a=to.select(this);i[0].trace&&UE(a,i[0].trace,t,r)})};var DE=LE();xr.symbolNames=[];xr.symbolFuncs=[];xr.symbolBackOffs=[];xr.symbolNeedLines={};xr.symbolNoDot={};xr.symbolNoFill={};xr.symbolList=[];Object.keys(DE).forEach(function(e){var t=DE[e],r=t.n;xr.symbolList.push(r,String(r),e,r+100,String(r+100),e+"-open"),xr.symbolNames[r]=e,xr.symbolFuncs[r]=t.f,xr.symbolBackOffs[r]=t.backoff||0,t.needLine&&(xr.symbolNeedLines[r]=!0),t.noDot?xr.symbolNoDot[r]=!0:xr.symbolList.push(r+200,String(r+200),e+"-dot",r+300,String(r+300),e+"-open-dot"),t.noFill&&(xr.symbolNoFill[r]=!0)});var qee=xr.symbolNames.length,Nee="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";xr.symbolNumber=function(e){if(yd(e))e=+e;else if(typeof e=="string"){var t=0;e.indexOf("-open")>0&&(t=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(t+=200,e=e.replace("-dot","")),e=xr.symbolNames.indexOf(e),e>=0&&(e+=t)}return e%100>=qee||e>=400?0:Math.floor(Math.max(e,0))};function VE(e,t,r,i){var a=e%100;return xr.symbolFuncs[a](t,r,i)+(e>=200?Nee:"")}var PE=See("~f"),HE={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};xr.gradient=function(e,t,r,i,a,s){var l=HE[i];return GE(e,t,r,l.type,a,s,l.start,l.stop,!1,l.reversed)};function GE(e,t,r,i,a,s,l,f,h,v){var m=a.length,_;i==="linear"?_={node:"linearGradient",attrs:{x1:l.x,y1:l.y,x2:f.x,y2:f.y,gradientUnits:h?"userSpaceOnUse":"objectBoundingBox"},reversed:v}:i==="radial"&&(_={node:"radialGradient",reversed:v});for(var T=new Array(m),S=0;S=0&&e.i===void 0&&(e.i=s.i),t.style("opacity",i.selectedOpacityFn?i.selectedOpacityFn(e):e.mo===void 0?l.opacity:e.mo),i.ms2mrc){var h;e.ms==="various"||l.size==="various"?h=3:h=i.ms2mrc(e.ms),e.mrc=h,i.selectedSizeFn&&(h=e.mrc=i.selectedSizeFn(e));var v=xr.symbolNumber(e.mx||l.symbol)||0;e.om=v%200>=100;var m=_5(e,r),_=g5(e,r);t.attr("d",VE(v,h,m,_))}var T=!1,S,C,E;if(e.so)E=f.outlierwidth,C=f.outliercolor,S=l.outliercolor;else{var D=(f||{}).width;E=(e.mlw+1||D+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?C=e.mlcc=i.lineScale(e.mlc):_i.isArrayOrTypedArray(f.color)?C=Mo.defaultLine:C=f.color,_i.isArrayOrTypedArray(l.color)&&(S=Mo.defaultLine,T=!0),"mc"in e?S=e.mcc=i.markerScale(e.mc):S=l.color||l.colors||"rgba(0,0,0,0)",i.selectedColorFn&&(S=i.selectedColorFn(e))}if(e.om)t.call(Mo.stroke,S).style({"stroke-width":(E||1)+"px",fill:"none"});else{t.style("stroke-width",(e.isBlank?0:E)+"px");var z=l.gradient,B=e.mgt;B?T=!0:B=z&&z.type,_i.isArrayOrTypedArray(B)&&(B=B[0],HE[B]||(B=0));var q=l.pattern,I=xr.getPatternAttr,O=q&&(I(q.shape,e.i,"")||I(q.path,e.i,""));if(B&&B!=="none"){var H=e.mgc;H?T=!0:H=z.color;var V=r.uid;T&&(V+="-"+e.i),xr.gradient(t,a,V,B,[[0,H],[1,S]],"fill")}else if(O){var W=!1,J=q.fgcolor;!J&&s&&s.color&&(J=s.color,W=!0);var te=I(J,e.i,s&&s.color||null),ne=I(q.bgcolor,e.i,null),oe=q.fgopacity,fe=I(q.size,e.i,8),ve=I(q.solidity,e.i,.3);W=W||e.mcc||_i.isArrayOrTypedArray(q.shape)||_i.isArrayOrTypedArray(q.path)||_i.isArrayOrTypedArray(q.bgcolor)||_i.isArrayOrTypedArray(q.fgcolor)||_i.isArrayOrTypedArray(q.size)||_i.isArrayOrTypedArray(q.solidity);var Se=r.uid;W&&(Se+="-"+e.i),xr.pattern(t,"point",a,Se,O,fe,ve,e.mcc,q.fillmode,ne,te,oe)}else _i.isArrayOrTypedArray(S)?Mo.fill(t,S[e.i]):Mo.fill(t,S);E&&Mo.stroke(t,C)}};xr.makePointStyleFns=function(e){var t={},r=e.marker;return t.markerScale=xr.tryColorscale(r,""),t.lineScale=xr.tryColorscale(r,"line"),K_.traceIs(e,"symbols")&&(t.ms2mrc=Dee.isBubble(e)?Pee(e):function(){return(r.size||6)/2}),e.selectedpoints&&_i.extendFlat(t,xr.makeSelectedPointStyleFns(e)),t};xr.makeSelectedPointStyleFns=function(e){var t={},r=e.selected||{},i=e.unselected||{},a=e.marker||{},s=r.marker||{},l=i.marker||{},f=a.opacity,h=s.opacity,v=l.opacity,m=h!==void 0,_=v!==void 0;(_i.isArrayOrTypedArray(f)||m||_)&&(t.selectedOpacityFn=function(I){var O=I.mo===void 0?a.opacity:I.mo;return I.selected?m?h:O:_?v:OE*O});var T=a.color,S=s.color,C=l.color;(S||C)&&(t.selectedColorFn=function(I){var O=I.mcc||T;return I.selected?S||O:C||O});var E=a.size,D=s.size,z=l.size,B=D!==void 0,q=z!==void 0;return K_.traceIs(e,"symbols")&&(B||q)&&(t.selectedSizeFn=function(I){var O=I.mrc||E/2;return I.selected?B?D/2:O:q?z/2:O}),t};xr.makeSelectedTextStyleFns=function(e){var t={},r=e.selected||{},i=e.unselected||{},a=e.textfont||{},s=r.textfont||{},l=i.textfont||{},f=a.color,h=s.color,v=l.color;return t.selectedTextColorFn=function(m){var _=m.tc||f;return m.selected?h||_:v||(h?_:Mo.addOpacity(_,OE))},t};xr.selectedPointStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=xr.makeSelectedPointStyleFns(t),i=t.marker||{},a=[];r.selectedOpacityFn&&a.push(function(s,l){s.style("opacity",r.selectedOpacityFn(l))}),r.selectedColorFn&&a.push(function(s,l){Mo.fill(s,r.selectedColorFn(l))}),r.selectedSizeFn&&a.push(function(s,l){var f=l.mx||i.symbol||0,h=r.selectedSizeFn(l);s.attr("d",VE(xr.symbolNumber(f),h,_5(l,t),g5(l,t))),l.mrc2=h}),a.length&&e.each(function(s){for(var l=to.select(this),f=0;f0?r:0}xr.textPointStyle=function(e,t,r){if(e.size()){var i;if(t.selectedpoints){var a=xr.makeSelectedTextStyleFns(t);i=a.selectedTextColorFn}var s=t.texttemplate,l=r._fullLayout;e.each(function(f){var h=to.select(this),v=s?_i.extractOption(f,t,"txt","texttemplate"):_i.extractOption(f,t,"tx","text");if(!v&&v!==0){h.remove();return}if(s){var m=t._module.formatLabels,_=m?m(f,t,l):{},T={};zee(T,t,f.i),v=_i.texttemplateString({data:[T,f,t._meta],fallback:t.texttemplatefallback,labels:_,locale:l._d3locale,template:v})}var S=f.tp||t.textposition,C=YE(f,t),E=i?i(f):f.tc||t.textfont.color;h.call(xr.font,{family:f.tf||t.textfont.family,weight:f.tw||t.textfont.weight,style:f.ty||t.textfont.style,variant:f.tv||t.textfont.variant,textcase:f.tC||t.textfont.textcase,lineposition:f.tE||t.textfont.lineposition,shadow:f.tS||t.textfont.shadow,size:C,color:E}).text(v).call(Q_.convertToTspans,r).call(ZE,S,C,f.mrc)})}};xr.selectedTextStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=xr.makeSelectedTextStyleFns(t);e.each(function(i){var a=to.select(this),s=r.selectedTextColorFn(i),l=i.tp||t.textposition,f=YE(i,t);Mo.fill(a,s);var h=K_.traceIs(t,"bar-like");ZE(a,l,f,i.mrc2||i.mrc,h)})}};var zE=.5;xr.smoothopen=function(e,t){if(e.length<3)return"M"+e.join("L");var r="M"+e[0],i=[],a;for(a=1;a=h||I>=m&&I<=h)&&(O<=_&&O>=v||O>=_&&O<=v)&&(e=[I,O])}return e}xr.applyBackoff=jE;xr.makeTester=function(){var e=_i.ensureSingleById(to.select("body"),"svg","js-plotly-tester",function(r){r.attr(Cee.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),t=_i.ensureSingle(e,"path","js-reference-point",function(r){r.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});xr.tester=e,xr.testref=t};xr.savedBBoxes={};var v5=0,Uee=1e4;xr.bBox=function(e,t,r){r||(r=IE(e));var i;if(r){if(i=xr.savedBBoxes[r],i)return _i.extendFlat({},i)}else if(e.childNodes.length===1){var a=e.childNodes[0];if(r=IE(a),r){var s=+a.getAttribute("x")||0,l=+a.getAttribute("y")||0,f=a.getAttribute("transform");if(!f){var h=xr.bBox(a,!1,r);return s&&(h.left+=s,h.right+=s),l&&(h.top+=l,h.bottom+=l),h}if(r+="~"+s+"~"+l+"~"+f,i=xr.savedBBoxes[r],i)return _i.extendFlat({},i)}}var v,m;t?v=e:(m=xr.tester.node(),v=e.cloneNode(!0),m.appendChild(v)),to.select(v).attr("transform",null).call(Q_.positionText,0,0);var _=v.getBoundingClientRect(),T=xr.testref.node().getBoundingClientRect();t||m.removeChild(v);var S={height:_.height,width:_.width,left:_.left-T.left,top:_.top-T.top,right:_.right-T.left,bottom:_.bottom-T.top};return v5>=Uee&&(xr.savedBBoxes={},v5=0),r&&(xr.savedBBoxes[r]=S),v5++,_i.extendFlat({},S)};function IE(e){var t=e.getAttribute("data-unformatted");if(t!==null)return t+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}xr.setClipUrl=function(e,t,r){e.attr("clip-path",y5(t,r))};function y5(e,t){if(!e)return null;var r=t._context,i=r._exportedPlot?"":r._baseUrl||"";return i?"url('"+i+"#"+e+"')":"url(#"+e+")"}xr.getTranslate=function(e){var t=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",i=e[r]("transform")||"",a=i.replace(t,function(s,l,f){return[l,f].join(" ")}).split(" ");return{x:+a[0]||0,y:+a[1]||0}};xr.setTranslate=function(e,t,r){var i=/(\btranslate\(.*?\);?)/,a=e.attr?"attr":"getAttribute",s=e.attr?"attr":"setAttribute",l=e[a]("transform")||"";return t=t||0,r=r||0,l=l.replace(i,"").trim(),l+=Jy(t,r),l=l.trim(),e[s]("transform",l),l};xr.getScale=function(e){var t=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",i=e[r]("transform")||"",a=i.replace(t,function(s,l,f){return[l,f].join(" ")}).split(" ");return{x:+a[0]||1,y:+a[1]||1}};xr.setScale=function(e,t,r){var i=/(\bscale\(.*?\);?)/,a=e.attr?"attr":"getAttribute",s=e.attr?"attr":"setAttribute",l=e[a]("transform")||"";return t=t||1,r=r||1,l=l.replace(i,"").trim(),l+="scale("+t+","+r+")",l=l.trim(),e[s]("transform",l),l};var Vee=/\s*sc.*/;xr.setPointGroupScale=function(e,t,r){if(t=t||1,r=r||1,!!e){var i=t===1&&r===1?"":"scale("+t+","+r+")";e.each(function(){var a=(this.getAttribute("transform")||"").replace(Vee,"");a+=i,a=a.trim(),this.setAttribute("transform",a)})}};var Hee=/translate\([^)]*\)\s*$/;xr.setTextPointsScale=function(e,t,r){e&&e.each(function(){var i,a=to.select(this),s=a.select("text");if(s.node()){var l=parseFloat(s.attr("x")||0),f=parseFloat(s.attr("y")||0),h=(a.attr("transform")||"").match(Hee);t===1&&r===1?i=[]:i=[Jy(l,f),"scale("+t+","+r+")",Jy(-l,-f)],h&&i.push(h),a.attr("transform",i.join(""))}})};function g5(e,t){var r;return e&&(r=e.mf),r===void 0&&(r=t.marker&&t.marker.standoff||0),!t._geo&&!t._xA?-r:r}xr.getMarkerStandoff=g5;var jy=Math.atan2,dd=Math.cos,I0=Math.sin;function RE(e,t){var r=t[0],i=t[1];return[r*dd(e)-i*I0(e),r*I0(e)+i*dd(e)]}var FE,qE,NE,BE,d5,p5;function _5(e,t){var r=e.ma;r===void 0&&(r=t.marker.angle,(!r||_i.isArrayOrTypedArray(r))&&(r=0));var i,a,s=t.marker.angleref;if(s==="previous"||s==="north"){if(t._geo){var l=t._geo.project(e.lonlat);i=l[0],a=l[1]}else{var f=t._xA,h=t._yA;if(f&&h)i=f.c2p(e.x),a=h.c2p(e.y);else return 90}if(t._geo){var v=e.lonlat[0],m=e.lonlat[1],_=t._geo.project([v,m+1e-5]),T=t._geo.project([v+1e-5,m]),S=jy(T[1]-a,T[0]-i),C=jy(_[1]-a,_[0]-i),E;if(s==="north")E=r/180*Math.PI;else if(s==="previous"){var D=v/180*Math.PI,z=m/180*Math.PI,B=FE/180*Math.PI,q=qE/180*Math.PI,I=B-D,O=dd(q)*I0(I),H=I0(q)*dd(z)-dd(q)*I0(z)*dd(I);E=-jy(O,H)-Math.PI,FE=v,qE=m}var V=RE(S,[dd(E),0]),W=RE(C,[I0(E),0]);r=jy(V[1]+W[1],V[0]+W[0])/Math.PI*180,s==="previous"&&!(p5===t.uid&&e.i===d5+1)&&(r=null)}if(s==="previous"&&!t._geo)if(p5===t.uid&&e.i===d5+1&&yd(i)&&yd(a)){var J=i-NE,te=a-BE,ne=t.line&&t.line.shape||"",oe=ne.slice(ne.length-1);oe==="h"&&(te=0),oe==="v"&&(J=0),r+=jy(te,J)/Math.PI*180+90}else r=null}return NE=i,BE=a,d5=e.i,p5=t.uid,r}xr.getMarkerAngle=_5});var Ky=pe((_1e,eL)=>{"use strict";var R0=ja(),Gee=Da(),Zee=eo(),x5=sa(),gd=Bt(),KE=gd.strTranslate,$_=xi(),e2=Oa(),F0=co(),QE=s_(),Yee=ts().OPPOSITE_SIDE,$E=/ [XY][0-9]* /,b5=1.6,w5=1.6;function Wee(e,t,r){var i=e._fullLayout,a=r.propContainer,s=r.propName,l=r.placeholder,f=r.traceIndex,h=r.avoid||{},v=r.attributes,m=r.transform,_=r.containerGroup,T=1,S=a.title,C=(S&&S.text?S.text:"").trim(),E=!1,D=S&&S.font?S.font:{},z=D.family,B=D.size,q=D.color,I=D.weight,O=D.style,H=D.variant,V=D.textcase,W=D.lineposition,J=D.shadow,te=r.subtitlePropName,ne=!!te,oe=r.subtitlePlaceholder,fe=(a.title||{}).subtitle||{text:"",font:{}},ve=(fe.text||"").trim(),Se=!1,Me=1,Ae=fe.font,we=Ae.family,Te=Ae.size,Ce=Ae.color,Le=Ae.weight,Ke=Ae.style,lt=Ae.variant,at=Ae.textcase,gt=Ae.lineposition,Ye=Ae.shadow,St;s==="title.text"?St="titleText":s.indexOf("axis")!==-1?St="axisTitleText":s.indexOf("colorbar")!==-1&&(St="colorbarTitleText");var it=e._context.edits[St];function mt(Ut,Ct){return Ut===void 0||Ct===void 0?!1:Ut.replace($E," % ")===Ct.replace($E," % ")}C===""?T=0:mt(C,l)&&(it||(C=""),T=.2,E=!0),ne&&(ve===""?Me=0:mt(ve,oe)&&(it||(ve=""),Me=.2,Se=!0)),r._meta?C=gd.templateString(C,r._meta):i._meta&&(C=gd.templateString(C,i._meta));var bt=C||ve||it,vt;_||(_=gd.ensureSingle(i._infolayer,"g","g-"+t),vt=i._hColorbarMoveTitle);var de=_.selectAll("text."+t).data(bt?[0]:[]);de.enter().append("text"),de.text(C).attr("class",t),de.exit().remove();var De=null,ge=t+"-subtitle",rt=ve||it;if(ne&&(De=_.selectAll("text."+ge).data(rt?[0]:[]),De.enter().append("text"),De.text(ve).attr("class",ge),De.exit().remove()),!bt)return _;function dt(Ut,Ct){gd.syncOrAsync([We,qt],{title:Ut,subtitle:Ct})}function We(Ut){var Ct=Ut.title,At=Ut.subtitle,Vt;!m&&vt&&(m={}),m?(Vt="",m.rotate&&(Vt+="rotate("+[m.rotate,v.x,v.y]+")"),(m.offset||vt)&&(Vt+=KE(0,(m.offset||0)-(vt||0)))):Vt=null,Ct.attr("transform",Vt);function Ht(ct){if(ct){var pt=R0.select(ct.node().parentNode).select("."+ge);if(!pt.empty()){var Ot=ct.node().getBBox();if(Ot.height){var er=Ot.y+Ot.height+b5*Te;pt.attr("y",er)}}}}if(Ct.style("opacity",T*e2.opacity(q)).call($_.font,{color:e2.rgb(q),size:R0.round(B,2),family:z,weight:I,style:O,variant:H,textcase:V,shadow:J,lineposition:W}).attr(v).call(F0.convertToTspans,e,Ht),At&&!At.empty()){var Be=_.select("."+t+"-math-group"),st=Ct.node().getBBox(),sr=Be.node()?Be.node().getBBox():void 0,Dr=sr?sr.y+sr.height+b5*Te:st.y+st.height+w5*Te,Et=gd.extendFlat({},v,{y:Dr});At.attr("transform",Vt),At.style("opacity",Me*e2.opacity(Ce)).call($_.font,{color:e2.rgb(Ce),size:R0.round(Te,2),family:we,weight:Le,style:Ke,variant:lt,textcase:at,shadow:Ye,lineposition:gt}).attr(Et).call(F0.convertToTspans,e)}return Zee.previousPromises(e)}function qt(Ut){var Ct=Ut.title,At=R0.select(Ct.node().parentNode);if(h&&h.selection&&h.side&&C){At.attr("transform",null);var Vt=Yee[h.side],Ht=h.side==="left"||h.side==="top"?-1:1,Be=Gee(h.pad)?h.pad:2,st=$_.bBox(At.node()),sr={t:0,b:0,l:0,r:0},Dr=e._fullLayout._reservedMargin;for(var Et in Dr)for(var ct in Dr[Et]){var pt=Dr[Et][ct];sr[ct]=Math.max(sr[ct],pt)}var Ot={left:sr.l,top:sr.t,right:i.width-sr.r,bottom:i.height-sr.b},er=h.maxShift||Ht*(Ot[h.side]-st[h.side]),Zt=0;if(er<0)Zt=er;else{var Kt=h.offsetLeft||0,pr=h.offsetTop||0;st.left-=Kt,st.right-=Kt,st.top-=pr,st.bottom-=pr,h.selection.each(function(){var ur=$_.bBox(this);gd.bBoxIntersect(st,ur,Be)&&(Zt=Math.max(Zt,Ht*(ur[h.side]-st[Vt])+Be))}),Zt=Math.min(er,Zt),a._titleScoot=Math.abs(Zt)}if(Zt>0||er<0){var yr={left:[-Zt,0],right:[Zt,0],top:[0,-Zt],bottom:[0,Zt]}[h.side];At.attr("transform",KE(yr[0],yr[1]))}}}de.call(dt,De);function Dt(Ut,Ct){Ut.text(Ct).on("mouseover.opacity",function(){R0.select(this).transition().duration(QE.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){R0.select(this).transition().duration(QE.HIDE_PLACEHOLDER).style("opacity",0)})}if(it&&(C?de.on(".opacity",null):(Dt(de,l),E=!0),de.call(F0.makeEditable,{gd:e}).on("edit",function(Ut){f!==void 0?x5.call("_guiRestyle",e,s,Ut,f):x5.call("_guiRelayout",e,s,Ut)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(dt)}).on("input",function(Ut){this.text(Ut||" ").call(F0.positionText,v.x,v.y)}),ne)){if(ne&&!C){var Tt=de.node().getBBox(),Rt=Tt.y+Tt.height+w5*Te;De.attr("y",Rt)}ve?De.on(".opacity",null):(Dt(De,oe),Se=!0),De.call(F0.makeEditable,{gd:e}).on("edit",function(Ut){x5.call("_guiRelayout",e,"title.subtitle.text",Ut)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(dt)}).on("input",function(Ut){this.text(Ut||" ").call(F0.positionText,De.attr("x"),De.attr("y"))})}return de.classed("js-placeholder",E),De&&!De.empty()&&De.classed("js-placeholder",Se),_}eL.exports={draw:Wee,SUBTITLE_PADDING_EM:w5,SUBTITLE_PADDING_MATHJAX_EM:b5}});var l2=pe((x1e,nL)=>{"use strict";var Xee=ja(),jee=l0().utcFormat,Ri=Bt(),Jee=Ri.numberFormat,Ef=Da(),Fh=Ri.cleanNumber,Kee=Ri.ms2DateTime,tL=Ri.dateTime2ms,Lf=Ri.ensureNumber,rL=Ri.isArrayOrTypedArray,qh=Zi(),t2=qh.FP_SAFE,Fu=qh.BADNUM,Qee=qh.LOG_CLIP,$ee=qh.ONEWEEK,r2=qh.ONEDAY,a2=qh.ONEHOUR,aL=qh.ONEMIN,iL=qh.ONESEC,i2=Xn(),s2=Ao(),n2=s2.HOUR_PATTERN,o2=s2.WEEKDAY_PATTERN;function Qy(e){return Math.pow(10,e)}function T5(e){return e!=null}nL.exports=function(t,r){r=r||{};var i=t._id||"x",a=i.charAt(0);function s(I,O){if(I>0)return Math.log(I)/Math.LN10;if(I<=0&&O&&t.range&&t.range.length===2){var H=t.range[0],V=t.range[1];return .5*(H+V-2*Qee*Math.abs(H-V))}else return Fu}function l(I,O,H,V){if((V||{}).msUTC&&Ef(I))return+I;var W=tL(I,H||t.calendar);if(W===Fu)if(Ef(I)){I=+I;var J=Math.floor(Ri.mod(I+.05,1)*10),te=Math.round(I-J/10);W=tL(new Date(te))+J/10}else return Fu;return W}function f(I,O,H){return Kee(I,O,H||t.calendar)}function h(I){return t._categories[Math.round(I)]}function v(I){if(T5(I)){if(t._categoriesMap===void 0&&(t._categoriesMap={}),t._categoriesMap[I]!==void 0)return t._categoriesMap[I];t._categories.push(typeof I=="number"?String(I):I);var O=t._categories.length-1;return t._categoriesMap[I]=O,O}return Fu}function m(I,O){for(var H=new Array(O),V=0;Vt.range[1]&&(H=!H);for(var V=H?-1:1,W=V*I,J=0,te=0;teoe)J=te+1;else{J=W<(ne+oe)/2?te:te+1;break}}var fe=t._B[J]||0;return isFinite(fe)?C(I,t._m2,fe):0},z=function(I){var O=t._rangebreaks.length;if(!O)return E(I,t._m,t._b);for(var H=0,V=0;Vt._rangebreaks[V].pmax&&(H=V+1);return E(I,t._m2,t._B[H])}}t.c2l=t.type==="log"?s:Lf,t.l2c=t.type==="log"?Qy:Lf,t.l2p=D,t.p2l=z,t.c2p=t.type==="log"?function(I,O){return D(s(I,O))}:D,t.p2c=t.type==="log"?function(I){return Qy(z(I))}:z,["linear","-"].indexOf(t.type)!==-1?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=Fh,t.c2d=t.c2r=t.l2d=t.l2r=Lf,t.d2p=t.r2p=function(I){return t.l2p(Fh(I))},t.p2d=t.p2r=z,t.cleanPos=Lf):t.type==="log"?(t.d2r=t.d2l=function(I,O){return s(Fh(I),O)},t.r2d=t.r2c=function(I){return Qy(Fh(I))},t.d2c=t.r2l=Fh,t.c2d=t.l2r=Lf,t.c2r=s,t.l2d=Qy,t.d2p=function(I,O){return t.l2p(t.d2r(I,O))},t.p2d=function(I){return Qy(z(I))},t.r2p=function(I){return t.l2p(Fh(I))},t.p2r=z,t.cleanPos=Lf):t.type==="date"?(t.d2r=t.r2d=Ri.identity,t.d2c=t.r2c=t.d2l=t.r2l=l,t.c2d=t.c2r=t.l2d=t.l2r=f,t.d2p=t.r2p=function(I,O,H){return t.l2p(l(I,0,H))},t.p2d=t.p2r=function(I,O,H){return f(z(I),O,H)},t.cleanPos=function(I){return Ri.cleanDate(I,Fu,t.calendar)}):t.type==="category"?(t.d2c=t.d2l=v,t.r2d=t.c2d=t.l2d=h,t.d2r=t.d2l_noadd=T,t.r2c=function(I){var O=S(I);return O!==void 0?O:t.fraction2r(.5)},t.l2r=t.c2r=Lf,t.r2l=S,t.d2p=function(I){return t.l2p(t.r2c(I))},t.p2d=function(I){return h(z(I))},t.r2p=t.d2p,t.p2r=z,t.cleanPos=function(I){return typeof I=="string"&&I!==""?I:Lf(I)}):t.type==="multicategory"&&(t.r2d=t.c2d=t.l2d=h,t.d2r=t.d2l_noadd=T,t.r2c=function(I){var O=T(I);return O!==void 0?O:t.fraction2r(.5)},t.r2c_just_indices=_,t.l2r=t.c2r=Lf,t.r2l=T,t.d2p=function(I){return t.l2p(t.r2c(I))},t.p2d=function(I){return h(z(I))},t.r2p=t.d2p,t.p2r=z,t.cleanPos=function(I){return Array.isArray(I)||typeof I=="string"&&I!==""?I:Lf(I)},t.setupMultiCategory=function(I){var O=t._traceIndices,H,V,W=t._matchGroup;if(W&&t._categories.length===0){for(var J in W)if(J!==i){var te=r[i2.id2name(J)];O=O.concat(te._traceIndices)}}var ne=[[0,{}],[0,{}]],oe=[];for(H=0;Hte[1]&&(V[J?0:1]=H),V[0]===V[1]){var ne=t.l2r(O),oe=t.l2r(H);if(O!==void 0){var fe=ne+1;H!==void 0&&(fe=Math.min(fe,oe)),V[J?1:0]=fe}if(H!==void 0){var ve=oe+1;O!==void 0&&(ve=Math.max(ve,ne)),V[J?0:1]=ve}}}},t.cleanRange=function(I,O){t._cleanRange(I,O),t.limitRange(I)},t._cleanRange=function(I,O){O||(O={}),I||(I="range");var H=Ri.nestedProperty(t,I).get(),V,W;if(t.type==="date"?W=Ri.dfltRange(t.calendar):a==="y"?W=s2.DFLTRANGEY:t._name==="realaxis"?W=[0,1]:W=O.dfltRange||s2.DFLTRANGEX,W=W.slice(),(t.rangemode==="tozero"||t.rangemode==="nonnegative")&&(W[0]=0),!H||H.length!==2){Ri.nestedProperty(t,I).set(W);return}var J=H[0]===null,te=H[1]===null;for(t.type==="date"&&!t.autorange&&(H[0]=Ri.cleanDate(H[0],Fu,t.calendar),H[1]=Ri.cleanDate(H[1],Fu,t.calendar)),V=0;V<2;V++)if(t.type==="date"){if(!Ri.isDateTime(H[V],t.calendar)){t[I]=W;break}if(t.r2l(H[0])===t.r2l(H[1])){var ne=Ri.constrain(t.r2l(H[0]),Ri.MIN_MS+1e3,Ri.MAX_MS-1e3);H[0]=t.l2r(ne-1e3),H[1]=t.l2r(ne+1e3);break}}else{if(!Ef(H[V]))if(!(J||te)&&Ef(H[1-V]))H[V]=H[1-V]*(V?10:.1);else{t[I]=W;break}if(H[V]<-t2?H[V]=-t2:H[V]>t2&&(H[V]=t2),H[0]===H[1]){var oe=Math.max(1,Math.abs(H[0]*1e-6));H[0]-=oe,H[1]+=oe}}},t.setScale=function(I){var O=r._size;if(t.overlaying){var H=i2.getFromId({_fullLayout:r},t.overlaying);t.domain=H.domain}var V=I&&t._r?"_r":"range",W=t.calendar;t.cleanRange(V);var J=t.r2l(t[V][0],W),te=t.r2l(t[V][1],W),ne=a==="y";if(ne?(t._offset=O.t+(1-t.domain[1])*O.h,t._length=O.h*(t.domain[1]-t.domain[0]),t._m=t._length/(J-te),t._b=-t._m*te):(t._offset=O.l+t.domain[0]*O.w,t._length=O.w*(t.domain[1]-t.domain[0]),t._m=t._length/(te-J),t._b=-t._m*J),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks){var oe,fe;if(t._rangebreaks=t.locateBreaks(Math.min(J,te),Math.max(J,te)),t._rangebreaks.length){for(oe=0;oete&&(ve=!ve),ve&&t._rangebreaks.reverse();var Se=ve?-1:1;for(t._m2=Se*t._length/(Math.abs(te-J)-t._lBreaks),t._B.push(-t._m2*(ne?te:J)),oe=0;oeW&&(W+=7,JW&&(W+=24,J=V&&J=V&&I=Ye.min&&(KeYe.max&&(Ye.max=lt),at=!1)}at&&te.push({min:Ke,max:lt})}};for(H=0;H{"use strict";var oL=Da(),A5=Bt(),ete=Zi().BADNUM,u2=A5.isArrayOrTypedArray,tte=A5.isDateTime,rte=A5.cleanNumber,sL=Math.round;uL.exports=function(t,r,i){var a=t,s=i.noMultiCategory;if(u2(a)&&!a.length)return"-";if(!s&&ste(a))return"multicategory";if(s&&Array.isArray(a[0])){for(var l=[],f=0;fs*2}function lL(e){return Math.max(1,(e-1)/1e3)}function ote(e,t){for(var r=e.length,i=lL(r),a=0,s=0,l={},f=0;fa*2}function ste(e){return u2(e[0])&&u2(e[1])}});var $y=pe((w1e,yL)=>{"use strict";var lte=ja(),vL=Da(),Nh=Bt(),f2=Zi().FP_SAFE,ute=sa(),fte=xi(),dL=Xn(),cte=dL.getFromId,hte=dL.isLinked;yL.exports={applyAutorangeOptions:mL,getAutoRange:S5,makePadFn:k5,doAutoRange:dte,findExtremes:pte,concatExtremes:L5};function S5(e,t){var r,i,a=[],s=e._fullLayout,l=k5(s,t,0),f=k5(s,t,1),h=L5(e,t),v=h.min,m=h.max;if(v.length===0||m.length===0)return Nh.simpleMap(t.range,t.r2l);var _=v[0].val,T=m[0].val;for(r=1;r0&&(te=q-l(H)-f(V),te>I?ne/te>O&&(W=H,J=V,O=ne/te):ne/q>O&&(W={val:H.val,nopad:1},J={val:V.val,nopad:1},O=ne/q));function oe(Ae,we){return Math.max(Ae,f(we))}if(_===T){var fe=_-1,ve=_+1;if(z)if(_===0)a=[0,1];else{var Se=(_>0?m:v).reduce(oe,0),Me=_/(1-Math.min(.5,Se/q));a=_>0?[0,Me]:[Me,0]}else B?a=[Math.max(0,fe),Math.max(1,ve)]:a=[fe,ve]}else z?(W.val>=0&&(W={val:0,nopad:1}),J.val<=0&&(J={val:0,nopad:1})):B&&(W.val-O*l(W)<0&&(W={val:0,nopad:1}),J.val<=0&&(J={val:1,nopad:1})),O=(J.val-W.val-fL(t,H.val,V.val))/(q-l(W)-f(J)),a=[W.val-O*l(W),J.val+O*f(J)];return a=mL(a,t),t.limitRange&&t.limitRange(),C&&a.reverse(),Nh.simpleMap(a,t.l2r||Number)}function fL(e,t,r){var i=0;if(e.rangebreaks)for(var a=e.locateBreaks(t,r),s=0;s0?r.ppadplus:r.ppadminus)||r.ppad||0),H=I((e._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),V=I(r.vpadplus||r.vpad),W=I(r.vpadminus||r.vpad);if(!v){if(B=1/0,q=-1/0,h)for(_=0;_0&&(B=T),T>q&&T-f2&&(B=T),T>q&&T=ne;_--)te(_);return{min:i,max:a,opts:r}}function C5(e,t,r,i){pL(e,t,r,i,mte)}function E5(e,t,r,i){pL(e,t,r,i,yte)}function pL(e,t,r,i,a){for(var s=i.tozero,l=i.extrapad,f=!0,h=0;h=r&&(v.extrapad||!l)){f=!1;break}else a(t,v.val)&&v.pad<=r&&(l||!v.extrapad)&&(e.splice(h,1),h--)}if(f){var m=s&&t===0;e.push({val:t,pad:m?0:r,extrapad:m?!1:l})}}function hL(e){return vL(e)&&Math.abs(e)=t}function gte(e,t){var r=t.autorangeoptions;return r&&r.minallowed!==void 0&&c2(t,r.minallowed,r.maxallowed)?r.minallowed:r&&r.clipmin!==void 0&&c2(t,r.clipmin,r.clipmax)?Math.max(e,t.d2l(r.clipmin)):e}function _te(e,t){var r=t.autorangeoptions;return r&&r.maxallowed!==void 0&&c2(t,r.minallowed,r.maxallowed)?r.maxallowed:r&&r.clipmax!==void 0&&c2(t,r.clipmin,r.clipmax)?Math.min(e,t.d2l(r.clipmax)):e}function c2(e,t,r){return t!==void 0&&r!==void 0?(t=e.d2l(t),r=e.d2l(r),t=h&&(s=h,r=h),l<=h&&(l=h,i=h)}}return r=gte(r,t),i=_te(i,t),[r,i]}});var Xi=pe((T1e,OL)=>{"use strict";var Wl=ja(),Bn=Da(),q0=eo(),tg=sa(),Qr=Bt(),N0=Qr.strTranslate,_d=co(),xte=Ky(),rg=Oa(),ol=xi(),bte=Ru(),gL=Ww(),So=Zi(),wte=So.ONEMAXYEAR,d2=So.ONEAVGYEAR,p2=So.ONEMINYEAR,Tte=So.ONEMAXQUARTER,I5=So.ONEAVGQUARTER,m2=So.ONEMINQUARTER,Ate=So.ONEMAXMONTH,B0=So.ONEAVGMONTH,y2=So.ONEMINMONTH,sl=So.ONEWEEK,as=So.ONEDAY,Bh=as/2,Pf=So.ONEHOUR,ag=So.ONEMIN,g2=So.ONESEC,Mte=So.ONEMILLI,Ste=So.ONEMICROSEC,xd=So.MINUS_SIGN,x2=So.BADNUM,R5={K:"zeroline"},F5={K:"gridline",L:"path"},q5={K:"minor-gridline",L:"path"},EL={K:"tick",L:"path"},_L={K:"tick",L:"text"},xL={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},b2=ts(),eg=b2.MID_SHIFT,bd=b2.CAP_SHIFT,ig=b2.LINE_SPACING,kte=b2.OPPOSITE_SIDE,_2=3,$t=OL.exports={};$t.setConvert=l2();var Cte=M5(),wc=Xn(),Ete=wc.idSort,Lte=wc.isLinked;$t.id2name=wc.id2name;$t.name2id=wc.name2id;$t.cleanId=wc.cleanId;$t.list=wc.list;$t.listIds=wc.listIds;$t.getFromId=wc.getFromId;$t.getFromTrace=wc.getFromTrace;var LL=$y();$t.getAutoRange=LL.getAutoRange;$t.findExtremes=LL.findExtremes;var Dte=1e-4;function U5(e){var t=(e[1]-e[0])*Dte;return[e[0]-t,e[1]+t]}$t.coerceRef=function(e,t,r,i,a,s){var l=i.charAt(i.length-1),f=r._fullLayout._subplots[l+"axis"],h=i+"ref",v={};return a||(a=f[0]||(typeof s=="string"?s:s[0])),s||(s=a),f=f.concat(f.map(function(m){return m+" domain"})),v[h]={valType:"enumerated",values:f.concat(s?typeof s=="string"?[s]:s:[]),dflt:a},Qr.coerce(e,t,v,h)};$t.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};$t.coercePosition=function(e,t,r,i,a,s){var l,f,h=$t.getRefType(i);if(h!=="range")l=Qr.ensureNumber,f=r(a,s);else{var v=$t.getFromId(t,i);s=v.fraction2r(s),f=r(a,s),l=v.cleanPos}e[a]=l(f)};$t.cleanPosition=function(e,t,r){var i=r==="paper"||r==="pixel"?Qr.ensureNumber:$t.getFromId(t,r).cleanPos;return i(e)};$t.redrawComponents=function(e,t){t=t||$t.listIds(e);var r=e._fullLayout;function i(a,s,l,f){for(var h=tg.getComponentMethod(a,s),v={},m=0;m2e-6||((r-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};$t.saveRangeInitial=function(e,t){for(var r=$t.list(e,"",!0),i=!1,a=0;a_*.3||v(i)||v(a))){var T=r.dtick/2;e+=e+Tl){var f=Number(r.substr(1));s.exactYears>l&&f%12===0?e=$t.tickIncrement(e,"M6","reverse")+as*1.5:s.exactMonths>l?e=$t.tickIncrement(e,"M1","reverse")+as*15.5:e-=Bh;var h=$t.tickIncrement(e,r);if(h<=i)return h}return e}$t.prepMinorTicks=function(e,t,r){if(!t.minor.dtick){delete e.dtick;var i=t.dtick&&Bn(t._tmin),a;if(i){var s=$t.tickIncrement(t._tmin,t.dtick,!0);a=[t._tmin,s*.99+t._tmin*.01]}else{var l=Qr.simpleMap(t.range,t.r2l);a=[l[0],.8*l[0]+.2*l[1]]}if(e.range=Qr.simpleMap(a,t.l2r),e._isMinor=!0,$t.prepTicks(e,r),i){var f=Bn(t.dtick),h=Bn(e.dtick),v=f?t.dtick:+t.dtick.substring(1),m=h?e.dtick:+e.dtick.substring(1);f&&h?D5(v,m)?v===2*sl&&m===2*as&&(e.dtick=sl):v===2*sl&&m===3*as?e.dtick=sl:v===sl&&!(t._input.minor||{}).nticks?e.dtick=as:TL(v/m,2.5)?e.dtick=v/2:e.dtick=v:String(t.dtick).charAt(0)==="M"?h?e.dtick="M1":D5(v,m)?v>=12&&m===2&&(e.dtick="M3"):e.dtick=t.dtick:String(e.dtick).charAt(0)==="L"?String(t.dtick).charAt(0)==="L"?D5(v,m)||(e.dtick=TL(v/m,2.5)?t.dtick/2:t.dtick):e.dtick="D1":e.dtick==="D2"&&+t.dtick>1&&(e.dtick=1)}e.range=t.range}t.minor._tick0Init===void 0&&(e.tick0=t.tick0)};function D5(e,t){return Math.abs((e/t+.5)%1-.5)<.001}function TL(e,t){return Math.abs(e/t-1)<.001}$t.prepTicks=function(e,t){var r=Qr.simpleMap(e.range,e.r2l,void 0,void 0,t);if(e.tickmode==="auto"||!e.dtick){var i=e.nticks,a;i||(e.type==="category"||e.type==="multicategory"?(a=e.tickfont?Qr.bigFont(e.tickfont.size||12):15,i=e._length/a):(a=e._id.charAt(0)==="y"?40:80,i=Qr.constrain(e._length/a,4,9)+1),e._name==="radialaxis"&&(i*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(i*=100),e._roughDTick=Math.abs(r[1]-r[0])/i,$t.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(s=i-1,l=i):(s=i,l=i);var f=e[s].value,h=e[l].value,v=Math.abs(h-f),m=r||v,_=0;m>=p2?v>=p2&&v<=wte?_=v:_=d2:r===I5&&m>=m2?v>=m2&&v<=Tte?_=v:_=I5:m>=y2?v>=y2&&v<=Ate?_=v:_=B0:r===sl&&m>=sl?_=sl:m>=as?_=as:r===Bh&&m>=Bh?_=Bh:r===Pf&&m>=Pf&&(_=Pf);var T;_>=v&&(_=v,T=!0);var S=a+_;if(t.rangebreaks&&_>0){for(var C=84,E=0,D=0;Dsl&&(_=v)}(_>0||i===0)&&(e[i].periodX=a+_/2)}}$t.calcTicks=function(t,r){for(var i=t.type,a=t.calendar,s=t.ticklabelstep,l=t.ticklabelmode==="period",f=t.range[0]>t.range[1],h=!t.ticklabelindex||Qr.isArrayOrTypedArray(t.ticklabelindex)?t.ticklabelindex:[t.ticklabelindex],v=Qr.simpleMap(t.range,t.r2l,void 0,void 0,r),m=v[1]=(q?0:1);I--){var O=!I;I?(t._dtickInit=t.dtick,t._tick0Init=t.tick0):(t.minor._dtickInit=t.minor.dtick,t.minor._tick0Init=t.minor.tick0);var H=I?t:Qr.extendFlat({},t,t.minor);if(O?$t.prepMinorTicks(H,t,r):$t.prepTicks(H,r),H.tickmode==="array"){I?(D=[],C=AL(t,!O)):(z=[],E=AL(t,!O));continue}if(H.tickmode==="sync"){D=[],C=qte(t);continue}var V=U5(v),W=V[0],J=V[1],te=Bn(H.dtick),ne=i==="log"&&!(te||H.dtick.charAt(0)==="L"),oe=$t.tickFirst(H,r);if(I){if(t._tmin=oe,oe=J:ve<=J;ve=$t.tickIncrement(ve,Ae,m,a)){if(I&&Se++,H.rangebreaks&&!m){if(ve=T)break}if(D.length>S||ve===fe)break;fe=ve;var we={value:ve};I?(ne&&ve!==(ve|0)&&(we.simpleLabel=!0),s>1&&Se%s&&(we.skipLabel=!0),D.push(we)):(we.minor=!0,z.push(we))}}if(!z||z.length<2)h=!1;else{var Te=(z[1].value-z[0].value)*(f?-1:1);lre(Te,t.tickformat)||(h=!1)}if(!h)B=D;else{var Ce=D.concat(z);l&&D.length&&(Ce=Ce.slice(1)),Ce=Ce.sort(function(Rt,Ut){return Rt.value-Ut.value}).filter(function(Rt,Ut,Ct){return Ut===0||Rt.value!==Ct[Ut-1].value});var Le=Ce.map(function(Rt,Ut){return Rt.minor===void 0&&!Rt.skipLabel?Ut:null}).filter(function(Rt){return Rt!==null});Le.forEach(function(Rt){h.map(function(Ut){var Ct=Rt+Ut;Ct>=0&&Ct-1;bt--){if(D[bt].drop){D.splice(bt,1);continue}D[bt].value=z5(D[bt].value,t);var ge=t.c2p(D[bt].value);(vt?De>ge-de:DeT||At<_)&&(At>T&&(Ct.periodX=T),At<_&&(Ct.periodX=_),dt(Ct))),Ct}var qt;for(bt=0;bta&&Td2)t/=d2,i=a(10),e.dtick="M"+12*Df(t,i,h2);else if(s>B0)t/=B0,e.dtick="M"+Df(t,1,ML);else if(s>as){if(e.dtick=Df(t,as,e._hasDayOfWeekBreaks?[1,2,7,14]:Nte),!r){var l=$t.getTickFormat(e),f=e.ticklabelmode==="period";f&&(e._rawTick0=e.tick0),/%[uVW]/.test(l)?e.tick0=Qr.dateTick0(e.calendar,2):e.tick0=Qr.dateTick0(e.calendar,1),f&&(e._dowTick0=e.tick0)}}else s>Pf?e.dtick=Df(t,Pf,ML):s>ag?e.dtick=Df(t,ag,SL):s>g2?e.dtick=Df(t,g2,SL):(i=a(10),e.dtick=Df(t,i,h2))}else if(e.type==="log"){e.tick0=0;var h=Qr.simpleMap(e.range,e.r2l);if(e._isMinor&&(t*=1.5),t>.7)e.dtick=Math.ceil(t);else if(Math.abs(h[1]-h[0])<1){var v=1.5*Math.abs((h[1]-h[0])/t);t=Math.abs(Math.pow(10,h[1])-Math.pow(10,h[0]))/v,i=a(10),e.dtick="L"+Df(t,i,h2)}else e.dtick=t>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(t,1))):Z5(e)?(e.tick0=0,i=1,e.dtick=Df(t,i,Bte)):(e.tick0=0,i=a(10),e.dtick=Df(t,i,h2));if(e.dtick===0&&(e.dtick=1),!Bn(e.dtick)&&typeof e.dtick!="string"){var m=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(m)}};function IL(e){var t=e.dtick;if(e._tickexponent=0,!Bn(t)&&typeof t!="string"&&(t=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var r=e.r2l(e.tick0),i=e.l2r(r).replace(/(^-|i)/g,""),a=i.length;if(String(t).charAt(0)==="M")a>10||i.substr(5)!=="01-01"?e._tickround="d":e._tickround=+t.substr(1)%12===0?"y":"m";else if(t>=as&&a<=10||t>=as*15)e._tickround="d";else if(t>=ag&&a<=16||t>=Pf)e._tickround="M";else if(t>=g2&&a<=19||t>=ag)e._tickround="S";else{var s=e.l2r(r+t).replace(/^-/,"").length;e._tickround=Math.max(a,s)-20,e._tickround<0&&(e._tickround=4)}}else if(Bn(t)||t.charAt(0)==="L"){var l=e.range.map(e.r2d||Number);Bn(t)||(t=Number(t.substr(1))),e._tickround=2-Math.floor(Math.log(t)/Math.LN10+.01);var f=Math.max(Math.abs(l[0]),Math.abs(l[1])),h=Math.floor(Math.log(f)/Math.LN10+.01),v=e.minexponent===void 0?3:e.minexponent;Math.abs(h)>v&&(O0(e.exponentformat)&&e.exponentformat!=="SI extended"&&!V5(h)||O0(e.exponentformat)&&e.exponentformat==="SI extended"&&!H5(h)?e._tickexponent=3*Math.round((h-1)/3):e._tickexponent=h)}else e._tickround=null}$t.tickIncrement=function(e,t,r,i){var a=r?-1:1;if(Bn(t))return Qr.increment(e,a*t);var s=t.charAt(0),l=a*Number(t.substr(1));if(s==="M")return Qr.incrementMonth(e,l,i);if(s==="L")return Math.log(Math.pow(10,e)+l)/Math.LN10;if(s==="D"){var f=t==="D2"?zL:PL,h=e+a*.01,v=Qr.roundUp(Qr.mod(h,1),f,r);return Math.floor(h)+Math.log(Wl.round(Math.pow(10,v),1))/Math.LN10}throw"unrecognized dtick "+String(t)};$t.tickFirst=function(e,t){var r=e.r2l||Number,i=Qr.simpleMap(e.range,r,void 0,void 0,t),a=i[1]=0&&z<=e._length?D:null};if(s&&Qr.isArrayOrTypedArray(e.ticktext)){var _=Qr.simpleMap(e.range,e.r2l),T=(Math.abs(_[1]-_[0])-(e._lBreaks||0))/1e4;for(v=0;v"+f;else{var v=og(e),m=e._trueSide||e.side;(!v&&m==="top"||v&&m==="bottom")&&(l+="
")}t.text=l}function Ute(e,t,r,i,a){var s=e.dtick,l=t.x,f=e.tickformat,h=typeof s=="string"&&s.charAt(0);if(a==="never"&&(a=""),i&&h!=="L"&&(s="L3",h="L"),f||h==="L")t.text=ng(Math.pow(10,l),e,a,i);else if(Bn(s)||h==="D"&&(e.minorloglabels==="complete"||Qr.mod(l+.01,1)<.1)){var v;e.minorloglabels==="complete"&&!(Qr.mod(l+.01,1)<.1)&&(v=!0,t.fontSize*=.75);var m=Math.pow(10,l).toExponential(0),_=m.split("e"),T=+_[1],S=Math.abs(T),C=e.exponentformat;C==="power"||O0(C)&&C!=="SI extended"&&V5(T)||O0(C)&&C==="SI extended"&&H5(T)?(t.text=_[0],S>0&&(t.text+="x10"),t.text==="1x10"&&(t.text="10"),T!==0&&T!==1&&(t.text+=""+(T>0?"":xd)+S+""),t.fontSize*=1.25):(C==="e"||C==="E")&&S>2?t.text=_[0]+C+(T>0?"+":xd)+S:(t.text=ng(Math.pow(10,l),e,"","fakehover"),s==="D1"&&e._id.charAt(0)==="y"&&(t.dy-=t.fontSize/6))}else if(h==="D")t.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,Qr.mod(l,1)))),t.fontSize*=.75;else throw"unrecognized dtick "+String(s);if(e.dtick==="D1"){var E=String(t.text).charAt(0);(E==="0"||E==="1")&&(e._id.charAt(0)==="y"?t.dx-=t.fontSize/4:(t.dy+=t.fontSize/2,t.dx+=(e.range[1]>e.range[0]?1:-1)*t.fontSize*(l<0?.5:.25)))}}function Vte(e,t){var r=e._categories[Math.round(t.x)];r===void 0&&(r=""),t.text=String(r)}function Hte(e,t,r){var i=Math.round(t.x),a=e._categories[i]||[],s=a[1]===void 0?"":String(a[1]),l=a[0]===void 0?"":String(a[0]);r?t.text=l+" - "+s:(t.text=s,t.text2=l)}function Gte(e,t,r,i,a){a==="never"?a="":e.showexponent==="all"&&Math.abs(t.x/e.dtick)<1e-6&&(a="hide"),t.text=ng(t.x,e,a,i)}function Zte(e,t,r,i,a){if(e.thetaunit==="radians"&&!r){var s=t.x/180;if(s===0)t.text="0";else{var l=Yte(s);if(l[1]>=100)t.text=ng(Qr.deg2rad(t.x),e,a,i);else{var f=t.x<0;l[1]===1?l[0]===1?t.text="\u03C0":t.text=l[0]+"\u03C0":t.text=["",l[0],"","\u2044","",l[1],"","\u03C0"].join(""),f&&(t.text=xd+t.text)}}}else t.text=ng(t.x,e,a,i)}function Yte(e){function t(f,h){return Math.abs(f-h)<=1e-6}function r(f,h){return t(h,0)?f:r(h,f%h)}function i(f){for(var h=1;!t(Math.round(f*h)/h,f);)h*=10;return h}var a=i(e),s=e*a,l=Math.abs(r(s,a));return[Math.round(s/l),Math.round(a/l)]}var FL=["f","p","n","\u03BC","m","","k","M","G","T"],Wte=["q","r","y","z","a",...FL,"P","E","Z","Y","R","Q"],O0=e=>["SI","SI extended","B"].includes(e);function V5(e){return e>14||e<-15}function H5(e){return e>32||e<-30}function Xte(e,t){return O0(t)?!!(t==="SI extended"&&H5(e)||t!=="SI extended"&&V5(e)):!1}function ng(e,t,r,i){var a=e<0,s=t._tickround,l=r||t.exponentformat||"B",f=t._tickexponent,h=$t.getTickFormat(t),v=t.separatethousands;if(i){var m={exponentformat:l,minexponent:t.minexponent,dtick:t.showexponent==="none"?t.dtick:Bn(e)&&Math.abs(e)||1,range:t.showexponent==="none"?t.range.map(t.r2d):[0,e||1]};IL(m),s=(Number(m._tickround)||0)+4,f=m._tickexponent,t.hoverformat&&(h=t.hoverformat)}if(h)return t._numFormat(h)(e).replace(/-/g,xd);var _=Math.pow(10,-s)/2;if(l==="none"&&(f=0),e=Math.abs(e),e<_)e="0",a=!1;else{if(e+=_,f&&(e*=Math.pow(10,-f),s+=f),s===0)e=String(Math.floor(e));else if(s<0){e=String(Math.round(e)),e=e.substr(0,e.length+s);for(var T=s;T<0;T++)e+="0"}else{e=String(e);var S=e.indexOf(".")+1;S&&(e=e.substr(0,S+s).replace(/\.?0+$/,""))}e=Qr.numSeparate(e,t._separators,v)}if(f&&l!=="hide"){Xte(f,l)&&(l="power");var C;f<0?C=xd+-f:l!=="power"?C="+"+f:C=String(f),l==="e"||l==="E"?e+=l+C:l==="power"?e+="\xD710"+C+"":l==="B"&&f===9?e+="B":O0(l)&&(e+=l==="SI extended"?Wte[f/3+10]:FL[f/3+5])}return a?xd+e:e}$t.getTickFormat=function(e){var t;function r(h){return typeof h!="string"?h:Number(h.replace("M",""))*B0}function i(h,v){var m=["L","D"];if(typeof h==typeof v){if(typeof h=="number")return h-v;var _=m.indexOf(h.charAt(0)),T=m.indexOf(v.charAt(0));return _===T?Number(h.replace(/(L|D)/g,""))-Number(v.replace(/(L|D)/g,"")):_-T}else return typeof h=="number"?1:-1}function a(h,v,m){var _=m||function(C){return C},T=v[0],S=v[1];return(!T&&typeof T!="number"||_(T)<=_(h))&&(!S&&typeof S!="number"||_(S)>=_(h))}function s(h,v){var m=v[0]===null,_=v[1]===null,T=i(h,v[0])>=0,S=i(h,v[1])<=0;return(m||T)&&(_||S)}var l,f;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(t=0;t=0&&a.unshift(a.splice(m,1).shift())}});var f={false:{left:0,right:0}};return Qr.syncOrAsync(a.map(function(h){return function(){if(h){var v=$t.getFromId(e,h);r||(r={}),r.axShifts=f,r.overlayingShiftedAx=l;var m=$t.drawOne(e,v,r);return v._shiftPusher&&O5(v,v._fullDepth||0,f,!0),v._r=v.range.slice(),v._rl=Qr.simpleMap(v._r,v.r2l),m}}}))};$t.drawOne=function(e,t,r){r=r||{};var i=r.axShifts||{},a=r.overlayingShiftedAx||[],s,l,f;t.setScale();var h=e._fullLayout,v=t._id,m=v.charAt(0),_=$t.counterLetter(v),T=h._plots[t._mainSubplot],S=t.zerolinelayer==="above traces";if(!T)return;if(t._shiftPusher=t.autoshift||a.indexOf(t._id)!==-1||a.indexOf(t.overlaying)!==-1,t._shiftPusher&t.anchor==="free"){var C=t.linewidth/2||0;t.ticks==="inside"&&(C+=t.ticklen),O5(t,C,i,!0),O5(t,t.shift||0,i,!1)}(r.skipTitle!==!0||t._shift===void 0)&&(t._shift=sre(t,i));var E=T[m+"axislayer"],D=t._mainLinePosition,z=D+=t._shift,B=t._mainMirrorPosition,q=t._vals=$t.calcTicks(t),I=[t.mirror,z,B].join("_");for(s=0;s0?At.bottom-Ut:0,Ct))));var st=0,sr=0;if(t._shiftPusher&&(st=Math.max(Ct,At.height>0?Tt==="l"?Ut-At.left:At.right-Ut:0),t.title.text!==h._dfltTitle[m]&&(sr=(t._titleStandoff||0)+(t._titleScoot||0),Tt==="l"&&(sr+=CL(t))),t._fullDepth=Math.max(st,sr)),t.automargin){Vt={x:0,y:0,r:0,l:0,t:0,b:0};var Dr=[0,1],Et=typeof t._shift=="number"?t._shift:0;if(m==="x"){if(Tt==="b"?Vt[Tt]=t._depth:(Vt[Tt]=t._depth=Math.max(At.width>0?Ut-At.top:0,Ct),Dr.reverse()),At.width>0){var ct=At.right-(t._offset+t._length);ct>0&&(Vt.xr=1,Vt.r=ct);var pt=t._offset-At.left;pt>0&&(Vt.xl=0,Vt.l=pt)}}else if(Tt==="l"?(t._depth=Math.max(At.height>0?Ut-At.left:0,Ct),Vt[Tt]=t._depth-Et):(t._depth=Math.max(At.height>0?At.right-Ut:0,Ct),Vt[Tt]=t._depth+Et,Dr.reverse()),At.height>0){var Ot=At.bottom-(t._offset+t._length);Ot>0&&(Vt.yb=0,Vt.b=Ot);var er=t._offset-At.top;er>0&&(Vt.yt=1,Vt.t=er)}Vt[_]=t.anchor==="free"?t.position:t._anchorAxis.domain[Dr[0]],t.title.text!==h._dfltTitle[m]&&(Vt[Tt]+=CL(t)+(t.title.standoff||0)),t.mirror&&t.anchor!=="free"&&(Ht={x:0,y:0,r:0,l:0,t:0,b:0},Ht[Rt]=t.linewidth,t.mirror&&t.mirror!==!0&&(Ht[Rt]+=Ct),t.mirror===!0||t.mirror==="ticks"?Ht[_]=t._anchorAxis.domain[Dr[1]]:(t.mirror==="all"||t.mirror==="allticks")&&(Ht[_]=[t._counterDomainMin,t._counterDomainMax][Dr[1]]))}Dt&&(Be=tg.getComponentMethod("rangeslider","autoMarginOpts")(e,t)),typeof t.automargin=="string"&&(kL(Vt,t.automargin),kL(Ht,t.automargin)),q0.autoMargin(e,G5(t),Vt),q0.autoMargin(e,NL(t),Ht),q0.autoMargin(e,BL(t),Be)}),Qr.syncOrAsync(We)}};function kL(e,t){if(e){var r=Object.keys(xL).reduce(function(i,a){return t.indexOf(a)!==-1&&xL[a].forEach(function(s){i[s]=1}),i},{});Object.keys(e).forEach(function(i){r[i]||(i.length===1?e[i]=0:delete e[i])})}}function jte(e,t){var r=[],i,a=function(s,l){var f=s.xbnd[l];f!==null&&r.push(Qr.extendFlat({},s,{x:f}))};if(t.length){for(i=0;ie.range[1],f=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,h=!f;if(r){var v=l?-1:1;r=r*v}if(i){var m=e.side,_=f&&(m==="top"||m==="left")||h&&(m==="bottom"||m==="right")?1:-1;i=i*_}return e._id.charAt(0)==="x"?function(T){return N0(a+e._offset+e.l2p(N5(T))+r,s+i)}:function(T){return N0(s+i,a+e._offset+e.l2p(N5(T))+r)}};function N5(e){return e.periodX!==void 0?e.periodX:e.x}function $te(e){var t=e.ticklabelposition||"",r=e.tickson||"",i=function(C){return t.indexOf(C)!==-1},a=i("top"),s=i("left"),l=i("right"),f=i("bottom"),h=i("inside"),v=r!=="boundaries"&&(f||s||a||l);if(!v&&!h)return[0,0];var m=e.side,_=v?(e.tickwidth||0)/2:0,T=_2,S=e.tickfont?e.tickfont.size:12;return(f||a)&&(_+=S*bd,T+=(e.linewidth||0)/2),(s||l)&&(_+=(e.linewidth||0)/2,T+=_2),h&&m==="top"&&(T-=S*(1-bd)),(s||a)&&(_=-_),(m==="bottom"||m==="right")&&(T=-T),[v?_:0,h?T:0]}$t.makeTickPath=function(e,t,r,i){i||(i={});var a=i.minor;if(a&&!e.minor)return"";var s=i.len!==void 0?i.len:a?e.minor.ticklen:e.ticklen,l=e._id.charAt(0),f=(e.linewidth||1)/2;return l==="x"?"M0,"+(t+f*r)+"v"+s*r:"M"+(t+f*r)+",0h"+s*r};$t.makeLabelFns=function(e,t,r){var i=e.ticklabelposition||"",a=e.tickson||"",s=function(fe){return i.indexOf(fe)!==-1},l=s("top"),f=s("left"),h=s("right"),v=s("bottom"),m=a!=="boundaries"&&(v||f||l||h),_=s("inside"),T=i==="inside"&&e.ticks==="inside"||!_&&e.ticks==="outside"&&a!=="boundaries",S=0,C=0,E=T?e.ticklen:0;if(_?E*=-1:m&&(E=0),T&&(S+=E,r)){var D=Qr.deg2rad(r);S=E*Math.cos(D)+1,C=E*Math.sin(D)}e.showticklabels&&(T||e.showline)&&(S+=.2*e.tickfont.size),S+=(e.linewidth||1)/2*(_?-1:1);var z={labelStandoff:S,labelShift:C},B,q,I,O,H=0,V=e.side,W=e._id.charAt(0),J=e.tickangle,te;if(W==="x")te=!_&&V==="bottom"||_&&V==="top",O=te?1:-1,_&&(O*=-1),B=C*O,q=t+S*O,I=te?1:-.2,Math.abs(J)===90&&(_?I+=eg:J===-90&&V==="bottom"?I=bd:J===90&&V==="top"?I=eg:I=.5,H=eg/2*(J/90)),z.xFn=function(fe){return fe.dx+B+H*fe.fontSize},z.yFn=function(fe){return fe.dy+q+fe.fontSize*I},z.anchorFn=function(fe,ve){if(m){if(f)return"end";if(h)return"start"}return!Bn(ve)||ve===0||ve===180?"middle":ve*O<0!==_?"end":"start"},z.heightFn=function(fe,ve,Se){return ve<-60||ve>60?-.5*Se:e.side==="top"!==_?-Se:0};else if(W==="y"){if(te=!_&&V==="left"||_&&V==="right",O=te?1:-1,_&&(O*=-1),B=S,q=C*O,I=0,!_&&Math.abs(J)===90&&(J===-90&&V==="left"||J===90&&V==="right"?I=bd:I=.5),_){var ne=Bn(J)?+J:0;if(ne!==0){var oe=Qr.deg2rad(ne);H=Math.abs(Math.sin(oe))*bd*O,I=0}}z.xFn=function(fe){return fe.dx+t-(B+fe.fontSize*I)*O+H*fe.fontSize},z.yFn=function(fe){return fe.dy+q+fe.fontSize*eg},z.anchorFn=function(fe,ve){return Bn(ve)&&Math.abs(ve)===90?"middle":te?"end":"start"},z.heightFn=function(fe,ve,Se){return e.side==="right"&&(ve*=-1),ve<-30?-Se:ve<30?-.5*Se:0}}return z};function w2(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}$t.drawTicks=function(e,t,r){r=r||{};var i=t._id+"tick",a=[].concat(t.minor&&t.minor.ticks?r.vals.filter(function(l){return l.minor&&!l.noTick}):[]).concat(t.ticks?r.vals.filter(function(l){return!l.minor&&!l.noTick}):[]),s=r.layer.selectAll("path."+i).data(a,w2);s.exit().remove(),s.enter().append("path").classed(i,1).classed("ticks",1).classed("crisp",r.crisp!==!1).each(function(l){return rg.stroke(Wl.select(this),l.minor?t.minor.tickcolor:t.tickcolor)}).style("stroke-width",function(l){return ol.crispRound(e,l.minor?t.minor.tickwidth:t.tickwidth,1)+"px"}).attr("d",r.path).style("display",null),T2(t,[EL]),s.attr("transform",r.transFn)};$t.drawGrid=function(e,t,r){if(r=r||{},t.tickmode!=="sync"){var i=t._id+"grid",a=t.minor&&t.minor.showgrid,s=a?r.vals.filter(function(z){return z.minor}):[],l=t.showgrid?r.vals.filter(function(z){return!z.minor}):[],f=r.counterAxis;if(f&&$t.shouldShowZeroLine(e,t,f))for(var h=t.tickmode==="array",v=0;v=0;C--){var E=C?T:S;if(E){var D=E.selectAll("path."+i).data(C?l:s,w2);D.exit().remove(),D.enter().append("path").classed(i,1).classed("crisp",r.crisp!==!1),D.attr("transform",r.transFn).attr("d",r.path).each(function(z){return rg.stroke(Wl.select(this),z.minor?t.minor.gridcolor:t.gridcolor||"#ddd")}).style("stroke-dasharray",function(z){return ol.dashStyle(z.minor?t.minor.griddash:t.griddash,z.minor?t.minor.gridwidth:t.gridwidth)}).style("stroke-width",function(z){return(z.minor?_:t._gw)+"px"}).style("display",null),typeof r.path=="function"&&D.attr("d",r.path)}}T2(t,[F5,q5])}};$t.drawZeroLine=function(e,t,r){r=r||r;var i=t._id+"zl",a=$t.shouldShowZeroLine(e,t,r.counterAxis),s=r.layer.selectAll("path."+i).data(a?[{x:0,id:t._id}]:[]);s.exit().remove(),s.enter().append("path").classed(i,1).classed("zl",1).classed("crisp",r.crisp!==!1).each(function(){r.layer.selectAll("path").sort(function(l,f){return Ete(l.id,f.id)})}),s.attr("transform",r.transFn).attr("d",r.path).call(rg.stroke,t.zerolinecolor||rg.defaultLine).style("stroke-width",ol.crispRound(e,t.zerolinewidth,t._gw||1)+"px").style("display",null),T2(t,[R5])};$t.drawLabels=function(e,t,r){r=r||{};var i=e._fullLayout,a=t._id,s=t.zerolinelayer==="above traces",l=r.cls||a+"tick",f=r.vals.filter(function(Te){return Te.text}),h=r.labelFns,v=r.secondary?0:t.tickangle,m=(t._prevTickAngles||{})[l],_=r.layer.selectAll("g."+l).data(t.showticklabels?f:[],w2),T=[];_.enter().append("g").classed(l,1).append("text").attr("text-anchor","middle").each(function(Te){var Ce=Wl.select(this),Le=e._promises.length;Ce.call(_d.positionText,h.xFn(Te),h.yFn(Te)).call(ol.font,{family:Te.font,size:Te.fontSize,color:Te.fontColor,weight:Te.fontWeight,style:Te.fontStyle,variant:Te.fontVariant,textcase:Te.fontTextcase,lineposition:Te.fontLineposition,shadow:Te.fontShadow}).text(Te.text).call(_d.convertToTspans,e),e._promises[Le]?T.push(e._promises.pop().then(function(){S(Ce,v)})):S(Ce,v)}),T2(t,[_L]),_.exit().remove(),r.repositionOnUpdate&&_.each(function(Te){Wl.select(this).select("text").call(_d.positionText,h.xFn(Te),h.yFn(Te))});function S(Te,Ce){Te.each(function(Le){var Ke=Wl.select(this),lt=Ke.select(".text-math-group"),at=h.anchorFn(Le,Ce),gt=r.transFn.call(Ke.node(),Le)+(Bn(Ce)&&+Ce!=0?" rotate("+Ce+","+h.xFn(Le)+","+(h.yFn(Le)-Le.fontSize/2)+")":""),Ye=_d.lineCount(Ke),St=ig*Le.fontSize,it=h.heightFn(Le,Bn(Ce)?+Ce:0,(Ye-1)*St);if(it&&(gt+=N0(0,it)),lt.empty()){var mt=Ke.select("text");mt.attr({transform:gt,"text-anchor":at}),mt.style("display",null),t._adjustTickLabelsOverflow&&t._adjustTickLabelsOverflow()}else{var bt=ol.bBox(lt.node()).width,vt=bt*{end:-.5,start:.5}[at];lt.attr("transform",gt+N0(vt,0))}})}t._adjustTickLabelsOverflow=function(){var Te=t.ticklabeloverflow;if(!(!Te||Te==="allow")){var Ce=Te.indexOf("hide")!==-1,Le=t._id.charAt(0)==="x",Ke=0,lt=Le?e._fullLayout.width:e._fullLayout.height;if(Te.indexOf("domain")!==-1){var at=Qr.simpleMap(t.range,t.r2l);Ke=t.l2p(at[0])+t._offset,lt=t.l2p(at[1])+t._offset}var gt=Math.min(Ke,lt),Ye=Math.max(Ke,lt),St=t.side,it=1/0,mt=-1/0;_.each(function(De){var ge=Wl.select(this),rt=ge.select(".text-math-group");if(rt.empty()){var dt=ol.bBox(ge.node()),We=0;Le?(dt.right>Ye||dt.leftYe||dt.top+(t.tickangle?0:De.fontSize/4)t["_visibleLabelMin_"+at._id]?ge.style("display","none"):Ye.K==="tick"&&!gt&&ge.node().style.display!=="none"&&ge.style("display",null)})})})})},S(_,m+1?m:v);function C(){return T.length&&Promise.all(T)}var E=null;function D(){if(S(_,v),f.length&&t.autotickangles&&(t.type!=="log"||String(t.dtick).charAt(0)!=="D")){E=t.autotickangles[0];var Te=0,Ce=[],Le,Ke=1;_.each(function(Vt){Te=Math.max(Te,Vt.fontSize);var Ht=t.l2p(Vt.x),Be=B5(this),st=ol.bBox(Be.node());Ke=Math.max(Ke,_d.lineCount(Be)),Ce.push({top:0,bottom:10,height:10,left:Ht-st.width/2,right:Ht+st.width/2+2,width:st.width+2})});var lt=(t.tickson==="boundaries"||t.showdividers)&&!r.secondary,at=f.length,gt=Math.abs((f[at-1].x-f[0].x)*t._m)/(at-1),Ye=lt?gt/2:gt,St=lt?t.ticklen:Te*1.25*Ke,it=Math.sqrt(Math.pow(Ye,2)+Math.pow(St,2)),mt=Ye/it,bt=t.autotickangles.map(function(Vt){return Vt*Math.PI/180}),vt=bt.find(function(Vt){return Math.abs(Math.cos(Vt))<=mt});vt===void 0&&(vt=bt.reduce(function(Vt,Ht){return Math.abs(Math.cos(Vt))Me*Se&&(oe=Se,J[W]=te[W]=fe[W])}var Ae=Math.abs(oe-ne);Ae-O>0?(Ae-=O,O*=1+O/Ae):O=0,t._id.charAt(0)!=="y"&&(O=-O),J[V]=q.p2r(q.r2p(te[V])+H*O),q.autorange==="min"||q.autorange==="max reversed"?(J[0]=null,q._rangeInitial0=void 0,q._rangeInitial1=void 0):(q.autorange==="max"||q.autorange==="min reversed")&&(J[1]=null,q._rangeInitial0=void 0,q._rangeInitial1=void 0),i._insideTickLabelsUpdaterange[q._name+".range"]=J}var we=Qr.syncOrAsync(z);return we&&we.then&&e._promises.push(we),we};function ere(e,t,r){var i=t._id+"divider",a=r.vals,s=r.layer.selectAll("path."+i).data(a,w2);s.exit().remove(),s.enter().insert("path",":first-child").classed(i,1).classed("crisp",1).call(rg.stroke,t.dividercolor).style("stroke-width",ol.crispRound(e,t.dividerwidth,1)+"px"),s.attr("transform",r.transFn).attr("d",r.path)}$t.getPxPosition=function(e,t){var r=e._fullLayout._size,i=t._id.charAt(0),a=t.side,s;if(t.anchor!=="free"?s=t._anchorAxis:i==="x"?s={_offset:r.t+(1-(t.position||0))*r.h,_length:0}:i==="y"&&(s={_offset:r.l+(t.position||0)*r.w+t._shift,_length:0}),a==="top"||a==="left")return s._offset;if(a==="bottom"||a==="right")return s._offset+s._length};function CL(e){var t=e.title.font.size,r=(e.title.text.match(_d.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?t*(bd+r*ig):r?t*(r+1)*ig:t}function tre(e,t){var r=e._fullLayout,i=t._id,a=i.charAt(0),s=t.title.font.size,l,f=(t.title.text.match(_d.BR_TAG_ALL)||[]).length;if(t.title.hasOwnProperty("standoff"))t.side==="bottom"||t.side==="right"?l=t._depth+t.title.standoff+s*bd:(t.side==="top"||t.side==="left")&&(l=t._depth+t.title.standoff+s*(eg+f*ig));else{var h=og(t);if(t.type==="multicategory")l=t._depth;else{var v=1.5*s;h&&(v=.5*s,t.ticks==="outside"&&(v+=t.ticklen)),l=10+v+(t.linewidth?t.linewidth-1:0)}h||(a==="x"?l+=t.side==="top"?s*(t.showticklabels?1:0):s*(t.showticklabels?1.5:.5):l+=t.side==="right"?s*(t.showticklabels?1:.5):s*(t.showticklabels?.5:0))}var m=$t.getPxPosition(e,t),_,T,S;a==="x"?(T=t._offset+t._length/2,S=t.side==="top"?m-l:m+l):(S=t._offset+t._length/2,T=t.side==="right"?m+l:m-l,_={rotate:"-90",offset:0});var C;if(t.type!=="multicategory"){var E=t._selections[t._id+"tick"];if(C={selection:E,side:t.side},E&&E.node()&&E.node().parentNode){var D=ol.getTranslate(E.node().parentNode);C.offsetLeft=D.x,C.offsetTop=D.y}t.title.hasOwnProperty("standoff")&&(C.pad=0)}return t._titleStandoff=l,xte.draw(e,i+"title",{propContainer:t,propName:t._name+".title.text",placeholder:r._dfltTitle[a],avoid:C,transform:_,attributes:{x:T,y:S,"text-anchor":"middle"}})}$t.shouldShowZeroLine=function(e,t,r){var i=Qr.simpleMap(t.range,t.r2l);return i[0]*i[1]<=0&&t.zeroline&&(t.type==="linear"||t.type==="-")&&!(t.rangebreaks&&t.maskBreaks(0)===x2)&&(qL(t,0)||!rre(e,t,r,i)||are(e,t))};$t.clipEnds=function(e,t){return t.filter(function(r){return qL(e,r.x)})};function qL(e,t){var r=e.l2p(t);return r>1&&r1)for(a=1;a=a.min&&e=Ste:/%L/.test(t)?e>=Mte:/%[SX]/.test(t)?e>=g2:/%M/.test(t)?e>=ag:/%[HI]/.test(t)?e>=Pf:/%p/.test(t)?e>=Bh:/%[Aadejuwx]/.test(t)?e>=as:/%[UVW]/.test(t)?e>=sl:/%[Bbm]/.test(t)?e>=y2:/%[q]/.test(t)?e>=m2:/%[Yy]/.test(t)?e>=p2:!0}});var VL=pe((A1e,UL)=>{"use strict";UL.exports=function(t,r,i){var a,s;if(i){var l=r==="reversed"||r==="min reversed"||r==="max reversed";a=i[l?1:0],s=i[l?0:1]}var f=t("autorangeoptions.minallowed",s===null?a:void 0),h=t("autorangeoptions.maxallowed",a===null?s:void 0);f===void 0&&t("autorangeoptions.clipmin"),h===void 0&&t("autorangeoptions.clipmax"),t("autorangeoptions.include")}});var Y5=pe((M1e,HL)=>{"use strict";var ure=VL();HL.exports=function(t,r,i,a){var s=r._template||{},l=r.type||s.type||"-";i("minallowed"),i("maxallowed");var f=i("range");if(!f){var h;!a.noInsiderange&&l!=="log"&&(h=i("insiderange"),h&&(h[0]===null||h[1]===null)&&(r.insiderange=!1,h=void 0),h&&(f=i("range",h)))}var v=r.getAutorangeDflt(f,a),m=i("autorange",v),_;f&&(f[0]===null&&f[1]===null||(f[0]===null||f[1]===null)&&(m==="reversed"||m===!0)||f[0]!==null&&(m==="min"||m==="max reversed")||f[1]!==null&&(m==="max"||m==="min reversed"))&&(f=void 0,delete r.range,r.autorange=!0,_=!0),_||(v=r.getAutorangeDflt(f,a),m=i("autorange",v)),m&&(ure(i,m,f),(l==="linear"||l==="-")&&i("rangemode")),r.cleanRange()}});var ZL=pe((S1e,GL)=>{var fre={left:0,top:0};GL.exports=cre;function cre(e,t,r){t=t||e.currentTarget||e.srcElement,Array.isArray(r)||(r=[0,0]);var i=e.clientX||0,a=e.clientY||0,s=hre(t);return r[0]=i-s.left,r[1]=a-s.top,r}function hre(e){return e===window||e===document||e===document.body?fre:e.getBoundingClientRect()}});var W5=pe((k1e,YL)=>{"use strict";var vre=bw();function dre(){var e=!1;try{var t=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,t),window.removeEventListener("test",null,t)}catch(r){e=!1}return e}YL.exports=vre&&dre()});var XL=pe((C1e,WL)=>{"use strict";WL.exports=function(t,r,i,a,s){var l=(t-i)/(a-i),f=l+r/(a-i),h=(l+f)/2;return s==="left"||s==="bottom"?l:s==="center"||s==="middle"?h:s==="right"||s==="top"?f:l<2/3-h?l:f>4/3-h?f:h}});var KL=pe((E1e,JL)=>{"use strict";var jL=Bt(),pre=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];JL.exports=function(t,r,i,a){return i==="left"?t=0:i==="center"?t=1:i==="right"?t=2:t=jL.constrain(Math.floor(t*3),0,2),a==="bottom"?r=0:a==="middle"?r=1:a==="top"?r=2:r=jL.constrain(Math.floor(r*3),0,2),pre[r][t]}});var $L=pe((L1e,QL)=>{"use strict";var mre=Vy(),yre=A_(),gre=Iy().getGraphDiv,_re=Ly(),X5=QL.exports={};X5.wrapped=function(e,t,r){e=gre(e),e._fullLayout&&yre.clear(e._fullLayout._uid+_re.HOVERID),X5.raw(e,t,r)};X5.raw=function(t,r){var i=t._fullLayout,a=t._hoverdata;r||(r={}),!(r.target&&!t._dragged&&mre.triggerHandler(t,"plotly_beforehover",r)===!1)&&(i._hoverlayer.selectAll("g").remove(),i._hoverlayer.selectAll("line").remove(),i._hoverlayer.selectAll("circle").remove(),t._hoverdata=void 0,r.target&&a&&t.emit("plotly_unhover",{event:r,points:a}))}});var Xl=pe((D1e,aD)=>{"use strict";var xre=ZL(),j5=Tw(),bre=W5(),wre=Bt().removeElement,Tre=Ao(),wd=aD.exports={};wd.align=XL();wd.getCursor=KL();var tD=$L();wd.unhover=tD.wrapped;wd.unhoverRaw=tD.raw;wd.init=function(t){var r=t.gd,i=1,a=r._context.doubleClickDelay,s=t.element,l,f,h,v,m,_,T,S;r._mouseDownTime||(r._mouseDownTime=0),s.style.pointerEvents="all",s.onmousedown=D,bre?(s._ontouchstart&&s.removeEventListener("touchstart",s._ontouchstart),s._ontouchstart=D,s.addEventListener("touchstart",D,{passive:!1})):s.ontouchstart=D;function C(q,I,O){return Math.abs(q)a&&(i=Math.max(i-1,1)),r._dragged)t.doneFn&&t.doneFn();else{var I;_.target===T?I=_:(I={target:T,srcElement:T,toElement:T},Object.keys(_).concat(Object.keys(_.__proto__)).forEach(O=>{var H=_[O];!I[O]&&typeof H!="function"&&(I[O]=H)})),t.clickFn&&t.clickFn(i,I),S||T.dispatchEvent(new MouseEvent("click",q))}r._dragging=!1,r._dragged=!1}};function rD(){var e=document.createElement("div");e.className="dragcover";var t=e.style;return t.position="fixed",t.left=0,t.right=0,t.top=0,t.bottom=0,t.zIndex=999999999,t.background="none",document.body.appendChild(e),e}wd.coverSlip=rD;function eD(e){return xre(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Oh=pe((P1e,iD)=>{"use strict";iD.exports=function(t,r){(t.attr("class")||"").split(" ").forEach(function(i){i.indexOf("cursor-")===0&&t.classed(i,!1)}),r&&t.classed("cursor-"+r,!0)}});var sD=pe((z1e,oD)=>{"use strict";var J5=Oh(),sg="data-savedcursor",nD="!!";oD.exports=function(t,r){var i=t.attr(sg);if(r){if(!i){for(var a=(t.attr("class")||"").split(" "),s=0;s{"use strict";var K5=qo(),Are=Tf();lD.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:Are.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:K5({editType:"legend"}),grouptitlefont:K5({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:K5({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var M2=pe(A2=>{"use strict";A2.isGrouped=function(t){return(t.traceorder||"").indexOf("grouped")!==-1};A2.isVertical=function(t){return t.orientation!=="h"};A2.isReversed=function(t){return(t.traceorder||"").indexOf("reversed")!==-1}});var t4=pe((F1e,uD)=>{"use strict";var $5=sa(),ll=Bt(),Mre=Ii(),Sre=ys(),kre=Q5(),Cre=m0(),e4=M2();function Ere(e,t,r,i){var a=t[e]||{},s=Mre.newContainer(r,e);function l(Ae,we){return ll.coerce(a,s,kre,Ae,we)}var f=ll.coerceFont(l,"font",r.font);l("bgcolor",r.paper_bgcolor),l("bordercolor");var h=l("visible");if(h){for(var v,m=function(Ae,we){var Te=v._input,Ce=v;return ll.coerce(Te,Ce,Sre,Ae,we)},_=r.font||{},T=ll.coerceFont(l,"grouptitlefont",_,{overrideDflt:{size:Math.round(_.size*1.1)}}),S=0,C=!1,E="normal",D=(r.shapes||[]).filter(function(Ae){return Ae.showlegend}),z=i.concat(D).filter(function(Ae){return e===(Ae.legend||"legend")}),B=0;B(e==="legend"?1:0));if(I===!1&&(r[e]=void 0),!(I===!1&&!a.uirevision)&&(l("uirevision",r.uirevision),I!==!1)){l("borderwidth");var O=l("orientation"),H=l("yref"),V=l("xref"),W=O==="h",J=H==="paper",te=V==="paper",ne,oe,fe,ve="left";W?(ne=0,$5.getComponentMethod("rangeslider","isVisible")(t.xaxis)?J?(oe=1.1,fe="bottom"):(oe=1,fe="top"):J?(oe=-.1,fe="top"):(oe=0,fe="bottom")):(oe=1,fe="auto",te?ne=1.02:(ne=1,ve="right")),ll.coerce(a,s,{x:{valType:"number",editType:"legend",min:te?-2:0,max:te?3:1,dflt:ne}},"x"),ll.coerce(a,s,{y:{valType:"number",editType:"legend",min:J?-2:0,max:J?3:1,dflt:oe}},"y"),l("traceorder",E),e4.isGrouped(r[e])&&l("tracegroupgap"),l("entrywidth"),l("entrywidthmode"),l("indentation"),l("itemsizing"),l("itemwidth"),l("itemclick"),l("itemdoubleclick"),l("groupclick"),l("xanchor",ve),l("yanchor",fe),l("maxheight"),l("valign"),ll.noneOrAll(a,s,["x","y"]);var Se=l("title.text");if(Se){l("title.side",W?"left":"top");var Me=ll.extendFlat({},f,{size:ll.bigFont(f.size)});ll.coerceFont(l,"title.font",Me)}}}}uD.exports=function(t,r,i){var a,s=i.slice(),l=r.shapes;if(l)for(a=0;a{"use strict";var U0=sa(),a4=Bt(),Lre=a4.pushUnique,r4=!0;fD.exports=function(t,r,i){var a=r._fullLayout;if(r._dragged||r._editing)return;var s=a.legend.itemclick,l=a.legend.itemdoubleclick,f=a.legend.groupclick;i===1&&s==="toggle"&&l==="toggleothers"&&r4&&r.data&&r._context.showTips&&a4.notifier(a4._(r,"Double-click on legend to isolate one trace"),"long"),r4=!1;var h;if(i===1?h=s:i===2&&(h=l),!h)return;var v=f==="togglegroup",m=a.hiddenlabels?a.hiddenlabels.slice():[],_=t.data()[0][0];if(_.groupTitle&&_.noClick)return;var T=r._fullData,S=(a.shapes||[]).filter(function(Rt){return Rt.showlegend}),C=T.concat(S),E=_.trace;E._isShape&&(E=E._fullInput);var D=E.legendgroup,z,B,q,I,O,H,V={},W=[],J=[],te=[];function ne(Rt,Ut){var Ct=W.indexOf(Rt),At=V.visible;return At||(At=V.visible=[]),W.indexOf(Rt)===-1&&(W.push(Rt),Ct=W.length-1),At[Ct]=Ut,Ct}var oe=(a.shapes||[]).map(function(Rt){return Rt._input}),fe=!1;function ve(Rt,Ut){oe[Rt].visible=Ut,fe=!0}function Se(Rt,Ut){if(!(_.groupTitle&&!v)){var Ct=Rt._fullInput||Rt,At=Ct._isShape,Vt=Ct.index;Vt===void 0&&(Vt=Ct._index);var Ht=Ct.visible===!1?!1:Ut;At?ve(Vt,Ht):ne(Vt,Ht)}}var Me=E.legend,Ae=E._fullInput,we=Ae&&Ae._isShape;if(!we&&U0.traceIs(E,"pie-like")){var Te=_.label,Ce=m.indexOf(Te);if(h==="toggle")Ce===-1?m.push(Te):m.splice(Ce,1);else if(h==="toggleothers"){var Le=Ce!==-1,Ke=[];for(z=0;z{"use strict";hD.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var pD=pe((B1e,dD)=>{"use strict";var vD=sa(),n4=M2();dD.exports=function(t,r,i){var a=r._inHover,s=n4.isGrouped(r),l=n4.isReversed(r),f={},h=[],v=!1,m={},_=0,T=0,S,C;function E(Ae,we,Te){if(r.visible!==!1&&!(i&&Ae!==r._id))if(we===""||!n4.isGrouped(r)){var Ce="~~i"+_;h.push(Ce),f[Ce]=[Te],_++}else h.indexOf(we)===-1?(h.push(we),v=!0,f[we]=[Te]):f[we].push(Te)}for(S=0;Ste&&(J=te)}V[S][0]._groupMinRank=J,V[S][0]._preGroupSort=S}var ne=function(Ae,we){return Ae[0]._groupMinRank-we[0]._groupMinRank||Ae[0]._preGroupSort-we[0]._preGroupSort},oe=function(Ae,we){return Ae.trace.legendrank-we.trace.legendrank||Ae._preSort-we._preSort};for(V.forEach(function(Ae,we){Ae[0]._preGroupSort=we}),V.sort(ne),S=0;S{"use strict";var S2=Bt();function mD(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}Td.formatPiePercent=function(t,r){var i=mD((t*100).toPrecision(3));return S2.numSeparate(i,r)+"%"};Td.formatPieValue=function(t,r){var i=mD(t.toPrecision(10));return S2.numSeparate(i,r)};Td.getFirstFilled=function(t,r){if(S2.isArrayOrTypedArray(t))for(var i=0;i{"use strict";var Dre=xi(),Pre=Oa();yD.exports=function(t,r,i,a){var s=i.marker.pattern;s&&s.shape?Dre.pointStyle(t,i,a,r):Pre.fill(t,r.color)}});var wD=pe((V1e,bD)=>{"use strict";var _D=Oa(),xD=o4().castOption,zre=gD();bD.exports=function(t,r,i,a){var s=i.marker.line,l=xD(s.color,r.pts)||_D.defaultLine,f=xD(s.width,r.pts)||0;t.call(zre,r,i,a).style("stroke-width",f).call(_D.stroke,l)}});var f4=pe((H1e,CD)=>{"use strict";var is=ja(),s4=sa(),Bo=Bt(),TD=Bo.strTranslate,ul=xi(),jl=Oa(),l4=kf().extractOpts,k2=rs(),Ire=wD(),Rre=o4().castOption,Fre=i4(),AD=12,MD=5,Ad=2,qre=10,V0=5;CD.exports=function(t,r,i){var a=r._fullLayout;i||(i=a.legend);var s=i.itemsizing==="constant",l=i.itemwidth,f=(l+Fre.itemGap*2)/2,h=TD(f,0),v=function(V,W,J,te){var ne;if(V+1)ne=V;else if(W&&W.width>0)ne=W.width;else return 0;return s?te:Math.min(ne,J)};t.each(function(V){var W=is.select(this),J=Bo.ensureSingle(W,"g","layers");J.style("opacity",V[0].trace.opacity);var te=i.indentation,ne=i.valign,oe=V[0].lineHeight,fe=V[0].height;if(ne==="middle"&&te===0||!oe||!fe)J.attr("transform",null);else{var ve={top:1,bottom:-1}[ne],Se=ve*(.5*(oe-fe+3))||0,Me=i.indentation;J.attr("transform",TD(Me,Se))}var Ae=J.selectAll("g.legendfill").data([V]);Ae.enter().append("g").classed("legendfill",!0);var we=J.selectAll("g.legendlines").data([V]);we.enter().append("g").classed("legendlines",!0);var Te=J.selectAll("g.legendsymbols").data([V]);Te.enter().append("g").classed("legendsymbols",!0),Te.selectAll("g.legendpoints").data([V]).enter().append("g").classed("legendpoints",!0)}).each(H).each(T).each(C).each(S).each(D).each(I).each(q).each(m).each(_).each(z).each(B);function m(V){var W=SD(V),J=W.showFill,te=W.showLine,ne=W.showGradientLine,oe=W.showGradientFill,fe=W.anyFill,ve=W.anyLine,Se=V[0],Me=Se.trace,Ae,we,Te=l4(Me),Ce=Te.colorscale,Le=Te.reversescale,Ke=function(mt){if(mt.size())if(J)ul.fillGroupStyle(mt,r,!0);else{var bt="legendfill-"+Me.uid;ul.gradient(mt,r,bt,u4(Le),Ce,"fill")}},lt=function(mt){if(mt.size()){var bt="legendline-"+Me.uid;ul.lineGroupStyle(mt),ul.gradient(mt,r,bt,u4(Le),Ce,"stroke")}},at=k2.hasMarkers(Me)||!fe?"M5,0":ve?"M5,-2":"M5,-3",gt=is.select(this),Ye=gt.select(".legendfill").selectAll("path").data(J||oe?[V]:[]);if(Ye.enter().append("path").classed("js-fill",!0),Ye.exit().remove(),Ye.attr("d",at+"h"+l+"v6h-"+l+"z").call(Ke),te||ne){var St=v(void 0,Me.line,qre,MD);we=Bo.minExtend(Me,{line:{width:St}}),Ae=[Bo.minExtend(Se,{trace:we})]}var it=gt.select(".legendlines").selectAll("path").data(te||ne?[Ae]:[]);it.enter().append("path").classed("js-line",!0),it.exit().remove(),it.attr("d",at+(ne?"l"+l+",0.0001":"h"+l)).call(te?ul.lineGroupStyle:lt)}function _(V){var W=SD(V),J=W.anyFill,te=W.anyLine,ne=W.showLine,oe=W.showMarker,fe=V[0],ve=fe.trace,Se=!oe&&!te&&!J&&k2.hasText(ve),Me,Ae;function we(Ye,St,it,mt){var bt=Bo.nestedProperty(ve,Ye).get(),vt=Bo.isArrayOrTypedArray(bt)&&St?St(bt):bt;if(s&&vt&&mt!==void 0&&(vt=mt),it){if(vtit[1])return it[1]}return vt}function Te(Ye){return fe._distinct&&fe.index&&Ye[fe.index]?Ye[fe.index]:Ye[0]}if(oe||Se||ne){var Ce={},Le={};if(oe){Ce.mc=we("marker.color",Te),Ce.mx=we("marker.symbol",Te),Ce.mo=we("marker.opacity",Bo.mean,[.2,1]),Ce.mlc=we("marker.line.color",Te),Ce.mlw=we("marker.line.width",Bo.mean,[0,5],Ad),Le.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var Ke=we("marker.size",Bo.mean,[2,16],AD);Ce.ms=Ke,Le.marker.size=Ke}ne&&(Le.line={width:we("line.width",Te,[0,10],MD)}),Se&&(Ce.tx="Aa",Ce.tp=we("textposition",Te),Ce.ts=10,Ce.tc=we("textfont.color",Te),Ce.tf=we("textfont.family",Te),Ce.tw=we("textfont.weight",Te),Ce.ty=we("textfont.style",Te),Ce.tv=we("textfont.variant",Te),Ce.tC=we("textfont.textcase",Te),Ce.tE=we("textfont.lineposition",Te),Ce.tS=we("textfont.shadow",Te)),Me=[Bo.minExtend(fe,Ce)],Ae=Bo.minExtend(ve,Le),Ae.selectedpoints=null,Ae.texttemplate=null}var lt=is.select(this).select("g.legendpoints"),at=lt.selectAll("path.scatterpts").data(oe?Me:[]);at.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",h),at.exit().remove(),at.call(ul.pointStyle,Ae,r),oe&&(Me[0].mrc=3);var gt=lt.selectAll("g.pointtext").data(Se?Me:[]);gt.enter().append("g").classed("pointtext",!0).append("text").attr("transform",h),gt.exit().remove(),gt.selectAll("text").call(ul.textPointStyle,Ae,r)}function T(V){var W=V[0].trace,J=W.type==="waterfall";if(V[0]._distinct&&J){var te=V[0].trace[V[0].dir].marker;return V[0].mc=te.color,V[0].mlw=te.line.width,V[0].mlc=te.line.color,E(V,this,"waterfall")}var ne=[];W.visible&&J&&(ne=V[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var oe=is.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(ne);oe.enter().append("path").classed("legendwaterfall",!0).attr("transform",h).style("stroke-miterlimit",1),oe.exit().remove(),oe.each(function(fe){var ve=is.select(this),Se=W[fe[0]].marker,Me=v(void 0,Se.line,V0,Ad);ve.attr("d",fe[1]).style("stroke-width",Me+"px").call(jl.fill,Se.color),Me&&ve.call(jl.stroke,Se.line.color)})}function S(V){E(V,this)}function C(V){E(V,this,"funnel")}function E(V,W,J){var te=V[0].trace,ne=te.marker||{},oe=ne.line||{},fe=ne.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",ve=J?te.visible&&te.type===J:s4.traceIs(te,"bar"),Se=is.select(W).select("g.legendpoints").selectAll("path.legend"+J).data(ve?[V]:[]);Se.enter().append("path").classed("legend"+J,!0).attr("d",fe).attr("transform",h),Se.exit().remove(),Se.each(function(Me){var Ae=is.select(this),we=Me[0],Te=v(we.mlw,ne.line,V0,Ad);Ae.style("stroke-width",Te+"px");var Ce=we.mcc;if(!i._inHover&&"mc"in we){var Le=l4(ne),Ke=Le.mid;Ke===void 0&&(Ke=(Le.max+Le.min)/2),Ce=ul.tryColorscale(ne,"")(Ke)}var lt=Ce||we.mc||ne.color,at=ne.pattern,gt=ul.getPatternAttr,Ye=at&&(gt(at.shape,0,"")||gt(at.path,0,""));if(Ye){var St=gt(at.bgcolor,0,null),it=gt(at.fgcolor,0,null),mt=at.fgopacity,bt=kD(at.size,8,10),vt=kD(at.solidity,.5,1),de="legend-"+te.uid;Ae.call(ul.pattern,"legend",r,de,Ye,bt,vt,Ce,at.fillmode,St,it,mt)}else Ae.call(jl.fill,lt);Te&&jl.stroke(Ae,we.mlc||oe.color)})}function D(V){var W=V[0].trace,J=is.select(this).select("g.legendpoints").selectAll("path.legendbox").data(W.visible&&s4.traceIs(W,"box-violin")?[V]:[]);J.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",h),J.exit().remove(),J.each(function(){var te=is.select(this);if((W.boxpoints==="all"||W.points==="all")&&jl.opacity(W.fillcolor)===0&&jl.opacity((W.line||{}).color)===0){var ne=Bo.minExtend(W,{marker:{size:s?AD:Bo.constrain(W.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});J.call(ul.pointStyle,ne,r)}else{var oe=v(void 0,W.line,V0,Ad);te.style("stroke-width",oe+"px").call(jl.fill,W.fillcolor),oe&&jl.stroke(te,W.line.color)}})}function z(V){var W=V[0].trace,J=is.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(W.visible&&W.type==="candlestick"?[V,V]:[]);J.enter().append("path").classed("legendcandle",!0).attr("d",function(te,ne){return ne?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",h).style("stroke-miterlimit",1),J.exit().remove(),J.each(function(te,ne){var oe=is.select(this),fe=W[ne?"increasing":"decreasing"],ve=v(void 0,fe.line,V0,Ad);oe.style("stroke-width",ve+"px").call(jl.fill,fe.fillcolor),ve&&jl.stroke(oe,fe.line.color)})}function B(V){var W=V[0].trace,J=is.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(W.visible&&W.type==="ohlc"?[V,V]:[]);J.enter().append("path").classed("legendohlc",!0).attr("d",function(te,ne){return ne?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",h).style("stroke-miterlimit",1),J.exit().remove(),J.each(function(te,ne){var oe=is.select(this),fe=W[ne?"increasing":"decreasing"],ve=v(void 0,fe.line,V0,Ad);oe.style("fill","none").call(ul.dashLine,fe.line.dash,ve),ve&&jl.stroke(oe,fe.line.color)})}function q(V){O(V,this,"pie")}function I(V){O(V,this,"funnelarea")}function O(V,W,J){var te=V[0],ne=te.trace,oe=J?ne.visible&&ne.type===J:s4.traceIs(ne,J),fe=is.select(W).select("g.legendpoints").selectAll("path.legend"+J).data(oe?[V]:[]);if(fe.enter().append("path").classed("legend"+J,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",h),fe.exit().remove(),fe.size()){var ve=ne.marker||{},Se=v(Rre(ve.line.width,te.pts),ve.line,V0,Ad),Me="pieLike",Ae=Bo.minExtend(ne,{marker:{line:{width:Se}}},Me),we=Bo.minExtend(te,{trace:Ae},Me);Ire(fe,we,Ae,r)}}function H(V){var W=V[0].trace,J,te=[];if(W.visible)switch(W.type){case"histogram2d":case"heatmap":te=[["M-15,-2V4H15V-2Z"]],J=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":te=[["M-6,-6V6H6V-6Z"]],J=!0;break;case"densitymapbox":case"densitymap":te=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],J="radial";break;case"cone":te=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],J=!1;break;case"streamtube":te=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],J=!1;break;case"surface":te=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],J=!0;break;case"mesh3d":te=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],J=!1;break;case"volume":te=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],J=!0;break;case"isosurface":te=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],J=!1;break}var ne=is.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(te);ne.enter().append("path").classed("legend3dandfriends",!0).attr("transform",h).style("stroke-miterlimit",1),ne.exit().remove(),ne.each(function(oe,fe){var ve=is.select(this),Se=l4(W),Me=Se.colorscale,Ae=Se.reversescale,we=function(Ke){if(Ke.size()){var lt="legendfill-"+W.uid;ul.gradient(Ke,r,lt,u4(Ae,J==="radial"),Me,"fill")}},Te;if(Me){if(!J){var Le=Me.length;Te=fe===0?Me[Ae?Le-1:0][1]:fe===1?Me[Ae?0:Le-1][1]:Me[Math.floor((Le-1)/2)][1]}}else{var Ce=W.vertexcolor||W.facecolor||W.color;Te=Bo.isArrayOrTypedArray(Ce)?Ce[fe]||Ce[0]:Ce}ve.attr("d",oe[0]),Te?ve.call(jl.fill,Te):ve.call(we)})}};function u4(e,t){var r=t?"radial":"horizontal";return r+(e?"":"reversed")}function SD(e){var t=e[0].trace,r=t.contours,i=k2.hasLines(t),a=k2.hasMarkers(t),s=t.visible&&t.fill&&t.fill!=="none",l=!1,f=!1;if(r){var h=r.coloring;h==="lines"?l=!0:i=h==="none"||h==="heatmap"||r.showlines,r.type==="constraint"?s=r._operation!=="=":(h==="fill"||h==="heatmap")&&(f=!0)}return{showMarker:a,showLine:i,showFill:s,showGradientLine:l,showGradientFill:f,anyLine:i||l,anyFill:s||f}}function kD(e,t,r){return e&&Bo.isArrayOrTypedArray(e)?t:e>r?r:e}});var d4=pe((G1e,ND)=>{"use strict";var Os=ja(),On=Bt(),h4=eo(),Z0=sa(),ED=Vy(),c4=Xl(),Un=xi(),E2=Oa(),Md=co(),LD=cD(),jn=i4(),v4=ts(),FD=v4.LINE_SPACING,G0=v4.FROM_TL,DD=v4.FROM_BR,PD=pD(),Nre=f4(),zD=M2(),H0=1,Bre=/^legend[0-9]*$/;ND.exports=function(t,r){if(r)ID(t,r);else{var i=t._fullLayout,a=i._legends,s=i._infolayer.selectAll('[class^="legend"]');s.each(function(){var v=Os.select(this),m=v.attr("class"),_=m.split(" ")[0];_.match(Bre)&&a.indexOf(_)===-1&&v.remove()});for(var l=0;l1)}var C=i.hiddenlabels||[];if(!f&&(!i.showlegend||!h.length))return l.selectAll("."+a).remove(),i._topdefs.select("#"+s).remove(),h4.autoMargin(e,a);var E=On.ensureSingle(l,"g",a,function(W){f||W.attr("pointer-events","all")}),D=On.ensureSingleById(i._topdefs,"clipPath",s,function(W){W.append("rect")}),z=On.ensureSingle(E,"rect","bg",function(W){W.attr("shape-rendering","crispEdges")});z.call(E2.stroke,r.bordercolor).call(E2.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px");var B=On.ensureSingle(E,"g","scrollbox"),q=r.title;r._titleWidth=0,r._titleHeight=0;var I;q.text?(I=On.ensureSingle(B,"text",a+"titletext"),I.attr("text-anchor","start").call(Un.font,q.font).text(q.text),L2(I,B,e,r,H0)):B.selectAll("."+a+"titletext").remove();var O=On.ensureSingle(E,"rect","scrollbar",function(W){W.attr(jn.scrollBarEnterAttrs).call(E2.fill,jn.scrollBarColor)}),H=B.selectAll("g.groups").data(h);H.enter().append("g").attr("class","groups"),H.exit().remove();var V=H.selectAll("g.traces").data(On.identity);V.enter().append("g").attr("class","traces"),V.exit().remove(),V.style("opacity",function(W){var J=W[0].trace;return Z0.traceIs(J,"pie-like")?C.indexOf(W[0].label)!==-1?.5:1:J.visible==="legendonly"?.5:1}).each(function(){Os.select(this).call(Ure,e,r)}).call(Nre,e,r).each(function(){f||Os.select(this).call(Vre,e,a)}),On.syncOrAsync([h4.previousPromises,function(){return Zre(e,H,V,r)},function(){var W=i._size,J=r.borderwidth,te=r.xref==="paper",ne=r.yref==="paper";if(q.text&&Ore(I,r,J),!f){var oe,fe;te?oe=W.l+W.w*r.x-G0[D2(r)]*r._width:oe=i.width*r.x-G0[D2(r)]*r._width,ne?fe=W.t+W.h*(1-r.y)-G0[P2(r)]*r._effHeight:fe=i.height*(1-r.y)-G0[P2(r)]*r._effHeight;var ve=Yre(e,a,oe,fe);if(ve)return;if(i.margin.autoexpand){var Se=oe,Me=fe;oe=te?On.constrain(oe,0,i.width-r._width):Se,fe=ne?On.constrain(fe,0,i.height-r._effHeight):Me,oe!==Se&&On.log("Constrain "+a+".x to make legend fit inside graph"),fe!==Me&&On.log("Constrain "+a+".y to make legend fit inside graph")}Un.setTranslate(E,oe,fe)}if(O.on(".drag",null),E.on("wheel",null),f||r._height<=r._maxHeight||e._context.staticPlot){var Ae=r._effHeight;f&&(Ae=r._height),z.attr({width:r._width-J,height:Ae-J,x:J/2,y:J/2}),Un.setTranslate(B,0,0),D.select("rect").attr({width:r._width-2*J,height:Ae-2*J,x:J,y:J}),Un.setClipUrl(B,s,e),Un.setRect(O,0,0,0,0),delete r._scrollY}else{var we=Math.max(jn.scrollBarMinHeight,r._effHeight*r._effHeight/r._height),Te=r._effHeight-we-2*jn.scrollBarMargin,Ce=r._height-r._effHeight,Le=Te/Ce,Ke=Math.min(r._scrollY||0,Ce);z.attr({width:r._width-2*J+jn.scrollBarWidth+jn.scrollBarMargin,height:r._effHeight-J,x:J/2,y:J/2}),D.select("rect").attr({width:r._width-2*J+jn.scrollBarWidth+jn.scrollBarMargin,height:r._effHeight-2*J,x:J,y:J+Ke}),Un.setClipUrl(B,s,e),bt(Ke,we,Le),E.on("wheel",function(){Ke=On.constrain(r._scrollY+Os.event.deltaY/Ce*Te,0,Ce),bt(Ke,we,Le),Ke!==0&&Ke!==Ce&&Os.event.preventDefault()});var lt,at,gt,Ye=function(rt,dt,We){var qt=(We-dt)/Le+rt;return On.constrain(qt,0,Ce)},St=function(rt,dt,We){var qt=(dt-We)/Le+rt;return On.constrain(qt,0,Ce)},it=Os.behavior.drag().on("dragstart",function(){var rt=Os.event.sourceEvent;rt.type==="touchstart"?lt=rt.changedTouches[0].clientY:lt=rt.clientY,gt=Ke}).on("drag",function(){var rt=Os.event.sourceEvent;rt.buttons===2||rt.ctrlKey||(rt.type==="touchmove"?at=rt.changedTouches[0].clientY:at=rt.clientY,Ke=Ye(gt,lt,at),bt(Ke,we,Le))});O.call(it);var mt=Os.behavior.drag().on("dragstart",function(){var rt=Os.event.sourceEvent;rt.type==="touchstart"&&(lt=rt.changedTouches[0].clientY,gt=Ke)}).on("drag",function(){var rt=Os.event.sourceEvent;rt.type==="touchmove"&&(at=rt.changedTouches[0].clientY,Ke=St(gt,lt,at),bt(Ke,we,Le))});B.call(mt)}function bt(rt,dt,We){r._scrollY=e._fullLayout[a]._scrollY=rt,Un.setTranslate(B,0,-rt),Un.setRect(O,r._width,jn.scrollBarMargin+rt*We,jn.scrollBarWidth,dt),D.select("rect").attr("y",J+rt)}if(e._context.edits.legendPosition){var vt,de,De,ge;E.classed("cursor-move",!0),c4.init({element:E.node(),gd:e,prepFn:function(rt){if(rt.target!==O.node()){var dt=Un.getTranslate(E);De=dt.x,ge=dt.y}},moveFn:function(rt,dt){if(De!==void 0&&ge!==void 0){var We=De+rt,qt=ge+dt;Un.setTranslate(E,We,qt),vt=c4.align(We,r._width,W.l,W.l+W.w,r.xanchor),de=c4.align(qt+r._height,-r._height,W.t+W.h,W.t,r.yanchor)}},doneFn:function(){if(vt!==void 0&&de!==void 0){var rt={};rt[a+".x"]=vt,rt[a+".y"]=de,Z0.call("_guiRelayout",e,rt)}},clickFn:function(rt,dt){var We=l.selectAll("g.traces").filter(function(){var qt=this.getBoundingClientRect();return dt.clientX>=qt.left&&dt.clientX<=qt.right&&dt.clientY>=qt.top&&dt.clientY<=qt.bottom});We.size()>0&&qD(e,E,We,rt,dt)}})}}],e)}}function C2(e,t,r){var i=e[0],a=i.width,s=t.entrywidthmode,l=i.trace.legendwidth||t.entrywidth;return s==="fraction"?t._maxWidth*l:r+(l||a)}function qD(e,t,r,i,a){var s=r.data()[0][0].trace,l={event:a,node:r.node(),curveNumber:s.index,expandedIndex:s.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};s._group&&(l.group=s._group),Z0.traceIs(s,"pie-like")&&(l.label=r.datum()[0].label);var f=ED.triggerHandler(e,"plotly_legendclick",l);if(i===1){if(f===!1)return;t._clickTimeout=setTimeout(function(){e._fullLayout&&LD(r,e,i)},e._context.doubleClickDelay)}else if(i===2){t._clickTimeout&&clearTimeout(t._clickTimeout),e._legendMouseDownTime=0;var h=ED.triggerHandler(e,"plotly_legenddoubleclick",l);h!==!1&&f!==!1&&LD(r,e,i)}}function Ure(e,t,r){var i=z2(r),a=e.data()[0][0],s=a.trace,l=Z0.traceIs(s,"pie-like"),f=!r._inHover&&t._context.edits.legendText&&!l,h=r._maxNameLength,v,m;a.groupTitle?(v=a.groupTitle.text,m=a.groupTitle.font):(m=r.font,r.entries?v=a.text:(v=l?a.label:s.name,s._meta&&(v=On.templateString(v,s._meta))));var _=On.ensureSingle(e,"text",i+"text");_.attr("text-anchor","start").call(Un.font,m).text(f?RD(v,h):v);var T=r.indentation+r.itemwidth+jn.itemGap*2;Md.positionText(_,T,0),f?_.call(Md.makeEditable,{gd:t,text:v}).call(L2,e,t,r).on("edit",function(S){this.text(RD(S,h)).call(L2,e,t,r);var C=a.trace._fullInput||{},E={};return E.name=S,C._isShape?Z0.call("_guiRelayout",t,"shapes["+s.index+"].name",E.name):Z0.call("_guiRestyle",t,E,s.index)}):L2(_,e,t,r)}function RD(e,t){var r=Math.max(4,t);if(e&&e.trim().length>=r/2)return e;e=e||"";for(var i=r-e.length;i>0;i--)e+=" ";return e}function Vre(e,t,r){var i=t._context.doubleClickDelay,a,s=1,l=On.ensureSingle(e,"rect",r+"toggle",function(f){t._context.staticPlot||f.style("cursor","pointer").attr("pointer-events","all"),f.call(E2.fill,"rgba(0,0,0,0)")});t._context.staticPlot||(l.on("mousedown",function(){a=new Date().getTime(),a-t._legendMouseDownTimei&&(s=Math.max(s-1,1)),qD(t,f,e,s,Os.event)}}))}function L2(e,t,r,i,a){i._inHover&&e.attr("data-notex",!0),Md.convertToTspans(e,r,function(){Hre(t,r,i,a)})}function Hre(e,t,r,i){var a=e.data()[0][0];if(!r._inHover&&a&&!a.trace.showlegend){e.remove();return}var s=e.select("g[class*=math-group]"),l=s.node(),f=z2(r);r||(r=t._fullLayout[f]);var h=r.borderwidth,v;i===H0?v=r.title.font:a.groupTitle?v=a.groupTitle.font:v=r.font;var m=v.size*FD,_,T;if(l){var S=Un.bBox(l);_=S.height,T=S.width,i===H0?Un.setTranslate(s,h,h+_*.75):Un.setTranslate(s,0,_*.25)}else{var C="."+f+(i===H0?"title":"")+"text",E=e.select(C),D=Md.lineCount(E),z=E.node();if(_=m*D,T=z?Un.bBox(z).width:0,i===H0)r.title.side==="left"&&(T+=jn.itemGap*2),Md.positionText(E,h+jn.titlePad,h+m);else{var B=jn.itemGap*2+r.indentation+r.itemwidth;a.groupTitle&&(B=jn.itemGap,T-=r.indentation+r.itemwidth),Md.positionText(E,B,-m*((D-1)/2-.3))}}i===H0?(r._titleWidth=T,r._titleHeight=_):(a.lineHeight=m,a.height=Math.max(_,16)+3,a.width=T)}function Gre(e){var t=0,r=0,i=e.title.side;return i&&(i.indexOf("left")!==-1&&(t=e._titleWidth),i.indexOf("top")!==-1&&(r=e._titleHeight)),[t,r]}function Zre(e,t,r,i){var a=e._fullLayout,s=z2(i);i||(i=a[s]);var l=a._size,f=zD.isVertical(i),h=zD.isGrouped(i),v=i.entrywidthmode==="fraction",m=i.borderwidth,_=2*m,T=jn.itemGap,S=i.indentation+i.itemwidth+T*2,C=2*(m+T),E=P2(i),D=i.y<0||i.y===0&&E==="top",z=i.y>1||i.y===1&&E==="bottom",B=i.tracegroupgap,q={};let{orientation:I,yref:O}=i,{maxheight:H}=i,V=D||z||I!=="v"||O!=="paper";H||(H=V?.5:1);let W=V?a.height:l.h;i._maxHeight=Math.max(H>1?H:H*W,30);var J=0;i._width=0,i._height=0;var te=Gre(i);if(f)r.each(function(bt){var vt=bt[0].height;Un.setTranslate(this,m+te[0],m+te[1]+i._height+vt/2+T),i._height+=vt,i._width=Math.max(i._width,bt[0].width)}),J=S+i._width,i._width+=T+S+_,i._height+=C,h&&(t.each(function(bt,vt){Un.setTranslate(this,0,vt*i.tracegroupgap)}),i._height+=(i._lgroupsLength-1)*i.tracegroupgap);else{var ne=D2(i),oe=i.x<0||i.x===0&&ne==="right",fe=i.x>1||i.x===1&&ne==="left",ve=z||D,Se=a.width/2;i._maxWidth=Math.max(oe?ve&&ne==="left"?l.l+l.w:Se:fe?ve&&ne==="right"?l.r+l.w:Se:l.w,2*S);var Me=0,Ae=0;r.each(function(bt){var vt=C2(bt,i,S);Me=Math.max(Me,vt),Ae+=vt}),J=null;var we=0;if(h){var Te=0,Ce=0,Le=0;t.each(function(){var bt=0,vt=0;Os.select(this).selectAll("g.traces").each(function(De){var ge=C2(De,i,S),rt=De[0].height;Un.setTranslate(this,te[0],te[1]+m+T+rt/2+vt),vt+=rt,bt=Math.max(bt,ge),q[De[0].trace.legendgroup]=bt});var de=bt+T;Ce>0&&de+m+Ce>i._maxWidth?(we=Math.max(we,Ce),Ce=0,Le+=Te+B,Te=vt):Te=Math.max(Te,vt),Un.setTranslate(this,Ce,Le),Ce+=de}),i._width=Math.max(we,Ce)+m,i._height=Le+Te+C}else{var Ke=r.size(),lt=Ae+_+(Ke-1)*T=i._maxWidth&&(we=Math.max(we,St),gt=0,Ye+=at,i._height+=at,at=0),Un.setTranslate(this,te[0]+m+gt,te[1]+m+Ye+vt/2+T),St=gt+de+T,gt+=De,at=Math.max(at,vt)}),lt?(i._width=gt+_,i._height=at+C):(i._width=Math.max(we,St)+_,i._height+=at+C)}}i._width=Math.ceil(Math.max(i._width+te[0],i._titleWidth+2*(m+jn.titlePad))),i._height=Math.ceil(Math.max(i._height+te[1],i._titleHeight+2*(m+jn.itemGap))),i._effHeight=Math.min(i._height,i._maxHeight);var it=e._context.edits,mt=it.legendText||it.legendPosition;r.each(function(bt){var vt=Os.select(this).select("."+s+"toggle"),de=bt[0].height,De=bt[0].trace.legendgroup,ge=C2(bt,i,S);h&&De!==""&&(ge=q[De]);var rt=mt?S:J||ge;!f&&!v&&(rt+=T/2),Un.setRect(vt,0,-de/2,rt,de)})}function Yre(e,t,r,i){var a=e._fullLayout,s=a[t],l=D2(s),f=P2(s),h=s.xref==="paper",v=s.yref==="paper";e._fullLayout._reservedMargin[t]={};var m=s.y<.5?"b":"t",_=s.x<.5?"l":"r",T={r:a.width-r,l:r+s._width,b:a.height-i,t:i+s._effHeight};if(h&&v)return h4.autoMargin(e,t,{x:s.x,y:s.y,l:s._width*G0[l],r:s._width*DD[l],b:s._effHeight*DD[f],t:s._effHeight*G0[f]});h?e._fullLayout._reservedMargin[t][m]=T[m]:v||s.orientation==="v"?e._fullLayout._reservedMargin[t][_]=T[_]:e._fullLayout._reservedMargin[t][m]=T[m]}function D2(e){return On.isRightAnchor(e)?"right":On.isCenterAnchor(e)?"center":"left"}function P2(e){return On.isBottomAnchor(e)?"bottom":On.isMiddleAnchor(e)?"middle":"top"}function z2(e){return e._id||"legend"}});var g4=pe(y4=>{"use strict";var Sd=ja(),Tc=Da(),BD=wf(),cn=Bt(),Wre=cn.pushUnique,p4=cn.strTranslate,Xre=cn.strRotate,jre=Vy(),Jl=co(),Jre=sD(),zf=xi(),ro=Oa(),I2=Xl(),If=Xi(),Kre=Ao().zindexSeparator,W0=sa(),qu=bc(),kd=Ly(),Qre=t4(),$re=d4(),WD=kd.YANGLE,m4=Math.PI*WD/180,eae=1/Math.sin(m4),tae=Math.cos(m4),rae=Math.sin(m4),ji=kd.HOVERARROWSIZE,Fa=kd.HOVERTEXTPAD,OD={box:!0,ohlc:!0,violin:!0,candlestick:!0},aae={scatter:!0,scattergl:!0,splom:!0};function UD(e,t){return e.distance-t.distance}y4.hover=function(t,r,i,a){t=cn.getGraphDiv(t);var s=r.target;cn.throttle(t._fullLayout._uid+kd.HOVERID,kd.HOVERMINTIME,function(){iae(t,r,i,a,s)})};y4.loneHover=function(t,r){var i=!0;Array.isArray(t)||(i=!1,t=[t]);var a=r.gd,s=QD(a),l=$D(a),f=t.map(function(D){var z=D._x0||D.x0||D.x||0,B=D._x1||D.x1||D.x||0,q=D._y0||D.y0||D.y||0,I=D._y1||D.y1||D.y||0,O=D.eventData;if(O){var H=Math.min(z,B),V=Math.max(z,B),W=Math.min(q,I),J=Math.max(q,I),te=D.trace;if(W0.traceIs(te,"gl3d")){var ne=a._fullLayout[te.scene]._scene.container,oe=ne.offsetLeft,fe=ne.offsetTop;H+=oe,V+=oe,W+=fe,J+=fe}O.bbox={x0:H+l,x1:V+l,y0:W+s,y1:J+s},r.inOut_bbox&&r.inOut_bbox.push(O.bbox)}else O=!1;return{color:D.color||ro.defaultLine,x0:D.x0||D.x||0,x1:D.x1||D.x||0,y0:D.y0||D.y||0,y1:D.y1||D.y||0,xLabel:D.xLabel,yLabel:D.yLabel,zLabel:D.zLabel,text:D.text,name:D.name,idealAlign:D.idealAlign,borderColor:D.borderColor,fontFamily:D.fontFamily,fontSize:D.fontSize,fontColor:D.fontColor,fontWeight:D.fontWeight,fontStyle:D.fontStyle,fontVariant:D.fontVariant,nameLength:D.nameLength,textAlign:D.textAlign,trace:D.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:D.hovertemplate||!1,hovertemplateLabels:D.hovertemplateLabels||!1,eventData:O}}),h=!1,v=jD(f,{gd:a,hovermode:"closest",rotateLabels:h,bgColor:r.bgColor||ro.background,container:Sd.select(r.container),outerContainer:r.outerContainer||r.container}),m=v.hoverLabels,_=5,T=0,S=0;m.sort(function(D,z){return D.y0-z.y0}).each(function(D,z){var B=D.y0-D.by/2;B-_V[0]._length||ge<0||ge>W[0]._length)return I2.unhoverRaw(e,t)}if(t.pointerX=De+V[0]._offset,t.pointerY=ge+W[0]._offset,"xval"in t?Me=qu.flat(s,t.xval):Me=qu.p2c(V,De),"yval"in t?Ae=qu.flat(s,t.yval):Ae=qu.p2c(W,ge),!Tc(Me[0])||!Tc(Ae[0]))return cn.warn("Fx.hover failed",t,e),I2.unhoverRaw(e,t)}var We=1/0;function qt(ir,oi){for(Te=0;Teit&&(ve.splice(0,it),We=ve[0].distance),_&&fe!==0&&ve.length===0){St.distance=fe,St.index=!1;var se=Le._module.hoverPoints(St,gt,Ye,"closest",{hoverLayer:f._hoverlayer});if(se&&(se=se.filter(function($e){return $e.spikeDistance<=fe})),se&&se.length){var ee,le=se.filter(function($e){return $e.xa.showspikes&&$e.xa.spikesnap!=="hovered data"});if(le.length){var ce=le[0];Tc(ce.x0)&&Tc(ce.y0)&&(ee=Tt(ce),(!mt.vLinePoint||mt.vLinePoint.spikeDistance>ee.spikeDistance)&&(mt.vLinePoint=ee))}var Ee=se.filter(function($e){return $e.ya.showspikes&&$e.ya.spikesnap!=="hovered data"});if(Ee.length){var Ne=Ee[0];Tc(Ne.x0)&&Tc(Ne.y0)&&(ee=Tt(Ne),(!mt.hLinePoint||mt.hLinePoint.spikeDistance>ee.spikeDistance)&&(mt.hLinePoint=ee))}}}}}qt();function Dt(ir,oi,Sa){for(var la=null,Ci=1/0,ma,se=0;seir.trace.index===ct.trace.index):ve=[ct];var pt=ve.length,Ot=YD("x",ct,f),er=YD("y",ct,f);qt(Ot,er);var Zt=[],Kt={},pr=0,yr=function(ir){var oi=OD[ir.trace.type]?XD(ir):ir.trace.index;if(!Kt[oi])pr++,Kt[oi]=pr,Zt.push(ir);else{var Sa=Kt[oi]-1,la=Zt[Sa];Sa>0&&Math.abs(ir.distance)pt-1;ur--)yr(ve[ur]);ve=Zt,At()}var Lt=e._hoverdata,Fe=[],Ue=QD(e),xt=$D(e);for(let ir of ve){var wt=qu.makeEventData(ir,ir.trace,ir.cd);if(ir.hovertemplate!==!1){var mr=!1;ir.cd[ir.index]&&ir.cd[ir.index].ht&&(mr=ir.cd[ir.index].ht),ir.hovertemplate=mr||ir.trace.hovertemplate||!1}if(ir.xa&&ir.ya){var Ar=ir.x0+ir.xa._offset,Mr=ir.x1+ir.xa._offset,Gr=ir.y0+ir.ya._offset,pa=ir.y1+ir.ya._offset,Ca=Math.min(Ar,Mr),ii=Math.max(Ar,Mr),wi=Math.min(Gr,pa),vi=Math.max(Gr,pa);wt.bbox={x0:Ca+xt,x1:ii+xt,y0:wi+Ue,y1:vi+Ue}}ir.eventData=[wt],Fe.push(wt)}e._hoverdata=Fe;var Fi=T==="y"&&(Se.length>1||ve.length>1)||T==="closest"&&bt&&ve.length>1,Gi=ro.combine(f.plot_bgcolor||ro.background,f.paper_bgcolor),hn=jD(ve,{gd:e,hovermode:T,rotateLabels:Fi,bgColor:Gi,container:f._hoverlayer,outerContainer:f._paper.node(),commonLabelOpts:f.hoverlabel,hoverdistance:f.hoverdistance}),nn=hn.hoverLabels;if(qu.isUnifiedHover(T)||(oae(nn,Fi,f,hn.commonLabelBoundingBox),KD(nn,Fi,f._invScaleX,f._invScaleY)),a&&a.tagName){var Ki=W0.getComponentMethod("annotations","hasClickToShow")(e,Fe);Jre(Sd.select(a),Ki?"pointer":"")}!a||i||!uae(e,t,Lt)||(Lt&&e.emit("plotly_unhover",{event:t,points:Lt}),e.emit("plotly_hover",{event:t,points:e._hoverdata,xaxes:V,yaxes:W,xvals:Me,yvals:Ae}))}function XD(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var nae=/([\s\S]*)<\/extra>/;function jD(e,t){var r=t.gd,i=r._fullLayout,a=t.hovermode,s=t.rotateLabels,l=t.bgColor,f=t.container,h=t.outerContainer,v=t.commonLabelOpts||{};if(e.length===0)return[[]];var m=t.fontFamily||kd.HOVERFONT,_=t.fontSize||kd.HOVERFONTSIZE,T=t.fontWeight||i.font.weight,S=t.fontStyle||i.font.style,C=t.fontVariant||i.font.variant,E=t.fontTextcase||i.font.textcase,D=t.fontLineposition||i.font.lineposition,z=t.fontShadow||i.font.shadow,B=e[0],q=B.xa,I=B.ya,O=a.charAt(0),H=O+"Label",V=B[H];if(V===void 0&&q.type==="multicategory")for(var W=0;Wi.width-Ue&&(xt=i.width-Ue),ct.attr("d","M"+(ur-xt)+",0L"+(ur-xt+ji)+","+Fe+ji+"H"+Ue+"v"+Fe+(Fa*2+yr.height)+"H"+-Ue+"V"+Fe+ji+"H"+(ur-xt-ji)+"Z"),ur=xt,Te.minX=ur-Ue,Te.maxX=ur+Ue,q.side==="top"?(Te.minY=Lt-(Fa*2+yr.height),Te.maxY=Lt-Fa):(Te.minY=Lt+Fa,Te.maxY=Lt+(Fa*2+yr.height))}else{var wt,mr,Ar;I.side==="right"?(wt="start",mr=1,Ar="",ur=q._offset+q._length):(wt="end",mr=-1,Ar="-",ur=q._offset),Lt=I._offset+(B.y0+B.y1)/2,pt.attr("text-anchor",wt),ct.attr("d","M0,0L"+Ar+ji+","+ji+"V"+(Fa+yr.height/2)+"h"+Ar+(Fa*2+yr.width)+"V-"+(Fa+yr.height/2)+"H"+Ar+ji+"V-"+ji+"Z"),Te.minY=Lt-(Fa+yr.height/2),Te.maxY=Lt+(Fa+yr.height/2),I.side==="right"?(Te.minX=ur+ji,Te.maxX=ur+ji+(Fa*2+yr.width)):(Te.minX=ur-ji-(Fa*2+yr.width),Te.maxX=ur-ji);var Mr=yr.height/2,Gr=te-yr.top-Mr,pa="clip"+i._uid+"commonlabel"+I._id,Ca;if(urct.hoverinfo!=="none");if(Et.length===0)return[];var Ce=i.hoverlabel,Le=Ce.font,Ke=Et[0],lt=((a==="x unified"?Ke.xa:Ke.ya).unifiedhovertitle||{}).text,at=lt?cn.hovertemplateString({data:a==="x unified"?[{xa:Ke.xa,x:Ke.xVal}]:[{ya:Ke.ya,y:Ke.yVal}],fallback:Ke.trace.hovertemplatefallback,locale:i._d3locale,template:lt}):V,gt={showlegend:!0,legend:{title:{text:at,font:Le},font:Le,bgcolor:Ce.bgcolor,bordercolor:Ce.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:i.legend?i.legend.traceorder:void 0,orientation:"v"}},Ye={font:Le};Qre(gt,Ye,r._fullData);var St=Ye.legend;St.entries=[];for(var it=0;it=0?st=At:Vt+dt=0?st=Vt:Ht+dt=0?sr=Ut:Ct+We=0?sr=Ct:Be+We=0,(Et.idealAlign==="top"||!vi)&&Fi?(Ar-=Gr/2,Et.anchor="end"):vi?(Ar+=Gr/2,Et.anchor="start"):Et.anchor="middle",Et.crossPos=Ar;else{if(Et.pos=Ar,vi=mr+Mr/2+wi<=ne,Fi=mr-Mr/2-wi>=0,(Et.idealAlign==="left"||!vi)&&Fi)mr-=Mr/2,Et.anchor="end";else if(vi)mr+=Mr/2,Et.anchor="start";else{Et.anchor="middle";var Gi=wi/2,hn=mr+Gi-ne,nn=mr-Gi;hn>0&&(mr-=hn),nn<0&&(mr+=-nn)}Et.crossPos=mr}Lt.attr("text-anchor",Et.anchor),Ue&&Fe.attr("text-anchor",Et.anchor),ct.attr("transform",p4(mr,Ar)+(s?Xre(WD):""))}),{hoverLabels:Dr,commonLabelBoundingBox:Te}}function VD(e,t,r,i,a,s){var _,T;var l="",f="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=cn.templateString(e.name,e.trace._meta)),l=ZD(e.name,e.nameLength));var h=r.charAt(0),v=h==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(f+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(f+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(f+=(f?"z: ":"")+e.zLabel)):t&&e[h+"Label"]===a?f=e[v+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(f=e.yLabel):e.yLabel===void 0?f=e.xLabel:f="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(f+=(f?"
":"")+e.text),e.extraText!==void 0&&(f+=(f?"
":"")+e.extraText),s&&f===""&&!e.hovertemplate&&(l===""&&s.remove(),f=l),(T=(_=e.trace)==null?void 0:_.hoverlabel)!=null&&T.split&&(e.hovertemplate="");let{hovertemplate:m=!1}=e;if(m){let S=e.hovertemplateLabels||e;e[h+"Label"]!==a&&(S[h+"other"]=S[h+"Val"],S[h+"otherLabel"]=S[h+"Label"]),f=cn.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:S,locale:i._d3locale,template:m}),f=f.replace(nae,(C,E)=>(l=ZD(E,e.nameLength),""))}return[f,l]}function oae(e,t,r,i){var a=t?"xa":"ya",s=t?"ya":"xa",l=0,f=1,h=e.size(),v=new Array(h),m=0,_=i.minX,T=i.maxX,S=i.minY,C=i.maxY,E=function(Me){return Me*r._invScaleX},D=function(Me){return Me*r._invScaleY};e.each(function(Me){var Ae=Me[a],we=Me[s],Te=Ae._id.charAt(0)==="x",Ce=Ae.range;m===0&&Ce&&Ce[0]>Ce[1]!==Te&&(f=-1);var Le=0,Ke=Te?r.width:r.height;if(r.hovermode==="x"||r.hovermode==="y"){var lt=JD(Me,t),at=Me.anchor,gt=at==="end"?-1:1,Ye,St;if(at==="middle")Ye=Me.crossPos+(Te?D(lt.y-Me.by/2):E(Me.bx/2+Me.tx2width/2)),St=Ye+(Te?D(Me.by):E(Me.bx));else if(Te)Ye=Me.crossPos+D(ji+lt.y)-D(Me.by/2-ji),St=Ye+D(Me.by);else{var it=E(gt*ji+lt.x),mt=it+E(gt*Me.bx);Ye=Me.crossPos+Math.min(it,mt),St=Me.crossPos+Math.max(it,mt)}Te?S!==void 0&&C!==void 0&&Math.min(St,C)-Math.max(Ye,S)>1&&(we.side==="left"?(Le=we._mainLinePosition,Ke=r.width):Ke=we._mainLinePosition):_!==void 0&&T!==void 0&&Math.min(St,T)-Math.max(Ye,_)>1&&(we.side==="top"?(Le=we._mainLinePosition,Ke=r.height):Ke=we._mainLinePosition)}v[m++]=[{datum:Me,traceIndex:Me.trace.index,dp:0,pos:Me.pos,posref:Me.posref,size:Me.by*(Te?eae:1)/2,pmin:Le,pmax:Ke}]}),v.sort(function(Me,Ae){return Me[0].posref-Ae[0].posref||f*(Ae[0].traceIndex-Me[0].traceIndex)});var z,B,q,I,O,H,V;function W(Me){var Ae=Me[0],we=Me[Me.length-1];if(B=Ae.pmin-Ae.pos-Ae.dp+Ae.size,q=we.pos+we.dp+we.size-Ae.pmax,B>.01){for(O=Me.length-1;O>=0;O--)Me[O].dp+=B;z=!1}if(!(q<.01)){if(B<-.01){for(O=Me.length-1;O>=0;O--)Me[O].dp-=q;z=!1}if(z){var Te=0;for(I=0;IAe.pmax&&Te++;for(I=Me.length-1;I>=0&&!(Te<=0);I--)H=Me[I],H.pos>Ae.pmax-1&&(H.del=!0,Te--);for(I=0;I=0;O--)Me[O].dp-=q;for(I=Me.length-1;I>=0&&!(Te<=0);I--)H=Me[I],H.pos+H.dp+H.size>Ae.pmax&&(H.del=!0,Te--)}}}for(;!z&&l<=h;){for(l++,z=!0,I=0;I.01){for(O=te.length-1;O>=0;O--)te[O].dp+=B;for(J.push.apply(J,te),v.splice(I+1,1),V=0,O=J.length-1;O>=0;O--)V+=J[O].dp;for(q=V/J.length,O=J.length-1;O>=0;O--)J[O].dp-=q;z=!1}else I++}v.forEach(W)}for(I=v.length-1;I>=0;I--){var fe=v[I];for(O=fe.length-1;O>=0;O--){var ve=fe[O],Se=ve.datum;Se.offset=ve.dp,Se.del=ve.del}}}function JD(e,t){var r=0,i=e.offset;return t&&(i*=-rae,r=e.offset*tae),{x:r,y:i}}function sae(e){var t={start:1,end:-1,middle:0}[e.anchor],r=t*(ji+Fa),i=r+t*(e.txwidth+Fa),a=e.anchor==="middle";return a&&(r-=e.tx2width/2,i+=e.txwidth/2+Fa),{alignShift:t,textShiftX:r,text2ShiftX:i}}function KD(e,t,r,i){var a=function(l){return l*r},s=function(l){return l*i};e.each(function(l){var f=Sd.select(this);if(l.del)return f.remove();var h=f.select("text.nums"),v=l.anchor,m=v==="end"?-1:1,_=sae(l),T=JD(l,t),S=T.x,C=T.y,E=v==="middle",D="hoverlabel"in l.trace?l.trace.hoverlabel.showarrow:!0,z;E?z="M-"+a(l.bx/2+l.tx2width/2)+","+s(C-l.by/2)+"h"+a(l.bx)+"v"+s(l.by)+"h-"+a(l.bx)+"Z":D?z="M0,0L"+a(m*ji+S)+","+s(ji+C)+"v"+s(l.by/2-ji)+"h"+a(m*l.bx)+"v-"+s(l.by)+"H"+a(m*ji+S)+"V"+s(C-ji)+"Z":z="M"+a(m*ji+S)+","+s(C-l.by/2)+"h"+a(m*l.bx)+"v"+s(l.by)+"h"+a(-m*l.bx)+"Z",f.select("path").attr("d",z);var B=S+_.textShiftX,q=C+l.ty0-l.by/2+Fa,I=l.textAlign||"auto";I!=="auto"&&(I==="left"&&v!=="start"?(h.attr("text-anchor","start"),B=E?-l.bx/2-l.tx2width/2+Fa:-l.bx-Fa):I==="right"&&v!=="end"&&(h.attr("text-anchor","end"),B=E?l.bx/2-l.tx2width/2-Fa:l.bx+Fa)),h.call(Jl.positionText,a(B),s(q)),l.tx2width&&(f.select("text.name").call(Jl.positionText,a(_.text2ShiftX+_.alignShift*Fa+S),s(C+l.ty0-l.by/2+Fa)),f.select("rect").call(zf.setRect,a(_.text2ShiftX+(_.alignShift-1)*l.tx2width/2+S),s(C-l.by/2-1),a(l.tx2width),s(l.by+2)))})}function lae(e,t){var r=e.index,i=e.trace||{},a=e.cd[0],s=e.cd[r]||{};function l(T){return T||Tc(T)&&T===0}var f=Array.isArray(r)?function(T,S){var C=cn.castOption(a,r,T);return l(C)?C:cn.extractOption({},i,"",S)}:function(T,S){return cn.extractOption(s,i,T,S)};function h(T,S,C){var E=f(S,C);l(E)&&(e[T]=E)}if(h("hoverinfo","hi","hoverinfo"),h("bgcolor","hbg","hoverlabel.bgcolor"),h("borderColor","hbc","hoverlabel.bordercolor"),h("fontFamily","htf","hoverlabel.font.family"),h("fontSize","hts","hoverlabel.font.size"),h("fontColor","htc","hoverlabel.font.color"),h("fontWeight","htw","hoverlabel.font.weight"),h("fontStyle","hty","hoverlabel.font.style"),h("fontVariant","htv","hoverlabel.font.variant"),h("nameLength","hnl","hoverlabel.namelength"),h("textAlign","hta","hoverlabel.align"),e.posref=t==="y"||t==="closest"&&i.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=cn.constrain(e.x0,0,e.xa._length),e.x1=cn.constrain(e.x1,0,e.xa._length),e.y0=cn.constrain(e.y0,0,e.ya._length),e.y1=cn.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:If.hoverLabelText(e.xa,e.xLabelVal,i.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:If.hoverLabelText(e.ya,e.yLabelVal,i.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var v=If.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+v+" / -"+If.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+v,t==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var m=If.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+m+" / -"+If.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+m,t==="y"&&(e.distance+=1)}var _=e.hoverinfo||e.trace.hoverinfo;return _&&_!=="all"&&(_=Array.isArray(_)?_:_.split("+"),_.indexOf("x")===-1&&(e.xLabel=void 0),_.indexOf("y")===-1&&(e.yLabel=void 0),_.indexOf("z")===-1&&(e.zLabel=void 0),_.indexOf("text")===-1&&(e.text=void 0),_.indexOf("name")===-1&&(e.name=void 0)),e}function HD(e,t,r){var i=r.container,a=r.fullLayout,s=a._size,l=r.event,f=!!t.hLinePoint,h=!!t.vLinePoint,v,m;if(i.selectAll(".spikeline").remove(),!!(h||f)){var _=ro.combine(a.plot_bgcolor,a.paper_bgcolor);if(f){var T=t.hLinePoint,S,C;v=T&&T.xa,m=T&&T.ya;var E=m.spikesnap;E==="cursor"?(S=l.pointerX,C=l.pointerY):(S=v._offset+T.x,C=m._offset+T.y);var D=BD.readability(T.color,_)<1.5?ro.contrast(_):T.color,z=m.spikemode,B=m.spikethickness,q=m.spikecolor||D,I=If.getPxPosition(e,m),O,H;if(z.indexOf("toaxis")!==-1||z.indexOf("across")!==-1){if(z.indexOf("toaxis")!==-1&&(O=I,H=S),z.indexOf("across")!==-1){var V=m._counterDomainMin,W=m._counterDomainMax;m.anchor==="free"&&(V=Math.min(V,m.position),W=Math.max(W,m.position)),O=s.l+V*s.w,H=s.l+W*s.w}i.insert("line",":first-child").attr({x1:O,x2:H,y1:C,y2:C,"stroke-width":B,stroke:q,"stroke-dasharray":zf.dashStyle(m.spikedash,B)}).classed("spikeline",!0).classed("crisp",!0),i.insert("line",":first-child").attr({x1:O,x2:H,y1:C,y2:C,"stroke-width":B+2,stroke:_}).classed("spikeline",!0).classed("crisp",!0)}z.indexOf("marker")!==-1&&i.insert("circle",":first-child").attr({cx:I+(m.side!=="right"?B:-B),cy:C,r:B,fill:q}).classed("spikeline",!0)}if(h){var J=t.vLinePoint,te,ne;v=J&&J.xa,m=J&&J.ya;var oe=v.spikesnap;oe==="cursor"?(te=l.pointerX,ne=l.pointerY):(te=v._offset+J.x,ne=m._offset+J.y);var fe=BD.readability(J.color,_)<1.5?ro.contrast(_):J.color,ve=v.spikemode,Se=v.spikethickness,Me=v.spikecolor||fe,Ae=If.getPxPosition(e,v),we,Te;if(ve.indexOf("toaxis")!==-1||ve.indexOf("across")!==-1){if(ve.indexOf("toaxis")!==-1&&(we=Ae,Te=ne),ve.indexOf("across")!==-1){var Ce=v._counterDomainMin,Le=v._counterDomainMax;v.anchor==="free"&&(Ce=Math.min(Ce,v.position),Le=Math.max(Le,v.position)),we=s.t+(1-Le)*s.h,Te=s.t+(1-Ce)*s.h}i.insert("line",":first-child").attr({x1:te,x2:te,y1:we,y2:Te,"stroke-width":Se,stroke:Me,"stroke-dasharray":zf.dashStyle(v.spikedash,Se)}).classed("spikeline",!0).classed("crisp",!0),i.insert("line",":first-child").attr({x1:te,x2:te,y1:we,y2:Te,"stroke-width":Se+2,stroke:_}).classed("spikeline",!0).classed("crisp",!0)}ve.indexOf("marker")!==-1&&i.insert("circle",":first-child").attr({cx:te,cy:Ae-(v.side!=="top"?Se:-Se),r:Se,fill:Me}).classed("spikeline",!0)}}}function uae(e,t,r){if(!r||r.length!==e._hoverdata.length)return!0;for(var i=r.length-1;i>=0;i--){var a=r[i],s=e._hoverdata[i];if(a.curveNumber!==s.curveNumber||String(a.pointNumber)!==String(s.pointNumber)||String(a.pointNumbers)!==String(s.pointNumbers)||a.binNumber!==s.binNumber)return!0}return!1}function GD(e,t){return!t||t.vLinePoint!==e._spikepoints.vLinePoint||t.hLinePoint!==e._spikepoints.hLinePoint}function ZD(e,t){return Jl.plainText(e||"",{len:t,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function fae(e,t){for(var r=t.charAt(0),i=[],a=[],s=[],l=0;le.offsetTop+e.clientTop,$D=e=>e.offsetLeft+e.clientLeft;function Y0(e,t){var r=e._fullLayout,i=t.getBoundingClientRect(),a=i.left,s=i.top,l=a+i.width,f=s+i.height,h=cn.apply3DTransform(r._invTransform)(a,s),v=cn.apply3DTransform(r._invTransform)(l,f),m=h[0],_=h[1],T=v[0],S=v[1];return{x:m,y:_,width:T-m,height:S-_,top:Math.min(_,S),left:Math.min(m,T),right:Math.max(m,T),bottom:Math.max(_,S)}}});var R2=pe((Y1e,eP)=>{"use strict";var cae=Bt(),hae=Oa(),vae=bc().isUnifiedHover;eP.exports=function(t,r,i,a){a=a||{};var s=r.legend;function l(f){a.font[f]||(a.font[f]=s?r.legend.font[f]:r.font[f])}r&&vae(r.hovermode)&&(a.font||(a.font={}),l("size"),l("family"),l("color"),l("weight"),l("style"),l("variant"),s?(a.bgcolor||(a.bgcolor=hae.combine(r.legend.bgcolor,r.paper_bgcolor)),a.bordercolor||(a.bordercolor=r.legend.bordercolor)):a.bgcolor||(a.bgcolor=r.paper_bgcolor)),i("hoverlabel.bgcolor",a.bgcolor),i("hoverlabel.bordercolor",a.bordercolor),i("hoverlabel.namelength",a.namelength),i("hoverlabel.showarrow",a.showarrow),cae.coerceFont(i,"hoverlabel.font",a.font),i("hoverlabel.align",a.align)}});var rP=pe((W1e,tP)=>{"use strict";var dae=Bt(),pae=R2(),mae=c0();tP.exports=function(t,r){function i(a,s){return dae.coerce(t,r,mae,a,s)}pae(t,r,i)}});var nP=pe((X1e,iP)=>{"use strict";var aP=Bt(),yae=i_(),gae=R2();iP.exports=function(t,r,i,a){function s(f,h){return aP.coerce(t,r,yae,f,h)}var l=aP.extendFlat({},a.hoverlabel);r.hovertemplate&&(l.namelength=-1),gae(t,r,s,l)}});var _4=pe((j1e,oP)=>{"use strict";var _ae=Bt(),xae=c0();oP.exports=function(t,r){function i(a,s){return r[a]!==void 0?r[a]:_ae.coerce(t,r,xae,a,s)}return i("clickmode"),i("hoversubplots"),i("hovermode")}});var uP=pe((J1e,lP)=>{"use strict";var sP=Bt(),bae=c0(),wae=_4(),Tae=R2();lP.exports=function(t,r){function i(m,_){return sP.coerce(t,r,bae,m,_)}var a=wae(t,r);a&&(i("hoverdistance"),i("spikedistance"));var s=i("dragmode");s==="select"&&i("selectdirection");var l=r._has("mapbox"),f=r._has("map"),h=r._has("geo"),v=r._basePlotModules.length;r.dragmode==="zoom"&&((l||f||h)&&v===1||(l||f)&&h&&v===2)&&(r.dragmode="pan"),Tae(t,r,i),sP.coerceFont(i,"hoverlabel.grouptitlefont",r.hoverlabel.font)}});var hP=pe((K1e,cP)=>{"use strict";var x4=Bt(),fP=sa();cP.exports=function(t){var r=t.calcdata,i=t._fullLayout;function a(v){return function(m){return x4.coerceHoverinfo({hoverinfo:m},{_module:v._module},i)}}for(var s=0;s{"use strict";var Mae=sa(),Sae=g4().hover;vP.exports=function(t,r,i){var a=Mae.getComponentMethod("annotations","onClick")(t,t._hoverdata);i!==void 0&&Sae(t,r,i,!0);function s(){t.emit("plotly_click",{points:t._hoverdata,event:r})}t._hoverdata&&r&&r.target&&(a&&a.then?a.then(s):s(),r.stopImmediatePropagation&&r.stopImmediatePropagation())}});var Rf=pe(($1e,yP)=>{"use strict";var kae=ja(),F2=Bt(),Cae=Xl(),lg=bc(),pP=c0(),mP=g4();yP.exports={moduleType:"component",name:"fx",constants:Ly(),schema:{layout:pP},attributes:i_(),layoutAttributes:pP,supplyLayoutGlobalDefaults:rP(),supplyDefaults:nP(),supplyLayoutDefaults:uP(),calc:hP(),getDistanceFunction:lg.getDistanceFunction,getClosest:lg.getClosest,inbox:lg.inbox,quadrature:lg.quadrature,appendArrayPointValue:lg.appendArrayPointValue,castHoverOption:Lae,castHoverinfo:Dae,hover:mP.hover,unhover:Cae.unhover,loneHover:mP.loneHover,loneUnhover:Eae,click:dP()};function Eae(e){var t=F2.isD3Selection(e)?e:kae.select(e);t.selectAll("g.hovertext").remove(),t.selectAll(".spikeline").remove()}function Lae(e,t,r){return F2.castOption(e,t,"hoverlabel."+r)}function Dae(e,t,r){function i(a){return F2.coerceHoverinfo({hoverinfo:a},{_module:e._module},t)}return F2.castOption(e,r,"hoverinfo",i)}});var Cd=pe(Ac=>{"use strict";Ac.selectMode=function(e){return e==="lasso"||e==="select"};Ac.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Ac.openMode=function(e){return e==="drawline"||e==="drawopenpath"};Ac.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Ac.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};Ac.selectingOrDrawing=function(e){return Ac.freeMode(e)||Ac.rectMode(e)}});var q2=pe((t_e,gP)=>{"use strict";gP.exports=function(t){var r=t._fullLayout;r._glcanvas&&r._glcanvas.size()&&r._glcanvas.each(function(i){i.regl&&i.regl.clear({color:!0,depth:!0})})}});var N2=pe((r_e,_P)=>{"use strict";_P.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var O2=pe((a_e,xP)=>{"use strict";var B2=32;xP.exports={CIRCLE_SIDES:B2,i000:0,i090:B2/4,i180:B2/2,i270:B2/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var U2=pe((i_e,wP)=>{"use strict";var Pae=Bt().strTranslate;function bP(e,t){switch(e.type){case"log":return e.p2d(t);case"date":return e.p2r(t,0,e.calendar);default:return e.p2r(t)}}function zae(e,t){switch(e.type){case"log":return e.d2p(t);case"date":return e.r2p(t,0,e.calendar);default:return e.r2p(t)}}function Iae(e){var t=e._id.charAt(0)==="y"?1:0;return function(r){return bP(e,r[t])}}function Rae(e){return Pae(e.xaxis._offset,e.yaxis._offset)}wP.exports={p2r:bP,r2p:zae,axValue:Iae,getTransform:Rae}});var Uh=pe(Mc=>{"use strict";var Fae=s5(),MP=O2(),X0=MP.CIRCLE_SIDES,b4=MP.SQRT2,SP=U2(),TP=SP.p2r,AP=SP.r2p,qae=[0,3,4,5,6,1,2],Nae=[0,3,4,1,2];Mc.writePaths=function(e){var t=e.length;if(!t)return"M0,0Z";for(var r="",i=0;i0&&h{"use strict";var kP=Xn(),PP=Cd(),Bae=PP.drawMode,Oae=PP.openMode,j0=O2(),CP=j0.i000,EP=j0.i090,LP=j0.i180,DP=j0.i270,Uae=j0.cos45,Vae=j0.sin45,zP=U2(),H2=zP.p2r,Vh=zP.r2p,Hae=Ph(),Gae=Hae.clearOutline,G2=Uh(),Zae=G2.readPaths,Yae=G2.writePaths,Wae=G2.ellipseOver,Xae=G2.fixDatesForPaths;function jae(e,t){if(e.length){var r=e[0][0];if(r){var i=t.gd,a=t.isActiveShape,s=t.dragmode,l=(i.layout||{}).shapes||[];if(!Bae(s)&&a!==void 0){var f=i._fullLayout._activeShapeIndex;if(f{"use strict";var Jae=Cd(),Kae=Jae.selectMode,Qae=Ph(),$ae=Qae.clearOutline,w4=Uh(),eie=w4.readPaths,tie=w4.writePaths,rie=w4.fixDatesForPaths;FP.exports=function(t,r){if(t.length){var i=t[0][0];if(i){var a=i.getAttribute("d"),s=r.gd,l=s._fullLayout.newselection,f=r.plotinfo,h=f.xaxis,v=f.yaxis,m=r.isActiveSelection,_=r.dragmode,T=(s.layout||{}).selections||[];if(!Kae(_)&&m!==void 0){var S=s._fullLayout._activeSelectionIndex;if(S{"use strict";qP.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var Hh=pe(ho=>{"use strict";var Ed=fg(),NP=Bt(),Y2=Xi();ho.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(t){return t}};ho.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(t){return t}};ho.decodeDate=function(e){return function(t){return t.replace&&(t=t.replace("_"," ")),e(t)}};ho.encodeDate=function(e){return function(t){return e(t).replace(" ","_")}};ho.extractPathCoords=function(e,t,r){var i=[],a=e.match(Ed.segmentRE);return a.forEach(function(s){var l=t[s.charAt(0)].drawn;if(l!==void 0){var f=s.substr(1).match(Ed.paramRE);if(!(!f||f.lengthS&&(E="X"),E});return v>S&&(C=C.replace(/[\s,]*X.*/,""),NP.log("Ignoring extra params in segment "+h)),m+C})}function cg(e,t){t=t||0;var r=0;return t&&e&&(e.type==="category"||e.type==="multicategory")&&(r=(e.r2p(1)-e.r2p(0))*t),r}});var M4=pe((f_e,VP)=>{"use strict";var iie=Bt(),J0=Xi(),BP=co(),OP=xi(),nie=Uh().readPaths,A4=Hh(),oie=A4.getPathString,UP=v_(),sie=ts().FROM_TL;VP.exports=function(t,r,i,a){if(a.selectAll(".shape-label").remove(),!!(i.label.text||i.label.texttemplate)){var s;if(i.label.texttemplate){var l={};if(i.type!=="path"){var f=J0.getFromId(t,i.xref),h=J0.getFromId(t,i.yref);for(var v in UP){var m=UP[v](i,f,h);m!==void 0&&(l[v]=m)}}s=iie.texttemplateStringForShapes({data:[l],fallback:i.label.texttemplatefallback,locale:t._fullLayout._d3locale,template:i.label.texttemplate})}else s=i.label.text;var _={"data-index":r},T=i.label.font,S={"data-notex":1},C=a.append("g").attr(_).classed("shape-label",!0),E=C.append("text").attr(S).classed("shape-label-text",!0).text(s),D,z,B,q;if(i.path){var I=oie(t,i),O=nie(I,t);D=1/0,B=1/0,z=-1/0,q=-1/0;for(var H=0;H=e?a=t-i:a=i-t,-180/Math.PI*Math.atan2(a,s)}function uie(e,t,r,i,a,s,l){var f=a.label.textposition,h=a.label.textangle,v=a.label.padding,m=a.type,_=Math.PI/180*s,T=Math.sin(_),S=Math.cos(_),C=a.label.xanchor,E=a.label.yanchor,D,z,B,q;if(m==="line"){f==="start"?(D=e,z=t):f==="end"?(D=r,z=i):(D=(e+r)/2,z=(t+i)/2),C==="auto"&&(f==="start"?h==="auto"?r>e?C="left":re?C="right":re?C="right":re?C="left":r{"use strict";var fie=Bt(),cie=fie.strTranslate,HP=Xl(),YP=Cd(),hie=YP.drawMode,WP=YP.selectMode,XP=sa(),GP=Oa(),X2=O2(),vie=X2.i000,die=X2.i090,pie=X2.i180,mie=X2.i270,yie=Ph(),jP=yie.clearOutlineControllers,k4=Uh(),W2=k4.pointsOnRectangle,S4=k4.pointsOnEllipse,gie=k4.writePaths,_ie=Z2().newShapes,xie=Z2().createShapeObj,bie=T4(),wie=M4();JP.exports=function e(t,r,i,a){a||(a=0);var s=i.gd;function l(){e(t,r,i,a++),(S4(t[0])||i.hasText)&&f({redrawing:!0})}function f(Ae){var we={};i.isActiveShape!==void 0&&(i.isActiveShape=!1,we=_ie(r,i)),i.isActiveSelection!==void 0&&(i.isActiveSelection=!1,we=bie(r,i),s._fullLayout._reselect=!0),Object.keys(we).length&&XP.call((Ae||{}).redrawing?"relayout":"_guiRelayout",s,we)}var h=s._fullLayout,v=h._zoomlayer,m=i.dragmode,_=hie(m),T=WP(m);(_||T)&&(s._fullLayout._outlining=!0),jP(s),r.attr("d",gie(t));var S,C,E,D,z;if(!a&&(i.isActiveShape||i.isActiveSelection)){z=Tie([],t);var B=v.append("g").attr("class","outline-controllers");te(B),Me()}if(_&&i.hasText){var q=v.select(".label-temp"),I=xie(r,i,i.dragmode);wie(s,"label-temp",I,q)}function O(Ae){E=+Ae.srcElement.getAttribute("data-i"),D=+Ae.srcElement.getAttribute("data-j"),S[E][D].moveFn=H}function H(Ae,we){if(t.length){var Te=z[E][D][1],Ce=z[E][D][2],Le=t[E],Ke=Le.length;if(W2(Le)){var lt=Ae,at=we;if(i.isActiveSelection){var gt=ZP(Le,D);gt[1]===Le[D][1]?at=0:lt=0}for(var Ye=0;Ye1&&!(Ae.length===2&&Ae[1][0]==="Z")&&(D===0&&(Ae[0][0]="M"),t[E]=Ae,l(),f())}}function J(Ae,we){if(Ae===2){E=+we.srcElement.getAttribute("data-i"),D=+we.srcElement.getAttribute("data-j");var Te=t[E];!W2(Te)&&!S4(Te)&&W()}}function te(Ae){S=[];for(var we=0;we{"use strict";var Mie=ja(),rz=sa(),KP=Bt(),K0=Xi(),Sie=Uh().readPaths,kie=j2(),K2=M4(),az=Ph().clearOutlineControllers,C4=Oa(),L4=xi(),Cie=Ii().arrayEditor,QP=Xl(),$P=Oh(),Ld=fg(),Us=Hh(),E4=Us.getPathString;oz.exports={draw:D4,drawOne:iz,eraseActiveShape:Die,drawLabel:K2};function D4(e){var t=e._fullLayout;t._shapeUpperLayer.selectAll("path").remove(),t._shapeLowerLayer.selectAll("path").remove(),t._shapeUpperLayer.selectAll("text").remove(),t._shapeLowerLayer.selectAll("text").remove();for(var r in t._plots){var i=t._plots[r].shapelayer;i&&(i.selectAll("path").remove(),i.selectAll("text").remove())}for(var a=0;al&&Ut>f&&!Dt.shiftKey?QP.getCursor(Ct/Rt,1-At/Ut):"move";$P(t,Vt),St=Vt.split("-")[0]}}function vt(Dt){J2(e)||(h&&(z=Le(r.xanchor)),v&&(B=Ke(r.yanchor)),r.type==="path"?ne=r.path:(S=h?r.x0:Le(r.x0),C=v?r.y0:Ke(r.y0),E=h?r.x1:Le(r.x1),D=v?r.y1:Ke(r.y1)),SD?(q=C,V="y0",I=D,W="y1"):(q=D,V="y1",I=C,W="y0"),bt(Dt),dt(a,r),qt(t,r,e),Ye.moveFn=St==="move"?ge:rt,Ye.altKey=Dt.altKey)}function de(){J2(e)||($P(t),We(a),nz(t,e,r),rz.call("_guiRelayout",e,s.getUpdateObj()))}function De(){J2(e)||We(a)}function ge(Dt,Tt){if(r.type==="path"){var Rt=function(At){return At},Ut=Rt,Ct=Rt;h?T("xanchor",r.xanchor=lt(z+Dt)):(Ut=function(Vt){return lt(Le(Vt)+Dt)},fe&&fe.type==="date"&&(Ut=Us.encodeDate(Ut))),v?T("yanchor",r.yanchor=at(B+Tt)):(Ct=function(Vt){return at(Ke(Vt)+Tt)},Se&&Se.type==="date"&&(Ct=Us.encodeDate(Ct))),T("path",r.path=ez(ne,Ut,Ct))}else h?T("xanchor",r.xanchor=lt(z+Dt)):(T("x0",r.x0=lt(S+Dt)),T("x1",r.x1=lt(E+Dt))),v?T("yanchor",r.yanchor=at(B+Tt)):(T("y0",r.y0=at(C+Tt)),T("y1",r.y1=at(D+Tt)));t.attr("d",E4(e,r)),dt(a,r),K2(e,i,r,oe)}function rt(Dt,Tt){if(_){var Rt=function(Kt){return Kt},Ut=Rt,Ct=Rt;h?T("xanchor",r.xanchor=lt(z+Dt)):(Ut=function(pr){return lt(Le(pr)+Dt)},fe&&fe.type==="date"&&(Ut=Us.encodeDate(Ut))),v?T("yanchor",r.yanchor=at(B+Tt)):(Ct=function(pr){return at(Ke(pr)+Tt)},Se&&Se.type==="date"&&(Ct=Us.encodeDate(Ct))),T("path",r.path=ez(ne,Ut,Ct))}else if(m){if(St==="resize-over-start-point"){var At=S+Dt,Vt=v?C-Tt:C+Tt;T("x0",r.x0=h?At:lt(At)),T("y0",r.y0=v?Vt:at(Vt))}else if(St==="resize-over-end-point"){var Ht=E+Dt,Be=v?D-Tt:D+Tt;T("x1",r.x1=h?Ht:lt(Ht)),T("y1",r.y1=v?Be:at(Be))}}else{var st=function(Kt){return St.indexOf(Kt)!==-1},sr=st("n"),Dr=st("s"),Et=st("w"),ct=st("e"),pt=sr?q+Tt:q,Ot=Dr?I+Tt:I,er=Et?O+Dt:O,Zt=ct?H+Dt:H;v&&(sr&&(pt=q-Tt),Dr&&(Ot=I-Tt)),(!v&&Ot-pt>f||v&&pt-Ot>f)&&(T(V,r[V]=v?pt:at(pt)),T(W,r[W]=v?Ot:at(Ot))),Zt-er>l&&(T(J,r[J]=h?er:lt(er)),T(te,r[te]=h?Zt:lt(Zt)))}t.attr("d",E4(e,r)),dt(a,r),K2(e,i,r,oe)}function dt(Dt,Tt){(h||v)&&Rt();function Rt(){var Ut=Tt.type!=="path",Ct=Dt.selectAll(".visual-cue").data([0]),At=1;Ct.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":At}).classed("visual-cue",!0);var Vt=Le(h?Tt.xanchor:KP.midRange(Ut?[Tt.x0,Tt.x1]:Us.extractPathCoords(Tt.path,Ld.paramIsX))),Ht=Ke(v?Tt.yanchor:KP.midRange(Ut?[Tt.y0,Tt.y1]:Us.extractPathCoords(Tt.path,Ld.paramIsY)));if(Vt=Us.roundPositionForSharpStrokeRendering(Vt,At),Ht=Us.roundPositionForSharpStrokeRendering(Ht,At),h&&v){var Be="M"+(Vt-1-At)+","+(Ht-1-At)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Ct.attr("d",Be)}else if(h){var st="M"+(Vt-1-At)+","+(Ht-9-At)+"v18 h2 v-18 Z";Ct.attr("d",st)}else{var sr="M"+(Vt-9-At)+","+(Ht-1-At)+"h18 v2 h-18 Z";Ct.attr("d",sr)}}}function We(Dt){Dt.selectAll(".visual-cue").remove()}function qt(Dt,Tt,Rt){var Ut=Tt.xref,Ct=Tt.yref,At=K0.getFromId(Rt,Ut),Vt=K0.getFromId(Rt,Ct),Ht="";Ut!=="paper"&&!At.autorange&&(Ht+=Ut),Ct!=="paper"&&!Vt.autorange&&(Ht+=Ct),L4.setClipUrl(Dt,Ht?"clip"+Rt._fullLayout._uid+Ht:null,Rt)}}function ez(e,t,r){return e.replace(Ld.segmentRE,function(i){var a=0,s=i.charAt(0),l=Ld.paramIsX[s],f=Ld.paramIsY[s],h=Ld.numParams[s],v=i.substr(1).replace(Ld.paramRE,function(m){return a>=h||(l[a]?m=t(m):f[a]&&(m=r(m)),a++),m});return s+v})}function Lie(e,t){if(Q2(e)){var r=t.node(),i=+r.getAttribute("data-index");if(i>=0){if(i===e._fullLayout._activeShapeIndex){tz(e);return}e._fullLayout._activeShapeIndex=i,e._fullLayout._deactivateShape=tz,D4(e)}}}function tz(e){if(Q2(e)){var t=e._fullLayout._activeShapeIndex;t>=0&&(az(e),delete e._fullLayout._activeShapeIndex,D4(e))}}function Die(e){if(Q2(e)){az(e);var t=e._fullLayout._activeShapeIndex,r=(e.layout||{}).shapes||[];if(t{"use strict";var Kl=sa(),sz=eo(),lz=Xn(),Ja=N2(),Pie=$2().eraseActiveShape,ex=Bt(),za=ex._,Ka=pz.exports={};Ka.toImage={name:"toImage",title:function(e){var t=e._context.toImageButtonOptions||{},r=t.format||"png";return r==="png"?za(e,"Download plot as a PNG"):za(e,"Download plot")},icon:Ja.camera,click:function(e){var t=e._context.toImageButtonOptions,r={format:t.format||"png"};ex.notifier(za(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(i){i in t&&(r[i]=t[i])}),Kl.call("downloadImage",e,r).then(function(i){ex.notifier(za(e,"Snapshot succeeded")+" - "+i,"long")}).catch(function(){ex.notifier(za(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Ka.sendDataToCloud={name:"sendDataToCloud",title:function(e){return za(e,"Edit in Chart Studio")},icon:Ja.disk,click:function(e){sz.sendDataToCloud(e)}};Ka.editInChartStudio={name:"editInChartStudio",title:function(e){return za(e,"Edit in Chart Studio")},icon:Ja.pencil,click:function(e){sz.sendDataToCloud(e)}};Ka.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return za(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Ja.zoombox,click:ns};Ka.pan2d={name:"pan2d",_cat:"pan",title:function(e){return za(e,"Pan")},attr:"dragmode",val:"pan",icon:Ja.pan,click:ns};Ka.select2d={name:"select2d",_cat:"select",title:function(e){return za(e,"Box Select")},attr:"dragmode",val:"select",icon:Ja.selectbox,click:ns};Ka.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return za(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Ja.lasso,click:ns};Ka.drawclosedpath={name:"drawclosedpath",title:function(e){return za(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Ja.drawclosedpath,click:ns};Ka.drawopenpath={name:"drawopenpath",title:function(e){return za(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Ja.drawopenpath,click:ns};Ka.drawline={name:"drawline",title:function(e){return za(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Ja.drawline,click:ns};Ka.drawrect={name:"drawrect",title:function(e){return za(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Ja.drawrect,click:ns};Ka.drawcircle={name:"drawcircle",title:function(e){return za(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Ja.drawcircle,click:ns};Ka.eraseshape={name:"eraseshape",title:function(e){return za(e,"Erase active shape")},icon:Ja.eraseshape,click:Pie};Ka.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return za(e,"Zoom in")},attr:"zoom",val:"in",icon:Ja.zoom_plus,click:ns};Ka.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return za(e,"Zoom out")},attr:"zoom",val:"out",icon:Ja.zoom_minus,click:ns};Ka.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return za(e,"Autoscale")},attr:"zoom",val:"auto",icon:Ja.autoscale,click:ns};Ka.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return za(e,"Reset axes")},attr:"zoom",val:"reset",icon:Ja.home,click:ns};Ka.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return za(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Ja.tooltip_basic,gravity:"ne",click:ns};Ka.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return za(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Ja.tooltip_compare,gravity:"ne",click:ns};function ns(e,t){var r=t.currentTarget,i=r.getAttribute("data-attr"),a=r.getAttribute("data-val")||!0,s=e._fullLayout,l={},f=lz.list(e,null,!0),h=s._cartesianSpikesEnabled,v,m;if(i==="zoom"){var _=a==="in"?.5:2,T=(1+_)/2,S=(1-_)/2,C,E;for(m=0;m{"use strict";var mz=I4(),Rie=Object.keys(mz),yz=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],gz=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(yz),$0=[],Fie=function(e){if(gz.indexOf(e._cat||e.name)===-1){var t=e.name,r=(e._cat||e.name).toLowerCase();$0.indexOf(t)===-1&&$0.push(t),$0.indexOf(r)===-1&&$0.push(r)}};Rie.forEach(function(e){Fie(mz[e])});$0.sort();_z.exports={DRAW_MODES:yz,backButtons:gz,foreButtons:$0}});var F4=pe((m_e,xz)=>{"use strict";var p_e=R4();xz.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var wz=pe((y_e,bz)=>{"use strict";var qie=Bt(),hg=Oa(),Nie=Ii(),Bie=F4();bz.exports=function(t,r){var i=t.modebar||{},a=Nie.newContainer(r,"modebar");function s(f,h){return qie.coerce(i,a,Bie,f,h)}s("orientation"),s("bgcolor",hg.addOpacity(r.paper_bgcolor,.5));var l=hg.contrast(hg.rgb(r.modebar.bgcolor));s("color",hg.addOpacity(l,.3)),s("activecolor",hg.addOpacity(l,.7)),s("uirevision",r.uirevision),s("add"),s("remove")}});var Sz=pe((g_e,Mz)=>{"use strict";var q4=ja(),Oie=Da(),rx=Bt(),Tz=N2(),Uie=W1().version,Vie=new DOMParser;function Az(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Ff=Az.prototype;Ff.update=function(e,t){this.graphInfo=e;var r=this.graphInfo._context,i=this.graphInfo._fullLayout,a="modebar-"+i._uid;this.element.setAttribute("id",a),this.element.setAttribute("role","toolbar"),this._uid=a,this.element.className="modebar modebar--custom",r.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),i.modebar.orientation==="v"&&(this.element.className+=" vertical",t=t.reverse());var s=i.modebar,l="#"+a+" .modebar-group";document.querySelectorAll(l).forEach(function(_){_.style.backgroundColor=s.bgcolor});var f=!this.hasButtons(t),h=this.hasLogo!==r.displaylogo,v=this.locale!==r.locale;if(this.locale=r.locale,(f||h||v)&&(this.removeAllButtons(),this.updateButtons(t),r.watermark||r.displaylogo)){var m=this.getLogo();r.watermark&&(m.className=m.className+" watermark"),i.modebar.orientation==="v"?this.element.insertBefore(m,this.element.childNodes[0]):this.element.appendChild(m),this.hasLogo=!0}this.updateActiveButton(),rx.setStyleOnHover("#"+a+" .modebar-btn",".active",".icon path","fill: "+s.activecolor,"fill: "+s.color,this.element)};Ff.updateButtons=function(e){var t=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(r){var i=t.createGroup();r.forEach(function(a){var s=a.name;if(!s)throw new Error("must provide button 'name' in button config");if(t.buttonsNames.indexOf(s)!==-1)throw new Error("button name '"+s+"' is taken");t.buttonsNames.push(s);var l=t.createButton(a);t.buttonElements.push(l),i.appendChild(l)}),t.element.appendChild(i)})};Ff.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var t=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=t.bgcolor,e};Ff.createButton=function(e){var t=this,r=document.createElement("button");r.setAttribute("type","button"),r.setAttribute("rel","tooltip"),r.className="modebar-btn";var i=e.title;i===void 0?i=e.name:typeof i=="function"&&(i=i(this.graphInfo)),(i||i===0)&&(r.setAttribute("data-title",i),r.setAttribute("aria-label",i)),e.attr!==void 0&&r.setAttribute("data-attr",e.attr);var a=e.val;a!==void 0&&(typeof a=="function"&&(a=a(this.graphInfo)),r.setAttribute("data-val",a));var s=e.click;if(typeof s!="function")throw new Error("must provide button 'click' function in button config");r.addEventListener("click",function(f){e.click(t.graphInfo,f),t.updateActiveButton(f.currentTarget)}),r.setAttribute("data-toggle",e.toggle||!1),e.toggle&&q4.select(r).classed("active",!0);var l=e.icon;return typeof l=="function"?r.appendChild(l()):r.appendChild(this.createIcon(l||Tz.question)),r.setAttribute("data-gravity",e.gravity||"n"),r};Ff.createIcon=function(e){var t=Oie(e.height)?Number(e.height):e.ascent-e.descent,r="http://www.w3.org/2000/svg",i;if(e.path){i=document.createElementNS(r,"svg"),i.setAttribute("viewBox",[0,0,e.width,t].join(" ")),i.setAttribute("class","icon");var a=document.createElementNS(r,"path");a.setAttribute("d",e.path),e.transform?a.setAttribute("transform",e.transform):e.ascent!==void 0&&a.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),i.appendChild(a)}if(e.svg){var s=Vie.parseFromString(e.svg,"application/xml");i=s.childNodes[0]}return i.setAttribute("height","1em"),i.setAttribute("width","1em"),i};Ff.updateActiveButton=function(e){var t=this.graphInfo._fullLayout,r=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(i){var a=i.getAttribute("data-val")||!0,s=i.getAttribute("data-attr"),l=i.getAttribute("data-toggle")==="true",f=q4.select(i),h=function(_,T){var S=t.modebar,C=_.querySelector(".icon path");C&&(T||_.matches(":hover")?C.style.fill=S.activecolor:C.style.fill=S.color)};if(l){if(s===r){var v=!f.classed("active");f.classed("active",v),h(i,v)}}else{var m=s===null?s:rx.nestedProperty(t,s).get();f.classed("active",m===a),h(i,m===a)}})};Ff.hasButtons=function(e){var t=this.buttons;if(!t||e.length!==t.length)return!1;for(var r=0;r{"use strict";var Zie=Xn(),kz=rs(),N4=sa(),Yie=bc().isUnifiedHover,Wie=Sz(),ax=I4(),Xie=R4().DRAW_MODES,jie=Bt().extendDeep;Cz.exports=function(t){var r=t._fullLayout,i=t._context,a=r._modeBar;if(!i.displayModeBar&&!i.watermark){a&&(a.destroy(),delete r._modeBar);return}if(!Array.isArray(i.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(i.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var s=i.modeBarButtons,l;Array.isArray(s)&&s.length?l=tne(s):!i.displayModeBar&&i.watermark?l=[]:l=Jie(t),a?a.update(t,l):r._modeBar=Wie(t,l)};function Jie(e){var t=e._fullLayout,r=e._fullData,i=e._context;function a(we,Te){if(typeof Te=="string"){if(Te.toLowerCase()===we.toLowerCase())return!0}else{var Ce=Te.name,Le=Te._cat||Te.name;if(Ce===we||Le===we.toLowerCase())return!0}return!1}var s=t.modebar.add;typeof s=="string"&&(s=[s]);var l=t.modebar.remove;typeof l=="string"&&(l=[l]);var f=i.modeBarButtonsToAdd.concat(s.filter(function(we){for(var Te=0;Te1?(te=["toggleHover"],ne=["resetViews"]):_?(J=["zoomInGeo","zoomOutGeo"],te=["hoverClosestGeo"],ne=["resetGeo"]):m?(te=["hoverClosest3d"],ne=["resetCameraDefault3d","resetCameraLastSave3d"]):E?(J=["zoomInMapbox","zoomOutMapbox"],te=["toggleHover"],ne=["resetViewMapbox"]):D?(J=["zoomInMap","zoomOutMap"],te=["toggleHover"],ne=["resetViewMap"]):T?te=["hoverClosestPie"]:q?(te=["hoverClosestCartesian","hoverCompareCartesian"],ne=["resetViewSankey"]):te=["toggleHover"],v&&te.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),($ie(r)||O)&&(te=[]),v&&!I&&(J=["zoomIn2d","zoomOut2d","autoScale2d"],ne[0]!=="resetViews"&&(ne=["resetScale2d"])),m?oe=["zoom3d","pan3d","orbitRotation","tableRotation"]:v&&!I||C?oe=["zoom2d","pan2d"]:E||D||_?oe=["pan2d"]:z&&(oe=["zoom2d"]),Qie(r)&&oe.push("select2d","lasso2d");var fe=[],ve=function(we){fe.indexOf(we)===-1&&te.indexOf(we)!==-1&&fe.push(we)};if(Array.isArray(f)){for(var Se=[],Me=0;Me{"use strict";Lz.exports={moduleType:"component",name:"modebar",layoutAttributes:F4(),supplyLayoutDefaults:wz(),manage:Ez()}});var O4=pe((b_e,Dz)=>{"use strict";var rne=ts().FROM_BL;Dz.exports=function(t,r,i){i===void 0&&(i=rne[t.constraintoward||"center"]);var a=[t.r2l(t.range[0]),t.r2l(t.range[1])],s=a[0]+(a[1]-a[0])*i;t.range=t._input.range=[t.l2r(s+(a[0]-s)*r),t.l2r(s+(a[1]-s)*r)],t.setScale()}});var dg=pe(vg=>{"use strict";var Dd=Bt(),U4=$y(),Nu=Xn().id2name,ane=Ru(),Pz=O4(),ine=l2(),nne=Zi().ALMOST_EQUAL,one=ts().FROM_BL;vg.handleDefaults=function(e,t,r){var i=r.axIds,a=r.axHasImage,s=t._axisConstraintGroups=[],l=t._axisMatchGroups=[],f,h,v,m,_,T,S,C;for(f=0;fs?r.substr(s):i.substr(a))+l}function lne(e,t){for(var r=t._size,i=r.h/r.w,a={},s=Object.keys(e),l=0;lnne*C&&!B)){for(s=0;soe&&Cete&&(te=Ce);var Ke=(te-J)/(2*ne);_/=Ke,J=h.l2r(J),te=h.l2r(te),h.range=h._input.range=H{"use strict";var nx=ja(),os=sa(),fl=eo(),Ql=Bt(),G4=co(),Z4=q2(),pg=Oa(),em=xi(),Fz=Ky(),Uz=B4(),mg=Xi(),Sc=ts(),Vz=dg(),une=Vz.enforce,fne=Vz.clean,qz=$y().doAutoRange,Hz="start",cne="middle",Gz="end",hne=Ao().zindexSeparator;ao.layoutStyles=function(e){return Ql.syncOrAsync([fl.doAutoMargin,dne],e)};function vne(e,t,r){for(var i=0;i=e[1]||a[1]<=e[0])&&s[0]t[0])return!0}return!1}function dne(e){var t=e._fullLayout,r=t._size,i=r.p,a=mg.list(e,"",!0),s,l,f,h,v,m;if(t._paperdiv.style({width:e._context.responsive&&t.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":t.width+"px",height:e._context.responsive&&t.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":t.height+"px"}).selectAll(".main-svg").call(em.setSize,t.width,t.height),e._context.setBackground(e,t.paper_bgcolor),ao.drawMainTitle(e),Uz.manage(e),!t._has("cartesian"))return fl.previousPromises(e);function _(vt,de,De){var ge=vt._lw/2;if(vt._id.charAt(0)==="x"){if(de){if(De==="top")return de._offset-i-ge}else return r.t+r.h*(1-(vt.position||0))+ge%1;return de._offset+de._length+i+ge}if(de){if(De==="right")return de._offset+de._length+i+ge}else return r.l+r.w*(vt.position||0)+ge%1;return de._offset-i-ge}for(s=0;s0){gne(e,s,v,h),f.attr({x:l,y:s,"text-anchor":i,dy:Oz(t.yanchor)}).call(G4.positionText,l,s);var m=(t.text.match(G4.BR_TAG_ALL)||[]).length;if(m){var _=Sc.LINE_SPACING*m+Sc.MID_SHIFT;t.y===0&&(_=-_),f.selectAll(".line").each(function(){var D=+this.getAttribute("dy").slice(0,-2)-_+"em";this.setAttribute("dy",D)})}var T=nx.select(e).selectAll(".gtitle-subtitle");if(T.node()){var S=f.node().getBBox(),C=S.y+S.height,E=C+Fz.SUBTITLE_PADDING_EM*t.subtitle.font.size;T.attr({x:l,y:E,"text-anchor":i,dy:Oz(t.yanchor)}).call(G4.positionText,l,E)}}}};function pne(e,t,r,i,a){var s=t.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,l=Ql.isTopAnchor(t)?i:i-a,f=r==="b"?s-l:l;return Ql.isTopAnchor(t)&&r==="t"||Ql.isBottomAnchor(t)&&r==="b"?!1:f.5?"t":"b",l=e._fullLayout.margin[s],f=0;return t.yref==="paper"?f=r+t.pad.t+t.pad.b:t.yref==="container"&&(f=mne(s,i,a,e._fullLayout.height,r)+t.pad.t+t.pad.b),f>l?f:0}function gne(e,t,r,i){var a="title.automargin",s=e._fullLayout.title,l=s.y>.5?"t":"b",f={x:s.x,y:s.y,t:0,b:0},h={};s.yref==="paper"&&pne(e,s,l,t,i)?f[l]=r:s.yref==="container"&&(h[l]=r,e._fullLayout._reservedMargin[a]=h),fl.allowAutoMargin(e,a),fl.autoMargin(e,a,f)}function _ne(e,t){var r=e.title,i=e._size,a=0;switch(t===Hz?a=r.pad.l:t===Gz&&(a=-r.pad.r),r.xref){case"paper":return i.l+i.w*r.x+a;case"container":default:return e.width*r.x+a}}function xne(e,t){var r=e.title,i=e._size,a=0;if(t==="0em"||!t?a=-r.pad.b:t===Sc.CAP_SHIFT+"em"&&(a=r.pad.t),r.y==="auto")return i.t/2;switch(r.yref){case"paper":return i.t+i.h-i.h*r.y+a;case"container":default:return e.height-e.height*r.y+a}}function Oz(e){return e==="top"?Sc.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":Sc.MID_SHIFT+"em"}function bne(e){var t=e.title,r=cne;return Ql.isRightAnchor(t)?r=Gz:Ql.isLeftAnchor(t)&&(r=Hz),r}function wne(e){var t=e.title,r="0em";return Ql.isTopAnchor(t)?r=Sc.CAP_SHIFT+"em":Ql.isMiddleAnchor(t)&&(r=Sc.MID_SHIFT+"em"),r}ao.doTraceStyle=function(e){var t=e.calcdata,r=[],i;for(i=0;i{"use strict";var Tne=Uh().readPaths,Ane=j2(),Zz=Ph().clearOutlineControllers,Y4=Oa(),Yz=xi(),Mne=Ii().arrayEditor,Wz=Hh(),Sne=Wz.getPathString;jz.exports={draw:sx,drawOne:Xz,activateLastSelection:Ene};function sx(e){var t=e._fullLayout;Zz(e),t._selectionLayer.selectAll("path").remove();for(var r in t._plots){var i=t._plots[r].selectionLayer;i&&i.selectAll("path").remove()}for(var a=0;a=0;D--){var z=l.append("path").attr(h).style("opacity",D?.1:v).call(Y4.stroke,_).call(Y4.fill,m).call(Yz.dashLine,D?"solid":S,D?4+T:T);if(kne(z,e,i),C){var B=Mne(e.layout,"selections",i);z.style({cursor:"move"});var q={element:z.node(),plotinfo:a,gd:e,editHelpers:B,isActiveSelection:!0},I=Tne(f,e);Ane(I,z,q)}else z.style("pointer-events",D?"all":"none");E[D]=z}var O=E[0],H=E[1];H.node().addEventListener("click",function(){return Cne(e,O)})}}function kne(e,t,r){var i=r.xref+r.yref;Yz.setClipUrl(e,"clip"+t._fullLayout._uid+i,t)}function Cne(e,t){if(lx(e)){var r=t.node(),i=+r.getAttribute("data-index");if(i>=0){if(i===e._fullLayout._activeSelectionIndex){W4(e);return}e._fullLayout._activeSelectionIndex=i,e._fullLayout._deactivateSelection=W4,sx(e)}}}function Ene(e){if(lx(e)){var t=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=t,e._fullLayout._deactivateSelection=W4,sx(e)}}function W4(e){if(lx(e)){var t=e._fullLayout._activeSelectionIndex;t>=0&&(Zz(e),delete e._fullLayout._activeSelectionIndex,sx(e))}}});var Kz=pe((M_e,Jz)=>{function Lne(){var e,t=0,r=!1;function i(a,s){return e.list.push({type:a,data:s?JSON.parse(JSON.stringify(s)):void 0}),e}return e={list:[],segmentId:function(){return t++},checkIntersection:function(a,s){return i("check",{seg1:a,seg2:s})},segmentChop:function(a,s){return i("div_seg",{seg:a,pt:s}),i("chop",{seg:a,pt:s})},statusRemove:function(a){return i("pop_seg",{seg:a})},segmentUpdate:function(a){return i("seg_update",{seg:a})},segmentNew:function(a,s){return i("new_seg",{seg:a,primary:s})},segmentRemove:function(a){return i("rem_seg",{seg:a})},tempStatus:function(a,s,l){return i("temp_status",{seg:a,above:s,below:l})},rewind:function(a){return i("rewind",{seg:a})},status:function(a,s,l){return i("status",{seg:a,above:s,below:l})},vert:function(a){return a===r?e:(r=a,i("vert",{x:a}))},log:function(a){return typeof a!="string"&&(a=JSON.stringify(a,!1," ")),i("log",{txt:a})},reset:function(){return i("reset")},selected:function(a){return i("selected",{segs:a})},chainStart:function(a){return i("chain_start",{seg:a})},chainRemoveHead:function(a,s){return i("chain_rem_head",{index:a,pt:s})},chainRemoveTail:function(a,s){return i("chain_rem_tail",{index:a,pt:s})},chainNew:function(a,s){return i("chain_new",{pt1:a,pt2:s})},chainMatch:function(a){return i("chain_match",{index:a})},chainClose:function(a){return i("chain_close",{index:a})},chainAddHead:function(a,s){return i("chain_add_head",{index:a,pt:s})},chainAddTail:function(a,s){return i("chain_add_tail",{index:a,pt:s})},chainConnect:function(a,s){return i("chain_con",{index1:a,index2:s})},chainReverse:function(a){return i("chain_rev",{index:a})},chainJoin:function(a,s){return i("chain_join",{index1:a,index2:s})},done:function(){return i("done")}},e}Jz.exports=Lne});var $z=pe((S_e,Qz)=>{function Dne(e){typeof e!="number"&&(e=1e-10);var t={epsilon:function(r){return typeof r=="number"&&(e=r),e},pointAboveOrOnLine:function(r,i,a){var s=i[0],l=i[1],f=a[0],h=a[1],v=r[0],m=r[1];return(f-s)*(m-l)-(h-l)*(v-s)>=-e},pointBetween:function(r,i,a){var s=r[1]-i[1],l=a[0]-i[0],f=r[0]-i[0],h=a[1]-i[1],v=f*l+s*h;if(v-e)},pointsSameX:function(r,i){return Math.abs(r[0]-i[0])e!=f-s>e&&(l-m)*(s-_)/(f-_)+m-a>e&&(h=!h),l=m,f=_}return h}};return t}Qz.exports=Dne});var tI=pe((k_e,eI)=>{var Pne={create:function(){var e={root:{root:!0,next:null},exists:function(t){return!(t===null||t===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(t,r){for(var i=e.root,a=e.root.next;a!==null;){if(r(a)){t.prev=a.prev,t.next=a,a.prev.next=t,a.prev=t;return}i=a,a=a.next}i.next=t,t.prev=i,t.next=null},findTransition:function(t){for(var r=e.root,i=e.root.next;i!==null&&!t(i);)r=i,i=i.next;return{before:r===e.root?null:r,after:i,insert:function(a){return a.prev=r,a.next=i,r.next=a,i!==null&&(i.prev=a),a}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};eI.exports=Pne});var aI=pe((C_e,rI)=>{var yg=tI();function zne(e,t,r){function i(C,E){return{id:r?r.segmentId():-1,start:C,end:E,myFill:{above:null,below:null},otherFill:null}}function a(C,E,D){return{id:r?r.segmentId():-1,start:C,end:E,myFill:{above:D.myFill.above,below:D.myFill.below},otherFill:null}}var s=yg.create();function l(C,E,D,z,B,q){var I=t.pointsCompare(E,B);return I!==0?I:t.pointsSame(D,q)?0:C!==z?C?1:-1:t.pointAboveOrOnLine(D,z?B:q,z?q:B)?1:-1}function f(C,E){s.insertBefore(C,function(D){var z=l(C.isStart,C.pt,E,D.isStart,D.pt,D.other.pt);return z<0})}function h(C,E){var D=yg.node({isStart:!0,pt:C.start,seg:C,primary:E,other:null,status:null});return f(D,C.end),D}function v(C,E,D){var z=yg.node({isStart:!1,pt:E.end,seg:E,primary:D,other:C,status:null});C.other=z,f(z,C.pt)}function m(C,E){var D=h(C,E);return v(D,C,E),D}function _(C,E){r&&r.segmentChop(C.seg,E),C.other.remove(),C.seg.end=E,C.other.pt=E,f(C.other,C.pt)}function T(C,E){var D=a(E,C.seg.end,C.seg);return _(C,E),m(D,C.primary)}function S(C,E){var D=yg.create();function z(Se,Me){var Ae=Se.seg.start,we=Se.seg.end,Te=Me.seg.start,Ce=Me.seg.end;return t.pointsCollinear(Ae,Te,Ce)?t.pointsCollinear(we,Te,Ce)||t.pointAboveOrOnLine(we,Te,Ce)?1:-1:t.pointAboveOrOnLine(Ae,Te,Ce)?1:-1}function B(Se){return D.findTransition(function(Me){var Ae=z(Se,Me.ev);return Ae>0})}function q(Se,Me){var Ae=Se.seg,we=Me.seg,Te=Ae.start,Ce=Ae.end,Le=we.start,Ke=we.end;r&&r.checkIntersection(Ae,we);var lt=t.linesIntersect(Te,Ce,Le,Ke);if(lt===!1){if(!t.pointsCollinear(Te,Ce,Le)||t.pointsSame(Te,Ke)||t.pointsSame(Ce,Le))return!1;var at=t.pointsSame(Te,Le),gt=t.pointsSame(Ce,Ke);if(at&>)return Me;var Ye=!at&&t.pointBetween(Te,Le,Ke),St=!gt&&t.pointBetween(Ce,Le,Ke);if(at)return St?T(Me,Ce):T(Se,Ke),Me;Ye&&(gt||(St?T(Me,Ce):T(Se,Ke)),T(Me,Te))}else lt.alongA===0&&(lt.alongB===-1?T(Se,Le):lt.alongB===0?T(Se,lt.pt):lt.alongB===1&&T(Se,Ke)),lt.alongB===0&&(lt.alongA===-1?T(Me,Te):lt.alongA===0?T(Me,lt.pt):lt.alongA===1&&T(Me,Ce));return!1}for(var I=[];!s.isEmpty();){var O=s.getHead();if(r&&r.vert(O.pt[0]),O.isStart){let Se=function(){if(V){var Me=q(O,V);if(Me)return Me}return W?q(O,W):!1};var ve=Se;r&&r.segmentNew(O.seg,O.primary);var H=B(O),V=H.before?H.before.ev:null,W=H.after?H.after.ev:null;r&&r.tempStatus(O.seg,V?V.seg:!1,W?W.seg:!1);var J=Se();if(J){if(e){var te;O.seg.myFill.below===null?te=!0:te=O.seg.myFill.above!==O.seg.myFill.below,te&&(J.seg.myFill.above=!J.seg.myFill.above)}else J.seg.otherFill=O.seg.myFill;r&&r.segmentUpdate(J.seg),O.other.remove(),O.remove()}if(s.getHead()!==O){r&&r.rewind(O.seg);continue}if(e){var te;O.seg.myFill.below===null?te=!0:te=O.seg.myFill.above!==O.seg.myFill.below,W?O.seg.myFill.below=W.seg.myFill.above:O.seg.myFill.below=C,te?O.seg.myFill.above=!O.seg.myFill.below:O.seg.myFill.above=O.seg.myFill.below}else if(O.seg.otherFill===null){var ne;W?O.primary===W.primary?ne=W.seg.otherFill.above:ne=W.seg.myFill.above:ne=O.primary?E:C,O.seg.otherFill={above:ne,below:ne}}r&&r.status(O.seg,V?V.seg:!1,W?W.seg:!1),O.other.status=H.insert(yg.node({ev:O}))}else{var oe=O.status;if(oe===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(D.exists(oe.prev)&&D.exists(oe.next)&&q(oe.prev.ev,oe.next.ev),r&&r.statusRemove(oe.ev.seg),oe.remove(),!O.primary){var fe=O.seg.myFill;O.seg.myFill=O.seg.otherFill,O.seg.otherFill=fe}I.push(O.seg)}s.getHead().remove()}return r&&r.done(),I}return e?{addRegion:function(C){for(var E,D=C[C.length-1],z=0;z{function Ine(e,t,r){var i=[],a=[];return e.forEach(function(s){var l=s.start,f=s.end;if(t.pointsSame(l,f)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}r&&r.chainStart(s);var h={index:0,matches_head:!1,matches_pt1:!1},v={index:0,matches_head:!1,matches_pt1:!1},m=h;function _(ve,Se,Me){return m.index=ve,m.matches_head=Se,m.matches_pt1=Me,m===h?(m=v,!1):(m=null,!0)}for(var T=0;T{function gg(e,t,r){var i=[];return e.forEach(function(a){var s=(a.myFill.above?8:0)+(a.myFill.below?4:0)+(a.otherFill&&a.otherFill.above?2:0)+(a.otherFill&&a.otherFill.below?1:0);t[s]!==0&&i.push({id:r?r.segmentId():-1,start:a.start,end:a.end,myFill:{above:t[s]===1,below:t[s]===2},otherFill:null})}),r&&r.selected(i),i}var Rne={union:function(e,t){return gg(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],t)},intersect:function(e,t){return gg(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],t)},difference:function(e,t){return gg(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],t)},differenceRev:function(e,t){return gg(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],t)},xor:function(e,t){return gg(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],t)}};oI.exports=Rne});var uI=pe((D_e,lI)=>{var Fne={toPolygon:function(e,t){function r(s){if(s.length<=0)return e.segments({inverted:!1,regions:[]});function l(v){var m=v.slice(0,v.length-1);return e.segments({inverted:!1,regions:[m]})}for(var f=l(s[0]),h=1;h{var qne=Kz(),Nne=$z(),fI=aI(),Bne=nI(),_g=sI(),cI=uI(),$l=!1,xg=Nne(),Vs;Vs={buildLog:function(e){return e===!0?$l=qne():e===!1&&($l=!1),$l===!1?!1:$l.list},epsilon:function(e){return xg.epsilon(e)},segments:function(e){var t=fI(!0,xg,$l);return e.regions.forEach(t.addRegion),{segments:t.calculate(e.inverted),inverted:e.inverted}},combine:function(e,t){var r=fI(!1,xg,$l);return{combined:r.calculate(e.segments,e.inverted,t.segments,t.inverted),inverted1:e.inverted,inverted2:t.inverted}},selectUnion:function(e){return{segments:_g.union(e.combined,$l),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:_g.intersect(e.combined,$l),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:_g.difference(e.combined,$l),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:_g.differenceRev(e.combined,$l),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:_g.xor(e.combined,$l),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:Bne(e.segments,xg,$l),inverted:e.inverted}},polygonFromGeoJSON:function(e){return cI.toPolygon(Vs,e)},polygonToGeoJSON:function(e){return cI.fromPolygon(Vs,xg,e)},union:function(e,t){return bg(e,t,Vs.selectUnion)},intersect:function(e,t){return bg(e,t,Vs.selectIntersect)},difference:function(e,t){return bg(e,t,Vs.selectDifference)},differenceRev:function(e,t){return bg(e,t,Vs.selectDifferenceRev)},xor:function(e,t){return bg(e,t,Vs.selectXor)}};function bg(e,t,r){var i=Vs.segments(e),a=Vs.segments(t),s=Vs.combine(i,a),l=r(s);return Vs.polygon(l)}typeof window=="object"&&(window.PolyBool=Vs);hI.exports=Vs});var pI=pe((z_e,dI)=>{dI.exports=function(t,r,i,a){var s=t[0],l=t[1],f=!1;i===void 0&&(i=0),a===void 0&&(a=r.length);for(var h=a-i,v=0,m=h-1;vl!=C>l&&s<(S-_)*(l-T)/(C-T)+_;E&&(f=!f)}return f}});var cx=pe((I_e,mI)=>{"use strict";var j4=f_().dot,ux=Zi().BADNUM,fx=mI.exports={};fx.tester=function(t){var r=t.slice(),i=r[0][0],a=i,s=r[0][1],l=s,f;for((r[r.length-1][0]!==r[0][0]||r[r.length-1][1]!==r[0][1])&&r.push(r[0]),f=1;fa||z===ux||zl||E&&v(C))}function _(C,E){var D=C[0],z=C[1];if(D===ux||Da||z===ux||zl)return!1;var B=r.length,q=r[0][0],I=r[0][1],O=0,H,V,W,J,te;for(H=1;HMath.max(V,q)||z>Math.max(W,I)))if(zf||Math.abs(j4(_,v))>a)return!0;return!1};fx.filter=function(t,r){var i=[t[0]],a=0,s=0;function l(h){t.push(h);var v=i.length,m=a;i.splice(s+1);for(var _=m+1;_1){var f=t.pop();l(f)}return{addPt:l,raw:t,filtered:i}}});var gI=pe((R_e,yI)=>{"use strict";yI.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var OI=pe((F_e,BI)=>{"use strict";var _I=vI(),One=pI(),Ag=sa(),Une=xi().dashStyle,wg=Oa(),Vne=Rf(),Hne=bc().makeEventData,Eg=Cd(),Gne=Eg.freeMode,Zne=Eg.rectMode,Mg=Eg.drawMode,$4=Eg.openMode,e6=Eg.selectMode,xI=Hh(),bI=fg(),SI=j2(),kI=Ph().clearOutline,CI=Uh(),J4=CI.handleEllipse,Yne=CI.readPaths,Wne=Z2().newShapes,Xne=T4(),jne=X4().activateLastSelection,vx=Bt(),Jne=vx.sorterAsc,EI=cx(),Tg=A_(),eu=Xn().getFromId,Kne=q2(),Qne=ox().redrawReglTraces,dx=gI(),qf=dx.MINSELECT,$ne=EI.filter,t6=EI.tester,r6=U2(),wI=r6.p2r,eoe=r6.axValue,toe=r6.getTransform;function a6(e){return e.subplot!==void 0}function roe(e,t,r,i,a){var s=!a6(i),l=Gne(a),f=Zne(a),h=$4(a),v=Mg(a),m=e6(a),_=a==="drawline",T=a==="drawcircle",S=_||T,C=i.gd,E=C._fullLayout,D=m&&E.newselection.mode==="immediate"&&s,z=E._zoomlayer,B=i.element.getBoundingClientRect(),q=i.plotinfo,I=toe(q),O=t-B.left,H=r-B.top;E._calcInverseTransform(C);var V=vx.apply3DTransform(E._invTransform)(O,H);O=V[0],H=V[1];var W=E._invScaleX,J=E._invScaleY,te=O,ne=H,oe="M"+O+","+H,fe=i.xaxes[0],ve=i.yaxes[0],Se=fe._length,Me=ve._length,Ae=e.altKey&&!(Mg(a)&&h),we,Te,Ce,Le,Ke,lt,at;DI(e,C,i),l&&(we=$ne([[O,H]],dx.BENDPX));var gt=z.selectAll("path.select-outline-"+q.id).data([1]),Ye=v?E.newshape:E.newselection;v&&(i.hasText=Ye.label.text||Ye.label.texttemplate);var St=v&&!h?Ye.fillcolor:"rgba(0,0,0,0)",it=Ye.line.color||(s?wg.contrast(C._fullLayout.plot_bgcolor):"#7f7f7f");gt.enter().append("path").attr("class","select-outline select-outline-"+q.id).style({opacity:v?Ye.opacity/2:1,"stroke-dasharray":Une(Ye.line.dash,Ye.line.width),"stroke-width":Ye.line.width+"px","shape-rendering":"crispEdges"}).call(wg.stroke,it).call(wg.fill,St).attr("fill-rule","evenodd").classed("cursor-move",!!v).attr("transform",I).attr("d",oe+"Z");var mt=z.append("path").attr("class","zoombox-corners").style({fill:wg.background,stroke:wg.defaultLine,"stroke-width":1}).attr("transform",I).attr("d","M0,0Z");if(v&&i.hasText){var bt=z.select(".label-temp");bt.empty()&&(bt=z.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var vt=E._uid+dx.SELECTID,de=[],De=px(C,i.xaxes,i.yaxes,i.subplot);D&&!e.shiftKey&&(i._clearSubplotSelections=function(){if(s){var rt=fe._id,dt=ve._id;FI(C,rt,dt,De);for(var We=(C.layout||{}).selections||[],qt=[],Dt=!1,Tt=0;Tt=0){C._fullLayout._deactivateShape(C);return}if(!v){var We=E.clickmode;Tg.done(vt).then(function(){if(Tg.clear(vt),rt===2){for(gt.remove(),Ke=0;Ke-1&&LI(dt,C,i.xaxes,i.yaxes,i.subplot,i,gt),We==="event"&&Cg(C,void 0);Vne.click(C,dt,q.id)}).catch(vx.error)}},i.doneFn=function(){mt.remove(),Tg.done(vt).then(function(){Tg.clear(vt),!D&&Le&&i.selectionDefs&&(Le.subtract=Ae,i.selectionDefs.push(Le),i.mergedPolygons.length=0,[].push.apply(i.mergedPolygons,Ce)),(D||v)&&Sg(i,D),i.doneFnCompleted&&i.doneFnCompleted(de),m&&Cg(C,at)}).catch(vx.error)}}function LI(e,t,r,i,a,s,l){var f=t._hoverdata,h=t._fullLayout,v=h.clickmode,m=v.indexOf("event")>-1,_=[],T,S,C,E,D,z,B,q,I,O;if(soe(f)){DI(e,t,s),T=px(t,r,i,a);var H=loe(f,T),V=H.pointNumbers.length>0;if(V?uoe(T,H):foe(T)&&(B=AI(H))){for(l&&l.remove(),O=0;O=0}function ooe(e){return e._fullLayout._activeSelectionIndex>=0}function Sg(e,t){var r=e.dragmode,i=e.plotinfo,a=e.gd;noe(a)&&a._fullLayout._deactivateShape(a),ooe(a)&&a._fullLayout._deactivateSelection(a);var s=a._fullLayout,l=s._zoomlayer,f=Mg(r),h=e6(r);if(f||h){var v=l.selectAll(".select-outline-"+i.id);if(v&&a._fullLayout._outlining){var m;f&&(m=Wne(v,e)),m&&Ag.call("_guiRelayout",a,{shapes:m});var _;h&&!a6(e)&&(_=Xne(v,e)),_&&(a._fullLayout._noEmitSelectedAtStart=!0,Ag.call("_guiRelayout",a,{selections:_}).then(function(){t&&jne(a)})),a._fullLayout._outlining=!1}}i.selection={},i.selection.selectionDefs=e.selectionDefs=[],i.selection.mergedPolygons=e.mergedPolygons=[]}function TI(e){return e._id}function px(e,t,r,i){if(!e.calcdata)return[];var a=[],s=t.map(TI),l=r.map(TI),f,h,v;for(v=0;v0,s=a?i[0]:r;return t.selectedpoints?t.selectedpoints.indexOf(s)>-1:!1}function uoe(e,t){var r=[],i,a,s,l;for(l=0;l0&&r.push(i);if(r.length===1&&(s=r[0]===t.searchInfo,s&&(a=t.searchInfo.cd[0].trace,a.selectedpoints.length===t.pointNumbers.length))){for(l=0;l1||(t+=i.selectedpoints.length,t>1)))return!1;return t===1}function kg(e,t,r){var i;for(i=0;i-1&&t;if(!l&&t){var rt=MI(e,!0);if(rt.length){var dt=rt[0].xref,We=rt[0].yref;if(dt&&We){var qt=qI(rt),Dt=NI([eu(e,dt,"x"),eu(e,We,"y")]);Dt(de,qt)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:ge&&Cg(e,de),T._reselect=!1}if(!l&&T._deselect){var Tt=T._deselect;f=Tt.xref,h=Tt.yref,voe(f,h,m)||FI(e,f,h,i),ge&&(de.points.length?Cg(e,de):o6(e)),T._deselect=!1}return{eventData:de,selectionTesters:r}}function hoe(e){var t=e.calcdata;if(t)for(var r=0;r{"use strict";UI.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var Lg=pe((N_e,VI)=>{"use strict";VI.exports={axisRefDescription:function(e,t,r){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",t,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",t,"("+r+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",t,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",t,"and the",r,"of the domain of the","second",e,"axis."].join(" ")}}});var tm=pe((O_e,ZI)=>{"use strict";var HI=s6(),GI=qo(),mx=Ao(),goe=Ii().templatedArray,B_e=Lg();ZI.exports=goe("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:GI({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:HI.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:HI.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",mx.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",mx.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",mx.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",mx.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:GI({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var yx=pe((U_e,YI)=>{"use strict";YI.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var gx=pe((V_e,WI)=>{"use strict";WI.exports=function(t){return{valType:"color",editType:"style",anim:!0}}});var kc=pe((H_e,eR)=>{"use strict";var XI=Bw().axisHoverFormat,{hovertemplateAttrs:_oe,texttemplateAttrs:xoe,templatefallbackAttrs:jI}=Mf(),JI=xc(),boe=qo(),woe=hc().dash,Toe=hc().pattern,Aoe=xi(),Moe=yx(),_x=mn().extendFlat,Soe=gx();function KI(e){return{valType:"any",dflt:0,editType:"calc"}}function QI(e){return{valType:"any",editType:"calc"}}function $I(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}eR.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:KI("x"),yperiod:KI("y"),xperiod0:QI("x0"),yperiod0:QI("y0"),xperiodalignment:$I("x"),yperiodalignment:$I("y"),xhoverformat:XI("x"),yhoverformat:XI("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:xoe(),texttemplatefallback:jI({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:_oe({},{keys:Moe.eventDataKeys}),hovertemplatefallback:jI(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:_x({},woe,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:Soe(!0),fillgradient:_x({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:Toe,marker:_x({symbol:{valType:"enumerated",values:Aoe.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:_x({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},JI("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},JI("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:boe({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var l6=pe((Z_e,aR)=>{"use strict";var tR=tm(),rR=kc().line,koe=hc().dash,xx=mn().extendFlat,Coe=il().overrideAll,Eoe=Ii().templatedArray,G_e=Lg();aR.exports=Coe(Eoe("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:xx({},tR.xref,{}),yref:xx({},tR.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:rR.color,width:xx({},rR.width,{min:1,dflt:1}),dash:xx({},koe,{dflt:"dot"})}}),"arraydraw","from-root")});var sR=pe((Y_e,oR)=>{"use strict";var iR=Bt(),bx=Xi(),Loe=Yl(),Doe=l6(),nR=Hh();oR.exports=function(t,r){Loe(t,r,{name:"selections",handleItemDefaults:Poe});for(var i=r.selections,a=0;a{"use strict";lR.exports=function(t,r,i){i("newselection.mode");var a=i("newselection.line.width");a&&(i("newselection.line.color"),i("newselection.line.dash")),i("activeselection.fillcolor"),i("activeselection.opacity")}});var Dg=pe((X_e,hR)=>{"use strict";var zoe=sa(),fR=Bt(),cR=Xn();hR.exports=function(t){return function(i,a){var s=i[t];if(Array.isArray(s))for(var l=zoe.subplotsRegistry.cartesian,f=l.idRegex,h=a._subplots,v=h.xaxis,m=h.yaxis,_=h.cartesian,T=a._has("cartesian"),S=0;S{"use strict";var vR=X4(),Pg=OI();dR.exports={moduleType:"component",name:"selections",layoutAttributes:l6(),supplyLayoutDefaults:sR(),supplyDrawNewSelectionDefaults:uR(),includeBasePlot:Dg()("selections"),draw:vR.draw,drawOne:vR.drawOne,reselect:Pg.reselect,prepSelect:Pg.prepSelect,clearOutline:Pg.clearOutline,clearSelectionsCache:Pg.clearSelectionsCache,selectOnClick:Pg.selectOnClick}});var RR=pe((J_e,IR)=>{"use strict";var v6=ja(),tu=Bt(),pR=tu.numberFormat,Ioe=wf(),Roe=W5(),wx=sa(),AR=tu.strTranslate,Foe=co(),mR=Oa(),Zh=xi(),qoe=Rf(),yR=Xi(),Noe=Oh(),Boe=Xl(),MR=Cd(),Tx=MR.selectingOrDrawing,Ooe=MR.freeMode,Uoe=ts().FROM_TL,Voe=q2(),Hoe=ox().redrawReglTraces,Goe=eo(),f6=Xn().getFromId,Zoe=Nf().prepSelect,Yoe=Nf().clearOutline,Woe=Nf().selectOnClick,u6=O4(),d6=Ao(),gR=d6.MINDRAG,gs=d6.MINZOOM,_R=!0;function Xoe(e,t,r,i,a,s,l,f){var h=e._fullLayout._zoomlayer,v=l+f==="nsew",m=(l+f).length===1,_,T,S,C,E,D,z,B,q,I,O,H,V,W,J,te,ne,oe,fe,ve,Se,Me,Ae;r+=t.yaxis._shift;function we(){if(_=t.xaxis,T=t.yaxis,q=_._length,I=T._length,z=_._offset,B=T._offset,S={},S[_._id]=_,C={},C[T._id]=T,l&&f)for(var ct=t.overlays,pt=0;pt=0){Ot._fullLayout._deactivateShape(Ot);return}var er=Ot._fullLayout.clickmode;if(h6(Ot),ct===2&&!m&&Ht(),v)er.indexOf("select")>-1&&Woe(pt,Ot,E,D,t.id,Le),er.indexOf("event")>-1&&qoe.click(Ot,pt,t.id);else if(ct===1&&m){var Zt=l?T:_,Kt=l==="s"||f==="w"?0:1,pr=Zt._name+".range["+Kt+"]",yr=joe(Zt,Kt),ur="left",Lt="middle";if(Zt.fixedrange)return;l?(Lt=l==="n"?"top":"bottom",Zt.side==="right"&&(ur="right")):f==="e"&&(ur="right"),Ot._context.showAxisRangeEntryBoxes&&v6.select(Ce).call(Foe.makeEditable,{gd:Ot,immediate:!0,background:Ot._fullLayout.paper_bgcolor,text:String(yr),fill:Zt.tickfont?Zt.tickfont.color:"#444",horizontalAlign:ur,verticalAlign:Lt}).on("edit",function(Fe){var Ue=Zt.d2r(Fe);Ue!==void 0&&wx.call("_guiRelayout",Ot,pr,Ue)})}}Boe.init(Le);var at,gt,Ye,St,it,mt,bt,vt,de,De;function ge(ct,pt,Ot){var er=Ce.getBoundingClientRect();at=pt-er.left,gt=Ot-er.top,e._fullLayout._calcInverseTransform(e);var Zt=tu.apply3DTransform(e._fullLayout._invTransform)(at,gt);at=Zt[0],gt=Zt[1],Ye={l:at,r:at,w:0,t:gt,b:gt,h:0},St=e._hmpixcount?e._hmlumcount/e._hmpixcount:Ioe(e._fullLayout.plot_bgcolor).getLuminance(),it="M0,0H"+q+"V"+I+"H0V0",mt=!1,bt="xy",De=!1,vt=CR(h,St,z,B,it),de=ER(h,z,B)}function rt(ct,pt){if(e._transitioningWithDuration)return!1;var Ot=Math.max(0,Math.min(q,Me*ct+at)),er=Math.max(0,Math.min(I,Ae*pt+gt)),Zt=Math.abs(Ot-at),Kt=Math.abs(er-gt);Ye.l=Math.min(at,Ot),Ye.r=Math.max(at,Ot),Ye.t=Math.min(gt,er),Ye.b=Math.max(gt,er);function pr(){bt="",Ye.r=Ye.l,Ye.t=Ye.b,de.attr("d","M0,0Z")}if(O.isSubplotConstrained)Zt>gs||Kt>gs?(bt="xy",Zt/q>Kt/I?(Kt=Zt*I/q,gt>er?Ye.t=gt-Kt:Ye.b=gt+Kt):(Zt=Kt*q/I,at>Ot?Ye.l=at-Zt:Ye.r=at+Zt),de.attr("d",Ax(Ye))):pr();else if(H.isSubplotConstrained)if(Zt>gs||Kt>gs){bt="xy";var yr=Math.min(Ye.l/q,(I-Ye.b)/I),ur=Math.max(Ye.r/q,(I-Ye.t)/I);Ye.l=yr*q,Ye.r=ur*q,Ye.b=(1-yr)*I,Ye.t=(1-ur)*I,de.attr("d",Ax(Ye))}else pr();else!W||Kt0){var Fe;if(H.isSubplotConstrained||!V&&W.length===1){for(Fe=0;Fe1&&(pr.maxallowed!==void 0&&te===(pr.range[0]1&&(yr.maxallowed!==void 0&&ne===(yr.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function Koe(e,t,r){return e?e==="nsew"?r?"":t==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function CR(e,t,r,i,a){return e.append("path").attr("class","zoombox").style({fill:t>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",AR(r,i)).attr("d",a+"Z")}function ER(e,t,r){return e.append("path").attr("class","zoombox-corners").style({fill:mR.background,stroke:mR.defaultLine,"stroke-width":1,opacity:0}).attr("transform",AR(t,r)).attr("d","M0,0Z")}function LR(e,t,r,i,a,s){e.attr("d",i+"M"+r.l+","+r.t+"v"+r.h+"h"+r.w+"v-"+r.h+"h-"+r.w+"Z"),DR(e,t,a,s)}function DR(e,t,r,i){r||(e.transition().style("fill",i>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),t.transition().style("opacity",1).duration(200))}function h6(e){v6.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function PR(e){_R&&e.data&&e._context.showTips&&(tu.notifier(tu._(e,"Double-click to zoom back out"),"long"),_R=!1)}function Qoe(e,t){return"M"+(e.l-.5)+","+(t-gs-.5)+"h-3v"+(2*gs+1)+"h3ZM"+(e.r+.5)+","+(t-gs-.5)+"h3v"+(2*gs+1)+"h-3Z"}function $oe(e,t){return"M"+(t-gs-.5)+","+(e.t-.5)+"v-3h"+(2*gs+1)+"v3ZM"+(t-gs-.5)+","+(e.b+.5)+"v3h"+(2*gs+1)+"v-3Z"}function Ax(e){var t=Math.floor(Math.min(e.b-e.t,e.r-e.l,gs)/2);return"M"+(e.l-3.5)+","+(e.t-.5+t)+"h3v"+-t+"h"+t+"v-3h-"+(t+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+t)+"h-3v"+-t+"h"+-t+"v-3h"+(t+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-t)+"h-3v"+t+"h"+-t+"v3h"+(t+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-t)+"h3v"+t+"h"+t+"v3h-"+(t+3)+"Z"}function wR(e,t,r,i,a){for(var s=!1,l={},f={},h,v,m,_,T=(a||{}).xaHash,S=(a||{}).yaHash,C=0;C{"use strict";var ese=ja(),Mx=Rf(),tse=Xl(),rse=Oh(),Bu=RR().makeDragBox,io=Ao().DRAGGERSIZE;Sx.initInteractions=function(t){var r=t._fullLayout;if(t._context.staticPlot){ese.select(t).selectAll(".drag").remove();return}if(!(!r._has("cartesian")&&!r._has("splom"))){var i=Object.keys(r._plots||{}).sort(function(s,l){if((r._plots[s].mainplot&&!0)===(r._plots[l].mainplot&&!0)){var f=s.split("y"),h=l.split("y");return f[0]===h[0]?Number(f[1]||1)-Number(h[1]||1):Number(f[0]||1)-Number(h[0]||1)}return r._plots[s].mainplot?1:-1});i.forEach(function(s){var l=r._plots[s],f=l.xaxis,h=l.yaxis;if(!l.mainplot){var v=Bu(t,l,f._offset,h._offset,f._length,h._length,"ns","ew");v.onmousemove=function(T){t._fullLayout._rehover=function(){t._fullLayout._hoversubplot===s&&t._fullLayout._plots[s]&&Mx.hover(t,T,s)},Mx.hover(t,T,s),t._fullLayout._lasthover=v,t._fullLayout._hoversubplot=s},v.onmouseout=function(T){t._dragging||(t._fullLayout._hoversubplot=null,tse.unhover(t,T))},t._context.showAxisDragHandles&&(Bu(t,l,f._offset-io,h._offset-io,io,io,"n","w"),Bu(t,l,f._offset+f._length,h._offset-io,io,io,"n","e"),Bu(t,l,f._offset-io,h._offset+h._length,io,io,"s","w"),Bu(t,l,f._offset+f._length,h._offset+h._length,io,io,"s","e"))}if(t._context.showAxisDragHandles){if(s===f._mainSubplot){var m=f._mainLinePosition;f.side==="top"&&(m-=io),Bu(t,l,f._offset+f._length*.1,m,f._length*.8,io,"","ew"),Bu(t,l,f._offset,m,f._length*.1,io,"","w"),Bu(t,l,f._offset+f._length*.9,m,f._length*.1,io,"","e")}if(s===h._mainSubplot){var _=h._mainLinePosition;h.side!=="right"&&(_-=io),Bu(t,l,_,h._offset+h._length*.1,io,h._length*.8,"ns",""),Bu(t,l,_,h._offset+h._length*.9,io,h._length*.1,"s",""),Bu(t,l,_,h._offset,io,h._length*.1,"n","")}}});var a=r._hoverlayer.node();a.onmousemove=function(s){s.target=t._fullLayout._lasthover,Mx.hover(t,s,r._hoversubplot)},a.onclick=function(s){s.target=t._fullLayout._lasthover,Mx.click(t,s)},a.onmousedown=function(s){t._fullLayout._lasthover.onmousedown(s)},Sx.updateFx(t)}};Sx.updateFx=function(e){var t=e._fullLayout,r=t.dragmode==="pan"?"move":"crosshair";rse(t._draggers,r)}});var NR=pe((Q_e,qR)=>{"use strict";var FR=sa();qR.exports=function(t){for(var r=FR.layoutArrayContainers,i=FR.layoutArrayRegexes,a=t.split("[")[0],s,l,f=0;f{"use strict";var ase=cc(),m6=u_(),zg=Th(),ise=fw().sorterAsc,y6=sa();Ig.containerArrayMatch=NR();var nse=Ig.isAddVal=function(t){return t==="add"||ase(t)},BR=Ig.isRemoveVal=function(t){return t===null||t==="remove"};Ig.applyContainerArrayChanges=function(t,r,i,a,s){var l=r.astr,f=y6.getComponentMethod(l,"supplyLayoutDefaults"),h=y6.getComponentMethod(l,"draw"),v=y6.getComponentMethod(l,"drawOne"),m=a.replot||a.recalc||f===m6||h===m6,_=t.layout,T=t._fullLayout;if(i[""]){Object.keys(i).length>1&&zg.warn("Full array edits are incompatible with other edits",l);var S=i[""][""];if(BR(S))r.set(null);else if(Array.isArray(S))r.set(S);else return zg.warn("Unrecognized full array edit value",l,S),!0;return m?!1:(f(_,T),h(t),!0)}var C=Object.keys(i).map(Number).sort(ise),E=r.get(),D=E||[],z=s(T,l).get(),B=[],q=-1,I=D.length,O,H,V,W,J,te,ne,oe;for(O=0;OD.length-(ne?0:1)){zg.warn("index out of range",l,V);continue}if(te!==void 0)J.length>1&&zg.warn("Insertion & removal are incompatible with edits to the same index.",l,V),BR(te)?B.push(V):ne?(te==="add"&&(te={}),D.splice(V,0,te),z&&z.splice(V,0,{})):zg.warn("Unrecognized full object edit value",l,V,te),q===-1&&(q=V);else for(H=0;H=0;O--)D.splice(B[O],1),z&&z.splice(B[O],1);if(D.length?E||r.set(D):r.set(null),m)return!1;if(f(_,T),v!==m6){var fe;if(q===-1)fe=C;else{for(I=Math.max(D.length,I),fe=[],O=0;O=q));O++)fe.push(V);for(O=q;O{"use strict";var GR=Da(),ZR=sa(),ss=Bt(),Rg=eo(),YR=Xn(),WR=Oa(),Fg=YR.cleanId,ose=YR.getFromTrace,g6=ZR.traceIs,sse=["x","y","z"];ru.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&ss.log("Clearing previous rejected promises from queue."),e._promises=[]};ru.cleanLayout=function(e){var t,r;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var i=(Rg.subplotsRegistry.cartesian||{}).attrRegex,a=(Rg.subplotsRegistry.polar||{}).attrRegex,s=(Rg.subplotsRegistry.ternary||{}).attrRegex,l=(Rg.subplotsRegistry.gl3d||{}).attrRegex,f=Object.keys(e);for(t=0;t3?(D.x=1.02,D.xanchor="left"):D.x<-2&&(D.x=-.02,D.xanchor="right"),D.y>3?(D.y=1.02,D.yanchor="bottom"):D.y<-2&&(D.y=-.02,D.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),WR.clean(e),e.template&&e.template.layout&&ru.cleanLayout(e.template.layout),e};function rm(e,t){var r=e[t],i=t.charAt(0);r&&r!=="paper"&&(e[t]=Fg(r,i,!0))}ru.cleanData=function(e){for(var t=0;t0)return e.substr(0,t)}ru.hasParent=function(e,t){for(var r=HR(t);r;){if(r in e)return!0;r=HR(r)}return!1};ru.clearAxisTypes=function(e,t,r){for(var i=0;i{let r=(...i)=>i.every(a=>ss.isPlainObject(a))||i.every(a=>Array.isArray(a));if([e,t].every(i=>Array.isArray(i))){if(e.length!==t.length)return!1;for(let i=0;iss.isPlainObject(i))){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let i in e){if(i.startsWith("_"))continue;let a=e[i],s=t[i];if(a!==s&&!(r(a,s)?_6(a,s):!1))return!1}return!0}return!1};ru.collectionsAreEqual=_6});var M6=pe(Ha=>{"use strict";var Lx=ja(),fse=Da(),cse=Tw(),br=Bt(),Bi=br.nestedProperty,w6=Vy(),_s=Sk(),au=sa(),qx=k0(),ta=eo(),ls=Xi(),hse=Y5(),vse=Ru(),x6=xi(),dse=Oa(),pse=p6().initInteractions,mse=zh(),yse=Nf().clearOutline,$R=ad().dfltConfig,Cx=OR(),Dn=XR(),hi=ox(),Yh=il(),gse=Ao().AX_NAME_PATTERN,b6=0,jR=5;function _se(e,t,r,i){var a;if(e=br.getGraphDiv(e),w6.init(e),br.isPlainObject(t)){var s=t;t=s.data,r=s.layout,i=s.config,a=s.frames}var l=w6.triggerHandler(e,"plotly_beforeplot",[t,r,i]);if(l===!1)return Promise.reject();!t&&!r&&!br.isPlotDiv(e)&&br.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function f(){if(a)return Ha.addFrames(e,a)}tF(e,i),r||(r={}),Lx.select(e).classed("js-plotly-plot",!0),x6.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var h=(e.data||[]).length===0&&Array.isArray(t);Array.isArray(t)&&(Dn.cleanData(t),h?e.data=t:e.data.push.apply(e.data,t),e.empty=!1),(!e.layout||h)&&(e.layout=Dn.cleanLayout(r)),ta.supplyDefaults(e);var v=e._fullLayout,m=v._has("cartesian");v._replotting=!0,(h||v._shouldCreateBgLayer)&&(Vse(e),v._shouldCreateBgLayer&&delete v._shouldCreateBgLayer),x6.initGradients(e),x6.initPatterns(e),h&&ls.saveShowSpikeInitial(e);var _=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;_&&ta.doCalcdata(e);for(var T=0;T=e.data.length||a<-e.data.length)throw new Error(r+" must be valid indices for gd.data.");if(t.indexOf(a,i+1)>-1||a>=0&&t.indexOf(-e.data.length+a)>-1||a<0&&t.indexOf(e.data.length+a)>-1)throw new Error("each index in "+r+" must be unique.")}}function rF(e,t,r){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(t)||(t=[t]),Px(e,t,"currentIndices"),typeof r!="undefined"&&!Array.isArray(r)&&(r=[r]),typeof r!="undefined"&&Px(e,r,"newIndices"),typeof r!="undefined"&&t.length!==r.length)throw new Error("current and new indices must be of equal length.")}function Ase(e,t,r){var i,a;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("traces must be defined.");for(Array.isArray(t)||(t=[t]),i=0;i=0&&m<_.length?_.splice(0,_.length-m):[];return[_,T]}var s=aF(e,t,r,i,a),l=Ha.redraw(e),f=[e,s.update,r,s.maxPoints];return _s.add(e,Ha.prependTraces,f,nF,arguments),l}function oF(e,t,r,i){e=br.getGraphDiv(e);function a(h,v,m){var _,T;if(br.isTypedArray(h))if(m<=0){var S=new h.constructor(0),C=iF(v,h);m<0?(_=C,T=S):(_=S,T=C)}else if(_=new h.constructor(m),T=new h.constructor(h.length+v.length-m),m===v.length)_.set(v),T.set(h);else if(m=0&&m<_.length?_.splice(m,_.length):[];return[_,T]}var s=aF(e,t,r,i,a),l=Ha.redraw(e),f=[e,s.update,r,s.maxPoints];return _s.add(e,Ha.extendTraces,f,oF,arguments),l}function sF(e,t,r){e=br.getGraphDiv(e);var i=[],a=Ha.deleteTraces,s=sF,l=[e,i],f=[e,t],h,v;for(Ase(e,t,r),Array.isArray(t)||(t=[t]),t=t.map(function(m){return br.extendFlat({},m)}),Dn.cleanData(t),h=0;h0&&typeof W.parts[ne]!="string";)ne--;var oe=W.parts[ne],fe=W.parts[ne-1]+"."+oe,ve=W.parts.slice(0,ne).join("."),Se=Bi(e.layout,ve).get(),Me=Bi(i,ve).get(),Ae=W.get();if(J!==void 0){z[V]=J,B[V]=oe==="reverse"?J:Cc(Ae);var we=qx.getLayoutValObject(i,W.parts);if(we&&we.impliedEdits&&J!==null)for(var Te in we.impliedEdits)q(br.relativeAttr(V,Te),we.impliedEdits[Te]);if(["width","height"].indexOf(V)!==-1)if(J){q("autosize",null);var Ce=V==="height"?"width":"height";q(Ce,i[Ce])}else i[V]=e._initialAutoSize[V];else if(V==="autosize")q("width",J?null:i.width),q("height",J?null:i.height);else if(fe.match(cF))H(fe),Bi(i,ve+"._inputRange").set(null);else if(fe.match(hF)){H(fe),Bi(i,ve+"._inputRange").set(null);var Le=Bi(i,ve).get();Le._inputDomain&&(Le._input.domain=Le._inputDomain.slice())}else fe.match(Cse)&&Bi(i,ve+"._inputDomain").set(null);if(oe==="type"){O=Se;var Ke=Me.type==="linear"&&J==="log",lt=Me.type==="log"&&J==="linear";if(Ke||lt){if(!O||!O.range)q(ve+".autorange",!0);else if(Me.autorange)Ke&&(O.range=O.range[1]>O.range[0]?[1,2]:[2,1]);else{var at=O.range[0],gt=O.range[1];Ke?(at<=0&><=0&&q(ve+".autorange",!0),at<=0?at=gt/1e6:gt<=0&&(gt=at/1e6),q(ve+".range[0]",Math.log(at)/Math.LN10),q(ve+".range[1]",Math.log(gt)/Math.LN10)):(q(ve+".range[0]",Math.pow(10,at)),q(ve+".range[1]",Math.pow(10,gt)))}Array.isArray(i._subplots.polar)&&i._subplots.polar.length&&i[W.parts[0]]&&W.parts[1]==="radialaxis"&&delete i[W.parts[0]]._subplot.viewInitial["radialaxis.range"],au.getComponentMethod("annotations","convertCoords")(e,Me,J,q),au.getComponentMethod("images","convertCoords")(e,Me,J,q)}else q(ve+".autorange",!0),q(ve+".range",null);Bi(i,ve+"._inputRange").set(null)}else if(oe.match(gse)){var Ye=Bi(i,V).get(),St=(J||{}).type;(!St||St==="-")&&(St="linear"),au.getComponentMethod("annotations","convertCoords")(e,Ye,St,q),au.getComponentMethod("images","convertCoords")(e,Ye,St,q)}var it=Cx.containerArrayMatch(V);if(it){m=it.array,_=it.index;var mt=it.property,bt=we||{editType:"calc"};_!==""&&mt===""&&(Cx.isAddVal(J)?B[V]=null:Cx.isRemoveVal(J)?B[V]=(Bi(r,m).get()||[])[_]:br.warn("unrecognized full object value",t)),Yh.update(D,bt),v[m]||(v[m]={});var vt=v[m][_];vt||(vt=v[m][_]={}),vt[mt]=J,delete t[V]}else oe==="reverse"?(Se.range?Se.range.reverse():(q(ve+".autorange",!0),Se.range=[1,0]),Me.autorange?D.calc=!0:D.plot=!0):(V==="dragmode"&&(J===!1&&Ae!==!1||J!==!1&&Ae===!1)||i._has("scatter-like")&&i._has("regl")&&V==="dragmode"&&(J==="lasso"||J==="select")&&!(Ae==="lasso"||Ae==="select")?D.plot=!0:we?Yh.update(D,we):D.calc=!0,W.set(J))}}for(m in v){var de=Cx.applyContainerArrayChanges(e,s(r,m),v[m],D,s);de||(D.plot=!0)}for(var De in I){O=ls.getFromId(e,De);var ge=O&&O._constraintGroup;if(ge){D.calc=!0;for(var rt in ge)I[rt]||(ls.getFromId(e,rt)._constraintShrinkable=!0)}}(dF(e)||t.height||t.width)&&(D.plot=!0);var dt=i.shapes;for(_=0;_1;)if(i.pop(),r=Bi(t,i.join(".")+".uirevision").get(),r!==void 0)return r;return t.uirevision}function Dse(e,t){for(var r=0;r[ve,e._ev.listeners(ve)]);s=Ha.newPlot(e,t,r,i).then(()=>{for(let[ve,Se]of fe)Se.forEach(Me=>e.on(ve,Me));return Ha.react(e,t,r,i)})}else{e.data=t||[],Dn.cleanData(e.data),e.layout=r||{},Dn.cleanLayout(e.layout),zse(e.data,e.layout,f,h),ta.supplyDefaults(e,{skipUpdateCalc:!0});var _=e._fullData,T=e._fullLayout,S=T.datarevision===void 0,C=T.transition,E=Fse(e,h,T,S,C),D=E.newDataRevision,z=Rse(e,f,_,S,C,D);if(dF(e)&&(E.layoutReplot=!0),z.calc||E.calc){e.calcdata=void 0;for(var B=Object.getOwnPropertyNames(T),q=0;q(m||e.emit("plotly_react",{config:i,data:t,layout:r}),e))}function Rse(e,t,r,i,a,s){var l=t.length===r.length;if(!a&&!l)return{fullReplot:!0,calc:!0};var f=Yh.traceFlags();f.arrays={},f.nChanges=0,f.nChangesAnim=0;var h,v;function m(S){var C=qx.getTraceValObject(v,S);return!v._module.animatable&&C.anim&&(C.anim=!1),C}var _={getValObject:m,flags:f,immutable:i,transition:a,newDataRevision:s,gd:e},T={};for(h=0;h=a.length?a[0]:a[v]:a}function f(v){return Array.isArray(s)?v>=s.length?s[0]:s[v]:s}function h(v,m){var _=0;return function(){if(v&&++_===m)return v()}}return new Promise(function(v,m){function _(){if(i._frameQueue.length!==0){for(;i._frameQueue.length;){var oe=i._frameQueue.pop();oe.onInterrupt&&oe.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function T(oe){if(oe.length!==0){for(var fe=0;fei._timeToNext&&C()};oe()}var D=0;function z(oe){return Array.isArray(a)?D>=a.length?oe.transitionOpts=a[D]:oe.transitionOpts=a[0]:oe.transitionOpts=a,D++,oe}var B,q,I=[],O=t==null,H=Array.isArray(t),V=!O&&!H&&br.isPlainObject(t);if(V)I.push({type:"object",data:z(br.extendFlat({},t))});else if(O||["string","number"].indexOf(typeof t)!==-1)for(B=0;B0&&tete)&&ne.push(q);I=ne}}I.length>0?T(I):(e.emit("plotly_animated"),v())})}function Nse(e,t,r){if(e=br.getGraphDiv(e),t==null)return Promise.resolve();if(!br.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var i,a,s,l,f=e._transitionData._frames,h=e._transitionData._frameHash;if(!Array.isArray(t))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+t);var v=f.length+t.length*2,m=[],_={};for(i=t.length-1;i>=0;i--)if(br.isPlainObject(t[i])){var T=t[i].name,S=(h[T]||_[T]||{}).name,C=t[i].name,E=h[S]||_[S];S&&C&&typeof C=="number"&&E&&b6W.index?-1:V.index=0;i--){if(a=m[i].frame,typeof a.name=="number"&&br.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!a.name)for(;h[a.name="frame "+e._transitionData._counter++];);if(h[a.name]){for(s=0;s=0;r--)i=t[r],s.push({type:"delete",index:i}),l.unshift({type:"insert",index:i,value:a[i]});var f=ta.modifyFrames,h=ta.modifyFrames,v=[e,l],m=[e,s];return _s&&_s.add(e,f,v,h,m),ta.modifyFrames(e,s)}function Ose(e){e=br.getGraphDiv(e);var t=e._fullLayout||{},r=e._fullData||[];return ta.cleanPlot([],{},r,t),ta.purge(e),w6.purge(e),t._container&&t._container.remove(),delete e._context,e}function Use(e){var t=e._fullLayout,r=e.getBoundingClientRect();if(!br.equalDomRects(r,t._lastBBox)){var i=t._invTransform=br.inverseTransformMatrix(br.getFullTransformMatrix(e));t._invScaleX=Math.sqrt(i[0][0]*i[0][0]+i[0][1]*i[0][1]+i[0][2]*i[0][2]),t._invScaleY=Math.sqrt(i[1][0]*i[1][0]+i[1][1]*i[1][1]+i[1][2]*i[1][2]),t._lastBBox=r}}function Vse(e){var t=Lx.select(e),r=e._fullLayout;if(r._calcInverseTransform=Use,r._calcInverseTransform(e),r._container=t.selectAll(".plot-container").data([0]),r._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),r._paperdiv=r._container.selectAll(".svg-container").data([0]),r._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),r._glcontainer=r._paperdiv.selectAll(".gl-container").data([{}]),r._glcontainer.enter().append("div").classed("gl-container",!0),r._paperdiv.selectAll(".main-svg").remove(),r._paperdiv.select(".modebar-container").remove(),r._paper=r._paperdiv.insert("svg",":first-child").classed("main-svg",!0),r._toppaper=r._paperdiv.append("svg").classed("main-svg",!0),r._modebardiv=r._paperdiv.append("div"),delete r._modeBar,r._hoverpaper=r._paperdiv.append("svg").classed("main-svg",!0),!r._uid){var i={};Lx.selectAll("defs").each(function(){this.id&&(i[this.id.split("-")[1]]=1)}),r._uid=br.randstr(i)}r._paperdiv.selectAll(".main-svg").attr(mse.svgAttrs),r._defs=r._paper.append("defs").attr("id","defs-"+r._uid),r._clips=r._defs.append("g").classed("clips",!0),r._topdefs=r._toppaper.append("defs").attr("id","topdefs-"+r._uid),r._topclips=r._topdefs.append("g").classed("clips",!0),r._bgLayer=r._paper.append("g").classed("bglayer",!0),r._draggers=r._paper.append("g").classed("draglayer",!0);var a=r._paper.append("g").classed("layer-below",!0);r._imageLowerLayer=a.append("g").classed("imagelayer",!0),r._shapeLowerLayer=a.append("g").classed("shapelayer",!0),r._cartesianlayer=r._paper.append("g").classed("cartesianlayer",!0),r._polarlayer=r._paper.append("g").classed("polarlayer",!0),r._smithlayer=r._paper.append("g").classed("smithlayer",!0),r._ternarylayer=r._paper.append("g").classed("ternarylayer",!0),r._geolayer=r._paper.append("g").classed("geolayer",!0),r._funnelarealayer=r._paper.append("g").classed("funnelarealayer",!0),r._pielayer=r._paper.append("g").classed("pielayer",!0),r._iciclelayer=r._paper.append("g").classed("iciclelayer",!0),r._treemaplayer=r._paper.append("g").classed("treemaplayer",!0),r._sunburstlayer=r._paper.append("g").classed("sunburstlayer",!0),r._indicatorlayer=r._toppaper.append("g").classed("indicatorlayer",!0),r._glimages=r._paper.append("g").classed("glimages",!0);var s=r._toppaper.append("g").classed("layer-above",!0);r._imageUpperLayer=s.append("g").classed("imagelayer",!0),r._shapeUpperLayer=s.append("g").classed("shapelayer",!0),r._selectionLayer=r._toppaper.append("g").classed("selectionlayer",!0),r._infolayer=r._toppaper.append("g").classed("infolayer",!0),r._menulayer=r._toppaper.append("g").classed("menulayer",!0),r._zoomlayer=r._toppaper.append("g").classed("zoomlayer",!0),r._hoverlayer=r._hoverpaper.append("g").classed("hoverlayer",!0),r._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}Ha.animate=qse;Ha.addFrames=Nse;Ha.deleteFrames=Bse;Ha.addTraces=sF;Ha.deleteTraces=lF;Ha.extendTraces=nF;Ha.moveTraces=T6;Ha.prependTraces=oF;Ha.newPlot=Tse;Ha._doPlot=_se;Ha.purge=Ose;Ha.react=Ise;Ha.redraw=wse;Ha.relayout=qg;Ha.restyle=zx;Ha.setPlotConfig=xse;Ha.update=Rx;Ha._guiRelayout=A6(qg);Ha._guiRestyle=A6(zx);Ha._guiUpdate=A6(Rx);Ha._storeDirectGUIEdit=kse});var Pd=pe(Bf=>{"use strict";var Hse=sa();Bf.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Bf.getRedrawFunc=function(e){return function(){Hse.getComponentMethod("colorbar","draw")(e)}};Bf.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Bf.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var pF=window.URL||window.webkitURL;Bf.createObjectURL=function(e){return pF.createObjectURL(e)};Bf.revokeObjectURL=function(e){return pF.revokeObjectURL(e)};Bf.createBlob=function(e,t){if(t==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(t==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var r=Gse(window.atob(e));return new window.Blob([r],{type:"image/"+t})};Bf.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function Gse(e){for(var t=e.length,r=new ArrayBuffer(t),i=new Uint8Array(r),a=0;a{"use strict";var k6=ja(),a2e=Bt(),Zse=xi(),Yse=Oa(),i2e=zh(),S6=/"/g,Bg="TOBESTRIPPED",Wse=new RegExp('("'+Bg+")|("+Bg+'")',"g");function Xse(e){var t=k6.select("body").append("div").style({display:"none"}).html(""),r=e.replace(/(&[^;]*;)/gi,function(i){return i==="<"?"<":i==="&rt;"?">":i.indexOf("<")!==-1||i.indexOf(">")!==-1?"":t.html(i).text()});return t.remove(),r}function jse(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}mF.exports=function(t,r,i){var a=t._fullLayout,s=a._paper,l=a._toppaper,f=a.width,h=a.height,v;s.insert("rect",":first-child").call(Zse.setRect,0,0,f,h).call(Yse.fill,a.paper_bgcolor);var m=a._basePlotModules||[];for(v=0;v{"use strict";var Jse=Bt(),Kse=D_().EventEmitter,Og=Pd();function Qse(e){var t=e.emitter||new Kse,r=new Promise(function(i,a){var s=window.Image,l=e.svg,f=e.format||"png",h=e.canvas,v=e.scale||1,m=e.width||300,_=e.height||150,T=v*m,S=v*_,C=h.getContext("2d",{willReadFrequently:!0}),E=new s,D,z;f==="svg"||Jse.isSafari()?z=Og.encodeSVG(l):(D=Og.createBlob(l,"svg"),z=Og.createObjectURL(D)),h.width=T,h.height=S,E.onload=function(){var B;switch(D=null,Og.revokeObjectURL(z),f!=="svg"&&C.drawImage(E,0,0,T,S),f){case"jpeg":B=h.toDataURL("image/jpeg");break;case"png":B=h.toDataURL("image/png");break;case"webp":B=h.toDataURL("image/webp");break;case"svg":B=z;break;default:var q="Image format is not jpeg, png, svg or webp.";if(a(new Error(q)),!e.promise)return t.emit("error",q)}i(B),e.promise||t.emit("success",B)},E.onerror=function(B){if(D=null,Og.revokeObjectURL(z),a(B),!e.promise)return t.emit("error",B)},E.src=z});return e.promise?r:t}yF.exports=Qse});var E6=pe((s2e,xF)=>{"use strict";var gF=Da(),_F=M6(),$se=eo(),Of=Bt(),Ug=Pd(),ele=Bx(),tle=Ox(),rle=W1().version,C6={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function ale(e,t){t=t||{};var r,i,a,s;Of.isPlainObject(e)?(r=e.data||[],i=e.layout||{},a=e.config||{},s={}):(e=Of.getGraphDiv(e),r=Of.extendDeep([],e.data),i=Of.extendDeep({},e.layout),a=e._context,s=e._fullLayout||{});function l(H){return!(H in t)||Of.validate(t[H],C6[H])}if(!l("width")&&t.width!==null||!l("height")&&t.height!==null)throw new Error("Height and width should be pixel values.");if(!l("format"))throw new Error("Export format is not "+Of.join2(C6.format.values,", "," or ")+".");var f={};function h(H,V){return Of.coerce(t,f,C6,H,V)}var v=h("format"),m=h("width"),_=h("height"),T=h("scale"),S=h("setBackground"),C=h("imageDataOnly"),E=document.createElement("div");E.style.position="absolute",E.style.left="-5000px",document.body.appendChild(E);var D=Of.extendFlat({},i);m?D.width=m:t.width===null&&gF(s.width)&&(D.width=s.width),_?D.height=_:t.height===null&&gF(s.height)&&(D.height=s.height);var z=Of.extendFlat({},a,{_exportedPlot:!0,staticPlot:!0,setBackground:S}),B=Ug.getRedrawFunc(E);function q(){return new Promise(function(H){setTimeout(H,Ug.getDelay(E._fullLayout))})}function I(){return new Promise(function(H,V){var W=ele(E,v,T),J=E._fullLayout.width,te=E._fullLayout.height;function ne(){_F.purge(E),document.body.removeChild(E)}if(v==="full-json"){var oe=$se.graphJson(E,!1,"keepdata","object",!0,!0);return oe.version=rle,oe=JSON.stringify(oe),ne(),H(C?oe:Ug.encodeJSON(oe))}if(ne(),v==="svg")return H(C?W:Ug.encodeSVG(W));var fe=document.createElement("canvas");fe.id=Of.randstr(),tle({format:v,width:J,height:te,scale:T,canvas:fe,svg:W,promise:!0}).then(H).catch(V)})}function O(H){return C?H.replace(Ug.IMAGE_URL_PREFIX,""):H}return new Promise(function(H,V){_F.newPlot(E,r,D,z).then(B).then(q).then(I).then(function(W){H(O(W))}).catch(function(W){V(W)})})}xF.exports=ale});var TF=pe((l2e,wF)=>{"use strict";var iu=Bt(),ile=eo(),nle=k0(),ole=ad().dfltConfig,Ou=iu.isPlainObject,Id=Array.isArray,L6=iu.isArrayOrTypedArray;wF.exports=function(t,r){t===void 0&&(t=[]),r===void 0&&(r={});var i=nle.get(),a=[],s={_context:iu.extendFlat({},ole)},l,f;Id(t)?(s.data=iu.extendDeep([],t),l=t):(s.data=[],l=[],a.push(no("array","data"))),Ou(r)?(s.layout=iu.extendDeep({},r),f=r):(s.layout={},f={},arguments.length>1&&a.push(no("object","layout"))),ile.supplyDefaults(s);for(var h=s._fullData,v=l.length,m=0;m_.length&&i.push(no("unused",a,v.concat(_.length)));var z=_.length,B=Array.isArray(D);B&&(z=Math.min(z,D.length));var q,I,O,H,V;if(T.dimensions===2)for(I=0;I_[I].length&&i.push(no("unused",a,v.concat(I,_[I].length)));var W=_[I].length;for(q=0;q<(B?Math.min(W,D[I].length):W);q++)O=B?D[I][q]:D,H=m[I][q],V=_[I][q],iu.validate(H,O)?V!==H&&V!==+H&&i.push(no("dynamic",a,v.concat(I,q),H,V)):i.push(no("value",a,v.concat(I,q),H))}else i.push(no("array",a,v.concat(I),m[I]));else for(I=0;I{"use strict";var vle=Bt(),Vx=Pd();function dle(e,t,r){var i=document.createElement("a"),a="download"in i,s=new Promise(function(l,f){var h,v;if(a)return h=Vx.createBlob(e,r),v=Vx.createObjectURL(h),i.href=v,i.download=t,document.body.appendChild(i),i.click(),document.body.removeChild(i),Vx.revokeObjectURL(v),h=null,l(t);if(vle.isSafari()){var m=r==="svg"?",":";base64,";return Vx.octetStream(m+encodeURIComponent(e)),l(t)}f(new Error("download error"))});return s}AF.exports=dle});var D6=pe((c2e,kF)=>{"use strict";var SF=Bt(),ple=E6(),mle=MF(),f2e=Pd();function yle(e,t){var r;return SF.isPlainObject(e)||(r=SF.getGraphDiv(e)),t=t||{},t.format=t.format||"png",t.width=t.width||null,t.height=t.height||null,t.imageDataOnly=!0,new Promise(function(i,a){r&&r._snapshotInProgress&&a(new Error("Snapshotting already in progress.")),r&&(r._snapshotInProgress=!0);var s=ple(e,t),l=t.filename||e.fn||"newplot";l+="."+t.format.replace("-","."),s.then(function(f){return r&&(r._snapshotInProgress=!1),mle(f,l,t.format)}).then(function(f){i(f)}).catch(function(f){r&&(r._snapshotInProgress=!1),a(f)})})}kF.exports=yle});var PF=pe(P6=>{"use strict";var Hs=Bt(),Gs=Hs.isPlainObject,CF=k0(),EF=eo(),gle=ys(),LF=Ii(),DF=ad().dfltConfig;P6.makeTemplate=function(e){e=Hs.isPlainObject(e)?e:Hs.getGraphDiv(e),e=Hs.extendDeep({_context:DF},{data:e.data,layout:e.layout}),EF.supplyDefaults(e);var t=e.data||[],r=e.layout||{};r._basePlotModules=e._fullLayout._basePlotModules,r._modules=e._fullLayout._modules;var i={data:{},layout:{}};t.forEach(function(S){var C={};Vg(S,C,xle.bind(null,S));var E=Hs.coerce(S,{},gle,"type"),D=i.data[E];D||(D=i.data[E]=[]),D.push(C)}),Vg(r,i.layout,_le.bind(null,r)),delete i.layout.template;var a=r.template;if(Gs(a)){var s=a.layout,l,f,h,v,m,_;Gs(s)&&Hx(s,i.layout);var T=a.data;if(Gs(T)){for(f in i.data)if(h=T[f],Array.isArray(h)){for(m=i.data[f],_=m.length,v=h.length,l=0;l<_;l++)Hx(h[l%v],m[l]);for(l=_;lz?l.push({code:"unused",traceType:S,templateCount:D,dataCount:z}):z>D&&l.push({code:"reused",traceType:S,templateCount:D,dataCount:z})}}function B(q,I){for(var O in q)if(O.charAt(0)!=="_"){var H=q[O],V=nu(q,O,I);Gs(H)?(Array.isArray(q)&&H._template===!1&&H.templateitemname&&l.push({code:"missing",path:V,templateitemname:H.templateitemname}),B(H,V)):Array.isArray(H)&&ble(H)&&B(H,V)}}if(B({data:h,layout:f},""),l.length)return l.map(wle)};function ble(e){for(var t=0;t{"use strict";var Jn=M6();Ji._doPlot=Jn._doPlot;Ji.newPlot=Jn.newPlot;Ji.restyle=Jn.restyle;Ji.relayout=Jn.relayout;Ji.redraw=Jn.redraw;Ji.update=Jn.update;Ji._guiRestyle=Jn._guiRestyle;Ji._guiRelayout=Jn._guiRelayout;Ji._guiUpdate=Jn._guiUpdate;Ji._storeDirectGUIEdit=Jn._storeDirectGUIEdit;Ji.react=Jn.react;Ji.extendTraces=Jn.extendTraces;Ji.prependTraces=Jn.prependTraces;Ji.addTraces=Jn.addTraces;Ji.deleteTraces=Jn.deleteTraces;Ji.moveTraces=Jn.moveTraces;Ji.purge=Jn.purge;Ji.addFrames=Jn.addFrames;Ji.deleteFrames=Jn.deleteFrames;Ji.animate=Jn.animate;Ji.setPlotConfig=Jn.setPlotConfig;var Tle=Iy().getGraphDiv,Ale=$2().eraseActiveShape;Ji.deleteActiveShape=function(e){return Ale(Tle(e))};Ji.toImage=E6();Ji.validate=TF();Ji.downloadImage=D6();var zF=PF();Ji.makeTemplate=zF.makeTemplate;Ji.validateTemplate=zF.validateTemplate});var FF=pe((d2e,RF)=>{"use strict";var z6=Bt(),Mle=sa();RF.exports=function(t,r,i,a){var s=a("x"),l=a("y"),f,h=Mle.getComponentMethod("calendars","handleTraceDefaults");if(h(t,r,["x","y"],i),s){var v=z6.minRowLength(s);l?f=Math.min(v,z6.minRowLength(l)):(f=v,a("y0"),a("dy"))}else{if(!l)return 0;f=z6.minRowLength(l),a("x0"),a("dx")}return r._length=f,f}});var OF=pe((p2e,BF)=>{"use strict";var qF=Bt().dateTick0,Sle=Zi(),kle=Sle.ONEWEEK;function NF(e,t){return e%kle===0?qF(t,1):qF(t,0)}BF.exports=function(t,r,i,a,s){if(s||(s={x:!0,y:!0}),s.x){var l=a("xperiod");l&&(a("xperiod0",NF(l,r.xcalendar)),a("xperiodalignment"))}if(s.y){var f=a("yperiod");f&&(a("yperiod0",NF(f,r.ycalendar)),a("yperiodalignment"))}}});var HF=pe((m2e,VF)=>{"use strict";var UF=["orientation","groupnorm","stackgaps"];VF.exports=function(t,r,i,a){var s=i._scatterStackOpts,l=a("stackgroup");if(l){var f=r.xaxis+r.yaxis,h=s[f];h||(h=s[f]={});var v=h[l],m=!1;v?v.traces.push(r):(v=h[l]={traceIndices:[],traces:[r]},m=!0);for(var _={orientation:r.x&&!r.y?"h":"v"},T=0;T{"use strict";var GF=Oa(),ZF=kf().hasColorscale,YF=vd(),Cle=rs();WF.exports=function(t,r,i,a,s,l){var f=Cle.isBubble(t),h=(t.line||{}).color,v;if(l=l||{},h&&(i=h),s("marker.symbol"),s("marker.opacity",f?.7:1),s("marker.size"),l.noAngle||(s("marker.angle"),l.noAngleRef||s("marker.angleref"),l.noStandOff||s("marker.standoff")),s("marker.color",i),ZF(t,"marker")&&YF(t,r,a,s,{prefix:"marker.",cLetter:"c"}),l.noSelect||(s("selected.marker.color"),s("unselected.marker.color"),s("selected.marker.size"),s("unselected.marker.size")),l.noLine||(h&&!Array.isArray(h)&&r.marker.color!==h?v=h:f?v=GF.background:v=GF.defaultLine,s("marker.line.color",v),ZF(t,"marker.line")&&YF(t,r,a,s,{prefix:"marker.line.",cLetter:"c"}),s("marker.line.width",f?1:0)),f&&(s("marker.sizeref"),s("marker.sizemin"),s("marker.sizemode")),l.gradient){var m=s("marker.gradient.type");m!=="none"&&s("marker.gradient.color")}}});var R6=pe((g2e,XF)=>{"use strict";var Ele=Bt().isArrayOrTypedArray,Lle=kf().hasColorscale,Dle=vd();XF.exports=function(t,r,i,a,s,l){l||(l={});var f=(t.marker||{}).color;if(f&&f._inputArray&&(f=f._inputArray),s("line.color",i),Lle(t,"line"))Dle(t,r,a,s,{prefix:"line.",cLetter:"c"});else{var h=(Ele(f)?!1:f)||i;s("line.color",h)}s("line.width"),l.noDash||s("line.dash"),l.backoff&&s("line.backoff")}});var JF=pe((_2e,jF)=>{"use strict";jF.exports=function(t,r,i){var a=i("line.shape");a==="spline"&&i("line.smoothing")}});var F6=pe((x2e,KF)=>{"use strict";var Ple=Bt();KF.exports=function(e,t,r,i,a){a=a||{},i("textposition"),Ple.coerceFont(i,"textfont",a.font||r.font,a),a.noSelect||(i("selected.textfont.color"),i("unselected.textfont.color"))}});var q6=pe((b2e,$F)=>{"use strict";var Zx=Oa(),QF=Bt().isArrayOrTypedArray;function zle(e){for(var t=Zx.interpolate(e[0][1],e[1][1],.5),r=2;r{"use strict";var eq=Bt(),Ile=sa(),Rle=kc(),Fle=yx(),am=rs(),qle=FF(),Nle=OF(),Ble=HF(),Ole=I6(),Ule=R6(),tq=JF(),Vle=F6(),Hle=q6(),Gle=Bt().coercePattern;rq.exports=function(t,r,i,a){function s(S,C){return eq.coerce(t,r,Rle,S,C)}var l=qle(t,r,a,s);if(l||(r.visible=!1),!!r.visible){Nle(t,r,a,s),s("xhoverformat"),s("yhoverformat"),s("zorder");var f=Ble(t,r,a,s);a.scattermode==="group"&&r.orientation===void 0&&s("orientation","v");var h=!f&&l{"use strict";var Zle=dg().getAxisGroup;iq.exports=function(t,r,i,a,s){var l=r.orientation,f=r[{v:"x",h:"y"}[l]+"axis"],h=Zle(i,f)+l,v=i._alignmentOpts||{},m=a("alignmentgroup"),_=v[h];_||(_=v[h]={});var T=_[m];T?T.traces.push(r):T=_[m]={traces:[r],alignmentIndex:Object.keys(_).length,offsetGroups:{}};var S=a("offsetgroup")||"",C=T.offsetGroups,E=C[S];r._offsetIndex=0,(s!=="group"||S)&&(E||(E=C[S]={offsetIndex:Object.keys(C).length}),r._offsetIndex=E.offsetIndex)}});var sq=pe((A2e,oq)=>{"use strict";var Yle=Bt(),Wle=nq(),Xle=kc();oq.exports=function(t,r){var i,a,s,l=r.scattermode;function f(T){return Yle.coerce(a._input,a,Xle,T)}if(r.scattermode==="group")for(s=0;s=0;m--){var _=t[m];if(_.type==="scatter"&&_.xaxis===h.xaxis&&_.yaxis===h.yaxis){_.opacity=void 0;break}}}}}});var uq=pe((M2e,lq)=>{"use strict";var jle=Bt(),Jle=F_();lq.exports=function(e,t){function r(a,s){return jle.coerce(e,t,Jle,a,s)}var i=t.barmode==="group";t.scattermode==="group"&&r("scattergap",i?t.bargap:.2)}});var hq=pe((S2e,cq)=>{"use strict";var Kle=Da(),fq=Bt(),Qle=fq.dateTime2ms,Yx=fq.incrementMonth,$le=Zi(),eue=$le.ONEAVGMONTH;cq.exports=function(t,r,i,a){if(r.type!=="date")return{vals:a};var s=t[i+"periodalignment"];if(!s)return{vals:a};var l=t[i+"period"],f;if(Kle(l)){if(l=+l,l<=0)return{vals:a}}else if(typeof l=="string"&&l.charAt(0)==="M"){var h=+l.substring(1);if(h>0&&Math.round(h)===h)f=h;else return{vals:a}}for(var v=r.calendar,m=s==="start",_=s==="end",T=t[i+"period0"],S=Qle(T,v)||0,C=[],E=[],D=[],z=a.length,B=0;Bq;)H=Yx(H,-f,v);for(;H<=q;)H=Yx(H,f,v);O=Yx(H,-f,v)}else{for(I=Math.round((q-S)/l),H=S+I*l;H>q;)H-=l;for(;H<=q;)H+=l;O=H-l}C[B]=m?O:_?H:(O+H)/2,E[B]=O,D[B]=H}return{vals:C,starts:E,ends:D}}});var O6=pe((k2e,dq)=>{"use strict";var N6=kf().hasColorscale,B6=Xy(),vq=rs();dq.exports=function(t,r){vq.hasLines(r)&&N6(r,"line")&&B6(t,r,{vals:r.line.color,containerStr:"line",cLetter:"c"}),vq.hasMarkers(r)&&(N6(r,"marker")&&B6(t,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),N6(r,"marker.line")&&B6(t,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var Hg=pe((C2e,pq)=>{"use strict";var yn=Bt();pq.exports=function(t,r){for(var i=0;i{"use strict";var mq=Bt();yq.exports=function(t,r){mq.isArrayOrTypedArray(r.selectedpoints)&&mq.tagSelected(t,r)}});var Z6=pe((L2e,Aq)=>{"use strict";var gq=Da(),V6=Bt(),Gg=Xi(),_q=hq(),U6=Zi().BADNUM,H6=rs(),tue=O6(),rue=Hg(),aue=Wx();function iue(e,t){var r=e._fullLayout,i=t._xA=Gg.getFromId(e,t.xaxis||"x","x"),a=t._yA=Gg.getFromId(e,t.yaxis||"y","y"),s=i.makeCalcdata(t,"x"),l=a.makeCalcdata(t,"y"),f=_q(t,i,"x",s),h=_q(t,a,"y",l),v=f.vals,m=h.vals,_=t._length,T=new Array(_),S=t.ids,C=G6(t,r,i,a),E=!1,D,z,B,q,I,O;wq(r,t);var H="x",V="y",W;if(C)V6.pushUnique(C.traceIndices,t.index),D=C.orientation==="v",D?(V="s",W="x"):(H="s",W="y"),I=C.stackgaps==="interpolate";else{var J=bq(t,_);xq(e,t,i,a,v,m,J)}var te=!!t.xperiodalignment,ne=!!t.yperiodalignment;for(z=0;z<_;z++){var oe=T[z]={},fe=gq(v[z]),ve=gq(m[z]);fe&&ve?(oe[H]=v[z],oe[V]=m[z],te&&(oe.orig_x=s[z],oe.xEnd=f.ends[z],oe.xStart=f.starts[z]),ne&&(oe.orig_y=l[z],oe.yEnd=h.ends[z],oe.yStart=h.starts[z])):C&&(D?fe:ve)?(oe[W]=D?v[z]:m[z],oe.gap=!0,I?(oe.s=U6,E=!0):oe.s=0):oe[H]=oe[V]=U6,S&&(oe.id=String(S[z]))}if(rue(T,t),tue(e,t),aue(T,t),C){for(z=0;zz&&T[q].gap;)q--;for(O=T[q].s,B=T.length-1;B>q;B--)T[B].s=O;for(;z{"use strict";Mq.exports=Xx;var nue=Bt().distinctVals;function Xx(e,t){this.traces=e,this.sepNegVal=t.sepNegVal,this.overlapNoMerge=t.overlapNoMerge;for(var r=1/0,i=t.posAxis._id.charAt(0),a=[],s=0;s{"use strict";var ou=Da(),Wh=Bt().isArrayOrTypedArray,im=Zi().BADNUM,oue=sa(),Zg=Xi(),sue=dg().getAxisGroup,jx=Sq();function lue(e,t){for(var r=t.xaxis,i=t.yaxis,a=e._fullLayout,s=e._fullData,l=e.calcdata,f=[],h=[],v=0;vh+l||!ou(f))}for(var m=0;m{"use strict";var Pq=Z6(),zq=Dq().setGroupPositions;function xue(e,t){for(var r=t.xaxis,i=t.yaxis,a=e._fullLayout,s=e._fullData,l=e.calcdata,f=[],h=[],v=0;vJ[m]&&m{"use strict";var wue=xi(),Bq=Zi(),Yg=Bq.BADNUM,Oq=Bq.LOG_CLIP,Fq=Oq+.5,qq=Oq-.5,Jx=Bt(),Tue=Jx.segmentsIntersect,Nq=Jx.constrain,K6=yx();Uq.exports=function(t,r){var i=r.trace||{},a=r.xaxis,s=r.yaxis,l=a.type==="log",f=s.type==="log",h=a._length,v=s._length,m=r.backoff,_=i.marker,T=r.connectGaps,S=r.baseTolerance,C=r.shape,E=C==="linear",D=i.fill&&i.fill!=="none",z=[],B=K6.minTolerance,q=t.length,I=new Array(q),O=0,H,V,W,J,te,ne,oe,fe,ve,Se,Me,Ae,we,Te,Ce,Le;function Ke(Lt){var Fe=t[Lt];if(!Fe)return!1;var Ue=r.linearized?a.l2p(Fe.x):a.c2p(Fe.x),xt=r.linearized?s.l2p(Fe.y):s.c2p(Fe.y);if(Ue===Yg){if(l&&(Ue=a.c2p(Fe.x,!0)),Ue===Yg)return!1;f&&xt===Yg&&(Ue*=Math.abs(a._m*v*(a._m>0?Fq:qq)/(s._m*h*(s._m>0?Fq:qq)))),Ue*=1e3}if(xt===Yg){if(f&&(xt=s.c2p(Fe.y,!0)),xt===Yg)return!1;xt*=1e3}return[Ue,xt]}function lt(Lt,Fe,Ue,xt){var wt=Ue-Lt,mr=xt-Fe,Ar=.5-Lt,Mr=.5-Fe,Gr=wt*wt+mr*mr,pa=wt*Ar+mr*Mr;if(pa>0&&pa1||Math.abs(Ar.y-Ue[0][1])>1)&&(Ar=[Ar.x,Ar.y],xt&&St(Ar,Lt)bt||Lt[1]de)return[Nq(Lt[0],mt,bt),Nq(Lt[1],vt,de)]}function Ut(Lt,Fe){if(Lt[0]===Fe[0]&&(Lt[0]===mt||Lt[0]===bt)||Lt[1]===Fe[1]&&(Lt[1]===vt||Lt[1]===de))return!0}function Ct(Lt,Fe){var Ue=[],xt=Rt(Lt),wt=Rt(Fe);return xt&&wt&&Ut(xt,wt)||(xt&&Ue.push(xt),wt&&Ue.push(wt)),Ue}function At(Lt,Fe,Ue){return function(xt,wt){var mr=Rt(xt),Ar=Rt(wt),Mr=[];if(mr&&Ar&&Ut(mr,Ar))return Mr;mr&&Mr.push(mr),Ar&&Mr.push(Ar);var Gr=2*Jx.constrain((xt[Lt]+wt[Lt])/2,Fe,Ue)-((mr||xt)[Lt]+(Ar||wt)[Lt]);if(Gr){var pa;mr&&Ar?pa=Gr>0==mr[Lt]>Ar[Lt]?mr:Ar:pa=mr||Ar,pa[Lt]+=Gr}return Mr}}var Vt;C==="linear"||C==="spline"?Vt=Tt:C==="hv"||C==="vh"?Vt=Ct:C==="hvh"?Vt=At(0,mt,bt):C==="vhv"&&(Vt=At(1,vt,de));function Ht(Lt,Fe){var Ue=Fe[0]-Lt[0],xt=(Fe[1]-Lt[1])/Ue,wt=(Lt[1]*Fe[0]-Fe[1]*Lt[0])/Ue;return wt>0?[xt>0?mt:bt,de]:[xt>0?bt:mt,vt]}function Be(Lt){var Fe=Lt[0],Ue=Lt[1],xt=Fe===I[O-1][0],wt=Ue===I[O-1][1];if(!(xt&&wt))if(O>1){var mr=Fe===I[O-2][0],Ar=Ue===I[O-2][1];xt&&(Fe===mt||Fe===bt)&&mr?Ar?O--:I[O-1]=Lt:wt&&(Ue===vt||Ue===de)&&Ar?mr?O--:I[O-1]=Lt:I[O++]=Lt}else I[O++]=Lt}function st(Lt){I[O-1][0]!==Lt[0]&&I[O-1][1]!==Lt[1]&&Be([dt,We]),Be(Lt),qt=null,dt=We=0}var sr=Jx.isArrayOrTypedArray(_);function Dr(Lt){if(Lt&&m&&(Lt.i=H,Lt.d=t,Lt.trace=i,Lt.marker=sr?_[Lt.i]:_,Lt.backoff=m),at=Lt[0]/h,gt=Lt[1]/v,ge=Lt[0]bt?bt:0,rt=Lt[1]de?de:0,ge||rt){if(!O)I[O++]=[ge||Lt[0],rt||Lt[1]];else if(qt){var Fe=Vt(qt,Lt);Fe.length>1&&(st(Fe[0]),I[O++]=Fe[1])}else Dt=Vt(I[O-1],Lt)[0],I[O++]=Dt;var Ue=I[O-1];ge&&rt&&(Ue[0]!==ge||Ue[1]!==rt)?(qt&&(dt!==ge&&We!==rt?Be(dt&&We?Ht(qt,Lt):[dt||ge,We||rt]):dt&&We&&Be([dt,We])),Be([ge,rt])):dt-ge&&We-rt&&Be([ge||dt,rt||We]),qt=Lt,dt=ge,We=rt}else qt&&st(Vt(qt,Lt)[0]),I[O++]=Lt}for(H=0;HYe(ne,Et))break;W=ne,we=ve[0]*fe[0]+ve[1]*fe[1],we>Me?(Me=we,J=ne,oe=!1):we=t.length||!ne)break;Dr(ne),V=ne}}qt&&Be([dt||qt[0],We||qt[1]]),z.push(I.slice(0,O))}var ct=C.slice(C.length-1);if(m&&ct!=="h"&&ct!=="v"){for(var pt=!1,Ot=-1,er=[],Zt=0;Zt{"use strict";var Hq={tonextx:1,tonexty:1,tonext:1};Gq.exports=function(t,r,i){var a,s,l,f,h,v={},m=!1,_=-1,T=0,S=-1;for(s=0;s=0?h=S:(h=S=T,T++),h<_&&(m=!0),a._groupIndex=_=h;var C=i.slice();m&&C.sort(function(D,z){var B=D[0].trace,q=z[0].trace;return B._groupIndex-q._groupIndex||B.index-q.index});var E={};for(s=0;s{"use strict";var Uu=ja(),Aue=sa(),Wg=Bt(),om=Wg.ensureSingle,Wq=Wg.identity,gn=xi(),sm=rs(),Mue=Vq(),Sue=Zq(),Kx=cx().tester;Xq.exports=function(t,r,i,a,s,l){var f,h,v=!s,m=!!s&&s.duration>0,_=Sue(t,r,i);if(f=a.selectAll("g.trace").data(_,function(S){return S[0].trace.uid}),f.enter().append("g").attr("class",function(S){return"trace scatter trace"+S[0].trace.uid}).style("stroke-miterlimit",2),f.order(),kue(t,f,r),m){l&&(h=l());var T=Uu.transition().duration(s.duration).ease(s.easing).each("end",function(){h&&h()}).each("interrupt",function(){h&&h()});T.each(function(){a.selectAll("g.trace").each(function(S,C){Yq(t,C,r,S,_,this,s)})})}else f.each(function(S,C){Yq(t,C,r,S,_,this,s)});v&&f.exit().remove(),a.selectAll("path:not([d])").remove()};function kue(e,t,r){t.each(function(i){var a=om(Uu.select(this),"g","fills");gn.setClipUrl(a,r.layerClipId,e);var s=i[0].trace,l=[];s._ownfill&&l.push("_ownFill"),s._nexttrace&&l.push("_nextFill");var f=a.selectAll("g").data(l,Wq);f.enter().append("g"),f.exit().each(function(h){s[h]=null}).remove(),f.order().each(function(h){s[h]=om(Uu.select(this),"path","js-fill")})})}function Yq(e,t,r,i,a,s,l){var f=e._context.staticPlot,h;Cue(e,t,r,i,a);var v=!!l&&l.duration>0;function m(At){return v?At.transition():At}var _=r.xaxis,T=r.yaxis,S=i[0].trace,C=S.line,E=Uu.select(s),D=om(E,"g","errorbars"),z=om(E,"g","lines"),B=om(E,"g","points"),q=om(E,"g","text");if(Aue.getComponentMethod("errorbars","plot")(e,D,r,l),S.visible!==!0)return;m(E).style("opacity",S.opacity);var I,O,H=S.fill.charAt(S.fill.length-1);H!=="x"&&H!=="y"&&(H="");var V,W;H==="y"?(V=1,W=T.c2p(0,!0)):H==="x"&&(V=0,W=_.c2p(0,!0)),i[0][r.isRangePlot?"nodeRangePlot3":"node3"]=E;var J="",te=[],ne=S._prevtrace,oe=null,fe=null;ne&&(J=ne._prevRevpath||"",O=ne._nextFill,te=ne._ownPolygons,oe=ne._fillsegments,fe=ne._fillElement);var ve,Se,Me="",Ae="",we,Te,Ce,Le,Ke,lt,at=[];S._polygons=[];var gt=[],Ye=[],St=Wg.noop;if(I=S._ownFill,sm.hasLines(S)||S.fill!=="none"){O&&O.datum(i),["hv","vh","hvh","vhv"].indexOf(C.shape)!==-1?(we=gn.steps(C.shape),Te=gn.steps(C.shape.split("").reverse().join(""))):C.shape==="spline"?we=Te=function(At){var Vt=At[At.length-1];return At.length>1&&At[0][0]===Vt[0]&&At[0][1]===Vt[1]?gn.smoothclosed(At.slice(1),C.smoothing):gn.smoothopen(At,C.smoothing)}:we=Te=function(At){return"M"+At.join("L")},Ce=function(At){return Te(At.reverse())},Ye=Mue(i,{xaxis:_,yaxis:T,trace:S,connectGaps:S.connectgaps,baseTolerance:Math.max(C.width||1,3)/4,shape:C.shape,backoff:C.backoff,simplify:C.simplify,fill:S.fill}),gt=new Array(Ye.length);var it=0;for(h=0;h=f[0]&&E.x<=f[1]&&E.y>=h[0]&&E.y<=h[1]}),T=Math.ceil(_.length/m),S=0;a.forEach(function(E,D){var z=E[0].trace;sm.hasMarkers(z)&&z.marker.maxdisplayed>0&&D{"use strict";Jq.exports={container:"marker",min:"cmin",max:"cmax"}});var Qq=pe((N2e,Kq)=>{"use strict";var Qx=Xi();Kq.exports=function(t,r,i){var a={},s={_fullLayout:i},l=Qx.getFromTrace(s,r,"x"),f=Qx.getFromTrace(s,r,"y"),h=t.orig_x;h===void 0&&(h=t.x);var v=t.orig_y;return v===void 0&&(v=t.y),a.xLabel=Qx.tickText(l,l.c2l(h),!0).text,a.yLabel=Qx.tickText(f,f.c2l(v),!0).text,a}});var rT=pe((B2e,$q)=>{"use strict";var $6=ja(),lm=xi(),Eue=sa();function Lue(e){var t=$6.select(e).selectAll("g.trace.scatter");t.style("opacity",function(r){return r[0].trace.opacity}),t.selectAll("g.points").each(function(r){var i=$6.select(this),a=r.trace||r[0].trace;eT(i,a,e)}),t.selectAll("g.text").each(function(r){var i=$6.select(this),a=r.trace||r[0].trace;tT(i,a,e)}),t.selectAll("g.trace path.js-line").call(lm.lineGroupStyle),t.selectAll("g.trace path.js-fill").call(lm.fillGroupStyle,e,!1),Eue.getComponentMethod("errorbars","style")(t)}function eT(e,t,r){lm.pointStyle(e.selectAll("path.point"),t,r)}function tT(e,t,r){lm.textPointStyle(e.selectAll("text"),t,r)}function Due(e,t,r){var i=t[0].trace;i.selectedpoints?(lm.selectedPointStyle(r.selectAll("path.point"),i),lm.selectedTextStyle(r.selectAll("text"),i)):(eT(r,i,e),tT(r,i,e))}$q.exports={style:Lue,stylePoints:eT,styleText:tT,styleOnSelect:Due}});var aT=pe((O2e,eN)=>{"use strict";var um=Oa(),Pue=rs();eN.exports=function(t,r){var i,a;if(t.mode==="lines")return i=t.line.color,i&&um.opacity(i)?i:t.fillcolor;if(t.mode==="none")return t.fill?t.fillcolor:"";var s=r.mcc||(t.marker||{}).color,l=r.mlcc||((t.marker||{}).line||{}).color;return a=s&&um.opacity(s)?s:l&&um.opacity(l)&&(r.mlw||((t.marker||{}).line||{}).width)?l:"",a?um.opacity(a)<.3?um.addOpacity(a,.3):a:(i=(t.line||{}).color,i&&um.opacity(i)&&Pue.hasLines(t)&&t.line.width?i:t.fillcolor)}});var aN=pe((U2e,rN)=>{"use strict";var $x=Bt(),tN=Rf(),zue=sa(),Iue=aT(),iT=Oa(),Rue=$x.fillText;rN.exports=function(t,r,i,a){var s=t.cd,l=s[0].trace,f=t.xa,h=t.ya,v=f.c2p(r),m=h.c2p(i),_=[v,m],T=l.hoveron||"",S=l.mode.indexOf("markers")!==-1?3:.5,C=!!l.xperiodalignment,E=!!l.yperiodalignment;if(T.indexOf("points")!==-1){var D=function(Ae){if(C){var we=f.c2p(Ae.xStart),Te=f.c2p(Ae.xEnd);return v>=Math.min(we,Te)&&v<=Math.max(we,Te)?0:1/0}var Ce=Math.max(3,Ae.mrc||0),Le=1-1/Ce,Ke=Math.abs(f.c2p(Ae.x)-v);return Ke=Math.min(we,Te)&&m<=Math.max(we,Te)?0:1/0}var Ce=Math.max(3,Ae.mrc||0),Le=1-1/Ce,Ke=Math.abs(h.c2p(Ae.y)-m);return Keat!=de>=at&&(mt=St[Ye-1][0],bt=St[Ye][0],de-vt&&(it=mt+(bt-mt)*(at-vt)/(de-vt),Ce=Math.min(Ce,it),Le=Math.max(Le,it)));return Ce=Math.max(Ce,0),Le=Math.min(Le,f._length),{x0:Ce,x1:Le,y0:at,y1:at}}if(T.indexOf("fills")!==-1&&l._fillElement){var ve=oe(l._fillElement)&&!oe(l._fillExclusionElement);if(ve){var Se=fe(l._polygons);Se===null&&(Se={x0:_[0],x1:_[0],y0:_[1],y1:_[1]});var Me=iT.defaultLine;return iT.opacity(l.fillcolor)?Me=l.fillcolor:iT.opacity((l.line||{}).color)&&(Me=l.line.color),$x.extendFlat(t,{distance:t.maxHoverDistance,x0:Se.x0,x1:Se.x1,y0:Se.y0,y1:Se.y1,color:Me,hovertemplate:!1}),delete t.index,l.text&&!$x.isArrayOrTypedArray(l.text)?t.text=String(l.text):t.text=l.name,[t]}}}});var oN=pe((V2e,nN)=>{"use strict";var iN=rs();nN.exports=function(t,r){var i=t.cd,a=t.xaxis,s=t.yaxis,l=[],f=i[0].trace,h,v,m,_,T=!iN.hasMarkers(f)&&!iN.hasText(f);if(T)return[];if(r===!1)for(h=0;h{"use strict";sN.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var hN=pe((G2e,cN)=>{"use strict";var Xg=sa().traceIs,nT=M5();cN.exports=function(t,r,i,a){i("autotypenumbers",a.autotypenumbersDflt);var s=i("type",(a.splomStash||{}).type);s==="-"&&(Fue(r,a.data),r.type==="-"?r.type="linear":t.type=r.type)};function Fue(e,t){if(e.type==="-"){var r=e._id,i=r.charAt(0),a;r.indexOf("scene")!==-1&&(r=i);var s=que(t,r,i);if(s){if(s.type==="histogram"&&i==={v:"y",h:"x"}[s.orientation||"v"]){e.type="linear";return}var l=i+"calendar",f=s[l],h={noMultiCategory:!Xg(s,"cartesian")||Xg(s,"noMultiCategory")};if(s.type==="box"&&s._hasPreCompStats&&i==={h:"x",v:"y"}[s.orientation||"v"]&&(h.noMultiCategory=!0),h.autotypenumbers=e.autotypenumbers,fN(s,i)){var v=uN(s),m=[];for(a=0;a0&&(a["_"+r+"axes"]||{})[t])return a;if((a[r+"axis"]||r)===t){if(fN(a,r))return a;if((a[r]||[]).length||a[r+"0"])return a}}}function uN(e){return{v:"x",h:"y"}[e.orientation||"v"]}function fN(e,t){var r=uN(e),i=Xg(e,"box-violin"),a=Xg(e._fullInput||{},"candlestick");return i&&!a&&t===r&&e[r]===void 0&&e[r+"0"]===void 0}});var dN=pe((Z2e,vN)=>{"use strict";var Nue=al().isTypedArraySpec;function Bue(e,t){var r=t.dataAttr||e._id.charAt(0),i={},a,s,l;if(t.axData)a=t.axData;else for(a=[],s=0;s0||Nue(s),f;l&&(f="array");var h=i("categoryorder",f),v;h==="array"&&(v=i("categoryarray")),!l&&h==="array"&&(h=r.categoryorder="trace"),h==="trace"?r._initialCategories=[]:h==="array"?r._initialCategories=v.slice():(v=Bue(r,a).sort(),h==="category ascending"?r._initialCategories=v:h==="category descending"&&(r._initialCategories=v.reverse()))}}});var yN=pe((Y2e,mN)=>{"use strict";var pN=wf().mix,Oue=Tf(),Uue=Bt();mN.exports=function(t,r,i,a){a=a||{};var s=a.dfltColor;function l(W,J){return Uue.coerce2(t,r,a.attributes,W,J)}var f=l("linecolor",s),h=l("linewidth"),v=i("showline",a.showLine||!!f||!!h);v||(delete r.linecolor,delete r.linewidth);var m=pN(s,a.bgColor,a.blend||Oue.lightFraction).toRgbString(),_=l("gridcolor",m),T=l("gridwidth"),S=l("griddash"),C=i("showgrid",a.showGrid||!!_||!!T||!!S);if(C||(delete r.gridcolor,delete r.gridwidth,delete r.griddash),a.hasMinor){var E=pN(r.gridcolor,a.bgColor,67).toRgbString(),D=l("minor.gridcolor",E),z=l("minor.gridwidth",r.gridwidth||1),B=l("minor.griddash",r.griddash||"solid"),q=i("minor.showgrid",!!D||!!z||!!B);q||(delete r.minor.gridcolor,delete r.minor.gridwidth,delete r.minor.griddash)}if(!a.noZeroLine){var I=l("zerolinelayer"),O=l("zerolinecolor",s),H=l("zerolinewidth"),V=i("zeroline",a.showGrid||!!O||!!H);V||(delete r.zerolinelayer,delete r.zerolinecolor,delete r.zerolinewidth)}}});var sT=pe((W2e,TN)=>{"use strict";var gN=Da(),Vue=sa(),jg=Bt(),Hue=Ii(),Gue=Yl(),oT=Ru(),_N=Xw(),xN=Jw(),Zue=$w(),Yue=e5(),Wue=dN(),Xue=yN(),jue=Y5(),bN=l2(),eb=Ao().WEEKDAY_PATTERN,Jue=Ao().HOUR_PATTERN;TN.exports=function(t,r,i,a,s){var l=a.letter,f=a.font||{},h=a.splomStash||{},v=i("visible",!a.visibleDflt),m=r._template||{},_=r.type||m.type||"-",T;if(_==="date"){var S=Vue.getComponentMethod("calendars","handleDefaults");S(t,r,"calendar",a.calendar),a.noTicklabelmode||(T=i("ticklabelmode"))}!a.noTicklabelindex&&(_==="date"||_==="linear")&&i("ticklabelindex");var C="";(!a.noTicklabelposition||_==="multicategory")&&(C=jg.coerce(t,r,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:T==="period"?["outside","inside"]:l==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),a.noTicklabeloverflow||i("ticklabeloverflow",C.indexOf("inside")!==-1?"hide past domain":_==="category"||_==="multicategory"?"allow":"hide past div"),bN(r,s),jue(t,r,i,a),Wue(t,r,i,a),a.noHover||(_!=="category"&&i("hoverformat"),a.noUnifiedhovertitle||i("unifiedhovertitle.text"));var E=i("color"),D=E!==oT.color.dflt?E:f.color,z=h.label||s._dfltTitle[l];if(Yue(t,r,i,_,a),!v)return r;i("title.text",z),jg.coerceFont(i,"title.font",f,{overrideDflt:{size:jg.bigFont(f.size),color:D}}),_N(t,r,i,_);var B=a.hasMinor;if(B&&(Hue.newContainer(r,"minor"),_N(t,r,i,_,{isMinor:!0})),Zue(t,r,i,_,a),xN(t,r,i,a),B){var q=a.isMinor;a.isMinor=!0,xN(t,r,i,a),a.isMinor=q}Xue(t,r,i,{dfltColor:E,bgColor:a.bgColor,showGrid:a.showGrid,hasMinor:B,attributes:oT}),B&&!r.minor.ticks&&!r.minor.showgrid&&delete r.minor,(r.showline||r.ticks)&&i("mirror");var I=_==="multicategory";if(!a.noTickson&&(_==="category"||I)&&(r.ticks||r.showgrid)&&(I?(i("tickson","boundaries"),delete r.ticklabelposition):i("tickson")),I){var O=i("showdividers");O&&(i("dividercolor"),i("dividerwidth"))}if(_==="date")if(Gue(t,r,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:Kue}),!r.rangebreaks.length)delete r.rangebreaks;else{for(var H=0;H=2){var l="",f,h;if(s.length===2){for(f=0;f<2;f++)if(h=wN(s[f]),h){l=eb;break}}var v=i("pattern",l);if(v===eb)for(f=0;f<2;f++)h=wN(s[f]),h&&(t.bounds[f]=s[f]=h-1);if(v)for(f=0;f<2;f++)switch(h=s[f],v){case eb:if(!gN(h)){t.enabled=!1;return}if(h=+h,h!==Math.floor(h)||h<0||h>=7){t.enabled=!1;return}t.bounds[f]=s[f]=h;break;case Jue:if(!gN(h)){t.enabled=!1;return}if(h=+h,h<0||h>24){t.enabled=!1;return}t.bounds[f]=s[f]=h;break}if(r.autorange===!1){var m=r.range;if(m[0]m[1]){t.enabled=!1;return}}else if(s[0]>m[0]&&s[1]{"use strict";var $ue=Da(),tb=Bt();AN.exports=function(t,r,i,a){var s=a.counterAxes||[],l=a.overlayableAxes||[],f=a.letter,h=a.grid,v=a.overlayingDomain,m,_,T,S,C,E;h&&(_=h._domains[f][h._axisMap[r._id]],m=h._anchors[r._id],_&&(T=h[f+"side"].split(" ")[0],S=h.domain[f][T==="right"||T==="top"?1:0])),_=_||[0,1],m=m||($ue(t.position)?"free":s[0]||"free"),T=T||(f==="x"?"bottom":"left"),S=S||0,C=0,E=!1;var D=tb.coerce(t,r,{anchor:{valType:"enumerated",values:["free"].concat(s),dflt:m}},"anchor"),z=tb.coerce(t,r,{side:{valType:"enumerated",values:f==="x"?["bottom","top"]:["left","right"],dflt:T}},"side");if(D==="free"){if(f==="y"){var B=i("autoshift");B&&(S=z==="left"?v[0]:v[1],E=r.automargin?r.automargin:!0,C=z==="left"?-3:3),i("shift",C)}i("position",S)}i("automargin",E);var q=!1;if(l.length&&(q=tb.coerce(t,r,{overlaying:{valType:"enumerated",values:[!1].concat(l),dflt:!1}},"overlaying")),!q){var I=i("domain",_);I[0]>I[1]-1/4096&&(r.domain=_),tb.noneOrAll(t.domain,r.domain,_),r.tickmode==="sync"&&(r.tickmode="auto")}return i("layer"),r}});var zN=pe((j2e,PN)=>{"use strict";var Rd=Bt(),MN=Oa(),efe=bc().isUnifiedHover,tfe=_4(),SN=Ii(),rfe=m0(),kN=Ru(),afe=hN(),CN=sT(),ife=dg(),EN=lT(),fT=Xn(),Uf=fT.id2name,LN=fT.name2id,nfe=Ao().AX_ID_PATTERN,DN=sa(),rb=DN.traceIs,uT=DN.getComponentMethod;function ab(e,t,r){Array.isArray(e[t])?e[t].push(r):e[t]=[r]}PN.exports=function(t,r,i){var a=r.autotypenumbers,s={},l={},f={},h={},v={},m={},_={},T={},S={},C={},E,D;for(E=0;E{"use strict";var ofe=ja(),IN=sa(),ib=Bt(),cl=xi(),nb=Xi();RN.exports=function(t,r,i,a){var s=t._fullLayout;if(r.length===0){nb.redrawComponents(t);return}function l(D){var z=D.xaxis,B=D.yaxis;s._defs.select("#"+D.clipId+"> rect").call(cl.setTranslate,0,0).call(cl.setScale,1,1),D.plot.call(cl.setTranslate,z._offset,B._offset).call(cl.setScale,1,1);var q=D.plot.selectAll(".scatterlayer .trace");q.selectAll(".point").call(cl.setPointGroupScale,1,1),q.selectAll(".textpoint").call(cl.setTextPointsScale,1,1),q.call(cl.hideOutsideRangePoints,D)}function f(D,z){var B=D.plotinfo,q=B.xaxis,I=B.yaxis,O=q._length,H=I._length,V=!!D.xr1,W=!!D.yr1,J=[];if(V){var te=ib.simpleMap(D.xr0,q.r2l),ne=ib.simpleMap(D.xr1,q.r2l),oe=te[1]-te[0],fe=ne[1]-ne[0];J[0]=(te[0]*(1-z)+z*ne[0]-te[0])/(te[1]-te[0])*O,J[2]=O*(1-z+z*fe/oe),q.range[0]=q.l2r(te[0]*(1-z)+z*ne[0]),q.range[1]=q.l2r(te[1]*(1-z)+z*ne[1])}else J[0]=0,J[2]=O;if(W){var ve=ib.simpleMap(D.yr0,I.r2l),Se=ib.simpleMap(D.yr1,I.r2l),Me=ve[1]-ve[0],Ae=Se[1]-Se[0];J[1]=(ve[1]*(1-z)+z*Se[1]-ve[1])/(ve[0]-ve[1])*H,J[3]=H*(1-z+z*Ae/Me),I.range[0]=q.l2r(ve[0]*(1-z)+z*Se[0]),I.range[1]=I.l2r(ve[1]*(1-z)+z*Se[1])}else J[1]=0,J[3]=H;nb.drawOne(t,q,{skipTitle:!0}),nb.drawOne(t,I,{skipTitle:!0}),nb.redrawComponents(t,[q._id,I._id]);var we=V?O/J[2]:1,Te=W?H/J[3]:1,Ce=V?J[0]:0,Le=W?J[1]:0,Ke=V?J[0]/J[2]*O:0,lt=W?J[1]/J[3]*H:0,at=q._offset-Ke,gt=I._offset-lt;B.clipRect.call(cl.setTranslate,Ce,Le).call(cl.setScale,1/we,1/Te),B.plot.call(cl.setTranslate,at,gt).call(cl.setScale,we,Te),cl.setPointGroupScale(B.zoomScalePts,1/we,1/Te),cl.setTextPointsScale(B.zoomScaleTxt,1/we,1/Te)}var h;a&&(h=a());function v(){for(var D={},z=0;zi.duration?(v(),S=window.cancelAnimationFrame(E)):S=window.requestAnimationFrame(E)}return _=Date.now(),S=window.requestAnimationFrame(E),Promise.resolve()}});var cT=pe(Oo=>{"use strict";var sb=ja(),qN=sa(),Fd=Bt(),sfe=eo(),lfe=xi(),NN=B_().getModuleCalcData,Xh=Xn(),Vu=Ao(),ufe=zh(),ai=Fd.ensureSingle;function ob(e,t,r){return Fd.ensureSingle(e,t,r,function(i){i.datum(r)})}var qd=Vu.zindexSeparator;Oo.name="cartesian";Oo.attr=["xaxis","yaxis"];Oo.idRoot=["x","y"];Oo.idRegex=Vu.idRegex;Oo.attrRegex=Vu.attrRegex;Oo.attributes=lN();Oo.layoutAttributes=Ru();Oo.supplyLayoutDefaults=zN();Oo.transitionAxes=FN();Oo.finalizeSubplots=function(e,t){var r=t._subplots,i=r.xaxis,a=r.yaxis,s=r.cartesian,l=s,f={},h={},v,m,_;for(v=0;v0){var S=T.id;if(S.indexOf(qd)!==-1)continue;S+=qd+(v+1),T=Fd.extendFlat({},T,{id:S,plot:a._cartesianlayer.selectAll(".subplot").select("."+S)})}for(var C=[],E,D=0;D1&&(O+=qd+I),q.push(f+O),l=0;l1,_=t.mainplotinfo;if(!t.mainplot||m)if(v)t.xlines=ai(i,"path","xlines-above"),t.ylines=ai(i,"path","ylines-above"),t.xaxislayer=ai(i,"g","xaxislayer-above"),t.yaxislayer=ai(i,"g","yaxislayer-above");else{if(!l){var T=ai(i,"g","layer-subplot");t.shapelayer=ai(T,"g","shapelayer"),t.imagelayer=ai(T,"g","imagelayer"),_&&m?(t.minorGridlayer=_.minorGridlayer,t.gridlayer=_.gridlayer,t.zerolinelayer=_.zerolinelayer):(t.minorGridlayer=ai(i,"g","minor-gridlayer"),t.gridlayer=ai(i,"g","gridlayer"),t.zerolinelayer=ai(i,"g","zerolinelayer"));var S=ai(i,"g","layer-between");t.shapelayerBetween=ai(S,"g","shapelayer"),t.imagelayerBetween=ai(S,"g","imagelayer"),ai(i,"path","xlines-below"),ai(i,"path","ylines-below"),t.overlinesBelow=ai(i,"g","overlines-below"),ai(i,"g","xaxislayer-below"),ai(i,"g","yaxislayer-below"),t.overaxesBelow=ai(i,"g","overaxes-below")}t.overplot=ai(i,"g","overplot"),t.plot=ai(t.overplot,"g",a),_&&m?t.zerolinelayerAbove=_.zerolinelayerAbove:t.zerolinelayerAbove=ai(i,"g","zerolinelayer-above"),l||(t.xlines=ai(i,"path","xlines-above"),t.ylines=ai(i,"path","ylines-above"),t.overlinesAbove=ai(i,"g","overlines-above"),ai(i,"g","xaxislayer-above"),ai(i,"g","yaxislayer-above"),t.overaxesAbove=ai(i,"g","overaxes-above"),t.xlines=i.select(".xlines-"+f),t.ylines=i.select(".ylines-"+h),t.xaxislayer=i.select(".xaxislayer-"+f),t.yaxislayer=i.select(".yaxislayer-"+h))}else{var C=_.plotgroup,E=a+"-x",D=a+"-y";t.minorGridlayer=_.minorGridlayer,t.gridlayer=_.gridlayer,t.zerolinelayer=_.zerolinelayer,t.zerolinelayerAbove=_.zerolinelayerAbove,ai(_.overlinesBelow,"path",E),ai(_.overlinesBelow,"path",D),ai(_.overaxesBelow,"g",E),ai(_.overaxesBelow,"g",D),t.plot=ai(_.overplot,"g",a),ai(_.overlinesAbove,"path",E),ai(_.overlinesAbove,"path",D),ai(_.overaxesAbove,"g",E),ai(_.overaxesAbove,"g",D),t.xlines=C.select(".overlines-"+f).select("."+E),t.ylines=C.select(".overlines-"+h).select("."+D),t.xaxislayer=C.select(".overaxes-"+f).select("."+E),t.yaxislayer=C.select(".overaxes-"+h).select("."+D)}l||(v||(ob(t.minorGridlayer,"g",t.xaxis._id),ob(t.minorGridlayer,"g",t.yaxis._id),t.minorGridlayer.selectAll("g").map(function(z){return z[0]}).sort(Xh.idSort),ob(t.gridlayer,"g",t.xaxis._id),ob(t.gridlayer,"g",t.yaxis._id),t.gridlayer.selectAll("g").map(function(z){return z[0]}).sort(Xh.idSort)),t.xlines.style("fill","none").classed("crisp",!0),t.ylines.style("fill","none").classed("crisp",!0))}function UN(e,t){if(e){var r={};e.each(function(h){var v=h[0],m=sb.select(this);m.remove(),VN(v,t),r[v]=!0});for(var i in t._plots)for(var a=t._plots[i],s=a.overlays||[],l=0;l{"use strict";var lb=rs();HN.exports={hasLines:lb.hasLines,hasMarkers:lb.hasMarkers,hasText:lb.hasText,isBubble:lb.isBubble,attributes:kc(),layoutAttributes:F_(),supplyDefaults:aq(),crossTraceDefaults:sq(),supplyLayoutDefaults:uq(),calc:Z6().calc,crossTraceCalc:Rq(),arraysToCalcdata:Hg(),plot:jq(),colorbar:Q6(),formatLabels:Qq(),style:rT().style,styleOnSelect:rT().styleOnSelect,hoverPoints:aN(),selectPoints:oN(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:cT(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var WN=pe(($2e,YN)=>{"use strict";var cfe=ja(),hfe=Oa(),ZN=s6(),hT=Bt(),vfe=hT.strScale,dfe=hT.strRotate,pfe=hT.strTranslate;YN.exports=function(t,r,i){var a=t.node(),s=ZN[i.arrowhead||0],l=ZN[i.startarrowhead||0],f=(i.arrowwidth||1)*(i.arrowsize||1),h=(i.arrowwidth||1)*(i.startarrowsize||1),v=r.indexOf("start")>=0,m=r.indexOf("end")>=0,_=s.backoff*f+i.standoff,T=l.backoff*h+i.startstandoff,S,C,E,D;if(a.nodeName==="line"){S={x:+t.attr("x1"),y:+t.attr("y1")},C={x:+t.attr("x2"),y:+t.attr("y2")};var z=S.x-C.x,B=S.y-C.y;if(E=Math.atan2(B,z),D=E+Math.PI,_&&T&&_+T>Math.sqrt(z*z+B*B)){ve();return}if(_){if(_*_>z*z+B*B){ve();return}var q=_*Math.cos(E),I=_*Math.sin(E);C.x+=q,C.y+=I,t.attr({x2:C.x,y2:C.y})}if(T){if(T*T>z*z+B*B){ve();return}var O=T*Math.cos(E),H=T*Math.sin(E);S.x-=O,S.y-=H,t.attr({x1:S.x,y1:S.y})}}else if(a.nodeName==="path"){var V=a.getTotalLength(),W="";if(V<_+T){ve();return}var J=a.getPointAtLength(0),te=a.getPointAtLength(.1);E=Math.atan2(J.y-te.y,J.x-te.x),S=a.getPointAtLength(Math.min(T,V)),W="0px,"+T+"px,";var ne=a.getPointAtLength(V),oe=a.getPointAtLength(V-.1);D=Math.atan2(ne.y-oe.y,ne.x-oe.x),C=a.getPointAtLength(Math.max(0,V-_));var fe=W?T+_:_;W+=V-fe+"px,"+V+"px",t.style("stroke-dasharray",W)}function ve(){t.style("stroke-dasharray","0px,100px")}function Se(Me,Ae,we,Te){Me.path&&(Me.noRotate&&(we=0),cfe.select(a.parentNode).append("path").attr({class:t.attr("class"),d:Me.path,transform:pfe(Ae.x,Ae.y)+dfe(we*180/Math.PI)+vfe(Te)}).style({fill:hfe.rgb(i.arrowcolor),"stroke-width":0}))}v&&Se(l,S,E,h),m&&Se(s,C,D,f)}});var ub=pe((exe,QN)=>{"use strict";var XN=ja(),vT=sa(),mfe=eo(),Jh=Bt(),dT=Jh.strTranslate,Kg=Xi(),Nd=Oa(),Ec=xi(),jN=Rf(),pT=co(),mT=Oh(),Jg=Xl(),yfe=Ii().arrayEditor,gfe=WN();QN.exports={draw:_fe,drawOne:JN,drawRaw:KN};function _fe(e){var t=e._fullLayout;t._infolayer.selectAll(".annotation").remove();for(var r=0;r2/3?wt="right":wt="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[wt]}for(var vt=!1,de=["x","y"],De=0;De1)&&(dt===rt?(Et=We.r2fraction(t["a"+ge]),(Et<0||Et>1)&&(vt=!0)):vt=!0),Vt=We._offset+We.r2p(t[ge]),st=.5}else{var ct=Dr==="domain";ge==="x"?(Be=t[ge],Vt=ct?We._offset+We._length*Be:Vt=f.l+f.w*Be):(Be=1-t[ge],Vt=ct?We._offset+We._length*Be:Vt=f.t+f.h*Be),st=t.showarrow?.5:Be}if(t.showarrow){At.head=Vt;var pt=t["a"+ge];if(sr=Dt*bt(.5,t.xanchor)-Tt*bt(.5,t.yanchor),dt===rt){var Ot=Kg.getRefType(dt);Ot==="domain"?(ge==="y"&&(pt=1-pt),At.tail=We._offset+We._length*pt):Ot==="paper"?ge==="y"?(pt=1-pt,At.tail=f.t+f.h*pt):At.tail=f.l+f.w*pt:At.tail=We._offset+We.r2p(pt),Ht=sr}else At.tail=Vt+pt,Ht=sr+pt;At.text=At.tail+sr;var er=l[ge==="x"?"width":"height"];if(rt==="paper"&&(At.head=Jh.constrain(At.head,1,er-1)),dt==="pixel"){var Zt=-Math.max(At.tail-3,At.text),Kt=Math.min(At.tail+3,At.text)-er;Zt>0?(At.tail+=Zt,At.text+=Zt):Kt>0&&(At.tail-=Kt,At.text-=Kt)}At.tail+=Ct,At.head+=Ct}else sr=Rt*bt(st,Ut),Ht=sr,At.text=Vt+sr;At.text+=Ct,sr+=Ct,Ht+=Ct,t["_"+ge+"padplus"]=Rt/2+Ht,t["_"+ge+"padminus"]=Rt/2-Ht,t["_"+ge+"size"]=Rt,t["_"+ge+"shift"]=sr}if(vt){V.remove();return}var pr=0,yr=0;if(t.align!=="left"&&(pr=(Ye-at)*(t.align==="center"?.5:1)),t.valign!=="top"&&(yr=(St-gt)*(t.valign==="middle"?.5:1)),Ke)Le.select("svg").attr({x:te+pr-1,y:te+yr}).call(Ec.setClipUrl,oe?E:null,e);else{var ur=te+yr-lt.top,Lt=te+pr-lt.left;Me.call(pT.positionText,Lt,ur).call(Ec.setClipUrl,oe?E:null,e)}fe.select("rect").call(Ec.setRect,te,te,Ye,St),ne.call(Ec.setRect,W/2,W/2,it-W,mt-W),V.call(Ec.setTranslate,Math.round(D.x.text-it/2),Math.round(D.y.text-mt/2)),q.attr({transform:"rotate("+z+","+D.x.text+","+D.y.text+")"});var Fe=function(xt,wt){B.selectAll(".annotation-arrow-g").remove();var mr=D.x.head,Ar=D.y.head,Mr=D.x.tail+xt,Gr=D.y.tail+wt,pa=D.x.text+xt,Ca=D.y.text+wt,ii=Jh.rotationXYMatrix(z,pa,Ca),wi=Jh.apply2DTransform(ii),vi=Jh.apply2DTransform2(ii),Fi=+ne.attr("width"),Gi=+ne.attr("height"),hn=pa-.5*Fi,nn=hn+Fi,Ki=Ca-.5*Gi,ir=Ki+Gi,oi=[[hn,Ki,hn,ir],[hn,ir,nn,ir],[nn,ir,nn,Ki],[nn,Ki,hn,Ki]].map(vi);if(!oi.reduce(function(Ze,yt){return Ze^!!Jh.segmentsIntersect(mr,Ar,mr+1e6,Ar+1e6,yt[0],yt[1],yt[2],yt[3])},!1)){oi.forEach(function(Ze){var yt=Jh.segmentsIntersect(Mr,Gr,mr,Ar,Ze[0],Ze[1],Ze[2],Ze[3]);yt&&(Mr=yt.x,Gr=yt.y)});var Sa=t.arrowwidth,la=t.arrowcolor,Ci=t.arrowside,ma=B.append("g").style({opacity:Nd.opacity(la)}).classed("annotation-arrow-g",!0),se=ma.append("path").attr("d","M"+Mr+","+Gr+"L"+mr+","+Ar).style("stroke-width",Sa+"px").call(Nd.stroke,Nd.rgb(la));if(gfe(se,Ci,t),h.annotationPosition&&se.node().parentNode&&!i){var ee=mr,le=Ar;if(t.standoff){var ce=Math.sqrt(Math.pow(mr-Mr,2)+Math.pow(Ar-Gr,2));ee+=t.standoff*(Mr-mr)/ce,le+=t.standoff*(Gr-Ar)/ce}var Ee=ma.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(Mr-ee)+","+(Gr-le),transform:dT(ee,le)}).style("stroke-width",Sa+6+"px").call(Nd.stroke,"rgba(0,0,0,0)").call(Nd.fill,"rgba(0,0,0,0)"),Ne,$e;Jg.init({element:Ee.node(),gd:e,prepFn:function(){var Ze=Ec.getTranslate(V);Ne=Ze.x,$e=Ze.y,a&&a.autorange&&T(a._name+".autorange",!0),s&&s.autorange&&T(s._name+".autorange",!0)},moveFn:function(Ze,yt){var Pt=wi(Ne,$e),Ft=Pt[0]+Ze,tr=Pt[1]+yt;V.call(Ec.setTranslate,Ft,tr),S("x",jh(a,Ze,"x",f,t)),S("y",jh(s,yt,"y",f,t)),t.axref===t.xref&&S("ax",jh(a,Ze,"ax",f,t)),t.ayref===t.yref&&S("ay",jh(s,yt,"ay",f,t)),ma.attr("transform",dT(Ze,yt)),q.attr({transform:"rotate("+z+","+Ft+","+tr+")"})},doneFn:function(){vT.call("_guiRelayout",e,C());var Ze=document.querySelector(".js-notes-box-panel");Ze&&Ze.redraw(Ze.selectedObj)}})}}};if(t.showarrow&&Fe(0,0),I){var Ue;Jg.init({element:V.node(),gd:e,prepFn:function(){Ue=q.attr("transform")},moveFn:function(xt,wt){var mr="pointer";if(t.showarrow)t.axref===t.xref?S("ax",jh(a,xt,"ax",f,t)):S("ax",t.ax+xt),t.ayref===t.yref?S("ay",jh(s,wt,"ay",f.w,t)):S("ay",t.ay+wt),Fe(xt,wt);else{if(i)return;var Ar,Mr;if(a)Ar=jh(a,xt,"x",f,t);else{var Gr=t._xsize/f.w,pa=t.x+(t._xshift-t.xshift)/f.w-Gr/2;Ar=Jg.align(pa+xt/f.w,Gr,0,1,t.xanchor)}if(s)Mr=jh(s,wt,"y",f,t);else{var Ca=t._ysize/f.h,ii=t.y-(t._yshift+t.yshift)/f.h-Ca/2;Mr=Jg.align(ii-wt/f.h,Ca,0,1,t.yanchor)}S("x",Ar),S("y",Mr),(!a||!s)&&(mr=Jg.getCursor(a?.5:Ar,s?.5:Mr,t.xanchor,t.yanchor))}q.attr({transform:dT(xt,wt)+Ue}),mT(V,mr)},clickFn:function(xt,wt){t.captureevents&&e.emit("plotly_clickannotation",H(wt))},doneFn:function(){mT(V),vT.call("_guiRelayout",e,C());var xt=document.querySelector(".js-notes-box-panel");xt&&xt.redraw(xt.selectedObj)}})}}h.annotationText?Me.call(pT.makeEditable,{delegate:V,gd:e}).call(Ae).on("edit",function(Te){t.text=Te,this.call(Ae),S("text",Te),a&&a.autorange&&T(a._name+".autorange",!0),s&&s.autorange&&T(s._name+".autorange",!0),vT.call("_guiRelayout",e,C())}):Me.call(Ae)}});var iB=pe((txe,aB)=>{"use strict";var $N=Bt(),xfe=sa(),eB=Ii().arrayEditor;aB.exports={hasClickToShow:bfe,onClick:wfe};function bfe(e,t){var r=rB(e,t);return r.on.length>0||r.explicitOff.length>0}function wfe(e,t){var r=rB(e,t),i=r.on,a=r.off.concat(r.explicitOff),s={},l=e._fullLayout.annotations,f,h;if(i.length||a.length){for(f=0;f{"use strict";var yT=Bt(),fm=Oa();nB.exports=function(t,r,i,a){a("opacity");var s=a("bgcolor"),l=a("bordercolor"),f=fm.opacity(l);a("borderpad");var h=a("borderwidth"),v=a("showarrow");a("text",v?" ":i._dfltTitle.annotation),a("textangle"),yT.coerceFont(a,"font",i.font),a("width"),a("align");var m=a("height");if(m&&a("valign"),v){var _=a("arrowside"),T,S;_.indexOf("end")!==-1&&(T=a("arrowhead"),S=a("arrowsize")),_.indexOf("start")!==-1&&(a("startarrowhead",T),a("startarrowsize",S)),a("arrowcolor",f?r.bordercolor:fm.defaultLine),a("arrowwidth",(f&&h||1)*2),a("standoff"),a("startstandoff")}var C=a("hovertext"),E=i.hoverlabel||{};if(C){var D=a("hoverlabel.bgcolor",E.bgcolor||(fm.opacity(s)?fm.rgb(s):fm.defaultLine)),z=a("hoverlabel.bordercolor",E.bordercolor||fm.contrast(D)),B=yT.extendFlat({},E.font);B.color||(B.color=z),yT.coerceFont(a,"hoverlabel.font",B)}a("captureevents",!!C)}});var sB=pe((axe,oB)=>{"use strict";var _T=Bt(),Bd=Xi(),Tfe=Yl(),Afe=gT(),Mfe=tm();oB.exports=function(t,r){Tfe(t,r,{name:"annotations",handleItemDefaults:Sfe})};function Sfe(e,t,r){function i(q,I){return _T.coerce(e,t,Mfe,q,I)}var a=i("visible"),s=i("clicktoshow");if(a||s){Afe(e,t,r,i);for(var l=t.showarrow,f=["x","y"],h=[-10,-30],v={_fullLayout:r},m=0;m<2;m++){var _=f[m],T=Bd.coerceRef(e,t,v,_,"","paper");if(T!=="paper"){var S=Bd.getFromId(v,T);S._annIndices.push(t._index)}if(Bd.coercePosition(t,v,i,T,_,.5),l){var C="a"+_,E=Bd.coerceRef(e,t,v,C,"pixel",["pixel","paper"]);E!=="pixel"&&E!==T&&(E=t[C]="pixel");var D=E==="pixel"?h[m]:.4;Bd.coercePosition(t,v,i,E,C,D)}i(_+"anchor"),i(_+"shift")}if(_T.noneOrAll(e,t,["x","y"]),l&&_T.noneOrAll(e,t,["ax","ay"]),s){var z=i("xclick"),B=i("yclick");t._xclick=z===void 0?t.x:Bd.cleanPosition(z,v,t.xref),t._yclick=B===void 0?t.y:Bd.cleanPosition(B,v,t.yref)}}}});var fB=pe((ixe,uB)=>{"use strict";var xT=Bt(),Od=Xi(),kfe=ub().draw;uB.exports=function(t){var r=t._fullLayout,i=xT.filterVisible(r.annotations);if(i.length&&t._fullData.length)return xT.syncOrAsync([kfe,Cfe],t)};function Cfe(e){var t=e._fullLayout;xT.filterVisible(t.annotations).forEach(function(r){var i=Od.getFromId(e,r.xref),a=Od.getFromId(e,r.yref),s=Od.getRefType(r.xref),l=Od.getRefType(r.yref);r._extremes={},s==="range"&&lB(r,i),l==="range"&&lB(r,a)})}function lB(e,t){var r=t._id,i=r.charAt(0),a=e[i],s=e["a"+i],l=e[i+"ref"],f=e["a"+i+"ref"],h=e["_"+i+"padplus"],v=e["_"+i+"padminus"],m={x:1,y:-1}[i]*e[i+"shift"],_=3*e.arrowsize*e.arrowwidth||0,T=_+m,S=_-m,C=3*e.startarrowsize*e.arrowwidth||0,E=C+m,D=C-m,z;if(f===l){var B=Od.findExtremes(t,[t.r2c(a)],{ppadplus:T,ppadminus:S}),q=Od.findExtremes(t,[t.r2c(s)],{ppadplus:Math.max(h,E),ppadminus:Math.max(v,D)});z={min:[B.min[0],q.min[0]],max:[B.max[0],q.max[0]]}}else E=s?E+s:E,D=s?D-s:D,z=Od.findExtremes(t,[t.r2c(a)],{ppadplus:Math.max(h,T,E),ppadminus:Math.max(v,S,D)});e._extremes[r]=z}});var hB=pe((nxe,cB)=>{"use strict";var Efe=Da(),Lfe=r_();cB.exports=function(t,r,i,a){r=r||{};var s=i==="log"&&r.type==="linear",l=i==="linear"&&r.type==="log";if(!(s||l))return;var f=t._fullLayout.annotations,h=r._id.charAt(0),v,m;function _(S){var C=v[S],E=null;s?E=Lfe(C,r.range):E=Math.pow(10,C),Efe(E)||(E=null),a(m+S,E)}for(var T=0;T{"use strict";var bT=ub(),vB=iB();dB.exports={moduleType:"component",name:"annotations",layoutAttributes:tm(),supplyLayoutDefaults:sB(),includeBasePlot:Dg()("annotations"),calcAutorange:fB(),draw:bT.draw,drawOne:bT.drawOne,drawRaw:bT.drawRaw,hasClickToShow:vB.hasClickToShow,onClick:vB.onClick,convertCoords:hB()}});var fb=pe((sxe,mB)=>{"use strict";var Oi=tm(),Dfe=il().overrideAll,Pfe=Ii().templatedArray;mB.exports=Dfe(Pfe("annotation",{visible:Oi.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:Oi.xanchor,xshift:Oi.xshift,yanchor:Oi.yanchor,yshift:Oi.yshift,text:Oi.text,textangle:Oi.textangle,font:Oi.font,width:Oi.width,height:Oi.height,opacity:Oi.opacity,align:Oi.align,valign:Oi.valign,bgcolor:Oi.bgcolor,bordercolor:Oi.bordercolor,borderpad:Oi.borderpad,borderwidth:Oi.borderwidth,showarrow:Oi.showarrow,arrowcolor:Oi.arrowcolor,arrowhead:Oi.arrowhead,startarrowhead:Oi.startarrowhead,arrowside:Oi.arrowside,arrowsize:Oi.arrowsize,startarrowsize:Oi.startarrowsize,arrowwidth:Oi.arrowwidth,standoff:Oi.standoff,startstandoff:Oi.startstandoff,hovertext:Oi.hovertext,hoverlabel:Oi.hoverlabel,captureevents:Oi.captureevents}),"calc","from-root")});var gB=pe((lxe,yB)=>{"use strict";var wT=Bt(),zfe=Xi(),Ife=Yl(),Rfe=gT(),Ffe=fb();yB.exports=function(t,r,i){Ife(t,r,{name:"annotations",handleItemDefaults:qfe,fullLayout:i.fullLayout})};function qfe(e,t,r,i){function a(f,h){return wT.coerce(e,t,Ffe,f,h)}function s(f){var h=f+"axis",v={_fullLayout:{}};return v._fullLayout[h]=r[h],zfe.coercePosition(t,v,a,f,f,.5)}var l=a("visible");l&&(Rfe(e,t,i.fullLayout,a),s("x"),s("y"),s("z"),wT.noneOrAll(e,t,["x","y","z"]),t.xref="x",t.yref="y",t.zref="z",a("xanchor"),a("yanchor"),a("xshift"),a("yshift"),t.showarrow&&(t.axref="pixel",t.ayref="pixel",a("ax",-10),a("ay",-30),wT.noneOrAll(e,t,["ax","ay"])))}});var wB=pe((uxe,bB)=>{"use strict";var _B=Bt(),xB=Xi();bB.exports=function(t){for(var r=t.fullSceneLayout,i=r.annotations,a=0;a{"use strict";function TT(e,t){var r=[0,0,0,0],i,a;for(i=0;i<4;++i)for(a=0;a<4;++a)r[a]+=e[4*i+a]*t[i];return r}function Bfe(e,t){var r=TT(e.projection,TT(e.view,TT(e.model,[t[0],t[1],t[2],1])));return r}TB.exports=Bfe});var SB=pe((cxe,MB)=>{"use strict";var Ofe=ub().drawRaw,Ufe=AB(),Vfe=["x","y","z"];MB.exports=function(t){for(var r=t.fullSceneLayout,i=t.dataScale,a=r.annotations,s=0;s1){f=!0;break}}f?t.fullLayout._infolayer.select(".annotation-"+t.id+'[data-index="'+s+'"]').remove():(l._pdata=Ufe(t.glplot.cameraParams,[r.xaxis.r2l(l.x)*i[0],r.yaxis.r2l(l.y)*i[1],r.zaxis.r2l(l.z)*i[2]]),Ofe(t.graphDiv,l,s,t.id,l._xa,l._ya))}}});var EB=pe((hxe,CB)=>{"use strict";var Hfe=sa(),kB=Bt();CB.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:fb()}}},layoutAttributes:fb(),handleDefaults:gB(),includeBasePlot:Gfe,convert:wB(),draw:SB()};function Gfe(e,t){var r=Hfe.subplotsRegistry.gl3d;if(r)for(var i=r.attrRegex,a=Object.keys(e),s=0;s{"use strict";var LB=tm(),DB=qo(),PB=kc().line,Zfe=hc().dash,Hu=mn().extendFlat,Yfe=Ii().templatedArray,vxe=Lg(),cm=ys(),{shapeTexttemplateAttrs:Wfe,templatefallbackAttrs:Xfe}=Mf(),jfe=v_();zB.exports=Yfe("shape",{visible:Hu({},cm.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:Hu({},cm.legend,{editType:"calc+arraydraw"}),legendgroup:Hu({},cm.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:Hu({},cm.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:DB({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:Hu({},cm.legendrank,{editType:"calc+arraydraw"}),legendwidth:Hu({},cm.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:Hu({},LB.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:Hu({},LB.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:Hu({},PB.color,{editType:"arraydraw"}),width:Hu({},PB.width,{editType:"calc+arraydraw"}),dash:Hu({},Zfe,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:Wfe({},{keys:Object.keys(jfe)}),texttemplatefallback:Xfe({editType:"arraydraw"}),font:DB({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var FB=pe((pxe,RB)=>{"use strict";var Qg=Bt(),hm=Xi(),Jfe=Yl(),Kfe=AT(),IB=Hh();RB.exports=function(t,r){Jfe(t,r,{name:"shapes",handleItemDefaults:$fe})};function Qfe(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}function $fe(e,t,r){function i(Te,Ce){return Qg.coerce(e,t,Kfe,Te,Ce)}t._isShape=!0;var a=i("visible");if(a){var s=i("showlegend");s&&(i("legend"),i("legendwidth"),i("legendgroup"),i("legendgrouptitle.text"),Qg.coerceFont(i,"legendgrouptitle.font"),i("legendrank"));var l=i("path"),f=l?"path":"rect",h=i("type",f),v=h!=="path";v&&delete t.path,i("editable"),i("layer"),i("opacity"),i("fillcolor"),i("fillrule");var m=i("line.width");m&&(i("line.color"),i("line.dash"));for(var _=i("xsizemode"),T=i("ysizemode"),S=["x","y"],C=0;C<2;C++){var E=S[C],D=E+"anchor",z=E==="x"?_:T,B={_fullLayout:r},q,I,O,H=hm.coerceRef(e,t,B,E,void 0,"paper"),V=hm.getRefType(H);if(V==="range"?(q=hm.getFromId(B,H),q._shapeIndices.push(t._index),O=IB.rangeToShapePosition(q),I=IB.shapePositionToRange(q),(q.type==="category"||q.type==="multicategory")&&(i(E+"0shift"),i(E+"1shift"))):I=O=Qg.identity,v){var W=.25,J=.75,te=E+"0",ne=E+"1",oe=e[te],fe=e[ne];e[te]=I(e[te],!0),e[ne]=I(e[ne],!0),z==="pixel"?(i(te,0),i(ne,10)):(hm.coercePosition(t,B,i,H,te,W),hm.coercePosition(t,B,i,H,ne,J)),t[te]=O(t[te]),t[ne]=O(t[ne]),e[te]=oe,e[ne]=fe}if(z==="pixel"){var ve=e[D];e[D]=I(e[D],!0),hm.coercePosition(t,B,i,H,D,.25),t[D]=O(t[D]),e[D]=ve}}v&&Qg.noneOrAll(e,t,["x0","x1","y0","y1"]);var Se=h==="line",Me,Ae;if(v&&(Me=i("label.texttemplate"),i("label.texttemplatefallback")),Me||(Ae=i("label.text")),Ae||Me){i("label.textangle");var we=i("label.textposition",Se?"middle":"middle center");i("label.xanchor"),i("label.yanchor",Qfe(Se,we)),i("label.padding"),Qg.coerceFont(i,"label.font",r.font)}}}});var BB=pe((mxe,NB)=>{"use strict";var ece=Oa(),qB=Bt();function tce(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}NB.exports=function(t,r,i){i("newshape.visible"),i("newshape.name"),i("newshape.showlegend"),i("newshape.legend"),i("newshape.legendwidth"),i("newshape.legendgroup"),i("newshape.legendgrouptitle.text"),qB.coerceFont(i,"newshape.legendgrouptitle.font"),i("newshape.legendrank"),i("newshape.drawdirection"),i("newshape.layer"),i("newshape.fillcolor"),i("newshape.fillrule"),i("newshape.opacity");var a=i("newshape.line.width");if(a){var s=(t||{}).plot_bgcolor||"#FFF";i("newshape.line.color",ece.contrast(s)),i("newshape.line.dash")}var l=t.dragmode==="drawline",f=i("newshape.label.text"),h=i("newshape.label.texttemplate");if(i("newshape.label.texttemplatefallback"),f||h){i("newshape.label.textangle");var v=i("newshape.label.textposition",l?"middle":"middle center");i("newshape.label.xanchor"),i("newshape.label.yanchor",tce(l,v)),i("newshape.label.padding"),qB.coerceFont(i,"newshape.label.font",r.font)}i("activeshape.fillcolor"),i("activeshape.opacity")}});var GB=pe((yxe,HB)=>{"use strict";var MT=Bt(),vm=Xi(),dm=fg(),UB=Hh();HB.exports=function(t){var r=t._fullLayout,i=MT.filterVisible(r.shapes);if(!(!i.length||!t._fullData.length))for(var a=0;a0?v+l:l;return{ppad:l,ppadplus:f?_:T,ppadminus:f?T:_}}else return{ppad:l}}function OB(e,t,r){var i=e._id.charAt(0)==="x"?"x":"y",a=e.type==="category"||e.type==="multicategory",s,l,f=0,h=0,v=a?e.r2c:e.d2c,m=t[i+"sizemode"]==="scaled";if(m?(s=t[i+"0"],l=t[i+"1"],a&&(f=t[i+"0shift"],h=t[i+"1shift"])):(s=t[i+"anchor"],l=t[i+"anchor"]),s!==void 0)return[v(s)+f,v(l)+h];if(t.path){var _=1/0,T=-1/0,S=t.path.match(dm.segmentRE),C,E,D,z,B;for(e.type==="date"&&(v=UB.decodeDate(v)),C=0;CT&&(T=B)));if(T>=_)return[_,T]}}});var WB=pe((gxe,YB)=>{"use strict";var ZB=$2();YB.exports={moduleType:"component",name:"shapes",layoutAttributes:AT(),supplyLayoutDefaults:FB(),supplyDrawNewShapeDefaults:BB(),includeBasePlot:Dg()("shapes"),calcAutorange:GB(),draw:ZB.draw,drawOne:ZB.drawOne}});var ST=pe((xxe,jB)=>{"use strict";var XB=Ao(),ice=Ii().templatedArray,_xe=Lg();jB.exports=ice("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",XB.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",XB.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var KB=pe((bxe,JB)=>{"use strict";var nce=Bt(),kT=Xi(),oce=Yl(),sce=ST(),lce="images";JB.exports=function(t,r){var i={name:lce,handleItemDefaults:uce};oce(t,r,i)};function uce(e,t,r){function i(T,S){return nce.coerce(e,t,sce,T,S)}var a=i("source"),s=i("visible",!!a);if(!s)return t;i("layer"),i("xanchor"),i("yanchor"),i("sizex"),i("sizey"),i("sizing"),i("opacity");for(var l={_fullLayout:r},f=["x","y"],h=0;h<2;h++){var v=f[h],m=kT.coerceRef(e,t,l,v,"paper",void 0);if(m!=="paper"){var _=kT.getFromId(l,m);_._imgIndices.push(t._index)}kT.coercePosition(t,l,i,m,v,0)}return t}});var tO=pe((wxe,eO)=>{"use strict";var QB=ja(),fce=xi(),pm=Xi(),$B=Xn(),cce=zh();eO.exports=function(t){var r=t._fullLayout,i=[],a={},s=[],l,f;for(f=0;f{"use strict";var rO=Da(),hce=r_();aO.exports=function(t,r,i,a){r=r||{};var s=i==="log"&&r.type==="linear",l=i==="linear"&&r.type==="log";if(s||l){for(var f=t._fullLayout.images,h=r._id.charAt(0),v,m,_=0;_{"use strict";nO.exports={moduleType:"component",name:"images",layoutAttributes:ST(),supplyLayoutDefaults:KB(),includeBasePlot:Dg()("images"),draw:tO(),convertCoords:iO()}});var cb=pe((Mxe,sO)=>{"use strict";sO.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var CT=pe((Sxe,uO)=>{"use strict";var vce=qo(),dce=Tf(),pce=mn().extendFlat,mce=il().overrideAll,yce=d_(),lO=Ii().templatedArray,gce=lO("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});uO.exports=mce(lO("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:gce,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:pce(yce({editType:"arraydraw"}),{}),font:vce({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:dce.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var vO=pe((kxe,hO)=>{"use strict";var hb=Bt(),fO=Yl(),cO=CT(),_ce=cb(),xce=_ce.name,bce=cO.buttons;hO.exports=function(t,r){var i={name:xce,handleItemDefaults:wce};fO(t,r,i)};function wce(e,t,r){function i(l,f){return hb.coerce(e,t,cO,l,f)}var a=fO(e,t,{name:"buttons",handleItemDefaults:Tce}),s=i("visible",a.length>0);s&&(i("active"),i("direction"),i("type"),i("showactive"),i("x"),i("y"),hb.noneOrAll(e,t,["x","y"]),i("xanchor"),i("yanchor"),i("pad.t"),i("pad.r"),i("pad.b"),i("pad.l"),hb.coerceFont(i,"font",r.font),i("bgcolor",r.paper_bgcolor),i("bordercolor"),i("borderwidth"))}function Tce(e,t){function r(a,s){return hb.coerce(e,t,bce,a,s)}var i=r("visible",e.method==="skip"||Array.isArray(e.args));i&&(r("method"),r("args"),r("args2"),r("label"),r("execute"))}});var mO=pe((Cxe,pO)=>{"use strict";pO.exports=an;var Gu=ja(),dO=Oa(),mm=xi(),vb=Bt();function an(e,t,r){this.gd=e,this.container=t,this.id=r,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}an.barWidth=2;an.barLength=20;an.barRadius=2;an.barPad=1;an.barColor="#808BA4";an.prototype.enable=function(t,r,i){var a=this.gd._fullLayout,s=a.width,l=a.height;this.position=t;var f=this.position.l,h=this.position.w,v=this.position.t,m=this.position.h,_=this.position.direction,T=_==="down",S=_==="left",C=_==="right",E=_==="up",D=h,z=m,B,q,I,O;!T&&!S&&!C&&!E&&(this.position.direction="down",T=!0);var H=T||E;H?(B=f,q=B+D,T?(I=v,O=Math.min(I+z,l),z=O-I):(O=v+z,I=Math.max(O-z,0),z=O-I)):(I=v,O=I+z,S?(q=f+D,B=Math.max(q-D,0),D=q-B):(B=f,q=Math.min(B+D,s),D=q-B)),this._box={l:B,t:I,w:D,h:z};var V=h>D,W=an.barLength+2*an.barPad,J=an.barWidth+2*an.barPad,te=f,ne=v+m;ne+J>l&&(ne=l-J);var oe=this.container.selectAll("rect.scrollbar-horizontal").data(V?[0]:[]);oe.exit().on(".drag",null).remove(),oe.enter().append("rect").classed("scrollbar-horizontal",!0).call(dO.fill,an.barColor),V?(this.hbar=oe.attr({rx:an.barRadius,ry:an.barRadius,x:te,y:ne,width:W,height:J}),this._hbarXMin=te+W/2,this._hbarTranslateMax=D-W):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var fe=m>z,ve=an.barWidth+2*an.barPad,Se=an.barLength+2*an.barPad,Me=f+h,Ae=v;Me+ve>s&&(Me=s-ve);var we=this.container.selectAll("rect.scrollbar-vertical").data(fe?[0]:[]);we.exit().on(".drag",null).remove(),we.enter().append("rect").classed("scrollbar-vertical",!0).call(dO.fill,an.barColor),fe?(this.vbar=we.attr({rx:an.barRadius,ry:an.barRadius,x:Me,y:Ae,width:ve,height:Se}),this._vbarYMin=Ae+Se/2,this._vbarTranslateMax=z-Se):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var Te=this.id,Ce=B-.5,Le=fe?q+ve+.5:q+.5,Ke=I-.5,lt=V?O+J+.5:O+.5,at=a._topdefs.selectAll("#"+Te).data(V||fe?[0]:[]);if(at.exit().remove(),at.enter().append("clipPath").attr("id",Te).append("rect"),V||fe?(this._clipRect=at.select("rect").attr({x:Math.floor(Ce),y:Math.floor(Ke),width:Math.ceil(Le)-Math.floor(Ce),height:Math.ceil(lt)-Math.floor(Ke)}),this.container.call(mm.setClipUrl,Te,this.gd),this.bg.attr({x:f,y:v,width:h,height:m})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(mm.setClipUrl,null),delete this._clipRect),V||fe){var gt=Gu.behavior.drag().on("dragstart",function(){Gu.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(gt);var Ye=Gu.behavior.drag().on("dragstart",function(){Gu.event.sourceEvent.preventDefault(),Gu.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));V&&this.hbar.on(".drag",null).call(Ye),fe&&this.vbar.on(".drag",null).call(Ye)}this.setTranslate(r,i)};an.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(mm.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};an.prototype._onBoxDrag=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t-=Gu.event.dx),this.vbar&&(r-=Gu.event.dy),this.setTranslate(t,r)};an.prototype._onBoxWheel=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t+=Gu.event.deltaY),this.vbar&&(r+=Gu.event.deltaY),this.setTranslate(t,r)};an.prototype._onBarDrag=function(){var t=this.translateX,r=this.translateY;if(this.hbar){var i=t+this._hbarXMin,a=i+this._hbarTranslateMax,s=vb.constrain(Gu.event.x,i,a),l=(s-i)/(a-i),f=this.position.w-this._box.w;t=l*f}if(this.vbar){var h=r+this._vbarYMin,v=h+this._vbarTranslateMax,m=vb.constrain(Gu.event.y,h,v),_=(m-h)/(v-h),T=this.position.h-this._box.h;r=_*T}this.setTranslate(t,r)};an.prototype.setTranslate=function(t,r){var i=this.position.w-this._box.w,a=this.position.h-this._box.h;if(t=vb.constrain(t||0,0,i),r=vb.constrain(r||0,0,a),this.translateX=t,this.translateY=r,this.container.call(mm.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-r),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+r-.5)}),this.hbar){var s=t/i;this.hbar.call(mm.setTranslate,t+s*this._hbarTranslateMax,r)}if(this.vbar){var l=r/a;this.vbar.call(mm.setTranslate,t,r+l*this._vbarTranslateMax)}}});var SO=pe((Exe,MO)=>{"use strict";var ym=ja(),$g=eo(),e1=Oa(),gm=xi(),hl=Bt(),db=co(),Ace=Ii().arrayEditor,gO=ts().LINE_SPACING,ra=cb(),Mce=mO();MO.exports=function(t){var r=t._fullLayout,i=hl.filterVisible(r[ra.name]);function a(T){$g.autoMargin(t,TO(T))}var s=r._menulayer.selectAll("g."+ra.containerClassName).data(i.length>0?[0]:[]);if(s.enter().append("g").classed(ra.containerClassName,!0).style("cursor","pointer"),s.exit().each(function(){ym.select(this).selectAll("g."+ra.headerGroupClassName).each(a)}).remove(),i.length!==0){var l=s.selectAll("g."+ra.headerGroupClassName).data(i,Sce);l.enter().append("g").classed(ra.headerGroupClassName,!0);for(var f=hl.ensureSingle(s,"g",ra.dropdownButtonGroupClassName,function(T){T.style("pointer-events","all")}),h=0;h{"use strict";var zce=cb();kO.exports={moduleType:"component",name:zce.name,layoutAttributes:CT(),supplyLayoutDefaults:vO(),draw:SO()}});var r1=pe((Dxe,EO)=>{"use strict";EO.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var PT=pe((Pxe,PO)=>{"use strict";var LO=qo(),Ice=d_(),Rce=mn().extendDeepAll,Fce=il().overrideAll,qce=Ry(),DO=Ii().templatedArray,Ud=r1(),Nce=DO("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});PO.exports=Fce(DO("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:Nce,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:Rce(Ice({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:qce.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:LO({})},font:LO({}),activebgcolor:{valType:"color",dflt:Ud.gripBgActiveColor},bgcolor:{valType:"color",dflt:Ud.railBgColor},bordercolor:{valType:"color",dflt:Ud.railBorderColor},borderwidth:{valType:"number",min:0,dflt:Ud.railBorderWidth},ticklen:{valType:"number",min:0,dflt:Ud.tickLength},tickcolor:{valType:"color",dflt:Ud.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:Ud.minorTickLength}}),"arraydraw","from-root")});var FO=pe((zxe,RO)=>{"use strict";var _m=Bt(),zO=Yl(),IO=PT(),Bce=r1(),Oce=Bce.name,Uce=IO.steps;RO.exports=function(t,r){zO(t,r,{name:Oce,handleItemDefaults:Vce})};function Vce(e,t,r){function i(_,T){return _m.coerce(e,t,IO,_,T)}for(var a=zO(e,t,{name:"steps",handleItemDefaults:Hce}),s=0,l=0;l{"use strict";var Zu=ja(),pb=eo(),Kh=Oa(),Yu=xi(),vl=Bt(),Gce=vl.strTranslate,a1=co(),Zce=Ii().arrayEditor,xa=r1(),RT=ts(),BO=RT.LINE_SPACING,zT=RT.FROM_TL,IT=RT.FROM_BR;ZO.exports=function(t){var r=t._context.staticPlot,i=t._fullLayout,a=Yce(i,t),s=i._infolayer.selectAll("g."+xa.containerClassName).data(a.length>0?[0]:[]);s.enter().append("g").classed(xa.containerClassName,!0).style("cursor",r?null:"ew-resize");function l(m){m._commandObserver&&(m._commandObserver.remove(),delete m._commandObserver),pb.autoMargin(t,OO(m))}if(s.exit().each(function(){Zu.select(this).selectAll("g."+xa.groupClassName).each(l)}).remove(),a.length!==0){var f=s.selectAll("g."+xa.groupClassName).data(a,Wce);f.enter().append("g").classed(xa.groupClassName,!0),f.exit().each(l).remove();for(var h=0;h0&&(f=f.transition().duration(t.transition.duration).ease(t.transition.easing)),f.attr("transform",Gce(l-xa.gripWidth*.5,t._dims.currentValueTotalHeight))}}function FT(e,t){var r=e._dims;return r.inputAreaStart+xa.stepInset+(r.inputAreaLength-2*xa.stepInset)*Math.min(1,Math.max(0,t))}function NO(e,t){var r=e._dims;return Math.min(1,Math.max(0,(t-xa.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*xa.stepInset-2*r.inputAreaStart)))}function ehe(e,t,r){var i=r._dims,a=vl.ensureSingle(e,"rect",xa.railTouchRectClass,function(s){s.call(HO,t,e,r).style("pointer-events","all")});a.attr({width:i.inputAreaLength,height:Math.max(i.inputAreaWidth,xa.tickOffset+r.ticklen+i.labelHeight)}).call(Kh.fill,r.bgcolor).attr("opacity",0),Yu.setTranslate(a,0,i.currentValueTotalHeight)}function the(e,t){var r=t._dims,i=r.inputAreaLength-xa.railInset*2,a=vl.ensureSingle(e,"rect",xa.railRectClass);a.attr({width:i,height:xa.railWidth,rx:xa.railRadius,ry:xa.railRadius,"shape-rendering":"crispEdges"}).call(Kh.stroke,t.bordercolor).call(Kh.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px"),Yu.setTranslate(a,xa.railInset,(r.inputAreaWidth-xa.railWidth)*.5+r.currentValueTotalHeight)}});var XO=pe((Rxe,WO)=>{"use strict";var rhe=r1();WO.exports={moduleType:"component",name:rhe.name,layoutAttributes:PT(),supplyLayoutDefaults:FO(),draw:YO()}});var yb=pe((Fxe,JO)=>{"use strict";var jO=Tf();JO.exports={bgcolor:{valType:"color",dflt:jO.background,editType:"plot"},bordercolor:{valType:"color",dflt:jO.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var qT=pe((qxe,KO)=>{"use strict";KO.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var gb=pe((Nxe,QO)=>{"use strict";QO.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var tU=pe(xb=>{"use strict";var ahe=Xn(),ihe=co(),$O=gb(),nhe=ts().LINE_SPACING,_b=$O.name;function eU(e){var t=e&&e[_b];return t&&t.visible}xb.isVisible=eU;xb.makeData=function(e){for(var t=ahe.list({_fullLayout:e},"x",!0),r=e.margin,i=[],a=0;a{"use strict";var bb=Bt(),rU=Ii(),aU=Xn(),ohe=yb(),she=qT();iU.exports=function(t,r,i){var a=t[i],s=r[i];if(!(a.rangeslider||r._requestRangeslider[s._id]))return;bb.isPlainObject(a.rangeslider)||(a.rangeslider={});var l=a.rangeslider,f=rU.newContainer(s,"rangeslider");function h(O,H){return bb.coerce(l,f,ohe,O,H)}var v,m;function _(O,H){return bb.coerce(v,m,she,O,H)}var T=h("visible");if(T){h("bgcolor",r.plot_bgcolor),h("bordercolor"),h("borderwidth"),h("thickness"),h("autorange",!s.isValidRange(l.range)),h("range");var S=r._subplots;if(S)for(var C=S.cartesian.filter(function(O){return O.substr(0,O.indexOf("y"))===aU.name2id(i)}).map(function(O){return O.substr(O.indexOf("y"),O.length)}),E=bb.simpleMap(C,aU.id2name),D=0;D{"use strict";var lhe=Xn().list,uhe=$y().getAutoRange,fhe=gb();oU.exports=function(t){for(var r=lhe(t,"x",!0),i=0;i{"use strict";var wb=ja(),che=sa(),hhe=eo(),_n=Bt(),Tb=_n.strTranslate,uU=xi(),Qh=Oa(),vhe=Ky(),dhe=cT(),NT=Xn(),phe=Xl(),mhe=Oh(),Ia=gb();fU.exports=function(e){for(var t=e._fullLayout,r=t._rangeSliderData,i=0;i=we.max)Me=ne[Ae+1];else if(Se=we.pmax)Me=ne[Ae+1];else if(Se0?e.touches[0].clientX:0}function yhe(e,t,r,i){if(t._context.staticPlot)return;var a=e.select("rect."+Ia.slideBoxClassName).node(),s=e.select("rect."+Ia.grabAreaMinClassName).node(),l=e.select("rect."+Ia.grabAreaMaxClassName).node();function f(){var h=wb.event,v=h.target,m=lU(h),_=m-e.node().getBoundingClientRect().left,T=i.d2p(r._rl[0]),S=i.d2p(r._rl[1]),C=phe.coverSlip();this.addEventListener("touchmove",E),this.addEventListener("touchend",D),C.addEventListener("mousemove",E),C.addEventListener("mouseup",D);function E(z){var B=lU(z),q=+B-m,I,O,H;switch(v){case a:if(H="ew-resize",T+q>r._length||S+q<0)return;I=T+q,O=S+q;break;case s:if(H="col-resize",T+q>r._length)return;I=T+q,O=S;break;case l:if(H="col-resize",S+q<0)return;I=T,O=S+q;break;default:H="ew-resize",I=_,O=_+q;break}if(O{"use strict";var khe=Bt(),Che=yb(),Ehe=qT(),BT=tU();hU.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:khe.extendFlat({},Che,{yaxis:Ehe})}}},layoutAttributes:yb(),handleDefaults:nU(),calcAutorange:sU(),draw:cU(),isVisible:BT.isVisible,makeData:BT.makeData,autoMarginOpts:BT.autoMarginOpts}});var Ab=pe((Gxe,pU)=>{"use strict";var Lhe=qo(),dU=Tf(),Dhe=Ii().templatedArray,Phe=Dhe("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});pU.exports={visible:{valType:"boolean",editType:"plot"},buttons:Phe,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:Lhe({editType:"plot"}),bgcolor:{valType:"color",dflt:dU.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:dU.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var OT=pe((Zxe,mU)=>{"use strict";mU.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var _U=pe((Yxe,gU)=>{"use strict";var Mb=Bt(),zhe=Oa(),Ihe=Ii(),Rhe=Yl(),yU=Ab(),UT=OT();gU.exports=function(t,r,i,a,s){var l=t.rangeselector||{},f=Ihe.newContainer(r,"rangeselector");function h(S,C){return Mb.coerce(l,f,yU,S,C)}var v=Rhe(l,f,{name:"buttons",handleItemDefaults:Fhe,calendar:s}),m=h("visible",v.length>0);if(m){var _=qhe(r,i,a);h("x",_[0]),h("y",_[1]),Mb.noneOrAll(t,r,["x","y"]),h("xanchor"),h("yanchor"),Mb.coerceFont(h,"font",i.font);var T=h("bgcolor");h("activecolor",zhe.contrast(T,UT.lightAmount,UT.darkAmount)),h("bordercolor"),h("borderwidth")}};function Fhe(e,t,r,i){var a=i.calendar;function s(h,v){return Mb.coerce(e,t,yU.buttons,h,v)}var l=s("visible");if(l){var f=s("step");f!=="all"&&(a&&a!=="gregorian"&&(f==="month"||f==="year")?t.stepmode="backward":s("stepmode"),s("count")),s("label")}}function qhe(e,t,r){for(var i=r.filter(function(f){return t[f].anchor===e._id}),a=0,s=0;s{"use strict";var Nhe=O3(),Bhe=Bt().titleCase;xU.exports=function(t,r){var i=t._name,a={};if(r.step==="all")a[i+".autorange"]=!0;else{var s=Ohe(t,r);a[i+".range[0]"]=s[0],a[i+".range[1]"]=s[1]}return a};function Ohe(e,t){var r=e.range,i=new Date(e.r2l(r[1])),a=t.step,s=Nhe["utc"+Bhe(a)],l=t.count,f;switch(t.stepmode){case"backward":f=e.l2r(+s.offset(i,-l));break;case"todate":var h=s.offset(i,-l);f=e.l2r(+s.ceil(h));break}var v=r[1];return[f,v]}});var EU=pe((Xxe,CU)=>{"use strict";var kb=ja(),Uhe=sa(),Vhe=eo(),wU=Oa(),kU=xi(),Lc=Bt(),TU=Lc.strTranslate,Sb=co(),Hhe=Xn(),GT=ts(),AU=GT.LINE_SPACING,MU=GT.FROM_TL,SU=GT.FROM_BR,HT=OT(),Ghe=bU();CU.exports=function(t){var r=t._fullLayout,i=r._infolayer.selectAll(".rangeselector").data(Zhe(t),Yhe);i.enter().append("g").classed("rangeselector",!0),i.exit().remove(),i.style({cursor:"pointer","pointer-events":"all"}),i.each(function(a){var s=kb.select(this),l=a,f=l.rangeselector,h=s.selectAll("g.button").data(Lc.filterVisible(f.buttons));h.enter().append("g").classed("button",!0),h.exit().remove(),h.each(function(v){var m=kb.select(this),_=Ghe(l,v);v._isActive=Whe(l,v,_),m.call(VT,f,v),m.call(jhe,f,v,t),m.on("click",function(){t._dragged||Uhe.call("_guiRelayout",t,_)}),m.on("mouseover",function(){v._isHovered=!0,m.call(VT,f,v)}),m.on("mouseout",function(){v._isHovered=!1,m.call(VT,f,v)})}),Khe(t,h,f,l._name,s)})};function Zhe(e){for(var t=Hhe.list(e,"x",!0),r=[],i=0;i{"use strict";LU.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:Ab()}}},layoutAttributes:Ab(),handleDefaults:_U(),draw:EU()}});var Cb=pe(ZT=>{"use strict";var PU=mn().extendFlat;ZT.attributes=function(e,t){e=e||{},t=t||{};var r={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},i=e.name?e.name+" ":"",a=e.trace?"trace ":"subplot ",s=t.description?" "+t.description:"",l={x:PU({},r,{}),y:PU({},r,{}),editType:e.editType};return e.noGridCell||(l.row={valType:"integer",min:0,dflt:0,editType:e.editType},l.column={valType:"integer",min:0,dflt:0,editType:e.editType}),l};ZT.defaults=function(e,t,r,i){var a=i&&i.x||[0,1],s=i&&i.y||[0,1],l=t.grid;if(l){var f=r("domain.column");f!==void 0&&(f{"use strict";var Qhe=Bt(),$he=h0().counter,eve=Cb().attributes,zU=Ao().idRegex,tve=Ii(),YT={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[$he("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[zU.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[zU.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:eve({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function Eb(e,t,r){var i=t[r+"axes"],a=Object.keys((e._splomAxes||{})[r]||{});if(Array.isArray(i))return i;if(a.length)return a}function rve(e,t){var r=e.grid||{},i=Eb(t,r,"x"),a=Eb(t,r,"y");if(!e.grid&&!i&&!a)return;var s=Array.isArray(r.subplots)&&Array.isArray(r.subplots[0]),l=Array.isArray(i),f=Array.isArray(a),h=l&&i!==r.xaxes&&f&&a!==r.yaxes,v,m;s?(v=r.subplots.length,m=r.subplots[0].length):(f&&(v=a.length),l&&(m=i.length));var _=tve.newContainer(t,"grid");function T(H,V){return Qhe.coerce(r,_,YT,H,V)}var S=T("rows",v),C=T("columns",m);if(!(S*C>1)){delete t.grid;return}if(!s&&!l&&!f){var E=T("pattern")==="independent";E&&(s=!0)}_._hasSubplotGrid=s;var D=T("roworder"),z=D==="top to bottom",B=s?.2:.1,q=s?.3:.1,I,O;h&&t._splomGridDflt&&(I=t._splomGridDflt.xside,O=t._splomGridDflt.yside),_._domains={x:IU("x",T,B,I,C),y:IU("y",T,q,O,S,z)}}function IU(e,t,r,i,a,s){var l=t(e+"gap",r),f=t("domain."+e);t(e+"side",i);for(var h=new Array(a),v=f[0],m=(f[1]-v)/(a-l),_=m*(1-l),T=0;T{"use strict";NU.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var UU=pe(($xe,OU)=>{"use strict";var BU=Da(),ive=sa(),nve=Bt(),ove=Ii(),sve=WT();OU.exports=function(e,t,r,i){var a="error_"+i.axis,s=ove.newContainer(t,a),l=e[a]||{};function f(C,E){return nve.coerce(l,s,sve,C,E)}var h=l.array!==void 0||l.value!==void 0||l.type==="sqrt",v=f("visible",h);if(v!==!1){var m=f("type","array"in l?"data":"percent"),_=!0;m!=="sqrt"&&(_=f("symmetric",!((m==="data"?"arrayminus":"valueminus")in l))),m==="data"?(f("array"),f("traceref"),_||(f("arrayminus"),f("tracerefminus"))):(m==="percent"||m==="constant")&&(f("value"),_||f("valueminus"));var T="copy_"+i.inherit+"style";if(i.inherit){var S=t["error_"+i.inherit];(S||{}).visible&&f(T,!(l.color||BU(l.thickness)||BU(l.width)))}(!i.inherit||!s[T])&&(f("color",r),f("thickness"),f("width",ive.traceIs(t,"gl3d")?0:4))}}});var XT=pe((ebe,HU)=>{"use strict";HU.exports=function(t){var r=t.type,i=t.symmetric;if(r==="data"){var a=t.array||[];if(i)return function(v,m){var _=+a[m];return[_,_]};var s=t.arrayminus||[];return function(v,m){var _=+a[m],T=+s[m];return!isNaN(_)||!isNaN(T)?[T||0,_||0]:[NaN,NaN]}}else{var l=VU(r,t.value),f=VU(r,t.valueminus);return i||t.valueminus===void 0?function(v){var m=l(v);return[m,m]}:function(v){return[f(v),l(v)]}}};function VU(e,t){if(e==="percent")return function(r){return Math.abs(r*t/100)};if(e==="constant")return function(){return Math.abs(t)};if(e==="sqrt")return function(r){return Math.sqrt(Math.abs(r))}}});var YU=pe((tbe,ZU)=>{"use strict";var jT=Da(),lve=sa(),JT=Xi(),uve=Bt(),fve=XT();ZU.exports=function(t){for(var r=t.calcdata,i=0;i{"use strict";var WU=ja(),$h=Da(),cve=xi(),hve=rs();XU.exports=function(t,r,i,a){var s,l=i.xaxis,f=i.yaxis,h=a&&a.duration>0,v=t._context.staticPlot;r.each(function(m){var _=m[0].trace,T=_.error_x||{},S=_.error_y||{},C;_.ids&&(C=function(B){return B.id});var E=hve.hasMarkers(_)&&_.marker.maxdisplayed>0;!S.visible&&!T.visible&&(m=[]);var D=WU.select(this).selectAll("g.errorbar").data(m,C);if(D.exit().remove(),!!m.length){T.visible||D.selectAll("path.xerror").remove(),S.visible||D.selectAll("path.yerror").remove(),D.style("opacity",1);var z=D.enter().append("g").classed("errorbar",!0);h&&z.style("opacity",0).transition().duration(a.duration).style("opacity",1),cve.setClipUrl(D,i.layerClipId,t),D.each(function(B){var q=WU.select(this),I=vve(B,l,f);if(!(E&&!B.vis)){var O,H=q.select("path.yerror");if(S.visible&&$h(I.x)&&$h(I.yh)&&$h(I.ys)){var V=S.width;O="M"+(I.x-V)+","+I.yh+"h"+2*V+"m-"+V+",0V"+I.ys,I.noYS||(O+="m-"+V+",0h"+2*V),s=!H.size(),s?H=q.append("path").style("vector-effect",v?"none":"non-scaling-stroke").classed("yerror",!0):h&&(H=H.transition().duration(a.duration).ease(a.easing)),H.attr("d",O)}else H.remove();var W=q.select("path.xerror");if(T.visible&&$h(I.y)&&$h(I.xh)&&$h(I.xs)){var J=(T.copy_ystyle?S:T).width;O="M"+I.xh+","+(I.y-J)+"v"+2*J+"m0,-"+J+"H"+I.xs,I.noXS||(O+="m0,-"+J+"v"+2*J),s=!W.size(),s?W=q.append("path").style("vector-effect",v?"none":"non-scaling-stroke").classed("xerror",!0):h&&(W=W.transition().duration(a.duration).ease(a.easing)),W.attr("d",O)}else W.remove()}})}})};function vve(e,t,r){var i={x:t.c2p(e.x),y:r.c2p(e.y)};return e.yh!==void 0&&(i.yh=r.c2p(e.yh),i.ys=r.c2p(e.ys),$h(i.ys)||(i.noYS=!0,i.ys=r.c2p(e.ys,!0))),e.xh!==void 0&&(i.xh=t.c2p(e.xh),i.xs=t.c2p(e.xs),$h(i.xs)||(i.noXS=!0,i.xs=t.c2p(e.xs,!0))),i}});var QU=pe((abe,KU)=>{"use strict";var dve=ja(),JU=Oa();KU.exports=function(t){t.each(function(r){var i=r[0].trace,a=i.error_y||{},s=i.error_x||{},l=dve.select(this);l.selectAll("path.yerror").style("stroke-width",a.thickness+"px").call(JU.stroke,a.color),s.copy_ystyle&&(s=a),l.selectAll("path.xerror").style("stroke-width",s.thickness+"px").call(JU.stroke,s.color)})}});var tV=pe((ibe,eV)=>{"use strict";var i1=Bt(),$U=il().overrideAll,n1=WT(),Vd={error_x:i1.extendFlat({},n1),error_y:i1.extendFlat({},n1)};delete Vd.error_x.copy_zstyle;delete Vd.error_y.copy_zstyle;delete Vd.error_y.copy_ystyle;var o1={error_x:i1.extendFlat({},n1),error_y:i1.extendFlat({},n1),error_z:i1.extendFlat({},n1)};delete o1.error_x.copy_ystyle;delete o1.error_y.copy_ystyle;delete o1.error_z.copy_ystyle;delete o1.error_z.copy_zstyle;eV.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Vd,bar:Vd,histogram:Vd,scatter3d:$U(o1,"calc","nested"),scattergl:$U(Vd,"calc","nested")}},supplyDefaults:UU(),calc:YU(),makeComputeError:XT(),plot:jU(),style:QU(),hoverInfo:pve};function pve(e,t,r){(t.error_y||{}).visible&&(r.yerr=e.yh-e.y,t.error_y.symmetric||(r.yerrneg=e.y-e.ys)),(t.error_x||{}).visible&&(r.xerr=e.xh-e.x,t.error_x.symmetric||(r.xerrneg=e.x-e.xs))}});var aV=pe((nbe,rV)=>{"use strict";rV.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var fV=pe((obe,uV)=>{"use strict";var ev=ja(),KT=wf(),Db=eo(),iV=sa(),Dc=Xi(),Lb=Xl(),su=Bt(),Xu=su.strTranslate,lV=mn().extendFlat,QT=Oh(),Wu=xi(),$T=Oa(),mve=Ky(),yve=co(),gve=kf().flipScale,_ve=sT(),xve=lT(),bve=Ru(),eA=ts(),nV=eA.LINE_SPACING,oV=eA.FROM_TL,sV=eA.FROM_BR,Qi=aV().cn;function wve(e){var t=e._fullLayout,r=t._infolayer.selectAll("g."+Qi.colorbar).data(Tve(e),function(i){return i._id});r.enter().append("g").attr("class",function(i){return i._id}).classed(Qi.colorbar,!0),r.each(function(i){var a=ev.select(this);su.ensureSingle(a,"rect",Qi.cbbg),su.ensureSingle(a,"g",Qi.cbfills),su.ensureSingle(a,"g",Qi.cblines),su.ensureSingle(a,"g",Qi.cbaxis,function(l){l.classed(Qi.crisp,!0)}),su.ensureSingle(a,"g",Qi.cbtitleunshift,function(l){l.append("g").classed(Qi.cbtitle,!0)}),su.ensureSingle(a,"rect",Qi.cboutline);var s=Ave(a,i,e);s&&s.then&&(e._promises||[]).push(s),e._context.edits.colorbarPosition&&Mve(a,i,e)}),r.exit().each(function(i){Db.autoMargin(e,i._id)}).remove(),r.order()}function Tve(e){var t=e._fullLayout,r=e.calcdata,i=[],a,s,l,f;function h(q){return lV(q,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function v(){typeof f.calc=="function"?f.calc(e,l,a):(a._fillgradient=s.reversescale?gve(s.colorscale):s.colorscale,a._zrange=[s[f.min],s[f.max]])}for(var m=0;m1){var De=Math.pow(10,Math.floor(Math.log(de)/Math.LN10));bt*=De*su.roundUp(de/De,[2,5,10]),(Math.abs(oe.start)/oe.size+1e-6)%1<2e-6&&(it.tick0=0)}it.dtick=bt}it.domain=i?[Ye+C/I.h,Ye+Te-C/I.h]:[Ye+S/I.w,Ye+Te-S/I.w],it.setScale(),e.attr("transform",Xu(Math.round(I.l),Math.round(I.t)));var ge=e.select("."+Qi.cbtitleunshift).attr("transform",Xu(-Math.round(I.l),-Math.round(I.t))),rt=it.ticklabelposition,dt=it.title.font.size,We=e.select("."+Qi.cbaxis),qt,Dt=0,Tt=0;function Rt(Ht,Be){var st={propContainer:it,propName:t._propPrefix+"title.text",traceIndex:t._traceIndex,_meta:t._meta,placeholder:q._dfltTitle.colorbar,containerGroup:e.select("."+Qi.cbtitle)},sr=Ht.charAt(0)==="h"?Ht.substr(1):"h"+Ht;e.selectAll("."+sr+",."+sr+"-math-group").remove(),mve.draw(r,Ht,lV(st,Be||{}))}function Ut(){if(i&&mt||!i&&!mt){var Ht,Be;W==="top"&&(Ht=S+I.l+Ce*E,Be=C+I.t+Le*(1-Ye-Te)+3+dt*.75),W==="bottom"&&(Ht=S+I.l+Ce*E,Be=C+I.t+Le*(1-Ye)-3-dt*.25),W==="right"&&(Be=C+I.t+Le*D+3+dt*.75,Ht=S+I.l+Ce*Ye),Rt(it._id+"title",{attributes:{x:Ht,y:Be,"text-anchor":i?"start":"middle"}})}}function Ct(){if(i&&!mt||!i&&mt){var Ht=it.position||0,Be=it._offset+it._length/2,st,sr;if(W==="right")sr=Be,st=I.l+Ce*Ht+10+dt*(it.showticklabels?1:.5);else if(st=Be,W==="bottom"&&(sr=I.t+Le*Ht+10+(rt.indexOf("inside")===-1?it.tickfont.size:0)+(it.ticks!=="inside"&&t.ticklen||0)),W==="top"){var Dr=V.text.split("
").length;sr=I.t+Le*Ht+10-Me-nV*dt*Dr}Rt((i?"h":"v")+it._id+"title",{avoid:{selection:ev.select(r).selectAll("g."+it._id+"tick"),side:W,offsetTop:i?0:I.t,offsetLeft:i?I.l:0,maxShift:i?q.width:q.height},attributes:{x:st,y:sr,"text-anchor":"middle"},transform:{rotate:i?-90:0,offset:0}})}}function At(){if(!i&&!mt||i&&mt){var Ht=e.select("."+Qi.cbtitle),Be=Ht.select("text"),st=[-h/2,h/2],sr=Ht.select(".h"+it._id+"title-math-group").node(),Dr=15.6;Be.node()&&(Dr=parseInt(Be.node().style.fontSize,10)*nV);var Et;if(sr?(Et=Wu.bBox(sr),Tt=Et.width,Dt=Et.height,Dt>Dr&&(st[1]-=(Dt-Dr)/2)):Be.node()&&!Be.classed(Qi.jsPlaceholder)&&(Et=Wu.bBox(Be.node()),Tt=Et.width,Dt=Et.height),i){if(Dt){if(Dt+=5,W==="top")it.domain[1]-=Dt/I.h,st[1]*=-1;else{it.domain[0]+=Dt/I.h;var ct=yve.lineCount(Be);st[1]+=(1-ct)*Dr}Ht.attr("transform",Xu(st[0],st[1])),it.setScale()}}else Tt&&(W==="right"&&(it.domain[0]+=(Tt+dt/2)/I.w),Ht.attr("transform",Xu(st[0],st[1])),it.setScale())}e.selectAll("."+Qi.cbfills+",."+Qi.cblines).attr("transform",i?Xu(0,Math.round(I.h*(1-it.domain[1]))):Xu(Math.round(I.w*it.domain[0]),0)),We.attr("transform",i?Xu(0,Math.round(-I.t)):Xu(Math.round(-I.l),0));var pt=e.select("."+Qi.cbfills).selectAll("rect."+Qi.cbfill).attr("style","").data(ve);pt.enter().append("rect").classed(Qi.cbfill,!0).attr("style",""),pt.exit().remove();var Ot=J.map(it.c2p).map(Math.round).sort(function(yr,ur){return yr-ur});pt.each(function(yr,ur){var Lt=[ur===0?J[0]:(ve[ur]+ve[ur-1])/2,ur===ve.length-1?J[1]:(ve[ur]+ve[ur+1])/2].map(it.c2p).map(Math.round);i&&(Lt[1]=su.constrain(Lt[1]+(Lt[1]>Lt[0])?1:-1,Ot[0],Ot[1]));var Fe=ev.select(this).attr(i?"x":"y",Ke).attr(i?"y":"x",ev.min(Lt)).attr(i?"width":"height",Math.max(Me,2)).attr(i?"height":"width",Math.max(ev.max(Lt)-ev.min(Lt),2));if(t._fillgradient)Wu.gradient(Fe,r,t._id,i?"vertical":"horizontalreversed",t._fillgradient,"fill");else{var Ue=ne(yr).replace("e-","");Fe.attr("fill",KT(Ue).toHexString())}});var er=e.select("."+Qi.cblines).selectAll("path."+Qi.cbline).data(H.color&&H.width?Se:[]);er.enter().append("path").classed(Qi.cbline,!0),er.exit().remove(),er.each(function(yr){var ur=Ke,Lt=Math.round(it.c2p(yr))+H.width/2%1;ev.select(this).attr("d","M"+(i?ur+","+Lt:Lt+","+ur)+(i?"h":"v")+Me).call(Wu.lineGroupStyle,H.width,te(yr),H.dash)}),We.selectAll("g."+it._id+"tick,path").remove();var Zt=Ke+Me+(h||0)/2-(t.ticks==="outside"?1:0),Kt=Dc.calcTicks(it),pr=Dc.getTickSigns(it)[2];return Dc.drawTicks(r,it,{vals:it.ticks==="inside"?Dc.clipEnds(it,Kt):Kt,layer:We,path:Dc.makeTickPath(it,Zt,pr),transFn:Dc.makeTransTickFn(it)}),Dc.drawLabels(r,it,{vals:Kt,layer:We,transFn:Dc.makeTransTickLabelFn(it),labelFns:Dc.makeLabelFns(it,Zt)})}function Vt(){var Ht,Be=Me+h/2;rt.indexOf("inside")===-1&&(Ht=Wu.bBox(We.node()),Be+=i?Ht.width:Ht.height),qt=ge.select("text");var st=0,sr=i&&W==="top",Dr=!i&&W==="right",Et=0;if(qt.node()&&!qt.classed(Qi.jsPlaceholder)){var ct,pt=ge.select(".h"+it._id+"title-math-group").node();pt&&(i&&mt||!i&&!mt)?(Ht=Wu.bBox(pt),st=Ht.width,ct=Ht.height):(Ht=Wu.bBox(ge.node()),st=Ht.right-I.l-(i?Ke:St),ct=Ht.bottom-I.t-(i?St:Ke),!i&&W==="top"&&(Be+=Ht.height,Et=Ht.height)),Dr&&(qt.attr("transform",Xu(st/2+dt/2,0)),st*=2),Be=Math.max(Be,i?st:ct)}var Ot=(i?S:C)*2+Be+v+h/2,er=0;!i&&V.text&&T==="bottom"&&D<=0&&(er=Ot/2,Ot+=er,Et+=er),q._hColorbarMoveTitle=er,q._hColorbarMoveCBTitle=Et;var Zt=v+h,Kt=(i?Ke:St)-Zt/2-(i?S:0),pr=(i?St:Ke)-(i?we:C+Et-er);e.select("."+Qi.cbbg).attr("x",Kt).attr("y",pr).attr(i?"width":"height",Math.max(Ot-er,2)).attr(i?"height":"width",Math.max(we+Zt,2)).call($T.fill,m).call($T.stroke,t.bordercolor).style("stroke-width",v);var yr=Dr?Math.max(st-10,0):0;e.selectAll("."+Qi.cboutline).attr("x",(i?Ke:St+S)+yr).attr("y",(i?St+C-we:Ke)+(sr?Dt:0)).attr(i?"width":"height",Math.max(Me,2)).attr(i?"height":"width",Math.max(we-(i?2*C+Dt:2*S+yr),2)).call($T.stroke,t.outlinecolor).style({fill:"none","stroke-width":h});var ur=i?lt*Ot:0,Lt=i?0:(1-at)*Ot-Et;if(ur=B?I.l-ur:-ur,Lt=z?I.t-Lt:-Lt,e.attr("transform",Xu(ur,Lt)),!i&&(v||KT(m).getAlpha()&&!KT.equals(q.paper_bgcolor,m))){var Fe=We.selectAll("text"),Ue=Fe[0].length,xt=e.select("."+Qi.cbbg).node(),wt=Wu.bBox(xt),mr=Wu.getTranslate(e),Ar=2;Fe.each(function(hn,nn){var Ki=0,ir=Ue-1;if(nn===Ki||nn===ir){var oi=Wu.bBox(this),Sa=Wu.getTranslate(this),la;if(nn===ir){var Ci=oi.right+Sa.x,ma=wt.right+mr.x+St-v-Ar+E;la=ma-Ci,la>0&&(la=0)}else if(nn===Ki){var se=oi.left+Sa.x,ee=wt.left+mr.x+St+v+Ar;la=ee-se,la<0&&(la=0)}la&&(Ue<3?this.setAttribute("transform","translate("+la+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var Mr={},Gr=oV[_],pa=sV[_],Ca=oV[T],ii=sV[T],wi=Ot-Me;i?(s==="pixels"?(Mr.y=D,Mr.t=we*Ca,Mr.b=we*ii):(Mr.t=Mr.b=0,Mr.yt=D+a*Ca,Mr.yb=D-a*ii),f==="pixels"?(Mr.x=E,Mr.l=Ot*Gr,Mr.r=Ot*pa):(Mr.l=wi*Gr,Mr.r=wi*pa,Mr.xl=E-l*Gr,Mr.xr=E+l*pa)):(s==="pixels"?(Mr.x=E,Mr.l=we*Gr,Mr.r=we*pa):(Mr.l=Mr.r=0,Mr.xl=E+a*Gr,Mr.xr=E-a*pa),f==="pixels"?(Mr.y=1-D,Mr.t=Ot*Ca,Mr.b=Ot*ii):(Mr.t=wi*Ca,Mr.b=wi*ii,Mr.yt=D-l*Ca,Mr.yb=D+l*ii));var vi=t.y<.5?"b":"t",Fi=t.x<.5?"l":"r";r._fullLayout._reservedMargin[t._id]={};var Gi={r:q.width-Kt-ur,l:Kt+Mr.r,b:q.height-pr-Lt,t:pr+Mr.b};B&&z?Db.autoMargin(r,t._id,Mr):B?r._fullLayout._reservedMargin[t._id][vi]=Gi[vi]:z||i?r._fullLayout._reservedMargin[t._id][Fi]=Gi[Fi]:r._fullLayout._reservedMargin[t._id][vi]=Gi[vi]}return su.syncOrAsync([Db.previousPromises,Ut,At,Ct,Db.previousPromises,Vt],r)}function Mve(e,t,r){var i=t.orientation==="v",a=r._fullLayout,s=a._size,l,f,h;Lb.init({element:e.node(),gd:r,prepFn:function(){l=e.attr("transform"),QT(e)},moveFn:function(v,m){e.attr("transform",l+Xu(v,m)),f=Lb.align((i?t._uFrac:t._vFrac)+v/s.w,i?t._thickFrac:t._lenFrac,0,1,t.xanchor),h=Lb.align((i?t._vFrac:1-t._uFrac)-m/s.h,i?t._lenFrac:t._thickFrac,0,1,t.yanchor);var _=Lb.getCursor(f,h,t.xanchor,t.yanchor);QT(e,_)},doneFn:function(){if(QT(e),f!==void 0&&h!==void 0){var v={};v[t._propPrefix+"x"]=f,v[t._propPrefix+"y"]=h,t._traceIndex!==void 0?iV.call("_guiRestyle",r,v,t._traceIndex):iV.call("_guiRelayout",r,v)}}})}function Sve(e,t,r){var i=t._levels,a=[],s=[],l,f,h=i.end+i.size/100,v=i.size,m=1.001*r[0]-.001*r[1],_=1.001*r[1]-.001*r[0];for(f=0;f<1e5&&(l=i.start+f*v,!(v>0?l>=h:l<=h));f++)l>m&&l<_&&a.push(l);if(t._fillgradient)s=[0];else if(typeof t._fillcolor=="function"){var T=t._filllevels;if(T)for(h=T.end+T.size/100,v=T.size,f=0;f<1e5&&(l=T.start+f*v,!(v>0?l>=h:l<=h));f++)l>r[0]&&l{"use strict";cV.exports={moduleType:"component",name:"colorbar",attributes:Z_(),supplyDefaults:t5(),draw:fV().draw,hasColorbar:Gw()}});var dV=pe((lbe,vV)=>{"use strict";vV.exports={moduleType:"component",name:"legend",layoutAttributes:Q5(),supplyLayoutDefaults:t4(),draw:d4(),style:f4()}});var mV=pe((ube,pV)=>{"use strict";pV.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var gV=pe((fbe,yV)=>{"use strict";yV.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var rA=pe((cbe,wV)=>{"use strict";var Cve=sa(),bV=Bt(),tA=bV.extendFlat,_V=bV.extendDeep;function xV(e){var t;switch(e){case"themes__thumb":t={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":t={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:t={}}return t}function Eve(e){var t=["xaxis","yaxis","zaxis"];return t.indexOf(e.slice(0,5))>-1}wV.exports=function(t,r){var i,a=t.data,s=t.layout,l=_V([],a),f=_V({},s,xV(r.tileClass)),h=t._context||{};if(r.width&&(f.width=r.width),r.height&&(f.height=r.height),r.tileClass==="thumbnail"||r.tileClass==="themes__thumb"){f.annotations=[];var v=Object.keys(f);for(i=0;i{"use strict";var Lve=D_().EventEmitter,Dve=sa(),Pve=Bt(),TV=Pd(),zve=rA(),Ive=Bx(),Rve=Ox();function Fve(e,t){var r=new Lve,i=zve(e,{format:"png"}),a=i.gd;a.style.position="absolute",a.style.left="-5000px",document.body.appendChild(a);function s(){var f=TV.getDelay(a._fullLayout);setTimeout(function(){var h=Ive(a),v=document.createElement("canvas");v.id=Pve.randstr(),r=Rve({format:t.format,width:a._fullLayout.width,height:a._fullLayout.height,canvas:v,emitter:r,svg:h}),r.clean=function(){a&&document.body.removeChild(a)}},f)}var l=TV.getRedrawFunc(a);return Dve.call("_doPlot",a,i.data,i.layout,i.config).then(l).then(s).catch(function(f){r.emit("error",f)}),r}AV.exports=Fve});var CV=pe((vbe,kV)=>{"use strict";var SV=Pd(),qve={getDelay:SV.getDelay,getRedrawFunc:SV.getRedrawFunc,clone:rA(),toSVG:Bx(),svgToImg:Ox(),toImage:MV(),downloadImage:D6()};kV.exports=qve});var LV=pe(Pc=>{"use strict";Pc.version=W1().version;b7();fk();var Nve=sa(),s1=Pc.register=Nve.register,iA=IF(),EV=Object.keys(iA);for(Pb=0;Pb{"use strict";DV.exports=LV()});var nA=pe((ybe,FV)=>{"use strict";var{hovertemplateAttrs:Bve,texttemplateAttrs:Ove,templatefallbackAttrs:zV}=Mf(),Uve=gx(),Vf=kc(),Vve=ys(),IV=xc(),Hve=hc().dash,Hd=mn().extendFlat,Gve=il().overrideAll,lu=Vf.marker,RV=Vf.line,Zve=lu.line,mbe=["The library used by the *country names* `locationmode` option is changing in an upcoming version.","Country names in existing plots may not work in the new version."].join(" ");FV.exports=Gve({lon:{valType:"data_array"},lat:{valType:"data_array"},locations:{valType:"data_array"},locationmode:{valType:"enumerated",values:["ISO-3","USA-states","country names","geojson-id"],dflt:"ISO-3"},geojson:{valType:"any",editType:"calc"},featureidkey:{valType:"string",editType:"calc",dflt:"id"},mode:Hd({},Vf.mode,{dflt:"markers"}),text:Hd({},Vf.text,{}),texttemplate:Ove({editType:"plot"},{keys:["lat","lon","location","text"]}),texttemplatefallback:zV({editType:"plot"}),hovertext:Hd({},Vf.hovertext,{}),textfont:Vf.textfont,textposition:Vf.textposition,line:{color:RV.color,width:RV.width,dash:Hve},connectgaps:Vf.connectgaps,marker:Hd({symbol:lu.symbol,opacity:lu.opacity,angle:lu.angle,angleref:Hd({},lu.angleref,{values:["previous","up","north"]}),standoff:lu.standoff,size:lu.size,sizeref:lu.sizeref,sizemin:lu.sizemin,sizemode:lu.sizemode,colorbar:lu.colorbar,line:Hd({width:Zve.width},IV("marker.line")),gradient:lu.gradient},IV("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:Uve(),selected:Vf.selected,unselected:Vf.unselected,hoverinfo:Hd({},Vve.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:Bve(),hovertemplatefallback:zV()},"calc","nested")});var zc=pe((gbe,HV)=>{"use strict";var Yve=b_(),qV="1.13.4",UV='\xA9 OpenStreetMap contributors',NV=['\xA9 Carto',UV].join(" "),BV=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under ODbL'].join(" "),Wve=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under CC BY SA'].join(" "),VV={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:UV,tiles:["https://a.tile.openstreetmap.org/{z}/{x}/{y}.png","https://b.tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:NV,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:NV,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:BV,tiles:["https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:BV,tiles:["https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:Wve,tiles:["https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"}},OV=Yve(VV);HV.exports={requiredVersion:qV,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:VV,styleValuesNonMapbox:OV,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install @plotly/mapbox-gl@"+qV+"."].join(` +`+d9(s.dayMonthYear,e,i,a);return d9(t,e,i,a)};var p9=3*qs;En.incrementMonth=function(e,t,r){r=dc(r)&&r;var i=kh(e,qs);if(e=Math.round(e-i),r)try{var a=Math.round(e/qs)+qy,s=vc.getComponentMethod("calendars","getCal")(r),l=s.fromJD(a);return t%12?s.add(l,t,"m"):s.add(l,t/12,"y"),(l.toJD()-qy)*qs+i}catch(h){uw.error("invalid ms "+e+" in calendar "+r)}var f=new Date(e+p9);return f.setUTCMonth(f.getUTCMonth()+t)+i-p9};En.findExactDates=function(e,t){for(var r=0,i=0,a=0,s=0,l,f,h=dc(t)&&vc.getComponentMethod("calendars","getCal")(t),v=0;v{"use strict";_9.exports=function(t){return t}});var cw=pe(pc=>{"use strict";var xK=Da(),bK=Th(),wK=x_(),TK=Zi().BADNUM,fw=1e-9;pc.findBin=function(e,t,r){if(xK(t.start))return r?Math.ceil((e-t.start)/t.size-fw)-1:Math.floor((e-t.start)/t.size+fw);var i=0,a=t.length,s=0,l=a>1?(t[a-1]-t[0])/(a-1):1,f,h;for(l>=0?h=r?AK:MK:h=r?kK:SK,e+=l*fw*(r?-1:1)*(l>=0?1:-1);i90&&bK.log("Long binary search..."),i-1};function AK(e,t){return et}function kK(e,t){return e>=t}pc.sorterAsc=function(e,t){return e-t};pc.sorterDes=function(e,t){return t-e};pc.distinctVals=function(e){var t=e.slice();t.sort(pc.sorterAsc);var r;for(r=t.length-1;r>-1&&t[r]===TK;r--);for(var i=t[r]-t[0]||1,a=i/(r||1)/1e4,s=[],l,f=0;f<=r;f++){var h=t[f],v=h-l;l===void 0?(s.push(h),l=h):v>a&&(i=Math.min(i,v),s.push(h),l=h)}return{vals:s,minDiff:i}};pc.roundUp=function(e,t,r){for(var i=0,a=t.length-1,s,l=0,f=r?0:1,h=r?1:0,v=r?Math.ceil:Math.floor;i0&&(i=1),r&&i)return e.sort(t)}return i?e:e.reverse()};pc.findIndexOfMin=function(e,t){t=t||wK;for(var r=1/0,i,a=0;a{"use strict";x9.exports=function(t){return Object.keys(t).sort()}});var b9=pe(Ln=>{"use strict";var Ny=Da(),CK=al().isArrayOrTypedArray;Ln.aggNums=function(e,t,r,i){var a,s;if((!i||i>r.length)&&(i=r.length),Ny(t)||(t=!1),CK(r[0])){for(s=new Array(i),a=0;ae.length-1)return e[e.length-1];var r=t%1;return r*e[Math.ceil(t)]+(1-r)*e[Math.floor(t)]}});var S9=pe((uge,M9)=>{"use strict";var w9=f0(),hw=w9.mod,EK=w9.modHalf,By=Math.PI,Ch=2*By;function LK(e){return e/180*By}function DK(e){return e/By*180}function vw(e){return Math.abs(e[1]-e[0])>Ch-1e-14}function T9(e,t){return EK(t-e,Ch)}function PK(e,t){return Math.abs(T9(e,t))}function A9(e,t){if(vw(t))return!0;var r,i;t[0]i&&(i+=Ch);var a=hw(e,Ch),s=a+Ch;return a>=r&&a<=i||s>=r&&s<=i}function zK(e,t,r,i){if(!A9(t,i))return!1;var a,s;return r[0]=a&&e<=s}function dw(e,t,r,i,a,s,l){a=a||0,s=s||0;var f=vw([r,i]),h,v,m,_,T;f?(h=0,v=By,m=Ch):r{"use strict";nd.isLeftAnchor=function(t){return t.xanchor==="left"||t.xanchor==="auto"&&t.x<=1/3};nd.isCenterAnchor=function(t){return t.xanchor==="center"||t.xanchor==="auto"&&t.x>1/3&&t.x<2/3};nd.isRightAnchor=function(t){return t.xanchor==="right"||t.xanchor==="auto"&&t.x>=2/3};nd.isTopAnchor=function(t){return t.yanchor==="top"||t.yanchor==="auto"&&t.y>=2/3};nd.isMiddleAnchor=function(t){return t.yanchor==="middle"||t.yanchor==="auto"&&t.y>1/3&&t.y<2/3};nd.isBottomAnchor=function(t){return t.yanchor==="bottom"||t.yanchor==="auto"&&t.y<=1/3}});var L9=pe(od=>{"use strict";var pw=f0().mod;od.segmentsIntersect=E9;function E9(e,t,r,i,a,s,l,f){var h=r-e,v=a-e,m=l-a,_=i-t,T=s-t,S=f-s,C=h*S-m*_;if(C===0)return null;var E=(v*S-m*T)/C,L=(v*_-h*T)/C;return L<0||L>1||E<0||E>1?null:{x:e+h*E,y:t+_*E}}od.segmentDistance=function(t,r,i,a,s,l,f,h){if(E9(t,r,i,a,s,l,f,h))return 0;var v=i-t,m=a-r,_=f-s,T=h-l,S=v*v+m*m,C=_*_+T*T,E=Math.min(w_(v,m,S,s-t,l-r),w_(v,m,S,f-t,h-r),w_(_,T,C,t-s,r-l),w_(_,T,C,i-s,a-l));return Math.sqrt(E)};function w_(e,t,r,i,a){var s=i*e+a*t;if(s<0)return i*i+a*a;if(s>r){var l=i-e,f=a-t;return l*l+f*f}else{var h=i*t-a*e;return h*h/r}}var T_,mw,C9;od.getTextLocation=function(t,r,i,a){if((t!==mw||a!==C9)&&(T_={},mw=t,C9=a),T_[i])return T_[i];var s=t.getPointAtLength(pw(i-a/2,r)),l=t.getPointAtLength(pw(i+a/2,r)),f=Math.atan((l.y-s.y)/(l.x-s.x)),h=t.getPointAtLength(pw(i,r)),v=(h.x*4+s.x+l.x)/6,m=(h.y*4+s.y+l.y)/6,_={x:v,y:m,theta:f};return T_[i]=_,_};od.clearLocationCache=function(){mw=null};od.getVisibleSegment=function(t,r,i){var a=r.left,s=r.right,l=r.top,f=r.bottom,h=0,v=t.getTotalLength(),m=v,_,T;function S(E){var L=t.getPointAtLength(E);E===0?_=L:E===v&&(T=L);var z=L.xs?L.x-s:0,B=L.yf?L.y-f:0;return Math.sqrt(z*z+B*B)}for(var C=S(h);C;){if(h+=C+i,h>m)return;C=S(h)}for(C=S(m);C;){if(m-=C+i,h>m)return;C=S(m)}return{min:h,max:m,len:m-h,total:v,isClosed:h===0&&m===v&&Math.abs(_.x-T.x)<.1&&Math.abs(_.y-T.y)<.1}};od.findPointOnPath=function(t,r,i,a){a=a||{};for(var s=a.pathLength||t.getTotalLength(),l=a.tolerance||.001,f=a.iterationLimit||30,h=t.getPointAtLength(0)[i]>t.getPointAtLength(s)[i]?-1:1,v=0,m=0,_=s,T,S,C;v0?_=T:m=T,v++}return S}});var A_=pe(Oy=>{"use strict";var mc={};Oy.throttle=function(t,r,i){var a=mc[t],s=Date.now();if(!a){for(var l in mc)mc[l].tsa.ts+r){f();return}a.timer=setTimeout(function(){f(),a.timer=null},r)};Oy.done=function(e){var t=mc[e];return!t||!t.timer?Promise.resolve():new Promise(function(r){var i=t.onDone;t.onDone=function(){i&&i(),r(),t.onDone=null}})};Oy.clear=function(e){if(e)D9(mc[e]),delete mc[e];else for(var t in mc)Oy.clear(t)};function D9(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var z9=pe((vge,P9)=>{"use strict";P9.exports=function(t){t._responsiveChartHandler&&(window.removeEventListener("resize",t._responsiveChartHandler),delete t._responsiveChartHandler)}});var I9=pe((dge,M_)=>{"use strict";M_.exports=yw;M_.exports.isMobile=yw;M_.exports.default=yw;var qK=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,NK=/CrOS/,BK=/android|ipad|playbook|silk/i;function yw(e){e||(e={});let t=e.ua;if(!t&&typeof navigator!="undefined"&&(t=navigator.userAgent),t&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string")return!1;let r=qK.test(t)&&!NK.test(t)||!!e.tablet&&BK.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}});var F9=pe((pge,R9)=>{"use strict";var OK=Da(),UK=I9();R9.exports=function(t){var r;if(t&&t.hasOwnProperty("userAgent")?r=t.userAgent:r=VK(),typeof r!="string")return!0;var i=UK({ua:{headers:{"user-agent":r}},tablet:!0,featureDetect:!1});if(!i)for(var a=r.split(" "),s=1;s-1;f--){var h=a[f];if(h.slice(0,8)==="Version/"){var v=h.slice(8).split(".")[0];if(OK(v)&&(v=+v),v>=13)return!0}}}return i};function VK(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var N9=pe((mge,q9)=>{"use strict";var HK=ja();q9.exports=function(t,r,i){var a=t.selectAll("g."+i.replace(/\s/g,".")).data(r,function(l){return l[0].trace.uid});a.exit().remove(),a.enter().append("g").attr("class",i),a.order();var s=t.classed("rangeplot")?"nodeRangePlot3":"node3";return a.each(function(l){l[0][s]=HK.select(this)}),a}});var O9=pe((yge,B9)=>{"use strict";var GK=sa();B9.exports=function(t,r){for(var i=t._context.locale,a=0;a<2;a++){for(var s=t._context.locales,l=0;l<2;l++){var f=(s[i]||{}).dictionary;if(f){var h=f[r];if(h)return h}s=GK.localeRegistry}var v=i.split("-")[0];if(v===i)break;i=v}return r}});var V9=pe((gge,U9)=>{"use strict";U9.exports=function(t){for(var r={},i=[],a=0,s=0;s{"use strict";H9.exports=function(t){for(var r=WK(t)?YK:ZK,i=[],a=0;a{"use strict";Z9.exports=function(t,r){if(!r)return t;var i=1/Math.abs(r),a=i>1?(i*t+i*r)/i:t+r,s=String(a).length;if(s>16){var l=String(r).length,f=String(t).length;if(s>=f+l){var h=parseFloat(a).toPrecision(12);h.indexOf("e+")===-1&&(a=+h)}}return a}});var X9=pe((bge,W9)=>{"use strict";var XK=Da(),jK=Zi().BADNUM,JK=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;W9.exports=function(t){return typeof t=="string"&&(t=t.replace(JK,"")),XK(t)?Number(t):jK}});var Bt=pe((wge,sk)=>{"use strict";var Uy=ja(),KK=l0().utcFormat,QK=V3().format,ek=Da(),tk=Zi(),rk=tk.FP_SAFE,$K=-rk,j9=tk.BADNUM,tt=sk.exports={};tt.adjustFormat=function(t){return!t||/^\d[.]\df/.test(t)||/[.]\d%/.test(t)?t:t==="0.f"?"~f":/^\d%/.test(t)?"~%":/^\ds/.test(t)?"~s":!/^[~,.0$]/.test(t)&&/[&fps]/.test(t)?"~"+t:t};var J9={};tt.warnBadFormat=function(e){var t=String(e);J9[t]||(J9[t]=1,tt.warn('encountered bad format: "'+t+'"'))};tt.noFormat=function(e){return String(e)};tt.numberFormat=function(e){var t;try{t=QK(tt.adjustFormat(e))}catch(r){return tt.warnBadFormat(e),tt.noFormat}return t};tt.nestedProperty=My();tt.keyedContainer=U7();tt.relativeAttr=H7();tt.isPlainObject=cc();tt.toLogRange=r_();tt.relinkPrivateKeys=W7();var Eh=al();tt.isArrayBuffer=Eh.isArrayBuffer;tt.isTypedArray=Eh.isTypedArray;tt.isArrayOrTypedArray=Eh.isArrayOrTypedArray;tt.isArray1D=Eh.isArray1D;tt.ensureArray=Eh.ensureArray;tt.concat=Eh.concat;tt.maxRowLength=Eh.maxRowLength;tt.minRowLength=Eh.minRowLength;var ak=f0();tt.mod=ak.mod;tt.modHalf=ak.modHalf;var Lh=h8();tt.valObjectMeta=Lh.valObjectMeta;tt.coerce=Lh.coerce;tt.coerce2=Lh.coerce2;tt.coerceFont=Lh.coerceFont;tt.coercePattern=Lh.coercePattern;tt.coerceHoverinfo=Lh.coerceHoverinfo;tt.coerceSelectionMarkerOpacity=Lh.coerceSelectionMarkerOpacity;tt.validate=Lh.validate;var nl=g9();tt.dateTime2ms=nl.dateTime2ms;tt.isDateTime=nl.isDateTime;tt.ms2DateTime=nl.ms2DateTime;tt.ms2DateTimeLocal=nl.ms2DateTimeLocal;tt.cleanDate=nl.cleanDate;tt.isJSDate=nl.isJSDate;tt.formatDate=nl.formatDate;tt.incrementMonth=nl.incrementMonth;tt.dateTick0=nl.dateTick0;tt.dfltRange=nl.dfltRange;tt.findExactDates=nl.findExactDates;tt.MIN_MS=nl.MIN_MS;tt.MAX_MS=nl.MAX_MS;var sd=cw();tt.findBin=sd.findBin;tt.sorterAsc=sd.sorterAsc;tt.sorterDes=sd.sorterDes;tt.distinctVals=sd.distinctVals;tt.roundUp=sd.roundUp;tt.sort=sd.sort;tt.findIndexOfMin=sd.findIndexOfMin;tt.sortObjectKeys=b_();var yc=b9();tt.aggNums=yc.aggNums;tt.len=yc.len;tt.mean=yc.mean;tt.geometricMean=yc.geometricMean;tt.median=yc.median;tt.midRange=yc.midRange;tt.variance=yc.variance;tt.stdev=yc.stdev;tt.interp=yc.interp;var zu=f_();tt.init2dArray=zu.init2dArray;tt.transposeRagged=zu.transposeRagged;tt.dot=zu.dot;tt.translationMatrix=zu.translationMatrix;tt.rotationMatrix=zu.rotationMatrix;tt.rotationXYMatrix=zu.rotationXYMatrix;tt.apply3DTransform=zu.apply3DTransform;tt.apply2DTransform=zu.apply2DTransform;tt.apply2DTransform2=zu.apply2DTransform2;tt.convertCssMatrix=zu.convertCssMatrix;tt.inverseTransformMatrix=zu.inverseTransformMatrix;var Sf=S9();tt.deg2rad=Sf.deg2rad;tt.rad2deg=Sf.rad2deg;tt.angleDelta=Sf.angleDelta;tt.angleDist=Sf.angleDist;tt.isFullCircle=Sf.isFullCircle;tt.isAngleInsideSector=Sf.isAngleInsideSector;tt.isPtInsideSector=Sf.isPtInsideSector;tt.pathArc=Sf.pathArc;tt.pathSector=Sf.pathSector;tt.pathAnnulus=Sf.pathAnnulus;var w0=k9();tt.isLeftAnchor=w0.isLeftAnchor;tt.isCenterAnchor=w0.isCenterAnchor;tt.isRightAnchor=w0.isRightAnchor;tt.isTopAnchor=w0.isTopAnchor;tt.isMiddleAnchor=w0.isMiddleAnchor;tt.isBottomAnchor=w0.isBottomAnchor;var T0=L9();tt.segmentsIntersect=T0.segmentsIntersect;tt.segmentDistance=T0.segmentDistance;tt.getTextLocation=T0.getTextLocation;tt.clearLocationCache=T0.clearLocationCache;tt.getVisibleSegment=T0.getVisibleSegment;tt.findPointOnPath=T0.findPointOnPath;var C_=mn();tt.extendFlat=C_.extendFlat;tt.extendDeep=C_.extendDeep;tt.extendDeepAll=C_.extendDeepAll;tt.extendDeepNoArrays=C_.extendDeepNoArrays;var gw=Th();tt.log=gw.log;tt.warn=gw.warn;tt.error=gw.error;var eQ=h0();tt.counterRegex=eQ.counter;var _w=A_();tt.throttle=_w.throttle;tt.throttleDone=_w.done;tt.clearThrottle=_w.clear;var Iu=Iy();tt.getGraphDiv=Iu.getGraphDiv;tt.isPlotDiv=Iu.isPlotDiv;tt.removeElement=Iu.removeElement;tt.addStyleRule=Iu.addStyleRule;tt.addRelatedStyleRule=Iu.addRelatedStyleRule;tt.deleteRelatedStyleRule=Iu.deleteRelatedStyleRule;tt.setStyleOnHover=Iu.setStyleOnHover;tt.getFullTransformMatrix=Iu.getFullTransformMatrix;tt.getElementTransformMatrix=Iu.getElementTransformMatrix;tt.getElementAndAncestors=Iu.getElementAndAncestors;tt.equalDomRects=Iu.equalDomRects;tt.clearResponsive=z9();tt.preserveDrawingBuffer=F9();tt.makeTraceGroups=N9();tt._=O9();tt.notifier=$3();tt.filterUnique=V9();tt.filterVisible=G9();tt.pushUnique=rw();tt.increment=Y9();tt.cleanNumber=X9();tt.ensureNumber=function(t){return ek(t)?(t=Number(t),t>rk||t<$K?j9:t):j9};tt.isIndex=function(e,t){return t!==void 0&&e>=t?!1:ek(e)&&e>=0&&e%1===0};tt.noop=u_();tt.identity=x_();tt.repeat=function(e,t){for(var r=new Array(t),i=0;ir?Math.max(r,Math.min(t,e)):Math.max(t,Math.min(r,e))};tt.bBoxIntersect=function(e,t,r){return r=r||0,e.left<=t.right+r&&t.left<=e.right+r&&e.top<=t.bottom+r&&t.top<=e.bottom+r};tt.simpleMap=function(e,t,r,i,a){for(var s=e.length,l=new Array(s),f=0;f=Math.pow(2,r)?a>10?(tt.warn("randstr failed uniqueness"),l):e(t,r,i,(a||0)+1):l};tt.OptionControl=function(e,t){e||(e={}),t||(t="opt");var r={};return r.optionList=[],r._newoption=function(i){i[t]=e,r[i.name]=i,r.optionList.push(i)},r["_"+t]=e,r};tt.smooth=function(e,t){if(t=Math.round(t)||0,t<2)return e;var r=e.length,i=2*r,a=2*t-1,s=new Array(a),l=new Array(r),f,h,v,m;for(f=0;f=i&&(v-=i*Math.floor(v/i)),v<0?v=-1-v:v>=r&&(v=i-1-v),m+=e[v]*s[h];l[f]=m}return l};tt.syncOrAsync=function(e,t,r){var i,a;function s(){return tt.syncOrAsync(e,t,r)}for(;e.length;)if(a=e.splice(0,1)[0],i=a(t),i&&i.then)return i.then(s);return r&&r(t)};tt.stripTrailingSlash=function(e){return e.slice(-1)==="/"?e.slice(0,-1):e};tt.noneOrAll=function(e,t,r){if(e){var i=!1,a=!0,s,l;for(s=0;s0?a:0})};tt.fillArray=function(e,t,r,i){if(i=i||tt.identity,tt.isArrayOrTypedArray(e))for(var a=0;aaQ.test(window.navigator.userAgent);var iQ=/Firefox\/(\d+)\.\d+/;tt.getFirefoxVersion=function(){var e=iQ.exec(window.navigator.userAgent);if(e&&e.length===2){var t=parseInt(e[1]);if(!isNaN(t))return t}return null};tt.isD3Selection=function(e){return e instanceof Uy.selection};tt.ensureSingle=function(e,t,r,i){var a=e.select(t+(r?"."+r:""));if(a.size())return a;var s=e.append(t);return r&&s.classed(r,!0),i&&s.call(i),s};tt.ensureSingleById=function(e,t,r,i){var a=e.select(t+"#"+r);if(a.size())return a;var s=e.append(t).attr("id",r);return i&&s.call(i),s};tt.objectFromPath=function(e,t){for(var r=e.split("."),i,a=i={},s=0;s1?a+l[1]:"";if(s&&(l.length>1||f.length>4||r))for(;i.test(f);)f=f.replace(i,"$1"+s+"$2");return f+h};tt.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var ok=/^\w*$/;tt.templateString=function(e,t){var r={};return e.replace(tt.TEMPLATE_STRING_REGEX,function(i,a){var s;return ok.test(a)?s=t[a]:(r[a]=r[a]||tt.nestedProperty(t,a).get,s=r[a](!0)),s!==void 0?s:""})};var sQ={max:10,count:0,name:"hovertemplate"};tt.hovertemplateString=e=>xw(Y1($v({},e),{opts:sQ}));var lQ={max:10,count:0,name:"texttemplate"};tt.texttemplateString=e=>xw(Y1($v({},e),{opts:lQ}));var uQ=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function fQ(e){var t=e.match(uQ);return t?{key:t[1],op:t[2],number:Number(t[3])}:{key:e,op:null,number:null}}var cQ={max:10,count:0,name:"texttemplate",parseMultDiv:!0};tt.texttemplateStringForShapes=e=>xw(Y1($v({},e),{opts:cQ}));var K9=/^[:|\|]/;function xw({data:e=[],locale:t,fallback:r,labels:i={},opts:a,template:s}){return s.replace(tt.TEMPLATE_STRING_REGEX,(l,f,h)=>{let v=["xother","yother"].includes(f),m=["_xother","_yother"].includes(f),_=["_xother_","_yother_"].includes(f),T=["xother_","yother_"].includes(f),S=v||m||T||_;(m||_)&&(f=f.substring(1)),(T||_)&&(f=f.substring(0,f.length-1));let C=null,E=null;if(a.parseMultDiv){var L=fQ(f);f=L.key,C=L.op,E=L.number}let z;if(S){if(i[f]===void 0)return"";z=i[f]}else for(let O of e)if(O){if(O.hasOwnProperty(f)){z=O[f];break}if(ok.test(f)||(z=tt.nestedProperty(O,f).get(!0)),z!==void 0)break}if(z===void 0){let{count:O,max:H,name:V}=a,W=r===!1?l:r;return O=k_&&l<=Q9,v=f>=k_&&f<=Q9;if(h&&(i=10*i+l-k_),v&&(a=10*a+f-k_),!h||!v){if(i!==a)return i-a;if(l!==f)return l-f}}return a-i};var b0=2e9;tt.seedPseudoRandom=function(){b0=2e9};tt.pseudoRandom=function(){var e=b0;return b0=(69069*b0+1)%4294967296,Math.abs(b0-e)<429496729?tt.pseudoRandom():b0/4294967296};tt.fillText=function(e,t,r){var i=Array.isArray(r)?function(l){r.push(l)}:function(l){r.text=l},a=tt.extractOption(e,t,"htx","hovertext");if(tt.isValidTextValue(a))return i(a);var s=tt.extractOption(e,t,"tx","text");if(tt.isValidTextValue(s))return i(s)};tt.isValidTextValue=function(e){return e||e===0};tt.formatPercent=function(e,t){t=t||0;for(var r=(Math.round(100*e*Math.pow(10,t))*Math.pow(.1,t)).toFixed(t)+"%",i=0;i1&&(v=1):v=0,tt.strTranslate(a-v*(r+l),s-v*(i+f))+tt.strScale(v)+(h?"rotate("+h+(t?"":" "+r+" "+i)+")":"")};tt.setTransormAndDisplay=function(e,t){e.attr("transform",tt.getTextTransform(t)),e.style("display",t.scale?null:"none")};tt.ensureUniformFontSize=function(e,t){var r=tt.extendFlat({},t);return r.size=Math.max(t.size,e._fullLayout.uniformtext.minsize||0),r};tt.join2=function(e,t,r){var i=e.length;return i>1?e.slice(0,-1).join(t)+r+e[i-1]:e.join(t)};tt.bigFont=function(e){return Math.round(1.2*e)};var $9=tt.getFirefoxVersion(),hQ=$9!==null&&$9<86;tt.getPositionFromD3Event=function(){return hQ?[Uy.event.layerX,Uy.event.layerY]:[Uy.event.offsetX,Uy.event.offsetY]}});var fk=pe(()=>{"use strict";var vQ=Bt(),lk={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(bw in lk)uk=bw.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),vQ.addStyleRule(uk,lk[bw]);var uk,bw});var ww=pe((Sge,ck)=>{ck.exports=!0});var Aw=pe((kge,hk)=>{"use strict";var dQ=ww(),Tw;typeof window.matchMedia=="function"?Tw=!window.matchMedia("(hover: none)").matches:Tw=dQ;hk.exports=Tw});var D_=pe((Cge,Mw)=>{"use strict";var A0=typeof Reflect=="object"?Reflect:null,vk=A0&&typeof A0.apply=="function"?A0.apply:function(t,r,i){return Function.prototype.apply.call(t,r,i)},E_;A0&&typeof A0.ownKeys=="function"?E_=A0.ownKeys:Object.getOwnPropertySymbols?E_=function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:E_=function(t){return Object.getOwnPropertyNames(t)};function pQ(e){console&&console.warn&&console.warn(e)}var pk=Number.isNaN||function(t){return t!==t};function Yi(){Yi.init.call(this)}Mw.exports=Yi;Mw.exports.once=_Q;Yi.EventEmitter=Yi;Yi.prototype._events=void 0;Yi.prototype._eventsCount=0;Yi.prototype._maxListeners=void 0;var dk=10;function L_(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(Yi,"defaultMaxListeners",{enumerable:!0,get:function(){return dk},set:function(e){if(typeof e!="number"||e<0||pk(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");dk=e}});Yi.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};Yi.prototype.setMaxListeners=function(t){if(typeof t!="number"||t<0||pk(t))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+t+".");return this._maxListeners=t,this};function mk(e){return e._maxListeners===void 0?Yi.defaultMaxListeners:e._maxListeners}Yi.prototype.getMaxListeners=function(){return mk(this)};Yi.prototype.emit=function(t){for(var r=[],i=1;i0&&(l=r[0]),l instanceof Error)throw l;var f=new Error("Unhandled error."+(l?" ("+l.message+")":""));throw f.context=l,f}var h=s[t];if(h===void 0)return!1;if(typeof h=="function")vk(h,this,r);else for(var v=h.length,m=bk(h,v),i=0;i0&&l.length>a&&!l.warned){l.warned=!0;var f=new Error("Possible EventEmitter memory leak detected. "+l.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");f.name="MaxListenersExceededWarning",f.emitter=e,f.type=t,f.count=l.length,pQ(f)}return e}Yi.prototype.addListener=function(t,r){return yk(this,t,r,!1)};Yi.prototype.on=Yi.prototype.addListener;Yi.prototype.prependListener=function(t,r){return yk(this,t,r,!0)};function mQ(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function gk(e,t,r){var i={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},a=mQ.bind(i);return a.listener=r,i.wrapFn=a,a}Yi.prototype.once=function(t,r){return L_(r),this.on(t,gk(this,t,r)),this};Yi.prototype.prependOnceListener=function(t,r){return L_(r),this.prependListener(t,gk(this,t,r)),this};Yi.prototype.removeListener=function(t,r){var i,a,s,l,f;if(L_(r),a=this._events,a===void 0)return this;if(i=a[t],i===void 0)return this;if(i===r||i.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete a[t],a.removeListener&&this.emit("removeListener",t,i.listener||r));else if(typeof i!="function"){for(s=-1,l=i.length-1;l>=0;l--)if(i[l]===r||i[l].listener===r){f=i[l].listener,s=l;break}if(s<0)return this;s===0?i.shift():yQ(i,s),i.length===1&&(a[t]=i[0]),a.removeListener!==void 0&&this.emit("removeListener",t,f||r)}return this};Yi.prototype.off=Yi.prototype.removeListener;Yi.prototype.removeAllListeners=function(t){var r,i,a;if(i=this._events,i===void 0)return this;if(i.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):i[t]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete i[t]),this;if(arguments.length===0){var s=Object.keys(i),l;for(a=0;a=0;a--)this.removeListener(t,r[a]);return this};function _k(e,t,r){var i=e._events;if(i===void 0)return[];var a=i[t];return a===void 0?[]:typeof a=="function"?r?[a.listener||a]:[a]:r?gQ(a):bk(a,a.length)}Yi.prototype.listeners=function(t){return _k(this,t,!0)};Yi.prototype.rawListeners=function(t){return _k(this,t,!1)};Yi.listenerCount=function(e,t){return typeof e.listenerCount=="function"?e.listenerCount(t):xk.call(e,t)};Yi.prototype.listenerCount=xk;function xk(e){var t=this._events;if(t!==void 0){var r=t[e];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}Yi.prototype.eventNames=function(){return this._eventsCount>0?E_(this._events):[]};function bk(e,t){for(var r=new Array(t),i=0;i{"use strict";var Sw=D_().EventEmitter,bQ={init:function(e){if(e._ev instanceof Sw)return e;var t=new Sw,r=new Sw;return e._ev=t,e._internalEv=r,e.on=t.on.bind(t),e.once=t.once.bind(t),e.removeListener=t.removeListener.bind(t),e.removeAllListeners=t.removeAllListeners.bind(t),e._internalOn=r.on.bind(r),e._internalOnce=r.once.bind(r),e._removeInternalListener=r.removeListener.bind(r),e._removeAllInternalListeners=r.removeAllListeners.bind(r),e.emit=function(i,a){t.emit(i,a),r.emit(i,a)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,t,r){var i,a=e._ev;if(!a)return;var s=a._events[t];if(!s)return;function l(h){if(h.listener){if(a.removeListener(t,h.listener),!h.fired)return h.fired=!0,h.listener.apply(a,[r])}else return h.apply(a,[r])}s=Array.isArray(s)?s:[s];var f;for(f=0;f{"use strict";var Ak=Bt(),wQ=ad().dfltConfig;function TQ(e,t){for(var r=[],i,a=0;awQ.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};gc.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};gc.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};gc.undo=function(t){var r,i;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,i=0;i=t.undoQueue.queue.length)){for(r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,i=0;i{"use strict";kk.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var k0=pe(Wn=>{"use strict";var Gl=sa(),Hy=Bt(),z_=ys(),Cw=m0(),AQ=kw(),MQ=Ry(),SQ=ad().configAttributes,Ck=il(),Ru=Hy.extendDeepAll,M0=Hy.isPlainObject,kQ=Hy.isArrayOrTypedArray,I_=Hy.nestedProperty,CQ=Hy.valObjectMeta,Ew="_isSubplotObj",R_="_isLinkedToArray",EQ="_arrayAttrRegexps",Lk="_deprecated",Lw=[Ew,R_,EQ,Lk];Wn.IS_SUBPLOT_OBJ=Ew;Wn.IS_LINKED_TO_ARRAY=R_;Wn.DEPRECATED=Lk;Wn.UNDERSCORE_ATTRS=Lw;Wn.get=function(){var e={};return Gl.allTypes.forEach(function(t){e[t]=DQ(t)}),{defs:{valObjects:CQ,metaKeys:Lw.concat(["description","role","editType","impliedEdits"]),editType:{traces:Ck.traces,layout:Ck.layout},impliedEdits:{}},traces:e,layout:PQ(),frames:zQ(),animation:S0(MQ),config:S0(SQ)}};Wn.crawl=function(e,t,r,i){var a=r||0;i=i||"",Object.keys(e).forEach(function(s){var l=e[s];if(Lw.indexOf(s)===-1){var f=(i?i+".":"")+s;t(l,s,e,a,f),!Wn.isValObject(l)&&M0(l)&&s!=="impliedEdits"&&Wn.crawl(l,t,a+1,f)}})};Wn.isValObject=function(e){return e&&e.valType!==void 0};Wn.findArrayAttributes=function(e){var t=[],r=[],i=[],a,s;function l(h,v,m,_){r=r.slice(0,_).concat([v]),i=i.slice(0,_).concat([h&&h._isLinkedToArray]);var T=h&&(h.valType==="data_array"||h.arrayOk===!0)&&!(r[_-1]==="colorbar"&&(v==="ticktext"||v==="tickvals"));T&&f(a,0,"")}function f(h,v,m){var _=h[r[v]],T=m+r[v];if(v===r.length-1)kQ(_)&&t.push(s+T);else if(i[v]){if(Array.isArray(_))for(var S=0;S<_.length;S++)M0(_[S])&&f(_[S],v+1,T+"["+S+"].")}else M0(_)&&f(_,v+1,T+".")}return a=e,s="",Wn.crawl(z_,l),e._module&&e._module.attributes&&Wn.crawl(e._module.attributes,l),t};Wn.getTraceValObject=function(e,t){var r=t[0],i=1,a,s,l=e._module;if(l||(l=(Gl.modules[e.type||z_.type.dflt]||{})._module),!l)return!1;if(a=l.attributes,s=a&&a[r],!s){var f=l.basePlotModule;f&&f.attributes&&(s=f.attributes[r])}return s||(s=z_[r]),Dk(s,t,i)};Wn.getLayoutValObject=function(e,t){var r=LQ(e,t[0]);return Dk(r,t,1)};function LQ(e,t){var r,i,a,s,l=e._basePlotModules;if(l){var f;for(r=0;r=s.length)return!1;if(e.dimensions===2){if(r++,t.length===r)return e;var l=t[r];if(!P_(l))return!1;e=s[a][l]}else e=s[a]}else e=s}}return e}function P_(e){return e===Math.round(e)&&e>=0}function DQ(e){var t,r;t=Gl.modules[e]._module,r=t.basePlotModule;var i={};i.type=null;var a=Ru({},z_),s=Ru({},t.attributes);Wn.crawl(s,function(h,v,m,_,T){I_(a,T).set(void 0),h===void 0&&I_(s,T).set(void 0)}),Ru(i,a),Gl.traceIs(e,"noOpacity")&&delete i.opacity,Gl.traceIs(e,"showLegend")||(delete i.showlegend,delete i.legendgroup),Gl.traceIs(e,"noHover")&&(delete i.hoverinfo,delete i.hoverlabel),t.selectPoints||delete i.selectedpoints,Ru(i,s),r.attributes&&Ru(i,r.attributes),i.type=e;var l={meta:t.meta||{},categories:t.categories||{},animatable:!!t.animatable,type:e,attributes:S0(i)};if(t.layoutAttributes){var f={};Ru(f,t.layoutAttributes),l.layoutAttributes=S0(f)}return t.animatable||Wn.crawl(l,function(h){Wn.isValObject(h)&&"anim"in h&&delete h.anim}),l}function PQ(){var e={},t,r;Ru(e,Cw);for(t in Gl.subplotsRegistry)if(r=Gl.subplotsRegistry[t],!!r.layoutAttributes)if(Array.isArray(r.attr))for(var i=0;i{"use strict";var C0=Bt(),NQ=ys(),Dh="templateitemname",Dw={name:{valType:"string",editType:"none"}};Dw[Dh]={valType:"string",editType:"calc"};ld.templatedArray=function(e,t){return t._isLinkedToArray=e,t.name=Dw.name,t[Dh]=Dw[Dh],t};ld.traceTemplater=function(e){var t={},r,i;for(r in e)i=e[r],Array.isArray(i)&&i.length&&(t[r]=0);function a(s){r=C0.coerce(s,{},NQ,"type");var l={type:r,_template:null};if(r in t){i=e[r];var f=t[r]%i.length;t[r]++,l._template=i[f]}return l}return{newTrace:a}};ld.newContainer=function(e,t,r){var i=e._template,a=i&&(i[t]||r&&i[r]);C0.isPlainObject(a)||(a=null);var s=e[t]={_template:a};return s};ld.arrayTemplater=function(e,t,r){var i=e._template,a=i&&i[zk(t)],s=i&&i[t];(!Array.isArray(s)||!s.length)&&(s=[]);var l={};function f(v){var m={name:v.name,_input:v},_=m[Dh]=v[Dh];if(!Pk(_))return m._template=a,m;for(var T=0;T=i&&(r._input||{})._templateitemname;s&&(a=i);var l=t+"["+a+"]",f;function h(){f={},s&&(f[l]={},f[l][Dh]=s)}h();function v(S,C){f[S]=C}function m(S,C){s?C0.nestedProperty(f[l],S).set(C):f[l+"."+S]=C}function _(){var S=f;return h(),S}function T(S,C){S&&m(S,C);var E=_();for(var L in E)C0.nestedProperty(e,L).set(E[L])}return{modifyBase:v,modifyItem:m,getUpdateObj:_,applyUpdate:T}}});var Ao=pe((Ige,Ik)=>{"use strict";var Gy=h0().counter;Ik.exports={idRegex:{x:Gy("x","( domain)?"),y:Gy("y","( domain)?")},attrRegex:Gy("[xy]axis"),xAxisMatch:Gy("xaxis"),yAxisMatch:Gy("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var Xn=pe(Ns=>{"use strict";var BQ=sa(),Pw=Ao();Ns.id2name=function(t){if(!(typeof t!="string"||!t.match(Pw.AX_ID_PATTERN))){var r=t.split(" ")[0].slice(1);return r==="1"&&(r=""),t.charAt(0)+"axis"+r}};Ns.name2id=function(t){if(t.match(Pw.AX_NAME_PATTERN)){var r=t.slice(5);return r==="1"&&(r=""),t.charAt(0)+r}};Ns.cleanId=function(t,r,i){var a=/( domain)$/.test(t);if(!(typeof t!="string"||!t.match(Pw.AX_ID_PATTERN))&&!(r&&t.charAt(0)!==r)&&!(a&&!i)){var s=t.split(" ")[0].slice(1).replace(/^0+/,"");return s==="1"&&(s=""),t.charAt(0)+s+(a&&i?" domain":"")}};Ns.list=function(e,t,r){var i=e._fullLayout;if(!i)return[];var a=Ns.listIds(e,t),s=new Array(a.length),l;for(l=0;li?1:-1:+(e.slice(1)||1)-+(t.slice(1)||1)};Ns.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function Rk(e,t){if(t&&t.length){for(var r=0;r{"use strict";function OQ(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".outline-controllers").remove()}function UQ(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}Fk.exports={clearOutlineControllers:OQ,clearOutline:UQ}});var F_=pe((qge,qk)=>{"use strict";qk.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var B_=pe(N_=>{"use strict";var q_=sa(),Nge=Ao().SUBPLOT_PATTERN;N_.getSubplotCalcData=function(e,t,r){var i=q_.subplotsRegistry[t];if(!i)return[];for(var a=i.attr,s=[],l=0;l{"use strict";var VQ=sa(),E0=Bt();ud.manageCommandObserver=function(e,t,r,i){var a={},s=!0;t&&t._commandObserver&&(a=t._commandObserver),a.cache||(a.cache={}),a.lookupTable={};var l=ud.hasSimpleAPICommandBindings(e,r,a.lookupTable);if(t&&t._commandObserver){if(l)return a;if(t._commandObserver.remove)return t._commandObserver.remove(),t._commandObserver=null,a}if(l){Nk(e,l,a.cache),a.check=function(){if(s){var m=Nk(e,l,a.cache);return m.changed&&i&&a.lookupTable[m.value]!==void 0&&(a.disable(),Promise.resolve(i({value:m.value,type:l.type,prop:l.prop,traces:l.traces,index:a.lookupTable[m.value]})).then(a.enable,a.enable)),m.changed}};for(var f=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],h=0;h0?".":"")+a;E0.isPlainObject(s)?zw(s,t,l,i+1):t(l,a,s)}})}});var eo=pe((Uge,tC)=>{"use strict";var Xk=ja(),GQ=l0().timeFormatLocale,ZQ=V3().formatLocale,Zy=Da(),YQ=H3(),ti=sa(),jk=k0(),WQ=Ii(),Dr=Bt(),Jk=Oa(),Vk=Zi().BADNUM,Bs=Xn(),XQ=Ph().clearOutline,jQ=F_(),Iw=Ry(),JQ=kw(),KQ=B_().getModuleCalcData,Hk=Dr.relinkPrivateKeys,fd=Dr._,_r=tC.exports={};Dr.extendFlat(_r,ti);_r.attributes=ys();_r.attributes.type.values=_r.allTypes;_r.fontAttrs=qo();_r.layoutAttributes=m0();var U_=Uk();_r.executeAPICommand=U_.executeAPICommand;_r.computeAPICommandBindings=U_.computeAPICommandBindings;_r.manageCommandObserver=U_.manageCommandObserver;_r.hasSimpleAPICommandBindings=U_.hasSimpleAPICommandBindings;_r.redrawText=function(e){return e=Dr.getGraphDiv(e),new Promise(function(t){setTimeout(function(){e._fullLayout&&(ti.getComponentMethod("annotations","draw")(e),ti.getComponentMethod("legend","draw")(e),ti.getComponentMethod("colorbar","draw")(e),t(_r.previousPromises(e)))},300)})};_r.resize=function(e){e=Dr.getGraphDiv(e);var t,r=new Promise(function(i,a){(!e||Dr.isHidden(e))&&a(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(t=e._resolveResize),e._resolveResize=i,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||Dr.isHidden(e)){i(e);return}delete e.layout.width,delete e.layout.height;var s=e.changed;e.autoplay=!0,ti.call("relayout",e,{autosize:!0}).then(function(){e.changed=s,e._resolveResize===i&&(delete e._resolveResize,i(e))})},100)});return t&&t(r),r};_r.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};_r.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var t=e._fullLayout,r=Dr.ensureSingle(t._paper,"text","js-plot-link-container",function(h){h.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:Jk.defaultLine,"pointer-events":"all"}).each(function(){var v=Xk.select(this);v.append("tspan").classed("js-link-to-tool",!0),v.append("tspan").classed("js-link-spacer",!0),v.append("tspan").classed("js-sourcelinks",!0)})}),i=r.node(),a={y:t._paper.attr("height")-9};document.body.contains(i)&&i.getComputedTextLength()>=t.width-20?(a["text-anchor"]="start",a.x=5):(a["text-anchor"]="end",a.x=t._paper.attr("width")-7),r.attr(a);var s=r.select(".js-link-to-tool"),l=r.select(".js-link-spacer"),f=r.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&QQ(e,s),l.text(s.text()&&f.text()?" - ":"")}};function QQ(e,t){t.text("");var r=t.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)r.on("click",function(){_r.sendDataToCloud(e)});else{var i=window.location.pathname.split("/"),a=window.location.search;r.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+i[2].split(".")[0]+"/"+i[1]+a})}}_r.sendDataToCloud=function(e){var t=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(t){e.emit("plotly_beforeexport");var r=Xk.select(e).append("div").attr("id","hiddenform").style("display","none"),i=r.append("form").attr({action:t+"/external",method:"post",target:"_blank"}),a=i.append("input").attr({type:"text",name:"data"});return a.node().value=_r.graphJson(e,!1,"keepdata"),i.node().submit(),r.remove(),e.emit("plotly_afterexport"),!1}};var $Q=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],e$=["year","month","dayMonth","dayMonthYear"];_r.supplyDefaults=function(e,t){var r=t&&t.skipUpdateCalc,i=e._fullLayout||{};if(i._skipDefaults){delete i._skipDefaults;return}var a=e._fullLayout={},s=e.layout||{},l=e._fullData||[],f=e._fullData=[],h=e.data||[],v=e.calcdata||[],m=e._context||{},_;e._transitionData||_r.createTransitionData(e),a._dfltTitle={plot:fd(e,"Click to enter Plot title"),subtitle:fd(e,"Click to enter Plot subtitle"),x:fd(e,"Click to enter X axis title"),y:fd(e,"Click to enter Y axis title"),colorbar:fd(e,"Click to enter Colorscale title"),annotation:fd(e,"new text")},a._traceWord=fd(e,"trace");var T=Gk(e,$Q);if(a._mapboxAccessToken=m.mapboxAccessToken,i._initialAutoSizeIsDone){var S=i.width,C=i.height;_r.supplyLayoutGlobalDefaults(s,a,T),s.width||(a.width=S),s.height||(a.height=C),_r.sanitizeMargins(a)}else{_r.supplyLayoutGlobalDefaults(s,a,T);var E=!s.width||!s.height,L=a.autosize,z=m.autosizable,B=E&&(L||z);B?_r.plotAutoSize(e,s,a):E&&_r.sanitizeMargins(a),!L&&E&&(s.width=a.width,s.height=a.height)}a._d3locale=a$(T,a.separators),a._extraFormat=Gk(e,e$),a._initialAutoSizeIsDone=!0,a._dataLength=h.length,a._modules=[],a._visibleModules=[],a._basePlotModules=[];var q=a._subplots=r$(),I=a._splomAxes={x:{},y:{}},O=a._splomSubplots={};a._splomGridDflt={},a._scatterStackOpts={},a._firstScatter={},a._alignmentOpts={},a._colorAxes={},a._requestRangeslider={},a._traceUids=t$(l,h),_r.supplyDataDefaults(h,f,s,a);var H=Object.keys(I.x),V=Object.keys(I.y);if(H.length>1&&V.length>1){for(ti.getComponentMethod("grid","sizeDefaults")(s,a),_=0;_15&&V.length>15&&a.shapes.length===0&&a.images.length===0,_r.linkSubplots(f,a,l,i),_r.cleanPlot(f,a,l,i);var oe=!!(i._has&&i._has("cartesian")),fe=!!(a._has&&a._has("cartesian")),he=oe,ke=fe;he&&!ke?i._bgLayer.remove():ke&&!he&&(a._shouldCreateBgLayer=!0),i._zoomlayer&&!e._dragging&&XQ({_fullLayout:i}),i$(f,a),Hk(a,i),ti.getComponentMethod("colorscale","crossTraceDefaults")(f,a),a._preGUI||(a._preGUI={}),a._tracePreGUI||(a._tracePreGUI={});var Se=a._tracePreGUI,Ae={},xe;for(xe in Se)Ae[xe]="old";for(_=0;_0){var m=1-2*s;l=Math.round(m*l),f=Math.round(m*f)}}var _=_r.layoutAttributes.width.min,T=_r.layoutAttributes.height.min;l<_&&(l=_),f1,C=!r.height&&Math.abs(i.height-f)>1;(C||S)&&(S&&(i.width=l),C&&(i.height=f)),t._initialAutoSize||(t._initialAutoSize={width:l,height:f}),_r.sanitizeMargins(i)};_r.supplyLayoutModuleDefaults=function(e,t,r,i){var a=ti.componentsRegistry,s=t._basePlotModules,l,f,h,v=ti.subplotsRegistry.cartesian;for(l in a)h=a[l],h.includeBasePlot&&h.includeBasePlot(e,t);s.length||s.push(v),t._has("cartesian")&&(ti.getComponentMethod("grid","contentDefaults")(e,t),v.finalizeSubplots(e,t));for(var m in t._subplots)t._subplots[m].sort(Dr.subplotSort);for(f=0;f1&&(r.l/=L,r.r/=L)}if(T){var z=(r.t+r.b)/T;z>1&&(r.t/=z,r.b/=z)}var B=r.xl!==void 0?r.xl:r.x,q=r.xr!==void 0?r.xr:r.x,I=r.yt!==void 0?r.yt:r.y,O=r.yb!==void 0?r.yb:r.y;S[t]={l:{val:B,size:r.l+E},r:{val:q,size:r.r+E},b:{val:O,size:r.b+E},t:{val:I,size:r.t+E}},C[t]=1}if(!i._replotting)return _r.doAutoMargin(e)}};function o$(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var t=Bs.list(e,"",!0);for(var r in t)if(t[r].autoshift||t[r].shift)return!0;return!1}_r.doAutoMargin=function(e){var t=e._fullLayout,r=t.width,i=t.height;t._size||(t._size={}),Kk(t);var a=t._size,s=t.margin,l={t:0,b:0,l:0,r:0},f=Dr.extendFlat({},a),h=s.l,v=s.r,m=s.t,_=s.b,T=t._pushmargin,S=t._pushmarginIds,C=t.minreducedwidth,E=t.minreducedheight;if(s.autoexpand!==!1){for(var L in T)S[L]||delete T[L];var z=e._fullLayout._reservedMargin;for(var B in z)for(var q in z[B]){var I=z[B][q];l[q]=Math.max(l[q],I)}T.base={l:{val:0,size:h},r:{val:1,size:v},t:{val:1,size:m},b:{val:0,size:_}};for(var O in l){var H=0;for(var V in T)V!=="base"&&Zy(T[V][O].size)&&(H=T[V][O].size>H?T[V][O].size:H);var W=Math.max(0,s[O]-H);l[O]=Math.max(0,l[O]-W)}for(var J in T){var te=T[J].l||{},ne=T[J].b||{},oe=te.val,fe=te.size,he=ne.val,ke=ne.size,Se=r-l.r-l.l,Ae=i-l.t-l.b;for(var xe in T){if(Zy(fe)&&T[xe].r){var be=T[xe].r.val,Me=T[xe].r.size;if(be>oe){var Le=(fe*be+(Me-Se)*oe)/(be-oe),je=(Me*(1-oe)+(fe-Se)*(1-be))/(be-oe);Le+je>h+v&&(h=Le,v=je)}}if(Zy(ke)&&T[xe].t){var lt=T[xe].t.val,at=T[xe].t.size;if(lt>he){var gt=(ke*lt+(at-Ae)*he)/(lt-he),Ye=(at*(1-he)+(ke-Ae)*(1-lt))/(lt-he);gt+Ye>_+m&&(_=gt,m=Ye)}}}}}var St=Dr.constrain(r-s.l-s.r,Qk,C),it=Dr.constrain(i-s.t-s.b,$k,E),mt=Math.max(0,r-St),bt=Math.max(0,i-it);if(mt){var vt=(h+v)/mt;vt>1&&(h/=vt,v/=vt)}if(bt){var de=(_+m)/bt;de>1&&(_/=de,m/=de)}if(a.l=Math.round(h)+l.l,a.r=Math.round(v)+l.r,a.t=Math.round(m)+l.t,a.b=Math.round(_)+l.b,a.p=Math.round(s.pad),a.w=Math.round(r)-a.l-a.r,a.h=Math.round(i)-a.t-a.b,!t._replotting&&(_r.didMarginChange(f,a)||o$(e))){"_redrawFromAutoMarginCount"in t?t._redrawFromAutoMarginCount++:t._redrawFromAutoMarginCount=1;var De=3*(1+Object.keys(S).length);if(t._redrawFromAutoMarginCount1)return!0}return!1};_r.graphJson=function(e,t,r,i,a,s){(a&&t&&!e._fullData||a&&!t&&!e._fullLayout)&&_r.supplyDefaults(e);var l=a?e._fullData:e.data,f=a?e._fullLayout:e.layout,h=(e._transitionData||{})._frames;function v(T,S){if(typeof T=="function")return S?"_function_":null;if(Dr.isPlainObject(T)){var C={},E;return Object.keys(T).sort().forEach(function(q){if(["_","["].indexOf(q.charAt(0))===-1){if(typeof T[q]=="function"){S&&(C[q]="_function");return}if(r==="keepdata"){if(q.slice(-3)==="src")return}else if(r==="keepstream"){if(E=T[q+"src"],typeof E=="string"&&E.indexOf(":")>0&&!Dr.isPlainObject(T.stream))return}else if(r!=="keepall"&&(E=T[q+"src"],typeof E=="string"&&E.indexOf(":")>0))return;C[q]=v(T[q],S)}}),C}var L=Array.isArray(T),z=Dr.isTypedArray(T);if((L||z)&&T.dtype&&T.shape){var B=T.bdata;return v({dtype:T.dtype,shape:T.shape,bdata:Dr.isArrayBuffer(B)?YQ.encode(B):B},S)}return L?T.map(function(q){return v(q,S)}):z?Dr.simpleMap(T,Dr.identity):Dr.isJSDate(T)?Dr.ms2DateTimeLocal(+T):T}var m={data:(l||[]).map(function(T){var S=v(T);return t&&delete S.fit,S})};if(!t&&(m.layout=v(f),a)){var _=f._size;m.layout.computed={margin:{b:_.b,l:_.l,r:_.r,t:_.t}}}return h&&(m.frames=v(h)),s&&(m.config=v(e._context,!0)),i==="object"?m:JSON.stringify(m)};_r.modifyFrames=function(e,t){var r,i,a,s=e._transitionData._frames,l=e._transitionData._frameHash;for(r=0;r0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){i=!0}),r.redraw&&e._transitionData._interruptCallbacks.push(function(){return ti.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var T=0,S=0;function C(){return T++,function(){S++,!i&&S===T&&f(_)}}r.runFn(C),setTimeout(C())})}function f(_){if(e._transitionData)return s(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(r.redraw)return ti.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(_)}function h(){if(e._transitionData)return e._transitioning=!1,a(e._transitionData._interruptCallbacks)}var v=[_r.previousPromises,h,r.prepareFn,_r.rehover,_r.reselect,l],m=Dr.syncOrAsync(v,e);return(!m||!m.then)&&(m=Promise.resolve()),m.then(function(){return e})}_r.doCalcdata=function(e,t){var r=Bs.list(e),i=e._fullData,a=e._fullLayout,s,l,f,h,v=new Array(i.length),m=(e.calcdata||[]).slice();for(e.calcdata=v,a._numBoxes=0,a._numViolins=0,a._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,a._piecolormap={},a._sunburstcolormap={},a._treemapcolormap={},a._iciclecolormap={},a._funnelareacolormap={},f=0;f=0;h--)if(O[h].enabled){s._indexToPoints=O[h]._indexToPoints;break}l&&l.calc&&(I=l.calc(e,s))}(!Array.isArray(I)||!I[0])&&(I=[{x:Vk,y:Vk}]),I[0].t||(I[0].t={}),I[0].trace=s,v[B]=I}}for(Yk(r,i,a),f=0;f{"use strict";cd.xmlns="http://www.w3.org/2000/xmlns/";cd.svg="http://www.w3.org/2000/svg";cd.xlink="http://www.w3.org/1999/xlink";cd.svgAttrs={xmlns:cd.svg,"xmlns:xlink":cd.xlink}});var ts=pe((Hge,rC)=>{"use strict";rC.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var co=pe(Zl=>{"use strict";var Nn=ja(),_c=Bt(),f$=_c.strTranslate,Rw=zh(),c$=ts().LINE_SPACING,h$=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;Zl.convertToTspans=function(e,t,r){var i=e.text(),a=!e.attr("data-notex")&&t&&t._context.typesetMath&&typeof MathJax!="undefined"&&i.match(h$),s=Nn.select(e.node().parentNode);if(s.empty())return;var l=e.attr("class")?e.attr("class").split(" ")[0]:"text";l+="-math",s.selectAll("svg."+l).remove(),s.selectAll("g."+l+"-group").remove(),e.style("display",null).attr({"data-unformatted":i,"data-math":"N"});function f(){s.empty()||(l=e.attr("class")+"-math",s.select("svg."+l).remove()),e.text("").style("white-space","pre");var h=M$(e.node(),i);h&&e.style("pointer-events","all"),Zl.positionText(e),r&&r.call(e)}return a?(t&&t._promises||[]).push(new Promise(function(h){e.style("display","none");var v=parseInt(e.node().style.fontSize,10),m={fontSize:v};m$(a[2],m,function(_,T,S){s.selectAll("svg."+l).remove(),s.selectAll("g."+l+"-group").remove();var C=_&&_.select("svg");if(!C||!C.node()){f(),h();return}var E=s.append("g").classed(l+"-group",!0).attr({"pointer-events":"none","data-unformatted":i,"data-math":"Y"});E.node().appendChild(C.node()),T&&T.node()&&C.node().insertBefore(T.node().cloneNode(!0),C.node().firstChild);var L=S.width,z=S.height;C.attr({class:l,height:z,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var B=e.node().style.fill||"black",q=C.select("g");q.attr({fill:B,stroke:B});var I=q.node().getBoundingClientRect(),O=I.width,H=I.height;(O>L||H>z)&&(C.style("overflow","hidden"),I=C.node().getBoundingClientRect(),O=I.width,H=I.height);var V=+e.attr("x"),W=+e.attr("y"),J=v||e.node().getBoundingClientRect().height,te=-J/4;if(l[0]==="y")E.attr({transform:"rotate("+[-90,V,W]+")"+f$(-O/2,te-H/2)});else if(l[0]==="l")W=te-H/2;else if(l[0]==="a"&&l.indexOf("atitle")!==0)V=0,W=te;else{var ne=e.attr("text-anchor");V=V-O*(ne==="middle"?.5:ne==="end"?1:0),W=W+te-H/2}C.attr({x:V,y:W}),r&&r.call(e,E),h(E)})})):f(),e};var v$=/(<|<|<)/g,d$=/(>|>|>)/g;function p$(e){return e.replace(v$,"\\lt ").replace(d$,"\\gt ")}var aC=[["$","$"],["\\(","\\)"]];function m$(e,t,r){var i=parseInt((MathJax.version||"").split(".")[0]);if(i!==2&&i!==3){_c.warn("No MathJax version:",MathJax.version);return}var a,s,l,f,h=function(){return s=_c.extendDeepAll({},MathJax.Hub.config),l=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:aC},displayAlign:"left"})},v=function(){s=_c.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=aC},m=function(){if(a=MathJax.Hub.config.menuSettings.renderer,a!=="SVG")return MathJax.Hub.setRenderer("SVG")},_=function(){a=MathJax.config.startup.output,a!=="svg"&&(MathJax.config.startup.output="svg")},T=function(){var B="math-output-"+_c.randstr({},64);f=Nn.select("body").append("div").attr({id:B}).style({visibility:"hidden",position:"absolute","font-size":t.fontSize+"px"}).text(p$(e));var q=f.node();return i===2?MathJax.Hub.Typeset(q):MathJax.typeset([q])},S=function(){var B=f.select(i===2?".MathJax_SVG":".MathJax"),q=!B.empty()&&f.select("svg").node();if(!q)_c.log("There was an error in the tex syntax.",e),r();else{var I=q.getBoundingClientRect(),O;i===2?O=Nn.select("body").select("#MathJax_SVG_glyphs"):O=B.select("defs"),r(B,O,I)}f.remove()},C=function(){if(a!=="SVG")return MathJax.Hub.setRenderer(a)},E=function(){a!=="svg"&&(MathJax.config.startup.output=a)},L=function(){return l!==void 0&&(MathJax.Hub.processSectionDelay=l),MathJax.Hub.Config(s)},z=function(){MathJax.config=s};i===2?MathJax.Hub.Queue(h,m,T,S,C,L):i===3&&(v(),_(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){T(),S(),E(),z()}))}var sC={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},y$={sub:"0.3em",sup:"-0.6em"},g$={sub:"-0.21em",sup:"0.42em"},iC="\u200B",nC=["http:","https:","mailto:","",void 0,":"],lC=Zl.NEWLINES=/(\r\n?|\n)/g,qw=/(<[^<>]*>)/,Nw=/<(\/?)([^ >]*)(\s+(.*))?>/i,_$=//i;Zl.BR_TAG_ALL=//gi;var uC=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,fC=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,cC=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,x$=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function hd(e,t){if(!e)return null;var r=e.match(t),i=r&&(r[3]||r[4]);return i&&V_(i)}var b$=/(^|;)\s*color:/;Zl.plainText=function(e,t){t=t||{};for(var r=t.len!==void 0&&t.len!==-1?t.len:1/0,i=t.allowedTags!==void 0?t.allowedTags:["br"],a="...",s=a.length,l=e.split(qw),f=[],h="",v=0,m=0;ms?f.push(_.slice(0,Math.max(0,E-s))+a):f.push(_.slice(0,E));break}h=""}}return f.join("")};var w$={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},T$=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function V_(e){return e.replace(T$,function(t,r){var i;return r.charAt(0)==="#"?i=A$(r.charAt(1)==="x"?parseInt(r.slice(2),16):parseInt(r.slice(1),10)):i=w$[r],i||t})}Zl.convertEntities=V_;function A$(e){if(!(e>1114111)){var t=String.fromCodePoint;if(t)return t(e);var r=String.fromCharCode;return e<=65535?r(e):r((e>>10)+55232,e%1024+56320)}}function M$(e,t){t=t.replace(lC," ");var r=!1,i=[],a,s=-1;function l(){s++;var H=document.createElementNS(Rw.svg,"tspan");Nn.select(H).attr({class:"line",dy:s*c$+"em"}),e.appendChild(H),a=H;var V=i;if(i=[{node:H}],V.length>1)for(var W=1;W.",t);return}var V=i.pop();H!==V.type&&_c.log("Start tag <"+V.type+"> doesnt match end tag <"+H+">. Pretending it did match.",t),a=i[i.length-1].node}var m=_$.test(t);m?l():(a=e,i=[{node:e}]);for(var _=t.split(qw),T=0;T<_.length;T++){var S=_[T],C=S.match(Nw),E=C&&C[2].toLowerCase(),L=sC[E];if(E==="br")l();else if(L===void 0)h(a,V_(S));else if(C[1])v(E);else{var z=C[4],B={type:E},q=hd(z,uC);if(q?(q=q.replace(b$,"$1 fill:"),L&&(q+=";"+L)):L&&(q=L),q&&(B.style=q),E==="a"){r=!0;var I=hd(z,fC);if(I){var O=hC(I);O&&(B.href=O,B.target=hd(z,cC)||"_blank",B.popup=hd(z,x$))}}f(B)}}return r}function hC(e){var t=encodeURI(decodeURI(e)),r=document.createElement("a"),i=document.createElement("a");r.href=e,i.href=t;var a=r.protocol,s=i.protocol;return nC.indexOf(a)!==-1&&nC.indexOf(s)!==-1?t:""}Zl.sanitizeHTML=function(t){t=t.replace(lC," ");for(var r=document.createElement("p"),i=r,a=[],s=t.split(qw),l=0;l{"use strict";var S$=ja(),G_=Tf(),Wy=Da(),H_=Bt(),vC=Oa(),k$=td().isValid;function C$(e,t,r){var i=t?H_.nestedProperty(e,t).get()||{}:e,a=i[r||"color"];a&&a._inputArray&&(a=a._inputArray);var s=!1;if(H_.isArrayOrTypedArray(a)){for(var l=0;l=0;i--,a++){var s=e[i];r[a]=[1-s[0],s[1]]}return r}function _C(e,t){t=t||{};for(var r=e.domain,i=e.range,a=i.length,s=new Array(a),l=0;l{"use strict";var bC=ow(),L$=bC.FORMAT_LINK,D$=bC.DATE_FORMAT_LINK;function P$(e,t){return{valType:"string",dflt:"",editType:"none",description:(t?Bw:wC)("hover text",e)+["By default the values are formatted using "+(t?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function Bw(e,t){return["Sets the "+e+" formatting rule"+(t?"for `"+t+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+L$+"."].join(" ")}function wC(e,t){return Bw(e,t)+[" And for dates see: "+D$+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}TC.exports={axisHoverFormat:P$,descriptionOnlyNumbers:Bw,descriptionWithDates:wC}});var Fu=pe((Xge,OC)=>{"use strict";var AC=qo(),L0=Af(),BC=hc().dash,Vw=mn().extendFlat,MC=Ii().templatedArray,Wge=Mf().templateFormatStringDescription,SC=Ow().descriptionWithDates,z$=Zi().ONEDAY,Cf=Ao(),I$=Cf.HOUR_PATTERN,R$=Cf.WEEKDAY_PATTERN,Uw={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},F$=Vw({},Uw,{values:Uw.values.slice().concat(["sync"])});function kC(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var CC={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},EC={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},LC={valType:"data_array",editType:"ticks"},DC={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function PC(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=5),t}function zC(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var IC={valType:"color",dflt:L0.defaultLine,editType:"ticks"},RC={valType:"color",dflt:L0.lightLine,editType:"ticks"};function FC(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var qC=Vw({},BC,{editType:"ticks"}),NC={valType:"boolean",editType:"ticks"};OC.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:L0.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:AC({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[Cf.idRegex.x.toString(),Cf.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[Cf.idRegex.x.toString(),Cf.idRegex.y.toString()],editType:"calc"},rangebreaks:MC("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[R$,I$,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:z$},editType:"calc"}),tickmode:F$,nticks:kC(),tick0:CC,dtick:EC,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:LC,ticktext:{valType:"data_array",editType:"ticks"},ticks:DC,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:PC(),tickwidth:zC(),tickcolor:IC,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:Vw({},BC,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:AC({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:SC("tick label")},tickformatstops:MC("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:SC("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:L0.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:NC,gridcolor:RC,gridwidth:FC(),griddash:qC,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:L0.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:L0.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",Cf.idRegex.x.toString(),Cf.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",Cf.idRegex.x.toString(),Cf.idRegex.y.toString()],editType:"plot"},minor:{tickmode:Uw,nticks:kC("minor"),tick0:CC,dtick:EC,tickvals:LC,ticks:DC,ticklen:PC("minor"),tickwidth:zC("minor"),tickcolor:IC,gridcolor:RC,gridwidth:FC("minor"),griddash:qC,showgrid:NC,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var Z_=pe((jge,HC)=>{"use strict";var Wi=Fu(),UC=qo(),VC=mn().extendFlat,q$=il().overrideAll;HC.exports=q$({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:Wi.linecolor,outlinewidth:Wi.linewidth,bordercolor:Wi.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:Wi.minor.tickmode,nticks:Wi.nticks,tick0:Wi.tick0,dtick:Wi.dtick,tickvals:Wi.tickvals,ticktext:Wi.ticktext,ticks:VC({},Wi.ticks,{dflt:""}),ticklabeloverflow:VC({},Wi.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:Wi.ticklen,tickwidth:Wi.tickwidth,tickcolor:Wi.tickcolor,ticklabelstep:Wi.ticklabelstep,showticklabels:Wi.showticklabels,labelalias:Wi.labelalias,tickfont:UC({}),tickangle:Wi.tickangle,tickformat:Wi.tickformat,tickformatstops:Wi.tickformatstops,tickprefix:Wi.tickprefix,showtickprefix:Wi.showtickprefix,ticksuffix:Wi.ticksuffix,showticksuffix:Wi.showticksuffix,separatethousands:Wi.separatethousands,exponentformat:Wi.exponentformat,minexponent:Wi.minexponent,showexponent:Wi.showexponent,title:{text:{valType:"string"},font:UC({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var xc=pe((Kge,ZC)=>{"use strict";var N$=Z_(),B$=h0().counter,O$=b_(),GC=td().scales,Jge=O$(GC);function Y_(e){return"`"+e+"`"}ZC.exports=function(t,r){t=t||"",r=r||{};var i=r.cLetter||"c",a="onlyIfNumerical"in r?r.onlyIfNumerical:!!t,s="noScale"in r?r.noScale:t==="marker.line",l="showScaleDflt"in r?r.showScaleDflt:i==="z",f=typeof r.colorscaleDflt=="string"?GC[r.colorscaleDflt]:null,h=r.editTypeOverride||"",v=t?t+".":"",m,_;"colorAttr"in r?(m=r.colorAttr,_=r.colorAttr):(m={z:"z",c:"color"}[i],_="in "+Y_(v+m));var T=a?" Has an effect only if "+_+" is set to a numerical array.":"",S=i+"auto",C=i+"min",E=i+"max",L=i+"mid",z=Y_(v+S),B=Y_(v+C),q=Y_(v+E),I=B+" and "+q,O={};O[C]=O[E]=void 0;var H={};H[S]=!1;var V={};return m==="color"&&(V.color={valType:"color",arrayOk:!0,editType:h||"style"},r.anim&&(V.color.anim=!0)),V[S]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:O},V[C]={valType:"number",dflt:null,editType:h||"plot",impliedEdits:H},V[E]={valType:"number",dflt:null,editType:h||"plot",impliedEdits:H},V[L]={valType:"number",dflt:null,editType:"calc",impliedEdits:O},V.colorscale={valType:"colorscale",editType:"calc",dflt:f,impliedEdits:{autocolorscale:!1}},V.autocolorscale={valType:"boolean",dflt:r.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},V.reversescale={valType:"boolean",dflt:!1,editType:"plot"},s||(V.showscale={valType:"boolean",dflt:l,editType:"calc"},V.colorbar=N$),r.noColorAxis||(V.coloraxis={valType:"subplotid",regex:B$("coloraxis"),dflt:null,editType:"calc"}),V}});var Gw=pe((Qge,YC)=>{"use strict";var U$=mn().extendFlat,V$=xc(),Hw=td().scales;YC.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:Hw.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:Hw.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:Hw.RdBu,editType:"calc"}},coloraxis:U$({_isSubplotObj:!0,editType:"calc"},V$("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var Zw=pe(($ge,WC)=>{"use strict";var H$=Bt();WC.exports=function(t){return H$.isPlainObject(t.colorbar)}});var Xw=pe(Ww=>{"use strict";var Yw=Da(),XC=Bt(),jC=Zi(),G$=jC.ONEDAY,Z$=jC.ONEWEEK;Ww.dtick=function(e,t){var r=t==="log",i=t==="date",a=t==="category",s=i?G$:1;if(!e)return s;if(Yw(e))return e=Number(e),e<=0?s:a?Math.max(1,Math.round(e)):i?Math.max(.1,e):e;if(typeof e!="string"||!(i||r))return s;var l=e.charAt(0),f=e.slice(1);return f=Yw(f)?Number(f):0,f<=0||!(i&&l==="M"&&f===Math.round(f)||r&&l==="L"||r&&l==="D"&&(f===1||f===2))?s:e};Ww.tick0=function(e,t,r,i){if(t==="date")return XC.cleanDate(e,XC.dateTick0(r,i%Z$===0?1:0));if(!(i==="D1"||i==="D2"))return Yw(e)?Number(e):0}});var jw=pe((t1e,KC)=>{"use strict";var JC=Xw(),Y$=Bt().isArrayOrTypedArray,W$=al().isTypedArraySpec,X$=al().decodeTypedArraySpec;KC.exports=function(t,r,i,a,s){s||(s={});var l=s.isMinor,f=l?t.minor||{}:t,h=l?r.minor:r,v=l?"minor.":"";function m(B){var q=f[B];return W$(q)&&(q=X$(q)),q!==void 0?q:(h._template||{})[B]}var _=m("tick0"),T=m("dtick"),S=m("tickvals"),C=Y$(S)?"array":T?"linear":"auto",E=i(v+"tickmode",C);if(E==="auto"||E==="sync")i(v+"nticks");else if(E==="linear"){var L=h.dtick=JC.dtick(T,a);h.tick0=JC.tick0(_,a,r.calendar,L)}else if(a!=="multicategory"){var z=i(v+"tickvals");z===void 0?h.tickmode="auto":l||i("ticktext")}}});var Kw=pe((r1e,$C)=>{"use strict";var Jw=Bt(),QC=Fu();$C.exports=function(t,r,i,a){var s=a.isMinor,l=s?t.minor||{}:t,f=s?r.minor:r,h=s?QC.minor:QC,v=s?"minor.":"",m=Jw.coerce2(l,f,h,"ticklen",s?(r.ticklen||5)*.6:void 0),_=Jw.coerce2(l,f,h,"tickwidth",s?r.tickwidth||1:void 0),T=Jw.coerce2(l,f,h,"tickcolor",(s?r.tickcolor:void 0)||f.color),S=i(v+"ticks",!s&&a.outerTicks||m||_||T?"outside":"");S||(delete f.ticklen,delete f.tickwidth,delete f.tickcolor)}});var Qw=pe((a1e,eE)=>{"use strict";eE.exports=function(t){var r=["showexponent","showtickprefix","showticksuffix"],i=r.filter(function(s){return t[s]!==void 0}),a=function(s){return t[s]===t[i[0]]};if(i.every(a)||i.length===1)return t[i[0]]}});var Yl=pe((i1e,tE)=>{"use strict";var W_=Bt(),j$=Ii();tE.exports=function(t,r,i){var a=i.name,s=i.inclusionAttr||"visible",l=r[a],f=W_.isArrayOrTypedArray(t[a])?t[a]:[],h=r[a]=[],v=j$.arrayTemplater(r,a,s),m,_;for(m=0;m{"use strict";var $w=Bt(),J$=Oa().contrast,rE=Fu(),K$=Qw(),Q$=Yl();aE.exports=function(t,r,i,a,s){s||(s={});var l=i("labelalias");$w.isPlainObject(l)||delete r.labelalias;var f=K$(t),h=i("showticklabels");if(h){s.noTicklabelshift||i("ticklabelshift"),s.noTicklabelstandoff||i("ticklabelstandoff");var v=s.font||{},m=r.color,_=r.ticklabelposition||"",T=_.indexOf("inside")!==-1?J$(s.bgColor):m&&m!==rE.color.dflt?m:v.color;if($w.coerceFont(i,"tickfont",v,{overrideDflt:{color:T}}),!s.noTicklabelstep&&a!=="multicategory"&&a!=="log"&&i("ticklabelstep"),!s.noAng){var S=i("tickangle");!s.noAutotickangles&&S==="auto"&&i("autotickangles")}if(a!=="category"){var C=i("tickformat");Q$(t,r,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:$$}),r.tickformatstops.length||delete r.tickformatstops,!s.noExp&&!C&&a!=="date"&&(i("showexponent",f),i("exponentformat"),i("minexponent"),i("separatethousands"))}!s.noMinorloglabels&&a==="log"&&i("minorloglabels")}};function $$(e,t){function r(a,s){return $w.coerce(e,t,rE.tickformatstops,a,s)}var i=r("enabled");i&&(r("dtickrange"),r("value"))}});var t5=pe((o1e,iE)=>{"use strict";var eee=Qw();iE.exports=function(t,r,i,a,s){s||(s={});var l=s.tickSuffixDflt,f=eee(t),h=i("tickprefix");h&&i("showtickprefix",f);var v=i("ticksuffix",l);v&&i("showticksuffix",f)}});var r5=pe((s1e,nE)=>{"use strict";var Ih=Bt(),tee=Ii(),ree=jw(),aee=Kw(),iee=e5(),nee=t5(),oee=Z_();nE.exports=function(t,r,i){var a=tee.newContainer(r,"colorbar"),s=t.colorbar||{};function l(ne,oe){return Ih.coerce(s,a,oee,ne,oe)}var f=i.margin||{t:0,b:0,l:0,r:0},h=i.width-f.l-f.r,v=i.height-f.t-f.b,m=l("orientation"),_=m==="v",T=l("thicknessmode");l("thickness",T==="fraction"?30/(_?h:v):30);var S=l("lenmode");l("len",S==="fraction"?1:_?v:h);var C=l("yref"),E=l("xref"),L=C==="paper",z=E==="paper",B,q,I,O="left";_?(I="middle",O=z?"left":"right",B=z?1.02:1,q=.5):(I=L?"bottom":"top",O="center",B=.5,q=L?1.02:1),Ih.coerce(s,a,{x:{valType:"number",min:z?-2:0,max:z?3:1,dflt:B}},"x"),Ih.coerce(s,a,{y:{valType:"number",min:L?-2:0,max:L?3:1,dflt:q}},"y"),l("xanchor",O),l("xpad"),l("yanchor",I),l("ypad"),Ih.noneOrAll(s,a,["x","y"]),l("outlinecolor"),l("outlinewidth"),l("bordercolor"),l("borderwidth"),l("bgcolor");var H=Ih.coerce(s,a,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:_?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");l("ticklabeloverflow",H.indexOf("inside")!==-1?"hide past domain":"hide past div"),ree(s,a,l,"linear");var V=i.font,W={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:V};H.indexOf("inside")!==-1&&(W.bgColor="black"),nee(s,a,l,"linear",W),iee(s,a,l,"linear",W),aee(s,a,l,"linear",W),l("title.text",i._dfltTitle.colorbar);var J=a.showticklabels?a.tickfont:V,te=Ih.extendFlat({},V,{family:J.family,size:Ih.bigFont(J.size)});Ih.coerceFont(l,"title.font",te),l("title.side",_?"top":"right")}});var vd=pe((l1e,lE)=>{"use strict";var oE=Da(),i5=Bt(),see=Zw(),lee=r5(),sE=td().isValid,uee=sa().traceIs;function a5(e,t){var r=t.slice(0,t.length-1);return t?i5.nestedProperty(e,r).get()||{}:e}lE.exports=function e(t,r,i,a,s){var l=s.prefix,f=s.cLetter,h="_module"in r,v=a5(t,l),m=a5(r,l),_=a5(r._template||{},l)||{},T=function(){return delete t.coloraxis,delete r.coloraxis,e(t,r,i,a,s)};if(h){var S=i._colorAxes||{},C=a(l+"coloraxis");if(C){var E=uee(r,"contour")&&i5.nestedProperty(r,"contours.coloring").get()||"heatmap",L=S[C];L?(L[2].push(T),L[0]!==E&&(L[0]=!1,i5.warn(["Ignoring coloraxis:",C,"setting","as it is linked to incompatible colorscales."].join(" ")))):S[C]=[E,r,[T]];return}}var z=v[f+"min"],B=v[f+"max"],q=oE(z)&&oE(B)&&z{"use strict";var uE=Bt(),fee=Ii(),fE=Gw(),cee=vd();cE.exports=function(t,r){function i(_,T){return uE.coerce(t,r,fE,_,T)}i("colorscale.sequential"),i("colorscale.sequentialminus"),i("colorscale.diverging");var a=r._colorAxes,s,l;function f(_,T){return uE.coerce(s,l,fE.coloraxis,_,T)}for(var h in a){var v=a[h];if(v[0])s=t[h]||{},l=fee.newContainer(r,h,"coloraxis"),l._name=h,cee(s,l,r,f,{prefix:"",cLetter:"c"});else{for(var m=0;m{"use strict";var hee=Bt(),vee=kf().hasColorscale,dee=kf().extractOpts;vE.exports=function(t,r){function i(m,_){var T=m["_"+_];T!==void 0&&(m[_]=T)}function a(m,_){var T=_.container?hee.nestedProperty(m,_.container).get():m;if(T)if(T.coloraxis)T._colorAx=r[T.coloraxis];else{var S=dee(T),C=S.auto;(C||S.min===void 0)&&i(T,_.min),(C||S.max===void 0)&&i(T,_.max),S.autocolorscale&&i(T,"colorscale")}}for(var s=0;s{"use strict";var pE=Da(),n5=Bt(),pee=kf().extractOpts;mE.exports=function(t,r,i){var a=t._fullLayout,s=i.vals,l=i.containerStr,f=l?n5.nestedProperty(r,l).get():r,h=pee(f),v=h.auto!==!1,m=h.min,_=h.max,T=h.mid,S=function(){return n5.aggNums(Math.min,null,s)},C=function(){return n5.aggNums(Math.max,null,s)};if(m===void 0?m=S():v&&(f._colorAx&&pE(m)?m=Math.min(m,S()):m=S()),_===void 0?_=C():v&&(f._colorAx&&pE(_)?_=Math.max(_,C()):_=C()),v&&T!==void 0&&(_-T>T-m?m=T-(_-T):_-T=0?E=a.colorscale.sequential:E=a.colorscale.sequentialminus,h._sync("colorscale",E)}}});var P0=pe((h1e,yE)=>{"use strict";var X_=td(),D0=kf();yE.exports={moduleType:"component",name:"colorscale",attributes:xc(),layoutAttributes:Gw(),supplyLayoutDefaults:hE(),handleDefaults:vd(),crossTraceDefaults:dE(),calc:Xy(),scales:X_.scales,defaultScale:X_.defaultScale,getScale:X_.get,isValidScale:X_.isValid,hasColorscale:D0.hasColorscale,extractOpts:D0.extractOpts,extractScale:D0.extractScale,flipScale:D0.flipScale,makeColorScaleFunc:D0.makeColorScaleFunc,makeColorScaleFuncFromTrace:D0.makeColorScaleFuncFromTrace}});var rs=pe((v1e,_E)=>{"use strict";var gE=Bt(),mee=al().isTypedArraySpec;_E.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var t=e.marker;return gE.isPlainObject(t)&&(gE.isArrayOrTypedArray(t.size)||mee(t.size))}}});var o5=pe((d1e,xE)=>{"use strict";var yee=Da();xE.exports=function(t,r){r||(r=2);var i=t.marker,a=i.sizeref||1,s=i.sizemin||0,l=i.sizemode==="area"?function(f){return Math.sqrt(f/a)}:function(f){return f/a};return function(f){var h=l(f/r);return yee(h)&&h>0?Math.max(h,s):0}}});var bc=pe(No=>{"use strict";var j_=Bt();No.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};No.isTraceInSubplots=function(e,t){if(e.type==="splom"){for(var r=e.xaxes||[],i=e.yaxes||[],a=0;a=0&&r.index{TE.exports=wee;var s5={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},bee=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function wee(e){var t=[];return e.replace(bee,function(r,i,a){var s=i.toLowerCase();for(a=Aee(a),s=="m"&&a.length>2&&(t.push([i].concat(a.splice(0,2))),s="l",i=i=="m"?"l":"L");;){if(a.length==s5[s])return a.unshift(i),t.push(a);if(a.length{"use strict";var Mee=l5(),lr=function(e,t){return t?Math.round(e*(t=Math.pow(10,t)))/t:Math.round(e)},ha="M0,0Z",AE=Math.sqrt(2),Rh=Math.sqrt(3),u5=Math.PI,f5=Math.cos,c5=Math.sin;EE.exports={circle:{n:0,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a="M"+i+",0A"+i+","+i+" 0 1,1 0,-"+i+"A"+i+","+i+" 0 0,1 "+i+",0Z";return r?da(t,r,a):a}},square:{n:1,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M"+i+","+i+"H-"+i+"V-"+i+"H"+i+"Z")}},diamond:{n:2,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.3,2);return da(t,r,"M"+i+",0L0,"+i+"L-"+i+",0L0,-"+i+"Z")}},cross:{n:3,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.4,2),a=lr(e*1.2,2);return da(t,r,"M"+a+","+i+"H"+i+"V"+a+"H-"+i+"V"+i+"H-"+a+"V-"+i+"H-"+i+"V-"+a+"H"+i+"V-"+i+"H"+a+"Z")}},x:{n:4,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.8/AE,2),a="l"+i+","+i,s="l"+i+",-"+i,l="l-"+i+",-"+i,f="l-"+i+","+i;return da(t,r,"M0,"+i+a+s+l+s+l+f+l+f+a+f+a+"Z")}},"triangle-up":{n:5,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2/Rh,2),a=lr(e/2,2),s=lr(e,2);return da(t,r,"M-"+i+","+a+"H"+i+"L0,-"+s+"Z")}},"triangle-down":{n:6,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2/Rh,2),a=lr(e/2,2),s=lr(e,2);return da(t,r,"M-"+i+",-"+a+"H"+i+"L0,"+s+"Z")}},"triangle-left":{n:7,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2/Rh,2),a=lr(e/2,2),s=lr(e,2);return da(t,r,"M"+a+",-"+i+"V"+i+"L-"+s+",0Z")}},"triangle-right":{n:8,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2/Rh,2),a=lr(e/2,2),s=lr(e,2);return da(t,r,"M-"+a+",-"+i+"V"+i+"L"+s+",0Z")}},"triangle-ne":{n:9,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.6,2),a=lr(e*1.2,2);return da(t,r,"M-"+a+",-"+i+"H"+i+"V"+a+"Z")}},"triangle-se":{n:10,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.6,2),a=lr(e*1.2,2);return da(t,r,"M"+i+",-"+a+"V"+i+"H-"+a+"Z")}},"triangle-sw":{n:11,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.6,2),a=lr(e*1.2,2);return da(t,r,"M"+a+","+i+"H-"+i+"V-"+a+"Z")}},"triangle-nw":{n:12,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.6,2),a=lr(e*1.2,2);return da(t,r,"M-"+i+","+a+"V-"+i+"H"+a+"Z")}},pentagon:{n:13,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.951,2),a=lr(e*.588,2),s=lr(-e,2),l=lr(e*-.309,2),f=lr(e*.809,2);return da(t,r,"M"+i+","+l+"L"+a+","+f+"H-"+a+"L-"+i+","+l+"L0,"+s+"Z")}},hexagon:{n:14,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a=lr(e/2,2),s=lr(e*Rh/2,2);return da(t,r,"M"+s+",-"+a+"V"+a+"L0,"+i+"L-"+s+","+a+"V-"+a+"L0,-"+i+"Z")}},hexagon2:{n:15,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a=lr(e/2,2),s=lr(e*Rh/2,2);return da(t,r,"M-"+a+","+s+"H"+a+"L"+i+",0L"+a+",-"+s+"H-"+a+"L-"+i+",0Z")}},octagon:{n:16,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.924,2),a=lr(e*.383,2);return da(t,r,"M-"+a+",-"+i+"H"+a+"L"+i+",-"+a+"V"+a+"L"+a+","+i+"H-"+a+"L-"+i+","+a+"V-"+a+"Z")}},star:{n:17,f:function(e,t,r){if(va(t))return ha;var i=e*1.4,a=lr(i*.225,2),s=lr(i*.951,2),l=lr(i*.363,2),f=lr(i*.588,2),h=lr(-i,2),v=lr(i*-.309,2),m=lr(i*.118,2),_=lr(i*.809,2),T=lr(i*.382,2);return da(t,r,"M"+a+","+v+"H"+s+"L"+l+","+m+"L"+f+","+_+"L0,"+T+"L-"+f+","+_+"L-"+l+","+m+"L-"+s+","+v+"H-"+a+"L0,"+h+"Z")}},hexagram:{n:18,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.66,2),a=lr(e*.38,2),s=lr(e*.76,2);return da(t,r,"M-"+s+",0l-"+a+",-"+i+"h"+s+"l"+a+",-"+i+"l"+a+","+i+"h"+s+"l-"+a+","+i+"l"+a+","+i+"h-"+s+"l-"+a+","+i+"l-"+a+",-"+i+"h-"+s+"Z")}},"star-triangle-up":{n:19,f:function(e,t,r){if(va(t))return ha;var i=lr(e*Rh*.8,2),a=lr(e*.8,2),s=lr(e*1.6,2),l=lr(e*4,2),f="A "+l+","+l+" 0 0 1 ";return da(t,r,"M-"+i+","+a+f+i+","+a+f+"0,-"+s+f+"-"+i+","+a+"Z")}},"star-triangle-down":{n:20,f:function(e,t,r){if(va(t))return ha;var i=lr(e*Rh*.8,2),a=lr(e*.8,2),s=lr(e*1.6,2),l=lr(e*4,2),f="A "+l+","+l+" 0 0 1 ";return da(t,r,"M"+i+",-"+a+f+"-"+i+",-"+a+f+"0,"+s+f+i+",-"+a+"Z")}},"star-square":{n:21,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.1,2),a=lr(e*2,2),s="A "+a+","+a+" 0 0 1 ";return da(t,r,"M-"+i+",-"+i+s+"-"+i+","+i+s+i+","+i+s+i+",-"+i+s+"-"+i+",-"+i+"Z")}},"star-diamond":{n:22,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.4,2),a=lr(e*1.9,2),s="A "+a+","+a+" 0 0 1 ";return da(t,r,"M-"+i+",0"+s+"0,"+i+s+i+",0"+s+"0,-"+i+s+"-"+i+",0Z")}},"diamond-tall":{n:23,f:function(e,t,r){if(va(t))return ha;var i=lr(e*.7,2),a=lr(e*1.4,2);return da(t,r,"M0,"+a+"L"+i+",0L0,-"+a+"L-"+i+",0Z")}},"diamond-wide":{n:24,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.4,2),a=lr(e*.7,2);return da(t,r,"M0,"+a+"L"+i+",0L0,-"+a+"L-"+i+",0Z")}},hourglass:{n:25,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M"+i+","+i+"H-"+i+"L"+i+",-"+i+"H-"+i+"Z")},noDot:!0},bowtie:{n:26,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M"+i+","+i+"V-"+i+"L-"+i+","+i+"V-"+i+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M0,"+i+"V-"+i+"M"+i+",0H-"+i+"M"+i+",0A"+i+","+i+" 0 1,1 0,-"+i+"A"+i+","+i+" 0 0,1 "+i+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a=lr(e/AE,2);return da(t,r,"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a+"M"+i+",0A"+i+","+i+" 0 1,1 0,-"+i+"A"+i+","+i+" 0 0,1 "+i+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M0,"+i+"V-"+i+"M"+i+",0H-"+i+"M"+i+","+i+"H-"+i+"V-"+i+"H"+i+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i+"M"+i+","+i+"H-"+i+"V-"+i+"H"+i+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.3,2);return da(t,r,"M"+i+",0L0,"+i+"L-"+i+",0L0,-"+i+"ZM0,-"+i+"V"+i+"M-"+i+",0H"+i)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.3,2),a=lr(e*.65,2);return da(t,r,"M"+i+",0L0,"+i+"L-"+i+",0L0,-"+i+"ZM-"+a+",-"+a+"L"+a+","+a+"M-"+a+","+a+"L"+a+",-"+a)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.4,2);return da(t,r,"M0,"+i+"V-"+i+"M"+i+",0H-"+i)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.2,2),a=lr(e*.85,2);return da(t,r,"M0,"+i+"V-"+i+"M"+i+",0H-"+i+"M"+a+","+a+"L-"+a+",-"+a+"M"+a+",-"+a+"L-"+a+","+a)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,t,r){if(va(t))return ha;var i=lr(e/2,2),a=lr(e,2);return da(t,r,"M"+i+","+a+"V-"+a+"M"+(i-a)+",-"+a+"V"+a+"M"+a+","+i+"H-"+a+"M-"+a+","+(i-a)+"H"+a)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.2,2),a=lr(e*1.6,2),s=lr(e*.8,2);return da(t,r,"M-"+i+","+s+"L0,0M"+i+","+s+"L0,0M0,-"+a+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.2,2),a=lr(e*1.6,2),s=lr(e*.8,2);return da(t,r,"M-"+i+",-"+s+"L0,0M"+i+",-"+s+"L0,0M0,"+a+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.2,2),a=lr(e*1.6,2),s=lr(e*.8,2);return da(t,r,"M"+s+","+i+"L0,0M"+s+",-"+i+"L0,0M-"+a+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.2,2),a=lr(e*1.6,2),s=lr(e*.8,2);return da(t,r,"M-"+s+","+i+"L0,0M-"+s+",-"+i+"L0,0M"+a+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.4,2);return da(t,r,"M"+i+",0H-"+i)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,t,r){if(va(t))return ha;var i=lr(e*1.4,2);return da(t,r,"M0,"+i+"V-"+i)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M"+i+",-"+i+"L-"+i+","+i)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2);return da(t,r,"M"+i+","+i+"L-"+i+",-"+i)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a=lr(e*2,2);return da(t,r,"M0,0L-"+i+","+a+"H"+i+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a=lr(e*2,2);return da(t,r,"M0,0L-"+i+",-"+a+"H"+i+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2,2),a=lr(e,2);return da(t,r,"M0,0L"+i+",-"+a+"V"+a+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2,2),a=lr(e,2);return da(t,r,"M0,0L-"+i+",-"+a+"V"+a+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a=lr(e*2,2);return da(t,r,"M-"+i+",0H"+i+"M0,0L-"+i+","+a+"H"+i+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,t,r){if(va(t))return ha;var i=lr(e,2),a=lr(e*2,2);return da(t,r,"M-"+i+",0H"+i+"M0,0L-"+i+",-"+a+"H"+i+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2,2),a=lr(e,2);return da(t,r,"M0,-"+a+"V"+a+"M0,0L"+i+",-"+a+"V"+a+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,t,r){if(va(t))return ha;var i=lr(e*2,2),a=lr(e,2);return da(t,r,"M0,-"+a+"V"+a+"M0,0L-"+i+",-"+a+"V"+a+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,t,r){if(va(t))return ha;var i=u5/2.5,a=2*e*f5(i),s=2*e*c5(i);return da(t,r,"M0,0L"+-a+","+s+"L"+a+","+s+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,t,r){if(va(t))return ha;var i=u5/4,a=2*e*f5(i),s=2*e*c5(i);return da(t,r,"M0,0L"+-a+","+s+"A "+2*e+","+2*e+" 0 0 1 "+a+","+s+"Z")},backoff:.4,noDot:!0}};function va(e){return e===null}var ME,SE,kE,CE;function da(e,t,r){if((!e||e%360===0)&&!t)return r;if(kE===e&&CE===t&&ME===r)return SE;kE=e,CE=t,ME=r;function i(L,z){var B=f5(L),q=c5(L),I=z[0],O=z[1]+(t||0);return[I*B-O*q,I*q+O*B]}for(var a=e/180*u5,s=0,l=0,f=Mee(r),h="",v=0;v{"use strict";var to=ja(),_i=Bt(),See=_i.numberFormat,yd=Da(),y5=Tf(),K_=sa(),Mo=Oa(),kee=P0(),Jy=_i.strTranslate,Q_=co(),Cee=zh(),Eee=ts(),Lee=Eee.LINE_SPACING,OE=s_().DESELECTDIM,Dee=rs(),Pee=o5(),zee=bc().appendArrayPointValue,xr=JE.exports={};xr.font=function(e,t){var r=t.variant,i=t.style,a=t.weight,s=t.color,l=t.size,f=t.family,h=t.shadow,v=t.lineposition,m=t.textcase;f&&e.style("font-family",f),l+1&&e.style("font-size",l+"px"),s&&e.call(Mo.fill,s),a&&e.style("font-weight",a),i&&e.style("font-style",i),r&&e.style("font-variant",r),m&&e.style("text-transform",h5(Ree(m))),h&&e.style("text-shadow",h==="auto"?Q_.makeTextShadow(Mo.contrast(s)):h5(h)),v&&e.style("text-decoration-line",h5(Fee(v)))};function h5(e){return e==="none"?void 0:e}var Iee={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function Ree(e){return Iee[e]}function Fee(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}xr.setPosition=function(e,t,r){e.attr("x",t).attr("y",r)};xr.setSize=function(e,t,r){e.attr("width",t).attr("height",r)};xr.setRect=function(e,t,r,i,a){e.call(xr.setPosition,t,r).call(xr.setSize,i,a)};xr.translatePoint=function(e,t,r,i){var a=r.c2p(e.x),s=i.c2p(e.y);if(yd(a)&&yd(s)&&t.node())t.node().nodeName==="text"?t.attr("x",a).attr("y",s):t.attr("transform",Jy(a,s));else return!1;return!0};xr.translatePoints=function(e,t,r){e.each(function(i){var a=to.select(this);xr.translatePoint(i,a,t,r)})};xr.hideOutsideRangePoint=function(e,t,r,i,a,s){t.attr("display",r.isPtWithinRange(e,a)&&i.isPtWithinRange(e,s)?null:"none")};xr.hideOutsideRangePoints=function(e,t){if(t._hasClipOnAxisFalse){var r=t.xaxis,i=t.yaxis;e.each(function(a){var s=a[0].trace,l=s.xcalendar,f=s.ycalendar,h=K_.traceIs(s,"bar-like")?".bartext":".point,.textpoint";e.selectAll(h).each(function(v){xr.hideOutsideRangePoint(v,to.select(this),r,i,l,f)})})}};xr.crispRound=function(e,t,r){return!t||!yd(t)?r||0:e._context.staticPlot?t:t<1?1:Math.round(t)};xr.singleLineStyle=function(e,t,r,i,a){t.style("fill","none");var s=(((e||[])[0]||{}).trace||{}).line||{},l=r||s.width||0,f=a||s.dash||"";Mo.stroke(t,i||s.color),xr.dashLine(t,f,l)};xr.lineGroupStyle=function(e,t,r,i){e.style("fill","none").each(function(a){var s=(((a||[])[0]||{}).trace||{}).line||{},l=t||s.width||0,f=i||s.dash||"";to.select(this).call(Mo.stroke,r||s.color).call(xr.dashLine,f,l)})};xr.dashLine=function(e,t,r){r=+r||0,t=xr.dashStyle(t,r),e.style({"stroke-dasharray":t,"stroke-width":r+"px"})};xr.dashStyle=function(e,t){t=+t||1;var r=Math.max(t,3);return e==="solid"?e="":e==="dot"?e=r+"px,"+r+"px":e==="dash"?e=3*r+"px,"+3*r+"px":e==="longdash"?e=5*r+"px,"+5*r+"px":e==="dashdot"?e=3*r+"px,"+r+"px,"+r+"px,"+r+"px":e==="longdashdot"&&(e=5*r+"px,"+2*r+"px,"+r+"px,"+2*r+"px"),e};function UE(e,t,r,i){var a=t.fillpattern,s=t.fillgradient,l=xr.getPatternAttr,f=a&&(l(a.shape,0,"")||l(a.path,0,""));if(f){var h=l(a.bgcolor,0,null),v=l(a.fgcolor,0,null),m=a.fgopacity,_=l(a.size,0,8),T=l(a.solidity,0,.3),S=t.uid;xr.pattern(e,"point",r,S,f,_,T,void 0,a.fillmode,h,v,m)}else if(s&&s.type!=="none"){var C=s.type,E="scatterfill-"+t.uid;if(i&&(E="legendfill-"+t.uid),!i&&(s.start!==void 0||s.stop!==void 0)){var L,z;C==="horizontal"?(L={x:s.start,y:0},z={x:s.stop,y:0}):C==="vertical"&&(L={x:0,y:s.start},z={x:0,y:s.stop}),L.x=t._xA.c2p(L.x===void 0?t._extremes.x.min[0].val:L.x,!0),L.y=t._yA.c2p(L.y===void 0?t._extremes.y.min[0].val:L.y,!0),z.x=t._xA.c2p(z.x===void 0?t._extremes.x.max[0].val:z.x,!0),z.y=t._yA.c2p(z.y===void 0?t._extremes.y.max[0].val:z.y,!0),e.call(GE,r,E,"linear",s.colorscale,"fill",L,z,!0,!1)}else C==="horizontal"&&(C=C+"reversed"),e.call(xr.gradient,r,E,C,s.colorscale,"fill")}else t.fillcolor&&e.call(Mo.fill,t.fillcolor)}xr.singleFillStyle=function(e,t){var r=to.select(e.node()),i=r.data(),a=((i[0]||[])[0]||{}).trace||{};UE(e,a,t,!1)};xr.fillGroupStyle=function(e,t,r){e.style("stroke-width",0).each(function(i){var a=to.select(this);i[0].trace&&UE(a,i[0].trace,t,r)})};var DE=LE();xr.symbolNames=[];xr.symbolFuncs=[];xr.symbolBackOffs=[];xr.symbolNeedLines={};xr.symbolNoDot={};xr.symbolNoFill={};xr.symbolList=[];Object.keys(DE).forEach(function(e){var t=DE[e],r=t.n;xr.symbolList.push(r,String(r),e,r+100,String(r+100),e+"-open"),xr.symbolNames[r]=e,xr.symbolFuncs[r]=t.f,xr.symbolBackOffs[r]=t.backoff||0,t.needLine&&(xr.symbolNeedLines[r]=!0),t.noDot?xr.symbolNoDot[r]=!0:xr.symbolList.push(r+200,String(r+200),e+"-dot",r+300,String(r+300),e+"-open-dot"),t.noFill&&(xr.symbolNoFill[r]=!0)});var qee=xr.symbolNames.length,Nee="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";xr.symbolNumber=function(e){if(yd(e))e=+e;else if(typeof e=="string"){var t=0;e.indexOf("-open")>0&&(t=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(t+=200,e=e.replace("-dot","")),e=xr.symbolNames.indexOf(e),e>=0&&(e+=t)}return e%100>=qee||e>=400?0:Math.floor(Math.max(e,0))};function VE(e,t,r,i){var a=e%100;return xr.symbolFuncs[a](t,r,i)+(e>=200?Nee:"")}var PE=See("~f"),HE={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};xr.gradient=function(e,t,r,i,a,s){var l=HE[i];return GE(e,t,r,l.type,a,s,l.start,l.stop,!1,l.reversed)};function GE(e,t,r,i,a,s,l,f,h,v){var m=a.length,_;i==="linear"?_={node:"linearGradient",attrs:{x1:l.x,y1:l.y,x2:f.x,y2:f.y,gradientUnits:h?"userSpaceOnUse":"objectBoundingBox"},reversed:v}:i==="radial"&&(_={node:"radialGradient",reversed:v});for(var T=new Array(m),S=0;S=0&&e.i===void 0&&(e.i=s.i),t.style("opacity",i.selectedOpacityFn?i.selectedOpacityFn(e):e.mo===void 0?l.opacity:e.mo),i.ms2mrc){var h;e.ms==="various"||l.size==="various"?h=3:h=i.ms2mrc(e.ms),e.mrc=h,i.selectedSizeFn&&(h=e.mrc=i.selectedSizeFn(e));var v=xr.symbolNumber(e.mx||l.symbol)||0;e.om=v%200>=100;var m=x5(e,r),_=_5(e,r);t.attr("d",VE(v,h,m,_))}var T=!1,S,C,E;if(e.so)E=f.outlierwidth,C=f.outliercolor,S=l.outliercolor;else{var L=(f||{}).width;E=(e.mlw+1||L+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?C=e.mlcc=i.lineScale(e.mlc):_i.isArrayOrTypedArray(f.color)?C=Mo.defaultLine:C=f.color,_i.isArrayOrTypedArray(l.color)&&(S=Mo.defaultLine,T=!0),"mc"in e?S=e.mcc=i.markerScale(e.mc):S=l.color||l.colors||"rgba(0,0,0,0)",i.selectedColorFn&&(S=i.selectedColorFn(e))}if(e.om)t.call(Mo.stroke,S).style({"stroke-width":(E||1)+"px",fill:"none"});else{t.style("stroke-width",(e.isBlank?0:E)+"px");var z=l.gradient,B=e.mgt;B?T=!0:B=z&&z.type,_i.isArrayOrTypedArray(B)&&(B=B[0],HE[B]||(B=0));var q=l.pattern,I=xr.getPatternAttr,O=q&&(I(q.shape,e.i,"")||I(q.path,e.i,""));if(B&&B!=="none"){var H=e.mgc;H?T=!0:H=z.color;var V=r.uid;T&&(V+="-"+e.i),xr.gradient(t,a,V,B,[[0,H],[1,S]],"fill")}else if(O){var W=!1,J=q.fgcolor;!J&&s&&s.color&&(J=s.color,W=!0);var te=I(J,e.i,s&&s.color||null),ne=I(q.bgcolor,e.i,null),oe=q.fgopacity,fe=I(q.size,e.i,8),he=I(q.solidity,e.i,.3);W=W||e.mcc||_i.isArrayOrTypedArray(q.shape)||_i.isArrayOrTypedArray(q.path)||_i.isArrayOrTypedArray(q.bgcolor)||_i.isArrayOrTypedArray(q.fgcolor)||_i.isArrayOrTypedArray(q.size)||_i.isArrayOrTypedArray(q.solidity);var ke=r.uid;W&&(ke+="-"+e.i),xr.pattern(t,"point",a,ke,O,fe,he,e.mcc,q.fillmode,ne,te,oe)}else _i.isArrayOrTypedArray(S)?Mo.fill(t,S[e.i]):Mo.fill(t,S);E&&Mo.stroke(t,C)}};xr.makePointStyleFns=function(e){var t={},r=e.marker;return t.markerScale=xr.tryColorscale(r,""),t.lineScale=xr.tryColorscale(r,"line"),K_.traceIs(e,"symbols")&&(t.ms2mrc=Dee.isBubble(e)?Pee(e):function(){return(r.size||6)/2}),e.selectedpoints&&_i.extendFlat(t,xr.makeSelectedPointStyleFns(e)),t};xr.makeSelectedPointStyleFns=function(e){var t={},r=e.selected||{},i=e.unselected||{},a=e.marker||{},s=r.marker||{},l=i.marker||{},f=a.opacity,h=s.opacity,v=l.opacity,m=h!==void 0,_=v!==void 0;(_i.isArrayOrTypedArray(f)||m||_)&&(t.selectedOpacityFn=function(I){var O=I.mo===void 0?a.opacity:I.mo;return I.selected?m?h:O:_?v:OE*O});var T=a.color,S=s.color,C=l.color;(S||C)&&(t.selectedColorFn=function(I){var O=I.mcc||T;return I.selected?S||O:C||O});var E=a.size,L=s.size,z=l.size,B=L!==void 0,q=z!==void 0;return K_.traceIs(e,"symbols")&&(B||q)&&(t.selectedSizeFn=function(I){var O=I.mrc||E/2;return I.selected?B?L/2:O:q?z/2:O}),t};xr.makeSelectedTextStyleFns=function(e){var t={},r=e.selected||{},i=e.unselected||{},a=e.textfont||{},s=r.textfont||{},l=i.textfont||{},f=a.color,h=s.color,v=l.color;return t.selectedTextColorFn=function(m){var _=m.tc||f;return m.selected?h||_:v||(h?_:Mo.addOpacity(_,OE))},t};xr.selectedPointStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=xr.makeSelectedPointStyleFns(t),i=t.marker||{},a=[];r.selectedOpacityFn&&a.push(function(s,l){s.style("opacity",r.selectedOpacityFn(l))}),r.selectedColorFn&&a.push(function(s,l){Mo.fill(s,r.selectedColorFn(l))}),r.selectedSizeFn&&a.push(function(s,l){var f=l.mx||i.symbol||0,h=r.selectedSizeFn(l);s.attr("d",VE(xr.symbolNumber(f),h,x5(l,t),_5(l,t))),l.mrc2=h}),a.length&&e.each(function(s){for(var l=to.select(this),f=0;f0?r:0}xr.textPointStyle=function(e,t,r){if(e.size()){var i;if(t.selectedpoints){var a=xr.makeSelectedTextStyleFns(t);i=a.selectedTextColorFn}var s=t.texttemplate,l=r._fullLayout;e.each(function(f){var h=to.select(this),v=s?_i.extractOption(f,t,"txt","texttemplate"):_i.extractOption(f,t,"tx","text");if(!v&&v!==0){h.remove();return}if(s){var m=t._module.formatLabels,_=m?m(f,t,l):{},T={};zee(T,t,f.i),v=_i.texttemplateString({data:[T,f,t._meta],fallback:t.texttemplatefallback,labels:_,locale:l._d3locale,template:v})}var S=f.tp||t.textposition,C=YE(f,t),E=i?i(f):f.tc||t.textfont.color;h.call(xr.font,{family:f.tf||t.textfont.family,weight:f.tw||t.textfont.weight,style:f.ty||t.textfont.style,variant:f.tv||t.textfont.variant,textcase:f.tC||t.textfont.textcase,lineposition:f.tE||t.textfont.lineposition,shadow:f.tS||t.textfont.shadow,size:C,color:E}).text(v).call(Q_.convertToTspans,r).call(ZE,S,C,f.mrc)})}};xr.selectedTextStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=xr.makeSelectedTextStyleFns(t);e.each(function(i){var a=to.select(this),s=r.selectedTextColorFn(i),l=i.tp||t.textposition,f=YE(i,t);Mo.fill(a,s);var h=K_.traceIs(t,"bar-like");ZE(a,l,f,i.mrc2||i.mrc,h)})}};var zE=.5;xr.smoothopen=function(e,t){if(e.length<3)return"M"+e.join("L");var r="M"+e[0],i=[],a;for(a=1;a=h||I>=m&&I<=h)&&(O<=_&&O>=v||O>=_&&O<=v)&&(e=[I,O])}return e}xr.applyBackoff=jE;xr.makeTester=function(){var e=_i.ensureSingleById(to.select("body"),"svg","js-plotly-tester",function(r){r.attr(Cee.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),t=_i.ensureSingle(e,"path","js-reference-point",function(r){r.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});xr.tester=e,xr.testref=t};xr.savedBBoxes={};var d5=0,Uee=1e4;xr.bBox=function(e,t,r){r||(r=IE(e));var i;if(r){if(i=xr.savedBBoxes[r],i)return _i.extendFlat({},i)}else if(e.childNodes.length===1){var a=e.childNodes[0];if(r=IE(a),r){var s=+a.getAttribute("x")||0,l=+a.getAttribute("y")||0,f=a.getAttribute("transform");if(!f){var h=xr.bBox(a,!1,r);return s&&(h.left+=s,h.right+=s),l&&(h.top+=l,h.bottom+=l),h}if(r+="~"+s+"~"+l+"~"+f,i=xr.savedBBoxes[r],i)return _i.extendFlat({},i)}}var v,m;t?v=e:(m=xr.tester.node(),v=e.cloneNode(!0),m.appendChild(v)),to.select(v).attr("transform",null).call(Q_.positionText,0,0);var _=v.getBoundingClientRect(),T=xr.testref.node().getBoundingClientRect();t||m.removeChild(v);var S={height:_.height,width:_.width,left:_.left-T.left,top:_.top-T.top,right:_.right-T.left,bottom:_.bottom-T.top};return d5>=Uee&&(xr.savedBBoxes={},d5=0),r&&(xr.savedBBoxes[r]=S),d5++,_i.extendFlat({},S)};function IE(e){var t=e.getAttribute("data-unformatted");if(t!==null)return t+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}xr.setClipUrl=function(e,t,r){e.attr("clip-path",g5(t,r))};function g5(e,t){if(!e)return null;var r=t._context,i=r._exportedPlot?"":r._baseUrl||"";return i?"url('"+i+"#"+e+"')":"url(#"+e+")"}xr.getTranslate=function(e){var t=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",i=e[r]("transform")||"",a=i.replace(t,function(s,l,f){return[l,f].join(" ")}).split(" ");return{x:+a[0]||0,y:+a[1]||0}};xr.setTranslate=function(e,t,r){var i=/(\btranslate\(.*?\);?)/,a=e.attr?"attr":"getAttribute",s=e.attr?"attr":"setAttribute",l=e[a]("transform")||"";return t=t||0,r=r||0,l=l.replace(i,"").trim(),l+=Jy(t,r),l=l.trim(),e[s]("transform",l),l};xr.getScale=function(e){var t=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",i=e[r]("transform")||"",a=i.replace(t,function(s,l,f){return[l,f].join(" ")}).split(" ");return{x:+a[0]||1,y:+a[1]||1}};xr.setScale=function(e,t,r){var i=/(\bscale\(.*?\);?)/,a=e.attr?"attr":"getAttribute",s=e.attr?"attr":"setAttribute",l=e[a]("transform")||"";return t=t||1,r=r||1,l=l.replace(i,"").trim(),l+="scale("+t+","+r+")",l=l.trim(),e[s]("transform",l),l};var Vee=/\s*sc.*/;xr.setPointGroupScale=function(e,t,r){if(t=t||1,r=r||1,!!e){var i=t===1&&r===1?"":"scale("+t+","+r+")";e.each(function(){var a=(this.getAttribute("transform")||"").replace(Vee,"");a+=i,a=a.trim(),this.setAttribute("transform",a)})}};var Hee=/translate\([^)]*\)\s*$/;xr.setTextPointsScale=function(e,t,r){e&&e.each(function(){var i,a=to.select(this),s=a.select("text");if(s.node()){var l=parseFloat(s.attr("x")||0),f=parseFloat(s.attr("y")||0),h=(a.attr("transform")||"").match(Hee);t===1&&r===1?i=[]:i=[Jy(l,f),"scale("+t+","+r+")",Jy(-l,-f)],h&&i.push(h),a.attr("transform",i.join(""))}})};function _5(e,t){var r;return e&&(r=e.mf),r===void 0&&(r=t.marker&&t.marker.standoff||0),!t._geo&&!t._xA?-r:r}xr.getMarkerStandoff=_5;var jy=Math.atan2,dd=Math.cos,I0=Math.sin;function RE(e,t){var r=t[0],i=t[1];return[r*dd(e)-i*I0(e),r*I0(e)+i*dd(e)]}var FE,qE,NE,BE,p5,m5;function x5(e,t){var r=e.ma;r===void 0&&(r=t.marker.angle,(!r||_i.isArrayOrTypedArray(r))&&(r=0));var i,a,s=t.marker.angleref;if(s==="previous"||s==="north"){if(t._geo){var l=t._geo.project(e.lonlat);i=l[0],a=l[1]}else{var f=t._xA,h=t._yA;if(f&&h)i=f.c2p(e.x),a=h.c2p(e.y);else return 90}if(t._geo){var v=e.lonlat[0],m=e.lonlat[1],_=t._geo.project([v,m+1e-5]),T=t._geo.project([v+1e-5,m]),S=jy(T[1]-a,T[0]-i),C=jy(_[1]-a,_[0]-i),E;if(s==="north")E=r/180*Math.PI;else if(s==="previous"){var L=v/180*Math.PI,z=m/180*Math.PI,B=FE/180*Math.PI,q=qE/180*Math.PI,I=B-L,O=dd(q)*I0(I),H=I0(q)*dd(z)-dd(q)*I0(z)*dd(I);E=-jy(O,H)-Math.PI,FE=v,qE=m}var V=RE(S,[dd(E),0]),W=RE(C,[I0(E),0]);r=jy(V[1]+W[1],V[0]+W[0])/Math.PI*180,s==="previous"&&!(m5===t.uid&&e.i===p5+1)&&(r=null)}if(s==="previous"&&!t._geo)if(m5===t.uid&&e.i===p5+1&&yd(i)&&yd(a)){var J=i-NE,te=a-BE,ne=t.line&&t.line.shape||"",oe=ne.slice(ne.length-1);oe==="h"&&(te=0),oe==="v"&&(J=0),r+=jy(te,J)/Math.PI*180+90}else r=null}return NE=i,BE=a,p5=e.i,m5=t.uid,r}xr.getMarkerAngle=x5});var Ky=pe((_1e,eL)=>{"use strict";var R0=ja(),Gee=Da(),Zee=eo(),b5=sa(),gd=Bt(),KE=gd.strTranslate,$_=xi(),e2=Oa(),F0=co(),QE=s_(),Yee=ts().OPPOSITE_SIDE,$E=/ [XY][0-9]* /,w5=1.6,T5=1.6;function Wee(e,t,r){var i=e._fullLayout,a=r.propContainer,s=r.propName,l=r.placeholder,f=r.traceIndex,h=r.avoid||{},v=r.attributes,m=r.transform,_=r.containerGroup,T=1,S=a.title,C=(S&&S.text?S.text:"").trim(),E=!1,L=S&&S.font?S.font:{},z=L.family,B=L.size,q=L.color,I=L.weight,O=L.style,H=L.variant,V=L.textcase,W=L.lineposition,J=L.shadow,te=r.subtitlePropName,ne=!!te,oe=r.subtitlePlaceholder,fe=(a.title||{}).subtitle||{text:"",font:{}},he=(fe.text||"").trim(),ke=!1,Se=1,Ae=fe.font,xe=Ae.family,be=Ae.size,Me=Ae.color,Le=Ae.weight,je=Ae.style,lt=Ae.variant,at=Ae.textcase,gt=Ae.lineposition,Ye=Ae.shadow,St;s==="title.text"?St="titleText":s.indexOf("axis")!==-1?St="axisTitleText":s.indexOf("colorbar")!==-1&&(St="colorbarTitleText");var it=e._context.edits[St];function mt(Ut,Ct){return Ut===void 0||Ct===void 0?!1:Ut.replace($E," % ")===Ct.replace($E," % ")}C===""?T=0:mt(C,l)&&(it||(C=""),T=.2,E=!0),ne&&(he===""?Se=0:mt(he,oe)&&(it||(he=""),Se=.2,ke=!0)),r._meta?C=gd.templateString(C,r._meta):i._meta&&(C=gd.templateString(C,i._meta));var bt=C||he||it,vt;_||(_=gd.ensureSingle(i._infolayer,"g","g-"+t),vt=i._hColorbarMoveTitle);var de=_.selectAll("text."+t).data(bt?[0]:[]);de.enter().append("text"),de.text(C).attr("class",t),de.exit().remove();var De=null,ge=t+"-subtitle",rt=he||it;if(ne&&(De=_.selectAll("text."+ge).data(rt?[0]:[]),De.enter().append("text"),De.text(he).attr("class",ge),De.exit().remove()),!bt)return _;function dt(Ut,Ct){gd.syncOrAsync([We,qt],{title:Ut,subtitle:Ct})}function We(Ut){var Ct=Ut.title,At=Ut.subtitle,Vt;!m&&vt&&(m={}),m?(Vt="",m.rotate&&(Vt+="rotate("+[m.rotate,v.x,v.y]+")"),(m.offset||vt)&&(Vt+=KE(0,(m.offset||0)-(vt||0)))):Vt=null,Ct.attr("transform",Vt);function Ht(ct){if(ct){var pt=R0.select(ct.node().parentNode).select("."+ge);if(!pt.empty()){var Ot=ct.node().getBBox();if(Ot.height){var er=Ot.y+Ot.height+w5*be;pt.attr("y",er)}}}}if(Ct.style("opacity",T*e2.opacity(q)).call($_.font,{color:e2.rgb(q),size:R0.round(B,2),family:z,weight:I,style:O,variant:H,textcase:V,shadow:J,lineposition:W}).attr(v).call(F0.convertToTspans,e,Ht),At&&!At.empty()){var Be=_.select("."+t+"-math-group"),st=Ct.node().getBBox(),sr=Be.node()?Be.node().getBBox():void 0,Pr=sr?sr.y+sr.height+w5*be:st.y+st.height+T5*be,Et=gd.extendFlat({},v,{y:Pr});At.attr("transform",Vt),At.style("opacity",Se*e2.opacity(Me)).call($_.font,{color:e2.rgb(Me),size:R0.round(be,2),family:xe,weight:Le,style:je,variant:lt,textcase:at,shadow:Ye,lineposition:gt}).attr(Et).call(F0.convertToTspans,e)}return Zee.previousPromises(e)}function qt(Ut){var Ct=Ut.title,At=R0.select(Ct.node().parentNode);if(h&&h.selection&&h.side&&C){At.attr("transform",null);var Vt=Yee[h.side],Ht=h.side==="left"||h.side==="top"?-1:1,Be=Gee(h.pad)?h.pad:2,st=$_.bBox(At.node()),sr={t:0,b:0,l:0,r:0},Pr=e._fullLayout._reservedMargin;for(var Et in Pr)for(var ct in Pr[Et]){var pt=Pr[Et][ct];sr[ct]=Math.max(sr[ct],pt)}var Ot={left:sr.l,top:sr.t,right:i.width-sr.r,bottom:i.height-sr.b},er=h.maxShift||Ht*(Ot[h.side]-st[h.side]),Zt=0;if(er<0)Zt=er;else{var Kt=h.offsetLeft||0,pr=h.offsetTop||0;st.left-=Kt,st.right-=Kt,st.top-=pr,st.bottom-=pr,h.selection.each(function(){var ur=$_.bBox(this);gd.bBoxIntersect(st,ur,Be)&&(Zt=Math.max(Zt,Ht*(ur[h.side]-st[Vt])+Be))}),Zt=Math.min(er,Zt),a._titleScoot=Math.abs(Zt)}if(Zt>0||er<0){var yr={left:[-Zt,0],right:[Zt,0],top:[0,-Zt],bottom:[0,Zt]}[h.side];At.attr("transform",KE(yr[0],yr[1]))}}}de.call(dt,De);function Dt(Ut,Ct){Ut.text(Ct).on("mouseover.opacity",function(){R0.select(this).transition().duration(QE.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){R0.select(this).transition().duration(QE.HIDE_PLACEHOLDER).style("opacity",0)})}if(it&&(C?de.on(".opacity",null):(Dt(de,l),E=!0),de.call(F0.makeEditable,{gd:e}).on("edit",function(Ut){f!==void 0?b5.call("_guiRestyle",e,s,Ut,f):b5.call("_guiRelayout",e,s,Ut)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(dt)}).on("input",function(Ut){this.text(Ut||" ").call(F0.positionText,v.x,v.y)}),ne)){if(ne&&!C){var Tt=de.node().getBBox(),Rt=Tt.y+Tt.height+T5*be;De.attr("y",Rt)}he?De.on(".opacity",null):(Dt(De,oe),ke=!0),De.call(F0.makeEditable,{gd:e}).on("edit",function(Ut){b5.call("_guiRelayout",e,"title.subtitle.text",Ut)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(dt)}).on("input",function(Ut){this.text(Ut||" ").call(F0.positionText,De.attr("x"),De.attr("y"))})}return de.classed("js-placeholder",E),De&&!De.empty()&&De.classed("js-placeholder",ke),_}eL.exports={draw:Wee,SUBTITLE_PADDING_EM:T5,SUBTITLE_PADDING_MATHJAX_EM:w5}});var l2=pe((x1e,nL)=>{"use strict";var Xee=ja(),jee=l0().utcFormat,Ri=Bt(),Jee=Ri.numberFormat,Ef=Da(),Fh=Ri.cleanNumber,Kee=Ri.ms2DateTime,tL=Ri.dateTime2ms,Lf=Ri.ensureNumber,rL=Ri.isArrayOrTypedArray,qh=Zi(),t2=qh.FP_SAFE,qu=qh.BADNUM,Qee=qh.LOG_CLIP,$ee=qh.ONEWEEK,r2=qh.ONEDAY,a2=qh.ONEHOUR,aL=qh.ONEMIN,iL=qh.ONESEC,i2=Xn(),s2=Ao(),n2=s2.HOUR_PATTERN,o2=s2.WEEKDAY_PATTERN;function Qy(e){return Math.pow(10,e)}function A5(e){return e!=null}nL.exports=function(t,r){r=r||{};var i=t._id||"x",a=i.charAt(0);function s(I,O){if(I>0)return Math.log(I)/Math.LN10;if(I<=0&&O&&t.range&&t.range.length===2){var H=t.range[0],V=t.range[1];return .5*(H+V-2*Qee*Math.abs(H-V))}else return qu}function l(I,O,H,V){if((V||{}).msUTC&&Ef(I))return+I;var W=tL(I,H||t.calendar);if(W===qu)if(Ef(I)){I=+I;var J=Math.floor(Ri.mod(I+.05,1)*10),te=Math.round(I-J/10);W=tL(new Date(te))+J/10}else return qu;return W}function f(I,O,H){return Kee(I,O,H||t.calendar)}function h(I){return t._categories[Math.round(I)]}function v(I){if(A5(I)){if(t._categoriesMap===void 0&&(t._categoriesMap={}),t._categoriesMap[I]!==void 0)return t._categoriesMap[I];t._categories.push(typeof I=="number"?String(I):I);var O=t._categories.length-1;return t._categoriesMap[I]=O,O}return qu}function m(I,O){for(var H=new Array(O),V=0;Vt.range[1]&&(H=!H);for(var V=H?-1:1,W=V*I,J=0,te=0;teoe)J=te+1;else{J=W<(ne+oe)/2?te:te+1;break}}var fe=t._B[J]||0;return isFinite(fe)?C(I,t._m2,fe):0},z=function(I){var O=t._rangebreaks.length;if(!O)return E(I,t._m,t._b);for(var H=0,V=0;Vt._rangebreaks[V].pmax&&(H=V+1);return E(I,t._m2,t._B[H])}}t.c2l=t.type==="log"?s:Lf,t.l2c=t.type==="log"?Qy:Lf,t.l2p=L,t.p2l=z,t.c2p=t.type==="log"?function(I,O){return L(s(I,O))}:L,t.p2c=t.type==="log"?function(I){return Qy(z(I))}:z,["linear","-"].indexOf(t.type)!==-1?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=Fh,t.c2d=t.c2r=t.l2d=t.l2r=Lf,t.d2p=t.r2p=function(I){return t.l2p(Fh(I))},t.p2d=t.p2r=z,t.cleanPos=Lf):t.type==="log"?(t.d2r=t.d2l=function(I,O){return s(Fh(I),O)},t.r2d=t.r2c=function(I){return Qy(Fh(I))},t.d2c=t.r2l=Fh,t.c2d=t.l2r=Lf,t.c2r=s,t.l2d=Qy,t.d2p=function(I,O){return t.l2p(t.d2r(I,O))},t.p2d=function(I){return Qy(z(I))},t.r2p=function(I){return t.l2p(Fh(I))},t.p2r=z,t.cleanPos=Lf):t.type==="date"?(t.d2r=t.r2d=Ri.identity,t.d2c=t.r2c=t.d2l=t.r2l=l,t.c2d=t.c2r=t.l2d=t.l2r=f,t.d2p=t.r2p=function(I,O,H){return t.l2p(l(I,0,H))},t.p2d=t.p2r=function(I,O,H){return f(z(I),O,H)},t.cleanPos=function(I){return Ri.cleanDate(I,qu,t.calendar)}):t.type==="category"?(t.d2c=t.d2l=v,t.r2d=t.c2d=t.l2d=h,t.d2r=t.d2l_noadd=T,t.r2c=function(I){var O=S(I);return O!==void 0?O:t.fraction2r(.5)},t.l2r=t.c2r=Lf,t.r2l=S,t.d2p=function(I){return t.l2p(t.r2c(I))},t.p2d=function(I){return h(z(I))},t.r2p=t.d2p,t.p2r=z,t.cleanPos=function(I){return typeof I=="string"&&I!==""?I:Lf(I)}):t.type==="multicategory"&&(t.r2d=t.c2d=t.l2d=h,t.d2r=t.d2l_noadd=T,t.r2c=function(I){var O=T(I);return O!==void 0?O:t.fraction2r(.5)},t.r2c_just_indices=_,t.l2r=t.c2r=Lf,t.r2l=T,t.d2p=function(I){return t.l2p(t.r2c(I))},t.p2d=function(I){return h(z(I))},t.r2p=t.d2p,t.p2r=z,t.cleanPos=function(I){return Array.isArray(I)||typeof I=="string"&&I!==""?I:Lf(I)},t.setupMultiCategory=function(I){var O=t._traceIndices,H,V,W=t._matchGroup;if(W&&t._categories.length===0){for(var J in W)if(J!==i){var te=r[i2.id2name(J)];O=O.concat(te._traceIndices)}}var ne=[[0,{}],[0,{}]],oe=[];for(H=0;Hte[1]&&(V[J?0:1]=H),V[0]===V[1]){var ne=t.l2r(O),oe=t.l2r(H);if(O!==void 0){var fe=ne+1;H!==void 0&&(fe=Math.min(fe,oe)),V[J?1:0]=fe}if(H!==void 0){var he=oe+1;O!==void 0&&(he=Math.max(he,ne)),V[J?0:1]=he}}}},t.cleanRange=function(I,O){t._cleanRange(I,O),t.limitRange(I)},t._cleanRange=function(I,O){O||(O={}),I||(I="range");var H=Ri.nestedProperty(t,I).get(),V,W;if(t.type==="date"?W=Ri.dfltRange(t.calendar):a==="y"?W=s2.DFLTRANGEY:t._name==="realaxis"?W=[0,1]:W=O.dfltRange||s2.DFLTRANGEX,W=W.slice(),(t.rangemode==="tozero"||t.rangemode==="nonnegative")&&(W[0]=0),!H||H.length!==2){Ri.nestedProperty(t,I).set(W);return}var J=H[0]===null,te=H[1]===null;for(t.type==="date"&&!t.autorange&&(H[0]=Ri.cleanDate(H[0],qu,t.calendar),H[1]=Ri.cleanDate(H[1],qu,t.calendar)),V=0;V<2;V++)if(t.type==="date"){if(!Ri.isDateTime(H[V],t.calendar)){t[I]=W;break}if(t.r2l(H[0])===t.r2l(H[1])){var ne=Ri.constrain(t.r2l(H[0]),Ri.MIN_MS+1e3,Ri.MAX_MS-1e3);H[0]=t.l2r(ne-1e3),H[1]=t.l2r(ne+1e3);break}}else{if(!Ef(H[V]))if(!(J||te)&&Ef(H[1-V]))H[V]=H[1-V]*(V?10:.1);else{t[I]=W;break}if(H[V]<-t2?H[V]=-t2:H[V]>t2&&(H[V]=t2),H[0]===H[1]){var oe=Math.max(1,Math.abs(H[0]*1e-6));H[0]-=oe,H[1]+=oe}}},t.setScale=function(I){var O=r._size;if(t.overlaying){var H=i2.getFromId({_fullLayout:r},t.overlaying);t.domain=H.domain}var V=I&&t._r?"_r":"range",W=t.calendar;t.cleanRange(V);var J=t.r2l(t[V][0],W),te=t.r2l(t[V][1],W),ne=a==="y";if(ne?(t._offset=O.t+(1-t.domain[1])*O.h,t._length=O.h*(t.domain[1]-t.domain[0]),t._m=t._length/(J-te),t._b=-t._m*te):(t._offset=O.l+t.domain[0]*O.w,t._length=O.w*(t.domain[1]-t.domain[0]),t._m=t._length/(te-J),t._b=-t._m*J),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks){var oe,fe;if(t._rangebreaks=t.locateBreaks(Math.min(J,te),Math.max(J,te)),t._rangebreaks.length){for(oe=0;oete&&(he=!he),he&&t._rangebreaks.reverse();var ke=he?-1:1;for(t._m2=ke*t._length/(Math.abs(te-J)-t._lBreaks),t._B.push(-t._m2*(ne?te:J)),oe=0;oeW&&(W+=7,JW&&(W+=24,J=V&&J=V&&I=Ye.min&&(jeYe.max&&(Ye.max=lt),at=!1)}at&&te.push({min:je,max:lt})}};for(H=0;H{"use strict";var oL=Da(),M5=Bt(),ete=Zi().BADNUM,u2=M5.isArrayOrTypedArray,tte=M5.isDateTime,rte=M5.cleanNumber,sL=Math.round;uL.exports=function(t,r,i){var a=t,s=i.noMultiCategory;if(u2(a)&&!a.length)return"-";if(!s&&ste(a))return"multicategory";if(s&&Array.isArray(a[0])){for(var l=[],f=0;fs*2}function lL(e){return Math.max(1,(e-1)/1e3)}function ote(e,t){for(var r=e.length,i=lL(r),a=0,s=0,l={},f=0;fa*2}function ste(e){return u2(e[0])&&u2(e[1])}});var $y=pe((w1e,yL)=>{"use strict";var lte=ja(),vL=Da(),Nh=Bt(),f2=Zi().FP_SAFE,ute=sa(),fte=xi(),dL=Xn(),cte=dL.getFromId,hte=dL.isLinked;yL.exports={applyAutorangeOptions:mL,getAutoRange:k5,makePadFn:C5,doAutoRange:dte,findExtremes:pte,concatExtremes:D5};function k5(e,t){var r,i,a=[],s=e._fullLayout,l=C5(s,t,0),f=C5(s,t,1),h=D5(e,t),v=h.min,m=h.max;if(v.length===0||m.length===0)return Nh.simpleMap(t.range,t.r2l);var _=v[0].val,T=m[0].val;for(r=1;r0&&(te=q-l(H)-f(V),te>I?ne/te>O&&(W=H,J=V,O=ne/te):ne/q>O&&(W={val:H.val,nopad:1},J={val:V.val,nopad:1},O=ne/q));function oe(Ae,xe){return Math.max(Ae,f(xe))}if(_===T){var fe=_-1,he=_+1;if(z)if(_===0)a=[0,1];else{var ke=(_>0?m:v).reduce(oe,0),Se=_/(1-Math.min(.5,ke/q));a=_>0?[0,Se]:[Se,0]}else B?a=[Math.max(0,fe),Math.max(1,he)]:a=[fe,he]}else z?(W.val>=0&&(W={val:0,nopad:1}),J.val<=0&&(J={val:0,nopad:1})):B&&(W.val-O*l(W)<0&&(W={val:0,nopad:1}),J.val<=0&&(J={val:1,nopad:1})),O=(J.val-W.val-fL(t,H.val,V.val))/(q-l(W)-f(J)),a=[W.val-O*l(W),J.val+O*f(J)];return a=mL(a,t),t.limitRange&&t.limitRange(),C&&a.reverse(),Nh.simpleMap(a,t.l2r||Number)}function fL(e,t,r){var i=0;if(e.rangebreaks)for(var a=e.locateBreaks(t,r),s=0;s0?r.ppadplus:r.ppadminus)||r.ppad||0),H=I((e._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),V=I(r.vpadplus||r.vpad),W=I(r.vpadminus||r.vpad);if(!v){if(B=1/0,q=-1/0,h)for(_=0;_0&&(B=T),T>q&&T-f2&&(B=T),T>q&&T=ne;_--)te(_);return{min:i,max:a,opts:r}}function E5(e,t,r,i){pL(e,t,r,i,mte)}function L5(e,t,r,i){pL(e,t,r,i,yte)}function pL(e,t,r,i,a){for(var s=i.tozero,l=i.extrapad,f=!0,h=0;h=r&&(v.extrapad||!l)){f=!1;break}else a(t,v.val)&&v.pad<=r&&(l||!v.extrapad)&&(e.splice(h,1),h--)}if(f){var m=s&&t===0;e.push({val:t,pad:m?0:r,extrapad:m?!1:l})}}function hL(e){return vL(e)&&Math.abs(e)=t}function gte(e,t){var r=t.autorangeoptions;return r&&r.minallowed!==void 0&&c2(t,r.minallowed,r.maxallowed)?r.minallowed:r&&r.clipmin!==void 0&&c2(t,r.clipmin,r.clipmax)?Math.max(e,t.d2l(r.clipmin)):e}function _te(e,t){var r=t.autorangeoptions;return r&&r.maxallowed!==void 0&&c2(t,r.minallowed,r.maxallowed)?r.maxallowed:r&&r.clipmax!==void 0&&c2(t,r.clipmin,r.clipmax)?Math.min(e,t.d2l(r.clipmax)):e}function c2(e,t,r){return t!==void 0&&r!==void 0?(t=e.d2l(t),r=e.d2l(r),t=h&&(s=h,r=h),l<=h&&(l=h,i=h)}}return r=gte(r,t),i=_te(i,t),[r,i]}});var Xi=pe((T1e,OL)=>{"use strict";var Wl=ja(),Bn=Da(),q0=eo(),tg=sa(),Qr=Bt(),N0=Qr.strTranslate,_d=co(),xte=Ky(),rg=Oa(),ol=xi(),bte=Fu(),gL=Xw(),So=Zi(),wte=So.ONEMAXYEAR,d2=So.ONEAVGYEAR,p2=So.ONEMINYEAR,Tte=So.ONEMAXQUARTER,R5=So.ONEAVGQUARTER,m2=So.ONEMINQUARTER,Ate=So.ONEMAXMONTH,B0=So.ONEAVGMONTH,y2=So.ONEMINMONTH,sl=So.ONEWEEK,as=So.ONEDAY,Bh=as/2,Pf=So.ONEHOUR,ag=So.ONEMIN,g2=So.ONESEC,Mte=So.ONEMILLI,Ste=So.ONEMICROSEC,xd=So.MINUS_SIGN,x2=So.BADNUM,F5={K:"zeroline"},q5={K:"gridline",L:"path"},N5={K:"minor-gridline",L:"path"},EL={K:"tick",L:"path"},_L={K:"tick",L:"text"},xL={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},b2=ts(),eg=b2.MID_SHIFT,bd=b2.CAP_SHIFT,ig=b2.LINE_SPACING,kte=b2.OPPOSITE_SIDE,_2=3,$t=OL.exports={};$t.setConvert=l2();var Cte=S5(),wc=Xn(),Ete=wc.idSort,Lte=wc.isLinked;$t.id2name=wc.id2name;$t.name2id=wc.name2id;$t.cleanId=wc.cleanId;$t.list=wc.list;$t.listIds=wc.listIds;$t.getFromId=wc.getFromId;$t.getFromTrace=wc.getFromTrace;var LL=$y();$t.getAutoRange=LL.getAutoRange;$t.findExtremes=LL.findExtremes;var Dte=1e-4;function V5(e){var t=(e[1]-e[0])*Dte;return[e[0]-t,e[1]+t]}$t.coerceRef=function(e,t,r,i,a,s){var l=i.charAt(i.length-1),f=r._fullLayout._subplots[l+"axis"],h=i+"ref",v={};return a||(a=f[0]||(typeof s=="string"?s:s[0])),s||(s=a),f=f.concat(f.map(function(m){return m+" domain"})),v[h]={valType:"enumerated",values:f.concat(s?typeof s=="string"?[s]:s:[]),dflt:a},Qr.coerce(e,t,v,h)};$t.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};$t.coercePosition=function(e,t,r,i,a,s){var l,f,h=$t.getRefType(i);if(h!=="range")l=Qr.ensureNumber,f=r(a,s);else{var v=$t.getFromId(t,i);s=v.fraction2r(s),f=r(a,s),l=v.cleanPos}e[a]=l(f)};$t.cleanPosition=function(e,t,r){var i=r==="paper"||r==="pixel"?Qr.ensureNumber:$t.getFromId(t,r).cleanPos;return i(e)};$t.redrawComponents=function(e,t){t=t||$t.listIds(e);var r=e._fullLayout;function i(a,s,l,f){for(var h=tg.getComponentMethod(a,s),v={},m=0;m2e-6||((r-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};$t.saveRangeInitial=function(e,t){for(var r=$t.list(e,"",!0),i=!1,a=0;a_*.3||v(i)||v(a))){var T=r.dtick/2;e+=e+Tl){var f=Number(r.slice(1));s.exactYears>l&&f%12===0?e=$t.tickIncrement(e,"M6","reverse")+as*1.5:s.exactMonths>l?e=$t.tickIncrement(e,"M1","reverse")+as*15.5:e-=Bh;var h=$t.tickIncrement(e,r);if(h<=i)return h}return e}$t.prepMinorTicks=function(e,t,r){if(!t.minor.dtick){delete e.dtick;var i=t.dtick&&Bn(t._tmin),a;if(i){var s=$t.tickIncrement(t._tmin,t.dtick,!0);a=[t._tmin,s*.99+t._tmin*.01]}else{var l=Qr.simpleMap(t.range,t.r2l);a=[l[0],.8*l[0]+.2*l[1]]}if(e.range=Qr.simpleMap(a,t.l2r),e._isMinor=!0,$t.prepTicks(e,r),i){var f=Bn(t.dtick),h=Bn(e.dtick),v=f?t.dtick:+t.dtick.substring(1),m=h?e.dtick:+e.dtick.substring(1);f&&h?P5(v,m)?v===2*sl&&m===2*as&&(e.dtick=sl):v===2*sl&&m===3*as?e.dtick=sl:v===sl&&!(t._input.minor||{}).nticks?e.dtick=as:TL(v/m,2.5)?e.dtick=v/2:e.dtick=v:String(t.dtick).charAt(0)==="M"?h?e.dtick="M1":P5(v,m)?v>=12&&m===2&&(e.dtick="M3"):e.dtick=t.dtick:String(e.dtick).charAt(0)==="L"?String(t.dtick).charAt(0)==="L"?P5(v,m)||(e.dtick=TL(v/m,2.5)?t.dtick/2:t.dtick):e.dtick="D1":e.dtick==="D2"&&+t.dtick>1&&(e.dtick=1)}e.range=t.range}t.minor._tick0Init===void 0&&(e.tick0=t.tick0)};function P5(e,t){return Math.abs((e/t+.5)%1-.5)<.001}function TL(e,t){return Math.abs(e/t-1)<.001}$t.prepTicks=function(e,t){var r=Qr.simpleMap(e.range,e.r2l,void 0,void 0,t);if(e.tickmode==="auto"||!e.dtick){var i=e.nticks,a;i||(e.type==="category"||e.type==="multicategory"?(a=e.tickfont?Qr.bigFont(e.tickfont.size||12):15,i=e._length/a):(a=e._id.charAt(0)==="y"?40:80,i=Qr.constrain(e._length/a,4,9)+1),e._name==="radialaxis"&&(i*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(i*=100),e._roughDTick=Math.abs(r[1]-r[0])/i,$t.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(s=i-1,l=i):(s=i,l=i);var f=e[s].value,h=e[l].value,v=Math.abs(h-f),m=r||v,_=0;m>=p2?v>=p2&&v<=wte?_=v:_=d2:r===R5&&m>=m2?v>=m2&&v<=Tte?_=v:_=R5:m>=y2?v>=y2&&v<=Ate?_=v:_=B0:r===sl&&m>=sl?_=sl:m>=as?_=as:r===Bh&&m>=Bh?_=Bh:r===Pf&&m>=Pf&&(_=Pf);var T;_>=v&&(_=v,T=!0);var S=a+_;if(t.rangebreaks&&_>0){for(var C=84,E=0,L=0;Lsl&&(_=v)}(_>0||i===0)&&(e[i].periodX=a+_/2)}}$t.calcTicks=function(t,r){for(var i=t.type,a=t.calendar,s=t.ticklabelstep,l=t.ticklabelmode==="period",f=t.range[0]>t.range[1],h=!t.ticklabelindex||Qr.isArrayOrTypedArray(t.ticklabelindex)?t.ticklabelindex:[t.ticklabelindex],v=Qr.simpleMap(t.range,t.r2l,void 0,void 0,r),m=v[1]=(q?0:1);I--){var O=!I;I?(t._dtickInit=t.dtick,t._tick0Init=t.tick0):(t.minor._dtickInit=t.minor.dtick,t.minor._tick0Init=t.minor.tick0);var H=I?t:Qr.extendFlat({},t,t.minor);if(O?$t.prepMinorTicks(H,t,r):$t.prepTicks(H,r),H.tickmode==="array"){I?(L=[],C=AL(t,!O)):(z=[],E=AL(t,!O));continue}if(H.tickmode==="sync"){L=[],C=qte(t);continue}var V=V5(v),W=V[0],J=V[1],te=Bn(H.dtick),ne=i==="log"&&!(te||H.dtick.charAt(0)==="L"),oe=$t.tickFirst(H,r);if(I){if(t._tmin=oe,oe=J:he<=J;he=$t.tickIncrement(he,Ae,m,a)){if(I&&ke++,H.rangebreaks&&!m){if(he=T)break}if(L.length>S||he===fe)break;fe=he;var xe={value:he};I?(ne&&he!==(he|0)&&(xe.simpleLabel=!0),s>1&&ke%s&&(xe.skipLabel=!0),L.push(xe)):(xe.minor=!0,z.push(xe))}}if(!z||z.length<2)h=!1;else{var be=(z[1].value-z[0].value)*(f?-1:1);lre(be,t.tickformat)||(h=!1)}if(!h)B=L;else{var Me=L.concat(z);l&&L.length&&(Me=Me.slice(1)),Me=Me.sort(function(Rt,Ut){return Rt.value-Ut.value}).filter(function(Rt,Ut,Ct){return Ut===0||Rt.value!==Ct[Ut-1].value});var Le=Me.map(function(Rt,Ut){return Rt.minor===void 0&&!Rt.skipLabel?Ut:null}).filter(function(Rt){return Rt!==null});Le.forEach(function(Rt){h.map(function(Ut){var Ct=Rt+Ut;Ct>=0&&Ct-1;bt--){if(L[bt].drop){L.splice(bt,1);continue}L[bt].value=I5(L[bt].value,t);var ge=t.c2p(L[bt].value);(vt?De>ge-de:DeT||At<_)&&(At>T&&(Ct.periodX=T),At<_&&(Ct.periodX=_),dt(Ct))),Ct}var qt;for(bt=0;bta&&Td2)t/=d2,i=a(10),e.dtick="M"+12*Df(t,i,h2);else if(s>B0)t/=B0,e.dtick="M"+Df(t,1,ML);else if(s>as){if(e.dtick=Df(t,as,e._hasDayOfWeekBreaks?[1,2,7,14]:Nte),!r){var l=$t.getTickFormat(e),f=e.ticklabelmode==="period";f&&(e._rawTick0=e.tick0),/%[uVW]/.test(l)?e.tick0=Qr.dateTick0(e.calendar,2):e.tick0=Qr.dateTick0(e.calendar,1),f&&(e._dowTick0=e.tick0)}}else s>Pf?e.dtick=Df(t,Pf,ML):s>ag?e.dtick=Df(t,ag,SL):s>g2?e.dtick=Df(t,g2,SL):(i=a(10),e.dtick=Df(t,i,h2))}else if(e.type==="log"){e.tick0=0;var h=Qr.simpleMap(e.range,e.r2l);if(e._isMinor&&(t*=1.5),t>.7)e.dtick=Math.ceil(t);else if(Math.abs(h[1]-h[0])<1){var v=1.5*Math.abs((h[1]-h[0])/t);t=Math.abs(Math.pow(10,h[1])-Math.pow(10,h[0]))/v,i=a(10),e.dtick="L"+Df(t,i,h2)}else e.dtick=t>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(t,1))):Y5(e)?(e.tick0=0,i=1,e.dtick=Df(t,i,Bte)):(e.tick0=0,i=a(10),e.dtick=Df(t,i,h2));if(e.dtick===0&&(e.dtick=1),!Bn(e.dtick)&&typeof e.dtick!="string"){var m=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(m)}};function IL(e){var t=e.dtick;if(e._tickexponent=0,!Bn(t)&&typeof t!="string"&&(t=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var r=e.r2l(e.tick0),i=e.l2r(r).replace(/(^-|i)/g,""),a=i.length;if(String(t).charAt(0)==="M")a>10||i.slice(5)!=="01-01"?e._tickround="d":e._tickround=+t.slice(1)%12===0?"y":"m";else if(t>=as&&a<=10||t>=as*15)e._tickround="d";else if(t>=ag&&a<=16||t>=Pf)e._tickround="M";else if(t>=g2&&a<=19||t>=ag)e._tickround="S";else{var s=e.l2r(r+t).replace(/^-/,"").length;e._tickround=Math.max(a,s)-20,e._tickround<0&&(e._tickround=4)}}else if(Bn(t)||t.charAt(0)==="L"){var l=e.range.map(e.r2d||Number);Bn(t)||(t=Number(t.slice(1))),e._tickround=2-Math.floor(Math.log(t)/Math.LN10+.01);var f=Math.max(Math.abs(l[0]),Math.abs(l[1])),h=Math.floor(Math.log(f)/Math.LN10+.01),v=e.minexponent===void 0?3:e.minexponent;Math.abs(h)>v&&(O0(e.exponentformat)&&e.exponentformat!=="SI extended"&&!H5(h)||O0(e.exponentformat)&&e.exponentformat==="SI extended"&&!G5(h)?e._tickexponent=3*Math.round((h-1)/3):e._tickexponent=h)}else e._tickround=null}$t.tickIncrement=function(e,t,r,i){var a=r?-1:1;if(Bn(t))return Qr.increment(e,a*t);var s=t.charAt(0),l=a*Number(t.slice(1));if(s==="M")return Qr.incrementMonth(e,l,i);if(s==="L")return Math.log(Math.pow(10,e)+l)/Math.LN10;if(s==="D"){var f=t==="D2"?zL:PL,h=e+a*.01,v=Qr.roundUp(Qr.mod(h,1),f,r);return Math.floor(h)+Math.log(Wl.round(Math.pow(10,v),1))/Math.LN10}throw"unrecognized dtick "+String(t)};$t.tickFirst=function(e,t){var r=e.r2l||Number,i=Qr.simpleMap(e.range,r,void 0,void 0,t),a=i[1]=0&&z<=e._length?L:null};if(s&&Qr.isArrayOrTypedArray(e.ticktext)){var _=Qr.simpleMap(e.range,e.r2l),T=(Math.abs(_[1]-_[0])-(e._lBreaks||0))/1e4;for(v=0;v"+f;else{var v=og(e),m=e._trueSide||e.side;(!v&&m==="top"||v&&m==="bottom")&&(l+="
")}t.text=l}function Ute(e,t,r,i,a){var s=e.dtick,l=t.x,f=e.tickformat,h=typeof s=="string"&&s.charAt(0);if(a==="never"&&(a=""),i&&h!=="L"&&(s="L3",h="L"),f||h==="L")t.text=ng(Math.pow(10,l),e,a,i);else if(Bn(s)||h==="D"&&(e.minorloglabels==="complete"||Qr.mod(l+.01,1)<.1)){var v;e.minorloglabels==="complete"&&!(Qr.mod(l+.01,1)<.1)&&(v=!0,t.fontSize*=.75);var m=Math.pow(10,l).toExponential(0),_=m.split("e"),T=+_[1],S=Math.abs(T),C=e.exponentformat;C==="power"||O0(C)&&C!=="SI extended"&&H5(T)||O0(C)&&C==="SI extended"&&G5(T)?(t.text=_[0],S>0&&(t.text+="x10"),t.text==="1x10"&&(t.text="10"),T!==0&&T!==1&&(t.text+=""+(T>0?"":xd)+S+""),t.fontSize*=1.25):(C==="e"||C==="E")&&S>2?t.text=_[0]+C+(T>0?"+":xd)+S:(t.text=ng(Math.pow(10,l),e,"","fakehover"),s==="D1"&&e._id.charAt(0)==="y"&&(t.dy-=t.fontSize/6))}else if(h==="D")t.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,Qr.mod(l,1)))),t.fontSize*=.75;else throw"unrecognized dtick "+String(s);if(e.dtick==="D1"){var E=String(t.text).charAt(0);(E==="0"||E==="1")&&(e._id.charAt(0)==="y"?t.dx-=t.fontSize/4:(t.dy+=t.fontSize/2,t.dx+=(e.range[1]>e.range[0]?1:-1)*t.fontSize*(l<0?.5:.25)))}}function Vte(e,t){var r=e._categories[Math.round(t.x)];r===void 0&&(r=""),t.text=String(r)}function Hte(e,t,r){var i=Math.round(t.x),a=e._categories[i]||[],s=a[1]===void 0?"":String(a[1]),l=a[0]===void 0?"":String(a[0]);r?t.text=l+" - "+s:(t.text=s,t.text2=l)}function Gte(e,t,r,i,a){a==="never"?a="":e.showexponent==="all"&&Math.abs(t.x/e.dtick)<1e-6&&(a="hide"),t.text=ng(t.x,e,a,i)}function Zte(e,t,r,i,a){if(e.thetaunit==="radians"&&!r){var s=t.x/180;if(s===0)t.text="0";else{var l=Yte(s);if(l[1]>=100)t.text=ng(Qr.deg2rad(t.x),e,a,i);else{var f=t.x<0;l[1]===1?l[0]===1?t.text="\u03C0":t.text=l[0]+"\u03C0":t.text=["",l[0],"","\u2044","",l[1],"","\u03C0"].join(""),f&&(t.text=xd+t.text)}}}else t.text=ng(t.x,e,a,i)}function Yte(e){function t(f,h){return Math.abs(f-h)<=1e-6}function r(f,h){return t(h,0)?f:r(h,f%h)}function i(f){for(var h=1;!t(Math.round(f*h)/h,f);)h*=10;return h}var a=i(e),s=e*a,l=Math.abs(r(s,a));return[Math.round(s/l),Math.round(a/l)]}var FL=["f","p","n","\u03BC","m","","k","M","G","T"],Wte=["q","r","y","z","a",...FL,"P","E","Z","Y","R","Q"],O0=e=>["SI","SI extended","B"].includes(e);function H5(e){return e>14||e<-15}function G5(e){return e>32||e<-30}function Xte(e,t){return O0(t)?!!(t==="SI extended"&&G5(e)||t!=="SI extended"&&H5(e)):!1}function ng(e,t,r,i){var a=e<0,s=t._tickround,l=r||t.exponentformat||"B",f=t._tickexponent,h=$t.getTickFormat(t),v=t.separatethousands;if(i){var m={exponentformat:l,minexponent:t.minexponent,dtick:t.showexponent==="none"?t.dtick:Bn(e)&&Math.abs(e)||1,range:t.showexponent==="none"?t.range.map(t.r2d):[0,e||1]};IL(m),s=(Number(m._tickround)||0)+4,f=m._tickexponent,t.hoverformat&&(h=t.hoverformat)}if(h)return t._numFormat(h)(e).replace(/-/g,xd);var _=Math.pow(10,-s)/2;if(l==="none"&&(f=0),e=Math.abs(e),e<_)e="0",a=!1;else{if(e+=_,f&&(e*=Math.pow(10,-f),s+=f),s===0)e=String(Math.floor(e));else if(s<0){e=String(Math.round(e)),e=e.slice(0,Math.max(0,e.length+s));for(var T=s;T<0;T++)e+="0"}else{e=String(e);var S=e.indexOf(".")+1;S&&(e=e.slice(0,S+s).replace(/\.?0+$/,""))}e=Qr.numSeparate(e,t._separators,v)}if(f&&l!=="hide"){Xte(f,l)&&(l="power");var C;f<0?C=xd+-f:l!=="power"?C="+"+f:C=String(f),l==="e"||l==="E"?e+=l+C:l==="power"?e+="\xD710"+C+"":l==="B"&&f===9?e+="B":O0(l)&&(e+=l==="SI extended"?Wte[f/3+10]:FL[f/3+5])}return a?xd+e:e}$t.getTickFormat=function(e){var t;function r(h){return typeof h!="string"?h:Number(h.replace("M",""))*B0}function i(h,v){var m=["L","D"];if(typeof h==typeof v){if(typeof h=="number")return h-v;var _=m.indexOf(h.charAt(0)),T=m.indexOf(v.charAt(0));return _===T?Number(h.replace(/(L|D)/g,""))-Number(v.replace(/(L|D)/g,"")):_-T}else return typeof h=="number"?1:-1}function a(h,v,m){var _=m||function(C){return C},T=v[0],S=v[1];return(!T&&typeof T!="number"||_(T)<=_(h))&&(!S&&typeof S!="number"||_(S)>=_(h))}function s(h,v){var m=v[0]===null,_=v[1]===null,T=i(h,v[0])>=0,S=i(h,v[1])<=0;return(m||T)&&(_||S)}var l,f;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(t=0;t=0&&a.unshift(a.splice(m,1).shift())}});var f={false:{left:0,right:0}};return Qr.syncOrAsync(a.map(function(h){return function(){if(h){var v=$t.getFromId(e,h);r||(r={}),r.axShifts=f,r.overlayingShiftedAx=l;var m=$t.drawOne(e,v,r);return v._shiftPusher&&U5(v,v._fullDepth||0,f,!0),v._r=v.range.slice(),v._rl=Qr.simpleMap(v._r,v.r2l),m}}}))};$t.drawOne=function(e,t,r){r=r||{};var i=r.axShifts||{},a=r.overlayingShiftedAx||[],s,l,f;t.setScale();var h=e._fullLayout,v=t._id,m=v.charAt(0),_=$t.counterLetter(v),T=h._plots[t._mainSubplot],S=t.zerolinelayer==="above traces";if(!T)return;if(t._shiftPusher=t.autoshift||a.indexOf(t._id)!==-1||a.indexOf(t.overlaying)!==-1,t._shiftPusher&t.anchor==="free"){var C=t.linewidth/2||0;t.ticks==="inside"&&(C+=t.ticklen),U5(t,C,i,!0),U5(t,t.shift||0,i,!1)}(r.skipTitle!==!0||t._shift===void 0)&&(t._shift=sre(t,i));var E=T[m+"axislayer"],L=t._mainLinePosition,z=L+=t._shift,B=t._mainMirrorPosition,q=t._vals=$t.calcTicks(t),I=[t.mirror,z,B].join("_");for(s=0;s0?At.bottom-Ut:0,Ct))));var st=0,sr=0;if(t._shiftPusher&&(st=Math.max(Ct,At.height>0?Tt==="l"?Ut-At.left:At.right-Ut:0),t.title.text!==h._dfltTitle[m]&&(sr=(t._titleStandoff||0)+(t._titleScoot||0),Tt==="l"&&(sr+=CL(t))),t._fullDepth=Math.max(st,sr)),t.automargin){Vt={x:0,y:0,r:0,l:0,t:0,b:0};var Pr=[0,1],Et=typeof t._shift=="number"?t._shift:0;if(m==="x"){if(Tt==="b"?Vt[Tt]=t._depth:(Vt[Tt]=t._depth=Math.max(At.width>0?Ut-At.top:0,Ct),Pr.reverse()),At.width>0){var ct=At.right-(t._offset+t._length);ct>0&&(Vt.xr=1,Vt.r=ct);var pt=t._offset-At.left;pt>0&&(Vt.xl=0,Vt.l=pt)}}else if(Tt==="l"?(t._depth=Math.max(At.height>0?Ut-At.left:0,Ct),Vt[Tt]=t._depth-Et):(t._depth=Math.max(At.height>0?At.right-Ut:0,Ct),Vt[Tt]=t._depth+Et,Pr.reverse()),At.height>0){var Ot=At.bottom-(t._offset+t._length);Ot>0&&(Vt.yb=0,Vt.b=Ot);var er=t._offset-At.top;er>0&&(Vt.yt=1,Vt.t=er)}Vt[_]=t.anchor==="free"?t.position:t._anchorAxis.domain[Pr[0]],t.title.text!==h._dfltTitle[m]&&(Vt[Tt]+=CL(t)+(t.title.standoff||0)),t.mirror&&t.anchor!=="free"&&(Ht={x:0,y:0,r:0,l:0,t:0,b:0},Ht[Rt]=t.linewidth,t.mirror&&t.mirror!==!0&&(Ht[Rt]+=Ct),t.mirror===!0||t.mirror==="ticks"?Ht[_]=t._anchorAxis.domain[Pr[1]]:(t.mirror==="all"||t.mirror==="allticks")&&(Ht[_]=[t._counterDomainMin,t._counterDomainMax][Pr[1]]))}Dt&&(Be=tg.getComponentMethod("rangeslider","autoMarginOpts")(e,t)),typeof t.automargin=="string"&&(kL(Vt,t.automargin),kL(Ht,t.automargin)),q0.autoMargin(e,Z5(t),Vt),q0.autoMargin(e,NL(t),Ht),q0.autoMargin(e,BL(t),Be)}),Qr.syncOrAsync(We)}};function kL(e,t){if(e){var r=Object.keys(xL).reduce(function(i,a){return t.indexOf(a)!==-1&&xL[a].forEach(function(s){i[s]=1}),i},{});Object.keys(e).forEach(function(i){r[i]||(i.length===1?e[i]=0:delete e[i])})}}function jte(e,t){var r=[],i,a=function(s,l){var f=s.xbnd[l];f!==null&&r.push(Qr.extendFlat({},s,{x:f}))};if(t.length){for(i=0;ie.range[1],f=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,h=!f;if(r){var v=l?-1:1;r=r*v}if(i){var m=e.side,_=f&&(m==="top"||m==="left")||h&&(m==="bottom"||m==="right")?1:-1;i=i*_}return e._id.charAt(0)==="x"?function(T){return N0(a+e._offset+e.l2p(B5(T))+r,s+i)}:function(T){return N0(s+i,a+e._offset+e.l2p(B5(T))+r)}};function B5(e){return e.periodX!==void 0?e.periodX:e.x}function $te(e){var t=e.ticklabelposition||"",r=e.tickson||"",i=function(C){return t.indexOf(C)!==-1},a=i("top"),s=i("left"),l=i("right"),f=i("bottom"),h=i("inside"),v=r!=="boundaries"&&(f||s||a||l);if(!v&&!h)return[0,0];var m=e.side,_=v?(e.tickwidth||0)/2:0,T=_2,S=e.tickfont?e.tickfont.size:12;return(f||a)&&(_+=S*bd,T+=(e.linewidth||0)/2),(s||l)&&(_+=(e.linewidth||0)/2,T+=_2),h&&m==="top"&&(T-=S*(1-bd)),(s||a)&&(_=-_),(m==="bottom"||m==="right")&&(T=-T),[v?_:0,h?T:0]}$t.makeTickPath=function(e,t,r,i){i||(i={});var a=i.minor;if(a&&!e.minor)return"";var s=i.len!==void 0?i.len:a?e.minor.ticklen:e.ticklen,l=e._id.charAt(0),f=(e.linewidth||1)/2;return l==="x"?"M0,"+(t+f*r)+"v"+s*r:"M"+(t+f*r)+",0h"+s*r};$t.makeLabelFns=function(e,t,r){var i=e.ticklabelposition||"",a=e.tickson||"",s=function(fe){return i.indexOf(fe)!==-1},l=s("top"),f=s("left"),h=s("right"),v=s("bottom"),m=a!=="boundaries"&&(v||f||l||h),_=s("inside"),T=i==="inside"&&e.ticks==="inside"||!_&&e.ticks==="outside"&&a!=="boundaries",S=0,C=0,E=T?e.ticklen:0;if(_?E*=-1:m&&(E=0),T&&(S+=E,r)){var L=Qr.deg2rad(r);S=E*Math.cos(L)+1,C=E*Math.sin(L)}e.showticklabels&&(T||e.showline)&&(S+=.2*e.tickfont.size),S+=(e.linewidth||1)/2*(_?-1:1);var z={labelStandoff:S,labelShift:C},B,q,I,O,H=0,V=e.side,W=e._id.charAt(0),J=e.tickangle,te;if(W==="x")te=!_&&V==="bottom"||_&&V==="top",O=te?1:-1,_&&(O*=-1),B=C*O,q=t+S*O,I=te?1:-.2,Math.abs(J)===90&&(_?I+=eg:J===-90&&V==="bottom"?I=bd:J===90&&V==="top"?I=eg:I=.5,H=eg/2*(J/90)),z.xFn=function(fe){return fe.dx+B+H*fe.fontSize},z.yFn=function(fe){return fe.dy+q+fe.fontSize*I},z.anchorFn=function(fe,he){if(m){if(f)return"end";if(h)return"start"}return!Bn(he)||he===0||he===180?"middle":he*O<0!==_?"end":"start"},z.heightFn=function(fe,he,ke){return he<-60||he>60?-.5*ke:e.side==="top"!==_?-ke:0};else if(W==="y"){if(te=!_&&V==="left"||_&&V==="right",O=te?1:-1,_&&(O*=-1),B=S,q=C*O,I=0,!_&&Math.abs(J)===90&&(J===-90&&V==="left"||J===90&&V==="right"?I=bd:I=.5),_){var ne=Bn(J)?+J:0;if(ne!==0){var oe=Qr.deg2rad(ne);H=Math.abs(Math.sin(oe))*bd*O,I=0}}z.xFn=function(fe){return fe.dx+t-(B+fe.fontSize*I)*O+H*fe.fontSize},z.yFn=function(fe){return fe.dy+q+fe.fontSize*eg},z.anchorFn=function(fe,he){return Bn(he)&&Math.abs(he)===90?"middle":te?"end":"start"},z.heightFn=function(fe,he,ke){return e.side==="right"&&(he*=-1),he<-30?-ke:he<30?-.5*ke:0}}return z};function w2(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}$t.drawTicks=function(e,t,r){r=r||{};var i=t._id+"tick",a=[].concat(t.minor&&t.minor.ticks?r.vals.filter(function(l){return l.minor&&!l.noTick}):[]).concat(t.ticks?r.vals.filter(function(l){return!l.minor&&!l.noTick}):[]),s=r.layer.selectAll("path."+i).data(a,w2);s.exit().remove(),s.enter().append("path").classed(i,1).classed("ticks",1).classed("crisp",r.crisp!==!1).each(function(l){return rg.stroke(Wl.select(this),l.minor?t.minor.tickcolor:t.tickcolor)}).style("stroke-width",function(l){return ol.crispRound(e,l.minor?t.minor.tickwidth:t.tickwidth,1)+"px"}).attr("d",r.path).style("display",null),T2(t,[EL]),s.attr("transform",r.transFn)};$t.drawGrid=function(e,t,r){if(r=r||{},t.tickmode!=="sync"){var i=t._id+"grid",a=t.minor&&t.minor.showgrid,s=a?r.vals.filter(function(z){return z.minor}):[],l=t.showgrid?r.vals.filter(function(z){return!z.minor}):[],f=r.counterAxis;if(f&&$t.shouldShowZeroLine(e,t,f))for(var h=t.tickmode==="array",v=0;v=0;C--){var E=C?T:S;if(E){var L=E.selectAll("path."+i).data(C?l:s,w2);L.exit().remove(),L.enter().append("path").classed(i,1).classed("crisp",r.crisp!==!1),L.attr("transform",r.transFn).attr("d",r.path).each(function(z){return rg.stroke(Wl.select(this),z.minor?t.minor.gridcolor:t.gridcolor||"#ddd")}).style("stroke-dasharray",function(z){return ol.dashStyle(z.minor?t.minor.griddash:t.griddash,z.minor?t.minor.gridwidth:t.gridwidth)}).style("stroke-width",function(z){return(z.minor?_:t._gw)+"px"}).style("display",null),typeof r.path=="function"&&L.attr("d",r.path)}}T2(t,[q5,N5])}};$t.drawZeroLine=function(e,t,r){r=r||r;var i=t._id+"zl",a=$t.shouldShowZeroLine(e,t,r.counterAxis),s=r.layer.selectAll("path."+i).data(a?[{x:0,id:t._id}]:[]);s.exit().remove(),s.enter().append("path").classed(i,1).classed("zl",1).classed("crisp",r.crisp!==!1).each(function(){r.layer.selectAll("path").sort(function(l,f){return Ete(l.id,f.id)})}),s.attr("transform",r.transFn).attr("d",r.path).call(rg.stroke,t.zerolinecolor||rg.defaultLine).style("stroke-width",ol.crispRound(e,t.zerolinewidth,t._gw||1)+"px").style("display",null),T2(t,[F5])};$t.drawLabels=function(e,t,r){r=r||{};var i=e._fullLayout,a=t._id,s=t.zerolinelayer==="above traces",l=r.cls||a+"tick",f=r.vals.filter(function(be){return be.text}),h=r.labelFns,v=r.secondary?0:t.tickangle,m=(t._prevTickAngles||{})[l],_=r.layer.selectAll("g."+l).data(t.showticklabels?f:[],w2),T=[];_.enter().append("g").classed(l,1).append("text").attr("text-anchor","middle").each(function(be){var Me=Wl.select(this),Le=e._promises.length;Me.call(_d.positionText,h.xFn(be),h.yFn(be)).call(ol.font,{family:be.font,size:be.fontSize,color:be.fontColor,weight:be.fontWeight,style:be.fontStyle,variant:be.fontVariant,textcase:be.fontTextcase,lineposition:be.fontLineposition,shadow:be.fontShadow}).text(be.text).call(_d.convertToTspans,e),e._promises[Le]?T.push(e._promises.pop().then(function(){S(Me,v)})):S(Me,v)}),T2(t,[_L]),_.exit().remove(),r.repositionOnUpdate&&_.each(function(be){Wl.select(this).select("text").call(_d.positionText,h.xFn(be),h.yFn(be))});function S(be,Me){be.each(function(Le){var je=Wl.select(this),lt=je.select(".text-math-group"),at=h.anchorFn(Le,Me),gt=r.transFn.call(je.node(),Le)+(Bn(Me)&&+Me!=0?" rotate("+Me+","+h.xFn(Le)+","+(h.yFn(Le)-Le.fontSize/2)+")":""),Ye=_d.lineCount(je),St=ig*Le.fontSize,it=h.heightFn(Le,Bn(Me)?+Me:0,(Ye-1)*St);if(it&&(gt+=N0(0,it)),lt.empty()){var mt=je.select("text");mt.attr({transform:gt,"text-anchor":at}),mt.style("display",null),t._adjustTickLabelsOverflow&&t._adjustTickLabelsOverflow()}else{var bt=ol.bBox(lt.node()).width,vt=bt*{end:-.5,start:.5}[at];lt.attr("transform",gt+N0(vt,0))}})}t._adjustTickLabelsOverflow=function(){var be=t.ticklabeloverflow;if(!(!be||be==="allow")){var Me=be.indexOf("hide")!==-1,Le=t._id.charAt(0)==="x",je=0,lt=Le?e._fullLayout.width:e._fullLayout.height;if(be.indexOf("domain")!==-1){var at=Qr.simpleMap(t.range,t.r2l);je=t.l2p(at[0])+t._offset,lt=t.l2p(at[1])+t._offset}var gt=Math.min(je,lt),Ye=Math.max(je,lt),St=t.side,it=1/0,mt=-1/0;_.each(function(De){var ge=Wl.select(this),rt=ge.select(".text-math-group");if(rt.empty()){var dt=ol.bBox(ge.node()),We=0;Le?(dt.right>Ye||dt.leftYe||dt.top+(t.tickangle?0:De.fontSize/4)t["_visibleLabelMin_"+at._id]?ge.style("display","none"):Ye.K==="tick"&&!gt&&ge.node().style.display!=="none"&&ge.style("display",null)})})})})},S(_,m+1?m:v);function C(){return T.length&&Promise.all(T)}var E=null;function L(){if(S(_,v),f.length&&t.autotickangles&&(t.type!=="log"||String(t.dtick).charAt(0)!=="D")){E=t.autotickangles[0];var be=0,Me=[],Le,je=1;_.each(function(Vt){be=Math.max(be,Vt.fontSize);var Ht=t.l2p(Vt.x),Be=O5(this),st=ol.bBox(Be.node());je=Math.max(je,_d.lineCount(Be)),Me.push({top:0,bottom:10,height:10,left:Ht-st.width/2,right:Ht+st.width/2+2,width:st.width+2})});var lt=(t.tickson==="boundaries"||t.showdividers)&&!r.secondary,at=f.length,gt=Math.abs((f[at-1].x-f[0].x)*t._m)/(at-1),Ye=lt?gt/2:gt,St=lt?t.ticklen:be*1.25*je,it=Math.sqrt(Math.pow(Ye,2)+Math.pow(St,2)),mt=Ye/it,bt=t.autotickangles.map(function(Vt){return Vt*Math.PI/180}),vt=bt.find(function(Vt){return Math.abs(Math.cos(Vt))<=mt});vt===void 0&&(vt=bt.reduce(function(Vt,Ht){return Math.abs(Math.cos(Vt))Se*ke&&(oe=ke,J[W]=te[W]=fe[W])}var Ae=Math.abs(oe-ne);Ae-O>0?(Ae-=O,O*=1+O/Ae):O=0,t._id.charAt(0)!=="y"&&(O=-O),J[V]=q.p2r(q.r2p(te[V])+H*O),q.autorange==="min"||q.autorange==="max reversed"?(J[0]=null,q._rangeInitial0=void 0,q._rangeInitial1=void 0):(q.autorange==="max"||q.autorange==="min reversed")&&(J[1]=null,q._rangeInitial0=void 0,q._rangeInitial1=void 0),i._insideTickLabelsUpdaterange[q._name+".range"]=J}var xe=Qr.syncOrAsync(z);return xe&&xe.then&&e._promises.push(xe),xe};function ere(e,t,r){var i=t._id+"divider",a=r.vals,s=r.layer.selectAll("path."+i).data(a,w2);s.exit().remove(),s.enter().insert("path",":first-child").classed(i,1).classed("crisp",1).call(rg.stroke,t.dividercolor).style("stroke-width",ol.crispRound(e,t.dividerwidth,1)+"px"),s.attr("transform",r.transFn).attr("d",r.path)}$t.getPxPosition=function(e,t){var r=e._fullLayout._size,i=t._id.charAt(0),a=t.side,s;if(t.anchor!=="free"?s=t._anchorAxis:i==="x"?s={_offset:r.t+(1-(t.position||0))*r.h,_length:0}:i==="y"&&(s={_offset:r.l+(t.position||0)*r.w+t._shift,_length:0}),a==="top"||a==="left")return s._offset;if(a==="bottom"||a==="right")return s._offset+s._length};function CL(e){var t=e.title.font.size,r=(e.title.text.match(_d.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?t*(bd+r*ig):r?t*(r+1)*ig:t}function tre(e,t){var r=e._fullLayout,i=t._id,a=i.charAt(0),s=t.title.font.size,l,f=(t.title.text.match(_d.BR_TAG_ALL)||[]).length;if(t.title.hasOwnProperty("standoff"))t.side==="bottom"||t.side==="right"?l=t._depth+t.title.standoff+s*bd:(t.side==="top"||t.side==="left")&&(l=t._depth+t.title.standoff+s*(eg+f*ig));else{var h=og(t);if(t.type==="multicategory")l=t._depth;else{var v=1.5*s;h&&(v=.5*s,t.ticks==="outside"&&(v+=t.ticklen)),l=10+v+(t.linewidth?t.linewidth-1:0)}h||(a==="x"?l+=t.side==="top"?s*(t.showticklabels?1:0):s*(t.showticklabels?1.5:.5):l+=t.side==="right"?s*(t.showticklabels?1:.5):s*(t.showticklabels?.5:0))}var m=$t.getPxPosition(e,t),_,T,S;a==="x"?(T=t._offset+t._length/2,S=t.side==="top"?m-l:m+l):(S=t._offset+t._length/2,T=t.side==="right"?m+l:m-l,_={rotate:"-90",offset:0});var C;if(t.type!=="multicategory"){var E=t._selections[t._id+"tick"];if(C={selection:E,side:t.side},E&&E.node()&&E.node().parentNode){var L=ol.getTranslate(E.node().parentNode);C.offsetLeft=L.x,C.offsetTop=L.y}t.title.hasOwnProperty("standoff")&&(C.pad=0)}return t._titleStandoff=l,xte.draw(e,i+"title",{propContainer:t,propName:t._name+".title.text",placeholder:r._dfltTitle[a],avoid:C,transform:_,attributes:{x:T,y:S,"text-anchor":"middle"}})}$t.shouldShowZeroLine=function(e,t,r){var i=Qr.simpleMap(t.range,t.r2l);return i[0]*i[1]<=0&&t.zeroline&&(t.type==="linear"||t.type==="-")&&!(t.rangebreaks&&t.maskBreaks(0)===x2)&&(qL(t,0)||!rre(e,t,r,i)||are(e,t))};$t.clipEnds=function(e,t){return t.filter(function(r){return qL(e,r.x)})};function qL(e,t){var r=e.l2p(t);return r>1&&r1)for(a=1;a=a.min&&e=Ste:/%L/.test(t)?e>=Mte:/%[SX]/.test(t)?e>=g2:/%M/.test(t)?e>=ag:/%[HI]/.test(t)?e>=Pf:/%p/.test(t)?e>=Bh:/%[Aadejuwx]/.test(t)?e>=as:/%[UVW]/.test(t)?e>=sl:/%[Bbm]/.test(t)?e>=y2:/%[q]/.test(t)?e>=m2:/%[Yy]/.test(t)?e>=p2:!0}});var VL=pe((A1e,UL)=>{"use strict";UL.exports=function(t,r,i){var a,s;if(i){var l=r==="reversed"||r==="min reversed"||r==="max reversed";a=i[l?1:0],s=i[l?0:1]}var f=t("autorangeoptions.minallowed",s===null?a:void 0),h=t("autorangeoptions.maxallowed",a===null?s:void 0);f===void 0&&t("autorangeoptions.clipmin"),h===void 0&&t("autorangeoptions.clipmax"),t("autorangeoptions.include")}});var W5=pe((M1e,HL)=>{"use strict";var ure=VL();HL.exports=function(t,r,i,a){var s=r._template||{},l=r.type||s.type||"-";i("minallowed"),i("maxallowed");var f=i("range");if(!f){var h;!a.noInsiderange&&l!=="log"&&(h=i("insiderange"),h&&(h[0]===null||h[1]===null)&&(r.insiderange=!1,h=void 0),h&&(f=i("range",h)))}var v=r.getAutorangeDflt(f,a),m=i("autorange",v),_;f&&(f[0]===null&&f[1]===null||(f[0]===null||f[1]===null)&&(m==="reversed"||m===!0)||f[0]!==null&&(m==="min"||m==="max reversed")||f[1]!==null&&(m==="max"||m==="min reversed"))&&(f=void 0,delete r.range,r.autorange=!0,_=!0),_||(v=r.getAutorangeDflt(f,a),m=i("autorange",v)),m&&(ure(i,m,f),(l==="linear"||l==="-")&&i("rangemode")),r.cleanRange()}});var ZL=pe((S1e,GL)=>{var fre={left:0,top:0};GL.exports=cre;function cre(e,t,r){t=t||e.currentTarget||e.srcElement,Array.isArray(r)||(r=[0,0]);var i=e.clientX||0,a=e.clientY||0,s=hre(t);return r[0]=i-s.left,r[1]=a-s.top,r}function hre(e){return e===window||e===document||e===document.body?fre:e.getBoundingClientRect()}});var X5=pe((k1e,YL)=>{"use strict";var vre=ww();function dre(){var e=!1;try{var t=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,t),window.removeEventListener("test",null,t)}catch(r){e=!1}return e}YL.exports=vre&&dre()});var XL=pe((C1e,WL)=>{"use strict";WL.exports=function(t,r,i,a,s){var l=(t-i)/(a-i),f=l+r/(a-i),h=(l+f)/2;return s==="left"||s==="bottom"?l:s==="center"||s==="middle"?h:s==="right"||s==="top"?f:l<2/3-h?l:f>4/3-h?f:h}});var KL=pe((E1e,JL)=>{"use strict";var jL=Bt(),pre=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];JL.exports=function(t,r,i,a){return i==="left"?t=0:i==="center"?t=1:i==="right"?t=2:t=jL.constrain(Math.floor(t*3),0,2),a==="bottom"?r=0:a==="middle"?r=1:a==="top"?r=2:r=jL.constrain(Math.floor(r*3),0,2),pre[r][t]}});var $L=pe((L1e,QL)=>{"use strict";var mre=Vy(),yre=A_(),gre=Iy().getGraphDiv,_re=Ly(),j5=QL.exports={};j5.wrapped=function(e,t,r){e=gre(e),e._fullLayout&&yre.clear(e._fullLayout._uid+_re.HOVERID),j5.raw(e,t,r)};j5.raw=function(t,r){var i=t._fullLayout,a=t._hoverdata;r||(r={}),!(r.target&&!t._dragged&&mre.triggerHandler(t,"plotly_beforehover",r)===!1)&&(i._hoverlayer.selectAll("g").remove(),i._hoverlayer.selectAll("line").remove(),i._hoverlayer.selectAll("circle").remove(),t._hoverdata=void 0,r.target&&a&&t.emit("plotly_unhover",{event:r,points:a}))}});var Xl=pe((D1e,aD)=>{"use strict";var xre=ZL(),J5=Aw(),bre=X5(),wre=Bt().removeElement,Tre=Ao(),wd=aD.exports={};wd.align=XL();wd.getCursor=KL();var tD=$L();wd.unhover=tD.wrapped;wd.unhoverRaw=tD.raw;wd.init=function(t){var r=t.gd,i=1,a=r._context.doubleClickDelay,s=t.element,l,f,h,v,m,_,T,S;r._mouseDownTime||(r._mouseDownTime=0),s.style.pointerEvents="all",s.onmousedown=L,bre?(s._ontouchstart&&s.removeEventListener("touchstart",s._ontouchstart),s._ontouchstart=L,s.addEventListener("touchstart",L,{passive:!1})):s.ontouchstart=L;function C(q,I,O){return Math.abs(q)a&&(i=Math.max(i-1,1)),r._dragged)t.doneFn&&t.doneFn();else{var I;_.target===T?I=_:(I={target:T,srcElement:T,toElement:T},Object.keys(_).concat(Object.keys(_.__proto__)).forEach(O=>{var H=_[O];!I[O]&&typeof H!="function"&&(I[O]=H)})),t.clickFn&&t.clickFn(i,I),S||T.dispatchEvent(new MouseEvent("click",q))}r._dragging=!1,r._dragged=!1}};function rD(){var e=document.createElement("div");e.className="dragcover";var t=e.style;return t.position="fixed",t.left=0,t.right=0,t.top=0,t.bottom=0,t.zIndex=999999999,t.background="none",document.body.appendChild(e),e}wd.coverSlip=rD;function eD(e){return xre(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Oh=pe((P1e,iD)=>{"use strict";iD.exports=function(t,r){(t.attr("class")||"").split(" ").forEach(function(i){i.indexOf("cursor-")===0&&t.classed(i,!1)}),r&&t.classed("cursor-"+r,!0)}});var sD=pe((z1e,oD)=>{"use strict";var K5=Oh(),sg="data-savedcursor",nD="!!";oD.exports=function(t,r){var i=t.attr(sg);if(r){if(!i){for(var a=(t.attr("class")||"").split(" "),s=0;s{"use strict";var Q5=qo(),Are=Af();lD.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:Are.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:Q5({editType:"legend"}),grouptitlefont:Q5({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:Q5({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var M2=pe(A2=>{"use strict";A2.isGrouped=function(t){return(t.traceorder||"").indexOf("grouped")!==-1};A2.isVertical=function(t){return t.orientation!=="h"};A2.isReversed=function(t){return(t.traceorder||"").indexOf("reversed")!==-1}});var t4=pe((F1e,uD)=>{"use strict";var S2=sa(),ll=Bt(),Mre=Ii(),Sre=ys(),kre=$5(),Cre=m0(),e4=M2();function Ere(e,t,r,i){var a=t[e]||{},s=Mre.newContainer(r,e);function l(xe,be){return ll.coerce(a,s,kre,xe,be)}var f=ll.coerceFont(l,"font",r.font);l("bgcolor",r.paper_bgcolor),l("bordercolor");var h=l("visible");if(!h)return;var v,m=function(xe,be){var Me=v._input,Le=v;return ll.coerce(Me,Le,Sre,xe,be)},_=r.font||{},T=ll.coerceFont(l,"grouptitlefont",_,{overrideDflt:{size:Math.round(_.size*1.1)}}),S=0,C=!1,E="normal",L=(r.shapes||[]).filter(function(xe){return xe.showlegend});function z(xe){return S2.traceIs(xe,"pie-like")&&xe._length!=null&&(Array.isArray(xe.legend)||Array.isArray(xe.showlegend))}i.filter(z).forEach(function(xe){xe.visible&&S++;for(var be=0;bexe.legend.length)for(var Le=xe.legend.length;Le(e==="legend"?1:0));if(O===!1&&(r[e]=void 0),!(O===!1&&!a.uirevision)&&(l("uirevision",r.uirevision),O!==!1)){l("borderwidth");var H=l("orientation"),V=l("yref"),W=l("xref"),J=H==="h",te=V==="paper",ne=W==="paper",oe,fe,he,ke="left";J?(oe=0,S2.getComponentMethod("rangeslider","isVisible")(t.xaxis)?te?(fe=1.1,he="bottom"):(fe=1,he="top"):te?(fe=-.1,he="top"):(fe=0,he="bottom")):(fe=1,he="auto",ne?oe=1.02:(oe=1,ke="right")),ll.coerce(a,s,{x:{valType:"number",editType:"legend",min:ne?-2:0,max:ne?3:1,dflt:oe}},"x"),ll.coerce(a,s,{y:{valType:"number",editType:"legend",min:te?-2:0,max:te?3:1,dflt:fe}},"y"),l("traceorder",E),e4.isGrouped(r[e])&&l("tracegroupgap"),l("entrywidth"),l("entrywidthmode"),l("indentation"),l("itemsizing"),l("itemwidth"),l("itemclick"),l("itemdoubleclick"),l("groupclick"),l("xanchor",ke),l("yanchor",he),l("maxheight"),l("valign"),ll.noneOrAll(a,s,["x","y"]);var Se=l("title.text");if(Se){l("title.side",J?"left":"top");var Ae=ll.extendFlat({},f,{size:ll.bigFont(f.size)});ll.coerceFont(l,"title.font",Ae)}}}uD.exports=function(t,r,i){var a,s=i.slice(),l=r.shapes;if(l)for(a=0;a{"use strict";var U0=sa(),a4=Bt(),Lre=a4.pushUnique,r4=!0;fD.exports=function(t,r,i){var a=r._fullLayout;if(r._dragged||r._editing)return;var s=a.legend.itemclick,l=a.legend.itemdoubleclick,f=a.legend.groupclick;i===1&&s==="toggle"&&l==="toggleothers"&&r4&&r.data&&r._context.showTips&&a4.notifier(a4._(r,"Double-click on legend to isolate one trace"),"long"),r4=!1;var h;if(i===1?h=s:i===2&&(h=l),!h)return;var v=f==="togglegroup",m=a.hiddenlabels?a.hiddenlabels.slice():[],_=t.data()[0][0];if(_.groupTitle&&_.noClick)return;var T=r._fullData,S=(a.shapes||[]).filter(function(Rt){return Rt.showlegend}),C=T.concat(S),E=_.trace;E._isShape&&(E=E._fullInput);var L=E.legendgroup,z,B,q,I,O,H,V={},W=[],J=[],te=[];function ne(Rt,Ut){var Ct=W.indexOf(Rt),At=V.visible;return At||(At=V.visible=[]),W.indexOf(Rt)===-1&&(W.push(Rt),Ct=W.length-1),At[Ct]=Ut,Ct}var oe=(a.shapes||[]).map(function(Rt){return Rt._input}),fe=!1;function he(Rt,Ut){oe[Rt].visible=Ut,fe=!0}function ke(Rt,Ut){if(!(_.groupTitle&&!v)){var Ct=Rt._fullInput||Rt,At=Ct._isShape,Vt=Ct.index;Vt===void 0&&(Vt=Ct._index);var Ht=Ct.visible===!1?!1:Ut;At?he(Vt,Ht):ne(Vt,Ht)}}var Se=E.legend,Ae=E._fullInput,xe=Ae&&Ae._isShape;if(!xe&&U0.traceIs(E,"pie-like")){var be=_.label,Me=m.indexOf(be);if(h==="toggle")Me===-1?m.push(be):m.splice(Me,1);else if(h==="toggleothers"){var Le=Me!==-1,je=[];for(z=0;z{"use strict";hD.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var pD=pe((B1e,dD)=>{"use strict";var vD=sa(),n4=M2();dD.exports=function(t,r,i){var a=r._inHover,s=n4.isGrouped(r),l=n4.isReversed(r),f={},h=[],v=!1,m={},_=0,T=0,S,C;function E(be,Me,Le){if(r.visible!==!1&&!(i&&be!==r._id))if(Me===""||!n4.isGrouped(r)){var je="~~i"+_;h.push(je),f[je]=[Le],_++}else h.indexOf(Me)===-1?(h.push(Me),v=!0,f[Me]=[Le]):f[Me].push(Le)}for(S=0;Soe&&(ne=oe)}J[S][0]._groupMinRank=ne,J[S][0]._preGroupSort=S}var fe=function(be,Me){return be[0]._groupMinRank-Me[0]._groupMinRank||be[0]._preGroupSort-Me[0]._preGroupSort},he=function(be,Me){return be.trace.legendrank-Me.trace.legendrank||be._preSort-Me._preSort};for(J.forEach(function(be,Me){be[0]._preGroupSort=Me}),J.sort(fe),S=0;S{"use strict";var k2=Bt();function mD(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}Td.formatPiePercent=function(t,r){var i=mD((t*100).toPrecision(3));return k2.numSeparate(i,r)+"%"};Td.formatPieValue=function(t,r){var i=mD(t.toPrecision(10));return k2.numSeparate(i,r)};Td.getFirstFilled=function(t,r){if(k2.isArrayOrTypedArray(t))for(var i=0;i{"use strict";var Dre=xi(),Pre=Oa();yD.exports=function(t,r,i,a){var s=i.marker.pattern;s&&s.shape?Dre.pointStyle(t,i,a,r):Pre.fill(t,r.color)}});var wD=pe((V1e,bD)=>{"use strict";var _D=Oa(),xD=o4().castOption,zre=gD();bD.exports=function(t,r,i,a){var s=i.marker.line,l=xD(s.color,r.pts)||_D.defaultLine,f=xD(s.width,r.pts)||0;t.call(zre,r,i,a).style("stroke-width",f).call(_D.stroke,l)}});var f4=pe((H1e,CD)=>{"use strict";var is=ja(),s4=sa(),Bo=Bt(),TD=Bo.strTranslate,ul=xi(),jl=Oa(),l4=kf().extractOpts,C2=rs(),Ire=wD(),Rre=o4().castOption,Fre=i4(),AD=12,MD=5,Ad=2,qre=10,V0=5;CD.exports=function(t,r,i){var a=r._fullLayout;i||(i=a.legend);var s=i.itemsizing==="constant",l=i.itemwidth,f=(l+Fre.itemGap*2)/2,h=TD(f,0),v=function(V,W,J,te){var ne;if(V+1)ne=V;else if(W&&W.width>0)ne=W.width;else return 0;return s?te:Math.min(ne,J)};t.each(function(V){var W=is.select(this),J=Bo.ensureSingle(W,"g","layers");J.style("opacity",V[0].trace.opacity);var te=i.indentation,ne=i.valign,oe=V[0].lineHeight,fe=V[0].height;if(ne==="middle"&&te===0||!oe||!fe)J.attr("transform",null);else{var he={top:1,bottom:-1}[ne],ke=he*(.5*(oe-fe+3))||0,Se=i.indentation;J.attr("transform",TD(Se,ke))}var Ae=J.selectAll("g.legendfill").data([V]);Ae.enter().append("g").classed("legendfill",!0);var xe=J.selectAll("g.legendlines").data([V]);xe.enter().append("g").classed("legendlines",!0);var be=J.selectAll("g.legendsymbols").data([V]);be.enter().append("g").classed("legendsymbols",!0),be.selectAll("g.legendpoints").data([V]).enter().append("g").classed("legendpoints",!0)}).each(H).each(T).each(C).each(S).each(L).each(I).each(q).each(m).each(_).each(z).each(B);function m(V){var W=SD(V),J=W.showFill,te=W.showLine,ne=W.showGradientLine,oe=W.showGradientFill,fe=W.anyFill,he=W.anyLine,ke=V[0],Se=ke.trace,Ae,xe,be=l4(Se),Me=be.colorscale,Le=be.reversescale,je=function(mt){if(mt.size())if(J)ul.fillGroupStyle(mt,r,!0);else{var bt="legendfill-"+Se.uid;ul.gradient(mt,r,bt,u4(Le),Me,"fill")}},lt=function(mt){if(mt.size()){var bt="legendline-"+Se.uid;ul.lineGroupStyle(mt),ul.gradient(mt,r,bt,u4(Le),Me,"stroke")}},at=C2.hasMarkers(Se)||!fe?"M5,0":he?"M5,-2":"M5,-3",gt=is.select(this),Ye=gt.select(".legendfill").selectAll("path").data(J||oe?[V]:[]);if(Ye.enter().append("path").classed("js-fill",!0),Ye.exit().remove(),Ye.attr("d",at+"h"+l+"v6h-"+l+"z").call(je),te||ne){var St=v(void 0,Se.line,qre,MD);xe=Bo.minExtend(Se,{line:{width:St}}),Ae=[Bo.minExtend(ke,{trace:xe})]}var it=gt.select(".legendlines").selectAll("path").data(te||ne?[Ae]:[]);it.enter().append("path").classed("js-line",!0),it.exit().remove(),it.attr("d",at+(ne?"l"+l+",0.0001":"h"+l)).call(te?ul.lineGroupStyle:lt)}function _(V){var W=SD(V),J=W.anyFill,te=W.anyLine,ne=W.showLine,oe=W.showMarker,fe=V[0],he=fe.trace,ke=!oe&&!te&&!J&&C2.hasText(he),Se,Ae;function xe(Ye,St,it,mt){var bt=Bo.nestedProperty(he,Ye).get(),vt=Bo.isArrayOrTypedArray(bt)&&St?St(bt):bt;if(s&&vt&&mt!==void 0&&(vt=mt),it){if(vtit[1])return it[1]}return vt}function be(Ye){return fe._distinct&&fe.index&&Ye[fe.index]?Ye[fe.index]:Ye[0]}if(oe||ke||ne){var Me={},Le={};if(oe){Me.mc=xe("marker.color",be),Me.mx=xe("marker.symbol",be),Me.mo=xe("marker.opacity",Bo.mean,[.2,1]),Me.mlc=xe("marker.line.color",be),Me.mlw=xe("marker.line.width",Bo.mean,[0,5],Ad),Le.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var je=xe("marker.size",Bo.mean,[2,16],AD);Me.ms=je,Le.marker.size=je}ne&&(Le.line={width:xe("line.width",be,[0,10],MD)}),ke&&(Me.tx="Aa",Me.tp=xe("textposition",be),Me.ts=10,Me.tc=xe("textfont.color",be),Me.tf=xe("textfont.family",be),Me.tw=xe("textfont.weight",be),Me.ty=xe("textfont.style",be),Me.tv=xe("textfont.variant",be),Me.tC=xe("textfont.textcase",be),Me.tE=xe("textfont.lineposition",be),Me.tS=xe("textfont.shadow",be)),Se=[Bo.minExtend(fe,Me)],Ae=Bo.minExtend(he,Le),Ae.selectedpoints=null,Ae.texttemplate=null}var lt=is.select(this).select("g.legendpoints"),at=lt.selectAll("path.scatterpts").data(oe?Se:[]);at.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",h),at.exit().remove(),at.call(ul.pointStyle,Ae,r),oe&&(Se[0].mrc=3);var gt=lt.selectAll("g.pointtext").data(ke?Se:[]);gt.enter().append("g").classed("pointtext",!0).append("text").attr("transform",h),gt.exit().remove(),gt.selectAll("text").call(ul.textPointStyle,Ae,r)}function T(V){var W=V[0].trace,J=W.type==="waterfall";if(V[0]._distinct&&J){var te=V[0].trace[V[0].dir].marker;return V[0].mc=te.color,V[0].mlw=te.line.width,V[0].mlc=te.line.color,E(V,this,"waterfall")}var ne=[];W.visible&&J&&(ne=V[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var oe=is.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(ne);oe.enter().append("path").classed("legendwaterfall",!0).attr("transform",h).style("stroke-miterlimit",1),oe.exit().remove(),oe.each(function(fe){var he=is.select(this),ke=W[fe[0]].marker,Se=v(void 0,ke.line,V0,Ad);he.attr("d",fe[1]).style("stroke-width",Se+"px").call(jl.fill,ke.color),Se&&he.call(jl.stroke,ke.line.color)})}function S(V){E(V,this)}function C(V){E(V,this,"funnel")}function E(V,W,J){var te=V[0].trace,ne=te.marker||{},oe=ne.line||{},fe=ne.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",he=J?te.visible&&te.type===J:s4.traceIs(te,"bar"),ke=is.select(W).select("g.legendpoints").selectAll("path.legend"+J).data(he?[V]:[]);ke.enter().append("path").classed("legend"+J,!0).attr("d",fe).attr("transform",h),ke.exit().remove(),ke.each(function(Se){var Ae=is.select(this),xe=Se[0],be=v(xe.mlw,ne.line,V0,Ad);Ae.style("stroke-width",be+"px");var Me=xe.mcc;if(!i._inHover&&"mc"in xe){var Le=l4(ne),je=Le.mid;je===void 0&&(je=(Le.max+Le.min)/2),Me=ul.tryColorscale(ne,"")(je)}var lt=Me||xe.mc||ne.color,at=ne.pattern,gt=ul.getPatternAttr,Ye=at&&(gt(at.shape,0,"")||gt(at.path,0,""));if(Ye){var St=gt(at.bgcolor,0,null),it=gt(at.fgcolor,0,null),mt=at.fgopacity,bt=kD(at.size,8,10),vt=kD(at.solidity,.5,1),de="legend-"+te.uid;Ae.call(ul.pattern,"legend",r,de,Ye,bt,vt,Me,at.fillmode,St,it,mt)}else Ae.call(jl.fill,lt);be&&jl.stroke(Ae,xe.mlc||oe.color)})}function L(V){var W=V[0].trace,J=is.select(this).select("g.legendpoints").selectAll("path.legendbox").data(W.visible&&s4.traceIs(W,"box-violin")?[V]:[]);J.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",h),J.exit().remove(),J.each(function(){var te=is.select(this);if((W.boxpoints==="all"||W.points==="all")&&jl.opacity(W.fillcolor)===0&&jl.opacity((W.line||{}).color)===0){var ne=Bo.minExtend(W,{marker:{size:s?AD:Bo.constrain(W.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});J.call(ul.pointStyle,ne,r)}else{var oe=v(void 0,W.line,V0,Ad);te.style("stroke-width",oe+"px").call(jl.fill,W.fillcolor),oe&&jl.stroke(te,W.line.color)}})}function z(V){var W=V[0].trace,J=is.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(W.visible&&W.type==="candlestick"?[V,V]:[]);J.enter().append("path").classed("legendcandle",!0).attr("d",function(te,ne){return ne?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",h).style("stroke-miterlimit",1),J.exit().remove(),J.each(function(te,ne){var oe=is.select(this),fe=W[ne?"increasing":"decreasing"],he=v(void 0,fe.line,V0,Ad);oe.style("stroke-width",he+"px").call(jl.fill,fe.fillcolor),he&&jl.stroke(oe,fe.line.color)})}function B(V){var W=V[0].trace,J=is.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(W.visible&&W.type==="ohlc"?[V,V]:[]);J.enter().append("path").classed("legendohlc",!0).attr("d",function(te,ne){return ne?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",h).style("stroke-miterlimit",1),J.exit().remove(),J.each(function(te,ne){var oe=is.select(this),fe=W[ne?"increasing":"decreasing"],he=v(void 0,fe.line,V0,Ad);oe.style("fill","none").call(ul.dashLine,fe.line.dash,he),he&&jl.stroke(oe,fe.line.color)})}function q(V){O(V,this,"pie")}function I(V){O(V,this,"funnelarea")}function O(V,W,J){var te=V[0],ne=te.trace,oe=J?ne.visible&&ne.type===J:s4.traceIs(ne,J),fe=is.select(W).select("g.legendpoints").selectAll("path.legend"+J).data(oe?[V]:[]);if(fe.enter().append("path").classed("legend"+J,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",h),fe.exit().remove(),fe.size()){var he=ne.marker||{},ke=v(Rre(he.line.width,te.pts),he.line,V0,Ad),Se="pieLike",Ae=Bo.minExtend(ne,{marker:{line:{width:ke}}},Se),xe=Bo.minExtend(te,{trace:Ae},Se);Ire(fe,xe,Ae,r)}}function H(V){var W=V[0].trace,J,te=[];if(W.visible)switch(W.type){case"histogram2d":case"heatmap":te=[["M-15,-2V4H15V-2Z"]],J=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":te=[["M-6,-6V6H6V-6Z"]],J=!0;break;case"densitymapbox":case"densitymap":te=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],J="radial";break;case"cone":te=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],J=!1;break;case"streamtube":te=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],J=!1;break;case"surface":te=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],J=!0;break;case"mesh3d":te=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],J=!1;break;case"volume":te=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],J=!0;break;case"isosurface":te=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],J=!1;break}var ne=is.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(te);ne.enter().append("path").classed("legend3dandfriends",!0).attr("transform",h).style("stroke-miterlimit",1),ne.exit().remove(),ne.each(function(oe,fe){var he=is.select(this),ke=l4(W),Se=ke.colorscale,Ae=ke.reversescale,xe=function(je){if(je.size()){var lt="legendfill-"+W.uid;ul.gradient(je,r,lt,u4(Ae,J==="radial"),Se,"fill")}},be;if(Se){if(!J){var Le=Se.length;be=fe===0?Se[Ae?Le-1:0][1]:fe===1?Se[Ae?0:Le-1][1]:Se[Math.floor((Le-1)/2)][1]}}else{var Me=W.vertexcolor||W.facecolor||W.color;be=Bo.isArrayOrTypedArray(Me)?Me[fe]||Me[0]:Me}he.attr("d",oe[0]),be?he.call(jl.fill,be):he.call(xe)})}};function u4(e,t){var r=t?"radial":"horizontal";return r+(e?"":"reversed")}function SD(e){var t=e[0].trace,r=t.contours,i=C2.hasLines(t),a=C2.hasMarkers(t),s=t.visible&&t.fill&&t.fill!=="none",l=!1,f=!1;if(r){var h=r.coloring;h==="lines"?l=!0:i=h==="none"||h==="heatmap"||r.showlines,r.type==="constraint"?s=r._operation!=="=":(h==="fill"||h==="heatmap")&&(f=!0)}return{showMarker:a,showLine:i,showFill:s,showGradientLine:l,showGradientFill:f,anyLine:i||l,anyFill:s||f}}function kD(e,t,r){return e&&Bo.isArrayOrTypedArray(e)?t:e>r?r:e}});var d4=pe((G1e,ND)=>{"use strict";var Os=ja(),On=Bt(),h4=eo(),Z0=sa(),ED=Vy(),c4=Xl(),Un=xi(),L2=Oa(),Md=co(),LD=cD(),jn=i4(),v4=ts(),FD=v4.LINE_SPACING,G0=v4.FROM_TL,DD=v4.FROM_BR,PD=pD(),Nre=f4(),zD=M2(),H0=1,Bre=/^legend[0-9]*$/;ND.exports=function(t,r){if(r)ID(t,r);else{var i=t._fullLayout,a=i._legends,s=i._infolayer.selectAll('[class^="legend"]');s.each(function(){var v=Os.select(this),m=v.attr("class"),_=m.split(" ")[0];_.match(Bre)&&a.indexOf(_)===-1&&v.remove()});for(var l=0;l1)}var C=i.hiddenlabels||[];if(!f&&(!i.showlegend||!h.length))return l.selectAll("."+a).remove(),i._topdefs.select("#"+s).remove(),h4.autoMargin(e,a);var E=On.ensureSingle(l,"g",a,function(W){f||W.attr("pointer-events","all")}),L=On.ensureSingleById(i._topdefs,"clipPath",s,function(W){W.append("rect")}),z=On.ensureSingle(E,"rect","bg",function(W){W.attr("shape-rendering","crispEdges")});z.call(L2.stroke,r.bordercolor).call(L2.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px");var B=On.ensureSingle(E,"g","scrollbox"),q=r.title;r._titleWidth=0,r._titleHeight=0;var I;q.text?(I=On.ensureSingle(B,"text",a+"titletext"),I.attr("text-anchor","start").call(Un.font,q.font).text(q.text),D2(I,B,e,r,H0)):B.selectAll("."+a+"titletext").remove();var O=On.ensureSingle(E,"rect","scrollbar",function(W){W.attr(jn.scrollBarEnterAttrs).call(L2.fill,jn.scrollBarColor)}),H=B.selectAll("g.groups").data(h);H.enter().append("g").attr("class","groups"),H.exit().remove();var V=H.selectAll("g.traces").data(On.identity);V.enter().append("g").attr("class","traces"),V.exit().remove(),V.style("opacity",function(W){var J=W[0].trace;return Z0.traceIs(J,"pie-like")?C.indexOf(W[0].label)!==-1?.5:1:J.visible==="legendonly"?.5:1}).each(function(){Os.select(this).call(Ure,e,r)}).call(Nre,e,r).each(function(){f||Os.select(this).call(Vre,e,a)}),On.syncOrAsync([h4.previousPromises,function(){return Zre(e,H,V,r)},function(){var W=i._size,J=r.borderwidth,te=r.xref==="paper",ne=r.yref==="paper";if(q.text&&Ore(I,r,J),!f){var oe,fe;te?oe=W.l+W.w*r.x-G0[P2(r)]*r._width:oe=i.width*r.x-G0[P2(r)]*r._width,ne?fe=W.t+W.h*(1-r.y)-G0[z2(r)]*r._effHeight:fe=i.height*(1-r.y)-G0[z2(r)]*r._effHeight;var he=Yre(e,a,oe,fe);if(he)return;if(i.margin.autoexpand){var ke=oe,Se=fe;oe=te?On.constrain(oe,0,i.width-r._width):ke,fe=ne?On.constrain(fe,0,i.height-r._effHeight):Se,oe!==ke&&On.log("Constrain "+a+".x to make legend fit inside graph"),fe!==Se&&On.log("Constrain "+a+".y to make legend fit inside graph")}Un.setTranslate(E,oe,fe)}if(O.on(".drag",null),E.on("wheel",null),f||r._height<=r._maxHeight||e._context.staticPlot){var Ae=r._effHeight;f&&(Ae=r._height),z.attr({width:r._width-J,height:Ae-J,x:J/2,y:J/2}),Un.setTranslate(B,0,0),L.select("rect").attr({width:r._width-2*J,height:Ae-2*J,x:J,y:J}),Un.setClipUrl(B,s,e),Un.setRect(O,0,0,0,0),delete r._scrollY}else{var xe=Math.max(jn.scrollBarMinHeight,r._effHeight*r._effHeight/r._height),be=r._effHeight-xe-2*jn.scrollBarMargin,Me=r._height-r._effHeight,Le=be/Me,je=Math.min(r._scrollY||0,Me);z.attr({width:r._width-2*J+jn.scrollBarWidth+jn.scrollBarMargin,height:r._effHeight-J,x:J/2,y:J/2}),L.select("rect").attr({width:r._width-2*J+jn.scrollBarWidth+jn.scrollBarMargin,height:r._effHeight-2*J,x:J,y:J+je}),Un.setClipUrl(B,s,e),bt(je,xe,Le),E.on("wheel",function(){je=On.constrain(r._scrollY+Os.event.deltaY/Me*be,0,Me),bt(je,xe,Le),je!==0&&je!==Me&&Os.event.preventDefault()});var lt,at,gt,Ye=function(rt,dt,We){var qt=(We-dt)/Le+rt;return On.constrain(qt,0,Me)},St=function(rt,dt,We){var qt=(dt-We)/Le+rt;return On.constrain(qt,0,Me)},it=Os.behavior.drag().on("dragstart",function(){var rt=Os.event.sourceEvent;rt.type==="touchstart"?lt=rt.changedTouches[0].clientY:lt=rt.clientY,gt=je}).on("drag",function(){var rt=Os.event.sourceEvent;rt.buttons===2||rt.ctrlKey||(rt.type==="touchmove"?at=rt.changedTouches[0].clientY:at=rt.clientY,je=Ye(gt,lt,at),bt(je,xe,Le))});O.call(it);var mt=Os.behavior.drag().on("dragstart",function(){var rt=Os.event.sourceEvent;rt.type==="touchstart"&&(lt=rt.changedTouches[0].clientY,gt=je)}).on("drag",function(){var rt=Os.event.sourceEvent;rt.type==="touchmove"&&(at=rt.changedTouches[0].clientY,je=St(gt,lt,at),bt(je,xe,Le))});B.call(mt)}function bt(rt,dt,We){r._scrollY=e._fullLayout[a]._scrollY=rt,Un.setTranslate(B,0,-rt),Un.setRect(O,r._width,jn.scrollBarMargin+rt*We,jn.scrollBarWidth,dt),L.select("rect").attr("y",J+rt)}if(e._context.edits.legendPosition){var vt,de,De,ge;E.classed("cursor-move",!0),c4.init({element:E.node(),gd:e,prepFn:function(rt){if(rt.target!==O.node()){var dt=Un.getTranslate(E);De=dt.x,ge=dt.y}},moveFn:function(rt,dt){if(De!==void 0&&ge!==void 0){var We=De+rt,qt=ge+dt;Un.setTranslate(E,We,qt),vt=c4.align(We,r._width,W.l,W.l+W.w,r.xanchor),de=c4.align(qt+r._height,-r._height,W.t+W.h,W.t,r.yanchor)}},doneFn:function(){if(vt!==void 0&&de!==void 0){var rt={};rt[a+".x"]=vt,rt[a+".y"]=de,Z0.call("_guiRelayout",e,rt)}},clickFn:function(rt,dt){var We=l.selectAll("g.traces").filter(function(){var qt=this.getBoundingClientRect();return dt.clientX>=qt.left&&dt.clientX<=qt.right&&dt.clientY>=qt.top&&dt.clientY<=qt.bottom});We.size()>0&&qD(e,E,We,rt,dt)}})}}],e)}}function E2(e,t,r){var i=e[0],a=i.width,s=t.entrywidthmode,l=i.trace.legendwidth||t.entrywidth;return s==="fraction"?t._maxWidth*l:r+(l||a)}function qD(e,t,r,i,a){var s=r.data()[0][0].trace,l={event:a,node:r.node(),curveNumber:s.index,expandedIndex:s.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};s._group&&(l.group=s._group),Z0.traceIs(s,"pie-like")&&(l.label=r.datum()[0].label);var f=ED.triggerHandler(e,"plotly_legendclick",l);if(i===1){if(f===!1)return;t._clickTimeout=setTimeout(function(){e._fullLayout&&LD(r,e,i)},e._context.doubleClickDelay)}else if(i===2){t._clickTimeout&&clearTimeout(t._clickTimeout),e._legendMouseDownTime=0;var h=ED.triggerHandler(e,"plotly_legenddoubleclick",l);h!==!1&&f!==!1&&LD(r,e,i)}}function Ure(e,t,r){var i=I2(r),a=e.data()[0][0],s=a.trace,l=Z0.traceIs(s,"pie-like"),f=!r._inHover&&t._context.edits.legendText&&!l,h=r._maxNameLength,v,m;a.groupTitle?(v=a.groupTitle.text,m=a.groupTitle.font):(m=r.font,r.entries?v=a.text:(v=l?a.label:s.name,s._meta&&(v=On.templateString(v,s._meta))));var _=On.ensureSingle(e,"text",i+"text");_.attr("text-anchor","start").call(Un.font,m).text(f?RD(v,h):v);var T=r.indentation+r.itemwidth+jn.itemGap*2;Md.positionText(_,T,0),f?_.call(Md.makeEditable,{gd:t,text:v}).call(D2,e,t,r).on("edit",function(S){this.text(RD(S,h)).call(D2,e,t,r);var C=a.trace._fullInput||{},E={};return E.name=S,C._isShape?Z0.call("_guiRelayout",t,"shapes["+s.index+"].name",E.name):Z0.call("_guiRestyle",t,E,s.index)}):D2(_,e,t,r)}function RD(e,t){var r=Math.max(4,t);if(e&&e.trim().length>=r/2)return e;e=e||"";for(var i=r-e.length;i>0;i--)e+=" ";return e}function Vre(e,t,r){var i=t._context.doubleClickDelay,a,s=1,l=On.ensureSingle(e,"rect",r+"toggle",function(f){t._context.staticPlot||f.style("cursor","pointer").attr("pointer-events","all"),f.call(L2.fill,"rgba(0,0,0,0)")});t._context.staticPlot||(l.on("mousedown",function(){a=new Date().getTime(),a-t._legendMouseDownTimei&&(s=Math.max(s-1,1)),qD(t,f,e,s,Os.event)}}))}function D2(e,t,r,i,a){i._inHover&&e.attr("data-notex",!0),Md.convertToTspans(e,r,function(){Hre(t,r,i,a)})}function Hre(e,t,r,i){var a=e.data()[0][0],s=a&&a.trace.showlegend;if(Array.isArray(s)&&(s=s[a.i]!==!1),!r._inHover&&a&&!s){e.remove();return}var l=e.select("g[class*=math-group]"),f=l.node(),h=I2(r);r||(r=t._fullLayout[h]);var v=r.borderwidth,m;i===H0?m=r.title.font:a.groupTitle?m=a.groupTitle.font:m=r.font;var _=m.size*FD,T,S;if(f){var C=Un.bBox(f);T=C.height,S=C.width,i===H0?Un.setTranslate(l,v,v+T*.75):Un.setTranslate(l,0,T*.25)}else{var E="."+h+(i===H0?"title":"")+"text",L=e.select(E),z=Md.lineCount(L),B=L.node();if(T=_*z,S=B?Un.bBox(B).width:0,i===H0)r.title.side==="left"&&(S+=jn.itemGap*2),Md.positionText(L,v+jn.titlePad,v+_);else{var q=jn.itemGap*2+r.indentation+r.itemwidth;a.groupTitle&&(q=jn.itemGap,S-=r.indentation+r.itemwidth),Md.positionText(L,q,-_*((z-1)/2-.3))}}i===H0?(r._titleWidth=S,r._titleHeight=T):(a.lineHeight=_,a.height=Math.max(T,16)+3,a.width=S)}function Gre(e){var t=0,r=0,i=e.title.side;return i&&(i.indexOf("left")!==-1&&(t=e._titleWidth),i.indexOf("top")!==-1&&(r=e._titleHeight)),[t,r]}function Zre(e,t,r,i){var a=e._fullLayout,s=I2(i);i||(i=a[s]);var l=a._size,f=zD.isVertical(i),h=zD.isGrouped(i),v=i.entrywidthmode==="fraction",m=i.borderwidth,_=2*m,T=jn.itemGap,S=i.indentation+i.itemwidth+T*2,C=2*(m+T),E=z2(i),L=i.y<0||i.y===0&&E==="top",z=i.y>1||i.y===1&&E==="bottom",B=i.tracegroupgap,q={};let{orientation:I,yref:O}=i,{maxheight:H}=i,V=L||z||I!=="v"||O!=="paper";H||(H=V?.5:1);let W=V?a.height:l.h;i._maxHeight=Math.max(H>1?H:H*W,30);var J=0;i._width=0,i._height=0;var te=Gre(i);if(f)r.each(function(bt){var vt=bt[0].height;Un.setTranslate(this,m+te[0],m+te[1]+i._height+vt/2+T),i._height+=vt,i._width=Math.max(i._width,bt[0].width)}),J=S+i._width,i._width+=T+S+_,i._height+=C,h&&(t.each(function(bt,vt){Un.setTranslate(this,0,vt*i.tracegroupgap)}),i._height+=(i._lgroupsLength-1)*i.tracegroupgap);else{var ne=P2(i),oe=i.x<0||i.x===0&&ne==="right",fe=i.x>1||i.x===1&&ne==="left",he=z||L,ke=a.width/2;i._maxWidth=Math.max(oe?he&&ne==="left"?l.l+l.w:ke:fe?he&&ne==="right"?l.r+l.w:ke:l.w,2*S);var Se=0,Ae=0;r.each(function(bt){var vt=E2(bt,i,S);Se=Math.max(Se,vt),Ae+=vt}),J=null;var xe=0;if(h){var be=0,Me=0,Le=0;t.each(function(){var bt=0,vt=0;Os.select(this).selectAll("g.traces").each(function(De){var ge=E2(De,i,S),rt=De[0].height;Un.setTranslate(this,te[0],te[1]+m+T+rt/2+vt),vt+=rt,bt=Math.max(bt,ge),q[De[0].trace.legendgroup]=bt});var de=bt+T;Me>0&&de+m+Me>i._maxWidth?(xe=Math.max(xe,Me),Me=0,Le+=be+B,be=vt):be=Math.max(be,vt),Un.setTranslate(this,Me,Le),Me+=de}),i._width=Math.max(xe,Me)+m,i._height=Le+be+C}else{var je=r.size(),lt=Ae+_+(je-1)*T=i._maxWidth&&(xe=Math.max(xe,St),gt=0,Ye+=at,i._height+=at,at=0),Un.setTranslate(this,te[0]+m+gt,te[1]+m+Ye+vt/2+T),St=gt+de+T,gt+=De,at=Math.max(at,vt)}),lt?(i._width=gt+_,i._height=at+C):(i._width=Math.max(xe,St)+_,i._height+=at+C)}}i._width=Math.ceil(Math.max(i._width+te[0],i._titleWidth+2*(m+jn.titlePad))),i._height=Math.ceil(Math.max(i._height+te[1],i._titleHeight+2*(m+jn.itemGap))),i._effHeight=Math.min(i._height,i._maxHeight);var it=e._context.edits,mt=it.legendText||it.legendPosition;r.each(function(bt){var vt=Os.select(this).select("."+s+"toggle"),de=bt[0].height,De=bt[0].trace.legendgroup,ge=E2(bt,i,S);h&&De!==""&&(ge=q[De]);var rt=mt?S:J||ge;!f&&!v&&(rt+=T/2),Un.setRect(vt,0,-de/2,rt,de)})}function Yre(e,t,r,i){var a=e._fullLayout,s=a[t],l=P2(s),f=z2(s),h=s.xref==="paper",v=s.yref==="paper";e._fullLayout._reservedMargin[t]={};var m=s.y<.5?"b":"t",_=s.x<.5?"l":"r",T={r:a.width-r,l:r+s._width,b:a.height-i,t:i+s._effHeight};if(h&&v)return h4.autoMargin(e,t,{x:s.x,y:s.y,l:s._width*G0[l],r:s._width*DD[l],b:s._effHeight*DD[f],t:s._effHeight*G0[f]});h?e._fullLayout._reservedMargin[t][m]=T[m]:v||s.orientation==="v"?e._fullLayout._reservedMargin[t][_]=T[_]:e._fullLayout._reservedMargin[t][m]=T[m]}function P2(e){return On.isRightAnchor(e)?"right":On.isCenterAnchor(e)?"center":"left"}function z2(e){return On.isBottomAnchor(e)?"bottom":On.isMiddleAnchor(e)?"middle":"top"}function I2(e){return e._id||"legend"}});var g4=pe(y4=>{"use strict";var Sd=ja(),Tc=Da(),BD=Tf(),cn=Bt(),Wre=cn.pushUnique,p4=cn.strTranslate,Xre=cn.strRotate,jre=Vy(),Jl=co(),Jre=sD(),zf=xi(),ro=Oa(),R2=Xl(),If=Xi(),Kre=Ao().zindexSeparator,W0=sa(),Nu=bc(),kd=Ly(),Qre=t4(),$re=d4(),WD=kd.YANGLE,m4=Math.PI*WD/180,eae=1/Math.sin(m4),tae=Math.cos(m4),rae=Math.sin(m4),ji=kd.HOVERARROWSIZE,Fa=kd.HOVERTEXTPAD,OD={box:!0,ohlc:!0,violin:!0,candlestick:!0},aae={scatter:!0,scattergl:!0,splom:!0};function UD(e,t){return e.distance-t.distance}y4.hover=function(t,r,i,a){t=cn.getGraphDiv(t);var s=r.target;cn.throttle(t._fullLayout._uid+kd.HOVERID,kd.HOVERMINTIME,function(){iae(t,r,i,a,s)})};y4.loneHover=function(t,r){var i=!0;Array.isArray(t)||(i=!1,t=[t]);var a=r.gd,s=QD(a),l=$D(a),f=t.map(function(L){var z=L._x0||L.x0||L.x||0,B=L._x1||L.x1||L.x||0,q=L._y0||L.y0||L.y||0,I=L._y1||L.y1||L.y||0,O=L.eventData;if(O){var H=Math.min(z,B),V=Math.max(z,B),W=Math.min(q,I),J=Math.max(q,I),te=L.trace;if(W0.traceIs(te,"gl3d")){var ne=a._fullLayout[te.scene]._scene.container,oe=ne.offsetLeft,fe=ne.offsetTop;H+=oe,V+=oe,W+=fe,J+=fe}O.bbox={x0:H+l,x1:V+l,y0:W+s,y1:J+s},r.inOut_bbox&&r.inOut_bbox.push(O.bbox)}else O=!1;return{color:L.color||ro.defaultLine,x0:L.x0||L.x||0,x1:L.x1||L.x||0,y0:L.y0||L.y||0,y1:L.y1||L.y||0,xLabel:L.xLabel,yLabel:L.yLabel,zLabel:L.zLabel,text:L.text,name:L.name,idealAlign:L.idealAlign,borderColor:L.borderColor,fontFamily:L.fontFamily,fontSize:L.fontSize,fontColor:L.fontColor,fontWeight:L.fontWeight,fontStyle:L.fontStyle,fontVariant:L.fontVariant,nameLength:L.nameLength,textAlign:L.textAlign,trace:L.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:L.hovertemplate||!1,hovertemplateLabels:L.hovertemplateLabels||!1,eventData:O}}),h=!1,v=jD(f,{gd:a,hovermode:"closest",rotateLabels:h,bgColor:r.bgColor||ro.background,container:Sd.select(r.container),outerContainer:r.outerContainer||r.container}),m=v.hoverLabels,_=5,T=0,S=0;m.sort(function(L,z){return L.y0-z.y0}).each(function(L,z){var B=L.y0-L.by/2;B-_V[0]._length||ge<0||ge>W[0]._length)return R2.unhoverRaw(e,t)}if(t.pointerX=De+V[0]._offset,t.pointerY=ge+W[0]._offset,"xval"in t?Se=Nu.flat(s,t.xval):Se=Nu.p2c(V,De),"yval"in t?Ae=Nu.flat(s,t.yval):Ae=Nu.p2c(W,ge),!Tc(Se[0])||!Tc(Ae[0]))return cn.warn("Fx.hover failed",t,e),R2.unhoverRaw(e,t)}var We=1/0;function qt(ir,oi){for(be=0;beit&&(he.splice(0,it),We=he[0].distance),_&&fe!==0&&he.length===0){St.distance=fe,St.index=!1;var se=Le._module.hoverPoints(St,gt,Ye,"closest",{hoverLayer:f._hoverlayer});if(se&&(se=se.filter(function($e){return $e.spikeDistance<=fe})),se&&se.length){var ee,le=se.filter(function($e){return $e.xa.showspikes&&$e.xa.spikesnap!=="hovered data"});if(le.length){var ce=le[0];Tc(ce.x0)&&Tc(ce.y0)&&(ee=Tt(ce),(!mt.vLinePoint||mt.vLinePoint.spikeDistance>ee.spikeDistance)&&(mt.vLinePoint=ee))}var Ee=se.filter(function($e){return $e.ya.showspikes&&$e.ya.spikesnap!=="hovered data"});if(Ee.length){var Ne=Ee[0];Tc(Ne.x0)&&Tc(Ne.y0)&&(ee=Tt(Ne),(!mt.hLinePoint||mt.hLinePoint.spikeDistance>ee.spikeDistance)&&(mt.hLinePoint=ee))}}}}}qt();function Dt(ir,oi,Sa){for(var la=null,Ci=1/0,ma,se=0;seir.trace.index===ct.trace.index):he=[ct];var pt=he.length,Ot=YD("x",ct,f),er=YD("y",ct,f);qt(Ot,er);var Zt=[],Kt={},pr=0,yr=function(ir){var oi=OD[ir.trace.type]?XD(ir):ir.trace.index;if(!Kt[oi])pr++,Kt[oi]=pr,Zt.push(ir);else{var Sa=Kt[oi]-1,la=Zt[Sa];Sa>0&&Math.abs(ir.distance)pt-1;ur--)yr(he[ur]);he=Zt,At()}var Lt=e._hoverdata,Fe=[],Ue=QD(e),xt=$D(e);for(let ir of he){var wt=Nu.makeEventData(ir,ir.trace,ir.cd);if(ir.hovertemplate!==!1){var mr=!1;ir.cd[ir.index]&&ir.cd[ir.index].ht&&(mr=ir.cd[ir.index].ht),ir.hovertemplate=mr||ir.trace.hovertemplate||!1}if(ir.xa&&ir.ya){var Ar=ir.x0+ir.xa._offset,Mr=ir.x1+ir.xa._offset,Gr=ir.y0+ir.ya._offset,pa=ir.y1+ir.ya._offset,Ca=Math.min(Ar,Mr),ii=Math.max(Ar,Mr),wi=Math.min(Gr,pa),vi=Math.max(Gr,pa);wt.bbox={x0:Ca+xt,x1:ii+xt,y0:wi+Ue,y1:vi+Ue}}ir.eventData=[wt],Fe.push(wt)}e._hoverdata=Fe;var Fi=T==="y"&&(ke.length>1||he.length>1)||T==="closest"&&bt&&he.length>1,Gi=ro.combine(f.plot_bgcolor||ro.background,f.paper_bgcolor),hn=jD(he,{gd:e,hovermode:T,rotateLabels:Fi,bgColor:Gi,container:f._hoverlayer,outerContainer:f._paper.node(),commonLabelOpts:f.hoverlabel,hoverdistance:f.hoverdistance}),nn=hn.hoverLabels;if(Nu.isUnifiedHover(T)||(oae(nn,Fi,f,hn.commonLabelBoundingBox),KD(nn,Fi,f._invScaleX,f._invScaleY)),a&&a.tagName){var Ki=W0.getComponentMethod("annotations","hasClickToShow")(e,Fe);Jre(Sd.select(a),Ki?"pointer":"")}!a||i||!uae(e,t,Lt)||(Lt&&e.emit("plotly_unhover",{event:t,points:Lt}),e.emit("plotly_hover",{event:t,points:e._hoverdata,xaxes:V,yaxes:W,xvals:Se,yvals:Ae}))}function XD(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var nae=/([\s\S]*)<\/extra>/;function jD(e,t){var r=t.gd,i=r._fullLayout,a=t.hovermode,s=t.rotateLabels,l=t.bgColor,f=t.container,h=t.outerContainer,v=t.commonLabelOpts||{};if(e.length===0)return[[]];var m=t.fontFamily||kd.HOVERFONT,_=t.fontSize||kd.HOVERFONTSIZE,T=t.fontWeight||i.font.weight,S=t.fontStyle||i.font.style,C=t.fontVariant||i.font.variant,E=t.fontTextcase||i.font.textcase,L=t.fontLineposition||i.font.lineposition,z=t.fontShadow||i.font.shadow,B=e[0],q=B.xa,I=B.ya,O=a.charAt(0),H=O+"Label",V=B[H];if(V===void 0&&q.type==="multicategory")for(var W=0;Wi.width-Ue&&(xt=i.width-Ue),ct.attr("d","M"+(ur-xt)+",0L"+(ur-xt+ji)+","+Fe+ji+"H"+Ue+"v"+Fe+(Fa*2+yr.height)+"H"+-Ue+"V"+Fe+ji+"H"+(ur-xt-ji)+"Z"),ur=xt,be.minX=ur-Ue,be.maxX=ur+Ue,q.side==="top"?(be.minY=Lt-(Fa*2+yr.height),be.maxY=Lt-Fa):(be.minY=Lt+Fa,be.maxY=Lt+(Fa*2+yr.height))}else{var wt,mr,Ar;I.side==="right"?(wt="start",mr=1,Ar="",ur=q._offset+q._length):(wt="end",mr=-1,Ar="-",ur=q._offset),Lt=I._offset+(B.y0+B.y1)/2,pt.attr("text-anchor",wt),ct.attr("d","M0,0L"+Ar+ji+","+ji+"V"+(Fa+yr.height/2)+"h"+Ar+(Fa*2+yr.width)+"V-"+(Fa+yr.height/2)+"H"+Ar+ji+"V-"+ji+"Z"),be.minY=Lt-(Fa+yr.height/2),be.maxY=Lt+(Fa+yr.height/2),I.side==="right"?(be.minX=ur+ji,be.maxX=ur+ji+(Fa*2+yr.width)):(be.minX=ur-ji-(Fa*2+yr.width),be.maxX=ur-ji);var Mr=yr.height/2,Gr=te-yr.top-Mr,pa="clip"+i._uid+"commonlabel"+I._id,Ca;if(urct.hoverinfo!=="none");if(Et.length===0)return[];var Me=i.hoverlabel,Le=Me.font,je=Et[0],lt=((a==="x unified"?je.xa:je.ya).unifiedhovertitle||{}).text,at=lt?cn.hovertemplateString({data:a==="x unified"?[{xa:je.xa,x:je.xVal}]:[{ya:je.ya,y:je.yVal}],fallback:je.trace.hovertemplatefallback,locale:i._d3locale,template:lt}):V,gt={showlegend:!0,legend:{title:{text:at,font:Le},font:Le,bgcolor:Me.bgcolor,bordercolor:Me.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:i.legend?i.legend.traceorder:void 0,orientation:"v"}},Ye={font:Le};Qre(gt,Ye,r._fullData);var St=Ye.legend;St.entries=[];for(var it=0;it=0?st=At:Vt+dt=0?st=Vt:Ht+dt=0?sr=Ut:Ct+We=0?sr=Ct:Be+We=0,(Et.idealAlign==="top"||!vi)&&Fi?(Ar-=Gr/2,Et.anchor="end"):vi?(Ar+=Gr/2,Et.anchor="start"):Et.anchor="middle",Et.crossPos=Ar;else{if(Et.pos=Ar,vi=mr+Mr/2+wi<=ne,Fi=mr-Mr/2-wi>=0,(Et.idealAlign==="left"||!vi)&&Fi)mr-=Mr/2,Et.anchor="end";else if(vi)mr+=Mr/2,Et.anchor="start";else{Et.anchor="middle";var Gi=wi/2,hn=mr+Gi-ne,nn=mr-Gi;hn>0&&(mr-=hn),nn<0&&(mr+=-nn)}Et.crossPos=mr}Lt.attr("text-anchor",Et.anchor),Ue&&Fe.attr("text-anchor",Et.anchor),ct.attr("transform",p4(mr,Ar)+(s?Xre(WD):""))}),{hoverLabels:Pr,commonLabelBoundingBox:be}}function VD(e,t,r,i,a,s){var _,T;var l="",f="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=cn.templateString(e.name,e.trace._meta)),l=ZD(e.name,e.nameLength));var h=r.charAt(0),v=h==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(f+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(f+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(f+=(f?"z: ":"")+e.zLabel)):t&&e[h+"Label"]===a?f=e[v+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(f=e.yLabel):e.yLabel===void 0?f=e.xLabel:f="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(f+=(f?"
":"")+e.text),e.extraText!==void 0&&(f+=(f?"
":"")+e.extraText),s&&f===""&&!e.hovertemplate&&(l===""&&s.remove(),f=l),(T=(_=e.trace)==null?void 0:_.hoverlabel)!=null&&T.split&&(e.hovertemplate="");let{hovertemplate:m=!1}=e;if(m){let S=e.hovertemplateLabels||e;e[h+"Label"]!==a&&(S[h+"other"]=S[h+"Val"],S[h+"otherLabel"]=S[h+"Label"]),f=cn.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:S,locale:i._d3locale,template:m}),f=f.replace(nae,(C,E)=>(l=ZD(E,e.nameLength),""))}return[f,l]}function oae(e,t,r,i){var a=t?"xa":"ya",s=t?"ya":"xa",l=0,f=1,h=e.size(),v=new Array(h),m=0,_=i.minX,T=i.maxX,S=i.minY,C=i.maxY,E=function(Se){return Se*r._invScaleX},L=function(Se){return Se*r._invScaleY};e.each(function(Se){var Ae=Se[a],xe=Se[s],be=Ae._id.charAt(0)==="x",Me=Ae.range;m===0&&Me&&Me[0]>Me[1]!==be&&(f=-1);var Le=0,je=be?r.width:r.height;if(r.hovermode==="x"||r.hovermode==="y"){var lt=JD(Se,t),at=Se.anchor,gt=at==="end"?-1:1,Ye,St;if(at==="middle")Ye=Se.crossPos+(be?L(lt.y-Se.by/2):E(Se.bx/2+Se.tx2width/2)),St=Ye+(be?L(Se.by):E(Se.bx));else if(be)Ye=Se.crossPos+L(ji+lt.y)-L(Se.by/2-ji),St=Ye+L(Se.by);else{var it=E(gt*ji+lt.x),mt=it+E(gt*Se.bx);Ye=Se.crossPos+Math.min(it,mt),St=Se.crossPos+Math.max(it,mt)}be?S!==void 0&&C!==void 0&&Math.min(St,C)-Math.max(Ye,S)>1&&(xe.side==="left"?(Le=xe._mainLinePosition,je=r.width):je=xe._mainLinePosition):_!==void 0&&T!==void 0&&Math.min(St,T)-Math.max(Ye,_)>1&&(xe.side==="top"?(Le=xe._mainLinePosition,je=r.height):je=xe._mainLinePosition)}v[m++]=[{datum:Se,traceIndex:Se.trace.index,dp:0,pos:Se.pos,posref:Se.posref,size:Se.by*(be?eae:1)/2,pmin:Le,pmax:je}]}),v.sort(function(Se,Ae){return Se[0].posref-Ae[0].posref||f*(Ae[0].traceIndex-Se[0].traceIndex)});var z,B,q,I,O,H,V;function W(Se){var Ae=Se[0],xe=Se[Se.length-1];if(B=Ae.pmin-Ae.pos-Ae.dp+Ae.size,q=xe.pos+xe.dp+xe.size-Ae.pmax,B>.01){for(O=Se.length-1;O>=0;O--)Se[O].dp+=B;z=!1}if(!(q<.01)){if(B<-.01){for(O=Se.length-1;O>=0;O--)Se[O].dp-=q;z=!1}if(z){var be=0;for(I=0;IAe.pmax&&be++;for(I=Se.length-1;I>=0&&!(be<=0);I--)H=Se[I],H.pos>Ae.pmax-1&&(H.del=!0,be--);for(I=0;I=0;O--)Se[O].dp-=q;for(I=Se.length-1;I>=0&&!(be<=0);I--)H=Se[I],H.pos+H.dp+H.size>Ae.pmax&&(H.del=!0,be--)}}}for(;!z&&l<=h;){for(l++,z=!0,I=0;I.01){for(O=te.length-1;O>=0;O--)te[O].dp+=B;for(J.push.apply(J,te),v.splice(I+1,1),V=0,O=J.length-1;O>=0;O--)V+=J[O].dp;for(q=V/J.length,O=J.length-1;O>=0;O--)J[O].dp-=q;z=!1}else I++}v.forEach(W)}for(I=v.length-1;I>=0;I--){var fe=v[I];for(O=fe.length-1;O>=0;O--){var he=fe[O],ke=he.datum;ke.offset=he.dp,ke.del=he.del}}}function JD(e,t){var r=0,i=e.offset;return t&&(i*=-rae,r=e.offset*tae),{x:r,y:i}}function sae(e){var t={start:1,end:-1,middle:0}[e.anchor],r=t*(ji+Fa),i=r+t*(e.txwidth+Fa),a=e.anchor==="middle";return a&&(r-=e.tx2width/2,i+=e.txwidth/2+Fa),{alignShift:t,textShiftX:r,text2ShiftX:i}}function KD(e,t,r,i){var a=function(l){return l*r},s=function(l){return l*i};e.each(function(l){var f=Sd.select(this);if(l.del)return f.remove();var h=f.select("text.nums"),v=l.anchor,m=v==="end"?-1:1,_=sae(l),T=JD(l,t),S=T.x,C=T.y,E=v==="middle",L="hoverlabel"in l.trace?l.trace.hoverlabel.showarrow:!0,z;E?z="M-"+a(l.bx/2+l.tx2width/2)+","+s(C-l.by/2)+"h"+a(l.bx)+"v"+s(l.by)+"h-"+a(l.bx)+"Z":L?z="M0,0L"+a(m*ji+S)+","+s(ji+C)+"v"+s(l.by/2-ji)+"h"+a(m*l.bx)+"v-"+s(l.by)+"H"+a(m*ji+S)+"V"+s(C-ji)+"Z":z="M"+a(m*ji+S)+","+s(C-l.by/2)+"h"+a(m*l.bx)+"v"+s(l.by)+"h"+a(-m*l.bx)+"Z",f.select("path").attr("d",z);var B=S+_.textShiftX,q=C+l.ty0-l.by/2+Fa,I=l.textAlign||"auto";I!=="auto"&&(I==="left"&&v!=="start"?(h.attr("text-anchor","start"),B=E?-l.bx/2-l.tx2width/2+Fa:-l.bx-Fa):I==="right"&&v!=="end"&&(h.attr("text-anchor","end"),B=E?l.bx/2-l.tx2width/2-Fa:l.bx+Fa)),h.call(Jl.positionText,a(B),s(q)),l.tx2width&&(f.select("text.name").call(Jl.positionText,a(_.text2ShiftX+_.alignShift*Fa+S),s(C+l.ty0-l.by/2+Fa)),f.select("rect").call(zf.setRect,a(_.text2ShiftX+(_.alignShift-1)*l.tx2width/2+S),s(C-l.by/2-1),a(l.tx2width),s(l.by+2)))})}function lae(e,t){var r=e.index,i=e.trace||{},a=e.cd[0],s=e.cd[r]||{};function l(T){return T||Tc(T)&&T===0}var f=Array.isArray(r)?function(T,S){var C=cn.castOption(a,r,T);return l(C)?C:cn.extractOption({},i,"",S)}:function(T,S){return cn.extractOption(s,i,T,S)};function h(T,S,C){var E=f(S,C);l(E)&&(e[T]=E)}if(h("hoverinfo","hi","hoverinfo"),h("bgcolor","hbg","hoverlabel.bgcolor"),h("borderColor","hbc","hoverlabel.bordercolor"),h("fontFamily","htf","hoverlabel.font.family"),h("fontSize","hts","hoverlabel.font.size"),h("fontColor","htc","hoverlabel.font.color"),h("fontWeight","htw","hoverlabel.font.weight"),h("fontStyle","hty","hoverlabel.font.style"),h("fontVariant","htv","hoverlabel.font.variant"),h("nameLength","hnl","hoverlabel.namelength"),h("textAlign","hta","hoverlabel.align"),e.posref=t==="y"||t==="closest"&&i.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=cn.constrain(e.x0,0,e.xa._length),e.x1=cn.constrain(e.x1,0,e.xa._length),e.y0=cn.constrain(e.y0,0,e.ya._length),e.y1=cn.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:If.hoverLabelText(e.xa,e.xLabelVal,i.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:If.hoverLabelText(e.ya,e.yLabelVal,i.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var v=If.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+v+" / -"+If.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+v,t==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var m=If.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+m+" / -"+If.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+m,t==="y"&&(e.distance+=1)}var _=e.hoverinfo||e.trace.hoverinfo;return _&&_!=="all"&&(_=Array.isArray(_)?_:_.split("+"),_.indexOf("x")===-1&&(e.xLabel=void 0),_.indexOf("y")===-1&&(e.yLabel=void 0),_.indexOf("z")===-1&&(e.zLabel=void 0),_.indexOf("text")===-1&&(e.text=void 0),_.indexOf("name")===-1&&(e.name=void 0)),e}function HD(e,t,r){var i=r.container,a=r.fullLayout,s=a._size,l=r.event,f=!!t.hLinePoint,h=!!t.vLinePoint,v,m;if(i.selectAll(".spikeline").remove(),!!(h||f)){var _=ro.combine(a.plot_bgcolor,a.paper_bgcolor);if(f){var T=t.hLinePoint,S,C;v=T&&T.xa,m=T&&T.ya;var E=m.spikesnap;E==="cursor"?(S=l.pointerX,C=l.pointerY):(S=v._offset+T.x,C=m._offset+T.y);var L=BD.readability(T.color,_)<1.5?ro.contrast(_):T.color,z=m.spikemode,B=m.spikethickness,q=m.spikecolor||L,I=If.getPxPosition(e,m),O,H;if(z.indexOf("toaxis")!==-1||z.indexOf("across")!==-1){if(z.indexOf("toaxis")!==-1&&(O=I,H=S),z.indexOf("across")!==-1){var V=m._counterDomainMin,W=m._counterDomainMax;m.anchor==="free"&&(V=Math.min(V,m.position),W=Math.max(W,m.position)),O=s.l+V*s.w,H=s.l+W*s.w}i.insert("line",":first-child").attr({x1:O,x2:H,y1:C,y2:C,"stroke-width":B,stroke:q,"stroke-dasharray":zf.dashStyle(m.spikedash,B)}).classed("spikeline",!0).classed("crisp",!0),i.insert("line",":first-child").attr({x1:O,x2:H,y1:C,y2:C,"stroke-width":B+2,stroke:_}).classed("spikeline",!0).classed("crisp",!0)}z.indexOf("marker")!==-1&&i.insert("circle",":first-child").attr({cx:I+(m.side!=="right"?B:-B),cy:C,r:B,fill:q}).classed("spikeline",!0)}if(h){var J=t.vLinePoint,te,ne;v=J&&J.xa,m=J&&J.ya;var oe=v.spikesnap;oe==="cursor"?(te=l.pointerX,ne=l.pointerY):(te=v._offset+J.x,ne=m._offset+J.y);var fe=BD.readability(J.color,_)<1.5?ro.contrast(_):J.color,he=v.spikemode,ke=v.spikethickness,Se=v.spikecolor||fe,Ae=If.getPxPosition(e,v),xe,be;if(he.indexOf("toaxis")!==-1||he.indexOf("across")!==-1){if(he.indexOf("toaxis")!==-1&&(xe=Ae,be=ne),he.indexOf("across")!==-1){var Me=v._counterDomainMin,Le=v._counterDomainMax;v.anchor==="free"&&(Me=Math.min(Me,v.position),Le=Math.max(Le,v.position)),xe=s.t+(1-Le)*s.h,be=s.t+(1-Me)*s.h}i.insert("line",":first-child").attr({x1:te,x2:te,y1:xe,y2:be,"stroke-width":ke,stroke:Se,"stroke-dasharray":zf.dashStyle(v.spikedash,ke)}).classed("spikeline",!0).classed("crisp",!0),i.insert("line",":first-child").attr({x1:te,x2:te,y1:xe,y2:be,"stroke-width":ke+2,stroke:_}).classed("spikeline",!0).classed("crisp",!0)}he.indexOf("marker")!==-1&&i.insert("circle",":first-child").attr({cx:te,cy:Ae-(v.side!=="top"?ke:-ke),r:ke,fill:Se}).classed("spikeline",!0)}}}function uae(e,t,r){if(!r||r.length!==e._hoverdata.length)return!0;for(var i=r.length-1;i>=0;i--){var a=r[i],s=e._hoverdata[i];if(a.curveNumber!==s.curveNumber||String(a.pointNumber)!==String(s.pointNumber)||String(a.pointNumbers)!==String(s.pointNumbers)||a.binNumber!==s.binNumber)return!0}return!1}function GD(e,t){return!t||t.vLinePoint!==e._spikepoints.vLinePoint||t.hLinePoint!==e._spikepoints.hLinePoint}function ZD(e,t){return Jl.plainText(e||"",{len:t,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function fae(e,t){for(var r=t.charAt(0),i=[],a=[],s=[],l=0;le.offsetTop+e.clientTop,$D=e=>e.offsetLeft+e.clientLeft;function Y0(e,t){var r=e._fullLayout,i=t.getBoundingClientRect(),a=i.left,s=i.top,l=a+i.width,f=s+i.height,h=cn.apply3DTransform(r._invTransform)(a,s),v=cn.apply3DTransform(r._invTransform)(l,f),m=h[0],_=h[1],T=v[0],S=v[1];return{x:m,y:_,width:T-m,height:S-_,top:Math.min(_,S),left:Math.min(m,T),right:Math.max(m,T),bottom:Math.max(_,S)}}});var F2=pe((Y1e,eP)=>{"use strict";var cae=Bt(),hae=Oa(),vae=bc().isUnifiedHover;eP.exports=function(t,r,i,a){a=a||{};var s=r.legend;function l(f){a.font[f]||(a.font[f]=s?r.legend.font[f]:r.font[f])}r&&vae(r.hovermode)&&(a.font||(a.font={}),l("size"),l("family"),l("color"),l("weight"),l("style"),l("variant"),s?(a.bgcolor||(a.bgcolor=hae.combine(r.legend.bgcolor,r.paper_bgcolor)),a.bordercolor||(a.bordercolor=r.legend.bordercolor)):a.bgcolor||(a.bgcolor=r.paper_bgcolor)),i("hoverlabel.bgcolor",a.bgcolor),i("hoverlabel.bordercolor",a.bordercolor),i("hoverlabel.namelength",a.namelength),i("hoverlabel.showarrow",a.showarrow),cae.coerceFont(i,"hoverlabel.font",a.font),i("hoverlabel.align",a.align)}});var rP=pe((W1e,tP)=>{"use strict";var dae=Bt(),pae=F2(),mae=c0();tP.exports=function(t,r){function i(a,s){return dae.coerce(t,r,mae,a,s)}pae(t,r,i)}});var nP=pe((X1e,iP)=>{"use strict";var aP=Bt(),yae=i_(),gae=F2();iP.exports=function(t,r,i,a){function s(f,h){return aP.coerce(t,r,yae,f,h)}var l=aP.extendFlat({},a.hoverlabel);r.hovertemplate&&(l.namelength=-1),gae(t,r,s,l)}});var _4=pe((j1e,oP)=>{"use strict";var _ae=Bt(),xae=c0();oP.exports=function(t,r){function i(a,s){return r[a]!==void 0?r[a]:_ae.coerce(t,r,xae,a,s)}return i("clickmode"),i("hoversubplots"),i("hovermode")}});var uP=pe((J1e,lP)=>{"use strict";var sP=Bt(),bae=c0(),wae=_4(),Tae=F2();lP.exports=function(t,r){function i(m,_){return sP.coerce(t,r,bae,m,_)}var a=wae(t,r);a&&(i("hoverdistance"),i("spikedistance"));var s=i("dragmode");s==="select"&&i("selectdirection");var l=r._has("mapbox"),f=r._has("map"),h=r._has("geo"),v=r._basePlotModules.length;r.dragmode==="zoom"&&((l||f||h)&&v===1||(l||f)&&h&&v===2)&&(r.dragmode="pan"),Tae(t,r,i),sP.coerceFont(i,"hoverlabel.grouptitlefont",r.hoverlabel.font)}});var hP=pe((K1e,cP)=>{"use strict";var x4=Bt(),fP=sa();cP.exports=function(t){var r=t.calcdata,i=t._fullLayout;function a(v){return function(m){return x4.coerceHoverinfo({hoverinfo:m},{_module:v._module},i)}}for(var s=0;s{"use strict";var Mae=sa(),Sae=g4().hover;vP.exports=function(t,r,i){var a=Mae.getComponentMethod("annotations","onClick")(t,t._hoverdata);i!==void 0&&Sae(t,r,i,!0);function s(){t.emit("plotly_click",{points:t._hoverdata,event:r})}t._hoverdata&&r&&r.target&&(a&&a.then?a.then(s):s(),r.stopImmediatePropagation&&r.stopImmediatePropagation())}});var Rf=pe(($1e,yP)=>{"use strict";var kae=ja(),q2=Bt(),Cae=Xl(),lg=bc(),pP=c0(),mP=g4();yP.exports={moduleType:"component",name:"fx",constants:Ly(),schema:{layout:pP},attributes:i_(),layoutAttributes:pP,supplyLayoutGlobalDefaults:rP(),supplyDefaults:nP(),supplyLayoutDefaults:uP(),calc:hP(),getDistanceFunction:lg.getDistanceFunction,getClosest:lg.getClosest,inbox:lg.inbox,quadrature:lg.quadrature,appendArrayPointValue:lg.appendArrayPointValue,castHoverOption:Lae,castHoverinfo:Dae,hover:mP.hover,unhover:Cae.unhover,loneHover:mP.loneHover,loneUnhover:Eae,click:dP()};function Eae(e){var t=q2.isD3Selection(e)?e:kae.select(e);t.selectAll("g.hovertext").remove(),t.selectAll(".spikeline").remove()}function Lae(e,t,r){return q2.castOption(e,t,"hoverlabel."+r)}function Dae(e,t,r){function i(a){return q2.coerceHoverinfo({hoverinfo:a},{_module:e._module},t)}return q2.castOption(e,r,"hoverinfo",i)}});var Cd=pe(Ac=>{"use strict";Ac.selectMode=function(e){return e==="lasso"||e==="select"};Ac.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Ac.openMode=function(e){return e==="drawline"||e==="drawopenpath"};Ac.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Ac.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};Ac.selectingOrDrawing=function(e){return Ac.freeMode(e)||Ac.rectMode(e)}});var N2=pe((t_e,gP)=>{"use strict";gP.exports=function(t){var r=t._fullLayout;r._glcanvas&&r._glcanvas.size()&&r._glcanvas.each(function(i){i.regl&&i.regl.clear({color:!0,depth:!0})})}});var B2=pe((r_e,_P)=>{"use strict";_P.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var U2=pe((a_e,xP)=>{"use strict";var O2=32;xP.exports={CIRCLE_SIDES:O2,i000:0,i090:O2/4,i180:O2/2,i270:O2/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var V2=pe((i_e,wP)=>{"use strict";var Pae=Bt().strTranslate;function bP(e,t){switch(e.type){case"log":return e.p2d(t);case"date":return e.p2r(t,0,e.calendar);default:return e.p2r(t)}}function zae(e,t){switch(e.type){case"log":return e.d2p(t);case"date":return e.r2p(t,0,e.calendar);default:return e.r2p(t)}}function Iae(e){var t=e._id.charAt(0)==="y"?1:0;return function(r){return bP(e,r[t])}}function Rae(e){return Pae(e.xaxis._offset,e.yaxis._offset)}wP.exports={p2r:bP,r2p:zae,axValue:Iae,getTransform:Rae}});var Uh=pe(Mc=>{"use strict";var Fae=l5(),MP=U2(),X0=MP.CIRCLE_SIDES,b4=MP.SQRT2,SP=V2(),TP=SP.p2r,AP=SP.r2p,qae=[0,3,4,5,6,1,2],Nae=[0,3,4,1,2];Mc.writePaths=function(e){var t=e.length;if(!t)return"M0,0Z";for(var r="",i=0;i0&&h{"use strict";var kP=Xn(),PP=Cd(),Bae=PP.drawMode,Oae=PP.openMode,j0=U2(),CP=j0.i000,EP=j0.i090,LP=j0.i180,DP=j0.i270,Uae=j0.cos45,Vae=j0.sin45,zP=V2(),G2=zP.p2r,Vh=zP.r2p,Hae=Ph(),Gae=Hae.clearOutline,Z2=Uh(),Zae=Z2.readPaths,Yae=Z2.writePaths,Wae=Z2.ellipseOver,Xae=Z2.fixDatesForPaths;function jae(e,t){if(e.length){var r=e[0][0];if(r){var i=t.gd,a=t.isActiveShape,s=t.dragmode,l=(i.layout||{}).shapes||[];if(!Bae(s)&&a!==void 0){var f=i._fullLayout._activeShapeIndex;if(f{"use strict";var Jae=Cd(),Kae=Jae.selectMode,Qae=Ph(),$ae=Qae.clearOutline,w4=Uh(),eie=w4.readPaths,tie=w4.writePaths,rie=w4.fixDatesForPaths;FP.exports=function(t,r){if(t.length){var i=t[0][0];if(i){var a=i.getAttribute("d"),s=r.gd,l=s._fullLayout.newselection,f=r.plotinfo,h=f.xaxis,v=f.yaxis,m=r.isActiveSelection,_=r.dragmode,T=(s.layout||{}).selections||[];if(!Kae(_)&&m!==void 0){var S=s._fullLayout._activeSelectionIndex;if(S{"use strict";qP.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var Hh=pe(ho=>{"use strict";var Ed=fg(),NP=Bt(),W2=Xi();ho.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(t){return t}};ho.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(t){return t}};ho.decodeDate=function(e){return function(t){return t.replace&&(t=t.replace("_"," ")),e(t)}};ho.encodeDate=function(e){return function(t){return e(t).replace(" ","_")}};ho.extractPathCoords=function(e,t,r){var i=[],a=e.match(Ed.segmentRE);return a.forEach(function(s){var l=t[s.charAt(0)].drawn;if(l!==void 0){var f=s.slice(1).match(Ed.paramRE);if(!(!f||f.lengthS&&(E="X"),E});return v>S&&(C=C.replace(/[\s,]*X.*/,""),NP.log("Ignoring extra params in segment "+h)),m+C})}function cg(e,t){t=t||0;var r=0;return t&&e&&(e.type==="category"||e.type==="multicategory")&&(r=(e.r2p(1)-e.r2p(0))*t),r}});var M4=pe((f_e,VP)=>{"use strict";var iie=Bt(),J0=Xi(),BP=co(),OP=xi(),nie=Uh().readPaths,A4=Hh(),oie=A4.getPathString,UP=v_(),sie=ts().FROM_TL;VP.exports=function(t,r,i,a){if(a.selectAll(".shape-label").remove(),!!(i.label.text||i.label.texttemplate)){var s;if(i.label.texttemplate){var l={};if(i.type!=="path"){var f=J0.getFromId(t,i.xref),h=J0.getFromId(t,i.yref);for(var v in UP){var m=UP[v](i,f,h);m!==void 0&&(l[v]=m)}}s=iie.texttemplateStringForShapes({data:[l],fallback:i.label.texttemplatefallback,locale:t._fullLayout._d3locale,template:i.label.texttemplate})}else s=i.label.text;var _={"data-index":r},T=i.label.font,S={"data-notex":1},C=a.append("g").attr(_).classed("shape-label",!0),E=C.append("text").attr(S).classed("shape-label-text",!0).text(s),L,z,B,q;if(i.path){var I=oie(t,i),O=nie(I,t);L=1/0,B=1/0,z=-1/0,q=-1/0;for(var H=0;H=e?a=t-i:a=i-t,-180/Math.PI*Math.atan2(a,s)}function uie(e,t,r,i,a,s,l){var f=a.label.textposition,h=a.label.textangle,v=a.label.padding,m=a.type,_=Math.PI/180*s,T=Math.sin(_),S=Math.cos(_),C=a.label.xanchor,E=a.label.yanchor,L,z,B,q;if(m==="line"){f==="start"?(L=e,z=t):f==="end"?(L=r,z=i):(L=(e+r)/2,z=(t+i)/2),C==="auto"&&(f==="start"?h==="auto"?r>e?C="left":re?C="right":re?C="right":re?C="left":r{"use strict";var fie=Bt(),cie=fie.strTranslate,HP=Xl(),YP=Cd(),hie=YP.drawMode,WP=YP.selectMode,XP=sa(),GP=Oa(),j2=U2(),vie=j2.i000,die=j2.i090,pie=j2.i180,mie=j2.i270,yie=Ph(),jP=yie.clearOutlineControllers,k4=Uh(),X2=k4.pointsOnRectangle,S4=k4.pointsOnEllipse,gie=k4.writePaths,_ie=Y2().newShapes,xie=Y2().createShapeObj,bie=T4(),wie=M4();JP.exports=function e(t,r,i,a){a||(a=0);var s=i.gd;function l(){e(t,r,i,a++),(S4(t[0])||i.hasText)&&f({redrawing:!0})}function f(Ae){var xe={};i.isActiveShape!==void 0&&(i.isActiveShape=!1,xe=_ie(r,i)),i.isActiveSelection!==void 0&&(i.isActiveSelection=!1,xe=bie(r,i),s._fullLayout._reselect=!0),Object.keys(xe).length&&XP.call((Ae||{}).redrawing?"relayout":"_guiRelayout",s,xe)}var h=s._fullLayout,v=h._zoomlayer,m=i.dragmode,_=hie(m),T=WP(m);(_||T)&&(s._fullLayout._outlining=!0),jP(s),r.attr("d",gie(t));var S,C,E,L,z;if(!a&&(i.isActiveShape||i.isActiveSelection)){z=Tie([],t);var B=v.append("g").attr("class","outline-controllers");te(B),Se()}if(_&&i.hasText){var q=v.select(".label-temp"),I=xie(r,i,i.dragmode);wie(s,"label-temp",I,q)}function O(Ae){E=+Ae.srcElement.getAttribute("data-i"),L=+Ae.srcElement.getAttribute("data-j"),S[E][L].moveFn=H}function H(Ae,xe){if(t.length){var be=z[E][L][1],Me=z[E][L][2],Le=t[E],je=Le.length;if(X2(Le)){var lt=Ae,at=xe;if(i.isActiveSelection){var gt=ZP(Le,L);gt[1]===Le[L][1]?at=0:lt=0}for(var Ye=0;Ye1&&!(Ae.length===2&&Ae[1][0]==="Z")&&(L===0&&(Ae[0][0]="M"),t[E]=Ae,l(),f())}}function J(Ae,xe){if(Ae===2){E=+xe.srcElement.getAttribute("data-i"),L=+xe.srcElement.getAttribute("data-j");var be=t[E];!X2(be)&&!S4(be)&&W()}}function te(Ae){S=[];for(var xe=0;xe{"use strict";var Mie=ja(),rz=sa(),KP=Bt(),K0=Xi(),Sie=Uh().readPaths,kie=J2(),Q2=M4(),az=Ph().clearOutlineControllers,C4=Oa(),L4=xi(),Cie=Ii().arrayEditor,QP=Xl(),$P=Oh(),Ld=fg(),Us=Hh(),E4=Us.getPathString;oz.exports={draw:D4,drawOne:iz,eraseActiveShape:Die,drawLabel:Q2};function D4(e){var t=e._fullLayout;t._shapeUpperLayer.selectAll("path").remove(),t._shapeLowerLayer.selectAll("path").remove(),t._shapeUpperLayer.selectAll("text").remove(),t._shapeLowerLayer.selectAll("text").remove();for(var r in t._plots){var i=t._plots[r].shapelayer;i&&(i.selectAll("path").remove(),i.selectAll("text").remove())}for(var a=0;al&&Ut>f&&!Dt.shiftKey?QP.getCursor(Ct/Rt,1-At/Ut):"move";$P(t,Vt),St=Vt.split("-")[0]}}function vt(Dt){K2(e)||(h&&(z=Le(r.xanchor)),v&&(B=je(r.yanchor)),r.type==="path"?ne=r.path:(S=h?r.x0:Le(r.x0),C=v?r.y0:je(r.y0),E=h?r.x1:Le(r.x1),L=v?r.y1:je(r.y1)),SL?(q=C,V="y0",I=L,W="y1"):(q=L,V="y1",I=C,W="y0"),bt(Dt),dt(a,r),qt(t,r,e),Ye.moveFn=St==="move"?ge:rt,Ye.altKey=Dt.altKey)}function de(){K2(e)||($P(t),We(a),nz(t,e,r),rz.call("_guiRelayout",e,s.getUpdateObj()))}function De(){K2(e)||We(a)}function ge(Dt,Tt){if(r.type==="path"){var Rt=function(At){return At},Ut=Rt,Ct=Rt;h?T("xanchor",r.xanchor=lt(z+Dt)):(Ut=function(Vt){return lt(Le(Vt)+Dt)},fe&&fe.type==="date"&&(Ut=Us.encodeDate(Ut))),v?T("yanchor",r.yanchor=at(B+Tt)):(Ct=function(Vt){return at(je(Vt)+Tt)},ke&&ke.type==="date"&&(Ct=Us.encodeDate(Ct))),T("path",r.path=ez(ne,Ut,Ct))}else h?T("xanchor",r.xanchor=lt(z+Dt)):(T("x0",r.x0=lt(S+Dt)),T("x1",r.x1=lt(E+Dt))),v?T("yanchor",r.yanchor=at(B+Tt)):(T("y0",r.y0=at(C+Tt)),T("y1",r.y1=at(L+Tt)));t.attr("d",E4(e,r)),dt(a,r),Q2(e,i,r,oe)}function rt(Dt,Tt){if(_){var Rt=function(Kt){return Kt},Ut=Rt,Ct=Rt;h?T("xanchor",r.xanchor=lt(z+Dt)):(Ut=function(pr){return lt(Le(pr)+Dt)},fe&&fe.type==="date"&&(Ut=Us.encodeDate(Ut))),v?T("yanchor",r.yanchor=at(B+Tt)):(Ct=function(pr){return at(je(pr)+Tt)},ke&&ke.type==="date"&&(Ct=Us.encodeDate(Ct))),T("path",r.path=ez(ne,Ut,Ct))}else if(m){if(St==="resize-over-start-point"){var At=S+Dt,Vt=v?C-Tt:C+Tt;T("x0",r.x0=h?At:lt(At)),T("y0",r.y0=v?Vt:at(Vt))}else if(St==="resize-over-end-point"){var Ht=E+Dt,Be=v?L-Tt:L+Tt;T("x1",r.x1=h?Ht:lt(Ht)),T("y1",r.y1=v?Be:at(Be))}}else{var st=function(Kt){return St.indexOf(Kt)!==-1},sr=st("n"),Pr=st("s"),Et=st("w"),ct=st("e"),pt=sr?q+Tt:q,Ot=Pr?I+Tt:I,er=Et?O+Dt:O,Zt=ct?H+Dt:H;v&&(sr&&(pt=q-Tt),Pr&&(Ot=I-Tt)),(!v&&Ot-pt>f||v&&pt-Ot>f)&&(T(V,r[V]=v?pt:at(pt)),T(W,r[W]=v?Ot:at(Ot))),Zt-er>l&&(T(J,r[J]=h?er:lt(er)),T(te,r[te]=h?Zt:lt(Zt)))}t.attr("d",E4(e,r)),dt(a,r),Q2(e,i,r,oe)}function dt(Dt,Tt){(h||v)&&Rt();function Rt(){var Ut=Tt.type!=="path",Ct=Dt.selectAll(".visual-cue").data([0]),At=1;Ct.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":At}).classed("visual-cue",!0);var Vt=Le(h?Tt.xanchor:KP.midRange(Ut?[Tt.x0,Tt.x1]:Us.extractPathCoords(Tt.path,Ld.paramIsX))),Ht=je(v?Tt.yanchor:KP.midRange(Ut?[Tt.y0,Tt.y1]:Us.extractPathCoords(Tt.path,Ld.paramIsY)));if(Vt=Us.roundPositionForSharpStrokeRendering(Vt,At),Ht=Us.roundPositionForSharpStrokeRendering(Ht,At),h&&v){var Be="M"+(Vt-1-At)+","+(Ht-1-At)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Ct.attr("d",Be)}else if(h){var st="M"+(Vt-1-At)+","+(Ht-9-At)+"v18 h2 v-18 Z";Ct.attr("d",st)}else{var sr="M"+(Vt-9-At)+","+(Ht-1-At)+"h18 v2 h-18 Z";Ct.attr("d",sr)}}}function We(Dt){Dt.selectAll(".visual-cue").remove()}function qt(Dt,Tt,Rt){var Ut=Tt.xref,Ct=Tt.yref,At=K0.getFromId(Rt,Ut),Vt=K0.getFromId(Rt,Ct),Ht="";Ut!=="paper"&&!At.autorange&&(Ht+=Ut),Ct!=="paper"&&!Vt.autorange&&(Ht+=Ct),L4.setClipUrl(Dt,Ht?"clip"+Rt._fullLayout._uid+Ht:null,Rt)}}function ez(e,t,r){return e.replace(Ld.segmentRE,function(i){var a=0,s=i.charAt(0),l=Ld.paramIsX[s],f=Ld.paramIsY[s],h=Ld.numParams[s],v=i.slice(1).replace(Ld.paramRE,function(m){return a>=h||(l[a]?m=t(m):f[a]&&(m=r(m)),a++),m});return s+v})}function Lie(e,t){if($2(e)){var r=t.node(),i=+r.getAttribute("data-index");if(i>=0){if(i===e._fullLayout._activeShapeIndex){tz(e);return}e._fullLayout._activeShapeIndex=i,e._fullLayout._deactivateShape=tz,D4(e)}}}function tz(e){if($2(e)){var t=e._fullLayout._activeShapeIndex;t>=0&&(az(e),delete e._fullLayout._activeShapeIndex,D4(e))}}function Die(e){if($2(e)){az(e);var t=e._fullLayout._activeShapeIndex,r=(e.layout||{}).shapes||[];if(t{"use strict";var Kl=sa(),sz=eo(),lz=Xn(),Ja=B2(),Pie=ex().eraseActiveShape,tx=Bt(),za=tx._,Ka=pz.exports={};Ka.toImage={name:"toImage",title:function(e){var t=e._context.toImageButtonOptions||{},r=t.format||"png";return r==="png"?za(e,"Download plot as a PNG"):za(e,"Download plot")},icon:Ja.camera,click:function(e){var t=e._context.toImageButtonOptions,r={format:t.format||"png"};tx.notifier(za(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(i){i in t&&(r[i]=t[i])}),Kl.call("downloadImage",e,r).then(function(i){tx.notifier(za(e,"Snapshot succeeded")+" - "+i,"long")}).catch(function(){tx.notifier(za(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Ka.sendDataToCloud={name:"sendDataToCloud",title:function(e){return za(e,"Edit in Chart Studio")},icon:Ja.disk,click:function(e){sz.sendDataToCloud(e)}};Ka.editInChartStudio={name:"editInChartStudio",title:function(e){return za(e,"Edit in Chart Studio")},icon:Ja.pencil,click:function(e){sz.sendDataToCloud(e)}};Ka.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return za(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Ja.zoombox,click:ns};Ka.pan2d={name:"pan2d",_cat:"pan",title:function(e){return za(e,"Pan")},attr:"dragmode",val:"pan",icon:Ja.pan,click:ns};Ka.select2d={name:"select2d",_cat:"select",title:function(e){return za(e,"Box Select")},attr:"dragmode",val:"select",icon:Ja.selectbox,click:ns};Ka.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return za(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Ja.lasso,click:ns};Ka.drawclosedpath={name:"drawclosedpath",title:function(e){return za(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Ja.drawclosedpath,click:ns};Ka.drawopenpath={name:"drawopenpath",title:function(e){return za(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Ja.drawopenpath,click:ns};Ka.drawline={name:"drawline",title:function(e){return za(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Ja.drawline,click:ns};Ka.drawrect={name:"drawrect",title:function(e){return za(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Ja.drawrect,click:ns};Ka.drawcircle={name:"drawcircle",title:function(e){return za(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Ja.drawcircle,click:ns};Ka.eraseshape={name:"eraseshape",title:function(e){return za(e,"Erase active shape")},icon:Ja.eraseshape,click:Pie};Ka.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return za(e,"Zoom in")},attr:"zoom",val:"in",icon:Ja.zoom_plus,click:ns};Ka.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return za(e,"Zoom out")},attr:"zoom",val:"out",icon:Ja.zoom_minus,click:ns};Ka.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return za(e,"Autoscale")},attr:"zoom",val:"auto",icon:Ja.autoscale,click:ns};Ka.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return za(e,"Reset axes")},attr:"zoom",val:"reset",icon:Ja.home,click:ns};Ka.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return za(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Ja.tooltip_basic,gravity:"ne",click:ns};Ka.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return za(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Ja.tooltip_compare,gravity:"ne",click:ns};function ns(e,t){var r=t.currentTarget,i=r.getAttribute("data-attr"),a=r.getAttribute("data-val")||!0,s=e._fullLayout,l={},f=lz.list(e,null,!0),h=s._cartesianSpikesEnabled,v,m;if(i==="zoom"){var _=a==="in"?.5:2,T=(1+_)/2,S=(1-_)/2,C,E;for(m=0;m{"use strict";var mz=I4(),Rie=Object.keys(mz),yz=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],gz=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(yz),$0=[],Fie=function(e){if(gz.indexOf(e._cat||e.name)===-1){var t=e.name,r=(e._cat||e.name).toLowerCase();$0.indexOf(t)===-1&&$0.push(t),$0.indexOf(r)===-1&&$0.push(r)}};Rie.forEach(function(e){Fie(mz[e])});$0.sort();_z.exports={DRAW_MODES:yz,backButtons:gz,foreButtons:$0}});var F4=pe((m_e,xz)=>{"use strict";var p_e=R4();xz.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var wz=pe((y_e,bz)=>{"use strict";var qie=Bt(),hg=Oa(),Nie=Ii(),Bie=F4();bz.exports=function(t,r){var i=t.modebar||{},a=Nie.newContainer(r,"modebar");function s(f,h){return qie.coerce(i,a,Bie,f,h)}s("orientation"),s("bgcolor",hg.addOpacity(r.paper_bgcolor,.5));var l=hg.contrast(hg.rgb(r.modebar.bgcolor));s("color",hg.addOpacity(l,.3)),s("activecolor",hg.addOpacity(l,.7)),s("uirevision",r.uirevision),s("add"),s("remove")}});var Sz=pe((g_e,Mz)=>{"use strict";var q4=ja(),Oie=Da(),ax=Bt(),Tz=B2(),Uie=W1().version,Vie=new DOMParser;function Az(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Ff=Az.prototype;Ff.update=function(e,t){this.graphInfo=e;var r=this.graphInfo._context,i=this.graphInfo._fullLayout,a="modebar-"+i._uid;this.element.setAttribute("id",a),this.element.setAttribute("role","toolbar"),this._uid=a,this.element.className="modebar modebar--custom",r.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),i.modebar.orientation==="v"&&(this.element.className+=" vertical",t=t.reverse());var s=i.modebar,l="#"+a+" .modebar-group";document.querySelectorAll(l).forEach(function(_){_.style.backgroundColor=s.bgcolor});var f=!this.hasButtons(t),h=this.hasLogo!==r.displaylogo,v=this.locale!==r.locale;if(this.locale=r.locale,(f||h||v)&&(this.removeAllButtons(),this.updateButtons(t),r.watermark||r.displaylogo)){var m=this.getLogo();r.watermark&&(m.className=m.className+" watermark"),i.modebar.orientation==="v"?this.element.insertBefore(m,this.element.childNodes[0]):this.element.appendChild(m),this.hasLogo=!0}this.updateActiveButton(),ax.setStyleOnHover("#"+a+" .modebar-btn",".active",".icon path","fill: "+s.activecolor,"fill: "+s.color,this.element)};Ff.updateButtons=function(e){var t=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(r){var i=t.createGroup();r.forEach(function(a){var s=a.name;if(!s)throw new Error("must provide button 'name' in button config");if(t.buttonsNames.indexOf(s)!==-1)throw new Error("button name '"+s+"' is taken");t.buttonsNames.push(s);var l=t.createButton(a);t.buttonElements.push(l),i.appendChild(l)}),t.element.appendChild(i)})};Ff.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var t=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=t.bgcolor,e};Ff.createButton=function(e){var t=this,r=document.createElement("button");r.setAttribute("type","button"),r.setAttribute("rel","tooltip"),r.className="modebar-btn";var i=e.title;i===void 0?i=e.name:typeof i=="function"&&(i=i(this.graphInfo)),(i||i===0)&&(r.setAttribute("data-title",i),r.setAttribute("aria-label",i)),e.attr!==void 0&&r.setAttribute("data-attr",e.attr);var a=e.val;a!==void 0&&(typeof a=="function"&&(a=a(this.graphInfo)),r.setAttribute("data-val",a));var s=e.click;if(typeof s!="function")throw new Error("must provide button 'click' function in button config");r.addEventListener("click",function(f){e.click(t.graphInfo,f),t.updateActiveButton(f.currentTarget)}),r.setAttribute("data-toggle",e.toggle||!1),e.toggle&&q4.select(r).classed("active",!0);var l=e.icon;return typeof l=="function"?r.appendChild(l()):r.appendChild(this.createIcon(l||Tz.question)),r.setAttribute("data-gravity",e.gravity||"n"),r};Ff.createIcon=function(e){var t=Oie(e.height)?Number(e.height):e.ascent-e.descent,r="http://www.w3.org/2000/svg",i;if(e.path){i=document.createElementNS(r,"svg"),i.setAttribute("viewBox",[0,0,e.width,t].join(" ")),i.setAttribute("class","icon");var a=document.createElementNS(r,"path");a.setAttribute("d",e.path),e.transform?a.setAttribute("transform",e.transform):e.ascent!==void 0&&a.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),i.appendChild(a)}if(e.svg){var s=Vie.parseFromString(e.svg,"application/xml");i=s.childNodes[0]}return i.setAttribute("height","1em"),i.setAttribute("width","1em"),i};Ff.updateActiveButton=function(e){var t=this.graphInfo._fullLayout,r=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(i){var a=i.getAttribute("data-val")||!0,s=i.getAttribute("data-attr"),l=i.getAttribute("data-toggle")==="true",f=q4.select(i),h=function(_,T){var S=t.modebar,C=_.querySelector(".icon path");C&&(T||_.matches(":hover")?C.style.fill=S.activecolor:C.style.fill=S.color)};if(l){if(s===r){var v=!f.classed("active");f.classed("active",v),h(i,v)}}else{var m=s===null?s:ax.nestedProperty(t,s).get();f.classed("active",m===a),h(i,m===a)}})};Ff.hasButtons=function(e){var t=this.buttons;if(!t||e.length!==t.length)return!1;for(var r=0;r{"use strict";var Zie=Xn(),kz=rs(),N4=sa(),Yie=bc().isUnifiedHover,Wie=Sz(),ix=I4(),Xie=R4().DRAW_MODES,jie=Bt().extendDeep;Cz.exports=function(t){var r=t._fullLayout,i=t._context,a=r._modeBar;if(!i.displayModeBar&&!i.watermark){a&&(a.destroy(),delete r._modeBar);return}if(!Array.isArray(i.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(i.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var s=i.modeBarButtons,l;Array.isArray(s)&&s.length?l=tne(s):!i.displayModeBar&&i.watermark?l=[]:l=Jie(t),a?a.update(t,l):r._modeBar=Wie(t,l)};function Jie(e){var t=e._fullLayout,r=e._fullData,i=e._context;function a(xe,be){if(typeof be=="string"){if(be.toLowerCase()===xe.toLowerCase())return!0}else{var Me=be.name,Le=be._cat||be.name;if(Me===xe||Le===xe.toLowerCase())return!0}return!1}var s=t.modebar.add;typeof s=="string"&&(s=[s]);var l=t.modebar.remove;typeof l=="string"&&(l=[l]);var f=i.modeBarButtonsToAdd.concat(s.filter(function(xe){for(var be=0;be1?(te=["toggleHover"],ne=["resetViews"]):_?(J=["zoomInGeo","zoomOutGeo"],te=["hoverClosestGeo"],ne=["resetGeo"]):m?(te=["hoverClosest3d"],ne=["resetCameraDefault3d","resetCameraLastSave3d"]):E?(J=["zoomInMapbox","zoomOutMapbox"],te=["toggleHover"],ne=["resetViewMapbox"]):L?(J=["zoomInMap","zoomOutMap"],te=["toggleHover"],ne=["resetViewMap"]):T?te=["hoverClosestPie"]:q?(te=["hoverClosestCartesian","hoverCompareCartesian"],ne=["resetViewSankey"]):te=["toggleHover"],v&&te.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),($ie(r)||O)&&(te=[]),v&&!I&&(J=["zoomIn2d","zoomOut2d","autoScale2d"],ne[0]!=="resetViews"&&(ne=["resetScale2d"])),m?oe=["zoom3d","pan3d","orbitRotation","tableRotation"]:v&&!I||C?oe=["zoom2d","pan2d"]:E||L||_?oe=["pan2d"]:z&&(oe=["zoom2d"]),Qie(r)&&oe.push("select2d","lasso2d");var fe=[],he=function(xe){fe.indexOf(xe)===-1&&te.indexOf(xe)!==-1&&fe.push(xe)};if(Array.isArray(f)){for(var ke=[],Se=0;Se{"use strict";Lz.exports={moduleType:"component",name:"modebar",layoutAttributes:F4(),supplyLayoutDefaults:wz(),manage:Ez()}});var O4=pe((b_e,Dz)=>{"use strict";var rne=ts().FROM_BL;Dz.exports=function(t,r,i){i===void 0&&(i=rne[t.constraintoward||"center"]);var a=[t.r2l(t.range[0]),t.r2l(t.range[1])],s=a[0]+(a[1]-a[0])*i;t.range=t._input.range=[t.l2r(s+(a[0]-s)*r),t.l2r(s+(a[1]-s)*r)],t.setScale()}});var dg=pe(vg=>{"use strict";var Dd=Bt(),U4=$y(),Bu=Xn().id2name,ane=Fu(),Pz=O4(),ine=l2(),nne=Zi().ALMOST_EQUAL,one=ts().FROM_BL;vg.handleDefaults=function(e,t,r){var i=r.axIds,a=r.axHasImage,s=t._axisConstraintGroups=[],l=t._axisMatchGroups=[],f,h,v,m,_,T,S,C;for(f=0;fs?r.slice(s):i.slice(a))+l}function lne(e,t){for(var r=t._size,i=r.h/r.w,a={},s=Object.keys(e),l=0;lnne*C&&!B)){for(s=0;soe&&Mete&&(te=Me);var je=(te-J)/(2*ne);_/=je,J=h.l2r(J),te=h.l2r(te),h.range=h._input.range=H{"use strict";var ox=ja(),os=sa(),fl=eo(),Ql=Bt(),G4=co(),Z4=N2(),pg=Oa(),em=xi(),Fz=Ky(),Uz=B4(),mg=Xi(),Sc=ts(),Vz=dg(),une=Vz.enforce,fne=Vz.clean,qz=$y().doAutoRange,Hz="start",cne="middle",Gz="end",hne=Ao().zindexSeparator;ao.layoutStyles=function(e){return Ql.syncOrAsync([fl.doAutoMargin,dne],e)};function vne(e,t,r){for(var i=0;i=e[1]||a[1]<=e[0])&&s[0]t[0])return!0}return!1}function dne(e){var t=e._fullLayout,r=t._size,i=r.p,a=mg.list(e,"",!0),s,l,f,h,v,m;if(t._paperdiv.style({width:e._context.responsive&&t.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":t.width+"px",height:e._context.responsive&&t.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":t.height+"px"}).selectAll(".main-svg").call(em.setSize,t.width,t.height),e._context.setBackground(e,t.paper_bgcolor),ao.drawMainTitle(e),Uz.manage(e),!t._has("cartesian"))return fl.previousPromises(e);function _(vt,de,De){var ge=vt._lw/2;if(vt._id.charAt(0)==="x"){if(de){if(De==="top")return de._offset-i-ge}else return r.t+r.h*(1-(vt.position||0))+ge%1;return de._offset+de._length+i+ge}if(de){if(De==="right")return de._offset+de._length+i+ge}else return r.l+r.w*(vt.position||0)+ge%1;return de._offset-i-ge}for(s=0;s0){gne(e,s,v,h),f.attr({x:l,y:s,"text-anchor":i,dy:Oz(t.yanchor)}).call(G4.positionText,l,s);var m=(t.text.match(G4.BR_TAG_ALL)||[]).length;if(m){var _=Sc.LINE_SPACING*m+Sc.MID_SHIFT;t.y===0&&(_=-_),f.selectAll(".line").each(function(){var L=+this.getAttribute("dy").slice(0,-2)-_+"em";this.setAttribute("dy",L)})}var T=ox.select(e).selectAll(".gtitle-subtitle");if(T.node()){var S=f.node().getBBox(),C=S.y+S.height,E=C+Fz.SUBTITLE_PADDING_EM*t.subtitle.font.size;T.attr({x:l,y:E,"text-anchor":i,dy:Oz(t.yanchor)}).call(G4.positionText,l,E)}}}};function pne(e,t,r,i,a){var s=t.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,l=Ql.isTopAnchor(t)?i:i-a,f=r==="b"?s-l:l;return Ql.isTopAnchor(t)&&r==="t"||Ql.isBottomAnchor(t)&&r==="b"?!1:f.5?"t":"b",l=e._fullLayout.margin[s],f=0;return t.yref==="paper"?f=r+t.pad.t+t.pad.b:t.yref==="container"&&(f=mne(s,i,a,e._fullLayout.height,r)+t.pad.t+t.pad.b),f>l?f:0}function gne(e,t,r,i){var a="title.automargin",s=e._fullLayout.title,l=s.y>.5?"t":"b",f={x:s.x,y:s.y,t:0,b:0},h={};s.yref==="paper"&&pne(e,s,l,t,i)?f[l]=r:s.yref==="container"&&(h[l]=r,e._fullLayout._reservedMargin[a]=h),fl.allowAutoMargin(e,a),fl.autoMargin(e,a,f)}function _ne(e,t){var r=e.title,i=e._size,a=0;switch(t===Hz?a=r.pad.l:t===Gz&&(a=-r.pad.r),r.xref){case"paper":return i.l+i.w*r.x+a;case"container":default:return e.width*r.x+a}}function xne(e,t){var r=e.title,i=e._size,a=0;if(t==="0em"||!t?a=-r.pad.b:t===Sc.CAP_SHIFT+"em"&&(a=r.pad.t),r.y==="auto")return i.t/2;switch(r.yref){case"paper":return i.t+i.h-i.h*r.y+a;case"container":default:return e.height-e.height*r.y+a}}function Oz(e){return e==="top"?Sc.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":Sc.MID_SHIFT+"em"}function bne(e){var t=e.title,r=cne;return Ql.isRightAnchor(t)?r=Gz:Ql.isLeftAnchor(t)&&(r=Hz),r}function wne(e){var t=e.title,r="0em";return Ql.isTopAnchor(t)?r=Sc.CAP_SHIFT+"em":Ql.isMiddleAnchor(t)&&(r=Sc.MID_SHIFT+"em"),r}ao.doTraceStyle=function(e){var t=e.calcdata,r=[],i;for(i=0;i{"use strict";var Tne=Uh().readPaths,Ane=J2(),Zz=Ph().clearOutlineControllers,Y4=Oa(),Yz=xi(),Mne=Ii().arrayEditor,Wz=Hh(),Sne=Wz.getPathString;jz.exports={draw:lx,drawOne:Xz,activateLastSelection:Ene};function lx(e){var t=e._fullLayout;Zz(e),t._selectionLayer.selectAll("path").remove();for(var r in t._plots){var i=t._plots[r].selectionLayer;i&&i.selectAll("path").remove()}for(var a=0;a=0;L--){var z=l.append("path").attr(h).style("opacity",L?.1:v).call(Y4.stroke,_).call(Y4.fill,m).call(Yz.dashLine,L?"solid":S,L?4+T:T);if(kne(z,e,i),C){var B=Mne(e.layout,"selections",i);z.style({cursor:"move"});var q={element:z.node(),plotinfo:a,gd:e,editHelpers:B,isActiveSelection:!0},I=Tne(f,e);Ane(I,z,q)}else z.style("pointer-events",L?"all":"none");E[L]=z}var O=E[0],H=E[1];H.node().addEventListener("click",function(){return Cne(e,O)})}}function kne(e,t,r){var i=r.xref+r.yref;Yz.setClipUrl(e,"clip"+t._fullLayout._uid+i,t)}function Cne(e,t){if(ux(e)){var r=t.node(),i=+r.getAttribute("data-index");if(i>=0){if(i===e._fullLayout._activeSelectionIndex){W4(e);return}e._fullLayout._activeSelectionIndex=i,e._fullLayout._deactivateSelection=W4,lx(e)}}}function Ene(e){if(ux(e)){var t=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=t,e._fullLayout._deactivateSelection=W4,lx(e)}}function W4(e){if(ux(e)){var t=e._fullLayout._activeSelectionIndex;t>=0&&(Zz(e),delete e._fullLayout._activeSelectionIndex,lx(e))}}});var Kz=pe((M_e,Jz)=>{function Lne(){var e,t=0,r=!1;function i(a,s){return e.list.push({type:a,data:s?JSON.parse(JSON.stringify(s)):void 0}),e}return e={list:[],segmentId:function(){return t++},checkIntersection:function(a,s){return i("check",{seg1:a,seg2:s})},segmentChop:function(a,s){return i("div_seg",{seg:a,pt:s}),i("chop",{seg:a,pt:s})},statusRemove:function(a){return i("pop_seg",{seg:a})},segmentUpdate:function(a){return i("seg_update",{seg:a})},segmentNew:function(a,s){return i("new_seg",{seg:a,primary:s})},segmentRemove:function(a){return i("rem_seg",{seg:a})},tempStatus:function(a,s,l){return i("temp_status",{seg:a,above:s,below:l})},rewind:function(a){return i("rewind",{seg:a})},status:function(a,s,l){return i("status",{seg:a,above:s,below:l})},vert:function(a){return a===r?e:(r=a,i("vert",{x:a}))},log:function(a){return typeof a!="string"&&(a=JSON.stringify(a,!1," ")),i("log",{txt:a})},reset:function(){return i("reset")},selected:function(a){return i("selected",{segs:a})},chainStart:function(a){return i("chain_start",{seg:a})},chainRemoveHead:function(a,s){return i("chain_rem_head",{index:a,pt:s})},chainRemoveTail:function(a,s){return i("chain_rem_tail",{index:a,pt:s})},chainNew:function(a,s){return i("chain_new",{pt1:a,pt2:s})},chainMatch:function(a){return i("chain_match",{index:a})},chainClose:function(a){return i("chain_close",{index:a})},chainAddHead:function(a,s){return i("chain_add_head",{index:a,pt:s})},chainAddTail:function(a,s){return i("chain_add_tail",{index:a,pt:s})},chainConnect:function(a,s){return i("chain_con",{index1:a,index2:s})},chainReverse:function(a){return i("chain_rev",{index:a})},chainJoin:function(a,s){return i("chain_join",{index1:a,index2:s})},done:function(){return i("done")}},e}Jz.exports=Lne});var $z=pe((S_e,Qz)=>{function Dne(e){typeof e!="number"&&(e=1e-10);var t={epsilon:function(r){return typeof r=="number"&&(e=r),e},pointAboveOrOnLine:function(r,i,a){var s=i[0],l=i[1],f=a[0],h=a[1],v=r[0],m=r[1];return(f-s)*(m-l)-(h-l)*(v-s)>=-e},pointBetween:function(r,i,a){var s=r[1]-i[1],l=a[0]-i[0],f=r[0]-i[0],h=a[1]-i[1],v=f*l+s*h;if(v-e)},pointsSameX:function(r,i){return Math.abs(r[0]-i[0])e!=f-s>e&&(l-m)*(s-_)/(f-_)+m-a>e&&(h=!h),l=m,f=_}return h}};return t}Qz.exports=Dne});var tI=pe((k_e,eI)=>{var Pne={create:function(){var e={root:{root:!0,next:null},exists:function(t){return!(t===null||t===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(t,r){for(var i=e.root,a=e.root.next;a!==null;){if(r(a)){t.prev=a.prev,t.next=a,a.prev.next=t,a.prev=t;return}i=a,a=a.next}i.next=t,t.prev=i,t.next=null},findTransition:function(t){for(var r=e.root,i=e.root.next;i!==null&&!t(i);)r=i,i=i.next;return{before:r===e.root?null:r,after:i,insert:function(a){return a.prev=r,a.next=i,r.next=a,i!==null&&(i.prev=a),a}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};eI.exports=Pne});var aI=pe((C_e,rI)=>{var yg=tI();function zne(e,t,r){function i(C,E){return{id:r?r.segmentId():-1,start:C,end:E,myFill:{above:null,below:null},otherFill:null}}function a(C,E,L){return{id:r?r.segmentId():-1,start:C,end:E,myFill:{above:L.myFill.above,below:L.myFill.below},otherFill:null}}var s=yg.create();function l(C,E,L,z,B,q){var I=t.pointsCompare(E,B);return I!==0?I:t.pointsSame(L,q)?0:C!==z?C?1:-1:t.pointAboveOrOnLine(L,z?B:q,z?q:B)?1:-1}function f(C,E){s.insertBefore(C,function(L){var z=l(C.isStart,C.pt,E,L.isStart,L.pt,L.other.pt);return z<0})}function h(C,E){var L=yg.node({isStart:!0,pt:C.start,seg:C,primary:E,other:null,status:null});return f(L,C.end),L}function v(C,E,L){var z=yg.node({isStart:!1,pt:E.end,seg:E,primary:L,other:C,status:null});C.other=z,f(z,C.pt)}function m(C,E){var L=h(C,E);return v(L,C,E),L}function _(C,E){r&&r.segmentChop(C.seg,E),C.other.remove(),C.seg.end=E,C.other.pt=E,f(C.other,C.pt)}function T(C,E){var L=a(E,C.seg.end,C.seg);return _(C,E),m(L,C.primary)}function S(C,E){var L=yg.create();function z(ke,Se){var Ae=ke.seg.start,xe=ke.seg.end,be=Se.seg.start,Me=Se.seg.end;return t.pointsCollinear(Ae,be,Me)?t.pointsCollinear(xe,be,Me)||t.pointAboveOrOnLine(xe,be,Me)?1:-1:t.pointAboveOrOnLine(Ae,be,Me)?1:-1}function B(ke){return L.findTransition(function(Se){var Ae=z(ke,Se.ev);return Ae>0})}function q(ke,Se){var Ae=ke.seg,xe=Se.seg,be=Ae.start,Me=Ae.end,Le=xe.start,je=xe.end;r&&r.checkIntersection(Ae,xe);var lt=t.linesIntersect(be,Me,Le,je);if(lt===!1){if(!t.pointsCollinear(be,Me,Le)||t.pointsSame(be,je)||t.pointsSame(Me,Le))return!1;var at=t.pointsSame(be,Le),gt=t.pointsSame(Me,je);if(at&>)return Se;var Ye=!at&&t.pointBetween(be,Le,je),St=!gt&&t.pointBetween(Me,Le,je);if(at)return St?T(Se,Me):T(ke,je),Se;Ye&&(gt||(St?T(Se,Me):T(ke,je)),T(Se,be))}else lt.alongA===0&&(lt.alongB===-1?T(ke,Le):lt.alongB===0?T(ke,lt.pt):lt.alongB===1&&T(ke,je)),lt.alongB===0&&(lt.alongA===-1?T(Se,be):lt.alongA===0?T(Se,lt.pt):lt.alongA===1&&T(Se,Me));return!1}for(var I=[];!s.isEmpty();){var O=s.getHead();if(r&&r.vert(O.pt[0]),O.isStart){let ke=function(){if(V){var Se=q(O,V);if(Se)return Se}return W?q(O,W):!1};var he=ke;r&&r.segmentNew(O.seg,O.primary);var H=B(O),V=H.before?H.before.ev:null,W=H.after?H.after.ev:null;r&&r.tempStatus(O.seg,V?V.seg:!1,W?W.seg:!1);var J=ke();if(J){if(e){var te;O.seg.myFill.below===null?te=!0:te=O.seg.myFill.above!==O.seg.myFill.below,te&&(J.seg.myFill.above=!J.seg.myFill.above)}else J.seg.otherFill=O.seg.myFill;r&&r.segmentUpdate(J.seg),O.other.remove(),O.remove()}if(s.getHead()!==O){r&&r.rewind(O.seg);continue}if(e){var te;O.seg.myFill.below===null?te=!0:te=O.seg.myFill.above!==O.seg.myFill.below,W?O.seg.myFill.below=W.seg.myFill.above:O.seg.myFill.below=C,te?O.seg.myFill.above=!O.seg.myFill.below:O.seg.myFill.above=O.seg.myFill.below}else if(O.seg.otherFill===null){var ne;W?O.primary===W.primary?ne=W.seg.otherFill.above:ne=W.seg.myFill.above:ne=O.primary?E:C,O.seg.otherFill={above:ne,below:ne}}r&&r.status(O.seg,V?V.seg:!1,W?W.seg:!1),O.other.status=H.insert(yg.node({ev:O}))}else{var oe=O.status;if(oe===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(L.exists(oe.prev)&&L.exists(oe.next)&&q(oe.prev.ev,oe.next.ev),r&&r.statusRemove(oe.ev.seg),oe.remove(),!O.primary){var fe=O.seg.myFill;O.seg.myFill=O.seg.otherFill,O.seg.otherFill=fe}I.push(O.seg)}s.getHead().remove()}return r&&r.done(),I}return e?{addRegion:function(C){for(var E,L=C[C.length-1],z=0;z{function Ine(e,t,r){var i=[],a=[];return e.forEach(function(s){var l=s.start,f=s.end;if(t.pointsSame(l,f)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}r&&r.chainStart(s);var h={index:0,matches_head:!1,matches_pt1:!1},v={index:0,matches_head:!1,matches_pt1:!1},m=h;function _(he,ke,Se){return m.index=he,m.matches_head=ke,m.matches_pt1=Se,m===h?(m=v,!1):(m=null,!0)}for(var T=0;T{function gg(e,t,r){var i=[];return e.forEach(function(a){var s=(a.myFill.above?8:0)+(a.myFill.below?4:0)+(a.otherFill&&a.otherFill.above?2:0)+(a.otherFill&&a.otherFill.below?1:0);t[s]!==0&&i.push({id:r?r.segmentId():-1,start:a.start,end:a.end,myFill:{above:t[s]===1,below:t[s]===2},otherFill:null})}),r&&r.selected(i),i}var Rne={union:function(e,t){return gg(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],t)},intersect:function(e,t){return gg(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],t)},difference:function(e,t){return gg(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],t)},differenceRev:function(e,t){return gg(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],t)},xor:function(e,t){return gg(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],t)}};oI.exports=Rne});var uI=pe((D_e,lI)=>{var Fne={toPolygon:function(e,t){function r(s){if(s.length<=0)return e.segments({inverted:!1,regions:[]});function l(v){var m=v.slice(0,v.length-1);return e.segments({inverted:!1,regions:[m]})}for(var f=l(s[0]),h=1;h{var qne=Kz(),Nne=$z(),fI=aI(),Bne=nI(),_g=sI(),cI=uI(),$l=!1,xg=Nne(),Vs;Vs={buildLog:function(e){return e===!0?$l=qne():e===!1&&($l=!1),$l===!1?!1:$l.list},epsilon:function(e){return xg.epsilon(e)},segments:function(e){var t=fI(!0,xg,$l);return e.regions.forEach(t.addRegion),{segments:t.calculate(e.inverted),inverted:e.inverted}},combine:function(e,t){var r=fI(!1,xg,$l);return{combined:r.calculate(e.segments,e.inverted,t.segments,t.inverted),inverted1:e.inverted,inverted2:t.inverted}},selectUnion:function(e){return{segments:_g.union(e.combined,$l),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:_g.intersect(e.combined,$l),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:_g.difference(e.combined,$l),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:_g.differenceRev(e.combined,$l),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:_g.xor(e.combined,$l),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:Bne(e.segments,xg,$l),inverted:e.inverted}},polygonFromGeoJSON:function(e){return cI.toPolygon(Vs,e)},polygonToGeoJSON:function(e){return cI.fromPolygon(Vs,xg,e)},union:function(e,t){return bg(e,t,Vs.selectUnion)},intersect:function(e,t){return bg(e,t,Vs.selectIntersect)},difference:function(e,t){return bg(e,t,Vs.selectDifference)},differenceRev:function(e,t){return bg(e,t,Vs.selectDifferenceRev)},xor:function(e,t){return bg(e,t,Vs.selectXor)}};function bg(e,t,r){var i=Vs.segments(e),a=Vs.segments(t),s=Vs.combine(i,a),l=r(s);return Vs.polygon(l)}typeof window=="object"&&(window.PolyBool=Vs);hI.exports=Vs});var pI=pe((z_e,dI)=>{dI.exports=function(t,r,i,a){var s=t[0],l=t[1],f=!1;i===void 0&&(i=0),a===void 0&&(a=r.length);for(var h=a-i,v=0,m=h-1;vl!=C>l&&s<(S-_)*(l-T)/(C-T)+_;E&&(f=!f)}return f}});var hx=pe((I_e,mI)=>{"use strict";var j4=f_().dot,fx=Zi().BADNUM,cx=mI.exports={};cx.tester=function(t){var r=t.slice(),i=r[0][0],a=i,s=r[0][1],l=s,f;for((r[r.length-1][0]!==r[0][0]||r[r.length-1][1]!==r[0][1])&&r.push(r[0]),f=1;fa||z===fx||zl||E&&v(C))}function _(C,E){var L=C[0],z=C[1];if(L===fx||La||z===fx||zl)return!1;var B=r.length,q=r[0][0],I=r[0][1],O=0,H,V,W,J,te;for(H=1;HMath.max(V,q)||z>Math.max(W,I)))if(zf||Math.abs(j4(_,v))>a)return!0;return!1};cx.filter=function(t,r){var i=[t[0]],a=0,s=0;function l(h){t.push(h);var v=i.length,m=a;i.splice(s+1);for(var _=m+1;_1){var f=t.pop();l(f)}return{addPt:l,raw:t,filtered:i}}});var gI=pe((R_e,yI)=>{"use strict";yI.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var OI=pe((F_e,BI)=>{"use strict";var _I=vI(),One=pI(),Ag=sa(),Une=xi().dashStyle,wg=Oa(),Vne=Rf(),Hne=bc().makeEventData,Eg=Cd(),Gne=Eg.freeMode,Zne=Eg.rectMode,Mg=Eg.drawMode,$4=Eg.openMode,e6=Eg.selectMode,xI=Hh(),bI=fg(),SI=J2(),kI=Ph().clearOutline,CI=Uh(),J4=CI.handleEllipse,Yne=CI.readPaths,Wne=Y2().newShapes,Xne=T4(),jne=X4().activateLastSelection,dx=Bt(),Jne=dx.sorterAsc,EI=hx(),Tg=A_(),eu=Xn().getFromId,Kne=N2(),Qne=sx().redrawReglTraces,px=gI(),qf=px.MINSELECT,$ne=EI.filter,t6=EI.tester,r6=V2(),wI=r6.p2r,eoe=r6.axValue,toe=r6.getTransform;function a6(e){return e.subplot!==void 0}function roe(e,t,r,i,a){var s=!a6(i),l=Gne(a),f=Zne(a),h=$4(a),v=Mg(a),m=e6(a),_=a==="drawline",T=a==="drawcircle",S=_||T,C=i.gd,E=C._fullLayout,L=m&&E.newselection.mode==="immediate"&&s,z=E._zoomlayer,B=i.element.getBoundingClientRect(),q=i.plotinfo,I=toe(q),O=t-B.left,H=r-B.top;E._calcInverseTransform(C);var V=dx.apply3DTransform(E._invTransform)(O,H);O=V[0],H=V[1];var W=E._invScaleX,J=E._invScaleY,te=O,ne=H,oe="M"+O+","+H,fe=i.xaxes[0],he=i.yaxes[0],ke=fe._length,Se=he._length,Ae=e.altKey&&!(Mg(a)&&h),xe,be,Me,Le,je,lt,at;DI(e,C,i),l&&(xe=$ne([[O,H]],px.BENDPX));var gt=z.selectAll("path.select-outline-"+q.id).data([1]),Ye=v?E.newshape:E.newselection;v&&(i.hasText=Ye.label.text||Ye.label.texttemplate);var St=v&&!h?Ye.fillcolor:"rgba(0,0,0,0)",it=Ye.line.color||(s?wg.contrast(C._fullLayout.plot_bgcolor):"#7f7f7f");gt.enter().append("path").attr("class","select-outline select-outline-"+q.id).style({opacity:v?Ye.opacity/2:1,"stroke-dasharray":Une(Ye.line.dash,Ye.line.width),"stroke-width":Ye.line.width+"px","shape-rendering":"crispEdges"}).call(wg.stroke,it).call(wg.fill,St).attr("fill-rule","evenodd").classed("cursor-move",!!v).attr("transform",I).attr("d",oe+"Z");var mt=z.append("path").attr("class","zoombox-corners").style({fill:wg.background,stroke:wg.defaultLine,"stroke-width":1}).attr("transform",I).attr("d","M0,0Z");if(v&&i.hasText){var bt=z.select(".label-temp");bt.empty()&&(bt=z.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var vt=E._uid+px.SELECTID,de=[],De=mx(C,i.xaxes,i.yaxes,i.subplot);L&&!e.shiftKey&&(i._clearSubplotSelections=function(){if(s){var rt=fe._id,dt=he._id;FI(C,rt,dt,De);for(var We=(C.layout||{}).selections||[],qt=[],Dt=!1,Tt=0;Tt=0){C._fullLayout._deactivateShape(C);return}if(!v){var We=E.clickmode;Tg.done(vt).then(function(){if(Tg.clear(vt),rt===2){for(gt.remove(),je=0;je-1&&LI(dt,C,i.xaxes,i.yaxes,i.subplot,i,gt),We==="event"&&Cg(C,void 0);Vne.click(C,dt,q.id)}).catch(dx.error)}},i.doneFn=function(){mt.remove(),Tg.done(vt).then(function(){Tg.clear(vt),!L&&Le&&i.selectionDefs&&(Le.subtract=Ae,i.selectionDefs.push(Le),i.mergedPolygons.length=0,[].push.apply(i.mergedPolygons,Me)),(L||v)&&Sg(i,L),i.doneFnCompleted&&i.doneFnCompleted(de),m&&Cg(C,at)}).catch(dx.error)}}function LI(e,t,r,i,a,s,l){var f=t._hoverdata,h=t._fullLayout,v=h.clickmode,m=v.indexOf("event")>-1,_=[],T,S,C,E,L,z,B,q,I,O;if(soe(f)){DI(e,t,s),T=mx(t,r,i,a);var H=loe(f,T),V=H.pointNumbers.length>0;if(V?uoe(T,H):foe(T)&&(B=AI(H))){for(l&&l.remove(),O=0;O=0}function ooe(e){return e._fullLayout._activeSelectionIndex>=0}function Sg(e,t){var r=e.dragmode,i=e.plotinfo,a=e.gd;noe(a)&&a._fullLayout._deactivateShape(a),ooe(a)&&a._fullLayout._deactivateSelection(a);var s=a._fullLayout,l=s._zoomlayer,f=Mg(r),h=e6(r);if(f||h){var v=l.selectAll(".select-outline-"+i.id);if(v&&a._fullLayout._outlining){var m;f&&(m=Wne(v,e)),m&&Ag.call("_guiRelayout",a,{shapes:m});var _;h&&!a6(e)&&(_=Xne(v,e)),_&&(a._fullLayout._noEmitSelectedAtStart=!0,Ag.call("_guiRelayout",a,{selections:_}).then(function(){t&&jne(a)})),a._fullLayout._outlining=!1}}i.selection={},i.selection.selectionDefs=e.selectionDefs=[],i.selection.mergedPolygons=e.mergedPolygons=[]}function TI(e){return e._id}function mx(e,t,r,i){if(!e.calcdata)return[];var a=[],s=t.map(TI),l=r.map(TI),f,h,v;for(v=0;v0,s=a?i[0]:r;return t.selectedpoints?t.selectedpoints.indexOf(s)>-1:!1}function uoe(e,t){var r=[],i,a,s,l;for(l=0;l0&&r.push(i);if(r.length===1&&(s=r[0]===t.searchInfo,s&&(a=t.searchInfo.cd[0].trace,a.selectedpoints.length===t.pointNumbers.length))){for(l=0;l1||(t+=i.selectedpoints.length,t>1)))return!1;return t===1}function kg(e,t,r){var i;for(i=0;i-1&&t;if(!l&&t){var rt=MI(e,!0);if(rt.length){var dt=rt[0].xref,We=rt[0].yref;if(dt&&We){var qt=qI(rt),Dt=NI([eu(e,dt,"x"),eu(e,We,"y")]);Dt(de,qt)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:ge&&Cg(e,de),T._reselect=!1}if(!l&&T._deselect){var Tt=T._deselect;f=Tt.xref,h=Tt.yref,voe(f,h,m)||FI(e,f,h,i),ge&&(de.points.length?Cg(e,de):o6(e)),T._deselect=!1}return{eventData:de,selectionTesters:r}}function hoe(e){var t=e.calcdata;if(t)for(var r=0;r{"use strict";UI.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var Lg=pe((N_e,VI)=>{"use strict";VI.exports={axisRefDescription:function(e,t,r){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",t,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",t,"("+r+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",t,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",t,"and the",r,"of the domain of the","second",e,"axis."].join(" ")}}});var tm=pe((O_e,ZI)=>{"use strict";var HI=s6(),GI=qo(),yx=Ao(),goe=Ii().templatedArray,B_e=Lg();ZI.exports=goe("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:GI({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:HI.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:HI.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",yx.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",yx.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",yx.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",yx.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:GI({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var gx=pe((U_e,YI)=>{"use strict";YI.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var _x=pe((V_e,WI)=>{"use strict";WI.exports=function(t){return{valType:"color",editType:"style",anim:!0}}});var kc=pe((H_e,eR)=>{"use strict";var XI=Ow().axisHoverFormat,{hovertemplateAttrs:_oe,texttemplateAttrs:xoe,templatefallbackAttrs:jI}=Mf(),JI=xc(),boe=qo(),woe=hc().dash,Toe=hc().pattern,Aoe=xi(),Moe=gx(),xx=mn().extendFlat,Soe=_x();function KI(e){return{valType:"any",dflt:0,editType:"calc"}}function QI(e){return{valType:"any",editType:"calc"}}function $I(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}eR.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:KI("x"),yperiod:KI("y"),xperiod0:QI("x0"),yperiod0:QI("y0"),xperiodalignment:$I("x"),yperiodalignment:$I("y"),xhoverformat:XI("x"),yhoverformat:XI("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:xoe(),texttemplatefallback:jI({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:_oe({},{keys:Moe.eventDataKeys}),hovertemplatefallback:jI(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:xx({},woe,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:Soe(!0),fillgradient:xx({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:Toe,marker:xx({symbol:{valType:"enumerated",values:Aoe.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:xx({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},JI("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},JI("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:boe({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var l6=pe((Z_e,aR)=>{"use strict";var tR=tm(),rR=kc().line,koe=hc().dash,bx=mn().extendFlat,Coe=il().overrideAll,Eoe=Ii().templatedArray,G_e=Lg();aR.exports=Coe(Eoe("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:bx({},tR.xref,{}),yref:bx({},tR.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:rR.color,width:bx({},rR.width,{min:1,dflt:1}),dash:bx({},koe,{dflt:"dot"})}}),"arraydraw","from-root")});var sR=pe((Y_e,oR)=>{"use strict";var iR=Bt(),wx=Xi(),Loe=Yl(),Doe=l6(),nR=Hh();oR.exports=function(t,r){Loe(t,r,{name:"selections",handleItemDefaults:Poe});for(var i=r.selections,a=0;a{"use strict";lR.exports=function(t,r,i){i("newselection.mode");var a=i("newselection.line.width");a&&(i("newselection.line.color"),i("newselection.line.dash")),i("activeselection.fillcolor"),i("activeselection.opacity")}});var Dg=pe((X_e,hR)=>{"use strict";var zoe=sa(),fR=Bt(),cR=Xn();hR.exports=function(t){return function(i,a){var s=i[t];if(Array.isArray(s))for(var l=zoe.subplotsRegistry.cartesian,f=l.idRegex,h=a._subplots,v=h.xaxis,m=h.yaxis,_=h.cartesian,T=a._has("cartesian"),S=0;S{"use strict";var vR=X4(),Pg=OI();dR.exports={moduleType:"component",name:"selections",layoutAttributes:l6(),supplyLayoutDefaults:sR(),supplyDrawNewSelectionDefaults:uR(),includeBasePlot:Dg()("selections"),draw:vR.draw,drawOne:vR.drawOne,reselect:Pg.reselect,prepSelect:Pg.prepSelect,clearOutline:Pg.clearOutline,clearSelectionsCache:Pg.clearSelectionsCache,selectOnClick:Pg.selectOnClick}});var RR=pe((J_e,IR)=>{"use strict";var v6=ja(),tu=Bt(),pR=tu.numberFormat,Ioe=Tf(),Roe=X5(),Tx=sa(),AR=tu.strTranslate,Foe=co(),mR=Oa(),Zh=xi(),qoe=Rf(),yR=Xi(),Noe=Oh(),Boe=Xl(),MR=Cd(),Ax=MR.selectingOrDrawing,Ooe=MR.freeMode,Uoe=ts().FROM_TL,Voe=N2(),Hoe=sx().redrawReglTraces,Goe=eo(),f6=Xn().getFromId,Zoe=Nf().prepSelect,Yoe=Nf().clearOutline,Woe=Nf().selectOnClick,u6=O4(),d6=Ao(),gR=d6.MINDRAG,gs=d6.MINZOOM,_R=!0;function Xoe(e,t,r,i,a,s,l,f){var h=e._fullLayout._zoomlayer,v=l+f==="nsew",m=(l+f).length===1,_,T,S,C,E,L,z,B,q,I,O,H,V,W,J,te,ne,oe,fe,he,ke,Se,Ae;r+=t.yaxis._shift;function xe(){if(_=t.xaxis,T=t.yaxis,q=_._length,I=T._length,z=_._offset,B=T._offset,S={},S[_._id]=_,C={},C[T._id]=T,l&&f)for(var ct=t.overlays,pt=0;pt=0){Ot._fullLayout._deactivateShape(Ot);return}var er=Ot._fullLayout.clickmode;if(h6(Ot),ct===2&&!m&&Ht(),v)er.indexOf("select")>-1&&Woe(pt,Ot,E,L,t.id,Le),er.indexOf("event")>-1&&qoe.click(Ot,pt,t.id);else if(ct===1&&m){var Zt=l?T:_,Kt=l==="s"||f==="w"?0:1,pr=Zt._name+".range["+Kt+"]",yr=joe(Zt,Kt),ur="left",Lt="middle";if(Zt.fixedrange)return;l?(Lt=l==="n"?"top":"bottom",Zt.side==="right"&&(ur="right")):f==="e"&&(ur="right"),Ot._context.showAxisRangeEntryBoxes&&v6.select(Me).call(Foe.makeEditable,{gd:Ot,immediate:!0,background:Ot._fullLayout.paper_bgcolor,text:String(yr),fill:Zt.tickfont?Zt.tickfont.color:"#444",horizontalAlign:ur,verticalAlign:Lt}).on("edit",function(Fe){var Ue=Zt.d2r(Fe);Ue!==void 0&&Tx.call("_guiRelayout",Ot,pr,Ue)})}}Boe.init(Le);var at,gt,Ye,St,it,mt,bt,vt,de,De;function ge(ct,pt,Ot){var er=Me.getBoundingClientRect();at=pt-er.left,gt=Ot-er.top,e._fullLayout._calcInverseTransform(e);var Zt=tu.apply3DTransform(e._fullLayout._invTransform)(at,gt);at=Zt[0],gt=Zt[1],Ye={l:at,r:at,w:0,t:gt,b:gt,h:0},St=e._hmpixcount?e._hmlumcount/e._hmpixcount:Ioe(e._fullLayout.plot_bgcolor).getLuminance(),it="M0,0H"+q+"V"+I+"H0V0",mt=!1,bt="xy",De=!1,vt=CR(h,St,z,B,it),de=ER(h,z,B)}function rt(ct,pt){if(e._transitioningWithDuration)return!1;var Ot=Math.max(0,Math.min(q,Se*ct+at)),er=Math.max(0,Math.min(I,Ae*pt+gt)),Zt=Math.abs(Ot-at),Kt=Math.abs(er-gt);Ye.l=Math.min(at,Ot),Ye.r=Math.max(at,Ot),Ye.t=Math.min(gt,er),Ye.b=Math.max(gt,er);function pr(){bt="",Ye.r=Ye.l,Ye.t=Ye.b,de.attr("d","M0,0Z")}if(O.isSubplotConstrained)Zt>gs||Kt>gs?(bt="xy",Zt/q>Kt/I?(Kt=Zt*I/q,gt>er?Ye.t=gt-Kt:Ye.b=gt+Kt):(Zt=Kt*q/I,at>Ot?Ye.l=at-Zt:Ye.r=at+Zt),de.attr("d",Mx(Ye))):pr();else if(H.isSubplotConstrained)if(Zt>gs||Kt>gs){bt="xy";var yr=Math.min(Ye.l/q,(I-Ye.b)/I),ur=Math.max(Ye.r/q,(I-Ye.t)/I);Ye.l=yr*q,Ye.r=ur*q,Ye.b=(1-yr)*I,Ye.t=(1-ur)*I,de.attr("d",Mx(Ye))}else pr();else!W||Kt0){var Fe;if(H.isSubplotConstrained||!V&&W.length===1){for(Fe=0;Fe1&&(pr.maxallowed!==void 0&&te===(pr.range[0]1&&(yr.maxallowed!==void 0&&ne===(yr.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function Koe(e,t,r){return e?e==="nsew"?r?"":t==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function CR(e,t,r,i,a){return e.append("path").attr("class","zoombox").style({fill:t>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",AR(r,i)).attr("d",a+"Z")}function ER(e,t,r){return e.append("path").attr("class","zoombox-corners").style({fill:mR.background,stroke:mR.defaultLine,"stroke-width":1,opacity:0}).attr("transform",AR(t,r)).attr("d","M0,0Z")}function LR(e,t,r,i,a,s){e.attr("d",i+"M"+r.l+","+r.t+"v"+r.h+"h"+r.w+"v-"+r.h+"h-"+r.w+"Z"),DR(e,t,a,s)}function DR(e,t,r,i){r||(e.transition().style("fill",i>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),t.transition().style("opacity",1).duration(200))}function h6(e){v6.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function PR(e){_R&&e.data&&e._context.showTips&&(tu.notifier(tu._(e,"Double-click to zoom back out"),"long"),_R=!1)}function Qoe(e,t){return"M"+(e.l-.5)+","+(t-gs-.5)+"h-3v"+(2*gs+1)+"h3ZM"+(e.r+.5)+","+(t-gs-.5)+"h3v"+(2*gs+1)+"h-3Z"}function $oe(e,t){return"M"+(t-gs-.5)+","+(e.t-.5)+"v-3h"+(2*gs+1)+"v3ZM"+(t-gs-.5)+","+(e.b+.5)+"v3h"+(2*gs+1)+"v-3Z"}function Mx(e){var t=Math.floor(Math.min(e.b-e.t,e.r-e.l,gs)/2);return"M"+(e.l-3.5)+","+(e.t-.5+t)+"h3v"+-t+"h"+t+"v-3h-"+(t+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+t)+"h-3v"+-t+"h"+-t+"v-3h"+(t+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-t)+"h-3v"+t+"h"+-t+"v3h"+(t+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-t)+"h3v"+t+"h"+t+"v3h-"+(t+3)+"Z"}function wR(e,t,r,i,a){for(var s=!1,l={},f={},h,v,m,_,T=(a||{}).xaHash,S=(a||{}).yaHash,C=0;C{"use strict";var ese=ja(),Sx=Rf(),tse=Xl(),rse=Oh(),Ou=RR().makeDragBox,io=Ao().DRAGGERSIZE;kx.initInteractions=function(t){var r=t._fullLayout;if(t._context.staticPlot){ese.select(t).selectAll(".drag").remove();return}if(!(!r._has("cartesian")&&!r._has("splom"))){var i=Object.keys(r._plots||{}).sort(function(s,l){if((r._plots[s].mainplot&&!0)===(r._plots[l].mainplot&&!0)){var f=s.split("y"),h=l.split("y");return f[0]===h[0]?Number(f[1]||1)-Number(h[1]||1):Number(f[0]||1)-Number(h[0]||1)}return r._plots[s].mainplot?1:-1});i.forEach(function(s){var l=r._plots[s],f=l.xaxis,h=l.yaxis;if(!l.mainplot){var v=Ou(t,l,f._offset,h._offset,f._length,h._length,"ns","ew");v.onmousemove=function(T){t._fullLayout._rehover=function(){t._fullLayout._hoversubplot===s&&t._fullLayout._plots[s]&&Sx.hover(t,T,s)},Sx.hover(t,T,s),t._fullLayout._lasthover=v,t._fullLayout._hoversubplot=s},v.onmouseout=function(T){t._dragging||(t._fullLayout._hoversubplot=null,tse.unhover(t,T))},t._context.showAxisDragHandles&&(Ou(t,l,f._offset-io,h._offset-io,io,io,"n","w"),Ou(t,l,f._offset+f._length,h._offset-io,io,io,"n","e"),Ou(t,l,f._offset-io,h._offset+h._length,io,io,"s","w"),Ou(t,l,f._offset+f._length,h._offset+h._length,io,io,"s","e"))}if(t._context.showAxisDragHandles){if(s===f._mainSubplot){var m=f._mainLinePosition;f.side==="top"&&(m-=io),Ou(t,l,f._offset+f._length*.1,m,f._length*.8,io,"","ew"),Ou(t,l,f._offset,m,f._length*.1,io,"","w"),Ou(t,l,f._offset+f._length*.9,m,f._length*.1,io,"","e")}if(s===h._mainSubplot){var _=h._mainLinePosition;h.side!=="right"&&(_-=io),Ou(t,l,_,h._offset+h._length*.1,io,h._length*.8,"ns",""),Ou(t,l,_,h._offset+h._length*.9,io,h._length*.1,"s",""),Ou(t,l,_,h._offset,io,h._length*.1,"n","")}}});var a=r._hoverlayer.node();a.onmousemove=function(s){s.target=t._fullLayout._lasthover,Sx.hover(t,s,r._hoversubplot)},a.onclick=function(s){s.target=t._fullLayout._lasthover,Sx.click(t,s)},a.onmousedown=function(s){t._fullLayout._lasthover.onmousedown(s)},kx.updateFx(t)}};kx.updateFx=function(e){var t=e._fullLayout,r=t.dragmode==="pan"?"move":"crosshair";rse(t._draggers,r)}});var NR=pe((Q_e,qR)=>{"use strict";var FR=sa();qR.exports=function(t){for(var r=FR.layoutArrayContainers,i=FR.layoutArrayRegexes,a=t.split("[")[0],s,l,f=0;f{"use strict";var ase=cc(),m6=u_(),zg=Th(),ise=cw().sorterAsc,y6=sa();Ig.containerArrayMatch=NR();var nse=Ig.isAddVal=function(t){return t==="add"||ase(t)},BR=Ig.isRemoveVal=function(t){return t===null||t==="remove"};Ig.applyContainerArrayChanges=function(t,r,i,a,s){var l=r.astr,f=y6.getComponentMethod(l,"supplyLayoutDefaults"),h=y6.getComponentMethod(l,"draw"),v=y6.getComponentMethod(l,"drawOne"),m=a.replot||a.recalc||f===m6||h===m6,_=t.layout,T=t._fullLayout;if(i[""]){Object.keys(i).length>1&&zg.warn("Full array edits are incompatible with other edits",l);var S=i[""][""];if(BR(S))r.set(null);else if(Array.isArray(S))r.set(S);else return zg.warn("Unrecognized full array edit value",l,S),!0;return m?!1:(f(_,T),h(t),!0)}var C=Object.keys(i).map(Number).sort(ise),E=r.get(),L=E||[],z=s(T,l).get(),B=[],q=-1,I=L.length,O,H,V,W,J,te,ne,oe;for(O=0;OL.length-(ne?0:1)){zg.warn("index out of range",l,V);continue}if(te!==void 0)J.length>1&&zg.warn("Insertion & removal are incompatible with edits to the same index.",l,V),BR(te)?B.push(V):ne?(te==="add"&&(te={}),L.splice(V,0,te),z&&z.splice(V,0,{})):zg.warn("Unrecognized full object edit value",l,V,te),q===-1&&(q=V);else for(H=0;H=0;O--)L.splice(B[O],1),z&&z.splice(B[O],1);if(L.length?E||r.set(L):r.set(null),m)return!1;if(f(_,T),v!==m6){var fe;if(q===-1)fe=C;else{for(I=Math.max(L.length,I),fe=[],O=0;O=q));O++)fe.push(V);for(O=q;O{"use strict";var GR=Da(),ZR=sa(),ss=Bt(),Rg=eo(),YR=Xn(),WR=Oa(),Fg=YR.cleanId,ose=YR.getFromTrace,g6=ZR.traceIs,sse=["x","y","z"];ru.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&ss.log("Clearing previous rejected promises from queue."),e._promises=[]};ru.cleanLayout=function(e){var t,r;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var i=(Rg.subplotsRegistry.cartesian||{}).attrRegex,a=(Rg.subplotsRegistry.polar||{}).attrRegex,s=(Rg.subplotsRegistry.ternary||{}).attrRegex,l=(Rg.subplotsRegistry.gl3d||{}).attrRegex,f=Object.keys(e);for(t=0;t3?(L.x=1.02,L.xanchor="left"):L.x<-2&&(L.x=-.02,L.xanchor="right"),L.y>3?(L.y=1.02,L.yanchor="bottom"):L.y<-2&&(L.y=-.02,L.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),WR.clean(e),e.template&&e.template.layout&&ru.cleanLayout(e.template.layout),e};function rm(e,t){var r=e[t],i=t.charAt(0);r&&r!=="paper"&&(e[t]=Fg(r,i,!0))}ru.cleanData=function(e){for(var t=0;t0)return e.slice(0,t)}ru.hasParent=function(e,t){for(var r=HR(t);r;){if(r in e)return!0;r=HR(r)}return!1};ru.clearAxisTypes=function(e,t,r){for(var i=0;i{let r=(...i)=>i.every(a=>ss.isPlainObject(a))||i.every(a=>Array.isArray(a));if([e,t].every(i=>Array.isArray(i))){if(e.length!==t.length)return!1;for(let i=0;iss.isPlainObject(i))){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let i in e){if(i.startsWith("_"))continue;let a=e[i],s=t[i];if(a!==s&&!(r(a,s)?_6(a,s):!1))return!1}return!0}return!1};ru.collectionsAreEqual=_6});var M6=pe(Ha=>{"use strict";var Dx=ja(),fse=Da(),cse=Aw(),br=Bt(),Bi=br.nestedProperty,w6=Vy(),_s=Sk(),au=sa(),Nx=k0(),ta=eo(),ls=Xi(),hse=W5(),vse=Fu(),x6=xi(),dse=Oa(),pse=p6().initInteractions,mse=zh(),yse=Nf().clearOutline,$R=ad().dfltConfig,Ex=OR(),Dn=XR(),hi=sx(),Yh=il(),gse=Ao().AX_NAME_PATTERN,b6=0,jR=5;function _se(e,t,r,i){var a;if(e=br.getGraphDiv(e),w6.init(e),br.isPlainObject(t)){var s=t;t=s.data,r=s.layout,i=s.config,a=s.frames}var l=w6.triggerHandler(e,"plotly_beforeplot",[t,r,i]);if(l===!1)return Promise.reject();!t&&!r&&!br.isPlotDiv(e)&&br.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function f(){if(a)return Ha.addFrames(e,a)}tF(e,i),r||(r={}),Dx.select(e).classed("js-plotly-plot",!0),x6.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var h=(e.data||[]).length===0&&Array.isArray(t);Array.isArray(t)&&(Dn.cleanData(t),h?e.data=t:e.data.push.apply(e.data,t),e.empty=!1),(!e.layout||h)&&(e.layout=Dn.cleanLayout(r)),ta.supplyDefaults(e);var v=e._fullLayout,m=v._has("cartesian");v._replotting=!0,(h||v._shouldCreateBgLayer)&&(Vse(e),v._shouldCreateBgLayer&&delete v._shouldCreateBgLayer),x6.initGradients(e),x6.initPatterns(e),h&&ls.saveShowSpikeInitial(e);var _=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;_&&ta.doCalcdata(e);for(var T=0;T=e.data.length||a<-e.data.length)throw new Error(r+" must be valid indices for gd.data.");if(t.indexOf(a,i+1)>-1||a>=0&&t.indexOf(-e.data.length+a)>-1||a<0&&t.indexOf(e.data.length+a)>-1)throw new Error("each index in "+r+" must be unique.")}}function rF(e,t,r){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(t)||(t=[t]),zx(e,t,"currentIndices"),typeof r!="undefined"&&!Array.isArray(r)&&(r=[r]),typeof r!="undefined"&&zx(e,r,"newIndices"),typeof r!="undefined"&&t.length!==r.length)throw new Error("current and new indices must be of equal length.")}function Ase(e,t,r){var i,a;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("traces must be defined.");for(Array.isArray(t)||(t=[t]),i=0;i=0&&m<_.length?_.splice(0,_.length-m):[];return[_,T]}var s=aF(e,t,r,i,a),l=Ha.redraw(e),f=[e,s.update,r,s.maxPoints];return _s.add(e,Ha.prependTraces,f,nF,arguments),l}function oF(e,t,r,i){e=br.getGraphDiv(e);function a(h,v,m){var _,T;if(br.isTypedArray(h))if(m<=0){var S=new h.constructor(0),C=iF(v,h);m<0?(_=C,T=S):(_=S,T=C)}else if(_=new h.constructor(m),T=new h.constructor(h.length+v.length-m),m===v.length)_.set(v),T.set(h);else if(m=0&&m<_.length?_.splice(m,_.length):[];return[_,T]}var s=aF(e,t,r,i,a),l=Ha.redraw(e),f=[e,s.update,r,s.maxPoints];return _s.add(e,Ha.extendTraces,f,oF,arguments),l}function sF(e,t,r){e=br.getGraphDiv(e);var i=[],a=Ha.deleteTraces,s=sF,l=[e,i],f=[e,t],h,v;for(Ase(e,t,r),Array.isArray(t)||(t=[t]),t=t.map(function(m){return br.extendFlat({},m)}),Dn.cleanData(t),h=0;h0&&typeof W.parts[ne]!="string";)ne--;var oe=W.parts[ne],fe=W.parts[ne-1]+"."+oe,he=W.parts.slice(0,ne).join("."),ke=Bi(e.layout,he).get(),Se=Bi(i,he).get(),Ae=W.get();if(J!==void 0){z[V]=J,B[V]=oe==="reverse"?J:Cc(Ae);var xe=Nx.getLayoutValObject(i,W.parts);if(xe&&xe.impliedEdits&&J!==null)for(var be in xe.impliedEdits)q(br.relativeAttr(V,be),xe.impliedEdits[be]);if(["width","height"].indexOf(V)!==-1)if(J){q("autosize",null);var Me=V==="height"?"width":"height";q(Me,i[Me])}else i[V]=e._initialAutoSize[V];else if(V==="autosize")q("width",J?null:i.width),q("height",J?null:i.height);else if(fe.match(cF))H(fe),Bi(i,he+"._inputRange").set(null);else if(fe.match(hF)){H(fe),Bi(i,he+"._inputRange").set(null);var Le=Bi(i,he).get();Le._inputDomain&&(Le._input.domain=Le._inputDomain.slice())}else fe.match(Cse)&&Bi(i,he+"._inputDomain").set(null);if(oe==="type"){O=ke;var je=Se.type==="linear"&&J==="log",lt=Se.type==="log"&&J==="linear";if(je||lt){if(!O||!O.range)q(he+".autorange",!0);else if(Se.autorange)je&&(O.range=O.range[1]>O.range[0]?[1,2]:[2,1]);else{var at=O.range[0],gt=O.range[1];je?(at<=0&><=0&&q(he+".autorange",!0),at<=0?at=gt/1e6:gt<=0&&(gt=at/1e6),q(he+".range[0]",Math.log(at)/Math.LN10),q(he+".range[1]",Math.log(gt)/Math.LN10)):(q(he+".range[0]",Math.pow(10,at)),q(he+".range[1]",Math.pow(10,gt)))}Array.isArray(i._subplots.polar)&&i._subplots.polar.length&&i[W.parts[0]]&&W.parts[1]==="radialaxis"&&delete i[W.parts[0]]._subplot.viewInitial["radialaxis.range"],au.getComponentMethod("annotations","convertCoords")(e,Se,J,q),au.getComponentMethod("images","convertCoords")(e,Se,J,q)}else q(he+".autorange",!0),q(he+".range",null);Bi(i,he+"._inputRange").set(null)}else if(oe.match(gse)){var Ye=Bi(i,V).get(),St=(J||{}).type;(!St||St==="-")&&(St="linear"),au.getComponentMethod("annotations","convertCoords")(e,Ye,St,q),au.getComponentMethod("images","convertCoords")(e,Ye,St,q)}var it=Ex.containerArrayMatch(V);if(it){m=it.array,_=it.index;var mt=it.property,bt=xe||{editType:"calc"};_!==""&&mt===""&&(Ex.isAddVal(J)?B[V]=null:Ex.isRemoveVal(J)?B[V]=(Bi(r,m).get()||[])[_]:br.warn("unrecognized full object value",t)),Yh.update(L,bt),v[m]||(v[m]={});var vt=v[m][_];vt||(vt=v[m][_]={}),vt[mt]=J,delete t[V]}else oe==="reverse"?(ke.range?ke.range.reverse():(q(he+".autorange",!0),ke.range=[1,0]),Se.autorange?L.calc=!0:L.plot=!0):(V==="dragmode"&&(J===!1&&Ae!==!1||J!==!1&&Ae===!1)||i._has("scatter-like")&&i._has("regl")&&V==="dragmode"&&(J==="lasso"||J==="select")&&!(Ae==="lasso"||Ae==="select")?L.plot=!0:xe?Yh.update(L,xe):L.calc=!0,W.set(J))}}for(m in v){var de=Ex.applyContainerArrayChanges(e,s(r,m),v[m],L,s);de||(L.plot=!0)}for(var De in I){O=ls.getFromId(e,De);var ge=O&&O._constraintGroup;if(ge){L.calc=!0;for(var rt in ge)I[rt]||(ls.getFromId(e,rt)._constraintShrinkable=!0)}}(dF(e)||t.height||t.width)&&(L.plot=!0);var dt=i.shapes;for(_=0;_1;)if(i.pop(),r=Bi(t,i.join(".")+".uirevision").get(),r!==void 0)return r;return t.uirevision}function Dse(e,t){for(var r=0;r[he,e._ev.listeners(he)]);s=Ha.newPlot(e,t,r,i).then(()=>{for(let[he,ke]of fe)ke.forEach(Se=>e.on(he,Se));return Ha.react(e,t,r,i)})}else{e.data=t||[],Dn.cleanData(e.data),e.layout=r||{},Dn.cleanLayout(e.layout),zse(e.data,e.layout,f,h),ta.supplyDefaults(e,{skipUpdateCalc:!0});var _=e._fullData,T=e._fullLayout,S=T.datarevision===void 0,C=T.transition,E=Fse(e,h,T,S,C),L=E.newDataRevision,z=Rse(e,f,_,S,C,L);if(dF(e)&&(E.layoutReplot=!0),z.calc||E.calc){e.calcdata=void 0;for(var B=Object.getOwnPropertyNames(T),q=0;q(m||e.emit("plotly_react",{config:i,data:t,layout:r}),e))}function Rse(e,t,r,i,a,s){var l=t.length===r.length;if(!a&&!l)return{fullReplot:!0,calc:!0};var f=Yh.traceFlags();f.arrays={},f.nChanges=0,f.nChangesAnim=0;var h,v;function m(S){var C=Nx.getTraceValObject(v,S);return!v._module.animatable&&C.anim&&(C.anim=!1),C}var _={getValObject:m,flags:f,immutable:i,transition:a,newDataRevision:s,gd:e},T={};for(h=0;h=a.length?a[0]:a[v]:a}function f(v){return Array.isArray(s)?v>=s.length?s[0]:s[v]:s}function h(v,m){var _=0;return function(){if(v&&++_===m)return v()}}return new Promise(function(v,m){function _(){if(i._frameQueue.length!==0){for(;i._frameQueue.length;){var oe=i._frameQueue.pop();oe.onInterrupt&&oe.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function T(oe){if(oe.length!==0){for(var fe=0;fei._timeToNext&&C()};oe()}var L=0;function z(oe){return Array.isArray(a)?L>=a.length?oe.transitionOpts=a[L]:oe.transitionOpts=a[0]:oe.transitionOpts=a,L++,oe}var B,q,I=[],O=t==null,H=Array.isArray(t),V=!O&&!H&&br.isPlainObject(t);if(V)I.push({type:"object",data:z(br.extendFlat({},t))});else if(O||["string","number"].indexOf(typeof t)!==-1)for(B=0;B0&&tete)&&ne.push(q);I=ne}}I.length>0?T(I):(e.emit("plotly_animated"),v())})}function Nse(e,t,r){if(e=br.getGraphDiv(e),t==null)return Promise.resolve();if(!br.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var i,a,s,l,f=e._transitionData._frames,h=e._transitionData._frameHash;if(!Array.isArray(t))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+t);var v=f.length+t.length*2,m=[],_={};for(i=t.length-1;i>=0;i--)if(br.isPlainObject(t[i])){var T=t[i].name,S=(h[T]||_[T]||{}).name,C=t[i].name,E=h[S]||_[S];S&&C&&typeof C=="number"&&E&&b6W.index?-1:V.index=0;i--){if(a=m[i].frame,typeof a.name=="number"&&br.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!a.name)for(;h[a.name="frame "+e._transitionData._counter++];);if(h[a.name]){for(s=0;s=0;r--)i=t[r],s.push({type:"delete",index:i}),l.unshift({type:"insert",index:i,value:a[i]});var f=ta.modifyFrames,h=ta.modifyFrames,v=[e,l],m=[e,s];return _s&&_s.add(e,f,v,h,m),ta.modifyFrames(e,s)}function Ose(e){e=br.getGraphDiv(e);var t=e._fullLayout||{},r=e._fullData||[];return ta.cleanPlot([],{},r,t),ta.purge(e),w6.purge(e),t._container&&t._container.remove(),delete e._context,e}function Use(e){var t=e._fullLayout,r=e.getBoundingClientRect();if(!br.equalDomRects(r,t._lastBBox)){var i=t._invTransform=br.inverseTransformMatrix(br.getFullTransformMatrix(e));t._invScaleX=Math.sqrt(i[0][0]*i[0][0]+i[0][1]*i[0][1]+i[0][2]*i[0][2]),t._invScaleY=Math.sqrt(i[1][0]*i[1][0]+i[1][1]*i[1][1]+i[1][2]*i[1][2]),t._lastBBox=r}}function Vse(e){var t=Dx.select(e),r=e._fullLayout;if(r._calcInverseTransform=Use,r._calcInverseTransform(e),r._container=t.selectAll(".plot-container").data([0]),r._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),r._paperdiv=r._container.selectAll(".svg-container").data([0]),r._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),r._glcontainer=r._paperdiv.selectAll(".gl-container").data([{}]),r._glcontainer.enter().append("div").classed("gl-container",!0),r._paperdiv.selectAll(".main-svg").remove(),r._paperdiv.select(".modebar-container").remove(),r._paper=r._paperdiv.insert("svg",":first-child").classed("main-svg",!0),r._toppaper=r._paperdiv.append("svg").classed("main-svg",!0),r._modebardiv=r._paperdiv.append("div"),delete r._modeBar,r._hoverpaper=r._paperdiv.append("svg").classed("main-svg",!0),!r._uid){var i={};Dx.selectAll("defs").each(function(){this.id&&(i[this.id.split("-")[1]]=1)}),r._uid=br.randstr(i)}r._paperdiv.selectAll(".main-svg").attr(mse.svgAttrs),r._defs=r._paper.append("defs").attr("id","defs-"+r._uid),r._clips=r._defs.append("g").classed("clips",!0),r._topdefs=r._toppaper.append("defs").attr("id","topdefs-"+r._uid),r._topclips=r._topdefs.append("g").classed("clips",!0),r._bgLayer=r._paper.append("g").classed("bglayer",!0),r._draggers=r._paper.append("g").classed("draglayer",!0);var a=r._paper.append("g").classed("layer-below",!0);r._imageLowerLayer=a.append("g").classed("imagelayer",!0),r._shapeLowerLayer=a.append("g").classed("shapelayer",!0),r._cartesianlayer=r._paper.append("g").classed("cartesianlayer",!0),r._polarlayer=r._paper.append("g").classed("polarlayer",!0),r._smithlayer=r._paper.append("g").classed("smithlayer",!0),r._ternarylayer=r._paper.append("g").classed("ternarylayer",!0),r._geolayer=r._paper.append("g").classed("geolayer",!0),r._funnelarealayer=r._paper.append("g").classed("funnelarealayer",!0),r._pielayer=r._paper.append("g").classed("pielayer",!0),r._iciclelayer=r._paper.append("g").classed("iciclelayer",!0),r._treemaplayer=r._paper.append("g").classed("treemaplayer",!0),r._sunburstlayer=r._paper.append("g").classed("sunburstlayer",!0),r._indicatorlayer=r._toppaper.append("g").classed("indicatorlayer",!0),r._glimages=r._paper.append("g").classed("glimages",!0);var s=r._toppaper.append("g").classed("layer-above",!0);r._imageUpperLayer=s.append("g").classed("imagelayer",!0),r._shapeUpperLayer=s.append("g").classed("shapelayer",!0),r._selectionLayer=r._toppaper.append("g").classed("selectionlayer",!0),r._infolayer=r._toppaper.append("g").classed("infolayer",!0),r._menulayer=r._toppaper.append("g").classed("menulayer",!0),r._zoomlayer=r._toppaper.append("g").classed("zoomlayer",!0),r._hoverlayer=r._hoverpaper.append("g").classed("hoverlayer",!0),r._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}Ha.animate=qse;Ha.addFrames=Nse;Ha.deleteFrames=Bse;Ha.addTraces=sF;Ha.deleteTraces=lF;Ha.extendTraces=nF;Ha.moveTraces=T6;Ha.prependTraces=oF;Ha.newPlot=Tse;Ha._doPlot=_se;Ha.purge=Ose;Ha.react=Ise;Ha.redraw=wse;Ha.relayout=qg;Ha.restyle=Ix;Ha.setPlotConfig=xse;Ha.update=Fx;Ha._guiRelayout=A6(qg);Ha._guiRestyle=A6(Ix);Ha._guiUpdate=A6(Fx);Ha._storeDirectGUIEdit=kse});var Pd=pe(Bf=>{"use strict";var Hse=sa();Bf.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Bf.getRedrawFunc=function(e){return function(){Hse.getComponentMethod("colorbar","draw")(e)}};Bf.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Bf.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var pF=window.URL||window.webkitURL;Bf.createObjectURL=function(e){return pF.createObjectURL(e)};Bf.revokeObjectURL=function(e){return pF.revokeObjectURL(e)};Bf.createBlob=function(e,t){if(t==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(t==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var r=Gse(window.atob(e));return new window.Blob([r],{type:"image/"+t})};Bf.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function Gse(e){for(var t=e.length,r=new ArrayBuffer(t),i=new Uint8Array(r),a=0;a{"use strict";var k6=ja(),a2e=Bt(),Zse=xi(),Yse=Oa(),i2e=zh(),S6=/"/g,Bg="TOBESTRIPPED",Wse=new RegExp('("'+Bg+")|("+Bg+'")',"g");function Xse(e){var t=k6.select("body").append("div").style({display:"none"}).html(""),r=e.replace(/(&[^;]*;)/gi,function(i){return i==="<"?"<":i==="&rt;"?">":i.indexOf("<")!==-1||i.indexOf(">")!==-1?"":t.html(i).text()});return t.remove(),r}function jse(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}mF.exports=function(t,r,i){var a=t._fullLayout,s=a._paper,l=a._toppaper,f=a.width,h=a.height,v;s.insert("rect",":first-child").call(Zse.setRect,0,0,f,h).call(Yse.fill,a.paper_bgcolor);var m=a._basePlotModules||[];for(v=0;v{"use strict";var Jse=Bt(),Kse=D_().EventEmitter,Og=Pd();function Qse(e){var t=e.emitter||new Kse,r=new Promise(function(i,a){var s=window.Image,l=e.svg,f=e.format||"png",h=e.canvas,v=e.scale||1,m=e.width||300,_=e.height||150,T=v*m,S=v*_,C=h.getContext("2d",{willReadFrequently:!0}),E=new s,L,z;f==="svg"||Jse.isSafari()?z=Og.encodeSVG(l):(L=Og.createBlob(l,"svg"),z=Og.createObjectURL(L)),h.width=T,h.height=S,E.onload=function(){var B;switch(L=null,Og.revokeObjectURL(z),f!=="svg"&&C.drawImage(E,0,0,T,S),f){case"jpeg":B=h.toDataURL("image/jpeg");break;case"png":B=h.toDataURL("image/png");break;case"webp":B=h.toDataURL("image/webp");break;case"svg":B=z;break;default:var q="Image format is not jpeg, png, svg or webp.";if(a(new Error(q)),!e.promise)return t.emit("error",q)}i(B),e.promise||t.emit("success",B)},E.onerror=function(B){if(L=null,Og.revokeObjectURL(z),a(B),!e.promise)return t.emit("error",B)},E.src=z});return e.promise?r:t}yF.exports=Qse});var E6=pe((s2e,xF)=>{"use strict";var gF=Da(),_F=M6(),$se=eo(),Of=Bt(),Ug=Pd(),ele=Ox(),tle=Ux(),rle=W1().version,C6={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function ale(e,t){t=t||{};var r,i,a,s;Of.isPlainObject(e)?(r=e.data||[],i=e.layout||{},a=e.config||{},s={}):(e=Of.getGraphDiv(e),r=Of.extendDeep([],e.data),i=Of.extendDeep({},e.layout),a=e._context,s=e._fullLayout||{});function l(H){return!(H in t)||Of.validate(t[H],C6[H])}if(!l("width")&&t.width!==null||!l("height")&&t.height!==null)throw new Error("Height and width should be pixel values.");if(!l("format"))throw new Error("Export format is not "+Of.join2(C6.format.values,", "," or ")+".");var f={};function h(H,V){return Of.coerce(t,f,C6,H,V)}var v=h("format"),m=h("width"),_=h("height"),T=h("scale"),S=h("setBackground"),C=h("imageDataOnly"),E=document.createElement("div");E.style.position="absolute",E.style.left="-5000px",document.body.appendChild(E);var L=Of.extendFlat({},i);m?L.width=m:t.width===null&&gF(s.width)&&(L.width=s.width),_?L.height=_:t.height===null&&gF(s.height)&&(L.height=s.height);var z=Of.extendFlat({},a,{_exportedPlot:!0,staticPlot:!0,setBackground:S}),B=Ug.getRedrawFunc(E);function q(){return new Promise(function(H){setTimeout(H,Ug.getDelay(E._fullLayout))})}function I(){return new Promise(function(H,V){var W=ele(E,v,T),J=E._fullLayout.width,te=E._fullLayout.height;function ne(){_F.purge(E),document.body.removeChild(E)}if(v==="full-json"){var oe=$se.graphJson(E,!1,"keepdata","object",!0,!0);return oe.version=rle,oe=JSON.stringify(oe),ne(),H(C?oe:Ug.encodeJSON(oe))}if(ne(),v==="svg")return H(C?W:Ug.encodeSVG(W));var fe=document.createElement("canvas");fe.id=Of.randstr(),tle({format:v,width:J,height:te,scale:T,canvas:fe,svg:W,promise:!0}).then(H).catch(V)})}function O(H){return C?H.replace(Ug.IMAGE_URL_PREFIX,""):H}return new Promise(function(H,V){_F.newPlot(E,r,L,z).then(B).then(q).then(I).then(function(W){H(O(W))}).catch(function(W){V(W)})})}xF.exports=ale});var TF=pe((l2e,wF)=>{"use strict";var iu=Bt(),ile=eo(),nle=k0(),ole=ad().dfltConfig,Uu=iu.isPlainObject,Id=Array.isArray,L6=iu.isArrayOrTypedArray;wF.exports=function(t,r){t===void 0&&(t=[]),r===void 0&&(r={});var i=nle.get(),a=[],s={_context:iu.extendFlat({},ole)},l,f;Id(t)?(s.data=iu.extendDeep([],t),l=t):(s.data=[],l=[],a.push(no("array","data"))),Uu(r)?(s.layout=iu.extendDeep({},r),f=r):(s.layout={},f={},arguments.length>1&&a.push(no("object","layout"))),ile.supplyDefaults(s);for(var h=s._fullData,v=l.length,m=0;m_.length&&i.push(no("unused",a,v.concat(_.length)));var z=_.length,B=Array.isArray(L);B&&(z=Math.min(z,L.length));var q,I,O,H,V;if(T.dimensions===2)for(I=0;I_[I].length&&i.push(no("unused",a,v.concat(I,_[I].length)));var W=_[I].length;for(q=0;q<(B?Math.min(W,L[I].length):W);q++)O=B?L[I][q]:L,H=m[I][q],V=_[I][q],iu.validate(H,O)?V!==H&&V!==+H&&i.push(no("dynamic",a,v.concat(I,q),H,V)):i.push(no("value",a,v.concat(I,q),H))}else i.push(no("array",a,v.concat(I),m[I]));else for(I=0;I{"use strict";var vle=Bt(),Hx=Pd();function dle(e,t,r){var i=document.createElement("a"),a="download"in i,s=new Promise(function(l,f){var h,v;if(a)return h=Hx.createBlob(e,r),v=Hx.createObjectURL(h),i.href=v,i.download=t,document.body.appendChild(i),i.click(),document.body.removeChild(i),Hx.revokeObjectURL(v),h=null,l(t);if(vle.isSafari()){var m=r==="svg"?",":";base64,";return Hx.octetStream(m+encodeURIComponent(e)),l(t)}f(new Error("download error"))});return s}AF.exports=dle});var D6=pe((c2e,kF)=>{"use strict";var SF=Bt(),ple=E6(),mle=MF(),f2e=Pd();function yle(e,t){var r;return SF.isPlainObject(e)||(r=SF.getGraphDiv(e)),t=t||{},t.format=t.format||"png",t.width=t.width||null,t.height=t.height||null,t.imageDataOnly=!0,new Promise(function(i,a){r&&r._snapshotInProgress&&a(new Error("Snapshotting already in progress.")),r&&(r._snapshotInProgress=!0);var s=ple(e,t),l=t.filename||e.fn||"newplot";l+="."+t.format.replace("-","."),s.then(function(f){return r&&(r._snapshotInProgress=!1),mle(f,l,t.format)}).then(function(f){i(f)}).catch(function(f){r&&(r._snapshotInProgress=!1),a(f)})})}kF.exports=yle});var PF=pe(P6=>{"use strict";var Hs=Bt(),Gs=Hs.isPlainObject,CF=k0(),EF=eo(),gle=ys(),LF=Ii(),DF=ad().dfltConfig;P6.makeTemplate=function(e){e=Hs.isPlainObject(e)?e:Hs.getGraphDiv(e),e=Hs.extendDeep({_context:DF},{data:e.data,layout:e.layout}),EF.supplyDefaults(e);var t=e.data||[],r=e.layout||{};r._basePlotModules=e._fullLayout._basePlotModules,r._modules=e._fullLayout._modules;var i={data:{},layout:{}};t.forEach(function(S){var C={};Vg(S,C,xle.bind(null,S));var E=Hs.coerce(S,{},gle,"type"),L=i.data[E];L||(L=i.data[E]=[]),L.push(C)}),Vg(r,i.layout,_le.bind(null,r)),delete i.layout.template;var a=r.template;if(Gs(a)){var s=a.layout,l,f,h,v,m,_;Gs(s)&&Gx(s,i.layout);var T=a.data;if(Gs(T)){for(f in i.data)if(h=T[f],Array.isArray(h)){for(m=i.data[f],_=m.length,v=h.length,l=0;l<_;l++)Gx(h[l%v],m[l]);for(l=_;lz?l.push({code:"unused",traceType:S,templateCount:L,dataCount:z}):z>L&&l.push({code:"reused",traceType:S,templateCount:L,dataCount:z})}}function B(q,I){for(var O in q)if(O.charAt(0)!=="_"){var H=q[O],V=nu(q,O,I);Gs(H)?(Array.isArray(q)&&H._template===!1&&H.templateitemname&&l.push({code:"missing",path:V,templateitemname:H.templateitemname}),B(H,V)):Array.isArray(H)&&ble(H)&&B(H,V)}}if(B({data:h,layout:f},""),l.length)return l.map(wle)};function ble(e){for(var t=0;t{"use strict";var Jn=M6();Ji._doPlot=Jn._doPlot;Ji.newPlot=Jn.newPlot;Ji.restyle=Jn.restyle;Ji.relayout=Jn.relayout;Ji.redraw=Jn.redraw;Ji.update=Jn.update;Ji._guiRestyle=Jn._guiRestyle;Ji._guiRelayout=Jn._guiRelayout;Ji._guiUpdate=Jn._guiUpdate;Ji._storeDirectGUIEdit=Jn._storeDirectGUIEdit;Ji.react=Jn.react;Ji.extendTraces=Jn.extendTraces;Ji.prependTraces=Jn.prependTraces;Ji.addTraces=Jn.addTraces;Ji.deleteTraces=Jn.deleteTraces;Ji.moveTraces=Jn.moveTraces;Ji.purge=Jn.purge;Ji.addFrames=Jn.addFrames;Ji.deleteFrames=Jn.deleteFrames;Ji.animate=Jn.animate;Ji.setPlotConfig=Jn.setPlotConfig;var Tle=Iy().getGraphDiv,Ale=ex().eraseActiveShape;Ji.deleteActiveShape=function(e){return Ale(Tle(e))};Ji.toImage=E6();Ji.validate=TF();Ji.downloadImage=D6();var zF=PF();Ji.makeTemplate=zF.makeTemplate;Ji.validateTemplate=zF.validateTemplate});var FF=pe((d2e,RF)=>{"use strict";var z6=Bt(),Mle=sa();RF.exports=function(t,r,i,a){var s=a("x"),l=a("y"),f,h=Mle.getComponentMethod("calendars","handleTraceDefaults");if(h(t,r,["x","y"],i),s){var v=z6.minRowLength(s);l?f=Math.min(v,z6.minRowLength(l)):(f=v,a("y0"),a("dy"))}else{if(!l)return 0;f=z6.minRowLength(l),a("x0"),a("dx")}return r._length=f,f}});var OF=pe((p2e,BF)=>{"use strict";var qF=Bt().dateTick0,Sle=Zi(),kle=Sle.ONEWEEK;function NF(e,t){return e%kle===0?qF(t,1):qF(t,0)}BF.exports=function(t,r,i,a,s){if(s||(s={x:!0,y:!0}),s.x){var l=a("xperiod");l&&(a("xperiod0",NF(l,r.xcalendar)),a("xperiodalignment"))}if(s.y){var f=a("yperiod");f&&(a("yperiod0",NF(f,r.ycalendar)),a("yperiodalignment"))}}});var HF=pe((m2e,VF)=>{"use strict";var UF=["orientation","groupnorm","stackgaps"];VF.exports=function(t,r,i,a){var s=i._scatterStackOpts,l=a("stackgroup");if(l){var f=r.xaxis+r.yaxis,h=s[f];h||(h=s[f]={});var v=h[l],m=!1;v?v.traces.push(r):(v=h[l]={traceIndices:[],traces:[r]},m=!0);for(var _={orientation:r.x&&!r.y?"h":"v"},T=0;T{"use strict";var GF=Oa(),ZF=kf().hasColorscale,YF=vd(),Cle=rs();WF.exports=function(t,r,i,a,s,l){var f=Cle.isBubble(t),h=(t.line||{}).color,v;if(l=l||{},h&&(i=h),s("marker.symbol"),s("marker.opacity",f?.7:1),s("marker.size"),l.noAngle||(s("marker.angle"),l.noAngleRef||s("marker.angleref"),l.noStandOff||s("marker.standoff")),s("marker.color",i),ZF(t,"marker")&&YF(t,r,a,s,{prefix:"marker.",cLetter:"c"}),l.noSelect||(s("selected.marker.color"),s("unselected.marker.color"),s("selected.marker.size"),s("unselected.marker.size")),l.noLine||(h&&!Array.isArray(h)&&r.marker.color!==h?v=h:f?v=GF.background:v=GF.defaultLine,s("marker.line.color",v),ZF(t,"marker.line")&&YF(t,r,a,s,{prefix:"marker.line.",cLetter:"c"}),s("marker.line.width",f?1:0)),f&&(s("marker.sizeref"),s("marker.sizemin"),s("marker.sizemode")),l.gradient){var m=s("marker.gradient.type");m!=="none"&&s("marker.gradient.color")}}});var R6=pe((g2e,XF)=>{"use strict";var Ele=Bt().isArrayOrTypedArray,Lle=kf().hasColorscale,Dle=vd();XF.exports=function(t,r,i,a,s,l){l||(l={});var f=(t.marker||{}).color;if(f&&f._inputArray&&(f=f._inputArray),s("line.color",i),Lle(t,"line"))Dle(t,r,a,s,{prefix:"line.",cLetter:"c"});else{var h=(Ele(f)?!1:f)||i;s("line.color",h)}s("line.width"),l.noDash||s("line.dash"),l.backoff&&s("line.backoff")}});var JF=pe((_2e,jF)=>{"use strict";jF.exports=function(t,r,i){var a=i("line.shape");a==="spline"&&i("line.smoothing")}});var F6=pe((x2e,KF)=>{"use strict";var Ple=Bt();KF.exports=function(e,t,r,i,a){a=a||{},i("textposition"),Ple.coerceFont(i,"textfont",a.font||r.font,a),a.noSelect||(i("selected.textfont.color"),i("unselected.textfont.color"))}});var q6=pe((b2e,$F)=>{"use strict";var Yx=Oa(),QF=Bt().isArrayOrTypedArray;function zle(e){for(var t=Yx.interpolate(e[0][1],e[1][1],.5),r=2;r{"use strict";var eq=Bt(),Ile=sa(),Rle=kc(),Fle=gx(),am=rs(),qle=FF(),Nle=OF(),Ble=HF(),Ole=I6(),Ule=R6(),tq=JF(),Vle=F6(),Hle=q6(),Gle=Bt().coercePattern;rq.exports=function(t,r,i,a){function s(S,C){return eq.coerce(t,r,Rle,S,C)}var l=qle(t,r,a,s);if(l||(r.visible=!1),!!r.visible){Nle(t,r,a,s),s("xhoverformat"),s("yhoverformat"),s("zorder");var f=Ble(t,r,a,s);a.scattermode==="group"&&r.orientation===void 0&&s("orientation","v");var h=!f&&l{"use strict";var Zle=dg().getAxisGroup;iq.exports=function(t,r,i,a,s){var l=r.orientation,f=r[{v:"x",h:"y"}[l]+"axis"],h=Zle(i,f)+l,v=i._alignmentOpts||{},m=a("alignmentgroup"),_=v[h];_||(_=v[h]={});var T=_[m];T?T.traces.push(r):T=_[m]={traces:[r],alignmentIndex:Object.keys(_).length,offsetGroups:{}};var S=a("offsetgroup")||"",C=T.offsetGroups,E=C[S];r._offsetIndex=0,(s!=="group"||S)&&(E||(E=C[S]={offsetIndex:Object.keys(C).length}),r._offsetIndex=E.offsetIndex)}});var sq=pe((A2e,oq)=>{"use strict";var Yle=Bt(),Wle=nq(),Xle=kc();oq.exports=function(t,r){var i,a,s,l=r.scattermode;function f(T){return Yle.coerce(a._input,a,Xle,T)}if(r.scattermode==="group")for(s=0;s=0;m--){var _=t[m];if(_.type==="scatter"&&_.xaxis===h.xaxis&&_.yaxis===h.yaxis){_.opacity=void 0;break}}}}}});var uq=pe((M2e,lq)=>{"use strict";var jle=Bt(),Jle=F_();lq.exports=function(e,t){function r(a,s){return jle.coerce(e,t,Jle,a,s)}var i=t.barmode==="group";t.scattermode==="group"&&r("scattergap",i?t.bargap:.2)}});var hq=pe((S2e,cq)=>{"use strict";var Kle=Da(),fq=Bt(),Qle=fq.dateTime2ms,Wx=fq.incrementMonth,$le=Zi(),eue=$le.ONEAVGMONTH;cq.exports=function(t,r,i,a){if(r.type!=="date")return{vals:a};var s=t[i+"periodalignment"];if(!s)return{vals:a};var l=t[i+"period"],f;if(Kle(l)){if(l=+l,l<=0)return{vals:a}}else if(typeof l=="string"&&l.charAt(0)==="M"){var h=+l.substring(1);if(h>0&&Math.round(h)===h)f=h;else return{vals:a}}for(var v=r.calendar,m=s==="start",_=s==="end",T=t[i+"period0"],S=Qle(T,v)||0,C=[],E=[],L=[],z=a.length,B=0;Bq;)H=Wx(H,-f,v);for(;H<=q;)H=Wx(H,f,v);O=Wx(H,-f,v)}else{for(I=Math.round((q-S)/l),H=S+I*l;H>q;)H-=l;for(;H<=q;)H+=l;O=H-l}C[B]=m?O:_?H:(O+H)/2,E[B]=O,L[B]=H}return{vals:C,starts:E,ends:L}}});var O6=pe((k2e,dq)=>{"use strict";var N6=kf().hasColorscale,B6=Xy(),vq=rs();dq.exports=function(t,r){vq.hasLines(r)&&N6(r,"line")&&B6(t,r,{vals:r.line.color,containerStr:"line",cLetter:"c"}),vq.hasMarkers(r)&&(N6(r,"marker")&&B6(t,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),N6(r,"marker.line")&&B6(t,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var Hg=pe((C2e,pq)=>{"use strict";var yn=Bt();pq.exports=function(t,r){for(var i=0;i{"use strict";var mq=Bt();yq.exports=function(t,r){mq.isArrayOrTypedArray(r.selectedpoints)&&mq.tagSelected(t,r)}});var Z6=pe((L2e,Aq)=>{"use strict";var gq=Da(),V6=Bt(),Gg=Xi(),_q=hq(),U6=Zi().BADNUM,H6=rs(),tue=O6(),rue=Hg(),aue=Xx();function iue(e,t){var r=e._fullLayout,i=t._xA=Gg.getFromId(e,t.xaxis||"x","x"),a=t._yA=Gg.getFromId(e,t.yaxis||"y","y"),s=i.makeCalcdata(t,"x"),l=a.makeCalcdata(t,"y"),f=_q(t,i,"x",s),h=_q(t,a,"y",l),v=f.vals,m=h.vals,_=t._length,T=new Array(_),S=t.ids,C=G6(t,r,i,a),E=!1,L,z,B,q,I,O;wq(r,t);var H="x",V="y",W;if(C)V6.pushUnique(C.traceIndices,t.index),L=C.orientation==="v",L?(V="s",W="x"):(H="s",W="y"),I=C.stackgaps==="interpolate";else{var J=bq(t,_);xq(e,t,i,a,v,m,J)}var te=!!t.xperiodalignment,ne=!!t.yperiodalignment;for(z=0;z<_;z++){var oe=T[z]={},fe=gq(v[z]),he=gq(m[z]);fe&&he?(oe[H]=v[z],oe[V]=m[z],te&&(oe.orig_x=s[z],oe.xEnd=f.ends[z],oe.xStart=f.starts[z]),ne&&(oe.orig_y=l[z],oe.yEnd=h.ends[z],oe.yStart=h.starts[z])):C&&(L?fe:he)?(oe[W]=L?v[z]:m[z],oe.gap=!0,I?(oe.s=U6,E=!0):oe.s=0):oe[H]=oe[V]=U6,S&&(oe.id=String(S[z]))}if(rue(T,t),tue(e,t),aue(T,t),C){for(z=0;zz&&T[q].gap;)q--;for(O=T[q].s,B=T.length-1;B>q;B--)T[B].s=O;for(;z{"use strict";Mq.exports=jx;var nue=Bt().distinctVals;function jx(e,t){this.traces=e,this.sepNegVal=t.sepNegVal,this.overlapNoMerge=t.overlapNoMerge;for(var r=1/0,i=t.posAxis._id.charAt(0),a=[],s=0;s{"use strict";var ou=Da(),Wh=Bt().isArrayOrTypedArray,im=Zi().BADNUM,oue=sa(),Zg=Xi(),sue=dg().getAxisGroup,Jx=Sq();function lue(e,t){for(var r=t.xaxis,i=t.yaxis,a=e._fullLayout,s=e._fullData,l=e.calcdata,f=[],h=[],v=0;vh+l||!ou(f))}for(var m=0;m{"use strict";var Pq=Z6(),zq=Dq().setGroupPositions;function xue(e,t){for(var r=t.xaxis,i=t.yaxis,a=e._fullLayout,s=e._fullData,l=e.calcdata,f=[],h=[],v=0;vJ[m]&&m{"use strict";var wue=xi(),Bq=Zi(),Yg=Bq.BADNUM,Oq=Bq.LOG_CLIP,Fq=Oq+.5,qq=Oq-.5,Kx=Bt(),Tue=Kx.segmentsIntersect,Nq=Kx.constrain,K6=gx();Uq.exports=function(t,r){var i=r.trace||{},a=r.xaxis,s=r.yaxis,l=a.type==="log",f=s.type==="log",h=a._length,v=s._length,m=r.backoff,_=i.marker,T=r.connectGaps,S=r.baseTolerance,C=r.shape,E=C==="linear",L=i.fill&&i.fill!=="none",z=[],B=K6.minTolerance,q=t.length,I=new Array(q),O=0,H,V,W,J,te,ne,oe,fe,he,ke,Se,Ae,xe,be,Me,Le;function je(Lt){var Fe=t[Lt];if(!Fe)return!1;var Ue=r.linearized?a.l2p(Fe.x):a.c2p(Fe.x),xt=r.linearized?s.l2p(Fe.y):s.c2p(Fe.y);if(Ue===Yg){if(l&&(Ue=a.c2p(Fe.x,!0)),Ue===Yg)return!1;f&&xt===Yg&&(Ue*=Math.abs(a._m*v*(a._m>0?Fq:qq)/(s._m*h*(s._m>0?Fq:qq)))),Ue*=1e3}if(xt===Yg){if(f&&(xt=s.c2p(Fe.y,!0)),xt===Yg)return!1;xt*=1e3}return[Ue,xt]}function lt(Lt,Fe,Ue,xt){var wt=Ue-Lt,mr=xt-Fe,Ar=.5-Lt,Mr=.5-Fe,Gr=wt*wt+mr*mr,pa=wt*Ar+mr*Mr;if(pa>0&&pa1||Math.abs(Ar.y-Ue[0][1])>1)&&(Ar=[Ar.x,Ar.y],xt&&St(Ar,Lt)bt||Lt[1]de)return[Nq(Lt[0],mt,bt),Nq(Lt[1],vt,de)]}function Ut(Lt,Fe){if(Lt[0]===Fe[0]&&(Lt[0]===mt||Lt[0]===bt)||Lt[1]===Fe[1]&&(Lt[1]===vt||Lt[1]===de))return!0}function Ct(Lt,Fe){var Ue=[],xt=Rt(Lt),wt=Rt(Fe);return xt&&wt&&Ut(xt,wt)||(xt&&Ue.push(xt),wt&&Ue.push(wt)),Ue}function At(Lt,Fe,Ue){return function(xt,wt){var mr=Rt(xt),Ar=Rt(wt),Mr=[];if(mr&&Ar&&Ut(mr,Ar))return Mr;mr&&Mr.push(mr),Ar&&Mr.push(Ar);var Gr=2*Kx.constrain((xt[Lt]+wt[Lt])/2,Fe,Ue)-((mr||xt)[Lt]+(Ar||wt)[Lt]);if(Gr){var pa;mr&&Ar?pa=Gr>0==mr[Lt]>Ar[Lt]?mr:Ar:pa=mr||Ar,pa[Lt]+=Gr}return Mr}}var Vt;C==="linear"||C==="spline"?Vt=Tt:C==="hv"||C==="vh"?Vt=Ct:C==="hvh"?Vt=At(0,mt,bt):C==="vhv"&&(Vt=At(1,vt,de));function Ht(Lt,Fe){var Ue=Fe[0]-Lt[0],xt=(Fe[1]-Lt[1])/Ue,wt=(Lt[1]*Fe[0]-Fe[1]*Lt[0])/Ue;return wt>0?[xt>0?mt:bt,de]:[xt>0?bt:mt,vt]}function Be(Lt){var Fe=Lt[0],Ue=Lt[1],xt=Fe===I[O-1][0],wt=Ue===I[O-1][1];if(!(xt&&wt))if(O>1){var mr=Fe===I[O-2][0],Ar=Ue===I[O-2][1];xt&&(Fe===mt||Fe===bt)&&mr?Ar?O--:I[O-1]=Lt:wt&&(Ue===vt||Ue===de)&&Ar?mr?O--:I[O-1]=Lt:I[O++]=Lt}else I[O++]=Lt}function st(Lt){I[O-1][0]!==Lt[0]&&I[O-1][1]!==Lt[1]&&Be([dt,We]),Be(Lt),qt=null,dt=We=0}var sr=Kx.isArrayOrTypedArray(_);function Pr(Lt){if(Lt&&m&&(Lt.i=H,Lt.d=t,Lt.trace=i,Lt.marker=sr?_[Lt.i]:_,Lt.backoff=m),at=Lt[0]/h,gt=Lt[1]/v,ge=Lt[0]bt?bt:0,rt=Lt[1]de?de:0,ge||rt){if(!O)I[O++]=[ge||Lt[0],rt||Lt[1]];else if(qt){var Fe=Vt(qt,Lt);Fe.length>1&&(st(Fe[0]),I[O++]=Fe[1])}else Dt=Vt(I[O-1],Lt)[0],I[O++]=Dt;var Ue=I[O-1];ge&&rt&&(Ue[0]!==ge||Ue[1]!==rt)?(qt&&(dt!==ge&&We!==rt?Be(dt&&We?Ht(qt,Lt):[dt||ge,We||rt]):dt&&We&&Be([dt,We])),Be([ge,rt])):dt-ge&&We-rt&&Be([ge||dt,rt||We]),qt=Lt,dt=ge,We=rt}else qt&&st(Vt(qt,Lt)[0]),I[O++]=Lt}for(H=0;HYe(ne,Et))break;W=ne,xe=he[0]*fe[0]+he[1]*fe[1],xe>Se?(Se=xe,J=ne,oe=!1):xe=t.length||!ne)break;Pr(ne),V=ne}}qt&&Be([dt||qt[0],We||qt[1]]),z.push(I.slice(0,O))}var ct=C.slice(C.length-1);if(m&&ct!=="h"&&ct!=="v"){for(var pt=!1,Ot=-1,er=[],Zt=0;Zt{"use strict";var Hq={tonextx:1,tonexty:1,tonext:1};Gq.exports=function(t,r,i){var a,s,l,f,h,v={},m=!1,_=-1,T=0,S=-1;for(s=0;s=0?h=S:(h=S=T,T++),h<_&&(m=!0),a._groupIndex=_=h;var C=i.slice();m&&C.sort(function(L,z){var B=L[0].trace,q=z[0].trace;return B._groupIndex-q._groupIndex||B.index-q.index});var E={};for(s=0;s{"use strict";var Vu=ja(),Aue=sa(),Wg=Bt(),om=Wg.ensureSingle,Wq=Wg.identity,gn=xi(),sm=rs(),Mue=Vq(),Sue=Zq(),Qx=hx().tester;Xq.exports=function(t,r,i,a,s,l){var f,h,v=!s,m=!!s&&s.duration>0,_=Sue(t,r,i);if(f=a.selectAll("g.trace").data(_,function(S){return S[0].trace.uid}),f.enter().append("g").attr("class",function(S){return"trace scatter trace"+S[0].trace.uid}).style("stroke-miterlimit",2),f.order(),kue(t,f,r),m){l&&(h=l());var T=Vu.transition().duration(s.duration).ease(s.easing).each("end",function(){h&&h()}).each("interrupt",function(){h&&h()});T.each(function(){a.selectAll("g.trace").each(function(S,C){Yq(t,C,r,S,_,this,s)})})}else f.each(function(S,C){Yq(t,C,r,S,_,this,s)});v&&f.exit().remove(),a.selectAll("path:not([d])").remove()};function kue(e,t,r){t.each(function(i){var a=om(Vu.select(this),"g","fills");gn.setClipUrl(a,r.layerClipId,e);var s=i[0].trace,l=[];s._ownfill&&l.push("_ownFill"),s._nexttrace&&l.push("_nextFill");var f=a.selectAll("g").data(l,Wq);f.enter().append("g"),f.exit().each(function(h){s[h]=null}).remove(),f.order().each(function(h){s[h]=om(Vu.select(this),"path","js-fill")})})}function Yq(e,t,r,i,a,s,l){var f=e._context.staticPlot,h;Cue(e,t,r,i,a);var v=!!l&&l.duration>0;function m(At){return v?At.transition():At}var _=r.xaxis,T=r.yaxis,S=i[0].trace,C=S.line,E=Vu.select(s),L=om(E,"g","errorbars"),z=om(E,"g","lines"),B=om(E,"g","points"),q=om(E,"g","text");if(Aue.getComponentMethod("errorbars","plot")(e,L,r,l),S.visible!==!0)return;m(E).style("opacity",S.opacity);var I,O,H=S.fill.charAt(S.fill.length-1);H!=="x"&&H!=="y"&&(H="");var V,W;H==="y"?(V=1,W=T.c2p(0,!0)):H==="x"&&(V=0,W=_.c2p(0,!0)),i[0][r.isRangePlot?"nodeRangePlot3":"node3"]=E;var J="",te=[],ne=S._prevtrace,oe=null,fe=null;ne&&(J=ne._prevRevpath||"",O=ne._nextFill,te=ne._ownPolygons,oe=ne._fillsegments,fe=ne._fillElement);var he,ke,Se="",Ae="",xe,be,Me,Le,je,lt,at=[];S._polygons=[];var gt=[],Ye=[],St=Wg.noop;if(I=S._ownFill,sm.hasLines(S)||S.fill!=="none"){O&&O.datum(i),["hv","vh","hvh","vhv"].indexOf(C.shape)!==-1?(xe=gn.steps(C.shape),be=gn.steps(C.shape.split("").reverse().join(""))):C.shape==="spline"?xe=be=function(At){var Vt=At[At.length-1];return At.length>1&&At[0][0]===Vt[0]&&At[0][1]===Vt[1]?gn.smoothclosed(At.slice(1),C.smoothing):gn.smoothopen(At,C.smoothing)}:xe=be=function(At){return"M"+At.join("L")},Me=function(At){return be(At.reverse())},Ye=Mue(i,{xaxis:_,yaxis:T,trace:S,connectGaps:S.connectgaps,baseTolerance:Math.max(C.width||1,3)/4,shape:C.shape,backoff:C.backoff,simplify:C.simplify,fill:S.fill}),gt=new Array(Ye.length);var it=0;for(h=0;h=f[0]&&E.x<=f[1]&&E.y>=h[0]&&E.y<=h[1]}),T=Math.ceil(_.length/m),S=0;a.forEach(function(E,L){var z=E[0].trace;sm.hasMarkers(z)&&z.marker.maxdisplayed>0&&L{"use strict";Jq.exports={container:"marker",min:"cmin",max:"cmax"}});var Qq=pe((N2e,Kq)=>{"use strict";var $x=Xi();Kq.exports=function(t,r,i){var a={},s={_fullLayout:i},l=$x.getFromTrace(s,r,"x"),f=$x.getFromTrace(s,r,"y"),h=t.orig_x;h===void 0&&(h=t.x);var v=t.orig_y;return v===void 0&&(v=t.y),a.xLabel=$x.tickText(l,l.c2l(h),!0).text,a.yLabel=$x.tickText(f,f.c2l(v),!0).text,a}});var rT=pe((B2e,$q)=>{"use strict";var $6=ja(),lm=xi(),Eue=sa();function Lue(e){var t=$6.select(e).selectAll("g.trace.scatter");t.style("opacity",function(r){return r[0].trace.opacity}),t.selectAll("g.points").each(function(r){var i=$6.select(this),a=r.trace||r[0].trace;eT(i,a,e)}),t.selectAll("g.text").each(function(r){var i=$6.select(this),a=r.trace||r[0].trace;tT(i,a,e)}),t.selectAll("g.trace path.js-line").call(lm.lineGroupStyle),t.selectAll("g.trace path.js-fill").call(lm.fillGroupStyle,e,!1),Eue.getComponentMethod("errorbars","style")(t)}function eT(e,t,r){lm.pointStyle(e.selectAll("path.point"),t,r)}function tT(e,t,r){lm.textPointStyle(e.selectAll("text"),t,r)}function Due(e,t,r){var i=t[0].trace;i.selectedpoints?(lm.selectedPointStyle(r.selectAll("path.point"),i),lm.selectedTextStyle(r.selectAll("text"),i)):(eT(r,i,e),tT(r,i,e))}$q.exports={style:Lue,stylePoints:eT,styleText:tT,styleOnSelect:Due}});var aT=pe((O2e,eN)=>{"use strict";var um=Oa(),Pue=rs();eN.exports=function(t,r){var i,a;if(t.mode==="lines")return i=t.line.color,i&&um.opacity(i)?i:t.fillcolor;if(t.mode==="none")return t.fill?t.fillcolor:"";var s=r.mcc||(t.marker||{}).color,l=r.mlcc||((t.marker||{}).line||{}).color;return a=s&&um.opacity(s)?s:l&&um.opacity(l)&&(r.mlw||((t.marker||{}).line||{}).width)?l:"",a?um.opacity(a)<.3?um.addOpacity(a,.3):a:(i=(t.line||{}).color,i&&um.opacity(i)&&Pue.hasLines(t)&&t.line.width?i:t.fillcolor)}});var aN=pe((U2e,rN)=>{"use strict";var eb=Bt(),tN=Rf(),zue=sa(),Iue=aT(),iT=Oa(),Rue=eb.fillText;rN.exports=function(t,r,i,a){var s=t.cd,l=s[0].trace,f=t.xa,h=t.ya,v=f.c2p(r),m=h.c2p(i),_=[v,m],T=l.hoveron||"",S=l.mode.indexOf("markers")!==-1?3:.5,C=!!l.xperiodalignment,E=!!l.yperiodalignment;if(T.indexOf("points")!==-1){var L=function(Ae){if(C){var xe=f.c2p(Ae.xStart),be=f.c2p(Ae.xEnd);return v>=Math.min(xe,be)&&v<=Math.max(xe,be)?0:1/0}var Me=Math.max(3,Ae.mrc||0),Le=1-1/Me,je=Math.abs(f.c2p(Ae.x)-v);return je=Math.min(xe,be)&&m<=Math.max(xe,be)?0:1/0}var Me=Math.max(3,Ae.mrc||0),Le=1-1/Me,je=Math.abs(h.c2p(Ae.y)-m);return jeat!=de>=at&&(mt=St[Ye-1][0],bt=St[Ye][0],de-vt&&(it=mt+(bt-mt)*(at-vt)/(de-vt),Me=Math.min(Me,it),Le=Math.max(Le,it)));return Me=Math.max(Me,0),Le=Math.min(Le,f._length),{x0:Me,x1:Le,y0:at,y1:at}}if(T.indexOf("fills")!==-1&&l._fillElement){var he=oe(l._fillElement)&&!oe(l._fillExclusionElement);if(he){var ke=fe(l._polygons);ke===null&&(ke={x0:_[0],x1:_[0],y0:_[1],y1:_[1]});var Se=iT.defaultLine;return iT.opacity(l.fillcolor)?Se=l.fillcolor:iT.opacity((l.line||{}).color)&&(Se=l.line.color),eb.extendFlat(t,{distance:t.maxHoverDistance,x0:ke.x0,x1:ke.x1,y0:ke.y0,y1:ke.y1,color:Se,hovertemplate:!1}),delete t.index,l.text&&!eb.isArrayOrTypedArray(l.text)?t.text=String(l.text):t.text=l.name,[t]}}}});var oN=pe((V2e,nN)=>{"use strict";var iN=rs();nN.exports=function(t,r){var i=t.cd,a=t.xaxis,s=t.yaxis,l=[],f=i[0].trace,h,v,m,_,T=!iN.hasMarkers(f)&&!iN.hasText(f);if(T)return[];if(r===!1)for(h=0;h{"use strict";sN.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var hN=pe((G2e,cN)=>{"use strict";var Xg=sa().traceIs,nT=S5();cN.exports=function(t,r,i,a){i("autotypenumbers",a.autotypenumbersDflt);var s=i("type",(a.splomStash||{}).type);s==="-"&&(Fue(r,a.data),r.type==="-"?r.type="linear":t.type=r.type)};function Fue(e,t){if(e.type==="-"){var r=e._id,i=r.charAt(0),a;r.indexOf("scene")!==-1&&(r=i);var s=que(t,r,i);if(s){if(s.type==="histogram"&&i==={v:"y",h:"x"}[s.orientation||"v"]){e.type="linear";return}var l=i+"calendar",f=s[l],h={noMultiCategory:!Xg(s,"cartesian")||Xg(s,"noMultiCategory")};if(s.type==="box"&&s._hasPreCompStats&&i==={h:"x",v:"y"}[s.orientation||"v"]&&(h.noMultiCategory=!0),h.autotypenumbers=e.autotypenumbers,fN(s,i)){var v=uN(s),m=[];for(a=0;a0&&(a["_"+r+"axes"]||{})[t])return a;if((a[r+"axis"]||r)===t){if(fN(a,r))return a;if((a[r]||[]).length||a[r+"0"])return a}}}function uN(e){return{v:"x",h:"y"}[e.orientation||"v"]}function fN(e,t){var r=uN(e),i=Xg(e,"box-violin"),a=Xg(e._fullInput||{},"candlestick");return i&&!a&&t===r&&e[r]===void 0&&e[r+"0"]===void 0}});var dN=pe((Z2e,vN)=>{"use strict";var Nue=al().isTypedArraySpec;function Bue(e,t){var r=t.dataAttr||e._id.charAt(0),i={},a,s,l;if(t.axData)a=t.axData;else for(a=[],s=0;s0||Nue(s),f;l&&(f="array");var h=i("categoryorder",f),v;h==="array"&&(v=i("categoryarray")),!l&&h==="array"&&(h=r.categoryorder="trace"),h==="trace"?r._initialCategories=[]:h==="array"?r._initialCategories=v.slice():(v=Bue(r,a).sort(),h==="category ascending"?r._initialCategories=v:h==="category descending"&&(r._initialCategories=v.reverse()))}}});var yN=pe((Y2e,mN)=>{"use strict";var pN=Tf().mix,Oue=Af(),Uue=Bt();mN.exports=function(t,r,i,a){a=a||{};var s=a.dfltColor;function l(W,J){return Uue.coerce2(t,r,a.attributes,W,J)}var f=l("linecolor",s),h=l("linewidth"),v=i("showline",a.showLine||!!f||!!h);v||(delete r.linecolor,delete r.linewidth);var m=pN(s,a.bgColor,a.blend||Oue.lightFraction).toRgbString(),_=l("gridcolor",m),T=l("gridwidth"),S=l("griddash"),C=i("showgrid",a.showGrid||!!_||!!T||!!S);if(C||(delete r.gridcolor,delete r.gridwidth,delete r.griddash),a.hasMinor){var E=pN(r.gridcolor,a.bgColor,67).toRgbString(),L=l("minor.gridcolor",E),z=l("minor.gridwidth",r.gridwidth||1),B=l("minor.griddash",r.griddash||"solid"),q=i("minor.showgrid",!!L||!!z||!!B);q||(delete r.minor.gridcolor,delete r.minor.gridwidth,delete r.minor.griddash)}if(!a.noZeroLine){var I=l("zerolinelayer"),O=l("zerolinecolor",s),H=l("zerolinewidth"),V=i("zeroline",a.showGrid||!!O||!!H);V||(delete r.zerolinelayer,delete r.zerolinecolor,delete r.zerolinewidth)}}});var sT=pe((W2e,TN)=>{"use strict";var gN=Da(),Vue=sa(),jg=Bt(),Hue=Ii(),Gue=Yl(),oT=Fu(),_N=jw(),xN=Kw(),Zue=e5(),Yue=t5(),Wue=dN(),Xue=yN(),jue=W5(),bN=l2(),tb=Ao().WEEKDAY_PATTERN,Jue=Ao().HOUR_PATTERN;TN.exports=function(t,r,i,a,s){var l=a.letter,f=a.font||{},h=a.splomStash||{},v=i("visible",!a.visibleDflt),m=r._template||{},_=r.type||m.type||"-",T;if(_==="date"){var S=Vue.getComponentMethod("calendars","handleDefaults");S(t,r,"calendar",a.calendar),a.noTicklabelmode||(T=i("ticklabelmode"))}!a.noTicklabelindex&&(_==="date"||_==="linear")&&i("ticklabelindex");var C="";(!a.noTicklabelposition||_==="multicategory")&&(C=jg.coerce(t,r,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:T==="period"?["outside","inside"]:l==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),a.noTicklabeloverflow||i("ticklabeloverflow",C.indexOf("inside")!==-1?"hide past domain":_==="category"||_==="multicategory"?"allow":"hide past div"),bN(r,s),jue(t,r,i,a),Wue(t,r,i,a),a.noHover||(_!=="category"&&i("hoverformat"),a.noUnifiedhovertitle||i("unifiedhovertitle.text"));var E=i("color"),L=E!==oT.color.dflt?E:f.color,z=h.label||s._dfltTitle[l];if(Yue(t,r,i,_,a),!v)return r;i("title.text",z),jg.coerceFont(i,"title.font",f,{overrideDflt:{size:jg.bigFont(f.size),color:L}}),_N(t,r,i,_);var B=a.hasMinor;if(B&&(Hue.newContainer(r,"minor"),_N(t,r,i,_,{isMinor:!0})),Zue(t,r,i,_,a),xN(t,r,i,a),B){var q=a.isMinor;a.isMinor=!0,xN(t,r,i,a),a.isMinor=q}Xue(t,r,i,{dfltColor:E,bgColor:a.bgColor,showGrid:a.showGrid,hasMinor:B,attributes:oT}),B&&!r.minor.ticks&&!r.minor.showgrid&&delete r.minor,(r.showline||r.ticks)&&i("mirror");var I=_==="multicategory";if(!a.noTickson&&(_==="category"||I)&&(r.ticks||r.showgrid)&&(I?(i("tickson","boundaries"),delete r.ticklabelposition):i("tickson")),I){var O=i("showdividers");O&&(i("dividercolor"),i("dividerwidth"))}if(_==="date")if(Gue(t,r,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:Kue}),!r.rangebreaks.length)delete r.rangebreaks;else{for(var H=0;H=2){var l="",f,h;if(s.length===2){for(f=0;f<2;f++)if(h=wN(s[f]),h){l=tb;break}}var v=i("pattern",l);if(v===tb)for(f=0;f<2;f++)h=wN(s[f]),h&&(t.bounds[f]=s[f]=h-1);if(v)for(f=0;f<2;f++)switch(h=s[f],v){case tb:if(!gN(h)){t.enabled=!1;return}if(h=+h,h!==Math.floor(h)||h<0||h>=7){t.enabled=!1;return}t.bounds[f]=s[f]=h;break;case Jue:if(!gN(h)){t.enabled=!1;return}if(h=+h,h<0||h>24){t.enabled=!1;return}t.bounds[f]=s[f]=h;break}if(r.autorange===!1){var m=r.range;if(m[0]m[1]){t.enabled=!1;return}}else if(s[0]>m[0]&&s[1]{"use strict";var $ue=Da(),rb=Bt();AN.exports=function(t,r,i,a){var s=a.counterAxes||[],l=a.overlayableAxes||[],f=a.letter,h=a.grid,v=a.overlayingDomain,m,_,T,S,C,E;h&&(_=h._domains[f][h._axisMap[r._id]],m=h._anchors[r._id],_&&(T=h[f+"side"].split(" ")[0],S=h.domain[f][T==="right"||T==="top"?1:0])),_=_||[0,1],m=m||($ue(t.position)?"free":s[0]||"free"),T=T||(f==="x"?"bottom":"left"),S=S||0,C=0,E=!1;var L=rb.coerce(t,r,{anchor:{valType:"enumerated",values:["free"].concat(s),dflt:m}},"anchor"),z=rb.coerce(t,r,{side:{valType:"enumerated",values:f==="x"?["bottom","top"]:["left","right"],dflt:T}},"side");if(L==="free"){if(f==="y"){var B=i("autoshift");B&&(S=z==="left"?v[0]:v[1],E=r.automargin?r.automargin:!0,C=z==="left"?-3:3),i("shift",C)}i("position",S)}i("automargin",E);var q=!1;if(l.length&&(q=rb.coerce(t,r,{overlaying:{valType:"enumerated",values:[!1].concat(l),dflt:!1}},"overlaying")),!q){var I=i("domain",_);I[0]>I[1]-1/4096&&(r.domain=_),rb.noneOrAll(t.domain,r.domain,_),r.tickmode==="sync"&&(r.tickmode="auto")}return i("layer"),r}});var zN=pe((j2e,PN)=>{"use strict";var Rd=Bt(),MN=Oa(),efe=bc().isUnifiedHover,tfe=_4(),SN=Ii(),rfe=m0(),kN=Fu(),afe=hN(),CN=sT(),ife=dg(),EN=lT(),fT=Xn(),Uf=fT.id2name,LN=fT.name2id,nfe=Ao().AX_ID_PATTERN,DN=sa(),ab=DN.traceIs,uT=DN.getComponentMethod;function ib(e,t,r){Array.isArray(e[t])?e[t].push(r):e[t]=[r]}PN.exports=function(t,r,i){var a=r.autotypenumbers,s={},l={},f={},h={},v={},m={},_={},T={},S={},C={},E,L;for(E=0;E{"use strict";var ofe=ja(),IN=sa(),nb=Bt(),cl=xi(),ob=Xi();RN.exports=function(t,r,i,a){var s=t._fullLayout;if(r.length===0){ob.redrawComponents(t);return}function l(L){var z=L.xaxis,B=L.yaxis;s._defs.select("#"+L.clipId+"> rect").call(cl.setTranslate,0,0).call(cl.setScale,1,1),L.plot.call(cl.setTranslate,z._offset,B._offset).call(cl.setScale,1,1);var q=L.plot.selectAll(".scatterlayer .trace");q.selectAll(".point").call(cl.setPointGroupScale,1,1),q.selectAll(".textpoint").call(cl.setTextPointsScale,1,1),q.call(cl.hideOutsideRangePoints,L)}function f(L,z){var B=L.plotinfo,q=B.xaxis,I=B.yaxis,O=q._length,H=I._length,V=!!L.xr1,W=!!L.yr1,J=[];if(V){var te=nb.simpleMap(L.xr0,q.r2l),ne=nb.simpleMap(L.xr1,q.r2l),oe=te[1]-te[0],fe=ne[1]-ne[0];J[0]=(te[0]*(1-z)+z*ne[0]-te[0])/(te[1]-te[0])*O,J[2]=O*(1-z+z*fe/oe),q.range[0]=q.l2r(te[0]*(1-z)+z*ne[0]),q.range[1]=q.l2r(te[1]*(1-z)+z*ne[1])}else J[0]=0,J[2]=O;if(W){var he=nb.simpleMap(L.yr0,I.r2l),ke=nb.simpleMap(L.yr1,I.r2l),Se=he[1]-he[0],Ae=ke[1]-ke[0];J[1]=(he[1]*(1-z)+z*ke[1]-he[1])/(he[0]-he[1])*H,J[3]=H*(1-z+z*Ae/Se),I.range[0]=q.l2r(he[0]*(1-z)+z*ke[0]),I.range[1]=I.l2r(he[1]*(1-z)+z*ke[1])}else J[1]=0,J[3]=H;ob.drawOne(t,q,{skipTitle:!0}),ob.drawOne(t,I,{skipTitle:!0}),ob.redrawComponents(t,[q._id,I._id]);var xe=V?O/J[2]:1,be=W?H/J[3]:1,Me=V?J[0]:0,Le=W?J[1]:0,je=V?J[0]/J[2]*O:0,lt=W?J[1]/J[3]*H:0,at=q._offset-je,gt=I._offset-lt;B.clipRect.call(cl.setTranslate,Me,Le).call(cl.setScale,1/xe,1/be),B.plot.call(cl.setTranslate,at,gt).call(cl.setScale,xe,be),cl.setPointGroupScale(B.zoomScalePts,1/xe,1/be),cl.setTextPointsScale(B.zoomScaleTxt,1/xe,1/be)}var h;a&&(h=a());function v(){for(var L={},z=0;zi.duration?(v(),S=window.cancelAnimationFrame(E)):S=window.requestAnimationFrame(E)}return _=Date.now(),S=window.requestAnimationFrame(E),Promise.resolve()}});var cT=pe(Oo=>{"use strict";var lb=ja(),qN=sa(),Fd=Bt(),sfe=eo(),lfe=xi(),NN=B_().getModuleCalcData,Xh=Xn(),Hu=Ao(),ufe=zh(),ai=Fd.ensureSingle;function sb(e,t,r){return Fd.ensureSingle(e,t,r,function(i){i.datum(r)})}var qd=Hu.zindexSeparator;Oo.name="cartesian";Oo.attr=["xaxis","yaxis"];Oo.idRoot=["x","y"];Oo.idRegex=Hu.idRegex;Oo.attrRegex=Hu.attrRegex;Oo.attributes=lN();Oo.layoutAttributes=Fu();Oo.supplyLayoutDefaults=zN();Oo.transitionAxes=FN();Oo.finalizeSubplots=function(e,t){var r=t._subplots,i=r.xaxis,a=r.yaxis,s=r.cartesian,l=s,f={},h={},v,m,_;for(v=0;v0){var S=T.id;if(S.indexOf(qd)!==-1)continue;S+=qd+(v+1),T=Fd.extendFlat({},T,{id:S,plot:a._cartesianlayer.selectAll(".subplot").select("."+S)})}for(var C=[],E,L=0;L1&&(O+=qd+I),q.push(f+O),l=0;l1,_=t.mainplotinfo;if(!t.mainplot||m)if(v)t.xlines=ai(i,"path","xlines-above"),t.ylines=ai(i,"path","ylines-above"),t.xaxislayer=ai(i,"g","xaxislayer-above"),t.yaxislayer=ai(i,"g","yaxislayer-above");else{if(!l){var T=ai(i,"g","layer-subplot");t.shapelayer=ai(T,"g","shapelayer"),t.imagelayer=ai(T,"g","imagelayer"),_&&m?(t.minorGridlayer=_.minorGridlayer,t.gridlayer=_.gridlayer,t.zerolinelayer=_.zerolinelayer):(t.minorGridlayer=ai(i,"g","minor-gridlayer"),t.gridlayer=ai(i,"g","gridlayer"),t.zerolinelayer=ai(i,"g","zerolinelayer"));var S=ai(i,"g","layer-between");t.shapelayerBetween=ai(S,"g","shapelayer"),t.imagelayerBetween=ai(S,"g","imagelayer"),ai(i,"path","xlines-below"),ai(i,"path","ylines-below"),t.overlinesBelow=ai(i,"g","overlines-below"),ai(i,"g","xaxislayer-below"),ai(i,"g","yaxislayer-below"),t.overaxesBelow=ai(i,"g","overaxes-below")}t.overplot=ai(i,"g","overplot"),t.plot=ai(t.overplot,"g",a),_&&m?t.zerolinelayerAbove=_.zerolinelayerAbove:t.zerolinelayerAbove=ai(i,"g","zerolinelayer-above"),l||(t.xlines=ai(i,"path","xlines-above"),t.ylines=ai(i,"path","ylines-above"),t.overlinesAbove=ai(i,"g","overlines-above"),ai(i,"g","xaxislayer-above"),ai(i,"g","yaxislayer-above"),t.overaxesAbove=ai(i,"g","overaxes-above"),t.xlines=i.select(".xlines-"+f),t.ylines=i.select(".ylines-"+h),t.xaxislayer=i.select(".xaxislayer-"+f),t.yaxislayer=i.select(".yaxislayer-"+h))}else{var C=_.plotgroup,E=a+"-x",L=a+"-y";t.minorGridlayer=_.minorGridlayer,t.gridlayer=_.gridlayer,t.zerolinelayer=_.zerolinelayer,t.zerolinelayerAbove=_.zerolinelayerAbove,ai(_.overlinesBelow,"path",E),ai(_.overlinesBelow,"path",L),ai(_.overaxesBelow,"g",E),ai(_.overaxesBelow,"g",L),t.plot=ai(_.overplot,"g",a),ai(_.overlinesAbove,"path",E),ai(_.overlinesAbove,"path",L),ai(_.overaxesAbove,"g",E),ai(_.overaxesAbove,"g",L),t.xlines=C.select(".overlines-"+f).select("."+E),t.ylines=C.select(".overlines-"+h).select("."+L),t.xaxislayer=C.select(".overaxes-"+f).select("."+E),t.yaxislayer=C.select(".overaxes-"+h).select("."+L)}l||(v||(sb(t.minorGridlayer,"g",t.xaxis._id),sb(t.minorGridlayer,"g",t.yaxis._id),t.minorGridlayer.selectAll("g").map(function(z){return z[0]}).sort(Xh.idSort),sb(t.gridlayer,"g",t.xaxis._id),sb(t.gridlayer,"g",t.yaxis._id),t.gridlayer.selectAll("g").map(function(z){return z[0]}).sort(Xh.idSort)),t.xlines.style("fill","none").classed("crisp",!0),t.ylines.style("fill","none").classed("crisp",!0))}function UN(e,t){if(e){var r={};e.each(function(h){var v=h[0],m=lb.select(this);m.remove(),VN(v,t),r[v]=!0});for(var i in t._plots)for(var a=t._plots[i],s=a.overlays||[],l=0;l{"use strict";var ub=rs();HN.exports={hasLines:ub.hasLines,hasMarkers:ub.hasMarkers,hasText:ub.hasText,isBubble:ub.isBubble,attributes:kc(),layoutAttributes:F_(),supplyDefaults:aq(),crossTraceDefaults:sq(),supplyLayoutDefaults:uq(),calc:Z6().calc,crossTraceCalc:Rq(),arraysToCalcdata:Hg(),plot:jq(),colorbar:Q6(),formatLabels:Qq(),style:rT().style,styleOnSelect:rT().styleOnSelect,hoverPoints:aN(),selectPoints:oN(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:cT(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var WN=pe(($2e,YN)=>{"use strict";var cfe=ja(),hfe=Oa(),ZN=s6(),hT=Bt(),vfe=hT.strScale,dfe=hT.strRotate,pfe=hT.strTranslate;YN.exports=function(t,r,i){var a=t.node(),s=ZN[i.arrowhead||0],l=ZN[i.startarrowhead||0],f=(i.arrowwidth||1)*(i.arrowsize||1),h=(i.arrowwidth||1)*(i.startarrowsize||1),v=r.indexOf("start")>=0,m=r.indexOf("end")>=0,_=s.backoff*f+i.standoff,T=l.backoff*h+i.startstandoff,S,C,E,L;if(a.nodeName==="line"){S={x:+t.attr("x1"),y:+t.attr("y1")},C={x:+t.attr("x2"),y:+t.attr("y2")};var z=S.x-C.x,B=S.y-C.y;if(E=Math.atan2(B,z),L=E+Math.PI,_&&T&&_+T>Math.sqrt(z*z+B*B)){he();return}if(_){if(_*_>z*z+B*B){he();return}var q=_*Math.cos(E),I=_*Math.sin(E);C.x+=q,C.y+=I,t.attr({x2:C.x,y2:C.y})}if(T){if(T*T>z*z+B*B){he();return}var O=T*Math.cos(E),H=T*Math.sin(E);S.x-=O,S.y-=H,t.attr({x1:S.x,y1:S.y})}}else if(a.nodeName==="path"){var V=a.getTotalLength(),W="";if(V<_+T){he();return}var J=a.getPointAtLength(0),te=a.getPointAtLength(.1);E=Math.atan2(J.y-te.y,J.x-te.x),S=a.getPointAtLength(Math.min(T,V)),W="0px,"+T+"px,";var ne=a.getPointAtLength(V),oe=a.getPointAtLength(V-.1);L=Math.atan2(ne.y-oe.y,ne.x-oe.x),C=a.getPointAtLength(Math.max(0,V-_));var fe=W?T+_:_;W+=V-fe+"px,"+V+"px",t.style("stroke-dasharray",W)}function he(){t.style("stroke-dasharray","0px,100px")}function ke(Se,Ae,xe,be){Se.path&&(Se.noRotate&&(xe=0),cfe.select(a.parentNode).append("path").attr({class:t.attr("class"),d:Se.path,transform:pfe(Ae.x,Ae.y)+dfe(xe*180/Math.PI)+vfe(be)}).style({fill:hfe.rgb(i.arrowcolor),"stroke-width":0}))}v&&ke(l,S,E,h),m&&ke(s,C,L,f)}});var fb=pe((exe,QN)=>{"use strict";var XN=ja(),vT=sa(),mfe=eo(),Jh=Bt(),dT=Jh.strTranslate,Kg=Xi(),Nd=Oa(),Ec=xi(),jN=Rf(),pT=co(),mT=Oh(),Jg=Xl(),yfe=Ii().arrayEditor,gfe=WN();QN.exports={draw:_fe,drawOne:JN,drawRaw:KN};function _fe(e){var t=e._fullLayout;t._infolayer.selectAll(".annotation").remove();for(var r=0;r2/3?wt="right":wt="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[wt]}for(var vt=!1,de=["x","y"],De=0;De1)&&(dt===rt?(Et=We.r2fraction(t["a"+ge]),(Et<0||Et>1)&&(vt=!0)):vt=!0),Vt=We._offset+We.r2p(t[ge]),st=.5}else{var ct=Pr==="domain";ge==="x"?(Be=t[ge],Vt=ct?We._offset+We._length*Be:Vt=f.l+f.w*Be):(Be=1-t[ge],Vt=ct?We._offset+We._length*Be:Vt=f.t+f.h*Be),st=t.showarrow?.5:Be}if(t.showarrow){At.head=Vt;var pt=t["a"+ge];if(sr=Dt*bt(.5,t.xanchor)-Tt*bt(.5,t.yanchor),dt===rt){var Ot=Kg.getRefType(dt);Ot==="domain"?(ge==="y"&&(pt=1-pt),At.tail=We._offset+We._length*pt):Ot==="paper"?ge==="y"?(pt=1-pt,At.tail=f.t+f.h*pt):At.tail=f.l+f.w*pt:At.tail=We._offset+We.r2p(pt),Ht=sr}else At.tail=Vt+pt,Ht=sr+pt;At.text=At.tail+sr;var er=l[ge==="x"?"width":"height"];if(rt==="paper"&&(At.head=Jh.constrain(At.head,1,er-1)),dt==="pixel"){var Zt=-Math.max(At.tail-3,At.text),Kt=Math.min(At.tail+3,At.text)-er;Zt>0?(At.tail+=Zt,At.text+=Zt):Kt>0&&(At.tail-=Kt,At.text-=Kt)}At.tail+=Ct,At.head+=Ct}else sr=Rt*bt(st,Ut),Ht=sr,At.text=Vt+sr;At.text+=Ct,sr+=Ct,Ht+=Ct,t["_"+ge+"padplus"]=Rt/2+Ht,t["_"+ge+"padminus"]=Rt/2-Ht,t["_"+ge+"size"]=Rt,t["_"+ge+"shift"]=sr}if(vt){V.remove();return}var pr=0,yr=0;if(t.align!=="left"&&(pr=(Ye-at)*(t.align==="center"?.5:1)),t.valign!=="top"&&(yr=(St-gt)*(t.valign==="middle"?.5:1)),je)Le.select("svg").attr({x:te+pr-1,y:te+yr}).call(Ec.setClipUrl,oe?E:null,e);else{var ur=te+yr-lt.top,Lt=te+pr-lt.left;Se.call(pT.positionText,Lt,ur).call(Ec.setClipUrl,oe?E:null,e)}fe.select("rect").call(Ec.setRect,te,te,Ye,St),ne.call(Ec.setRect,W/2,W/2,it-W,mt-W),V.call(Ec.setTranslate,Math.round(L.x.text-it/2),Math.round(L.y.text-mt/2)),q.attr({transform:"rotate("+z+","+L.x.text+","+L.y.text+")"});var Fe=function(xt,wt){B.selectAll(".annotation-arrow-g").remove();var mr=L.x.head,Ar=L.y.head,Mr=L.x.tail+xt,Gr=L.y.tail+wt,pa=L.x.text+xt,Ca=L.y.text+wt,ii=Jh.rotationXYMatrix(z,pa,Ca),wi=Jh.apply2DTransform(ii),vi=Jh.apply2DTransform2(ii),Fi=+ne.attr("width"),Gi=+ne.attr("height"),hn=pa-.5*Fi,nn=hn+Fi,Ki=Ca-.5*Gi,ir=Ki+Gi,oi=[[hn,Ki,hn,ir],[hn,ir,nn,ir],[nn,ir,nn,Ki],[nn,Ki,hn,Ki]].map(vi);if(!oi.reduce(function(Ze,yt){return Ze^!!Jh.segmentsIntersect(mr,Ar,mr+1e6,Ar+1e6,yt[0],yt[1],yt[2],yt[3])},!1)){oi.forEach(function(Ze){var yt=Jh.segmentsIntersect(Mr,Gr,mr,Ar,Ze[0],Ze[1],Ze[2],Ze[3]);yt&&(Mr=yt.x,Gr=yt.y)});var Sa=t.arrowwidth,la=t.arrowcolor,Ci=t.arrowside,ma=B.append("g").style({opacity:Nd.opacity(la)}).classed("annotation-arrow-g",!0),se=ma.append("path").attr("d","M"+Mr+","+Gr+"L"+mr+","+Ar).style("stroke-width",Sa+"px").call(Nd.stroke,Nd.rgb(la));if(gfe(se,Ci,t),h.annotationPosition&&se.node().parentNode&&!i){var ee=mr,le=Ar;if(t.standoff){var ce=Math.sqrt(Math.pow(mr-Mr,2)+Math.pow(Ar-Gr,2));ee+=t.standoff*(Mr-mr)/ce,le+=t.standoff*(Gr-Ar)/ce}var Ee=ma.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(Mr-ee)+","+(Gr-le),transform:dT(ee,le)}).style("stroke-width",Sa+6+"px").call(Nd.stroke,"rgba(0,0,0,0)").call(Nd.fill,"rgba(0,0,0,0)"),Ne,$e;Jg.init({element:Ee.node(),gd:e,prepFn:function(){var Ze=Ec.getTranslate(V);Ne=Ze.x,$e=Ze.y,a&&a.autorange&&T(a._name+".autorange",!0),s&&s.autorange&&T(s._name+".autorange",!0)},moveFn:function(Ze,yt){var Pt=wi(Ne,$e),Ft=Pt[0]+Ze,tr=Pt[1]+yt;V.call(Ec.setTranslate,Ft,tr),S("x",jh(a,Ze,"x",f,t)),S("y",jh(s,yt,"y",f,t)),t.axref===t.xref&&S("ax",jh(a,Ze,"ax",f,t)),t.ayref===t.yref&&S("ay",jh(s,yt,"ay",f,t)),ma.attr("transform",dT(Ze,yt)),q.attr({transform:"rotate("+z+","+Ft+","+tr+")"})},doneFn:function(){vT.call("_guiRelayout",e,C());var Ze=document.querySelector(".js-notes-box-panel");Ze&&Ze.redraw(Ze.selectedObj)}})}}};if(t.showarrow&&Fe(0,0),I){var Ue;Jg.init({element:V.node(),gd:e,prepFn:function(){Ue=q.attr("transform")},moveFn:function(xt,wt){var mr="pointer";if(t.showarrow)t.axref===t.xref?S("ax",jh(a,xt,"ax",f,t)):S("ax",t.ax+xt),t.ayref===t.yref?S("ay",jh(s,wt,"ay",f.w,t)):S("ay",t.ay+wt),Fe(xt,wt);else{if(i)return;var Ar,Mr;if(a)Ar=jh(a,xt,"x",f,t);else{var Gr=t._xsize/f.w,pa=t.x+(t._xshift-t.xshift)/f.w-Gr/2;Ar=Jg.align(pa+xt/f.w,Gr,0,1,t.xanchor)}if(s)Mr=jh(s,wt,"y",f,t);else{var Ca=t._ysize/f.h,ii=t.y-(t._yshift+t.yshift)/f.h-Ca/2;Mr=Jg.align(ii-wt/f.h,Ca,0,1,t.yanchor)}S("x",Ar),S("y",Mr),(!a||!s)&&(mr=Jg.getCursor(a?.5:Ar,s?.5:Mr,t.xanchor,t.yanchor))}q.attr({transform:dT(xt,wt)+Ue}),mT(V,mr)},clickFn:function(xt,wt){t.captureevents&&e.emit("plotly_clickannotation",H(wt))},doneFn:function(){mT(V),vT.call("_guiRelayout",e,C());var xt=document.querySelector(".js-notes-box-panel");xt&&xt.redraw(xt.selectedObj)}})}}h.annotationText?Se.call(pT.makeEditable,{delegate:V,gd:e}).call(Ae).on("edit",function(be){t.text=be,this.call(Ae),S("text",be),a&&a.autorange&&T(a._name+".autorange",!0),s&&s.autorange&&T(s._name+".autorange",!0),vT.call("_guiRelayout",e,C())}):Se.call(Ae)}});var iB=pe((txe,aB)=>{"use strict";var $N=Bt(),xfe=sa(),eB=Ii().arrayEditor;aB.exports={hasClickToShow:bfe,onClick:wfe};function bfe(e,t){var r=rB(e,t);return r.on.length>0||r.explicitOff.length>0}function wfe(e,t){var r=rB(e,t),i=r.on,a=r.off.concat(r.explicitOff),s={},l=e._fullLayout.annotations,f,h;if(i.length||a.length){for(f=0;f{"use strict";var yT=Bt(),fm=Oa();nB.exports=function(t,r,i,a){a("opacity");var s=a("bgcolor"),l=a("bordercolor"),f=fm.opacity(l);a("borderpad");var h=a("borderwidth"),v=a("showarrow");a("text",v?" ":i._dfltTitle.annotation),a("textangle"),yT.coerceFont(a,"font",i.font),a("width"),a("align");var m=a("height");if(m&&a("valign"),v){var _=a("arrowside"),T,S;_.indexOf("end")!==-1&&(T=a("arrowhead"),S=a("arrowsize")),_.indexOf("start")!==-1&&(a("startarrowhead",T),a("startarrowsize",S)),a("arrowcolor",f?r.bordercolor:fm.defaultLine),a("arrowwidth",(f&&h||1)*2),a("standoff"),a("startstandoff")}var C=a("hovertext"),E=i.hoverlabel||{};if(C){var L=a("hoverlabel.bgcolor",E.bgcolor||(fm.opacity(s)?fm.rgb(s):fm.defaultLine)),z=a("hoverlabel.bordercolor",E.bordercolor||fm.contrast(L)),B=yT.extendFlat({},E.font);B.color||(B.color=z),yT.coerceFont(a,"hoverlabel.font",B)}a("captureevents",!!C)}});var sB=pe((axe,oB)=>{"use strict";var _T=Bt(),Bd=Xi(),Tfe=Yl(),Afe=gT(),Mfe=tm();oB.exports=function(t,r){Tfe(t,r,{name:"annotations",handleItemDefaults:Sfe})};function Sfe(e,t,r){function i(q,I){return _T.coerce(e,t,Mfe,q,I)}var a=i("visible"),s=i("clicktoshow");if(a||s){Afe(e,t,r,i);for(var l=t.showarrow,f=["x","y"],h=[-10,-30],v={_fullLayout:r},m=0;m<2;m++){var _=f[m],T=Bd.coerceRef(e,t,v,_,"","paper");if(T!=="paper"){var S=Bd.getFromId(v,T);S._annIndices.push(t._index)}if(Bd.coercePosition(t,v,i,T,_,.5),l){var C="a"+_,E=Bd.coerceRef(e,t,v,C,"pixel",["pixel","paper"]);E!=="pixel"&&E!==T&&(E=t[C]="pixel");var L=E==="pixel"?h[m]:.4;Bd.coercePosition(t,v,i,E,C,L)}i(_+"anchor"),i(_+"shift")}if(_T.noneOrAll(e,t,["x","y"]),l&&_T.noneOrAll(e,t,["ax","ay"]),s){var z=i("xclick"),B=i("yclick");t._xclick=z===void 0?t.x:Bd.cleanPosition(z,v,t.xref),t._yclick=B===void 0?t.y:Bd.cleanPosition(B,v,t.yref)}}}});var fB=pe((ixe,uB)=>{"use strict";var xT=Bt(),Od=Xi(),kfe=fb().draw;uB.exports=function(t){var r=t._fullLayout,i=xT.filterVisible(r.annotations);if(i.length&&t._fullData.length)return xT.syncOrAsync([kfe,Cfe],t)};function Cfe(e){var t=e._fullLayout;xT.filterVisible(t.annotations).forEach(function(r){var i=Od.getFromId(e,r.xref),a=Od.getFromId(e,r.yref),s=Od.getRefType(r.xref),l=Od.getRefType(r.yref);r._extremes={},s==="range"&&lB(r,i),l==="range"&&lB(r,a)})}function lB(e,t){var r=t._id,i=r.charAt(0),a=e[i],s=e["a"+i],l=e[i+"ref"],f=e["a"+i+"ref"],h=e["_"+i+"padplus"],v=e["_"+i+"padminus"],m={x:1,y:-1}[i]*e[i+"shift"],_=3*e.arrowsize*e.arrowwidth||0,T=_+m,S=_-m,C=3*e.startarrowsize*e.arrowwidth||0,E=C+m,L=C-m,z;if(f===l){var B=Od.findExtremes(t,[t.r2c(a)],{ppadplus:T,ppadminus:S}),q=Od.findExtremes(t,[t.r2c(s)],{ppadplus:Math.max(h,E),ppadminus:Math.max(v,L)});z={min:[B.min[0],q.min[0]],max:[B.max[0],q.max[0]]}}else E=s?E+s:E,L=s?L-s:L,z=Od.findExtremes(t,[t.r2c(a)],{ppadplus:Math.max(h,T,E),ppadminus:Math.max(v,S,L)});e._extremes[r]=z}});var hB=pe((nxe,cB)=>{"use strict";var Efe=Da(),Lfe=r_();cB.exports=function(t,r,i,a){r=r||{};var s=i==="log"&&r.type==="linear",l=i==="linear"&&r.type==="log";if(!(s||l))return;var f=t._fullLayout.annotations,h=r._id.charAt(0),v,m;function _(S){var C=v[S],E=null;s?E=Lfe(C,r.range):E=Math.pow(10,C),Efe(E)||(E=null),a(m+S,E)}for(var T=0;T{"use strict";var bT=fb(),vB=iB();dB.exports={moduleType:"component",name:"annotations",layoutAttributes:tm(),supplyLayoutDefaults:sB(),includeBasePlot:Dg()("annotations"),calcAutorange:fB(),draw:bT.draw,drawOne:bT.drawOne,drawRaw:bT.drawRaw,hasClickToShow:vB.hasClickToShow,onClick:vB.onClick,convertCoords:hB()}});var cb=pe((sxe,mB)=>{"use strict";var Oi=tm(),Dfe=il().overrideAll,Pfe=Ii().templatedArray;mB.exports=Dfe(Pfe("annotation",{visible:Oi.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:Oi.xanchor,xshift:Oi.xshift,yanchor:Oi.yanchor,yshift:Oi.yshift,text:Oi.text,textangle:Oi.textangle,font:Oi.font,width:Oi.width,height:Oi.height,opacity:Oi.opacity,align:Oi.align,valign:Oi.valign,bgcolor:Oi.bgcolor,bordercolor:Oi.bordercolor,borderpad:Oi.borderpad,borderwidth:Oi.borderwidth,showarrow:Oi.showarrow,arrowcolor:Oi.arrowcolor,arrowhead:Oi.arrowhead,startarrowhead:Oi.startarrowhead,arrowside:Oi.arrowside,arrowsize:Oi.arrowsize,startarrowsize:Oi.startarrowsize,arrowwidth:Oi.arrowwidth,standoff:Oi.standoff,startstandoff:Oi.startstandoff,hovertext:Oi.hovertext,hoverlabel:Oi.hoverlabel,captureevents:Oi.captureevents}),"calc","from-root")});var gB=pe((lxe,yB)=>{"use strict";var wT=Bt(),zfe=Xi(),Ife=Yl(),Rfe=gT(),Ffe=cb();yB.exports=function(t,r,i){Ife(t,r,{name:"annotations",handleItemDefaults:qfe,fullLayout:i.fullLayout})};function qfe(e,t,r,i){function a(f,h){return wT.coerce(e,t,Ffe,f,h)}function s(f){var h=f+"axis",v={_fullLayout:{}};return v._fullLayout[h]=r[h],zfe.coercePosition(t,v,a,f,f,.5)}var l=a("visible");l&&(Rfe(e,t,i.fullLayout,a),s("x"),s("y"),s("z"),wT.noneOrAll(e,t,["x","y","z"]),t.xref="x",t.yref="y",t.zref="z",a("xanchor"),a("yanchor"),a("xshift"),a("yshift"),t.showarrow&&(t.axref="pixel",t.ayref="pixel",a("ax",-10),a("ay",-30),wT.noneOrAll(e,t,["ax","ay"])))}});var wB=pe((uxe,bB)=>{"use strict";var _B=Bt(),xB=Xi();bB.exports=function(t){for(var r=t.fullSceneLayout,i=r.annotations,a=0;a{"use strict";function TT(e,t){var r=[0,0,0,0],i,a;for(i=0;i<4;++i)for(a=0;a<4;++a)r[a]+=e[4*i+a]*t[i];return r}function Bfe(e,t){var r=TT(e.projection,TT(e.view,TT(e.model,[t[0],t[1],t[2],1])));return r}TB.exports=Bfe});var SB=pe((cxe,MB)=>{"use strict";var Ofe=fb().drawRaw,Ufe=AB(),Vfe=["x","y","z"];MB.exports=function(t){for(var r=t.fullSceneLayout,i=t.dataScale,a=r.annotations,s=0;s1){f=!0;break}}f?t.fullLayout._infolayer.select(".annotation-"+t.id+'[data-index="'+s+'"]').remove():(l._pdata=Ufe(t.glplot.cameraParams,[r.xaxis.r2l(l.x)*i[0],r.yaxis.r2l(l.y)*i[1],r.zaxis.r2l(l.z)*i[2]]),Ofe(t.graphDiv,l,s,t.id,l._xa,l._ya))}}});var EB=pe((hxe,CB)=>{"use strict";var Hfe=sa(),kB=Bt();CB.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:cb()}}},layoutAttributes:cb(),handleDefaults:gB(),includeBasePlot:Gfe,convert:wB(),draw:SB()};function Gfe(e,t){var r=Hfe.subplotsRegistry.gl3d;if(r)for(var i=r.attrRegex,a=Object.keys(e),s=0;s{"use strict";var LB=tm(),DB=qo(),PB=kc().line,Zfe=hc().dash,Gu=mn().extendFlat,Yfe=Ii().templatedArray,vxe=Lg(),cm=ys(),{shapeTexttemplateAttrs:Wfe,templatefallbackAttrs:Xfe}=Mf(),jfe=v_();zB.exports=Yfe("shape",{visible:Gu({},cm.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:Gu({},cm.legend,{editType:"calc+arraydraw"}),legendgroup:Gu({},cm.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:Gu({},cm.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:DB({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:Gu({},cm.legendrank,{editType:"calc+arraydraw"}),legendwidth:Gu({},cm.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:Gu({},LB.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:Gu({},LB.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:Gu({},PB.color,{editType:"arraydraw"}),width:Gu({},PB.width,{editType:"calc+arraydraw"}),dash:Gu({},Zfe,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:Wfe({},{keys:Object.keys(jfe)}),texttemplatefallback:Xfe({editType:"arraydraw"}),font:DB({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var FB=pe((pxe,RB)=>{"use strict";var Qg=Bt(),hm=Xi(),Jfe=Yl(),Kfe=AT(),IB=Hh();RB.exports=function(t,r){Jfe(t,r,{name:"shapes",handleItemDefaults:$fe})};function Qfe(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}function $fe(e,t,r){function i(be,Me){return Qg.coerce(e,t,Kfe,be,Me)}t._isShape=!0;var a=i("visible");if(a){var s=i("showlegend");s&&(i("legend"),i("legendwidth"),i("legendgroup"),i("legendgrouptitle.text"),Qg.coerceFont(i,"legendgrouptitle.font"),i("legendrank"));var l=i("path"),f=l?"path":"rect",h=i("type",f),v=h!=="path";v&&delete t.path,i("editable"),i("layer"),i("opacity"),i("fillcolor"),i("fillrule");var m=i("line.width");m&&(i("line.color"),i("line.dash"));for(var _=i("xsizemode"),T=i("ysizemode"),S=["x","y"],C=0;C<2;C++){var E=S[C],L=E+"anchor",z=E==="x"?_:T,B={_fullLayout:r},q,I,O,H=hm.coerceRef(e,t,B,E,void 0,"paper"),V=hm.getRefType(H);if(V==="range"?(q=hm.getFromId(B,H),q._shapeIndices.push(t._index),O=IB.rangeToShapePosition(q),I=IB.shapePositionToRange(q),(q.type==="category"||q.type==="multicategory")&&(i(E+"0shift"),i(E+"1shift"))):I=O=Qg.identity,v){var W=.25,J=.75,te=E+"0",ne=E+"1",oe=e[te],fe=e[ne];e[te]=I(e[te],!0),e[ne]=I(e[ne],!0),z==="pixel"?(i(te,0),i(ne,10)):(hm.coercePosition(t,B,i,H,te,W),hm.coercePosition(t,B,i,H,ne,J)),t[te]=O(t[te]),t[ne]=O(t[ne]),e[te]=oe,e[ne]=fe}if(z==="pixel"){var he=e[L];e[L]=I(e[L],!0),hm.coercePosition(t,B,i,H,L,.25),t[L]=O(t[L]),e[L]=he}}v&&Qg.noneOrAll(e,t,["x0","x1","y0","y1"]);var ke=h==="line",Se,Ae;if(v&&(Se=i("label.texttemplate"),i("label.texttemplatefallback")),Se||(Ae=i("label.text")),Ae||Se){i("label.textangle");var xe=i("label.textposition",ke?"middle":"middle center");i("label.xanchor"),i("label.yanchor",Qfe(ke,xe)),i("label.padding"),Qg.coerceFont(i,"label.font",r.font)}}}});var BB=pe((mxe,NB)=>{"use strict";var ece=Oa(),qB=Bt();function tce(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}NB.exports=function(t,r,i){i("newshape.visible"),i("newshape.name"),i("newshape.showlegend"),i("newshape.legend"),i("newshape.legendwidth"),i("newshape.legendgroup"),i("newshape.legendgrouptitle.text"),qB.coerceFont(i,"newshape.legendgrouptitle.font"),i("newshape.legendrank"),i("newshape.drawdirection"),i("newshape.layer"),i("newshape.fillcolor"),i("newshape.fillrule"),i("newshape.opacity");var a=i("newshape.line.width");if(a){var s=(t||{}).plot_bgcolor||"#FFF";i("newshape.line.color",ece.contrast(s)),i("newshape.line.dash")}var l=t.dragmode==="drawline",f=i("newshape.label.text"),h=i("newshape.label.texttemplate");if(i("newshape.label.texttemplatefallback"),f||h){i("newshape.label.textangle");var v=i("newshape.label.textposition",l?"middle":"middle center");i("newshape.label.xanchor"),i("newshape.label.yanchor",tce(l,v)),i("newshape.label.padding"),qB.coerceFont(i,"newshape.label.font",r.font)}i("activeshape.fillcolor"),i("activeshape.opacity")}});var GB=pe((yxe,HB)=>{"use strict";var MT=Bt(),vm=Xi(),dm=fg(),UB=Hh();HB.exports=function(t){var r=t._fullLayout,i=MT.filterVisible(r.shapes);if(!(!i.length||!t._fullData.length))for(var a=0;a0?v+l:l;return{ppad:l,ppadplus:f?_:T,ppadminus:f?T:_}}else return{ppad:l}}function OB(e,t,r){var i=e._id.charAt(0)==="x"?"x":"y",a=e.type==="category"||e.type==="multicategory",s,l,f=0,h=0,v=a?e.r2c:e.d2c,m=t[i+"sizemode"]==="scaled";if(m?(s=t[i+"0"],l=t[i+"1"],a&&(f=t[i+"0shift"],h=t[i+"1shift"])):(s=t[i+"anchor"],l=t[i+"anchor"]),s!==void 0)return[v(s)+f,v(l)+h];if(t.path){var _=1/0,T=-1/0,S=t.path.match(dm.segmentRE),C,E,L,z,B;for(e.type==="date"&&(v=UB.decodeDate(v)),C=0;CT&&(T=B)));if(T>=_)return[_,T]}}});var WB=pe((gxe,YB)=>{"use strict";var ZB=ex();YB.exports={moduleType:"component",name:"shapes",layoutAttributes:AT(),supplyLayoutDefaults:FB(),supplyDrawNewShapeDefaults:BB(),includeBasePlot:Dg()("shapes"),calcAutorange:GB(),draw:ZB.draw,drawOne:ZB.drawOne}});var ST=pe((xxe,jB)=>{"use strict";var XB=Ao(),ice=Ii().templatedArray,_xe=Lg();jB.exports=ice("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",XB.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",XB.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var KB=pe((bxe,JB)=>{"use strict";var nce=Bt(),kT=Xi(),oce=Yl(),sce=ST(),lce="images";JB.exports=function(t,r){var i={name:lce,handleItemDefaults:uce};oce(t,r,i)};function uce(e,t,r){function i(T,S){return nce.coerce(e,t,sce,T,S)}var a=i("source"),s=i("visible",!!a);if(!s)return t;i("layer"),i("xanchor"),i("yanchor"),i("sizex"),i("sizey"),i("sizing"),i("opacity");for(var l={_fullLayout:r},f=["x","y"],h=0;h<2;h++){var v=f[h],m=kT.coerceRef(e,t,l,v,"paper",void 0);if(m!=="paper"){var _=kT.getFromId(l,m);_._imgIndices.push(t._index)}kT.coercePosition(t,l,i,m,v,0)}return t}});var tO=pe((wxe,eO)=>{"use strict";var QB=ja(),fce=xi(),pm=Xi(),$B=Xn(),cce=zh();eO.exports=function(t){var r=t._fullLayout,i=[],a={},s=[],l,f;for(f=0;f{"use strict";var rO=Da(),hce=r_();aO.exports=function(t,r,i,a){r=r||{};var s=i==="log"&&r.type==="linear",l=i==="linear"&&r.type==="log";if(s||l){for(var f=t._fullLayout.images,h=r._id.charAt(0),v,m,_=0;_{"use strict";nO.exports={moduleType:"component",name:"images",layoutAttributes:ST(),supplyLayoutDefaults:KB(),includeBasePlot:Dg()("images"),draw:tO(),convertCoords:iO()}});var hb=pe((Mxe,sO)=>{"use strict";sO.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var CT=pe((Sxe,uO)=>{"use strict";var vce=qo(),dce=Af(),pce=mn().extendFlat,mce=il().overrideAll,yce=d_(),lO=Ii().templatedArray,gce=lO("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});uO.exports=mce(lO("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:gce,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:pce(yce({editType:"arraydraw"}),{}),font:vce({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:dce.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var vO=pe((kxe,hO)=>{"use strict";var vb=Bt(),fO=Yl(),cO=CT(),_ce=hb(),xce=_ce.name,bce=cO.buttons;hO.exports=function(t,r){var i={name:xce,handleItemDefaults:wce};fO(t,r,i)};function wce(e,t,r){function i(l,f){return vb.coerce(e,t,cO,l,f)}var a=fO(e,t,{name:"buttons",handleItemDefaults:Tce}),s=i("visible",a.length>0);s&&(i("active"),i("direction"),i("type"),i("showactive"),i("x"),i("y"),vb.noneOrAll(e,t,["x","y"]),i("xanchor"),i("yanchor"),i("pad.t"),i("pad.r"),i("pad.b"),i("pad.l"),vb.coerceFont(i,"font",r.font),i("bgcolor",r.paper_bgcolor),i("bordercolor"),i("borderwidth"))}function Tce(e,t){function r(a,s){return vb.coerce(e,t,bce,a,s)}var i=r("visible",e.method==="skip"||Array.isArray(e.args));i&&(r("method"),r("args"),r("args2"),r("label"),r("execute"))}});var mO=pe((Cxe,pO)=>{"use strict";pO.exports=an;var Zu=ja(),dO=Oa(),mm=xi(),db=Bt();function an(e,t,r){this.gd=e,this.container=t,this.id=r,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}an.barWidth=2;an.barLength=20;an.barRadius=2;an.barPad=1;an.barColor="#808BA4";an.prototype.enable=function(t,r,i){var a=this.gd._fullLayout,s=a.width,l=a.height;this.position=t;var f=this.position.l,h=this.position.w,v=this.position.t,m=this.position.h,_=this.position.direction,T=_==="down",S=_==="left",C=_==="right",E=_==="up",L=h,z=m,B,q,I,O;!T&&!S&&!C&&!E&&(this.position.direction="down",T=!0);var H=T||E;H?(B=f,q=B+L,T?(I=v,O=Math.min(I+z,l),z=O-I):(O=v+z,I=Math.max(O-z,0),z=O-I)):(I=v,O=I+z,S?(q=f+L,B=Math.max(q-L,0),L=q-B):(B=f,q=Math.min(B+L,s),L=q-B)),this._box={l:B,t:I,w:L,h:z};var V=h>L,W=an.barLength+2*an.barPad,J=an.barWidth+2*an.barPad,te=f,ne=v+m;ne+J>l&&(ne=l-J);var oe=this.container.selectAll("rect.scrollbar-horizontal").data(V?[0]:[]);oe.exit().on(".drag",null).remove(),oe.enter().append("rect").classed("scrollbar-horizontal",!0).call(dO.fill,an.barColor),V?(this.hbar=oe.attr({rx:an.barRadius,ry:an.barRadius,x:te,y:ne,width:W,height:J}),this._hbarXMin=te+W/2,this._hbarTranslateMax=L-W):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var fe=m>z,he=an.barWidth+2*an.barPad,ke=an.barLength+2*an.barPad,Se=f+h,Ae=v;Se+he>s&&(Se=s-he);var xe=this.container.selectAll("rect.scrollbar-vertical").data(fe?[0]:[]);xe.exit().on(".drag",null).remove(),xe.enter().append("rect").classed("scrollbar-vertical",!0).call(dO.fill,an.barColor),fe?(this.vbar=xe.attr({rx:an.barRadius,ry:an.barRadius,x:Se,y:Ae,width:he,height:ke}),this._vbarYMin=Ae+ke/2,this._vbarTranslateMax=z-ke):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var be=this.id,Me=B-.5,Le=fe?q+he+.5:q+.5,je=I-.5,lt=V?O+J+.5:O+.5,at=a._topdefs.selectAll("#"+be).data(V||fe?[0]:[]);if(at.exit().remove(),at.enter().append("clipPath").attr("id",be).append("rect"),V||fe?(this._clipRect=at.select("rect").attr({x:Math.floor(Me),y:Math.floor(je),width:Math.ceil(Le)-Math.floor(Me),height:Math.ceil(lt)-Math.floor(je)}),this.container.call(mm.setClipUrl,be,this.gd),this.bg.attr({x:f,y:v,width:h,height:m})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(mm.setClipUrl,null),delete this._clipRect),V||fe){var gt=Zu.behavior.drag().on("dragstart",function(){Zu.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(gt);var Ye=Zu.behavior.drag().on("dragstart",function(){Zu.event.sourceEvent.preventDefault(),Zu.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));V&&this.hbar.on(".drag",null).call(Ye),fe&&this.vbar.on(".drag",null).call(Ye)}this.setTranslate(r,i)};an.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(mm.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};an.prototype._onBoxDrag=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t-=Zu.event.dx),this.vbar&&(r-=Zu.event.dy),this.setTranslate(t,r)};an.prototype._onBoxWheel=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t+=Zu.event.deltaY),this.vbar&&(r+=Zu.event.deltaY),this.setTranslate(t,r)};an.prototype._onBarDrag=function(){var t=this.translateX,r=this.translateY;if(this.hbar){var i=t+this._hbarXMin,a=i+this._hbarTranslateMax,s=db.constrain(Zu.event.x,i,a),l=(s-i)/(a-i),f=this.position.w-this._box.w;t=l*f}if(this.vbar){var h=r+this._vbarYMin,v=h+this._vbarTranslateMax,m=db.constrain(Zu.event.y,h,v),_=(m-h)/(v-h),T=this.position.h-this._box.h;r=_*T}this.setTranslate(t,r)};an.prototype.setTranslate=function(t,r){var i=this.position.w-this._box.w,a=this.position.h-this._box.h;if(t=db.constrain(t||0,0,i),r=db.constrain(r||0,0,a),this.translateX=t,this.translateY=r,this.container.call(mm.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-r),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+r-.5)}),this.hbar){var s=t/i;this.hbar.call(mm.setTranslate,t+s*this._hbarTranslateMax,r)}if(this.vbar){var l=r/a;this.vbar.call(mm.setTranslate,t,r+l*this._vbarTranslateMax)}}});var SO=pe((Exe,MO)=>{"use strict";var ym=ja(),$g=eo(),e1=Oa(),gm=xi(),hl=Bt(),pb=co(),Ace=Ii().arrayEditor,gO=ts().LINE_SPACING,ra=hb(),Mce=mO();MO.exports=function(t){var r=t._fullLayout,i=hl.filterVisible(r[ra.name]);function a(T){$g.autoMargin(t,TO(T))}var s=r._menulayer.selectAll("g."+ra.containerClassName).data(i.length>0?[0]:[]);if(s.enter().append("g").classed(ra.containerClassName,!0).style("cursor","pointer"),s.exit().each(function(){ym.select(this).selectAll("g."+ra.headerGroupClassName).each(a)}).remove(),i.length!==0){var l=s.selectAll("g."+ra.headerGroupClassName).data(i,Sce);l.enter().append("g").classed(ra.headerGroupClassName,!0);for(var f=hl.ensureSingle(s,"g",ra.dropdownButtonGroupClassName,function(T){T.style("pointer-events","all")}),h=0;h{"use strict";var zce=hb();kO.exports={moduleType:"component",name:zce.name,layoutAttributes:CT(),supplyLayoutDefaults:vO(),draw:SO()}});var r1=pe((Dxe,EO)=>{"use strict";EO.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var PT=pe((Pxe,PO)=>{"use strict";var LO=qo(),Ice=d_(),Rce=mn().extendDeepAll,Fce=il().overrideAll,qce=Ry(),DO=Ii().templatedArray,Ud=r1(),Nce=DO("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});PO.exports=Fce(DO("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:Nce,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:Rce(Ice({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:qce.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:LO({})},font:LO({}),activebgcolor:{valType:"color",dflt:Ud.gripBgActiveColor},bgcolor:{valType:"color",dflt:Ud.railBgColor},bordercolor:{valType:"color",dflt:Ud.railBorderColor},borderwidth:{valType:"number",min:0,dflt:Ud.railBorderWidth},ticklen:{valType:"number",min:0,dflt:Ud.tickLength},tickcolor:{valType:"color",dflt:Ud.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:Ud.minorTickLength}}),"arraydraw","from-root")});var FO=pe((zxe,RO)=>{"use strict";var _m=Bt(),zO=Yl(),IO=PT(),Bce=r1(),Oce=Bce.name,Uce=IO.steps;RO.exports=function(t,r){zO(t,r,{name:Oce,handleItemDefaults:Vce})};function Vce(e,t,r){function i(_,T){return _m.coerce(e,t,IO,_,T)}for(var a=zO(e,t,{name:"steps",handleItemDefaults:Hce}),s=0,l=0;l{"use strict";var Yu=ja(),mb=eo(),Kh=Oa(),Wu=xi(),vl=Bt(),Gce=vl.strTranslate,a1=co(),Zce=Ii().arrayEditor,xa=r1(),RT=ts(),BO=RT.LINE_SPACING,zT=RT.FROM_TL,IT=RT.FROM_BR;ZO.exports=function(t){var r=t._context.staticPlot,i=t._fullLayout,a=Yce(i,t),s=i._infolayer.selectAll("g."+xa.containerClassName).data(a.length>0?[0]:[]);s.enter().append("g").classed(xa.containerClassName,!0).style("cursor",r?null:"ew-resize");function l(m){m._commandObserver&&(m._commandObserver.remove(),delete m._commandObserver),mb.autoMargin(t,OO(m))}if(s.exit().each(function(){Yu.select(this).selectAll("g."+xa.groupClassName).each(l)}).remove(),a.length!==0){var f=s.selectAll("g."+xa.groupClassName).data(a,Wce);f.enter().append("g").classed(xa.groupClassName,!0),f.exit().each(l).remove();for(var h=0;h0&&(f=f.transition().duration(t.transition.duration).ease(t.transition.easing)),f.attr("transform",Gce(l-xa.gripWidth*.5,t._dims.currentValueTotalHeight))}}function FT(e,t){var r=e._dims;return r.inputAreaStart+xa.stepInset+(r.inputAreaLength-2*xa.stepInset)*Math.min(1,Math.max(0,t))}function NO(e,t){var r=e._dims;return Math.min(1,Math.max(0,(t-xa.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*xa.stepInset-2*r.inputAreaStart)))}function ehe(e,t,r){var i=r._dims,a=vl.ensureSingle(e,"rect",xa.railTouchRectClass,function(s){s.call(HO,t,e,r).style("pointer-events","all")});a.attr({width:i.inputAreaLength,height:Math.max(i.inputAreaWidth,xa.tickOffset+r.ticklen+i.labelHeight)}).call(Kh.fill,r.bgcolor).attr("opacity",0),Wu.setTranslate(a,0,i.currentValueTotalHeight)}function the(e,t){var r=t._dims,i=r.inputAreaLength-xa.railInset*2,a=vl.ensureSingle(e,"rect",xa.railRectClass);a.attr({width:i,height:xa.railWidth,rx:xa.railRadius,ry:xa.railRadius,"shape-rendering":"crispEdges"}).call(Kh.stroke,t.bordercolor).call(Kh.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px"),Wu.setTranslate(a,xa.railInset,(r.inputAreaWidth-xa.railWidth)*.5+r.currentValueTotalHeight)}});var XO=pe((Rxe,WO)=>{"use strict";var rhe=r1();WO.exports={moduleType:"component",name:rhe.name,layoutAttributes:PT(),supplyLayoutDefaults:FO(),draw:YO()}});var gb=pe((Fxe,JO)=>{"use strict";var jO=Af();JO.exports={bgcolor:{valType:"color",dflt:jO.background,editType:"plot"},bordercolor:{valType:"color",dflt:jO.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var qT=pe((qxe,KO)=>{"use strict";KO.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var _b=pe((Nxe,QO)=>{"use strict";QO.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var tU=pe(bb=>{"use strict";var ahe=Xn(),ihe=co(),$O=_b(),nhe=ts().LINE_SPACING,xb=$O.name;function eU(e){var t=e&&e[xb];return t&&t.visible}bb.isVisible=eU;bb.makeData=function(e){for(var t=ahe.list({_fullLayout:e},"x",!0),r=e.margin,i=[],a=0;a{"use strict";var wb=Bt(),rU=Ii(),aU=Xn(),ohe=gb(),she=qT();iU.exports=function(t,r,i){var a=t[i],s=r[i];if(!(a.rangeslider||r._requestRangeslider[s._id]))return;wb.isPlainObject(a.rangeslider)||(a.rangeslider={});var l=a.rangeslider,f=rU.newContainer(s,"rangeslider");function h(O,H){return wb.coerce(l,f,ohe,O,H)}var v,m;function _(O,H){return wb.coerce(v,m,she,O,H)}var T=h("visible");if(T){h("bgcolor",r.plot_bgcolor),h("bordercolor"),h("borderwidth"),h("thickness"),h("autorange",!s.isValidRange(l.range)),h("range");var S=r._subplots;if(S)for(var C=S.cartesian.filter(function(O){return O.slice(0,Math.max(0,O.indexOf("y")))===aU.name2id(i)}).map(function(O){return O.slice(O.indexOf("y"),O.length)}),E=wb.simpleMap(C,aU.id2name),L=0;L{"use strict";var lhe=Xn().list,uhe=$y().getAutoRange,fhe=_b();oU.exports=function(t){for(var r=lhe(t,"x",!0),i=0;i{"use strict";var Tb=ja(),che=sa(),hhe=eo(),_n=Bt(),Ab=_n.strTranslate,uU=xi(),Qh=Oa(),vhe=Ky(),dhe=cT(),NT=Xn(),phe=Xl(),mhe=Oh(),Ia=_b();fU.exports=function(e){for(var t=e._fullLayout,r=t._rangeSliderData,i=0;i=xe.max)Se=ne[Ae+1];else if(ke=xe.pmax)Se=ne[Ae+1];else if(ke0?e.touches[0].clientX:0}function yhe(e,t,r,i){if(t._context.staticPlot)return;var a=e.select("rect."+Ia.slideBoxClassName).node(),s=e.select("rect."+Ia.grabAreaMinClassName).node(),l=e.select("rect."+Ia.grabAreaMaxClassName).node();function f(){var h=Tb.event,v=h.target,m=lU(h),_=m-e.node().getBoundingClientRect().left,T=i.d2p(r._rl[0]),S=i.d2p(r._rl[1]),C=phe.coverSlip();this.addEventListener("touchmove",E),this.addEventListener("touchend",L),C.addEventListener("mousemove",E),C.addEventListener("mouseup",L);function E(z){var B=lU(z),q=+B-m,I,O,H;switch(v){case a:if(H="ew-resize",T+q>r._length||S+q<0)return;I=T+q,O=S+q;break;case s:if(H="col-resize",T+q>r._length)return;I=T+q,O=S;break;case l:if(H="col-resize",S+q<0)return;I=T,O=S+q;break;default:H="ew-resize",I=_,O=_+q;break}if(O{"use strict";var khe=Bt(),Che=gb(),Ehe=qT(),BT=tU();hU.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:khe.extendFlat({},Che,{yaxis:Ehe})}}},layoutAttributes:gb(),handleDefaults:nU(),calcAutorange:sU(),draw:cU(),isVisible:BT.isVisible,makeData:BT.makeData,autoMarginOpts:BT.autoMarginOpts}});var Mb=pe((Gxe,pU)=>{"use strict";var Lhe=qo(),dU=Af(),Dhe=Ii().templatedArray,Phe=Dhe("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});pU.exports={visible:{valType:"boolean",editType:"plot"},buttons:Phe,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:Lhe({editType:"plot"}),bgcolor:{valType:"color",dflt:dU.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:dU.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var OT=pe((Zxe,mU)=>{"use strict";mU.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var _U=pe((Yxe,gU)=>{"use strict";var Sb=Bt(),zhe=Oa(),Ihe=Ii(),Rhe=Yl(),yU=Mb(),UT=OT();gU.exports=function(t,r,i,a,s){var l=t.rangeselector||{},f=Ihe.newContainer(r,"rangeselector");function h(S,C){return Sb.coerce(l,f,yU,S,C)}var v=Rhe(l,f,{name:"buttons",handleItemDefaults:Fhe,calendar:s}),m=h("visible",v.length>0);if(m){var _=qhe(r,i,a);h("x",_[0]),h("y",_[1]),Sb.noneOrAll(t,r,["x","y"]),h("xanchor"),h("yanchor"),Sb.coerceFont(h,"font",i.font);var T=h("bgcolor");h("activecolor",zhe.contrast(T,UT.lightAmount,UT.darkAmount)),h("bordercolor"),h("borderwidth")}};function Fhe(e,t,r,i){var a=i.calendar;function s(h,v){return Sb.coerce(e,t,yU.buttons,h,v)}var l=s("visible");if(l){var f=s("step");f!=="all"&&(a&&a!=="gregorian"&&(f==="month"||f==="year")?t.stepmode="backward":s("stepmode"),s("count")),s("label")}}function qhe(e,t,r){for(var i=r.filter(function(f){return t[f].anchor===e._id}),a=0,s=0;s{"use strict";var Nhe=U3(),Bhe=Bt().titleCase;xU.exports=function(t,r){var i=t._name,a={};if(r.step==="all")a[i+".autorange"]=!0;else{var s=Ohe(t,r);a[i+".range[0]"]=s[0],a[i+".range[1]"]=s[1]}return a};function Ohe(e,t){var r=e.range,i=new Date(e.r2l(r[1])),a=t.step,s=Nhe["utc"+Bhe(a)],l=t.count,f;switch(t.stepmode){case"backward":f=e.l2r(+s.offset(i,-l));break;case"todate":var h=s.offset(i,-l);f=e.l2r(+s.ceil(h));break}var v=r[1];return[f,v]}});var EU=pe((Xxe,CU)=>{"use strict";var Cb=ja(),Uhe=sa(),Vhe=eo(),wU=Oa(),kU=xi(),Lc=Bt(),TU=Lc.strTranslate,kb=co(),Hhe=Xn(),GT=ts(),AU=GT.LINE_SPACING,MU=GT.FROM_TL,SU=GT.FROM_BR,HT=OT(),Ghe=bU();CU.exports=function(t){var r=t._fullLayout,i=r._infolayer.selectAll(".rangeselector").data(Zhe(t),Yhe);i.enter().append("g").classed("rangeselector",!0),i.exit().remove(),i.style({cursor:"pointer","pointer-events":"all"}),i.each(function(a){var s=Cb.select(this),l=a,f=l.rangeselector,h=s.selectAll("g.button").data(Lc.filterVisible(f.buttons));h.enter().append("g").classed("button",!0),h.exit().remove(),h.each(function(v){var m=Cb.select(this),_=Ghe(l,v);v._isActive=Whe(l,v,_),m.call(VT,f,v),m.call(jhe,f,v,t),m.on("click",function(){t._dragged||Uhe.call("_guiRelayout",t,_)}),m.on("mouseover",function(){v._isHovered=!0,m.call(VT,f,v)}),m.on("mouseout",function(){v._isHovered=!1,m.call(VT,f,v)})}),Khe(t,h,f,l._name,s)})};function Zhe(e){for(var t=Hhe.list(e,"x",!0),r=[],i=0;i{"use strict";LU.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:Mb()}}},layoutAttributes:Mb(),handleDefaults:_U(),draw:EU()}});var Eb=pe(ZT=>{"use strict";var PU=mn().extendFlat;ZT.attributes=function(e,t){e=e||{},t=t||{};var r={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},i=e.name?e.name+" ":"",a=e.trace?"trace ":"subplot ",s=t.description?" "+t.description:"",l={x:PU({},r,{}),y:PU({},r,{}),editType:e.editType};return e.noGridCell||(l.row={valType:"integer",min:0,dflt:0,editType:e.editType},l.column={valType:"integer",min:0,dflt:0,editType:e.editType}),l};ZT.defaults=function(e,t,r,i){var a=i&&i.x||[0,1],s=i&&i.y||[0,1],l=t.grid;if(l){var f=r("domain.column");f!==void 0&&(f{"use strict";var Qhe=Bt(),$he=h0().counter,eve=Eb().attributes,zU=Ao().idRegex,tve=Ii(),YT={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[$he("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[zU.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[zU.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:eve({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function Lb(e,t,r){var i=t[r+"axes"],a=Object.keys((e._splomAxes||{})[r]||{});if(Array.isArray(i))return i;if(a.length)return a}function rve(e,t){var r=e.grid||{},i=Lb(t,r,"x"),a=Lb(t,r,"y");if(!e.grid&&!i&&!a)return;var s=Array.isArray(r.subplots)&&Array.isArray(r.subplots[0]),l=Array.isArray(i),f=Array.isArray(a),h=l&&i!==r.xaxes&&f&&a!==r.yaxes,v,m;s?(v=r.subplots.length,m=r.subplots[0].length):(f&&(v=a.length),l&&(m=i.length));var _=tve.newContainer(t,"grid");function T(H,V){return Qhe.coerce(r,_,YT,H,V)}var S=T("rows",v),C=T("columns",m);if(!(S*C>1)){delete t.grid;return}if(!s&&!l&&!f){var E=T("pattern")==="independent";E&&(s=!0)}_._hasSubplotGrid=s;var L=T("roworder"),z=L==="top to bottom",B=s?.2:.1,q=s?.3:.1,I,O;h&&t._splomGridDflt&&(I=t._splomGridDflt.xside,O=t._splomGridDflt.yside),_._domains={x:IU("x",T,B,I,C),y:IU("y",T,q,O,S,z)}}function IU(e,t,r,i,a,s){var l=t(e+"gap",r),f=t("domain."+e);t(e+"side",i);for(var h=new Array(a),v=f[0],m=(f[1]-v)/(a-l),_=m*(1-l),T=0;T{"use strict";NU.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var UU=pe(($xe,OU)=>{"use strict";var BU=Da(),ive=sa(),nve=Bt(),ove=Ii(),sve=WT();OU.exports=function(e,t,r,i){var a="error_"+i.axis,s=ove.newContainer(t,a),l=e[a]||{};function f(C,E){return nve.coerce(l,s,sve,C,E)}var h=l.array!==void 0||l.value!==void 0||l.type==="sqrt",v=f("visible",h);if(v!==!1){var m=f("type","array"in l?"data":"percent"),_=!0;m!=="sqrt"&&(_=f("symmetric",!((m==="data"?"arrayminus":"valueminus")in l))),m==="data"?(f("array"),f("traceref"),_||(f("arrayminus"),f("tracerefminus"))):(m==="percent"||m==="constant")&&(f("value"),_||f("valueminus"));var T="copy_"+i.inherit+"style";if(i.inherit){var S=t["error_"+i.inherit];(S||{}).visible&&f(T,!(l.color||BU(l.thickness)||BU(l.width)))}(!i.inherit||!s[T])&&(f("color",r),f("thickness"),f("width",ive.traceIs(t,"gl3d")?0:4))}}});var XT=pe((ebe,HU)=>{"use strict";HU.exports=function(t){var r=t.type,i=t.symmetric;if(r==="data"){var a=t.array||[];if(i)return function(v,m){var _=+a[m];return[_,_]};var s=t.arrayminus||[];return function(v,m){var _=+a[m],T=+s[m];return!isNaN(_)||!isNaN(T)?[T||0,_||0]:[NaN,NaN]}}else{var l=VU(r,t.value),f=VU(r,t.valueminus);return i||t.valueminus===void 0?function(v){var m=l(v);return[m,m]}:function(v){return[f(v),l(v)]}}};function VU(e,t){if(e==="percent")return function(r){return Math.abs(r*t/100)};if(e==="constant")return function(){return Math.abs(t)};if(e==="sqrt")return function(r){return Math.sqrt(Math.abs(r))}}});var YU=pe((tbe,ZU)=>{"use strict";var jT=Da(),lve=sa(),JT=Xi(),uve=Bt(),fve=XT();ZU.exports=function(t){for(var r=t.calcdata,i=0;i{"use strict";var WU=ja(),$h=Da(),cve=xi(),hve=rs();XU.exports=function(t,r,i,a){var s,l=i.xaxis,f=i.yaxis,h=a&&a.duration>0,v=t._context.staticPlot;r.each(function(m){var _=m[0].trace,T=_.error_x||{},S=_.error_y||{},C;_.ids&&(C=function(B){return B.id});var E=hve.hasMarkers(_)&&_.marker.maxdisplayed>0;!S.visible&&!T.visible&&(m=[]);var L=WU.select(this).selectAll("g.errorbar").data(m,C);if(L.exit().remove(),!!m.length){T.visible||L.selectAll("path.xerror").remove(),S.visible||L.selectAll("path.yerror").remove(),L.style("opacity",1);var z=L.enter().append("g").classed("errorbar",!0);h&&z.style("opacity",0).transition().duration(a.duration).style("opacity",1),cve.setClipUrl(L,i.layerClipId,t),L.each(function(B){var q=WU.select(this),I=vve(B,l,f);if(!(E&&!B.vis)){var O,H=q.select("path.yerror");if(S.visible&&$h(I.x)&&$h(I.yh)&&$h(I.ys)){var V=S.width;O="M"+(I.x-V)+","+I.yh+"h"+2*V+"m-"+V+",0V"+I.ys,I.noYS||(O+="m-"+V+",0h"+2*V),s=!H.size(),s?H=q.append("path").style("vector-effect",v?"none":"non-scaling-stroke").classed("yerror",!0):h&&(H=H.transition().duration(a.duration).ease(a.easing)),H.attr("d",O)}else H.remove();var W=q.select("path.xerror");if(T.visible&&$h(I.y)&&$h(I.xh)&&$h(I.xs)){var J=(T.copy_ystyle?S:T).width;O="M"+I.xh+","+(I.y-J)+"v"+2*J+"m0,-"+J+"H"+I.xs,I.noXS||(O+="m0,-"+J+"v"+2*J),s=!W.size(),s?W=q.append("path").style("vector-effect",v?"none":"non-scaling-stroke").classed("xerror",!0):h&&(W=W.transition().duration(a.duration).ease(a.easing)),W.attr("d",O)}else W.remove()}})}})};function vve(e,t,r){var i={x:t.c2p(e.x),y:r.c2p(e.y)};return e.yh!==void 0&&(i.yh=r.c2p(e.yh),i.ys=r.c2p(e.ys),$h(i.ys)||(i.noYS=!0,i.ys=r.c2p(e.ys,!0))),e.xh!==void 0&&(i.xh=t.c2p(e.xh),i.xs=t.c2p(e.xs),$h(i.xs)||(i.noXS=!0,i.xs=t.c2p(e.xs,!0))),i}});var QU=pe((abe,KU)=>{"use strict";var dve=ja(),JU=Oa();KU.exports=function(t){t.each(function(r){var i=r[0].trace,a=i.error_y||{},s=i.error_x||{},l=dve.select(this);l.selectAll("path.yerror").style("stroke-width",a.thickness+"px").call(JU.stroke,a.color),s.copy_ystyle&&(s=a),l.selectAll("path.xerror").style("stroke-width",s.thickness+"px").call(JU.stroke,s.color)})}});var tV=pe((ibe,eV)=>{"use strict";var i1=Bt(),$U=il().overrideAll,n1=WT(),Vd={error_x:i1.extendFlat({},n1),error_y:i1.extendFlat({},n1)};delete Vd.error_x.copy_zstyle;delete Vd.error_y.copy_zstyle;delete Vd.error_y.copy_ystyle;var o1={error_x:i1.extendFlat({},n1),error_y:i1.extendFlat({},n1),error_z:i1.extendFlat({},n1)};delete o1.error_x.copy_ystyle;delete o1.error_y.copy_ystyle;delete o1.error_z.copy_ystyle;delete o1.error_z.copy_zstyle;eV.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Vd,bar:Vd,histogram:Vd,scatter3d:$U(o1,"calc","nested"),scattergl:$U(Vd,"calc","nested")}},supplyDefaults:UU(),calc:YU(),makeComputeError:XT(),plot:jU(),style:QU(),hoverInfo:pve};function pve(e,t,r){(t.error_y||{}).visible&&(r.yerr=e.yh-e.y,t.error_y.symmetric||(r.yerrneg=e.y-e.ys)),(t.error_x||{}).visible&&(r.xerr=e.xh-e.x,t.error_x.symmetric||(r.xerrneg=e.x-e.xs))}});var aV=pe((nbe,rV)=>{"use strict";rV.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var fV=pe((obe,uV)=>{"use strict";var ev=ja(),KT=Tf(),Pb=eo(),iV=sa(),Dc=Xi(),Db=Xl(),su=Bt(),ju=su.strTranslate,lV=mn().extendFlat,QT=Oh(),Xu=xi(),$T=Oa(),mve=Ky(),yve=co(),gve=kf().flipScale,_ve=sT(),xve=lT(),bve=Fu(),eA=ts(),nV=eA.LINE_SPACING,oV=eA.FROM_TL,sV=eA.FROM_BR,Qi=aV().cn;function wve(e){var t=e._fullLayout,r=t._infolayer.selectAll("g."+Qi.colorbar).data(Tve(e),function(i){return i._id});r.enter().append("g").attr("class",function(i){return i._id}).classed(Qi.colorbar,!0),r.each(function(i){var a=ev.select(this);su.ensureSingle(a,"rect",Qi.cbbg),su.ensureSingle(a,"g",Qi.cbfills),su.ensureSingle(a,"g",Qi.cblines),su.ensureSingle(a,"g",Qi.cbaxis,function(l){l.classed(Qi.crisp,!0)}),su.ensureSingle(a,"g",Qi.cbtitleunshift,function(l){l.append("g").classed(Qi.cbtitle,!0)}),su.ensureSingle(a,"rect",Qi.cboutline);var s=Ave(a,i,e);s&&s.then&&(e._promises||[]).push(s),e._context.edits.colorbarPosition&&Mve(a,i,e)}),r.exit().each(function(i){Pb.autoMargin(e,i._id)}).remove(),r.order()}function Tve(e){var t=e._fullLayout,r=e.calcdata,i=[],a,s,l,f;function h(q){return lV(q,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function v(){typeof f.calc=="function"?f.calc(e,l,a):(a._fillgradient=s.reversescale?gve(s.colorscale):s.colorscale,a._zrange=[s[f.min],s[f.max]])}for(var m=0;m1){var De=Math.pow(10,Math.floor(Math.log(de)/Math.LN10));bt*=De*su.roundUp(de/De,[2,5,10]),(Math.abs(oe.start)/oe.size+1e-6)%1<2e-6&&(it.tick0=0)}it.dtick=bt}it.domain=i?[Ye+C/I.h,Ye+be-C/I.h]:[Ye+S/I.w,Ye+be-S/I.w],it.setScale(),e.attr("transform",ju(Math.round(I.l),Math.round(I.t)));var ge=e.select("."+Qi.cbtitleunshift).attr("transform",ju(-Math.round(I.l),-Math.round(I.t))),rt=it.ticklabelposition,dt=it.title.font.size,We=e.select("."+Qi.cbaxis),qt,Dt=0,Tt=0;function Rt(Ht,Be){var st={propContainer:it,propName:t._propPrefix+"title.text",traceIndex:t._traceIndex,_meta:t._meta,placeholder:q._dfltTitle.colorbar,containerGroup:e.select("."+Qi.cbtitle)},sr=Ht.charAt(0)==="h"?Ht.slice(1):"h"+Ht;e.selectAll("."+sr+",."+sr+"-math-group").remove(),mve.draw(r,Ht,lV(st,Be||{}))}function Ut(){if(i&&mt||!i&&!mt){var Ht,Be;W==="top"&&(Ht=S+I.l+Me*E,Be=C+I.t+Le*(1-Ye-be)+3+dt*.75),W==="bottom"&&(Ht=S+I.l+Me*E,Be=C+I.t+Le*(1-Ye)-3-dt*.25),W==="right"&&(Be=C+I.t+Le*L+3+dt*.75,Ht=S+I.l+Me*Ye),Rt(it._id+"title",{attributes:{x:Ht,y:Be,"text-anchor":i?"start":"middle"}})}}function Ct(){if(i&&!mt||!i&&mt){var Ht=it.position||0,Be=it._offset+it._length/2,st,sr;if(W==="right")sr=Be,st=I.l+Me*Ht+10+dt*(it.showticklabels?1:.5);else if(st=Be,W==="bottom"&&(sr=I.t+Le*Ht+10+(rt.indexOf("inside")===-1?it.tickfont.size:0)+(it.ticks!=="inside"&&t.ticklen||0)),W==="top"){var Pr=V.text.split("
").length;sr=I.t+Le*Ht+10-Se-nV*dt*Pr}Rt((i?"h":"v")+it._id+"title",{avoid:{selection:ev.select(r).selectAll("g."+it._id+"tick"),side:W,offsetTop:i?0:I.t,offsetLeft:i?I.l:0,maxShift:i?q.width:q.height},attributes:{x:st,y:sr,"text-anchor":"middle"},transform:{rotate:i?-90:0,offset:0}})}}function At(){if(!i&&!mt||i&&mt){var Ht=e.select("."+Qi.cbtitle),Be=Ht.select("text"),st=[-h/2,h/2],sr=Ht.select(".h"+it._id+"title-math-group").node(),Pr=15.6;Be.node()&&(Pr=parseInt(Be.node().style.fontSize,10)*nV);var Et;if(sr?(Et=Xu.bBox(sr),Tt=Et.width,Dt=Et.height,Dt>Pr&&(st[1]-=(Dt-Pr)/2)):Be.node()&&!Be.classed(Qi.jsPlaceholder)&&(Et=Xu.bBox(Be.node()),Tt=Et.width,Dt=Et.height),i){if(Dt){if(Dt+=5,W==="top")it.domain[1]-=Dt/I.h,st[1]*=-1;else{it.domain[0]+=Dt/I.h;var ct=yve.lineCount(Be);st[1]+=(1-ct)*Pr}Ht.attr("transform",ju(st[0],st[1])),it.setScale()}}else Tt&&(W==="right"&&(it.domain[0]+=(Tt+dt/2)/I.w),Ht.attr("transform",ju(st[0],st[1])),it.setScale())}e.selectAll("."+Qi.cbfills+",."+Qi.cblines).attr("transform",i?ju(0,Math.round(I.h*(1-it.domain[1]))):ju(Math.round(I.w*it.domain[0]),0)),We.attr("transform",i?ju(0,Math.round(-I.t)):ju(Math.round(-I.l),0));var pt=e.select("."+Qi.cbfills).selectAll("rect."+Qi.cbfill).attr("style","").data(he);pt.enter().append("rect").classed(Qi.cbfill,!0).attr("style",""),pt.exit().remove();var Ot=J.map(it.c2p).map(Math.round).sort(function(yr,ur){return yr-ur});pt.each(function(yr,ur){var Lt=[ur===0?J[0]:(he[ur]+he[ur-1])/2,ur===he.length-1?J[1]:(he[ur]+he[ur+1])/2].map(it.c2p).map(Math.round);i&&(Lt[1]=su.constrain(Lt[1]+(Lt[1]>Lt[0])?1:-1,Ot[0],Ot[1]));var Fe=ev.select(this).attr(i?"x":"y",je).attr(i?"y":"x",ev.min(Lt)).attr(i?"width":"height",Math.max(Se,2)).attr(i?"height":"width",Math.max(ev.max(Lt)-ev.min(Lt),2));if(t._fillgradient)Xu.gradient(Fe,r,t._id,i?"vertical":"horizontalreversed",t._fillgradient,"fill");else{var Ue=ne(yr).replace("e-","");Fe.attr("fill",KT(Ue).toHexString())}});var er=e.select("."+Qi.cblines).selectAll("path."+Qi.cbline).data(H.color&&H.width?ke:[]);er.enter().append("path").classed(Qi.cbline,!0),er.exit().remove(),er.each(function(yr){var ur=je,Lt=Math.round(it.c2p(yr))+H.width/2%1;ev.select(this).attr("d","M"+(i?ur+","+Lt:Lt+","+ur)+(i?"h":"v")+Se).call(Xu.lineGroupStyle,H.width,te(yr),H.dash)}),We.selectAll("g."+it._id+"tick,path").remove();var Zt=je+Se+(h||0)/2-(t.ticks==="outside"?1:0),Kt=Dc.calcTicks(it),pr=Dc.getTickSigns(it)[2];return Dc.drawTicks(r,it,{vals:it.ticks==="inside"?Dc.clipEnds(it,Kt):Kt,layer:We,path:Dc.makeTickPath(it,Zt,pr),transFn:Dc.makeTransTickFn(it)}),Dc.drawLabels(r,it,{vals:Kt,layer:We,transFn:Dc.makeTransTickLabelFn(it),labelFns:Dc.makeLabelFns(it,Zt)})}function Vt(){var Ht,Be=Se+h/2;rt.indexOf("inside")===-1&&(Ht=Xu.bBox(We.node()),Be+=i?Ht.width:Ht.height),qt=ge.select("text");var st=0,sr=i&&W==="top",Pr=!i&&W==="right",Et=0;if(qt.node()&&!qt.classed(Qi.jsPlaceholder)){var ct,pt=ge.select(".h"+it._id+"title-math-group").node();pt&&(i&&mt||!i&&!mt)?(Ht=Xu.bBox(pt),st=Ht.width,ct=Ht.height):(Ht=Xu.bBox(ge.node()),st=Ht.right-I.l-(i?je:St),ct=Ht.bottom-I.t-(i?St:je),!i&&W==="top"&&(Be+=Ht.height,Et=Ht.height)),Pr&&(qt.attr("transform",ju(st/2+dt/2,0)),st*=2),Be=Math.max(Be,i?st:ct)}var Ot=(i?S:C)*2+Be+v+h/2,er=0;!i&&V.text&&T==="bottom"&&L<=0&&(er=Ot/2,Ot+=er,Et+=er),q._hColorbarMoveTitle=er,q._hColorbarMoveCBTitle=Et;var Zt=v+h,Kt=(i?je:St)-Zt/2-(i?S:0),pr=(i?St:je)-(i?xe:C+Et-er);e.select("."+Qi.cbbg).attr("x",Kt).attr("y",pr).attr(i?"width":"height",Math.max(Ot-er,2)).attr(i?"height":"width",Math.max(xe+Zt,2)).call($T.fill,m).call($T.stroke,t.bordercolor).style("stroke-width",v);var yr=Pr?Math.max(st-10,0):0;e.selectAll("."+Qi.cboutline).attr("x",(i?je:St+S)+yr).attr("y",(i?St+C-xe:je)+(sr?Dt:0)).attr(i?"width":"height",Math.max(Se,2)).attr(i?"height":"width",Math.max(xe-(i?2*C+Dt:2*S+yr),2)).call($T.stroke,t.outlinecolor).style({fill:"none","stroke-width":h});var ur=i?lt*Ot:0,Lt=i?0:(1-at)*Ot-Et;if(ur=B?I.l-ur:-ur,Lt=z?I.t-Lt:-Lt,e.attr("transform",ju(ur,Lt)),!i&&(v||KT(m).getAlpha()&&!KT.equals(q.paper_bgcolor,m))){var Fe=We.selectAll("text"),Ue=Fe[0].length,xt=e.select("."+Qi.cbbg).node(),wt=Xu.bBox(xt),mr=Xu.getTranslate(e),Ar=2;Fe.each(function(hn,nn){var Ki=0,ir=Ue-1;if(nn===Ki||nn===ir){var oi=Xu.bBox(this),Sa=Xu.getTranslate(this),la;if(nn===ir){var Ci=oi.right+Sa.x,ma=wt.right+mr.x+St-v-Ar+E;la=ma-Ci,la>0&&(la=0)}else if(nn===Ki){var se=oi.left+Sa.x,ee=wt.left+mr.x+St+v+Ar;la=ee-se,la<0&&(la=0)}la&&(Ue<3?this.setAttribute("transform","translate("+la+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var Mr={},Gr=oV[_],pa=sV[_],Ca=oV[T],ii=sV[T],wi=Ot-Se;i?(s==="pixels"?(Mr.y=L,Mr.t=xe*Ca,Mr.b=xe*ii):(Mr.t=Mr.b=0,Mr.yt=L+a*Ca,Mr.yb=L-a*ii),f==="pixels"?(Mr.x=E,Mr.l=Ot*Gr,Mr.r=Ot*pa):(Mr.l=wi*Gr,Mr.r=wi*pa,Mr.xl=E-l*Gr,Mr.xr=E+l*pa)):(s==="pixels"?(Mr.x=E,Mr.l=xe*Gr,Mr.r=xe*pa):(Mr.l=Mr.r=0,Mr.xl=E+a*Gr,Mr.xr=E-a*pa),f==="pixels"?(Mr.y=1-L,Mr.t=Ot*Ca,Mr.b=Ot*ii):(Mr.t=wi*Ca,Mr.b=wi*ii,Mr.yt=L-l*Ca,Mr.yb=L+l*ii));var vi=t.y<.5?"b":"t",Fi=t.x<.5?"l":"r";r._fullLayout._reservedMargin[t._id]={};var Gi={r:q.width-Kt-ur,l:Kt+Mr.r,b:q.height-pr-Lt,t:pr+Mr.b};B&&z?Pb.autoMargin(r,t._id,Mr):B?r._fullLayout._reservedMargin[t._id][vi]=Gi[vi]:z||i?r._fullLayout._reservedMargin[t._id][Fi]=Gi[Fi]:r._fullLayout._reservedMargin[t._id][vi]=Gi[vi]}return su.syncOrAsync([Pb.previousPromises,Ut,At,Ct,Pb.previousPromises,Vt],r)}function Mve(e,t,r){var i=t.orientation==="v",a=r._fullLayout,s=a._size,l,f,h;Db.init({element:e.node(),gd:r,prepFn:function(){l=e.attr("transform"),QT(e)},moveFn:function(v,m){e.attr("transform",l+ju(v,m)),f=Db.align((i?t._uFrac:t._vFrac)+v/s.w,i?t._thickFrac:t._lenFrac,0,1,t.xanchor),h=Db.align((i?t._vFrac:1-t._uFrac)-m/s.h,i?t._lenFrac:t._thickFrac,0,1,t.yanchor);var _=Db.getCursor(f,h,t.xanchor,t.yanchor);QT(e,_)},doneFn:function(){if(QT(e),f!==void 0&&h!==void 0){var v={};v[t._propPrefix+"x"]=f,v[t._propPrefix+"y"]=h,t._traceIndex!==void 0?iV.call("_guiRestyle",r,v,t._traceIndex):iV.call("_guiRelayout",r,v)}}})}function Sve(e,t,r){var i=t._levels,a=[],s=[],l,f,h=i.end+i.size/100,v=i.size,m=1.001*r[0]-.001*r[1],_=1.001*r[1]-.001*r[0];for(f=0;f<1e5&&(l=i.start+f*v,!(v>0?l>=h:l<=h));f++)l>m&&l<_&&a.push(l);if(t._fillgradient)s=[0];else if(typeof t._fillcolor=="function"){var T=t._filllevels;if(T)for(h=T.end+T.size/100,v=T.size,f=0;f<1e5&&(l=T.start+f*v,!(v>0?l>=h:l<=h));f++)l>r[0]&&l{"use strict";cV.exports={moduleType:"component",name:"colorbar",attributes:Z_(),supplyDefaults:r5(),draw:fV().draw,hasColorbar:Zw()}});var dV=pe((lbe,vV)=>{"use strict";vV.exports={moduleType:"component",name:"legend",layoutAttributes:$5(),supplyLayoutDefaults:t4(),draw:d4(),style:f4()}});var mV=pe((ube,pV)=>{"use strict";pV.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var gV=pe((fbe,yV)=>{"use strict";yV.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var rA=pe((cbe,wV)=>{"use strict";var Cve=sa(),bV=Bt(),tA=bV.extendFlat,_V=bV.extendDeep;function xV(e){var t;switch(e){case"themes__thumb":t={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":t={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:t={}}return t}function Eve(e){var t=["xaxis","yaxis","zaxis"];return t.indexOf(e.slice(0,5))>-1}wV.exports=function(t,r){var i,a=t.data,s=t.layout,l=_V([],a),f=_V({},s,xV(r.tileClass)),h=t._context||{};if(r.width&&(f.width=r.width),r.height&&(f.height=r.height),r.tileClass==="thumbnail"||r.tileClass==="themes__thumb"){f.annotations=[];var v=Object.keys(f);for(i=0;i{"use strict";var Lve=D_().EventEmitter,Dve=sa(),Pve=Bt(),TV=Pd(),zve=rA(),Ive=Ox(),Rve=Ux();function Fve(e,t){var r=new Lve,i=zve(e,{format:"png"}),a=i.gd;a.style.position="absolute",a.style.left="-5000px",document.body.appendChild(a);function s(){var f=TV.getDelay(a._fullLayout);setTimeout(function(){var h=Ive(a),v=document.createElement("canvas");v.id=Pve.randstr(),r=Rve({format:t.format,width:a._fullLayout.width,height:a._fullLayout.height,canvas:v,emitter:r,svg:h}),r.clean=function(){a&&document.body.removeChild(a)}},f)}var l=TV.getRedrawFunc(a);return Dve.call("_doPlot",a,i.data,i.layout,i.config).then(l).then(s).catch(function(f){r.emit("error",f)}),r}AV.exports=Fve});var CV=pe((vbe,kV)=>{"use strict";var SV=Pd(),qve={getDelay:SV.getDelay,getRedrawFunc:SV.getRedrawFunc,clone:rA(),toSVG:Ox(),svgToImg:Ux(),toImage:MV(),downloadImage:D6()};kV.exports=qve});var LV=pe(Pc=>{"use strict";Pc.version=W1().version;b7();fk();var Nve=sa(),s1=Pc.register=Nve.register,iA=IF(),EV=Object.keys(iA);for(zb=0;zb{"use strict";DV.exports=LV()});var nA=pe((ybe,FV)=>{"use strict";var{hovertemplateAttrs:Bve,texttemplateAttrs:Ove,templatefallbackAttrs:zV}=Mf(),Uve=_x(),Vf=kc(),Vve=ys(),IV=xc(),Hve=hc().dash,Hd=mn().extendFlat,Gve=il().overrideAll,lu=Vf.marker,RV=Vf.line,Zve=lu.line,mbe=["The library used by the *country names* `locationmode` option is changing in an upcoming version.","Country names in existing plots may not work in the new version."].join(" ");FV.exports=Gve({lon:{valType:"data_array"},lat:{valType:"data_array"},locations:{valType:"data_array"},locationmode:{valType:"enumerated",values:["ISO-3","USA-states","country names","geojson-id"],dflt:"ISO-3"},geojson:{valType:"any",editType:"calc"},featureidkey:{valType:"string",editType:"calc",dflt:"id"},mode:Hd({},Vf.mode,{dflt:"markers"}),text:Hd({},Vf.text,{}),texttemplate:Ove({editType:"plot"},{keys:["lat","lon","location","text"]}),texttemplatefallback:zV({editType:"plot"}),hovertext:Hd({},Vf.hovertext,{}),textfont:Vf.textfont,textposition:Vf.textposition,line:{color:RV.color,width:RV.width,dash:Hve},connectgaps:Vf.connectgaps,marker:Hd({symbol:lu.symbol,opacity:lu.opacity,angle:lu.angle,angleref:Hd({},lu.angleref,{values:["previous","up","north"]}),standoff:lu.standoff,size:lu.size,sizeref:lu.sizeref,sizemin:lu.sizemin,sizemode:lu.sizemode,colorbar:lu.colorbar,line:Hd({width:Zve.width},IV("marker.line")),gradient:lu.gradient},IV("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:Uve(),selected:Vf.selected,unselected:Vf.unselected,hoverinfo:Hd({},Vve.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:Bve(),hovertemplatefallback:zV()},"calc","nested")});var zc=pe((gbe,HV)=>{"use strict";var Yve=b_(),qV="1.13.4",UV='\xA9 OpenStreetMap contributors',NV=['\xA9 Carto',UV].join(" "),BV=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under ODbL'].join(" "),Wve=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under CC BY SA'].join(" "),VV={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:UV,tiles:["https://a.tile.openstreetmap.org/{z}/{x}/{y}.png","https://b.tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:NV,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:NV,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:BV,tiles:["https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:BV,tiles:["https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:Wve,tiles:["https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"}},OV=Yve(VV);HV.exports={requiredVersion:qV,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:VV,styleValuesNonMapbox:OV,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install @plotly/mapbox-gl@"+qV+"."].join(` `),noAccessTokenErrorMsg:["Missing Mapbox access token.","Mapbox trace type require a Mapbox access token to be registered.","For example:"," Plotly.newPlot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });","More info here: https://www.mapbox.com/help/define-access-token/"].join(` `),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",OV.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join(` `),multipleTokensErrorMsg:["Set multiple mapbox access token across different mapbox subplot,","using first token found as mapbox-gl does not allow multipleaccess tokens on the same page."].join(` -`),mapOnErrorMsg:"Mapbox error.",mapboxLogo:{path0:"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z",path1:"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z",path2:"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z",polygon:"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34"},styleRules:{map:"overflow:hidden;position:relative;","missing-css":"display:none;",canary:"background-color:salmon;","ctrl-bottom-left":"position: absolute; pointer-events: none; z-index: 2; bottom: 0; left: 0;","ctrl-bottom-right":"position: absolute; pointer-events: none; z-index: 2; right: 0; bottom: 0;",ctrl:"clear: both; pointer-events: auto; transform: translate(0, 0);","ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner":"display: none;","ctrl-attrib.mapboxgl-compact:hover .mapboxgl-ctrl-attrib-inner":"display: block; margin-top:2px","ctrl-attrib.mapboxgl-compact:hover":"padding: 2px 24px 2px 4px; visibility: visible; margin-top: 6px;","ctrl-attrib.mapboxgl-compact::after":`content: ""; cursor: pointer; position: absolute; background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"%3E %3Cpath fill="%23333333" fill-rule="evenodd" d="M4,10a6,6 0 1,0 12,0a6,6 0 1,0 -12,0 M9,7a1,1 0 1,0 2,0a1,1 0 1,0 -2,0 M9,10a1,1 0 1,1 2,0l0,3a1,1 0 1,1 -2,0"/%3E %3C/svg%3E'); background-color: rgba(255, 255, 255, 0.5); width: 24px; height: 24px; box-sizing: border-box; border-radius: 12px;`,"ctrl-attrib.mapboxgl-compact":"min-height: 20px; padding: 0; margin: 10px; position: relative; background-color: #fff; border-radius: 3px 12px 12px 3px;","ctrl-bottom-right > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":`display:block; width: 21px; height: 21px; background-image: url('data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E')`}}});var l1=pe((_be,WV)=>{"use strict";var GV=Bt(),ZV=Oa().defaultLine,Xve=Cb().attributes,jve=qo(),Jve=kc().textposition,Kve=il().overrideAll,Qve=Ii().templatedArray,oA=zc(),YV=jve({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});YV.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var $ve=WV.exports=Kve({_arrayAttrRegexps:[GV.counterRegex("mapbox",".layers",!0)],domain:Xve({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:oA.styleValuesMapbox.concat(oA.styleValuesNonMapbox),dflt:oA.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:Qve("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:ZV},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:ZV}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:YV,textposition:GV.extendFlat({},Jve,{arrayOk:!1})}})},"plot","from-root");$ve.uirevision={valType:"any",editType:"none"}});var Ib=pe((xbe,KV)=>{"use strict";var{hovertemplateAttrs:ede,texttemplateAttrs:tde,templatefallbackAttrs:XV}=Mf(),rde=gx(),u1=nA(),bm=kc(),jV=l1(),ade=ys(),ide=xc(),Gd=mn().extendFlat,nde=il().overrideAll,ode=l1(),JV=u1.line,wm=u1.marker;KV.exports=nde({lon:u1.lon,lat:u1.lat,cluster:{enabled:{valType:"boolean"},maxzoom:Gd({},ode.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:Gd({},wm.opacity,{dflt:1})},mode:Gd({},bm.mode,{dflt:"markers"}),text:Gd({},bm.text,{}),texttemplate:tde({editType:"plot"},{keys:["lat","lon","text"]}),texttemplatefallback:XV({editType:"plot"}),hovertext:Gd({},bm.hovertext,{}),line:{color:JV.color,width:JV.width},connectgaps:bm.connectgaps,marker:Gd({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:wm.opacity,size:wm.size,sizeref:wm.sizeref,sizemin:wm.sizemin,sizemode:wm.sizemode},ide("marker")),fill:u1.fill,fillcolor:rde(),textfont:jV.layers.symbol.textfont,textposition:jV.layers.symbol.textposition,below:{valType:"string"},selected:{marker:bm.selected.marker},unselected:{marker:bm.unselected.marker},hoverinfo:Gd({},ade.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:ede(),hovertemplatefallback:XV()},"calc","nested")});var sA=pe((bbe,QV)=>{"use strict";var sde=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];QV.exports={isSupportedFont:function(e){return sde.indexOf(e)!==-1}}});var tH=pe((wbe,eH)=>{"use strict";var f1=Bt(),lA=rs(),lde=I6(),ude=R6(),fde=F6(),cde=q6(),$V=Ib(),hde=sA().isSupportedFont;eH.exports=function(t,r,i,a){function s(z,B){return f1.coerce(t,r,$V,z,B)}function l(z,B){return f1.coerce2(t,r,$V,z,B)}var f=vde(t,r,s);if(!f){r.visible=!1;return}if(s("text"),s("texttemplate"),s("texttemplatefallback"),s("hovertext"),s("hovertemplate"),s("hovertemplatefallback"),s("mode"),s("below"),lA.hasMarkers(r)){lde(t,r,i,a,s,{noLine:!0,noAngle:!0}),s("marker.allowoverlap"),s("marker.angle");var h=r.marker;h.symbol!=="circle"&&(f1.isArrayOrTypedArray(h.size)&&(h.size=h.size[0]),f1.isArrayOrTypedArray(h.color)&&(h.color=h.color[0]))}lA.hasLines(r)&&(ude(t,r,i,a,s,{noDash:!0}),s("connectgaps"));var v=l("cluster.maxzoom"),m=l("cluster.step"),_=l("cluster.color",r.marker&&r.marker.color||i),T=l("cluster.size"),S=l("cluster.opacity"),C=v!==!1||m!==!1||_!==!1||T!==!1||S!==!1,E=s("cluster.enabled",C);if(E||lA.hasText(r)){var D=a.font.family;fde(t,r,a,s,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:hde(D)?D:"Open Sans Regular",weight:a.font.weight,style:a.font.style,size:a.font.size,color:a.font.color}})}s("fill"),r.fill!=="none"&&cde(t,r,i,s),f1.coerceSelectionMarkerOpacity(r,s)};function vde(e,t,r){var i=r("lon")||[],a=r("lat")||[],s=Math.min(i.length,a.length);return t._length=s,s}});var uA=pe((Tbe,aH)=>{"use strict";var rH=Xi();aH.exports=function(t,r,i){var a={},s=i[r.subplot]._subplot,l=s.mockAxis,f=t.lonlat;return a.lonLabel=rH.tickText(l,l.c2l(f[0]),!0).text,a.latLabel=rH.tickText(l,l.c2l(f[1]),!0).text,a}});var lH=pe((Abe,sH)=>{"use strict";var fA=Da(),iH=Zi().BADNUM,dde=O6(),pde=Hg(),mde=Wx(),yde=Bt().isArrayOrTypedArray,nH=Bt()._;function oH(e){return e&&typeof e=="string"}sH.exports=function(t,r){var i=yde(r.locations),a=i?r.locations.length:r._length,s=new Array(a),l;r.geojson?l=function(T){return oH(T)||fA(T)}:l=oH;for(var f=0;f{"use strict";var gde=Zi().BADNUM;c1.calcTraceToLineCoords=function(e){for(var t=e[0].trace,r=t.connectgaps,i=[],a=[],s=0;s0&&(i.push(a),a=[])}return a.length>0&&i.push(a),i};c1.makeLine=function(e){return e.length===1?{type:"LineString",coordinates:e[0]}:{type:"MultiLineString",coordinates:e}};c1.makePolygon=function(e){if(e.length===1)return{type:"Polygon",coordinates:e};for(var t=new Array(e.length),r=0;r{"use strict";var uH=Bt();fH.exports=function(t,r){var i=t.split(" "),a=i[0],s=i[1],l=uH.isArrayOrTypedArray(r)?uH.mean(r):r,f=.5+l/100,h=1.5+l/100,v=["",""],m=[0,0];switch(a){case"top":v[0]="top",m[1]=-h;break;case"bottom":v[0]="bottom",m[1]=h;break}switch(s){case"left":v[1]="right",m[0]=-f;break;case"right":v[1]="left",m[0]=f;break}var _;return v[0]&&v[1]?_=v.join("-"):v[0]?_=v[0]:v[1]?_=v[1]:_="center",{anchor:_,offset:m}}});var mH=pe((kbe,pH)=>{"use strict";var vH=Da(),ko=Bt(),_de=Zi().BADNUM,qb=Rb(),cH=P0(),xde=xi(),bde=n5(),Nb=rs(),wde=sA().isSupportedFont,Tde=cA(),Ade=bc().appendArrayPointValue,Mde=co().NEWLINES,Sde=co().BR_TAG_ALL;pH.exports=function(t,r){var i=r[0].trace,a=i.visible===!0&&i._length!==0,s=i.fill!=="none",l=Nb.hasLines(i),f=Nb.hasMarkers(i),h=Nb.hasText(i),v=f&&i.marker.symbol==="circle",m=f&&i.marker.symbol!=="circle",_=i.cluster&&i.cluster.enabled,T=Fb("fill"),S=Fb("line"),C=Fb("circle"),E=Fb("symbol"),D={fill:T,line:S,circle:C,symbol:E};if(!a)return D;var z;if((s||l)&&(z=qb.calcTraceToLineCoords(r)),s&&(T.geojson=qb.makePolygon(z),T.layout.visibility="visible",ko.extendFlat(T.paint,{"fill-color":i.fillcolor})),l&&(S.geojson=qb.makeLine(z),S.layout.visibility="visible",ko.extendFlat(S.paint,{"line-width":i.line.width,"line-color":i.line.color,"line-opacity":i.opacity})),v){var B=kde(r);C.geojson=B.geojson,C.layout.visibility="visible",_&&(C.filter=["!",["has","point_count"]],D.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":vA(i.cluster.color,i.cluster.step),"circle-radius":vA(i.cluster.size,i.cluster.step),"circle-opacity":vA(i.cluster.opacity,i.cluster.step)}},D.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":hH(i),"text-size":12}}),ko.extendFlat(C.paint,{"circle-color":B.mcc,"circle-radius":B.mrc,"circle-opacity":B.mo})}if(v&&_&&(C.filter=["!",["has","point_count"]]),(m||h)&&(E.geojson=Cde(r,t),ko.extendFlat(E.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),m&&(ko.extendFlat(E.layout,{"icon-size":i.marker.size/10}),"angle"in i.marker&&i.marker.angle!=="auto"&&ko.extendFlat(E.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),E.layout["icon-allow-overlap"]=i.marker.allowoverlap,ko.extendFlat(E.paint,{"icon-opacity":i.opacity*i.marker.opacity,"icon-color":i.marker.color})),h)){var q=(i.marker||{}).size,I=Tde(i.textposition,q);ko.extendFlat(E.layout,{"text-size":i.textfont.size,"text-anchor":I.anchor,"text-offset":I.offset,"text-font":hH(i)}),ko.extendFlat(E.paint,{"text-color":i.textfont.color,"text-opacity":i.opacity})}return D};function Fb(e){return{type:e,geojson:qb.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function kde(e){var t=e[0].trace,r=t.marker,i=t.selectedpoints,a=ko.isArrayOrTypedArray(r.color),s=ko.isArrayOrTypedArray(r.size),l=ko.isArrayOrTypedArray(r.opacity),f;function h(q){return t.opacity*q}function v(q){return q/2}var m;a&&(cH.hasColorscale(t,"marker")?m=cH.makeColorScaleFuncFromTrace(r):m=ko.identity);var _;s&&(_=bde(t));var T;l&&(T=function(q){var I=vH(q)?+ko.constrain(q,0,1):0;return h(I)});var S=[];for(f=0;f850?f+=" Black":a>750?f+=" Extra Bold":a>650?f+=" Bold":a>550?f+=" Semi Bold":a>450?f+=" Medium":a>350?f+=" Regular":a>250?f+=" Light":a>150?f+=" Extra Light":f+=" Thin"):s.slice(0,2).join(" ")==="Open Sans"?(f="Open Sans",a>750?f+=" Extrabold":a>650?f+=" Bold":a>550?f+=" Semibold":a>350?f+=" Regular":f+=" Light"):s.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(f="Klokantech Noto Sans",s[3]==="CJK"&&(f+=" CJK"),f+=a>500?" Bold":" Regular")),l&&(f+=" Italic"),f==="Open Sans Regular Italic"?f="Open Sans Italic":f==="Open Sans Regular Bold"?f="Open Sans Bold":f==="Open Sans Regular Bold Italic"?f="Open Sans Bold Italic":f==="Klokantech Noto Sans Regular Italic"&&(f="Klokantech Noto Sans Italic"),wde(f)||(f=r);var h=f.split(", ");return h}});var xH=pe((Cbe,_H)=>{"use strict";var Ede=Bt(),yH=mH(),Tm=zc().traceLayerPrefix,uu={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function gH(e,t,r,i){this.type="scattermapbox",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=i,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:Tm+t+"-fill",line:Tm+t+"-line",circle:Tm+t+"-circle",symbol:Tm+t+"-symbol",cluster:Tm+t+"-cluster",clusterCount:Tm+t+"-cluster-count"},this.below=null}var h1=gH.prototype;h1.addSource=function(e,t,r){var i={type:"geojson",data:t.geojson};r&&r.enabled&&Ede.extendFlat(i,{cluster:!0,clusterMaxZoom:r.maxzoom});var a=this.subplot.map.getSource(this.sourceIds[e]);a?a.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],i)};h1.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};h1.addLayer=function(e,t,r){var i={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(i.filter=t.filter);for(var a=this.layerIds[e],s,l=this.subplot.getMapLayers(),f=0;f=0;O--){var H=I[O];a.removeLayer(v.layerIds[H])}q||a.removeSource(v.sourceIds.circle)}function T(q){for(var I=uu.nonCluster,O=0;O=0;O--){var H=I[O];a.removeLayer(v.layerIds[H]),q||a.removeSource(v.sourceIds[H])}}function C(q){h?_(q):S(q)}function E(q){f?m(q):T(q)}function D(){for(var q=f?uu.cluster:uu.nonCluster,I=0;I=0;i--){var a=r[i];t.removeLayer(this.layerIds[a]),t.removeSource(this.sourceIds[a])}};_H.exports=function(t,r){var i=r[0].trace,a=i.cluster&&i.cluster.enabled,s=i.visible!==!0,l=new gH(t,i.uid,a,s),f=yH(t.gd,r),h=l.below=t.belowLookup["trace-"+i.uid],v,m,_;if(a)for(l.addSource("circle",f.circle,i.cluster),v=0;v{"use strict";var Lde=Rf(),dA=Bt(),Dde=aT(),Pde=dA.fillText,zde=Zi().BADNUM,Ide=zc().traceLayerPrefix;function Rde(e,t,r){var i=e.cd,a=i[0].trace,s=e.xa,l=e.ya,f=e.subplot,h=[],v=Ide+a.uid+"-circle",m=a.cluster&&a.cluster.enabled;if(m){var _=f.map.queryRenderedFeatures(null,{layers:[v]});h=_.map(function(W){return W.id})}var T=t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360),S=T*360,C=t-S;function E(W){var J=W.lonlat;if(J[0]===zde||m&&h.indexOf(W.i+1)===-1)return 1/0;var te=dA.modHalf(J[0],360),ne=J[1],oe=f.project([te,ne]),fe=oe.x-s.c2p([C,ne]),ve=oe.y-l.c2p([te,r]),Se=Math.max(3,W.mrc||0);return Math.max(Math.sqrt(fe*fe+ve*ve)-Se,1-3/Se)}if(Lde.getClosest(i,E,e),e.index!==!1){var D=i[e.index],z=D.lonlat,B=[dA.modHalf(z[0],360)+S,z[1]],q=s.c2p(B),I=l.c2p(B),O=D.mrc||1;e.x0=q-O,e.x1=q+O,e.y0=I-O,e.y1=I+O;var H={};H[a.subplot]={_subplot:f};var V=a._module.formatLabels(D,a,H);return e.lonLabel=V.lonLabel,e.latLabel=V.latLabel,e.color=Dde(a,D),e.extraText=bH(a,D,i[0].t.labels),e.hovertemplate=a.hovertemplate,[e]}}function bH(e,t,r){if(e.hovertemplate)return;var i=t.hi||e.hoverinfo,a=i.split("+"),s=a.indexOf("all")!==-1,l=a.indexOf("lon")!==-1,f=a.indexOf("lat")!==-1,h=t.lonlat,v=[];function m(_){return _+"\xB0"}return s||l&&f?v.push("("+m(h[1])+", "+m(h[0])+")"):l?v.push(r.lon+m(h[0])):f&&v.push(r.lat+m(h[1])),(s||a.indexOf("text")!==-1)&&Pde(t,e,v),v.join("
")}wH.exports={hoverPoints:Rde,getExtraText:bH}});var AH=pe((Lbe,TH)=>{"use strict";TH.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var SH=pe((Dbe,MH)=>{"use strict";var Fde=Bt(),qde=rs(),Nde=Zi().BADNUM;MH.exports=function(t,r){var i=t.cd,a=t.xaxis,s=t.yaxis,l=[],f=i[0].trace,h;if(!qde.hasMarkers(f))return[];if(r===!1)for(h=0;h{(function(e,t){typeof pA=="object"&&typeof mA!="undefined"?mA.exports=t():(e=e||self,e.mapboxgl=t())})(pA,function(){"use strict";var e,t,r;function i(a,s){if(!e)e=s;else if(!t)t=s;else{var l="var sharedChunk = {}; ("+e+")(sharedChunk); ("+t+")(sharedChunk);",f={};e(f),r=s(f),typeof window!="undefined"&&(r.workerUrl=window.URL.createObjectURL(new Blob([l],{type:"text/javascript"})))}}return i(["exports"],function(a){"use strict";function s(n,o){return o={exports:{}},n(o,o.exports),o.exports}var l="1.13.4",f=h;function h(n,o,u,p){this.cx=3*n,this.bx=3*(u-n)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*o,this.by=3*(p-o)-this.cy,this.ay=1-this.cy-this.by,this.p1x=n,this.p1y=p,this.p2x=u,this.p2y=p}h.prototype.sampleCurveX=function(n){return((this.ax*n+this.bx)*n+this.cx)*n},h.prototype.sampleCurveY=function(n){return((this.ay*n+this.by)*n+this.cy)*n},h.prototype.sampleCurveDerivativeX=function(n){return(3*this.ax*n+2*this.bx)*n+this.cx},h.prototype.solveCurveX=function(n,o){typeof o=="undefined"&&(o=1e-6);var u,p,x,A,k;for(x=n,k=0;k<8;k++){if(A=this.sampleCurveX(x)-n,Math.abs(A)p)return p;for(;uA?u=x:p=x,x=(p-u)*.5+u}return x},h.prototype.solve=function(n,o){return this.sampleCurveY(this.solveCurveX(n,o))};var v=m;function m(n,o){this.x=n,this.y=o}m.prototype={clone:function(){return new m(this.x,this.y)},add:function(n){return this.clone()._add(n)},sub:function(n){return this.clone()._sub(n)},multByPoint:function(n){return this.clone()._multByPoint(n)},divByPoint:function(n){return this.clone()._divByPoint(n)},mult:function(n){return this.clone()._mult(n)},div:function(n){return this.clone()._div(n)},rotate:function(n){return this.clone()._rotate(n)},rotateAround:function(n,o){return this.clone()._rotateAround(n,o)},matMult:function(n){return this.clone()._matMult(n)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(n){return this.x===n.x&&this.y===n.y},dist:function(n){return Math.sqrt(this.distSqr(n))},distSqr:function(n){var o=n.x-this.x,u=n.y-this.y;return o*o+u*u},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(n){return Math.atan2(this.y-n.y,this.x-n.x)},angleWith:function(n){return this.angleWithSep(n.x,n.y)},angleWithSep:function(n,o){return Math.atan2(this.x*o-this.y*n,this.x*n+this.y*o)},_matMult:function(n){var o=n[0]*this.x+n[1]*this.y,u=n[2]*this.x+n[3]*this.y;return this.x=o,this.y=u,this},_add:function(n){return this.x+=n.x,this.y+=n.y,this},_sub:function(n){return this.x-=n.x,this.y-=n.y,this},_mult:function(n){return this.x*=n,this.y*=n,this},_div:function(n){return this.x/=n,this.y/=n,this},_multByPoint:function(n){return this.x*=n.x,this.y*=n.y,this},_divByPoint:function(n){return this.x/=n.x,this.y/=n.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var n=this.y;return this.y=this.x,this.x=-n,this},_rotate:function(n){var o=Math.cos(n),u=Math.sin(n),p=o*this.x-u*this.y,x=u*this.x+o*this.y;return this.x=p,this.y=x,this},_rotateAround:function(n,o){var u=Math.cos(n),p=Math.sin(n),x=o.x+u*(this.x-o.x)-p*(this.y-o.y),A=o.y+p*(this.x-o.x)+u*(this.y-o.y);return this.x=x,this.y=A,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},m.convert=function(n){return n instanceof m?n:Array.isArray(n)?new m(n[0],n[1]):n};var _=typeof self!="undefined"?self:{};function T(n,o){if(Array.isArray(n)){if(!Array.isArray(o)||n.length!==o.length)return!1;for(var u=0;u=1)return 1;var o=n*n,u=o*n;return 4*(n<.5?u:3*(n-o)+u-.75)}function E(n,o,u,p){var x=new f(n,o,u,p);return function(A){return x.solve(A)}}var D=E(.25,.1,.25,1);function z(n,o,u){return Math.min(u,Math.max(o,n))}function B(n,o,u){var p=u-o,x=((n-o)%p+p)%p+o;return x===o?u:x}function q(n,o,u){if(!n.length)return u(null,[]);var p=n.length,x=new Array(n.length),A=null;n.forEach(function(k,F){o(k,function(Y,j){Y&&(A=Y),x[F]=j,--p===0&&u(A,x)})})}function I(n){var o=[];for(var u in n)o.push(n[u]);return o}function O(n,o){var u=[];for(var p in n)p in o||u.push(p);return u}function H(n){for(var o=[],u=arguments.length-1;u-- >0;)o[u]=arguments[u+1];for(var p=0,x=o;p>o/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,n)}return n()}function ne(n){return n<=1?1:Math.pow(2,Math.ceil(Math.log(n)/Math.LN2))}function oe(n){return n?/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(n):!1}function fe(n,o){n.forEach(function(u){o[u]&&(o[u]=o[u].bind(o))})}function ve(n,o){return n.indexOf(o,n.length-o.length)!==-1}function Se(n,o,u){var p={};for(var x in n)p[x]=o.call(u||this,n[x],x,n);return p}function Me(n,o,u){var p={};for(var x in n)o.call(u||this,n[x],x,n)&&(p[x]=n[x]);return p}function Ae(n){return Array.isArray(n)?n.map(Ae):typeof n=="object"&&n?Se(n,Ae):n}function we(n,o){for(var u=0;u=0)return!0;return!1}var Te={};function Ce(n){Te[n]||(typeof console!="undefined"&&console.warn(n),Te[n]=!0)}function Le(n,o,u){return(u.y-n.y)*(o.x-n.x)>(o.y-n.y)*(u.x-n.x)}function Ke(n){for(var o=0,u=0,p=n.length,x=p-1,A=void 0,k=void 0;u@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,u={};if(n.replace(o,function(x,A,k,F){var Y=k||F;return u[A]=Y?Y.toLowerCase():!0,""}),u["max-age"]){var p=parseInt(u["max-age"],10);isNaN(p)?delete u["max-age"]:u["max-age"]=p}return u}var Ye=null;function St(n){if(Ye==null){var o=n.navigator?n.navigator.userAgent:null;Ye=!!n.safari||!!(o&&(/\b(iPad|iPhone|iPod)\b/.test(o)||o.match("Safari")&&!o.match("Chrome")))}return Ye}function it(n){try{var o=_[n];return o.setItem("_mapbox_test_",1),o.removeItem("_mapbox_test_"),!0}catch(u){return!1}}function mt(n){return _.btoa(encodeURIComponent(n).replace(/%([0-9A-F]{2})/g,function(o,u){return String.fromCharCode(+("0x"+u))}))}function bt(n){return decodeURIComponent(_.atob(n).split("").map(function(o){return"%"+("00"+o.charCodeAt(0).toString(16)).slice(-2)}).join(""))}var vt=_.performance&&_.performance.now?_.performance.now.bind(_.performance):Date.now.bind(Date),de=_.requestAnimationFrame||_.mozRequestAnimationFrame||_.webkitRequestAnimationFrame||_.msRequestAnimationFrame,De=_.cancelAnimationFrame||_.mozCancelAnimationFrame||_.webkitCancelAnimationFrame||_.msCancelAnimationFrame,ge,rt,dt={now:vt,frame:function(o){var u=de(o);return{cancel:function(){return De(u)}}},getImageData:function(o,u){u===void 0&&(u=0);var p=_.document.createElement("canvas"),x=p.getContext("2d");if(!x)throw new Error("failed to create canvas 2d context");return p.width=o.width,p.height=o.height,x.drawImage(o,0,0,o.width,o.height),x.getImageData(-u,-u,o.width+2*u,o.height+2*u)},resolveURL:function(o){return ge||(ge=_.document.createElement("a")),ge.href=o,ge.href},hardwareConcurrency:_.navigator&&_.navigator.hardwareConcurrency||4,get devicePixelRatio(){return _.devicePixelRatio},get prefersReducedMotion(){return _.matchMedia?(rt==null&&(rt=_.matchMedia("(prefers-reduced-motion: reduce)")),rt.matches):!1}},We={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},qt={supported:!1,testSupport:Ct},Dt,Tt=!1,Rt,Ut=!1;_.document&&(Rt=_.document.createElement("img"),Rt.onload=function(){Dt&&At(Dt),Dt=null,Ut=!0},Rt.onerror=function(){Tt=!0,Dt=null},Rt.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");function Ct(n){Tt||!Rt||(Ut?At(n):Dt=n)}function At(n){var o=n.createTexture();n.bindTexture(n.TEXTURE_2D,o);try{if(n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,Rt),n.isContextLost())return;qt.supported=!0}catch(u){}n.deleteTexture(o),Tt=!0}var Vt="01";function Ht(){for(var n="1",o="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",u="",p=0;p<10;p++)u+=o[Math.floor(Math.random()*62)];var x=12*60*60*1e3,A=[n,Vt,u].join(""),k=Date.now()+x;return{token:A,tokenExpiresAt:k}}var Be=function(o,u){this._transformRequestFn=o,this._customAccessToken=u,this._createSkuToken()};Be.prototype._createSkuToken=function(){var o=Ht();this._skuToken=o.token,this._skuTokenExpiresAt=o.tokenExpiresAt},Be.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},Be.prototype.transformRequest=function(o,u){return this._transformRequestFn?this._transformRequestFn(o,u)||{url:o}:{url:o}},Be.prototype.normalizeStyleURL=function(o,u){if(!st(o))return o;var p=Ot(o);return p.path="/styles/v1"+p.path,this._makeAPIURL(p,this._customAccessToken||u)},Be.prototype.normalizeGlyphsURL=function(o,u){if(!st(o))return o;var p=Ot(o);return p.path="/fonts/v1"+p.path,this._makeAPIURL(p,this._customAccessToken||u)},Be.prototype.normalizeSourceURL=function(o,u){if(!st(o))return o;var p=Ot(o);return p.path="/v4/"+p.authority+".json",p.params.push("secure"),this._makeAPIURL(p,this._customAccessToken||u)},Be.prototype.normalizeSpriteURL=function(o,u,p,x){var A=Ot(o);return st(o)?(A.path="/styles/v1"+A.path+"/sprite"+u+p,this._makeAPIURL(A,this._customAccessToken||x)):(A.path+=""+u+p,er(A))},Be.prototype.normalizeTileURL=function(o,u){if(this._isSkuTokenExpired()&&this._createSkuToken(),o&&!st(o))return o;var p=Ot(o),x=/(\.(png|jpg)\d*)(?=$)/,A=/^.+\/v4\//,k=dt.devicePixelRatio>=2||u===512?"@2x":"",F=qt.supported?".webp":"$1";p.path=p.path.replace(x,""+k+F),p.path=p.path.replace(A,"/"),p.path="/v4"+p.path;var Y=this._customAccessToken||ct(p.params)||We.ACCESS_TOKEN;return We.REQUIRE_ACCESS_TOKEN&&Y&&this._skuToken&&p.params.push("sku="+this._skuToken),this._makeAPIURL(p,Y)},Be.prototype.canonicalizeTileURL=function(o,u){var p="/v4/",x=/\.[\w]+$/,A=Ot(o);if(!A.path.match(/(^\/v4\/)/)||!A.path.match(x))return o;var k="mapbox://tiles/";k+=A.path.replace(p,"");var F=A.params;return u&&(F=F.filter(function(Y){return!Y.match(/^access_token=/)})),F.length&&(k+="?"+F.join("&")),k},Be.prototype.canonicalizeTileset=function(o,u){for(var p=u?st(u):!1,x=[],A=0,k=o.tiles||[];A=0&&o.params.splice(A,1)}if(x.path!=="/"&&(o.path=""+x.path+o.path),!We.REQUIRE_ACCESS_TOKEN)return er(o);if(u=u||We.ACCESS_TOKEN,!u)throw new Error("An API access token is required to use Mapbox GL. "+p);if(u[0]==="s")throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+p);return o.params=o.params.filter(function(k){return k.indexOf("access_token")===-1}),o.params.push("access_token="+u),er(o)};function st(n){return n.indexOf("mapbox:")===0}var sr=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function Dr(n){return sr.test(n)}function Et(n){return n.indexOf("sku=")>0&&Dr(n)}function ct(n){for(var o=0,u=n;o=1&&_.localStorage.setItem(u,JSON.stringify(this.eventData))}catch(x){Ce("Unable to write to LocalStorage")}},pr.prototype.processRequests=function(o){},pr.prototype.postEvent=function(o,u,p,x){var A=this;if(We.EVENTS_URL){var k=Ot(We.EVENTS_URL);k.params.push("access_token="+(x||We.ACCESS_TOKEN||""));var F={event:this.type,created:new Date(o).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:l,skuId:Vt,userId:this.anonId},Y=u?H(F,u):F,j={url:er(k),headers:{"Content-Type":"text/plain"},body:JSON.stringify([Y])};this.pendingRequest=Ze(j,function(Q){A.pendingRequest=null,p(Q),A.saveEventData(),A.processRequests(x)})}},pr.prototype.queueRequest=function(o,u){this.queue.push(o),this.processRequests(u)};var yr=function(n){function o(){n.call(this,"map.load"),this.success={},this.skuToken=""}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.postMapLoadEvent=function(p,x,A,k){this.skuToken=A,(We.EVENTS_URL&&k||We.ACCESS_TOKEN&&Array.isArray(p)&&p.some(function(F){return st(F)||Dr(F)}))&&this.queueRequest({id:x,timestamp:Date.now()},k)},o.prototype.processRequests=function(p){var x=this;if(!(this.pendingRequest||this.queue.length===0)){var A=this.queue.shift(),k=A.id,F=A.timestamp;k&&this.success[k]||(this.anonId||this.fetchEventData(),oe(this.anonId)||(this.anonId=te()),this.postEvent(F,{skuToken:this.skuToken},function(Y){Y||k&&(x.success[k]=!0)},p))}},o}(pr),ur=function(n){function o(u){n.call(this,"appUserTurnstile"),this._customAccessToken=u}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.postTurnstileEvent=function(p,x){We.EVENTS_URL&&We.ACCESS_TOKEN&&Array.isArray(p)&&p.some(function(A){return st(A)||Dr(A)})&&this.queueRequest(Date.now(),x)},o.prototype.processRequests=function(p){var x=this;if(!(this.pendingRequest||this.queue.length===0)){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var A=Kt(We.ACCESS_TOKEN),k=A?A.u:We.ACCESS_TOKEN,F=k!==this.eventData.tokenU;oe(this.anonId)||(this.anonId=te(),F=!0);var Y=this.queue.shift();if(this.eventData.lastSuccess){var j=new Date(this.eventData.lastSuccess),Q=new Date(Y),ie=(Y-this.eventData.lastSuccess)/(24*60*60*1e3);F=F||ie>=1||ie<-1||j.getDate()!==Q.getDate()}else F=!0;if(!F)return this.processRequests();this.postEvent(Y,{"enabled.telemetry":!1},function(ye){ye||(x.eventData.lastSuccess=Y,x.eventData.tokenU=k)},p)}},o}(pr),Lt=new ur,Fe=Lt.postTurnstileEvent.bind(Lt),Ue=new yr,xt=Ue.postMapLoadEvent.bind(Ue),wt="mapbox-tiles",mr=500,Ar=50,Mr=1e3*60*7,Gr;function pa(){_.caches&&!Gr&&(Gr=_.caches.open(wt))}var Ca;function ii(n,o){if(Ca===void 0)try{new Response(new ReadableStream),Ca=!0}catch(u){Ca=!1}Ca?o(n.body):n.blob().then(o)}function wi(n,o,u){if(pa(),!!Gr){var p={status:o.status,statusText:o.statusText,headers:new _.Headers};o.headers.forEach(function(k,F){return p.headers.set(F,k)});var x=gt(o.headers.get("Cache-Control")||"");if(!x["no-store"]){x["max-age"]&&p.headers.set("Expires",new Date(u+x["max-age"]*1e3).toUTCString());var A=new Date(p.headers.get("Expires")).getTime()-u;ADate.now()&&!u["no-cache"]}var hn=1/0;function nn(n){hn++,hn>Ar&&(n.getActor().send("enforceCacheSizeLimit",mr),hn=0)}function Ki(n){pa(),Gr&&Gr.then(function(o){o.keys().then(function(u){for(var p=0;p=200&&u.status<300||u.status===0)&&u.response!==null){var x=u.response;if(n.type==="json")try{x=JSON.parse(u.response)}catch(A){return o(A)}o(null,x,u.getResponseHeader("Cache-Control"),u.getResponseHeader("Expires"))}else o(new ma(u.statusText,u.status,n.url))},u.send(n.body),{cancel:function(){return u.abort()}}}var Ee=function(n,o){if(!ee(n.url)){if(_.fetch&&_.Request&&_.AbortController&&_.Request.prototype.hasOwnProperty("signal"))return le(n,o);if(at()&&self.worker&&self.worker.actor){var u=!0;return self.worker.actor.send("getResource",n,o,void 0,u)}}return ce(n,o)},Ne=function(n,o){return Ee(H(n,{type:"json"}),o)},$e=function(n,o){return Ee(H(n,{type:"arrayBuffer"}),o)},Ze=function(n,o){return Ee(H(n,{method:"POST"}),o)};function yt(n){var o=_.document.createElement("a");return o.href=n,o.protocol===_.document.location.protocol&&o.host===_.document.location.host}var Pt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function Ft(n,o,u,p){var x=new _.Image,A=_.URL;x.onload=function(){o(null,x),A.revokeObjectURL(x.src),x.onload=null,_.requestAnimationFrame(function(){x.src=Pt})},x.onerror=function(){return o(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var k=new _.Blob([new Uint8Array(n)],{type:"image/png"});x.cacheControl=u,x.expires=p,x.src=n.byteLength?A.createObjectURL(k):Pt}function tr(n,o){var u=new _.Blob([new Uint8Array(n)],{type:"image/png"});_.createImageBitmap(u).then(function(p){o(null,p)}).catch(function(p){o(new Error("Could not load image because of "+p.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}var Wt,Sr,Zr=function(){Wt=[],Sr=0};Zr();var Or=function(n,o){if(qt.supported&&(n.headers||(n.headers={}),n.headers.accept="image/webp,*/*"),Sr>=We.MAX_PARALLEL_IMAGE_REQUESTS){var u={requestParameters:n,callback:o,cancelled:!1,cancel:function(){this.cancelled=!0}};return Wt.push(u),u}Sr++;var p=!1,x=function(){if(!p)for(p=!0,Sr--;Wt.length&&Sr0||this._oneTimeListeners&&this._oneTimeListeners[o]&&this._oneTimeListeners[o].length>0||this._eventedParent&&this._eventedParent.listens(o)},gr.prototype.setEventedParent=function(o,u){return this._eventedParent=o,this._eventedParentData=u,this};var $r=8,ga={version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},nr={"*":{type:"source"}},Ti=["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],Ea={type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},si={type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},fa={type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},Pn={type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},Co={type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},xs={type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},Ga={id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},Kn=["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],hu={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Ui={"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},dl={"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},$d={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},qc={"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Nc={"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},hv={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},vv={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},vu={type:"array",value:"*"},pl={type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},ep={type:"enum",values:{Point:{},LineString:{},Polygon:{}}},Ju={type:"array",minimum:0,maximum:24,value:["number","color"],length:2},Zf={type:"array",value:"*",minimum:1},$i={anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},Ho=["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],mo={"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},ml={"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},Go={"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},du={"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},tp={"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},dv={"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Ku={"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},pv={"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},mv={duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},oo={"*":{type:"string"}},Xt={$version:$r,$root:ga,sources:nr,source:Ti,source_vector:Ea,source_raster:si,source_raster_dem:fa,source_geojson:Pn,source_video:Co,source_image:xs,layer:Ga,layout:Kn,layout_background:hu,layout_fill:Ui,layout_circle:dl,layout_heatmap:$d,"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:qc,layout_symbol:Nc,layout_raster:hv,layout_hillshade:vv,filter:vu,filter_operator:pl,geometry_type:ep,function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:Ju,expression:Zf,light:$i,paint:Ho,paint_fill:mo,"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:ml,paint_circle:Go,paint_heatmap:du,paint_symbol:tp,paint_raster:dv,paint_hillshade:Ku,paint_background:pv,transition:mv,"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:oo},Ur=function(o,u,p,x){this.message=(o?o+": ":"")+p,x&&(this.identifier=x),u!=null&&u.__line__&&(this.line=u.__line__)};function rp(n){var o=n.key,u=n.value;return u?[new Ur(o,u,"constants have been deprecated as of v8")]:[]}function pu(n){for(var o=[],u=arguments.length-1;u-- >0;)o[u]=arguments[u+1];for(var p=0,x=o;p":n.itemType.kind==="value"?"array":"array<"+o+">"}else return n.kind}var Ts=[$u,Er,ba,wa,ws,fs,gl,yo(Aa),_l];function cs(n,o){if(o.kind==="error")return null;if(n.kind==="array"){if(o.kind==="array"&&(o.N===0&&o.itemType.kind==="value"||!cs(n.itemType,o.itemType))&&(typeof n.N!="number"||n.N===o.N))return null}else{if(n.kind===o.kind)return null;if(n.kind==="value")for(var u=0,p=Ts;u255?255:j}function x(j){return j<0?0:j>1?1:j}function A(j){return j[j.length-1]==="%"?p(parseFloat(j)/100*255):p(parseInt(j))}function k(j){return j[j.length-1]==="%"?x(parseFloat(j)/100):x(parseFloat(j))}function F(j,Q,ie){return ie<0?ie+=1:ie>1&&(ie-=1),ie*6<1?j+(Q-j)*ie*6:ie*2<1?Q:ie*3<2?j+(Q-j)*(2/3-ie)*6:j}function Y(j){var Q=j.replace(/ /g,"").toLowerCase();if(Q in u)return u[Q].slice();if(Q[0]==="#"){if(Q.length===4){var ie=parseInt(Q.substr(1),16);return ie>=0&&ie<=4095?[(ie&3840)>>4|(ie&3840)>>8,ie&240|(ie&240)>>4,ie&15|(ie&15)<<4,1]:null}else if(Q.length===7){var ie=parseInt(Q.substr(1),16);return ie>=0&&ie<=16777215?[(ie&16711680)>>16,(ie&65280)>>8,ie&255,1]:null}return null}var ye=Q.indexOf("("),he=Q.indexOf(")");if(ye!==-1&&he+1===Q.length){var ke=Q.substr(0,ye),qe=Q.substr(ye+1,he-(ye+1)).split(","),ut=1;switch(ke){case"rgba":if(qe.length!==4)return null;ut=k(qe.pop());case"rgb":return qe.length!==3?null:[A(qe[0]),A(qe[1]),A(qe[2]),ut];case"hsla":if(qe.length!==4)return null;ut=k(qe.pop());case"hsl":if(qe.length!==3)return null;var et=(parseFloat(qe[0])%360+360)%360/360,kt=k(qe[1]),_t=k(qe[2]),Mt=_t<=.5?_t*(kt+1):_t+kt-_t*kt,It=_t*2-Mt;return[p(F(It,Mt,et+1/3)*255),p(F(It,Mt,et)*255),p(F(It,Mt,et-1/3)*255),ut];default:return null}}return null}try{o.parseCSSColor=Y}catch(j){}}),Yf=Cm.parseCSSColor,ni=function(o,u,p,x){x===void 0&&(x=1),this.r=o,this.g=u,this.b=p,this.a=x};ni.parse=function(o){if(o){if(o instanceof ni)return o;if(typeof o=="string"){var u=Yf(o);if(u)return new ni(u[0]/255*u[3],u[1]/255*u[3],u[2]/255*u[3],u[3])}}},ni.prototype.toString=function(){var o=this.toArray(),u=o[0],p=o[1],x=o[2],A=o[3];return"rgba("+Math.round(u)+","+Math.round(p)+","+Math.round(x)+","+A+")"},ni.prototype.toArray=function(){var o=this,u=o.r,p=o.g,x=o.b,A=o.a;return A===0?[0,0,0,0]:[u*255/A,p*255/A,x*255/A,A]},ni.black=new ni(0,0,0,1),ni.white=new ni(1,1,1,1),ni.transparent=new ni(0,0,0,0),ni.red=new ni(1,0,0,1);var Wf=function(o,u,p){o?this.sensitivity=u?"variant":"case":this.sensitivity=u?"accent":"base",this.locale=p,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};Wf.prototype.compare=function(o,u){return this.collator.compare(o,u)},Wf.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var yv=function(o,u,p,x,A){this.text=o,this.image=u,this.scale=p,this.fontStack=x,this.textColor=A},xn=function(o){this.sections=o};xn.fromString=function(o){return new xn([new yv(o,null,null,null,null)])},xn.prototype.isEmpty=function(){return this.sections.length===0?!0:!this.sections.some(function(o){return o.text.length!==0||o.image&&o.image.name.length!==0})},xn.factory=function(o){return o instanceof xn?o:xn.fromString(o)},xn.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(o){return o.text}).join("")},xn.prototype.serialize=function(){for(var o=["format"],u=0,p=this.sections;u=0&&n<=255&&typeof o=="number"&&o>=0&&o<=255&&typeof u=="number"&&u>=0&&u<=255)){var x=typeof p=="number"?[n,o,u,p]:[n,o,u];return"Invalid rgba value ["+x.join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}return typeof p=="undefined"||typeof p=="number"&&p>=0&&p<=1?null:"Invalid rgba value ["+[n,o,u,p].join(", ")+"]: 'a' must be between 0 and 1."}function ef(n){if(n===null)return!0;if(typeof n=="string")return!0;if(typeof n=="boolean")return!0;if(typeof n=="number")return!0;if(n instanceof ni)return!0;if(n instanceof Wf)return!0;if(n instanceof xn)return!0;if(n instanceof zn)return!0;if(Array.isArray(n)){for(var o=0,u=n;o2){var F=o[1];if(typeof F!="string"||!(F in Xf)||F==="object")return u.error('The item type argument of "array" must be one of string, number, boolean',1);k=Xf[F],p++}else k=Aa;var Y;if(o.length>3){if(o[2]!==null&&(typeof o[2]!="number"||o[2]<0||o[2]!==Math.floor(o[2])))return u.error('The length argument to "array" must be a positive integer literal',2);Y=o[2],p++}x=yo(k,Y)}else x=Xf[A];for(var j=[];p1)&&u.push(x)}}return u.concat(this.args.map(function(A){return A.serialize()}))};var Yo=function(o){this.type=fs,this.sections=o};Yo.parse=function(o,u){if(o.length<2)return u.error("Expected at least one argument.");var p=o[1];if(!Array.isArray(p)&&typeof p=="object")return u.error("First argument must be an image or text section.");for(var x=[],A=!1,k=1;k<=o.length-1;++k){var F=o[k];if(A&&typeof F=="object"&&!Array.isArray(F)){A=!1;var Y=null;if(F["font-scale"]&&(Y=u.parse(F["font-scale"],1,Er),!Y))return null;var j=null;if(F["text-font"]&&(j=u.parse(F["text-font"],1,yo(ba)),!j))return null;var Q=null;if(F["text-color"]&&(Q=u.parse(F["text-color"],1,ws),!Q))return null;var ie=x[x.length-1];ie.scale=Y,ie.font=j,ie.textColor=Q}else{var ye=u.parse(o[k],1,Aa);if(!ye)return null;var he=ye.type.kind;if(he!=="string"&&he!=="value"&&he!=="null"&&he!=="resolvedImage")return u.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");A=!0,x.push({content:ye,scale:null,font:null,textColor:null})}}return new Yo(x)},Yo.prototype.evaluate=function(o){var u=function(p){var x=p.content.evaluate(o);return sn(x)===_l?new yv("",x,null,null,null):new yv(Eo(x),null,p.scale?p.scale.evaluate(o):null,p.font?p.font.evaluate(o).join(","):null,p.textColor?p.textColor.evaluate(o):null)};return new xn(this.sections.map(u))},Yo.prototype.eachChild=function(o){for(var u=0,p=this.sections;u-1),p},Xs.prototype.eachChild=function(o){o(this.input)},Xs.prototype.outputDefined=function(){return!1},Xs.prototype.serialize=function(){return["image",this.input.serialize()]};var Em={"to-boolean":wa,"to-color":ws,"to-number":Er,"to-string":ba},Wo=function(o,u){this.type=o,this.args=u};Wo.parse=function(o,u){if(o.length<2)return u.error("Expected at least one argument.");var p=o[0];if((p==="to-boolean"||p==="to-string")&&o.length!==2)return u.error("Expected one argument.");for(var x=Em[p],A=[],k=1;k4?p="Invalid rbga value "+JSON.stringify(u)+": expected an array containing either three or four numeric values.":p=ap(u[0],u[1],u[2],u[3]),!p))return new ni(u[0]/255,u[1]/255,u[2]/255,u[3])}throw new vn(p||"Could not parse color from value '"+(typeof u=="string"?u:String(JSON.stringify(u)))+"'")}else if(this.type.kind==="number"){for(var Y=null,j=0,Q=this.args;j=o[2]||n[1]<=o[1]||n[3]>=o[3])}function Im(n,o){var u=Pm(n[0]),p=zm(n[1]),x=Math.pow(2,o.z);return[Math.round(u*x*bl),Math.round(p*x*bl)]}function Rm(n,o,u){var p=n[0]-o[0],x=n[1]-o[1],A=n[0]-u[0],k=n[1]-u[1];return p*k-A*x===0&&p*A<=0&&x*k<=0}function Fm(n,o,u){return o[1]>n[1]!=u[1]>n[1]&&n[0]<(u[0]-o[0])*(n[1]-o[1])/(u[1]-o[1])+o[0]}function _v(n,o){for(var u=!1,p=0,x=o.length;p0&&ie<0||Q<0&&ie>0}function ip(n,o,u,p){var x=[o[0]-n[0],o[1]-n[1]],A=[p[0]-u[0],p[1]-u[1]];return Nm(A,x)===0?!1:!!(xv(n,o,u,p)&&xv(u,p,n,o))}function np(n,o,u){for(var p=0,x=u;pu[2]){var x=p*.5,A=n[0]-u[0]>x?-p:u[0]-n[0]>x?p:0;A===0&&(A=n[0]-u[2]>x?-p:u[2]-n[0]>x?p:0),n[0]+=A}gv(o,n)}function Om(n){n[0]=n[1]=1/0,n[2]=n[3]=-1/0}function sp(n,o,u,p){for(var x=Math.pow(2,p.z)*bl,A=[p.x*bl,p.y*bl],k=[],F=0,Y=n;F=0)return!1;var u=!0;return n.eachChild(function(p){u&&!Vc(p,o)&&(u=!1)}),u}var Tl=function(o,u){this.type=u.type,this.name=o,this.boundExpression=u};Tl.parse=function(o,u){if(o.length!==2||typeof o[1]!="string")return u.error("'var' expression requires exactly one string literal argument.");var p=o[1];return u.scope.has(p)?new Tl(p,u.scope.get(p)):u.error('Unknown variable "'+p+'". Make sure "'+p+'" has been bound in an enclosing "let" expression before using it.',1)},Tl.prototype.evaluate=function(o){return this.boundExpression.evaluate(o)},Tl.prototype.eachChild=function(){},Tl.prototype.outputDefined=function(){return!1},Tl.prototype.serialize=function(){return["var",this.name]};var Al=function(o,u,p,x,A){u===void 0&&(u=[]),x===void 0&&(x=new Qu),A===void 0&&(A=[]),this.registry=o,this.path=u,this.key=u.map(function(k){return"["+k+"]"}).join(""),this.scope=x,this.errors=A,this.expectedType=p};Al.prototype.parse=function(o,u,p,x,A){return A===void 0&&(A={}),u?this.concat(u,p,x)._parse(o,A):this._parse(o,A)},Al.prototype._parse=function(o,u){(o===null||typeof o=="string"||typeof o=="boolean"||typeof o=="number")&&(o=["literal",o]);function p(Q,ie,ye){return ye==="assert"?new ln(ie,[Q]):ye==="coerce"?new Wo(ie,[Q]):Q}if(Array.isArray(o)){if(o.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var x=o[0];if(typeof x!="string")return this.error("Expression name must be a string, but found "+typeof x+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var A=this.registry[x];if(A){var k=A.parse(o,this);if(!k)return null;if(this.expectedType){var F=this.expectedType,Y=k.type;if((F.kind==="string"||F.kind==="number"||F.kind==="boolean"||F.kind==="object"||F.kind==="array")&&Y.kind==="value")k=p(k,F,u.typeAnnotation||"assert");else if((F.kind==="color"||F.kind==="formatted"||F.kind==="resolvedImage")&&(Y.kind==="value"||Y.kind==="string"))k=p(k,F,u.typeAnnotation||"coerce");else if(this.checkSubtype(F,Y))return null}if(!(k instanceof Zo)&&k.type.kind!=="resolvedImage"&&Tv(k)){var j=new js;try{k=new Zo(k.type,k.evaluate(j))}catch(Q){return this.error(Q.message),null}}return k}return this.error('Unknown expression "'+x+'". If you wanted a literal array, use ["literal", [...]].',0)}else return typeof o=="undefined"?this.error("'undefined' value invalid. Use null instead."):typeof o=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof o+" instead.")},Al.prototype.concat=function(o,u,p){var x=typeof o=="number"?this.path.concat(o):this.path,A=p?this.scope.concat(p):this.scope;return new Al(this.registry,x,u||null,A,this.errors)},Al.prototype.error=function(o){for(var u=[],p=arguments.length-1;p-- >0;)u[p]=arguments[p+1];var x=""+this.key+u.map(function(A){return"["+A+"]"}).join("");this.errors.push(new bs(x,o))},Al.prototype.checkSubtype=function(o,u){var p=cs(o,u);return p&&this.error(p),p};function Tv(n){if(n instanceof Tl)return Tv(n.boundExpression);if(n instanceof In&&n.name==="error")return!1;if(n instanceof xl)return!1;if(n instanceof hs)return!1;var o=n instanceof Wo||n instanceof ln,u=!0;return n.eachChild(function(p){o?u=u&&Tv(p):u=u&&p instanceof Zo}),u?Uc(n)&&Vc(n,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"]):!1}function Hc(n,o){for(var u=n.length-1,p=0,x=u,A=0,k,F;p<=x;)if(A=Math.floor((p+x)/2),k=n[A],F=n[A+1],k<=o){if(A===u||oo)x=A-1;else throw new vn("Input is not a number.");return 0}var As=function(o,u,p){this.type=o,this.input=u,this.labels=[],this.outputs=[];for(var x=0,A=p;x=F)return u.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',j);var ie=u.parse(Y,Q,A);if(!ie)return null;A=A||ie.type,x.push([F,ie])}return new As(A,p,x)},As.prototype.evaluate=function(o){var u=this.labels,p=this.outputs;if(u.length===1)return p[0].evaluate(o);var x=this.input.evaluate(o);if(x<=u[0])return p[0].evaluate(o);var A=u.length;if(x>=u[A-1])return p[A-1].evaluate(o);var k=Hc(u,x);return p[k].evaluate(o)},As.prototype.eachChild=function(o){o(this.input);for(var u=0,p=this.outputs;u0&&o.push(this.labels[u]),o.push(this.outputs[u].serialize());return o};function dn(n,o,u){return n*(1-u)+o*u}function Vm(n,o,u){return new ni(dn(n.r,o.r,u),dn(n.g,o.g,u),dn(n.b,o.b,u),dn(n.a,o.a,u))}function Hm(n,o,u){return n.map(function(p,x){return dn(p,o[x],u)})}var Ml=Object.freeze({__proto__:null,number:dn,color:Vm,array:Hm}),tf=.95047,vs=1,fp=1.08883,cp=4/29,rf=6/29,hp=3*rf*rf,vp=rf*rf*rf,Gm=Math.PI/180,Zm=180/Math.PI;function Av(n){return n>vp?Math.pow(n,1/3):n/hp+cp}function Mv(n){return n>rf?n*n*n:hp*(n-cp)}function Sv(n){return 255*(n<=.0031308?12.92*n:1.055*Math.pow(n,1/2.4)-.055)}function jf(n){return n/=255,n<=.04045?n/12.92:Math.pow((n+.055)/1.055,2.4)}function Gc(n){var o=jf(n.r),u=jf(n.g),p=jf(n.b),x=Av((.4124564*o+.3575761*u+.1804375*p)/tf),A=Av((.2126729*o+.7151522*u+.072175*p)/vs),k=Av((.0193339*o+.119192*u+.9503041*p)/fp);return{l:116*A-16,a:500*(x-A),b:200*(A-k),alpha:n.a}}function dp(n){var o=(n.l+16)/116,u=isNaN(n.a)?o:o+n.a/500,p=isNaN(n.b)?o:o-n.b/200;return o=vs*Mv(o),u=tf*Mv(u),p=fp*Mv(p),new ni(Sv(3.2404542*u-1.5371385*o-.4985314*p),Sv(-.969266*u+1.8760108*o+.041556*p),Sv(.0556434*u-.2040259*o+1.0572252*p),n.alpha)}function qi(n,o,u){return{l:dn(n.l,o.l,u),a:dn(n.a,o.a,u),b:dn(n.b,o.b,u),alpha:dn(n.alpha,o.alpha,u)}}function Ym(n){var o=Gc(n),u=o.l,p=o.a,x=o.b,A=Math.atan2(x,p)*Zm;return{h:A<0?A+360:A,c:Math.sqrt(p*p+x*x),l:u,alpha:n.a}}function Zc(n){var o=n.h*Gm,u=n.c,p=n.l;return dp({l:p,a:Math.cos(o)*u,b:Math.sin(o)*u,alpha:n.alpha})}function kv(n,o,u){var p=o-n;return n+u*(p>180||p<-180?p-360*Math.round(p/360):p)}function pp(n,o,u){return{h:kv(n.h,o.h,u),c:dn(n.c,o.c,u),l:dn(n.l,o.l,u),alpha:dn(n.alpha,o.alpha,u)}}var af={forward:Gc,reverse:dp,interpolate:qi},_u={forward:Ym,reverse:Zc,interpolate:pp},Cv=Object.freeze({__proto__:null,lab:af,hcl:_u}),bn=function(o,u,p,x,A){this.type=o,this.operator=u,this.interpolation=p,this.input=x,this.labels=[],this.outputs=[];for(var k=0,F=A;k1}))return u.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);x={name:"cubic-bezier",controlPoints:Y}}else return u.error("Unknown interpolation type "+String(x[0]),1,0);if(o.length-1<4)return u.error("Expected at least 4 arguments, but found only "+(o.length-1)+".");if((o.length-1)%2!==0)return u.error("Expected an even number of arguments.");if(A=u.parse(A,2,Er),!A)return null;var j=[],Q=null;p==="interpolate-hcl"||p==="interpolate-lab"?Q=ws:u.expectedType&&u.expectedType.kind!=="value"&&(Q=u.expectedType);for(var ie=0;ie=ye)return u.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',ke);var ut=u.parse(he,qe,Q);if(!ut)return null;Q=Q||ut.type,j.push([ye,ut])}return Q.kind!=="number"&&Q.kind!=="color"&&!(Q.kind==="array"&&Q.itemType.kind==="number"&&typeof Q.N=="number")?u.error("Type "+Ei(Q)+" is not interpolatable."):new bn(Q,p,x,A,j)},bn.prototype.evaluate=function(o){var u=this.labels,p=this.outputs;if(u.length===1)return p[0].evaluate(o);var x=this.input.evaluate(o);if(x<=u[0])return p[0].evaluate(o);var A=u.length;if(x>=u[A-1])return p[A-1].evaluate(o);var k=Hc(u,x),F=u[k],Y=u[k+1],j=bn.interpolationFactor(this.interpolation,x,F,Y),Q=p[k].evaluate(o),ie=p[k+1].evaluate(o);return this.operator==="interpolate"?Ml[this.type.kind.toLowerCase()](Q,ie,j):this.operator==="interpolate-hcl"?_u.reverse(_u.interpolate(_u.forward(Q),_u.forward(ie),j)):af.reverse(af.interpolate(af.forward(Q),af.forward(ie),j))},bn.prototype.eachChild=function(o){o(this.input);for(var u=0,p=this.outputs;u=p.length)throw new vn("Array index out of bounds: "+u+" > "+(p.length-1)+".");if(u!==Math.floor(u))throw new vn("Array index must be an integer, but found "+u+" instead.");return p[u]},kl.prototype.eachChild=function(o){o(this.index),o(this.input)},kl.prototype.outputDefined=function(){return!1},kl.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var Cl=function(o,u){this.type=wa,this.needle=o,this.haystack=u};Cl.parse=function(o,u){if(o.length!==3)return u.error("Expected 2 arguments, but found "+(o.length-1)+" instead.");var p=u.parse(o[1],1,Aa),x=u.parse(o[2],2,Aa);return!p||!x?null:Bc(p.type,[wa,ba,Er,$u,Aa])?new Cl(p,x):u.error("Expected first argument to be of type boolean, string, number or null, but found "+Ei(p.type)+" instead")},Cl.prototype.evaluate=function(o){var u=this.needle.evaluate(o),p=this.haystack.evaluate(o);if(!p)return!1;if(!yu(u,["boolean","string","number","null"]))throw new vn("Expected first argument to be of type boolean, string, number or null, but found "+Ei(sn(u))+" instead.");if(!yu(p,["string","array"]))throw new vn("Expected second argument to be of type array or string, but found "+Ei(sn(p))+" instead.");return p.indexOf(u)>=0},Cl.prototype.eachChild=function(o){o(this.needle),o(this.haystack)},Cl.prototype.outputDefined=function(){return!0},Cl.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var Ks=function(o,u,p){this.type=Er,this.needle=o,this.haystack=u,this.fromIndex=p};Ks.parse=function(o,u){if(o.length<=2||o.length>=5)return u.error("Expected 3 or 4 arguments, but found "+(o.length-1)+" instead.");var p=u.parse(o[1],1,Aa),x=u.parse(o[2],2,Aa);if(!p||!x)return null;if(!Bc(p.type,[wa,ba,Er,$u,Aa]))return u.error("Expected first argument to be of type boolean, string, number or null, but found "+Ei(p.type)+" instead");if(o.length===4){var A=u.parse(o[3],3,Er);return A?new Ks(p,x,A):null}else return new Ks(p,x)},Ks.prototype.evaluate=function(o){var u=this.needle.evaluate(o),p=this.haystack.evaluate(o);if(!yu(u,["boolean","string","number","null"]))throw new vn("Expected first argument to be of type boolean, string, number or null, but found "+Ei(sn(u))+" instead.");if(!yu(p,["string","array"]))throw new vn("Expected second argument to be of type array or string, but found "+Ei(sn(p))+" instead.");if(this.fromIndex){var x=this.fromIndex.evaluate(o);return p.indexOf(u,x)}return p.indexOf(u)},Ks.prototype.eachChild=function(o){o(this.needle),o(this.haystack),this.fromIndex&&o(this.fromIndex)},Ks.prototype.outputDefined=function(){return!1},Ks.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var o=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),o]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var Ms=function(o,u,p,x,A,k){this.inputType=o,this.type=u,this.input=p,this.cases=x,this.outputs=A,this.otherwise=k};Ms.parse=function(o,u){if(o.length<5)return u.error("Expected at least 4 arguments, but found only "+(o.length-1)+".");if(o.length%2!==1)return u.error("Expected an even number of arguments.");var p,x;u.expectedType&&u.expectedType.kind!=="value"&&(x=u.expectedType);for(var A={},k=[],F=2;FNumber.MAX_SAFE_INTEGER)return Q.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof he=="number"&&Math.floor(he)!==he)return Q.error("Numeric branch labels must be integer values.");if(!p)p=sn(he);else if(Q.checkSubtype(p,sn(he)))return null;if(typeof A[String(he)]!="undefined")return Q.error("Branch labels must be unique.");A[String(he)]=k.length}var ke=u.parse(j,F,x);if(!ke)return null;x=x||ke.type,k.push(ke)}var qe=u.parse(o[1],1,Aa);if(!qe)return null;var ut=u.parse(o[o.length-1],o.length-1,x);return!ut||qe.type.kind!=="value"&&u.concat(1).checkSubtype(p,qe.type)?null:new Ms(p,x,qe,A,k,ut)},Ms.prototype.evaluate=function(o){var u=this.input.evaluate(o),p=sn(u)===this.inputType&&this.outputs[this.cases[u]]||this.otherwise;return p.evaluate(o)},Ms.prototype.eachChild=function(o){o(this.input),this.outputs.forEach(o),o(this.otherwise)},Ms.prototype.outputDefined=function(){return this.outputs.every(function(o){return o.outputDefined()})&&this.otherwise.outputDefined()},Ms.prototype.serialize=function(){for(var o=this,u=["match",this.input.serialize()],p=Object.keys(this.cases).sort(),x=[],A={},k=0,F=p;k=5)return u.error("Expected 3 or 4 arguments, but found "+(o.length-1)+" instead.");var p=u.parse(o[1],1,Aa),x=u.parse(o[2],2,Er);if(!p||!x)return null;if(!Bc(p.type,[yo(Aa),ba,Aa]))return u.error("Expected first argument to be of type array or string, but found "+Ei(p.type)+" instead");if(o.length===4){var A=u.parse(o[3],3,Er);return A?new El(p.type,p,x,A):null}else return new El(p.type,p,x)},El.prototype.evaluate=function(o){var u=this.input.evaluate(o),p=this.beginIndex.evaluate(o);if(!yu(u,["string","array"]))throw new vn("Expected first argument to be of type array or string, but found "+Ei(sn(u))+" instead.");if(this.endIndex){var x=this.endIndex.evaluate(o);return u.slice(p,x)}return u.slice(p)},El.prototype.eachChild=function(o){o(this.input),o(this.beginIndex),this.endIndex&&o(this.endIndex)},El.prototype.outputDefined=function(){return!1},El.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var o=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),o]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};function mp(n,o){return n==="=="||n==="!="?o.kind==="boolean"||o.kind==="string"||o.kind==="number"||o.kind==="null"||o.kind==="value":o.kind==="string"||o.kind==="number"||o.kind==="value"}function Wm(n,o,u){return o===u}function Xm(n,o,u){return o!==u}function jm(n,o,u){return ou}function gp(n,o,u){return o<=u}function Ev(n,o,u){return o>=u}function Lv(n,o,u,p){return p.compare(o,u)===0}function Kf(n,o,u,p){return!Lv(n,o,u,p)}function Yc(n,o,u,p){return p.compare(o,u)<0}function _p(n,o,u,p){return p.compare(o,u)>0}function Dv(n,o,u,p){return p.compare(o,u)<=0}function xp(n,o,u,p){return p.compare(o,u)>=0}function nf(n,o,u){var p=n!=="=="&&n!=="!=";return function(){function x(A,k,F){this.type=wa,this.lhs=A,this.rhs=k,this.collator=F,this.hasUntypedArgument=A.type.kind==="value"||k.type.kind==="value"}return x.parse=function(k,F){if(k.length!==3&&k.length!==4)return F.error("Expected two or three arguments.");var Y=k[0],j=F.parse(k[1],1,Aa);if(!j)return null;if(!mp(Y,j.type))return F.concat(1).error('"'+Y+`" comparisons are not supported for type '`+Ei(j.type)+"'.");var Q=F.parse(k[2],2,Aa);if(!Q)return null;if(!mp(Y,Q.type))return F.concat(2).error('"'+Y+`" comparisons are not supported for type '`+Ei(Q.type)+"'.");if(j.type.kind!==Q.type.kind&&j.type.kind!=="value"&&Q.type.kind!=="value")return F.error("Cannot compare types '"+Ei(j.type)+"' and '"+Ei(Q.type)+"'.");p&&(j.type.kind==="value"&&Q.type.kind!=="value"?j=new ln(Q.type,[j]):j.type.kind!=="value"&&Q.type.kind==="value"&&(Q=new ln(j.type,[Q])));var ie=null;if(k.length===4){if(j.type.kind!=="string"&&Q.type.kind!=="string"&&j.type.kind!=="value"&&Q.type.kind!=="value")return F.error("Cannot use collator to compare non-string types.");if(ie=F.parse(k[3],3,mu),!ie)return null}return new x(j,Q,ie)},x.prototype.evaluate=function(k){var F=this.lhs.evaluate(k),Y=this.rhs.evaluate(k);if(p&&this.hasUntypedArgument){var j=sn(F),Q=sn(Y);if(j.kind!==Q.kind||!(j.kind==="string"||j.kind==="number"))throw new vn('Expected arguments for "'+n+'" to be (string, string) or (number, number), but found ('+j.kind+", "+Q.kind+") instead.")}if(this.collator&&!p&&this.hasUntypedArgument){var ie=sn(F),ye=sn(Y);if(ie.kind!=="string"||ye.kind!=="string")return o(k,F,Y)}return this.collator?u(k,F,Y,this.collator.evaluate(k)):o(k,F,Y)},x.prototype.eachChild=function(k){k(this.lhs),k(this.rhs),this.collator&&k(this.collator)},x.prototype.outputDefined=function(){return!0},x.prototype.serialize=function(){var k=[n];return this.eachChild(function(F){k.push(F.serialize())}),k},x}()}var Jm=nf("==",Wm,Lv),bp=nf("!=",Xm,Kf),wp=nf("<",jm,Yc),Tp=nf(">",yp,_p),Pv=nf("<=",gp,Dv),zv=nf(">=",Ev,xp),xu=function(o,u,p,x,A){this.type=ba,this.number=o,this.locale=u,this.currency=p,this.minFractionDigits=x,this.maxFractionDigits=A};xu.parse=function(o,u){if(o.length!==3)return u.error("Expected two arguments.");var p=u.parse(o[1],1,Er);if(!p)return null;var x=o[2];if(typeof x!="object"||Array.isArray(x))return u.error("NumberFormat options argument must be an object.");var A=null;if(x.locale&&(A=u.parse(x.locale,1,ba),!A))return null;var k=null;if(x.currency&&(k=u.parse(x.currency,1,ba),!k))return null;var F=null;if(x["min-fraction-digits"]&&(F=u.parse(x["min-fraction-digits"],1,Er),!F))return null;var Y=null;return x["max-fraction-digits"]&&(Y=u.parse(x["max-fraction-digits"],1,Er),!Y)?null:new xu(p,A,k,F,Y)},xu.prototype.evaluate=function(o){return new Intl.NumberFormat(this.locale?this.locale.evaluate(o):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(o):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(o):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(o):void 0}).format(this.number.evaluate(o))},xu.prototype.eachChild=function(o){o(this.number),this.locale&&o(this.locale),this.currency&&o(this.currency),this.minFractionDigits&&o(this.minFractionDigits),this.maxFractionDigits&&o(this.maxFractionDigits)},xu.prototype.outputDefined=function(){return!1},xu.prototype.serialize=function(){var o={};return this.locale&&(o.locale=this.locale.serialize()),this.currency&&(o.currency=this.currency.serialize()),this.minFractionDigits&&(o["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(o["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),o]};var Ll=function(o){this.type=Er,this.input=o};Ll.parse=function(o,u){if(o.length!==2)return u.error("Expected 1 argument, but found "+(o.length-1)+" instead.");var p=u.parse(o[1],1);return p?p.type.kind!=="array"&&p.type.kind!=="string"&&p.type.kind!=="value"?u.error("Expected argument of type string or array, but found "+Ei(p.type)+" instead."):new Ll(p):null},Ll.prototype.evaluate=function(o){var u=this.input.evaluate(o);if(typeof u=="string")return u.length;if(Array.isArray(u))return u.length;throw new vn("Expected value to be of type string or array, but found "+Ei(sn(u))+" instead.")},Ll.prototype.eachChild=function(o){o(this.input)},Ll.prototype.outputDefined=function(){return!1},Ll.prototype.serialize=function(){var o=["length"];return this.eachChild(function(u){o.push(u.serialize())}),o};var Qf={"==":Jm,"!=":bp,">":Tp,"<":wp,">=":zv,"<=":Pv,array:ln,at:kl,boolean:ln,case:Ss,coalesce:Js,collator:xl,format:Yo,image:Xs,in:Cl,"index-of":Ks,interpolate:bn,"interpolate-hcl":bn,"interpolate-lab":bn,length:Ll,let:Sl,literal:Zo,match:Ms,number:ln,"number-format":xu,object:ln,slice:El,step:As,string:ln,"to-boolean":Wo,"to-color":Wo,"to-number":Wo,"to-string":Wo,var:Tl,within:hs};function Iv(n,o){var u=o[0],p=o[1],x=o[2],A=o[3];u=u.evaluate(n),p=p.evaluate(n),x=x.evaluate(n);var k=A?A.evaluate(n):1,F=ap(u,p,x,k);if(F)throw new vn(F);return new ni(u/255*k,p/255*k,x/255*k,k)}function Wc(n,o){return n in o}function Xc(n,o){var u=o[n];return typeof u=="undefined"?null:u}function jc(n,o,u,p){for(;u<=p;){var x=u+p>>1;if(o[x]===n)return!0;o[x]>n?p=x-1:u=x+1}return!1}function Dl(n){return{type:n}}In.register(Qf,{error:[Ws,[ba],function(n,o){var u=o[0];throw new vn(u.evaluate(n))}],typeof:[ba,[Aa],function(n,o){var u=o[0];return Ei(sn(u.evaluate(n)))}],"to-rgba":[yo(Er,4),[ws],function(n,o){var u=o[0];return u.evaluate(n).toArray()}],rgb:[ws,[Er,Er,Er],Iv],rgba:[ws,[Er,Er,Er,Er],Iv],has:{type:wa,overloads:[[[ba],function(n,o){var u=o[0];return Wc(u.evaluate(n),n.properties())}],[[ba,gl],function(n,o){var u=o[0],p=o[1];return Wc(u.evaluate(n),p.evaluate(n))}]]},get:{type:Aa,overloads:[[[ba],function(n,o){var u=o[0];return Xc(u.evaluate(n),n.properties())}],[[ba,gl],function(n,o){var u=o[0],p=o[1];return Xc(u.evaluate(n),p.evaluate(n))}]]},"feature-state":[Aa,[ba],function(n,o){var u=o[0];return Xc(u.evaluate(n),n.featureState||{})}],properties:[gl,[],function(n){return n.properties()}],"geometry-type":[ba,[],function(n){return n.geometryType()}],id:[Aa,[],function(n){return n.id()}],zoom:[Er,[],function(n){return n.globals.zoom}],"heatmap-density":[Er,[],function(n){return n.globals.heatmapDensity||0}],"line-progress":[Er,[],function(n){return n.globals.lineProgress||0}],accumulated:[Aa,[],function(n){return n.globals.accumulated===void 0?null:n.globals.accumulated}],"+":[Er,Dl(Er),function(n,o){for(var u=0,p=0,x=o;p":[wa,[ba,Aa],function(n,o){var u=o[0],p=o[1],x=n.properties()[u.value],A=p.value;return typeof x==typeof A&&x>A}],"filter-id->":[wa,[Aa],function(n,o){var u=o[0],p=n.id(),x=u.value;return typeof p==typeof x&&p>x}],"filter-<=":[wa,[ba,Aa],function(n,o){var u=o[0],p=o[1],x=n.properties()[u.value],A=p.value;return typeof x==typeof A&&x<=A}],"filter-id-<=":[wa,[Aa],function(n,o){var u=o[0],p=n.id(),x=u.value;return typeof p==typeof x&&p<=x}],"filter->=":[wa,[ba,Aa],function(n,o){var u=o[0],p=o[1],x=n.properties()[u.value],A=p.value;return typeof x==typeof A&&x>=A}],"filter-id->=":[wa,[Aa],function(n,o){var u=o[0],p=n.id(),x=u.value;return typeof p==typeof x&&p>=x}],"filter-has":[wa,[Aa],function(n,o){var u=o[0];return u.value in n.properties()}],"filter-has-id":[wa,[],function(n){return n.id()!==null&&n.id()!==void 0}],"filter-type-in":[wa,[yo(ba)],function(n,o){var u=o[0];return u.value.indexOf(n.geometryType())>=0}],"filter-id-in":[wa,[yo(Aa)],function(n,o){var u=o[0];return u.value.indexOf(n.id())>=0}],"filter-in-small":[wa,[ba,yo(Aa)],function(n,o){var u=o[0],p=o[1];return p.value.indexOf(n.properties()[u.value])>=0}],"filter-in-large":[wa,[ba,yo(Aa)],function(n,o){var u=o[0],p=o[1];return jc(n.properties()[u.value],p.value,0,p.value.length-1)}],all:{type:wa,overloads:[[[wa,wa],function(n,o){var u=o[0],p=o[1];return u.evaluate(n)&&p.evaluate(n)}],[Dl(wa),function(n,o){for(var u=0,p=o;u-1}function Kc(n){return!!n.expression&&n.expression.interpolated}function di(n){return n instanceof Number?"number":n instanceof String?"string":n instanceof Boolean?"boolean":Array.isArray(n)?"array":n===null?"null":typeof n}function $f(n){return typeof n=="object"&&n!==null&&!Array.isArray(n)}function Mp(n){return n}function Sp(n,o){var u=o.type==="color",p=n.stops&&typeof n.stops[0][0]=="object",x=p||n.property!==void 0,A=p||!x,k=n.type||(Kc(o)?"exponential":"interval");if(u&&(n=pu({},n),n.stops&&(n.stops=n.stops.map(function(cr){return[cr[0],ni.parse(cr[1])]})),n.default?n.default=ni.parse(n.default):n.default=ni.parse(o.default)),n.colorSpace&&n.colorSpace!=="rgb"&&!Cv[n.colorSpace])throw new Error("Unknown color space: "+n.colorSpace);var F,Y,j;if(k==="exponential")F=Rv;else if(k==="interval")F=Cp;else if(k==="categorical"){F=kp,Y=Object.create(null);for(var Q=0,ie=n.stops;Q=n.stops[p-1][0])return n.stops[p-1][1];var x=Hc(n.stops.map(function(A){return A[0]}),u);return n.stops[x][1]}function Rv(n,o,u){var p=n.base!==void 0?n.base:1;if(di(u)!=="number")return Pl(n.default,o.default);var x=n.stops.length;if(x===1||u<=n.stops[0][0])return n.stops[0][1];if(u>=n.stops[x-1][0])return n.stops[x-1][1];var A=Hc(n.stops.map(function(ie){return ie[0]}),u),k=Km(u,p,n.stops[A][0],n.stops[A+1][0]),F=n.stops[A][1],Y=n.stops[A+1][1],j=Ml[o.type]||Mp;if(n.colorSpace&&n.colorSpace!=="rgb"){var Q=Cv[n.colorSpace];j=function(ie,ye){return Q.reverse(Q.interpolate(Q.forward(ie),Q.forward(ye),k))}}return typeof F.evaluate=="function"?{evaluate:function(){for(var ye=[],he=arguments.length;he--;)ye[he]=arguments[he];var ke=F.evaluate.apply(void 0,ye),qe=Y.evaluate.apply(void 0,ye);if(!(ke===void 0||qe===void 0))return j(ke,qe,k)}}:j(F,Y,k)}function Ep(n,o,u){return o.type==="color"?u=ni.parse(u):o.type==="formatted"?u=xn.fromString(u.toString()):o.type==="resolvedImage"?u=zn.fromString(u.toString()):di(u)!==o.type&&(o.type!=="enum"||!o.values[u])&&(u=void 0),Pl(u,n.default,o.default)}function Km(n,o,u,p){var x=p-u,A=n-u;return x===0?0:o===1?A/x:(Math.pow(o,A)-1)/(Math.pow(o,x)-1)}var zl=function(o,u){this.expression=o,this._warningHistory={},this._evaluator=new js,this._defaultValue=u?$m(u):null,this._enumValues=u&&u.type==="enum"?u.values:null};zl.prototype.evaluateWithoutErrorHandling=function(o,u,p,x,A,k){return this._evaluator.globals=o,this._evaluator.feature=u,this._evaluator.featureState=p,this._evaluator.canonical=x,this._evaluator.availableImages=A||null,this._evaluator.formattedSection=k,this.expression.evaluate(this._evaluator)},zl.prototype.evaluate=function(o,u,p,x,A,k){this._evaluator.globals=o,this._evaluator.feature=u||null,this._evaluator.featureState=p||null,this._evaluator.canonical=x,this._evaluator.availableImages=A||null,this._evaluator.formattedSection=k||null;try{var F=this.expression.evaluate(this._evaluator);if(F==null||typeof F=="number"&&F!==F)return this._defaultValue;if(this._enumValues&&!(F in this._enumValues))throw new vn("Expected value to be one of "+Object.keys(this._enumValues).map(function(Y){return JSON.stringify(Y)}).join(", ")+", but found "+JSON.stringify(F)+" instead.");return F}catch(Y){return this._warningHistory[Y.message]||(this._warningHistory[Y.message]=!0,typeof console!="undefined"&&console.warn(Y.message)),this._defaultValue}};function wu(n){return Array.isArray(n)&&n.length>0&&typeof n[0]=="string"&&n[0]in Qf}function ec(n,o){var u=new Al(Qf,[],o?Fv(o):void 0),p=u.parse(n,void 0,void 0,void 0,o&&o.type==="string"?{typeAnnotation:"coerce"}:void 0);return p?Jc(new zl(p,o)):bu(u.errors)}var ks=function(o,u){this.kind=o,this._styleExpression=u,this.isStateDependent=o!=="constant"&&!wl(u.expression)};ks.prototype.evaluateWithoutErrorHandling=function(o,u,p,x,A,k){return this._styleExpression.evaluateWithoutErrorHandling(o,u,p,x,A,k)},ks.prototype.evaluate=function(o,u,p,x,A,k){return this._styleExpression.evaluate(o,u,p,x,A,k)};var Cs=function(o,u,p,x){this.kind=o,this.zoomStops=p,this._styleExpression=u,this.isStateDependent=o!=="camera"&&!wl(u.expression),this.interpolationType=x};Cs.prototype.evaluateWithoutErrorHandling=function(o,u,p,x,A,k){return this._styleExpression.evaluateWithoutErrorHandling(o,u,p,x,A,k)},Cs.prototype.evaluate=function(o,u,p,x,A,k){return this._styleExpression.evaluate(o,u,p,x,A,k)},Cs.prototype.interpolationFactor=function(o,u,p){return this.interpolationType?bn.interpolationFactor(this.interpolationType,o,u,p):0};function Xo(n,o){if(n=ec(n,o),n.result==="error")return n;var u=n.value.expression,p=Uc(u);if(!p&&!of(o))return bu([new bs("","data expressions not supported")]);var x=Vc(u,["zoom"]);if(!x&&!Ap(o))return bu([new bs("","zoom expressions not supported")]);var A=lf(u);if(!A&&!x)return bu([new bs("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(A instanceof bs)return bu([A]);if(A instanceof bn&&!Kc(o))return bu([new bs("",'"interpolate" expressions cannot be used with this property')]);if(!A)return Jc(p?new ks("constant",n.value):new ks("source",n.value));var k=A instanceof bn?A.interpolation:void 0;return Jc(p?new Cs("camera",n.value,A.labels,k):new Cs("composite",n.value,A.labels,k))}var sf=function(o,u){this._parameters=o,this._specification=u,pu(this,Sp(this._parameters,this._specification))};sf.deserialize=function(o){return new sf(o._parameters,o._specification)},sf.serialize=function(o){return{_parameters:o._parameters,_specification:o._specification}};function Qm(n,o){if($f(n))return new sf(n,o);if(wu(n)){var u=Xo(n,o);if(u.result==="error")throw new Error(u.value.map(function(x){return x.key+": "+x.message}).join(", "));return u.value}else{var p=n;return typeof n=="string"&&o.type==="color"&&(p=ni.parse(n)),{kind:"constant",evaluate:function(){return p}}}}function lf(n){var o=null;if(n instanceof Sl)o=lf(n.result);else if(n instanceof Js)for(var u=0,p=n.args;up.maximum?[new Ur(o,u,u+" is greater than the maximum value "+p.maximum)]:[]}function Qc(n){var o=n.valueSpec,u=on(n.value.type),p,x={},A,k,F=u!=="categorical"&&n.value.property===void 0,Y=!F,j=di(n.value.stops)==="array"&&di(n.value.stops[0])==="array"&&di(n.value.stops[0][0])==="object",Q=ds({key:n.key,value:n.value,valueSpec:n.styleSpec.function,style:n.style,styleSpec:n.styleSpec,objectElementValidators:{stops:ie,default:ke}});return u==="identity"&&F&&Q.push(new Ur(n.key,n.value,'missing required property "property"')),u!=="identity"&&!n.value.stops&&Q.push(new Ur(n.key,n.value,'missing required property "stops"')),u==="exponential"&&n.valueSpec.expression&&!Kc(n.valueSpec)&&Q.push(new Ur(n.key,n.value,"exponential functions not supported")),n.styleSpec.$version>=8&&(Y&&!of(n.valueSpec)?Q.push(new Ur(n.key,n.value,"property functions not supported")):F&&!Ap(n.valueSpec)&&Q.push(new Ur(n.key,n.value,"zoom functions not supported"))),(u==="categorical"||j)&&n.value.property===void 0&&Q.push(new Ur(n.key,n.value,'"property" property is required')),Q;function ie(qe){if(u==="identity")return[new Ur(qe.key,qe.value,'identity function may not have a "stops" property')];var ut=[],et=qe.value;return ut=ut.concat(qv({key:qe.key,value:et,valueSpec:qe.valueSpec,style:qe.style,styleSpec:qe.styleSpec,arrayElementValidator:ye})),di(et)==="array"&&et.length===0&&ut.push(new Ur(qe.key,et,"array must have at least one stop")),ut}function ye(qe){var ut=[],et=qe.value,kt=qe.key;if(di(et)!=="array")return[new Ur(kt,et,"array expected, "+di(et)+" found")];if(et.length!==2)return[new Ur(kt,et,"array length 2 expected, length "+et.length+" found")];if(j){if(di(et[0])!=="object")return[new Ur(kt,et,"object expected, "+di(et[0])+" found")];if(et[0].zoom===void 0)return[new Ur(kt,et,"object stop key must have zoom")];if(et[0].value===void 0)return[new Ur(kt,et,"object stop key must have value")];if(k&&k>on(et[0].zoom))return[new Ur(kt,et[0].zoom,"stop zoom values must appear in ascending order")];on(et[0].zoom)!==k&&(k=on(et[0].zoom),A=void 0,x={}),ut=ut.concat(ds({key:kt+"[0]",value:et[0],valueSpec:{zoom:{}},style:qe.style,styleSpec:qe.styleSpec,objectElementValidators:{zoom:uf,value:he}}))}else ut=ut.concat(he({key:kt+"[0]",value:et[0],valueSpec:{},style:qe.style,styleSpec:qe.styleSpec},et));return wu(yl(et[1]))?ut.concat([new Ur(kt+"[1]",et[1],"expressions are not allowed in function stops.")]):ut.concat(li({key:kt+"[1]",value:et[1],valueSpec:o,style:qe.style,styleSpec:qe.styleSpec}))}function he(qe,ut){var et=di(qe.value),kt=on(qe.value),_t=qe.value!==null?qe.value:ut;if(!p)p=et;else if(et!==p)return[new Ur(qe.key,_t,et+" stop domain type must match previous stop domain type "+p)];if(et!=="number"&&et!=="string"&&et!=="boolean")return[new Ur(qe.key,_t,"stop domain value must be a number, string, or boolean")];if(et!=="number"&&u!=="categorical"){var Mt="number expected, "+et+" found";return of(o)&&u===void 0&&(Mt+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new Ur(qe.key,_t,Mt)]}return u==="categorical"&&et==="number"&&(!isFinite(kt)||Math.floor(kt)!==kt)?[new Ur(qe.key,_t,"integer expected, found "+kt)]:u!=="categorical"&&et==="number"&&A!==void 0&&kt=2&&n[1]!=="$id"&&n[1]!=="$type";case"in":return n.length>=3&&(typeof n[1]!="string"||Array.isArray(n[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return n.length!==3||Array.isArray(n[1])||Array.isArray(n[2]);case"any":case"all":for(var o=0,u=n.slice(1);oo?1:0}function cf(n){if(!Array.isArray(n))return!1;if(n[0]==="within")return!0;for(var o=1;o"||o==="<="||o===">="?Nv(n[1],n[2],o):o==="any"?ry(n.slice(1)):o==="all"?["all"].concat(n.slice(1).map(hf)):o==="none"?["all"].concat(n.slice(1).map(hf).map(tc)):o==="in"?Dp(n[1],n.slice(2)):o==="!in"?tc(Dp(n[1],n.slice(2))):o==="has"?Bv(n[1]):o==="!has"?tc(Bv(n[1])):o==="within"?n:!0;return u}function Nv(n,o,u){switch(n){case"$type":return["filter-type-"+u,o];case"$id":return["filter-id-"+u,o];default:return["filter-"+u,n,o]}}function ry(n){return["any"].concat(n.map(hf))}function Dp(n,o){if(o.length===0)return!1;switch(n){case"$type":return["filter-type-in",["literal",o]];case"$id":return["filter-id-in",["literal",o]];default:return o.length>200&&!o.some(function(u){return typeof u!=typeof o[0]})?["filter-in-large",n,["literal",o.sort(Il)]]:["filter-in-small",n,["literal",o]]}}function Bv(n){switch(n){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",n]}}function tc(n){return["!",n]}function eh(n){return go(yl(n.value))?Tu(pu({},n,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Ov(n)}function Ov(n){var o=n.value,u=n.key;if(di(o)!=="array")return[new Ur(u,o,"array expected, "+di(o)+" found")];var p=n.styleSpec,x,A=[];if(o.length<1)return[new Ur(u,o,"filter array must have at least 1 element")];switch(A=A.concat($c({key:u+"[0]",value:o[0],valueSpec:p.filter_operator,style:n.style,styleSpec:n.styleSpec})),on(o[0])){case"<":case"<=":case">":case">=":o.length>=2&&on(o[1])==="$type"&&A.push(new Ur(u,o,'"$type" cannot be use with operator "'+o[0]+'"'));case"==":case"!=":o.length!==3&&A.push(new Ur(u,o,'filter array for operator "'+o[0]+'" must have 3 elements'));case"in":case"!in":o.length>=2&&(x=di(o[1]),x!=="string"&&A.push(new Ur(u+"[1]",o[1],"string expected, "+x+" found")));for(var k=2;k=Q[he+0]&&p>=Q[he+1])?(k[ye]=!0,A.push(j[ye])):k[ye]=!1}}},Ls.prototype._forEachCell=function(n,o,u,p,x,A,k,F){for(var Y=this._convertToCellCoord(n),j=this._convertToCellCoord(o),Q=this._convertToCellCoord(u),ie=this._convertToCellCoord(p),ye=Y;ye<=Q;ye++)for(var he=j;he<=ie;he++){var ke=this.d*he+ye;if(!(F&&!F(this._convertFromCellCoord(ye),this._convertFromCellCoord(he),this._convertFromCellCoord(ye+1),this._convertFromCellCoord(he+1)))&&x.call(this,n,o,u,p,ke,A,k,F))return}},Ls.prototype._convertFromCellCoord=function(n){return(n-this.padding)/this.scale},Ls.prototype._convertToCellCoord=function(n){return Math.max(0,Math.min(this.d-1,Math.floor(n*this.scale)+this.padding))},Ls.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var n=this.cells,o=Fl+this.cells.length+1+1,u=0,p=0;p=0)){var ie=n[Q];j[Q]=ql[Y].shallow.indexOf(Q)>=0?ie:U(ie,o)}n instanceof Error&&(j.message=n.message)}if(j.$name)throw new Error("$name property is reserved for worker serialization logic.");return Y!=="Object"&&(j.$name=Y),j}throw new Error("can't serialize object of type "+typeof n)}function Z(n){if(n==null||typeof n=="boolean"||typeof n=="number"||typeof n=="string"||n instanceof Boolean||n instanceof Number||n instanceof String||n instanceof Date||n instanceof RegExp||P(n)||N(n)||ArrayBuffer.isView(n)||n instanceof nh)return n;if(Array.isArray(n))return n.map(Z);if(typeof n=="object"){var o=n.$name||"Object",u=ql[o],p=u.klass;if(!p)throw new Error("can't deserialize unregistered class "+o);if(p.deserialize)return p.deserialize(n);for(var x=Object.create(p.prototype),A=0,k=Object.keys(n);A=0?Y:Z(Y)}}return x}throw new Error("can't deserialize object of type "+typeof n)}var $=function(){this.first=!0};$.prototype.update=function(o,u){var p=Math.floor(o);return this.first?(this.first=!1,this.lastIntegerZoom=p,this.lastIntegerZoomTime=0,this.lastZoom=o,this.lastFloorZoom=p,!0):(this.lastFloorZoom>p?(this.lastIntegerZoom=p+1,this.lastIntegerZoomTime=u):this.lastFloorZoom=128&&n<=255},Arabic:function(n){return n>=1536&&n<=1791},"Arabic Supplement":function(n){return n>=1872&&n<=1919},"Arabic Extended-A":function(n){return n>=2208&&n<=2303},"Hangul Jamo":function(n){return n>=4352&&n<=4607},"Unified Canadian Aboriginal Syllabics":function(n){return n>=5120&&n<=5759},Khmer:function(n){return n>=6016&&n<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(n){return n>=6320&&n<=6399},"General Punctuation":function(n){return n>=8192&&n<=8303},"Letterlike Symbols":function(n){return n>=8448&&n<=8527},"Number Forms":function(n){return n>=8528&&n<=8591},"Miscellaneous Technical":function(n){return n>=8960&&n<=9215},"Control Pictures":function(n){return n>=9216&&n<=9279},"Optical Character Recognition":function(n){return n>=9280&&n<=9311},"Enclosed Alphanumerics":function(n){return n>=9312&&n<=9471},"Geometric Shapes":function(n){return n>=9632&&n<=9727},"Miscellaneous Symbols":function(n){return n>=9728&&n<=9983},"Miscellaneous Symbols and Arrows":function(n){return n>=11008&&n<=11263},"CJK Radicals Supplement":function(n){return n>=11904&&n<=12031},"Kangxi Radicals":function(n){return n>=12032&&n<=12255},"Ideographic Description Characters":function(n){return n>=12272&&n<=12287},"CJK Symbols and Punctuation":function(n){return n>=12288&&n<=12351},Hiragana:function(n){return n>=12352&&n<=12447},Katakana:function(n){return n>=12448&&n<=12543},Bopomofo:function(n){return n>=12544&&n<=12591},"Hangul Compatibility Jamo":function(n){return n>=12592&&n<=12687},Kanbun:function(n){return n>=12688&&n<=12703},"Bopomofo Extended":function(n){return n>=12704&&n<=12735},"CJK Strokes":function(n){return n>=12736&&n<=12783},"Katakana Phonetic Extensions":function(n){return n>=12784&&n<=12799},"Enclosed CJK Letters and Months":function(n){return n>=12800&&n<=13055},"CJK Compatibility":function(n){return n>=13056&&n<=13311},"CJK Unified Ideographs Extension A":function(n){return n>=13312&&n<=19903},"Yijing Hexagram Symbols":function(n){return n>=19904&&n<=19967},"CJK Unified Ideographs":function(n){return n>=19968&&n<=40959},"Yi Syllables":function(n){return n>=40960&&n<=42127},"Yi Radicals":function(n){return n>=42128&&n<=42191},"Hangul Jamo Extended-A":function(n){return n>=43360&&n<=43391},"Hangul Syllables":function(n){return n>=44032&&n<=55215},"Hangul Jamo Extended-B":function(n){return n>=55216&&n<=55295},"Private Use Area":function(n){return n>=57344&&n<=63743},"CJK Compatibility Ideographs":function(n){return n>=63744&&n<=64255},"Arabic Presentation Forms-A":function(n){return n>=64336&&n<=65023},"Vertical Forms":function(n){return n>=65040&&n<=65055},"CJK Compatibility Forms":function(n){return n>=65072&&n<=65103},"Small Form Variants":function(n){return n>=65104&&n<=65135},"Arabic Presentation Forms-B":function(n){return n>=65136&&n<=65279},"Halfwidth and Fullwidth Forms":function(n){return n>=65280&&n<=65519}};function ae(n){for(var o=0,u=n;o=65097&&n<=65103)||X["CJK Compatibility Ideographs"](n)||X["CJK Compatibility"](n)||X["CJK Radicals Supplement"](n)||X["CJK Strokes"](n)||X["CJK Symbols and Punctuation"](n)&&!(n>=12296&&n<=12305)&&!(n>=12308&&n<=12319)&&n!==12336||X["CJK Unified Ideographs Extension A"](n)||X["CJK Unified Ideographs"](n)||X["Enclosed CJK Letters and Months"](n)||X["Hangul Compatibility Jamo"](n)||X["Hangul Jamo Extended-A"](n)||X["Hangul Jamo Extended-B"](n)||X["Hangul Jamo"](n)||X["Hangul Syllables"](n)||X.Hiragana(n)||X["Ideographic Description Characters"](n)||X.Kanbun(n)||X["Kangxi Radicals"](n)||X["Katakana Phonetic Extensions"](n)||X.Katakana(n)&&n!==12540||X["Halfwidth and Fullwidth Forms"](n)&&n!==65288&&n!==65289&&n!==65293&&!(n>=65306&&n<=65310)&&n!==65339&&n!==65341&&n!==65343&&!(n>=65371&&n<=65503)&&n!==65507&&!(n>=65512&&n<=65519)||X["Small Form Variants"](n)&&!(n>=65112&&n<=65118)&&!(n>=65123&&n<=65126)||X["Unified Canadian Aboriginal Syllabics"](n)||X["Unified Canadian Aboriginal Syllabics Extended"](n)||X["Vertical Forms"](n)||X["Yijing Hexagram Symbols"](n)||X["Yi Syllables"](n)||X["Yi Radicals"](n))}function Qe(n){return!!(X["Latin-1 Supplement"](n)&&(n===167||n===169||n===174||n===177||n===188||n===189||n===190||n===215||n===247)||X["General Punctuation"](n)&&(n===8214||n===8224||n===8225||n===8240||n===8241||n===8251||n===8252||n===8258||n===8263||n===8264||n===8265||n===8273)||X["Letterlike Symbols"](n)||X["Number Forms"](n)||X["Miscellaneous Technical"](n)&&(n>=8960&&n<=8967||n>=8972&&n<=8991||n>=8996&&n<=9e3||n===9003||n>=9085&&n<=9114||n>=9150&&n<=9165||n===9167||n>=9169&&n<=9179||n>=9186&&n<=9215)||X["Control Pictures"](n)&&n!==9251||X["Optical Character Recognition"](n)||X["Enclosed Alphanumerics"](n)||X["Geometric Shapes"](n)||X["Miscellaneous Symbols"](n)&&!(n>=9754&&n<=9759)||X["Miscellaneous Symbols and Arrows"](n)&&(n>=11026&&n<=11055||n>=11088&&n<=11097||n>=11192&&n<=11243)||X["CJK Symbols and Punctuation"](n)||X.Katakana(n)||X["Private Use Area"](n)||X["CJK Compatibility Forms"](n)||X["Small Form Variants"](n)||X["Halfwidth and Fullwidth Forms"](n)||n===8734||n===8756||n===8757||n>=9984&&n<=10087||n>=10102&&n<=10131||n===65532||n===65533)}function ot(n){return!(Pe(n)||Qe(n))}function Ie(n){return X.Arabic(n)||X["Arabic Supplement"](n)||X["Arabic Extended-A"](n)||X["Arabic Presentation Forms-A"](n)||X["Arabic Presentation Forms-B"](n)}function Ve(n){return n>=1424&&n<=2303||X["Arabic Presentation Forms-A"](n)||X["Arabic Presentation Forms-B"](n)}function Je(n,o){return!(!o&&Ve(n)||n>=2304&&n<=3583||n>=3840&&n<=4255||X.Khmer(n))}function ft(n){for(var o=0,u=n;o-1&&(or=Xe.error),Gt&&Gt(n)};function zr(){Rr.fire(new ri("pluginStateChange",{pluginStatus:or,pluginURL:hr}))}var Rr=new gr,ea=function(){return or},Vr=function(n){return n({pluginStatus:or,pluginURL:hr}),Rr.on("pluginStateChange",n),n},Jr=function(n,o,u){if(u===void 0&&(u=!1),or===Xe.deferred||or===Xe.loading||or===Xe.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");hr=dt.resolveURL(n),or=Xe.deferred,Gt=o,zr(),u||Na()},Na=function(){if(or!==Xe.deferred||!hr)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");or=Xe.loading,zr(),hr&&$e({url:hr},function(n){n?fr(n):(or=Xe.loaded,zr())})},ei={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return or===Xe.loaded||ei.applyArabicShaping!=null},isLoading:function(){return or===Xe.loading},setState:function(o){or=o.pluginStatus,hr=o.pluginURL},isParsed:function(){return ei.applyArabicShaping!=null&&ei.processBidirectionalText!=null&&ei.processStyledBidirectionalText!=null},getPluginURL:function(){return hr}},Qa=function(){!ei.isLoading()&&!ei.isLoaded()&&ea()==="deferred"&&Na()},jt=function(o,u){this.zoom=o,u?(this.now=u.now,this.fadeDuration=u.fadeDuration,this.zoomHistory=u.zoomHistory,this.transition=u.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new $,this.transition={})};jt.prototype.isSupportedScript=function(o){return nt(o,ei.isLoaded())},jt.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},jt.prototype.getCrossfadeParameters=function(){var o=this.zoom,u=o-Math.floor(o),p=this.crossFadingFactor();return o>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:u+(1-u)*p}:{fromScale:.5,toScale:1,t:1-(1-p)*u}};var jr=function(o,u){this.property=o,this.value=u,this.expression=Qm(u===void 0?o.specification.default:u,o.specification)};jr.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},jr.prototype.possiblyEvaluate=function(o,u,p){return this.property.possiblyEvaluate(this,o,u,p)};var na=function(o){this.property=o,this.value=new jr(o,void 0)};na.prototype.transitioned=function(o,u){return new Di(this.property,this.value,u,H({},o.transition,this.transition),o.now)},na.prototype.untransitioned=function(){return new Di(this.property,this.value,null,{},0)};var oa=function(o){this._properties=o,this._values=Object.create(o.defaultTransitionablePropertyValues)};oa.prototype.getValue=function(o){return Ae(this._values[o].value.value)},oa.prototype.setValue=function(o,u){this._values.hasOwnProperty(o)||(this._values[o]=new na(this._values[o].property)),this._values[o].value=new jr(this._values[o].property,u===null?void 0:Ae(u))},oa.prototype.getTransition=function(o){return Ae(this._values[o].transition)},oa.prototype.setTransition=function(o,u){this._values.hasOwnProperty(o)||(this._values[o]=new na(this._values[o].property)),this._values[o].transition=Ae(u)||void 0},oa.prototype.serialize=function(){for(var o={},u=0,p=Object.keys(this._values);uthis.end)return this.prior=null,A;if(this.value.isDataDriven())return this.prior=null,A;if(xk.zoomHistory.lastIntegerZoom?{from:p,to:x}:{from:A,to:x}},o.prototype.interpolate=function(p){return p},o}(Hr),Ai=function(o){this.specification=o};Ai.prototype.possiblyEvaluate=function(o,u,p,x){if(o.value!==void 0)if(o.expression.kind==="constant"){var A=o.expression.evaluate(u,null,{},p,x);return this._calculate(A,A,A,u)}else return this._calculate(o.expression.evaluate(new jt(Math.floor(u.zoom-1),u)),o.expression.evaluate(new jt(Math.floor(u.zoom),u)),o.expression.evaluate(new jt(Math.floor(u.zoom+1),u)),u)},Ai.prototype._calculate=function(o,u,p,x){var A=x.zoom;return A>x.zoomHistory.lastIntegerZoom?{from:o,to:u}:{from:p,to:u}},Ai.prototype.interpolate=function(o){return o};var lo=function(o){this.specification=o};lo.prototype.possiblyEvaluate=function(o,u,p,x){return!!o.expression.evaluate(u,null,{},p,x)},lo.prototype.interpolate=function(){return!1};var Rn=function(o){this.properties=o,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(var u in o){var p=o[u];p.specification.overridable&&this.overridableProperties.push(u);var x=this.defaultPropertyValues[u]=new jr(p,void 0),A=this.defaultTransitionablePropertyValues[u]=new na(p);this.defaultTransitioningPropertyValues[u]=A.untransitioned(),this.defaultPossiblyEvaluatedValues[u]=x.possiblyEvaluate({})}};y("DataDrivenProperty",Hr),y("DataConstantProperty",Tr),y("CrossFadedDataDrivenProperty",Ni),y("CrossFadedProperty",Ai),y("ColorRampProperty",lo);var pn="-transition",pi=function(n){function o(u,p){if(n.call(this),this.id=u.id,this.type=u.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},u.type!=="custom"&&(u=u,this.metadata=u.metadata,this.minzoom=u.minzoom,this.maxzoom=u.maxzoom,u.type!=="background"&&(this.source=u.source,this.sourceLayer=u["source-layer"],this.filter=u.filter),p.layout&&(this._unevaluatedLayout=new en(p.layout)),p.paint)){this._transitionablePaint=new oa(p.paint);for(var x in u.paint)this.setPaintProperty(x,u.paint[x],{validate:!1});for(var A in u.layout)this.setLayoutProperty(A,u.layout[A],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new wn(p.paint)}}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},o.prototype.getLayoutProperty=function(p){return p==="visibility"?this.visibility:this._unevaluatedLayout.getValue(p)},o.prototype.setLayoutProperty=function(p,x,A){if(A===void 0&&(A={}),x!=null){var k="layers."+this.id+".layout."+p;if(this._validate(Rl,k,p,x,A))return}if(p==="visibility"){this.visibility=x;return}this._unevaluatedLayout.setValue(p,x)},o.prototype.getPaintProperty=function(p){return ve(p,pn)?this._transitionablePaint.getTransition(p.slice(0,-pn.length)):this._transitionablePaint.getValue(p)},o.prototype.setPaintProperty=function(p,x,A){if(A===void 0&&(A={}),x!=null){var k="layers."+this.id+".paint."+p;if(this._validate(ih,k,p,x,A))return!1}if(ve(p,pn))return this._transitionablePaint.setTransition(p.slice(0,-pn.length),x||void 0),!1;var F=this._transitionablePaint._values[p],Y=F.property.specification["property-type"]==="cross-faded-data-driven",j=F.value.isDataDriven(),Q=F.value;this._transitionablePaint.setValue(p,x),this._handleSpecialPaintPropertyUpdate(p);var ie=this._transitionablePaint._values[p].value,ye=ie.isDataDriven();return ye||j||Y||this._handleOverridablePaintPropertyUpdate(p,Q,ie)},o.prototype._handleSpecialPaintPropertyUpdate=function(p){},o.prototype._handleOverridablePaintPropertyUpdate=function(p,x,A){return!1},o.prototype.isHidden=function(p){return this.minzoom&&p=this.maxzoom?!0:this.visibility==="none"},o.prototype.updateTransitions=function(p){this._transitioningPaint=this._transitionablePaint.transitioned(p,this._transitioningPaint)},o.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},o.prototype.recalculate=function(p,x){p.getCrossfadeParameters&&(this._crossfadeParameters=p.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(p,void 0,x)),this.paint=this._transitioningPaint.possiblyEvaluate(p,void 0,x)},o.prototype.serialize=function(){var p={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(p.layout=p.layout||{},p.layout.visibility=this.visibility),Me(p,function(x,A){return x!==void 0&&!(A==="layout"&&!Object.keys(x).length)&&!(A==="paint"&&!Object.keys(x).length)})},o.prototype._validate=function(p,x,A,k,F){return F===void 0&&(F={}),F&&F.validate===!1?!1:rc(this,p.call($a,{key:x,layerType:this.type,objectKey:A,value:k,styleSpec:Xt,style:{glyphs:!0,sprite:!0}}))},o.prototype.is3D=function(){return!1},o.prototype.isTileClipped=function(){return!1},o.prototype.hasOffscreenPass=function(){return!1},o.prototype.resize=function(){},o.prototype.isStateDependent=function(){for(var p in this.paint._values){var x=this.paint.get(p);if(!(!(x instanceof bi)||!of(x.property.specification))&&(x.value.kind==="source"||x.value.kind==="composite")&&x.value.isStateDependent)return!0}return!1},o}(gr),jo={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},uo=function(o,u){this._structArray=o,this._pos1=u*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},ci=128,yf=5,Ta=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};Ta.serialize=function(o,u){return o._trim(),u&&(o.isTransferred=!0,u.push(o.arrayBuffer)),{length:o.length,arrayBuffer:o.arrayBuffer}},Ta.deserialize=function(o){var u=Object.create(this.prototype);return u.arrayBuffer=o.arrayBuffer,u.length=o.length,u.capacity=o.arrayBuffer.byteLength/u.bytesPerElement,u._refreshViews(),u},Ta.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},Ta.prototype.clear=function(){this.length=0},Ta.prototype.resize=function(o){this.reserve(o),this.length=o},Ta.prototype.reserve=function(o){if(o>this.capacity){this.capacity=Math.max(o,Math.floor(this.capacity*yf),ci),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var u=this.uint8;this._refreshViews(),u&&this.uint8.set(u)}},Ta.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};function ui(n,o){o===void 0&&(o=1);var u=0,p=0,x=n.map(function(k){var F=Nl(k.type),Y=u=Hv(u,Math.max(o,F)),j=k.components||1;return p=Math.max(p,F),u+=F*j,{name:k.name,type:k.type,components:j,offset:Y}}),A=Hv(u,Math.max(p,o));return{members:x,size:A,alignment:o}}function Nl(n){return jo[n].BYTES_PER_ELEMENT}function Hv(n,o){return Math.ceil(n/o)*o}var ac=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x){var A=this.length;return this.resize(A+1),this.emplace(A,p,x)},o.prototype.emplace=function(p,x,A){var k=p*2;return this.int16[k+0]=x,this.int16[k+1]=A,p},o}(Ta);ac.prototype.bytesPerElement=4,y("StructArrayLayout2i4",ac);var ay=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k){var F=this.length;return this.resize(F+1),this.emplace(F,p,x,A,k)},o.prototype.emplace=function(p,x,A,k,F){var Y=p*4;return this.int16[Y+0]=x,this.int16[Y+1]=A,this.int16[Y+2]=k,this.int16[Y+3]=F,p},o}(Ta);ay.prototype.bytesPerElement=8,y("StructArrayLayout4i8",ay);var gf=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y){var j=this.length;return this.resize(j+1),this.emplace(j,p,x,A,k,F,Y)},o.prototype.emplace=function(p,x,A,k,F,Y,j){var Q=p*6;return this.int16[Q+0]=x,this.int16[Q+1]=A,this.int16[Q+2]=k,this.int16[Q+3]=F,this.int16[Q+4]=Y,this.int16[Q+5]=j,p},o}(Ta);gf.prototype.bytesPerElement=12,y("StructArrayLayout2i4i12",gf);var oh=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y){var j=this.length;return this.resize(j+1),this.emplace(j,p,x,A,k,F,Y)},o.prototype.emplace=function(p,x,A,k,F,Y,j){var Q=p*4,ie=p*8;return this.int16[Q+0]=x,this.int16[Q+1]=A,this.uint8[ie+4]=k,this.uint8[ie+5]=F,this.uint8[ie+6]=Y,this.uint8[ie+7]=j,p},o}(Ta);oh.prototype.bytesPerElement=8,y("StructArrayLayout2i4ub8",oh);var sh=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x){var A=this.length;return this.resize(A+1),this.emplace(A,p,x)},o.prototype.emplace=function(p,x,A){var k=p*2;return this.float32[k+0]=x,this.float32[k+1]=A,p},o}(Ta);sh.prototype.bytesPerElement=8,y("StructArrayLayout2f8",sh);var Lo=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y,j,Q,ie,ye){var he=this.length;return this.resize(he+1),this.emplace(he,p,x,A,k,F,Y,j,Q,ie,ye)},o.prototype.emplace=function(p,x,A,k,F,Y,j,Q,ie,ye,he){var ke=p*10;return this.uint16[ke+0]=x,this.uint16[ke+1]=A,this.uint16[ke+2]=k,this.uint16[ke+3]=F,this.uint16[ke+4]=Y,this.uint16[ke+5]=j,this.uint16[ke+6]=Q,this.uint16[ke+7]=ie,this.uint16[ke+8]=ye,this.uint16[ke+9]=he,p},o}(Ta);Lo.prototype.bytesPerElement=20,y("StructArrayLayout10ui20",Lo);var _f=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y,j,Q,ie,ye,he,ke){var qe=this.length;return this.resize(qe+1),this.emplace(qe,p,x,A,k,F,Y,j,Q,ie,ye,he,ke)},o.prototype.emplace=function(p,x,A,k,F,Y,j,Q,ie,ye,he,ke,qe){var ut=p*12;return this.int16[ut+0]=x,this.int16[ut+1]=A,this.int16[ut+2]=k,this.int16[ut+3]=F,this.uint16[ut+4]=Y,this.uint16[ut+5]=j,this.uint16[ut+6]=Q,this.uint16[ut+7]=ie,this.int16[ut+8]=ye,this.int16[ut+9]=he,this.int16[ut+10]=ke,this.int16[ut+11]=qe,p},o}(Ta);_f.prototype.bytesPerElement=24,y("StructArrayLayout4i4ui4i24",_f);var iy=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A){var k=this.length;return this.resize(k+1),this.emplace(k,p,x,A)},o.prototype.emplace=function(p,x,A,k){var F=p*3;return this.float32[F+0]=x,this.float32[F+1]=A,this.float32[F+2]=k,p},o}(Ta);iy.prototype.bytesPerElement=12,y("StructArrayLayout3f12",iy);var ny=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p){var x=this.length;return this.resize(x+1),this.emplace(x,p)},o.prototype.emplace=function(p,x){var A=p*1;return this.uint32[A+0]=x,p},o}(Ta);ny.prototype.bytesPerElement=4,y("StructArrayLayout1ul4",ny);var Gv=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y,j,Q,ie){var ye=this.length;return this.resize(ye+1),this.emplace(ye,p,x,A,k,F,Y,j,Q,ie)},o.prototype.emplace=function(p,x,A,k,F,Y,j,Q,ie,ye){var he=p*10,ke=p*5;return this.int16[he+0]=x,this.int16[he+1]=A,this.int16[he+2]=k,this.int16[he+3]=F,this.int16[he+4]=Y,this.int16[he+5]=j,this.uint32[ke+3]=Q,this.uint16[he+8]=ie,this.uint16[he+9]=ye,p},o}(Ta);Gv.prototype.bytesPerElement=20,y("StructArrayLayout6i1ul2ui20",Gv);var Fp=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y){var j=this.length;return this.resize(j+1),this.emplace(j,p,x,A,k,F,Y)},o.prototype.emplace=function(p,x,A,k,F,Y,j){var Q=p*6;return this.int16[Q+0]=x,this.int16[Q+1]=A,this.int16[Q+2]=k,this.int16[Q+3]=F,this.int16[Q+4]=Y,this.int16[Q+5]=j,p},o}(Ta);Fp.prototype.bytesPerElement=12,y("StructArrayLayout2i2i2i12",Fp);var Mu=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F){var Y=this.length;return this.resize(Y+1),this.emplace(Y,p,x,A,k,F)},o.prototype.emplace=function(p,x,A,k,F,Y){var j=p*4,Q=p*8;return this.float32[j+0]=x,this.float32[j+1]=A,this.float32[j+2]=k,this.int16[Q+6]=F,this.int16[Q+7]=Y,p},o}(Ta);Mu.prototype.bytesPerElement=16,y("StructArrayLayout2f1f2i16",Mu);var Jo=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k){var F=this.length;return this.resize(F+1),this.emplace(F,p,x,A,k)},o.prototype.emplace=function(p,x,A,k,F){var Y=p*12,j=p*3;return this.uint8[Y+0]=x,this.uint8[Y+1]=A,this.float32[j+1]=k,this.float32[j+2]=F,p},o}(Ta);Jo.prototype.bytesPerElement=12,y("StructArrayLayout2ub2f12",Jo);var Su=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A){var k=this.length;return this.resize(k+1),this.emplace(k,p,x,A)},o.prototype.emplace=function(p,x,A,k){var F=p*3;return this.uint16[F+0]=x,this.uint16[F+1]=A,this.uint16[F+2]=k,p},o}(Ta);Su.prototype.bytesPerElement=6,y("StructArrayLayout3ui6",Su);var Zv=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y,j,Q,ie,ye,he,ke,qe,ut,et,kt,_t){var Mt=this.length;return this.resize(Mt+1),this.emplace(Mt,p,x,A,k,F,Y,j,Q,ie,ye,he,ke,qe,ut,et,kt,_t)},o.prototype.emplace=function(p,x,A,k,F,Y,j,Q,ie,ye,he,ke,qe,ut,et,kt,_t,Mt){var It=p*24,Jt=p*12,dr=p*48;return this.int16[It+0]=x,this.int16[It+1]=A,this.uint16[It+2]=k,this.uint16[It+3]=F,this.uint32[Jt+2]=Y,this.uint32[Jt+3]=j,this.uint32[Jt+4]=Q,this.uint16[It+10]=ie,this.uint16[It+11]=ye,this.uint16[It+12]=he,this.float32[Jt+7]=ke,this.float32[Jt+8]=qe,this.uint8[dr+36]=ut,this.uint8[dr+37]=et,this.uint8[dr+38]=kt,this.uint32[Jt+10]=_t,this.int16[It+22]=Mt,p},o}(Ta);Zv.prototype.bytesPerElement=48,y("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Zv);var qp=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y,j,Q,ie,ye,he,ke,qe,ut,et,kt,_t,Mt,It,Jt,dr,cr,Fr,Cr,Ir,Kr,qr,Br){var ya=this.length;return this.resize(ya+1),this.emplace(ya,p,x,A,k,F,Y,j,Q,ie,ye,he,ke,qe,ut,et,kt,_t,Mt,It,Jt,dr,cr,Fr,Cr,Ir,Kr,qr,Br)},o.prototype.emplace=function(p,x,A,k,F,Y,j,Q,ie,ye,he,ke,qe,ut,et,kt,_t,Mt,It,Jt,dr,cr,Fr,Cr,Ir,Kr,qr,Br,ya){var Xr=p*34,Ya=p*17;return this.int16[Xr+0]=x,this.int16[Xr+1]=A,this.int16[Xr+2]=k,this.int16[Xr+3]=F,this.int16[Xr+4]=Y,this.int16[Xr+5]=j,this.int16[Xr+6]=Q,this.int16[Xr+7]=ie,this.uint16[Xr+8]=ye,this.uint16[Xr+9]=he,this.uint16[Xr+10]=ke,this.uint16[Xr+11]=qe,this.uint16[Xr+12]=ut,this.uint16[Xr+13]=et,this.uint16[Xr+14]=kt,this.uint16[Xr+15]=_t,this.uint16[Xr+16]=Mt,this.uint16[Xr+17]=It,this.uint16[Xr+18]=Jt,this.uint16[Xr+19]=dr,this.uint16[Xr+20]=cr,this.uint16[Xr+21]=Fr,this.uint16[Xr+22]=Cr,this.uint32[Ya+12]=Ir,this.float32[Ya+13]=Kr,this.float32[Ya+14]=qr,this.float32[Ya+15]=Br,this.float32[Ya+16]=ya,p},o}(Ta);qp.prototype.bytesPerElement=68,y("StructArrayLayout8i15ui1ul4f68",qp);var lh=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p){var x=this.length;return this.resize(x+1),this.emplace(x,p)},o.prototype.emplace=function(p,x){var A=p*1;return this.float32[A+0]=x,p},o}(Ta);lh.prototype.bytesPerElement=4,y("StructArrayLayout1f4",lh);var oy=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A){var k=this.length;return this.resize(k+1),this.emplace(k,p,x,A)},o.prototype.emplace=function(p,x,A,k){var F=p*3;return this.int16[F+0]=x,this.int16[F+1]=A,this.int16[F+2]=k,p},o}(Ta);oy.prototype.bytesPerElement=6,y("StructArrayLayout3i6",oy);var xf=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A){var k=this.length;return this.resize(k+1),this.emplace(k,p,x,A)},o.prototype.emplace=function(p,x,A,k){var F=p*2,Y=p*4;return this.uint32[F+0]=x,this.uint16[Y+2]=A,this.uint16[Y+3]=k,p},o}(Ta);xf.prototype.bytesPerElement=8,y("StructArrayLayout1ul2ui8",xf);var Yv=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x){var A=this.length;return this.resize(A+1),this.emplace(A,p,x)},o.prototype.emplace=function(p,x,A){var k=p*2;return this.uint16[k+0]=x,this.uint16[k+1]=A,p},o}(Ta);Yv.prototype.bytesPerElement=4,y("StructArrayLayout2ui4",Yv);var uh=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p){var x=this.length;return this.resize(x+1),this.emplace(x,p)},o.prototype.emplace=function(p,x){var A=p*1;return this.uint16[A+0]=x,p},o}(Ta);uh.prototype.bytesPerElement=2,y("StructArrayLayout1ui2",uh);var ic=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k){var F=this.length;return this.resize(F+1),this.emplace(F,p,x,A,k)},o.prototype.emplace=function(p,x,A,k,F){var Y=p*4;return this.float32[Y+0]=x,this.float32[Y+1]=A,this.float32[Y+2]=k,this.float32[Y+3]=F,p},o}(Ta);ic.prototype.bytesPerElement=16,y("StructArrayLayout4f16",ic);var _1=function(n){function o(){n.apply(this,arguments)}n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o;var u={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return u.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},u.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},u.x1.get=function(){return this._structArray.int16[this._pos2+2]},u.y1.get=function(){return this._structArray.int16[this._pos2+3]},u.x2.get=function(){return this._structArray.int16[this._pos2+4]},u.y2.get=function(){return this._structArray.int16[this._pos2+5]},u.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},u.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},u.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},u.anchorPoint.get=function(){return new v(this.anchorPointX,this.anchorPointY)},Object.defineProperties(o.prototype,u),o}(uo);_1.prototype.size=20;var sy=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.get=function(p){return new _1(this,p)},o}(Gv);y("CollisionBoxArray",sy);var nc=function(n){function o(){n.apply(this,arguments)}n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o;var u={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return u.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},u.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},u.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},u.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},u.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},u.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},u.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},u.segment.get=function(){return this._structArray.uint16[this._pos2+10]},u.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},u.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},u.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},u.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},u.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},u.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},u.placedOrientation.set=function(p){this._structArray.uint8[this._pos1+37]=p},u.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},u.hidden.set=function(p){this._structArray.uint8[this._pos1+38]=p},u.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},u.crossTileID.set=function(p){this._structArray.uint32[this._pos4+10]=p},u.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(o.prototype,u),o}(uo);nc.prototype.size=48;var ly=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.get=function(p){return new nc(this,p)},o}(Zv);y("PlacedSymbolArray",ly);var fh=function(n){function o(){n.apply(this,arguments)}n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o;var u={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return u.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},u.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},u.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},u.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},u.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},u.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},u.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},u.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},u.key.get=function(){return this._structArray.uint16[this._pos2+8]},u.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},u.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},u.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},u.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},u.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},u.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},u.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},u.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},u.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},u.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},u.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},u.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},u.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},u.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},u.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},u.crossTileID.set=function(p){this._structArray.uint32[this._pos4+12]=p},u.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},u.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},u.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},u.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(o.prototype,u),o}(uo);fh.prototype.size=68;var x1=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.get=function(p){return new fh(this,p)},o}(qp);y("SymbolInstanceArray",x1);var b1=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.getoffsetX=function(p){return this.float32[p*1+0]},o}(lh);y("GlyphOffsetArray",b1);var Qs=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.getx=function(p){return this.int16[p*3+0]},o.prototype.gety=function(p){return this.int16[p*3+1]},o.prototype.gettileUnitDistanceFromAnchor=function(p){return this.int16[p*3+2]},o}(oy);y("SymbolLineVertexArray",Qs);var w1=function(n){function o(){n.apply(this,arguments)}n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o;var u={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return u.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},u.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},u.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(o.prototype,u),o}(uo);w1.prototype.size=8;var T1=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.get=function(p){return new w1(this,p)},o}(xf);y("FeatureIndexArray",T1);var f3=ui([{name:"a_pos",components:2,type:"Int16"}],4),A1=f3.members,Tn=function(o){o===void 0&&(o=[]),this.segments=o};Tn.prototype.prepareSegment=function(o,u,p,x){var A=this.segments[this.segments.length-1];return o>Tn.MAX_VERTEX_ARRAY_LENGTH&&Ce("Max vertices per segment is "+Tn.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+o),(!A||A.vertexLength+o>Tn.MAX_VERTEX_ARRAY_LENGTH||A.sortKey!==x)&&(A={vertexOffset:u.length,primitiveOffset:p.length,vertexLength:0,primitiveLength:0},x!==void 0&&(A.sortKey=x),this.segments.push(A)),A},Tn.prototype.get=function(){return this.segments},Tn.prototype.destroy=function(){for(var o=0,u=this.segments;o>>16)*Y&65535)<<16)&4294967295,Q=Q<<15|Q>>>17,Q=(Q&65535)*j+(((Q>>>16)*j&65535)<<16)&4294967295,k^=Q,k=k<<13|k>>>19,F=(k&65535)*5+(((k>>>16)*5&65535)<<16)&4294967295,k=(F&65535)+27492+(((F>>>16)+58964&65535)<<16);switch(Q=0,x){case 3:Q^=(u.charCodeAt(ie+2)&255)<<16;case 2:Q^=(u.charCodeAt(ie+1)&255)<<8;case 1:Q^=u.charCodeAt(ie)&255,Q=(Q&65535)*Y+(((Q>>>16)*Y&65535)<<16)&4294967295,Q=Q<<15|Q>>>17,Q=(Q&65535)*j+(((Q>>>16)*j&65535)<<16)&4294967295,k^=Q}return k^=u.length,k^=k>>>16,k=(k&65535)*2246822507+(((k>>>16)*2246822507&65535)<<16)&4294967295,k^=k>>>13,k=(k&65535)*3266489909+(((k>>>16)*3266489909&65535)<<16)&4294967295,k^=k>>>16,k>>>0}n.exports=o}),d=s(function(n){function o(u,p){for(var x=u.length,A=p^x,k=0,F;x>=4;)F=u.charCodeAt(k)&255|(u.charCodeAt(++k)&255)<<8|(u.charCodeAt(++k)&255)<<16|(u.charCodeAt(++k)&255)<<24,F=(F&65535)*1540483477+(((F>>>16)*1540483477&65535)<<16),F^=F>>>24,F=(F&65535)*1540483477+(((F>>>16)*1540483477&65535)<<16),A=(A&65535)*1540483477+(((A>>>16)*1540483477&65535)<<16)^F,x-=4,++k;switch(x){case 3:A^=(u.charCodeAt(k+2)&255)<<16;case 2:A^=(u.charCodeAt(k+1)&255)<<8;case 1:A^=u.charCodeAt(k)&255,A=(A&65535)*1540483477+(((A>>>16)*1540483477&65535)<<16)}return A^=A>>>13,A=(A&65535)*1540483477+(((A>>>16)*1540483477&65535)<<16),A^=A>>>15,A>>>0}n.exports=o}),w=b,L=b,R=d;w.murmur3=L,w.murmur2=R;var G=function(){this.ids=[],this.positions=[],this.indexed=!1};G.prototype.add=function(o,u,p,x){this.ids.push(re(o)),this.positions.push(u,p,x)},G.prototype.getPositions=function(o){for(var u=re(o),p=0,x=this.ids.length-1;p>1;this.ids[A]>=u?x=A:p=A+1}for(var k=[];this.ids[p]===u;){var F=this.positions[3*p],Y=this.positions[3*p+1],j=this.positions[3*p+2];k.push({index:F,start:Y,end:j}),p++}return k},G.serialize=function(o,u){var p=new Float64Array(o.ids),x=new Uint32Array(o.positions);return ue(p,x,0,p.length-1),u&&u.push(p.buffer,x.buffer),{ids:p,positions:x}},G.deserialize=function(o){var u=new G;return u.ids=o.ids,u.positions=o.positions,u.indexed=!0,u};var K=Math.pow(2,53)-1;function re(n){var o=+n;return!isNaN(o)&&o<=K?o:w(String(n))}function ue(n,o,u,p){for(;u>1],A=u-1,k=p+1;;){do A++;while(n[A]x);if(A>=k)break;be(n,A,k),be(o,3*A,3*k),be(o,3*A+1,3*k+1),be(o,3*A+2,3*k+2)}k-uk.x+1||Yk.y+1)&&Ce("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return u}function Mi(n,o){return{type:n.type,id:n.id,properties:n.properties,geometry:o?Ua(n):[]}}function La(n,o,u,p,x){n.emplaceBack(o*2+(p+1)/2,u*2+(x+1)/2)}var mi=function(o){this.zoom=o.zoom,this.overscaling=o.overscaling,this.layers=o.layers,this.layerIds=this.layers.map(function(u){return u.id}),this.index=o.index,this.hasPattern=!1,this.layoutVertexArray=new ac,this.indexArray=new Su,this.segments=new Tn,this.programConfigurations=new kr(o.layers,o.zoom),this.stateDependentLayerIds=this.layers.filter(function(u){return u.isStateDependent()}).map(function(u){return u.id})};mi.prototype.populate=function(o,u,p){var x=this.layers[0],A=[],k=null;x.type==="circle"&&(k=x.layout.get("circle-sort-key"));for(var F=0,Y=o;F=Nr||ye<0||ye>=Nr)){var he=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,o.sortKey),ke=he.vertexLength;La(this.layoutVertexArray,ie,ye,-1,-1),La(this.layoutVertexArray,ie,ye,1,-1),La(this.layoutVertexArray,ie,ye,1,1),La(this.layoutVertexArray,ie,ye,-1,1),this.indexArray.emplaceBack(ke,ke+1,ke+2),this.indexArray.emplaceBack(ke,ke+3,ke+2),he.vertexLength+=4,he.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,o,p,{},x)},y("CircleBucket",mi,{omit:["layers"]});function ia(n,o){for(var u=0;u=3){for(var A=0;A1){if(Ps(n,o))return!0;for(var p=0;p1?n.distSqr(u):n.distSqr(u.sub(o)._mult(x)._add(o))}function Ol(n,o){for(var u=!1,p,x,A,k=0;ko.y!=A.y>o.y&&o.x<(A.x-x.x)*(o.y-x.y)/(A.y-x.y)+x.x&&(u=!u)}return u}function Do(n,o){for(var u=!1,p=0,x=n.length-1;po.y!=k.y>o.y&&o.x<(k.x-A.x)*(o.y-A.y)/(k.y-A.y)+A.x&&(u=!u)}return u}function Ul(n,o,u,p,x){for(var A=0,k=n;A=F.x&&x>=F.y)return!0}var Y=[new v(o,u),new v(o,x),new v(p,x),new v(p,u)];if(n.length>2)for(var j=0,Q=Y;jx.x&&o.x>x.x||n.yx.y&&o.y>x.y)return!1;var A=Le(n,o,u[0]);return A!==Le(n,o,u[1])||A!==Le(n,o,u[2])||A!==Le(n,o,u[3])}function Po(n,o,u){var p=o.paint.get(n).value;return p.kind==="constant"?p.value:u.programConfigurations.get(o.id).getMaxValue(n)}function el(n){return Math.sqrt(n[0]*n[0]+n[1]*n[1])}function ku(n,o,u,p,x){if(!o[0]&&!o[1])return n;var A=v.convert(o)._mult(x);u==="viewport"&&A._rotate(-p);for(var k=[],F=0;F0&&(A=1/Math.sqrt(A)),n[0]=o[0]*A,n[1]=o[1]*A,n[2]=o[2]*A,n}function iY(n,o){return n[0]*o[0]+n[1]*o[1]+n[2]*o[2]}function nY(n,o,u){var p=o[0],x=o[1],A=o[2],k=u[0],F=u[1],Y=u[2];return n[0]=x*Y-A*F,n[1]=A*k-p*Y,n[2]=p*F-x*k,n}function oY(n,o,u){var p=o[0],x=o[1],A=o[2];return n[0]=p*u[0]+x*u[3]+A*u[6],n[1]=p*u[1]+x*u[4]+A*u[7],n[2]=p*u[2]+x*u[5]+A*u[8],n}var sY=d3,Ame=function(){var n=Xv();return function(o,u,p,x,A,k){var F,Y;for(u||(u=3),p||(p=0),x?Y=Math.min(x*u+p,o.length):Y=o.length,F=p;Fn.width||x.height>n.height||u.x>n.width-x.width||u.y>n.height-x.height)throw new RangeError("out of range source coordinates for image copy");if(x.width>o.width||x.height>o.height||p.x>o.width-x.width||p.y>o.height-x.height)throw new RangeError("out of range destination coordinates for image copy");for(var k=n.data,F=o.data,Y=0;Y80*u){F=j=n[0],Y=Q=n[1];for(var ke=u;kej&&(j=ie),ye>Q&&(Q=ye);he=Math.max(j-F,Q-Y),he=he!==0?1/he:0}return cy(A,k,u,F,Y,he),k}function vM(n,o,u,p,x){var A,k;if(x===b3(n,o,u,p)>0)for(A=o;A=o;A-=p)k=mM(A,n[A],n[A+1],k);return k&&k1(k,k.next)&&(vy(k),k=k.next),k}function ph(n,o){if(!n)return n;o||(o=n);var u=n,p;do if(p=!1,!u.steiner&&(k1(u,u.next)||An(u.prev,u,u.next)===0)){if(vy(u),u=o=u.prev,u===u.next)break;p=!0}else u=u.next;while(p||u!==o);return o}function cy(n,o,u,p,x,A,k){if(n){!k&&A&&IY(n,p,x,A);for(var F=n,Y,j;n.prev!==n.next;){if(Y=n.prev,j=n.next,A?SY(n,p,x,A):MY(n)){o.push(Y.i/u),o.push(n.i/u),o.push(j.i/u),vy(n),n=j.next,F=j.next;continue}if(n=j,n===F){k?k===1?(n=kY(ph(n),o,u),cy(n,o,u,p,x,A,2)):k===2&&CY(n,o,u,p,x,A):cy(ph(n),o,u,p,x,A,1);break}}}}function MY(n){var o=n.prev,u=n,p=n.next;if(An(o,u,p)>=0)return!1;for(var x=n.next.next;x!==n.prev;){if(Zp(o.x,o.y,u.x,u.y,p.x,p.y,x.x,x.y)&&An(x.prev,x,x.next)>=0)return!1;x=x.next}return!0}function SY(n,o,u,p){var x=n.prev,A=n,k=n.next;if(An(x,A,k)>=0)return!1;for(var F=x.xA.x?x.x>k.x?x.x:k.x:A.x>k.x?A.x:k.x,Q=x.y>A.y?x.y>k.y?x.y:k.y:A.y>k.y?A.y:k.y,ie=_3(F,Y,o,u,p),ye=_3(j,Q,o,u,p),he=n.prevZ,ke=n.nextZ;he&&he.z>=ie&&ke&&ke.z<=ye;){if(he!==n.prev&&he!==n.next&&Zp(x.x,x.y,A.x,A.y,k.x,k.y,he.x,he.y)&&An(he.prev,he,he.next)>=0||(he=he.prevZ,ke!==n.prev&&ke!==n.next&&Zp(x.x,x.y,A.x,A.y,k.x,k.y,ke.x,ke.y)&&An(ke.prev,ke,ke.next)>=0))return!1;ke=ke.nextZ}for(;he&&he.z>=ie;){if(he!==n.prev&&he!==n.next&&Zp(x.x,x.y,A.x,A.y,k.x,k.y,he.x,he.y)&&An(he.prev,he,he.next)>=0)return!1;he=he.prevZ}for(;ke&&ke.z<=ye;){if(ke!==n.prev&&ke!==n.next&&Zp(x.x,x.y,A.x,A.y,k.x,k.y,ke.x,ke.y)&&An(ke.prev,ke,ke.next)>=0)return!1;ke=ke.nextZ}return!0}function kY(n,o,u){var p=n;do{var x=p.prev,A=p.next.next;!k1(x,A)&&dM(x,p,p.next,A)&&hy(x,A)&&hy(A,x)&&(o.push(x.i/u),o.push(p.i/u),o.push(A.i/u),vy(p),vy(p.next),p=n=A),p=p.next}while(p!==n);return ph(p)}function CY(n,o,u,p,x,A){var k=n;do{for(var F=k.next.next;F!==k.prev;){if(k.i!==F.i&&qY(k,F)){var Y=pM(k,F);k=ph(k,k.next),Y=ph(Y,Y.next),cy(k,o,u,p,x,A),cy(Y,o,u,p,x,A);return}F=F.next}k=k.next}while(k!==n)}function EY(n,o,u,p){var x=[],A,k,F,Y,j;for(A=0,k=o.length;A=u.next.y&&u.next.y!==u.y){var F=u.x+(x-u.y)*(u.next.x-u.x)/(u.next.y-u.y);if(F<=p&&F>A){if(A=F,F===p){if(x===u.y)return u;if(x===u.next.y)return u.next}k=u.x=u.x&&u.x>=j&&p!==u.x&&Zp(xk.x||u.x===k.x&&zY(k,u)))&&(k=u,ie=ye)),u=u.next;while(u!==Y);return k}function zY(n,o){return An(n.prev,n,o.prev)<0&&An(o.next,n,n.next)<0}function IY(n,o,u,p){var x=n;do x.z===null&&(x.z=_3(x.x,x.y,o,u,p)),x.prevZ=x.prev,x.nextZ=x.next,x=x.next;while(x!==n);x.prevZ.nextZ=null,x.prevZ=null,RY(x)}function RY(n){var o,u,p,x,A,k,F,Y,j=1;do{for(u=n,n=null,A=null,k=0;u;){for(k++,p=u,F=0,o=0;o0||Y>0&&p;)F!==0&&(Y===0||!p||u.z<=p.z)?(x=u,u=u.nextZ,F--):(x=p,p=p.nextZ,Y--),A?A.nextZ=x:n=x,x.prevZ=A,A=x;u=p}A.nextZ=null,j*=2}while(k>1);return n}function _3(n,o,u,p,x){return n=32767*(n-u)*x,o=32767*(o-p)*x,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,o=(o|o<<8)&16711935,o=(o|o<<4)&252645135,o=(o|o<<2)&858993459,o=(o|o<<1)&1431655765,n|o<<1}function FY(n){var o=n,u=n;do(o.x=0&&(n-k)*(p-F)-(u-k)*(o-F)>=0&&(u-k)*(A-F)-(x-k)*(p-F)>=0}function qY(n,o){return n.next.i!==o.i&&n.prev.i!==o.i&&!NY(n,o)&&(hy(n,o)&&hy(o,n)&&BY(n,o)&&(An(n.prev,n,o.prev)||An(n,o.prev,o))||k1(n,o)&&An(n.prev,n,n.next)>0&&An(o.prev,o,o.next)>0)}function An(n,o,u){return(o.y-n.y)*(u.x-o.x)-(o.x-n.x)*(u.y-o.y)}function k1(n,o){return n.x===o.x&&n.y===o.y}function dM(n,o,u,p){var x=E1(An(n,o,u)),A=E1(An(n,o,p)),k=E1(An(u,p,n)),F=E1(An(u,p,o));return!!(x!==A&&k!==F||x===0&&C1(n,u,o)||A===0&&C1(n,p,o)||k===0&&C1(u,n,p)||F===0&&C1(u,o,p))}function C1(n,o,u){return o.x<=Math.max(n.x,u.x)&&o.x>=Math.min(n.x,u.x)&&o.y<=Math.max(n.y,u.y)&&o.y>=Math.min(n.y,u.y)}function E1(n){return n>0?1:n<0?-1:0}function NY(n,o){var u=n;do{if(u.i!==n.i&&u.next.i!==n.i&&u.i!==o.i&&u.next.i!==o.i&&dM(u,u.next,n,o))return!0;u=u.next}while(u!==n);return!1}function hy(n,o){return An(n.prev,n,n.next)<0?An(n,o,n.next)>=0&&An(n,n.prev,o)>=0:An(n,o,n.prev)<0||An(n,n.next,o)<0}function BY(n,o){var u=n,p=!1,x=(n.x+o.x)/2,A=(n.y+o.y)/2;do u.y>A!=u.next.y>A&&u.next.y!==u.y&&x<(u.next.x-u.x)*(A-u.y)/(u.next.y-u.y)+u.x&&(p=!p),u=u.next;while(u!==n);return p}function pM(n,o){var u=new x3(n.i,n.x,n.y),p=new x3(o.i,o.x,o.y),x=n.next,A=o.prev;return n.next=o,o.prev=n,u.next=x,x.prev=u,p.next=u,u.prev=p,A.next=p,p.prev=A,p}function mM(n,o,u,p){var x=new x3(n,o,u);return p?(x.next=p.next,x.prev=p,p.next.prev=x,p.next=x):(x.prev=x,x.next=x),x}function vy(n){n.next.prev=n.prev,n.prev.next=n.next,n.prevZ&&(n.prevZ.nextZ=n.nextZ),n.nextZ&&(n.nextZ.prevZ=n.prevZ)}function x3(n,o,u){this.i=n,this.x=o,this.y=u,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}S1.deviation=function(n,o,u,p){var x=o&&o.length,A=x?o[0]*u:n.length,k=Math.abs(b3(n,0,A,u));if(x)for(var F=0,Y=o.length;F0&&(p+=n[x-1].length,u.holes.push(p))}return u},g3.default=AY;function OY(n,o,u,p,x){yM(n,o,u||0,p||n.length-1,x||UY)}function yM(n,o,u,p,x){for(;p>u;){if(p-u>600){var A=p-u+1,k=o-u+1,F=Math.log(A),Y=.5*Math.exp(2*F/3),j=.5*Math.sqrt(F*Y*(A-Y)/A)*(k-A/2<0?-1:1),Q=Math.max(u,Math.floor(o-k*Y/A+j)),ie=Math.min(p,Math.floor(o+(A-k)*Y/A+j));yM(n,o,Q,ie,x)}var ye=n[o],he=u,ke=p;for(dy(n,u,o),x(n[p],ye)>0&&dy(n,u,p);he0;)ke--}x(n[u],ye)===0?dy(n,u,ke):(ke++,dy(n,ke,p)),ke<=o&&(u=ke+1),o<=ke&&(p=ke-1)}}function dy(n,o,u){var p=n[o];n[o]=n[u],n[u]=p}function UY(n,o){return no?1:0}function w3(n,o){var u=n.length;if(u<=1)return[n];for(var p=[],x,A,k=0;k1)for(var Y=0;Y>3}if(p--,u===1||u===2)x+=n.readSVarint(),A+=n.readSVarint(),u===1&&(F&&k.push(F),F=[]),F.push(new v(x,A));else if(u===7)F&&F.push(F[0].clone());else throw new Error("unknown command "+u)}return F&&k.push(F),k},Yp.prototype.bbox=function(){var n=this._pbf;n.pos=this._geometry;for(var o=n.readVarint()+n.pos,u=1,p=0,x=0,A=0,k=1/0,F=-1/0,Y=1/0,j=-1/0;n.pos>3}if(p--,u===1||u===2)x+=n.readSVarint(),A+=n.readSVarint(),xF&&(F=x),Aj&&(j=A);else if(u!==7)throw new Error("unknown command "+u)}return[k,Y,F,j]},Yp.prototype.toGeoJSON=function(n,o,u){var p=this.extent*Math.pow(2,u),x=this.extent*n,A=this.extent*o,k=this.loadGeometry(),F=Yp.types[this.type],Y,j;function Q(he){for(var ke=0;ke>3;o=p===1?n.readString():p===2?n.readFloat():p===3?n.readDouble():p===4?n.readVarint64():p===5?n.readVarint():p===6?n.readSVarint():p===7?n.readBoolean():null}return o}xM.prototype.feature=function(n){if(n<0||n>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[n];var o=this._pbf.readVarint()+this._pbf.pos;return new gM(this._pbf,o,this.extent,this._keys,this._values)};var rW=aW;function aW(n,o){this.layers=n.readFields(iW,{},o)}function iW(n,o,u){if(n===3){var p=new _M(u,u.readVarint()+u.pos);p.length&&(o[p.name]=p)}}var nW=rW,oW=gM,sW=_M,Wp={VectorTile:nW,VectorTileFeature:oW,VectorTileLayer:sW},lW=Wp.VectorTileFeature.types,uW=500,M3=Math.pow(2,13);function py(n,o,u,p,x,A,k,F){n.emplaceBack(o,u,Math.floor(p*M3)*2+k,x*M3*2,A*M3*2,Math.round(F))}var Eu=function(o){this.zoom=o.zoom,this.overscaling=o.overscaling,this.layers=o.layers,this.layerIds=this.layers.map(function(u){return u.id}),this.index=o.index,this.hasPattern=!1,this.layoutVertexArray=new gf,this.indexArray=new Su,this.programConfigurations=new kr(o.layers,o.zoom),this.segments=new Tn,this.stateDependentLayerIds=this.layers.filter(function(u){return u.isStateDependent()}).map(function(u){return u.id})};Eu.prototype.populate=function(o,u,p){this.features=[],this.hasPattern=T3("fill-extrusion",this.layers,u);for(var x=0,A=o;x=1){var Mt=ut[kt-1];if(!fW(_t,Mt)){he.vertexLength+4>Tn.MAX_VERTEX_ARRAY_LENGTH&&(he=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var It=_t.sub(Mt)._perp()._unit(),Jt=Mt.dist(_t);et+Jt>32768&&(et=0),py(this.layoutVertexArray,_t.x,_t.y,It.x,It.y,0,0,et),py(this.layoutVertexArray,_t.x,_t.y,It.x,It.y,0,1,et),et+=Jt,py(this.layoutVertexArray,Mt.x,Mt.y,It.x,It.y,0,0,et),py(this.layoutVertexArray,Mt.x,Mt.y,It.x,It.y,0,1,et);var dr=he.vertexLength;this.indexArray.emplaceBack(dr,dr+2,dr+1),this.indexArray.emplaceBack(dr+1,dr+2,dr+3),he.vertexLength+=4,he.primitiveLength+=2}}}}if(he.vertexLength+j>Tn.MAX_VERTEX_ARRAY_LENGTH&&(he=this.segments.prepareSegment(j,this.layoutVertexArray,this.indexArray)),lW[o.type]==="Polygon"){for(var cr=[],Fr=[],Cr=he.vertexLength,Ir=0,Kr=Y;IrNr)||n.y===o.y&&(n.y<0||n.y>Nr)}function cW(n){return n.every(function(o){return o.x<0})||n.every(function(o){return o.x>Nr})||n.every(function(o){return o.y<0})||n.every(function(o){return o.y>Nr})}var hW=new Rn({"fill-extrusion-opacity":new Tr(Xt["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new Hr(Xt["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Tr(Xt["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Tr(Xt["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Ni(Xt["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new Hr(Xt["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new Hr(Xt["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Tr(Xt["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])}),vW={paint:hW},dW=function(n){function o(u){n.call(this,u,vW)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.createBucket=function(p){return new Eu(p)},o.prototype.queryRadius=function(){return el(this.paint.get("fill-extrusion-translate"))},o.prototype.is3D=function(){return!0},o.prototype.queryIntersectsFeature=function(p,x,A,k,F,Y,j,Q){var ie=ku(p,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),Y.angle,j),ye=this.paint.get("fill-extrusion-height").evaluate(x,A),he=this.paint.get("fill-extrusion-base").evaluate(x,A),ke=yW(ie,Q,Y,0),qe=mW(k,he,ye,Q),ut=qe[0],et=qe[1];return pW(ut,et,ke)},o}(pi);function my(n,o){return n.x*o.x+n.y*o.y}function bM(n,o){if(n.length===1){for(var u=0,p=o[u++],x;!x||p.equals(x);)if(x=o[u++],!x)return 1/0;for(;u=2&&o[j-1].equals(o[j-2]);)j--;for(var Q=0;Q0;if(cr&&kt>Q){var Cr=he.dist(ke);if(Cr>2*ie){var Ir=he.sub(he.sub(ke)._mult(ie/Cr)._round());this.updateDistance(ke,Ir),this.addCurrentVertex(Ir,ut,0,0,ye),ke=Ir}}var Kr=ke&&qe,qr=Kr?p:Y?"butt":x;if(Kr&&qr==="round"&&(JtA&&(qr="bevel"),qr==="bevel"&&(Jt>2&&(qr="flipbevel"),Jt100)_t=et.mult(-1);else{var Br=Jt*ut.add(et).mag()/ut.sub(et).mag();_t._perp()._mult(Br*(Fr?-1:1))}this.addCurrentVertex(he,_t,0,0,ye),this.addCurrentVertex(he,_t.mult(-1),0,0,ye)}else if(qr==="bevel"||qr==="fakeround"){var ya=-Math.sqrt(Jt*Jt-1),Xr=Fr?ya:0,Ya=Fr?0:ya;if(ke&&this.addCurrentVertex(he,ut,Xr,Ya,ye),qr==="fakeround")for(var gi=Math.round(dr*180/Math.PI/MW),Wa=1;Wa2*ie){var kn=he.add(qe.sub(he)._mult(ie/Zn)._round());this.updateDistance(he,kn),this.addCurrentVertex(kn,et,0,0,ye),he=kn}}}}},zo.prototype.addCurrentVertex=function(o,u,p,x,A,k){k===void 0&&(k=!1);var F=u.x+u.y*p,Y=u.y-u.x*p,j=-u.x+u.y*x,Q=-u.y-u.x*x;this.addHalfVertex(o,F,Y,k,!1,p,A),this.addHalfVertex(o,j,Q,k,!0,-x,A),this.distance>AM/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(o,u,p,x,A,k))},zo.prototype.addHalfVertex=function(o,u,p,x,A,k,F){var Y=o.x,j=o.y,Q=this.lineClips?this.scaledDistance*(AM-1):this.scaledDistance,ie=Q*TM;if(this.layoutVertexArray.emplaceBack((Y<<1)+(x?1:0),(j<<1)+(A?1:0),Math.round(wM*u)+128,Math.round(wM*p)+128,(k===0?0:k<0?-1:1)+1|(ie&63)<<2,ie>>6),this.lineClips){var ye=this.scaledDistance-this.lineClips.start,he=this.lineClips.end-this.lineClips.start,ke=ye/he;this.layoutVertexArray2.emplaceBack(ke,this.lineClipsArray.length)}var qe=F.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,qe),F.primitiveLength++),A?this.e2=qe:this.e1=qe},zo.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},zo.prototype.updateDistance=function(o,u){this.distance+=o.dist(u),this.updateScaledDistance()},y("LineBucket",zo,{omit:["layers","patternFeatures"]});var kW=new Rn({"line-cap":new Tr(Xt.layout_line["line-cap"]),"line-join":new Hr(Xt.layout_line["line-join"]),"line-miter-limit":new Tr(Xt.layout_line["line-miter-limit"]),"line-round-limit":new Tr(Xt.layout_line["line-round-limit"]),"line-sort-key":new Hr(Xt.layout_line["line-sort-key"])}),CW=new Rn({"line-opacity":new Hr(Xt.paint_line["line-opacity"]),"line-color":new Hr(Xt.paint_line["line-color"]),"line-translate":new Tr(Xt.paint_line["line-translate"]),"line-translate-anchor":new Tr(Xt.paint_line["line-translate-anchor"]),"line-width":new Hr(Xt.paint_line["line-width"]),"line-gap-width":new Hr(Xt.paint_line["line-gap-width"]),"line-offset":new Hr(Xt.paint_line["line-offset"]),"line-blur":new Hr(Xt.paint_line["line-blur"]),"line-dasharray":new Ai(Xt.paint_line["line-dasharray"]),"line-pattern":new Ni(Xt.paint_line["line-pattern"]),"line-gradient":new lo(Xt.paint_line["line-gradient"])}),MM={paint:CW,layout:kW},EW=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.possiblyEvaluate=function(p,x){return x=new jt(Math.floor(x.zoom),{now:x.now,fadeDuration:x.fadeDuration,zoomHistory:x.zoomHistory,transition:x.transition}),n.prototype.possiblyEvaluate.call(this,p,x)},o.prototype.evaluate=function(p,x,A,k){return x=H({},x,{zoom:Math.floor(x.zoom)}),n.prototype.evaluate.call(this,p,x,A,k)},o}(Hr),SM=new EW(MM.paint.properties["line-width"].specification);SM.useIntegerZoom=!0;var LW=function(n){function o(u){n.call(this,u,MM),this.gradientVersion=0}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._handleSpecialPaintPropertyUpdate=function(p){if(p==="line-gradient"){var x=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=x._styleExpression.expression instanceof As,this.gradientVersion=(this.gradientVersion+1)%S}},o.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},o.prototype.recalculate=function(p,x){n.prototype.recalculate.call(this,p,x),this.paint._values["line-floorwidth"]=SM.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,p)},o.prototype.createBucket=function(p){return new zo(p)},o.prototype.queryRadius=function(p){var x=p,A=kM(Po("line-width",this,x),Po("line-gap-width",this,x)),k=Po("line-offset",this,x);return A/2+Math.abs(k)+el(this.paint.get("line-translate"))},o.prototype.queryIntersectsFeature=function(p,x,A,k,F,Y,j){var Q=ku(p,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),Y.angle,j),ie=j/2*kM(this.paint.get("line-width").evaluate(x,A),this.paint.get("line-gap-width").evaluate(x,A)),ye=this.paint.get("line-offset").evaluate(x,A);return ye&&(k=DW(k,ye*j)),Fn(Q,k,ie)},o.prototype.isTileClipped=function(){return!0},o}(pi);function kM(n,o){return o>0?o+2*n:n}function DW(n,o){for(var u=[],p=new v(0,0),x=0;x":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};function BW(n){for(var o="",u=0;u>1,Q=-7,ie=u?x-1:0,ye=u?-1:1,he=n[o+ie];for(ie+=ye,A=he&(1<<-Q)-1,he>>=-Q,Q+=F;Q>0;A=A*256+n[o+ie],ie+=ye,Q-=8);for(k=A&(1<<-Q)-1,A>>=-Q,Q+=p;Q>0;k=k*256+n[o+ie],ie+=ye,Q-=8);if(A===0)A=1-j;else{if(A===Y)return k?NaN:(he?-1:1)*(1/0);k=k+Math.pow(2,p),A=A-j}return(he?-1:1)*k*Math.pow(2,A-p)},UW=function(n,o,u,p,x,A){var k,F,Y,j=A*8-x-1,Q=(1<>1,ye=x===23?Math.pow(2,-24)-Math.pow(2,-77):0,he=p?0:A-1,ke=p?1:-1,qe=o<0||o===0&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(F=isNaN(o)?1:0,k=Q):(k=Math.floor(Math.log(o)/Math.LN2),o*(Y=Math.pow(2,-k))<1&&(k--,Y*=2),k+ie>=1?o+=ye/Y:o+=ye*Math.pow(2,1-ie),o*Y>=2&&(k++,Y/=2),k+ie>=Q?(F=0,k=Q):k+ie>=1?(F=(o*Y-1)*Math.pow(2,x),k=k+ie):(F=o*Math.pow(2,ie-1)*Math.pow(2,x),k=0));x>=8;n[u+he]=F&255,he+=ke,F/=256,x-=8);for(k=k<0;n[u+he]=k&255,he+=ke,k/=256,j-=8);n[u+he-ke]|=qe*128},L1={read:OW,write:UW},D1=Pi;function Pi(n){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(n)?n:new Uint8Array(n||0),this.pos=0,this.type=0,this.length=this.buf.length}Pi.Varint=0,Pi.Fixed64=1,Pi.Bytes=2,Pi.Fixed32=5;var S3=65536*65536,EM=1/S3,VW=12,LM=typeof TextDecoder=="undefined"?null:new TextDecoder("utf8");Pi.prototype={destroy:function(){this.buf=null},readFields:function(n,o,u){for(u=u||this.length;this.pos>3,A=this.pos;this.type=p&7,n(x,o,this),this.pos===A&&this.skip(p)}return o},readMessage:function(n,o){return this.readFields(n,o,this.readVarint()+this.pos)},readFixed32:function(){var n=P1(this.buf,this.pos);return this.pos+=4,n},readSFixed32:function(){var n=PM(this.buf,this.pos);return this.pos+=4,n},readFixed64:function(){var n=P1(this.buf,this.pos)+P1(this.buf,this.pos+4)*S3;return this.pos+=8,n},readSFixed64:function(){var n=P1(this.buf,this.pos)+PM(this.buf,this.pos+4)*S3;return this.pos+=8,n},readFloat:function(){var n=L1.read(this.buf,this.pos,!0,23,4);return this.pos+=4,n},readDouble:function(){var n=L1.read(this.buf,this.pos,!0,52,8);return this.pos+=8,n},readVarint:function(n){var o=this.buf,u,p;return p=o[this.pos++],u=p&127,p<128||(p=o[this.pos++],u|=(p&127)<<7,p<128)||(p=o[this.pos++],u|=(p&127)<<14,p<128)||(p=o[this.pos++],u|=(p&127)<<21,p<128)?u:(p=o[this.pos],u|=(p&15)<<28,HW(u,n,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var n=this.readVarint();return n%2===1?(n+1)/-2:n/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var n=this.readVarint()+this.pos,o=this.pos;return this.pos=n,n-o>=VW&&LM?aX(this.buf,o,n):rX(this.buf,o,n)},readBytes:function(){var n=this.readVarint()+this.pos,o=this.buf.subarray(this.pos,n);return this.pos=n,o},readPackedVarint:function(n,o){if(this.type!==Pi.Bytes)return n.push(this.readVarint(o));var u=sc(this);for(n=n||[];this.pos127;);else if(o===Pi.Bytes)this.pos=this.readVarint()+this.pos;else if(o===Pi.Fixed32)this.pos+=4;else if(o===Pi.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+o)},writeTag:function(n,o){this.writeVarint(n<<3|o)},realloc:function(n){for(var o=this.length||16;o268435455||n<0){GW(n,this);return}this.realloc(4),this.buf[this.pos++]=n&127|(n>127?128:0),!(n<=127)&&(this.buf[this.pos++]=(n>>>=7)&127|(n>127?128:0),!(n<=127)&&(this.buf[this.pos++]=(n>>>=7)&127|(n>127?128:0),!(n<=127)&&(this.buf[this.pos++]=n>>>7&127)))},writeSVarint:function(n){this.writeVarint(n<0?-n*2-1:n*2)},writeBoolean:function(n){this.writeVarint(!!n)},writeString:function(n){n=String(n),this.realloc(n.length*4),this.pos++;var o=this.pos;this.pos=iX(this.buf,n,this.pos);var u=this.pos-o;u>=128&&DM(o,u,this),this.pos=o-1,this.writeVarint(u),this.pos+=u},writeFloat:function(n){this.realloc(4),L1.write(this.buf,n,this.pos,!0,23,4),this.pos+=4},writeDouble:function(n){this.realloc(8),L1.write(this.buf,n,this.pos,!0,52,8),this.pos+=8},writeBytes:function(n){var o=n.length;this.writeVarint(o),this.realloc(o);for(var u=0;u=128&&DM(u,p,this),this.pos=u-1,this.writeVarint(p),this.pos+=p},writeMessage:function(n,o,u){this.writeTag(n,Pi.Bytes),this.writeRawMessage(o,u)},writePackedVarint:function(n,o){o.length&&this.writeMessage(n,WW,o)},writePackedSVarint:function(n,o){o.length&&this.writeMessage(n,XW,o)},writePackedBoolean:function(n,o){o.length&&this.writeMessage(n,KW,o)},writePackedFloat:function(n,o){o.length&&this.writeMessage(n,jW,o)},writePackedDouble:function(n,o){o.length&&this.writeMessage(n,JW,o)},writePackedFixed32:function(n,o){o.length&&this.writeMessage(n,QW,o)},writePackedSFixed32:function(n,o){o.length&&this.writeMessage(n,$W,o)},writePackedFixed64:function(n,o){o.length&&this.writeMessage(n,eX,o)},writePackedSFixed64:function(n,o){o.length&&this.writeMessage(n,tX,o)},writeBytesField:function(n,o){this.writeTag(n,Pi.Bytes),this.writeBytes(o)},writeFixed32Field:function(n,o){this.writeTag(n,Pi.Fixed32),this.writeFixed32(o)},writeSFixed32Field:function(n,o){this.writeTag(n,Pi.Fixed32),this.writeSFixed32(o)},writeFixed64Field:function(n,o){this.writeTag(n,Pi.Fixed64),this.writeFixed64(o)},writeSFixed64Field:function(n,o){this.writeTag(n,Pi.Fixed64),this.writeSFixed64(o)},writeVarintField:function(n,o){this.writeTag(n,Pi.Varint),this.writeVarint(o)},writeSVarintField:function(n,o){this.writeTag(n,Pi.Varint),this.writeSVarint(o)},writeStringField:function(n,o){this.writeTag(n,Pi.Bytes),this.writeString(o)},writeFloatField:function(n,o){this.writeTag(n,Pi.Fixed32),this.writeFloat(o)},writeDoubleField:function(n,o){this.writeTag(n,Pi.Fixed64),this.writeDouble(o)},writeBooleanField:function(n,o){this.writeVarintField(n,!!o)}};function HW(n,o,u){var p=u.buf,x,A;if(A=p[u.pos++],x=(A&112)>>4,A<128||(A=p[u.pos++],x|=(A&127)<<3,A<128)||(A=p[u.pos++],x|=(A&127)<<10,A<128)||(A=p[u.pos++],x|=(A&127)<<17,A<128)||(A=p[u.pos++],x|=(A&127)<<24,A<128)||(A=p[u.pos++],x|=(A&1)<<31,A<128))return Xp(n,x,o);throw new Error("Expected varint not more than 10 bytes")}function sc(n){return n.type===Pi.Bytes?n.readVarint()+n.pos:n.pos+1}function Xp(n,o,u){return u?o*4294967296+(n>>>0):(o>>>0)*4294967296+(n>>>0)}function GW(n,o){var u,p;if(n>=0?(u=n%4294967296|0,p=n/4294967296|0):(u=~(-n%4294967296),p=~(-n/4294967296),u^4294967295?u=u+1|0:(u=0,p=p+1|0)),n>=18446744073709552e3||n<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");o.realloc(10),ZW(u,p,o),YW(p,o)}function ZW(n,o,u){u.buf[u.pos++]=n&127|128,n>>>=7,u.buf[u.pos++]=n&127|128,n>>>=7,u.buf[u.pos++]=n&127|128,n>>>=7,u.buf[u.pos++]=n&127|128,n>>>=7,u.buf[u.pos]=n&127}function YW(n,o){var u=(n&7)<<4;o.buf[o.pos++]|=u|((n>>>=3)?128:0),n&&(o.buf[o.pos++]=n&127|((n>>>=7)?128:0),n&&(o.buf[o.pos++]=n&127|((n>>>=7)?128:0),n&&(o.buf[o.pos++]=n&127|((n>>>=7)?128:0),n&&(o.buf[o.pos++]=n&127|((n>>>=7)?128:0),n&&(o.buf[o.pos++]=n&127)))))}function DM(n,o,u){var p=o<=16383?1:o<=2097151?2:o<=268435455?3:Math.floor(Math.log(o)/(Math.LN2*7));u.realloc(p);for(var x=u.pos-1;x>=n;x--)u.buf[x+p]=u.buf[x]}function WW(n,o){for(var u=0;u>>8,n[u+2]=o>>>16,n[u+3]=o>>>24}function PM(n,o){return(n[o]|n[o+1]<<8|n[o+2]<<16)+(n[o+3]<<24)}function rX(n,o,u){for(var p="",x=o;x239?4:A>223?3:A>191?2:1;if(x+F>u)break;var Y,j,Q;F===1?A<128&&(k=A):F===2?(Y=n[x+1],(Y&192)===128&&(k=(A&31)<<6|Y&63,k<=127&&(k=null))):F===3?(Y=n[x+1],j=n[x+2],(Y&192)===128&&(j&192)===128&&(k=(A&15)<<12|(Y&63)<<6|j&63,(k<=2047||k>=55296&&k<=57343)&&(k=null))):F===4&&(Y=n[x+1],j=n[x+2],Q=n[x+3],(Y&192)===128&&(j&192)===128&&(Q&192)===128&&(k=(A&15)<<18|(Y&63)<<12|(j&63)<<6|Q&63,(k<=65535||k>=1114112)&&(k=null))),k===null?(k=65533,F=1):k>65535&&(k-=65536,p+=String.fromCharCode(k>>>10&1023|55296),k=56320|k&1023),p+=String.fromCharCode(k),x+=F}return p}function aX(n,o,u){return LM.decode(n.subarray(o,u))}function iX(n,o,u){for(var p=0,x,A;p55295&&x<57344)if(A)if(x<56320){n[u++]=239,n[u++]=191,n[u++]=189,A=x;continue}else x=A-55296<<10|x-56320|65536,A=null;else{x>56319||p+1===o.length?(n[u++]=239,n[u++]=191,n[u++]=189):A=x;continue}else A&&(n[u++]=239,n[u++]=191,n[u++]=189,A=null);x<128?n[u++]=x:(x<2048?n[u++]=x>>6|192:(x<65536?n[u++]=x>>12|224:(n[u++]=x>>18|240,n[u++]=x>>12&63|128),n[u++]=x>>6&63|128),n[u++]=x&63|128)}return u}var k3=3;function nX(n,o,u){n===1&&u.readMessage(oX,o)}function oX(n,o,u){if(n===3){var p=u.readMessage(sX,{}),x=p.id,A=p.bitmap,k=p.width,F=p.height,Y=p.left,j=p.top,Q=p.advance;o.push({id:x,bitmap:new jv({width:k+2*k3,height:F+2*k3},A),metrics:{width:k,height:F,left:Y,top:j,advance:Q}})}}function sX(n,o,u){n===1?o.id=u.readVarint():n===2?o.bitmap=u.readBytes():n===3?o.width=u.readVarint():n===4?o.height=u.readVarint():n===5?o.left=u.readSVarint():n===6?o.top=u.readSVarint():n===7&&(o.advance=u.readVarint())}function lX(n){return new D1(n).readFields(nX,[])}var zM=k3;function IM(n){for(var o=0,u=0,p=0,x=n;p=0;he--){var ke=F[he];if(!(ye.w>ke.w||ye.h>ke.h)){if(ye.x=ke.x,ye.y=ke.y,j=Math.max(j,ye.y+ye.h),Y=Math.max(Y,ye.x+ye.w),ye.w===ke.w&&ye.h===ke.h){var qe=F.pop();he=0&&x>=o&&bf[this.text.charCodeAt(x)];x--)p--;this.text=this.text.substring(o,p),this.sectionIndex=this.sectionIndex.slice(o,p)},bo.prototype.substring=function(o,u){var p=new bo;return p.text=this.text.substring(o,u),p.sectionIndex=this.sectionIndex.slice(o,u),p.sections=this.sections,p},bo.prototype.toString=function(){return this.text},bo.prototype.getMaxScale=function(){var o=this;return this.sectionIndex.reduce(function(u,p){return Math.max(u,o.sections[p].scale)},0)},bo.prototype.addTextSection=function(o,u){this.text+=o.text,this.sections.push(Jp.forText(o.scale,o.fontStack||u));for(var p=this.sections.length-1,x=0;x=FM?null:++this.imageSectionID:(this.imageSectionID=RM,this.imageSectionID)};function fX(n,o){for(var u=[],p=n.text,x=0,A=0,k=o;A=0,Q=0,ie=0;ie0&&kn>Fr&&(Fr=kn)}else{var Xa=u[Ir.fontStack],Va=Xa&&Xa[qr];if(Va&&Va.rect)Xr=Va.rect,ya=Va.metrics;else{var Si=o[Ir.fontStack],zi=Si&&Si[qr];if(!zi)continue;ya=zi.metrics}Br=(It-Ir.scale)*Qn}Wa?(n.verticalizable=!0,cr.push({glyph:qr,imageName:Ya,x:ye,y:he+Br,vertical:Wa,scale:Ir.scale,fontStack:Ir.fontStack,sectionIndex:Kr,metrics:ya,rect:Xr}),ye+=gi*Ir.scale+j):(cr.push({glyph:qr,imageName:Ya,x:ye,y:he+Br,vertical:Wa,scale:Ir.scale,fontStack:Ir.fontStack,sectionIndex:Kr,metrics:ya,rect:Xr}),ye+=ya.advance*Ir.scale+j)}if(cr.length!==0){var wo=ye-j;ke=Math.max(wo,ke),dX(cr,0,cr.length-1,ut,Fr)}ye=0;var To=A*It+Fr;dr.lineOffset=Math.max(Fr,Jt),he+=To,qe=Math.max(To,qe),++et}var Yn=he-xy,Io=E3(k),Ro=Io.horizontalAlign,qn=Io.verticalAlign;pX(n.positionedLines,ut,Ro,qn,ke,qe,A,Yn,x.length),n.top+=-qn*Yn,n.bottom=n.top+Yn,n.left+=-Ro*ke,n.right=n.left+ke}function dX(n,o,u,p,x){if(!(!p&&!x))for(var A=n[u],k=A.metrics.advance*A.scale,F=(n[u].x+k)*p,Y=o;Y<=u;Y++)n[Y].x-=F,n[Y].y+=x}function pX(n,o,u,p,x,A,k,F,Y){var j=(o-u)*x,Q=0;A!==k?Q=-F*p-xy:Q=(-p*Y+.5)*k;for(var ie=0,ye=n;ie-u/2;){if(k--,k<0)return!1;F-=n[k].dist(A),A=n[k]}F+=n[k].dist(n[k+1]),k++;for(var Y=[],j=0;Fp;)j-=Y.shift().angleDelta;if(j>x)return!1;k++,F+=ie.dist(ye)}return!0}function ZM(n){for(var o=0,u=0;uj){var ke=(j-Y)/he,qe=dn(ie.x,ye.x,ke),ut=dn(ie.y,ye.y,ke),et=new Kp(qe,ut,ye.angleTo(ie),Q);return et._round(),!k||GM(n,et,F,k,o)?et:void 0}Y+=he}}function _X(n,o,u,p,x,A,k,F,Y){var j=YM(p,A,k),Q=WM(p,x),ie=Q*k,ye=n[0].x===0||n[0].x===Y||n[0].y===0||n[0].y===Y;o-ie=0&&Mt=0&&It=0&&ye+j<=Q){var Jt=new Kp(Mt,It,kt,ke);Jt._round(),(!p||GM(n,Jt,A,p,x))&&he.push(Jt)}}ie+=et}return!F&&!he.length&&!k&&(he=XM(n,ie/2,u,p,x,A,k,!0,Y)),he}function jM(n,o,u,p,x){for(var A=[],k=0;k=p&&ie.x>=p)&&(Q.x>=p?Q=new v(p,Q.y+(ie.y-Q.y)*((p-Q.x)/(ie.x-Q.x)))._round():ie.x>=p&&(ie=new v(p,Q.y+(ie.y-Q.y)*((p-Q.x)/(ie.x-Q.x)))._round()),!(Q.y>=x&&ie.y>=x)&&(Q.y>=x?Q=new v(Q.x+(ie.x-Q.x)*((x-Q.y)/(ie.y-Q.y)),x)._round():ie.y>=x&&(ie=new v(Q.x+(ie.x-Q.x)*((x-Q.y)/(ie.y-Q.y)),x)._round()),(!Y||!Q.equals(Y[Y.length-1]))&&(Y=[Q],A.push(Y)),Y.push(ie)))))}return A}var Qp=ps;function JM(n,o,u,p){var x=[],A=n.image,k=A.pixelRatio,F=A.paddedRect.w-2*Qp,Y=A.paddedRect.h-2*Qp,j=n.right-n.left,Q=n.bottom-n.top,ie=A.stretchX||[[0,F]],ye=A.stretchY||[[0,Y]],he=function(Xa,Va){return Xa+Va[1]-Va[0]},ke=ie.reduce(he,0),qe=ye.reduce(he,0),ut=F-ke,et=Y-qe,kt=0,_t=ke,Mt=0,It=qe,Jt=0,dr=ut,cr=0,Fr=et;if(A.content&&p){var Cr=A.content;kt=R1(ie,0,Cr[0]),Mt=R1(ye,0,Cr[1]),_t=R1(ie,Cr[0],Cr[2]),It=R1(ye,Cr[1],Cr[3]),Jt=Cr[0]-kt,cr=Cr[1]-Mt,dr=Cr[2]-Cr[0]-_t,Fr=Cr[3]-Cr[1]-It}var Ir=function(Xa,Va,Si,zi){var rn=F1(Xa.stretch-kt,_t,j,n.left),fn=q1(Xa.fixed-Jt,dr,Xa.stretch,ke),Zn=F1(Va.stretch-Mt,It,Q,n.top),kn=q1(Va.fixed-cr,Fr,Va.stretch,qe),wo=F1(Si.stretch-kt,_t,j,n.left),To=q1(Si.fixed-Jt,dr,Si.stretch,ke),Yn=F1(zi.stretch-Mt,It,Q,n.top),Io=q1(zi.fixed-cr,Fr,zi.stretch,qe),Ro=new v(rn,Zn),qn=new v(wo,Zn),Fo=new v(wo,Yn),Is=new v(rn,Yn),fc=new v(fn/k,kn/k),gh=new v(To/k,Io/k),_h=o*Math.PI/180;if(_h){var xh=Math.sin(_h),o0=Math.cos(_h),Vl=[o0,-xh,xh,o0];Ro._matMult(Vl),qn._matMult(Vl),Is._matMult(Vl),Fo._matMult(Vl)}var H1=Xa.stretch+Xa.fixed,N3=Si.stretch+Si.fixed,G1=Va.stretch+Va.fixed,B3=zi.stretch+zi.fixed,rl={x:A.paddedRect.x+Qp+H1,y:A.paddedRect.y+Qp+G1,w:N3-H1,h:B3-G1},s0=dr/k/j,Z1=Fr/k/Q;return{tl:Ro,tr:qn,bl:Is,br:Fo,tex:rl,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:fc,pixelOffsetBR:gh,minFontScaleX:s0,minFontScaleY:Z1,isSDF:u}};if(!p||!A.stretchX&&!A.stretchY)x.push(Ir({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:F+1},{fixed:0,stretch:Y+1}));else for(var Kr=KM(ie,ut,ke),qr=KM(ye,et,qe),Br=0;Br0&&(ke=Math.max(10,ke),this.circleDiameter=ke)}else{var qe=k.top*F-Y,ut=k.bottom*F+Y,et=k.left*F-Y,kt=k.right*F+Y,_t=k.collisionPadding;if(_t&&(et-=_t[0]*F,qe-=_t[1]*F,kt+=_t[2]*F,ut+=_t[3]*F),Q){var Mt=new v(et,qe),It=new v(kt,qe),Jt=new v(et,ut),dr=new v(kt,ut),cr=Q*Math.PI/180;Mt._rotate(cr),It._rotate(cr),Jt._rotate(cr),dr._rotate(cr),et=Math.min(Mt.x,It.x,Jt.x,dr.x),kt=Math.max(Mt.x,It.x,Jt.x,dr.x),qe=Math.min(Mt.y,It.y,Jt.y,dr.y),ut=Math.max(Mt.y,It.y,Jt.y,dr.y)}o.emplaceBack(u.x,u.y,et,qe,kt,ut,p,x,A)}this.boxEndIndex=o.length},$p=function(o,u){if(o===void 0&&(o=[]),u===void 0&&(u=bX),this.data=o,this.length=this.data.length,this.compare=u,this.length>0)for(var p=(this.length>>1)-1;p>=0;p--)this._down(p)};$p.prototype.push=function(o){this.data.push(o),this.length++,this._up(this.length-1)},$p.prototype.pop=function(){if(this.length!==0){var o=this.data[0],u=this.data.pop();return this.length--,this.length>0&&(this.data[0]=u,this._down(0)),o}},$p.prototype.peek=function(){return this.data[0]},$p.prototype._up=function(o){for(var u=this,p=u.data,x=u.compare,A=p[o];o>0;){var k=o-1>>1,F=p[k];if(x(A,F)>=0)break;p[o]=F,o=k}p[o]=A},$p.prototype._down=function(o){for(var u=this,p=u.data,x=u.compare,A=this.length>>1,k=p[o];o=0)break;p[o]=Y,o=F}p[o]=k};function bX(n,o){return no?1:0}function wX(n,o,u){o===void 0&&(o=1),u===void 0&&(u=!1);for(var p=1/0,x=1/0,A=-1/0,k=-1/0,F=n[0],Y=0;YA)&&(A=j.x),(!Y||j.y>k)&&(k=j.y)}var Q=A-p,ie=k-x,ye=Math.min(Q,ie),he=ye/2,ke=new $p([],TX);if(ye===0)return new v(p,x);for(var qe=p;qeet.d||!et.d)&&(et=_t,u&&console.log("found best %d after %d probes",Math.round(1e4*_t.d)/1e4,kt)),!(_t.max-et.d<=o)&&(he=_t.h/2,ke.push(new e0(_t.p.x-he,_t.p.y-he,he,n)),ke.push(new e0(_t.p.x+he,_t.p.y-he,he,n)),ke.push(new e0(_t.p.x-he,_t.p.y+he,he,n)),ke.push(new e0(_t.p.x+he,_t.p.y+he,he,n)),kt+=4)}return u&&(console.log("num probes: "+kt),console.log("best distance: "+et.d)),et.p}function TX(n,o){return o.max-n.max}function e0(n,o,u,p){this.p=new v(n,o),this.h=u,this.d=AX(this.p,p),this.max=this.d+this.h*Math.SQRT2}function AX(n,o){for(var u=!1,p=1/0,x=0;xn.y!=Q.y>n.y&&n.x<(Q.x-j.x)*(n.y-j.y)/(Q.y-j.y)+j.x&&(u=!u),p=Math.min(p,oc(n,j,Q))}return(u?1:-1)*Math.sqrt(p)}function MX(n){for(var o=0,u=0,p=0,x=n[0],A=0,k=x.length,F=k-1;A=Nr||Vl.y<0||Vl.y>=Nr||CX(n,Vl,o0,u,p,x,qr,n.layers[0],n.collisionBoxArray,o.index,o.sourceLayerIndex,n.index,et,It,cr,Y,_t,Jt,Fr,he,o,A,j,Q,k)};if(Cr==="line")for(var ya=0,Xr=jM(o.geometry,0,0,Nr,Nr);ya1){var Zn=gX(fn,dr,u.vertical||ke,p,qe,kt);Zn&&Br(fn,Zn)}}else if(o.type==="Polygon")for(var kn=0,wo=w3(o.geometry,0);knmh&&Ce(n.layerIds[0]+': Value for "text-size" is >= '+by+'. Reduce your "text-size".')):ut.kind==="composite"&&(et=[Lu*he.compositeTextSizes[0].evaluate(k,{},ke),Lu*he.compositeTextSizes[1].evaluate(k,{},ke)],(et[0]>mh||et[1]>mh)&&Ce(n.layerIds[0]+': Value for "text-size" is >= '+by+'. Reduce your "text-size".')),n.addSymbols(n.text,qe,et,F,A,k,j,o,Y.lineStartIndex,Y.lineLength,ye,ke);for(var kt=0,_t=Q;kt<_t.length;kt+=1){var Mt=_t[kt];ie[Mt]=n.text.placedSymbolArray.length-1}return qe.length*4}function e7(n){for(var o in n)return n[o];return null}function CX(n,o,u,p,x,A,k,F,Y,j,Q,ie,ye,he,ke,qe,ut,et,kt,_t,Mt,It,Jt,dr,cr){var Fr,Cr=n.addToLineVertexArray(o,u),Ir,Kr,qr,Br,ya=0,Xr=0,Ya=0,gi=0,Wa=-1,Xa=-1,Va={},Si=w(""),zi=0,rn=0;if(F._unevaluatedLayout.getValue("text-radial-offset")===void 0?(Fr=F.layout.get("text-offset").evaluate(Mt,{},dr).map(function(Ay){return Ay*Qn}),zi=Fr[0],rn=Fr[1]):(zi=F.layout.get("text-radial-offset").evaluate(Mt,{},dr)*Qn,rn=D3),n.allowVerticalPlacement&&p.vertical){var fn=F.layout.get("text-rotate").evaluate(Mt,{},dr),Zn=fn+90,kn=p.vertical;qr=new N1(Y,o,j,Q,ie,kn,ye,he,ke,Zn),k&&(Br=new N1(Y,o,j,Q,ie,k,ut,et,ke,Zn))}if(x){var wo=F.layout.get("icon-rotate").evaluate(Mt,{}),To=F.layout.get("icon-text-fit")!=="none",Yn=JM(x,wo,Jt,To),Io=k?JM(k,wo,Jt,To):void 0;Kr=new N1(Y,o,j,Q,ie,x,ut,et,!1,wo),ya=Yn.length*4;var Ro=n.iconSizeData,qn=null;Ro.kind==="source"?(qn=[Lu*F.layout.get("icon-size").evaluate(Mt,{})],qn[0]>mh&&Ce(n.layerIds[0]+': Value for "icon-size" is >= '+by+'. Reduce your "icon-size".')):Ro.kind==="composite"&&(qn=[Lu*It.compositeIconSizes[0].evaluate(Mt,{},dr),Lu*It.compositeIconSizes[1].evaluate(Mt,{},dr)],(qn[0]>mh||qn[1]>mh)&&Ce(n.layerIds[0]+': Value for "icon-size" is >= '+by+'. Reduce your "icon-size".')),n.addSymbols(n.icon,Yn,qn,_t,kt,Mt,!1,o,Cr.lineStartIndex,Cr.lineLength,-1,dr),Wa=n.icon.placedSymbolArray.length-1,Io&&(Xr=Io.length*4,n.addSymbols(n.icon,Io,qn,_t,kt,Mt,zs.vertical,o,Cr.lineStartIndex,Cr.lineLength,-1,dr),Xa=n.icon.placedSymbolArray.length-1)}for(var Fo in p.horizontal){var Is=p.horizontal[Fo];if(!Ir){Si=w(Is.text);var fc=F.layout.get("text-rotate").evaluate(Mt,{},dr);Ir=new N1(Y,o,j,Q,ie,Is,ye,he,ke,fc)}var gh=Is.positionedLines.length===1;if(Ya+=$M(n,o,Is,A,F,ke,Mt,qe,Cr,p.vertical?zs.horizontal:zs.horizontalOnly,gh?Object.keys(p.horizontal):[Fo],Va,Wa,It,dr),gh)break}p.vertical&&(gi+=$M(n,o,p.vertical,A,F,ke,Mt,qe,Cr,zs.vertical,["vertical"],Va,Xa,It,dr));var _h=Ir?Ir.boxStartIndex:n.collisionBoxArray.length,xh=Ir?Ir.boxEndIndex:n.collisionBoxArray.length,o0=qr?qr.boxStartIndex:n.collisionBoxArray.length,Vl=qr?qr.boxEndIndex:n.collisionBoxArray.length,H1=Kr?Kr.boxStartIndex:n.collisionBoxArray.length,N3=Kr?Kr.boxEndIndex:n.collisionBoxArray.length,G1=Br?Br.boxStartIndex:n.collisionBoxArray.length,B3=Br?Br.boxEndIndex:n.collisionBoxArray.length,rl=-1,s0=function(Ay,m7){return Ay&&Ay.circleDiameter?Math.max(Ay.circleDiameter,m7):m7};rl=s0(Ir,rl),rl=s0(qr,rl),rl=s0(Kr,rl),rl=s0(Br,rl);var Z1=rl>-1?1:0;Z1&&(rl*=cr/Qn),n.glyphOffsetArray.length>=yi.MAX_GLYPHS&&Ce("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),Mt.sortKey!==void 0&&n.addToSortKeyRanges(n.symbolInstances.length,Mt.sortKey),n.symbolInstances.emplaceBack(o.x,o.y,Va.right>=0?Va.right:-1,Va.center>=0?Va.center:-1,Va.left>=0?Va.left:-1,Va.vertical||-1,Wa,Xa,Si,_h,xh,o0,Vl,H1,N3,G1,B3,j,Ya,gi,ya,Xr,Z1,0,ye,zi,rn,rl)}function EX(n,o,u,p){var x=n.compareText;if(!(o in x))x[o]=[];else for(var A=x[o],k=A.length-1;k>=0;k--)if(p.dist(A[k])0)&&(k.value.kind!=="constant"||k.value.value.length>0),Q=Y.value.kind!=="constant"||!!Y.value.value||Object.keys(Y.parameters).length>0,ie=A.get("symbol-sort-key");if(this.features=[],!(!j&&!Q)){for(var ye=u.iconDependencies,he=u.glyphDependencies,ke=u.availableImages,qe=new jt(this.zoom),ut=0,et=o;ut=0;for(var gi=0,Wa=Fr.sections;gi=0;Y--)k[Y]={x:u[Y].x,y:u[Y].y,tileUnitDistanceFromAnchor:A},Y>0&&(A+=u[Y-1].dist(u[Y]));for(var j=0;j0},yi.prototype.hasIconData=function(){return this.icon.segments.get().length>0},yi.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},yi.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},yi.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},yi.prototype.addIndicesForPlacedSymbol=function(o,u){for(var p=o.placedSymbolArray.get(u),x=p.vertexStartIndex+p.numGlyphs*4,A=p.vertexStartIndex;A1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(o),this.sortedAngle=o,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var p=0,x=this.symbolInstanceIndexes;p=0&&j.indexOf(F)===Y&&u.addIndicesForPlacedSymbol(u.text,F)}),k.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,k.verticalPlacedTextSymbolIndex),k.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,k.placedIconSymbolIndex),k.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,k.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},y("SymbolBucket",yi,{omit:["layers","collisionBoxArray","features","compareText"]}),yi.MAX_GLYPHS=65535,yi.addDynamicAttributes=z3;function zX(n,o){return o.replace(/{([^{}]+)}/g,function(u,p){return p in n?String(n[p]):""})}var IX=new Rn({"symbol-placement":new Tr(Xt.layout_symbol["symbol-placement"]),"symbol-spacing":new Tr(Xt.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Tr(Xt.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new Hr(Xt.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Tr(Xt.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Tr(Xt.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Tr(Xt.layout_symbol["icon-ignore-placement"]),"icon-optional":new Tr(Xt.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Tr(Xt.layout_symbol["icon-rotation-alignment"]),"icon-size":new Hr(Xt.layout_symbol["icon-size"]),"icon-text-fit":new Tr(Xt.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Tr(Xt.layout_symbol["icon-text-fit-padding"]),"icon-image":new Hr(Xt.layout_symbol["icon-image"]),"icon-rotate":new Hr(Xt.layout_symbol["icon-rotate"]),"icon-padding":new Tr(Xt.layout_symbol["icon-padding"]),"icon-keep-upright":new Tr(Xt.layout_symbol["icon-keep-upright"]),"icon-offset":new Hr(Xt.layout_symbol["icon-offset"]),"icon-anchor":new Hr(Xt.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Tr(Xt.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Tr(Xt.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Tr(Xt.layout_symbol["text-rotation-alignment"]),"text-field":new Hr(Xt.layout_symbol["text-field"]),"text-font":new Hr(Xt.layout_symbol["text-font"]),"text-size":new Hr(Xt.layout_symbol["text-size"]),"text-max-width":new Hr(Xt.layout_symbol["text-max-width"]),"text-line-height":new Tr(Xt.layout_symbol["text-line-height"]),"text-letter-spacing":new Hr(Xt.layout_symbol["text-letter-spacing"]),"text-justify":new Hr(Xt.layout_symbol["text-justify"]),"text-radial-offset":new Hr(Xt.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Tr(Xt.layout_symbol["text-variable-anchor"]),"text-anchor":new Hr(Xt.layout_symbol["text-anchor"]),"text-max-angle":new Tr(Xt.layout_symbol["text-max-angle"]),"text-writing-mode":new Tr(Xt.layout_symbol["text-writing-mode"]),"text-rotate":new Hr(Xt.layout_symbol["text-rotate"]),"text-padding":new Tr(Xt.layout_symbol["text-padding"]),"text-keep-upright":new Tr(Xt.layout_symbol["text-keep-upright"]),"text-transform":new Hr(Xt.layout_symbol["text-transform"]),"text-offset":new Hr(Xt.layout_symbol["text-offset"]),"text-allow-overlap":new Tr(Xt.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Tr(Xt.layout_symbol["text-ignore-placement"]),"text-optional":new Tr(Xt.layout_symbol["text-optional"])}),RX=new Rn({"icon-opacity":new Hr(Xt.paint_symbol["icon-opacity"]),"icon-color":new Hr(Xt.paint_symbol["icon-color"]),"icon-halo-color":new Hr(Xt.paint_symbol["icon-halo-color"]),"icon-halo-width":new Hr(Xt.paint_symbol["icon-halo-width"]),"icon-halo-blur":new Hr(Xt.paint_symbol["icon-halo-blur"]),"icon-translate":new Tr(Xt.paint_symbol["icon-translate"]),"icon-translate-anchor":new Tr(Xt.paint_symbol["icon-translate-anchor"]),"text-opacity":new Hr(Xt.paint_symbol["text-opacity"]),"text-color":new Hr(Xt.paint_symbol["text-color"],{runtimeType:ws,getOverride:function(n){return n.textColor},hasOverride:function(n){return!!n.textColor}}),"text-halo-color":new Hr(Xt.paint_symbol["text-halo-color"]),"text-halo-width":new Hr(Xt.paint_symbol["text-halo-width"]),"text-halo-blur":new Hr(Xt.paint_symbol["text-halo-blur"]),"text-translate":new Tr(Xt.paint_symbol["text-translate"]),"text-translate-anchor":new Tr(Xt.paint_symbol["text-translate-anchor"])}),I3={paint:RX,layout:IX},a0=function(o){this.type=o.property.overrides?o.property.overrides.runtimeType:$u,this.defaultValue=o};a0.prototype.evaluate=function(o){if(o.formattedSection){var u=this.defaultValue.property.overrides;if(u&&u.hasOverride(o.formattedSection))return u.getOverride(o.formattedSection)}return o.feature&&o.featureState?this.defaultValue.evaluate(o.feature,o.featureState):this.defaultValue.property.specification.default},a0.prototype.eachChild=function(o){if(!this.defaultValue.isConstant()){var u=this.defaultValue.value;o(u._styleExpression.expression)}},a0.prototype.outputDefined=function(){return!1},a0.prototype.serialize=function(){return null},y("FormatSectionOverride",a0,{omit:["defaultValue"]});var FX=function(n){function o(u){n.call(this,u,I3)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.recalculate=function(p,x){if(n.prototype.recalculate.call(this,p,x),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var A=this.layout.get("text-writing-mode");if(A){for(var k=[],F=0,Y=A;F",targetMapId:x,sourceMapId:k.mapId})}}},i0.prototype.receive=function(o){var u=o.data,p=u.id;if(p&&!(u.targetMapId&&this.mapId!==u.targetMapId))if(u.type===""){delete this.tasks[p];var x=this.cancelCallbacks[p];delete this.cancelCallbacks[p],x&&x()}else at()||u.mustQueue?(this.tasks[p]=u,this.taskQueue.push(p),this.invoker.trigger()):this.processTask(p,u)},i0.prototype.process=function(){if(this.taskQueue.length){var o=this.taskQueue.shift(),u=this.tasks[o];delete this.tasks[o],this.taskQueue.length&&this.invoker.trigger(),u&&this.processTask(o,u)}},i0.prototype.processTask=function(o,u){var p=this;if(u.type===""){var x=this.callbacks[o];delete this.callbacks[o],x&&(u.error?x(Z(u.error)):x(null,Z(u.data)))}else{var A=!1,k=St(this.globalScope)?void 0:[],F=u.hasCallback?function(ye,he){A=!0,delete p.cancelCallbacks[o],p.target.postMessage({id:o,type:"",sourceMapId:p.mapId,error:ye?U(ye):null,data:U(he,k)},k)}:function(ye){A=!0},Y=null,j=Z(u.data);if(this.parent[u.type])Y=this.parent[u.type](u.sourceMapId,j,F);else if(this.parent.getWorkerSource){var Q=u.type.split("."),ie=this.parent.getWorkerSource(u.sourceMapId,Q[0],j.source);Y=ie[Q[1]](j,F)}else F(new Error("Could not find function "+u.type));!A&&Y&&Y.cancel&&(this.cancelCallbacks[o]=Y.cancel)}},i0.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};function WX(n,o,u){o=Math.pow(2,u)-o-1;var p=n7(n*256,o*256,u),x=n7((n+1)*256,(o+1)*256,u);return p[0]+","+p[1]+","+x[0]+","+x[1]}function n7(n,o,u){var p=2*Math.PI*6378137/256/Math.pow(2,u),x=n*p-2*Math.PI*6378137/2,A=o*p-2*Math.PI*6378137/2;return[x,A]}var Mn=function(o,u){o&&(u?this.setSouthWest(o).setNorthEast(u):o.length===4?this.setSouthWest([o[0],o[1]]).setNorthEast([o[2],o[3]]):this.setSouthWest(o[0]).setNorthEast(o[1]))};Mn.prototype.setNorthEast=function(o){return this._ne=o instanceof Hi?new Hi(o.lng,o.lat):Hi.convert(o),this},Mn.prototype.setSouthWest=function(o){return this._sw=o instanceof Hi?new Hi(o.lng,o.lat):Hi.convert(o),this},Mn.prototype.extend=function(o){var u=this._sw,p=this._ne,x,A;if(o instanceof Hi)x=o,A=o;else if(o instanceof Mn){if(x=o._sw,A=o._ne,!x||!A)return this}else{if(Array.isArray(o))if(o.length===4||o.every(Array.isArray)){var k=o;return this.extend(Mn.convert(k))}else{var F=o;return this.extend(Hi.convert(F))}return this}return!u&&!p?(this._sw=new Hi(x.lng,x.lat),this._ne=new Hi(A.lng,A.lat)):(u.lng=Math.min(x.lng,u.lng),u.lat=Math.min(x.lat,u.lat),p.lng=Math.max(A.lng,p.lng),p.lat=Math.max(A.lat,p.lat)),this},Mn.prototype.getCenter=function(){return new Hi((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},Mn.prototype.getSouthWest=function(){return this._sw},Mn.prototype.getNorthEast=function(){return this._ne},Mn.prototype.getNorthWest=function(){return new Hi(this.getWest(),this.getNorth())},Mn.prototype.getSouthEast=function(){return new Hi(this.getEast(),this.getSouth())},Mn.prototype.getWest=function(){return this._sw.lng},Mn.prototype.getSouth=function(){return this._sw.lat},Mn.prototype.getEast=function(){return this._ne.lng},Mn.prototype.getNorth=function(){return this._ne.lat},Mn.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},Mn.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},Mn.prototype.isEmpty=function(){return!(this._sw&&this._ne)},Mn.prototype.contains=function(o){var u=Hi.convert(o),p=u.lng,x=u.lat,A=this._sw.lat<=x&&x<=this._ne.lat,k=this._sw.lng<=p&&p<=this._ne.lng;return this._sw.lng>this._ne.lng&&(k=this._sw.lng>=p&&p>=this._ne.lng),A&&k},Mn.convert=function(o){return!o||o instanceof Mn?o:new Mn(o)};var o7=63710088e-1,Hi=function(o,u){if(isNaN(o)||isNaN(u))throw new Error("Invalid LngLat object: ("+o+", "+u+")");if(this.lng=+o,this.lat=+u,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};Hi.prototype.wrap=function(){return new Hi(B(this.lng,-180,180),this.lat)},Hi.prototype.toArray=function(){return[this.lng,this.lat]},Hi.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},Hi.prototype.distanceTo=function(o){var u=Math.PI/180,p=this.lat*u,x=o.lat*u,A=Math.sin(p)*Math.sin(x)+Math.cos(p)*Math.cos(x)*Math.cos((o.lng-this.lng)*u),k=o7*Math.acos(Math.min(A,1));return k},Hi.prototype.toBounds=function(o){o===void 0&&(o=0);var u=40075017,p=360*o/u,x=p/Math.cos(Math.PI/180*this.lat);return new Mn(new Hi(this.lng-x,this.lat-p),new Hi(this.lng+x,this.lat+p))},Hi.convert=function(o){if(o instanceof Hi)return o;if(Array.isArray(o)&&(o.length===2||o.length===3))return new Hi(Number(o[0]),Number(o[1]));if(!Array.isArray(o)&&typeof o=="object"&&o!==null)return new Hi(Number("lng"in o?o.lng:o.lon),Number(o.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")};var s7=2*Math.PI*o7;function l7(n){return s7*Math.cos(n*Math.PI/180)}function u7(n){return(180+n)/360}function f7(n){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+n*Math.PI/360)))/360}function c7(n,o){return n/l7(o)}function XX(n){return n*360-180}function F3(n){var o=180-n*360;return 360/Math.PI*Math.atan(Math.exp(o*Math.PI/180))-90}function jX(n,o){return n*l7(F3(o))}function JX(n){return 1/Math.cos(n*Math.PI/180)}var Kv=function(o,u,p){p===void 0&&(p=0),this.x=+o,this.y=+u,this.z=+p};Kv.fromLngLat=function(o,u){u===void 0&&(u=0);var p=Hi.convert(o);return new Kv(u7(p.lng),f7(p.lat),c7(u,p.lat))},Kv.prototype.toLngLat=function(){return new Hi(XX(this.x),F3(this.y))},Kv.prototype.toAltitude=function(){return jX(this.z,this.y)},Kv.prototype.meterInMercatorCoordinateUnits=function(){return 1/s7*JX(F3(this.y))};var Qv=function(o,u,p){this.z=o,this.x=u,this.y=p,this.key=Ty(0,o,o,u,p)};Qv.prototype.equals=function(o){return this.z===o.z&&this.x===o.x&&this.y===o.y},Qv.prototype.url=function(o,u){var p=WX(this.x,this.y,this.z),x=KX(this.z,this.x,this.y);return o[(this.x+this.y)%o.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String(u==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",x).replace("{bbox-epsg-3857}",p)},Qv.prototype.getTilePoint=function(o){var u=Math.pow(2,this.z);return new v((o.x*u-this.x)*Nr,(o.y*u-this.y)*Nr)},Qv.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var h7=function(o,u){this.wrap=o,this.canonical=u,this.key=Ty(o,u.z,u.z,u.x,u.y)},Sn=function(o,u,p,x,A){this.overscaledZ=o,this.wrap=u,this.canonical=new Qv(p,+x,+A),this.key=Ty(u,o,p,x,A)};Sn.prototype.equals=function(o){return this.overscaledZ===o.overscaledZ&&this.wrap===o.wrap&&this.canonical.equals(o.canonical)},Sn.prototype.scaledTo=function(o){var u=this.canonical.z-o;return o>this.canonical.z?new Sn(o,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Sn(o,this.wrap,o,this.canonical.x>>u,this.canonical.y>>u)},Sn.prototype.calculateScaledKey=function(o,u){var p=this.canonical.z-o;return o>this.canonical.z?Ty(this.wrap*+u,o,this.canonical.z,this.canonical.x,this.canonical.y):Ty(this.wrap*+u,o,o,this.canonical.x>>p,this.canonical.y>>p)},Sn.prototype.isChildOf=function(o){if(o.wrap!==this.wrap)return!1;var u=this.canonical.z-o.canonical.z;return o.overscaledZ===0||o.overscaledZ>u&&o.canonical.y===this.canonical.y>>u},Sn.prototype.children=function(o){if(this.overscaledZ>=o)return[new Sn(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var u=this.canonical.z+1,p=this.canonical.x*2,x=this.canonical.y*2;return[new Sn(u,this.wrap,u,p,x),new Sn(u,this.wrap,u,p+1,x),new Sn(u,this.wrap,u,p,x+1),new Sn(u,this.wrap,u,p+1,x+1)]},Sn.prototype.isLessThan=function(o){return this.wrapo.wrap?!1:this.overscaledZo.overscaledZ?!1:this.canonical.xo.canonical.x?!1:this.canonical.y0;A--)x=1<=this.dim+1||u<-1||u>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(u+1)*this.stride+(o+1)},lc.prototype._unpackMapbox=function(o,u,p){return(o*256*256+u*256+p)/10-1e4},lc.prototype._unpackTerrarium=function(o,u,p){return o*256+u+p/256-32768},lc.prototype.getPixels=function(){return new es({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},lc.prototype.backfillBorder=function(o,u,p){if(this.dim!==o.dim)throw new Error("dem dimension mismatch");var x=u*this.dim,A=u*this.dim+this.dim,k=p*this.dim,F=p*this.dim+this.dim;switch(u){case-1:x=A-1;break;case 1:A=x+1;break}switch(p){case-1:k=F-1;break;case 1:F=k+1;break}for(var Y=-u*this.dim,j=-p*this.dim,Q=k;Q=0&&ie[3]>=0&&Y.insert(F,ie[0],ie[1],ie[2],ie[3])}},uc.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new Wp.VectorTile(new D1(this.rawTileData)).layers,this.sourceLayerCoder=new U1(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},uc.prototype.query=function(o,u,p,x){var A=this;this.loadVTLayers();for(var k=o.params||{},F=Nr/o.tileSize/o.scale,Y=ff(k.filter),j=o.queryGeometry,Q=o.queryPadding*F,ie=d7(j),ye=this.grid.query(ie.minX-Q,ie.minY-Q,ie.maxX+Q,ie.maxY+Q),he=d7(o.cameraQueryGeometry),ke=this.grid3D.query(he.minX-Q,he.minY-Q,he.maxX+Q,he.maxY+Q,function(Jt,dr,cr,Fr){return Ul(o.cameraQueryGeometry,Jt-Q,dr-Q,cr+Q,Fr+Q)}),qe=0,ut=ke;qex)A=!1;else if(!u)A=!0;else if(this.expirationTime=$r.maxzoom)&&$r.visibility!=="none"){T(gr,this.zoom,ce);var ga=Pt[$r.id]=$r.createBucket({index:yt.bucketLayerIDs.length,layers:gr,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:Zr,sourceID:this.source});ga.populate(Or,Ft,this.tileID.canonical),yt.bucketLayerIDs.push(gr.map(function(Ga){return Ga.id}))}}}}var nr,Ti,Ea,si,fa=a.mapObject(Ft.glyphDependencies,function(Ga){return Object.keys(Ga).map(Number)});Object.keys(fa).length?Ee.send("getGlyphs",{uid:this.uid,stacks:fa},function(Ga,Kn){nr||(nr=Ga,Ti=Kn,xs.call($e))}):Ti={};var Pn=Object.keys(Ft.iconDependencies);Pn.length?Ee.send("getImages",{icons:Pn,source:this.source,tileID:this.tileID,type:"icons"},function(Ga,Kn){nr||(nr=Ga,Ea=Kn,xs.call($e))}):Ea={};var Co=Object.keys(Ft.patternDependencies);Co.length?Ee.send("getImages",{icons:Co,source:this.source,tileID:this.tileID,type:"patterns"},function(Ga,Kn){nr||(nr=Ga,si=Kn,xs.call($e))}):si={},xs.call(this);function xs(){if(nr)return Ne(nr);if(Ti&&Ea&&si){var Ga=new m(Ti),Kn=new a.ImageAtlas(Ea,si);for(var hu in Pt){var Ui=Pt[hu];Ui instanceof a.SymbolBucket?(T(Ui.layers,this.zoom,ce),a.performSymbolLayout(Ui,Ti,Ga.positions,Ea,Kn.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):Ui.hasPattern&&(Ui instanceof a.LineBucket||Ui instanceof a.FillBucket||Ui instanceof a.FillExtrusionBucket)&&(T(Ui.layers,this.zoom,ce),Ui.addFeatures(Ft,this.tileID.canonical,Kn.patternPositions))}this.status="done",Ne(null,{buckets:a.values(Pt).filter(function(dl){return!dl.isEmpty()}),featureIndex:yt,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:Ga.image,imageAtlas:Kn,glyphMap:this.returnDependencies?Ti:null,iconMap:this.returnDependencies?Ea:null,glyphPositions:this.returnDependencies?Ga.positions:null})}}};function T(se,ee,le){for(var ce=new a.EvaluationParameters(ee),Ee=0,Ne=se;Ee=0!=!!ee&&se.reverse()}var O=a.vectorTile.VectorTileFeature.prototype.toGeoJSON,H=function(ee){this._feature=ee,this.extent=a.EXTENT,this.type=ee.type,this.properties=ee.tags,"id"in ee&&!isNaN(ee.id)&&(this.id=parseInt(ee.id,10))};H.prototype.loadGeometry=function(){if(this._feature.type===1){for(var ee=[],le=0,ce=this._feature.geometry;le>31}function at(se,ee){for(var le=se.loadGeometry(),ce=se.type,Ee=0,Ne=0,$e=le.length,Ze=0;Ze<$e;Ze++){var yt=le[Ze],Pt=1;ce===1&&(Pt=yt.length),ee.writeVarint(Ke(1,Pt));for(var Ft=ce===3?yt.length-1:yt.length,tr=0;tr>1;St(se,ee,$e,ce,Ee,Ne%2),Ye(se,ee,le,ce,$e-1,Ne+1),Ye(se,ee,le,$e+1,Ee,Ne+1)}}function St(se,ee,le,ce,Ee,Ne){for(;Ee>ce;){if(Ee-ce>600){var $e=Ee-ce+1,Ze=le-ce+1,yt=Math.log($e),Pt=.5*Math.exp(2*yt/3),Ft=.5*Math.sqrt(yt*Pt*($e-Pt)/$e)*(Ze-$e/2<0?-1:1),tr=Math.max(ce,Math.floor(le-Ze*Pt/$e+Ft)),Wt=Math.min(Ee,Math.floor(le+($e-Ze)*Pt/$e+Ft));St(se,ee,le,tr,Wt,Ne)}var Sr=ee[2*le+Ne],Zr=ce,Or=Ee;for(it(se,ee,ce,le),ee[2*Ee+Ne]>Sr&&it(se,ee,ce,Ee);ZrSr;)Or--}ee[2*ce+Ne]===Sr?it(se,ee,ce,Or):(Or++,it(se,ee,Or,Ee)),Or<=le&&(ce=Or+1),le<=Or&&(Ee=Or-1)}}function it(se,ee,le,ce){mt(se,le,ce),mt(ee,2*le,2*ce),mt(ee,2*le+1,2*ce+1)}function mt(se,ee,le){var ce=se[ee];se[ee]=se[le],se[le]=ce}function bt(se,ee,le,ce,Ee,Ne,$e){for(var Ze=[0,se.length-1,0],yt=[],Pt,Ft;Ze.length;){var tr=Ze.pop(),Wt=Ze.pop(),Sr=Ze.pop();if(Wt-Sr<=$e){for(var Zr=Sr;Zr<=Wt;Zr++)Pt=ee[2*Zr],Ft=ee[2*Zr+1],Pt>=le&&Pt<=Ee&&Ft>=ce&&Ft<=Ne&&yt.push(se[Zr]);continue}var Or=Math.floor((Sr+Wt)/2);Pt=ee[2*Or],Ft=ee[2*Or+1],Pt>=le&&Pt<=Ee&&Ft>=ce&&Ft<=Ne&&yt.push(se[Or]);var ca=(tr+1)%2;(tr===0?le<=Pt:ce<=Ft)&&(Ze.push(Sr),Ze.push(Or-1),Ze.push(ca)),(tr===0?Ee>=Pt:Ne>=Ft)&&(Ze.push(Or+1),Ze.push(Wt),Ze.push(ca))}return yt}function vt(se,ee,le,ce,Ee,Ne){for(var $e=[0,se.length-1,0],Ze=[],yt=Ee*Ee;$e.length;){var Pt=$e.pop(),Ft=$e.pop(),tr=$e.pop();if(Ft-tr<=Ne){for(var Wt=tr;Wt<=Ft;Wt++)de(ee[2*Wt],ee[2*Wt+1],le,ce)<=yt&&Ze.push(se[Wt]);continue}var Sr=Math.floor((tr+Ft)/2),Zr=ee[2*Sr],Or=ee[2*Sr+1];de(Zr,Or,le,ce)<=yt&&Ze.push(se[Sr]);var ca=(Pt+1)%2;(Pt===0?le-Ee<=Zr:ce-Ee<=Or)&&($e.push(tr),$e.push(Sr-1),$e.push(ca)),(Pt===0?le+Ee>=Zr:ce+Ee>=Or)&&($e.push(Sr+1),$e.push(Ft),$e.push(ca))}return Ze}function de(se,ee,le,ce){var Ee=se-le,Ne=ee-ce;return Ee*Ee+Ne*Ne}var De=function(se){return se[0]},ge=function(se){return se[1]},rt=function(ee,le,ce,Ee,Ne){le===void 0&&(le=De),ce===void 0&&(ce=ge),Ee===void 0&&(Ee=64),Ne===void 0&&(Ne=Float64Array),this.nodeSize=Ee,this.points=ee;for(var $e=ee.length<65536?Uint16Array:Uint32Array,Ze=this.ids=new $e(ee.length),yt=this.coords=new Ne(ee.length*2),Pt=0;Pt=Ee;Ft--){var tr=+Date.now();yt=this._cluster(yt,Ft),this.trees[Ft]=new rt(yt,Be,st,$e,Float32Array),ce&&console.log("z%d: %d clusters in %dms",Ft,yt.length,+Date.now()-tr)}return ce&&console.timeEnd("total time"),this},We.prototype.getClusters=function(ee,le){var ce=((ee[0]+180)%360+360)%360-180,Ee=Math.max(-90,Math.min(90,ee[1])),Ne=ee[2]===180?180:((ee[2]+180)%360+360)%360-180,$e=Math.max(-90,Math.min(90,ee[3]));if(ee[2]-ee[0]>=360)ce=-180,Ne=180;else if(ce>Ne){var Ze=this.getClusters([ce,Ee,180,$e],le),yt=this.getClusters([-180,Ee,Ne,$e],le);return Ze.concat(yt)}for(var Pt=this.trees[this._limitZoom(le)],Ft=Pt.range(Ut(ce),Ct($e),Ut(Ne),Ct(Ee)),tr=[],Wt=0,Sr=Ft;Wtle&&(Or+=ri.numPoints||1)}if(Or>=yt){for(var Yr=tr.x*Zr,gr=tr.y*Zr,$r=Ze&&Zr>1?this._map(tr,!0):null,ga=(Ft<<5)+(le+1)+this.points.length,nr=0,Ti=Sr;nr1)for(var Pn=0,Co=Sr;Pn>5},We.prototype._getOriginZoom=function(ee){return(ee-this.points.length)%32},We.prototype._map=function(ee,le){if(ee.numPoints)return le?Ht({},ee.properties):ee.properties;var ce=this.points[ee.index].properties,Ee=this.options.map(ce);return le&&Ee===ce?Ht({},Ee):Ee};function qt(se,ee,le,ce,Ee){return{x:se,y:ee,zoom:1/0,id:le,parentId:-1,numPoints:ce,properties:Ee}}function Dt(se,ee){var le=se.geometry.coordinates,ce=le[0],Ee=le[1];return{x:Ut(ce),y:Ct(Ee),zoom:1/0,index:ee,parentId:-1}}function Tt(se){return{type:"Feature",id:se.id,properties:Rt(se),geometry:{type:"Point",coordinates:[At(se.x),Vt(se.y)]}}}function Rt(se){var ee=se.numPoints,le=ee>=1e4?Math.round(ee/1e3)+"k":ee>=1e3?Math.round(ee/100)/10+"k":ee;return Ht(Ht({},se.properties),{cluster:!0,cluster_id:se.id,point_count:ee,point_count_abbreviated:le})}function Ut(se){return se/360+.5}function Ct(se){var ee=Math.sin(se*Math.PI/180),le=.5-.25*Math.log((1+ee)/(1-ee))/Math.PI;return le<0?0:le>1?1:le}function At(se){return(se-.5)*360}function Vt(se){var ee=(180-se*360)*Math.PI/180;return 360*Math.atan(Math.exp(ee))/Math.PI-90}function Ht(se,ee){for(var le in ee)se[le]=ee[le];return se}function Be(se){return se.x}function st(se){return se.y}function sr(se,ee,le,ce){for(var Ee=ce,Ne=le-ee>>1,$e=le-ee,Ze,yt=se[ee],Pt=se[ee+1],Ft=se[le],tr=se[le+1],Wt=ee+3;WtEe)Ze=Wt,Ee=Sr;else if(Sr===Ee){var Zr=Math.abs(Wt-Ne);Zr<$e&&(Ze=Wt,$e=Zr)}}Ee>ce&&(Ze-ee>3&&sr(se,ee,Ze,ce),se[Ze+2]=Ee,le-Ze>3&&sr(se,Ze,le,ce))}function Dr(se,ee,le,ce,Ee,Ne){var $e=Ee-le,Ze=Ne-ce;if($e!==0||Ze!==0){var yt=((se-le)*$e+(ee-ce)*Ze)/($e*$e+Ze*Ze);yt>1?(le=Ee,ce=Ne):yt>0&&(le+=$e*yt,ce+=Ze*yt)}return $e=se-le,Ze=ee-ce,$e*$e+Ze*Ze}function Et(se,ee,le,ce){var Ee={id:typeof se=="undefined"?null:se,type:ee,geometry:le,tags:ce,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return ct(Ee),Ee}function ct(se){var ee=se.geometry,le=se.type;if(le==="Point"||le==="MultiPoint"||le==="LineString")pt(se,ee);else if(le==="Polygon"||le==="MultiLineString")for(var ce=0;ce0&&(ce?$e+=(Ee*Pt-yt*Ne)/2:$e+=Math.sqrt(Math.pow(yt-Ee,2)+Math.pow(Pt-Ne,2))),Ee=yt,Ne=Pt}var Ft=ee.length-3;ee[2]=1,sr(ee,0,Ft,le),ee[Ft+2]=1,ee.size=Math.abs($e),ee.start=0,ee.end=ee.size}function pr(se,ee,le,ce){for(var Ee=0;Ee1?1:le}function Lt(se,ee,le,ce,Ee,Ne,$e,Ze){if(le/=ee,ce/=ee,Ne>=le&&$e=ce)return null;for(var yt=[],Pt=0;Pt=le&&Zr=ce)continue;var Or=[];if(Wt==="Point"||Wt==="MultiPoint")Fe(tr,Or,le,ce,Ee);else if(Wt==="LineString")Ue(tr,Or,le,ce,Ee,!1,Ze.lineMetrics);else if(Wt==="MultiLineString")wt(tr,Or,le,ce,Ee,!1);else if(Wt==="Polygon")wt(tr,Or,le,ce,Ee,!0);else if(Wt==="MultiPolygon")for(var ca=0;ca=le&&$e<=ce&&(ee.push(se[Ne]),ee.push(se[Ne+1]),ee.push(se[Ne+2]))}}function Ue(se,ee,le,ce,Ee,Ne,$e){for(var Ze=xt(se),yt=Ee===0?Ar:Mr,Pt=se.start,Ft,tr,Wt=0;Wtle&&(tr=yt(Ze,Sr,Zr,ca,ua,le),$e&&(Ze.start=Pt+Ft*tr)):qa>ce?ri=le&&(tr=yt(Ze,Sr,Zr,ca,ua,le),Yr=!0),ri>ce&&qa<=ce&&(tr=yt(Ze,Sr,Zr,ca,ua,ce),Yr=!0),!Ne&&Yr&&($e&&(Ze.end=Pt+Ft*tr),ee.push(Ze),Ze=xt(se)),$e&&(Pt+=Ft)}var gr=se.length-3;Sr=se[gr],Zr=se[gr+1],Or=se[gr+2],qa=Ee===0?Sr:Zr,qa>=le&&qa<=ce&&mr(Ze,Sr,Zr,Or),gr=Ze.length-3,Ne&&gr>=3&&(Ze[gr]!==Ze[0]||Ze[gr+1]!==Ze[1])&&mr(Ze,Ze[0],Ze[1],Ze[2]),Ze.length&&ee.push(Ze)}function xt(se){var ee=[];return ee.size=se.size,ee.start=se.start,ee.end=se.end,ee}function wt(se,ee,le,ce,Ee,Ne){for(var $e=0;$e$e.maxX&&($e.maxX=Ft),tr>$e.maxY&&($e.maxY=tr)}return $e}function Fi(se,ee,le,ce){var Ee=ee.geometry,Ne=ee.type,$e=[];if(Ne==="Point"||Ne==="MultiPoint")for(var Ze=0;Ze0&&ee.size<(Ee?$e:ce)){le.numPoints+=ee.length/3;return}for(var Ze=[],yt=0;yt$e)&&(le.numSimplified++,Ze.push(ee[yt]),Ze.push(ee[yt+1])),le.numPoints++;Ee&&hn(Ze,Ne),se.push(Ze)}function hn(se,ee){for(var le=0,ce=0,Ee=se.length,Ne=Ee-2;ce0===ee)for(ce=0,Ee=se.length;ce24)throw new Error("maxZoom should be in the 0-24 range");if(ee.promoteId&&ee.generateId)throw new Error("promoteId and generateId cannot be used together.");var ce=Ot(se,ee);this.tiles={},this.tileCoords=[],le&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",ee.indexMaxZoom,ee.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),ce=Gr(ce,ee),ce.length&&this.splitTile(ce,0,0,0),le&&(ce.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}Ki.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Ki.prototype.splitTile=function(se,ee,le,ce,Ee,Ne,$e){for(var Ze=[se,ee,le,ce],yt=this.options,Pt=yt.debug;Ze.length;){ce=Ze.pop(),le=Ze.pop(),ee=Ze.pop(),se=Ze.pop();var Ft=1<1&&console.time("creation"),Wt=this.tiles[tr]=vi(se,ee,le,ce,yt),this.tileCoords.push({z:ee,x:le,y:ce}),Pt)){Pt>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",ee,le,ce,Wt.numFeatures,Wt.numPoints,Wt.numSimplified),console.timeEnd("creation"));var Sr="z"+ee;this.stats[Sr]=(this.stats[Sr]||0)+1,this.total++}if(Wt.source=se,Ee){if(ee===yt.maxZoom||ee===Ee)continue;var Zr=1<1&&console.time("clipping");var Or=.5*yt.buffer/yt.extent,ca=.5-Or,ua=.5+Or,qa=1+Or,ri,Yr,gr,$r,ga,nr;ri=Yr=gr=$r=null,ga=Lt(se,Ft,le-Or,le+ua,0,Wt.minX,Wt.maxX,yt),nr=Lt(se,Ft,le+ca,le+qa,0,Wt.minX,Wt.maxX,yt),se=null,ga&&(ri=Lt(ga,Ft,ce-Or,ce+ua,1,Wt.minY,Wt.maxY,yt),Yr=Lt(ga,Ft,ce+ca,ce+qa,1,Wt.minY,Wt.maxY,yt),ga=null),nr&&(gr=Lt(nr,Ft,ce-Or,ce+ua,1,Wt.minY,Wt.maxY,yt),$r=Lt(nr,Ft,ce+ca,ce+qa,1,Wt.minY,Wt.maxY,yt),nr=null),Pt>1&&console.timeEnd("clipping"),Ze.push(ri||[],ee+1,le*2,ce*2),Ze.push(Yr||[],ee+1,le*2,ce*2+1),Ze.push(gr||[],ee+1,le*2+1,ce*2),Ze.push($r||[],ee+1,le*2+1,ce*2+1)}}},Ki.prototype.getTile=function(se,ee,le){var ce=this.options,Ee=ce.extent,Ne=ce.debug;if(se<0||se>24)return null;var $e=1<1&&console.log("drilling down to z%d-%d-%d",se,ee,le);for(var yt=se,Pt=ee,Ft=le,tr;!tr&&yt>0;)yt--,Pt=Math.floor(Pt/2),Ft=Math.floor(Ft/2),tr=this.tiles[ir(yt,Pt,Ft)];return!tr||!tr.source?null:(Ne>1&&console.log("found parent tile z%d-%d-%d",yt,Pt,Ft),Ne>1&&console.time("drilling down"),this.splitTile(tr.source,yt,Pt,Ft,se,ee,le),Ne>1&&console.timeEnd("drilling down"),this.tiles[Ze]?ii(this.tiles[Ze],Ee):null)};function ir(se,ee,le){return((1<=0?0:g.button},l.remove=function(g){g.parentNode&&g.parentNode.removeChild(g)};function E(g,c,b){var d,w,L,R=a.browser.devicePixelRatio>1?"@2x":"",G=a.getJSON(c.transformRequest(c.normalizeSpriteURL(g,R,".json"),a.ResourceType.SpriteJSON),function(ue,be){G=null,L||(L=ue,d=be,re())}),K=a.getImage(c.transformRequest(c.normalizeSpriteURL(g,R,".png"),a.ResourceType.SpriteImage),function(ue,be){K=null,L||(L=ue,w=be,re())});function re(){if(L)b(L);else if(d&&w){var ue=a.browser.getImageData(w),be={};for(var xe in d){var Re=d[xe],Ge=Re.width,He=Re.height,Oe=Re.x,je=Re.y,ht=Re.sdf,zt=Re.pixelRatio,Nt=Re.stretchX,Qt=Re.stretchY,rr=Re.content,Yt=new a.RGBAImage({width:Ge,height:He});a.RGBAImage.copy(ue,Yt,{x:Oe,y:je},{x:0,y:0},{width:Ge,height:He}),be[xe]={data:Yt,pixelRatio:zt,sdf:ht,stretchX:Nt,stretchY:Qt,content:rr}}b(null,be)}}return{cancel:function(){G&&(G.cancel(),G=null),K&&(K.cancel(),K=null)}}}function D(g){var c=g.userImage;if(c&&c.render){var b=c.render();if(b)return g.data.replace(new Uint8Array(c.data.buffer)),!0}return!1}var z=1,B=function(g){function c(){g.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new a.RGBAImage({width:1,height:1}),this.dirty=!0}return g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c,c.prototype.isLoaded=function(){return this.loaded},c.prototype.setLoaded=function(d){if(this.loaded!==d&&(this.loaded=d,d)){for(var w=0,L=this.requestors;w=0?1.2:1))}V.prototype.draw=function(g){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(g,this.buffer,this.middle);for(var c=this.ctx.getImageData(0,0,this.size,this.size),b=new Uint8ClampedArray(this.size*this.size),d=0;d65535){ue(new Error("glyphs > 65535 not supported"));return}if(Re.ranges[He]){ue(null,{stack:be,id:xe,glyph:Ge});return}var Oe=Re.requests[He];Oe||(Oe=Re.requests[He]=[],te.loadGlyphRange(be,He,d.url,d.requestManager,function(je,ht){if(ht){for(var zt in ht)d._doesCharSupportLocalGlyph(+zt)||(Re.glyphs[+zt]=ht[+zt]);Re.ranges[He]=!0}for(var Nt=0,Qt=Oe;Nt1&&(re=c[++K]);var be=Math.abs(ue-re.left),xe=Math.abs(ue-re.right),Re=Math.min(be,xe),Ge=void 0,He=L/d*(w+1);if(re.isDash){var Oe=w-Math.abs(He);Ge=Math.sqrt(Re*Re+Oe*Oe)}else Ge=w-Math.sqrt(Re*Re+He*He);this.data[G+ue]=Math.max(0,Math.min(255,Ge+128))}},Se.prototype.addRegularDash=function(c){for(var b=c.length-1;b>=0;--b){var d=c[b],w=c[b+1];d.zeroLength?c.splice(b,1):w&&w.isDash===d.isDash&&(w.left=d.left,c.splice(b,1))}var L=c[0],R=c[c.length-1];L.isDash===R.isDash&&(L.left=R.left-this.width,R.right=L.right+this.width);for(var G=this.width*this.nextRow,K=0,re=c[K],ue=0;ue1&&(re=c[++K]);var be=Math.abs(ue-re.left),xe=Math.abs(ue-re.right),Re=Math.min(be,xe),Ge=re.isDash?Re:-Re;this.data[G+ue]=Math.max(0,Math.min(255,Ge+128))}},Se.prototype.addDash=function(c,b){var d=b?7:0,w=2*d+1;if(this.nextRow+w>this.height)return a.warnOnce("LineAtlas out of space"),null;for(var L=0,R=0;R=d.minX&&c.x=d.minY&&c.y0&&(ue[new a.OverscaledTileID(d.overscaledZ,G,w.z,R,w.y-1).key]={backfilled:!1},ue[new a.OverscaledTileID(d.overscaledZ,d.wrap,w.z,w.x,w.y-1).key]={backfilled:!1},ue[new a.OverscaledTileID(d.overscaledZ,re,w.z,K,w.y-1).key]={backfilled:!1}),w.y+10&&(L.resourceTiming=d._resourceTiming,d._resourceTiming=[]),d.fire(new a.Event("data",L))})},c.prototype.onAdd=function(d){this.map=d,this.load()},c.prototype.setData=function(d){var w=this;return this._data=d,this.fire(new a.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(L){if(L){w.fire(new a.ErrorEvent(L));return}var R={dataType:"source",sourceDataType:"content"};w._collectResourceTiming&&w._resourceTiming&&w._resourceTiming.length>0&&(R.resourceTiming=w._resourceTiming,w._resourceTiming=[]),w.fire(new a.Event("data",R))}),this},c.prototype.getClusterExpansionZoom=function(d,w){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:d,source:this.id},w),this},c.prototype.getClusterChildren=function(d,w){return this.actor.send("geojson.getClusterChildren",{clusterId:d,source:this.id},w),this},c.prototype.getClusterLeaves=function(d,w,L,R){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:d,limit:w,offset:L},R),this},c.prototype._updateWorkerData=function(d){var w=this;this._loaded=!1;var L=a.extend({},this.workerOptions),R=this._data;typeof R=="string"?(L.request=this.map._requestManager.transformRequest(a.browser.resolveURL(R),a.ResourceType.Source),L.request.collectResourceTiming=this._collectResourceTiming):L.data=JSON.stringify(R),this.actor.send(this.type+".loadData",L,function(G,K){w._removed||K&&K.abandoned||(w._loaded=!0,K&&K.resourceTiming&&K.resourceTiming[w.id]&&(w._resourceTiming=K.resourceTiming[w.id].slice(0)),w.actor.send(w.type+".coalesce",{source:L.source},null),d(G))})},c.prototype.loaded=function(){return this._loaded},c.prototype.loadTile=function(d,w){var L=this,R=d.actor?"reloadTile":"loadTile";d.actor=this.actor;var G={type:this.type,uid:d.uid,tileID:d.tileID,zoom:d.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:a.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};d.request=this.actor.send(R,G,function(K,re){return delete d.request,d.unloadVectorData(),d.aborted?w(null):K?w(K):(d.loadVectorData(re,L.map.painter,R==="reloadTile"),w(null))})},c.prototype.abortTile=function(d){d.request&&(d.request.cancel(),delete d.request),d.aborted=!0},c.prototype.unloadTile=function(d){d.unloadVectorData(),this.actor.send("removeTile",{uid:d.uid,type:this.type,source:this.id})},c.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},c.prototype.serialize=function(){return a.extend({},this._options,{type:this.type,data:this._data})},c.prototype.hasTransition=function(){return!1},c}(a.Evented),lt=a.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),at=function(g){function c(b,d,w,L){g.call(this),this.id=b,this.dispatcher=w,this.coordinates=d.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(L),this.options=d}return g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c,c.prototype.load=function(d,w){var L=this;this._loaded=!1,this.fire(new a.Event("dataloading",{dataType:"source"})),this.url=this.options.url,a.getImage(this.map._requestManager.transformRequest(this.url,a.ResourceType.Image),function(R,G){L._loaded=!0,R?L.fire(new a.ErrorEvent(R)):G&&(L.image=G,d&&(L.coordinates=d),w&&w(),L._finishLoading())})},c.prototype.loaded=function(){return this._loaded},c.prototype.updateImage=function(d){var w=this;return!this.image||!d.url?this:(this.options.url=d.url,this.load(d.coordinates,function(){w.texture=null}),this)},c.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new a.Event("data",{dataType:"source",sourceDataType:"metadata"})))},c.prototype.onAdd=function(d){this.map=d,this.load()},c.prototype.setCoordinates=function(d){var w=this;this.coordinates=d;var L=d.map(a.MercatorCoordinate.fromLngLat);this.tileID=gt(L),this.minzoom=this.maxzoom=this.tileID.z;var R=L.map(function(G){return w.tileID.getTilePoint(G)._round()});return this._boundsArray=new a.StructArrayLayout4i8,this._boundsArray.emplaceBack(R[0].x,R[0].y,0,0),this._boundsArray.emplaceBack(R[1].x,R[1].y,a.EXTENT,0),this._boundsArray.emplaceBack(R[3].x,R[3].y,0,a.EXTENT),this._boundsArray.emplaceBack(R[2].x,R[2].y,a.EXTENT,a.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new a.Event("data",{dataType:"source",sourceDataType:"content"})),this},c.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||!this.image)){var d=this.map.painter.context,w=d.gl;this.boundsBuffer||(this.boundsBuffer=d.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new a.Texture(d,this.image,w.RGBA),this.texture.bind(w.LINEAR,w.CLAMP_TO_EDGE));for(var L in this.tiles){var R=this.tiles[L];R.state!=="loaded"&&(R.state="loaded",R.texture=this.texture)}}},c.prototype.loadTile=function(d,w){this.tileID&&this.tileID.equals(d.tileID.canonical)?(this.tiles[String(d.tileID.wrap)]=d,d.buckets={},w(null)):(d.state="errored",w(null))},c.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},c.prototype.hasTransition=function(){return!1},c}(a.Evented);function gt(g){for(var c=1/0,b=1/0,d=-1/0,w=-1/0,L=0,R=g;Lw.end(0)?this.fire(new a.ErrorEvent(new a.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+w.start(0)+" and "+w.end(0)+"-second mark."))):this.video.currentTime=d}},c.prototype.getVideo=function(){return this.video},c.prototype.onAdd=function(d){this.map||(this.map=d,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},c.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||this.video.readyState<2)){var d=this.map.painter.context,w=d.gl;this.boundsBuffer||(this.boundsBuffer=d.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(w.LINEAR,w.CLAMP_TO_EDGE),w.texSubImage2D(w.TEXTURE_2D,0,0,0,w.RGBA,w.UNSIGNED_BYTE,this.video)):(this.texture=new a.Texture(d,this.video,w.RGBA),this.texture.bind(w.LINEAR,w.CLAMP_TO_EDGE));for(var L in this.tiles){var R=this.tiles[L];R.state!=="loaded"&&(R.state="loaded",R.texture=this.texture)}}},c.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},c.prototype.hasTransition=function(){return this.video&&!this.video.paused},c}(at),St=function(g){function c(b,d,w,L){g.call(this,b,d,w,L),d.coordinates?(!Array.isArray(d.coordinates)||d.coordinates.length!==4||d.coordinates.some(function(R){return!Array.isArray(R)||R.length!==2||R.some(function(G){return typeof G!="number"})}))&&this.fire(new a.ErrorEvent(new a.ValidationError("sources."+b,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new a.ErrorEvent(new a.ValidationError("sources."+b,null,'missing required property "coordinates"'))),d.animate&&typeof d.animate!="boolean"&&this.fire(new a.ErrorEvent(new a.ValidationError("sources."+b,null,'optional "animate" property must be a boolean value'))),d.canvas?typeof d.canvas!="string"&&!(d.canvas instanceof a.window.HTMLCanvasElement)&&this.fire(new a.ErrorEvent(new a.ValidationError("sources."+b,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new a.ErrorEvent(new a.ValidationError("sources."+b,null,'missing required property "canvas"'))),this.options=d,this.animate=d.animate!==void 0?d.animate:!0}return g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c,c.prototype.load=function(){if(this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof a.window.HTMLCanvasElement?this.options.canvas:a.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()){this.fire(new a.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero.")));return}this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading()},c.prototype.getCanvas=function(){return this.canvas},c.prototype.onAdd=function(d){this.map=d,this.load(),this.canvas&&this.animate&&this.play()},c.prototype.onRemove=function(){this.pause()},c.prototype.prepare=function(){var d=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,d=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,d=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var w=this.map.painter.context,L=w.gl;this.boundsBuffer||(this.boundsBuffer=w.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(d||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new a.Texture(w,this.canvas,L.RGBA,{premultiply:!0});for(var R in this.tiles){var G=this.tiles[R];G.state!=="loaded"&&(G.state="loaded",G.texture=this.texture)}}},c.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},c.prototype.hasTransition=function(){return this._playing},c.prototype._hasInvalidDimensions=function(){for(var d=0,w=[this.canvas.width,this.canvas.height];dthis.max){var G=this._getAndRemoveByKey(this.order[0]);G&&this.onRemove(G)}return this},Dt.prototype.has=function(c){return c.wrapped().key in this.data},Dt.prototype.getAndRemove=function(c){return this.has(c)?this._getAndRemoveByKey(c.wrapped().key):null},Dt.prototype._getAndRemoveByKey=function(c){var b=this.data[c].shift();return b.timeout&&clearTimeout(b.timeout),this.data[c].length===0&&delete this.data[c],this.order.splice(this.order.indexOf(c),1),b.value},Dt.prototype.getByKey=function(c){var b=this.data[c];return b?b[0].value:null},Dt.prototype.get=function(c){if(!this.has(c))return null;var b=this.data[c.wrapped().key][0];return b.value},Dt.prototype.remove=function(c,b){if(!this.has(c))return this;var d=c.wrapped().key,w=b===void 0?0:this.data[d].indexOf(b),L=this.data[d][w];return this.data[d].splice(w,1),L.timeout&&clearTimeout(L.timeout),this.data[d].length===0&&delete this.data[d],this.onRemove(L.value),this.order.splice(this.order.indexOf(d),1),this},Dt.prototype.setMaxSize=function(c){for(this.max=c;this.order.length>this.max;){var b=this._getAndRemoveByKey(this.order[0]);b&&this.onRemove(b)}return this},Dt.prototype.filter=function(c){var b=[];for(var d in this.data)for(var w=0,L=this.data[d];w1||(Math.abs(be)>1&&(Math.abs(be+Re)===1?be+=Re:Math.abs(be-Re)===1&&(be-=Re)),!(!ue.dem||!re.dem)&&(re.dem.backfillBorder(ue.dem,be,xe),re.neighboringTiles&&re.neighboringTiles[Ge]&&(re.neighboringTiles[Ge].backfilled=!0)))}},c.prototype.getTile=function(d){return this.getTileByID(d.key)},c.prototype.getTileByID=function(d){return this._tiles[d]},c.prototype._retainLoadedChildren=function(d,w,L,R){for(var G in this._tiles){var K=this._tiles[G];if(!(R[G]||!K.hasData()||K.tileID.overscaledZ<=w||K.tileID.overscaledZ>L)){for(var re=K.tileID;K&&K.tileID.overscaledZ>w+1;){var ue=K.tileID.scaledTo(K.tileID.overscaledZ-1);K=this._tiles[ue.key],K&&K.hasData()&&(re=ue)}for(var be=re;be.overscaledZ>w;)if(be=be.scaledTo(be.overscaledZ-1),d[be.key]){R[re.key]=re;break}}}},c.prototype.findLoadedParent=function(d,w){if(d.key in this._loadedParentTiles){var L=this._loadedParentTiles[d.key];return L&&L.tileID.overscaledZ>=w?L:null}for(var R=d.overscaledZ-1;R>=w;R--){var G=d.scaledTo(R),K=this._getLoadedTile(G);if(K)return K}},c.prototype._getLoadedTile=function(d){var w=this._tiles[d.key];if(w&&w.hasData())return w;var L=this._cache.getByKey(d.wrapped().key);return L},c.prototype.updateCacheSize=function(d){var w=Math.ceil(d.width/this._source.tileSize)+1,L=Math.ceil(d.height/this._source.tileSize)+1,R=w*L,G=5,K=Math.floor(R*G),re=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,K):K;this._cache.setMaxSize(re)},c.prototype.handleWrapJump=function(d){var w=this._prevLng===void 0?d:this._prevLng,L=d-w,R=L/360,G=Math.round(R);if(this._prevLng=d,G){var K={};for(var re in this._tiles){var ue=this._tiles[re];ue.tileID=ue.tileID.unwrapTo(ue.tileID.wrap+G),K[ue.tileID.key]=ue}this._tiles=K;for(var be in this._timers)clearTimeout(this._timers[be]),delete this._timers[be];for(var xe in this._tiles){var Re=this._tiles[xe];this._setTileReloadTimer(xe,Re)}}},c.prototype.update=function(d){var w=this;if(this.transform=d,!(!this._sourceLoaded||this._paused)){this.updateCacheSize(d),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={};var L;this.used?this._source.tileID?L=d.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(wr){return new a.OverscaledTileID(wr.canonical.z,wr.wrap,wr.canonical.z,wr.canonical.x,wr.canonical.y)}):(L=d.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(L=L.filter(function(wr){return w._source.hasTile(wr)}))):L=[];var R=d.coveringZoomLevel(this._source),G=Math.max(R-c.maxOverzooming,this._source.minzoom),K=Math.max(R+c.maxUnderzooming,this._source.minzoom),re=this._updateRetainedTiles(L,R);if(yt(this._source.type)){for(var ue={},be={},xe=Object.keys(re),Re=0,Ge=xe;Rethis._source.maxzoom){var ht=Oe.children(this._source.maxzoom)[0],zt=this.getTile(ht);if(zt&&zt.hasData()){L[ht.key]=ht;continue}}else{var Nt=Oe.children(this._source.maxzoom);if(L[Nt[0].key]&&L[Nt[1].key]&&L[Nt[2].key]&&L[Nt[3].key])continue}for(var Qt=je.wasRequested(),rr=Oe.overscaledZ-1;rr>=G;--rr){var Yt=Oe.scaledTo(rr);if(R[Yt.key]||(R[Yt.key]=!0,je=this.getTile(Yt),!je&&Qt&&(je=this._addTile(Yt)),je&&(L[Yt.key]=Yt,Qt=je.wasRequested(),je.hasData())))break}}}return L},c.prototype._updateLoadedParentTileCache=function(){this._loadedParentTiles={};for(var d in this._tiles){for(var w=[],L=void 0,R=this._tiles[d].tileID;R.overscaledZ>0;){if(R.key in this._loadedParentTiles){L=this._loadedParentTiles[R.key];break}w.push(R.key);var G=R.scaledTo(R.overscaledZ-1);if(L=this._getLoadedTile(G),L)break;R=G}for(var K=0,re=w;K0)&&(w.hasData()&&w.state!=="reloading"?this._cache.add(w.tileID,w,w.getExpiryTimeout()):(w.aborted=!0,this._abortTile(w),this._unloadTile(w))))},c.prototype.clearTiles=function(){this._shouldReloadOnResume=!1,this._paused=!1;for(var d in this._tiles)this._removeTile(d);this._cache.reset()},c.prototype.tilesIn=function(d,w,L){var R=this,G=[],K=this.transform;if(!K)return G;for(var re=L?K.getCameraQueryGeometry(d):d,ue=d.map(function(rr){return K.pointCoordinate(rr)}),be=re.map(function(rr){return K.pointCoordinate(rr)}),xe=this.getIds(),Re=1/0,Ge=1/0,He=-1/0,Oe=-1/0,je=0,ht=be;je=0&&Lr[1].y+wr>=0){var kr=ue.map(function(Ra){return ar.getTilePoint(Ra)}),Wr=be.map(function(Ra){return ar.getTilePoint(Ra)});G.push({tile:Yt,tileID:ar,queryGeometry:kr,cameraQueryGeometry:Wr,scale:vr})}}},Qt=0;Qt=a.browser.now())return!0}return!1},c.prototype.setFeatureState=function(d,w,L){d=d||"_geojsonTileLayer",this._state.updateState(d,w,L)},c.prototype.removeFeatureState=function(d,w,L){d=d||"_geojsonTileLayer",this._state.removeFeatureState(d,w,L)},c.prototype.getFeatureState=function(d,w){return d=d||"_geojsonTileLayer",this._state.getState(d,w)},c.prototype.setDependencies=function(d,w,L){var R=this._tiles[d];R&&R.setDependencies(w,L)},c.prototype.reloadTilesForDependencies=function(d,w){for(var L in this._tiles){var R=this._tiles[L];R.hasDependency(d,w)&&this._reloadTile(L,"reloading")}this._cache.filter(function(G){return!G.hasDependency(d,w)})},c}(a.Evented);$e.maxOverzooming=10,$e.maxUnderzooming=3;function Ze(g,c){var b=Math.abs(g.wrap*2)-+(g.wrap<0),d=Math.abs(c.wrap*2)-+(c.wrap<0);return g.overscaledZ-c.overscaledZ||d-b||c.canonical.y-g.canonical.y||c.canonical.x-g.canonical.x}function yt(g){return g==="raster"||g==="image"||g==="video"}function Pt(){return new a.window.Worker(Tn.workerUrl)}var Ft="mapboxgl_preloaded_worker_pool",tr=function(){this.active={}};tr.prototype.acquire=function(c){if(!this.workers)for(this.workers=[];this.workers.length0?(w-R)/G:0;return this.points[L].mult(1-K).add(this.points[b].mult(K))};var Ga=function(c,b,d){var w=this.boxCells=[],L=this.circleCells=[];this.xCellCount=Math.ceil(c/d),this.yCellCount=Math.ceil(b/d);for(var R=0;Rthis.width||w<0||b>this.height)return L?!1:[];var G=[];if(c<=0&&b<=0&&this.width<=d&&this.height<=w){if(L)return!0;for(var K=0;K0:G}},Ga.prototype._queryCircle=function(c,b,d,w,L){var R=c-d,G=c+d,K=b-d,re=b+d;if(G<0||R>this.width||re<0||K>this.height)return w?!1:[];var ue=[],be={hitTest:w,circle:{x:c,y:b,radius:d},seenUids:{box:{},circle:{}}};return this._forEachCell(R,K,G,re,this._queryCellCircle,ue,be,L),w?ue.length>0:ue},Ga.prototype.query=function(c,b,d,w,L){return this._query(c,b,d,w,!1,L)},Ga.prototype.hitTest=function(c,b,d,w,L){return this._query(c,b,d,w,!0,L)},Ga.prototype.hitTestCircle=function(c,b,d,w){return this._queryCircle(c,b,d,!0,w)},Ga.prototype._queryCell=function(c,b,d,w,L,R,G,K){var re=G.seenUids,ue=this.boxCells[L];if(ue!==null)for(var be=this.bboxes,xe=0,Re=ue;xe=be[He+0]&&w>=be[He+1]&&(!K||K(this.boxKeys[Ge]))){if(G.hitTest)return R.push(!0),!0;R.push({key:this.boxKeys[Ge],x1:be[He],y1:be[He+1],x2:be[He+2],y2:be[He+3]})}}}var Oe=this.circleCells[L];if(Oe!==null)for(var je=this.circles,ht=0,zt=Oe;htG*G+K*K},Ga.prototype._circleAndRectCollide=function(c,b,d,w,L,R,G){var K=(R-w)/2,re=Math.abs(c-(w+K));if(re>K+d)return!1;var ue=(G-L)/2,be=Math.abs(b-(L+ue));if(be>ue+d)return!1;if(re<=K||be<=ue)return!0;var xe=re-K,Re=be-ue;return xe*xe+Re*Re<=d*d};function Kn(g,c,b,d,w){var L=a.create();return c?(a.scale(L,L,[1/w,1/w,1]),b||a.rotateZ(L,L,d.angle)):a.multiply(L,d.labelPlaneMatrix,g),L}function hu(g,c,b,d,w){if(c){var L=a.clone(g);return a.scale(L,L,[w,w,1]),b||a.rotateZ(L,L,-d.angle),L}else return d.glCoordMatrix}function Ui(g,c){var b=[g.x,g.y,0,1];Zf(b,b,c);var d=b[3];return{point:new a.Point(b[0]/d,b[1]/d),signedDistanceFromCamera:d}}function dl(g,c){return .5+.5*(g/c)}function $d(g,c){var b=g[0]/g[3],d=g[1]/g[3],w=b>=-c[0]&&b<=c[0]&&d>=-c[1]&&d<=c[1];return w}function qc(g,c,b,d,w,L,R,G){var K=d?g.textSizeData:g.iconSizeData,re=a.evaluateSizeForZoom(K,b.transform.zoom),ue=[256/b.width*2+1,256/b.height*2+1],be=d?g.text.dynamicLayoutVertexArray:g.icon.dynamicLayoutVertexArray;be.clear();for(var xe=g.lineVertexArray,Re=d?g.text.placedSymbolArray:g.icon.placedSymbolArray,Ge=b.transform.width/b.transform.height,He=!1,Oe=0;OeL)return{useVertical:!0}}return(g===a.WritingMode.vertical?c.yb.x)?{needsFlipping:!0}:null}function vv(g,c,b,d,w,L,R,G,K,re,ue,be,xe,Re){var Ge=c/24,He=g.lineOffsetX*Ge,Oe=g.lineOffsetY*Ge,je;if(g.numGlyphs>1){var ht=g.glyphStartIndex+g.numGlyphs,zt=g.lineStartIndex,Nt=g.lineStartIndex+g.lineLength,Qt=Nc(Ge,G,He,Oe,b,ue,be,g,K,L,xe);if(!Qt)return{notEnoughRoom:!0};var rr=Ui(Qt.first.point,R).point,Yt=Ui(Qt.last.point,R).point;if(d&&!b){var ar=hv(g.writingMode,rr,Yt,Re);if(ar)return ar}je=[Qt.first];for(var vr=g.glyphStartIndex+1;vr0?Wr.point:vu(be,kr,wr,1,w),_a=hv(g.writingMode,wr,Ra,Re);if(_a)return _a}var Nr=pl(Ge*G.getoffsetX(g.glyphStartIndex),He,Oe,b,ue,be,g.segment,g.lineStartIndex,g.lineStartIndex+g.lineLength,K,L,xe);if(!Nr)return{notEnoughRoom:!0};je=[Nr]}for(var Ma=0,aa=je;Ma0?1:-1,Ge=0;d&&(Re*=-1,Ge=Math.PI),Re<0&&(Ge+=Math.PI);for(var He=Re>0?G+R:G+R+1,Oe=w,je=w,ht=0,zt=0,Nt=Math.abs(xe),Qt=[];ht+zt<=Nt;){if(He+=Re,He=K)return null;if(je=Oe,Qt.push(Oe),Oe=be[He],Oe===void 0){var rr=new a.Point(re.getx(He),re.gety(He)),Yt=Ui(rr,ue);if(Yt.signedDistanceFromCamera>0)Oe=be[He]=Yt.point;else{var ar=He-Re,vr=ht===0?L:new a.Point(re.getx(ar),re.gety(ar));Oe=vu(vr,rr,je,Nt-ht+1,ue)}}ht+=zt,zt=je.dist(Oe)}var wr=(Nt-ht)/zt,Lr=Oe.sub(je),kr=Lr.mult(wr)._add(je);kr._add(Lr._unit()._perp()._mult(b*Re));var Wr=Ge+Math.atan2(Oe.y-je.y,Oe.x-je.x);return Qt.push(kr),{point:kr,angle:Wr,path:Qt}}var ep=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Ju(g,c){for(var b=0;b=1;Za--)aa.push(Nr.path[Za]);for(var Ua=1;Ua0){for(var ia=aa[0].clone(),Ba=aa[0].clone(),tn=1;tn=Wr.x&&Ba.x<=Ra.x&&ia.y>=Wr.y&&Ba.y<=Ra.y?mi=[aa]:Ba.xRa.x||Ba.yRa.y?mi=[]:mi=a.clipLine([aa],Wr.x,Wr.y,Ra.x,Ra.y)}for(var Fn=0,Ds=mi;Fn=this.screenRightBoundary||w<$i||b>this.screenBottomBoundary},Ho.prototype.isInsideGrid=function(c,b,d,w){return d>=0&&c=0&&b0){var Nt;return this.prevPlacement&&this.prevPlacement.variableOffsets[xe.crossTileID]&&this.prevPlacement.placements[xe.crossTileID]&&this.prevPlacement.placements[xe.crossTileID].text&&(Nt=this.prevPlacement.variableOffsets[xe.crossTileID].anchor),this.variableOffsets[xe.crossTileID]={textOffset:Oe,width:d,height:w,anchor:c,textBoxScale:L,prevAnchor:Nt},this.markUsedJustification(Re,c,xe,Ge),Re.allowVerticalPlacement&&(this.markUsedOrientation(Re,Ge,xe),this.placedOrientations[xe.crossTileID]=Ge),{shift:je,placedGlyphBoxes:ht}}},oo.prototype.placeLayerBucketPart=function(c,b,d){var w=this,L=c.parameters,R=L.bucket,G=L.layout,K=L.posMatrix,re=L.textLabelPlaneMatrix,ue=L.labelToScreenMatrix,be=L.textPixelRatio,xe=L.holdingForFade,Re=L.collisionBoxArray,Ge=L.partiallyEvaluatedTextSize,He=L.collisionGroup,Oe=G.get("text-optional"),je=G.get("icon-optional"),ht=G.get("text-allow-overlap"),zt=G.get("icon-allow-overlap"),Nt=G.get("text-rotation-alignment")==="map",Qt=G.get("text-pitch-alignment")==="map",rr=G.get("icon-text-fit")!=="none",Yt=G.get("symbol-z-order")==="viewport-y",ar=ht&&(zt||!R.hasIconData()||je),vr=zt&&(ht||!R.hasTextData()||Oe);!R.collisionArrays&&Re&&R.deserializeCollisionBoxes(Re);var wr=function(Nr,Ma){if(!b[Nr.crossTileID]){if(xe){w.placements[Nr.crossTileID]=new du(!1,!1,!1);return}var aa=!1,Za=!1,Ua=!0,Mi=null,La={box:null,offscreen:null},mi={box:null,offscreen:null},ia=null,Ba=null,tn=null,Fn=0,Ds=0,Ps=0;Ma.textFeatureIndex?Fn=Ma.textFeatureIndex:Nr.useRuntimeCollisionCircles&&(Fn=Nr.featureIndex),Ma.verticalTextFeatureIndex&&(Ds=Ma.verticalTextFeatureIndex);var $s=Ma.textBox;if($s){var Bl=function(un){var Qo=a.WritingMode.horizontal;if(R.allowVerticalPlacement&&!un&&w.prevPlacement){var $o=w.prevPlacement.placedOrientations[Nr.crossTileID];$o&&(w.placedOrientations[Nr.crossTileID]=$o,Qo=$o,w.markUsedOrientation(R,Qo,Nr))}return Qo},oc=function(un,Qo){if(R.allowVerticalPlacement&&Nr.numVerticalGlyphVertices>0&&Ma.verticalTextBox)for(var $o=0,Hp=R.writingModes;$o0&&(Ko=Ko.filter(function(un){return un!==Po.anchor}),Ko.unshift(Po.anchor))}var el=function(un,Qo,$o){for(var Hp=un.x2-un.x1,uy=un.y2-un.y1,c3=Nr.textBoxScale,h3=rr&&!zt?Qo:null,Xv={box:[],offscreen:!1},v3=ht?Ko.length*2:Ko.length,Gp=0;Gp=Ko.length,fy=w.attemptAnchorPlacement(d3,un,Hp,uy,c3,Nt,Qt,be,K,He,p3,Nr,R,$o,h3);if(fy&&(Xv=fy.placedGlyphBoxes,Xv&&Xv.box&&Xv.box.length)){aa=!0,Mi=fy.shift;break}}return Xv},ku=function(){return el($s,Ma.iconBox,a.WritingMode.horizontal)},tl=function(){var un=Ma.verticalTextBox,Qo=La&&La.box&&La.box.length;return R.allowVerticalPlacement&&!Qo&&Nr.numVerticalGlyphVertices>0&&un?el(un,Ma.verticalIconBox,a.WritingMode.vertical):{box:null,offscreen:null}};oc(ku,tl),La&&(aa=La.box,Ua=La.offscreen);var Np=Bl(La&&La.box);if(!aa&&w.prevPlacement){var ch=w.prevPlacement.variableOffsets[Nr.crossTileID];ch&&(w.variableOffsets[Nr.crossTileID]=ch,w.markUsedJustification(R,ch.anchor,Nr,Np))}}else{var Ol=function(un,Qo){var $o=w.collisionIndex.placeCollisionBox(un,ht,be,K,He.predicate);return $o&&$o.box&&$o.box.length&&(w.markUsedOrientation(R,Qo,Nr),w.placedOrientations[Nr.crossTileID]=Qo),$o},Do=function(){return Ol($s,a.WritingMode.horizontal)},Ul=function(){var un=Ma.verticalTextBox;return R.allowVerticalPlacement&&Nr.numVerticalGlyphVertices>0&&un?Ol(un,a.WritingMode.vertical):{box:null,offscreen:null}};oc(Do,Ul),Bl(La&&La.box&&La.box.length)}}if(ia=La,aa=ia&&ia.box&&ia.box.length>0,Ua=ia&&ia.offscreen,Nr.useRuntimeCollisionCircles){var Hn=R.text.placedSymbolArray.get(Nr.centerJustifiedTextSymbolIndex),Bp=a.evaluateSizeForFeature(R.textSizeData,Ge,Hn),Wv=G.get("text-padding"),xo=Nr.collisionCircleDiameter;Ba=w.collisionIndex.placeCollisionCircles(ht,Hn,R.lineVertexArray,R.glyphOffsetArray,Bp,K,re,ue,d,Qt,He.predicate,xo,Wv),aa=ht||Ba.circles.length>0&&!Ba.collisionDetected,Ua=Ua&&Ba.offscreen}if(Ma.iconFeatureIndex&&(Ps=Ma.iconFeatureIndex),Ma.iconBox){var hh=function(un){var Qo=rr&&Mi?mv(un,Mi.x,Mi.y,Nt,Qt,w.transform.angle):un;return w.collisionIndex.placeCollisionBox(Qo,zt,be,K,He.predicate)};mi&&mi.box&&mi.box.length&&Ma.verticalIconBox?(tn=hh(Ma.verticalIconBox),Za=tn.box.length>0):(tn=hh(Ma.iconBox),Za=tn.box.length>0),Ua=Ua&&tn.offscreen}var Op=Oe||Nr.numHorizontalGlyphVertices===0&&Nr.numVerticalGlyphVertices===0,Up=je||Nr.numIconVertices===0;if(!Op&&!Up?Za=aa=Za&&aa:Up?Op||(Za=Za&&aa):aa=Za&&aa,aa&&ia&&ia.box&&(mi&&mi.box&&Ds?w.collisionIndex.insertCollisionBox(ia.box,G.get("text-ignore-placement"),R.bucketInstanceId,Ds,He.ID):w.collisionIndex.insertCollisionBox(ia.box,G.get("text-ignore-placement"),R.bucketInstanceId,Fn,He.ID)),Za&&tn&&w.collisionIndex.insertCollisionBox(tn.box,G.get("icon-ignore-placement"),R.bucketInstanceId,Ps,He.ID),Ba&&(aa&&w.collisionIndex.insertCollisionCircles(Ba.circles,G.get("text-ignore-placement"),R.bucketInstanceId,Fn,He.ID),d)){var Vp=R.bucketInstanceId,vh=w.collisionCircleArrays[Vp];vh===void 0&&(vh=w.collisionCircleArrays[Vp]=new tp);for(var dh=0;dh=0;--kr){var Wr=Lr[kr];wr(R.symbolInstances.get(Wr),R.collisionArrays[Wr])}else for(var Ra=c.symbolInstanceStart;Ra=0&&(R>=0&&ue!==R?c.text.placedSymbolArray.get(ue).crossTileID=0:c.text.placedSymbolArray.get(ue).crossTileID=d.crossTileID)}},oo.prototype.markUsedOrientation=function(c,b,d){for(var w=b===a.WritingMode.horizontal||b===a.WritingMode.horizontalOnly?b:0,L=b===a.WritingMode.vertical?b:0,R=[d.leftJustifiedTextSymbolIndex,d.centerJustifiedTextSymbolIndex,d.rightJustifiedTextSymbolIndex],G=0,K=R;G0||Qt>0,wr=zt.numIconVertices>0,Lr=w.placedOrientations[zt.crossTileID],kr=Lr===a.WritingMode.vertical,Wr=Lr===a.WritingMode.horizontal||Lr===a.WritingMode.horizontalOnly;if(vr){var Ra=$u(ar.text),_a=kr?Er:Ra;Ge(c.text,Nt,_a);var Nr=Wr?Er:Ra;Ge(c.text,Qt,Nr);var Ma=ar.text.isHidden();[zt.rightJustifiedTextSymbolIndex,zt.centerJustifiedTextSymbolIndex,zt.leftJustifiedTextSymbolIndex].forEach(function(Ps){Ps>=0&&(c.text.placedSymbolArray.get(Ps).hidden=Ma||kr?1:0)}),zt.verticalPlacedTextSymbolIndex>=0&&(c.text.placedSymbolArray.get(zt.verticalPlacedTextSymbolIndex).hidden=Ma||Wr?1:0);var aa=w.variableOffsets[zt.crossTileID];aa&&w.markUsedJustification(c,aa.anchor,zt,Lr);var Za=w.placedOrientations[zt.crossTileID];Za&&(w.markUsedJustification(c,"left",zt,Za),w.markUsedOrientation(c,Za,zt))}if(wr){var Ua=$u(ar.icon),Mi=!(xe&&zt.verticalPlacedIconSymbolIndex&&kr);if(zt.placedIconSymbolIndex>=0){var La=Mi?Ua:Er;Ge(c.icon,zt.numIconVertices,La),c.icon.placedSymbolArray.get(zt.placedIconSymbolIndex).hidden=ar.icon.isHidden()}if(zt.verticalPlacedIconSymbolIndex>=0){var mi=Mi?Er:Ua;Ge(c.icon,zt.numVerticalIconVertices,mi),c.icon.placedSymbolArray.get(zt.verticalPlacedIconSymbolIndex).hidden=ar.icon.isHidden()}}if(c.hasIconCollisionBoxData()||c.hasTextCollisionBoxData()){var ia=c.collisionArrays[ht];if(ia){var Ba=new a.Point(0,0);if(ia.textBox||ia.verticalTextBox){var tn=!0;if(re){var Fn=w.variableOffsets[rr];Fn?(Ba=pv(Fn.anchor,Fn.width,Fn.height,Fn.textOffset,Fn.textBoxScale),ue&&Ba._rotate(be?w.transform.angle:-w.transform.angle)):tn=!1}ia.textBox&&Xt(c.textCollisionBox.collisionVertexArray,ar.text.placed,!tn||kr,Ba.x,Ba.y),ia.verticalTextBox&&Xt(c.textCollisionBox.collisionVertexArray,ar.text.placed,!tn||Wr,Ba.x,Ba.y)}var Ds=!!(!Wr&&ia.verticalIconBox);ia.iconBox&&Xt(c.iconCollisionBox.collisionVertexArray,ar.icon.placed,Ds,xe?Ba.x:0,xe?Ba.y:0),ia.verticalIconBox&&Xt(c.iconCollisionBox.collisionVertexArray,ar.icon.placed,!Ds,xe?Ba.x:0,xe?Ba.y:0)}}},Oe=0;Oec},oo.prototype.setStale=function(){this.stale=!0};function Xt(g,c,b,d,w){g.emplaceBack(c?1:0,b?1:0,d||0,w||0),g.emplaceBack(c?1:0,b?1:0,d||0,w||0),g.emplaceBack(c?1:0,b?1:0,d||0,w||0),g.emplaceBack(c?1:0,b?1:0,d||0,w||0)}var Ur=Math.pow(2,25),rp=Math.pow(2,24),pu=Math.pow(2,17),on=Math.pow(2,16),yl=Math.pow(2,9),bs=Math.pow(2,8),Qu=Math.pow(2,1);function $u(g){if(g.opacity===0&&!g.placed)return 0;if(g.opacity===1&&g.placed)return 4294967295;var c=g.placed?1:0,b=Math.floor(g.opacity*127);return b*Ur+c*rp+b*pu+c*on+b*yl+c*bs+b*Qu+c}var Er=0,ba=function(c){this._sortAcrossTiles=c.layout.get("symbol-z-order")!=="viewport-y"&&c.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};ba.prototype.continuePlacement=function(c,b,d,w,L){for(var R=this._bucketParts;this._currentTileIndex2};this._currentPlacementIndex>=0;){var G=c[this._currentPlacementIndex],K=b[G],re=this.placement.collisionIndex.transform.zoom;if(K.type==="symbol"&&(!K.minzoom||K.minzoom<=re)&&(!K.maxzoom||K.maxzoom>re)){this._inProgressLayer||(this._inProgressLayer=new ba(K));var ue=this._inProgressLayer.continuePlacement(d[K.source],this.placement,this._showCollisionBoxes,K,R);if(ue)return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},wa.prototype.commit=function(c){return this.placement.commit(c),this.placement};var ws=512/a.EXTENT/2,gl=function(c,b,d){this.tileID=c,this.indexedSymbolInstances={},this.bucketInstanceId=d;for(var w=0;wc.overscaledZ)for(var re in K){var ue=K[re];ue.tileID.isChildOf(c)&&ue.findMatches(b.symbolInstances,c,R)}else{var be=c.scaledTo(Number(G)),xe=K[be.key];xe&&xe.findMatches(b.symbolInstances,c,R)}}for(var Re=0;Re0)throw new Error("Unimplemented: "+R.map(function(G){return G.command}).join(", ")+".");return L.forEach(function(G){G.command!=="setTransition"&&w[G.command].apply(w,G.args)}),this.stylesheet=d,!0},c.prototype.addImage=function(d,w){if(this.getImage(d))return this.fire(new a.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(d,w),this._afterImageUpdated(d)},c.prototype.updateImage=function(d,w){this.imageManager.updateImage(d,w)},c.prototype.getImage=function(d){return this.imageManager.getImage(d)},c.prototype.removeImage=function(d){if(!this.getImage(d))return this.fire(new a.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(d),this._afterImageUpdated(d)},c.prototype._afterImageUpdated=function(d){this._availableImages=this.imageManager.listImages(),this._changedImages[d]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new a.Event("data",{dataType:"style"}))},c.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},c.prototype.addSource=function(d,w,L){var R=this;if(L===void 0&&(L={}),this._checkLoaded(),this.sourceCaches[d]!==void 0)throw new Error("There is already a source with this ID");if(!w.type)throw new Error("The type property must be defined, but only the following properties were given: "+Object.keys(w).join(", ")+".");var G=["vector","raster","geojson","video","image"],K=G.indexOf(w.type)>=0;if(!(K&&this._validate(a.validateStyle.source,"sources."+d,w,null,L))){this.map&&this.map._collectResourceTiming&&(w.collectResourceTiming=!0);var re=this.sourceCaches[d]=new $e(d,w,this.dispatcher);re.style=this,re.setEventedParent(this,function(){return{isSourceLoaded:R.loaded(),source:re.serialize(),sourceId:d}}),re.onAdd(this.map),this._changed=!0}},c.prototype.removeSource=function(d){if(this._checkLoaded(),this.sourceCaches[d]===void 0)throw new Error("There is no source with this ID");for(var w in this._layers)if(this._layers[w].source===d)return this.fire(new a.ErrorEvent(new Error('Source "'+d+'" cannot be removed while layer "'+w+'" is using it.')));var L=this.sourceCaches[d];delete this.sourceCaches[d],delete this._updatedSources[d],L.fire(new a.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:d})),L.setEventedParent(null),L.clearTiles(),L.onRemove&&L.onRemove(this.map),this._changed=!0},c.prototype.setGeoJSONSourceData=function(d,w){this._checkLoaded();var L=this.sourceCaches[d].getSource();L.setData(w),this._changed=!0},c.prototype.getSource=function(d){return this.sourceCaches[d]&&this.sourceCaches[d].getSource()},c.prototype.addLayer=function(d,w,L){L===void 0&&(L={}),this._checkLoaded();var R=d.id;if(this.getLayer(R)){this.fire(new a.ErrorEvent(new Error('Layer with id "'+R+'" already exists on this map')));return}var G;if(d.type==="custom"){if(fs(this,a.validateCustomStyleLayer(d)))return;G=a.createStyleLayer(d)}else{if(typeof d.source=="object"&&(this.addSource(R,d.source),d=a.clone$1(d),d=a.extend(d,{source:R})),this._validate(a.validateStyle.layer,"layers."+R,d,{arrayIndex:-1},L))return;G=a.createStyleLayer(d),this._validateLayer(G),G.setEventedParent(this,{layer:{id:R}}),this._serializedLayers[G.id]=G.serialize()}var K=w?this._order.indexOf(w):this._order.length;if(w&&K===-1){this.fire(new a.ErrorEvent(new Error('Layer with id "'+w+'" does not exist on this map.')));return}if(this._order.splice(K,0,R),this._layerOrderChanged=!0,this._layers[R]=G,this._removedLayers[R]&&G.source&&G.type!=="custom"){var re=this._removedLayers[R];delete this._removedLayers[R],re.type!==G.type?this._updatedSources[G.source]="clear":(this._updatedSources[G.source]="reload",this.sourceCaches[G.source].pause())}this._updateLayer(G),G.onAdd&&G.onAdd(this.map)},c.prototype.moveLayer=function(d,w){this._checkLoaded(),this._changed=!0;var L=this._layers[d];if(!L){this.fire(new a.ErrorEvent(new Error("The layer '"+d+"' does not exist in the map's style and cannot be moved.")));return}if(d!==w){var R=this._order.indexOf(d);this._order.splice(R,1);var G=w?this._order.indexOf(w):this._order.length;if(w&&G===-1){this.fire(new a.ErrorEvent(new Error('Layer with id "'+w+'" does not exist on this map.')));return}this._order.splice(G,0,d),this._layerOrderChanged=!0}},c.prototype.removeLayer=function(d){this._checkLoaded();var w=this._layers[d];if(!w){this.fire(new a.ErrorEvent(new Error("The layer '"+d+"' does not exist in the map's style and cannot be removed.")));return}w.setEventedParent(null);var L=this._order.indexOf(d);this._order.splice(L,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[d]=w,delete this._layers[d],delete this._serializedLayers[d],delete this._updatedLayers[d],delete this._updatedPaintProps[d],w.onRemove&&w.onRemove(this.map)},c.prototype.getLayer=function(d){return this._layers[d]},c.prototype.hasLayer=function(d){return d in this._layers},c.prototype.setLayerZoomRange=function(d,w,L){this._checkLoaded();var R=this.getLayer(d);if(!R){this.fire(new a.ErrorEvent(new Error("The layer '"+d+"' does not exist in the map's style and cannot have zoom extent.")));return}R.minzoom===w&&R.maxzoom===L||(w!=null&&(R.minzoom=w),L!=null&&(R.maxzoom=L),this._updateLayer(R))},c.prototype.setFilter=function(d,w,L){L===void 0&&(L={}),this._checkLoaded();var R=this.getLayer(d);if(!R){this.fire(new a.ErrorEvent(new Error("The layer '"+d+"' does not exist in the map's style and cannot be filtered.")));return}if(!a.deepEqual(R.filter,w)){if(w==null){R.filter=void 0,this._updateLayer(R);return}this._validate(a.validateStyle.filter,"layers."+R.id+".filter",w,null,L)||(R.filter=a.clone$1(w),this._updateLayer(R))}},c.prototype.getFilter=function(d){return a.clone$1(this.getLayer(d).filter)},c.prototype.setLayoutProperty=function(d,w,L,R){R===void 0&&(R={}),this._checkLoaded();var G=this.getLayer(d);if(!G){this.fire(new a.ErrorEvent(new Error("The layer '"+d+"' does not exist in the map's style and cannot be styled.")));return}a.deepEqual(G.getLayoutProperty(w),L)||(G.setLayoutProperty(w,L,R),this._updateLayer(G))},c.prototype.getLayoutProperty=function(d,w){var L=this.getLayer(d);if(!L){this.fire(new a.ErrorEvent(new Error("The layer '"+d+"' does not exist in the map's style.")));return}return L.getLayoutProperty(w)},c.prototype.setPaintProperty=function(d,w,L,R){R===void 0&&(R={}),this._checkLoaded();var G=this.getLayer(d);if(!G){this.fire(new a.ErrorEvent(new Error("The layer '"+d+"' does not exist in the map's style and cannot be styled.")));return}if(!a.deepEqual(G.getPaintProperty(w),L)){var K=G.setPaintProperty(w,L,R);K&&this._updateLayer(G),this._changed=!0,this._updatedPaintProps[d]=!0}},c.prototype.getPaintProperty=function(d,w){return this.getLayer(d).getPaintProperty(w)},c.prototype.setFeatureState=function(d,w){this._checkLoaded();var L=d.source,R=d.sourceLayer,G=this.sourceCaches[L];if(G===void 0){this.fire(new a.ErrorEvent(new Error("The source '"+L+"' does not exist in the map's style.")));return}var K=G.getSource().type;if(K==="geojson"&&R){this.fire(new a.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));return}if(K==="vector"&&!R){this.fire(new a.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}d.id===void 0&&this.fire(new a.ErrorEvent(new Error("The feature id parameter must be provided."))),G.setFeatureState(R,d.id,w)},c.prototype.removeFeatureState=function(d,w){this._checkLoaded();var L=d.source,R=this.sourceCaches[L];if(R===void 0){this.fire(new a.ErrorEvent(new Error("The source '"+L+"' does not exist in the map's style.")));return}var G=R.getSource().type,K=G==="vector"?d.sourceLayer:void 0;if(G==="vector"&&!K){this.fire(new a.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}if(w&&typeof d.id!="string"&&typeof d.id!="number"){this.fire(new a.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));return}R.removeFeatureState(K,d.id,w)},c.prototype.getFeatureState=function(d){this._checkLoaded();var w=d.source,L=d.sourceLayer,R=this.sourceCaches[w];if(R===void 0){this.fire(new a.ErrorEvent(new Error("The source '"+w+"' does not exist in the map's style.")));return}var G=R.getSource().type;if(G==="vector"&&!L){this.fire(new a.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}return d.id===void 0&&this.fire(new a.ErrorEvent(new Error("The feature id parameter must be provided."))),R.getFeatureState(L,d.id)},c.prototype.getTransition=function(){return a.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},c.prototype.serialize=function(){return a.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:a.mapObject(this.sourceCaches,function(d){return d.serialize()}),layers:this._serializeLayers(this._order)},function(d){return d!==void 0})},c.prototype._updateLayer=function(d){this._updatedLayers[d.id]=!0,d.source&&!this._updatedSources[d.source]&&this.sourceCaches[d.source].getSource().type!=="raster"&&(this._updatedSources[d.source]="reload",this.sourceCaches[d.source].pause()),this._changed=!0},c.prototype._flattenAndSortRenderedFeatures=function(d){for(var w=this,L=function(Wr){return w._layers[Wr].type==="fill-extrusion"},R={},G=[],K=this._order.length-1;K>=0;K--){var re=this._order[K];if(L(re)){R[re]=K;for(var ue=0,be=d;ue=0;ht--){var zt=this._order[ht];if(L(zt))for(var Nt=G.length-1;Nt>=0;Nt--){var Qt=G[Nt].feature;if(R[Qt.layer.id] .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":`display:block; width: 21px; height: 21px; background-image: url('data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E')`}}});var l1=pe((_be,WV)=>{"use strict";var GV=Bt(),ZV=Oa().defaultLine,Xve=Eb().attributes,jve=qo(),Jve=kc().textposition,Kve=il().overrideAll,Qve=Ii().templatedArray,oA=zc(),YV=jve({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});YV.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var $ve=WV.exports=Kve({_arrayAttrRegexps:[GV.counterRegex("mapbox",".layers",!0)],domain:Xve({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:oA.styleValuesMapbox.concat(oA.styleValuesNonMapbox),dflt:oA.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:Qve("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:ZV},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:ZV}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:YV,textposition:GV.extendFlat({},Jve,{arrayOk:!1})}})},"plot","from-root");$ve.uirevision={valType:"any",editType:"none"}});var Rb=pe((xbe,KV)=>{"use strict";var{hovertemplateAttrs:ede,texttemplateAttrs:tde,templatefallbackAttrs:XV}=Mf(),rde=_x(),u1=nA(),bm=kc(),jV=l1(),ade=ys(),ide=xc(),Gd=mn().extendFlat,nde=il().overrideAll,ode=l1(),JV=u1.line,wm=u1.marker;KV.exports=nde({lon:u1.lon,lat:u1.lat,cluster:{enabled:{valType:"boolean"},maxzoom:Gd({},ode.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:Gd({},wm.opacity,{dflt:1})},mode:Gd({},bm.mode,{dflt:"markers"}),text:Gd({},bm.text,{}),texttemplate:tde({editType:"plot"},{keys:["lat","lon","text"]}),texttemplatefallback:XV({editType:"plot"}),hovertext:Gd({},bm.hovertext,{}),line:{color:JV.color,width:JV.width},connectgaps:bm.connectgaps,marker:Gd({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:wm.opacity,size:wm.size,sizeref:wm.sizeref,sizemin:wm.sizemin,sizemode:wm.sizemode},ide("marker")),fill:u1.fill,fillcolor:rde(),textfont:jV.layers.symbol.textfont,textposition:jV.layers.symbol.textposition,below:{valType:"string"},selected:{marker:bm.selected.marker},unselected:{marker:bm.unselected.marker},hoverinfo:Gd({},ade.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:ede(),hovertemplatefallback:XV()},"calc","nested")});var sA=pe((bbe,QV)=>{"use strict";var sde=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];QV.exports={isSupportedFont:function(e){return sde.indexOf(e)!==-1}}});var tH=pe((wbe,eH)=>{"use strict";var f1=Bt(),lA=rs(),lde=I6(),ude=R6(),fde=F6(),cde=q6(),$V=Rb(),hde=sA().isSupportedFont;eH.exports=function(t,r,i,a){function s(z,B){return f1.coerce(t,r,$V,z,B)}function l(z,B){return f1.coerce2(t,r,$V,z,B)}var f=vde(t,r,s);if(!f){r.visible=!1;return}if(s("text"),s("texttemplate"),s("texttemplatefallback"),s("hovertext"),s("hovertemplate"),s("hovertemplatefallback"),s("mode"),s("below"),lA.hasMarkers(r)){lde(t,r,i,a,s,{noLine:!0,noAngle:!0}),s("marker.allowoverlap"),s("marker.angle");var h=r.marker;h.symbol!=="circle"&&(f1.isArrayOrTypedArray(h.size)&&(h.size=h.size[0]),f1.isArrayOrTypedArray(h.color)&&(h.color=h.color[0]))}lA.hasLines(r)&&(ude(t,r,i,a,s,{noDash:!0}),s("connectgaps"));var v=l("cluster.maxzoom"),m=l("cluster.step"),_=l("cluster.color",r.marker&&r.marker.color||i),T=l("cluster.size"),S=l("cluster.opacity"),C=v!==!1||m!==!1||_!==!1||T!==!1||S!==!1,E=s("cluster.enabled",C);if(E||lA.hasText(r)){var L=a.font.family;fde(t,r,a,s,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:hde(L)?L:"Open Sans Regular",weight:a.font.weight,style:a.font.style,size:a.font.size,color:a.font.color}})}s("fill"),r.fill!=="none"&&cde(t,r,i,s),f1.coerceSelectionMarkerOpacity(r,s)};function vde(e,t,r){var i=r("lon")||[],a=r("lat")||[],s=Math.min(i.length,a.length);return t._length=s,s}});var uA=pe((Tbe,aH)=>{"use strict";var rH=Xi();aH.exports=function(t,r,i){var a={},s=i[r.subplot]._subplot,l=s.mockAxis,f=t.lonlat;return a.lonLabel=rH.tickText(l,l.c2l(f[0]),!0).text,a.latLabel=rH.tickText(l,l.c2l(f[1]),!0).text,a}});var lH=pe((Abe,sH)=>{"use strict";var fA=Da(),iH=Zi().BADNUM,dde=O6(),pde=Hg(),mde=Xx(),yde=Bt().isArrayOrTypedArray,nH=Bt()._;function oH(e){return e&&typeof e=="string"}sH.exports=function(t,r){var i=yde(r.locations),a=i?r.locations.length:r._length,s=new Array(a),l;r.geojson?l=function(T){return oH(T)||fA(T)}:l=oH;for(var f=0;f{"use strict";var gde=Zi().BADNUM;c1.calcTraceToLineCoords=function(e){for(var t=e[0].trace,r=t.connectgaps,i=[],a=[],s=0;s0&&(i.push(a),a=[])}return a.length>0&&i.push(a),i};c1.makeLine=function(e){return e.length===1?{type:"LineString",coordinates:e[0]}:{type:"MultiLineString",coordinates:e}};c1.makePolygon=function(e){if(e.length===1)return{type:"Polygon",coordinates:e};for(var t=new Array(e.length),r=0;r{"use strict";var uH=Bt();fH.exports=function(t,r){var i=t.split(" "),a=i[0],s=i[1],l=uH.isArrayOrTypedArray(r)?uH.mean(r):r,f=.5+l/100,h=1.5+l/100,v=["",""],m=[0,0];switch(a){case"top":v[0]="top",m[1]=-h;break;case"bottom":v[0]="bottom",m[1]=h;break}switch(s){case"left":v[1]="right",m[0]=-f;break;case"right":v[1]="left",m[0]=f;break}var _;return v[0]&&v[1]?_=v.join("-"):v[0]?_=v[0]:v[1]?_=v[1]:_="center",{anchor:_,offset:m}}});var mH=pe((kbe,pH)=>{"use strict";var vH=Da(),ko=Bt(),_de=Zi().BADNUM,Nb=Fb(),cH=P0(),xde=xi(),bde=o5(),Bb=rs(),wde=sA().isSupportedFont,Tde=cA(),Ade=bc().appendArrayPointValue,Mde=co().NEWLINES,Sde=co().BR_TAG_ALL;pH.exports=function(t,r){var i=r[0].trace,a=i.visible===!0&&i._length!==0,s=i.fill!=="none",l=Bb.hasLines(i),f=Bb.hasMarkers(i),h=Bb.hasText(i),v=f&&i.marker.symbol==="circle",m=f&&i.marker.symbol!=="circle",_=i.cluster&&i.cluster.enabled,T=qb("fill"),S=qb("line"),C=qb("circle"),E=qb("symbol"),L={fill:T,line:S,circle:C,symbol:E};if(!a)return L;var z;if((s||l)&&(z=Nb.calcTraceToLineCoords(r)),s&&(T.geojson=Nb.makePolygon(z),T.layout.visibility="visible",ko.extendFlat(T.paint,{"fill-color":i.fillcolor})),l&&(S.geojson=Nb.makeLine(z),S.layout.visibility="visible",ko.extendFlat(S.paint,{"line-width":i.line.width,"line-color":i.line.color,"line-opacity":i.opacity})),v){var B=kde(r);C.geojson=B.geojson,C.layout.visibility="visible",_&&(C.filter=["!",["has","point_count"]],L.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":vA(i.cluster.color,i.cluster.step),"circle-radius":vA(i.cluster.size,i.cluster.step),"circle-opacity":vA(i.cluster.opacity,i.cluster.step)}},L.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":hH(i),"text-size":12}}),ko.extendFlat(C.paint,{"circle-color":B.mcc,"circle-radius":B.mrc,"circle-opacity":B.mo})}if(v&&_&&(C.filter=["!",["has","point_count"]]),(m||h)&&(E.geojson=Cde(r,t),ko.extendFlat(E.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),m&&(ko.extendFlat(E.layout,{"icon-size":i.marker.size/10}),"angle"in i.marker&&i.marker.angle!=="auto"&&ko.extendFlat(E.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),E.layout["icon-allow-overlap"]=i.marker.allowoverlap,ko.extendFlat(E.paint,{"icon-opacity":i.opacity*i.marker.opacity,"icon-color":i.marker.color})),h)){var q=(i.marker||{}).size,I=Tde(i.textposition,q);ko.extendFlat(E.layout,{"text-size":i.textfont.size,"text-anchor":I.anchor,"text-offset":I.offset,"text-font":hH(i)}),ko.extendFlat(E.paint,{"text-color":i.textfont.color,"text-opacity":i.opacity})}return L};function qb(e){return{type:e,geojson:Nb.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function kde(e){var t=e[0].trace,r=t.marker,i=t.selectedpoints,a=ko.isArrayOrTypedArray(r.color),s=ko.isArrayOrTypedArray(r.size),l=ko.isArrayOrTypedArray(r.opacity),f;function h(q){return t.opacity*q}function v(q){return q/2}var m;a&&(cH.hasColorscale(t,"marker")?m=cH.makeColorScaleFuncFromTrace(r):m=ko.identity);var _;s&&(_=bde(t));var T;l&&(T=function(q){var I=vH(q)?+ko.constrain(q,0,1):0;return h(I)});var S=[];for(f=0;f850?f+=" Black":a>750?f+=" Extra Bold":a>650?f+=" Bold":a>550?f+=" Semi Bold":a>450?f+=" Medium":a>350?f+=" Regular":a>250?f+=" Light":a>150?f+=" Extra Light":f+=" Thin"):s.slice(0,2).join(" ")==="Open Sans"?(f="Open Sans",a>750?f+=" Extrabold":a>650?f+=" Bold":a>550?f+=" Semibold":a>350?f+=" Regular":f+=" Light"):s.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(f="Klokantech Noto Sans",s[3]==="CJK"&&(f+=" CJK"),f+=a>500?" Bold":" Regular")),l&&(f+=" Italic"),f==="Open Sans Regular Italic"?f="Open Sans Italic":f==="Open Sans Regular Bold"?f="Open Sans Bold":f==="Open Sans Regular Bold Italic"?f="Open Sans Bold Italic":f==="Klokantech Noto Sans Regular Italic"&&(f="Klokantech Noto Sans Italic"),wde(f)||(f=r);var h=f.split(", ");return h}});var xH=pe((Cbe,_H)=>{"use strict";var Ede=Bt(),yH=mH(),Tm=zc().traceLayerPrefix,uu={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function gH(e,t,r,i){this.type="scattermapbox",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=i,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:Tm+t+"-fill",line:Tm+t+"-line",circle:Tm+t+"-circle",symbol:Tm+t+"-symbol",cluster:Tm+t+"-cluster",clusterCount:Tm+t+"-cluster-count"},this.below=null}var h1=gH.prototype;h1.addSource=function(e,t,r){var i={type:"geojson",data:t.geojson};r&&r.enabled&&Ede.extendFlat(i,{cluster:!0,clusterMaxZoom:r.maxzoom});var a=this.subplot.map.getSource(this.sourceIds[e]);a?a.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],i)};h1.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};h1.addLayer=function(e,t,r){var i={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(i.filter=t.filter);for(var a=this.layerIds[e],s,l=this.subplot.getMapLayers(),f=0;f=0;O--){var H=I[O];a.removeLayer(v.layerIds[H])}q||a.removeSource(v.sourceIds.circle)}function T(q){for(var I=uu.nonCluster,O=0;O=0;O--){var H=I[O];a.removeLayer(v.layerIds[H]),q||a.removeSource(v.sourceIds[H])}}function C(q){h?_(q):S(q)}function E(q){f?m(q):T(q)}function L(){for(var q=f?uu.cluster:uu.nonCluster,I=0;I=0;i--){var a=r[i];t.removeLayer(this.layerIds[a]),t.removeSource(this.sourceIds[a])}};_H.exports=function(t,r){var i=r[0].trace,a=i.cluster&&i.cluster.enabled,s=i.visible!==!0,l=new gH(t,i.uid,a,s),f=yH(t.gd,r),h=l.below=t.belowLookup["trace-"+i.uid],v,m,_;if(a)for(l.addSource("circle",f.circle,i.cluster),v=0;v{"use strict";var Lde=Rf(),dA=Bt(),Dde=aT(),Pde=dA.fillText,zde=Zi().BADNUM,Ide=zc().traceLayerPrefix;function Rde(e,t,r){var i=e.cd,a=i[0].trace,s=e.xa,l=e.ya,f=e.subplot,h=[],v=Ide+a.uid+"-circle",m=a.cluster&&a.cluster.enabled;if(m){var _=f.map.queryRenderedFeatures(null,{layers:[v]});h=_.map(function(W){return W.id})}var T=t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360),S=T*360,C=t-S;function E(W){var J=W.lonlat;if(J[0]===zde||m&&h.indexOf(W.i+1)===-1)return 1/0;var te=dA.modHalf(J[0],360),ne=J[1],oe=f.project([te,ne]),fe=oe.x-s.c2p([C,ne]),he=oe.y-l.c2p([te,r]),ke=Math.max(3,W.mrc||0);return Math.max(Math.sqrt(fe*fe+he*he)-ke,1-3/ke)}if(Lde.getClosest(i,E,e),e.index!==!1){var L=i[e.index],z=L.lonlat,B=[dA.modHalf(z[0],360)+S,z[1]],q=s.c2p(B),I=l.c2p(B),O=L.mrc||1;e.x0=q-O,e.x1=q+O,e.y0=I-O,e.y1=I+O;var H={};H[a.subplot]={_subplot:f};var V=a._module.formatLabels(L,a,H);return e.lonLabel=V.lonLabel,e.latLabel=V.latLabel,e.color=Dde(a,L),e.extraText=bH(a,L,i[0].t.labels),e.hovertemplate=a.hovertemplate,[e]}}function bH(e,t,r){if(e.hovertemplate)return;var i=t.hi||e.hoverinfo,a=i.split("+"),s=a.indexOf("all")!==-1,l=a.indexOf("lon")!==-1,f=a.indexOf("lat")!==-1,h=t.lonlat,v=[];function m(_){return _+"\xB0"}return s||l&&f?v.push("("+m(h[1])+", "+m(h[0])+")"):l?v.push(r.lon+m(h[0])):f&&v.push(r.lat+m(h[1])),(s||a.indexOf("text")!==-1)&&Pde(t,e,v),v.join("
")}wH.exports={hoverPoints:Rde,getExtraText:bH}});var AH=pe((Lbe,TH)=>{"use strict";TH.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var SH=pe((Dbe,MH)=>{"use strict";var Fde=Bt(),qde=rs(),Nde=Zi().BADNUM;MH.exports=function(t,r){var i=t.cd,a=t.xaxis,s=t.yaxis,l=[],f=i[0].trace,h;if(!qde.hasMarkers(f))return[];if(r===!1)for(h=0;h{(function(e,t){typeof pA=="object"&&typeof mA!="undefined"?mA.exports=t():(e=e||self,e.mapboxgl=t())})(pA,function(){"use strict";var e,t,r;function i(a,s){if(!e)e=s;else if(!t)t=s;else{var l="var sharedChunk = {}; ("+e+")(sharedChunk); ("+t+")(sharedChunk);",f={};e(f),r=s(f),typeof window!="undefined"&&(r.workerUrl=window.URL.createObjectURL(new Blob([l],{type:"text/javascript"})))}}return i(["exports"],function(a){"use strict";function s(n,o){return o={exports:{}},n(o,o.exports),o.exports}var l="1.13.4",f=h;function h(n,o,u,p){this.cx=3*n,this.bx=3*(u-n)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*o,this.by=3*(p-o)-this.cy,this.ay=1-this.cy-this.by,this.p1x=n,this.p1y=p,this.p2x=u,this.p2y=p}h.prototype.sampleCurveX=function(n){return((this.ax*n+this.bx)*n+this.cx)*n},h.prototype.sampleCurveY=function(n){return((this.ay*n+this.by)*n+this.cy)*n},h.prototype.sampleCurveDerivativeX=function(n){return(3*this.ax*n+2*this.bx)*n+this.cx},h.prototype.solveCurveX=function(n,o){typeof o=="undefined"&&(o=1e-6);var u,p,x,A,k;for(x=n,k=0;k<8;k++){if(A=this.sampleCurveX(x)-n,Math.abs(A)p)return p;for(;uA?u=x:p=x,x=(p-u)*.5+u}return x},h.prototype.solve=function(n,o){return this.sampleCurveY(this.solveCurveX(n,o))};var v=m;function m(n,o){this.x=n,this.y=o}m.prototype={clone:function(){return new m(this.x,this.y)},add:function(n){return this.clone()._add(n)},sub:function(n){return this.clone()._sub(n)},multByPoint:function(n){return this.clone()._multByPoint(n)},divByPoint:function(n){return this.clone()._divByPoint(n)},mult:function(n){return this.clone()._mult(n)},div:function(n){return this.clone()._div(n)},rotate:function(n){return this.clone()._rotate(n)},rotateAround:function(n,o){return this.clone()._rotateAround(n,o)},matMult:function(n){return this.clone()._matMult(n)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(n){return this.x===n.x&&this.y===n.y},dist:function(n){return Math.sqrt(this.distSqr(n))},distSqr:function(n){var o=n.x-this.x,u=n.y-this.y;return o*o+u*u},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(n){return Math.atan2(this.y-n.y,this.x-n.x)},angleWith:function(n){return this.angleWithSep(n.x,n.y)},angleWithSep:function(n,o){return Math.atan2(this.x*o-this.y*n,this.x*n+this.y*o)},_matMult:function(n){var o=n[0]*this.x+n[1]*this.y,u=n[2]*this.x+n[3]*this.y;return this.x=o,this.y=u,this},_add:function(n){return this.x+=n.x,this.y+=n.y,this},_sub:function(n){return this.x-=n.x,this.y-=n.y,this},_mult:function(n){return this.x*=n,this.y*=n,this},_div:function(n){return this.x/=n,this.y/=n,this},_multByPoint:function(n){return this.x*=n.x,this.y*=n.y,this},_divByPoint:function(n){return this.x/=n.x,this.y/=n.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var n=this.y;return this.y=this.x,this.x=-n,this},_rotate:function(n){var o=Math.cos(n),u=Math.sin(n),p=o*this.x-u*this.y,x=u*this.x+o*this.y;return this.x=p,this.y=x,this},_rotateAround:function(n,o){var u=Math.cos(n),p=Math.sin(n),x=o.x+u*(this.x-o.x)-p*(this.y-o.y),A=o.y+p*(this.x-o.x)+u*(this.y-o.y);return this.x=x,this.y=A,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},m.convert=function(n){return n instanceof m?n:Array.isArray(n)?new m(n[0],n[1]):n};var _=typeof self!="undefined"?self:{};function T(n,o){if(Array.isArray(n)){if(!Array.isArray(o)||n.length!==o.length)return!1;for(var u=0;u=1)return 1;var o=n*n,u=o*n;return 4*(n<.5?u:3*(n-o)+u-.75)}function E(n,o,u,p){var x=new f(n,o,u,p);return function(A){return x.solve(A)}}var L=E(.25,.1,.25,1);function z(n,o,u){return Math.min(u,Math.max(o,n))}function B(n,o,u){var p=u-o,x=((n-o)%p+p)%p+o;return x===o?u:x}function q(n,o,u){if(!n.length)return u(null,[]);var p=n.length,x=new Array(n.length),A=null;n.forEach(function(k,F){o(k,function(Y,j){Y&&(A=Y),x[F]=j,--p===0&&u(A,x)})})}function I(n){var o=[];for(var u in n)o.push(n[u]);return o}function O(n,o){var u=[];for(var p in n)p in o||u.push(p);return u}function H(n){for(var o=[],u=arguments.length-1;u-- >0;)o[u]=arguments[u+1];for(var p=0,x=o;p>o/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,n)}return n()}function ne(n){return n<=1?1:Math.pow(2,Math.ceil(Math.log(n)/Math.LN2))}function oe(n){return n?/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(n):!1}function fe(n,o){n.forEach(function(u){o[u]&&(o[u]=o[u].bind(o))})}function he(n,o){return n.indexOf(o,n.length-o.length)!==-1}function ke(n,o,u){var p={};for(var x in n)p[x]=o.call(u||this,n[x],x,n);return p}function Se(n,o,u){var p={};for(var x in n)o.call(u||this,n[x],x,n)&&(p[x]=n[x]);return p}function Ae(n){return Array.isArray(n)?n.map(Ae):typeof n=="object"&&n?ke(n,Ae):n}function xe(n,o){for(var u=0;u=0)return!0;return!1}var be={};function Me(n){be[n]||(typeof console!="undefined"&&console.warn(n),be[n]=!0)}function Le(n,o,u){return(u.y-n.y)*(o.x-n.x)>(o.y-n.y)*(u.x-n.x)}function je(n){for(var o=0,u=0,p=n.length,x=p-1,A=void 0,k=void 0;u@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,u={};if(n.replace(o,function(x,A,k,F){var Y=k||F;return u[A]=Y?Y.toLowerCase():!0,""}),u["max-age"]){var p=parseInt(u["max-age"],10);isNaN(p)?delete u["max-age"]:u["max-age"]=p}return u}var Ye=null;function St(n){if(Ye==null){var o=n.navigator?n.navigator.userAgent:null;Ye=!!n.safari||!!(o&&(/\b(iPad|iPhone|iPod)\b/.test(o)||o.match("Safari")&&!o.match("Chrome")))}return Ye}function it(n){try{var o=_[n];return o.setItem("_mapbox_test_",1),o.removeItem("_mapbox_test_"),!0}catch(u){return!1}}function mt(n){return _.btoa(encodeURIComponent(n).replace(/%([0-9A-F]{2})/g,function(o,u){return String.fromCharCode(+("0x"+u))}))}function bt(n){return decodeURIComponent(_.atob(n).split("").map(function(o){return"%"+("00"+o.charCodeAt(0).toString(16)).slice(-2)}).join(""))}var vt=_.performance&&_.performance.now?_.performance.now.bind(_.performance):Date.now.bind(Date),de=_.requestAnimationFrame||_.mozRequestAnimationFrame||_.webkitRequestAnimationFrame||_.msRequestAnimationFrame,De=_.cancelAnimationFrame||_.mozCancelAnimationFrame||_.webkitCancelAnimationFrame||_.msCancelAnimationFrame,ge,rt,dt={now:vt,frame:function(o){var u=de(o);return{cancel:function(){return De(u)}}},getImageData:function(o,u){u===void 0&&(u=0);var p=_.document.createElement("canvas"),x=p.getContext("2d");if(!x)throw new Error("failed to create canvas 2d context");return p.width=o.width,p.height=o.height,x.drawImage(o,0,0,o.width,o.height),x.getImageData(-u,-u,o.width+2*u,o.height+2*u)},resolveURL:function(o){return ge||(ge=_.document.createElement("a")),ge.href=o,ge.href},hardwareConcurrency:_.navigator&&_.navigator.hardwareConcurrency||4,get devicePixelRatio(){return _.devicePixelRatio},get prefersReducedMotion(){return _.matchMedia?(rt==null&&(rt=_.matchMedia("(prefers-reduced-motion: reduce)")),rt.matches):!1}},We={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},qt={supported:!1,testSupport:Ct},Dt,Tt=!1,Rt,Ut=!1;_.document&&(Rt=_.document.createElement("img"),Rt.onload=function(){Dt&&At(Dt),Dt=null,Ut=!0},Rt.onerror=function(){Tt=!0,Dt=null},Rt.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");function Ct(n){Tt||!Rt||(Ut?At(n):Dt=n)}function At(n){var o=n.createTexture();n.bindTexture(n.TEXTURE_2D,o);try{if(n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,Rt),n.isContextLost())return;qt.supported=!0}catch(u){}n.deleteTexture(o),Tt=!0}var Vt="01";function Ht(){for(var n="1",o="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",u="",p=0;p<10;p++)u+=o[Math.floor(Math.random()*62)];var x=12*60*60*1e3,A=[n,Vt,u].join(""),k=Date.now()+x;return{token:A,tokenExpiresAt:k}}var Be=function(o,u){this._transformRequestFn=o,this._customAccessToken=u,this._createSkuToken()};Be.prototype._createSkuToken=function(){var o=Ht();this._skuToken=o.token,this._skuTokenExpiresAt=o.tokenExpiresAt},Be.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},Be.prototype.transformRequest=function(o,u){return this._transformRequestFn?this._transformRequestFn(o,u)||{url:o}:{url:o}},Be.prototype.normalizeStyleURL=function(o,u){if(!st(o))return o;var p=Ot(o);return p.path="/styles/v1"+p.path,this._makeAPIURL(p,this._customAccessToken||u)},Be.prototype.normalizeGlyphsURL=function(o,u){if(!st(o))return o;var p=Ot(o);return p.path="/fonts/v1"+p.path,this._makeAPIURL(p,this._customAccessToken||u)},Be.prototype.normalizeSourceURL=function(o,u){if(!st(o))return o;var p=Ot(o);return p.path="/v4/"+p.authority+".json",p.params.push("secure"),this._makeAPIURL(p,this._customAccessToken||u)},Be.prototype.normalizeSpriteURL=function(o,u,p,x){var A=Ot(o);return st(o)?(A.path="/styles/v1"+A.path+"/sprite"+u+p,this._makeAPIURL(A,this._customAccessToken||x)):(A.path+=""+u+p,er(A))},Be.prototype.normalizeTileURL=function(o,u){if(this._isSkuTokenExpired()&&this._createSkuToken(),o&&!st(o))return o;var p=Ot(o),x=/(\.(png|jpg)\d*)(?=$)/,A=/^.+\/v4\//,k=dt.devicePixelRatio>=2||u===512?"@2x":"",F=qt.supported?".webp":"$1";p.path=p.path.replace(x,""+k+F),p.path=p.path.replace(A,"/"),p.path="/v4"+p.path;var Y=this._customAccessToken||ct(p.params)||We.ACCESS_TOKEN;return We.REQUIRE_ACCESS_TOKEN&&Y&&this._skuToken&&p.params.push("sku="+this._skuToken),this._makeAPIURL(p,Y)},Be.prototype.canonicalizeTileURL=function(o,u){var p="/v4/",x=/\.[\w]+$/,A=Ot(o);if(!A.path.match(/(^\/v4\/)/)||!A.path.match(x))return o;var k="mapbox://tiles/";k+=A.path.replace(p,"");var F=A.params;return u&&(F=F.filter(function(Y){return!Y.match(/^access_token=/)})),F.length&&(k+="?"+F.join("&")),k},Be.prototype.canonicalizeTileset=function(o,u){for(var p=u?st(u):!1,x=[],A=0,k=o.tiles||[];A=0&&o.params.splice(A,1)}if(x.path!=="/"&&(o.path=""+x.path+o.path),!We.REQUIRE_ACCESS_TOKEN)return er(o);if(u=u||We.ACCESS_TOKEN,!u)throw new Error("An API access token is required to use Mapbox GL. "+p);if(u[0]==="s")throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+p);return o.params=o.params.filter(function(k){return k.indexOf("access_token")===-1}),o.params.push("access_token="+u),er(o)};function st(n){return n.indexOf("mapbox:")===0}var sr=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function Pr(n){return sr.test(n)}function Et(n){return n.indexOf("sku=")>0&&Pr(n)}function ct(n){for(var o=0,u=n;o=1&&_.localStorage.setItem(u,JSON.stringify(this.eventData))}catch(x){Me("Unable to write to LocalStorage")}},pr.prototype.processRequests=function(o){},pr.prototype.postEvent=function(o,u,p,x){var A=this;if(We.EVENTS_URL){var k=Ot(We.EVENTS_URL);k.params.push("access_token="+(x||We.ACCESS_TOKEN||""));var F={event:this.type,created:new Date(o).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:l,skuId:Vt,userId:this.anonId},Y=u?H(F,u):F,j={url:er(k),headers:{"Content-Type":"text/plain"},body:JSON.stringify([Y])};this.pendingRequest=Ze(j,function(Q){A.pendingRequest=null,p(Q),A.saveEventData(),A.processRequests(x)})}},pr.prototype.queueRequest=function(o,u){this.queue.push(o),this.processRequests(u)};var yr=function(n){function o(){n.call(this,"map.load"),this.success={},this.skuToken=""}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.postMapLoadEvent=function(p,x,A,k){this.skuToken=A,(We.EVENTS_URL&&k||We.ACCESS_TOKEN&&Array.isArray(p)&&p.some(function(F){return st(F)||Pr(F)}))&&this.queueRequest({id:x,timestamp:Date.now()},k)},o.prototype.processRequests=function(p){var x=this;if(!(this.pendingRequest||this.queue.length===0)){var A=this.queue.shift(),k=A.id,F=A.timestamp;k&&this.success[k]||(this.anonId||this.fetchEventData(),oe(this.anonId)||(this.anonId=te()),this.postEvent(F,{skuToken:this.skuToken},function(Y){Y||k&&(x.success[k]=!0)},p))}},o}(pr),ur=function(n){function o(u){n.call(this,"appUserTurnstile"),this._customAccessToken=u}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.postTurnstileEvent=function(p,x){We.EVENTS_URL&&We.ACCESS_TOKEN&&Array.isArray(p)&&p.some(function(A){return st(A)||Pr(A)})&&this.queueRequest(Date.now(),x)},o.prototype.processRequests=function(p){var x=this;if(!(this.pendingRequest||this.queue.length===0)){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var A=Kt(We.ACCESS_TOKEN),k=A?A.u:We.ACCESS_TOKEN,F=k!==this.eventData.tokenU;oe(this.anonId)||(this.anonId=te(),F=!0);var Y=this.queue.shift();if(this.eventData.lastSuccess){var j=new Date(this.eventData.lastSuccess),Q=new Date(Y),ie=(Y-this.eventData.lastSuccess)/(24*60*60*1e3);F=F||ie>=1||ie<-1||j.getDate()!==Q.getDate()}else F=!0;if(!F)return this.processRequests();this.postEvent(Y,{"enabled.telemetry":!1},function(ye){ye||(x.eventData.lastSuccess=Y,x.eventData.tokenU=k)},p)}},o}(pr),Lt=new ur,Fe=Lt.postTurnstileEvent.bind(Lt),Ue=new yr,xt=Ue.postMapLoadEvent.bind(Ue),wt="mapbox-tiles",mr=500,Ar=50,Mr=1e3*60*7,Gr;function pa(){_.caches&&!Gr&&(Gr=_.caches.open(wt))}var Ca;function ii(n,o){if(Ca===void 0)try{new Response(new ReadableStream),Ca=!0}catch(u){Ca=!1}Ca?o(n.body):n.blob().then(o)}function wi(n,o,u){if(pa(),!!Gr){var p={status:o.status,statusText:o.statusText,headers:new _.Headers};o.headers.forEach(function(k,F){return p.headers.set(F,k)});var x=gt(o.headers.get("Cache-Control")||"");if(!x["no-store"]){x["max-age"]&&p.headers.set("Expires",new Date(u+x["max-age"]*1e3).toUTCString());var A=new Date(p.headers.get("Expires")).getTime()-u;ADate.now()&&!u["no-cache"]}var hn=1/0;function nn(n){hn++,hn>Ar&&(n.getActor().send("enforceCacheSizeLimit",mr),hn=0)}function Ki(n){pa(),Gr&&Gr.then(function(o){o.keys().then(function(u){for(var p=0;p=200&&u.status<300||u.status===0)&&u.response!==null){var x=u.response;if(n.type==="json")try{x=JSON.parse(u.response)}catch(A){return o(A)}o(null,x,u.getResponseHeader("Cache-Control"),u.getResponseHeader("Expires"))}else o(new ma(u.statusText,u.status,n.url))},u.send(n.body),{cancel:function(){return u.abort()}}}var Ee=function(n,o){if(!ee(n.url)){if(_.fetch&&_.Request&&_.AbortController&&_.Request.prototype.hasOwnProperty("signal"))return le(n,o);if(at()&&self.worker&&self.worker.actor){var u=!0;return self.worker.actor.send("getResource",n,o,void 0,u)}}return ce(n,o)},Ne=function(n,o){return Ee(H(n,{type:"json"}),o)},$e=function(n,o){return Ee(H(n,{type:"arrayBuffer"}),o)},Ze=function(n,o){return Ee(H(n,{method:"POST"}),o)};function yt(n){var o=_.document.createElement("a");return o.href=n,o.protocol===_.document.location.protocol&&o.host===_.document.location.host}var Pt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function Ft(n,o,u,p){var x=new _.Image,A=_.URL;x.onload=function(){o(null,x),A.revokeObjectURL(x.src),x.onload=null,_.requestAnimationFrame(function(){x.src=Pt})},x.onerror=function(){return o(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var k=new _.Blob([new Uint8Array(n)],{type:"image/png"});x.cacheControl=u,x.expires=p,x.src=n.byteLength?A.createObjectURL(k):Pt}function tr(n,o){var u=new _.Blob([new Uint8Array(n)],{type:"image/png"});_.createImageBitmap(u).then(function(p){o(null,p)}).catch(function(p){o(new Error("Could not load image because of "+p.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}var Wt,Sr,Zr=function(){Wt=[],Sr=0};Zr();var Or=function(n,o){if(qt.supported&&(n.headers||(n.headers={}),n.headers.accept="image/webp,*/*"),Sr>=We.MAX_PARALLEL_IMAGE_REQUESTS){var u={requestParameters:n,callback:o,cancelled:!1,cancel:function(){this.cancelled=!0}};return Wt.push(u),u}Sr++;var p=!1,x=function(){if(!p)for(p=!0,Sr--;Wt.length&&Sr0||this._oneTimeListeners&&this._oneTimeListeners[o]&&this._oneTimeListeners[o].length>0||this._eventedParent&&this._eventedParent.listens(o)},gr.prototype.setEventedParent=function(o,u){return this._eventedParent=o,this._eventedParentData=u,this};var $r=8,ga={version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},nr={"*":{type:"source"}},Ti=["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],Ea={type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},si={type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},fa={type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},Pn={type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},Co={type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},xs={type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},Ga={id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},Kn=["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],hu={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Ui={"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},dl={"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},$d={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},qc={"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Nc={"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},hv={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},vv={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},vu={type:"array",value:"*"},pl={type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},ep={type:"enum",values:{Point:{},LineString:{},Polygon:{}}},Ku={type:"array",minimum:0,maximum:24,value:["number","color"],length:2},Zf={type:"array",value:"*",minimum:1},$i={anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},Ho=["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],mo={"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},ml={"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},Go={"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},du={"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},tp={"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},dv={"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Qu={"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},pv={"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},mv={duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},oo={"*":{type:"string"}},Xt={$version:$r,$root:ga,sources:nr,source:Ti,source_vector:Ea,source_raster:si,source_raster_dem:fa,source_geojson:Pn,source_video:Co,source_image:xs,layer:Ga,layout:Kn,layout_background:hu,layout_fill:Ui,layout_circle:dl,layout_heatmap:$d,"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:qc,layout_symbol:Nc,layout_raster:hv,layout_hillshade:vv,filter:vu,filter_operator:pl,geometry_type:ep,function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:Ku,expression:Zf,light:$i,paint:Ho,paint_fill:mo,"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:ml,paint_circle:Go,paint_heatmap:du,paint_symbol:tp,paint_raster:dv,paint_hillshade:Qu,paint_background:pv,transition:mv,"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:oo},Ur=function(o,u,p,x){this.message=(o?o+": ":"")+p,x&&(this.identifier=x),u!=null&&u.__line__&&(this.line=u.__line__)};function rp(n){var o=n.key,u=n.value;return u?[new Ur(o,u,"constants have been deprecated as of v8")]:[]}function pu(n){for(var o=[],u=arguments.length-1;u-- >0;)o[u]=arguments[u+1];for(var p=0,x=o;p":n.itemType.kind==="value"?"array":"array<"+o+">"}else return n.kind}var Ts=[ef,Er,ba,wa,ws,fs,gl,yo(Aa),_l];function cs(n,o){if(o.kind==="error")return null;if(n.kind==="array"){if(o.kind==="array"&&(o.N===0&&o.itemType.kind==="value"||!cs(n.itemType,o.itemType))&&(typeof n.N!="number"||n.N===o.N))return null}else{if(n.kind===o.kind)return null;if(n.kind==="value")for(var u=0,p=Ts;u255?255:j}function x(j){return j<0?0:j>1?1:j}function A(j){return j[j.length-1]==="%"?p(parseFloat(j)/100*255):p(parseInt(j))}function k(j){return j[j.length-1]==="%"?x(parseFloat(j)/100):x(parseFloat(j))}function F(j,Q,ie){return ie<0?ie+=1:ie>1&&(ie-=1),ie*6<1?j+(Q-j)*ie*6:ie*2<1?Q:ie*3<2?j+(Q-j)*(2/3-ie)*6:j}function Y(j){var Q=j.replace(/ /g,"").toLowerCase();if(Q in u)return u[Q].slice();if(Q[0]==="#"){if(Q.length===4){var ie=parseInt(Q.substr(1),16);return ie>=0&&ie<=4095?[(ie&3840)>>4|(ie&3840)>>8,ie&240|(ie&240)>>4,ie&15|(ie&15)<<4,1]:null}else if(Q.length===7){var ie=parseInt(Q.substr(1),16);return ie>=0&&ie<=16777215?[(ie&16711680)>>16,(ie&65280)>>8,ie&255,1]:null}return null}var ye=Q.indexOf("("),ve=Q.indexOf(")");if(ye!==-1&&ve+1===Q.length){var Ce=Q.substr(0,ye),qe=Q.substr(ye+1,ve-(ye+1)).split(","),ut=1;switch(Ce){case"rgba":if(qe.length!==4)return null;ut=k(qe.pop());case"rgb":return qe.length!==3?null:[A(qe[0]),A(qe[1]),A(qe[2]),ut];case"hsla":if(qe.length!==4)return null;ut=k(qe.pop());case"hsl":if(qe.length!==3)return null;var et=(parseFloat(qe[0])%360+360)%360/360,kt=k(qe[1]),_t=k(qe[2]),Mt=_t<=.5?_t*(kt+1):_t+kt-_t*kt,It=_t*2-Mt;return[p(F(It,Mt,et+1/3)*255),p(F(It,Mt,et)*255),p(F(It,Mt,et-1/3)*255),ut];default:return null}}return null}try{o.parseCSSColor=Y}catch(j){}}),Yf=Cm.parseCSSColor,ni=function(o,u,p,x){x===void 0&&(x=1),this.r=o,this.g=u,this.b=p,this.a=x};ni.parse=function(o){if(o){if(o instanceof ni)return o;if(typeof o=="string"){var u=Yf(o);if(u)return new ni(u[0]/255*u[3],u[1]/255*u[3],u[2]/255*u[3],u[3])}}},ni.prototype.toString=function(){var o=this.toArray(),u=o[0],p=o[1],x=o[2],A=o[3];return"rgba("+Math.round(u)+","+Math.round(p)+","+Math.round(x)+","+A+")"},ni.prototype.toArray=function(){var o=this,u=o.r,p=o.g,x=o.b,A=o.a;return A===0?[0,0,0,0]:[u*255/A,p*255/A,x*255/A,A]},ni.black=new ni(0,0,0,1),ni.white=new ni(1,1,1,1),ni.transparent=new ni(0,0,0,0),ni.red=new ni(1,0,0,1);var Wf=function(o,u,p){o?this.sensitivity=u?"variant":"case":this.sensitivity=u?"accent":"base",this.locale=p,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};Wf.prototype.compare=function(o,u){return this.collator.compare(o,u)},Wf.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var yv=function(o,u,p,x,A){this.text=o,this.image=u,this.scale=p,this.fontStack=x,this.textColor=A},xn=function(o){this.sections=o};xn.fromString=function(o){return new xn([new yv(o,null,null,null,null)])},xn.prototype.isEmpty=function(){return this.sections.length===0?!0:!this.sections.some(function(o){return o.text.length!==0||o.image&&o.image.name.length!==0})},xn.factory=function(o){return o instanceof xn?o:xn.fromString(o)},xn.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(o){return o.text}).join("")},xn.prototype.serialize=function(){for(var o=["format"],u=0,p=this.sections;u=0&&n<=255&&typeof o=="number"&&o>=0&&o<=255&&typeof u=="number"&&u>=0&&u<=255)){var x=typeof p=="number"?[n,o,u,p]:[n,o,u];return"Invalid rgba value ["+x.join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}return typeof p=="undefined"||typeof p=="number"&&p>=0&&p<=1?null:"Invalid rgba value ["+[n,o,u,p].join(", ")+"]: 'a' must be between 0 and 1."}function tf(n){if(n===null)return!0;if(typeof n=="string")return!0;if(typeof n=="boolean")return!0;if(typeof n=="number")return!0;if(n instanceof ni)return!0;if(n instanceof Wf)return!0;if(n instanceof xn)return!0;if(n instanceof zn)return!0;if(Array.isArray(n)){for(var o=0,u=n;o2){var F=o[1];if(typeof F!="string"||!(F in Xf)||F==="object")return u.error('The item type argument of "array" must be one of string, number, boolean',1);k=Xf[F],p++}else k=Aa;var Y;if(o.length>3){if(o[2]!==null&&(typeof o[2]!="number"||o[2]<0||o[2]!==Math.floor(o[2])))return u.error('The length argument to "array" must be a positive integer literal',2);Y=o[2],p++}x=yo(k,Y)}else x=Xf[A];for(var j=[];p1)&&u.push(x)}}return u.concat(this.args.map(function(A){return A.serialize()}))};var Yo=function(o){this.type=fs,this.sections=o};Yo.parse=function(o,u){if(o.length<2)return u.error("Expected at least one argument.");var p=o[1];if(!Array.isArray(p)&&typeof p=="object")return u.error("First argument must be an image or text section.");for(var x=[],A=!1,k=1;k<=o.length-1;++k){var F=o[k];if(A&&typeof F=="object"&&!Array.isArray(F)){A=!1;var Y=null;if(F["font-scale"]&&(Y=u.parse(F["font-scale"],1,Er),!Y))return null;var j=null;if(F["text-font"]&&(j=u.parse(F["text-font"],1,yo(ba)),!j))return null;var Q=null;if(F["text-color"]&&(Q=u.parse(F["text-color"],1,ws),!Q))return null;var ie=x[x.length-1];ie.scale=Y,ie.font=j,ie.textColor=Q}else{var ye=u.parse(o[k],1,Aa);if(!ye)return null;var ve=ye.type.kind;if(ve!=="string"&&ve!=="value"&&ve!=="null"&&ve!=="resolvedImage")return u.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");A=!0,x.push({content:ye,scale:null,font:null,textColor:null})}}return new Yo(x)},Yo.prototype.evaluate=function(o){var u=function(p){var x=p.content.evaluate(o);return sn(x)===_l?new yv("",x,null,null,null):new yv(Eo(x),null,p.scale?p.scale.evaluate(o):null,p.font?p.font.evaluate(o).join(","):null,p.textColor?p.textColor.evaluate(o):null)};return new xn(this.sections.map(u))},Yo.prototype.eachChild=function(o){for(var u=0,p=this.sections;u-1),p},Xs.prototype.eachChild=function(o){o(this.input)},Xs.prototype.outputDefined=function(){return!1},Xs.prototype.serialize=function(){return["image",this.input.serialize()]};var Em={"to-boolean":wa,"to-color":ws,"to-number":Er,"to-string":ba},Wo=function(o,u){this.type=o,this.args=u};Wo.parse=function(o,u){if(o.length<2)return u.error("Expected at least one argument.");var p=o[0];if((p==="to-boolean"||p==="to-string")&&o.length!==2)return u.error("Expected one argument.");for(var x=Em[p],A=[],k=1;k4?p="Invalid rbga value "+JSON.stringify(u)+": expected an array containing either three or four numeric values.":p=ap(u[0],u[1],u[2],u[3]),!p))return new ni(u[0]/255,u[1]/255,u[2]/255,u[3])}throw new vn(p||"Could not parse color from value '"+(typeof u=="string"?u:String(JSON.stringify(u)))+"'")}else if(this.type.kind==="number"){for(var Y=null,j=0,Q=this.args;j=o[2]||n[1]<=o[1]||n[3]>=o[3])}function Im(n,o){var u=Pm(n[0]),p=zm(n[1]),x=Math.pow(2,o.z);return[Math.round(u*x*bl),Math.round(p*x*bl)]}function Rm(n,o,u){var p=n[0]-o[0],x=n[1]-o[1],A=n[0]-u[0],k=n[1]-u[1];return p*k-A*x===0&&p*A<=0&&x*k<=0}function Fm(n,o,u){return o[1]>n[1]!=u[1]>n[1]&&n[0]<(u[0]-o[0])*(n[1]-o[1])/(u[1]-o[1])+o[0]}function _v(n,o){for(var u=!1,p=0,x=o.length;p0&&ie<0||Q<0&&ie>0}function ip(n,o,u,p){var x=[o[0]-n[0],o[1]-n[1]],A=[p[0]-u[0],p[1]-u[1]];return Nm(A,x)===0?!1:!!(xv(n,o,u,p)&&xv(u,p,n,o))}function np(n,o,u){for(var p=0,x=u;pu[2]){var x=p*.5,A=n[0]-u[0]>x?-p:u[0]-n[0]>x?p:0;A===0&&(A=n[0]-u[2]>x?-p:u[2]-n[0]>x?p:0),n[0]+=A}gv(o,n)}function Om(n){n[0]=n[1]=1/0,n[2]=n[3]=-1/0}function sp(n,o,u,p){for(var x=Math.pow(2,p.z)*bl,A=[p.x*bl,p.y*bl],k=[],F=0,Y=n;F=0)return!1;var u=!0;return n.eachChild(function(p){u&&!Vc(p,o)&&(u=!1)}),u}var Tl=function(o,u){this.type=u.type,this.name=o,this.boundExpression=u};Tl.parse=function(o,u){if(o.length!==2||typeof o[1]!="string")return u.error("'var' expression requires exactly one string literal argument.");var p=o[1];return u.scope.has(p)?new Tl(p,u.scope.get(p)):u.error('Unknown variable "'+p+'". Make sure "'+p+'" has been bound in an enclosing "let" expression before using it.',1)},Tl.prototype.evaluate=function(o){return this.boundExpression.evaluate(o)},Tl.prototype.eachChild=function(){},Tl.prototype.outputDefined=function(){return!1},Tl.prototype.serialize=function(){return["var",this.name]};var Al=function(o,u,p,x,A){u===void 0&&(u=[]),x===void 0&&(x=new $u),A===void 0&&(A=[]),this.registry=o,this.path=u,this.key=u.map(function(k){return"["+k+"]"}).join(""),this.scope=x,this.errors=A,this.expectedType=p};Al.prototype.parse=function(o,u,p,x,A){return A===void 0&&(A={}),u?this.concat(u,p,x)._parse(o,A):this._parse(o,A)},Al.prototype._parse=function(o,u){(o===null||typeof o=="string"||typeof o=="boolean"||typeof o=="number")&&(o=["literal",o]);function p(Q,ie,ye){return ye==="assert"?new ln(ie,[Q]):ye==="coerce"?new Wo(ie,[Q]):Q}if(Array.isArray(o)){if(o.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var x=o[0];if(typeof x!="string")return this.error("Expression name must be a string, but found "+typeof x+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var A=this.registry[x];if(A){var k=A.parse(o,this);if(!k)return null;if(this.expectedType){var F=this.expectedType,Y=k.type;if((F.kind==="string"||F.kind==="number"||F.kind==="boolean"||F.kind==="object"||F.kind==="array")&&Y.kind==="value")k=p(k,F,u.typeAnnotation||"assert");else if((F.kind==="color"||F.kind==="formatted"||F.kind==="resolvedImage")&&(Y.kind==="value"||Y.kind==="string"))k=p(k,F,u.typeAnnotation||"coerce");else if(this.checkSubtype(F,Y))return null}if(!(k instanceof Zo)&&k.type.kind!=="resolvedImage"&&Tv(k)){var j=new js;try{k=new Zo(k.type,k.evaluate(j))}catch(Q){return this.error(Q.message),null}}return k}return this.error('Unknown expression "'+x+'". If you wanted a literal array, use ["literal", [...]].',0)}else return typeof o=="undefined"?this.error("'undefined' value invalid. Use null instead."):typeof o=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof o+" instead.")},Al.prototype.concat=function(o,u,p){var x=typeof o=="number"?this.path.concat(o):this.path,A=p?this.scope.concat(p):this.scope;return new Al(this.registry,x,u||null,A,this.errors)},Al.prototype.error=function(o){for(var u=[],p=arguments.length-1;p-- >0;)u[p]=arguments[p+1];var x=""+this.key+u.map(function(A){return"["+A+"]"}).join("");this.errors.push(new bs(x,o))},Al.prototype.checkSubtype=function(o,u){var p=cs(o,u);return p&&this.error(p),p};function Tv(n){if(n instanceof Tl)return Tv(n.boundExpression);if(n instanceof In&&n.name==="error")return!1;if(n instanceof xl)return!1;if(n instanceof hs)return!1;var o=n instanceof Wo||n instanceof ln,u=!0;return n.eachChild(function(p){o?u=u&&Tv(p):u=u&&p instanceof Zo}),u?Uc(n)&&Vc(n,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"]):!1}function Hc(n,o){for(var u=n.length-1,p=0,x=u,A=0,k,F;p<=x;)if(A=Math.floor((p+x)/2),k=n[A],F=n[A+1],k<=o){if(A===u||oo)x=A-1;else throw new vn("Input is not a number.");return 0}var As=function(o,u,p){this.type=o,this.input=u,this.labels=[],this.outputs=[];for(var x=0,A=p;x=F)return u.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',j);var ie=u.parse(Y,Q,A);if(!ie)return null;A=A||ie.type,x.push([F,ie])}return new As(A,p,x)},As.prototype.evaluate=function(o){var u=this.labels,p=this.outputs;if(u.length===1)return p[0].evaluate(o);var x=this.input.evaluate(o);if(x<=u[0])return p[0].evaluate(o);var A=u.length;if(x>=u[A-1])return p[A-1].evaluate(o);var k=Hc(u,x);return p[k].evaluate(o)},As.prototype.eachChild=function(o){o(this.input);for(var u=0,p=this.outputs;u0&&o.push(this.labels[u]),o.push(this.outputs[u].serialize());return o};function dn(n,o,u){return n*(1-u)+o*u}function Vm(n,o,u){return new ni(dn(n.r,o.r,u),dn(n.g,o.g,u),dn(n.b,o.b,u),dn(n.a,o.a,u))}function Hm(n,o,u){return n.map(function(p,x){return dn(p,o[x],u)})}var Ml=Object.freeze({__proto__:null,number:dn,color:Vm,array:Hm}),rf=.95047,vs=1,fp=1.08883,cp=4/29,af=6/29,hp=3*af*af,vp=af*af*af,Gm=Math.PI/180,Zm=180/Math.PI;function Av(n){return n>vp?Math.pow(n,1/3):n/hp+cp}function Mv(n){return n>af?n*n*n:hp*(n-cp)}function Sv(n){return 255*(n<=.0031308?12.92*n:1.055*Math.pow(n,1/2.4)-.055)}function jf(n){return n/=255,n<=.04045?n/12.92:Math.pow((n+.055)/1.055,2.4)}function Gc(n){var o=jf(n.r),u=jf(n.g),p=jf(n.b),x=Av((.4124564*o+.3575761*u+.1804375*p)/rf),A=Av((.2126729*o+.7151522*u+.072175*p)/vs),k=Av((.0193339*o+.119192*u+.9503041*p)/fp);return{l:116*A-16,a:500*(x-A),b:200*(A-k),alpha:n.a}}function dp(n){var o=(n.l+16)/116,u=isNaN(n.a)?o:o+n.a/500,p=isNaN(n.b)?o:o-n.b/200;return o=vs*Mv(o),u=rf*Mv(u),p=fp*Mv(p),new ni(Sv(3.2404542*u-1.5371385*o-.4985314*p),Sv(-.969266*u+1.8760108*o+.041556*p),Sv(.0556434*u-.2040259*o+1.0572252*p),n.alpha)}function qi(n,o,u){return{l:dn(n.l,o.l,u),a:dn(n.a,o.a,u),b:dn(n.b,o.b,u),alpha:dn(n.alpha,o.alpha,u)}}function Ym(n){var o=Gc(n),u=o.l,p=o.a,x=o.b,A=Math.atan2(x,p)*Zm;return{h:A<0?A+360:A,c:Math.sqrt(p*p+x*x),l:u,alpha:n.a}}function Zc(n){var o=n.h*Gm,u=n.c,p=n.l;return dp({l:p,a:Math.cos(o)*u,b:Math.sin(o)*u,alpha:n.alpha})}function kv(n,o,u){var p=o-n;return n+u*(p>180||p<-180?p-360*Math.round(p/360):p)}function pp(n,o,u){return{h:kv(n.h,o.h,u),c:dn(n.c,o.c,u),l:dn(n.l,o.l,u),alpha:dn(n.alpha,o.alpha,u)}}var nf={forward:Gc,reverse:dp,interpolate:qi},_u={forward:Ym,reverse:Zc,interpolate:pp},Cv=Object.freeze({__proto__:null,lab:nf,hcl:_u}),bn=function(o,u,p,x,A){this.type=o,this.operator=u,this.interpolation=p,this.input=x,this.labels=[],this.outputs=[];for(var k=0,F=A;k1}))return u.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);x={name:"cubic-bezier",controlPoints:Y}}else return u.error("Unknown interpolation type "+String(x[0]),1,0);if(o.length-1<4)return u.error("Expected at least 4 arguments, but found only "+(o.length-1)+".");if((o.length-1)%2!==0)return u.error("Expected an even number of arguments.");if(A=u.parse(A,2,Er),!A)return null;var j=[],Q=null;p==="interpolate-hcl"||p==="interpolate-lab"?Q=ws:u.expectedType&&u.expectedType.kind!=="value"&&(Q=u.expectedType);for(var ie=0;ie=ye)return u.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',Ce);var ut=u.parse(ve,qe,Q);if(!ut)return null;Q=Q||ut.type,j.push([ye,ut])}return Q.kind!=="number"&&Q.kind!=="color"&&!(Q.kind==="array"&&Q.itemType.kind==="number"&&typeof Q.N=="number")?u.error("Type "+Ei(Q)+" is not interpolatable."):new bn(Q,p,x,A,j)},bn.prototype.evaluate=function(o){var u=this.labels,p=this.outputs;if(u.length===1)return p[0].evaluate(o);var x=this.input.evaluate(o);if(x<=u[0])return p[0].evaluate(o);var A=u.length;if(x>=u[A-1])return p[A-1].evaluate(o);var k=Hc(u,x),F=u[k],Y=u[k+1],j=bn.interpolationFactor(this.interpolation,x,F,Y),Q=p[k].evaluate(o),ie=p[k+1].evaluate(o);return this.operator==="interpolate"?Ml[this.type.kind.toLowerCase()](Q,ie,j):this.operator==="interpolate-hcl"?_u.reverse(_u.interpolate(_u.forward(Q),_u.forward(ie),j)):nf.reverse(nf.interpolate(nf.forward(Q),nf.forward(ie),j))},bn.prototype.eachChild=function(o){o(this.input);for(var u=0,p=this.outputs;u=p.length)throw new vn("Array index out of bounds: "+u+" > "+(p.length-1)+".");if(u!==Math.floor(u))throw new vn("Array index must be an integer, but found "+u+" instead.");return p[u]},kl.prototype.eachChild=function(o){o(this.index),o(this.input)},kl.prototype.outputDefined=function(){return!1},kl.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var Cl=function(o,u){this.type=wa,this.needle=o,this.haystack=u};Cl.parse=function(o,u){if(o.length!==3)return u.error("Expected 2 arguments, but found "+(o.length-1)+" instead.");var p=u.parse(o[1],1,Aa),x=u.parse(o[2],2,Aa);return!p||!x?null:Bc(p.type,[wa,ba,Er,ef,Aa])?new Cl(p,x):u.error("Expected first argument to be of type boolean, string, number or null, but found "+Ei(p.type)+" instead")},Cl.prototype.evaluate=function(o){var u=this.needle.evaluate(o),p=this.haystack.evaluate(o);if(!p)return!1;if(!yu(u,["boolean","string","number","null"]))throw new vn("Expected first argument to be of type boolean, string, number or null, but found "+Ei(sn(u))+" instead.");if(!yu(p,["string","array"]))throw new vn("Expected second argument to be of type array or string, but found "+Ei(sn(p))+" instead.");return p.indexOf(u)>=0},Cl.prototype.eachChild=function(o){o(this.needle),o(this.haystack)},Cl.prototype.outputDefined=function(){return!0},Cl.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var Ks=function(o,u,p){this.type=Er,this.needle=o,this.haystack=u,this.fromIndex=p};Ks.parse=function(o,u){if(o.length<=2||o.length>=5)return u.error("Expected 3 or 4 arguments, but found "+(o.length-1)+" instead.");var p=u.parse(o[1],1,Aa),x=u.parse(o[2],2,Aa);if(!p||!x)return null;if(!Bc(p.type,[wa,ba,Er,ef,Aa]))return u.error("Expected first argument to be of type boolean, string, number or null, but found "+Ei(p.type)+" instead");if(o.length===4){var A=u.parse(o[3],3,Er);return A?new Ks(p,x,A):null}else return new Ks(p,x)},Ks.prototype.evaluate=function(o){var u=this.needle.evaluate(o),p=this.haystack.evaluate(o);if(!yu(u,["boolean","string","number","null"]))throw new vn("Expected first argument to be of type boolean, string, number or null, but found "+Ei(sn(u))+" instead.");if(!yu(p,["string","array"]))throw new vn("Expected second argument to be of type array or string, but found "+Ei(sn(p))+" instead.");if(this.fromIndex){var x=this.fromIndex.evaluate(o);return p.indexOf(u,x)}return p.indexOf(u)},Ks.prototype.eachChild=function(o){o(this.needle),o(this.haystack),this.fromIndex&&o(this.fromIndex)},Ks.prototype.outputDefined=function(){return!1},Ks.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var o=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),o]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var Ms=function(o,u,p,x,A,k){this.inputType=o,this.type=u,this.input=p,this.cases=x,this.outputs=A,this.otherwise=k};Ms.parse=function(o,u){if(o.length<5)return u.error("Expected at least 4 arguments, but found only "+(o.length-1)+".");if(o.length%2!==1)return u.error("Expected an even number of arguments.");var p,x;u.expectedType&&u.expectedType.kind!=="value"&&(x=u.expectedType);for(var A={},k=[],F=2;FNumber.MAX_SAFE_INTEGER)return Q.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof ve=="number"&&Math.floor(ve)!==ve)return Q.error("Numeric branch labels must be integer values.");if(!p)p=sn(ve);else if(Q.checkSubtype(p,sn(ve)))return null;if(typeof A[String(ve)]!="undefined")return Q.error("Branch labels must be unique.");A[String(ve)]=k.length}var Ce=u.parse(j,F,x);if(!Ce)return null;x=x||Ce.type,k.push(Ce)}var qe=u.parse(o[1],1,Aa);if(!qe)return null;var ut=u.parse(o[o.length-1],o.length-1,x);return!ut||qe.type.kind!=="value"&&u.concat(1).checkSubtype(p,qe.type)?null:new Ms(p,x,qe,A,k,ut)},Ms.prototype.evaluate=function(o){var u=this.input.evaluate(o),p=sn(u)===this.inputType&&this.outputs[this.cases[u]]||this.otherwise;return p.evaluate(o)},Ms.prototype.eachChild=function(o){o(this.input),this.outputs.forEach(o),o(this.otherwise)},Ms.prototype.outputDefined=function(){return this.outputs.every(function(o){return o.outputDefined()})&&this.otherwise.outputDefined()},Ms.prototype.serialize=function(){for(var o=this,u=["match",this.input.serialize()],p=Object.keys(this.cases).sort(),x=[],A={},k=0,F=p;k=5)return u.error("Expected 3 or 4 arguments, but found "+(o.length-1)+" instead.");var p=u.parse(o[1],1,Aa),x=u.parse(o[2],2,Er);if(!p||!x)return null;if(!Bc(p.type,[yo(Aa),ba,Aa]))return u.error("Expected first argument to be of type array or string, but found "+Ei(p.type)+" instead");if(o.length===4){var A=u.parse(o[3],3,Er);return A?new El(p.type,p,x,A):null}else return new El(p.type,p,x)},El.prototype.evaluate=function(o){var u=this.input.evaluate(o),p=this.beginIndex.evaluate(o);if(!yu(u,["string","array"]))throw new vn("Expected first argument to be of type array or string, but found "+Ei(sn(u))+" instead.");if(this.endIndex){var x=this.endIndex.evaluate(o);return u.slice(p,x)}return u.slice(p)},El.prototype.eachChild=function(o){o(this.input),o(this.beginIndex),this.endIndex&&o(this.endIndex)},El.prototype.outputDefined=function(){return!1},El.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var o=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),o]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};function mp(n,o){return n==="=="||n==="!="?o.kind==="boolean"||o.kind==="string"||o.kind==="number"||o.kind==="null"||o.kind==="value":o.kind==="string"||o.kind==="number"||o.kind==="value"}function Wm(n,o,u){return o===u}function Xm(n,o,u){return o!==u}function jm(n,o,u){return ou}function gp(n,o,u){return o<=u}function Ev(n,o,u){return o>=u}function Lv(n,o,u,p){return p.compare(o,u)===0}function Kf(n,o,u,p){return!Lv(n,o,u,p)}function Yc(n,o,u,p){return p.compare(o,u)<0}function _p(n,o,u,p){return p.compare(o,u)>0}function Dv(n,o,u,p){return p.compare(o,u)<=0}function xp(n,o,u,p){return p.compare(o,u)>=0}function of(n,o,u){var p=n!=="=="&&n!=="!=";return function(){function x(A,k,F){this.type=wa,this.lhs=A,this.rhs=k,this.collator=F,this.hasUntypedArgument=A.type.kind==="value"||k.type.kind==="value"}return x.parse=function(k,F){if(k.length!==3&&k.length!==4)return F.error("Expected two or three arguments.");var Y=k[0],j=F.parse(k[1],1,Aa);if(!j)return null;if(!mp(Y,j.type))return F.concat(1).error('"'+Y+`" comparisons are not supported for type '`+Ei(j.type)+"'.");var Q=F.parse(k[2],2,Aa);if(!Q)return null;if(!mp(Y,Q.type))return F.concat(2).error('"'+Y+`" comparisons are not supported for type '`+Ei(Q.type)+"'.");if(j.type.kind!==Q.type.kind&&j.type.kind!=="value"&&Q.type.kind!=="value")return F.error("Cannot compare types '"+Ei(j.type)+"' and '"+Ei(Q.type)+"'.");p&&(j.type.kind==="value"&&Q.type.kind!=="value"?j=new ln(Q.type,[j]):j.type.kind!=="value"&&Q.type.kind==="value"&&(Q=new ln(j.type,[Q])));var ie=null;if(k.length===4){if(j.type.kind!=="string"&&Q.type.kind!=="string"&&j.type.kind!=="value"&&Q.type.kind!=="value")return F.error("Cannot use collator to compare non-string types.");if(ie=F.parse(k[3],3,mu),!ie)return null}return new x(j,Q,ie)},x.prototype.evaluate=function(k){var F=this.lhs.evaluate(k),Y=this.rhs.evaluate(k);if(p&&this.hasUntypedArgument){var j=sn(F),Q=sn(Y);if(j.kind!==Q.kind||!(j.kind==="string"||j.kind==="number"))throw new vn('Expected arguments for "'+n+'" to be (string, string) or (number, number), but found ('+j.kind+", "+Q.kind+") instead.")}if(this.collator&&!p&&this.hasUntypedArgument){var ie=sn(F),ye=sn(Y);if(ie.kind!=="string"||ye.kind!=="string")return o(k,F,Y)}return this.collator?u(k,F,Y,this.collator.evaluate(k)):o(k,F,Y)},x.prototype.eachChild=function(k){k(this.lhs),k(this.rhs),this.collator&&k(this.collator)},x.prototype.outputDefined=function(){return!0},x.prototype.serialize=function(){var k=[n];return this.eachChild(function(F){k.push(F.serialize())}),k},x}()}var Jm=of("==",Wm,Lv),bp=of("!=",Xm,Kf),wp=of("<",jm,Yc),Tp=of(">",yp,_p),Pv=of("<=",gp,Dv),zv=of(">=",Ev,xp),xu=function(o,u,p,x,A){this.type=ba,this.number=o,this.locale=u,this.currency=p,this.minFractionDigits=x,this.maxFractionDigits=A};xu.parse=function(o,u){if(o.length!==3)return u.error("Expected two arguments.");var p=u.parse(o[1],1,Er);if(!p)return null;var x=o[2];if(typeof x!="object"||Array.isArray(x))return u.error("NumberFormat options argument must be an object.");var A=null;if(x.locale&&(A=u.parse(x.locale,1,ba),!A))return null;var k=null;if(x.currency&&(k=u.parse(x.currency,1,ba),!k))return null;var F=null;if(x["min-fraction-digits"]&&(F=u.parse(x["min-fraction-digits"],1,Er),!F))return null;var Y=null;return x["max-fraction-digits"]&&(Y=u.parse(x["max-fraction-digits"],1,Er),!Y)?null:new xu(p,A,k,F,Y)},xu.prototype.evaluate=function(o){return new Intl.NumberFormat(this.locale?this.locale.evaluate(o):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(o):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(o):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(o):void 0}).format(this.number.evaluate(o))},xu.prototype.eachChild=function(o){o(this.number),this.locale&&o(this.locale),this.currency&&o(this.currency),this.minFractionDigits&&o(this.minFractionDigits),this.maxFractionDigits&&o(this.maxFractionDigits)},xu.prototype.outputDefined=function(){return!1},xu.prototype.serialize=function(){var o={};return this.locale&&(o.locale=this.locale.serialize()),this.currency&&(o.currency=this.currency.serialize()),this.minFractionDigits&&(o["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(o["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),o]};var Ll=function(o){this.type=Er,this.input=o};Ll.parse=function(o,u){if(o.length!==2)return u.error("Expected 1 argument, but found "+(o.length-1)+" instead.");var p=u.parse(o[1],1);return p?p.type.kind!=="array"&&p.type.kind!=="string"&&p.type.kind!=="value"?u.error("Expected argument of type string or array, but found "+Ei(p.type)+" instead."):new Ll(p):null},Ll.prototype.evaluate=function(o){var u=this.input.evaluate(o);if(typeof u=="string")return u.length;if(Array.isArray(u))return u.length;throw new vn("Expected value to be of type string or array, but found "+Ei(sn(u))+" instead.")},Ll.prototype.eachChild=function(o){o(this.input)},Ll.prototype.outputDefined=function(){return!1},Ll.prototype.serialize=function(){var o=["length"];return this.eachChild(function(u){o.push(u.serialize())}),o};var Qf={"==":Jm,"!=":bp,">":Tp,"<":wp,">=":zv,"<=":Pv,array:ln,at:kl,boolean:ln,case:Ss,coalesce:Js,collator:xl,format:Yo,image:Xs,in:Cl,"index-of":Ks,interpolate:bn,"interpolate-hcl":bn,"interpolate-lab":bn,length:Ll,let:Sl,literal:Zo,match:Ms,number:ln,"number-format":xu,object:ln,slice:El,step:As,string:ln,"to-boolean":Wo,"to-color":Wo,"to-number":Wo,"to-string":Wo,var:Tl,within:hs};function Iv(n,o){var u=o[0],p=o[1],x=o[2],A=o[3];u=u.evaluate(n),p=p.evaluate(n),x=x.evaluate(n);var k=A?A.evaluate(n):1,F=ap(u,p,x,k);if(F)throw new vn(F);return new ni(u/255*k,p/255*k,x/255*k,k)}function Wc(n,o){return n in o}function Xc(n,o){var u=o[n];return typeof u=="undefined"?null:u}function jc(n,o,u,p){for(;u<=p;){var x=u+p>>1;if(o[x]===n)return!0;o[x]>n?p=x-1:u=x+1}return!1}function Dl(n){return{type:n}}In.register(Qf,{error:[Ws,[ba],function(n,o){var u=o[0];throw new vn(u.evaluate(n))}],typeof:[ba,[Aa],function(n,o){var u=o[0];return Ei(sn(u.evaluate(n)))}],"to-rgba":[yo(Er,4),[ws],function(n,o){var u=o[0];return u.evaluate(n).toArray()}],rgb:[ws,[Er,Er,Er],Iv],rgba:[ws,[Er,Er,Er,Er],Iv],has:{type:wa,overloads:[[[ba],function(n,o){var u=o[0];return Wc(u.evaluate(n),n.properties())}],[[ba,gl],function(n,o){var u=o[0],p=o[1];return Wc(u.evaluate(n),p.evaluate(n))}]]},get:{type:Aa,overloads:[[[ba],function(n,o){var u=o[0];return Xc(u.evaluate(n),n.properties())}],[[ba,gl],function(n,o){var u=o[0],p=o[1];return Xc(u.evaluate(n),p.evaluate(n))}]]},"feature-state":[Aa,[ba],function(n,o){var u=o[0];return Xc(u.evaluate(n),n.featureState||{})}],properties:[gl,[],function(n){return n.properties()}],"geometry-type":[ba,[],function(n){return n.geometryType()}],id:[Aa,[],function(n){return n.id()}],zoom:[Er,[],function(n){return n.globals.zoom}],"heatmap-density":[Er,[],function(n){return n.globals.heatmapDensity||0}],"line-progress":[Er,[],function(n){return n.globals.lineProgress||0}],accumulated:[Aa,[],function(n){return n.globals.accumulated===void 0?null:n.globals.accumulated}],"+":[Er,Dl(Er),function(n,o){for(var u=0,p=0,x=o;p":[wa,[ba,Aa],function(n,o){var u=o[0],p=o[1],x=n.properties()[u.value],A=p.value;return typeof x==typeof A&&x>A}],"filter-id->":[wa,[Aa],function(n,o){var u=o[0],p=n.id(),x=u.value;return typeof p==typeof x&&p>x}],"filter-<=":[wa,[ba,Aa],function(n,o){var u=o[0],p=o[1],x=n.properties()[u.value],A=p.value;return typeof x==typeof A&&x<=A}],"filter-id-<=":[wa,[Aa],function(n,o){var u=o[0],p=n.id(),x=u.value;return typeof p==typeof x&&p<=x}],"filter->=":[wa,[ba,Aa],function(n,o){var u=o[0],p=o[1],x=n.properties()[u.value],A=p.value;return typeof x==typeof A&&x>=A}],"filter-id->=":[wa,[Aa],function(n,o){var u=o[0],p=n.id(),x=u.value;return typeof p==typeof x&&p>=x}],"filter-has":[wa,[Aa],function(n,o){var u=o[0];return u.value in n.properties()}],"filter-has-id":[wa,[],function(n){return n.id()!==null&&n.id()!==void 0}],"filter-type-in":[wa,[yo(ba)],function(n,o){var u=o[0];return u.value.indexOf(n.geometryType())>=0}],"filter-id-in":[wa,[yo(Aa)],function(n,o){var u=o[0];return u.value.indexOf(n.id())>=0}],"filter-in-small":[wa,[ba,yo(Aa)],function(n,o){var u=o[0],p=o[1];return p.value.indexOf(n.properties()[u.value])>=0}],"filter-in-large":[wa,[ba,yo(Aa)],function(n,o){var u=o[0],p=o[1];return jc(n.properties()[u.value],p.value,0,p.value.length-1)}],all:{type:wa,overloads:[[[wa,wa],function(n,o){var u=o[0],p=o[1];return u.evaluate(n)&&p.evaluate(n)}],[Dl(wa),function(n,o){for(var u=0,p=o;u-1}function Kc(n){return!!n.expression&&n.expression.interpolated}function di(n){return n instanceof Number?"number":n instanceof String?"string":n instanceof Boolean?"boolean":Array.isArray(n)?"array":n===null?"null":typeof n}function $f(n){return typeof n=="object"&&n!==null&&!Array.isArray(n)}function Mp(n){return n}function Sp(n,o){var u=o.type==="color",p=n.stops&&typeof n.stops[0][0]=="object",x=p||n.property!==void 0,A=p||!x,k=n.type||(Kc(o)?"exponential":"interval");if(u&&(n=pu({},n),n.stops&&(n.stops=n.stops.map(function(cr){return[cr[0],ni.parse(cr[1])]})),n.default?n.default=ni.parse(n.default):n.default=ni.parse(o.default)),n.colorSpace&&n.colorSpace!=="rgb"&&!Cv[n.colorSpace])throw new Error("Unknown color space: "+n.colorSpace);var F,Y,j;if(k==="exponential")F=Rv;else if(k==="interval")F=Cp;else if(k==="categorical"){F=kp,Y=Object.create(null);for(var Q=0,ie=n.stops;Q=n.stops[p-1][0])return n.stops[p-1][1];var x=Hc(n.stops.map(function(A){return A[0]}),u);return n.stops[x][1]}function Rv(n,o,u){var p=n.base!==void 0?n.base:1;if(di(u)!=="number")return Pl(n.default,o.default);var x=n.stops.length;if(x===1||u<=n.stops[0][0])return n.stops[0][1];if(u>=n.stops[x-1][0])return n.stops[x-1][1];var A=Hc(n.stops.map(function(ie){return ie[0]}),u),k=Km(u,p,n.stops[A][0],n.stops[A+1][0]),F=n.stops[A][1],Y=n.stops[A+1][1],j=Ml[o.type]||Mp;if(n.colorSpace&&n.colorSpace!=="rgb"){var Q=Cv[n.colorSpace];j=function(ie,ye){return Q.reverse(Q.interpolate(Q.forward(ie),Q.forward(ye),k))}}return typeof F.evaluate=="function"?{evaluate:function(){for(var ye=[],ve=arguments.length;ve--;)ye[ve]=arguments[ve];var Ce=F.evaluate.apply(void 0,ye),qe=Y.evaluate.apply(void 0,ye);if(!(Ce===void 0||qe===void 0))return j(Ce,qe,k)}}:j(F,Y,k)}function Ep(n,o,u){return o.type==="color"?u=ni.parse(u):o.type==="formatted"?u=xn.fromString(u.toString()):o.type==="resolvedImage"?u=zn.fromString(u.toString()):di(u)!==o.type&&(o.type!=="enum"||!o.values[u])&&(u=void 0),Pl(u,n.default,o.default)}function Km(n,o,u,p){var x=p-u,A=n-u;return x===0?0:o===1?A/x:(Math.pow(o,A)-1)/(Math.pow(o,x)-1)}var zl=function(o,u){this.expression=o,this._warningHistory={},this._evaluator=new js,this._defaultValue=u?$m(u):null,this._enumValues=u&&u.type==="enum"?u.values:null};zl.prototype.evaluateWithoutErrorHandling=function(o,u,p,x,A,k){return this._evaluator.globals=o,this._evaluator.feature=u,this._evaluator.featureState=p,this._evaluator.canonical=x,this._evaluator.availableImages=A||null,this._evaluator.formattedSection=k,this.expression.evaluate(this._evaluator)},zl.prototype.evaluate=function(o,u,p,x,A,k){this._evaluator.globals=o,this._evaluator.feature=u||null,this._evaluator.featureState=p||null,this._evaluator.canonical=x,this._evaluator.availableImages=A||null,this._evaluator.formattedSection=k||null;try{var F=this.expression.evaluate(this._evaluator);if(F==null||typeof F=="number"&&F!==F)return this._defaultValue;if(this._enumValues&&!(F in this._enumValues))throw new vn("Expected value to be one of "+Object.keys(this._enumValues).map(function(Y){return JSON.stringify(Y)}).join(", ")+", but found "+JSON.stringify(F)+" instead.");return F}catch(Y){return this._warningHistory[Y.message]||(this._warningHistory[Y.message]=!0,typeof console!="undefined"&&console.warn(Y.message)),this._defaultValue}};function wu(n){return Array.isArray(n)&&n.length>0&&typeof n[0]=="string"&&n[0]in Qf}function ec(n,o){var u=new Al(Qf,[],o?Fv(o):void 0),p=u.parse(n,void 0,void 0,void 0,o&&o.type==="string"?{typeAnnotation:"coerce"}:void 0);return p?Jc(new zl(p,o)):bu(u.errors)}var ks=function(o,u){this.kind=o,this._styleExpression=u,this.isStateDependent=o!=="constant"&&!wl(u.expression)};ks.prototype.evaluateWithoutErrorHandling=function(o,u,p,x,A,k){return this._styleExpression.evaluateWithoutErrorHandling(o,u,p,x,A,k)},ks.prototype.evaluate=function(o,u,p,x,A,k){return this._styleExpression.evaluate(o,u,p,x,A,k)};var Cs=function(o,u,p,x){this.kind=o,this.zoomStops=p,this._styleExpression=u,this.isStateDependent=o!=="camera"&&!wl(u.expression),this.interpolationType=x};Cs.prototype.evaluateWithoutErrorHandling=function(o,u,p,x,A,k){return this._styleExpression.evaluateWithoutErrorHandling(o,u,p,x,A,k)},Cs.prototype.evaluate=function(o,u,p,x,A,k){return this._styleExpression.evaluate(o,u,p,x,A,k)},Cs.prototype.interpolationFactor=function(o,u,p){return this.interpolationType?bn.interpolationFactor(this.interpolationType,o,u,p):0};function Xo(n,o){if(n=ec(n,o),n.result==="error")return n;var u=n.value.expression,p=Uc(u);if(!p&&!sf(o))return bu([new bs("","data expressions not supported")]);var x=Vc(u,["zoom"]);if(!x&&!Ap(o))return bu([new bs("","zoom expressions not supported")]);var A=uf(u);if(!A&&!x)return bu([new bs("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(A instanceof bs)return bu([A]);if(A instanceof bn&&!Kc(o))return bu([new bs("",'"interpolate" expressions cannot be used with this property')]);if(!A)return Jc(p?new ks("constant",n.value):new ks("source",n.value));var k=A instanceof bn?A.interpolation:void 0;return Jc(p?new Cs("camera",n.value,A.labels,k):new Cs("composite",n.value,A.labels,k))}var lf=function(o,u){this._parameters=o,this._specification=u,pu(this,Sp(this._parameters,this._specification))};lf.deserialize=function(o){return new lf(o._parameters,o._specification)},lf.serialize=function(o){return{_parameters:o._parameters,_specification:o._specification}};function Qm(n,o){if($f(n))return new lf(n,o);if(wu(n)){var u=Xo(n,o);if(u.result==="error")throw new Error(u.value.map(function(x){return x.key+": "+x.message}).join(", "));return u.value}else{var p=n;return typeof n=="string"&&o.type==="color"&&(p=ni.parse(n)),{kind:"constant",evaluate:function(){return p}}}}function uf(n){var o=null;if(n instanceof Sl)o=uf(n.result);else if(n instanceof Js)for(var u=0,p=n.args;up.maximum?[new Ur(o,u,u+" is greater than the maximum value "+p.maximum)]:[]}function Qc(n){var o=n.valueSpec,u=on(n.value.type),p,x={},A,k,F=u!=="categorical"&&n.value.property===void 0,Y=!F,j=di(n.value.stops)==="array"&&di(n.value.stops[0])==="array"&&di(n.value.stops[0][0])==="object",Q=ds({key:n.key,value:n.value,valueSpec:n.styleSpec.function,style:n.style,styleSpec:n.styleSpec,objectElementValidators:{stops:ie,default:Ce}});return u==="identity"&&F&&Q.push(new Ur(n.key,n.value,'missing required property "property"')),u!=="identity"&&!n.value.stops&&Q.push(new Ur(n.key,n.value,'missing required property "stops"')),u==="exponential"&&n.valueSpec.expression&&!Kc(n.valueSpec)&&Q.push(new Ur(n.key,n.value,"exponential functions not supported")),n.styleSpec.$version>=8&&(Y&&!sf(n.valueSpec)?Q.push(new Ur(n.key,n.value,"property functions not supported")):F&&!Ap(n.valueSpec)&&Q.push(new Ur(n.key,n.value,"zoom functions not supported"))),(u==="categorical"||j)&&n.value.property===void 0&&Q.push(new Ur(n.key,n.value,'"property" property is required')),Q;function ie(qe){if(u==="identity")return[new Ur(qe.key,qe.value,'identity function may not have a "stops" property')];var ut=[],et=qe.value;return ut=ut.concat(qv({key:qe.key,value:et,valueSpec:qe.valueSpec,style:qe.style,styleSpec:qe.styleSpec,arrayElementValidator:ye})),di(et)==="array"&&et.length===0&&ut.push(new Ur(qe.key,et,"array must have at least one stop")),ut}function ye(qe){var ut=[],et=qe.value,kt=qe.key;if(di(et)!=="array")return[new Ur(kt,et,"array expected, "+di(et)+" found")];if(et.length!==2)return[new Ur(kt,et,"array length 2 expected, length "+et.length+" found")];if(j){if(di(et[0])!=="object")return[new Ur(kt,et,"object expected, "+di(et[0])+" found")];if(et[0].zoom===void 0)return[new Ur(kt,et,"object stop key must have zoom")];if(et[0].value===void 0)return[new Ur(kt,et,"object stop key must have value")];if(k&&k>on(et[0].zoom))return[new Ur(kt,et[0].zoom,"stop zoom values must appear in ascending order")];on(et[0].zoom)!==k&&(k=on(et[0].zoom),A=void 0,x={}),ut=ut.concat(ds({key:kt+"[0]",value:et[0],valueSpec:{zoom:{}},style:qe.style,styleSpec:qe.styleSpec,objectElementValidators:{zoom:ff,value:ve}}))}else ut=ut.concat(ve({key:kt+"[0]",value:et[0],valueSpec:{},style:qe.style,styleSpec:qe.styleSpec},et));return wu(yl(et[1]))?ut.concat([new Ur(kt+"[1]",et[1],"expressions are not allowed in function stops.")]):ut.concat(li({key:kt+"[1]",value:et[1],valueSpec:o,style:qe.style,styleSpec:qe.styleSpec}))}function ve(qe,ut){var et=di(qe.value),kt=on(qe.value),_t=qe.value!==null?qe.value:ut;if(!p)p=et;else if(et!==p)return[new Ur(qe.key,_t,et+" stop domain type must match previous stop domain type "+p)];if(et!=="number"&&et!=="string"&&et!=="boolean")return[new Ur(qe.key,_t,"stop domain value must be a number, string, or boolean")];if(et!=="number"&&u!=="categorical"){var Mt="number expected, "+et+" found";return sf(o)&&u===void 0&&(Mt+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new Ur(qe.key,_t,Mt)]}return u==="categorical"&&et==="number"&&(!isFinite(kt)||Math.floor(kt)!==kt)?[new Ur(qe.key,_t,"integer expected, found "+kt)]:u!=="categorical"&&et==="number"&&A!==void 0&&kt=2&&n[1]!=="$id"&&n[1]!=="$type";case"in":return n.length>=3&&(typeof n[1]!="string"||Array.isArray(n[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return n.length!==3||Array.isArray(n[1])||Array.isArray(n[2]);case"any":case"all":for(var o=0,u=n.slice(1);oo?1:0}function hf(n){if(!Array.isArray(n))return!1;if(n[0]==="within")return!0;for(var o=1;o"||o==="<="||o===">="?Nv(n[1],n[2],o):o==="any"?ry(n.slice(1)):o==="all"?["all"].concat(n.slice(1).map(vf)):o==="none"?["all"].concat(n.slice(1).map(vf).map(tc)):o==="in"?Dp(n[1],n.slice(2)):o==="!in"?tc(Dp(n[1],n.slice(2))):o==="has"?Bv(n[1]):o==="!has"?tc(Bv(n[1])):o==="within"?n:!0;return u}function Nv(n,o,u){switch(n){case"$type":return["filter-type-"+u,o];case"$id":return["filter-id-"+u,o];default:return["filter-"+u,n,o]}}function ry(n){return["any"].concat(n.map(vf))}function Dp(n,o){if(o.length===0)return!1;switch(n){case"$type":return["filter-type-in",["literal",o]];case"$id":return["filter-id-in",["literal",o]];default:return o.length>200&&!o.some(function(u){return typeof u!=typeof o[0]})?["filter-in-large",n,["literal",o.sort(Il)]]:["filter-in-small",n,["literal",o]]}}function Bv(n){switch(n){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",n]}}function tc(n){return["!",n]}function eh(n){return go(yl(n.value))?Tu(pu({},n,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Ov(n)}function Ov(n){var o=n.value,u=n.key;if(di(o)!=="array")return[new Ur(u,o,"array expected, "+di(o)+" found")];var p=n.styleSpec,x,A=[];if(o.length<1)return[new Ur(u,o,"filter array must have at least 1 element")];switch(A=A.concat($c({key:u+"[0]",value:o[0],valueSpec:p.filter_operator,style:n.style,styleSpec:n.styleSpec})),on(o[0])){case"<":case"<=":case">":case">=":o.length>=2&&on(o[1])==="$type"&&A.push(new Ur(u,o,'"$type" cannot be use with operator "'+o[0]+'"'));case"==":case"!=":o.length!==3&&A.push(new Ur(u,o,'filter array for operator "'+o[0]+'" must have 3 elements'));case"in":case"!in":o.length>=2&&(x=di(o[1]),x!=="string"&&A.push(new Ur(u+"[1]",o[1],"string expected, "+x+" found")));for(var k=2;k=Q[ve+0]&&p>=Q[ve+1])?(k[ye]=!0,A.push(j[ye])):k[ye]=!1}}},Ls.prototype._forEachCell=function(n,o,u,p,x,A,k,F){for(var Y=this._convertToCellCoord(n),j=this._convertToCellCoord(o),Q=this._convertToCellCoord(u),ie=this._convertToCellCoord(p),ye=Y;ye<=Q;ye++)for(var ve=j;ve<=ie;ve++){var Ce=this.d*ve+ye;if(!(F&&!F(this._convertFromCellCoord(ye),this._convertFromCellCoord(ve),this._convertFromCellCoord(ye+1),this._convertFromCellCoord(ve+1)))&&x.call(this,n,o,u,p,Ce,A,k,F))return}},Ls.prototype._convertFromCellCoord=function(n){return(n-this.padding)/this.scale},Ls.prototype._convertToCellCoord=function(n){return Math.max(0,Math.min(this.d-1,Math.floor(n*this.scale)+this.padding))},Ls.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var n=this.cells,o=Fl+this.cells.length+1+1,u=0,p=0;p=0)){var ie=n[Q];j[Q]=ql[Y].shallow.indexOf(Q)>=0?ie:U(ie,o)}n instanceof Error&&(j.message=n.message)}if(j.$name)throw new Error("$name property is reserved for worker serialization logic.");return Y!=="Object"&&(j.$name=Y),j}throw new Error("can't serialize object of type "+typeof n)}function Z(n){if(n==null||typeof n=="boolean"||typeof n=="number"||typeof n=="string"||n instanceof Boolean||n instanceof Number||n instanceof String||n instanceof Date||n instanceof RegExp||P(n)||N(n)||ArrayBuffer.isView(n)||n instanceof nh)return n;if(Array.isArray(n))return n.map(Z);if(typeof n=="object"){var o=n.$name||"Object",u=ql[o],p=u.klass;if(!p)throw new Error("can't deserialize unregistered class "+o);if(p.deserialize)return p.deserialize(n);for(var x=Object.create(p.prototype),A=0,k=Object.keys(n);A=0?Y:Z(Y)}}return x}throw new Error("can't deserialize object of type "+typeof n)}var $=function(){this.first=!0};$.prototype.update=function(o,u){var p=Math.floor(o);return this.first?(this.first=!1,this.lastIntegerZoom=p,this.lastIntegerZoomTime=0,this.lastZoom=o,this.lastFloorZoom=p,!0):(this.lastFloorZoom>p?(this.lastIntegerZoom=p+1,this.lastIntegerZoomTime=u):this.lastFloorZoom=128&&n<=255},Arabic:function(n){return n>=1536&&n<=1791},"Arabic Supplement":function(n){return n>=1872&&n<=1919},"Arabic Extended-A":function(n){return n>=2208&&n<=2303},"Hangul Jamo":function(n){return n>=4352&&n<=4607},"Unified Canadian Aboriginal Syllabics":function(n){return n>=5120&&n<=5759},Khmer:function(n){return n>=6016&&n<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(n){return n>=6320&&n<=6399},"General Punctuation":function(n){return n>=8192&&n<=8303},"Letterlike Symbols":function(n){return n>=8448&&n<=8527},"Number Forms":function(n){return n>=8528&&n<=8591},"Miscellaneous Technical":function(n){return n>=8960&&n<=9215},"Control Pictures":function(n){return n>=9216&&n<=9279},"Optical Character Recognition":function(n){return n>=9280&&n<=9311},"Enclosed Alphanumerics":function(n){return n>=9312&&n<=9471},"Geometric Shapes":function(n){return n>=9632&&n<=9727},"Miscellaneous Symbols":function(n){return n>=9728&&n<=9983},"Miscellaneous Symbols and Arrows":function(n){return n>=11008&&n<=11263},"CJK Radicals Supplement":function(n){return n>=11904&&n<=12031},"Kangxi Radicals":function(n){return n>=12032&&n<=12255},"Ideographic Description Characters":function(n){return n>=12272&&n<=12287},"CJK Symbols and Punctuation":function(n){return n>=12288&&n<=12351},Hiragana:function(n){return n>=12352&&n<=12447},Katakana:function(n){return n>=12448&&n<=12543},Bopomofo:function(n){return n>=12544&&n<=12591},"Hangul Compatibility Jamo":function(n){return n>=12592&&n<=12687},Kanbun:function(n){return n>=12688&&n<=12703},"Bopomofo Extended":function(n){return n>=12704&&n<=12735},"CJK Strokes":function(n){return n>=12736&&n<=12783},"Katakana Phonetic Extensions":function(n){return n>=12784&&n<=12799},"Enclosed CJK Letters and Months":function(n){return n>=12800&&n<=13055},"CJK Compatibility":function(n){return n>=13056&&n<=13311},"CJK Unified Ideographs Extension A":function(n){return n>=13312&&n<=19903},"Yijing Hexagram Symbols":function(n){return n>=19904&&n<=19967},"CJK Unified Ideographs":function(n){return n>=19968&&n<=40959},"Yi Syllables":function(n){return n>=40960&&n<=42127},"Yi Radicals":function(n){return n>=42128&&n<=42191},"Hangul Jamo Extended-A":function(n){return n>=43360&&n<=43391},"Hangul Syllables":function(n){return n>=44032&&n<=55215},"Hangul Jamo Extended-B":function(n){return n>=55216&&n<=55295},"Private Use Area":function(n){return n>=57344&&n<=63743},"CJK Compatibility Ideographs":function(n){return n>=63744&&n<=64255},"Arabic Presentation Forms-A":function(n){return n>=64336&&n<=65023},"Vertical Forms":function(n){return n>=65040&&n<=65055},"CJK Compatibility Forms":function(n){return n>=65072&&n<=65103},"Small Form Variants":function(n){return n>=65104&&n<=65135},"Arabic Presentation Forms-B":function(n){return n>=65136&&n<=65279},"Halfwidth and Fullwidth Forms":function(n){return n>=65280&&n<=65519}};function ae(n){for(var o=0,u=n;o=65097&&n<=65103)||X["CJK Compatibility Ideographs"](n)||X["CJK Compatibility"](n)||X["CJK Radicals Supplement"](n)||X["CJK Strokes"](n)||X["CJK Symbols and Punctuation"](n)&&!(n>=12296&&n<=12305)&&!(n>=12308&&n<=12319)&&n!==12336||X["CJK Unified Ideographs Extension A"](n)||X["CJK Unified Ideographs"](n)||X["Enclosed CJK Letters and Months"](n)||X["Hangul Compatibility Jamo"](n)||X["Hangul Jamo Extended-A"](n)||X["Hangul Jamo Extended-B"](n)||X["Hangul Jamo"](n)||X["Hangul Syllables"](n)||X.Hiragana(n)||X["Ideographic Description Characters"](n)||X.Kanbun(n)||X["Kangxi Radicals"](n)||X["Katakana Phonetic Extensions"](n)||X.Katakana(n)&&n!==12540||X["Halfwidth and Fullwidth Forms"](n)&&n!==65288&&n!==65289&&n!==65293&&!(n>=65306&&n<=65310)&&n!==65339&&n!==65341&&n!==65343&&!(n>=65371&&n<=65503)&&n!==65507&&!(n>=65512&&n<=65519)||X["Small Form Variants"](n)&&!(n>=65112&&n<=65118)&&!(n>=65123&&n<=65126)||X["Unified Canadian Aboriginal Syllabics"](n)||X["Unified Canadian Aboriginal Syllabics Extended"](n)||X["Vertical Forms"](n)||X["Yijing Hexagram Symbols"](n)||X["Yi Syllables"](n)||X["Yi Radicals"](n))}function Qe(n){return!!(X["Latin-1 Supplement"](n)&&(n===167||n===169||n===174||n===177||n===188||n===189||n===190||n===215||n===247)||X["General Punctuation"](n)&&(n===8214||n===8224||n===8225||n===8240||n===8241||n===8251||n===8252||n===8258||n===8263||n===8264||n===8265||n===8273)||X["Letterlike Symbols"](n)||X["Number Forms"](n)||X["Miscellaneous Technical"](n)&&(n>=8960&&n<=8967||n>=8972&&n<=8991||n>=8996&&n<=9e3||n===9003||n>=9085&&n<=9114||n>=9150&&n<=9165||n===9167||n>=9169&&n<=9179||n>=9186&&n<=9215)||X["Control Pictures"](n)&&n!==9251||X["Optical Character Recognition"](n)||X["Enclosed Alphanumerics"](n)||X["Geometric Shapes"](n)||X["Miscellaneous Symbols"](n)&&!(n>=9754&&n<=9759)||X["Miscellaneous Symbols and Arrows"](n)&&(n>=11026&&n<=11055||n>=11088&&n<=11097||n>=11192&&n<=11243)||X["CJK Symbols and Punctuation"](n)||X.Katakana(n)||X["Private Use Area"](n)||X["CJK Compatibility Forms"](n)||X["Small Form Variants"](n)||X["Halfwidth and Fullwidth Forms"](n)||n===8734||n===8756||n===8757||n>=9984&&n<=10087||n>=10102&&n<=10131||n===65532||n===65533)}function ot(n){return!(Pe(n)||Qe(n))}function Ie(n){return X.Arabic(n)||X["Arabic Supplement"](n)||X["Arabic Extended-A"](n)||X["Arabic Presentation Forms-A"](n)||X["Arabic Presentation Forms-B"](n)}function Ve(n){return n>=1424&&n<=2303||X["Arabic Presentation Forms-A"](n)||X["Arabic Presentation Forms-B"](n)}function Ke(n,o){return!(!o&&Ve(n)||n>=2304&&n<=3583||n>=3840&&n<=4255||X.Khmer(n))}function ft(n){for(var o=0,u=n;o-1&&(or=Xe.error),Gt&&Gt(n)};function zr(){Rr.fire(new ri("pluginStateChange",{pluginStatus:or,pluginURL:hr}))}var Rr=new gr,ea=function(){return or},Vr=function(n){return n({pluginStatus:or,pluginURL:hr}),Rr.on("pluginStateChange",n),n},Jr=function(n,o,u){if(u===void 0&&(u=!1),or===Xe.deferred||or===Xe.loading||or===Xe.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");hr=dt.resolveURL(n),or=Xe.deferred,Gt=o,zr(),u||Na()},Na=function(){if(or!==Xe.deferred||!hr)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");or=Xe.loading,zr(),hr&&$e({url:hr},function(n){n?fr(n):(or=Xe.loaded,zr())})},ei={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return or===Xe.loaded||ei.applyArabicShaping!=null},isLoading:function(){return or===Xe.loading},setState:function(o){or=o.pluginStatus,hr=o.pluginURL},isParsed:function(){return ei.applyArabicShaping!=null&&ei.processBidirectionalText!=null&&ei.processStyledBidirectionalText!=null},getPluginURL:function(){return hr}},Qa=function(){!ei.isLoading()&&!ei.isLoaded()&&ea()==="deferred"&&Na()},jt=function(o,u){this.zoom=o,u?(this.now=u.now,this.fadeDuration=u.fadeDuration,this.zoomHistory=u.zoomHistory,this.transition=u.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new $,this.transition={})};jt.prototype.isSupportedScript=function(o){return nt(o,ei.isLoaded())},jt.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},jt.prototype.getCrossfadeParameters=function(){var o=this.zoom,u=o-Math.floor(o),p=this.crossFadingFactor();return o>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:u+(1-u)*p}:{fromScale:.5,toScale:1,t:1-(1-p)*u}};var jr=function(o,u){this.property=o,this.value=u,this.expression=Qm(u===void 0?o.specification.default:u,o.specification)};jr.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},jr.prototype.possiblyEvaluate=function(o,u,p){return this.property.possiblyEvaluate(this,o,u,p)};var na=function(o){this.property=o,this.value=new jr(o,void 0)};na.prototype.transitioned=function(o,u){return new Di(this.property,this.value,u,H({},o.transition,this.transition),o.now)},na.prototype.untransitioned=function(){return new Di(this.property,this.value,null,{},0)};var oa=function(o){this._properties=o,this._values=Object.create(o.defaultTransitionablePropertyValues)};oa.prototype.getValue=function(o){return Ae(this._values[o].value.value)},oa.prototype.setValue=function(o,u){this._values.hasOwnProperty(o)||(this._values[o]=new na(this._values[o].property)),this._values[o].value=new jr(this._values[o].property,u===null?void 0:Ae(u))},oa.prototype.getTransition=function(o){return Ae(this._values[o].transition)},oa.prototype.setTransition=function(o,u){this._values.hasOwnProperty(o)||(this._values[o]=new na(this._values[o].property)),this._values[o].transition=Ae(u)||void 0},oa.prototype.serialize=function(){for(var o={},u=0,p=Object.keys(this._values);uthis.end)return this.prior=null,A;if(this.value.isDataDriven())return this.prior=null,A;if(xk.zoomHistory.lastIntegerZoom?{from:p,to:x}:{from:A,to:x}},o.prototype.interpolate=function(p){return p},o}(Hr),Ai=function(o){this.specification=o};Ai.prototype.possiblyEvaluate=function(o,u,p,x){if(o.value!==void 0)if(o.expression.kind==="constant"){var A=o.expression.evaluate(u,null,{},p,x);return this._calculate(A,A,A,u)}else return this._calculate(o.expression.evaluate(new jt(Math.floor(u.zoom-1),u)),o.expression.evaluate(new jt(Math.floor(u.zoom),u)),o.expression.evaluate(new jt(Math.floor(u.zoom+1),u)),u)},Ai.prototype._calculate=function(o,u,p,x){var A=x.zoom;return A>x.zoomHistory.lastIntegerZoom?{from:o,to:u}:{from:p,to:u}},Ai.prototype.interpolate=function(o){return o};var lo=function(o){this.specification=o};lo.prototype.possiblyEvaluate=function(o,u,p,x){return!!o.expression.evaluate(u,null,{},p,x)},lo.prototype.interpolate=function(){return!1};var Rn=function(o){this.properties=o,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(var u in o){var p=o[u];p.specification.overridable&&this.overridableProperties.push(u);var x=this.defaultPropertyValues[u]=new jr(p,void 0),A=this.defaultTransitionablePropertyValues[u]=new na(p);this.defaultTransitioningPropertyValues[u]=A.untransitioned(),this.defaultPossiblyEvaluatedValues[u]=x.possiblyEvaluate({})}};y("DataDrivenProperty",Hr),y("DataConstantProperty",Tr),y("CrossFadedDataDrivenProperty",Ni),y("CrossFadedProperty",Ai),y("ColorRampProperty",lo);var pn="-transition",pi=function(n){function o(u,p){if(n.call(this),this.id=u.id,this.type=u.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},u.type!=="custom"&&(u=u,this.metadata=u.metadata,this.minzoom=u.minzoom,this.maxzoom=u.maxzoom,u.type!=="background"&&(this.source=u.source,this.sourceLayer=u["source-layer"],this.filter=u.filter),p.layout&&(this._unevaluatedLayout=new en(p.layout)),p.paint)){this._transitionablePaint=new oa(p.paint);for(var x in u.paint)this.setPaintProperty(x,u.paint[x],{validate:!1});for(var A in u.layout)this.setLayoutProperty(A,u.layout[A],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new wn(p.paint)}}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},o.prototype.getLayoutProperty=function(p){return p==="visibility"?this.visibility:this._unevaluatedLayout.getValue(p)},o.prototype.setLayoutProperty=function(p,x,A){if(A===void 0&&(A={}),x!=null){var k="layers."+this.id+".layout."+p;if(this._validate(Rl,k,p,x,A))return}if(p==="visibility"){this.visibility=x;return}this._unevaluatedLayout.setValue(p,x)},o.prototype.getPaintProperty=function(p){return he(p,pn)?this._transitionablePaint.getTransition(p.slice(0,-pn.length)):this._transitionablePaint.getValue(p)},o.prototype.setPaintProperty=function(p,x,A){if(A===void 0&&(A={}),x!=null){var k="layers."+this.id+".paint."+p;if(this._validate(ih,k,p,x,A))return!1}if(he(p,pn))return this._transitionablePaint.setTransition(p.slice(0,-pn.length),x||void 0),!1;var F=this._transitionablePaint._values[p],Y=F.property.specification["property-type"]==="cross-faded-data-driven",j=F.value.isDataDriven(),Q=F.value;this._transitionablePaint.setValue(p,x),this._handleSpecialPaintPropertyUpdate(p);var ie=this._transitionablePaint._values[p].value,ye=ie.isDataDriven();return ye||j||Y||this._handleOverridablePaintPropertyUpdate(p,Q,ie)},o.prototype._handleSpecialPaintPropertyUpdate=function(p){},o.prototype._handleOverridablePaintPropertyUpdate=function(p,x,A){return!1},o.prototype.isHidden=function(p){return this.minzoom&&p=this.maxzoom?!0:this.visibility==="none"},o.prototype.updateTransitions=function(p){this._transitioningPaint=this._transitionablePaint.transitioned(p,this._transitioningPaint)},o.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},o.prototype.recalculate=function(p,x){p.getCrossfadeParameters&&(this._crossfadeParameters=p.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(p,void 0,x)),this.paint=this._transitioningPaint.possiblyEvaluate(p,void 0,x)},o.prototype.serialize=function(){var p={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(p.layout=p.layout||{},p.layout.visibility=this.visibility),Se(p,function(x,A){return x!==void 0&&!(A==="layout"&&!Object.keys(x).length)&&!(A==="paint"&&!Object.keys(x).length)})},o.prototype._validate=function(p,x,A,k,F){return F===void 0&&(F={}),F&&F.validate===!1?!1:rc(this,p.call($a,{key:x,layerType:this.type,objectKey:A,value:k,styleSpec:Xt,style:{glyphs:!0,sprite:!0}}))},o.prototype.is3D=function(){return!1},o.prototype.isTileClipped=function(){return!1},o.prototype.hasOffscreenPass=function(){return!1},o.prototype.resize=function(){},o.prototype.isStateDependent=function(){for(var p in this.paint._values){var x=this.paint.get(p);if(!(!(x instanceof bi)||!sf(x.property.specification))&&(x.value.kind==="source"||x.value.kind==="composite")&&x.value.isStateDependent)return!0}return!1},o}(gr),jo={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},uo=function(o,u){this._structArray=o,this._pos1=u*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},ci=128,gf=5,Ta=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};Ta.serialize=function(o,u){return o._trim(),u&&(o.isTransferred=!0,u.push(o.arrayBuffer)),{length:o.length,arrayBuffer:o.arrayBuffer}},Ta.deserialize=function(o){var u=Object.create(this.prototype);return u.arrayBuffer=o.arrayBuffer,u.length=o.length,u.capacity=o.arrayBuffer.byteLength/u.bytesPerElement,u._refreshViews(),u},Ta.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},Ta.prototype.clear=function(){this.length=0},Ta.prototype.resize=function(o){this.reserve(o),this.length=o},Ta.prototype.reserve=function(o){if(o>this.capacity){this.capacity=Math.max(o,Math.floor(this.capacity*gf),ci),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var u=this.uint8;this._refreshViews(),u&&this.uint8.set(u)}},Ta.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};function ui(n,o){o===void 0&&(o=1);var u=0,p=0,x=n.map(function(k){var F=Nl(k.type),Y=u=Hv(u,Math.max(o,F)),j=k.components||1;return p=Math.max(p,F),u+=F*j,{name:k.name,type:k.type,components:j,offset:Y}}),A=Hv(u,Math.max(p,o));return{members:x,size:A,alignment:o}}function Nl(n){return jo[n].BYTES_PER_ELEMENT}function Hv(n,o){return Math.ceil(n/o)*o}var ac=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x){var A=this.length;return this.resize(A+1),this.emplace(A,p,x)},o.prototype.emplace=function(p,x,A){var k=p*2;return this.int16[k+0]=x,this.int16[k+1]=A,p},o}(Ta);ac.prototype.bytesPerElement=4,y("StructArrayLayout2i4",ac);var ay=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k){var F=this.length;return this.resize(F+1),this.emplace(F,p,x,A,k)},o.prototype.emplace=function(p,x,A,k,F){var Y=p*4;return this.int16[Y+0]=x,this.int16[Y+1]=A,this.int16[Y+2]=k,this.int16[Y+3]=F,p},o}(Ta);ay.prototype.bytesPerElement=8,y("StructArrayLayout4i8",ay);var _f=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y){var j=this.length;return this.resize(j+1),this.emplace(j,p,x,A,k,F,Y)},o.prototype.emplace=function(p,x,A,k,F,Y,j){var Q=p*6;return this.int16[Q+0]=x,this.int16[Q+1]=A,this.int16[Q+2]=k,this.int16[Q+3]=F,this.int16[Q+4]=Y,this.int16[Q+5]=j,p},o}(Ta);_f.prototype.bytesPerElement=12,y("StructArrayLayout2i4i12",_f);var oh=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y){var j=this.length;return this.resize(j+1),this.emplace(j,p,x,A,k,F,Y)},o.prototype.emplace=function(p,x,A,k,F,Y,j){var Q=p*4,ie=p*8;return this.int16[Q+0]=x,this.int16[Q+1]=A,this.uint8[ie+4]=k,this.uint8[ie+5]=F,this.uint8[ie+6]=Y,this.uint8[ie+7]=j,p},o}(Ta);oh.prototype.bytesPerElement=8,y("StructArrayLayout2i4ub8",oh);var sh=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x){var A=this.length;return this.resize(A+1),this.emplace(A,p,x)},o.prototype.emplace=function(p,x,A){var k=p*2;return this.float32[k+0]=x,this.float32[k+1]=A,p},o}(Ta);sh.prototype.bytesPerElement=8,y("StructArrayLayout2f8",sh);var Lo=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y,j,Q,ie,ye){var ve=this.length;return this.resize(ve+1),this.emplace(ve,p,x,A,k,F,Y,j,Q,ie,ye)},o.prototype.emplace=function(p,x,A,k,F,Y,j,Q,ie,ye,ve){var Ce=p*10;return this.uint16[Ce+0]=x,this.uint16[Ce+1]=A,this.uint16[Ce+2]=k,this.uint16[Ce+3]=F,this.uint16[Ce+4]=Y,this.uint16[Ce+5]=j,this.uint16[Ce+6]=Q,this.uint16[Ce+7]=ie,this.uint16[Ce+8]=ye,this.uint16[Ce+9]=ve,p},o}(Ta);Lo.prototype.bytesPerElement=20,y("StructArrayLayout10ui20",Lo);var xf=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y,j,Q,ie,ye,ve,Ce){var qe=this.length;return this.resize(qe+1),this.emplace(qe,p,x,A,k,F,Y,j,Q,ie,ye,ve,Ce)},o.prototype.emplace=function(p,x,A,k,F,Y,j,Q,ie,ye,ve,Ce,qe){var ut=p*12;return this.int16[ut+0]=x,this.int16[ut+1]=A,this.int16[ut+2]=k,this.int16[ut+3]=F,this.uint16[ut+4]=Y,this.uint16[ut+5]=j,this.uint16[ut+6]=Q,this.uint16[ut+7]=ie,this.int16[ut+8]=ye,this.int16[ut+9]=ve,this.int16[ut+10]=Ce,this.int16[ut+11]=qe,p},o}(Ta);xf.prototype.bytesPerElement=24,y("StructArrayLayout4i4ui4i24",xf);var iy=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A){var k=this.length;return this.resize(k+1),this.emplace(k,p,x,A)},o.prototype.emplace=function(p,x,A,k){var F=p*3;return this.float32[F+0]=x,this.float32[F+1]=A,this.float32[F+2]=k,p},o}(Ta);iy.prototype.bytesPerElement=12,y("StructArrayLayout3f12",iy);var ny=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p){var x=this.length;return this.resize(x+1),this.emplace(x,p)},o.prototype.emplace=function(p,x){var A=p*1;return this.uint32[A+0]=x,p},o}(Ta);ny.prototype.bytesPerElement=4,y("StructArrayLayout1ul4",ny);var Gv=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y,j,Q,ie){var ye=this.length;return this.resize(ye+1),this.emplace(ye,p,x,A,k,F,Y,j,Q,ie)},o.prototype.emplace=function(p,x,A,k,F,Y,j,Q,ie,ye){var ve=p*10,Ce=p*5;return this.int16[ve+0]=x,this.int16[ve+1]=A,this.int16[ve+2]=k,this.int16[ve+3]=F,this.int16[ve+4]=Y,this.int16[ve+5]=j,this.uint32[Ce+3]=Q,this.uint16[ve+8]=ie,this.uint16[ve+9]=ye,p},o}(Ta);Gv.prototype.bytesPerElement=20,y("StructArrayLayout6i1ul2ui20",Gv);var Fp=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y){var j=this.length;return this.resize(j+1),this.emplace(j,p,x,A,k,F,Y)},o.prototype.emplace=function(p,x,A,k,F,Y,j){var Q=p*6;return this.int16[Q+0]=x,this.int16[Q+1]=A,this.int16[Q+2]=k,this.int16[Q+3]=F,this.int16[Q+4]=Y,this.int16[Q+5]=j,p},o}(Ta);Fp.prototype.bytesPerElement=12,y("StructArrayLayout2i2i2i12",Fp);var Mu=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F){var Y=this.length;return this.resize(Y+1),this.emplace(Y,p,x,A,k,F)},o.prototype.emplace=function(p,x,A,k,F,Y){var j=p*4,Q=p*8;return this.float32[j+0]=x,this.float32[j+1]=A,this.float32[j+2]=k,this.int16[Q+6]=F,this.int16[Q+7]=Y,p},o}(Ta);Mu.prototype.bytesPerElement=16,y("StructArrayLayout2f1f2i16",Mu);var Jo=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k){var F=this.length;return this.resize(F+1),this.emplace(F,p,x,A,k)},o.prototype.emplace=function(p,x,A,k,F){var Y=p*12,j=p*3;return this.uint8[Y+0]=x,this.uint8[Y+1]=A,this.float32[j+1]=k,this.float32[j+2]=F,p},o}(Ta);Jo.prototype.bytesPerElement=12,y("StructArrayLayout2ub2f12",Jo);var Su=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A){var k=this.length;return this.resize(k+1),this.emplace(k,p,x,A)},o.prototype.emplace=function(p,x,A,k){var F=p*3;return this.uint16[F+0]=x,this.uint16[F+1]=A,this.uint16[F+2]=k,p},o}(Ta);Su.prototype.bytesPerElement=6,y("StructArrayLayout3ui6",Su);var Zv=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y,j,Q,ie,ye,ve,Ce,qe,ut,et,kt,_t){var Mt=this.length;return this.resize(Mt+1),this.emplace(Mt,p,x,A,k,F,Y,j,Q,ie,ye,ve,Ce,qe,ut,et,kt,_t)},o.prototype.emplace=function(p,x,A,k,F,Y,j,Q,ie,ye,ve,Ce,qe,ut,et,kt,_t,Mt){var It=p*24,Jt=p*12,dr=p*48;return this.int16[It+0]=x,this.int16[It+1]=A,this.uint16[It+2]=k,this.uint16[It+3]=F,this.uint32[Jt+2]=Y,this.uint32[Jt+3]=j,this.uint32[Jt+4]=Q,this.uint16[It+10]=ie,this.uint16[It+11]=ye,this.uint16[It+12]=ve,this.float32[Jt+7]=Ce,this.float32[Jt+8]=qe,this.uint8[dr+36]=ut,this.uint8[dr+37]=et,this.uint8[dr+38]=kt,this.uint32[Jt+10]=_t,this.int16[It+22]=Mt,p},o}(Ta);Zv.prototype.bytesPerElement=48,y("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Zv);var qp=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k,F,Y,j,Q,ie,ye,ve,Ce,qe,ut,et,kt,_t,Mt,It,Jt,dr,cr,Fr,Cr,Ir,Kr,qr,Br){var ya=this.length;return this.resize(ya+1),this.emplace(ya,p,x,A,k,F,Y,j,Q,ie,ye,ve,Ce,qe,ut,et,kt,_t,Mt,It,Jt,dr,cr,Fr,Cr,Ir,Kr,qr,Br)},o.prototype.emplace=function(p,x,A,k,F,Y,j,Q,ie,ye,ve,Ce,qe,ut,et,kt,_t,Mt,It,Jt,dr,cr,Fr,Cr,Ir,Kr,qr,Br,ya){var Xr=p*34,Ya=p*17;return this.int16[Xr+0]=x,this.int16[Xr+1]=A,this.int16[Xr+2]=k,this.int16[Xr+3]=F,this.int16[Xr+4]=Y,this.int16[Xr+5]=j,this.int16[Xr+6]=Q,this.int16[Xr+7]=ie,this.uint16[Xr+8]=ye,this.uint16[Xr+9]=ve,this.uint16[Xr+10]=Ce,this.uint16[Xr+11]=qe,this.uint16[Xr+12]=ut,this.uint16[Xr+13]=et,this.uint16[Xr+14]=kt,this.uint16[Xr+15]=_t,this.uint16[Xr+16]=Mt,this.uint16[Xr+17]=It,this.uint16[Xr+18]=Jt,this.uint16[Xr+19]=dr,this.uint16[Xr+20]=cr,this.uint16[Xr+21]=Fr,this.uint16[Xr+22]=Cr,this.uint32[Ya+12]=Ir,this.float32[Ya+13]=Kr,this.float32[Ya+14]=qr,this.float32[Ya+15]=Br,this.float32[Ya+16]=ya,p},o}(Ta);qp.prototype.bytesPerElement=68,y("StructArrayLayout8i15ui1ul4f68",qp);var lh=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p){var x=this.length;return this.resize(x+1),this.emplace(x,p)},o.prototype.emplace=function(p,x){var A=p*1;return this.float32[A+0]=x,p},o}(Ta);lh.prototype.bytesPerElement=4,y("StructArrayLayout1f4",lh);var oy=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A){var k=this.length;return this.resize(k+1),this.emplace(k,p,x,A)},o.prototype.emplace=function(p,x,A,k){var F=p*3;return this.int16[F+0]=x,this.int16[F+1]=A,this.int16[F+2]=k,p},o}(Ta);oy.prototype.bytesPerElement=6,y("StructArrayLayout3i6",oy);var bf=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A){var k=this.length;return this.resize(k+1),this.emplace(k,p,x,A)},o.prototype.emplace=function(p,x,A,k){var F=p*2,Y=p*4;return this.uint32[F+0]=x,this.uint16[Y+2]=A,this.uint16[Y+3]=k,p},o}(Ta);bf.prototype.bytesPerElement=8,y("StructArrayLayout1ul2ui8",bf);var Yv=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x){var A=this.length;return this.resize(A+1),this.emplace(A,p,x)},o.prototype.emplace=function(p,x,A){var k=p*2;return this.uint16[k+0]=x,this.uint16[k+1]=A,p},o}(Ta);Yv.prototype.bytesPerElement=4,y("StructArrayLayout2ui4",Yv);var uh=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p){var x=this.length;return this.resize(x+1),this.emplace(x,p)},o.prototype.emplace=function(p,x){var A=p*1;return this.uint16[A+0]=x,p},o}(Ta);uh.prototype.bytesPerElement=2,y("StructArrayLayout1ui2",uh);var ic=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},o.prototype.emplaceBack=function(p,x,A,k){var F=this.length;return this.resize(F+1),this.emplace(F,p,x,A,k)},o.prototype.emplace=function(p,x,A,k,F){var Y=p*4;return this.float32[Y+0]=x,this.float32[Y+1]=A,this.float32[Y+2]=k,this.float32[Y+3]=F,p},o}(Ta);ic.prototype.bytesPerElement=16,y("StructArrayLayout4f16",ic);var _1=function(n){function o(){n.apply(this,arguments)}n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o;var u={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return u.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},u.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},u.x1.get=function(){return this._structArray.int16[this._pos2+2]},u.y1.get=function(){return this._structArray.int16[this._pos2+3]},u.x2.get=function(){return this._structArray.int16[this._pos2+4]},u.y2.get=function(){return this._structArray.int16[this._pos2+5]},u.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},u.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},u.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},u.anchorPoint.get=function(){return new v(this.anchorPointX,this.anchorPointY)},Object.defineProperties(o.prototype,u),o}(uo);_1.prototype.size=20;var sy=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.get=function(p){return new _1(this,p)},o}(Gv);y("CollisionBoxArray",sy);var nc=function(n){function o(){n.apply(this,arguments)}n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o;var u={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return u.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},u.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},u.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},u.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},u.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},u.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},u.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},u.segment.get=function(){return this._structArray.uint16[this._pos2+10]},u.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},u.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},u.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},u.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},u.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},u.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},u.placedOrientation.set=function(p){this._structArray.uint8[this._pos1+37]=p},u.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},u.hidden.set=function(p){this._structArray.uint8[this._pos1+38]=p},u.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},u.crossTileID.set=function(p){this._structArray.uint32[this._pos4+10]=p},u.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(o.prototype,u),o}(uo);nc.prototype.size=48;var ly=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.get=function(p){return new nc(this,p)},o}(Zv);y("PlacedSymbolArray",ly);var fh=function(n){function o(){n.apply(this,arguments)}n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o;var u={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return u.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},u.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},u.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},u.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},u.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},u.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},u.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},u.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},u.key.get=function(){return this._structArray.uint16[this._pos2+8]},u.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},u.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},u.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},u.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},u.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},u.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},u.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},u.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},u.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},u.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},u.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},u.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},u.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},u.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},u.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},u.crossTileID.set=function(p){this._structArray.uint32[this._pos4+12]=p},u.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},u.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},u.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},u.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(o.prototype,u),o}(uo);fh.prototype.size=68;var x1=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.get=function(p){return new fh(this,p)},o}(qp);y("SymbolInstanceArray",x1);var b1=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.getoffsetX=function(p){return this.float32[p*1+0]},o}(lh);y("GlyphOffsetArray",b1);var Qs=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.getx=function(p){return this.int16[p*3+0]},o.prototype.gety=function(p){return this.int16[p*3+1]},o.prototype.gettileUnitDistanceFromAnchor=function(p){return this.int16[p*3+2]},o}(oy);y("SymbolLineVertexArray",Qs);var w1=function(n){function o(){n.apply(this,arguments)}n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o;var u={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return u.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},u.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},u.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(o.prototype,u),o}(uo);w1.prototype.size=8;var T1=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.get=function(p){return new w1(this,p)},o}(bf);y("FeatureIndexArray",T1);var c3=ui([{name:"a_pos",components:2,type:"Int16"}],4),A1=c3.members,Tn=function(o){o===void 0&&(o=[]),this.segments=o};Tn.prototype.prepareSegment=function(o,u,p,x){var A=this.segments[this.segments.length-1];return o>Tn.MAX_VERTEX_ARRAY_LENGTH&&Me("Max vertices per segment is "+Tn.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+o),(!A||A.vertexLength+o>Tn.MAX_VERTEX_ARRAY_LENGTH||A.sortKey!==x)&&(A={vertexOffset:u.length,primitiveOffset:p.length,vertexLength:0,primitiveLength:0},x!==void 0&&(A.sortKey=x),this.segments.push(A)),A},Tn.prototype.get=function(){return this.segments},Tn.prototype.destroy=function(){for(var o=0,u=this.segments;o>>16)*Y&65535)<<16)&4294967295,Q=Q<<15|Q>>>17,Q=(Q&65535)*j+(((Q>>>16)*j&65535)<<16)&4294967295,k^=Q,k=k<<13|k>>>19,F=(k&65535)*5+(((k>>>16)*5&65535)<<16)&4294967295,k=(F&65535)+27492+(((F>>>16)+58964&65535)<<16);switch(Q=0,x){case 3:Q^=(u.charCodeAt(ie+2)&255)<<16;case 2:Q^=(u.charCodeAt(ie+1)&255)<<8;case 1:Q^=u.charCodeAt(ie)&255,Q=(Q&65535)*Y+(((Q>>>16)*Y&65535)<<16)&4294967295,Q=Q<<15|Q>>>17,Q=(Q&65535)*j+(((Q>>>16)*j&65535)<<16)&4294967295,k^=Q}return k^=u.length,k^=k>>>16,k=(k&65535)*2246822507+(((k>>>16)*2246822507&65535)<<16)&4294967295,k^=k>>>13,k=(k&65535)*3266489909+(((k>>>16)*3266489909&65535)<<16)&4294967295,k^=k>>>16,k>>>0}n.exports=o}),d=s(function(n){function o(u,p){for(var x=u.length,A=p^x,k=0,F;x>=4;)F=u.charCodeAt(k)&255|(u.charCodeAt(++k)&255)<<8|(u.charCodeAt(++k)&255)<<16|(u.charCodeAt(++k)&255)<<24,F=(F&65535)*1540483477+(((F>>>16)*1540483477&65535)<<16),F^=F>>>24,F=(F&65535)*1540483477+(((F>>>16)*1540483477&65535)<<16),A=(A&65535)*1540483477+(((A>>>16)*1540483477&65535)<<16)^F,x-=4,++k;switch(x){case 3:A^=(u.charCodeAt(k+2)&255)<<16;case 2:A^=(u.charCodeAt(k+1)&255)<<8;case 1:A^=u.charCodeAt(k)&255,A=(A&65535)*1540483477+(((A>>>16)*1540483477&65535)<<16)}return A^=A>>>13,A=(A&65535)*1540483477+(((A>>>16)*1540483477&65535)<<16),A^=A>>>15,A>>>0}n.exports=o}),w=b,D=b,R=d;w.murmur3=D,w.murmur2=R;var G=function(){this.ids=[],this.positions=[],this.indexed=!1};G.prototype.add=function(o,u,p,x){this.ids.push(re(o)),this.positions.push(u,p,x)},G.prototype.getPositions=function(o){for(var u=re(o),p=0,x=this.ids.length-1;p>1;this.ids[A]>=u?x=A:p=A+1}for(var k=[];this.ids[p]===u;){var F=this.positions[3*p],Y=this.positions[3*p+1],j=this.positions[3*p+2];k.push({index:F,start:Y,end:j}),p++}return k},G.serialize=function(o,u){var p=new Float64Array(o.ids),x=new Uint32Array(o.positions);return ue(p,x,0,p.length-1),u&&u.push(p.buffer,x.buffer),{ids:p,positions:x}},G.deserialize=function(o){var u=new G;return u.ids=o.ids,u.positions=o.positions,u.indexed=!0,u};var K=Math.pow(2,53)-1;function re(n){var o=+n;return!isNaN(o)&&o<=K?o:w(String(n))}function ue(n,o,u,p){for(;u>1],A=u-1,k=p+1;;){do A++;while(n[A]x);if(A>=k)break;Te(n,A,k),Te(o,3*A,3*k),Te(o,3*A+1,3*k+1),Te(o,3*A+2,3*k+2)}k-uk.x+1||Yk.y+1)&&Me("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return u}function Mi(n,o){return{type:n.type,id:n.id,properties:n.properties,geometry:o?Ua(n):[]}}function La(n,o,u,p,x){n.emplaceBack(o*2+(p+1)/2,u*2+(x+1)/2)}var mi=function(o){this.zoom=o.zoom,this.overscaling=o.overscaling,this.layers=o.layers,this.layerIds=this.layers.map(function(u){return u.id}),this.index=o.index,this.hasPattern=!1,this.layoutVertexArray=new ac,this.indexArray=new Su,this.segments=new Tn,this.programConfigurations=new kr(o.layers,o.zoom),this.stateDependentLayerIds=this.layers.filter(function(u){return u.isStateDependent()}).map(function(u){return u.id})};mi.prototype.populate=function(o,u,p){var x=this.layers[0],A=[],k=null;x.type==="circle"&&(k=x.layout.get("circle-sort-key"));for(var F=0,Y=o;F=Nr||ye<0||ye>=Nr)){var ve=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,o.sortKey),Ce=ve.vertexLength;La(this.layoutVertexArray,ie,ye,-1,-1),La(this.layoutVertexArray,ie,ye,1,-1),La(this.layoutVertexArray,ie,ye,1,1),La(this.layoutVertexArray,ie,ye,-1,1),this.indexArray.emplaceBack(Ce,Ce+1,Ce+2),this.indexArray.emplaceBack(Ce,Ce+3,Ce+2),ve.vertexLength+=4,ve.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,o,p,{},x)},y("CircleBucket",mi,{omit:["layers"]});function ia(n,o){for(var u=0;u=3){for(var A=0;A1){if(Ps(n,o))return!0;for(var p=0;p1?n.distSqr(u):n.distSqr(u.sub(o)._mult(x)._add(o))}function Ol(n,o){for(var u=!1,p,x,A,k=0;ko.y!=A.y>o.y&&o.x<(A.x-x.x)*(o.y-x.y)/(A.y-x.y)+x.x&&(u=!u)}return u}function Do(n,o){for(var u=!1,p=0,x=n.length-1;po.y!=k.y>o.y&&o.x<(k.x-A.x)*(o.y-A.y)/(k.y-A.y)+A.x&&(u=!u)}return u}function Ul(n,o,u,p,x){for(var A=0,k=n;A=F.x&&x>=F.y)return!0}var Y=[new v(o,u),new v(o,x),new v(p,x),new v(p,u)];if(n.length>2)for(var j=0,Q=Y;jx.x&&o.x>x.x||n.yx.y&&o.y>x.y)return!1;var A=Le(n,o,u[0]);return A!==Le(n,o,u[1])||A!==Le(n,o,u[2])||A!==Le(n,o,u[3])}function Po(n,o,u){var p=o.paint.get(n).value;return p.kind==="constant"?p.value:u.programConfigurations.get(o.id).getMaxValue(n)}function el(n){return Math.sqrt(n[0]*n[0]+n[1]*n[1])}function ku(n,o,u,p,x){if(!o[0]&&!o[1])return n;var A=v.convert(o)._mult(x);u==="viewport"&&A._rotate(-p);for(var k=[],F=0;F0&&(A=1/Math.sqrt(A)),n[0]=o[0]*A,n[1]=o[1]*A,n[2]=o[2]*A,n}function iY(n,o){return n[0]*o[0]+n[1]*o[1]+n[2]*o[2]}function nY(n,o,u){var p=o[0],x=o[1],A=o[2],k=u[0],F=u[1],Y=u[2];return n[0]=x*Y-A*F,n[1]=A*k-p*Y,n[2]=p*F-x*k,n}function oY(n,o,u){var p=o[0],x=o[1],A=o[2];return n[0]=p*u[0]+x*u[3]+A*u[6],n[1]=p*u[1]+x*u[4]+A*u[7],n[2]=p*u[2]+x*u[5]+A*u[8],n}var sY=p3,Ame=function(){var n=Xv();return function(o,u,p,x,A,k){var F,Y;for(u||(u=3),p||(p=0),x?Y=Math.min(x*u+p,o.length):Y=o.length,F=p;Fn.width||x.height>n.height||u.x>n.width-x.width||u.y>n.height-x.height)throw new RangeError("out of range source coordinates for image copy");if(x.width>o.width||x.height>o.height||p.x>o.width-x.width||p.y>o.height-x.height)throw new RangeError("out of range destination coordinates for image copy");for(var k=n.data,F=o.data,Y=0;Y80*u){F=j=n[0],Y=Q=n[1];for(var Ce=u;Cej&&(j=ie),ye>Q&&(Q=ye);ve=Math.max(j-F,Q-Y),ve=ve!==0?1/ve:0}return cy(A,k,u,F,Y,ve),k}function vM(n,o,u,p,x){var A,k;if(x===w3(n,o,u,p)>0)for(A=o;A=o;A-=p)k=mM(A,n[A],n[A+1],k);return k&&k1(k,k.next)&&(vy(k),k=k.next),k}function ph(n,o){if(!n)return n;o||(o=n);var u=n,p;do if(p=!1,!u.steiner&&(k1(u,u.next)||An(u.prev,u,u.next)===0)){if(vy(u),u=o=u.prev,u===u.next)break;p=!0}else u=u.next;while(p||u!==o);return o}function cy(n,o,u,p,x,A,k){if(n){!k&&A&&IY(n,p,x,A);for(var F=n,Y,j;n.prev!==n.next;){if(Y=n.prev,j=n.next,A?SY(n,p,x,A):MY(n)){o.push(Y.i/u),o.push(n.i/u),o.push(j.i/u),vy(n),n=j.next,F=j.next;continue}if(n=j,n===F){k?k===1?(n=kY(ph(n),o,u),cy(n,o,u,p,x,A,2)):k===2&&CY(n,o,u,p,x,A):cy(ph(n),o,u,p,x,A,1);break}}}}function MY(n){var o=n.prev,u=n,p=n.next;if(An(o,u,p)>=0)return!1;for(var x=n.next.next;x!==n.prev;){if(Zp(o.x,o.y,u.x,u.y,p.x,p.y,x.x,x.y)&&An(x.prev,x,x.next)>=0)return!1;x=x.next}return!0}function SY(n,o,u,p){var x=n.prev,A=n,k=n.next;if(An(x,A,k)>=0)return!1;for(var F=x.xA.x?x.x>k.x?x.x:k.x:A.x>k.x?A.x:k.x,Q=x.y>A.y?x.y>k.y?x.y:k.y:A.y>k.y?A.y:k.y,ie=x3(F,Y,o,u,p),ye=x3(j,Q,o,u,p),ve=n.prevZ,Ce=n.nextZ;ve&&ve.z>=ie&&Ce&&Ce.z<=ye;){if(ve!==n.prev&&ve!==n.next&&Zp(x.x,x.y,A.x,A.y,k.x,k.y,ve.x,ve.y)&&An(ve.prev,ve,ve.next)>=0||(ve=ve.prevZ,Ce!==n.prev&&Ce!==n.next&&Zp(x.x,x.y,A.x,A.y,k.x,k.y,Ce.x,Ce.y)&&An(Ce.prev,Ce,Ce.next)>=0))return!1;Ce=Ce.nextZ}for(;ve&&ve.z>=ie;){if(ve!==n.prev&&ve!==n.next&&Zp(x.x,x.y,A.x,A.y,k.x,k.y,ve.x,ve.y)&&An(ve.prev,ve,ve.next)>=0)return!1;ve=ve.prevZ}for(;Ce&&Ce.z<=ye;){if(Ce!==n.prev&&Ce!==n.next&&Zp(x.x,x.y,A.x,A.y,k.x,k.y,Ce.x,Ce.y)&&An(Ce.prev,Ce,Ce.next)>=0)return!1;Ce=Ce.nextZ}return!0}function kY(n,o,u){var p=n;do{var x=p.prev,A=p.next.next;!k1(x,A)&&dM(x,p,p.next,A)&&hy(x,A)&&hy(A,x)&&(o.push(x.i/u),o.push(p.i/u),o.push(A.i/u),vy(p),vy(p.next),p=n=A),p=p.next}while(p!==n);return ph(p)}function CY(n,o,u,p,x,A){var k=n;do{for(var F=k.next.next;F!==k.prev;){if(k.i!==F.i&&qY(k,F)){var Y=pM(k,F);k=ph(k,k.next),Y=ph(Y,Y.next),cy(k,o,u,p,x,A),cy(Y,o,u,p,x,A);return}F=F.next}k=k.next}while(k!==n)}function EY(n,o,u,p){var x=[],A,k,F,Y,j;for(A=0,k=o.length;A=u.next.y&&u.next.y!==u.y){var F=u.x+(x-u.y)*(u.next.x-u.x)/(u.next.y-u.y);if(F<=p&&F>A){if(A=F,F===p){if(x===u.y)return u;if(x===u.next.y)return u.next}k=u.x=u.x&&u.x>=j&&p!==u.x&&Zp(xk.x||u.x===k.x&&zY(k,u)))&&(k=u,ie=ye)),u=u.next;while(u!==Y);return k}function zY(n,o){return An(n.prev,n,o.prev)<0&&An(o.next,n,n.next)<0}function IY(n,o,u,p){var x=n;do x.z===null&&(x.z=x3(x.x,x.y,o,u,p)),x.prevZ=x.prev,x.nextZ=x.next,x=x.next;while(x!==n);x.prevZ.nextZ=null,x.prevZ=null,RY(x)}function RY(n){var o,u,p,x,A,k,F,Y,j=1;do{for(u=n,n=null,A=null,k=0;u;){for(k++,p=u,F=0,o=0;o0||Y>0&&p;)F!==0&&(Y===0||!p||u.z<=p.z)?(x=u,u=u.nextZ,F--):(x=p,p=p.nextZ,Y--),A?A.nextZ=x:n=x,x.prevZ=A,A=x;u=p}A.nextZ=null,j*=2}while(k>1);return n}function x3(n,o,u,p,x){return n=32767*(n-u)*x,o=32767*(o-p)*x,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,o=(o|o<<8)&16711935,o=(o|o<<4)&252645135,o=(o|o<<2)&858993459,o=(o|o<<1)&1431655765,n|o<<1}function FY(n){var o=n,u=n;do(o.x=0&&(n-k)*(p-F)-(u-k)*(o-F)>=0&&(u-k)*(A-F)-(x-k)*(p-F)>=0}function qY(n,o){return n.next.i!==o.i&&n.prev.i!==o.i&&!NY(n,o)&&(hy(n,o)&&hy(o,n)&&BY(n,o)&&(An(n.prev,n,o.prev)||An(n,o.prev,o))||k1(n,o)&&An(n.prev,n,n.next)>0&&An(o.prev,o,o.next)>0)}function An(n,o,u){return(o.y-n.y)*(u.x-o.x)-(o.x-n.x)*(u.y-o.y)}function k1(n,o){return n.x===o.x&&n.y===o.y}function dM(n,o,u,p){var x=E1(An(n,o,u)),A=E1(An(n,o,p)),k=E1(An(u,p,n)),F=E1(An(u,p,o));return!!(x!==A&&k!==F||x===0&&C1(n,u,o)||A===0&&C1(n,p,o)||k===0&&C1(u,n,p)||F===0&&C1(u,o,p))}function C1(n,o,u){return o.x<=Math.max(n.x,u.x)&&o.x>=Math.min(n.x,u.x)&&o.y<=Math.max(n.y,u.y)&&o.y>=Math.min(n.y,u.y)}function E1(n){return n>0?1:n<0?-1:0}function NY(n,o){var u=n;do{if(u.i!==n.i&&u.next.i!==n.i&&u.i!==o.i&&u.next.i!==o.i&&dM(u,u.next,n,o))return!0;u=u.next}while(u!==n);return!1}function hy(n,o){return An(n.prev,n,n.next)<0?An(n,o,n.next)>=0&&An(n,n.prev,o)>=0:An(n,o,n.prev)<0||An(n,n.next,o)<0}function BY(n,o){var u=n,p=!1,x=(n.x+o.x)/2,A=(n.y+o.y)/2;do u.y>A!=u.next.y>A&&u.next.y!==u.y&&x<(u.next.x-u.x)*(A-u.y)/(u.next.y-u.y)+u.x&&(p=!p),u=u.next;while(u!==n);return p}function pM(n,o){var u=new b3(n.i,n.x,n.y),p=new b3(o.i,o.x,o.y),x=n.next,A=o.prev;return n.next=o,o.prev=n,u.next=x,x.prev=u,p.next=u,u.prev=p,A.next=p,p.prev=A,p}function mM(n,o,u,p){var x=new b3(n,o,u);return p?(x.next=p.next,x.prev=p,p.next.prev=x,p.next=x):(x.prev=x,x.next=x),x}function vy(n){n.next.prev=n.prev,n.prev.next=n.next,n.prevZ&&(n.prevZ.nextZ=n.nextZ),n.nextZ&&(n.nextZ.prevZ=n.prevZ)}function b3(n,o,u){this.i=n,this.x=o,this.y=u,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}S1.deviation=function(n,o,u,p){var x=o&&o.length,A=x?o[0]*u:n.length,k=Math.abs(w3(n,0,A,u));if(x)for(var F=0,Y=o.length;F0&&(p+=n[x-1].length,u.holes.push(p))}return u},_3.default=AY;function OY(n,o,u,p,x){yM(n,o,u||0,p||n.length-1,x||UY)}function yM(n,o,u,p,x){for(;p>u;){if(p-u>600){var A=p-u+1,k=o-u+1,F=Math.log(A),Y=.5*Math.exp(2*F/3),j=.5*Math.sqrt(F*Y*(A-Y)/A)*(k-A/2<0?-1:1),Q=Math.max(u,Math.floor(o-k*Y/A+j)),ie=Math.min(p,Math.floor(o+(A-k)*Y/A+j));yM(n,o,Q,ie,x)}var ye=n[o],ve=u,Ce=p;for(dy(n,u,o),x(n[p],ye)>0&&dy(n,u,p);ve0;)Ce--}x(n[u],ye)===0?dy(n,u,Ce):(Ce++,dy(n,Ce,p)),Ce<=o&&(u=Ce+1),o<=Ce&&(p=Ce-1)}}function dy(n,o,u){var p=n[o];n[o]=n[u],n[u]=p}function UY(n,o){return no?1:0}function T3(n,o){var u=n.length;if(u<=1)return[n];for(var p=[],x,A,k=0;k1)for(var Y=0;Y>3}if(p--,u===1||u===2)x+=n.readSVarint(),A+=n.readSVarint(),u===1&&(F&&k.push(F),F=[]),F.push(new v(x,A));else if(u===7)F&&F.push(F[0].clone());else throw new Error("unknown command "+u)}return F&&k.push(F),k},Yp.prototype.bbox=function(){var n=this._pbf;n.pos=this._geometry;for(var o=n.readVarint()+n.pos,u=1,p=0,x=0,A=0,k=1/0,F=-1/0,Y=1/0,j=-1/0;n.pos>3}if(p--,u===1||u===2)x+=n.readSVarint(),A+=n.readSVarint(),xF&&(F=x),Aj&&(j=A);else if(u!==7)throw new Error("unknown command "+u)}return[k,Y,F,j]},Yp.prototype.toGeoJSON=function(n,o,u){var p=this.extent*Math.pow(2,u),x=this.extent*n,A=this.extent*o,k=this.loadGeometry(),F=Yp.types[this.type],Y,j;function Q(ve){for(var Ce=0;Ce>3;o=p===1?n.readString():p===2?n.readFloat():p===3?n.readDouble():p===4?n.readVarint64():p===5?n.readVarint():p===6?n.readSVarint():p===7?n.readBoolean():null}return o}xM.prototype.feature=function(n){if(n<0||n>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[n];var o=this._pbf.readVarint()+this._pbf.pos;return new gM(this._pbf,o,this.extent,this._keys,this._values)};var rW=aW;function aW(n,o){this.layers=n.readFields(iW,{},o)}function iW(n,o,u){if(n===3){var p=new _M(u,u.readVarint()+u.pos);p.length&&(o[p.name]=p)}}var nW=rW,oW=gM,sW=_M,Wp={VectorTile:nW,VectorTileFeature:oW,VectorTileLayer:sW},lW=Wp.VectorTileFeature.types,uW=500,S3=Math.pow(2,13);function py(n,o,u,p,x,A,k,F){n.emplaceBack(o,u,Math.floor(p*S3)*2+k,x*S3*2,A*S3*2,Math.round(F))}var Eu=function(o){this.zoom=o.zoom,this.overscaling=o.overscaling,this.layers=o.layers,this.layerIds=this.layers.map(function(u){return u.id}),this.index=o.index,this.hasPattern=!1,this.layoutVertexArray=new _f,this.indexArray=new Su,this.programConfigurations=new kr(o.layers,o.zoom),this.segments=new Tn,this.stateDependentLayerIds=this.layers.filter(function(u){return u.isStateDependent()}).map(function(u){return u.id})};Eu.prototype.populate=function(o,u,p){this.features=[],this.hasPattern=A3("fill-extrusion",this.layers,u);for(var x=0,A=o;x=1){var Mt=ut[kt-1];if(!fW(_t,Mt)){ve.vertexLength+4>Tn.MAX_VERTEX_ARRAY_LENGTH&&(ve=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var It=_t.sub(Mt)._perp()._unit(),Jt=Mt.dist(_t);et+Jt>32768&&(et=0),py(this.layoutVertexArray,_t.x,_t.y,It.x,It.y,0,0,et),py(this.layoutVertexArray,_t.x,_t.y,It.x,It.y,0,1,et),et+=Jt,py(this.layoutVertexArray,Mt.x,Mt.y,It.x,It.y,0,0,et),py(this.layoutVertexArray,Mt.x,Mt.y,It.x,It.y,0,1,et);var dr=ve.vertexLength;this.indexArray.emplaceBack(dr,dr+2,dr+1),this.indexArray.emplaceBack(dr+1,dr+2,dr+3),ve.vertexLength+=4,ve.primitiveLength+=2}}}}if(ve.vertexLength+j>Tn.MAX_VERTEX_ARRAY_LENGTH&&(ve=this.segments.prepareSegment(j,this.layoutVertexArray,this.indexArray)),lW[o.type]==="Polygon"){for(var cr=[],Fr=[],Cr=ve.vertexLength,Ir=0,Kr=Y;IrNr)||n.y===o.y&&(n.y<0||n.y>Nr)}function cW(n){return n.every(function(o){return o.x<0})||n.every(function(o){return o.x>Nr})||n.every(function(o){return o.y<0})||n.every(function(o){return o.y>Nr})}var hW=new Rn({"fill-extrusion-opacity":new Tr(Xt["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new Hr(Xt["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Tr(Xt["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Tr(Xt["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Ni(Xt["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new Hr(Xt["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new Hr(Xt["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Tr(Xt["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])}),vW={paint:hW},dW=function(n){function o(u){n.call(this,u,vW)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.createBucket=function(p){return new Eu(p)},o.prototype.queryRadius=function(){return el(this.paint.get("fill-extrusion-translate"))},o.prototype.is3D=function(){return!0},o.prototype.queryIntersectsFeature=function(p,x,A,k,F,Y,j,Q){var ie=ku(p,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),Y.angle,j),ye=this.paint.get("fill-extrusion-height").evaluate(x,A),ve=this.paint.get("fill-extrusion-base").evaluate(x,A),Ce=yW(ie,Q,Y,0),qe=mW(k,ve,ye,Q),ut=qe[0],et=qe[1];return pW(ut,et,Ce)},o}(pi);function my(n,o){return n.x*o.x+n.y*o.y}function bM(n,o){if(n.length===1){for(var u=0,p=o[u++],x;!x||p.equals(x);)if(x=o[u++],!x)return 1/0;for(;u=2&&o[j-1].equals(o[j-2]);)j--;for(var Q=0;Q0;if(cr&&kt>Q){var Cr=ve.dist(Ce);if(Cr>2*ie){var Ir=ve.sub(ve.sub(Ce)._mult(ie/Cr)._round());this.updateDistance(Ce,Ir),this.addCurrentVertex(Ir,ut,0,0,ye),Ce=Ir}}var Kr=Ce&&qe,qr=Kr?p:Y?"butt":x;if(Kr&&qr==="round"&&(JtA&&(qr="bevel"),qr==="bevel"&&(Jt>2&&(qr="flipbevel"),Jt100)_t=et.mult(-1);else{var Br=Jt*ut.add(et).mag()/ut.sub(et).mag();_t._perp()._mult(Br*(Fr?-1:1))}this.addCurrentVertex(ve,_t,0,0,ye),this.addCurrentVertex(ve,_t.mult(-1),0,0,ye)}else if(qr==="bevel"||qr==="fakeround"){var ya=-Math.sqrt(Jt*Jt-1),Xr=Fr?ya:0,Ya=Fr?0:ya;if(Ce&&this.addCurrentVertex(ve,ut,Xr,Ya,ye),qr==="fakeround")for(var gi=Math.round(dr*180/Math.PI/MW),Wa=1;Wa2*ie){var kn=ve.add(qe.sub(ve)._mult(ie/Zn)._round());this.updateDistance(ve,kn),this.addCurrentVertex(kn,et,0,0,ye),ve=kn}}}}},zo.prototype.addCurrentVertex=function(o,u,p,x,A,k){k===void 0&&(k=!1);var F=u.x+u.y*p,Y=u.y-u.x*p,j=-u.x+u.y*x,Q=-u.y-u.x*x;this.addHalfVertex(o,F,Y,k,!1,p,A),this.addHalfVertex(o,j,Q,k,!0,-x,A),this.distance>AM/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(o,u,p,x,A,k))},zo.prototype.addHalfVertex=function(o,u,p,x,A,k,F){var Y=o.x,j=o.y,Q=this.lineClips?this.scaledDistance*(AM-1):this.scaledDistance,ie=Q*TM;if(this.layoutVertexArray.emplaceBack((Y<<1)+(x?1:0),(j<<1)+(A?1:0),Math.round(wM*u)+128,Math.round(wM*p)+128,(k===0?0:k<0?-1:1)+1|(ie&63)<<2,ie>>6),this.lineClips){var ye=this.scaledDistance-this.lineClips.start,ve=this.lineClips.end-this.lineClips.start,Ce=ye/ve;this.layoutVertexArray2.emplaceBack(Ce,this.lineClipsArray.length)}var qe=F.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,qe),F.primitiveLength++),A?this.e2=qe:this.e1=qe},zo.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},zo.prototype.updateDistance=function(o,u){this.distance+=o.dist(u),this.updateScaledDistance()},y("LineBucket",zo,{omit:["layers","patternFeatures"]});var kW=new Rn({"line-cap":new Tr(Xt.layout_line["line-cap"]),"line-join":new Hr(Xt.layout_line["line-join"]),"line-miter-limit":new Tr(Xt.layout_line["line-miter-limit"]),"line-round-limit":new Tr(Xt.layout_line["line-round-limit"]),"line-sort-key":new Hr(Xt.layout_line["line-sort-key"])}),CW=new Rn({"line-opacity":new Hr(Xt.paint_line["line-opacity"]),"line-color":new Hr(Xt.paint_line["line-color"]),"line-translate":new Tr(Xt.paint_line["line-translate"]),"line-translate-anchor":new Tr(Xt.paint_line["line-translate-anchor"]),"line-width":new Hr(Xt.paint_line["line-width"]),"line-gap-width":new Hr(Xt.paint_line["line-gap-width"]),"line-offset":new Hr(Xt.paint_line["line-offset"]),"line-blur":new Hr(Xt.paint_line["line-blur"]),"line-dasharray":new Ai(Xt.paint_line["line-dasharray"]),"line-pattern":new Ni(Xt.paint_line["line-pattern"]),"line-gradient":new lo(Xt.paint_line["line-gradient"])}),MM={paint:CW,layout:kW},EW=function(n){function o(){n.apply(this,arguments)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.possiblyEvaluate=function(p,x){return x=new jt(Math.floor(x.zoom),{now:x.now,fadeDuration:x.fadeDuration,zoomHistory:x.zoomHistory,transition:x.transition}),n.prototype.possiblyEvaluate.call(this,p,x)},o.prototype.evaluate=function(p,x,A,k){return x=H({},x,{zoom:Math.floor(x.zoom)}),n.prototype.evaluate.call(this,p,x,A,k)},o}(Hr),SM=new EW(MM.paint.properties["line-width"].specification);SM.useIntegerZoom=!0;var LW=function(n){function o(u){n.call(this,u,MM),this.gradientVersion=0}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype._handleSpecialPaintPropertyUpdate=function(p){if(p==="line-gradient"){var x=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=x._styleExpression.expression instanceof As,this.gradientVersion=(this.gradientVersion+1)%S}},o.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},o.prototype.recalculate=function(p,x){n.prototype.recalculate.call(this,p,x),this.paint._values["line-floorwidth"]=SM.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,p)},o.prototype.createBucket=function(p){return new zo(p)},o.prototype.queryRadius=function(p){var x=p,A=kM(Po("line-width",this,x),Po("line-gap-width",this,x)),k=Po("line-offset",this,x);return A/2+Math.abs(k)+el(this.paint.get("line-translate"))},o.prototype.queryIntersectsFeature=function(p,x,A,k,F,Y,j){var Q=ku(p,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),Y.angle,j),ie=j/2*kM(this.paint.get("line-width").evaluate(x,A),this.paint.get("line-gap-width").evaluate(x,A)),ye=this.paint.get("line-offset").evaluate(x,A);return ye&&(k=DW(k,ye*j)),Fn(Q,k,ie)},o.prototype.isTileClipped=function(){return!0},o}(pi);function kM(n,o){return o>0?o+2*n:n}function DW(n,o){for(var u=[],p=new v(0,0),x=0;x":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};function BW(n){for(var o="",u=0;u>1,Q=-7,ie=u?x-1:0,ye=u?-1:1,ve=n[o+ie];for(ie+=ye,A=ve&(1<<-Q)-1,ve>>=-Q,Q+=F;Q>0;A=A*256+n[o+ie],ie+=ye,Q-=8);for(k=A&(1<<-Q)-1,A>>=-Q,Q+=p;Q>0;k=k*256+n[o+ie],ie+=ye,Q-=8);if(A===0)A=1-j;else{if(A===Y)return k?NaN:(ve?-1:1)*(1/0);k=k+Math.pow(2,p),A=A-j}return(ve?-1:1)*k*Math.pow(2,A-p)},UW=function(n,o,u,p,x,A){var k,F,Y,j=A*8-x-1,Q=(1<>1,ye=x===23?Math.pow(2,-24)-Math.pow(2,-77):0,ve=p?0:A-1,Ce=p?1:-1,qe=o<0||o===0&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(F=isNaN(o)?1:0,k=Q):(k=Math.floor(Math.log(o)/Math.LN2),o*(Y=Math.pow(2,-k))<1&&(k--,Y*=2),k+ie>=1?o+=ye/Y:o+=ye*Math.pow(2,1-ie),o*Y>=2&&(k++,Y/=2),k+ie>=Q?(F=0,k=Q):k+ie>=1?(F=(o*Y-1)*Math.pow(2,x),k=k+ie):(F=o*Math.pow(2,ie-1)*Math.pow(2,x),k=0));x>=8;n[u+ve]=F&255,ve+=Ce,F/=256,x-=8);for(k=k<0;n[u+ve]=k&255,ve+=Ce,k/=256,j-=8);n[u+ve-Ce]|=qe*128},L1={read:OW,write:UW},D1=Pi;function Pi(n){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(n)?n:new Uint8Array(n||0),this.pos=0,this.type=0,this.length=this.buf.length}Pi.Varint=0,Pi.Fixed64=1,Pi.Bytes=2,Pi.Fixed32=5;var k3=65536*65536,EM=1/k3,VW=12,LM=typeof TextDecoder=="undefined"?null:new TextDecoder("utf8");Pi.prototype={destroy:function(){this.buf=null},readFields:function(n,o,u){for(u=u||this.length;this.pos>3,A=this.pos;this.type=p&7,n(x,o,this),this.pos===A&&this.skip(p)}return o},readMessage:function(n,o){return this.readFields(n,o,this.readVarint()+this.pos)},readFixed32:function(){var n=P1(this.buf,this.pos);return this.pos+=4,n},readSFixed32:function(){var n=PM(this.buf,this.pos);return this.pos+=4,n},readFixed64:function(){var n=P1(this.buf,this.pos)+P1(this.buf,this.pos+4)*k3;return this.pos+=8,n},readSFixed64:function(){var n=P1(this.buf,this.pos)+PM(this.buf,this.pos+4)*k3;return this.pos+=8,n},readFloat:function(){var n=L1.read(this.buf,this.pos,!0,23,4);return this.pos+=4,n},readDouble:function(){var n=L1.read(this.buf,this.pos,!0,52,8);return this.pos+=8,n},readVarint:function(n){var o=this.buf,u,p;return p=o[this.pos++],u=p&127,p<128||(p=o[this.pos++],u|=(p&127)<<7,p<128)||(p=o[this.pos++],u|=(p&127)<<14,p<128)||(p=o[this.pos++],u|=(p&127)<<21,p<128)?u:(p=o[this.pos],u|=(p&15)<<28,HW(u,n,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var n=this.readVarint();return n%2===1?(n+1)/-2:n/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var n=this.readVarint()+this.pos,o=this.pos;return this.pos=n,n-o>=VW&&LM?aX(this.buf,o,n):rX(this.buf,o,n)},readBytes:function(){var n=this.readVarint()+this.pos,o=this.buf.subarray(this.pos,n);return this.pos=n,o},readPackedVarint:function(n,o){if(this.type!==Pi.Bytes)return n.push(this.readVarint(o));var u=sc(this);for(n=n||[];this.pos127;);else if(o===Pi.Bytes)this.pos=this.readVarint()+this.pos;else if(o===Pi.Fixed32)this.pos+=4;else if(o===Pi.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+o)},writeTag:function(n,o){this.writeVarint(n<<3|o)},realloc:function(n){for(var o=this.length||16;o268435455||n<0){GW(n,this);return}this.realloc(4),this.buf[this.pos++]=n&127|(n>127?128:0),!(n<=127)&&(this.buf[this.pos++]=(n>>>=7)&127|(n>127?128:0),!(n<=127)&&(this.buf[this.pos++]=(n>>>=7)&127|(n>127?128:0),!(n<=127)&&(this.buf[this.pos++]=n>>>7&127)))},writeSVarint:function(n){this.writeVarint(n<0?-n*2-1:n*2)},writeBoolean:function(n){this.writeVarint(!!n)},writeString:function(n){n=String(n),this.realloc(n.length*4),this.pos++;var o=this.pos;this.pos=iX(this.buf,n,this.pos);var u=this.pos-o;u>=128&&DM(o,u,this),this.pos=o-1,this.writeVarint(u),this.pos+=u},writeFloat:function(n){this.realloc(4),L1.write(this.buf,n,this.pos,!0,23,4),this.pos+=4},writeDouble:function(n){this.realloc(8),L1.write(this.buf,n,this.pos,!0,52,8),this.pos+=8},writeBytes:function(n){var o=n.length;this.writeVarint(o),this.realloc(o);for(var u=0;u=128&&DM(u,p,this),this.pos=u-1,this.writeVarint(p),this.pos+=p},writeMessage:function(n,o,u){this.writeTag(n,Pi.Bytes),this.writeRawMessage(o,u)},writePackedVarint:function(n,o){o.length&&this.writeMessage(n,WW,o)},writePackedSVarint:function(n,o){o.length&&this.writeMessage(n,XW,o)},writePackedBoolean:function(n,o){o.length&&this.writeMessage(n,KW,o)},writePackedFloat:function(n,o){o.length&&this.writeMessage(n,jW,o)},writePackedDouble:function(n,o){o.length&&this.writeMessage(n,JW,o)},writePackedFixed32:function(n,o){o.length&&this.writeMessage(n,QW,o)},writePackedSFixed32:function(n,o){o.length&&this.writeMessage(n,$W,o)},writePackedFixed64:function(n,o){o.length&&this.writeMessage(n,eX,o)},writePackedSFixed64:function(n,o){o.length&&this.writeMessage(n,tX,o)},writeBytesField:function(n,o){this.writeTag(n,Pi.Bytes),this.writeBytes(o)},writeFixed32Field:function(n,o){this.writeTag(n,Pi.Fixed32),this.writeFixed32(o)},writeSFixed32Field:function(n,o){this.writeTag(n,Pi.Fixed32),this.writeSFixed32(o)},writeFixed64Field:function(n,o){this.writeTag(n,Pi.Fixed64),this.writeFixed64(o)},writeSFixed64Field:function(n,o){this.writeTag(n,Pi.Fixed64),this.writeSFixed64(o)},writeVarintField:function(n,o){this.writeTag(n,Pi.Varint),this.writeVarint(o)},writeSVarintField:function(n,o){this.writeTag(n,Pi.Varint),this.writeSVarint(o)},writeStringField:function(n,o){this.writeTag(n,Pi.Bytes),this.writeString(o)},writeFloatField:function(n,o){this.writeTag(n,Pi.Fixed32),this.writeFloat(o)},writeDoubleField:function(n,o){this.writeTag(n,Pi.Fixed64),this.writeDouble(o)},writeBooleanField:function(n,o){this.writeVarintField(n,!!o)}};function HW(n,o,u){var p=u.buf,x,A;if(A=p[u.pos++],x=(A&112)>>4,A<128||(A=p[u.pos++],x|=(A&127)<<3,A<128)||(A=p[u.pos++],x|=(A&127)<<10,A<128)||(A=p[u.pos++],x|=(A&127)<<17,A<128)||(A=p[u.pos++],x|=(A&127)<<24,A<128)||(A=p[u.pos++],x|=(A&1)<<31,A<128))return Xp(n,x,o);throw new Error("Expected varint not more than 10 bytes")}function sc(n){return n.type===Pi.Bytes?n.readVarint()+n.pos:n.pos+1}function Xp(n,o,u){return u?o*4294967296+(n>>>0):(o>>>0)*4294967296+(n>>>0)}function GW(n,o){var u,p;if(n>=0?(u=n%4294967296|0,p=n/4294967296|0):(u=~(-n%4294967296),p=~(-n/4294967296),u^4294967295?u=u+1|0:(u=0,p=p+1|0)),n>=18446744073709552e3||n<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");o.realloc(10),ZW(u,p,o),YW(p,o)}function ZW(n,o,u){u.buf[u.pos++]=n&127|128,n>>>=7,u.buf[u.pos++]=n&127|128,n>>>=7,u.buf[u.pos++]=n&127|128,n>>>=7,u.buf[u.pos++]=n&127|128,n>>>=7,u.buf[u.pos]=n&127}function YW(n,o){var u=(n&7)<<4;o.buf[o.pos++]|=u|((n>>>=3)?128:0),n&&(o.buf[o.pos++]=n&127|((n>>>=7)?128:0),n&&(o.buf[o.pos++]=n&127|((n>>>=7)?128:0),n&&(o.buf[o.pos++]=n&127|((n>>>=7)?128:0),n&&(o.buf[o.pos++]=n&127|((n>>>=7)?128:0),n&&(o.buf[o.pos++]=n&127)))))}function DM(n,o,u){var p=o<=16383?1:o<=2097151?2:o<=268435455?3:Math.floor(Math.log(o)/(Math.LN2*7));u.realloc(p);for(var x=u.pos-1;x>=n;x--)u.buf[x+p]=u.buf[x]}function WW(n,o){for(var u=0;u>>8,n[u+2]=o>>>16,n[u+3]=o>>>24}function PM(n,o){return(n[o]|n[o+1]<<8|n[o+2]<<16)+(n[o+3]<<24)}function rX(n,o,u){for(var p="",x=o;x239?4:A>223?3:A>191?2:1;if(x+F>u)break;var Y,j,Q;F===1?A<128&&(k=A):F===2?(Y=n[x+1],(Y&192)===128&&(k=(A&31)<<6|Y&63,k<=127&&(k=null))):F===3?(Y=n[x+1],j=n[x+2],(Y&192)===128&&(j&192)===128&&(k=(A&15)<<12|(Y&63)<<6|j&63,(k<=2047||k>=55296&&k<=57343)&&(k=null))):F===4&&(Y=n[x+1],j=n[x+2],Q=n[x+3],(Y&192)===128&&(j&192)===128&&(Q&192)===128&&(k=(A&15)<<18|(Y&63)<<12|(j&63)<<6|Q&63,(k<=65535||k>=1114112)&&(k=null))),k===null?(k=65533,F=1):k>65535&&(k-=65536,p+=String.fromCharCode(k>>>10&1023|55296),k=56320|k&1023),p+=String.fromCharCode(k),x+=F}return p}function aX(n,o,u){return LM.decode(n.subarray(o,u))}function iX(n,o,u){for(var p=0,x,A;p55295&&x<57344)if(A)if(x<56320){n[u++]=239,n[u++]=191,n[u++]=189,A=x;continue}else x=A-55296<<10|x-56320|65536,A=null;else{x>56319||p+1===o.length?(n[u++]=239,n[u++]=191,n[u++]=189):A=x;continue}else A&&(n[u++]=239,n[u++]=191,n[u++]=189,A=null);x<128?n[u++]=x:(x<2048?n[u++]=x>>6|192:(x<65536?n[u++]=x>>12|224:(n[u++]=x>>18|240,n[u++]=x>>12&63|128),n[u++]=x>>6&63|128),n[u++]=x&63|128)}return u}var C3=3;function nX(n,o,u){n===1&&u.readMessage(oX,o)}function oX(n,o,u){if(n===3){var p=u.readMessage(sX,{}),x=p.id,A=p.bitmap,k=p.width,F=p.height,Y=p.left,j=p.top,Q=p.advance;o.push({id:x,bitmap:new jv({width:k+2*C3,height:F+2*C3},A),metrics:{width:k,height:F,left:Y,top:j,advance:Q}})}}function sX(n,o,u){n===1?o.id=u.readVarint():n===2?o.bitmap=u.readBytes():n===3?o.width=u.readVarint():n===4?o.height=u.readVarint():n===5?o.left=u.readSVarint():n===6?o.top=u.readSVarint():n===7&&(o.advance=u.readVarint())}function lX(n){return new D1(n).readFields(nX,[])}var zM=C3;function IM(n){for(var o=0,u=0,p=0,x=n;p=0;ve--){var Ce=F[ve];if(!(ye.w>Ce.w||ye.h>Ce.h)){if(ye.x=Ce.x,ye.y=Ce.y,j=Math.max(j,ye.y+ye.h),Y=Math.max(Y,ye.x+ye.w),ye.w===Ce.w&&ye.h===Ce.h){var qe=F.pop();ve=0&&x>=o&&wf[this.text.charCodeAt(x)];x--)p--;this.text=this.text.substring(o,p),this.sectionIndex=this.sectionIndex.slice(o,p)},bo.prototype.substring=function(o,u){var p=new bo;return p.text=this.text.substring(o,u),p.sectionIndex=this.sectionIndex.slice(o,u),p.sections=this.sections,p},bo.prototype.toString=function(){return this.text},bo.prototype.getMaxScale=function(){var o=this;return this.sectionIndex.reduce(function(u,p){return Math.max(u,o.sections[p].scale)},0)},bo.prototype.addTextSection=function(o,u){this.text+=o.text,this.sections.push(Jp.forText(o.scale,o.fontStack||u));for(var p=this.sections.length-1,x=0;x=FM?null:++this.imageSectionID:(this.imageSectionID=RM,this.imageSectionID)};function fX(n,o){for(var u=[],p=n.text,x=0,A=0,k=o;A=0,Q=0,ie=0;ie0&&kn>Fr&&(Fr=kn)}else{var Xa=u[Ir.fontStack],Va=Xa&&Xa[qr];if(Va&&Va.rect)Xr=Va.rect,ya=Va.metrics;else{var Si=o[Ir.fontStack],zi=Si&&Si[qr];if(!zi)continue;ya=zi.metrics}Br=(It-Ir.scale)*Qn}Wa?(n.verticalizable=!0,cr.push({glyph:qr,imageName:Ya,x:ye,y:ve+Br,vertical:Wa,scale:Ir.scale,fontStack:Ir.fontStack,sectionIndex:Kr,metrics:ya,rect:Xr}),ye+=gi*Ir.scale+j):(cr.push({glyph:qr,imageName:Ya,x:ye,y:ve+Br,vertical:Wa,scale:Ir.scale,fontStack:Ir.fontStack,sectionIndex:Kr,metrics:ya,rect:Xr}),ye+=ya.advance*Ir.scale+j)}if(cr.length!==0){var wo=ye-j;Ce=Math.max(wo,Ce),dX(cr,0,cr.length-1,ut,Fr)}ye=0;var To=A*It+Fr;dr.lineOffset=Math.max(Fr,Jt),ve+=To,qe=Math.max(To,qe),++et}var Yn=ve-xy,Io=L3(k),Ro=Io.horizontalAlign,qn=Io.verticalAlign;pX(n.positionedLines,ut,Ro,qn,Ce,qe,A,Yn,x.length),n.top+=-qn*Yn,n.bottom=n.top+Yn,n.left+=-Ro*Ce,n.right=n.left+Ce}function dX(n,o,u,p,x){if(!(!p&&!x))for(var A=n[u],k=A.metrics.advance*A.scale,F=(n[u].x+k)*p,Y=o;Y<=u;Y++)n[Y].x-=F,n[Y].y+=x}function pX(n,o,u,p,x,A,k,F,Y){var j=(o-u)*x,Q=0;A!==k?Q=-F*p-xy:Q=(-p*Y+.5)*k;for(var ie=0,ye=n;ie-u/2;){if(k--,k<0)return!1;F-=n[k].dist(A),A=n[k]}F+=n[k].dist(n[k+1]),k++;for(var Y=[],j=0;Fp;)j-=Y.shift().angleDelta;if(j>x)return!1;k++,F+=ie.dist(ye)}return!0}function ZM(n){for(var o=0,u=0;uj){var Ce=(j-Y)/ve,qe=dn(ie.x,ye.x,Ce),ut=dn(ie.y,ye.y,Ce),et=new Kp(qe,ut,ye.angleTo(ie),Q);return et._round(),!k||GM(n,et,F,k,o)?et:void 0}Y+=ve}}function _X(n,o,u,p,x,A,k,F,Y){var j=YM(p,A,k),Q=WM(p,x),ie=Q*k,ye=n[0].x===0||n[0].x===Y||n[0].y===0||n[0].y===Y;o-ie=0&&Mt=0&&It=0&&ye+j<=Q){var Jt=new Kp(Mt,It,kt,Ce);Jt._round(),(!p||GM(n,Jt,A,p,x))&&ve.push(Jt)}}ie+=et}return!F&&!ve.length&&!k&&(ve=XM(n,ie/2,u,p,x,A,k,!0,Y)),ve}function jM(n,o,u,p,x){for(var A=[],k=0;k=p&&ie.x>=p)&&(Q.x>=p?Q=new v(p,Q.y+(ie.y-Q.y)*((p-Q.x)/(ie.x-Q.x)))._round():ie.x>=p&&(ie=new v(p,Q.y+(ie.y-Q.y)*((p-Q.x)/(ie.x-Q.x)))._round()),!(Q.y>=x&&ie.y>=x)&&(Q.y>=x?Q=new v(Q.x+(ie.x-Q.x)*((x-Q.y)/(ie.y-Q.y)),x)._round():ie.y>=x&&(ie=new v(Q.x+(ie.x-Q.x)*((x-Q.y)/(ie.y-Q.y)),x)._round()),(!Y||!Q.equals(Y[Y.length-1]))&&(Y=[Q],A.push(Y)),Y.push(ie)))))}return A}var Qp=ps;function JM(n,o,u,p){var x=[],A=n.image,k=A.pixelRatio,F=A.paddedRect.w-2*Qp,Y=A.paddedRect.h-2*Qp,j=n.right-n.left,Q=n.bottom-n.top,ie=A.stretchX||[[0,F]],ye=A.stretchY||[[0,Y]],ve=function(Xa,Va){return Xa+Va[1]-Va[0]},Ce=ie.reduce(ve,0),qe=ye.reduce(ve,0),ut=F-Ce,et=Y-qe,kt=0,_t=Ce,Mt=0,It=qe,Jt=0,dr=ut,cr=0,Fr=et;if(A.content&&p){var Cr=A.content;kt=R1(ie,0,Cr[0]),Mt=R1(ye,0,Cr[1]),_t=R1(ie,Cr[0],Cr[2]),It=R1(ye,Cr[1],Cr[3]),Jt=Cr[0]-kt,cr=Cr[1]-Mt,dr=Cr[2]-Cr[0]-_t,Fr=Cr[3]-Cr[1]-It}var Ir=function(Xa,Va,Si,zi){var rn=F1(Xa.stretch-kt,_t,j,n.left),fn=q1(Xa.fixed-Jt,dr,Xa.stretch,Ce),Zn=F1(Va.stretch-Mt,It,Q,n.top),kn=q1(Va.fixed-cr,Fr,Va.stretch,qe),wo=F1(Si.stretch-kt,_t,j,n.left),To=q1(Si.fixed-Jt,dr,Si.stretch,Ce),Yn=F1(zi.stretch-Mt,It,Q,n.top),Io=q1(zi.fixed-cr,Fr,zi.stretch,qe),Ro=new v(rn,Zn),qn=new v(wo,Zn),Fo=new v(wo,Yn),Is=new v(rn,Yn),fc=new v(fn/k,kn/k),gh=new v(To/k,Io/k),_h=o*Math.PI/180;if(_h){var xh=Math.sin(_h),o0=Math.cos(_h),Vl=[o0,-xh,xh,o0];Ro._matMult(Vl),qn._matMult(Vl),Is._matMult(Vl),Fo._matMult(Vl)}var H1=Xa.stretch+Xa.fixed,B3=Si.stretch+Si.fixed,G1=Va.stretch+Va.fixed,O3=zi.stretch+zi.fixed,rl={x:A.paddedRect.x+Qp+H1,y:A.paddedRect.y+Qp+G1,w:B3-H1,h:O3-G1},s0=dr/k/j,Z1=Fr/k/Q;return{tl:Ro,tr:qn,bl:Is,br:Fo,tex:rl,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:fc,pixelOffsetBR:gh,minFontScaleX:s0,minFontScaleY:Z1,isSDF:u}};if(!p||!A.stretchX&&!A.stretchY)x.push(Ir({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:F+1},{fixed:0,stretch:Y+1}));else for(var Kr=KM(ie,ut,Ce),qr=KM(ye,et,qe),Br=0;Br0&&(Ce=Math.max(10,Ce),this.circleDiameter=Ce)}else{var qe=k.top*F-Y,ut=k.bottom*F+Y,et=k.left*F-Y,kt=k.right*F+Y,_t=k.collisionPadding;if(_t&&(et-=_t[0]*F,qe-=_t[1]*F,kt+=_t[2]*F,ut+=_t[3]*F),Q){var Mt=new v(et,qe),It=new v(kt,qe),Jt=new v(et,ut),dr=new v(kt,ut),cr=Q*Math.PI/180;Mt._rotate(cr),It._rotate(cr),Jt._rotate(cr),dr._rotate(cr),et=Math.min(Mt.x,It.x,Jt.x,dr.x),kt=Math.max(Mt.x,It.x,Jt.x,dr.x),qe=Math.min(Mt.y,It.y,Jt.y,dr.y),ut=Math.max(Mt.y,It.y,Jt.y,dr.y)}o.emplaceBack(u.x,u.y,et,qe,kt,ut,p,x,A)}this.boxEndIndex=o.length},$p=function(o,u){if(o===void 0&&(o=[]),u===void 0&&(u=bX),this.data=o,this.length=this.data.length,this.compare=u,this.length>0)for(var p=(this.length>>1)-1;p>=0;p--)this._down(p)};$p.prototype.push=function(o){this.data.push(o),this.length++,this._up(this.length-1)},$p.prototype.pop=function(){if(this.length!==0){var o=this.data[0],u=this.data.pop();return this.length--,this.length>0&&(this.data[0]=u,this._down(0)),o}},$p.prototype.peek=function(){return this.data[0]},$p.prototype._up=function(o){for(var u=this,p=u.data,x=u.compare,A=p[o];o>0;){var k=o-1>>1,F=p[k];if(x(A,F)>=0)break;p[o]=F,o=k}p[o]=A},$p.prototype._down=function(o){for(var u=this,p=u.data,x=u.compare,A=this.length>>1,k=p[o];o=0)break;p[o]=Y,o=F}p[o]=k};function bX(n,o){return no?1:0}function wX(n,o,u){o===void 0&&(o=1),u===void 0&&(u=!1);for(var p=1/0,x=1/0,A=-1/0,k=-1/0,F=n[0],Y=0;YA)&&(A=j.x),(!Y||j.y>k)&&(k=j.y)}var Q=A-p,ie=k-x,ye=Math.min(Q,ie),ve=ye/2,Ce=new $p([],TX);if(ye===0)return new v(p,x);for(var qe=p;qeet.d||!et.d)&&(et=_t,u&&console.log("found best %d after %d probes",Math.round(1e4*_t.d)/1e4,kt)),!(_t.max-et.d<=o)&&(ve=_t.h/2,Ce.push(new e0(_t.p.x-ve,_t.p.y-ve,ve,n)),Ce.push(new e0(_t.p.x+ve,_t.p.y-ve,ve,n)),Ce.push(new e0(_t.p.x-ve,_t.p.y+ve,ve,n)),Ce.push(new e0(_t.p.x+ve,_t.p.y+ve,ve,n)),kt+=4)}return u&&(console.log("num probes: "+kt),console.log("best distance: "+et.d)),et.p}function TX(n,o){return o.max-n.max}function e0(n,o,u,p){this.p=new v(n,o),this.h=u,this.d=AX(this.p,p),this.max=this.d+this.h*Math.SQRT2}function AX(n,o){for(var u=!1,p=1/0,x=0;xn.y!=Q.y>n.y&&n.x<(Q.x-j.x)*(n.y-j.y)/(Q.y-j.y)+j.x&&(u=!u),p=Math.min(p,oc(n,j,Q))}return(u?1:-1)*Math.sqrt(p)}function MX(n){for(var o=0,u=0,p=0,x=n[0],A=0,k=x.length,F=k-1;A=Nr||Vl.y<0||Vl.y>=Nr||CX(n,Vl,o0,u,p,x,qr,n.layers[0],n.collisionBoxArray,o.index,o.sourceLayerIndex,n.index,et,It,cr,Y,_t,Jt,Fr,ve,o,A,j,Q,k)};if(Cr==="line")for(var ya=0,Xr=jM(o.geometry,0,0,Nr,Nr);ya1){var Zn=gX(fn,dr,u.vertical||Ce,p,qe,kt);Zn&&Br(fn,Zn)}}else if(o.type==="Polygon")for(var kn=0,wo=T3(o.geometry,0);knmh&&Me(n.layerIds[0]+': Value for "text-size" is >= '+by+'. Reduce your "text-size".')):ut.kind==="composite"&&(et=[Lu*ve.compositeTextSizes[0].evaluate(k,{},Ce),Lu*ve.compositeTextSizes[1].evaluate(k,{},Ce)],(et[0]>mh||et[1]>mh)&&Me(n.layerIds[0]+': Value for "text-size" is >= '+by+'. Reduce your "text-size".')),n.addSymbols(n.text,qe,et,F,A,k,j,o,Y.lineStartIndex,Y.lineLength,ye,Ce);for(var kt=0,_t=Q;kt<_t.length;kt+=1){var Mt=_t[kt];ie[Mt]=n.text.placedSymbolArray.length-1}return qe.length*4}function e7(n){for(var o in n)return n[o];return null}function CX(n,o,u,p,x,A,k,F,Y,j,Q,ie,ye,ve,Ce,qe,ut,et,kt,_t,Mt,It,Jt,dr,cr){var Fr,Cr=n.addToLineVertexArray(o,u),Ir,Kr,qr,Br,ya=0,Xr=0,Ya=0,gi=0,Wa=-1,Xa=-1,Va={},Si=w(""),zi=0,rn=0;if(F._unevaluatedLayout.getValue("text-radial-offset")===void 0?(Fr=F.layout.get("text-offset").evaluate(Mt,{},dr).map(function(Ay){return Ay*Qn}),zi=Fr[0],rn=Fr[1]):(zi=F.layout.get("text-radial-offset").evaluate(Mt,{},dr)*Qn,rn=P3),n.allowVerticalPlacement&&p.vertical){var fn=F.layout.get("text-rotate").evaluate(Mt,{},dr),Zn=fn+90,kn=p.vertical;qr=new N1(Y,o,j,Q,ie,kn,ye,ve,Ce,Zn),k&&(Br=new N1(Y,o,j,Q,ie,k,ut,et,Ce,Zn))}if(x){var wo=F.layout.get("icon-rotate").evaluate(Mt,{}),To=F.layout.get("icon-text-fit")!=="none",Yn=JM(x,wo,Jt,To),Io=k?JM(k,wo,Jt,To):void 0;Kr=new N1(Y,o,j,Q,ie,x,ut,et,!1,wo),ya=Yn.length*4;var Ro=n.iconSizeData,qn=null;Ro.kind==="source"?(qn=[Lu*F.layout.get("icon-size").evaluate(Mt,{})],qn[0]>mh&&Me(n.layerIds[0]+': Value for "icon-size" is >= '+by+'. Reduce your "icon-size".')):Ro.kind==="composite"&&(qn=[Lu*It.compositeIconSizes[0].evaluate(Mt,{},dr),Lu*It.compositeIconSizes[1].evaluate(Mt,{},dr)],(qn[0]>mh||qn[1]>mh)&&Me(n.layerIds[0]+': Value for "icon-size" is >= '+by+'. Reduce your "icon-size".')),n.addSymbols(n.icon,Yn,qn,_t,kt,Mt,!1,o,Cr.lineStartIndex,Cr.lineLength,-1,dr),Wa=n.icon.placedSymbolArray.length-1,Io&&(Xr=Io.length*4,n.addSymbols(n.icon,Io,qn,_t,kt,Mt,zs.vertical,o,Cr.lineStartIndex,Cr.lineLength,-1,dr),Xa=n.icon.placedSymbolArray.length-1)}for(var Fo in p.horizontal){var Is=p.horizontal[Fo];if(!Ir){Si=w(Is.text);var fc=F.layout.get("text-rotate").evaluate(Mt,{},dr);Ir=new N1(Y,o,j,Q,ie,Is,ye,ve,Ce,fc)}var gh=Is.positionedLines.length===1;if(Ya+=$M(n,o,Is,A,F,Ce,Mt,qe,Cr,p.vertical?zs.horizontal:zs.horizontalOnly,gh?Object.keys(p.horizontal):[Fo],Va,Wa,It,dr),gh)break}p.vertical&&(gi+=$M(n,o,p.vertical,A,F,Ce,Mt,qe,Cr,zs.vertical,["vertical"],Va,Xa,It,dr));var _h=Ir?Ir.boxStartIndex:n.collisionBoxArray.length,xh=Ir?Ir.boxEndIndex:n.collisionBoxArray.length,o0=qr?qr.boxStartIndex:n.collisionBoxArray.length,Vl=qr?qr.boxEndIndex:n.collisionBoxArray.length,H1=Kr?Kr.boxStartIndex:n.collisionBoxArray.length,B3=Kr?Kr.boxEndIndex:n.collisionBoxArray.length,G1=Br?Br.boxStartIndex:n.collisionBoxArray.length,O3=Br?Br.boxEndIndex:n.collisionBoxArray.length,rl=-1,s0=function(Ay,m7){return Ay&&Ay.circleDiameter?Math.max(Ay.circleDiameter,m7):m7};rl=s0(Ir,rl),rl=s0(qr,rl),rl=s0(Kr,rl),rl=s0(Br,rl);var Z1=rl>-1?1:0;Z1&&(rl*=cr/Qn),n.glyphOffsetArray.length>=yi.MAX_GLYPHS&&Me("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),Mt.sortKey!==void 0&&n.addToSortKeyRanges(n.symbolInstances.length,Mt.sortKey),n.symbolInstances.emplaceBack(o.x,o.y,Va.right>=0?Va.right:-1,Va.center>=0?Va.center:-1,Va.left>=0?Va.left:-1,Va.vertical||-1,Wa,Xa,Si,_h,xh,o0,Vl,H1,B3,G1,O3,j,Ya,gi,ya,Xr,Z1,0,ye,zi,rn,rl)}function EX(n,o,u,p){var x=n.compareText;if(!(o in x))x[o]=[];else for(var A=x[o],k=A.length-1;k>=0;k--)if(p.dist(A[k])0)&&(k.value.kind!=="constant"||k.value.value.length>0),Q=Y.value.kind!=="constant"||!!Y.value.value||Object.keys(Y.parameters).length>0,ie=A.get("symbol-sort-key");if(this.features=[],!(!j&&!Q)){for(var ye=u.iconDependencies,ve=u.glyphDependencies,Ce=u.availableImages,qe=new jt(this.zoom),ut=0,et=o;ut=0;for(var gi=0,Wa=Fr.sections;gi=0;Y--)k[Y]={x:u[Y].x,y:u[Y].y,tileUnitDistanceFromAnchor:A},Y>0&&(A+=u[Y-1].dist(u[Y]));for(var j=0;j0},yi.prototype.hasIconData=function(){return this.icon.segments.get().length>0},yi.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},yi.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},yi.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},yi.prototype.addIndicesForPlacedSymbol=function(o,u){for(var p=o.placedSymbolArray.get(u),x=p.vertexStartIndex+p.numGlyphs*4,A=p.vertexStartIndex;A1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(o),this.sortedAngle=o,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var p=0,x=this.symbolInstanceIndexes;p=0&&j.indexOf(F)===Y&&u.addIndicesForPlacedSymbol(u.text,F)}),k.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,k.verticalPlacedTextSymbolIndex),k.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,k.placedIconSymbolIndex),k.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,k.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},y("SymbolBucket",yi,{omit:["layers","collisionBoxArray","features","compareText"]}),yi.MAX_GLYPHS=65535,yi.addDynamicAttributes=I3;function zX(n,o){return o.replace(/{([^{}]+)}/g,function(u,p){return p in n?String(n[p]):""})}var IX=new Rn({"symbol-placement":new Tr(Xt.layout_symbol["symbol-placement"]),"symbol-spacing":new Tr(Xt.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Tr(Xt.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new Hr(Xt.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Tr(Xt.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Tr(Xt.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Tr(Xt.layout_symbol["icon-ignore-placement"]),"icon-optional":new Tr(Xt.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Tr(Xt.layout_symbol["icon-rotation-alignment"]),"icon-size":new Hr(Xt.layout_symbol["icon-size"]),"icon-text-fit":new Tr(Xt.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Tr(Xt.layout_symbol["icon-text-fit-padding"]),"icon-image":new Hr(Xt.layout_symbol["icon-image"]),"icon-rotate":new Hr(Xt.layout_symbol["icon-rotate"]),"icon-padding":new Tr(Xt.layout_symbol["icon-padding"]),"icon-keep-upright":new Tr(Xt.layout_symbol["icon-keep-upright"]),"icon-offset":new Hr(Xt.layout_symbol["icon-offset"]),"icon-anchor":new Hr(Xt.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Tr(Xt.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Tr(Xt.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Tr(Xt.layout_symbol["text-rotation-alignment"]),"text-field":new Hr(Xt.layout_symbol["text-field"]),"text-font":new Hr(Xt.layout_symbol["text-font"]),"text-size":new Hr(Xt.layout_symbol["text-size"]),"text-max-width":new Hr(Xt.layout_symbol["text-max-width"]),"text-line-height":new Tr(Xt.layout_symbol["text-line-height"]),"text-letter-spacing":new Hr(Xt.layout_symbol["text-letter-spacing"]),"text-justify":new Hr(Xt.layout_symbol["text-justify"]),"text-radial-offset":new Hr(Xt.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Tr(Xt.layout_symbol["text-variable-anchor"]),"text-anchor":new Hr(Xt.layout_symbol["text-anchor"]),"text-max-angle":new Tr(Xt.layout_symbol["text-max-angle"]),"text-writing-mode":new Tr(Xt.layout_symbol["text-writing-mode"]),"text-rotate":new Hr(Xt.layout_symbol["text-rotate"]),"text-padding":new Tr(Xt.layout_symbol["text-padding"]),"text-keep-upright":new Tr(Xt.layout_symbol["text-keep-upright"]),"text-transform":new Hr(Xt.layout_symbol["text-transform"]),"text-offset":new Hr(Xt.layout_symbol["text-offset"]),"text-allow-overlap":new Tr(Xt.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Tr(Xt.layout_symbol["text-ignore-placement"]),"text-optional":new Tr(Xt.layout_symbol["text-optional"])}),RX=new Rn({"icon-opacity":new Hr(Xt.paint_symbol["icon-opacity"]),"icon-color":new Hr(Xt.paint_symbol["icon-color"]),"icon-halo-color":new Hr(Xt.paint_symbol["icon-halo-color"]),"icon-halo-width":new Hr(Xt.paint_symbol["icon-halo-width"]),"icon-halo-blur":new Hr(Xt.paint_symbol["icon-halo-blur"]),"icon-translate":new Tr(Xt.paint_symbol["icon-translate"]),"icon-translate-anchor":new Tr(Xt.paint_symbol["icon-translate-anchor"]),"text-opacity":new Hr(Xt.paint_symbol["text-opacity"]),"text-color":new Hr(Xt.paint_symbol["text-color"],{runtimeType:ws,getOverride:function(n){return n.textColor},hasOverride:function(n){return!!n.textColor}}),"text-halo-color":new Hr(Xt.paint_symbol["text-halo-color"]),"text-halo-width":new Hr(Xt.paint_symbol["text-halo-width"]),"text-halo-blur":new Hr(Xt.paint_symbol["text-halo-blur"]),"text-translate":new Tr(Xt.paint_symbol["text-translate"]),"text-translate-anchor":new Tr(Xt.paint_symbol["text-translate-anchor"])}),R3={paint:RX,layout:IX},a0=function(o){this.type=o.property.overrides?o.property.overrides.runtimeType:ef,this.defaultValue=o};a0.prototype.evaluate=function(o){if(o.formattedSection){var u=this.defaultValue.property.overrides;if(u&&u.hasOverride(o.formattedSection))return u.getOverride(o.formattedSection)}return o.feature&&o.featureState?this.defaultValue.evaluate(o.feature,o.featureState):this.defaultValue.property.specification.default},a0.prototype.eachChild=function(o){if(!this.defaultValue.isConstant()){var u=this.defaultValue.value;o(u._styleExpression.expression)}},a0.prototype.outputDefined=function(){return!1},a0.prototype.serialize=function(){return null},y("FormatSectionOverride",a0,{omit:["defaultValue"]});var FX=function(n){function o(u){n.call(this,u,R3)}return n&&(o.__proto__=n),o.prototype=Object.create(n&&n.prototype),o.prototype.constructor=o,o.prototype.recalculate=function(p,x){if(n.prototype.recalculate.call(this,p,x),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var A=this.layout.get("text-writing-mode");if(A){for(var k=[],F=0,Y=A;F",targetMapId:x,sourceMapId:k.mapId})}}},i0.prototype.receive=function(o){var u=o.data,p=u.id;if(p&&!(u.targetMapId&&this.mapId!==u.targetMapId))if(u.type===""){delete this.tasks[p];var x=this.cancelCallbacks[p];delete this.cancelCallbacks[p],x&&x()}else at()||u.mustQueue?(this.tasks[p]=u,this.taskQueue.push(p),this.invoker.trigger()):this.processTask(p,u)},i0.prototype.process=function(){if(this.taskQueue.length){var o=this.taskQueue.shift(),u=this.tasks[o];delete this.tasks[o],this.taskQueue.length&&this.invoker.trigger(),u&&this.processTask(o,u)}},i0.prototype.processTask=function(o,u){var p=this;if(u.type===""){var x=this.callbacks[o];delete this.callbacks[o],x&&(u.error?x(Z(u.error)):x(null,Z(u.data)))}else{var A=!1,k=St(this.globalScope)?void 0:[],F=u.hasCallback?function(ye,ve){A=!0,delete p.cancelCallbacks[o],p.target.postMessage({id:o,type:"",sourceMapId:p.mapId,error:ye?U(ye):null,data:U(ve,k)},k)}:function(ye){A=!0},Y=null,j=Z(u.data);if(this.parent[u.type])Y=this.parent[u.type](u.sourceMapId,j,F);else if(this.parent.getWorkerSource){var Q=u.type.split("."),ie=this.parent.getWorkerSource(u.sourceMapId,Q[0],j.source);Y=ie[Q[1]](j,F)}else F(new Error("Could not find function "+u.type));!A&&Y&&Y.cancel&&(this.cancelCallbacks[o]=Y.cancel)}},i0.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};function WX(n,o,u){o=Math.pow(2,u)-o-1;var p=n7(n*256,o*256,u),x=n7((n+1)*256,(o+1)*256,u);return p[0]+","+p[1]+","+x[0]+","+x[1]}function n7(n,o,u){var p=2*Math.PI*6378137/256/Math.pow(2,u),x=n*p-2*Math.PI*6378137/2,A=o*p-2*Math.PI*6378137/2;return[x,A]}var Mn=function(o,u){o&&(u?this.setSouthWest(o).setNorthEast(u):o.length===4?this.setSouthWest([o[0],o[1]]).setNorthEast([o[2],o[3]]):this.setSouthWest(o[0]).setNorthEast(o[1]))};Mn.prototype.setNorthEast=function(o){return this._ne=o instanceof Hi?new Hi(o.lng,o.lat):Hi.convert(o),this},Mn.prototype.setSouthWest=function(o){return this._sw=o instanceof Hi?new Hi(o.lng,o.lat):Hi.convert(o),this},Mn.prototype.extend=function(o){var u=this._sw,p=this._ne,x,A;if(o instanceof Hi)x=o,A=o;else if(o instanceof Mn){if(x=o._sw,A=o._ne,!x||!A)return this}else{if(Array.isArray(o))if(o.length===4||o.every(Array.isArray)){var k=o;return this.extend(Mn.convert(k))}else{var F=o;return this.extend(Hi.convert(F))}return this}return!u&&!p?(this._sw=new Hi(x.lng,x.lat),this._ne=new Hi(A.lng,A.lat)):(u.lng=Math.min(x.lng,u.lng),u.lat=Math.min(x.lat,u.lat),p.lng=Math.max(A.lng,p.lng),p.lat=Math.max(A.lat,p.lat)),this},Mn.prototype.getCenter=function(){return new Hi((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},Mn.prototype.getSouthWest=function(){return this._sw},Mn.prototype.getNorthEast=function(){return this._ne},Mn.prototype.getNorthWest=function(){return new Hi(this.getWest(),this.getNorth())},Mn.prototype.getSouthEast=function(){return new Hi(this.getEast(),this.getSouth())},Mn.prototype.getWest=function(){return this._sw.lng},Mn.prototype.getSouth=function(){return this._sw.lat},Mn.prototype.getEast=function(){return this._ne.lng},Mn.prototype.getNorth=function(){return this._ne.lat},Mn.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},Mn.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},Mn.prototype.isEmpty=function(){return!(this._sw&&this._ne)},Mn.prototype.contains=function(o){var u=Hi.convert(o),p=u.lng,x=u.lat,A=this._sw.lat<=x&&x<=this._ne.lat,k=this._sw.lng<=p&&p<=this._ne.lng;return this._sw.lng>this._ne.lng&&(k=this._sw.lng>=p&&p>=this._ne.lng),A&&k},Mn.convert=function(o){return!o||o instanceof Mn?o:new Mn(o)};var o7=63710088e-1,Hi=function(o,u){if(isNaN(o)||isNaN(u))throw new Error("Invalid LngLat object: ("+o+", "+u+")");if(this.lng=+o,this.lat=+u,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};Hi.prototype.wrap=function(){return new Hi(B(this.lng,-180,180),this.lat)},Hi.prototype.toArray=function(){return[this.lng,this.lat]},Hi.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},Hi.prototype.distanceTo=function(o){var u=Math.PI/180,p=this.lat*u,x=o.lat*u,A=Math.sin(p)*Math.sin(x)+Math.cos(p)*Math.cos(x)*Math.cos((o.lng-this.lng)*u),k=o7*Math.acos(Math.min(A,1));return k},Hi.prototype.toBounds=function(o){o===void 0&&(o=0);var u=40075017,p=360*o/u,x=p/Math.cos(Math.PI/180*this.lat);return new Mn(new Hi(this.lng-x,this.lat-p),new Hi(this.lng+x,this.lat+p))},Hi.convert=function(o){if(o instanceof Hi)return o;if(Array.isArray(o)&&(o.length===2||o.length===3))return new Hi(Number(o[0]),Number(o[1]));if(!Array.isArray(o)&&typeof o=="object"&&o!==null)return new Hi(Number("lng"in o?o.lng:o.lon),Number(o.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")};var s7=2*Math.PI*o7;function l7(n){return s7*Math.cos(n*Math.PI/180)}function u7(n){return(180+n)/360}function f7(n){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+n*Math.PI/360)))/360}function c7(n,o){return n/l7(o)}function XX(n){return n*360-180}function q3(n){var o=180-n*360;return 360/Math.PI*Math.atan(Math.exp(o*Math.PI/180))-90}function jX(n,o){return n*l7(q3(o))}function JX(n){return 1/Math.cos(n*Math.PI/180)}var Kv=function(o,u,p){p===void 0&&(p=0),this.x=+o,this.y=+u,this.z=+p};Kv.fromLngLat=function(o,u){u===void 0&&(u=0);var p=Hi.convert(o);return new Kv(u7(p.lng),f7(p.lat),c7(u,p.lat))},Kv.prototype.toLngLat=function(){return new Hi(XX(this.x),q3(this.y))},Kv.prototype.toAltitude=function(){return jX(this.z,this.y)},Kv.prototype.meterInMercatorCoordinateUnits=function(){return 1/s7*JX(q3(this.y))};var Qv=function(o,u,p){this.z=o,this.x=u,this.y=p,this.key=Ty(0,o,o,u,p)};Qv.prototype.equals=function(o){return this.z===o.z&&this.x===o.x&&this.y===o.y},Qv.prototype.url=function(o,u){var p=WX(this.x,this.y,this.z),x=KX(this.z,this.x,this.y);return o[(this.x+this.y)%o.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String(u==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",x).replace("{bbox-epsg-3857}",p)},Qv.prototype.getTilePoint=function(o){var u=Math.pow(2,this.z);return new v((o.x*u-this.x)*Nr,(o.y*u-this.y)*Nr)},Qv.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var h7=function(o,u){this.wrap=o,this.canonical=u,this.key=Ty(o,u.z,u.z,u.x,u.y)},Sn=function(o,u,p,x,A){this.overscaledZ=o,this.wrap=u,this.canonical=new Qv(p,+x,+A),this.key=Ty(u,o,p,x,A)};Sn.prototype.equals=function(o){return this.overscaledZ===o.overscaledZ&&this.wrap===o.wrap&&this.canonical.equals(o.canonical)},Sn.prototype.scaledTo=function(o){var u=this.canonical.z-o;return o>this.canonical.z?new Sn(o,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Sn(o,this.wrap,o,this.canonical.x>>u,this.canonical.y>>u)},Sn.prototype.calculateScaledKey=function(o,u){var p=this.canonical.z-o;return o>this.canonical.z?Ty(this.wrap*+u,o,this.canonical.z,this.canonical.x,this.canonical.y):Ty(this.wrap*+u,o,o,this.canonical.x>>p,this.canonical.y>>p)},Sn.prototype.isChildOf=function(o){if(o.wrap!==this.wrap)return!1;var u=this.canonical.z-o.canonical.z;return o.overscaledZ===0||o.overscaledZ>u&&o.canonical.y===this.canonical.y>>u},Sn.prototype.children=function(o){if(this.overscaledZ>=o)return[new Sn(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var u=this.canonical.z+1,p=this.canonical.x*2,x=this.canonical.y*2;return[new Sn(u,this.wrap,u,p,x),new Sn(u,this.wrap,u,p+1,x),new Sn(u,this.wrap,u,p,x+1),new Sn(u,this.wrap,u,p+1,x+1)]},Sn.prototype.isLessThan=function(o){return this.wrapo.wrap?!1:this.overscaledZo.overscaledZ?!1:this.canonical.xo.canonical.x?!1:this.canonical.y0;A--)x=1<=this.dim+1||u<-1||u>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(u+1)*this.stride+(o+1)},lc.prototype._unpackMapbox=function(o,u,p){return(o*256*256+u*256+p)/10-1e4},lc.prototype._unpackTerrarium=function(o,u,p){return o*256+u+p/256-32768},lc.prototype.getPixels=function(){return new es({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},lc.prototype.backfillBorder=function(o,u,p){if(this.dim!==o.dim)throw new Error("dem dimension mismatch");var x=u*this.dim,A=u*this.dim+this.dim,k=p*this.dim,F=p*this.dim+this.dim;switch(u){case-1:x=A-1;break;case 1:A=x+1;break}switch(p){case-1:k=F-1;break;case 1:F=k+1;break}for(var Y=-u*this.dim,j=-p*this.dim,Q=k;Q=0&&ie[3]>=0&&Y.insert(F,ie[0],ie[1],ie[2],ie[3])}},uc.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new Wp.VectorTile(new D1(this.rawTileData)).layers,this.sourceLayerCoder=new U1(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},uc.prototype.query=function(o,u,p,x){var A=this;this.loadVTLayers();for(var k=o.params||{},F=Nr/o.tileSize/o.scale,Y=cf(k.filter),j=o.queryGeometry,Q=o.queryPadding*F,ie=d7(j),ye=this.grid.query(ie.minX-Q,ie.minY-Q,ie.maxX+Q,ie.maxY+Q),ve=d7(o.cameraQueryGeometry),Ce=this.grid3D.query(ve.minX-Q,ve.minY-Q,ve.maxX+Q,ve.maxY+Q,function(Jt,dr,cr,Fr){return Ul(o.cameraQueryGeometry,Jt-Q,dr-Q,cr+Q,Fr+Q)}),qe=0,ut=Ce;qex)A=!1;else if(!u)A=!0;else if(this.expirationTime=$r.maxzoom)&&$r.visibility!=="none"){T(gr,this.zoom,ce);var ga=Pt[$r.id]=$r.createBucket({index:yt.bucketLayerIDs.length,layers:gr,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:Zr,sourceID:this.source});ga.populate(Or,Ft,this.tileID.canonical),yt.bucketLayerIDs.push(gr.map(function(Ga){return Ga.id}))}}}}var nr,Ti,Ea,si,fa=a.mapObject(Ft.glyphDependencies,function(Ga){return Object.keys(Ga).map(Number)});Object.keys(fa).length?Ee.send("getGlyphs",{uid:this.uid,stacks:fa},function(Ga,Kn){nr||(nr=Ga,Ti=Kn,xs.call($e))}):Ti={};var Pn=Object.keys(Ft.iconDependencies);Pn.length?Ee.send("getImages",{icons:Pn,source:this.source,tileID:this.tileID,type:"icons"},function(Ga,Kn){nr||(nr=Ga,Ea=Kn,xs.call($e))}):Ea={};var Co=Object.keys(Ft.patternDependencies);Co.length?Ee.send("getImages",{icons:Co,source:this.source,tileID:this.tileID,type:"patterns"},function(Ga,Kn){nr||(nr=Ga,si=Kn,xs.call($e))}):si={},xs.call(this);function xs(){if(nr)return Ne(nr);if(Ti&&Ea&&si){var Ga=new m(Ti),Kn=new a.ImageAtlas(Ea,si);for(var hu in Pt){var Ui=Pt[hu];Ui instanceof a.SymbolBucket?(T(Ui.layers,this.zoom,ce),a.performSymbolLayout(Ui,Ti,Ga.positions,Ea,Kn.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):Ui.hasPattern&&(Ui instanceof a.LineBucket||Ui instanceof a.FillBucket||Ui instanceof a.FillExtrusionBucket)&&(T(Ui.layers,this.zoom,ce),Ui.addFeatures(Ft,this.tileID.canonical,Kn.patternPositions))}this.status="done",Ne(null,{buckets:a.values(Pt).filter(function(dl){return!dl.isEmpty()}),featureIndex:yt,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:Ga.image,imageAtlas:Kn,glyphMap:this.returnDependencies?Ti:null,iconMap:this.returnDependencies?Ea:null,glyphPositions:this.returnDependencies?Ga.positions:null})}}};function T(se,ee,le){for(var ce=new a.EvaluationParameters(ee),Ee=0,Ne=se;Ee=0!=!!ee&&se.reverse()}var O=a.vectorTile.VectorTileFeature.prototype.toGeoJSON,H=function(ee){this._feature=ee,this.extent=a.EXTENT,this.type=ee.type,this.properties=ee.tags,"id"in ee&&!isNaN(ee.id)&&(this.id=parseInt(ee.id,10))};H.prototype.loadGeometry=function(){if(this._feature.type===1){for(var ee=[],le=0,ce=this._feature.geometry;le>31}function at(se,ee){for(var le=se.loadGeometry(),ce=se.type,Ee=0,Ne=0,$e=le.length,Ze=0;Ze<$e;Ze++){var yt=le[Ze],Pt=1;ce===1&&(Pt=yt.length),ee.writeVarint(je(1,Pt));for(var Ft=ce===3?yt.length-1:yt.length,tr=0;tr>1;St(se,ee,$e,ce,Ee,Ne%2),Ye(se,ee,le,ce,$e-1,Ne+1),Ye(se,ee,le,$e+1,Ee,Ne+1)}}function St(se,ee,le,ce,Ee,Ne){for(;Ee>ce;){if(Ee-ce>600){var $e=Ee-ce+1,Ze=le-ce+1,yt=Math.log($e),Pt=.5*Math.exp(2*yt/3),Ft=.5*Math.sqrt(yt*Pt*($e-Pt)/$e)*(Ze-$e/2<0?-1:1),tr=Math.max(ce,Math.floor(le-Ze*Pt/$e+Ft)),Wt=Math.min(Ee,Math.floor(le+($e-Ze)*Pt/$e+Ft));St(se,ee,le,tr,Wt,Ne)}var Sr=ee[2*le+Ne],Zr=ce,Or=Ee;for(it(se,ee,ce,le),ee[2*Ee+Ne]>Sr&&it(se,ee,ce,Ee);ZrSr;)Or--}ee[2*ce+Ne]===Sr?it(se,ee,ce,Or):(Or++,it(se,ee,Or,Ee)),Or<=le&&(ce=Or+1),le<=Or&&(Ee=Or-1)}}function it(se,ee,le,ce){mt(se,le,ce),mt(ee,2*le,2*ce),mt(ee,2*le+1,2*ce+1)}function mt(se,ee,le){var ce=se[ee];se[ee]=se[le],se[le]=ce}function bt(se,ee,le,ce,Ee,Ne,$e){for(var Ze=[0,se.length-1,0],yt=[],Pt,Ft;Ze.length;){var tr=Ze.pop(),Wt=Ze.pop(),Sr=Ze.pop();if(Wt-Sr<=$e){for(var Zr=Sr;Zr<=Wt;Zr++)Pt=ee[2*Zr],Ft=ee[2*Zr+1],Pt>=le&&Pt<=Ee&&Ft>=ce&&Ft<=Ne&&yt.push(se[Zr]);continue}var Or=Math.floor((Sr+Wt)/2);Pt=ee[2*Or],Ft=ee[2*Or+1],Pt>=le&&Pt<=Ee&&Ft>=ce&&Ft<=Ne&&yt.push(se[Or]);var ca=(tr+1)%2;(tr===0?le<=Pt:ce<=Ft)&&(Ze.push(Sr),Ze.push(Or-1),Ze.push(ca)),(tr===0?Ee>=Pt:Ne>=Ft)&&(Ze.push(Or+1),Ze.push(Wt),Ze.push(ca))}return yt}function vt(se,ee,le,ce,Ee,Ne){for(var $e=[0,se.length-1,0],Ze=[],yt=Ee*Ee;$e.length;){var Pt=$e.pop(),Ft=$e.pop(),tr=$e.pop();if(Ft-tr<=Ne){for(var Wt=tr;Wt<=Ft;Wt++)de(ee[2*Wt],ee[2*Wt+1],le,ce)<=yt&&Ze.push(se[Wt]);continue}var Sr=Math.floor((tr+Ft)/2),Zr=ee[2*Sr],Or=ee[2*Sr+1];de(Zr,Or,le,ce)<=yt&&Ze.push(se[Sr]);var ca=(Pt+1)%2;(Pt===0?le-Ee<=Zr:ce-Ee<=Or)&&($e.push(tr),$e.push(Sr-1),$e.push(ca)),(Pt===0?le+Ee>=Zr:ce+Ee>=Or)&&($e.push(Sr+1),$e.push(Ft),$e.push(ca))}return Ze}function de(se,ee,le,ce){var Ee=se-le,Ne=ee-ce;return Ee*Ee+Ne*Ne}var De=function(se){return se[0]},ge=function(se){return se[1]},rt=function(ee,le,ce,Ee,Ne){le===void 0&&(le=De),ce===void 0&&(ce=ge),Ee===void 0&&(Ee=64),Ne===void 0&&(Ne=Float64Array),this.nodeSize=Ee,this.points=ee;for(var $e=ee.length<65536?Uint16Array:Uint32Array,Ze=this.ids=new $e(ee.length),yt=this.coords=new Ne(ee.length*2),Pt=0;Pt=Ee;Ft--){var tr=+Date.now();yt=this._cluster(yt,Ft),this.trees[Ft]=new rt(yt,Be,st,$e,Float32Array),ce&&console.log("z%d: %d clusters in %dms",Ft,yt.length,+Date.now()-tr)}return ce&&console.timeEnd("total time"),this},We.prototype.getClusters=function(ee,le){var ce=((ee[0]+180)%360+360)%360-180,Ee=Math.max(-90,Math.min(90,ee[1])),Ne=ee[2]===180?180:((ee[2]+180)%360+360)%360-180,$e=Math.max(-90,Math.min(90,ee[3]));if(ee[2]-ee[0]>=360)ce=-180,Ne=180;else if(ce>Ne){var Ze=this.getClusters([ce,Ee,180,$e],le),yt=this.getClusters([-180,Ee,Ne,$e],le);return Ze.concat(yt)}for(var Pt=this.trees[this._limitZoom(le)],Ft=Pt.range(Ut(ce),Ct($e),Ut(Ne),Ct(Ee)),tr=[],Wt=0,Sr=Ft;Wtle&&(Or+=ri.numPoints||1)}if(Or>=yt){for(var Yr=tr.x*Zr,gr=tr.y*Zr,$r=Ze&&Zr>1?this._map(tr,!0):null,ga=(Ft<<5)+(le+1)+this.points.length,nr=0,Ti=Sr;nr1)for(var Pn=0,Co=Sr;Pn>5},We.prototype._getOriginZoom=function(ee){return(ee-this.points.length)%32},We.prototype._map=function(ee,le){if(ee.numPoints)return le?Ht({},ee.properties):ee.properties;var ce=this.points[ee.index].properties,Ee=this.options.map(ce);return le&&Ee===ce?Ht({},Ee):Ee};function qt(se,ee,le,ce,Ee){return{x:se,y:ee,zoom:1/0,id:le,parentId:-1,numPoints:ce,properties:Ee}}function Dt(se,ee){var le=se.geometry.coordinates,ce=le[0],Ee=le[1];return{x:Ut(ce),y:Ct(Ee),zoom:1/0,index:ee,parentId:-1}}function Tt(se){return{type:"Feature",id:se.id,properties:Rt(se),geometry:{type:"Point",coordinates:[At(se.x),Vt(se.y)]}}}function Rt(se){var ee=se.numPoints,le=ee>=1e4?Math.round(ee/1e3)+"k":ee>=1e3?Math.round(ee/100)/10+"k":ee;return Ht(Ht({},se.properties),{cluster:!0,cluster_id:se.id,point_count:ee,point_count_abbreviated:le})}function Ut(se){return se/360+.5}function Ct(se){var ee=Math.sin(se*Math.PI/180),le=.5-.25*Math.log((1+ee)/(1-ee))/Math.PI;return le<0?0:le>1?1:le}function At(se){return(se-.5)*360}function Vt(se){var ee=(180-se*360)*Math.PI/180;return 360*Math.atan(Math.exp(ee))/Math.PI-90}function Ht(se,ee){for(var le in ee)se[le]=ee[le];return se}function Be(se){return se.x}function st(se){return se.y}function sr(se,ee,le,ce){for(var Ee=ce,Ne=le-ee>>1,$e=le-ee,Ze,yt=se[ee],Pt=se[ee+1],Ft=se[le],tr=se[le+1],Wt=ee+3;WtEe)Ze=Wt,Ee=Sr;else if(Sr===Ee){var Zr=Math.abs(Wt-Ne);Zr<$e&&(Ze=Wt,$e=Zr)}}Ee>ce&&(Ze-ee>3&&sr(se,ee,Ze,ce),se[Ze+2]=Ee,le-Ze>3&&sr(se,Ze,le,ce))}function Pr(se,ee,le,ce,Ee,Ne){var $e=Ee-le,Ze=Ne-ce;if($e!==0||Ze!==0){var yt=((se-le)*$e+(ee-ce)*Ze)/($e*$e+Ze*Ze);yt>1?(le=Ee,ce=Ne):yt>0&&(le+=$e*yt,ce+=Ze*yt)}return $e=se-le,Ze=ee-ce,$e*$e+Ze*Ze}function Et(se,ee,le,ce){var Ee={id:typeof se=="undefined"?null:se,type:ee,geometry:le,tags:ce,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return ct(Ee),Ee}function ct(se){var ee=se.geometry,le=se.type;if(le==="Point"||le==="MultiPoint"||le==="LineString")pt(se,ee);else if(le==="Polygon"||le==="MultiLineString")for(var ce=0;ce0&&(ce?$e+=(Ee*Pt-yt*Ne)/2:$e+=Math.sqrt(Math.pow(yt-Ee,2)+Math.pow(Pt-Ne,2))),Ee=yt,Ne=Pt}var Ft=ee.length-3;ee[2]=1,sr(ee,0,Ft,le),ee[Ft+2]=1,ee.size=Math.abs($e),ee.start=0,ee.end=ee.size}function pr(se,ee,le,ce){for(var Ee=0;Ee1?1:le}function Lt(se,ee,le,ce,Ee,Ne,$e,Ze){if(le/=ee,ce/=ee,Ne>=le&&$e=ce)return null;for(var yt=[],Pt=0;Pt=le&&Zr=ce)continue;var Or=[];if(Wt==="Point"||Wt==="MultiPoint")Fe(tr,Or,le,ce,Ee);else if(Wt==="LineString")Ue(tr,Or,le,ce,Ee,!1,Ze.lineMetrics);else if(Wt==="MultiLineString")wt(tr,Or,le,ce,Ee,!1);else if(Wt==="Polygon")wt(tr,Or,le,ce,Ee,!0);else if(Wt==="MultiPolygon")for(var ca=0;ca=le&&$e<=ce&&(ee.push(se[Ne]),ee.push(se[Ne+1]),ee.push(se[Ne+2]))}}function Ue(se,ee,le,ce,Ee,Ne,$e){for(var Ze=xt(se),yt=Ee===0?Ar:Mr,Pt=se.start,Ft,tr,Wt=0;Wtle&&(tr=yt(Ze,Sr,Zr,ca,ua,le),$e&&(Ze.start=Pt+Ft*tr)):qa>ce?ri=le&&(tr=yt(Ze,Sr,Zr,ca,ua,le),Yr=!0),ri>ce&&qa<=ce&&(tr=yt(Ze,Sr,Zr,ca,ua,ce),Yr=!0),!Ne&&Yr&&($e&&(Ze.end=Pt+Ft*tr),ee.push(Ze),Ze=xt(se)),$e&&(Pt+=Ft)}var gr=se.length-3;Sr=se[gr],Zr=se[gr+1],Or=se[gr+2],qa=Ee===0?Sr:Zr,qa>=le&&qa<=ce&&mr(Ze,Sr,Zr,Or),gr=Ze.length-3,Ne&&gr>=3&&(Ze[gr]!==Ze[0]||Ze[gr+1]!==Ze[1])&&mr(Ze,Ze[0],Ze[1],Ze[2]),Ze.length&&ee.push(Ze)}function xt(se){var ee=[];return ee.size=se.size,ee.start=se.start,ee.end=se.end,ee}function wt(se,ee,le,ce,Ee,Ne){for(var $e=0;$e$e.maxX&&($e.maxX=Ft),tr>$e.maxY&&($e.maxY=tr)}return $e}function Fi(se,ee,le,ce){var Ee=ee.geometry,Ne=ee.type,$e=[];if(Ne==="Point"||Ne==="MultiPoint")for(var Ze=0;Ze0&&ee.size<(Ee?$e:ce)){le.numPoints+=ee.length/3;return}for(var Ze=[],yt=0;yt$e)&&(le.numSimplified++,Ze.push(ee[yt]),Ze.push(ee[yt+1])),le.numPoints++;Ee&&hn(Ze,Ne),se.push(Ze)}function hn(se,ee){for(var le=0,ce=0,Ee=se.length,Ne=Ee-2;ce0===ee)for(ce=0,Ee=se.length;ce24)throw new Error("maxZoom should be in the 0-24 range");if(ee.promoteId&&ee.generateId)throw new Error("promoteId and generateId cannot be used together.");var ce=Ot(se,ee);this.tiles={},this.tileCoords=[],le&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",ee.indexMaxZoom,ee.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),ce=Gr(ce,ee),ce.length&&this.splitTile(ce,0,0,0),le&&(ce.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}Ki.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Ki.prototype.splitTile=function(se,ee,le,ce,Ee,Ne,$e){for(var Ze=[se,ee,le,ce],yt=this.options,Pt=yt.debug;Ze.length;){ce=Ze.pop(),le=Ze.pop(),ee=Ze.pop(),se=Ze.pop();var Ft=1<1&&console.time("creation"),Wt=this.tiles[tr]=vi(se,ee,le,ce,yt),this.tileCoords.push({z:ee,x:le,y:ce}),Pt)){Pt>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",ee,le,ce,Wt.numFeatures,Wt.numPoints,Wt.numSimplified),console.timeEnd("creation"));var Sr="z"+ee;this.stats[Sr]=(this.stats[Sr]||0)+1,this.total++}if(Wt.source=se,Ee){if(ee===yt.maxZoom||ee===Ee)continue;var Zr=1<1&&console.time("clipping");var Or=.5*yt.buffer/yt.extent,ca=.5-Or,ua=.5+Or,qa=1+Or,ri,Yr,gr,$r,ga,nr;ri=Yr=gr=$r=null,ga=Lt(se,Ft,le-Or,le+ua,0,Wt.minX,Wt.maxX,yt),nr=Lt(se,Ft,le+ca,le+qa,0,Wt.minX,Wt.maxX,yt),se=null,ga&&(ri=Lt(ga,Ft,ce-Or,ce+ua,1,Wt.minY,Wt.maxY,yt),Yr=Lt(ga,Ft,ce+ca,ce+qa,1,Wt.minY,Wt.maxY,yt),ga=null),nr&&(gr=Lt(nr,Ft,ce-Or,ce+ua,1,Wt.minY,Wt.maxY,yt),$r=Lt(nr,Ft,ce+ca,ce+qa,1,Wt.minY,Wt.maxY,yt),nr=null),Pt>1&&console.timeEnd("clipping"),Ze.push(ri||[],ee+1,le*2,ce*2),Ze.push(Yr||[],ee+1,le*2,ce*2+1),Ze.push(gr||[],ee+1,le*2+1,ce*2),Ze.push($r||[],ee+1,le*2+1,ce*2+1)}}},Ki.prototype.getTile=function(se,ee,le){var ce=this.options,Ee=ce.extent,Ne=ce.debug;if(se<0||se>24)return null;var $e=1<1&&console.log("drilling down to z%d-%d-%d",se,ee,le);for(var yt=se,Pt=ee,Ft=le,tr;!tr&&yt>0;)yt--,Pt=Math.floor(Pt/2),Ft=Math.floor(Ft/2),tr=this.tiles[ir(yt,Pt,Ft)];return!tr||!tr.source?null:(Ne>1&&console.log("found parent tile z%d-%d-%d",yt,Pt,Ft),Ne>1&&console.time("drilling down"),this.splitTile(tr.source,yt,Pt,Ft,se,ee,le),Ne>1&&console.timeEnd("drilling down"),this.tiles[Ze]?ii(this.tiles[Ze],Ee):null)};function ir(se,ee,le){return((1<=0?0:g.button},l.remove=function(g){g.parentNode&&g.parentNode.removeChild(g)};function E(g,c,b){var d,w,D,R=a.browser.devicePixelRatio>1?"@2x":"",G=a.getJSON(c.transformRequest(c.normalizeSpriteURL(g,R,".json"),a.ResourceType.SpriteJSON),function(ue,Te){G=null,D||(D=ue,d=Te,re())}),K=a.getImage(c.transformRequest(c.normalizeSpriteURL(g,R,".png"),a.ResourceType.SpriteImage),function(ue,Te){K=null,D||(D=ue,w=Te,re())});function re(){if(D)b(D);else if(d&&w){var ue=a.browser.getImageData(w),Te={};for(var we in d){var Re=d[we],Ge=Re.width,He=Re.height,Oe=Re.x,Je=Re.y,ht=Re.sdf,zt=Re.pixelRatio,Nt=Re.stretchX,Qt=Re.stretchY,rr=Re.content,Yt=new a.RGBAImage({width:Ge,height:He});a.RGBAImage.copy(ue,Yt,{x:Oe,y:Je},{x:0,y:0},{width:Ge,height:He}),Te[we]={data:Yt,pixelRatio:zt,sdf:ht,stretchX:Nt,stretchY:Qt,content:rr}}b(null,Te)}}return{cancel:function(){G&&(G.cancel(),G=null),K&&(K.cancel(),K=null)}}}function L(g){var c=g.userImage;if(c&&c.render){var b=c.render();if(b)return g.data.replace(new Uint8Array(c.data.buffer)),!0}return!1}var z=1,B=function(g){function c(){g.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new a.RGBAImage({width:1,height:1}),this.dirty=!0}return g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c,c.prototype.isLoaded=function(){return this.loaded},c.prototype.setLoaded=function(d){if(this.loaded!==d&&(this.loaded=d,d)){for(var w=0,D=this.requestors;w=0?1.2:1))}V.prototype.draw=function(g){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(g,this.buffer,this.middle);for(var c=this.ctx.getImageData(0,0,this.size,this.size),b=new Uint8ClampedArray(this.size*this.size),d=0;d65535){ue(new Error("glyphs > 65535 not supported"));return}if(Re.ranges[He]){ue(null,{stack:Te,id:we,glyph:Ge});return}var Oe=Re.requests[He];Oe||(Oe=Re.requests[He]=[],te.loadGlyphRange(Te,He,d.url,d.requestManager,function(Je,ht){if(ht){for(var zt in ht)d._doesCharSupportLocalGlyph(+zt)||(Re.glyphs[+zt]=ht[+zt]);Re.ranges[He]=!0}for(var Nt=0,Qt=Oe;Nt1&&(re=c[++K]);var Te=Math.abs(ue-re.left),we=Math.abs(ue-re.right),Re=Math.min(Te,we),Ge=void 0,He=D/d*(w+1);if(re.isDash){var Oe=w-Math.abs(He);Ge=Math.sqrt(Re*Re+Oe*Oe)}else Ge=w-Math.sqrt(Re*Re+He*He);this.data[G+ue]=Math.max(0,Math.min(255,Ge+128))}},ke.prototype.addRegularDash=function(c){for(var b=c.length-1;b>=0;--b){var d=c[b],w=c[b+1];d.zeroLength?c.splice(b,1):w&&w.isDash===d.isDash&&(w.left=d.left,c.splice(b,1))}var D=c[0],R=c[c.length-1];D.isDash===R.isDash&&(D.left=R.left-this.width,R.right=D.right+this.width);for(var G=this.width*this.nextRow,K=0,re=c[K],ue=0;ue1&&(re=c[++K]);var Te=Math.abs(ue-re.left),we=Math.abs(ue-re.right),Re=Math.min(Te,we),Ge=re.isDash?Re:-Re;this.data[G+ue]=Math.max(0,Math.min(255,Ge+128))}},ke.prototype.addDash=function(c,b){var d=b?7:0,w=2*d+1;if(this.nextRow+w>this.height)return a.warnOnce("LineAtlas out of space"),null;for(var D=0,R=0;R=d.minX&&c.x=d.minY&&c.y0&&(ue[new a.OverscaledTileID(d.overscaledZ,G,w.z,R,w.y-1).key]={backfilled:!1},ue[new a.OverscaledTileID(d.overscaledZ,d.wrap,w.z,w.x,w.y-1).key]={backfilled:!1},ue[new a.OverscaledTileID(d.overscaledZ,re,w.z,K,w.y-1).key]={backfilled:!1}),w.y+10&&(D.resourceTiming=d._resourceTiming,d._resourceTiming=[]),d.fire(new a.Event("data",D))})},c.prototype.onAdd=function(d){this.map=d,this.load()},c.prototype.setData=function(d){var w=this;return this._data=d,this.fire(new a.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(D){if(D){w.fire(new a.ErrorEvent(D));return}var R={dataType:"source",sourceDataType:"content"};w._collectResourceTiming&&w._resourceTiming&&w._resourceTiming.length>0&&(R.resourceTiming=w._resourceTiming,w._resourceTiming=[]),w.fire(new a.Event("data",R))}),this},c.prototype.getClusterExpansionZoom=function(d,w){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:d,source:this.id},w),this},c.prototype.getClusterChildren=function(d,w){return this.actor.send("geojson.getClusterChildren",{clusterId:d,source:this.id},w),this},c.prototype.getClusterLeaves=function(d,w,D,R){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:d,limit:w,offset:D},R),this},c.prototype._updateWorkerData=function(d){var w=this;this._loaded=!1;var D=a.extend({},this.workerOptions),R=this._data;typeof R=="string"?(D.request=this.map._requestManager.transformRequest(a.browser.resolveURL(R),a.ResourceType.Source),D.request.collectResourceTiming=this._collectResourceTiming):D.data=JSON.stringify(R),this.actor.send(this.type+".loadData",D,function(G,K){w._removed||K&&K.abandoned||(w._loaded=!0,K&&K.resourceTiming&&K.resourceTiming[w.id]&&(w._resourceTiming=K.resourceTiming[w.id].slice(0)),w.actor.send(w.type+".coalesce",{source:D.source},null),d(G))})},c.prototype.loaded=function(){return this._loaded},c.prototype.loadTile=function(d,w){var D=this,R=d.actor?"reloadTile":"loadTile";d.actor=this.actor;var G={type:this.type,uid:d.uid,tileID:d.tileID,zoom:d.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:a.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};d.request=this.actor.send(R,G,function(K,re){return delete d.request,d.unloadVectorData(),d.aborted?w(null):K?w(K):(d.loadVectorData(re,D.map.painter,R==="reloadTile"),w(null))})},c.prototype.abortTile=function(d){d.request&&(d.request.cancel(),delete d.request),d.aborted=!0},c.prototype.unloadTile=function(d){d.unloadVectorData(),this.actor.send("removeTile",{uid:d.uid,type:this.type,source:this.id})},c.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},c.prototype.serialize=function(){return a.extend({},this._options,{type:this.type,data:this._data})},c.prototype.hasTransition=function(){return!1},c}(a.Evented),lt=a.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),at=function(g){function c(b,d,w,D){g.call(this),this.id=b,this.dispatcher=w,this.coordinates=d.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(D),this.options=d}return g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c,c.prototype.load=function(d,w){var D=this;this._loaded=!1,this.fire(new a.Event("dataloading",{dataType:"source"})),this.url=this.options.url,a.getImage(this.map._requestManager.transformRequest(this.url,a.ResourceType.Image),function(R,G){D._loaded=!0,R?D.fire(new a.ErrorEvent(R)):G&&(D.image=G,d&&(D.coordinates=d),w&&w(),D._finishLoading())})},c.prototype.loaded=function(){return this._loaded},c.prototype.updateImage=function(d){var w=this;return!this.image||!d.url?this:(this.options.url=d.url,this.load(d.coordinates,function(){w.texture=null}),this)},c.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new a.Event("data",{dataType:"source",sourceDataType:"metadata"})))},c.prototype.onAdd=function(d){this.map=d,this.load()},c.prototype.setCoordinates=function(d){var w=this;this.coordinates=d;var D=d.map(a.MercatorCoordinate.fromLngLat);this.tileID=gt(D),this.minzoom=this.maxzoom=this.tileID.z;var R=D.map(function(G){return w.tileID.getTilePoint(G)._round()});return this._boundsArray=new a.StructArrayLayout4i8,this._boundsArray.emplaceBack(R[0].x,R[0].y,0,0),this._boundsArray.emplaceBack(R[1].x,R[1].y,a.EXTENT,0),this._boundsArray.emplaceBack(R[3].x,R[3].y,0,a.EXTENT),this._boundsArray.emplaceBack(R[2].x,R[2].y,a.EXTENT,a.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new a.Event("data",{dataType:"source",sourceDataType:"content"})),this},c.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||!this.image)){var d=this.map.painter.context,w=d.gl;this.boundsBuffer||(this.boundsBuffer=d.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new a.Texture(d,this.image,w.RGBA),this.texture.bind(w.LINEAR,w.CLAMP_TO_EDGE));for(var D in this.tiles){var R=this.tiles[D];R.state!=="loaded"&&(R.state="loaded",R.texture=this.texture)}}},c.prototype.loadTile=function(d,w){this.tileID&&this.tileID.equals(d.tileID.canonical)?(this.tiles[String(d.tileID.wrap)]=d,d.buckets={},w(null)):(d.state="errored",w(null))},c.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},c.prototype.hasTransition=function(){return!1},c}(a.Evented);function gt(g){for(var c=1/0,b=1/0,d=-1/0,w=-1/0,D=0,R=g;Dw.end(0)?this.fire(new a.ErrorEvent(new a.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+w.start(0)+" and "+w.end(0)+"-second mark."))):this.video.currentTime=d}},c.prototype.getVideo=function(){return this.video},c.prototype.onAdd=function(d){this.map||(this.map=d,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},c.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||this.video.readyState<2)){var d=this.map.painter.context,w=d.gl;this.boundsBuffer||(this.boundsBuffer=d.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(w.LINEAR,w.CLAMP_TO_EDGE),w.texSubImage2D(w.TEXTURE_2D,0,0,0,w.RGBA,w.UNSIGNED_BYTE,this.video)):(this.texture=new a.Texture(d,this.video,w.RGBA),this.texture.bind(w.LINEAR,w.CLAMP_TO_EDGE));for(var D in this.tiles){var R=this.tiles[D];R.state!=="loaded"&&(R.state="loaded",R.texture=this.texture)}}},c.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},c.prototype.hasTransition=function(){return this.video&&!this.video.paused},c}(at),St=function(g){function c(b,d,w,D){g.call(this,b,d,w,D),d.coordinates?(!Array.isArray(d.coordinates)||d.coordinates.length!==4||d.coordinates.some(function(R){return!Array.isArray(R)||R.length!==2||R.some(function(G){return typeof G!="number"})}))&&this.fire(new a.ErrorEvent(new a.ValidationError("sources."+b,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new a.ErrorEvent(new a.ValidationError("sources."+b,null,'missing required property "coordinates"'))),d.animate&&typeof d.animate!="boolean"&&this.fire(new a.ErrorEvent(new a.ValidationError("sources."+b,null,'optional "animate" property must be a boolean value'))),d.canvas?typeof d.canvas!="string"&&!(d.canvas instanceof a.window.HTMLCanvasElement)&&this.fire(new a.ErrorEvent(new a.ValidationError("sources."+b,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new a.ErrorEvent(new a.ValidationError("sources."+b,null,'missing required property "canvas"'))),this.options=d,this.animate=d.animate!==void 0?d.animate:!0}return g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c,c.prototype.load=function(){if(this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof a.window.HTMLCanvasElement?this.options.canvas:a.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()){this.fire(new a.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero.")));return}this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading()},c.prototype.getCanvas=function(){return this.canvas},c.prototype.onAdd=function(d){this.map=d,this.load(),this.canvas&&this.animate&&this.play()},c.prototype.onRemove=function(){this.pause()},c.prototype.prepare=function(){var d=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,d=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,d=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var w=this.map.painter.context,D=w.gl;this.boundsBuffer||(this.boundsBuffer=w.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(d||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new a.Texture(w,this.canvas,D.RGBA,{premultiply:!0});for(var R in this.tiles){var G=this.tiles[R];G.state!=="loaded"&&(G.state="loaded",G.texture=this.texture)}}},c.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},c.prototype.hasTransition=function(){return this._playing},c.prototype._hasInvalidDimensions=function(){for(var d=0,w=[this.canvas.width,this.canvas.height];dthis.max){var G=this._getAndRemoveByKey(this.order[0]);G&&this.onRemove(G)}return this},Dt.prototype.has=function(c){return c.wrapped().key in this.data},Dt.prototype.getAndRemove=function(c){return this.has(c)?this._getAndRemoveByKey(c.wrapped().key):null},Dt.prototype._getAndRemoveByKey=function(c){var b=this.data[c].shift();return b.timeout&&clearTimeout(b.timeout),this.data[c].length===0&&delete this.data[c],this.order.splice(this.order.indexOf(c),1),b.value},Dt.prototype.getByKey=function(c){var b=this.data[c];return b?b[0].value:null},Dt.prototype.get=function(c){if(!this.has(c))return null;var b=this.data[c.wrapped().key][0];return b.value},Dt.prototype.remove=function(c,b){if(!this.has(c))return this;var d=c.wrapped().key,w=b===void 0?0:this.data[d].indexOf(b),D=this.data[d][w];return this.data[d].splice(w,1),D.timeout&&clearTimeout(D.timeout),this.data[d].length===0&&delete this.data[d],this.onRemove(D.value),this.order.splice(this.order.indexOf(d),1),this},Dt.prototype.setMaxSize=function(c){for(this.max=c;this.order.length>this.max;){var b=this._getAndRemoveByKey(this.order[0]);b&&this.onRemove(b)}return this},Dt.prototype.filter=function(c){var b=[];for(var d in this.data)for(var w=0,D=this.data[d];w1||(Math.abs(Te)>1&&(Math.abs(Te+Re)===1?Te+=Re:Math.abs(Te-Re)===1&&(Te-=Re)),!(!ue.dem||!re.dem)&&(re.dem.backfillBorder(ue.dem,Te,we),re.neighboringTiles&&re.neighboringTiles[Ge]&&(re.neighboringTiles[Ge].backfilled=!0)))}},c.prototype.getTile=function(d){return this.getTileByID(d.key)},c.prototype.getTileByID=function(d){return this._tiles[d]},c.prototype._retainLoadedChildren=function(d,w,D,R){for(var G in this._tiles){var K=this._tiles[G];if(!(R[G]||!K.hasData()||K.tileID.overscaledZ<=w||K.tileID.overscaledZ>D)){for(var re=K.tileID;K&&K.tileID.overscaledZ>w+1;){var ue=K.tileID.scaledTo(K.tileID.overscaledZ-1);K=this._tiles[ue.key],K&&K.hasData()&&(re=ue)}for(var Te=re;Te.overscaledZ>w;)if(Te=Te.scaledTo(Te.overscaledZ-1),d[Te.key]){R[re.key]=re;break}}}},c.prototype.findLoadedParent=function(d,w){if(d.key in this._loadedParentTiles){var D=this._loadedParentTiles[d.key];return D&&D.tileID.overscaledZ>=w?D:null}for(var R=d.overscaledZ-1;R>=w;R--){var G=d.scaledTo(R),K=this._getLoadedTile(G);if(K)return K}},c.prototype._getLoadedTile=function(d){var w=this._tiles[d.key];if(w&&w.hasData())return w;var D=this._cache.getByKey(d.wrapped().key);return D},c.prototype.updateCacheSize=function(d){var w=Math.ceil(d.width/this._source.tileSize)+1,D=Math.ceil(d.height/this._source.tileSize)+1,R=w*D,G=5,K=Math.floor(R*G),re=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,K):K;this._cache.setMaxSize(re)},c.prototype.handleWrapJump=function(d){var w=this._prevLng===void 0?d:this._prevLng,D=d-w,R=D/360,G=Math.round(R);if(this._prevLng=d,G){var K={};for(var re in this._tiles){var ue=this._tiles[re];ue.tileID=ue.tileID.unwrapTo(ue.tileID.wrap+G),K[ue.tileID.key]=ue}this._tiles=K;for(var Te in this._timers)clearTimeout(this._timers[Te]),delete this._timers[Te];for(var we in this._tiles){var Re=this._tiles[we];this._setTileReloadTimer(we,Re)}}},c.prototype.update=function(d){var w=this;if(this.transform=d,!(!this._sourceLoaded||this._paused)){this.updateCacheSize(d),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={};var D;this.used?this._source.tileID?D=d.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(wr){return new a.OverscaledTileID(wr.canonical.z,wr.wrap,wr.canonical.z,wr.canonical.x,wr.canonical.y)}):(D=d.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(D=D.filter(function(wr){return w._source.hasTile(wr)}))):D=[];var R=d.coveringZoomLevel(this._source),G=Math.max(R-c.maxOverzooming,this._source.minzoom),K=Math.max(R+c.maxUnderzooming,this._source.minzoom),re=this._updateRetainedTiles(D,R);if(yt(this._source.type)){for(var ue={},Te={},we=Object.keys(re),Re=0,Ge=we;Rethis._source.maxzoom){var ht=Oe.children(this._source.maxzoom)[0],zt=this.getTile(ht);if(zt&&zt.hasData()){D[ht.key]=ht;continue}}else{var Nt=Oe.children(this._source.maxzoom);if(D[Nt[0].key]&&D[Nt[1].key]&&D[Nt[2].key]&&D[Nt[3].key])continue}for(var Qt=Je.wasRequested(),rr=Oe.overscaledZ-1;rr>=G;--rr){var Yt=Oe.scaledTo(rr);if(R[Yt.key]||(R[Yt.key]=!0,Je=this.getTile(Yt),!Je&&Qt&&(Je=this._addTile(Yt)),Je&&(D[Yt.key]=Yt,Qt=Je.wasRequested(),Je.hasData())))break}}}return D},c.prototype._updateLoadedParentTileCache=function(){this._loadedParentTiles={};for(var d in this._tiles){for(var w=[],D=void 0,R=this._tiles[d].tileID;R.overscaledZ>0;){if(R.key in this._loadedParentTiles){D=this._loadedParentTiles[R.key];break}w.push(R.key);var G=R.scaledTo(R.overscaledZ-1);if(D=this._getLoadedTile(G),D)break;R=G}for(var K=0,re=w;K0)&&(w.hasData()&&w.state!=="reloading"?this._cache.add(w.tileID,w,w.getExpiryTimeout()):(w.aborted=!0,this._abortTile(w),this._unloadTile(w))))},c.prototype.clearTiles=function(){this._shouldReloadOnResume=!1,this._paused=!1;for(var d in this._tiles)this._removeTile(d);this._cache.reset()},c.prototype.tilesIn=function(d,w,D){var R=this,G=[],K=this.transform;if(!K)return G;for(var re=D?K.getCameraQueryGeometry(d):d,ue=d.map(function(rr){return K.pointCoordinate(rr)}),Te=re.map(function(rr){return K.pointCoordinate(rr)}),we=this.getIds(),Re=1/0,Ge=1/0,He=-1/0,Oe=-1/0,Je=0,ht=Te;Je=0&&Lr[1].y+wr>=0){var kr=ue.map(function(Ra){return ar.getTilePoint(Ra)}),Wr=Te.map(function(Ra){return ar.getTilePoint(Ra)});G.push({tile:Yt,tileID:ar,queryGeometry:kr,cameraQueryGeometry:Wr,scale:vr})}}},Qt=0;Qt=a.browser.now())return!0}return!1},c.prototype.setFeatureState=function(d,w,D){d=d||"_geojsonTileLayer",this._state.updateState(d,w,D)},c.prototype.removeFeatureState=function(d,w,D){d=d||"_geojsonTileLayer",this._state.removeFeatureState(d,w,D)},c.prototype.getFeatureState=function(d,w){return d=d||"_geojsonTileLayer",this._state.getState(d,w)},c.prototype.setDependencies=function(d,w,D){var R=this._tiles[d];R&&R.setDependencies(w,D)},c.prototype.reloadTilesForDependencies=function(d,w){for(var D in this._tiles){var R=this._tiles[D];R.hasDependency(d,w)&&this._reloadTile(D,"reloading")}this._cache.filter(function(G){return!G.hasDependency(d,w)})},c}(a.Evented);$e.maxOverzooming=10,$e.maxUnderzooming=3;function Ze(g,c){var b=Math.abs(g.wrap*2)-+(g.wrap<0),d=Math.abs(c.wrap*2)-+(c.wrap<0);return g.overscaledZ-c.overscaledZ||d-b||c.canonical.y-g.canonical.y||c.canonical.x-g.canonical.x}function yt(g){return g==="raster"||g==="image"||g==="video"}function Pt(){return new a.window.Worker(Tn.workerUrl)}var Ft="mapboxgl_preloaded_worker_pool",tr=function(){this.active={}};tr.prototype.acquire=function(c){if(!this.workers)for(this.workers=[];this.workers.length0?(w-R)/G:0;return this.points[D].mult(1-K).add(this.points[b].mult(K))};var Ga=function(c,b,d){var w=this.boxCells=[],D=this.circleCells=[];this.xCellCount=Math.ceil(c/d),this.yCellCount=Math.ceil(b/d);for(var R=0;Rthis.width||w<0||b>this.height)return D?!1:[];var G=[];if(c<=0&&b<=0&&this.width<=d&&this.height<=w){if(D)return!0;for(var K=0;K0:G}},Ga.prototype._queryCircle=function(c,b,d,w,D){var R=c-d,G=c+d,K=b-d,re=b+d;if(G<0||R>this.width||re<0||K>this.height)return w?!1:[];var ue=[],Te={hitTest:w,circle:{x:c,y:b,radius:d},seenUids:{box:{},circle:{}}};return this._forEachCell(R,K,G,re,this._queryCellCircle,ue,Te,D),w?ue.length>0:ue},Ga.prototype.query=function(c,b,d,w,D){return this._query(c,b,d,w,!1,D)},Ga.prototype.hitTest=function(c,b,d,w,D){return this._query(c,b,d,w,!0,D)},Ga.prototype.hitTestCircle=function(c,b,d,w){return this._queryCircle(c,b,d,!0,w)},Ga.prototype._queryCell=function(c,b,d,w,D,R,G,K){var re=G.seenUids,ue=this.boxCells[D];if(ue!==null)for(var Te=this.bboxes,we=0,Re=ue;we=Te[He+0]&&w>=Te[He+1]&&(!K||K(this.boxKeys[Ge]))){if(G.hitTest)return R.push(!0),!0;R.push({key:this.boxKeys[Ge],x1:Te[He],y1:Te[He+1],x2:Te[He+2],y2:Te[He+3]})}}}var Oe=this.circleCells[D];if(Oe!==null)for(var Je=this.circles,ht=0,zt=Oe;htG*G+K*K},Ga.prototype._circleAndRectCollide=function(c,b,d,w,D,R,G){var K=(R-w)/2,re=Math.abs(c-(w+K));if(re>K+d)return!1;var ue=(G-D)/2,Te=Math.abs(b-(D+ue));if(Te>ue+d)return!1;if(re<=K||Te<=ue)return!0;var we=re-K,Re=Te-ue;return we*we+Re*Re<=d*d};function Kn(g,c,b,d,w){var D=a.create();return c?(a.scale(D,D,[1/w,1/w,1]),b||a.rotateZ(D,D,d.angle)):a.multiply(D,d.labelPlaneMatrix,g),D}function hu(g,c,b,d,w){if(c){var D=a.clone(g);return a.scale(D,D,[w,w,1]),b||a.rotateZ(D,D,-d.angle),D}else return d.glCoordMatrix}function Ui(g,c){var b=[g.x,g.y,0,1];Zf(b,b,c);var d=b[3];return{point:new a.Point(b[0]/d,b[1]/d),signedDistanceFromCamera:d}}function dl(g,c){return .5+.5*(g/c)}function $d(g,c){var b=g[0]/g[3],d=g[1]/g[3],w=b>=-c[0]&&b<=c[0]&&d>=-c[1]&&d<=c[1];return w}function qc(g,c,b,d,w,D,R,G){var K=d?g.textSizeData:g.iconSizeData,re=a.evaluateSizeForZoom(K,b.transform.zoom),ue=[256/b.width*2+1,256/b.height*2+1],Te=d?g.text.dynamicLayoutVertexArray:g.icon.dynamicLayoutVertexArray;Te.clear();for(var we=g.lineVertexArray,Re=d?g.text.placedSymbolArray:g.icon.placedSymbolArray,Ge=b.transform.width/b.transform.height,He=!1,Oe=0;OeD)return{useVertical:!0}}return(g===a.WritingMode.vertical?c.yb.x)?{needsFlipping:!0}:null}function vv(g,c,b,d,w,D,R,G,K,re,ue,Te,we,Re){var Ge=c/24,He=g.lineOffsetX*Ge,Oe=g.lineOffsetY*Ge,Je;if(g.numGlyphs>1){var ht=g.glyphStartIndex+g.numGlyphs,zt=g.lineStartIndex,Nt=g.lineStartIndex+g.lineLength,Qt=Nc(Ge,G,He,Oe,b,ue,Te,g,K,D,we);if(!Qt)return{notEnoughRoom:!0};var rr=Ui(Qt.first.point,R).point,Yt=Ui(Qt.last.point,R).point;if(d&&!b){var ar=hv(g.writingMode,rr,Yt,Re);if(ar)return ar}Je=[Qt.first];for(var vr=g.glyphStartIndex+1;vr0?Wr.point:vu(Te,kr,wr,1,w),_a=hv(g.writingMode,wr,Ra,Re);if(_a)return _a}var Nr=pl(Ge*G.getoffsetX(g.glyphStartIndex),He,Oe,b,ue,Te,g.segment,g.lineStartIndex,g.lineStartIndex+g.lineLength,K,D,we);if(!Nr)return{notEnoughRoom:!0};Je=[Nr]}for(var Ma=0,aa=Je;Ma0?1:-1,Ge=0;d&&(Re*=-1,Ge=Math.PI),Re<0&&(Ge+=Math.PI);for(var He=Re>0?G+R:G+R+1,Oe=w,Je=w,ht=0,zt=0,Nt=Math.abs(we),Qt=[];ht+zt<=Nt;){if(He+=Re,He=K)return null;if(Je=Oe,Qt.push(Oe),Oe=Te[He],Oe===void 0){var rr=new a.Point(re.getx(He),re.gety(He)),Yt=Ui(rr,ue);if(Yt.signedDistanceFromCamera>0)Oe=Te[He]=Yt.point;else{var ar=He-Re,vr=ht===0?D:new a.Point(re.getx(ar),re.gety(ar));Oe=vu(vr,rr,Je,Nt-ht+1,ue)}}ht+=zt,zt=Je.dist(Oe)}var wr=(Nt-ht)/zt,Lr=Oe.sub(Je),kr=Lr.mult(wr)._add(Je);kr._add(Lr._unit()._perp()._mult(b*Re));var Wr=Ge+Math.atan2(Oe.y-Je.y,Oe.x-Je.x);return Qt.push(kr),{point:kr,angle:Wr,path:Qt}}var ep=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Ku(g,c){for(var b=0;b=1;Za--)aa.push(Nr.path[Za]);for(var Ua=1;Ua0){for(var ia=aa[0].clone(),Ba=aa[0].clone(),tn=1;tn=Wr.x&&Ba.x<=Ra.x&&ia.y>=Wr.y&&Ba.y<=Ra.y?mi=[aa]:Ba.xRa.x||Ba.yRa.y?mi=[]:mi=a.clipLine([aa],Wr.x,Wr.y,Ra.x,Ra.y)}for(var Fn=0,Ds=mi;Fn=this.screenRightBoundary||w<$i||b>this.screenBottomBoundary},Ho.prototype.isInsideGrid=function(c,b,d,w){return d>=0&&c=0&&b0){var Nt;return this.prevPlacement&&this.prevPlacement.variableOffsets[we.crossTileID]&&this.prevPlacement.placements[we.crossTileID]&&this.prevPlacement.placements[we.crossTileID].text&&(Nt=this.prevPlacement.variableOffsets[we.crossTileID].anchor),this.variableOffsets[we.crossTileID]={textOffset:Oe,width:d,height:w,anchor:c,textBoxScale:D,prevAnchor:Nt},this.markUsedJustification(Re,c,we,Ge),Re.allowVerticalPlacement&&(this.markUsedOrientation(Re,Ge,we),this.placedOrientations[we.crossTileID]=Ge),{shift:Je,placedGlyphBoxes:ht}}},oo.prototype.placeLayerBucketPart=function(c,b,d){var w=this,D=c.parameters,R=D.bucket,G=D.layout,K=D.posMatrix,re=D.textLabelPlaneMatrix,ue=D.labelToScreenMatrix,Te=D.textPixelRatio,we=D.holdingForFade,Re=D.collisionBoxArray,Ge=D.partiallyEvaluatedTextSize,He=D.collisionGroup,Oe=G.get("text-optional"),Je=G.get("icon-optional"),ht=G.get("text-allow-overlap"),zt=G.get("icon-allow-overlap"),Nt=G.get("text-rotation-alignment")==="map",Qt=G.get("text-pitch-alignment")==="map",rr=G.get("icon-text-fit")!=="none",Yt=G.get("symbol-z-order")==="viewport-y",ar=ht&&(zt||!R.hasIconData()||Je),vr=zt&&(ht||!R.hasTextData()||Oe);!R.collisionArrays&&Re&&R.deserializeCollisionBoxes(Re);var wr=function(Nr,Ma){if(!b[Nr.crossTileID]){if(we){w.placements[Nr.crossTileID]=new du(!1,!1,!1);return}var aa=!1,Za=!1,Ua=!0,Mi=null,La={box:null,offscreen:null},mi={box:null,offscreen:null},ia=null,Ba=null,tn=null,Fn=0,Ds=0,Ps=0;Ma.textFeatureIndex?Fn=Ma.textFeatureIndex:Nr.useRuntimeCollisionCircles&&(Fn=Nr.featureIndex),Ma.verticalTextFeatureIndex&&(Ds=Ma.verticalTextFeatureIndex);var $s=Ma.textBox;if($s){var Bl=function(un){var Qo=a.WritingMode.horizontal;if(R.allowVerticalPlacement&&!un&&w.prevPlacement){var $o=w.prevPlacement.placedOrientations[Nr.crossTileID];$o&&(w.placedOrientations[Nr.crossTileID]=$o,Qo=$o,w.markUsedOrientation(R,Qo,Nr))}return Qo},oc=function(un,Qo){if(R.allowVerticalPlacement&&Nr.numVerticalGlyphVertices>0&&Ma.verticalTextBox)for(var $o=0,Hp=R.writingModes;$o0&&(Ko=Ko.filter(function(un){return un!==Po.anchor}),Ko.unshift(Po.anchor))}var el=function(un,Qo,$o){for(var Hp=un.x2-un.x1,uy=un.y2-un.y1,h3=Nr.textBoxScale,v3=rr&&!zt?Qo:null,Xv={box:[],offscreen:!1},d3=ht?Ko.length*2:Ko.length,Gp=0;Gp=Ko.length,fy=w.attemptAnchorPlacement(p3,un,Hp,uy,h3,Nt,Qt,Te,K,He,m3,Nr,R,$o,v3);if(fy&&(Xv=fy.placedGlyphBoxes,Xv&&Xv.box&&Xv.box.length)){aa=!0,Mi=fy.shift;break}}return Xv},ku=function(){return el($s,Ma.iconBox,a.WritingMode.horizontal)},tl=function(){var un=Ma.verticalTextBox,Qo=La&&La.box&&La.box.length;return R.allowVerticalPlacement&&!Qo&&Nr.numVerticalGlyphVertices>0&&un?el(un,Ma.verticalIconBox,a.WritingMode.vertical):{box:null,offscreen:null}};oc(ku,tl),La&&(aa=La.box,Ua=La.offscreen);var Np=Bl(La&&La.box);if(!aa&&w.prevPlacement){var ch=w.prevPlacement.variableOffsets[Nr.crossTileID];ch&&(w.variableOffsets[Nr.crossTileID]=ch,w.markUsedJustification(R,ch.anchor,Nr,Np))}}else{var Ol=function(un,Qo){var $o=w.collisionIndex.placeCollisionBox(un,ht,Te,K,He.predicate);return $o&&$o.box&&$o.box.length&&(w.markUsedOrientation(R,Qo,Nr),w.placedOrientations[Nr.crossTileID]=Qo),$o},Do=function(){return Ol($s,a.WritingMode.horizontal)},Ul=function(){var un=Ma.verticalTextBox;return R.allowVerticalPlacement&&Nr.numVerticalGlyphVertices>0&&un?Ol(un,a.WritingMode.vertical):{box:null,offscreen:null}};oc(Do,Ul),Bl(La&&La.box&&La.box.length)}}if(ia=La,aa=ia&&ia.box&&ia.box.length>0,Ua=ia&&ia.offscreen,Nr.useRuntimeCollisionCircles){var Hn=R.text.placedSymbolArray.get(Nr.centerJustifiedTextSymbolIndex),Bp=a.evaluateSizeForFeature(R.textSizeData,Ge,Hn),Wv=G.get("text-padding"),xo=Nr.collisionCircleDiameter;Ba=w.collisionIndex.placeCollisionCircles(ht,Hn,R.lineVertexArray,R.glyphOffsetArray,Bp,K,re,ue,d,Qt,He.predicate,xo,Wv),aa=ht||Ba.circles.length>0&&!Ba.collisionDetected,Ua=Ua&&Ba.offscreen}if(Ma.iconFeatureIndex&&(Ps=Ma.iconFeatureIndex),Ma.iconBox){var hh=function(un){var Qo=rr&&Mi?mv(un,Mi.x,Mi.y,Nt,Qt,w.transform.angle):un;return w.collisionIndex.placeCollisionBox(Qo,zt,Te,K,He.predicate)};mi&&mi.box&&mi.box.length&&Ma.verticalIconBox?(tn=hh(Ma.verticalIconBox),Za=tn.box.length>0):(tn=hh(Ma.iconBox),Za=tn.box.length>0),Ua=Ua&&tn.offscreen}var Op=Oe||Nr.numHorizontalGlyphVertices===0&&Nr.numVerticalGlyphVertices===0,Up=Je||Nr.numIconVertices===0;if(!Op&&!Up?Za=aa=Za&&aa:Up?Op||(Za=Za&&aa):aa=Za&&aa,aa&&ia&&ia.box&&(mi&&mi.box&&Ds?w.collisionIndex.insertCollisionBox(ia.box,G.get("text-ignore-placement"),R.bucketInstanceId,Ds,He.ID):w.collisionIndex.insertCollisionBox(ia.box,G.get("text-ignore-placement"),R.bucketInstanceId,Fn,He.ID)),Za&&tn&&w.collisionIndex.insertCollisionBox(tn.box,G.get("icon-ignore-placement"),R.bucketInstanceId,Ps,He.ID),Ba&&(aa&&w.collisionIndex.insertCollisionCircles(Ba.circles,G.get("text-ignore-placement"),R.bucketInstanceId,Fn,He.ID),d)){var Vp=R.bucketInstanceId,vh=w.collisionCircleArrays[Vp];vh===void 0&&(vh=w.collisionCircleArrays[Vp]=new tp);for(var dh=0;dh=0;--kr){var Wr=Lr[kr];wr(R.symbolInstances.get(Wr),R.collisionArrays[Wr])}else for(var Ra=c.symbolInstanceStart;Ra=0&&(R>=0&&ue!==R?c.text.placedSymbolArray.get(ue).crossTileID=0:c.text.placedSymbolArray.get(ue).crossTileID=d.crossTileID)}},oo.prototype.markUsedOrientation=function(c,b,d){for(var w=b===a.WritingMode.horizontal||b===a.WritingMode.horizontalOnly?b:0,D=b===a.WritingMode.vertical?b:0,R=[d.leftJustifiedTextSymbolIndex,d.centerJustifiedTextSymbolIndex,d.rightJustifiedTextSymbolIndex],G=0,K=R;G0||Qt>0,wr=zt.numIconVertices>0,Lr=w.placedOrientations[zt.crossTileID],kr=Lr===a.WritingMode.vertical,Wr=Lr===a.WritingMode.horizontal||Lr===a.WritingMode.horizontalOnly;if(vr){var Ra=ef(ar.text),_a=kr?Er:Ra;Ge(c.text,Nt,_a);var Nr=Wr?Er:Ra;Ge(c.text,Qt,Nr);var Ma=ar.text.isHidden();[zt.rightJustifiedTextSymbolIndex,zt.centerJustifiedTextSymbolIndex,zt.leftJustifiedTextSymbolIndex].forEach(function(Ps){Ps>=0&&(c.text.placedSymbolArray.get(Ps).hidden=Ma||kr?1:0)}),zt.verticalPlacedTextSymbolIndex>=0&&(c.text.placedSymbolArray.get(zt.verticalPlacedTextSymbolIndex).hidden=Ma||Wr?1:0);var aa=w.variableOffsets[zt.crossTileID];aa&&w.markUsedJustification(c,aa.anchor,zt,Lr);var Za=w.placedOrientations[zt.crossTileID];Za&&(w.markUsedJustification(c,"left",zt,Za),w.markUsedOrientation(c,Za,zt))}if(wr){var Ua=ef(ar.icon),Mi=!(we&&zt.verticalPlacedIconSymbolIndex&&kr);if(zt.placedIconSymbolIndex>=0){var La=Mi?Ua:Er;Ge(c.icon,zt.numIconVertices,La),c.icon.placedSymbolArray.get(zt.placedIconSymbolIndex).hidden=ar.icon.isHidden()}if(zt.verticalPlacedIconSymbolIndex>=0){var mi=Mi?Er:Ua;Ge(c.icon,zt.numVerticalIconVertices,mi),c.icon.placedSymbolArray.get(zt.verticalPlacedIconSymbolIndex).hidden=ar.icon.isHidden()}}if(c.hasIconCollisionBoxData()||c.hasTextCollisionBoxData()){var ia=c.collisionArrays[ht];if(ia){var Ba=new a.Point(0,0);if(ia.textBox||ia.verticalTextBox){var tn=!0;if(re){var Fn=w.variableOffsets[rr];Fn?(Ba=pv(Fn.anchor,Fn.width,Fn.height,Fn.textOffset,Fn.textBoxScale),ue&&Ba._rotate(Te?w.transform.angle:-w.transform.angle)):tn=!1}ia.textBox&&Xt(c.textCollisionBox.collisionVertexArray,ar.text.placed,!tn||kr,Ba.x,Ba.y),ia.verticalTextBox&&Xt(c.textCollisionBox.collisionVertexArray,ar.text.placed,!tn||Wr,Ba.x,Ba.y)}var Ds=!!(!Wr&&ia.verticalIconBox);ia.iconBox&&Xt(c.iconCollisionBox.collisionVertexArray,ar.icon.placed,Ds,we?Ba.x:0,we?Ba.y:0),ia.verticalIconBox&&Xt(c.iconCollisionBox.collisionVertexArray,ar.icon.placed,!Ds,we?Ba.x:0,we?Ba.y:0)}}},Oe=0;Oec},oo.prototype.setStale=function(){this.stale=!0};function Xt(g,c,b,d,w){g.emplaceBack(c?1:0,b?1:0,d||0,w||0),g.emplaceBack(c?1:0,b?1:0,d||0,w||0),g.emplaceBack(c?1:0,b?1:0,d||0,w||0),g.emplaceBack(c?1:0,b?1:0,d||0,w||0)}var Ur=Math.pow(2,25),rp=Math.pow(2,24),pu=Math.pow(2,17),on=Math.pow(2,16),yl=Math.pow(2,9),bs=Math.pow(2,8),$u=Math.pow(2,1);function ef(g){if(g.opacity===0&&!g.placed)return 0;if(g.opacity===1&&g.placed)return 4294967295;var c=g.placed?1:0,b=Math.floor(g.opacity*127);return b*Ur+c*rp+b*pu+c*on+b*yl+c*bs+b*$u+c}var Er=0,ba=function(c){this._sortAcrossTiles=c.layout.get("symbol-z-order")!=="viewport-y"&&c.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};ba.prototype.continuePlacement=function(c,b,d,w,D){for(var R=this._bucketParts;this._currentTileIndex2};this._currentPlacementIndex>=0;){var G=c[this._currentPlacementIndex],K=b[G],re=this.placement.collisionIndex.transform.zoom;if(K.type==="symbol"&&(!K.minzoom||K.minzoom<=re)&&(!K.maxzoom||K.maxzoom>re)){this._inProgressLayer||(this._inProgressLayer=new ba(K));var ue=this._inProgressLayer.continuePlacement(d[K.source],this.placement,this._showCollisionBoxes,K,R);if(ue)return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},wa.prototype.commit=function(c){return this.placement.commit(c),this.placement};var ws=512/a.EXTENT/2,gl=function(c,b,d){this.tileID=c,this.indexedSymbolInstances={},this.bucketInstanceId=d;for(var w=0;wc.overscaledZ)for(var re in K){var ue=K[re];ue.tileID.isChildOf(c)&&ue.findMatches(b.symbolInstances,c,R)}else{var Te=c.scaledTo(Number(G)),we=K[Te.key];we&&we.findMatches(b.symbolInstances,c,R)}}for(var Re=0;Re0)throw new Error("Unimplemented: "+R.map(function(G){return G.command}).join(", ")+".");return D.forEach(function(G){G.command!=="setTransition"&&w[G.command].apply(w,G.args)}),this.stylesheet=d,!0},c.prototype.addImage=function(d,w){if(this.getImage(d))return this.fire(new a.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(d,w),this._afterImageUpdated(d)},c.prototype.updateImage=function(d,w){this.imageManager.updateImage(d,w)},c.prototype.getImage=function(d){return this.imageManager.getImage(d)},c.prototype.removeImage=function(d){if(!this.getImage(d))return this.fire(new a.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(d),this._afterImageUpdated(d)},c.prototype._afterImageUpdated=function(d){this._availableImages=this.imageManager.listImages(),this._changedImages[d]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new a.Event("data",{dataType:"style"}))},c.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},c.prototype.addSource=function(d,w,D){var R=this;if(D===void 0&&(D={}),this._checkLoaded(),this.sourceCaches[d]!==void 0)throw new Error("There is already a source with this ID");if(!w.type)throw new Error("The type property must be defined, but only the following properties were given: "+Object.keys(w).join(", ")+".");var G=["vector","raster","geojson","video","image"],K=G.indexOf(w.type)>=0;if(!(K&&this._validate(a.validateStyle.source,"sources."+d,w,null,D))){this.map&&this.map._collectResourceTiming&&(w.collectResourceTiming=!0);var re=this.sourceCaches[d]=new $e(d,w,this.dispatcher);re.style=this,re.setEventedParent(this,function(){return{isSourceLoaded:R.loaded(),source:re.serialize(),sourceId:d}}),re.onAdd(this.map),this._changed=!0}},c.prototype.removeSource=function(d){if(this._checkLoaded(),this.sourceCaches[d]===void 0)throw new Error("There is no source with this ID");for(var w in this._layers)if(this._layers[w].source===d)return this.fire(new a.ErrorEvent(new Error('Source "'+d+'" cannot be removed while layer "'+w+'" is using it.')));var D=this.sourceCaches[d];delete this.sourceCaches[d],delete this._updatedSources[d],D.fire(new a.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:d})),D.setEventedParent(null),D.clearTiles(),D.onRemove&&D.onRemove(this.map),this._changed=!0},c.prototype.setGeoJSONSourceData=function(d,w){this._checkLoaded();var D=this.sourceCaches[d].getSource();D.setData(w),this._changed=!0},c.prototype.getSource=function(d){return this.sourceCaches[d]&&this.sourceCaches[d].getSource()},c.prototype.addLayer=function(d,w,D){D===void 0&&(D={}),this._checkLoaded();var R=d.id;if(this.getLayer(R)){this.fire(new a.ErrorEvent(new Error('Layer with id "'+R+'" already exists on this map')));return}var G;if(d.type==="custom"){if(fs(this,a.validateCustomStyleLayer(d)))return;G=a.createStyleLayer(d)}else{if(typeof d.source=="object"&&(this.addSource(R,d.source),d=a.clone$1(d),d=a.extend(d,{source:R})),this._validate(a.validateStyle.layer,"layers."+R,d,{arrayIndex:-1},D))return;G=a.createStyleLayer(d),this._validateLayer(G),G.setEventedParent(this,{layer:{id:R}}),this._serializedLayers[G.id]=G.serialize()}var K=w?this._order.indexOf(w):this._order.length;if(w&&K===-1){this.fire(new a.ErrorEvent(new Error('Layer with id "'+w+'" does not exist on this map.')));return}if(this._order.splice(K,0,R),this._layerOrderChanged=!0,this._layers[R]=G,this._removedLayers[R]&&G.source&&G.type!=="custom"){var re=this._removedLayers[R];delete this._removedLayers[R],re.type!==G.type?this._updatedSources[G.source]="clear":(this._updatedSources[G.source]="reload",this.sourceCaches[G.source].pause())}this._updateLayer(G),G.onAdd&&G.onAdd(this.map)},c.prototype.moveLayer=function(d,w){this._checkLoaded(),this._changed=!0;var D=this._layers[d];if(!D){this.fire(new a.ErrorEvent(new Error("The layer '"+d+"' does not exist in the map's style and cannot be moved.")));return}if(d!==w){var R=this._order.indexOf(d);this._order.splice(R,1);var G=w?this._order.indexOf(w):this._order.length;if(w&&G===-1){this.fire(new a.ErrorEvent(new Error('Layer with id "'+w+'" does not exist on this map.')));return}this._order.splice(G,0,d),this._layerOrderChanged=!0}},c.prototype.removeLayer=function(d){this._checkLoaded();var w=this._layers[d];if(!w){this.fire(new a.ErrorEvent(new Error("The layer '"+d+"' does not exist in the map's style and cannot be removed.")));return}w.setEventedParent(null);var D=this._order.indexOf(d);this._order.splice(D,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[d]=w,delete this._layers[d],delete this._serializedLayers[d],delete this._updatedLayers[d],delete this._updatedPaintProps[d],w.onRemove&&w.onRemove(this.map)},c.prototype.getLayer=function(d){return this._layers[d]},c.prototype.hasLayer=function(d){return d in this._layers},c.prototype.setLayerZoomRange=function(d,w,D){this._checkLoaded();var R=this.getLayer(d);if(!R){this.fire(new a.ErrorEvent(new Error("The layer '"+d+"' does not exist in the map's style and cannot have zoom extent.")));return}R.minzoom===w&&R.maxzoom===D||(w!=null&&(R.minzoom=w),D!=null&&(R.maxzoom=D),this._updateLayer(R))},c.prototype.setFilter=function(d,w,D){D===void 0&&(D={}),this._checkLoaded();var R=this.getLayer(d);if(!R){this.fire(new a.ErrorEvent(new Error("The layer '"+d+"' does not exist in the map's style and cannot be filtered.")));return}if(!a.deepEqual(R.filter,w)){if(w==null){R.filter=void 0,this._updateLayer(R);return}this._validate(a.validateStyle.filter,"layers."+R.id+".filter",w,null,D)||(R.filter=a.clone$1(w),this._updateLayer(R))}},c.prototype.getFilter=function(d){return a.clone$1(this.getLayer(d).filter)},c.prototype.setLayoutProperty=function(d,w,D,R){R===void 0&&(R={}),this._checkLoaded();var G=this.getLayer(d);if(!G){this.fire(new a.ErrorEvent(new Error("The layer '"+d+"' does not exist in the map's style and cannot be styled.")));return}a.deepEqual(G.getLayoutProperty(w),D)||(G.setLayoutProperty(w,D,R),this._updateLayer(G))},c.prototype.getLayoutProperty=function(d,w){var D=this.getLayer(d);if(!D){this.fire(new a.ErrorEvent(new Error("The layer '"+d+"' does not exist in the map's style.")));return}return D.getLayoutProperty(w)},c.prototype.setPaintProperty=function(d,w,D,R){R===void 0&&(R={}),this._checkLoaded();var G=this.getLayer(d);if(!G){this.fire(new a.ErrorEvent(new Error("The layer '"+d+"' does not exist in the map's style and cannot be styled.")));return}if(!a.deepEqual(G.getPaintProperty(w),D)){var K=G.setPaintProperty(w,D,R);K&&this._updateLayer(G),this._changed=!0,this._updatedPaintProps[d]=!0}},c.prototype.getPaintProperty=function(d,w){return this.getLayer(d).getPaintProperty(w)},c.prototype.setFeatureState=function(d,w){this._checkLoaded();var D=d.source,R=d.sourceLayer,G=this.sourceCaches[D];if(G===void 0){this.fire(new a.ErrorEvent(new Error("The source '"+D+"' does not exist in the map's style.")));return}var K=G.getSource().type;if(K==="geojson"&&R){this.fire(new a.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));return}if(K==="vector"&&!R){this.fire(new a.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}d.id===void 0&&this.fire(new a.ErrorEvent(new Error("The feature id parameter must be provided."))),G.setFeatureState(R,d.id,w)},c.prototype.removeFeatureState=function(d,w){this._checkLoaded();var D=d.source,R=this.sourceCaches[D];if(R===void 0){this.fire(new a.ErrorEvent(new Error("The source '"+D+"' does not exist in the map's style.")));return}var G=R.getSource().type,K=G==="vector"?d.sourceLayer:void 0;if(G==="vector"&&!K){this.fire(new a.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}if(w&&typeof d.id!="string"&&typeof d.id!="number"){this.fire(new a.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));return}R.removeFeatureState(K,d.id,w)},c.prototype.getFeatureState=function(d){this._checkLoaded();var w=d.source,D=d.sourceLayer,R=this.sourceCaches[w];if(R===void 0){this.fire(new a.ErrorEvent(new Error("The source '"+w+"' does not exist in the map's style.")));return}var G=R.getSource().type;if(G==="vector"&&!D){this.fire(new a.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}return d.id===void 0&&this.fire(new a.ErrorEvent(new Error("The feature id parameter must be provided."))),R.getFeatureState(D,d.id)},c.prototype.getTransition=function(){return a.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},c.prototype.serialize=function(){return a.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:a.mapObject(this.sourceCaches,function(d){return d.serialize()}),layers:this._serializeLayers(this._order)},function(d){return d!==void 0})},c.prototype._updateLayer=function(d){this._updatedLayers[d.id]=!0,d.source&&!this._updatedSources[d.source]&&this.sourceCaches[d.source].getSource().type!=="raster"&&(this._updatedSources[d.source]="reload",this.sourceCaches[d.source].pause()),this._changed=!0},c.prototype._flattenAndSortRenderedFeatures=function(d){for(var w=this,D=function(Wr){return w._layers[Wr].type==="fill-extrusion"},R={},G=[],K=this._order.length-1;K>=0;K--){var re=this._order[K];if(D(re)){R[re]=K;for(var ue=0,Te=d;ue=0;ht--){var zt=this._order[ht];if(D(zt))for(var Nt=G.length-1;Nt>=0;Nt--){var Qt=G[Nt].feature;if(R[Qt.layer.id] 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}`,wl=qi(Bc,yu),Vc=qi(Cm,Yf),Tl=qi(ni,Wf),Al=qi(yv,xn),Tv=qi(zn,ap),Hc=qi(ef,sn),As=qi(Eo,Zo),dn=qi(vn,Xf),Vm=qi(ln,Yo),Hm=qi(Xs,Em),Ml=qi(Wo,Lm),tf=qi(js,In),vs=qi(Dm,xl),fp=qi(bl,gv),cp=qi(Pm,zm),rf=qi(Oc,Im),hp=qi(Rm,Fm),vp=qi(_v,qm),Gm=qi(Nm,xv),Zm=qi(ip,np),Av=qi(bv,Bm),Mv=qi(wv,gu),Sv=qi(op,Om),jf=qi(sp,lp),Gc=qi(up,Um),dp=qi(hs,Uc);function qi(g,c){var b=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,d=c.match(/attribute ([\w]+) ([\w]+)/g),w=g.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),L=c.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),R=L?L.concat(w):w,G={};return g=g.replace(b,function(K,re,ue,be,xe){return G[xe]=!0,re==="define"?` -#ifndef HAS_UNIFORM_u_`+xe+` -varying `+ue+" "+be+" "+xe+`; +u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}`,wl=qi(Bc,yu),Vc=qi(Cm,Yf),Tl=qi(ni,Wf),Al=qi(yv,xn),Tv=qi(zn,ap),Hc=qi(tf,sn),As=qi(Eo,Zo),dn=qi(vn,Xf),Vm=qi(ln,Yo),Hm=qi(Xs,Em),Ml=qi(Wo,Lm),rf=qi(js,In),vs=qi(Dm,xl),fp=qi(bl,gv),cp=qi(Pm,zm),af=qi(Oc,Im),hp=qi(Rm,Fm),vp=qi(_v,qm),Gm=qi(Nm,xv),Zm=qi(ip,np),Av=qi(bv,Bm),Mv=qi(wv,gu),Sv=qi(op,Om),jf=qi(sp,lp),Gc=qi(up,Um),dp=qi(hs,Uc);function qi(g,c){var b=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,d=c.match(/attribute ([\w]+) ([\w]+)/g),w=g.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),D=c.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),R=D?D.concat(w):w,G={};return g=g.replace(b,function(K,re,ue,Te,we){return G[we]=!0,re==="define"?` +#ifndef HAS_UNIFORM_u_`+we+` +varying `+ue+" "+Te+" "+we+`; #else -uniform `+ue+" "+be+" u_"+xe+`; +uniform `+ue+" "+Te+" u_"+we+`; #endif `:` -#ifdef HAS_UNIFORM_u_`+xe+` - `+ue+" "+be+" "+xe+" = u_"+xe+`; -#endif -`}),c=c.replace(b,function(K,re,ue,be,xe){var Re=be==="float"?"vec2":"vec4",Ge=xe.match(/color/)?"color":Re;return G[xe]?re==="define"?` -#ifndef HAS_UNIFORM_u_`+xe+` -uniform lowp float u_`+xe+`_t; -attribute `+ue+" "+Re+" a_"+xe+`; -varying `+ue+" "+be+" "+xe+`; +#ifdef HAS_UNIFORM_u_`+we+` + `+ue+" "+Te+" "+we+" = u_"+we+`; +#endif +`}),c=c.replace(b,function(K,re,ue,Te,we){var Re=Te==="float"?"vec2":"vec4",Ge=we.match(/color/)?"color":Re;return G[we]?re==="define"?` +#ifndef HAS_UNIFORM_u_`+we+` +uniform lowp float u_`+we+`_t; +attribute `+ue+" "+Re+" a_"+we+`; +varying `+ue+" "+Te+" "+we+`; #else -uniform `+ue+" "+be+" u_"+xe+`; +uniform `+ue+" "+Te+" u_"+we+`; #endif `:Ge==="vec4"?` -#ifndef HAS_UNIFORM_u_`+xe+` - `+xe+" = a_"+xe+`; +#ifndef HAS_UNIFORM_u_`+we+` + `+we+" = a_"+we+`; #else - `+ue+" "+be+" "+xe+" = u_"+xe+`; + `+ue+" "+Te+" "+we+" = u_"+we+`; #endif `:` -#ifndef HAS_UNIFORM_u_`+xe+` - `+xe+" = unpack_mix_"+Ge+"(a_"+xe+", u_"+xe+`_t); +#ifndef HAS_UNIFORM_u_`+we+` + `+we+" = unpack_mix_"+Ge+"(a_"+we+", u_"+we+`_t); #else - `+ue+" "+be+" "+xe+" = u_"+xe+`; + `+ue+" "+Te+" "+we+" = u_"+we+`; #endif `:re==="define"?` -#ifndef HAS_UNIFORM_u_`+xe+` -uniform lowp float u_`+xe+`_t; -attribute `+ue+" "+Re+" a_"+xe+`; +#ifndef HAS_UNIFORM_u_`+we+` +uniform lowp float u_`+we+`_t; +attribute `+ue+" "+Re+" a_"+we+`; #else -uniform `+ue+" "+be+" u_"+xe+`; +uniform `+ue+" "+Te+" u_"+we+`; #endif `:Ge==="vec4"?` -#ifndef HAS_UNIFORM_u_`+xe+` - `+ue+" "+be+" "+xe+" = a_"+xe+`; +#ifndef HAS_UNIFORM_u_`+we+` + `+ue+" "+Te+" "+we+" = a_"+we+`; #else - `+ue+" "+be+" "+xe+" = u_"+xe+`; + `+ue+" "+Te+" "+we+" = u_"+we+`; #endif `:` -#ifndef HAS_UNIFORM_u_`+xe+` - `+ue+" "+be+" "+xe+" = unpack_mix_"+Ge+"(a_"+xe+", u_"+xe+`_t); +#ifndef HAS_UNIFORM_u_`+we+` + `+ue+" "+Te+" "+we+" = unpack_mix_"+Ge+"(a_"+we+", u_"+we+`_t); #else - `+ue+" "+be+" "+xe+" = u_"+xe+`; + `+ue+" "+Te+" "+we+" = u_"+we+`; #endif -`}),{fragmentSource:g,vertexSource:c,staticAttributes:d,staticUniforms:R}}var Ym=Object.freeze({__proto__:null,prelude:wl,background:Vc,backgroundPattern:Tl,circle:Al,clippingMask:Tv,heatmap:Hc,heatmapTexture:As,collisionBox:dn,collisionCircle:Vm,debug:Hm,fill:Ml,fillOutline:tf,fillOutlinePattern:vs,fillPattern:fp,fillExtrusion:cp,fillExtrusionPattern:rf,hillshadePrepare:hp,hillshade:vp,line:Gm,lineGradient:Zm,linePattern:Av,lineSDF:Mv,raster:Sv,symbolIcon:jf,symbolSDF:Gc,symbolTextAndIcon:dp}),Zc=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};Zc.prototype.bind=function(c,b,d,w,L,R,G,K){this.context=c;for(var re=this.boundPaintVertexBuffers.length!==w.length,ue=0;!re&&ue>16,G>>16],u_pixel_coord_lower:[R&65535,G&65535]}}function _u(g,c,b,d){var w=b.imageManager.getPattern(g.from.toString()),L=b.imageManager.getPattern(g.to.toString()),R=b.imageManager.getPixelSize(),G=R.width,K=R.height,re=Math.pow(2,d.tileID.overscaledZ),ue=d.tileSize*Math.pow(2,b.transform.tileZoom)/re,be=ue*(d.tileID.canonical.x+d.tileID.wrap*re),xe=ue*d.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:w.tl,u_pattern_br_a:w.br,u_pattern_tl_b:L.tl,u_pattern_br_b:L.br,u_texsize:[G,K],u_mix:c.t,u_pattern_size_a:w.displaySize,u_pattern_size_b:L.displaySize,u_scale_a:c.fromScale,u_scale_b:c.toScale,u_tile_units_to_pixels:1/mo(d,1,b.transform.tileZoom),u_pixel_coord_upper:[be>>16,xe>>16],u_pixel_coord_lower:[be&65535,xe&65535]}}var Cv=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_lightpos:new a.Uniform3f(g,c.u_lightpos),u_lightintensity:new a.Uniform1f(g,c.u_lightintensity),u_lightcolor:new a.Uniform3f(g,c.u_lightcolor),u_vertical_gradient:new a.Uniform1f(g,c.u_vertical_gradient),u_opacity:new a.Uniform1f(g,c.u_opacity)}},bn=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_lightpos:new a.Uniform3f(g,c.u_lightpos),u_lightintensity:new a.Uniform1f(g,c.u_lightintensity),u_lightcolor:new a.Uniform3f(g,c.u_lightcolor),u_vertical_gradient:new a.Uniform1f(g,c.u_vertical_gradient),u_height_factor:new a.Uniform1f(g,c.u_height_factor),u_image:new a.Uniform1i(g,c.u_image),u_texsize:new a.Uniform2f(g,c.u_texsize),u_pixel_coord_upper:new a.Uniform2f(g,c.u_pixel_coord_upper),u_pixel_coord_lower:new a.Uniform2f(g,c.u_pixel_coord_lower),u_scale:new a.Uniform3f(g,c.u_scale),u_fade:new a.Uniform1f(g,c.u_fade),u_opacity:new a.Uniform1f(g,c.u_opacity)}},Jf=function(g,c,b,d){var w=c.style.light,L=w.properties.get("position"),R=[L.x,L.y,L.z],G=a.create$1();w.properties.get("anchor")==="viewport"&&a.fromRotation(G,-c.transform.angle),a.transformMat3(R,R,G);var K=w.properties.get("color");return{u_matrix:g,u_lightpos:R,u_lightintensity:w.properties.get("intensity"),u_lightcolor:[K.r,K.g,K.b],u_vertical_gradient:+b,u_opacity:d}},Js=function(g,c,b,d,w,L,R){return a.extend(Jf(g,c,b,d),af(L,c,R),{u_height_factor:-Math.pow(2,w.overscaledZ)/R.tileSize/8})},Sl=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix)}},kl=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_image:new a.Uniform1i(g,c.u_image),u_texsize:new a.Uniform2f(g,c.u_texsize),u_pixel_coord_upper:new a.Uniform2f(g,c.u_pixel_coord_upper),u_pixel_coord_lower:new a.Uniform2f(g,c.u_pixel_coord_lower),u_scale:new a.Uniform3f(g,c.u_scale),u_fade:new a.Uniform1f(g,c.u_fade)}},Cl=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_world:new a.Uniform2f(g,c.u_world)}},Ks=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_world:new a.Uniform2f(g,c.u_world),u_image:new a.Uniform1i(g,c.u_image),u_texsize:new a.Uniform2f(g,c.u_texsize),u_pixel_coord_upper:new a.Uniform2f(g,c.u_pixel_coord_upper),u_pixel_coord_lower:new a.Uniform2f(g,c.u_pixel_coord_lower),u_scale:new a.Uniform3f(g,c.u_scale),u_fade:new a.Uniform1f(g,c.u_fade)}},Ms=function(g){return{u_matrix:g}},Ss=function(g,c,b,d){return a.extend(Ms(g),af(b,c,d))},El=function(g,c){return{u_matrix:g,u_world:c}},mp=function(g,c,b,d,w){return a.extend(Ss(g,c,b,d),{u_world:w})},Wm=function(g,c){return{u_camera_to_center_distance:new a.Uniform1f(g,c.u_camera_to_center_distance),u_scale_with_map:new a.Uniform1i(g,c.u_scale_with_map),u_pitch_with_map:new a.Uniform1i(g,c.u_pitch_with_map),u_extrude_scale:new a.Uniform2f(g,c.u_extrude_scale),u_device_pixel_ratio:new a.Uniform1f(g,c.u_device_pixel_ratio),u_matrix:new a.UniformMatrix4f(g,c.u_matrix)}},Xm=function(g,c,b,d){var w=g.transform,L,R;if(d.paint.get("circle-pitch-alignment")==="map"){var G=mo(b,1,w.zoom);L=!0,R=[G,G]}else L=!1,R=w.pixelsToGLUnits;return{u_camera_to_center_distance:w.cameraToCenterDistance,u_scale_with_map:+(d.paint.get("circle-pitch-scale")==="map"),u_matrix:g.translatePosMatrix(c.posMatrix,b,d.paint.get("circle-translate"),d.paint.get("circle-translate-anchor")),u_pitch_with_map:+L,u_device_pixel_ratio:a.browser.devicePixelRatio,u_extrude_scale:R}},jm=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_camera_to_center_distance:new a.Uniform1f(g,c.u_camera_to_center_distance),u_pixels_to_tile_units:new a.Uniform1f(g,c.u_pixels_to_tile_units),u_extrude_scale:new a.Uniform2f(g,c.u_extrude_scale),u_overscale_factor:new a.Uniform1f(g,c.u_overscale_factor)}},yp=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_inv_matrix:new a.UniformMatrix4f(g,c.u_inv_matrix),u_camera_to_center_distance:new a.Uniform1f(g,c.u_camera_to_center_distance),u_viewport_size:new a.Uniform2f(g,c.u_viewport_size)}},gp=function(g,c,b){var d=mo(b,1,c.zoom),w=Math.pow(2,c.zoom-b.tileID.overscaledZ),L=b.tileID.overscaleFactor();return{u_matrix:g,u_camera_to_center_distance:c.cameraToCenterDistance,u_pixels_to_tile_units:d,u_extrude_scale:[c.pixelsToGLUnits[0]/(d*w),c.pixelsToGLUnits[1]/(d*w)],u_overscale_factor:L}},Ev=function(g,c,b){return{u_matrix:g,u_inv_matrix:c,u_camera_to_center_distance:b.cameraToCenterDistance,u_viewport_size:[b.width,b.height]}},Lv=function(g,c){return{u_color:new a.UniformColor(g,c.u_color),u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_overlay:new a.Uniform1i(g,c.u_overlay),u_overlay_scale:new a.Uniform1f(g,c.u_overlay_scale)}},Kf=function(g,c,b){return b===void 0&&(b=1),{u_matrix:g,u_color:c,u_overlay:0,u_overlay_scale:b}},Yc=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix)}},_p=function(g){return{u_matrix:g}},Dv=function(g,c){return{u_extrude_scale:new a.Uniform1f(g,c.u_extrude_scale),u_intensity:new a.Uniform1f(g,c.u_intensity),u_matrix:new a.UniformMatrix4f(g,c.u_matrix)}},xp=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_world:new a.Uniform2f(g,c.u_world),u_image:new a.Uniform1i(g,c.u_image),u_color_ramp:new a.Uniform1i(g,c.u_color_ramp),u_opacity:new a.Uniform1f(g,c.u_opacity)}},nf=function(g,c,b,d){return{u_matrix:g,u_extrude_scale:mo(c,1,b),u_intensity:d}},Jm=function(g,c,b,d){var w=a.create();a.ortho(w,0,g.width,g.height,0,0,1);var L=g.context.gl;return{u_matrix:w,u_world:[L.drawingBufferWidth,L.drawingBufferHeight],u_image:b,u_color_ramp:d,u_opacity:c.paint.get("heatmap-opacity")}},bp=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_image:new a.Uniform1i(g,c.u_image),u_latrange:new a.Uniform2f(g,c.u_latrange),u_light:new a.Uniform2f(g,c.u_light),u_shadow:new a.UniformColor(g,c.u_shadow),u_highlight:new a.UniformColor(g,c.u_highlight),u_accent:new a.UniformColor(g,c.u_accent)}},wp=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_image:new a.Uniform1i(g,c.u_image),u_dimension:new a.Uniform2f(g,c.u_dimension),u_zoom:new a.Uniform1f(g,c.u_zoom),u_unpack:new a.Uniform4f(g,c.u_unpack)}},Tp=function(g,c,b){var d=b.paint.get("hillshade-shadow-color"),w=b.paint.get("hillshade-highlight-color"),L=b.paint.get("hillshade-accent-color"),R=b.paint.get("hillshade-illumination-direction")*(Math.PI/180);b.paint.get("hillshade-illumination-anchor")==="viewport"&&(R-=g.transform.angle);var G=!g.options.moving;return{u_matrix:g.transform.calculatePosMatrix(c.tileID.toUnwrapped(),G),u_image:0,u_latrange:zv(g,c.tileID),u_light:[b.paint.get("hillshade-exaggeration"),R],u_shadow:d,u_highlight:w,u_accent:L}},Pv=function(g,c){var b=c.stride,d=a.create();return a.ortho(d,0,a.EXTENT,-a.EXTENT,0,0,1),a.translate(d,d,[0,-a.EXTENT,0]),{u_matrix:d,u_image:1,u_dimension:[b,b],u_zoom:g.overscaledZ,u_unpack:c.getUnpackVector()}};function zv(g,c){var b=Math.pow(2,c.canonical.z),d=c.canonical.y;return[new a.MercatorCoordinate(0,d/b).toLngLat().lat,new a.MercatorCoordinate(0,(d+1)/b).toLngLat().lat]}var xu=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_ratio:new a.Uniform1f(g,c.u_ratio),u_device_pixel_ratio:new a.Uniform1f(g,c.u_device_pixel_ratio),u_units_to_pixels:new a.Uniform2f(g,c.u_units_to_pixels)}},Ll=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_ratio:new a.Uniform1f(g,c.u_ratio),u_device_pixel_ratio:new a.Uniform1f(g,c.u_device_pixel_ratio),u_units_to_pixels:new a.Uniform2f(g,c.u_units_to_pixels),u_image:new a.Uniform1i(g,c.u_image),u_image_height:new a.Uniform1f(g,c.u_image_height)}},Qf=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_texsize:new a.Uniform2f(g,c.u_texsize),u_ratio:new a.Uniform1f(g,c.u_ratio),u_device_pixel_ratio:new a.Uniform1f(g,c.u_device_pixel_ratio),u_image:new a.Uniform1i(g,c.u_image),u_units_to_pixels:new a.Uniform2f(g,c.u_units_to_pixels),u_scale:new a.Uniform3f(g,c.u_scale),u_fade:new a.Uniform1f(g,c.u_fade)}},Iv=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_ratio:new a.Uniform1f(g,c.u_ratio),u_device_pixel_ratio:new a.Uniform1f(g,c.u_device_pixel_ratio),u_units_to_pixels:new a.Uniform2f(g,c.u_units_to_pixels),u_patternscale_a:new a.Uniform2f(g,c.u_patternscale_a),u_patternscale_b:new a.Uniform2f(g,c.u_patternscale_b),u_sdfgamma:new a.Uniform1f(g,c.u_sdfgamma),u_image:new a.Uniform1i(g,c.u_image),u_tex_y_a:new a.Uniform1f(g,c.u_tex_y_a),u_tex_y_b:new a.Uniform1f(g,c.u_tex_y_b),u_mix:new a.Uniform1f(g,c.u_mix)}},Wc=function(g,c,b){var d=g.transform;return{u_matrix:bu(g,c,b),u_ratio:1/mo(c,1,d.zoom),u_device_pixel_ratio:a.browser.devicePixelRatio,u_units_to_pixels:[1/d.pixelsToGLUnits[0],1/d.pixelsToGLUnits[1]]}},Xc=function(g,c,b,d){return a.extend(Wc(g,c,b),{u_image:0,u_image_height:d})},jc=function(g,c,b,d){var w=g.transform,L=Jc(c,w);return{u_matrix:bu(g,c,b),u_texsize:c.imageAtlasTexture.size,u_ratio:1/mo(c,1,w.zoom),u_device_pixel_ratio:a.browser.devicePixelRatio,u_image:0,u_scale:[L,d.fromScale,d.toScale],u_fade:d.t,u_units_to_pixels:[1/w.pixelsToGLUnits[0],1/w.pixelsToGLUnits[1]]}},Dl=function(g,c,b,d,w){var L=g.transform,R=g.lineAtlas,G=Jc(c,L),K=b.layout.get("line-cap")==="round",re=R.getDash(d.from,K),ue=R.getDash(d.to,K),be=re.width*w.fromScale,xe=ue.width*w.toScale;return a.extend(Wc(g,c,b),{u_patternscale_a:[G/be,-re.height/2],u_patternscale_b:[G/xe,-ue.height/2],u_sdfgamma:R.width/(Math.min(be,xe)*256*a.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:re.y,u_tex_y_b:ue.y,u_mix:w.t})};function Jc(g,c){return 1/mo(g,1,c.tileZoom)}function bu(g,c,b){return g.translatePosMatrix(c.tileID.posMatrix,c,b.paint.get("line-translate"),b.paint.get("line-translate-anchor"))}var of=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_tl_parent:new a.Uniform2f(g,c.u_tl_parent),u_scale_parent:new a.Uniform1f(g,c.u_scale_parent),u_buffer_scale:new a.Uniform1f(g,c.u_buffer_scale),u_fade_t:new a.Uniform1f(g,c.u_fade_t),u_opacity:new a.Uniform1f(g,c.u_opacity),u_image0:new a.Uniform1i(g,c.u_image0),u_image1:new a.Uniform1i(g,c.u_image1),u_brightness_low:new a.Uniform1f(g,c.u_brightness_low),u_brightness_high:new a.Uniform1f(g,c.u_brightness_high),u_saturation_factor:new a.Uniform1f(g,c.u_saturation_factor),u_contrast_factor:new a.Uniform1f(g,c.u_contrast_factor),u_spin_weights:new a.Uniform3f(g,c.u_spin_weights)}},Ap=function(g,c,b,d,w){return{u_matrix:g,u_tl_parent:c,u_scale_parent:b,u_buffer_scale:1,u_fade_t:d.mix,u_opacity:d.opacity*w.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:w.paint.get("raster-brightness-min"),u_brightness_high:w.paint.get("raster-brightness-max"),u_saturation_factor:$f(w.paint.get("raster-saturation")),u_contrast_factor:di(w.paint.get("raster-contrast")),u_spin_weights:Kc(w.paint.get("raster-hue-rotate"))}};function Kc(g){g*=Math.PI/180;var c=Math.sin(g),b=Math.cos(g);return[(2*b+1)/3,(-Math.sqrt(3)*c-b+1)/3,(Math.sqrt(3)*c-b+1)/3]}function di(g){return g>0?1/(1-g):1+g}function $f(g){return g>0?1-1/(1.001-g):-g}var Mp=function(g,c){return{u_is_size_zoom_constant:new a.Uniform1i(g,c.u_is_size_zoom_constant),u_is_size_feature_constant:new a.Uniform1i(g,c.u_is_size_feature_constant),u_size_t:new a.Uniform1f(g,c.u_size_t),u_size:new a.Uniform1f(g,c.u_size),u_camera_to_center_distance:new a.Uniform1f(g,c.u_camera_to_center_distance),u_pitch:new a.Uniform1f(g,c.u_pitch),u_rotate_symbol:new a.Uniform1i(g,c.u_rotate_symbol),u_aspect_ratio:new a.Uniform1f(g,c.u_aspect_ratio),u_fade_change:new a.Uniform1f(g,c.u_fade_change),u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_label_plane_matrix:new a.UniformMatrix4f(g,c.u_label_plane_matrix),u_coord_matrix:new a.UniformMatrix4f(g,c.u_coord_matrix),u_is_text:new a.Uniform1i(g,c.u_is_text),u_pitch_with_map:new a.Uniform1i(g,c.u_pitch_with_map),u_texsize:new a.Uniform2f(g,c.u_texsize),u_texture:new a.Uniform1i(g,c.u_texture)}},Sp=function(g,c){return{u_is_size_zoom_constant:new a.Uniform1i(g,c.u_is_size_zoom_constant),u_is_size_feature_constant:new a.Uniform1i(g,c.u_is_size_feature_constant),u_size_t:new a.Uniform1f(g,c.u_size_t),u_size:new a.Uniform1f(g,c.u_size),u_camera_to_center_distance:new a.Uniform1f(g,c.u_camera_to_center_distance),u_pitch:new a.Uniform1f(g,c.u_pitch),u_rotate_symbol:new a.Uniform1i(g,c.u_rotate_symbol),u_aspect_ratio:new a.Uniform1f(g,c.u_aspect_ratio),u_fade_change:new a.Uniform1f(g,c.u_fade_change),u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_label_plane_matrix:new a.UniformMatrix4f(g,c.u_label_plane_matrix),u_coord_matrix:new a.UniformMatrix4f(g,c.u_coord_matrix),u_is_text:new a.Uniform1i(g,c.u_is_text),u_pitch_with_map:new a.Uniform1i(g,c.u_pitch_with_map),u_texsize:new a.Uniform2f(g,c.u_texsize),u_texture:new a.Uniform1i(g,c.u_texture),u_gamma_scale:new a.Uniform1f(g,c.u_gamma_scale),u_device_pixel_ratio:new a.Uniform1f(g,c.u_device_pixel_ratio),u_is_halo:new a.Uniform1i(g,c.u_is_halo)}},Pl=function(g,c){return{u_is_size_zoom_constant:new a.Uniform1i(g,c.u_is_size_zoom_constant),u_is_size_feature_constant:new a.Uniform1i(g,c.u_is_size_feature_constant),u_size_t:new a.Uniform1f(g,c.u_size_t),u_size:new a.Uniform1f(g,c.u_size),u_camera_to_center_distance:new a.Uniform1f(g,c.u_camera_to_center_distance),u_pitch:new a.Uniform1f(g,c.u_pitch),u_rotate_symbol:new a.Uniform1i(g,c.u_rotate_symbol),u_aspect_ratio:new a.Uniform1f(g,c.u_aspect_ratio),u_fade_change:new a.Uniform1f(g,c.u_fade_change),u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_label_plane_matrix:new a.UniformMatrix4f(g,c.u_label_plane_matrix),u_coord_matrix:new a.UniformMatrix4f(g,c.u_coord_matrix),u_is_text:new a.Uniform1i(g,c.u_is_text),u_pitch_with_map:new a.Uniform1i(g,c.u_pitch_with_map),u_texsize:new a.Uniform2f(g,c.u_texsize),u_texsize_icon:new a.Uniform2f(g,c.u_texsize_icon),u_texture:new a.Uniform1i(g,c.u_texture),u_texture_icon:new a.Uniform1i(g,c.u_texture_icon),u_gamma_scale:new a.Uniform1f(g,c.u_gamma_scale),u_device_pixel_ratio:new a.Uniform1f(g,c.u_device_pixel_ratio),u_is_halo:new a.Uniform1i(g,c.u_is_halo)}},kp=function(g,c,b,d,w,L,R,G,K,re){var ue=w.transform;return{u_is_size_zoom_constant:+(g==="constant"||g==="source"),u_is_size_feature_constant:+(g==="constant"||g==="camera"),u_size_t:c?c.uSizeT:0,u_size:c?c.uSize:0,u_camera_to_center_distance:ue.cameraToCenterDistance,u_pitch:ue.pitch/360*2*Math.PI,u_rotate_symbol:+b,u_aspect_ratio:ue.width/ue.height,u_fade_change:w.options.fadeDuration?w.symbolFadeChange:1,u_matrix:L,u_label_plane_matrix:R,u_coord_matrix:G,u_is_text:+K,u_pitch_with_map:+d,u_texsize:re,u_texture:0}},Cp=function(g,c,b,d,w,L,R,G,K,re,ue){var be=w.transform;return a.extend(kp(g,c,b,d,w,L,R,G,K,re),{u_gamma_scale:d?Math.cos(be._pitch)*be.cameraToCenterDistance:1,u_device_pixel_ratio:a.browser.devicePixelRatio,u_is_halo:+ue})},Rv=function(g,c,b,d,w,L,R,G,K,re){return a.extend(Cp(g,c,b,d,w,L,R,G,!0,K,!0),{u_texsize_icon:re,u_texture_icon:1})},Ep=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_opacity:new a.Uniform1f(g,c.u_opacity),u_color:new a.UniformColor(g,c.u_color)}},Km=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_opacity:new a.Uniform1f(g,c.u_opacity),u_image:new a.Uniform1i(g,c.u_image),u_pattern_tl_a:new a.Uniform2f(g,c.u_pattern_tl_a),u_pattern_br_a:new a.Uniform2f(g,c.u_pattern_br_a),u_pattern_tl_b:new a.Uniform2f(g,c.u_pattern_tl_b),u_pattern_br_b:new a.Uniform2f(g,c.u_pattern_br_b),u_texsize:new a.Uniform2f(g,c.u_texsize),u_mix:new a.Uniform1f(g,c.u_mix),u_pattern_size_a:new a.Uniform2f(g,c.u_pattern_size_a),u_pattern_size_b:new a.Uniform2f(g,c.u_pattern_size_b),u_scale_a:new a.Uniform1f(g,c.u_scale_a),u_scale_b:new a.Uniform1f(g,c.u_scale_b),u_pixel_coord_upper:new a.Uniform2f(g,c.u_pixel_coord_upper),u_pixel_coord_lower:new a.Uniform2f(g,c.u_pixel_coord_lower),u_tile_units_to_pixels:new a.Uniform1f(g,c.u_tile_units_to_pixels)}},zl=function(g,c,b){return{u_matrix:g,u_opacity:c,u_color:b}},wu=function(g,c,b,d,w,L){return a.extend(_u(d,L,b,w),{u_matrix:g,u_opacity:c})},ec={fillExtrusion:Cv,fillExtrusionPattern:bn,fill:Sl,fillPattern:kl,fillOutline:Cl,fillOutlinePattern:Ks,circle:Wm,collisionBox:jm,collisionCircle:yp,debug:Lv,clippingMask:Yc,heatmap:Dv,heatmapTexture:xp,hillshade:bp,hillshadePrepare:wp,line:xu,lineGradient:Ll,linePattern:Qf,lineSDF:Iv,raster:of,symbolIcon:Mp,symbolSDF:Sp,symbolTextAndIcon:Pl,background:Ep,backgroundPattern:Km},ks;function Cs(g,c,b,d,w,L,R){for(var G=g.context,K=G.gl,re=g.useProgram("collisionBox"),ue=[],be=0,xe=0,Re=0;Re0){var Nt=a.create(),Qt=je;a.mul(Nt,Oe.placementInvProjMatrix,g.transform.glCoordMatrix),a.mul(Nt,Nt,Oe.placementViewportMatrix),ue.push({circleArray:zt,circleOffset:xe,transform:Qt,invTransform:Nt}),be+=zt.length/4,xe=be}ht&&re.draw(G,K.LINES,ir.disabled,la.disabled,g.colorModeForRenderPass(),Ee.disabled,gp(je,g.transform,He),b.id,ht.layoutVertexBuffer,ht.indexBuffer,ht.segments,null,g.transform.zoom,null,null,ht.collisionVertexBuffer)}}if(!(!R||!ue.length)){var rr=g.useProgram("collisionCircle"),Yt=new a.StructArrayLayout2f1f2i16;Yt.resize(be*4),Yt._trim();for(var ar=0,vr=0,wr=ue;vr=0&&(Ge[Oe.associatedIconIndex]={shiftedAnchor:Wr,angle:Ra})}}if(ue){Re.clear();for(var Nr=g.icon.placedSymbolArray,Ma=0;Ma0){var R=a.browser.now(),G=(R-g.timeAdded)/L,K=c?(R-c.timeAdded)/L:-1,re=b.getSource(),ue=w.coveringZoomLevel({tileSize:re.tileSize,roundZoom:re.roundZoom}),be=!c||Math.abs(c.tileID.overscaledZ-ue)>Math.abs(g.tileID.overscaledZ-ue),xe=be&&g.refreshedUponExpiration?1:a.clamp(be?G:1-K,0,1);return g.refreshedUponExpiration&&G>=1&&(g.refreshedUponExpiration=!1),c?{opacity:1,mix:1-xe}:{opacity:xe,mix:0}}else return{opacity:1,mix:0}}function tc(g,c,b){var d=b.paint.get("background-color"),w=b.paint.get("background-opacity");if(w!==0){var L=g.context,R=L.gl,G=g.transform,K=G.tileSize,re=b.paint.get("background-pattern");if(!g.isPatternMissing(re)){var ue=!re&&d.a===1&&w===1&&g.opaquePassEnabledForLayer()?"opaque":"translucent";if(g.renderPass===ue){var be=la.disabled,xe=g.depthModeForSublayer(0,ue==="opaque"?ir.ReadWrite:ir.ReadOnly),Re=g.colorModeForRenderPass(),Ge=g.useProgram(re?"backgroundPattern":"background"),He=G.coveringTiles({tileSize:K});re&&(L.activeTexture.set(R.TEXTURE0),g.imageManager.bind(g.context));for(var Oe=b.getCrossfadeParameters(),je=0,ht=He;je "+b.overscaledZ);var je=Oe+" "+Re+"kb";Rp(g,je),R.draw(d,w.TRIANGLES,G,K,ee.alphaBlended,Ee.disabled,Kf(L,a.Color.transparent,He),ue,g.debugBuffer,g.quadTriangleIndexBuffer,g.debugSegments)}function Rp(g,c){g.initDebugOverlayCanvas();var b=g.debugOverlayCanvas,d=g.context.gl,w=g.debugOverlayCanvas.getContext("2d");w.clearRect(0,0,b.width,b.height),w.shadowColor="white",w.shadowBlur=2,w.lineWidth=1.5,w.strokeStyle="white",w.textBaseline="top",w.font="bold 36px Open Sans, sans-serif",w.fillText(c,5,5),w.strokeText(c,5,5),g.debugOverlayTexture.update(b),g.debugOverlayTexture.bind(d.LINEAR,d.CLAMP_TO_EDGE)}function df(g,c,b){var d=g.context,w=b.implementation;if(g.renderPass==="offscreen"){var L=w.prerender;L&&(g.setCustomLayerDefaults(),d.setColorMode(g.colorModeForRenderPass()),L.call(w,d.gl,g.transform.customLayerMatrix()),d.setDirty(),g.setBaseState())}else if(g.renderPass==="translucent"){g.setCustomLayerDefaults(),d.setColorMode(g.colorModeForRenderPass()),d.setStencilMode(la.disabled);var R=w.renderingMode==="3d"?new ir(g.context.gl.LEQUAL,ir.ReadWrite,g.depthRangeFor3D):g.depthModeForSublayer(0,ir.ReadOnly);d.setDepthMode(R),w.render(d.gl,g.transform.customLayerMatrix()),d.setDirty(),g.setBaseState(),d.bindFramebuffer.set(null)}}var li={symbol:Qm,circle:Qc,heatmap:Tu,line:go,fill:Lp,"fill-extrusion":Il,hillshade:hf,raster:Dp,background:tc,debug:Vv,custom:df},Li=function(c,b){this.context=new Ne(c),this.transform=b,this._tileTextures={},this.setup(),this.numSublayers=$e.maxUnderzooming+$e.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new mu,this.gpuTimers={}};Li.prototype.resize=function(c,b){if(this.width=c*a.browser.devicePixelRatio,this.height=b*a.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var d=0,w=this.style._order;d256&&this.clearStencil(),d.setColorMode(ee.disabled),d.setDepthMode(ir.disabled);var L=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var R=0,G=b;R256&&this.clearStencil();var c=this.nextStencilID++,b=this.context.gl;return new la({func:b.NOTEQUAL,mask:255},c,255,b.KEEP,b.KEEP,b.REPLACE)},Li.prototype.stencilModeForClipping=function(c){var b=this.context.gl;return new la({func:b.EQUAL,mask:255},this._tileClippingMaskIDs[c.key],0,b.KEEP,b.KEEP,b.REPLACE)},Li.prototype.stencilConfigForOverlap=function(c){var b,d=this.context.gl,w=c.sort(function(re,ue){return ue.overscaledZ-re.overscaledZ}),L=w[w.length-1].overscaledZ,R=w[0].overscaledZ-L+1;if(R>1){this.currentStencilSource=void 0,this.nextStencilID+R>256&&this.clearStencil();for(var G={},K=0;K=0;this.currentLayer--){var Nt=this.style._layers[w[this.currentLayer]],Qt=L[Nt.source],rr=K[Nt.source];this._renderTileClippingMasks(Nt,rr),this.renderLayer(this,Qt,Nt,rr)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer0?b.pop():null},Li.prototype.isPatternMissing=function(c){if(!c)return!1;if(!c.from||!c.to)return!0;var b=this.imageManager.getPattern(c.from.toString()),d=this.imageManager.getPattern(c.to.toString());return!b||!d},Li.prototype.useProgram=function(c,b){this.cache=this.cache||{};var d=""+c+(b?b.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[d]||(this.cache[d]=new pp(this.context,c,Ym[c],b,ec[c],this._showOverdrawInspector)),this.cache[d]},Li.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},Li.prototype.setBaseState=function(){var c=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(c.FUNC_ADD)},Li.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=a.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var c=this.context.gl;this.debugOverlayTexture=new a.Texture(this.context,this.debugOverlayCanvas,c.RGBA)}},Li.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var so=function(c,b){this.points=c,this.planes=b};so.fromInvProjectionMatrix=function(c,b,d){var w=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]],L=Math.pow(2,d),R=w.map(function(re){return a.transformMat4([],re,c)}).map(function(re){return a.scale$1([],re,1/re[3]/b*L)}),G=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]],K=G.map(function(re){var ue=a.sub([],R[re[0]],R[re[1]]),be=a.sub([],R[re[2]],R[re[1]]),xe=a.normalize([],a.cross([],ue,be)),Re=-a.dot(xe,R[re[1]]);return xe.concat(Re)});return new so(R,K)};var Es=function(c,b){this.min=c,this.max=b,this.center=a.scale$2([],a.add([],this.min,this.max),.5)};Es.prototype.quadrant=function(c){for(var b=[c%2===0,c<2],d=a.clone$2(this.min),w=a.clone$2(this.max),L=0;L=0;if(R===0)return 0;R!==b.length&&(d=!1)}if(d)return 2;for(var K=0;K<3;K++){for(var re=Number.MAX_VALUE,ue=-Number.MAX_VALUE,be=0;bethis.max[K]-this.min[K])return 0}return 1};var _o=function(c,b,d,w){if(c===void 0&&(c=0),b===void 0&&(b=0),d===void 0&&(d=0),w===void 0&&(w=0),isNaN(c)||c<0||isNaN(b)||b<0||isNaN(d)||d<0||isNaN(w)||w<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=c,this.bottom=b,this.left=d,this.right=w};_o.prototype.interpolate=function(c,b,d){return b.top!=null&&c.top!=null&&(this.top=a.number(c.top,b.top,d)),b.bottom!=null&&c.bottom!=null&&(this.bottom=a.number(c.bottom,b.bottom,d)),b.left!=null&&c.left!=null&&(this.left=a.number(c.left,b.left,d)),b.right!=null&&c.right!=null&&(this.right=a.number(c.right,b.right,d)),this},_o.prototype.getCenter=function(c,b){var d=a.clamp((this.left+c-this.right)/2,0,c),w=a.clamp((this.top+b-this.bottom)/2,0,b);return new a.Point(d,w)},_o.prototype.equals=function(c){return this.top===c.top&&this.bottom===c.bottom&&this.left===c.left&&this.right===c.right},_o.prototype.clone=function(){return new _o(this.top,this.bottom,this.left,this.right)},_o.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var $a=function(c,b,d,w,L){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=L===void 0?!0:L,this._minZoom=c||0,this._maxZoom=b||22,this._minPitch=d==null?0:d,this._maxPitch=w==null?60:w,this.setMaxBounds(),this.width=0,this.height=0,this._center=new a.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new _o,this._posMatrixCache={},this._alignedPosMatrixCache={}},fi={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};$a.prototype.clone=function(){var c=new $a(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return c.tileSize=this.tileSize,c.latRange=this.latRange,c.width=this.width,c.height=this.height,c._center=this._center,c.zoom=this.zoom,c.angle=this.angle,c._fov=this._fov,c._pitch=this._pitch,c._unmodified=this._unmodified,c._edgeInsets=this._edgeInsets.clone(),c._calcMatrices(),c},fi.minZoom.get=function(){return this._minZoom},fi.minZoom.set=function(g){this._minZoom!==g&&(this._minZoom=g,this.zoom=Math.max(this.zoom,g))},fi.maxZoom.get=function(){return this._maxZoom},fi.maxZoom.set=function(g){this._maxZoom!==g&&(this._maxZoom=g,this.zoom=Math.min(this.zoom,g))},fi.minPitch.get=function(){return this._minPitch},fi.minPitch.set=function(g){this._minPitch!==g&&(this._minPitch=g,this.pitch=Math.max(this.pitch,g))},fi.maxPitch.get=function(){return this._maxPitch},fi.maxPitch.set=function(g){this._maxPitch!==g&&(this._maxPitch=g,this.pitch=Math.min(this.pitch,g))},fi.renderWorldCopies.get=function(){return this._renderWorldCopies},fi.renderWorldCopies.set=function(g){g===void 0?g=!0:g===null&&(g=!1),this._renderWorldCopies=g},fi.worldSize.get=function(){return this.tileSize*this.scale},fi.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},fi.size.get=function(){return new a.Point(this.width,this.height)},fi.bearing.get=function(){return-this.angle/Math.PI*180},fi.bearing.set=function(g){var c=-a.wrap(g,-180,180)*Math.PI/180;this.angle!==c&&(this._unmodified=!1,this.angle=c,this._calcMatrices(),this.rotationMatrix=a.create$2(),a.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},fi.pitch.get=function(){return this._pitch/Math.PI*180},fi.pitch.set=function(g){var c=a.clamp(g,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==c&&(this._unmodified=!1,this._pitch=c,this._calcMatrices())},fi.fov.get=function(){return this._fov/Math.PI*180},fi.fov.set=function(g){g=Math.max(.01,Math.min(60,g)),this._fov!==g&&(this._unmodified=!1,this._fov=g/180*Math.PI,this._calcMatrices())},fi.zoom.get=function(){return this._zoom},fi.zoom.set=function(g){var c=Math.min(Math.max(g,this.minZoom),this.maxZoom);this._zoom!==c&&(this._unmodified=!1,this._zoom=c,this.scale=this.zoomScale(c),this.tileZoom=Math.floor(c),this.zoomFraction=c-this.tileZoom,this._constrain(),this._calcMatrices())},fi.center.get=function(){return this._center},fi.center.set=function(g){g.lat===this._center.lat&&g.lng===this._center.lng||(this._unmodified=!1,this._center=g,this._constrain(),this._calcMatrices())},fi.padding.get=function(){return this._edgeInsets.toJSON()},fi.padding.set=function(g){this._edgeInsets.equals(g)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,g,1),this._calcMatrices())},fi.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},$a.prototype.isPaddingEqual=function(c){return this._edgeInsets.equals(c)},$a.prototype.interpolatePadding=function(c,b,d){this._unmodified=!1,this._edgeInsets.interpolate(c,b,d),this._constrain(),this._calcMatrices()},$a.prototype.coveringZoomLevel=function(c){var b=(c.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/c.tileSize));return Math.max(0,b)},$a.prototype.getVisibleUnwrappedCoordinates=function(c){var b=[new a.UnwrappedTileID(0,c)];if(this._renderWorldCopies)for(var d=this.pointCoordinate(new a.Point(0,0)),w=this.pointCoordinate(new a.Point(this.width,0)),L=this.pointCoordinate(new a.Point(this.width,this.height)),R=this.pointCoordinate(new a.Point(0,this.height)),G=Math.floor(Math.min(d.x,w.x,L.x,R.x)),K=Math.floor(Math.max(d.x,w.x,L.x,R.x)),re=1,ue=G-re;ue<=K+re;ue++)ue!==0&&b.push(new a.UnwrappedTileID(ue,c));return b},$a.prototype.coveringTiles=function(c){var b=this.coveringZoomLevel(c),d=b;if(c.minzoom!==void 0&&bc.maxzoom&&(b=c.maxzoom);var w=a.MercatorCoordinate.fromLngLat(this.center),L=Math.pow(2,b),R=[L*w.x,L*w.y,0],G=so.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,b),K=c.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(K=b);var re=3,ue=function(kr){return{aabb:new Es([kr*L,0,0],[(kr+1)*L,L,0]),zoom:0,x:0,y:0,wrap:kr,fullyVisible:!1}},be=[],xe=[],Re=b,Ge=c.reparseOverscaled?d:b;if(this._renderWorldCopies)for(var He=1;He<=3;He++)be.push(ue(-He)),be.push(ue(He));for(be.push(ue(0));be.length>0;){var Oe=be.pop(),je=Oe.x,ht=Oe.y,zt=Oe.fullyVisible;if(!zt){var Nt=Oe.aabb.intersects(G);if(Nt===0)continue;zt=Nt===2}var Qt=Oe.aabb.distanceX(R),rr=Oe.aabb.distanceY(R),Yt=Math.max(Math.abs(Qt),Math.abs(rr)),ar=re+(1<ar&&Oe.zoom>=K){xe.push({tileID:new a.OverscaledTileID(Oe.zoom===Re?Ge:Oe.zoom,Oe.wrap,Oe.zoom,je,ht),distanceSq:a.sqrLen([R[0]-.5-je,R[1]-.5-ht])});continue}for(var vr=0;vr<4;vr++){var wr=(je<<1)+vr%2,Lr=(ht<<1)+(vr>>1);be.push({aabb:Oe.aabb.quadrant(vr),zoom:Oe.zoom+1,x:wr,y:Lr,wrap:Oe.wrap,fullyVisible:zt})}}return xe.sort(function(kr,Wr){return kr.distanceSq-Wr.distanceSq}).map(function(kr){return kr.tileID})},$a.prototype.resize=function(c,b){this.width=c,this.height=b,this.pixelsToGLUnits=[2/c,-2/b],this._constrain(),this._calcMatrices()},fi.unmodified.get=function(){return this._unmodified},$a.prototype.zoomScale=function(c){return Math.pow(2,c)},$a.prototype.scaleZoom=function(c){return Math.log(c)/Math.LN2},$a.prototype.project=function(c){var b=a.clamp(c.lat,-this.maxValidLatitude,this.maxValidLatitude);return new a.Point(a.mercatorXfromLng(c.lng)*this.worldSize,a.mercatorYfromLat(b)*this.worldSize)},$a.prototype.unproject=function(c){return new a.MercatorCoordinate(c.x/this.worldSize,c.y/this.worldSize).toLngLat()},fi.point.get=function(){return this.project(this.center)},$a.prototype.setLocationAtPoint=function(c,b){var d=this.pointCoordinate(b),w=this.pointCoordinate(this.centerPoint),L=this.locationCoordinate(c),R=new a.MercatorCoordinate(L.x-(d.x-w.x),L.y-(d.y-w.y));this.center=this.coordinateLocation(R),this._renderWorldCopies&&(this.center=this.center.wrap())},$a.prototype.locationPoint=function(c){return this.coordinatePoint(this.locationCoordinate(c))},$a.prototype.pointLocation=function(c){return this.coordinateLocation(this.pointCoordinate(c))},$a.prototype.locationCoordinate=function(c){return a.MercatorCoordinate.fromLngLat(c)},$a.prototype.coordinateLocation=function(c){return c.toLngLat()},$a.prototype.pointCoordinate=function(c){var b=0,d=[c.x,c.y,0,1],w=[c.x,c.y,1,1];a.transformMat4(d,d,this.pixelMatrixInverse),a.transformMat4(w,w,this.pixelMatrixInverse);var L=d[3],R=w[3],G=d[0]/L,K=w[0]/R,re=d[1]/L,ue=w[1]/R,be=d[2]/L,xe=w[2]/R,Re=be===xe?0:(b-be)/(xe-be);return new a.MercatorCoordinate(a.number(G,K,Re)/this.worldSize,a.number(re,ue,Re)/this.worldSize)},$a.prototype.coordinatePoint=function(c){var b=[c.x*this.worldSize,c.y*this.worldSize,0,1];return a.transformMat4(b,b,this.pixelMatrix),new a.Point(b[0]/b[3],b[1]/b[3])},$a.prototype.getBounds=function(){return new a.LngLatBounds().extend(this.pointLocation(new a.Point(0,0))).extend(this.pointLocation(new a.Point(this.width,0))).extend(this.pointLocation(new a.Point(this.width,this.height))).extend(this.pointLocation(new a.Point(0,this.height)))},$a.prototype.getMaxBounds=function(){return!this.latRange||this.latRange.length!==2||!this.lngRange||this.lngRange.length!==2?null:new a.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]])},$a.prototype.setMaxBounds=function(c){c?(this.lngRange=[c.getWest(),c.getEast()],this.latRange=[c.getSouth(),c.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},$a.prototype.calculatePosMatrix=function(c,b){b===void 0&&(b=!1);var d=c.key,w=b?this._alignedPosMatrixCache:this._posMatrixCache;if(w[d])return w[d];var L=c.canonical,R=this.worldSize/this.zoomScale(L.z),G=L.x+Math.pow(2,L.z)*c.wrap,K=a.identity(new Float64Array(16));return a.translate(K,K,[G*R,L.y*R,0]),a.scale(K,K,[R/a.EXTENT,R/a.EXTENT,1]),a.multiply(K,b?this.alignedProjMatrix:this.projMatrix,K),w[d]=new Float32Array(K),w[d]},$a.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},$a.prototype._constrain=function(){if(!(!this.center||!this.width||!this.height||this._constraining)){this._constraining=!0;var c=-90,b=90,d=-180,w=180,L,R,G,K,re=this.size,ue=this._unmodified;if(this.latRange){var be=this.latRange;c=a.mercatorYfromLat(be[1])*this.worldSize,b=a.mercatorYfromLat(be[0])*this.worldSize,L=b-cb&&(K=b-Oe)}if(this.lngRange){var je=Re.x,ht=re.x/2;je-htw&&(G=w-ht)}(G!==void 0||K!==void 0)&&(this.center=this.unproject(new a.Point(G!==void 0?G:Re.x,K!==void 0?K:Re.y))),this._unmodified=ue,this._constraining=!1}},$a.prototype._calcMatrices=function(){if(this.height){var c=this._fov/2,b=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(c)*this.height;var d=Math.PI/2+this._pitch,w=this._fov*(.5+b.y/this.height),L=Math.sin(w)*this.cameraToCenterDistance/Math.sin(a.clamp(Math.PI-d-w,.01,Math.PI-.01)),R=this.point,G=R.x,K=R.y,re=Math.cos(Math.PI/2-this._pitch)*L+this.cameraToCenterDistance,ue=re*1.01,be=this.height/50,xe=new Float64Array(16);a.perspective(xe,this._fov,this.width/this.height,be,ue),xe[8]=-b.x*2/this.width,xe[9]=b.y*2/this.height,a.scale(xe,xe,[1,-1,1]),a.translate(xe,xe,[0,0,-this.cameraToCenterDistance]),a.rotateX(xe,xe,this._pitch),a.rotateZ(xe,xe,this.angle),a.translate(xe,xe,[-G,-K,0]),this.mercatorMatrix=a.scale([],xe,[this.worldSize,this.worldSize,this.worldSize]),a.scale(xe,xe,[1,1,a.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=xe,this.invProjMatrix=a.invert([],this.projMatrix);var Re=this.width%2/2,Ge=this.height%2/2,He=Math.cos(this.angle),Oe=Math.sin(this.angle),je=G-Math.round(G)+He*Re+Oe*Ge,ht=K-Math.round(K)+He*Ge+Oe*Re,zt=new Float64Array(xe);if(a.translate(zt,zt,[je>.5?je-1:je,ht>.5?ht-1:ht,0]),this.alignedProjMatrix=zt,xe=a.create(),a.scale(xe,xe,[this.width/2,-this.height/2,1]),a.translate(xe,xe,[1,-1,0]),this.labelPlaneMatrix=xe,xe=a.create(),a.scale(xe,xe,[1,-1,1]),a.translate(xe,xe,[-1,-1,0]),a.scale(xe,xe,[2/this.width,2/this.height,1]),this.glCoordMatrix=xe,this.pixelMatrix=a.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),xe=a.invert(new Float64Array(16),this.pixelMatrix),!xe)throw new Error("failed to invert matrix");this.pixelMatrixInverse=xe,this._posMatrixCache={},this._alignedPosMatrixCache={}}},$a.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var c=this.pointCoordinate(new a.Point(0,0)),b=[c.x*this.worldSize,c.y*this.worldSize,0,1],d=a.transformMat4(b,b,this.pixelMatrix);return d[3]/this.cameraToCenterDistance},$a.prototype.getCameraPoint=function(){var c=this._pitch,b=Math.tan(c)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new a.Point(0,b))},$a.prototype.getCameraQueryGeometry=function(c){var b=this.getCameraPoint();if(c.length===1)return[c[0],b];for(var d=b.x,w=b.y,L=b.x,R=b.y,G=0,K=c;G=3&&!c.some(function(d){return isNaN(d)})){var b=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(c[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+c[2],+c[1]],zoom:+c[0],bearing:b,pitch:+(c[4]||0)}),!0}return!1},Rl.prototype._updateHashUnthrottled=function(){var c=a.window.location.href.replace(/(#.+)?$/,this.getHashString());try{a.window.history.replaceState(a.window.history.state,null,c)}catch(b){}};var rc={linearity:.3,easing:a.bezier(0,0,.3,1)},pf=a.extend({deceleration:2500,maxSpeed:1400},rc),Fl=a.extend({deceleration:20,maxSpeed:1400},rc),Ls=a.extend({deceleration:1e3,maxSpeed:360},rc),nh=a.extend({deceleration:1e3,maxSpeed:90},rc),mf=function(c){this._map=c,this.clear()};mf.prototype.clear=function(){this._inertiaBuffer=[]},mf.prototype.record=function(c){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:a.browser.now(),settings:c})},mf.prototype._drainInertiaBuffer=function(){for(var c=this._inertiaBuffer,b=a.browser.now(),d=160;c.length>0&&b-c[0].time>d;)c.shift()},mf.prototype._onMoveEnd=function(c){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var b={zoom:0,bearing:0,pitch:0,pan:new a.Point(0,0),pinchAround:void 0,around:void 0},d=0,w=this._inertiaBuffer;d=this._clickTolerance||this._map.fire(new M(c.type,this._map,c))},U.prototype.dblclick=function(c){return this._firePreventable(new M(c.type,this._map,c))},U.prototype.mouseover=function(c){this._map.fire(new M(c.type,this._map,c))},U.prototype.mouseout=function(c){this._map.fire(new M(c.type,this._map,c))},U.prototype.touchstart=function(c){return this._firePreventable(new P(c.type,this._map,c))},U.prototype.touchmove=function(c){this._map.fire(new P(c.type,this._map,c))},U.prototype.touchend=function(c){this._map.fire(new P(c.type,this._map,c))},U.prototype.touchcancel=function(c){this._map.fire(new P(c.type,this._map,c))},U.prototype._firePreventable=function(c){if(this._map.fire(c),c.defaultPrevented)return{}},U.prototype.isEnabled=function(){return!0},U.prototype.isActive=function(){return!1},U.prototype.enable=function(){},U.prototype.disable=function(){};var Z=function(c){this._map=c};Z.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},Z.prototype.mousemove=function(c){this._map.fire(new M(c.type,this._map,c))},Z.prototype.mousedown=function(){this._delayContextMenu=!0},Z.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new M("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},Z.prototype.contextmenu=function(c){this._delayContextMenu?this._contextMenuEvent=c:this._map.fire(new M(c.type,this._map,c)),this._map.listens("contextmenu")&&c.preventDefault()},Z.prototype.isEnabled=function(){return!0},Z.prototype.isActive=function(){return!1},Z.prototype.enable=function(){},Z.prototype.disable=function(){};var $=function(c,b){this._map=c,this._el=c.getCanvasContainer(),this._container=c.getContainer(),this._clickTolerance=b.clickTolerance||1};$.prototype.isEnabled=function(){return!!this._enabled},$.prototype.isActive=function(){return!!this._active},$.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},$.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},$.prototype.mousedown=function(c,b){this.isEnabled()&&c.shiftKey&&c.button===0&&(l.disableDrag(),this._startPos=this._lastPos=b,this._active=!0)},$.prototype.mousemoveWindow=function(c,b){if(this._active){var d=b;if(!(this._lastPos.equals(d)||!this._box&&d.dist(this._startPos)this.numTouches)&&(this.aborted=!0),!this.aborted&&(this.startTime===void 0&&(this.startTime=c.timeStamp),d.length===this.numTouches&&(this.centroid=ae(b),this.touches=X(d,b)))},Pe.prototype.touchmove=function(c,b,d){if(!(this.aborted||!this.centroid)){var w=X(d,b);for(var L in this.touches){var R=this.touches[L],G=w[L];(!G||G.dist(R)>ze)&&(this.aborted=!0)}}},Pe.prototype.touchend=function(c,b,d){if((!this.centroid||c.timeStamp-this.startTime>_e)&&(this.aborted=!0),d.length===0){var w=!this.aborted&&this.centroid;if(this.reset(),w)return w}};var Qe=function(c){this.singleTap=new Pe(c),this.numTaps=c.numTaps,this.reset()};Qe.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Qe.prototype.touchstart=function(c,b,d){this.singleTap.touchstart(c,b,d)},Qe.prototype.touchmove=function(c,b,d){this.singleTap.touchmove(c,b,d)},Qe.prototype.touchend=function(c,b,d){var w=this.singleTap.touchend(c,b,d);if(w){var L=c.timeStamp-this.lastTime0&&(this._active=!0);var w=X(d,b),L=new a.Point(0,0),R=new a.Point(0,0),G=0;for(var K in w){var re=w[K],ue=this._touches[K];ue&&(L._add(re),R._add(re.sub(ue)),G++,w[K]=re)}if(this._touches=w,!(GMath.abs(g.x)}var jt=100,jr=function(g){function c(){g.apply(this,arguments)}return g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c,c.prototype.reset=function(){g.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},c.prototype._start=function(d){this._lastPoints=d,Qa(d[0].sub(d[1]))&&(this._valid=!1)},c.prototype._move=function(d,w,L){var R=d[0].sub(this._lastPoints[0]),G=d[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(R,G,L.timeStamp),!!this._valid){this._lastPoints=d,this._active=!0;var K=(R.y+G.y)/2,re=-.5;return{pitchDelta:K*re}}},c.prototype.gestureBeginsVertically=function(d,w,L){if(this._valid!==void 0)return this._valid;var R=2,G=d.mag()>=R,K=w.mag()>=R;if(!(!G&&!K)){if(!G||!K)return this._firstMove===void 0&&(this._firstMove=L),L-this._firstMove0==w.y>0;return Qa(d)&&Qa(w)&&re}},c}(fr),na={panStep:100,bearingStep:15,pitchStep:10},oa=function(){var c=na;this._panStep=c.panStep,this._bearingStep=c.bearingStep,this._pitchStep=c.pitchStep,this._rotationDisabled=!1};oa.prototype.reset=function(){this._active=!1},oa.prototype.keydown=function(c){var b=this;if(!(c.altKey||c.ctrlKey||c.metaKey)){var d=0,w=0,L=0,R=0,G=0;switch(c.keyCode){case 61:case 107:case 171:case 187:d=1;break;case 189:case 109:case 173:d=-1;break;case 37:c.shiftKey?w=-1:(c.preventDefault(),R=-1);break;case 39:c.shiftKey?w=1:(c.preventDefault(),R=1);break;case 38:c.shiftKey?L=1:(c.preventDefault(),G=-1);break;case 40:c.shiftKey?L=-1:(c.preventDefault(),G=1);break;default:return}return this._rotationDisabled&&(w=0,L=0),{cameraAnimation:function(K){var re=K.getZoom();K.easeTo({duration:300,easeId:"keyboardHandler",easing:Di,zoom:d?Math.round(re)+d*(c.shiftKey?2:1):re,bearing:K.getBearing()+w*b._bearingStep,pitch:K.getPitch()+L*b._pitchStep,offset:[-R*b._panStep,-G*b._panStep],center:K.getCenter()},{originalEvent:c})}}}},oa.prototype.enable=function(){this._enabled=!0},oa.prototype.disable=function(){this._enabled=!1,this.reset()},oa.prototype.isEnabled=function(){return this._enabled},oa.prototype.isActive=function(){return this._active},oa.prototype.disableRotation=function(){this._rotationDisabled=!0},oa.prototype.enableRotation=function(){this._rotationDisabled=!1};function Di(g){return g*(2-g)}var Vi=4.000244140625,en=1/100,bi=1/450,wn=2,Tr=function(c,b){this._map=c,this._el=c.getCanvasContainer(),this._handler=b,this._delta=0,this._defaultZoomRate=en,this._wheelZoomRate=bi,a.bindAll(["_onTimeout"],this)};Tr.prototype.setZoomRate=function(c){this._defaultZoomRate=c},Tr.prototype.setWheelZoomRate=function(c){this._wheelZoomRate=c},Tr.prototype.isEnabled=function(){return!!this._enabled},Tr.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},Tr.prototype.isZooming=function(){return!!this._zooming},Tr.prototype.enable=function(c){this.isEnabled()||(this._enabled=!0,this._aroundCenter=c&&c.around==="center")},Tr.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Tr.prototype.wheel=function(c){if(this.isEnabled()){var b=c.deltaMode===a.window.WheelEvent.DOM_DELTA_LINE?c.deltaY*40:c.deltaY,d=a.browser.now(),w=d-(this._lastWheelEventTime||0);this._lastWheelEventTime=d,b!==0&&b%Vi===0?this._type="wheel":b!==0&&Math.abs(b)<4?this._type="trackpad":w>400?(this._type=null,this._lastValue=b,this._timeout=setTimeout(this._onTimeout,40,c)):this._type||(this._type=Math.abs(w*b)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,b+=this._lastValue)),c.shiftKey&&b&&(b=b/4),this._type&&(this._lastWheelEvent=c,this._delta-=b,this._active||this._start(c)),c.preventDefault()}},Tr.prototype._onTimeout=function(c){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(c)},Tr.prototype._start=function(c){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var b=l.mousePos(this._el,c);this._around=a.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(b)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},Tr.prototype.renderFrame=function(){var c=this;if(this._frameId&&(this._frameId=null,!!this.isActive())){var b=this._map.transform;if(this._delta!==0){var d=this._type==="wheel"&&Math.abs(this._delta)>Vi?this._wheelZoomRate:this._defaultZoomRate,w=wn/(1+Math.exp(-Math.abs(this._delta*d)));this._delta<0&&w!==0&&(w=1/w);var L=typeof this._targetZoom=="number"?b.zoomScale(this._targetZoom):b.scale;this._targetZoom=Math.min(b.maxZoom,Math.max(b.minZoom,b.scaleZoom(L*w))),this._type==="wheel"&&(this._startZoom=b.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var R=typeof this._targetZoom=="number"?this._targetZoom:b.zoom,G=this._startZoom,K=this._easing,re=!1,ue;if(this._type==="wheel"&&G&&K){var be=Math.min((a.browser.now()-this._lastWheelEventTime)/200,1),xe=K(be);ue=a.number(G,R,xe),be<1?this._frameId||(this._frameId=!0):re=!0}else ue=R,re=!0;return this._active=!0,re&&(this._active=!1,this._finishTimeout=setTimeout(function(){c._zooming=!1,c._handler._triggerRenderFrame(),delete c._targetZoom,delete c._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!re,zoomDelta:ue-b.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},Tr.prototype._smoothOutEasing=function(c){var b=a.ease;if(this._prevEase){var d=this._prevEase,w=(a.browser.now()-d.start)/d.duration,L=d.easing(w+.01)-d.easing(w),R=.27/Math.sqrt(L*L+1e-4)*.01,G=Math.sqrt(.27*.27-R*R);b=a.bezier(R,G,.25,1)}return this._prevEase={start:a.browser.now(),duration:c,easing:b},b},Tr.prototype.reset=function(){this._active=!1};var Hr=function(c,b){this._clickZoom=c,this._tapZoom=b};Hr.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},Hr.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},Hr.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},Hr.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var Ni=function(){this.reset()};Ni.prototype.reset=function(){this._active=!1},Ni.prototype.dblclick=function(c,b){return c.preventDefault(),{cameraAnimation:function(d){d.easeTo({duration:300,zoom:d.getZoom()+(c.shiftKey?-1:1),around:d.unproject(b)},{originalEvent:c})}}},Ni.prototype.enable=function(){this._enabled=!0},Ni.prototype.disable=function(){this._enabled=!1,this.reset()},Ni.prototype.isEnabled=function(){return this._enabled},Ni.prototype.isActive=function(){return this._active};var Ai=function(){this._tap=new Qe({numTouches:1,numTaps:1}),this.reset()};Ai.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},Ai.prototype.touchstart=function(c,b,d){this._swipePoint||(this._tapTime&&c.timeStamp-this._tapTime>me&&this.reset(),this._tapTime?d.length>0&&(this._swipePoint=b[0],this._swipeTouch=d[0].identifier):this._tap.touchstart(c,b,d))},Ai.prototype.touchmove=function(c,b,d){if(!this._tapTime)this._tap.touchmove(c,b,d);else if(this._swipePoint){if(d[0].identifier!==this._swipeTouch)return;var w=b[0],L=w.y-this._swipePoint.y;return this._swipePoint=w,c.preventDefault(),this._active=!0,{zoomDelta:L/128}}},Ai.prototype.touchend=function(c,b,d){if(this._tapTime)this._swipePoint&&d.length===0&&this.reset();else{var w=this._tap.touchend(c,b,d);w&&(this._tapTime=c.timeStamp)}},Ai.prototype.touchcancel=function(){this.reset()},Ai.prototype.enable=function(){this._enabled=!0},Ai.prototype.disable=function(){this._enabled=!1,this.reset()},Ai.prototype.isEnabled=function(){return this._enabled},Ai.prototype.isActive=function(){return this._active};var lo=function(c,b,d){this._el=c,this._mousePan=b,this._touchPan=d};lo.prototype.enable=function(c){this._inertiaOptions=c||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},lo.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},lo.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},lo.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var Rn=function(c,b,d){this._pitchWithRotate=c.pitchWithRotate,this._mouseRotate=b,this._mousePitch=d};Rn.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},Rn.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},Rn.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},Rn.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var pn=function(c,b,d,w){this._el=c,this._touchZoom=b,this._touchRotate=d,this._tapDragZoom=w,this._rotationDisabled=!1,this._enabled=!0};pn.prototype.enable=function(c){this._touchZoom.enable(c),this._rotationDisabled||this._touchRotate.enable(c),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},pn.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},pn.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},pn.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},pn.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},pn.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var pi=function(g){return g.zoom||g.drag||g.pitch||g.rotate},jo=function(g){function c(){g.apply(this,arguments)}return g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c,c}(a.Event);function uo(g){return g.panDelta&&g.panDelta.mag()||g.zoomDelta||g.bearingDelta||g.pitchDelta}var ci=function(c,b){this._map=c,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new mf(c),this._bearingSnap=b.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(b),a.bindAll(["handleEvent","handleWindowEvent"],this);var d=this._el;this._listeners=[[d,"touchstart",{passive:!0}],[d,"touchmove",{passive:!1}],[d,"touchend",void 0],[d,"touchcancel",void 0],[d,"mousedown",void 0],[d,"mousemove",void 0],[d,"mouseup",void 0],[a.window.document,"mousemove",{capture:!0}],[a.window.document,"mouseup",void 0],[d,"mouseover",void 0],[d,"mouseout",void 0],[d,"dblclick",void 0],[d,"click",void 0],[d,"keydown",{capture:!1}],[d,"keyup",void 0],[d,"wheel",{passive:!1}],[d,"contextmenu",void 0],[a.window,"blur",void 0]];for(var w=0,L=this._listeners;wG?Math.min(2,Qt):Math.max(.5,Qt),kr=Math.pow(Lr,1-vr),Wr=R.unproject(zt.add(Nt.mult(vr*kr)).mult(wr));R.setLocationAtPoint(R.renderWorldCopies?Wr.wrap():Wr,Oe)}L._fireMoveEvents(w)},function(vr){L._afterEase(w,vr)},d),this},c.prototype._prepareEase=function(d,w,L){L===void 0&&(L={}),this._moving=!0,!w&&!L.moving&&this.fire(new a.Event("movestart",d)),this._zooming&&!L.zooming&&this.fire(new a.Event("zoomstart",d)),this._rotating&&!L.rotating&&this.fire(new a.Event("rotatestart",d)),this._pitching&&!L.pitching&&this.fire(new a.Event("pitchstart",d))},c.prototype._fireMoveEvents=function(d){this.fire(new a.Event("move",d)),this._zooming&&this.fire(new a.Event("zoom",d)),this._rotating&&this.fire(new a.Event("rotate",d)),this._pitching&&this.fire(new a.Event("pitch",d))},c.prototype._afterEase=function(d,w){if(!(this._easeId&&w&&this._easeId===w)){delete this._easeId;var L=this._zooming,R=this._rotating,G=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,L&&this.fire(new a.Event("zoomend",d)),R&&this.fire(new a.Event("rotateend",d)),G&&this.fire(new a.Event("pitchend",d)),this.fire(new a.Event("moveend",d))}},c.prototype.flyTo=function(d,w){var L=this;if(!d.essential&&a.browser.prefersReducedMotion){var R=a.pick(d,["center","zoom","bearing","pitch","around"]);return this.jumpTo(R,w)}this.stop(),d=a.extend({offset:[0,0],speed:1.2,curve:1.42,easing:a.ease},d);var G=this.transform,K=this.getZoom(),re=this.getBearing(),ue=this.getPitch(),be=this.getPadding(),xe="zoom"in d?a.clamp(+d.zoom,G.minZoom,G.maxZoom):K,Re="bearing"in d?this._normalizeBearing(d.bearing,re):re,Ge="pitch"in d?+d.pitch:ue,He="padding"in d?d.padding:G.padding,Oe=G.zoomScale(xe-K),je=a.Point.convert(d.offset),ht=G.centerPoint.add(je),zt=G.pointLocation(ht),Nt=a.LngLat.convert(d.center||zt);this._normalizeCenter(Nt);var Qt=G.project(zt),rr=G.project(Nt).sub(Qt),Yt=d.curve,ar=Math.max(G.width,G.height),vr=ar/Oe,wr=rr.mag();if("minZoom"in d){var Lr=a.clamp(Math.min(d.minZoom,K,xe),G.minZoom,G.maxZoom),kr=ar/G.zoomScale(Lr-K);Yt=Math.sqrt(kr/wr*2)}var Wr=Yt*Yt;function Ra(ia){var Ba=(vr*vr-ar*ar+(ia?-1:1)*Wr*Wr*wr*wr)/(2*(ia?vr:ar)*Wr*wr);return Math.log(Math.sqrt(Ba*Ba+1)-Ba)}function _a(ia){return(Math.exp(ia)-Math.exp(-ia))/2}function Nr(ia){return(Math.exp(ia)+Math.exp(-ia))/2}function Ma(ia){return _a(ia)/Nr(ia)}var aa=Ra(0),Za=function(ia){return Nr(aa)/Nr(aa+Yt*ia)},Ua=function(ia){return ar*((Nr(aa)*Ma(aa+Yt*ia)-_a(aa))/Wr)/wr},Mi=(Ra(1)-aa)/Yt;if(Math.abs(wr)<1e-6||!isFinite(Mi)){if(Math.abs(ar-vr)<1e-6)return this.easeTo(d,w);var La=vrd.maxDuration&&(d.duration=0),this._zooming=!0,this._rotating=re!==Re,this._pitching=Ge!==ue,this._padding=!G.isPaddingEqual(He),this._prepareEase(w,!1),this._ease(function(ia){var Ba=ia*Mi,tn=1/Za(Ba);G.zoom=ia===1?xe:K+G.scaleZoom(tn),L._rotating&&(G.bearing=a.number(re,Re,ia)),L._pitching&&(G.pitch=a.number(ue,Ge,ia)),L._padding&&(G.interpolatePadding(be,He,ia),ht=G.centerPoint.add(je));var Fn=ia===1?Nt:G.unproject(Qt.add(rr.mult(Ua(Ba))).mult(tn));G.setLocationAtPoint(G.renderWorldCopies?Fn.wrap():Fn,ht),L._fireMoveEvents(w)},function(){return L._afterEase(w)},d),this},c.prototype.isEasing=function(){return!!this._easeFrameId},c.prototype.stop=function(){return this._stop()},c.prototype._stop=function(d,w){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var L=this._onEaseEnd;delete this._onEaseEnd,L.call(this,w)}if(!d){var R=this.handlers;R&&R.stop(!1)}return this},c.prototype._ease=function(d,w,L){L.animate===!1||L.duration===0?(d(1),w()):(this._easeStart=a.browser.now(),this._easeOptions=L,this._onEaseFrame=d,this._onEaseEnd=w,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},c.prototype._renderFrameCallback=function(){var d=Math.min((a.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(d)),d<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},c.prototype._normalizeBearing=function(d,w){d=a.wrap(d,-180,180);var L=Math.abs(d-w);return Math.abs(d-360-w)180?-360:L<-180?360:0}},c}(a.Evented),Ta=function(c){c===void 0&&(c={}),this.options=c,a.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};Ta.prototype.getDefaultPosition=function(){return"bottom-right"},Ta.prototype.onAdd=function(c){var b=this.options&&this.options.compact;return this._map=c,this._container=l.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=l.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=l.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),b&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),b===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},Ta.prototype.onRemove=function(){l.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0},Ta.prototype._setElementTitle=function(c,b){var d=this._map._getUIString("AttributionControl."+b);c.title=d,c.setAttribute("aria-label",d)},Ta.prototype._toggleAttribution=function(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","true"))},Ta.prototype._updateEditLink=function(){var c=this._editLink;c||(c=this._editLink=this._container.querySelector(".mapbox-improve-map"));var b=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||a.config.ACCESS_TOKEN}];if(c){var d=b.reduce(function(w,L,R){return L.value&&(w+=L.key+"="+L.value+(R=0)return!1;return!0});var G=c.join(" | ");G!==this._attribHTML&&(this._attribHTML=G,c.length?(this._innerContainer.innerHTML=G,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},Ta.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var ui=function(){a.bindAll(["_updateLogo"],this),a.bindAll(["_updateCompact"],this)};ui.prototype.onAdd=function(c){this._map=c,this._container=l.create("div","mapboxgl-ctrl");var b=l.create("a","mapboxgl-ctrl-logo");return b.target="_blank",b.rel="noopener nofollow",b.href="https://www.mapbox.com/",b.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),b.setAttribute("rel","noopener nofollow"),this._container.appendChild(b),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},ui.prototype.onRemove=function(){l.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},ui.prototype.getDefaultPosition=function(){return"bottom-left"},ui.prototype._updateLogo=function(c){(!c||c.sourceDataType==="metadata")&&(this._container.style.display=this._logoRequired()?"block":"none")},ui.prototype._logoRequired=function(){if(this._map.style){var c=this._map.style.sourceCaches;for(var b in c){var d=c[b].getSource();if(d.mapbox_logo)return!0}return!1}},ui.prototype._updateCompact=function(){var c=this._container.children;if(c.length){var b=c[0];this._map.getCanvasContainer().offsetWidth<250?b.classList.add("mapboxgl-compact"):b.classList.remove("mapboxgl-compact")}};var Nl=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};Nl.prototype.add=function(c){var b=++this._id,d=this._queue;return d.push({callback:c,id:b,cancelled:!1}),b},Nl.prototype.remove=function(c){for(var b=this._currentlyRunning,d=b?this._queue.concat(b):this._queue,w=0,L=d;wd.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(d.minPitch!=null&&d.maxPitch!=null&&d.minPitch>d.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(d.minPitch!=null&&d.minPitch_f)throw new Error("maxPitch must be less than or equal to "+_f);var L=new $a(d.minZoom,d.maxZoom,d.minPitch,d.maxPitch,d.renderWorldCopies);if(g.call(this,L,d),this._interactive=d.interactive,this._maxTileCacheSize=d.maxTileCacheSize,this._failIfMajorPerformanceCaveat=d.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=d.preserveDrawingBuffer,this._antialias=d.antialias,this._trackResize=d.trackResize,this._bearingSnap=d.bearingSnap,this._refreshExpiredTiles=d.refreshExpiredTiles,this._fadeDuration=d.fadeDuration,this._crossSourceCollisions=d.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=d.collectResourceTiming,this._renderTaskQueue=new Nl,this._controls=[],this._mapId=a.uniqueId(),this._locale=a.extend({},Hv,d.locale),this._clickTolerance=d.clickTolerance,this._requestManager=new a.RequestManager(d.transformRequest,d.accessToken),typeof d.container=="string"){if(this._container=a.window.document.getElementById(d.container),!this._container)throw new Error("Container '"+d.container+"' not found.")}else if(d.container instanceof ay)this._container=d.container;else throw new Error("Invalid type: 'container' must be a String or HTMLElement.");if(d.maxBounds&&this.setMaxBounds(d.maxBounds),a.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return w._update(!1)}),this.on("moveend",function(){return w._update(!1)}),this.on("zoom",function(){return w._update(!0)}),typeof a.window!="undefined"&&(a.window.addEventListener("online",this._onWindowOnline,!1),a.window.addEventListener("resize",this._onWindowResize,!1),a.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new ci(this,d);var R=typeof d.hash=="string"&&d.hash||void 0;this._hash=d.hash&&new Rl(R).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:d.center,zoom:d.zoom,bearing:d.bearing,pitch:d.pitch}),d.bounds&&(this.resize(),this.fitBounds(d.bounds,a.extend({},d.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=d.localIdeographFontFamily,d.style&&this.setStyle(d.style,{localIdeographFontFamily:d.localIdeographFontFamily}),d.attributionControl&&this.addControl(new Ta({customAttribution:d.customAttribution})),this.addControl(new ui,d.logoPosition),this.on("style.load",function(){w.transform.unmodified&&w.jumpTo(w.style.stylesheet)}),this.on("data",function(G){w._update(G.dataType==="style"),w.fire(new a.Event(G.dataType+"data",G))}),this.on("dataloading",function(G){w.fire(new a.Event(G.dataType+"dataloading",G))})}g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c;var b={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return c.prototype._getMapId=function(){return this._mapId},c.prototype.addControl=function(w,L){if(L===void 0&&(w.getDefaultPosition?L=w.getDefaultPosition():L="top-right"),!w||!w.onAdd)return this.fire(new a.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var R=w.onAdd(this);this._controls.push(w);var G=this._controlPositions[L];return L.indexOf("bottom")!==-1?G.insertBefore(R,G.firstChild):G.appendChild(R),this},c.prototype.removeControl=function(w){if(!w||!w.onRemove)return this.fire(new a.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var L=this._controls.indexOf(w);return L>-1&&this._controls.splice(L,1),w.onRemove(this),this},c.prototype.hasControl=function(w){return this._controls.indexOf(w)>-1},c.prototype.resize=function(w){var L=this._containerDimensions(),R=L[0],G=L[1];this._resizeCanvas(R,G),this.transform.resize(R,G),this.painter.resize(R,G);var K=!this._moving;return K&&(this.stop(),this.fire(new a.Event("movestart",w)).fire(new a.Event("move",w))),this.fire(new a.Event("resize",w)),K&&this.fire(new a.Event("moveend",w)),this},c.prototype.getBounds=function(){return this.transform.getBounds()},c.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},c.prototype.setMaxBounds=function(w){return this.transform.setMaxBounds(a.LngLatBounds.convert(w)),this._update()},c.prototype.setMinZoom=function(w){if(w=w==null?oh:w,w>=oh&&w<=this.transform.maxZoom)return this.transform.minZoom=w,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=w,this._update(),this.getZoom()>w&&this.setZoom(w),this;throw new Error("maxZoom must be greater than the current minZoom")},c.prototype.getMaxZoom=function(){return this.transform.maxZoom},c.prototype.setMinPitch=function(w){if(w=w==null?Lo:w,w=Lo&&w<=this.transform.maxPitch)return this.transform.minPitch=w,this._update(),this.getPitch()_f)throw new Error("maxPitch must be less than or equal to "+_f);if(w>=this.transform.minPitch)return this.transform.maxPitch=w,this._update(),this.getPitch()>w&&this.setPitch(w),this;throw new Error("maxPitch must be greater than the current minPitch")},c.prototype.getMaxPitch=function(){return this.transform.maxPitch},c.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},c.prototype.setRenderWorldCopies=function(w){return this.transform.renderWorldCopies=w,this._update()},c.prototype.project=function(w){return this.transform.locationPoint(a.LngLat.convert(w))},c.prototype.unproject=function(w){return this.transform.pointLocation(a.Point.convert(w))},c.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},c.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},c.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},c.prototype._createDelegatedListener=function(w,L,R){var G=this,K;if(w==="mouseenter"||w==="mouseover"){var re=!1,ue=function(Oe){var je=G.getLayer(L)?G.queryRenderedFeatures(Oe.point,{layers:[L]}):[];je.length?re||(re=!0,R.call(G,new M(w,G,Oe.originalEvent,{features:je}))):re=!1},be=function(){re=!1};return{layer:L,listener:R,delegates:{mousemove:ue,mouseout:be}}}else if(w==="mouseleave"||w==="mouseout"){var xe=!1,Re=function(Oe){var je=G.getLayer(L)?G.queryRenderedFeatures(Oe.point,{layers:[L]}):[];je.length?xe=!0:xe&&(xe=!1,R.call(G,new M(w,G,Oe.originalEvent)))},Ge=function(Oe){xe&&(xe=!1,R.call(G,new M(w,G,Oe.originalEvent)))};return{layer:L,listener:R,delegates:{mousemove:Re,mouseout:Ge}}}else{var He=function(Oe){var je=G.getLayer(L)?G.queryRenderedFeatures(Oe.point,{layers:[L]}):[];je.length&&(Oe.features=je,R.call(G,Oe),delete Oe.features)};return{layer:L,listener:R,delegates:(K={},K[w]=He,K)}}},c.prototype.on=function(w,L,R){if(R===void 0)return g.prototype.on.call(this,w,L);var G=this._createDelegatedListener(w,L,R);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[w]=this._delegatedListeners[w]||[],this._delegatedListeners[w].push(G);for(var K in G.delegates)this.on(K,G.delegates[K]);return this},c.prototype.once=function(w,L,R){if(R===void 0)return g.prototype.once.call(this,w,L);var G=this._createDelegatedListener(w,L,R);for(var K in G.delegates)this.once(K,G.delegates[K]);return this},c.prototype.off=function(w,L,R){var G=this;if(R===void 0)return g.prototype.off.call(this,w,L);var K=function(re){for(var ue=re[w],be=0;be180;){var R=b.locationPoint(g);if(R.x>=0&&R.y>=0&&R.x<=b.width&&R.y<=b.height)break;g.lng>b.center.lng?g.lng-=360:g.lng+=360}return g}var Zv={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function qp(g,c,b){var d=g.classList;for(var w in Zv)d.remove("mapboxgl-"+b+"-anchor-"+w);d.add("mapboxgl-"+b+"-anchor-"+c)}var lh=function(g){function c(b,d){if(g.call(this),(b instanceof a.window.HTMLElement||d)&&(b=a.extend({element:b},d)),a.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=b&&b.anchor||"center",this._color=b&&b.color||"#3FB1CE",this._scale=b&&b.scale||1,this._draggable=b&&b.draggable||!1,this._clickTolerance=b&&b.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=b&&b.rotation||0,this._rotationAlignment=b&&b.rotationAlignment||"auto",this._pitchAlignment=b&&b.pitchAlignment&&b.pitchAlignment!=="auto"?b.pitchAlignment:this._rotationAlignment,!b||!b.element){this._defaultMarker=!0,this._element=l.create("div"),this._element.setAttribute("aria-label","Map marker");var w=l.createNS("http://www.w3.org/2000/svg","svg"),L=41,R=27;w.setAttributeNS(null,"display","block"),w.setAttributeNS(null,"height",L+"px"),w.setAttributeNS(null,"width",R+"px"),w.setAttributeNS(null,"viewBox","0 0 "+R+" "+L);var G=l.createNS("http://www.w3.org/2000/svg","g");G.setAttributeNS(null,"stroke","none"),G.setAttributeNS(null,"stroke-width","1"),G.setAttributeNS(null,"fill","none"),G.setAttributeNS(null,"fill-rule","evenodd");var K=l.createNS("http://www.w3.org/2000/svg","g");K.setAttributeNS(null,"fill-rule","nonzero");var re=l.createNS("http://www.w3.org/2000/svg","g");re.setAttributeNS(null,"transform","translate(3.0, 29.0)"),re.setAttributeNS(null,"fill","#000000");for(var ue=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}],be=0,xe=ue;be=w}this._isDragging&&(this._pos=d.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new a.Event("dragstart"))),this.fire(new a.Event("drag")))},c.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new a.Event("dragend")),this._state="inactive"},c.prototype._addDragHandler=function(d){this._element.contains(d.originalEvent.target)&&(d.preventDefault(),this._positionDelta=d.point.sub(this._pos).add(this._offset),this._pointerdownPos=d.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},c.prototype.setDraggable=function(d){return this._draggable=!!d,this._map&&(d?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},c.prototype.isDraggable=function(){return this._draggable},c.prototype.setRotation=function(d){return this._rotation=d||0,this._update(),this},c.prototype.getRotation=function(){return this._rotation},c.prototype.setRotationAlignment=function(d){return this._rotationAlignment=d||"auto",this._update(),this},c.prototype.getRotationAlignment=function(){return this._rotationAlignment},c.prototype.setPitchAlignment=function(d){return this._pitchAlignment=d&&d!=="auto"?d:this._rotationAlignment,this._update(),this},c.prototype.getPitchAlignment=function(){return this._pitchAlignment},c}(a.Evented),oy={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},xf;function Yv(g){xf!==void 0?g(xf):a.window.navigator.permissions!==void 0?a.window.navigator.permissions.query({name:"geolocation"}).then(function(c){xf=c.state!=="denied",g(xf)}):(xf=!!a.window.navigator.geolocation,g(xf))}var uh=0,ic=!1,_1=function(g){function c(b){g.call(this),this.options=a.extend({},oy,b),a.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c,c.prototype.onAdd=function(d){return this._map=d,this._container=l.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),Yv(this._setupUI),this._container},c.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(a.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),l.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,uh=0,ic=!1},c.prototype._isOutOfMapMaxBounds=function(d){var w=this._map.getMaxBounds(),L=d.coords;return w&&(L.longitudew.getEast()||L.latitudew.getNorth())},c.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break}},c.prototype._onSuccess=function(d){if(this._map){if(this._isOutOfMapMaxBounds(d)){this._setErrorState(),this.fire(new a.Event("outofmaxbounds",d)),this._updateMarker(),this._finish();return}if(this.options.trackUserLocation)switch(this._lastKnownPosition=d,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(d),(!this.options.trackUserLocation||this._watchState==="ACTIVE_LOCK")&&this._updateCamera(d),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new a.Event("geolocate",d)),this._finish()}},c.prototype._updateCamera=function(d){var w=new a.LngLat(d.coords.longitude,d.coords.latitude),L=d.coords.accuracy,R=this._map.getBearing(),G=a.extend({bearing:R},this.options.fitBoundsOptions);this._map.fitBounds(w.toBounds(L),G,{geolocateSource:!0})},c.prototype._updateMarker=function(d){if(d){var w=new a.LngLat(d.coords.longitude,d.coords.latitude);this._accuracyCircleMarker.setLngLat(w).addTo(this._map),this._userLocationDotMarker.setLngLat(w).addTo(this._map),this._accuracy=d.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},c.prototype._updateCircleRadius=function(){var d=this._map._container.clientHeight/2,w=this._map.unproject([0,d]),L=this._map.unproject([1,d]),R=w.distanceTo(L),G=Math.ceil(2*this._accuracy/R);this._circleElement.style.width=G+"px",this._circleElement.style.height=G+"px"},c.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},c.prototype._onError=function(d){if(this._map){if(this.options.trackUserLocation)if(d.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var w=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=w,this._geolocateButton.setAttribute("aria-label",w),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(d.code===3&&ic)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new a.Event("error",d)),this._finish()}},c.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},c.prototype._setupUI=function(d){var w=this;if(this._container.addEventListener("contextmenu",function(G){return G.preventDefault()}),this._geolocateButton=l.create("button","mapboxgl-ctrl-geolocate",this._container),l.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",d===!1){a.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var L=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=L,this._geolocateButton.setAttribute("aria-label",L)}else{var R=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=R,this._geolocateButton.setAttribute("aria-label",R)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=l.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new lh(this._dotElement),this._circleElement=l.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new lh({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",function(G){var K=G.originalEvent&&G.originalEvent.type==="resize";!G.geolocateSource&&w._watchState==="ACTIVE_LOCK"&&!K&&(w._watchState="BACKGROUND",w._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),w._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),w.fire(new a.Event("trackuserlocationend")))})},c.prototype.trigger=function(){if(!this._setup)return a.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new a.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":uh--,ic=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new a.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new a.Event("trackuserlocationstart"));break}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error");break}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),uh++;var d;uh>1?(d={maximumAge:6e5,timeout:0},ic=!0):(d=this.options.positionOptions,ic=!1),this._geolocationWatchID=a.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,d)}}else a.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},c.prototype._clearWatch=function(){a.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},c}(a.Evented),sy={maxWidth:100,unit:"metric"},nc=function(c){this.options=a.extend({},sy,c),a.bindAll(["_onMove","setUnit"],this)};nc.prototype.getDefaultPosition=function(){return"bottom-left"},nc.prototype._onMove=function(){ly(this._map,this._container,this.options)},nc.prototype.onAdd=function(c){return this._map=c,this._container=l.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",c.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},nc.prototype.onRemove=function(){l.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},nc.prototype.setUnit=function(c){this.options.unit=c,ly(this._map,this._container,this.options)};function ly(g,c,b){var d=b&&b.maxWidth||100,w=g._container.clientHeight/2,L=g.unproject([0,w]),R=g.unproject([d,w]),G=L.distanceTo(R);if(b&&b.unit==="imperial"){var K=3.2808*G;if(K>5280){var re=K/5280;fh(c,d,re,g._getUIString("ScaleControl.Miles"))}else fh(c,d,K,g._getUIString("ScaleControl.Feet"))}else if(b&&b.unit==="nautical"){var ue=G/1852;fh(c,d,ue,g._getUIString("ScaleControl.NauticalMiles"))}else G>=1e3?fh(c,d,G/1e3,g._getUIString("ScaleControl.Kilometers")):fh(c,d,G,g._getUIString("ScaleControl.Meters"))}function fh(g,c,b,d){var w=b1(b),L=w/b;g.style.width=c*L+"px",g.innerHTML=w+" "+d}function x1(g){var c=Math.pow(10,Math.ceil(-Math.log(g)/Math.LN10));return Math.round(g*c)/c}function b1(g){var c=Math.pow(10,(""+Math.floor(g)).length-1),b=g/c;return b=b>=10?10:b>=5?5:b>=3?3:b>=2?2:b>=1?1:x1(b),c*b}var Qs=function(c){this._fullscreen=!1,c&&c.container&&(c.container instanceof a.window.HTMLElement?this._container=c.container:a.warnOnce("Full screen control 'container' must be a DOM element.")),a.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in a.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in a.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in a.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in a.window.document&&(this._fullscreenchange="MSFullscreenChange")};Qs.prototype.onAdd=function(c){return this._map=c,this._container||(this._container=this._map.getContainer()),this._controlContainer=l.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",a.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},Qs.prototype.onRemove=function(){l.remove(this._controlContainer),this._map=null,a.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},Qs.prototype._checkFullscreenSupport=function(){return!!(a.window.document.fullscreenEnabled||a.window.document.mozFullScreenEnabled||a.window.document.msFullscreenEnabled||a.window.document.webkitFullscreenEnabled)},Qs.prototype._setupUI=function(){var c=this._fullscreenButton=l.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);l.create("span","mapboxgl-ctrl-icon",c).setAttribute("aria-hidden",!0),c.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),a.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},Qs.prototype._updateTitle=function(){var c=this._getTitle();this._fullscreenButton.setAttribute("aria-label",c),this._fullscreenButton.title=c},Qs.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},Qs.prototype._isFullscreen=function(){return this._fullscreen},Qs.prototype._changeIcon=function(){var c=a.window.document.fullscreenElement||a.window.document.mozFullScreenElement||a.window.document.webkitFullscreenElement||a.window.document.msFullscreenElement;c===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},Qs.prototype._onClickFullscreen=function(){this._isFullscreen()?a.window.document.exitFullscreen?a.window.document.exitFullscreen():a.window.document.mozCancelFullScreen?a.window.document.mozCancelFullScreen():a.window.document.msExitFullscreen?a.window.document.msExitFullscreen():a.window.document.webkitCancelFullScreen&&a.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var w1={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},T1=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),f3=function(g){function c(b){g.call(this),this.options=a.extend(Object.create(w1),b),a.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c,c.prototype.addTo=function(d){return this._map&&this.remove(),this._map=d,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new a.Event("open")),this},c.prototype.isOpen=function(){return!!this._map},c.prototype.remove=function(){return this._content&&l.remove(this._content),this._container&&(l.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new a.Event("close")),this},c.prototype.getLngLat=function(){return this._lngLat},c.prototype.setLngLat=function(d){return this._lngLat=a.LngLat.convert(d),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},c.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this},c.prototype.getElement=function(){return this._container},c.prototype.setText=function(d){return this.setDOMContent(a.window.document.createTextNode(d))},c.prototype.setHTML=function(d){var w=a.window.document.createDocumentFragment(),L=a.window.document.createElement("body"),R;for(L.innerHTML=d;R=L.firstChild,!!R;)w.appendChild(R);return this.setDOMContent(w)},c.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},c.prototype.setMaxWidth=function(d){return this.options.maxWidth=d,this._update(),this},c.prototype.setDOMContent=function(d){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=l.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(d),this._createCloseButton(),this._update(),this._focusFirstElement(),this},c.prototype.addClassName=function(d){this._container&&this._container.classList.add(d)},c.prototype.removeClassName=function(d){this._container&&this._container.classList.remove(d)},c.prototype.setOffset=function(d){return this.options.offset=d,this._update(),this},c.prototype.toggleClassName=function(d){if(this._container)return this._container.classList.toggle(d)},c.prototype._createCloseButton=function(){this.options.closeButton&&(this._closeButton=l.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))},c.prototype._onMouseUp=function(d){this._update(d.point)},c.prototype._onMouseMove=function(d){this._update(d.point)},c.prototype._onDrag=function(d){this._update(d.point)},c.prototype._update=function(d){var w=this,L=this._lngLat||this._trackPointer;if(!(!this._map||!L||!this._content)&&(this._container||(this._container=l.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=l.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function(Re){return w._container.classList.add(Re)}),this._trackPointer&&this._container.classList.add("mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=Su(this._lngLat,this._pos,this._map.transform)),!(this._trackPointer&&!d))){var R=this._pos=this._trackPointer&&d?d:this._map.project(this._lngLat),G=this.options.anchor,K=A1(this.options.offset);if(!G){var re=this._container.offsetWidth,ue=this._container.offsetHeight,be;R.y+K.bottom.ythis._map.transform.height-ue?be=["bottom"]:be=[],R.xthis._map.transform.width-re/2&&be.push("right"),be.length===0?G="bottom":G=be.join("-")}var xe=R.add(K[G]).round();l.setTransform(this._container,Zv[G]+" translate("+xe.x+"px,"+xe.y+"px)"),qp(this._container,G,"popup")}},c.prototype._focusFirstElement=function(){if(!(!this.options.focusAfterOpen||!this._container)){var d=this._container.querySelector(T1);d&&d.focus()}},c.prototype._onClose=function(){this.remove()},c}(a.Evented);function A1(g){if(g)if(typeof g=="number"){var c=Math.round(Math.sqrt(.5*Math.pow(g,2)));return{center:new a.Point(0,0),top:new a.Point(0,g),"top-left":new a.Point(c,c),"top-right":new a.Point(-c,c),bottom:new a.Point(0,-g),"bottom-left":new a.Point(c,-c),"bottom-right":new a.Point(-c,-c),left:new a.Point(g,0),right:new a.Point(-g,0)}}else if(g instanceof a.Point||Array.isArray(g)){var b=a.Point.convert(g);return{center:b,top:b,"top-left":b,"top-right":b,bottom:b,"bottom-left":b,"bottom-right":b,left:b,right:b}}else return{center:a.Point.convert(g.center||[0,0]),top:a.Point.convert(g.top||[0,0]),"top-left":a.Point.convert(g["top-left"]||[0,0]),"top-right":a.Point.convert(g["top-right"]||[0,0]),bottom:a.Point.convert(g.bottom||[0,0]),"bottom-left":a.Point.convert(g["bottom-left"]||[0,0]),"bottom-right":a.Point.convert(g["bottom-right"]||[0,0]),left:a.Point.convert(g.left||[0,0]),right:a.Point.convert(g.right||[0,0])};else return A1(new a.Point(0,0))}var Tn={version:a.version,supported:s,setRTLTextPlugin:a.setRTLTextPlugin,getRTLTextPluginStatus:a.getRTLTextPluginStatus,Map:ny,NavigationControl:Mu,GeolocateControl:_1,AttributionControl:Ta,ScaleControl:nc,FullscreenControl:Qs,Popup:f3,Marker:lh,Style:Ts,LngLat:a.LngLat,LngLatBounds:a.LngLatBounds,Point:a.Point,MercatorCoordinate:a.MercatorCoordinate,Evented:a.Evented,config:a.config,prewarm:Or,clearPrewarmedResources:ca,get accessToken(){return a.config.ACCESS_TOKEN},set accessToken(g){a.config.ACCESS_TOKEN=g},get baseApiUrl(){return a.config.API_URL},set baseApiUrl(g){a.config.API_URL=g},get workerCount(){return tr.workerCount},set workerCount(g){tr.workerCount=g},get maxParallelImageRequests(){return a.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(g){a.config.MAX_PARALLEL_IMAGE_REQUESTS=g},clearStorage:function(c){a.clearTileCache(c)},workerUrl:""};return Tn}),r})});var CH=pe((Pbe,kH)=>{kH.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xE7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xE9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xE9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xE3)o.?tom(e|\xE9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}});var Hb=pe(ki=>{"use strict";Object.defineProperty(ki,"__esModule",{value:!0});var Zs=63710088e-1,_A={centimeters:Zs*100,centimetres:Zs*100,degrees:360/(2*Math.PI),feet:Zs*3.28084,inches:Zs*39.37,kilometers:Zs/1e3,kilometres:Zs/1e3,meters:Zs,metres:Zs,miles:Zs/1609.344,millimeters:Zs*1e3,millimetres:Zs*1e3,nauticalmiles:Zs/1852,radians:1,yards:Zs*1.0936},gA={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,nauticalmiles:29155334959812285e-23,millimeters:1e6,millimetres:1e6,yards:1.195990046};function tv(e,t,r={}){let i={type:"Feature"};return(r.id===0||r.id)&&(i.id=r.id),r.bbox&&(i.bbox=r.bbox),i.properties=t||{},i.geometry=e,i}function Bde(e,t,r={}){switch(e){case"Point":return xA(t).geometry;case"LineString":return wA(t).geometry;case"Polygon":return bA(t).geometry;case"MultiPoint":return LH(t).geometry;case"MultiLineString":return EH(t).geometry;case"MultiPolygon":return DH(t).geometry;default:throw new Error(e+" is invalid")}}function xA(e,t,r={}){if(!e)throw new Error("coordinates is required");if(!Array.isArray(e))throw new Error("coordinates must be an Array");if(e.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!Ub(e[0])||!Ub(e[1]))throw new Error("coordinates must contain numbers");return tv({type:"Point",coordinates:e},t,r)}function Ode(e,t,r={}){return Vb(e.map(i=>xA(i,t)),r)}function bA(e,t,r={}){for(let a of e){if(a.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(a[a.length-1].length!==a[0].length)throw new Error("First and last Position are not equivalent.");for(let s=0;sbA(i,t)),r)}function wA(e,t,r={}){if(e.length<2)throw new Error("coordinates must be an array of two or more positions");return tv({type:"LineString",coordinates:e},t,r)}function Vde(e,t,r={}){return Vb(e.map(i=>wA(i,t)),r)}function Vb(e,t={}){let r={type:"FeatureCollection"};return t.id&&(r.id=t.id),t.bbox&&(r.bbox=t.bbox),r.features=e,r}function EH(e,t,r={}){return tv({type:"MultiLineString",coordinates:e},t,r)}function LH(e,t,r={}){return tv({type:"MultiPoint",coordinates:e},t,r)}function DH(e,t,r={}){return tv({type:"MultiPolygon",coordinates:e},t,r)}function Hde(e,t,r={}){return tv({type:"GeometryCollection",geometries:e},t,r)}function Gde(e,t=0){if(t&&!(t>=0))throw new Error("precision must be a positive number");let r=Math.pow(10,t||0);return Math.round(e*r)/r}function PH(e,t="kilometers"){let r=_A[t];if(!r)throw new Error(t+" units is invalid");return e*r}function TA(e,t="kilometers"){let r=_A[t];if(!r)throw new Error(t+" units is invalid");return e/r}function Zde(e,t){return zH(TA(e,t))}function Yde(e){let t=e%360;return t<0&&(t+=360),t}function Wde(e){return e=e%360,e>180?e-360:e<-180?e+360:e}function zH(e){return e%(2*Math.PI)*180/Math.PI}function Xde(e){return e%360*Math.PI/180}function jde(e,t="kilometers",r="kilometers"){if(!(e>=0))throw new Error("length must be a positive number");return PH(TA(e,t),r)}function Jde(e,t="meters",r="kilometers"){if(!(e>=0))throw new Error("area must be a positive number");let i=gA[t];if(!i)throw new Error("invalid original units");let a=gA[r];if(!a)throw new Error("invalid final units");return e/i*a}function Ub(e){return!isNaN(e)&&e!==null&&!Array.isArray(e)}function Kde(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Qde(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(e.length!==4&&e.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach(t=>{if(!Ub(t))throw new Error("bbox must only contain numbers")})}function $de(e){if(!e)throw new Error("id is required");if(["string","number"].indexOf(typeof e)===-1)throw new Error("id must be a number or a string")}ki.areaFactors=gA;ki.azimuthToBearing=Wde;ki.bearingToAzimuth=Yde;ki.convertArea=Jde;ki.convertLength=jde;ki.degreesToRadians=Xde;ki.earthRadius=Zs;ki.factors=_A;ki.feature=tv;ki.featureCollection=Vb;ki.geometry=Bde;ki.geometryCollection=Hde;ki.isNumber=Ub;ki.isObject=Kde;ki.lengthToDegrees=Zde;ki.lengthToRadians=TA;ki.lineString=wA;ki.lineStrings=Vde;ki.multiLineString=EH;ki.multiPoint=LH;ki.multiPolygon=DH;ki.point=xA;ki.points=Ode;ki.polygon=bA;ki.polygons=Ude;ki.radiansToDegrees=zH;ki.radiansToLength=PH;ki.round=Gde;ki.validateBBox=Qde;ki.validateId=$de});var Zb=pe(vo=>{"use strict";Object.defineProperty(vo,"__esModule",{value:!0});var us=Hb();function v1(e,t,r){if(e!==null)for(var i,a,s,l,f,h,v,m=0,_=0,T,S=e.type,C=S==="FeatureCollection",E=S==="Feature",D=C?e.features.length:1,z=0;zh||C>v||E>m){f=_,h=i,v=C,m=E,s=0;return}var D=us.lineString.call(void 0,[f,_],r.properties);if(t(D,i,a,E,s)===!1)return!1;s++,f=_})===!1)return!1}}})}function ope(e,t,r){var i=r,a=!1;return FH(e,function(s,l,f,h,v){a===!1&&r===void 0?i=s:i=t(i,s,l,f,h,v),a=!0}),i}function qH(e,t){if(!e)throw new Error("geojson is required");Gb(e,function(r,i,a){if(r.geometry!==null){var s=r.geometry.type,l=r.geometry.coordinates;switch(s){case"LineString":if(t(r,i,a,0,0)===!1)return!1;break;case"Polygon":for(var f=0;f{"use strict";Object.defineProperty(Yb,"__esModule",{value:!0});var NH=Hb(),fpe=Zb();function UH(e){return fpe.geomReduce.call(void 0,e,(t,r)=>t+cpe(r),0)}function cpe(e){let t=0,r;switch(e.type){case"Polygon":return BH(e.coordinates);case"MultiPolygon":for(r=0;r0){t+=Math.abs(OH(e[0]));for(let r=1;r=t?(i+2)%t:i+2],f=a[0]*MA,h=s[1]*MA,v=l[0]*MA;r+=(v-f)*Math.sin(h),i++}return r*hpe}var vpe=UH;Yb.area=UH;Yb.default=vpe});var GH=pe(Wb=>{"use strict";Object.defineProperty(Wb,"__esModule",{value:!0});var dpe=Hb(),ppe=Zb();function HH(e,t={}){let r=0,i=0,a=0;return ppe.coordEach.call(void 0,e,function(s){r+=s[0],i+=s[1],a++},!0),dpe.point.call(void 0,[r/a,i/a],t.properties)}var mpe=HH;Wb.centroid=HH;Wb.default=mpe});var YH=pe(Xb=>{"use strict";Object.defineProperty(Xb,"__esModule",{value:!0});var ype=Zb();function ZH(e,t={}){if(e.bbox!=null&&t.recompute!==!0)return e.bbox;let r=[1/0,1/0,-1/0,-1/0];return ype.coordEach.call(void 0,e,i=>{r[0]>i[0]&&(r[0]=i[0]),r[1]>i[1]&&(r[1]=i[1]),r[2]{"use strict";var _pe=ja(),jH=CH(),{area:xpe}=VH(),{centroid:bpe}=GH(),{bbox:wpe}=YH(),WH=x_(),Am=Th(),Tpe=cc(),Ape=My(),jb=cx(),XH=Object.keys(jH),Mpe={"ISO-3":WH,"USA-states":WH,"country names":Spe};function Spe(e){for(var t=0;t0&&m[_+1][0]<0)return _;return null}switch(i==="RUS"||i==="FJI"?s=function(m){var _;if(v(m)===null)_=m;else for(_=new Array(m.length),h=0;h_?T[S++]=[m[h][0]+360,m[h][1]]:h===_?(T[S++]=m[h],T[S++]=[m[h][0],-90]):T[S++]=m[h];var C=jb.tester(T);C.pts.pop(),a.push(C)}:s=function(m){a.push(jb.tester(m))},t.type){case"MultiPolygon":for(l=0;l0?C.properties.ct=Lpe(C):C.properties.ct=[NaN,NaN],T.fIn=m,T.fOut=C,a.push(C)}else Am.log(["Location",T.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete i[_]}switch(r.type){case"FeatureCollection":var h=r.features;for(s=0;sa&&(a=f,r=l)}else r=t;return bpe(r).geometry.coordinates}function Dpe(e){var t=window.PlotlyGeoAssets||{},r=[];function i(h){return new Promise(function(v,m){_pe.json(h,function(_,T){if(_){delete t[h];var S=_.status===404?'GeoJSON at URL "'+h+'" does not exist.':"Unexpected error while fetching from "+h;return m(new Error(S))}return t[h]=T,v(T)})})}function a(h){return new Promise(function(v,m){var _=0,T=setInterval(function(){if(t[h]&&t[h]!=="pending")return clearInterval(T),v(t[h]);if(_>100)return clearInterval(T),m("Unexpected error while fetching from "+h);_++},50)})}for(var s=0;s{"use strict";var Zd=Bt(),zpe=co().sanitizeHTML,Ipe=cA(),QH=zc();function $H(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=QH.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var fu=$H.prototype;fu.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=Jb(t)};fu.needsNewImage=function(e){var t=this.subplot.map;return t.getSource(this.idSource)&&this.sourceType==="image"&&e.sourcetype==="image"&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))};fu.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type};fu.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]};fu.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]};fu.updateImage=function(e){var t=this.subplot.map;t.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var r=this.findFollowingMapboxLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)};fu.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,!!Jb(e)){var r=Rpe(e);t.addSource(this.idSource,r)}};fu.findFollowingMapboxLayerId=function(e){if(e==="traces")for(var t=this.subplot.getMapLayers(),r=0;r0){for(var r=0;r0}function eG(e){var t={},r={};switch(e.type){case"circle":Zd.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":Zd.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":Zd.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var i=e.symbol,a=Ipe(i.textposition,i.iconsize);Zd.extendFlat(t,{"icon-image":i.icon+"-15","icon-size":i.iconsize/10,"text-field":i.text,"text-size":i.textfont.size,"text-anchor":a.anchor,"text-offset":a.offset,"symbol-placement":i.placement}),Zd.extendFlat(r,{"icon-color":e.color,"text-color":i.textfont.color,"text-opacity":e.opacity});break;case"raster":Zd.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity});break}return{layout:t,paint:r}}function Rpe(e){var t=e.sourcetype,r=e.source,i={type:t},a;return t==="geojson"?a="data":t==="vector"?a=typeof r=="string"?"url":"tiles":t==="raster"?(a="tiles",i.tileSize=256):t==="image"&&(a="url",i.coordinates=e.coordinates),i[a]=r,e.sourceattribution&&(i.attribution=zpe(e.sourceattribution)),i}tG.exports=function(t,r,i){var a=new $H(t,r);return a.update(i),a}});var cG=pe((Obe,fG)=>{"use strict";var kA=yA(),CA=Bt(),oG=SA(),aG=sa(),Fpe=Xi(),qpe=Xl(),Kb=Rf(),sG=Cd(),Npe=sG.drawMode,Bpe=sG.selectMode,Ope=Nf().prepSelect,Upe=Nf().clearOutline,Vpe=Nf().clearSelectionsCache,Hpe=Nf().selectOnClick,rv=zc(),Gpe=rG();function lG(e,t){this.id=t,this.gd=e;var r=e._fullLayout,i=e._context;this.container=r._glcontainer.node(),this.isStatic=i.staticPlot,this.uid=r._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var Vn=lG.prototype;Vn.plot=function(e,t,r){var i=this,a=t[i.id];i.map&&a.accesstoken!==i.accessToken&&(i.map.remove(),i.map=null,i.styleObj=null,i.traceHash={},i.layerList=[]);var s;i.map?s=new Promise(function(l,f){i.updateMap(e,t,l,f)}):s=new Promise(function(l,f){i.createMap(e,t,l,f)}),r.push(s)};Vn.createMap=function(e,t,r,i){var a=this,s=t[a.id],l=a.styleObj=uG(s.style,t);a.accessToken=s.accesstoken;var f=s.bounds,h=f?[[f.west,f.south],[f.east,f.north]]:null,v=a.map=new kA.Map({container:a.div,style:l.style,center:EA(s.center),zoom:s.zoom,bearing:s.bearing,pitch:s.pitch,maxBounds:h,interactive:!a.isStatic,preserveDrawingBuffer:a.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new kA.AttributionControl({compact:!0}));v._canvas.style.left="0px",v._canvas.style.top="0px",a.rejectOnError(i),a.isStatic||a.initFx(e,t);var m=[];m.push(new Promise(function(_){v.once("load",_)})),m=m.concat(oG.fetchTraceGeoData(e)),Promise.all(m).then(function(){a.fillBelowLookup(e,t),a.updateData(e),a.updateLayout(t),a.resolveOnRender(r)}).catch(i)};Vn.updateMap=function(e,t,r,i){var a=this,s=a.map,l=t[this.id];a.rejectOnError(i);var f=[],h=uG(l.style,t);JSON.stringify(a.styleObj)!==JSON.stringify(h)&&(a.styleObj=h,s.setStyle(h.style),a.traceHash={},f.push(new Promise(function(v){s.once("styledata",v)}))),f=f.concat(oG.fetchTraceGeoData(e)),Promise.all(f).then(function(){a.fillBelowLookup(e,t),a.updateData(e),a.updateLayout(t),a.resolveOnRender(r)}).catch(i)};Vn.fillBelowLookup=function(e,t){var r=t[this.id],i=r.layers,a,s,l=this.belowLookup={},f=!1;for(a=0;a1)for(a=0;a-1&&Hpe(h.originalEvent,i,[r.xaxis],[r.yaxis],r.id,f),v.indexOf("event")>-1&&Kb.click(i,h.originalEvent)}}};Vn.updateFx=function(e){var t=this,r=t.map,i=t.gd;if(t.isStatic)return;function a(h){var v=t.map.unproject(h);return[v.lng,v.lat]}var s=e.dragmode,l;l=function(h,v){if(v.isRect){var m=h.range={};m[t.id]=[a([v.xmin,v.ymin]),a([v.xmax,v.ymax])]}else{var _=h.lassoPoints={};_[t.id]=v.map(a)}};var f=t.dragOptions;t.dragOptions=CA.extendDeep(f||{},{dragmode:e.dragmode,element:t.div,gd:i,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:l},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),Bpe(s)||Npe(s)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(h,v,m){Ope(h,v,m,t.dragOptions,s)},qpe.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))};Vn.updateFramework=function(e){var t=e[this.id].domain,r=e._size,i=this.div.style;i.width=r.w*(t.x[1]-t.x[0])+"px",i.height=r.h*(t.y[1]-t.y[0])+"px",i.left=r.l+t.x[0]*r.w+"px",i.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])};Vn.updateLayers=function(e){var t=e[this.id],r=t.layers,i=this.layerList,a;if(r.length!==i.length){for(a=0;a{"use strict";var Zpe=Bt(),Ype=Ii(),Wpe=Cb().defaults;hG.exports=function(t,r,i,a){var s=a.type,l=a.attributes,f=a.handleDefaults,h=a.partition||"x",v=r._subplots[s],m=v.length,_=m&&v[0].replace(/\d+$/,""),T,S;function C(B,q){return Zpe.coerce(T,S,l,B,q)}for(var E=0;E{"use strict";var LA=Bt(),Xpe=vG(),jpe=Yl(),dG=l1();pG.exports=function(t,r,i){Xpe(t,r,i,{type:"mapbox",attributes:dG,handleDefaults:Jpe,partition:"y",accessToken:r._mapboxAccessToken})};function Jpe(e,t,r,i){r("accesstoken",i.accessToken),r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch");var a=r("bounds.west"),s=r("bounds.east"),l=r("bounds.south"),f=r("bounds.north");(a===void 0||s===void 0||l===void 0||f===void 0)&&delete t.bounds,jpe(e,t,{name:"layers",handleItemDefaults:Kpe}),t._input=e}function Kpe(e,t){function r(h,v){return LA.coerce(e,t,dG.layers,h,v)}var i=r("visible");if(i){var a=r("sourcetype"),s=a==="raster"||a==="image";r("source"),r("sourceattribution"),a==="vector"&&r("sourcelayer"),a==="image"&&r("coordinates");var l;s&&(l="raster");var f=r("type",l);s&&f!=="raster"&&(f=t.type="raster",LA.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),f==="circle"&&r("circle.radius"),f==="line"&&(r("line.width"),r("line.dash")),f==="fill"&&r("fill.outlinecolor"),f==="symbol"&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),LA.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var Qb=pe(Ys=>{"use strict";var yG=yA(),ju=Bt(),DA=ju.strTranslate,Qpe=ju.strScale,$pe=B_().getSubplotCalcData,e0e=zh(),t0e=ja(),gG=xi(),r0e=co(),a0e=cG(),av="mapbox",Hf=Ys.constants=zc();Ys.name=av;Ys.attr="subplot";Ys.idRoot=av;Ys.idRegex=Ys.attrRegex=ju.counterRegex(av);var i0e=["mapbox subplots and traces are deprecated!","Please consider switching to `map` subplots and traces.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");Ys.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}};Ys.layoutAttributes=l1();Ys.supplyLayoutDefaults=mG();var _G=!0;Ys.plot=function(t){_G&&(_G=!1,ju.warn(i0e));var r=t._fullLayout,i=t.calcdata,a=r._subplots[av];if(yG.version!==Hf.requiredVersion)throw new Error(Hf.wrongVersionErrorMsg);var s=n0e(t,a);yG.accessToken=s;for(var l=0;lz/2){var B=S.split("|").join("
");E.text(B).attr("data-unformatted",B).call(r0e.convertToTspans,e),D=gG.bBox(E.node())}E.attr("transform",DA(-3,-D.height+8)),C.insert("rect",".static-attribution").attr({x:-D.width-6,y:-D.height-3,width:D.width+6,height:D.height+3,fill:"rgba(255, 255, 255, 0.75)"});var q=1;D.width+6>z&&(q=z/(D.width+6));var I=[i.l+i.w*l.x[1],i.t+i.h*(1-l.y[0])];C.attr("transform",DA(I[0],I[1])+Qpe(q))}};function n0e(e,t){var r=e._fullLayout,i=e._context;if(i.mapboxAccessToken==="")return"";for(var a=[],s=[],l=!1,f=!1,h=0;h1&&ju.warn(Hf.multipleTokensErrorMsg),a[0]):(s.length&&ju.log(["Listed mapbox access token(s)",s.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}function xG(e){return typeof e=="string"&&(Hf.styleValuesMapbox.indexOf(e)!==-1||e.indexOf("mapbox://")===0||e.indexOf("stamen")===0)}Ys.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[av],i=0;i{"use strict";var Gbe=["*scattermapbox* trace is deprecated!","Please consider switching to the *scattermap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");bG.exports={attributes:Ib(),supplyDefaults:tH(),colorbar:Q6(),formatLabels:uA(),calc:lH(),plot:xH(),hoverPoints:Ob().hoverPoints,eventData:AH(),selectPoints:SH(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermapbox",basePlotModule:Qb(),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}});var AG=pe((Ybe,TG)=>{"use strict";TG.exports=wG()});var PA=pe((Wbe,kG)=>{"use strict";var{hovertemplateAttrs:o0e,templatefallbackAttrs:s0e}=Mf(),nv=nA(),l0e=xc(),MG=ys(),u0e=Tf().defaultLine,iv=mn().extendFlat,SG=nv.marker.line;kG.exports=iv({locations:{valType:"data_array",editType:"calc"},locationmode:nv.locationmode,z:{valType:"data_array",editType:"calc"},geojson:iv({},nv.geojson,{}),featureidkey:nv.featureidkey,text:iv({},nv.text,{}),hovertext:iv({},nv.hovertext,{}),marker:{line:{color:iv({},SG.color,{dflt:u0e}),width:iv({},SG.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:nv.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:nv.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:iv({},MG.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:o0e(),hovertemplatefallback:s0e(),showlegend:iv({},MG.showlegend,{dflt:!1})},l0e("",{cLetter:"z",editTypeOverride:"calc"}))});var zA=pe((Xbe,CG)=>{"use strict";var Ic=PA(),f0e=xc(),{hovertemplateAttrs:c0e,templatefallbackAttrs:h0e}=Mf(),v0e=ys(),ov=mn().extendFlat;CG.exports=ov({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:ov({},Ic.featureidkey,{}),below:{valType:"string",editType:"plot"},text:Ic.text,hovertext:Ic.hovertext,marker:{line:{color:ov({},Ic.marker.line.color,{editType:"plot"}),width:ov({},Ic.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:ov({},Ic.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:ov({},Ic.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:ov({},Ic.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:Ic.hoverinfo,hovertemplate:c0e({},{keys:["properties"]}),hovertemplatefallback:h0e(),showlegend:ov({},v0e.showlegend,{dflt:!1})},f0e("",{cLetter:"z",editTypeOverride:"calc"}))});var LG=pe((jbe,EG)=>{"use strict";var d1=Bt(),d0e=vd(),p0e=zA();EG.exports=function(t,r,i,a){function s(m,_){return d1.coerce(t,r,p0e,m,_)}var l=s("locations"),f=s("z"),h=s("geojson");if(!d1.isArrayOrTypedArray(l)||!l.length||!d1.isArrayOrTypedArray(f)||!f.length||!(typeof h=="string"&&h!==""||d1.isPlainObject(h))){r.visible=!1;return}s("featureidkey"),r._length=Math.min(l.length,f.length),s("below"),s("text"),s("hovertext"),s("hovertemplate"),s("hovertemplatefallback");var v=s("marker.line.width");v&&s("marker.line.color"),s("marker.opacity"),d0e(t,r,a,s,{prefix:"",cLetter:"z"}),d1.coerceSelectionMarkerOpacity(r,s)}});var IA=pe((Jbe,DG)=>{"use strict";DG.exports={min:"zmin",max:"zmax"}});var RG=pe((Kbe,IG)=>{"use strict";var PG=Da(),m0e=Zi().BADNUM,y0e=Xy(),g0e=Hg(),_0e=Wx();function zG(e){return e&&typeof e=="string"}IG.exports=function(t,r){var i=r._length,a=new Array(i),s;r.geojson?s=function(m){return zG(m)||PG(m)}:s=zG;for(var l=0;l{"use strict";var x0e=Da(),Rc=Bt(),b0e=P0(),w0e=xi(),T0e=Rb().makeBlank,FG=SA();function A0e(e){var t=e[0].trace,r=t.visible===!0&&t._length!==0,i={layout:{visibility:"none"},paint:{}},a={layout:{visibility:"none"},paint:{}},s=t._opts={fill:i,line:a,geojson:T0e()};if(!r)return s;var l=FG.extractTraceFeature(e);if(!l)return s;var f=b0e.makeColorScaleFuncFromTrace(t),h=t.marker,v=h.line||{},m;Rc.isArrayOrTypedArray(h.opacity)&&(m=function(B){var q=B.mo;return x0e(q)?+Rc.constrain(q,0,1):0});var _;Rc.isArrayOrTypedArray(v.color)&&(_=function(B){return B.mlc});var T;Rc.isArrayOrTypedArray(v.width)&&(T=function(B){return B.mlw});for(var S=0;S{"use strict";var OG=RA().convert,M0e=RA().convertOnSelect,BG=zc().traceLayerPrefix;function UG(e,t){this.type="choroplethmapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",BG+t+"-fill"],["line",BG+t+"-line"]],this.below=null}var Mm=UG.prototype;Mm.update=function(e){this._update(OG(e)),e[0].trace._glTrace=this};Mm.updateOnSelect=function(e){this._update(M0e(e))};Mm._update=function(e){var t=this.subplot,r=this.layerList,i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(e.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(e,i),this.below=i);for(var a=0;a=0;r--)e.removeLayer(t[r][1])};Mm.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};VG.exports=function(t,r){var i=r[0].trace,a=new UG(t,i.uid),s=a.sourceId,l=OG(r),f=a.below=t.belowLookup["trace-"+i.uid];return t.map.addSource(s,{type:"geojson",data:l.geojson}),a._addLayers(l,f),r[0].trace._glTrace=a,a}});var ZG=pe((e3e,GG)=>{"use strict";var S0e=Xi(),k0e=PA(),C0e=Bt().fillText;GG.exports=function(t,r,i){var a=t.cd,s=a[0].trace,l=t.subplot,f,h,v,m,_=[r,i],T=[r+360,i];for(h=0;h")}}});var WG=pe((t3e,YG)=>{"use strict";YG.exports=function(t,r,i,a,s){t.location=r.location,t.z=r.z;var l=a[s];return l.fIn&&l.fIn.properties&&(t.properties=l.fIn.properties),t.ct=l.ct,t}});var jG=pe((r3e,XG)=>{"use strict";XG.exports=function(t,r){var i=t.cd,a=t.xaxis,s=t.yaxis,l=[],f,h,v,m,_;if(r===!1)for(f=0;f{"use strict";var a3e=["*choroplethmapbox* trace is deprecated!","Please consider switching to the *choroplethmap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");JG.exports={attributes:zA(),supplyDefaults:LG(),colorbar:IA(),calc:RG(),plot:HG(),hoverPoints:ZG(),eventData:WG(),selectPoints:jG(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.updateOnSelect(t)}},getBelow:function(e,t){for(var r=t.getMapLayers(),i=r.length-2;i>=0;i--){var a=r[i].id;if(typeof a=="string"&&a.indexOf("water")===0){for(var s=i+1;s{"use strict";QG.exports=KG()});var qA=pe((o3e,tZ)=>{"use strict";var L0e=xc(),{hovertemplateAttrs:D0e,templatefallbackAttrs:P0e}=Mf(),eZ=ys(),$b=Ib(),FA=mn().extendFlat;tZ.exports=FA({lon:$b.lon,lat:$b.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:$b.text,hovertext:$b.hovertext,hoverinfo:FA({},eZ.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:D0e(),hovertemplatefallback:P0e(),showlegend:FA({},eZ.showlegend,{dflt:!1})},L0e("",{cLetter:"z",editTypeOverride:"calc"}))});var aZ=pe((s3e,rZ)=>{"use strict";var z0e=Bt(),I0e=vd(),R0e=qA();rZ.exports=function(t,r,i,a){function s(v,m){return z0e.coerce(t,r,R0e,v,m)}var l=s("lon")||[],f=s("lat")||[],h=Math.min(l.length,f.length);if(!h){r.visible=!1;return}r._length=h,s("z"),s("radius"),s("below"),s("text"),s("hovertext"),s("hovertemplate"),s("hovertemplatefallback"),I0e(t,r,a,s,{prefix:"",cLetter:"z"})}});var oZ=pe((l3e,nZ)=>{"use strict";var NA=Da(),F0e=Bt().isArrayOrTypedArray,BA=Zi().BADNUM,q0e=Xy(),iZ=Bt()._;nZ.exports=function(t,r){for(var i=r._length,a=new Array(i),s=r.z,l=F0e(s)&&s.length,f=0;f{"use strict";var N0e=Da(),OA=Bt(),sZ=Oa(),lZ=P0(),uZ=Zi().BADNUM,B0e=Rb().makeBlank;fZ.exports=function(t){var r=t[0].trace,i=r.visible===!0&&r._length!==0,a={layout:{visibility:"none"},paint:{}},s=r._opts={heatmap:a,geojson:B0e()};if(!i)return s;var l=[],f,h=r.z,v=r.radius,m=OA.isArrayOrTypedArray(h)&&h.length,_=OA.isArrayOrTypedArray(v);for(f=0;f0?+v[f]:0),l.push({type:"Feature",geometry:{type:"Point",coordinates:S},properties:C})}}var D=lZ.extractOpts(r),z=D.reversescale?lZ.flipScale(D.colorscale):D.colorscale,B=z[0][1],q=sZ.opacity(B)<1?B:sZ.addOpacity(B,0),I=["interpolate",["linear"],["heatmap-density"],0,q];for(f=1;f{"use strict";var hZ=cZ(),O0e=zc().traceLayerPrefix;function vZ(e,t){this.type="densitymapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",O0e+t+"-heatmap"]],this.below=null}var e3=vZ.prototype;e3.update=function(e){var t=this.subplot,r=this.layerList,i=hZ(e),a=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(i.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(i,a),this.below=a);for(var s=0;s=0;r--)e.removeLayer(t[r][1])};e3.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};dZ.exports=function(t,r){var i=r[0].trace,a=new vZ(t,i.uid),s=a.sourceId,l=hZ(r),f=a.below=t.belowLookup["trace-"+i.uid];return t.map.addSource(s,{type:"geojson",data:l.geojson}),a._addLayers(l,f),a}});var yZ=pe((c3e,mZ)=>{"use strict";var U0e=Xi(),V0e=Ob().hoverPoints,H0e=Ob().getExtraText;mZ.exports=function(t,r,i){var a=V0e(t,r,i);if(a){var s=a[0],l=s.cd,f=l[0].trace,h=l[s.index];if(delete s.color,"z"in h){var v=s.subplot.mockAxis;s.z=h.z,s.zLabel=U0e.tickText(v,v.c2l(h.z),"hover").text}return s.extraText=H0e(f,h,l[0].t.labels),[s]}}});var _Z=pe((h3e,gZ)=>{"use strict";gZ.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var bZ=pe((d3e,xZ)=>{"use strict";var v3e=["*densitymapbox* trace is deprecated!","Please consider switching to the *densitymap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");xZ.exports={attributes:qA(),supplyDefaults:aZ(),colorbar:IA(),formatLabels:uA(),calc:oZ(),plot:pZ(),hoverPoints:yZ(),eventData:_Z(),getBelow:function(e,t){for(var r=t.getMapLayers(),i=0;i{"use strict";wZ.exports=bZ()});var Uo=pe((m3e,MZ)=>{"use strict";var AZ=Object.getOwnPropertySymbols,G0e=Object.prototype.hasOwnProperty,Z0e=Object.prototype.propertyIsEnumerable;function Y0e(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function W0e(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var i=Object.getOwnPropertyNames(t).map(function(s){return t[s]});if(i.join("")!=="0123456789")return!1;var a={};return"abcdefghijklmnopqrst".split("").forEach(function(s){a[s]=s}),Object.keys(Object.assign({},a)).join("")==="abcdefghijklmnopqrst"}catch(s){return!1}}MZ.exports=W0e()?Object.assign:function(e,t){for(var r,i=Y0e(e),a,s=1;s{var r3=Uo();function SZ(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}r3(SZ.prototype,{instance:function(e,t){e=(e||"gregorian").toLowerCase(),t=t||"";var r=this._localCals[e+"-"+t];if(!r&&this.calendars[e]&&(r=new this.calendars[e](t),this._localCals[e+"-"+t]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return r},newDate:function(e,t,r,i,a){return i=(e!=null&&e.year?e.calendar():typeof i=="string"?this.instance(i,a):i)||this.instance(),i.newDate(e,t,r)},substituteDigits:function(e){return function(t){return(t+"").replace(/[0-9]/g,function(r){return e[r]})}},substituteChineseDigits:function(e,t){return function(r){for(var i="",a=0;r>0;){var s=r%10;i=(s===0?"":e[s]+t[a])+i,a++,r=Math.floor(r/10)}return i.indexOf(e[1]+t[1])===0&&(i=i.substr(1)),i||e[0]}}});function UA(e,t,r,i){if(this._calendar=e,this._year=t,this._month=r,this._day=i,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(ka.local.invalidDate||ka.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function t3(e,t){return e=""+e,"000000".substring(0,t-e.length)+e}r3(UA.prototype,{newDate:function(e,t,r){return this._calendar.newDate(e==null?this:e,t,r)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,t,r){if(!this._calendar.isValid(e,t,r))throw(ka.local.invalidDate||ka.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=t,this._day=r,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,t){return this._calendar.add(this,e,t)},set:function(e,t){return this._calendar.set(this,e,t)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(ka.local.differentCalendars||ka.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var t=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return t===0?0:t<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+t3(Math.abs(this.year()),4)+"-"+t3(this.month(),2)+"-"+t3(this.day(),2)}});function VA(){this.shortYearCutoff="+10"}r3(VA.prototype,{_validateLevel:0,newDate:function(e,t,r){return e==null?this.today():(e.year&&(this._validate(e,t,r,ka.local.invalidDate||ka.regionalOptions[""].invalidDate),r=e.day(),t=e.month(),e=e.year()),new UA(this,e,t,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var t=this._validate(e,this.minMonth,this.minDay,ka.local.invalidYear||ka.regionalOptions[""].invalidYear);return t.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,ka.local.invalidYear||ka.regionalOptions[""].invalidYear);return(t.year()<0?"-":"")+t3(Math.abs(t.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ka.local.invalidYear||ka.regionalOptions[""].invalidYear),12},monthOfYear:function(e,t){var r=this._validate(e,t,this.minDay,ka.local.invalidMonth||ka.regionalOptions[""].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(e,t){var r=(t+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,r,this.minDay,ka.local.invalidMonth||ka.regionalOptions[""].invalidMonth),r},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,ka.local.invalidYear||ka.regionalOptions[""].invalidYear);return this.leapYear(t)?366:365},dayOfYear:function(e,t,r){var i=this._validate(e,t,r,ka.local.invalidDate||ka.regionalOptions[""].invalidDate);return i.toJD()-this.newDate(i.year(),this.fromMonthOfYear(i.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,t,r){var i=this._validate(e,t,r,ka.local.invalidDate||ka.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(i))+2)%this.daysInWeek()},extraInfo:function(e,t,r){return this._validate(e,t,r,ka.local.invalidDate||ka.regionalOptions[""].invalidDate),{}},add:function(e,t,r){return this._validate(e,this.minMonth,this.minDay,ka.local.invalidDate||ka.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,t,r),t,r)},_add:function(e,t,r){if(this._validateLevel++,r==="d"||r==="w"){var i=e.toJD()+t*(r==="w"?this.daysInWeek():1),a=e.calendar().fromJD(i);return this._validateLevel--,[a.year(),a.month(),a.day()]}try{var s=e.year()+(r==="y"?t:0),l=e.monthOfYear()+(r==="m"?t:0),a=e.day(),f=function(m){for(;l_-1+m.minMonth;)s++,l-=_,_=m.monthsInYear(s)};r==="y"?(e.month()!==this.fromMonthOfYear(s,l)&&(l=this.newDate(s,e.month(),this.minDay).monthOfYear()),l=Math.min(l,this.monthsInYear(s)),a=Math.min(a,this.daysInMonth(s,this.fromMonthOfYear(s,l)))):r==="m"&&(f(this),a=Math.min(a,this.daysInMonth(s,this.fromMonthOfYear(s,l))));var h=[s,this.fromMonthOfYear(s,l),a];return this._validateLevel--,h}catch(v){throw this._validateLevel--,v}},_correctAdd:function(e,t,r,i){if(!this.hasYearZero&&(i==="y"||i==="m")&&(t[0]===0||e.year()>0!=t[0]>0)){var a={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[i],s=r<0?-1:1;t=this._add(e,r*a[0]+s*a[1],a[2])}return e.date(t[0],t[1],t[2])},set:function(e,t,r){this._validate(e,this.minMonth,this.minDay,ka.local.invalidDate||ka.regionalOptions[""].invalidDate);var i=r==="y"?t:e.year(),a=r==="m"?t:e.month(),s=r==="d"?t:e.day();return(r==="y"||r==="m")&&(s=Math.min(s,this.daysInMonth(i,a))),e.date(i,a,s)},isValid:function(e,t,r){this._validateLevel++;var i=this.hasYearZero||e!==0;if(i){var a=this.newDate(e,t,this.minDay);i=t>=this.minMonth&&t-this.minMonth=this.minDay&&r-this.minDay13.5?13:1),v=a-(h>2.5?4716:4715);return v<=0&&v--,this.newDate(v,h,f)},toJSDate:function(e,t,r){var i=this._validate(e,t,r,ka.local.invalidDate||ka.regionalOptions[""].invalidDate),a=new Date(i.year(),i.month()-1,i.day());return a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0),a.setHours(a.getHours()>12?a.getHours()+2:0),a},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var ka=kZ.exports=new SZ;ka.cdate=UA;ka.baseCalendar=VA;ka.calendars.gregorian=HA});var CZ=pe(()=>{var GA=Uo(),po=Vo();GA(po.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});po.local=po.regionalOptions[""];GA(po.cdate.prototype,{formatDate:function(e,t){return typeof e!="string"&&(t=e,e=""),this._calendar.formatDate(e||"",this,t)}});GA(po.baseCalendar.prototype,{UNIX_EPOCH:po.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:po.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,t,r){if(typeof e!="string"&&(r=t,t=e,e=""),!t)return"";if(t.calendar()!==this)throw po.local.invalidFormat||po.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,r=r||{};for(var i=r.dayNamesShort||this.local.dayNamesShort,a=r.dayNames||this.local.dayNames,s=r.monthNumbers||this.local.monthNumbers,l=r.monthNamesShort||this.local.monthNamesShort,f=r.monthNames||this.local.monthNames,h=r.calculateWeek||this.local.calculateWeek,v=function(I,O){for(var H=1;q+H1},m=function(I,O,H,V){var W=""+O;if(v(I,V))for(;W.length1},B=function(oe,fe){var ve=z(oe,fe),Se=[2,3,ve?4:2,ve?4:2,10,11,20]["oyYJ@!".indexOf(oe)+1],Me=new RegExp("^-?\\d{1,"+Se+"}"),Ae=t.substring(W).match(Me);if(!Ae)throw(po.local.missingNumberAt||po.regionalOptions[""].missingNumberAt).replace(/\{0\}/,W);return W+=Ae[0].length,parseInt(Ae[0],10)},q=this,I=function(){if(typeof f=="function"){z("m");var oe=f.call(q,t.substring(W));return W+=oe.length,oe}return B("m")},O=function(oe,fe,ve,Se){for(var Me=z(oe,Se)?ve:fe,Ae=0;Ae-1){T=1,S=C;for(var ne=this.daysInMonth(_,T);S>ne;ne=this.daysInMonth(_,T))T++,S-=ne}return m>-1?this.fromJD(m):this.newDate(_,T,S)},determineDate:function(e,t,r,i,a){r&&typeof r!="object"&&(a=i,i=r,r=null),typeof i!="string"&&(a=i,i="");var s=this,l=function(f){try{return s.parseDate(i,f,a)}catch(_){}f=f.toLowerCase();for(var h=(f.match(/^c/)&&r?r.newDate():null)||s.today(),v=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,m=v.exec(f);m;)h.add(parseInt(m[1],10),m[2]||"d"),m=v.exec(f);return h};return t=t?t.newDate():null,e=e==null?t:typeof e=="string"?l(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?t:s.today().add(e,"d"):s.newDate(e),e}})});var EZ=pe(()=>{var sv=Vo(),X0e=Uo(),ZA=sv.instance();function a3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}a3.prototype=new sv.baseCalendar;X0e(a3.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,t){if(typeof e=="string"){var r=e.match(J0e);return r?r[0]:""}var i=this._validateYear(e),a=e.month(),s=""+this.toChineseMonth(i,a);return t&&s.length<2&&(s="0"+s),this.isIntercalaryMonth(i,a)&&(s+="i"),s},monthNames:function(e){if(typeof e=="string"){var t=e.match(K0e);return t?t[0]:""}var r=this._validateYear(e),i=e.month(),a=this.toChineseMonth(r,i),s=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][a-1];return this.isIntercalaryMonth(r,i)&&(s="\u95F0"+s),s},monthNamesShort:function(e){if(typeof e=="string"){var t=e.match(Q0e);return t?t[0]:""}var r=this._validateYear(e),i=e.month(),a=this.toChineseMonth(r,i),s=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][a-1];return this.isIntercalaryMonth(r,i)&&(s="\u95F0"+s),s},parseMonth:function(e,t){e=this._validateYear(e);var r=parseInt(t),i;if(isNaN(r))t[0]==="\u95F0"&&(i=!0,t=t.substring(1)),t[t.length-1]==="\u6708"&&(t=t.substring(0,t.length-1)),r=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(t);else{var a=t[t.length-1];i=a==="i"||a==="I"}var s=this.toMonthIndex(e,r,i);return s},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,t){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw t.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,t,r){var i=this.intercalaryMonth(e),a=r&&t!==i;if(a||t<1||t>12)throw sv.local.invalidMonth.replace(/\{0\}/,this.local.name);var s;return i?!r&&t<=i?s=t-1:s=t:s=t-1,s},toChineseMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e),i=r?12:11;if(t<0||t>i)throw sv.local.invalidMonth.replace(/\{0\}/,this.local.name);var a;return r?t>13;return r},isIntercalaryMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e);return!!r&&r===t},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,t,r){var i=this._validateYear(e,sv.local.invalidyear),a=uv[i-uv[0]],s=a>>9&4095,l=a>>5&15,f=a&31,h;h=ZA.newDate(s,l,f),h.add(4-(h.dayOfWeek()||7),"d");var v=this.toJD(e,t,r)-h.toJD();return 1+Math.floor(v/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,t){e.year&&(t=e.month(),e=e.year()),e=this._validateYear(e);var r=lv[e-lv[0]],i=r>>13,a=i?12:11;if(t>a)throw sv.local.invalidMonth.replace(/\{0\}/,this.local.name);var s=r&1<<12-t?30:29;return s},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,s,r,sv.local.invalidDate);e=this._validateYear(i.year()),t=i.month(),r=i.day();var a=this.isIntercalaryMonth(e,t),s=this.toChineseMonth(e,t),l=eme(e,s,r,a);return ZA.toJD(l.year,l.month,l.day)},fromJD:function(e){var t=ZA.fromJD(e),r=$0e(t.year(),t.month(),t.day()),i=this.toMonthIndex(r.year,r.month,r.isIntercalary);return this.newDate(r.year,i,r.day)},fromString:function(e){var t=e.match(j0e),r=this._validateYear(+t[1]),i=+t[2],a=!!t[3],s=this.toMonthIndex(r,i,a),l=+t[4];return this.newDate(r,s,l)},add:function(e,t,r){var i=e.year(),a=e.month(),s=this.isIntercalaryMonth(i,a),l=this.toChineseMonth(i,a),f=Object.getPrototypeOf(a3.prototype).add.call(this,e,t,r);if(r==="y"){var h=f.year(),v=f.month(),m=this.isIntercalaryMonth(h,l),_=s&&m?this.toMonthIndex(h,l,!0):this.toMonthIndex(h,l,!1);_!==v&&f.month(_)}return f}});var j0e=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,J0e=/^\d?\d[iI]?/m,K0e=/^闰?十?[一二三四五六七八九]?月/m,Q0e=/^闰?十?[一二三四五六七八九]?/m;sv.calendars.chinese=a3;var lv=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],uv=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function $0e(e,t,r,i){var a,s;if(typeof e=="object")a=e,s=t||{};else{var l=typeof e=="number"&&e>=1888&&e<=2111;if(!l)throw new Error("Solar year outside range 1888-2111");var f=typeof t=="number"&&t>=1&&t<=12;if(!f)throw new Error("Solar month outside range 1 - 12");var h=typeof r=="number"&&r>=1&&r<=31;if(!h)throw new Error("Solar day outside range 1 - 31");a={year:e,month:t,day:r},s=i||{}}var v=uv[a.year-uv[0]],m=a.year<<9|a.month<<5|a.day;s.year=m>=v?a.year:a.year-1,v=uv[s.year-uv[0]];var _=v>>9&4095,T=v>>5&15,S=v&31,C,E=new Date(_,T-1,S),D=new Date(a.year,a.month-1,a.day);C=Math.round((D-E)/(24*3600*1e3));var z=lv[s.year-lv[0]],B;for(B=0;B<13;B++){var q=z&1<<12-B?30:29;if(C>13;return!I||B=1888&&e<=2111;if(!f)throw new Error("Lunar year outside range 1888-2111");var h=typeof t=="number"&&t>=1&&t<=12;if(!h)throw new Error("Lunar month outside range 1 - 12");var v=typeof r=="number"&&r>=1&&r<=30;if(!v)throw new Error("Lunar day outside range 1 - 30");var m;typeof i=="object"?(m=!1,s=i):(m=!!i,s=a||{}),l={year:e,month:t,day:r,isIntercalary:m}}var _;_=l.day-1;var T=lv[l.year-lv[0]],S=T>>13,C;S&&(l.month>S||l.isIntercalary)?C=l.month:C=l.month-1;for(var E=0;E>9&4095,q=z>>5&15,I=z&31,O=new Date(B,q-1,I+_);return s.year=O.getFullYear(),s.month=1+O.getMonth(),s.day=O.getDate(),s}});var LZ=pe(()=>{var Yd=Vo(),tme=Uo();function YA(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}YA.prototype=new Yd.baseCalendar;tme(YA.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Yd.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Yd.local.invalidYear||Yd.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-i.dayOfWeek(),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Yd.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,Yd.local.invalidDate);return e=i.year(),e<0&&e++,i.day()+(i.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var i=Math.floor(t/30)+1,a=t-(i-1)*30+1;return this.newDate(r,i,a)}});Yd.calendars.coptic=YA});var DZ=pe(()=>{var Fc=Vo(),rme=Uo();function WA(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}WA.prototype=new Fc.baseCalendar;rme(WA.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Fc.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Fc.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Fc.local.invalidYear),400},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-i.dayOfWeek(),"d"),Math.floor((i.dayOfYear()-1)/8)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Fc.local.invalidMonth);return this.daysPerMonth[r.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,t,r){var i=this._validate(e,t,r,Fc.local.invalidDate);return(i.day()+1)%8},weekDay:function(e,t,r){var i=this.dayOfWeek(e,t,r);return i>=2&&i<=6},extraInfo:function(e,t,r){var i=this._validate(e,t,r,Fc.local.invalidDate);return{century:ame[Math.floor((i.year()-1)/100)+1]||""}},toJD:function(e,t,r){var i=this._validate(e,t,r,Fc.local.invalidDate);return e=i.year()+(i.year()<0?1:0),t=i.month(),r=i.day(),r+(t>1?16:0)+(t>2?(t-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var t=Math.floor(e/400)+1;e-=(t-1)*400,e+=e>15?16:0;var r=Math.floor(e/32)+1,i=e-(r-1)*32+1;return this.newDate(t<=0?t-1:t,r,i)}});var ame={20:"Fruitbat",21:"Anchovy"};Fc.calendars.discworld=WA});var PZ=pe(()=>{var Wd=Vo(),ime=Uo();function XA(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}XA.prototype=new Wd.baseCalendar;ime(XA.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Wd.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Wd.local.invalidYear||Wd.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-i.dayOfWeek(),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Wd.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,Wd.local.invalidDate);return e=i.year(),e<0&&e++,i.day()+(i.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var i=Math.floor(t/30)+1,a=t-(i-1)*30+1;return this.newDate(r,i,a)}});Wd.calendars.ethiopian=XA});var zZ=pe(()=>{var fv=Vo(),nme=Uo();function jA(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}jA.prototype=new fv.baseCalendar;nme(jA.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,fv.local.invalidYear);return this._leapYear(t.year())},_leapYear:function(e){return e=e<0?e+1:e,i3(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,fv.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-i.dayOfWeek(),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,fv.local.invalidYear);return e=t.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,fv.local.invalidMonth),t===12&&this.leapYear(e)||t===8&&i3(this.daysInYear(e),10)===5?30:t===9&&i3(this.daysInYear(e),10)===3?29:this.daysPerMonth[t-1]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},extraInfo:function(e,t,r){var i=this._validate(e,t,r,fv.local.invalidDate);return{yearType:(this.leapYear(i)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(i)%10-3]}},toJD:function(e,t,r){var i=this._validate(e,t,r,fv.local.invalidDate);e=i.year(),t=i.month(),r=i.day();var a=e<=0?e+1:e,s=this.jdEpoch+this._delay1(a)+this._delay2(a)+r+1;if(t<7){for(var l=7;l<=this.monthsInYear(e);l++)s+=this.daysInMonth(e,l);for(var l=1;l=this.toJD(t===-1?1:t+1,7,1);)t++;for(var r=ethis.toJD(t,r,this.daysInMonth(t,r));)r++;var i=e-this.toJD(t,r,1)+1;return this.newDate(t,r,i)}});function i3(e,t){return e-t*Math.floor(e/t)}fv.calendars.hebrew=jA});var IZ=pe(()=>{var p1=Vo(),ome=Uo();function JA(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}JA.prototype=new p1.baseCalendar;ome(JA.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,p1.local.invalidYear);return(t.year()*11+14)%30<11},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-i.dayOfWeek(),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,p1.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var i=this._validate(e,t,r,p1.local.invalidDate);return e=i.year(),t=i.month(),r=i.day(),e=e<=0?e+1:e,r+Math.ceil(29.5*(t-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=Math.floor((30*(e-this.jdEpoch)+10646)/10631);t=t<=0?t-1:t;var r=Math.min(12,Math.ceil((e-29-this.toJD(t,1,1))/29.5)+1),i=e-this.toJD(t,r,1)+1;return this.newDate(t,r,i)}});p1.calendars.islamic=JA});var RZ=pe(()=>{var m1=Vo(),sme=Uo();function KA(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}KA.prototype=new m1.baseCalendar;sme(KA.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,m1.local.invalidYear),r=t.year()<0?t.year()+1:t.year();return r%4===0},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(4-(i.dayOfWeek()||7),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,m1.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,m1.local.invalidDate);return e=i.year(),t=i.month(),r=i.day(),e<0&&e++,t<=2&&(e--,t+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(t+1))+r-1524.5},fromJD:function(e){var t=Math.floor(e+.5),r=t+1524,i=Math.floor((r-122.1)/365.25),a=Math.floor(365.25*i),s=Math.floor((r-a)/30.6001),l=s-Math.floor(s<14?1:13),f=i-Math.floor(l>2?4716:4715),h=r-a-Math.floor(30.6001*s);return f<=0&&f--,this.newDate(f,l,h)}});m1.calendars.julian=KA});var qZ=pe(()=>{var cu=Vo(),lme=Uo();function $A(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}$A.prototype=new cu.baseCalendar;lme($A.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,cu.local.invalidYear),!1},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,cu.local.invalidYear);e=t.year();var r=Math.floor(e/400);e=e%400,e+=e<0?400:0;var i=Math.floor(e/20);return r+"."+i+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var t=0,r=0;r19||r>0&&i<0)throw"Invalid Mayan year";t=t*20+i}return t},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,cu.local.invalidYear),18},weekOfYear:function(e,t,r){return this._validate(e,t,r,cu.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,cu.local.invalidYear),360},daysInMonth:function(e,t){return this._validate(e,t,this.minDay,cu.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,t,r){var i=this._validate(e,t,r,cu.local.invalidDate);return i.day()},weekDay:function(e,t,r){return this._validate(e,t,r,cu.local.invalidDate),!0},extraInfo:function(e,t,r){var i=this._validate(e,t,r,cu.local.invalidDate),a=i.toJD(),s=this._toHaab(a),l=this._toTzolkin(a);return{haabMonthName:this.local.haabMonths[s[0]-1],haabMonth:s[0],haabDay:s[1],tzolkinDayName:this.local.tzolkinMonths[l[0]-1],tzolkinDay:l[0],tzolkinTrecena:l[1]}},_toHaab:function(e){e-=this.jdEpoch;var t=QA(e+8+17*20,365);return[Math.floor(t/20)+1,QA(t,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[FZ(e+20,20),FZ(e+4,13)]},toJD:function(e,t,r){var i=this._validate(e,t,r,cu.local.invalidDate);return i.day()+i.month()*20+i.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var t=Math.floor(e/360);e=e%360,e+=e<0?360:0;var r=Math.floor(e/20),i=e%20;return this.newDate(t,r,i)}});function QA(e,t){return e-t*Math.floor(e/t)}function FZ(e,t){return QA(e-1,t)+1}cu.calendars.mayan=$A});var BZ=pe(()=>{var Xd=Vo(),ume=Uo();function eM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}eM.prototype=new Xd.baseCalendar;var NZ=Xd.instance("gregorian");ume(eM.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Xd.local.invalidYear||Xd.regionalOptions[""].invalidYear);return NZ.leapYear(t.year()+(t.year()<1?1:0)+1469)},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(1-(i.dayOfWeek()||7),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Xd.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(a,t,r){var i=this._validate(a,t,r,Xd.local.invalidMonth),a=i.year();a<0&&a++;for(var s=i.day(),l=1;l=this.toJD(t+1,1,1);)t++;for(var r=e-Math.floor(this.toJD(t,1,1)+.5)+1,i=1;r>this.daysInMonth(t,i);)r-=this.daysInMonth(t,i),i++;return this.newDate(t,i,r)}});Xd.calendars.nanakshahi=eM});var OZ=pe(()=>{var jd=Vo(),fme=Uo();function tM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}tM.prototype=new jd.baseCalendar;fme(tM.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-i.dayOfWeek(),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,jd.local.invalidYear);if(e=t.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var r=0,i=this.minMonth;i<=12;i++)r+=this.NEPALI_CALENDAR_DATA[e][i];return r},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,jd.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[t-1]:this.NEPALI_CALENDAR_DATA[e][t]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},toJD:function(e,t,r){var i=this._validate(e,t,r,jd.local.invalidDate);e=i.year(),t=i.month(),r=i.day();var a=jd.instance(),s=0,l=t,f=e;this._createMissingCalendarData(e);var h=e-(l>9||l===9&&r>=this.NEPALI_CALENDAR_DATA[f][0]?56:57);for(t!==9&&(s=r,l--);l!==9;)l<=0&&(l=12,f--),s+=this.NEPALI_CALENDAR_DATA[f][l],l--;return t===9?(s+=r-this.NEPALI_CALENDAR_DATA[f][0],s<0&&(s+=a.daysInYear(h))):s+=this.NEPALI_CALENDAR_DATA[f][9]-this.NEPALI_CALENDAR_DATA[f][0],a.newDate(h,1,1).add(s,"d").toJD()},fromJD:function(e){var t=jd.instance(),r=t.fromJD(e),i=r.year(),a=r.dayOfYear(),s=i+56;this._createMissingCalendarData(s);for(var l=9,f=this.NEPALI_CALENDAR_DATA[s][0],h=this.NEPALI_CALENDAR_DATA[s][l]-f+1;a>h;)l++,l>12&&(l=1,s++),h+=this.NEPALI_CALENDAR_DATA[s][l];var v=this.NEPALI_CALENDAR_DATA[s][l]-(h-a);return this.newDate(s,l,v)},_createMissingCalendarData:function(e){var t=this.daysPerMonth.slice(0);t.unshift(17);for(var r=e-1;r{var Sm=Vo(),cme=Uo();function o3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function n3(e){var t=e-475;e<0&&t++;var r=.242197,i=r*t,a=r*(t+1),s=i-Math.floor(i),l=a-Math.floor(a);return s>l}o3.prototype=new Sm.baseCalendar;cme(o3.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Sm.local.invalidYear);return n3(t.year())},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-((i.dayOfWeek()+1)%7),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Sm.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var i=this._validate(e,t,r,Sm.local.invalidDate);e=i.year(),t=i.month(),r=i.day();var a=0;if(e>0)for(var s=1;s0?e-1:e)*365+a+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=475+(e-this.toJD(475,1,1))/365.242197,r=Math.floor(t);r<=0&&r--,e>this.toJD(r,12,n3(r)?30:29)&&(r++,r===0&&r++);var i=e-this.toJD(r,1,1)+1,a=i<=186?Math.ceil(i/31):Math.ceil((i-6)/30),s=e-this.toJD(r,a,1)+1;return this.newDate(r,a,s)}});Sm.calendars.persian=o3;Sm.calendars.jalali=o3});var VZ=pe(()=>{var Jd=Vo(),hme=Uo(),s3=Jd.instance();function rM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}rM.prototype=new Jd.baseCalendar;hme(rM.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Jd.local.invalidYear),r=this._t2gYear(t.year());return s3.leapYear(r)},weekOfYear:function(a,t,r){var i=this._validate(a,this.minMonth,this.minDay,Jd.local.invalidYear),a=this._t2gYear(i.year());return s3.weekOfYear(a,i.month(),i.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Jd.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(a,t,r){var i=this._validate(a,t,r,Jd.local.invalidDate),a=this._t2gYear(i.year());return s3.toJD(a,i.month(),i.day())},fromJD:function(e){var t=s3.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Jd.calendars.taiwan=rM});var HZ=pe(()=>{var Kd=Vo(),vme=Uo(),l3=Kd.instance();function aM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}aM.prototype=new Kd.baseCalendar;vme(aM.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Kd.local.invalidYear),r=this._t2gYear(t.year());return l3.leapYear(r)},weekOfYear:function(a,t,r){var i=this._validate(a,this.minMonth,this.minDay,Kd.local.invalidYear),a=this._t2gYear(i.year());return l3.weekOfYear(a,i.month(),i.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Kd.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(a,t,r){var i=this._validate(a,t,r,Kd.local.invalidDate),a=this._t2gYear(i.year());return l3.toJD(a,i.month(),i.day())},fromJD:function(e){var t=l3.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});Kd.calendars.thai=aM});var GZ=pe(()=>{var Qd=Vo(),dme=Uo();function iM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}iM.prototype=new Qd.baseCalendar;dme(iM.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Qd.local.invalidYear);return this.daysInYear(t.year())===355},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-i.dayOfWeek(),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var t=0,r=1;r<=12;r++)t+=this.daysInMonth(e,r);return t},daysInMonth:function(e,t){for(var r=this._validate(e,t,this.minDay,Qd.local.invalidMonth),i=r.toJD()-24e5+.5,a=0,s=0;si)return cv[a]-cv[a-1];a++}return 30},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var i=this._validate(e,t,r,Qd.local.invalidDate),a=12*(i.year()-1)+i.month()-15292,s=i.day()+cv[a-1]-1;return s+24e5-.5},fromJD:function(e){for(var t=e-24e5+.5,r=0,i=0;it);i++)r++;var a=r+15292,s=Math.floor((a-1)/12),l=s+1,f=a-12*s,h=t-cv[r-1]+1;return this.newDate(l,f,h)},isValid:function(e,t,r){var i=Qd.baseCalendar.prototype.isValid.apply(this,arguments);return i&&(e=e.year!=null?e.year:e,i=e>=1276&&e<=1500),i},_validate:function(e,t,r,i){var a=Qd.baseCalendar.prototype._validate.apply(this,arguments);if(a.year<1276||a.year>1500)throw i.replace(/\{0\}/,this.local.name);return a}});Qd.calendars.ummalqura=iM;var cv=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var YZ=pe((X3e,ZZ)=>{"use strict";ZZ.exports=Vo();CZ();EZ();LZ();DZ();PZ();zZ();IZ();RZ();qZ();BZ();OZ();UZ();VZ();HZ();GZ()});var $Z=pe((j3e,QZ)=>{"use strict";var XZ=YZ(),y1=Bt(),jZ=Zi(),pme=jZ.EPOCHJD,mme=jZ.ONEDAY,sM={valType:"enumerated",values:y1.sortObjectKeys(XZ.calendars),editType:"calc",dflt:"gregorian"},JZ=function(e,t,r,i){var a={};return a[r]=sM,y1.coerce(e,t,a,r,i)},yme=function(e,t,r,i){for(var a=0;a{"use strict";eY.exports=$Z()});var Tme=pe((K3e,aY)=>{var rY=PV();rY.register([AG(),$G(),TZ(),tY()]);aY.exports=rY});return Tme();})(); +`),Qt=G.createShader(G.FRAGMENT_SHADER);if(G.isContextLost()){this.failedToCreate=!0;return}G.shaderSource(Qt,zt),G.compileShader(Qt),G.attachShader(this.program,Qt);var rr=G.createShader(G.VERTEX_SHADER);if(G.isContextLost()){this.failedToCreate=!0;return}G.shaderSource(rr,Nt),G.compileShader(rr),G.attachShader(this.program,rr),this.attributes={};var Yt={};this.numAttributes=ue.length;for(var ar=0;ar>16,G>>16],u_pixel_coord_lower:[R&65535,G&65535]}}function _u(g,c,b,d){var w=b.imageManager.getPattern(g.from.toString()),D=b.imageManager.getPattern(g.to.toString()),R=b.imageManager.getPixelSize(),G=R.width,K=R.height,re=Math.pow(2,d.tileID.overscaledZ),ue=d.tileSize*Math.pow(2,b.transform.tileZoom)/re,Te=ue*(d.tileID.canonical.x+d.tileID.wrap*re),we=ue*d.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:w.tl,u_pattern_br_a:w.br,u_pattern_tl_b:D.tl,u_pattern_br_b:D.br,u_texsize:[G,K],u_mix:c.t,u_pattern_size_a:w.displaySize,u_pattern_size_b:D.displaySize,u_scale_a:c.fromScale,u_scale_b:c.toScale,u_tile_units_to_pixels:1/mo(d,1,b.transform.tileZoom),u_pixel_coord_upper:[Te>>16,we>>16],u_pixel_coord_lower:[Te&65535,we&65535]}}var Cv=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_lightpos:new a.Uniform3f(g,c.u_lightpos),u_lightintensity:new a.Uniform1f(g,c.u_lightintensity),u_lightcolor:new a.Uniform3f(g,c.u_lightcolor),u_vertical_gradient:new a.Uniform1f(g,c.u_vertical_gradient),u_opacity:new a.Uniform1f(g,c.u_opacity)}},bn=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_lightpos:new a.Uniform3f(g,c.u_lightpos),u_lightintensity:new a.Uniform1f(g,c.u_lightintensity),u_lightcolor:new a.Uniform3f(g,c.u_lightcolor),u_vertical_gradient:new a.Uniform1f(g,c.u_vertical_gradient),u_height_factor:new a.Uniform1f(g,c.u_height_factor),u_image:new a.Uniform1i(g,c.u_image),u_texsize:new a.Uniform2f(g,c.u_texsize),u_pixel_coord_upper:new a.Uniform2f(g,c.u_pixel_coord_upper),u_pixel_coord_lower:new a.Uniform2f(g,c.u_pixel_coord_lower),u_scale:new a.Uniform3f(g,c.u_scale),u_fade:new a.Uniform1f(g,c.u_fade),u_opacity:new a.Uniform1f(g,c.u_opacity)}},Jf=function(g,c,b,d){var w=c.style.light,D=w.properties.get("position"),R=[D.x,D.y,D.z],G=a.create$1();w.properties.get("anchor")==="viewport"&&a.fromRotation(G,-c.transform.angle),a.transformMat3(R,R,G);var K=w.properties.get("color");return{u_matrix:g,u_lightpos:R,u_lightintensity:w.properties.get("intensity"),u_lightcolor:[K.r,K.g,K.b],u_vertical_gradient:+b,u_opacity:d}},Js=function(g,c,b,d,w,D,R){return a.extend(Jf(g,c,b,d),nf(D,c,R),{u_height_factor:-Math.pow(2,w.overscaledZ)/R.tileSize/8})},Sl=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix)}},kl=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_image:new a.Uniform1i(g,c.u_image),u_texsize:new a.Uniform2f(g,c.u_texsize),u_pixel_coord_upper:new a.Uniform2f(g,c.u_pixel_coord_upper),u_pixel_coord_lower:new a.Uniform2f(g,c.u_pixel_coord_lower),u_scale:new a.Uniform3f(g,c.u_scale),u_fade:new a.Uniform1f(g,c.u_fade)}},Cl=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_world:new a.Uniform2f(g,c.u_world)}},Ks=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_world:new a.Uniform2f(g,c.u_world),u_image:new a.Uniform1i(g,c.u_image),u_texsize:new a.Uniform2f(g,c.u_texsize),u_pixel_coord_upper:new a.Uniform2f(g,c.u_pixel_coord_upper),u_pixel_coord_lower:new a.Uniform2f(g,c.u_pixel_coord_lower),u_scale:new a.Uniform3f(g,c.u_scale),u_fade:new a.Uniform1f(g,c.u_fade)}},Ms=function(g){return{u_matrix:g}},Ss=function(g,c,b,d){return a.extend(Ms(g),nf(b,c,d))},El=function(g,c){return{u_matrix:g,u_world:c}},mp=function(g,c,b,d,w){return a.extend(Ss(g,c,b,d),{u_world:w})},Wm=function(g,c){return{u_camera_to_center_distance:new a.Uniform1f(g,c.u_camera_to_center_distance),u_scale_with_map:new a.Uniform1i(g,c.u_scale_with_map),u_pitch_with_map:new a.Uniform1i(g,c.u_pitch_with_map),u_extrude_scale:new a.Uniform2f(g,c.u_extrude_scale),u_device_pixel_ratio:new a.Uniform1f(g,c.u_device_pixel_ratio),u_matrix:new a.UniformMatrix4f(g,c.u_matrix)}},Xm=function(g,c,b,d){var w=g.transform,D,R;if(d.paint.get("circle-pitch-alignment")==="map"){var G=mo(b,1,w.zoom);D=!0,R=[G,G]}else D=!1,R=w.pixelsToGLUnits;return{u_camera_to_center_distance:w.cameraToCenterDistance,u_scale_with_map:+(d.paint.get("circle-pitch-scale")==="map"),u_matrix:g.translatePosMatrix(c.posMatrix,b,d.paint.get("circle-translate"),d.paint.get("circle-translate-anchor")),u_pitch_with_map:+D,u_device_pixel_ratio:a.browser.devicePixelRatio,u_extrude_scale:R}},jm=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_camera_to_center_distance:new a.Uniform1f(g,c.u_camera_to_center_distance),u_pixels_to_tile_units:new a.Uniform1f(g,c.u_pixels_to_tile_units),u_extrude_scale:new a.Uniform2f(g,c.u_extrude_scale),u_overscale_factor:new a.Uniform1f(g,c.u_overscale_factor)}},yp=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_inv_matrix:new a.UniformMatrix4f(g,c.u_inv_matrix),u_camera_to_center_distance:new a.Uniform1f(g,c.u_camera_to_center_distance),u_viewport_size:new a.Uniform2f(g,c.u_viewport_size)}},gp=function(g,c,b){var d=mo(b,1,c.zoom),w=Math.pow(2,c.zoom-b.tileID.overscaledZ),D=b.tileID.overscaleFactor();return{u_matrix:g,u_camera_to_center_distance:c.cameraToCenterDistance,u_pixels_to_tile_units:d,u_extrude_scale:[c.pixelsToGLUnits[0]/(d*w),c.pixelsToGLUnits[1]/(d*w)],u_overscale_factor:D}},Ev=function(g,c,b){return{u_matrix:g,u_inv_matrix:c,u_camera_to_center_distance:b.cameraToCenterDistance,u_viewport_size:[b.width,b.height]}},Lv=function(g,c){return{u_color:new a.UniformColor(g,c.u_color),u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_overlay:new a.Uniform1i(g,c.u_overlay),u_overlay_scale:new a.Uniform1f(g,c.u_overlay_scale)}},Kf=function(g,c,b){return b===void 0&&(b=1),{u_matrix:g,u_color:c,u_overlay:0,u_overlay_scale:b}},Yc=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix)}},_p=function(g){return{u_matrix:g}},Dv=function(g,c){return{u_extrude_scale:new a.Uniform1f(g,c.u_extrude_scale),u_intensity:new a.Uniform1f(g,c.u_intensity),u_matrix:new a.UniformMatrix4f(g,c.u_matrix)}},xp=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_world:new a.Uniform2f(g,c.u_world),u_image:new a.Uniform1i(g,c.u_image),u_color_ramp:new a.Uniform1i(g,c.u_color_ramp),u_opacity:new a.Uniform1f(g,c.u_opacity)}},of=function(g,c,b,d){return{u_matrix:g,u_extrude_scale:mo(c,1,b),u_intensity:d}},Jm=function(g,c,b,d){var w=a.create();a.ortho(w,0,g.width,g.height,0,0,1);var D=g.context.gl;return{u_matrix:w,u_world:[D.drawingBufferWidth,D.drawingBufferHeight],u_image:b,u_color_ramp:d,u_opacity:c.paint.get("heatmap-opacity")}},bp=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_image:new a.Uniform1i(g,c.u_image),u_latrange:new a.Uniform2f(g,c.u_latrange),u_light:new a.Uniform2f(g,c.u_light),u_shadow:new a.UniformColor(g,c.u_shadow),u_highlight:new a.UniformColor(g,c.u_highlight),u_accent:new a.UniformColor(g,c.u_accent)}},wp=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_image:new a.Uniform1i(g,c.u_image),u_dimension:new a.Uniform2f(g,c.u_dimension),u_zoom:new a.Uniform1f(g,c.u_zoom),u_unpack:new a.Uniform4f(g,c.u_unpack)}},Tp=function(g,c,b){var d=b.paint.get("hillshade-shadow-color"),w=b.paint.get("hillshade-highlight-color"),D=b.paint.get("hillshade-accent-color"),R=b.paint.get("hillshade-illumination-direction")*(Math.PI/180);b.paint.get("hillshade-illumination-anchor")==="viewport"&&(R-=g.transform.angle);var G=!g.options.moving;return{u_matrix:g.transform.calculatePosMatrix(c.tileID.toUnwrapped(),G),u_image:0,u_latrange:zv(g,c.tileID),u_light:[b.paint.get("hillshade-exaggeration"),R],u_shadow:d,u_highlight:w,u_accent:D}},Pv=function(g,c){var b=c.stride,d=a.create();return a.ortho(d,0,a.EXTENT,-a.EXTENT,0,0,1),a.translate(d,d,[0,-a.EXTENT,0]),{u_matrix:d,u_image:1,u_dimension:[b,b],u_zoom:g.overscaledZ,u_unpack:c.getUnpackVector()}};function zv(g,c){var b=Math.pow(2,c.canonical.z),d=c.canonical.y;return[new a.MercatorCoordinate(0,d/b).toLngLat().lat,new a.MercatorCoordinate(0,(d+1)/b).toLngLat().lat]}var xu=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_ratio:new a.Uniform1f(g,c.u_ratio),u_device_pixel_ratio:new a.Uniform1f(g,c.u_device_pixel_ratio),u_units_to_pixels:new a.Uniform2f(g,c.u_units_to_pixels)}},Ll=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_ratio:new a.Uniform1f(g,c.u_ratio),u_device_pixel_ratio:new a.Uniform1f(g,c.u_device_pixel_ratio),u_units_to_pixels:new a.Uniform2f(g,c.u_units_to_pixels),u_image:new a.Uniform1i(g,c.u_image),u_image_height:new a.Uniform1f(g,c.u_image_height)}},Qf=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_texsize:new a.Uniform2f(g,c.u_texsize),u_ratio:new a.Uniform1f(g,c.u_ratio),u_device_pixel_ratio:new a.Uniform1f(g,c.u_device_pixel_ratio),u_image:new a.Uniform1i(g,c.u_image),u_units_to_pixels:new a.Uniform2f(g,c.u_units_to_pixels),u_scale:new a.Uniform3f(g,c.u_scale),u_fade:new a.Uniform1f(g,c.u_fade)}},Iv=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_ratio:new a.Uniform1f(g,c.u_ratio),u_device_pixel_ratio:new a.Uniform1f(g,c.u_device_pixel_ratio),u_units_to_pixels:new a.Uniform2f(g,c.u_units_to_pixels),u_patternscale_a:new a.Uniform2f(g,c.u_patternscale_a),u_patternscale_b:new a.Uniform2f(g,c.u_patternscale_b),u_sdfgamma:new a.Uniform1f(g,c.u_sdfgamma),u_image:new a.Uniform1i(g,c.u_image),u_tex_y_a:new a.Uniform1f(g,c.u_tex_y_a),u_tex_y_b:new a.Uniform1f(g,c.u_tex_y_b),u_mix:new a.Uniform1f(g,c.u_mix)}},Wc=function(g,c,b){var d=g.transform;return{u_matrix:bu(g,c,b),u_ratio:1/mo(c,1,d.zoom),u_device_pixel_ratio:a.browser.devicePixelRatio,u_units_to_pixels:[1/d.pixelsToGLUnits[0],1/d.pixelsToGLUnits[1]]}},Xc=function(g,c,b,d){return a.extend(Wc(g,c,b),{u_image:0,u_image_height:d})},jc=function(g,c,b,d){var w=g.transform,D=Jc(c,w);return{u_matrix:bu(g,c,b),u_texsize:c.imageAtlasTexture.size,u_ratio:1/mo(c,1,w.zoom),u_device_pixel_ratio:a.browser.devicePixelRatio,u_image:0,u_scale:[D,d.fromScale,d.toScale],u_fade:d.t,u_units_to_pixels:[1/w.pixelsToGLUnits[0],1/w.pixelsToGLUnits[1]]}},Dl=function(g,c,b,d,w){var D=g.transform,R=g.lineAtlas,G=Jc(c,D),K=b.layout.get("line-cap")==="round",re=R.getDash(d.from,K),ue=R.getDash(d.to,K),Te=re.width*w.fromScale,we=ue.width*w.toScale;return a.extend(Wc(g,c,b),{u_patternscale_a:[G/Te,-re.height/2],u_patternscale_b:[G/we,-ue.height/2],u_sdfgamma:R.width/(Math.min(Te,we)*256*a.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:re.y,u_tex_y_b:ue.y,u_mix:w.t})};function Jc(g,c){return 1/mo(g,1,c.tileZoom)}function bu(g,c,b){return g.translatePosMatrix(c.tileID.posMatrix,c,b.paint.get("line-translate"),b.paint.get("line-translate-anchor"))}var sf=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_tl_parent:new a.Uniform2f(g,c.u_tl_parent),u_scale_parent:new a.Uniform1f(g,c.u_scale_parent),u_buffer_scale:new a.Uniform1f(g,c.u_buffer_scale),u_fade_t:new a.Uniform1f(g,c.u_fade_t),u_opacity:new a.Uniform1f(g,c.u_opacity),u_image0:new a.Uniform1i(g,c.u_image0),u_image1:new a.Uniform1i(g,c.u_image1),u_brightness_low:new a.Uniform1f(g,c.u_brightness_low),u_brightness_high:new a.Uniform1f(g,c.u_brightness_high),u_saturation_factor:new a.Uniform1f(g,c.u_saturation_factor),u_contrast_factor:new a.Uniform1f(g,c.u_contrast_factor),u_spin_weights:new a.Uniform3f(g,c.u_spin_weights)}},Ap=function(g,c,b,d,w){return{u_matrix:g,u_tl_parent:c,u_scale_parent:b,u_buffer_scale:1,u_fade_t:d.mix,u_opacity:d.opacity*w.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:w.paint.get("raster-brightness-min"),u_brightness_high:w.paint.get("raster-brightness-max"),u_saturation_factor:$f(w.paint.get("raster-saturation")),u_contrast_factor:di(w.paint.get("raster-contrast")),u_spin_weights:Kc(w.paint.get("raster-hue-rotate"))}};function Kc(g){g*=Math.PI/180;var c=Math.sin(g),b=Math.cos(g);return[(2*b+1)/3,(-Math.sqrt(3)*c-b+1)/3,(Math.sqrt(3)*c-b+1)/3]}function di(g){return g>0?1/(1-g):1+g}function $f(g){return g>0?1-1/(1.001-g):-g}var Mp=function(g,c){return{u_is_size_zoom_constant:new a.Uniform1i(g,c.u_is_size_zoom_constant),u_is_size_feature_constant:new a.Uniform1i(g,c.u_is_size_feature_constant),u_size_t:new a.Uniform1f(g,c.u_size_t),u_size:new a.Uniform1f(g,c.u_size),u_camera_to_center_distance:new a.Uniform1f(g,c.u_camera_to_center_distance),u_pitch:new a.Uniform1f(g,c.u_pitch),u_rotate_symbol:new a.Uniform1i(g,c.u_rotate_symbol),u_aspect_ratio:new a.Uniform1f(g,c.u_aspect_ratio),u_fade_change:new a.Uniform1f(g,c.u_fade_change),u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_label_plane_matrix:new a.UniformMatrix4f(g,c.u_label_plane_matrix),u_coord_matrix:new a.UniformMatrix4f(g,c.u_coord_matrix),u_is_text:new a.Uniform1i(g,c.u_is_text),u_pitch_with_map:new a.Uniform1i(g,c.u_pitch_with_map),u_texsize:new a.Uniform2f(g,c.u_texsize),u_texture:new a.Uniform1i(g,c.u_texture)}},Sp=function(g,c){return{u_is_size_zoom_constant:new a.Uniform1i(g,c.u_is_size_zoom_constant),u_is_size_feature_constant:new a.Uniform1i(g,c.u_is_size_feature_constant),u_size_t:new a.Uniform1f(g,c.u_size_t),u_size:new a.Uniform1f(g,c.u_size),u_camera_to_center_distance:new a.Uniform1f(g,c.u_camera_to_center_distance),u_pitch:new a.Uniform1f(g,c.u_pitch),u_rotate_symbol:new a.Uniform1i(g,c.u_rotate_symbol),u_aspect_ratio:new a.Uniform1f(g,c.u_aspect_ratio),u_fade_change:new a.Uniform1f(g,c.u_fade_change),u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_label_plane_matrix:new a.UniformMatrix4f(g,c.u_label_plane_matrix),u_coord_matrix:new a.UniformMatrix4f(g,c.u_coord_matrix),u_is_text:new a.Uniform1i(g,c.u_is_text),u_pitch_with_map:new a.Uniform1i(g,c.u_pitch_with_map),u_texsize:new a.Uniform2f(g,c.u_texsize),u_texture:new a.Uniform1i(g,c.u_texture),u_gamma_scale:new a.Uniform1f(g,c.u_gamma_scale),u_device_pixel_ratio:new a.Uniform1f(g,c.u_device_pixel_ratio),u_is_halo:new a.Uniform1i(g,c.u_is_halo)}},Pl=function(g,c){return{u_is_size_zoom_constant:new a.Uniform1i(g,c.u_is_size_zoom_constant),u_is_size_feature_constant:new a.Uniform1i(g,c.u_is_size_feature_constant),u_size_t:new a.Uniform1f(g,c.u_size_t),u_size:new a.Uniform1f(g,c.u_size),u_camera_to_center_distance:new a.Uniform1f(g,c.u_camera_to_center_distance),u_pitch:new a.Uniform1f(g,c.u_pitch),u_rotate_symbol:new a.Uniform1i(g,c.u_rotate_symbol),u_aspect_ratio:new a.Uniform1f(g,c.u_aspect_ratio),u_fade_change:new a.Uniform1f(g,c.u_fade_change),u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_label_plane_matrix:new a.UniformMatrix4f(g,c.u_label_plane_matrix),u_coord_matrix:new a.UniformMatrix4f(g,c.u_coord_matrix),u_is_text:new a.Uniform1i(g,c.u_is_text),u_pitch_with_map:new a.Uniform1i(g,c.u_pitch_with_map),u_texsize:new a.Uniform2f(g,c.u_texsize),u_texsize_icon:new a.Uniform2f(g,c.u_texsize_icon),u_texture:new a.Uniform1i(g,c.u_texture),u_texture_icon:new a.Uniform1i(g,c.u_texture_icon),u_gamma_scale:new a.Uniform1f(g,c.u_gamma_scale),u_device_pixel_ratio:new a.Uniform1f(g,c.u_device_pixel_ratio),u_is_halo:new a.Uniform1i(g,c.u_is_halo)}},kp=function(g,c,b,d,w,D,R,G,K,re){var ue=w.transform;return{u_is_size_zoom_constant:+(g==="constant"||g==="source"),u_is_size_feature_constant:+(g==="constant"||g==="camera"),u_size_t:c?c.uSizeT:0,u_size:c?c.uSize:0,u_camera_to_center_distance:ue.cameraToCenterDistance,u_pitch:ue.pitch/360*2*Math.PI,u_rotate_symbol:+b,u_aspect_ratio:ue.width/ue.height,u_fade_change:w.options.fadeDuration?w.symbolFadeChange:1,u_matrix:D,u_label_plane_matrix:R,u_coord_matrix:G,u_is_text:+K,u_pitch_with_map:+d,u_texsize:re,u_texture:0}},Cp=function(g,c,b,d,w,D,R,G,K,re,ue){var Te=w.transform;return a.extend(kp(g,c,b,d,w,D,R,G,K,re),{u_gamma_scale:d?Math.cos(Te._pitch)*Te.cameraToCenterDistance:1,u_device_pixel_ratio:a.browser.devicePixelRatio,u_is_halo:+ue})},Rv=function(g,c,b,d,w,D,R,G,K,re){return a.extend(Cp(g,c,b,d,w,D,R,G,!0,K,!0),{u_texsize_icon:re,u_texture_icon:1})},Ep=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_opacity:new a.Uniform1f(g,c.u_opacity),u_color:new a.UniformColor(g,c.u_color)}},Km=function(g,c){return{u_matrix:new a.UniformMatrix4f(g,c.u_matrix),u_opacity:new a.Uniform1f(g,c.u_opacity),u_image:new a.Uniform1i(g,c.u_image),u_pattern_tl_a:new a.Uniform2f(g,c.u_pattern_tl_a),u_pattern_br_a:new a.Uniform2f(g,c.u_pattern_br_a),u_pattern_tl_b:new a.Uniform2f(g,c.u_pattern_tl_b),u_pattern_br_b:new a.Uniform2f(g,c.u_pattern_br_b),u_texsize:new a.Uniform2f(g,c.u_texsize),u_mix:new a.Uniform1f(g,c.u_mix),u_pattern_size_a:new a.Uniform2f(g,c.u_pattern_size_a),u_pattern_size_b:new a.Uniform2f(g,c.u_pattern_size_b),u_scale_a:new a.Uniform1f(g,c.u_scale_a),u_scale_b:new a.Uniform1f(g,c.u_scale_b),u_pixel_coord_upper:new a.Uniform2f(g,c.u_pixel_coord_upper),u_pixel_coord_lower:new a.Uniform2f(g,c.u_pixel_coord_lower),u_tile_units_to_pixels:new a.Uniform1f(g,c.u_tile_units_to_pixels)}},zl=function(g,c,b){return{u_matrix:g,u_opacity:c,u_color:b}},wu=function(g,c,b,d,w,D){return a.extend(_u(d,D,b,w),{u_matrix:g,u_opacity:c})},ec={fillExtrusion:Cv,fillExtrusionPattern:bn,fill:Sl,fillPattern:kl,fillOutline:Cl,fillOutlinePattern:Ks,circle:Wm,collisionBox:jm,collisionCircle:yp,debug:Lv,clippingMask:Yc,heatmap:Dv,heatmapTexture:xp,hillshade:bp,hillshadePrepare:wp,line:xu,lineGradient:Ll,linePattern:Qf,lineSDF:Iv,raster:sf,symbolIcon:Mp,symbolSDF:Sp,symbolTextAndIcon:Pl,background:Ep,backgroundPattern:Km},ks;function Cs(g,c,b,d,w,D,R){for(var G=g.context,K=G.gl,re=g.useProgram("collisionBox"),ue=[],Te=0,we=0,Re=0;Re0){var Nt=a.create(),Qt=Je;a.mul(Nt,Oe.placementInvProjMatrix,g.transform.glCoordMatrix),a.mul(Nt,Nt,Oe.placementViewportMatrix),ue.push({circleArray:zt,circleOffset:we,transform:Qt,invTransform:Nt}),Te+=zt.length/4,we=Te}ht&&re.draw(G,K.LINES,ir.disabled,la.disabled,g.colorModeForRenderPass(),Ee.disabled,gp(Je,g.transform,He),b.id,ht.layoutVertexBuffer,ht.indexBuffer,ht.segments,null,g.transform.zoom,null,null,ht.collisionVertexBuffer)}}if(!(!R||!ue.length)){var rr=g.useProgram("collisionCircle"),Yt=new a.StructArrayLayout2f1f2i16;Yt.resize(Te*4),Yt._trim();for(var ar=0,vr=0,wr=ue;vr=0&&(Ge[Oe.associatedIconIndex]={shiftedAnchor:Wr,angle:Ra})}}if(ue){Re.clear();for(var Nr=g.icon.placedSymbolArray,Ma=0;Ma0){var R=a.browser.now(),G=(R-g.timeAdded)/D,K=c?(R-c.timeAdded)/D:-1,re=b.getSource(),ue=w.coveringZoomLevel({tileSize:re.tileSize,roundZoom:re.roundZoom}),Te=!c||Math.abs(c.tileID.overscaledZ-ue)>Math.abs(g.tileID.overscaledZ-ue),we=Te&&g.refreshedUponExpiration?1:a.clamp(Te?G:1-K,0,1);return g.refreshedUponExpiration&&G>=1&&(g.refreshedUponExpiration=!1),c?{opacity:1,mix:1-we}:{opacity:we,mix:0}}else return{opacity:1,mix:0}}function tc(g,c,b){var d=b.paint.get("background-color"),w=b.paint.get("background-opacity");if(w!==0){var D=g.context,R=D.gl,G=g.transform,K=G.tileSize,re=b.paint.get("background-pattern");if(!g.isPatternMissing(re)){var ue=!re&&d.a===1&&w===1&&g.opaquePassEnabledForLayer()?"opaque":"translucent";if(g.renderPass===ue){var Te=la.disabled,we=g.depthModeForSublayer(0,ue==="opaque"?ir.ReadWrite:ir.ReadOnly),Re=g.colorModeForRenderPass(),Ge=g.useProgram(re?"backgroundPattern":"background"),He=G.coveringTiles({tileSize:K});re&&(D.activeTexture.set(R.TEXTURE0),g.imageManager.bind(g.context));for(var Oe=b.getCrossfadeParameters(),Je=0,ht=He;Je "+b.overscaledZ);var Je=Oe+" "+Re+"kb";Rp(g,Je),R.draw(d,w.TRIANGLES,G,K,ee.alphaBlended,Ee.disabled,Kf(D,a.Color.transparent,He),ue,g.debugBuffer,g.quadTriangleIndexBuffer,g.debugSegments)}function Rp(g,c){g.initDebugOverlayCanvas();var b=g.debugOverlayCanvas,d=g.context.gl,w=g.debugOverlayCanvas.getContext("2d");w.clearRect(0,0,b.width,b.height),w.shadowColor="white",w.shadowBlur=2,w.lineWidth=1.5,w.strokeStyle="white",w.textBaseline="top",w.font="bold 36px Open Sans, sans-serif",w.fillText(c,5,5),w.strokeText(c,5,5),g.debugOverlayTexture.update(b),g.debugOverlayTexture.bind(d.LINEAR,d.CLAMP_TO_EDGE)}function pf(g,c,b){var d=g.context,w=b.implementation;if(g.renderPass==="offscreen"){var D=w.prerender;D&&(g.setCustomLayerDefaults(),d.setColorMode(g.colorModeForRenderPass()),D.call(w,d.gl,g.transform.customLayerMatrix()),d.setDirty(),g.setBaseState())}else if(g.renderPass==="translucent"){g.setCustomLayerDefaults(),d.setColorMode(g.colorModeForRenderPass()),d.setStencilMode(la.disabled);var R=w.renderingMode==="3d"?new ir(g.context.gl.LEQUAL,ir.ReadWrite,g.depthRangeFor3D):g.depthModeForSublayer(0,ir.ReadOnly);d.setDepthMode(R),w.render(d.gl,g.transform.customLayerMatrix()),d.setDirty(),g.setBaseState(),d.bindFramebuffer.set(null)}}var li={symbol:Qm,circle:Qc,heatmap:Tu,line:go,fill:Lp,"fill-extrusion":Il,hillshade:vf,raster:Dp,background:tc,debug:Vv,custom:pf},Li=function(c,b){this.context=new Ne(c),this.transform=b,this._tileTextures={},this.setup(),this.numSublayers=$e.maxUnderzooming+$e.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new mu,this.gpuTimers={}};Li.prototype.resize=function(c,b){if(this.width=c*a.browser.devicePixelRatio,this.height=b*a.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var d=0,w=this.style._order;d256&&this.clearStencil(),d.setColorMode(ee.disabled),d.setDepthMode(ir.disabled);var D=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var R=0,G=b;R256&&this.clearStencil();var c=this.nextStencilID++,b=this.context.gl;return new la({func:b.NOTEQUAL,mask:255},c,255,b.KEEP,b.KEEP,b.REPLACE)},Li.prototype.stencilModeForClipping=function(c){var b=this.context.gl;return new la({func:b.EQUAL,mask:255},this._tileClippingMaskIDs[c.key],0,b.KEEP,b.KEEP,b.REPLACE)},Li.prototype.stencilConfigForOverlap=function(c){var b,d=this.context.gl,w=c.sort(function(re,ue){return ue.overscaledZ-re.overscaledZ}),D=w[w.length-1].overscaledZ,R=w[0].overscaledZ-D+1;if(R>1){this.currentStencilSource=void 0,this.nextStencilID+R>256&&this.clearStencil();for(var G={},K=0;K=0;this.currentLayer--){var Nt=this.style._layers[w[this.currentLayer]],Qt=D[Nt.source],rr=K[Nt.source];this._renderTileClippingMasks(Nt,rr),this.renderLayer(this,Qt,Nt,rr)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer0?b.pop():null},Li.prototype.isPatternMissing=function(c){if(!c)return!1;if(!c.from||!c.to)return!0;var b=this.imageManager.getPattern(c.from.toString()),d=this.imageManager.getPattern(c.to.toString());return!b||!d},Li.prototype.useProgram=function(c,b){this.cache=this.cache||{};var d=""+c+(b?b.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[d]||(this.cache[d]=new pp(this.context,c,Ym[c],b,ec[c],this._showOverdrawInspector)),this.cache[d]},Li.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},Li.prototype.setBaseState=function(){var c=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(c.FUNC_ADD)},Li.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=a.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var c=this.context.gl;this.debugOverlayTexture=new a.Texture(this.context,this.debugOverlayCanvas,c.RGBA)}},Li.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var so=function(c,b){this.points=c,this.planes=b};so.fromInvProjectionMatrix=function(c,b,d){var w=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]],D=Math.pow(2,d),R=w.map(function(re){return a.transformMat4([],re,c)}).map(function(re){return a.scale$1([],re,1/re[3]/b*D)}),G=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]],K=G.map(function(re){var ue=a.sub([],R[re[0]],R[re[1]]),Te=a.sub([],R[re[2]],R[re[1]]),we=a.normalize([],a.cross([],ue,Te)),Re=-a.dot(we,R[re[1]]);return we.concat(Re)});return new so(R,K)};var Es=function(c,b){this.min=c,this.max=b,this.center=a.scale$2([],a.add([],this.min,this.max),.5)};Es.prototype.quadrant=function(c){for(var b=[c%2===0,c<2],d=a.clone$2(this.min),w=a.clone$2(this.max),D=0;D=0;if(R===0)return 0;R!==b.length&&(d=!1)}if(d)return 2;for(var K=0;K<3;K++){for(var re=Number.MAX_VALUE,ue=-Number.MAX_VALUE,Te=0;Tethis.max[K]-this.min[K])return 0}return 1};var _o=function(c,b,d,w){if(c===void 0&&(c=0),b===void 0&&(b=0),d===void 0&&(d=0),w===void 0&&(w=0),isNaN(c)||c<0||isNaN(b)||b<0||isNaN(d)||d<0||isNaN(w)||w<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=c,this.bottom=b,this.left=d,this.right=w};_o.prototype.interpolate=function(c,b,d){return b.top!=null&&c.top!=null&&(this.top=a.number(c.top,b.top,d)),b.bottom!=null&&c.bottom!=null&&(this.bottom=a.number(c.bottom,b.bottom,d)),b.left!=null&&c.left!=null&&(this.left=a.number(c.left,b.left,d)),b.right!=null&&c.right!=null&&(this.right=a.number(c.right,b.right,d)),this},_o.prototype.getCenter=function(c,b){var d=a.clamp((this.left+c-this.right)/2,0,c),w=a.clamp((this.top+b-this.bottom)/2,0,b);return new a.Point(d,w)},_o.prototype.equals=function(c){return this.top===c.top&&this.bottom===c.bottom&&this.left===c.left&&this.right===c.right},_o.prototype.clone=function(){return new _o(this.top,this.bottom,this.left,this.right)},_o.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var $a=function(c,b,d,w,D){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=D===void 0?!0:D,this._minZoom=c||0,this._maxZoom=b||22,this._minPitch=d==null?0:d,this._maxPitch=w==null?60:w,this.setMaxBounds(),this.width=0,this.height=0,this._center=new a.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new _o,this._posMatrixCache={},this._alignedPosMatrixCache={}},fi={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};$a.prototype.clone=function(){var c=new $a(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return c.tileSize=this.tileSize,c.latRange=this.latRange,c.width=this.width,c.height=this.height,c._center=this._center,c.zoom=this.zoom,c.angle=this.angle,c._fov=this._fov,c._pitch=this._pitch,c._unmodified=this._unmodified,c._edgeInsets=this._edgeInsets.clone(),c._calcMatrices(),c},fi.minZoom.get=function(){return this._minZoom},fi.minZoom.set=function(g){this._minZoom!==g&&(this._minZoom=g,this.zoom=Math.max(this.zoom,g))},fi.maxZoom.get=function(){return this._maxZoom},fi.maxZoom.set=function(g){this._maxZoom!==g&&(this._maxZoom=g,this.zoom=Math.min(this.zoom,g))},fi.minPitch.get=function(){return this._minPitch},fi.minPitch.set=function(g){this._minPitch!==g&&(this._minPitch=g,this.pitch=Math.max(this.pitch,g))},fi.maxPitch.get=function(){return this._maxPitch},fi.maxPitch.set=function(g){this._maxPitch!==g&&(this._maxPitch=g,this.pitch=Math.min(this.pitch,g))},fi.renderWorldCopies.get=function(){return this._renderWorldCopies},fi.renderWorldCopies.set=function(g){g===void 0?g=!0:g===null&&(g=!1),this._renderWorldCopies=g},fi.worldSize.get=function(){return this.tileSize*this.scale},fi.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},fi.size.get=function(){return new a.Point(this.width,this.height)},fi.bearing.get=function(){return-this.angle/Math.PI*180},fi.bearing.set=function(g){var c=-a.wrap(g,-180,180)*Math.PI/180;this.angle!==c&&(this._unmodified=!1,this.angle=c,this._calcMatrices(),this.rotationMatrix=a.create$2(),a.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},fi.pitch.get=function(){return this._pitch/Math.PI*180},fi.pitch.set=function(g){var c=a.clamp(g,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==c&&(this._unmodified=!1,this._pitch=c,this._calcMatrices())},fi.fov.get=function(){return this._fov/Math.PI*180},fi.fov.set=function(g){g=Math.max(.01,Math.min(60,g)),this._fov!==g&&(this._unmodified=!1,this._fov=g/180*Math.PI,this._calcMatrices())},fi.zoom.get=function(){return this._zoom},fi.zoom.set=function(g){var c=Math.min(Math.max(g,this.minZoom),this.maxZoom);this._zoom!==c&&(this._unmodified=!1,this._zoom=c,this.scale=this.zoomScale(c),this.tileZoom=Math.floor(c),this.zoomFraction=c-this.tileZoom,this._constrain(),this._calcMatrices())},fi.center.get=function(){return this._center},fi.center.set=function(g){g.lat===this._center.lat&&g.lng===this._center.lng||(this._unmodified=!1,this._center=g,this._constrain(),this._calcMatrices())},fi.padding.get=function(){return this._edgeInsets.toJSON()},fi.padding.set=function(g){this._edgeInsets.equals(g)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,g,1),this._calcMatrices())},fi.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},$a.prototype.isPaddingEqual=function(c){return this._edgeInsets.equals(c)},$a.prototype.interpolatePadding=function(c,b,d){this._unmodified=!1,this._edgeInsets.interpolate(c,b,d),this._constrain(),this._calcMatrices()},$a.prototype.coveringZoomLevel=function(c){var b=(c.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/c.tileSize));return Math.max(0,b)},$a.prototype.getVisibleUnwrappedCoordinates=function(c){var b=[new a.UnwrappedTileID(0,c)];if(this._renderWorldCopies)for(var d=this.pointCoordinate(new a.Point(0,0)),w=this.pointCoordinate(new a.Point(this.width,0)),D=this.pointCoordinate(new a.Point(this.width,this.height)),R=this.pointCoordinate(new a.Point(0,this.height)),G=Math.floor(Math.min(d.x,w.x,D.x,R.x)),K=Math.floor(Math.max(d.x,w.x,D.x,R.x)),re=1,ue=G-re;ue<=K+re;ue++)ue!==0&&b.push(new a.UnwrappedTileID(ue,c));return b},$a.prototype.coveringTiles=function(c){var b=this.coveringZoomLevel(c),d=b;if(c.minzoom!==void 0&&bc.maxzoom&&(b=c.maxzoom);var w=a.MercatorCoordinate.fromLngLat(this.center),D=Math.pow(2,b),R=[D*w.x,D*w.y,0],G=so.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,b),K=c.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(K=b);var re=3,ue=function(kr){return{aabb:new Es([kr*D,0,0],[(kr+1)*D,D,0]),zoom:0,x:0,y:0,wrap:kr,fullyVisible:!1}},Te=[],we=[],Re=b,Ge=c.reparseOverscaled?d:b;if(this._renderWorldCopies)for(var He=1;He<=3;He++)Te.push(ue(-He)),Te.push(ue(He));for(Te.push(ue(0));Te.length>0;){var Oe=Te.pop(),Je=Oe.x,ht=Oe.y,zt=Oe.fullyVisible;if(!zt){var Nt=Oe.aabb.intersects(G);if(Nt===0)continue;zt=Nt===2}var Qt=Oe.aabb.distanceX(R),rr=Oe.aabb.distanceY(R),Yt=Math.max(Math.abs(Qt),Math.abs(rr)),ar=re+(1<ar&&Oe.zoom>=K){we.push({tileID:new a.OverscaledTileID(Oe.zoom===Re?Ge:Oe.zoom,Oe.wrap,Oe.zoom,Je,ht),distanceSq:a.sqrLen([R[0]-.5-Je,R[1]-.5-ht])});continue}for(var vr=0;vr<4;vr++){var wr=(Je<<1)+vr%2,Lr=(ht<<1)+(vr>>1);Te.push({aabb:Oe.aabb.quadrant(vr),zoom:Oe.zoom+1,x:wr,y:Lr,wrap:Oe.wrap,fullyVisible:zt})}}return we.sort(function(kr,Wr){return kr.distanceSq-Wr.distanceSq}).map(function(kr){return kr.tileID})},$a.prototype.resize=function(c,b){this.width=c,this.height=b,this.pixelsToGLUnits=[2/c,-2/b],this._constrain(),this._calcMatrices()},fi.unmodified.get=function(){return this._unmodified},$a.prototype.zoomScale=function(c){return Math.pow(2,c)},$a.prototype.scaleZoom=function(c){return Math.log(c)/Math.LN2},$a.prototype.project=function(c){var b=a.clamp(c.lat,-this.maxValidLatitude,this.maxValidLatitude);return new a.Point(a.mercatorXfromLng(c.lng)*this.worldSize,a.mercatorYfromLat(b)*this.worldSize)},$a.prototype.unproject=function(c){return new a.MercatorCoordinate(c.x/this.worldSize,c.y/this.worldSize).toLngLat()},fi.point.get=function(){return this.project(this.center)},$a.prototype.setLocationAtPoint=function(c,b){var d=this.pointCoordinate(b),w=this.pointCoordinate(this.centerPoint),D=this.locationCoordinate(c),R=new a.MercatorCoordinate(D.x-(d.x-w.x),D.y-(d.y-w.y));this.center=this.coordinateLocation(R),this._renderWorldCopies&&(this.center=this.center.wrap())},$a.prototype.locationPoint=function(c){return this.coordinatePoint(this.locationCoordinate(c))},$a.prototype.pointLocation=function(c){return this.coordinateLocation(this.pointCoordinate(c))},$a.prototype.locationCoordinate=function(c){return a.MercatorCoordinate.fromLngLat(c)},$a.prototype.coordinateLocation=function(c){return c.toLngLat()},$a.prototype.pointCoordinate=function(c){var b=0,d=[c.x,c.y,0,1],w=[c.x,c.y,1,1];a.transformMat4(d,d,this.pixelMatrixInverse),a.transformMat4(w,w,this.pixelMatrixInverse);var D=d[3],R=w[3],G=d[0]/D,K=w[0]/R,re=d[1]/D,ue=w[1]/R,Te=d[2]/D,we=w[2]/R,Re=Te===we?0:(b-Te)/(we-Te);return new a.MercatorCoordinate(a.number(G,K,Re)/this.worldSize,a.number(re,ue,Re)/this.worldSize)},$a.prototype.coordinatePoint=function(c){var b=[c.x*this.worldSize,c.y*this.worldSize,0,1];return a.transformMat4(b,b,this.pixelMatrix),new a.Point(b[0]/b[3],b[1]/b[3])},$a.prototype.getBounds=function(){return new a.LngLatBounds().extend(this.pointLocation(new a.Point(0,0))).extend(this.pointLocation(new a.Point(this.width,0))).extend(this.pointLocation(new a.Point(this.width,this.height))).extend(this.pointLocation(new a.Point(0,this.height)))},$a.prototype.getMaxBounds=function(){return!this.latRange||this.latRange.length!==2||!this.lngRange||this.lngRange.length!==2?null:new a.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]])},$a.prototype.setMaxBounds=function(c){c?(this.lngRange=[c.getWest(),c.getEast()],this.latRange=[c.getSouth(),c.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},$a.prototype.calculatePosMatrix=function(c,b){b===void 0&&(b=!1);var d=c.key,w=b?this._alignedPosMatrixCache:this._posMatrixCache;if(w[d])return w[d];var D=c.canonical,R=this.worldSize/this.zoomScale(D.z),G=D.x+Math.pow(2,D.z)*c.wrap,K=a.identity(new Float64Array(16));return a.translate(K,K,[G*R,D.y*R,0]),a.scale(K,K,[R/a.EXTENT,R/a.EXTENT,1]),a.multiply(K,b?this.alignedProjMatrix:this.projMatrix,K),w[d]=new Float32Array(K),w[d]},$a.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},$a.prototype._constrain=function(){if(!(!this.center||!this.width||!this.height||this._constraining)){this._constraining=!0;var c=-90,b=90,d=-180,w=180,D,R,G,K,re=this.size,ue=this._unmodified;if(this.latRange){var Te=this.latRange;c=a.mercatorYfromLat(Te[1])*this.worldSize,b=a.mercatorYfromLat(Te[0])*this.worldSize,D=b-cb&&(K=b-Oe)}if(this.lngRange){var Je=Re.x,ht=re.x/2;Je-htw&&(G=w-ht)}(G!==void 0||K!==void 0)&&(this.center=this.unproject(new a.Point(G!==void 0?G:Re.x,K!==void 0?K:Re.y))),this._unmodified=ue,this._constraining=!1}},$a.prototype._calcMatrices=function(){if(this.height){var c=this._fov/2,b=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(c)*this.height;var d=Math.PI/2+this._pitch,w=this._fov*(.5+b.y/this.height),D=Math.sin(w)*this.cameraToCenterDistance/Math.sin(a.clamp(Math.PI-d-w,.01,Math.PI-.01)),R=this.point,G=R.x,K=R.y,re=Math.cos(Math.PI/2-this._pitch)*D+this.cameraToCenterDistance,ue=re*1.01,Te=this.height/50,we=new Float64Array(16);a.perspective(we,this._fov,this.width/this.height,Te,ue),we[8]=-b.x*2/this.width,we[9]=b.y*2/this.height,a.scale(we,we,[1,-1,1]),a.translate(we,we,[0,0,-this.cameraToCenterDistance]),a.rotateX(we,we,this._pitch),a.rotateZ(we,we,this.angle),a.translate(we,we,[-G,-K,0]),this.mercatorMatrix=a.scale([],we,[this.worldSize,this.worldSize,this.worldSize]),a.scale(we,we,[1,1,a.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=we,this.invProjMatrix=a.invert([],this.projMatrix);var Re=this.width%2/2,Ge=this.height%2/2,He=Math.cos(this.angle),Oe=Math.sin(this.angle),Je=G-Math.round(G)+He*Re+Oe*Ge,ht=K-Math.round(K)+He*Ge+Oe*Re,zt=new Float64Array(we);if(a.translate(zt,zt,[Je>.5?Je-1:Je,ht>.5?ht-1:ht,0]),this.alignedProjMatrix=zt,we=a.create(),a.scale(we,we,[this.width/2,-this.height/2,1]),a.translate(we,we,[1,-1,0]),this.labelPlaneMatrix=we,we=a.create(),a.scale(we,we,[1,-1,1]),a.translate(we,we,[-1,-1,0]),a.scale(we,we,[2/this.width,2/this.height,1]),this.glCoordMatrix=we,this.pixelMatrix=a.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),we=a.invert(new Float64Array(16),this.pixelMatrix),!we)throw new Error("failed to invert matrix");this.pixelMatrixInverse=we,this._posMatrixCache={},this._alignedPosMatrixCache={}}},$a.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var c=this.pointCoordinate(new a.Point(0,0)),b=[c.x*this.worldSize,c.y*this.worldSize,0,1],d=a.transformMat4(b,b,this.pixelMatrix);return d[3]/this.cameraToCenterDistance},$a.prototype.getCameraPoint=function(){var c=this._pitch,b=Math.tan(c)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new a.Point(0,b))},$a.prototype.getCameraQueryGeometry=function(c){var b=this.getCameraPoint();if(c.length===1)return[c[0],b];for(var d=b.x,w=b.y,D=b.x,R=b.y,G=0,K=c;G=3&&!c.some(function(d){return isNaN(d)})){var b=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(c[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+c[2],+c[1]],zoom:+c[0],bearing:b,pitch:+(c[4]||0)}),!0}return!1},Rl.prototype._updateHashUnthrottled=function(){var c=a.window.location.href.replace(/(#.+)?$/,this.getHashString());try{a.window.history.replaceState(a.window.history.state,null,c)}catch(b){}};var rc={linearity:.3,easing:a.bezier(0,0,.3,1)},mf=a.extend({deceleration:2500,maxSpeed:1400},rc),Fl=a.extend({deceleration:20,maxSpeed:1400},rc),Ls=a.extend({deceleration:1e3,maxSpeed:360},rc),nh=a.extend({deceleration:1e3,maxSpeed:90},rc),yf=function(c){this._map=c,this.clear()};yf.prototype.clear=function(){this._inertiaBuffer=[]},yf.prototype.record=function(c){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:a.browser.now(),settings:c})},yf.prototype._drainInertiaBuffer=function(){for(var c=this._inertiaBuffer,b=a.browser.now(),d=160;c.length>0&&b-c[0].time>d;)c.shift()},yf.prototype._onMoveEnd=function(c){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var b={zoom:0,bearing:0,pitch:0,pan:new a.Point(0,0),pinchAround:void 0,around:void 0},d=0,w=this._inertiaBuffer;d=this._clickTolerance||this._map.fire(new M(c.type,this._map,c))},U.prototype.dblclick=function(c){return this._firePreventable(new M(c.type,this._map,c))},U.prototype.mouseover=function(c){this._map.fire(new M(c.type,this._map,c))},U.prototype.mouseout=function(c){this._map.fire(new M(c.type,this._map,c))},U.prototype.touchstart=function(c){return this._firePreventable(new P(c.type,this._map,c))},U.prototype.touchmove=function(c){this._map.fire(new P(c.type,this._map,c))},U.prototype.touchend=function(c){this._map.fire(new P(c.type,this._map,c))},U.prototype.touchcancel=function(c){this._map.fire(new P(c.type,this._map,c))},U.prototype._firePreventable=function(c){if(this._map.fire(c),c.defaultPrevented)return{}},U.prototype.isEnabled=function(){return!0},U.prototype.isActive=function(){return!1},U.prototype.enable=function(){},U.prototype.disable=function(){};var Z=function(c){this._map=c};Z.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},Z.prototype.mousemove=function(c){this._map.fire(new M(c.type,this._map,c))},Z.prototype.mousedown=function(){this._delayContextMenu=!0},Z.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new M("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},Z.prototype.contextmenu=function(c){this._delayContextMenu?this._contextMenuEvent=c:this._map.fire(new M(c.type,this._map,c)),this._map.listens("contextmenu")&&c.preventDefault()},Z.prototype.isEnabled=function(){return!0},Z.prototype.isActive=function(){return!1},Z.prototype.enable=function(){},Z.prototype.disable=function(){};var $=function(c,b){this._map=c,this._el=c.getCanvasContainer(),this._container=c.getContainer(),this._clickTolerance=b.clickTolerance||1};$.prototype.isEnabled=function(){return!!this._enabled},$.prototype.isActive=function(){return!!this._active},$.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},$.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},$.prototype.mousedown=function(c,b){this.isEnabled()&&c.shiftKey&&c.button===0&&(l.disableDrag(),this._startPos=this._lastPos=b,this._active=!0)},$.prototype.mousemoveWindow=function(c,b){if(this._active){var d=b;if(!(this._lastPos.equals(d)||!this._box&&d.dist(this._startPos)this.numTouches)&&(this.aborted=!0),!this.aborted&&(this.startTime===void 0&&(this.startTime=c.timeStamp),d.length===this.numTouches&&(this.centroid=ae(b),this.touches=X(d,b)))},Pe.prototype.touchmove=function(c,b,d){if(!(this.aborted||!this.centroid)){var w=X(d,b);for(var D in this.touches){var R=this.touches[D],G=w[D];(!G||G.dist(R)>ze)&&(this.aborted=!0)}}},Pe.prototype.touchend=function(c,b,d){if((!this.centroid||c.timeStamp-this.startTime>_e)&&(this.aborted=!0),d.length===0){var w=!this.aborted&&this.centroid;if(this.reset(),w)return w}};var Qe=function(c){this.singleTap=new Pe(c),this.numTaps=c.numTaps,this.reset()};Qe.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Qe.prototype.touchstart=function(c,b,d){this.singleTap.touchstart(c,b,d)},Qe.prototype.touchmove=function(c,b,d){this.singleTap.touchmove(c,b,d)},Qe.prototype.touchend=function(c,b,d){var w=this.singleTap.touchend(c,b,d);if(w){var D=c.timeStamp-this.lastTime0&&(this._active=!0);var w=X(d,b),D=new a.Point(0,0),R=new a.Point(0,0),G=0;for(var K in w){var re=w[K],ue=this._touches[K];ue&&(D._add(re),R._add(re.sub(ue)),G++,w[K]=re)}if(this._touches=w,!(GMath.abs(g.x)}var jt=100,jr=function(g){function c(){g.apply(this,arguments)}return g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c,c.prototype.reset=function(){g.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},c.prototype._start=function(d){this._lastPoints=d,Qa(d[0].sub(d[1]))&&(this._valid=!1)},c.prototype._move=function(d,w,D){var R=d[0].sub(this._lastPoints[0]),G=d[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(R,G,D.timeStamp),!!this._valid){this._lastPoints=d,this._active=!0;var K=(R.y+G.y)/2,re=-.5;return{pitchDelta:K*re}}},c.prototype.gestureBeginsVertically=function(d,w,D){if(this._valid!==void 0)return this._valid;var R=2,G=d.mag()>=R,K=w.mag()>=R;if(!(!G&&!K)){if(!G||!K)return this._firstMove===void 0&&(this._firstMove=D),D-this._firstMove0==w.y>0;return Qa(d)&&Qa(w)&&re}},c}(fr),na={panStep:100,bearingStep:15,pitchStep:10},oa=function(){var c=na;this._panStep=c.panStep,this._bearingStep=c.bearingStep,this._pitchStep=c.pitchStep,this._rotationDisabled=!1};oa.prototype.reset=function(){this._active=!1},oa.prototype.keydown=function(c){var b=this;if(!(c.altKey||c.ctrlKey||c.metaKey)){var d=0,w=0,D=0,R=0,G=0;switch(c.keyCode){case 61:case 107:case 171:case 187:d=1;break;case 189:case 109:case 173:d=-1;break;case 37:c.shiftKey?w=-1:(c.preventDefault(),R=-1);break;case 39:c.shiftKey?w=1:(c.preventDefault(),R=1);break;case 38:c.shiftKey?D=1:(c.preventDefault(),G=-1);break;case 40:c.shiftKey?D=-1:(c.preventDefault(),G=1);break;default:return}return this._rotationDisabled&&(w=0,D=0),{cameraAnimation:function(K){var re=K.getZoom();K.easeTo({duration:300,easeId:"keyboardHandler",easing:Di,zoom:d?Math.round(re)+d*(c.shiftKey?2:1):re,bearing:K.getBearing()+w*b._bearingStep,pitch:K.getPitch()+D*b._pitchStep,offset:[-R*b._panStep,-G*b._panStep],center:K.getCenter()},{originalEvent:c})}}}},oa.prototype.enable=function(){this._enabled=!0},oa.prototype.disable=function(){this._enabled=!1,this.reset()},oa.prototype.isEnabled=function(){return this._enabled},oa.prototype.isActive=function(){return this._active},oa.prototype.disableRotation=function(){this._rotationDisabled=!0},oa.prototype.enableRotation=function(){this._rotationDisabled=!1};function Di(g){return g*(2-g)}var Vi=4.000244140625,en=1/100,bi=1/450,wn=2,Tr=function(c,b){this._map=c,this._el=c.getCanvasContainer(),this._handler=b,this._delta=0,this._defaultZoomRate=en,this._wheelZoomRate=bi,a.bindAll(["_onTimeout"],this)};Tr.prototype.setZoomRate=function(c){this._defaultZoomRate=c},Tr.prototype.setWheelZoomRate=function(c){this._wheelZoomRate=c},Tr.prototype.isEnabled=function(){return!!this._enabled},Tr.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},Tr.prototype.isZooming=function(){return!!this._zooming},Tr.prototype.enable=function(c){this.isEnabled()||(this._enabled=!0,this._aroundCenter=c&&c.around==="center")},Tr.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Tr.prototype.wheel=function(c){if(this.isEnabled()){var b=c.deltaMode===a.window.WheelEvent.DOM_DELTA_LINE?c.deltaY*40:c.deltaY,d=a.browser.now(),w=d-(this._lastWheelEventTime||0);this._lastWheelEventTime=d,b!==0&&b%Vi===0?this._type="wheel":b!==0&&Math.abs(b)<4?this._type="trackpad":w>400?(this._type=null,this._lastValue=b,this._timeout=setTimeout(this._onTimeout,40,c)):this._type||(this._type=Math.abs(w*b)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,b+=this._lastValue)),c.shiftKey&&b&&(b=b/4),this._type&&(this._lastWheelEvent=c,this._delta-=b,this._active||this._start(c)),c.preventDefault()}},Tr.prototype._onTimeout=function(c){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(c)},Tr.prototype._start=function(c){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var b=l.mousePos(this._el,c);this._around=a.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(b)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},Tr.prototype.renderFrame=function(){var c=this;if(this._frameId&&(this._frameId=null,!!this.isActive())){var b=this._map.transform;if(this._delta!==0){var d=this._type==="wheel"&&Math.abs(this._delta)>Vi?this._wheelZoomRate:this._defaultZoomRate,w=wn/(1+Math.exp(-Math.abs(this._delta*d)));this._delta<0&&w!==0&&(w=1/w);var D=typeof this._targetZoom=="number"?b.zoomScale(this._targetZoom):b.scale;this._targetZoom=Math.min(b.maxZoom,Math.max(b.minZoom,b.scaleZoom(D*w))),this._type==="wheel"&&(this._startZoom=b.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var R=typeof this._targetZoom=="number"?this._targetZoom:b.zoom,G=this._startZoom,K=this._easing,re=!1,ue;if(this._type==="wheel"&&G&&K){var Te=Math.min((a.browser.now()-this._lastWheelEventTime)/200,1),we=K(Te);ue=a.number(G,R,we),Te<1?this._frameId||(this._frameId=!0):re=!0}else ue=R,re=!0;return this._active=!0,re&&(this._active=!1,this._finishTimeout=setTimeout(function(){c._zooming=!1,c._handler._triggerRenderFrame(),delete c._targetZoom,delete c._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!re,zoomDelta:ue-b.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},Tr.prototype._smoothOutEasing=function(c){var b=a.ease;if(this._prevEase){var d=this._prevEase,w=(a.browser.now()-d.start)/d.duration,D=d.easing(w+.01)-d.easing(w),R=.27/Math.sqrt(D*D+1e-4)*.01,G=Math.sqrt(.27*.27-R*R);b=a.bezier(R,G,.25,1)}return this._prevEase={start:a.browser.now(),duration:c,easing:b},b},Tr.prototype.reset=function(){this._active=!1};var Hr=function(c,b){this._clickZoom=c,this._tapZoom=b};Hr.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},Hr.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},Hr.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},Hr.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var Ni=function(){this.reset()};Ni.prototype.reset=function(){this._active=!1},Ni.prototype.dblclick=function(c,b){return c.preventDefault(),{cameraAnimation:function(d){d.easeTo({duration:300,zoom:d.getZoom()+(c.shiftKey?-1:1),around:d.unproject(b)},{originalEvent:c})}}},Ni.prototype.enable=function(){this._enabled=!0},Ni.prototype.disable=function(){this._enabled=!1,this.reset()},Ni.prototype.isEnabled=function(){return this._enabled},Ni.prototype.isActive=function(){return this._active};var Ai=function(){this._tap=new Qe({numTouches:1,numTaps:1}),this.reset()};Ai.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},Ai.prototype.touchstart=function(c,b,d){this._swipePoint||(this._tapTime&&c.timeStamp-this._tapTime>me&&this.reset(),this._tapTime?d.length>0&&(this._swipePoint=b[0],this._swipeTouch=d[0].identifier):this._tap.touchstart(c,b,d))},Ai.prototype.touchmove=function(c,b,d){if(!this._tapTime)this._tap.touchmove(c,b,d);else if(this._swipePoint){if(d[0].identifier!==this._swipeTouch)return;var w=b[0],D=w.y-this._swipePoint.y;return this._swipePoint=w,c.preventDefault(),this._active=!0,{zoomDelta:D/128}}},Ai.prototype.touchend=function(c,b,d){if(this._tapTime)this._swipePoint&&d.length===0&&this.reset();else{var w=this._tap.touchend(c,b,d);w&&(this._tapTime=c.timeStamp)}},Ai.prototype.touchcancel=function(){this.reset()},Ai.prototype.enable=function(){this._enabled=!0},Ai.prototype.disable=function(){this._enabled=!1,this.reset()},Ai.prototype.isEnabled=function(){return this._enabled},Ai.prototype.isActive=function(){return this._active};var lo=function(c,b,d){this._el=c,this._mousePan=b,this._touchPan=d};lo.prototype.enable=function(c){this._inertiaOptions=c||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},lo.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},lo.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},lo.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var Rn=function(c,b,d){this._pitchWithRotate=c.pitchWithRotate,this._mouseRotate=b,this._mousePitch=d};Rn.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},Rn.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},Rn.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},Rn.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var pn=function(c,b,d,w){this._el=c,this._touchZoom=b,this._touchRotate=d,this._tapDragZoom=w,this._rotationDisabled=!1,this._enabled=!0};pn.prototype.enable=function(c){this._touchZoom.enable(c),this._rotationDisabled||this._touchRotate.enable(c),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},pn.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},pn.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},pn.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},pn.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},pn.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var pi=function(g){return g.zoom||g.drag||g.pitch||g.rotate},jo=function(g){function c(){g.apply(this,arguments)}return g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c,c}(a.Event);function uo(g){return g.panDelta&&g.panDelta.mag()||g.zoomDelta||g.bearingDelta||g.pitchDelta}var ci=function(c,b){this._map=c,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new yf(c),this._bearingSnap=b.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(b),a.bindAll(["handleEvent","handleWindowEvent"],this);var d=this._el;this._listeners=[[d,"touchstart",{passive:!0}],[d,"touchmove",{passive:!1}],[d,"touchend",void 0],[d,"touchcancel",void 0],[d,"mousedown",void 0],[d,"mousemove",void 0],[d,"mouseup",void 0],[a.window.document,"mousemove",{capture:!0}],[a.window.document,"mouseup",void 0],[d,"mouseover",void 0],[d,"mouseout",void 0],[d,"dblclick",void 0],[d,"click",void 0],[d,"keydown",{capture:!1}],[d,"keyup",void 0],[d,"wheel",{passive:!1}],[d,"contextmenu",void 0],[a.window,"blur",void 0]];for(var w=0,D=this._listeners;wG?Math.min(2,Qt):Math.max(.5,Qt),kr=Math.pow(Lr,1-vr),Wr=R.unproject(zt.add(Nt.mult(vr*kr)).mult(wr));R.setLocationAtPoint(R.renderWorldCopies?Wr.wrap():Wr,Oe)}D._fireMoveEvents(w)},function(vr){D._afterEase(w,vr)},d),this},c.prototype._prepareEase=function(d,w,D){D===void 0&&(D={}),this._moving=!0,!w&&!D.moving&&this.fire(new a.Event("movestart",d)),this._zooming&&!D.zooming&&this.fire(new a.Event("zoomstart",d)),this._rotating&&!D.rotating&&this.fire(new a.Event("rotatestart",d)),this._pitching&&!D.pitching&&this.fire(new a.Event("pitchstart",d))},c.prototype._fireMoveEvents=function(d){this.fire(new a.Event("move",d)),this._zooming&&this.fire(new a.Event("zoom",d)),this._rotating&&this.fire(new a.Event("rotate",d)),this._pitching&&this.fire(new a.Event("pitch",d))},c.prototype._afterEase=function(d,w){if(!(this._easeId&&w&&this._easeId===w)){delete this._easeId;var D=this._zooming,R=this._rotating,G=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,D&&this.fire(new a.Event("zoomend",d)),R&&this.fire(new a.Event("rotateend",d)),G&&this.fire(new a.Event("pitchend",d)),this.fire(new a.Event("moveend",d))}},c.prototype.flyTo=function(d,w){var D=this;if(!d.essential&&a.browser.prefersReducedMotion){var R=a.pick(d,["center","zoom","bearing","pitch","around"]);return this.jumpTo(R,w)}this.stop(),d=a.extend({offset:[0,0],speed:1.2,curve:1.42,easing:a.ease},d);var G=this.transform,K=this.getZoom(),re=this.getBearing(),ue=this.getPitch(),Te=this.getPadding(),we="zoom"in d?a.clamp(+d.zoom,G.minZoom,G.maxZoom):K,Re="bearing"in d?this._normalizeBearing(d.bearing,re):re,Ge="pitch"in d?+d.pitch:ue,He="padding"in d?d.padding:G.padding,Oe=G.zoomScale(we-K),Je=a.Point.convert(d.offset),ht=G.centerPoint.add(Je),zt=G.pointLocation(ht),Nt=a.LngLat.convert(d.center||zt);this._normalizeCenter(Nt);var Qt=G.project(zt),rr=G.project(Nt).sub(Qt),Yt=d.curve,ar=Math.max(G.width,G.height),vr=ar/Oe,wr=rr.mag();if("minZoom"in d){var Lr=a.clamp(Math.min(d.minZoom,K,we),G.minZoom,G.maxZoom),kr=ar/G.zoomScale(Lr-K);Yt=Math.sqrt(kr/wr*2)}var Wr=Yt*Yt;function Ra(ia){var Ba=(vr*vr-ar*ar+(ia?-1:1)*Wr*Wr*wr*wr)/(2*(ia?vr:ar)*Wr*wr);return Math.log(Math.sqrt(Ba*Ba+1)-Ba)}function _a(ia){return(Math.exp(ia)-Math.exp(-ia))/2}function Nr(ia){return(Math.exp(ia)+Math.exp(-ia))/2}function Ma(ia){return _a(ia)/Nr(ia)}var aa=Ra(0),Za=function(ia){return Nr(aa)/Nr(aa+Yt*ia)},Ua=function(ia){return ar*((Nr(aa)*Ma(aa+Yt*ia)-_a(aa))/Wr)/wr},Mi=(Ra(1)-aa)/Yt;if(Math.abs(wr)<1e-6||!isFinite(Mi)){if(Math.abs(ar-vr)<1e-6)return this.easeTo(d,w);var La=vrd.maxDuration&&(d.duration=0),this._zooming=!0,this._rotating=re!==Re,this._pitching=Ge!==ue,this._padding=!G.isPaddingEqual(He),this._prepareEase(w,!1),this._ease(function(ia){var Ba=ia*Mi,tn=1/Za(Ba);G.zoom=ia===1?we:K+G.scaleZoom(tn),D._rotating&&(G.bearing=a.number(re,Re,ia)),D._pitching&&(G.pitch=a.number(ue,Ge,ia)),D._padding&&(G.interpolatePadding(Te,He,ia),ht=G.centerPoint.add(Je));var Fn=ia===1?Nt:G.unproject(Qt.add(rr.mult(Ua(Ba))).mult(tn));G.setLocationAtPoint(G.renderWorldCopies?Fn.wrap():Fn,ht),D._fireMoveEvents(w)},function(){return D._afterEase(w)},d),this},c.prototype.isEasing=function(){return!!this._easeFrameId},c.prototype.stop=function(){return this._stop()},c.prototype._stop=function(d,w){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var D=this._onEaseEnd;delete this._onEaseEnd,D.call(this,w)}if(!d){var R=this.handlers;R&&R.stop(!1)}return this},c.prototype._ease=function(d,w,D){D.animate===!1||D.duration===0?(d(1),w()):(this._easeStart=a.browser.now(),this._easeOptions=D,this._onEaseFrame=d,this._onEaseEnd=w,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},c.prototype._renderFrameCallback=function(){var d=Math.min((a.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(d)),d<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},c.prototype._normalizeBearing=function(d,w){d=a.wrap(d,-180,180);var D=Math.abs(d-w);return Math.abs(d-360-w)180?-360:D<-180?360:0}},c}(a.Evented),Ta=function(c){c===void 0&&(c={}),this.options=c,a.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};Ta.prototype.getDefaultPosition=function(){return"bottom-right"},Ta.prototype.onAdd=function(c){var b=this.options&&this.options.compact;return this._map=c,this._container=l.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=l.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=l.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),b&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),b===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},Ta.prototype.onRemove=function(){l.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0},Ta.prototype._setElementTitle=function(c,b){var d=this._map._getUIString("AttributionControl."+b);c.title=d,c.setAttribute("aria-label",d)},Ta.prototype._toggleAttribution=function(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","true"))},Ta.prototype._updateEditLink=function(){var c=this._editLink;c||(c=this._editLink=this._container.querySelector(".mapbox-improve-map"));var b=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||a.config.ACCESS_TOKEN}];if(c){var d=b.reduce(function(w,D,R){return D.value&&(w+=D.key+"="+D.value+(R=0)return!1;return!0});var G=c.join(" | ");G!==this._attribHTML&&(this._attribHTML=G,c.length?(this._innerContainer.innerHTML=G,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},Ta.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var ui=function(){a.bindAll(["_updateLogo"],this),a.bindAll(["_updateCompact"],this)};ui.prototype.onAdd=function(c){this._map=c,this._container=l.create("div","mapboxgl-ctrl");var b=l.create("a","mapboxgl-ctrl-logo");return b.target="_blank",b.rel="noopener nofollow",b.href="https://www.mapbox.com/",b.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),b.setAttribute("rel","noopener nofollow"),this._container.appendChild(b),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},ui.prototype.onRemove=function(){l.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},ui.prototype.getDefaultPosition=function(){return"bottom-left"},ui.prototype._updateLogo=function(c){(!c||c.sourceDataType==="metadata")&&(this._container.style.display=this._logoRequired()?"block":"none")},ui.prototype._logoRequired=function(){if(this._map.style){var c=this._map.style.sourceCaches;for(var b in c){var d=c[b].getSource();if(d.mapbox_logo)return!0}return!1}},ui.prototype._updateCompact=function(){var c=this._container.children;if(c.length){var b=c[0];this._map.getCanvasContainer().offsetWidth<250?b.classList.add("mapboxgl-compact"):b.classList.remove("mapboxgl-compact")}};var Nl=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};Nl.prototype.add=function(c){var b=++this._id,d=this._queue;return d.push({callback:c,id:b,cancelled:!1}),b},Nl.prototype.remove=function(c){for(var b=this._currentlyRunning,d=b?this._queue.concat(b):this._queue,w=0,D=d;wd.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(d.minPitch!=null&&d.maxPitch!=null&&d.minPitch>d.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(d.minPitch!=null&&d.minPitchxf)throw new Error("maxPitch must be less than or equal to "+xf);var D=new $a(d.minZoom,d.maxZoom,d.minPitch,d.maxPitch,d.renderWorldCopies);if(g.call(this,D,d),this._interactive=d.interactive,this._maxTileCacheSize=d.maxTileCacheSize,this._failIfMajorPerformanceCaveat=d.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=d.preserveDrawingBuffer,this._antialias=d.antialias,this._trackResize=d.trackResize,this._bearingSnap=d.bearingSnap,this._refreshExpiredTiles=d.refreshExpiredTiles,this._fadeDuration=d.fadeDuration,this._crossSourceCollisions=d.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=d.collectResourceTiming,this._renderTaskQueue=new Nl,this._controls=[],this._mapId=a.uniqueId(),this._locale=a.extend({},Hv,d.locale),this._clickTolerance=d.clickTolerance,this._requestManager=new a.RequestManager(d.transformRequest,d.accessToken),typeof d.container=="string"){if(this._container=a.window.document.getElementById(d.container),!this._container)throw new Error("Container '"+d.container+"' not found.")}else if(d.container instanceof ay)this._container=d.container;else throw new Error("Invalid type: 'container' must be a String or HTMLElement.");if(d.maxBounds&&this.setMaxBounds(d.maxBounds),a.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return w._update(!1)}),this.on("moveend",function(){return w._update(!1)}),this.on("zoom",function(){return w._update(!0)}),typeof a.window!="undefined"&&(a.window.addEventListener("online",this._onWindowOnline,!1),a.window.addEventListener("resize",this._onWindowResize,!1),a.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new ci(this,d);var R=typeof d.hash=="string"&&d.hash||void 0;this._hash=d.hash&&new Rl(R).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:d.center,zoom:d.zoom,bearing:d.bearing,pitch:d.pitch}),d.bounds&&(this.resize(),this.fitBounds(d.bounds,a.extend({},d.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=d.localIdeographFontFamily,d.style&&this.setStyle(d.style,{localIdeographFontFamily:d.localIdeographFontFamily}),d.attributionControl&&this.addControl(new Ta({customAttribution:d.customAttribution})),this.addControl(new ui,d.logoPosition),this.on("style.load",function(){w.transform.unmodified&&w.jumpTo(w.style.stylesheet)}),this.on("data",function(G){w._update(G.dataType==="style"),w.fire(new a.Event(G.dataType+"data",G))}),this.on("dataloading",function(G){w.fire(new a.Event(G.dataType+"dataloading",G))})}g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c;var b={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return c.prototype._getMapId=function(){return this._mapId},c.prototype.addControl=function(w,D){if(D===void 0&&(w.getDefaultPosition?D=w.getDefaultPosition():D="top-right"),!w||!w.onAdd)return this.fire(new a.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var R=w.onAdd(this);this._controls.push(w);var G=this._controlPositions[D];return D.indexOf("bottom")!==-1?G.insertBefore(R,G.firstChild):G.appendChild(R),this},c.prototype.removeControl=function(w){if(!w||!w.onRemove)return this.fire(new a.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var D=this._controls.indexOf(w);return D>-1&&this._controls.splice(D,1),w.onRemove(this),this},c.prototype.hasControl=function(w){return this._controls.indexOf(w)>-1},c.prototype.resize=function(w){var D=this._containerDimensions(),R=D[0],G=D[1];this._resizeCanvas(R,G),this.transform.resize(R,G),this.painter.resize(R,G);var K=!this._moving;return K&&(this.stop(),this.fire(new a.Event("movestart",w)).fire(new a.Event("move",w))),this.fire(new a.Event("resize",w)),K&&this.fire(new a.Event("moveend",w)),this},c.prototype.getBounds=function(){return this.transform.getBounds()},c.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},c.prototype.setMaxBounds=function(w){return this.transform.setMaxBounds(a.LngLatBounds.convert(w)),this._update()},c.prototype.setMinZoom=function(w){if(w=w==null?oh:w,w>=oh&&w<=this.transform.maxZoom)return this.transform.minZoom=w,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=w,this._update(),this.getZoom()>w&&this.setZoom(w),this;throw new Error("maxZoom must be greater than the current minZoom")},c.prototype.getMaxZoom=function(){return this.transform.maxZoom},c.prototype.setMinPitch=function(w){if(w=w==null?Lo:w,w=Lo&&w<=this.transform.maxPitch)return this.transform.minPitch=w,this._update(),this.getPitch()xf)throw new Error("maxPitch must be less than or equal to "+xf);if(w>=this.transform.minPitch)return this.transform.maxPitch=w,this._update(),this.getPitch()>w&&this.setPitch(w),this;throw new Error("maxPitch must be greater than the current minPitch")},c.prototype.getMaxPitch=function(){return this.transform.maxPitch},c.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},c.prototype.setRenderWorldCopies=function(w){return this.transform.renderWorldCopies=w,this._update()},c.prototype.project=function(w){return this.transform.locationPoint(a.LngLat.convert(w))},c.prototype.unproject=function(w){return this.transform.pointLocation(a.Point.convert(w))},c.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},c.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},c.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},c.prototype._createDelegatedListener=function(w,D,R){var G=this,K;if(w==="mouseenter"||w==="mouseover"){var re=!1,ue=function(Oe){var Je=G.getLayer(D)?G.queryRenderedFeatures(Oe.point,{layers:[D]}):[];Je.length?re||(re=!0,R.call(G,new M(w,G,Oe.originalEvent,{features:Je}))):re=!1},Te=function(){re=!1};return{layer:D,listener:R,delegates:{mousemove:ue,mouseout:Te}}}else if(w==="mouseleave"||w==="mouseout"){var we=!1,Re=function(Oe){var Je=G.getLayer(D)?G.queryRenderedFeatures(Oe.point,{layers:[D]}):[];Je.length?we=!0:we&&(we=!1,R.call(G,new M(w,G,Oe.originalEvent)))},Ge=function(Oe){we&&(we=!1,R.call(G,new M(w,G,Oe.originalEvent)))};return{layer:D,listener:R,delegates:{mousemove:Re,mouseout:Ge}}}else{var He=function(Oe){var Je=G.getLayer(D)?G.queryRenderedFeatures(Oe.point,{layers:[D]}):[];Je.length&&(Oe.features=Je,R.call(G,Oe),delete Oe.features)};return{layer:D,listener:R,delegates:(K={},K[w]=He,K)}}},c.prototype.on=function(w,D,R){if(R===void 0)return g.prototype.on.call(this,w,D);var G=this._createDelegatedListener(w,D,R);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[w]=this._delegatedListeners[w]||[],this._delegatedListeners[w].push(G);for(var K in G.delegates)this.on(K,G.delegates[K]);return this},c.prototype.once=function(w,D,R){if(R===void 0)return g.prototype.once.call(this,w,D);var G=this._createDelegatedListener(w,D,R);for(var K in G.delegates)this.once(K,G.delegates[K]);return this},c.prototype.off=function(w,D,R){var G=this;if(R===void 0)return g.prototype.off.call(this,w,D);var K=function(re){for(var ue=re[w],Te=0;Te180;){var R=b.locationPoint(g);if(R.x>=0&&R.y>=0&&R.x<=b.width&&R.y<=b.height)break;g.lng>b.center.lng?g.lng-=360:g.lng+=360}return g}var Zv={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function qp(g,c,b){var d=g.classList;for(var w in Zv)d.remove("mapboxgl-"+b+"-anchor-"+w);d.add("mapboxgl-"+b+"-anchor-"+c)}var lh=function(g){function c(b,d){if(g.call(this),(b instanceof a.window.HTMLElement||d)&&(b=a.extend({element:b},d)),a.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=b&&b.anchor||"center",this._color=b&&b.color||"#3FB1CE",this._scale=b&&b.scale||1,this._draggable=b&&b.draggable||!1,this._clickTolerance=b&&b.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=b&&b.rotation||0,this._rotationAlignment=b&&b.rotationAlignment||"auto",this._pitchAlignment=b&&b.pitchAlignment&&b.pitchAlignment!=="auto"?b.pitchAlignment:this._rotationAlignment,!b||!b.element){this._defaultMarker=!0,this._element=l.create("div"),this._element.setAttribute("aria-label","Map marker");var w=l.createNS("http://www.w3.org/2000/svg","svg"),D=41,R=27;w.setAttributeNS(null,"display","block"),w.setAttributeNS(null,"height",D+"px"),w.setAttributeNS(null,"width",R+"px"),w.setAttributeNS(null,"viewBox","0 0 "+R+" "+D);var G=l.createNS("http://www.w3.org/2000/svg","g");G.setAttributeNS(null,"stroke","none"),G.setAttributeNS(null,"stroke-width","1"),G.setAttributeNS(null,"fill","none"),G.setAttributeNS(null,"fill-rule","evenodd");var K=l.createNS("http://www.w3.org/2000/svg","g");K.setAttributeNS(null,"fill-rule","nonzero");var re=l.createNS("http://www.w3.org/2000/svg","g");re.setAttributeNS(null,"transform","translate(3.0, 29.0)"),re.setAttributeNS(null,"fill","#000000");for(var ue=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}],Te=0,we=ue;Te=w}this._isDragging&&(this._pos=d.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new a.Event("dragstart"))),this.fire(new a.Event("drag")))},c.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new a.Event("dragend")),this._state="inactive"},c.prototype._addDragHandler=function(d){this._element.contains(d.originalEvent.target)&&(d.preventDefault(),this._positionDelta=d.point.sub(this._pos).add(this._offset),this._pointerdownPos=d.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},c.prototype.setDraggable=function(d){return this._draggable=!!d,this._map&&(d?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},c.prototype.isDraggable=function(){return this._draggable},c.prototype.setRotation=function(d){return this._rotation=d||0,this._update(),this},c.prototype.getRotation=function(){return this._rotation},c.prototype.setRotationAlignment=function(d){return this._rotationAlignment=d||"auto",this._update(),this},c.prototype.getRotationAlignment=function(){return this._rotationAlignment},c.prototype.setPitchAlignment=function(d){return this._pitchAlignment=d&&d!=="auto"?d:this._rotationAlignment,this._update(),this},c.prototype.getPitchAlignment=function(){return this._pitchAlignment},c}(a.Evented),oy={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},bf;function Yv(g){bf!==void 0?g(bf):a.window.navigator.permissions!==void 0?a.window.navigator.permissions.query({name:"geolocation"}).then(function(c){bf=c.state!=="denied",g(bf)}):(bf=!!a.window.navigator.geolocation,g(bf))}var uh=0,ic=!1,_1=function(g){function c(b){g.call(this),this.options=a.extend({},oy,b),a.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c,c.prototype.onAdd=function(d){return this._map=d,this._container=l.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),Yv(this._setupUI),this._container},c.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(a.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),l.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,uh=0,ic=!1},c.prototype._isOutOfMapMaxBounds=function(d){var w=this._map.getMaxBounds(),D=d.coords;return w&&(D.longitudew.getEast()||D.latitudew.getNorth())},c.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break}},c.prototype._onSuccess=function(d){if(this._map){if(this._isOutOfMapMaxBounds(d)){this._setErrorState(),this.fire(new a.Event("outofmaxbounds",d)),this._updateMarker(),this._finish();return}if(this.options.trackUserLocation)switch(this._lastKnownPosition=d,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(d),(!this.options.trackUserLocation||this._watchState==="ACTIVE_LOCK")&&this._updateCamera(d),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new a.Event("geolocate",d)),this._finish()}},c.prototype._updateCamera=function(d){var w=new a.LngLat(d.coords.longitude,d.coords.latitude),D=d.coords.accuracy,R=this._map.getBearing(),G=a.extend({bearing:R},this.options.fitBoundsOptions);this._map.fitBounds(w.toBounds(D),G,{geolocateSource:!0})},c.prototype._updateMarker=function(d){if(d){var w=new a.LngLat(d.coords.longitude,d.coords.latitude);this._accuracyCircleMarker.setLngLat(w).addTo(this._map),this._userLocationDotMarker.setLngLat(w).addTo(this._map),this._accuracy=d.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},c.prototype._updateCircleRadius=function(){var d=this._map._container.clientHeight/2,w=this._map.unproject([0,d]),D=this._map.unproject([1,d]),R=w.distanceTo(D),G=Math.ceil(2*this._accuracy/R);this._circleElement.style.width=G+"px",this._circleElement.style.height=G+"px"},c.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},c.prototype._onError=function(d){if(this._map){if(this.options.trackUserLocation)if(d.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var w=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=w,this._geolocateButton.setAttribute("aria-label",w),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(d.code===3&&ic)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new a.Event("error",d)),this._finish()}},c.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},c.prototype._setupUI=function(d){var w=this;if(this._container.addEventListener("contextmenu",function(G){return G.preventDefault()}),this._geolocateButton=l.create("button","mapboxgl-ctrl-geolocate",this._container),l.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",d===!1){a.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var D=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=D,this._geolocateButton.setAttribute("aria-label",D)}else{var R=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=R,this._geolocateButton.setAttribute("aria-label",R)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=l.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new lh(this._dotElement),this._circleElement=l.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new lh({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",function(G){var K=G.originalEvent&&G.originalEvent.type==="resize";!G.geolocateSource&&w._watchState==="ACTIVE_LOCK"&&!K&&(w._watchState="BACKGROUND",w._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),w._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),w.fire(new a.Event("trackuserlocationend")))})},c.prototype.trigger=function(){if(!this._setup)return a.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new a.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":uh--,ic=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new a.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new a.Event("trackuserlocationstart"));break}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error");break}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),uh++;var d;uh>1?(d={maximumAge:6e5,timeout:0},ic=!0):(d=this.options.positionOptions,ic=!1),this._geolocationWatchID=a.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,d)}}else a.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},c.prototype._clearWatch=function(){a.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},c}(a.Evented),sy={maxWidth:100,unit:"metric"},nc=function(c){this.options=a.extend({},sy,c),a.bindAll(["_onMove","setUnit"],this)};nc.prototype.getDefaultPosition=function(){return"bottom-left"},nc.prototype._onMove=function(){ly(this._map,this._container,this.options)},nc.prototype.onAdd=function(c){return this._map=c,this._container=l.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",c.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},nc.prototype.onRemove=function(){l.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},nc.prototype.setUnit=function(c){this.options.unit=c,ly(this._map,this._container,this.options)};function ly(g,c,b){var d=b&&b.maxWidth||100,w=g._container.clientHeight/2,D=g.unproject([0,w]),R=g.unproject([d,w]),G=D.distanceTo(R);if(b&&b.unit==="imperial"){var K=3.2808*G;if(K>5280){var re=K/5280;fh(c,d,re,g._getUIString("ScaleControl.Miles"))}else fh(c,d,K,g._getUIString("ScaleControl.Feet"))}else if(b&&b.unit==="nautical"){var ue=G/1852;fh(c,d,ue,g._getUIString("ScaleControl.NauticalMiles"))}else G>=1e3?fh(c,d,G/1e3,g._getUIString("ScaleControl.Kilometers")):fh(c,d,G,g._getUIString("ScaleControl.Meters"))}function fh(g,c,b,d){var w=b1(b),D=w/b;g.style.width=c*D+"px",g.innerHTML=w+" "+d}function x1(g){var c=Math.pow(10,Math.ceil(-Math.log(g)/Math.LN10));return Math.round(g*c)/c}function b1(g){var c=Math.pow(10,(""+Math.floor(g)).length-1),b=g/c;return b=b>=10?10:b>=5?5:b>=3?3:b>=2?2:b>=1?1:x1(b),c*b}var Qs=function(c){this._fullscreen=!1,c&&c.container&&(c.container instanceof a.window.HTMLElement?this._container=c.container:a.warnOnce("Full screen control 'container' must be a DOM element.")),a.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in a.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in a.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in a.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in a.window.document&&(this._fullscreenchange="MSFullscreenChange")};Qs.prototype.onAdd=function(c){return this._map=c,this._container||(this._container=this._map.getContainer()),this._controlContainer=l.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",a.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},Qs.prototype.onRemove=function(){l.remove(this._controlContainer),this._map=null,a.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},Qs.prototype._checkFullscreenSupport=function(){return!!(a.window.document.fullscreenEnabled||a.window.document.mozFullScreenEnabled||a.window.document.msFullscreenEnabled||a.window.document.webkitFullscreenEnabled)},Qs.prototype._setupUI=function(){var c=this._fullscreenButton=l.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);l.create("span","mapboxgl-ctrl-icon",c).setAttribute("aria-hidden",!0),c.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),a.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},Qs.prototype._updateTitle=function(){var c=this._getTitle();this._fullscreenButton.setAttribute("aria-label",c),this._fullscreenButton.title=c},Qs.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},Qs.prototype._isFullscreen=function(){return this._fullscreen},Qs.prototype._changeIcon=function(){var c=a.window.document.fullscreenElement||a.window.document.mozFullScreenElement||a.window.document.webkitFullscreenElement||a.window.document.msFullscreenElement;c===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},Qs.prototype._onClickFullscreen=function(){this._isFullscreen()?a.window.document.exitFullscreen?a.window.document.exitFullscreen():a.window.document.mozCancelFullScreen?a.window.document.mozCancelFullScreen():a.window.document.msExitFullscreen?a.window.document.msExitFullscreen():a.window.document.webkitCancelFullScreen&&a.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var w1={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},T1=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),c3=function(g){function c(b){g.call(this),this.options=a.extend(Object.create(w1),b),a.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return g&&(c.__proto__=g),c.prototype=Object.create(g&&g.prototype),c.prototype.constructor=c,c.prototype.addTo=function(d){return this._map&&this.remove(),this._map=d,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new a.Event("open")),this},c.prototype.isOpen=function(){return!!this._map},c.prototype.remove=function(){return this._content&&l.remove(this._content),this._container&&(l.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new a.Event("close")),this},c.prototype.getLngLat=function(){return this._lngLat},c.prototype.setLngLat=function(d){return this._lngLat=a.LngLat.convert(d),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},c.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this},c.prototype.getElement=function(){return this._container},c.prototype.setText=function(d){return this.setDOMContent(a.window.document.createTextNode(d))},c.prototype.setHTML=function(d){var w=a.window.document.createDocumentFragment(),D=a.window.document.createElement("body"),R;for(D.innerHTML=d;R=D.firstChild,!!R;)w.appendChild(R);return this.setDOMContent(w)},c.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},c.prototype.setMaxWidth=function(d){return this.options.maxWidth=d,this._update(),this},c.prototype.setDOMContent=function(d){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=l.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(d),this._createCloseButton(),this._update(),this._focusFirstElement(),this},c.prototype.addClassName=function(d){this._container&&this._container.classList.add(d)},c.prototype.removeClassName=function(d){this._container&&this._container.classList.remove(d)},c.prototype.setOffset=function(d){return this.options.offset=d,this._update(),this},c.prototype.toggleClassName=function(d){if(this._container)return this._container.classList.toggle(d)},c.prototype._createCloseButton=function(){this.options.closeButton&&(this._closeButton=l.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))},c.prototype._onMouseUp=function(d){this._update(d.point)},c.prototype._onMouseMove=function(d){this._update(d.point)},c.prototype._onDrag=function(d){this._update(d.point)},c.prototype._update=function(d){var w=this,D=this._lngLat||this._trackPointer;if(!(!this._map||!D||!this._content)&&(this._container||(this._container=l.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=l.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function(Re){return w._container.classList.add(Re)}),this._trackPointer&&this._container.classList.add("mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=Su(this._lngLat,this._pos,this._map.transform)),!(this._trackPointer&&!d))){var R=this._pos=this._trackPointer&&d?d:this._map.project(this._lngLat),G=this.options.anchor,K=A1(this.options.offset);if(!G){var re=this._container.offsetWidth,ue=this._container.offsetHeight,Te;R.y+K.bottom.ythis._map.transform.height-ue?Te=["bottom"]:Te=[],R.xthis._map.transform.width-re/2&&Te.push("right"),Te.length===0?G="bottom":G=Te.join("-")}var we=R.add(K[G]).round();l.setTransform(this._container,Zv[G]+" translate("+we.x+"px,"+we.y+"px)"),qp(this._container,G,"popup")}},c.prototype._focusFirstElement=function(){if(!(!this.options.focusAfterOpen||!this._container)){var d=this._container.querySelector(T1);d&&d.focus()}},c.prototype._onClose=function(){this.remove()},c}(a.Evented);function A1(g){if(g)if(typeof g=="number"){var c=Math.round(Math.sqrt(.5*Math.pow(g,2)));return{center:new a.Point(0,0),top:new a.Point(0,g),"top-left":new a.Point(c,c),"top-right":new a.Point(-c,c),bottom:new a.Point(0,-g),"bottom-left":new a.Point(c,-c),"bottom-right":new a.Point(-c,-c),left:new a.Point(g,0),right:new a.Point(-g,0)}}else if(g instanceof a.Point||Array.isArray(g)){var b=a.Point.convert(g);return{center:b,top:b,"top-left":b,"top-right":b,bottom:b,"bottom-left":b,"bottom-right":b,left:b,right:b}}else return{center:a.Point.convert(g.center||[0,0]),top:a.Point.convert(g.top||[0,0]),"top-left":a.Point.convert(g["top-left"]||[0,0]),"top-right":a.Point.convert(g["top-right"]||[0,0]),bottom:a.Point.convert(g.bottom||[0,0]),"bottom-left":a.Point.convert(g["bottom-left"]||[0,0]),"bottom-right":a.Point.convert(g["bottom-right"]||[0,0]),left:a.Point.convert(g.left||[0,0]),right:a.Point.convert(g.right||[0,0])};else return A1(new a.Point(0,0))}var Tn={version:a.version,supported:s,setRTLTextPlugin:a.setRTLTextPlugin,getRTLTextPluginStatus:a.getRTLTextPluginStatus,Map:ny,NavigationControl:Mu,GeolocateControl:_1,AttributionControl:Ta,ScaleControl:nc,FullscreenControl:Qs,Popup:c3,Marker:lh,Style:Ts,LngLat:a.LngLat,LngLatBounds:a.LngLatBounds,Point:a.Point,MercatorCoordinate:a.MercatorCoordinate,Evented:a.Evented,config:a.config,prewarm:Or,clearPrewarmedResources:ca,get accessToken(){return a.config.ACCESS_TOKEN},set accessToken(g){a.config.ACCESS_TOKEN=g},get baseApiUrl(){return a.config.API_URL},set baseApiUrl(g){a.config.API_URL=g},get workerCount(){return tr.workerCount},set workerCount(g){tr.workerCount=g},get maxParallelImageRequests(){return a.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(g){a.config.MAX_PARALLEL_IMAGE_REQUESTS=g},clearStorage:function(c){a.clearTileCache(c)},workerUrl:""};return Tn}),r})});var CH=pe((Pbe,kH)=>{kH.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xE7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xE9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xE9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xE3)o.?tom(e|\xE9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}});var Gb=pe(ki=>{"use strict";Object.defineProperty(ki,"__esModule",{value:!0});var Zs=63710088e-1,_A={centimeters:Zs*100,centimetres:Zs*100,degrees:360/(2*Math.PI),feet:Zs*3.28084,inches:Zs*39.37,kilometers:Zs/1e3,kilometres:Zs/1e3,meters:Zs,metres:Zs,miles:Zs/1609.344,millimeters:Zs*1e3,millimetres:Zs*1e3,nauticalmiles:Zs/1852,radians:1,yards:Zs*1.0936},gA={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,nauticalmiles:29155334959812285e-23,millimeters:1e6,millimetres:1e6,yards:1.195990046};function tv(e,t,r={}){let i={type:"Feature"};return(r.id===0||r.id)&&(i.id=r.id),r.bbox&&(i.bbox=r.bbox),i.properties=t||{},i.geometry=e,i}function Bde(e,t,r={}){switch(e){case"Point":return xA(t).geometry;case"LineString":return wA(t).geometry;case"Polygon":return bA(t).geometry;case"MultiPoint":return LH(t).geometry;case"MultiLineString":return EH(t).geometry;case"MultiPolygon":return DH(t).geometry;default:throw new Error(e+" is invalid")}}function xA(e,t,r={}){if(!e)throw new Error("coordinates is required");if(!Array.isArray(e))throw new Error("coordinates must be an Array");if(e.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!Vb(e[0])||!Vb(e[1]))throw new Error("coordinates must contain numbers");return tv({type:"Point",coordinates:e},t,r)}function Ode(e,t,r={}){return Hb(e.map(i=>xA(i,t)),r)}function bA(e,t,r={}){for(let a of e){if(a.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(a[a.length-1].length!==a[0].length)throw new Error("First and last Position are not equivalent.");for(let s=0;sbA(i,t)),r)}function wA(e,t,r={}){if(e.length<2)throw new Error("coordinates must be an array of two or more positions");return tv({type:"LineString",coordinates:e},t,r)}function Vde(e,t,r={}){return Hb(e.map(i=>wA(i,t)),r)}function Hb(e,t={}){let r={type:"FeatureCollection"};return t.id&&(r.id=t.id),t.bbox&&(r.bbox=t.bbox),r.features=e,r}function EH(e,t,r={}){return tv({type:"MultiLineString",coordinates:e},t,r)}function LH(e,t,r={}){return tv({type:"MultiPoint",coordinates:e},t,r)}function DH(e,t,r={}){return tv({type:"MultiPolygon",coordinates:e},t,r)}function Hde(e,t,r={}){return tv({type:"GeometryCollection",geometries:e},t,r)}function Gde(e,t=0){if(t&&!(t>=0))throw new Error("precision must be a positive number");let r=Math.pow(10,t||0);return Math.round(e*r)/r}function PH(e,t="kilometers"){let r=_A[t];if(!r)throw new Error(t+" units is invalid");return e*r}function TA(e,t="kilometers"){let r=_A[t];if(!r)throw new Error(t+" units is invalid");return e/r}function Zde(e,t){return zH(TA(e,t))}function Yde(e){let t=e%360;return t<0&&(t+=360),t}function Wde(e){return e=e%360,e>180?e-360:e<-180?e+360:e}function zH(e){return e%(2*Math.PI)*180/Math.PI}function Xde(e){return e%360*Math.PI/180}function jde(e,t="kilometers",r="kilometers"){if(!(e>=0))throw new Error("length must be a positive number");return PH(TA(e,t),r)}function Jde(e,t="meters",r="kilometers"){if(!(e>=0))throw new Error("area must be a positive number");let i=gA[t];if(!i)throw new Error("invalid original units");let a=gA[r];if(!a)throw new Error("invalid final units");return e/i*a}function Vb(e){return!isNaN(e)&&e!==null&&!Array.isArray(e)}function Kde(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Qde(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(e.length!==4&&e.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach(t=>{if(!Vb(t))throw new Error("bbox must only contain numbers")})}function $de(e){if(!e)throw new Error("id is required");if(["string","number"].indexOf(typeof e)===-1)throw new Error("id must be a number or a string")}ki.areaFactors=gA;ki.azimuthToBearing=Wde;ki.bearingToAzimuth=Yde;ki.convertArea=Jde;ki.convertLength=jde;ki.degreesToRadians=Xde;ki.earthRadius=Zs;ki.factors=_A;ki.feature=tv;ki.featureCollection=Hb;ki.geometry=Bde;ki.geometryCollection=Hde;ki.isNumber=Vb;ki.isObject=Kde;ki.lengthToDegrees=Zde;ki.lengthToRadians=TA;ki.lineString=wA;ki.lineStrings=Vde;ki.multiLineString=EH;ki.multiPoint=LH;ki.multiPolygon=DH;ki.point=xA;ki.points=Ode;ki.polygon=bA;ki.polygons=Ude;ki.radiansToDegrees=zH;ki.radiansToLength=PH;ki.round=Gde;ki.validateBBox=Qde;ki.validateId=$de});var Yb=pe(vo=>{"use strict";Object.defineProperty(vo,"__esModule",{value:!0});var us=Gb();function v1(e,t,r){if(e!==null)for(var i,a,s,l,f,h,v,m=0,_=0,T,S=e.type,C=S==="FeatureCollection",E=S==="Feature",L=C?e.features.length:1,z=0;zh||C>v||E>m){f=_,h=i,v=C,m=E,s=0;return}var L=us.lineString.call(void 0,[f,_],r.properties);if(t(L,i,a,E,s)===!1)return!1;s++,f=_})===!1)return!1}}})}function ope(e,t,r){var i=r,a=!1;return FH(e,function(s,l,f,h,v){a===!1&&r===void 0?i=s:i=t(i,s,l,f,h,v),a=!0}),i}function qH(e,t){if(!e)throw new Error("geojson is required");Zb(e,function(r,i,a){if(r.geometry!==null){var s=r.geometry.type,l=r.geometry.coordinates;switch(s){case"LineString":if(t(r,i,a,0,0)===!1)return!1;break;case"Polygon":for(var f=0;f{"use strict";Object.defineProperty(Wb,"__esModule",{value:!0});var NH=Gb(),fpe=Yb();function UH(e){return fpe.geomReduce.call(void 0,e,(t,r)=>t+cpe(r),0)}function cpe(e){let t=0,r;switch(e.type){case"Polygon":return BH(e.coordinates);case"MultiPolygon":for(r=0;r0){t+=Math.abs(OH(e[0]));for(let r=1;r=t?(i+2)%t:i+2],f=a[0]*MA,h=s[1]*MA,v=l[0]*MA;r+=(v-f)*Math.sin(h),i++}return r*hpe}var vpe=UH;Wb.area=UH;Wb.default=vpe});var GH=pe(Xb=>{"use strict";Object.defineProperty(Xb,"__esModule",{value:!0});var dpe=Gb(),ppe=Yb();function HH(e,t={}){let r=0,i=0,a=0;return ppe.coordEach.call(void 0,e,function(s){r+=s[0],i+=s[1],a++},!0),dpe.point.call(void 0,[r/a,i/a],t.properties)}var mpe=HH;Xb.centroid=HH;Xb.default=mpe});var YH=pe(jb=>{"use strict";Object.defineProperty(jb,"__esModule",{value:!0});var ype=Yb();function ZH(e,t={}){if(e.bbox!=null&&t.recompute!==!0)return e.bbox;let r=[1/0,1/0,-1/0,-1/0];return ype.coordEach.call(void 0,e,i=>{r[0]>i[0]&&(r[0]=i[0]),r[1]>i[1]&&(r[1]=i[1]),r[2]{"use strict";var _pe=ja(),jH=CH(),{area:xpe}=VH(),{centroid:bpe}=GH(),{bbox:wpe}=YH(),WH=x_(),Am=Th(),Tpe=cc(),Ape=My(),Jb=hx(),XH=Object.keys(jH),Mpe={"ISO-3":WH,"USA-states":WH,"country names":Spe};function Spe(e){for(var t=0;t0&&m[_+1][0]<0)return _;return null}switch(i==="RUS"||i==="FJI"?s=function(m){var _;if(v(m)===null)_=m;else for(_=new Array(m.length),h=0;h_?T[S++]=[m[h][0]+360,m[h][1]]:h===_?(T[S++]=m[h],T[S++]=[m[h][0],-90]):T[S++]=m[h];var C=Jb.tester(T);C.pts.pop(),a.push(C)}:s=function(m){a.push(Jb.tester(m))},t.type){case"MultiPolygon":for(l=0;l0?C.properties.ct=Lpe(C):C.properties.ct=[NaN,NaN],T.fIn=m,T.fOut=C,a.push(C)}else Am.log(["Location",T.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete i[_]}switch(r.type){case"FeatureCollection":var h=r.features;for(s=0;sa&&(a=f,r=l)}else r=t;return bpe(r).geometry.coordinates}function Dpe(e){var t=window.PlotlyGeoAssets||{},r=[];function i(h){return new Promise(function(v,m){_pe.json(h,function(_,T){if(_){delete t[h];var S=_.status===404?'GeoJSON at URL "'+h+'" does not exist.':"Unexpected error while fetching from "+h;return m(new Error(S))}return t[h]=T,v(T)})})}function a(h){return new Promise(function(v,m){var _=0,T=setInterval(function(){if(t[h]&&t[h]!=="pending")return clearInterval(T),v(t[h]);if(_>100)return clearInterval(T),m("Unexpected error while fetching from "+h);_++},50)})}for(var s=0;s{"use strict";var Zd=Bt(),zpe=co().sanitizeHTML,Ipe=cA(),QH=zc();function $H(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=QH.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var fu=$H.prototype;fu.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=Kb(t)};fu.needsNewImage=function(e){var t=this.subplot.map;return t.getSource(this.idSource)&&this.sourceType==="image"&&e.sourcetype==="image"&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))};fu.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type};fu.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]};fu.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]};fu.updateImage=function(e){var t=this.subplot.map;t.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var r=this.findFollowingMapboxLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)};fu.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,!!Kb(e)){var r=Rpe(e);t.addSource(this.idSource,r)}};fu.findFollowingMapboxLayerId=function(e){if(e==="traces")for(var t=this.subplot.getMapLayers(),r=0;r0){for(var r=0;r0}function eG(e){var t={},r={};switch(e.type){case"circle":Zd.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":Zd.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":Zd.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var i=e.symbol,a=Ipe(i.textposition,i.iconsize);Zd.extendFlat(t,{"icon-image":i.icon+"-15","icon-size":i.iconsize/10,"text-field":i.text,"text-size":i.textfont.size,"text-anchor":a.anchor,"text-offset":a.offset,"symbol-placement":i.placement}),Zd.extendFlat(r,{"icon-color":e.color,"text-color":i.textfont.color,"text-opacity":e.opacity});break;case"raster":Zd.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity});break}return{layout:t,paint:r}}function Rpe(e){var t=e.sourcetype,r=e.source,i={type:t},a;return t==="geojson"?a="data":t==="vector"?a=typeof r=="string"?"url":"tiles":t==="raster"?(a="tiles",i.tileSize=256):t==="image"&&(a="url",i.coordinates=e.coordinates),i[a]=r,e.sourceattribution&&(i.attribution=zpe(e.sourceattribution)),i}tG.exports=function(t,r,i){var a=new $H(t,r);return a.update(i),a}});var cG=pe((Obe,fG)=>{"use strict";var kA=yA(),CA=Bt(),oG=SA(),aG=sa(),Fpe=Xi(),qpe=Xl(),Qb=Rf(),sG=Cd(),Npe=sG.drawMode,Bpe=sG.selectMode,Ope=Nf().prepSelect,Upe=Nf().clearOutline,Vpe=Nf().clearSelectionsCache,Hpe=Nf().selectOnClick,rv=zc(),Gpe=rG();function lG(e,t){this.id=t,this.gd=e;var r=e._fullLayout,i=e._context;this.container=r._glcontainer.node(),this.isStatic=i.staticPlot,this.uid=r._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var Vn=lG.prototype;Vn.plot=function(e,t,r){var i=this,a=t[i.id];i.map&&a.accesstoken!==i.accessToken&&(i.map.remove(),i.map=null,i.styleObj=null,i.traceHash={},i.layerList=[]);var s;i.map?s=new Promise(function(l,f){i.updateMap(e,t,l,f)}):s=new Promise(function(l,f){i.createMap(e,t,l,f)}),r.push(s)};Vn.createMap=function(e,t,r,i){var a=this,s=t[a.id],l=a.styleObj=uG(s.style,t);a.accessToken=s.accesstoken;var f=s.bounds,h=f?[[f.west,f.south],[f.east,f.north]]:null,v=a.map=new kA.Map({container:a.div,style:l.style,center:EA(s.center),zoom:s.zoom,bearing:s.bearing,pitch:s.pitch,maxBounds:h,interactive:!a.isStatic,preserveDrawingBuffer:a.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new kA.AttributionControl({compact:!0}));v._canvas.style.left="0px",v._canvas.style.top="0px",a.rejectOnError(i),a.isStatic||a.initFx(e,t);var m=[];m.push(new Promise(function(_){v.once("load",_)})),m=m.concat(oG.fetchTraceGeoData(e)),Promise.all(m).then(function(){a.fillBelowLookup(e,t),a.updateData(e),a.updateLayout(t),a.resolveOnRender(r)}).catch(i)};Vn.updateMap=function(e,t,r,i){var a=this,s=a.map,l=t[this.id];a.rejectOnError(i);var f=[],h=uG(l.style,t);JSON.stringify(a.styleObj)!==JSON.stringify(h)&&(a.styleObj=h,s.setStyle(h.style),a.traceHash={},f.push(new Promise(function(v){s.once("styledata",v)}))),f=f.concat(oG.fetchTraceGeoData(e)),Promise.all(f).then(function(){a.fillBelowLookup(e,t),a.updateData(e),a.updateLayout(t),a.resolveOnRender(r)}).catch(i)};Vn.fillBelowLookup=function(e,t){var r=t[this.id],i=r.layers,a,s,l=this.belowLookup={},f=!1;for(a=0;a1)for(a=0;a-1&&Hpe(h.originalEvent,i,[r.xaxis],[r.yaxis],r.id,f),v.indexOf("event")>-1&&Qb.click(i,h.originalEvent)}}};Vn.updateFx=function(e){var t=this,r=t.map,i=t.gd;if(t.isStatic)return;function a(h){var v=t.map.unproject(h);return[v.lng,v.lat]}var s=e.dragmode,l;l=function(h,v){if(v.isRect){var m=h.range={};m[t.id]=[a([v.xmin,v.ymin]),a([v.xmax,v.ymax])]}else{var _=h.lassoPoints={};_[t.id]=v.map(a)}};var f=t.dragOptions;t.dragOptions=CA.extendDeep(f||{},{dragmode:e.dragmode,element:t.div,gd:i,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:l},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),Bpe(s)||Npe(s)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(h,v,m){Ope(h,v,m,t.dragOptions,s)},qpe.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))};Vn.updateFramework=function(e){var t=e[this.id].domain,r=e._size,i=this.div.style;i.width=r.w*(t.x[1]-t.x[0])+"px",i.height=r.h*(t.y[1]-t.y[0])+"px",i.left=r.l+t.x[0]*r.w+"px",i.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])};Vn.updateLayers=function(e){var t=e[this.id],r=t.layers,i=this.layerList,a;if(r.length!==i.length){for(a=0;a{"use strict";var Zpe=Bt(),Ype=Ii(),Wpe=Eb().defaults;hG.exports=function(t,r,i,a){var s=a.type,l=a.attributes,f=a.handleDefaults,h=a.partition||"x",v=r._subplots[s],m=v.length,_=m&&v[0].replace(/\d+$/,""),T,S;function C(B,q){return Zpe.coerce(T,S,l,B,q)}for(var E=0;E{"use strict";var LA=Bt(),Xpe=vG(),jpe=Yl(),dG=l1();pG.exports=function(t,r,i){Xpe(t,r,i,{type:"mapbox",attributes:dG,handleDefaults:Jpe,partition:"y",accessToken:r._mapboxAccessToken})};function Jpe(e,t,r,i){r("accesstoken",i.accessToken),r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch");var a=r("bounds.west"),s=r("bounds.east"),l=r("bounds.south"),f=r("bounds.north");(a===void 0||s===void 0||l===void 0||f===void 0)&&delete t.bounds,jpe(e,t,{name:"layers",handleItemDefaults:Kpe}),t._input=e}function Kpe(e,t){function r(h,v){return LA.coerce(e,t,dG.layers,h,v)}var i=r("visible");if(i){var a=r("sourcetype"),s=a==="raster"||a==="image";r("source"),r("sourceattribution"),a==="vector"&&r("sourcelayer"),a==="image"&&r("coordinates");var l;s&&(l="raster");var f=r("type",l);s&&f!=="raster"&&(f=t.type="raster",LA.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),f==="circle"&&r("circle.radius"),f==="line"&&(r("line.width"),r("line.dash")),f==="fill"&&r("fill.outlinecolor"),f==="symbol"&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),LA.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var $b=pe(Ys=>{"use strict";var yG=yA(),Ju=Bt(),DA=Ju.strTranslate,Qpe=Ju.strScale,$pe=B_().getSubplotCalcData,e0e=zh(),t0e=ja(),gG=xi(),r0e=co(),a0e=cG(),av="mapbox",Hf=Ys.constants=zc();Ys.name=av;Ys.attr="subplot";Ys.idRoot=av;Ys.idRegex=Ys.attrRegex=Ju.counterRegex(av);var i0e=["mapbox subplots and traces are deprecated!","Please consider switching to `map` subplots and traces.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");Ys.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}};Ys.layoutAttributes=l1();Ys.supplyLayoutDefaults=mG();var _G=!0;Ys.plot=function(t){_G&&(_G=!1,Ju.warn(i0e));var r=t._fullLayout,i=t.calcdata,a=r._subplots[av];if(yG.version!==Hf.requiredVersion)throw new Error(Hf.wrongVersionErrorMsg);var s=n0e(t,a);yG.accessToken=s;for(var l=0;lz/2){var B=S.split("|").join("
");E.text(B).attr("data-unformatted",B).call(r0e.convertToTspans,e),L=gG.bBox(E.node())}E.attr("transform",DA(-3,-L.height+8)),C.insert("rect",".static-attribution").attr({x:-L.width-6,y:-L.height-3,width:L.width+6,height:L.height+3,fill:"rgba(255, 255, 255, 0.75)"});var q=1;L.width+6>z&&(q=z/(L.width+6));var I=[i.l+i.w*l.x[1],i.t+i.h*(1-l.y[0])];C.attr("transform",DA(I[0],I[1])+Qpe(q))}};function n0e(e,t){var r=e._fullLayout,i=e._context;if(i.mapboxAccessToken==="")return"";for(var a=[],s=[],l=!1,f=!1,h=0;h1&&Ju.warn(Hf.multipleTokensErrorMsg),a[0]):(s.length&&Ju.log(["Listed mapbox access token(s)",s.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}function xG(e){return typeof e=="string"&&(Hf.styleValuesMapbox.indexOf(e)!==-1||e.indexOf("mapbox://")===0||e.indexOf("stamen")===0)}Ys.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[av],i=0;i{"use strict";var Gbe=["*scattermapbox* trace is deprecated!","Please consider switching to the *scattermap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");bG.exports={attributes:Rb(),supplyDefaults:tH(),colorbar:Q6(),formatLabels:uA(),calc:lH(),plot:xH(),hoverPoints:Ub().hoverPoints,eventData:AH(),selectPoints:SH(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermapbox",basePlotModule:$b(),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}});var AG=pe((Ybe,TG)=>{"use strict";TG.exports=wG()});var PA=pe((Wbe,kG)=>{"use strict";var{hovertemplateAttrs:o0e,templatefallbackAttrs:s0e}=Mf(),nv=nA(),l0e=xc(),MG=ys(),u0e=Af().defaultLine,iv=mn().extendFlat,SG=nv.marker.line;kG.exports=iv({locations:{valType:"data_array",editType:"calc"},locationmode:nv.locationmode,z:{valType:"data_array",editType:"calc"},geojson:iv({},nv.geojson,{}),featureidkey:nv.featureidkey,text:iv({},nv.text,{}),hovertext:iv({},nv.hovertext,{}),marker:{line:{color:iv({},SG.color,{dflt:u0e}),width:iv({},SG.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:nv.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:nv.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:iv({},MG.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:o0e(),hovertemplatefallback:s0e(),showlegend:iv({},MG.showlegend,{dflt:!1})},l0e("",{cLetter:"z",editTypeOverride:"calc"}))});var zA=pe((Xbe,CG)=>{"use strict";var Ic=PA(),f0e=xc(),{hovertemplateAttrs:c0e,templatefallbackAttrs:h0e}=Mf(),v0e=ys(),ov=mn().extendFlat;CG.exports=ov({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:ov({},Ic.featureidkey,{}),below:{valType:"string",editType:"plot"},text:Ic.text,hovertext:Ic.hovertext,marker:{line:{color:ov({},Ic.marker.line.color,{editType:"plot"}),width:ov({},Ic.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:ov({},Ic.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:ov({},Ic.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:ov({},Ic.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:Ic.hoverinfo,hovertemplate:c0e({},{keys:["properties"]}),hovertemplatefallback:h0e(),showlegend:ov({},v0e.showlegend,{dflt:!1})},f0e("",{cLetter:"z",editTypeOverride:"calc"}))});var LG=pe((jbe,EG)=>{"use strict";var d1=Bt(),d0e=vd(),p0e=zA();EG.exports=function(t,r,i,a){function s(m,_){return d1.coerce(t,r,p0e,m,_)}var l=s("locations"),f=s("z"),h=s("geojson");if(!d1.isArrayOrTypedArray(l)||!l.length||!d1.isArrayOrTypedArray(f)||!f.length||!(typeof h=="string"&&h!==""||d1.isPlainObject(h))){r.visible=!1;return}s("featureidkey"),r._length=Math.min(l.length,f.length),s("below"),s("text"),s("hovertext"),s("hovertemplate"),s("hovertemplatefallback");var v=s("marker.line.width");v&&s("marker.line.color"),s("marker.opacity"),d0e(t,r,a,s,{prefix:"",cLetter:"z"}),d1.coerceSelectionMarkerOpacity(r,s)}});var IA=pe((Jbe,DG)=>{"use strict";DG.exports={min:"zmin",max:"zmax"}});var RG=pe((Kbe,IG)=>{"use strict";var PG=Da(),m0e=Zi().BADNUM,y0e=Xy(),g0e=Hg(),_0e=Xx();function zG(e){return e&&typeof e=="string"}IG.exports=function(t,r){var i=r._length,a=new Array(i),s;r.geojson?s=function(m){return zG(m)||PG(m)}:s=zG;for(var l=0;l{"use strict";var x0e=Da(),Rc=Bt(),b0e=P0(),w0e=xi(),T0e=Fb().makeBlank,FG=SA();function A0e(e){var t=e[0].trace,r=t.visible===!0&&t._length!==0,i={layout:{visibility:"none"},paint:{}},a={layout:{visibility:"none"},paint:{}},s=t._opts={fill:i,line:a,geojson:T0e()};if(!r)return s;var l=FG.extractTraceFeature(e);if(!l)return s;var f=b0e.makeColorScaleFuncFromTrace(t),h=t.marker,v=h.line||{},m;Rc.isArrayOrTypedArray(h.opacity)&&(m=function(B){var q=B.mo;return x0e(q)?+Rc.constrain(q,0,1):0});var _;Rc.isArrayOrTypedArray(v.color)&&(_=function(B){return B.mlc});var T;Rc.isArrayOrTypedArray(v.width)&&(T=function(B){return B.mlw});for(var S=0;S{"use strict";var OG=RA().convert,M0e=RA().convertOnSelect,BG=zc().traceLayerPrefix;function UG(e,t){this.type="choroplethmapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",BG+t+"-fill"],["line",BG+t+"-line"]],this.below=null}var Mm=UG.prototype;Mm.update=function(e){this._update(OG(e)),e[0].trace._glTrace=this};Mm.updateOnSelect=function(e){this._update(M0e(e))};Mm._update=function(e){var t=this.subplot,r=this.layerList,i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(e.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(e,i),this.below=i);for(var a=0;a=0;r--)e.removeLayer(t[r][1])};Mm.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};VG.exports=function(t,r){var i=r[0].trace,a=new UG(t,i.uid),s=a.sourceId,l=OG(r),f=a.below=t.belowLookup["trace-"+i.uid];return t.map.addSource(s,{type:"geojson",data:l.geojson}),a._addLayers(l,f),r[0].trace._glTrace=a,a}});var ZG=pe((e3e,GG)=>{"use strict";var S0e=Xi(),k0e=PA(),C0e=Bt().fillText;GG.exports=function(t,r,i){var a=t.cd,s=a[0].trace,l=t.subplot,f,h,v,m,_=[r,i],T=[r+360,i];for(h=0;h")}}});var WG=pe((t3e,YG)=>{"use strict";YG.exports=function(t,r,i,a,s){t.location=r.location,t.z=r.z;var l=a[s];return l.fIn&&l.fIn.properties&&(t.properties=l.fIn.properties),t.ct=l.ct,t}});var jG=pe((r3e,XG)=>{"use strict";XG.exports=function(t,r){var i=t.cd,a=t.xaxis,s=t.yaxis,l=[],f,h,v,m,_;if(r===!1)for(f=0;f{"use strict";var a3e=["*choroplethmapbox* trace is deprecated!","Please consider switching to the *choroplethmap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");JG.exports={attributes:zA(),supplyDefaults:LG(),colorbar:IA(),calc:RG(),plot:HG(),hoverPoints:ZG(),eventData:WG(),selectPoints:jG(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.updateOnSelect(t)}},getBelow:function(e,t){for(var r=t.getMapLayers(),i=r.length-2;i>=0;i--){var a=r[i].id;if(typeof a=="string"&&a.indexOf("water")===0){for(var s=i+1;s{"use strict";QG.exports=KG()});var qA=pe((o3e,tZ)=>{"use strict";var L0e=xc(),{hovertemplateAttrs:D0e,templatefallbackAttrs:P0e}=Mf(),eZ=ys(),e3=Rb(),FA=mn().extendFlat;tZ.exports=FA({lon:e3.lon,lat:e3.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:e3.text,hovertext:e3.hovertext,hoverinfo:FA({},eZ.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:D0e(),hovertemplatefallback:P0e(),showlegend:FA({},eZ.showlegend,{dflt:!1})},L0e("",{cLetter:"z",editTypeOverride:"calc"}))});var aZ=pe((s3e,rZ)=>{"use strict";var z0e=Bt(),I0e=vd(),R0e=qA();rZ.exports=function(t,r,i,a){function s(v,m){return z0e.coerce(t,r,R0e,v,m)}var l=s("lon")||[],f=s("lat")||[],h=Math.min(l.length,f.length);if(!h){r.visible=!1;return}r._length=h,s("z"),s("radius"),s("below"),s("text"),s("hovertext"),s("hovertemplate"),s("hovertemplatefallback"),I0e(t,r,a,s,{prefix:"",cLetter:"z"})}});var oZ=pe((l3e,nZ)=>{"use strict";var NA=Da(),F0e=Bt().isArrayOrTypedArray,BA=Zi().BADNUM,q0e=Xy(),iZ=Bt()._;nZ.exports=function(t,r){for(var i=r._length,a=new Array(i),s=r.z,l=F0e(s)&&s.length,f=0;f{"use strict";var N0e=Da(),OA=Bt(),sZ=Oa(),lZ=P0(),uZ=Zi().BADNUM,B0e=Fb().makeBlank;fZ.exports=function(t){var r=t[0].trace,i=r.visible===!0&&r._length!==0,a={layout:{visibility:"none"},paint:{}},s=r._opts={heatmap:a,geojson:B0e()};if(!i)return s;var l=[],f,h=r.z,v=r.radius,m=OA.isArrayOrTypedArray(h)&&h.length,_=OA.isArrayOrTypedArray(v);for(f=0;f0?+v[f]:0),l.push({type:"Feature",geometry:{type:"Point",coordinates:S},properties:C})}}var L=lZ.extractOpts(r),z=L.reversescale?lZ.flipScale(L.colorscale):L.colorscale,B=z[0][1],q=sZ.opacity(B)<1?B:sZ.addOpacity(B,0),I=["interpolate",["linear"],["heatmap-density"],0,q];for(f=1;f{"use strict";var hZ=cZ(),O0e=zc().traceLayerPrefix;function vZ(e,t){this.type="densitymapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",O0e+t+"-heatmap"]],this.below=null}var t3=vZ.prototype;t3.update=function(e){var t=this.subplot,r=this.layerList,i=hZ(e),a=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(i.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(i,a),this.below=a);for(var s=0;s=0;r--)e.removeLayer(t[r][1])};t3.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};dZ.exports=function(t,r){var i=r[0].trace,a=new vZ(t,i.uid),s=a.sourceId,l=hZ(r),f=a.below=t.belowLookup["trace-"+i.uid];return t.map.addSource(s,{type:"geojson",data:l.geojson}),a._addLayers(l,f),a}});var yZ=pe((c3e,mZ)=>{"use strict";var U0e=Xi(),V0e=Ub().hoverPoints,H0e=Ub().getExtraText;mZ.exports=function(t,r,i){var a=V0e(t,r,i);if(a){var s=a[0],l=s.cd,f=l[0].trace,h=l[s.index];if(delete s.color,"z"in h){var v=s.subplot.mockAxis;s.z=h.z,s.zLabel=U0e.tickText(v,v.c2l(h.z),"hover").text}return s.extraText=H0e(f,h,l[0].t.labels),[s]}}});var _Z=pe((h3e,gZ)=>{"use strict";gZ.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var bZ=pe((d3e,xZ)=>{"use strict";var v3e=["*densitymapbox* trace is deprecated!","Please consider switching to the *densitymap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");xZ.exports={attributes:qA(),supplyDefaults:aZ(),colorbar:IA(),formatLabels:uA(),calc:oZ(),plot:pZ(),hoverPoints:yZ(),eventData:_Z(),getBelow:function(e,t){for(var r=t.getMapLayers(),i=0;i{"use strict";wZ.exports=bZ()});var Uo=pe((m3e,MZ)=>{"use strict";var AZ=Object.getOwnPropertySymbols,G0e=Object.prototype.hasOwnProperty,Z0e=Object.prototype.propertyIsEnumerable;function Y0e(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function W0e(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var i=Object.getOwnPropertyNames(t).map(function(s){return t[s]});if(i.join("")!=="0123456789")return!1;var a={};return"abcdefghijklmnopqrst".split("").forEach(function(s){a[s]=s}),Object.keys(Object.assign({},a)).join("")==="abcdefghijklmnopqrst"}catch(s){return!1}}MZ.exports=W0e()?Object.assign:function(e,t){for(var r,i=Y0e(e),a,s=1;s{var a3=Uo();function SZ(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}a3(SZ.prototype,{instance:function(e,t){e=(e||"gregorian").toLowerCase(),t=t||"";var r=this._localCals[e+"-"+t];if(!r&&this.calendars[e]&&(r=new this.calendars[e](t),this._localCals[e+"-"+t]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return r},newDate:function(e,t,r,i,a){return i=(e!=null&&e.year?e.calendar():typeof i=="string"?this.instance(i,a):i)||this.instance(),i.newDate(e,t,r)},substituteDigits:function(e){return function(t){return(t+"").replace(/[0-9]/g,function(r){return e[r]})}},substituteChineseDigits:function(e,t){return function(r){for(var i="",a=0;r>0;){var s=r%10;i=(s===0?"":e[s]+t[a])+i,a++,r=Math.floor(r/10)}return i.indexOf(e[1]+t[1])===0&&(i=i.substr(1)),i||e[0]}}});function UA(e,t,r,i){if(this._calendar=e,this._year=t,this._month=r,this._day=i,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(ka.local.invalidDate||ka.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function r3(e,t){return e=""+e,"000000".substring(0,t-e.length)+e}a3(UA.prototype,{newDate:function(e,t,r){return this._calendar.newDate(e==null?this:e,t,r)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,t,r){if(!this._calendar.isValid(e,t,r))throw(ka.local.invalidDate||ka.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=t,this._day=r,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,t){return this._calendar.add(this,e,t)},set:function(e,t){return this._calendar.set(this,e,t)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(ka.local.differentCalendars||ka.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var t=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return t===0?0:t<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+r3(Math.abs(this.year()),4)+"-"+r3(this.month(),2)+"-"+r3(this.day(),2)}});function VA(){this.shortYearCutoff="+10"}a3(VA.prototype,{_validateLevel:0,newDate:function(e,t,r){return e==null?this.today():(e.year&&(this._validate(e,t,r,ka.local.invalidDate||ka.regionalOptions[""].invalidDate),r=e.day(),t=e.month(),e=e.year()),new UA(this,e,t,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var t=this._validate(e,this.minMonth,this.minDay,ka.local.invalidYear||ka.regionalOptions[""].invalidYear);return t.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,ka.local.invalidYear||ka.regionalOptions[""].invalidYear);return(t.year()<0?"-":"")+r3(Math.abs(t.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ka.local.invalidYear||ka.regionalOptions[""].invalidYear),12},monthOfYear:function(e,t){var r=this._validate(e,t,this.minDay,ka.local.invalidMonth||ka.regionalOptions[""].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(e,t){var r=(t+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,r,this.minDay,ka.local.invalidMonth||ka.regionalOptions[""].invalidMonth),r},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,ka.local.invalidYear||ka.regionalOptions[""].invalidYear);return this.leapYear(t)?366:365},dayOfYear:function(e,t,r){var i=this._validate(e,t,r,ka.local.invalidDate||ka.regionalOptions[""].invalidDate);return i.toJD()-this.newDate(i.year(),this.fromMonthOfYear(i.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,t,r){var i=this._validate(e,t,r,ka.local.invalidDate||ka.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(i))+2)%this.daysInWeek()},extraInfo:function(e,t,r){return this._validate(e,t,r,ka.local.invalidDate||ka.regionalOptions[""].invalidDate),{}},add:function(e,t,r){return this._validate(e,this.minMonth,this.minDay,ka.local.invalidDate||ka.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,t,r),t,r)},_add:function(e,t,r){if(this._validateLevel++,r==="d"||r==="w"){var i=e.toJD()+t*(r==="w"?this.daysInWeek():1),a=e.calendar().fromJD(i);return this._validateLevel--,[a.year(),a.month(),a.day()]}try{var s=e.year()+(r==="y"?t:0),l=e.monthOfYear()+(r==="m"?t:0),a=e.day(),f=function(m){for(;l_-1+m.minMonth;)s++,l-=_,_=m.monthsInYear(s)};r==="y"?(e.month()!==this.fromMonthOfYear(s,l)&&(l=this.newDate(s,e.month(),this.minDay).monthOfYear()),l=Math.min(l,this.monthsInYear(s)),a=Math.min(a,this.daysInMonth(s,this.fromMonthOfYear(s,l)))):r==="m"&&(f(this),a=Math.min(a,this.daysInMonth(s,this.fromMonthOfYear(s,l))));var h=[s,this.fromMonthOfYear(s,l),a];return this._validateLevel--,h}catch(v){throw this._validateLevel--,v}},_correctAdd:function(e,t,r,i){if(!this.hasYearZero&&(i==="y"||i==="m")&&(t[0]===0||e.year()>0!=t[0]>0)){var a={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[i],s=r<0?-1:1;t=this._add(e,r*a[0]+s*a[1],a[2])}return e.date(t[0],t[1],t[2])},set:function(e,t,r){this._validate(e,this.minMonth,this.minDay,ka.local.invalidDate||ka.regionalOptions[""].invalidDate);var i=r==="y"?t:e.year(),a=r==="m"?t:e.month(),s=r==="d"?t:e.day();return(r==="y"||r==="m")&&(s=Math.min(s,this.daysInMonth(i,a))),e.date(i,a,s)},isValid:function(e,t,r){this._validateLevel++;var i=this.hasYearZero||e!==0;if(i){var a=this.newDate(e,t,this.minDay);i=t>=this.minMonth&&t-this.minMonth=this.minDay&&r-this.minDay13.5?13:1),v=a-(h>2.5?4716:4715);return v<=0&&v--,this.newDate(v,h,f)},toJSDate:function(e,t,r){var i=this._validate(e,t,r,ka.local.invalidDate||ka.regionalOptions[""].invalidDate),a=new Date(i.year(),i.month()-1,i.day());return a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0),a.setHours(a.getHours()>12?a.getHours()+2:0),a},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var ka=kZ.exports=new SZ;ka.cdate=UA;ka.baseCalendar=VA;ka.calendars.gregorian=HA});var CZ=pe(()=>{var GA=Uo(),po=Vo();GA(po.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});po.local=po.regionalOptions[""];GA(po.cdate.prototype,{formatDate:function(e,t){return typeof e!="string"&&(t=e,e=""),this._calendar.formatDate(e||"",this,t)}});GA(po.baseCalendar.prototype,{UNIX_EPOCH:po.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:po.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,t,r){if(typeof e!="string"&&(r=t,t=e,e=""),!t)return"";if(t.calendar()!==this)throw po.local.invalidFormat||po.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,r=r||{};for(var i=r.dayNamesShort||this.local.dayNamesShort,a=r.dayNames||this.local.dayNames,s=r.monthNumbers||this.local.monthNumbers,l=r.monthNamesShort||this.local.monthNamesShort,f=r.monthNames||this.local.monthNames,h=r.calculateWeek||this.local.calculateWeek,v=function(I,O){for(var H=1;q+H1},m=function(I,O,H,V){var W=""+O;if(v(I,V))for(;W.length1},B=function(oe,fe){var he=z(oe,fe),ke=[2,3,he?4:2,he?4:2,10,11,20]["oyYJ@!".indexOf(oe)+1],Se=new RegExp("^-?\\d{1,"+ke+"}"),Ae=t.substring(W).match(Se);if(!Ae)throw(po.local.missingNumberAt||po.regionalOptions[""].missingNumberAt).replace(/\{0\}/,W);return W+=Ae[0].length,parseInt(Ae[0],10)},q=this,I=function(){if(typeof f=="function"){z("m");var oe=f.call(q,t.substring(W));return W+=oe.length,oe}return B("m")},O=function(oe,fe,he,ke){for(var Se=z(oe,ke)?he:fe,Ae=0;Ae-1){T=1,S=C;for(var ne=this.daysInMonth(_,T);S>ne;ne=this.daysInMonth(_,T))T++,S-=ne}return m>-1?this.fromJD(m):this.newDate(_,T,S)},determineDate:function(e,t,r,i,a){r&&typeof r!="object"&&(a=i,i=r,r=null),typeof i!="string"&&(a=i,i="");var s=this,l=function(f){try{return s.parseDate(i,f,a)}catch(_){}f=f.toLowerCase();for(var h=(f.match(/^c/)&&r?r.newDate():null)||s.today(),v=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,m=v.exec(f);m;)h.add(parseInt(m[1],10),m[2]||"d"),m=v.exec(f);return h};return t=t?t.newDate():null,e=e==null?t:typeof e=="string"?l(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?t:s.today().add(e,"d"):s.newDate(e),e}})});var EZ=pe(()=>{var sv=Vo(),X0e=Uo(),ZA=sv.instance();function i3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}i3.prototype=new sv.baseCalendar;X0e(i3.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,t){if(typeof e=="string"){var r=e.match(J0e);return r?r[0]:""}var i=this._validateYear(e),a=e.month(),s=""+this.toChineseMonth(i,a);return t&&s.length<2&&(s="0"+s),this.isIntercalaryMonth(i,a)&&(s+="i"),s},monthNames:function(e){if(typeof e=="string"){var t=e.match(K0e);return t?t[0]:""}var r=this._validateYear(e),i=e.month(),a=this.toChineseMonth(r,i),s=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][a-1];return this.isIntercalaryMonth(r,i)&&(s="\u95F0"+s),s},monthNamesShort:function(e){if(typeof e=="string"){var t=e.match(Q0e);return t?t[0]:""}var r=this._validateYear(e),i=e.month(),a=this.toChineseMonth(r,i),s=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][a-1];return this.isIntercalaryMonth(r,i)&&(s="\u95F0"+s),s},parseMonth:function(e,t){e=this._validateYear(e);var r=parseInt(t),i;if(isNaN(r))t[0]==="\u95F0"&&(i=!0,t=t.substring(1)),t[t.length-1]==="\u6708"&&(t=t.substring(0,t.length-1)),r=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(t);else{var a=t[t.length-1];i=a==="i"||a==="I"}var s=this.toMonthIndex(e,r,i);return s},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,t){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw t.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,t,r){var i=this.intercalaryMonth(e),a=r&&t!==i;if(a||t<1||t>12)throw sv.local.invalidMonth.replace(/\{0\}/,this.local.name);var s;return i?!r&&t<=i?s=t-1:s=t:s=t-1,s},toChineseMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e),i=r?12:11;if(t<0||t>i)throw sv.local.invalidMonth.replace(/\{0\}/,this.local.name);var a;return r?t>13;return r},isIntercalaryMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e);return!!r&&r===t},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,t,r){var i=this._validateYear(e,sv.local.invalidyear),a=uv[i-uv[0]],s=a>>9&4095,l=a>>5&15,f=a&31,h;h=ZA.newDate(s,l,f),h.add(4-(h.dayOfWeek()||7),"d");var v=this.toJD(e,t,r)-h.toJD();return 1+Math.floor(v/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,t){e.year&&(t=e.month(),e=e.year()),e=this._validateYear(e);var r=lv[e-lv[0]],i=r>>13,a=i?12:11;if(t>a)throw sv.local.invalidMonth.replace(/\{0\}/,this.local.name);var s=r&1<<12-t?30:29;return s},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,s,r,sv.local.invalidDate);e=this._validateYear(i.year()),t=i.month(),r=i.day();var a=this.isIntercalaryMonth(e,t),s=this.toChineseMonth(e,t),l=eme(e,s,r,a);return ZA.toJD(l.year,l.month,l.day)},fromJD:function(e){var t=ZA.fromJD(e),r=$0e(t.year(),t.month(),t.day()),i=this.toMonthIndex(r.year,r.month,r.isIntercalary);return this.newDate(r.year,i,r.day)},fromString:function(e){var t=e.match(j0e),r=this._validateYear(+t[1]),i=+t[2],a=!!t[3],s=this.toMonthIndex(r,i,a),l=+t[4];return this.newDate(r,s,l)},add:function(e,t,r){var i=e.year(),a=e.month(),s=this.isIntercalaryMonth(i,a),l=this.toChineseMonth(i,a),f=Object.getPrototypeOf(i3.prototype).add.call(this,e,t,r);if(r==="y"){var h=f.year(),v=f.month(),m=this.isIntercalaryMonth(h,l),_=s&&m?this.toMonthIndex(h,l,!0):this.toMonthIndex(h,l,!1);_!==v&&f.month(_)}return f}});var j0e=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,J0e=/^\d?\d[iI]?/m,K0e=/^闰?十?[一二三四五六七八九]?月/m,Q0e=/^闰?十?[一二三四五六七八九]?/m;sv.calendars.chinese=i3;var lv=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],uv=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function $0e(e,t,r,i){var a,s;if(typeof e=="object")a=e,s=t||{};else{var l=typeof e=="number"&&e>=1888&&e<=2111;if(!l)throw new Error("Solar year outside range 1888-2111");var f=typeof t=="number"&&t>=1&&t<=12;if(!f)throw new Error("Solar month outside range 1 - 12");var h=typeof r=="number"&&r>=1&&r<=31;if(!h)throw new Error("Solar day outside range 1 - 31");a={year:e,month:t,day:r},s=i||{}}var v=uv[a.year-uv[0]],m=a.year<<9|a.month<<5|a.day;s.year=m>=v?a.year:a.year-1,v=uv[s.year-uv[0]];var _=v>>9&4095,T=v>>5&15,S=v&31,C,E=new Date(_,T-1,S),L=new Date(a.year,a.month-1,a.day);C=Math.round((L-E)/(24*3600*1e3));var z=lv[s.year-lv[0]],B;for(B=0;B<13;B++){var q=z&1<<12-B?30:29;if(C>13;return!I||B=1888&&e<=2111;if(!f)throw new Error("Lunar year outside range 1888-2111");var h=typeof t=="number"&&t>=1&&t<=12;if(!h)throw new Error("Lunar month outside range 1 - 12");var v=typeof r=="number"&&r>=1&&r<=30;if(!v)throw new Error("Lunar day outside range 1 - 30");var m;typeof i=="object"?(m=!1,s=i):(m=!!i,s=a||{}),l={year:e,month:t,day:r,isIntercalary:m}}var _;_=l.day-1;var T=lv[l.year-lv[0]],S=T>>13,C;S&&(l.month>S||l.isIntercalary)?C=l.month:C=l.month-1;for(var E=0;E>9&4095,q=z>>5&15,I=z&31,O=new Date(B,q-1,I+_);return s.year=O.getFullYear(),s.month=1+O.getMonth(),s.day=O.getDate(),s}});var LZ=pe(()=>{var Yd=Vo(),tme=Uo();function YA(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}YA.prototype=new Yd.baseCalendar;tme(YA.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Yd.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Yd.local.invalidYear||Yd.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-i.dayOfWeek(),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Yd.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,Yd.local.invalidDate);return e=i.year(),e<0&&e++,i.day()+(i.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var i=Math.floor(t/30)+1,a=t-(i-1)*30+1;return this.newDate(r,i,a)}});Yd.calendars.coptic=YA});var DZ=pe(()=>{var Fc=Vo(),rme=Uo();function WA(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}WA.prototype=new Fc.baseCalendar;rme(WA.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Fc.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Fc.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Fc.local.invalidYear),400},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-i.dayOfWeek(),"d"),Math.floor((i.dayOfYear()-1)/8)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Fc.local.invalidMonth);return this.daysPerMonth[r.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,t,r){var i=this._validate(e,t,r,Fc.local.invalidDate);return(i.day()+1)%8},weekDay:function(e,t,r){var i=this.dayOfWeek(e,t,r);return i>=2&&i<=6},extraInfo:function(e,t,r){var i=this._validate(e,t,r,Fc.local.invalidDate);return{century:ame[Math.floor((i.year()-1)/100)+1]||""}},toJD:function(e,t,r){var i=this._validate(e,t,r,Fc.local.invalidDate);return e=i.year()+(i.year()<0?1:0),t=i.month(),r=i.day(),r+(t>1?16:0)+(t>2?(t-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var t=Math.floor(e/400)+1;e-=(t-1)*400,e+=e>15?16:0;var r=Math.floor(e/32)+1,i=e-(r-1)*32+1;return this.newDate(t<=0?t-1:t,r,i)}});var ame={20:"Fruitbat",21:"Anchovy"};Fc.calendars.discworld=WA});var PZ=pe(()=>{var Wd=Vo(),ime=Uo();function XA(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}XA.prototype=new Wd.baseCalendar;ime(XA.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Wd.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Wd.local.invalidYear||Wd.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-i.dayOfWeek(),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Wd.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,Wd.local.invalidDate);return e=i.year(),e<0&&e++,i.day()+(i.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var i=Math.floor(t/30)+1,a=t-(i-1)*30+1;return this.newDate(r,i,a)}});Wd.calendars.ethiopian=XA});var zZ=pe(()=>{var fv=Vo(),nme=Uo();function jA(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}jA.prototype=new fv.baseCalendar;nme(jA.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,fv.local.invalidYear);return this._leapYear(t.year())},_leapYear:function(e){return e=e<0?e+1:e,n3(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,fv.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-i.dayOfWeek(),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,fv.local.invalidYear);return e=t.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,fv.local.invalidMonth),t===12&&this.leapYear(e)||t===8&&n3(this.daysInYear(e),10)===5?30:t===9&&n3(this.daysInYear(e),10)===3?29:this.daysPerMonth[t-1]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},extraInfo:function(e,t,r){var i=this._validate(e,t,r,fv.local.invalidDate);return{yearType:(this.leapYear(i)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(i)%10-3]}},toJD:function(e,t,r){var i=this._validate(e,t,r,fv.local.invalidDate);e=i.year(),t=i.month(),r=i.day();var a=e<=0?e+1:e,s=this.jdEpoch+this._delay1(a)+this._delay2(a)+r+1;if(t<7){for(var l=7;l<=this.monthsInYear(e);l++)s+=this.daysInMonth(e,l);for(var l=1;l=this.toJD(t===-1?1:t+1,7,1);)t++;for(var r=ethis.toJD(t,r,this.daysInMonth(t,r));)r++;var i=e-this.toJD(t,r,1)+1;return this.newDate(t,r,i)}});function n3(e,t){return e-t*Math.floor(e/t)}fv.calendars.hebrew=jA});var IZ=pe(()=>{var p1=Vo(),ome=Uo();function JA(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}JA.prototype=new p1.baseCalendar;ome(JA.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,p1.local.invalidYear);return(t.year()*11+14)%30<11},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-i.dayOfWeek(),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,p1.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var i=this._validate(e,t,r,p1.local.invalidDate);return e=i.year(),t=i.month(),r=i.day(),e=e<=0?e+1:e,r+Math.ceil(29.5*(t-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=Math.floor((30*(e-this.jdEpoch)+10646)/10631);t=t<=0?t-1:t;var r=Math.min(12,Math.ceil((e-29-this.toJD(t,1,1))/29.5)+1),i=e-this.toJD(t,r,1)+1;return this.newDate(t,r,i)}});p1.calendars.islamic=JA});var RZ=pe(()=>{var m1=Vo(),sme=Uo();function KA(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}KA.prototype=new m1.baseCalendar;sme(KA.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,m1.local.invalidYear),r=t.year()<0?t.year()+1:t.year();return r%4===0},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(4-(i.dayOfWeek()||7),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,m1.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var i=this._validate(e,t,r,m1.local.invalidDate);return e=i.year(),t=i.month(),r=i.day(),e<0&&e++,t<=2&&(e--,t+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(t+1))+r-1524.5},fromJD:function(e){var t=Math.floor(e+.5),r=t+1524,i=Math.floor((r-122.1)/365.25),a=Math.floor(365.25*i),s=Math.floor((r-a)/30.6001),l=s-Math.floor(s<14?1:13),f=i-Math.floor(l>2?4716:4715),h=r-a-Math.floor(30.6001*s);return f<=0&&f--,this.newDate(f,l,h)}});m1.calendars.julian=KA});var qZ=pe(()=>{var cu=Vo(),lme=Uo();function $A(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}$A.prototype=new cu.baseCalendar;lme($A.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,cu.local.invalidYear),!1},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,cu.local.invalidYear);e=t.year();var r=Math.floor(e/400);e=e%400,e+=e<0?400:0;var i=Math.floor(e/20);return r+"."+i+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var t=0,r=0;r19||r>0&&i<0)throw"Invalid Mayan year";t=t*20+i}return t},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,cu.local.invalidYear),18},weekOfYear:function(e,t,r){return this._validate(e,t,r,cu.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,cu.local.invalidYear),360},daysInMonth:function(e,t){return this._validate(e,t,this.minDay,cu.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,t,r){var i=this._validate(e,t,r,cu.local.invalidDate);return i.day()},weekDay:function(e,t,r){return this._validate(e,t,r,cu.local.invalidDate),!0},extraInfo:function(e,t,r){var i=this._validate(e,t,r,cu.local.invalidDate),a=i.toJD(),s=this._toHaab(a),l=this._toTzolkin(a);return{haabMonthName:this.local.haabMonths[s[0]-1],haabMonth:s[0],haabDay:s[1],tzolkinDayName:this.local.tzolkinMonths[l[0]-1],tzolkinDay:l[0],tzolkinTrecena:l[1]}},_toHaab:function(e){e-=this.jdEpoch;var t=QA(e+8+17*20,365);return[Math.floor(t/20)+1,QA(t,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[FZ(e+20,20),FZ(e+4,13)]},toJD:function(e,t,r){var i=this._validate(e,t,r,cu.local.invalidDate);return i.day()+i.month()*20+i.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var t=Math.floor(e/360);e=e%360,e+=e<0?360:0;var r=Math.floor(e/20),i=e%20;return this.newDate(t,r,i)}});function QA(e,t){return e-t*Math.floor(e/t)}function FZ(e,t){return QA(e-1,t)+1}cu.calendars.mayan=$A});var BZ=pe(()=>{var Xd=Vo(),ume=Uo();function eM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}eM.prototype=new Xd.baseCalendar;var NZ=Xd.instance("gregorian");ume(eM.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Xd.local.invalidYear||Xd.regionalOptions[""].invalidYear);return NZ.leapYear(t.year()+(t.year()<1?1:0)+1469)},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(1-(i.dayOfWeek()||7),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Xd.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(a,t,r){var i=this._validate(a,t,r,Xd.local.invalidMonth),a=i.year();a<0&&a++;for(var s=i.day(),l=1;l=this.toJD(t+1,1,1);)t++;for(var r=e-Math.floor(this.toJD(t,1,1)+.5)+1,i=1;r>this.daysInMonth(t,i);)r-=this.daysInMonth(t,i),i++;return this.newDate(t,i,r)}});Xd.calendars.nanakshahi=eM});var OZ=pe(()=>{var jd=Vo(),fme=Uo();function tM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}tM.prototype=new jd.baseCalendar;fme(tM.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-i.dayOfWeek(),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,jd.local.invalidYear);if(e=t.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var r=0,i=this.minMonth;i<=12;i++)r+=this.NEPALI_CALENDAR_DATA[e][i];return r},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,jd.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[t-1]:this.NEPALI_CALENDAR_DATA[e][t]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},toJD:function(e,t,r){var i=this._validate(e,t,r,jd.local.invalidDate);e=i.year(),t=i.month(),r=i.day();var a=jd.instance(),s=0,l=t,f=e;this._createMissingCalendarData(e);var h=e-(l>9||l===9&&r>=this.NEPALI_CALENDAR_DATA[f][0]?56:57);for(t!==9&&(s=r,l--);l!==9;)l<=0&&(l=12,f--),s+=this.NEPALI_CALENDAR_DATA[f][l],l--;return t===9?(s+=r-this.NEPALI_CALENDAR_DATA[f][0],s<0&&(s+=a.daysInYear(h))):s+=this.NEPALI_CALENDAR_DATA[f][9]-this.NEPALI_CALENDAR_DATA[f][0],a.newDate(h,1,1).add(s,"d").toJD()},fromJD:function(e){var t=jd.instance(),r=t.fromJD(e),i=r.year(),a=r.dayOfYear(),s=i+56;this._createMissingCalendarData(s);for(var l=9,f=this.NEPALI_CALENDAR_DATA[s][0],h=this.NEPALI_CALENDAR_DATA[s][l]-f+1;a>h;)l++,l>12&&(l=1,s++),h+=this.NEPALI_CALENDAR_DATA[s][l];var v=this.NEPALI_CALENDAR_DATA[s][l]-(h-a);return this.newDate(s,l,v)},_createMissingCalendarData:function(e){var t=this.daysPerMonth.slice(0);t.unshift(17);for(var r=e-1;r{var Sm=Vo(),cme=Uo();function s3(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function o3(e){var t=e-475;e<0&&t++;var r=.242197,i=r*t,a=r*(t+1),s=i-Math.floor(i),l=a-Math.floor(a);return s>l}s3.prototype=new Sm.baseCalendar;cme(s3.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Sm.local.invalidYear);return o3(t.year())},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-((i.dayOfWeek()+1)%7),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Sm.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var i=this._validate(e,t,r,Sm.local.invalidDate);e=i.year(),t=i.month(),r=i.day();var a=0;if(e>0)for(var s=1;s0?e-1:e)*365+a+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=475+(e-this.toJD(475,1,1))/365.242197,r=Math.floor(t);r<=0&&r--,e>this.toJD(r,12,o3(r)?30:29)&&(r++,r===0&&r++);var i=e-this.toJD(r,1,1)+1,a=i<=186?Math.ceil(i/31):Math.ceil((i-6)/30),s=e-this.toJD(r,a,1)+1;return this.newDate(r,a,s)}});Sm.calendars.persian=s3;Sm.calendars.jalali=s3});var VZ=pe(()=>{var Jd=Vo(),hme=Uo(),l3=Jd.instance();function rM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}rM.prototype=new Jd.baseCalendar;hme(rM.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Jd.local.invalidYear),r=this._t2gYear(t.year());return l3.leapYear(r)},weekOfYear:function(a,t,r){var i=this._validate(a,this.minMonth,this.minDay,Jd.local.invalidYear),a=this._t2gYear(i.year());return l3.weekOfYear(a,i.month(),i.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Jd.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(a,t,r){var i=this._validate(a,t,r,Jd.local.invalidDate),a=this._t2gYear(i.year());return l3.toJD(a,i.month(),i.day())},fromJD:function(e){var t=l3.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Jd.calendars.taiwan=rM});var HZ=pe(()=>{var Kd=Vo(),vme=Uo(),u3=Kd.instance();function aM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}aM.prototype=new Kd.baseCalendar;vme(aM.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Kd.local.invalidYear),r=this._t2gYear(t.year());return u3.leapYear(r)},weekOfYear:function(a,t,r){var i=this._validate(a,this.minMonth,this.minDay,Kd.local.invalidYear),a=this._t2gYear(i.year());return u3.weekOfYear(a,i.month(),i.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Kd.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(a,t,r){var i=this._validate(a,t,r,Kd.local.invalidDate),a=this._t2gYear(i.year());return u3.toJD(a,i.month(),i.day())},fromJD:function(e){var t=u3.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});Kd.calendars.thai=aM});var GZ=pe(()=>{var Qd=Vo(),dme=Uo();function iM(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}iM.prototype=new Qd.baseCalendar;dme(iM.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Qd.local.invalidYear);return this.daysInYear(t.year())===355},weekOfYear:function(e,t,r){var i=this.newDate(e,t,r);return i.add(-i.dayOfWeek(),"d"),Math.floor((i.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var t=0,r=1;r<=12;r++)t+=this.daysInMonth(e,r);return t},daysInMonth:function(e,t){for(var r=this._validate(e,t,this.minDay,Qd.local.invalidMonth),i=r.toJD()-24e5+.5,a=0,s=0;si)return cv[a]-cv[a-1];a++}return 30},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var i=this._validate(e,t,r,Qd.local.invalidDate),a=12*(i.year()-1)+i.month()-15292,s=i.day()+cv[a-1]-1;return s+24e5-.5},fromJD:function(e){for(var t=e-24e5+.5,r=0,i=0;it);i++)r++;var a=r+15292,s=Math.floor((a-1)/12),l=s+1,f=a-12*s,h=t-cv[r-1]+1;return this.newDate(l,f,h)},isValid:function(e,t,r){var i=Qd.baseCalendar.prototype.isValid.apply(this,arguments);return i&&(e=e.year!=null?e.year:e,i=e>=1276&&e<=1500),i},_validate:function(e,t,r,i){var a=Qd.baseCalendar.prototype._validate.apply(this,arguments);if(a.year<1276||a.year>1500)throw i.replace(/\{0\}/,this.local.name);return a}});Qd.calendars.ummalqura=iM;var cv=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var YZ=pe((X3e,ZZ)=>{"use strict";ZZ.exports=Vo();CZ();EZ();LZ();DZ();PZ();zZ();IZ();RZ();qZ();BZ();OZ();UZ();VZ();HZ();GZ()});var $Z=pe((j3e,QZ)=>{"use strict";var XZ=YZ(),y1=Bt(),jZ=Zi(),pme=jZ.EPOCHJD,mme=jZ.ONEDAY,sM={valType:"enumerated",values:y1.sortObjectKeys(XZ.calendars),editType:"calc",dflt:"gregorian"},JZ=function(e,t,r,i){var a={};return a[r]=sM,y1.coerce(e,t,a,r,i)},yme=function(e,t,r,i){for(var a=0;a{"use strict";eY.exports=$Z()});var Tme=pe((K3e,aY)=>{var rY=PV();rY.register([AG(),$G(),TZ(),tY()]);aY.exports=rY});return Tme();})(); /*! Bundled license information: native-promise-only/lib/npo.src.js: diff --git a/dist/plotly-strict.js b/dist/plotly-strict.js index 9c1b27dbeb2..a79ff8cfec8 100644 --- a/dist/plotly-strict.js +++ b/dist/plotly-strict.js @@ -1,5 +1,5 @@ /** -* plotly.js (strict) v3.3.0 +* plotly.js (strict) v3.3.1 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -81,7 +81,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.3.0"; + exports.version = "3.3.1"; } }); @@ -8789,7 +8789,7 @@ var Plotly = (() => { var isArrayOrTypedArray = require_array().isArrayOrTypedArray; module.exports = function nestedProperty(container, propStr) { if (isNumeric(propStr)) propStr = String(propStr); - else if (typeof propStr !== "string" || propStr.substr(propStr.length - 4) === "[-1]") { + else if (typeof propStr !== "string" || propStr.slice(-4) === "[-1]") { throw "bad property string"; } var propParts = propStr.split("."); @@ -8808,7 +8808,7 @@ var Plotly = (() => { if (indexed[1]) propParts[j] = indexed[1]; else if (j === 0) propParts.splice(0, 1); else throw "bad property string"; - indices = indexed[2].substr(1, indexed[2].length - 2).split("]["); + indices = indexed[2].slice(1, -1).split("]["); for (i = 0; i < indices.length; i++) { j++; propParts.splice(j, 0, Number(indices[i])); @@ -10886,11 +10886,11 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { key = keys[i]; val = container[key]; - if (key.substr(key.length - 5) === "color") { + if (key.slice(-5) === "color") { if (Array.isArray(val)) { for (j = 0; j < val.length; j++) val[j] = cleanOne(val[j]); } else container[key] = cleanOne(val); - } else if (key.substr(key.length - 10) === "colorscale" && Array.isArray(val)) { + } else if (key.slice(-10) === "colorscale" && Array.isArray(val)) { for (j = 0; j < val.length; j++) { if (Array.isArray(val[j])) val[j][1] = cleanOne(val[j][1]); } @@ -10905,7 +10905,7 @@ var Plotly = (() => { function cleanOne(val) { if (isNumeric(val) || typeof val !== "string") return val; var valTrim = val.trim(); - if (valTrim.substr(0, 3) !== "rgb") return val; + if (valTrim.slice(0, 3) !== "rgb") return val; var match = valTrim.match(/^rgba?\s*\(([^()]*)\)$/); if (!match) return val; var parts = match[1].trim().split(/\s*[\s,]\s*/); @@ -10999,7 +10999,7 @@ var Plotly = (() => { for (var i = 0; i < values.length; i++) { var k = String(values[i]); if (k.charAt(0) === "/" && k.charAt(k.length - 1) === "/") { - var regex = new RegExp(k.substr(1, k.length - 2)); + var regex = new RegExp(k.slice(1, -1)); if (regex.test(v)) return true; } else if (v === values[i]) return true; } @@ -11007,9 +11007,13 @@ var Plotly = (() => { } }, boolean: { - coerceFunction: function(v, propOut, dflt) { - if (v === true || v === false) propOut.set(v); - else propOut.set(dflt); + coerceFunction: function(v, propOut, dflt, opts) { + const isBoolean = (value) => value === true || value === false; + if (isBoolean(v) || opts.arrayOk && Array.isArray(v) && v.length > 0 && v.every(isBoolean)) { + propOut.set(v); + } else { + propOut.set(dflt); + } } }, number: { @@ -11076,11 +11080,12 @@ var Plotly = (() => { subplotid: { coerceFunction: function(v, propOut, dflt, opts) { var regex = opts.regex || counterRegex(dflt); - if (typeof v === "string" && regex.test(v)) { + const isSubplotId = (value) => typeof value === "string" && regex.test(value); + if (isSubplotId(v) || opts.arrayOk && isArrayOrTypedArray(v) && v.length > 0 && v.every(isSubplotId)) { propOut.set(v); - return; + } else { + propOut.set(dflt); } - propOut.set(dflt); }, validateFunction: function(v, opts) { var dflt = opts.dflt; @@ -13786,9 +13791,9 @@ var Plotly = (() => { var require_maplibre_gl = __commonJS({ "node_modules/maplibre-gl/dist/maplibre-gl.css"() { (function() { - if (!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")) { + if (!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")) { var e = document.createElement("style"); - e.id = "ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe"; + e.id = "696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97"; e.textContent = `.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`; document.head.appendChild(e); } @@ -14111,10 +14116,10 @@ var Plotly = (() => { var isWorld = isWorldCalendar(calendar); var s0 = s.charAt(0); if (isWorld && (s0 === "G" || s0 === "g")) { - s = s.substr(1); + s = s.slice(1); calendar = ""; } - var isChinese = isWorld && calendar.substr(0, 7) === "chinese"; + var isChinese = isWorld && calendar.slice(0, 7) === "chinese"; var match = s.match(isChinese ? DATETIME_REGEXP_CN : DATETIME_REGEXP); if (!match) return BADNUM; var y = match[1]; @@ -14158,7 +14163,7 @@ var Plotly = (() => { return exports.dateTime2ms(s, calendar) !== BADNUM; }; function lpad(val, digits) { - return String(val + Math.pow(10, digits)).substr(1); + return String(val + Math.pow(10, digits)).slice(1); } var NINETYDAYS = 90 * ONEDAY; var THREEHOURS = 3 * ONEHOUR; @@ -14178,7 +14183,7 @@ var Plotly = (() => { dateStr = utcFormat("G%Y-%m-%d")(new Date(msRounded)); } if (dateStr.charAt(0) === "-") { - while (dateStr.length < 11) dateStr = "-0" + dateStr.substr(1); + while (dateStr.length < 11) dateStr = "-0" + dateStr.slice(1); } else { while (dateStr.length < 10) dateStr = "0" + dateStr; } @@ -14250,7 +14255,7 @@ var Plotly = (() => { function modDateFormat(fmt, x, formatter, calendar) { fmt = fmt.replace(fracMatch, function(match) { var digits = Math.min(+match.charAt(1) || 6, 6); - var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).substr(2).replace(/0+$/, "") || "0"; + var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).slice(2).replace(/0+$/, "") || "0"; return fracSecs; }); var d = new Date(Math.floor(x + 0.05)); @@ -14273,7 +14278,7 @@ var Plotly = (() => { if (tr !== "M") { if (!isNumeric(tr)) tr = 0; var sec = Math.min(mod(x / ONESEC, 60), MAXSECONDS[tr]); - var secStr = (100 + sec).toFixed(tr).substr(1); + var secStr = (100 + sec).toFixed(tr).slice(1); if (tr > 0) { secStr = secStr.replace(/0+$/, "").replace(/[\.]$/, ""); } @@ -14987,8 +14992,8 @@ var Plotly = (() => { if (part.indexOf("Safari") !== -1) { for (var k = i - 1; k > -1; k--) { var prevPart = allParts[k]; - if (prevPart.substr(0, 8) === "Version/") { - var v = prevPart.substr(8).split(".")[0]; + if (prevPart.slice(0, 8) === "Version/") { + var v = prevPart.slice(8).split(".")[0]; if (isNumeric(v)) v = +v; if (v >= 13) return true; } @@ -15455,7 +15460,7 @@ var Plotly = (() => { return finalStep && finalStep(arg); }; lib.stripTrailingSlash = function(str) { - if (str.substr(-1) === "/") return str.substr(0, str.length - 1); + if (str.slice(-1) === "/") return str.slice(0, -1); return str; }; lib.noneOrAll = function(containerIn, containerOut, attrList) { @@ -15616,7 +15621,7 @@ var Plotly = (() => { } lib.minExtend = minExtend; lib.titleCase = function(s) { - return s.charAt(0).toUpperCase() + s.substr(1); + return s.charAt(0).toUpperCase() + s.slice(1); }; lib.containsAny = function(s, fragments) { for (var i = 0; i < fragments.length; i++) { @@ -17128,7 +17133,7 @@ var Plotly = (() => { if (name2.charAt(lastChar) !== "s") { Lib.warn("bad argument to arrayDefaultKey: " + name2); } - return name2.substr(0, name2.length - 1) + "defaults"; + return name2.slice(0, -1) + "defaults"; } exports.arrayDefaultKey = arrayDefaultKey; exports.arrayEditor = function(parentIn, containerStr, itemOut) { @@ -17253,13 +17258,13 @@ var Plotly = (() => { var constants = require_constants2(); exports.id2name = function id2name(id) { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; - var axNum = id.split(" ")[0].substr(1); + var axNum = id.split(" ")[0].slice(1); if (axNum === "1") axNum = ""; return id.charAt(0) + "axis" + axNum; }; exports.name2id = function name2id(name2) { if (!name2.match(constants.AX_NAME_PATTERN)) return; - var axNum = name2.substr(5); + var axNum = name2.slice(5); if (axNum === "1") axNum = ""; return name2.charAt(0) + axNum; }; @@ -17268,7 +17273,7 @@ var Plotly = (() => { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; if (axLetter && id.charAt(0) !== axLetter) return; if (domainTest && !domainId) return; - var axNum = id.split(" ")[0].substr(1).replace(/^0+/, ""); + var axNum = id.split(" ")[0].slice(1).replace(/^0+/, ""); if (axNum === "1") axNum = ""; return id.charAt(0) + axNum + (domainTest && domainId ? " domain" : ""); }; @@ -17280,7 +17285,7 @@ var Plotly = (() => { var i; for (i = 0; i < idList.length; i++) { var idi = idList[i]; - out[i] = fullLayout[idi.charAt(0) + "axis" + idi.substr(1)]; + out[i] = fullLayout[idi.charAt(0) + "axis" + idi.slice(1)]; } if (!only2d) { var sceneIds3D = fullLayout._subplots.gl3d || []; @@ -17311,7 +17316,7 @@ var Plotly = (() => { var ax = null; if (Registry.traceIs(fullTrace, "gl3d")) { var scene = fullTrace.scene; - if (scene.substr(0, 5) === "scene") { + if (scene.slice(0, 5) === "scene") { ax = fullLayout[scene][type + "axis"]; } } else { @@ -17323,7 +17328,7 @@ var Plotly = (() => { var letter1 = id1.charAt(0); var letter2 = id2.charAt(0); if (letter1 !== letter2) return letter1 > letter2 ? 1 : -1; - return +(id1.substr(1) || 1) - +(id2.substr(1) || 1); + return +(id1.slice(1) || 1) - +(id2.slice(1) || 1); }; exports.ref2id = function(ar) { return /^[xyz]/.test(ar) ? ar.split(" ")[0] : false; @@ -18556,7 +18561,12 @@ var Plotly = (() => { _module.attributes.showlegend ? _module.attributes : plots.attributes, "showlegend" ); - coerce("legend"); + Lib.coerce( + traceIn, + traceOut, + _module.attributes.legend ? _module.attributes : plots.attributes, + "legend" + ); coerce("legendwidth"); coerce("legendgroup"); coerce("legendgrouptitle.text"); @@ -18691,7 +18701,7 @@ var Plotly = (() => { Lib.coerce(layoutIn, layoutOut, scatterAttrs, "scattermode"); }; function getComputedSize(attr) { - return typeof attr === "string" && attr.substr(attr.length - 2) === "px" && parseFloat(attr); + return typeof attr === "string" && attr.slice(-2) === "px" && parseFloat(attr); } plots.plotAutoSize = function plotAutoSize(gd, layout, fullLayout) { var context = gd._context || {}; @@ -19131,7 +19141,7 @@ var Plotly = (() => { return; } if (mode === "keepdata") { - if (v.substr(v.length - 3) === "src") { + if (v.slice(-3) === "src") { return; } } else if (mode === "keepstream") { @@ -20363,9 +20373,9 @@ var Plotly = (() => { newParts.pop(); } if (len > eLen) { - newParts.push(p.substr(0, pLen2 - eLen) + ellipsis); + newParts.push(p.slice(0, Math.max(0, pLen2 - eLen)) + ellipsis); } else { - newParts.push(p.substr(0, pLen2)); + newParts.push(p.slice(0, pLen2)); } break; } @@ -20390,7 +20400,7 @@ var Plotly = (() => { var outChar; if (innerMatch.charAt(0) === "#") { outChar = fromCodePoint( - innerMatch.charAt(1) === "x" ? parseInt(innerMatch.substr(2), 16) : parseInt(innerMatch.substr(1), 10) + innerMatch.charAt(1) === "x" ? parseInt(innerMatch.slice(2), 16) : parseInt(innerMatch.slice(1), 10) ); } else outChar = entityToUnicode[innerMatch]; return outChar || fullMatch; @@ -22022,7 +22032,7 @@ var Plotly = (() => { return dtickDflt; } var prefix = dtick.charAt(0); - var dtickNum = dtick.substr(1); + var dtickNum = dtick.slice(1); dtickNum = isNumeric(dtickNum) ? Number(dtickNum) : 0; if (dtickNum <= 0 || !// "M" gives ticks every (integer) n months (isDate && prefix === "M" && dtickNum === Math.round(dtickNum) || // "L" gives ticks linearly spaced in data (not in position) every (float) f @@ -26879,7 +26889,7 @@ var Plotly = (() => { var stats = Lib.findExactDates(data, calendar); var threshold = 0.8; if (stats.exactDays > threshold) { - var numMonths = Number(dtick.substr(1)); + var numMonths = Number(dtick.slice(1)); if (stats.exactYears > threshold && numMonths % 12 === 0) { binStart = axes.tickIncrement(binStart, "M6", "reverse") + ONEDAY * 1.5; } else if (stats.exactMonths > threshold) { @@ -27531,8 +27541,8 @@ var Plotly = (() => { var tick0str = ax.l2r(tick0ms).replace(/(^-|i)/g, ""); var tick0len = tick0str.length; if (String(dtick).charAt(0) === "M") { - if (tick0len > 10 || tick0str.substr(5) !== "01-01") ax._tickround = "d"; - else ax._tickround = +dtick.substr(1) % 12 === 0 ? "y" : "m"; + if (tick0len > 10 || tick0str.slice(5) !== "01-01") ax._tickround = "d"; + else ax._tickround = +dtick.slice(1) % 12 === 0 ? "y" : "m"; } else if (dtick >= ONEDAY && tick0len <= 10 || dtick >= ONEDAY * 15) ax._tickround = "d"; else if (dtick >= ONEMIN && tick0len <= 16 || dtick >= ONEHOUR) ax._tickround = "M"; else if (dtick >= ONESEC && tick0len <= 19 || dtick >= ONEMIN) ax._tickround = "S"; @@ -27543,7 +27553,7 @@ var Plotly = (() => { } } else if (isNumeric(dtick) || dtick.charAt(0) === "L") { var rng = ax.range.map(ax.r2d || Number); - if (!isNumeric(dtick)) dtick = Number(dtick.substr(1)); + if (!isNumeric(dtick)) dtick = Number(dtick.slice(1)); ax._tickround = 2 - Math.floor(Math.log(dtick) / Math.LN10 + 0.01); var maxend = Math.max(Math.abs(rng[0]), Math.abs(rng[1])); var rangeexp = Math.floor(Math.log(maxend) / Math.LN10 + 0.01); @@ -27561,7 +27571,7 @@ var Plotly = (() => { var axSign = axrev ? -1 : 1; if (isNumeric(dtick)) return Lib.increment(x, axSign * dtick); var tType = dtick.charAt(0); - var dtSigned = axSign * Number(dtick.substr(1)); + var dtSigned = axSign * Number(dtick.slice(1)); if (tType === "M") return Lib.incrementMonth(x, dtSigned, calendar); if (tType === "L") return Math.log(Math.pow(10, x) + dtSigned) / Math.LN10; if (tType === "D") { @@ -27588,7 +27598,7 @@ var Plotly = (() => { return tmin; } var tType = dtick.charAt(0); - var dtNum = Number(dtick.substr(1)); + var dtNum = Number(dtick.slice(1)); if (tType === "M") { var cnt = 0; var t02 = tick0; @@ -27718,8 +27728,8 @@ var Plotly = (() => { var headStr; var splitIndex = dateStr.indexOf("\n"); if (splitIndex !== -1) { - headStr = dateStr.substr(splitIndex + 1); - dateStr = dateStr.substr(0, splitIndex); + headStr = dateStr.slice(splitIndex + 1); + dateStr = dateStr.slice(0, splitIndex); } if (extraPrecision) { if (headStr !== void 0 && (dateStr === "00:00:00" || dateStr === "00:00")) { @@ -27940,12 +27950,12 @@ var Plotly = (() => { if (tickRound === 0) v = String(Math.floor(v)); else if (tickRound < 0) { v = String(Math.round(v)); - v = v.substr(0, v.length + tickRound); + v = v.slice(0, Math.max(0, v.length + tickRound)); for (var i = tickRound; i < 0; i++) v += "0"; } else { v = String(v); var dp = v.indexOf(".") + 1; - if (dp) v = v.substr(0, dp + tickRound).replace(/\.?0+$/, ""); + if (dp) v = v.slice(0, dp + tickRound).replace(/\.?0+$/, ""); } v = Lib.numSeparate(v, ax._separators, separatethousands); } @@ -28040,8 +28050,8 @@ var Plotly = (() => { var allSubplots = subplotObj.cartesian.concat(subplotObj.gl2d || []); var out = ax ? axes.findSubplotsWithAxis(allSubplots, ax) : allSubplots; out.sort(function(a, b) { - var aParts = a.substr(1).split("y"); - var bParts = b.substr(1).split("y"); + var aParts = a.slice(1).split("y"); + var bParts = b.slice(1).split("y"); if (aParts[0] === bParts[0]) return +aParts[1] - +bParts[1]; return +aParts[0] - +bParts[0]; }); @@ -30016,7 +30026,7 @@ var Plotly = (() => { for (var i = 0; i < classes.length; i++) { var cls = classes[i]; if (cls.indexOf("cursor-") === 0) { - el3.attr(STASHATTR, cls.substr(7)).classed(cls, false); + el3.attr(STASHATTR, cls.slice(7)).classed(cls, false); } } if (!el3.attr(STASHATTR)) { @@ -30258,8 +30268,33 @@ var Plotly = (() => { var shapesWithLegend = (layoutOut.shapes || []).filter(function(d) { return d.showlegend; }); + function isPieWithLegendArray(trace2) { + return Registry.traceIs(trace2, "pie-like") && trace2._length != null && (Array.isArray(trace2.legend) || Array.isArray(trace2.showlegend)); + } + ; + fullData.filter(isPieWithLegendArray).forEach(function(trace2) { + if (trace2.visible) { + legendTraceCount++; + } + for (var index = 0; index < trace2._length; index++) { + var legend = (Array.isArray(trace2.legend) ? trace2.legend[index] : trace2.legend) || "legend"; + if (legend === legendId) { + const showInLegend = Array.isArray(trace2.showlegend) ? trace2.showlegend[index] : trace2.showlegend; + if (showInLegend || trace2._dfltShowLegend) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + } + if (legendId === "legend" && trace2._length > trace2.legend.length) { + for (var idx = trace2.legend.length; idx < trace2._length; idx++) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + }); var allLegendItems = fullData.concat(shapesWithLegend).filter(function(d) { - return legendId === (d.legend || "legend"); + return !isPieWithLegendArray(trace) && legendId === (d.legend || "legend"); }); for (var i = 0; i < allLegendItems.length; i++) { trace = allLegendItems[i]; @@ -30287,7 +30322,7 @@ var Plotly = (() => { layoutOut, basePlotLayoutAttributes, "showlegend", - legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) + layoutOut.showlegend || legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) ); if (showLegend === false) layoutOut[legendId] = void 0; if (showLegend === false && !containerIn.uirevision) return; @@ -30392,7 +30427,11 @@ var Plotly = (() => { } var legends = ["legend"]; for (i = 0; i < allLegendsData.length; i++) { - Lib.pushUnique(legends, allLegendsData[i].legend); + if (Array.isArray(allLegendsData[i].legend)) { + legends = legends.concat(allLegendsData[i].legend); + } else { + Lib.pushUnique(legends, allLegendsData[i].legend); + } } layoutOut._legends = []; for (i = 0; i < legends.length; i++) { @@ -30683,8 +30722,16 @@ var Plotly = (() => { var lgroup = trace.legendgroup; if (!inHover && (!trace.visible || !trace.showlegend)) continue; if (Registry.traceIs(trace, "pie-like")) { + var legendPerSlice = Array.isArray(trace.legend); + var showlegendPerSlice = Array.isArray(trace.showlegend); if (!slicesShown[lgroup]) slicesShown[lgroup] = {}; for (j = 0; j < cd.length; j++) { + if (showlegendPerSlice && trace.showlegend[cd[j].i] === false) { + continue; + } + if (legendPerSlice) { + lid = trace.legend[cd[j].i] || "legend"; + } var labelj = cd[j].label; if (!slicesShown[lgroup][labelj]) { addOneItem(lid, lgroup, { @@ -31880,7 +31927,11 @@ var Plotly = (() => { } function computeTextDimensions(g, gd, legendObj, aTitle) { var legendItem = g.data()[0][0]; - if (!legendObj._inHover && legendItem && !legendItem.trace.showlegend) { + var showlegend = legendItem && legendItem.trace.showlegend; + if (Array.isArray(showlegend)) { + showlegend = showlegend[legendItem.i] !== false; + } + if (!legendObj._inHover && legendItem && !showlegend) { g.remove(); return; } @@ -35150,7 +35201,7 @@ var Plotly = (() => { segments.forEach(function(segment) { var relevantParamIdx = paramsToUse[segment.charAt(0)].drawn; if (relevantParamIdx === void 0) return; - var params = segment.substr(1).match(constants.paramRE); + var params = segment.slice(1).match(constants.paramRE); if (!params || params.length < relevantParamIdx) return; var str = params[relevantParamIdx]; var pos = isRaw ? str : Lib.cleanNumber(str); @@ -35341,7 +35392,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (xParams[paramNumber]) { if (xSizemode === "pixel") param = x2p(xAnchor) + Number(param); else param = x2p(param); @@ -36350,7 +36401,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (paramNumber >= nParams) return param; if (xParams[paramNumber]) param = moveX(param); else if (yParams[paramNumber]) param = moveY(param); @@ -38073,12 +38124,12 @@ var Plotly = (() => { if (typeof a === "string") { aPrefix = a.match(/^[xy]*/)[0]; aLen = aPrefix.length; - a = +a.substr(aLen); + a = +a.slice(aLen); } if (typeof b === "string") { bPrefix = b.match(/^[xy]*/)[0]; bLen = bPrefix.length; - b = +b.substr(bLen); + b = +b.slice(bLen); } var c = a * b; if (!aLen && !bLen) { @@ -38090,7 +38141,7 @@ var Plotly = (() => { if (aLen === bLen) { return c; } - return (aLen > bLen ? aPrefix.substr(bLen) : bPrefix.substr(aLen)) + c; + return (aLen > bLen ? aPrefix.slice(bLen) : bPrefix.slice(aLen)) + c; } function finalRatios(group, fullLayout) { var size = fullLayout._size; @@ -38103,7 +38154,7 @@ var Plotly = (() => { if (typeof val === "string") { var prefix = val.match(/^[xy]*/)[0]; var pLen = prefix.length; - val = +val.substr(pLen); + val = +val.slice(pLen); var mult = prefix.charAt(0) === "y" ? yRatio : 1 / yRatio; for (var j = 0; j < pLen; j++) { val *= mult; @@ -43720,7 +43771,7 @@ var Plotly = (() => { } if (!arrayStr) arrayStr = rootContainers[rootContainers.indexOf(rootPart)]; if (!arrayStr) return false; - var tail = astr.substr(arrayStr.length); + var tail = astr.slice(arrayStr.length); if (!tail) return { array: arrayStr, index: "", property: "" }; match = tail.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/); if (!match) return false; @@ -44077,7 +44128,7 @@ var Plotly = (() => { for (i = 0; i < minLen; i++) { if (name1.charAt(i) !== name2.charAt(i)) break; } - var out = name1.substr(0, i); + var out = name1.slice(0, i); return out.trim(); } function cleanTextPosition(textposition) { @@ -44158,7 +44209,7 @@ var Plotly = (() => { var ATTR_TAIL_RE = /(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/; function getParent(attr) { var tail = attr.search(ATTR_TAIL_RE); - if (tail > 0) return attr.substr(0, tail); + if (tail > 0) return attr.slice(0, tail); } exports.hasParent = function(aobj, attr) { var attrParent = getParent(attr); @@ -44175,8 +44226,8 @@ var Plotly = (() => { var ax = getFromTrace(gd, trace, AX_LETTERS[j]); if (ax && ax.type !== "log") { var axAttr = ax._name; - var sceneName = ax._id.substr(1); - if (sceneName.substr(0, 5) === "scene") { + var sceneName = ax._id.slice(1); + if (sceneName.slice(0, 5) === "scene") { if (layoutUpdate[sceneName] !== void 0) continue; axAttr = sceneName + "." + axAttr; } @@ -45058,7 +45109,7 @@ var Plotly = (() => { } if (attr in aobj || helpers.hasParent(aobj, attr)) return; var extraparam; - if (attr.substr(0, 6) === "LAYOUT") { + if (attr.slice(0, 6) === "LAYOUT") { extraparam = layoutNP(gd.layout, attr.replace("LAYOUT", "")); } else { var tracei = traces[i2]; @@ -45103,7 +45154,7 @@ var Plotly = (() => { else vi = null; } redoit[ai] = vi; - if (ai.substr(0, 6) === "LAYOUT") { + if (ai.slice(0, 6) === "LAYOUT") { param = layoutNP(gd.layout, ai.replace("LAYOUT", "")); undoit[ai] = [undefinedToNull(param.get())]; param.set(Array.isArray(vi) ? vi[0] : vi); @@ -45120,7 +45171,7 @@ var Plotly = (() => { newVal = Array.isArray(vi) ? vi[i % vi.length] : vi; if (newVal === void 0) continue; var finalPart = param.parts[param.parts.length - 1]; - var prefix = ai.substr(0, ai.length - finalPart.length - 1); + var prefix = ai.slice(0, ai.length - finalPart.length - 1); var prefixDot = prefix ? prefix + "." : ""; var innerContFull = prefix ? nestedProperty(contFull, prefix).get() : contFull; valObject = PlotSchema.getTraceValObject(contFull, param.parts); @@ -45345,7 +45396,7 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { if (keys[i].indexOf("allaxes") === 0) { for (j = 0; j < axes.length; j++) { - var scene = axes[j]._id.substr(1); + var scene = axes[j]._id.slice(1); var axisAttr = scene.indexOf("scene") !== -1 ? scene + "." : ""; var newkey = keys[i].replace("allaxes", axisAttr + axes[j]._name); if (!aobj[newkey]) aobj[newkey] = aobj[keys[i]]; @@ -45653,7 +45704,7 @@ var Plotly = (() => { var match = key.match(spec.pattern); if (match) { var head = match[1] || ""; - return { head, tail: key.substr(head.length + 1), attr: spec.attr }; + return { head, tail: key.slice(head.length + 1), attr: spec.attr }; } } } @@ -45714,7 +45765,7 @@ var Plotly = (() => { } newNP.set(undefinedToNull(nestedProperty(oldFullLayout, key).get())); continue; - } else if (tail === "autorange" || tail.substr(0, 6) === "range[") { + } else if (tail === "autorange" || tail.slice(0, 6) === "range[") { var pre0 = layoutPreGUI[head + ".range[0]"]; var pre1 = layoutPreGUI[head + ".range[1]"]; var preAuto = layoutPreGUI[head + ".autorange"]; @@ -45734,7 +45785,7 @@ var Plotly = (() => { Lib.warn("unrecognized GUI edit: " + key); } delete layoutPreGUI[key]; - if (match && match.tail.substr(0, 6) === "range[") { + if (match && match.tail.slice(0, 6) === "range[") { newRangeAccepted[match.head] = 1; } } @@ -47258,7 +47309,7 @@ var Plotly = (() => { for (var i = 0; i < path.length; i++) { var p = path[i]; if (typeof p === "number") { - astr = astr.substr(0, astr.length - 1) + "[" + p + "]"; + astr = astr.slice(0, -1) + "[" + p + "]"; } else { astr += p; } @@ -49849,7 +49900,7 @@ var Plotly = (() => { prevtrace._nexttrace = trace; } } - trace._ownfill = trace.fill && (trace.fill.substr(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.substr(0, 2) === "to" && !trace._prevtrace); + trace._ownfill = trace.fill && (trace.fill.slice(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.slice(0, 2) === "to" && !trace._prevtrace); prevtraces[group] = trace; } else { trace._prevtrace = trace._nexttrace = trace._ownfill = null; @@ -50052,8 +50103,8 @@ var Plotly = (() => { fullpath = thispath; revpath = thisrevpath; } else if (ownFillDir) { - fullpath += "L" + thispath.substr(1); - revpath = thisrevpath + ("L" + revpath.substr(1)); + fullpath += "L" + thispath.slice(1); + revpath = thisrevpath + ("L" + revpath.slice(1)); } else { fullpath += "Z" + thispath; revpath = thisrevpath + "Z" + revpath; @@ -50118,7 +50169,7 @@ var Plotly = (() => { if (pt0 && pt1) { if (ownFillDir) { pt0[fillAxisIndex] = pt1[fillAxisIndex] = fillAxisZero; - transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.substr(1)).call(Drawing.singleFillStyle, gd); + transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.slice(1)).call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(null); } else { transition(ownFillEl3).attr("d", fullpath + "Z").call(Drawing.singleFillStyle, gd); @@ -50128,13 +50179,13 @@ var Plotly = (() => { trace._polygons = thisPolygons; trace._fillElement = ownFillEl3; } else if (tonext) { - if (trace.fill.substr(0, 6) === "tonext" && fullpath && prevRevpath) { + if (trace.fill.slice(0, 6) === "tonext" && fullpath && prevRevpath) { if (trace.fill === "tonext") { transition(tonext).attr("d", fullpath + "Z" + prevRevpath + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makeSelfPolygons(); trace._polygons = thisPolygons.concat(prevPolygons); } else { - transition(tonext).attr("d", fullpath + "L" + prevRevpath.substr(1) + "Z").call(Drawing.singleFillStyle, gd); + transition(tonext).attr("d", fullpath + "L" + prevRevpath.slice(1) + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(prevFillsegments); trace._polygons = thisPolygons; } @@ -51109,7 +51160,7 @@ var Plotly = (() => { }; function indexOfDay(v) { if (typeof v !== "string") return; - return dayStrToNum[v.substr(0, 3).toLowerCase()]; + return dayStrToNum[v.slice(0, 3).toLowerCase()]; } } }); @@ -51700,10 +51751,10 @@ var Plotly = (() => { if (constants.attrRegex.test(ki)) { var axLetter = ki.charAt(0); if (axLetter === "x") { - if (!xi || +ki.substr(5) < +xi.substr(5)) { + if (!xi || +ki.slice(5) < +xi.slice(5)) { xi = ki; } - } else if (!yi || +ki.substr(5) < +yi.substr(5)) { + } else if (!yi || +ki.slice(5) < +yi.slice(5)) { yi = ki; } } @@ -53927,7 +53978,7 @@ var Plotly = (() => { segment = segments[i]; drawnParam = paramsToUse[segment.charAt(0)].drawn; if (drawnParam === void 0) continue; - params = segments[i].substr(1).match(constants.paramRE); + params = segments[i].slice(1).match(constants.paramRE); if (!params || params.length < drawnParam) continue; val = convertVal(params[drawnParam]); if (val < min) min = val; @@ -56278,9 +56329,9 @@ var Plotly = (() => { var subplots = layoutOut._subplots; if (subplots) { var yIds = subplots.cartesian.filter(function(subplotId) { - return subplotId.substr(0, subplotId.indexOf("y")) === axisIds.name2id(axName); + return subplotId.slice(0, Math.max(0, subplotId.indexOf("y"))) === axisIds.name2id(axName); }).map(function(subplotId) { - return subplotId.substr(subplotId.indexOf("y"), subplotId.length); + return subplotId.slice(subplotId.indexOf("y"), subplotId.length); }); var yNames = Lib.simpleMap(yIds, axisIds.id2name); for (var i = 0; i < yNames.length; i++) { @@ -58282,7 +58333,7 @@ var Plotly = (() => { placeholder: fullLayout._dfltTitle.colorbar, containerGroup: g.select("." + cn.cbtitle) }; - var otherClass = titleClass.charAt(0) === "h" ? titleClass.substr(1) : "h" + titleClass; + var otherClass = titleClass.charAt(0) === "h" ? titleClass.slice(1) : "h" + titleClass; g.selectAll("." + otherClass + ",." + otherClass + "-math-group").remove(); Titles.draw(gd, titleClass, extendFlat(dfltTitleOpts, titleOpts || {})); } @@ -63077,7 +63128,7 @@ var Plotly = (() => { return function(v, isRightEdge) { var dateStr = pa.c2d(v, oneYear, calendar); var dashPos = dateStr.indexOf("-", dashExclude); - if (dashPos > 0) dateStr = dateStr.substr(0, dashPos); + if (dashPos > 0) dateStr = dateStr.slice(0, dashPos); var roundedV = pa.d2c(dateStr, 0, calendar); if (roundedV < v) { var nextV = tickIncrement(roundedV, increment, false, calendar); @@ -68327,7 +68378,7 @@ var Plotly = (() => { proto.drawAxes = function(doTitles) { var _this = this; var gd = _this.graphDiv; - var titlesuffix = _this.id.substr(7) + "title"; + var titlesuffix = _this.id.slice(7) + "title"; var layers = _this.layers; var aaxis = _this.aaxis; var baxis = _this.baxis; @@ -69483,7 +69534,7 @@ var Plotly = (() => { pathNeg = makePath(pts, trace); } if (hasBothSides) { - path = pathPos + "L" + pathNeg.substr(1) + "Z"; + path = pathPos + "L" + pathNeg.slice(1) + "Z"; } else { var startPt = [posCenterPx, valAxis.c2p(density[0].t)]; var endPt = [posCenterPx, valAxis.c2p(density[len - 1].t)]; @@ -69492,9 +69543,9 @@ var Plotly = (() => { endPt.reverse(); } if (hasPositiveSide) { - path = "M" + startPt + "L" + pathPos.substr(1) + "L" + endPt; + path = "M" + startPt + "L" + pathPos.slice(1) + "L" + endPt; } else { - path = "M" + endPt + "L" + pathNeg.substr(1) + "L" + startPt; + path = "M" + endPt + "L" + pathNeg.slice(1) + "L" + startPt; } } pathSel.attr("d", path); @@ -82769,6 +82820,12 @@ var Plotly = (() => { dflt: false, editType: "plot" }, + showlegend: extendFlat({}, baseAttrs.showlegend, { + arrayOk: true + }), + legend: extendFlat({}, baseAttrs.legend, { + arrayOk: true + }), title: { text: { valType: "string", @@ -126906,7 +126963,7 @@ var Plotly = (() => { }; exports.cleanId = function cleanId(id) { if (!id.match(/^scene[0-9]*$/)) return; - var sceneNum = id.substr(5); + var sceneNum = id.slice(5); if (sceneNum === "1") sceneNum = ""; return SCENE + sceneNum; }; @@ -141405,7 +141462,7 @@ var Plotly = (() => { var dfltSpans = constants[axisName + "Span"]; var hSpan = (dfltSpans[projType] || dfltSpans["*"]) / 2; var rot = coerce( - "projection.rotation." + axisName.substr(0, 3), + "projection.rotation." + axisName.slice(0, 3), scopeParams.projRotate[i] ); rangeDflt = [rot - hSpan, rot + hSpan]; @@ -189780,7 +189837,7 @@ void main() { } function pad2(num) { var s = "0" + num; - return s.substr(s.length - 2); + return s.slice(-2); } function getAttrName(i) { return i < maxDim ? "p" + pad2(i + 1) + "_" + pad2(i + 4) : "colors"; @@ -289125,7 +289182,7 @@ uniform ${i3} ${a3} u_${s3}; } else { if (directiveObj === UNKNOWN) replacementPart = UNKNOWN; else replacementPart = cDate.formatDate(directiveObj[modifier]); - fmt = fmt.substr(0, i) + replacementPart + fmt.substr(i + directiveLen); + fmt = fmt.slice(0, i) + replacementPart + fmt.slice(i + directiveLen); i += replacementPart.length; } } diff --git a/dist/plotly-strict.min.js b/dist/plotly-strict.min.js index 1e4650dbe69..02fa02b7b86 100644 --- a/dist/plotly-strict.min.js +++ b/dist/plotly-strict.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (strict - minified) v3.3.0 +* plotly.js (strict - minified) v3.3.1 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,92 +12,92 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var Ytt=Object.create;var CM=Object.defineProperty,Ktt=Object.defineProperties,Jtt=Object.getOwnPropertyDescriptor,$tt=Object.getOwnPropertyDescriptors,Qtt=Object.getOwnPropertyNames,sL=Object.getOwnPropertySymbols,ert=Object.getPrototypeOf,C9=Object.prototype.hasOwnProperty,_ee=Object.prototype.propertyIsEnumerable;var gee=(e,t,r)=>t in e?CM(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,ym=(e,t)=>{for(var r in t||(t={}))C9.call(t,r)&&gee(e,r,t[r]);if(sL)for(var r of sL(t))_ee.call(t,r)&&gee(e,r,t[r]);return e},O1=(e,t)=>Ktt(e,$tt(t));var xee=(e,t)=>{var r={};for(var n in e)C9.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&sL)for(var n of sL(e))t.indexOf(n)<0&&_ee.call(e,n)&&(r[n]=e[n]);return r};var tc=(e,t)=>()=>(e&&(t=e(e=0)),t);var Ae=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),bee=(e,t)=>{for(var r in t)CM(e,r,{get:t[r],enumerable:!0})},wee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Qtt(t))!C9.call(e,i)&&i!==r&&CM(e,i,{get:()=>t[i],enumerable:!(n=Jtt(t,i))||n.enumerable});return e};var trt=(e,t,r)=>(r=e!=null?Ytt(ert(e)):{},wee(t||!e||!e.__esModule?CM(r,"default",{value:e,enumerable:!0}):r,e)),ob=e=>wee(CM({},"__esModule",{value:!0}),e);var lL=Ae(Tee=>{"use strict";Tee.version="3.3.0"});var See=Ae((Aee,uL)=>{(function(t,r,n){r[t]=r[t]||n(),typeof uL!="undefined"&&uL.exports&&(uL.exports=r[t])})("Promise",typeof window!="undefined"?window:Aee,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(x,C){this.fn=x,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(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(se){for(var Pe=se.length,Xe=new Array(Pe);Pe--;)Xe[Pe]=se[Pe];return Xe}}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,u=o.setAttributeNS,l=this.CSSStyleDeclaration.prototype,f=l.setProperty;o.setAttribute=function(se,Pe){s.call(this,se,Pe+"")},o.setAttributeNS=function(se,Pe,Xe){u.call(this,se,Pe,Xe+"")},l.setProperty=function(se,Pe,Xe){f.call(this,se,Pe+"",Xe)}}e.ascending=c;function c(Z,se){return Zse?1:Z>=se?0:NaN}e.descending=function(Z,se){return seZ?1:se>=Z?0:NaN},e.min=function(Z,se){var Pe=-1,Xe=Z.length,Qe,st;if(arguments.length===1){for(;++Pe=st){Qe=st;break}for(;++Pest&&(Qe=st)}else{for(;++Pe=st){Qe=st;break}for(;++Pest&&(Qe=st)}return Qe},e.max=function(Z,se){var Pe=-1,Xe=Z.length,Qe,st;if(arguments.length===1){for(;++Pe=st){Qe=st;break}for(;++PeQe&&(Qe=st)}else{for(;++Pe=st){Qe=st;break}for(;++PeQe&&(Qe=st)}return Qe},e.extent=function(Z,se){var Pe=-1,Xe=Z.length,Qe,st,jt;if(arguments.length===1){for(;++Pe=st){Qe=jt=st;break}for(;++Pest&&(Qe=st),jt=st){Qe=jt=st;break}for(;++Pest&&(Qe=st),jt1)return jt/(hr-1)},e.deviation=function(){var Z=e.variance.apply(this,arguments);return Z&&Math.sqrt(Z)};function p(Z){return{left:function(se,Pe,Xe,Qe){for(arguments.length<3&&(Xe=0),arguments.length<4&&(Qe=se.length);Xe>>1;Z(se[st],Pe)<0?Xe=st+1:Qe=st}return Xe},right:function(se,Pe,Xe,Qe){for(arguments.length<3&&(Xe=0),arguments.length<4&&(Qe=se.length);Xe>>1;Z(se[st],Pe)>0?Qe=st:Xe=st+1}return Xe}}}var _=p(c);e.bisectLeft=_.left,e.bisect=e.bisectRight=_.right,e.bisector=function(Z){return p(Z.length===1?function(se,Pe){return c(Z(se),Pe)}:Z)},e.shuffle=function(Z,se,Pe){(Xe=arguments.length)<3&&(Pe=Z.length,Xe<2&&(se=0));for(var Xe=Pe-se,Qe,st;Xe;)st=Math.random()*Xe--|0,Qe=Z[Xe+se],Z[Xe+se]=Z[st+se],Z[st+se]=Qe;return Z},e.permute=function(Z,se){for(var Pe=se.length,Xe=new Array(Pe);Pe--;)Xe[Pe]=Z[se[Pe]];return Xe},e.pairs=function(Z){for(var se=0,Pe=Z.length-1,Xe,Qe=Z[0],st=new Array(Pe<0?0:Pe);se=0;)for(jt=Z[se],Pe=jt.length;--Pe>=0;)st[--Qe]=jt[Pe];return st};var v=Math.abs;e.range=function(Z,se,Pe){if(arguments.length<3&&(Pe=1,arguments.length<2&&(se=Z,Z=0)),(se-Z)/Pe===1/0)throw new Error("infinite range");var Xe=[],Qe=k(v(Pe)),st=-1,jt;if(Z*=Qe,se*=Qe,Pe*=Qe,Pe<0)for(;(jt=Z+Pe*++st)>se;)Xe.push(jt/Qe);else for(;(jt=Z+Pe*++st)=se.length)return Qe?Qe.call(Z,hr):Xe?hr.sort(Xe):hr;for(var zr=-1,fi=hr.length,$r=se[Cr++],Bi,fn,mi,zi=new A,ji;++zr=se.length)return _t;var Cr=[],zr=Pe[hr++];return _t.forEach(function(fi,$r){Cr.push({key:fi,values:jt($r,hr)})}),zr?Cr.sort(function(fi,$r){return zr(fi.key,$r.key)}):Cr}return Z.map=function(_t,hr){return st(hr,_t,0)},Z.entries=function(_t){return jt(st(e.map,_t,0),0)},Z.key=function(_t){return se.push(_t),Z},Z.sortKeys=function(_t){return Pe[se.length-1]=_t,Z},Z.sortValues=function(_t){return Xe=_t,Z},Z.rollup=function(_t){return Qe=_t,Z},Z},e.set=function(Z){var se=new U;if(Z)for(var Pe=0,Xe=Z.length;Pe=0&&(Xe=Z.slice(Pe+1),Z=Z.slice(0,Pe)),Z)return arguments.length<2?this[Z].on(Xe):this[Z].on(Xe,se);if(arguments.length===2){if(se==null)for(Z in this)this.hasOwnProperty(Z)&&this[Z].on(Xe,null);return this}};function ae(Z){var se=[],Pe=new A;function Xe(){for(var Qe=se,st=-1,jt=Qe.length,_t;++st=0&&(Pe=Z.slice(0,se))!=="xmlns"&&(Z=Z.slice(se+1)),Je.hasOwnProperty(Pe)?{space:Je[Pe],local:Z}:Z}},De.attr=function(Z,se){if(arguments.length<2){if(typeof Z=="string"){var Pe=this.node();return Z=e.ns.qualify(Z),Z.local?Pe.getAttributeNS(Z.space,Z.local):Pe.getAttribute(Z)}for(se in Z)this.each(nt(se,Z[se]));return this}return this.each(nt(Z,se))};function nt(Z,se){Z=e.ns.qualify(Z);function Pe(){this.removeAttribute(Z)}function Xe(){this.removeAttributeNS(Z.space,Z.local)}function Qe(){this.setAttribute(Z,se)}function st(){this.setAttributeNS(Z.space,Z.local,se)}function jt(){var hr=se.apply(this,arguments);hr==null?this.removeAttribute(Z):this.setAttribute(Z,hr)}function _t(){var hr=se.apply(this,arguments);hr==null?this.removeAttributeNS(Z.space,Z.local):this.setAttributeNS(Z.space,Z.local,hr)}return se==null?Z.local?Xe:Pe:typeof se=="function"?Z.local?_t:jt:Z.local?st:Qe}function gt(Z){return Z.trim().replace(/\s+/g," ")}De.classed=function(Z,se){if(arguments.length<2){if(typeof Z=="string"){var Pe=this.node(),Xe=(Z=at(Z)).length,Qe=-1;if(se=Pe.classList){for(;++Qe=0;)(st=Pe[Xe])&&(Qe&&Qe!==st.nextSibling&&Qe.parentNode.insertBefore(st,Qe),Qe=st);return this},De.sort=function(Z){Z=ot.apply(this,arguments);for(var se=-1,Pe=this.length;++se=se&&(se=Qe+1);!(hr=jt[se])&&++se<_t;);return hr}}e.select=function(Z){var se;return typeof Z=="string"?(se=[Ee(Z,n)],se.parentNode=n.documentElement):(se=[Z],se.parentNode=i(Z)),ke([se])},e.selectAll=function(Z){var se;return typeof Z=="string"?(se=r(Me(Z,n)),se.parentNode=n.documentElement):(se=r(Z),se.parentNode=null),ke([se])},De.on=function(Z,se,Pe){var Xe=arguments.length;if(Xe<3){if(typeof Z!="string"){Xe<2&&(se=!1);for(Pe in Z)this.each(it(Pe,Z[Pe],se));return this}if(Xe<2)return(Xe=this.node()["__on"+Z])&&Xe._;Pe=!1}return this.each(it(Z,se,Pe))};function it(Z,se,Pe){var Xe="__on"+Z,Qe=Z.indexOf("."),st=It;Qe>0&&(Z=Z.slice(0,Qe));var jt=et.get(Z);jt&&(Z=jt,st=Yt);function _t(){var zr=this[Xe];zr&&(this.removeEventListener(Z,zr,zr.$),delete this[Xe])}function hr(){var zr=st(se,r(arguments));_t.call(this),this.addEventListener(Z,this[Xe]=zr,zr.$=Pe),zr._=se}function Cr(){var zr=new RegExp("^__on([^.]+)"+e.requote(Z)+"$"),fi;for(var $r in this)if(fi=$r.match(zr)){var Bi=this[$r];this.removeEventListener(fi[1],Bi,Bi.$),delete this[$r]}}return Qe?se?hr:_t:se?W:Cr}var et=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&et.forEach(function(Z){"on"+Z in n&&et.remove(Z)});function It(Z,se){return function(Pe){var Xe=e.event;e.event=Pe,se[0]=this.__data__;try{Z.apply(this,se)}finally{e.event=Xe}}}function Yt(Z,se){var Pe=It(Z,se);return function(Xe){var Qe=this,st=Xe.relatedTarget;(!st||st!==Qe&&!(st.compareDocumentPosition(Qe)&8))&&Pe.call(Qe,Xe)}}var cr,_r=0;function yr(Z){var se=".dragsuppress-"+ ++_r,Pe="click"+se,Xe=e.select(a(Z)).on("touchmove"+se,be).on("dragstart"+se,be).on("selectstart"+se,be);if(cr==null&&(cr="onselectstart"in Z?!1:H(Z.style,"userSelect")),cr){var Qe=i(Z).style,st=Qe[cr];Qe[cr]="none"}return function(jt){if(Xe.on(se,null),cr&&(Qe[cr]=st),jt){var _t=function(){Xe.on(Pe,null)};Xe.on(Pe,function(){be(),_t()},!0),setTimeout(_t,0)}}}e.mouse=function(Z){return Re(Z,ze())};var Ut=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Re(Z,se){se.changedTouches&&(se=se.changedTouches[0]);var Pe=Z.ownerSVGElement||Z;if(Pe.createSVGPoint){var Xe=Pe.createSVGPoint();if(Ut<0){var Qe=a(Z);if(Qe.scrollX||Qe.scrollY){Pe=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var st=Pe[0][0].getScreenCTM();Ut=!(st.f||st.e),Pe.remove()}}return Ut?(Xe.x=se.pageX,Xe.y=se.pageY):(Xe.x=se.clientX,Xe.y=se.clientY),Xe=Xe.matrixTransform(Z.getScreenCTM().inverse()),[Xe.x,Xe.y]}var jt=Z.getBoundingClientRect();return[se.clientX-jt.left-Z.clientLeft,se.clientY-jt.top-Z.clientTop]}e.touch=function(Z,se,Pe){if(arguments.length<3&&(Pe=se,se=ze().changedTouches),se){for(var Xe=0,Qe=se.length,st;Xe0?1:Z<0?-1:0}function zt(Z,se,Pe){return(se[0]-Z[0])*(Pe[1]-Z[1])-(se[1]-Z[1])*(Pe[0]-Z[0])}function rr(Z){return Z>1?0:Z<-1?Fe:Math.acos(Z)}function Gr(Z){return Z>1?fe:Z<-1?-fe:Math.asin(Z)}function Br(Z){return((Z=Math.exp(Z))-1/Z)/2}function Er(Z){return((Z=Math.exp(Z))+1/Z)/2}function Rr(Z){return((Z=Math.exp(2*Z))-1)/(Z+1)}function pi(Z){return(Z=Math.sin(Z/2))*Z}var Di=Math.SQRT2,ni=2,$i=4;e.interpolateZoom=function(Z,se){var Pe=Z[0],Xe=Z[1],Qe=Z[2],st=se[0],jt=se[1],_t=se[2],hr=st-Pe,Cr=jt-Xe,zr=hr*hr+Cr*Cr,fi,$r;if(zr0&&(ds=ds.transition().duration(jt)),ds.call(sn.event)}function El(){zi&&zi.domain(mi.range().map(function(ds){return(ds-Z.x)/Z.k}).map(mi.invert)),pn&&pn.domain(ji.range().map(function(ds){return(ds-Z.y)/Z.k}).map(ji.invert))}function Pl(ds){_t++||ds({type:"zoomstart"})}function pu(ds){El(),ds({type:"zoom",scale:Z.k,translate:[Z.x,Z.y]})}function Il(ds){--_t||(ds({type:"zoomend"}),Pe=null)}function fu(){var ds=this,Wl=fn.of(ds,arguments),Tu=0,Au=e.select(a(ds)).on(Cr,Mf).on(zr,pf),lf=wi(e.mouse(ds)),hf=yr(ds);Us.call(ds),Pl(Wl);function Mf(){Tu=1,Xo(e.mouse(ds),lf),pu(Wl)}function pf(){Au.on(Cr,null).on(zr,null),hf(Tu),Il(Wl)}}function Xu(){var ds=this,Wl=fn.of(ds,arguments),Tu={},Au=0,lf,hf=".zoom-"+e.event.changedTouches[0].identifier,Mf="touchmove"+hf,pf="touchend"+hf,fc=[],Be=e.select(ds),qt=yr(ds);Qr(),Pl(Wl),Be.on(hr,null).on($r,Qr);function ar(){var vi=e.touches(ds);return lf=Z.k,vi.forEach(function(on){on.identifier in Tu&&(Tu[on.identifier]=wi(on))}),vi}function Qr(){var vi=e.event.target;e.select(vi).on(Mf,yi).on(pf,ci),fc.push(vi);for(var on=e.event.changedTouches,Bn=0,Ln=on.length;Bn1){var ua=wn[0],Hn=wn[1],qi=ua[0]-Hn[0],Wr=ua[1]-Hn[1];Au=qi*qi+Wr*Wr}}function yi(){var vi=e.touches(ds),on,Bn,Ln,wn;Us.call(ds);for(var Ls=0,ua=vi.length;Ls1?1:se,Pe=Pe<0?0:Pe>1?1:Pe,Qe=Pe<=.5?Pe*(1+se):Pe+se-Pe*se,Xe=2*Pe-Qe;function st(_t){return _t>360?_t-=360:_t<0&&(_t+=360),_t<60?Xe+(Qe-Xe)*_t/60:_t<180?Qe:_t<240?Xe+(Qe-Xe)*(240-_t)/60:Xe}function jt(_t){return Math.round(st(_t)*255)}return new Fi(jt(Z+120),jt(Z),jt(Z-120))}e.hcl=Wt;function Wt(Z,se,Pe){return this instanceof Wt?(this.h=+Z,this.c=+se,void(this.l=+Pe)):arguments.length<2?Z instanceof Wt?new Wt(Z.h,Z.c,Z.l):Z instanceof Nr?ti(Z.l,Z.a,Z.b):ti((Z=Xr((Z=e.rgb(Z)).r,Z.g,Z.b)).l,Z.a,Z.b):new Wt(Z,se,Pe)}var xr=Wt.prototype=new Ni;xr.brighter=function(Z){return new Wt(this.h,this.c,Math.min(100,this.l+Or*(arguments.length?Z:1)))},xr.darker=function(Z){return new Wt(this.h,this.c,Math.max(0,this.l-Or*(arguments.length?Z:1)))},xr.rgb=function(){return Lr(this.h,this.c,this.l).rgb()};function Lr(Z,se,Pe){return isNaN(Z)&&(Z=0),isNaN(se)&&(se=0),new Nr(Pe,Math.cos(Z*=pe)*se,Math.sin(Z)*se)}e.lab=Nr;function Nr(Z,se,Pe){return this instanceof Nr?(this.l=+Z,this.a=+se,void(this.b=+Pe)):arguments.length<2?Z instanceof Nr?new Nr(Z.l,Z.a,Z.b):Z instanceof Wt?Lr(Z.h,Z.c,Z.l):Xr((Z=Fi(Z)).r,Z.g,Z.b):new Nr(Z,se,Pe)}var Or=18,Hr=.95047,jr=1,gi=1.08883,ki=Nr.prototype=new Ni;ki.brighter=function(Z){return new Nr(Math.min(100,this.l+Or*(arguments.length?Z:1)),this.a,this.b)},ki.darker=function(Z){return new Nr(Math.max(0,this.l-Or*(arguments.length?Z:1)),this.a,this.b)},ki.rgb=function(){return Vi(this.l,this.a,this.b)};function Vi(Z,se,Pe){var Xe=(Z+16)/116,Qe=Xe+se/500,st=Xe-Pe/200;return Qe=tn(Qe)*Hr,Xe=tn(Xe)*jr,st=tn(st)*gi,new Fi(oi(3.2404542*Qe-1.5371385*Xe-.4985314*st),oi(-.969266*Qe+1.8760108*Xe+.041556*st),oi(.0556434*Qe-.2040259*Xe+1.0572252*st))}function ti(Z,se,Pe){return Z>0?new Wt(Math.atan2(Pe,se)*dt,Math.sqrt(se*se+Pe*Pe),Z):new Wt(NaN,NaN,Z)}function tn(Z){return Z>.206893034?Z*Z*Z:(Z-4/29)/7.787037}function Yr(Z){return Z>.008856?Math.pow(Z,1/3):7.787037*Z+4/29}function oi(Z){return Math.round(255*(Z<=.00304?12.92*Z:1.055*Math.pow(Z,1/2.4)-.055))}e.rgb=Fi;function Fi(Z,se,Pe){return this instanceof Fi?(this.r=~~Z,this.g=~~se,void(this.b=~~Pe)):arguments.length<2?Z instanceof Fi?new Fi(Z.r,Z.g,Z.b):xn(""+Z,Fi,Gt):new Fi(Z,se,Pe)}function an(Z){return new Fi(Z>>16,Z>>8&255,Z&255)}function nn(Z){return an(Z)+""}var Ri=Fi.prototype=new Ni;Ri.brighter=function(Z){Z=Math.pow(.7,arguments.length?Z:1);var se=this.r,Pe=this.g,Xe=this.b,Qe=30;return!se&&!Pe&&!Xe?new Fi(Qe,Qe,Qe):(se&&se>4,Xe=Xe>>4|Xe,Qe=hr&240,Qe=Qe>>4|Qe,st=hr&15,st=st<<4|st):Z.length===7&&(Xe=(hr&16711680)>>16,Qe=(hr&65280)>>8,st=hr&255)),se(Xe,Qe,st))}function bi(Z,se,Pe){var Xe=Math.min(Z/=255,se/=255,Pe/=255),Qe=Math.max(Z,se,Pe),st=Qe-Xe,jt,_t,hr=(Qe+Xe)/2;return st?(_t=hr<.5?st/(Qe+Xe):st/(2-Qe-Xe),Z==Qe?jt=(se-Pe)/st+(se0&&hr<1?0:jt),new Rt(jt,_t,hr)}function Xr(Z,se,Pe){Z=ct(Z),se=ct(se),Pe=ct(Pe);var Xe=Yr((.4124564*Z+.3575761*se+.1804375*Pe)/Hr),Qe=Yr((.2126729*Z+.7151522*se+.072175*Pe)/jr),st=Yr((.0193339*Z+.119192*se+.9503041*Pe)/gi);return Nr(116*Qe-16,500*(Xe-Qe),200*(Qe-st))}function ct(Z){return(Z/=255)<=.04045?Z/12.92:Math.pow((Z+.055)/1.055,2.4)}function tr(Z){var se=parseFloat(Z);return Z.charAt(Z.length-1)==="%"?Math.round(se*2.55):se}var pr=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});pr.forEach(function(Z,se){pr.set(Z,an(se))});function gr(Z){return typeof Z=="function"?Z:function(){return Z}}e.functor=gr,e.xhr=Zr(G);function Zr(Z){return function(se,Pe,Xe){return arguments.length===2&&typeof Pe=="function"&&(Xe=Pe,Pe=null),Ti(se,Pe,Z,Xe)}}function Ti(Z,se,Pe,Xe){var Qe={},st=e.dispatch("beforesend","progress","load","error"),jt={},_t=new XMLHttpRequest,hr=null;self.XDomainRequest&&!("withCredentials"in _t)&&/^(http(s)?:)?\/\//.test(Z)&&(_t=new XDomainRequest),"onload"in _t?_t.onload=_t.onerror=Cr:_t.onreadystatechange=function(){_t.readyState>3&&Cr()};function Cr(){var zr=_t.status,fi;if(!zr&&ii(_t)||zr>=200&&zr<300||zr===304){try{fi=Pe.call(Qe,_t)}catch($r){st.error.call(Qe,$r);return}st.load.call(Qe,fi)}else st.error.call(Qe,_t)}return _t.onprogress=function(zr){var fi=e.event;e.event=zr;try{st.progress.call(Qe,_t)}finally{e.event=fi}},Qe.header=function(zr,fi){return zr=(zr+"").toLowerCase(),arguments.length<2?jt[zr]:(fi==null?delete jt[zr]:jt[zr]=fi+"",Qe)},Qe.mimeType=function(zr){return arguments.length?(se=zr==null?null:zr+"",Qe):se},Qe.responseType=function(zr){return arguments.length?(hr=zr,Qe):hr},Qe.response=function(zr){return Pe=zr,Qe},["get","post"].forEach(function(zr){Qe[zr]=function(){return Qe.send.apply(Qe,[zr].concat(r(arguments)))}}),Qe.send=function(zr,fi,$r){if(arguments.length===2&&typeof fi=="function"&&($r=fi,fi=null),_t.open(zr,Z,!0),se!=null&&!("accept"in jt)&&(jt.accept=se+",*/*"),_t.setRequestHeader)for(var Bi in jt)_t.setRequestHeader(Bi,jt[Bi]);return se!=null&&_t.overrideMimeType&&_t.overrideMimeType(se),hr!=null&&(_t.responseType=hr),$r!=null&&Qe.on("error",$r).on("load",function(fn){$r(null,fn)}),st.beforesend.call(Qe,_t),_t.send(fi==null?null:fi),Qe},Qe.abort=function(){return _t.abort(),Qe},e.rebind(Qe,st,"on"),Xe==null?Qe:Qe.get(en(Xe))}function en(Z){return Z.length===1?function(se,Pe){Z(se==null?Pe:null)}:Z}function ii(Z){var se=Z.responseType;return se&&se!=="text"?Z.response:Z.responseText}e.dsv=function(Z,se){var Pe=new RegExp('["'+Z+` +"use strict";var Plotly=(()=>{var Ktt=Object.create;var LM=Object.defineProperty,Jtt=Object.defineProperties,$tt=Object.getOwnPropertyDescriptor,Qtt=Object.getOwnPropertyDescriptors,ert=Object.getOwnPropertyNames,sL=Object.getOwnPropertySymbols,trt=Object.getPrototypeOf,L9=Object.prototype.hasOwnProperty,xee=Object.prototype.propertyIsEnumerable;var _ee=(e,t,r)=>t in e?LM(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,ym=(e,t)=>{for(var r in t||(t={}))L9.call(t,r)&&_ee(e,r,t[r]);if(sL)for(var r of sL(t))xee.call(t,r)&&_ee(e,r,t[r]);return e},O1=(e,t)=>Jtt(e,Qtt(t));var bee=(e,t)=>{var r={};for(var n in e)L9.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&sL)for(var n of sL(e))t.indexOf(n)<0&&xee.call(e,n)&&(r[n]=e[n]);return r};var tc=(e,t)=>()=>(e&&(t=e(e=0)),t);var Ae=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),wee=(e,t)=>{for(var r in t)LM(e,r,{get:t[r],enumerable:!0})},Tee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of ert(t))!L9.call(e,i)&&i!==r&&LM(e,i,{get:()=>t[i],enumerable:!(n=$tt(t,i))||n.enumerable});return e};var rrt=(e,t,r)=>(r=e!=null?Ktt(trt(e)):{},Tee(t||!e||!e.__esModule?LM(r,"default",{value:e,enumerable:!0}):r,e)),ob=e=>Tee(LM({},"__esModule",{value:!0}),e);var lL=Ae(Aee=>{"use strict";Aee.version="3.3.1"});var Mee=Ae((See,uL)=>{(function(t,r,n){r[t]=r[t]||n(),typeof uL!="undefined"&&uL.exports&&(uL.exports=r[t])})("Promise",typeof window!="undefined"?window:See,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(x,C){this.fn=x,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(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(se){for(var Pe=se.length,Xe=new Array(Pe);Pe--;)Xe[Pe]=se[Pe];return Xe}}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,u=o.setAttributeNS,l=this.CSSStyleDeclaration.prototype,f=l.setProperty;o.setAttribute=function(se,Pe){s.call(this,se,Pe+"")},o.setAttributeNS=function(se,Pe,Xe){u.call(this,se,Pe,Xe+"")},l.setProperty=function(se,Pe,Xe){f.call(this,se,Pe+"",Xe)}}e.ascending=c;function c(Z,se){return Zse?1:Z>=se?0:NaN}e.descending=function(Z,se){return seZ?1:se>=Z?0:NaN},e.min=function(Z,se){var Pe=-1,Xe=Z.length,Qe,st;if(arguments.length===1){for(;++Pe=st){Qe=st;break}for(;++Pest&&(Qe=st)}else{for(;++Pe=st){Qe=st;break}for(;++Pest&&(Qe=st)}return Qe},e.max=function(Z,se){var Pe=-1,Xe=Z.length,Qe,st;if(arguments.length===1){for(;++Pe=st){Qe=st;break}for(;++PeQe&&(Qe=st)}else{for(;++Pe=st){Qe=st;break}for(;++PeQe&&(Qe=st)}return Qe},e.extent=function(Z,se){var Pe=-1,Xe=Z.length,Qe,st,jt;if(arguments.length===1){for(;++Pe=st){Qe=jt=st;break}for(;++Pest&&(Qe=st),jt=st){Qe=jt=st;break}for(;++Pest&&(Qe=st),jt1)return jt/(hr-1)},e.deviation=function(){var Z=e.variance.apply(this,arguments);return Z&&Math.sqrt(Z)};function p(Z){return{left:function(se,Pe,Xe,Qe){for(arguments.length<3&&(Xe=0),arguments.length<4&&(Qe=se.length);Xe>>1;Z(se[st],Pe)<0?Xe=st+1:Qe=st}return Xe},right:function(se,Pe,Xe,Qe){for(arguments.length<3&&(Xe=0),arguments.length<4&&(Qe=se.length);Xe>>1;Z(se[st],Pe)>0?Qe=st:Xe=st+1}return Xe}}}var _=p(c);e.bisectLeft=_.left,e.bisect=e.bisectRight=_.right,e.bisector=function(Z){return p(Z.length===1?function(se,Pe){return c(Z(se),Pe)}:Z)},e.shuffle=function(Z,se,Pe){(Xe=arguments.length)<3&&(Pe=Z.length,Xe<2&&(se=0));for(var Xe=Pe-se,Qe,st;Xe;)st=Math.random()*Xe--|0,Qe=Z[Xe+se],Z[Xe+se]=Z[st+se],Z[st+se]=Qe;return Z},e.permute=function(Z,se){for(var Pe=se.length,Xe=new Array(Pe);Pe--;)Xe[Pe]=Z[se[Pe]];return Xe},e.pairs=function(Z){for(var se=0,Pe=Z.length-1,Xe,Qe=Z[0],st=new Array(Pe<0?0:Pe);se=0;)for(jt=Z[se],Pe=jt.length;--Pe>=0;)st[--Qe]=jt[Pe];return st};var v=Math.abs;e.range=function(Z,se,Pe){if(arguments.length<3&&(Pe=1,arguments.length<2&&(se=Z,Z=0)),(se-Z)/Pe===1/0)throw new Error("infinite range");var Xe=[],Qe=k(v(Pe)),st=-1,jt;if(Z*=Qe,se*=Qe,Pe*=Qe,Pe<0)for(;(jt=Z+Pe*++st)>se;)Xe.push(jt/Qe);else for(;(jt=Z+Pe*++st)=se.length)return Qe?Qe.call(Z,hr):Xe?hr.sort(Xe):hr;for(var zr=-1,fi=hr.length,$r=se[Cr++],Bi,fn,mi,zi=new A,ji;++zr=se.length)return _t;var Cr=[],zr=Pe[hr++];return _t.forEach(function(fi,$r){Cr.push({key:fi,values:jt($r,hr)})}),zr?Cr.sort(function(fi,$r){return zr(fi.key,$r.key)}):Cr}return Z.map=function(_t,hr){return st(hr,_t,0)},Z.entries=function(_t){return jt(st(e.map,_t,0),0)},Z.key=function(_t){return se.push(_t),Z},Z.sortKeys=function(_t){return Pe[se.length-1]=_t,Z},Z.sortValues=function(_t){return Xe=_t,Z},Z.rollup=function(_t){return Qe=_t,Z},Z},e.set=function(Z){var se=new U;if(Z)for(var Pe=0,Xe=Z.length;Pe=0&&(Xe=Z.slice(Pe+1),Z=Z.slice(0,Pe)),Z)return arguments.length<2?this[Z].on(Xe):this[Z].on(Xe,se);if(arguments.length===2){if(se==null)for(Z in this)this.hasOwnProperty(Z)&&this[Z].on(Xe,null);return this}};function ae(Z){var se=[],Pe=new A;function Xe(){for(var Qe=se,st=-1,jt=Qe.length,_t;++st=0&&(Pe=Z.slice(0,se))!=="xmlns"&&(Z=Z.slice(se+1)),Je.hasOwnProperty(Pe)?{space:Je[Pe],local:Z}:Z}},De.attr=function(Z,se){if(arguments.length<2){if(typeof Z=="string"){var Pe=this.node();return Z=e.ns.qualify(Z),Z.local?Pe.getAttributeNS(Z.space,Z.local):Pe.getAttribute(Z)}for(se in Z)this.each(nt(se,Z[se]));return this}return this.each(nt(Z,se))};function nt(Z,se){Z=e.ns.qualify(Z);function Pe(){this.removeAttribute(Z)}function Xe(){this.removeAttributeNS(Z.space,Z.local)}function Qe(){this.setAttribute(Z,se)}function st(){this.setAttributeNS(Z.space,Z.local,se)}function jt(){var hr=se.apply(this,arguments);hr==null?this.removeAttribute(Z):this.setAttribute(Z,hr)}function _t(){var hr=se.apply(this,arguments);hr==null?this.removeAttributeNS(Z.space,Z.local):this.setAttributeNS(Z.space,Z.local,hr)}return se==null?Z.local?Xe:Pe:typeof se=="function"?Z.local?_t:jt:Z.local?st:Qe}function gt(Z){return Z.trim().replace(/\s+/g," ")}De.classed=function(Z,se){if(arguments.length<2){if(typeof Z=="string"){var Pe=this.node(),Xe=(Z=at(Z)).length,Qe=-1;if(se=Pe.classList){for(;++Qe=0;)(st=Pe[Xe])&&(Qe&&Qe!==st.nextSibling&&Qe.parentNode.insertBefore(st,Qe),Qe=st);return this},De.sort=function(Z){Z=ot.apply(this,arguments);for(var se=-1,Pe=this.length;++se=se&&(se=Qe+1);!(hr=jt[se])&&++se<_t;);return hr}}e.select=function(Z){var se;return typeof Z=="string"?(se=[Ee(Z,n)],se.parentNode=n.documentElement):(se=[Z],se.parentNode=i(Z)),ke([se])},e.selectAll=function(Z){var se;return typeof Z=="string"?(se=r(Me(Z,n)),se.parentNode=n.documentElement):(se=r(Z),se.parentNode=null),ke([se])},De.on=function(Z,se,Pe){var Xe=arguments.length;if(Xe<3){if(typeof Z!="string"){Xe<2&&(se=!1);for(Pe in Z)this.each(it(Pe,Z[Pe],se));return this}if(Xe<2)return(Xe=this.node()["__on"+Z])&&Xe._;Pe=!1}return this.each(it(Z,se,Pe))};function it(Z,se,Pe){var Xe="__on"+Z,Qe=Z.indexOf("."),st=It;Qe>0&&(Z=Z.slice(0,Qe));var jt=et.get(Z);jt&&(Z=jt,st=Yt);function _t(){var zr=this[Xe];zr&&(this.removeEventListener(Z,zr,zr.$),delete this[Xe])}function hr(){var zr=st(se,r(arguments));_t.call(this),this.addEventListener(Z,this[Xe]=zr,zr.$=Pe),zr._=se}function Cr(){var zr=new RegExp("^__on([^.]+)"+e.requote(Z)+"$"),fi;for(var $r in this)if(fi=$r.match(zr)){var Bi=this[$r];this.removeEventListener(fi[1],Bi,Bi.$),delete this[$r]}}return Qe?se?hr:_t:se?H:Cr}var et=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&et.forEach(function(Z){"on"+Z in n&&et.remove(Z)});function It(Z,se){return function(Pe){var Xe=e.event;e.event=Pe,se[0]=this.__data__;try{Z.apply(this,se)}finally{e.event=Xe}}}function Yt(Z,se){var Pe=It(Z,se);return function(Xe){var Qe=this,st=Xe.relatedTarget;(!st||st!==Qe&&!(st.compareDocumentPosition(Qe)&8))&&Pe.call(Qe,Xe)}}var cr,_r=0;function yr(Z){var se=".dragsuppress-"+ ++_r,Pe="click"+se,Xe=e.select(a(Z)).on("touchmove"+se,be).on("dragstart"+se,be).on("selectstart"+se,be);if(cr==null&&(cr="onselectstart"in Z?!1:W(Z.style,"userSelect")),cr){var Qe=i(Z).style,st=Qe[cr];Qe[cr]="none"}return function(jt){if(Xe.on(se,null),cr&&(Qe[cr]=st),jt){var _t=function(){Xe.on(Pe,null)};Xe.on(Pe,function(){be(),_t()},!0),setTimeout(_t,0)}}}e.mouse=function(Z){return Re(Z,ze())};var Ut=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Re(Z,se){se.changedTouches&&(se=se.changedTouches[0]);var Pe=Z.ownerSVGElement||Z;if(Pe.createSVGPoint){var Xe=Pe.createSVGPoint();if(Ut<0){var Qe=a(Z);if(Qe.scrollX||Qe.scrollY){Pe=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var st=Pe[0][0].getScreenCTM();Ut=!(st.f||st.e),Pe.remove()}}return Ut?(Xe.x=se.pageX,Xe.y=se.pageY):(Xe.x=se.clientX,Xe.y=se.clientY),Xe=Xe.matrixTransform(Z.getScreenCTM().inverse()),[Xe.x,Xe.y]}var jt=Z.getBoundingClientRect();return[se.clientX-jt.left-Z.clientLeft,se.clientY-jt.top-Z.clientTop]}e.touch=function(Z,se,Pe){if(arguments.length<3&&(Pe=se,se=ze().changedTouches),se){for(var Xe=0,Qe=se.length,st;Xe0?1:Z<0?-1:0}function zt(Z,se,Pe){return(se[0]-Z[0])*(Pe[1]-Z[1])-(se[1]-Z[1])*(Pe[0]-Z[0])}function rr(Z){return Z>1?0:Z<-1?Fe:Math.acos(Z)}function Gr(Z){return Z>1?fe:Z<-1?-fe:Math.asin(Z)}function Br(Z){return((Z=Math.exp(Z))-1/Z)/2}function Er(Z){return((Z=Math.exp(Z))+1/Z)/2}function Rr(Z){return((Z=Math.exp(2*Z))-1)/(Z+1)}function pi(Z){return(Z=Math.sin(Z/2))*Z}var Di=Math.SQRT2,ni=2,$i=4;e.interpolateZoom=function(Z,se){var Pe=Z[0],Xe=Z[1],Qe=Z[2],st=se[0],jt=se[1],_t=se[2],hr=st-Pe,Cr=jt-Xe,zr=hr*hr+Cr*Cr,fi,$r;if(zr0&&(ds=ds.transition().duration(jt)),ds.call(sn.event)}function El(){zi&&zi.domain(mi.range().map(function(ds){return(ds-Z.x)/Z.k}).map(mi.invert)),pn&&pn.domain(ji.range().map(function(ds){return(ds-Z.y)/Z.k}).map(ji.invert))}function Pl(ds){_t++||ds({type:"zoomstart"})}function pu(ds){El(),ds({type:"zoom",scale:Z.k,translate:[Z.x,Z.y]})}function Il(ds){--_t||(ds({type:"zoomend"}),Pe=null)}function fu(){var ds=this,Wl=fn.of(ds,arguments),Tu=0,Au=e.select(a(ds)).on(Cr,Mf).on(zr,pf),lf=wi(e.mouse(ds)),hf=yr(ds);Us.call(ds),Pl(Wl);function Mf(){Tu=1,Xo(e.mouse(ds),lf),pu(Wl)}function pf(){Au.on(Cr,null).on(zr,null),hf(Tu),Il(Wl)}}function Xu(){var ds=this,Wl=fn.of(ds,arguments),Tu={},Au=0,lf,hf=".zoom-"+e.event.changedTouches[0].identifier,Mf="touchmove"+hf,pf="touchend"+hf,fc=[],Be=e.select(ds),qt=yr(ds);Qr(),Pl(Wl),Be.on(hr,null).on($r,Qr);function ar(){var vi=e.touches(ds);return lf=Z.k,vi.forEach(function(on){on.identifier in Tu&&(Tu[on.identifier]=wi(on))}),vi}function Qr(){var vi=e.event.target;e.select(vi).on(Mf,yi).on(pf,ci),fc.push(vi);for(var on=e.event.changedTouches,Bn=0,Ln=on.length;Bn1){var ua=wn[0],Hn=wn[1],qi=ua[0]-Hn[0],Wr=ua[1]-Hn[1];Au=qi*qi+Wr*Wr}}function yi(){var vi=e.touches(ds),on,Bn,Ln,wn;Us.call(ds);for(var Ls=0,ua=vi.length;Ls1?1:se,Pe=Pe<0?0:Pe>1?1:Pe,Qe=Pe<=.5?Pe*(1+se):Pe+se-Pe*se,Xe=2*Pe-Qe;function st(_t){return _t>360?_t-=360:_t<0&&(_t+=360),_t<60?Xe+(Qe-Xe)*_t/60:_t<180?Qe:_t<240?Xe+(Qe-Xe)*(240-_t)/60:Xe}function jt(_t){return Math.round(st(_t)*255)}return new Fi(jt(Z+120),jt(Z),jt(Z-120))}e.hcl=Wt;function Wt(Z,se,Pe){return this instanceof Wt?(this.h=+Z,this.c=+se,void(this.l=+Pe)):arguments.length<2?Z instanceof Wt?new Wt(Z.h,Z.c,Z.l):Z instanceof Nr?ti(Z.l,Z.a,Z.b):ti((Z=Xr((Z=e.rgb(Z)).r,Z.g,Z.b)).l,Z.a,Z.b):new Wt(Z,se,Pe)}var xr=Wt.prototype=new Ni;xr.brighter=function(Z){return new Wt(this.h,this.c,Math.min(100,this.l+Or*(arguments.length?Z:1)))},xr.darker=function(Z){return new Wt(this.h,this.c,Math.max(0,this.l-Or*(arguments.length?Z:1)))},xr.rgb=function(){return Lr(this.h,this.c,this.l).rgb()};function Lr(Z,se,Pe){return isNaN(Z)&&(Z=0),isNaN(se)&&(se=0),new Nr(Pe,Math.cos(Z*=pe)*se,Math.sin(Z)*se)}e.lab=Nr;function Nr(Z,se,Pe){return this instanceof Nr?(this.l=+Z,this.a=+se,void(this.b=+Pe)):arguments.length<2?Z instanceof Nr?new Nr(Z.l,Z.a,Z.b):Z instanceof Wt?Lr(Z.h,Z.c,Z.l):Xr((Z=Fi(Z)).r,Z.g,Z.b):new Nr(Z,se,Pe)}var Or=18,Hr=.95047,jr=1,gi=1.08883,ki=Nr.prototype=new Ni;ki.brighter=function(Z){return new Nr(Math.min(100,this.l+Or*(arguments.length?Z:1)),this.a,this.b)},ki.darker=function(Z){return new Nr(Math.max(0,this.l-Or*(arguments.length?Z:1)),this.a,this.b)},ki.rgb=function(){return Vi(this.l,this.a,this.b)};function Vi(Z,se,Pe){var Xe=(Z+16)/116,Qe=Xe+se/500,st=Xe-Pe/200;return Qe=tn(Qe)*Hr,Xe=tn(Xe)*jr,st=tn(st)*gi,new Fi(oi(3.2404542*Qe-1.5371385*Xe-.4985314*st),oi(-.969266*Qe+1.8760108*Xe+.041556*st),oi(.0556434*Qe-.2040259*Xe+1.0572252*st))}function ti(Z,se,Pe){return Z>0?new Wt(Math.atan2(Pe,se)*dt,Math.sqrt(se*se+Pe*Pe),Z):new Wt(NaN,NaN,Z)}function tn(Z){return Z>.206893034?Z*Z*Z:(Z-4/29)/7.787037}function Yr(Z){return Z>.008856?Math.pow(Z,1/3):7.787037*Z+4/29}function oi(Z){return Math.round(255*(Z<=.00304?12.92*Z:1.055*Math.pow(Z,1/2.4)-.055))}e.rgb=Fi;function Fi(Z,se,Pe){return this instanceof Fi?(this.r=~~Z,this.g=~~se,void(this.b=~~Pe)):arguments.length<2?Z instanceof Fi?new Fi(Z.r,Z.g,Z.b):xn(""+Z,Fi,Gt):new Fi(Z,se,Pe)}function an(Z){return new Fi(Z>>16,Z>>8&255,Z&255)}function nn(Z){return an(Z)+""}var Ri=Fi.prototype=new Ni;Ri.brighter=function(Z){Z=Math.pow(.7,arguments.length?Z:1);var se=this.r,Pe=this.g,Xe=this.b,Qe=30;return!se&&!Pe&&!Xe?new Fi(Qe,Qe,Qe):(se&&se>4,Xe=Xe>>4|Xe,Qe=hr&240,Qe=Qe>>4|Qe,st=hr&15,st=st<<4|st):Z.length===7&&(Xe=(hr&16711680)>>16,Qe=(hr&65280)>>8,st=hr&255)),se(Xe,Qe,st))}function bi(Z,se,Pe){var Xe=Math.min(Z/=255,se/=255,Pe/=255),Qe=Math.max(Z,se,Pe),st=Qe-Xe,jt,_t,hr=(Qe+Xe)/2;return st?(_t=hr<.5?st/(Qe+Xe):st/(2-Qe-Xe),Z==Qe?jt=(se-Pe)/st+(se0&&hr<1?0:jt),new Rt(jt,_t,hr)}function Xr(Z,se,Pe){Z=ct(Z),se=ct(se),Pe=ct(Pe);var Xe=Yr((.4124564*Z+.3575761*se+.1804375*Pe)/Hr),Qe=Yr((.2126729*Z+.7151522*se+.072175*Pe)/jr),st=Yr((.0193339*Z+.119192*se+.9503041*Pe)/gi);return Nr(116*Qe-16,500*(Xe-Qe),200*(Qe-st))}function ct(Z){return(Z/=255)<=.04045?Z/12.92:Math.pow((Z+.055)/1.055,2.4)}function tr(Z){var se=parseFloat(Z);return Z.charAt(Z.length-1)==="%"?Math.round(se*2.55):se}var pr=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});pr.forEach(function(Z,se){pr.set(Z,an(se))});function gr(Z){return typeof Z=="function"?Z:function(){return Z}}e.functor=gr,e.xhr=Zr(G);function Zr(Z){return function(se,Pe,Xe){return arguments.length===2&&typeof Pe=="function"&&(Xe=Pe,Pe=null),Ti(se,Pe,Z,Xe)}}function Ti(Z,se,Pe,Xe){var Qe={},st=e.dispatch("beforesend","progress","load","error"),jt={},_t=new XMLHttpRequest,hr=null;self.XDomainRequest&&!("withCredentials"in _t)&&/^(http(s)?:)?\/\//.test(Z)&&(_t=new XDomainRequest),"onload"in _t?_t.onload=_t.onerror=Cr:_t.onreadystatechange=function(){_t.readyState>3&&Cr()};function Cr(){var zr=_t.status,fi;if(!zr&&ii(_t)||zr>=200&&zr<300||zr===304){try{fi=Pe.call(Qe,_t)}catch($r){st.error.call(Qe,$r);return}st.load.call(Qe,fi)}else st.error.call(Qe,_t)}return _t.onprogress=function(zr){var fi=e.event;e.event=zr;try{st.progress.call(Qe,_t)}finally{e.event=fi}},Qe.header=function(zr,fi){return zr=(zr+"").toLowerCase(),arguments.length<2?jt[zr]:(fi==null?delete jt[zr]:jt[zr]=fi+"",Qe)},Qe.mimeType=function(zr){return arguments.length?(se=zr==null?null:zr+"",Qe):se},Qe.responseType=function(zr){return arguments.length?(hr=zr,Qe):hr},Qe.response=function(zr){return Pe=zr,Qe},["get","post"].forEach(function(zr){Qe[zr]=function(){return Qe.send.apply(Qe,[zr].concat(r(arguments)))}}),Qe.send=function(zr,fi,$r){if(arguments.length===2&&typeof fi=="function"&&($r=fi,fi=null),_t.open(zr,Z,!0),se!=null&&!("accept"in jt)&&(jt.accept=se+",*/*"),_t.setRequestHeader)for(var Bi in jt)_t.setRequestHeader(Bi,jt[Bi]);return se!=null&&_t.overrideMimeType&&_t.overrideMimeType(se),hr!=null&&(_t.responseType=hr),$r!=null&&Qe.on("error",$r).on("load",function(fn){$r(null,fn)}),st.beforesend.call(Qe,_t),_t.send(fi==null?null:fi),Qe},Qe.abort=function(){return _t.abort(),Qe},e.rebind(Qe,st,"on"),Xe==null?Qe:Qe.get(en(Xe))}function en(Z){return Z.length===1?function(se,Pe){Z(se==null?Pe:null)}:Z}function ii(Z){var se=Z.responseType;return se&&se!=="text"?Z.response:Z.responseText}e.dsv=function(Z,se){var Pe=new RegExp('["'+Z+` ]`),Xe=Z.charCodeAt(0);function Qe(Cr,zr,fi){arguments.length<3&&(fi=zr,zr=null);var $r=Ti(Cr,se,zr==null?st:jt(zr),fi);return $r.row=function(Bi){return arguments.length?$r.response((zr=Bi)==null?st:jt(Bi)):zr},$r}function st(Cr){return Qe.parse(Cr.responseText)}function jt(Cr){return function(zr){return Qe.parse(zr.responseText,Cr)}}Qe.parse=function(Cr,zr){var fi;return Qe.parseRows(Cr,function($r,Bi){if(fi)return fi($r,Bi-1);var fn=function(mi){for(var zi={},ji=$r.length,pn=0;pn=fn)return $r;if(pn)return pn=!1,fi;var xo=mi;if(Cr.charCodeAt(xo)===34){for(var no=xo;no++24?(isFinite(se)&&(clearTimeout(Un),Un=setTimeout(oa,se)),Mn=0):(Mn=1,Ga(oa))}e.timer.flush=function(){ka(),so()};function ka(){for(var Z=Date.now(),se=Xi;se;)Z>=se.t&&se.c(Z-se.t)&&(se.c=null),se=se.n;return Z}function so(){for(var Z,se=Xi,Pe=1/0;se;)se.c?(se.t=0;--_t)mi.push(Qe[Cr[fi[_t]][2]]);for(_t=+Bi;_t<$r.length-fn;++_t)mi.push(Qe[Cr[$r[_t]][2]]);return mi}return Xe.x=function(Qe){return arguments.length?(se=Qe,Xe):se},Xe.y=function(Qe){return arguments.length?(Pe=Qe,Xe):Pe},Xe};function Yo(Z){for(var se=Z.length,Pe=[0,1],Xe=2,Qe=2;Qe1&&zt(Z[Pe[Xe-2]],Z[Pe[Xe-1]],Z[Qe])<=0;)--Xe;Pe[Xe++]=Qe}return Pe.slice(0,Xe)}function fa(Z,se){return Z[0]-se[0]||Z[1]-se[1]}e.geom.polygon=function(Z){return te(Z,kn),Z};var kn=e.geom.polygon.prototype=[];kn.area=function(){for(var Z=-1,se=this.length,Pe,Xe=this[se-1],Qe=0;++ZOe)_t=_t.L;else if(jt=se-Sn(_t,Pe),jt>Oe){if(!_t.R){Xe=_t;break}_t=_t.R}else{st>-Oe?(Xe=_t.P,Qe=_t):jt>-Oe?(Xe=_t,Qe=_t.N):Xe=Qe=_t;break}var hr=Po(Z);if(fo.insert(Xe,hr),!(!Xe&&!Qe)){if(Xe===Qe){Sa(Xe),Qe=Po(Xe.site),fo.insert(hr,Qe),hr.edge=Qe.edge=vo(Xe.site,hr.site),Hi(Xe),Hi(Qe);return}if(!Qe){hr.edge=vo(Xe.site,hr.site);return}Sa(Xe),Sa(Qe);var Cr=Xe.site,zr=Cr.x,fi=Cr.y,$r=Z.x-zr,Bi=Z.y-fi,fn=Qe.site,mi=fn.x-zr,zi=fn.y-fi,ji=2*($r*zi-Bi*mi),pn=$r*$r+Bi*Bi,sn=mi*mi+zi*zi,wi={x:(zi*pn-Bi*sn)/ji+zr,y:($r*sn-mi*pn)/ji+fi};ps(Qe.edge,Cr,fn,wi),hr.edge=vo(Cr,Z,null,wi),Qe.edge=vo(Z,fn,null,wi),Hi(Xe),Hi(Qe)}}function Ha(Z,se){var Pe=Z.site,Xe=Pe.x,Qe=Pe.y,st=Qe-se;if(!st)return Xe;var jt=Z.P;if(!jt)return-1/0;Pe=jt.site;var _t=Pe.x,hr=Pe.y,Cr=hr-se;if(!Cr)return _t;var zr=_t-Xe,fi=1/st-1/Cr,$r=zr/Cr;return fi?(-$r+Math.sqrt($r*$r-2*fi*(zr*zr/(-2*Cr)-hr+Cr/2+Qe-st/2)))/fi+Xe:(Xe+_t)/2}function Sn(Z,se){var Pe=Z.N;if(Pe)return Ha(Pe,se);var Xe=Z.site;return Xe.y===se?Xe.x:1/0}function ao(Z){this.site=Z,this.edges=[]}ao.prototype.prepare=function(){for(var Z=this.edges,se=Z.length,Pe;se--;)Pe=Z[se].edge,(!Pe.b||!Pe.a)&&Z.splice(se,1);return Z.sort(Ko),Z.length};function Ba(Z){for(var se=Z[0][0],Pe=Z[1][0],Xe=Z[0][1],Qe=Z[1][1],st,jt,_t,hr,Cr=$a,zr=Cr.length,fi,$r,Bi,fn,mi,zi;zr--;)if(fi=Cr[zr],!(!fi||!fi.prepare()))for(Bi=fi.edges,fn=Bi.length,$r=0;$rOe||v(hr-jt)>Oe)&&(Bi.splice($r,0,new co(Ts(fi.site,zi,v(_t-se)Oe?{x:se,y:v(st-se)Oe?{x:v(jt-Qe)Oe?{x:Pe,y:v(st-Pe)Oe?{x:v(jt-Xe)=-Ie)){var $r=hr*hr+Cr*Cr,Bi=zr*zr+zi*zi,fn=(zi*$r-Cr*Bi)/fi,mi=(hr*Bi-zr*$r)/fi,zi=mi+_t,ji=ws.pop()||new Qo;ji.arc=Z,ji.site=Qe,ji.x=fn+jt,ji.y=zi+Math.sqrt(fn*fn+mi*mi),ji.cy=zi,Z.circle=ji;for(var pn=null,sn=wa._;sn;)if(ji.y0)){if(mi/=Bi,Bi<0){if(mi0){if(mi>$r)return;mi>fi&&(fi=mi)}if(mi=Pe-_t,!(!Bi&&mi<0)){if(mi/=Bi,Bi<0){if(mi>$r)return;mi>fi&&(fi=mi)}else if(Bi>0){if(mi0)){if(mi/=fn,fn<0){if(mi0){if(mi>$r)return;mi>fi&&(fi=mi)}if(mi=Xe-hr,!(!fn&&mi<0)){if(mi/=fn,fn<0){if(mi>$r)return;mi>fi&&(fi=mi)}else if(fn>0){if(mi0&&(Qe.a={x:_t+fi*Bi,y:hr+fi*fn}),$r<1&&(Qe.b={x:_t+$r*Bi,y:hr+$r*fn}),Qe}}}}}}function vn(Z){for(var se=ls,Pe=Qa(Z[0][0],Z[0][1],Z[1][0],Z[1][1]),Xe=se.length,Qe;Xe--;)Qe=se[Xe],(!da(Qe,Z)||!Pe(Qe)||v(Qe.a.x-Qe.b.x)=st)return;if(zr>$r){if(!Xe)Xe={x:fn,y:jt};else if(Xe.y>=_t)return;Pe={x:fn,y:_t}}else{if(!Xe)Xe={x:fn,y:_t};else if(Xe.y1)if(zr>$r){if(!Xe)Xe={x:(jt-ji)/zi,y:jt};else if(Xe.y>=_t)return;Pe={x:(_t-ji)/zi,y:_t}}else{if(!Xe)Xe={x:(_t-ji)/zi,y:_t};else if(Xe.y=st)return;Pe={x:st,y:zi*st+ji}}else{if(!Xe)Xe={x:st,y:zi*st+ji};else if(Xe.x=zr&&ji.x<=$r&&ji.y>=fi&&ji.y<=Bi?[[zr,Bi],[$r,Bi],[$r,fi],[zr,fi]]:[];pn.point=hr[mi]}),Cr}function _t(hr){return hr.map(function(Cr,zr){return{x:Math.round(Xe(Cr,zr)/Oe)*Oe,y:Math.round(Qe(Cr,zr)/Oe)*Oe,i:zr}})}return jt.links=function(hr){return qs(_t(hr)).edges.filter(function(Cr){return Cr.l&&Cr.r}).map(function(Cr){return{source:hr[Cr.l.i],target:hr[Cr.r.i]}})},jt.triangles=function(hr){var Cr=[];return qs(_t(hr)).cells.forEach(function(zr,fi){for(var $r=zr.site,Bi=zr.edges.sort(Ko),fn=-1,mi=Bi.length,zi,ji,pn=Bi[mi-1].edge,sn=pn.l===$r?pn.r:pn.l;++fnsn&&(sn=zr.x),zr.y>wi&&(wi=zr.y),Bi.push(zr.x),fn.push(zr.y);else for(mi=0;misn&&(sn=xo),no>wi&&(wi=no),Bi.push(xo),fn.push(no)}var Xo=sn-ji,js=wi-pn;Xo>js?wi=pn+Xo:sn=ji+js;function El(Il,fu,Xu,Vu,tf,ds,Wl,Tu){if(!(isNaN(Xu)||isNaN(Vu)))if(Il.leaf){var Au=Il.x,lf=Il.y;if(Au!=null)if(v(Au-Xu)+v(lf-Vu)<.01)Pl(Il,fu,Xu,Vu,tf,ds,Wl,Tu);else{var hf=Il.point;Il.x=Il.y=Il.point=null,Pl(Il,hf,Au,lf,tf,ds,Wl,Tu),Pl(Il,fu,Xu,Vu,tf,ds,Wl,Tu)}else Il.x=Xu,Il.y=Vu,Il.point=fu}else Pl(Il,fu,Xu,Vu,tf,ds,Wl,Tu)}function Pl(Il,fu,Xu,Vu,tf,ds,Wl,Tu){var Au=(tf+Wl)*.5,lf=(ds+Tu)*.5,hf=Xu>=Au,Mf=Vu>=lf,pf=Mf<<1|hf;Il.leaf=!1,Il=Il.nodes[pf]||(Il.nodes[pf]=_n()),hf?tf=Au:Wl=Au,Mf?ds=lf:Tu=lf,El(Il,fu,Xu,Vu,tf,ds,Wl,Tu)}var pu=_n();if(pu.add=function(Il){El(pu,Il,+fi(Il,++mi),+$r(Il,mi),ji,pn,sn,wi)},pu.visit=function(Il){Vn(Il,pu,ji,pn,sn,wi)},pu.find=function(Il){return wo(pu,Il[0],Il[1],ji,pn,sn,wi)},mi=-1,se==null){for(;++mist||$r>jt||Bi=xo,js=Pe>=no,El=js<<1|Xo,Pl=El+4;ElPe&&(st=se.slice(Pe,st),_t[jt]?_t[jt]+=st:_t[++jt]=st),(Xe=Xe[0])===(Qe=Qe[0])?_t[jt]?_t[jt]+=Qe:_t[++jt]=Qe:(_t[++jt]=null,hr.push({i:jt,x:un(Xe,Qe)})),Pe=qn.lastIndex;return Pe=0&&!(Xe=e.interpolators[Pe](Z,se)););return Xe}e.interpolators=[function(Z,se){var Pe=typeof se;return(Pe==="string"?pr.has(se.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(se)?Ra:$n:se instanceof Ni?Ra:Array.isArray(se)?Ja:Pe==="object"&&isNaN(se)?Xn:un)(Z,se)}],e.interpolateArray=Ja;function Ja(Z,se){var Pe=[],Xe=[],Qe=Z.length,st=se.length,jt=Math.min(Z.length,se.length),_t;for(_t=0;_t=0?Z.slice(0,se):Z,Xe=se>=0?Z.slice(se+1):"in";return Pe=eo.get(Pe)||lo,Xe=sa.get(Xe)||G,es(Xe(Pe.apply(null,t.call(arguments,1))))};function es(Z){return function(se){return se<=0?0:se>=1?1:Z(se)}}function Na(Z){return function(se){return 1-Z(1-se)}}function rn(Z){return function(se){return .5*(se<.5?Z(2*se):2-Z(2-2*se))}}function Pa(Z){return Z*Z}function to(Z){return Z*Z*Z}function yo(Z){if(Z<=0)return 0;if(Z>=1)return 1;var se=Z*Z,Pe=se*Z;return 4*(Z<.5?Pe:3*(Z-se)+Pe-.75)}function Jo(Z){return function(se){return Math.pow(se,Z)}}function To(Z){return 1-Math.cos(Z*fe)}function Dn(Z){return Math.pow(2,10*(Z-1))}function _a(Z){return 1-Math.sqrt(1-Z*Z)}function Ws(Z,se){var Pe;return arguments.length<2&&(se=.45),arguments.length?Pe=se/ft*Math.asin(1/Z):(Z=1,Pe=se/4),function(Xe){return 1+Z*Math.pow(2,-10*Xe)*Math.sin((Xe-Pe)*ft/se)}}function Ca(Z){return Z||(Z=1.70158),function(se){return se*se*((Z+1)*se-Z)}}function Es(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=As;function As(Z,se){Z=e.hcl(Z),se=e.hcl(se);var Pe=Z.h,Xe=Z.c,Qe=Z.l,st=se.h-Pe,jt=se.c-Xe,_t=se.l-Qe;return isNaN(jt)&&(jt=0,Xe=isNaN(Xe)?se.c:Xe),isNaN(st)?(st=0,Pe=isNaN(Pe)?se.h:Pe):st>180?st-=360:st<-180&&(st+=360),function(hr){return Lr(Pe+st*hr,Xe+jt*hr,Qe+_t*hr)+""}}e.interpolateHsl=Ho;function Ho(Z,se){Z=e.hsl(Z),se=e.hsl(se);var Pe=Z.h,Xe=Z.s,Qe=Z.l,st=se.h-Pe,jt=se.s-Xe,_t=se.l-Qe;return isNaN(jt)&&(jt=0,Xe=isNaN(Xe)?se.s:Xe),isNaN(st)?(st=0,Pe=isNaN(Pe)?se.h:Pe):st>180?st-=360:st<-180&&(st+=360),function(hr){return Gt(Pe+st*hr,Xe+jt*hr,Qe+_t*hr)+""}}e.interpolateLab=Wa;function Wa(Z,se){Z=e.lab(Z),se=e.lab(se);var Pe=Z.l,Xe=Z.a,Qe=Z.b,st=se.l-Pe,jt=se.a-Xe,_t=se.b-Qe;return function(hr){return Vi(Pe+st*hr,Xe+jt*hr,Qe+_t*hr)+""}}e.interpolateRound=Ao;function Ao(Z,se){return se-=Z,function(Pe){return Math.round(Z+se*Pe)}}e.transform=function(Z){var se=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(Pe){if(Pe!=null){se.setAttribute("transform",Pe);var Xe=se.transform.baseVal.consolidate()}return new ts(Xe?Xe.matrix:Bo)})(Z)};function ts(Z){var se=[Z.a,Z.b],Pe=[Z.c,Z.d],Xe=qa(se),Qe=Wo(se,Pe),st=qa(ln(Pe,se,-Qe))||0;se[0]*Pe[1]180?se+=360:se-Z>180&&(Z+=360),Xe.push({i:Pe.push(ko(Pe)+"rotate(",null,")")-2,x:un(Z,se)})):se&&Pe.push(ko(Pe)+"rotate("+se+")")}function ea(Z,se,Pe,Xe){Z!==se?Xe.push({i:Pe.push(ko(Pe)+"skewX(",null,")")-2,x:un(Z,se)}):se&&Pe.push(ko(Pe)+"skewX("+se+")")}function rs(Z,se,Pe,Xe){if(Z[0]!==se[0]||Z[1]!==se[1]){var Qe=Pe.push(ko(Pe)+"scale(",null,",",null,")");Xe.push({i:Qe-4,x:un(Z[0],se[0])},{i:Qe-2,x:un(Z[1],se[1])})}else(se[0]!==1||se[1]!==1)&&Pe.push(ko(Pe)+"scale("+se+")")}function $s(Z,se){var Pe=[],Xe=[];return Z=e.transform(Z),se=e.transform(se),oo(Z.translate,se.translate,Pe,Xe),za(Z.rotate,se.rotate,Pe,Xe),ea(Z.skew,se.skew,Pe,Xe),rs(Z.scale,se.scale,Pe,Xe),Z=se=null,function(Qe){for(var st=-1,jt=Xe.length,_t;++st0?st=wi:(Pe.c=null,Pe.t=NaN,Pe=null,se.end({type:"end",alpha:st=0})):wi>0&&(se.start({type:"start",alpha:st=wi}),Pe=ma(Z.tick)),Z):st},Z.start=function(){var wi,xo=Bi.length,no=fn.length,Xo=Xe[0],js=Xe[1],El,Pl;for(wi=0;wi=0;)st.push(zr=Cr[hr]),zr.parent=_t,zr.depth=_t.depth+1;Pe&&(_t.value=0),_t.children=Cr}else Pe&&(_t.value=+Pe.call(Xe,_t,_t.depth)||0),delete _t.children;return Oo(Qe,function(fi){var $r,Bi;Z&&($r=fi.children)&&$r.sort(Z),Pe&&(Bi=fi.parent)&&(Bi.value+=fi.value)}),jt}return Xe.sort=function(Qe){return arguments.length?(Z=Qe,Xe):Z},Xe.children=function(Qe){return arguments.length?(se=Qe,Xe):se},Xe.value=function(Qe){return arguments.length?(Pe=Qe,Xe):Pe},Xe.revalue=function(Qe){return Pe&&(Jn(Qe,function(st){st.children&&(st.value=0)}),Oo(Qe,function(st){var jt;st.children||(st.value=+Pe.call(Xe,st,st.depth)||0),(jt=st.parent)&&(jt.value+=st.value)})),Qe},Xe};function Ea(Z,se){return e.rebind(Z,se,"sort","children","value"),Z.nodes=Z,Z.links=zs,Z}function Jn(Z,se){for(var Pe=[Z];(Z=Pe.pop())!=null;)if(se(Z),(Qe=Z.children)&&(Xe=Qe.length))for(var Xe,Qe;--Xe>=0;)Pe.push(Qe[Xe])}function Oo(Z,se){for(var Pe=[Z],Xe=[];(Z=Pe.pop())!=null;)if(Xe.push(Z),(jt=Z.children)&&(st=jt.length))for(var Qe=-1,st,jt;++QeQe&&(Qe=_t),Xe.push(_t)}for(jt=0;jtXe&&(Pe=se,Xe=Qe);return Pe}function zo(Z){return Z.reduce(io,0)}function io(Z,se){return Z+se[1]}e.layout.histogram=function(){var Z=!0,se=Number,Pe=vs,Xe=Io;function Qe(st,$r){for(var _t=[],hr=st.map(se,this),Cr=Pe.call(this,hr,$r),zr=Xe.call(this,Cr,hr,$r),fi,$r=-1,Bi=hr.length,fn=zr.length-1,mi=Z?1:1/Bi,zi;++$r0)for($r=-1;++$r=Cr[0]&&zi<=Cr[1]&&(fi=_t[e.bisect(zr,zi,1,fn)-1],fi.y+=mi,fi.push(st[$r]));return _t}return Qe.value=function(st){return arguments.length?(se=st,Qe):se},Qe.range=function(st){return arguments.length?(Pe=gr(st),Qe):Pe},Qe.bins=function(st){return arguments.length?(Xe=typeof st=="number"?function(jt){return Da(jt,st)}:gr(st),Qe):Xe},Qe.frequency=function(st){return arguments.length?(Z=!!st,Qe):Z},Qe};function Io(Z,se){return Da(Z,Math.ceil(Math.log(se.length)/Math.LN2+1))}function Da(Z,se){for(var Pe=-1,Xe=+Z[0],Qe=(Z[1]-Xe)/se,st=[];++Pe<=se;)st[Pe]=Qe*Pe+Xe;return st}function vs(Z){return[e.min(Z),e.max(Z)]}e.layout.pack=function(){var Z=e.layout.hierarchy().sort(fs),se=0,Pe=[1,1],Xe;function Qe(st,jt){var _t=Z.call(this,st,jt),hr=_t[0],Cr=Pe[0],zr=Pe[1],fi=Xe==null?Math.sqrt:typeof Xe=="function"?Xe:function(){return Xe};if(hr.x=hr.y=0,Oo(hr,function(Bi){Bi.r=+fi(Bi.value)}),Oo(hr,Ro),se){var $r=se*(Xe?1:Math.max(2*hr.r/Cr,2*hr.r/zr))/2;Oo(hr,function(Bi){Bi.r+=$r}),Oo(hr,Ro),Oo(hr,function(Bi){Bi.r-=$r})}return hl(hr,Cr/2,zr/2,Xe?1:1/Math.max(2*hr.r/Cr,2*hr.r/zr)),_t}return Qe.size=function(st){return arguments.length?(Pe=st,Qe):Pe},Qe.radius=function(st){return arguments.length?(Xe=st==null||typeof st=="function"?st:+st,Qe):Xe},Qe.padding=function(st){return arguments.length?(se=+st,Qe):se},Ea(Qe,Z)};function fs(Z,se){return Z.value-se.value}function cl(Z,se){var Pe=Z._pack_next;Z._pack_next=se,se._pack_prev=Z,se._pack_next=Pe,Pe._pack_prev=se}function el(Z,se){Z._pack_next=se,se._pack_prev=Z}function Hs(Z,se){var Pe=se.x-Z.x,Xe=se.y-Z.y,Qe=Z.r+se.r;return .999*Qe*Qe>Pe*Pe+Xe*Xe}function Ro(Z){if(!(se=Z.children)||!($r=se.length))return;var se,Pe=1/0,Xe=-1/0,Qe=1/0,st=-1/0,jt,_t,hr,Cr,zr,fi,$r;function Bi(wi){Pe=Math.min(wi.x-wi.r,Pe),Xe=Math.max(wi.x+wi.r,Xe),Qe=Math.min(wi.y-wi.r,Qe),st=Math.max(wi.y+wi.r,st)}if(se.forEach(tl),jt=se[0],jt.x=-jt.r,jt.y=0,Bi(jt),$r>1&&(_t=se[1],_t.x=_t.r,_t.y=0,Bi(_t),$r>2))for(hr=se[2],Fa(jt,_t,hr),Bi(hr),cl(jt,hr),jt._pack_prev=hr,cl(hr,_t),_t=jt._pack_next,Cr=3;Cr<$r;Cr++){Fa(jt,_t,hr=se[Cr]);var fn=0,mi=1,zi=1;for(zr=_t._pack_next;zr!==_t;zr=zr._pack_next,mi++)if(Hs(zr,hr)){fn=1;break}if(fn==1)for(fi=jt._pack_prev;fi!==zr._pack_prev&&!Hs(fi,hr);fi=fi._pack_prev,zi++);fn?(mizi.x&&(zi=xo),xo.depth>ji.depth&&(ji=xo)});var pn=se(mi,zi)/2-mi.x,sn=Pe[0]/(zi.x+se(zi,mi)/2+pn),wi=Pe[1]/(ji.depth||1);Jn(Bi,function(xo){xo.x=(xo.x+pn)*sn,xo.y=xo.depth*wi})}return $r}function st(zr){for(var fi={A:null,children:[zr]},$r=[fi],Bi;(Bi=$r.pop())!=null;)for(var fn=Bi.children,mi,zi=0,ji=fn.length;zi0&&(Is(At(mi,zr,$r),zr,xo),ji+=xo,pn+=xo),sn+=mi.m,ji+=Bi.m,wi+=zi.m,pn+=fn.m;mi&&!Rs(fn)&&(fn.t=mi,fn.m+=sn-pn),Bi&&!jo(zi)&&(zi.t=Bi,zi.m+=ji-wi,$r=zr)}return $r}function Cr(zr){zr.x*=Pe[0],zr.y=zr.depth*Pe[1]}return Qe.separation=function(zr){return arguments.length?(se=zr,Qe):se},Qe.size=function(zr){return arguments.length?(Xe=(Pe=zr)==null?Cr:null,Qe):Xe?null:Pe},Qe.nodeSize=function(zr){return arguments.length?(Xe=(Pe=zr)==null?null:Cr,Qe):Xe?Pe:null},Ea(Qe,Z)};function Ms(Z,se){return Z.parent==se.parent?1:2}function jo(Z){var se=Z.children;return se.length?se[0]:Z.t}function Rs(Z){var se=Z.children,Pe;return(Pe=se.length)?se[Pe-1]:Z.t}function Is(Z,se,Pe){var Xe=Pe/(se.i-Z.i);se.c-=Xe,se.s+=Pe,Z.c+=Xe,se.z+=Pe,se.m+=Pe}function Bs(Z){for(var se=0,Pe=0,Xe=Z.children,Qe=Xe.length,st;--Qe>=0;)st=Xe[Qe],st.z+=se,st.m+=se,se+=st.s+(Pe+=st.c)}function At(Z,se,Pe){return Z.a.parent===se.parent?Z.a:Pe}e.layout.cluster=function(){var Z=e.layout.hierarchy().sort(null).value(null),se=Ms,Pe=[1,1],Xe=!1;function Qe(st,jt){var _t=Z.call(this,st,jt),hr=_t[0],Cr,zr=0;Oo(hr,function(mi){var zi=mi.children;zi&&zi.length?(mi.x=wr(zi),mi.y=Vt(zi)):(mi.x=Cr?zr+=se(mi,Cr):0,mi.y=0,Cr=mi)});var fi=mr(hr),$r=Fr(hr),Bi=fi.x-se(fi,$r)/2,fn=$r.x+se($r,fi)/2;return Oo(hr,Xe?function(mi){mi.x=(mi.x-hr.x)*Pe[0],mi.y=(hr.y-mi.y)*Pe[1]}:function(mi){mi.x=(mi.x-Bi)/(fn-Bi)*Pe[0],mi.y=(1-(hr.y?mi.y/hr.y:1))*Pe[1]}),_t}return Qe.separation=function(st){return arguments.length?(se=st,Qe):se},Qe.size=function(st){return arguments.length?(Xe=(Pe=st)==null,Qe):Xe?null:Pe},Qe.nodeSize=function(st){return arguments.length?(Xe=(Pe=st)!=null,Qe):Xe?Pe:null},Ea(Qe,Z)};function Vt(Z){return 1+e.max(Z,function(se){return se.y})}function wr(Z){return Z.reduce(function(se,Pe){return se+Pe.x},0)/Z.length}function mr(Z){var se=Z.children;return se&&se.length?mr(se[0]):Z}function Fr(Z){var se=Z.children,Pe;return se&&(Pe=se.length)?Fr(se[Pe-1]):Z}e.layout.treemap=function(){var Z=e.layout.hierarchy(),se=Math.round,Pe=[1,1],Xe=null,Qe=_i,st=!1,jt,_t="squarify",hr=.5*(1+Math.sqrt(5));function Cr(mi,zi){for(var ji=-1,pn=mi.length,sn,wi;++ji0;)pn.push(wi=sn[js-1]),pn.area+=wi.area,_t!=="squarify"||(no=$r(pn,Xo))<=xo?(sn.pop(),xo=no):(pn.area-=pn.pop().area,Bi(pn,Xo,ji,!1),Xo=Math.min(ji.dx,ji.dy),pn.length=pn.area=0,xo=1/0);pn.length&&(Bi(pn,Xo,ji,!0),pn.length=pn.area=0),zi.forEach(zr)}}function fi(mi){var zi=mi.children;if(zi&&zi.length){var ji=Qe(mi),pn=zi.slice(),sn,wi=[];for(Cr(pn,ji.dx*ji.dy/mi.value),wi.area=0;sn=pn.pop();)wi.push(sn),wi.area+=sn.area,sn.z!=null&&(Bi(wi,sn.z?ji.dx:ji.dy,ji,!pn.length),wi.length=wi.area=0);zi.forEach(fi)}}function $r(mi,zi){for(var ji=mi.area,pn,sn=0,wi=1/0,xo=-1,no=mi.length;++xosn&&(sn=pn));return ji*=ji,zi*=zi,ji?Math.max(zi*sn*hr/ji,ji/(zi*wi*hr)):1/0}function Bi(mi,zi,ji,pn){var sn=-1,wi=mi.length,xo=ji.x,no=ji.y,Xo=zi?se(mi.area/zi):0,js;if(zi==ji.dx){for((pn||Xo>ji.dy)&&(Xo=ji.dy);++snji.dx)&&(Xo=ji.dx);++sn1);return Z+se*Xe*Math.sqrt(-2*Math.log(st)/st)}},logNormal:function(){var Z=e.random.normal.apply(e,arguments);return function(){return Math.exp(Z())}},bates:function(Z){var se=e.random.irwinHall(Z);return function(){return se()/Z}},irwinHall:function(Z){return function(){for(var se=0,Pe=0;Pe2?Mi:Fn,Cr=Xe?Ds:us;return Qe=hr(Z,se,Cr,Pe),st=hr(se,Z,Cr,Eo),_t}function _t(hr){return Qe(hr)}return _t.invert=function(hr){return st(hr)},_t.domain=function(hr){return arguments.length?(Z=hr.map(Number),jt()):Z},_t.range=function(hr){return arguments.length?(se=hr,jt()):se},_t.rangeRound=function(hr){return _t.range(hr).interpolate(Ao)},_t.clamp=function(hr){return arguments.length?(Xe=hr,jt()):Xe},_t.interpolate=function(hr){return arguments.length?(Pe=hr,jt()):Pe},_t.ticks=function(hr){return pa(Z,hr)},_t.tickFormat=function(hr,Cr){return d3_scale_linearTickFormat(Z,hr,Cr)},_t.nice=function(hr){return ya(Z,hr),jt()},_t.copy=function(){return Gn(Z,se,Pe,Xe)},jt()}function ta(Z,se){return e.rebind(Z,se,"range","rangeRound","interpolate","clamp")}function ya(Z,se){return Pi(Z,di(ia(Z,se)[2])),Pi(Z,di(ia(Z,se)[2])),Z}function ia(Z,se){se==null&&(se=10);var Pe=Ci(Z),Xe=Pe[1]-Pe[0],Qe=Math.pow(10,Math.floor(Math.log(Xe/se)/Math.LN10)),st=se/Xe*Qe;return st<=.15?Qe*=10:st<=.35?Qe*=5:st<=.75&&(Qe*=2),Pe[0]=Math.ceil(Pe[0]/Qe)*Qe,Pe[1]=Math.floor(Pe[1]/Qe)*Qe+Qe*.5,Pe[2]=Qe,Pe}function pa(Z,se){return e.range.apply(e,ia(Z,se))}var va={s:1,g:1,p:1,r:1,e:1};function zn(Z){return-Math.floor(Math.log(Z)/Math.LN10+.01)}function is(Z,se){var Pe=zn(se[2]);return Z in va?Math.abs(Pe-zn(Math.max(v(se[0]),v(se[1]))))+ +(Z!=="e"):Pe-(Z==="%")*2}e.scale.log=function(){return Cs(e.scale.linear().domain([0,1]),10,!0,[1,10])};function Cs(Z,se,Pe,Xe){function Qe(_t){return(Pe?Math.log(_t<0?0:_t):-Math.log(_t>0?0:-_t))/Math.log(se)}function st(_t){return Pe?Math.pow(se,_t):-Math.pow(se,-_t)}function jt(_t){return Z(Qe(_t))}return jt.invert=function(_t){return st(Z.invert(_t))},jt.domain=function(_t){return arguments.length?(Pe=_t[0]>=0,Z.domain((Xe=_t.map(Number)).map(Qe)),jt):Xe},jt.base=function(_t){return arguments.length?(se=+_t,Z.domain(Xe.map(Qe)),jt):se},jt.nice=function(){var _t=Pi(Xe.map(Qe),Pe?Math:Ks);return Z.domain(_t),Xe=_t.map(st),jt},jt.ticks=function(){var _t=Ci(Xe),hr=[],Cr=_t[0],zr=_t[1],fi=Math.floor(Qe(Cr)),$r=Math.ceil(Qe(zr)),Bi=se%1?2:se;if(isFinite($r-fi)){if(Pe){for(;fi<$r;fi++)for(var fn=1;fn0;fn--)hr.push(st(fi)*fn);for(fi=0;hr[fi]zr;$r--);hr=hr.slice(fi,$r)}return hr},jt.copy=function(){return Cs(Z.copy(),se,Pe,Xe)},ta(jt,Z)}var Ks={floor:function(Z){return-Math.ceil(-Z)},ceil:function(Z){return-Math.floor(-Z)}};e.scale.pow=function(){return dl(e.scale.linear(),1,[0,1])};function dl(Z,se,Pe){var Xe=xl(se),Qe=xl(1/se);function st(jt){return Z(Xe(jt))}return st.invert=function(jt){return Qe(Z.invert(jt))},st.domain=function(jt){return arguments.length?(Z.domain((Pe=jt.map(Number)).map(Xe)),st):Pe},st.ticks=function(jt){return pa(Pe,jt)},st.tickFormat=function(jt,_t){return d3_scale_linearTickFormat(Pe,jt,_t)},st.nice=function(jt){return st.domain(ya(Pe,jt))},st.exponent=function(jt){return arguments.length?(Xe=xl(se=jt),Qe=xl(1/se),Z.domain(Pe.map(Xe)),st):se},st.copy=function(){return dl(Z.copy(),se,Pe)},ta(st,Z)}function xl(Z){return function(se){return se<0?-Math.pow(-se,Z):Math.pow(se,Z)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return Bl([],{t:"range",a:[[]]})};function Bl(Z,se){var Pe,Xe,Qe;function st(_t){return Xe[((Pe.get(_t)||(se.t==="range"?Pe.set(_t,Z.push(_t)):NaN))-1)%Xe.length]}function jt(_t,hr){return e.range(Z.length).map(function(Cr){return _t+hr*Cr})}return st.domain=function(_t){if(!arguments.length)return Z;Z=[],Pe=new A;for(var hr=-1,Cr=_t.length,zr;++hr0?Pe[st-1]:Z[0],st$r?0:1;if(zr=ge)return hr(zr,fn)+(Cr?hr(Cr,1-fn):"")+"Z";var mi,zi,ji,pn,sn=0,wi=0,xo,no,Xo,js,El,Pl,pu,Il,fu=[];if((pn=(+jt.apply(this,arguments)||0)/2)&&(ji=Xe===ll?Math.sqrt(Cr*Cr+zr*zr):+Xe.apply(this,arguments),fn||(wi*=-1),zr&&(wi=Gr(ji/zr*Math.sin(pn))),Cr&&(sn=Gr(ji/Cr*Math.sin(pn)))),zr){xo=zr*Math.cos(fi+wi),no=zr*Math.sin(fi+wi),Xo=zr*Math.cos($r-wi),js=zr*Math.sin($r-wi);var Xu=Math.abs($r-fi-2*wi)<=Fe?0:1;if(wi&&Ll(xo,no,Xo,js)===fn^Xu){var Vu=(fi+$r)/2;xo=zr*Math.cos(Vu),no=zr*Math.sin(Vu),Xo=js=null}}else xo=no=0;if(Cr){El=Cr*Math.cos($r-sn),Pl=Cr*Math.sin($r-sn),pu=Cr*Math.cos(fi+sn),Il=Cr*Math.sin(fi+sn);var tf=Math.abs(fi-$r+2*sn)<=Fe?0:1;if(sn&&Ll(El,Pl,pu,Il)===1-fn^tf){var ds=(fi+$r)/2;El=Cr*Math.cos(ds),Pl=Cr*Math.sin(ds),pu=Il=null}}else El=Pl=0;if(Bi>Oe&&(mi=Math.min(Math.abs(zr-Cr)/2,+Pe.apply(this,arguments)))>.001){zi=Cr0?0:1}function ms(Z,se,Pe,Xe,Qe){var st=Z[0]-se[0],jt=Z[1]-se[1],_t=(Qe?Xe:-Xe)/Math.sqrt(st*st+jt*jt),hr=_t*jt,Cr=-_t*st,zr=Z[0]+hr,fi=Z[1]+Cr,$r=se[0]+hr,Bi=se[1]+Cr,fn=(zr+$r)/2,mi=(fi+Bi)/2,zi=$r-zr,ji=Bi-fi,pn=zi*zi+ji*ji,sn=Pe-Xe,wi=zr*Bi-$r*fi,xo=(ji<0?-1:1)*Math.sqrt(Math.max(0,sn*sn*pn-wi*wi)),no=(wi*ji-zi*xo)/pn,Xo=(-wi*zi-ji*xo)/pn,js=(wi*ji+zi*xo)/pn,El=(-wi*zi+ji*xo)/pn,Pl=no-fn,pu=Xo-mi,Il=js-fn,fu=El-mi;return Pl*Pl+pu*pu>Il*Il+fu*fu&&(no=js,Xo=El),[[no-hr,Xo-Cr],[no*Pe/sn,Xo*Pe/sn]]}function Os(){return!0}function Xl(Z){var se=Kr,Pe=Ia,Xe=Os,Qe=Nl,st=Qe.key,jt=.7;function _t(hr){var Cr=[],zr=[],fi=-1,$r=hr.length,Bi,fn=gr(se),mi=gr(Pe);function zi(){Cr.push("M",Qe(Z(zr),jt))}for(;++fi<$r;)Xe.call(this,Bi=hr[fi],fi)?zr.push([+fn.call(this,Bi,fi),+mi.call(this,Bi,fi)]):zr.length&&(zi(),zr=[]);return zr.length&&zi(),Cr.length?Cr.join(""):null}return _t.x=function(hr){return arguments.length?(se=hr,_t):se},_t.y=function(hr){return arguments.length?(Pe=hr,_t):Pe},_t.defined=function(hr){return arguments.length?(Xe=hr,_t):Xe},_t.interpolate=function(hr){return arguments.length?(typeof hr=="function"?st=Qe=hr:st=(Qe=Vl.get(hr)||Nl).key,_t):st},_t.tension=function(hr){return arguments.length?(jt=hr,_t):jt},_t}e.svg.line=function(){return Xl(G)};var Vl=e.map({linear:Nl,"linear-closed":le,step:w,"step-before":q,"step-after":Q,basis:Bt,"basis-open":ir,"basis-closed":or,bundle:kr,cardinal:Ve,"cardinal-open":ee,"cardinal-closed":ue,monotone:Ht});Vl.forEach(function(Z,se){se.key=Z,se.closed=/-closed$/.test(Z)});function Nl(Z){return Z.length>1?Z.join("L"):Z+"Z"}function le(Z){return Z.join("L")+"Z"}function w(Z){for(var se=0,Pe=Z.length,Xe=Z[0],Qe=[Xe[0],",",Xe[1]];++se1&&Qe.push("H",Xe[0]),Qe.join("")}function q(Z){for(var se=0,Pe=Z.length,Xe=Z[0],Qe=[Xe[0],",",Xe[1]];++se1){_t=se[1],st=Z[hr],hr++,Xe+="C"+(Qe[0]+jt[0])+","+(Qe[1]+jt[1])+","+(st[0]-_t[0])+","+(st[1]-_t[1])+","+st[0]+","+st[1];for(var Cr=2;Cr9&&(st=Pe*3/Math.sqrt(st),jt[_t]=st*Xe,jt[_t+1]=st*Qe));for(_t=-1;++_t<=hr;)st=(Z[Math.min(hr,_t+1)][0]-Z[Math.max(0,_t-1)][0])/(6*(1+jt[_t]*jt[_t])),se.push([st||0,jt[_t]*st||0]);return se}function Ht(Z){return Z.length<3?Nl(Z):Z[0]+tt(Z,pt(Z))}e.svg.line.radial=function(){var Z=Xl(nr);return Z.radius=Z.x,delete Z.x,Z.angle=Z.y,delete Z.y,Z};function nr(Z){for(var se,Pe=-1,Xe=Z.length,Qe,st;++PeFe)+",1 "+fi}function Cr(zr,fi,$r,Bi){return"Q 0,0 "+Bi}return st.radius=function(zr){return arguments.length?(Pe=gr(zr),st):Pe},st.source=function(zr){return arguments.length?(Z=gr(zr),st):Z},st.target=function(zr){return arguments.length?(se=gr(zr),st):se},st.startAngle=function(zr){return arguments.length?(Xe=gr(zr),st):Xe},st.endAngle=function(zr){return arguments.length?(Qe=gr(zr),st):Qe},st};function ri(Z){return Z.radius}e.svg.diagonal=function(){var Z=Tr,se=Ir,Pe=li;function Xe(Qe,st){var jt=Z.call(this,Qe,st),_t=se.call(this,Qe,st),hr=(jt.y+_t.y)/2,Cr=[jt,{x:jt.x,y:hr},{x:_t.x,y:hr},_t];return Cr=Cr.map(Pe),"M"+Cr[0]+"C"+Cr[1]+" "+Cr[2]+" "+Cr[3]}return Xe.source=function(Qe){return arguments.length?(Z=gr(Qe),Xe):Z},Xe.target=function(Qe){return arguments.length?(se=gr(Qe),Xe):se},Xe.projection=function(Qe){return arguments.length?(Pe=Qe,Xe):Pe},Xe};function li(Z){return[Z.x,Z.y]}e.svg.diagonal.radial=function(){var Z=e.svg.diagonal(),se=li,Pe=Z.projection;return Z.projection=function(Xe){return arguments.length?Pe(Ei(se=Xe)):se},Z};function Ei(Z){return function(){var se=Z.apply(this,arguments),Pe=se[0],Xe=se[1]-fe;return[Pe*Math.cos(Xe),Pe*Math.sin(Xe)]}}e.svg.symbol=function(){var Z=Zn,se=hn;function Pe(Xe,Qe){return(Ua.get(Z.call(this,Xe,Qe))||Yn)(se.call(this,Xe,Qe))}return Pe.type=function(Xe){return arguments.length?(Z=gr(Xe),Pe):Z},Pe.size=function(Xe){return arguments.length?(se=gr(Xe),Pe):se},Pe};function hn(){return 64}function Zn(){return"circle"}function Yn(Z){var se=Math.sqrt(Z/Fe);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:Yn,cross:function(Z){var se=Math.sqrt(Z/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(Z){var se=Math.sqrt(Z/(2*vl)),Pe=se*vl;return"M0,"+-se+"L"+Pe+",0 0,"+se+" "+-Pe+",0Z"},square:function(Z){var se=Math.sqrt(Z)/2;return"M"+-se+","+-se+"L"+se+","+-se+" "+se+","+se+" "+-se+","+se+"Z"},"triangle-down":function(Z){var se=Math.sqrt(Z/Fo),Pe=se*Fo/2;return"M0,"+Pe+"L"+se+","+-Pe+" "+-se+","+-Pe+"Z"},"triangle-up":function(Z){var se=Math.sqrt(Z/Fo),Pe=se*Fo/2;return"M0,"+-Pe+"L"+se+","+Pe+" "+-se+","+Pe+"Z"}});e.svg.symbolTypes=Ua.keys();var Fo=Math.sqrt(3),vl=Math.tan(30*pe);De.transition=function(Z){for(var se=Ol||++Yl,Pe=tu(Z),Xe=[],Qe,st,jt=ou||{time:Date.now(),ease:yo,delay:0,duration:250},_t=-1,hr=this.length;++_t0;)fi[--pn].call(Z,ji);if(zi>=1)return jt.event&&jt.event.end.call(Z,Z.__data__,se),--st.count?delete st[Xe]:delete Z[Pe],1}jt||(_t=Qe.time,hr=ma($r,0,_t),jt=st[Xe]={tween:new A,time:_t,timer:hr,delay:Qe.delay,duration:Qe.duration,ease:Qe.ease,index:se},Qe=null,++st.count)}e.svg.axis=function(){var Z=e.scale.linear(),se=$u,Pe=6,Xe=6,Qe=3,st=[10],jt=null,_t;function hr(Cr){Cr.each(function(){var zr=e.select(this),fi=this.__chart__||Z,$r=this.__chart__=Z.copy(),Bi=jt==null?$r.ticks?$r.ticks.apply($r,st):$r.domain():jt,fn=_t==null?$r.tickFormat?$r.tickFormat.apply($r,st):G:_t,mi=zr.selectAll(".tick").data(Bi,$r),zi=mi.enter().insert("g",".domain").attr("class","tick").style("opacity",Oe),ji=e.transition(mi.exit()).style("opacity",Oe).remove(),pn=e.transition(mi.order()).style("opacity",1),sn=Math.max(Pe,0)+Qe,wi,xo=Ki($r),no=zr.selectAll(".domain").data([0]),Xo=(no.enter().append("path").attr("class","domain"),e.transition(no));zi.append("line"),zi.append("text");var js=zi.select("line"),El=pn.select("line"),Pl=mi.select("text").text(fn),pu=zi.select("text"),Il=pn.select("text"),fu=se==="top"||se==="left"?-1:1,Xu,Vu,tf,ds;if(se==="bottom"||se==="top"?(wi=Wu,Xu="x",tf="y",Vu="x2",ds="y2",Pl.attr("dy",fu<0?"0em":".71em").style("text-anchor","middle"),Xo.attr("d","M"+xo[0]+","+fu*Xe+"V0H"+xo[1]+"V"+fu*Xe)):(wi=ju,Xu="y",tf="x",Vu="y2",ds="x2",Pl.attr("dy",".32em").style("text-anchor",fu<0?"end":"start"),Xo.attr("d","M"+fu*Xe+","+xo[0]+"H0V"+xo[1]+"H"+fu*Xe)),js.attr(ds,fu*Pe),pu.attr(tf,fu*sn),El.attr(Vu,0).attr(ds,fu*Pe),Il.attr(Xu,0).attr(tf,fu*sn),$r.rangeBand){var Wl=$r,Tu=Wl.rangeBand()/2;fi=$r=function(Au){return Wl(Au)+Tu}}else fi.rangeBand?fi=$r:ji.call(wi,$r,fi);zi.call(wi,fi,$r),pn.call(wi,$r,$r)})}return hr.scale=function(Cr){return arguments.length?(Z=Cr,hr):Z},hr.orient=function(Cr){return arguments.length?(se=Cr in Ku?Cr+"":$u,hr):se},hr.ticks=function(){return arguments.length?(st=r(arguments),hr):st},hr.tickValues=function(Cr){return arguments.length?(jt=Cr,hr):jt},hr.tickFormat=function(Cr){return arguments.length?(_t=Cr,hr):_t},hr.tickSize=function(Cr){var zr=arguments.length;return zr?(Pe=+Cr,Xe=+arguments[zr-1],hr):Pe},hr.innerTickSize=function(Cr){return arguments.length?(Pe=+Cr,hr):Pe},hr.outerTickSize=function(Cr){return arguments.length?(Xe=+Cr,hr):Xe},hr.tickPadding=function(Cr){return arguments.length?(Qe=+Cr,hr):Qe},hr.tickSubdivide=function(){return arguments.length&&hr},hr};var $u="bottom",Ku={top:1,right:1,bottom:1,left:1};function Wu(Z,se,Pe){Z.attr("transform",function(Xe){var Qe=se(Xe);return"translate("+(isFinite(Qe)?Qe:Pe(Xe))+",0)"})}function ju(Z,se,Pe){Z.attr("transform",function(Xe){var Qe=se(Xe);return"translate(0,"+(isFinite(Qe)?Qe:Pe(Xe))+")"})}e.svg.brush=function(){var Z=Ce(zr,"brushstart","brush","brushend"),se=null,Pe=null,Xe=[0,0],Qe=[0,0],st,jt,_t=!0,hr=!0,Cr=_f[0];function zr(mi){mi.each(function(){var zi=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",fn).on("touchstart.brush",fn),ji=zi.selectAll(".background").data([0]);ji.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),zi.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var pn=zi.selectAll(".resize").data(Cr,G);pn.exit().remove(),pn.enter().append("g").attr("class",function(no){return"resize "+no}).style("cursor",function(no){return sf[no]}).append("rect").attr("x",function(no){return/[ew]$/.test(no)?-3:null}).attr("y",function(no){return/^[ns]/.test(no)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),pn.style("display",zr.empty()?"none":null);var sn=e.transition(zi),wi=e.transition(ji),xo;se&&(xo=Ki(se),wi.attr("x",xo[0]).attr("width",xo[1]-xo[0]),$r(sn)),Pe&&(xo=Ki(Pe),wi.attr("y",xo[0]).attr("height",xo[1]-xo[0]),Bi(sn)),fi(sn)})}zr.event=function(mi){mi.each(function(){var zi=Z.of(this,arguments),ji={x:Xe,y:Qe,i:st,j:jt},pn=this.__chart__||ji;this.__chart__=ji,Ol?e.select(this).transition().each("start.brush",function(){st=pn.i,jt=pn.j,Xe=pn.x,Qe=pn.y,zi({type:"brushstart"})}).tween("brush:brush",function(){var sn=Ja(Xe,ji.x),wi=Ja(Qe,ji.y);return st=jt=null,function(xo){Xe=ji.x=sn(xo),Qe=ji.y=wi(xo),zi({type:"brush",mode:"resize"})}}).each("end.brush",function(){st=ji.i,jt=ji.j,zi({type:"brush",mode:"resize"}),zi({type:"brushend"})}):(zi({type:"brushstart"}),zi({type:"brush",mode:"resize"}),zi({type:"brushend"}))})};function fi(mi){mi.selectAll(".resize").attr("transform",function(zi){return"translate("+Xe[+/e$/.test(zi)]+","+Qe[+/^s/.test(zi)]+")"})}function $r(mi){mi.select(".extent").attr("x",Xe[0]),mi.selectAll(".extent,.n>rect,.s>rect").attr("width",Xe[1]-Xe[0])}function Bi(mi){mi.select(".extent").attr("y",Qe[0]),mi.selectAll(".extent,.e>rect,.w>rect").attr("height",Qe[1]-Qe[0])}function fn(){var mi=this,zi=e.select(e.event.target),ji=Z.of(mi,arguments),pn=e.select(mi),sn=zi.datum(),wi=!/^(n|s)$/.test(sn)&&se,xo=!/^(e|w)$/.test(sn)&&Pe,no=zi.classed("extent"),Xo=yr(mi),js,El=e.mouse(mi),Pl,pu=e.select(a(mi)).on("keydown.brush",Xu).on("keyup.brush",Vu);if(e.event.changedTouches?pu.on("touchmove.brush",tf).on("touchend.brush",Wl):pu.on("mousemove.brush",tf).on("mouseup.brush",Wl),pn.interrupt().selectAll("*").interrupt(),no)El[0]=Xe[0]-El[0],El[1]=Qe[0]-El[1];else if(sn){var Il=+/w$/.test(sn),fu=+/^n/.test(sn);Pl=[Xe[1-Il]-El[0],Qe[1-fu]-El[1]],El[0]=Xe[Il],El[1]=Qe[fu]}else e.event.altKey&&(js=El.slice());pn.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",zi.style("cursor")),ji({type:"brushstart"}),tf();function Xu(){e.event.keyCode==32&&(no||(js=null,El[0]-=Xe[1],El[1]-=Qe[1],no=2),be())}function Vu(){e.event.keyCode==32&&no==2&&(El[0]+=Xe[1],El[1]+=Qe[1],no=0,be())}function tf(){var Tu=e.mouse(mi),Au=!1;Pl&&(Tu[0]+=Pl[0],Tu[1]+=Pl[1]),no||(e.event.altKey?(js||(js=[(Xe[0]+Xe[1])/2,(Qe[0]+Qe[1])/2]),El[0]=Xe[+(Tu[0]{(function(e,t){typeof cL=="object"&&typeof Mee!="undefined"?t(cL):(e=e||self,t(e.d3=e.d3||{}))})(cL,function(e){"use strict";var t=new Date,r=new Date;function n(Te,ot,Tt,vt){function Ye(He){return Te(He=arguments.length===0?new Date:new Date(+He)),He}return Ye.floor=function(He){return Te(He=new Date(+He)),He},Ye.ceil=function(He){return Te(He=new Date(He-1)),ot(He,1),Te(He),He},Ye.round=function(He){var it=Ye(He),et=Ye.ceil(He);return He-it0))return It;do It.push(Yt=new Date(+He)),ot(He,et),Te(He);while(Yt=it)for(;Te(it),!He(it);)it.setTime(it-1)},function(it,et){if(it>=it)if(et<0)for(;++et<=0;)for(;ot(it,-1),!He(it););else for(;--et>=0;)for(;ot(it,1),!He(it););})},Tt&&(Ye.count=function(He,it){return t.setTime(+He),r.setTime(+it),Te(t),Te(r),Math.floor(Tt(t,r))},Ye.every=function(He){return He=Math.floor(He),!isFinite(He)||!(He>0)?null:He>1?Ye.filter(vt?function(it){return vt(it)%He===0}:function(it){return Ye.count(0,it)%He===0}):Ye}),Ye}var i=n(function(){},function(Te,ot){Te.setTime(+Te+ot)},function(Te,ot){return ot-Te});i.every=function(Te){return Te=Math.floor(Te),!isFinite(Te)||!(Te>0)?null:Te>1?n(function(ot){ot.setTime(Math.floor(ot/Te)*Te)},function(ot,Tt){ot.setTime(+ot+Tt*Te)},function(ot,Tt){return(Tt-ot)/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,ot){Te.setTime(+Te+ot*o)},function(Te,ot){return(ot-Te)/o},function(Te){return Te.getUTCSeconds()}),h=c.range,d=n(function(Te){Te.setTime(Te-Te.getMilliseconds()-Te.getSeconds()*o)},function(Te,ot){Te.setTime(+Te+ot*s)},function(Te,ot){return(ot-Te)/s},function(Te){return Te.getMinutes()}),p=d.range,_=n(function(Te){Te.setTime(Te-Te.getMilliseconds()-Te.getSeconds()*o-Te.getMinutes()*s)},function(Te,ot){Te.setTime(+Te+ot*u)},function(Te,ot){return(ot-Te)/u},function(Te){return Te.getHours()}),b=_.range,v=n(function(Te){Te.setHours(0,0,0,0)},function(Te,ot){Te.setDate(Te.getDate()+ot)},function(Te,ot){return(ot-Te-(ot.getTimezoneOffset()-Te.getTimezoneOffset())*s)/l},function(Te){return Te.getDate()-1}),k=v.range;function E(Te){return n(function(ot){ot.setDate(ot.getDate()-(ot.getDay()+7-Te)%7),ot.setHours(0,0,0,0)},function(ot,Tt){ot.setDate(ot.getDate()+Tt*7)},function(ot,Tt){return(Tt-ot-(Tt.getTimezoneOffset()-ot.getTimezoneOffset())*s)/f})}var A=E(0),L=E(1),x=E(2),C=E(3),M=E(4),m=E(5),P=E(6),T=A.range,B=L.range,F=x.range,U=C.range,G=M.range,j=m.range,H=P.range,N=n(function(Te){Te.setDate(1),Te.setHours(0,0,0,0)},function(Te,ot){Te.setMonth(Te.getMonth()+ot)},function(Te,ot){return ot.getMonth()-Te.getMonth()+(ot.getFullYear()-Te.getFullYear())*12},function(Te){return Te.getMonth()}),W=N.range,re=n(function(Te){Te.setMonth(0,1),Te.setHours(0,0,0,0)},function(Te,ot){Te.setFullYear(Te.getFullYear()+ot)},function(Te,ot){return ot.getFullYear()-Te.getFullYear()},function(Te){return Te.getFullYear()});re.every=function(Te){return!isFinite(Te=Math.floor(Te))||!(Te>0)?null:n(function(ot){ot.setFullYear(Math.floor(ot.getFullYear()/Te)*Te),ot.setMonth(0,1),ot.setHours(0,0,0,0)},function(ot,Tt){ot.setFullYear(ot.getFullYear()+Tt*Te)})};var ae=re.range,be=n(function(Te){Te.setUTCSeconds(0,0)},function(Te,ot){Te.setTime(+Te+ot*s)},function(Te,ot){return(ot-Te)/s},function(Te){return Te.getUTCMinutes()}),ze=be.range,Ce=n(function(Te){Te.setUTCMinutes(0,0,0)},function(Te,ot){Te.setTime(+Te+ot*u)},function(Te,ot){return(ot-Te)/u},function(Te){return Te.getUTCHours()}),de=Ce.range,te=n(function(Te){Te.setUTCHours(0,0,0,0)},function(Te,ot){Te.setUTCDate(Te.getUTCDate()+ot)},function(Te,ot){return(ot-Te)/l},function(Te){return Te.getUTCDate()-1}),ke=te.range;function Ee(Te){return n(function(ot){ot.setUTCDate(ot.getUTCDate()-(ot.getUTCDay()+7-Te)%7),ot.setUTCHours(0,0,0,0)},function(ot,Tt){ot.setUTCDate(ot.getUTCDate()+Tt*7)},function(ot,Tt){return(Tt-ot)/f})}var Me=Ee(0),Ue=Ee(1),De=Ee(2),ye=Ee(3),qe=Ee(4),ce=Ee(5),Je=Ee(6),nt=Me.range,gt=Ue.range,Nt=De.range,at=ye.range,Ke=qe.range,Ct=ce.range,wt=Je.range,St=n(function(Te){Te.setUTCDate(1),Te.setUTCHours(0,0,0,0)},function(Te,ot){Te.setUTCMonth(Te.getUTCMonth()+ot)},function(Te,ot){return ot.getUTCMonth()-Te.getUTCMonth()+(ot.getUTCFullYear()-Te.getUTCFullYear())*12},function(Te){return Te.getUTCMonth()}),Dt=St.range,Zt=n(function(Te){Te.setUTCMonth(0,1),Te.setUTCHours(0,0,0,0)},function(Te,ot){Te.setUTCFullYear(Te.getUTCFullYear()+ot)},function(Te,ot){return ot.getUTCFullYear()-Te.getUTCFullYear()},function(Te){return Te.getUTCFullYear()});Zt.every=function(Te){return!isFinite(Te=Math.floor(Te))||!(Te>0)?null:n(function(ot){ot.setUTCFullYear(Math.floor(ot.getUTCFullYear()/Te)*Te),ot.setUTCMonth(0,1),ot.setUTCHours(0,0,0,0)},function(ot,Tt){ot.setUTCFullYear(ot.getUTCFullYear()+Tt*Te)})};var Et=Zt.range;e.timeDay=v,e.timeDays=k,e.timeFriday=m,e.timeFridays=j,e.timeHour=_,e.timeHours=b,e.timeInterval=n,e.timeMillisecond=i,e.timeMilliseconds=a,e.timeMinute=d,e.timeMinutes=p,e.timeMonday=L,e.timeMondays=B,e.timeMonth=N,e.timeMonths=W,e.timeSaturday=P,e.timeSaturdays=H,e.timeSecond=c,e.timeSeconds=h,e.timeSunday=A,e.timeSundays=T,e.timeThursday=M,e.timeThursdays=G,e.timeTuesday=x,e.timeTuesdays=F,e.timeWednesday=C,e.timeWednesdays=U,e.timeWeek=A,e.timeWeeks=T,e.timeYear=re,e.timeYears=ae,e.utcDay=te,e.utcDays=ke,e.utcFriday=ce,e.utcFridays=Ct,e.utcHour=Ce,e.utcHours=de,e.utcMillisecond=i,e.utcMilliseconds=a,e.utcMinute=be,e.utcMinutes=ze,e.utcMonday=Ue,e.utcMondays=gt,e.utcMonth=St,e.utcMonths=Dt,e.utcSaturday=Je,e.utcSaturdays=wt,e.utcSecond=c,e.utcSeconds=h,e.utcSunday=Me,e.utcSundays=nt,e.utcThursday=qe,e.utcThursdays=Ke,e.utcTuesday=De,e.utcTuesdays=Nt,e.utcWednesday=ye,e.utcWednesdays=at,e.utcWeek=Me,e.utcWeeks=nt,e.utcYear=Zt,e.utcYears=Et,Object.defineProperty(e,"__esModule",{value:!0})})});var t3=Ae((hL,Eee)=>{(function(e,t){typeof hL=="object"&&typeof Eee!="undefined"?t(hL,L9()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(hL,function(e,t){"use strict";function r(xe){if(0<=xe.y&&xe.y<100){var Oe=new Date(-1,xe.m,xe.d,xe.H,xe.M,xe.S,xe.L);return Oe.setFullYear(xe.y),Oe}return new Date(xe.y,xe.m,xe.d,xe.H,xe.M,xe.S,xe.L)}function n(xe){if(0<=xe.y&&xe.y<100){var Oe=new Date(Date.UTC(-1,xe.m,xe.d,xe.H,xe.M,xe.S,xe.L));return Oe.setUTCFullYear(xe.y),Oe}return new Date(Date.UTC(xe.y,xe.m,xe.d,xe.H,xe.M,xe.S,xe.L))}function i(xe,Oe,Ie){return{y:xe,m:Oe,d:Ie,H:0,M:0,S:0,L:0}}function a(xe){var Oe=xe.dateTime,Ie=xe.date,Fe=xe.time,ft=xe.periods,ge=xe.days,fe=xe.shortDays,pe=xe.months,dt=xe.shortMonths,Pt=h(ft),zt=d(ft),rr=h(ge),Gr=d(ge),Br=h(fe),Er=d(fe),Rr=h(pe),pi=d(pe),Di=h(dt),ni=d(dt),$i={a:jr,A:gi,b:ki,B:Vi,c:null,d:N,e:N,f:ze,H:W,I:re,j:ae,L:be,m:Ce,M:de,p:ti,q:tn,Q:it,s:et,S:te,u:ke,U:Ee,V:Me,w:Ue,W:De,x:null,X:null,y:ye,Y:qe,Z:ce,"%":He},Qi={a:Yr,A:oi,b:Fi,B:an,c:null,d:Je,e:Je,f:Ke,H:nt,I:gt,j:Nt,L:at,m:Ct,M:wt,p:nn,q:Ri,Q:it,s:et,S:St,u:Dt,U:Zt,V:Et,w:Te,W:ot,x:null,X:null,y:Tt,Y:vt,Z:Ye,"%":He},si={a:Gt,A:Wt,b:xr,B:Lr,c:Nr,d:M,e:M,f:U,H:P,I:P,j:m,L:F,m:C,M:T,p:yt,q:x,Q:j,s:H,S:B,u:_,U:b,V:v,w:p,W:k,x:Or,X:Hr,y:A,Y:E,Z:L,"%":G};$i.x=Ai(Ie,$i),$i.X=Ai(Fe,$i),$i.c=Ai(Oe,$i),Qi.x=Ai(Ie,Qi),Qi.X=Ai(Fe,Qi),Qi.c=Ai(Oe,Qi);function Ai(Ii,xn){return function(bi){var Xr=[],ct=-1,tr=0,pr=Ii.length,gr,Zr,Ti;for(bi instanceof Date||(bi=new Date(+bi));++ct53)return null;"w"in Xr||(Xr.w=1),"Z"in Xr?(tr=n(i(Xr.y,0,1)),pr=tr.getUTCDay(),tr=pr>4||pr===0?t.utcMonday.ceil(tr):t.utcMonday(tr),tr=t.utcDay.offset(tr,(Xr.V-1)*7),Xr.y=tr.getUTCFullYear(),Xr.m=tr.getUTCMonth(),Xr.d=tr.getUTCDate()+(Xr.w+6)%7):(tr=r(i(Xr.y,0,1)),pr=tr.getDay(),tr=pr>4||pr===0?t.timeMonday.ceil(tr):t.timeMonday(tr),tr=t.timeDay.offset(tr,(Xr.V-1)*7),Xr.y=tr.getFullYear(),Xr.m=tr.getMonth(),Xr.d=tr.getDate()+(Xr.w+6)%7)}else("W"in Xr||"U"in Xr)&&("w"in Xr||(Xr.w="u"in Xr?Xr.u%7:"W"in Xr?1:0),pr="Z"in Xr?n(i(Xr.y,0,1)).getUTCDay():r(i(Xr.y,0,1)).getDay(),Xr.m=0,Xr.d="W"in Xr?(Xr.w+6)%7+Xr.W*7-(pr+5)%7:Xr.w+Xr.U*7-(pr+6)%7);return"Z"in Xr?(Xr.H+=Xr.Z/100|0,Xr.M+=Xr.Z%100,n(Xr)):r(Xr)}}function Rt(Ii,xn,bi,Xr){for(var ct=0,tr=xn.length,pr=bi.length,gr,Zr;ct=pr)return-1;if(gr=xn.charCodeAt(ct++),gr===37){if(gr=xn.charAt(ct++),Zr=si[gr in o?xn.charAt(ct++):gr],!Zr||(Xr=Zr(Ii,bi,Xr))<0)return-1}else if(gr!=bi.charCodeAt(Xr++))return-1}return Xr}function yt(Ii,xn,bi){var Xr=Pt.exec(xn.slice(bi));return Xr?(Ii.p=zt[Xr[0].toLowerCase()],bi+Xr[0].length):-1}function Gt(Ii,xn,bi){var Xr=Br.exec(xn.slice(bi));return Xr?(Ii.w=Er[Xr[0].toLowerCase()],bi+Xr[0].length):-1}function Wt(Ii,xn,bi){var Xr=rr.exec(xn.slice(bi));return Xr?(Ii.w=Gr[Xr[0].toLowerCase()],bi+Xr[0].length):-1}function xr(Ii,xn,bi){var Xr=Di.exec(xn.slice(bi));return Xr?(Ii.m=ni[Xr[0].toLowerCase()],bi+Xr[0].length):-1}function Lr(Ii,xn,bi){var Xr=Rr.exec(xn.slice(bi));return Xr?(Ii.m=pi[Xr[0].toLowerCase()],bi+Xr[0].length):-1}function Nr(Ii,xn,bi){return Rt(Ii,Oe,xn,bi)}function Or(Ii,xn,bi){return Rt(Ii,Ie,xn,bi)}function Hr(Ii,xn,bi){return Rt(Ii,Fe,xn,bi)}function jr(Ii){return fe[Ii.getDay()]}function gi(Ii){return ge[Ii.getDay()]}function ki(Ii){return dt[Ii.getMonth()]}function Vi(Ii){return pe[Ii.getMonth()]}function ti(Ii){return ft[+(Ii.getHours()>=12)]}function tn(Ii){return 1+~~(Ii.getMonth()/3)}function Yr(Ii){return fe[Ii.getUTCDay()]}function oi(Ii){return ge[Ii.getUTCDay()]}function Fi(Ii){return dt[Ii.getUTCMonth()]}function an(Ii){return pe[Ii.getUTCMonth()]}function nn(Ii){return ft[+(Ii.getUTCHours()>=12)]}function Ri(Ii){return 1+~~(Ii.getUTCMonth()/3)}return{format:function(Ii){var xn=Ai(Ii+="",$i);return xn.toString=function(){return Ii},xn},parse:function(Ii){var xn=Ni(Ii+="",!1);return xn.toString=function(){return Ii},xn},utcFormat:function(Ii){var xn=Ai(Ii+="",Qi);return xn.toString=function(){return Ii},xn},utcParse:function(Ii){var xn=Ni(Ii+="",!0);return xn.toString=function(){return Ii},xn}}}var o={"-":"",_:" ",0:"0"},s=/^\s*\d+/,u=/^%/,l=/[\\^$*+?|[\]().{}]/g;function f(xe,Oe,Ie){var Fe=xe<0?"-":"",ft=(Fe?-xe:xe)+"",ge=ft.length;return Fe+(ge68?1900:2e3),Ie+Fe[0].length):-1}function L(xe,Oe,Ie){var Fe=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Oe.slice(Ie,Ie+6));return Fe?(xe.Z=Fe[1]?0:-(Fe[2]+(Fe[3]||"00")),Ie+Fe[0].length):-1}function x(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+1));return Fe?(xe.q=Fe[0]*3-3,Ie+Fe[0].length):-1}function C(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+2));return Fe?(xe.m=Fe[0]-1,Ie+Fe[0].length):-1}function M(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+2));return Fe?(xe.d=+Fe[0],Ie+Fe[0].length):-1}function m(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+3));return Fe?(xe.m=0,xe.d=+Fe[0],Ie+Fe[0].length):-1}function P(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+2));return Fe?(xe.H=+Fe[0],Ie+Fe[0].length):-1}function T(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+2));return Fe?(xe.M=+Fe[0],Ie+Fe[0].length):-1}function B(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+2));return Fe?(xe.S=+Fe[0],Ie+Fe[0].length):-1}function F(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+3));return Fe?(xe.L=+Fe[0],Ie+Fe[0].length):-1}function U(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+6));return Fe?(xe.L=Math.floor(Fe[0]/1e3),Ie+Fe[0].length):-1}function G(xe,Oe,Ie){var Fe=u.exec(Oe.slice(Ie,Ie+1));return Fe?Ie+Fe[0].length:-1}function j(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie));return Fe?(xe.Q=+Fe[0],Ie+Fe[0].length):-1}function H(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie));return Fe?(xe.s=+Fe[0],Ie+Fe[0].length):-1}function N(xe,Oe){return f(xe.getDate(),Oe,2)}function W(xe,Oe){return f(xe.getHours(),Oe,2)}function re(xe,Oe){return f(xe.getHours()%12||12,Oe,2)}function ae(xe,Oe){return f(1+t.timeDay.count(t.timeYear(xe),xe),Oe,3)}function be(xe,Oe){return f(xe.getMilliseconds(),Oe,3)}function ze(xe,Oe){return be(xe,Oe)+"000"}function Ce(xe,Oe){return f(xe.getMonth()+1,Oe,2)}function de(xe,Oe){return f(xe.getMinutes(),Oe,2)}function te(xe,Oe){return f(xe.getSeconds(),Oe,2)}function ke(xe){var Oe=xe.getDay();return Oe===0?7:Oe}function Ee(xe,Oe){return f(t.timeSunday.count(t.timeYear(xe)-1,xe),Oe,2)}function Me(xe,Oe){var Ie=xe.getDay();return xe=Ie>=4||Ie===0?t.timeThursday(xe):t.timeThursday.ceil(xe),f(t.timeThursday.count(t.timeYear(xe),xe)+(t.timeYear(xe).getDay()===4),Oe,2)}function Ue(xe){return xe.getDay()}function De(xe,Oe){return f(t.timeMonday.count(t.timeYear(xe)-1,xe),Oe,2)}function ye(xe,Oe){return f(xe.getFullYear()%100,Oe,2)}function qe(xe,Oe){return f(xe.getFullYear()%1e4,Oe,4)}function ce(xe){var Oe=xe.getTimezoneOffset();return(Oe>0?"-":(Oe*=-1,"+"))+f(Oe/60|0,"0",2)+f(Oe%60,"0",2)}function Je(xe,Oe){return f(xe.getUTCDate(),Oe,2)}function nt(xe,Oe){return f(xe.getUTCHours(),Oe,2)}function gt(xe,Oe){return f(xe.getUTCHours()%12||12,Oe,2)}function Nt(xe,Oe){return f(1+t.utcDay.count(t.utcYear(xe),xe),Oe,3)}function at(xe,Oe){return f(xe.getUTCMilliseconds(),Oe,3)}function Ke(xe,Oe){return at(xe,Oe)+"000"}function Ct(xe,Oe){return f(xe.getUTCMonth()+1,Oe,2)}function wt(xe,Oe){return f(xe.getUTCMinutes(),Oe,2)}function St(xe,Oe){return f(xe.getUTCSeconds(),Oe,2)}function Dt(xe){var Oe=xe.getUTCDay();return Oe===0?7:Oe}function Zt(xe,Oe){return f(t.utcSunday.count(t.utcYear(xe)-1,xe),Oe,2)}function Et(xe,Oe){var Ie=xe.getUTCDay();return xe=Ie>=4||Ie===0?t.utcThursday(xe):t.utcThursday.ceil(xe),f(t.utcThursday.count(t.utcYear(xe),xe)+(t.utcYear(xe).getUTCDay()===4),Oe,2)}function Te(xe){return xe.getUTCDay()}function ot(xe,Oe){return f(t.utcMonday.count(t.utcYear(xe)-1,xe),Oe,2)}function Tt(xe,Oe){return f(xe.getUTCFullYear()%100,Oe,2)}function vt(xe,Oe){return f(xe.getUTCFullYear()%1e4,Oe,4)}function Ye(){return"+0000"}function He(){return"%"}function it(xe){return+xe}function et(xe){return Math.floor(+xe/1e3)}var It;Yt({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 Yt(xe){return It=a(xe),e.timeFormat=It.format,e.timeParse=It.parse,e.utcFormat=It.utcFormat,e.utcParse=It.utcParse,It}var cr="%Y-%m-%dT%H:%M:%S.%LZ";function _r(xe){return xe.toISOString()}var yr=Date.prototype.toISOString?_r:e.utcFormat(cr);function Ut(xe){var Oe=new Date(xe);return isNaN(Oe)?null:Oe}var Re=+new Date("2000-01-01T00:00:00.000Z")?Ut:e.utcParse(cr);e.isoFormat=yr,e.isoParse=Re,e.timeFormatDefaultLocale=Yt,e.timeFormatLocale=a,Object.defineProperty(e,"__esModule",{value:!0})})});var P9=Ae((dL,kee)=>{(function(e,t){typeof dL=="object"&&typeof kee!="undefined"?t(dL):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(dL,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((m=(C=M?C.toExponential(M-1):C.toExponential()).indexOf("e"))<0)return null;var m,P=C.slice(0,m);return[P.length>1?P[0]+P.slice(2):P,+C.slice(m+1)]}function n(C){return C=r(Math.abs(C)),C?C[1]:NaN}function i(C,M){return function(m,P){for(var T=m.length,B=[],F=0,U=C[0],G=0;T>0&&U>0&&(G+U+1>P&&(U=Math.max(1,P-G)),B.push(m.substring(T-=U,T+U)),!((G+=U+1)>P));)U=C[F=(F+1)%C.length];return B.reverse().join(M)}}function a(C){return function(M){return M.replace(/[0-9]/g,function(m){return C[+m]})}}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,m=1,P=-1,T;m0&&(P=0);break}return P>0?C.slice(0,P)+C.slice(T+1):C}var f;function c(C,M){var m=r(C,M);if(!m)return C+"";var P=m[0],T=m[1],B=T-(f=Math.max(-8,Math.min(8,Math.floor(T/3)))*3)+1,F=P.length;return B===F?P:B>F?P+new Array(B-F+1).join("0"):B>0?P.slice(0,B)+"."+P.slice(B):"0."+new Array(1-B).join("0")+r(C,Math.max(0,M+B-1))[0]}function h(C,M){var m=r(C,M);if(!m)return C+"";var P=m[0],T=m[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: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 _=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(_.call(C.grouping,Number),C.thousands+""),m=C.currency===void 0?"":C.currency[0]+"",P=C.currency===void 0?"":C.currency[1]+"",T=C.decimal===void 0?".":C.decimal+"",B=C.numerals===void 0?p:a(_.call(C.numerals,String)),F=C.percent===void 0?"%":C.percent+"",U=C.minus===void 0?"-":C.minus+"",G=C.nan===void 0?"NaN":C.nan+"";function j(N){N=s(N);var W=N.fill,re=N.align,ae=N.sign,be=N.symbol,ze=N.zero,Ce=N.width,de=N.comma,te=N.precision,ke=N.trim,Ee=N.type;Ee==="n"?(de=!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==="$"?m:be==="#"&&/[boxX]/.test(Ee)?"0"+Ee.toLowerCase():"",Ue=be==="$"?P:/[%p]/.test(Ee)?F:"",De=d[Ee],ye=/[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 qe(ce){var Je=Me,nt=Ue,gt,Nt,at;if(Ee==="c")nt=De(ce)+nt,ce="";else{ce=+ce;var Ke=ce<0||1/ce<0;if(ce=isNaN(ce)?G:De(Math.abs(ce),te),ke&&(ce=l(ce)),Ke&&+ce==0&&ae!=="+"&&(Ke=!1),Je=(Ke?ae==="("?ae:U:ae==="-"||ae==="("?"":ae)+Je,nt=(Ee==="s"?b[8+f/3]:"")+nt+(Ke&&ae==="("?")":""),ye){for(gt=-1,Nt=ce.length;++gtat||at>57){nt=(at===46?T+ce.slice(gt+1):ce.slice(gt))+nt,ce=ce.slice(0,gt);break}}}de&&!ze&&(ce=M(ce,1/0));var Ct=Je.length+ce.length+nt.length,wt=Ct>1)+Je+ce+nt+wt.slice(Ct);break;default:ce=wt+Je+ce+nt;break}return B(ce)}return qe.toString=function(){return N+""},qe}function H(N,W){var re=j((N=s(N),N.type="f",N)),ae=Math.max(-8,Math.min(8,Math.floor(n(W)/3)))*3,be=Math.pow(10,-ae),ze=b[8+ae/3];return function(Ce){return re(be*Ce)+ze}}return{format:j,formatPrefix:H}}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 x(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=x,Object.defineProperty(e,"__esModule",{value:!0})})});var Lee=Ae((Pir,Cee)=>{"use strict";Cee.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 ku=Ae((zir,Pee)=>{"use strict";var rrt=Lee();Pee.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&rrt(r))return!1}else if(t!=="number")return!1;return e-e<1}});var rf=Ae((Iir,zee)=>{"use strict";zee.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 z9=Ae((pL,Iee)=>{(function(e,t){typeof pL=="object"&&typeof Iee!="undefined"?t(pL):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})(pL,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 _=new ArrayBuffer(s),b=new Uint8Array(_);for(l=0;l>4,b[f++]=(h&15)<<4|d>>2,b[f++]=(d&3)<<6|p&63;return _};e.decode=a,e.encode=i,Object.defineProperty(e,"__esModule",{value:!0})})});var yg=Ae((Rir,Ree)=>{"use strict";Ree.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 mp=Ae(gm=>{"use strict";var irt=z9().decode,nrt=yg(),I9=Array.isArray,art=ArrayBuffer,ort=DataView;function Dee(e){return art.isView(e)&&!(e instanceof ort)}gm.isTypedArray=Dee;function vL(e){return I9(e)||Dee(e)}gm.isArrayOrTypedArray=vL;function srt(e){return!vL(e[0])}gm.isArray1D=srt;gm.ensureArray=function(e,t){return I9(e)||(e=[]),e.length=t,e};var zd={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};zd.uint8c=zd.u1c;zd.uint8=zd.u1;zd.int8=zd.i1;zd.uint16=zd.u2;zd.int16=zd.i2;zd.uint32=zd.u4;zd.int32=zd.i4;zd.float32=zd.f4;zd.float64=zd.f8;function R9(e){return e.constructor===ArrayBuffer}gm.isArrayBuffer=R9;gm.decodeTypedArraySpec=function(e){var t=[],r=lrt(e),n=r.dtype,i=zd[n];if(!i)throw new Error('Error in dtype: "'+n+'"');var a=i.BYTES_PER_ELEMENT,o=r.bdata;R9(o)||(o=irt(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 Bee=ku(),F9=mp().isArrayOrTypedArray;Uee.exports=function(t,r){if(Bee(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 r3=LM(),drt=/^\w*$/,prt=0,Vee=1,mL=2,Gee=3,sb=4;Hee.exports=function(t,r,n,i){n=n||"name",i=i||"value";var a,o,s,u={};r&&r.length?(s=r3(t,r),o=s.get()):o=t,r=r||"";var l={};if(o)for(a=0;a2)return u[d]=u[d]|mL,c.set(h,null);if(f){for(a=d;a{"use strict";var vrt=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,mrt=/^[^\.\[\]]+$/;jee.exports=function(e,t){for(;t;){var r=e.match(vrt);if(r)e=r[1];else if(e.match(mrt))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 yL=Ae((qir,Zee)=>{"use strict";var yrt=ku();Zee.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 yrt(n)||(n=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),n}});var Jee=Ae((Nir,Kee)=>{"use strict";var Yee=mp().isArrayOrTypedArray,PM=yg();Kee.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(Yee(i)&&Yee(a)&&PM(i[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(i.length,a.length),s=0;s{"use strict";function grt(e,t){var r=e%t;return r<0?r+t:r}function _rt(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}$ee.exports={mod:grt,modHalf:_rt}});var cd=Ae((Vir,gL)=>{(function(e){var t=/^\s+/,r=/\s+$/,n=0,i=e.round,a=e.min,o=e.max,s=e.random;function u(ye,qe){if(ye=ye||"",qe=qe||{},ye instanceof u)return ye;if(!(this instanceof u))return new u(ye,qe);var ce=l(ye);this._originalInput=ye,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=qe.format||ce.format,this._gradientType=qe.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++}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 ye=this.toRgb();return(ye.r*299+ye.g*587+ye.b*114)/1e3},getLuminance:function(){var ye=this.toRgb(),qe,ce,Je,nt,gt,Nt;return qe=ye.r/255,ce=ye.g/255,Je=ye.b/255,qe<=.03928?nt=qe/12.92:nt=e.pow((qe+.055)/1.055,2.4),ce<=.03928?gt=ce/12.92:gt=e.pow((ce+.055)/1.055,2.4),Je<=.03928?Nt=Je/12.92:Nt=e.pow((Je+.055)/1.055,2.4),.2126*nt+.7152*gt+.0722*Nt},setAlpha:function(ye){return this._a=N(ye),this._roundA=i(100*this._a)/100,this},toHsv:function(){var ye=d(this._r,this._g,this._b);return{h:ye.h*360,s:ye.s,v:ye.v,a:this._a}},toHsvString:function(){var ye=d(this._r,this._g,this._b),qe=i(ye.h*360),ce=i(ye.s*100),Je=i(ye.v*100);return this._a==1?"hsv("+qe+", "+ce+"%, "+Je+"%)":"hsva("+qe+", "+ce+"%, "+Je+"%, "+this._roundA+")"},toHsl:function(){var ye=c(this._r,this._g,this._b);return{h:ye.h*360,s:ye.s,l:ye.l,a:this._a}},toHslString:function(){var ye=c(this._r,this._g,this._b),qe=i(ye.h*360),ce=i(ye.s*100),Je=i(ye.l*100);return this._a==1?"hsl("+qe+", "+ce+"%, "+Je+"%)":"hsla("+qe+", "+ce+"%, "+Je+"%, "+this._roundA+")"},toHex:function(ye){return _(this._r,this._g,this._b,ye)},toHexString:function(ye){return"#"+this.toHex(ye)},toHex8:function(ye){return b(this._r,this._g,this._b,this._a,ye)},toHex8String:function(ye){return"#"+this.toHex8(ye)},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[_(this._r,this._g,this._b,!0)]||!1},toFilter:function(ye){var qe="#"+v(this._r,this._g,this._b,this._a),ce=qe,Je=this._gradientType?"GradientType = 1, ":"";if(ye){var nt=u(ye);ce="#"+v(nt._r,nt._g,nt._b,nt._a)}return"progid:DXImageTransform.Microsoft.gradient("+Je+"startColorstr="+qe+",endColorstr="+ce+")"},toString:function(ye){var qe=!!ye;ye=ye||this._format;var ce=!1,Je=this._a<1&&this._a>=0,nt=!qe&&Je&&(ye==="hex"||ye==="hex6"||ye==="hex3"||ye==="hex4"||ye==="hex8"||ye==="name");return nt?ye==="name"&&this._a===0?this.toName():this.toRgbString():(ye==="rgb"&&(ce=this.toRgbString()),ye==="prgb"&&(ce=this.toPercentageRgbString()),(ye==="hex"||ye==="hex6")&&(ce=this.toHexString()),ye==="hex3"&&(ce=this.toHexString(!0)),ye==="hex4"&&(ce=this.toHex8String(!0)),ye==="hex8"&&(ce=this.toHex8String()),ye==="name"&&(ce=this.toName()),ye==="hsl"&&(ce=this.toHslString()),ye==="hsv"&&(ce=this.toHsvString()),ce||this.toHexString())},clone:function(){return u(this.toString())},_applyModification:function(ye,qe){var ce=ye.apply(null,[this].concat([].slice.call(qe)));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(x,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(ye,qe){return ye.apply(null,[this].concat([].slice.call(qe)))},analogous:function(){return this._applyCombination(F,arguments)},complement:function(){return this._applyCombination(m,arguments)},monochromatic:function(){return this._applyCombination(U,arguments)},splitcomplement:function(){return this._applyCombination(B,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},u.fromRatio=function(ye,qe){if(typeof ye=="object"){var ce={};for(var Je in ye)ye.hasOwnProperty(Je)&&(Je==="a"?ce[Je]=ye[Je]:ce[Je]=de(ye[Je]));ye=ce}return u(ye,qe)};function l(ye){var qe={r:0,g:0,b:0},ce=1,Je=null,nt=null,gt=null,Nt=!1,at=!1;return typeof ye=="string"&&(ye=Ue(ye)),typeof ye=="object"&&(Me(ye.r)&&Me(ye.g)&&Me(ye.b)?(qe=f(ye.r,ye.g,ye.b),Nt=!0,at=String(ye.r).substr(-1)==="%"?"prgb":"rgb"):Me(ye.h)&&Me(ye.s)&&Me(ye.v)?(Je=de(ye.s),nt=de(ye.v),qe=p(ye.h,Je,nt),Nt=!0,at="hsv"):Me(ye.h)&&Me(ye.s)&&Me(ye.l)&&(Je=de(ye.s),gt=de(ye.l),qe=h(ye.h,Je,gt),Nt=!0,at="hsl"),ye.hasOwnProperty("a")&&(ce=ye.a)),ce=N(ce),{ok:Nt,format:ye.format||at,r:a(255,o(qe.r,0)),g:a(255,o(qe.g,0)),b:a(255,o(qe.b,0)),a:ce}}function f(ye,qe,ce){return{r:W(ye,255)*255,g:W(qe,255)*255,b:W(ce,255)*255}}function c(ye,qe,ce){ye=W(ye,255),qe=W(qe,255),ce=W(ce,255);var Je=o(ye,qe,ce),nt=a(ye,qe,ce),gt,Nt,at=(Je+nt)/2;if(Je==nt)gt=Nt=0;else{var Ke=Je-nt;switch(Nt=at>.5?Ke/(2-Je-nt):Ke/(Je+nt),Je){case ye:gt=(qe-ce)/Ke+(qe1&&(St-=1),St<1/6?Ct+(wt-Ct)*6*St:St<1/2?wt:St<2/3?Ct+(wt-Ct)*(2/3-St)*6:Ct}if(qe===0)Je=nt=gt=ce;else{var at=ce<.5?ce*(1+qe):ce+qe-ce*qe,Ke=2*ce-at;Je=Nt(Ke,at,ye+1/3),nt=Nt(Ke,at,ye),gt=Nt(Ke,at,ye-1/3)}return{r:Je*255,g:nt*255,b:gt*255}}function d(ye,qe,ce){ye=W(ye,255),qe=W(qe,255),ce=W(ce,255);var Je=o(ye,qe,ce),nt=a(ye,qe,ce),gt,Nt,at=Je,Ke=Je-nt;if(Nt=Je===0?0:Ke/Je,Je==nt)gt=0;else{switch(Je){case ye:gt=(qe-ce)/Ke+(qe>1)+720)%360;--qe;)Je.h=(Je.h+nt)%360,gt.push(u(Je));return gt}function U(ye,qe){qe=qe||6;for(var ce=u(ye).toHsv(),Je=ce.h,nt=ce.s,gt=ce.v,Nt=[],at=1/qe;qe--;)Nt.push(u({h:Je,s:nt,v:gt})),gt=(gt+at)%1;return Nt}u.mix=function(ye,qe,ce){ce=ce===0?0:ce||50;var Je=u(ye).toRgb(),nt=u(qe).toRgb(),gt=ce/100,Nt={r:(nt.r-Je.r)*gt+Je.r,g:(nt.g-Je.g)*gt+Je.g,b:(nt.b-Je.b)*gt+Je.b,a:(nt.a-Je.a)*gt+Je.a};return u(Nt)},u.readability=function(ye,qe){var ce=u(ye),Je=u(qe);return(e.max(ce.getLuminance(),Je.getLuminance())+.05)/(e.min(ce.getLuminance(),Je.getLuminance())+.05)},u.isReadable=function(ye,qe,ce){var Je=u.readability(ye,qe),nt,gt;switch(gt=!1,nt=De(ce),nt.level+nt.size){case"AAsmall":case"AAAlarge":gt=Je>=4.5;break;case"AAlarge":gt=Je>=3;break;case"AAAsmall":gt=Je>=7;break}return gt},u.mostReadable=function(ye,qe,ce){var Je=null,nt=0,gt,Nt,at,Ke;ce=ce||{},Nt=ce.includeFallbackColors,at=ce.level,Ke=ce.size;for(var Ct=0;Ctnt&&(nt=gt,Je=u(qe[Ct]));return u.isReadable(ye,Je,{level:at,size:Ke})||!Nt?Je:(ce.includeFallbackColors=!1,u.mostReadable(ye,["#fff","#000"],ce))};var G=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=H(G);function H(ye){var qe={};for(var ce in ye)ye.hasOwnProperty(ce)&&(qe[ye[ce]]=ce);return qe}function N(ye){return ye=parseFloat(ye),(isNaN(ye)||ye<0||ye>1)&&(ye=1),ye}function W(ye,qe){be(ye)&&(ye="100%");var ce=ze(ye);return ye=a(qe,o(0,parseFloat(ye))),ce&&(ye=parseInt(ye*qe,10)/100),e.abs(ye-qe)<1e-6?1:ye%qe/parseFloat(qe)}function re(ye){return a(1,o(0,ye))}function ae(ye){return parseInt(ye,16)}function be(ye){return typeof ye=="string"&&ye.indexOf(".")!=-1&&parseFloat(ye)===1}function ze(ye){return typeof ye=="string"&&ye.indexOf("%")!=-1}function Ce(ye){return ye.length==1?"0"+ye:""+ye}function de(ye){return ye<=1&&(ye=ye*100+"%"),ye}function te(ye){return e.round(parseFloat(ye)*255).toString(16)}function ke(ye){return ae(ye)/255}var Ee=function(){var ye="[-\\+]?\\d+%?",qe="[-\\+]?\\d*\\.\\d+%?",ce="(?:"+qe+")|(?:"+ye+")",Je="[\\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"+Je),rgba:new RegExp("rgba"+nt),hsl:new RegExp("hsl"+Je),hsla:new RegExp("hsla"+nt),hsv:new RegExp("hsv"+Je),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 Me(ye){return!!Ee.CSS_UNIT.exec(ye)}function Ue(ye){ye=ye.replace(t,"").replace(r,"").toLowerCase();var qe=!1;if(G[ye])ye=G[ye],qe=!0;else if(ye=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ce;return(ce=Ee.rgb.exec(ye))?{r:ce[1],g:ce[2],b:ce[3]}:(ce=Ee.rgba.exec(ye))?{r:ce[1],g:ce[2],b:ce[3],a:ce[4]}:(ce=Ee.hsl.exec(ye))?{h:ce[1],s:ce[2],l:ce[3]}:(ce=Ee.hsla.exec(ye))?{h:ce[1],s:ce[2],l:ce[3],a:ce[4]}:(ce=Ee.hsv.exec(ye))?{h:ce[1],s:ce[2],v:ce[3]}:(ce=Ee.hsva.exec(ye))?{h:ce[1],s:ce[2],v:ce[3],a:ce[4]}:(ce=Ee.hex8.exec(ye))?{r:ae(ce[1]),g:ae(ce[2]),b:ae(ce[3]),a:ke(ce[4]),format:qe?"name":"hex8"}:(ce=Ee.hex6.exec(ye))?{r:ae(ce[1]),g:ae(ce[2]),b:ae(ce[3]),format:qe?"name":"hex"}:(ce=Ee.hex4.exec(ye))?{r:ae(ce[1]+""+ce[1]),g:ae(ce[2]+""+ce[2]),b:ae(ce[3]+""+ce[3]),a:ke(ce[4]+""+ce[4]),format:qe?"name":"hex8"}:(ce=Ee.hex3.exec(ye))?{r:ae(ce[1]+""+ce[1]),g:ae(ce[2]+""+ce[2]),b:ae(ce[3]+""+ce[3]),format:qe?"name":"hex"}:!1}function De(ye){var qe,ce;return ye=ye||{level:"AA",size:"small"},qe=(ye.level||"AA").toUpperCase(),ce=(ye.size||"small").toLowerCase(),qe!=="AA"&&qe!=="AAA"&&(qe="AA"),ce!=="small"&&ce!=="large"&&(ce="small"),{level:qe,size:ce}}typeof gL!="undefined"&&gL.exports?gL.exports=u:window.tinycolor=u})(Math)});var Su=Ae(RM=>{"use strict";var Qee=yg(),zM=Array.isArray;function xrt(e,t){var r,n;for(r=0;r{"use strict";ete.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 DM=Ae((Wir,tte)=>{"use strict";tte.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var q1=Ae((jir,nte)=>{"use strict";var rte=DM(),ite=gc(),B9=ite({editType:"none"});B9.family.dflt=rte.HOVERFONT;B9.size.dflt=rte.HOVERFONTSIZE;nte.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:B9,grouptitlefont:ite({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var n3=Ae((Xir,ate)=>{"use strict";var brt=gc(),FM=q1().hoverlabel,BM=Su().extendFlat;ate.exports={hoverlabel:{bgcolor:BM({},FM.bgcolor,{arrayOk:!0}),bordercolor:BM({},FM.bordercolor,{arrayOk:!0}),font:brt({arrayOk:!0,editType:"none"}),align:BM({},FM.align,{arrayOk:!0}),namelength:BM({},FM.namelength,{arrayOk:!0}),showarrow:BM({},FM.showarrow),editType:"none"}}});var Gf=Ae((Zir,ote)=>{"use strict";var wrt=gc(),Trt=n3();ote.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:wrt({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:Trt.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 lb=Ae((Yir,ute)=>{"use strict";var Art=cd(),_L={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)"]]},ste=_L.RdBu;function Srt(e,t){if(t||(t=ste),!e)return t;function r(){try{e=_L[e]||JSON.parse(e)}catch(n){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),lte(e)?e:t}function lte(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";ub.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];ub.defaultLine="#444";ub.lightLine="#eee";ub.background="#fff";ub.borderLine="#BEC8D9";ub.lightFraction=100*10/11});var jl=Ae((Jir,fte)=>{"use strict";var bv=cd(),Ert=ku(),krt=mp().isTypedArray,hd=fte.exports={},xL=Fh();hd.defaults=xL.defaults;var Crt=hd.defaultLine=xL.defaultLine;hd.lightLine=xL.lightLine;var q9=hd.background=xL.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(bv(e))};hd.opacity=function(e){return e?bv(e).getAlpha():0};hd.addOpacity=function(e,t){var r=bv(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"};hd.combine=function(e,t){var r=bv(e).toRgb();if(r.a===1)return bv(e).toRgbString();var n=bv(t||q9).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 bv(a).toRgbString()};hd.interpolate=function(e,t,r){var n=bv(e).toRgb(),i=bv(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 bv(a).toRgbString()};hd.contrast=function(e,t,r){var n=bv(e);n.getAlpha()!==1&&(n=bv(hd.combine(e,q9)));var i=n.isDark()?t?n.lighten(t):q9:r?n.darken(r):Crt;return i.toString()};hd.stroke=function(e,t){var r=bv(t);e.style({stroke:hd.tinyRGB(r),"stroke-opacity":r.getAlpha()})};hd.fill=function(e,t){var r=bv(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 N1=Ae(($ir,cte)=>{"use strict";cte.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var a3=Ae(hte=>{"use strict";hte.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 mte=Ae(wv=>{"use strict";var N9=ku(),dte=cd(),pte=Su().extendFlat,Lrt=Gf(),Prt=lb(),zrt=jl(),Irt=N1().DESELECTDIM,o3=LM(),vte=a3().counter,Rrt=i3().modHalf,dy=mp().isArrayOrTypedArray,U1=mp().isTypedArraySpec,V1=mp().decodeTypedArraySpec;wv.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(dy(e)?e:U1(e)?V1(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}U1(e)&&(e=V1(e)),e%1||!N9(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){U1(e)&&(e=V1(e)),dte(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function n(i){return dte(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(Prt.get(e,r))}},angle:{coerceFunction:function(e,t,r){U1(e)&&(e=V1(e)),e==="auto"?t.set("auto"):N9(e)?t.set(Rrt(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,n){var i=n.regex||vte(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:!!vte(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 yte={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/un/"},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:{}}},gte={};function _te(e,t){for(var r in e){var n=e[r];n.valType?t[r]=n.dflt:(t[r]||(t[r]={}),_te(n,t[r]))}}_te(yte,gte);xte.exports={configAttributes:yte,dfltConfig:gte}});var V9=Ae((rnr,bte)=>{"use strict";var U9=Jl(),Drt=ku(),OM=[];bte.exports=function(e,t){if(OM.indexOf(e)!==-1)return;OM.push(e);var r=1e3;Drt(t)?r=t:t==="long"&&(r=3e3);var n=U9.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var i=n.selectAll(".notifier-note").data(OM);function a(o){o.duration(700).style("opacity",0).each("end",function(s){var u=OM.indexOf(s);u!==-1&&OM.splice(u,1),U9.select(this).remove()})}i.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var s=U9.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 s3=fb().dfltConfig,G9=V9(),H9=wte.exports={};H9.log=function(){var e;if(s3.logging>1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}};H9.warn=function(){var e;if(s3.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}};H9.error=function(){var e;if(s3.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}});var wL=Ae((nnr,Tte)=>{"use strict";Tte.exports=function(){}});var W9=Ae((anr,Ate)=>{"use strict";Ate.exports=function(t,r){if(r instanceof RegExp){for(var n=r.toString(),i=0;i{Ste.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 kte=Ae((snr,Ete)=>{Ete.exports=Brt;function Brt(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 Lte=Ae((lnr,Cte)=>{Cte.exports=Ort;function Ort(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 j9=Ae((unr,Pte)=>{Pte.exports=qrt;function qrt(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 Ite=Ae((fnr,zte)=>{zte.exports=Nrt;function Nrt(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 Dte=Ae((cnr,Rte)=>{Rte.exports=Urt;function Urt(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],_=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,x=n*l-a*s,C=i*l-a*u,M=f*_-c*p,m=f*b-h*p,P=f*v-d*p,T=c*b-h*_,B=c*v-d*_,F=h*v-d*b,U=k*F-E*B+A*T+L*P-x*m+C*M;return U?(U=1/U,e[0]=(s*F-u*B+l*T)*U,e[1]=(i*B-n*F-a*T)*U,e[2]=(_*C-b*x+v*L)*U,e[3]=(h*x-c*C-d*L)*U,e[4]=(u*P-o*F-l*m)*U,e[5]=(r*F-i*P+a*m)*U,e[6]=(b*A-p*C-v*E)*U,e[7]=(f*C-h*A+d*E)*U,e[8]=(o*B-s*P+l*M)*U,e[9]=(n*P-r*B-a*M)*U,e[10]=(p*x-_*A+v*k)*U,e[11]=(c*A-f*x-d*k)*U,e[12]=(s*m-o*T-u*M)*U,e[13]=(r*T-n*m+i*M)*U,e[14]=(_*E-p*L-b*k)*U,e[15]=(f*L-c*E+h*k)*U,e):null}});var Bte=Ae((hnr,Fte)=>{Fte.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],_=t[13],b=t[14],v=t[15];return e[0]=s*(h*v-d*b)-c*(u*v-l*b)+_*(u*d-l*h),e[1]=-(n*(h*v-d*b)-c*(i*v-a*b)+_*(i*d-a*h)),e[2]=n*(u*v-l*b)-s*(i*v-a*b)+_*(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*_)-f*(s*v-l*_)+p*(s*d-l*c),e[9]=-(r*(c*v-d*_)-f*(n*v-a*_)+p*(n*d-a*c)),e[10]=r*(s*v-l*_)-o*(n*v-a*_)+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*_)-f*(s*b-u*_)+p*(s*h-u*c)),e[13]=r*(c*b-h*_)-f*(n*b-i*_)+p*(n*h-i*c),e[14]=-(r*(s*b-u*_)-o*(n*b-i*_)+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((dnr,Ote)=>{Ote.exports=Grt;function Grt(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],_=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,x=n*u-i*s,C=l*p-f*d,M=l*_-c*d,m=l*b-h*d,P=f*_-c*p,T=f*b-h*p,B=c*b-h*_;return v*B-k*T+E*P+A*m-L*M+x*C}});var Ute=Ae((pnr,Nte)=>{Nte.exports=Hrt;function Hrt(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],_=t[12],b=t[13],v=t[14],k=t[15],E=r[0],A=r[1],L=r[2],x=r[3];return e[0]=E*n+A*s+L*c+x*_,e[1]=E*i+A*u+L*h+x*b,e[2]=E*a+A*l+L*d+x*v,e[3]=E*o+A*f+L*p+x*k,E=r[4],A=r[5],L=r[6],x=r[7],e[4]=E*n+A*s+L*c+x*_,e[5]=E*i+A*u+L*h+x*b,e[6]=E*a+A*l+L*d+x*v,e[7]=E*o+A*f+L*p+x*k,E=r[8],A=r[9],L=r[10],x=r[11],e[8]=E*n+A*s+L*c+x*_,e[9]=E*i+A*u+L*h+x*b,e[10]=E*a+A*l+L*d+x*v,e[11]=E*o+A*f+L*p+x*k,E=r[12],A=r[13],L=r[14],x=r[15],e[12]=E*n+A*s+L*c+x*_,e[13]=E*i+A*u+L*h+x*b,e[14]=E*a+A*l+L*d+x*v,e[15]=E*o+A*f+L*p+x*k,e}});var Gte=Ae((vnr,Vte)=>{Vte.exports=Wrt;function Wrt(e,t,r){var n=r[0],i=r[1],a=r[2],o,s,u,l,f,c,h,d,p,_,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],_=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]=_,e[10]=b,e[11]=v,e[12]=o*n+f*i+p*a+t[12],e[13]=s*n+c*i+_*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 Wte=Ae((mnr,Hte)=>{Hte.exports=jrt;function jrt(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 Xte=Ae((ynr,jte)=>{jte.exports=Xrt;function Xrt(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,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G;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],_=t[4],b=t[5],v=t[6],k=t[7],E=t[8],A=t[9],L=t[10],x=t[11],C=i*i*f+l,M=a*i*f+o*u,m=o*i*f-a*u,P=i*a*f-o*u,T=a*a*f+l,B=o*a*f+i*u,F=i*o*f+a*u,U=a*o*f-i*u,G=o*o*f+l,e[0]=c*C+_*M+E*m,e[1]=h*C+b*M+A*m,e[2]=d*C+v*M+L*m,e[3]=p*C+k*M+x*m,e[4]=c*P+_*T+E*B,e[5]=h*P+b*T+A*B,e[6]=d*P+v*T+L*B,e[7]=p*P+k*T+x*B,e[8]=c*F+_*U+E*G,e[9]=h*F+b*U+A*G,e[10]=d*F+v*U+L*G,e[11]=p*F+k*U+x*G,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var Yte=Ae((gnr,Zte)=>{Zte.exports=Zrt;function Zrt(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 Jte=Ae((_nr,Kte)=>{Kte.exports=Yrt;function Yrt(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 Qte=Ae((xnr,$te)=>{$te.exports=Krt;function Krt(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 tre=Ae((bnr,ere)=>{ere.exports=Jrt;function Jrt(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 ire=Ae((wnr,rre)=>{rre.exports=$rt;function $rt(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,_=a*l,b=o*s,v=o*u,k=o*l;return e[0]=1-(d+_),e[1]=c+k,e[2]=h-v,e[3]=0,e[4]=c-k,e[5]=1-(f+_),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 are=Ae((Tnr,nre)=>{nre.exports=Qrt;function Qrt(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 sre=Ae((Anr,ore)=>{ore.exports=eit;function eit(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 ure=Ae((Snr,lre)=>{lre.exports=tit;function tit(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 cre=Ae((Mnr,fre)=>{fre.exports=rit;function rit(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 dre=Ae((Enr,hre)=>{hre.exports=iit;function iit(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 vre=Ae((knr,pre)=>{pre.exports=nit;function nit(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,_=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+_,e[7]=0,e[8]=h+b,e[9]=d-_,e[10]=1-l-c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var yre=Ae((Cnr,mre)=>{mre.exports=ait;function ait(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 _re=Ae((Lnr,gre)=>{gre.exports=oit;function oit(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 bre=Ae((Pnr,xre)=>{xre.exports=sit;function sit(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 Tre=Ae((znr,wre)=>{wre.exports=lit;function lit(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 Sre=Ae((Inr,Are)=>{var uit=j9();Are.exports=fit;function fit(e,t,r,n){var i,a,o,s,u,l,f,c,h,d,p=t[0],_=t[1],b=t[2],v=n[0],k=n[1],E=n[2],A=r[0],L=r[1],x=r[2];return Math.abs(p-A)<1e-6&&Math.abs(_-L)<1e-6&&Math.abs(b-x)<1e-6?uit(e):(f=p-A,c=_-L,h=b-x,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*_+o*b),e[13]=-(s*p+u*_+l*b),e[14]=-(f*p+c*_+h*b),e[15]=1,e)}});var Ere=Ae((Rnr,Mre)=>{Mre.exports=cit;function cit(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 X9=Ae((Dnr,kre)=>{kre.exports={create:Mte(),clone:kte(),copy:Lte(),identity:j9(),transpose:Ite(),invert:Dte(),adjoint:Bte(),determinant:qte(),multiply:Ute(),translate:Gte(),scale:Wte(),rotate:Xte(),rotateX:Yte(),rotateY:Jte(),rotateZ:Qte(),fromRotation:tre(),fromRotationTranslation:ire(),fromScaling:are(),fromTranslation:sre(),fromXRotation:ure(),fromYRotation:cre(),fromZRotation:dre(),fromQuat:vre(),frustum:yre(),perspective:_re(),perspectiveFromFieldOfView:bre(),ortho:Tre(),lookAt:Sre(),str:Ere()}});var TL=Ae(xh=>{"use strict";var hit=X9();xh.init2dArray=function(e,t){for(var r=new Array(e),n=0;n{"use strict";var dit=Jl(),Cre=G1(),pit=TL(),vit=X9();function mit(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 yit(e){var t=dit.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function Lre(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function git(e,t){Pre("global",e,t)}function Pre(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):Cre.warn("addStyleRule failed"):Cre.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function _it(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&Lre(r)}function xit(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 bit(e){var t=Ire(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=zre(n);if(i){var a=pit.convertCssMatrix(i);r=vit.multiply(r,r,a)}}),r}function zre(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 Ire(e){for(var t=[];wit(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function wit(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function Tit(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}Rre.exports={getGraphDiv:mit,isPlotDiv:yit,removeElement:Lre,addStyleRule:git,addRelatedStyleRule:Pre,deleteRelatedStyleRule:_it,setStyleOnHover:xit,getFullTransformMatrix:bit,getElementTransformMatrix:zre,getElementAndAncestors:Ire,equalDomRects:Tit}});var NM=Ae((Onr,Dre)=>{"use strict";Dre.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 Sc=Ae((qnr,Vre)=>{"use strict";var Bre=Su().extendFlat,Ait=yg(),Ore={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},qre={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},Sit=Ore.flags.slice().concat(["fullReplot"]),Mit=qre.flags.slice().concat("layoutReplot");Vre.exports={traces:Ore,layout:qre,traceFlags:function(){return Fre(Sit)},layoutFlags:function(){return Fre(Mit)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var n=r.split("+"),i=0;i{"use strict";Z9.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};Z9.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 Y9=Ae((Unr,Gre)=>{"use strict";Gre.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 Ff=Ae(l3=>{"use strict";var{DATE_FORMAT_LINK:Eit,FORMAT_LINK:kit}=Y9(),Cit=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function Lit({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,kit,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,Eit,"for details on the date formatting syntax.",Cit].join(" ")}l3.templateFormatStringDescription=Lit;l3.hovertemplateAttrs=({editType:e="none",arrayOk:t}={},r={})=>ym({valType:"string",dflt:"",editType:e},t!==!1?{arrayOk:!0}:{});l3.texttemplateAttrs=({editType:e="calc",arrayOk:t}={},r={})=>ym({valType:"string",dflt:"",editType:e},t!==!1?{arrayOk:!0}:{});l3.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:t}={},r={})=>({valType:"string",dflt:"",editType:e});l3.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var ML=Ae((Hnr,Yre)=>{"use strict";function H1(e,t){return t?t.d2l(e):e}function Hre(e,t){return t?t.l2d(e):e}function Pit(e){return e.x0}function zit(e){return e.x1}function Iit(e){return e.y0}function Rit(e){return e.y1}function Wre(e){return e.x0shift||0}function jre(e){return e.x1shift||0}function Xre(e){return e.y0shift||0}function Zre(e){return e.y1shift||0}function AL(e,t){return H1(e.x1,t)+jre(e)-H1(e.x0,t)-Wre(e)}function SL(e,t,r){return H1(e.y1,r)+Zre(e)-H1(e.y0,r)-Xre(e)}function Dit(e,t){return Math.abs(AL(e,t))}function Fit(e,t,r){return Math.abs(SL(e,t,r))}function Bit(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(AL(e,t),2)+Math.pow(SL(e,t,r),2))}function Oit(e,t){return Hre((H1(e.x1,t)+jre(e)+H1(e.x0,t)+Wre(e))/2,t)}function qit(e,t,r){return Hre((H1(e.y1,r)+Zre(e)+H1(e.y0,r)+Xre(e))/2,r)}function Nit(e,t,r){return e.type!=="line"?void 0:SL(e,t,r)/AL(e,t)}Yre.exports={x0:Pit,x1:zit,y0:Iit,y1:Rit,slope:Nit,dx:AL,dy:SL,width:Dit,height:Fit,length:Bit,xcenter:Oit,ycenter:qit}});var $re=Ae((Wnr,Jre)=>{"use strict";var Uit=Sc().overrideAll,cb=Gf(),Kre=gc(),Vit=Id().dash,W1=Su().extendFlat,{shapeTexttemplateAttrs:Git,templatefallbackAttrs:Hit}=Ff(),Wit=ML();Jre.exports=Uit({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:Kre({})},legendrank:W1({},cb.legendrank,{}),legendwidth:W1({},cb.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:W1({},Vit,{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:Git({newshape:!0},{keys:Object.keys(Wit)}),texttemplatefallback:Hit({editType:"arraydraw"}),font:Kre({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var eie=Ae((jnr,Qre)=>{"use strict";var jit=Id().dash,Xit=Su().extendFlat;Qre.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:Xit({},jit,{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 EL=Ae((Xnr,tie)=>{"use strict";tie.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 u3=Ae((Znr,aie)=>{"use strict";var K9=gc(),Zit=NM(),kL=Fh(),rie=$re(),iie=eie(),Yit=EL(),nie=Su().extendFlat,CL=K9({editType:"calc"});CL.family.dflt='"Open Sans", verdana, arial, sans-serif';CL.size.dflt=12;CL.color.dflt=kL.defaultLine;aie.exports={font:CL,title:{text:{valType:"string",editType:"layoutstyle"},font:K9({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:K9({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:nie(Yit({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:kL.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:kL.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:kL.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:rie.newshape,activeshape:rie.activeshape,newselection:iie.newselection,activeselection:iie.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:nie({},Zit.transition,{editType:"none"})}});var oie=Ae(()=>{(function(){if(!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")){var e=document.createElement("style");e.id="ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var $l=Ae(Tf=>{"use strict";var f3=G1(),sie=wL(),lie=W9(),Kit=yg(),Jit=qM().addStyleRule,uie=Su(),$it=Gf(),Qit=u3(),ent=uie.extendFlat,J9=uie.extendDeepAll;Tf.modules={};Tf.allCategories={};Tf.allTypes=[];Tf.subplotsRegistry={};Tf.componentsRegistry={};Tf.layoutArrayContainers=[];Tf.layoutArrayRegexes=[];Tf.traceLayoutAttributes={};Tf.localeRegistry={};Tf.apiMethodRegistry={};Tf.collectableSubplotTypes=null;Tf.register=function(t){if(Tf.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 ont=t3().timeFormat,xie=ku(),$9=G1(),X1=i3().mod,d3=rf(),g0=d3.BADNUM,Tv=d3.ONEDAY,UM=d3.ONEHOUR,j1=d3.ONEMIN,h3=d3.ONESEC,VM=d3.EPOCHJD,gg=$l(),pie=t3().utcFormat,snt=/^\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,lnt=/^\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,vie=new Date().getFullYear()-70;function _g(e){return e&&gg.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}bh.dateTick0=function(e,t){var r=unt(e,!!t);if(t<2)return r;var n=bh.dateTime2ms(r,e);return n+=Tv*(t-1),bh.ms2DateTime(n,0,e)};function unt(e,t){return _g(e)?t?gg.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:gg.getComponentMethod("calendars","CANONICAL_TICK")[e]:t?"2000-01-02":"2000-01-01"}bh.dfltRange=function(e){return _g(e)?gg.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 PL,zL;bh.dateTime2ms=function(e,t){if(bh.isJSDate(e)){var r=e.getTimezoneOffset()*j1,n=(e.getUTCMinutes()-e.getMinutes())*j1+(e.getUTCSeconds()-e.getSeconds())*h3+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var i=3*j1;r=r-i/2+X1(n-r+i/2,i)}return e=Number(e)-r,e>=PL&&e<=zL?e:g0}if(typeof e!="string"&&typeof e!="number")return g0;e=String(e);var a=_g(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?lnt:snt);if(!u)return g0;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 g0;l=Number(l);var _;try{var b=gg.getComponentMethod("calendars","getCal")(t);if(s){var v=f.charAt(f.length-1)==="i";f=parseInt(f,10),_=b.newDate(l,b.toMonthIndex(l,f,v),c)}else _=b.newDate(l,Number(f),c)}catch(E){return g0}return _?(_.toJD()-VM)*Tv+h*UM+d*j1+p*h3:g0}l.length===2?l=(Number(l)+2e3-vie)%100+vie: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?g0:k.getTime()+p*h3};PL=bh.MIN_MS=bh.dateTime2ms("-9999");zL=bh.MAX_MS=bh.dateTime2ms("9999-12-31 23:59:59.9999");bh.isDateTime=function(e,t){return bh.dateTime2ms(e,t)!==g0};function c3(e,t){return String(e+Math.pow(10,t)).substr(1)}var LL=90*Tv,mie=3*UM,yie=5*j1;bh.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=PL&&e<=zL))return g0;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(_g(r)){var c=Math.floor(i/Tv)+VM,h=Math.floor(X1(e,Tv));try{a=gg.getComponentMethod("calendars","getCal")(r).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){a=pie("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=PL+Tv&&e<=zL-Tv))return g0;var t=Math.floor(X1(e+.05,1)*10),r=new Date(Math.round(e-t/10)),n=ont("%Y-%m-%d")(r),i=r.getHours(),a=r.getMinutes(),o=r.getSeconds(),s=r.getUTCMilliseconds()*10+t;return bie(n,i,a,o,s)};function bie(e,t,r,n,i){if((t||r||n||i)&&(e+=" "+c3(t,2)+":"+c3(r,2),(n||i)&&(e+=":"+c3(n,2),i))){for(var a=4;i%10===0;)a-=1,i/=10;e+="."+c3(i,a)}return e}bh.cleanDate=function(e,t,r){if(e===g0)return t;if(bh.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(_g(r))return $9.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 $9.error("unrecognized date",e),t;return e};var fnt=/%\d?f/g,cnt=/%h/g,hnt={1:"1",2:"1",3:"2",4:"2"};function gie(e,t,r,n){e=e.replace(fnt,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(cnt,function(){return hnt[r("%q")(i)]}),_g(n))try{e=gg.getComponentMethod("calendars","worldCalFmt")(e,t,n)}catch(a){return"Invalid"}return r(e)(i)}var dnt=[59,59.9,59.99,59.999,59.9999];function pnt(e,t){var r=X1(e+.05,Tv),n=c3(Math.floor(r/UM),2)+":"+c3(X1(Math.floor(r/j1),60),2);if(t!=="M"){xie(t)||(t=0);var i=Math.min(X1(e/h3,60),dnt[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=_g(i)&&i,!t)if(r==="y")t=a.year;else if(r==="m")t=a.month;else if(r==="d")t=a.dayMonth+` -`+a.year;else return pnt(e,r)+` -`+gie(a.dayMonthYear,e,n,i);return gie(t,e,n,i)};var _ie=3*Tv;bh.incrementMonth=function(e,t,r){r=_g(r)&&r;var n=X1(e,Tv);if(e=Math.round(e-n),r)try{var i=Math.round(e/Tv)+VM,a=gg.getComponentMethod("calendars","getCal")(r),o=a.fromJD(i);return t%12?a.add(o,t,"m"):a.add(o,t/12,"y"),(o.toJD()-VM)*Tv+n}catch(u){$9.error("invalid ms "+e+" in calendar "+r)}var s=new Date(e+_ie);return s.setUTCMonth(s.getUTCMonth()+t)+n-_ie};bh.findExactDates=function(e,t){for(var r=0,n=0,i=0,a=0,o,s,u=_g(t)&&gg.getComponentMethod("calendars","getCal")(t),l=0;l{"use strict";Tie.exports=function(t){return t}});var IL=Ae(xg=>{"use strict";var vnt=ku(),mnt=G1(),ynt=GM(),gnt=rf().BADNUM,Q9=1e-9;xg.findBin=function(e,t,r){if(vnt(t.start))return r?Math.ceil((e-t.start)/t.size-Q9)-1:Math.floor((e-t.start)/t.size+Q9);var n=0,i=t.length,a=0,o=i>1?(t[i-1]-t[0])/(i-1):1,s,u;for(o>=0?u=r?_nt:xnt:u=r?wnt:bnt,e+=o*Q9*(r?-1:1)*(o>=0?1:-1);n90&&mnt.log("Long binary search..."),n-1};function _nt(e,t){return et}function wnt(e,t){return e>=t}xg.sorterAsc=function(e,t){return e-t};xg.sorterDes=function(e,t){return t-e};xg.distinctVals=function(e){var t=e.slice();t.sort(xg.sorterAsc);var r;for(r=t.length-1;r>-1&&t[r]===gnt;r--);for(var n=t[r]-t[0]||1,i=n/(r||1)/1e4,a=[],o,s=0;s<=r;s++){var u=t[s],l=u-o;o===void 0?(a.push(u),o=u):l>i&&(n=Math.min(n,l),a.push(u),o=u)}return{vals:a,minDiff:n}};xg.roundUp=function(e,t,r){for(var n=0,i=t.length-1,a,o=0,s=r?0:1,u=r?1:0,l=r?Math.ceil:Math.floor;n0&&(n=1),r&&n)return e.sort(t)}return n?e:e.reverse()};xg.findIndexOfMin=function(e,t){t=t||ynt;for(var r=1/0,n,i=0;i{"use strict";Aie.exports=function(t){return Object.keys(t).sort()}});var Sie=Ae(wh=>{"use strict";var HM=ku(),Tnt=mp().isArrayOrTypedArray;wh.aggNums=function(e,t,r,n){var i,a;if((!n||n>r.length)&&(n=r.length),HM(t)||(t=!1),Tnt(r[0])){for(a=new Array(n),i=0;ie.length-1)return e[e.length-1];var r=t%1;return r*e[Math.ceil(t)]+(1-r)*e[Math.floor(t)]}});var Lie=Ae((iar,Cie)=>{"use strict";var Mie=i3(),eq=Mie.mod,Ant=Mie.modHalf,WM=Math.PI,Y1=2*WM;function Snt(e){return e/180*WM}function Mnt(e){return e/WM*180}function tq(e){return Math.abs(e[1]-e[0])>Y1-1e-14}function Eie(e,t){return Ant(t-e,Y1)}function Ent(e,t){return Math.abs(Eie(e,t))}function kie(e,t){if(tq(t))return!0;var r,n;t[0]n&&(n+=Y1);var i=eq(e,Y1),a=i+Y1;return i>=r&&i<=n||a>=r&&a<=n}function knt(e,t,r,n){if(!kie(t,n))return!1;var i,a;return r[0]=i&&e<=a}function rq(e,t,r,n,i,a,o){i=i||0,a=a||0;var s=tq([r,n]),u,l,f,c,h;s?(u=0,l=WM,f=Y1):r{"use strict";hb.isLeftAnchor=function(t){return t.xanchor==="left"||t.xanchor==="auto"&&t.x<=1/3};hb.isCenterAnchor=function(t){return t.xanchor==="center"||t.xanchor==="auto"&&t.x>1/3&&t.x<2/3};hb.isRightAnchor=function(t){return t.xanchor==="right"||t.xanchor==="auto"&&t.x>=2/3};hb.isTopAnchor=function(t){return t.yanchor==="top"||t.yanchor==="auto"&&t.y>=2/3};hb.isMiddleAnchor=function(t){return t.yanchor==="middle"||t.yanchor==="auto"&&t.y>1/3&&t.y<2/3};hb.isBottomAnchor=function(t){return t.yanchor==="bottom"||t.yanchor==="auto"&&t.y<=1/3}});var Rie=Ae(db=>{"use strict";var iq=i3().mod;db.segmentsIntersect=Iie;function Iie(e,t,r,n,i,a,o,s){var u=r-e,l=i-e,f=o-i,c=n-t,h=a-t,d=s-a,p=u*d-f*c;if(p===0)return null;var _=(l*d-f*h)/p,b=(l*c-u*h)/p;return b<0||b>1||_<0||_>1?null:{x:e+u*_,y:t+c*_}}db.segmentDistance=function(t,r,n,i,a,o,s,u){if(Iie(t,r,n,i,a,o,s,u))return 0;var l=n-t,f=i-r,c=s-a,h=u-o,d=l*l+f*f,p=c*c+h*h,_=Math.min(RL(l,f,d,a-t,o-r),RL(l,f,d,s-t,u-r),RL(c,h,p,t-a,r-o),RL(c,h,p,n-a,i-o));return Math.sqrt(_)};function RL(e,t,r,n,i){var a=n*e+i*t;if(a<0)return n*n+i*i;if(a>r){var o=n-e,s=i-t;return o*o+s*s}else{var u=n*t-i*e;return u*u/r}}var DL,nq,zie;db.getTextLocation=function(t,r,n,i){if((t!==nq||i!==zie)&&(DL={},nq=t,zie=i),DL[n])return DL[n];var a=t.getPointAtLength(iq(n-i/2,r)),o=t.getPointAtLength(iq(n+i/2,r)),s=Math.atan((o.y-a.y)/(o.x-a.x)),u=t.getPointAtLength(iq(n,r)),l=(u.x*4+a.x+o.x)/6,f=(u.y*4+a.y+o.y)/6,c={x:l,y:f,theta:s};return DL[n]=c,c};db.clearLocationCache=function(){nq=null};db.getVisibleSegment=function(t,r,n){var i=r.left,a=r.right,o=r.top,s=r.bottom,u=0,l=t.getTotalLength(),f=l,c,h;function d(_){var b=t.getPointAtLength(_);_===0?c=b:_===l&&(h=b);var v=b.xa?b.x-a:0,k=b.ys?b.y-s:0;return Math.sqrt(v*v+k*k)}for(var p=d(u);p;){if(u+=p+n,u>f)return;p=d(u)}for(p=d(f);p;){if(f-=p+n,u>f)return;p=d(f)}return{min:u,max:f,len:f-u,total:l,isClosed:u===0&&f===l&&Math.abs(c.x-h.x)<.1&&Math.abs(c.y-h.y)<.1}};db.findPointOnPath=function(t,r,n,i){i=i||{};for(var a=i.pathLength||t.getTotalLength(),o=i.tolerance||.001,s=i.iterationLimit||30,u=t.getPointAtLength(0)[n]>t.getPointAtLength(a)[n]?-1:1,l=0,f=0,c=a,h,d,p;l0?c=h:f=h,l++}return d}});var FL=Ae(jM=>{"use strict";var bg={};jM.throttle=function(t,r,n){var i=bg[t],a=Date.now();if(!i){for(var o in bg)bg[o].tsi.ts+r){s();return}i.timer=setTimeout(function(){s(),i.timer=null},r)};jM.done=function(e){var t=bg[e];return!t||!t.timer?Promise.resolve():new Promise(function(r){var n=t.onDone;t.onDone=function(){n&&n(),r(),t.onDone=null}})};jM.clear=function(e){if(e)Die(bg[e]),delete bg[e];else for(var t in bg)jM.clear(t)};function Die(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var Bie=Ae((sar,Fie)=>{"use strict";Fie.exports=function(t){t._responsiveChartHandler&&(window.removeEventListener("resize",t._responsiveChartHandler),delete t._responsiveChartHandler)}});var Oie=Ae((lar,BL)=>{"use strict";BL.exports=aq;BL.exports.isMobile=aq;BL.exports.default=aq;var znt=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,Int=/CrOS/,Rnt=/android|ipad|playbook|silk/i;function aq(e){e||(e={});let t=e.ua;if(!t&&typeof navigator!="undefined"&&(t=navigator.userAgent),t&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string")return!1;let r=znt.test(t)&&!Int.test(t)||!!e.tablet&&Rnt.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}});var Nie=Ae((uar,qie)=>{"use strict";var Dnt=ku(),Fnt=Oie();qie.exports=function(t){var r;if(t&&t.hasOwnProperty("userAgent")?r=t.userAgent:r=Bnt(),typeof r!="string")return!0;var n=Fnt({ua:{headers:{"user-agent":r}},tablet:!0,featureDetect:!1});if(!n)for(var i=r.split(" "),a=1;a-1;s--){var u=i[s];if(u.substr(0,8)==="Version/"){var l=u.substr(8).split(".")[0];if(Dnt(l)&&(l=+l),l>=13)return!0}}}return n};function Bnt(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var Vie=Ae((far,Uie)=>{"use strict";var Ont=Jl();Uie.exports=function(t,r,n){var i=t.selectAll("g."+n.replace(/\s/g,".")).data(r,function(o){return o[0].trace.uid});i.exit().remove(),i.enter().append("g").attr("class",n),i.order();var a=t.classed("rangeplot")?"nodeRangePlot3":"node3";return i.each(function(o){o[0][a]=Ont.select(this)}),i}});var Hie=Ae((car,Gie)=>{"use strict";var qnt=$l();Gie.exports=function(t,r){for(var n=t._context.locale,i=0;i<2;i++){for(var a=t._context.locales,o=0;o<2;o++){var s=(a[n]||{}).dictionary;if(s){var u=s[r];if(u)return u}a=qnt.localeRegistry}var l=n.split("-")[0];if(l===n)break;n=l}return r}});var oq=Ae((har,Wie)=>{"use strict";Wie.exports=function(t){for(var r={},n=[],i=0,a=0;a{"use strict";jie.exports=function(t){for(var r=Vnt(t)?Unt:Nnt,n=[],i=0;i{"use strict";Zie.exports=function(t,r){if(!r)return t;var n=1/Math.abs(r),i=n>1?(n*t+n*r)/n:t+r,a=String(i).length;if(a>16){var o=String(r).length,s=String(t).length;if(a>=s+o){var u=parseFloat(i).toPrecision(12);u.indexOf("e+")===-1&&(i=+u)}}return i}});var Jie=Ae((mar,Kie)=>{"use strict";var Gnt=ku(),Hnt=rf().BADNUM,Wnt=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;Kie.exports=function(t){return typeof t=="string"&&(t=t.replace(Wnt,"")),Gnt(t)?Number(t):Hnt}});var ei=Ae((yar,fne)=>{"use strict";var XM=Jl(),jnt=t3().utcFormat,Xnt=P9().format,ine=ku(),nne=rf(),ane=nne.FP_SAFE,Znt=-ane,$ie=nne.BADNUM,Tn=fne.exports={};Tn.adjustFormat=function(t){return!t||/^\d[.]\df/.test(t)||/[.]\d%/.test(t)?t:t==="0.f"?"~f":/^\d%/.test(t)?"~%":/^\ds/.test(t)?"~s":!/^[~,.0$]/.test(t)&&/[&fps]/.test(t)?"~"+t:t};var Qie={};Tn.warnBadFormat=function(e){var t=String(e);Qie[t]||(Qie[t]=1,Tn.warn('encountered bad format: "'+t+'"'))};Tn.noFormat=function(e){return String(e)};Tn.numberFormat=function(e){var t;try{t=Xnt(Tn.adjustFormat(e))}catch(r){return Tn.warnBadFormat(e),Tn.noFormat}return t};Tn.nestedProperty=LM();Tn.keyedContainer=Wee();Tn.relativeAttr=Xee();Tn.isPlainObject=yg();Tn.toLogRange=yL();Tn.relinkPrivateKeys=Jee();var K1=mp();Tn.isArrayBuffer=K1.isArrayBuffer;Tn.isTypedArray=K1.isTypedArray;Tn.isArrayOrTypedArray=K1.isArrayOrTypedArray;Tn.isArray1D=K1.isArray1D;Tn.ensureArray=K1.ensureArray;Tn.concat=K1.concat;Tn.maxRowLength=K1.maxRowLength;Tn.minRowLength=K1.minRowLength;var one=i3();Tn.mod=one.mod;Tn.modHalf=one.modHalf;var J1=mte();Tn.valObjectMeta=J1.valObjectMeta;Tn.coerce=J1.coerce;Tn.coerce2=J1.coerce2;Tn.coerceFont=J1.coerceFont;Tn.coercePattern=J1.coercePattern;Tn.coerceHoverinfo=J1.coerceHoverinfo;Tn.coerceSelectionMarkerOpacity=J1.coerceSelectionMarkerOpacity;Tn.validate=J1.validate;var Wv=wie();Tn.dateTime2ms=Wv.dateTime2ms;Tn.isDateTime=Wv.isDateTime;Tn.ms2DateTime=Wv.ms2DateTime;Tn.ms2DateTimeLocal=Wv.ms2DateTimeLocal;Tn.cleanDate=Wv.cleanDate;Tn.isJSDate=Wv.isJSDate;Tn.formatDate=Wv.formatDate;Tn.incrementMonth=Wv.incrementMonth;Tn.dateTick0=Wv.dateTick0;Tn.dfltRange=Wv.dfltRange;Tn.findExactDates=Wv.findExactDates;Tn.MIN_MS=Wv.MIN_MS;Tn.MAX_MS=Wv.MAX_MS;var pb=IL();Tn.findBin=pb.findBin;Tn.sorterAsc=pb.sorterAsc;Tn.sorterDes=pb.sorterDes;Tn.distinctVals=pb.distinctVals;Tn.roundUp=pb.roundUp;Tn.sort=pb.sort;Tn.findIndexOfMin=pb.findIndexOfMin;Tn.sortObjectKeys=Z1();var wg=Sie();Tn.aggNums=wg.aggNums;Tn.len=wg.len;Tn.mean=wg.mean;Tn.geometricMean=wg.geometricMean;Tn.median=wg.median;Tn.midRange=wg.midRange;Tn.variance=wg.variance;Tn.stdev=wg.stdev;Tn.interp=wg.interp;var _m=TL();Tn.init2dArray=_m.init2dArray;Tn.transposeRagged=_m.transposeRagged;Tn.dot=_m.dot;Tn.translationMatrix=_m.translationMatrix;Tn.rotationMatrix=_m.rotationMatrix;Tn.rotationXYMatrix=_m.rotationXYMatrix;Tn.apply3DTransform=_m.apply3DTransform;Tn.apply2DTransform=_m.apply2DTransform;Tn.apply2DTransform2=_m.apply2DTransform2;Tn.convertCssMatrix=_m.convertCssMatrix;Tn.inverseTransformMatrix=_m.inverseTransformMatrix;var py=Lie();Tn.deg2rad=py.deg2rad;Tn.rad2deg=py.rad2deg;Tn.angleDelta=py.angleDelta;Tn.angleDist=py.angleDist;Tn.isFullCircle=py.isFullCircle;Tn.isAngleInsideSector=py.isAngleInsideSector;Tn.isPtInsideSector=py.isPtInsideSector;Tn.pathArc=py.pathArc;Tn.pathSector=py.pathSector;Tn.pathAnnulus=py.pathAnnulus;var v3=Pie();Tn.isLeftAnchor=v3.isLeftAnchor;Tn.isCenterAnchor=v3.isCenterAnchor;Tn.isRightAnchor=v3.isRightAnchor;Tn.isTopAnchor=v3.isTopAnchor;Tn.isMiddleAnchor=v3.isMiddleAnchor;Tn.isBottomAnchor=v3.isBottomAnchor;var m3=Rie();Tn.segmentsIntersect=m3.segmentsIntersect;Tn.segmentDistance=m3.segmentDistance;Tn.getTextLocation=m3.getTextLocation;Tn.clearLocationCache=m3.clearLocationCache;Tn.getVisibleSegment=m3.getVisibleSegment;Tn.findPointOnPath=m3.findPointOnPath;var NL=Su();Tn.extendFlat=NL.extendFlat;Tn.extendDeep=NL.extendDeep;Tn.extendDeepAll=NL.extendDeepAll;Tn.extendDeepNoArrays=NL.extendDeepNoArrays;var sq=G1();Tn.log=sq.log;Tn.warn=sq.warn;Tn.error=sq.error;var Ynt=a3();Tn.counterRegex=Ynt.counter;var lq=FL();Tn.throttle=lq.throttle;Tn.throttleDone=lq.done;Tn.clearThrottle=lq.clear;var xm=qM();Tn.getGraphDiv=xm.getGraphDiv;Tn.isPlotDiv=xm.isPlotDiv;Tn.removeElement=xm.removeElement;Tn.addStyleRule=xm.addStyleRule;Tn.addRelatedStyleRule=xm.addRelatedStyleRule;Tn.deleteRelatedStyleRule=xm.deleteRelatedStyleRule;Tn.setStyleOnHover=xm.setStyleOnHover;Tn.getFullTransformMatrix=xm.getFullTransformMatrix;Tn.getElementTransformMatrix=xm.getElementTransformMatrix;Tn.getElementAndAncestors=xm.getElementAndAncestors;Tn.equalDomRects=xm.equalDomRects;Tn.clearResponsive=Bie();Tn.preserveDrawingBuffer=Nie();Tn.makeTraceGroups=Vie();Tn._=Hie();Tn.notifier=V9();Tn.filterUnique=oq();Tn.filterVisible=Xie();Tn.pushUnique=W9();Tn.increment=Yie();Tn.cleanNumber=Jie();Tn.ensureNumber=function(t){return ine(t)?(t=Number(t),t>ane||t=t?!1:ine(e)&&e>=0&&e%1===0};Tn.noop=wL();Tn.identity=GM();Tn.repeat=function(e,t){for(var r=new Array(t),n=0;nr?Math.max(r,Math.min(t,e)):Math.max(t,Math.min(r,e))};Tn.bBoxIntersect=function(e,t,r){return r=r||0,e.left<=t.right+r&&t.left<=e.right+r&&e.top<=t.bottom+r&&t.top<=e.bottom+r};Tn.simpleMap=function(e,t,r,n,i){for(var a=e.length,o=new Array(a),s=0;s=Math.pow(2,r)?i>10?(Tn.warn("randstr failed uniqueness"),o):e(t,r,n,(i||0)+1):o};Tn.OptionControl=function(e,t){e||(e={}),t||(t="opt");var r={};return r.optionList=[],r._newoption=function(n){n[t]=e,r[n.name]=n,r.optionList.push(n)},r["_"+t]=e,r};Tn.smooth=function(e,t){if(t=Math.round(t)||0,t<2)return e;var r=e.length,n=2*r,i=2*t-1,a=new Array(i),o=new Array(r),s,u,l,f;for(s=0;s=n&&(l-=n*Math.floor(l/n)),l<0?l=-1-l:l>=r&&(l=n-1-l),f+=e[l]*a[u];o[s]=f}return o};Tn.syncOrAsync=function(e,t,r){var n,i;function a(){return Tn.syncOrAsync(e,t,r)}for(;e.length;)if(i=e.splice(0,1)[0],n=i(t),n&&n.then)return n.then(a);return r&&r(t)};Tn.stripTrailingSlash=function(e){return e.substr(-1)==="/"?e.substr(0,e.length-1):e};Tn.noneOrAll=function(e,t,r){if(e){var n=!1,i=!0,a,o;for(a=0;a0?i:0})};Tn.fillArray=function(e,t,r,n){if(n=n||Tn.identity,Tn.isArrayOrTypedArray(e))for(var i=0;i$nt.test(window.navigator.userAgent);var Qnt=/Firefox\/(\d+)\.\d+/;Tn.getFirefoxVersion=function(){var e=Qnt.exec(window.navigator.userAgent);if(e&&e.length===2){var t=parseInt(e[1]);if(!isNaN(t))return t}return null};Tn.isD3Selection=function(e){return e instanceof XM.selection};Tn.ensureSingle=function(e,t,r,n){var i=e.select(t+(r?"."+r:""));if(i.size())return i;var a=e.append(t);return r&&a.classed(r,!0),n&&a.call(n),a};Tn.ensureSingleById=function(e,t,r,n){var i=e.select(t+"#"+r);if(i.size())return i;var a=e.append(t).attr("id",r);return n&&a.call(n),a};Tn.objectFromPath=function(e,t){for(var r=e.split("."),n,i=n={},a=0;a1?i+o[1]:"";if(a&&(o.length>1||s.length>4||r))for(;n.test(s);)s=s.replace(n,"$1"+a+"$2");return s+u};Tn.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var une=/^\w*$/;Tn.templateString=function(e,t){var r={};return e.replace(Tn.TEMPLATE_STRING_REGEX,function(n,i){var a;return une.test(i)?a=t[i]:(r[i]=r[i]||Tn.nestedProperty(t,i).get,a=r[i](!0)),a!==void 0?a:""})};var rat={max:10,count:0,name:"hovertemplate"};Tn.hovertemplateString=e=>uq(O1(ym({},e),{opts:rat}));var iat={max:10,count:0,name:"texttemplate"};Tn.texttemplateString=e=>uq(O1(ym({},e),{opts:iat}));var nat=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function aat(e){var t=e.match(nat);return t?{key:t[1],op:t[2],number:Number(t[3])}:{key:e,op:null,number:null}}var oat={max:10,count:0,name:"texttemplate",parseMultDiv:!0};Tn.texttemplateStringForShapes=e=>uq(O1(ym({},e),{opts:oat}));var ene=/^[:|\|]/;function uq({data:e=[],locale:t,fallback:r,labels:n={},opts:i,template:a}){return a.replace(Tn.TEMPLATE_STRING_REGEX,(o,s,u)=>{let l=["xother","yother"].includes(s),f=["_xother","_yother"].includes(s),c=["_xother_","_yother_"].includes(s),h=["xother_","yother_"].includes(s),d=l||f||h||c;(f||c)&&(s=s.substring(1)),(h||c)&&(s=s.substring(0,s.length-1));let p=null,_=null;if(i.parseMultDiv){var b=aat(s);s=b.key,p=b.op,_=b.number}let v;if(d){if(n[s]===void 0)return"";v=n[s]}else for(let L of e)if(L){if(L.hasOwnProperty(s)){v=L[s];break}if(une.test(s)||(v=Tn.nestedProperty(L,s).get(!0)),v!==void 0)break}if(v===void 0){let{count:L,max:x,name:C}=i,M=r===!1?o:r;return L=qL&&o<=tne,l=s>=qL&&s<=tne;if(u&&(n=10*n+o-qL),l&&(i=10*i+s-qL),!u||!l){if(n!==i)return n-i;if(o!==s)return o-s}}return i-n};var p3=2e9;Tn.seedPseudoRandom=function(){p3=2e9};Tn.pseudoRandom=function(){var e=p3;return p3=(69069*p3+1)%4294967296,Math.abs(p3-e)<429496729?Tn.pseudoRandom():p3/4294967296};Tn.fillText=function(e,t,r){var n=Array.isArray(r)?function(o){r.push(o)}:function(o){r.text=o},i=Tn.extractOption(e,t,"htx","hovertext");if(Tn.isValidTextValue(i))return n(i);var a=Tn.extractOption(e,t,"tx","text");if(Tn.isValidTextValue(a))return n(a)};Tn.isValidTextValue=function(e){return e||e===0};Tn.formatPercent=function(e,t){t=t||0;for(var r=(Math.round(100*e*Math.pow(10,t))*Math.pow(.1,t)).toFixed(t)+"%",n=0;n1&&(l=1):l=0,Tn.strTranslate(i-l*(r+o),a-l*(n+s))+Tn.strScale(l)+(u?"rotate("+u+(t?"":" "+r+" "+n)+")":"")};Tn.setTransormAndDisplay=function(e,t){e.attr("transform",Tn.getTextTransform(t)),e.style("display",t.scale?null:"none")};Tn.ensureUniformFontSize=function(e,t){var r=Tn.extendFlat({},t);return r.size=Math.max(t.size,e._fullLayout.uniformtext.minsize||0),r};Tn.join2=function(e,t,r){var n=e.length;return n>1?e.slice(0,-1).join(t)+r+e[n-1]:e.join(t)};Tn.bigFont=function(e){return Math.round(1.2*e)};var rne=Tn.getFirefoxVersion(),sat=rne!==null&&rne<86;Tn.getPositionFromD3Event=function(){return sat?[XM.event.layerX,XM.event.layerY]:[XM.event.offsetX,XM.event.offsetY]}});var dne=Ae(()=>{"use strict";var lat=ei(),cne={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(fq in cne)hne=fq.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),lat.addStyleRule(hne,cne[fq]);var hne,fq});var cq=Ae((bar,pne)=>{pne.exports=!0});var dq=Ae((war,vne)=>{"use strict";var uat=cq(),hq;typeof window.matchMedia=="function"?hq=!window.matchMedia("(hover: none)").matches:hq=uat;vne.exports=hq});var vb=Ae((Tar,pq)=>{"use strict";var y3=typeof Reflect=="object"?Reflect:null,mne=y3&&typeof y3.apply=="function"?y3.apply:function(t,r,n){return Function.prototype.apply.call(t,r,n)},UL;y3&&typeof y3.ownKeys=="function"?UL=y3.ownKeys:Object.getOwnPropertySymbols?UL=function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:UL=function(t){return Object.getOwnPropertyNames(t)};function fat(e){console&&console.warn&&console.warn(e)}var gne=Number.isNaN||function(t){return t!==t};function qc(){qc.init.call(this)}pq.exports=qc;pq.exports.once=pat;qc.EventEmitter=qc;qc.prototype._events=void 0;qc.prototype._eventsCount=0;qc.prototype._maxListeners=void 0;var yne=10;function VL(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(qc,"defaultMaxListeners",{enumerable:!0,get:function(){return yne},set:function(e){if(typeof e!="number"||e<0||gne(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");yne=e}});qc.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};qc.prototype.setMaxListeners=function(t){if(typeof t!="number"||t<0||gne(t))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+t+".");return this._maxListeners=t,this};function _ne(e){return e._maxListeners===void 0?qc.defaultMaxListeners:e._maxListeners}qc.prototype.getMaxListeners=function(){return _ne(this)};qc.prototype.emit=function(t){for(var r=[],n=1;n0&&(o=r[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var u=a[t];if(u===void 0)return!1;if(typeof u=="function")mne(u,this,r);else for(var l=u.length,f=Ane(u,l),n=0;n0&&o.length>i&&!o.warned){o.warned=!0;var s=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");s.name="MaxListenersExceededWarning",s.emitter=e,s.type=t,s.count=o.length,fat(s)}return e}qc.prototype.addListener=function(t,r){return xne(this,t,r,!1)};qc.prototype.on=qc.prototype.addListener;qc.prototype.prependListener=function(t,r){return xne(this,t,r,!0)};function cat(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function bne(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=cat.bind(n);return i.listener=r,n.wrapFn=i,i}qc.prototype.once=function(t,r){return VL(r),this.on(t,bne(this,t,r)),this};qc.prototype.prependOnceListener=function(t,r){return VL(r),this.prependListener(t,bne(this,t,r)),this};qc.prototype.removeListener=function(t,r){var n,i,a,o,s;if(VL(r),i=this._events,i===void 0)return this;if(n=i[t],n===void 0)return this;if(n===r||n.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete i[t],i.removeListener&&this.emit("removeListener",t,n.listener||r));else if(typeof n!="function"){for(a=-1,o=n.length-1;o>=0;o--)if(n[o]===r||n[o].listener===r){s=n[o].listener,a=o;break}if(a<0)return this;a===0?n.shift():hat(n,a),n.length===1&&(i[t]=n[0]),i.removeListener!==void 0&&this.emit("removeListener",t,s||r)}return this};qc.prototype.off=qc.prototype.removeListener;qc.prototype.removeAllListeners=function(t){var r,n,i;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[t]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[t]),this;if(arguments.length===0){var a=Object.keys(n),o;for(i=0;i=0;i--)this.removeListener(t,r[i]);return this};function wne(e,t,r){var n=e._events;if(n===void 0)return[];var i=n[t];return i===void 0?[]:typeof i=="function"?r?[i.listener||i]:[i]:r?dat(i):Ane(i,i.length)}qc.prototype.listeners=function(t){return wne(this,t,!0)};qc.prototype.rawListeners=function(t){return wne(this,t,!1)};qc.listenerCount=function(e,t){return typeof e.listenerCount=="function"?e.listenerCount(t):Tne.call(e,t)};qc.prototype.listenerCount=Tne;function Tne(e){var t=this._events;if(t!==void 0){var r=t[e];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}qc.prototype.eventNames=function(){return this._eventsCount>0?UL(this._events):[]};function Ane(e,t){for(var r=new Array(t),n=0;n{"use strict";var vq=vb().EventEmitter,mat={init:function(e){if(e._ev instanceof vq)return e;var t=new vq,r=new vq;return e._ev=t,e._internalEv=r,e.on=t.on.bind(t),e.once=t.once.bind(t),e.removeListener=t.removeListener.bind(t),e.removeAllListeners=t.removeAllListeners.bind(t),e._internalOn=r.on.bind(r),e._internalOnce=r.once.bind(r),e._removeInternalListener=r.removeListener.bind(r),e._removeAllInternalListeners=r.removeAllListeners.bind(r),e.emit=function(n,i){t.emit(n,i),r.emit(n,i)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,t,r){var n,i=e._ev;if(!i)return;var a=i._events[t];if(!a)return;function o(u){if(u.listener){if(i.removeListener(t,u.listener),!u.fired)return u.fired=!0,u.listener.apply(i,[r])}else return u.apply(i,[r])}a=Array.isArray(a)?a:[a];var s;for(s=0;s{"use strict";var Ene=ei(),yat=fb().dfltConfig;function gat(e,t){for(var r=[],n,i=0;iyat.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};Tg.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};Tg.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};Tg.undo=function(t){var r,n;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;n=t.undoQueue.queue.length)){for(r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;n{"use strict";Lne.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var b3=Ae(ed=>{"use strict";var _0=$l(),ZM=ei(),HL=Gf(),yq=u3(),_at=mq(),xat=NM(),bat=fb().configAttributes,Pne=Sc(),bm=ZM.extendDeepAll,_3=ZM.isPlainObject,wat=ZM.isArrayOrTypedArray,WL=ZM.nestedProperty,Tat=ZM.valObjectMeta,gq="_isSubplotObj",jL="_isLinkedToArray",Aat="_arrayAttrRegexps",Ine="_deprecated",_q=[gq,jL,Aat,Ine];ed.IS_SUBPLOT_OBJ=gq;ed.IS_LINKED_TO_ARRAY=jL;ed.DEPRECATED=Ine;ed.UNDERSCORE_ATTRS=_q;ed.get=function(){var e={};return _0.allTypes.forEach(function(t){e[t]=Mat(t)}),{defs:{valObjects:Tat,metaKeys:_q.concat(["description","role","editType","impliedEdits"]),editType:{traces:Pne.traces,layout:Pne.layout},impliedEdits:{}},traces:e,layout:Eat(),frames:kat(),animation:x3(xat),config:x3(bat)}};ed.crawl=function(e,t,r,n){var i=r||0;n=n||"",Object.keys(e).forEach(function(a){var o=e[a];if(_q.indexOf(a)===-1){var s=(n?n+".":"")+a;t(o,a,e,i,s),!ed.isValObject(o)&&_3(o)&&a!=="impliedEdits"&&ed.crawl(o,t,i+1,s)}})};ed.isValObject=function(e){return e&&e.valType!==void 0};ed.findArrayAttributes=function(e){var t=[],r=[],n=[],i,a;function o(u,l,f,c){r=r.slice(0,c).concat([l]),n=n.slice(0,c).concat([u&&u._isLinkedToArray]);var h=u&&(u.valType==="data_array"||u.arrayOk===!0)&&!(r[c-1]==="colorbar"&&(l==="ticktext"||l==="tickvals"));h&&s(i,0,"")}function s(u,l,f){var c=u[r[l]],h=f+r[l];if(l===r.length-1)wat(c)&&t.push(a+h);else if(n[l]){if(Array.isArray(c))for(var d=0;d=a.length)return!1;if(e.dimensions===2){if(r++,t.length===r)return e;var o=t[r];if(!GL(o))return!1;e=a[i][o]}else e=a[i]}else e=a}}return e}function GL(e){return e===Math.round(e)&&e>=0}function Mat(e){var t,r;t=_0.modules[e]._module,r=t.basePlotModule;var n={};n.type=null;var i=bm({},HL),a=bm({},t.attributes);ed.crawl(a,function(u,l,f,c,h){WL(i,h).set(void 0),u===void 0&&WL(a,h).set(void 0)}),bm(n,i),_0.traceIs(e,"noOpacity")&&delete n.opacity,_0.traceIs(e,"showLegend")||(delete n.showlegend,delete n.legendgroup),_0.traceIs(e,"noHover")&&(delete n.hoverinfo,delete n.hoverlabel),t.selectPoints||delete n.selectedpoints,bm(n,a),r.attributes&&bm(n,r.attributes),n.type=e;var o={meta:t.meta||{},categories:t.categories||{},animatable:!!t.animatable,type:e,attributes:x3(n)};if(t.layoutAttributes){var s={};bm(s,t.layoutAttributes),o.layoutAttributes=x3(s)}return t.animatable||ed.crawl(o,function(u){ed.isValObject(u)&&"anim"in u&&delete u.anim}),o}function Eat(){var e={},t,r;bm(e,yq);for(t in _0.subplotsRegistry)if(r=_0.subplotsRegistry[t],!!r.layoutAttributes)if(Array.isArray(r.attr))for(var n=0;n{"use strict";var w3=ei(),Iat=Gf(),$1="templateitemname",xq={name:{valType:"string",editType:"none"}};xq[$1]={valType:"string",editType:"calc"};mb.templatedArray=function(e,t){return t._isLinkedToArray=e,t.name=xq.name,t[$1]=xq[$1],t};mb.traceTemplater=function(e){var t={},r,n;for(r in e)n=e[r],Array.isArray(n)&&n.length&&(t[r]=0);function i(a){r=w3.coerce(a,{},Iat,"type");var o={type:r,_template:null};if(r in t){n=e[r];var s=t[r]%n.length;t[r]++,o._template=n[s]}return o}return{newTrace:i}};mb.newContainer=function(e,t,r){var n=e._template,i=n&&(n[t]||r&&n[r]);w3.isPlainObject(i)||(i=null);var a=e[t]={_template:i};return a};mb.arrayTemplater=function(e,t,r){var n=e._template,i=n&&n[Fne(t)],a=n&&n[t];(!Array.isArray(a)||!a.length)&&(a=[]);var o={};function s(l){var f={name:l.name,_input:l},c=f[$1]=l[$1];if(!Dne(c))return f._template=i,f;for(var h=0;h=n&&(r._input||{})._templateitemname;a&&(i=n);var o=t+"["+i+"]",s;function u(){s={},a&&(s[o]={},s[o][$1]=a)}u();function l(d,p){s[d]=p}function f(d,p){a?w3.nestedProperty(s[o],d).set(p):s[o+"."+d]=p}function c(){var d=s;return u(),d}function h(d,p){d&&f(d,p);var _=c();for(var b in _)w3.nestedProperty(e,b).set(_[b])}return{modifyBase:l,modifyItem:f,getUpdateObj:c,applyUpdate:h}}});var dd=Ae((Car,Bne)=>{"use strict";var YM=a3().counter;Bne.exports={idRegex:{x:YM("x","( domain)?"),y:YM("y","( domain)?")},attrRegex:YM("[xy]axis"),xAxisMatch:YM("xaxis"),yAxisMatch:YM("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var Wc=Ae(Av=>{"use strict";var Rat=$l(),bq=dd();Av.id2name=function(t){if(!(typeof t!="string"||!t.match(bq.AX_ID_PATTERN))){var r=t.split(" ")[0].substr(1);return r==="1"&&(r=""),t.charAt(0)+"axis"+r}};Av.name2id=function(t){if(t.match(bq.AX_NAME_PATTERN)){var r=t.substr(5);return r==="1"&&(r=""),t.charAt(0)+r}};Av.cleanId=function(t,r,n){var i=/( domain)$/.test(t);if(!(typeof t!="string"||!t.match(bq.AX_ID_PATTERN))&&!(r&&t.charAt(0)!==r)&&!(i&&!n)){var a=t.split(" ")[0].substr(1).replace(/^0+/,"");return a==="1"&&(a=""),t.charAt(0)+a+(i&&n?" domain":"")}};Av.list=function(e,t,r){var n=e._fullLayout;if(!n)return[];var i=Av.listIds(e,t),a=new Array(i.length),o;for(o=0;on?1:-1:+(e.substr(1)||1)-+(t.substr(1)||1)};Av.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function One(e,t){if(t&&t.length){for(var r=0;r{"use strict";function Dat(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".outline-controllers").remove()}function Fat(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}qne.exports={clearOutlineControllers:Dat,clearOutline:Fat}});var XL=Ae((zar,Nne)=>{"use strict";Nne.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var Rd=Ae(YL=>{"use strict";var ZL=$l(),Iar=dd().SUBPLOT_PATTERN;YL.getSubplotCalcData=function(e,t,r){var n=ZL.subplotsRegistry[t];if(!n)return[];for(var i=n.attr,a=[],o=0;o{"use strict";var Bat=$l(),T3=ei();yb.manageCommandObserver=function(e,t,r,n){var i={},a=!0;t&&t._commandObserver&&(i=t._commandObserver),i.cache||(i.cache={}),i.lookupTable={};var o=yb.hasSimpleAPICommandBindings(e,r,i.lookupTable);if(t&&t._commandObserver){if(o)return i;if(t._commandObserver.remove)return t._commandObserver.remove(),t._commandObserver=null,i}if(o){Une(e,o,i.cache),i.check=function(){if(a){var f=Une(e,o,i.cache);return f.changed&&n&&i.lookupTable[f.value]!==void 0&&(i.disable(),Promise.resolve(n({value:f.value,type:o.type,prop:o.prop,traces:o.traces,index:i.lookupTable[f.value]})).then(i.enable,i.enable)),f.changed}};for(var s=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],u=0;u0?".":"")+i;T3.isPlainObject(a)?wq(a,t,o,n+1):t(o,i,a)}})}});var Cc=Ae((Far,nae)=>{"use strict";var Jne=Jl(),qat=t3().timeFormatLocale,Nat=P9().formatLocale,KM=ku(),Uat=z9(),Hf=$l(),$ne=b3(),Vat=Lf(),nu=ei(),Qne=jl(),Wne=rf().BADNUM,Sv=Wc(),Gat=Q1().clearOutline,Hat=XL(),Tq=NM(),Wat=mq(),jat=Rd().getModuleCalcData,jne=nu.relinkPrivateKeys,gb=nu._,ql=nae.exports={};nu.extendFlat(ql,Hf);ql.attributes=Gf();ql.attributes.type.values=ql.allTypes;ql.fontAttrs=gc();ql.layoutAttributes=u3();var JL=Hne();ql.executeAPICommand=JL.executeAPICommand;ql.computeAPICommandBindings=JL.computeAPICommandBindings;ql.manageCommandObserver=JL.manageCommandObserver;ql.hasSimpleAPICommandBindings=JL.hasSimpleAPICommandBindings;ql.redrawText=function(e){return e=nu.getGraphDiv(e),new Promise(function(t){setTimeout(function(){e._fullLayout&&(Hf.getComponentMethod("annotations","draw")(e),Hf.getComponentMethod("legend","draw")(e),Hf.getComponentMethod("colorbar","draw")(e),t(ql.previousPromises(e)))},300)})};ql.resize=function(e){e=nu.getGraphDiv(e);var t,r=new Promise(function(n,i){(!e||nu.isHidden(e))&&i(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(t=e._resolveResize),e._resolveResize=n,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||nu.isHidden(e)){n(e);return}delete e.layout.width,delete e.layout.height;var a=e.changed;e.autoplay=!0,Hf.call("relayout",e,{autosize:!0}).then(function(){e.changed=a,e._resolveResize===n&&(delete e._resolveResize,n(e))})},100)});return t&&t(r),r};ql.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};ql.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var t=e._fullLayout,r=nu.ensureSingle(t._paper,"text","js-plot-link-container",function(u){u.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:Qne.defaultLine,"pointer-events":"all"}).each(function(){var l=Jne.select(this);l.append("tspan").classed("js-link-to-tool",!0),l.append("tspan").classed("js-link-spacer",!0),l.append("tspan").classed("js-sourcelinks",!0)})}),n=r.node(),i={y:t._paper.attr("height")-9};document.body.contains(n)&&n.getComputedTextLength()>=t.width-20?(i["text-anchor"]="start",i.x=5):(i["text-anchor"]="end",i.x=t._paper.attr("width")-7),r.attr(i);var a=r.select(".js-link-to-tool"),o=r.select(".js-link-spacer"),s=r.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&Xat(e,a),o.text(a.text()&&s.text()?" - ":"")}};function Xat(e,t){t.text("");var r=t.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)r.on("click",function(){ql.sendDataToCloud(e)});else{var n=window.location.pathname.split("/"),i=window.location.search;r.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+i})}}ql.sendDataToCloud=function(e){var t=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(t){e.emit("plotly_beforeexport");var r=Jne.select(e).append("div").attr("id","hiddenform").style("display","none"),n=r.append("form").attr({action:t+"/external",method:"post",target:"_blank"}),i=n.append("input").attr({type:"text",name:"data"});return i.node().value=ql.graphJson(e,!1,"keepdata"),n.node().submit(),r.remove(),e.emit("plotly_afterexport"),!1}};var Zat=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],Yat=["year","month","dayMonth","dayMonthYear"];ql.supplyDefaults=function(e,t){var r=t&&t.skipUpdateCalc,n=e._fullLayout||{};if(n._skipDefaults){delete n._skipDefaults;return}var i=e._fullLayout={},a=e.layout||{},o=e._fullData||[],s=e._fullData=[],u=e.data||[],l=e.calcdata||[],f=e._context||{},c;e._transitionData||ql.createTransitionData(e),i._dfltTitle={plot:gb(e,"Click to enter Plot title"),subtitle:gb(e,"Click to enter Plot subtitle"),x:gb(e,"Click to enter X axis title"),y:gb(e,"Click to enter Y axis title"),colorbar:gb(e,"Click to enter Colorscale title"),annotation:gb(e,"new text")},i._traceWord=gb(e,"trace");var h=Xne(e,Zat);if(i._mapboxAccessToken=f.mapboxAccessToken,n._initialAutoSizeIsDone){var d=n.width,p=n.height;ql.supplyLayoutGlobalDefaults(a,i,h),a.width||(i.width=d),a.height||(i.height=p),ql.sanitizeMargins(i)}else{ql.supplyLayoutGlobalDefaults(a,i,h);var _=!a.width||!a.height,b=i.autosize,v=f.autosizable,k=_&&(b||v);k?ql.plotAutoSize(e,a,i):_&&ql.sanitizeMargins(i),!b&&_&&(a.width=i.width,a.height=i.height)}i._d3locale=$at(h,i.separators),i._extraFormat=Xne(e,Yat),i._initialAutoSizeIsDone=!0,i._dataLength=u.length,i._modules=[],i._visibleModules=[],i._basePlotModules=[];var E=i._subplots=Jat(),A=i._splomAxes={x:{},y:{}},L=i._splomSubplots={};i._splomGridDflt={},i._scatterStackOpts={},i._firstScatter={},i._alignmentOpts={},i._colorAxes={},i._requestRangeslider={},i._traceUids=Kat(o,u),ql.supplyDataDefaults(u,s,a,i);var x=Object.keys(A.x),C=Object.keys(A.y);if(x.length>1&&C.length>1){for(Hf.getComponentMethod("grid","sizeDefaults")(a,i),c=0;c15&&C.length>15&&i.shapes.length===0&&i.images.length===0,ql.linkSubplots(s,i,o,n),ql.cleanPlot(s,i,o,n);var B=!!(n._has&&n._has("cartesian")),F=!!(i._has&&i._has("cartesian")),U=B,G=F;U&&!G?n._bgLayer.remove():G&&!U&&(i._shouldCreateBgLayer=!0),n._zoomlayer&&!e._dragging&&Gat({_fullLayout:n}),Qat(s,i),jne(i,n),Hf.getComponentMethod("colorscale","crossTraceDefaults")(s,i),i._preGUI||(i._preGUI={}),i._tracePreGUI||(i._tracePreGUI={});var j=i._tracePreGUI,H={},N;for(N in j)H[N]="old";for(c=0;c0){var f=1-2*a;o=Math.round(f*o),s=Math.round(f*s)}}var c=ql.layoutAttributes.width.min,h=ql.layoutAttributes.height.min;o1,p=!r.height&&Math.abs(n.height-s)>1;(p||d)&&(d&&(n.width=o),p&&(n.height=s)),t._initialAutoSize||(t._initialAutoSize={width:o,height:s}),ql.sanitizeMargins(n)};ql.supplyLayoutModuleDefaults=function(e,t,r,n){var i=Hf.componentsRegistry,a=t._basePlotModules,o,s,u,l=Hf.subplotsRegistry.cartesian;for(o in i)u=i[o],u.includeBasePlot&&u.includeBasePlot(e,t);a.length||a.push(l),t._has("cartesian")&&(Hf.getComponentMethod("grid","contentDefaults")(e,t),l.finalizeSubplots(e,t));for(var f in t._subplots)t._subplots[f].sort(nu.subplotSort);for(s=0;s1&&(r.l/=b,r.r/=b)}if(h){var v=(r.t+r.b)/h;v>1&&(r.t/=v,r.b/=v)}var k=r.xl!==void 0?r.xl:r.x,E=r.xr!==void 0?r.xr:r.x,A=r.yt!==void 0?r.yt:r.y,L=r.yb!==void 0?r.yb:r.y;d[t]={l:{val:k,size:r.l+_},r:{val:E,size:r.r+_},b:{val:L,size:r.b+_},t:{val:A,size:r.t+_}},p[t]=1}if(!n._replotting)return ql.doAutoMargin(e)}};function tot(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var t=Sv.list(e,"",!0);for(var r in t)if(t[r].autoshift||t[r].shift)return!0;return!1}ql.doAutoMargin=function(e){var t=e._fullLayout,r=t.width,n=t.height;t._size||(t._size={}),eae(t);var i=t._size,a=t.margin,o={t:0,b:0,l:0,r:0},s=nu.extendFlat({},i),u=a.l,l=a.r,f=a.t,c=a.b,h=t._pushmargin,d=t._pushmarginIds,p=t.minreducedwidth,_=t.minreducedheight;if(a.autoexpand!==!1){for(var b in h)d[b]||delete h[b];var v=e._fullLayout._reservedMargin;for(var k in v)for(var E in v[k]){var A=v[k][E];o[E]=Math.max(o[E],A)}h.base={l:{val:0,size:u},r:{val:1,size:l},t:{val:1,size:f},b:{val:0,size:c}};for(var L in o){var x=0;for(var C in h)C!=="base"&&KM(h[C][L].size)&&(x=h[C][L].size>x?h[C][L].size:x);var M=Math.max(0,a[L]-x);o[L]=Math.max(0,o[L]-M)}for(var m in h){var P=h[m].l||{},T=h[m].b||{},B=P.val,F=P.size,U=T.val,G=T.size,j=r-o.r-o.l,H=n-o.t-o.b;for(var N in h){if(KM(F)&&h[N].r){var W=h[N].r.val,re=h[N].r.size;if(W>B){var ae=(F*W+(re-j)*B)/(W-B),be=(re*(1-B)+(F-j)*(1-W))/(W-B);ae+be>u+l&&(u=ae,l=be)}}if(KM(G)&&h[N].t){var ze=h[N].t.val,Ce=h[N].t.size;if(ze>U){var de=(G*ze+(Ce-H)*U)/(ze-U),te=(Ce*(1-U)+(G-H)*(1-ze))/(ze-U);de+te>c+f&&(c=de,f=te)}}}}}var ke=nu.constrain(r-a.l-a.r,tae,p),Ee=nu.constrain(n-a.t-a.b,rae,_),Me=Math.max(0,r-ke),Ue=Math.max(0,n-Ee);if(Me){var De=(u+l)/Me;De>1&&(u/=De,l/=De)}if(Ue){var ye=(c+f)/Ue;ye>1&&(c/=ye,f/=ye)}if(i.l=Math.round(u)+o.l,i.r=Math.round(l)+o.r,i.t=Math.round(f)+o.t,i.b=Math.round(c)+o.b,i.p=Math.round(a.pad),i.w=Math.round(r)-i.l-i.r,i.h=Math.round(n)-i.t-i.b,!t._replotting&&(ql.didMarginChange(s,i)||tot(e))){"_redrawFromAutoMarginCount"in t?t._redrawFromAutoMarginCount++:t._redrawFromAutoMarginCount=1;var qe=3*(1+Object.keys(d).length);if(t._redrawFromAutoMarginCount1)return!0}return!1};ql.graphJson=function(e,t,r,n,i,a){(i&&t&&!e._fullData||i&&!t&&!e._fullLayout)&&ql.supplyDefaults(e);var o=i?e._fullData:e.data,s=i?e._fullLayout:e.layout,u=(e._transitionData||{})._frames;function l(h,d){if(typeof h=="function")return d?"_function_":null;if(nu.isPlainObject(h)){var p={},_;return Object.keys(h).sort().forEach(function(E){if(["_","["].indexOf(E.charAt(0))===-1){if(typeof h[E]=="function"){d&&(p[E]="_function");return}if(r==="keepdata"){if(E.substr(E.length-3)==="src")return}else if(r==="keepstream"){if(_=h[E+"src"],typeof _=="string"&&_.indexOf(":")>0&&!nu.isPlainObject(h.stream))return}else if(r!=="keepall"&&(_=h[E+"src"],typeof _=="string"&&_.indexOf(":")>0))return;p[E]=l(h[E],d)}}),p}var b=Array.isArray(h),v=nu.isTypedArray(h);if((b||v)&&h.dtype&&h.shape){var k=h.bdata;return l({dtype:h.dtype,shape:h.shape,bdata:nu.isArrayBuffer(k)?Uat.encode(k):k},d)}return b?h.map(function(E){return l(E,d)}):v?nu.simpleMap(h,nu.identity):nu.isJSDate(h)?nu.ms2DateTimeLocal(+h):h}var f={data:(o||[]).map(function(h){var d=l(h);return t&&delete d.fit,d})};if(!t&&(f.layout=l(s),i)){var c=s._size;f.layout.computed={margin:{b:c.b,l:c.l,r:c.r,t:c.t}}}return u&&(f.frames=l(u)),a&&(f.config=l(e._context,!0)),n==="object"?f:JSON.stringify(f)};ql.modifyFrames=function(e,t){var r,n,i,a=e._transitionData._frames,o=e._transitionData._frameHash;for(r=0;r0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){n=!0}),r.redraw&&e._transitionData._interruptCallbacks.push(function(){return Hf.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var h=0,d=0;function p(){return h++,function(){d++,!n&&d===h&&s(c)}}r.runFn(p),setTimeout(p())})}function s(c){if(e._transitionData)return a(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(r.redraw)return Hf.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(c)}function u(){if(e._transitionData)return e._transitioning=!1,i(e._transitionData._interruptCallbacks)}var l=[ql.previousPromises,u,r.prepareFn,ql.rehover,ql.reselect,o],f=nu.syncOrAsync(l,e);return(!f||!f.then)&&(f=Promise.resolve()),f.then(function(){return e})}ql.doCalcdata=function(e,t){var r=Sv.list(e),n=e._fullData,i=e._fullLayout,a,o,s,u,l=new Array(n.length),f=(e.calcdata||[]).slice();for(e.calcdata=l,i._numBoxes=0,i._numViolins=0,i._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,i._piecolormap={},i._sunburstcolormap={},i._treemapcolormap={},i._iciclecolormap={},i._funnelareacolormap={},s=0;s=0;u--)if(L[u].enabled){a._indexToPoints=L[u]._indexToPoints;break}o&&o.calc&&(A=o.calc(e,a))}(!Array.isArray(A)||!A[0])&&(A=[{x:Wne,y:Wne}]),A[0].t||(A[0].t={}),A[0].trace=a,l[k]=A}}for(Yne(r,n,i),s=0;s{"use strict";_b.xmlns="http://www.w3.org/2000/xmlns/";_b.svg="http://www.w3.org/2000/svg";_b.xlink="http://www.w3.org/1999/xlink";_b.svgAttrs={xmlns:_b.svg,"xmlns:xlink":_b.xlink}});var td=Ae((Oar,aae)=>{"use strict";aae.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var Xf=Ae(x0=>{"use strict";var Bh=Jl(),Ag=ei(),aot=Ag.strTranslate,Aq=jv(),oot=td().LINE_SPACING,sot=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;x0.convertToTspans=function(e,t,r){var n=e.text(),i=!e.attr("data-notex")&&t&&t._context.typesetMath&&typeof MathJax!="undefined"&&n.match(sot),a=Bh.select(e.node().parentNode);if(a.empty())return;var o=e.attr("class")?e.attr("class").split(" ")[0]:"text";o+="-math",a.selectAll("svg."+o).remove(),a.selectAll("g."+o+"-group").remove(),e.style("display",null).attr({"data-unformatted":n,"data-math":"N"});function s(){a.empty()||(o=e.attr("class")+"-math",a.select("svg."+o).remove()),e.text("").style("white-space","pre");var u=xot(e.node(),n);u&&e.style("pointer-events","all"),x0.positionText(e),r&&r.call(e)}return i?(t&&t._promises||[]).push(new Promise(function(u){e.style("display","none");var l=parseInt(e.node().style.fontSize,10),f={fontSize:l};cot(i[2],f,function(c,h,d){a.selectAll("svg."+o).remove(),a.selectAll("g."+o+"-group").remove();var p=c&&c.select("svg");if(!p||!p.node()){s(),u();return}var _=a.append("g").classed(o+"-group",!0).attr({"pointer-events":"none","data-unformatted":n,"data-math":"Y"});_.node().appendChild(p.node()),h&&h.node()&&p.node().insertBefore(h.node().cloneNode(!0),p.node().firstChild);var b=d.width,v=d.height;p.attr({class:o,height:v,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var k=e.node().style.fill||"black",E=p.select("g");E.attr({fill:k,stroke:k});var A=E.node().getBoundingClientRect(),L=A.width,x=A.height;(L>b||x>v)&&(p.style("overflow","hidden"),A=p.node().getBoundingClientRect(),L=A.width,x=A.height);var C=+e.attr("x"),M=+e.attr("y"),m=l||e.node().getBoundingClientRect().height,P=-m/4;if(o[0]==="y")_.attr({transform:"rotate("+[-90,C,M]+")"+aot(-L/2,P-x/2)});else if(o[0]==="l")M=P-x/2;else if(o[0]==="a"&&o.indexOf("atitle")!==0)C=0,M=P;else{var T=e.attr("text-anchor");C=C-L*(T==="middle"?.5:T==="end"?1:0),M=M+P-x/2}p.attr({x:C,y:M}),r&&r.call(e,_),u(_)})})):s(),e};var lot=/(<|<|<)/g,uot=/(>|>|>)/g;function fot(e){return e.replace(lot,"\\lt ").replace(uot,"\\gt ")}var oae=[["$","$"],["\\(","\\)"]];function cot(e,t,r){var n=parseInt((MathJax.version||"").split(".")[0]);if(n!==2&&n!==3){Ag.warn("No MathJax version:",MathJax.version);return}var i,a,o,s,u=function(){return a=Ag.extendDeepAll({},MathJax.Hub.config),o=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:oae},displayAlign:"left"})},l=function(){a=Ag.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=oae},f=function(){if(i=MathJax.Hub.config.menuSettings.renderer,i!=="SVG")return MathJax.Hub.setRenderer("SVG")},c=function(){i=MathJax.config.startup.output,i!=="svg"&&(MathJax.config.startup.output="svg")},h=function(){var k="math-output-"+Ag.randstr({},64);s=Bh.select("body").append("div").attr({id:k}).style({visibility:"hidden",position:"absolute","font-size":t.fontSize+"px"}).text(fot(e));var E=s.node();return n===2?MathJax.Hub.Typeset(E):MathJax.typeset([E])},d=function(){var k=s.select(n===2?".MathJax_SVG":".MathJax"),E=!k.empty()&&s.select("svg").node();if(!E)Ag.log("There was an error in the tex syntax.",e),r();else{var A=E.getBoundingClientRect(),L;n===2?L=Bh.select("body").select("#MathJax_SVG_glyphs"):L=k.select("defs"),r(k,L,A)}s.remove()},p=function(){if(i!=="SVG")return MathJax.Hub.setRenderer(i)},_=function(){i!=="svg"&&(MathJax.config.startup.output=i)},b=function(){return o!==void 0&&(MathJax.Hub.processSectionDelay=o),MathJax.Hub.Config(a)},v=function(){MathJax.config=a};n===2?MathJax.Hub.Queue(u,f,h,d,p,b):n===3&&(l(),c(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){h(),d(),_(),v()}))}var fae={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},hot={sub:"0.3em",sup:"-0.6em"},dot={sub:"-0.21em",sup:"0.42em"},sae="\u200B",lae=["http:","https:","mailto:","",void 0,":"],cae=x0.NEWLINES=/(\r\n?|\n)/g,Mq=/(<[^<>]*>)/,Eq=/<(\/?)([^ >]*)(\s+(.*))?>/i,pot=//i;x0.BR_TAG_ALL=//gi;var hae=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,dae=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,pae=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,vot=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function xb(e,t){if(!e)return null;var r=e.match(t),n=r&&(r[3]||r[4]);return n&&$L(n)}var mot=/(^|;)\s*color:/;x0.plainText=function(e,t){t=t||{};for(var r=t.len!==void 0&&t.len!==-1?t.len:1/0,n=t.allowedTags!==void 0?t.allowedTags:["br"],i="...",a=i.length,o=e.split(Mq),s=[],u="",l=0,f=0;fa?s.push(c.substr(0,_-a)+i):s.push(c.substr(0,_));break}u=""}}return s.join("")};var yot={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},got=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function $L(e){return e.replace(got,function(t,r){var n;return r.charAt(0)==="#"?n=_ot(r.charAt(1)==="x"?parseInt(r.substr(2),16):parseInt(r.substr(1),10)):n=yot[r],n||t})}x0.convertEntities=$L;function _ot(e){if(!(e>1114111)){var t=String.fromCodePoint;if(t)return t(e);var r=String.fromCharCode;return e<=65535?r(e):r((e>>10)+55232,e%1024+56320)}}function xot(e,t){t=t.replace(cae," ");var r=!1,n=[],i,a=-1;function o(){a++;var x=document.createElementNS(Aq.svg,"tspan");Bh.select(x).attr({class:"line",dy:a*oot+"em"}),e.appendChild(x),i=x;var C=n;if(n=[{node:x}],C.length>1)for(var M=1;M.",t);return}var C=n.pop();x!==C.type&&Ag.log("Start tag <"+C.type+"> doesnt match end tag <"+x+">. Pretending it did match.",t),i=n[n.length-1].node}var f=pot.test(t);f?o():(i=e,n=[{node:e}]);for(var c=t.split(Mq),h=0;h{"use strict";var bot=Jl(),eP=cd(),$M=ku(),QL=ei(),mae=jl(),wot=lb().isValid;function Tot(e,t,r){var n=t?QL.nestedProperty(e,t).get()||{}:e,i=n[r||"color"];i&&i._inputArray&&(i=i._inputArray);var a=!1;if(QL.isArrayOrTypedArray(i)){for(var o=0;o=0;n--,i++){var a=e[n];r[i]=[1-a[0],a[1]]}return r}function wae(e,t){t=t||{};for(var r=e.domain,n=e.range,i=n.length,a=new Array(i),o=0;o{"use strict";var Aae=Y9(),Sot=Aae.FORMAT_LINK,Mot=Aae.DATE_FORMAT_LINK;function Eot(e,t){return{valType:"string",dflt:"",editType:"none",description:(t?kq:Sae)("hover text",e)+["By default the values are formatted using "+(t?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function kq(e,t){return["Sets the "+e+" formatting rule"+(t?"for `"+t+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+Sot+"."].join(" ")}function Sae(e,t){return kq(e,t)+[" And for dates see: "+Mot+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}Mae.exports={axisHoverFormat:Eot,descriptionOnlyNumbers:kq,descriptionWithDates:Sae}});var Dd=Ae((Gar,Gae)=>{"use strict";var Eae=gc(),A3=Fh(),Vae=Id().dash,Lq=Su().extendFlat,kae=Lf().templatedArray,Var=Ff().templateFormatStringDescription,Cae=jc().descriptionWithDates,kot=rf().ONEDAY,vy=dd(),Cot=vy.HOUR_PATTERN,Lot=vy.WEEKDAY_PATTERN,Cq={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},Pot=Lq({},Cq,{values:Cq.values.slice().concat(["sync"])});function Lae(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var Pae={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},zae={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},Iae={valType:"data_array",editType:"ticks"},Rae={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function Dae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=5),t}function Fae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var Bae={valType:"color",dflt:A3.defaultLine,editType:"ticks"},Oae={valType:"color",dflt:A3.lightLine,editType:"ticks"};function qae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var Nae=Lq({},Vae,{editType:"ticks"}),Uae={valType:"boolean",editType:"ticks"};Gae.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:A3.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:Eae({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[vy.idRegex.x.toString(),vy.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[vy.idRegex.x.toString(),vy.idRegex.y.toString()],editType:"calc"},rangebreaks:kae("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[Lot,Cot,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:kot},editType:"calc"}),tickmode:Pot,nticks:Lae(),tick0:Pae,dtick:zae,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:Iae,ticktext:{valType:"data_array",editType:"ticks"},ticks:Rae,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:Dae(),tickwidth:Fae(),tickcolor:Bae,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:Lq({},Vae,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:Eae({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:Cae("tick label")},tickformatstops:kae("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:Cae("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:A3.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:Uae,gridcolor:Oae,gridwidth:qae(),griddash:Nae,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:A3.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:A3.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",vy.idRegex.x.toString(),vy.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",vy.idRegex.x.toString(),vy.idRegex.y.toString()],editType:"plot"},minor:{tickmode:Cq,nticks:Lae("minor"),tick0:Pae,dtick:zae,tickvals:Iae,ticks:Rae,ticklen:Dae("minor"),tickwidth:Fae("minor"),tickcolor:Bae,gridcolor:Oae,gridwidth:qae("minor"),griddash:Nae,showgrid:Uae,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var tP=Ae((Har,jae)=>{"use strict";var Nc=Dd(),Hae=gc(),Wae=Su().extendFlat,zot=Sc().overrideAll;jae.exports=zot({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:Nc.linecolor,outlinewidth:Nc.linewidth,bordercolor:Nc.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:Nc.minor.tickmode,nticks:Nc.nticks,tick0:Nc.tick0,dtick:Nc.dtick,tickvals:Nc.tickvals,ticktext:Nc.ticktext,ticks:Wae({},Nc.ticks,{dflt:""}),ticklabeloverflow:Wae({},Nc.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:Nc.ticklen,tickwidth:Nc.tickwidth,tickcolor:Nc.tickcolor,ticklabelstep:Nc.ticklabelstep,showticklabels:Nc.showticklabels,labelalias:Nc.labelalias,tickfont:Hae({}),tickangle:Nc.tickangle,tickformat:Nc.tickformat,tickformatstops:Nc.tickformatstops,tickprefix:Nc.tickprefix,showtickprefix:Nc.showtickprefix,ticksuffix:Nc.ticksuffix,showticksuffix:Nc.showticksuffix,separatethousands:Nc.separatethousands,exponentformat:Nc.exponentformat,minexponent:Nc.minexponent,showexponent:Nc.showexponent,title:{text:{valType:"string"},font:Hae({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var nc=Ae((jar,Zae)=>{"use strict";var Iot=tP(),Rot=a3().counter,Dot=Z1(),Xae=lb().scales,War=Dot(Xae);function rP(e){return"`"+e+"`"}Zae.exports=function(t,r){t=t||"",r=r||{};var n=r.cLetter||"c",i="onlyIfNumerical"in r?r.onlyIfNumerical:!!t,a="noScale"in r?r.noScale:t==="marker.line",o="showScaleDflt"in r?r.showScaleDflt:n==="z",s=typeof r.colorscaleDflt=="string"?Xae[r.colorscaleDflt]:null,u=r.editTypeOverride||"",l=t?t+".":"",f,c;"colorAttr"in r?(f=r.colorAttr,c=r.colorAttr):(f={z:"z",c:"color"}[n],c="in "+rP(l+f));var h=i?" Has an effect only if "+c+" is set to a numerical array.":"",d=n+"auto",p=n+"min",_=n+"max",b=n+"mid",v=rP(l+d),k=rP(l+p),E=rP(l+_),A=k+" and "+E,L={};L[p]=L[_]=void 0;var x={};x[d]=!1;var C={};return f==="color"&&(C.color={valType:"color",arrayOk:!0,editType:u||"style"},r.anim&&(C.color.anim=!0)),C[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:L},C[p]={valType:"number",dflt:null,editType:u||"plot",impliedEdits:x},C[_]={valType:"number",dflt:null,editType:u||"plot",impliedEdits:x},C[b]={valType:"number",dflt:null,editType:"calc",impliedEdits:L},C.colorscale={valType:"colorscale",editType:"calc",dflt:s,impliedEdits:{autocolorscale:!1}},C.autocolorscale={valType:"boolean",dflt:r.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},C.reversescale={valType:"boolean",dflt:!1,editType:"plot"},a||(C.showscale={valType:"boolean",dflt:o,editType:"calc"},C.colorbar=Iot),r.noColorAxis||(C.coloraxis={valType:"subplotid",regex:Rot("coloraxis"),dflt:null,editType:"calc"}),C}});var zq=Ae((Xar,Yae)=>{"use strict";var Fot=Su().extendFlat,Bot=nc(),Pq=lb().scales;Yae.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:Pq.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:Pq.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:Pq.RdBu,editType:"calc"}},coloraxis:Fot({_isSubplotObj:!0,editType:"calc"},Bot("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var Iq=Ae((Zar,Kae)=>{"use strict";var Oot=ei();Kae.exports=function(t){return Oot.isPlainObject(t.colorbar)}});var Fq=Ae(Dq=>{"use strict";var Rq=ku(),Jae=ei(),$ae=rf(),qot=$ae.ONEDAY,Not=$ae.ONEWEEK;Dq.dtick=function(e,t){var r=t==="log",n=t==="date",i=t==="category",a=n?qot:1;if(!e)return a;if(Rq(e))return e=Number(e),e<=0?a:i?Math.max(1,Math.round(e)):n?Math.max(.1,e):e;if(typeof e!="string"||!(n||r))return a;var o=e.charAt(0),s=e.substr(1);return s=Rq(s)?Number(s):0,s<=0||!(n&&o==="M"&&s===Math.round(s)||r&&o==="L"||r&&o==="D"&&(s===1||s===2))?a:e};Dq.tick0=function(e,t,r,n){if(t==="date")return Jae.cleanDate(e,Jae.dateTick0(r,n%Not===0?1:0));if(!(n==="D1"||n==="D2"))return Rq(e)?Number(e):0}});var bb=Ae((Kar,eoe)=>{"use strict";var Qae=Fq(),Uot=ei().isArrayOrTypedArray,Vot=mp().isTypedArraySpec,Got=mp().decodeTypedArraySpec;eoe.exports=function(t,r,n,i,a){a||(a={});var o=a.isMinor,s=o?t.minor||{}:t,u=o?r.minor:r,l=o?"minor.":"";function f(k){var E=s[k];return Vot(E)&&(E=Got(E)),E!==void 0?E:(u._template||{})[k]}var c=f("tick0"),h=f("dtick"),d=f("tickvals"),p=Uot(d)?"array":h?"linear":"auto",_=n(l+"tickmode",p);if(_==="auto"||_==="sync")n(l+"nticks");else if(_==="linear"){var b=u.dtick=Qae.dtick(h,i);u.tick0=Qae.tick0(c,i,r.calendar,b)}else if(i!=="multicategory"){var v=n(l+"tickvals");v===void 0?u.tickmode="auto":o||n("ticktext")}}});var S3=Ae((Jar,roe)=>{"use strict";var Bq=ei(),toe=Dd();roe.exports=function(t,r,n,i){var a=i.isMinor,o=a?t.minor||{}:t,s=a?r.minor:r,u=a?toe.minor:toe,l=a?"minor.":"",f=Bq.coerce2(o,s,u,"ticklen",a?(r.ticklen||5)*.6:void 0),c=Bq.coerce2(o,s,u,"tickwidth",a?r.tickwidth||1:void 0),h=Bq.coerce2(o,s,u,"tickcolor",(a?r.tickcolor:void 0)||s.color),d=n(l+"ticks",!a&&i.outerTicks||f||c||h?"outside":"");d||(delete s.ticklen,delete s.tickwidth,delete s.tickcolor)}});var Oq=Ae(($ar,ioe)=>{"use strict";ioe.exports=function(t){var r=["showexponent","showtickprefix","showticksuffix"],n=r.filter(function(a){return t[a]!==void 0}),i=function(a){return t[a]===t[n[0]]};if(n.every(i)||n.length===1)return t[n[0]]}});var Jd=Ae((Qar,noe)=>{"use strict";var iP=ei(),Hot=Lf();noe.exports=function(t,r,n){var i=n.name,a=n.inclusionAttr||"visible",o=r[i],s=iP.isArrayOrTypedArray(t[i])?t[i]:[],u=r[i]=[],l=Hot.arrayTemplater(r,i,a),f,c;for(f=0;f{"use strict";var qq=ei(),Wot=jl().contrast,aoe=Dd(),jot=Oq(),Xot=Jd();ooe.exports=function(t,r,n,i,a){a||(a={});var o=n("labelalias");qq.isPlainObject(o)||delete r.labelalias;var s=jot(t),u=n("showticklabels");if(u){a.noTicklabelshift||n("ticklabelshift"),a.noTicklabelstandoff||n("ticklabelstandoff");var l=a.font||{},f=r.color,c=r.ticklabelposition||"",h=c.indexOf("inside")!==-1?Wot(a.bgColor):f&&f!==aoe.color.dflt?f:l.color;if(qq.coerceFont(n,"tickfont",l,{overrideDflt:{color:h}}),!a.noTicklabelstep&&i!=="multicategory"&&i!=="log"&&n("ticklabelstep"),!a.noAng){var d=n("tickangle");!a.noAutotickangles&&d==="auto"&&n("autotickangles")}if(i!=="category"){var p=n("tickformat");Xot(t,r,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:Zot}),r.tickformatstops.length||delete r.tickformatstops,!a.noExp&&!p&&i!=="date"&&(n("showexponent",s),n("exponentformat"),n("minexponent"),n("separatethousands"))}!a.noMinorloglabels&&i==="log"&&n("minorloglabels")}};function Zot(e,t){function r(i,a){return qq.coerce(e,t,aoe.tickformatstops,i,a)}var n=r("enabled");n&&(r("dtickrange"),r("value"))}});var t_=Ae((tor,soe)=>{"use strict";var Yot=Oq();soe.exports=function(t,r,n,i,a){a||(a={});var o=a.tickSuffixDflt,s=Yot(t),u=n("tickprefix");u&&n("showtickprefix",s);var l=n("ticksuffix",o);l&&n("showticksuffix",s)}});var Nq=Ae((ror,loe)=>{"use strict";var r_=ei(),Kot=Lf(),Jot=bb(),$ot=S3(),Qot=e_(),est=t_(),tst=tP();loe.exports=function(t,r,n){var i=Kot.newContainer(r,"colorbar"),a=t.colorbar||{};function o(T,B){return r_.coerce(a,i,tst,T,B)}var s=n.margin||{t:0,b:0,l:0,r:0},u=n.width-s.l-s.r,l=n.height-s.t-s.b,f=o("orientation"),c=f==="v",h=o("thicknessmode");o("thickness",h==="fraction"?30/(c?u:l):30);var d=o("lenmode");o("len",d==="fraction"?1:c?l:u);var p=o("yref"),_=o("xref"),b=p==="paper",v=_==="paper",k,E,A,L="left";c?(A="middle",L=v?"left":"right",k=v?1.02:1,E=.5):(A=b?"bottom":"top",L="center",k=.5,E=b?1.02:1),r_.coerce(a,i,{x:{valType:"number",min:v?-2:0,max:v?3:1,dflt:k}},"x"),r_.coerce(a,i,{y:{valType:"number",min:b?-2:0,max:b?3:1,dflt:E}},"y"),o("xanchor",L),o("xpad"),o("yanchor",A),o("ypad"),r_.noneOrAll(a,i,["x","y"]),o("outlinecolor"),o("outlinewidth"),o("bordercolor"),o("borderwidth"),o("bgcolor");var x=r_.coerce(a,i,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:c?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");o("ticklabeloverflow",x.indexOf("inside")!==-1?"hide past domain":"hide past div"),Jot(a,i,o,"linear");var C=n.font,M={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:C};x.indexOf("inside")!==-1&&(M.bgColor="black"),est(a,i,o,"linear",M),Qot(a,i,o,"linear",M),$ot(a,i,o,"linear",M),o("title.text",n._dfltTitle.colorbar);var m=i.showticklabels?i.tickfont:C,P=r_.extendFlat({},C,{family:m.family,size:r_.bigFont(m.size)});r_.coerceFont(o,"title.font",P),o("title.side",c?"top":"right")}});var rd=Ae((ior,coe)=>{"use strict";var uoe=ku(),Vq=ei(),rst=Iq(),ist=Nq(),foe=lb().isValid,nst=$l().traceIs;function Uq(e,t){var r=t.slice(0,t.length-1);return t?Vq.nestedProperty(e,r).get()||{}:e}coe.exports=function e(t,r,n,i,a){var o=a.prefix,s=a.cLetter,u="_module"in r,l=Uq(t,o),f=Uq(r,o),c=Uq(r._template||{},o)||{},h=function(){return delete t.coloraxis,delete r.coloraxis,e(t,r,n,i,a)};if(u){var d=n._colorAxes||{},p=i(o+"coloraxis");if(p){var _=nst(r,"contour")&&Vq.nestedProperty(r,"contours.coloring").get()||"heatmap",b=d[p];b?(b[2].push(h),b[0]!==_&&(b[0]=!1,Vq.warn(["Ignoring coloraxis:",p,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[p]=[_,r,[h]];return}}var v=l[s+"min"],k=l[s+"max"],E=uoe(v)&&uoe(k)&&v{"use strict";var hoe=ei(),ast=Lf(),doe=zq(),ost=rd();poe.exports=function(t,r){function n(c,h){return hoe.coerce(t,r,doe,c,h)}n("colorscale.sequential"),n("colorscale.sequentialminus"),n("colorscale.diverging");var i=r._colorAxes,a,o;function s(c,h){return hoe.coerce(a,o,doe.coloraxis,c,h)}for(var u in i){var l=i[u];if(l[0])a=t[u]||{},o=ast.newContainer(r,u,"coloraxis"),o._name=u,ost(a,o,r,s,{prefix:"",cLetter:"c"});else{for(var f=0;f{"use strict";var sst=ei(),lst=yp().hasColorscale,ust=yp().extractOpts;moe.exports=function(t,r){function n(f,c){var h=f["_"+c];h!==void 0&&(f[c]=h)}function i(f,c){var h=c.container?sst.nestedProperty(f,c.container).get():f;if(h)if(h.coloraxis)h._colorAx=r[h.coloraxis];else{var d=ust(h),p=d.auto;(p||d.min===void 0)&&n(h,c.min),(p||d.max===void 0)&&n(h,c.max),d.autocolorscale&&n(h,"colorscale")}}for(var a=0;a{"use strict";var goe=ku(),Gq=ei(),fst=yp().extractOpts;_oe.exports=function(t,r,n){var i=t._fullLayout,a=n.vals,o=n.containerStr,s=o?Gq.nestedProperty(r,o).get():r,u=fst(s),l=u.auto!==!1,f=u.min,c=u.max,h=u.mid,d=function(){return Gq.aggNums(Math.min,null,a)},p=function(){return Gq.aggNums(Math.max,null,a)};if(f===void 0?f=d():l&&(s._colorAx&&goe(f)?f=Math.min(f,d()):f=d()),c===void 0?c=p():l&&(s._colorAx&&goe(c)?c=Math.max(c,p()):c=p()),l&&h!==void 0&&(c-h>h-f?f=h-(c-h):c-h=0?_=i.colorscale.sequential:_=i.colorscale.sequentialminus,u._sync("colorscale",_)}}});var _c=Ae((sor,xoe)=>{"use strict";var nP=lb(),M3=yp();xoe.exports={moduleType:"component",name:"colorscale",attributes:nc(),layoutAttributes:zq(),supplyLayoutDefaults:voe(),handleDefaults:rd(),crossTraceDefaults:yoe(),calc:gp(),scales:nP.scales,defaultScale:nP.defaultScale,getScale:nP.get,isValidScale:nP.isValid,hasColorscale:M3.hasColorscale,extractOpts:M3.extractOpts,extractScale:M3.extractScale,flipScale:M3.flipScale,makeColorScaleFunc:M3.makeColorScaleFunc,makeColorScaleFuncFromTrace:M3.makeColorScaleFuncFromTrace}});var lc=Ae((lor,woe)=>{"use strict";var boe=ei(),cst=mp().isTypedArraySpec;woe.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var t=e.marker;return boe.isPlainObject(t)&&(boe.isArrayOrTypedArray(t.size)||cst(t.size))}}});var E3=Ae((uor,Toe)=>{"use strict";var hst=ku();Toe.exports=function(t,r){r||(r=2);var n=t.marker,i=n.sizeref||1,a=n.sizemin||0,o=n.sizemode==="area"?function(s){return Math.sqrt(s/i)}:function(s){return s/i};return function(s){var u=o(s/r);return hst(u)&&u>0?Math.max(u,a):0}}});var iv=Ae(_p=>{"use strict";var aP=ei();_p.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};_p.isTraceInSubplots=function(e,t){if(e.type==="splom"){for(var r=e.xaxes||[],n=e.yaxes||[],i=0;i=0&&r.index{Moe.exports=yst;var Hq={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},mst=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function yst(e){var t=[];return e.replace(mst,function(r,n,i){var a=n.toLowerCase();for(i=_st(i),a=="m"&&i.length>2&&(t.push([n].concat(i.splice(0,2))),a="l",n=n=="m"?"l":"L");;){if(i.length==Hq[a])return i.unshift(n),t.push(i);if(i.length{"use strict";var xst=QM(),wl=function(e,t){return t?Math.round(e*(t=Math.pow(10,t)))/t:Math.round(e)},nf="M0,0Z",Eoe=Math.sqrt(2),i_=Math.sqrt(3),Wq=Math.PI,jq=Math.cos,Xq=Math.sin;zoe.exports={circle:{n:0,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i="M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z";return r?of(t,r,i):i}},square:{n:1,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")}},diamond:{n:2,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.3,2);return of(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"Z")}},cross:{n:3,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.4,2),i=wl(e*1.2,2);return of(t,r,"M"+i+","+n+"H"+n+"V"+i+"H-"+n+"V"+n+"H-"+i+"V-"+n+"H-"+n+"V-"+i+"H"+n+"V-"+n+"H"+i+"Z")}},x:{n:4,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.8/Eoe,2),i="l"+n+","+n,a="l"+n+",-"+n,o="l-"+n+",-"+n,s="l-"+n+","+n;return of(t,r,"M0,"+n+i+a+o+a+o+s+o+s+i+s+i+"Z")}},"triangle-up":{n:5,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2/i_,2),i=wl(e/2,2),a=wl(e,2);return of(t,r,"M-"+n+","+i+"H"+n+"L0,-"+a+"Z")}},"triangle-down":{n:6,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2/i_,2),i=wl(e/2,2),a=wl(e,2);return of(t,r,"M-"+n+",-"+i+"H"+n+"L0,"+a+"Z")}},"triangle-left":{n:7,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2/i_,2),i=wl(e/2,2),a=wl(e,2);return of(t,r,"M"+i+",-"+n+"V"+n+"L-"+a+",0Z")}},"triangle-right":{n:8,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2/i_,2),i=wl(e/2,2),a=wl(e,2);return of(t,r,"M-"+i+",-"+n+"V"+n+"L"+a+",0Z")}},"triangle-ne":{n:9,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.6,2),i=wl(e*1.2,2);return of(t,r,"M-"+i+",-"+n+"H"+n+"V"+i+"Z")}},"triangle-se":{n:10,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.6,2),i=wl(e*1.2,2);return of(t,r,"M"+n+",-"+i+"V"+n+"H-"+i+"Z")}},"triangle-sw":{n:11,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.6,2),i=wl(e*1.2,2);return of(t,r,"M"+i+","+n+"H-"+n+"V-"+i+"Z")}},"triangle-nw":{n:12,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.6,2),i=wl(e*1.2,2);return of(t,r,"M-"+n+","+i+"V-"+n+"H"+i+"Z")}},pentagon:{n:13,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.951,2),i=wl(e*.588,2),a=wl(-e,2),o=wl(e*-.309,2),s=wl(e*.809,2);return of(t,r,"M"+n+","+o+"L"+i+","+s+"H-"+i+"L-"+n+","+o+"L0,"+a+"Z")}},hexagon:{n:14,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i=wl(e/2,2),a=wl(e*i_/2,2);return of(t,r,"M"+a+",-"+i+"V"+i+"L0,"+n+"L-"+a+","+i+"V-"+i+"L0,-"+n+"Z")}},hexagon2:{n:15,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i=wl(e/2,2),a=wl(e*i_/2,2);return of(t,r,"M-"+i+","+a+"H"+i+"L"+n+",0L"+i+",-"+a+"H-"+i+"L-"+n+",0Z")}},octagon:{n:16,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.924,2),i=wl(e*.383,2);return of(t,r,"M-"+i+",-"+n+"H"+i+"L"+n+",-"+i+"V"+i+"L"+i+","+n+"H-"+i+"L-"+n+","+i+"V-"+i+"Z")}},star:{n:17,f:function(e,t,r){if(af(t))return nf;var n=e*1.4,i=wl(n*.225,2),a=wl(n*.951,2),o=wl(n*.363,2),s=wl(n*.588,2),u=wl(-n,2),l=wl(n*-.309,2),f=wl(n*.118,2),c=wl(n*.809,2),h=wl(n*.382,2);return of(t,r,"M"+i+","+l+"H"+a+"L"+o+","+f+"L"+s+","+c+"L0,"+h+"L-"+s+","+c+"L-"+o+","+f+"L-"+a+","+l+"H-"+i+"L0,"+u+"Z")}},hexagram:{n:18,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.66,2),i=wl(e*.38,2),a=wl(e*.76,2);return of(t,r,"M-"+a+",0l-"+i+",-"+n+"h"+a+"l"+i+",-"+n+"l"+i+","+n+"h"+a+"l-"+i+","+n+"l"+i+","+n+"h-"+a+"l-"+i+","+n+"l-"+i+",-"+n+"h-"+a+"Z")}},"star-triangle-up":{n:19,f:function(e,t,r){if(af(t))return nf;var n=wl(e*i_*.8,2),i=wl(e*.8,2),a=wl(e*1.6,2),o=wl(e*4,2),s="A "+o+","+o+" 0 0 1 ";return of(t,r,"M-"+n+","+i+s+n+","+i+s+"0,-"+a+s+"-"+n+","+i+"Z")}},"star-triangle-down":{n:20,f:function(e,t,r){if(af(t))return nf;var n=wl(e*i_*.8,2),i=wl(e*.8,2),a=wl(e*1.6,2),o=wl(e*4,2),s="A "+o+","+o+" 0 0 1 ";return of(t,r,"M"+n+",-"+i+s+"-"+n+",-"+i+s+"0,"+a+s+n+",-"+i+"Z")}},"star-square":{n:21,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.1,2),i=wl(e*2,2),a="A "+i+","+i+" 0 0 1 ";return of(t,r,"M-"+n+",-"+n+a+"-"+n+","+n+a+n+","+n+a+n+",-"+n+a+"-"+n+",-"+n+"Z")}},"star-diamond":{n:22,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.4,2),i=wl(e*1.9,2),a="A "+i+","+i+" 0 0 1 ";return of(t,r,"M-"+n+",0"+a+"0,"+n+a+n+",0"+a+"0,-"+n+a+"-"+n+",0Z")}},"diamond-tall":{n:23,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.7,2),i=wl(e*1.4,2);return of(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},"diamond-wide":{n:24,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.4,2),i=wl(e*.7,2);return of(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},hourglass:{n:25,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M"+n+","+n+"H-"+n+"L"+n+",-"+n+"H-"+n+"Z")},noDot:!0},bowtie:{n:26,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M"+n+","+n+"V-"+n+"L-"+n+","+n+"V-"+n+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i=wl(e/Eoe,2);return of(t,r,"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.3,2);return of(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM0,-"+n+"V"+n+"M-"+n+",0H"+n)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.3,2),i=wl(e*.65,2);return of(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM-"+i+",-"+i+"L"+i+","+i+"M-"+i+","+i+"L"+i+",-"+i)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.4,2);return of(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.2,2),i=wl(e*.85,2);return of(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,t,r){if(af(t))return nf;var n=wl(e/2,2),i=wl(e,2);return of(t,r,"M"+n+","+i+"V-"+i+"M"+(n-i)+",-"+i+"V"+i+"M"+i+","+n+"H-"+i+"M-"+i+","+(n-i)+"H"+i)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.2,2),i=wl(e*1.6,2),a=wl(e*.8,2);return of(t,r,"M-"+n+","+a+"L0,0M"+n+","+a+"L0,0M0,-"+i+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.2,2),i=wl(e*1.6,2),a=wl(e*.8,2);return of(t,r,"M-"+n+",-"+a+"L0,0M"+n+",-"+a+"L0,0M0,"+i+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.2,2),i=wl(e*1.6,2),a=wl(e*.8,2);return of(t,r,"M"+a+","+n+"L0,0M"+a+",-"+n+"L0,0M-"+i+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.2,2),i=wl(e*1.6,2),a=wl(e*.8,2);return of(t,r,"M-"+a+","+n+"L0,0M-"+a+",-"+n+"L0,0M"+i+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.4,2);return of(t,r,"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.4,2);return of(t,r,"M0,"+n+"V-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M"+n+","+n+"L-"+n+",-"+n)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i=wl(e*2,2);return of(t,r,"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i=wl(e*2,2);return of(t,r,"M0,0L-"+n+",-"+i+"H"+n+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2,2),i=wl(e,2);return of(t,r,"M0,0L"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2,2),i=wl(e,2);return of(t,r,"M0,0L-"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i=wl(e*2,2);return of(t,r,"M-"+n+",0H"+n+"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i=wl(e*2,2);return of(t,r,"M-"+n+",0H"+n+"M0,0L-"+n+",-"+i+"H"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2,2),i=wl(e,2);return of(t,r,"M0,-"+i+"V"+i+"M0,0L"+n+",-"+i+"V"+i+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2,2),i=wl(e,2);return of(t,r,"M0,-"+i+"V"+i+"M0,0L-"+n+",-"+i+"V"+i+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,t,r){if(af(t))return nf;var n=Wq/2.5,i=2*e*jq(n),a=2*e*Xq(n);return of(t,r,"M0,0L"+-i+","+a+"L"+i+","+a+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,t,r){if(af(t))return nf;var n=Wq/4,i=2*e*jq(n),a=2*e*Xq(n);return of(t,r,"M0,0L"+-i+","+a+"A "+2*e+","+2*e+" 0 0 1 "+i+","+a+"Z")},backoff:.4,noDot:!0}};function af(e){return e===null}var koe,Coe,Loe,Poe;function of(e,t,r){if((!e||e%360===0)&&!t)return r;if(Loe===e&&Poe===t&&koe===r)return Coe;Loe=e,Poe=t,koe=r;function n(b,v){var k=jq(b),E=Xq(b),A=v[0],L=v[1]+(t||0);return[A*k-L*E,A*E+L*k]}for(var i=e/180*Wq,a=0,o=0,s=xst(r),u="",l=0;l{"use strict";var pd=Jl(),uc=ei(),bst=uc.numberFormat,Sb=ku(),Qq=cd(),sP=$l(),$d=jl(),wst=_c(),t5=uc.strTranslate,lP=Xf(),Tst=jv(),Ast=td(),Sst=Ast.LINE_SPACING,Goe=N1().DESELECTDIM,Mst=lc(),Est=E3(),kst=iv().appendArrayPointValue,Gl=Qoe.exports={};Gl.font=function(e,t){var r=t.variant,n=t.style,i=t.weight,a=t.color,o=t.size,s=t.family,u=t.shadow,l=t.lineposition,f=t.textcase;s&&e.style("font-family",s),o+1&&e.style("font-size",o+"px"),a&&e.call($d.fill,a),i&&e.style("font-weight",i),n&&e.style("font-style",n),r&&e.style("font-variant",r),f&&e.style("text-transform",Zq(Lst(f))),u&&e.style("text-shadow",u==="auto"?lP.makeTextShadow($d.contrast(a)):Zq(u)),l&&e.style("text-decoration-line",Zq(Pst(l)))};function Zq(e){return e==="none"?void 0:e}var Cst={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function Lst(e){return Cst[e]}function Pst(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}Gl.setPosition=function(e,t,r){e.attr("x",t).attr("y",r)};Gl.setSize=function(e,t,r){e.attr("width",t).attr("height",r)};Gl.setRect=function(e,t,r,n,i){e.call(Gl.setPosition,t,r).call(Gl.setSize,n,i)};Gl.translatePoint=function(e,t,r,n){var i=r.c2p(e.x),a=n.c2p(e.y);if(Sb(i)&&Sb(a)&&t.node())t.node().nodeName==="text"?t.attr("x",i).attr("y",a):t.attr("transform",t5(i,a));else return!1;return!0};Gl.translatePoints=function(e,t,r){e.each(function(n){var i=pd.select(this);Gl.translatePoint(n,i,t,r)})};Gl.hideOutsideRangePoint=function(e,t,r,n,i,a){t.attr("display",r.isPtWithinRange(e,i)&&n.isPtWithinRange(e,a)?null:"none")};Gl.hideOutsideRangePoints=function(e,t){if(t._hasClipOnAxisFalse){var r=t.xaxis,n=t.yaxis;e.each(function(i){var a=i[0].trace,o=a.xcalendar,s=a.ycalendar,u=sP.traceIs(a,"bar-like")?".bartext":".point,.textpoint";e.selectAll(u).each(function(l){Gl.hideOutsideRangePoint(l,pd.select(this),r,n,o,s)})})}};Gl.crispRound=function(e,t,r){return!t||!Sb(t)?r||0:e._context.staticPlot?t:t<1?1:Math.round(t)};Gl.singleLineStyle=function(e,t,r,n,i){t.style("fill","none");var a=(((e||[])[0]||{}).trace||{}).line||{},o=r||a.width||0,s=i||a.dash||"";$d.stroke(t,n||a.color),Gl.dashLine(t,s,o)};Gl.lineGroupStyle=function(e,t,r,n){e.style("fill","none").each(function(i){var a=(((i||[])[0]||{}).trace||{}).line||{},o=t||a.width||0,s=n||a.dash||"";pd.select(this).call($d.stroke,r||a.color).call(Gl.dashLine,s,o)})};Gl.dashLine=function(e,t,r){r=+r||0,t=Gl.dashStyle(t,r),e.style({"stroke-dasharray":t,"stroke-width":r+"px"})};Gl.dashStyle=function(e,t){t=+t||1;var r=Math.max(t,3);return e==="solid"?e="":e==="dot"?e=r+"px,"+r+"px":e==="dash"?e=3*r+"px,"+3*r+"px":e==="longdash"?e=5*r+"px,"+5*r+"px":e==="dashdot"?e=3*r+"px,"+r+"px,"+r+"px,"+r+"px":e==="longdashdot"&&(e=5*r+"px,"+2*r+"px,"+r+"px,"+2*r+"px"),e};function Hoe(e,t,r,n){var i=t.fillpattern,a=t.fillgradient,o=Gl.getPatternAttr,s=i&&(o(i.shape,0,"")||o(i.path,0,""));if(s){var u=o(i.bgcolor,0,null),l=o(i.fgcolor,0,null),f=i.fgopacity,c=o(i.size,0,8),h=o(i.solidity,0,.3),d=t.uid;Gl.pattern(e,"point",r,d,s,c,h,void 0,i.fillmode,u,l,f)}else if(a&&a.type!=="none"){var p=a.type,_="scatterfill-"+t.uid;if(n&&(_="legendfill-"+t.uid),!n&&(a.start!==void 0||a.stop!==void 0)){var b,v;p==="horizontal"?(b={x:a.start,y:0},v={x:a.stop,y:0}):p==="vertical"&&(b={x:0,y:a.start},v={x:0,y:a.stop}),b.x=t._xA.c2p(b.x===void 0?t._extremes.x.min[0].val:b.x,!0),b.y=t._yA.c2p(b.y===void 0?t._extremes.y.min[0].val:b.y,!0),v.x=t._xA.c2p(v.x===void 0?t._extremes.x.max[0].val:v.x,!0),v.y=t._yA.c2p(v.y===void 0?t._extremes.y.max[0].val:v.y,!0),e.call(Xoe,r,_,"linear",a.colorscale,"fill",b,v,!0,!1)}else p==="horizontal"&&(p=p+"reversed"),e.call(Gl.gradient,r,_,p,a.colorscale,"fill")}else t.fillcolor&&e.call($d.fill,t.fillcolor)}Gl.singleFillStyle=function(e,t){var r=pd.select(e.node()),n=r.data(),i=((n[0]||[])[0]||{}).trace||{};Hoe(e,i,t,!1)};Gl.fillGroupStyle=function(e,t,r){e.style("stroke-width",0).each(function(n){var i=pd.select(this);n[0].trace&&Hoe(i,n[0].trace,t,r)})};var Roe=Ioe();Gl.symbolNames=[];Gl.symbolFuncs=[];Gl.symbolBackOffs=[];Gl.symbolNeedLines={};Gl.symbolNoDot={};Gl.symbolNoFill={};Gl.symbolList=[];Object.keys(Roe).forEach(function(e){var t=Roe[e],r=t.n;Gl.symbolList.push(r,String(r),e,r+100,String(r+100),e+"-open"),Gl.symbolNames[r]=e,Gl.symbolFuncs[r]=t.f,Gl.symbolBackOffs[r]=t.backoff||0,t.needLine&&(Gl.symbolNeedLines[r]=!0),t.noDot?Gl.symbolNoDot[r]=!0:Gl.symbolList.push(r+200,String(r+200),e+"-dot",r+300,String(r+300),e+"-open-dot"),t.noFill&&(Gl.symbolNoFill[r]=!0)});var zst=Gl.symbolNames.length,Ist="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";Gl.symbolNumber=function(e){if(Sb(e))e=+e;else if(typeof e=="string"){var t=0;e.indexOf("-open")>0&&(t=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(t+=200,e=e.replace("-dot","")),e=Gl.symbolNames.indexOf(e),e>=0&&(e+=t)}return e%100>=zst||e>=400?0:Math.floor(Math.max(e,0))};function Woe(e,t,r,n){var i=e%100;return Gl.symbolFuncs[i](t,r,n)+(e>=200?Ist:"")}var Doe=bst("~f"),joe={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};Gl.gradient=function(e,t,r,n,i,a){var o=joe[n];return Xoe(e,t,r,o.type,i,a,o.start,o.stop,!1,o.reversed)};function Xoe(e,t,r,n,i,a,o,s,u,l){var f=i.length,c;n==="linear"?c={node:"linearGradient",attrs:{x1:o.x,y1:o.y,x2:s.x,y2:s.y,gradientUnits:u?"userSpaceOnUse":"objectBoundingBox"},reversed:l}:n==="radial"&&(c={node:"radialGradient",reversed:l});for(var h=new Array(f),d=0;d=0&&e.i===void 0&&(e.i=a.i),t.style("opacity",n.selectedOpacityFn?n.selectedOpacityFn(e):e.mo===void 0?o.opacity:e.mo),n.ms2mrc){var u;e.ms==="various"||o.size==="various"?u=3:u=n.ms2mrc(e.ms),e.mrc=u,n.selectedSizeFn&&(u=e.mrc=n.selectedSizeFn(e));var l=Gl.symbolNumber(e.mx||o.symbol)||0;e.om=l%200>=100;var f=rN(e,r),c=tN(e,r);t.attr("d",Woe(l,u,f,c))}var h=!1,d,p,_;if(e.so)_=s.outlierwidth,p=s.outliercolor,d=o.outliercolor;else{var b=(s||{}).width;_=(e.mlw+1||b+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?p=e.mlcc=n.lineScale(e.mlc):uc.isArrayOrTypedArray(s.color)?p=$d.defaultLine:p=s.color,uc.isArrayOrTypedArray(o.color)&&(d=$d.defaultLine,h=!0),"mc"in e?d=e.mcc=n.markerScale(e.mc):d=o.color||o.colors||"rgba(0,0,0,0)",n.selectedColorFn&&(d=n.selectedColorFn(e))}if(e.om)t.call($d.stroke,d).style({"stroke-width":(_||1)+"px",fill:"none"});else{t.style("stroke-width",(e.isBlank?0:_)+"px");var v=o.gradient,k=e.mgt;k?h=!0:k=v&&v.type,uc.isArrayOrTypedArray(k)&&(k=k[0],joe[k]||(k=0));var E=o.pattern,A=Gl.getPatternAttr,L=E&&(A(E.shape,e.i,"")||A(E.path,e.i,""));if(k&&k!=="none"){var x=e.mgc;x?h=!0:x=v.color;var C=r.uid;h&&(C+="-"+e.i),Gl.gradient(t,i,C,k,[[0,x],[1,d]],"fill")}else if(L){var M=!1,m=E.fgcolor;!m&&a&&a.color&&(m=a.color,M=!0);var P=A(m,e.i,a&&a.color||null),T=A(E.bgcolor,e.i,null),B=E.fgopacity,F=A(E.size,e.i,8),U=A(E.solidity,e.i,.3);M=M||e.mcc||uc.isArrayOrTypedArray(E.shape)||uc.isArrayOrTypedArray(E.path)||uc.isArrayOrTypedArray(E.bgcolor)||uc.isArrayOrTypedArray(E.fgcolor)||uc.isArrayOrTypedArray(E.size)||uc.isArrayOrTypedArray(E.solidity);var G=r.uid;M&&(G+="-"+e.i),Gl.pattern(t,"point",i,G,L,F,U,e.mcc,E.fillmode,T,P,B)}else uc.isArrayOrTypedArray(d)?$d.fill(t,d[e.i]):$d.fill(t,d);_&&$d.stroke(t,p)}};Gl.makePointStyleFns=function(e){var t={},r=e.marker;return t.markerScale=Gl.tryColorscale(r,""),t.lineScale=Gl.tryColorscale(r,"line"),sP.traceIs(e,"symbols")&&(t.ms2mrc=Mst.isBubble(e)?Est(e):function(){return(r.size||6)/2}),e.selectedpoints&&uc.extendFlat(t,Gl.makeSelectedPointStyleFns(e)),t};Gl.makeSelectedPointStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.marker||{},a=r.marker||{},o=n.marker||{},s=i.opacity,u=a.opacity,l=o.opacity,f=u!==void 0,c=l!==void 0;(uc.isArrayOrTypedArray(s)||f||c)&&(t.selectedOpacityFn=function(A){var L=A.mo===void 0?i.opacity:A.mo;return A.selected?f?u:L:c?l:Goe*L});var h=i.color,d=a.color,p=o.color;(d||p)&&(t.selectedColorFn=function(A){var L=A.mcc||h;return A.selected?d||L:p||L});var _=i.size,b=a.size,v=o.size,k=b!==void 0,E=v!==void 0;return sP.traceIs(e,"symbols")&&(k||E)&&(t.selectedSizeFn=function(A){var L=A.mrc||_/2;return A.selected?k?b/2:L:E?v/2:L}),t};Gl.makeSelectedTextStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.textfont||{},a=r.textfont||{},o=n.textfont||{},s=i.color,u=a.color,l=o.color;return t.selectedTextColorFn=function(f){var c=f.tc||s;return f.selected?u||c:l||(u?c:$d.addOpacity(c,Goe))},t};Gl.selectedPointStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=Gl.makeSelectedPointStyleFns(t),n=t.marker||{},i=[];r.selectedOpacityFn&&i.push(function(a,o){a.style("opacity",r.selectedOpacityFn(o))}),r.selectedColorFn&&i.push(function(a,o){$d.fill(a,r.selectedColorFn(o))}),r.selectedSizeFn&&i.push(function(a,o){var s=o.mx||n.symbol||0,u=r.selectedSizeFn(o);a.attr("d",Woe(Gl.symbolNumber(s),u,rN(o,t),tN(o,t))),o.mrc2=u}),i.length&&e.each(function(a){for(var o=pd.select(this),s=0;s0?r:0}Gl.textPointStyle=function(e,t,r){if(e.size()){var n;if(t.selectedpoints){var i=Gl.makeSelectedTextStyleFns(t);n=i.selectedTextColorFn}var a=t.texttemplate,o=r._fullLayout;e.each(function(s){var u=pd.select(this),l=a?uc.extractOption(s,t,"txt","texttemplate"):uc.extractOption(s,t,"tx","text");if(!l&&l!==0){u.remove();return}if(a){var f=t._module.formatLabels,c=f?f(s,t,o):{},h={};kst(h,t,s.i),l=uc.texttemplateString({data:[h,s,t._meta],fallback:t.texttemplatefallback,labels:c,locale:o._d3locale,template:l})}var d=s.tp||t.textposition,p=Yoe(s,t),_=n?n(s):s.tc||t.textfont.color;u.call(Gl.font,{family:s.tf||t.textfont.family,weight:s.tw||t.textfont.weight,style:s.ty||t.textfont.style,variant:s.tv||t.textfont.variant,textcase:s.tC||t.textfont.textcase,lineposition:s.tE||t.textfont.lineposition,shadow:s.tS||t.textfont.shadow,size:p,color:_}).text(l).call(lP.convertToTspans,r).call(Zoe,d,p,s.mrc)})}};Gl.selectedTextStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=Gl.makeSelectedTextStyleFns(t);e.each(function(n){var i=pd.select(this),a=r.selectedTextColorFn(n),o=n.tp||t.textposition,s=Yoe(n,t);$d.fill(i,a);var u=sP.traceIs(t,"bar-like");Zoe(i,o,s,n.mrc2||n.mrc,u)})}};var Foe=.5;Gl.smoothopen=function(e,t){if(e.length<3)return"M"+e.join("L");var r="M"+e[0],n=[],i;for(i=1;i=u||A>=f&&A<=u)&&(L<=c&&L>=l||L>=c&&L<=l)&&(e=[A,L])}return e}Gl.applyBackoff=$oe;Gl.makeTester=function(){var e=uc.ensureSingleById(pd.select("body"),"svg","js-plotly-tester",function(r){r.attr(Tst.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),t=uc.ensureSingle(e,"path","js-reference-point",function(r){r.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});Gl.tester=e,Gl.testref=t};Gl.savedBBoxes={};var Kq=0,Fst=1e4;Gl.bBox=function(e,t,r){r||(r=Boe(e));var n;if(r){if(n=Gl.savedBBoxes[r],n)return uc.extendFlat({},n)}else if(e.childNodes.length===1){var i=e.childNodes[0];if(r=Boe(i),r){var a=+i.getAttribute("x")||0,o=+i.getAttribute("y")||0,s=i.getAttribute("transform");if(!s){var u=Gl.bBox(i,!1,r);return a&&(u.left+=a,u.right+=a),o&&(u.top+=o,u.bottom+=o),u}if(r+="~"+a+"~"+o+"~"+s,n=Gl.savedBBoxes[r],n)return uc.extendFlat({},n)}}var l,f;t?l=e:(f=Gl.tester.node(),l=e.cloneNode(!0),f.appendChild(l)),pd.select(l).attr("transform",null).call(lP.positionText,0,0);var c=l.getBoundingClientRect(),h=Gl.testref.node().getBoundingClientRect();t||f.removeChild(l);var d={height:c.height,width:c.width,left:c.left-h.left,top:c.top-h.top,right:c.right-h.left,bottom:c.bottom-h.top};return Kq>=Fst&&(Gl.savedBBoxes={},Kq=0),r&&(Gl.savedBBoxes[r]=d),Kq++,uc.extendFlat({},d)};function Boe(e){var t=e.getAttribute("data-unformatted");if(t!==null)return t+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}Gl.setClipUrl=function(e,t,r){e.attr("clip-path",eN(t,r))};function eN(e,t){if(!e)return null;var r=t._context,n=r._exportedPlot?"":r._baseUrl||"";return n?"url('"+n+"#"+e+"')":"url(#"+e+")"}Gl.getTranslate=function(e){var t=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",n=e[r]("transform")||"",i=n.replace(t,function(a,o,s){return[o,s].join(" ")}).split(" ");return{x:+i[0]||0,y:+i[1]||0}};Gl.setTranslate=function(e,t,r){var n=/(\btranslate\(.*?\);?)/,i=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",o=e[i]("transform")||"";return t=t||0,r=r||0,o=o.replace(n,"").trim(),o+=t5(t,r),o=o.trim(),e[a]("transform",o),o};Gl.getScale=function(e){var t=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",n=e[r]("transform")||"",i=n.replace(t,function(a,o,s){return[o,s].join(" ")}).split(" ");return{x:+i[0]||1,y:+i[1]||1}};Gl.setScale=function(e,t,r){var n=/(\bscale\(.*?\);?)/,i=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",o=e[i]("transform")||"";return t=t||1,r=r||1,o=o.replace(n,"").trim(),o+="scale("+t+","+r+")",o=o.trim(),e[a]("transform",o),o};var Bst=/\s*sc.*/;Gl.setPointGroupScale=function(e,t,r){if(t=t||1,r=r||1,!!e){var n=t===1&&r===1?"":"scale("+t+","+r+")";e.each(function(){var i=(this.getAttribute("transform")||"").replace(Bst,"");i+=n,i=i.trim(),this.setAttribute("transform",i)})}};var Ost=/translate\([^)]*\)\s*$/;Gl.setTextPointsScale=function(e,t,r){e&&e.each(function(){var n,i=pd.select(this),a=i.select("text");if(a.node()){var o=parseFloat(a.attr("x")||0),s=parseFloat(a.attr("y")||0),u=(i.attr("transform")||"").match(Ost);t===1&&r===1?n=[]:n=[t5(o,s),"scale("+t+","+r+")",t5(-o,-s)],u&&n.push(u),i.attr("transform",n.join(""))}})};function tN(e,t){var r;return e&&(r=e.mf),r===void 0&&(r=t.marker&&t.marker.standoff||0),!t._geo&&!t._xA?-r:r}Gl.getMarkerStandoff=tN;var e5=Math.atan2,wb=Math.cos,C3=Math.sin;function Ooe(e,t){var r=t[0],n=t[1];return[r*wb(e)-n*C3(e),r*C3(e)+n*wb(e)]}var qoe,Noe,Uoe,Voe,Jq,$q;function rN(e,t){var r=e.ma;r===void 0&&(r=t.marker.angle,(!r||uc.isArrayOrTypedArray(r))&&(r=0));var n,i,a=t.marker.angleref;if(a==="previous"||a==="north"){if(t._geo){var o=t._geo.project(e.lonlat);n=o[0],i=o[1]}else{var s=t._xA,u=t._yA;if(s&&u)n=s.c2p(e.x),i=u.c2p(e.y);else return 90}if(t._geo){var l=e.lonlat[0],f=e.lonlat[1],c=t._geo.project([l,f+1e-5]),h=t._geo.project([l+1e-5,f]),d=e5(h[1]-i,h[0]-n),p=e5(c[1]-i,c[0]-n),_;if(a==="north")_=r/180*Math.PI;else if(a==="previous"){var b=l/180*Math.PI,v=f/180*Math.PI,k=qoe/180*Math.PI,E=Noe/180*Math.PI,A=k-b,L=wb(E)*C3(A),x=C3(E)*wb(v)-wb(E)*C3(v)*wb(A);_=-e5(L,x)-Math.PI,qoe=l,Noe=f}var C=Ooe(d,[wb(_),0]),M=Ooe(p,[C3(_),0]);r=e5(C[1]+M[1],C[0]+M[0])/Math.PI*180,a==="previous"&&!($q===t.uid&&e.i===Jq+1)&&(r=null)}if(a==="previous"&&!t._geo)if($q===t.uid&&e.i===Jq+1&&Sb(n)&&Sb(i)){var m=n-Uoe,P=i-Voe,T=t.line&&t.line.shape||"",B=T.slice(T.length-1);B==="h"&&(P=0),B==="v"&&(m=0),r+=e5(P,m)/Math.PI*180+90}else r=null}return Uoe=n,Voe=i,Jq=e.i,$q=t.uid,r}Gl.getMarkerAngle=rN});var Eb=Ae((vor,ise)=>{"use strict";var L3=Jl(),qst=ku(),Nst=Cc(),iN=$l(),Mb=ei(),ese=Mb.strTranslate,uP=Mu(),fP=jl(),P3=Xf(),tse=N1(),Ust=td().OPPOSITE_SIDE,rse=/ [XY][0-9]* /,nN=1.6,aN=1.6;function Vst(e,t,r){var n=e._fullLayout,i=r.propContainer,a=r.propName,o=r.placeholder,s=r.traceIndex,u=r.avoid||{},l=r.attributes,f=r.transform,c=r.containerGroup,h=1,d=i.title,p=(d&&d.text?d.text:"").trim(),_=!1,b=d&&d.font?d.font:{},v=b.family,k=b.size,E=b.color,A=b.weight,L=b.style,x=b.variant,C=b.textcase,M=b.lineposition,m=b.shadow,P=r.subtitlePropName,T=!!P,B=r.subtitlePlaceholder,F=(i.title||{}).subtitle||{text:"",font:{}},U=(F.text||"").trim(),G=!1,j=1,H=F.font,N=H.family,W=H.size,re=H.color,ae=H.weight,be=H.style,ze=H.variant,Ce=H.textcase,de=H.lineposition,te=H.shadow,ke;a==="title.text"?ke="titleText":a.indexOf("axis")!==-1?ke="axisTitleText":a.indexOf("colorbar")!==-1&&(ke="colorbarTitleText");var Ee=e._context.edits[ke];function Me(wt,St){return wt===void 0||St===void 0?!1:wt.replace(rse," % ")===St.replace(rse," % ")}p===""?h=0:Me(p,o)&&(Ee||(p=""),h=.2,_=!0),T&&(U===""?j=0:Me(U,B)&&(Ee||(U=""),j=.2,G=!0)),r._meta?p=Mb.templateString(p,r._meta):n._meta&&(p=Mb.templateString(p,n._meta));var Ue=p||U||Ee,De;c||(c=Mb.ensureSingle(n._infolayer,"g","g-"+t),De=n._hColorbarMoveTitle);var ye=c.selectAll("text."+t).data(Ue?[0]:[]);ye.enter().append("text"),ye.text(p).attr("class",t),ye.exit().remove();var qe=null,ce=t+"-subtitle",Je=U||Ee;if(T&&(qe=c.selectAll("text."+ce).data(Je?[0]:[]),qe.enter().append("text"),qe.text(U).attr("class",ce),qe.exit().remove()),!Ue)return c;function nt(wt,St){Mb.syncOrAsync([gt,Nt],{title:wt,subtitle:St})}function gt(wt){var St=wt.title,Dt=wt.subtitle,Zt;!f&&De&&(f={}),f?(Zt="",f.rotate&&(Zt+="rotate("+[f.rotate,l.x,l.y]+")"),(f.offset||De)&&(Zt+=ese(0,(f.offset||0)-(De||0)))):Zt=null,St.attr("transform",Zt);function Et(He){if(He){var it=L3.select(He.node().parentNode).select("."+ce);if(!it.empty()){var et=He.node().getBBox();if(et.height){var It=et.y+et.height+nN*W;it.attr("y",It)}}}}if(St.style("opacity",h*fP.opacity(E)).call(uP.font,{color:fP.rgb(E),size:L3.round(k,2),family:v,weight:A,style:L,variant:x,textcase:C,shadow:m,lineposition:M}).attr(l).call(P3.convertToTspans,e,Et),Dt&&!Dt.empty()){var Te=c.select("."+t+"-math-group"),ot=St.node().getBBox(),Tt=Te.node()?Te.node().getBBox():void 0,vt=Tt?Tt.y+Tt.height+nN*W:ot.y+ot.height+aN*W,Ye=Mb.extendFlat({},l,{y:vt});Dt.attr("transform",Zt),Dt.style("opacity",j*fP.opacity(re)).call(uP.font,{color:fP.rgb(re),size:L3.round(W,2),family:N,weight:ae,style:be,variant:ze,textcase:Ce,shadow:te,lineposition:de}).attr(Ye).call(P3.convertToTspans,e)}return Nst.previousPromises(e)}function Nt(wt){var St=wt.title,Dt=L3.select(St.node().parentNode);if(u&&u.selection&&u.side&&p){Dt.attr("transform",null);var Zt=Ust[u.side],Et=u.side==="left"||u.side==="top"?-1:1,Te=qst(u.pad)?u.pad:2,ot=uP.bBox(Dt.node()),Tt={t:0,b:0,l:0,r:0},vt=e._fullLayout._reservedMargin;for(var Ye in vt)for(var He in vt[Ye]){var it=vt[Ye][He];Tt[He]=Math.max(Tt[He],it)}var et={left:Tt.l,top:Tt.t,right:n.width-Tt.r,bottom:n.height-Tt.b},It=u.maxShift||Et*(et[u.side]-ot[u.side]),Yt=0;if(It<0)Yt=It;else{var cr=u.offsetLeft||0,_r=u.offsetTop||0;ot.left-=cr,ot.right-=cr,ot.top-=_r,ot.bottom-=_r,u.selection.each(function(){var Ut=uP.bBox(this);Mb.bBoxIntersect(ot,Ut,Te)&&(Yt=Math.max(Yt,Et*(Ut[u.side]-ot[Zt])+Te))}),Yt=Math.min(It,Yt),i._titleScoot=Math.abs(Yt)}if(Yt>0||It<0){var yr={left:[-Yt,0],right:[Yt,0],top:[0,-Yt],bottom:[0,Yt]}[u.side];Dt.attr("transform",ese(yr[0],yr[1]))}}}ye.call(nt,qe);function at(wt,St){wt.text(St).on("mouseover.opacity",function(){L3.select(this).transition().duration(tse.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){L3.select(this).transition().duration(tse.HIDE_PLACEHOLDER).style("opacity",0)})}if(Ee&&(p?ye.on(".opacity",null):(at(ye,o),_=!0),ye.call(P3.makeEditable,{gd:e}).on("edit",function(wt){s!==void 0?iN.call("_guiRestyle",e,a,wt,s):iN.call("_guiRelayout",e,a,wt)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(nt)}).on("input",function(wt){this.text(wt||" ").call(P3.positionText,l.x,l.y)}),T)){if(T&&!p){var Ke=ye.node().getBBox(),Ct=Ke.y+Ke.height+aN*W;qe.attr("y",Ct)}U?qe.on(".opacity",null):(at(qe,B),G=!0),qe.call(P3.makeEditable,{gd:e}).on("edit",function(wt){iN.call("_guiRelayout",e,"title.subtitle.text",wt)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(nt)}).on("input",function(wt){this.text(wt||" ").call(P3.positionText,qe.attr("x"),qe.attr("y"))})}return ye.classed("js-placeholder",_),qe&&!qe.empty()&&qe.classed("js-placeholder",G),c}ise.exports={draw:Vst,SUBTITLE_PADDING_EM:aN,SUBTITLE_PADDING_MATHJAX_EM:nN}});var gy=Ae((mor,lse)=>{"use strict";var Gst=Jl(),Hst=t3().utcFormat,Mc=ei(),Wst=Mc.numberFormat,my=ku(),n_=Mc.cleanNumber,jst=Mc.ms2DateTime,nse=Mc.dateTime2ms,yy=Mc.ensureNumber,ase=Mc.isArrayOrTypedArray,a_=rf(),cP=a_.FP_SAFE,wm=a_.BADNUM,Xst=a_.LOG_CLIP,Zst=a_.ONEWEEK,hP=a_.ONEDAY,dP=a_.ONEHOUR,ose=a_.ONEMIN,sse=a_.ONESEC,pP=Wc(),yP=dd(),vP=yP.HOUR_PATTERN,mP=yP.WEEKDAY_PATTERN;function r5(e){return Math.pow(10,e)}function oN(e){return e!=null}lse.exports=function(t,r){r=r||{};var n=t._id||"x",i=n.charAt(0);function a(A,L){if(A>0)return Math.log(A)/Math.LN10;if(A<=0&&L&&t.range&&t.range.length===2){var x=t.range[0],C=t.range[1];return .5*(x+C-2*Xst*Math.abs(x-C))}else return wm}function o(A,L,x,C){if((C||{}).msUTC&&my(A))return+A;var M=nse(A,x||t.calendar);if(M===wm)if(my(A)){A=+A;var m=Math.floor(Mc.mod(A+.05,1)*10),P=Math.round(A-m/10);M=nse(new Date(P))+m/10}else return wm;return M}function s(A,L,x){return jst(A,L,x||t.calendar)}function u(A){return t._categories[Math.round(A)]}function l(A){if(oN(A)){if(t._categoriesMap===void 0&&(t._categoriesMap={}),t._categoriesMap[A]!==void 0)return t._categoriesMap[A];t._categories.push(typeof A=="number"?String(A):A);var L=t._categories.length-1;return t._categoriesMap[A]=L,L}return wm}function f(A,L){for(var x=new Array(L),C=0;Ct.range[1]&&(x=!x);for(var C=x?-1:1,M=C*A,m=0,P=0;PB)m=P+1;else{m=M<(T+B)/2?P:P+1;break}}var F=t._B[m]||0;return isFinite(F)?p(A,t._m2,F):0},v=function(A){var L=t._rangebreaks.length;if(!L)return _(A,t._m,t._b);for(var x=0,C=0;Ct._rangebreaks[C].pmax&&(x=C+1);return _(A,t._m2,t._B[x])}}t.c2l=t.type==="log"?a:yy,t.l2c=t.type==="log"?r5:yy,t.l2p=b,t.p2l=v,t.c2p=t.type==="log"?function(A,L){return b(a(A,L))}:b,t.p2c=t.type==="log"?function(A){return r5(v(A))}:v,["linear","-"].indexOf(t.type)!==-1?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=n_,t.c2d=t.c2r=t.l2d=t.l2r=yy,t.d2p=t.r2p=function(A){return t.l2p(n_(A))},t.p2d=t.p2r=v,t.cleanPos=yy):t.type==="log"?(t.d2r=t.d2l=function(A,L){return a(n_(A),L)},t.r2d=t.r2c=function(A){return r5(n_(A))},t.d2c=t.r2l=n_,t.c2d=t.l2r=yy,t.c2r=a,t.l2d=r5,t.d2p=function(A,L){return t.l2p(t.d2r(A,L))},t.p2d=function(A){return r5(v(A))},t.r2p=function(A){return t.l2p(n_(A))},t.p2r=v,t.cleanPos=yy):t.type==="date"?(t.d2r=t.r2d=Mc.identity,t.d2c=t.r2c=t.d2l=t.r2l=o,t.c2d=t.c2r=t.l2d=t.l2r=s,t.d2p=t.r2p=function(A,L,x){return t.l2p(o(A,0,x))},t.p2d=t.p2r=function(A,L,x){return s(v(A),L,x)},t.cleanPos=function(A){return Mc.cleanDate(A,wm,t.calendar)}):t.type==="category"?(t.d2c=t.d2l=l,t.r2d=t.c2d=t.l2d=u,t.d2r=t.d2l_noadd=h,t.r2c=function(A){var L=d(A);return L!==void 0?L:t.fraction2r(.5)},t.l2r=t.c2r=yy,t.r2l=d,t.d2p=function(A){return t.l2p(t.r2c(A))},t.p2d=function(A){return u(v(A))},t.r2p=t.d2p,t.p2r=v,t.cleanPos=function(A){return typeof A=="string"&&A!==""?A:yy(A)}):t.type==="multicategory"&&(t.r2d=t.c2d=t.l2d=u,t.d2r=t.d2l_noadd=h,t.r2c=function(A){var L=h(A);return L!==void 0?L:t.fraction2r(.5)},t.r2c_just_indices=c,t.l2r=t.c2r=yy,t.r2l=h,t.d2p=function(A){return t.l2p(t.r2c(A))},t.p2d=function(A){return u(v(A))},t.r2p=t.d2p,t.p2r=v,t.cleanPos=function(A){return Array.isArray(A)||typeof A=="string"&&A!==""?A:yy(A)},t.setupMultiCategory=function(A){var L=t._traceIndices,x,C,M=t._matchGroup;if(M&&t._categories.length===0){for(var m in M)if(m!==n){var P=r[pP.id2name(m)];L=L.concat(P._traceIndices)}}var T=[[0,{}],[0,{}]],B=[];for(x=0;xP[1]&&(C[m?0:1]=x),C[0]===C[1]){var T=t.l2r(L),B=t.l2r(x);if(L!==void 0){var F=T+1;x!==void 0&&(F=Math.min(F,B)),C[m?1:0]=F}if(x!==void 0){var U=B+1;L!==void 0&&(U=Math.max(U,T)),C[m?0:1]=U}}}},t.cleanRange=function(A,L){t._cleanRange(A,L),t.limitRange(A)},t._cleanRange=function(A,L){L||(L={}),A||(A="range");var x=Mc.nestedProperty(t,A).get(),C,M;if(t.type==="date"?M=Mc.dfltRange(t.calendar):i==="y"?M=yP.DFLTRANGEY:t._name==="realaxis"?M=[0,1]:M=L.dfltRange||yP.DFLTRANGEX,M=M.slice(),(t.rangemode==="tozero"||t.rangemode==="nonnegative")&&(M[0]=0),!x||x.length!==2){Mc.nestedProperty(t,A).set(M);return}var m=x[0]===null,P=x[1]===null;for(t.type==="date"&&!t.autorange&&(x[0]=Mc.cleanDate(x[0],wm,t.calendar),x[1]=Mc.cleanDate(x[1],wm,t.calendar)),C=0;C<2;C++)if(t.type==="date"){if(!Mc.isDateTime(x[C],t.calendar)){t[A]=M;break}if(t.r2l(x[0])===t.r2l(x[1])){var T=Mc.constrain(t.r2l(x[0]),Mc.MIN_MS+1e3,Mc.MAX_MS-1e3);x[0]=t.l2r(T-1e3),x[1]=t.l2r(T+1e3);break}}else{if(!my(x[C]))if(!(m||P)&&my(x[1-C]))x[C]=x[1-C]*(C?10:.1);else{t[A]=M;break}if(x[C]<-cP?x[C]=-cP:x[C]>cP&&(x[C]=cP),x[0]===x[1]){var B=Math.max(1,Math.abs(x[0]*1e-6));x[0]-=B,x[1]+=B}}},t.setScale=function(A){var L=r._size;if(t.overlaying){var x=pP.getFromId({_fullLayout:r},t.overlaying);t.domain=x.domain}var C=A&&t._r?"_r":"range",M=t.calendar;t.cleanRange(C);var m=t.r2l(t[C][0],M),P=t.r2l(t[C][1],M),T=i==="y";if(T?(t._offset=L.t+(1-t.domain[1])*L.h,t._length=L.h*(t.domain[1]-t.domain[0]),t._m=t._length/(m-P),t._b=-t._m*P):(t._offset=L.l+t.domain[0]*L.w,t._length=L.w*(t.domain[1]-t.domain[0]),t._m=t._length/(P-m),t._b=-t._m*m),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks){var B,F;if(t._rangebreaks=t.locateBreaks(Math.min(m,P),Math.max(m,P)),t._rangebreaks.length){for(B=0;BP&&(U=!U),U&&t._rangebreaks.reverse();var G=U?-1:1;for(t._m2=G*t._length/(Math.abs(P-m)-t._lBreaks),t._B.push(-t._m2*(T?P:m)),B=0;BM&&(M+=7,mM&&(M+=24,m=C&&m=C&&A=te.min&&(bete.max&&(te.max=ze),Ce=!1)}Ce&&P.push({min:be,max:ze})}};for(x=0;x{"use strict";var use=ku(),sN=ei(),Yst=rf().BADNUM,gP=sN.isArrayOrTypedArray,Kst=sN.isDateTime,Jst=sN.cleanNumber,fse=Math.round;hse.exports=function(t,r,n){var i=t,a=n.noMultiCategory;if(gP(i)&&!i.length)return"-";if(!a&&rlt(i))return"multicategory";if(a&&Array.isArray(i[0])){for(var o=[],s=0;sa*2}function cse(e){return Math.max(1,(e-1)/1e3)}function tlt(e,t){for(var r=e.length,n=cse(r),i=0,a=0,o={},s=0;si*2}function rlt(e){return gP(e[0])&&gP(e[1])}});var Tm=Ae((gor,xse)=>{"use strict";var ilt=Jl(),mse=ku(),o_=ei(),_P=rf().FP_SAFE,nlt=$l(),alt=Mu(),yse=Wc(),olt=yse.getFromId,slt=yse.isLinked;xse.exports={applyAutorangeOptions:_se,getAutoRange:lN,makePadFn:uN,doAutoRange:ult,findExtremes:flt,concatExtremes:hN};function lN(e,t){var r,n,i=[],a=e._fullLayout,o=uN(a,t,0),s=uN(a,t,1),u=hN(e,t),l=u.min,f=u.max;if(l.length===0||f.length===0)return o_.simpleMap(t.range,t.r2l);var c=l[0].val,h=f[0].val;for(r=1;r0&&(P=E-o(x)-s(C),P>A?T/P>L&&(M=x,m=C,L=T/P):T/E>L&&(M={val:x.val,nopad:1},m={val:C.val,nopad:1},L=T/E));function B(H,N){return Math.max(H,s(N))}if(c===h){var F=c-1,U=c+1;if(v)if(c===0)i=[0,1];else{var G=(c>0?f:l).reduce(B,0),j=c/(1-Math.min(.5,G/E));i=c>0?[0,j]:[j,0]}else k?i=[Math.max(0,F),Math.max(1,U)]:i=[F,U]}else v?(M.val>=0&&(M={val:0,nopad:1}),m.val<=0&&(m={val:0,nopad:1})):k&&(M.val-L*o(M)<0&&(M={val:0,nopad:1}),m.val<=0&&(m={val:1,nopad:1})),L=(m.val-M.val-dse(t,x.val,C.val))/(E-o(M)-s(m)),i=[M.val-L*o(M),m.val+L*s(m)];return i=_se(i,t),t.limitRange&&t.limitRange(),p&&i.reverse(),o_.simpleMap(i,t.l2r||Number)}function dse(e,t,r){var n=0;if(e.rangebreaks)for(var i=e.locateBreaks(t,r),a=0;a0?r.ppadplus:r.ppadminus)||r.ppad||0),x=A((e._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),C=A(r.vpadplus||r.vpad),M=A(r.vpadminus||r.vpad);if(!l){if(k=1/0,E=-1/0,u)for(c=0;c0&&(k=h),h>E&&h<_P&&(E=h);else for(c=0;c-_P&&(k=h),h>E&&h<_P&&(E=h);t=[k,E],a=2}var m={tozero:s,extrapad:o};function P(B){d=t[B],mse(d)&&(b=L(B),v=x(B),f?(p=e.c2l(d)-M(B),_=e.c2l(d)+C(B)):(k=d-M(B),E=d+C(B),u&&k=T;c--)P(c);return{min:n,max:i,opts:r}}function fN(e,t,r,n){gse(e,t,r,n,clt)}function cN(e,t,r,n){gse(e,t,r,n,hlt)}function gse(e,t,r,n,i){for(var a=n.tozero,o=n.extrapad,s=!0,u=0;u=r&&(l.extrapad||!o)){s=!1;break}else i(t,l.val)&&l.pad<=r&&(o||!l.extrapad)&&(e.splice(u,1),u--)}if(s){var f=a&&t===0;e.push({val:t,pad:f?0:r,extrapad:f?!1:o})}}function vse(e){return mse(e)&&Math.abs(e)<_P}function clt(e,t){return e<=t}function hlt(e,t){return e>=t}function dlt(e,t){var r=t.autorangeoptions;return r&&r.minallowed!==void 0&&xP(t,r.minallowed,r.maxallowed)?r.minallowed:r&&r.clipmin!==void 0&&xP(t,r.clipmin,r.clipmax)?Math.max(e,t.d2l(r.clipmin)):e}function plt(e,t){var r=t.autorangeoptions;return r&&r.maxallowed!==void 0&&xP(t,r.minallowed,r.maxallowed)?r.maxallowed:r&&r.clipmax!==void 0&&xP(t,r.clipmin,r.clipmax)?Math.min(e,t.d2l(r.clipmax)):e}function xP(e,t,r){return t!==void 0&&r!==void 0?(t=e.d2l(t),r=e.d2l(r),t=u&&(a=u,r=u),o<=u&&(o=u,n=u)}}return r=dlt(r,t),n=plt(n,t),[r,n]}});var wu=Ae((_or,Gse)=>{"use strict";var b0=Jl(),Oh=ku(),I3=Cc(),n5=$l(),Ou=ei(),R3=Ou.strTranslate,kb=Xf(),vlt=Eb(),a5=jl(),Xv=Mu(),mlt=Dd(),bse=Fq(),Qd=rf(),ylt=Qd.ONEMAXYEAR,TP=Qd.ONEAVGYEAR,AP=Qd.ONEMINYEAR,glt=Qd.ONEMAXQUARTER,mN=Qd.ONEAVGQUARTER,SP=Qd.ONEMINQUARTER,_lt=Qd.ONEMAXMONTH,D3=Qd.ONEAVGMONTH,MP=Qd.ONEMINMONTH,Zv=Qd.ONEWEEK,Bp=Qd.ONEDAY,s_=Bp/2,xy=Qd.ONEHOUR,o5=Qd.ONEMIN,EP=Qd.ONESEC,xlt=Qd.ONEMILLI,blt=Qd.ONEMICROSEC,Cb=Qd.MINUS_SIGN,CP=Qd.BADNUM,yN={K:"zeroline"},gN={K:"gridline",L:"path"},_N={K:"minor-gridline",L:"path"},zse={K:"tick",L:"path"},wse={K:"tick",L:"text"},Tse={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},LP=td(),i5=LP.MID_SHIFT,Lb=LP.CAP_SHIFT,s5=LP.LINE_SPACING,wlt=LP.OPPOSITE_SIDE,kP=3,al=Gse.exports={};al.setConvert=gy();var Tlt=z3(),Sg=Wc(),Alt=Sg.idSort,Slt=Sg.isLinked;al.id2name=Sg.id2name;al.name2id=Sg.name2id;al.cleanId=Sg.cleanId;al.list=Sg.list;al.listIds=Sg.listIds;al.getFromId=Sg.getFromId;al.getFromTrace=Sg.getFromTrace;var Ise=Tm();al.getAutoRange=Ise.getAutoRange;al.findExtremes=Ise.findExtremes;var Mlt=1e-4;function TN(e){var t=(e[1]-e[0])*Mlt;return[e[0]-t,e[1]+t]}al.coerceRef=function(e,t,r,n,i,a){var o=n.charAt(n.length-1),s=r._fullLayout._subplots[o+"axis"],u=n+"ref",l={};return i||(i=s[0]||(typeof a=="string"?a:a[0])),a||(a=i),s=s.concat(s.map(function(f){return f+" domain"})),l[u]={valType:"enumerated",values:s.concat(a?typeof a=="string"?[a]:a:[]),dflt:i},Ou.coerce(e,t,l,u)};al.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};al.coercePosition=function(e,t,r,n,i,a){var o,s,u=al.getRefType(n);if(u!=="range")o=Ou.ensureNumber,s=r(i,a);else{var l=al.getFromId(t,n);a=l.fraction2r(a),s=r(i,a),o=l.cleanPos}e[i]=o(s)};al.cleanPosition=function(e,t,r){var n=r==="paper"||r==="pixel"?Ou.ensureNumber:al.getFromId(t,r).cleanPos;return n(e)};al.redrawComponents=function(e,t){t=t||al.listIds(e);var r=e._fullLayout;function n(i,a,o,s){for(var u=n5.getComponentMethod(i,a),l={},f=0;f2e-6||((r-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};al.saveRangeInitial=function(e,t){for(var r=al.list(e,"",!0),n=!1,i=0;ic*.3||l(n)||l(i))){var h=r.dtick/2;e+=e+ho){var s=Number(r.substr(1));a.exactYears>o&&s%12===0?e=al.tickIncrement(e,"M6","reverse")+Bp*1.5:a.exactMonths>o?e=al.tickIncrement(e,"M1","reverse")+Bp*15.5:e-=s_;var u=al.tickIncrement(e,r);if(u<=n)return u}return e}al.prepMinorTicks=function(e,t,r){if(!t.minor.dtick){delete e.dtick;var n=t.dtick&&Oh(t._tmin),i;if(n){var a=al.tickIncrement(t._tmin,t.dtick,!0);i=[t._tmin,a*.99+t._tmin*.01]}else{var o=Ou.simpleMap(t.range,t.r2l);i=[o[0],.8*o[0]+.2*o[1]]}if(e.range=Ou.simpleMap(i,t.l2r),e._isMinor=!0,al.prepTicks(e,r),n){var s=Oh(t.dtick),u=Oh(e.dtick),l=s?t.dtick:+t.dtick.substring(1),f=u?e.dtick:+e.dtick.substring(1);s&&u?dN(l,f)?l===2*Zv&&f===2*Bp&&(e.dtick=Zv):l===2*Zv&&f===3*Bp?e.dtick=Zv:l===Zv&&!(t._input.minor||{}).nticks?e.dtick=Bp:Mse(l/f,2.5)?e.dtick=l/2:e.dtick=l:String(t.dtick).charAt(0)==="M"?u?e.dtick="M1":dN(l,f)?l>=12&&f===2&&(e.dtick="M3"):e.dtick=t.dtick:String(e.dtick).charAt(0)==="L"?String(t.dtick).charAt(0)==="L"?dN(l,f)||(e.dtick=Mse(l/f,2.5)?t.dtick/2:t.dtick):e.dtick="D1":e.dtick==="D2"&&+t.dtick>1&&(e.dtick=1)}e.range=t.range}t.minor._tick0Init===void 0&&(e.tick0=t.tick0)};function dN(e,t){return Math.abs((e/t+.5)%1-.5)<.001}function Mse(e,t){return Math.abs(e/t-1)<.001}al.prepTicks=function(e,t){var r=Ou.simpleMap(e.range,e.r2l,void 0,void 0,t);if(e.tickmode==="auto"||!e.dtick){var n=e.nticks,i;n||(e.type==="category"||e.type==="multicategory"?(i=e.tickfont?Ou.bigFont(e.tickfont.size||12):15,n=e._length/i):(i=e._id.charAt(0)==="y"?40:80,n=Ou.constrain(e._length/i,4,9)+1),e._name==="radialaxis"&&(n*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(n*=100),e._roughDTick=Math.abs(r[1]-r[0])/n,al.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(a=n-1,o=n):(a=n,o=n);var s=e[a].value,u=e[o].value,l=Math.abs(u-s),f=r||l,c=0;f>=AP?l>=AP&&l<=ylt?c=l:c=TP:r===mN&&f>=SP?l>=SP&&l<=glt?c=l:c=mN:f>=MP?l>=MP&&l<=_lt?c=l:c=D3:r===Zv&&f>=Zv?c=Zv:f>=Bp?c=Bp:r===s_&&f>=s_?c=s_:r===xy&&f>=xy&&(c=xy);var h;c>=l&&(c=l,h=!0);var d=i+c;if(t.rangebreaks&&c>0){for(var p=84,_=0,b=0;bZv&&(c=l)}(c>0||n===0)&&(e[n].periodX=i+c/2)}}al.calcTicks=function(t,r){for(var n=t.type,i=t.calendar,a=t.ticklabelstep,o=t.ticklabelmode==="period",s=t.range[0]>t.range[1],u=!t.ticklabelindex||Ou.isArrayOrTypedArray(t.ticklabelindex)?t.ticklabelindex:[t.ticklabelindex],l=Ou.simpleMap(t.range,t.r2l,void 0,void 0,r),f=l[1]=(E?0:1);A--){var L=!A;A?(t._dtickInit=t.dtick,t._tick0Init=t.tick0):(t.minor._dtickInit=t.minor.dtick,t.minor._tick0Init=t.minor.tick0);var x=A?t:Ou.extendFlat({},t,t.minor);if(L?al.prepMinorTicks(x,t,r):al.prepTicks(x,r),x.tickmode==="array"){A?(b=[],p=Ese(t,!L)):(v=[],_=Ese(t,!L));continue}if(x.tickmode==="sync"){b=[],p=zlt(t);continue}var C=TN(l),M=C[0],m=C[1],P=Oh(x.dtick),T=n==="log"&&!(P||x.dtick.charAt(0)==="L"),B=al.tickFirst(x,r);if(A){if(t._tmin=B,B=m:U<=m;U=al.tickIncrement(U,H,f,i)){if(A&&G++,x.rangebreaks&&!f){if(U=h)break}if(b.length>d||U===F)break;F=U;var N={value:U};A?(T&&U!==(U|0)&&(N.simpleLabel=!0),a>1&&G%a&&(N.skipLabel=!0),b.push(N)):(N.minor=!0,v.push(N))}}if(!v||v.length<2)u=!1;else{var W=(v[1].value-v[0].value)*(s?-1:1);iut(W,t.tickformat)||(u=!1)}if(!u)k=b;else{var re=b.concat(v);o&&b.length&&(re=re.slice(1)),re=re.sort(function(Ct,wt){return Ct.value-wt.value}).filter(function(Ct,wt,St){return wt===0||Ct.value!==St[wt-1].value});var ae=re.map(function(Ct,wt){return Ct.minor===void 0&&!Ct.skipLabel?wt:null}).filter(function(Ct){return Ct!==null});ae.forEach(function(Ct){u.map(function(wt){var St=Ct+wt;St>=0&&St-1;Ue--){if(b[Ue].drop){b.splice(Ue,1);continue}b[Ue].value=vN(b[Ue].value,t);var ce=t.c2p(b[Ue].value);(De?qe>ce-ye:qeh||Dth&&(St.periodX=h),Dti&&hTP)t/=TP,n=i(10),e.dtick="M"+12*_y(t,n,bP);else if(a>D3)t/=D3,e.dtick="M"+_y(t,1,kse);else if(a>Bp){if(e.dtick=_y(t,Bp,e._hasDayOfWeekBreaks?[1,2,7,14]:Ilt),!r){var o=al.getTickFormat(e),s=e.ticklabelmode==="period";s&&(e._rawTick0=e.tick0),/%[uVW]/.test(o)?e.tick0=Ou.dateTick0(e.calendar,2):e.tick0=Ou.dateTick0(e.calendar,1),s&&(e._dowTick0=e.tick0)}}else a>xy?e.dtick=_y(t,xy,kse):a>o5?e.dtick=_y(t,o5,Cse):a>EP?e.dtick=_y(t,EP,Cse):(n=i(10),e.dtick=_y(t,n,bP))}else if(e.type==="log"){e.tick0=0;var u=Ou.simpleMap(e.range,e.r2l);if(e._isMinor&&(t*=1.5),t>.7)e.dtick=Math.ceil(t);else if(Math.abs(u[1]-u[0])<1){var l=1.5*Math.abs((u[1]-u[0])/t);t=Math.abs(Math.pow(10,u[1])-Math.pow(10,u[0]))/l,n=i(10),e.dtick="L"+_y(t,n,bP)}else e.dtick=t>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(t,1))):EN(e)?(e.tick0=0,n=1,e.dtick=_y(t,n,Rlt)):(e.tick0=0,n=i(10),e.dtick=_y(t,n,bP));if(e.dtick===0&&(e.dtick=1),!Oh(e.dtick)&&typeof e.dtick!="string"){var f=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(f)}};function Bse(e){var t=e.dtick;if(e._tickexponent=0,!Oh(t)&&typeof t!="string"&&(t=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var r=e.r2l(e.tick0),n=e.l2r(r).replace(/(^-|i)/g,""),i=n.length;if(String(t).charAt(0)==="M")i>10||n.substr(5)!=="01-01"?e._tickround="d":e._tickround=+t.substr(1)%12===0?"y":"m";else if(t>=Bp&&i<=10||t>=Bp*15)e._tickround="d";else if(t>=o5&&i<=16||t>=xy)e._tickround="M";else if(t>=EP&&i<=19||t>=o5)e._tickround="S";else{var a=e.l2r(r+t).replace(/^-/,"").length;e._tickround=Math.max(i,a)-20,e._tickround<0&&(e._tickround=4)}}else if(Oh(t)||t.charAt(0)==="L"){var o=e.range.map(e.r2d||Number);Oh(t)||(t=Number(t.substr(1))),e._tickround=2-Math.floor(Math.log(t)/Math.LN10+.01);var s=Math.max(Math.abs(o[0]),Math.abs(o[1])),u=Math.floor(Math.log(s)/Math.LN10+.01),l=e.minexponent===void 0?3:e.minexponent;Math.abs(u)>l&&(F3(e.exponentformat)&&e.exponentformat!=="SI extended"&&!AN(u)||F3(e.exponentformat)&&e.exponentformat==="SI extended"&&!SN(u)?e._tickexponent=3*Math.round((u-1)/3):e._tickexponent=u)}else e._tickround=null}al.tickIncrement=function(e,t,r,n){var i=r?-1:1;if(Oh(t))return Ou.increment(e,i*t);var a=t.charAt(0),o=i*Number(t.substr(1));if(a==="M")return Ou.incrementMonth(e,o,n);if(a==="L")return Math.log(Math.pow(10,e)+o)/Math.LN10;if(a==="D"){var s=t==="D2"?Fse:Dse,u=e+i*.01,l=Ou.roundUp(Ou.mod(u,1),s,r);return Math.floor(u)+Math.log(b0.round(Math.pow(10,l),1))/Math.LN10}throw"unrecognized dtick "+String(t)};al.tickFirst=function(e,t){var r=e.r2l||Number,n=Ou.simpleMap(e.range,r,void 0,void 0,t),i=n[1]=0&&v<=e._length?b:null};if(a&&Ou.isArrayOrTypedArray(e.ticktext)){var c=Ou.simpleMap(e.range,e.r2l),h=(Math.abs(c[1]-c[0])-(e._lBreaks||0))/1e4;for(l=0;l"+s;else{var l=u5(e),f=e._trueSide||e.side;(!l&&f==="top"||l&&f==="bottom")&&(o+="
")}t.text=o}function Flt(e,t,r,n,i){var a=e.dtick,o=t.x,s=e.tickformat,u=typeof a=="string"&&a.charAt(0);if(i==="never"&&(i=""),n&&u!=="L"&&(a="L3",u="L"),s||u==="L")t.text=l5(Math.pow(10,o),e,i,n);else if(Oh(a)||u==="D"&&(e.minorloglabels==="complete"||Ou.mod(o+.01,1)<.1)){var l;e.minorloglabels==="complete"&&!(Ou.mod(o+.01,1)<.1)&&(l=!0,t.fontSize*=.75);var f=Math.pow(10,o).toExponential(0),c=f.split("e"),h=+c[1],d=Math.abs(h),p=e.exponentformat;p==="power"||F3(p)&&p!=="SI extended"&&AN(h)||F3(p)&&p==="SI extended"&&SN(h)?(t.text=c[0],d>0&&(t.text+="x10"),t.text==="1x10"&&(t.text="10"),h!==0&&h!==1&&(t.text+=""+(h>0?"":Cb)+d+""),t.fontSize*=1.25):(p==="e"||p==="E")&&d>2?t.text=c[0]+p+(h>0?"+":Cb)+d:(t.text=l5(Math.pow(10,o),e,"","fakehover"),a==="D1"&&e._id.charAt(0)==="y"&&(t.dy-=t.fontSize/6))}else if(u==="D")t.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,Ou.mod(o,1)))),t.fontSize*=.75;else throw"unrecognized dtick "+String(a);if(e.dtick==="D1"){var _=String(t.text).charAt(0);(_==="0"||_==="1")&&(e._id.charAt(0)==="y"?t.dx-=t.fontSize/4:(t.dy+=t.fontSize/2,t.dx+=(e.range[1]>e.range[0]?1:-1)*t.fontSize*(o<0?.5:.25)))}}function Blt(e,t){var r=e._categories[Math.round(t.x)];r===void 0&&(r=""),t.text=String(r)}function Olt(e,t,r){var n=Math.round(t.x),i=e._categories[n]||[],a=i[1]===void 0?"":String(i[1]),o=i[0]===void 0?"":String(i[0]);r?t.text=o+" - "+a:(t.text=a,t.text2=o)}function qlt(e,t,r,n,i){i==="never"?i="":e.showexponent==="all"&&Math.abs(t.x/e.dtick)<1e-6&&(i="hide"),t.text=l5(t.x,e,i,n)}function Nlt(e,t,r,n,i){if(e.thetaunit==="radians"&&!r){var a=t.x/180;if(a===0)t.text="0";else{var o=Ult(a);if(o[1]>=100)t.text=l5(Ou.deg2rad(t.x),e,i,n);else{var s=t.x<0;o[1]===1?o[0]===1?t.text="\u03C0":t.text=o[0]+"\u03C0":t.text=["",o[0],"","\u2044","",o[1],"","\u03C0"].join(""),s&&(t.text=Cb+t.text)}}}else t.text=l5(t.x,e,i,n)}function Ult(e){function t(s,u){return Math.abs(s-u)<=1e-6}function r(s,u){return t(u,0)?s:r(u,s%u)}function n(s){for(var u=1;!t(Math.round(s*u)/u,s);)u*=10;return u}var i=n(e),a=e*i,o=Math.abs(r(a,i));return[Math.round(a/o),Math.round(i/o)]}var qse=["f","p","n","\u03BC","m","","k","M","G","T"],Vlt=["q","r","y","z","a",...qse,"P","E","Z","Y","R","Q"],F3=e=>["SI","SI extended","B"].includes(e);function AN(e){return e>14||e<-15}function SN(e){return e>32||e<-30}function Glt(e,t){return F3(t)?!!(t==="SI extended"&&SN(e)||t!=="SI extended"&&AN(e)):!1}function l5(e,t,r,n){var i=e<0,a=t._tickround,o=r||t.exponentformat||"B",s=t._tickexponent,u=al.getTickFormat(t),l=t.separatethousands;if(n){var f={exponentformat:o,minexponent:t.minexponent,dtick:t.showexponent==="none"?t.dtick:Oh(e)&&Math.abs(e)||1,range:t.showexponent==="none"?t.range.map(t.r2d):[0,e||1]};Bse(f),a=(Number(f._tickround)||0)+4,s=f._tickexponent,t.hoverformat&&(u=t.hoverformat)}if(u)return t._numFormat(u)(e).replace(/-/g,Cb);var c=Math.pow(10,-a)/2;if(o==="none"&&(s=0),e=Math.abs(e),e"+p+"":o==="B"&&s===9?e+="B":F3(o)&&(e+=o==="SI extended"?Vlt[s/3+10]:qse[s/3+5])}return i?Cb+e:e}al.getTickFormat=function(e){var t;function r(u){return typeof u!="string"?u:Number(u.replace("M",""))*D3}function n(u,l){var f=["L","D"];if(typeof u==typeof l){if(typeof u=="number")return u-l;var c=f.indexOf(u.charAt(0)),h=f.indexOf(l.charAt(0));return c===h?Number(u.replace(/(L|D)/g,""))-Number(l.replace(/(L|D)/g,"")):c-h}else return typeof u=="number"?1:-1}function i(u,l,f){var c=f||function(p){return p},h=l[0],d=l[1];return(!h&&typeof h!="number"||c(h)<=c(u))&&(!d&&typeof d!="number"||c(d)>=c(u))}function a(u,l){var f=l[0]===null,c=l[1]===null,h=n(u,l[0])>=0,d=n(u,l[1])<=0;return(f||h)&&(c||d)}var o,s;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(t=0;t=0&&i.unshift(i.splice(f,1).shift())}});var s={false:{left:0,right:0}};return Ou.syncOrAsync(i.map(function(u){return function(){if(u){var l=al.getFromId(e,u);r||(r={}),r.axShifts=s,r.overlayingShiftedAx=o;var f=al.drawOne(e,l,r);return l._shiftPusher&&wN(l,l._fullDepth||0,s,!0),l._r=l.range.slice(),l._rl=Ou.simpleMap(l._r,l.r2l),f}}}))};al.drawOne=function(e,t,r){r=r||{};var n=r.axShifts||{},i=r.overlayingShiftedAx||[],a,o,s;t.setScale();var u=e._fullLayout,l=t._id,f=l.charAt(0),c=al.counterLetter(l),h=u._plots[t._mainSubplot],d=t.zerolinelayer==="above traces";if(!h)return;if(t._shiftPusher=t.autoshift||i.indexOf(t._id)!==-1||i.indexOf(t.overlaying)!==-1,t._shiftPusher&t.anchor==="free"){var p=t.linewidth/2||0;t.ticks==="inside"&&(p+=t.ticklen),wN(t,p,n,!0),wN(t,t.shift||0,n,!1)}(r.skipTitle!==!0||t._shift===void 0)&&(t._shift=rut(t,n));var _=h[f+"axislayer"],b=t._mainLinePosition,v=b+=t._shift,k=t._mainMirrorPosition,E=t._vals=al.calcTicks(t),A=[t.mirror,v,k].join("_");for(a=0;a0?Dt.bottom-wt:0,St))));var ot=0,Tt=0;if(t._shiftPusher&&(ot=Math.max(St,Dt.height>0?Ke==="l"?wt-Dt.left:Dt.right-wt:0),t.title.text!==u._dfltTitle[f]&&(Tt=(t._titleStandoff||0)+(t._titleScoot||0),Ke==="l"&&(Tt+=Pse(t))),t._fullDepth=Math.max(ot,Tt)),t.automargin){Zt={x:0,y:0,r:0,l:0,t:0,b:0};var vt=[0,1],Ye=typeof t._shift=="number"?t._shift:0;if(f==="x"){if(Ke==="b"?Zt[Ke]=t._depth:(Zt[Ke]=t._depth=Math.max(Dt.width>0?wt-Dt.top:0,St),vt.reverse()),Dt.width>0){var He=Dt.right-(t._offset+t._length);He>0&&(Zt.xr=1,Zt.r=He);var it=t._offset-Dt.left;it>0&&(Zt.xl=0,Zt.l=it)}}else if(Ke==="l"?(t._depth=Math.max(Dt.height>0?wt-Dt.left:0,St),Zt[Ke]=t._depth-Ye):(t._depth=Math.max(Dt.height>0?Dt.right-wt:0,St),Zt[Ke]=t._depth+Ye,vt.reverse()),Dt.height>0){var et=Dt.bottom-(t._offset+t._length);et>0&&(Zt.yb=0,Zt.b=et);var It=t._offset-Dt.top;It>0&&(Zt.yt=1,Zt.t=It)}Zt[c]=t.anchor==="free"?t.position:t._anchorAxis.domain[vt[0]],t.title.text!==u._dfltTitle[f]&&(Zt[Ke]+=Pse(t)+(t.title.standoff||0)),t.mirror&&t.anchor!=="free"&&(Et={x:0,y:0,r:0,l:0,t:0,b:0},Et[Ct]=t.linewidth,t.mirror&&t.mirror!==!0&&(Et[Ct]+=St),t.mirror===!0||t.mirror==="ticks"?Et[c]=t._anchorAxis.domain[vt[1]]:(t.mirror==="all"||t.mirror==="allticks")&&(Et[c]=[t._counterDomainMin,t._counterDomainMax][vt[1]]))}at&&(Te=n5.getComponentMethod("rangeslider","autoMarginOpts")(e,t)),typeof t.automargin=="string"&&(Lse(Zt,t.automargin),Lse(Et,t.automargin)),I3.autoMargin(e,MN(t),Zt),I3.autoMargin(e,Use(t),Et),I3.autoMargin(e,Vse(t),Te)}),Ou.syncOrAsync(gt)}};function Lse(e,t){if(e){var r=Object.keys(Tse).reduce(function(n,i){return t.indexOf(i)!==-1&&Tse[i].forEach(function(a){n[a]=1}),n},{});Object.keys(e).forEach(function(n){r[n]||(n.length===1?e[n]=0:delete e[n])})}}function Hlt(e,t){var r=[],n,i=function(a,o){var s=a.xbnd[o];s!==null&&r.push(Ou.extendFlat({},a,{x:s}))};if(t.length){for(n=0;ne.range[1],s=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,u=!s;if(r){var l=o?-1:1;r=r*l}if(n){var f=e.side,c=s&&(f==="top"||f==="left")||u&&(f==="bottom"||f==="right")?1:-1;n=n*c}return e._id.charAt(0)==="x"?function(h){return R3(i+e._offset+e.l2p(xN(h))+r,a+n)}:function(h){return R3(a+n,i+e._offset+e.l2p(xN(h))+r)}};function xN(e){return e.periodX!==void 0?e.periodX:e.x}function Zlt(e){var t=e.ticklabelposition||"",r=e.tickson||"",n=function(p){return t.indexOf(p)!==-1},i=n("top"),a=n("left"),o=n("right"),s=n("bottom"),u=n("inside"),l=r!=="boundaries"&&(s||a||i||o);if(!l&&!u)return[0,0];var f=e.side,c=l?(e.tickwidth||0)/2:0,h=kP,d=e.tickfont?e.tickfont.size:12;return(s||i)&&(c+=d*Lb,h+=(e.linewidth||0)/2),(a||o)&&(c+=(e.linewidth||0)/2,h+=kP),u&&f==="top"&&(h-=d*(1-Lb)),(a||i)&&(c=-c),(f==="bottom"||f==="right")&&(h=-h),[l?c:0,u?h:0]}al.makeTickPath=function(e,t,r,n){n||(n={});var i=n.minor;if(i&&!e.minor)return"";var a=n.len!==void 0?n.len:i?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),s=(e.linewidth||1)/2;return o==="x"?"M0,"+(t+s*r)+"v"+a*r:"M"+(t+s*r)+",0h"+a*r};al.makeLabelFns=function(e,t,r){var n=e.ticklabelposition||"",i=e.tickson||"",a=function(F){return n.indexOf(F)!==-1},o=a("top"),s=a("left"),u=a("right"),l=a("bottom"),f=i!=="boundaries"&&(l||s||o||u),c=a("inside"),h=n==="inside"&&e.ticks==="inside"||!c&&e.ticks==="outside"&&i!=="boundaries",d=0,p=0,_=h?e.ticklen:0;if(c?_*=-1:f&&(_=0),h&&(d+=_,r)){var b=Ou.deg2rad(r);d=_*Math.cos(b)+1,p=_*Math.sin(b)}e.showticklabels&&(h||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(c?-1:1);var v={labelStandoff:d,labelShift:p},k,E,A,L,x=0,C=e.side,M=e._id.charAt(0),m=e.tickangle,P;if(M==="x")P=!c&&C==="bottom"||c&&C==="top",L=P?1:-1,c&&(L*=-1),k=p*L,E=t+d*L,A=P?1:-.2,Math.abs(m)===90&&(c?A+=i5:m===-90&&C==="bottom"?A=Lb:m===90&&C==="top"?A=i5:A=.5,x=i5/2*(m/90)),v.xFn=function(F){return F.dx+k+x*F.fontSize},v.yFn=function(F){return F.dy+E+F.fontSize*A},v.anchorFn=function(F,U){if(f){if(s)return"end";if(u)return"start"}return!Oh(U)||U===0||U===180?"middle":U*L<0!==c?"end":"start"},v.heightFn=function(F,U,G){return U<-60||U>60?-.5*G:e.side==="top"!==c?-G:0};else if(M==="y"){if(P=!c&&C==="left"||c&&C==="right",L=P?1:-1,c&&(L*=-1),k=d,E=p*L,A=0,!c&&Math.abs(m)===90&&(m===-90&&C==="left"||m===90&&C==="right"?A=Lb:A=.5),c){var T=Oh(m)?+m:0;if(T!==0){var B=Ou.deg2rad(T);x=Math.abs(Math.sin(B))*Lb*L,A=0}}v.xFn=function(F){return F.dx+t-(k+F.fontSize*A)*L+x*F.fontSize},v.yFn=function(F){return F.dy+E+F.fontSize*i5},v.anchorFn=function(F,U){return Oh(U)&&Math.abs(U)===90?"middle":P?"end":"start"},v.heightFn=function(F,U,G){return e.side==="right"&&(U*=-1),U<-30?-G:U<30?-.5*G:0}}return v};function PP(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}al.drawTicks=function(e,t,r){r=r||{};var n=t._id+"tick",i=[].concat(t.minor&&t.minor.ticks?r.vals.filter(function(o){return o.minor&&!o.noTick}):[]).concat(t.ticks?r.vals.filter(function(o){return!o.minor&&!o.noTick}):[]),a=r.layer.selectAll("path."+n).data(i,PP);a.exit().remove(),a.enter().append("path").classed(n,1).classed("ticks",1).classed("crisp",r.crisp!==!1).each(function(o){return a5.stroke(b0.select(this),o.minor?t.minor.tickcolor:t.tickcolor)}).style("stroke-width",function(o){return Xv.crispRound(e,o.minor?t.minor.tickwidth:t.tickwidth,1)+"px"}).attr("d",r.path).style("display",null),zP(t,[zse]),a.attr("transform",r.transFn)};al.drawGrid=function(e,t,r){if(r=r||{},t.tickmode!=="sync"){var n=t._id+"grid",i=t.minor&&t.minor.showgrid,a=i?r.vals.filter(function(v){return v.minor}):[],o=t.showgrid?r.vals.filter(function(v){return!v.minor}):[],s=r.counterAxis;if(s&&al.shouldShowZeroLine(e,t,s))for(var u=t.tickmode==="array",l=0;l=0;p--){var _=p?h:d;if(_){var b=_.selectAll("path."+n).data(p?o:a,PP);b.exit().remove(),b.enter().append("path").classed(n,1).classed("crisp",r.crisp!==!1),b.attr("transform",r.transFn).attr("d",r.path).each(function(v){return a5.stroke(b0.select(this),v.minor?t.minor.gridcolor:t.gridcolor||"#ddd")}).style("stroke-dasharray",function(v){return Xv.dashStyle(v.minor?t.minor.griddash:t.griddash,v.minor?t.minor.gridwidth:t.gridwidth)}).style("stroke-width",function(v){return(v.minor?c:t._gw)+"px"}).style("display",null),typeof r.path=="function"&&b.attr("d",r.path)}}zP(t,[gN,_N])}};al.drawZeroLine=function(e,t,r){r=r||r;var n=t._id+"zl",i=al.shouldShowZeroLine(e,t,r.counterAxis),a=r.layer.selectAll("path."+n).data(i?[{x:0,id:t._id}]:[]);a.exit().remove(),a.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",r.crisp!==!1).each(function(){r.layer.selectAll("path").sort(function(o,s){return Alt(o.id,s.id)})}),a.attr("transform",r.transFn).attr("d",r.path).call(a5.stroke,t.zerolinecolor||a5.defaultLine).style("stroke-width",Xv.crispRound(e,t.zerolinewidth,t._gw||1)+"px").style("display",null),zP(t,[yN])};al.drawLabels=function(e,t,r){r=r||{};var n=e._fullLayout,i=t._id,a=t.zerolinelayer==="above traces",o=r.cls||i+"tick",s=r.vals.filter(function(W){return W.text}),u=r.labelFns,l=r.secondary?0:t.tickangle,f=(t._prevTickAngles||{})[o],c=r.layer.selectAll("g."+o).data(t.showticklabels?s:[],PP),h=[];c.enter().append("g").classed(o,1).append("text").attr("text-anchor","middle").each(function(W){var re=b0.select(this),ae=e._promises.length;re.call(kb.positionText,u.xFn(W),u.yFn(W)).call(Xv.font,{family:W.font,size:W.fontSize,color:W.fontColor,weight:W.fontWeight,style:W.fontStyle,variant:W.fontVariant,textcase:W.fontTextcase,lineposition:W.fontLineposition,shadow:W.fontShadow}).text(W.text).call(kb.convertToTspans,e),e._promises[ae]?h.push(e._promises.pop().then(function(){d(re,l)})):d(re,l)}),zP(t,[wse]),c.exit().remove(),r.repositionOnUpdate&&c.each(function(W){b0.select(this).select("text").call(kb.positionText,u.xFn(W),u.yFn(W))});function d(W,re){W.each(function(ae){var be=b0.select(this),ze=be.select(".text-math-group"),Ce=u.anchorFn(ae,re),de=r.transFn.call(be.node(),ae)+(Oh(re)&&+re!=0?" rotate("+re+","+u.xFn(ae)+","+(u.yFn(ae)-ae.fontSize/2)+")":""),te=kb.lineCount(be),ke=s5*ae.fontSize,Ee=u.heightFn(ae,Oh(re)?+re:0,(te-1)*ke);if(Ee&&(de+=R3(0,Ee)),ze.empty()){var Me=be.select("text");Me.attr({transform:de,"text-anchor":Ce}),Me.style("display",null),t._adjustTickLabelsOverflow&&t._adjustTickLabelsOverflow()}else{var Ue=Xv.bBox(ze.node()).width,De=Ue*{end:-.5,start:.5}[Ce];ze.attr("transform",de+R3(De,0))}})}t._adjustTickLabelsOverflow=function(){var W=t.ticklabeloverflow;if(!(!W||W==="allow")){var re=W.indexOf("hide")!==-1,ae=t._id.charAt(0)==="x",be=0,ze=ae?e._fullLayout.width:e._fullLayout.height;if(W.indexOf("domain")!==-1){var Ce=Ou.simpleMap(t.range,t.r2l);be=t.l2p(Ce[0])+t._offset,ze=t.l2p(Ce[1])+t._offset}var de=Math.min(be,ze),te=Math.max(be,ze),ke=t.side,Ee=1/0,Me=-1/0;c.each(function(qe){var ce=b0.select(this),Je=ce.select(".text-math-group");if(Je.empty()){var nt=Xv.bBox(ce.node()),gt=0;ae?(nt.right>te||nt.leftte||nt.top+(t.tickangle?0:qe.fontSize/4)t["_visibleLabelMin_"+Ce._id]?ce.style("display","none"):te.K==="tick"&&!de&&ce.node().style.display!=="none"&&ce.style("display",null)})})})})},d(c,f+1?f:l);function p(){return h.length&&Promise.all(h)}var _=null;function b(){if(d(c,l),s.length&&t.autotickangles&&(t.type!=="log"||String(t.dtick).charAt(0)!=="D")){_=t.autotickangles[0];var W=0,re=[],ae,be=1;c.each(function(Zt){W=Math.max(W,Zt.fontSize);var Et=t.l2p(Zt.x),Te=bN(this),ot=Xv.bBox(Te.node());be=Math.max(be,kb.lineCount(Te)),re.push({top:0,bottom:10,height:10,left:Et-ot.width/2,right:Et+ot.width/2+2,width:ot.width+2})});var ze=(t.tickson==="boundaries"||t.showdividers)&&!r.secondary,Ce=s.length,de=Math.abs((s[Ce-1].x-s[0].x)*t._m)/(Ce-1),te=ze?de/2:de,ke=ze?t.ticklen:W*1.25*be,Ee=Math.sqrt(Math.pow(te,2)+Math.pow(ke,2)),Me=te/Ee,Ue=t.autotickangles.map(function(Zt){return Zt*Math.PI/180}),De=Ue.find(function(Zt){return Math.abs(Math.cos(Zt))<=Me});De===void 0&&(De=Ue.reduce(function(Zt,Et){return Math.abs(Math.cos(Zt))j*G&&(B=G,m[M]=P[M]=F[M])}var H=Math.abs(B-T);H-L>0?(H-=L,L*=1+L/H):L=0,t._id.charAt(0)!=="y"&&(L=-L),m[C]=E.p2r(E.r2p(P[C])+x*L),E.autorange==="min"||E.autorange==="max reversed"?(m[0]=null,E._rangeInitial0=void 0,E._rangeInitial1=void 0):(E.autorange==="max"||E.autorange==="min reversed")&&(m[1]=null,E._rangeInitial0=void 0,E._rangeInitial1=void 0),n._insideTickLabelsUpdaterange[E._name+".range"]=m}var N=Ou.syncOrAsync(v);return N&&N.then&&e._promises.push(N),N};function Ylt(e,t,r){var n=t._id+"divider",i=r.vals,a=r.layer.selectAll("path."+n).data(i,PP);a.exit().remove(),a.enter().insert("path",":first-child").classed(n,1).classed("crisp",1).call(a5.stroke,t.dividercolor).style("stroke-width",Xv.crispRound(e,t.dividerwidth,1)+"px"),a.attr("transform",r.transFn).attr("d",r.path)}al.getPxPosition=function(e,t){var r=e._fullLayout._size,n=t._id.charAt(0),i=t.side,a;if(t.anchor!=="free"?a=t._anchorAxis:n==="x"?a={_offset:r.t+(1-(t.position||0))*r.h,_length:0}:n==="y"&&(a={_offset:r.l+(t.position||0)*r.w+t._shift,_length:0}),i==="top"||i==="left")return a._offset;if(i==="bottom"||i==="right")return a._offset+a._length};function Pse(e){var t=e.title.font.size,r=(e.title.text.match(kb.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?t*(Lb+r*s5):r?t*(r+1)*s5:t}function Klt(e,t){var r=e._fullLayout,n=t._id,i=n.charAt(0),a=t.title.font.size,o,s=(t.title.text.match(kb.BR_TAG_ALL)||[]).length;if(t.title.hasOwnProperty("standoff"))t.side==="bottom"||t.side==="right"?o=t._depth+t.title.standoff+a*Lb:(t.side==="top"||t.side==="left")&&(o=t._depth+t.title.standoff+a*(i5+s*s5));else{var u=u5(t);if(t.type==="multicategory")o=t._depth;else{var l=1.5*a;u&&(l=.5*a,t.ticks==="outside"&&(l+=t.ticklen)),o=10+l+(t.linewidth?t.linewidth-1:0)}u||(i==="x"?o+=t.side==="top"?a*(t.showticklabels?1:0):a*(t.showticklabels?1.5:.5):o+=t.side==="right"?a*(t.showticklabels?1:.5):a*(t.showticklabels?.5:0))}var f=al.getPxPosition(e,t),c,h,d;i==="x"?(h=t._offset+t._length/2,d=t.side==="top"?f-o:f+o):(d=t._offset+t._length/2,h=t.side==="right"?f+o:f-o,c={rotate:"-90",offset:0});var p;if(t.type!=="multicategory"){var _=t._selections[t._id+"tick"];if(p={selection:_,side:t.side},_&&_.node()&&_.node().parentNode){var b=Xv.getTranslate(_.node().parentNode);p.offsetLeft=b.x,p.offsetTop=b.y}t.title.hasOwnProperty("standoff")&&(p.pad=0)}return t._titleStandoff=o,vlt.draw(e,n+"title",{propContainer:t,propName:t._name+".title.text",placeholder:r._dfltTitle[i],avoid:p,transform:c,attributes:{x:h,y:d,"text-anchor":"middle"}})}al.shouldShowZeroLine=function(e,t,r){var n=Ou.simpleMap(t.range,t.r2l);return n[0]*n[1]<=0&&t.zeroline&&(t.type==="linear"||t.type==="-")&&!(t.rangebreaks&&t.maskBreaks(0)===CP)&&(Nse(t,0)||!Jlt(e,t,r,n)||$lt(e,t))};al.clipEnds=function(e,t){return t.filter(function(r){return Nse(e,r.x)})};function Nse(e,t){var r=e.l2p(t);return r>1&&r1)for(i=1;i=i.min&&e=blt:/%L/.test(t)?e>=xlt:/%[SX]/.test(t)?e>=EP:/%M/.test(t)?e>=o5:/%[HI]/.test(t)?e>=xy:/%p/.test(t)?e>=s_:/%[Aadejuwx]/.test(t)?e>=Bp:/%[UVW]/.test(t)?e>=Zv:/%[Bbm]/.test(t)?e>=MP:/%[q]/.test(t)?e>=SP:/%[Yy]/.test(t)?e>=AP:!0}});var kN=Ae((xor,Hse)=>{"use strict";Hse.exports=function(t,r,n){var i,a;if(n){var o=r==="reversed"||r==="min reversed"||r==="max reversed";i=n[o?1:0],a=n[o?0:1]}var s=t("autorangeoptions.minallowed",a===null?i:void 0),u=t("autorangeoptions.maxallowed",i===null?a:void 0);s===void 0&&t("autorangeoptions.clipmin"),u===void 0&&t("autorangeoptions.clipmax"),t("autorangeoptions.include")}});var CN=Ae((bor,Wse)=>{"use strict";var nut=kN();Wse.exports=function(t,r,n,i){var a=r._template||{},o=r.type||a.type||"-";n("minallowed"),n("maxallowed");var s=n("range");if(!s){var u;!i.noInsiderange&&o!=="log"&&(u=n("insiderange"),u&&(u[0]===null||u[1]===null)&&(r.insiderange=!1,u=void 0),u&&(s=n("range",u)))}var l=r.getAutorangeDflt(s,i),f=n("autorange",l),c;s&&(s[0]===null&&s[1]===null||(s[0]===null||s[1]===null)&&(f==="reversed"||f===!0)||s[0]!==null&&(f==="min"||f==="max reversed")||s[1]!==null&&(f==="max"||f==="min reversed"))&&(s=void 0,delete r.range,r.autorange=!0,c=!0),c||(l=r.getAutorangeDflt(s,i),f=n("autorange",l)),f&&(nut(n,f,s),(o==="linear"||o==="-")&&n("rangemode")),r.cleanRange()}});var Xse=Ae((wor,jse)=>{var aut={left:0,top:0};jse.exports=out;function out(e,t,r){t=t||e.currentTarget||e.srcElement,Array.isArray(r)||(r=[0,0]);var n=e.clientX||0,i=e.clientY||0,a=sut(t);return r[0]=n-a.left,r[1]=i-a.top,r}function sut(e){return e===window||e===document||e===document.body?aut:e.getBoundingClientRect()}});var IP=Ae((Tor,Zse)=>{"use strict";var lut=cq();function uut(){var e=!1;try{var t=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,t),window.removeEventListener("test",null,t)}catch(r){e=!1}return e}Zse.exports=lut&&uut()});var Kse=Ae((Aor,Yse)=>{"use strict";Yse.exports=function(t,r,n,i,a){var o=(t-n)/(i-n),s=o+r/(i-n),u=(o+s)/2;return a==="left"||a==="bottom"?o:a==="center"||a==="middle"?u:a==="right"||a==="top"?s:o<2/3-u?o:s>4/3-u?s:u}});var Qse=Ae((Sor,$se)=>{"use strict";var Jse=ei(),fut=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];$se.exports=function(t,r,n,i){return n==="left"?t=0:n==="center"?t=1:n==="right"?t=2:t=Jse.constrain(Math.floor(t*3),0,2),i==="bottom"?r=0:i==="middle"?r=1:i==="top"?r=2:r=Jse.constrain(Math.floor(r*3),0,2),fut[r][t]}});var tle=Ae((Mor,ele)=>{"use strict";var cut=g3(),hut=FL(),dut=qM().getGraphDiv,put=DM(),LN=ele.exports={};LN.wrapped=function(e,t,r){e=dut(e),e._fullLayout&&hut.clear(e._fullLayout._uid+put.HOVERID),LN.raw(e,t,r)};LN.raw=function(t,r){var n=t._fullLayout,i=t._hoverdata;r||(r={}),!(r.target&&!t._dragged&&cut.triggerHandler(t,"plotly_beforehover",r)===!1)&&(n._hoverlayer.selectAll("g").remove(),n._hoverlayer.selectAll("line").remove(),n._hoverlayer.selectAll("circle").remove(),t._hoverdata=void 0,r.target&&i&&t.emit("plotly_unhover",{event:r,points:i}))}});var xp=Ae((Eor,ale)=>{"use strict";var vut=Xse(),PN=dq(),mut=IP(),yut=ei().removeElement,gut=dd(),Pb=ale.exports={};Pb.align=Kse();Pb.getCursor=Qse();var ile=tle();Pb.unhover=ile.wrapped;Pb.unhoverRaw=ile.raw;Pb.init=function(t){var r=t.gd,n=1,i=r._context.doubleClickDelay,a=t.element,o,s,u,l,f,c,h,d;r._mouseDownTime||(r._mouseDownTime=0),a.style.pointerEvents="all",a.onmousedown=b,mut?(a._ontouchstart&&a.removeEventListener("touchstart",a._ontouchstart),a._ontouchstart=b,a.addEventListener("touchstart",b,{passive:!1})):a.ontouchstart=b;function p(E,A,L){return Math.abs(E)i&&(n=Math.max(n-1,1)),r._dragged)t.doneFn&&t.doneFn();else{var A;c.target===h?A=c:(A={target:h,srcElement:h,toElement:h},Object.keys(c).concat(Object.keys(c.__proto__)).forEach(L=>{var x=c[L];!A[L]&&typeof x!="function"&&(A[L]=x)})),t.clickFn&&t.clickFn(n,A),d||h.dispatchEvent(new MouseEvent("click",E))}r._dragging=!1,r._dragged=!1}};function nle(){var e=document.createElement("div");e.className="dragcover";var t=e.style;return t.position="fixed",t.left=0,t.right=0,t.top=0,t.bottom=0,t.zIndex=999999999,t.background="none",document.body.appendChild(e),e}Pb.coverSlip=nle;function rle(e){return vut(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Am=Ae((kor,ole)=>{"use strict";ole.exports=function(t,r){(t.attr("class")||"").split(" ").forEach(function(n){n.indexOf("cursor-")===0&&t.classed(n,!1)}),r&&t.classed("cursor-"+r,!0)}});var ule=Ae((Cor,lle)=>{"use strict";var zN=Am(),f5="data-savedcursor",sle="!!";lle.exports=function(t,r){var n=t.attr(f5);if(r){if(!n){for(var i=(t.attr("class")||"").split(" "),a=0;a{"use strict";var IN=gc(),_ut=Fh();fle.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:_ut.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:IN({editType:"legend"}),grouptitlefont:IN({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:IN({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var DP=Ae(RP=>{"use strict";RP.isGrouped=function(t){return(t.traceorder||"").indexOf("grouped")!==-1};RP.isVertical=function(t){return t.orientation!=="h"};RP.isReversed=function(t){return(t.traceorder||"").indexOf("reversed")!==-1}});var BN=Ae((zor,cle)=>{"use strict";var DN=$l(),Yv=ei(),xut=Lf(),but=Gf(),wut=RN(),Tut=u3(),FN=DP();function Aut(e,t,r,n){var i=t[e]||{},a=xut.newContainer(r,e);function o(H,N){return Yv.coerce(i,a,wut,H,N)}var s=Yv.coerceFont(o,"font",r.font);o("bgcolor",r.paper_bgcolor),o("bordercolor");var u=o("visible");if(u){for(var l,f=function(H,N){var W=l._input,re=l;return Yv.coerce(W,re,but,H,N)},c=r.font||{},h=Yv.coerceFont(o,"grouptitlefont",c,{overrideDflt:{size:Math.round(c.size*1.1)}}),d=0,p=!1,_="normal",b=(r.shapes||[]).filter(function(H){return H.showlegend}),v=n.concat(b).filter(function(H){return e===(H.legend||"legend")}),k=0;k(e==="legend"?1:0));if(A===!1&&(r[e]=void 0),!(A===!1&&!i.uirevision)&&(o("uirevision",r.uirevision),A!==!1)){o("borderwidth");var L=o("orientation"),x=o("yref"),C=o("xref"),M=L==="h",m=x==="paper",P=C==="paper",T,B,F,U="left";M?(T=0,DN.getComponentMethod("rangeslider","isVisible")(t.xaxis)?m?(B=1.1,F="bottom"):(B=1,F="top"):m?(B=-.1,F="top"):(B=0,F="bottom")):(B=1,F="auto",P?T=1.02:(T=1,U="right")),Yv.coerce(i,a,{x:{valType:"number",editType:"legend",min:P?-2:0,max:P?3:1,dflt:T}},"x"),Yv.coerce(i,a,{y:{valType:"number",editType:"legend",min:m?-2:0,max:m?3:1,dflt:B}},"y"),o("traceorder",_),FN.isGrouped(r[e])&&o("tracegroupgap"),o("entrywidth"),o("entrywidthmode"),o("indentation"),o("itemsizing"),o("itemwidth"),o("itemclick"),o("itemdoubleclick"),o("groupclick"),o("xanchor",U),o("yanchor",F),o("maxheight"),o("valign"),Yv.noneOrAll(i,a,["x","y"]);var G=o("title.text");if(G){o("title.side",M?"left":"top");var j=Yv.extendFlat({},s,{size:Yv.bigFont(s.size)});Yv.coerceFont(o,"title.font",j)}}}}cle.exports=function(t,r,n){var i,a=n.slice(),o=r.shapes;if(o)for(i=0;i{"use strict";var B3=$l(),qN=ei(),Sut=qN.pushUnique,ON=!0;hle.exports=function(t,r,n){var i=r._fullLayout;if(r._dragged||r._editing)return;var a=i.legend.itemclick,o=i.legend.itemdoubleclick,s=i.legend.groupclick;n===1&&a==="toggle"&&o==="toggleothers"&&ON&&r.data&&r._context.showTips&&qN.notifier(qN._(r,"Double-click on legend to isolate one trace"),"long"),ON=!1;var u;if(n===1?u=a:n===2&&(u=o),!u)return;var l=s==="togglegroup",f=i.hiddenlabels?i.hiddenlabels.slice():[],c=t.data()[0][0];if(c.groupTitle&&c.noClick)return;var h=r._fullData,d=(i.shapes||[]).filter(function(Ct){return Ct.showlegend}),p=h.concat(d),_=c.trace;_._isShape&&(_=_._fullInput);var b=_.legendgroup,v,k,E,A,L,x,C={},M=[],m=[],P=[];function T(Ct,wt){var St=M.indexOf(Ct),Dt=C.visible;return Dt||(Dt=C.visible=[]),M.indexOf(Ct)===-1&&(M.push(Ct),St=M.length-1),Dt[St]=wt,St}var B=(i.shapes||[]).map(function(Ct){return Ct._input}),F=!1;function U(Ct,wt){B[Ct].visible=wt,F=!0}function G(Ct,wt){if(!(c.groupTitle&&!l)){var St=Ct._fullInput||Ct,Dt=St._isShape,Zt=St.index;Zt===void 0&&(Zt=St._index);var Et=St.visible===!1?!1:wt;Dt?U(Zt,Et):T(Zt,Et)}}var j=_.legend,H=_._fullInput,N=H&&H._isShape;if(!N&&B3.traceIs(_,"pie-like")){var W=c.label,re=f.indexOf(W);if(u==="toggle")re===-1?f.push(W):f.splice(re,1);else if(u==="toggleothers"){var ae=re!==-1,be=[];for(v=0;v{"use strict";ple.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var yle=Ae((Dor,mle)=>{"use strict";var vle=$l(),UN=DP();mle.exports=function(t,r,n){var i=r._inHover,a=UN.isGrouped(r),o=UN.isReversed(r),s={},u=[],l=!1,f={},c=0,h=0,d,p;function _(H,N,W){if(r.visible!==!1&&!(n&&H!==r._id))if(N===""||!UN.isGrouped(r)){var re="~~i"+c;u.push(re),s[re]=[W],c++}else u.indexOf(N)===-1?(u.push(N),l=!0,s[N]=[W]):s[N].push(W)}for(d=0;dP&&(m=P)}C[d][0]._groupMinRank=m,C[d][0]._preGroupSort=d}var T=function(H,N){return H[0]._groupMinRank-N[0]._groupMinRank||H[0]._preGroupSort-N[0]._preGroupSort},B=function(H,N){return H.trace.legendrank-N.trace.legendrank||H._preSort-N._preSort};for(C.forEach(function(H,N){H[0]._preGroupSort=N}),C.sort(T),d=0;d{"use strict";var FP=ei();function gle(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}zb.formatPiePercent=function(t,r){var n=gle((t*100).toPrecision(3));return FP.numSeparate(n,r)+"%"};zb.formatPieValue=function(t,r){var n=gle(t.toPrecision(10));return FP.numSeparate(n,r)};zb.getFirstFilled=function(t,r){if(FP.isArrayOrTypedArray(t))for(var n=0;n{"use strict";var Mut=Mu(),Eut=jl();_le.exports=function(t,r,n,i){var a=n.marker.pattern;a&&a.shape?Mut.pointStyle(t,n,i,r):Eut.fill(t,r.color)}});var O3=Ae((Oor,Tle)=>{"use strict";var ble=jl(),wle=l_().castOption,kut=xle();Tle.exports=function(t,r,n,i){var a=n.marker.line,o=wle(a.color,r.pts)||ble.defaultLine,s=wle(a.width,r.pts)||0;t.call(kut,r,n,i).style("stroke-width",s).call(ble.stroke,o)}});var WN=Ae((qor,Cle)=>{"use strict";var Op=Jl(),VN=$l(),bp=ei(),Ale=bp.strTranslate,Kv=Mu(),w0=jl(),GN=yp().extractOpts,BP=lc(),Cut=O3(),Lut=l_().castOption,Put=NN(),Sle=12,Mle=5,Ib=2,zut=10,q3=5;Cle.exports=function(t,r,n){var i=r._fullLayout;n||(n=i.legend);var a=n.itemsizing==="constant",o=n.itemwidth,s=(o+Put.itemGap*2)/2,u=Ale(s,0),l=function(C,M,m,P){var T;if(C+1)T=C;else if(M&&M.width>0)T=M.width;else return 0;return a?P:Math.min(T,m)};t.each(function(C){var M=Op.select(this),m=bp.ensureSingle(M,"g","layers");m.style("opacity",C[0].trace.opacity);var P=n.indentation,T=n.valign,B=C[0].lineHeight,F=C[0].height;if(T==="middle"&&P===0||!B||!F)m.attr("transform",null);else{var U={top:1,bottom:-1}[T],G=U*(.5*(B-F+3))||0,j=n.indentation;m.attr("transform",Ale(j,G))}var H=m.selectAll("g.legendfill").data([C]);H.enter().append("g").classed("legendfill",!0);var N=m.selectAll("g.legendlines").data([C]);N.enter().append("g").classed("legendlines",!0);var W=m.selectAll("g.legendsymbols").data([C]);W.enter().append("g").classed("legendsymbols",!0),W.selectAll("g.legendpoints").data([C]).enter().append("g").classed("legendpoints",!0)}).each(x).each(h).each(p).each(d).each(b).each(A).each(E).each(f).each(c).each(v).each(k);function f(C){var M=Ele(C),m=M.showFill,P=M.showLine,T=M.showGradientLine,B=M.showGradientFill,F=M.anyFill,U=M.anyLine,G=C[0],j=G.trace,H,N,W=GN(j),re=W.colorscale,ae=W.reversescale,be=function(Me){if(Me.size())if(m)Kv.fillGroupStyle(Me,r,!0);else{var Ue="legendfill-"+j.uid;Kv.gradient(Me,r,Ue,HN(ae),re,"fill")}},ze=function(Me){if(Me.size()){var Ue="legendline-"+j.uid;Kv.lineGroupStyle(Me),Kv.gradient(Me,r,Ue,HN(ae),re,"stroke")}},Ce=BP.hasMarkers(j)||!F?"M5,0":U?"M5,-2":"M5,-3",de=Op.select(this),te=de.select(".legendfill").selectAll("path").data(m||B?[C]:[]);if(te.enter().append("path").classed("js-fill",!0),te.exit().remove(),te.attr("d",Ce+"h"+o+"v6h-"+o+"z").call(be),P||T){var ke=l(void 0,j.line,zut,Mle);N=bp.minExtend(j,{line:{width:ke}}),H=[bp.minExtend(G,{trace:N})]}var Ee=de.select(".legendlines").selectAll("path").data(P||T?[H]:[]);Ee.enter().append("path").classed("js-line",!0),Ee.exit().remove(),Ee.attr("d",Ce+(T?"l"+o+",0.0001":"h"+o)).call(P?Kv.lineGroupStyle:ze)}function c(C){var M=Ele(C),m=M.anyFill,P=M.anyLine,T=M.showLine,B=M.showMarker,F=C[0],U=F.trace,G=!B&&!P&&!m&&BP.hasText(U),j,H;function N(te,ke,Ee,Me){var Ue=bp.nestedProperty(U,te).get(),De=bp.isArrayOrTypedArray(Ue)&&ke?ke(Ue):Ue;if(a&&De&&Me!==void 0&&(De=Me),Ee){if(DeEe[1])return Ee[1]}return De}function W(te){return F._distinct&&F.index&&te[F.index]?te[F.index]:te[0]}if(B||G||T){var re={},ae={};if(B){re.mc=N("marker.color",W),re.mx=N("marker.symbol",W),re.mo=N("marker.opacity",bp.mean,[.2,1]),re.mlc=N("marker.line.color",W),re.mlw=N("marker.line.width",bp.mean,[0,5],Ib),ae.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var be=N("marker.size",bp.mean,[2,16],Sle);re.ms=be,ae.marker.size=be}T&&(ae.line={width:N("line.width",W,[0,10],Mle)}),G&&(re.tx="Aa",re.tp=N("textposition",W),re.ts=10,re.tc=N("textfont.color",W),re.tf=N("textfont.family",W),re.tw=N("textfont.weight",W),re.ty=N("textfont.style",W),re.tv=N("textfont.variant",W),re.tC=N("textfont.textcase",W),re.tE=N("textfont.lineposition",W),re.tS=N("textfont.shadow",W)),j=[bp.minExtend(F,re)],H=bp.minExtend(U,ae),H.selectedpoints=null,H.texttemplate=null}var ze=Op.select(this).select("g.legendpoints"),Ce=ze.selectAll("path.scatterpts").data(B?j:[]);Ce.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",u),Ce.exit().remove(),Ce.call(Kv.pointStyle,H,r),B&&(j[0].mrc=3);var de=ze.selectAll("g.pointtext").data(G?j:[]);de.enter().append("g").classed("pointtext",!0).append("text").attr("transform",u),de.exit().remove(),de.selectAll("text").call(Kv.textPointStyle,H,r)}function h(C){var M=C[0].trace,m=M.type==="waterfall";if(C[0]._distinct&&m){var P=C[0].trace[C[0].dir].marker;return C[0].mc=P.color,C[0].mlw=P.line.width,C[0].mlc=P.line.color,_(C,this,"waterfall")}var T=[];M.visible&&m&&(T=C[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var B=Op.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(T);B.enter().append("path").classed("legendwaterfall",!0).attr("transform",u).style("stroke-miterlimit",1),B.exit().remove(),B.each(function(F){var U=Op.select(this),G=M[F[0]].marker,j=l(void 0,G.line,q3,Ib);U.attr("d",F[1]).style("stroke-width",j+"px").call(w0.fill,G.color),j&&U.call(w0.stroke,G.line.color)})}function d(C){_(C,this)}function p(C){_(C,this,"funnel")}function _(C,M,m){var P=C[0].trace,T=P.marker||{},B=T.line||{},F=T.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",U=m?P.visible&&P.type===m:VN.traceIs(P,"bar"),G=Op.select(M).select("g.legendpoints").selectAll("path.legend"+m).data(U?[C]:[]);G.enter().append("path").classed("legend"+m,!0).attr("d",F).attr("transform",u),G.exit().remove(),G.each(function(j){var H=Op.select(this),N=j[0],W=l(N.mlw,T.line,q3,Ib);H.style("stroke-width",W+"px");var re=N.mcc;if(!n._inHover&&"mc"in N){var ae=GN(T),be=ae.mid;be===void 0&&(be=(ae.max+ae.min)/2),re=Kv.tryColorscale(T,"")(be)}var ze=re||N.mc||T.color,Ce=T.pattern,de=Kv.getPatternAttr,te=Ce&&(de(Ce.shape,0,"")||de(Ce.path,0,""));if(te){var ke=de(Ce.bgcolor,0,null),Ee=de(Ce.fgcolor,0,null),Me=Ce.fgopacity,Ue=kle(Ce.size,8,10),De=kle(Ce.solidity,.5,1),ye="legend-"+P.uid;H.call(Kv.pattern,"legend",r,ye,te,Ue,De,re,Ce.fillmode,ke,Ee,Me)}else H.call(w0.fill,ze);W&&w0.stroke(H,N.mlc||B.color)})}function b(C){var M=C[0].trace,m=Op.select(this).select("g.legendpoints").selectAll("path.legendbox").data(M.visible&&VN.traceIs(M,"box-violin")?[C]:[]);m.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",u),m.exit().remove(),m.each(function(){var P=Op.select(this);if((M.boxpoints==="all"||M.points==="all")&&w0.opacity(M.fillcolor)===0&&w0.opacity((M.line||{}).color)===0){var T=bp.minExtend(M,{marker:{size:a?Sle:bp.constrain(M.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});m.call(Kv.pointStyle,T,r)}else{var B=l(void 0,M.line,q3,Ib);P.style("stroke-width",B+"px").call(w0.fill,M.fillcolor),B&&w0.stroke(P,M.line.color)}})}function v(C){var M=C[0].trace,m=Op.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(M.visible&&M.type==="candlestick"?[C,C]:[]);m.enter().append("path").classed("legendcandle",!0).attr("d",function(P,T){return T?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",u).style("stroke-miterlimit",1),m.exit().remove(),m.each(function(P,T){var B=Op.select(this),F=M[T?"increasing":"decreasing"],U=l(void 0,F.line,q3,Ib);B.style("stroke-width",U+"px").call(w0.fill,F.fillcolor),U&&w0.stroke(B,F.line.color)})}function k(C){var M=C[0].trace,m=Op.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(M.visible&&M.type==="ohlc"?[C,C]:[]);m.enter().append("path").classed("legendohlc",!0).attr("d",function(P,T){return T?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",u).style("stroke-miterlimit",1),m.exit().remove(),m.each(function(P,T){var B=Op.select(this),F=M[T?"increasing":"decreasing"],U=l(void 0,F.line,q3,Ib);B.style("fill","none").call(Kv.dashLine,F.line.dash,U),U&&w0.stroke(B,F.line.color)})}function E(C){L(C,this,"pie")}function A(C){L(C,this,"funnelarea")}function L(C,M,m){var P=C[0],T=P.trace,B=m?T.visible&&T.type===m:VN.traceIs(T,m),F=Op.select(M).select("g.legendpoints").selectAll("path.legend"+m).data(B?[C]:[]);if(F.enter().append("path").classed("legend"+m,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",u),F.exit().remove(),F.size()){var U=T.marker||{},G=l(Lut(U.line.width,P.pts),U.line,q3,Ib),j="pieLike",H=bp.minExtend(T,{marker:{line:{width:G}}},j),N=bp.minExtend(P,{trace:H},j);Cut(F,N,H,r)}}function x(C){var M=C[0].trace,m,P=[];if(M.visible)switch(M.type){case"histogram2d":case"heatmap":P=[["M-15,-2V4H15V-2Z"]],m=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":P=[["M-6,-6V6H6V-6Z"]],m=!0;break;case"densitymapbox":case"densitymap":P=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],m="radial";break;case"cone":P=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],m=!1;break;case"streamtube":P=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],m=!1;break;case"surface":P=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],m=!0;break;case"mesh3d":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],m=!1;break;case"volume":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],m=!0;break;case"isosurface":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],m=!1;break}var T=Op.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(P);T.enter().append("path").classed("legend3dandfriends",!0).attr("transform",u).style("stroke-miterlimit",1),T.exit().remove(),T.each(function(B,F){var U=Op.select(this),G=GN(M),j=G.colorscale,H=G.reversescale,N=function(be){if(be.size()){var ze="legendfill-"+M.uid;Kv.gradient(be,r,ze,HN(H,m==="radial"),j,"fill")}},W;if(j){if(!m){var ae=j.length;W=F===0?j[H?ae-1:0][1]:F===1?j[H?0:ae-1][1]:j[Math.floor((ae-1)/2)][1]}}else{var re=M.vertexcolor||M.facecolor||M.color;W=bp.isArrayOrTypedArray(re)?re[F]||re[0]:re}U.attr("d",B[0]),W?U.call(w0.fill,W):U.call(N)})}};function HN(e,t){var r=t?"radial":"horizontal";return r+(e?"":"reversed")}function Ele(e){var t=e[0].trace,r=t.contours,n=BP.hasLines(t),i=BP.hasMarkers(t),a=t.visible&&t.fill&&t.fill!=="none",o=!1,s=!1;if(r){var u=r.coloring;u==="lines"?o=!0:n=u==="none"||u==="heatmap"||r.showlines,r.type==="constraint"?a=r._operation!=="=":(u==="fill"||u==="heatmap")&&(s=!0)}return{showMarker:i,showLine:n,showFill:a,showGradientLine:o,showGradientFill:s,anyLine:n||o,anyFill:a||s}}function kle(e,t,r){return e&&bp.isArrayOrTypedArray(e)?t:e>r?r:e}});var YN=Ae((Nor,qle)=>{"use strict";var Mv=Jl(),qh=ei(),XN=Cc(),V3=$l(),Lle=g3(),jN=xp(),Nh=Mu(),qP=jl(),Rb=Xf(),Ple=dle(),id=NN(),ZN=td(),Ble=ZN.LINE_SPACING,U3=ZN.FROM_TL,zle=ZN.FROM_BR,Ile=yle(),Iut=WN(),Rle=DP(),N3=1,Rut=/^legend[0-9]*$/;qle.exports=function(t,r){if(r)Dle(t,r);else{var n=t._fullLayout,i=n._legends,a=n._infolayer.selectAll('[class^="legend"]');a.each(function(){var l=Mv.select(this),f=l.attr("class"),c=f.split(" ")[0];c.match(Rut)&&i.indexOf(c)===-1&&l.remove()});for(var o=0;o1)}var p=n.hiddenlabels||[];if(!s&&(!n.showlegend||!u.length))return o.selectAll("."+i).remove(),n._topdefs.select("#"+a).remove(),XN.autoMargin(e,i);var _=qh.ensureSingle(o,"g",i,function(M){s||M.attr("pointer-events","all")}),b=qh.ensureSingleById(n._topdefs,"clipPath",a,function(M){M.append("rect")}),v=qh.ensureSingle(_,"rect","bg",function(M){M.attr("shape-rendering","crispEdges")});v.call(qP.stroke,r.bordercolor).call(qP.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px");var k=qh.ensureSingle(_,"g","scrollbox"),E=r.title;r._titleWidth=0,r._titleHeight=0;var A;E.text?(A=qh.ensureSingle(k,"text",i+"titletext"),A.attr("text-anchor","start").call(Nh.font,E.font).text(E.text),NP(A,k,e,r,N3)):k.selectAll("."+i+"titletext").remove();var L=qh.ensureSingle(_,"rect","scrollbar",function(M){M.attr(id.scrollBarEnterAttrs).call(qP.fill,id.scrollBarColor)}),x=k.selectAll("g.groups").data(u);x.enter().append("g").attr("class","groups"),x.exit().remove();var C=x.selectAll("g.traces").data(qh.identity);C.enter().append("g").attr("class","traces"),C.exit().remove(),C.style("opacity",function(M){var m=M[0].trace;return V3.traceIs(m,"pie-like")?p.indexOf(M[0].label)!==-1?.5:1:m.visible==="legendonly"?.5:1}).each(function(){Mv.select(this).call(Fut,e,r)}).call(Iut,e,r).each(function(){s||Mv.select(this).call(But,e,i)}),qh.syncOrAsync([XN.previousPromises,function(){return Nut(e,x,C,r)},function(){var M=n._size,m=r.borderwidth,P=r.xref==="paper",T=r.yref==="paper";if(E.text&&Dut(A,r,m),!s){var B,F;P?B=M.l+M.w*r.x-U3[UP(r)]*r._width:B=n.width*r.x-U3[UP(r)]*r._width,T?F=M.t+M.h*(1-r.y)-U3[VP(r)]*r._effHeight:F=n.height*(1-r.y)-U3[VP(r)]*r._effHeight;var U=Uut(e,i,B,F);if(U)return;if(n.margin.autoexpand){var G=B,j=F;B=P?qh.constrain(B,0,n.width-r._width):G,F=T?qh.constrain(F,0,n.height-r._effHeight):j,B!==G&&qh.log("Constrain "+i+".x to make legend fit inside graph"),F!==j&&qh.log("Constrain "+i+".y to make legend fit inside graph")}Nh.setTranslate(_,B,F)}if(L.on(".drag",null),_.on("wheel",null),s||r._height<=r._maxHeight||e._context.staticPlot){var H=r._effHeight;s&&(H=r._height),v.attr({width:r._width-m,height:H-m,x:m/2,y:m/2}),Nh.setTranslate(k,0,0),b.select("rect").attr({width:r._width-2*m,height:H-2*m,x:m,y:m}),Nh.setClipUrl(k,a,e),Nh.setRect(L,0,0,0,0),delete r._scrollY}else{var N=Math.max(id.scrollBarMinHeight,r._effHeight*r._effHeight/r._height),W=r._effHeight-N-2*id.scrollBarMargin,re=r._height-r._effHeight,ae=W/re,be=Math.min(r._scrollY||0,re);v.attr({width:r._width-2*m+id.scrollBarWidth+id.scrollBarMargin,height:r._effHeight-m,x:m/2,y:m/2}),b.select("rect").attr({width:r._width-2*m+id.scrollBarWidth+id.scrollBarMargin,height:r._effHeight-2*m,x:m,y:m+be}),Nh.setClipUrl(k,a,e),Ue(be,N,ae),_.on("wheel",function(){be=qh.constrain(r._scrollY+Mv.event.deltaY/re*W,0,re),Ue(be,N,ae),be!==0&&be!==re&&Mv.event.preventDefault()});var ze,Ce,de,te=function(Je,nt,gt){var Nt=(gt-nt)/ae+Je;return qh.constrain(Nt,0,re)},ke=function(Je,nt,gt){var Nt=(nt-gt)/ae+Je;return qh.constrain(Nt,0,re)},Ee=Mv.behavior.drag().on("dragstart",function(){var Je=Mv.event.sourceEvent;Je.type==="touchstart"?ze=Je.changedTouches[0].clientY:ze=Je.clientY,de=be}).on("drag",function(){var Je=Mv.event.sourceEvent;Je.buttons===2||Je.ctrlKey||(Je.type==="touchmove"?Ce=Je.changedTouches[0].clientY:Ce=Je.clientY,be=te(de,ze,Ce),Ue(be,N,ae))});L.call(Ee);var Me=Mv.behavior.drag().on("dragstart",function(){var Je=Mv.event.sourceEvent;Je.type==="touchstart"&&(ze=Je.changedTouches[0].clientY,de=be)}).on("drag",function(){var Je=Mv.event.sourceEvent;Je.type==="touchmove"&&(Ce=Je.changedTouches[0].clientY,be=ke(de,ze,Ce),Ue(be,N,ae))});k.call(Me)}function Ue(Je,nt,gt){r._scrollY=e._fullLayout[i]._scrollY=Je,Nh.setTranslate(k,0,-Je),Nh.setRect(L,r._width,id.scrollBarMargin+Je*gt,id.scrollBarWidth,nt),b.select("rect").attr("y",m+Je)}if(e._context.edits.legendPosition){var De,ye,qe,ce;_.classed("cursor-move",!0),jN.init({element:_.node(),gd:e,prepFn:function(Je){if(Je.target!==L.node()){var nt=Nh.getTranslate(_);qe=nt.x,ce=nt.y}},moveFn:function(Je,nt){if(qe!==void 0&&ce!==void 0){var gt=qe+Je,Nt=ce+nt;Nh.setTranslate(_,gt,Nt),De=jN.align(gt,r._width,M.l,M.l+M.w,r.xanchor),ye=jN.align(Nt+r._height,-r._height,M.t+M.h,M.t,r.yanchor)}},doneFn:function(){if(De!==void 0&&ye!==void 0){var Je={};Je[i+".x"]=De,Je[i+".y"]=ye,V3.call("_guiRelayout",e,Je)}},clickFn:function(Je,nt){var gt=o.selectAll("g.traces").filter(function(){var Nt=this.getBoundingClientRect();return nt.clientX>=Nt.left&&nt.clientX<=Nt.right&&nt.clientY>=Nt.top&&nt.clientY<=Nt.bottom});gt.size()>0&&Ole(e,_,gt,Je,nt)}})}}],e)}}function OP(e,t,r){var n=e[0],i=n.width,a=t.entrywidthmode,o=n.trace.legendwidth||t.entrywidth;return a==="fraction"?t._maxWidth*o:r+(o||i)}function Ole(e,t,r,n,i){var a=r.data()[0][0].trace,o={event:i,node:r.node(),curveNumber:a.index,expandedIndex:a.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};a._group&&(o.group=a._group),V3.traceIs(a,"pie-like")&&(o.label=r.datum()[0].label);var s=Lle.triggerHandler(e,"plotly_legendclick",o);if(n===1){if(s===!1)return;t._clickTimeout=setTimeout(function(){e._fullLayout&&Ple(r,e,n)},e._context.doubleClickDelay)}else if(n===2){t._clickTimeout&&clearTimeout(t._clickTimeout),e._legendMouseDownTime=0;var u=Lle.triggerHandler(e,"plotly_legenddoubleclick",o);u!==!1&&s!==!1&&Ple(r,e,n)}}function Fut(e,t,r){var n=GP(r),i=e.data()[0][0],a=i.trace,o=V3.traceIs(a,"pie-like"),s=!r._inHover&&t._context.edits.legendText&&!o,u=r._maxNameLength,l,f;i.groupTitle?(l=i.groupTitle.text,f=i.groupTitle.font):(f=r.font,r.entries?l=i.text:(l=o?i.label:a.name,a._meta&&(l=qh.templateString(l,a._meta))));var c=qh.ensureSingle(e,"text",n+"text");c.attr("text-anchor","start").call(Nh.font,f).text(s?Fle(l,u):l);var h=r.indentation+r.itemwidth+id.itemGap*2;Rb.positionText(c,h,0),s?c.call(Rb.makeEditable,{gd:t,text:l}).call(NP,e,t,r).on("edit",function(d){this.text(Fle(d,u)).call(NP,e,t,r);var p=i.trace._fullInput||{},_={};return _.name=d,p._isShape?V3.call("_guiRelayout",t,"shapes["+a.index+"].name",_.name):V3.call("_guiRestyle",t,_,a.index)}):NP(c,e,t,r)}function Fle(e,t){var r=Math.max(4,t);if(e&&e.trim().length>=r/2)return e;e=e||"";for(var n=r-e.length;n>0;n--)e+=" ";return e}function But(e,t,r){var n=t._context.doubleClickDelay,i,a=1,o=qh.ensureSingle(e,"rect",r+"toggle",function(s){t._context.staticPlot||s.style("cursor","pointer").attr("pointer-events","all"),s.call(qP.fill,"rgba(0,0,0,0)")});t._context.staticPlot||(o.on("mousedown",function(){i=new Date().getTime(),i-t._legendMouseDownTimen&&(a=Math.max(a-1,1)),Ole(t,s,e,a,Mv.event)}}))}function NP(e,t,r,n,i){n._inHover&&e.attr("data-notex",!0),Rb.convertToTspans(e,r,function(){Out(t,r,n,i)})}function Out(e,t,r,n){var i=e.data()[0][0];if(!r._inHover&&i&&!i.trace.showlegend){e.remove();return}var a=e.select("g[class*=math-group]"),o=a.node(),s=GP(r);r||(r=t._fullLayout[s]);var u=r.borderwidth,l;n===N3?l=r.title.font:i.groupTitle?l=i.groupTitle.font:l=r.font;var f=l.size*Ble,c,h;if(o){var d=Nh.bBox(o);c=d.height,h=d.width,n===N3?Nh.setTranslate(a,u,u+c*.75):Nh.setTranslate(a,0,c*.25)}else{var p="."+s+(n===N3?"title":"")+"text",_=e.select(p),b=Rb.lineCount(_),v=_.node();if(c=f*b,h=v?Nh.bBox(v).width:0,n===N3)r.title.side==="left"&&(h+=id.itemGap*2),Rb.positionText(_,u+id.titlePad,u+f);else{var k=id.itemGap*2+r.indentation+r.itemwidth;i.groupTitle&&(k=id.itemGap,h-=r.indentation+r.itemwidth),Rb.positionText(_,k,-f*((b-1)/2-.3))}}n===N3?(r._titleWidth=h,r._titleHeight=c):(i.lineHeight=f,i.height=Math.max(c,16)+3,i.width=h)}function qut(e){var t=0,r=0,n=e.title.side;return n&&(n.indexOf("left")!==-1&&(t=e._titleWidth),n.indexOf("top")!==-1&&(r=e._titleHeight)),[t,r]}function Nut(e,t,r,n){var i=e._fullLayout,a=GP(n);n||(n=i[a]);var o=i._size,s=Rle.isVertical(n),u=Rle.isGrouped(n),l=n.entrywidthmode==="fraction",f=n.borderwidth,c=2*f,h=id.itemGap,d=n.indentation+n.itemwidth+h*2,p=2*(f+h),_=VP(n),b=n.y<0||n.y===0&&_==="top",v=n.y>1||n.y===1&&_==="bottom",k=n.tracegroupgap,E={};let{orientation:A,yref:L}=n,{maxheight:x}=n,C=b||v||A!=="v"||L!=="paper";x||(x=C?.5:1);let M=C?i.height:o.h;n._maxHeight=Math.max(x>1?x:x*M,30);var m=0;n._width=0,n._height=0;var P=qut(n);if(s)r.each(function(Ue){var De=Ue[0].height;Nh.setTranslate(this,f+P[0],f+P[1]+n._height+De/2+h),n._height+=De,n._width=Math.max(n._width,Ue[0].width)}),m=d+n._width,n._width+=h+d+c,n._height+=p,u&&(t.each(function(Ue,De){Nh.setTranslate(this,0,De*n.tracegroupgap)}),n._height+=(n._lgroupsLength-1)*n.tracegroupgap);else{var T=UP(n),B=n.x<0||n.x===0&&T==="right",F=n.x>1||n.x===1&&T==="left",U=v||b,G=i.width/2;n._maxWidth=Math.max(B?U&&T==="left"?o.l+o.w:G:F?U&&T==="right"?o.r+o.w:G:o.w,2*d);var j=0,H=0;r.each(function(Ue){var De=OP(Ue,n,d);j=Math.max(j,De),H+=De}),m=null;var N=0;if(u){var W=0,re=0,ae=0;t.each(function(){var Ue=0,De=0;Mv.select(this).selectAll("g.traces").each(function(qe){var ce=OP(qe,n,d),Je=qe[0].height;Nh.setTranslate(this,P[0],P[1]+f+h+Je/2+De),De+=Je,Ue=Math.max(Ue,ce),E[qe[0].trace.legendgroup]=Ue});var ye=Ue+h;re>0&&ye+f+re>n._maxWidth?(N=Math.max(N,re),re=0,ae+=W+k,W=De):W=Math.max(W,De),Nh.setTranslate(this,re,ae),re+=ye}),n._width=Math.max(N,re)+f,n._height=ae+W+p}else{var be=r.size(),ze=H+c+(be-1)*h=n._maxWidth&&(N=Math.max(N,ke),de=0,te+=Ce,n._height+=Ce,Ce=0),Nh.setTranslate(this,P[0]+f+de,P[1]+f+te+De/2+h),ke=de+ye+h,de+=qe,Ce=Math.max(Ce,De)}),ze?(n._width=de+c,n._height=Ce+p):(n._width=Math.max(N,ke)+c,n._height+=Ce+p)}}n._width=Math.ceil(Math.max(n._width+P[0],n._titleWidth+2*(f+id.titlePad))),n._height=Math.ceil(Math.max(n._height+P[1],n._titleHeight+2*(f+id.itemGap))),n._effHeight=Math.min(n._height,n._maxHeight);var Ee=e._context.edits,Me=Ee.legendText||Ee.legendPosition;r.each(function(Ue){var De=Mv.select(this).select("."+a+"toggle"),ye=Ue[0].height,qe=Ue[0].trace.legendgroup,ce=OP(Ue,n,d);u&&qe!==""&&(ce=E[qe]);var Je=Me?d:m||ce;!s&&!l&&(Je+=h/2),Nh.setRect(De,0,-ye/2,Je,ye)})}function Uut(e,t,r,n){var i=e._fullLayout,a=i[t],o=UP(a),s=VP(a),u=a.xref==="paper",l=a.yref==="paper";e._fullLayout._reservedMargin[t]={};var f=a.y<.5?"b":"t",c=a.x<.5?"l":"r",h={r:i.width-r,l:r+a._width,b:i.height-n,t:n+a._effHeight};if(u&&l)return XN.autoMargin(e,t,{x:a.x,y:a.y,l:a._width*U3[o],r:a._width*zle[o],b:a._effHeight*zle[s],t:a._effHeight*U3[s]});u?e._fullLayout._reservedMargin[t][f]=h[f]:l||a.orientation==="v"?e._fullLayout._reservedMargin[t][c]=h[c]:e._fullLayout._reservedMargin[t][f]=h[f]}function UP(e){return qh.isRightAnchor(e)?"right":qh.isCenterAnchor(e)?"center":"left"}function VP(e){return qh.isBottomAnchor(e)?"bottom":qh.isMiddleAnchor(e)?"middle":"top"}function GP(e){return e._id||"legend"}});var QN=Ae($N=>{"use strict";var Db=Jl(),Mg=ku(),Nle=cd(),ah=ei(),Vut=ah.pushUnique,KN=ah.strTranslate,Gut=ah.strRotate,Hut=g3(),T0=Xf(),Wut=ule(),by=Mu(),vd=jl(),HP=xp(),wy=wu(),jut=dd().zindexSeparator,H3=$l(),Sm=iv(),Fb=DM(),Xut=BN(),Zut=YN(),Zle=Fb.YANGLE,JN=Math.PI*Zle/180,Yut=1/Math.sin(JN),Kut=Math.cos(JN),Jut=Math.sin(JN),Uc=Fb.HOVERARROWSIZE,kf=Fb.HOVERTEXTPAD,Ule={box:!0,ohlc:!0,violin:!0,candlestick:!0},$ut={scatter:!0,scattergl:!0,splom:!0};function Vle(e,t){return e.distance-t.distance}$N.hover=function(t,r,n,i){t=ah.getGraphDiv(t);var a=r.target;ah.throttle(t._fullLayout._uid+Fb.HOVERID,Fb.HOVERMINTIME,function(){Qut(t,r,n,i,a)})};$N.loneHover=function(t,r){var n=!0;Array.isArray(t)||(n=!1,t=[t]);var i=r.gd,a=Qle(i),o=eue(i),s=t.map(function(b){var v=b._x0||b.x0||b.x||0,k=b._x1||b.x1||b.x||0,E=b._y0||b.y0||b.y||0,A=b._y1||b.y1||b.y||0,L=b.eventData;if(L){var x=Math.min(v,k),C=Math.max(v,k),M=Math.min(E,A),m=Math.max(E,A),P=b.trace;if(H3.traceIs(P,"gl3d")){var T=i._fullLayout[P.scene]._scene.container,B=T.offsetLeft,F=T.offsetTop;x+=B,C+=B,M+=F,m+=F}L.bbox={x0:x+o,x1:C+o,y0:M+a,y1:m+a},r.inOut_bbox&&r.inOut_bbox.push(L.bbox)}else L=!1;return{color:b.color||vd.defaultLine,x0:b.x0||b.x||0,x1:b.x1||b.x||0,y0:b.y0||b.y||0,y1:b.y1||b.y||0,xLabel:b.xLabel,yLabel:b.yLabel,zLabel:b.zLabel,text:b.text,name:b.name,idealAlign:b.idealAlign,borderColor:b.borderColor,fontFamily:b.fontFamily,fontSize:b.fontSize,fontColor:b.fontColor,fontWeight:b.fontWeight,fontStyle:b.fontStyle,fontVariant:b.fontVariant,nameLength:b.nameLength,textAlign:b.textAlign,trace:b.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:b.hovertemplate||!1,hovertemplateLabels:b.hovertemplateLabels||!1,eventData:L}}),u=!1,l=Kle(s,{gd:i,hovermode:"closest",rotateLabels:u,bgColor:r.bgColor||vd.background,container:Db.select(r.container),outerContainer:r.outerContainer||r.container}),f=l.hoverLabels,c=5,h=0,d=0;f.sort(function(b,v){return b.y0-v.y0}).each(function(b,v){var k=b.y0-b.by/2;k-cC[0]._length||ce<0||ce>M[0]._length)return HP.unhoverRaw(e,t)}if(t.pointerX=qe+C[0]._offset,t.pointerY=ce+M[0]._offset,"xval"in t?j=Sm.flat(a,t.xval):j=Sm.p2c(C,qe),"yval"in t?H=Sm.flat(a,t.yval):H=Sm.p2c(M,ce),!Mg(j[0])||!Mg(H[0]))return ah.warn("Fx.hover failed",t,e),HP.unhoverRaw(e,t)}var gt=1/0;function Nt(ni,$i){for(W=0;WEe&&(U.splice(0,Ee),gt=U[0].distance),c&&F!==0&&U.length===0){ke.distance=F,ke.index=!1;var Rt=ae._module.hoverPoints(ke,de,te,"closest",{hoverLayer:s._hoverlayer});if(Rt&&(Rt=Rt.filter(function(Nr){return Nr.spikeDistance<=F})),Rt&&Rt.length){var yt,Gt=Rt.filter(function(Nr){return Nr.xa.showspikes&&Nr.xa.spikesnap!=="hovered data"});if(Gt.length){var Wt=Gt[0];Mg(Wt.x0)&&Mg(Wt.y0)&&(yt=Ke(Wt),(!Me.vLinePoint||Me.vLinePoint.spikeDistance>yt.spikeDistance)&&(Me.vLinePoint=yt))}var xr=Rt.filter(function(Nr){return Nr.ya.showspikes&&Nr.ya.spikesnap!=="hovered data"});if(xr.length){var Lr=xr[0];Mg(Lr.x0)&&Mg(Lr.y0)&&(yt=Ke(Lr),(!Me.hLinePoint||Me.hLinePoint.spikeDistance>yt.spikeDistance)&&(Me.hLinePoint=yt))}}}}}Nt();function at(ni,$i,Qi){for(var si=null,Ai=1/0,Ni,Rt=0;Rtni.trace.index===He.trace.index):U=[He];var it=U.length,et=Xle("x",He,s),It=Xle("y",He,s);Nt(et,It);var Yt=[],cr={},_r=0,yr=function(ni){var $i=Ule[ni.trace.type]?Yle(ni):ni.trace.index;if(!cr[$i])_r++,cr[$i]=_r,Yt.push(ni);else{var Qi=cr[$i]-1,si=Yt[Qi];Qi>0&&Math.abs(ni.distance)it-1;Ut--)yr(U[Ut]);U=Yt,Dt()}var Re=e._hoverdata,xe=[],Oe=Qle(e),Ie=eue(e);for(let ni of U){var Fe=Sm.makeEventData(ni,ni.trace,ni.cd);if(ni.hovertemplate!==!1){var ft=!1;ni.cd[ni.index]&&ni.cd[ni.index].ht&&(ft=ni.cd[ni.index].ht),ni.hovertemplate=ft||ni.trace.hovertemplate||!1}if(ni.xa&&ni.ya){var ge=ni.x0+ni.xa._offset,fe=ni.x1+ni.xa._offset,pe=ni.y0+ni.ya._offset,dt=ni.y1+ni.ya._offset,Pt=Math.min(ge,fe),zt=Math.max(ge,fe),rr=Math.min(pe,dt),Gr=Math.max(pe,dt);Fe.bbox={x0:Pt+Ie,x1:zt+Ie,y0:rr+Oe,y1:Gr+Oe}}ni.eventData=[Fe],xe.push(Fe)}e._hoverdata=xe;var Br=h==="y"&&(G.length>1||U.length>1)||h==="closest"&&Ue&&U.length>1,Er=vd.combine(s.plot_bgcolor||vd.background,s.paper_bgcolor),Rr=Kle(U,{gd:e,hovermode:h,rotateLabels:Br,bgColor:Er,container:s._hoverlayer,outerContainer:s._paper.node(),commonLabelOpts:s.hoverlabel,hoverdistance:s.hoverdistance}),pi=Rr.hoverLabels;if(Sm.isUnifiedHover(h)||(tft(pi,Br,s,Rr.commonLabelBoundingBox),$le(pi,Br,s._invScaleX,s._invScaleY)),i&&i.tagName){var Di=H3.getComponentMethod("annotations","hasClickToShow")(e,xe);Wut(Db.select(i),Di?"pointer":"")}!i||n||!nft(e,t,Re)||(Re&&e.emit("plotly_unhover",{event:t,points:Re}),e.emit("plotly_hover",{event:t,points:e._hoverdata,xaxes:C,yaxes:M,xvals:j,yvals:H}))}function Yle(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var eft=/([\s\S]*)<\/extra>/;function Kle(e,t){var r=t.gd,n=r._fullLayout,i=t.hovermode,a=t.rotateLabels,o=t.bgColor,s=t.container,u=t.outerContainer,l=t.commonLabelOpts||{};if(e.length===0)return[[]];var f=t.fontFamily||Fb.HOVERFONT,c=t.fontSize||Fb.HOVERFONTSIZE,h=t.fontWeight||n.font.weight,d=t.fontStyle||n.font.style,p=t.fontVariant||n.font.variant,_=t.fontTextcase||n.font.textcase,b=t.fontLineposition||n.font.lineposition,v=t.fontShadow||n.font.shadow,k=e[0],E=k.xa,A=k.ya,L=i.charAt(0),x=L+"Label",C=k[x];if(C===void 0&&E.type==="multicategory")for(var M=0;Mn.width-Oe&&(Ie=n.width-Oe),He.attr("d","M"+(Ut-Ie)+",0L"+(Ut-Ie+Uc)+","+xe+Uc+"H"+Oe+"v"+xe+(kf*2+yr.height)+"H"+-Oe+"V"+xe+Uc+"H"+(Ut-Ie-Uc)+"Z"),Ut=Ie,W.minX=Ut-Oe,W.maxX=Ut+Oe,E.side==="top"?(W.minY=Re-(kf*2+yr.height),W.maxY=Re-kf):(W.minY=Re+kf,W.maxY=Re+(kf*2+yr.height))}else{var Fe,ft,ge;A.side==="right"?(Fe="start",ft=1,ge="",Ut=E._offset+E._length):(Fe="end",ft=-1,ge="-",Ut=E._offset),Re=A._offset+(k.y0+k.y1)/2,it.attr("text-anchor",Fe),He.attr("d","M0,0L"+ge+Uc+","+Uc+"V"+(kf+yr.height/2)+"h"+ge+(kf*2+yr.width)+"V-"+(kf+yr.height/2)+"H"+ge+Uc+"V-"+Uc+"Z"),W.minY=Re-(kf+yr.height/2),W.maxY=Re+(kf+yr.height/2),A.side==="right"?(W.minX=Ut+Uc,W.maxX=Ut+Uc+(kf*2+yr.width)):(W.minX=Ut-Uc-(kf*2+yr.width),W.maxX=Ut-Uc);var fe=yr.height/2,pe=P-yr.top-fe,dt="clip"+n._uid+"commonlabel"+A._id,Pt;if(UtHe.hoverinfo!=="none");if(Ye.length===0)return[];var re=n.hoverlabel,ae=re.font,be=Ye[0],ze=((i==="x unified"?be.xa:be.ya).unifiedhovertitle||{}).text,Ce=ze?ah.hovertemplateString({data:i==="x unified"?[{xa:be.xa,x:be.xVal}]:[{ya:be.ya,y:be.yVal}],fallback:be.trace.hovertemplatefallback,locale:n._d3locale,template:ze}):C,de={showlegend:!0,legend:{title:{text:Ce,font:ae},font:ae,bgcolor:re.bgcolor,bordercolor:re.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:n.legend?n.legend.traceorder:void 0,orientation:"v"}},te={font:ae};Xut(de,te,r._fullData);var ke=te.legend;ke.entries=[];for(var Ee=0;Ee=0?ot=Dt:Zt+nt=0?ot=Zt:Et+nt=0?Tt=wt:St+gt=0?Tt=St:Te+gt=0,(Ye.idealAlign==="top"||!Gr)&&Br?(ge-=pe/2,Ye.anchor="end"):Gr?(ge+=pe/2,Ye.anchor="start"):Ye.anchor="middle",Ye.crossPos=ge;else{if(Ye.pos=ge,Gr=ft+fe/2+rr<=T,Br=ft-fe/2-rr>=0,(Ye.idealAlign==="left"||!Gr)&&Br)ft-=fe/2,Ye.anchor="end";else if(Gr)ft+=fe/2,Ye.anchor="start";else{Ye.anchor="middle";var Er=rr/2,Rr=ft+Er-T,pi=ft-Er;Rr>0&&(ft-=Rr),pi<0&&(ft+=-pi)}Ye.crossPos=ft}Re.attr("text-anchor",Ye.anchor),Oe&&xe.attr("text-anchor",Ye.anchor),He.attr("transform",KN(ft,ge)+(a?Gut(Zle):""))}),{hoverLabels:vt,commonLabelBoundingBox:W}}function Gle(e,t,r,n,i,a){var c,h;var o="",s="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=ah.templateString(e.name,e.trace._meta)),o=jle(e.name,e.nameLength));var u=r.charAt(0),l=u==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(s+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(s+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(s+=(s?"z: ":"")+e.zLabel)):t&&e[u+"Label"]===i?s=e[l+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(s=e.yLabel):e.yLabel===void 0?s=e.xLabel:s="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(s+=(s?"
":"")+e.text),e.extraText!==void 0&&(s+=(s?"
":"")+e.extraText),a&&s===""&&!e.hovertemplate&&(o===""&&a.remove(),s=o),(h=(c=e.trace)==null?void 0:c.hoverlabel)!=null&&h.split&&(e.hovertemplate="");let{hovertemplate:f=!1}=e;if(f){let d=e.hovertemplateLabels||e;e[u+"Label"]!==i&&(d[u+"other"]=d[u+"Val"],d[u+"otherLabel"]=d[u+"Label"]),s=ah.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:n._d3locale,template:f}),s=s.replace(eft,(p,_)=>(o=jle(_,e.nameLength),""))}return[s,o]}function tft(e,t,r,n){var i=t?"xa":"ya",a=t?"ya":"xa",o=0,s=1,u=e.size(),l=new Array(u),f=0,c=n.minX,h=n.maxX,d=n.minY,p=n.maxY,_=function(j){return j*r._invScaleX},b=function(j){return j*r._invScaleY};e.each(function(j){var H=j[i],N=j[a],W=H._id.charAt(0)==="x",re=H.range;f===0&&re&&re[0]>re[1]!==W&&(s=-1);var ae=0,be=W?r.width:r.height;if(r.hovermode==="x"||r.hovermode==="y"){var ze=Jle(j,t),Ce=j.anchor,de=Ce==="end"?-1:1,te,ke;if(Ce==="middle")te=j.crossPos+(W?b(ze.y-j.by/2):_(j.bx/2+j.tx2width/2)),ke=te+(W?b(j.by):_(j.bx));else if(W)te=j.crossPos+b(Uc+ze.y)-b(j.by/2-Uc),ke=te+b(j.by);else{var Ee=_(de*Uc+ze.x),Me=Ee+_(de*j.bx);te=j.crossPos+Math.min(Ee,Me),ke=j.crossPos+Math.max(Ee,Me)}W?d!==void 0&&p!==void 0&&Math.min(ke,p)-Math.max(te,d)>1&&(N.side==="left"?(ae=N._mainLinePosition,be=r.width):be=N._mainLinePosition):c!==void 0&&h!==void 0&&Math.min(ke,h)-Math.max(te,c)>1&&(N.side==="top"?(ae=N._mainLinePosition,be=r.height):be=N._mainLinePosition)}l[f++]=[{datum:j,traceIndex:j.trace.index,dp:0,pos:j.pos,posref:j.posref,size:j.by*(W?Yut:1)/2,pmin:ae,pmax:be}]}),l.sort(function(j,H){return j[0].posref-H[0].posref||s*(H[0].traceIndex-j[0].traceIndex)});var v,k,E,A,L,x,C;function M(j){var H=j[0],N=j[j.length-1];if(k=H.pmin-H.pos-H.dp+H.size,E=N.pos+N.dp+N.size-H.pmax,k>.01){for(L=j.length-1;L>=0;L--)j[L].dp+=k;v=!1}if(!(E<.01)){if(k<-.01){for(L=j.length-1;L>=0;L--)j[L].dp-=E;v=!1}if(v){var W=0;for(A=0;AH.pmax&&W++;for(A=j.length-1;A>=0&&!(W<=0);A--)x=j[A],x.pos>H.pmax-1&&(x.del=!0,W--);for(A=0;A=0;L--)j[L].dp-=E;for(A=j.length-1;A>=0&&!(W<=0);A--)x=j[A],x.pos+x.dp+x.size>H.pmax&&(x.del=!0,W--)}}}for(;!v&&o<=u;){for(o++,v=!0,A=0;A.01){for(L=P.length-1;L>=0;L--)P[L].dp+=k;for(m.push.apply(m,P),l.splice(A+1,1),C=0,L=m.length-1;L>=0;L--)C+=m[L].dp;for(E=C/m.length,L=m.length-1;L>=0;L--)m[L].dp-=E;v=!1}else A++}l.forEach(M)}for(A=l.length-1;A>=0;A--){var F=l[A];for(L=F.length-1;L>=0;L--){var U=F[L],G=U.datum;G.offset=U.dp,G.del=U.del}}}function Jle(e,t){var r=0,n=e.offset;return t&&(n*=-Jut,r=e.offset*Kut),{x:r,y:n}}function rft(e){var t={start:1,end:-1,middle:0}[e.anchor],r=t*(Uc+kf),n=r+t*(e.txwidth+kf),i=e.anchor==="middle";return i&&(r-=e.tx2width/2,n+=e.txwidth/2+kf),{alignShift:t,textShiftX:r,text2ShiftX:n}}function $le(e,t,r,n){var i=function(o){return o*r},a=function(o){return o*n};e.each(function(o){var s=Db.select(this);if(o.del)return s.remove();var u=s.select("text.nums"),l=o.anchor,f=l==="end"?-1:1,c=rft(o),h=Jle(o,t),d=h.x,p=h.y,_=l==="middle",b="hoverlabel"in o.trace?o.trace.hoverlabel.showarrow:!0,v;_?v="M-"+i(o.bx/2+o.tx2width/2)+","+a(p-o.by/2)+"h"+i(o.bx)+"v"+a(o.by)+"h-"+i(o.bx)+"Z":b?v="M0,0L"+i(f*Uc+d)+","+a(Uc+p)+"v"+a(o.by/2-Uc)+"h"+i(f*o.bx)+"v-"+a(o.by)+"H"+i(f*Uc+d)+"V"+a(p-Uc)+"Z":v="M"+i(f*Uc+d)+","+a(p-o.by/2)+"h"+i(f*o.bx)+"v"+a(o.by)+"h"+i(-f*o.bx)+"Z",s.select("path").attr("d",v);var k=d+c.textShiftX,E=p+o.ty0-o.by/2+kf,A=o.textAlign||"auto";A!=="auto"&&(A==="left"&&l!=="start"?(u.attr("text-anchor","start"),k=_?-o.bx/2-o.tx2width/2+kf:-o.bx-kf):A==="right"&&l!=="end"&&(u.attr("text-anchor","end"),k=_?o.bx/2-o.tx2width/2-kf:o.bx+kf)),u.call(T0.positionText,i(k),a(E)),o.tx2width&&(s.select("text.name").call(T0.positionText,i(c.text2ShiftX+c.alignShift*kf+d),a(p+o.ty0-o.by/2+kf)),s.select("rect").call(by.setRect,i(c.text2ShiftX+(c.alignShift-1)*o.tx2width/2+d),a(p-o.by/2-1),i(o.tx2width),a(o.by+2)))})}function ift(e,t){var r=e.index,n=e.trace||{},i=e.cd[0],a=e.cd[r]||{};function o(h){return h||Mg(h)&&h===0}var s=Array.isArray(r)?function(h,d){var p=ah.castOption(i,r,h);return o(p)?p:ah.extractOption({},n,"",d)}:function(h,d){return ah.extractOption(a,n,h,d)};function u(h,d,p){var _=s(d,p);o(_)&&(e[h]=_)}if(u("hoverinfo","hi","hoverinfo"),u("bgcolor","hbg","hoverlabel.bgcolor"),u("borderColor","hbc","hoverlabel.bordercolor"),u("fontFamily","htf","hoverlabel.font.family"),u("fontSize","hts","hoverlabel.font.size"),u("fontColor","htc","hoverlabel.font.color"),u("fontWeight","htw","hoverlabel.font.weight"),u("fontStyle","hty","hoverlabel.font.style"),u("fontVariant","htv","hoverlabel.font.variant"),u("nameLength","hnl","hoverlabel.namelength"),u("textAlign","hta","hoverlabel.align"),e.posref=t==="y"||t==="closest"&&n.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=ah.constrain(e.x0,0,e.xa._length),e.x1=ah.constrain(e.x1,0,e.xa._length),e.y0=ah.constrain(e.y0,0,e.ya._length),e.y1=ah.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:wy.hoverLabelText(e.xa,e.xLabelVal,n.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:wy.hoverLabelText(e.ya,e.yLabelVal,n.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var l=wy.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+l+" / -"+wy.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+l,t==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var f=wy.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+f+" / -"+wy.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+f,t==="y"&&(e.distance+=1)}var c=e.hoverinfo||e.trace.hoverinfo;return c&&c!=="all"&&(c=Array.isArray(c)?c:c.split("+"),c.indexOf("x")===-1&&(e.xLabel=void 0),c.indexOf("y")===-1&&(e.yLabel=void 0),c.indexOf("z")===-1&&(e.zLabel=void 0),c.indexOf("text")===-1&&(e.text=void 0),c.indexOf("name")===-1&&(e.name=void 0)),e}function Hle(e,t,r){var n=r.container,i=r.fullLayout,a=i._size,o=r.event,s=!!t.hLinePoint,u=!!t.vLinePoint,l,f;if(n.selectAll(".spikeline").remove(),!!(u||s)){var c=vd.combine(i.plot_bgcolor,i.paper_bgcolor);if(s){var h=t.hLinePoint,d,p;l=h&&h.xa,f=h&&h.ya;var _=f.spikesnap;_==="cursor"?(d=o.pointerX,p=o.pointerY):(d=l._offset+h.x,p=f._offset+h.y);var b=Nle.readability(h.color,c)<1.5?vd.contrast(c):h.color,v=f.spikemode,k=f.spikethickness,E=f.spikecolor||b,A=wy.getPxPosition(e,f),L,x;if(v.indexOf("toaxis")!==-1||v.indexOf("across")!==-1){if(v.indexOf("toaxis")!==-1&&(L=A,x=d),v.indexOf("across")!==-1){var C=f._counterDomainMin,M=f._counterDomainMax;f.anchor==="free"&&(C=Math.min(C,f.position),M=Math.max(M,f.position)),L=a.l+C*a.w,x=a.l+M*a.w}n.insert("line",":first-child").attr({x1:L,x2:x,y1:p,y2:p,"stroke-width":k,stroke:E,"stroke-dasharray":by.dashStyle(f.spikedash,k)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:L,x2:x,y1:p,y2:p,"stroke-width":k+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}v.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:A+(f.side!=="right"?k:-k),cy:p,r:k,fill:E}).classed("spikeline",!0)}if(u){var m=t.vLinePoint,P,T;l=m&&m.xa,f=m&&m.ya;var B=l.spikesnap;B==="cursor"?(P=o.pointerX,T=o.pointerY):(P=l._offset+m.x,T=f._offset+m.y);var F=Nle.readability(m.color,c)<1.5?vd.contrast(c):m.color,U=l.spikemode,G=l.spikethickness,j=l.spikecolor||F,H=wy.getPxPosition(e,l),N,W;if(U.indexOf("toaxis")!==-1||U.indexOf("across")!==-1){if(U.indexOf("toaxis")!==-1&&(N=H,W=T),U.indexOf("across")!==-1){var re=l._counterDomainMin,ae=l._counterDomainMax;l.anchor==="free"&&(re=Math.min(re,l.position),ae=Math.max(ae,l.position)),N=a.t+(1-ae)*a.h,W=a.t+(1-re)*a.h}n.insert("line",":first-child").attr({x1:P,x2:P,y1:N,y2:W,"stroke-width":G,stroke:j,"stroke-dasharray":by.dashStyle(l.spikedash,G)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:P,x2:P,y1:N,y2:W,"stroke-width":G+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}U.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:P,cy:H-(l.side!=="top"?G:-G),r:G,fill:j}).classed("spikeline",!0)}}}function nft(e,t,r){if(!r||r.length!==e._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var i=r[n],a=e._hoverdata[n];if(i.curveNumber!==a.curveNumber||String(i.pointNumber)!==String(a.pointNumber)||String(i.pointNumbers)!==String(a.pointNumbers)||i.binNumber!==a.binNumber)return!0}return!1}function Wle(e,t){return!t||t.vLinePoint!==e._spikepoints.vLinePoint||t.hLinePoint!==e._spikepoints.hLinePoint}function jle(e,t){return T0.plainText(e||"",{len:t,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function aft(e,t){for(var r=t.charAt(0),n=[],i=[],a=[],o=0;oe.offsetTop+e.clientTop,eue=e=>e.offsetLeft+e.clientLeft;function G3(e,t){var r=e._fullLayout,n=t.getBoundingClientRect(),i=n.left,a=n.top,o=i+n.width,s=a+n.height,u=ah.apply3DTransform(r._invTransform)(i,a),l=ah.apply3DTransform(r._invTransform)(o,s),f=u[0],c=u[1],h=l[0],d=l[1];return{x:f,y:c,width:h-f,height:d-c,top:Math.min(c,d),left:Math.min(f,h),right:Math.max(f,h),bottom:Math.max(c,d)}}});var c5=Ae((Vor,tue)=>{"use strict";var oft=ei(),sft=jl(),lft=iv().isUnifiedHover;tue.exports=function(t,r,n,i){i=i||{};var a=r.legend;function o(s){i.font[s]||(i.font[s]=a?r.legend.font[s]:r.font[s])}r&&lft(r.hovermode)&&(i.font||(i.font={}),o("size"),o("family"),o("color"),o("weight"),o("style"),o("variant"),a?(i.bgcolor||(i.bgcolor=sft.combine(r.legend.bgcolor,r.paper_bgcolor)),i.bordercolor||(i.bordercolor=r.legend.bordercolor)):i.bgcolor||(i.bgcolor=r.paper_bgcolor)),n("hoverlabel.bgcolor",i.bgcolor),n("hoverlabel.bordercolor",i.bordercolor),n("hoverlabel.namelength",i.namelength),n("hoverlabel.showarrow",i.showarrow),oft.coerceFont(n,"hoverlabel.font",i.font),n("hoverlabel.align",i.align)}});var iue=Ae((Gor,rue)=>{"use strict";var uft=ei(),fft=c5(),cft=q1();rue.exports=function(t,r){function n(i,a){return uft.coerce(t,r,cft,i,a)}fft(t,r,n)}});var oue=Ae((Hor,aue)=>{"use strict";var nue=ei(),hft=n3(),dft=c5();aue.exports=function(t,r,n,i){function a(s,u){return nue.coerce(t,r,hft,s,u)}var o=nue.extendFlat({},i.hoverlabel);r.hovertemplate&&(o.namelength=-1),dft(t,r,a,o)}});var e7=Ae((Wor,sue)=>{"use strict";var pft=ei(),vft=q1();sue.exports=function(t,r){function n(i,a){return r[i]!==void 0?r[i]:pft.coerce(t,r,vft,i,a)}return n("clickmode"),n("hoversubplots"),n("hovermode")}});var fue=Ae((jor,uue)=>{"use strict";var lue=ei(),mft=q1(),yft=e7(),gft=c5();uue.exports=function(t,r){function n(f,c){return lue.coerce(t,r,mft,f,c)}var i=yft(t,r);i&&(n("hoverdistance"),n("spikedistance"));var a=n("dragmode");a==="select"&&n("selectdirection");var o=r._has("mapbox"),s=r._has("map"),u=r._has("geo"),l=r._basePlotModules.length;r.dragmode==="zoom"&&((o||s||u)&&l===1||(o||s)&&u&&l===2)&&(r.dragmode="pan"),gft(t,r,n),lue.coerceFont(n,"hoverlabel.grouptitlefont",r.hoverlabel.font)}});var due=Ae((Xor,hue)=>{"use strict";var t7=ei(),cue=$l();hue.exports=function(t){var r=t.calcdata,n=t._fullLayout;function i(l){return function(f){return t7.coerceHoverinfo({hoverinfo:f},{_module:l._module},n)}}for(var a=0;a{"use strict";var xft=$l(),bft=QN().hover;pue.exports=function(t,r,n){var i=xft.getComponentMethod("annotations","onClick")(t,t._hoverdata);n!==void 0&&bft(t,r,n,!0);function a(){t.emit("plotly_click",{points:t._hoverdata,event:r})}t._hoverdata&&r&&r.target&&(i&&i.then?i.then(a):a(),r.stopImmediatePropagation&&r.stopImmediatePropagation())}});var Xc=Ae((Yor,gue)=>{"use strict";var wft=Jl(),WP=ei(),Tft=xp(),h5=iv(),mue=q1(),yue=QN();gue.exports={moduleType:"component",name:"fx",constants:DM(),schema:{layout:mue},attributes:n3(),layoutAttributes:mue,supplyLayoutGlobalDefaults:iue(),supplyDefaults:oue(),supplyLayoutDefaults:fue(),calc:due(),getDistanceFunction:h5.getDistanceFunction,getClosest:h5.getClosest,inbox:h5.inbox,quadrature:h5.quadrature,appendArrayPointValue:h5.appendArrayPointValue,castHoverOption:Sft,castHoverinfo:Mft,hover:yue.hover,unhover:Tft.unhover,loneHover:yue.loneHover,loneUnhover:Aft,click:vue()};function Aft(e){var t=WP.isD3Selection(e)?e:wft.select(e);t.selectAll("g.hovertext").remove(),t.selectAll(".spikeline").remove()}function Sft(e,t,r){return WP.castOption(e,t,"hoverlabel."+r)}function Mft(e,t,r){function n(i){return WP.coerceHoverinfo({hoverinfo:i},{_module:e._module},t)}return WP.castOption(e,r,"hoverinfo",n)}});var Mm=Ae(Eg=>{"use strict";Eg.selectMode=function(e){return e==="lasso"||e==="select"};Eg.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Eg.openMode=function(e){return e==="drawline"||e==="drawopenpath"};Eg.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Eg.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};Eg.selectingOrDrawing=function(e){return Eg.freeMode(e)||Eg.rectMode(e)}});var d5=Ae((Jor,_ue)=>{"use strict";_ue.exports=function(t){var r=t._fullLayout;r._glcanvas&&r._glcanvas.size()&&r._glcanvas.each(function(n){n.regl&&n.regl.clear({color:!0,depth:!0})})}});var jP=Ae(($or,xue)=>{"use strict";xue.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var ZP=Ae((Qor,bue)=>{"use strict";var XP=32;bue.exports={CIRCLE_SIDES:XP,i000:0,i090:XP/4,i180:XP/2,i270:XP/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var YP=Ae((esr,Tue)=>{"use strict";var Eft=ei().strTranslate;function wue(e,t){switch(e.type){case"log":return e.p2d(t);case"date":return e.p2r(t,0,e.calendar);default:return e.p2r(t)}}function kft(e,t){switch(e.type){case"log":return e.d2p(t);case"date":return e.r2p(t,0,e.calendar);default:return e.r2p(t)}}function Cft(e){var t=e._id.charAt(0)==="y"?1:0;return function(r){return wue(e,r[t])}}function Lft(e){return Eft(e.xaxis._offset,e.yaxis._offset)}Tue.exports={p2r:wue,r2p:kft,axValue:Cft,getTransform:Lft}});var u_=Ae(kg=>{"use strict";var Pft=QM(),Mue=ZP(),W3=Mue.CIRCLE_SIDES,r7=Mue.SQRT2,Eue=YP(),Aue=Eue.p2r,Sue=Eue.r2p,zft=[0,3,4,5,6,1,2],Ift=[0,3,4,1,2];kg.writePaths=function(e){var t=e.length;if(!t)return"M0,0Z";for(var r="",n=0;n0&&u{"use strict";var kue=Wc(),Iue=Mm(),Rft=Iue.drawMode,Dft=Iue.openMode,j3=ZP(),Cue=j3.i000,Lue=j3.i090,Pue=j3.i180,zue=j3.i270,Fft=j3.cos45,Bft=j3.sin45,Rue=YP(),JP=Rue.p2r,f_=Rue.r2p,Oft=Q1(),qft=Oft.clearOutline,$P=u_(),Nft=$P.readPaths,Uft=$P.writePaths,Vft=$P.ellipseOver,Gft=$P.fixDatesForPaths;function Hft(e,t){if(e.length){var r=e[0][0];if(r){var n=t.gd,i=t.isActiveShape,a=t.dragmode,o=(n.layout||{}).shapes||[];if(!Rft(a)&&i!==void 0){var s=n._fullLayout._activeShapeIndex;if(s{"use strict";var Wft=Mm(),jft=Wft.selectMode,Xft=Q1(),Zft=Xft.clearOutline,i7=u_(),Yft=i7.readPaths,Kft=i7.writePaths,Jft=i7.fixDatesForPaths;Bue.exports=function(t,r){if(t.length){var n=t[0][0];if(n){var i=n.getAttribute("d"),a=r.gd,o=a._fullLayout.newselection,s=r.plotinfo,u=s.xaxis,l=s.yaxis,f=r.isActiveSelection,c=r.dragmode,h=(a.layout||{}).selections||[];if(!jft(c)&&f!==void 0){var d=a._fullLayout._activeSelectionIndex;if(d{"use strict";Oue.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var c_=Ae(Fd=>{"use strict";var Bb=v5(),que=ei(),ez=wu();Fd.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(t){return t}};Fd.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(t){return t}};Fd.decodeDate=function(e){return function(t){return t.replace&&(t=t.replace("_"," ")),e(t)}};Fd.encodeDate=function(e){return function(t){return e(t).replace(" ","_")}};Fd.extractPathCoords=function(e,t,r){var n=[],i=e.match(Bb.segmentRE);return i.forEach(function(a){var o=t[a.charAt(0)].drawn;if(o!==void 0){var s=a.substr(1).match(Bb.paramRE);if(!(!s||s.lengthd&&(_="X"),_});return l>d&&(p=p.replace(/[\s,]*X.*/,""),que.log("Ignoring extra params in segment "+u)),f+p})}function m5(e,t){t=t||0;var r=0;return t&&e&&(e.type==="category"||e.type==="multicategory")&&(r=(e.r2p(1)-e.r2p(0))*t),r}});var o7=Ae((osr,Gue)=>{"use strict";var Qft=ei(),X3=wu(),Nue=Xf(),Uue=Mu(),ect=u_().readPaths,a7=c_(),tct=a7.getPathString,Vue=ML(),rct=td().FROM_TL;Gue.exports=function(t,r,n,i){if(i.selectAll(".shape-label").remove(),!!(n.label.text||n.label.texttemplate)){var a;if(n.label.texttemplate){var o={};if(n.type!=="path"){var s=X3.getFromId(t,n.xref),u=X3.getFromId(t,n.yref);for(var l in Vue){var f=Vue[l](n,s,u);f!==void 0&&(o[l]=f)}}a=Qft.texttemplateStringForShapes({data:[o],fallback:n.label.texttemplatefallback,locale:t._fullLayout._d3locale,template:n.label.texttemplate})}else a=n.label.text;var c={"data-index":r},h=n.label.font,d={"data-notex":1},p=i.append("g").attr(c).classed("shape-label",!0),_=p.append("text").attr(d).classed("shape-label-text",!0).text(a),b,v,k,E;if(n.path){var A=tct(t,n),L=ect(A,t);b=1/0,k=1/0,v=-1/0,E=-1/0;for(var x=0;x=e?i=t-n:i=n-t,-180/Math.PI*Math.atan2(i,a)}function nct(e,t,r,n,i,a,o){var s=i.label.textposition,u=i.label.textangle,l=i.label.padding,f=i.type,c=Math.PI/180*a,h=Math.sin(c),d=Math.cos(c),p=i.label.xanchor,_=i.label.yanchor,b,v,k,E;if(f==="line"){s==="start"?(b=e,v=t):s==="end"?(b=r,v=n):(b=(e+r)/2,v=(t+n)/2),p==="auto"&&(s==="start"?u==="auto"?r>e?p="left":re?p="right":re?p="right":re?p="left":r{"use strict";var act=ei(),oct=act.strTranslate,Hue=xp(),Xue=Mm(),sct=Xue.drawMode,Zue=Xue.selectMode,Yue=$l(),Wue=jl(),rz=ZP(),lct=rz.i000,uct=rz.i090,fct=rz.i180,cct=rz.i270,hct=Q1(),Kue=hct.clearOutlineControllers,l7=u_(),tz=l7.pointsOnRectangle,s7=l7.pointsOnEllipse,dct=l7.writePaths,pct=QP().newShapes,vct=QP().createShapeObj,mct=n7(),yct=o7();Jue.exports=function e(t,r,n,i){i||(i=0);var a=n.gd;function o(){e(t,r,n,i++),(s7(t[0])||n.hasText)&&s({redrawing:!0})}function s(H){var N={};n.isActiveShape!==void 0&&(n.isActiveShape=!1,N=pct(r,n)),n.isActiveSelection!==void 0&&(n.isActiveSelection=!1,N=mct(r,n),a._fullLayout._reselect=!0),Object.keys(N).length&&Yue.call((H||{}).redrawing?"relayout":"_guiRelayout",a,N)}var u=a._fullLayout,l=u._zoomlayer,f=n.dragmode,c=sct(f),h=Zue(f);(c||h)&&(a._fullLayout._outlining=!0),Kue(a),r.attr("d",dct(t));var d,p,_,b,v;if(!i&&(n.isActiveShape||n.isActiveSelection)){v=gct([],t);var k=l.append("g").attr("class","outline-controllers");P(k),j()}if(c&&n.hasText){var E=l.select(".label-temp"),A=vct(r,n,n.dragmode);yct(a,"label-temp",A,E)}function L(H){_=+H.srcElement.getAttribute("data-i"),b=+H.srcElement.getAttribute("data-j"),d[_][b].moveFn=x}function x(H,N){if(t.length){var W=v[_][b][1],re=v[_][b][2],ae=t[_],be=ae.length;if(tz(ae)){var ze=H,Ce=N;if(n.isActiveSelection){var de=jue(ae,b);de[1]===ae[b][1]?Ce=0:ze=0}for(var te=0;te1&&!(H.length===2&&H[1][0]==="Z")&&(b===0&&(H[0][0]="M"),t[_]=H,o(),s())}}function m(H,N){if(H===2){_=+N.srcElement.getAttribute("data-i"),b=+N.srcElement.getAttribute("data-j");var W=t[_];!tz(W)&&!s7(W)&&M()}}function P(H){d=[];for(var N=0;N{"use strict";var xct=Jl(),ife=$l(),$ue=ei(),Z3=wu(),bct=u_().readPaths,wct=iz(),az=o7(),nfe=Q1().clearOutlineControllers,u7=jl(),c7=Mu(),Tct=Lf().arrayEditor,Que=xp(),efe=Am(),Ob=v5(),Ev=c_(),f7=Ev.getPathString;sfe.exports={draw:h7,drawOne:afe,eraseActiveShape:Mct,drawLabel:az};function h7(e){var t=e._fullLayout;t._shapeUpperLayer.selectAll("path").remove(),t._shapeLowerLayer.selectAll("path").remove(),t._shapeUpperLayer.selectAll("text").remove(),t._shapeLowerLayer.selectAll("text").remove();for(var r in t._plots){var n=t._plots[r].shapelayer;n&&(n.selectAll("path").remove(),n.selectAll("text").remove())}for(var i=0;io&&wt>s&&!at.shiftKey?Que.getCursor(St/Ct,1-Dt/wt):"move";efe(t,Zt),ke=Zt.split("-")[0]}}function De(at){nz(e)||(u&&(v=ae(r.xanchor)),l&&(k=be(r.yanchor)),r.type==="path"?T=r.path:(d=u?r.x0:ae(r.x0),p=l?r.y0:be(r.y0),_=u?r.x1:ae(r.x1),b=l?r.y1:be(r.y1)),d<_?(L=d,m="x0",x=_,P="x1"):(L=_,m="x1",x=d,P="x0"),!l&&pb?(E=p,C="y0",A=b,M="y1"):(E=b,C="y1",A=p,M="y0"),Ue(at),nt(i,r),Nt(t,r,e),te.moveFn=ke==="move"?ce:Je,te.altKey=at.altKey)}function ye(){nz(e)||(efe(t),gt(i),ofe(t,e,r),ife.call("_guiRelayout",e,a.getUpdateObj()))}function qe(){nz(e)||gt(i)}function ce(at,Ke){if(r.type==="path"){var Ct=function(Dt){return Dt},wt=Ct,St=Ct;u?h("xanchor",r.xanchor=ze(v+at)):(wt=function(Zt){return ze(ae(Zt)+at)},F&&F.type==="date"&&(wt=Ev.encodeDate(wt))),l?h("yanchor",r.yanchor=Ce(k+Ke)):(St=function(Zt){return Ce(be(Zt)+Ke)},G&&G.type==="date"&&(St=Ev.encodeDate(St))),h("path",r.path=tfe(T,wt,St))}else u?h("xanchor",r.xanchor=ze(v+at)):(h("x0",r.x0=ze(d+at)),h("x1",r.x1=ze(_+at))),l?h("yanchor",r.yanchor=Ce(k+Ke)):(h("y0",r.y0=Ce(p+Ke)),h("y1",r.y1=Ce(b+Ke)));t.attr("d",f7(e,r)),nt(i,r),az(e,n,r,B)}function Je(at,Ke){if(c){var Ct=function(cr){return cr},wt=Ct,St=Ct;u?h("xanchor",r.xanchor=ze(v+at)):(wt=function(_r){return ze(ae(_r)+at)},F&&F.type==="date"&&(wt=Ev.encodeDate(wt))),l?h("yanchor",r.yanchor=Ce(k+Ke)):(St=function(_r){return Ce(be(_r)+Ke)},G&&G.type==="date"&&(St=Ev.encodeDate(St))),h("path",r.path=tfe(T,wt,St))}else if(f){if(ke==="resize-over-start-point"){var Dt=d+at,Zt=l?p-Ke:p+Ke;h("x0",r.x0=u?Dt:ze(Dt)),h("y0",r.y0=l?Zt:Ce(Zt))}else if(ke==="resize-over-end-point"){var Et=_+at,Te=l?b-Ke:b+Ke;h("x1",r.x1=u?Et:ze(Et)),h("y1",r.y1=l?Te:Ce(Te))}}else{var ot=function(cr){return ke.indexOf(cr)!==-1},Tt=ot("n"),vt=ot("s"),Ye=ot("w"),He=ot("e"),it=Tt?E+Ke:E,et=vt?A+Ke:A,It=Ye?L+at:L,Yt=He?x+at:x;l&&(Tt&&(it=E-Ke),vt&&(et=A-Ke)),(!l&&et-it>s||l&&it-et>s)&&(h(C,r[C]=l?it:Ce(it)),h(M,r[M]=l?et:Ce(et))),Yt-It>o&&(h(m,r[m]=u?It:ze(It)),h(P,r[P]=u?Yt:ze(Yt)))}t.attr("d",f7(e,r)),nt(i,r),az(e,n,r,B)}function nt(at,Ke){(u||l)&&Ct();function Ct(){var wt=Ke.type!=="path",St=at.selectAll(".visual-cue").data([0]),Dt=1;St.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":Dt}).classed("visual-cue",!0);var Zt=ae(u?Ke.xanchor:$ue.midRange(wt?[Ke.x0,Ke.x1]:Ev.extractPathCoords(Ke.path,Ob.paramIsX))),Et=be(l?Ke.yanchor:$ue.midRange(wt?[Ke.y0,Ke.y1]:Ev.extractPathCoords(Ke.path,Ob.paramIsY)));if(Zt=Ev.roundPositionForSharpStrokeRendering(Zt,Dt),Et=Ev.roundPositionForSharpStrokeRendering(Et,Dt),u&&l){var Te="M"+(Zt-1-Dt)+","+(Et-1-Dt)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";St.attr("d",Te)}else if(u){var ot="M"+(Zt-1-Dt)+","+(Et-9-Dt)+"v18 h2 v-18 Z";St.attr("d",ot)}else{var Tt="M"+(Zt-9-Dt)+","+(Et-1-Dt)+"h18 v2 h-18 Z";St.attr("d",Tt)}}}function gt(at){at.selectAll(".visual-cue").remove()}function Nt(at,Ke,Ct){var wt=Ke.xref,St=Ke.yref,Dt=Z3.getFromId(Ct,wt),Zt=Z3.getFromId(Ct,St),Et="";wt!=="paper"&&!Dt.autorange&&(Et+=wt),St!=="paper"&&!Zt.autorange&&(Et+=St),c7.setClipUrl(at,Et?"clip"+Ct._fullLayout._uid+Et:null,Ct)}}function tfe(e,t,r){return e.replace(Ob.segmentRE,function(n){var i=0,a=n.charAt(0),o=Ob.paramIsX[a],s=Ob.paramIsY[a],u=Ob.numParams[a],l=n.substr(1).replace(Ob.paramRE,function(f){return i>=u||(o[i]?f=t(f):s[i]&&(f=r(f)),i++),f});return a+l})}function Sct(e,t){if(oz(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeShapeIndex){rfe(e);return}e._fullLayout._activeShapeIndex=n,e._fullLayout._deactivateShape=rfe,h7(e)}}}function rfe(e){if(oz(e)){var t=e._fullLayout._activeShapeIndex;t>=0&&(nfe(e),delete e._fullLayout._activeShapeIndex,h7(e))}}function Mct(e){if(oz(e)){nfe(e);var t=e._fullLayout._activeShapeIndex,r=(e.layout||{}).shapes||[];if(t{"use strict";var A0=$l(),lfe=Cc(),ufe=Wc(),Bf=jP(),Ect=sz().eraseActiveShape,lz=ei(),Af=lz._,Of=mfe.exports={};Of.toImage={name:"toImage",title:function(e){var t=e._context.toImageButtonOptions||{},r=t.format||"png";return r==="png"?Af(e,"Download plot as a PNG"):Af(e,"Download plot")},icon:Bf.camera,click:function(e){var t=e._context.toImageButtonOptions,r={format:t.format||"png"};lz.notifier(Af(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(n){n in t&&(r[n]=t[n])}),A0.call("downloadImage",e,r).then(function(n){lz.notifier(Af(e,"Snapshot succeeded")+" - "+n,"long")}).catch(function(){lz.notifier(Af(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Of.sendDataToCloud={name:"sendDataToCloud",title:function(e){return Af(e,"Edit in Chart Studio")},icon:Bf.disk,click:function(e){lfe.sendDataToCloud(e)}};Of.editInChartStudio={name:"editInChartStudio",title:function(e){return Af(e,"Edit in Chart Studio")},icon:Bf.pencil,click:function(e){lfe.sendDataToCloud(e)}};Of.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return Af(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Bf.zoombox,click:qp};Of.pan2d={name:"pan2d",_cat:"pan",title:function(e){return Af(e,"Pan")},attr:"dragmode",val:"pan",icon:Bf.pan,click:qp};Of.select2d={name:"select2d",_cat:"select",title:function(e){return Af(e,"Box Select")},attr:"dragmode",val:"select",icon:Bf.selectbox,click:qp};Of.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return Af(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Bf.lasso,click:qp};Of.drawclosedpath={name:"drawclosedpath",title:function(e){return Af(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Bf.drawclosedpath,click:qp};Of.drawopenpath={name:"drawopenpath",title:function(e){return Af(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Bf.drawopenpath,click:qp};Of.drawline={name:"drawline",title:function(e){return Af(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Bf.drawline,click:qp};Of.drawrect={name:"drawrect",title:function(e){return Af(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Bf.drawrect,click:qp};Of.drawcircle={name:"drawcircle",title:function(e){return Af(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Bf.drawcircle,click:qp};Of.eraseshape={name:"eraseshape",title:function(e){return Af(e,"Erase active shape")},icon:Bf.eraseshape,click:Ect};Of.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return Af(e,"Zoom in")},attr:"zoom",val:"in",icon:Bf.zoom_plus,click:qp};Of.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return Af(e,"Zoom out")},attr:"zoom",val:"out",icon:Bf.zoom_minus,click:qp};Of.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return Af(e,"Autoscale")},attr:"zoom",val:"auto",icon:Bf.autoscale,click:qp};Of.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return Af(e,"Reset axes")},attr:"zoom",val:"reset",icon:Bf.home,click:qp};Of.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return Af(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Bf.tooltip_basic,gravity:"ne",click:qp};Of.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return Af(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Bf.tooltip_compare,gravity:"ne",click:qp};function qp(e,t){var r=t.currentTarget,n=r.getAttribute("data-attr"),i=r.getAttribute("data-val")||!0,a=e._fullLayout,o={},s=ufe.list(e,null,!0),u=a._cartesianSpikesEnabled,l,f;if(n==="zoom"){var c=i==="in"?.5:2,h=(1+c)/2,d=(1-c)/2,p,_;for(f=0;f{"use strict";var yfe=v7(),Lct=Object.keys(yfe),gfe=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],_fe=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(gfe),K3=[],Pct=function(e){if(_fe.indexOf(e._cat||e.name)===-1){var t=e.name,r=(e._cat||e.name).toLowerCase();K3.indexOf(t)===-1&&K3.push(t),K3.indexOf(r)===-1&&K3.push(r)}};Lct.forEach(function(e){Pct(yfe[e])});K3.sort();xfe.exports={DRAW_MODES:gfe,backButtons:_fe,foreButtons:K3}});var y7=Ae((hsr,bfe)=>{"use strict";var csr=m7();bfe.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var Tfe=Ae((dsr,wfe)=>{"use strict";var zct=ei(),y5=jl(),Ict=Lf(),Rct=y7();wfe.exports=function(t,r){var n=t.modebar||{},i=Ict.newContainer(r,"modebar");function a(s,u){return zct.coerce(n,i,Rct,s,u)}a("orientation"),a("bgcolor",y5.addOpacity(r.paper_bgcolor,.5));var o=y5.contrast(y5.rgb(r.modebar.bgcolor));a("color",y5.addOpacity(o,.3)),a("activecolor",y5.addOpacity(o,.7)),a("uirevision",r.uirevision),a("add"),a("remove")}});var Efe=Ae((psr,Mfe)=>{"use strict";var g7=Jl(),Dct=ku(),fz=ei(),Afe=jP(),Fct=lL().version,Bct=new DOMParser;function Sfe(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Ty=Sfe.prototype;Ty.update=function(e,t){this.graphInfo=e;var r=this.graphInfo._context,n=this.graphInfo._fullLayout,i="modebar-"+n._uid;this.element.setAttribute("id",i),this.element.setAttribute("role","toolbar"),this._uid=i,this.element.className="modebar modebar--custom",r.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),n.modebar.orientation==="v"&&(this.element.className+=" vertical",t=t.reverse());var a=n.modebar,o="#"+i+" .modebar-group";document.querySelectorAll(o).forEach(function(c){c.style.backgroundColor=a.bgcolor});var s=!this.hasButtons(t),u=this.hasLogo!==r.displaylogo,l=this.locale!==r.locale;if(this.locale=r.locale,(s||u||l)&&(this.removeAllButtons(),this.updateButtons(t),r.watermark||r.displaylogo)){var f=this.getLogo();r.watermark&&(f.className=f.className+" watermark"),n.modebar.orientation==="v"?this.element.insertBefore(f,this.element.childNodes[0]):this.element.appendChild(f),this.hasLogo=!0}this.updateActiveButton(),fz.setStyleOnHover("#"+i+" .modebar-btn",".active",".icon path","fill: "+a.activecolor,"fill: "+a.color,this.element)};Ty.updateButtons=function(e){var t=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(r){var n=t.createGroup();r.forEach(function(i){var a=i.name;if(!a)throw new Error("must provide button 'name' in button config");if(t.buttonsNames.indexOf(a)!==-1)throw new Error("button name '"+a+"' is taken");t.buttonsNames.push(a);var o=t.createButton(i);t.buttonElements.push(o),n.appendChild(o)}),t.element.appendChild(n)})};Ty.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var t=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=t.bgcolor,e};Ty.createButton=function(e){var t=this,r=document.createElement("button");r.setAttribute("type","button"),r.setAttribute("rel","tooltip"),r.className="modebar-btn";var n=e.title;n===void 0?n=e.name:typeof n=="function"&&(n=n(this.graphInfo)),(n||n===0)&&(r.setAttribute("data-title",n),r.setAttribute("aria-label",n)),e.attr!==void 0&&r.setAttribute("data-attr",e.attr);var i=e.val;i!==void 0&&(typeof i=="function"&&(i=i(this.graphInfo)),r.setAttribute("data-val",i));var a=e.click;if(typeof a!="function")throw new Error("must provide button 'click' function in button config");r.addEventListener("click",function(s){e.click(t.graphInfo,s),t.updateActiveButton(s.currentTarget)}),r.setAttribute("data-toggle",e.toggle||!1),e.toggle&&g7.select(r).classed("active",!0);var o=e.icon;return typeof o=="function"?r.appendChild(o()):r.appendChild(this.createIcon(o||Afe.question)),r.setAttribute("data-gravity",e.gravity||"n"),r};Ty.createIcon=function(e){var t=Dct(e.height)?Number(e.height):e.ascent-e.descent,r="http://www.w3.org/2000/svg",n;if(e.path){n=document.createElementNS(r,"svg"),n.setAttribute("viewBox",[0,0,e.width,t].join(" ")),n.setAttribute("class","icon");var i=document.createElementNS(r,"path");i.setAttribute("d",e.path),e.transform?i.setAttribute("transform",e.transform):e.ascent!==void 0&&i.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),n.appendChild(i)}if(e.svg){var a=Bct.parseFromString(e.svg,"application/xml");n=a.childNodes[0]}return n.setAttribute("height","1em"),n.setAttribute("width","1em"),n};Ty.updateActiveButton=function(e){var t=this.graphInfo._fullLayout,r=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(n){var i=n.getAttribute("data-val")||!0,a=n.getAttribute("data-attr"),o=n.getAttribute("data-toggle")==="true",s=g7.select(n),u=function(c,h){var d=t.modebar,p=c.querySelector(".icon path");p&&(h||c.matches(":hover")?p.style.fill=d.activecolor:p.style.fill=d.color)};if(o){if(a===r){var l=!s.classed("active");s.classed("active",l),u(n,l)}}else{var f=a===null?a:fz.nestedProperty(t,a).get();s.classed("active",f===i),u(n,f===i)}})};Ty.hasButtons=function(e){var t=this.buttons;if(!t||e.length!==t.length)return!1;for(var r=0;r{"use strict";var Nct=Wc(),kfe=lc(),_7=$l(),Uct=iv().isUnifiedHover,Vct=Efe(),cz=v7(),Gct=m7().DRAW_MODES,Hct=ei().extendDeep;Cfe.exports=function(t){var r=t._fullLayout,n=t._context,i=r._modeBar;if(!n.displayModeBar&&!n.watermark){i&&(i.destroy(),delete r._modeBar);return}if(!Array.isArray(n.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(n.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var a=n.modeBarButtons,o;Array.isArray(a)&&a.length?o=Kct(a):!n.displayModeBar&&n.watermark?o=[]:o=Wct(t),i?i.update(t,o):r._modeBar=Vct(t,o)};function Wct(e){var t=e._fullLayout,r=e._fullData,n=e._context;function i(N,W){if(typeof W=="string"){if(W.toLowerCase()===N.toLowerCase())return!0}else{var re=W.name,ae=W._cat||W.name;if(re===N||ae===N.toLowerCase())return!0}return!1}var a=t.modebar.add;typeof a=="string"&&(a=[a]);var o=t.modebar.remove;typeof o=="string"&&(o=[o]);var s=n.modeBarButtonsToAdd.concat(a.filter(function(N){for(var W=0;W1?(P=["toggleHover"],T=["resetViews"]):c?(m=["zoomInGeo","zoomOutGeo"],P=["hoverClosestGeo"],T=["resetGeo"]):f?(P=["hoverClosest3d"],T=["resetCameraDefault3d","resetCameraLastSave3d"]):_?(m=["zoomInMapbox","zoomOutMapbox"],P=["toggleHover"],T=["resetViewMapbox"]):b?(m=["zoomInMap","zoomOutMap"],P=["toggleHover"],T=["resetViewMap"]):h?P=["hoverClosestPie"]:E?(P=["hoverClosestCartesian","hoverCompareCartesian"],T=["resetViewSankey"]):P=["toggleHover"],l&&P.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(Zct(r)||L)&&(P=[]),l&&!A&&(m=["zoomIn2d","zoomOut2d","autoScale2d"],T[0]!=="resetViews"&&(T=["resetScale2d"])),f?B=["zoom3d","pan3d","orbitRotation","tableRotation"]:l&&!A||p?B=["zoom2d","pan2d"]:_||b||c?B=["pan2d"]:v&&(B=["zoom2d"]),Xct(r)&&B.push("select2d","lasso2d");var F=[],U=function(N){F.indexOf(N)===-1&&P.indexOf(N)!==-1&&F.push(N)};if(Array.isArray(s)){for(var G=[],j=0;j{"use strict";Pfe.exports={moduleType:"component",name:"modebar",layoutAttributes:y7(),supplyLayoutDefaults:Tfe(),manage:Lfe()}});var b7=Ae((ysr,zfe)=>{"use strict";var Jct=td().FROM_BL;zfe.exports=function(t,r,n){n===void 0&&(n=Jct[t.constraintoward||"center"]);var i=[t.r2l(t.range[0]),t.r2l(t.range[1])],a=i[0]+(i[1]-i[0])*n;t.range=t._input.range=[t.l2r(a+(i[0]-a)*r),t.l2r(a+(i[1]-a)*r)],t.setScale()}});var Nb=Ae(g5=>{"use strict";var qb=ei(),w7=Tm(),Em=Wc().id2name,$ct=Dd(),Ife=b7(),Qct=gy(),eht=rf().ALMOST_EQUAL,tht=td().FROM_BL;g5.handleDefaults=function(e,t,r){var n=r.axIds,i=r.axHasImage,a=t._axisConstraintGroups=[],o=t._axisMatchGroups=[],s,u,l,f,c,h,d,p;for(s=0;sa?r.substr(a):n.substr(i))+o}function iht(e,t){for(var r=t._size,n=r.h/r.w,i={},a=Object.keys(e),o=0;oeht*p&&!k)){for(a=0;aB&&reP&&(P=re);var be=(P-m)/(2*T);c/=be,m=u.l2r(m),P=u.l2r(P),u.range=u._input.range=x{"use strict";var dz=Jl(),Np=$l(),Jv=Cc(),S0=ei(),S7=Xf(),M7=d5(),_5=jl(),J3=Mu(),Bfe=Eb(),Vfe=x7(),x5=wu(),Cg=td(),Gfe=Nb(),nht=Gfe.enforce,aht=Gfe.clean,Ofe=Tm().doAutoRange,Hfe="start",oht="middle",Wfe="end",sht=dd().zindexSeparator;md.layoutStyles=function(e){return S0.syncOrAsync([Jv.doAutoMargin,uht],e)};function lht(e,t,r){for(var n=0;n=e[1]||i[1]<=e[0])&&a[0]t[0])return!0}return!1}function uht(e){var t=e._fullLayout,r=t._size,n=r.p,i=x5.list(e,"",!0),a,o,s,u,l,f;if(t._paperdiv.style({width:e._context.responsive&&t.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":t.width+"px",height:e._context.responsive&&t.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":t.height+"px"}).selectAll(".main-svg").call(J3.setSize,t.width,t.height),e._context.setBackground(e,t.paper_bgcolor),md.drawMainTitle(e),Vfe.manage(e),!t._has("cartesian"))return Jv.previousPromises(e);function c(De,ye,qe){var ce=De._lw/2;if(De._id.charAt(0)==="x"){if(ye){if(qe==="top")return ye._offset-n-ce}else return r.t+r.h*(1-(De.position||0))+ce%1;return ye._offset+ye._length+n+ce}if(ye){if(qe==="right")return ye._offset+ye._length+n+ce}else return r.l+r.w*(De.position||0)+ce%1;return ye._offset-n-ce}for(a=0;a0){dht(e,a,l,u),s.attr({x:o,y:a,"text-anchor":n,dy:Ufe(t.yanchor)}).call(S7.positionText,o,a);var f=(t.text.match(S7.BR_TAG_ALL)||[]).length;if(f){var c=Cg.LINE_SPACING*f+Cg.MID_SHIFT;t.y===0&&(c=-c),s.selectAll(".line").each(function(){var b=+this.getAttribute("dy").slice(0,-2)-c+"em";this.setAttribute("dy",b)})}var h=dz.select(e).selectAll(".gtitle-subtitle");if(h.node()){var d=s.node().getBBox(),p=d.y+d.height,_=p+Bfe.SUBTITLE_PADDING_EM*t.subtitle.font.size;h.attr({x:o,y:_,"text-anchor":n,dy:Ufe(t.yanchor)}).call(S7.positionText,o,_)}}}};function fht(e,t,r,n,i){var a=t.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,o=S0.isTopAnchor(t)?n:n-i,s=r==="b"?a-o:o;return S0.isTopAnchor(t)&&r==="t"||S0.isBottomAnchor(t)&&r==="b"?!1:s.5?"t":"b",o=e._fullLayout.margin[a],s=0;return t.yref==="paper"?s=r+t.pad.t+t.pad.b:t.yref==="container"&&(s=cht(a,n,i,e._fullLayout.height,r)+t.pad.t+t.pad.b),s>o?s:0}function dht(e,t,r,n){var i="title.automargin",a=e._fullLayout.title,o=a.y>.5?"t":"b",s={x:a.x,y:a.y,t:0,b:0},u={};a.yref==="paper"&&fht(e,a,o,t,n)?s[o]=r:a.yref==="container"&&(u[o]=r,e._fullLayout._reservedMargin[i]=u),Jv.allowAutoMargin(e,i),Jv.autoMargin(e,i,s)}function pht(e,t){var r=e.title,n=e._size,i=0;switch(t===Hfe?i=r.pad.l:t===Wfe&&(i=-r.pad.r),r.xref){case"paper":return n.l+n.w*r.x+i;case"container":default:return e.width*r.x+i}}function vht(e,t){var r=e.title,n=e._size,i=0;if(t==="0em"||!t?i=-r.pad.b:t===Cg.CAP_SHIFT+"em"&&(i=r.pad.t),r.y==="auto")return n.t/2;switch(r.yref){case"paper":return n.t+n.h-n.h*r.y+i;case"container":default:return e.height-e.height*r.y+i}}function Ufe(e){return e==="top"?Cg.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":Cg.MID_SHIFT+"em"}function mht(e){var t=e.title,r=oht;return S0.isRightAnchor(t)?r=Wfe:S0.isLeftAnchor(t)&&(r=Hfe),r}function yht(e){var t=e.title,r="0em";return S0.isTopAnchor(t)?r=Cg.CAP_SHIFT+"em":S0.isMiddleAnchor(t)&&(r=Cg.MID_SHIFT+"em"),r}md.doTraceStyle=function(e){var t=e.calcdata,r=[],n;for(n=0;n{"use strict";var ght=u_().readPaths,_ht=iz(),jfe=Q1().clearOutlineControllers,E7=jl(),Xfe=Mu(),xht=Lf().arrayEditor,Zfe=c_(),bht=Zfe.getPathString;Kfe.exports={draw:pz,drawOne:Yfe,activateLastSelection:Aht};function pz(e){var t=e._fullLayout;jfe(e),t._selectionLayer.selectAll("path").remove();for(var r in t._plots){var n=t._plots[r].selectionLayer;n&&n.selectAll("path").remove()}for(var i=0;i=0;b--){var v=o.append("path").attr(u).style("opacity",b?.1:l).call(E7.stroke,c).call(E7.fill,f).call(Xfe.dashLine,b?"solid":d,b?4+h:h);if(wht(v,e,n),p){var k=xht(e.layout,"selections",n);v.style({cursor:"move"});var E={element:v.node(),plotinfo:i,gd:e,editHelpers:k,isActiveSelection:!0},A=ght(s,e);_ht(A,v,E)}else v.style("pointer-events",b?"all":"none");_[b]=v}var L=_[0],x=_[1];x.node().addEventListener("click",function(){return Tht(e,L)})}}function wht(e,t,r){var n=r.xref+r.yref;Xfe.setClipUrl(e,"clip"+t._fullLayout._uid+n,t)}function Tht(e,t){if(vz(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeSelectionIndex){k7(e);return}e._fullLayout._activeSelectionIndex=n,e._fullLayout._deactivateSelection=k7,pz(e)}}}function Aht(e){if(vz(e)){var t=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=t,e._fullLayout._deactivateSelection=k7,pz(e)}}function k7(e){if(vz(e)){var t=e._fullLayout._activeSelectionIndex;t>=0&&(jfe(e),delete e._fullLayout._activeSelectionIndex,pz(e))}}});var $fe=Ae((bsr,Jfe)=>{function Sht(){var e,t=0,r=!1;function n(i,a){return e.list.push({type:i,data:a?JSON.parse(JSON.stringify(a)):void 0}),e}return e={list:[],segmentId:function(){return t++},checkIntersection:function(i,a){return n("check",{seg1:i,seg2:a})},segmentChop:function(i,a){return n("div_seg",{seg:i,pt:a}),n("chop",{seg:i,pt:a})},statusRemove:function(i){return n("pop_seg",{seg:i})},segmentUpdate:function(i){return n("seg_update",{seg:i})},segmentNew:function(i,a){return n("new_seg",{seg:i,primary:a})},segmentRemove:function(i){return n("rem_seg",{seg:i})},tempStatus:function(i,a,o){return n("temp_status",{seg:i,above:a,below:o})},rewind:function(i){return n("rewind",{seg:i})},status:function(i,a,o){return n("status",{seg:i,above:a,below:o})},vert:function(i){return i===r?e:(r=i,n("vert",{x:i}))},log:function(i){return typeof i!="string"&&(i=JSON.stringify(i,!1," ")),n("log",{txt:i})},reset:function(){return n("reset")},selected:function(i){return n("selected",{segs:i})},chainStart:function(i){return n("chain_start",{seg:i})},chainRemoveHead:function(i,a){return n("chain_rem_head",{index:i,pt:a})},chainRemoveTail:function(i,a){return n("chain_rem_tail",{index:i,pt:a})},chainNew:function(i,a){return n("chain_new",{pt1:i,pt2:a})},chainMatch:function(i){return n("chain_match",{index:i})},chainClose:function(i){return n("chain_close",{index:i})},chainAddHead:function(i,a){return n("chain_add_head",{index:i,pt:a})},chainAddTail:function(i,a){return n("chain_add_tail",{index:i,pt:a})},chainConnect:function(i,a){return n("chain_con",{index1:i,index2:a})},chainReverse:function(i){return n("chain_rev",{index:i})},chainJoin:function(i,a){return n("chain_join",{index1:i,index2:a})},done:function(){return n("done")}},e}Jfe.exports=Sht});var ece=Ae((wsr,Qfe)=>{function Mht(e){typeof e!="number"&&(e=1e-10);var t={epsilon:function(r){return typeof r=="number"&&(e=r),e},pointAboveOrOnLine:function(r,n,i){var a=n[0],o=n[1],s=i[0],u=i[1],l=r[0],f=r[1];return(s-a)*(f-o)-(u-o)*(l-a)>=-e},pointBetween:function(r,n,i){var a=r[1]-n[1],o=i[0]-n[0],s=r[0]-n[0],u=i[1]-n[1],l=s*o+a*u;if(l-e)},pointsSameX:function(r,n){return Math.abs(r[0]-n[0])e!=s-a>e&&(o-f)*(a-c)/(s-c)+f-i>e&&(u=!u),o=f,s=c}return u}};return t}Qfe.exports=Mht});var rce=Ae((Tsr,tce)=>{var Eht={create:function(){var e={root:{root:!0,next:null},exists:function(t){return!(t===null||t===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(t,r){for(var n=e.root,i=e.root.next;i!==null;){if(r(i)){t.prev=i.prev,t.next=i,i.prev.next=t,i.prev=t;return}n=i,i=i.next}n.next=t,t.prev=n,t.next=null},findTransition:function(t){for(var r=e.root,n=e.root.next;n!==null&&!t(n);)r=n,n=n.next;return{before:r===e.root?null:r,after:n,insert:function(i){return i.prev=r,i.next=n,r.next=i,n!==null&&(n.prev=i),i}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};tce.exports=Eht});var nce=Ae((Asr,ice)=>{var w5=rce();function kht(e,t,r){function n(p,_){return{id:r?r.segmentId():-1,start:p,end:_,myFill:{above:null,below:null},otherFill:null}}function i(p,_,b){return{id:r?r.segmentId():-1,start:p,end:_,myFill:{above:b.myFill.above,below:b.myFill.below},otherFill:null}}var a=w5.create();function o(p,_,b,v,k,E){var A=t.pointsCompare(_,k);return A!==0?A:t.pointsSame(b,E)?0:p!==v?p?1:-1:t.pointAboveOrOnLine(b,v?k:E,v?E:k)?1:-1}function s(p,_){a.insertBefore(p,function(b){var v=o(p.isStart,p.pt,_,b.isStart,b.pt,b.other.pt);return v<0})}function u(p,_){var b=w5.node({isStart:!0,pt:p.start,seg:p,primary:_,other:null,status:null});return s(b,p.end),b}function l(p,_,b){var v=w5.node({isStart:!1,pt:_.end,seg:_,primary:b,other:p,status:null});p.other=v,s(v,p.pt)}function f(p,_){var b=u(p,_);return l(b,p,_),b}function c(p,_){r&&r.segmentChop(p.seg,_),p.other.remove(),p.seg.end=_,p.other.pt=_,s(p.other,p.pt)}function h(p,_){var b=i(_,p.seg.end,p.seg);return c(p,_),f(b,p.primary)}function d(p,_){var b=w5.create();function v(G,j){var H=G.seg.start,N=G.seg.end,W=j.seg.start,re=j.seg.end;return t.pointsCollinear(H,W,re)?t.pointsCollinear(N,W,re)||t.pointAboveOrOnLine(N,W,re)?1:-1:t.pointAboveOrOnLine(H,W,re)?1:-1}function k(G){return b.findTransition(function(j){var H=v(G,j.ev);return H>0})}function E(G,j){var H=G.seg,N=j.seg,W=H.start,re=H.end,ae=N.start,be=N.end;r&&r.checkIntersection(H,N);var ze=t.linesIntersect(W,re,ae,be);if(ze===!1){if(!t.pointsCollinear(W,re,ae)||t.pointsSame(W,be)||t.pointsSame(re,ae))return!1;var Ce=t.pointsSame(W,ae),de=t.pointsSame(re,be);if(Ce&&de)return j;var te=!Ce&&t.pointBetween(W,ae,be),ke=!de&&t.pointBetween(re,ae,be);if(Ce)return ke?h(j,re):h(G,be),j;te&&(de||(ke?h(j,re):h(G,be)),h(j,W))}else ze.alongA===0&&(ze.alongB===-1?h(G,ae):ze.alongB===0?h(G,ze.pt):ze.alongB===1&&h(G,be)),ze.alongB===0&&(ze.alongA===-1?h(j,W):ze.alongA===0?h(j,ze.pt):ze.alongA===1&&h(j,re));return!1}for(var A=[];!a.isEmpty();){var L=a.getHead();if(r&&r.vert(L.pt[0]),L.isStart){let G=function(){if(C){var j=E(L,C);if(j)return j}return M?E(L,M):!1};var U=G;r&&r.segmentNew(L.seg,L.primary);var x=k(L),C=x.before?x.before.ev:null,M=x.after?x.after.ev:null;r&&r.tempStatus(L.seg,C?C.seg:!1,M?M.seg:!1);var m=G();if(m){if(e){var P;L.seg.myFill.below===null?P=!0:P=L.seg.myFill.above!==L.seg.myFill.below,P&&(m.seg.myFill.above=!m.seg.myFill.above)}else m.seg.otherFill=L.seg.myFill;r&&r.segmentUpdate(m.seg),L.other.remove(),L.remove()}if(a.getHead()!==L){r&&r.rewind(L.seg);continue}if(e){var P;L.seg.myFill.below===null?P=!0:P=L.seg.myFill.above!==L.seg.myFill.below,M?L.seg.myFill.below=M.seg.myFill.above:L.seg.myFill.below=p,P?L.seg.myFill.above=!L.seg.myFill.below:L.seg.myFill.above=L.seg.myFill.below}else if(L.seg.otherFill===null){var T;M?L.primary===M.primary?T=M.seg.otherFill.above:T=M.seg.myFill.above:T=L.primary?_:p,L.seg.otherFill={above:T,below:T}}r&&r.status(L.seg,C?C.seg:!1,M?M.seg:!1),L.other.status=x.insert(w5.node({ev:L}))}else{var B=L.status;if(B===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(b.exists(B.prev)&&b.exists(B.next)&&E(B.prev.ev,B.next.ev),r&&r.statusRemove(B.ev.seg),B.remove(),!L.primary){var F=L.seg.myFill;L.seg.myFill=L.seg.otherFill,L.seg.otherFill=F}A.push(L.seg)}a.getHead().remove()}return r&&r.done(),A}return e?{addRegion:function(p){for(var _,b=p[p.length-1],v=0;v{function Cht(e,t,r){var n=[],i=[];return e.forEach(function(a){var o=a.start,s=a.end;if(t.pointsSame(o,s)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}r&&r.chainStart(a);var u={index:0,matches_head:!1,matches_pt1:!1},l={index:0,matches_head:!1,matches_pt1:!1},f=u;function c(U,G,j){return f.index=U,f.matches_head=G,f.matches_pt1=j,f===u?(f=l,!1):(f=null,!0)}for(var h=0;h{function T5(e,t,r){var n=[];return e.forEach(function(i){var a=(i.myFill.above?8:0)+(i.myFill.below?4:0)+(i.otherFill&&i.otherFill.above?2:0)+(i.otherFill&&i.otherFill.below?1:0);t[a]!==0&&n.push({id:r?r.segmentId():-1,start:i.start,end:i.end,myFill:{above:t[a]===1,below:t[a]===2},otherFill:null})}),r&&r.selected(n),n}var Lht={union:function(e,t){return T5(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],t)},intersect:function(e,t){return T5(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],t)},difference:function(e,t){return T5(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],t)},differenceRev:function(e,t){return T5(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],t)},xor:function(e,t){return T5(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],t)}};sce.exports=Lht});var fce=Ae((Esr,uce)=>{var Pht={toPolygon:function(e,t){function r(a){if(a.length<=0)return e.segments({inverted:!1,regions:[]});function o(l){var f=l.slice(0,l.length-1);return e.segments({inverted:!1,regions:[f]})}for(var s=o(a[0]),u=1;u{var zht=$fe(),Iht=ece(),cce=nce(),Rht=oce(),A5=lce(),hce=fce(),M0=!1,S5=Iht(),kv;kv={buildLog:function(e){return e===!0?M0=zht():e===!1&&(M0=!1),M0===!1?!1:M0.list},epsilon:function(e){return S5.epsilon(e)},segments:function(e){var t=cce(!0,S5,M0);return e.regions.forEach(t.addRegion),{segments:t.calculate(e.inverted),inverted:e.inverted}},combine:function(e,t){var r=cce(!1,S5,M0);return{combined:r.calculate(e.segments,e.inverted,t.segments,t.inverted),inverted1:e.inverted,inverted2:t.inverted}},selectUnion:function(e){return{segments:A5.union(e.combined,M0),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:A5.intersect(e.combined,M0),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:A5.difference(e.combined,M0),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:A5.differenceRev(e.combined,M0),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:A5.xor(e.combined,M0),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:Rht(e.segments,S5,M0),inverted:e.inverted}},polygonFromGeoJSON:function(e){return hce.toPolygon(kv,e)},polygonToGeoJSON:function(e){return hce.fromPolygon(kv,S5,e)},union:function(e,t){return M5(e,t,kv.selectUnion)},intersect:function(e,t){return M5(e,t,kv.selectIntersect)},difference:function(e,t){return M5(e,t,kv.selectDifference)},differenceRev:function(e,t){return M5(e,t,kv.selectDifferenceRev)},xor:function(e,t){return M5(e,t,kv.selectXor)}};function M5(e,t,r){var n=kv.segments(e),i=kv.segments(t),a=kv.combine(n,i),o=r(a);return kv.polygon(o)}typeof window=="object"&&(window.PolyBool=kv);dce.exports=kv});var mce=Ae((Csr,vce)=>{vce.exports=function(t,r,n,i){var a=t[0],o=t[1],s=!1;n===void 0&&(n=0),i===void 0&&(i=r.length);for(var u=i-n,l=0,f=u-1;lo!=p>o&&a<(d-c)*(o-h)/(p-h)+c;_&&(s=!s)}return s}});var E5=Ae((Lsr,yce)=>{"use strict";var L7=TL().dot,mz=rf().BADNUM,yz=yce.exports={};yz.tester=function(t){var r=t.slice(),n=r[0][0],i=n,a=r[0][1],o=a,s;for((r[r.length-1][0]!==r[0][0]||r[r.length-1][1]!==r[0][1])&&r.push(r[0]),s=1;si||v===mz||vo||_&&l(p))}function c(p,_){var b=p[0],v=p[1];if(b===mz||bi||v===mz||vo)return!1;var k=r.length,E=r[0][0],A=r[0][1],L=0,x,C,M,m,P;for(x=1;xMath.max(C,E)||v>Math.max(M,A)))if(vs||Math.abs(L7(c,l))>i)return!0;return!1};yz.filter=function(t,r){var n=[t[0]],i=0,a=0;function o(u){t.push(u);var l=n.length,f=i;n.splice(a+1);for(var c=f+1;c1){var s=t.pop();o(s)}return{addPt:o,raw:t,filtered:n}}});var _ce=Ae((Psr,gce)=>{"use strict";gce.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var Uce=Ae((zsr,Nce)=>{"use strict";var xce=pce(),Dht=mce(),L5=$l(),Fht=Mu().dashStyle,k5=jl(),Bht=Xc(),Oht=iv().makeEventData,D5=Mm(),qht=D5.freeMode,Nht=D5.rectMode,P5=D5.drawMode,R7=D5.openMode,D7=D5.selectMode,bce=c_(),wce=v5(),Ece=iz(),kce=Q1().clearOutline,Cce=u_(),P7=Cce.handleEllipse,Uht=Cce.readPaths,Vht=QP().newShapes,Ght=n7(),Hht=C7().activateLastSelection,_z=ei(),Wht=_z.sorterAsc,Lce=E5(),C5=FL(),E0=Wc().getFromId,jht=d5(),Xht=b5().redrawReglTraces,xz=_ce(),Ay=xz.MINSELECT,Zht=Lce.filter,F7=Lce.tester,B7=YP(),Tce=B7.p2r,Yht=B7.axValue,Kht=B7.getTransform;function O7(e){return e.subplot!==void 0}function Jht(e,t,r,n,i){var a=!O7(n),o=qht(i),s=Nht(i),u=R7(i),l=P5(i),f=D7(i),c=i==="drawline",h=i==="drawcircle",d=c||h,p=n.gd,_=p._fullLayout,b=f&&_.newselection.mode==="immediate"&&a,v=_._zoomlayer,k=n.element.getBoundingClientRect(),E=n.plotinfo,A=Kht(E),L=t-k.left,x=r-k.top;_._calcInverseTransform(p);var C=_z.apply3DTransform(_._invTransform)(L,x);L=C[0],x=C[1];var M=_._invScaleX,m=_._invScaleY,P=L,T=x,B="M"+L+","+x,F=n.xaxes[0],U=n.yaxes[0],G=F._length,j=U._length,H=e.altKey&&!(P5(i)&&u),N,W,re,ae,be,ze,Ce;zce(e,p,n),o&&(N=Zht([[L,x]],xz.BENDPX));var de=v.selectAll("path.select-outline-"+E.id).data([1]),te=l?_.newshape:_.newselection;l&&(n.hasText=te.label.text||te.label.texttemplate);var ke=l&&!u?te.fillcolor:"rgba(0,0,0,0)",Ee=te.line.color||(a?k5.contrast(p._fullLayout.plot_bgcolor):"#7f7f7f");de.enter().append("path").attr("class","select-outline select-outline-"+E.id).style({opacity:l?te.opacity/2:1,"stroke-dasharray":Fht(te.line.dash,te.line.width),"stroke-width":te.line.width+"px","shape-rendering":"crispEdges"}).call(k5.stroke,Ee).call(k5.fill,ke).attr("fill-rule","evenodd").classed("cursor-move",!!l).attr("transform",A).attr("d",B+"Z");var Me=v.append("path").attr("class","zoombox-corners").style({fill:k5.background,stroke:k5.defaultLine,"stroke-width":1}).attr("transform",A).attr("d","M0,0Z");if(l&&n.hasText){var Ue=v.select(".label-temp");Ue.empty()&&(Ue=v.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var De=_._uid+xz.SELECTID,ye=[],qe=bz(p,n.xaxes,n.yaxes,n.subplot);b&&!e.shiftKey&&(n._clearSubplotSelections=function(){if(a){var Je=F._id,nt=U._id;Bce(p,Je,nt,qe);for(var gt=(p.layout||{}).selections||[],Nt=[],at=!1,Ke=0;Ke=0){p._fullLayout._deactivateShape(p);return}if(!l){var gt=_.clickmode;C5.done(De).then(function(){if(C5.clear(De),Je===2){for(de.remove(),be=0;be-1&&Pce(nt,p,n.xaxes,n.yaxes,n.subplot,n,de),gt==="event"&&R5(p,void 0);Bht.click(p,nt,E.id)}).catch(_z.error)}},n.doneFn=function(){Me.remove(),C5.done(De).then(function(){C5.clear(De),!b&&ae&&n.selectionDefs&&(ae.subtract=H,n.selectionDefs.push(ae),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,re)),(b||l)&&z5(n,b),n.doneFnCompleted&&n.doneFnCompleted(ye),f&&R5(p,Ce)}).catch(_z.error)}}function Pce(e,t,r,n,i,a,o){var s=t._hoverdata,u=t._fullLayout,l=u.clickmode,f=l.indexOf("event")>-1,c=[],h,d,p,_,b,v,k,E,A,L;if(rdt(s)){zce(e,t,a),h=bz(t,r,n,i);var x=idt(s,h),C=x.pointNumbers.length>0;if(C?ndt(h,x):adt(h)&&(k=Sce(x))){for(o&&o.remove(),L=0;L=0}function tdt(e){return e._fullLayout._activeSelectionIndex>=0}function z5(e,t){var r=e.dragmode,n=e.plotinfo,i=e.gd;edt(i)&&i._fullLayout._deactivateShape(i),tdt(i)&&i._fullLayout._deactivateSelection(i);var a=i._fullLayout,o=a._zoomlayer,s=P5(r),u=D7(r);if(s||u){var l=o.selectAll(".select-outline-"+n.id);if(l&&i._fullLayout._outlining){var f;s&&(f=Vht(l,e)),f&&L5.call("_guiRelayout",i,{shapes:f});var c;u&&!O7(e)&&(c=Ght(l,e)),c&&(i._fullLayout._noEmitSelectedAtStart=!0,L5.call("_guiRelayout",i,{selections:c}).then(function(){t&&Hht(i)})),i._fullLayout._outlining=!1}}n.selection={},n.selection.selectionDefs=e.selectionDefs=[],n.selection.mergedPolygons=e.mergedPolygons=[]}function Ace(e){return e._id}function bz(e,t,r,n){if(!e.calcdata)return[];var i=[],a=t.map(Ace),o=r.map(Ace),s,u,l;for(l=0;l0,a=i?n[0]:r;return t.selectedpoints?t.selectedpoints.indexOf(a)>-1:!1}function ndt(e,t){var r=[],n,i,a,o;for(o=0;o0&&r.push(n);if(r.length===1&&(a=r[0]===t.searchInfo,a&&(i=t.searchInfo.cd[0].trace,i.selectedpoints.length===t.pointNumbers.length))){for(o=0;o1||(t+=n.selectedpoints.length,t>1)))return!1;return t===1}function I5(e,t,r){var n;for(n=0;n-1&&t;if(!o&&t){var Je=Mce(e,!0);if(Je.length){var nt=Je[0].xref,gt=Je[0].yref;if(nt&>){var Nt=Oce(Je),at=qce([E0(e,nt,"x"),E0(e,gt,"y")]);at(ye,Nt)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:ce&&R5(e,ye),h._reselect=!1}if(!o&&h._deselect){var Ke=h._deselect;s=Ke.xref,u=Ke.yref,ldt(s,u,f)||Bce(e,s,u,n),ce&&(ye.points.length?R5(e,ye):U7(e)),h._deselect=!1}return{eventData:ye,selectionTesters:r}}function sdt(e){var t=e.calcdata;if(t)for(var r=0;r{"use strict";Vce.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var F5=Ae((Rsr,Gce)=>{"use strict";Gce.exports={axisRefDescription:function(e,t,r){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",t,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",t,"("+r+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",t,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",t,"and the",r,"of the domain of the","second",e,"axis."].join(" ")}}});var Ub=Ae((Fsr,jce)=>{"use strict";var Hce=V7(),Wce=gc(),wz=dd(),ddt=Lf().templatedArray,Dsr=F5();jce.exports=ddt("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:Wce({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:Hce.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:Hce.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",wz.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",wz.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",wz.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",wz.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:Wce({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Sy=Ae((Bsr,Xce)=>{"use strict";Xce.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var km=Ae((Osr,Zce)=>{"use strict";Zce.exports=function(t){return{valType:"color",editType:"style",anim:!0}}});var Zc=Ae((qsr,the)=>{"use strict";var Yce=jc().axisHoverFormat,{hovertemplateAttrs:pdt,texttemplateAttrs:vdt,templatefallbackAttrs:Kce}=Ff(),Jce=nc(),mdt=gc(),ydt=Id().dash,gdt=Id().pattern,_dt=Mu(),xdt=Sy(),Tz=Su().extendFlat,bdt=km();function $ce(e){return{valType:"any",dflt:0,editType:"calc"}}function Qce(e){return{valType:"any",editType:"calc"}}function ehe(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}the.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:$ce("x"),yperiod:$ce("y"),xperiod0:Qce("x0"),yperiod0:Qce("y0"),xperiodalignment:ehe("x"),yperiodalignment:ehe("y"),xhoverformat:Yce("x"),yhoverformat:Yce("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:vdt(),texttemplatefallback:Kce({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:pdt({},{keys:xdt.eventDataKeys}),hovertemplatefallback:Kce(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:Tz({},ydt,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:bdt(!0),fillgradient:Tz({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:gdt,marker:Tz({symbol:{valType:"enumerated",values:_dt.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:Tz({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},Jce("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},Jce("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:mdt({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var G7=Ae((Usr,nhe)=>{"use strict";var rhe=Ub(),ihe=Zc().line,wdt=Id().dash,Az=Su().extendFlat,Tdt=Sc().overrideAll,Adt=Lf().templatedArray,Nsr=F5();nhe.exports=Tdt(Adt("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:Az({},rhe.xref,{}),yref:Az({},rhe.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:ihe.color,width:Az({},ihe.width,{min:1,dflt:1}),dash:Az({},wdt,{dflt:"dot"})}}),"arraydraw","from-root")});var lhe=Ae((Vsr,she)=>{"use strict";var ahe=ei(),Sz=wu(),Sdt=Jd(),Mdt=G7(),ohe=c_();she.exports=function(t,r){Sdt(t,r,{name:"selections",handleItemDefaults:Edt});for(var n=r.selections,i=0;i{"use strict";uhe.exports=function(t,r,n){n("newselection.mode");var i=n("newselection.line.width");i&&(n("newselection.line.color"),n("newselection.line.dash")),n("activeselection.fillcolor"),n("activeselection.opacity")}});var B5=Ae((Hsr,dhe)=>{"use strict";var kdt=$l(),che=ei(),hhe=Wc();dhe.exports=function(t){return function(n,i){var a=n[t];if(Array.isArray(a))for(var o=kdt.subplotsRegistry.cartesian,s=o.idRegex,u=i._subplots,l=u.xaxis,f=u.yaxis,c=u.cartesian,h=i._has("cartesian"),d=0;d{"use strict";var phe=C7(),O5=Uce();vhe.exports={moduleType:"component",name:"selections",layoutAttributes:G7(),supplyLayoutDefaults:lhe(),supplyDrawNewSelectionDefaults:fhe(),includeBasePlot:B5()("selections"),draw:phe.draw,drawOne:phe.drawOne,reselect:O5.reselect,prepSelect:O5.prepSelect,clearOutline:O5.clearOutline,clearSelectionsCache:O5.clearSelectionsCache,selectOnClick:O5.selectOnClick}});var K7=Ae((jsr,Dhe)=>{"use strict";var Z7=Jl(),k0=ei(),mhe=k0.numberFormat,Cdt=cd(),Ldt=IP(),Mz=$l(),She=k0.strTranslate,Pdt=Xf(),yhe=jl(),d_=Mu(),zdt=Xc(),ghe=wu(),Idt=Am(),Rdt=xp(),Mhe=Mm(),Ez=Mhe.selectingOrDrawing,Ddt=Mhe.freeMode,Fdt=td().FROM_TL,Bdt=d5(),Odt=b5().redrawReglTraces,qdt=Cc(),W7=Wc().getFromId,Ndt=oh().prepSelect,Udt=oh().clearOutline,Vdt=oh().selectOnClick,H7=b7(),Y7=dd(),_he=Y7.MINDRAG,nv=Y7.MINZOOM,xhe=!0;function Gdt(e,t,r,n,i,a,o,s){var u=e._fullLayout._zoomlayer,l=o+s==="nsew",f=(o+s).length===1,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H;r+=t.yaxis._shift;function N(){if(c=t.xaxis,h=t.yaxis,E=c._length,A=h._length,v=c._offset,k=h._offset,d={},d[c._id]=c,p={},p[h._id]=h,o&&s)for(var He=t.overlays,it=0;it=0){et._fullLayout._deactivateShape(et);return}var It=et._fullLayout.clickmode;if(X7(et),He===2&&!f&&Et(),l)It.indexOf("select")>-1&&Vdt(it,et,_,b,t.id,ae),It.indexOf("event")>-1&&zdt.click(et,it,t.id);else if(He===1&&f){var Yt=o?h:c,cr=o==="s"||s==="w"?0:1,_r=Yt._name+".range["+cr+"]",yr=Hdt(Yt,cr),Ut="left",Re="middle";if(Yt.fixedrange)return;o?(Re=o==="n"?"top":"bottom",Yt.side==="right"&&(Ut="right")):s==="e"&&(Ut="right"),et._context.showAxisRangeEntryBoxes&&Z7.select(re).call(Pdt.makeEditable,{gd:et,immediate:!0,background:et._fullLayout.paper_bgcolor,text:String(yr),fill:Yt.tickfont?Yt.tickfont.color:"#444",horizontalAlign:Ut,verticalAlign:Re}).on("edit",function(xe){var Oe=Yt.d2r(xe);Oe!==void 0&&Mz.call("_guiRelayout",et,_r,Oe)})}}Rdt.init(ae);var Ce,de,te,ke,Ee,Me,Ue,De,ye,qe;function ce(He,it,et){var It=re.getBoundingClientRect();Ce=it-It.left,de=et-It.top,e._fullLayout._calcInverseTransform(e);var Yt=k0.apply3DTransform(e._fullLayout._invTransform)(Ce,de);Ce=Yt[0],de=Yt[1],te={l:Ce,r:Ce,w:0,t:de,b:de,h:0},ke=e._hmpixcount?e._hmlumcount/e._hmpixcount:Cdt(e._fullLayout.plot_bgcolor).getLuminance(),Ee="M0,0H"+E+"V"+A+"H0V0",Me=!1,Ue="xy",qe=!1,De=Che(u,ke,v,k,Ee),ye=Lhe(u,v,k)}function Je(He,it){if(e._transitioningWithDuration)return!1;var et=Math.max(0,Math.min(E,j*He+Ce)),It=Math.max(0,Math.min(A,H*it+de)),Yt=Math.abs(et-Ce),cr=Math.abs(It-de);te.l=Math.min(Ce,et),te.r=Math.max(Ce,et),te.t=Math.min(de,It),te.b=Math.max(de,It);function _r(){Ue="",te.r=te.l,te.t=te.b,ye.attr("d","M0,0Z")}if(L.isSubplotConstrained)Yt>nv||cr>nv?(Ue="xy",Yt/E>cr/A?(cr=Yt*A/E,de>It?te.t=de-cr:te.b=de+cr):(Yt=cr*E/A,Ce>et?te.l=Ce-Yt:te.r=Ce+Yt),ye.attr("d",kz(te))):_r();else if(x.isSubplotConstrained)if(Yt>nv||cr>nv){Ue="xy";var yr=Math.min(te.l/E,(A-te.b)/A),Ut=Math.max(te.r/E,(A-te.t)/A);te.l=yr*E,te.r=Ut*E,te.b=(1-yr)*A,te.t=(1-Ut)*A,ye.attr("d",kz(te))}else _r();else!M||cr0){var xe;if(x.isSubplotConstrained||!C&&M.length===1){for(xe=0;xe<_.length;xe++)_[xe].range=_[xe]._r.slice(),H7(_[xe],1-it/A);He=it*E/A,Ut=He/2}if(x.isSubplotConstrained||!M&&C.length===1){for(xe=0;xe1&&(_r.maxallowed!==void 0&&P===(_r.range[0]<_r.range[1]?"e":"w")||_r.minallowed!==void 0&&P===(_r.range[0]<_r.range[1]?"w":"e"))&&(ft=1,fe=0),Fe?(ge=Oe,pe=o||x.isSubplotConstrained?He[1]:Ye(yr,ge)):x.yaHash[yr._id]?(ge=Oe,pe=He[1]*yr._length/h._length):x.xaHash[yr._id]?(ge=xe,pe=C==="ew"?-He[0]*yr._length/c._length:Ye(yr,ge,{e:"right",w:"left"}[C])):(ge=Tt(yr,xe,Oe),pe=vt(yr,ge)),ge>1&&(yr.maxallowed!==void 0&&T===(yr.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function jdt(e,t,r){return e?e==="nsew"?r?"":t==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function Che(e,t,r,n,i){return e.append("path").attr("class","zoombox").style({fill:t>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",She(r,n)).attr("d",i+"Z")}function Lhe(e,t,r){return e.append("path").attr("class","zoombox-corners").style({fill:yhe.background,stroke:yhe.defaultLine,"stroke-width":1,opacity:0}).attr("transform",She(t,r)).attr("d","M0,0Z")}function Phe(e,t,r,n,i,a){e.attr("d",n+"M"+r.l+","+r.t+"v"+r.h+"h"+r.w+"v-"+r.h+"h-"+r.w+"Z"),zhe(e,t,i,a)}function zhe(e,t,r,n){r||(e.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),t.transition().style("opacity",1).duration(200))}function X7(e){Z7.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function Ihe(e){xhe&&e.data&&e._context.showTips&&(k0.notifier(k0._(e,"Double-click to zoom back out"),"long"),xhe=!1)}function Xdt(e,t){return"M"+(e.l-.5)+","+(t-nv-.5)+"h-3v"+(2*nv+1)+"h3ZM"+(e.r+.5)+","+(t-nv-.5)+"h3v"+(2*nv+1)+"h-3Z"}function Zdt(e,t){return"M"+(t-nv-.5)+","+(e.t-.5)+"v-3h"+(2*nv+1)+"v3ZM"+(t-nv-.5)+","+(e.b+.5)+"v3h"+(2*nv+1)+"v-3Z"}function kz(e){var t=Math.floor(Math.min(e.b-e.t,e.r-e.l,nv)/2);return"M"+(e.l-3.5)+","+(e.t-.5+t)+"h3v"+-t+"h"+t+"v-3h-"+(t+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+t)+"h-3v"+-t+"h"+-t+"v-3h"+(t+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-t)+"h-3v"+t+"h"+-t+"v3h"+(t+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-t)+"h3v"+t+"h"+t+"v3h-"+(t+3)+"Z"}function The(e,t,r,n,i){for(var a=!1,o={},s={},u,l,f,c,h=(i||{}).xaHash,d=(i||{}).yaHash,p=0;p{"use strict";var Ydt=Jl(),Cz=Xc(),Kdt=xp(),Jdt=Am(),Cm=K7().makeDragBox,yd=dd().DRAGGERSIZE;Lz.initInteractions=function(t){var r=t._fullLayout;if(t._context.staticPlot){Ydt.select(t).selectAll(".drag").remove();return}if(!(!r._has("cartesian")&&!r._has("splom"))){var n=Object.keys(r._plots||{}).sort(function(a,o){if((r._plots[a].mainplot&&!0)===(r._plots[o].mainplot&&!0)){var s=a.split("y"),u=o.split("y");return s[0]===u[0]?Number(s[1]||1)-Number(u[1]||1):Number(s[0]||1)-Number(u[0]||1)}return r._plots[a].mainplot?1:-1});n.forEach(function(a){var o=r._plots[a],s=o.xaxis,u=o.yaxis;if(!o.mainplot){var l=Cm(t,o,s._offset,u._offset,s._length,u._length,"ns","ew");l.onmousemove=function(h){t._fullLayout._rehover=function(){t._fullLayout._hoversubplot===a&&t._fullLayout._plots[a]&&Cz.hover(t,h,a)},Cz.hover(t,h,a),t._fullLayout._lasthover=l,t._fullLayout._hoversubplot=a},l.onmouseout=function(h){t._dragging||(t._fullLayout._hoversubplot=null,Kdt.unhover(t,h))},t._context.showAxisDragHandles&&(Cm(t,o,s._offset-yd,u._offset-yd,yd,yd,"n","w"),Cm(t,o,s._offset+s._length,u._offset-yd,yd,yd,"n","e"),Cm(t,o,s._offset-yd,u._offset+u._length,yd,yd,"s","w"),Cm(t,o,s._offset+s._length,u._offset+u._length,yd,yd,"s","e"))}if(t._context.showAxisDragHandles){if(a===s._mainSubplot){var f=s._mainLinePosition;s.side==="top"&&(f-=yd),Cm(t,o,s._offset+s._length*.1,f,s._length*.8,yd,"","ew"),Cm(t,o,s._offset,f,s._length*.1,yd,"","w"),Cm(t,o,s._offset+s._length*.9,f,s._length*.1,yd,"","e")}if(a===u._mainSubplot){var c=u._mainLinePosition;u.side!=="right"&&(c-=yd),Cm(t,o,c,u._offset+u._length*.1,yd,u._length*.8,"ns",""),Cm(t,o,c,u._offset+u._length*.9,yd,u._length*.1,"s",""),Cm(t,o,c,u._offset,yd,u._length*.1,"n","")}}});var i=r._hoverlayer.node();i.onmousemove=function(a){a.target=t._fullLayout._lasthover,Cz.hover(t,a,r._hoversubplot)},i.onclick=function(a){a.target=t._fullLayout._lasthover,Cz.click(t,a)},i.onmousedown=function(a){t._fullLayout._lasthover.onmousedown(a)},Lz.updateFx(t)}};Lz.updateFx=function(e){var t=e._fullLayout,r=t.dragmode==="pan"?"move":"crosshair";Jdt(t._draggers,r)}});var Ohe=Ae((Zsr,Bhe)=>{"use strict";var Fhe=$l();Bhe.exports=function(t){for(var r=Fhe.layoutArrayContainers,n=Fhe.layoutArrayRegexes,i=t.split("[")[0],a,o,s=0;s{"use strict";var $dt=yg(),$7=wL(),q5=G1(),Qdt=IL().sorterAsc,Q7=$l();N5.containerArrayMatch=Ohe();var ept=N5.isAddVal=function(t){return t==="add"||$dt(t)},qhe=N5.isRemoveVal=function(t){return t===null||t==="remove"};N5.applyContainerArrayChanges=function(t,r,n,i,a){var o=r.astr,s=Q7.getComponentMethod(o,"supplyLayoutDefaults"),u=Q7.getComponentMethod(o,"draw"),l=Q7.getComponentMethod(o,"drawOne"),f=i.replot||i.recalc||s===$7||u===$7,c=t.layout,h=t._fullLayout;if(n[""]){Object.keys(n).length>1&&q5.warn("Full array edits are incompatible with other edits",o);var d=n[""][""];if(qhe(d))r.set(null);else if(Array.isArray(d))r.set(d);else return q5.warn("Unrecognized full array edit value",o,d),!0;return f?!1:(s(c,h),u(t),!0)}var p=Object.keys(n).map(Number).sort(Qdt),_=r.get(),b=_||[],v=a(h,o).get(),k=[],E=-1,A=b.length,L,x,C,M,m,P,T,B;for(L=0;Lb.length-(T?0:1)){q5.warn("index out of range",o,C);continue}if(P!==void 0)m.length>1&&q5.warn("Insertion & removal are incompatible with edits to the same index.",o,C),qhe(P)?k.push(C):T?(P==="add"&&(P={}),b.splice(C,0,P),v&&v.splice(C,0,{})):q5.warn("Unrecognized full object edit value",o,C,P),E===-1&&(E=C);else for(x=0;x=0;L--)b.splice(k[L],1),v&&v.splice(k[L],1);if(b.length?_||r.set(b):r.set(null),f)return!1;if(s(c,h),l!==$7){var F;if(E===-1)F=p;else{for(A=Math.max(b.length,A),F=[],L=0;L=E));L++)F.push(C);for(L=E;L{"use strict";var Hhe=ku(),Whe=$l(),Up=ei(),U5=Cc(),jhe=Wc(),Xhe=jl(),V5=jhe.cleanId,tpt=jhe.getFromTrace,eU=Whe.traceIs,rpt=["x","y","z"];C0.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&Up.log("Clearing previous rejected promises from queue."),e._promises=[]};C0.cleanLayout=function(e){var t,r;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var n=(U5.subplotsRegistry.cartesian||{}).attrRegex,i=(U5.subplotsRegistry.polar||{}).attrRegex,a=(U5.subplotsRegistry.ternary||{}).attrRegex,o=(U5.subplotsRegistry.gl3d||{}).attrRegex,s=Object.keys(e);for(t=0;t3?(b.x=1.02,b.xanchor="left"):b.x<-2&&(b.x=-.02,b.xanchor="right"),b.y>3?(b.y=1.02,b.yanchor="bottom"):b.y<-2&&(b.y=-.02,b.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),Xhe.clean(e),e.template&&e.template.layout&&C0.cleanLayout(e.template.layout),e};function $3(e,t){var r=e[t],n=t.charAt(0);r&&r!=="paper"&&(e[t]=V5(r,n,!0))}C0.cleanData=function(e){for(var t=0;t0)return e.substr(0,t)}C0.hasParent=function(e,t){for(var r=Ghe(t);r;){if(r in e)return!0;r=Ghe(r)}return!1};C0.clearAxisTypes=function(e,t,r){for(var n=0;n{let r=(...n)=>n.every(i=>Up.isPlainObject(i))||n.every(i=>Array.isArray(i));if([e,t].every(n=>Array.isArray(n))){if(e.length!==t.length)return!1;for(let n=0;nUp.isPlainObject(n))){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e){if(n.startsWith("_"))continue;let i=e[n],a=t[n];if(i!==a&&!(r(i,a)?tU(i,a):!1))return!1}return!0}return!1};C0.collectionsAreEqual=tU});var Gz=Ae(zf=>{"use strict";var Rz=Jl(),apt=ku(),opt=dq(),Hl=ei(),Lc=Hl.nestedProperty,nU=g3(),av=Cne(),L0=$l(),Uz=b3(),Nu=Cc(),Vp=wu(),spt=CN(),lpt=Dd(),rU=Mu(),upt=jl(),fpt=J7().initInteractions,cpt=jv(),hpt=oh().clearOutline,Qhe=fb().dfltConfig,zz=Nhe(),Th=Zhe(),ac=b5(),p_=Sc(),dpt=dd().AX_NAME_PATTERN,iU=0,Yhe=5;function ppt(e,t,r,n){var i;if(e=Hl.getGraphDiv(e),nU.init(e),Hl.isPlainObject(t)){var a=t;t=a.data,r=a.layout,n=a.config,i=a.frames}var o=nU.triggerHandler(e,"plotly_beforeplot",[t,r,n]);if(o===!1)return Promise.reject();!t&&!r&&!Hl.isPlotDiv(e)&&Hl.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function s(){if(i)return zf.addFrames(e,i)}tde(e,n),r||(r={}),Rz.select(e).classed("js-plotly-plot",!0),rU.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var u=(e.data||[]).length===0&&Array.isArray(t);Array.isArray(t)&&(Th.cleanData(t),u?e.data=t:e.data.push.apply(e.data,t),e.empty=!1),(!e.layout||u)&&(e.layout=Th.cleanLayout(r)),Nu.supplyDefaults(e);var l=e._fullLayout,f=l._has("cartesian");l._replotting=!0,(u||l._shouldCreateBgLayer)&&(Bpt(e),l._shouldCreateBgLayer&&delete l._shouldCreateBgLayer),rU.initGradients(e),rU.initPatterns(e),u&&Vp.saveShowSpikeInitial(e);var c=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;c&&Nu.doCalcdata(e);for(var h=0;h=e.data.length||i<-e.data.length)throw new Error(r+" must be valid indices for gd.data.");if(t.indexOf(i,n+1)>-1||i>=0&&t.indexOf(-e.data.length+i)>-1||i<0&&t.indexOf(e.data.length+i)>-1)throw new Error("each index in "+r+" must be unique.")}}function rde(e,t,r){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(t)||(t=[t]),Fz(e,t,"currentIndices"),typeof r!="undefined"&&!Array.isArray(r)&&(r=[r]),typeof r!="undefined"&&Fz(e,r,"newIndices"),typeof r!="undefined"&&t.length!==r.length)throw new Error("current and new indices must be of equal length.")}function _pt(e,t,r){var n,i;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("traces must be defined.");for(Array.isArray(t)||(t=[t]),n=0;n=0&&f=0&&f0&&typeof M.parts[T]!="string";)T--;var B=M.parts[T],F=M.parts[T-1]+"."+B,U=M.parts.slice(0,T).join("."),G=Lc(e.layout,U).get(),j=Lc(n,U).get(),H=M.get();if(m!==void 0){v[C]=m,k[C]=B==="reverse"?m:Lg(H);var N=Uz.getLayoutValObject(n,M.parts);if(N&&N.impliedEdits&&m!==null)for(var W in N.impliedEdits)E(Hl.relativeAttr(C,W),N.impliedEdits[W]);if(["width","height"].indexOf(C)!==-1)if(m){E("autosize",null);var re=C==="height"?"width":"height";E(re,n[re])}else n[C]=e._initialAutoSize[C];else if(C==="autosize")E("width",m?null:n.width),E("height",m?null:n.height);else if(F.match(cde))x(F),Lc(n,U+"._inputRange").set(null);else if(F.match(hde)){x(F),Lc(n,U+"._inputRange").set(null);var ae=Lc(n,U).get();ae._inputDomain&&(ae._input.domain=ae._inputDomain.slice())}else F.match(Tpt)&&Lc(n,U+"._inputDomain").set(null);if(B==="type"){L=G;var be=j.type==="linear"&&m==="log",ze=j.type==="log"&&m==="linear";if(be||ze){if(!L||!L.range)E(U+".autorange",!0);else if(j.autorange)be&&(L.range=L.range[1]>L.range[0]?[1,2]:[2,1]);else{var Ce=L.range[0],de=L.range[1];be?(Ce<=0&&de<=0&&E(U+".autorange",!0),Ce<=0?Ce=de/1e6:de<=0&&(de=Ce/1e6),E(U+".range[0]",Math.log(Ce)/Math.LN10),E(U+".range[1]",Math.log(de)/Math.LN10)):(E(U+".range[0]",Math.pow(10,Ce)),E(U+".range[1]",Math.pow(10,de)))}Array.isArray(n._subplots.polar)&&n._subplots.polar.length&&n[M.parts[0]]&&M.parts[1]==="radialaxis"&&delete n[M.parts[0]]._subplot.viewInitial["radialaxis.range"],L0.getComponentMethod("annotations","convertCoords")(e,j,m,E),L0.getComponentMethod("images","convertCoords")(e,j,m,E)}else E(U+".autorange",!0),E(U+".range",null);Lc(n,U+"._inputRange").set(null)}else if(B.match(dpt)){var te=Lc(n,C).get(),ke=(m||{}).type;(!ke||ke==="-")&&(ke="linear"),L0.getComponentMethod("annotations","convertCoords")(e,te,ke,E),L0.getComponentMethod("images","convertCoords")(e,te,ke,E)}var Ee=zz.containerArrayMatch(C);if(Ee){f=Ee.array,c=Ee.index;var Me=Ee.property,Ue=N||{editType:"calc"};c!==""&&Me===""&&(zz.isAddVal(m)?k[C]=null:zz.isRemoveVal(m)?k[C]=(Lc(r,f).get()||[])[c]:Hl.warn("unrecognized full object value",t)),p_.update(b,Ue),l[f]||(l[f]={});var De=l[f][c];De||(De=l[f][c]={}),De[Me]=m,delete t[C]}else B==="reverse"?(G.range?G.range.reverse():(E(U+".autorange",!0),G.range=[1,0]),j.autorange?b.calc=!0:b.plot=!0):(C==="dragmode"&&(m===!1&&H!==!1||m!==!1&&H===!1)||n._has("scatter-like")&&n._has("regl")&&C==="dragmode"&&(m==="lasso"||m==="select")&&!(H==="lasso"||H==="select")?b.plot=!0:N?p_.update(b,N):b.calc=!0,M.set(m))}}for(f in l){var ye=zz.applyContainerArrayChanges(e,a(r,f),l[f],b,a);ye||(b.plot=!0)}for(var qe in A){L=Vp.getFromId(e,qe);var ce=L&&L._constraintGroup;if(ce){b.calc=!0;for(var Je in ce)A[Je]||(Vp.getFromId(e,Je)._constraintShrinkable=!0)}}(pde(e)||t.height||t.width)&&(b.plot=!0);var nt=n.shapes;for(c=0;c1;)if(n.pop(),r=Lc(t,n.join(".")+".uirevision").get(),r!==void 0)return r;return t.uirevision}function Mpt(e,t){for(var r=0;r[U,e._ev.listeners(U)]);a=zf.newPlot(e,t,r,n).then(()=>{for(let[U,G]of F)G.forEach(j=>e.on(U,j));return zf.react(e,t,r,n)})}else{e.data=t||[],Th.cleanData(e.data),e.layout=r||{},Th.cleanLayout(e.layout),kpt(e.data,e.layout,s,u),Nu.supplyDefaults(e,{skipUpdateCalc:!0});var c=e._fullData,h=e._fullLayout,d=h.datarevision===void 0,p=h.transition,_=Ppt(e,u,h,d,p),b=_.newDataRevision,v=Lpt(e,s,c,d,p,b);if(pde(e)&&(_.layoutReplot=!0),v.calc||_.calc){e.calcdata=void 0;for(var k=Object.getOwnPropertyNames(h),E=0;E(f||e.emit("plotly_react",{config:n,data:t,layout:r}),e))}function Lpt(e,t,r,n,i,a){var o=t.length===r.length;if(!i&&!o)return{fullReplot:!0,calc:!0};var s=p_.traceFlags();s.arrays={},s.nChanges=0,s.nChangesAnim=0;var u,l;function f(d){var p=Uz.getTraceValObject(l,d);return!l._module.animatable&&p.anim&&(p.anim=!1),p}var c={getValObject:f,flags:s,immutable:n,transition:i,newDataRevision:a,gd:e},h={};for(u=0;u=i.length?i[0]:i[l]:i}function s(l){return Array.isArray(a)?l>=a.length?a[0]:a[l]:a}function u(l,f){var c=0;return function(){if(l&&++c===f)return l()}}return new Promise(function(l,f){function c(){if(n._frameQueue.length!==0){for(;n._frameQueue.length;){var B=n._frameQueue.pop();B.onInterrupt&&B.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function h(B){if(B.length!==0){for(var F=0;Fn._timeToNext&&p()};B()}var b=0;function v(B){return Array.isArray(i)?b>=i.length?B.transitionOpts=i[b]:B.transitionOpts=i[0]:B.transitionOpts=i,b++,B}var k,E,A=[],L=t==null,x=Array.isArray(t),C=!L&&!x&&Hl.isPlainObject(t);if(C)A.push({type:"object",data:v(Hl.extendFlat({},t))});else if(L||["string","number"].indexOf(typeof t)!==-1)for(k=0;k0&&PP)&&T.push(E);A=T}}A.length>0?h(A):(e.emit("plotly_animated"),l())})}function Ipt(e,t,r){if(e=Hl.getGraphDiv(e),t==null)return Promise.resolve();if(!Hl.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var n,i,a,o,s=e._transitionData._frames,u=e._transitionData._frameHash;if(!Array.isArray(t))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+t);var l=s.length+t.length*2,f=[],c={};for(n=t.length-1;n>=0;n--)if(Hl.isPlainObject(t[n])){var h=t[n].name,d=(u[h]||c[h]||{}).name,p=t[n].name,_=u[d]||c[d];d&&p&&typeof p=="number"&&_&&iUM.index?-1:C.index=0;n--){if(i=f[n].frame,typeof i.name=="number"&&Hl.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!i.name)for(;u[i.name="frame "+e._transitionData._counter++];);if(u[i.name]){for(a=0;a=0;r--)n=t[r],a.push({type:"delete",index:n}),o.unshift({type:"insert",index:n,value:i[n]});var s=Nu.modifyFrames,u=Nu.modifyFrames,l=[e,o],f=[e,a];return av&&av.add(e,s,l,u,f),Nu.modifyFrames(e,a)}function Dpt(e){e=Hl.getGraphDiv(e);var t=e._fullLayout||{},r=e._fullData||[];return Nu.cleanPlot([],{},r,t),Nu.purge(e),nU.purge(e),t._container&&t._container.remove(),delete e._context,e}function Fpt(e){var t=e._fullLayout,r=e.getBoundingClientRect();if(!Hl.equalDomRects(r,t._lastBBox)){var n=t._invTransform=Hl.inverseTransformMatrix(Hl.getFullTransformMatrix(e));t._invScaleX=Math.sqrt(n[0][0]*n[0][0]+n[0][1]*n[0][1]+n[0][2]*n[0][2]),t._invScaleY=Math.sqrt(n[1][0]*n[1][0]+n[1][1]*n[1][1]+n[1][2]*n[1][2]),t._lastBBox=r}}function Bpt(e){var t=Rz.select(e),r=e._fullLayout;if(r._calcInverseTransform=Fpt,r._calcInverseTransform(e),r._container=t.selectAll(".plot-container").data([0]),r._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),r._paperdiv=r._container.selectAll(".svg-container").data([0]),r._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),r._glcontainer=r._paperdiv.selectAll(".gl-container").data([{}]),r._glcontainer.enter().append("div").classed("gl-container",!0),r._paperdiv.selectAll(".main-svg").remove(),r._paperdiv.select(".modebar-container").remove(),r._paper=r._paperdiv.insert("svg",":first-child").classed("main-svg",!0),r._toppaper=r._paperdiv.append("svg").classed("main-svg",!0),r._modebardiv=r._paperdiv.append("div"),delete r._modeBar,r._hoverpaper=r._paperdiv.append("svg").classed("main-svg",!0),!r._uid){var n={};Rz.selectAll("defs").each(function(){this.id&&(n[this.id.split("-")[1]]=1)}),r._uid=Hl.randstr(n)}r._paperdiv.selectAll(".main-svg").attr(cpt.svgAttrs),r._defs=r._paper.append("defs").attr("id","defs-"+r._uid),r._clips=r._defs.append("g").classed("clips",!0),r._topdefs=r._toppaper.append("defs").attr("id","topdefs-"+r._uid),r._topclips=r._topdefs.append("g").classed("clips",!0),r._bgLayer=r._paper.append("g").classed("bglayer",!0),r._draggers=r._paper.append("g").classed("draglayer",!0);var i=r._paper.append("g").classed("layer-below",!0);r._imageLowerLayer=i.append("g").classed("imagelayer",!0),r._shapeLowerLayer=i.append("g").classed("shapelayer",!0),r._cartesianlayer=r._paper.append("g").classed("cartesianlayer",!0),r._polarlayer=r._paper.append("g").classed("polarlayer",!0),r._smithlayer=r._paper.append("g").classed("smithlayer",!0),r._ternarylayer=r._paper.append("g").classed("ternarylayer",!0),r._geolayer=r._paper.append("g").classed("geolayer",!0),r._funnelarealayer=r._paper.append("g").classed("funnelarealayer",!0),r._pielayer=r._paper.append("g").classed("pielayer",!0),r._iciclelayer=r._paper.append("g").classed("iciclelayer",!0),r._treemaplayer=r._paper.append("g").classed("treemaplayer",!0),r._sunburstlayer=r._paper.append("g").classed("sunburstlayer",!0),r._indicatorlayer=r._toppaper.append("g").classed("indicatorlayer",!0),r._glimages=r._paper.append("g").classed("glimages",!0);var a=r._toppaper.append("g").classed("layer-above",!0);r._imageUpperLayer=a.append("g").classed("imagelayer",!0),r._shapeUpperLayer=a.append("g").classed("shapelayer",!0),r._selectionLayer=r._toppaper.append("g").classed("selectionlayer",!0),r._infolayer=r._toppaper.append("g").classed("infolayer",!0),r._menulayer=r._toppaper.append("g").classed("menulayer",!0),r._zoomlayer=r._toppaper.append("g").classed("zoomlayer",!0),r._hoverlayer=r._hoverpaper.append("g").classed("hoverlayer",!0),r._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}zf.animate=zpt;zf.addFrames=Ipt;zf.deleteFrames=Rpt;zf.addTraces=sde;zf.deleteTraces=lde;zf.extendTraces=ade;zf.moveTraces=aU;zf.prependTraces=ode;zf.newPlot=gpt;zf._doPlot=ppt;zf.purge=Dpt;zf.react=Cpt;zf.redraw=ypt;zf.relayout=G5;zf.restyle=Bz;zf.setPlotConfig=vpt;zf.update=qz;zf._guiRelayout=oU(G5);zf._guiRestyle=oU(Bz);zf._guiUpdate=oU(qz);zf._storeDirectGUIEdit=wpt});var Pg=Ae(My=>{"use strict";var Opt=$l();My.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};My.getRedrawFunc=function(e){return function(){Opt.getComponentMethod("colorbar","draw")(e)}};My.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};My.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var vde=window.URL||window.webkitURL;My.createObjectURL=function(e){return vde.createObjectURL(e)};My.revokeObjectURL=function(e){return vde.revokeObjectURL(e)};My.createBlob=function(e,t){if(t==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(t==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var r=qpt(window.atob(e));return new window.Blob([r],{type:"image/"+t})};My.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function qpt(e){for(var t=e.length,r=new ArrayBuffer(t),n=new Uint8Array(r),i=0;i{"use strict";var lU=Jl(),Qsr=ei(),Npt=Mu(),Upt=jl(),elr=jv(),sU=/"/g,W5="TOBESTRIPPED",Vpt=new RegExp('("'+W5+")|("+W5+'")',"g");function Gpt(e){var t=lU.select("body").append("div").style({display:"none"}).html(""),r=e.replace(/(&[^;]*;)/gi,function(n){return n==="<"?"<":n==="&rt;"?">":n.indexOf("<")!==-1||n.indexOf(">")!==-1?"":t.html(n).text()});return t.remove(),r}function Hpt(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}mde.exports=function(t,r,n){var i=t._fullLayout,a=i._paper,o=i._toppaper,s=i.width,u=i.height,l;a.insert("rect",":first-child").call(Npt.setRect,0,0,s,u).call(Upt.fill,i.paper_bgcolor);var f=i._basePlotModules||[];for(l=0;l{"use strict";var Wpt=ei(),jpt=vb().EventEmitter,j5=Pg();function Xpt(e){var t=e.emitter||new jpt,r=new Promise(function(n,i){var a=window.Image,o=e.svg,s=e.format||"png",u=e.canvas,l=e.scale||1,f=e.width||300,c=e.height||150,h=l*f,d=l*c,p=u.getContext("2d",{willReadFrequently:!0}),_=new a,b,v;s==="svg"||Wpt.isSafari()?v=j5.encodeSVG(o):(b=j5.createBlob(o,"svg"),v=j5.createObjectURL(b)),u.width=h,u.height=d,_.onload=function(){var k;switch(b=null,j5.revokeObjectURL(v),s!=="svg"&&p.drawImage(_,0,0,h,d),s){case"jpeg":k=u.toDataURL("image/jpeg");break;case"png":k=u.toDataURL("image/png");break;case"webp":k=u.toDataURL("image/webp");break;case"svg":k=v;break;default:var E="Image format is not jpeg, png, svg or webp.";if(i(new Error(E)),!e.promise)return t.emit("error",E)}n(k),e.promise||t.emit("success",k)},_.onerror=function(k){if(b=null,j5.revokeObjectURL(v),i(k),!e.promise)return t.emit("error",k)},_.src=v});return e.promise?r:t}yde.exports=Xpt});var fU=Ae((ilr,xde)=>{"use strict";var gde=ku(),_de=Gz(),Zpt=Cc(),Ey=ei(),X5=Pg(),Ypt=Hz(),Kpt=Wz(),Jpt=lL().version,uU={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function $pt(e,t){t=t||{};var r,n,i,a;Ey.isPlainObject(e)?(r=e.data||[],n=e.layout||{},i=e.config||{},a={}):(e=Ey.getGraphDiv(e),r=Ey.extendDeep([],e.data),n=Ey.extendDeep({},e.layout),i=e._context,a=e._fullLayout||{});function o(x){return!(x in t)||Ey.validate(t[x],uU[x])}if(!o("width")&&t.width!==null||!o("height")&&t.height!==null)throw new Error("Height and width should be pixel values.");if(!o("format"))throw new Error("Export format is not "+Ey.join2(uU.format.values,", "," or ")+".");var s={};function u(x,C){return Ey.coerce(t,s,uU,x,C)}var l=u("format"),f=u("width"),c=u("height"),h=u("scale"),d=u("setBackground"),p=u("imageDataOnly"),_=document.createElement("div");_.style.position="absolute",_.style.left="-5000px",document.body.appendChild(_);var b=Ey.extendFlat({},n);f?b.width=f:t.width===null&&gde(a.width)&&(b.width=a.width),c?b.height=c:t.height===null&&gde(a.height)&&(b.height=a.height);var v=Ey.extendFlat({},i,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),k=X5.getRedrawFunc(_);function E(){return new Promise(function(x){setTimeout(x,X5.getDelay(_._fullLayout))})}function A(){return new Promise(function(x,C){var M=Ypt(_,l,h),m=_._fullLayout.width,P=_._fullLayout.height;function T(){_de.purge(_),document.body.removeChild(_)}if(l==="full-json"){var B=Zpt.graphJson(_,!1,"keepdata","object",!0,!0);return B.version=Jpt,B=JSON.stringify(B),T(),x(p?B:X5.encodeJSON(B))}if(T(),l==="svg")return x(p?M:X5.encodeSVG(M));var F=document.createElement("canvas");F.id=Ey.randstr(),Kpt({format:l,width:m,height:P,scale:h,canvas:F,svg:M,promise:!0}).then(x).catch(C)})}function L(x){return p?x.replace(X5.IMAGE_URL_PREFIX,""):x}return new Promise(function(x,C){_de.newPlot(_,r,b,v).then(k).then(E).then(A).then(function(M){x(L(M))}).catch(function(M){C(M)})})}xde.exports=$pt});var Tde=Ae((nlr,wde)=>{"use strict";var P0=ei(),Qpt=Cc(),evt=b3(),tvt=fb().dfltConfig,Lm=P0.isPlainObject,Gb=Array.isArray,cU=P0.isArrayOrTypedArray;wde.exports=function(t,r){t===void 0&&(t=[]),r===void 0&&(r={});var n=evt.get(),i=[],a={_context:P0.extendFlat({},tvt)},o,s;Gb(t)?(a.data=P0.extendDeep([],t),o=t):(a.data=[],o=[],i.push(gd("array","data"))),Lm(r)?(a.layout=P0.extendDeep({},r),s=r):(a.layout={},s={},arguments.length>1&&i.push(gd("object","layout"))),Qpt.supplyDefaults(a);for(var u=a._fullData,l=o.length,f=0;fc.length&&n.push(gd("unused",i,l.concat(c.length)));var v=c.length,k=Array.isArray(b);k&&(v=Math.min(v,b.length));var E,A,L,x,C;if(h.dimensions===2)for(A=0;Ac[A].length&&n.push(gd("unused",i,l.concat(A,c[A].length)));var M=c[A].length;for(E=0;E<(k?Math.min(M,b[A].length):M);E++)L=k?b[A][E]:b,x=f[A][E],C=c[A][E],P0.validate(x,L)?C!==x&&C!==+x&&n.push(gd("dynamic",i,l.concat(A,E),x,C)):n.push(gd("value",i,l.concat(A,E),x))}else n.push(gd("array",i,l.concat(A),f[A]));else for(A=0;A{"use strict";var lvt=ei(),Xz=Pg();function uvt(e,t,r){var n=document.createElement("a"),i="download"in n,a=new Promise(function(o,s){var u,l;if(i)return u=Xz.createBlob(e,r),l=Xz.createObjectURL(u),n.href=l,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n),Xz.revokeObjectURL(l),u=null,o(t);if(lvt.isSafari()){var f=r==="svg"?",":";base64,";return Xz.octetStream(f+encodeURIComponent(e)),o(t)}s(new Error("download error"))});return a}Ade.exports=uvt});var hU=Ae((slr,Ede)=>{"use strict";var Mde=ei(),fvt=fU(),cvt=Sde(),olr=Pg();function hvt(e,t){var r;return Mde.isPlainObject(e)||(r=Mde.getGraphDiv(e)),t=t||{},t.format=t.format||"png",t.width=t.width||null,t.height=t.height||null,t.imageDataOnly=!0,new Promise(function(n,i){r&&r._snapshotInProgress&&i(new Error("Snapshotting already in progress.")),r&&(r._snapshotInProgress=!0);var a=fvt(e,t),o=t.filename||e.fn||"newplot";o+="."+t.format.replace("-","."),a.then(function(s){return r&&(r._snapshotInProgress=!1),cvt(s,o,t.format)}).then(function(s){n(s)}).catch(function(s){r&&(r._snapshotInProgress=!1),i(s)})})}Ede.exports=hvt});var zde=Ae(dU=>{"use strict";var Cv=ei(),Lv=Cv.isPlainObject,kde=b3(),Cde=Cc(),dvt=Gf(),Lde=Lf(),Pde=fb().dfltConfig;dU.makeTemplate=function(e){e=Cv.isPlainObject(e)?e:Cv.getGraphDiv(e),e=Cv.extendDeep({_context:Pde},{data:e.data,layout:e.layout}),Cde.supplyDefaults(e);var t=e.data||[],r=e.layout||{};r._basePlotModules=e._fullLayout._basePlotModules,r._modules=e._fullLayout._modules;var n={data:{},layout:{}};t.forEach(function(d){var p={};Z5(d,p,vvt.bind(null,d));var _=Cv.coerce(d,{},dvt,"type"),b=n.data[_];b||(b=n.data[_]=[]),b.push(p)}),Z5(r,n.layout,pvt.bind(null,r)),delete n.layout.template;var i=r.template;if(Lv(i)){var a=i.layout,o,s,u,l,f,c;Lv(a)&&Zz(a,n.layout);var h=i.data;if(Lv(h)){for(s in n.data)if(u=h[s],Array.isArray(u)){for(f=n.data[s],c=f.length,l=u.length,o=0;ov?o.push({code:"unused",traceType:d,templateCount:b,dataCount:v}):v>b&&o.push({code:"reused",traceType:d,templateCount:b,dataCount:v})}}function k(E,A){for(var L in E)if(L.charAt(0)!=="_"){var x=E[L],C=z0(E,L,A);Lv(x)?(Array.isArray(E)&&x._template===!1&&x.templateitemname&&o.push({code:"missing",path:C,templateitemname:x.templateitemname}),k(x,C)):Array.isArray(x)&&mvt(x)&&k(x,C)}}if(k({data:u,layout:s},""),o.length)return o.map(yvt)};function mvt(e){for(var t=0;t{"use strict";var nd=Gz();Vc._doPlot=nd._doPlot;Vc.newPlot=nd.newPlot;Vc.restyle=nd.restyle;Vc.relayout=nd.relayout;Vc.redraw=nd.redraw;Vc.update=nd.update;Vc._guiRestyle=nd._guiRestyle;Vc._guiRelayout=nd._guiRelayout;Vc._guiUpdate=nd._guiUpdate;Vc._storeDirectGUIEdit=nd._storeDirectGUIEdit;Vc.react=nd.react;Vc.extendTraces=nd.extendTraces;Vc.prependTraces=nd.prependTraces;Vc.addTraces=nd.addTraces;Vc.deleteTraces=nd.deleteTraces;Vc.moveTraces=nd.moveTraces;Vc.purge=nd.purge;Vc.addFrames=nd.addFrames;Vc.deleteFrames=nd.deleteFrames;Vc.animate=nd.animate;Vc.setPlotConfig=nd.setPlotConfig;var gvt=qM().getGraphDiv,_vt=sz().eraseActiveShape;Vc.deleteActiveShape=function(e){return _vt(gvt(e))};Vc.toImage=fU();Vc.validate=Tde();Vc.downloadImage=hU();var Ide=zde();Vc.makeTemplate=Ide.makeTemplate;Vc.validateTemplate=Ide.validateTemplate});var Q3=Ae((flr,Dde)=>{"use strict";var pU=ei(),xvt=$l();Dde.exports=function(t,r,n,i){var a=i("x"),o=i("y"),s,u=xvt.getComponentMethod("calendars","handleTraceDefaults");if(u(t,r,["x","y"],n),a){var l=pU.minRowLength(a);o?s=Math.min(l,pU.minRowLength(o)):(s=l,i("y0"),i("dy"))}else{if(!o)return 0;s=pU.minRowLength(o),i("x0"),i("dx")}return r._length=s,s}});var Pm=Ae((clr,Ode)=>{"use strict";var Fde=ei().dateTick0,bvt=rf(),wvt=bvt.ONEWEEK;function Bde(e,t){return e%wvt===0?Fde(t,1):Fde(t,0)}Ode.exports=function(t,r,n,i,a){if(a||(a={x:!0,y:!0}),a.x){var o=i("xperiod");o&&(i("xperiod0",Bde(o,r.xcalendar)),i("xperiodalignment"))}if(a.y){var s=i("yperiod");s&&(i("yperiod0",Bde(s,r.ycalendar)),i("yperiodalignment"))}}});var Ude=Ae((hlr,Nde)=>{"use strict";var qde=["orientation","groupnorm","stackgaps"];Nde.exports=function(t,r,n,i){var a=n._scatterStackOpts,o=i("stackgroup");if(o){var s=r.xaxis+r.yaxis,u=a[s];u||(u=a[s]={});var l=u[o],f=!1;l?l.traces.push(r):(l=u[o]={traceIndices:[],traces:[r]},f=!0);for(var c={orientation:r.x&&!r.y?"h":"v"},h=0;h{"use strict";var Vde=jl(),Gde=yp().hasColorscale,Hde=rd(),Tvt=lc();Wde.exports=function(t,r,n,i,a,o){var s=Tvt.isBubble(t),u=(t.line||{}).color,l;if(o=o||{},u&&(n=u),a("marker.symbol"),a("marker.opacity",s?.7:1),a("marker.size"),o.noAngle||(a("marker.angle"),o.noAngleRef||a("marker.angleref"),o.noStandOff||a("marker.standoff")),a("marker.color",n),Gde(t,"marker")&&Hde(t,r,i,a,{prefix:"marker.",cLetter:"c"}),o.noSelect||(a("selected.marker.color"),a("unselected.marker.color"),a("selected.marker.size"),a("unselected.marker.size")),o.noLine||(u&&!Array.isArray(u)&&r.marker.color!==u?l=u:s?l=Vde.background:l=Vde.defaultLine,a("marker.line.color",l),Gde(t,"marker.line")&&Hde(t,r,i,a,{prefix:"marker.line.",cLetter:"c"}),a("marker.line.width",s?1:0)),s&&(a("marker.sizeref"),a("marker.sizemin"),a("marker.sizemode")),o.gradient){var f=a("marker.gradient.type");f!=="none"&&a("marker.gradient.color")}}});var I0=Ae((plr,jde)=>{"use strict";var Avt=ei().isArrayOrTypedArray,Svt=yp().hasColorscale,Mvt=rd();jde.exports=function(t,r,n,i,a,o){o||(o={});var s=(t.marker||{}).color;if(s&&s._inputArray&&(s=s._inputArray),a("line.color",n),Svt(t,"line"))Mvt(t,r,i,a,{prefix:"line.",cLetter:"c"});else{var u=(Avt(s)?!1:s)||n;a("line.color",u)}a("line.width"),o.noDash||a("line.dash"),o.backoff&&a("line.backoff")}});var eT=Ae((vlr,Xde)=>{"use strict";Xde.exports=function(t,r,n){var i=n("line.shape");i==="spline"&&n("line.smoothing")}});var R0=Ae((mlr,Zde)=>{"use strict";var Evt=ei();Zde.exports=function(e,t,r,n,i){i=i||{},n("textposition"),Evt.coerceFont(n,"textfont",i.font||r.font,i),i.noSelect||(n("selected.textfont.color"),n("unselected.textfont.color"))}});var zm=Ae((ylr,Kde)=>{"use strict";var Kz=jl(),Yde=ei().isArrayOrTypedArray;function kvt(e){for(var t=Kz.interpolate(e[0][1],e[1][1],.5),r=2;r{"use strict";var Jde=ei(),Cvt=$l(),Lvt=Zc(),Pvt=Sy(),tT=lc(),zvt=Q3(),Ivt=Pm(),Rvt=Ude(),Dvt=$v(),Fvt=I0(),$de=eT(),Bvt=R0(),Ovt=zm(),qvt=ei().coercePattern;Qde.exports=function(t,r,n,i){function a(d,p){return Jde.coerce(t,r,Lvt,d,p)}var o=zvt(t,r,i,a);if(o||(r.visible=!1),!!r.visible){Ivt(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("zorder");var s=Rvt(t,r,i,a);i.scattermode==="group"&&r.orientation===void 0&&a("orientation","v");var u=!s&&o{"use strict";var Nvt=Nb().getAxisGroup;tpe.exports=function(t,r,n,i,a){var o=r.orientation,s=r[{v:"x",h:"y"}[o]+"axis"],u=Nvt(n,s)+o,l=n._alignmentOpts||{},f=i("alignmentgroup"),c=l[u];c||(c=l[u]={});var h=c[f];h?h.traces.push(r):h=c[f]={traces:[r],alignmentIndex:Object.keys(c).length,offsetGroups:{}};var d=i("offsetgroup")||"",p=h.offsetGroups,_=p[d];r._offsetIndex=0,(a!=="group"||d)&&(_||(_=p[d]={offsetIndex:Object.keys(p).length}),r._offsetIndex=_.offsetIndex)}});var vU=Ae((xlr,rpe)=>{"use strict";var Uvt=ei(),Vvt=Hb(),Gvt=Zc();rpe.exports=function(t,r){var n,i,a,o=r.scattermode;function s(h){return Uvt.coerce(i._input,i,Gvt,h)}if(r.scattermode==="group")for(a=0;a=0;f--){var c=t[f];if(c.type==="scatter"&&c.xaxis===u.xaxis&&c.yaxis===u.yaxis){c.opacity=void 0;break}}}}}});var npe=Ae((blr,ipe)=>{"use strict";var Hvt=ei(),Wvt=XL();ipe.exports=function(e,t){function r(i,a){return Hvt.coerce(e,t,Wvt,i,a)}var n=t.barmode==="group";t.scattermode==="group"&&r("scattergap",n?t.bargap:.2)}});var Im=Ae((wlr,ope)=>{"use strict";var jvt=ku(),ape=ei(),Xvt=ape.dateTime2ms,Jz=ape.incrementMonth,Zvt=rf(),Yvt=Zvt.ONEAVGMONTH;ope.exports=function(t,r,n,i){if(r.type!=="date")return{vals:i};var a=t[n+"periodalignment"];if(!a)return{vals:i};var o=t[n+"period"],s;if(jvt(o)){if(o=+o,o<=0)return{vals:i}}else if(typeof o=="string"&&o.charAt(0)==="M"){var u=+o.substring(1);if(u>0&&Math.round(u)===u)s=u;else return{vals:i}}for(var l=r.calendar,f=a==="start",c=a==="end",h=t[n+"period0"],d=Xvt(h,l)||0,p=[],_=[],b=[],v=i.length,k=0;kE;)x=Jz(x,-s,l);for(;x<=E;)x=Jz(x,s,l);L=Jz(x,-s,l)}else{for(A=Math.round((E-d)/o),x=d+A*o;x>E;)x-=o;for(;x<=E;)x+=o;L=x-o}p[k]=f?L:c?x:(L+x)/2,_[k]=L,b[k]=x}return{vals:p,starts:_,ends:b}}});var D0=Ae((Tlr,lpe)=>{"use strict";var mU=yp().hasColorscale,yU=gp(),spe=lc();lpe.exports=function(t,r){spe.hasLines(r)&&mU(r,"line")&&yU(t,r,{vals:r.line.color,containerStr:"line",cLetter:"c"}),spe.hasMarkers(r)&&(mU(r,"marker")&&yU(t,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),mU(r,"marker.line")&&yU(t,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var ky=Ae((Alr,upe)=>{"use strict";var ch=ei();upe.exports=function(t,r){for(var n=0;n{"use strict";var fpe=ei();cpe.exports=function(t,r){fpe.isArrayOrTypedArray(r.selectedpoints)&&fpe.tagSelected(t,r)}});var B0=Ae((Mlr,gpe)=>{"use strict";var hpe=ku(),_U=ei(),Y5=wu(),dpe=Im(),gU=rf().BADNUM,xU=lc(),Kvt=D0(),Jvt=ky(),$vt=F0();function Qvt(e,t){var r=e._fullLayout,n=t._xA=Y5.getFromId(e,t.xaxis||"x","x"),i=t._yA=Y5.getFromId(e,t.yaxis||"y","y"),a=n.makeCalcdata(t,"x"),o=i.makeCalcdata(t,"y"),s=dpe(t,n,"x",a),u=dpe(t,i,"y",o),l=s.vals,f=u.vals,c=t._length,h=new Array(c),d=t.ids,p=bU(t,r,n,i),_=!1,b,v,k,E,A,L;mpe(r,t);var x="x",C="y",M;if(p)_U.pushUnique(p.traceIndices,t.index),b=p.orientation==="v",b?(C="s",M="x"):(x="s",M="y"),A=p.stackgaps==="interpolate";else{var m=vpe(t,c);ppe(e,t,n,i,l,f,m)}var P=!!t.xperiodalignment,T=!!t.yperiodalignment;for(v=0;vv&&h[E].gap;)E--;for(L=h[E].s,k=h.length-1;k>E;k--)h[k].s=L;for(;v{"use strict";_pe.exports=$z;var e0t=ei().distinctVals;function $z(e,t){this.traces=e,this.sepNegVal=t.sepNegVal,this.overlapNoMerge=t.overlapNoMerge;for(var r=1/0,n=t.posAxis._id.charAt(0),i=[],a=0;a{"use strict";var O0=ku(),v_=ei().isArrayOrTypedArray,rT=rf().BADNUM,t0t=$l(),K5=wu(),r0t=Nb().getAxisGroup,Qz=xpe();function i0t(e,t){for(var r=t.xaxis,n=t.yaxis,i=e._fullLayout,a=e._fullData,o=e.calcdata,s=[],u=[],l=0;lu+o||!O0(s))}for(var f=0;f{"use strict";var Spe=B0(),Mpe=Wb().setGroupPositions;function v0t(e,t){for(var r=t.xaxis,n=t.yaxis,i=e._fullLayout,a=e._fullData,o=e.calcdata,s=[],u=[],l=0;lm[f]&&f{"use strict";var y0t=Mu(),zpe=rf(),J5=zpe.BADNUM,Ipe=zpe.LOG_CLIP,Cpe=Ipe+.5,Lpe=Ipe-.5,eI=ei(),g0t=eI.segmentsIntersect,Ppe=eI.constrain,EU=Sy();Rpe.exports=function(t,r){var n=r.trace||{},i=r.xaxis,a=r.yaxis,o=i.type==="log",s=a.type==="log",u=i._length,l=a._length,f=r.backoff,c=n.marker,h=r.connectGaps,d=r.baseTolerance,p=r.shape,_=p==="linear",b=n.fill&&n.fill!=="none",v=[],k=EU.minTolerance,E=t.length,A=new Array(E),L=0,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae;function be(Re){var xe=t[Re];if(!xe)return!1;var Oe=r.linearized?i.l2p(xe.x):i.c2p(xe.x),Ie=r.linearized?a.l2p(xe.y):a.c2p(xe.y);if(Oe===J5){if(o&&(Oe=i.c2p(xe.x,!0)),Oe===J5)return!1;s&&Ie===J5&&(Oe*=Math.abs(i._m*l*(i._m>0?Cpe:Lpe)/(a._m*u*(a._m>0?Cpe:Lpe)))),Oe*=1e3}if(Ie===J5){if(s&&(Ie=a.c2p(xe.y,!0)),Ie===J5)return!1;Ie*=1e3}return[Oe,Ie]}function ze(Re,xe,Oe,Ie){var Fe=Oe-Re,ft=Ie-xe,ge=.5-Re,fe=.5-xe,pe=Fe*Fe+ft*ft,dt=Fe*ge+ft*fe;if(dt>0&&dt1||Math.abs(ge.y-Oe[0][1])>1)&&(ge=[ge.x,ge.y],Ie&&ke(ge,Re)Ue||Re[1]ye)return[Ppe(Re[0],Me,Ue),Ppe(Re[1],De,ye)]}function wt(Re,xe){if(Re[0]===xe[0]&&(Re[0]===Me||Re[0]===Ue)||Re[1]===xe[1]&&(Re[1]===De||Re[1]===ye))return!0}function St(Re,xe){var Oe=[],Ie=Ct(Re),Fe=Ct(xe);return Ie&&Fe&&wt(Ie,Fe)||(Ie&&Oe.push(Ie),Fe&&Oe.push(Fe)),Oe}function Dt(Re,xe,Oe){return function(Ie,Fe){var ft=Ct(Ie),ge=Ct(Fe),fe=[];if(ft&&ge&&wt(ft,ge))return fe;ft&&fe.push(ft),ge&&fe.push(ge);var pe=2*eI.constrain((Ie[Re]+Fe[Re])/2,xe,Oe)-((ft||Ie)[Re]+(ge||Fe)[Re]);if(pe){var dt;ft&&ge?dt=pe>0==ft[Re]>ge[Re]?ft:ge:dt=ft||ge,dt[Re]+=pe}return fe}}var Zt;p==="linear"||p==="spline"?Zt=Ke:p==="hv"||p==="vh"?Zt=St:p==="hvh"?Zt=Dt(0,Me,Ue):p==="vhv"&&(Zt=Dt(1,De,ye));function Et(Re,xe){var Oe=xe[0]-Re[0],Ie=(xe[1]-Re[1])/Oe,Fe=(Re[1]*xe[0]-xe[1]*Re[0])/Oe;return Fe>0?[Ie>0?Me:Ue,ye]:[Ie>0?Ue:Me,De]}function Te(Re){var xe=Re[0],Oe=Re[1],Ie=xe===A[L-1][0],Fe=Oe===A[L-1][1];if(!(Ie&&Fe))if(L>1){var ft=xe===A[L-2][0],ge=Oe===A[L-2][1];Ie&&(xe===Me||xe===Ue)&&ft?ge?L--:A[L-1]=Re:Fe&&(Oe===De||Oe===ye)&&ge?ft?L--:A[L-1]=Re:A[L++]=Re}else A[L++]=Re}function ot(Re){A[L-1][0]!==Re[0]&&A[L-1][1]!==Re[1]&&Te([nt,gt]),Te(Re),Nt=null,nt=gt=0}var Tt=eI.isArrayOrTypedArray(c);function vt(Re){if(Re&&f&&(Re.i=x,Re.d=t,Re.trace=n,Re.marker=Tt?c[Re.i]:c,Re.backoff=f),Ce=Re[0]/u,de=Re[1]/l,ce=Re[0]Ue?Ue:0,Je=Re[1]ye?ye:0,ce||Je){if(!L)A[L++]=[ce||Re[0],Je||Re[1]];else if(Nt){var xe=Zt(Nt,Re);xe.length>1&&(ot(xe[0]),A[L++]=xe[1])}else at=Zt(A[L-1],Re)[0],A[L++]=at;var Oe=A[L-1];ce&&Je&&(Oe[0]!==ce||Oe[1]!==Je)?(Nt&&(nt!==ce&>!==Je?Te(nt&>?Et(Nt,Re):[nt||ce,gt||Je]):nt&>&&Te([nt,gt])),Te([ce,Je])):nt-ce&>-Je&&Te([ce||nt,Je||gt]),Nt=Re,nt=ce,gt=Je}else Nt&&ot(Zt(Nt,Re)[0]),A[L++]=Re}for(x=0;xte(T,Ye))break;M=T,N=U[0]*F[0]+U[1]*F[1],N>j?(j=N,m=T,B=!1):N=t.length||!T)break;vt(T),C=T}}Nt&&Te([nt||Nt[0],gt||Nt[1]]),v.push(A.slice(0,L))}var He=p.slice(p.length-1);if(f&&He!=="h"&&He!=="v"){for(var it=!1,et=-1,It=[],Yt=0;Yt{"use strict";var Dpe={tonextx:1,tonexty:1,tonext:1};Fpe.exports=function(t,r,n){var i,a,o,s,u,l={},f=!1,c=-1,h=0,d=-1;for(a=0;a=0?u=d:(u=d=h,h++),u{"use strict";var Rm=Jl(),_0t=$l(),$5=ei(),nT=$5.ensureSingle,Ope=$5.identity,hh=Mu(),aT=lc(),x0t=kU(),b0t=CU(),tI=E5().tester;qpe.exports=function(t,r,n,i,a,o){var s,u,l=!a,f=!!a&&a.duration>0,c=b0t(t,r,n);if(s=i.selectAll("g.trace").data(c,function(d){return d[0].trace.uid}),s.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),s.order(),w0t(t,s,r),f){o&&(u=o());var h=Rm.transition().duration(a.duration).ease(a.easing).each("end",function(){u&&u()}).each("interrupt",function(){u&&u()});h.each(function(){i.selectAll("g.trace").each(function(d,p){Bpe(t,p,r,d,c,this,a)})})}else s.each(function(d,p){Bpe(t,p,r,d,c,this,a)});l&&s.exit().remove(),i.selectAll("path:not([d])").remove()};function w0t(e,t,r){t.each(function(n){var i=nT(Rm.select(this),"g","fills");hh.setClipUrl(i,r.layerClipId,e);var a=n[0].trace,o=[];a._ownfill&&o.push("_ownFill"),a._nexttrace&&o.push("_nextFill");var s=i.selectAll("g").data(o,Ope);s.enter().append("g"),s.exit().each(function(u){a[u]=null}).remove(),s.order().each(function(u){a[u]=nT(Rm.select(this),"path","js-fill")})})}function Bpe(e,t,r,n,i,a,o){var s=e._context.staticPlot,u;T0t(e,t,r,n,i);var l=!!o&&o.duration>0;function f(Dt){return l?Dt.transition():Dt}var c=r.xaxis,h=r.yaxis,d=n[0].trace,p=d.line,_=Rm.select(a),b=nT(_,"g","errorbars"),v=nT(_,"g","lines"),k=nT(_,"g","points"),E=nT(_,"g","text");if(_0t.getComponentMethod("errorbars","plot")(e,b,r,o),d.visible!==!0)return;f(_).style("opacity",d.opacity);var A,L,x=d.fill.charAt(d.fill.length-1);x!=="x"&&x!=="y"&&(x="");var C,M;x==="y"?(C=1,M=h.c2p(0,!0)):x==="x"&&(C=0,M=c.c2p(0,!0)),n[0][r.isRangePlot?"nodeRangePlot3":"node3"]=_;var m="",P=[],T=d._prevtrace,B=null,F=null;T&&(m=T._prevRevpath||"",L=T._nextFill,P=T._ownPolygons,B=T._fillsegments,F=T._fillElement);var U,G,j="",H="",N,W,re,ae,be,ze,Ce=[];d._polygons=[];var de=[],te=[],ke=$5.noop;if(A=d._ownFill,aT.hasLines(d)||d.fill!=="none"){L&&L.datum(n),["hv","vh","hvh","vhv"].indexOf(p.shape)!==-1?(N=hh.steps(p.shape),W=hh.steps(p.shape.split("").reverse().join(""))):p.shape==="spline"?N=W=function(Dt){var Zt=Dt[Dt.length-1];return Dt.length>1&&Dt[0][0]===Zt[0]&&Dt[0][1]===Zt[1]?hh.smoothclosed(Dt.slice(1),p.smoothing):hh.smoothopen(Dt,p.smoothing)}:N=W=function(Dt){return"M"+Dt.join("L")},re=function(Dt){return W(Dt.reverse())},te=x0t(n,{xaxis:c,yaxis:h,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(p.width||1,3)/4,shape:p.shape,backoff:p.backoff,simplify:p.simplify,fill:d.fill}),de=new Array(te.length);var Ee=0;for(u=0;u=s[0]&&_.x<=s[1]&&_.y>=u[0]&&_.y<=u[1]}),h=Math.ceil(c.length/f),d=0;i.forEach(function(_,b){var v=_[0].trace;aT.hasMarkers(v)&&v.marker.maxdisplayed>0&&b{"use strict";Npe.exports={container:"marker",min:"cmin",max:"cmax"}});var iI=Ae((Rlr,Upe)=>{"use strict";var rI=wu();Upe.exports=function(t,r,n){var i={},a={_fullLayout:n},o=rI.getFromTrace(a,r,"x"),s=rI.getFromTrace(a,r,"y"),u=t.orig_x;u===void 0&&(u=t.x);var l=t.orig_y;return l===void 0&&(l=t.y),i.xLabel=rI.tickText(o,o.c2l(u),!0).text,i.yLabel=rI.tickText(s,s.c2l(l),!0).text,i}});var ov=Ae((Dlr,Vpe)=>{"use strict";var LU=Jl(),sT=Mu(),A0t=$l();function S0t(e){var t=LU.select(e).selectAll("g.trace.scatter");t.style("opacity",function(r){return r[0].trace.opacity}),t.selectAll("g.points").each(function(r){var n=LU.select(this),i=r.trace||r[0].trace;PU(n,i,e)}),t.selectAll("g.text").each(function(r){var n=LU.select(this),i=r.trace||r[0].trace;zU(n,i,e)}),t.selectAll("g.trace path.js-line").call(sT.lineGroupStyle),t.selectAll("g.trace path.js-fill").call(sT.fillGroupStyle,e,!1),A0t.getComponentMethod("errorbars","style")(t)}function PU(e,t,r){sT.pointStyle(e.selectAll("path.point"),t,r)}function zU(e,t,r){sT.textPointStyle(e.selectAll("text"),t,r)}function M0t(e,t,r){var n=t[0].trace;n.selectedpoints?(sT.selectedPointStyle(r.selectAll("path.point"),n),sT.selectedTextStyle(r.selectAll("text"),n)):(PU(r,n,e),zU(r,n,e))}Vpe.exports={style:S0t,stylePoints:PU,styleText:zU,styleOnSelect:M0t}});var uT=Ae((Flr,Gpe)=>{"use strict";var lT=jl(),E0t=lc();Gpe.exports=function(t,r){var n,i;if(t.mode==="lines")return n=t.line.color,n&&lT.opacity(n)?n:t.fillcolor;if(t.mode==="none")return t.fill?t.fillcolor:"";var a=r.mcc||(t.marker||{}).color,o=r.mlcc||((t.marker||{}).line||{}).color;return i=a&&lT.opacity(a)?a:o&&lT.opacity(o)&&(r.mlw||((t.marker||{}).line||{}).width)?o:"",i?lT.opacity(i)<.3?lT.addOpacity(i,.3):i:(n=(t.line||{}).color,n&&lT.opacity(n)&&E0t.hasLines(t)&&t.line.width?n:t.fillcolor)}});var fT=Ae((Blr,Wpe)=>{"use strict";var nI=ei(),Hpe=Xc(),k0t=$l(),C0t=uT(),IU=jl(),L0t=nI.fillText;Wpe.exports=function(t,r,n,i){var a=t.cd,o=a[0].trace,s=t.xa,u=t.ya,l=s.c2p(r),f=u.c2p(n),c=[l,f],h=o.hoveron||"",d=o.mode.indexOf("markers")!==-1?3:.5,p=!!o.xperiodalignment,_=!!o.yperiodalignment;if(h.indexOf("points")!==-1){var b=function(H){if(p){var N=s.c2p(H.xStart),W=s.c2p(H.xEnd);return l>=Math.min(N,W)&&l<=Math.max(N,W)?0:1/0}var re=Math.max(3,H.mrc||0),ae=1-1/re,be=Math.abs(s.c2p(H.x)-l);return be=Math.min(N,W)&&f<=Math.max(N,W)?0:1/0}var re=Math.max(3,H.mrc||0),ae=1-1/re,be=Math.abs(u.c2p(H.y)-f);return beCe!=ye>=Ce&&(Me=ke[te-1][0],Ue=ke[te][0],ye-De&&(Ee=Me+(Ue-Me)*(Ce-De)/(ye-De),re=Math.min(re,Ee),ae=Math.max(ae,Ee)));return re=Math.max(re,0),ae=Math.min(ae,s._length),{x0:re,x1:ae,y0:Ce,y1:Ce}}if(h.indexOf("fills")!==-1&&o._fillElement){var U=B(o._fillElement)&&!B(o._fillExclusionElement);if(U){var G=F(o._polygons);G===null&&(G={x0:c[0],x1:c[0],y0:c[1],y1:c[1]});var j=IU.defaultLine;return IU.opacity(o.fillcolor)?j=o.fillcolor:IU.opacity((o.line||{}).color)&&(j=o.line.color),nI.extendFlat(t,{distance:t.maxHoverDistance,x0:G.x0,x1:G.x1,y0:G.y0,y1:G.y1,color:j,hovertemplate:!1}),delete t.index,o.text&&!nI.isArrayOrTypedArray(o.text)?t.text=String(o.text):t.text=o.name,[t]}}}});var cT=Ae((Olr,Xpe)=>{"use strict";var jpe=lc();Xpe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,u,l,f,c,h=!jpe.hasMarkers(s)&&!jpe.hasText(s);if(h)return[];if(r===!1)for(u=0;u{"use strict";Zpe.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var DU=Ae((Nlr,$pe)=>{"use strict";var Q5=$l().traceIs,RU=z3();$pe.exports=function(t,r,n,i){n("autotypenumbers",i.autotypenumbersDflt);var a=n("type",(i.splomStash||{}).type);a==="-"&&(P0t(r,i.data),r.type==="-"?r.type="linear":t.type=r.type)};function P0t(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i;r.indexOf("scene")!==-1&&(r=n);var a=z0t(t,r,n);if(a){if(a.type==="histogram"&&n==={v:"y",h:"x"}[a.orientation||"v"]){e.type="linear";return}var o=n+"calendar",s=a[o],u={noMultiCategory:!Q5(a,"cartesian")||Q5(a,"noMultiCategory")};if(a.type==="box"&&a._hasPreCompStats&&n==={h:"x",v:"y"}[a.orientation||"v"]&&(u.noMultiCategory=!0),u.autotypenumbers=e.autotypenumbers,Jpe(a,n)){var l=Kpe(a),f=[];for(i=0;i0&&(i["_"+r+"axes"]||{})[t])return i;if((i[r+"axis"]||r)===t){if(Jpe(i,r))return i;if((i[r]||[]).length||i[r+"0"])return i}}}function Kpe(e){return{v:"x",h:"y"}[e.orientation||"v"]}function Jpe(e,t){var r=Kpe(e),n=Q5(e,"box-violin"),i=Q5(e._fullInput||{},"candlestick");return n&&!i&&t===r&&e[r]===void 0&&e[r+"0"]===void 0}});var aI=Ae((Ulr,Qpe)=>{"use strict";var I0t=mp().isTypedArraySpec;function R0t(e,t){var r=t.dataAttr||e._id.charAt(0),n={},i,a,o;if(t.axData)i=t.axData;else for(i=[],a=0;a0||I0t(a),s;o&&(s="array");var u=n("categoryorder",s),l;u==="array"&&(l=n("categoryarray")),!o&&u==="array"&&(u=r.categoryorder="trace"),u==="trace"?r._initialCategories=[]:u==="array"?r._initialCategories=l.slice():(l=R0t(r,i).sort(),u==="category ascending"?r._initialCategories=l:u==="category descending"&&(r._initialCategories=l.reverse()))}}});var eE=Ae((Vlr,tve)=>{"use strict";var eve=cd().mix,D0t=Fh(),F0t=ei();tve.exports=function(t,r,n,i){i=i||{};var a=i.dfltColor;function o(M,m){return F0t.coerce2(t,r,i.attributes,M,m)}var s=o("linecolor",a),u=o("linewidth"),l=n("showline",i.showLine||!!s||!!u);l||(delete r.linecolor,delete r.linewidth);var f=eve(a,i.bgColor,i.blend||D0t.lightFraction).toRgbString(),c=o("gridcolor",f),h=o("gridwidth"),d=o("griddash"),p=n("showgrid",i.showGrid||!!c||!!h||!!d);if(p||(delete r.gridcolor,delete r.gridwidth,delete r.griddash),i.hasMinor){var _=eve(r.gridcolor,i.bgColor,67).toRgbString(),b=o("minor.gridcolor",_),v=o("minor.gridwidth",r.gridwidth||1),k=o("minor.griddash",r.griddash||"solid"),E=n("minor.showgrid",!!b||!!v||!!k);E||(delete r.minor.gridcolor,delete r.minor.gridwidth,delete r.minor.griddash)}if(!i.noZeroLine){var A=o("zerolinelayer"),L=o("zerolinecolor",a),x=o("zerolinewidth"),C=n("zeroline",i.showGrid||!!L||!!x);C||(delete r.zerolinelayer,delete r.zerolinecolor,delete r.zerolinewidth)}}});var rE=Ae((Glr,sve)=>{"use strict";var rve=ku(),B0t=$l(),tE=ei(),O0t=Lf(),q0t=Jd(),FU=Dd(),ive=bb(),nve=S3(),N0t=e_(),U0t=t_(),V0t=aI(),G0t=eE(),H0t=CN(),ave=gy(),oI=dd().WEEKDAY_PATTERN,W0t=dd().HOUR_PATTERN;sve.exports=function(t,r,n,i,a){var o=i.letter,s=i.font||{},u=i.splomStash||{},l=n("visible",!i.visibleDflt),f=r._template||{},c=r.type||f.type||"-",h;if(c==="date"){var d=B0t.getComponentMethod("calendars","handleDefaults");d(t,r,"calendar",i.calendar),i.noTicklabelmode||(h=n("ticklabelmode"))}!i.noTicklabelindex&&(c==="date"||c==="linear")&&n("ticklabelindex");var p="";(!i.noTicklabelposition||c==="multicategory")&&(p=tE.coerce(t,r,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h==="period"?["outside","inside"]:o==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),i.noTicklabeloverflow||n("ticklabeloverflow",p.indexOf("inside")!==-1?"hide past domain":c==="category"||c==="multicategory"?"allow":"hide past div"),ave(r,a),H0t(t,r,n,i),V0t(t,r,n,i),i.noHover||(c!=="category"&&n("hoverformat"),i.noUnifiedhovertitle||n("unifiedhovertitle.text"));var _=n("color"),b=_!==FU.color.dflt?_:s.color,v=u.label||a._dfltTitle[o];if(U0t(t,r,n,c,i),!l)return r;n("title.text",v),tE.coerceFont(n,"title.font",s,{overrideDflt:{size:tE.bigFont(s.size),color:b}}),ive(t,r,n,c);var k=i.hasMinor;if(k&&(O0t.newContainer(r,"minor"),ive(t,r,n,c,{isMinor:!0})),N0t(t,r,n,c,i),nve(t,r,n,i),k){var E=i.isMinor;i.isMinor=!0,nve(t,r,n,i),i.isMinor=E}G0t(t,r,n,{dfltColor:_,bgColor:i.bgColor,showGrid:i.showGrid,hasMinor:k,attributes:FU}),k&&!r.minor.ticks&&!r.minor.showgrid&&delete r.minor,(r.showline||r.ticks)&&n("mirror");var A=c==="multicategory";if(!i.noTickson&&(c==="category"||A)&&(r.ticks||r.showgrid)&&(A?(n("tickson","boundaries"),delete r.ticklabelposition):n("tickson")),A){var L=n("showdividers");L&&(n("dividercolor"),n("dividerwidth"))}if(c==="date")if(q0t(t,r,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:j0t}),!r.rangebreaks.length)delete r.rangebreaks;else{for(var x=0;x=2){var o="",s,u;if(a.length===2){for(s=0;s<2;s++)if(u=ove(a[s]),u){o=oI;break}}var l=n("pattern",o);if(l===oI)for(s=0;s<2;s++)u=ove(a[s]),u&&(t.bounds[s]=a[s]=u-1);if(l)for(s=0;s<2;s++)switch(u=a[s],l){case oI:if(!rve(u)){t.enabled=!1;return}if(u=+u,u!==Math.floor(u)||u<0||u>=7){t.enabled=!1;return}t.bounds[s]=a[s]=u;break;case W0t:if(!rve(u)){t.enabled=!1;return}if(u=+u,u<0||u>24){t.enabled=!1;return}t.bounds[s]=a[s]=u;break}if(r.autorange===!1){var f=r.range;if(f[0]f[1]){t.enabled=!1;return}}else if(a[0]>f[0]&&a[1]{"use strict";var Z0t=ku(),sI=ei();lve.exports=function(t,r,n,i){var a=i.counterAxes||[],o=i.overlayableAxes||[],s=i.letter,u=i.grid,l=i.overlayingDomain,f,c,h,d,p,_;u&&(c=u._domains[s][u._axisMap[r._id]],f=u._anchors[r._id],c&&(h=u[s+"side"].split(" ")[0],d=u.domain[s][h==="right"||h==="top"?1:0])),c=c||[0,1],f=f||(Z0t(t.position)?"free":a[0]||"free"),h=h||(s==="x"?"bottom":"left"),d=d||0,p=0,_=!1;var b=sI.coerce(t,r,{anchor:{valType:"enumerated",values:["free"].concat(a),dflt:f}},"anchor"),v=sI.coerce(t,r,{side:{valType:"enumerated",values:s==="x"?["bottom","top"]:["left","right"],dflt:h}},"side");if(b==="free"){if(s==="y"){var k=n("autoshift");k&&(d=v==="left"?l[0]:l[1],_=r.automargin?r.automargin:!0,p=v==="left"?-3:3),n("shift",p)}n("position",d)}n("automargin",_);var E=!1;if(o.length&&(E=sI.coerce(t,r,{overlaying:{valType:"enumerated",values:[!1].concat(o),dflt:!1}},"overlaying")),!E){var A=n("domain",c);A[0]>A[1]-1/4096&&(r.domain=c),sI.noneOrAll(t.domain,r.domain,c),r.tickmode==="sync"&&(r.tickmode="auto")}return n("layer"),r}});var yve=Ae((Wlr,mve)=>{"use strict";var jb=ei(),uve=jl(),Y0t=iv().isUnifiedHover,K0t=e7(),fve=Lf(),J0t=u3(),cve=Dd(),$0t=DU(),hve=rE(),Q0t=Nb(),dve=lI(),OU=Wc(),Cy=OU.id2name,pve=OU.name2id,emt=dd().AX_ID_PATTERN,vve=$l(),uI=vve.traceIs,BU=vve.getComponentMethod;function fI(e,t,r){Array.isArray(e[t])?e[t].push(r):e[t]=[r]}mve.exports=function(t,r,n){var i=r.autotypenumbers,a={},o={},s={},u={},l={},f={},c={},h={},d={},p={},_,b;for(_=0;_{"use strict";var tmt=Jl(),gve=$l(),cI=ei(),Qv=Mu(),hI=wu();_ve.exports=function(t,r,n,i){var a=t._fullLayout;if(r.length===0){hI.redrawComponents(t);return}function o(b){var v=b.xaxis,k=b.yaxis;a._defs.select("#"+b.clipId+"> rect").call(Qv.setTranslate,0,0).call(Qv.setScale,1,1),b.plot.call(Qv.setTranslate,v._offset,k._offset).call(Qv.setScale,1,1);var E=b.plot.selectAll(".scatterlayer .trace");E.selectAll(".point").call(Qv.setPointGroupScale,1,1),E.selectAll(".textpoint").call(Qv.setTextPointsScale,1,1),E.call(Qv.hideOutsideRangePoints,b)}function s(b,v){var k=b.plotinfo,E=k.xaxis,A=k.yaxis,L=E._length,x=A._length,C=!!b.xr1,M=!!b.yr1,m=[];if(C){var P=cI.simpleMap(b.xr0,E.r2l),T=cI.simpleMap(b.xr1,E.r2l),B=P[1]-P[0],F=T[1]-T[0];m[0]=(P[0]*(1-v)+v*T[0]-P[0])/(P[1]-P[0])*L,m[2]=L*(1-v+v*F/B),E.range[0]=E.l2r(P[0]*(1-v)+v*T[0]),E.range[1]=E.l2r(P[1]*(1-v)+v*T[1])}else m[0]=0,m[2]=L;if(M){var U=cI.simpleMap(b.yr0,A.r2l),G=cI.simpleMap(b.yr1,A.r2l),j=U[1]-U[0],H=G[1]-G[0];m[1]=(U[1]*(1-v)+v*G[1]-U[1])/(U[0]-U[1])*x,m[3]=x*(1-v+v*H/j),A.range[0]=E.l2r(U[0]*(1-v)+v*G[0]),A.range[1]=A.l2r(U[1]*(1-v)+v*G[1])}else m[1]=0,m[3]=x;hI.drawOne(t,E,{skipTitle:!0}),hI.drawOne(t,A,{skipTitle:!0}),hI.redrawComponents(t,[E._id,A._id]);var N=C?L/m[2]:1,W=M?x/m[3]:1,re=C?m[0]:0,ae=M?m[1]:0,be=C?m[0]/m[2]*L:0,ze=M?m[1]/m[3]*x:0,Ce=E._offset-be,de=A._offset-ze;k.clipRect.call(Qv.setTranslate,re,ae).call(Qv.setScale,1/N,1/W),k.plot.call(Qv.setTranslate,Ce,de).call(Qv.setScale,N,W),Qv.setPointGroupScale(k.zoomScalePts,1/N,1/W),Qv.setTextPointsScale(k.zoomScaleTxt,1/N,1/W)}var u;i&&(u=i());function l(){for(var b={},v=0;vn.duration?(l(),d=window.cancelAnimationFrame(_)):d=window.requestAnimationFrame(_)}return c=Date.now(),d=window.requestAnimationFrame(_),Promise.resolve()}});var Ah=Ae(wp=>{"use strict";var pI=Jl(),bve=$l(),Xb=ei(),rmt=Cc(),imt=Mu(),wve=Rd().getModuleCalcData,m_=Wc(),Dm=dd(),nmt=jv(),Zf=Xb.ensureSingle;function dI(e,t,r){return Xb.ensureSingle(e,t,r,function(n){n.datum(r)})}var Zb=Dm.zindexSeparator;wp.name="cartesian";wp.attr=["xaxis","yaxis"];wp.idRoot=["x","y"];wp.idRegex=Dm.idRegex;wp.attrRegex=Dm.attrRegex;wp.attributes=Ype();wp.layoutAttributes=Dd();wp.supplyLayoutDefaults=yve();wp.transitionAxes=xve();wp.finalizeSubplots=function(e,t){var r=t._subplots,n=r.xaxis,i=r.yaxis,a=r.cartesian,o=a,s={},u={},l,f,c;for(l=0;l0){var d=h.id;if(d.indexOf(Zb)!==-1)continue;d+=Zb+(l+1),h=Xb.extendFlat({},h,{id:d,plot:i._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var p=[],_,b=0;b1&&(L+=Zb+A),E.push(s+L),o=0;o1,c=t.mainplotinfo;if(!t.mainplot||f)if(l)t.xlines=Zf(n,"path","xlines-above"),t.ylines=Zf(n,"path","ylines-above"),t.xaxislayer=Zf(n,"g","xaxislayer-above"),t.yaxislayer=Zf(n,"g","yaxislayer-above");else{if(!o){var h=Zf(n,"g","layer-subplot");t.shapelayer=Zf(h,"g","shapelayer"),t.imagelayer=Zf(h,"g","imagelayer"),c&&f?(t.minorGridlayer=c.minorGridlayer,t.gridlayer=c.gridlayer,t.zerolinelayer=c.zerolinelayer):(t.minorGridlayer=Zf(n,"g","minor-gridlayer"),t.gridlayer=Zf(n,"g","gridlayer"),t.zerolinelayer=Zf(n,"g","zerolinelayer"));var d=Zf(n,"g","layer-between");t.shapelayerBetween=Zf(d,"g","shapelayer"),t.imagelayerBetween=Zf(d,"g","imagelayer"),Zf(n,"path","xlines-below"),Zf(n,"path","ylines-below"),t.overlinesBelow=Zf(n,"g","overlines-below"),Zf(n,"g","xaxislayer-below"),Zf(n,"g","yaxislayer-below"),t.overaxesBelow=Zf(n,"g","overaxes-below")}t.overplot=Zf(n,"g","overplot"),t.plot=Zf(t.overplot,"g",i),c&&f?t.zerolinelayerAbove=c.zerolinelayerAbove:t.zerolinelayerAbove=Zf(n,"g","zerolinelayer-above"),o||(t.xlines=Zf(n,"path","xlines-above"),t.ylines=Zf(n,"path","ylines-above"),t.overlinesAbove=Zf(n,"g","overlines-above"),Zf(n,"g","xaxislayer-above"),Zf(n,"g","yaxislayer-above"),t.overaxesAbove=Zf(n,"g","overaxes-above"),t.xlines=n.select(".xlines-"+s),t.ylines=n.select(".ylines-"+u),t.xaxislayer=n.select(".xaxislayer-"+s),t.yaxislayer=n.select(".yaxislayer-"+u))}else{var p=c.plotgroup,_=i+"-x",b=i+"-y";t.minorGridlayer=c.minorGridlayer,t.gridlayer=c.gridlayer,t.zerolinelayer=c.zerolinelayer,t.zerolinelayerAbove=c.zerolinelayerAbove,Zf(c.overlinesBelow,"path",_),Zf(c.overlinesBelow,"path",b),Zf(c.overaxesBelow,"g",_),Zf(c.overaxesBelow,"g",b),t.plot=Zf(c.overplot,"g",i),Zf(c.overlinesAbove,"path",_),Zf(c.overlinesAbove,"path",b),Zf(c.overaxesAbove,"g",_),Zf(c.overaxesAbove,"g",b),t.xlines=p.select(".overlines-"+s).select("."+_),t.ylines=p.select(".overlines-"+u).select("."+b),t.xaxislayer=p.select(".overaxes-"+s).select("."+_),t.yaxislayer=p.select(".overaxes-"+u).select("."+b)}o||(l||(dI(t.minorGridlayer,"g",t.xaxis._id),dI(t.minorGridlayer,"g",t.yaxis._id),t.minorGridlayer.selectAll("g").map(function(v){return v[0]}).sort(m_.idSort),dI(t.gridlayer,"g",t.xaxis._id),dI(t.gridlayer,"g",t.yaxis._id),t.gridlayer.selectAll("g").map(function(v){return v[0]}).sort(m_.idSort)),t.xlines.style("fill","none").classed("crisp",!0),t.ylines.style("fill","none").classed("crisp",!0))}function Sve(e,t){if(e){var r={};e.each(function(u){var l=u[0],f=pI.select(this);f.remove(),Mve(l,t),r[l]=!0});for(var n in t._plots)for(var i=t._plots[n],a=i.overlays||[],o=0;o{"use strict";var vI=lc();Eve.exports={hasLines:vI.hasLines,hasMarkers:vI.hasMarkers,hasText:vI.hasText,isBubble:vI.isBubble,attributes:Zc(),layoutAttributes:XL(),supplyDefaults:epe(),crossTraceDefaults:vU(),supplyLayoutDefaults:npe(),calc:B0().calc,crossTraceCalc:kpe(),arraysToCalcdata:ky(),plot:oT(),colorbar:ep(),formatLabels:iI(),style:ov().style,styleOnSelect:ov().styleOnSelect,hoverPoints:fT(),selectPoints:cT(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:Ah(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var Pve=Ae((Ylr,Lve)=>{"use strict";var omt=Jl(),smt=jl(),Cve=V7(),qU=ei(),lmt=qU.strScale,umt=qU.strRotate,fmt=qU.strTranslate;Lve.exports=function(t,r,n){var i=t.node(),a=Cve[n.arrowhead||0],o=Cve[n.startarrowhead||0],s=(n.arrowwidth||1)*(n.arrowsize||1),u=(n.arrowwidth||1)*(n.startarrowsize||1),l=r.indexOf("start")>=0,f=r.indexOf("end")>=0,c=a.backoff*s+n.standoff,h=o.backoff*u+n.startstandoff,d,p,_,b;if(i.nodeName==="line"){d={x:+t.attr("x1"),y:+t.attr("y1")},p={x:+t.attr("x2"),y:+t.attr("y2")};var v=d.x-p.x,k=d.y-p.y;if(_=Math.atan2(k,v),b=_+Math.PI,c&&h&&c+h>Math.sqrt(v*v+k*k)){U();return}if(c){if(c*c>v*v+k*k){U();return}var E=c*Math.cos(_),A=c*Math.sin(_);p.x+=E,p.y+=A,t.attr({x2:p.x,y2:p.y})}if(h){if(h*h>v*v+k*k){U();return}var L=h*Math.cos(_),x=h*Math.sin(_);d.x-=L,d.y-=x,t.attr({x1:d.x,y1:d.y})}}else if(i.nodeName==="path"){var C=i.getTotalLength(),M="";if(C{"use strict";var zve=Jl(),NU=$l(),cmt=Cc(),g_=ei(),UU=g_.strTranslate,nE=wu(),Yb=jl(),zg=Mu(),Ive=Xc(),VU=Xf(),GU=Am(),iE=xp(),hmt=Lf().arrayEditor,dmt=Pve();Fve.exports={draw:pmt,drawOne:Rve,drawRaw:Dve};function pmt(e){var t=e._fullLayout;t._infolayer.selectAll(".annotation").remove();for(var r=0;r2/3?Fe="right":Fe="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[Fe]}for(var De=!1,ye=["x","y"],qe=0;qe1)&&(nt===Je?(Ye=gt.r2fraction(t["a"+ce]),(Ye<0||Ye>1)&&(De=!0)):De=!0),Zt=gt._offset+gt.r2p(t[ce]),ot=.5}else{var He=vt==="domain";ce==="x"?(Te=t[ce],Zt=He?gt._offset+gt._length*Te:Zt=s.l+s.w*Te):(Te=1-t[ce],Zt=He?gt._offset+gt._length*Te:Zt=s.t+s.h*Te),ot=t.showarrow?.5:Te}if(t.showarrow){Dt.head=Zt;var it=t["a"+ce];if(Tt=at*Ue(.5,t.xanchor)-Ke*Ue(.5,t.yanchor),nt===Je){var et=nE.getRefType(nt);et==="domain"?(ce==="y"&&(it=1-it),Dt.tail=gt._offset+gt._length*it):et==="paper"?ce==="y"?(it=1-it,Dt.tail=s.t+s.h*it):Dt.tail=s.l+s.w*it:Dt.tail=gt._offset+gt.r2p(it),Et=Tt}else Dt.tail=Zt+it,Et=Tt+it;Dt.text=Dt.tail+Tt;var It=o[ce==="x"?"width":"height"];if(Je==="paper"&&(Dt.head=g_.constrain(Dt.head,1,It-1)),nt==="pixel"){var Yt=-Math.max(Dt.tail-3,Dt.text),cr=Math.min(Dt.tail+3,Dt.text)-It;Yt>0?(Dt.tail+=Yt,Dt.text+=Yt):cr>0&&(Dt.tail-=cr,Dt.text-=cr)}Dt.tail+=St,Dt.head+=St}else Tt=Ct*Ue(ot,wt),Et=Tt,Dt.text=Zt+Tt;Dt.text+=St,Tt+=St,Et+=St,t["_"+ce+"padplus"]=Ct/2+Et,t["_"+ce+"padminus"]=Ct/2-Et,t["_"+ce+"size"]=Ct,t["_"+ce+"shift"]=Tt}if(De){C.remove();return}var _r=0,yr=0;if(t.align!=="left"&&(_r=(te-Ce)*(t.align==="center"?.5:1)),t.valign!=="top"&&(yr=(ke-de)*(t.valign==="middle"?.5:1)),be)ae.select("svg").attr({x:P+_r-1,y:P+yr}).call(zg.setClipUrl,B?_:null,e);else{var Ut=P+yr-ze.top,Re=P+_r-ze.left;j.call(VU.positionText,Re,Ut).call(zg.setClipUrl,B?_:null,e)}F.select("rect").call(zg.setRect,P,P,te,ke),T.call(zg.setRect,M/2,M/2,Ee-M,Me-M),C.call(zg.setTranslate,Math.round(b.x.text-Ee/2),Math.round(b.y.text-Me/2)),E.attr({transform:"rotate("+v+","+b.x.text+","+b.y.text+")"});var xe=function(Ie,Fe){k.selectAll(".annotation-arrow-g").remove();var ft=b.x.head,ge=b.y.head,fe=b.x.tail+Ie,pe=b.y.tail+Fe,dt=b.x.text+Ie,Pt=b.y.text+Fe,zt=g_.rotationXYMatrix(v,dt,Pt),rr=g_.apply2DTransform(zt),Gr=g_.apply2DTransform2(zt),Br=+T.attr("width"),Er=+T.attr("height"),Rr=dt-.5*Br,pi=Rr+Br,Di=Pt-.5*Er,ni=Di+Er,$i=[[Rr,Di,Rr,ni],[Rr,ni,pi,ni],[pi,ni,pi,Di],[pi,Di,Rr,Di]].map(Gr);if(!$i.reduce(function(Or,Hr){return Or^!!g_.segmentsIntersect(ft,ge,ft+1e6,ge+1e6,Hr[0],Hr[1],Hr[2],Hr[3])},!1)){$i.forEach(function(Or){var Hr=g_.segmentsIntersect(fe,pe,ft,ge,Or[0],Or[1],Or[2],Or[3]);Hr&&(fe=Hr.x,pe=Hr.y)});var Qi=t.arrowwidth,si=t.arrowcolor,Ai=t.arrowside,Ni=k.append("g").style({opacity:Yb.opacity(si)}).classed("annotation-arrow-g",!0),Rt=Ni.append("path").attr("d","M"+fe+","+pe+"L"+ft+","+ge).style("stroke-width",Qi+"px").call(Yb.stroke,Yb.rgb(si));if(dmt(Rt,Ai,t),u.annotationPosition&&Rt.node().parentNode&&!n){var yt=ft,Gt=ge;if(t.standoff){var Wt=Math.sqrt(Math.pow(ft-fe,2)+Math.pow(ge-pe,2));yt+=t.standoff*(fe-ft)/Wt,Gt+=t.standoff*(pe-ge)/Wt}var xr=Ni.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(fe-yt)+","+(pe-Gt),transform:UU(yt,Gt)}).style("stroke-width",Qi+6+"px").call(Yb.stroke,"rgba(0,0,0,0)").call(Yb.fill,"rgba(0,0,0,0)"),Lr,Nr;iE.init({element:xr.node(),gd:e,prepFn:function(){var Or=zg.getTranslate(C);Lr=Or.x,Nr=Or.y,i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0)},moveFn:function(Or,Hr){var jr=rr(Lr,Nr),gi=jr[0]+Or,ki=jr[1]+Hr;C.call(zg.setTranslate,gi,ki),d("x",y_(i,Or,"x",s,t)),d("y",y_(a,Hr,"y",s,t)),t.axref===t.xref&&d("ax",y_(i,Or,"ax",s,t)),t.ayref===t.yref&&d("ay",y_(a,Hr,"ay",s,t)),Ni.attr("transform",UU(Or,Hr)),E.attr({transform:"rotate("+v+","+gi+","+ki+")"})},doneFn:function(){NU.call("_guiRelayout",e,p());var Or=document.querySelector(".js-notes-box-panel");Or&&Or.redraw(Or.selectedObj)}})}}};if(t.showarrow&&xe(0,0),A){var Oe;iE.init({element:C.node(),gd:e,prepFn:function(){Oe=E.attr("transform")},moveFn:function(Ie,Fe){var ft="pointer";if(t.showarrow)t.axref===t.xref?d("ax",y_(i,Ie,"ax",s,t)):d("ax",t.ax+Ie),t.ayref===t.yref?d("ay",y_(a,Fe,"ay",s.w,t)):d("ay",t.ay+Fe),xe(Ie,Fe);else{if(n)return;var ge,fe;if(i)ge=y_(i,Ie,"x",s,t);else{var pe=t._xsize/s.w,dt=t.x+(t._xshift-t.xshift)/s.w-pe/2;ge=iE.align(dt+Ie/s.w,pe,0,1,t.xanchor)}if(a)fe=y_(a,Fe,"y",s,t);else{var Pt=t._ysize/s.h,zt=t.y-(t._yshift+t.yshift)/s.h-Pt/2;fe=iE.align(zt-Fe/s.h,Pt,0,1,t.yanchor)}d("x",ge),d("y",fe),(!i||!a)&&(ft=iE.getCursor(i?.5:ge,a?.5:fe,t.xanchor,t.yanchor))}E.attr({transform:UU(Ie,Fe)+Oe}),GU(C,ft)},clickFn:function(Ie,Fe){t.captureevents&&e.emit("plotly_clickannotation",x(Fe))},doneFn:function(){GU(C),NU.call("_guiRelayout",e,p());var Ie=document.querySelector(".js-notes-box-panel");Ie&&Ie.redraw(Ie.selectedObj)}})}}u.annotationText?j.call(VU.makeEditable,{delegate:C,gd:e}).call(H).on("edit",function(W){t.text=W,this.call(H),d("text",W),i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0),NU.call("_guiRelayout",e,p())}):j.call(H)}});var Vve=Ae((Jlr,Uve)=>{"use strict";var Bve=ei(),vmt=$l(),Ove=Lf().arrayEditor;Uve.exports={hasClickToShow:mmt,onClick:ymt};function mmt(e,t){var r=Nve(e,t);return r.on.length>0||r.explicitOff.length>0}function ymt(e,t){var r=Nve(e,t),n=r.on,i=r.off.concat(r.explicitOff),a={},o=e._fullLayout.annotations,s,u;if(n.length||i.length){for(s=0;s{"use strict";var HU=ei(),hT=jl();Gve.exports=function(t,r,n,i){i("opacity");var a=i("bgcolor"),o=i("bordercolor"),s=hT.opacity(o);i("borderpad");var u=i("borderwidth"),l=i("showarrow");i("text",l?" ":n._dfltTitle.annotation),i("textangle"),HU.coerceFont(i,"font",n.font),i("width"),i("align");var f=i("height");if(f&&i("valign"),l){var c=i("arrowside"),h,d;c.indexOf("end")!==-1&&(h=i("arrowhead"),d=i("arrowsize")),c.indexOf("start")!==-1&&(i("startarrowhead",h),i("startarrowsize",d)),i("arrowcolor",s?r.bordercolor:hT.defaultLine),i("arrowwidth",(s&&u||1)*2),i("standoff"),i("startstandoff")}var p=i("hovertext"),_=n.hoverlabel||{};if(p){var b=i("hoverlabel.bgcolor",_.bgcolor||(hT.opacity(a)?hT.rgb(a):hT.defaultLine)),v=i("hoverlabel.bordercolor",_.bordercolor||hT.contrast(b)),k=HU.extendFlat({},_.font);k.color||(k.color=v),HU.coerceFont(i,"hoverlabel.font",k)}i("captureevents",!!p)}});var Wve=Ae((Qlr,Hve)=>{"use strict";var jU=ei(),Kb=wu(),gmt=Jd(),_mt=WU(),xmt=Ub();Hve.exports=function(t,r){gmt(t,r,{name:"annotations",handleItemDefaults:bmt})};function bmt(e,t,r){function n(E,A){return jU.coerce(e,t,xmt,E,A)}var i=n("visible"),a=n("clicktoshow");if(i||a){_mt(e,t,r,n);for(var o=t.showarrow,s=["x","y"],u=[-10,-30],l={_fullLayout:r},f=0;f<2;f++){var c=s[f],h=Kb.coerceRef(e,t,l,c,"","paper");if(h!=="paper"){var d=Kb.getFromId(l,h);d._annIndices.push(t._index)}if(Kb.coercePosition(t,l,n,h,c,.5),o){var p="a"+c,_=Kb.coerceRef(e,t,l,p,"pixel",["pixel","paper"]);_!=="pixel"&&_!==h&&(_=t[p]="pixel");var b=_==="pixel"?u[f]:.4;Kb.coercePosition(t,l,n,_,p,b)}n(c+"anchor"),n(c+"shift")}if(jU.noneOrAll(e,t,["x","y"]),o&&jU.noneOrAll(e,t,["ax","ay"]),a){var v=n("xclick"),k=n("yclick");t._xclick=v===void 0?t.x:Kb.cleanPosition(v,l,t.xref),t._yclick=k===void 0?t.y:Kb.cleanPosition(k,l,t.yref)}}}});var Zve=Ae((eur,Xve)=>{"use strict";var XU=ei(),Jb=wu(),wmt=mI().draw;Xve.exports=function(t){var r=t._fullLayout,n=XU.filterVisible(r.annotations);if(n.length&&t._fullData.length)return XU.syncOrAsync([wmt,Tmt],t)};function Tmt(e){var t=e._fullLayout;XU.filterVisible(t.annotations).forEach(function(r){var n=Jb.getFromId(e,r.xref),i=Jb.getFromId(e,r.yref),a=Jb.getRefType(r.xref),o=Jb.getRefType(r.yref);r._extremes={},a==="range"&&jve(r,n),o==="range"&&jve(r,i)})}function jve(e,t){var r=t._id,n=r.charAt(0),i=e[n],a=e["a"+n],o=e[n+"ref"],s=e["a"+n+"ref"],u=e["_"+n+"padplus"],l=e["_"+n+"padminus"],f={x:1,y:-1}[n]*e[n+"shift"],c=3*e.arrowsize*e.arrowwidth||0,h=c+f,d=c-f,p=3*e.startarrowsize*e.arrowwidth||0,_=p+f,b=p-f,v;if(s===o){var k=Jb.findExtremes(t,[t.r2c(i)],{ppadplus:h,ppadminus:d}),E=Jb.findExtremes(t,[t.r2c(a)],{ppadplus:Math.max(u,_),ppadminus:Math.max(l,b)});v={min:[k.min[0],E.min[0]],max:[k.max[0],E.max[0]]}}else _=a?_+a:_,b=a?b-a:b,v=Jb.findExtremes(t,[t.r2c(i)],{ppadplus:Math.max(u,h,_),ppadminus:Math.max(l,d,b)});e._extremes[r]=v}});var Kve=Ae((tur,Yve)=>{"use strict";var Amt=ku(),Smt=yL();Yve.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(!(a||o))return;var s=t._fullLayout.annotations,u=r._id.charAt(0),l,f;function c(d){var p=l[d],_=null;a?_=Smt(p,r.range):_=Math.pow(10,p),Amt(_)||(_=null),i(f+d,_)}for(var h=0;h{"use strict";var ZU=mI(),Jve=Vve();$ve.exports={moduleType:"component",name:"annotations",layoutAttributes:Ub(),supplyLayoutDefaults:Wve(),includeBasePlot:B5()("annotations"),calcAutorange:Zve(),draw:ZU.draw,drawOne:ZU.drawOne,drawRaw:ZU.drawRaw,hasClickToShow:Jve.hasClickToShow,onClick:Jve.onClick,convertCoords:Kve()}});var yI=Ae((iur,e0e)=>{"use strict";var Pc=Ub(),Mmt=Sc().overrideAll,Emt=Lf().templatedArray;e0e.exports=Mmt(Emt("annotation",{visible:Pc.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:Pc.xanchor,xshift:Pc.xshift,yanchor:Pc.yanchor,yshift:Pc.yshift,text:Pc.text,textangle:Pc.textangle,font:Pc.font,width:Pc.width,height:Pc.height,opacity:Pc.opacity,align:Pc.align,valign:Pc.valign,bgcolor:Pc.bgcolor,bordercolor:Pc.bordercolor,borderpad:Pc.borderpad,borderwidth:Pc.borderwidth,showarrow:Pc.showarrow,arrowcolor:Pc.arrowcolor,arrowhead:Pc.arrowhead,startarrowhead:Pc.startarrowhead,arrowside:Pc.arrowside,arrowsize:Pc.arrowsize,startarrowsize:Pc.startarrowsize,arrowwidth:Pc.arrowwidth,standoff:Pc.standoff,startstandoff:Pc.startstandoff,hovertext:Pc.hovertext,hoverlabel:Pc.hoverlabel,captureevents:Pc.captureevents}),"calc","from-root")});var r0e=Ae((nur,t0e)=>{"use strict";var YU=ei(),kmt=wu(),Cmt=Jd(),Lmt=WU(),Pmt=yI();t0e.exports=function(t,r,n){Cmt(t,r,{name:"annotations",handleItemDefaults:zmt,fullLayout:n.fullLayout})};function zmt(e,t,r,n){function i(s,u){return YU.coerce(e,t,Pmt,s,u)}function a(s){var u=s+"axis",l={_fullLayout:{}};return l._fullLayout[u]=r[u],kmt.coercePosition(t,l,i,s,s,.5)}var o=i("visible");o&&(Lmt(e,t,n.fullLayout,i),a("x"),a("y"),a("z"),YU.noneOrAll(e,t,["x","y","z"]),t.xref="x",t.yref="y",t.zref="z",i("xanchor"),i("yanchor"),i("xshift"),i("yshift"),t.showarrow&&(t.axref="pixel",t.ayref="pixel",i("ax",-10),i("ay",-30),YU.noneOrAll(e,t,["ax","ay"])))}});var o0e=Ae((aur,a0e)=>{"use strict";var i0e=ei(),n0e=wu();a0e.exports=function(t){for(var r=t.fullSceneLayout,n=r.annotations,i=0;i{"use strict";function KU(e,t){var r=[0,0,0,0],n,i;for(n=0;n<4;++n)for(i=0;i<4;++i)r[i]+=e[4*n+i]*t[n];return r}function Rmt(e,t){var r=KU(e.projection,KU(e.view,KU(e.model,[t[0],t[1],t[2],1])));return r}s0e.exports=Rmt});var u0e=Ae((sur,l0e)=>{"use strict";var Dmt=mI().drawRaw,Fmt=JU(),Bmt=["x","y","z"];l0e.exports=function(t){for(var r=t.fullSceneLayout,n=t.dataScale,i=r.annotations,a=0;a1){s=!0;break}}s?t.fullLayout._infolayer.select(".annotation-"+t.id+'[data-index="'+a+'"]').remove():(o._pdata=Fmt(t.glplot.cameraParams,[r.xaxis.r2l(o.x)*n[0],r.yaxis.r2l(o.y)*n[1],r.zaxis.r2l(o.z)*n[2]]),Dmt(t.graphDiv,o,a,t.id,o._xa,o._ya))}}});var h0e=Ae((lur,c0e)=>{"use strict";var Omt=$l(),f0e=ei();c0e.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:yI()}}},layoutAttributes:yI(),handleDefaults:r0e(),includeBasePlot:qmt,convert:o0e(),draw:u0e()};function qmt(e,t){var r=Omt.subplotsRegistry.gl3d;if(r)for(var n=r.attrRegex,i=Object.keys(e),a=0;a{"use strict";var d0e=Ub(),p0e=gc(),v0e=Zc().line,Nmt=Id().dash,Fm=Su().extendFlat,Umt=Lf().templatedArray,uur=F5(),dT=Gf(),{shapeTexttemplateAttrs:Vmt,templatefallbackAttrs:Gmt}=Ff(),Hmt=ML();m0e.exports=Umt("shape",{visible:Fm({},dT.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:Fm({},dT.legend,{editType:"calc+arraydraw"}),legendgroup:Fm({},dT.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:Fm({},dT.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:p0e({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:Fm({},dT.legendrank,{editType:"calc+arraydraw"}),legendwidth:Fm({},dT.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:Fm({},d0e.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:Fm({},d0e.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:Fm({},v0e.color,{editType:"arraydraw"}),width:Fm({},v0e.width,{editType:"calc+arraydraw"}),dash:Fm({},Nmt,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:Vmt({},{keys:Object.keys(Hmt)}),texttemplatefallback:Gmt({editType:"arraydraw"}),font:p0e({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var _0e=Ae((cur,g0e)=>{"use strict";var aE=ei(),pT=wu(),Wmt=Jd(),jmt=$U(),y0e=c_();g0e.exports=function(t,r){Wmt(t,r,{name:"shapes",handleItemDefaults:Zmt})};function Xmt(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}function Zmt(e,t,r){function n(W,re){return aE.coerce(e,t,jmt,W,re)}t._isShape=!0;var i=n("visible");if(i){var a=n("showlegend");a&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),aE.coerceFont(n,"legendgrouptitle.font"),n("legendrank"));var o=n("path"),s=o?"path":"rect",u=n("type",s),l=u!=="path";l&&delete t.path,n("editable"),n("layer"),n("opacity"),n("fillcolor"),n("fillrule");var f=n("line.width");f&&(n("line.color"),n("line.dash"));for(var c=n("xsizemode"),h=n("ysizemode"),d=["x","y"],p=0;p<2;p++){var _=d[p],b=_+"anchor",v=_==="x"?c:h,k={_fullLayout:r},E,A,L,x=pT.coerceRef(e,t,k,_,void 0,"paper"),C=pT.getRefType(x);if(C==="range"?(E=pT.getFromId(k,x),E._shapeIndices.push(t._index),L=y0e.rangeToShapePosition(E),A=y0e.shapePositionToRange(E),(E.type==="category"||E.type==="multicategory")&&(n(_+"0shift"),n(_+"1shift"))):A=L=aE.identity,l){var M=.25,m=.75,P=_+"0",T=_+"1",B=e[P],F=e[T];e[P]=A(e[P],!0),e[T]=A(e[T],!0),v==="pixel"?(n(P,0),n(T,10)):(pT.coercePosition(t,k,n,x,P,M),pT.coercePosition(t,k,n,x,T,m)),t[P]=L(t[P]),t[T]=L(t[T]),e[P]=B,e[T]=F}if(v==="pixel"){var U=e[b];e[b]=A(e[b],!0),pT.coercePosition(t,k,n,x,b,.25),t[b]=L(t[b]),e[b]=U}}l&&aE.noneOrAll(e,t,["x0","x1","y0","y1"]);var G=u==="line",j,H;if(l&&(j=n("label.texttemplate"),n("label.texttemplatefallback")),j||(H=n("label.text")),H||j){n("label.textangle");var N=n("label.textposition",G?"middle":"middle center");n("label.xanchor"),n("label.yanchor",Xmt(G,N)),n("label.padding"),aE.coerceFont(n,"label.font",r.font)}}}});var w0e=Ae((hur,b0e)=>{"use strict";var Ymt=jl(),x0e=ei();function Kmt(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}b0e.exports=function(t,r,n){n("newshape.visible"),n("newshape.name"),n("newshape.showlegend"),n("newshape.legend"),n("newshape.legendwidth"),n("newshape.legendgroup"),n("newshape.legendgrouptitle.text"),x0e.coerceFont(n,"newshape.legendgrouptitle.font"),n("newshape.legendrank"),n("newshape.drawdirection"),n("newshape.layer"),n("newshape.fillcolor"),n("newshape.fillrule"),n("newshape.opacity");var i=n("newshape.line.width");if(i){var a=(t||{}).plot_bgcolor||"#FFF";n("newshape.line.color",Ymt.contrast(a)),n("newshape.line.dash")}var o=t.dragmode==="drawline",s=n("newshape.label.text"),u=n("newshape.label.texttemplate");if(n("newshape.label.texttemplatefallback"),s||u){n("newshape.label.textangle");var l=n("newshape.label.textposition",o?"middle":"middle center");n("newshape.label.xanchor"),n("newshape.label.yanchor",Kmt(o,l)),n("newshape.label.padding"),x0e.coerceFont(n,"newshape.label.font",r.font)}n("activeshape.fillcolor"),n("activeshape.opacity")}});var E0e=Ae((dur,M0e)=>{"use strict";var QU=ei(),vT=wu(),mT=v5(),A0e=c_();M0e.exports=function(t){var r=t._fullLayout,n=QU.filterVisible(r.shapes);if(!(!n.length||!t._fullData.length))for(var i=0;i0?l+o:o;return{ppad:o,ppadplus:s?c:h,ppadminus:s?h:c}}else return{ppad:o}}function T0e(e,t,r){var n=e._id.charAt(0)==="x"?"x":"y",i=e.type==="category"||e.type==="multicategory",a,o,s=0,u=0,l=i?e.r2c:e.d2c,f=t[n+"sizemode"]==="scaled";if(f?(a=t[n+"0"],o=t[n+"1"],i&&(s=t[n+"0shift"],u=t[n+"1shift"])):(a=t[n+"anchor"],o=t[n+"anchor"]),a!==void 0)return[l(a)+s,l(o)+u];if(t.path){var c=1/0,h=-1/0,d=t.path.match(mT.segmentRE),p,_,b,v,k;for(e.type==="date"&&(l=A0e.decodeDate(l)),p=0;ph&&(h=k)));if(h>=c)return[c,h]}}});var L0e=Ae((pur,C0e)=>{"use strict";var k0e=sz();C0e.exports={moduleType:"component",name:"shapes",layoutAttributes:$U(),supplyLayoutDefaults:_0e(),supplyDrawNewShapeDefaults:w0e(),includeBasePlot:B5()("shapes"),calcAutorange:E0e(),draw:k0e.draw,drawOne:k0e.drawOne}});var eV=Ae((mur,z0e)=>{"use strict";var P0e=dd(),Qmt=Lf().templatedArray,vur=F5();z0e.exports=Qmt("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",P0e.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",P0e.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var R0e=Ae((yur,I0e)=>{"use strict";var eyt=ei(),tV=wu(),tyt=Jd(),ryt=eV(),iyt="images";I0e.exports=function(t,r){var n={name:iyt,handleItemDefaults:nyt};tyt(t,r,n)};function nyt(e,t,r){function n(h,d){return eyt.coerce(e,t,ryt,h,d)}var i=n("source"),a=n("visible",!!i);if(!a)return t;n("layer"),n("xanchor"),n("yanchor"),n("sizex"),n("sizey"),n("sizing"),n("opacity");for(var o={_fullLayout:r},s=["x","y"],u=0;u<2;u++){var l=s[u],f=tV.coerceRef(e,t,o,l,"paper",void 0);if(f!=="paper"){var c=tV.getFromId(o,f);c._imgIndices.push(t._index)}tV.coercePosition(t,o,n,f,l,0)}return t}});var O0e=Ae((gur,B0e)=>{"use strict";var D0e=Jl(),ayt=Mu(),yT=wu(),F0e=Wc(),oyt=jv();B0e.exports=function(t){var r=t._fullLayout,n=[],i={},a=[],o,s;for(s=0;s{"use strict";var q0e=ku(),syt=yL();N0e.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(a||o){for(var s=t._fullLayout.images,u=r._id.charAt(0),l,f,c=0;c{"use strict";V0e.exports={moduleType:"component",name:"images",layoutAttributes:eV(),supplyLayoutDefaults:R0e(),includeBasePlot:B5()("images"),draw:O0e(),convertCoords:U0e()}});var gI=Ae((bur,H0e)=>{"use strict";H0e.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var rV=Ae((wur,j0e)=>{"use strict";var lyt=gc(),uyt=Fh(),fyt=Su().extendFlat,cyt=Sc().overrideAll,hyt=EL(),W0e=Lf().templatedArray,dyt=W0e("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});j0e.exports=cyt(W0e("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:dyt,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:fyt(hyt({editType:"arraydraw"}),{}),font:lyt({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:uyt.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var K0e=Ae((Tur,Y0e)=>{"use strict";var _I=ei(),X0e=Jd(),Z0e=rV(),pyt=gI(),vyt=pyt.name,myt=Z0e.buttons;Y0e.exports=function(t,r){var n={name:vyt,handleItemDefaults:yyt};X0e(t,r,n)};function yyt(e,t,r){function n(o,s){return _I.coerce(e,t,Z0e,o,s)}var i=X0e(e,t,{name:"buttons",handleItemDefaults:gyt}),a=n("visible",i.length>0);a&&(n("active"),n("direction"),n("type"),n("showactive"),n("x"),n("y"),_I.noneOrAll(e,t,["x","y"]),n("xanchor"),n("yanchor"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),_I.coerceFont(n,"font",r.font),n("bgcolor",r.paper_bgcolor),n("bordercolor"),n("borderwidth"))}function gyt(e,t){function r(i,a){return _I.coerce(e,t,myt,i,a)}var n=r("visible",e.method==="skip"||Array.isArray(e.args));n&&(r("method"),r("args"),r("args2"),r("label"),r("execute"))}});var Q0e=Ae((Aur,$0e)=>{"use strict";$0e.exports=eh;var Bm=Jl(),J0e=jl(),gT=Mu(),xI=ei();function eh(e,t,r){this.gd=e,this.container=t,this.id=r,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}eh.barWidth=2;eh.barLength=20;eh.barRadius=2;eh.barPad=1;eh.barColor="#808BA4";eh.prototype.enable=function(t,r,n){var i=this.gd._fullLayout,a=i.width,o=i.height;this.position=t;var s=this.position.l,u=this.position.w,l=this.position.t,f=this.position.h,c=this.position.direction,h=c==="down",d=c==="left",p=c==="right",_=c==="up",b=u,v=f,k,E,A,L;!h&&!d&&!p&&!_&&(this.position.direction="down",h=!0);var x=h||_;x?(k=s,E=k+b,h?(A=l,L=Math.min(A+v,o),v=L-A):(L=l+v,A=Math.max(L-v,0),v=L-A)):(A=l,L=A+v,d?(E=s+b,k=Math.max(E-b,0),b=E-k):(k=s,E=Math.min(k+b,a),b=E-k)),this._box={l:k,t:A,w:b,h:v};var C=u>b,M=eh.barLength+2*eh.barPad,m=eh.barWidth+2*eh.barPad,P=s,T=l+f;T+m>o&&(T=o-m);var B=this.container.selectAll("rect.scrollbar-horizontal").data(C?[0]:[]);B.exit().on(".drag",null).remove(),B.enter().append("rect").classed("scrollbar-horizontal",!0).call(J0e.fill,eh.barColor),C?(this.hbar=B.attr({rx:eh.barRadius,ry:eh.barRadius,x:P,y:T,width:M,height:m}),this._hbarXMin=P+M/2,this._hbarTranslateMax=b-M):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var F=f>v,U=eh.barWidth+2*eh.barPad,G=eh.barLength+2*eh.barPad,j=s+u,H=l;j+U>a&&(j=a-U);var N=this.container.selectAll("rect.scrollbar-vertical").data(F?[0]:[]);N.exit().on(".drag",null).remove(),N.enter().append("rect").classed("scrollbar-vertical",!0).call(J0e.fill,eh.barColor),F?(this.vbar=N.attr({rx:eh.barRadius,ry:eh.barRadius,x:j,y:H,width:U,height:G}),this._vbarYMin=H+G/2,this._vbarTranslateMax=v-G):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var W=this.id,re=k-.5,ae=F?E+U+.5:E+.5,be=A-.5,ze=C?L+m+.5:L+.5,Ce=i._topdefs.selectAll("#"+W).data(C||F?[0]:[]);if(Ce.exit().remove(),Ce.enter().append("clipPath").attr("id",W).append("rect"),C||F?(this._clipRect=Ce.select("rect").attr({x:Math.floor(re),y:Math.floor(be),width:Math.ceil(ae)-Math.floor(re),height:Math.ceil(ze)-Math.floor(be)}),this.container.call(gT.setClipUrl,W,this.gd),this.bg.attr({x:s,y:l,width:u,height:f})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(gT.setClipUrl,null),delete this._clipRect),C||F){var de=Bm.behavior.drag().on("dragstart",function(){Bm.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(de);var te=Bm.behavior.drag().on("dragstart",function(){Bm.event.sourceEvent.preventDefault(),Bm.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));C&&this.hbar.on(".drag",null).call(te),F&&this.vbar.on(".drag",null).call(te)}this.setTranslate(r,n)};eh.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(gT.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};eh.prototype._onBoxDrag=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t-=Bm.event.dx),this.vbar&&(r-=Bm.event.dy),this.setTranslate(t,r)};eh.prototype._onBoxWheel=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t+=Bm.event.deltaY),this.vbar&&(r+=Bm.event.deltaY),this.setTranslate(t,r)};eh.prototype._onBarDrag=function(){var t=this.translateX,r=this.translateY;if(this.hbar){var n=t+this._hbarXMin,i=n+this._hbarTranslateMax,a=xI.constrain(Bm.event.x,n,i),o=(a-n)/(i-n),s=this.position.w-this._box.w;t=o*s}if(this.vbar){var u=r+this._vbarYMin,l=u+this._vbarTranslateMax,f=xI.constrain(Bm.event.y,u,l),c=(f-u)/(l-u),h=this.position.h-this._box.h;r=c*h}this.setTranslate(t,r)};eh.prototype.setTranslate=function(t,r){var n=this.position.w-this._box.w,i=this.position.h-this._box.h;if(t=xI.constrain(t||0,0,n),r=xI.constrain(r||0,0,i),this.translateX=t,this.translateY=r,this.container.call(gT.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-r),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+r-.5)}),this.hbar){var a=t/n;this.hbar.call(gT.setTranslate,t+a*this._hbarTranslateMax,r)}if(this.vbar){var o=r/i;this.vbar.call(gT.setTranslate,t,r+o*this._vbarTranslateMax)}}});var ume=Ae((Sur,lme)=>{"use strict";var _T=Jl(),oE=Cc(),sE=jl(),xT=Mu(),e0=ei(),bI=Xf(),_yt=Lf().arrayEditor,tme=td().LINE_SPACING,Uu=gI(),xyt=Q0e();lme.exports=function(t){var r=t._fullLayout,n=e0.filterVisible(r[Uu.name]);function i(h){oE.autoMargin(t,ome(h))}var a=r._menulayer.selectAll("g."+Uu.containerClassName).data(n.length>0?[0]:[]);if(a.enter().append("g").classed(Uu.containerClassName,!0).style("cursor","pointer"),a.exit().each(function(){_T.select(this).selectAll("g."+Uu.headerGroupClassName).each(i)}).remove(),n.length!==0){var o=a.selectAll("g."+Uu.headerGroupClassName).data(n,byt);o.enter().append("g").classed(Uu.headerGroupClassName,!0);for(var s=e0.ensureSingle(a,"g",Uu.dropdownButtonGroupClassName,function(h){h.style("pointer-events","all")}),u=0;u{"use strict";var kyt=gI();fme.exports={moduleType:"component",name:kyt.name,layoutAttributes:rV(),supplyLayoutDefaults:K0e(),draw:ume()}});var uE=Ae((Eur,hme)=>{"use strict";hme.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var oV=Ae((kur,vme)=>{"use strict";var dme=gc(),Cyt=EL(),Lyt=Su().extendDeepAll,Pyt=Sc().overrideAll,zyt=NM(),pme=Lf().templatedArray,$b=uE(),Iyt=pme("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});vme.exports=Pyt(pme("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:Iyt,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:Lyt(Cyt({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:zyt.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:dme({})},font:dme({}),activebgcolor:{valType:"color",dflt:$b.gripBgActiveColor},bgcolor:{valType:"color",dflt:$b.railBgColor},bordercolor:{valType:"color",dflt:$b.railBorderColor},borderwidth:{valType:"number",min:0,dflt:$b.railBorderWidth},ticklen:{valType:"number",min:0,dflt:$b.tickLength},tickcolor:{valType:"color",dflt:$b.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:$b.minorTickLength}}),"arraydraw","from-root")});var _me=Ae((Cur,gme)=>{"use strict";var bT=ei(),mme=Jd(),yme=oV(),Ryt=uE(),Dyt=Ryt.name,Fyt=yme.steps;gme.exports=function(t,r){mme(t,r,{name:Dyt,handleItemDefaults:Byt})};function Byt(e,t,r){function n(c,h){return bT.coerce(e,t,yme,c,h)}for(var i=mme(e,t,{name:"steps",handleItemDefaults:Oyt}),a=0,o=0;o{"use strict";var Om=Jl(),wI=Cc(),__=jl(),qm=Mu(),t0=ei(),qyt=t0.strTranslate,fE=Xf(),Nyt=Lf().arrayEditor,df=uE(),uV=td(),wme=uV.LINE_SPACING,sV=uV.FROM_TL,lV=uV.FROM_BR;kme.exports=function(t){var r=t._context.staticPlot,n=t._fullLayout,i=Uyt(n,t),a=n._infolayer.selectAll("g."+df.containerClassName).data(i.length>0?[0]:[]);a.enter().append("g").classed(df.containerClassName,!0).style("cursor",r?null:"ew-resize");function o(f){f._commandObserver&&(f._commandObserver.remove(),delete f._commandObserver),wI.autoMargin(t,Tme(f))}if(a.exit().each(function(){Om.select(this).selectAll("g."+df.groupClassName).each(o)}).remove(),i.length!==0){var s=a.selectAll("g."+df.groupClassName).data(i,Vyt);s.enter().append("g").classed(df.groupClassName,!0),s.exit().each(o).remove();for(var u=0;u0&&(s=s.transition().duration(t.transition.duration).ease(t.transition.easing)),s.attr("transform",qyt(o-df.gripWidth*.5,t._dims.currentValueTotalHeight))}}function fV(e,t){var r=e._dims;return r.inputAreaStart+df.stepInset+(r.inputAreaLength-2*df.stepInset)*Math.min(1,Math.max(0,t))}function bme(e,t){var r=e._dims;return Math.min(1,Math.max(0,(t-df.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*df.stepInset-2*r.inputAreaStart)))}function Yyt(e,t,r){var n=r._dims,i=t0.ensureSingle(e,"rect",df.railTouchRectClass,function(a){a.call(Mme,t,e,r).style("pointer-events","all")});i.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,df.tickOffset+r.ticklen+n.labelHeight)}).call(__.fill,r.bgcolor).attr("opacity",0),qm.setTranslate(i,0,n.currentValueTotalHeight)}function Kyt(e,t){var r=t._dims,n=r.inputAreaLength-df.railInset*2,i=t0.ensureSingle(e,"rect",df.railRectClass);i.attr({width:n,height:df.railWidth,rx:df.railRadius,ry:df.railRadius,"shape-rendering":"crispEdges"}).call(__.stroke,t.bordercolor).call(__.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px"),qm.setTranslate(i,df.railInset,(r.inputAreaWidth-df.railWidth)*.5+r.currentValueTotalHeight)}});var Pme=Ae((Pur,Lme)=>{"use strict";var Jyt=uE();Lme.exports={moduleType:"component",name:Jyt.name,layoutAttributes:oV(),supplyLayoutDefaults:_me(),draw:Cme()}});var AI=Ae((zur,Ime)=>{"use strict";var zme=Fh();Ime.exports={bgcolor:{valType:"color",dflt:zme.background,editType:"plot"},bordercolor:{valType:"color",dflt:zme.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var cV=Ae((Iur,Rme)=>{"use strict";Rme.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var SI=Ae((Rur,Dme)=>{"use strict";Dme.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var Ome=Ae(EI=>{"use strict";var $yt=Wc(),Qyt=Xf(),Fme=SI(),egt=td().LINE_SPACING,MI=Fme.name;function Bme(e){var t=e&&e[MI];return t&&t.visible}EI.isVisible=Bme;EI.makeData=function(e){for(var t=$yt.list({_fullLayout:e},"x",!0),r=e.margin,n=[],i=0;i{"use strict";var kI=ei(),qme=Lf(),Nme=Wc(),tgt=AI(),rgt=cV();Ume.exports=function(t,r,n){var i=t[n],a=r[n];if(!(i.rangeslider||r._requestRangeslider[a._id]))return;kI.isPlainObject(i.rangeslider)||(i.rangeslider={});var o=i.rangeslider,s=qme.newContainer(a,"rangeslider");function u(L,x){return kI.coerce(o,s,tgt,L,x)}var l,f;function c(L,x){return kI.coerce(l,f,rgt,L,x)}var h=u("visible");if(h){u("bgcolor",r.plot_bgcolor),u("bordercolor"),u("borderwidth"),u("thickness"),u("autorange",!a.isValidRange(o.range)),u("range");var d=r._subplots;if(d)for(var p=d.cartesian.filter(function(L){return L.substr(0,L.indexOf("y"))===Nme.name2id(n)}).map(function(L){return L.substr(L.indexOf("y"),L.length)}),_=kI.simpleMap(p,Nme.id2name),b=0;b<_.length;b++){var v=_[b];l=o[v]||{},f=qme.newContainer(s,v,"yaxis");var k=r[v],E;l.range&&k.isValidRange(l.range)&&(E="fixed");var A=c("rangemode",E);A!=="match"&&c("range",k.range.slice())}s._input=o}}});var Hme=Ae((Bur,Gme)=>{"use strict";var igt=Wc().list,ngt=Tm().getAutoRange,agt=SI();Gme.exports=function(t){for(var r=igt(t,"x",!0),n=0;n{"use strict";var CI=Jl(),ogt=$l(),sgt=Cc(),dh=ei(),LI=dh.strTranslate,jme=Mu(),x_=jl(),lgt=Eb(),ugt=Ah(),hV=Wc(),fgt=xp(),cgt=Am(),Sf=SI();Xme.exports=function(e){for(var t=e._fullLayout,r=t._rangeSliderData,n=0;n=N.max)j=T[H+1];else if(G=N.pmax)j=T[H+1];else if(G0?e.touches[0].clientX:0}function hgt(e,t,r,n){if(t._context.staticPlot)return;var i=e.select("rect."+Sf.slideBoxClassName).node(),a=e.select("rect."+Sf.grabAreaMinClassName).node(),o=e.select("rect."+Sf.grabAreaMaxClassName).node();function s(){var u=CI.event,l=u.target,f=Wme(u),c=f-e.node().getBoundingClientRect().left,h=n.d2p(r._rl[0]),d=n.d2p(r._rl[1]),p=fgt.coverSlip();this.addEventListener("touchmove",_),this.addEventListener("touchend",b),p.addEventListener("mousemove",_),p.addEventListener("mouseup",b);function _(v){var k=Wme(v),E=+k-f,A,L,x;switch(l){case i:if(x="ew-resize",h+E>r._length||d+E<0)return;A=h+E,L=d+E;break;case a:if(x="col-resize",h+E>r._length)return;A=h+E,L=d;break;case o:if(x="col-resize",d+E<0)return;A=h,L=d+E;break;default:x="ew-resize",A=c,L=c+E;break}if(L{"use strict";var wgt=ei(),Tgt=AI(),Agt=cV(),dV=Ome();Yme.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:wgt.extendFlat({},Tgt,{yaxis:Agt})}}},layoutAttributes:AI(),handleDefaults:Vme(),calcAutorange:Hme(),draw:Zme(),isVisible:dV.isVisible,makeData:dV.makeData,autoMarginOpts:dV.autoMarginOpts}});var PI=Ae((Nur,$me)=>{"use strict";var Sgt=gc(),Jme=Fh(),Mgt=Lf().templatedArray,Egt=Mgt("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});$me.exports={visible:{valType:"boolean",editType:"plot"},buttons:Egt,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:Sgt({editType:"plot"}),bgcolor:{valType:"color",dflt:Jme.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:Jme.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var pV=Ae((Uur,Qme)=>{"use strict";Qme.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var rye=Ae((Vur,tye)=>{"use strict";var zI=ei(),kgt=jl(),Cgt=Lf(),Lgt=Jd(),eye=PI(),vV=pV();tye.exports=function(t,r,n,i,a){var o=t.rangeselector||{},s=Cgt.newContainer(r,"rangeselector");function u(d,p){return zI.coerce(o,s,eye,d,p)}var l=Lgt(o,s,{name:"buttons",handleItemDefaults:Pgt,calendar:a}),f=u("visible",l.length>0);if(f){var c=zgt(r,n,i);u("x",c[0]),u("y",c[1]),zI.noneOrAll(t,r,["x","y"]),u("xanchor"),u("yanchor"),zI.coerceFont(u,"font",n.font);var h=u("bgcolor");u("activecolor",kgt.contrast(h,vV.lightAmount,vV.darkAmount)),u("bordercolor"),u("borderwidth")}};function Pgt(e,t,r,n){var i=n.calendar;function a(u,l){return zI.coerce(e,t,eye.buttons,u,l)}var o=a("visible");if(o){var s=a("step");s!=="all"&&(i&&i!=="gregorian"&&(s==="month"||s==="year")?t.stepmode="backward":a("stepmode"),a("count")),a("label")}}function zgt(e,t,r){for(var n=r.filter(function(s){return t[s].anchor===e._id}),i=0,a=0;a{"use strict";var Igt=L9(),Rgt=ei().titleCase;iye.exports=function(t,r){var n=t._name,i={};if(r.step==="all")i[n+".autorange"]=!0;else{var a=Dgt(t,r);i[n+".range[0]"]=a[0],i[n+".range[1]"]=a[1]}return i};function Dgt(e,t){var r=e.range,n=new Date(e.r2l(r[1])),i=t.step,a=Igt["utc"+Rgt(i)],o=t.count,s;switch(t.stepmode){case"backward":s=e.l2r(+a.offset(n,-o));break;case"todate":var u=a.offset(n,-o);s=e.l2r(+a.ceil(u));break}var l=r[1];return[s,l]}});var hye=Ae((Hur,cye)=>{"use strict";var RI=Jl(),Fgt=$l(),Bgt=Cc(),aye=jl(),fye=Mu(),Ig=ei(),oye=Ig.strTranslate,II=Xf(),Ogt=Wc(),gV=td(),sye=gV.LINE_SPACING,lye=gV.FROM_TL,uye=gV.FROM_BR,yV=pV(),qgt=nye();cye.exports=function(t){var r=t._fullLayout,n=r._infolayer.selectAll(".rangeselector").data(Ngt(t),Ugt);n.enter().append("g").classed("rangeselector",!0),n.exit().remove(),n.style({cursor:"pointer","pointer-events":"all"}),n.each(function(i){var a=RI.select(this),o=i,s=o.rangeselector,u=a.selectAll("g.button").data(Ig.filterVisible(s.buttons));u.enter().append("g").classed("button",!0),u.exit().remove(),u.each(function(l){var f=RI.select(this),c=qgt(o,l);l._isActive=Vgt(o,l,c),f.call(mV,s,l),f.call(Hgt,s,l,t),f.on("click",function(){t._dragged||Fgt.call("_guiRelayout",t,c)}),f.on("mouseover",function(){l._isHovered=!0,f.call(mV,s,l)}),f.on("mouseout",function(){l._isHovered=!1,f.call(mV,s,l)})}),jgt(t,u,s,o._name,a)})};function Ngt(e){for(var t=Ogt.list(e,"x",!0),r=[],n=0;n{"use strict";dye.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:PI()}}},layoutAttributes:PI(),handleDefaults:rye(),draw:hye()}});var zc=Ae(_V=>{"use strict";var vye=Su().extendFlat;_V.attributes=function(e,t){e=e||{},t=t||{};var r={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},n=e.name?e.name+" ":"",i=e.trace?"trace ":"subplot ",a=t.description?" "+t.description:"",o={x:vye({},r,{}),y:vye({},r,{}),editType:e.editType};return e.noGridCell||(o.row={valType:"integer",min:0,dflt:0,editType:e.editType},o.column={valType:"integer",min:0,dflt:0,editType:e.editType}),o};_V.defaults=function(e,t,r,n){var i=n&&n.x||[0,1],a=n&&n.y||[0,1],o=t.grid;if(o){var s=r("domain.column");s!==void 0&&(s{"use strict";var Xgt=ei(),Zgt=a3().counter,Ygt=zc().attributes,mye=dd().idRegex,Kgt=Lf(),xV={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[Zgt("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[mye.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[mye.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:Ygt({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function DI(e,t,r){var n=t[r+"axes"],i=Object.keys((e._splomAxes||{})[r]||{});if(Array.isArray(n))return n;if(i.length)return i}function Jgt(e,t){var r=e.grid||{},n=DI(t,r,"x"),i=DI(t,r,"y");if(!e.grid&&!n&&!i)return;var a=Array.isArray(r.subplots)&&Array.isArray(r.subplots[0]),o=Array.isArray(n),s=Array.isArray(i),u=o&&n!==r.xaxes&&s&&i!==r.yaxes,l,f;a?(l=r.subplots.length,f=r.subplots[0].length):(s&&(l=i.length),o&&(f=n.length));var c=Kgt.newContainer(t,"grid");function h(x,C){return Xgt.coerce(r,c,xV,x,C)}var d=h("rows",l),p=h("columns",f);if(!(d*p>1)){delete t.grid;return}if(!a&&!o&&!s){var _=h("pattern")==="independent";_&&(a=!0)}c._hasSubplotGrid=a;var b=h("roworder"),v=b==="top to bottom",k=a?.2:.1,E=a?.3:.1,A,L;u&&t._splomGridDflt&&(A=t._splomGridDflt.xside,L=t._splomGridDflt.yside),c._domains={x:yye("x",h,k,A,p),y:yye("y",h,E,L,d,v)}}function yye(e,t,r,n,i,a){var o=t(e+"gap",r),s=t("domain."+e);t(e+"side",n);for(var u=new Array(i),l=s[0],f=(s[1]-l)/(i-o),c=f*(1-o),h=0;h{"use strict";xye.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var Tye=Ae((Yur,wye)=>{"use strict";var bye=ku(),Qgt=$l(),e1t=ei(),t1t=Lf(),r1t=wV();wye.exports=function(e,t,r,n){var i="error_"+n.axis,a=t1t.newContainer(t,i),o=e[i]||{};function s(p,_){return e1t.coerce(o,a,r1t,p,_)}var u=o.array!==void 0||o.value!==void 0||o.type==="sqrt",l=s("visible",u);if(l!==!1){var f=s("type","array"in o?"data":"percent"),c=!0;f!=="sqrt"&&(c=s("symmetric",!((f==="data"?"arrayminus":"valueminus")in o))),f==="data"?(s("array"),s("traceref"),c||(s("arrayminus"),s("tracerefminus"))):(f==="percent"||f==="constant")&&(s("value"),c||s("valueminus"));var h="copy_"+n.inherit+"style";if(n.inherit){var d=t["error_"+n.inherit];(d||{}).visible&&s(h,!(o.color||bye(o.thickness)||bye(o.width)))}(!n.inherit||!a[h])&&(s("color",r),s("thickness"),s("width",Qgt.traceIs(t,"gl3d")?0:4))}}});var TV=Ae((Kur,Sye)=>{"use strict";Sye.exports=function(t){var r=t.type,n=t.symmetric;if(r==="data"){var i=t.array||[];if(n)return function(l,f){var c=+i[f];return[c,c]};var a=t.arrayminus||[];return function(l,f){var c=+i[f],h=+a[f];return!isNaN(c)||!isNaN(h)?[h||0,c||0]:[NaN,NaN]}}else{var o=Aye(r,t.value),s=Aye(r,t.valueminus);return n||t.valueminus===void 0?function(l){var f=o(l);return[f,f]}:function(l){return[s(l),o(l)]}}};function Aye(e,t){if(e==="percent")return function(r){return Math.abs(r*t/100)};if(e==="constant")return function(){return Math.abs(t)};if(e==="sqrt")return function(r){return Math.sqrt(Math.abs(r))}}});var kye=Ae((Jur,Eye)=>{"use strict";var AV=ku(),i1t=$l(),SV=wu(),n1t=ei(),a1t=TV();Eye.exports=function(t){for(var r=t.calcdata,n=0;n{"use strict";var Cye=Jl(),b_=ku(),o1t=Mu(),s1t=lc();Lye.exports=function(t,r,n,i){var a,o=n.xaxis,s=n.yaxis,u=i&&i.duration>0,l=t._context.staticPlot;r.each(function(f){var c=f[0].trace,h=c.error_x||{},d=c.error_y||{},p;c.ids&&(p=function(k){return k.id});var _=s1t.hasMarkers(c)&&c.marker.maxdisplayed>0;!d.visible&&!h.visible&&(f=[]);var b=Cye.select(this).selectAll("g.errorbar").data(f,p);if(b.exit().remove(),!!f.length){h.visible||b.selectAll("path.xerror").remove(),d.visible||b.selectAll("path.yerror").remove(),b.style("opacity",1);var v=b.enter().append("g").classed("errorbar",!0);u&&v.style("opacity",0).transition().duration(i.duration).style("opacity",1),o1t.setClipUrl(b,n.layerClipId,t),b.each(function(k){var E=Cye.select(this),A=l1t(k,o,s);if(!(_&&!k.vis)){var L,x=E.select("path.yerror");if(d.visible&&b_(A.x)&&b_(A.yh)&&b_(A.ys)){var C=d.width;L="M"+(A.x-C)+","+A.yh+"h"+2*C+"m-"+C+",0V"+A.ys,A.noYS||(L+="m-"+C+",0h"+2*C),a=!x.size(),a?x=E.append("path").style("vector-effect",l?"none":"non-scaling-stroke").classed("yerror",!0):u&&(x=x.transition().duration(i.duration).ease(i.easing)),x.attr("d",L)}else x.remove();var M=E.select("path.xerror");if(h.visible&&b_(A.y)&&b_(A.xh)&&b_(A.xs)){var m=(h.copy_ystyle?d:h).width;L="M"+A.xh+","+(A.y-m)+"v"+2*m+"m0,-"+m+"H"+A.xs,A.noXS||(L+="m0,-"+m+"v"+2*m),a=!M.size(),a?M=E.append("path").style("vector-effect",l?"none":"non-scaling-stroke").classed("xerror",!0):u&&(M=M.transition().duration(i.duration).ease(i.easing)),M.attr("d",L)}else M.remove()}})}})};function l1t(e,t,r){var n={x:t.c2p(e.x),y:r.c2p(e.y)};return e.yh!==void 0&&(n.yh=r.c2p(e.yh),n.ys=r.c2p(e.ys),b_(n.ys)||(n.noYS=!0,n.ys=r.c2p(e.ys,!0))),e.xh!==void 0&&(n.xh=t.c2p(e.xh),n.xs=t.c2p(e.xs),b_(n.xs)||(n.noXS=!0,n.xs=t.c2p(e.xs,!0))),n}});var Rye=Ae((Qur,Iye)=>{"use strict";var u1t=Jl(),zye=jl();Iye.exports=function(t){t.each(function(r){var n=r[0].trace,i=n.error_y||{},a=n.error_x||{},o=u1t.select(this);o.selectAll("path.yerror").style("stroke-width",i.thickness+"px").call(zye.stroke,i.color),a.copy_ystyle&&(a=i),o.selectAll("path.xerror").style("stroke-width",a.thickness+"px").call(zye.stroke,a.color)})}});var Bye=Ae((efr,Fye)=>{"use strict";var cE=ei(),Dye=Sc().overrideAll,hE=wV(),Qb={error_x:cE.extendFlat({},hE),error_y:cE.extendFlat({},hE)};delete Qb.error_x.copy_zstyle;delete Qb.error_y.copy_zstyle;delete Qb.error_y.copy_ystyle;var dE={error_x:cE.extendFlat({},hE),error_y:cE.extendFlat({},hE),error_z:cE.extendFlat({},hE)};delete dE.error_x.copy_ystyle;delete dE.error_y.copy_ystyle;delete dE.error_z.copy_ystyle;delete dE.error_z.copy_zstyle;Fye.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Qb,bar:Qb,histogram:Qb,scatter3d:Dye(dE,"calc","nested"),scattergl:Dye(Qb,"calc","nested")}},supplyDefaults:Tye(),calc:kye(),makeComputeError:TV(),plot:Pye(),style:Rye(),hoverInfo:f1t};function f1t(e,t,r){(t.error_y||{}).visible&&(r.yerr=e.yh-e.y,t.error_y.symmetric||(r.yerrneg=e.y-e.ys)),(t.error_x||{}).visible&&(r.xerr=e.xh-e.x,t.error_x.symmetric||(r.xerrneg=e.x-e.xs))}});var qye=Ae((tfr,Oye)=>{"use strict";Oye.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var jye=Ae((rfr,Wye)=>{"use strict";var w_=Jl(),MV=cd(),BI=Cc(),Nye=$l(),Rg=wu(),FI=xp(),q0=ei(),Um=q0.strTranslate,Hye=Su().extendFlat,EV=Am(),Nm=Mu(),kV=jl(),c1t=Eb(),h1t=Xf(),d1t=yp().flipScale,p1t=rE(),v1t=lI(),m1t=Dd(),CV=td(),Uye=CV.LINE_SPACING,Vye=CV.FROM_TL,Gye=CV.FROM_BR,Yc=qye().cn;function y1t(e){var t=e._fullLayout,r=t._infolayer.selectAll("g."+Yc.colorbar).data(g1t(e),function(n){return n._id});r.enter().append("g").attr("class",function(n){return n._id}).classed(Yc.colorbar,!0),r.each(function(n){var i=w_.select(this);q0.ensureSingle(i,"rect",Yc.cbbg),q0.ensureSingle(i,"g",Yc.cbfills),q0.ensureSingle(i,"g",Yc.cblines),q0.ensureSingle(i,"g",Yc.cbaxis,function(o){o.classed(Yc.crisp,!0)}),q0.ensureSingle(i,"g",Yc.cbtitleunshift,function(o){o.append("g").classed(Yc.cbtitle,!0)}),q0.ensureSingle(i,"rect",Yc.cboutline);var a=_1t(i,n,e);a&&a.then&&(e._promises||[]).push(a),e._context.edits.colorbarPosition&&x1t(i,n,e)}),r.exit().each(function(n){BI.autoMargin(e,n._id)}).remove(),r.order()}function g1t(e){var t=e._fullLayout,r=e.calcdata,n=[],i,a,o,s;function u(E){return Hye(E,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function l(){typeof s.calc=="function"?s.calc(e,o,i):(i._fillgradient=a.reversescale?d1t(a.colorscale):a.colorscale,i._zrange=[a[s.min],a[s.max]])}for(var f=0;f1){var qe=Math.pow(10,Math.floor(Math.log(ye)/Math.LN10));Ue*=qe*q0.roundUp(ye/qe,[2,5,10]),(Math.abs(B.start)/B.size+1e-6)%1<2e-6&&(Ee.tick0=0)}Ee.dtick=Ue}Ee.domain=n?[te+p/A.h,te+W-p/A.h]:[te+d/A.w,te+W-d/A.w],Ee.setScale(),e.attr("transform",Um(Math.round(A.l),Math.round(A.t)));var ce=e.select("."+Yc.cbtitleunshift).attr("transform",Um(-Math.round(A.l),-Math.round(A.t))),Je=Ee.ticklabelposition,nt=Ee.title.font.size,gt=e.select("."+Yc.cbaxis),Nt,at=0,Ke=0;function Ct(Et,Te){var ot={propContainer:Ee,propName:t._propPrefix+"title.text",traceIndex:t._traceIndex,_meta:t._meta,placeholder:E._dfltTitle.colorbar,containerGroup:e.select("."+Yc.cbtitle)},Tt=Et.charAt(0)==="h"?Et.substr(1):"h"+Et;e.selectAll("."+Tt+",."+Tt+"-math-group").remove(),c1t.draw(r,Et,Hye(ot,Te||{}))}function wt(){if(n&&Me||!n&&!Me){var Et,Te;M==="top"&&(Et=d+A.l+re*_,Te=p+A.t+ae*(1-te-W)+3+nt*.75),M==="bottom"&&(Et=d+A.l+re*_,Te=p+A.t+ae*(1-te)-3-nt*.25),M==="right"&&(Te=p+A.t+ae*b+3+nt*.75,Et=d+A.l+re*te),Ct(Ee._id+"title",{attributes:{x:Et,y:Te,"text-anchor":n?"start":"middle"}})}}function St(){if(n&&!Me||!n&&Me){var Et=Ee.position||0,Te=Ee._offset+Ee._length/2,ot,Tt;if(M==="right")Tt=Te,ot=A.l+re*Et+10+nt*(Ee.showticklabels?1:.5);else if(ot=Te,M==="bottom"&&(Tt=A.t+ae*Et+10+(Je.indexOf("inside")===-1?Ee.tickfont.size:0)+(Ee.ticks!=="inside"&&t.ticklen||0)),M==="top"){var vt=C.text.split("
").length;Tt=A.t+ae*Et+10-j-Uye*nt*vt}Ct((n?"h":"v")+Ee._id+"title",{avoid:{selection:w_.select(r).selectAll("g."+Ee._id+"tick"),side:M,offsetTop:n?0:A.t,offsetLeft:n?A.l:0,maxShift:n?E.width:E.height},attributes:{x:ot,y:Tt,"text-anchor":"middle"},transform:{rotate:n?-90:0,offset:0}})}}function Dt(){if(!n&&!Me||n&&Me){var Et=e.select("."+Yc.cbtitle),Te=Et.select("text"),ot=[-u/2,u/2],Tt=Et.select(".h"+Ee._id+"title-math-group").node(),vt=15.6;Te.node()&&(vt=parseInt(Te.node().style.fontSize,10)*Uye);var Ye;if(Tt?(Ye=Nm.bBox(Tt),Ke=Ye.width,at=Ye.height,at>vt&&(ot[1]-=(at-vt)/2)):Te.node()&&!Te.classed(Yc.jsPlaceholder)&&(Ye=Nm.bBox(Te.node()),Ke=Ye.width,at=Ye.height),n){if(at){if(at+=5,M==="top")Ee.domain[1]-=at/A.h,ot[1]*=-1;else{Ee.domain[0]+=at/A.h;var He=h1t.lineCount(Te);ot[1]+=(1-He)*vt}Et.attr("transform",Um(ot[0],ot[1])),Ee.setScale()}}else Ke&&(M==="right"&&(Ee.domain[0]+=(Ke+nt/2)/A.w),Et.attr("transform",Um(ot[0],ot[1])),Ee.setScale())}e.selectAll("."+Yc.cbfills+",."+Yc.cblines).attr("transform",n?Um(0,Math.round(A.h*(1-Ee.domain[1]))):Um(Math.round(A.w*Ee.domain[0]),0)),gt.attr("transform",n?Um(0,Math.round(-A.t)):Um(Math.round(-A.l),0));var it=e.select("."+Yc.cbfills).selectAll("rect."+Yc.cbfill).attr("style","").data(U);it.enter().append("rect").classed(Yc.cbfill,!0).attr("style",""),it.exit().remove();var et=m.map(Ee.c2p).map(Math.round).sort(function(yr,Ut){return yr-Ut});it.each(function(yr,Ut){var Re=[Ut===0?m[0]:(U[Ut]+U[Ut-1])/2,Ut===U.length-1?m[1]:(U[Ut]+U[Ut+1])/2].map(Ee.c2p).map(Math.round);n&&(Re[1]=q0.constrain(Re[1]+(Re[1]>Re[0])?1:-1,et[0],et[1]));var xe=w_.select(this).attr(n?"x":"y",be).attr(n?"y":"x",w_.min(Re)).attr(n?"width":"height",Math.max(j,2)).attr(n?"height":"width",Math.max(w_.max(Re)-w_.min(Re),2));if(t._fillgradient)Nm.gradient(xe,r,t._id,n?"vertical":"horizontalreversed",t._fillgradient,"fill");else{var Oe=T(yr).replace("e-","");xe.attr("fill",MV(Oe).toHexString())}});var It=e.select("."+Yc.cblines).selectAll("path."+Yc.cbline).data(x.color&&x.width?G:[]);It.enter().append("path").classed(Yc.cbline,!0),It.exit().remove(),It.each(function(yr){var Ut=be,Re=Math.round(Ee.c2p(yr))+x.width/2%1;w_.select(this).attr("d","M"+(n?Ut+","+Re:Re+","+Ut)+(n?"h":"v")+j).call(Nm.lineGroupStyle,x.width,P(yr),x.dash)}),gt.selectAll("g."+Ee._id+"tick,path").remove();var Yt=be+j+(u||0)/2-(t.ticks==="outside"?1:0),cr=Rg.calcTicks(Ee),_r=Rg.getTickSigns(Ee)[2];return Rg.drawTicks(r,Ee,{vals:Ee.ticks==="inside"?Rg.clipEnds(Ee,cr):cr,layer:gt,path:Rg.makeTickPath(Ee,Yt,_r),transFn:Rg.makeTransTickFn(Ee)}),Rg.drawLabels(r,Ee,{vals:cr,layer:gt,transFn:Rg.makeTransTickLabelFn(Ee),labelFns:Rg.makeLabelFns(Ee,Yt)})}function Zt(){var Et,Te=j+u/2;Je.indexOf("inside")===-1&&(Et=Nm.bBox(gt.node()),Te+=n?Et.width:Et.height),Nt=ce.select("text");var ot=0,Tt=n&&M==="top",vt=!n&&M==="right",Ye=0;if(Nt.node()&&!Nt.classed(Yc.jsPlaceholder)){var He,it=ce.select(".h"+Ee._id+"title-math-group").node();it&&(n&&Me||!n&&!Me)?(Et=Nm.bBox(it),ot=Et.width,He=Et.height):(Et=Nm.bBox(ce.node()),ot=Et.right-A.l-(n?be:ke),He=Et.bottom-A.t-(n?ke:be),!n&&M==="top"&&(Te+=Et.height,Ye=Et.height)),vt&&(Nt.attr("transform",Um(ot/2+nt/2,0)),ot*=2),Te=Math.max(Te,n?ot:He)}var et=(n?d:p)*2+Te+l+u/2,It=0;!n&&C.text&&h==="bottom"&&b<=0&&(It=et/2,et+=It,Ye+=It),E._hColorbarMoveTitle=It,E._hColorbarMoveCBTitle=Ye;var Yt=l+u,cr=(n?be:ke)-Yt/2-(n?d:0),_r=(n?ke:be)-(n?N:p+Ye-It);e.select("."+Yc.cbbg).attr("x",cr).attr("y",_r).attr(n?"width":"height",Math.max(et-It,2)).attr(n?"height":"width",Math.max(N+Yt,2)).call(kV.fill,f).call(kV.stroke,t.bordercolor).style("stroke-width",l);var yr=vt?Math.max(ot-10,0):0;e.selectAll("."+Yc.cboutline).attr("x",(n?be:ke+d)+yr).attr("y",(n?ke+p-N:be)+(Tt?at:0)).attr(n?"width":"height",Math.max(j,2)).attr(n?"height":"width",Math.max(N-(n?2*p+at:2*d+yr),2)).call(kV.stroke,t.outlinecolor).style({fill:"none","stroke-width":u});var Ut=n?ze*et:0,Re=n?0:(1-Ce)*et-Ye;if(Ut=k?A.l-Ut:-Ut,Re=v?A.t-Re:-Re,e.attr("transform",Um(Ut,Re)),!n&&(l||MV(f).getAlpha()&&!MV.equals(E.paper_bgcolor,f))){var xe=gt.selectAll("text"),Oe=xe[0].length,Ie=e.select("."+Yc.cbbg).node(),Fe=Nm.bBox(Ie),ft=Nm.getTranslate(e),ge=2;xe.each(function(Rr,pi){var Di=0,ni=Oe-1;if(pi===Di||pi===ni){var $i=Nm.bBox(this),Qi=Nm.getTranslate(this),si;if(pi===ni){var Ai=$i.right+Qi.x,Ni=Fe.right+ft.x+ke-l-ge+_;si=Ni-Ai,si>0&&(si=0)}else if(pi===Di){var Rt=$i.left+Qi.x,yt=Fe.left+ft.x+ke+l+ge;si=yt-Rt,si<0&&(si=0)}si&&(Oe<3?this.setAttribute("transform","translate("+si+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var fe={},pe=Vye[c],dt=Gye[c],Pt=Vye[h],zt=Gye[h],rr=et-j;n?(a==="pixels"?(fe.y=b,fe.t=N*Pt,fe.b=N*zt):(fe.t=fe.b=0,fe.yt=b+i*Pt,fe.yb=b-i*zt),s==="pixels"?(fe.x=_,fe.l=et*pe,fe.r=et*dt):(fe.l=rr*pe,fe.r=rr*dt,fe.xl=_-o*pe,fe.xr=_+o*dt)):(a==="pixels"?(fe.x=_,fe.l=N*pe,fe.r=N*dt):(fe.l=fe.r=0,fe.xl=_+i*pe,fe.xr=_-i*dt),s==="pixels"?(fe.y=1-b,fe.t=et*Pt,fe.b=et*zt):(fe.t=rr*Pt,fe.b=rr*zt,fe.yt=b-o*Pt,fe.yb=b+o*zt));var Gr=t.y<.5?"b":"t",Br=t.x<.5?"l":"r";r._fullLayout._reservedMargin[t._id]={};var Er={r:E.width-cr-Ut,l:cr+fe.r,b:E.height-_r-Re,t:_r+fe.b};k&&v?BI.autoMargin(r,t._id,fe):k?r._fullLayout._reservedMargin[t._id][Gr]=Er[Gr]:v||n?r._fullLayout._reservedMargin[t._id][Br]=Er[Br]:r._fullLayout._reservedMargin[t._id][Gr]=Er[Gr]}return q0.syncOrAsync([BI.previousPromises,wt,Dt,St,BI.previousPromises,Zt],r)}function x1t(e,t,r){var n=t.orientation==="v",i=r._fullLayout,a=i._size,o,s,u;FI.init({element:e.node(),gd:r,prepFn:function(){o=e.attr("transform"),EV(e)},moveFn:function(l,f){e.attr("transform",o+Um(l,f)),s=FI.align((n?t._uFrac:t._vFrac)+l/a.w,n?t._thickFrac:t._lenFrac,0,1,t.xanchor),u=FI.align((n?t._vFrac:1-t._uFrac)-f/a.h,n?t._lenFrac:t._thickFrac,0,1,t.yanchor);var c=FI.getCursor(s,u,t.xanchor,t.yanchor);EV(e,c)},doneFn:function(){if(EV(e),s!==void 0&&u!==void 0){var l={};l[t._propPrefix+"x"]=s,l[t._propPrefix+"y"]=u,t._traceIndex!==void 0?Nye.call("_guiRestyle",r,l,t._traceIndex):Nye.call("_guiRelayout",r,l)}}})}function b1t(e,t,r){var n=t._levels,i=[],a=[],o,s,u=n.end+n.size/100,l=n.size,f=1.001*r[0]-.001*r[1],c=1.001*r[1]-.001*r[0];for(s=0;s<1e5&&(o=n.start+s*l,!(l>0?o>=u:o<=u));s++)o>f&&o0?o>=u:o<=u));s++)o>r[0]&&o{"use strict";Xye.exports={moduleType:"component",name:"colorbar",attributes:tP(),supplyDefaults:Nq(),draw:jye().draw,hasColorbar:Iq()}});var Kye=Ae((nfr,Yye)=>{"use strict";Yye.exports={moduleType:"component",name:"legend",layoutAttributes:RN(),supplyLayoutDefaults:BN(),draw:YN(),style:WN()}});var $ye=Ae((afr,Jye)=>{"use strict";Jye.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var ege=Ae((ofr,Qye)=>{"use strict";Qye.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var PV=Ae((sfr,nge)=>{"use strict";var T1t=$l(),ige=ei(),LV=ige.extendFlat,tge=ige.extendDeep;function rge(e){var t;switch(e){case"themes__thumb":t={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":t={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:t={}}return t}function A1t(e){var t=["xaxis","yaxis","zaxis"];return t.indexOf(e.slice(0,5))>-1}nge.exports=function(t,r){var n,i=t.data,a=t.layout,o=tge([],i),s=tge({},a,rge(r.tileClass)),u=t._context||{};if(r.width&&(s.width=r.width),r.height&&(s.height=r.height),r.tileClass==="thumbnail"||r.tileClass==="themes__thumb"){s.annotations=[];var l=Object.keys(s);for(n=0;n{"use strict";var S1t=vb().EventEmitter,M1t=$l(),E1t=ei(),age=Pg(),k1t=PV(),C1t=Hz(),L1t=Wz();function P1t(e,t){var r=new S1t,n=k1t(e,{format:"png"}),i=n.gd;i.style.position="absolute",i.style.left="-5000px",document.body.appendChild(i);function a(){var s=age.getDelay(i._fullLayout);setTimeout(function(){var u=C1t(i),l=document.createElement("canvas");l.id=E1t.randstr(),r=L1t({format:t.format,width:i._fullLayout.width,height:i._fullLayout.height,canvas:l,emitter:r,svg:u}),r.clean=function(){i&&document.body.removeChild(i)}},s)}var o=age.getRedrawFunc(i);return M1t.call("_doPlot",i,n.data,n.layout,n.config).then(o).then(a).catch(function(s){r.emit("error",s)}),r}oge.exports=P1t});var fge=Ae((ufr,uge)=>{"use strict";var lge=Pg(),z1t={getDelay:lge.getDelay,getRedrawFunc:lge.getRedrawFunc,clone:PV(),toSVG:Hz(),svgToImg:Wz(),toImage:sge(),downloadImage:hU()};uge.exports=z1t});var hge=Ae(Dg=>{"use strict";Dg.version=lL().version;See();dne();var I1t=$l(),pE=Dg.register=I1t.register,IV=Rde(),cge=Object.keys(IV);for(OI=0;OI{"use strict";dge.exports=hge()});var e2=Ae((hfr,vge)=>{"use strict";vge.exports={TEXTPAD:3,eventDataKeys:["value","label"]}});var Ly=Ae((dfr,xge)=>{"use strict";var sh=Zc(),mge=jc().axisHoverFormat,{hovertemplateAttrs:R1t,texttemplateAttrs:D1t,templatefallbackAttrs:yge}=Ff(),_ge=nc(),F1t=gc(),gge=e2(),B1t=Id().pattern,t2=Su().extendFlat,RV=F1t({editType:"calc",arrayOk:!0,colorEditType:"style"}),O1t=sh.marker,q1t=O1t.line,N1t=t2({},q1t.width,{dflt:0}),U1t=t2({width:N1t,editType:"calc"},_ge("marker.line")),V1t=t2({line:U1t,editType:"calc"},_ge("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:B1t,cornerradius:{valType:"any",editType:"calc"}});xge.exports={x:sh.x,x0:sh.x0,dx:sh.dx,y:sh.y,y0:sh.y0,dy:sh.dy,xperiod:sh.xperiod,yperiod:sh.yperiod,xperiod0:sh.xperiod0,yperiod0:sh.yperiod0,xperiodalignment:sh.xperiodalignment,yperiodalignment:sh.yperiodalignment,xhoverformat:mge("x"),yhoverformat:mge("y"),text:sh.text,texttemplate:D1t({editType:"plot"},{keys:gge.eventDataKeys}),texttemplatefallback:yge({editType:"plot"}),hovertext:sh.hovertext,hovertemplate:R1t({},{keys:gge.eventDataKeys}),hovertemplatefallback:yge(),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:t2({},RV,{}),insidetextfont:t2({},RV,{}),outsidetextfont:t2({},RV,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:t2({},sh.cliponaxis,{}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc"},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc"},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc"},marker:V1t,offsetgroup:sh.offsetgroup,alignmentgroup:sh.alignmentgroup,selected:{marker:{opacity:sh.selected.marker.opacity,color:sh.selected.marker.color,editType:"style"},textfont:sh.selected.textfont,editType:"style"},unselected:{marker:{opacity:sh.unselected.marker.opacity,color:sh.unselected.marker.color,editType:"style"},textfont:sh.unselected.textfont,editType:"style"},zorder:sh.zorder}});var NI=Ae((pfr,bge)=>{"use strict";bge.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}});var UI=Ae((vfr,Age)=>{"use strict";var G1t=jl(),wge=yp().hasColorscale,Tge=rd(),H1t=ei().coercePattern;Age.exports=function(t,r,n,i,a){var o=n("marker.color",i),s=wge(t,"marker");s&&Tge(t,r,a,n,{prefix:"marker.",cLetter:"c"}),n("marker.line.color",G1t.defaultLine),wge(t,"marker.line")&&Tge(t,r,a,n,{prefix:"marker.line.",cLetter:"c"}),n("marker.line.width"),n("marker.opacity"),H1t(n,"marker.pattern",o,s),n("selected.marker.color"),n("unselected.marker.color")}});var r0=Ae((mfr,Lge)=>{"use strict";var Sge=ku(),TT=ei(),Mge=jl(),W1t=$l(),j1t=Q3(),X1t=Pm(),Z1t=UI(),Y1t=Hb(),Ege=Ly(),VI=TT.coerceFont;function K1t(e,t,r,n){function i(l,f){return TT.coerce(e,t,Ege,l,f)}var a=j1t(e,t,n,i);if(!a){t.visible=!1;return}X1t(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder"),i("orientation",t.x&&!t.y?"h":"v"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var o=i("textposition");Cge(e,t,n,i,o,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),Z1t(e,t,i,r,n);var s=(t.marker.line||{}).color,u=W1t.getComponentMethod("errorbars","supplyDefaults");u(e,t,s||Mge.defaultLine,{axis:"y"}),u(e,t,s||Mge.defaultLine,{axis:"x",inherit:"y"}),TT.coerceSelectionMarkerOpacity(t,i)}function J1t(e,t){var r,n;function i(s,u){return TT.coerce(n._input,n,Ege,s,u)}for(var a=0;a=0)return e}else if(typeof e=="string"&&(e=e.trim(),e.slice(-1)==="%"&&Sge(e.slice(0,-1))&&(e=+e.slice(0,-1),e>=0)))return e+"%"}function Cge(e,t,r,n,i,a){a=a||{};var o=a.moduleHasSelected!==!1,s=a.moduleHasUnselected!==!1,u=a.moduleHasConstrain!==!1,l=a.moduleHasCliponaxis!==!1,f=a.moduleHasTextangle!==!1,c=a.moduleHasInsideanchor!==!1,h=!!a.hasPathbar,d=Array.isArray(i)||i==="auto",p=d||i==="inside",_=d||i==="outside";if(p||_){var b=VI(n,"textfont",r.font),v=TT.extendFlat({},b),k=e.textfont&&e.textfont.color,E=!k;if(E&&delete v.color,VI(n,"insidetextfont",v),h){var A=TT.extendFlat({},b);E&&delete A.color,VI(n,"pathbar.textfont",A)}_&&VI(n,"outsidetextfont",b),o&&n("selected.textfont.color"),s&&n("unselected.textfont.color"),u&&n("constraintext"),l&&n("cliponaxis"),f&&n("textangle"),n("texttemplate"),n("texttemplatefallback")}p&&c&&n("insidetextanchor")}Lge.exports={supplyDefaults:K1t,crossTraceDefaults:J1t,handleText:Cge,validateCornerradius:kge}});var DV=Ae((yfr,Pge)=>{"use strict";var $1t=$l(),Q1t=wu(),e_t=ei(),t_t=NI(),r_t=r0().validateCornerradius;Pge.exports=function(e,t,r){function n(_,b){return e_t.coerce(e,t,t_t,_,b)}for(var i=!1,a=!1,o=!1,s={},u=n("barmode"),l=u==="group",f=0;f0&&!s[h]&&(o=!0),s[h]=!0),c.visible&&c.type==="histogram"){var d=Q1t.getFromId({_fullLayout:t},c[c.orientation==="v"?"xaxis":"yaxis"]);d.type!=="category"&&(a=!0)}}if(!i){delete t.barmode;return}u!=="overlay"&&n("barnorm"),n("bargap",a&&!o?0:.2),n("bargroupgap");var p=n("barcornerradius");t.barcornerradius=r_t(p)}});var vE=Ae((gfr,zge)=>{"use strict";var AT=ei();zge.exports=function(t,r){for(var n=0;n{"use strict";var Ige=wu(),Rge=Im(),Dge=yp().hasColorscale,Fge=gp(),i_t=vE(),n_t=F0();Bge.exports=function(t,r){var n=Ige.getFromId(t,r.xaxis||"x"),i=Ige.getFromId(t,r.yaxis||"y"),a,o,s,u,l,f,c={msUTC:!!(r.base||r.base===0)};r.orientation==="h"?(a=n.makeCalcdata(r,"x",c),s=i.makeCalcdata(r,"y"),u=Rge(r,i,"y",s),l=!!r.yperiodalignment,f="y"):(a=i.makeCalcdata(r,"y",c),s=n.makeCalcdata(r,"x"),u=Rge(r,n,"x",s),l=!!r.xperiodalignment,f="x"),o=u.vals;for(var h=Math.min(o.length,a.length),d=new Array(h),p=0;p{"use strict";var a_t=Jl(),o_t=ei();function s_t(e,t,r){var n=e._fullLayout,i=n["_"+r+"Text_minsize"];if(i){var a=n.uniformtext.mode==="hide",o;switch(r){case"funnelarea":case"pie":case"sunburst":o="g.slice";break;case"treemap":case"icicle":o="g.slice, g.pathbar";break;default:o="g.points > g.point"}t.selectAll(o).each(function(s){var u=s.transform;if(u){u.scale=a&&u.hide?0:i/u.fontSize;var l=a_t.select(this).select("text");o_t.setTransormAndDisplay(l,u)}})}}function l_t(e,t,r){if(r.uniformtext.mode){var n=qge(e),i=r.uniformtext.minsize,a=t.scale*t.fontSize;t.hide=a{"use strict";var f_t=ku(),c_t=cd(),Uge=ei().isArrayOrTypedArray;r2.coerceString=function(e,t,r){if(typeof t=="string"){if(t||!e.noBlank)return t}else if((typeof t=="number"||t===!0)&&!e.strict)return String(t);return r!==void 0?r:e.dflt};r2.coerceNumber=function(e,t,r){if(f_t(t)){t=+t;var n=e.min,i=e.max,a=n!==void 0&&ti;if(!a)return t}return r!==void 0?r:e.dflt};r2.coerceColor=function(e,t,r){return c_t(t).isValid()?t:r!==void 0?r:e.dflt};r2.coerceEnumerated=function(e,t,r){return e.coerceNumber&&(t=+t),e.values.indexOf(t)!==-1?t:r!==void 0?r:e.dflt};r2.getValue=function(e,t){var r;return Uge(e)?t{"use strict";var mE=Jl(),h_t=jl(),yE=Mu(),Vge=ei(),Gge=$l(),Hge=Tp().resizeText,FV=Ly(),d_t=FV.textfont,p_t=FV.insidetextfont,v_t=FV.outsidetextfont,tp=GI();function m_t(e){var t=mE.select(e).selectAll('g[class^="barlayer"]').selectAll("g.trace");Hge(e,t,"bar");var r=t.size(),n=e._fullLayout;t.style("opacity",function(i){return i[0].trace.opacity}).each(function(i){(n.barmode==="stack"&&r>1||n.bargap===0&&n.bargroupgap===0&&!i[0].trace.marker.line.width)&&mE.select(this).attr("shape-rendering","crispEdges")}),t.selectAll("g.points").each(function(i){var a=mE.select(this),o=i[0].trace;Wge(a,o,e)}),Gge.getComponentMethod("errorbars","style")(t)}function Wge(e,t,r){yE.pointStyle(e.selectAll("path"),t,r),jge(e,t,r)}function jge(e,t,r){e.selectAll("text").each(function(n){var i=mE.select(this),a=Vge.ensureUniformFontSize(r,Xge(i,n,t,r));yE.font(i,a)})}function y_t(e,t,r){var n=t[0].trace;n.selectedpoints?g_t(r,n,e):(Wge(r,n,e),Gge.getComponentMethod("errorbars","style")(r))}function g_t(e,t,r){yE.selectedPointStyle(e.selectAll("path"),t),__t(e.selectAll("text"),t,r)}function __t(e,t,r){e.each(function(n){var i=mE.select(this),a;if(n.selected){a=Vge.ensureUniformFontSize(r,Xge(i,n,t,r));var o=t.selected.textfont&&t.selected.textfont.color;o&&(a.color=o),yE.font(i,a)}else yE.selectedTextStyle(i,t)})}function Xge(e,t,r,n){var i=n._fullLayout.font,a=r.textfont;if(e.classed("bartext-inside")){var o=Jge(t,r);a=Yge(r,t.i,i,o)}else e.classed("bartext-outside")&&(a=Kge(r,t.i,i));return a}function Zge(e,t,r){return BV(d_t,e.textfont,t,r)}function Yge(e,t,r,n){var i=Zge(e,t,r),a=e._input.textfont===void 0||e._input.textfont.color===void 0||Array.isArray(e.textfont.color)&&e.textfont.color[t]===void 0;return a&&(i={color:h_t.contrast(n),family:i.family,size:i.size,weight:i.weight,style:i.style,variant:i.variant,textcase:i.textcase,lineposition:i.lineposition,shadow:i.shadow}),BV(p_t,e.insidetextfont,t,i)}function Kge(e,t,r){var n=Zge(e,t,r);return BV(v_t,e.outsidetextfont,t,n)}function BV(e,t,r,n){t=t||{};var i=tp.getValue(t.family,r),a=tp.getValue(t.size,r),o=tp.getValue(t.color,r),s=tp.getValue(t.weight,r),u=tp.getValue(t.style,r),l=tp.getValue(t.variant,r),f=tp.getValue(t.textcase,r),c=tp.getValue(t.lineposition,r),h=tp.getValue(t.shadow,r);return{family:tp.coerceString(e.family,i,n.family),size:tp.coerceNumber(e.size,a,n.size),color:tp.coerceColor(e.color,o,n.color),weight:tp.coerceString(e.weight,s,n.weight),style:tp.coerceString(e.style,u,n.style),variant:tp.coerceString(e.variant,l,n.variant),textcase:tp.coerceString(e.variant,f,n.textcase),lineposition:tp.coerceString(e.variant,c,n.lineposition),shadow:tp.coerceString(e.variant,h,n.shadow)}}function Jge(e,t){return t.type==="waterfall"?t[e.dir].marker.color:e.mcc||e.mc||t.marker.color}$ge.exports={style:m_t,styleTextPoints:jge,styleOnSelect:y_t,getInsideTextFont:Yge,getOutsideTextFont:Kge,getBarColor:Jge,resizeText:Hge}});var n2=Ae((Tfr,o1e)=>{"use strict";var HI=Jl(),WI=ku(),Bd=ei(),x_t=Xf(),b_t=jl(),T_=Mu(),w_t=$l(),jI=wu().tickText,Qge=Tp(),T_t=Qge.recordMinTextSize,A_t=Qge.clearMinTextSize,OV=N0(),ST=GI(),S_t=e2(),e1e=Ly(),M_t=e1e.text,E_t=e1e.textposition,k_t=iv().appendArrayPointValue,Gp=S_t.TEXTPAD;function C_t(e){return e.id}function L_t(e){if(e.ids)return C_t}function qV(e){return(e>0)-(e<0)}function Py(e,t){return e0}function z_t(e,t,r,n,i,a){var o=t.xaxis,s=t.yaxis,u=e._fullLayout,l=e._context.staticPlot;i||(i={mode:u.barmode,norm:u.barmode,gap:u.bargap,groupgap:u.bargroupgap},A_t("bar",u));var f=Bd.makeTraceGroups(n,r,"trace bars").each(function(c){var h=HI.select(this),d=c[0].trace,p=c[0].t,_=d.type==="waterfall",b=d.type==="funnel",v=d.type==="histogram",k=d.type==="bar",E=k||b,A=0;_&&d.connector.visible&&d.connector.mode==="between"&&(A=d.connector.line.width/2);var L=d.orientation==="h",x=r1e(i),C=Bd.ensureSingle(h,"g","points"),M=L_t(d),m=C.selectAll("g.point").data(Bd.identity,M);m.enter().append("g").classed("point",!0),m.exit().remove(),m.each(function(T,B){var F=HI.select(this),U=P_t(T,o,s,L),G=U[0][0],j=U[0][1],H=U[1][0],N=U[1][1],W=(L?j-G:N-H)===0;W&&E&&ST.getLineWidth(d,T)&&(W=!1),W||(W=!WI(G)||!WI(j)||!WI(H)||!WI(N)),T.isBlank=W,W&&(L?j=G:N=H),A&&!W&&(L?(G-=Py(G,j)*A,j+=Py(G,j)*A):(H-=Py(H,N)*A,N+=Py(H,N)*A));var re,ae;if(d.type==="waterfall"){if(!W){var be=d[T.dir].marker;re=be.line.width,ae=be.color}}else re=ST.getLineWidth(d,T),ae=T.mc||d.marker.color;function ze(Te){var ot=HI.round(re/2%1,2);return i.gap===0&&i.groupgap===0?HI.round(Math.round(Te)-ot,2):Te}function Ce(Te,ot,Tt){return Tt&&Te===ot?Te:Math.abs(Te-ot)>=2?ze(Te):Te>ot?Math.ceil(Te):Math.floor(Te)}var de=b_t.opacity(ae),te=de<1||re>.01?ze:Ce;e._context.staticPlot||(G=te(G,j,L),j=te(j,G,L),H=te(H,N,!L),N=te(N,H,!L));var ke=L?o.c2p:s.c2p,Ee;T.s0>0?Ee=T._sMax:T.s0<0?Ee=T._sMin:Ee=T.s1>0?T._sMax:T._sMin;function Me(Te,ot){if(!Te)return 0;var Tt=Math.abs(L?N-H:j-G),vt=Math.abs(L?j-G:N-H),Ye=te(Math.abs(ke(Ee,!0)-ke(0,!0))),He=T.hasB?Math.min(Tt/2,vt/2):Math.min(Tt/2,Ye),it;if(ot==="%"){var et=Math.min(50,Te);it=Tt*(et/100)}else it=Te;return te(Math.max(Math.min(it,He),0))}var Ue=k||v?Me(p.cornerradiusvalue,p.cornerradiusform):0,De,ye,qe="M"+G+","+H+"V"+N+"H"+j+"V"+H+"Z",ce=0;if(Ue&&T.s){var Je=qV(T.s0)===0||qV(T.s)===qV(T.s0)?T.s1:T.s0;if(ce=te(T.hasB?0:Math.abs(ke(Ee,!0)-ke(Je,!0))),ce0?Math.sqrt(ce*(2*Ue-ce)):0,Ct=nt>0?Math.max:Math.min;De="M"+G+","+H+"V"+(N-at*gt)+"H"+Ct(j-(Ue-ce)*nt,G)+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+j+","+(N-Ue*gt-Ke)+"V"+(H+Ue*gt+Ke)+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+Ct(j-(Ue-ce)*nt,G)+","+(H+at*gt)+"Z"}else if(T.hasB)De="M"+(G+Ue*nt)+","+H+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+G+","+(H+Ue*gt)+"V"+(N-Ue*gt)+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+(G+Ue*nt)+","+N+"H"+(j-Ue*nt)+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+j+","+(N-Ue*gt)+"V"+(H+Ue*gt)+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+(j-Ue*nt)+","+H+"Z";else{ye=Math.abs(N-H)+ce;var wt=ye0?Math.sqrt(ce*(2*Ue-ce)):0,Dt=gt>0?Math.max:Math.min;De="M"+(G+wt*nt)+","+H+"V"+Dt(N-(Ue-ce)*gt,H)+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+(G+Ue*nt-St)+","+N+"H"+(j-Ue*nt+St)+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+(j-wt*nt)+","+Dt(N-(Ue-ce)*gt,H)+"V"+H+"Z"}}else De=qe}else De=qe;var Zt=t1e(Bd.ensureSingle(F,"path"),u,i,a);if(Zt.style("vector-effect",l?"none":"non-scaling-stroke").attr("d",isNaN((j-G)*(N-H))||W&&e._context.staticPlot?"M0,0Z":De).call(T_.setClipUrl,t.layerClipId,e),!u.uniformtext.mode&&x){var Et=T_.makePointStyleFns(d);T_.singlePointStyle(T,Zt,d,Et,e)}I_t(e,t,F,c,B,G,j,H,N,Ue,ce,i,a),t.layerClipId&&T_.hideOutsideRangePoint(T,F.select("text"),o,s,d.xcalendar,d.ycalendar)});var P=d.cliponaxis===!1;T_.setClipUrl(h,P?null:t.layerClipId,e)});w_t.getComponentMethod("errorbars","plot")(e,f,t,i)}function I_t(e,t,r,n,i,a,o,s,u,l,f,c,h){var d=t.xaxis,p=t.yaxis,_=e._fullLayout,b;function v(ye,qe,ce){var Je=Bd.ensureSingle(ye,"text").text(qe).attr({class:"bartext bartext-"+b,"text-anchor":"middle","data-notex":1}).call(T_.font,ce).call(x_t.convertToTspans,e);return Je}var k=n[0].trace,E=k.orientation==="h",A=F_t(_,n,i,d,p);b=B_t(k,i);var L=c.mode==="stack"||c.mode==="relative",x=n[i],C=!L||x._outmost,M=x.hasB,m=l&&l-f>Gp;if(!A||b==="none"||(x.isBlank||a===o||s===u)&&(b==="auto"||b==="inside")){r.select("text").remove();return}var P=_.font,T=OV.getBarColor(n[i],k),B=OV.getInsideTextFont(k,i,P,T),F=OV.getOutsideTextFont(k,i,P),U=k.insidetextanchor||"end",G=r.datum();E?d.type==="log"&&G.s0<=0&&(d.range[0]0&&ze>0,te;m?M?te=i2(N-2*l,W,be,ze,E)||i2(N,W-2*l,be,ze,E):E?te=i2(N-(l-f),W,be,ze,E)||i2(N,W-2*(l-f),be,ze,E):te=i2(N,W-(l-f),be,ze,E)||i2(N-2*(l-f),W,be,ze,E):te=i2(N,W,be,ze,E),de&&te?b="inside":(b="outside",re.remove(),re=null)}else b="inside";if(!re){Ce=Bd.ensureUniformFontSize(e,b==="outside"?F:B),re=v(r,A,Ce);var ke=re.attr("transform");if(re.attr("transform",""),ae=T_.bBox(re.node()),be=ae.width,ze=ae.height,re.attr("transform",ke),be<=0||ze<=0){re.remove();return}}var Ee=k.textangle,Me,Ue;b==="outside"?(Ue=k.constraintext==="both"||k.constraintext==="outside",Me=D_t(a,o,s,u,ae,{isHorizontal:E,constrained:Ue,angle:Ee})):(Ue=k.constraintext==="both"||k.constraintext==="inside",Me=a1e(a,o,s,u,ae,{isHorizontal:E,constrained:Ue,angle:Ee,anchor:U,hasB:M,r:l,overhead:f})),Me.fontSize=Ce.size,T_t(k.type==="histogram"?"bar":k.type,Me,_),x.transform=Me;var De=t1e(re,_,c,h);Bd.setTransormAndDisplay(De,Me)}function i2(e,t,r,n,i){if(e<0||t<0)return!1;var a=r<=e&&n<=t,o=r<=t&&n<=e,s=i?e>=r*(t/n):t>=n*(e/r);return a||o||s}function i1e(e){return e==="auto"?0:e}function n1e(e,t){var r=Math.PI/180*t,n=Math.abs(Math.sin(r)),i=Math.abs(Math.cos(r));return{x:e.width*i+e.height*n,y:e.width*n+e.height*i}}function a1e(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,u=a.angle||0,l=a.anchor,f=l==="end",c=l==="start",h=a.leftToRight||0,d=(h+1)/2,p=1-d,_=a.hasB,b=a.r,v=a.overhead,k=i.width,E=i.height,A=Math.abs(t-e),L=Math.abs(n-r),x=A>2*Gp&&L>2*Gp?Gp:0;A-=2*x,L-=2*x;var C=i1e(u);u==="auto"&&!(k<=A&&E<=L)&&(k>A||E>L)&&(!(k>L||E>A)||kGp){var T=R_t(e,t,r,n,M,b,v,o,_);m=T.scale,P=T.pad}else m=1,s&&(m=Math.min(1,A/M.x,L/M.y)),P=0;var B=i.left*p+i.right*d,F=(i.top+i.bottom)/2,U=(e+Gp)*p+(t-Gp)*d,G=(r+n)/2,j=0,H=0;if(c||f){var N=(o?M.x:M.y)/2;b&&(f||_)&&(x+=P);var W=o?Py(e,t):Py(r,n);o?c?(U=e+W*x,j=-W*N):(U=t-W*x,j=W*N):c?(G=r+W*x,H=-W*N):(G=n-W*x,H=W*N)}return{textX:B,textY:F,targetX:U,targetY:G,anchorX:j,anchorY:H,scale:m,rotate:C}}function R_t(e,t,r,n,i,a,o,s,u){var l=Math.max(0,Math.abs(t-e)-2*Gp),f=Math.max(0,Math.abs(n-r)-2*Gp),c=a-Gp,h=o?c-Math.sqrt(c*c-(c-o)*(c-o)):c,d=u?c*2:s?c-o:2*h,p=u?c*2:s?2*h:c-o,_,b,v,k,E;return i.y/i.x>=f/(l-d)?k=f/i.y:i.y/i.x<=(f-p)/l?k=l/i.x:!u&&s?(_=i.x*i.x+i.y*i.y/4,b=-2*i.x*(l-c)-i.y*(f/2-c),v=(l-c)*(l-c)+(f/2-c)*(f/2-c)-c*c,k=(-b+Math.sqrt(b*b-4*_*v))/(2*_)):u?(_=(i.x*i.x+i.y*i.y)/4,b=-i.x*(l/2-c)-i.y*(f/2-c),v=(l/2-c)*(l/2-c)+(f/2-c)*(f/2-c)-c*c,k=(-b+Math.sqrt(b*b-4*_*v))/(2*_)):(_=i.x*i.x/4+i.y*i.y,b=-i.x*(l/2-c)-2*i.y*(f-c),v=(l/2-c)*(l/2-c)+(f-c)*(f-c)-c*c,k=(-b+Math.sqrt(b*b-4*_*v))/(2*_)),k=Math.min(1,k),s?E=Math.max(0,c-Math.sqrt(Math.max(0,c*c-(c-(f-i.y*k)/2)*(c-(f-i.y*k)/2)))-o):E=Math.max(0,c-Math.sqrt(Math.max(0,c*c-(c-(l-i.x*k)/2)*(c-(l-i.x*k)/2)))-o),{scale:k,pad:E}}function D_t(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,u=a.angle||0,l=i.width,f=i.height,c=Math.abs(t-e),h=Math.abs(n-r),d;o?d=h>2*Gp?Gp:0:d=c>2*Gp?Gp:0;var p=1;s&&(p=o?Math.min(1,h/f):Math.min(1,c/l));var _=i1e(u),b=n1e(i,_),v=(o?b.x:b.y)/2,k=(i.left+i.right)/2,E=(i.top+i.bottom)/2,A=(e+t)/2,L=(r+n)/2,x=0,C=0,M=o?Py(t,e):Py(r,n);return o?(A=t-M*d,x=M*v):(L=n+M*d,C=-M*v),{textX:k,textY:E,targetX:A,targetY:L,anchorX:x,anchorY:C,scale:p,rotate:_}}function F_t(e,t,r,n,i){var a=t[0].trace,o=a.texttemplate,s;return o?s=O_t(e,t,r,n,i):a.textinfo?s=q_t(t,r,n,i):s=ST.getValue(a.text,r),ST.coerceString(M_t,s)}function B_t(e,t){var r=ST.getValue(e.textposition,t);return ST.coerceEnumerated(E_t,r)}function O_t(e,t,r,n,i){var a=t[0].trace,o=Bd.castOption(a,r,"texttemplate");if(!o)return"";var s=a.type==="histogram",u=a.type==="waterfall",l=a.type==="funnel",f=a.orientation==="h",c,h,d,p;f?(c="y",h=i,d="x",p=n):(c="x",h=n,d="y",p=i);function _(x){return jI(h,h.c2l(x),!0).text}function b(x){return jI(p,p.c2l(x),!0).text}var v=t[r],k={};k.label=v.p,k.labelLabel=k[c+"Label"]=_(v.p);var E=Bd.castOption(a,v.i,"text");(E===0||E)&&(k.text=E),k.value=v.s,k.valueLabel=k[d+"Label"]=b(v.s);var A={};k_t(A,a,v.i),(s||A.x===void 0)&&(A.x=f?k.value:k.label),(s||A.y===void 0)&&(A.y=f?k.label:k.value),(s||A.xLabel===void 0)&&(A.xLabel=f?k.valueLabel:k.labelLabel),(s||A.yLabel===void 0)&&(A.yLabel=f?k.labelLabel:k.valueLabel),u&&(k.delta=+v.rawS||v.s,k.deltaLabel=b(k.delta),k.final=v.v,k.finalLabel=b(k.final),k.initial=k.final-k.delta,k.initialLabel=b(k.initial)),l&&(k.value=v.s,k.valueLabel=b(k.value),k.percentInitial=v.begR,k.percentInitialLabel=Bd.formatPercent(v.begR),k.percentPrevious=v.difR,k.percentPreviousLabel=Bd.formatPercent(v.difR),k.percentTotal=v.sumR,k.percenTotalLabel=Bd.formatPercent(v.sumR));var L=Bd.castOption(a,v.i,"customdata");return L&&(k.customdata=L),Bd.texttemplateString({data:[A,k,a._meta],fallback:a.texttemplatefallback,labels:k,locale:e._d3locale,template:o})}function q_t(e,t,r,n){var i=e[0].trace,a=i.orientation==="h",o=i.type==="waterfall",s=i.type==="funnel";function u(L){var x=a?n:r;return jI(x,L,!0).text}function l(L){var x=a?r:n;return jI(x,+L,!0).text}var f=i.textinfo,c=e[t],h=f.split("+"),d=[],p,_=function(L){return h.indexOf(L)!==-1};if(_("label")&&d.push(u(e[t].p)),_("text")&&(p=Bd.castOption(i,c.i,"text"),(p===0||p)&&d.push(p)),o){var b=+c.rawS||c.s,v=c.v,k=v-b;_("initial")&&d.push(l(k)),_("delta")&&d.push(l(b)),_("final")&&d.push(l(v))}if(s){_("value")&&d.push(l(c.s));var E=0;_("percent initial")&&E++,_("percent previous")&&E++,_("percent total")&&E++;var A=E>1;_("percent initial")&&(p=Bd.formatPercent(c.begR),A&&(p+=" of initial"),d.push(p)),_("percent previous")&&(p=Bd.formatPercent(c.difR),A&&(p+=" of previous"),d.push(p)),_("percent total")&&(p=Bd.formatPercent(c.sumR),A&&(p+=" of total"),d.push(p))}return d.join("
")}o1e.exports={plot:z_t,toMoveInsideBar:a1e}});var MT=Ae((Afr,f1e)=>{"use strict";var gE=Xc(),N_t=$l(),s1e=jl(),U_t=ei().fillText,V_t=GI().getLineWidth,NV=wu().hoverLabelText,G_t=rf().BADNUM;function H_t(e,t,r,n,i){var a=l1e(e,t,r,n,i);if(a){var o=a.cd,s=o[0].trace,u=o[a.index];return a.color=u1e(s,u),N_t.getComponentMethod("errorbars","hoverInfo")(u,s,a),[a]}}function l1e(e,t,r,n,i){var a=e.cd,o=a[0].trace,s=a[0].t,u=n==="closest",l=o.type==="waterfall",f=e.maxHoverDistance,c=e.maxSpikeDistance,h,d,p,_,b,v,k;o.orientation==="h"?(h=r,d=t,p="y",_="x",b=G,v=B):(h=t,d=r,p="x",_="y",v=G,b=B);var E=o[p+"period"],A=u||E;function L(te){return C(te,-1)}function x(te){return C(te,1)}function C(te,ke){var Ee=te.w;return te[p]+ke*Ee/2}function M(te){return te[p+"End"]-te[p+"Start"]}var m=u?L:E?function(te){return te.p-M(te)/2}:function(te){return Math.min(L(te),te.p-s.bardelta/2)},P=u?x:E?function(te){return te.p+M(te)/2}:function(te){return Math.max(x(te),te.p+s.bardelta/2)};function T(te,ke,Ee){return i.finiteRange&&(Ee=0),gE.inbox(te-h,ke-h,Ee+Math.min(1,Math.abs(ke-te)/k)-1)}function B(te){return T(m(te),P(te),f)}function F(te){return T(L(te),x(te),c)}function U(te){var ke=te[_];if(l){var Ee=Math.abs(te.rawS)||0;d>0?ke+=Ee:d<0&&(ke-=Ee)}return ke}function G(te){var ke=d,Ee=te.b,Me=U(te);return gE.inbox(Ee-ke,Me-ke,f+(Me-ke)/(Me-Ee)-1)}function j(te){var ke=d,Ee=te.b,Me=U(te);return gE.inbox(Ee-ke,Me-ke,c+(Me-ke)/(Me-Ee)-1)}var H=e[p+"a"],N=e[_+"a"];k=Math.abs(H.r2c(H.range[1])-H.r2c(H.range[0]));function W(te){return(b(te)+v(te))/2}var re=gE.getDistanceFunction(n,b,v,W);if(gE.getClosest(a,re,e),e.index!==!1&&a[e.index].p!==G_t){A||(m=function(te){return Math.min(L(te),te.p-s.bargroupwidth/2)},P=function(te){return Math.max(x(te),te.p+s.bargroupwidth/2)});var ae=e.index,be=a[ae],ze=o.base?be.b+be.s:be.s;e[_+"0"]=e[_+"1"]=N.c2p(be[_],!0),e[_+"LabelVal"]=ze;var Ce=s.extents[s.extents.round(be.p)];e[p+"0"]=H.c2p(u?m(be):Ce[0],!0),e[p+"1"]=H.c2p(u?P(be):Ce[1],!0);var de=be.orig_p!==void 0;return e[p+"LabelVal"]=de?be.orig_p:be.p,e.labelLabel=NV(H,e[p+"LabelVal"],o[p+"hoverformat"]),e.valueLabel=NV(N,e[_+"LabelVal"],o[_+"hoverformat"]),e.baseLabel=NV(N,be.b,o[_+"hoverformat"]),e.spikeDistance=(j(be)+F(be))/2,e[p+"Spike"]=H.c2p(be.p,!0),U_t(be,o,e),e.hovertemplate=o.hovertemplate,e}}function u1e(e,t){var r=t.mcc||e.marker.color,n=t.mlcc||e.marker.line.color,i=V_t(e,t);if(s1e.opacity(r))return r;if(s1e.opacity(n)&&i)return n}f1e.exports={hoverPoints:H_t,hoverOnBars:l1e,getTraceColor:u1e}});var h1e=Ae((Sfr,c1e)=>{"use strict";c1e.exports=function(t,r,n){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),n.orientation==="h"?(t.label=t.y,t.value=t.x):(t.label=t.x,t.value=t.y),t}});var ET=Ae((Mfr,d1e)=>{"use strict";d1e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=n[0].trace,s=o.type==="funnel",u=o.orientation==="h",l=[],f;if(r===!1)for(f=0;f{"use strict";p1e.exports={attributes:Ly(),layoutAttributes:NI(),supplyDefaults:r0().supplyDefaults,crossTraceDefaults:r0().crossTraceDefaults,supplyLayoutDefaults:DV(),calc:Oge(),crossTraceCalc:Wb().crossTraceCalc,colorbar:ep(),arraysToCalcdata:vE(),plot:n2().plot,style:N0().style,styleOnSelect:N0().styleOnSelect,hoverPoints:MT().hoverPoints,eventData:h1e(),selectPoints:ET(),moduleType:"trace",name:"bar",basePlotModule:Ah(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}});var y1e=Ae((kfr,m1e)=>{"use strict";m1e.exports=v1e()});var _E=Ae((Cfr,b1e)=>{"use strict";var j_t=km(),U0=Zc(),g1e=Ly(),X_t=Fh(),_1e=jc().axisHoverFormat,{hovertemplateAttrs:Z_t,templatefallbackAttrs:Y_t}=Ff(),Fg=Su().extendFlat,kT=U0.marker,x1e=kT.line;b1e.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:U0.xperiod,yperiod:U0.yperiod,xperiod0:U0.xperiod0,yperiod0:U0.yperiod0,xperiodalignment:U0.xperiodalignment,yperiodalignment:U0.yperiodalignment,xhoverformat:_1e("x"),yhoverformat:_1e("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:Fg({},kT.symbol,{arrayOk:!1,editType:"plot"}),opacity:Fg({},kT.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:Fg({},kT.angle,{arrayOk:!1,editType:"calc"}),size:Fg({},kT.size,{arrayOk:!1,editType:"calc"}),color:Fg({},kT.color,{arrayOk:!1,editType:"style"}),line:{color:Fg({},x1e.color,{arrayOk:!1,dflt:X_t.defaultLine,editType:"style"}),width:Fg({},x1e.width,{arrayOk:!1,dflt:0,editType:"style"}),outliercolor:{valType:"color",editType:"style"},outlierwidth:{valType:"number",min:0,dflt:1,editType:"style"},editType:"style"},editType:"plot"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:j_t(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},showwhiskers:{valType:"boolean",editType:"calc"},offsetgroup:g1e.offsetgroup,alignmentgroup:g1e.alignmentgroup,selected:{marker:U0.selected.marker,editType:"style"},unselected:{marker:U0.unselected.marker,editType:"style"},text:Fg({},U0.text,{}),hovertext:Fg({},U0.hovertext,{}),hovertemplate:Z_t({}),hovertemplatefallback:Y_t(),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"},zorder:U0.zorder}});var xE=Ae((Lfr,w1e)=>{"use strict";w1e.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"}}});var wE=Ae((Pfr,M1e)=>{"use strict";var V0=ei(),K_t=$l(),J_t=jl(),$_t=Pm(),Q_t=Hb(),T1e=z3(),bE=_E();function ext(e,t,r,n){function i(p,_){return V0.coerce(e,t,bE,p,_)}if(A1e(e,t,i,n),t.visible!==!1){$_t(e,t,n,i),i("xhoverformat"),i("yhoverformat");var a=t._hasPreCompStats;a&&(i("lowerfence"),i("upperfence")),i("line.color",(e.marker||{}).color||r),i("line.width"),i("fillcolor",J_t.addOpacity(t.line.color,.5));var o=!1;if(a){var s=i("mean"),u=i("sd");s&&s.length&&(o=!0,u&&u.length&&(o="sd"))}i("whiskerwidth");var l=i("sizemode"),f;l==="quartiles"&&(f=i("boxmean",o)),i("showwhiskers",l==="quartiles"),(l==="sd"||f==="sd")&&i("sdmultiple"),i("width"),i("quartilemethod");var c=!1;if(a){var h=i("notchspan");h&&h.length&&(c=!0)}else V0.validate(e.notchwidth,bE.notchwidth)&&(c=!0);var d=i("notched",c);d&&i("notchwidth"),S1e(e,t,i,{prefix:"box"}),i("zorder")}}function A1e(e,t,r,n){function i(P){var T=0;return P&&P.length&&(T+=1,V0.isArrayOrTypedArray(P[0])&&P[0].length&&(T+=1)),T}function a(P){return V0.validate(e[P],bE[P])}var o=r("y"),s=r("x"),u;if(t.type==="box"){var l=r("q1"),f=r("median"),c=r("q3");t._hasPreCompStats=l&&l.length&&f&&f.length&&c&&c.length,u=Math.min(V0.minRowLength(l),V0.minRowLength(f),V0.minRowLength(c))}var h=i(o),d=i(s),p=h&&V0.minRowLength(o),_=d&&V0.minRowLength(s),b=n.calendar,v={autotypenumbers:n.autotypenumbers},k,E;if(t._hasPreCompStats)switch(String(d)+String(h)){case"00":var A=a("x0")||a("dx"),L=a("y0")||a("dy");L&&!A?k="h":k="v",E=u;break;case"10":k="v",E=Math.min(u,_);break;case"20":k="h",E=Math.min(u,s.length);break;case"01":k="h",E=Math.min(u,p);break;case"02":k="v",E=Math.min(u,o.length);break;case"12":k="v",E=Math.min(u,_,o.length);break;case"21":k="h",E=Math.min(u,s.length,p);break;case"11":E=0;break;case"22":var x=!1,C;for(C=0;C0?(k="v",d>0?E=Math.min(_,p):E=Math.min(p)):d>0?(k="h",E=Math.min(_)):E=0;if(!E){t.visible=!1;return}t._length=E;var M=r("orientation",k);t._hasPreCompStats?M==="v"&&d===0?(r("x0",0),r("dx",1)):M==="h"&&h===0&&(r("y0",0),r("dy",1)):M==="v"&&d===0?r("x0"):M==="h"&&h===0&&r("y0");var m=K_t.getComponentMethod("calendars","handleTraceDefaults");m(e,t,["x","y"],n)}function S1e(e,t,r,n){var i=n.prefix,a=V0.coerce2(e,t,bE,"marker.outliercolor"),o=r("marker.line.outliercolor"),s="outliers";t._hasPreCompStats?s="all":(a||o)&&(s="suspectedoutliers");var u=r(i+"points",s);u?(r("jitter",u==="all"?.3:0),r("pointpos",u==="all"?-1.5:0),r("marker.symbol"),r("marker.opacity"),r("marker.size"),r("marker.angle"),r("marker.color",t.line.color),r("marker.line.color"),r("marker.line.width"),u==="suspectedoutliers"&&(r("marker.line.outliercolor",t.marker.color),r("marker.line.outlierwidth")),r("selected.marker.color"),r("unselected.marker.color"),r("selected.marker.size"),r("unselected.marker.size"),r("text"),r("hovertext")):delete t.marker;var l=r("hoveron");(l==="all"||l.indexOf("points")!==-1)&&(r("hovertemplate"),r("hovertemplatefallback")),V0.coerceSelectionMarkerOpacity(t,r)}function txt(e,t){var r,n;function i(u){return V0.coerce(n._input,n,bE,u)}for(var a=0;a{"use strict";var rxt=$l(),ixt=ei(),nxt=xE();function E1e(e,t,r,n,i){for(var a=i+"Layout",o=!1,s=0;s{"use strict";var VV=ku(),ZI=wu(),oxt=Im(),Sh=ei(),i0=rf().BADNUM,Bg=Sh._;B1e.exports=function(t,r){var n=t._fullLayout,i=ZI.getFromId(t,r.xaxis||"x"),a=ZI.getFromId(t,r.yaxis||"y"),o=[],s=r.type==="violin"?"_numViolins":"_numBoxes",u,l,f,c,h,d,p;r.orientation==="h"?(f=i,c="x",h=a,d="y",p=!!r.yperiodalignment):(f=a,c="y",h=i,d="x",p=!!r.xperiodalignment);var _=sxt(r,d,h,n[s]),b=_[0],v=_[1],k=Sh.distinctVals(b,h),E=k.vals,A=k.minDiff/2,L,x,C,M,m,P,T=(r.boxpoints||r.points)==="all"?Sh.identity:function(Nt){return Nt.vL.uf};if(r._hasPreCompStats){var B=r[c],F=function(Nt){return f.d2c((r[Nt]||[])[u])},U=1/0,G=-1/0;for(u=0;u=L.q1&&L.q3>=L.med){var H=F("lowerfence");L.lf=H!==i0&&H<=L.q1?H:z1e(L,C,M);var N=F("upperfence");L.uf=N!==i0&&N>=L.q3?N:I1e(L,C,M);var W=F("mean");L.mean=W!==i0?W:M?Sh.mean(C,M):(L.q1+L.q3)/2;var re=F("sd");L.sd=W!==i0&&re>=0?re:M?Sh.stdev(C,M,L.mean):L.q3-L.q1,L.lo=R1e(L),L.uo=D1e(L);var ae=F("notchspan");ae=ae!==i0&&ae>0?ae:F1e(L,M),L.ln=L.med-ae,L.un=L.med+ae;var be=L.lf,ze=L.uf;r.boxpoints&&C.length&&(be=Math.min(be,C[0]),ze=Math.max(ze,C[M-1])),r.notched&&(be=Math.min(be,L.ln),ze=Math.max(ze,L.un)),L.min=be,L.max=ze}else{Sh.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+L.q1,"median = "+L.med,"q3 = "+L.q3].join(` -`));var Ce;L.med!==i0?Ce=L.med:L.q1!==i0?L.q3!==i0?Ce=(L.q1+L.q3)/2:Ce=L.q1:L.q3!==i0?Ce=L.q3:Ce=0,L.med=Ce,L.q1=L.q3=Ce,L.lf=L.uf=Ce,L.mean=L.sd=Ce,L.ln=L.un=Ce,L.min=L.max=Ce}U=Math.min(U,L.min),G=Math.max(G,L.max),L.pts2=x.filter(T),o.push(L)}}r._extremes[f._id]=ZI.findExtremes(f,[U,G],{padded:!0})}else{var de=f.makeCalcdata(r,c),te=lxt(E,A),ke=E.length,Ee=uxt(ke);for(u=0;u=0&&Me0){if(L={},L.pos=L[d]=E[u],x=L.pts=Ee[u].sort(L1e),C=L[c]=x.map(P1e),M=C.length,L.min=C[0],L.max=C[M-1],L.mean=Sh.mean(C,M),L.sd=Sh.stdev(C,M,L.mean)*r.sdmultiple,L.med=Sh.interp(C,.5),M%2&&(qe||ce)){var Je,nt;qe?(Je=C.slice(0,M/2),nt=C.slice(M/2+1)):ce&&(Je=C.slice(0,M/2+1),nt=C.slice(M/2)),L.q1=Sh.interp(Je,.5),L.q3=Sh.interp(nt,.5)}else L.q1=Sh.interp(C,.25),L.q3=Sh.interp(C,.75);L.lf=z1e(L,C,M),L.uf=I1e(L,C,M),L.lo=R1e(L),L.uo=D1e(L);var gt=F1e(L,M);L.ln=L.med-gt,L.un=L.med+gt,Ue=Math.min(Ue,L.ln),De=Math.max(De,L.un),L.pts2=x.filter(T),o.push(L)}r.notched&&Sh.isTypedArray(de)&&(de=Array.from(de)),r._extremes[f._id]=ZI.findExtremes(f,r.notched?de.concat([Ue,De]):de,{padded:!0})}return fxt(o,r),o.length>0?(o[0].t={num:n[s],dPos:A,posLetter:d,valLetter:c,labels:{med:Bg(t,"median:"),min:Bg(t,"min:"),q1:Bg(t,"q1:"),q3:Bg(t,"q3:"),max:Bg(t,"max:"),mean:r.boxmean==="sd"||r.sizemode==="sd"?Bg(t,"mean \xB1 \u03C3:").replace("\u03C3",r.sdmultiple===1?"\u03C3":r.sdmultiple+"\u03C3"):Bg(t,"mean:"),lf:Bg(t,"lower fence:"),uf:Bg(t,"upper fence:")}},n[s]++,o):[{t:{empty:!0}}]};function sxt(e,t,r,n){var i=t in e,a=t+"0"in e,o="d"+t in e;if(i||a&&o){var s=r.makeCalcdata(e,t),u=oxt(e,r,t,s).vals;return[u,s]}var l;a?l=e[t+"0"]:"name"in e&&(r.type==="category"||VV(e.name)&&["linear","log"].indexOf(r.type)!==-1||Sh.isDateTime(e.name)&&r.type==="date")?l=e.name:l=n;for(var f=r.type==="multicategory"?r.r2c_just_indices(l):r.d2c(l,0,e[t+"calendar"]),c=e._length,h=new Array(c),d=0;d{"use strict";var O1e=wu(),cxt=ei(),hxt=Nb().getAxisGroup,q1e=["v","h"];function dxt(e,t){for(var r=e.calcdata,n=t.xaxis,i=t.yaxis,a=0;a1,k=1-a[e+"gap"],E=1-a[e+"groupgap"];for(u=0;u0;if(C==="positive"?(N=M*(x?1:.5),ae=re,W=ae=P):C==="negative"?(N=ae=P,W=M*(x?1:.5),be=re):(N=W=M,ae=be=re),Ee){var Me=A.pointpos,Ue=A.jitter,De=A.marker.size/2,ye=0;Me+Ue>=0&&(ye=re*(Me+Ue),ye>N?(ke=!0,de=De,ze=ye):ye>ae&&(de=De,ze=N)),ye<=N&&(ze=N);var qe=0;Me-Ue<=0&&(qe=-re*(Me-Ue),qe>W?(ke=!0,te=De,Ce=qe):qe>be&&(te=De,Ce=W)),qe<=W&&(Ce=W)}else ze=N,Ce=W;var ce=new Array(f.length);for(l=0;l{"use strict";var CT=Jl(),a2=ei(),pxt=Mu(),V1e=5,vxt=.01;function mxt(e,t,r,n){var i=e._context.staticPlot,a=t.xaxis,o=t.yaxis;a2.makeTraceGroups(n,r,"trace boxes").each(function(s){var u=CT.select(this),l=s[0],f=l.t,c=l.trace;if(f.wdPos=f.bdPos*c.whiskerwidth,c.visible!==!0||f.empty){u.remove();return}var h,d;c.orientation==="h"?(h=o,d=a):(h=a,d=o),G1e(u,{pos:h,val:d},c,f,i),H1e(u,{x:a,y:o},c,f),W1e(u,{pos:h,val:d},c,f)})}function G1e(e,t,r,n,i){var a=r.orientation==="h",o=t.val,s=t.pos,u=!!s.rangebreaks,l=n.bPos,f=n.wdPos||0,c=n.bPosPxOffset||0,h=r.whiskerwidth||0,d=r.showwhiskers!==!1,p=r.notched||!1,_=p?1-2*r.notchwidth:1,b,v;Array.isArray(n.bdPos)?(b=n.bdPos[0],v=n.bdPos[1]):(b=n.bdPos,v=n.bdPos);var k=e.selectAll("path.box").data(r.type!=="violin"||r.box.visible?a2.identity:[]);k.enter().append("path").style("vector-effect",i?"none":"non-scaling-stroke").attr("class","box"),k.exit().remove(),k.each(function(E){if(E.empty)return CT.select(this).attr("d","M0,0Z");var A=s.c2l(E.pos+l,!0),L=s.l2p(A-b)+c,x=s.l2p(A+v)+c,C=u?(L+x)/2:s.l2p(A)+c,M=r.whiskerwidth,m=u?L*M+(1-M)*C:s.l2p(A-f)+c,P=u?x*M+(1-M)*C:s.l2p(A+f)+c,T=s.l2p(A-b*_)+c,B=s.l2p(A+v*_)+c,F=r.sizemode==="sd",U=o.c2p(F?E.mean-E.sd:E.q1,!0),G=F?o.c2p(E.mean+E.sd,!0):o.c2p(E.q3,!0),j=a2.constrain(F?o.c2p(E.mean,!0):o.c2p(E.med,!0),Math.min(U,G)+1,Math.max(U,G)-1),H=E.lf===void 0||r.boxpoints===!1||F,N=o.c2p(H?E.min:E.lf,!0),W=o.c2p(H?E.max:E.uf,!0),re=o.c2p(E.ln,!0),ae=o.c2p(E.un,!0);a?CT.select(this).attr("d","M"+j+","+T+"V"+B+"M"+U+","+L+"V"+x+(p?"H"+re+"L"+j+","+B+"L"+ae+","+x:"")+"H"+G+"V"+L+(p?"H"+ae+"L"+j+","+T+"L"+re+","+L:"")+"Z"+(d?"M"+U+","+C+"H"+N+"M"+G+","+C+"H"+W+(h===0?"":"M"+N+","+m+"V"+P+"M"+W+","+m+"V"+P):"")):CT.select(this).attr("d","M"+T+","+j+"H"+B+"M"+L+","+U+"H"+x+(p?"V"+re+"L"+B+","+j+"L"+x+","+ae:"")+"V"+G+"H"+L+(p?"V"+ae+"L"+T+","+j+"L"+L+","+re:"")+"Z"+(d?"M"+C+","+U+"V"+N+"M"+C+","+G+"V"+W+(h===0?"":"M"+m+","+N+"H"+P+"M"+m+","+W+"H"+P):""))})}function H1e(e,t,r,n){var i=t.x,a=t.y,o=n.bdPos,s=n.bPos,u=r.boxpoints||r.points;a2.seedPseudoRandom();var l=function(h){return h.forEach(function(d){d.t=n,d.trace=r}),h},f=e.selectAll("g.points").data(u?l:[]);f.enter().append("g").attr("class","points"),f.exit().remove();var c=f.selectAll("path").data(function(h){var d,p=h.pts2,_=Math.max((h.max-h.min)/10,h.q3-h.q1),b=_*1e-9,v=_*vxt,k=[],E=0,A;if(r.jitter){if(_===0)for(E=1,k=new Array(p.length),d=0;dh.lo&&(P.so=!0)}return p});c.enter().append("path").classed("point",!0),c.exit().remove(),c.call(pxt.translatePoints,i,a)}function W1e(e,t,r,n){var i=t.val,a=t.pos,o=!!a.rangebreaks,s=n.bPos,u=n.bPosPxOffset||0,l=r.boxmean||(r.meanline||{}).visible,f,c;Array.isArray(n.bdPos)?(f=n.bdPos[0],c=n.bdPos[1]):(f=n.bdPos,c=n.bdPos);var h=e.selectAll("path.mean").data(r.type==="box"&&r.boxmean||r.type==="violin"&&r.box.visible&&r.meanline.visible?a2.identity:[]);h.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),h.exit().remove(),h.each(function(d){var p=a.c2l(d.pos+s,!0),_=a.l2p(p-f)+u,b=a.l2p(p+c)+u,v=o?(_+b)/2:a.l2p(p)+u,k=i.c2p(d.mean,!0),E=i.c2p(d.mean-d.sd,!0),A=i.c2p(d.mean+d.sd,!0);r.orientation==="h"?CT.select(this).attr("d","M"+k+","+_+"V"+b+(l==="sd"?"m0,0L"+E+","+v+"L"+k+","+_+"L"+A+","+v+"Z":"")):CT.select(this).attr("d","M"+_+","+k+"H"+b+(l==="sd"?"m0,0L"+v+","+E+"L"+_+","+k+"L"+v+","+A+"Z":""))})}j1e.exports={plot:mxt,plotBoxAndWhiskers:G1e,plotPoints:H1e,plotBoxMean:W1e}});var JI=Ae((Ffr,X1e)=>{"use strict";var HV=Jl(),WV=jl(),jV=Mu();function yxt(e,t,r){var n=r||HV.select(e).selectAll("g.trace.boxes");n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=HV.select(this),o=i[0].trace,s=o.line.width;function u(c,h,d,p){c.style("stroke-width",h+"px").call(WV.stroke,d).call(WV.fill,p)}var l=a.selectAll("path.box");if(o.type==="candlestick")l.each(function(c){if(!c.empty){var h=HV.select(this),d=o[c.dir];u(h,d.line.width,d.line.color,d.fillcolor),h.style("opacity",o.selectedpoints&&!c.selected?.3:1)}});else{u(l,s,o.line.color,o.fillcolor),a.selectAll("path.mean").style({"stroke-width":s,"stroke-dasharray":2*s+"px,"+s+"px"}).call(WV.stroke,o.line.color);var f=a.selectAll("path.point");jV.pointStyle(f,o,e)}})}function gxt(e,t,r){var n=t[0].trace,i=r.selectAll("path.point");n.selectedpoints?jV.selectedPointStyle(i,n):jV.pointStyle(i,n,e)}X1e.exports={style:yxt,styleOnSelect:gxt}});var ZV=Ae((Bfr,J1e)=>{"use strict";var _xt=wu(),XV=ei(),A_=Xc(),Z1e=jl(),xxt=XV.fillText;function bxt(e,t,r,n){var i=e.cd,a=i[0].trace,o=a.hoveron,s=[],u;return o.indexOf("boxes")!==-1&&(s=s.concat(Y1e(e,t,r,n))),o.indexOf("points")!==-1&&(u=K1e(e,t,r)),n==="closest"?u?[u]:s:(u&&s.push(u),s)}function Y1e(e,t,r,n){var i=e.cd,a=e.xa,o=e.ya,s=i[0].trace,u=i[0].t,l=s.type==="violin",f,c,h,d,p,_,b,v,k,E,A,L=u.bdPos,x,C,M=u.wHover,m=function(De){return h.c2l(De.pos)+u.bPos-h.c2l(_)};l&&s.side!=="both"?(s.side==="positive"&&(k=function(De){var ye=m(De);return A_.inbox(ye,ye+M,E)},x=L,C=0),s.side==="negative"&&(k=function(De){var ye=m(De);return A_.inbox(ye-M,ye,E)},x=0,C=L)):(k=function(De){var ye=m(De);return A_.inbox(ye-M,ye+M,E)},x=C=L);var P;l?P=function(De){return A_.inbox(De.span[0]-p,De.span[1]-p,E)}:P=function(De){return A_.inbox(De.min-p,De.max-p,E)},s.orientation==="h"?(p=t,_=r,b=P,v=k,f="y",h=o,c="x",d=a):(p=r,_=t,b=k,v=P,f="x",h=a,c="y",d=o);var T=Math.min(1,L/Math.abs(h.r2c(h.range[1])-h.r2c(h.range[0])));E=e.maxHoverDistance-T,A=e.maxSpikeDistance-T;function B(De){return(b(De)+v(De))/2}var F=A_.getDistanceFunction(n,b,v,B);if(A_.getClosest(i,F,e),e.index===!1)return[];var U=i[e.index],G=s.line.color,j=(s.marker||{}).color;Z1e.opacity(G)&&s.line.width?e.color=G:Z1e.opacity(j)&&s.boxpoints?e.color=j:e.color=s.fillcolor,e[f+"0"]=h.c2p(U.pos+u.bPos-C,!0),e[f+"1"]=h.c2p(U.pos+u.bPos+x,!0),e[f+"LabelVal"]=U.orig_p!==void 0?U.orig_p:U.pos;var H=f+"Spike";e.spikeDistance=B(U)*A/E,e[H]=h.c2p(U.pos,!0);var N=s.boxmean||s.sizemode==="sd"||(s.meanline||{}).visible,W=s.boxpoints||s.points,re=W&&N?["max","uf","q3","med","mean","q1","lf","min"]:W&&!N?["max","uf","q3","med","q1","lf","min"]:!W&&N?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],ae=d.range[1]{"use strict";$1e.exports=function(t,r){return r.hoverOnBox&&(t.hoverOnBox=r.hoverOnBox),"xVal"in r&&(t.x=r.xVal),"yVal"in r&&(t.y=r.yVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var YV=Ae((qfr,e_e)=>{"use strict";e_e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,u;if(r===!1)for(s=0;s{"use strict";t_e.exports={attributes:_E(),layoutAttributes:xE(),supplyDefaults:wE().supplyDefaults,crossTraceDefaults:wE().crossTraceDefaults,supplyLayoutDefaults:XI().supplyLayoutDefaults,calc:GV(),crossTraceCalc:YI().crossTraceCalc,plot:KI().plot,style:JI().style,styleOnSelect:JI().styleOnSelect,hoverPoints:ZV().hoverPoints,eventData:Q1e(),selectPoints:YV(),moduleType:"trace",name:"box",basePlotModule:Ah(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{}}});var n_e=Ae((Ufr,i_e)=>{"use strict";i_e.exports=r_e()});var LT=Ae((Vfr,o_e)=>{"use strict";var wxt=nc(),{extendFlat:Pv}=Su(),Txt=Gf(),{axisHoverFormat:KV}=jc(),Axt=gc(),{hovertemplateAttrs:Sxt,templatefallbackAttrs:a_e,texttemplateAttrs:Mxt}=Ff(),n0=Zc();o_e.exports=Pv({z:{valType:"data_array",editType:"calc"},x:Pv({},n0.x,{impliedEdits:{xtype:"array"}}),x0:Pv({},n0.x0,{impliedEdits:{xtype:"scaled"}}),dx:Pv({},n0.dx,{impliedEdits:{xtype:"scaled"}}),y:Pv({},n0.y,{impliedEdits:{ytype:"array"}}),y0:Pv({},n0.y0,{impliedEdits:{ytype:"scaled"}}),dy:Pv({},n0.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:Pv({},n0.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:Pv({},n0.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:Pv({},n0.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:Pv({},n0.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:Pv({},n0.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:Pv({},n0.yperiodalignment,{impliedEdits:{ytype:"scaled"}}),text:{valType:"data_array",editType:"calc"},hovertext:{valType:"data_array",editType:"calc"},transpose:{valType:"boolean",dflt:!1,editType:"calc"},xtype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},ytype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},zsmooth:{valType:"enumerated",values:["fast","best",!1],dflt:!1,editType:"calc"},hoverongaps:{valType:"boolean",dflt:!0,editType:"none"},connectgaps:{valType:"boolean",editType:"calc"},xgap:{valType:"number",dflt:0,min:0,editType:"plot"},ygap:{valType:"number",dflt:0,min:0,editType:"plot"},xhoverformat:KV("x"),yhoverformat:KV("y"),zhoverformat:KV("z",1),hovertemplate:Sxt(),hovertemplatefallback:a_e(),texttemplate:Mxt({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),texttemplatefallback:a_e({editType:"plot"}),textfont:Axt({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:Pv({},Txt.showlegend,{dflt:!1}),zorder:n0.zorder},wxt("",{cLetter:"z",autoColorDflt:!1}))});var QI=Ae((Gfr,l_e)=>{"use strict";var Ext=ku(),$I=ei(),kxt=$l();l_e.exports=function(t,r,n,i,a,o){var s=n("z");a=a||"x",o=o||"y";var u,l;if(s===void 0||!s.length)return 0;if($I.isArray1D(s)){u=n(a),l=n(o);var f=$I.minRowLength(u),c=$I.minRowLength(l);if(f===0||c===0)return 0;r._length=Math.min(f,c,s.length)}else{if(u=s_e(a,n),l=s_e(o,n),!Cxt(s))return 0;n("transpose"),r._length=null}var h=kxt.getComponentMethod("calendars","handleTraceDefaults");return h(t,r,[a,o],i),!0};function s_e(e,t){var r=t(e),n=r?t(e+"type","array"):"scaled";return n==="scaled"&&(t(e+"0"),t("d"+e)),r}function Cxt(e){for(var t=!0,r=!1,n=!1,i,a=0;a0&&(r=!0);for(var o=0;o{"use strict";var u_e=ei();f_e.exports=function(t,r){t("texttemplate"),t("texttemplatefallback");var n=u_e.extendFlat({},r.font,{color:"auto",size:"auto"});u_e.coerceFont(t,"textfont",n)}});var JV=Ae((Wfr,c_e)=>{"use strict";c_e.exports=function(t,r,n){var i=n("zsmooth");i===!1&&(n("xgap"),n("ygap")),n("zhoverformat")}});var p_e=Ae((jfr,d_e)=>{"use strict";var h_e=ei(),Lxt=QI(),Pxt=TE(),zxt=Pm(),Ixt=JV(),Rxt=rd(),Dxt=LT();d_e.exports=function(t,r,n,i){function a(s,u){return h_e.coerce(t,r,Dxt,s,u)}var o=Lxt(t,r,a,i);if(!o){r.visible=!1;return}zxt(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),Pxt(a,i),Ixt(t,r,a,i),a("hoverongaps"),a("connectgaps",h_e.isArray1D(r.z)&&r.zsmooth!==!1),Rxt(t,r,i,a,{prefix:"",cLetter:"z"}),a("zorder")}});var $V=Ae((Xfr,v_e)=>{"use strict";var PT=ku();v_e.exports={count:function(e,t,r){return r[e]++,1},sum:function(e,t,r,n){var i=n[t];return PT(i)?(i=Number(i),r[e]+=i,i):0},avg:function(e,t,r,n,i){var a=n[t];return PT(a)&&(a=Number(a),r[e]+=a,i[e]++),0},min:function(e,t,r,n){var i=n[t];if(PT(i))if(i=Number(i),PT(r[e])){if(r[e]>i){var a=i-r[e];return r[e]=i,a}}else return r[e]=i,i;return 0},max:function(e,t,r,n){var i=n[t];if(PT(i))if(i=Number(i),PT(r[e])){if(r[e]{"use strict";m_e.exports={percent:function(e,t){for(var r=e.length,n=100/t,i=0;i{"use strict";y_e.exports=function(t,r){for(var n=t.length,i=0,a=0;a{"use strict";var zT=rf(),o2=zT.ONEAVGYEAR,g_e=zT.ONEAVGMONTH,tR=zT.ONEDAY,__e=zT.ONEHOUR,x_e=zT.ONEMIN,b_e=zT.ONESEC,w_e=wu().tickIncrement;S_e.exports=function(t,r,n,i,a){var o=-1.1*r,s=-.1*r,u=t-s,l=n[0],f=n[1],c=Math.min(eR(l+s,l+u,i,a),eR(f+s,f+u,i,a)),h=Math.min(eR(l+o,l+s,i,a),eR(f+o,f+s,i,a)),d,p;if(c>h&&htR){var _=d===o2?1:6,b=d===o2?"M12":"M1";return function(v,k){var E=i.c2d(v,o2,a),A=E.indexOf("-",_);A>0&&(E=E.substr(0,A));var L=i.d2c(E,0,a);if(Lb_e?e>tR?e>o2*1.1?o2:e>g_e*1.1?g_e:tR:e>__e?__e:e>x_e?x_e:b_e:Math.pow(10,Math.floor(Math.log(e)/Math.LN10))}function Fxt(e,t,r,n,i,a){if(n&&e>tR){var o=A_e(t,i,a),s=A_e(r,i,a),u=e===o2?0:1;return o[u]!==s[u]}return Math.floor(r/e)-Math.floor(t/e)>.1}function A_e(e,t,r){var n=t.c2d(e,o2,r).split("-");return n[0]===""&&(n.unshift(),n[0]="-"+n[0]),n}});var nG=Ae((Jfr,L_e)=>{"use strict";var rG=ku(),Hp=ei(),M_e=$l(),G0=wu(),{hasColorscale:E_e}=yp(),k_e=gp(),Bxt=vE(),C_e=$V(),Oxt=QV(),qxt=eG(),Nxt=tG();function Uxt(e,t){var r=[],n=[],i=t.orientation==="h",a=G0.getFromId(e,i?t.yaxis:t.xaxis),o=i?"y":"x",s={x:"y",y:"x"}[o],u=t[o+"calendar"],l=t.cumulative,f,c=iG(e,t,a,o),h=c[0],d=c[1],p=typeof h.size=="string",_=[],b=p?_:h,v=[],k=[],E=[],A=0,L=t.histnorm,x=t.histfunc,C=L.indexOf("density")!==-1,M,m,P;l.enabled&&C&&(L=L.replace(/ ?density$/,""),C=!1);var T=x==="max"||x==="min",B=T?null:0,F=C_e.count,U=Oxt[L],G=!1,j=function(ye){return a.r2c(ye,0,u)},H;for(Hp.isArrayOrTypedArray(t[s])&&x!=="count"&&(H=t[s],G=x==="avg",F=C_e[x]),f=j(h.start),m=j(h.end)+(f-G0.tickIncrement(f,h.size,!1,u))/1e6;f=0&&P=Me;f--)if(n[f]){Ue=f;break}for(f=Me;f<=Ue;f++)if(rG(r[f])&&rG(n[f])){var De={p:r[f],s:n[f],b:0};l.enabled||(De.pts=E[f],ae?De.ph0=De.ph1=E[f].length?d[E[f][0]]:r[f]:(t._computePh=!0,De.ph0=te(_[f]),De.ph1=te(_[f+1],!0))),Ee.push(De)}return Ee.length===1&&(Ee[0].width1=G0.tickIncrement(Ee[0].p,h.size,!1,u)-Ee[0].p),E_e(t,"marker")&&k_e(e,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),E_e(t,"marker.line")&&k_e(e,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}),Bxt(Ee,t),Hp.isArrayOrTypedArray(t.selectedpoints)&&Hp.tagSelected(Ee,t,Ce),Ee}function iG(e,t,r,n,i){var a=n+"bins",o=e._fullLayout,s=t["_"+n+"bingroup"],u=o._histogramBinOpts[s],l=o.barmode==="overlay",f,c,h,d,p,_,b,v=function(de){return r.r2c(de,0,d)},k=function(de){return r.c2r(de,0,d)},E=r.type==="date"?function(de){return de||de===0?Hp.cleanDate(de,null,d):null}:function(de){return rG(de)?Number(de):null};function A(de,te,ke){te[de+"Found"]?(te[de]=E(te[de]),te[de]===null&&(te[de]=ke[de])):(_[de]=te[de]=ke[de],Hp.nestedProperty(c[0],a+"."+de).set(ke[de]))}if(t["_"+n+"autoBinFinished"])delete t["_"+n+"autoBinFinished"];else{c=u.traces;var L=[],x=!0,C=!1,M=!1;for(f=0;fr.r2l(H)&&(W=G0.tickIncrement(W,u.size,!0,d)),F.start=r.l2r(W),j||Hp.nestedProperty(t,a+".start").set(F.start)}var re=u.end,ae=r.r2l(B.end),be=ae!==void 0;if((u.endFound||be)&&ae!==r.r2l(re)){var ze=be?ae:Hp.aggNums(Math.max,null,p);F.end=r.l2r(ze),be||Hp.nestedProperty(t,a+".start").set(F.end)}var Ce="autobin"+n;return t._input[Ce]===!1&&(t._input[a]=Hp.extendFlat({},t[a]||{}),delete t._input[Ce],delete t[Ce]),[F,p]}function Vxt(e,t,r,n,i){var a=e._fullLayout,o=Gxt(e,t),s=!1,u=1/0,l=[t],f,c,h;for(f=0;f=0;n--)s(n);else if(t==="increasing"){for(n=1;n=0;n--)e[n]+=e[n+1];r==="exclude"&&(e.push(0),e.shift())}}L_e.exports={calc:Uxt,calcAllAutoBins:iG}});var O_e=Ae(($fr,B_e)=>{"use strict";var P_e=ei(),IT=wu(),z_e=$V(),Wxt=QV(),jxt=eG(),Xxt=tG(),I_e=nG().calcAllAutoBins;B_e.exports=function(t,r){var n=IT.getFromId(t,r.xaxis),i=IT.getFromId(t,r.yaxis),a=r.xcalendar,o=r.ycalendar,s=function(He){return n.r2c(He,0,a)},u=function(He){return i.r2c(He,0,o)},l=function(He){return n.c2r(He,0,a)},f=function(He){return i.c2r(He,0,o)},c,h,d,p,_=I_e(t,r,n,"x"),b=_[0],v=_[1],k=I_e(t,r,i,"y"),E=k[0],A=k[1],L=r._length;v.length>L&&v.splice(L,v.length-L),A.length>L&&A.splice(L,A.length-L);var x=[],C=[],M=[],m=typeof b.size=="string",P=typeof E.size=="string",T=[],B=[],F=m?T:b,U=P?B:E,G=0,j=[],H=[],N=r.histnorm,W=r.histfunc,re=N.indexOf("density")!==-1,ae=W==="max"||W==="min",be=ae?null:0,ze=z_e.count,Ce=Wxt[N],de=!1,te=[],ke=[],Ee="z"in r?r.z:"marker"in r&&Array.isArray(r.marker.color)?r.marker.color:"";Ee&&W!=="count"&&(de=W==="avg",ze=z_e[W]);var Me=b.size,Ue=s(b.start),De=s(b.end)+(Ue-IT.tickIncrement(Ue,Me,!1,a))/1e6;for(c=Ue;c=0&&d=0&&p{"use strict";var zy=ei(),q_e=rf().BADNUM,N_e=Im();U_e.exports=function(t,r,n,i,a,o){var s=t._length,u=r.makeCalcdata(t,i),l=n.makeCalcdata(t,a);u=N_e(t,r,i,u).vals,l=N_e(t,n,a,l).vals;var f=t.text,c=f!==void 0&&zy.isArray1D(f),h=t.hovertext,d=h!==void 0&&zy.isArray1D(h),p,_,b=zy.distinctVals(u),v=b.vals,k=zy.distinctVals(l),E=k.vals,A=[],L,x,C=E.length,M=v.length;for(p=0;p{"use strict";var Zxt=ku(),Yxt=ei(),iR=rf().BADNUM;V_e.exports=function(t,r,n,i){var a,o,s,u,l,f;function c(v){if(Zxt(v))return+v}if(r&&r.transpose){for(a=0,l=0;l{"use strict";var Kxt=ei(),G_e=.01,Jxt=[[-1,0],[1,0],[0,-1],[0,1]];function $xt(e){return .5-.25*Math.min(1,e*.5)}W_e.exports=function(t,r){var n=1,i;for(H_e(t,r),i=0;iG_e;i++)n=H_e(t,r,$xt(n));return n>G_e&&Kxt.log("interp2d didn't converge quickly",n),t};function H_e(e,t,r){var n=0,i,a,o,s,u,l,f,c,h,d,p,_,b;for(s=0;s_&&(n=Math.max(n,Math.abs(e[a][o]-p)/(b-_))))}return n}});var oR=Ae((rcr,j_e)=>{"use strict";var Qxt=ei().maxRowLength;j_e.exports=function(t){var r=[],n={},i=[],a=t[0],o=[],s=[0,0,0],u=Qxt(t),l,f,c,h,d,p,_,b;for(f=0;f=0;d--)h=i[d],f=h[0],c=h[1],p=((n[[f-1,c]]||s)[2]+(n[[f+1,c]]||s)[2]+(n[[f,c-1]]||s)[2]+(n[[f,c+1]]||s)[2])/20,p&&(_[h]=[f,c,p],i.splice(d,1),b=!0);if(!b)throw"findEmpties iterated with no new neighbors";for(h in _)n[h]=_[h],r.push(_[h])}return r.sort(function(v,k){return k[2]-v[2]})}});var aG=Ae((icr,Y_e)=>{"use strict";var X_e=$l(),Z_e=ei().isArrayOrTypedArray;Y_e.exports=function(t,r,n,i,a,o){var s=[],u=X_e.traceIs(t,"contour"),l=X_e.traceIs(t,"histogram"),f,c,h,d=Z_e(r)&&r.length>1;if(d&&!l&&o.type!=="category"){var p=r.length;if(p<=a){if(u)s=Array.from(r).slice(0,a);else if(a===1)o.type==="log"?s=[.5*r[0],2*r[0]]:s=[r[0]-.5,r[0]+.5];else if(o.type==="log"){for(s=[Math.pow(r[0],1.5)/Math.pow(r[1],.5)],h=1;h{"use strict";var K_e=$l(),oG=ei(),sR=wu(),J_e=Im(),ebt=O_e(),tbt=gp(),rbt=rR(),ibt=nR(),nbt=aR(),abt=oR(),lR=aG(),sG=rf().BADNUM;Q_e.exports=function(t,r){var n=sR.getFromId(t,r.xaxis||"x"),i=sR.getFromId(t,r.yaxis||"y"),a=K_e.traceIs(r,"contour"),o=K_e.traceIs(r,"histogram"),s=a?"best":r.zsmooth,u,l,f,c,h,d,p,_,b,v,k;if(n._minDtick=0,i._minDtick=0,o)k=ebt(t,r),c=k.orig_x,u=k.x,l=k.x0,f=k.dx,_=k.orig_y,h=k.y,d=k.y0,p=k.dy,b=k.z;else{var E=r.z;oG.isArray1D(E)?(rbt(r,n,i,"x","y",["z"]),u=r._x,h=r._y,E=r._z):(c=r.x?n.makeCalcdata(r,"x"):[],_=r.y?i.makeCalcdata(r,"y"):[],u=J_e(r,n,"x",c).vals,h=J_e(r,i,"y",_).vals,r._x=u,r._y=h),l=r.x0,f=r.dx,d=r.y0,p=r.dy,b=ibt(E,r,n,i)}(n.rangebreaks||i.rangebreaks)&&(b=obt(u,h,b),o||(u=$_e(u),h=$_e(h),r._x=u,r._y=h)),!o&&(a||r.connectgaps)&&(r._emptypoints=abt(b),nbt(b,r._emptypoints));function A(F){s=r._input.zsmooth=r.zsmooth=!1,oG.warn('cannot use zsmooth: "fast": '+F)}function L(F){if(F.length>1){var U=(F[F.length-1]-F[0])/(F.length-1),G=Math.abs(U/100);for(v=0;vG)return!1}return!0}r._islinear=!1,n.type==="log"||i.type==="log"?s==="fast"&&A("log axis found"):L(u)?L(h)?r._islinear=!0:s==="fast"&&A("y scale is not linear"):s==="fast"&&A("x scale is not linear");var x=oG.maxRowLength(b),C=r.xtype==="scaled"?"":u,M=lR(r,C,l,f,x,n),m=r.ytype==="scaled"?"":h,P=lR(r,m,d,p,b.length,i);r._extremes[n._id]=sR.findExtremes(n,M),r._extremes[i._id]=sR.findExtremes(i,P);var T={x:M,y:P,z:b,text:r._text||r.text,hovertext:r._hovertext||r.hovertext};if(r.xperiodalignment&&c&&(T.orig_x=c),r.yperiodalignment&&_&&(T.orig_y=_),C&&C.length===M.length-1&&(T.xCenter=C),m&&m.length===P.length-1&&(T.yCenter=m),o&&(T.xRanges=k.xRanges,T.yRanges=k.yRanges,T.pts=k.pts),a||tbt(t,r,{vals:b,cLetter:"z"}),a&&r.contours&&r.contours.coloring==="heatmap"){var B={type:r.type==="contour"?"heatmap":"histogram2d",xcalendar:r.xcalendar,ycalendar:r.ycalendar};T.xfill=lR(B,C,l,f,x,n),T.yfill=lR(B,m,d,p,b.length,i)}return[T]};function $_e(e){for(var t=[],r=e.length,n=0;n{"use strict";fR.CSS_DECLARATIONS=[["image-rendering","optimizeSpeed"],["image-rendering","-moz-crisp-edges"],["image-rendering","-o-crisp-edges"],["image-rendering","-webkit-optimize-contrast"],["image-rendering","optimize-contrast"],["image-rendering","crisp-edges"],["image-rendering","pixelated"]];fR.STYLE=fR.CSS_DECLARATIONS.map(function(e){return e.join(": ")+"; "}).join("")});var uG=Ae((ocr,txe)=>{"use strict";var exe=cR(),sbt=Mu(),lG=ei(),RT=null;function lbt(){if(RT!==null)return RT;RT=!1;var e=lG.isSafari()||lG.isMacWKWebView()||lG.isIOS();if(window.navigator.userAgent&&!e){var t=Array.from(exe.CSS_DECLARATIONS).reverse(),r=window.CSS&&window.CSS.supports||window.supportsCSS;if(typeof r=="function")RT=t.some(function(o){return r.apply(null,o)});else{var n=sbt.tester.append("image").attr("style",exe.STYLE),i=window.getComputedStyle(n.node()),a=i.imageRendering;RT=t.some(function(o){var s=o[1];return a===s||a===s.toLowerCase()}),n.remove()}}return RT}txe.exports=lbt});var hR=Ae((scr,fxe)=>{"use strict";var rxe=Jl(),ubt=cd(),fbt=$l(),cbt=Mu(),hbt=wu(),H0=ei(),ixe=Xf(),dbt=iI(),pbt=jl(),vbt=_c().extractOpts,mbt=_c().makeColorScaleFuncFromTrace,ybt=jv(),gbt=td(),fG=gbt.LINE_SPACING,_bt=uG(),xbt=cR().STYLE,lxe="heatmap-label";function uxe(e){return e.selectAll("g."+lxe)}function nxe(e){uxe(e).remove()}fxe.exports=function(e,t,r,n){var i=t.xaxis,a=t.yaxis;H0.makeTraceGroups(n,r,"hm").each(function(o){var s=rxe.select(this),u=o[0],l=u.trace,f=l.xgap||0,c=l.ygap||0,h=u.z,d=u.x,p=u.y,_=u.xCenter,b=u.yCenter,v=fbt.traceIs(l,"contour"),k=v?"best":l.zsmooth,E=h.length,A=H0.maxRowLength(h),L=!1,x=!1,C,M,m,P,T,B,F,U;for(B=0;C===void 0&&B0;)M=i.c2p(d[B]),B--;for(M0;)T=a.c2p(p[B]),B--;T=i._length||M<=0||P>=a._length||T<=0;if(W){var re=s.selectAll("image").data([]);re.exit().remove(),nxe(s);return}var ae,be;G==="fast"?(ae=A,be=E):(ae=H,be=N);var ze=document.createElement("canvas");ze.width=ae,ze.height=be;var Ce=ze.getContext("2d",{willReadFrequently:!0}),de=mbt(l,{noNumericCheck:!0,returnArray:!0}),te,ke;G==="fast"?(te=L?function(ki){return A-1-ki}:H0.identity,ke=x?function(ki){return E-1-ki}:H0.identity):(te=function(ki){return H0.constrain(Math.round(i.c2p(d[ki])-C),0,H)},ke=function(ki){return H0.constrain(Math.round(a.c2p(p[ki])-P),0,N)});var Ee=ke(0),Me=[Ee,Ee],Ue=L?0:1,De=x?0:1,ye=0,qe=0,ce=0,Je=0,nt,gt,Nt,at,Ke;function Ct(ki,Vi){if(ki!==void 0){var ti=de(ki);return ti[0]=Math.round(ti[0]),ti[1]=Math.round(ti[1]),ti[2]=Math.round(ti[2]),ye+=Vi,qe+=ti[0]*Vi,ce+=ti[1]*Vi,Je+=ti[2]*Vi,ti}return[0,0,0,0]}function wt(ki,Vi,ti,tn){var Yr=ki[ti.bin0];if(Yr===void 0)return Ct(void 0,1);var oi=ki[ti.bin1],Fi=Vi[ti.bin0],an=Vi[ti.bin1],nn=oi-Yr||0,Ri=Fi-Yr||0,Ii;return oi===void 0?an===void 0?Ii=0:Fi===void 0?Ii=2*(an-Yr):Ii=(2*an-Fi-Yr)*2/3:an===void 0?Fi===void 0?Ii=0:Ii=(2*Yr-oi-Fi)*2/3:Fi===void 0?Ii=(2*an-oi-Yr)*2/3:Ii=an+Yr-oi-Fi,Ct(Yr+ti.frac*nn+tn.frac*(Ri+ti.frac*Ii))}if(G!=="default"){var St=0,Dt;try{Dt=new Uint8Array(ae*be*4)}catch(ki){Dt=new Array(ae*be*4)}if(G==="smooth"){var Zt=_||d,Et=b||p,Te=new Array(Zt.length),ot=new Array(Et.length),Tt=new Array(H),vt=_?oxe:axe,Ye=b?oxe:axe,He,it,et;for(B=0;Brr||rr>a._length))for(F=pe;FBr||Br>i._length)){var Er=dbt({x:Gr,y:zt},l,e._fullLayout);Er.x=Gr,Er.y=zt;var Rr=u.z[B][F];Rr===void 0?(Er.z="",Er.zLabel=""):(Er.z=Rr,Er.zLabel=hbt.tickText(Ie,Rr,"hover").text);var pi=u.text&&u.text[B]&&u.text[B][F];(pi===void 0||pi===!1)&&(pi=""),Er.text=pi;var Di=H0.texttemplateString({data:[Er,l._meta],fallback:l.texttemplatefallback,labels:Er,locale:e._fullLayout._d3locale,template:xe});if(Di){var ni=Di.split("
"),$i=ni.length,Qi=0;for(U=0;U<$i;U++)Qi=Math.max(Qi,ni[U].length);Pt.push({l:$i,c:Qi,t:Di,x:Br,y:rr,z:Rr})}}}}var si=l.textfont,Ai=si.size,Ni=e._fullLayout.font.size;if(!Ai||Ai==="auto"){var Rt=1/0,yt=1/0,Gt=0,Wt=0;for(U=0;U{"use strict";cxe.exports={min:"zmin",max:"zmax"}});var dR=Ae((ucr,hxe)=>{"use strict";var bbt=Jl();hxe.exports=function(t){bbt.select(t).selectAll(".hm image").style("opacity",function(r){return r.trace.opacity})}});var vR=Ae((fcr,pxe)=>{"use strict";var dxe=Xc(),AE=ei(),pR=AE.isArrayOrTypedArray,wbt=wu(),Tbt=_c().extractOpts;pxe.exports=function(t,r,n,i,a){a||(a={});var o=a.isContour,s=t.cd[0],u=s.trace,l=t.xa,f=t.ya,c=s.x,h=s.y,d=s.z,p=s.xCenter,_=s.yCenter,b=s.zmask,v=u.zhoverformat,k=c,E=h,A,L,x,C;if(t.index!==!1){try{x=Math.round(t.index[1]),C=Math.round(t.index[0])}catch(re){AE.error("Error hovering on heatmap, pointNumber must be [row,col], found:",t.index);return}if(x<0||x>=d[0].length||C<0||C>d.length)return}else{if(dxe.inbox(r-c[0],r-c[c.length-1],0)>0||dxe.inbox(n-h[0],n-h[h.length-1],0)>0)return;if(o){var M;for(k=[2*c[0]-c[1]],M=1;M{"use strict";vxe.exports={attributes:LT(),supplyDefaults:p_e(),calc:uR(),plot:hR(),colorbar:S_(),style:dR(),hoverPoints:vR(),moduleType:"trace",name:"heatmap",basePlotModule:Ah(),categories:["cartesian","svg","2dMap","showLegend"],meta:{}}});var gxe=Ae((hcr,yxe)=>{"use strict";yxe.exports=mxe()});var cG=Ae((dcr,_xe)=>{"use strict";_xe.exports=function(t,r){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}});var bxe=Ae((pcr,xxe)=>{"use strict";xxe.exports={eventDataKeys:["binNumber"]}});var mR=Ae((vcr,Sxe)=>{"use strict";var zv=Ly(),wxe=jc().axisHoverFormat,{hovertemplateAttrs:Abt,texttemplateAttrs:Sbt,templatefallbackAttrs:Txe}=Ff(),hG=gc(),Axe=cG(),Mbt=bxe(),dG=Su().extendFlat;Sxe.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:wxe("x"),yhoverformat:wxe("y"),text:dG({},zv.text,{}),hovertext:dG({},zv.hovertext,{}),orientation:zv.orientation,histfunc:{valType:"enumerated",values:["count","sum","avg","min","max"],dflt:"count",editType:"calc"},histnorm:{valType:"enumerated",values:["","percent","probability","density","probability density"],dflt:"",editType:"calc"},cumulative:{enabled:{valType:"boolean",dflt:!1,editType:"calc"},direction:{valType:"enumerated",values:["increasing","decreasing"],dflt:"increasing",editType:"calc"},currentbin:{valType:"enumerated",values:["include","exclude","half"],dflt:"include",editType:"calc"},editType:"calc"},nbinsx:{valType:"integer",min:0,dflt:0,editType:"calc"},xbins:Axe("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:Axe("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:Abt({},{keys:Mbt.eventDataKeys}),hovertemplatefallback:Txe(),texttemplate:Sbt({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),texttemplatefallback:Txe({editType:"plot"}),textposition:dG({},zv.textposition,{arrayOk:!1}),textfont:hG({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:hG({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:hG({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:zv.insidetextanchor,textangle:zv.textangle,cliponaxis:zv.cliponaxis,constraintext:zv.constraintext,marker:zv.marker,offsetgroup:zv.offsetgroup,alignmentgroup:zv.alignmentgroup,selected:zv.selected,unselected:zv.unselected,zorder:zv.zorder}});var Cxe=Ae((mcr,kxe)=>{"use strict";var Mxe=$l(),SE=ei(),Exe=jl(),Ebt=r0().handleText,kbt=UI(),Cbt=mR();kxe.exports=function(t,r,n,i){function a(k,E){return SE.coerce(t,r,Cbt,k,E)}var o=a("x"),s=a("y"),u=a("cumulative.enabled");u&&(a("cumulative.direction"),a("cumulative.currentbin")),a("text");var l=a("textposition");Ebt(t,r,i,a,l,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat");var f=a("orientation",s&&!o?"h":"v"),c=f==="v"?"x":"y",h=f==="v"?"y":"x",d=o&&s?Math.min(SE.minRowLength(o)&&SE.minRowLength(s)):SE.minRowLength(r[c]||[]);if(!d){r.visible=!1;return}r._length=d;var p=Mxe.getComponentMethod("calendars","handleTraceDefaults");p(t,r,["x","y"],i);var _=r[h];_&&a("histfunc"),a("histnorm"),a("autobin"+c),kbt(t,r,a,n,i),SE.coerceSelectionMarkerOpacity(r,a);var b=(r.marker.line||{}).color,v=Mxe.getComponentMethod("errorbars","supplyDefaults");v(t,r,b||Exe.defaultLine,{axis:"y"}),v(t,r,b||Exe.defaultLine,{axis:"x",inherit:"y"}),a("zorder")}});var gR=Ae((ycr,zxe)=>{"use strict";var ME=ei(),Lbt=Wc(),yR=$l().traceIs,Pbt=Hb(),zbt=r0().validateCornerradius,Lxe=ME.nestedProperty,pG=Nb().getAxisGroup,Pxe=[{aStr:{x:"xbins.start",y:"ybins.start"},name:"start"},{aStr:{x:"xbins.end",y:"ybins.end"},name:"end"},{aStr:{x:"xbins.size",y:"ybins.size"},name:"size"},{aStr:{x:"nbinsx",y:"nbinsy"},name:"nbins"}],Ibt=["x","y"];zxe.exports=function(t,r){var n=r._histogramBinOpts={},i=[],a={},o=[],s,u,l,f,c,h,d;function p(G,j){return ME.coerce(s._input,s,s._module.attributes,G,j)}function _(G){return G.orientation==="v"?"x":"y"}function b(G,j){var H=Lbt.getFromTrace({_fullLayout:r},G,j);return H.type}function v(G,j,H){var N=G.uid+"__"+H;j||(j=N);var W=b(G,H),re=G[H+"calendar"]||"",ae=n[j],be=!0;ae&&(W===ae.axType&&re===ae.calendar?(be=!1,ae.traces.push(G),ae.dirs.push(H)):(j=N,W!==ae.axType&&ME.warn(["Attempted to group the bins of trace",G.index,"set on a","type:"+W,"axis","with bins on","type:"+ae.axType,"axis."].join(" ")),re!==ae.calendar&&ME.warn(["Attempted to group the bins of trace",G.index,"set with a",re,"calendar","with bins",ae.calendar?"on a "+ae.calendar+" calendar":"w/o a set calendar"].join(" ")))),be&&(n[j]={traces:[G],dirs:[H],axType:W,calendar:G[H+"calendar"]||""}),G["_"+H+"bingroup"]=j}for(c=0;c{"use strict";var Rbt=MT().hoverPoints,Dbt=wu().hoverLabelText;Ixe.exports=function(t,r,n,i,a){var o=Rbt(t,r,n,i,a);if(o){t=o[0];var s=t.cd[t.index],u=t.cd[0].trace;if(!u.cumulative.enabled){var l=u.orientation==="h"?"y":"x";t[l+"Label"]=Dbt(t[l+"a"],[s.ph0,s.ph1],u[l+"hoverformat"])}return o}}});var vG=Ae((_cr,Dxe)=>{"use strict";Dxe.exports=function(t,r,n,i,a){if(t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"zLabelVal"in r&&(t.z=r.zLabelVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),!(n.cumulative||{}).enabled){var o=Array.isArray(a)?i[0].pts[a[0]][a[1]]:i[a].pts;t.pointNumbers=o,t.binNumber=t.pointNumber,delete t.pointNumber,delete t.pointIndex;var s;if(n._indexToPoints){s=[];for(var u=0;u{"use strict";Fxe.exports={attributes:mR(),layoutAttributes:NI(),supplyDefaults:Cxe(),crossTraceDefaults:gR(),supplyLayoutDefaults:DV(),calc:nG().calc,crossTraceCalc:Wb().crossTraceCalc,plot:n2().plot,layerName:"barlayer",style:N0().style,styleOnSelect:N0().styleOnSelect,colorbar:ep(),hoverPoints:Rxe(),selectPoints:ET(),eventData:vG(),moduleType:"trace",name:"histogram",basePlotModule:Ah(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}});var qxe=Ae((bcr,Oxe)=>{"use strict";Oxe.exports=Bxe()});var xR=Ae((wcr,Vxe)=>{"use strict";var Vm=mR(),Nxe=cG(),_R=LT(),Fbt=Gf(),mG=jc().axisHoverFormat,{hovertemplateAttrs:Bbt,texttemplateAttrs:Obt,templatefallbackAttrs:Uxe}=Ff(),qbt=nc(),EE=Su().extendFlat;Vxe.exports=EE({x:Vm.x,y:Vm.y,z:{valType:"data_array",editType:"calc"},marker:{color:{valType:"data_array",editType:"calc"},editType:"calc"},histnorm:Vm.histnorm,histfunc:Vm.histfunc,nbinsx:Vm.nbinsx,xbins:Nxe("x"),nbinsy:Vm.nbinsy,ybins:Nxe("y"),autobinx:Vm.autobinx,autobiny:Vm.autobiny,bingroup:EE({},Vm.bingroup,{}),xbingroup:EE({},Vm.bingroup,{}),ybingroup:EE({},Vm.bingroup,{}),xgap:_R.xgap,ygap:_R.ygap,zsmooth:_R.zsmooth,xhoverformat:mG("x"),yhoverformat:mG("y"),zhoverformat:mG("z",1),hovertemplate:Bbt({},{keys:["z"]}),hovertemplatefallback:Uxe(),texttemplate:Obt({arrayOk:!1,editType:"plot"},{keys:["z"]}),texttemplatefallback:Uxe({editType:"plot"}),textfont:_R.textfont,showlegend:EE({},Fbt.showlegend,{dflt:!1})},qbt("",{cLetter:"z",autoColorDflt:!1}))});var yG=Ae((Tcr,Hxe)=>{"use strict";var Nbt=$l(),Gxe=ei();Hxe.exports=function(t,r,n,i){var a=n("x"),o=n("y"),s=Gxe.minRowLength(a),u=Gxe.minRowLength(o);if(!s||!u){r.visible=!1;return}r._length=Math.min(s,u);var l=Nbt.getComponentMethod("calendars","handleTraceDefaults");l(t,r,["x","y"],i);var f=n("z")||n("marker.color");f&&n("histfunc"),n("histnorm"),n("autobinx"),n("autobiny")}});var jxe=Ae((Acr,Wxe)=>{"use strict";var Ubt=ei(),Vbt=yG(),Gbt=JV(),Hbt=rd(),Wbt=TE(),jbt=xR();Wxe.exports=function(t,r,n,i){function a(o,s){return Ubt.coerce(t,r,jbt,o,s)}Vbt(t,r,a,i),r.visible!==!1&&(Gbt(t,r,a,i),Hbt(t,r,i,a,{prefix:"",cLetter:"z"}),a("hovertemplate"),a("hovertemplatefallback"),Wbt(a,i),a("xhoverformat"),a("yhoverformat"))}});var Yxe=Ae((Scr,Zxe)=>{"use strict";var Xbt=vR(),Xxe=wu().hoverLabelText;Zxe.exports=function(t,r,n,i,a){var o=Xbt(t,r,n,i,a);if(o){t=o[0];var s=t.index,u=s[0],l=s[1],f=t.cd[0],c=f.trace,h=f.xRanges[l],d=f.yRanges[u];return t.xLabel=Xxe(t.xa,[h[0],h[1]],c.xhoverformat),t.yLabel=Xxe(t.ya,[d[0],d[1]],c.yhoverformat),o}}});var Jxe=Ae((Mcr,Kxe)=>{"use strict";Kxe.exports={attributes:xR(),supplyDefaults:jxe(),crossTraceDefaults:gR(),calc:uR(),plot:hR(),layerName:"heatmaplayer",colorbar:S_(),style:dR(),hoverPoints:Yxe(),eventData:vG(),moduleType:"trace",name:"histogram2d",basePlotModule:Ah(),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{}}});var Qxe=Ae((Ecr,$xe)=>{"use strict";$xe.exports=Jxe()});var bR=Ae((kcr,ebe)=>{"use strict";ebe.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}});var kE=Ae((Ccr,nbe)=>{"use strict";var Mh=LT(),wR=Zc(),rbe=jc(),gG=rbe.axisHoverFormat,Zbt=rbe.descriptionOnlyNumbers,Ybt=nc(),Kbt=Id().dash,Jbt=gc(),DT=Su().extendFlat,ibe=bR(),$bt=ibe.COMPARISON_OPS2,Qbt=ibe.INTERVAL_OPS,tbe=wR.line;nbe.exports=DT({z:Mh.z,x:Mh.x,x0:Mh.x0,dx:Mh.dx,y:Mh.y,y0:Mh.y0,dy:Mh.dy,xperiod:Mh.xperiod,yperiod:Mh.yperiod,xperiod0:wR.xperiod0,yperiod0:wR.yperiod0,xperiodalignment:Mh.xperiodalignment,yperiodalignment:Mh.yperiodalignment,text:Mh.text,hovertext:Mh.hovertext,transpose:Mh.transpose,xtype:Mh.xtype,ytype:Mh.ytype,xhoverformat:gG("x"),yhoverformat:gG("y"),zhoverformat:gG("z",1),hovertemplate:Mh.hovertemplate,hovertemplatefallback:Mh.hovertemplatefallback,texttemplate:DT({},Mh.texttemplate,{}),texttemplatefallback:Mh.texttemplatefallback,textfont:DT({},Mh.textfont,{}),hoverongaps:Mh.hoverongaps,connectgaps:DT({},Mh.connectgaps,{}),fillcolor:{valType:"color",editType:"calc"},autocontour:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"contours.start":void 0,"contours.end":void 0,"contours.size":void 0}},ncontours:{valType:"integer",dflt:15,min:1,editType:"calc"},contours:{type:{valType:"enumerated",values:["levels","constraint"],dflt:"levels",editType:"calc"},start:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},end:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},size:{valType:"number",dflt:null,min:0,editType:"plot",impliedEdits:{"^autocontour":!1}},coloring:{valType:"enumerated",values:["fill","heatmap","lines","none"],dflt:"fill",editType:"calc"},showlines:{valType:"boolean",dflt:!0,editType:"plot"},showlabels:{valType:"boolean",dflt:!1,editType:"plot"},labelfont:Jbt({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:Zbt("contour label")},operation:{valType:"enumerated",values:[].concat($bt).concat(Qbt),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:DT({},tbe.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:Kbt,smoothing:DT({},tbe.smoothing,{}),editType:"plot"},zorder:wR.zorder},Ybt("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))});var xG=Ae((Lcr,obe)=>{"use strict";var Ap=xR(),Iy=kE(),e2t=nc(),_G=jc().axisHoverFormat,abe=Su().extendFlat;obe.exports=abe({x:Ap.x,y:Ap.y,z:Ap.z,marker:Ap.marker,histnorm:Ap.histnorm,histfunc:Ap.histfunc,nbinsx:Ap.nbinsx,xbins:Ap.xbins,nbinsy:Ap.nbinsy,ybins:Ap.ybins,autobinx:Ap.autobinx,autobiny:Ap.autobiny,bingroup:Ap.bingroup,xbingroup:Ap.xbingroup,ybingroup:Ap.ybingroup,autocontour:Iy.autocontour,ncontours:Iy.ncontours,contours:Iy.contours,line:{color:Iy.line.color,width:abe({},Iy.line.width,{dflt:.5}),dash:Iy.line.dash,smoothing:Iy.line.smoothing,editType:"plot"},xhoverformat:_G("x"),yhoverformat:_G("y"),zhoverformat:_G("z",1),hovertemplate:Ap.hovertemplate,hovertemplatefallback:Ap.hovertemplatefallback,texttemplate:Iy.texttemplate,texttemplatefallback:Iy.texttemplatefallback,textfont:Iy.textfont},e2t("",{cLetter:"z",editTypeOverride:"calc"}))});var TR=Ae((Pcr,sbe)=>{"use strict";sbe.exports=function(t,r,n,i){var a=i("contours.start"),o=i("contours.end"),s=a===!1||o===!1,u=n("contours.size"),l;s?l=r.autocontour=!0:l=n("autocontour",!1),(l||!u)&&n("ncontours")}});var bG=Ae((zcr,lbe)=>{"use strict";var t2t=ei();lbe.exports=function(t,r,n,i){i||(i={});var a=t("contours.showlabels");if(a){var o=r.font;t2t.coerceFont(t,"contours.labelfont",o,{overrideDflt:{color:n}}),t("contours.labelformat")}i.hasHover!==!1&&t("zhoverformat")}});var AR=Ae((Icr,ube)=>{"use strict";var r2t=rd(),i2t=bG();ube.exports=function(t,r,n,i,a){var o=n("contours.coloring"),s,u="";o==="fill"&&(s=n("contours.showlines")),s!==!1&&(o!=="lines"&&(u=n("line.color","#000")),n("line.width",.5),n("line.dash")),o!=="none"&&(t.showlegend!==!0&&(r.showlegend=!1),r._dfltShowLegend=!1,r2t(t,r,i,n,{prefix:"",cLetter:"z"})),n("line.smoothing"),i2t(n,i,u,a)}});var dbe=Ae((Rcr,hbe)=>{"use strict";var fbe=ei(),n2t=yG(),a2t=TR(),o2t=AR(),s2t=TE(),cbe=xG();hbe.exports=function(t,r,n,i){function a(s,u){return fbe.coerce(t,r,cbe,s,u)}function o(s){return fbe.coerce2(t,r,cbe,s)}n2t(t,r,a,i),r.visible!==!1&&(a2t(t,r,a,o),o2t(t,r,a,i),a("xhoverformat"),a("yhoverformat"),a("hovertemplate"),a("hovertemplatefallback"),r.contours&&r.contours.coloring==="heatmap"&&s2t(a,i))}});var AG=Ae((Dcr,vbe)=>{"use strict";var TG=wu(),wG=ei();vbe.exports=function(t,r){var n=t.contours;if(t.autocontour){var i=t.zmin,a=t.zmax;(t.zauto||i===void 0)&&(i=wG.aggNums(Math.min,null,r)),(t.zauto||a===void 0)&&(a=wG.aggNums(Math.max,null,r));var o=pbe(i,a,t.ncontours);n.size=o.dtick,n.start=TG.tickFirst(o),o.range.reverse(),n.end=TG.tickFirst(o),n.start===i&&(n.start+=n.size),n.end===a&&(n.end-=n.size),n.start>n.end&&(n.start=n.end=(n.start+n.end)/2),t._input.contours||(t._input.contours={}),wG.extendFlat(t._input.contours,{start:n.start,end:n.end,size:n.size}),t._input.autocontour=!0}else if(n.type!=="constraint"){var s=n.start,u=n.end,l=t._input.contours;if(s>u&&(n.start=l.start=u,u=n.end=l.end=s,s=n.start),!(n.size>0)){var f;s===u?f=1:f=pbe(s,u,t.ncontours).dtick,l.size=n.size=f}}};function pbe(e,t,r){var n={type:"linear",range:[e,t]};return TG.autoTicks(n,(t-e)/(r||15)),n}});var CE=Ae((Fcr,mbe)=>{"use strict";mbe.exports=function(t){return t.end+t.size/1e6}});var SG=Ae((Bcr,gbe)=>{"use strict";var ybe=_c(),l2t=uR(),u2t=AG(),f2t=CE();gbe.exports=function(t,r){var n=l2t(t,r),i=n[0].z;u2t(r,i);var a=r.contours,o=ybe.extractOpts(r),s;if(a.coloring==="heatmap"&&o.auto&&r.autocontour===!1){var u=a.start,l=f2t(a),f=a.size||1,c=Math.floor((l-u)/f)+1;isFinite(f)||(f=1,c=1);var h=u-f/2,d=h+c*f;s=[h,d]}else s=i;return ybe.calc(t,r,{vals:s,cLetter:"z"}),n}});var LE=Ae((Ocr,_be)=>{"use strict";_be.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}});var MG=Ae((qcr,xbe)=>{"use strict";var SR=LE();xbe.exports=function(t){var r=t[0].z,n=r.length,i=r[0].length,a=n===2||i===2,o,s,u,l,f,c,h,d,p;for(s=0;se?0:1)+(t[0][1]>e?0:2)+(t[1][1]>e?0:4)+(t[1][0]>e?0:8);if(r===5||r===10){var n=(t[0][0]+t[0][1]+t[1][0]+t[1][1])/4;return e>n?r===5?713:1114:r===5?104:208}return r===15?0:r}});var EG=Ae((Ncr,Tbe)=>{"use strict";var MR=ei(),FT=LE();Tbe.exports=function(t,r,n){var i,a,o,s,u;for(r=r||.01,n=n||.01,o=0;o20?(o=FT.CHOOSESADDLE[o][(s[0]||s[1])<0?0:1],e.crossings[a]=FT.SADDLEREMAINDER[o]):delete e.crossings[a],s=FT.NEWDELTA[o],!s){MR.log("Found bad marching index:",o,t,e.level);break}u.push(wbe(e,t,s)),t[0]+=s[0],t[1]+=s[1],a=t.join(","),PE(u[u.length-1],u[u.length-2],n,i)&&u.pop();var p=s[0]&&(t[0]<0||t[0]>f-2)||s[1]&&(t[1]<0||t[1]>l-2),_=t[0]===c[0]&&t[1]===c[1]&&s[0]===h[0]&&s[1]===h[1];if(_||r&&p)break;o=e.crossings[a]}d===1e4&&MR.log("Infinite loop in contour?");var b=PE(u[0],u[u.length-1],n,i),v=0,k=.2*e.smoothing,E=[],A=0,L,x,C,M,m,P,T,B,F,U,G;for(d=1;d=A;d--)if(L=E[d],L=A&&L+E[x]B&&F--,e.edgepaths[F]=G.concat(u,U));break}W||(e.edgepaths[B]=u.concat(U))}for(B=0;B20&&t?e===208||e===1114?n=r[0]===0?1:-1:i=r[1]===0?1:-1:FT.BOTTOMSTART.indexOf(e)!==-1?i=1:FT.LEFTSTART.indexOf(e)!==-1?n=1:FT.TOPSTART.indexOf(e)!==-1?i=-1:n=-1,[n,i]}function wbe(e,t,r){var n=t[0]+Math.max(r[0],0),i=t[1]+Math.max(r[1],0),a=e.z[i][n],o=e.xaxis,s=e.yaxis;if(r[1]){var u=(e.level-a)/(e.z[i][n+1]-a),l=(u!==1?(1-u)*o.c2l(e.x[n]):0)+(u!==0?u*o.c2l(e.x[n+1]):0);return[o.c2p(o.l2c(l),!0),s.c2p(e.y[i],!0),n+u,i]}else{var f=(e.level-a)/(e.z[i+1][n]-a),c=(f!==1?(1-f)*s.c2l(e.y[i]):0)+(f!==0?f*s.c2l(e.y[i+1]):0);return[o.c2p(e.x[n],!0),s.c2p(s.l2c(c),!0),n,i+f]}}});var Ebe=Ae((Ucr,Mbe)=>{"use strict";var kG=bR(),p2t=ku();Mbe.exports={"[]":Abe("[]"),"][":Abe("]["),">":CG(">"),"<":CG("<"),"=":CG("=")};function Sbe(e,t){var r=Array.isArray(t),n;function i(a){return p2t(a)?+a:null}return kG.COMPARISON_OPS2.indexOf(e)!==-1?n=i(r?t[0]:t):kG.INTERVAL_OPS.indexOf(e)!==-1?n=r?[i(t[0]),i(t[1])]:[i(t),i(t)]:kG.SET_OPS.indexOf(e)!==-1&&(n=r?t.map(i):[i(t)]),n}function Abe(e){return function(t){t=Sbe(e,t);var r=Math.min(t[0],t[1]),n=Math.max(t[0],t[1]);return{start:r,end:n,size:n-r}}}function CG(e){return function(t){return t=Sbe(e,t),{start:t,end:1/0,size:1/0}}}});var LG=Ae((Vcr,Cbe)=>{"use strict";var kbe=ei(),v2t=Ebe(),m2t=CE();Cbe.exports=function(t,r,n){for(var i=t.type==="constraint"?v2t[t._operation](t.value):t,a=i.size,o=[],s=m2t(i),u=n.trace._carpetTrace,l=u?{xaxis:u.aaxis,yaxis:u.baxis,x:n.a,y:n.b}:{xaxis:r.xaxis,yaxis:r.yaxis,x:n.x,y:n.y},f=i.start;f1e3){kbe.warn("Too many contours, clipping at 1000",t);break}return o}});var PG=Ae((Gcr,Pbe)=>{"use strict";var BT=ei();Pbe.exports=function(e,t){var r,n,i,a=function(u){return u.reverse()},o=function(u){return u};switch(t){case"=":case"<":return e;case">":for(e.length!==1&&BT.warn("Contour data invalid for the specified inequality operation."),n=e[0],r=0;r{"use strict";zbe.exports=function(e,t){var r=e[0],n=r.z,i;switch(t.type){case"levels":var a=Math.min(n[0][0],n[0][1]);for(i=0;io.level||o.starts.length&&a===o.level)}break;case"constraint":if(r.prefixBoundary=!1,r.edgepaths.length)return;var s=r.x.length,u=r.y.length,l=-1/0,f=1/0;for(i=0;i":c>l&&(r.prefixBoundary=!0);break;case"<":(cl||r.starts.length&&d===f)&&(r.prefixBoundary=!0);break;case"][":h=Math.min(c[0],c[1]),d=Math.max(c[0],c[1]),hl&&(r.prefixBoundary=!0);break}break}}});var ER=Ae(Wp=>{"use strict";var IE=Jl(),Od=ei(),Og=Mu(),y2t=_c(),Dbe=Xf(),Ibe=wu(),Rbe=gy(),g2t=hR(),Fbe=MG(),Bbe=EG(),_2t=LG(),x2t=PG(),Obe=zG(),zE=LE(),Ry=zE.LABELOPTIMIZER;Wp.plot=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;Od.makeTraceGroups(i,n,"contour").each(function(s){var u=IE.select(this),l=s[0],f=l.trace,c=l.x,h=l.y,d=f.contours,p=_2t(d,r,l),_=Od.ensureSingle(u,"g","heatmapcoloring"),b=[];d.coloring==="heatmap"&&(b=[s]),g2t(t,r,b,_),Fbe(p),Bbe(p);var v=a.c2p(c[0],!0),k=a.c2p(c[c.length-1],!0),E=o.c2p(h[0],!0),A=o.c2p(h[h.length-1],!0),L=[[v,A],[k,A],[k,E],[v,E]],x=p;d.type==="constraint"&&(x=x2t(p,d._operation)),b2t(u,L,d),w2t(u,x,L,d),T2t(u,p,t,l,d),S2t(u,r,t,l,L)})};function b2t(e,t,r){var n=Od.ensureSingle(e,"g","contourbg"),i=n.selectAll("path").data(r.coloring==="fill"?[0]:[]);i.enter().append("path"),i.exit().remove(),i.attr("d","M"+t.join("L")+"Z").style("stroke","none")}function w2t(e,t,r,n){var i=n.coloring==="fill"||n.type==="constraint"&&n._operation!=="=",a="M"+r.join("L")+"Z";i&&Obe(t,n);var o=Od.ensureSingle(e,"g","contourfill"),s=o.selectAll("path").data(i?t:[]);s.enter().append("path"),s.exit().remove(),s.each(function(u){var l=(u.prefixBoundary?a:"")+qbe(u,r);l?IE.select(this).attr("d",l).style("stroke","none"):IE.select(this).remove()})}function qbe(e,t){var r="",n=0,i=e.edgepaths.map(function(v,k){return k}),a=!0,o,s,u,l,f,c;function h(v){return Math.abs(v[1]-t[0][1])<.01}function d(v){return Math.abs(v[1]-t[2][1])<.01}function p(v){return Math.abs(v[0]-t[0][0])<.01}function _(v){return Math.abs(v[0]-t[2][0])<.01}for(;i.length;){for(c=Og.smoothopen(e.edgepaths[n],e.smoothing),r+=a?c:c.replace(/^M/,"L"),i.splice(i.indexOf(n),1),o=e.edgepaths[n][e.edgepaths[n].length-1],l=-1,u=0;u<4;u++){if(!o){Od.log("Missing end?",n,e);break}for(h(o)&&!_(o)?s=t[1]:p(o)?s=t[0]:d(o)?s=t[3]:_(o)&&(s=t[2]),f=0;f=0&&(s=b,l=f):Math.abs(o[1]-s[1])<.01?Math.abs(o[1]-b[1])<.01&&(b[0]-o[0])*(s[0]-b[0])>=0&&(s=b,l=f):Od.log("endpt to newendpt is not vert. or horz.",o,s,b)}if(o=s,l>=0)break;r+="L"+s}if(l===e.edgepaths.length){Od.log("unclosed perimeter path");break}n=l,a=i.indexOf(n)===-1,a&&(n=i[0],r+="Z")}for(n=0;nRy.MAXCOST*2)break;h&&(s/=2),o=l-s/2,u=o+s*1.5}if(c<=Ry.MAXCOST)return f};function A2t(e,t,r,n){var i=t.width/2,a=t.height/2,o=e.x,s=e.y,u=e.theta,l=Math.cos(u)*i,f=Math.sin(u)*i,c=(o>n.center?n.right-o:o-n.left)/(l+Math.abs(Math.sin(u)*a)),h=(s>n.middle?n.bottom-s:s-n.top)/(Math.abs(f)+Math.cos(u)*a);if(c<1||h<1)return 1/0;var d=Ry.EDGECOST*(1/(c-1)+1/(h-1));d+=Ry.ANGLECOST*u*u;for(var p=o-l,_=s-f,b=o+l,v=s+f,k=0;k{"use strict";var E2t=Jl(),IG=_c(),k2t=CE();Nbe.exports=function(t){var r=t.contours,n=r.start,i=k2t(r),a=r.size||1,o=Math.floor((i-n)/a)+1,s=r.coloring==="lines"?0:1,u=IG.extractOpts(t);isFinite(a)||(a=1,o=1);var l=u.reversescale?IG.flipScale(u.colorscale):u.colorscale,f=l.length,c=new Array(f),h=new Array(f),d,p,_=u.min,b=u.max;if(r.coloring==="heatmap"){for(p=0;p=b)&&(n<=_&&(n=_),i>=b&&(i=b),o=Math.floor((i-n)/a)+1,s=0),p=0;p_&&(c.unshift(_),h.unshift(h[0])),c[c.length-1]{"use strict";var kR=Jl(),Ube=Mu(),C2t=dR(),L2t=RG();Vbe.exports=function(t){var r=kR.select(t).selectAll("g.contour");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=kR.select(this),a=n[0].trace,o=a.contours,s=a.line,u=o.size||1,l=o.start,f=o.type==="constraint",c=!f&&o.coloring==="lines",h=!f&&o.coloring==="fill",d=c||h?L2t(a):null;i.selectAll("g.contourlevel").each(function(b){kR.select(this).selectAll("path").call(Ube.lineGroupStyle,s.width,c?d(b.level):s.color,s.dash)});var p=o.labelfont;if(i.selectAll("g.contourlabels text").each(function(b){Ube.font(kR.select(this),{weight:p.weight,style:p.style,variant:p.variant,textcase:p.textcase,lineposition:p.lineposition,shadow:p.shadow,family:p.family,size:p.size,color:p.color||(c?d(b.level):s.color)})}),f)i.selectAll("g.contourfill path").style("fill",a.fillcolor);else if(h){var _;i.selectAll("g.contourfill path").style("fill",function(b){return _===void 0&&(_=b.level),d(b.level+.5*u)}),_===void 0&&(_=l),i.selectAll("g.contourbg path").style("fill",d(_-.5*u))}}),C2t(t)}});var LR=Ae((Zcr,Hbe)=>{"use strict";var Gbe=_c(),P2t=RG(),z2t=CE();function I2t(e,t,r){var n=t.contours,i=t.line,a=n.size||1,o=n.coloring,s=P2t(t,{isColorbar:!0});if(o==="heatmap"){var u=Gbe.extractOpts(t);r._fillgradient=u.reversescale?Gbe.flipScale(u.colorscale):u.colorscale,r._zrange=[u.min,u.max]}else o==="fill"&&(r._fillcolor=s);r._line={color:o==="lines"?s:i.color,width:n.showlines!==!1?i.width:0,dash:i.dash},r._levels={start:n.start,end:z2t(n),size:a}}Hbe.exports={min:"zmin",max:"zmax",calc:I2t}});var DG=Ae((Ycr,Wbe)=>{"use strict";var PR=jl(),R2t=vR();Wbe.exports=function(t,r,n,i,a){a||(a={}),a.isContour=!0;var o=R2t(t,r,n,i,a);return o&&o.forEach(function(s){var u=s.trace;u.contours.type==="constraint"&&(u.fillcolor&&PR.opacity(u.fillcolor)?s.color=PR.addOpacity(u.fillcolor,1):u.contours.showlines&&PR.opacity(u.line.color)&&(s.color=PR.addOpacity(u.line.color,1)))}),o}});var Xbe=Ae((Kcr,jbe)=>{"use strict";jbe.exports={attributes:xG(),supplyDefaults:dbe(),crossTraceDefaults:gR(),calc:SG(),plot:ER().plot,layerName:"contourlayer",style:CR(),colorbar:LR(),hoverPoints:DG(),moduleType:"trace",name:"histogram2dcontour",basePlotModule:Ah(),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{}}});var Ybe=Ae((Jcr,Zbe)=>{"use strict";Zbe.exports=Xbe()});var FG=Ae(($cr,t2e)=>{"use strict";var Kbe=ku(),D2t=bG(),Qbe=jl(),Jbe=Qbe.addOpacity,F2t=Qbe.opacity,e2e=bR(),$be=ei().isArrayOrTypedArray,B2t=e2e.CONSTRAINT_REDUCTION,O2t=e2e.COMPARISON_OPS2;t2e.exports=function(t,r,n,i,a,o){var s=r.contours,u,l,f,c=n("contours.operation");if(s._operation=B2t[c],q2t(n,s),c==="="?u=s.showlines=!0:(u=n("contours.showlines"),f=n("fillcolor",Jbe((t.line||{}).color||a,.5))),u){var h=f&&F2t(f)?Jbe(r.fillcolor,1):a;l=n("line.color",h),n("line.width",2),n("line.dash")}n("line.smoothing"),D2t(n,i,l,o)};function q2t(e,t){var r;O2t.indexOf(t.operation)===-1?(e("contours.value",[0,1]),$be(t.value)?t.value.length>2?t.value=t.value.slice(2):t.length===0?t.value=[0,1]:t.length<2?(r=parseFloat(t.value[0]),t.value=[r,r+1]):t.value=[parseFloat(t.value[0]),parseFloat(t.value[1])]:Kbe(t.value)&&(r=parseFloat(t.value),t.value=[r,r+1])):(e("contours.value",0),Kbe(t.value)||($be(t.value)?t.value=parseFloat(t.value[0]):t.value=0))}});var n2e=Ae((Qcr,i2e)=>{"use strict";var BG=ei(),N2t=QI(),U2t=Pm(),V2t=FG(),G2t=TR(),H2t=AR(),W2t=TE(),r2e=kE();i2e.exports=function(t,r,n,i){function a(l,f){return BG.coerce(t,r,r2e,l,f)}function o(l){return BG.coerce2(t,r,r2e,l)}var s=N2t(t,r,a,i);if(!s){r.visible=!1;return}U2t(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hoverongaps"),a("hovertemplate"),a("hovertemplatefallback");var u=a("contours.type")==="constraint";a("connectgaps",BG.isArray1D(r.z)),u?V2t(t,r,a,i,n):(G2t(t,r,a,o),H2t(t,r,a,i)),r.contours&&r.contours.coloring==="heatmap"&&W2t(a,i),a("zorder")}});var o2e=Ae((ehr,a2e)=>{"use strict";a2e.exports={attributes:kE(),supplyDefaults:n2e(),calc:SG(),plot:ER().plot,style:CR(),colorbar:LR(),hoverPoints:DG(),moduleType:"trace",name:"contour",basePlotModule:Ah(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}});var l2e=Ae((thr,s2e)=>{"use strict";s2e.exports=o2e()});var OG=Ae((rhr,c2e)=>{"use strict";var{hovertemplateAttrs:j2t,texttemplateAttrs:X2t,templatefallbackAttrs:u2e}=Ff(),Z2t=km(),a0=Zc(),Y2t=Gf(),f2e=nc(),K2t=Id().dash,M_=Su().extendFlat,W0=a0.marker,RE=a0.line,J2t=W0.line;c2e.exports={a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},c:{valType:"data_array",editType:"calc"},sum:{valType:"number",dflt:0,min:0,editType:"calc"},mode:M_({},a0.mode,{dflt:"markers"}),text:M_({},a0.text,{}),texttemplate:X2t({editType:"plot"},{keys:["a","b","c","text"]}),texttemplatefallback:u2e({editType:"plot"}),hovertext:M_({},a0.hovertext,{}),line:{color:RE.color,width:RE.width,dash:K2t,backoff:RE.backoff,shape:M_({},RE.shape,{values:["linear","spline"]}),smoothing:RE.smoothing,editType:"calc"},connectgaps:a0.connectgaps,cliponaxis:a0.cliponaxis,fill:M_({},a0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:Z2t(),marker:M_({symbol:W0.symbol,opacity:W0.opacity,angle:W0.angle,angleref:W0.angleref,standoff:W0.standoff,maxdisplayed:W0.maxdisplayed,size:W0.size,sizeref:W0.sizeref,sizemin:W0.sizemin,sizemode:W0.sizemode,line:M_({width:J2t.width,editType:"calc"},f2e("marker.line")),gradient:W0.gradient,editType:"calc"},f2e("marker")),textfont:a0.textfont,textposition:a0.textposition,selected:a0.selected,unselected:a0.unselected,hoverinfo:M_({},Y2t.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:a0.hoveron,hovertemplate:j2t(),hovertemplatefallback:u2e()}});var v2e=Ae((ihr,p2e)=>{"use strict";var h2e=ei(),$2t=Sy(),OT=lc(),Q2t=$v(),ewt=I0(),d2e=eT(),twt=R0(),rwt=zm(),iwt=OG();p2e.exports=function(t,r,n,i){function a(h,d){return h2e.coerce(t,r,iwt,h,d)}var o=a("a"),s=a("b"),u=a("c"),l;if(o?(l=o.length,s?(l=Math.min(l,s.length),u&&(l=Math.min(l,u.length))):u?l=Math.min(l,u.length):l=0):s&&u&&(l=Math.min(s.length,u.length)),!l){r.visible=!1;return}r._length=l,a("sum"),a("text"),a("hovertext"),r.hoveron!=="fills"&&(a("hovertemplate"),a("hovertemplatefallback"));var f=l<$2t.PTS_LINESONLY?"lines+markers":"lines";a("mode",f),OT.hasMarkers(r)&&Q2t(t,r,n,i,a,{gradient:!0}),OT.hasLines(r)&&(ewt(t,r,n,i,a,{backoff:!0}),d2e(t,r,a),a("connectgaps")),OT.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),twt(t,r,i,a));var c=[];(OT.hasMarkers(r)||OT.hasText(r))&&(a("cliponaxis"),a("marker.maxdisplayed"),c.push("points")),a("fill"),r.fill!=="none"&&(rwt(t,r,n,a),OT.hasLines(r)||d2e(t,r,a)),(r.fill==="tonext"||r.fill==="toself")&&c.push("fills"),a("hoveron",c.join("+")||"points"),h2e.coerceSelectionMarkerOpacity(r,a)}});var y2e=Ae((nhr,m2e)=>{"use strict";var qG=wu();m2e.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.aLabel=qG.tickText(a.aaxis,t.a,!0).text,i.bLabel=qG.tickText(a.baxis,t.b,!0).text,i.cLabel=qG.tickText(a.caxis,t.c,!0).text,i}});var b2e=Ae((ahr,x2e)=>{"use strict";var NG=ku(),nwt=D0(),awt=ky(),owt=F0(),swt=B0().calcMarkerSize,g2e=["a","b","c"],_2e={a:["b","c"],b:["a","c"],c:["a","b"]};x2e.exports=function(t,r){var n=t._fullLayout[r.subplot],i=n.sum,a=r.sum||i,o={a:r.a,b:r.b,c:r.c},s=r.ids,u,l,f,c,h,d;for(u=0;u{"use strict";var lwt=oT();w2e.exports=function(t,r,n){var i=r.plotContainer;i.select(".scatterlayer").selectAll("*").remove();for(var a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:i,layerClipId:r._hasClipOnAxisFalse?r.clipIdRelative:null},u=r.layers.frontplot.select("g.scatterlayer"),l=0;l{"use strict";var uwt=fT();A2e.exports=function(t,r,n,i){var a=uwt(t,r,n,i);if(!a||a[0].index===!1)return;var o=a[0];if(o.index===void 0){var s=1-o.y0/t.ya._length,u=t.xa._length,l=u*s/2,f=u-l;return o.x0=Math.max(Math.min(o.x0,f),l),o.x1=Math.max(Math.min(o.x1,f),l),a}var c=o.cd[o.index],h=o.trace,d=o.subplot;o.a=c.a,o.b=c.b,o.c=c.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var p={};p[h.subplot]={_subplot:d};var _=h._module.formatLabels(c,h,p);o.aLabel=_.aLabel,o.bLabel=_.bLabel,o.cLabel=_.cLabel;var b=c.hi||h.hoverinfo,v=[];function k(A,L){v.push(A._hovertitle+": "+L)}if(!h.hovertemplate){var E=b.split("+");E.indexOf("all")!==-1&&(E=["a","b","c"]),E.indexOf("a")!==-1&&k(d.aaxis,o.aLabel),E.indexOf("b")!==-1&&k(d.baxis,o.bLabel),E.indexOf("c")!==-1&&k(d.caxis,o.cLabel)}return o.extraText=v.join("
"),o.hovertemplate=h.hovertemplate,a}});var E2e=Ae((lhr,M2e)=>{"use strict";M2e.exports=function(t,r,n,i,a){if(r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),i[a]){var o=i[a];t.a=o.a,t.b=o.b,t.c=o.c}else t.a=r.a,t.b=r.b,t.c=r.c;return t}});var O2e=Ae((uhr,B2e)=>{"use strict";var I2e=Jl(),fwt=cd(),UG=$l(),qg=ei(),Dy=qg.strTranslate,zR=qg._,NT=jl(),IR=Mu(),DE=gy(),VG=Su().extendFlat,cwt=Cc(),E_=wu(),k2e=xp(),C2e=Xc(),R2e=Mm(),L2e=R2e.freeMode,hwt=R2e.rectMode,GG=Eb(),dwt=oh().prepSelect,pwt=oh().selectOnClick,vwt=oh().clearOutline,mwt=oh().clearSelectionsCache,D2e=dd();function F2e(e,t){this.id=e.id,this.graphDiv=e.graphDiv,this.init(t),this.makeFramework(t),this.updateFx(t),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}B2e.exports=F2e;var Fy=F2e.prototype;Fy.init=function(e){this.container=e._ternarylayer,this.defs=e._defs,this.layoutId=e._uid,this.traceHash={},this.layers={}};Fy.plot=function(e,t){var r=this,n=t[r.id],i=t._size;r._hasClipOnAxisFalse=!1;for(var a=0;aqT*l?(v=l,b=v*qT):(b=u,v=b/qT),k=o*b/u,E=s*v/l,p=t.l+t.w*i-b/2,_=t.t+t.h*(1-a)-v/2,r.x0=p,r.y0=_,r.w=b,r.h=v,r.sum=f,r.xaxis={type:"linear",range:[c+2*d-f,f-c-2*h],domain:[i-k/2,i+k/2],_id:"x"},DE(r.xaxis,r.graphDiv._fullLayout),r.xaxis.setScale(),r.xaxis.isPtWithinRange=function(U){return U.a>=r.aaxis.range[0]&&U.a<=r.aaxis.range[1]&&U.b>=r.baxis.range[1]&&U.b<=r.baxis.range[0]&&U.c>=r.caxis.range[1]&&U.c<=r.caxis.range[0]},r.yaxis={type:"linear",range:[c,f-h-d],domain:[a-E/2,a+E/2],_id:"y"},DE(r.yaxis,r.graphDiv._fullLayout),r.yaxis.setScale(),r.yaxis.isPtWithinRange=function(){return!0};var A=r.yaxis.domain[0],L=r.aaxis=VG({},e.aaxis,{range:[c,f-h-d],side:"left",tickangle:(+e.aaxis.tickangle||0)-30,domain:[A,A+E*qT],anchor:"free",position:0,_id:"y",_length:b});DE(L,r.graphDiv._fullLayout),L.setScale();var x=r.baxis=VG({},e.baxis,{range:[f-c-d,h],side:"bottom",domain:r.xaxis.domain,anchor:"free",position:0,_id:"x",_length:b});DE(x,r.graphDiv._fullLayout),x.setScale();var C=r.caxis=VG({},e.caxis,{range:[f-c-h,d],side:"right",tickangle:(+e.caxis.tickangle||0)+30,domain:[A,A+E*qT],anchor:"free",position:0,_id:"y",_length:b});DE(C,r.graphDiv._fullLayout),C.setScale();var M="M"+p+","+(_+v)+"h"+b+"l-"+b/2+",-"+v+"Z";r.clipDef.select("path").attr("d",M),r.layers.plotbg.select("path").attr("d",M);var m="M0,"+v+"h"+b+"l-"+b/2+",-"+v+"Z";r.clipDefRelative.select("path").attr("d",m);var P=Dy(p,_);r.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",P),r.clipDefRelative.select("path").attr("transform",null);var T=Dy(p-x._offset,_+v);r.layers.baxis.attr("transform",T),r.layers.bgrid.attr("transform",T);var B=Dy(p+b/2,_)+"rotate(30)"+Dy(0,-L._offset);r.layers.aaxis.attr("transform",B),r.layers.agrid.attr("transform",B);var F=Dy(p+b/2,_)+"rotate(-30)"+Dy(0,-C._offset);r.layers.caxis.attr("transform",F),r.layers.cgrid.attr("transform",F),r.drawAxes(!0),r.layers.aline.select("path").attr("d",L.showline?"M"+p+","+(_+v)+"l"+b/2+",-"+v:"M0,0").call(NT.stroke,L.linecolor||"#000").style("stroke-width",(L.linewidth||0)+"px"),r.layers.bline.select("path").attr("d",x.showline?"M"+p+","+(_+v)+"h"+b:"M0,0").call(NT.stroke,x.linecolor||"#000").style("stroke-width",(x.linewidth||0)+"px"),r.layers.cline.select("path").attr("d",C.showline?"M"+(p+b/2)+","+_+"l"+b/2+","+v:"M0,0").call(NT.stroke,C.linecolor||"#000").style("stroke-width",(C.linewidth||0)+"px"),r.graphDiv._context.staticPlot||r.initInteractions(),IR.setClipUrl(r.layers.frontplot,r._hasClipOnAxisFalse?null:r.clipId,r.graphDiv)};Fy.drawAxes=function(e){var t=this,r=t.graphDiv,n=t.id.substr(7)+"title",i=t.layers,a=t.aaxis,o=t.baxis,s=t.caxis;if(t.drawAx(a),t.drawAx(o),t.drawAx(s),e){var u=Math.max(a.showticklabels?a.tickfont.size/2:0,(s.showticklabels?s.tickfont.size*.75:0)+(s.ticks==="outside"?s.ticklen*.87:0)),l=(o.showticklabels?o.tickfont.size:0)+(o.ticks==="outside"?o.ticklen:0)+3;i["a-title"]=GG.draw(r,"a"+n,{propContainer:a,propName:t.id+".aaxis.title.text",placeholder:zR(r,"Click to enter Component A title"),attributes:{x:t.x0+t.w/2,y:t.y0-a.title.font.size/3-u,"text-anchor":"middle"}}),i["b-title"]=GG.draw(r,"b"+n,{propContainer:o,propName:t.id+".baxis.title.text",placeholder:zR(r,"Click to enter Component B title"),attributes:{x:t.x0-l,y:t.y0+t.h+o.title.font.size*.83+l,"text-anchor":"middle"}}),i["c-title"]=GG.draw(r,"c"+n,{propContainer:s,propName:t.id+".caxis.title.text",placeholder:zR(r,"Click to enter Component C title"),attributes:{x:t.x0+t.w+l,y:t.y0+t.h+s.title.font.size*.83+l,"text-anchor":"middle"}})}};Fy.drawAx=function(e){var t=this,r=t.graphDiv,n=e._name,i=n.charAt(0),a=e._id,o=t.layers[n],s=30,u=i+"tickLayout",l=ywt(e);t[u]!==l&&(o.selectAll("."+a+"tick").remove(),t[u]=l),e.setScale();var f=E_.calcTicks(e),c=E_.clipEnds(e,f),h=E_.makeTransTickFn(e),d=E_.getTickSigns(e)[2],p=qg.deg2rad(s),_=d*(e.linewidth||1)/2,b=d*e.ticklen,v=t.w,k=t.h,E=i==="b"?"M0,"+_+"l"+Math.sin(p)*b+","+Math.cos(p)*b:"M"+_+",0l"+Math.cos(p)*b+","+-Math.sin(p)*b,A={a:"M0,0l"+k+",-"+v/2,b:"M0,0l-"+v/2+",-"+k,c:"M0,0l-"+k+","+v/2}[i];E_.drawTicks(r,e,{vals:e.ticks==="inside"?c:f,layer:o,path:E,transFn:h,crisp:!1}),E_.drawGrid(r,e,{vals:c,layer:t.layers[i+"grid"],path:A,transFn:h,crisp:!1}),E_.drawLabels(r,e,{vals:f,layer:o,transFn:h,labelFns:E_.makeLabelFns(e,0,s)})};function ywt(e){return e.ticks+String(e.ticklen)+String(e.showticklabels)}var _d=D2e.MINZOOM/2+.87,gwt="m-0.87,.5h"+_d+"v3h-"+(_d+5.2)+"l"+(_d/2+2.6)+",-"+(_d*.87+4.5)+"l2.6,1.5l-"+_d/2+","+_d*.87+"Z",_wt="m0.87,.5h-"+_d+"v3h"+(_d+5.2)+"l-"+(_d/2+2.6)+",-"+(_d*.87+4.5)+"l-2.6,1.5l"+_d/2+","+_d*.87+"Z",xwt="m0,1l"+_d/2+","+_d*.87+"l2.6,-1.5l-"+(_d/2+2.6)+",-"+(_d*.87+4.5)+"l-"+(_d/2+2.6)+","+(_d*.87+4.5)+"l2.6,1.5l"+_d/2+",-"+_d*.87+"Z",bwt="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",P2e=!0;Fy.clearOutline=function(){mwt(this.dragOptions),vwt(this.dragOptions.gd)};Fy.initInteractions=function(){var e=this,t=e.layers.plotbg.select("path").node(),r=e.graphDiv,n=r._fullLayout._zoomlayer,i,a;this.dragOptions={element:t,gd:r,plotinfo:{id:e.id,domain:r._fullLayout[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis},subplot:e.id,prepFn:function(T,B,F){e.dragOptions.xaxes=[e.xaxis],e.dragOptions.yaxes=[e.yaxis],i=r._fullLayout._invScaleX,a=r._fullLayout._invScaleY;var U=e.dragOptions.dragmode=r._fullLayout.dragmode;L2e(U)?e.dragOptions.minDrag=1:e.dragOptions.minDrag=void 0,U==="zoom"?(e.dragOptions.moveFn=x,e.dragOptions.clickFn=v,e.dragOptions.doneFn=C,k(T,B,F)):U==="pan"?(e.dragOptions.moveFn=m,e.dragOptions.clickFn=v,e.dragOptions.doneFn=P,M(),e.clearOutline(r)):(hwt(U)||L2e(U))&&dwt(T,B,F,e.dragOptions,U)}};var o,s,u,l,f,c,h,d,p,_;function b(T){var B={};return B[e.id+".aaxis.min"]=T.a,B[e.id+".baxis.min"]=T.b,B[e.id+".caxis.min"]=T.c,B}function v(T,B){var F=r._fullLayout.clickmode;z2e(r),T===2&&(r.emit("plotly_doubleclick",null),UG.call("_guiRelayout",r,b({a:0,b:0,c:0}))),F.indexOf("select")>-1&&T===1&&pwt(B,r,[e.xaxis],[e.yaxis],e.id,e.dragOptions),F.indexOf("event")>-1&&C2e.click(r,B,e.id)}function k(T,B,F){var U=t.getBoundingClientRect();o=B-U.left,s=F-U.top,r._fullLayout._calcInverseTransform(r);var G=r._fullLayout._invTransform,j=qg.apply3DTransform(G)(o,s);o=j[0],s=j[1],u={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},f=u,l=e.aaxis.range[1]-u.a,c=fwt(e.graphDiv._fullLayout[e.id].bgcolor).getLuminance(),h="M0,"+e.h+"L"+e.w/2+", 0L"+e.w+","+e.h+"Z",d=!1,p=n.append("path").attr("class","zoombox").attr("transform",Dy(e.x0,e.y0)).style({fill:c>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",h),_=n.append("path").attr("class","zoombox-corners").attr("transform",Dy(e.x0,e.y0)).style({fill:NT.background,stroke:NT.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),e.clearOutline(r)}function E(T,B){return 1-B/e.h}function A(T,B){return 1-(T+(e.h-B)/Math.sqrt(3))/e.w}function L(T,B){return(T-(e.h-B)/Math.sqrt(3))/e.w}function x(T,B){var F=o+T*i,U=s+B*a,G=Math.max(0,Math.min(1,E(o,s),E(F,U))),j=Math.max(0,Math.min(1,A(o,s),A(F,U))),H=Math.max(0,Math.min(1,L(o,s),L(F,U))),N=(G/2+H)*e.w,W=(1-G/2-j)*e.w,re=(N+W)/2,ae=W-N,be=(1-G)*e.h,ze=be-ae/qT;ae.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),_.transition().style("opacity",1).duration(200),d=!0),r.emit("plotly_relayouting",b(f))}function C(){z2e(r),f!==u&&(UG.call("_guiRelayout",r,b(f)),P2e&&r.data&&r._context.showTips&&(qg.notifier(zR(r,"Double-click to zoom back out"),"long"),P2e=!1))}function M(){u={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},f=u}function m(T,B){var F=T/e.xaxis._m,U=B/e.yaxis._m;f={a:u.a-U,b:u.b+(F+U)/2,c:u.c-(F-U)/2};var G=[f.a,f.b,f.c].sort(qg.sorterAsc),j={a:G.indexOf(f.a),b:G.indexOf(f.b),c:G.indexOf(f.c)};G[0]<0&&(G[1]+G[0]/2<0?(G[2]+=G[0]+G[1],G[0]=G[1]=0):(G[2]+=G[0]/2,G[1]+=G[0]/2,G[0]=0),f={a:G[j.a],b:G[j.b],c:G[j.c]},B=(u.a-f.a)*e.yaxis._m,T=(u.c-f.c-u.b+f.b)*e.xaxis._m);var H=Dy(e.x0+T,e.y0+B);e.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",H);var N=Dy(-T,-B);e.clipDefRelative.select("path").attr("transform",N),e.aaxis.range=[f.a,e.sum-f.b-f.c],e.baxis.range=[e.sum-f.a-f.c,f.b],e.caxis.range=[e.sum-f.a-f.b,f.c],e.drawAxes(!1),e._hasClipOnAxisFalse&&e.plotContainer.select(".scatterlayer").selectAll(".trace").call(IR.hideOutsideRangePoints,e),r.emit("plotly_relayouting",b(f))}function P(){UG.call("_guiRelayout",r,b(f))}t.onmousemove=function(T){C2e.hover(r,T,e.id),r._fullLayout._lasthover=t,r._fullLayout._hoversubplot=e.id},t.onmouseout=function(T){r._dragging||k2e.unhover(r,T)},k2e.init(this.dragOptions)};function z2e(e){I2e.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}});var jG=Ae((fhr,q2e)=>{"use strict";var wwt=Fh(),Twt=zc().attributes,Kf=Dd(),Awt=Sc().overrideAll,HG=Su().extendFlat,WG={title:{text:Kf.title.text,font:Kf.title.font},color:Kf.color,tickmode:Kf.minor.tickmode,nticks:HG({},Kf.nticks,{dflt:6,min:1}),tick0:Kf.tick0,dtick:Kf.dtick,tickvals:Kf.tickvals,ticktext:Kf.ticktext,ticks:Kf.ticks,ticklen:Kf.ticklen,tickwidth:Kf.tickwidth,tickcolor:Kf.tickcolor,ticklabelstep:Kf.ticklabelstep,showticklabels:Kf.showticklabels,labelalias:Kf.labelalias,showtickprefix:Kf.showtickprefix,tickprefix:Kf.tickprefix,showticksuffix:Kf.showticksuffix,ticksuffix:Kf.ticksuffix,showexponent:Kf.showexponent,exponentformat:Kf.exponentformat,minexponent:Kf.minexponent,separatethousands:Kf.separatethousands,tickfont:Kf.tickfont,tickangle:Kf.tickangle,tickformat:Kf.tickformat,tickformatstops:Kf.tickformatstops,hoverformat:Kf.hoverformat,showline:HG({},Kf.showline,{dflt:!0}),linecolor:Kf.linecolor,linewidth:Kf.linewidth,showgrid:HG({},Kf.showgrid,{dflt:!0}),gridcolor:Kf.gridcolor,gridwidth:Kf.gridwidth,griddash:Kf.griddash,layer:Kf.layer,min:{valType:"number",dflt:0,min:0}},RR=q2e.exports=Awt({domain:Twt({name:"ternary"}),bgcolor:{valType:"color",dflt:wwt.background},sum:{valType:"number",dflt:1,min:0},aaxis:WG,baxis:WG,caxis:WG},"plot","from-root");RR.uirevision={valType:"any",editType:"none"};RR.aaxis.uirevision=RR.baxis.uirevision=RR.caxis.uirevision={valType:"any",editType:"none"}});var k_=Ae((chr,N2e)=>{"use strict";var Swt=ei(),Mwt=Lf(),Ewt=zc().defaults;N2e.exports=function(t,r,n,i){var a=i.type,o=i.attributes,s=i.handleDefaults,u=i.partition||"x",l=r._subplots[a],f=l.length,c=f&&l[0].replace(/\d+$/,""),h,d;function p(k,E){return Swt.coerce(h,d,o,k,E)}for(var _=0;_{"use strict";var kwt=jl(),Cwt=Lf(),DR=ei(),Lwt=k_(),Pwt=e_(),zwt=t_(),Iwt=S3(),Rwt=bb(),Dwt=eE(),V2e=jG(),U2e=["aaxis","baxis","caxis"];G2e.exports=function(t,r,n){Lwt(t,r,n,{type:"ternary",attributes:V2e,handleDefaults:Fwt,font:r.font,paper_bgcolor:r.paper_bgcolor})};function Fwt(e,t,r,n){var i=r("bgcolor"),a=r("sum");n.bgColor=kwt.combine(i,n.paper_bgcolor);for(var o,s,u,l=0;l=a&&(f.min=0,c.min=0,h.min=0,e.aaxis&&delete e.aaxis.min,e.baxis&&delete e.baxis.min,e.caxis&&delete e.caxis.min)}function Bwt(e,t,r,n){var i=V2e[t._name];function a(d,p){return DR.coerce(e,t,i,d,p)}a("uirevision",n.uirevision),t.type="linear";var o=a("color"),s=o!==i.color.dflt?o:r.font.color,u=t._name,l=u.charAt(0).toUpperCase(),f="Component "+l,c=a("title.text",f);t._hovertitle=c===f?c:l,DR.coerceFont(a,"title.font",r.font,{overrideDflt:{size:DR.bigFont(r.font.size),color:s}}),a("min"),Rwt(e,t,a,"linear"),zwt(e,t,a,"linear"),Pwt(e,t,a,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),Iwt(e,t,a,{outerTicks:!0});var h=a("showticklabels");h&&(DR.coerceFont(a,"tickfont",r.font,{overrideDflt:{color:s}}),a("tickangle"),a("tickformat")),Dwt(e,t,a,{dfltColor:o,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i}),a("hoverformat"),a("layer")}});var W2e=Ae(j0=>{"use strict";var Owt=O2e(),qwt=Rd().getSubplotCalcData,Nwt=ei().counterRegex,UT="ternary";j0.name=UT;var Uwt=j0.attr="subplot";j0.idRoot=UT;j0.idRegex=j0.attrRegex=Nwt(UT);var Vwt=j0.attributes={};Vwt[Uwt]={valType:"subplotid",dflt:"ternary",editType:"calc"};j0.layoutAttributes=jG();j0.supplyLayoutDefaults=H2e();j0.plot=function(t){for(var r=t._fullLayout,n=t.calcdata,i=r._subplots[UT],a=0;a{"use strict";j2e.exports={attributes:OG(),supplyDefaults:v2e(),colorbar:ep(),formatLabels:y2e(),calc:b2e(),plot:T2e(),style:ov().style,styleOnSelect:ov().styleOnSelect,hoverPoints:S2e(),selectPoints:cT(),eventData:E2e(),moduleType:"trace",name:"scatterternary",basePlotModule:W2e(),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}});var Y2e=Ae((vhr,Z2e)=>{"use strict";Z2e.exports=X2e()});var XG=Ae((mhr,J2e)=>{"use strict";var Uh=_E(),VT=Su().extendFlat,K2e=jc().axisHoverFormat;J2e.exports={y:Uh.y,x:Uh.x,x0:Uh.x0,y0:Uh.y0,xhoverformat:K2e("x"),yhoverformat:K2e("y"),name:VT({},Uh.name,{}),orientation:VT({},Uh.orientation,{}),bandwidth:{valType:"number",min:0,editType:"calc"},scalegroup:{valType:"string",dflt:"",editType:"calc"},scalemode:{valType:"enumerated",values:["width","count"],dflt:"width",editType:"calc"},spanmode:{valType:"enumerated",values:["soft","hard","manual"],dflt:"soft",editType:"calc"},span:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:Uh.fillcolor,points:VT({},Uh.boxpoints,{}),jitter:VT({},Uh.jitter,{}),pointpos:VT({},Uh.pointpos,{}),width:VT({},Uh.width,{}),marker:Uh.marker,text:Uh.text,hovertext:Uh.hovertext,hovertemplate:Uh.hovertemplate,hovertemplatefallback:Uh.hovertemplatefallback,quartilemethod:Uh.quartilemethod,box:{visible:{valType:"boolean",dflt:!1,editType:"plot"},width:{valType:"number",min:0,max:1,dflt:.25,editType:"plot"},fillcolor:{valType:"color",editType:"style"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"style"},editType:"plot"},meanline:{visible:{valType:"boolean",dflt:!1,editType:"plot"},color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"plot"},side:{valType:"enumerated",values:["both","positive","negative"],dflt:"both",editType:"calc"},offsetgroup:Uh.offsetgroup,alignmentgroup:Uh.alignmentgroup,selected:Uh.selected,unselected:Uh.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style"},zorder:Uh.zorder}});var KG=Ae((yhr,$2e)=>{"use strict";var ZG=xE(),YG=ei().extendFlat;$2e.exports={violinmode:YG({},ZG.boxmode,{}),violingap:YG({},ZG.boxgap,{}),violingroupgap:YG({},ZG.boxgroupgap,{})}});var iwe=Ae((ghr,rwe)=>{"use strict";var Q2e=ei(),Gwt=jl(),ewe=wE(),twe=XG();rwe.exports=function(t,r,n,i){function a(L,x){return Q2e.coerce(t,r,twe,L,x)}function o(L,x){return Q2e.coerce2(t,r,twe,L,x)}if(ewe.handleSampleDefaults(t,r,a,i),r.visible!==!1){a("bandwidth"),a("side");var s=a("width");s||(a("scalegroup",r.name),a("scalemode"));var u=a("span"),l;Array.isArray(u)&&(l="manual"),a("spanmode",l);var f=a("line.color",(t.marker||{}).color||n),c=a("line.width"),h=a("fillcolor",Gwt.addOpacity(r.line.color,.5));ewe.handlePointsDefaults(t,r,a,{prefix:""});var d=o("box.width"),p=o("box.fillcolor",h),_=o("box.line.color",f),b=o("box.line.width",c),v=a("box.visible",!!(d||p||_||b));v||(r.box={visible:!1});var k=o("meanline.color",f),E=o("meanline.width",c),A=a("meanline.visible",!!(k||E));A||(r.meanline={visible:!1}),a("quartilemethod"),a("zorder")}}});var awe=Ae((_hr,nwe)=>{"use strict";var Hwt=ei(),Wwt=KG(),jwt=XI();nwe.exports=function(t,r,n){function i(a,o){return Hwt.coerce(t,r,Wwt,a,o)}jwt._supply(t,r,n,i,"violin")}});var FR=Ae(s2=>{"use strict";var Xwt=ei(),Zwt={gaussian:function(e){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*e*e)}};s2.makeKDE=function(e,t,r){var n=r.length,i=Zwt.gaussian,a=e.bandwidth,o=1/(n*a);return function(s){for(var u=0,l=0;l{"use strict";var JG=ei(),$G=wu(),Ywt=GV(),owe=FR(),Kwt=rf().BADNUM;swe.exports=function(t,r){var n=Ywt(t,r);if(n[0].t.empty)return n;for(var i=t._fullLayout,a=$G.getFromId(t,r[r.orientation==="h"?"xaxis":"yaxis"]),o=1/0,s=-1/0,u=0,l=0,f=0;f{"use strict";var e3t=YI().setPositionOffset,uwe=["v","h"];fwe.exports=function(t,r){for(var n=t.calcdata,i=r.xaxis,a=r.yaxis,o=0;o{"use strict";var QG=Jl(),eH=ei(),t3t=Mu(),tH=KI(),r3t=kU(),i3t=FR();hwe.exports=function(t,r,n,i){var a=t._context.staticPlot,o=t._fullLayout,s=r.xaxis,u=r.yaxis;function l(f,c){var h=r3t(f,{xaxis:s,yaxis:u,trace:c,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return t3t.smoothopen(h[0],1)}eH.makeTraceGroups(i,n,"trace violins").each(function(f){var c=QG.select(this),h=f[0],d=h.t,p=h.trace;if(p.visible!==!0||d.empty){c.remove();return}var _=d.bPos,b=d.bdPos,v=r[d.valLetter+"axis"],k=r[d.posLetter+"axis"],E=p.side==="both",A=E||p.side==="positive",L=E||p.side==="negative",x=c.selectAll("path.violin").data(eH.identity);x.enter().append("path").style("vector-effect",a?"none":"non-scaling-stroke").attr("class","violin"),x.exit().remove(),x.each(function(U){var G=QG.select(this),j=U.density,H=j.length,N=k.c2l(U.pos+_,!0),W=k.l2p(N),re;if(p.width)re=d.maxKDE/b;else{var ae=o._violinScaleGroupStats[p.scalegroup];re=p.scalemode==="count"?ae.maxKDE/b*(ae.maxCount/U.pts.length):ae.maxKDE/b}var be,ze,Ce,de,te,ke,Ee;if(A){for(ke=new Array(H),de=0;de{"use strict";var pwe=Jl(),GT=jl(),n3t=ov().stylePoints;vwe.exports=function(t){var r=pwe.select(t).selectAll("g.trace.violins");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=n[0].trace,a=pwe.select(this),o=i.box||{},s=o.line||{},u=i.meanline||{},l=u.width;a.selectAll("path.violin").style("stroke-width",i.line.width+"px").call(GT.stroke,i.line.color).call(GT.fill,i.fillcolor),a.selectAll("path.box").style("stroke-width",s.width+"px").call(GT.stroke,s.color).call(GT.fill,o.fillcolor);var f={"stroke-width":l+"px","stroke-dasharray":2*l+"px,"+l+"px"};a.selectAll("path.mean").style(f).call(GT.stroke,u.color),a.selectAll("path.meanline").style(f).call(GT.stroke,u.color),n3t(a,i,t)})}});var xwe=Ae((Shr,_we)=>{"use strict";var a3t=jl(),rH=ei(),o3t=wu(),ywe=ZV(),gwe=FR();_we.exports=function(t,r,n,i,a){a||(a={});var o=a.hoverLayer,s=t.cd,u=s[0].trace,l=u.hoveron,f=l.indexOf("violins")!==-1,c=l.indexOf("kde")!==-1,h=[],d,p;if(f||c){var _=ywe.hoverOnBoxes(t,r,n,i);if(c&&_.length>0){var b=t.xa,v=t.ya,k,E,A,L,x;u.orientation==="h"?(x=r,k="y",A=v,E="x",L=b):(x=n,k="x",A=b,E="y",L=v);var C=s[t.index];if(x>=C.span[0]&&x<=C.span[1]){var M=rH.extendFlat({},t),m=L.c2p(x,!0),P=gwe.getKdeValue(C,u,x),T=gwe.getPositionOnKdePath(C,u,m),B=A._offset,F=A._length;M[k+"0"]=T[0],M[k+"1"]=T[1],M[E+"0"]=M[E+"1"]=m,M[E+"Label"]=E+": "+o3t.hoverLabelText(L,x,u[E+"hoverformat"])+", "+s[0].t.labels.kde+" "+P.toFixed(3);for(var U=0,G=0;G<_.length;G++)if(_[G].attr==="med"){U=G;break}M.spikeDistance=_[U].spikeDistance;var j=k+"Spike";M[j]=_[U][j],_[U].spikeDistance=void 0,_[U][j]=void 0,M.hovertemplate=!1,h.push(M),p={},p[k+"1"]=rH.constrain(B+T[0],B,B+F),p[k+"2"]=rH.constrain(B+T[1],B,B+F),p[E+"1"]=p[E+"2"]=L._offset+m}}f&&(h=h.concat(_))}l.indexOf("points")!==-1&&(d=ywe.hoverOnPoints(t,r,n));var H=o.selectAll(".violinline-"+u.uid).data(p?[0]:[]);return H.enter().append("line").classed("violinline-"+u.uid,!0).attr("stroke-width",1.5),H.exit().remove(),H.attr(p).call(a3t.stroke,t.color),i==="closest"?d?[d]:h:(d&&h.push(d),h)}});var wwe=Ae((Mhr,bwe)=>{"use strict";bwe.exports={attributes:XG(),layoutAttributes:KG(),supplyDefaults:iwe(),crossTraceDefaults:wE().crossTraceDefaults,supplyLayoutDefaults:awe(),calc:lwe(),crossTraceCalc:cwe(),plot:dwe(),style:mwe(),styleOnSelect:ov().styleOnSelect,hoverPoints:xwe(),selectPoints:YV(),moduleType:"trace",name:"violin",basePlotModule:Ah(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{}}});var Awe=Ae((Ehr,Twe)=>{"use strict";Twe.exports=wwe()});var Mwe=Ae((khr,Swe)=>{"use strict";Swe.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}});var nH=Ae((Chr,Lwe)=>{"use strict";var Fc=Ly(),iH=Zc().line,s3t=Gf(),Ewe=jc().axisHoverFormat,{hovertemplateAttrs:l3t,texttemplateAttrs:u3t,templatefallbackAttrs:kwe}=Ff(),Cwe=Mwe(),Ng=Su().extendFlat,f3t=jl();Lwe.exports={x:Fc.x,x0:Fc.x0,dx:Fc.dx,y:Fc.y,y0:Fc.y0,dy:Fc.dy,xperiod:Fc.xperiod,yperiod:Fc.yperiod,xperiod0:Fc.xperiod0,yperiod0:Fc.yperiod0,xperiodalignment:Fc.xperiodalignment,yperiodalignment:Fc.yperiodalignment,xhoverformat:Ewe("x"),yhoverformat:Ewe("y"),hovertext:Fc.hovertext,hovertemplate:l3t({},{keys:Cwe.eventDataKeys}),hovertemplatefallback:kwe(),hoverinfo:Ng({},s3t.hoverinfo,{flags:["name","x","y","text","percent initial","percent previous","percent total"]}),textinfo:{valType:"flaglist",flags:["label","text","percent initial","percent previous","percent total","value"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:u3t({editType:"plot"},{keys:Cwe.eventDataKeys.concat(["label","value"])}),texttemplatefallback:kwe({editType:"plot"}),text:Fc.text,textposition:Fc.textposition,insidetextanchor:Ng({},Fc.insidetextanchor,{dflt:"middle"}),textangle:Ng({},Fc.textangle,{dflt:0}),textfont:Fc.textfont,insidetextfont:Fc.insidetextfont,outsidetextfont:Fc.outsidetextfont,constraintext:Fc.constraintext,cliponaxis:Fc.cliponaxis,orientation:Ng({},Fc.orientation,{}),offset:Ng({},Fc.offset,{arrayOk:!1}),width:Ng({},Fc.width,{arrayOk:!1}),marker:c3t(),connector:{fillcolor:{valType:"color",editType:"style"},line:{color:Ng({},iH.color,{dflt:f3t.defaultLine}),width:Ng({},iH.width,{dflt:0,editType:"plot"}),dash:iH.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:Fc.offsetgroup,alignmentgroup:Fc.alignmentgroup,zorder:Fc.zorder};function c3t(){var e=Ng({},Fc.marker);return delete e.pattern,delete e.cornerradius,e}});var aH=Ae((Lhr,Pwe)=>{"use strict";Pwe.exports={funnelmode:{valType:"enumerated",values:["stack","group","overlay"],dflt:"stack",editType:"calc"},funnelgap:{valType:"number",min:0,max:1,editType:"calc"},funnelgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var sH=Ae((Phr,Iwe)=>{"use strict";var BR=ei(),h3t=Hb(),d3t=r0().handleText,p3t=Q3(),v3t=Pm(),zwe=nH(),oH=jl();function m3t(e,t,r,n){function i(c,h){return BR.coerce(e,t,zwe,c,h)}var a=p3t(e,t,n,i);if(!a){t.visible=!1;return}v3t(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("orientation",t.y&&!t.x?"v":"h"),i("offset"),i("width");var o=i("text");i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var s=i("textposition");d3t(e,t,n,i,s,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&!t.texttemplate&&i("textinfo",BR.isArrayOrTypedArray(o)?"text+value":"value");var u=i("marker.color",r);i("marker.line.color",oH.defaultLine),i("marker.line.width");var l=i("connector.visible");if(l){i("connector.fillcolor",y3t(u));var f=i("connector.line.width");f&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function y3t(e){var t=BR.isArrayOrTypedArray(e)?"#000":e;return oH.addOpacity(t,.5*oH.opacity(t))}function g3t(e,t){var r,n;function i(o){return BR.coerce(n._input,n,zwe,o)}for(var a=0;a{"use strict";var _3t=ei(),x3t=aH();Rwe.exports=function(e,t,r){var n=!1;function i(s,u){return _3t.coerce(e,t,x3t,s,u)}for(var a=0;a{"use strict";var HT=ei();Fwe.exports=function(t,r){for(var n=0;n{"use strict";var Owe=wu(),qwe=Im(),b3t=Bwe(),w3t=F0(),FE=rf().BADNUM;Nwe.exports=function(t,r){var n=Owe.getFromId(t,r.xaxis||"x"),i=Owe.getFromId(t,r.yaxis||"y"),a,o,s,u,l,f,c,h;r.orientation==="h"?(a=n.makeCalcdata(r,"x"),s=i.makeCalcdata(r,"y"),u=qwe(r,i,"y",s),l=!!r.yperiodalignment,f="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),u=qwe(r,n,"x",s),l=!!r.xperiodalignment,f="x"),o=u.vals;var d=Math.min(o.length,a.length),p=new Array(d);for(r._base=[],c=0;c{"use strict";var Vwe=Wb().setGroupPositions;Gwe.exports=function(t,r){var n=t._fullLayout,i=t._fullData,a=t.calcdata,o=r.xaxis,s=r.yaxis,u=[],l=[],f=[],c,h;for(h=0;h{"use strict";var OR=Jl(),L_=ei(),Wwe=Mu(),C_=rf().BADNUM,T3t=n2(),A3t=Tp().clearMinTextSize;Xwe.exports=function(t,r,n,i){var a=t._fullLayout;A3t("funnel",a),S3t(t,r,n,i),M3t(t,r,n,i),T3t.plot(t,r,n,i,{mode:a.funnelmode,norm:a.funnelmode,gap:a.funnelgap,groupgap:a.funnelgroupgap})};function S3t(e,t,r,n){var i=t.xaxis,a=t.yaxis;L_.makeTraceGroups(n,r,"trace bars").each(function(o){var s=OR.select(this),u=o[0].trace,l=L_.ensureSingle(s,"g","regions");if(!u.connector||!u.connector.visible){l.remove();return}var f=u.orientation==="h",c=l.selectAll("g.region").data(L_.identity);c.enter().append("g").classed("region",!0),c.exit().remove();var h=c.size();c.each(function(d,p){if(!(p!==h-1&&!d.cNext)){var _=jwe(d,i,a,f),b=_[0],v=_[1],k="";b[0]!==C_&&v[0]!==C_&&b[1]!==C_&&v[1]!==C_&&b[2]!==C_&&v[2]!==C_&&b[3]!==C_&&v[3]!==C_&&(f?k+="M"+b[0]+","+v[1]+"L"+b[2]+","+v[2]+"H"+b[3]+"L"+b[1]+","+v[1]+"Z":k+="M"+b[1]+","+v[1]+"L"+b[2]+","+v[3]+"V"+v[2]+"L"+b[1]+","+v[0]+"Z"),k===""&&(k="M0,0Z"),L_.ensureSingle(OR.select(this),"path").attr("d",k).call(Wwe.setClipUrl,t.layerClipId,e)}})})}function M3t(e,t,r,n){var i=t.xaxis,a=t.yaxis;L_.makeTraceGroups(n,r,"trace bars").each(function(o){var s=OR.select(this),u=o[0].trace,l=L_.ensureSingle(s,"g","lines");if(!u.connector||!u.connector.visible||!u.connector.line.width){l.remove();return}var f=u.orientation==="h",c=l.selectAll("g.line").data(L_.identity);c.enter().append("g").classed("line",!0),c.exit().remove();var h=c.size();c.each(function(d,p){if(!(p!==h-1&&!d.cNext)){var _=jwe(d,i,a,f),b=_[0],v=_[1],k="";b[3]!==void 0&&v[3]!==void 0&&(f?(k+="M"+b[0]+","+v[1]+"L"+b[2]+","+v[2],k+="M"+b[1]+","+v[1]+"L"+b[3]+","+v[2]):(k+="M"+b[1]+","+v[1]+"L"+b[2]+","+v[3],k+="M"+b[1]+","+v[0]+"L"+b[2]+","+v[2])),k===""&&(k="M0,0Z"),L_.ensureSingle(OR.select(this),"path").attr("d",k).call(Wwe.setClipUrl,t.layerClipId,e)}})})}function jwe(e,t,r,n){var i=[],a=[],o=n?t:r,s=n?r:t;return i[0]=o.c2p(e.s0,!0),a[0]=s.c2p(e.p0,!0),i[1]=o.c2p(e.s1,!0),a[1]=s.c2p(e.p1,!0),i[2]=o.c2p(e.nextS0,!0),a[2]=s.c2p(e.nextP0,!0),i[3]=o.c2p(e.nextS1,!0),a[3]=s.c2p(e.nextP1,!0),n?[i,a]:[a,i]}});var Jwe=Ae((Bhr,Kwe)=>{"use strict";var BE=Jl(),Ywe=Mu(),uH=jl(),E3t=N1().DESELECTDIM,k3t=N0(),C3t=Tp().resizeText,L3t=k3t.styleTextPoints;function P3t(e,t,r){var n=r||BE.select(e).selectAll('g[class^="funnellayer"]').selectAll("g.trace");C3t(e,n,"funnel"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=BE.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var u=o.marker;BE.select(this).call(uH.fill,s.mc||u.color).call(uH.stroke,s.mlc||u.line.color).call(Ywe.dashLine,u.line.dash,s.mlw||u.line.width).style("opacity",o.selectedpoints&&!s.selected?E3t:1)}}),L3t(a,o,e),a.selectAll(".regions").each(function(){BE.select(this).selectAll("path").style("stroke-width",0).call(uH.fill,o.connector.fillcolor)}),a.selectAll(".lines").each(function(){var s=o.connector.line;Ywe.lineGroupStyle(BE.select(this).selectAll("path"),s.width,s.color,s.dash)})})}Kwe.exports={style:P3t}});var e3e=Ae((Ohr,Qwe)=>{"use strict";var $we=jl().opacity,z3t=MT().hoverOnBars,fH=ei().formatPercent;Qwe.exports=function(t,r,n,i,a){var o=z3t(t,r,n,i,a);if(o){var s=o.cd,u=s[0].trace,l=u.orientation==="h",f=o.index,c=s[f],h=l?"x":"y";o[h+"LabelVal"]=c.s,o.percentInitial=c.begR,o.percentInitialLabel=fH(c.begR,1),o.percentPrevious=c.difR,o.percentPreviousLabel=fH(c.difR,1),o.percentTotal=c.sumR,o.percentTotalLabel=fH(c.sumR,1);var d=c.hi||u.hoverinfo,p=[];if(d&&d!=="none"&&d!=="skip"){var _=d==="all",b=d.split("+"),v=function(k){return _||b.indexOf(k)!==-1};v("percent initial")&&p.push(o.percentInitialLabel+" of initial"),v("percent previous")&&p.push(o.percentPreviousLabel+" of previous"),v("percent total")&&p.push(o.percentTotalLabel+" of total")}return o.extraText=p.join("
"),o.color=I3t(u,c),[o]}};function I3t(e,t){var r=e.marker,n=t.mc||r.color,i=t.mlc||r.line.color,a=t.mlw||r.line.width;if($we(n))return n;if($we(i)&&a)return i}});var r3e=Ae((qhr,t3e)=>{"use strict";t3e.exports=function(t,r){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"percentInitial"in r&&(t.percentInitial=r.percentInitial),"percentPrevious"in r&&(t.percentPrevious=r.percentPrevious),"percentTotal"in r&&(t.percentTotal=r.percentTotal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var n3e=Ae((Nhr,i3e)=>{"use strict";i3e.exports={attributes:nH(),layoutAttributes:aH(),supplyDefaults:sH().supplyDefaults,crossTraceDefaults:sH().crossTraceDefaults,supplyLayoutDefaults:Dwe(),calc:Uwe(),crossTraceCalc:Hwe(),plot:Zwe(),style:Jwe().style,hoverPoints:e3e(),eventData:r3e(),selectPoints:ET(),moduleType:"trace",name:"funnel",basePlotModule:Ah(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var o3e=Ae((Uhr,a3e)=>{"use strict";a3e.exports=n3e()});var l3e=Ae((Vhr,s3e)=>{"use strict";s3e.exports={eventDataKeys:["initial","delta","final"]}});var dH=Ae((Ghr,h3e)=>{"use strict";var Ec=Ly(),cH=Zc().line,R3t=Gf(),u3e=jc().axisHoverFormat,{hovertemplateAttrs:D3t,texttemplateAttrs:F3t,templatefallbackAttrs:f3e}=Ff(),c3e=l3e(),WT=Su().extendFlat,B3t=jl();function hH(e){return{marker:{color:WT({},Ec.marker.color,{arrayOk:!1,editType:"style"}),line:{color:WT({},Ec.marker.line.color,{arrayOk:!1,editType:"style"}),width:WT({},Ec.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}h3e.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:Ec.x,x0:Ec.x0,dx:Ec.dx,y:Ec.y,y0:Ec.y0,dy:Ec.dy,xperiod:Ec.xperiod,yperiod:Ec.yperiod,xperiod0:Ec.xperiod0,yperiod0:Ec.yperiod0,xperiodalignment:Ec.xperiodalignment,yperiodalignment:Ec.yperiodalignment,xhoverformat:u3e("x"),yhoverformat:u3e("y"),hovertext:Ec.hovertext,hovertemplate:D3t({},{keys:c3e.eventDataKeys}),hovertemplatefallback:f3e(),hoverinfo:WT({},R3t.hoverinfo,{flags:["name","x","y","text","initial","delta","final"]}),textinfo:{valType:"flaglist",flags:["label","text","initial","delta","final"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:F3t({editType:"plot"},{keys:c3e.eventDataKeys.concat(["label"])}),texttemplatefallback:f3e({editType:"plot"}),text:Ec.text,textposition:Ec.textposition,insidetextanchor:Ec.insidetextanchor,textangle:Ec.textangle,textfont:Ec.textfont,insidetextfont:Ec.insidetextfont,outsidetextfont:Ec.outsidetextfont,constraintext:Ec.constraintext,cliponaxis:Ec.cliponaxis,orientation:Ec.orientation,offset:Ec.offset,width:Ec.width,increasing:hH("increasing"),decreasing:hH("decreasing"),totals:hH("intermediate sums and total"),connector:{line:{color:WT({},cH.color,{dflt:B3t.defaultLine}),width:WT({},cH.width,{editType:"plot"}),dash:cH.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:Ec.offsetgroup,alignmentgroup:Ec.alignmentgroup,zorder:Ec.zorder}});var pH=Ae((Hhr,d3e)=>{"use strict";d3e.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc"},waterfallgap:{valType:"number",min:0,max:1,editType:"calc"},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var jT=Ae((Whr,p3e)=>{"use strict";p3e.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}});var mH=Ae((jhr,g3e)=>{"use strict";var v3e=ei(),O3t=Hb(),q3t=r0().handleText,N3t=Q3(),U3t=Pm(),m3e=dH(),V3t=jl(),y3e=jT(),G3t=y3e.INCREASING.COLOR,H3t=y3e.DECREASING.COLOR,W3t="#4499FF";function vH(e,t,r){e(t+".marker.color",r),e(t+".marker.line.color",V3t.defaultLine),e(t+".marker.line.width")}function j3t(e,t,r,n){function i(l,f){return v3e.coerce(e,t,m3e,l,f)}var a=N3t(e,t,n,i);if(!a){t.visible=!1;return}U3t(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("measure"),i("orientation",t.x&&!t.y?"h":"v"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var o=i("textposition");q3t(e,t,n,i,o,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&(i("texttemplate"),i("texttemplatefallback"),t.texttemplate||i("textinfo")),vH(i,"increasing",G3t),vH(i,"decreasing",H3t),vH(i,"totals",W3t);var s=i("connector.visible");if(s){i("connector.mode");var u=i("connector.line.width");u&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function X3t(e,t){var r,n;function i(o){return v3e.coerce(n._input,n,m3e,o)}if(t.waterfallmode==="group")for(var a=0;a{"use strict";var Z3t=ei(),Y3t=pH();_3e.exports=function(e,t,r){var n=!1;function i(s,u){return Z3t.coerce(e,t,Y3t,s,u)}for(var a=0;a{"use strict";var b3e=wu(),w3e=Im(),T3e=ei().mergeArray,K3t=F0(),A3e=rf().BADNUM;function yH(e){return e==="a"||e==="absolute"}function gH(e){return e==="t"||e==="total"}S3e.exports=function(t,r){var n=b3e.getFromId(t,r.xaxis||"x"),i=b3e.getFromId(t,r.yaxis||"y"),a,o,s,u,l,f;r.orientation==="h"?(a=n.makeCalcdata(r,"x"),s=i.makeCalcdata(r,"y"),u=w3e(r,i,"y",s),l=!!r.yperiodalignment,f="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),u=w3e(r,n,"x",s),l=!!r.xperiodalignment,f="x"),o=u.vals;for(var c=Math.min(o.length,a.length),h=new Array(c),d=0,p,_=!1,b=0;b{"use strict";var E3e=Wb().setGroupPositions;k3e.exports=function(t,r){var n=t._fullLayout,i=t._fullData,a=t.calcdata,o=r.xaxis,s=r.yaxis,u=[],l=[],f=[],c,h;for(h=0;h{"use strict";var L3e=Jl(),qR=ei(),J3t=Mu(),XT=rf().BADNUM,$3t=n2(),Q3t=Tp().clearMinTextSize;P3e.exports=function(t,r,n,i){var a=t._fullLayout;Q3t("waterfall",a),$3t.plot(t,r,n,i,{mode:a.waterfallmode,norm:a.waterfallmode,gap:a.waterfallgap,groupgap:a.waterfallgroupgap}),eTt(t,r,n,i)};function eTt(e,t,r,n){var i=t.xaxis,a=t.yaxis;qR.makeTraceGroups(n,r,"trace bars").each(function(o){var s=L3e.select(this),u=o[0].trace,l=qR.ensureSingle(s,"g","lines");if(!u.connector||!u.connector.visible){l.remove();return}var f=u.orientation==="h",c=u.connector.mode,h=l.selectAll("g.line").data(qR.identity);h.enter().append("g").classed("line",!0),h.exit().remove();var d=h.size();h.each(function(p,_){if(!(_!==d-1&&!p.cNext)){var b=tTt(p,i,a,f),v=b[0],k=b[1],E="";v[0]!==XT&&k[0]!==XT&&v[1]!==XT&&k[1]!==XT&&(c==="spanning"&&!p.isSum&&_>0&&(f?E+="M"+v[0]+","+k[1]+"V"+k[0]:E+="M"+v[1]+","+k[0]+"H"+v[0]),c!=="between"&&(p.isSum||_{"use strict";var NR=Jl(),I3e=Mu(),R3e=jl(),rTt=N1().DESELECTDIM,iTt=N0(),nTt=Tp().resizeText,aTt=iTt.styleTextPoints;function oTt(e,t,r){var n=r||NR.select(e).selectAll('g[class^="waterfalllayer"]').selectAll("g.trace");nTt(e,n,"waterfall"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=NR.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var u=o[s.dir].marker;NR.select(this).call(R3e.fill,u.color).call(R3e.stroke,u.line.color).call(I3e.dashLine,u.line.dash,u.line.width).style("opacity",o.selectedpoints&&!s.selected?rTt:1)}}),aTt(a,o,e),a.selectAll(".lines").each(function(){var s=o.connector.line;I3e.lineGroupStyle(NR.select(this).selectAll("path"),s.width,s.color,s.dash)})})}D3e.exports={style:oTt}});var U3e=Ae(($hr,N3e)=>{"use strict";var sTt=wu().hoverLabelText,B3e=jl().opacity,lTt=MT().hoverOnBars,O3e=jT(),q3e={increasing:O3e.INCREASING.SYMBOL,decreasing:O3e.DECREASING.SYMBOL};N3e.exports=function(t,r,n,i,a){var o=lTt(t,r,n,i,a);if(!o)return;var s=o.cd,u=s[0].trace,l=u.orientation==="h",f=l?"x":"y",c=l?t.xa:t.ya;function h(x){return sTt(c,x,u[f+"hoverformat"])}var d=o.index,p=s[d],_=p.isSum?p.b+p.s:p.rawS;o.initial=p.b+p.s-_,o.delta=_,o.final=o.initial+o.delta;var b=h(Math.abs(o.delta));o.deltaLabel=_<0?"("+b+")":b,o.finalLabel=h(o.final),o.initialLabel=h(o.initial);var v=p.hi||u.hoverinfo,k=[];if(v&&v!=="none"&&v!=="skip"){var E=v==="all",A=v.split("+"),L=function(x){return E||A.indexOf(x)!==-1};p.isSum||(L("final")&&(l?!L("x"):!L("y"))&&k.push(o.finalLabel),L("delta")&&(_<0?k.push(o.deltaLabel+" "+q3e.decreasing):k.push(o.deltaLabel+" "+q3e.increasing)),L("initial")&&k.push("Initial: "+o.initialLabel))}return k.length&&(o.extraText=k.join("
")),o.color=uTt(u,p),[o]};function uTt(e,t){var r=e[t.dir].marker,n=r.color,i=r.line.color,a=r.line.width;if(B3e(n))return n;if(B3e(i)&&a)return i}});var G3e=Ae((Qhr,V3e)=>{"use strict";V3e.exports=function(t,r){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"initial"in r&&(t.initial=r.initial),"delta"in r&&(t.delta=r.delta),"final"in r&&(t.final=r.final),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var W3e=Ae((edr,H3e)=>{"use strict";H3e.exports={attributes:dH(),layoutAttributes:pH(),supplyDefaults:mH().supplyDefaults,crossTraceDefaults:mH().crossTraceDefaults,supplyLayoutDefaults:x3e(),calc:M3e(),crossTraceCalc:C3e(),plot:z3e(),style:F3e().style,hoverPoints:U3e(),eventData:G3e(),selectPoints:ET(),moduleType:"trace",name:"waterfall",basePlotModule:Ah(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var X3e=Ae((tdr,j3e)=>{"use strict";j3e.exports=W3e()});var ZT=Ae((rdr,Z3e)=>{"use strict";Z3e.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(e){return e.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(e){var t=e.slice(0,3);return t[1]=t[1]+"%",t[2]=t[2]+"%",t},suffix:["\xB0","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(e){var t=e.slice(0,4);return t[1]=t[1]+"%",t[2]=t[2]+"%",t},suffix:["\xB0","%","%",""]}}}});var _H=Ae((idr,K3e)=>{"use strict";var fTt=Gf(),cTt=Zc().zorder,{hovertemplateAttrs:hTt,templatefallbackAttrs:dTt}=Ff(),Y3e=Su().extendFlat,pTt=ZT().colormodel,qE=["rgb","rgba","rgba256","hsl","hsla"],vTt=[],mTt=[];for(YT=0;YT{"use strict";var yTt=ei(),gTt=_H(),J3e=ZT(),_Tt=Pg().IMAGE_URL_PREFIX;$3e.exports=function(t,r){function n(o,s){return yTt.coerce(t,r,gTt,o,s)}n("source"),r.source&&!r.source.match(_Tt)&&delete r.source,r._hasSource=!!r.source;var i=n("z");if(r._hasZ=!(i===void 0||!i.length||!i[0]||!i[0].length),!r._hasZ&&!r._hasSource){r.visible=!1;return}n("x0"),n("y0"),n("dx"),n("dy");var a;r._hasZ?(n("colormodel","rgb"),a=J3e.colormodel[r.colormodel],n("zmin",a.zminDflt||a.min),n("zmax",a.zmaxDflt||a.max)):r._hasSource&&(r.colormodel="rgba256",a=J3e.colormodel[r.colormodel],r.zmin=a.zminDflt,r.zmax=a.zmaxDflt),n("zsmooth"),n("text"),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback"),r._length=null,n("zorder")}});var Ug=Ae((adr,xH)=>{typeof Object.create=="function"?xH.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:xH.exports=function(t,r){if(r){t.super_=r;var n=function(){};n.prototype=r.prototype,t.prototype=new n,t.prototype.constructor=t}}});var bH=Ae((odr,eTe)=>{eTe.exports=vb().EventEmitter});var iTe=Ae(UR=>{"use strict";UR.byteLength=bTt;UR.toByteArray=TTt;UR.fromByteArray=MTt;var By=[],X0=[],xTt=typeof Uint8Array!="undefined"?Uint8Array:Array,wH="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(l2=0,tTe=wH.length;l20)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");r===-1&&(r=t);var n=r===t?0:4-r%4;return[r,n]}function bTt(e){var t=rTe(e),r=t[0],n=t[1];return(r+n)*3/4-n}function wTt(e,t,r){return(t+r)*3/4-r}function TTt(e){var t,r=rTe(e),n=r[0],i=r[1],a=new xTt(wTt(e,n,i)),o=0,s=i>0?n-4:n,u;for(u=0;u>16&255,a[o++]=t>>8&255,a[o++]=t&255;return i===2&&(t=X0[e.charCodeAt(u)]<<2|X0[e.charCodeAt(u+1)]>>4,a[o++]=t&255),i===1&&(t=X0[e.charCodeAt(u)]<<10|X0[e.charCodeAt(u+1)]<<4|X0[e.charCodeAt(u+2)]>>2,a[o++]=t>>8&255,a[o++]=t&255),a}function ATt(e){return By[e>>18&63]+By[e>>12&63]+By[e>>6&63]+By[e&63]}function STt(e,t,r){for(var n,i=[],a=t;as?s:o+a));return n===1?(t=e[r-1],i.push(By[t>>2]+By[t<<4&63]+"==")):n===2&&(t=(e[r-2]<<8)+e[r-1],i.push(By[t>>10]+By[t>>4&63]+By[t<<2&63]+"=")),i.join("")}});var nTe=Ae(TH=>{TH.read=function(e,t,r,n,i){var a,o,s=i*8-n-1,u=(1<>1,f=-7,c=r?i-1:0,h=r?-1:1,d=e[t+c];for(c+=h,a=d&(1<<-f)-1,d>>=-f,f+=s;f>0;a=a*256+e[t+c],c+=h,f-=8);for(o=a&(1<<-f)-1,a>>=-f,f+=n;f>0;o=o*256+e[t+c],c+=h,f-=8);if(a===0)a=1-l;else{if(a===u)return o?NaN:(d?-1:1)*(1/0);o=o+Math.pow(2,n),a=a-l}return(d?-1:1)*o*Math.pow(2,a-n)};TH.write=function(e,t,r,n,i,a){var o,s,u,l=a*8-i-1,f=(1<>1,h=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:a-1,p=n?1:-1,_=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=f):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),o+c>=1?t+=h/u:t+=h*Math.pow(2,1-c),t*u>=2&&(o++,u/=2),o+c>=f?(s=0,o=f):o+c>=1?(s=(t*u-1)*Math.pow(2,i),o=o+c):(s=t*Math.pow(2,c-1)*Math.pow(2,i),o=0));i>=8;e[r+d]=s&255,d+=p,s/=256,i-=8);for(o=o<0;e[r+d]=o&255,d+=p,o/=256,l-=8);e[r+d-p]|=_*128}});var f2=Ae(QT=>{"use strict";var AH=iTe(),JT=nTe(),aTe=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;QT.Buffer=ol;QT.SlowBuffer=zTt;QT.INSPECT_MAX_BYTES=50;var VR=2147483647;QT.kMaxLength=VR;ol.TYPED_ARRAY_SUPPORT=ETt();!ol.TYPED_ARRAY_SUPPORT&&typeof console!="undefined"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function ETt(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch(e){return!1}}Object.defineProperty(ol.prototype,"parent",{enumerable:!0,get:function(){if(ol.isBuffer(this))return this.buffer}});Object.defineProperty(ol.prototype,"offset",{enumerable:!0,get:function(){if(ol.isBuffer(this))return this.byteOffset}});function Vg(e){if(e>VR)throw new RangeError('The value "'+e+'" is invalid for option "size"');let t=new Uint8Array(e);return Object.setPrototypeOf(t,ol.prototype),t}function ol(e,t,r){if(typeof e=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return kH(e)}return uTe(e,t,r)}ol.poolSize=8192;function uTe(e,t,r){if(typeof e=="string")return CTt(e,t);if(ArrayBuffer.isView(e))return LTt(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(Oy(e,ArrayBuffer)||e&&Oy(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(Oy(e,SharedArrayBuffer)||e&&Oy(e.buffer,SharedArrayBuffer)))return MH(e,t,r);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=e.valueOf&&e.valueOf();if(n!=null&&n!==e)return ol.from(n,t,r);let i=PTt(e);if(i)return i;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return ol.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}ol.from=function(e,t,r){return uTe(e,t,r)};Object.setPrototypeOf(ol.prototype,Uint8Array.prototype);Object.setPrototypeOf(ol,Uint8Array);function fTe(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function kTt(e,t,r){return fTe(e),e<=0?Vg(e):t!==void 0?typeof r=="string"?Vg(e).fill(t,r):Vg(e).fill(t):Vg(e)}ol.alloc=function(e,t,r){return kTt(e,t,r)};function kH(e){return fTe(e),Vg(e<0?0:CH(e)|0)}ol.allocUnsafe=function(e){return kH(e)};ol.allocUnsafeSlow=function(e){return kH(e)};function CTt(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!ol.isEncoding(t))throw new TypeError("Unknown encoding: "+t);let r=cTe(e,t)|0,n=Vg(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}function SH(e){let t=e.length<0?0:CH(e.length)|0,r=Vg(t);for(let n=0;n=VR)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+VR.toString(16)+" bytes");return e|0}function zTt(e){return+e!=e&&(e=0),ol.alloc(+e)}ol.isBuffer=function(t){return t!=null&&t._isBuffer===!0&&t!==ol.prototype};ol.compare=function(t,r){if(Oy(t,Uint8Array)&&(t=ol.from(t,t.offset,t.byteLength)),Oy(r,Uint8Array)&&(r=ol.from(r,r.offset,r.byteLength)),!ol.isBuffer(t)||!ol.isBuffer(r))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===r)return 0;let n=t.length,i=r.length;for(let a=0,o=Math.min(n,i);ai.length?(ol.isBuffer(o)||(o=ol.from(o)),o.copy(i,a)):Uint8Array.prototype.set.call(i,o,a);else if(ol.isBuffer(o))o.copy(i,a);else throw new TypeError('"list" argument must be an Array of Buffers');a+=o.length}return i};function cTe(e,t){if(ol.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||Oy(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let r=e.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return EH(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return xTe(e).length;default:if(i)return n?-1:EH(e).length;t=(""+t).toLowerCase(),i=!0}}ol.byteLength=cTe;function ITt(e,t,r){let n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,t>>>=0,r<=t))return"";for(e||(e="utf8");;)switch(e){case"hex":return GTt(this,t,r);case"utf8":case"utf-8":return dTe(this,t,r);case"ascii":return UTt(this,t,r);case"latin1":case"binary":return VTt(this,t,r);case"base64":return qTt(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return HTt(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}ol.prototype._isBuffer=!0;function u2(e,t,r){let n=e[t];e[t]=e[r],e[r]=n}ol.prototype.swap16=function(){let t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let r=0;rr&&(t+=" ... "),""};aTe&&(ol.prototype[aTe]=ol.prototype.inspect);ol.prototype.compare=function(t,r,n,i,a){if(Oy(t,Uint8Array)&&(t=ol.from(t,t.offset,t.byteLength)),!ol.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(r===void 0&&(r=0),n===void 0&&(n=t?t.length:0),i===void 0&&(i=0),a===void 0&&(a=this.length),r<0||n>t.length||i<0||a>this.length)throw new RangeError("out of range index");if(i>=a&&r>=n)return 0;if(i>=a)return-1;if(r>=n)return 1;if(r>>>=0,n>>>=0,i>>>=0,a>>>=0,this===t)return 0;let o=a-i,s=n-r,u=Math.min(o,s),l=this.slice(i,a),f=t.slice(r,n);for(let c=0;c2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,PH(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof t=="string"&&(t=ol.from(t,n)),ol.isBuffer(t))return t.length===0?-1:oTe(e,t,r,n,i);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):oTe(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function oTe(e,t,r,n,i){let a=1,o=e.length,s=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(e.length<2||t.length<2)return-1;a=2,o/=2,s/=2,r/=2}function u(f,c){return a===1?f[c]:f.readUInt16BE(c*a)}let l;if(i){let f=-1;for(l=r;lo&&(r=o-s),l=r;l>=0;l--){let f=!0;for(let c=0;ci&&(n=i)):n=i;let a=t.length;n>a/2&&(n=a/2);let o;for(o=0;o>>0,isFinite(n)?(n=n>>>0,i===void 0&&(i="utf8")):(i=n,n=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let a=this.length-r;if((n===void 0||n>a)&&(n=a),t.length>0&&(n<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");let o=!1;for(;;)switch(i){case"hex":return RTt(this,t,r,n);case"utf8":case"utf-8":return DTt(this,t,r,n);case"ascii":case"latin1":case"binary":return FTt(this,t,r,n);case"base64":return BTt(this,t,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return OTt(this,t,r,n);default:if(o)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),o=!0}};ol.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function qTt(e,t,r){return t===0&&r===e.length?AH.fromByteArray(e):AH.fromByteArray(e.slice(t,r))}function dTe(e,t,r){r=Math.min(e.length,r);let n=[],i=t;for(;i239?4:a>223?3:a>191?2:1;if(i+s<=r){let u,l,f,c;switch(s){case 1:a<128&&(o=a);break;case 2:u=e[i+1],(u&192)===128&&(c=(a&31)<<6|u&63,c>127&&(o=c));break;case 3:u=e[i+1],l=e[i+2],(u&192)===128&&(l&192)===128&&(c=(a&15)<<12|(u&63)<<6|l&63,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:u=e[i+1],l=e[i+2],f=e[i+3],(u&192)===128&&(l&192)===128&&(f&192)===128&&(c=(a&15)<<18|(u&63)<<12|(l&63)<<6|f&63,c>65535&&c<1114112&&(o=c))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),i+=s}return NTt(n)}var sTe=4096;function NTt(e){let t=e.length;if(t<=sTe)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn)&&(r=n);let i="";for(let a=t;an&&(t=n),r<0?(r+=n,r<0&&(r=0)):r>n&&(r=n),rr)throw new RangeError("Trying to access beyond buffer length")}ol.prototype.readUintLE=ol.prototype.readUIntLE=function(t,r,n){t=t>>>0,r=r>>>0,n||rp(t,r,this.length);let i=this[t],a=1,o=0;for(;++o>>0,r=r>>>0,n||rp(t,r,this.length);let i=this[t+--r],a=1;for(;r>0&&(a*=256);)i+=this[t+--r]*a;return i};ol.prototype.readUint8=ol.prototype.readUInt8=function(t,r){return t=t>>>0,r||rp(t,1,this.length),this[t]};ol.prototype.readUint16LE=ol.prototype.readUInt16LE=function(t,r){return t=t>>>0,r||rp(t,2,this.length),this[t]|this[t+1]<<8};ol.prototype.readUint16BE=ol.prototype.readUInt16BE=function(t,r){return t=t>>>0,r||rp(t,2,this.length),this[t]<<8|this[t+1]};ol.prototype.readUint32LE=ol.prototype.readUInt32LE=function(t,r){return t=t>>>0,r||rp(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+this[t+3]*16777216};ol.prototype.readUint32BE=ol.prototype.readUInt32BE=function(t,r){return t=t>>>0,r||rp(t,4,this.length),this[t]*16777216+(this[t+1]<<16|this[t+2]<<8|this[t+3])};ol.prototype.readBigUInt64LE=P_(function(t){t=t>>>0,$T(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&NE(t,this.length-8);let i=r+this[++t]*2**8+this[++t]*2**16+this[++t]*2**24,a=this[++t]+this[++t]*2**8+this[++t]*2**16+n*2**24;return BigInt(i)+(BigInt(a)<>>0,$T(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&NE(t,this.length-8);let i=r*2**24+this[++t]*2**16+this[++t]*2**8+this[++t],a=this[++t]*2**24+this[++t]*2**16+this[++t]*2**8+n;return(BigInt(i)<>>0,r=r>>>0,n||rp(t,r,this.length);let i=this[t],a=1,o=0;for(;++o=a&&(i-=Math.pow(2,8*r)),i};ol.prototype.readIntBE=function(t,r,n){t=t>>>0,r=r>>>0,n||rp(t,r,this.length);let i=r,a=1,o=this[t+--i];for(;i>0&&(a*=256);)o+=this[t+--i]*a;return a*=128,o>=a&&(o-=Math.pow(2,8*r)),o};ol.prototype.readInt8=function(t,r){return t=t>>>0,r||rp(t,1,this.length),this[t]&128?(255-this[t]+1)*-1:this[t]};ol.prototype.readInt16LE=function(t,r){t=t>>>0,r||rp(t,2,this.length);let n=this[t]|this[t+1]<<8;return n&32768?n|4294901760:n};ol.prototype.readInt16BE=function(t,r){t=t>>>0,r||rp(t,2,this.length);let n=this[t+1]|this[t]<<8;return n&32768?n|4294901760:n};ol.prototype.readInt32LE=function(t,r){return t=t>>>0,r||rp(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24};ol.prototype.readInt32BE=function(t,r){return t=t>>>0,r||rp(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]};ol.prototype.readBigInt64LE=P_(function(t){t=t>>>0,$T(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&NE(t,this.length-8);let i=this[t+4]+this[t+5]*2**8+this[t+6]*2**16+(n<<24);return(BigInt(i)<>>0,$T(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&NE(t,this.length-8);let i=(r<<24)+this[++t]*2**16+this[++t]*2**8+this[++t];return(BigInt(i)<>>0,r||rp(t,4,this.length),JT.read(this,t,!0,23,4)};ol.prototype.readFloatBE=function(t,r){return t=t>>>0,r||rp(t,4,this.length),JT.read(this,t,!1,23,4)};ol.prototype.readDoubleLE=function(t,r){return t=t>>>0,r||rp(t,8,this.length),JT.read(this,t,!0,52,8)};ol.prototype.readDoubleBE=function(t,r){return t=t>>>0,r||rp(t,8,this.length),JT.read(this,t,!1,52,8)};function Iv(e,t,r,n,i,a){if(!ol.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}ol.prototype.writeUintLE=ol.prototype.writeUIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,n=n>>>0,!i){let s=Math.pow(2,8*n)-1;Iv(this,t,r,n,s,0)}let a=1,o=0;for(this[r]=t&255;++o>>0,n=n>>>0,!i){let s=Math.pow(2,8*n)-1;Iv(this,t,r,n,s,0)}let a=n-1,o=1;for(this[r+a]=t&255;--a>=0&&(o*=256);)this[r+a]=t/o&255;return r+n};ol.prototype.writeUint8=ol.prototype.writeUInt8=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,1,255,0),this[r]=t&255,r+1};ol.prototype.writeUint16LE=ol.prototype.writeUInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,2,65535,0),this[r]=t&255,this[r+1]=t>>>8,r+2};ol.prototype.writeUint16BE=ol.prototype.writeUInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,2,65535,0),this[r]=t>>>8,this[r+1]=t&255,r+2};ol.prototype.writeUint32LE=ol.prototype.writeUInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,4,4294967295,0),this[r+3]=t>>>24,this[r+2]=t>>>16,this[r+1]=t>>>8,this[r]=t&255,r+4};ol.prototype.writeUint32BE=ol.prototype.writeUInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,4,4294967295,0),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};function pTe(e,t,r,n,i){_Te(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r++]=a,a=a>>8,e[r++]=a,a=a>>8,e[r++]=a,a=a>>8,e[r++]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,r}function vTe(e,t,r,n,i){_Te(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r+7]=a,a=a>>8,e[r+6]=a,a=a>>8,e[r+5]=a,a=a>>8,e[r+4]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=o,o=o>>8,e[r+2]=o,o=o>>8,e[r+1]=o,o=o>>8,e[r]=o,r+8}ol.prototype.writeBigUInt64LE=P_(function(t,r=0){return pTe(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});ol.prototype.writeBigUInt64BE=P_(function(t,r=0){return vTe(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});ol.prototype.writeIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let u=Math.pow(2,8*n-1);Iv(this,t,r,n,u-1,-u)}let a=0,o=1,s=0;for(this[r]=t&255;++a>0)-s&255;return r+n};ol.prototype.writeIntBE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let u=Math.pow(2,8*n-1);Iv(this,t,r,n,u-1,-u)}let a=n-1,o=1,s=0;for(this[r+a]=t&255;--a>=0&&(o*=256);)t<0&&s===0&&this[r+a+1]!==0&&(s=1),this[r+a]=(t/o>>0)-s&255;return r+n};ol.prototype.writeInt8=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,1,127,-128),t<0&&(t=255+t+1),this[r]=t&255,r+1};ol.prototype.writeInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,2,32767,-32768),this[r]=t&255,this[r+1]=t>>>8,r+2};ol.prototype.writeInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,2,32767,-32768),this[r]=t>>>8,this[r+1]=t&255,r+2};ol.prototype.writeInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,4,2147483647,-2147483648),this[r]=t&255,this[r+1]=t>>>8,this[r+2]=t>>>16,this[r+3]=t>>>24,r+4};ol.prototype.writeInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};ol.prototype.writeBigInt64LE=P_(function(t,r=0){return pTe(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});ol.prototype.writeBigInt64BE=P_(function(t,r=0){return vTe(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function mTe(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function yTe(e,t,r,n,i){return t=+t,r=r>>>0,i||mTe(e,t,r,4,34028234663852886e22,-34028234663852886e22),JT.write(e,t,r,n,23,4),r+4}ol.prototype.writeFloatLE=function(t,r,n){return yTe(this,t,r,!0,n)};ol.prototype.writeFloatBE=function(t,r,n){return yTe(this,t,r,!1,n)};function gTe(e,t,r,n,i){return t=+t,r=r>>>0,i||mTe(e,t,r,8,17976931348623157e292,-17976931348623157e292),JT.write(e,t,r,n,52,8),r+8}ol.prototype.writeDoubleLE=function(t,r,n){return gTe(this,t,r,!0,n)};ol.prototype.writeDoubleBE=function(t,r,n){return gTe(this,t,r,!1,n)};ol.prototype.copy=function(t,r,n,i){if(!ol.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&i!==0&&(i=this.length),r>=t.length&&(r=t.length),r||(r=0),i>0&&i=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),t.length-r>>0,n=n===void 0?this.length:n>>>0,t||(t=0);let a;if(typeof t=="number")for(a=r;a2**32?i=lTe(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=lTe(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n},RangeError);function lTe(e){let t="",r=e.length,n=e[0]==="-"?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function WTt(e,t,r){$T(t,"offset"),(e[t]===void 0||e[t+r]===void 0)&&NE(t,e.length-(r+1))}function _Te(e,t,r,n,i,a){if(e>r||e3?t===0||t===BigInt(0)?s=`>= 0${o} and < 2${o} ** ${(a+1)*8}${o}`:s=`>= -(2${o} ** ${(a+1)*8-1}${o}) and < 2 ** ${(a+1)*8-1}${o}`:s=`>= ${t}${o} and <= ${r}${o}`,new KT.ERR_OUT_OF_RANGE("value",s,e)}WTt(n,i,a)}function $T(e,t){if(typeof e!="number")throw new KT.ERR_INVALID_ARG_TYPE(t,"number",e)}function NE(e,t,r){throw Math.floor(e)!==e?($T(e,r),new KT.ERR_OUT_OF_RANGE(r||"offset","an integer",e)):t<0?new KT.ERR_BUFFER_OUT_OF_BOUNDS:new KT.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}var jTt=/[^+/0-9A-Za-z-_]/g;function XTt(e){if(e=e.split("=")[0],e=e.trim().replace(jTt,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function EH(e,t){t=t||1/0;let r,n=e.length,i=null,a=[];for(let o=0;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}else if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,r&63|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return a}function ZTt(e){let t=[];for(let r=0;r>8,i=r%256,a.push(i),a.push(n);return a}function xTe(e){return AH.toByteArray(XTt(e))}function GR(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function Oy(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function PH(e){return e!==e}var KTt=function(){let e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){let n=r*16;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function P_(e){return typeof BigInt=="undefined"?JTt:e}function JTt(){throw new Error("BigInt not supported")}});var HR=Ae((cdr,bTe)=>{"use strict";bTe.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var t={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var i=42;t[r]=i;for(var a in t)return!1;if(typeof Object.keys=="function"&&Object.keys(t).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(t).length!==0)return!1;var o=Object.getOwnPropertySymbols(t);if(o.length!==1||o[0]!==r||!Object.prototype.propertyIsEnumerable.call(t,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var s=Object.getOwnPropertyDescriptor(t,r);if(s.value!==i||s.enumerable!==!0)return!1}return!0}});var UE=Ae((hdr,wTe)=>{"use strict";var $Tt=HR();wTe.exports=function(){return $Tt()&&!!Symbol.toStringTag}});var zH=Ae((ddr,TTe)=>{"use strict";TTe.exports=Object});var STe=Ae((pdr,ATe)=>{"use strict";ATe.exports=Error});var ETe=Ae((vdr,MTe)=>{"use strict";MTe.exports=EvalError});var CTe=Ae((mdr,kTe)=>{"use strict";kTe.exports=RangeError});var PTe=Ae((ydr,LTe)=>{"use strict";LTe.exports=ReferenceError});var IH=Ae((gdr,zTe)=>{"use strict";zTe.exports=SyntaxError});var eA=Ae((_dr,ITe)=>{"use strict";ITe.exports=TypeError});var DTe=Ae((xdr,RTe)=>{"use strict";RTe.exports=URIError});var BTe=Ae((bdr,FTe)=>{"use strict";FTe.exports=Math.abs});var qTe=Ae((wdr,OTe)=>{"use strict";OTe.exports=Math.floor});var UTe=Ae((Tdr,NTe)=>{"use strict";NTe.exports=Math.max});var GTe=Ae((Adr,VTe)=>{"use strict";VTe.exports=Math.min});var WTe=Ae((Sdr,HTe)=>{"use strict";HTe.exports=Math.pow});var XTe=Ae((Mdr,jTe)=>{"use strict";jTe.exports=Math.round});var YTe=Ae((Edr,ZTe)=>{"use strict";ZTe.exports=Number.isNaN||function(t){return t!==t}});var JTe=Ae((kdr,KTe)=>{"use strict";var QTt=YTe();KTe.exports=function(t){return QTt(t)||t===0?t:t<0?-1:1}});var QTe=Ae((Cdr,$Te)=>{"use strict";$Te.exports=Object.getOwnPropertyDescriptor});var c2=Ae((Ldr,eAe)=>{"use strict";var WR=QTe();if(WR)try{WR([],"length")}catch(e){WR=null}eAe.exports=WR});var VE=Ae((Pdr,tAe)=>{"use strict";var jR=Object.defineProperty||!1;if(jR)try{jR({},"a",{value:1})}catch(e){jR=!1}tAe.exports=jR});var nAe=Ae((zdr,iAe)=>{"use strict";var rAe=typeof Symbol!="undefined"&&Symbol,eAt=HR();iAe.exports=function(){return typeof rAe!="function"||typeof Symbol!="function"||typeof rAe("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:eAt()}});var RH=Ae((Idr,aAe)=>{"use strict";aAe.exports=typeof Reflect!="undefined"&&Reflect.getPrototypeOf||null});var DH=Ae((Rdr,oAe)=>{"use strict";var tAt=zH();oAe.exports=tAt.getPrototypeOf||null});var uAe=Ae((Ddr,lAe)=>{"use strict";var rAt="Function.prototype.bind called on incompatible ",iAt=Object.prototype.toString,nAt=Math.max,aAt="[object Function]",sAe=function(t,r){for(var n=[],i=0;i{"use strict";var lAt=uAe();fAe.exports=Function.prototype.bind||lAt});var XR=Ae((Bdr,cAe)=>{"use strict";cAe.exports=Function.prototype.call});var FH=Ae((Odr,hAe)=>{"use strict";hAe.exports=Function.prototype.apply});var pAe=Ae((qdr,dAe)=>{"use strict";dAe.exports=typeof Reflect!="undefined"&&Reflect&&Reflect.apply});var mAe=Ae((Ndr,vAe)=>{"use strict";var uAt=tA(),fAt=FH(),cAt=XR(),hAt=pAe();vAe.exports=hAt||uAt.call(cAt,fAt)});var gAe=Ae((Udr,yAe)=>{"use strict";var dAt=tA(),pAt=eA(),vAt=XR(),mAt=mAe();yAe.exports=function(t){if(t.length<1||typeof t[0]!="function")throw new pAt("a function is required");return mAt(dAt,vAt,t)}});var AAe=Ae((Vdr,TAe)=>{"use strict";var yAt=gAe(),_Ae=c2(),bAe;try{bAe=[].__proto__===Array.prototype}catch(e){if(!e||typeof e!="object"||!("code"in e)||e.code!=="ERR_PROTO_ACCESS")throw e}var BH=!!bAe&&_Ae&&_Ae(Object.prototype,"__proto__"),wAe=Object,xAe=wAe.getPrototypeOf;TAe.exports=BH&&typeof BH.get=="function"?yAt([BH.get]):typeof xAe=="function"?function(t){return xAe(t==null?t:wAe(t))}:!1});var CAe=Ae((Gdr,kAe)=>{"use strict";var SAe=RH(),MAe=DH(),EAe=AAe();kAe.exports=SAe?function(t){return SAe(t)}:MAe?function(t){if(!t||typeof t!="object"&&typeof t!="function")throw new TypeError("getProto: not an object");return MAe(t)}:EAe?function(t){return EAe(t)}:null});var PAe=Ae((Hdr,LAe)=>{"use strict";var gAt=Function.prototype.call,_At=Object.prototype.hasOwnProperty,xAt=tA();LAe.exports=xAt.call(gAt,_At)});var KR=Ae((Wdr,BAe)=>{"use strict";var Jf,bAt=zH(),wAt=STe(),TAt=ETe(),AAt=CTe(),SAt=PTe(),aA=IH(),nA=eA(),MAt=DTe(),EAt=BTe(),kAt=qTe(),CAt=UTe(),LAt=GTe(),PAt=WTe(),zAt=XTe(),IAt=JTe(),DAe=Function,OH=function(e){try{return DAe('"use strict"; return ('+e+").constructor;")()}catch(t){}},GE=c2(),RAt=VE(),qH=function(){throw new nA},DAt=GE?function(){try{return arguments.callee,qH}catch(e){try{return GE(arguments,"callee").get}catch(t){return qH}}}():qH,rA=nAe()(),ip=CAe(),FAt=DH(),BAt=RH(),FAe=FH(),HE=XR(),iA={},OAt=typeof Uint8Array=="undefined"||!ip?Jf:ip(Uint8Array),h2={__proto__:null,"%AggregateError%":typeof AggregateError=="undefined"?Jf:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer=="undefined"?Jf:ArrayBuffer,"%ArrayIteratorPrototype%":rA&&ip?ip([][Symbol.iterator]()):Jf,"%AsyncFromSyncIteratorPrototype%":Jf,"%AsyncFunction%":iA,"%AsyncGenerator%":iA,"%AsyncGeneratorFunction%":iA,"%AsyncIteratorPrototype%":iA,"%Atomics%":typeof Atomics=="undefined"?Jf:Atomics,"%BigInt%":typeof BigInt=="undefined"?Jf:BigInt,"%BigInt64Array%":typeof BigInt64Array=="undefined"?Jf:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array=="undefined"?Jf:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView=="undefined"?Jf:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":wAt,"%eval%":eval,"%EvalError%":TAt,"%Float16Array%":typeof Float16Array=="undefined"?Jf:Float16Array,"%Float32Array%":typeof Float32Array=="undefined"?Jf:Float32Array,"%Float64Array%":typeof Float64Array=="undefined"?Jf:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry=="undefined"?Jf:FinalizationRegistry,"%Function%":DAe,"%GeneratorFunction%":iA,"%Int8Array%":typeof Int8Array=="undefined"?Jf:Int8Array,"%Int16Array%":typeof Int16Array=="undefined"?Jf:Int16Array,"%Int32Array%":typeof Int32Array=="undefined"?Jf:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":rA&&ip?ip(ip([][Symbol.iterator]())):Jf,"%JSON%":typeof JSON=="object"?JSON:Jf,"%Map%":typeof Map=="undefined"?Jf:Map,"%MapIteratorPrototype%":typeof Map=="undefined"||!rA||!ip?Jf:ip(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":bAt,"%Object.getOwnPropertyDescriptor%":GE,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise=="undefined"?Jf:Promise,"%Proxy%":typeof Proxy=="undefined"?Jf:Proxy,"%RangeError%":AAt,"%ReferenceError%":SAt,"%Reflect%":typeof Reflect=="undefined"?Jf:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set=="undefined"?Jf:Set,"%SetIteratorPrototype%":typeof Set=="undefined"||!rA||!ip?Jf:ip(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer=="undefined"?Jf:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":rA&&ip?ip(""[Symbol.iterator]()):Jf,"%Symbol%":rA?Symbol:Jf,"%SyntaxError%":aA,"%ThrowTypeError%":DAt,"%TypedArray%":OAt,"%TypeError%":nA,"%Uint8Array%":typeof Uint8Array=="undefined"?Jf:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray=="undefined"?Jf:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array=="undefined"?Jf:Uint16Array,"%Uint32Array%":typeof Uint32Array=="undefined"?Jf:Uint32Array,"%URIError%":MAt,"%WeakMap%":typeof WeakMap=="undefined"?Jf:WeakMap,"%WeakRef%":typeof WeakRef=="undefined"?Jf:WeakRef,"%WeakSet%":typeof WeakSet=="undefined"?Jf:WeakSet,"%Function.prototype.call%":HE,"%Function.prototype.apply%":FAe,"%Object.defineProperty%":RAt,"%Object.getPrototypeOf%":FAt,"%Math.abs%":EAt,"%Math.floor%":kAt,"%Math.max%":CAt,"%Math.min%":LAt,"%Math.pow%":PAt,"%Math.round%":zAt,"%Math.sign%":IAt,"%Reflect.getPrototypeOf%":BAt};if(ip)try{null.error}catch(e){zAe=ip(ip(e)),h2["%Error.prototype%"]=zAe}var zAe,qAt=function e(t){var r;if(t==="%AsyncFunction%")r=OH("async function () {}");else if(t==="%GeneratorFunction%")r=OH("function* () {}");else if(t==="%AsyncGeneratorFunction%")r=OH("async function* () {}");else if(t==="%AsyncGenerator%"){var n=e("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(t==="%AsyncIteratorPrototype%"){var i=e("%AsyncGenerator%");i&&ip&&(r=ip(i.prototype))}return h2[t]=r,r},IAe={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},WE=tA(),ZR=PAe(),NAt=WE.call(HE,Array.prototype.concat),UAt=WE.call(FAe,Array.prototype.splice),RAe=WE.call(HE,String.prototype.replace),YR=WE.call(HE,String.prototype.slice),VAt=WE.call(HE,RegExp.prototype.exec),GAt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,HAt=/\\(\\)?/g,WAt=function(t){var r=YR(t,0,1),n=YR(t,-1);if(r==="%"&&n!=="%")throw new aA("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new aA("invalid intrinsic syntax, expected opening `%`");var i=[];return RAe(t,GAt,function(a,o,s,u){i[i.length]=s?RAe(u,HAt,"$1"):o||a}),i},jAt=function(t,r){var n=t,i;if(ZR(IAe,n)&&(i=IAe[n],n="%"+i[0]+"%"),ZR(h2,n)){var a=h2[n];if(a===iA&&(a=qAt(n)),typeof a=="undefined"&&!r)throw new nA("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:i,name:n,value:a}}throw new aA("intrinsic "+t+" does not exist!")};BAe.exports=function(t,r){if(typeof t!="string"||t.length===0)throw new nA("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new nA('"allowMissing" argument must be a boolean');if(VAt(/^%?[^%]*%?$/,t)===null)throw new aA("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=WAt(t),i=n.length>0?n[0]:"",a=jAt("%"+i+"%",r),o=a.name,s=a.value,u=!1,l=a.alias;l&&(i=l[0],UAt(n,NAt([0,1],l)));for(var f=1,c=!0;f=n.length){var _=GE(s,h);c=!!_,c&&"get"in _&&!("originalValue"in _.get)?s=_.get:s=s[h]}else c=ZR(s,h),s=s[h];c&&!u&&(h2[o]=s)}}return s}});var UAe=Ae((jdr,NAe)=>{"use strict";var OAe=VE(),XAt=IH(),oA=eA(),qAe=c2();NAe.exports=function(t,r,n){if(!t||typeof t!="object"&&typeof t!="function")throw new oA("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new oA("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new oA("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new oA("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new oA("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new oA("`loose`, if provided, must be a boolean");var i=arguments.length>3?arguments[3]:null,a=arguments.length>4?arguments[4]:null,o=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,u=!!qAe&&qAe(t,r);if(OAe)OAe(t,r,{configurable:o===null&&u?u.configurable:!o,enumerable:i===null&&u?u.enumerable:!i,value:n,writable:a===null&&u?u.writable:!a});else if(s||!i&&!a&&!o)t[r]=n;else throw new XAt("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var UH=Ae((Xdr,GAe)=>{"use strict";var NH=VE(),VAe=function(){return!!NH};VAe.hasArrayLengthDefineBug=function(){if(!NH)return null;try{return NH([],"length",{value:1}).length!==1}catch(t){return!0}};GAe.exports=VAe});var ZAe=Ae((Zdr,XAe)=>{"use strict";var ZAt=KR(),HAe=UAe(),YAt=UH()(),WAe=c2(),jAe=eA(),KAt=ZAt("%Math.floor%");XAe.exports=function(t,r){if(typeof t!="function")throw new jAe("`fn` is not a function");if(typeof r!="number"||r<0||r>4294967295||KAt(r)!==r)throw new jAe("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],i=!0,a=!0;if("length"in t&&WAe){var o=WAe(t,"length");o&&!o.configurable&&(i=!1),o&&!o.writable&&(a=!1)}return(i||a||!n)&&(YAt?HAe(t,"length",r,!0,!0):HAe(t,"length",r)),t}});var jE=Ae((Ydr,JR)=>{"use strict";var VH=tA(),$R=KR(),JAt=ZAe(),$At=eA(),JAe=$R("%Function.prototype.apply%"),$Ae=$R("%Function.prototype.call%"),QAe=$R("%Reflect.apply%",!0)||VH.call($Ae,JAe),YAe=VE(),QAt=$R("%Math.max%");JR.exports=function(t){if(typeof t!="function")throw new $At("a function is required");var r=QAe(VH,$Ae,arguments);return JAt(r,1+QAt(0,t.length-(arguments.length-1)),!0)};var KAe=function(){return QAe(VH,JAe,arguments)};YAe?YAe(JR.exports,"apply",{value:KAe}):JR.exports.apply=KAe});var sA=Ae((Kdr,rSe)=>{"use strict";var eSe=KR(),tSe=jE(),eSt=tSe(eSe("String.prototype.indexOf"));rSe.exports=function(t,r){var n=eSe(t,!!r);return typeof n=="function"&&eSt(t,".prototype.")>-1?tSe(n):n}});var aSe=Ae((Jdr,nSe)=>{"use strict";var tSt=UE()(),rSt=sA(),GH=rSt("Object.prototype.toString"),QR=function(t){return tSt&&t&&typeof t=="object"&&Symbol.toStringTag in t?!1:GH(t)==="[object Arguments]"},iSe=function(t){return QR(t)?!0:t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&GH(t)!=="[object Array]"&&GH(t.callee)==="[object Function]"},iSt=function(){return QR(arguments)}();QR.isLegacyArguments=iSe;nSe.exports=iSt?QR:iSe});var lSe=Ae(($dr,sSe)=>{"use strict";var nSt=Object.prototype.toString,aSt=Function.prototype.toString,oSt=/^\s*(?:function)?\*/,oSe=UE()(),HH=Object.getPrototypeOf,sSt=function(){if(!oSe)return!1;try{return Function("return function*() {}")()}catch(e){}},WH;sSe.exports=function(t){if(typeof t!="function")return!1;if(oSt.test(aSt.call(t)))return!0;if(!oSe){var r=nSt.call(t);return r==="[object GeneratorFunction]"}if(!HH)return!1;if(typeof WH=="undefined"){var n=sSt();WH=n?HH(n):!1}return HH(t)===WH}});var hSe=Ae((Qdr,cSe)=>{"use strict";var fSe=Function.prototype.toString,lA=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,XH,eD;if(typeof lA=="function"&&typeof Object.defineProperty=="function")try{XH=Object.defineProperty({},"length",{get:function(){throw eD}}),eD={},lA(function(){throw 42},null,XH)}catch(e){e!==eD&&(lA=null)}else lA=null;var lSt=/^\s*class\b/,ZH=function(t){try{var r=fSe.call(t);return lSt.test(r)}catch(n){return!1}},jH=function(t){try{return ZH(t)?!1:(fSe.call(t),!0)}catch(r){return!1}},tD=Object.prototype.toString,uSt="[object Object]",fSt="[object Function]",cSt="[object GeneratorFunction]",hSt="[object HTMLAllCollection]",dSt="[object HTML document.all class]",pSt="[object HTMLCollection]",vSt=typeof Symbol=="function"&&!!Symbol.toStringTag,mSt=!(0 in[,]),YH=function(){return!1};typeof document=="object"&&(uSe=document.all,tD.call(uSe)===tD.call(document.all)&&(YH=function(t){if((mSt||!t)&&(typeof t=="undefined"||typeof t=="object"))try{var r=tD.call(t);return(r===hSt||r===dSt||r===pSt||r===uSt)&&t("")==null}catch(n){}return!1}));var uSe;cSe.exports=lA?function(t){if(YH(t))return!0;if(!t||typeof t!="function"&&typeof t!="object")return!1;try{lA(t,null,XH)}catch(r){if(r!==eD)return!1}return!ZH(t)&&jH(t)}:function(t){if(YH(t))return!0;if(!t||typeof t!="function"&&typeof t!="object")return!1;if(vSt)return jH(t);if(ZH(t))return!1;var r=tD.call(t);return r!==fSt&&r!==cSt&&!/^\[object HTML/.test(r)?!1:jH(t)}});var KH=Ae((epr,pSe)=>{"use strict";var ySt=hSe(),gSt=Object.prototype.toString,dSe=Object.prototype.hasOwnProperty,_St=function(t,r,n){for(var i=0,a=t.length;i=3&&(i=n),gSt.call(t)==="[object Array]"?_St(t,r,i):typeof t=="string"?xSt(t,r,i):bSt(t,r,i)};pSe.exports=wSt});var $H=Ae((tpr,vSe)=>{"use strict";var JH=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],TSt=typeof globalThis=="undefined"?window:globalThis;vSe.exports=function(){for(var t=[],r=0;r{"use strict";var iD=KH(),ASt=$H(),mSe=jE(),tW=sA(),rD=c2(),SSt=tW("Object.prototype.toString"),gSe=UE()(),ySe=typeof globalThis=="undefined"?window:globalThis,eW=ASt(),rW=tW("String.prototype.slice"),QH=Object.getPrototypeOf,MSt=tW("Array.prototype.indexOf",!0)||function(t,r){for(var n=0;n-1?r:r!=="Object"?!1:kSt(t)}return rD?ESt(t):null}});var MSe=Ae((ipr,SSe)=>{"use strict";var bSe=KH(),CSt=$H(),nW=sA(),LSt=nW("Object.prototype.toString"),wSe=UE()(),aD=c2(),PSt=typeof globalThis=="undefined"?window:globalThis,TSe=CSt(),zSt=nW("Array.prototype.indexOf",!0)||function(t,r){for(var n=0;n-1}return aD?RSt(t):!1}});var sW=Ae($f=>{"use strict";var DSt=aSe(),FSt=lSe(),Gm=xSe(),ESe=MSe();function uA(e){return e.call.bind(e)}var kSe=typeof BigInt!="undefined",CSe=typeof Symbol!="undefined",Z0=uA(Object.prototype.toString),BSt=uA(Number.prototype.valueOf),OSt=uA(String.prototype.valueOf),qSt=uA(Boolean.prototype.valueOf);kSe&&(LSe=uA(BigInt.prototype.valueOf));var LSe;CSe&&(PSe=uA(Symbol.prototype.valueOf));var PSe;function ZE(e,t){if(typeof e!="object")return!1;try{return t(e),!0}catch(r){return!1}}$f.isArgumentsObject=DSt;$f.isGeneratorFunction=FSt;$f.isTypedArray=ESe;function NSt(e){return typeof Promise!="undefined"&&e instanceof Promise||e!==null&&typeof e=="object"&&typeof e.then=="function"&&typeof e.catch=="function"}$f.isPromise=NSt;function USt(e){return typeof ArrayBuffer!="undefined"&&ArrayBuffer.isView?ArrayBuffer.isView(e):ESe(e)||ISe(e)}$f.isArrayBufferView=USt;function VSt(e){return Gm(e)==="Uint8Array"}$f.isUint8Array=VSt;function GSt(e){return Gm(e)==="Uint8ClampedArray"}$f.isUint8ClampedArray=GSt;function HSt(e){return Gm(e)==="Uint16Array"}$f.isUint16Array=HSt;function WSt(e){return Gm(e)==="Uint32Array"}$f.isUint32Array=WSt;function jSt(e){return Gm(e)==="Int8Array"}$f.isInt8Array=jSt;function XSt(e){return Gm(e)==="Int16Array"}$f.isInt16Array=XSt;function ZSt(e){return Gm(e)==="Int32Array"}$f.isInt32Array=ZSt;function YSt(e){return Gm(e)==="Float32Array"}$f.isFloat32Array=YSt;function KSt(e){return Gm(e)==="Float64Array"}$f.isFloat64Array=KSt;function JSt(e){return Gm(e)==="BigInt64Array"}$f.isBigInt64Array=JSt;function $St(e){return Gm(e)==="BigUint64Array"}$f.isBigUint64Array=$St;function oD(e){return Z0(e)==="[object Map]"}oD.working=typeof Map!="undefined"&&oD(new Map);function QSt(e){return typeof Map=="undefined"?!1:oD.working?oD(e):e instanceof Map}$f.isMap=QSt;function sD(e){return Z0(e)==="[object Set]"}sD.working=typeof Set!="undefined"&&sD(new Set);function eMt(e){return typeof Set=="undefined"?!1:sD.working?sD(e):e instanceof Set}$f.isSet=eMt;function lD(e){return Z0(e)==="[object WeakMap]"}lD.working=typeof WeakMap!="undefined"&&lD(new WeakMap);function tMt(e){return typeof WeakMap=="undefined"?!1:lD.working?lD(e):e instanceof WeakMap}$f.isWeakMap=tMt;function oW(e){return Z0(e)==="[object WeakSet]"}oW.working=typeof WeakSet!="undefined"&&oW(new WeakSet);function rMt(e){return oW(e)}$f.isWeakSet=rMt;function uD(e){return Z0(e)==="[object ArrayBuffer]"}uD.working=typeof ArrayBuffer!="undefined"&&uD(new ArrayBuffer);function zSe(e){return typeof ArrayBuffer=="undefined"?!1:uD.working?uD(e):e instanceof ArrayBuffer}$f.isArrayBuffer=zSe;function fD(e){return Z0(e)==="[object DataView]"}fD.working=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined"&&fD(new DataView(new ArrayBuffer(1),0,1));function ISe(e){return typeof DataView=="undefined"?!1:fD.working?fD(e):e instanceof DataView}$f.isDataView=ISe;var aW=typeof SharedArrayBuffer!="undefined"?SharedArrayBuffer:void 0;function XE(e){return Z0(e)==="[object SharedArrayBuffer]"}function RSe(e){return typeof aW=="undefined"?!1:(typeof XE.working=="undefined"&&(XE.working=XE(new aW)),XE.working?XE(e):e instanceof aW)}$f.isSharedArrayBuffer=RSe;function iMt(e){return Z0(e)==="[object AsyncFunction]"}$f.isAsyncFunction=iMt;function nMt(e){return Z0(e)==="[object Map Iterator]"}$f.isMapIterator=nMt;function aMt(e){return Z0(e)==="[object Set Iterator]"}$f.isSetIterator=aMt;function oMt(e){return Z0(e)==="[object Generator]"}$f.isGeneratorObject=oMt;function sMt(e){return Z0(e)==="[object WebAssembly.Module]"}$f.isWebAssemblyCompiledModule=sMt;function DSe(e){return ZE(e,BSt)}$f.isNumberObject=DSe;function FSe(e){return ZE(e,OSt)}$f.isStringObject=FSe;function BSe(e){return ZE(e,qSt)}$f.isBooleanObject=BSe;function OSe(e){return kSe&&ZE(e,LSe)}$f.isBigIntObject=OSe;function qSe(e){return CSe&&ZE(e,PSe)}$f.isSymbolObject=qSe;function lMt(e){return DSe(e)||FSe(e)||BSe(e)||OSe(e)||qSe(e)}$f.isBoxedPrimitive=lMt;function uMt(e){return typeof Uint8Array!="undefined"&&(zSe(e)||RSe(e))}$f.isAnyArrayBuffer=uMt;["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(e){Object.defineProperty($f,e,{enumerable:!1,value:function(){throw new Error(e+" is not supported in userland")}})})});var lW=Ae((apr,NSe)=>{NSe.exports=function(t){return t&&typeof t=="object"&&typeof t.copy=="function"&&typeof t.fill=="function"&&typeof t.readUInt8=="function"}});var pW=Ae(Qf=>{var USe=Object.getOwnPropertyDescriptors||function(t){for(var r=Object.keys(t),n={},i=0;i=i)return s;switch(s){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(u){return"[Circular]"}default:return s}}),o=n[r];r=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),hW(t)?r.showHidden=t:t&&Qf._extend(r,t),p2(r.showHidden)&&(r.showHidden=!1),p2(r.depth)&&(r.depth=2),p2(r.colors)&&(r.colors=!1),p2(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=cMt),pD(r,e,r.depth)}Qf.inspect=z_;z_.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};z_.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function cMt(e,t){var r=z_.styles[t];return r?"\x1B["+z_.colors[r][0]+"m"+e+"\x1B["+z_.colors[r][1]+"m":e}function hMt(e,t){return e}function dMt(e){var t={};return e.forEach(function(r,n){t[r]=!0}),t}function pD(e,t,r){if(e.customInspect&&t&&dD(t.inspect)&&t.inspect!==Qf.inspect&&!(t.constructor&&t.constructor.prototype===t)){var n=t.inspect(r,e);return yD(n)||(n=pD(e,n,r)),n}var i=pMt(e,t);if(i)return i;var a=Object.keys(t),o=dMt(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(t)),KE(t)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return uW(t);if(a.length===0){if(dD(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if(YE(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(vD(t))return e.stylize(Date.prototype.toString.call(t),"date");if(KE(t))return uW(t)}var u="",l=!1,f=["{","}"];if(GSe(t)&&(l=!0,f=["[","]"]),dD(t)){var c=t.name?": "+t.name:"";u=" [Function"+c+"]"}if(YE(t)&&(u=" "+RegExp.prototype.toString.call(t)),vD(t)&&(u=" "+Date.prototype.toUTCString.call(t)),KE(t)&&(u=" "+uW(t)),a.length===0&&(!l||t.length==0))return f[0]+u+f[1];if(r<0)return YE(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var h;return l?h=vMt(e,t,r,o,a):h=a.map(function(d){return cW(e,t,r,o,d,l)}),e.seen.pop(),mMt(h,u,f)}function pMt(e,t){if(p2(t))return e.stylize("undefined","undefined");if(yD(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(HSe(t))return e.stylize(""+t,"number");if(hW(t))return e.stylize(""+t,"boolean");if(mD(t))return e.stylize("null","null")}function uW(e){return"["+Error.prototype.toString.call(e)+"]"}function vMt(e,t,r,n,i){for(var a=[],o=0,s=t.length;o24?(isFinite(se)&&(clearTimeout(Un),Un=setTimeout(oa,se)),Mn=0):(Mn=1,Ga(oa))}e.timer.flush=function(){ka(),so()};function ka(){for(var Z=Date.now(),se=Xi;se;)Z>=se.t&&se.c(Z-se.t)&&(se.c=null),se=se.n;return Z}function so(){for(var Z,se=Xi,Pe=1/0;se;)se.c?(se.t=0;--_t)mi.push(Qe[Cr[fi[_t]][2]]);for(_t=+Bi;_t<$r.length-fn;++_t)mi.push(Qe[Cr[$r[_t]][2]]);return mi}return Xe.x=function(Qe){return arguments.length?(se=Qe,Xe):se},Xe.y=function(Qe){return arguments.length?(Pe=Qe,Xe):Pe},Xe};function Yo(Z){for(var se=Z.length,Pe=[0,1],Xe=2,Qe=2;Qe1&&zt(Z[Pe[Xe-2]],Z[Pe[Xe-1]],Z[Qe])<=0;)--Xe;Pe[Xe++]=Qe}return Pe.slice(0,Xe)}function fa(Z,se){return Z[0]-se[0]||Z[1]-se[1]}e.geom.polygon=function(Z){return te(Z,kn),Z};var kn=e.geom.polygon.prototype=[];kn.area=function(){for(var Z=-1,se=this.length,Pe,Xe=this[se-1],Qe=0;++ZOe)_t=_t.L;else if(jt=se-Sn(_t,Pe),jt>Oe){if(!_t.R){Xe=_t;break}_t=_t.R}else{st>-Oe?(Xe=_t.P,Qe=_t):jt>-Oe?(Xe=_t,Qe=_t.N):Xe=Qe=_t;break}var hr=Po(Z);if(fo.insert(Xe,hr),!(!Xe&&!Qe)){if(Xe===Qe){Sa(Xe),Qe=Po(Xe.site),fo.insert(hr,Qe),hr.edge=Qe.edge=vo(Xe.site,hr.site),Hi(Xe),Hi(Qe);return}if(!Qe){hr.edge=vo(Xe.site,hr.site);return}Sa(Xe),Sa(Qe);var Cr=Xe.site,zr=Cr.x,fi=Cr.y,$r=Z.x-zr,Bi=Z.y-fi,fn=Qe.site,mi=fn.x-zr,zi=fn.y-fi,ji=2*($r*zi-Bi*mi),pn=$r*$r+Bi*Bi,sn=mi*mi+zi*zi,wi={x:(zi*pn-Bi*sn)/ji+zr,y:($r*sn-mi*pn)/ji+fi};ps(Qe.edge,Cr,fn,wi),hr.edge=vo(Cr,Z,null,wi),Qe.edge=vo(Z,fn,null,wi),Hi(Xe),Hi(Qe)}}function Ha(Z,se){var Pe=Z.site,Xe=Pe.x,Qe=Pe.y,st=Qe-se;if(!st)return Xe;var jt=Z.P;if(!jt)return-1/0;Pe=jt.site;var _t=Pe.x,hr=Pe.y,Cr=hr-se;if(!Cr)return _t;var zr=_t-Xe,fi=1/st-1/Cr,$r=zr/Cr;return fi?(-$r+Math.sqrt($r*$r-2*fi*(zr*zr/(-2*Cr)-hr+Cr/2+Qe-st/2)))/fi+Xe:(Xe+_t)/2}function Sn(Z,se){var Pe=Z.N;if(Pe)return Ha(Pe,se);var Xe=Z.site;return Xe.y===se?Xe.x:1/0}function ao(Z){this.site=Z,this.edges=[]}ao.prototype.prepare=function(){for(var Z=this.edges,se=Z.length,Pe;se--;)Pe=Z[se].edge,(!Pe.b||!Pe.a)&&Z.splice(se,1);return Z.sort(Ko),Z.length};function Ba(Z){for(var se=Z[0][0],Pe=Z[1][0],Xe=Z[0][1],Qe=Z[1][1],st,jt,_t,hr,Cr=$a,zr=Cr.length,fi,$r,Bi,fn,mi,zi;zr--;)if(fi=Cr[zr],!(!fi||!fi.prepare()))for(Bi=fi.edges,fn=Bi.length,$r=0;$rOe||v(hr-jt)>Oe)&&(Bi.splice($r,0,new co(Ts(fi.site,zi,v(_t-se)Oe?{x:se,y:v(st-se)Oe?{x:v(jt-Qe)Oe?{x:Pe,y:v(st-Pe)Oe?{x:v(jt-Xe)=-Ie)){var $r=hr*hr+Cr*Cr,Bi=zr*zr+zi*zi,fn=(zi*$r-Cr*Bi)/fi,mi=(hr*Bi-zr*$r)/fi,zi=mi+_t,ji=ws.pop()||new Qo;ji.arc=Z,ji.site=Qe,ji.x=fn+jt,ji.y=zi+Math.sqrt(fn*fn+mi*mi),ji.cy=zi,Z.circle=ji;for(var pn=null,sn=wa._;sn;)if(ji.y0)){if(mi/=Bi,Bi<0){if(mi0){if(mi>$r)return;mi>fi&&(fi=mi)}if(mi=Pe-_t,!(!Bi&&mi<0)){if(mi/=Bi,Bi<0){if(mi>$r)return;mi>fi&&(fi=mi)}else if(Bi>0){if(mi0)){if(mi/=fn,fn<0){if(mi0){if(mi>$r)return;mi>fi&&(fi=mi)}if(mi=Xe-hr,!(!fn&&mi<0)){if(mi/=fn,fn<0){if(mi>$r)return;mi>fi&&(fi=mi)}else if(fn>0){if(mi0&&(Qe.a={x:_t+fi*Bi,y:hr+fi*fn}),$r<1&&(Qe.b={x:_t+$r*Bi,y:hr+$r*fn}),Qe}}}}}}function vn(Z){for(var se=ls,Pe=Qa(Z[0][0],Z[0][1],Z[1][0],Z[1][1]),Xe=se.length,Qe;Xe--;)Qe=se[Xe],(!da(Qe,Z)||!Pe(Qe)||v(Qe.a.x-Qe.b.x)=st)return;if(zr>$r){if(!Xe)Xe={x:fn,y:jt};else if(Xe.y>=_t)return;Pe={x:fn,y:_t}}else{if(!Xe)Xe={x:fn,y:_t};else if(Xe.y1)if(zr>$r){if(!Xe)Xe={x:(jt-ji)/zi,y:jt};else if(Xe.y>=_t)return;Pe={x:(_t-ji)/zi,y:_t}}else{if(!Xe)Xe={x:(_t-ji)/zi,y:_t};else if(Xe.y=st)return;Pe={x:st,y:zi*st+ji}}else{if(!Xe)Xe={x:st,y:zi*st+ji};else if(Xe.x=zr&&ji.x<=$r&&ji.y>=fi&&ji.y<=Bi?[[zr,Bi],[$r,Bi],[$r,fi],[zr,fi]]:[];pn.point=hr[mi]}),Cr}function _t(hr){return hr.map(function(Cr,zr){return{x:Math.round(Xe(Cr,zr)/Oe)*Oe,y:Math.round(Qe(Cr,zr)/Oe)*Oe,i:zr}})}return jt.links=function(hr){return qs(_t(hr)).edges.filter(function(Cr){return Cr.l&&Cr.r}).map(function(Cr){return{source:hr[Cr.l.i],target:hr[Cr.r.i]}})},jt.triangles=function(hr){var Cr=[];return qs(_t(hr)).cells.forEach(function(zr,fi){for(var $r=zr.site,Bi=zr.edges.sort(Ko),fn=-1,mi=Bi.length,zi,ji,pn=Bi[mi-1].edge,sn=pn.l===$r?pn.r:pn.l;++fnsn&&(sn=zr.x),zr.y>wi&&(wi=zr.y),Bi.push(zr.x),fn.push(zr.y);else for(mi=0;misn&&(sn=xo),no>wi&&(wi=no),Bi.push(xo),fn.push(no)}var Xo=sn-ji,js=wi-pn;Xo>js?wi=pn+Xo:sn=ji+js;function El(Il,fu,Xu,Vu,tf,ds,Wl,Tu){if(!(isNaN(Xu)||isNaN(Vu)))if(Il.leaf){var Au=Il.x,lf=Il.y;if(Au!=null)if(v(Au-Xu)+v(lf-Vu)<.01)Pl(Il,fu,Xu,Vu,tf,ds,Wl,Tu);else{var hf=Il.point;Il.x=Il.y=Il.point=null,Pl(Il,hf,Au,lf,tf,ds,Wl,Tu),Pl(Il,fu,Xu,Vu,tf,ds,Wl,Tu)}else Il.x=Xu,Il.y=Vu,Il.point=fu}else Pl(Il,fu,Xu,Vu,tf,ds,Wl,Tu)}function Pl(Il,fu,Xu,Vu,tf,ds,Wl,Tu){var Au=(tf+Wl)*.5,lf=(ds+Tu)*.5,hf=Xu>=Au,Mf=Vu>=lf,pf=Mf<<1|hf;Il.leaf=!1,Il=Il.nodes[pf]||(Il.nodes[pf]=_n()),hf?tf=Au:Wl=Au,Mf?ds=lf:Tu=lf,El(Il,fu,Xu,Vu,tf,ds,Wl,Tu)}var pu=_n();if(pu.add=function(Il){El(pu,Il,+fi(Il,++mi),+$r(Il,mi),ji,pn,sn,wi)},pu.visit=function(Il){Vn(Il,pu,ji,pn,sn,wi)},pu.find=function(Il){return wo(pu,Il[0],Il[1],ji,pn,sn,wi)},mi=-1,se==null){for(;++mist||$r>jt||Bi=xo,js=Pe>=no,El=js<<1|Xo,Pl=El+4;ElPe&&(st=se.slice(Pe,st),_t[jt]?_t[jt]+=st:_t[++jt]=st),(Xe=Xe[0])===(Qe=Qe[0])?_t[jt]?_t[jt]+=Qe:_t[++jt]=Qe:(_t[++jt]=null,hr.push({i:jt,x:un(Xe,Qe)})),Pe=qn.lastIndex;return Pe=0&&!(Xe=e.interpolators[Pe](Z,se)););return Xe}e.interpolators=[function(Z,se){var Pe=typeof se;return(Pe==="string"?pr.has(se.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(se)?Ra:$n:se instanceof Ni?Ra:Array.isArray(se)?Ja:Pe==="object"&&isNaN(se)?Xn:un)(Z,se)}],e.interpolateArray=Ja;function Ja(Z,se){var Pe=[],Xe=[],Qe=Z.length,st=se.length,jt=Math.min(Z.length,se.length),_t;for(_t=0;_t=0?Z.slice(0,se):Z,Xe=se>=0?Z.slice(se+1):"in";return Pe=eo.get(Pe)||lo,Xe=sa.get(Xe)||G,es(Xe(Pe.apply(null,t.call(arguments,1))))};function es(Z){return function(se){return se<=0?0:se>=1?1:Z(se)}}function Na(Z){return function(se){return 1-Z(1-se)}}function rn(Z){return function(se){return .5*(se<.5?Z(2*se):2-Z(2-2*se))}}function Pa(Z){return Z*Z}function to(Z){return Z*Z*Z}function yo(Z){if(Z<=0)return 0;if(Z>=1)return 1;var se=Z*Z,Pe=se*Z;return 4*(Z<.5?Pe:3*(Z-se)+Pe-.75)}function Jo(Z){return function(se){return Math.pow(se,Z)}}function To(Z){return 1-Math.cos(Z*fe)}function Dn(Z){return Math.pow(2,10*(Z-1))}function _a(Z){return 1-Math.sqrt(1-Z*Z)}function Ws(Z,se){var Pe;return arguments.length<2&&(se=.45),arguments.length?Pe=se/ft*Math.asin(1/Z):(Z=1,Pe=se/4),function(Xe){return 1+Z*Math.pow(2,-10*Xe)*Math.sin((Xe-Pe)*ft/se)}}function Ca(Z){return Z||(Z=1.70158),function(se){return se*se*((Z+1)*se-Z)}}function Es(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=As;function As(Z,se){Z=e.hcl(Z),se=e.hcl(se);var Pe=Z.h,Xe=Z.c,Qe=Z.l,st=se.h-Pe,jt=se.c-Xe,_t=se.l-Qe;return isNaN(jt)&&(jt=0,Xe=isNaN(Xe)?se.c:Xe),isNaN(st)?(st=0,Pe=isNaN(Pe)?se.h:Pe):st>180?st-=360:st<-180&&(st+=360),function(hr){return Lr(Pe+st*hr,Xe+jt*hr,Qe+_t*hr)+""}}e.interpolateHsl=Ho;function Ho(Z,se){Z=e.hsl(Z),se=e.hsl(se);var Pe=Z.h,Xe=Z.s,Qe=Z.l,st=se.h-Pe,jt=se.s-Xe,_t=se.l-Qe;return isNaN(jt)&&(jt=0,Xe=isNaN(Xe)?se.s:Xe),isNaN(st)?(st=0,Pe=isNaN(Pe)?se.h:Pe):st>180?st-=360:st<-180&&(st+=360),function(hr){return Gt(Pe+st*hr,Xe+jt*hr,Qe+_t*hr)+""}}e.interpolateLab=Wa;function Wa(Z,se){Z=e.lab(Z),se=e.lab(se);var Pe=Z.l,Xe=Z.a,Qe=Z.b,st=se.l-Pe,jt=se.a-Xe,_t=se.b-Qe;return function(hr){return Vi(Pe+st*hr,Xe+jt*hr,Qe+_t*hr)+""}}e.interpolateRound=Ao;function Ao(Z,se){return se-=Z,function(Pe){return Math.round(Z+se*Pe)}}e.transform=function(Z){var se=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(Pe){if(Pe!=null){se.setAttribute("transform",Pe);var Xe=se.transform.baseVal.consolidate()}return new ts(Xe?Xe.matrix:Bo)})(Z)};function ts(Z){var se=[Z.a,Z.b],Pe=[Z.c,Z.d],Xe=qa(se),Qe=Wo(se,Pe),st=qa(ln(Pe,se,-Qe))||0;se[0]*Pe[1]180?se+=360:se-Z>180&&(Z+=360),Xe.push({i:Pe.push(ko(Pe)+"rotate(",null,")")-2,x:un(Z,se)})):se&&Pe.push(ko(Pe)+"rotate("+se+")")}function ea(Z,se,Pe,Xe){Z!==se?Xe.push({i:Pe.push(ko(Pe)+"skewX(",null,")")-2,x:un(Z,se)}):se&&Pe.push(ko(Pe)+"skewX("+se+")")}function rs(Z,se,Pe,Xe){if(Z[0]!==se[0]||Z[1]!==se[1]){var Qe=Pe.push(ko(Pe)+"scale(",null,",",null,")");Xe.push({i:Qe-4,x:un(Z[0],se[0])},{i:Qe-2,x:un(Z[1],se[1])})}else(se[0]!==1||se[1]!==1)&&Pe.push(ko(Pe)+"scale("+se+")")}function $s(Z,se){var Pe=[],Xe=[];return Z=e.transform(Z),se=e.transform(se),oo(Z.translate,se.translate,Pe,Xe),za(Z.rotate,se.rotate,Pe,Xe),ea(Z.skew,se.skew,Pe,Xe),rs(Z.scale,se.scale,Pe,Xe),Z=se=null,function(Qe){for(var st=-1,jt=Xe.length,_t;++st0?st=wi:(Pe.c=null,Pe.t=NaN,Pe=null,se.end({type:"end",alpha:st=0})):wi>0&&(se.start({type:"start",alpha:st=wi}),Pe=ma(Z.tick)),Z):st},Z.start=function(){var wi,xo=Bi.length,no=fn.length,Xo=Xe[0],js=Xe[1],El,Pl;for(wi=0;wi=0;)st.push(zr=Cr[hr]),zr.parent=_t,zr.depth=_t.depth+1;Pe&&(_t.value=0),_t.children=Cr}else Pe&&(_t.value=+Pe.call(Xe,_t,_t.depth)||0),delete _t.children;return Oo(Qe,function(fi){var $r,Bi;Z&&($r=fi.children)&&$r.sort(Z),Pe&&(Bi=fi.parent)&&(Bi.value+=fi.value)}),jt}return Xe.sort=function(Qe){return arguments.length?(Z=Qe,Xe):Z},Xe.children=function(Qe){return arguments.length?(se=Qe,Xe):se},Xe.value=function(Qe){return arguments.length?(Pe=Qe,Xe):Pe},Xe.revalue=function(Qe){return Pe&&(Jn(Qe,function(st){st.children&&(st.value=0)}),Oo(Qe,function(st){var jt;st.children||(st.value=+Pe.call(Xe,st,st.depth)||0),(jt=st.parent)&&(jt.value+=st.value)})),Qe},Xe};function Ea(Z,se){return e.rebind(Z,se,"sort","children","value"),Z.nodes=Z,Z.links=zs,Z}function Jn(Z,se){for(var Pe=[Z];(Z=Pe.pop())!=null;)if(se(Z),(Qe=Z.children)&&(Xe=Qe.length))for(var Xe,Qe;--Xe>=0;)Pe.push(Qe[Xe])}function Oo(Z,se){for(var Pe=[Z],Xe=[];(Z=Pe.pop())!=null;)if(Xe.push(Z),(jt=Z.children)&&(st=jt.length))for(var Qe=-1,st,jt;++QeQe&&(Qe=_t),Xe.push(_t)}for(jt=0;jtXe&&(Pe=se,Xe=Qe);return Pe}function zo(Z){return Z.reduce(io,0)}function io(Z,se){return Z+se[1]}e.layout.histogram=function(){var Z=!0,se=Number,Pe=vs,Xe=Io;function Qe(st,$r){for(var _t=[],hr=st.map(se,this),Cr=Pe.call(this,hr,$r),zr=Xe.call(this,Cr,hr,$r),fi,$r=-1,Bi=hr.length,fn=zr.length-1,mi=Z?1:1/Bi,zi;++$r0)for($r=-1;++$r=Cr[0]&&zi<=Cr[1]&&(fi=_t[e.bisect(zr,zi,1,fn)-1],fi.y+=mi,fi.push(st[$r]));return _t}return Qe.value=function(st){return arguments.length?(se=st,Qe):se},Qe.range=function(st){return arguments.length?(Pe=gr(st),Qe):Pe},Qe.bins=function(st){return arguments.length?(Xe=typeof st=="number"?function(jt){return Da(jt,st)}:gr(st),Qe):Xe},Qe.frequency=function(st){return arguments.length?(Z=!!st,Qe):Z},Qe};function Io(Z,se){return Da(Z,Math.ceil(Math.log(se.length)/Math.LN2+1))}function Da(Z,se){for(var Pe=-1,Xe=+Z[0],Qe=(Z[1]-Xe)/se,st=[];++Pe<=se;)st[Pe]=Qe*Pe+Xe;return st}function vs(Z){return[e.min(Z),e.max(Z)]}e.layout.pack=function(){var Z=e.layout.hierarchy().sort(fs),se=0,Pe=[1,1],Xe;function Qe(st,jt){var _t=Z.call(this,st,jt),hr=_t[0],Cr=Pe[0],zr=Pe[1],fi=Xe==null?Math.sqrt:typeof Xe=="function"?Xe:function(){return Xe};if(hr.x=hr.y=0,Oo(hr,function(Bi){Bi.r=+fi(Bi.value)}),Oo(hr,Ro),se){var $r=se*(Xe?1:Math.max(2*hr.r/Cr,2*hr.r/zr))/2;Oo(hr,function(Bi){Bi.r+=$r}),Oo(hr,Ro),Oo(hr,function(Bi){Bi.r-=$r})}return hl(hr,Cr/2,zr/2,Xe?1:1/Math.max(2*hr.r/Cr,2*hr.r/zr)),_t}return Qe.size=function(st){return arguments.length?(Pe=st,Qe):Pe},Qe.radius=function(st){return arguments.length?(Xe=st==null||typeof st=="function"?st:+st,Qe):Xe},Qe.padding=function(st){return arguments.length?(se=+st,Qe):se},Ea(Qe,Z)};function fs(Z,se){return Z.value-se.value}function cl(Z,se){var Pe=Z._pack_next;Z._pack_next=se,se._pack_prev=Z,se._pack_next=Pe,Pe._pack_prev=se}function el(Z,se){Z._pack_next=se,se._pack_prev=Z}function Hs(Z,se){var Pe=se.x-Z.x,Xe=se.y-Z.y,Qe=Z.r+se.r;return .999*Qe*Qe>Pe*Pe+Xe*Xe}function Ro(Z){if(!(se=Z.children)||!($r=se.length))return;var se,Pe=1/0,Xe=-1/0,Qe=1/0,st=-1/0,jt,_t,hr,Cr,zr,fi,$r;function Bi(wi){Pe=Math.min(wi.x-wi.r,Pe),Xe=Math.max(wi.x+wi.r,Xe),Qe=Math.min(wi.y-wi.r,Qe),st=Math.max(wi.y+wi.r,st)}if(se.forEach(tl),jt=se[0],jt.x=-jt.r,jt.y=0,Bi(jt),$r>1&&(_t=se[1],_t.x=_t.r,_t.y=0,Bi(_t),$r>2))for(hr=se[2],Fa(jt,_t,hr),Bi(hr),cl(jt,hr),jt._pack_prev=hr,cl(hr,_t),_t=jt._pack_next,Cr=3;Cr<$r;Cr++){Fa(jt,_t,hr=se[Cr]);var fn=0,mi=1,zi=1;for(zr=_t._pack_next;zr!==_t;zr=zr._pack_next,mi++)if(Hs(zr,hr)){fn=1;break}if(fn==1)for(fi=jt._pack_prev;fi!==zr._pack_prev&&!Hs(fi,hr);fi=fi._pack_prev,zi++);fn?(mizi.x&&(zi=xo),xo.depth>ji.depth&&(ji=xo)});var pn=se(mi,zi)/2-mi.x,sn=Pe[0]/(zi.x+se(zi,mi)/2+pn),wi=Pe[1]/(ji.depth||1);Jn(Bi,function(xo){xo.x=(xo.x+pn)*sn,xo.y=xo.depth*wi})}return $r}function st(zr){for(var fi={A:null,children:[zr]},$r=[fi],Bi;(Bi=$r.pop())!=null;)for(var fn=Bi.children,mi,zi=0,ji=fn.length;zi0&&(Is(At(mi,zr,$r),zr,xo),ji+=xo,pn+=xo),sn+=mi.m,ji+=Bi.m,wi+=zi.m,pn+=fn.m;mi&&!Rs(fn)&&(fn.t=mi,fn.m+=sn-pn),Bi&&!jo(zi)&&(zi.t=Bi,zi.m+=ji-wi,$r=zr)}return $r}function Cr(zr){zr.x*=Pe[0],zr.y=zr.depth*Pe[1]}return Qe.separation=function(zr){return arguments.length?(se=zr,Qe):se},Qe.size=function(zr){return arguments.length?(Xe=(Pe=zr)==null?Cr:null,Qe):Xe?null:Pe},Qe.nodeSize=function(zr){return arguments.length?(Xe=(Pe=zr)==null?null:Cr,Qe):Xe?Pe:null},Ea(Qe,Z)};function Ms(Z,se){return Z.parent==se.parent?1:2}function jo(Z){var se=Z.children;return se.length?se[0]:Z.t}function Rs(Z){var se=Z.children,Pe;return(Pe=se.length)?se[Pe-1]:Z.t}function Is(Z,se,Pe){var Xe=Pe/(se.i-Z.i);se.c-=Xe,se.s+=Pe,Z.c+=Xe,se.z+=Pe,se.m+=Pe}function Bs(Z){for(var se=0,Pe=0,Xe=Z.children,Qe=Xe.length,st;--Qe>=0;)st=Xe[Qe],st.z+=se,st.m+=se,se+=st.s+(Pe+=st.c)}function At(Z,se,Pe){return Z.a.parent===se.parent?Z.a:Pe}e.layout.cluster=function(){var Z=e.layout.hierarchy().sort(null).value(null),se=Ms,Pe=[1,1],Xe=!1;function Qe(st,jt){var _t=Z.call(this,st,jt),hr=_t[0],Cr,zr=0;Oo(hr,function(mi){var zi=mi.children;zi&&zi.length?(mi.x=wr(zi),mi.y=Vt(zi)):(mi.x=Cr?zr+=se(mi,Cr):0,mi.y=0,Cr=mi)});var fi=mr(hr),$r=Fr(hr),Bi=fi.x-se(fi,$r)/2,fn=$r.x+se($r,fi)/2;return Oo(hr,Xe?function(mi){mi.x=(mi.x-hr.x)*Pe[0],mi.y=(hr.y-mi.y)*Pe[1]}:function(mi){mi.x=(mi.x-Bi)/(fn-Bi)*Pe[0],mi.y=(1-(hr.y?mi.y/hr.y:1))*Pe[1]}),_t}return Qe.separation=function(st){return arguments.length?(se=st,Qe):se},Qe.size=function(st){return arguments.length?(Xe=(Pe=st)==null,Qe):Xe?null:Pe},Qe.nodeSize=function(st){return arguments.length?(Xe=(Pe=st)!=null,Qe):Xe?Pe:null},Ea(Qe,Z)};function Vt(Z){return 1+e.max(Z,function(se){return se.y})}function wr(Z){return Z.reduce(function(se,Pe){return se+Pe.x},0)/Z.length}function mr(Z){var se=Z.children;return se&&se.length?mr(se[0]):Z}function Fr(Z){var se=Z.children,Pe;return se&&(Pe=se.length)?Fr(se[Pe-1]):Z}e.layout.treemap=function(){var Z=e.layout.hierarchy(),se=Math.round,Pe=[1,1],Xe=null,Qe=_i,st=!1,jt,_t="squarify",hr=.5*(1+Math.sqrt(5));function Cr(mi,zi){for(var ji=-1,pn=mi.length,sn,wi;++ji0;)pn.push(wi=sn[js-1]),pn.area+=wi.area,_t!=="squarify"||(no=$r(pn,Xo))<=xo?(sn.pop(),xo=no):(pn.area-=pn.pop().area,Bi(pn,Xo,ji,!1),Xo=Math.min(ji.dx,ji.dy),pn.length=pn.area=0,xo=1/0);pn.length&&(Bi(pn,Xo,ji,!0),pn.length=pn.area=0),zi.forEach(zr)}}function fi(mi){var zi=mi.children;if(zi&&zi.length){var ji=Qe(mi),pn=zi.slice(),sn,wi=[];for(Cr(pn,ji.dx*ji.dy/mi.value),wi.area=0;sn=pn.pop();)wi.push(sn),wi.area+=sn.area,sn.z!=null&&(Bi(wi,sn.z?ji.dx:ji.dy,ji,!pn.length),wi.length=wi.area=0);zi.forEach(fi)}}function $r(mi,zi){for(var ji=mi.area,pn,sn=0,wi=1/0,xo=-1,no=mi.length;++xosn&&(sn=pn));return ji*=ji,zi*=zi,ji?Math.max(zi*sn*hr/ji,ji/(zi*wi*hr)):1/0}function Bi(mi,zi,ji,pn){var sn=-1,wi=mi.length,xo=ji.x,no=ji.y,Xo=zi?se(mi.area/zi):0,js;if(zi==ji.dx){for((pn||Xo>ji.dy)&&(Xo=ji.dy);++snji.dx)&&(Xo=ji.dx);++sn1);return Z+se*Xe*Math.sqrt(-2*Math.log(st)/st)}},logNormal:function(){var Z=e.random.normal.apply(e,arguments);return function(){return Math.exp(Z())}},bates:function(Z){var se=e.random.irwinHall(Z);return function(){return se()/Z}},irwinHall:function(Z){return function(){for(var se=0,Pe=0;Pe2?Mi:Fn,Cr=Xe?Ds:us;return Qe=hr(Z,se,Cr,Pe),st=hr(se,Z,Cr,Eo),_t}function _t(hr){return Qe(hr)}return _t.invert=function(hr){return st(hr)},_t.domain=function(hr){return arguments.length?(Z=hr.map(Number),jt()):Z},_t.range=function(hr){return arguments.length?(se=hr,jt()):se},_t.rangeRound=function(hr){return _t.range(hr).interpolate(Ao)},_t.clamp=function(hr){return arguments.length?(Xe=hr,jt()):Xe},_t.interpolate=function(hr){return arguments.length?(Pe=hr,jt()):Pe},_t.ticks=function(hr){return pa(Z,hr)},_t.tickFormat=function(hr,Cr){return d3_scale_linearTickFormat(Z,hr,Cr)},_t.nice=function(hr){return ya(Z,hr),jt()},_t.copy=function(){return Gn(Z,se,Pe,Xe)},jt()}function ta(Z,se){return e.rebind(Z,se,"range","rangeRound","interpolate","clamp")}function ya(Z,se){return Pi(Z,di(ia(Z,se)[2])),Pi(Z,di(ia(Z,se)[2])),Z}function ia(Z,se){se==null&&(se=10);var Pe=Ci(Z),Xe=Pe[1]-Pe[0],Qe=Math.pow(10,Math.floor(Math.log(Xe/se)/Math.LN10)),st=se/Xe*Qe;return st<=.15?Qe*=10:st<=.35?Qe*=5:st<=.75&&(Qe*=2),Pe[0]=Math.ceil(Pe[0]/Qe)*Qe,Pe[1]=Math.floor(Pe[1]/Qe)*Qe+Qe*.5,Pe[2]=Qe,Pe}function pa(Z,se){return e.range.apply(e,ia(Z,se))}var va={s:1,g:1,p:1,r:1,e:1};function zn(Z){return-Math.floor(Math.log(Z)/Math.LN10+.01)}function is(Z,se){var Pe=zn(se[2]);return Z in va?Math.abs(Pe-zn(Math.max(v(se[0]),v(se[1]))))+ +(Z!=="e"):Pe-(Z==="%")*2}e.scale.log=function(){return Cs(e.scale.linear().domain([0,1]),10,!0,[1,10])};function Cs(Z,se,Pe,Xe){function Qe(_t){return(Pe?Math.log(_t<0?0:_t):-Math.log(_t>0?0:-_t))/Math.log(se)}function st(_t){return Pe?Math.pow(se,_t):-Math.pow(se,-_t)}function jt(_t){return Z(Qe(_t))}return jt.invert=function(_t){return st(Z.invert(_t))},jt.domain=function(_t){return arguments.length?(Pe=_t[0]>=0,Z.domain((Xe=_t.map(Number)).map(Qe)),jt):Xe},jt.base=function(_t){return arguments.length?(se=+_t,Z.domain(Xe.map(Qe)),jt):se},jt.nice=function(){var _t=Pi(Xe.map(Qe),Pe?Math:Ks);return Z.domain(_t),Xe=_t.map(st),jt},jt.ticks=function(){var _t=Ci(Xe),hr=[],Cr=_t[0],zr=_t[1],fi=Math.floor(Qe(Cr)),$r=Math.ceil(Qe(zr)),Bi=se%1?2:se;if(isFinite($r-fi)){if(Pe){for(;fi<$r;fi++)for(var fn=1;fn0;fn--)hr.push(st(fi)*fn);for(fi=0;hr[fi]zr;$r--);hr=hr.slice(fi,$r)}return hr},jt.copy=function(){return Cs(Z.copy(),se,Pe,Xe)},ta(jt,Z)}var Ks={floor:function(Z){return-Math.ceil(-Z)},ceil:function(Z){return-Math.floor(-Z)}};e.scale.pow=function(){return dl(e.scale.linear(),1,[0,1])};function dl(Z,se,Pe){var Xe=xl(se),Qe=xl(1/se);function st(jt){return Z(Xe(jt))}return st.invert=function(jt){return Qe(Z.invert(jt))},st.domain=function(jt){return arguments.length?(Z.domain((Pe=jt.map(Number)).map(Xe)),st):Pe},st.ticks=function(jt){return pa(Pe,jt)},st.tickFormat=function(jt,_t){return d3_scale_linearTickFormat(Pe,jt,_t)},st.nice=function(jt){return st.domain(ya(Pe,jt))},st.exponent=function(jt){return arguments.length?(Xe=xl(se=jt),Qe=xl(1/se),Z.domain(Pe.map(Xe)),st):se},st.copy=function(){return dl(Z.copy(),se,Pe)},ta(st,Z)}function xl(Z){return function(se){return se<0?-Math.pow(-se,Z):Math.pow(se,Z)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return Bl([],{t:"range",a:[[]]})};function Bl(Z,se){var Pe,Xe,Qe;function st(_t){return Xe[((Pe.get(_t)||(se.t==="range"?Pe.set(_t,Z.push(_t)):NaN))-1)%Xe.length]}function jt(_t,hr){return e.range(Z.length).map(function(Cr){return _t+hr*Cr})}return st.domain=function(_t){if(!arguments.length)return Z;Z=[],Pe=new A;for(var hr=-1,Cr=_t.length,zr;++hr0?Pe[st-1]:Z[0],st$r?0:1;if(zr=ge)return hr(zr,fn)+(Cr?hr(Cr,1-fn):"")+"Z";var mi,zi,ji,pn,sn=0,wi=0,xo,no,Xo,js,El,Pl,pu,Il,fu=[];if((pn=(+jt.apply(this,arguments)||0)/2)&&(ji=Xe===ll?Math.sqrt(Cr*Cr+zr*zr):+Xe.apply(this,arguments),fn||(wi*=-1),zr&&(wi=Gr(ji/zr*Math.sin(pn))),Cr&&(sn=Gr(ji/Cr*Math.sin(pn)))),zr){xo=zr*Math.cos(fi+wi),no=zr*Math.sin(fi+wi),Xo=zr*Math.cos($r-wi),js=zr*Math.sin($r-wi);var Xu=Math.abs($r-fi-2*wi)<=Fe?0:1;if(wi&&Ll(xo,no,Xo,js)===fn^Xu){var Vu=(fi+$r)/2;xo=zr*Math.cos(Vu),no=zr*Math.sin(Vu),Xo=js=null}}else xo=no=0;if(Cr){El=Cr*Math.cos($r-sn),Pl=Cr*Math.sin($r-sn),pu=Cr*Math.cos(fi+sn),Il=Cr*Math.sin(fi+sn);var tf=Math.abs(fi-$r+2*sn)<=Fe?0:1;if(sn&&Ll(El,Pl,pu,Il)===1-fn^tf){var ds=(fi+$r)/2;El=Cr*Math.cos(ds),Pl=Cr*Math.sin(ds),pu=Il=null}}else El=Pl=0;if(Bi>Oe&&(mi=Math.min(Math.abs(zr-Cr)/2,+Pe.apply(this,arguments)))>.001){zi=Cr0?0:1}function ms(Z,se,Pe,Xe,Qe){var st=Z[0]-se[0],jt=Z[1]-se[1],_t=(Qe?Xe:-Xe)/Math.sqrt(st*st+jt*jt),hr=_t*jt,Cr=-_t*st,zr=Z[0]+hr,fi=Z[1]+Cr,$r=se[0]+hr,Bi=se[1]+Cr,fn=(zr+$r)/2,mi=(fi+Bi)/2,zi=$r-zr,ji=Bi-fi,pn=zi*zi+ji*ji,sn=Pe-Xe,wi=zr*Bi-$r*fi,xo=(ji<0?-1:1)*Math.sqrt(Math.max(0,sn*sn*pn-wi*wi)),no=(wi*ji-zi*xo)/pn,Xo=(-wi*zi-ji*xo)/pn,js=(wi*ji+zi*xo)/pn,El=(-wi*zi+ji*xo)/pn,Pl=no-fn,pu=Xo-mi,Il=js-fn,fu=El-mi;return Pl*Pl+pu*pu>Il*Il+fu*fu&&(no=js,Xo=El),[[no-hr,Xo-Cr],[no*Pe/sn,Xo*Pe/sn]]}function Os(){return!0}function Xl(Z){var se=Kr,Pe=Ia,Xe=Os,Qe=Nl,st=Qe.key,jt=.7;function _t(hr){var Cr=[],zr=[],fi=-1,$r=hr.length,Bi,fn=gr(se),mi=gr(Pe);function zi(){Cr.push("M",Qe(Z(zr),jt))}for(;++fi<$r;)Xe.call(this,Bi=hr[fi],fi)?zr.push([+fn.call(this,Bi,fi),+mi.call(this,Bi,fi)]):zr.length&&(zi(),zr=[]);return zr.length&&zi(),Cr.length?Cr.join(""):null}return _t.x=function(hr){return arguments.length?(se=hr,_t):se},_t.y=function(hr){return arguments.length?(Pe=hr,_t):Pe},_t.defined=function(hr){return arguments.length?(Xe=hr,_t):Xe},_t.interpolate=function(hr){return arguments.length?(typeof hr=="function"?st=Qe=hr:st=(Qe=Vl.get(hr)||Nl).key,_t):st},_t.tension=function(hr){return arguments.length?(jt=hr,_t):jt},_t}e.svg.line=function(){return Xl(G)};var Vl=e.map({linear:Nl,"linear-closed":le,step:w,"step-before":q,"step-after":Q,basis:Bt,"basis-open":ir,"basis-closed":or,bundle:kr,cardinal:Ve,"cardinal-open":ee,"cardinal-closed":ue,monotone:Ht});Vl.forEach(function(Z,se){se.key=Z,se.closed=/-closed$/.test(Z)});function Nl(Z){return Z.length>1?Z.join("L"):Z+"Z"}function le(Z){return Z.join("L")+"Z"}function w(Z){for(var se=0,Pe=Z.length,Xe=Z[0],Qe=[Xe[0],",",Xe[1]];++se1&&Qe.push("H",Xe[0]),Qe.join("")}function q(Z){for(var se=0,Pe=Z.length,Xe=Z[0],Qe=[Xe[0],",",Xe[1]];++se1){_t=se[1],st=Z[hr],hr++,Xe+="C"+(Qe[0]+jt[0])+","+(Qe[1]+jt[1])+","+(st[0]-_t[0])+","+(st[1]-_t[1])+","+st[0]+","+st[1];for(var Cr=2;Cr9&&(st=Pe*3/Math.sqrt(st),jt[_t]=st*Xe,jt[_t+1]=st*Qe));for(_t=-1;++_t<=hr;)st=(Z[Math.min(hr,_t+1)][0]-Z[Math.max(0,_t-1)][0])/(6*(1+jt[_t]*jt[_t])),se.push([st||0,jt[_t]*st||0]);return se}function Ht(Z){return Z.length<3?Nl(Z):Z[0]+tt(Z,pt(Z))}e.svg.line.radial=function(){var Z=Xl(nr);return Z.radius=Z.x,delete Z.x,Z.angle=Z.y,delete Z.y,Z};function nr(Z){for(var se,Pe=-1,Xe=Z.length,Qe,st;++PeFe)+",1 "+fi}function Cr(zr,fi,$r,Bi){return"Q 0,0 "+Bi}return st.radius=function(zr){return arguments.length?(Pe=gr(zr),st):Pe},st.source=function(zr){return arguments.length?(Z=gr(zr),st):Z},st.target=function(zr){return arguments.length?(se=gr(zr),st):se},st.startAngle=function(zr){return arguments.length?(Xe=gr(zr),st):Xe},st.endAngle=function(zr){return arguments.length?(Qe=gr(zr),st):Qe},st};function ri(Z){return Z.radius}e.svg.diagonal=function(){var Z=Tr,se=Ir,Pe=li;function Xe(Qe,st){var jt=Z.call(this,Qe,st),_t=se.call(this,Qe,st),hr=(jt.y+_t.y)/2,Cr=[jt,{x:jt.x,y:hr},{x:_t.x,y:hr},_t];return Cr=Cr.map(Pe),"M"+Cr[0]+"C"+Cr[1]+" "+Cr[2]+" "+Cr[3]}return Xe.source=function(Qe){return arguments.length?(Z=gr(Qe),Xe):Z},Xe.target=function(Qe){return arguments.length?(se=gr(Qe),Xe):se},Xe.projection=function(Qe){return arguments.length?(Pe=Qe,Xe):Pe},Xe};function li(Z){return[Z.x,Z.y]}e.svg.diagonal.radial=function(){var Z=e.svg.diagonal(),se=li,Pe=Z.projection;return Z.projection=function(Xe){return arguments.length?Pe(Ei(se=Xe)):se},Z};function Ei(Z){return function(){var se=Z.apply(this,arguments),Pe=se[0],Xe=se[1]-fe;return[Pe*Math.cos(Xe),Pe*Math.sin(Xe)]}}e.svg.symbol=function(){var Z=Zn,se=hn;function Pe(Xe,Qe){return(Ua.get(Z.call(this,Xe,Qe))||Yn)(se.call(this,Xe,Qe))}return Pe.type=function(Xe){return arguments.length?(Z=gr(Xe),Pe):Z},Pe.size=function(Xe){return arguments.length?(se=gr(Xe),Pe):se},Pe};function hn(){return 64}function Zn(){return"circle"}function Yn(Z){var se=Math.sqrt(Z/Fe);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:Yn,cross:function(Z){var se=Math.sqrt(Z/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(Z){var se=Math.sqrt(Z/(2*vl)),Pe=se*vl;return"M0,"+-se+"L"+Pe+",0 0,"+se+" "+-Pe+",0Z"},square:function(Z){var se=Math.sqrt(Z)/2;return"M"+-se+","+-se+"L"+se+","+-se+" "+se+","+se+" "+-se+","+se+"Z"},"triangle-down":function(Z){var se=Math.sqrt(Z/Fo),Pe=se*Fo/2;return"M0,"+Pe+"L"+se+","+-Pe+" "+-se+","+-Pe+"Z"},"triangle-up":function(Z){var se=Math.sqrt(Z/Fo),Pe=se*Fo/2;return"M0,"+-Pe+"L"+se+","+Pe+" "+-se+","+Pe+"Z"}});e.svg.symbolTypes=Ua.keys();var Fo=Math.sqrt(3),vl=Math.tan(30*pe);De.transition=function(Z){for(var se=Ol||++Yl,Pe=tu(Z),Xe=[],Qe,st,jt=ou||{time:Date.now(),ease:yo,delay:0,duration:250},_t=-1,hr=this.length;++_t0;)fi[--pn].call(Z,ji);if(zi>=1)return jt.event&&jt.event.end.call(Z,Z.__data__,se),--st.count?delete st[Xe]:delete Z[Pe],1}jt||(_t=Qe.time,hr=ma($r,0,_t),jt=st[Xe]={tween:new A,time:_t,timer:hr,delay:Qe.delay,duration:Qe.duration,ease:Qe.ease,index:se},Qe=null,++st.count)}e.svg.axis=function(){var Z=e.scale.linear(),se=$u,Pe=6,Xe=6,Qe=3,st=[10],jt=null,_t;function hr(Cr){Cr.each(function(){var zr=e.select(this),fi=this.__chart__||Z,$r=this.__chart__=Z.copy(),Bi=jt==null?$r.ticks?$r.ticks.apply($r,st):$r.domain():jt,fn=_t==null?$r.tickFormat?$r.tickFormat.apply($r,st):G:_t,mi=zr.selectAll(".tick").data(Bi,$r),zi=mi.enter().insert("g",".domain").attr("class","tick").style("opacity",Oe),ji=e.transition(mi.exit()).style("opacity",Oe).remove(),pn=e.transition(mi.order()).style("opacity",1),sn=Math.max(Pe,0)+Qe,wi,xo=Ki($r),no=zr.selectAll(".domain").data([0]),Xo=(no.enter().append("path").attr("class","domain"),e.transition(no));zi.append("line"),zi.append("text");var js=zi.select("line"),El=pn.select("line"),Pl=mi.select("text").text(fn),pu=zi.select("text"),Il=pn.select("text"),fu=se==="top"||se==="left"?-1:1,Xu,Vu,tf,ds;if(se==="bottom"||se==="top"?(wi=Wu,Xu="x",tf="y",Vu="x2",ds="y2",Pl.attr("dy",fu<0?"0em":".71em").style("text-anchor","middle"),Xo.attr("d","M"+xo[0]+","+fu*Xe+"V0H"+xo[1]+"V"+fu*Xe)):(wi=ju,Xu="y",tf="x",Vu="y2",ds="x2",Pl.attr("dy",".32em").style("text-anchor",fu<0?"end":"start"),Xo.attr("d","M"+fu*Xe+","+xo[0]+"H0V"+xo[1]+"H"+fu*Xe)),js.attr(ds,fu*Pe),pu.attr(tf,fu*sn),El.attr(Vu,0).attr(ds,fu*Pe),Il.attr(Xu,0).attr(tf,fu*sn),$r.rangeBand){var Wl=$r,Tu=Wl.rangeBand()/2;fi=$r=function(Au){return Wl(Au)+Tu}}else fi.rangeBand?fi=$r:ji.call(wi,$r,fi);zi.call(wi,fi,$r),pn.call(wi,$r,$r)})}return hr.scale=function(Cr){return arguments.length?(Z=Cr,hr):Z},hr.orient=function(Cr){return arguments.length?(se=Cr in Ku?Cr+"":$u,hr):se},hr.ticks=function(){return arguments.length?(st=r(arguments),hr):st},hr.tickValues=function(Cr){return arguments.length?(jt=Cr,hr):jt},hr.tickFormat=function(Cr){return arguments.length?(_t=Cr,hr):_t},hr.tickSize=function(Cr){var zr=arguments.length;return zr?(Pe=+Cr,Xe=+arguments[zr-1],hr):Pe},hr.innerTickSize=function(Cr){return arguments.length?(Pe=+Cr,hr):Pe},hr.outerTickSize=function(Cr){return arguments.length?(Xe=+Cr,hr):Xe},hr.tickPadding=function(Cr){return arguments.length?(Qe=+Cr,hr):Qe},hr.tickSubdivide=function(){return arguments.length&&hr},hr};var $u="bottom",Ku={top:1,right:1,bottom:1,left:1};function Wu(Z,se,Pe){Z.attr("transform",function(Xe){var Qe=se(Xe);return"translate("+(isFinite(Qe)?Qe:Pe(Xe))+",0)"})}function ju(Z,se,Pe){Z.attr("transform",function(Xe){var Qe=se(Xe);return"translate(0,"+(isFinite(Qe)?Qe:Pe(Xe))+")"})}e.svg.brush=function(){var Z=Ce(zr,"brushstart","brush","brushend"),se=null,Pe=null,Xe=[0,0],Qe=[0,0],st,jt,_t=!0,hr=!0,Cr=_f[0];function zr(mi){mi.each(function(){var zi=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",fn).on("touchstart.brush",fn),ji=zi.selectAll(".background").data([0]);ji.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),zi.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var pn=zi.selectAll(".resize").data(Cr,G);pn.exit().remove(),pn.enter().append("g").attr("class",function(no){return"resize "+no}).style("cursor",function(no){return sf[no]}).append("rect").attr("x",function(no){return/[ew]$/.test(no)?-3:null}).attr("y",function(no){return/^[ns]/.test(no)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),pn.style("display",zr.empty()?"none":null);var sn=e.transition(zi),wi=e.transition(ji),xo;se&&(xo=Ki(se),wi.attr("x",xo[0]).attr("width",xo[1]-xo[0]),$r(sn)),Pe&&(xo=Ki(Pe),wi.attr("y",xo[0]).attr("height",xo[1]-xo[0]),Bi(sn)),fi(sn)})}zr.event=function(mi){mi.each(function(){var zi=Z.of(this,arguments),ji={x:Xe,y:Qe,i:st,j:jt},pn=this.__chart__||ji;this.__chart__=ji,Ol?e.select(this).transition().each("start.brush",function(){st=pn.i,jt=pn.j,Xe=pn.x,Qe=pn.y,zi({type:"brushstart"})}).tween("brush:brush",function(){var sn=Ja(Xe,ji.x),wi=Ja(Qe,ji.y);return st=jt=null,function(xo){Xe=ji.x=sn(xo),Qe=ji.y=wi(xo),zi({type:"brush",mode:"resize"})}}).each("end.brush",function(){st=ji.i,jt=ji.j,zi({type:"brush",mode:"resize"}),zi({type:"brushend"})}):(zi({type:"brushstart"}),zi({type:"brush",mode:"resize"}),zi({type:"brushend"}))})};function fi(mi){mi.selectAll(".resize").attr("transform",function(zi){return"translate("+Xe[+/e$/.test(zi)]+","+Qe[+/^s/.test(zi)]+")"})}function $r(mi){mi.select(".extent").attr("x",Xe[0]),mi.selectAll(".extent,.n>rect,.s>rect").attr("width",Xe[1]-Xe[0])}function Bi(mi){mi.select(".extent").attr("y",Qe[0]),mi.selectAll(".extent,.e>rect,.w>rect").attr("height",Qe[1]-Qe[0])}function fn(){var mi=this,zi=e.select(e.event.target),ji=Z.of(mi,arguments),pn=e.select(mi),sn=zi.datum(),wi=!/^(n|s)$/.test(sn)&&se,xo=!/^(e|w)$/.test(sn)&&Pe,no=zi.classed("extent"),Xo=yr(mi),js,El=e.mouse(mi),Pl,pu=e.select(a(mi)).on("keydown.brush",Xu).on("keyup.brush",Vu);if(e.event.changedTouches?pu.on("touchmove.brush",tf).on("touchend.brush",Wl):pu.on("mousemove.brush",tf).on("mouseup.brush",Wl),pn.interrupt().selectAll("*").interrupt(),no)El[0]=Xe[0]-El[0],El[1]=Qe[0]-El[1];else if(sn){var Il=+/w$/.test(sn),fu=+/^n/.test(sn);Pl=[Xe[1-Il]-El[0],Qe[1-fu]-El[1]],El[0]=Xe[Il],El[1]=Qe[fu]}else e.event.altKey&&(js=El.slice());pn.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",zi.style("cursor")),ji({type:"brushstart"}),tf();function Xu(){e.event.keyCode==32&&(no||(js=null,El[0]-=Xe[1],El[1]-=Qe[1],no=2),be())}function Vu(){e.event.keyCode==32&&no==2&&(El[0]+=Xe[1],El[1]+=Qe[1],no=0,be())}function tf(){var Tu=e.mouse(mi),Au=!1;Pl&&(Tu[0]+=Pl[0],Tu[1]+=Pl[1]),no||(e.event.altKey?(js||(js=[(Xe[0]+Xe[1])/2,(Qe[0]+Qe[1])/2]),El[0]=Xe[+(Tu[0]{(function(e,t){typeof cL=="object"&&typeof Eee!="undefined"?t(cL):(e=e||self,t(e.d3=e.d3||{}))})(cL,function(e){"use strict";var t=new Date,r=new Date;function n(Te,ot,Tt,vt){function Ye(He){return Te(He=arguments.length===0?new Date:new Date(+He)),He}return Ye.floor=function(He){return Te(He=new Date(+He)),He},Ye.ceil=function(He){return Te(He=new Date(He-1)),ot(He,1),Te(He),He},Ye.round=function(He){var it=Ye(He),et=Ye.ceil(He);return He-it0))return It;do It.push(Yt=new Date(+He)),ot(He,et),Te(He);while(Yt=it)for(;Te(it),!He(it);)it.setTime(it-1)},function(it,et){if(it>=it)if(et<0)for(;++et<=0;)for(;ot(it,-1),!He(it););else for(;--et>=0;)for(;ot(it,1),!He(it););})},Tt&&(Ye.count=function(He,it){return t.setTime(+He),r.setTime(+it),Te(t),Te(r),Math.floor(Tt(t,r))},Ye.every=function(He){return He=Math.floor(He),!isFinite(He)||!(He>0)?null:He>1?Ye.filter(vt?function(it){return vt(it)%He===0}:function(it){return Ye.count(0,it)%He===0}):Ye}),Ye}var i=n(function(){},function(Te,ot){Te.setTime(+Te+ot)},function(Te,ot){return ot-Te});i.every=function(Te){return Te=Math.floor(Te),!isFinite(Te)||!(Te>0)?null:Te>1?n(function(ot){ot.setTime(Math.floor(ot/Te)*Te)},function(ot,Tt){ot.setTime(+ot+Tt*Te)},function(ot,Tt){return(Tt-ot)/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,ot){Te.setTime(+Te+ot*o)},function(Te,ot){return(ot-Te)/o},function(Te){return Te.getUTCSeconds()}),h=c.range,d=n(function(Te){Te.setTime(Te-Te.getMilliseconds()-Te.getSeconds()*o)},function(Te,ot){Te.setTime(+Te+ot*s)},function(Te,ot){return(ot-Te)/s},function(Te){return Te.getMinutes()}),p=d.range,_=n(function(Te){Te.setTime(Te-Te.getMilliseconds()-Te.getSeconds()*o-Te.getMinutes()*s)},function(Te,ot){Te.setTime(+Te+ot*u)},function(Te,ot){return(ot-Te)/u},function(Te){return Te.getHours()}),b=_.range,v=n(function(Te){Te.setHours(0,0,0,0)},function(Te,ot){Te.setDate(Te.getDate()+ot)},function(Te,ot){return(ot-Te-(ot.getTimezoneOffset()-Te.getTimezoneOffset())*s)/l},function(Te){return Te.getDate()-1}),k=v.range;function E(Te){return n(function(ot){ot.setDate(ot.getDate()-(ot.getDay()+7-Te)%7),ot.setHours(0,0,0,0)},function(ot,Tt){ot.setDate(ot.getDate()+Tt*7)},function(ot,Tt){return(Tt-ot-(Tt.getTimezoneOffset()-ot.getTimezoneOffset())*s)/f})}var A=E(0),L=E(1),x=E(2),C=E(3),M=E(4),m=E(5),P=E(6),T=A.range,B=L.range,F=x.range,U=C.range,G=M.range,j=m.range,W=P.range,N=n(function(Te){Te.setDate(1),Te.setHours(0,0,0,0)},function(Te,ot){Te.setMonth(Te.getMonth()+ot)},function(Te,ot){return ot.getMonth()-Te.getMonth()+(ot.getFullYear()-Te.getFullYear())*12},function(Te){return Te.getMonth()}),H=N.range,re=n(function(Te){Te.setMonth(0,1),Te.setHours(0,0,0,0)},function(Te,ot){Te.setFullYear(Te.getFullYear()+ot)},function(Te,ot){return ot.getFullYear()-Te.getFullYear()},function(Te){return Te.getFullYear()});re.every=function(Te){return!isFinite(Te=Math.floor(Te))||!(Te>0)?null:n(function(ot){ot.setFullYear(Math.floor(ot.getFullYear()/Te)*Te),ot.setMonth(0,1),ot.setHours(0,0,0,0)},function(ot,Tt){ot.setFullYear(ot.getFullYear()+Tt*Te)})};var ae=re.range,be=n(function(Te){Te.setUTCSeconds(0,0)},function(Te,ot){Te.setTime(+Te+ot*s)},function(Te,ot){return(ot-Te)/s},function(Te){return Te.getUTCMinutes()}),ze=be.range,Ce=n(function(Te){Te.setUTCMinutes(0,0,0)},function(Te,ot){Te.setTime(+Te+ot*u)},function(Te,ot){return(ot-Te)/u},function(Te){return Te.getUTCHours()}),de=Ce.range,te=n(function(Te){Te.setUTCHours(0,0,0,0)},function(Te,ot){Te.setUTCDate(Te.getUTCDate()+ot)},function(Te,ot){return(ot-Te)/l},function(Te){return Te.getUTCDate()-1}),ke=te.range;function Ee(Te){return n(function(ot){ot.setUTCDate(ot.getUTCDate()-(ot.getUTCDay()+7-Te)%7),ot.setUTCHours(0,0,0,0)},function(ot,Tt){ot.setUTCDate(ot.getUTCDate()+Tt*7)},function(ot,Tt){return(Tt-ot)/f})}var Me=Ee(0),Ue=Ee(1),De=Ee(2),ye=Ee(3),qe=Ee(4),ce=Ee(5),Je=Ee(6),nt=Me.range,gt=Ue.range,Nt=De.range,at=ye.range,Ke=qe.range,Ct=ce.range,wt=Je.range,St=n(function(Te){Te.setUTCDate(1),Te.setUTCHours(0,0,0,0)},function(Te,ot){Te.setUTCMonth(Te.getUTCMonth()+ot)},function(Te,ot){return ot.getUTCMonth()-Te.getUTCMonth()+(ot.getUTCFullYear()-Te.getUTCFullYear())*12},function(Te){return Te.getUTCMonth()}),Dt=St.range,Zt=n(function(Te){Te.setUTCMonth(0,1),Te.setUTCHours(0,0,0,0)},function(Te,ot){Te.setUTCFullYear(Te.getUTCFullYear()+ot)},function(Te,ot){return ot.getUTCFullYear()-Te.getUTCFullYear()},function(Te){return Te.getUTCFullYear()});Zt.every=function(Te){return!isFinite(Te=Math.floor(Te))||!(Te>0)?null:n(function(ot){ot.setUTCFullYear(Math.floor(ot.getUTCFullYear()/Te)*Te),ot.setUTCMonth(0,1),ot.setUTCHours(0,0,0,0)},function(ot,Tt){ot.setUTCFullYear(ot.getUTCFullYear()+Tt*Te)})};var Et=Zt.range;e.timeDay=v,e.timeDays=k,e.timeFriday=m,e.timeFridays=j,e.timeHour=_,e.timeHours=b,e.timeInterval=n,e.timeMillisecond=i,e.timeMilliseconds=a,e.timeMinute=d,e.timeMinutes=p,e.timeMonday=L,e.timeMondays=B,e.timeMonth=N,e.timeMonths=H,e.timeSaturday=P,e.timeSaturdays=W,e.timeSecond=c,e.timeSeconds=h,e.timeSunday=A,e.timeSundays=T,e.timeThursday=M,e.timeThursdays=G,e.timeTuesday=x,e.timeTuesdays=F,e.timeWednesday=C,e.timeWednesdays=U,e.timeWeek=A,e.timeWeeks=T,e.timeYear=re,e.timeYears=ae,e.utcDay=te,e.utcDays=ke,e.utcFriday=ce,e.utcFridays=Ct,e.utcHour=Ce,e.utcHours=de,e.utcMillisecond=i,e.utcMilliseconds=a,e.utcMinute=be,e.utcMinutes=ze,e.utcMonday=Ue,e.utcMondays=gt,e.utcMonth=St,e.utcMonths=Dt,e.utcSaturday=Je,e.utcSaturdays=wt,e.utcSecond=c,e.utcSeconds=h,e.utcSunday=Me,e.utcSundays=nt,e.utcThursday=qe,e.utcThursdays=Ke,e.utcTuesday=De,e.utcTuesdays=Nt,e.utcWednesday=ye,e.utcWednesdays=at,e.utcWeek=Me,e.utcWeeks=nt,e.utcYear=Zt,e.utcYears=Et,Object.defineProperty(e,"__esModule",{value:!0})})});var r3=Ae((hL,kee)=>{(function(e,t){typeof hL=="object"&&typeof kee!="undefined"?t(hL,P9()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(hL,function(e,t){"use strict";function r(xe){if(0<=xe.y&&xe.y<100){var Oe=new Date(-1,xe.m,xe.d,xe.H,xe.M,xe.S,xe.L);return Oe.setFullYear(xe.y),Oe}return new Date(xe.y,xe.m,xe.d,xe.H,xe.M,xe.S,xe.L)}function n(xe){if(0<=xe.y&&xe.y<100){var Oe=new Date(Date.UTC(-1,xe.m,xe.d,xe.H,xe.M,xe.S,xe.L));return Oe.setUTCFullYear(xe.y),Oe}return new Date(Date.UTC(xe.y,xe.m,xe.d,xe.H,xe.M,xe.S,xe.L))}function i(xe,Oe,Ie){return{y:xe,m:Oe,d:Ie,H:0,M:0,S:0,L:0}}function a(xe){var Oe=xe.dateTime,Ie=xe.date,Fe=xe.time,ft=xe.periods,ge=xe.days,fe=xe.shortDays,pe=xe.months,dt=xe.shortMonths,Pt=h(ft),zt=d(ft),rr=h(ge),Gr=d(ge),Br=h(fe),Er=d(fe),Rr=h(pe),pi=d(pe),Di=h(dt),ni=d(dt),$i={a:jr,A:gi,b:ki,B:Vi,c:null,d:N,e:N,f:ze,H,I:re,j:ae,L:be,m:Ce,M:de,p:ti,q:tn,Q:it,s:et,S:te,u:ke,U:Ee,V:Me,w:Ue,W:De,x:null,X:null,y:ye,Y:qe,Z:ce,"%":He},Qi={a:Yr,A:oi,b:Fi,B:an,c:null,d:Je,e:Je,f:Ke,H:nt,I:gt,j:Nt,L:at,m:Ct,M:wt,p:nn,q:Ri,Q:it,s:et,S:St,u:Dt,U:Zt,V:Et,w:Te,W:ot,x:null,X:null,y:Tt,Y:vt,Z:Ye,"%":He},si={a:Gt,A:Wt,b:xr,B:Lr,c:Nr,d:M,e:M,f:U,H:P,I:P,j:m,L:F,m:C,M:T,p:yt,q:x,Q:j,s:W,S:B,u:_,U:b,V:v,w:p,W:k,x:Or,X:Hr,y:A,Y:E,Z:L,"%":G};$i.x=Ai(Ie,$i),$i.X=Ai(Fe,$i),$i.c=Ai(Oe,$i),Qi.x=Ai(Ie,Qi),Qi.X=Ai(Fe,Qi),Qi.c=Ai(Oe,Qi);function Ai(Ii,xn){return function(bi){var Xr=[],ct=-1,tr=0,pr=Ii.length,gr,Zr,Ti;for(bi instanceof Date||(bi=new Date(+bi));++ct53)return null;"w"in Xr||(Xr.w=1),"Z"in Xr?(tr=n(i(Xr.y,0,1)),pr=tr.getUTCDay(),tr=pr>4||pr===0?t.utcMonday.ceil(tr):t.utcMonday(tr),tr=t.utcDay.offset(tr,(Xr.V-1)*7),Xr.y=tr.getUTCFullYear(),Xr.m=tr.getUTCMonth(),Xr.d=tr.getUTCDate()+(Xr.w+6)%7):(tr=r(i(Xr.y,0,1)),pr=tr.getDay(),tr=pr>4||pr===0?t.timeMonday.ceil(tr):t.timeMonday(tr),tr=t.timeDay.offset(tr,(Xr.V-1)*7),Xr.y=tr.getFullYear(),Xr.m=tr.getMonth(),Xr.d=tr.getDate()+(Xr.w+6)%7)}else("W"in Xr||"U"in Xr)&&("w"in Xr||(Xr.w="u"in Xr?Xr.u%7:"W"in Xr?1:0),pr="Z"in Xr?n(i(Xr.y,0,1)).getUTCDay():r(i(Xr.y,0,1)).getDay(),Xr.m=0,Xr.d="W"in Xr?(Xr.w+6)%7+Xr.W*7-(pr+5)%7:Xr.w+Xr.U*7-(pr+6)%7);return"Z"in Xr?(Xr.H+=Xr.Z/100|0,Xr.M+=Xr.Z%100,n(Xr)):r(Xr)}}function Rt(Ii,xn,bi,Xr){for(var ct=0,tr=xn.length,pr=bi.length,gr,Zr;ct=pr)return-1;if(gr=xn.charCodeAt(ct++),gr===37){if(gr=xn.charAt(ct++),Zr=si[gr in o?xn.charAt(ct++):gr],!Zr||(Xr=Zr(Ii,bi,Xr))<0)return-1}else if(gr!=bi.charCodeAt(Xr++))return-1}return Xr}function yt(Ii,xn,bi){var Xr=Pt.exec(xn.slice(bi));return Xr?(Ii.p=zt[Xr[0].toLowerCase()],bi+Xr[0].length):-1}function Gt(Ii,xn,bi){var Xr=Br.exec(xn.slice(bi));return Xr?(Ii.w=Er[Xr[0].toLowerCase()],bi+Xr[0].length):-1}function Wt(Ii,xn,bi){var Xr=rr.exec(xn.slice(bi));return Xr?(Ii.w=Gr[Xr[0].toLowerCase()],bi+Xr[0].length):-1}function xr(Ii,xn,bi){var Xr=Di.exec(xn.slice(bi));return Xr?(Ii.m=ni[Xr[0].toLowerCase()],bi+Xr[0].length):-1}function Lr(Ii,xn,bi){var Xr=Rr.exec(xn.slice(bi));return Xr?(Ii.m=pi[Xr[0].toLowerCase()],bi+Xr[0].length):-1}function Nr(Ii,xn,bi){return Rt(Ii,Oe,xn,bi)}function Or(Ii,xn,bi){return Rt(Ii,Ie,xn,bi)}function Hr(Ii,xn,bi){return Rt(Ii,Fe,xn,bi)}function jr(Ii){return fe[Ii.getDay()]}function gi(Ii){return ge[Ii.getDay()]}function ki(Ii){return dt[Ii.getMonth()]}function Vi(Ii){return pe[Ii.getMonth()]}function ti(Ii){return ft[+(Ii.getHours()>=12)]}function tn(Ii){return 1+~~(Ii.getMonth()/3)}function Yr(Ii){return fe[Ii.getUTCDay()]}function oi(Ii){return ge[Ii.getUTCDay()]}function Fi(Ii){return dt[Ii.getUTCMonth()]}function an(Ii){return pe[Ii.getUTCMonth()]}function nn(Ii){return ft[+(Ii.getUTCHours()>=12)]}function Ri(Ii){return 1+~~(Ii.getUTCMonth()/3)}return{format:function(Ii){var xn=Ai(Ii+="",$i);return xn.toString=function(){return Ii},xn},parse:function(Ii){var xn=Ni(Ii+="",!1);return xn.toString=function(){return Ii},xn},utcFormat:function(Ii){var xn=Ai(Ii+="",Qi);return xn.toString=function(){return Ii},xn},utcParse:function(Ii){var xn=Ni(Ii+="",!0);return xn.toString=function(){return Ii},xn}}}var o={"-":"",_:" ",0:"0"},s=/^\s*\d+/,u=/^%/,l=/[\\^$*+?|[\]().{}]/g;function f(xe,Oe,Ie){var Fe=xe<0?"-":"",ft=(Fe?-xe:xe)+"",ge=ft.length;return Fe+(ge68?1900:2e3),Ie+Fe[0].length):-1}function L(xe,Oe,Ie){var Fe=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Oe.slice(Ie,Ie+6));return Fe?(xe.Z=Fe[1]?0:-(Fe[2]+(Fe[3]||"00")),Ie+Fe[0].length):-1}function x(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+1));return Fe?(xe.q=Fe[0]*3-3,Ie+Fe[0].length):-1}function C(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+2));return Fe?(xe.m=Fe[0]-1,Ie+Fe[0].length):-1}function M(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+2));return Fe?(xe.d=+Fe[0],Ie+Fe[0].length):-1}function m(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+3));return Fe?(xe.m=0,xe.d=+Fe[0],Ie+Fe[0].length):-1}function P(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+2));return Fe?(xe.H=+Fe[0],Ie+Fe[0].length):-1}function T(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+2));return Fe?(xe.M=+Fe[0],Ie+Fe[0].length):-1}function B(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+2));return Fe?(xe.S=+Fe[0],Ie+Fe[0].length):-1}function F(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+3));return Fe?(xe.L=+Fe[0],Ie+Fe[0].length):-1}function U(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie,Ie+6));return Fe?(xe.L=Math.floor(Fe[0]/1e3),Ie+Fe[0].length):-1}function G(xe,Oe,Ie){var Fe=u.exec(Oe.slice(Ie,Ie+1));return Fe?Ie+Fe[0].length:-1}function j(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie));return Fe?(xe.Q=+Fe[0],Ie+Fe[0].length):-1}function W(xe,Oe,Ie){var Fe=s.exec(Oe.slice(Ie));return Fe?(xe.s=+Fe[0],Ie+Fe[0].length):-1}function N(xe,Oe){return f(xe.getDate(),Oe,2)}function H(xe,Oe){return f(xe.getHours(),Oe,2)}function re(xe,Oe){return f(xe.getHours()%12||12,Oe,2)}function ae(xe,Oe){return f(1+t.timeDay.count(t.timeYear(xe),xe),Oe,3)}function be(xe,Oe){return f(xe.getMilliseconds(),Oe,3)}function ze(xe,Oe){return be(xe,Oe)+"000"}function Ce(xe,Oe){return f(xe.getMonth()+1,Oe,2)}function de(xe,Oe){return f(xe.getMinutes(),Oe,2)}function te(xe,Oe){return f(xe.getSeconds(),Oe,2)}function ke(xe){var Oe=xe.getDay();return Oe===0?7:Oe}function Ee(xe,Oe){return f(t.timeSunday.count(t.timeYear(xe)-1,xe),Oe,2)}function Me(xe,Oe){var Ie=xe.getDay();return xe=Ie>=4||Ie===0?t.timeThursday(xe):t.timeThursday.ceil(xe),f(t.timeThursday.count(t.timeYear(xe),xe)+(t.timeYear(xe).getDay()===4),Oe,2)}function Ue(xe){return xe.getDay()}function De(xe,Oe){return f(t.timeMonday.count(t.timeYear(xe)-1,xe),Oe,2)}function ye(xe,Oe){return f(xe.getFullYear()%100,Oe,2)}function qe(xe,Oe){return f(xe.getFullYear()%1e4,Oe,4)}function ce(xe){var Oe=xe.getTimezoneOffset();return(Oe>0?"-":(Oe*=-1,"+"))+f(Oe/60|0,"0",2)+f(Oe%60,"0",2)}function Je(xe,Oe){return f(xe.getUTCDate(),Oe,2)}function nt(xe,Oe){return f(xe.getUTCHours(),Oe,2)}function gt(xe,Oe){return f(xe.getUTCHours()%12||12,Oe,2)}function Nt(xe,Oe){return f(1+t.utcDay.count(t.utcYear(xe),xe),Oe,3)}function at(xe,Oe){return f(xe.getUTCMilliseconds(),Oe,3)}function Ke(xe,Oe){return at(xe,Oe)+"000"}function Ct(xe,Oe){return f(xe.getUTCMonth()+1,Oe,2)}function wt(xe,Oe){return f(xe.getUTCMinutes(),Oe,2)}function St(xe,Oe){return f(xe.getUTCSeconds(),Oe,2)}function Dt(xe){var Oe=xe.getUTCDay();return Oe===0?7:Oe}function Zt(xe,Oe){return f(t.utcSunday.count(t.utcYear(xe)-1,xe),Oe,2)}function Et(xe,Oe){var Ie=xe.getUTCDay();return xe=Ie>=4||Ie===0?t.utcThursday(xe):t.utcThursday.ceil(xe),f(t.utcThursday.count(t.utcYear(xe),xe)+(t.utcYear(xe).getUTCDay()===4),Oe,2)}function Te(xe){return xe.getUTCDay()}function ot(xe,Oe){return f(t.utcMonday.count(t.utcYear(xe)-1,xe),Oe,2)}function Tt(xe,Oe){return f(xe.getUTCFullYear()%100,Oe,2)}function vt(xe,Oe){return f(xe.getUTCFullYear()%1e4,Oe,4)}function Ye(){return"+0000"}function He(){return"%"}function it(xe){return+xe}function et(xe){return Math.floor(+xe/1e3)}var It;Yt({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 Yt(xe){return It=a(xe),e.timeFormat=It.format,e.timeParse=It.parse,e.utcFormat=It.utcFormat,e.utcParse=It.utcParse,It}var cr="%Y-%m-%dT%H:%M:%S.%LZ";function _r(xe){return xe.toISOString()}var yr=Date.prototype.toISOString?_r:e.utcFormat(cr);function Ut(xe){var Oe=new Date(xe);return isNaN(Oe)?null:Oe}var Re=+new Date("2000-01-01T00:00:00.000Z")?Ut:e.utcParse(cr);e.isoFormat=yr,e.isoParse=Re,e.timeFormatDefaultLocale=Yt,e.timeFormatLocale=a,Object.defineProperty(e,"__esModule",{value:!0})})});var z9=Ae((dL,Cee)=>{(function(e,t){typeof dL=="object"&&typeof Cee!="undefined"?t(dL):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(dL,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((m=(C=M?C.toExponential(M-1):C.toExponential()).indexOf("e"))<0)return null;var m,P=C.slice(0,m);return[P.length>1?P[0]+P.slice(2):P,+C.slice(m+1)]}function n(C){return C=r(Math.abs(C)),C?C[1]:NaN}function i(C,M){return function(m,P){for(var T=m.length,B=[],F=0,U=C[0],G=0;T>0&&U>0&&(G+U+1>P&&(U=Math.max(1,P-G)),B.push(m.substring(T-=U,T+U)),!((G+=U+1)>P));)U=C[F=(F+1)%C.length];return B.reverse().join(M)}}function a(C){return function(M){return M.replace(/[0-9]/g,function(m){return C[+m]})}}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,m=1,P=-1,T;m0&&(P=0);break}return P>0?C.slice(0,P)+C.slice(T+1):C}var f;function c(C,M){var m=r(C,M);if(!m)return C+"";var P=m[0],T=m[1],B=T-(f=Math.max(-8,Math.min(8,Math.floor(T/3)))*3)+1,F=P.length;return B===F?P:B>F?P+new Array(B-F+1).join("0"):B>0?P.slice(0,B)+"."+P.slice(B):"0."+new Array(1-B).join("0")+r(C,Math.max(0,M+B-1))[0]}function h(C,M){var m=r(C,M);if(!m)return C+"";var P=m[0],T=m[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: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 _=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(_.call(C.grouping,Number),C.thousands+""),m=C.currency===void 0?"":C.currency[0]+"",P=C.currency===void 0?"":C.currency[1]+"",T=C.decimal===void 0?".":C.decimal+"",B=C.numerals===void 0?p:a(_.call(C.numerals,String)),F=C.percent===void 0?"%":C.percent+"",U=C.minus===void 0?"-":C.minus+"",G=C.nan===void 0?"NaN":C.nan+"";function j(N){N=s(N);var H=N.fill,re=N.align,ae=N.sign,be=N.symbol,ze=N.zero,Ce=N.width,de=N.comma,te=N.precision,ke=N.trim,Ee=N.type;Ee==="n"?(de=!0,Ee="g"):d[Ee]||(te===void 0&&(te=12),ke=!0,Ee="g"),(ze||H==="0"&&re==="=")&&(ze=!0,H="0",re="=");var Me=be==="$"?m:be==="#"&&/[boxX]/.test(Ee)?"0"+Ee.toLowerCase():"",Ue=be==="$"?P:/[%p]/.test(Ee)?F:"",De=d[Ee],ye=/[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 qe(ce){var Je=Me,nt=Ue,gt,Nt,at;if(Ee==="c")nt=De(ce)+nt,ce="";else{ce=+ce;var Ke=ce<0||1/ce<0;if(ce=isNaN(ce)?G:De(Math.abs(ce),te),ke&&(ce=l(ce)),Ke&&+ce==0&&ae!=="+"&&(Ke=!1),Je=(Ke?ae==="("?ae:U:ae==="-"||ae==="("?"":ae)+Je,nt=(Ee==="s"?b[8+f/3]:"")+nt+(Ke&&ae==="("?")":""),ye){for(gt=-1,Nt=ce.length;++gtat||at>57){nt=(at===46?T+ce.slice(gt+1):ce.slice(gt))+nt,ce=ce.slice(0,gt);break}}}de&&!ze&&(ce=M(ce,1/0));var Ct=Je.length+ce.length+nt.length,wt=Ct>1)+Je+ce+nt+wt.slice(Ct);break;default:ce=wt+Je+ce+nt;break}return B(ce)}return qe.toString=function(){return N+""},qe}function W(N,H){var re=j((N=s(N),N.type="f",N)),ae=Math.max(-8,Math.min(8,Math.floor(n(H)/3)))*3,be=Math.pow(10,-ae),ze=b[8+ae/3];return function(Ce){return re(be*Ce)+ze}}return{format:j,formatPrefix:W}}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 x(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=x,Object.defineProperty(e,"__esModule",{value:!0})})});var Pee=Ae((Pir,Lee)=>{"use strict";Lee.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 ku=Ae((zir,zee)=>{"use strict";var irt=Pee();zee.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&irt(r))return!1}else if(t!=="number")return!1;return e-e<1}});var rf=Ae((Iir,Iee)=>{"use strict";Iee.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 I9=Ae((pL,Ree)=>{(function(e,t){typeof pL=="object"&&typeof Ree!="undefined"?t(pL):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})(pL,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 _=new ArrayBuffer(s),b=new Uint8Array(_);for(l=0;l>4,b[f++]=(h&15)<<4|d>>2,b[f++]=(d&3)<<6|p&63;return _};e.decode=a,e.encode=i,Object.defineProperty(e,"__esModule",{value:!0})})});var yg=Ae((Rir,Dee)=>{"use strict";Dee.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 mp=Ae(gm=>{"use strict";var nrt=I9().decode,art=yg(),R9=Array.isArray,ort=ArrayBuffer,srt=DataView;function Fee(e){return ort.isView(e)&&!(e instanceof srt)}gm.isTypedArray=Fee;function vL(e){return R9(e)||Fee(e)}gm.isArrayOrTypedArray=vL;function lrt(e){return!vL(e[0])}gm.isArray1D=lrt;gm.ensureArray=function(e,t){return R9(e)||(e=[]),e.length=t,e};var zd={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};zd.uint8c=zd.u1c;zd.uint8=zd.u1;zd.int8=zd.i1;zd.uint16=zd.u2;zd.int16=zd.i2;zd.uint32=zd.u4;zd.int32=zd.i4;zd.float32=zd.f4;zd.float64=zd.f8;function D9(e){return e.constructor===ArrayBuffer}gm.isArrayBuffer=D9;gm.decodeTypedArraySpec=function(e){var t=[],r=urt(e),n=r.dtype,i=zd[n];if(!i)throw new Error('Error in dtype: "'+n+'"');var a=i.BYTES_PER_ELEMENT,o=r.bdata;D9(o)||(o=nrt(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 Oee=ku(),B9=mp().isArrayOrTypedArray;Vee.exports=function(t,r){if(Oee(r))r=String(r);else if(typeof r!="string"||r.slice(-4)==="[-1]")throw"bad property string";var n=r.split("."),i,a,o,s;for(s=0;s{"use strict";var i3=PM(),prt=/^\w*$/,vrt=0,Gee=1,mL=2,Hee=3,sb=4;Wee.exports=function(t,r,n,i){n=n||"name",i=i||"value";var a,o,s,u={};r&&r.length?(s=i3(t,r),o=s.get()):o=t,r=r||"";var l={};if(o)for(a=0;a2)return u[d]=u[d]|mL,c.set(h,null);if(f){for(a=d;a{"use strict";var mrt=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,yrt=/^[^\.\[\]]+$/;Xee.exports=function(e,t){for(;t;){var r=e.match(mrt);if(r)e=r[1];else if(e.match(yrt))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 yL=Ae((qir,Yee)=>{"use strict";var grt=ku();Yee.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 grt(n)||(n=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),n}});var $ee=Ae((Nir,Jee)=>{"use strict";var Kee=mp().isArrayOrTypedArray,zM=yg();Jee.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(Kee(i)&&Kee(a)&&zM(i[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(i.length,a.length),s=0;s{"use strict";function _rt(e,t){var r=e%t;return r<0?r+t:r}function xrt(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}Qee.exports={mod:_rt,modHalf:xrt}});var cd=Ae((Vir,gL)=>{(function(e){var t=/^\s+/,r=/\s+$/,n=0,i=e.round,a=e.min,o=e.max,s=e.random;function u(ye,qe){if(ye=ye||"",qe=qe||{},ye instanceof u)return ye;if(!(this instanceof u))return new u(ye,qe);var ce=l(ye);this._originalInput=ye,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=qe.format||ce.format,this._gradientType=qe.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++}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 ye=this.toRgb();return(ye.r*299+ye.g*587+ye.b*114)/1e3},getLuminance:function(){var ye=this.toRgb(),qe,ce,Je,nt,gt,Nt;return qe=ye.r/255,ce=ye.g/255,Je=ye.b/255,qe<=.03928?nt=qe/12.92:nt=e.pow((qe+.055)/1.055,2.4),ce<=.03928?gt=ce/12.92:gt=e.pow((ce+.055)/1.055,2.4),Je<=.03928?Nt=Je/12.92:Nt=e.pow((Je+.055)/1.055,2.4),.2126*nt+.7152*gt+.0722*Nt},setAlpha:function(ye){return this._a=N(ye),this._roundA=i(100*this._a)/100,this},toHsv:function(){var ye=d(this._r,this._g,this._b);return{h:ye.h*360,s:ye.s,v:ye.v,a:this._a}},toHsvString:function(){var ye=d(this._r,this._g,this._b),qe=i(ye.h*360),ce=i(ye.s*100),Je=i(ye.v*100);return this._a==1?"hsv("+qe+", "+ce+"%, "+Je+"%)":"hsva("+qe+", "+ce+"%, "+Je+"%, "+this._roundA+")"},toHsl:function(){var ye=c(this._r,this._g,this._b);return{h:ye.h*360,s:ye.s,l:ye.l,a:this._a}},toHslString:function(){var ye=c(this._r,this._g,this._b),qe=i(ye.h*360),ce=i(ye.s*100),Je=i(ye.l*100);return this._a==1?"hsl("+qe+", "+ce+"%, "+Je+"%)":"hsla("+qe+", "+ce+"%, "+Je+"%, "+this._roundA+")"},toHex:function(ye){return _(this._r,this._g,this._b,ye)},toHexString:function(ye){return"#"+this.toHex(ye)},toHex8:function(ye){return b(this._r,this._g,this._b,this._a,ye)},toHex8String:function(ye){return"#"+this.toHex8(ye)},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(H(this._r,255)*100)+"%",g:i(H(this._g,255)*100)+"%",b:i(H(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+i(H(this._r,255)*100)+"%, "+i(H(this._g,255)*100)+"%, "+i(H(this._b,255)*100)+"%)":"rgba("+i(H(this._r,255)*100)+"%, "+i(H(this._g,255)*100)+"%, "+i(H(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:j[_(this._r,this._g,this._b,!0)]||!1},toFilter:function(ye){var qe="#"+v(this._r,this._g,this._b,this._a),ce=qe,Je=this._gradientType?"GradientType = 1, ":"";if(ye){var nt=u(ye);ce="#"+v(nt._r,nt._g,nt._b,nt._a)}return"progid:DXImageTransform.Microsoft.gradient("+Je+"startColorstr="+qe+",endColorstr="+ce+")"},toString:function(ye){var qe=!!ye;ye=ye||this._format;var ce=!1,Je=this._a<1&&this._a>=0,nt=!qe&&Je&&(ye==="hex"||ye==="hex6"||ye==="hex3"||ye==="hex4"||ye==="hex8"||ye==="name");return nt?ye==="name"&&this._a===0?this.toName():this.toRgbString():(ye==="rgb"&&(ce=this.toRgbString()),ye==="prgb"&&(ce=this.toPercentageRgbString()),(ye==="hex"||ye==="hex6")&&(ce=this.toHexString()),ye==="hex3"&&(ce=this.toHexString(!0)),ye==="hex4"&&(ce=this.toHex8String(!0)),ye==="hex8"&&(ce=this.toHex8String()),ye==="name"&&(ce=this.toName()),ye==="hsl"&&(ce=this.toHslString()),ye==="hsv"&&(ce=this.toHsvString()),ce||this.toHexString())},clone:function(){return u(this.toString())},_applyModification:function(ye,qe){var ce=ye.apply(null,[this].concat([].slice.call(qe)));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(x,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(ye,qe){return ye.apply(null,[this].concat([].slice.call(qe)))},analogous:function(){return this._applyCombination(F,arguments)},complement:function(){return this._applyCombination(m,arguments)},monochromatic:function(){return this._applyCombination(U,arguments)},splitcomplement:function(){return this._applyCombination(B,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},u.fromRatio=function(ye,qe){if(typeof ye=="object"){var ce={};for(var Je in ye)ye.hasOwnProperty(Je)&&(Je==="a"?ce[Je]=ye[Je]:ce[Je]=de(ye[Je]));ye=ce}return u(ye,qe)};function l(ye){var qe={r:0,g:0,b:0},ce=1,Je=null,nt=null,gt=null,Nt=!1,at=!1;return typeof ye=="string"&&(ye=Ue(ye)),typeof ye=="object"&&(Me(ye.r)&&Me(ye.g)&&Me(ye.b)?(qe=f(ye.r,ye.g,ye.b),Nt=!0,at=String(ye.r).substr(-1)==="%"?"prgb":"rgb"):Me(ye.h)&&Me(ye.s)&&Me(ye.v)?(Je=de(ye.s),nt=de(ye.v),qe=p(ye.h,Je,nt),Nt=!0,at="hsv"):Me(ye.h)&&Me(ye.s)&&Me(ye.l)&&(Je=de(ye.s),gt=de(ye.l),qe=h(ye.h,Je,gt),Nt=!0,at="hsl"),ye.hasOwnProperty("a")&&(ce=ye.a)),ce=N(ce),{ok:Nt,format:ye.format||at,r:a(255,o(qe.r,0)),g:a(255,o(qe.g,0)),b:a(255,o(qe.b,0)),a:ce}}function f(ye,qe,ce){return{r:H(ye,255)*255,g:H(qe,255)*255,b:H(ce,255)*255}}function c(ye,qe,ce){ye=H(ye,255),qe=H(qe,255),ce=H(ce,255);var Je=o(ye,qe,ce),nt=a(ye,qe,ce),gt,Nt,at=(Je+nt)/2;if(Je==nt)gt=Nt=0;else{var Ke=Je-nt;switch(Nt=at>.5?Ke/(2-Je-nt):Ke/(Je+nt),Je){case ye:gt=(qe-ce)/Ke+(qe1&&(St-=1),St<1/6?Ct+(wt-Ct)*6*St:St<1/2?wt:St<2/3?Ct+(wt-Ct)*(2/3-St)*6:Ct}if(qe===0)Je=nt=gt=ce;else{var at=ce<.5?ce*(1+qe):ce+qe-ce*qe,Ke=2*ce-at;Je=Nt(Ke,at,ye+1/3),nt=Nt(Ke,at,ye),gt=Nt(Ke,at,ye-1/3)}return{r:Je*255,g:nt*255,b:gt*255}}function d(ye,qe,ce){ye=H(ye,255),qe=H(qe,255),ce=H(ce,255);var Je=o(ye,qe,ce),nt=a(ye,qe,ce),gt,Nt,at=Je,Ke=Je-nt;if(Nt=Je===0?0:Ke/Je,Je==nt)gt=0;else{switch(Je){case ye:gt=(qe-ce)/Ke+(qe>1)+720)%360;--qe;)Je.h=(Je.h+nt)%360,gt.push(u(Je));return gt}function U(ye,qe){qe=qe||6;for(var ce=u(ye).toHsv(),Je=ce.h,nt=ce.s,gt=ce.v,Nt=[],at=1/qe;qe--;)Nt.push(u({h:Je,s:nt,v:gt})),gt=(gt+at)%1;return Nt}u.mix=function(ye,qe,ce){ce=ce===0?0:ce||50;var Je=u(ye).toRgb(),nt=u(qe).toRgb(),gt=ce/100,Nt={r:(nt.r-Je.r)*gt+Je.r,g:(nt.g-Je.g)*gt+Je.g,b:(nt.b-Je.b)*gt+Je.b,a:(nt.a-Je.a)*gt+Je.a};return u(Nt)},u.readability=function(ye,qe){var ce=u(ye),Je=u(qe);return(e.max(ce.getLuminance(),Je.getLuminance())+.05)/(e.min(ce.getLuminance(),Je.getLuminance())+.05)},u.isReadable=function(ye,qe,ce){var Je=u.readability(ye,qe),nt,gt;switch(gt=!1,nt=De(ce),nt.level+nt.size){case"AAsmall":case"AAAlarge":gt=Je>=4.5;break;case"AAlarge":gt=Je>=3;break;case"AAAsmall":gt=Je>=7;break}return gt},u.mostReadable=function(ye,qe,ce){var Je=null,nt=0,gt,Nt,at,Ke;ce=ce||{},Nt=ce.includeFallbackColors,at=ce.level,Ke=ce.size;for(var Ct=0;Ctnt&&(nt=gt,Je=u(qe[Ct]));return u.isReadable(ye,Je,{level:at,size:Ke})||!Nt?Je:(ce.includeFallbackColors=!1,u.mostReadable(ye,["#fff","#000"],ce))};var G=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=W(G);function W(ye){var qe={};for(var ce in ye)ye.hasOwnProperty(ce)&&(qe[ye[ce]]=ce);return qe}function N(ye){return ye=parseFloat(ye),(isNaN(ye)||ye<0||ye>1)&&(ye=1),ye}function H(ye,qe){be(ye)&&(ye="100%");var ce=ze(ye);return ye=a(qe,o(0,parseFloat(ye))),ce&&(ye=parseInt(ye*qe,10)/100),e.abs(ye-qe)<1e-6?1:ye%qe/parseFloat(qe)}function re(ye){return a(1,o(0,ye))}function ae(ye){return parseInt(ye,16)}function be(ye){return typeof ye=="string"&&ye.indexOf(".")!=-1&&parseFloat(ye)===1}function ze(ye){return typeof ye=="string"&&ye.indexOf("%")!=-1}function Ce(ye){return ye.length==1?"0"+ye:""+ye}function de(ye){return ye<=1&&(ye=ye*100+"%"),ye}function te(ye){return e.round(parseFloat(ye)*255).toString(16)}function ke(ye){return ae(ye)/255}var Ee=function(){var ye="[-\\+]?\\d+%?",qe="[-\\+]?\\d*\\.\\d+%?",ce="(?:"+qe+")|(?:"+ye+")",Je="[\\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"+Je),rgba:new RegExp("rgba"+nt),hsl:new RegExp("hsl"+Je),hsla:new RegExp("hsla"+nt),hsv:new RegExp("hsv"+Je),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 Me(ye){return!!Ee.CSS_UNIT.exec(ye)}function Ue(ye){ye=ye.replace(t,"").replace(r,"").toLowerCase();var qe=!1;if(G[ye])ye=G[ye],qe=!0;else if(ye=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ce;return(ce=Ee.rgb.exec(ye))?{r:ce[1],g:ce[2],b:ce[3]}:(ce=Ee.rgba.exec(ye))?{r:ce[1],g:ce[2],b:ce[3],a:ce[4]}:(ce=Ee.hsl.exec(ye))?{h:ce[1],s:ce[2],l:ce[3]}:(ce=Ee.hsla.exec(ye))?{h:ce[1],s:ce[2],l:ce[3],a:ce[4]}:(ce=Ee.hsv.exec(ye))?{h:ce[1],s:ce[2],v:ce[3]}:(ce=Ee.hsva.exec(ye))?{h:ce[1],s:ce[2],v:ce[3],a:ce[4]}:(ce=Ee.hex8.exec(ye))?{r:ae(ce[1]),g:ae(ce[2]),b:ae(ce[3]),a:ke(ce[4]),format:qe?"name":"hex8"}:(ce=Ee.hex6.exec(ye))?{r:ae(ce[1]),g:ae(ce[2]),b:ae(ce[3]),format:qe?"name":"hex"}:(ce=Ee.hex4.exec(ye))?{r:ae(ce[1]+""+ce[1]),g:ae(ce[2]+""+ce[2]),b:ae(ce[3]+""+ce[3]),a:ke(ce[4]+""+ce[4]),format:qe?"name":"hex8"}:(ce=Ee.hex3.exec(ye))?{r:ae(ce[1]+""+ce[1]),g:ae(ce[2]+""+ce[2]),b:ae(ce[3]+""+ce[3]),format:qe?"name":"hex"}:!1}function De(ye){var qe,ce;return ye=ye||{level:"AA",size:"small"},qe=(ye.level||"AA").toUpperCase(),ce=(ye.size||"small").toLowerCase(),qe!=="AA"&&qe!=="AAA"&&(qe="AA"),ce!=="small"&&ce!=="large"&&(ce="small"),{level:qe,size:ce}}typeof gL!="undefined"&&gL.exports?gL.exports=u:window.tinycolor=u})(Math)});var Su=Ae(DM=>{"use strict";var ete=yg(),IM=Array.isArray;function brt(e,t){var r,n;for(r=0;r{"use strict";tte.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 FM=Ae((Wir,rte)=>{"use strict";rte.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var q1=Ae((jir,ate)=>{"use strict";var ite=FM(),nte=gc(),O9=nte({editType:"none"});O9.family.dflt=ite.HOVERFONT;O9.size.dflt=ite.HOVERFONTSIZE;ate.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:O9,grouptitlefont:nte({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var a3=Ae((Xir,ote)=>{"use strict";var wrt=gc(),BM=q1().hoverlabel,OM=Su().extendFlat;ote.exports={hoverlabel:{bgcolor:OM({},BM.bgcolor,{arrayOk:!0}),bordercolor:OM({},BM.bordercolor,{arrayOk:!0}),font:wrt({arrayOk:!0,editType:"none"}),align:OM({},BM.align,{arrayOk:!0}),namelength:OM({},BM.namelength,{arrayOk:!0}),showarrow:OM({},BM.showarrow),editType:"none"}}});var Gf=Ae((Zir,ste)=>{"use strict";var Trt=gc(),Art=a3();ste.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:Trt({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:Art.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 lb=Ae((Yir,fte)=>{"use strict";var Srt=cd(),_L={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)"]]},lte=_L.RdBu;function Mrt(e,t){if(t||(t=lte),!e)return t;function r(){try{e=_L[e]||JSON.parse(e)}catch(n){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),ute(e)?e:t}function ute(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";ub.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];ub.defaultLine="#444";ub.lightLine="#eee";ub.background="#fff";ub.borderLine="#BEC8D9";ub.lightFraction=100*10/11});var jl=Ae((Jir,cte)=>{"use strict";var bv=cd(),krt=ku(),Crt=mp().isTypedArray,hd=cte.exports={},xL=Fh();hd.defaults=xL.defaults;var Lrt=hd.defaultLine=xL.defaultLine;hd.lightLine=xL.lightLine;var N9=hd.background=xL.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(bv(e))};hd.opacity=function(e){return e?bv(e).getAlpha():0};hd.addOpacity=function(e,t){var r=bv(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"};hd.combine=function(e,t){var r=bv(e).toRgb();if(r.a===1)return bv(e).toRgbString();var n=bv(t||N9).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 bv(a).toRgbString()};hd.interpolate=function(e,t,r){var n=bv(e).toRgb(),i=bv(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 bv(a).toRgbString()};hd.contrast=function(e,t,r){var n=bv(e);n.getAlpha()!==1&&(n=bv(hd.combine(e,N9)));var i=n.isDark()?t?n.lighten(t):N9:r?n.darken(r):Lrt;return i.toString()};hd.stroke=function(e,t){var r=bv(t);e.style({stroke:hd.tinyRGB(r),"stroke-opacity":r.getAlpha()})};hd.fill=function(e,t){var r=bv(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 N1=Ae(($ir,hte)=>{"use strict";hte.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var o3=Ae(dte=>{"use strict";dte.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 yte=Ae(wv=>{"use strict";var U9=ku(),pte=cd(),vte=Su().extendFlat,Prt=Gf(),zrt=lb(),Irt=jl(),Rrt=N1().DESELECTDIM,s3=PM(),mte=o3().counter,Drt=n3().modHalf,_m=mp().isArrayOrTypedArray,U1=mp().isTypedArraySpec,V1=mp().decodeTypedArraySpec;wv.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(_m(e)?e:U1(e)?V1(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;na===!0||a===!1;i(e)||n.arrayOk&&Array.isArray(e)&&e.length>0&&e.every(i)?t.set(e):t.set(r)}},number:{coerceFunction:function(e,t,r,n){U1(e)&&(e=V1(e)),!U9(e)||n.min!==void 0&&en.max?t.set(r):t.set(+e)}},integer:{coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}U1(e)&&(e=V1(e)),e%1||!U9(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){U1(e)&&(e=V1(e)),pte(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function n(i){return pte(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(zrt.get(e,r))}},angle:{coerceFunction:function(e,t,r){U1(e)&&(e=V1(e)),e==="auto"?t.set("auto"):U9(e)?t.set(Drt(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,n){var i=n.regex||mte(r);let a=o=>typeof o=="string"&&i.test(o);a(e)||n.arrayOk&&_m(e)&&e.length>0&&e.every(a)?t.set(e):t.set(r)},validateFunction:function(e,t){var r=t.dflt;return e===r?!0:typeof e!="string"?!1:!!mte(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 gte={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/un/"},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:{}}},_te={};function xte(e,t){for(var r in e){var n=e[r];n.valType?t[r]=n.dflt:(t[r]||(t[r]={}),xte(n,t[r]))}}xte(gte,_te);bte.exports={configAttributes:gte,dfltConfig:_te}});var G9=Ae((rnr,wte)=>{"use strict";var V9=Jl(),Frt=ku(),qM=[];wte.exports=function(e,t){if(qM.indexOf(e)!==-1)return;qM.push(e);var r=1e3;Frt(t)?r=t:t==="long"&&(r=3e3);var n=V9.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var i=n.selectAll(".notifier-note").data(qM);function a(o){o.duration(700).style("opacity",0).each("end",function(s){var u=qM.indexOf(s);u!==-1&&qM.splice(u,1),V9.select(this).remove()})}i.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var s=V9.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 l3=fb().dfltConfig,H9=G9(),W9=Tte.exports={};W9.log=function(){var e;if(l3.logging>1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}};W9.warn=function(){var e;if(l3.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}};W9.error=function(){var e;if(l3.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}});var wL=Ae((nnr,Ate)=>{"use strict";Ate.exports=function(){}});var j9=Ae((anr,Ste)=>{"use strict";Ste.exports=function(t,r){if(r instanceof RegExp){for(var n=r.toString(),i=0;i{Mte.exports=Brt;function Brt(){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 Cte=Ae((snr,kte)=>{kte.exports=Ort;function Ort(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 Pte=Ae((lnr,Lte)=>{Lte.exports=qrt;function qrt(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 X9=Ae((unr,zte)=>{zte.exports=Nrt;function Nrt(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 Rte=Ae((fnr,Ite)=>{Ite.exports=Urt;function Urt(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 Fte=Ae((cnr,Dte)=>{Dte.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],_=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,x=n*l-a*s,C=i*l-a*u,M=f*_-c*p,m=f*b-h*p,P=f*v-d*p,T=c*b-h*_,B=c*v-d*_,F=h*v-d*b,U=k*F-E*B+A*T+L*P-x*m+C*M;return U?(U=1/U,e[0]=(s*F-u*B+l*T)*U,e[1]=(i*B-n*F-a*T)*U,e[2]=(_*C-b*x+v*L)*U,e[3]=(h*x-c*C-d*L)*U,e[4]=(u*P-o*F-l*m)*U,e[5]=(r*F-i*P+a*m)*U,e[6]=(b*A-p*C-v*E)*U,e[7]=(f*C-h*A+d*E)*U,e[8]=(o*B-s*P+l*M)*U,e[9]=(n*P-r*B-a*M)*U,e[10]=(p*x-_*A+v*k)*U,e[11]=(c*A-f*x-d*k)*U,e[12]=(s*m-o*T-u*M)*U,e[13]=(r*T-n*m+i*M)*U,e[14]=(_*E-p*L-b*k)*U,e[15]=(f*L-c*E+h*k)*U,e):null}});var Ote=Ae((hnr,Bte)=>{Bte.exports=Grt;function Grt(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],_=t[13],b=t[14],v=t[15];return e[0]=s*(h*v-d*b)-c*(u*v-l*b)+_*(u*d-l*h),e[1]=-(n*(h*v-d*b)-c*(i*v-a*b)+_*(i*d-a*h)),e[2]=n*(u*v-l*b)-s*(i*v-a*b)+_*(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*_)-f*(s*v-l*_)+p*(s*d-l*c),e[9]=-(r*(c*v-d*_)-f*(n*v-a*_)+p*(n*d-a*c)),e[10]=r*(s*v-l*_)-o*(n*v-a*_)+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*_)-f*(s*b-u*_)+p*(s*h-u*c)),e[13]=r*(c*b-h*_)-f*(n*b-i*_)+p*(n*h-i*c),e[14]=-(r*(s*b-u*_)-o*(n*b-i*_)+p*(n*u-i*s)),e[15]=r*(s*h-u*c)-o*(n*h-i*c)+f*(n*u-i*s),e}});var Nte=Ae((dnr,qte)=>{qte.exports=Hrt;function Hrt(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],_=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,x=n*u-i*s,C=l*p-f*d,M=l*_-c*d,m=l*b-h*d,P=f*_-c*p,T=f*b-h*p,B=c*b-h*_;return v*B-k*T+E*P+A*m-L*M+x*C}});var Vte=Ae((pnr,Ute)=>{Ute.exports=Wrt;function Wrt(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],_=t[12],b=t[13],v=t[14],k=t[15],E=r[0],A=r[1],L=r[2],x=r[3];return e[0]=E*n+A*s+L*c+x*_,e[1]=E*i+A*u+L*h+x*b,e[2]=E*a+A*l+L*d+x*v,e[3]=E*o+A*f+L*p+x*k,E=r[4],A=r[5],L=r[6],x=r[7],e[4]=E*n+A*s+L*c+x*_,e[5]=E*i+A*u+L*h+x*b,e[6]=E*a+A*l+L*d+x*v,e[7]=E*o+A*f+L*p+x*k,E=r[8],A=r[9],L=r[10],x=r[11],e[8]=E*n+A*s+L*c+x*_,e[9]=E*i+A*u+L*h+x*b,e[10]=E*a+A*l+L*d+x*v,e[11]=E*o+A*f+L*p+x*k,E=r[12],A=r[13],L=r[14],x=r[15],e[12]=E*n+A*s+L*c+x*_,e[13]=E*i+A*u+L*h+x*b,e[14]=E*a+A*l+L*d+x*v,e[15]=E*o+A*f+L*p+x*k,e}});var Hte=Ae((vnr,Gte)=>{Gte.exports=jrt;function jrt(e,t,r){var n=r[0],i=r[1],a=r[2],o,s,u,l,f,c,h,d,p,_,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],_=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]=_,e[10]=b,e[11]=v,e[12]=o*n+f*i+p*a+t[12],e[13]=s*n+c*i+_*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 jte=Ae((mnr,Wte)=>{Wte.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 Zte=Ae((ynr,Xte)=>{Xte.exports=Zrt;function Zrt(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,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G;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],_=t[4],b=t[5],v=t[6],k=t[7],E=t[8],A=t[9],L=t[10],x=t[11],C=i*i*f+l,M=a*i*f+o*u,m=o*i*f-a*u,P=i*a*f-o*u,T=a*a*f+l,B=o*a*f+i*u,F=i*o*f+a*u,U=a*o*f-i*u,G=o*o*f+l,e[0]=c*C+_*M+E*m,e[1]=h*C+b*M+A*m,e[2]=d*C+v*M+L*m,e[3]=p*C+k*M+x*m,e[4]=c*P+_*T+E*B,e[5]=h*P+b*T+A*B,e[6]=d*P+v*T+L*B,e[7]=p*P+k*T+x*B,e[8]=c*F+_*U+E*G,e[9]=h*F+b*U+A*G,e[10]=d*F+v*U+L*G,e[11]=p*F+k*U+x*G,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var Kte=Ae((gnr,Yte)=>{Yte.exports=Yrt;function Yrt(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 $te=Ae((_nr,Jte)=>{Jte.exports=Krt;function Krt(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 ere=Ae((xnr,Qte)=>{Qte.exports=Jrt;function Jrt(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 rre=Ae((bnr,tre)=>{tre.exports=$rt;function $rt(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 nre=Ae((wnr,ire)=>{ire.exports=Qrt;function Qrt(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,_=a*l,b=o*s,v=o*u,k=o*l;return e[0]=1-(d+_),e[1]=c+k,e[2]=h-v,e[3]=0,e[4]=c-k,e[5]=1-(f+_),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 ore=Ae((Tnr,are)=>{are.exports=eit;function eit(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 lre=Ae((Anr,sre)=>{sre.exports=tit;function tit(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 fre=Ae((Snr,ure)=>{ure.exports=rit;function rit(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 hre=Ae((Mnr,cre)=>{cre.exports=iit;function iit(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 pre=Ae((Enr,dre)=>{dre.exports=nit;function nit(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 mre=Ae((knr,vre)=>{vre.exports=ait;function ait(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,_=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+_,e[7]=0,e[8]=h+b,e[9]=d-_,e[10]=1-l-c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var gre=Ae((Cnr,yre)=>{yre.exports=oit;function oit(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 xre=Ae((Lnr,_re)=>{_re.exports=sit;function sit(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 wre=Ae((Pnr,bre)=>{bre.exports=lit;function lit(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 Are=Ae((znr,Tre)=>{Tre.exports=uit;function uit(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 Mre=Ae((Inr,Sre)=>{var fit=X9();Sre.exports=cit;function cit(e,t,r,n){var i,a,o,s,u,l,f,c,h,d,p=t[0],_=t[1],b=t[2],v=n[0],k=n[1],E=n[2],A=r[0],L=r[1],x=r[2];return Math.abs(p-A)<1e-6&&Math.abs(_-L)<1e-6&&Math.abs(b-x)<1e-6?fit(e):(f=p-A,c=_-L,h=b-x,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*_+o*b),e[13]=-(s*p+u*_+l*b),e[14]=-(f*p+c*_+h*b),e[15]=1,e)}});var kre=Ae((Rnr,Ere)=>{Ere.exports=hit;function hit(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 Z9=Ae((Dnr,Cre)=>{Cre.exports={create:Ete(),clone:Cte(),copy:Pte(),identity:X9(),transpose:Rte(),invert:Fte(),adjoint:Ote(),determinant:Nte(),multiply:Vte(),translate:Hte(),scale:jte(),rotate:Zte(),rotateX:Kte(),rotateY:$te(),rotateZ:ere(),fromRotation:rre(),fromRotationTranslation:nre(),fromScaling:ore(),fromTranslation:lre(),fromXRotation:fre(),fromYRotation:hre(),fromZRotation:pre(),fromQuat:mre(),frustum:gre(),perspective:xre(),perspectiveFromFieldOfView:wre(),ortho:Are(),lookAt:Mre(),str:kre()}});var TL=Ae(xh=>{"use strict";var dit=Z9();xh.init2dArray=function(e,t){for(var r=new Array(e),n=0;n{"use strict";var pit=Jl(),Lre=G1(),vit=TL(),mit=Z9();function yit(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 git(e){var t=pit.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 _it(e,t){zre("global",e,t)}function zre(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):Lre.warn("addStyleRule failed"):Lre.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function xit(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&Pre(r)}function bit(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 wit(e){var t=Rre(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=Ire(n);if(i){var a=vit.convertCssMatrix(i);r=mit.multiply(r,r,a)}}),r}function Ire(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 Rre(e){for(var t=[];Tit(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function Tit(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function Ait(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}Dre.exports={getGraphDiv:yit,isPlotDiv:git,removeElement:Pre,addStyleRule:_it,addRelatedStyleRule:zre,deleteRelatedStyleRule:xit,setStyleOnHover:bit,getFullTransformMatrix:wit,getElementTransformMatrix:Ire,getElementAndAncestors:Rre,equalDomRects:Ait}});var UM=Ae((Onr,Fre)=>{"use strict";Fre.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 Sc=Ae((qnr,Gre)=>{"use strict";var Ore=Su().extendFlat,Sit=yg(),qre={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},Nre={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},Mit=qre.flags.slice().concat(["fullReplot"]),Eit=Nre.flags.slice().concat("layoutReplot");Gre.exports={traces:qre,layout:Nre,traceFlags:function(){return Bre(Mit)},layoutFlags:function(){return Bre(Eit)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var n=r.split("+"),i=0;i{"use strict";Y9.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};Y9.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 K9=Ae((Unr,Hre)=>{"use strict";Hre.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 Ff=Ae(u3=>{"use strict";var{DATE_FORMAT_LINK:kit,FORMAT_LINK:Cit}=K9(),Lit=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function Pit({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,Cit,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,kit,"for details on the date formatting syntax.",Lit].join(" ")}u3.templateFormatStringDescription=Pit;u3.hovertemplateAttrs=({editType:e="none",arrayOk:t}={},r={})=>ym({valType:"string",dflt:"",editType:e},t!==!1?{arrayOk:!0}:{});u3.texttemplateAttrs=({editType:e="calc",arrayOk:t}={},r={})=>ym({valType:"string",dflt:"",editType:e},t!==!1?{arrayOk:!0}:{});u3.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:t}={},r={})=>({valType:"string",dflt:"",editType:e});u3.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var ML=Ae((Hnr,Kre)=>{"use strict";function H1(e,t){return t?t.d2l(e):e}function Wre(e,t){return t?t.l2d(e):e}function zit(e){return e.x0}function Iit(e){return e.x1}function Rit(e){return e.y0}function Dit(e){return e.y1}function jre(e){return e.x0shift||0}function Xre(e){return e.x1shift||0}function Zre(e){return e.y0shift||0}function Yre(e){return e.y1shift||0}function AL(e,t){return H1(e.x1,t)+Xre(e)-H1(e.x0,t)-jre(e)}function SL(e,t,r){return H1(e.y1,r)+Yre(e)-H1(e.y0,r)-Zre(e)}function Fit(e,t){return Math.abs(AL(e,t))}function Bit(e,t,r){return Math.abs(SL(e,t,r))}function Oit(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(AL(e,t),2)+Math.pow(SL(e,t,r),2))}function qit(e,t){return Wre((H1(e.x1,t)+Xre(e)+H1(e.x0,t)+jre(e))/2,t)}function Nit(e,t,r){return Wre((H1(e.y1,r)+Yre(e)+H1(e.y0,r)+Zre(e))/2,r)}function Uit(e,t,r){return e.type!=="line"?void 0:SL(e,t,r)/AL(e,t)}Kre.exports={x0:zit,x1:Iit,y0:Rit,y1:Dit,slope:Uit,dx:AL,dy:SL,width:Fit,height:Bit,length:Oit,xcenter:qit,ycenter:Nit}});var Qre=Ae((Wnr,$re)=>{"use strict";var Vit=Sc().overrideAll,cb=Gf(),Jre=gc(),Git=Id().dash,W1=Su().extendFlat,{shapeTexttemplateAttrs:Hit,templatefallbackAttrs:Wit}=Ff(),jit=ML();$re.exports=Vit({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:Jre({})},legendrank:W1({},cb.legendrank,{}),legendwidth:W1({},cb.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:W1({},Git,{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:Hit({newshape:!0},{keys:Object.keys(jit)}),texttemplatefallback:Wit({editType:"arraydraw"}),font:Jre({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var tie=Ae((jnr,eie)=>{"use strict";var Xit=Id().dash,Zit=Su().extendFlat;eie.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:Zit({},Xit,{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 EL=Ae((Xnr,rie)=>{"use strict";rie.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 f3=Ae((Znr,oie)=>{"use strict";var J9=gc(),Yit=UM(),kL=Fh(),iie=Qre(),nie=tie(),Kit=EL(),aie=Su().extendFlat,CL=J9({editType:"calc"});CL.family.dflt='"Open Sans", verdana, arial, sans-serif';CL.size.dflt=12;CL.color.dflt=kL.defaultLine;oie.exports={font:CL,title:{text:{valType:"string",editType:"layoutstyle"},font:J9({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:J9({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:aie(Kit({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:kL.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:kL.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:kL.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:iie.newshape,activeshape:iie.activeshape,newselection:nie.newselection,activeselection:nie.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:aie({},Yit.transition,{editType:"none"})}});var sie=Ae(()=>{(function(){if(!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")){var e=document.createElement("style");e.id="696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var $l=Ae(Tf=>{"use strict";var c3=G1(),lie=wL(),uie=j9(),Jit=yg(),$it=NM().addStyleRule,fie=Su(),Qit=Gf(),ent=f3(),tnt=fie.extendFlat,$9=fie.extendDeepAll;Tf.modules={};Tf.allCategories={};Tf.allTypes=[];Tf.subplotsRegistry={};Tf.componentsRegistry={};Tf.layoutArrayContainers=[];Tf.layoutArrayRegexes=[];Tf.traceLayoutAttributes={};Tf.localeRegistry={};Tf.apiMethodRegistry={};Tf.collectableSubplotTypes=null;Tf.register=function(t){if(Tf.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 snt=r3().timeFormat,bie=ku(),Q9=G1(),X1=n3().mod,p3=rf(),g0=p3.BADNUM,Tv=p3.ONEDAY,VM=p3.ONEHOUR,j1=p3.ONEMIN,d3=p3.ONESEC,GM=p3.EPOCHJD,gg=$l(),vie=r3().utcFormat,lnt=/^\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,unt=/^\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,mie=new Date().getFullYear()-70;function _g(e){return e&&gg.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}bh.dateTick0=function(e,t){var r=fnt(e,!!t);if(t<2)return r;var n=bh.dateTime2ms(r,e);return n+=Tv*(t-1),bh.ms2DateTime(n,0,e)};function fnt(e,t){return _g(e)?t?gg.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:gg.getComponentMethod("calendars","CANONICAL_TICK")[e]:t?"2000-01-02":"2000-01-01"}bh.dfltRange=function(e){return _g(e)?gg.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 PL,zL;bh.dateTime2ms=function(e,t){if(bh.isJSDate(e)){var r=e.getTimezoneOffset()*j1,n=(e.getUTCMinutes()-e.getMinutes())*j1+(e.getUTCSeconds()-e.getSeconds())*d3+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var i=3*j1;r=r-i/2+X1(n-r+i/2,i)}return e=Number(e)-r,e>=PL&&e<=zL?e:g0}if(typeof e!="string"&&typeof e!="number")return g0;e=String(e);var a=_g(t),o=e.charAt(0);a&&(o==="G"||o==="g")&&(e=e.slice(1),t="");var s=a&&t.slice(0,7)==="chinese",u=e.match(s?unt:lnt);if(!u)return g0;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 g0;l=Number(l);var _;try{var b=gg.getComponentMethod("calendars","getCal")(t);if(s){var v=f.charAt(f.length-1)==="i";f=parseInt(f,10),_=b.newDate(l,b.toMonthIndex(l,f,v),c)}else _=b.newDate(l,Number(f),c)}catch(E){return g0}return _?(_.toJD()-GM)*Tv+h*VM+d*j1+p*d3:g0}l.length===2?l=(Number(l)+2e3-mie)%100+mie: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?g0:k.getTime()+p*d3};PL=bh.MIN_MS=bh.dateTime2ms("-9999");zL=bh.MAX_MS=bh.dateTime2ms("9999-12-31 23:59:59.9999");bh.isDateTime=function(e,t){return bh.dateTime2ms(e,t)!==g0};function h3(e,t){return String(e+Math.pow(10,t)).slice(1)}var LL=90*Tv,yie=3*VM,gie=5*j1;bh.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=PL&&e<=zL))return g0;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(_g(r)){var c=Math.floor(i/Tv)+GM,h=Math.floor(X1(e,Tv));try{a=gg.getComponentMethod("calendars","getCal")(r).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){a=vie("G%Y-%m-%d")(new Date(i))}if(a.charAt(0)==="-")for(;a.length<11;)a="-0"+a.slice(1);else for(;a.length<10;)a="0"+a;o=t=PL+Tv&&e<=zL-Tv))return g0;var t=Math.floor(X1(e+.05,1)*10),r=new Date(Math.round(e-t/10)),n=snt("%Y-%m-%d")(r),i=r.getHours(),a=r.getMinutes(),o=r.getSeconds(),s=r.getUTCMilliseconds()*10+t;return wie(n,i,a,o,s)};function wie(e,t,r,n,i){if((t||r||n||i)&&(e+=" "+h3(t,2)+":"+h3(r,2),(n||i)&&(e+=":"+h3(n,2),i))){for(var a=4;i%10===0;)a-=1,i/=10;e+="."+h3(i,a)}return e}bh.cleanDate=function(e,t,r){if(e===g0)return t;if(bh.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(_g(r))return Q9.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 Q9.error("unrecognized date",e),t;return e};var cnt=/%\d?f/g,hnt=/%h/g,dnt={1:"1",2:"1",3:"2",4:"2"};function _ie(e,t,r,n){e=e.replace(cnt,function(a){var o=Math.min(+a.charAt(1)||6,6),s=(t/1e3%1+2).toFixed(o).slice(2).replace(/0+$/,"")||"0";return s});var i=new Date(Math.floor(t+.05));if(e=e.replace(hnt,function(){return dnt[r("%q")(i)]}),_g(n))try{e=gg.getComponentMethod("calendars","worldCalFmt")(e,t,n)}catch(a){return"Invalid"}return r(e)(i)}var pnt=[59,59.9,59.99,59.999,59.9999];function vnt(e,t){var r=X1(e+.05,Tv),n=h3(Math.floor(r/VM),2)+":"+h3(X1(Math.floor(r/j1),60),2);if(t!=="M"){bie(t)||(t=0);var i=Math.min(X1(e/d3,60),pnt[t]),a=(100+i).toFixed(t).slice(1);t>0&&(a=a.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+a}return n}bh.formatDate=function(e,t,r,n,i,a){if(i=_g(i)&&i,!t)if(r==="y")t=a.year;else if(r==="m")t=a.month;else if(r==="d")t=a.dayMonth+` +`+a.year;else return vnt(e,r)+` +`+_ie(a.dayMonthYear,e,n,i);return _ie(t,e,n,i)};var xie=3*Tv;bh.incrementMonth=function(e,t,r){r=_g(r)&&r;var n=X1(e,Tv);if(e=Math.round(e-n),r)try{var i=Math.round(e/Tv)+GM,a=gg.getComponentMethod("calendars","getCal")(r),o=a.fromJD(i);return t%12?a.add(o,t,"m"):a.add(o,t/12,"y"),(o.toJD()-GM)*Tv+n}catch(u){Q9.error("invalid ms "+e+" in calendar "+r)}var s=new Date(e+xie);return s.setUTCMonth(s.getUTCMonth()+t)+n-xie};bh.findExactDates=function(e,t){for(var r=0,n=0,i=0,a=0,o,s,u=_g(t)&&gg.getComponentMethod("calendars","getCal")(t),l=0;l{"use strict";Aie.exports=function(t){return t}});var IL=Ae(xg=>{"use strict";var mnt=ku(),ynt=G1(),gnt=HM(),_nt=rf().BADNUM,eq=1e-9;xg.findBin=function(e,t,r){if(mnt(t.start))return r?Math.ceil((e-t.start)/t.size-eq)-1:Math.floor((e-t.start)/t.size+eq);var n=0,i=t.length,a=0,o=i>1?(t[i-1]-t[0])/(i-1):1,s,u;for(o>=0?u=r?xnt:bnt:u=r?Tnt:wnt,e+=o*eq*(r?-1:1)*(o>=0?1:-1);n90&&ynt.log("Long binary search..."),n-1};function xnt(e,t){return et}function Tnt(e,t){return e>=t}xg.sorterAsc=function(e,t){return e-t};xg.sorterDes=function(e,t){return t-e};xg.distinctVals=function(e){var t=e.slice();t.sort(xg.sorterAsc);var r;for(r=t.length-1;r>-1&&t[r]===_nt;r--);for(var n=t[r]-t[0]||1,i=n/(r||1)/1e4,a=[],o,s=0;s<=r;s++){var u=t[s],l=u-o;o===void 0?(a.push(u),o=u):l>i&&(n=Math.min(n,l),a.push(u),o=u)}return{vals:a,minDiff:n}};xg.roundUp=function(e,t,r){for(var n=0,i=t.length-1,a,o=0,s=r?0:1,u=r?1:0,l=r?Math.ceil:Math.floor;n0&&(n=1),r&&n)return e.sort(t)}return n?e:e.reverse()};xg.findIndexOfMin=function(e,t){t=t||gnt;for(var r=1/0,n,i=0;i{"use strict";Sie.exports=function(t){return Object.keys(t).sort()}});var Mie=Ae(wh=>{"use strict";var WM=ku(),Ant=mp().isArrayOrTypedArray;wh.aggNums=function(e,t,r,n){var i,a;if((!n||n>r.length)&&(n=r.length),WM(t)||(t=!1),Ant(r[0])){for(a=new Array(n),i=0;ie.length-1)return e[e.length-1];var r=t%1;return r*e[Math.ceil(t)]+(1-r)*e[Math.floor(t)]}});var Pie=Ae((iar,Lie)=>{"use strict";var Eie=n3(),tq=Eie.mod,Snt=Eie.modHalf,jM=Math.PI,Y1=2*jM;function Mnt(e){return e/180*jM}function Ent(e){return e/jM*180}function rq(e){return Math.abs(e[1]-e[0])>Y1-1e-14}function kie(e,t){return Snt(t-e,Y1)}function knt(e,t){return Math.abs(kie(e,t))}function Cie(e,t){if(rq(t))return!0;var r,n;t[0]n&&(n+=Y1);var i=tq(e,Y1),a=i+Y1;return i>=r&&i<=n||a>=r&&a<=n}function Cnt(e,t,r,n){if(!Cie(t,n))return!1;var i,a;return r[0]=i&&e<=a}function iq(e,t,r,n,i,a,o){i=i||0,a=a||0;var s=rq([r,n]),u,l,f,c,h;s?(u=0,l=jM,f=Y1):r{"use strict";hb.isLeftAnchor=function(t){return t.xanchor==="left"||t.xanchor==="auto"&&t.x<=1/3};hb.isCenterAnchor=function(t){return t.xanchor==="center"||t.xanchor==="auto"&&t.x>1/3&&t.x<2/3};hb.isRightAnchor=function(t){return t.xanchor==="right"||t.xanchor==="auto"&&t.x>=2/3};hb.isTopAnchor=function(t){return t.yanchor==="top"||t.yanchor==="auto"&&t.y>=2/3};hb.isMiddleAnchor=function(t){return t.yanchor==="middle"||t.yanchor==="auto"&&t.y>1/3&&t.y<2/3};hb.isBottomAnchor=function(t){return t.yanchor==="bottom"||t.yanchor==="auto"&&t.y<=1/3}});var Die=Ae(db=>{"use strict";var nq=n3().mod;db.segmentsIntersect=Rie;function Rie(e,t,r,n,i,a,o,s){var u=r-e,l=i-e,f=o-i,c=n-t,h=a-t,d=s-a,p=u*d-f*c;if(p===0)return null;var _=(l*d-f*h)/p,b=(l*c-u*h)/p;return b<0||b>1||_<0||_>1?null:{x:e+u*_,y:t+c*_}}db.segmentDistance=function(t,r,n,i,a,o,s,u){if(Rie(t,r,n,i,a,o,s,u))return 0;var l=n-t,f=i-r,c=s-a,h=u-o,d=l*l+f*f,p=c*c+h*h,_=Math.min(RL(l,f,d,a-t,o-r),RL(l,f,d,s-t,u-r),RL(c,h,p,t-a,r-o),RL(c,h,p,n-a,i-o));return Math.sqrt(_)};function RL(e,t,r,n,i){var a=n*e+i*t;if(a<0)return n*n+i*i;if(a>r){var o=n-e,s=i-t;return o*o+s*s}else{var u=n*t-i*e;return u*u/r}}var DL,aq,Iie;db.getTextLocation=function(t,r,n,i){if((t!==aq||i!==Iie)&&(DL={},aq=t,Iie=i),DL[n])return DL[n];var a=t.getPointAtLength(nq(n-i/2,r)),o=t.getPointAtLength(nq(n+i/2,r)),s=Math.atan((o.y-a.y)/(o.x-a.x)),u=t.getPointAtLength(nq(n,r)),l=(u.x*4+a.x+o.x)/6,f=(u.y*4+a.y+o.y)/6,c={x:l,y:f,theta:s};return DL[n]=c,c};db.clearLocationCache=function(){aq=null};db.getVisibleSegment=function(t,r,n){var i=r.left,a=r.right,o=r.top,s=r.bottom,u=0,l=t.getTotalLength(),f=l,c,h;function d(_){var b=t.getPointAtLength(_);_===0?c=b:_===l&&(h=b);var v=b.xa?b.x-a:0,k=b.ys?b.y-s:0;return Math.sqrt(v*v+k*k)}for(var p=d(u);p;){if(u+=p+n,u>f)return;p=d(u)}for(p=d(f);p;){if(f-=p+n,u>f)return;p=d(f)}return{min:u,max:f,len:f-u,total:l,isClosed:u===0&&f===l&&Math.abs(c.x-h.x)<.1&&Math.abs(c.y-h.y)<.1}};db.findPointOnPath=function(t,r,n,i){i=i||{};for(var a=i.pathLength||t.getTotalLength(),o=i.tolerance||.001,s=i.iterationLimit||30,u=t.getPointAtLength(0)[n]>t.getPointAtLength(a)[n]?-1:1,l=0,f=0,c=a,h,d,p;l0?c=h:f=h,l++}return d}});var FL=Ae(XM=>{"use strict";var bg={};XM.throttle=function(t,r,n){var i=bg[t],a=Date.now();if(!i){for(var o in bg)bg[o].tsi.ts+r){s();return}i.timer=setTimeout(function(){s(),i.timer=null},r)};XM.done=function(e){var t=bg[e];return!t||!t.timer?Promise.resolve():new Promise(function(r){var n=t.onDone;t.onDone=function(){n&&n(),r(),t.onDone=null}})};XM.clear=function(e){if(e)Fie(bg[e]),delete bg[e];else for(var t in bg)XM.clear(t)};function Fie(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var Oie=Ae((sar,Bie)=>{"use strict";Bie.exports=function(t){t._responsiveChartHandler&&(window.removeEventListener("resize",t._responsiveChartHandler),delete t._responsiveChartHandler)}});var qie=Ae((lar,BL)=>{"use strict";BL.exports=oq;BL.exports.isMobile=oq;BL.exports.default=oq;var Int=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,Rnt=/CrOS/,Dnt=/android|ipad|playbook|silk/i;function oq(e){e||(e={});let t=e.ua;if(!t&&typeof navigator!="undefined"&&(t=navigator.userAgent),t&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string")return!1;let r=Int.test(t)&&!Rnt.test(t)||!!e.tablet&&Dnt.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}});var Uie=Ae((uar,Nie)=>{"use strict";var Fnt=ku(),Bnt=qie();Nie.exports=function(t){var r;if(t&&t.hasOwnProperty("userAgent")?r=t.userAgent:r=Ont(),typeof r!="string")return!0;var n=Bnt({ua:{headers:{"user-agent":r}},tablet:!0,featureDetect:!1});if(!n)for(var i=r.split(" "),a=1;a-1;s--){var u=i[s];if(u.slice(0,8)==="Version/"){var l=u.slice(8).split(".")[0];if(Fnt(l)&&(l=+l),l>=13)return!0}}}return n};function Ont(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var Gie=Ae((far,Vie)=>{"use strict";var qnt=Jl();Vie.exports=function(t,r,n){var i=t.selectAll("g."+n.replace(/\s/g,".")).data(r,function(o){return o[0].trace.uid});i.exit().remove(),i.enter().append("g").attr("class",n),i.order();var a=t.classed("rangeplot")?"nodeRangePlot3":"node3";return i.each(function(o){o[0][a]=qnt.select(this)}),i}});var Wie=Ae((car,Hie)=>{"use strict";var Nnt=$l();Hie.exports=function(t,r){for(var n=t._context.locale,i=0;i<2;i++){for(var a=t._context.locales,o=0;o<2;o++){var s=(a[n]||{}).dictionary;if(s){var u=s[r];if(u)return u}a=Nnt.localeRegistry}var l=n.split("-")[0];if(l===n)break;n=l}return r}});var sq=Ae((har,jie)=>{"use strict";jie.exports=function(t){for(var r={},n=[],i=0,a=0;a{"use strict";Xie.exports=function(t){for(var r=Gnt(t)?Vnt:Unt,n=[],i=0;i{"use strict";Yie.exports=function(t,r){if(!r)return t;var n=1/Math.abs(r),i=n>1?(n*t+n*r)/n:t+r,a=String(i).length;if(a>16){var o=String(r).length,s=String(t).length;if(a>=s+o){var u=parseFloat(i).toPrecision(12);u.indexOf("e+")===-1&&(i=+u)}}return i}});var $ie=Ae((mar,Jie)=>{"use strict";var Hnt=ku(),Wnt=rf().BADNUM,jnt=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;Jie.exports=function(t){return typeof t=="string"&&(t=t.replace(jnt,"")),Hnt(t)?Number(t):Wnt}});var ei=Ae((yar,cne)=>{"use strict";var ZM=Jl(),Xnt=r3().utcFormat,Znt=z9().format,nne=ku(),ane=rf(),one=ane.FP_SAFE,Ynt=-one,Qie=ane.BADNUM,Tn=cne.exports={};Tn.adjustFormat=function(t){return!t||/^\d[.]\df/.test(t)||/[.]\d%/.test(t)?t:t==="0.f"?"~f":/^\d%/.test(t)?"~%":/^\ds/.test(t)?"~s":!/^[~,.0$]/.test(t)&&/[&fps]/.test(t)?"~"+t:t};var ene={};Tn.warnBadFormat=function(e){var t=String(e);ene[t]||(ene[t]=1,Tn.warn('encountered bad format: "'+t+'"'))};Tn.noFormat=function(e){return String(e)};Tn.numberFormat=function(e){var t;try{t=Znt(Tn.adjustFormat(e))}catch(r){return Tn.warnBadFormat(e),Tn.noFormat}return t};Tn.nestedProperty=PM();Tn.keyedContainer=jee();Tn.relativeAttr=Zee();Tn.isPlainObject=yg();Tn.toLogRange=yL();Tn.relinkPrivateKeys=$ee();var K1=mp();Tn.isArrayBuffer=K1.isArrayBuffer;Tn.isTypedArray=K1.isTypedArray;Tn.isArrayOrTypedArray=K1.isArrayOrTypedArray;Tn.isArray1D=K1.isArray1D;Tn.ensureArray=K1.ensureArray;Tn.concat=K1.concat;Tn.maxRowLength=K1.maxRowLength;Tn.minRowLength=K1.minRowLength;var sne=n3();Tn.mod=sne.mod;Tn.modHalf=sne.modHalf;var J1=yte();Tn.valObjectMeta=J1.valObjectMeta;Tn.coerce=J1.coerce;Tn.coerce2=J1.coerce2;Tn.coerceFont=J1.coerceFont;Tn.coercePattern=J1.coercePattern;Tn.coerceHoverinfo=J1.coerceHoverinfo;Tn.coerceSelectionMarkerOpacity=J1.coerceSelectionMarkerOpacity;Tn.validate=J1.validate;var Wv=Tie();Tn.dateTime2ms=Wv.dateTime2ms;Tn.isDateTime=Wv.isDateTime;Tn.ms2DateTime=Wv.ms2DateTime;Tn.ms2DateTimeLocal=Wv.ms2DateTimeLocal;Tn.cleanDate=Wv.cleanDate;Tn.isJSDate=Wv.isJSDate;Tn.formatDate=Wv.formatDate;Tn.incrementMonth=Wv.incrementMonth;Tn.dateTick0=Wv.dateTick0;Tn.dfltRange=Wv.dfltRange;Tn.findExactDates=Wv.findExactDates;Tn.MIN_MS=Wv.MIN_MS;Tn.MAX_MS=Wv.MAX_MS;var pb=IL();Tn.findBin=pb.findBin;Tn.sorterAsc=pb.sorterAsc;Tn.sorterDes=pb.sorterDes;Tn.distinctVals=pb.distinctVals;Tn.roundUp=pb.roundUp;Tn.sort=pb.sort;Tn.findIndexOfMin=pb.findIndexOfMin;Tn.sortObjectKeys=Z1();var wg=Mie();Tn.aggNums=wg.aggNums;Tn.len=wg.len;Tn.mean=wg.mean;Tn.geometricMean=wg.geometricMean;Tn.median=wg.median;Tn.midRange=wg.midRange;Tn.variance=wg.variance;Tn.stdev=wg.stdev;Tn.interp=wg.interp;var xm=TL();Tn.init2dArray=xm.init2dArray;Tn.transposeRagged=xm.transposeRagged;Tn.dot=xm.dot;Tn.translationMatrix=xm.translationMatrix;Tn.rotationMatrix=xm.rotationMatrix;Tn.rotationXYMatrix=xm.rotationXYMatrix;Tn.apply3DTransform=xm.apply3DTransform;Tn.apply2DTransform=xm.apply2DTransform;Tn.apply2DTransform2=xm.apply2DTransform2;Tn.convertCssMatrix=xm.convertCssMatrix;Tn.inverseTransformMatrix=xm.inverseTransformMatrix;var py=Pie();Tn.deg2rad=py.deg2rad;Tn.rad2deg=py.rad2deg;Tn.angleDelta=py.angleDelta;Tn.angleDist=py.angleDist;Tn.isFullCircle=py.isFullCircle;Tn.isAngleInsideSector=py.isAngleInsideSector;Tn.isPtInsideSector=py.isPtInsideSector;Tn.pathArc=py.pathArc;Tn.pathSector=py.pathSector;Tn.pathAnnulus=py.pathAnnulus;var m3=zie();Tn.isLeftAnchor=m3.isLeftAnchor;Tn.isCenterAnchor=m3.isCenterAnchor;Tn.isRightAnchor=m3.isRightAnchor;Tn.isTopAnchor=m3.isTopAnchor;Tn.isMiddleAnchor=m3.isMiddleAnchor;Tn.isBottomAnchor=m3.isBottomAnchor;var y3=Die();Tn.segmentsIntersect=y3.segmentsIntersect;Tn.segmentDistance=y3.segmentDistance;Tn.getTextLocation=y3.getTextLocation;Tn.clearLocationCache=y3.clearLocationCache;Tn.getVisibleSegment=y3.getVisibleSegment;Tn.findPointOnPath=y3.findPointOnPath;var NL=Su();Tn.extendFlat=NL.extendFlat;Tn.extendDeep=NL.extendDeep;Tn.extendDeepAll=NL.extendDeepAll;Tn.extendDeepNoArrays=NL.extendDeepNoArrays;var lq=G1();Tn.log=lq.log;Tn.warn=lq.warn;Tn.error=lq.error;var Knt=o3();Tn.counterRegex=Knt.counter;var uq=FL();Tn.throttle=uq.throttle;Tn.throttleDone=uq.done;Tn.clearThrottle=uq.clear;var bm=NM();Tn.getGraphDiv=bm.getGraphDiv;Tn.isPlotDiv=bm.isPlotDiv;Tn.removeElement=bm.removeElement;Tn.addStyleRule=bm.addStyleRule;Tn.addRelatedStyleRule=bm.addRelatedStyleRule;Tn.deleteRelatedStyleRule=bm.deleteRelatedStyleRule;Tn.setStyleOnHover=bm.setStyleOnHover;Tn.getFullTransformMatrix=bm.getFullTransformMatrix;Tn.getElementTransformMatrix=bm.getElementTransformMatrix;Tn.getElementAndAncestors=bm.getElementAndAncestors;Tn.equalDomRects=bm.equalDomRects;Tn.clearResponsive=Oie();Tn.preserveDrawingBuffer=Uie();Tn.makeTraceGroups=Gie();Tn._=Wie();Tn.notifier=G9();Tn.filterUnique=sq();Tn.filterVisible=Zie();Tn.pushUnique=j9();Tn.increment=Kie();Tn.cleanNumber=$ie();Tn.ensureNumber=function(t){return nne(t)?(t=Number(t),t>one||t=t?!1:nne(e)&&e>=0&&e%1===0};Tn.noop=wL();Tn.identity=HM();Tn.repeat=function(e,t){for(var r=new Array(t),n=0;nr?Math.max(r,Math.min(t,e)):Math.max(t,Math.min(r,e))};Tn.bBoxIntersect=function(e,t,r){return r=r||0,e.left<=t.right+r&&t.left<=e.right+r&&e.top<=t.bottom+r&&t.top<=e.bottom+r};Tn.simpleMap=function(e,t,r,n,i){for(var a=e.length,o=new Array(a),s=0;s=Math.pow(2,r)?i>10?(Tn.warn("randstr failed uniqueness"),o):e(t,r,n,(i||0)+1):o};Tn.OptionControl=function(e,t){e||(e={}),t||(t="opt");var r={};return r.optionList=[],r._newoption=function(n){n[t]=e,r[n.name]=n,r.optionList.push(n)},r["_"+t]=e,r};Tn.smooth=function(e,t){if(t=Math.round(t)||0,t<2)return e;var r=e.length,n=2*r,i=2*t-1,a=new Array(i),o=new Array(r),s,u,l,f;for(s=0;s=n&&(l-=n*Math.floor(l/n)),l<0?l=-1-l:l>=r&&(l=n-1-l),f+=e[l]*a[u];o[s]=f}return o};Tn.syncOrAsync=function(e,t,r){var n,i;function a(){return Tn.syncOrAsync(e,t,r)}for(;e.length;)if(i=e.splice(0,1)[0],n=i(t),n&&n.then)return n.then(a);return r&&r(t)};Tn.stripTrailingSlash=function(e){return e.slice(-1)==="/"?e.slice(0,-1):e};Tn.noneOrAll=function(e,t,r){if(e){var n=!1,i=!0,a,o;for(a=0;a0?i:0})};Tn.fillArray=function(e,t,r,n){if(n=n||Tn.identity,Tn.isArrayOrTypedArray(e))for(var i=0;iQnt.test(window.navigator.userAgent);var eat=/Firefox\/(\d+)\.\d+/;Tn.getFirefoxVersion=function(){var e=eat.exec(window.navigator.userAgent);if(e&&e.length===2){var t=parseInt(e[1]);if(!isNaN(t))return t}return null};Tn.isD3Selection=function(e){return e instanceof ZM.selection};Tn.ensureSingle=function(e,t,r,n){var i=e.select(t+(r?"."+r:""));if(i.size())return i;var a=e.append(t);return r&&a.classed(r,!0),n&&a.call(n),a};Tn.ensureSingleById=function(e,t,r,n){var i=e.select(t+"#"+r);if(i.size())return i;var a=e.append(t).attr("id",r);return n&&a.call(n),a};Tn.objectFromPath=function(e,t){for(var r=e.split("."),n,i=n={},a=0;a1?i+o[1]:"";if(a&&(o.length>1||s.length>4||r))for(;n.test(s);)s=s.replace(n,"$1"+a+"$2");return s+u};Tn.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var fne=/^\w*$/;Tn.templateString=function(e,t){var r={};return e.replace(Tn.TEMPLATE_STRING_REGEX,function(n,i){var a;return fne.test(i)?a=t[i]:(r[i]=r[i]||Tn.nestedProperty(t,i).get,a=r[i](!0)),a!==void 0?a:""})};var iat={max:10,count:0,name:"hovertemplate"};Tn.hovertemplateString=e=>fq(O1(ym({},e),{opts:iat}));var nat={max:10,count:0,name:"texttemplate"};Tn.texttemplateString=e=>fq(O1(ym({},e),{opts:nat}));var aat=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function oat(e){var t=e.match(aat);return t?{key:t[1],op:t[2],number:Number(t[3])}:{key:e,op:null,number:null}}var sat={max:10,count:0,name:"texttemplate",parseMultDiv:!0};Tn.texttemplateStringForShapes=e=>fq(O1(ym({},e),{opts:sat}));var tne=/^[:|\|]/;function fq({data:e=[],locale:t,fallback:r,labels:n={},opts:i,template:a}){return a.replace(Tn.TEMPLATE_STRING_REGEX,(o,s,u)=>{let l=["xother","yother"].includes(s),f=["_xother","_yother"].includes(s),c=["_xother_","_yother_"].includes(s),h=["xother_","yother_"].includes(s),d=l||f||h||c;(f||c)&&(s=s.substring(1)),(h||c)&&(s=s.substring(0,s.length-1));let p=null,_=null;if(i.parseMultDiv){var b=oat(s);s=b.key,p=b.op,_=b.number}let v;if(d){if(n[s]===void 0)return"";v=n[s]}else for(let L of e)if(L){if(L.hasOwnProperty(s)){v=L[s];break}if(fne.test(s)||(v=Tn.nestedProperty(L,s).get(!0)),v!==void 0)break}if(v===void 0){let{count:L,max:x,name:C}=i,M=r===!1?o:r;return L=qL&&o<=rne,l=s>=qL&&s<=rne;if(u&&(n=10*n+o-qL),l&&(i=10*i+s-qL),!u||!l){if(n!==i)return n-i;if(o!==s)return o-s}}return i-n};var v3=2e9;Tn.seedPseudoRandom=function(){v3=2e9};Tn.pseudoRandom=function(){var e=v3;return v3=(69069*v3+1)%4294967296,Math.abs(v3-e)<429496729?Tn.pseudoRandom():v3/4294967296};Tn.fillText=function(e,t,r){var n=Array.isArray(r)?function(o){r.push(o)}:function(o){r.text=o},i=Tn.extractOption(e,t,"htx","hovertext");if(Tn.isValidTextValue(i))return n(i);var a=Tn.extractOption(e,t,"tx","text");if(Tn.isValidTextValue(a))return n(a)};Tn.isValidTextValue=function(e){return e||e===0};Tn.formatPercent=function(e,t){t=t||0;for(var r=(Math.round(100*e*Math.pow(10,t))*Math.pow(.1,t)).toFixed(t)+"%",n=0;n1&&(l=1):l=0,Tn.strTranslate(i-l*(r+o),a-l*(n+s))+Tn.strScale(l)+(u?"rotate("+u+(t?"":" "+r+" "+n)+")":"")};Tn.setTransormAndDisplay=function(e,t){e.attr("transform",Tn.getTextTransform(t)),e.style("display",t.scale?null:"none")};Tn.ensureUniformFontSize=function(e,t){var r=Tn.extendFlat({},t);return r.size=Math.max(t.size,e._fullLayout.uniformtext.minsize||0),r};Tn.join2=function(e,t,r){var n=e.length;return n>1?e.slice(0,-1).join(t)+r+e[n-1]:e.join(t)};Tn.bigFont=function(e){return Math.round(1.2*e)};var ine=Tn.getFirefoxVersion(),lat=ine!==null&&ine<86;Tn.getPositionFromD3Event=function(){return lat?[ZM.event.layerX,ZM.event.layerY]:[ZM.event.offsetX,ZM.event.offsetY]}});var pne=Ae(()=>{"use strict";var uat=ei(),hne={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(cq in hne)dne=cq.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),uat.addStyleRule(dne,hne[cq]);var dne,cq});var hq=Ae((bar,vne)=>{vne.exports=!0});var pq=Ae((war,mne)=>{"use strict";var fat=hq(),dq;typeof window.matchMedia=="function"?dq=!window.matchMedia("(hover: none)").matches:dq=fat;mne.exports=dq});var vb=Ae((Tar,vq)=>{"use strict";var g3=typeof Reflect=="object"?Reflect:null,yne=g3&&typeof g3.apply=="function"?g3.apply:function(t,r,n){return Function.prototype.apply.call(t,r,n)},UL;g3&&typeof g3.ownKeys=="function"?UL=g3.ownKeys:Object.getOwnPropertySymbols?UL=function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:UL=function(t){return Object.getOwnPropertyNames(t)};function cat(e){console&&console.warn&&console.warn(e)}var _ne=Number.isNaN||function(t){return t!==t};function qc(){qc.init.call(this)}vq.exports=qc;vq.exports.once=vat;qc.EventEmitter=qc;qc.prototype._events=void 0;qc.prototype._eventsCount=0;qc.prototype._maxListeners=void 0;var gne=10;function VL(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(qc,"defaultMaxListeners",{enumerable:!0,get:function(){return gne},set:function(e){if(typeof e!="number"||e<0||_ne(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");gne=e}});qc.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};qc.prototype.setMaxListeners=function(t){if(typeof t!="number"||t<0||_ne(t))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+t+".");return this._maxListeners=t,this};function xne(e){return e._maxListeners===void 0?qc.defaultMaxListeners:e._maxListeners}qc.prototype.getMaxListeners=function(){return xne(this)};qc.prototype.emit=function(t){for(var r=[],n=1;n0&&(o=r[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var u=a[t];if(u===void 0)return!1;if(typeof u=="function")yne(u,this,r);else for(var l=u.length,f=Sne(u,l),n=0;n0&&o.length>i&&!o.warned){o.warned=!0;var s=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");s.name="MaxListenersExceededWarning",s.emitter=e,s.type=t,s.count=o.length,cat(s)}return e}qc.prototype.addListener=function(t,r){return bne(this,t,r,!1)};qc.prototype.on=qc.prototype.addListener;qc.prototype.prependListener=function(t,r){return bne(this,t,r,!0)};function hat(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function wne(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=hat.bind(n);return i.listener=r,n.wrapFn=i,i}qc.prototype.once=function(t,r){return VL(r),this.on(t,wne(this,t,r)),this};qc.prototype.prependOnceListener=function(t,r){return VL(r),this.prependListener(t,wne(this,t,r)),this};qc.prototype.removeListener=function(t,r){var n,i,a,o,s;if(VL(r),i=this._events,i===void 0)return this;if(n=i[t],n===void 0)return this;if(n===r||n.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete i[t],i.removeListener&&this.emit("removeListener",t,n.listener||r));else if(typeof n!="function"){for(a=-1,o=n.length-1;o>=0;o--)if(n[o]===r||n[o].listener===r){s=n[o].listener,a=o;break}if(a<0)return this;a===0?n.shift():dat(n,a),n.length===1&&(i[t]=n[0]),i.removeListener!==void 0&&this.emit("removeListener",t,s||r)}return this};qc.prototype.off=qc.prototype.removeListener;qc.prototype.removeAllListeners=function(t){var r,n,i;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[t]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[t]),this;if(arguments.length===0){var a=Object.keys(n),o;for(i=0;i=0;i--)this.removeListener(t,r[i]);return this};function Tne(e,t,r){var n=e._events;if(n===void 0)return[];var i=n[t];return i===void 0?[]:typeof i=="function"?r?[i.listener||i]:[i]:r?pat(i):Sne(i,i.length)}qc.prototype.listeners=function(t){return Tne(this,t,!0)};qc.prototype.rawListeners=function(t){return Tne(this,t,!1)};qc.listenerCount=function(e,t){return typeof e.listenerCount=="function"?e.listenerCount(t):Ane.call(e,t)};qc.prototype.listenerCount=Ane;function Ane(e){var t=this._events;if(t!==void 0){var r=t[e];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}qc.prototype.eventNames=function(){return this._eventsCount>0?UL(this._events):[]};function Sne(e,t){for(var r=new Array(t),n=0;n{"use strict";var mq=vb().EventEmitter,yat={init:function(e){if(e._ev instanceof mq)return e;var t=new mq,r=new mq;return e._ev=t,e._internalEv=r,e.on=t.on.bind(t),e.once=t.once.bind(t),e.removeListener=t.removeListener.bind(t),e.removeAllListeners=t.removeAllListeners.bind(t),e._internalOn=r.on.bind(r),e._internalOnce=r.once.bind(r),e._removeInternalListener=r.removeListener.bind(r),e._removeAllInternalListeners=r.removeAllListeners.bind(r),e.emit=function(n,i){t.emit(n,i),r.emit(n,i)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,t,r){var n,i=e._ev;if(!i)return;var a=i._events[t];if(!a)return;function o(u){if(u.listener){if(i.removeListener(t,u.listener),!u.fired)return u.fired=!0,u.listener.apply(i,[r])}else return u.apply(i,[r])}a=Array.isArray(a)?a:[a];var s;for(s=0;s{"use strict";var kne=ei(),gat=fb().dfltConfig;function _at(e,t){for(var r=[],n,i=0;igat.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};Tg.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};Tg.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};Tg.undo=function(t){var r,n;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;n=t.undoQueue.queue.length)){for(r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;n{"use strict";Pne.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var w3=Ae(ed=>{"use strict";var _0=$l(),YM=ei(),HL=Gf(),gq=f3(),xat=yq(),bat=UM(),wat=fb().configAttributes,zne=Sc(),wm=YM.extendDeepAll,x3=YM.isPlainObject,Tat=YM.isArrayOrTypedArray,WL=YM.nestedProperty,Aat=YM.valObjectMeta,_q="_isSubplotObj",jL="_isLinkedToArray",Sat="_arrayAttrRegexps",Rne="_deprecated",xq=[_q,jL,Sat,Rne];ed.IS_SUBPLOT_OBJ=_q;ed.IS_LINKED_TO_ARRAY=jL;ed.DEPRECATED=Rne;ed.UNDERSCORE_ATTRS=xq;ed.get=function(){var e={};return _0.allTypes.forEach(function(t){e[t]=Eat(t)}),{defs:{valObjects:Aat,metaKeys:xq.concat(["description","role","editType","impliedEdits"]),editType:{traces:zne.traces,layout:zne.layout},impliedEdits:{}},traces:e,layout:kat(),frames:Cat(),animation:b3(bat),config:b3(wat)}};ed.crawl=function(e,t,r,n){var i=r||0;n=n||"",Object.keys(e).forEach(function(a){var o=e[a];if(xq.indexOf(a)===-1){var s=(n?n+".":"")+a;t(o,a,e,i,s),!ed.isValObject(o)&&x3(o)&&a!=="impliedEdits"&&ed.crawl(o,t,i+1,s)}})};ed.isValObject=function(e){return e&&e.valType!==void 0};ed.findArrayAttributes=function(e){var t=[],r=[],n=[],i,a;function o(u,l,f,c){r=r.slice(0,c).concat([l]),n=n.slice(0,c).concat([u&&u._isLinkedToArray]);var h=u&&(u.valType==="data_array"||u.arrayOk===!0)&&!(r[c-1]==="colorbar"&&(l==="ticktext"||l==="tickvals"));h&&s(i,0,"")}function s(u,l,f){var c=u[r[l]],h=f+r[l];if(l===r.length-1)Tat(c)&&t.push(a+h);else if(n[l]){if(Array.isArray(c))for(var d=0;d=a.length)return!1;if(e.dimensions===2){if(r++,t.length===r)return e;var o=t[r];if(!GL(o))return!1;e=a[i][o]}else e=a[i]}else e=a}}return e}function GL(e){return e===Math.round(e)&&e>=0}function Eat(e){var t,r;t=_0.modules[e]._module,r=t.basePlotModule;var n={};n.type=null;var i=wm({},HL),a=wm({},t.attributes);ed.crawl(a,function(u,l,f,c,h){WL(i,h).set(void 0),u===void 0&&WL(a,h).set(void 0)}),wm(n,i),_0.traceIs(e,"noOpacity")&&delete n.opacity,_0.traceIs(e,"showLegend")||(delete n.showlegend,delete n.legendgroup),_0.traceIs(e,"noHover")&&(delete n.hoverinfo,delete n.hoverlabel),t.selectPoints||delete n.selectedpoints,wm(n,a),r.attributes&&wm(n,r.attributes),n.type=e;var o={meta:t.meta||{},categories:t.categories||{},animatable:!!t.animatable,type:e,attributes:b3(n)};if(t.layoutAttributes){var s={};wm(s,t.layoutAttributes),o.layoutAttributes=b3(s)}return t.animatable||ed.crawl(o,function(u){ed.isValObject(u)&&"anim"in u&&delete u.anim}),o}function kat(){var e={},t,r;wm(e,gq);for(t in _0.subplotsRegistry)if(r=_0.subplotsRegistry[t],!!r.layoutAttributes)if(Array.isArray(r.attr))for(var n=0;n{"use strict";var T3=ei(),Rat=Gf(),$1="templateitemname",bq={name:{valType:"string",editType:"none"}};bq[$1]={valType:"string",editType:"calc"};mb.templatedArray=function(e,t){return t._isLinkedToArray=e,t.name=bq.name,t[$1]=bq[$1],t};mb.traceTemplater=function(e){var t={},r,n;for(r in e)n=e[r],Array.isArray(n)&&n.length&&(t[r]=0);function i(a){r=T3.coerce(a,{},Rat,"type");var o={type:r,_template:null};if(r in t){n=e[r];var s=t[r]%n.length;t[r]++,o._template=n[s]}return o}return{newTrace:i}};mb.newContainer=function(e,t,r){var n=e._template,i=n&&(n[t]||r&&n[r]);T3.isPlainObject(i)||(i=null);var a=e[t]={_template:i};return a};mb.arrayTemplater=function(e,t,r){var n=e._template,i=n&&n[Bne(t)],a=n&&n[t];(!Array.isArray(a)||!a.length)&&(a=[]);var o={};function s(l){var f={name:l.name,_input:l},c=f[$1]=l[$1];if(!Fne(c))return f._template=i,f;for(var h=0;h=n&&(r._input||{})._templateitemname;a&&(i=n);var o=t+"["+i+"]",s;function u(){s={},a&&(s[o]={},s[o][$1]=a)}u();function l(d,p){s[d]=p}function f(d,p){a?T3.nestedProperty(s[o],d).set(p):s[o+"."+d]=p}function c(){var d=s;return u(),d}function h(d,p){d&&f(d,p);var _=c();for(var b in _)T3.nestedProperty(e,b).set(_[b])}return{modifyBase:l,modifyItem:f,getUpdateObj:c,applyUpdate:h}}});var dd=Ae((Car,One)=>{"use strict";var KM=o3().counter;One.exports={idRegex:{x:KM("x","( domain)?"),y:KM("y","( domain)?")},attrRegex:KM("[xy]axis"),xAxisMatch:KM("xaxis"),yAxisMatch:KM("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var Wc=Ae(Av=>{"use strict";var Dat=$l(),wq=dd();Av.id2name=function(t){if(!(typeof t!="string"||!t.match(wq.AX_ID_PATTERN))){var r=t.split(" ")[0].slice(1);return r==="1"&&(r=""),t.charAt(0)+"axis"+r}};Av.name2id=function(t){if(t.match(wq.AX_NAME_PATTERN)){var r=t.slice(5);return r==="1"&&(r=""),t.charAt(0)+r}};Av.cleanId=function(t,r,n){var i=/( domain)$/.test(t);if(!(typeof t!="string"||!t.match(wq.AX_ID_PATTERN))&&!(r&&t.charAt(0)!==r)&&!(i&&!n)){var a=t.split(" ")[0].slice(1).replace(/^0+/,"");return a==="1"&&(a=""),t.charAt(0)+a+(i&&n?" domain":"")}};Av.list=function(e,t,r){var n=e._fullLayout;if(!n)return[];var i=Av.listIds(e,t),a=new Array(i.length),o;for(o=0;on?1:-1:+(e.slice(1)||1)-+(t.slice(1)||1)};Av.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function qne(e,t){if(t&&t.length){for(var r=0;r{"use strict";function Fat(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".outline-controllers").remove()}function Bat(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}Nne.exports={clearOutlineControllers:Fat,clearOutline:Bat}});var XL=Ae((zar,Une)=>{"use strict";Une.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var Rd=Ae(YL=>{"use strict";var ZL=$l(),Iar=dd().SUBPLOT_PATTERN;YL.getSubplotCalcData=function(e,t,r){var n=ZL.subplotsRegistry[t];if(!n)return[];for(var i=n.attr,a=[],o=0;o{"use strict";var Oat=$l(),A3=ei();yb.manageCommandObserver=function(e,t,r,n){var i={},a=!0;t&&t._commandObserver&&(i=t._commandObserver),i.cache||(i.cache={}),i.lookupTable={};var o=yb.hasSimpleAPICommandBindings(e,r,i.lookupTable);if(t&&t._commandObserver){if(o)return i;if(t._commandObserver.remove)return t._commandObserver.remove(),t._commandObserver=null,i}if(o){Vne(e,o,i.cache),i.check=function(){if(a){var f=Vne(e,o,i.cache);return f.changed&&n&&i.lookupTable[f.value]!==void 0&&(i.disable(),Promise.resolve(n({value:f.value,type:o.type,prop:o.prop,traces:o.traces,index:i.lookupTable[f.value]})).then(i.enable,i.enable)),f.changed}};for(var s=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],u=0;u0?".":"")+i;A3.isPlainObject(a)?Tq(a,t,o,n+1):t(o,i,a)}})}});var Cc=Ae((Far,aae)=>{"use strict";var $ne=Jl(),Nat=r3().timeFormatLocale,Uat=z9().formatLocale,JM=ku(),Vat=I9(),Hf=$l(),Qne=w3(),Gat=Lf(),iu=ei(),eae=jl(),jne=rf().BADNUM,Sv=Wc(),Hat=Q1().clearOutline,Wat=XL(),Aq=UM(),jat=yq(),Xat=Rd().getModuleCalcData,Xne=iu.relinkPrivateKeys,gb=iu._,ql=aae.exports={};iu.extendFlat(ql,Hf);ql.attributes=Gf();ql.attributes.type.values=ql.allTypes;ql.fontAttrs=gc();ql.layoutAttributes=f3();var JL=Wne();ql.executeAPICommand=JL.executeAPICommand;ql.computeAPICommandBindings=JL.computeAPICommandBindings;ql.manageCommandObserver=JL.manageCommandObserver;ql.hasSimpleAPICommandBindings=JL.hasSimpleAPICommandBindings;ql.redrawText=function(e){return e=iu.getGraphDiv(e),new Promise(function(t){setTimeout(function(){e._fullLayout&&(Hf.getComponentMethod("annotations","draw")(e),Hf.getComponentMethod("legend","draw")(e),Hf.getComponentMethod("colorbar","draw")(e),t(ql.previousPromises(e)))},300)})};ql.resize=function(e){e=iu.getGraphDiv(e);var t,r=new Promise(function(n,i){(!e||iu.isHidden(e))&&i(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(t=e._resolveResize),e._resolveResize=n,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||iu.isHidden(e)){n(e);return}delete e.layout.width,delete e.layout.height;var a=e.changed;e.autoplay=!0,Hf.call("relayout",e,{autosize:!0}).then(function(){e.changed=a,e._resolveResize===n&&(delete e._resolveResize,n(e))})},100)});return t&&t(r),r};ql.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};ql.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var t=e._fullLayout,r=iu.ensureSingle(t._paper,"text","js-plot-link-container",function(u){u.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:eae.defaultLine,"pointer-events":"all"}).each(function(){var l=$ne.select(this);l.append("tspan").classed("js-link-to-tool",!0),l.append("tspan").classed("js-link-spacer",!0),l.append("tspan").classed("js-sourcelinks",!0)})}),n=r.node(),i={y:t._paper.attr("height")-9};document.body.contains(n)&&n.getComputedTextLength()>=t.width-20?(i["text-anchor"]="start",i.x=5):(i["text-anchor"]="end",i.x=t._paper.attr("width")-7),r.attr(i);var a=r.select(".js-link-to-tool"),o=r.select(".js-link-spacer"),s=r.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&Zat(e,a),o.text(a.text()&&s.text()?" - ":"")}};function Zat(e,t){t.text("");var r=t.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)r.on("click",function(){ql.sendDataToCloud(e)});else{var n=window.location.pathname.split("/"),i=window.location.search;r.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+i})}}ql.sendDataToCloud=function(e){var t=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(t){e.emit("plotly_beforeexport");var r=$ne.select(e).append("div").attr("id","hiddenform").style("display","none"),n=r.append("form").attr({action:t+"/external",method:"post",target:"_blank"}),i=n.append("input").attr({type:"text",name:"data"});return i.node().value=ql.graphJson(e,!1,"keepdata"),n.node().submit(),r.remove(),e.emit("plotly_afterexport"),!1}};var Yat=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],Kat=["year","month","dayMonth","dayMonthYear"];ql.supplyDefaults=function(e,t){var r=t&&t.skipUpdateCalc,n=e._fullLayout||{};if(n._skipDefaults){delete n._skipDefaults;return}var i=e._fullLayout={},a=e.layout||{},o=e._fullData||[],s=e._fullData=[],u=e.data||[],l=e.calcdata||[],f=e._context||{},c;e._transitionData||ql.createTransitionData(e),i._dfltTitle={plot:gb(e,"Click to enter Plot title"),subtitle:gb(e,"Click to enter Plot subtitle"),x:gb(e,"Click to enter X axis title"),y:gb(e,"Click to enter Y axis title"),colorbar:gb(e,"Click to enter Colorscale title"),annotation:gb(e,"new text")},i._traceWord=gb(e,"trace");var h=Zne(e,Yat);if(i._mapboxAccessToken=f.mapboxAccessToken,n._initialAutoSizeIsDone){var d=n.width,p=n.height;ql.supplyLayoutGlobalDefaults(a,i,h),a.width||(i.width=d),a.height||(i.height=p),ql.sanitizeMargins(i)}else{ql.supplyLayoutGlobalDefaults(a,i,h);var _=!a.width||!a.height,b=i.autosize,v=f.autosizable,k=_&&(b||v);k?ql.plotAutoSize(e,a,i):_&&ql.sanitizeMargins(i),!b&&_&&(a.width=i.width,a.height=i.height)}i._d3locale=Qat(h,i.separators),i._extraFormat=Zne(e,Kat),i._initialAutoSizeIsDone=!0,i._dataLength=u.length,i._modules=[],i._visibleModules=[],i._basePlotModules=[];var E=i._subplots=$at(),A=i._splomAxes={x:{},y:{}},L=i._splomSubplots={};i._splomGridDflt={},i._scatterStackOpts={},i._firstScatter={},i._alignmentOpts={},i._colorAxes={},i._requestRangeslider={},i._traceUids=Jat(o,u),ql.supplyDataDefaults(u,s,a,i);var x=Object.keys(A.x),C=Object.keys(A.y);if(x.length>1&&C.length>1){for(Hf.getComponentMethod("grid","sizeDefaults")(a,i),c=0;c15&&C.length>15&&i.shapes.length===0&&i.images.length===0,ql.linkSubplots(s,i,o,n),ql.cleanPlot(s,i,o,n);var B=!!(n._has&&n._has("cartesian")),F=!!(i._has&&i._has("cartesian")),U=B,G=F;U&&!G?n._bgLayer.remove():G&&!U&&(i._shouldCreateBgLayer=!0),n._zoomlayer&&!e._dragging&&Hat({_fullLayout:n}),eot(s,i),Xne(i,n),Hf.getComponentMethod("colorscale","crossTraceDefaults")(s,i),i._preGUI||(i._preGUI={}),i._tracePreGUI||(i._tracePreGUI={});var j=i._tracePreGUI,W={},N;for(N in j)W[N]="old";for(c=0;c0){var f=1-2*a;o=Math.round(f*o),s=Math.round(f*s)}}var c=ql.layoutAttributes.width.min,h=ql.layoutAttributes.height.min;o1,p=!r.height&&Math.abs(n.height-s)>1;(p||d)&&(d&&(n.width=o),p&&(n.height=s)),t._initialAutoSize||(t._initialAutoSize={width:o,height:s}),ql.sanitizeMargins(n)};ql.supplyLayoutModuleDefaults=function(e,t,r,n){var i=Hf.componentsRegistry,a=t._basePlotModules,o,s,u,l=Hf.subplotsRegistry.cartesian;for(o in i)u=i[o],u.includeBasePlot&&u.includeBasePlot(e,t);a.length||a.push(l),t._has("cartesian")&&(Hf.getComponentMethod("grid","contentDefaults")(e,t),l.finalizeSubplots(e,t));for(var f in t._subplots)t._subplots[f].sort(iu.subplotSort);for(s=0;s1&&(r.l/=b,r.r/=b)}if(h){var v=(r.t+r.b)/h;v>1&&(r.t/=v,r.b/=v)}var k=r.xl!==void 0?r.xl:r.x,E=r.xr!==void 0?r.xr:r.x,A=r.yt!==void 0?r.yt:r.y,L=r.yb!==void 0?r.yb:r.y;d[t]={l:{val:k,size:r.l+_},r:{val:E,size:r.r+_},b:{val:L,size:r.b+_},t:{val:A,size:r.t+_}},p[t]=1}if(!n._replotting)return ql.doAutoMargin(e)}};function rot(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var t=Sv.list(e,"",!0);for(var r in t)if(t[r].autoshift||t[r].shift)return!0;return!1}ql.doAutoMargin=function(e){var t=e._fullLayout,r=t.width,n=t.height;t._size||(t._size={}),tae(t);var i=t._size,a=t.margin,o={t:0,b:0,l:0,r:0},s=iu.extendFlat({},i),u=a.l,l=a.r,f=a.t,c=a.b,h=t._pushmargin,d=t._pushmarginIds,p=t.minreducedwidth,_=t.minreducedheight;if(a.autoexpand!==!1){for(var b in h)d[b]||delete h[b];var v=e._fullLayout._reservedMargin;for(var k in v)for(var E in v[k]){var A=v[k][E];o[E]=Math.max(o[E],A)}h.base={l:{val:0,size:u},r:{val:1,size:l},t:{val:1,size:f},b:{val:0,size:c}};for(var L in o){var x=0;for(var C in h)C!=="base"&&JM(h[C][L].size)&&(x=h[C][L].size>x?h[C][L].size:x);var M=Math.max(0,a[L]-x);o[L]=Math.max(0,o[L]-M)}for(var m in h){var P=h[m].l||{},T=h[m].b||{},B=P.val,F=P.size,U=T.val,G=T.size,j=r-o.r-o.l,W=n-o.t-o.b;for(var N in h){if(JM(F)&&h[N].r){var H=h[N].r.val,re=h[N].r.size;if(H>B){var ae=(F*H+(re-j)*B)/(H-B),be=(re*(1-B)+(F-j)*(1-H))/(H-B);ae+be>u+l&&(u=ae,l=be)}}if(JM(G)&&h[N].t){var ze=h[N].t.val,Ce=h[N].t.size;if(ze>U){var de=(G*ze+(Ce-W)*U)/(ze-U),te=(Ce*(1-U)+(G-W)*(1-ze))/(ze-U);de+te>c+f&&(c=de,f=te)}}}}}var ke=iu.constrain(r-a.l-a.r,rae,p),Ee=iu.constrain(n-a.t-a.b,iae,_),Me=Math.max(0,r-ke),Ue=Math.max(0,n-Ee);if(Me){var De=(u+l)/Me;De>1&&(u/=De,l/=De)}if(Ue){var ye=(c+f)/Ue;ye>1&&(c/=ye,f/=ye)}if(i.l=Math.round(u)+o.l,i.r=Math.round(l)+o.r,i.t=Math.round(f)+o.t,i.b=Math.round(c)+o.b,i.p=Math.round(a.pad),i.w=Math.round(r)-i.l-i.r,i.h=Math.round(n)-i.t-i.b,!t._replotting&&(ql.didMarginChange(s,i)||rot(e))){"_redrawFromAutoMarginCount"in t?t._redrawFromAutoMarginCount++:t._redrawFromAutoMarginCount=1;var qe=3*(1+Object.keys(d).length);if(t._redrawFromAutoMarginCount1)return!0}return!1};ql.graphJson=function(e,t,r,n,i,a){(i&&t&&!e._fullData||i&&!t&&!e._fullLayout)&&ql.supplyDefaults(e);var o=i?e._fullData:e.data,s=i?e._fullLayout:e.layout,u=(e._transitionData||{})._frames;function l(h,d){if(typeof h=="function")return d?"_function_":null;if(iu.isPlainObject(h)){var p={},_;return Object.keys(h).sort().forEach(function(E){if(["_","["].indexOf(E.charAt(0))===-1){if(typeof h[E]=="function"){d&&(p[E]="_function");return}if(r==="keepdata"){if(E.slice(-3)==="src")return}else if(r==="keepstream"){if(_=h[E+"src"],typeof _=="string"&&_.indexOf(":")>0&&!iu.isPlainObject(h.stream))return}else if(r!=="keepall"&&(_=h[E+"src"],typeof _=="string"&&_.indexOf(":")>0))return;p[E]=l(h[E],d)}}),p}var b=Array.isArray(h),v=iu.isTypedArray(h);if((b||v)&&h.dtype&&h.shape){var k=h.bdata;return l({dtype:h.dtype,shape:h.shape,bdata:iu.isArrayBuffer(k)?Vat.encode(k):k},d)}return b?h.map(function(E){return l(E,d)}):v?iu.simpleMap(h,iu.identity):iu.isJSDate(h)?iu.ms2DateTimeLocal(+h):h}var f={data:(o||[]).map(function(h){var d=l(h);return t&&delete d.fit,d})};if(!t&&(f.layout=l(s),i)){var c=s._size;f.layout.computed={margin:{b:c.b,l:c.l,r:c.r,t:c.t}}}return u&&(f.frames=l(u)),a&&(f.config=l(e._context,!0)),n==="object"?f:JSON.stringify(f)};ql.modifyFrames=function(e,t){var r,n,i,a=e._transitionData._frames,o=e._transitionData._frameHash;for(r=0;r0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){n=!0}),r.redraw&&e._transitionData._interruptCallbacks.push(function(){return Hf.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var h=0,d=0;function p(){return h++,function(){d++,!n&&d===h&&s(c)}}r.runFn(p),setTimeout(p())})}function s(c){if(e._transitionData)return a(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(r.redraw)return Hf.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(c)}function u(){if(e._transitionData)return e._transitioning=!1,i(e._transitionData._interruptCallbacks)}var l=[ql.previousPromises,u,r.prepareFn,ql.rehover,ql.reselect,o],f=iu.syncOrAsync(l,e);return(!f||!f.then)&&(f=Promise.resolve()),f.then(function(){return e})}ql.doCalcdata=function(e,t){var r=Sv.list(e),n=e._fullData,i=e._fullLayout,a,o,s,u,l=new Array(n.length),f=(e.calcdata||[]).slice();for(e.calcdata=l,i._numBoxes=0,i._numViolins=0,i._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,i._piecolormap={},i._sunburstcolormap={},i._treemapcolormap={},i._iciclecolormap={},i._funnelareacolormap={},s=0;s=0;u--)if(L[u].enabled){a._indexToPoints=L[u]._indexToPoints;break}o&&o.calc&&(A=o.calc(e,a))}(!Array.isArray(A)||!A[0])&&(A=[{x:jne,y:jne}]),A[0].t||(A[0].t={}),A[0].trace=a,l[k]=A}}for(Kne(r,n,i),s=0;s{"use strict";_b.xmlns="http://www.w3.org/2000/xmlns/";_b.svg="http://www.w3.org/2000/svg";_b.xlink="http://www.w3.org/1999/xlink";_b.svgAttrs={xmlns:_b.svg,"xmlns:xlink":_b.xlink}});var td=Ae((Oar,oae)=>{"use strict";oae.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var Xf=Ae(x0=>{"use strict";var Bh=Jl(),Ag=ei(),oot=Ag.strTranslate,Sq=jv(),sot=td().LINE_SPACING,lot=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;x0.convertToTspans=function(e,t,r){var n=e.text(),i=!e.attr("data-notex")&&t&&t._context.typesetMath&&typeof MathJax!="undefined"&&n.match(lot),a=Bh.select(e.node().parentNode);if(a.empty())return;var o=e.attr("class")?e.attr("class").split(" ")[0]:"text";o+="-math",a.selectAll("svg."+o).remove(),a.selectAll("g."+o+"-group").remove(),e.style("display",null).attr({"data-unformatted":n,"data-math":"N"});function s(){a.empty()||(o=e.attr("class")+"-math",a.select("svg."+o).remove()),e.text("").style("white-space","pre");var u=bot(e.node(),n);u&&e.style("pointer-events","all"),x0.positionText(e),r&&r.call(e)}return i?(t&&t._promises||[]).push(new Promise(function(u){e.style("display","none");var l=parseInt(e.node().style.fontSize,10),f={fontSize:l};hot(i[2],f,function(c,h,d){a.selectAll("svg."+o).remove(),a.selectAll("g."+o+"-group").remove();var p=c&&c.select("svg");if(!p||!p.node()){s(),u();return}var _=a.append("g").classed(o+"-group",!0).attr({"pointer-events":"none","data-unformatted":n,"data-math":"Y"});_.node().appendChild(p.node()),h&&h.node()&&p.node().insertBefore(h.node().cloneNode(!0),p.node().firstChild);var b=d.width,v=d.height;p.attr({class:o,height:v,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var k=e.node().style.fill||"black",E=p.select("g");E.attr({fill:k,stroke:k});var A=E.node().getBoundingClientRect(),L=A.width,x=A.height;(L>b||x>v)&&(p.style("overflow","hidden"),A=p.node().getBoundingClientRect(),L=A.width,x=A.height);var C=+e.attr("x"),M=+e.attr("y"),m=l||e.node().getBoundingClientRect().height,P=-m/4;if(o[0]==="y")_.attr({transform:"rotate("+[-90,C,M]+")"+oot(-L/2,P-x/2)});else if(o[0]==="l")M=P-x/2;else if(o[0]==="a"&&o.indexOf("atitle")!==0)C=0,M=P;else{var T=e.attr("text-anchor");C=C-L*(T==="middle"?.5:T==="end"?1:0),M=M+P-x/2}p.attr({x:C,y:M}),r&&r.call(e,_),u(_)})})):s(),e};var uot=/(<|<|<)/g,fot=/(>|>|>)/g;function cot(e){return e.replace(uot,"\\lt ").replace(fot,"\\gt ")}var sae=[["$","$"],["\\(","\\)"]];function hot(e,t,r){var n=parseInt((MathJax.version||"").split(".")[0]);if(n!==2&&n!==3){Ag.warn("No MathJax version:",MathJax.version);return}var i,a,o,s,u=function(){return a=Ag.extendDeepAll({},MathJax.Hub.config),o=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:sae},displayAlign:"left"})},l=function(){a=Ag.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=sae},f=function(){if(i=MathJax.Hub.config.menuSettings.renderer,i!=="SVG")return MathJax.Hub.setRenderer("SVG")},c=function(){i=MathJax.config.startup.output,i!=="svg"&&(MathJax.config.startup.output="svg")},h=function(){var k="math-output-"+Ag.randstr({},64);s=Bh.select("body").append("div").attr({id:k}).style({visibility:"hidden",position:"absolute","font-size":t.fontSize+"px"}).text(cot(e));var E=s.node();return n===2?MathJax.Hub.Typeset(E):MathJax.typeset([E])},d=function(){var k=s.select(n===2?".MathJax_SVG":".MathJax"),E=!k.empty()&&s.select("svg").node();if(!E)Ag.log("There was an error in the tex syntax.",e),r();else{var A=E.getBoundingClientRect(),L;n===2?L=Bh.select("body").select("#MathJax_SVG_glyphs"):L=k.select("defs"),r(k,L,A)}s.remove()},p=function(){if(i!=="SVG")return MathJax.Hub.setRenderer(i)},_=function(){i!=="svg"&&(MathJax.config.startup.output=i)},b=function(){return o!==void 0&&(MathJax.Hub.processSectionDelay=o),MathJax.Hub.Config(a)},v=function(){MathJax.config=a};n===2?MathJax.Hub.Queue(u,f,h,d,p,b):n===3&&(l(),c(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){h(),d(),_(),v()}))}var cae={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},dot={sub:"0.3em",sup:"-0.6em"},pot={sub:"-0.21em",sup:"0.42em"},lae="\u200B",uae=["http:","https:","mailto:","",void 0,":"],hae=x0.NEWLINES=/(\r\n?|\n)/g,Eq=/(<[^<>]*>)/,kq=/<(\/?)([^ >]*)(\s+(.*))?>/i,vot=//i;x0.BR_TAG_ALL=//gi;var dae=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,pae=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,vae=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,mot=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function xb(e,t){if(!e)return null;var r=e.match(t),n=r&&(r[3]||r[4]);return n&&$L(n)}var yot=/(^|;)\s*color:/;x0.plainText=function(e,t){t=t||{};for(var r=t.len!==void 0&&t.len!==-1?t.len:1/0,n=t.allowedTags!==void 0?t.allowedTags:["br"],i="...",a=i.length,o=e.split(Eq),s=[],u="",l=0,f=0;fa?s.push(c.slice(0,Math.max(0,_-a))+i):s.push(c.slice(0,_));break}u=""}}return s.join("")};var got={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},_ot=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function $L(e){return e.replace(_ot,function(t,r){var n;return r.charAt(0)==="#"?n=xot(r.charAt(1)==="x"?parseInt(r.slice(2),16):parseInt(r.slice(1),10)):n=got[r],n||t})}x0.convertEntities=$L;function xot(e){if(!(e>1114111)){var t=String.fromCodePoint;if(t)return t(e);var r=String.fromCharCode;return e<=65535?r(e):r((e>>10)+55232,e%1024+56320)}}function bot(e,t){t=t.replace(hae," ");var r=!1,n=[],i,a=-1;function o(){a++;var x=document.createElementNS(Sq.svg,"tspan");Bh.select(x).attr({class:"line",dy:a*sot+"em"}),e.appendChild(x),i=x;var C=n;if(n=[{node:x}],C.length>1)for(var M=1;M.",t);return}var C=n.pop();x!==C.type&&Ag.log("Start tag <"+C.type+"> doesnt match end tag <"+x+">. Pretending it did match.",t),i=n[n.length-1].node}var f=vot.test(t);f?o():(i=e,n=[{node:e}]);for(var c=t.split(Eq),h=0;h{"use strict";var wot=Jl(),eP=cd(),QM=ku(),QL=ei(),yae=jl(),Tot=lb().isValid;function Aot(e,t,r){var n=t?QL.nestedProperty(e,t).get()||{}:e,i=n[r||"color"];i&&i._inputArray&&(i=i._inputArray);var a=!1;if(QL.isArrayOrTypedArray(i)){for(var o=0;o=0;n--,i++){var a=e[n];r[i]=[1-a[0],a[1]]}return r}function Tae(e,t){t=t||{};for(var r=e.domain,n=e.range,i=n.length,a=new Array(i),o=0;o{"use strict";var Sae=K9(),Mot=Sae.FORMAT_LINK,Eot=Sae.DATE_FORMAT_LINK;function kot(e,t){return{valType:"string",dflt:"",editType:"none",description:(t?Cq:Mae)("hover text",e)+["By default the values are formatted using "+(t?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function Cq(e,t){return["Sets the "+e+" formatting rule"+(t?"for `"+t+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+Mot+"."].join(" ")}function Mae(e,t){return Cq(e,t)+[" And for dates see: "+Eot+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}Eae.exports={axisHoverFormat:kot,descriptionOnlyNumbers:Cq,descriptionWithDates:Mae}});var Dd=Ae((Gar,Hae)=>{"use strict";var kae=gc(),S3=Fh(),Gae=Id().dash,Pq=Su().extendFlat,Cae=Lf().templatedArray,Var=Ff().templateFormatStringDescription,Lae=jc().descriptionWithDates,Cot=rf().ONEDAY,vy=dd(),Lot=vy.HOUR_PATTERN,Pot=vy.WEEKDAY_PATTERN,Lq={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},zot=Pq({},Lq,{values:Lq.values.slice().concat(["sync"])});function Pae(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var zae={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},Iae={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},Rae={valType:"data_array",editType:"ticks"},Dae={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function Fae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=5),t}function Bae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var Oae={valType:"color",dflt:S3.defaultLine,editType:"ticks"},qae={valType:"color",dflt:S3.lightLine,editType:"ticks"};function Nae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var Uae=Pq({},Gae,{editType:"ticks"}),Vae={valType:"boolean",editType:"ticks"};Hae.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:S3.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:kae({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[vy.idRegex.x.toString(),vy.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[vy.idRegex.x.toString(),vy.idRegex.y.toString()],editType:"calc"},rangebreaks:Cae("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[Pot,Lot,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:Cot},editType:"calc"}),tickmode:zot,nticks:Pae(),tick0:zae,dtick:Iae,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:Rae,ticktext:{valType:"data_array",editType:"ticks"},ticks:Dae,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:Fae(),tickwidth:Bae(),tickcolor:Oae,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:Pq({},Gae,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:kae({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:Lae("tick label")},tickformatstops:Cae("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:Lae("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:S3.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:Vae,gridcolor:qae,gridwidth:Nae(),griddash:Uae,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:S3.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:S3.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",vy.idRegex.x.toString(),vy.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",vy.idRegex.x.toString(),vy.idRegex.y.toString()],editType:"plot"},minor:{tickmode:Lq,nticks:Pae("minor"),tick0:zae,dtick:Iae,tickvals:Rae,ticks:Dae,ticklen:Fae("minor"),tickwidth:Bae("minor"),tickcolor:Oae,gridcolor:qae,gridwidth:Nae("minor"),griddash:Uae,showgrid:Vae,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var tP=Ae((Har,Xae)=>{"use strict";var Nc=Dd(),Wae=gc(),jae=Su().extendFlat,Iot=Sc().overrideAll;Xae.exports=Iot({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:Nc.linecolor,outlinewidth:Nc.linewidth,bordercolor:Nc.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:Nc.minor.tickmode,nticks:Nc.nticks,tick0:Nc.tick0,dtick:Nc.dtick,tickvals:Nc.tickvals,ticktext:Nc.ticktext,ticks:jae({},Nc.ticks,{dflt:""}),ticklabeloverflow:jae({},Nc.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:Nc.ticklen,tickwidth:Nc.tickwidth,tickcolor:Nc.tickcolor,ticklabelstep:Nc.ticklabelstep,showticklabels:Nc.showticklabels,labelalias:Nc.labelalias,tickfont:Wae({}),tickangle:Nc.tickangle,tickformat:Nc.tickformat,tickformatstops:Nc.tickformatstops,tickprefix:Nc.tickprefix,showtickprefix:Nc.showtickprefix,ticksuffix:Nc.ticksuffix,showticksuffix:Nc.showticksuffix,separatethousands:Nc.separatethousands,exponentformat:Nc.exponentformat,minexponent:Nc.minexponent,showexponent:Nc.showexponent,title:{text:{valType:"string"},font:Wae({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var nc=Ae((jar,Yae)=>{"use strict";var Rot=tP(),Dot=o3().counter,Fot=Z1(),Zae=lb().scales,War=Fot(Zae);function rP(e){return"`"+e+"`"}Yae.exports=function(t,r){t=t||"",r=r||{};var n=r.cLetter||"c",i="onlyIfNumerical"in r?r.onlyIfNumerical:!!t,a="noScale"in r?r.noScale:t==="marker.line",o="showScaleDflt"in r?r.showScaleDflt:n==="z",s=typeof r.colorscaleDflt=="string"?Zae[r.colorscaleDflt]:null,u=r.editTypeOverride||"",l=t?t+".":"",f,c;"colorAttr"in r?(f=r.colorAttr,c=r.colorAttr):(f={z:"z",c:"color"}[n],c="in "+rP(l+f));var h=i?" Has an effect only if "+c+" is set to a numerical array.":"",d=n+"auto",p=n+"min",_=n+"max",b=n+"mid",v=rP(l+d),k=rP(l+p),E=rP(l+_),A=k+" and "+E,L={};L[p]=L[_]=void 0;var x={};x[d]=!1;var C={};return f==="color"&&(C.color={valType:"color",arrayOk:!0,editType:u||"style"},r.anim&&(C.color.anim=!0)),C[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:L},C[p]={valType:"number",dflt:null,editType:u||"plot",impliedEdits:x},C[_]={valType:"number",dflt:null,editType:u||"plot",impliedEdits:x},C[b]={valType:"number",dflt:null,editType:"calc",impliedEdits:L},C.colorscale={valType:"colorscale",editType:"calc",dflt:s,impliedEdits:{autocolorscale:!1}},C.autocolorscale={valType:"boolean",dflt:r.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},C.reversescale={valType:"boolean",dflt:!1,editType:"plot"},a||(C.showscale={valType:"boolean",dflt:o,editType:"calc"},C.colorbar=Rot),r.noColorAxis||(C.coloraxis={valType:"subplotid",regex:Dot("coloraxis"),dflt:null,editType:"calc"}),C}});var Iq=Ae((Xar,Kae)=>{"use strict";var Bot=Su().extendFlat,Oot=nc(),zq=lb().scales;Kae.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:zq.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:zq.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:zq.RdBu,editType:"calc"}},coloraxis:Bot({_isSubplotObj:!0,editType:"calc"},Oot("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var Rq=Ae((Zar,Jae)=>{"use strict";var qot=ei();Jae.exports=function(t){return qot.isPlainObject(t.colorbar)}});var Bq=Ae(Fq=>{"use strict";var Dq=ku(),$ae=ei(),Qae=rf(),Not=Qae.ONEDAY,Uot=Qae.ONEWEEK;Fq.dtick=function(e,t){var r=t==="log",n=t==="date",i=t==="category",a=n?Not:1;if(!e)return a;if(Dq(e))return e=Number(e),e<=0?a:i?Math.max(1,Math.round(e)):n?Math.max(.1,e):e;if(typeof e!="string"||!(n||r))return a;var o=e.charAt(0),s=e.slice(1);return s=Dq(s)?Number(s):0,s<=0||!(n&&o==="M"&&s===Math.round(s)||r&&o==="L"||r&&o==="D"&&(s===1||s===2))?a:e};Fq.tick0=function(e,t,r,n){if(t==="date")return $ae.cleanDate(e,$ae.dateTick0(r,n%Uot===0?1:0));if(!(n==="D1"||n==="D2"))return Dq(e)?Number(e):0}});var bb=Ae((Kar,toe)=>{"use strict";var eoe=Bq(),Vot=ei().isArrayOrTypedArray,Got=mp().isTypedArraySpec,Hot=mp().decodeTypedArraySpec;toe.exports=function(t,r,n,i,a){a||(a={});var o=a.isMinor,s=o?t.minor||{}:t,u=o?r.minor:r,l=o?"minor.":"";function f(k){var E=s[k];return Got(E)&&(E=Hot(E)),E!==void 0?E:(u._template||{})[k]}var c=f("tick0"),h=f("dtick"),d=f("tickvals"),p=Vot(d)?"array":h?"linear":"auto",_=n(l+"tickmode",p);if(_==="auto"||_==="sync")n(l+"nticks");else if(_==="linear"){var b=u.dtick=eoe.dtick(h,i);u.tick0=eoe.tick0(c,i,r.calendar,b)}else if(i!=="multicategory"){var v=n(l+"tickvals");v===void 0?u.tickmode="auto":o||n("ticktext")}}});var M3=Ae((Jar,ioe)=>{"use strict";var Oq=ei(),roe=Dd();ioe.exports=function(t,r,n,i){var a=i.isMinor,o=a?t.minor||{}:t,s=a?r.minor:r,u=a?roe.minor:roe,l=a?"minor.":"",f=Oq.coerce2(o,s,u,"ticklen",a?(r.ticklen||5)*.6:void 0),c=Oq.coerce2(o,s,u,"tickwidth",a?r.tickwidth||1:void 0),h=Oq.coerce2(o,s,u,"tickcolor",(a?r.tickcolor:void 0)||s.color),d=n(l+"ticks",!a&&i.outerTicks||f||c||h?"outside":"");d||(delete s.ticklen,delete s.tickwidth,delete s.tickcolor)}});var qq=Ae(($ar,noe)=>{"use strict";noe.exports=function(t){var r=["showexponent","showtickprefix","showticksuffix"],n=r.filter(function(a){return t[a]!==void 0}),i=function(a){return t[a]===t[n[0]]};if(n.every(i)||n.length===1)return t[n[0]]}});var Jd=Ae((Qar,aoe)=>{"use strict";var iP=ei(),Wot=Lf();aoe.exports=function(t,r,n){var i=n.name,a=n.inclusionAttr||"visible",o=r[i],s=iP.isArrayOrTypedArray(t[i])?t[i]:[],u=r[i]=[],l=Wot.arrayTemplater(r,i,a),f,c;for(f=0;f{"use strict";var Nq=ei(),jot=jl().contrast,ooe=Dd(),Xot=qq(),Zot=Jd();soe.exports=function(t,r,n,i,a){a||(a={});var o=n("labelalias");Nq.isPlainObject(o)||delete r.labelalias;var s=Xot(t),u=n("showticklabels");if(u){a.noTicklabelshift||n("ticklabelshift"),a.noTicklabelstandoff||n("ticklabelstandoff");var l=a.font||{},f=r.color,c=r.ticklabelposition||"",h=c.indexOf("inside")!==-1?jot(a.bgColor):f&&f!==ooe.color.dflt?f:l.color;if(Nq.coerceFont(n,"tickfont",l,{overrideDflt:{color:h}}),!a.noTicklabelstep&&i!=="multicategory"&&i!=="log"&&n("ticklabelstep"),!a.noAng){var d=n("tickangle");!a.noAutotickangles&&d==="auto"&&n("autotickangles")}if(i!=="category"){var p=n("tickformat");Zot(t,r,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:Yot}),r.tickformatstops.length||delete r.tickformatstops,!a.noExp&&!p&&i!=="date"&&(n("showexponent",s),n("exponentformat"),n("minexponent"),n("separatethousands"))}!a.noMinorloglabels&&i==="log"&&n("minorloglabels")}};function Yot(e,t){function r(i,a){return Nq.coerce(e,t,ooe.tickformatstops,i,a)}var n=r("enabled");n&&(r("dtickrange"),r("value"))}});var t_=Ae((tor,loe)=>{"use strict";var Kot=qq();loe.exports=function(t,r,n,i,a){a||(a={});var o=a.tickSuffixDflt,s=Kot(t),u=n("tickprefix");u&&n("showtickprefix",s);var l=n("ticksuffix",o);l&&n("showticksuffix",s)}});var Uq=Ae((ror,uoe)=>{"use strict";var r_=ei(),Jot=Lf(),$ot=bb(),Qot=M3(),est=e_(),tst=t_(),rst=tP();uoe.exports=function(t,r,n){var i=Jot.newContainer(r,"colorbar"),a=t.colorbar||{};function o(T,B){return r_.coerce(a,i,rst,T,B)}var s=n.margin||{t:0,b:0,l:0,r:0},u=n.width-s.l-s.r,l=n.height-s.t-s.b,f=o("orientation"),c=f==="v",h=o("thicknessmode");o("thickness",h==="fraction"?30/(c?u:l):30);var d=o("lenmode");o("len",d==="fraction"?1:c?l:u);var p=o("yref"),_=o("xref"),b=p==="paper",v=_==="paper",k,E,A,L="left";c?(A="middle",L=v?"left":"right",k=v?1.02:1,E=.5):(A=b?"bottom":"top",L="center",k=.5,E=b?1.02:1),r_.coerce(a,i,{x:{valType:"number",min:v?-2:0,max:v?3:1,dflt:k}},"x"),r_.coerce(a,i,{y:{valType:"number",min:b?-2:0,max:b?3:1,dflt:E}},"y"),o("xanchor",L),o("xpad"),o("yanchor",A),o("ypad"),r_.noneOrAll(a,i,["x","y"]),o("outlinecolor"),o("outlinewidth"),o("bordercolor"),o("borderwidth"),o("bgcolor");var x=r_.coerce(a,i,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:c?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");o("ticklabeloverflow",x.indexOf("inside")!==-1?"hide past domain":"hide past div"),$ot(a,i,o,"linear");var C=n.font,M={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:C};x.indexOf("inside")!==-1&&(M.bgColor="black"),tst(a,i,o,"linear",M),est(a,i,o,"linear",M),Qot(a,i,o,"linear",M),o("title.text",n._dfltTitle.colorbar);var m=i.showticklabels?i.tickfont:C,P=r_.extendFlat({},C,{family:m.family,size:r_.bigFont(m.size)});r_.coerceFont(o,"title.font",P),o("title.side",c?"top":"right")}});var rd=Ae((ior,hoe)=>{"use strict";var foe=ku(),Gq=ei(),ist=Rq(),nst=Uq(),coe=lb().isValid,ast=$l().traceIs;function Vq(e,t){var r=t.slice(0,t.length-1);return t?Gq.nestedProperty(e,r).get()||{}:e}hoe.exports=function e(t,r,n,i,a){var o=a.prefix,s=a.cLetter,u="_module"in r,l=Vq(t,o),f=Vq(r,o),c=Vq(r._template||{},o)||{},h=function(){return delete t.coloraxis,delete r.coloraxis,e(t,r,n,i,a)};if(u){var d=n._colorAxes||{},p=i(o+"coloraxis");if(p){var _=ast(r,"contour")&&Gq.nestedProperty(r,"contours.coloring").get()||"heatmap",b=d[p];b?(b[2].push(h),b[0]!==_&&(b[0]=!1,Gq.warn(["Ignoring coloraxis:",p,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[p]=[_,r,[h]];return}}var v=l[s+"min"],k=l[s+"max"],E=foe(v)&&foe(k)&&v{"use strict";var doe=ei(),ost=Lf(),poe=Iq(),sst=rd();voe.exports=function(t,r){function n(c,h){return doe.coerce(t,r,poe,c,h)}n("colorscale.sequential"),n("colorscale.sequentialminus"),n("colorscale.diverging");var i=r._colorAxes,a,o;function s(c,h){return doe.coerce(a,o,poe.coloraxis,c,h)}for(var u in i){var l=i[u];if(l[0])a=t[u]||{},o=ost.newContainer(r,u,"coloraxis"),o._name=u,sst(a,o,r,s,{prefix:"",cLetter:"c"});else{for(var f=0;f{"use strict";var lst=ei(),ust=yp().hasColorscale,fst=yp().extractOpts;yoe.exports=function(t,r){function n(f,c){var h=f["_"+c];h!==void 0&&(f[c]=h)}function i(f,c){var h=c.container?lst.nestedProperty(f,c.container).get():f;if(h)if(h.coloraxis)h._colorAx=r[h.coloraxis];else{var d=fst(h),p=d.auto;(p||d.min===void 0)&&n(h,c.min),(p||d.max===void 0)&&n(h,c.max),d.autocolorscale&&n(h,"colorscale")}}for(var a=0;a{"use strict";var _oe=ku(),Hq=ei(),cst=yp().extractOpts;xoe.exports=function(t,r,n){var i=t._fullLayout,a=n.vals,o=n.containerStr,s=o?Hq.nestedProperty(r,o).get():r,u=cst(s),l=u.auto!==!1,f=u.min,c=u.max,h=u.mid,d=function(){return Hq.aggNums(Math.min,null,a)},p=function(){return Hq.aggNums(Math.max,null,a)};if(f===void 0?f=d():l&&(s._colorAx&&_oe(f)?f=Math.min(f,d()):f=d()),c===void 0?c=p():l&&(s._colorAx&&_oe(c)?c=Math.max(c,p()):c=p()),l&&h!==void 0&&(c-h>h-f?f=h-(c-h):c-h=0?_=i.colorscale.sequential:_=i.colorscale.sequentialminus,u._sync("colorscale",_)}}});var _c=Ae((sor,boe)=>{"use strict";var nP=lb(),E3=yp();boe.exports={moduleType:"component",name:"colorscale",attributes:nc(),layoutAttributes:Iq(),supplyLayoutDefaults:moe(),handleDefaults:rd(),crossTraceDefaults:goe(),calc:gp(),scales:nP.scales,defaultScale:nP.defaultScale,getScale:nP.get,isValidScale:nP.isValid,hasColorscale:E3.hasColorscale,extractOpts:E3.extractOpts,extractScale:E3.extractScale,flipScale:E3.flipScale,makeColorScaleFunc:E3.makeColorScaleFunc,makeColorScaleFuncFromTrace:E3.makeColorScaleFuncFromTrace}});var lc=Ae((lor,Toe)=>{"use strict";var woe=ei(),hst=mp().isTypedArraySpec;Toe.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var t=e.marker;return woe.isPlainObject(t)&&(woe.isArrayOrTypedArray(t.size)||hst(t.size))}}});var k3=Ae((uor,Aoe)=>{"use strict";var dst=ku();Aoe.exports=function(t,r){r||(r=2);var n=t.marker,i=n.sizeref||1,a=n.sizemin||0,o=n.sizemode==="area"?function(s){return Math.sqrt(s/i)}:function(s){return s/i};return function(s){var u=o(s/r);return dst(u)&&u>0?Math.max(u,a):0}}});var iv=Ae(_p=>{"use strict";var aP=ei();_p.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};_p.isTraceInSubplots=function(e,t){if(e.type==="splom"){for(var r=e.xaxes||[],n=e.yaxes||[],i=0;i=0&&r.index{Eoe.exports=gst;var Wq={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},yst=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function gst(e){var t=[];return e.replace(yst,function(r,n,i){var a=n.toLowerCase();for(i=xst(i),a=="m"&&i.length>2&&(t.push([n].concat(i.splice(0,2))),a="l",n=n=="m"?"l":"L");;){if(i.length==Wq[a])return i.unshift(n),t.push(i);if(i.length{"use strict";var bst=e5(),wl=function(e,t){return t?Math.round(e*(t=Math.pow(10,t)))/t:Math.round(e)},nf="M0,0Z",koe=Math.sqrt(2),i_=Math.sqrt(3),jq=Math.PI,Xq=Math.cos,Zq=Math.sin;Ioe.exports={circle:{n:0,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i="M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z";return r?of(t,r,i):i}},square:{n:1,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")}},diamond:{n:2,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.3,2);return of(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"Z")}},cross:{n:3,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.4,2),i=wl(e*1.2,2);return of(t,r,"M"+i+","+n+"H"+n+"V"+i+"H-"+n+"V"+n+"H-"+i+"V-"+n+"H-"+n+"V-"+i+"H"+n+"V-"+n+"H"+i+"Z")}},x:{n:4,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.8/koe,2),i="l"+n+","+n,a="l"+n+",-"+n,o="l-"+n+",-"+n,s="l-"+n+","+n;return of(t,r,"M0,"+n+i+a+o+a+o+s+o+s+i+s+i+"Z")}},"triangle-up":{n:5,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2/i_,2),i=wl(e/2,2),a=wl(e,2);return of(t,r,"M-"+n+","+i+"H"+n+"L0,-"+a+"Z")}},"triangle-down":{n:6,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2/i_,2),i=wl(e/2,2),a=wl(e,2);return of(t,r,"M-"+n+",-"+i+"H"+n+"L0,"+a+"Z")}},"triangle-left":{n:7,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2/i_,2),i=wl(e/2,2),a=wl(e,2);return of(t,r,"M"+i+",-"+n+"V"+n+"L-"+a+",0Z")}},"triangle-right":{n:8,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2/i_,2),i=wl(e/2,2),a=wl(e,2);return of(t,r,"M-"+i+",-"+n+"V"+n+"L"+a+",0Z")}},"triangle-ne":{n:9,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.6,2),i=wl(e*1.2,2);return of(t,r,"M-"+i+",-"+n+"H"+n+"V"+i+"Z")}},"triangle-se":{n:10,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.6,2),i=wl(e*1.2,2);return of(t,r,"M"+n+",-"+i+"V"+n+"H-"+i+"Z")}},"triangle-sw":{n:11,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.6,2),i=wl(e*1.2,2);return of(t,r,"M"+i+","+n+"H-"+n+"V-"+i+"Z")}},"triangle-nw":{n:12,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.6,2),i=wl(e*1.2,2);return of(t,r,"M-"+n+","+i+"V-"+n+"H"+i+"Z")}},pentagon:{n:13,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.951,2),i=wl(e*.588,2),a=wl(-e,2),o=wl(e*-.309,2),s=wl(e*.809,2);return of(t,r,"M"+n+","+o+"L"+i+","+s+"H-"+i+"L-"+n+","+o+"L0,"+a+"Z")}},hexagon:{n:14,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i=wl(e/2,2),a=wl(e*i_/2,2);return of(t,r,"M"+a+",-"+i+"V"+i+"L0,"+n+"L-"+a+","+i+"V-"+i+"L0,-"+n+"Z")}},hexagon2:{n:15,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i=wl(e/2,2),a=wl(e*i_/2,2);return of(t,r,"M-"+i+","+a+"H"+i+"L"+n+",0L"+i+",-"+a+"H-"+i+"L-"+n+",0Z")}},octagon:{n:16,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.924,2),i=wl(e*.383,2);return of(t,r,"M-"+i+",-"+n+"H"+i+"L"+n+",-"+i+"V"+i+"L"+i+","+n+"H-"+i+"L-"+n+","+i+"V-"+i+"Z")}},star:{n:17,f:function(e,t,r){if(af(t))return nf;var n=e*1.4,i=wl(n*.225,2),a=wl(n*.951,2),o=wl(n*.363,2),s=wl(n*.588,2),u=wl(-n,2),l=wl(n*-.309,2),f=wl(n*.118,2),c=wl(n*.809,2),h=wl(n*.382,2);return of(t,r,"M"+i+","+l+"H"+a+"L"+o+","+f+"L"+s+","+c+"L0,"+h+"L-"+s+","+c+"L-"+o+","+f+"L-"+a+","+l+"H-"+i+"L0,"+u+"Z")}},hexagram:{n:18,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.66,2),i=wl(e*.38,2),a=wl(e*.76,2);return of(t,r,"M-"+a+",0l-"+i+",-"+n+"h"+a+"l"+i+",-"+n+"l"+i+","+n+"h"+a+"l-"+i+","+n+"l"+i+","+n+"h-"+a+"l-"+i+","+n+"l-"+i+",-"+n+"h-"+a+"Z")}},"star-triangle-up":{n:19,f:function(e,t,r){if(af(t))return nf;var n=wl(e*i_*.8,2),i=wl(e*.8,2),a=wl(e*1.6,2),o=wl(e*4,2),s="A "+o+","+o+" 0 0 1 ";return of(t,r,"M-"+n+","+i+s+n+","+i+s+"0,-"+a+s+"-"+n+","+i+"Z")}},"star-triangle-down":{n:20,f:function(e,t,r){if(af(t))return nf;var n=wl(e*i_*.8,2),i=wl(e*.8,2),a=wl(e*1.6,2),o=wl(e*4,2),s="A "+o+","+o+" 0 0 1 ";return of(t,r,"M"+n+",-"+i+s+"-"+n+",-"+i+s+"0,"+a+s+n+",-"+i+"Z")}},"star-square":{n:21,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.1,2),i=wl(e*2,2),a="A "+i+","+i+" 0 0 1 ";return of(t,r,"M-"+n+",-"+n+a+"-"+n+","+n+a+n+","+n+a+n+",-"+n+a+"-"+n+",-"+n+"Z")}},"star-diamond":{n:22,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.4,2),i=wl(e*1.9,2),a="A "+i+","+i+" 0 0 1 ";return of(t,r,"M-"+n+",0"+a+"0,"+n+a+n+",0"+a+"0,-"+n+a+"-"+n+",0Z")}},"diamond-tall":{n:23,f:function(e,t,r){if(af(t))return nf;var n=wl(e*.7,2),i=wl(e*1.4,2);return of(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},"diamond-wide":{n:24,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.4,2),i=wl(e*.7,2);return of(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},hourglass:{n:25,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M"+n+","+n+"H-"+n+"L"+n+",-"+n+"H-"+n+"Z")},noDot:!0},bowtie:{n:26,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M"+n+","+n+"V-"+n+"L-"+n+","+n+"V-"+n+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i=wl(e/koe,2);return of(t,r,"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.3,2);return of(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM0,-"+n+"V"+n+"M-"+n+",0H"+n)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.3,2),i=wl(e*.65,2);return of(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM-"+i+",-"+i+"L"+i+","+i+"M-"+i+","+i+"L"+i+",-"+i)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.4,2);return of(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.2,2),i=wl(e*.85,2);return of(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,t,r){if(af(t))return nf;var n=wl(e/2,2),i=wl(e,2);return of(t,r,"M"+n+","+i+"V-"+i+"M"+(n-i)+",-"+i+"V"+i+"M"+i+","+n+"H-"+i+"M-"+i+","+(n-i)+"H"+i)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.2,2),i=wl(e*1.6,2),a=wl(e*.8,2);return of(t,r,"M-"+n+","+a+"L0,0M"+n+","+a+"L0,0M0,-"+i+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.2,2),i=wl(e*1.6,2),a=wl(e*.8,2);return of(t,r,"M-"+n+",-"+a+"L0,0M"+n+",-"+a+"L0,0M0,"+i+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.2,2),i=wl(e*1.6,2),a=wl(e*.8,2);return of(t,r,"M"+a+","+n+"L0,0M"+a+",-"+n+"L0,0M-"+i+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.2,2),i=wl(e*1.6,2),a=wl(e*.8,2);return of(t,r,"M-"+a+","+n+"L0,0M-"+a+",-"+n+"L0,0M"+i+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.4,2);return of(t,r,"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,t,r){if(af(t))return nf;var n=wl(e*1.4,2);return of(t,r,"M0,"+n+"V-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2);return of(t,r,"M"+n+","+n+"L-"+n+",-"+n)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i=wl(e*2,2);return of(t,r,"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i=wl(e*2,2);return of(t,r,"M0,0L-"+n+",-"+i+"H"+n+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2,2),i=wl(e,2);return of(t,r,"M0,0L"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2,2),i=wl(e,2);return of(t,r,"M0,0L-"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i=wl(e*2,2);return of(t,r,"M-"+n+",0H"+n+"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,t,r){if(af(t))return nf;var n=wl(e,2),i=wl(e*2,2);return of(t,r,"M-"+n+",0H"+n+"M0,0L-"+n+",-"+i+"H"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2,2),i=wl(e,2);return of(t,r,"M0,-"+i+"V"+i+"M0,0L"+n+",-"+i+"V"+i+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,t,r){if(af(t))return nf;var n=wl(e*2,2),i=wl(e,2);return of(t,r,"M0,-"+i+"V"+i+"M0,0L-"+n+",-"+i+"V"+i+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,t,r){if(af(t))return nf;var n=jq/2.5,i=2*e*Xq(n),a=2*e*Zq(n);return of(t,r,"M0,0L"+-i+","+a+"L"+i+","+a+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,t,r){if(af(t))return nf;var n=jq/4,i=2*e*Xq(n),a=2*e*Zq(n);return of(t,r,"M0,0L"+-i+","+a+"A "+2*e+","+2*e+" 0 0 1 "+i+","+a+"Z")},backoff:.4,noDot:!0}};function af(e){return e===null}var Coe,Loe,Poe,zoe;function of(e,t,r){if((!e||e%360===0)&&!t)return r;if(Poe===e&&zoe===t&&Coe===r)return Loe;Poe=e,zoe=t,Coe=r;function n(b,v){var k=Xq(b),E=Zq(b),A=v[0],L=v[1]+(t||0);return[A*k-L*E,A*E+L*k]}for(var i=e/180*jq,a=0,o=0,s=bst(r),u="",l=0;l{"use strict";var pd=Jl(),uc=ei(),wst=uc.numberFormat,Sb=ku(),eN=cd(),sP=$l(),$d=jl(),Tst=_c(),r5=uc.strTranslate,lP=Xf(),Ast=jv(),Sst=td(),Mst=Sst.LINE_SPACING,Hoe=N1().DESELECTDIM,Est=lc(),kst=k3(),Cst=iv().appendArrayPointValue,Gl=ese.exports={};Gl.font=function(e,t){var r=t.variant,n=t.style,i=t.weight,a=t.color,o=t.size,s=t.family,u=t.shadow,l=t.lineposition,f=t.textcase;s&&e.style("font-family",s),o+1&&e.style("font-size",o+"px"),a&&e.call($d.fill,a),i&&e.style("font-weight",i),n&&e.style("font-style",n),r&&e.style("font-variant",r),f&&e.style("text-transform",Yq(Pst(f))),u&&e.style("text-shadow",u==="auto"?lP.makeTextShadow($d.contrast(a)):Yq(u)),l&&e.style("text-decoration-line",Yq(zst(l)))};function Yq(e){return e==="none"?void 0:e}var Lst={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function Pst(e){return Lst[e]}function zst(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}Gl.setPosition=function(e,t,r){e.attr("x",t).attr("y",r)};Gl.setSize=function(e,t,r){e.attr("width",t).attr("height",r)};Gl.setRect=function(e,t,r,n,i){e.call(Gl.setPosition,t,r).call(Gl.setSize,n,i)};Gl.translatePoint=function(e,t,r,n){var i=r.c2p(e.x),a=n.c2p(e.y);if(Sb(i)&&Sb(a)&&t.node())t.node().nodeName==="text"?t.attr("x",i).attr("y",a):t.attr("transform",r5(i,a));else return!1;return!0};Gl.translatePoints=function(e,t,r){e.each(function(n){var i=pd.select(this);Gl.translatePoint(n,i,t,r)})};Gl.hideOutsideRangePoint=function(e,t,r,n,i,a){t.attr("display",r.isPtWithinRange(e,i)&&n.isPtWithinRange(e,a)?null:"none")};Gl.hideOutsideRangePoints=function(e,t){if(t._hasClipOnAxisFalse){var r=t.xaxis,n=t.yaxis;e.each(function(i){var a=i[0].trace,o=a.xcalendar,s=a.ycalendar,u=sP.traceIs(a,"bar-like")?".bartext":".point,.textpoint";e.selectAll(u).each(function(l){Gl.hideOutsideRangePoint(l,pd.select(this),r,n,o,s)})})}};Gl.crispRound=function(e,t,r){return!t||!Sb(t)?r||0:e._context.staticPlot?t:t<1?1:Math.round(t)};Gl.singleLineStyle=function(e,t,r,n,i){t.style("fill","none");var a=(((e||[])[0]||{}).trace||{}).line||{},o=r||a.width||0,s=i||a.dash||"";$d.stroke(t,n||a.color),Gl.dashLine(t,s,o)};Gl.lineGroupStyle=function(e,t,r,n){e.style("fill","none").each(function(i){var a=(((i||[])[0]||{}).trace||{}).line||{},o=t||a.width||0,s=n||a.dash||"";pd.select(this).call($d.stroke,r||a.color).call(Gl.dashLine,s,o)})};Gl.dashLine=function(e,t,r){r=+r||0,t=Gl.dashStyle(t,r),e.style({"stroke-dasharray":t,"stroke-width":r+"px"})};Gl.dashStyle=function(e,t){t=+t||1;var r=Math.max(t,3);return e==="solid"?e="":e==="dot"?e=r+"px,"+r+"px":e==="dash"?e=3*r+"px,"+3*r+"px":e==="longdash"?e=5*r+"px,"+5*r+"px":e==="dashdot"?e=3*r+"px,"+r+"px,"+r+"px,"+r+"px":e==="longdashdot"&&(e=5*r+"px,"+2*r+"px,"+r+"px,"+2*r+"px"),e};function Woe(e,t,r,n){var i=t.fillpattern,a=t.fillgradient,o=Gl.getPatternAttr,s=i&&(o(i.shape,0,"")||o(i.path,0,""));if(s){var u=o(i.bgcolor,0,null),l=o(i.fgcolor,0,null),f=i.fgopacity,c=o(i.size,0,8),h=o(i.solidity,0,.3),d=t.uid;Gl.pattern(e,"point",r,d,s,c,h,void 0,i.fillmode,u,l,f)}else if(a&&a.type!=="none"){var p=a.type,_="scatterfill-"+t.uid;if(n&&(_="legendfill-"+t.uid),!n&&(a.start!==void 0||a.stop!==void 0)){var b,v;p==="horizontal"?(b={x:a.start,y:0},v={x:a.stop,y:0}):p==="vertical"&&(b={x:0,y:a.start},v={x:0,y:a.stop}),b.x=t._xA.c2p(b.x===void 0?t._extremes.x.min[0].val:b.x,!0),b.y=t._yA.c2p(b.y===void 0?t._extremes.y.min[0].val:b.y,!0),v.x=t._xA.c2p(v.x===void 0?t._extremes.x.max[0].val:v.x,!0),v.y=t._yA.c2p(v.y===void 0?t._extremes.y.max[0].val:v.y,!0),e.call(Zoe,r,_,"linear",a.colorscale,"fill",b,v,!0,!1)}else p==="horizontal"&&(p=p+"reversed"),e.call(Gl.gradient,r,_,p,a.colorscale,"fill")}else t.fillcolor&&e.call($d.fill,t.fillcolor)}Gl.singleFillStyle=function(e,t){var r=pd.select(e.node()),n=r.data(),i=((n[0]||[])[0]||{}).trace||{};Woe(e,i,t,!1)};Gl.fillGroupStyle=function(e,t,r){e.style("stroke-width",0).each(function(n){var i=pd.select(this);n[0].trace&&Woe(i,n[0].trace,t,r)})};var Doe=Roe();Gl.symbolNames=[];Gl.symbolFuncs=[];Gl.symbolBackOffs=[];Gl.symbolNeedLines={};Gl.symbolNoDot={};Gl.symbolNoFill={};Gl.symbolList=[];Object.keys(Doe).forEach(function(e){var t=Doe[e],r=t.n;Gl.symbolList.push(r,String(r),e,r+100,String(r+100),e+"-open"),Gl.symbolNames[r]=e,Gl.symbolFuncs[r]=t.f,Gl.symbolBackOffs[r]=t.backoff||0,t.needLine&&(Gl.symbolNeedLines[r]=!0),t.noDot?Gl.symbolNoDot[r]=!0:Gl.symbolList.push(r+200,String(r+200),e+"-dot",r+300,String(r+300),e+"-open-dot"),t.noFill&&(Gl.symbolNoFill[r]=!0)});var Ist=Gl.symbolNames.length,Rst="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";Gl.symbolNumber=function(e){if(Sb(e))e=+e;else if(typeof e=="string"){var t=0;e.indexOf("-open")>0&&(t=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(t+=200,e=e.replace("-dot","")),e=Gl.symbolNames.indexOf(e),e>=0&&(e+=t)}return e%100>=Ist||e>=400?0:Math.floor(Math.max(e,0))};function joe(e,t,r,n){var i=e%100;return Gl.symbolFuncs[i](t,r,n)+(e>=200?Rst:"")}var Foe=wst("~f"),Xoe={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};Gl.gradient=function(e,t,r,n,i,a){var o=Xoe[n];return Zoe(e,t,r,o.type,i,a,o.start,o.stop,!1,o.reversed)};function Zoe(e,t,r,n,i,a,o,s,u,l){var f=i.length,c;n==="linear"?c={node:"linearGradient",attrs:{x1:o.x,y1:o.y,x2:s.x,y2:s.y,gradientUnits:u?"userSpaceOnUse":"objectBoundingBox"},reversed:l}:n==="radial"&&(c={node:"radialGradient",reversed:l});for(var h=new Array(f),d=0;d=0&&e.i===void 0&&(e.i=a.i),t.style("opacity",n.selectedOpacityFn?n.selectedOpacityFn(e):e.mo===void 0?o.opacity:e.mo),n.ms2mrc){var u;e.ms==="various"||o.size==="various"?u=3:u=n.ms2mrc(e.ms),e.mrc=u,n.selectedSizeFn&&(u=e.mrc=n.selectedSizeFn(e));var l=Gl.symbolNumber(e.mx||o.symbol)||0;e.om=l%200>=100;var f=iN(e,r),c=rN(e,r);t.attr("d",joe(l,u,f,c))}var h=!1,d,p,_;if(e.so)_=s.outlierwidth,p=s.outliercolor,d=o.outliercolor;else{var b=(s||{}).width;_=(e.mlw+1||b+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?p=e.mlcc=n.lineScale(e.mlc):uc.isArrayOrTypedArray(s.color)?p=$d.defaultLine:p=s.color,uc.isArrayOrTypedArray(o.color)&&(d=$d.defaultLine,h=!0),"mc"in e?d=e.mcc=n.markerScale(e.mc):d=o.color||o.colors||"rgba(0,0,0,0)",n.selectedColorFn&&(d=n.selectedColorFn(e))}if(e.om)t.call($d.stroke,d).style({"stroke-width":(_||1)+"px",fill:"none"});else{t.style("stroke-width",(e.isBlank?0:_)+"px");var v=o.gradient,k=e.mgt;k?h=!0:k=v&&v.type,uc.isArrayOrTypedArray(k)&&(k=k[0],Xoe[k]||(k=0));var E=o.pattern,A=Gl.getPatternAttr,L=E&&(A(E.shape,e.i,"")||A(E.path,e.i,""));if(k&&k!=="none"){var x=e.mgc;x?h=!0:x=v.color;var C=r.uid;h&&(C+="-"+e.i),Gl.gradient(t,i,C,k,[[0,x],[1,d]],"fill")}else if(L){var M=!1,m=E.fgcolor;!m&&a&&a.color&&(m=a.color,M=!0);var P=A(m,e.i,a&&a.color||null),T=A(E.bgcolor,e.i,null),B=E.fgopacity,F=A(E.size,e.i,8),U=A(E.solidity,e.i,.3);M=M||e.mcc||uc.isArrayOrTypedArray(E.shape)||uc.isArrayOrTypedArray(E.path)||uc.isArrayOrTypedArray(E.bgcolor)||uc.isArrayOrTypedArray(E.fgcolor)||uc.isArrayOrTypedArray(E.size)||uc.isArrayOrTypedArray(E.solidity);var G=r.uid;M&&(G+="-"+e.i),Gl.pattern(t,"point",i,G,L,F,U,e.mcc,E.fillmode,T,P,B)}else uc.isArrayOrTypedArray(d)?$d.fill(t,d[e.i]):$d.fill(t,d);_&&$d.stroke(t,p)}};Gl.makePointStyleFns=function(e){var t={},r=e.marker;return t.markerScale=Gl.tryColorscale(r,""),t.lineScale=Gl.tryColorscale(r,"line"),sP.traceIs(e,"symbols")&&(t.ms2mrc=Est.isBubble(e)?kst(e):function(){return(r.size||6)/2}),e.selectedpoints&&uc.extendFlat(t,Gl.makeSelectedPointStyleFns(e)),t};Gl.makeSelectedPointStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.marker||{},a=r.marker||{},o=n.marker||{},s=i.opacity,u=a.opacity,l=o.opacity,f=u!==void 0,c=l!==void 0;(uc.isArrayOrTypedArray(s)||f||c)&&(t.selectedOpacityFn=function(A){var L=A.mo===void 0?i.opacity:A.mo;return A.selected?f?u:L:c?l:Hoe*L});var h=i.color,d=a.color,p=o.color;(d||p)&&(t.selectedColorFn=function(A){var L=A.mcc||h;return A.selected?d||L:p||L});var _=i.size,b=a.size,v=o.size,k=b!==void 0,E=v!==void 0;return sP.traceIs(e,"symbols")&&(k||E)&&(t.selectedSizeFn=function(A){var L=A.mrc||_/2;return A.selected?k?b/2:L:E?v/2:L}),t};Gl.makeSelectedTextStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.textfont||{},a=r.textfont||{},o=n.textfont||{},s=i.color,u=a.color,l=o.color;return t.selectedTextColorFn=function(f){var c=f.tc||s;return f.selected?u||c:l||(u?c:$d.addOpacity(c,Hoe))},t};Gl.selectedPointStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=Gl.makeSelectedPointStyleFns(t),n=t.marker||{},i=[];r.selectedOpacityFn&&i.push(function(a,o){a.style("opacity",r.selectedOpacityFn(o))}),r.selectedColorFn&&i.push(function(a,o){$d.fill(a,r.selectedColorFn(o))}),r.selectedSizeFn&&i.push(function(a,o){var s=o.mx||n.symbol||0,u=r.selectedSizeFn(o);a.attr("d",joe(Gl.symbolNumber(s),u,iN(o,t),rN(o,t))),o.mrc2=u}),i.length&&e.each(function(a){for(var o=pd.select(this),s=0;s0?r:0}Gl.textPointStyle=function(e,t,r){if(e.size()){var n;if(t.selectedpoints){var i=Gl.makeSelectedTextStyleFns(t);n=i.selectedTextColorFn}var a=t.texttemplate,o=r._fullLayout;e.each(function(s){var u=pd.select(this),l=a?uc.extractOption(s,t,"txt","texttemplate"):uc.extractOption(s,t,"tx","text");if(!l&&l!==0){u.remove();return}if(a){var f=t._module.formatLabels,c=f?f(s,t,o):{},h={};Cst(h,t,s.i),l=uc.texttemplateString({data:[h,s,t._meta],fallback:t.texttemplatefallback,labels:c,locale:o._d3locale,template:l})}var d=s.tp||t.textposition,p=Koe(s,t),_=n?n(s):s.tc||t.textfont.color;u.call(Gl.font,{family:s.tf||t.textfont.family,weight:s.tw||t.textfont.weight,style:s.ty||t.textfont.style,variant:s.tv||t.textfont.variant,textcase:s.tC||t.textfont.textcase,lineposition:s.tE||t.textfont.lineposition,shadow:s.tS||t.textfont.shadow,size:p,color:_}).text(l).call(lP.convertToTspans,r).call(Yoe,d,p,s.mrc)})}};Gl.selectedTextStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=Gl.makeSelectedTextStyleFns(t);e.each(function(n){var i=pd.select(this),a=r.selectedTextColorFn(n),o=n.tp||t.textposition,s=Koe(n,t);$d.fill(i,a);var u=sP.traceIs(t,"bar-like");Yoe(i,o,s,n.mrc2||n.mrc,u)})}};var Boe=.5;Gl.smoothopen=function(e,t){if(e.length<3)return"M"+e.join("L");var r="M"+e[0],n=[],i;for(i=1;i=u||A>=f&&A<=u)&&(L<=c&&L>=l||L>=c&&L<=l)&&(e=[A,L])}return e}Gl.applyBackoff=Qoe;Gl.makeTester=function(){var e=uc.ensureSingleById(pd.select("body"),"svg","js-plotly-tester",function(r){r.attr(Ast.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),t=uc.ensureSingle(e,"path","js-reference-point",function(r){r.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});Gl.tester=e,Gl.testref=t};Gl.savedBBoxes={};var Jq=0,Bst=1e4;Gl.bBox=function(e,t,r){r||(r=Ooe(e));var n;if(r){if(n=Gl.savedBBoxes[r],n)return uc.extendFlat({},n)}else if(e.childNodes.length===1){var i=e.childNodes[0];if(r=Ooe(i),r){var a=+i.getAttribute("x")||0,o=+i.getAttribute("y")||0,s=i.getAttribute("transform");if(!s){var u=Gl.bBox(i,!1,r);return a&&(u.left+=a,u.right+=a),o&&(u.top+=o,u.bottom+=o),u}if(r+="~"+a+"~"+o+"~"+s,n=Gl.savedBBoxes[r],n)return uc.extendFlat({},n)}}var l,f;t?l=e:(f=Gl.tester.node(),l=e.cloneNode(!0),f.appendChild(l)),pd.select(l).attr("transform",null).call(lP.positionText,0,0);var c=l.getBoundingClientRect(),h=Gl.testref.node().getBoundingClientRect();t||f.removeChild(l);var d={height:c.height,width:c.width,left:c.left-h.left,top:c.top-h.top,right:c.right-h.left,bottom:c.bottom-h.top};return Jq>=Bst&&(Gl.savedBBoxes={},Jq=0),r&&(Gl.savedBBoxes[r]=d),Jq++,uc.extendFlat({},d)};function Ooe(e){var t=e.getAttribute("data-unformatted");if(t!==null)return t+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}Gl.setClipUrl=function(e,t,r){e.attr("clip-path",tN(t,r))};function tN(e,t){if(!e)return null;var r=t._context,n=r._exportedPlot?"":r._baseUrl||"";return n?"url('"+n+"#"+e+"')":"url(#"+e+")"}Gl.getTranslate=function(e){var t=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",n=e[r]("transform")||"",i=n.replace(t,function(a,o,s){return[o,s].join(" ")}).split(" ");return{x:+i[0]||0,y:+i[1]||0}};Gl.setTranslate=function(e,t,r){var n=/(\btranslate\(.*?\);?)/,i=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",o=e[i]("transform")||"";return t=t||0,r=r||0,o=o.replace(n,"").trim(),o+=r5(t,r),o=o.trim(),e[a]("transform",o),o};Gl.getScale=function(e){var t=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",n=e[r]("transform")||"",i=n.replace(t,function(a,o,s){return[o,s].join(" ")}).split(" ");return{x:+i[0]||1,y:+i[1]||1}};Gl.setScale=function(e,t,r){var n=/(\bscale\(.*?\);?)/,i=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",o=e[i]("transform")||"";return t=t||1,r=r||1,o=o.replace(n,"").trim(),o+="scale("+t+","+r+")",o=o.trim(),e[a]("transform",o),o};var Ost=/\s*sc.*/;Gl.setPointGroupScale=function(e,t,r){if(t=t||1,r=r||1,!!e){var n=t===1&&r===1?"":"scale("+t+","+r+")";e.each(function(){var i=(this.getAttribute("transform")||"").replace(Ost,"");i+=n,i=i.trim(),this.setAttribute("transform",i)})}};var qst=/translate\([^)]*\)\s*$/;Gl.setTextPointsScale=function(e,t,r){e&&e.each(function(){var n,i=pd.select(this),a=i.select("text");if(a.node()){var o=parseFloat(a.attr("x")||0),s=parseFloat(a.attr("y")||0),u=(i.attr("transform")||"").match(qst);t===1&&r===1?n=[]:n=[r5(o,s),"scale("+t+","+r+")",r5(-o,-s)],u&&n.push(u),i.attr("transform",n.join(""))}})};function rN(e,t){var r;return e&&(r=e.mf),r===void 0&&(r=t.marker&&t.marker.standoff||0),!t._geo&&!t._xA?-r:r}Gl.getMarkerStandoff=rN;var t5=Math.atan2,wb=Math.cos,L3=Math.sin;function qoe(e,t){var r=t[0],n=t[1];return[r*wb(e)-n*L3(e),r*L3(e)+n*wb(e)]}var Noe,Uoe,Voe,Goe,$q,Qq;function iN(e,t){var r=e.ma;r===void 0&&(r=t.marker.angle,(!r||uc.isArrayOrTypedArray(r))&&(r=0));var n,i,a=t.marker.angleref;if(a==="previous"||a==="north"){if(t._geo){var o=t._geo.project(e.lonlat);n=o[0],i=o[1]}else{var s=t._xA,u=t._yA;if(s&&u)n=s.c2p(e.x),i=u.c2p(e.y);else return 90}if(t._geo){var l=e.lonlat[0],f=e.lonlat[1],c=t._geo.project([l,f+1e-5]),h=t._geo.project([l+1e-5,f]),d=t5(h[1]-i,h[0]-n),p=t5(c[1]-i,c[0]-n),_;if(a==="north")_=r/180*Math.PI;else if(a==="previous"){var b=l/180*Math.PI,v=f/180*Math.PI,k=Noe/180*Math.PI,E=Uoe/180*Math.PI,A=k-b,L=wb(E)*L3(A),x=L3(E)*wb(v)-wb(E)*L3(v)*wb(A);_=-t5(L,x)-Math.PI,Noe=l,Uoe=f}var C=qoe(d,[wb(_),0]),M=qoe(p,[L3(_),0]);r=t5(C[1]+M[1],C[0]+M[0])/Math.PI*180,a==="previous"&&!(Qq===t.uid&&e.i===$q+1)&&(r=null)}if(a==="previous"&&!t._geo)if(Qq===t.uid&&e.i===$q+1&&Sb(n)&&Sb(i)){var m=n-Voe,P=i-Goe,T=t.line&&t.line.shape||"",B=T.slice(T.length-1);B==="h"&&(P=0),B==="v"&&(m=0),r+=t5(P,m)/Math.PI*180+90}else r=null}return Voe=n,Goe=i,$q=e.i,Qq=t.uid,r}Gl.getMarkerAngle=iN});var Eb=Ae((vor,nse)=>{"use strict";var P3=Jl(),Nst=ku(),Ust=Cc(),nN=$l(),Mb=ei(),tse=Mb.strTranslate,uP=Mu(),fP=jl(),z3=Xf(),rse=N1(),Vst=td().OPPOSITE_SIDE,ise=/ [XY][0-9]* /,aN=1.6,oN=1.6;function Gst(e,t,r){var n=e._fullLayout,i=r.propContainer,a=r.propName,o=r.placeholder,s=r.traceIndex,u=r.avoid||{},l=r.attributes,f=r.transform,c=r.containerGroup,h=1,d=i.title,p=(d&&d.text?d.text:"").trim(),_=!1,b=d&&d.font?d.font:{},v=b.family,k=b.size,E=b.color,A=b.weight,L=b.style,x=b.variant,C=b.textcase,M=b.lineposition,m=b.shadow,P=r.subtitlePropName,T=!!P,B=r.subtitlePlaceholder,F=(i.title||{}).subtitle||{text:"",font:{}},U=(F.text||"").trim(),G=!1,j=1,W=F.font,N=W.family,H=W.size,re=W.color,ae=W.weight,be=W.style,ze=W.variant,Ce=W.textcase,de=W.lineposition,te=W.shadow,ke;a==="title.text"?ke="titleText":a.indexOf("axis")!==-1?ke="axisTitleText":a.indexOf("colorbar")!==-1&&(ke="colorbarTitleText");var Ee=e._context.edits[ke];function Me(wt,St){return wt===void 0||St===void 0?!1:wt.replace(ise," % ")===St.replace(ise," % ")}p===""?h=0:Me(p,o)&&(Ee||(p=""),h=.2,_=!0),T&&(U===""?j=0:Me(U,B)&&(Ee||(U=""),j=.2,G=!0)),r._meta?p=Mb.templateString(p,r._meta):n._meta&&(p=Mb.templateString(p,n._meta));var Ue=p||U||Ee,De;c||(c=Mb.ensureSingle(n._infolayer,"g","g-"+t),De=n._hColorbarMoveTitle);var ye=c.selectAll("text."+t).data(Ue?[0]:[]);ye.enter().append("text"),ye.text(p).attr("class",t),ye.exit().remove();var qe=null,ce=t+"-subtitle",Je=U||Ee;if(T&&(qe=c.selectAll("text."+ce).data(Je?[0]:[]),qe.enter().append("text"),qe.text(U).attr("class",ce),qe.exit().remove()),!Ue)return c;function nt(wt,St){Mb.syncOrAsync([gt,Nt],{title:wt,subtitle:St})}function gt(wt){var St=wt.title,Dt=wt.subtitle,Zt;!f&&De&&(f={}),f?(Zt="",f.rotate&&(Zt+="rotate("+[f.rotate,l.x,l.y]+")"),(f.offset||De)&&(Zt+=tse(0,(f.offset||0)-(De||0)))):Zt=null,St.attr("transform",Zt);function Et(He){if(He){var it=P3.select(He.node().parentNode).select("."+ce);if(!it.empty()){var et=He.node().getBBox();if(et.height){var It=et.y+et.height+aN*H;it.attr("y",It)}}}}if(St.style("opacity",h*fP.opacity(E)).call(uP.font,{color:fP.rgb(E),size:P3.round(k,2),family:v,weight:A,style:L,variant:x,textcase:C,shadow:m,lineposition:M}).attr(l).call(z3.convertToTspans,e,Et),Dt&&!Dt.empty()){var Te=c.select("."+t+"-math-group"),ot=St.node().getBBox(),Tt=Te.node()?Te.node().getBBox():void 0,vt=Tt?Tt.y+Tt.height+aN*H:ot.y+ot.height+oN*H,Ye=Mb.extendFlat({},l,{y:vt});Dt.attr("transform",Zt),Dt.style("opacity",j*fP.opacity(re)).call(uP.font,{color:fP.rgb(re),size:P3.round(H,2),family:N,weight:ae,style:be,variant:ze,textcase:Ce,shadow:te,lineposition:de}).attr(Ye).call(z3.convertToTspans,e)}return Ust.previousPromises(e)}function Nt(wt){var St=wt.title,Dt=P3.select(St.node().parentNode);if(u&&u.selection&&u.side&&p){Dt.attr("transform",null);var Zt=Vst[u.side],Et=u.side==="left"||u.side==="top"?-1:1,Te=Nst(u.pad)?u.pad:2,ot=uP.bBox(Dt.node()),Tt={t:0,b:0,l:0,r:0},vt=e._fullLayout._reservedMargin;for(var Ye in vt)for(var He in vt[Ye]){var it=vt[Ye][He];Tt[He]=Math.max(Tt[He],it)}var et={left:Tt.l,top:Tt.t,right:n.width-Tt.r,bottom:n.height-Tt.b},It=u.maxShift||Et*(et[u.side]-ot[u.side]),Yt=0;if(It<0)Yt=It;else{var cr=u.offsetLeft||0,_r=u.offsetTop||0;ot.left-=cr,ot.right-=cr,ot.top-=_r,ot.bottom-=_r,u.selection.each(function(){var Ut=uP.bBox(this);Mb.bBoxIntersect(ot,Ut,Te)&&(Yt=Math.max(Yt,Et*(Ut[u.side]-ot[Zt])+Te))}),Yt=Math.min(It,Yt),i._titleScoot=Math.abs(Yt)}if(Yt>0||It<0){var yr={left:[-Yt,0],right:[Yt,0],top:[0,-Yt],bottom:[0,Yt]}[u.side];Dt.attr("transform",tse(yr[0],yr[1]))}}}ye.call(nt,qe);function at(wt,St){wt.text(St).on("mouseover.opacity",function(){P3.select(this).transition().duration(rse.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){P3.select(this).transition().duration(rse.HIDE_PLACEHOLDER).style("opacity",0)})}if(Ee&&(p?ye.on(".opacity",null):(at(ye,o),_=!0),ye.call(z3.makeEditable,{gd:e}).on("edit",function(wt){s!==void 0?nN.call("_guiRestyle",e,a,wt,s):nN.call("_guiRelayout",e,a,wt)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(nt)}).on("input",function(wt){this.text(wt||" ").call(z3.positionText,l.x,l.y)}),T)){if(T&&!p){var Ke=ye.node().getBBox(),Ct=Ke.y+Ke.height+oN*H;qe.attr("y",Ct)}U?qe.on(".opacity",null):(at(qe,B),G=!0),qe.call(z3.makeEditable,{gd:e}).on("edit",function(wt){nN.call("_guiRelayout",e,"title.subtitle.text",wt)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(nt)}).on("input",function(wt){this.text(wt||" ").call(z3.positionText,qe.attr("x"),qe.attr("y"))})}return ye.classed("js-placeholder",_),qe&&!qe.empty()&&qe.classed("js-placeholder",G),c}nse.exports={draw:Gst,SUBTITLE_PADDING_EM:oN,SUBTITLE_PADDING_MATHJAX_EM:aN}});var gy=Ae((mor,use)=>{"use strict";var Hst=Jl(),Wst=r3().utcFormat,Mc=ei(),jst=Mc.numberFormat,my=ku(),n_=Mc.cleanNumber,Xst=Mc.ms2DateTime,ase=Mc.dateTime2ms,yy=Mc.ensureNumber,ose=Mc.isArrayOrTypedArray,a_=rf(),cP=a_.FP_SAFE,Tm=a_.BADNUM,Zst=a_.LOG_CLIP,Yst=a_.ONEWEEK,hP=a_.ONEDAY,dP=a_.ONEHOUR,sse=a_.ONEMIN,lse=a_.ONESEC,pP=Wc(),yP=dd(),vP=yP.HOUR_PATTERN,mP=yP.WEEKDAY_PATTERN;function i5(e){return Math.pow(10,e)}function sN(e){return e!=null}use.exports=function(t,r){r=r||{};var n=t._id||"x",i=n.charAt(0);function a(A,L){if(A>0)return Math.log(A)/Math.LN10;if(A<=0&&L&&t.range&&t.range.length===2){var x=t.range[0],C=t.range[1];return .5*(x+C-2*Zst*Math.abs(x-C))}else return Tm}function o(A,L,x,C){if((C||{}).msUTC&&my(A))return+A;var M=ase(A,x||t.calendar);if(M===Tm)if(my(A)){A=+A;var m=Math.floor(Mc.mod(A+.05,1)*10),P=Math.round(A-m/10);M=ase(new Date(P))+m/10}else return Tm;return M}function s(A,L,x){return Xst(A,L,x||t.calendar)}function u(A){return t._categories[Math.round(A)]}function l(A){if(sN(A)){if(t._categoriesMap===void 0&&(t._categoriesMap={}),t._categoriesMap[A]!==void 0)return t._categoriesMap[A];t._categories.push(typeof A=="number"?String(A):A);var L=t._categories.length-1;return t._categoriesMap[A]=L,L}return Tm}function f(A,L){for(var x=new Array(L),C=0;Ct.range[1]&&(x=!x);for(var C=x?-1:1,M=C*A,m=0,P=0;PB)m=P+1;else{m=M<(T+B)/2?P:P+1;break}}var F=t._B[m]||0;return isFinite(F)?p(A,t._m2,F):0},v=function(A){var L=t._rangebreaks.length;if(!L)return _(A,t._m,t._b);for(var x=0,C=0;Ct._rangebreaks[C].pmax&&(x=C+1);return _(A,t._m2,t._B[x])}}t.c2l=t.type==="log"?a:yy,t.l2c=t.type==="log"?i5:yy,t.l2p=b,t.p2l=v,t.c2p=t.type==="log"?function(A,L){return b(a(A,L))}:b,t.p2c=t.type==="log"?function(A){return i5(v(A))}:v,["linear","-"].indexOf(t.type)!==-1?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=n_,t.c2d=t.c2r=t.l2d=t.l2r=yy,t.d2p=t.r2p=function(A){return t.l2p(n_(A))},t.p2d=t.p2r=v,t.cleanPos=yy):t.type==="log"?(t.d2r=t.d2l=function(A,L){return a(n_(A),L)},t.r2d=t.r2c=function(A){return i5(n_(A))},t.d2c=t.r2l=n_,t.c2d=t.l2r=yy,t.c2r=a,t.l2d=i5,t.d2p=function(A,L){return t.l2p(t.d2r(A,L))},t.p2d=function(A){return i5(v(A))},t.r2p=function(A){return t.l2p(n_(A))},t.p2r=v,t.cleanPos=yy):t.type==="date"?(t.d2r=t.r2d=Mc.identity,t.d2c=t.r2c=t.d2l=t.r2l=o,t.c2d=t.c2r=t.l2d=t.l2r=s,t.d2p=t.r2p=function(A,L,x){return t.l2p(o(A,0,x))},t.p2d=t.p2r=function(A,L,x){return s(v(A),L,x)},t.cleanPos=function(A){return Mc.cleanDate(A,Tm,t.calendar)}):t.type==="category"?(t.d2c=t.d2l=l,t.r2d=t.c2d=t.l2d=u,t.d2r=t.d2l_noadd=h,t.r2c=function(A){var L=d(A);return L!==void 0?L:t.fraction2r(.5)},t.l2r=t.c2r=yy,t.r2l=d,t.d2p=function(A){return t.l2p(t.r2c(A))},t.p2d=function(A){return u(v(A))},t.r2p=t.d2p,t.p2r=v,t.cleanPos=function(A){return typeof A=="string"&&A!==""?A:yy(A)}):t.type==="multicategory"&&(t.r2d=t.c2d=t.l2d=u,t.d2r=t.d2l_noadd=h,t.r2c=function(A){var L=h(A);return L!==void 0?L:t.fraction2r(.5)},t.r2c_just_indices=c,t.l2r=t.c2r=yy,t.r2l=h,t.d2p=function(A){return t.l2p(t.r2c(A))},t.p2d=function(A){return u(v(A))},t.r2p=t.d2p,t.p2r=v,t.cleanPos=function(A){return Array.isArray(A)||typeof A=="string"&&A!==""?A:yy(A)},t.setupMultiCategory=function(A){var L=t._traceIndices,x,C,M=t._matchGroup;if(M&&t._categories.length===0){for(var m in M)if(m!==n){var P=r[pP.id2name(m)];L=L.concat(P._traceIndices)}}var T=[[0,{}],[0,{}]],B=[];for(x=0;xP[1]&&(C[m?0:1]=x),C[0]===C[1]){var T=t.l2r(L),B=t.l2r(x);if(L!==void 0){var F=T+1;x!==void 0&&(F=Math.min(F,B)),C[m?1:0]=F}if(x!==void 0){var U=B+1;L!==void 0&&(U=Math.max(U,T)),C[m?0:1]=U}}}},t.cleanRange=function(A,L){t._cleanRange(A,L),t.limitRange(A)},t._cleanRange=function(A,L){L||(L={}),A||(A="range");var x=Mc.nestedProperty(t,A).get(),C,M;if(t.type==="date"?M=Mc.dfltRange(t.calendar):i==="y"?M=yP.DFLTRANGEY:t._name==="realaxis"?M=[0,1]:M=L.dfltRange||yP.DFLTRANGEX,M=M.slice(),(t.rangemode==="tozero"||t.rangemode==="nonnegative")&&(M[0]=0),!x||x.length!==2){Mc.nestedProperty(t,A).set(M);return}var m=x[0]===null,P=x[1]===null;for(t.type==="date"&&!t.autorange&&(x[0]=Mc.cleanDate(x[0],Tm,t.calendar),x[1]=Mc.cleanDate(x[1],Tm,t.calendar)),C=0;C<2;C++)if(t.type==="date"){if(!Mc.isDateTime(x[C],t.calendar)){t[A]=M;break}if(t.r2l(x[0])===t.r2l(x[1])){var T=Mc.constrain(t.r2l(x[0]),Mc.MIN_MS+1e3,Mc.MAX_MS-1e3);x[0]=t.l2r(T-1e3),x[1]=t.l2r(T+1e3);break}}else{if(!my(x[C]))if(!(m||P)&&my(x[1-C]))x[C]=x[1-C]*(C?10:.1);else{t[A]=M;break}if(x[C]<-cP?x[C]=-cP:x[C]>cP&&(x[C]=cP),x[0]===x[1]){var B=Math.max(1,Math.abs(x[0]*1e-6));x[0]-=B,x[1]+=B}}},t.setScale=function(A){var L=r._size;if(t.overlaying){var x=pP.getFromId({_fullLayout:r},t.overlaying);t.domain=x.domain}var C=A&&t._r?"_r":"range",M=t.calendar;t.cleanRange(C);var m=t.r2l(t[C][0],M),P=t.r2l(t[C][1],M),T=i==="y";if(T?(t._offset=L.t+(1-t.domain[1])*L.h,t._length=L.h*(t.domain[1]-t.domain[0]),t._m=t._length/(m-P),t._b=-t._m*P):(t._offset=L.l+t.domain[0]*L.w,t._length=L.w*(t.domain[1]-t.domain[0]),t._m=t._length/(P-m),t._b=-t._m*m),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks){var B,F;if(t._rangebreaks=t.locateBreaks(Math.min(m,P),Math.max(m,P)),t._rangebreaks.length){for(B=0;BP&&(U=!U),U&&t._rangebreaks.reverse();var G=U?-1:1;for(t._m2=G*t._length/(Math.abs(P-m)-t._lBreaks),t._B.push(-t._m2*(T?P:m)),B=0;BM&&(M+=7,mM&&(M+=24,m=C&&m=C&&A=te.min&&(bete.max&&(te.max=ze),Ce=!1)}Ce&&P.push({min:be,max:ze})}};for(x=0;x{"use strict";var fse=ku(),lN=ei(),Kst=rf().BADNUM,gP=lN.isArrayOrTypedArray,Jst=lN.isDateTime,$st=lN.cleanNumber,cse=Math.round;dse.exports=function(t,r,n){var i=t,a=n.noMultiCategory;if(gP(i)&&!i.length)return"-";if(!a&&ilt(i))return"multicategory";if(a&&Array.isArray(i[0])){for(var o=[],s=0;sa*2}function hse(e){return Math.max(1,(e-1)/1e3)}function rlt(e,t){for(var r=e.length,n=hse(r),i=0,a=0,o={},s=0;si*2}function ilt(e){return gP(e[0])&&gP(e[1])}});var Am=Ae((gor,bse)=>{"use strict";var nlt=Jl(),yse=ku(),o_=ei(),_P=rf().FP_SAFE,alt=$l(),olt=Mu(),gse=Wc(),slt=gse.getFromId,llt=gse.isLinked;bse.exports={applyAutorangeOptions:xse,getAutoRange:uN,makePadFn:fN,doAutoRange:flt,findExtremes:clt,concatExtremes:dN};function uN(e,t){var r,n,i=[],a=e._fullLayout,o=fN(a,t,0),s=fN(a,t,1),u=dN(e,t),l=u.min,f=u.max;if(l.length===0||f.length===0)return o_.simpleMap(t.range,t.r2l);var c=l[0].val,h=f[0].val;for(r=1;r0&&(P=E-o(x)-s(C),P>A?T/P>L&&(M=x,m=C,L=T/P):T/E>L&&(M={val:x.val,nopad:1},m={val:C.val,nopad:1},L=T/E));function B(W,N){return Math.max(W,s(N))}if(c===h){var F=c-1,U=c+1;if(v)if(c===0)i=[0,1];else{var G=(c>0?f:l).reduce(B,0),j=c/(1-Math.min(.5,G/E));i=c>0?[0,j]:[j,0]}else k?i=[Math.max(0,F),Math.max(1,U)]:i=[F,U]}else v?(M.val>=0&&(M={val:0,nopad:1}),m.val<=0&&(m={val:0,nopad:1})):k&&(M.val-L*o(M)<0&&(M={val:0,nopad:1}),m.val<=0&&(m={val:1,nopad:1})),L=(m.val-M.val-pse(t,x.val,C.val))/(E-o(M)-s(m)),i=[M.val-L*o(M),m.val+L*s(m)];return i=xse(i,t),t.limitRange&&t.limitRange(),p&&i.reverse(),o_.simpleMap(i,t.l2r||Number)}function pse(e,t,r){var n=0;if(e.rangebreaks)for(var i=e.locateBreaks(t,r),a=0;a0?r.ppadplus:r.ppadminus)||r.ppad||0),x=A((e._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),C=A(r.vpadplus||r.vpad),M=A(r.vpadminus||r.vpad);if(!l){if(k=1/0,E=-1/0,u)for(c=0;c0&&(k=h),h>E&&h<_P&&(E=h);else for(c=0;c-_P&&(k=h),h>E&&h<_P&&(E=h);t=[k,E],a=2}var m={tozero:s,extrapad:o};function P(B){d=t[B],yse(d)&&(b=L(B),v=x(B),f?(p=e.c2l(d)-M(B),_=e.c2l(d)+C(B)):(k=d-M(B),E=d+C(B),u&&k=T;c--)P(c);return{min:n,max:i,opts:r}}function cN(e,t,r,n){_se(e,t,r,n,hlt)}function hN(e,t,r,n){_se(e,t,r,n,dlt)}function _se(e,t,r,n,i){for(var a=n.tozero,o=n.extrapad,s=!0,u=0;u=r&&(l.extrapad||!o)){s=!1;break}else i(t,l.val)&&l.pad<=r&&(o||!l.extrapad)&&(e.splice(u,1),u--)}if(s){var f=a&&t===0;e.push({val:t,pad:f?0:r,extrapad:f?!1:o})}}function mse(e){return yse(e)&&Math.abs(e)<_P}function hlt(e,t){return e<=t}function dlt(e,t){return e>=t}function plt(e,t){var r=t.autorangeoptions;return r&&r.minallowed!==void 0&&xP(t,r.minallowed,r.maxallowed)?r.minallowed:r&&r.clipmin!==void 0&&xP(t,r.clipmin,r.clipmax)?Math.max(e,t.d2l(r.clipmin)):e}function vlt(e,t){var r=t.autorangeoptions;return r&&r.maxallowed!==void 0&&xP(t,r.minallowed,r.maxallowed)?r.maxallowed:r&&r.clipmax!==void 0&&xP(t,r.clipmin,r.clipmax)?Math.min(e,t.d2l(r.clipmax)):e}function xP(e,t,r){return t!==void 0&&r!==void 0?(t=e.d2l(t),r=e.d2l(r),t=u&&(a=u,r=u),o<=u&&(o=u,n=u)}}return r=plt(r,t),n=vlt(n,t),[r,n]}});var wu=Ae((_or,Hse)=>{"use strict";var b0=Jl(),Oh=ku(),R3=Cc(),a5=$l(),Ou=ei(),D3=Ou.strTranslate,kb=Xf(),mlt=Eb(),o5=jl(),Xv=Mu(),ylt=Dd(),wse=Bq(),Qd=rf(),glt=Qd.ONEMAXYEAR,TP=Qd.ONEAVGYEAR,AP=Qd.ONEMINYEAR,_lt=Qd.ONEMAXQUARTER,yN=Qd.ONEAVGQUARTER,SP=Qd.ONEMINQUARTER,xlt=Qd.ONEMAXMONTH,F3=Qd.ONEAVGMONTH,MP=Qd.ONEMINMONTH,Zv=Qd.ONEWEEK,Bp=Qd.ONEDAY,s_=Bp/2,xy=Qd.ONEHOUR,s5=Qd.ONEMIN,EP=Qd.ONESEC,blt=Qd.ONEMILLI,wlt=Qd.ONEMICROSEC,Cb=Qd.MINUS_SIGN,CP=Qd.BADNUM,gN={K:"zeroline"},_N={K:"gridline",L:"path"},xN={K:"minor-gridline",L:"path"},Ise={K:"tick",L:"path"},Tse={K:"tick",L:"text"},Ase={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},LP=td(),n5=LP.MID_SHIFT,Lb=LP.CAP_SHIFT,l5=LP.LINE_SPACING,Tlt=LP.OPPOSITE_SIDE,kP=3,al=Hse.exports={};al.setConvert=gy();var Alt=I3(),Sg=Wc(),Slt=Sg.idSort,Mlt=Sg.isLinked;al.id2name=Sg.id2name;al.name2id=Sg.name2id;al.cleanId=Sg.cleanId;al.list=Sg.list;al.listIds=Sg.listIds;al.getFromId=Sg.getFromId;al.getFromTrace=Sg.getFromTrace;var Rse=Am();al.getAutoRange=Rse.getAutoRange;al.findExtremes=Rse.findExtremes;var Elt=1e-4;function AN(e){var t=(e[1]-e[0])*Elt;return[e[0]-t,e[1]+t]}al.coerceRef=function(e,t,r,n,i,a){var o=n.charAt(n.length-1),s=r._fullLayout._subplots[o+"axis"],u=n+"ref",l={};return i||(i=s[0]||(typeof a=="string"?a:a[0])),a||(a=i),s=s.concat(s.map(function(f){return f+" domain"})),l[u]={valType:"enumerated",values:s.concat(a?typeof a=="string"?[a]:a:[]),dflt:i},Ou.coerce(e,t,l,u)};al.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};al.coercePosition=function(e,t,r,n,i,a){var o,s,u=al.getRefType(n);if(u!=="range")o=Ou.ensureNumber,s=r(i,a);else{var l=al.getFromId(t,n);a=l.fraction2r(a),s=r(i,a),o=l.cleanPos}e[i]=o(s)};al.cleanPosition=function(e,t,r){var n=r==="paper"||r==="pixel"?Ou.ensureNumber:al.getFromId(t,r).cleanPos;return n(e)};al.redrawComponents=function(e,t){t=t||al.listIds(e);var r=e._fullLayout;function n(i,a,o,s){for(var u=a5.getComponentMethod(i,a),l={},f=0;f2e-6||((r-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};al.saveRangeInitial=function(e,t){for(var r=al.list(e,"",!0),n=!1,i=0;ic*.3||l(n)||l(i))){var h=r.dtick/2;e+=e+ho){var s=Number(r.slice(1));a.exactYears>o&&s%12===0?e=al.tickIncrement(e,"M6","reverse")+Bp*1.5:a.exactMonths>o?e=al.tickIncrement(e,"M1","reverse")+Bp*15.5:e-=s_;var u=al.tickIncrement(e,r);if(u<=n)return u}return e}al.prepMinorTicks=function(e,t,r){if(!t.minor.dtick){delete e.dtick;var n=t.dtick&&Oh(t._tmin),i;if(n){var a=al.tickIncrement(t._tmin,t.dtick,!0);i=[t._tmin,a*.99+t._tmin*.01]}else{var o=Ou.simpleMap(t.range,t.r2l);i=[o[0],.8*o[0]+.2*o[1]]}if(e.range=Ou.simpleMap(i,t.l2r),e._isMinor=!0,al.prepTicks(e,r),n){var s=Oh(t.dtick),u=Oh(e.dtick),l=s?t.dtick:+t.dtick.substring(1),f=u?e.dtick:+e.dtick.substring(1);s&&u?pN(l,f)?l===2*Zv&&f===2*Bp&&(e.dtick=Zv):l===2*Zv&&f===3*Bp?e.dtick=Zv:l===Zv&&!(t._input.minor||{}).nticks?e.dtick=Bp:Ese(l/f,2.5)?e.dtick=l/2:e.dtick=l:String(t.dtick).charAt(0)==="M"?u?e.dtick="M1":pN(l,f)?l>=12&&f===2&&(e.dtick="M3"):e.dtick=t.dtick:String(e.dtick).charAt(0)==="L"?String(t.dtick).charAt(0)==="L"?pN(l,f)||(e.dtick=Ese(l/f,2.5)?t.dtick/2:t.dtick):e.dtick="D1":e.dtick==="D2"&&+t.dtick>1&&(e.dtick=1)}e.range=t.range}t.minor._tick0Init===void 0&&(e.tick0=t.tick0)};function pN(e,t){return Math.abs((e/t+.5)%1-.5)<.001}function Ese(e,t){return Math.abs(e/t-1)<.001}al.prepTicks=function(e,t){var r=Ou.simpleMap(e.range,e.r2l,void 0,void 0,t);if(e.tickmode==="auto"||!e.dtick){var n=e.nticks,i;n||(e.type==="category"||e.type==="multicategory"?(i=e.tickfont?Ou.bigFont(e.tickfont.size||12):15,n=e._length/i):(i=e._id.charAt(0)==="y"?40:80,n=Ou.constrain(e._length/i,4,9)+1),e._name==="radialaxis"&&(n*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(n*=100),e._roughDTick=Math.abs(r[1]-r[0])/n,al.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(a=n-1,o=n):(a=n,o=n);var s=e[a].value,u=e[o].value,l=Math.abs(u-s),f=r||l,c=0;f>=AP?l>=AP&&l<=glt?c=l:c=TP:r===yN&&f>=SP?l>=SP&&l<=_lt?c=l:c=yN:f>=MP?l>=MP&&l<=xlt?c=l:c=F3:r===Zv&&f>=Zv?c=Zv:f>=Bp?c=Bp:r===s_&&f>=s_?c=s_:r===xy&&f>=xy&&(c=xy);var h;c>=l&&(c=l,h=!0);var d=i+c;if(t.rangebreaks&&c>0){for(var p=84,_=0,b=0;bZv&&(c=l)}(c>0||n===0)&&(e[n].periodX=i+c/2)}}al.calcTicks=function(t,r){for(var n=t.type,i=t.calendar,a=t.ticklabelstep,o=t.ticklabelmode==="period",s=t.range[0]>t.range[1],u=!t.ticklabelindex||Ou.isArrayOrTypedArray(t.ticklabelindex)?t.ticklabelindex:[t.ticklabelindex],l=Ou.simpleMap(t.range,t.r2l,void 0,void 0,r),f=l[1]=(E?0:1);A--){var L=!A;A?(t._dtickInit=t.dtick,t._tick0Init=t.tick0):(t.minor._dtickInit=t.minor.dtick,t.minor._tick0Init=t.minor.tick0);var x=A?t:Ou.extendFlat({},t,t.minor);if(L?al.prepMinorTicks(x,t,r):al.prepTicks(x,r),x.tickmode==="array"){A?(b=[],p=kse(t,!L)):(v=[],_=kse(t,!L));continue}if(x.tickmode==="sync"){b=[],p=Ilt(t);continue}var C=AN(l),M=C[0],m=C[1],P=Oh(x.dtick),T=n==="log"&&!(P||x.dtick.charAt(0)==="L"),B=al.tickFirst(x,r);if(A){if(t._tmin=B,B=m:U<=m;U=al.tickIncrement(U,W,f,i)){if(A&&G++,x.rangebreaks&&!f){if(U=h)break}if(b.length>d||U===F)break;F=U;var N={value:U};A?(T&&U!==(U|0)&&(N.simpleLabel=!0),a>1&&G%a&&(N.skipLabel=!0),b.push(N)):(N.minor=!0,v.push(N))}}if(!v||v.length<2)u=!1;else{var H=(v[1].value-v[0].value)*(s?-1:1);nut(H,t.tickformat)||(u=!1)}if(!u)k=b;else{var re=b.concat(v);o&&b.length&&(re=re.slice(1)),re=re.sort(function(Ct,wt){return Ct.value-wt.value}).filter(function(Ct,wt,St){return wt===0||Ct.value!==St[wt-1].value});var ae=re.map(function(Ct,wt){return Ct.minor===void 0&&!Ct.skipLabel?wt:null}).filter(function(Ct){return Ct!==null});ae.forEach(function(Ct){u.map(function(wt){var St=Ct+wt;St>=0&&St-1;Ue--){if(b[Ue].drop){b.splice(Ue,1);continue}b[Ue].value=mN(b[Ue].value,t);var ce=t.c2p(b[Ue].value);(De?qe>ce-ye:qeh||Dth&&(St.periodX=h),Dti&&hTP)t/=TP,n=i(10),e.dtick="M"+12*_y(t,n,bP);else if(a>F3)t/=F3,e.dtick="M"+_y(t,1,Cse);else if(a>Bp){if(e.dtick=_y(t,Bp,e._hasDayOfWeekBreaks?[1,2,7,14]:Rlt),!r){var o=al.getTickFormat(e),s=e.ticklabelmode==="period";s&&(e._rawTick0=e.tick0),/%[uVW]/.test(o)?e.tick0=Ou.dateTick0(e.calendar,2):e.tick0=Ou.dateTick0(e.calendar,1),s&&(e._dowTick0=e.tick0)}}else a>xy?e.dtick=_y(t,xy,Cse):a>s5?e.dtick=_y(t,s5,Lse):a>EP?e.dtick=_y(t,EP,Lse):(n=i(10),e.dtick=_y(t,n,bP))}else if(e.type==="log"){e.tick0=0;var u=Ou.simpleMap(e.range,e.r2l);if(e._isMinor&&(t*=1.5),t>.7)e.dtick=Math.ceil(t);else if(Math.abs(u[1]-u[0])<1){var l=1.5*Math.abs((u[1]-u[0])/t);t=Math.abs(Math.pow(10,u[1])-Math.pow(10,u[0]))/l,n=i(10),e.dtick="L"+_y(t,n,bP)}else e.dtick=t>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(t,1))):kN(e)?(e.tick0=0,n=1,e.dtick=_y(t,n,Dlt)):(e.tick0=0,n=i(10),e.dtick=_y(t,n,bP));if(e.dtick===0&&(e.dtick=1),!Oh(e.dtick)&&typeof e.dtick!="string"){var f=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(f)}};function Ose(e){var t=e.dtick;if(e._tickexponent=0,!Oh(t)&&typeof t!="string"&&(t=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var r=e.r2l(e.tick0),n=e.l2r(r).replace(/(^-|i)/g,""),i=n.length;if(String(t).charAt(0)==="M")i>10||n.slice(5)!=="01-01"?e._tickround="d":e._tickround=+t.slice(1)%12===0?"y":"m";else if(t>=Bp&&i<=10||t>=Bp*15)e._tickround="d";else if(t>=s5&&i<=16||t>=xy)e._tickround="M";else if(t>=EP&&i<=19||t>=s5)e._tickround="S";else{var a=e.l2r(r+t).replace(/^-/,"").length;e._tickround=Math.max(i,a)-20,e._tickround<0&&(e._tickround=4)}}else if(Oh(t)||t.charAt(0)==="L"){var o=e.range.map(e.r2d||Number);Oh(t)||(t=Number(t.slice(1))),e._tickround=2-Math.floor(Math.log(t)/Math.LN10+.01);var s=Math.max(Math.abs(o[0]),Math.abs(o[1])),u=Math.floor(Math.log(s)/Math.LN10+.01),l=e.minexponent===void 0?3:e.minexponent;Math.abs(u)>l&&(B3(e.exponentformat)&&e.exponentformat!=="SI extended"&&!SN(u)||B3(e.exponentformat)&&e.exponentformat==="SI extended"&&!MN(u)?e._tickexponent=3*Math.round((u-1)/3):e._tickexponent=u)}else e._tickround=null}al.tickIncrement=function(e,t,r,n){var i=r?-1:1;if(Oh(t))return Ou.increment(e,i*t);var a=t.charAt(0),o=i*Number(t.slice(1));if(a==="M")return Ou.incrementMonth(e,o,n);if(a==="L")return Math.log(Math.pow(10,e)+o)/Math.LN10;if(a==="D"){var s=t==="D2"?Bse:Fse,u=e+i*.01,l=Ou.roundUp(Ou.mod(u,1),s,r);return Math.floor(u)+Math.log(b0.round(Math.pow(10,l),1))/Math.LN10}throw"unrecognized dtick "+String(t)};al.tickFirst=function(e,t){var r=e.r2l||Number,n=Ou.simpleMap(e.range,r,void 0,void 0,t),i=n[1]=0&&v<=e._length?b:null};if(a&&Ou.isArrayOrTypedArray(e.ticktext)){var c=Ou.simpleMap(e.range,e.r2l),h=(Math.abs(c[1]-c[0])-(e._lBreaks||0))/1e4;for(l=0;l"+s;else{var l=f5(e),f=e._trueSide||e.side;(!l&&f==="top"||l&&f==="bottom")&&(o+="
")}t.text=o}function Blt(e,t,r,n,i){var a=e.dtick,o=t.x,s=e.tickformat,u=typeof a=="string"&&a.charAt(0);if(i==="never"&&(i=""),n&&u!=="L"&&(a="L3",u="L"),s||u==="L")t.text=u5(Math.pow(10,o),e,i,n);else if(Oh(a)||u==="D"&&(e.minorloglabels==="complete"||Ou.mod(o+.01,1)<.1)){var l;e.minorloglabels==="complete"&&!(Ou.mod(o+.01,1)<.1)&&(l=!0,t.fontSize*=.75);var f=Math.pow(10,o).toExponential(0),c=f.split("e"),h=+c[1],d=Math.abs(h),p=e.exponentformat;p==="power"||B3(p)&&p!=="SI extended"&&SN(h)||B3(p)&&p==="SI extended"&&MN(h)?(t.text=c[0],d>0&&(t.text+="x10"),t.text==="1x10"&&(t.text="10"),h!==0&&h!==1&&(t.text+=""+(h>0?"":Cb)+d+""),t.fontSize*=1.25):(p==="e"||p==="E")&&d>2?t.text=c[0]+p+(h>0?"+":Cb)+d:(t.text=u5(Math.pow(10,o),e,"","fakehover"),a==="D1"&&e._id.charAt(0)==="y"&&(t.dy-=t.fontSize/6))}else if(u==="D")t.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,Ou.mod(o,1)))),t.fontSize*=.75;else throw"unrecognized dtick "+String(a);if(e.dtick==="D1"){var _=String(t.text).charAt(0);(_==="0"||_==="1")&&(e._id.charAt(0)==="y"?t.dx-=t.fontSize/4:(t.dy+=t.fontSize/2,t.dx+=(e.range[1]>e.range[0]?1:-1)*t.fontSize*(o<0?.5:.25)))}}function Olt(e,t){var r=e._categories[Math.round(t.x)];r===void 0&&(r=""),t.text=String(r)}function qlt(e,t,r){var n=Math.round(t.x),i=e._categories[n]||[],a=i[1]===void 0?"":String(i[1]),o=i[0]===void 0?"":String(i[0]);r?t.text=o+" - "+a:(t.text=a,t.text2=o)}function Nlt(e,t,r,n,i){i==="never"?i="":e.showexponent==="all"&&Math.abs(t.x/e.dtick)<1e-6&&(i="hide"),t.text=u5(t.x,e,i,n)}function Ult(e,t,r,n,i){if(e.thetaunit==="radians"&&!r){var a=t.x/180;if(a===0)t.text="0";else{var o=Vlt(a);if(o[1]>=100)t.text=u5(Ou.deg2rad(t.x),e,i,n);else{var s=t.x<0;o[1]===1?o[0]===1?t.text="\u03C0":t.text=o[0]+"\u03C0":t.text=["",o[0],"","\u2044","",o[1],"","\u03C0"].join(""),s&&(t.text=Cb+t.text)}}}else t.text=u5(t.x,e,i,n)}function Vlt(e){function t(s,u){return Math.abs(s-u)<=1e-6}function r(s,u){return t(u,0)?s:r(u,s%u)}function n(s){for(var u=1;!t(Math.round(s*u)/u,s);)u*=10;return u}var i=n(e),a=e*i,o=Math.abs(r(a,i));return[Math.round(a/o),Math.round(i/o)]}var Nse=["f","p","n","\u03BC","m","","k","M","G","T"],Glt=["q","r","y","z","a",...Nse,"P","E","Z","Y","R","Q"],B3=e=>["SI","SI extended","B"].includes(e);function SN(e){return e>14||e<-15}function MN(e){return e>32||e<-30}function Hlt(e,t){return B3(t)?!!(t==="SI extended"&&MN(e)||t!=="SI extended"&&SN(e)):!1}function u5(e,t,r,n){var i=e<0,a=t._tickround,o=r||t.exponentformat||"B",s=t._tickexponent,u=al.getTickFormat(t),l=t.separatethousands;if(n){var f={exponentformat:o,minexponent:t.minexponent,dtick:t.showexponent==="none"?t.dtick:Oh(e)&&Math.abs(e)||1,range:t.showexponent==="none"?t.range.map(t.r2d):[0,e||1]};Ose(f),a=(Number(f._tickround)||0)+4,s=f._tickexponent,t.hoverformat&&(u=t.hoverformat)}if(u)return t._numFormat(u)(e).replace(/-/g,Cb);var c=Math.pow(10,-a)/2;if(o==="none"&&(s=0),e=Math.abs(e),e"+p+"":o==="B"&&s===9?e+="B":B3(o)&&(e+=o==="SI extended"?Glt[s/3+10]:Nse[s/3+5])}return i?Cb+e:e}al.getTickFormat=function(e){var t;function r(u){return typeof u!="string"?u:Number(u.replace("M",""))*F3}function n(u,l){var f=["L","D"];if(typeof u==typeof l){if(typeof u=="number")return u-l;var c=f.indexOf(u.charAt(0)),h=f.indexOf(l.charAt(0));return c===h?Number(u.replace(/(L|D)/g,""))-Number(l.replace(/(L|D)/g,"")):c-h}else return typeof u=="number"?1:-1}function i(u,l,f){var c=f||function(p){return p},h=l[0],d=l[1];return(!h&&typeof h!="number"||c(h)<=c(u))&&(!d&&typeof d!="number"||c(d)>=c(u))}function a(u,l){var f=l[0]===null,c=l[1]===null,h=n(u,l[0])>=0,d=n(u,l[1])<=0;return(f||h)&&(c||d)}var o,s;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(t=0;t=0&&i.unshift(i.splice(f,1).shift())}});var s={false:{left:0,right:0}};return Ou.syncOrAsync(i.map(function(u){return function(){if(u){var l=al.getFromId(e,u);r||(r={}),r.axShifts=s,r.overlayingShiftedAx=o;var f=al.drawOne(e,l,r);return l._shiftPusher&&TN(l,l._fullDepth||0,s,!0),l._r=l.range.slice(),l._rl=Ou.simpleMap(l._r,l.r2l),f}}}))};al.drawOne=function(e,t,r){r=r||{};var n=r.axShifts||{},i=r.overlayingShiftedAx||[],a,o,s;t.setScale();var u=e._fullLayout,l=t._id,f=l.charAt(0),c=al.counterLetter(l),h=u._plots[t._mainSubplot],d=t.zerolinelayer==="above traces";if(!h)return;if(t._shiftPusher=t.autoshift||i.indexOf(t._id)!==-1||i.indexOf(t.overlaying)!==-1,t._shiftPusher&t.anchor==="free"){var p=t.linewidth/2||0;t.ticks==="inside"&&(p+=t.ticklen),TN(t,p,n,!0),TN(t,t.shift||0,n,!1)}(r.skipTitle!==!0||t._shift===void 0)&&(t._shift=iut(t,n));var _=h[f+"axislayer"],b=t._mainLinePosition,v=b+=t._shift,k=t._mainMirrorPosition,E=t._vals=al.calcTicks(t),A=[t.mirror,v,k].join("_");for(a=0;a0?Dt.bottom-wt:0,St))));var ot=0,Tt=0;if(t._shiftPusher&&(ot=Math.max(St,Dt.height>0?Ke==="l"?wt-Dt.left:Dt.right-wt:0),t.title.text!==u._dfltTitle[f]&&(Tt=(t._titleStandoff||0)+(t._titleScoot||0),Ke==="l"&&(Tt+=zse(t))),t._fullDepth=Math.max(ot,Tt)),t.automargin){Zt={x:0,y:0,r:0,l:0,t:0,b:0};var vt=[0,1],Ye=typeof t._shift=="number"?t._shift:0;if(f==="x"){if(Ke==="b"?Zt[Ke]=t._depth:(Zt[Ke]=t._depth=Math.max(Dt.width>0?wt-Dt.top:0,St),vt.reverse()),Dt.width>0){var He=Dt.right-(t._offset+t._length);He>0&&(Zt.xr=1,Zt.r=He);var it=t._offset-Dt.left;it>0&&(Zt.xl=0,Zt.l=it)}}else if(Ke==="l"?(t._depth=Math.max(Dt.height>0?wt-Dt.left:0,St),Zt[Ke]=t._depth-Ye):(t._depth=Math.max(Dt.height>0?Dt.right-wt:0,St),Zt[Ke]=t._depth+Ye,vt.reverse()),Dt.height>0){var et=Dt.bottom-(t._offset+t._length);et>0&&(Zt.yb=0,Zt.b=et);var It=t._offset-Dt.top;It>0&&(Zt.yt=1,Zt.t=It)}Zt[c]=t.anchor==="free"?t.position:t._anchorAxis.domain[vt[0]],t.title.text!==u._dfltTitle[f]&&(Zt[Ke]+=zse(t)+(t.title.standoff||0)),t.mirror&&t.anchor!=="free"&&(Et={x:0,y:0,r:0,l:0,t:0,b:0},Et[Ct]=t.linewidth,t.mirror&&t.mirror!==!0&&(Et[Ct]+=St),t.mirror===!0||t.mirror==="ticks"?Et[c]=t._anchorAxis.domain[vt[1]]:(t.mirror==="all"||t.mirror==="allticks")&&(Et[c]=[t._counterDomainMin,t._counterDomainMax][vt[1]]))}at&&(Te=a5.getComponentMethod("rangeslider","autoMarginOpts")(e,t)),typeof t.automargin=="string"&&(Pse(Zt,t.automargin),Pse(Et,t.automargin)),R3.autoMargin(e,EN(t),Zt),R3.autoMargin(e,Vse(t),Et),R3.autoMargin(e,Gse(t),Te)}),Ou.syncOrAsync(gt)}};function Pse(e,t){if(e){var r=Object.keys(Ase).reduce(function(n,i){return t.indexOf(i)!==-1&&Ase[i].forEach(function(a){n[a]=1}),n},{});Object.keys(e).forEach(function(n){r[n]||(n.length===1?e[n]=0:delete e[n])})}}function Wlt(e,t){var r=[],n,i=function(a,o){var s=a.xbnd[o];s!==null&&r.push(Ou.extendFlat({},a,{x:s}))};if(t.length){for(n=0;ne.range[1],s=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,u=!s;if(r){var l=o?-1:1;r=r*l}if(n){var f=e.side,c=s&&(f==="top"||f==="left")||u&&(f==="bottom"||f==="right")?1:-1;n=n*c}return e._id.charAt(0)==="x"?function(h){return D3(i+e._offset+e.l2p(bN(h))+r,a+n)}:function(h){return D3(a+n,i+e._offset+e.l2p(bN(h))+r)}};function bN(e){return e.periodX!==void 0?e.periodX:e.x}function Ylt(e){var t=e.ticklabelposition||"",r=e.tickson||"",n=function(p){return t.indexOf(p)!==-1},i=n("top"),a=n("left"),o=n("right"),s=n("bottom"),u=n("inside"),l=r!=="boundaries"&&(s||a||i||o);if(!l&&!u)return[0,0];var f=e.side,c=l?(e.tickwidth||0)/2:0,h=kP,d=e.tickfont?e.tickfont.size:12;return(s||i)&&(c+=d*Lb,h+=(e.linewidth||0)/2),(a||o)&&(c+=(e.linewidth||0)/2,h+=kP),u&&f==="top"&&(h-=d*(1-Lb)),(a||i)&&(c=-c),(f==="bottom"||f==="right")&&(h=-h),[l?c:0,u?h:0]}al.makeTickPath=function(e,t,r,n){n||(n={});var i=n.minor;if(i&&!e.minor)return"";var a=n.len!==void 0?n.len:i?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),s=(e.linewidth||1)/2;return o==="x"?"M0,"+(t+s*r)+"v"+a*r:"M"+(t+s*r)+",0h"+a*r};al.makeLabelFns=function(e,t,r){var n=e.ticklabelposition||"",i=e.tickson||"",a=function(F){return n.indexOf(F)!==-1},o=a("top"),s=a("left"),u=a("right"),l=a("bottom"),f=i!=="boundaries"&&(l||s||o||u),c=a("inside"),h=n==="inside"&&e.ticks==="inside"||!c&&e.ticks==="outside"&&i!=="boundaries",d=0,p=0,_=h?e.ticklen:0;if(c?_*=-1:f&&(_=0),h&&(d+=_,r)){var b=Ou.deg2rad(r);d=_*Math.cos(b)+1,p=_*Math.sin(b)}e.showticklabels&&(h||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(c?-1:1);var v={labelStandoff:d,labelShift:p},k,E,A,L,x=0,C=e.side,M=e._id.charAt(0),m=e.tickangle,P;if(M==="x")P=!c&&C==="bottom"||c&&C==="top",L=P?1:-1,c&&(L*=-1),k=p*L,E=t+d*L,A=P?1:-.2,Math.abs(m)===90&&(c?A+=n5:m===-90&&C==="bottom"?A=Lb:m===90&&C==="top"?A=n5:A=.5,x=n5/2*(m/90)),v.xFn=function(F){return F.dx+k+x*F.fontSize},v.yFn=function(F){return F.dy+E+F.fontSize*A},v.anchorFn=function(F,U){if(f){if(s)return"end";if(u)return"start"}return!Oh(U)||U===0||U===180?"middle":U*L<0!==c?"end":"start"},v.heightFn=function(F,U,G){return U<-60||U>60?-.5*G:e.side==="top"!==c?-G:0};else if(M==="y"){if(P=!c&&C==="left"||c&&C==="right",L=P?1:-1,c&&(L*=-1),k=d,E=p*L,A=0,!c&&Math.abs(m)===90&&(m===-90&&C==="left"||m===90&&C==="right"?A=Lb:A=.5),c){var T=Oh(m)?+m:0;if(T!==0){var B=Ou.deg2rad(T);x=Math.abs(Math.sin(B))*Lb*L,A=0}}v.xFn=function(F){return F.dx+t-(k+F.fontSize*A)*L+x*F.fontSize},v.yFn=function(F){return F.dy+E+F.fontSize*n5},v.anchorFn=function(F,U){return Oh(U)&&Math.abs(U)===90?"middle":P?"end":"start"},v.heightFn=function(F,U,G){return e.side==="right"&&(U*=-1),U<-30?-G:U<30?-.5*G:0}}return v};function PP(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}al.drawTicks=function(e,t,r){r=r||{};var n=t._id+"tick",i=[].concat(t.minor&&t.minor.ticks?r.vals.filter(function(o){return o.minor&&!o.noTick}):[]).concat(t.ticks?r.vals.filter(function(o){return!o.minor&&!o.noTick}):[]),a=r.layer.selectAll("path."+n).data(i,PP);a.exit().remove(),a.enter().append("path").classed(n,1).classed("ticks",1).classed("crisp",r.crisp!==!1).each(function(o){return o5.stroke(b0.select(this),o.minor?t.minor.tickcolor:t.tickcolor)}).style("stroke-width",function(o){return Xv.crispRound(e,o.minor?t.minor.tickwidth:t.tickwidth,1)+"px"}).attr("d",r.path).style("display",null),zP(t,[Ise]),a.attr("transform",r.transFn)};al.drawGrid=function(e,t,r){if(r=r||{},t.tickmode!=="sync"){var n=t._id+"grid",i=t.minor&&t.minor.showgrid,a=i?r.vals.filter(function(v){return v.minor}):[],o=t.showgrid?r.vals.filter(function(v){return!v.minor}):[],s=r.counterAxis;if(s&&al.shouldShowZeroLine(e,t,s))for(var u=t.tickmode==="array",l=0;l=0;p--){var _=p?h:d;if(_){var b=_.selectAll("path."+n).data(p?o:a,PP);b.exit().remove(),b.enter().append("path").classed(n,1).classed("crisp",r.crisp!==!1),b.attr("transform",r.transFn).attr("d",r.path).each(function(v){return o5.stroke(b0.select(this),v.minor?t.minor.gridcolor:t.gridcolor||"#ddd")}).style("stroke-dasharray",function(v){return Xv.dashStyle(v.minor?t.minor.griddash:t.griddash,v.minor?t.minor.gridwidth:t.gridwidth)}).style("stroke-width",function(v){return(v.minor?c:t._gw)+"px"}).style("display",null),typeof r.path=="function"&&b.attr("d",r.path)}}zP(t,[_N,xN])}};al.drawZeroLine=function(e,t,r){r=r||r;var n=t._id+"zl",i=al.shouldShowZeroLine(e,t,r.counterAxis),a=r.layer.selectAll("path."+n).data(i?[{x:0,id:t._id}]:[]);a.exit().remove(),a.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",r.crisp!==!1).each(function(){r.layer.selectAll("path").sort(function(o,s){return Slt(o.id,s.id)})}),a.attr("transform",r.transFn).attr("d",r.path).call(o5.stroke,t.zerolinecolor||o5.defaultLine).style("stroke-width",Xv.crispRound(e,t.zerolinewidth,t._gw||1)+"px").style("display",null),zP(t,[gN])};al.drawLabels=function(e,t,r){r=r||{};var n=e._fullLayout,i=t._id,a=t.zerolinelayer==="above traces",o=r.cls||i+"tick",s=r.vals.filter(function(H){return H.text}),u=r.labelFns,l=r.secondary?0:t.tickangle,f=(t._prevTickAngles||{})[o],c=r.layer.selectAll("g."+o).data(t.showticklabels?s:[],PP),h=[];c.enter().append("g").classed(o,1).append("text").attr("text-anchor","middle").each(function(H){var re=b0.select(this),ae=e._promises.length;re.call(kb.positionText,u.xFn(H),u.yFn(H)).call(Xv.font,{family:H.font,size:H.fontSize,color:H.fontColor,weight:H.fontWeight,style:H.fontStyle,variant:H.fontVariant,textcase:H.fontTextcase,lineposition:H.fontLineposition,shadow:H.fontShadow}).text(H.text).call(kb.convertToTspans,e),e._promises[ae]?h.push(e._promises.pop().then(function(){d(re,l)})):d(re,l)}),zP(t,[Tse]),c.exit().remove(),r.repositionOnUpdate&&c.each(function(H){b0.select(this).select("text").call(kb.positionText,u.xFn(H),u.yFn(H))});function d(H,re){H.each(function(ae){var be=b0.select(this),ze=be.select(".text-math-group"),Ce=u.anchorFn(ae,re),de=r.transFn.call(be.node(),ae)+(Oh(re)&&+re!=0?" rotate("+re+","+u.xFn(ae)+","+(u.yFn(ae)-ae.fontSize/2)+")":""),te=kb.lineCount(be),ke=l5*ae.fontSize,Ee=u.heightFn(ae,Oh(re)?+re:0,(te-1)*ke);if(Ee&&(de+=D3(0,Ee)),ze.empty()){var Me=be.select("text");Me.attr({transform:de,"text-anchor":Ce}),Me.style("display",null),t._adjustTickLabelsOverflow&&t._adjustTickLabelsOverflow()}else{var Ue=Xv.bBox(ze.node()).width,De=Ue*{end:-.5,start:.5}[Ce];ze.attr("transform",de+D3(De,0))}})}t._adjustTickLabelsOverflow=function(){var H=t.ticklabeloverflow;if(!(!H||H==="allow")){var re=H.indexOf("hide")!==-1,ae=t._id.charAt(0)==="x",be=0,ze=ae?e._fullLayout.width:e._fullLayout.height;if(H.indexOf("domain")!==-1){var Ce=Ou.simpleMap(t.range,t.r2l);be=t.l2p(Ce[0])+t._offset,ze=t.l2p(Ce[1])+t._offset}var de=Math.min(be,ze),te=Math.max(be,ze),ke=t.side,Ee=1/0,Me=-1/0;c.each(function(qe){var ce=b0.select(this),Je=ce.select(".text-math-group");if(Je.empty()){var nt=Xv.bBox(ce.node()),gt=0;ae?(nt.right>te||nt.leftte||nt.top+(t.tickangle?0:qe.fontSize/4)t["_visibleLabelMin_"+Ce._id]?ce.style("display","none"):te.K==="tick"&&!de&&ce.node().style.display!=="none"&&ce.style("display",null)})})})})},d(c,f+1?f:l);function p(){return h.length&&Promise.all(h)}var _=null;function b(){if(d(c,l),s.length&&t.autotickangles&&(t.type!=="log"||String(t.dtick).charAt(0)!=="D")){_=t.autotickangles[0];var H=0,re=[],ae,be=1;c.each(function(Zt){H=Math.max(H,Zt.fontSize);var Et=t.l2p(Zt.x),Te=wN(this),ot=Xv.bBox(Te.node());be=Math.max(be,kb.lineCount(Te)),re.push({top:0,bottom:10,height:10,left:Et-ot.width/2,right:Et+ot.width/2+2,width:ot.width+2})});var ze=(t.tickson==="boundaries"||t.showdividers)&&!r.secondary,Ce=s.length,de=Math.abs((s[Ce-1].x-s[0].x)*t._m)/(Ce-1),te=ze?de/2:de,ke=ze?t.ticklen:H*1.25*be,Ee=Math.sqrt(Math.pow(te,2)+Math.pow(ke,2)),Me=te/Ee,Ue=t.autotickangles.map(function(Zt){return Zt*Math.PI/180}),De=Ue.find(function(Zt){return Math.abs(Math.cos(Zt))<=Me});De===void 0&&(De=Ue.reduce(function(Zt,Et){return Math.abs(Math.cos(Zt))j*G&&(B=G,m[M]=P[M]=F[M])}var W=Math.abs(B-T);W-L>0?(W-=L,L*=1+L/W):L=0,t._id.charAt(0)!=="y"&&(L=-L),m[C]=E.p2r(E.r2p(P[C])+x*L),E.autorange==="min"||E.autorange==="max reversed"?(m[0]=null,E._rangeInitial0=void 0,E._rangeInitial1=void 0):(E.autorange==="max"||E.autorange==="min reversed")&&(m[1]=null,E._rangeInitial0=void 0,E._rangeInitial1=void 0),n._insideTickLabelsUpdaterange[E._name+".range"]=m}var N=Ou.syncOrAsync(v);return N&&N.then&&e._promises.push(N),N};function Klt(e,t,r){var n=t._id+"divider",i=r.vals,a=r.layer.selectAll("path."+n).data(i,PP);a.exit().remove(),a.enter().insert("path",":first-child").classed(n,1).classed("crisp",1).call(o5.stroke,t.dividercolor).style("stroke-width",Xv.crispRound(e,t.dividerwidth,1)+"px"),a.attr("transform",r.transFn).attr("d",r.path)}al.getPxPosition=function(e,t){var r=e._fullLayout._size,n=t._id.charAt(0),i=t.side,a;if(t.anchor!=="free"?a=t._anchorAxis:n==="x"?a={_offset:r.t+(1-(t.position||0))*r.h,_length:0}:n==="y"&&(a={_offset:r.l+(t.position||0)*r.w+t._shift,_length:0}),i==="top"||i==="left")return a._offset;if(i==="bottom"||i==="right")return a._offset+a._length};function zse(e){var t=e.title.font.size,r=(e.title.text.match(kb.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?t*(Lb+r*l5):r?t*(r+1)*l5:t}function Jlt(e,t){var r=e._fullLayout,n=t._id,i=n.charAt(0),a=t.title.font.size,o,s=(t.title.text.match(kb.BR_TAG_ALL)||[]).length;if(t.title.hasOwnProperty("standoff"))t.side==="bottom"||t.side==="right"?o=t._depth+t.title.standoff+a*Lb:(t.side==="top"||t.side==="left")&&(o=t._depth+t.title.standoff+a*(n5+s*l5));else{var u=f5(t);if(t.type==="multicategory")o=t._depth;else{var l=1.5*a;u&&(l=.5*a,t.ticks==="outside"&&(l+=t.ticklen)),o=10+l+(t.linewidth?t.linewidth-1:0)}u||(i==="x"?o+=t.side==="top"?a*(t.showticklabels?1:0):a*(t.showticklabels?1.5:.5):o+=t.side==="right"?a*(t.showticklabels?1:.5):a*(t.showticklabels?.5:0))}var f=al.getPxPosition(e,t),c,h,d;i==="x"?(h=t._offset+t._length/2,d=t.side==="top"?f-o:f+o):(d=t._offset+t._length/2,h=t.side==="right"?f+o:f-o,c={rotate:"-90",offset:0});var p;if(t.type!=="multicategory"){var _=t._selections[t._id+"tick"];if(p={selection:_,side:t.side},_&&_.node()&&_.node().parentNode){var b=Xv.getTranslate(_.node().parentNode);p.offsetLeft=b.x,p.offsetTop=b.y}t.title.hasOwnProperty("standoff")&&(p.pad=0)}return t._titleStandoff=o,mlt.draw(e,n+"title",{propContainer:t,propName:t._name+".title.text",placeholder:r._dfltTitle[i],avoid:p,transform:c,attributes:{x:h,y:d,"text-anchor":"middle"}})}al.shouldShowZeroLine=function(e,t,r){var n=Ou.simpleMap(t.range,t.r2l);return n[0]*n[1]<=0&&t.zeroline&&(t.type==="linear"||t.type==="-")&&!(t.rangebreaks&&t.maskBreaks(0)===CP)&&(Use(t,0)||!$lt(e,t,r,n)||Qlt(e,t))};al.clipEnds=function(e,t){return t.filter(function(r){return Use(e,r.x)})};function Use(e,t){var r=e.l2p(t);return r>1&&r1)for(i=1;i=i.min&&e=wlt:/%L/.test(t)?e>=blt:/%[SX]/.test(t)?e>=EP:/%M/.test(t)?e>=s5:/%[HI]/.test(t)?e>=xy:/%p/.test(t)?e>=s_:/%[Aadejuwx]/.test(t)?e>=Bp:/%[UVW]/.test(t)?e>=Zv:/%[Bbm]/.test(t)?e>=MP:/%[q]/.test(t)?e>=SP:/%[Yy]/.test(t)?e>=AP:!0}});var CN=Ae((xor,Wse)=>{"use strict";Wse.exports=function(t,r,n){var i,a;if(n){var o=r==="reversed"||r==="min reversed"||r==="max reversed";i=n[o?1:0],a=n[o?0:1]}var s=t("autorangeoptions.minallowed",a===null?i:void 0),u=t("autorangeoptions.maxallowed",i===null?a:void 0);s===void 0&&t("autorangeoptions.clipmin"),u===void 0&&t("autorangeoptions.clipmax"),t("autorangeoptions.include")}});var LN=Ae((bor,jse)=>{"use strict";var aut=CN();jse.exports=function(t,r,n,i){var a=r._template||{},o=r.type||a.type||"-";n("minallowed"),n("maxallowed");var s=n("range");if(!s){var u;!i.noInsiderange&&o!=="log"&&(u=n("insiderange"),u&&(u[0]===null||u[1]===null)&&(r.insiderange=!1,u=void 0),u&&(s=n("range",u)))}var l=r.getAutorangeDflt(s,i),f=n("autorange",l),c;s&&(s[0]===null&&s[1]===null||(s[0]===null||s[1]===null)&&(f==="reversed"||f===!0)||s[0]!==null&&(f==="min"||f==="max reversed")||s[1]!==null&&(f==="max"||f==="min reversed"))&&(s=void 0,delete r.range,r.autorange=!0,c=!0),c||(l=r.getAutorangeDflt(s,i),f=n("autorange",l)),f&&(aut(n,f,s),(o==="linear"||o==="-")&&n("rangemode")),r.cleanRange()}});var Zse=Ae((wor,Xse)=>{var out={left:0,top:0};Xse.exports=sut;function sut(e,t,r){t=t||e.currentTarget||e.srcElement,Array.isArray(r)||(r=[0,0]);var n=e.clientX||0,i=e.clientY||0,a=lut(t);return r[0]=n-a.left,r[1]=i-a.top,r}function lut(e){return e===window||e===document||e===document.body?out:e.getBoundingClientRect()}});var IP=Ae((Tor,Yse)=>{"use strict";var uut=hq();function fut(){var e=!1;try{var t=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,t),window.removeEventListener("test",null,t)}catch(r){e=!1}return e}Yse.exports=uut&&fut()});var Jse=Ae((Aor,Kse)=>{"use strict";Kse.exports=function(t,r,n,i,a){var o=(t-n)/(i-n),s=o+r/(i-n),u=(o+s)/2;return a==="left"||a==="bottom"?o:a==="center"||a==="middle"?u:a==="right"||a==="top"?s:o<2/3-u?o:s>4/3-u?s:u}});var ele=Ae((Sor,Qse)=>{"use strict";var $se=ei(),cut=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];Qse.exports=function(t,r,n,i){return n==="left"?t=0:n==="center"?t=1:n==="right"?t=2:t=$se.constrain(Math.floor(t*3),0,2),i==="bottom"?r=0:i==="middle"?r=1:i==="top"?r=2:r=$se.constrain(Math.floor(r*3),0,2),cut[r][t]}});var rle=Ae((Mor,tle)=>{"use strict";var hut=_3(),dut=FL(),put=NM().getGraphDiv,vut=FM(),PN=tle.exports={};PN.wrapped=function(e,t,r){e=put(e),e._fullLayout&&dut.clear(e._fullLayout._uid+vut.HOVERID),PN.raw(e,t,r)};PN.raw=function(t,r){var n=t._fullLayout,i=t._hoverdata;r||(r={}),!(r.target&&!t._dragged&&hut.triggerHandler(t,"plotly_beforehover",r)===!1)&&(n._hoverlayer.selectAll("g").remove(),n._hoverlayer.selectAll("line").remove(),n._hoverlayer.selectAll("circle").remove(),t._hoverdata=void 0,r.target&&i&&t.emit("plotly_unhover",{event:r,points:i}))}});var xp=Ae((Eor,ole)=>{"use strict";var mut=Zse(),zN=pq(),yut=IP(),gut=ei().removeElement,_ut=dd(),Pb=ole.exports={};Pb.align=Jse();Pb.getCursor=ele();var nle=rle();Pb.unhover=nle.wrapped;Pb.unhoverRaw=nle.raw;Pb.init=function(t){var r=t.gd,n=1,i=r._context.doubleClickDelay,a=t.element,o,s,u,l,f,c,h,d;r._mouseDownTime||(r._mouseDownTime=0),a.style.pointerEvents="all",a.onmousedown=b,yut?(a._ontouchstart&&a.removeEventListener("touchstart",a._ontouchstart),a._ontouchstart=b,a.addEventListener("touchstart",b,{passive:!1})):a.ontouchstart=b;function p(E,A,L){return Math.abs(E)i&&(n=Math.max(n-1,1)),r._dragged)t.doneFn&&t.doneFn();else{var A;c.target===h?A=c:(A={target:h,srcElement:h,toElement:h},Object.keys(c).concat(Object.keys(c.__proto__)).forEach(L=>{var x=c[L];!A[L]&&typeof x!="function"&&(A[L]=x)})),t.clickFn&&t.clickFn(n,A),d||h.dispatchEvent(new MouseEvent("click",E))}r._dragging=!1,r._dragged=!1}};function ale(){var e=document.createElement("div");e.className="dragcover";var t=e.style;return t.position="fixed",t.left=0,t.right=0,t.top=0,t.bottom=0,t.zIndex=999999999,t.background="none",document.body.appendChild(e),e}Pb.coverSlip=ale;function ile(e){return mut(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Sm=Ae((kor,sle)=>{"use strict";sle.exports=function(t,r){(t.attr("class")||"").split(" ").forEach(function(n){n.indexOf("cursor-")===0&&t.classed(n,!1)}),r&&t.classed("cursor-"+r,!0)}});var fle=Ae((Cor,ule)=>{"use strict";var IN=Sm(),c5="data-savedcursor",lle="!!";ule.exports=function(t,r){var n=t.attr(c5);if(r){if(!n){for(var i=(t.attr("class")||"").split(" "),a=0;a{"use strict";var RN=gc(),xut=Fh();cle.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:xut.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:RN({editType:"legend"}),grouptitlefont:RN({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:RN({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var DP=Ae(RP=>{"use strict";RP.isGrouped=function(t){return(t.traceorder||"").indexOf("grouped")!==-1};RP.isVertical=function(t){return t.orientation!=="h"};RP.isReversed=function(t){return(t.traceorder||"").indexOf("reversed")!==-1}});var BN=Ae((zor,hle)=>{"use strict";var FP=$l(),Yv=ei(),but=Lf(),wut=Gf(),Tut=DN(),Aut=f3(),FN=DP();function Sut(e,t,r,n){var i=t[e]||{},a=but.newContainer(r,e);function o(N,H){return Yv.coerce(i,a,Tut,N,H)}var s=Yv.coerceFont(o,"font",r.font);o("bgcolor",r.paper_bgcolor),o("bordercolor");var u=o("visible");if(!u)return;var l,f=function(N,H){var re=l._input,ae=l;return Yv.coerce(re,ae,wut,N,H)},c=r.font||{},h=Yv.coerceFont(o,"grouptitlefont",c,{overrideDflt:{size:Math.round(c.size*1.1)}}),d=0,p=!1,_="normal",b=(r.shapes||[]).filter(function(N){return N.showlegend});function v(N){return FP.traceIs(N,"pie-like")&&N._length!=null&&(Array.isArray(N.legend)||Array.isArray(N.showlegend))}n.filter(v).forEach(function(N){N.visible&&d++;for(var H=0;HN.legend.length)for(var ae=N.legend.length;ae(e==="legend"?1:0));if(L===!1&&(r[e]=void 0),!(L===!1&&!i.uirevision)&&(o("uirevision",r.uirevision),L!==!1)){o("borderwidth");var x=o("orientation"),C=o("yref"),M=o("xref"),m=x==="h",P=C==="paper",T=M==="paper",B,F,U,G="left";m?(B=0,FP.getComponentMethod("rangeslider","isVisible")(t.xaxis)?P?(F=1.1,U="bottom"):(F=1,U="top"):P?(F=-.1,U="top"):(F=0,U="bottom")):(F=1,U="auto",T?B=1.02:(B=1,G="right")),Yv.coerce(i,a,{x:{valType:"number",editType:"legend",min:T?-2:0,max:T?3:1,dflt:B}},"x"),Yv.coerce(i,a,{y:{valType:"number",editType:"legend",min:P?-2:0,max:P?3:1,dflt:F}},"y"),o("traceorder",_),FN.isGrouped(r[e])&&o("tracegroupgap"),o("entrywidth"),o("entrywidthmode"),o("indentation"),o("itemsizing"),o("itemwidth"),o("itemclick"),o("itemdoubleclick"),o("groupclick"),o("xanchor",G),o("yanchor",U),o("maxheight"),o("valign"),Yv.noneOrAll(i,a,["x","y"]);var j=o("title.text");if(j){o("title.side",m?"left":"top");var W=Yv.extendFlat({},s,{size:Yv.bigFont(s.size)});Yv.coerceFont(o,"title.font",W)}}}hle.exports=function(t,r,n){var i,a=n.slice(),o=r.shapes;if(o)for(i=0;i{"use strict";var O3=$l(),qN=ei(),Mut=qN.pushUnique,ON=!0;dle.exports=function(t,r,n){var i=r._fullLayout;if(r._dragged||r._editing)return;var a=i.legend.itemclick,o=i.legend.itemdoubleclick,s=i.legend.groupclick;n===1&&a==="toggle"&&o==="toggleothers"&&ON&&r.data&&r._context.showTips&&qN.notifier(qN._(r,"Double-click on legend to isolate one trace"),"long"),ON=!1;var u;if(n===1?u=a:n===2&&(u=o),!u)return;var l=s==="togglegroup",f=i.hiddenlabels?i.hiddenlabels.slice():[],c=t.data()[0][0];if(c.groupTitle&&c.noClick)return;var h=r._fullData,d=(i.shapes||[]).filter(function(Ct){return Ct.showlegend}),p=h.concat(d),_=c.trace;_._isShape&&(_=_._fullInput);var b=_.legendgroup,v,k,E,A,L,x,C={},M=[],m=[],P=[];function T(Ct,wt){var St=M.indexOf(Ct),Dt=C.visible;return Dt||(Dt=C.visible=[]),M.indexOf(Ct)===-1&&(M.push(Ct),St=M.length-1),Dt[St]=wt,St}var B=(i.shapes||[]).map(function(Ct){return Ct._input}),F=!1;function U(Ct,wt){B[Ct].visible=wt,F=!0}function G(Ct,wt){if(!(c.groupTitle&&!l)){var St=Ct._fullInput||Ct,Dt=St._isShape,Zt=St.index;Zt===void 0&&(Zt=St._index);var Et=St.visible===!1?!1:wt;Dt?U(Zt,Et):T(Zt,Et)}}var j=_.legend,W=_._fullInput,N=W&&W._isShape;if(!N&&O3.traceIs(_,"pie-like")){var H=c.label,re=f.indexOf(H);if(u==="toggle")re===-1?f.push(H):f.splice(re,1);else if(u==="toggleothers"){var ae=re!==-1,be=[];for(v=0;v{"use strict";vle.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var gle=Ae((Dor,yle)=>{"use strict";var mle=$l(),UN=DP();yle.exports=function(t,r,n){var i=r._inHover,a=UN.isGrouped(r),o=UN.isReversed(r),s={},u=[],l=!1,f={},c=0,h=0,d,p;function _(H,re,ae){if(r.visible!==!1&&!(n&&H!==r._id))if(re===""||!UN.isGrouped(r)){var be="~~i"+c;u.push(be),s[be]=[ae],c++}else u.indexOf(re)===-1?(u.push(re),l=!0,s[re]=[ae]):s[re].push(ae)}for(d=0;dB&&(T=B)}m[d][0]._groupMinRank=T,m[d][0]._preGroupSort=d}var F=function(H,re){return H[0]._groupMinRank-re[0]._groupMinRank||H[0]._preGroupSort-re[0]._preGroupSort},U=function(H,re){return H.trace.legendrank-re.trace.legendrank||H._preSort-re._preSort};for(m.forEach(function(H,re){H[0]._preGroupSort=re}),m.sort(F),d=0;d{"use strict";var BP=ei();function _le(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}zb.formatPiePercent=function(t,r){var n=_le((t*100).toPrecision(3));return BP.numSeparate(n,r)+"%"};zb.formatPieValue=function(t,r){var n=_le(t.toPrecision(10));return BP.numSeparate(n,r)};zb.getFirstFilled=function(t,r){if(BP.isArrayOrTypedArray(t))for(var n=0;n{"use strict";var Eut=Mu(),kut=jl();xle.exports=function(t,r,n,i){var a=n.marker.pattern;a&&a.shape?Eut.pointStyle(t,n,i,r):kut.fill(t,r.color)}});var q3=Ae((Oor,Ale)=>{"use strict";var wle=jl(),Tle=l_().castOption,Cut=ble();Ale.exports=function(t,r,n,i){var a=n.marker.line,o=Tle(a.color,r.pts)||wle.defaultLine,s=Tle(a.width,r.pts)||0;t.call(Cut,r,n,i).style("stroke-width",s).call(wle.stroke,o)}});var WN=Ae((qor,Lle)=>{"use strict";var Op=Jl(),VN=$l(),bp=ei(),Sle=bp.strTranslate,Kv=Mu(),w0=jl(),GN=yp().extractOpts,OP=lc(),Lut=q3(),Put=l_().castOption,zut=NN(),Mle=12,Ele=5,Ib=2,Iut=10,N3=5;Lle.exports=function(t,r,n){var i=r._fullLayout;n||(n=i.legend);var a=n.itemsizing==="constant",o=n.itemwidth,s=(o+zut.itemGap*2)/2,u=Sle(s,0),l=function(C,M,m,P){var T;if(C+1)T=C;else if(M&&M.width>0)T=M.width;else return 0;return a?P:Math.min(T,m)};t.each(function(C){var M=Op.select(this),m=bp.ensureSingle(M,"g","layers");m.style("opacity",C[0].trace.opacity);var P=n.indentation,T=n.valign,B=C[0].lineHeight,F=C[0].height;if(T==="middle"&&P===0||!B||!F)m.attr("transform",null);else{var U={top:1,bottom:-1}[T],G=U*(.5*(B-F+3))||0,j=n.indentation;m.attr("transform",Sle(j,G))}var W=m.selectAll("g.legendfill").data([C]);W.enter().append("g").classed("legendfill",!0);var N=m.selectAll("g.legendlines").data([C]);N.enter().append("g").classed("legendlines",!0);var H=m.selectAll("g.legendsymbols").data([C]);H.enter().append("g").classed("legendsymbols",!0),H.selectAll("g.legendpoints").data([C]).enter().append("g").classed("legendpoints",!0)}).each(x).each(h).each(p).each(d).each(b).each(A).each(E).each(f).each(c).each(v).each(k);function f(C){var M=kle(C),m=M.showFill,P=M.showLine,T=M.showGradientLine,B=M.showGradientFill,F=M.anyFill,U=M.anyLine,G=C[0],j=G.trace,W,N,H=GN(j),re=H.colorscale,ae=H.reversescale,be=function(Me){if(Me.size())if(m)Kv.fillGroupStyle(Me,r,!0);else{var Ue="legendfill-"+j.uid;Kv.gradient(Me,r,Ue,HN(ae),re,"fill")}},ze=function(Me){if(Me.size()){var Ue="legendline-"+j.uid;Kv.lineGroupStyle(Me),Kv.gradient(Me,r,Ue,HN(ae),re,"stroke")}},Ce=OP.hasMarkers(j)||!F?"M5,0":U?"M5,-2":"M5,-3",de=Op.select(this),te=de.select(".legendfill").selectAll("path").data(m||B?[C]:[]);if(te.enter().append("path").classed("js-fill",!0),te.exit().remove(),te.attr("d",Ce+"h"+o+"v6h-"+o+"z").call(be),P||T){var ke=l(void 0,j.line,Iut,Ele);N=bp.minExtend(j,{line:{width:ke}}),W=[bp.minExtend(G,{trace:N})]}var Ee=de.select(".legendlines").selectAll("path").data(P||T?[W]:[]);Ee.enter().append("path").classed("js-line",!0),Ee.exit().remove(),Ee.attr("d",Ce+(T?"l"+o+",0.0001":"h"+o)).call(P?Kv.lineGroupStyle:ze)}function c(C){var M=kle(C),m=M.anyFill,P=M.anyLine,T=M.showLine,B=M.showMarker,F=C[0],U=F.trace,G=!B&&!P&&!m&&OP.hasText(U),j,W;function N(te,ke,Ee,Me){var Ue=bp.nestedProperty(U,te).get(),De=bp.isArrayOrTypedArray(Ue)&&ke?ke(Ue):Ue;if(a&&De&&Me!==void 0&&(De=Me),Ee){if(DeEe[1])return Ee[1]}return De}function H(te){return F._distinct&&F.index&&te[F.index]?te[F.index]:te[0]}if(B||G||T){var re={},ae={};if(B){re.mc=N("marker.color",H),re.mx=N("marker.symbol",H),re.mo=N("marker.opacity",bp.mean,[.2,1]),re.mlc=N("marker.line.color",H),re.mlw=N("marker.line.width",bp.mean,[0,5],Ib),ae.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var be=N("marker.size",bp.mean,[2,16],Mle);re.ms=be,ae.marker.size=be}T&&(ae.line={width:N("line.width",H,[0,10],Ele)}),G&&(re.tx="Aa",re.tp=N("textposition",H),re.ts=10,re.tc=N("textfont.color",H),re.tf=N("textfont.family",H),re.tw=N("textfont.weight",H),re.ty=N("textfont.style",H),re.tv=N("textfont.variant",H),re.tC=N("textfont.textcase",H),re.tE=N("textfont.lineposition",H),re.tS=N("textfont.shadow",H)),j=[bp.minExtend(F,re)],W=bp.minExtend(U,ae),W.selectedpoints=null,W.texttemplate=null}var ze=Op.select(this).select("g.legendpoints"),Ce=ze.selectAll("path.scatterpts").data(B?j:[]);Ce.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",u),Ce.exit().remove(),Ce.call(Kv.pointStyle,W,r),B&&(j[0].mrc=3);var de=ze.selectAll("g.pointtext").data(G?j:[]);de.enter().append("g").classed("pointtext",!0).append("text").attr("transform",u),de.exit().remove(),de.selectAll("text").call(Kv.textPointStyle,W,r)}function h(C){var M=C[0].trace,m=M.type==="waterfall";if(C[0]._distinct&&m){var P=C[0].trace[C[0].dir].marker;return C[0].mc=P.color,C[0].mlw=P.line.width,C[0].mlc=P.line.color,_(C,this,"waterfall")}var T=[];M.visible&&m&&(T=C[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var B=Op.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(T);B.enter().append("path").classed("legendwaterfall",!0).attr("transform",u).style("stroke-miterlimit",1),B.exit().remove(),B.each(function(F){var U=Op.select(this),G=M[F[0]].marker,j=l(void 0,G.line,N3,Ib);U.attr("d",F[1]).style("stroke-width",j+"px").call(w0.fill,G.color),j&&U.call(w0.stroke,G.line.color)})}function d(C){_(C,this)}function p(C){_(C,this,"funnel")}function _(C,M,m){var P=C[0].trace,T=P.marker||{},B=T.line||{},F=T.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",U=m?P.visible&&P.type===m:VN.traceIs(P,"bar"),G=Op.select(M).select("g.legendpoints").selectAll("path.legend"+m).data(U?[C]:[]);G.enter().append("path").classed("legend"+m,!0).attr("d",F).attr("transform",u),G.exit().remove(),G.each(function(j){var W=Op.select(this),N=j[0],H=l(N.mlw,T.line,N3,Ib);W.style("stroke-width",H+"px");var re=N.mcc;if(!n._inHover&&"mc"in N){var ae=GN(T),be=ae.mid;be===void 0&&(be=(ae.max+ae.min)/2),re=Kv.tryColorscale(T,"")(be)}var ze=re||N.mc||T.color,Ce=T.pattern,de=Kv.getPatternAttr,te=Ce&&(de(Ce.shape,0,"")||de(Ce.path,0,""));if(te){var ke=de(Ce.bgcolor,0,null),Ee=de(Ce.fgcolor,0,null),Me=Ce.fgopacity,Ue=Cle(Ce.size,8,10),De=Cle(Ce.solidity,.5,1),ye="legend-"+P.uid;W.call(Kv.pattern,"legend",r,ye,te,Ue,De,re,Ce.fillmode,ke,Ee,Me)}else W.call(w0.fill,ze);H&&w0.stroke(W,N.mlc||B.color)})}function b(C){var M=C[0].trace,m=Op.select(this).select("g.legendpoints").selectAll("path.legendbox").data(M.visible&&VN.traceIs(M,"box-violin")?[C]:[]);m.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",u),m.exit().remove(),m.each(function(){var P=Op.select(this);if((M.boxpoints==="all"||M.points==="all")&&w0.opacity(M.fillcolor)===0&&w0.opacity((M.line||{}).color)===0){var T=bp.minExtend(M,{marker:{size:a?Mle:bp.constrain(M.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});m.call(Kv.pointStyle,T,r)}else{var B=l(void 0,M.line,N3,Ib);P.style("stroke-width",B+"px").call(w0.fill,M.fillcolor),B&&w0.stroke(P,M.line.color)}})}function v(C){var M=C[0].trace,m=Op.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(M.visible&&M.type==="candlestick"?[C,C]:[]);m.enter().append("path").classed("legendcandle",!0).attr("d",function(P,T){return T?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",u).style("stroke-miterlimit",1),m.exit().remove(),m.each(function(P,T){var B=Op.select(this),F=M[T?"increasing":"decreasing"],U=l(void 0,F.line,N3,Ib);B.style("stroke-width",U+"px").call(w0.fill,F.fillcolor),U&&w0.stroke(B,F.line.color)})}function k(C){var M=C[0].trace,m=Op.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(M.visible&&M.type==="ohlc"?[C,C]:[]);m.enter().append("path").classed("legendohlc",!0).attr("d",function(P,T){return T?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",u).style("stroke-miterlimit",1),m.exit().remove(),m.each(function(P,T){var B=Op.select(this),F=M[T?"increasing":"decreasing"],U=l(void 0,F.line,N3,Ib);B.style("fill","none").call(Kv.dashLine,F.line.dash,U),U&&w0.stroke(B,F.line.color)})}function E(C){L(C,this,"pie")}function A(C){L(C,this,"funnelarea")}function L(C,M,m){var P=C[0],T=P.trace,B=m?T.visible&&T.type===m:VN.traceIs(T,m),F=Op.select(M).select("g.legendpoints").selectAll("path.legend"+m).data(B?[C]:[]);if(F.enter().append("path").classed("legend"+m,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",u),F.exit().remove(),F.size()){var U=T.marker||{},G=l(Put(U.line.width,P.pts),U.line,N3,Ib),j="pieLike",W=bp.minExtend(T,{marker:{line:{width:G}}},j),N=bp.minExtend(P,{trace:W},j);Lut(F,N,W,r)}}function x(C){var M=C[0].trace,m,P=[];if(M.visible)switch(M.type){case"histogram2d":case"heatmap":P=[["M-15,-2V4H15V-2Z"]],m=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":P=[["M-6,-6V6H6V-6Z"]],m=!0;break;case"densitymapbox":case"densitymap":P=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],m="radial";break;case"cone":P=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],m=!1;break;case"streamtube":P=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],m=!1;break;case"surface":P=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],m=!0;break;case"mesh3d":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],m=!1;break;case"volume":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],m=!0;break;case"isosurface":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],m=!1;break}var T=Op.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(P);T.enter().append("path").classed("legend3dandfriends",!0).attr("transform",u).style("stroke-miterlimit",1),T.exit().remove(),T.each(function(B,F){var U=Op.select(this),G=GN(M),j=G.colorscale,W=G.reversescale,N=function(be){if(be.size()){var ze="legendfill-"+M.uid;Kv.gradient(be,r,ze,HN(W,m==="radial"),j,"fill")}},H;if(j){if(!m){var ae=j.length;H=F===0?j[W?ae-1:0][1]:F===1?j[W?0:ae-1][1]:j[Math.floor((ae-1)/2)][1]}}else{var re=M.vertexcolor||M.facecolor||M.color;H=bp.isArrayOrTypedArray(re)?re[F]||re[0]:re}U.attr("d",B[0]),H?U.call(w0.fill,H):U.call(N)})}};function HN(e,t){var r=t?"radial":"horizontal";return r+(e?"":"reversed")}function kle(e){var t=e[0].trace,r=t.contours,n=OP.hasLines(t),i=OP.hasMarkers(t),a=t.visible&&t.fill&&t.fill!=="none",o=!1,s=!1;if(r){var u=r.coloring;u==="lines"?o=!0:n=u==="none"||u==="heatmap"||r.showlines,r.type==="constraint"?a=r._operation!=="=":(u==="fill"||u==="heatmap")&&(s=!0)}return{showMarker:i,showLine:n,showFill:a,showGradientLine:o,showGradientFill:s,anyLine:n||o,anyFill:a||s}}function Cle(e,t,r){return e&&bp.isArrayOrTypedArray(e)?t:e>r?r:e}});var YN=Ae((Nor,Nle)=>{"use strict";var Mv=Jl(),qh=ei(),XN=Cc(),G3=$l(),Ple=_3(),jN=xp(),Nh=Mu(),NP=jl(),Rb=Xf(),zle=ple(),id=NN(),ZN=td(),Ole=ZN.LINE_SPACING,V3=ZN.FROM_TL,Ile=ZN.FROM_BR,Rle=gle(),Rut=WN(),Dle=DP(),U3=1,Dut=/^legend[0-9]*$/;Nle.exports=function(t,r){if(r)Fle(t,r);else{var n=t._fullLayout,i=n._legends,a=n._infolayer.selectAll('[class^="legend"]');a.each(function(){var l=Mv.select(this),f=l.attr("class"),c=f.split(" ")[0];c.match(Dut)&&i.indexOf(c)===-1&&l.remove()});for(var o=0;o1)}var p=n.hiddenlabels||[];if(!s&&(!n.showlegend||!u.length))return o.selectAll("."+i).remove(),n._topdefs.select("#"+a).remove(),XN.autoMargin(e,i);var _=qh.ensureSingle(o,"g",i,function(M){s||M.attr("pointer-events","all")}),b=qh.ensureSingleById(n._topdefs,"clipPath",a,function(M){M.append("rect")}),v=qh.ensureSingle(_,"rect","bg",function(M){M.attr("shape-rendering","crispEdges")});v.call(NP.stroke,r.bordercolor).call(NP.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px");var k=qh.ensureSingle(_,"g","scrollbox"),E=r.title;r._titleWidth=0,r._titleHeight=0;var A;E.text?(A=qh.ensureSingle(k,"text",i+"titletext"),A.attr("text-anchor","start").call(Nh.font,E.font).text(E.text),UP(A,k,e,r,U3)):k.selectAll("."+i+"titletext").remove();var L=qh.ensureSingle(_,"rect","scrollbar",function(M){M.attr(id.scrollBarEnterAttrs).call(NP.fill,id.scrollBarColor)}),x=k.selectAll("g.groups").data(u);x.enter().append("g").attr("class","groups"),x.exit().remove();var C=x.selectAll("g.traces").data(qh.identity);C.enter().append("g").attr("class","traces"),C.exit().remove(),C.style("opacity",function(M){var m=M[0].trace;return G3.traceIs(m,"pie-like")?p.indexOf(M[0].label)!==-1?.5:1:m.visible==="legendonly"?.5:1}).each(function(){Mv.select(this).call(But,e,r)}).call(Rut,e,r).each(function(){s||Mv.select(this).call(Out,e,i)}),qh.syncOrAsync([XN.previousPromises,function(){return Uut(e,x,C,r)},function(){var M=n._size,m=r.borderwidth,P=r.xref==="paper",T=r.yref==="paper";if(E.text&&Fut(A,r,m),!s){var B,F;P?B=M.l+M.w*r.x-V3[VP(r)]*r._width:B=n.width*r.x-V3[VP(r)]*r._width,T?F=M.t+M.h*(1-r.y)-V3[GP(r)]*r._effHeight:F=n.height*(1-r.y)-V3[GP(r)]*r._effHeight;var U=Vut(e,i,B,F);if(U)return;if(n.margin.autoexpand){var G=B,j=F;B=P?qh.constrain(B,0,n.width-r._width):G,F=T?qh.constrain(F,0,n.height-r._effHeight):j,B!==G&&qh.log("Constrain "+i+".x to make legend fit inside graph"),F!==j&&qh.log("Constrain "+i+".y to make legend fit inside graph")}Nh.setTranslate(_,B,F)}if(L.on(".drag",null),_.on("wheel",null),s||r._height<=r._maxHeight||e._context.staticPlot){var W=r._effHeight;s&&(W=r._height),v.attr({width:r._width-m,height:W-m,x:m/2,y:m/2}),Nh.setTranslate(k,0,0),b.select("rect").attr({width:r._width-2*m,height:W-2*m,x:m,y:m}),Nh.setClipUrl(k,a,e),Nh.setRect(L,0,0,0,0),delete r._scrollY}else{var N=Math.max(id.scrollBarMinHeight,r._effHeight*r._effHeight/r._height),H=r._effHeight-N-2*id.scrollBarMargin,re=r._height-r._effHeight,ae=H/re,be=Math.min(r._scrollY||0,re);v.attr({width:r._width-2*m+id.scrollBarWidth+id.scrollBarMargin,height:r._effHeight-m,x:m/2,y:m/2}),b.select("rect").attr({width:r._width-2*m+id.scrollBarWidth+id.scrollBarMargin,height:r._effHeight-2*m,x:m,y:m+be}),Nh.setClipUrl(k,a,e),Ue(be,N,ae),_.on("wheel",function(){be=qh.constrain(r._scrollY+Mv.event.deltaY/re*H,0,re),Ue(be,N,ae),be!==0&&be!==re&&Mv.event.preventDefault()});var ze,Ce,de,te=function(Je,nt,gt){var Nt=(gt-nt)/ae+Je;return qh.constrain(Nt,0,re)},ke=function(Je,nt,gt){var Nt=(nt-gt)/ae+Je;return qh.constrain(Nt,0,re)},Ee=Mv.behavior.drag().on("dragstart",function(){var Je=Mv.event.sourceEvent;Je.type==="touchstart"?ze=Je.changedTouches[0].clientY:ze=Je.clientY,de=be}).on("drag",function(){var Je=Mv.event.sourceEvent;Je.buttons===2||Je.ctrlKey||(Je.type==="touchmove"?Ce=Je.changedTouches[0].clientY:Ce=Je.clientY,be=te(de,ze,Ce),Ue(be,N,ae))});L.call(Ee);var Me=Mv.behavior.drag().on("dragstart",function(){var Je=Mv.event.sourceEvent;Je.type==="touchstart"&&(ze=Je.changedTouches[0].clientY,de=be)}).on("drag",function(){var Je=Mv.event.sourceEvent;Je.type==="touchmove"&&(Ce=Je.changedTouches[0].clientY,be=ke(de,ze,Ce),Ue(be,N,ae))});k.call(Me)}function Ue(Je,nt,gt){r._scrollY=e._fullLayout[i]._scrollY=Je,Nh.setTranslate(k,0,-Je),Nh.setRect(L,r._width,id.scrollBarMargin+Je*gt,id.scrollBarWidth,nt),b.select("rect").attr("y",m+Je)}if(e._context.edits.legendPosition){var De,ye,qe,ce;_.classed("cursor-move",!0),jN.init({element:_.node(),gd:e,prepFn:function(Je){if(Je.target!==L.node()){var nt=Nh.getTranslate(_);qe=nt.x,ce=nt.y}},moveFn:function(Je,nt){if(qe!==void 0&&ce!==void 0){var gt=qe+Je,Nt=ce+nt;Nh.setTranslate(_,gt,Nt),De=jN.align(gt,r._width,M.l,M.l+M.w,r.xanchor),ye=jN.align(Nt+r._height,-r._height,M.t+M.h,M.t,r.yanchor)}},doneFn:function(){if(De!==void 0&&ye!==void 0){var Je={};Je[i+".x"]=De,Je[i+".y"]=ye,G3.call("_guiRelayout",e,Je)}},clickFn:function(Je,nt){var gt=o.selectAll("g.traces").filter(function(){var Nt=this.getBoundingClientRect();return nt.clientX>=Nt.left&&nt.clientX<=Nt.right&&nt.clientY>=Nt.top&&nt.clientY<=Nt.bottom});gt.size()>0&&qle(e,_,gt,Je,nt)}})}}],e)}}function qP(e,t,r){var n=e[0],i=n.width,a=t.entrywidthmode,o=n.trace.legendwidth||t.entrywidth;return a==="fraction"?t._maxWidth*o:r+(o||i)}function qle(e,t,r,n,i){var a=r.data()[0][0].trace,o={event:i,node:r.node(),curveNumber:a.index,expandedIndex:a.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};a._group&&(o.group=a._group),G3.traceIs(a,"pie-like")&&(o.label=r.datum()[0].label);var s=Ple.triggerHandler(e,"plotly_legendclick",o);if(n===1){if(s===!1)return;t._clickTimeout=setTimeout(function(){e._fullLayout&&zle(r,e,n)},e._context.doubleClickDelay)}else if(n===2){t._clickTimeout&&clearTimeout(t._clickTimeout),e._legendMouseDownTime=0;var u=Ple.triggerHandler(e,"plotly_legenddoubleclick",o);u!==!1&&s!==!1&&zle(r,e,n)}}function But(e,t,r){var n=HP(r),i=e.data()[0][0],a=i.trace,o=G3.traceIs(a,"pie-like"),s=!r._inHover&&t._context.edits.legendText&&!o,u=r._maxNameLength,l,f;i.groupTitle?(l=i.groupTitle.text,f=i.groupTitle.font):(f=r.font,r.entries?l=i.text:(l=o?i.label:a.name,a._meta&&(l=qh.templateString(l,a._meta))));var c=qh.ensureSingle(e,"text",n+"text");c.attr("text-anchor","start").call(Nh.font,f).text(s?Ble(l,u):l);var h=r.indentation+r.itemwidth+id.itemGap*2;Rb.positionText(c,h,0),s?c.call(Rb.makeEditable,{gd:t,text:l}).call(UP,e,t,r).on("edit",function(d){this.text(Ble(d,u)).call(UP,e,t,r);var p=i.trace._fullInput||{},_={};return _.name=d,p._isShape?G3.call("_guiRelayout",t,"shapes["+a.index+"].name",_.name):G3.call("_guiRestyle",t,_,a.index)}):UP(c,e,t,r)}function Ble(e,t){var r=Math.max(4,t);if(e&&e.trim().length>=r/2)return e;e=e||"";for(var n=r-e.length;n>0;n--)e+=" ";return e}function Out(e,t,r){var n=t._context.doubleClickDelay,i,a=1,o=qh.ensureSingle(e,"rect",r+"toggle",function(s){t._context.staticPlot||s.style("cursor","pointer").attr("pointer-events","all"),s.call(NP.fill,"rgba(0,0,0,0)")});t._context.staticPlot||(o.on("mousedown",function(){i=new Date().getTime(),i-t._legendMouseDownTimen&&(a=Math.max(a-1,1)),qle(t,s,e,a,Mv.event)}}))}function UP(e,t,r,n,i){n._inHover&&e.attr("data-notex",!0),Rb.convertToTspans(e,r,function(){qut(t,r,n,i)})}function qut(e,t,r,n){var i=e.data()[0][0],a=i&&i.trace.showlegend;if(Array.isArray(a)&&(a=a[i.i]!==!1),!r._inHover&&i&&!a){e.remove();return}var o=e.select("g[class*=math-group]"),s=o.node(),u=HP(r);r||(r=t._fullLayout[u]);var l=r.borderwidth,f;n===U3?f=r.title.font:i.groupTitle?f=i.groupTitle.font:f=r.font;var c=f.size*Ole,h,d;if(s){var p=Nh.bBox(s);h=p.height,d=p.width,n===U3?Nh.setTranslate(o,l,l+h*.75):Nh.setTranslate(o,0,h*.25)}else{var _="."+u+(n===U3?"title":"")+"text",b=e.select(_),v=Rb.lineCount(b),k=b.node();if(h=c*v,d=k?Nh.bBox(k).width:0,n===U3)r.title.side==="left"&&(d+=id.itemGap*2),Rb.positionText(b,l+id.titlePad,l+c);else{var E=id.itemGap*2+r.indentation+r.itemwidth;i.groupTitle&&(E=id.itemGap,d-=r.indentation+r.itemwidth),Rb.positionText(b,E,-c*((v-1)/2-.3))}}n===U3?(r._titleWidth=d,r._titleHeight=h):(i.lineHeight=c,i.height=Math.max(h,16)+3,i.width=d)}function Nut(e){var t=0,r=0,n=e.title.side;return n&&(n.indexOf("left")!==-1&&(t=e._titleWidth),n.indexOf("top")!==-1&&(r=e._titleHeight)),[t,r]}function Uut(e,t,r,n){var i=e._fullLayout,a=HP(n);n||(n=i[a]);var o=i._size,s=Dle.isVertical(n),u=Dle.isGrouped(n),l=n.entrywidthmode==="fraction",f=n.borderwidth,c=2*f,h=id.itemGap,d=n.indentation+n.itemwidth+h*2,p=2*(f+h),_=GP(n),b=n.y<0||n.y===0&&_==="top",v=n.y>1||n.y===1&&_==="bottom",k=n.tracegroupgap,E={};let{orientation:A,yref:L}=n,{maxheight:x}=n,C=b||v||A!=="v"||L!=="paper";x||(x=C?.5:1);let M=C?i.height:o.h;n._maxHeight=Math.max(x>1?x:x*M,30);var m=0;n._width=0,n._height=0;var P=Nut(n);if(s)r.each(function(Ue){var De=Ue[0].height;Nh.setTranslate(this,f+P[0],f+P[1]+n._height+De/2+h),n._height+=De,n._width=Math.max(n._width,Ue[0].width)}),m=d+n._width,n._width+=h+d+c,n._height+=p,u&&(t.each(function(Ue,De){Nh.setTranslate(this,0,De*n.tracegroupgap)}),n._height+=(n._lgroupsLength-1)*n.tracegroupgap);else{var T=VP(n),B=n.x<0||n.x===0&&T==="right",F=n.x>1||n.x===1&&T==="left",U=v||b,G=i.width/2;n._maxWidth=Math.max(B?U&&T==="left"?o.l+o.w:G:F?U&&T==="right"?o.r+o.w:G:o.w,2*d);var j=0,W=0;r.each(function(Ue){var De=qP(Ue,n,d);j=Math.max(j,De),W+=De}),m=null;var N=0;if(u){var H=0,re=0,ae=0;t.each(function(){var Ue=0,De=0;Mv.select(this).selectAll("g.traces").each(function(qe){var ce=qP(qe,n,d),Je=qe[0].height;Nh.setTranslate(this,P[0],P[1]+f+h+Je/2+De),De+=Je,Ue=Math.max(Ue,ce),E[qe[0].trace.legendgroup]=Ue});var ye=Ue+h;re>0&&ye+f+re>n._maxWidth?(N=Math.max(N,re),re=0,ae+=H+k,H=De):H=Math.max(H,De),Nh.setTranslate(this,re,ae),re+=ye}),n._width=Math.max(N,re)+f,n._height=ae+H+p}else{var be=r.size(),ze=W+c+(be-1)*h=n._maxWidth&&(N=Math.max(N,ke),de=0,te+=Ce,n._height+=Ce,Ce=0),Nh.setTranslate(this,P[0]+f+de,P[1]+f+te+De/2+h),ke=de+ye+h,de+=qe,Ce=Math.max(Ce,De)}),ze?(n._width=de+c,n._height=Ce+p):(n._width=Math.max(N,ke)+c,n._height+=Ce+p)}}n._width=Math.ceil(Math.max(n._width+P[0],n._titleWidth+2*(f+id.titlePad))),n._height=Math.ceil(Math.max(n._height+P[1],n._titleHeight+2*(f+id.itemGap))),n._effHeight=Math.min(n._height,n._maxHeight);var Ee=e._context.edits,Me=Ee.legendText||Ee.legendPosition;r.each(function(Ue){var De=Mv.select(this).select("."+a+"toggle"),ye=Ue[0].height,qe=Ue[0].trace.legendgroup,ce=qP(Ue,n,d);u&&qe!==""&&(ce=E[qe]);var Je=Me?d:m||ce;!s&&!l&&(Je+=h/2),Nh.setRect(De,0,-ye/2,Je,ye)})}function Vut(e,t,r,n){var i=e._fullLayout,a=i[t],o=VP(a),s=GP(a),u=a.xref==="paper",l=a.yref==="paper";e._fullLayout._reservedMargin[t]={};var f=a.y<.5?"b":"t",c=a.x<.5?"l":"r",h={r:i.width-r,l:r+a._width,b:i.height-n,t:n+a._effHeight};if(u&&l)return XN.autoMargin(e,t,{x:a.x,y:a.y,l:a._width*V3[o],r:a._width*Ile[o],b:a._effHeight*Ile[s],t:a._effHeight*V3[s]});u?e._fullLayout._reservedMargin[t][f]=h[f]:l||a.orientation==="v"?e._fullLayout._reservedMargin[t][c]=h[c]:e._fullLayout._reservedMargin[t][f]=h[f]}function VP(e){return qh.isRightAnchor(e)?"right":qh.isCenterAnchor(e)?"center":"left"}function GP(e){return qh.isBottomAnchor(e)?"bottom":qh.isMiddleAnchor(e)?"middle":"top"}function HP(e){return e._id||"legend"}});var QN=Ae($N=>{"use strict";var Db=Jl(),Mg=ku(),Ule=cd(),ah=ei(),Gut=ah.pushUnique,KN=ah.strTranslate,Hut=ah.strRotate,Wut=_3(),T0=Xf(),jut=fle(),by=Mu(),vd=jl(),WP=xp(),wy=wu(),Xut=dd().zindexSeparator,W3=$l(),Mm=iv(),Fb=FM(),Zut=BN(),Yut=YN(),Yle=Fb.YANGLE,JN=Math.PI*Yle/180,Kut=1/Math.sin(JN),Jut=Math.cos(JN),$ut=Math.sin(JN),Uc=Fb.HOVERARROWSIZE,kf=Fb.HOVERTEXTPAD,Vle={box:!0,ohlc:!0,violin:!0,candlestick:!0},Qut={scatter:!0,scattergl:!0,splom:!0};function Gle(e,t){return e.distance-t.distance}$N.hover=function(t,r,n,i){t=ah.getGraphDiv(t);var a=r.target;ah.throttle(t._fullLayout._uid+Fb.HOVERID,Fb.HOVERMINTIME,function(){eft(t,r,n,i,a)})};$N.loneHover=function(t,r){var n=!0;Array.isArray(t)||(n=!1,t=[t]);var i=r.gd,a=eue(i),o=tue(i),s=t.map(function(b){var v=b._x0||b.x0||b.x||0,k=b._x1||b.x1||b.x||0,E=b._y0||b.y0||b.y||0,A=b._y1||b.y1||b.y||0,L=b.eventData;if(L){var x=Math.min(v,k),C=Math.max(v,k),M=Math.min(E,A),m=Math.max(E,A),P=b.trace;if(W3.traceIs(P,"gl3d")){var T=i._fullLayout[P.scene]._scene.container,B=T.offsetLeft,F=T.offsetTop;x+=B,C+=B,M+=F,m+=F}L.bbox={x0:x+o,x1:C+o,y0:M+a,y1:m+a},r.inOut_bbox&&r.inOut_bbox.push(L.bbox)}else L=!1;return{color:b.color||vd.defaultLine,x0:b.x0||b.x||0,x1:b.x1||b.x||0,y0:b.y0||b.y||0,y1:b.y1||b.y||0,xLabel:b.xLabel,yLabel:b.yLabel,zLabel:b.zLabel,text:b.text,name:b.name,idealAlign:b.idealAlign,borderColor:b.borderColor,fontFamily:b.fontFamily,fontSize:b.fontSize,fontColor:b.fontColor,fontWeight:b.fontWeight,fontStyle:b.fontStyle,fontVariant:b.fontVariant,nameLength:b.nameLength,textAlign:b.textAlign,trace:b.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:b.hovertemplate||!1,hovertemplateLabels:b.hovertemplateLabels||!1,eventData:L}}),u=!1,l=Jle(s,{gd:i,hovermode:"closest",rotateLabels:u,bgColor:r.bgColor||vd.background,container:Db.select(r.container),outerContainer:r.outerContainer||r.container}),f=l.hoverLabels,c=5,h=0,d=0;f.sort(function(b,v){return b.y0-v.y0}).each(function(b,v){var k=b.y0-b.by/2;k-cC[0]._length||ce<0||ce>M[0]._length)return WP.unhoverRaw(e,t)}if(t.pointerX=qe+C[0]._offset,t.pointerY=ce+M[0]._offset,"xval"in t?j=Mm.flat(a,t.xval):j=Mm.p2c(C,qe),"yval"in t?W=Mm.flat(a,t.yval):W=Mm.p2c(M,ce),!Mg(j[0])||!Mg(W[0]))return ah.warn("Fx.hover failed",t,e),WP.unhoverRaw(e,t)}var gt=1/0;function Nt(ni,$i){for(H=0;HEe&&(U.splice(0,Ee),gt=U[0].distance),c&&F!==0&&U.length===0){ke.distance=F,ke.index=!1;var Rt=ae._module.hoverPoints(ke,de,te,"closest",{hoverLayer:s._hoverlayer});if(Rt&&(Rt=Rt.filter(function(Nr){return Nr.spikeDistance<=F})),Rt&&Rt.length){var yt,Gt=Rt.filter(function(Nr){return Nr.xa.showspikes&&Nr.xa.spikesnap!=="hovered data"});if(Gt.length){var Wt=Gt[0];Mg(Wt.x0)&&Mg(Wt.y0)&&(yt=Ke(Wt),(!Me.vLinePoint||Me.vLinePoint.spikeDistance>yt.spikeDistance)&&(Me.vLinePoint=yt))}var xr=Rt.filter(function(Nr){return Nr.ya.showspikes&&Nr.ya.spikesnap!=="hovered data"});if(xr.length){var Lr=xr[0];Mg(Lr.x0)&&Mg(Lr.y0)&&(yt=Ke(Lr),(!Me.hLinePoint||Me.hLinePoint.spikeDistance>yt.spikeDistance)&&(Me.hLinePoint=yt))}}}}}Nt();function at(ni,$i,Qi){for(var si=null,Ai=1/0,Ni,Rt=0;Rtni.trace.index===He.trace.index):U=[He];var it=U.length,et=Zle("x",He,s),It=Zle("y",He,s);Nt(et,It);var Yt=[],cr={},_r=0,yr=function(ni){var $i=Vle[ni.trace.type]?Kle(ni):ni.trace.index;if(!cr[$i])_r++,cr[$i]=_r,Yt.push(ni);else{var Qi=cr[$i]-1,si=Yt[Qi];Qi>0&&Math.abs(ni.distance)it-1;Ut--)yr(U[Ut]);U=Yt,Dt()}var Re=e._hoverdata,xe=[],Oe=eue(e),Ie=tue(e);for(let ni of U){var Fe=Mm.makeEventData(ni,ni.trace,ni.cd);if(ni.hovertemplate!==!1){var ft=!1;ni.cd[ni.index]&&ni.cd[ni.index].ht&&(ft=ni.cd[ni.index].ht),ni.hovertemplate=ft||ni.trace.hovertemplate||!1}if(ni.xa&&ni.ya){var ge=ni.x0+ni.xa._offset,fe=ni.x1+ni.xa._offset,pe=ni.y0+ni.ya._offset,dt=ni.y1+ni.ya._offset,Pt=Math.min(ge,fe),zt=Math.max(ge,fe),rr=Math.min(pe,dt),Gr=Math.max(pe,dt);Fe.bbox={x0:Pt+Ie,x1:zt+Ie,y0:rr+Oe,y1:Gr+Oe}}ni.eventData=[Fe],xe.push(Fe)}e._hoverdata=xe;var Br=h==="y"&&(G.length>1||U.length>1)||h==="closest"&&Ue&&U.length>1,Er=vd.combine(s.plot_bgcolor||vd.background,s.paper_bgcolor),Rr=Jle(U,{gd:e,hovermode:h,rotateLabels:Br,bgColor:Er,container:s._hoverlayer,outerContainer:s._paper.node(),commonLabelOpts:s.hoverlabel,hoverdistance:s.hoverdistance}),pi=Rr.hoverLabels;if(Mm.isUnifiedHover(h)||(rft(pi,Br,s,Rr.commonLabelBoundingBox),Qle(pi,Br,s._invScaleX,s._invScaleY)),i&&i.tagName){var Di=W3.getComponentMethod("annotations","hasClickToShow")(e,xe);jut(Db.select(i),Di?"pointer":"")}!i||n||!aft(e,t,Re)||(Re&&e.emit("plotly_unhover",{event:t,points:Re}),e.emit("plotly_hover",{event:t,points:e._hoverdata,xaxes:C,yaxes:M,xvals:j,yvals:W}))}function Kle(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var tft=/([\s\S]*)<\/extra>/;function Jle(e,t){var r=t.gd,n=r._fullLayout,i=t.hovermode,a=t.rotateLabels,o=t.bgColor,s=t.container,u=t.outerContainer,l=t.commonLabelOpts||{};if(e.length===0)return[[]];var f=t.fontFamily||Fb.HOVERFONT,c=t.fontSize||Fb.HOVERFONTSIZE,h=t.fontWeight||n.font.weight,d=t.fontStyle||n.font.style,p=t.fontVariant||n.font.variant,_=t.fontTextcase||n.font.textcase,b=t.fontLineposition||n.font.lineposition,v=t.fontShadow||n.font.shadow,k=e[0],E=k.xa,A=k.ya,L=i.charAt(0),x=L+"Label",C=k[x];if(C===void 0&&E.type==="multicategory")for(var M=0;Mn.width-Oe&&(Ie=n.width-Oe),He.attr("d","M"+(Ut-Ie)+",0L"+(Ut-Ie+Uc)+","+xe+Uc+"H"+Oe+"v"+xe+(kf*2+yr.height)+"H"+-Oe+"V"+xe+Uc+"H"+(Ut-Ie-Uc)+"Z"),Ut=Ie,H.minX=Ut-Oe,H.maxX=Ut+Oe,E.side==="top"?(H.minY=Re-(kf*2+yr.height),H.maxY=Re-kf):(H.minY=Re+kf,H.maxY=Re+(kf*2+yr.height))}else{var Fe,ft,ge;A.side==="right"?(Fe="start",ft=1,ge="",Ut=E._offset+E._length):(Fe="end",ft=-1,ge="-",Ut=E._offset),Re=A._offset+(k.y0+k.y1)/2,it.attr("text-anchor",Fe),He.attr("d","M0,0L"+ge+Uc+","+Uc+"V"+(kf+yr.height/2)+"h"+ge+(kf*2+yr.width)+"V-"+(kf+yr.height/2)+"H"+ge+Uc+"V-"+Uc+"Z"),H.minY=Re-(kf+yr.height/2),H.maxY=Re+(kf+yr.height/2),A.side==="right"?(H.minX=Ut+Uc,H.maxX=Ut+Uc+(kf*2+yr.width)):(H.minX=Ut-Uc-(kf*2+yr.width),H.maxX=Ut-Uc);var fe=yr.height/2,pe=P-yr.top-fe,dt="clip"+n._uid+"commonlabel"+A._id,Pt;if(UtHe.hoverinfo!=="none");if(Ye.length===0)return[];var re=n.hoverlabel,ae=re.font,be=Ye[0],ze=((i==="x unified"?be.xa:be.ya).unifiedhovertitle||{}).text,Ce=ze?ah.hovertemplateString({data:i==="x unified"?[{xa:be.xa,x:be.xVal}]:[{ya:be.ya,y:be.yVal}],fallback:be.trace.hovertemplatefallback,locale:n._d3locale,template:ze}):C,de={showlegend:!0,legend:{title:{text:Ce,font:ae},font:ae,bgcolor:re.bgcolor,bordercolor:re.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:n.legend?n.legend.traceorder:void 0,orientation:"v"}},te={font:ae};Zut(de,te,r._fullData);var ke=te.legend;ke.entries=[];for(var Ee=0;Ee=0?ot=Dt:Zt+nt=0?ot=Zt:Et+nt=0?Tt=wt:St+gt=0?Tt=St:Te+gt=0,(Ye.idealAlign==="top"||!Gr)&&Br?(ge-=pe/2,Ye.anchor="end"):Gr?(ge+=pe/2,Ye.anchor="start"):Ye.anchor="middle",Ye.crossPos=ge;else{if(Ye.pos=ge,Gr=ft+fe/2+rr<=T,Br=ft-fe/2-rr>=0,(Ye.idealAlign==="left"||!Gr)&&Br)ft-=fe/2,Ye.anchor="end";else if(Gr)ft+=fe/2,Ye.anchor="start";else{Ye.anchor="middle";var Er=rr/2,Rr=ft+Er-T,pi=ft-Er;Rr>0&&(ft-=Rr),pi<0&&(ft+=-pi)}Ye.crossPos=ft}Re.attr("text-anchor",Ye.anchor),Oe&&xe.attr("text-anchor",Ye.anchor),He.attr("transform",KN(ft,ge)+(a?Hut(Yle):""))}),{hoverLabels:vt,commonLabelBoundingBox:H}}function Hle(e,t,r,n,i,a){var c,h;var o="",s="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=ah.templateString(e.name,e.trace._meta)),o=Xle(e.name,e.nameLength));var u=r.charAt(0),l=u==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(s+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(s+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(s+=(s?"z: ":"")+e.zLabel)):t&&e[u+"Label"]===i?s=e[l+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(s=e.yLabel):e.yLabel===void 0?s=e.xLabel:s="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(s+=(s?"
":"")+e.text),e.extraText!==void 0&&(s+=(s?"
":"")+e.extraText),a&&s===""&&!e.hovertemplate&&(o===""&&a.remove(),s=o),(h=(c=e.trace)==null?void 0:c.hoverlabel)!=null&&h.split&&(e.hovertemplate="");let{hovertemplate:f=!1}=e;if(f){let d=e.hovertemplateLabels||e;e[u+"Label"]!==i&&(d[u+"other"]=d[u+"Val"],d[u+"otherLabel"]=d[u+"Label"]),s=ah.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:n._d3locale,template:f}),s=s.replace(tft,(p,_)=>(o=Xle(_,e.nameLength),""))}return[s,o]}function rft(e,t,r,n){var i=t?"xa":"ya",a=t?"ya":"xa",o=0,s=1,u=e.size(),l=new Array(u),f=0,c=n.minX,h=n.maxX,d=n.minY,p=n.maxY,_=function(j){return j*r._invScaleX},b=function(j){return j*r._invScaleY};e.each(function(j){var W=j[i],N=j[a],H=W._id.charAt(0)==="x",re=W.range;f===0&&re&&re[0]>re[1]!==H&&(s=-1);var ae=0,be=H?r.width:r.height;if(r.hovermode==="x"||r.hovermode==="y"){var ze=$le(j,t),Ce=j.anchor,de=Ce==="end"?-1:1,te,ke;if(Ce==="middle")te=j.crossPos+(H?b(ze.y-j.by/2):_(j.bx/2+j.tx2width/2)),ke=te+(H?b(j.by):_(j.bx));else if(H)te=j.crossPos+b(Uc+ze.y)-b(j.by/2-Uc),ke=te+b(j.by);else{var Ee=_(de*Uc+ze.x),Me=Ee+_(de*j.bx);te=j.crossPos+Math.min(Ee,Me),ke=j.crossPos+Math.max(Ee,Me)}H?d!==void 0&&p!==void 0&&Math.min(ke,p)-Math.max(te,d)>1&&(N.side==="left"?(ae=N._mainLinePosition,be=r.width):be=N._mainLinePosition):c!==void 0&&h!==void 0&&Math.min(ke,h)-Math.max(te,c)>1&&(N.side==="top"?(ae=N._mainLinePosition,be=r.height):be=N._mainLinePosition)}l[f++]=[{datum:j,traceIndex:j.trace.index,dp:0,pos:j.pos,posref:j.posref,size:j.by*(H?Kut:1)/2,pmin:ae,pmax:be}]}),l.sort(function(j,W){return j[0].posref-W[0].posref||s*(W[0].traceIndex-j[0].traceIndex)});var v,k,E,A,L,x,C;function M(j){var W=j[0],N=j[j.length-1];if(k=W.pmin-W.pos-W.dp+W.size,E=N.pos+N.dp+N.size-W.pmax,k>.01){for(L=j.length-1;L>=0;L--)j[L].dp+=k;v=!1}if(!(E<.01)){if(k<-.01){for(L=j.length-1;L>=0;L--)j[L].dp-=E;v=!1}if(v){var H=0;for(A=0;AW.pmax&&H++;for(A=j.length-1;A>=0&&!(H<=0);A--)x=j[A],x.pos>W.pmax-1&&(x.del=!0,H--);for(A=0;A=0;L--)j[L].dp-=E;for(A=j.length-1;A>=0&&!(H<=0);A--)x=j[A],x.pos+x.dp+x.size>W.pmax&&(x.del=!0,H--)}}}for(;!v&&o<=u;){for(o++,v=!0,A=0;A.01){for(L=P.length-1;L>=0;L--)P[L].dp+=k;for(m.push.apply(m,P),l.splice(A+1,1),C=0,L=m.length-1;L>=0;L--)C+=m[L].dp;for(E=C/m.length,L=m.length-1;L>=0;L--)m[L].dp-=E;v=!1}else A++}l.forEach(M)}for(A=l.length-1;A>=0;A--){var F=l[A];for(L=F.length-1;L>=0;L--){var U=F[L],G=U.datum;G.offset=U.dp,G.del=U.del}}}function $le(e,t){var r=0,n=e.offset;return t&&(n*=-$ut,r=e.offset*Jut),{x:r,y:n}}function ift(e){var t={start:1,end:-1,middle:0}[e.anchor],r=t*(Uc+kf),n=r+t*(e.txwidth+kf),i=e.anchor==="middle";return i&&(r-=e.tx2width/2,n+=e.txwidth/2+kf),{alignShift:t,textShiftX:r,text2ShiftX:n}}function Qle(e,t,r,n){var i=function(o){return o*r},a=function(o){return o*n};e.each(function(o){var s=Db.select(this);if(o.del)return s.remove();var u=s.select("text.nums"),l=o.anchor,f=l==="end"?-1:1,c=ift(o),h=$le(o,t),d=h.x,p=h.y,_=l==="middle",b="hoverlabel"in o.trace?o.trace.hoverlabel.showarrow:!0,v;_?v="M-"+i(o.bx/2+o.tx2width/2)+","+a(p-o.by/2)+"h"+i(o.bx)+"v"+a(o.by)+"h-"+i(o.bx)+"Z":b?v="M0,0L"+i(f*Uc+d)+","+a(Uc+p)+"v"+a(o.by/2-Uc)+"h"+i(f*o.bx)+"v-"+a(o.by)+"H"+i(f*Uc+d)+"V"+a(p-Uc)+"Z":v="M"+i(f*Uc+d)+","+a(p-o.by/2)+"h"+i(f*o.bx)+"v"+a(o.by)+"h"+i(-f*o.bx)+"Z",s.select("path").attr("d",v);var k=d+c.textShiftX,E=p+o.ty0-o.by/2+kf,A=o.textAlign||"auto";A!=="auto"&&(A==="left"&&l!=="start"?(u.attr("text-anchor","start"),k=_?-o.bx/2-o.tx2width/2+kf:-o.bx-kf):A==="right"&&l!=="end"&&(u.attr("text-anchor","end"),k=_?o.bx/2-o.tx2width/2-kf:o.bx+kf)),u.call(T0.positionText,i(k),a(E)),o.tx2width&&(s.select("text.name").call(T0.positionText,i(c.text2ShiftX+c.alignShift*kf+d),a(p+o.ty0-o.by/2+kf)),s.select("rect").call(by.setRect,i(c.text2ShiftX+(c.alignShift-1)*o.tx2width/2+d),a(p-o.by/2-1),i(o.tx2width),a(o.by+2)))})}function nft(e,t){var r=e.index,n=e.trace||{},i=e.cd[0],a=e.cd[r]||{};function o(h){return h||Mg(h)&&h===0}var s=Array.isArray(r)?function(h,d){var p=ah.castOption(i,r,h);return o(p)?p:ah.extractOption({},n,"",d)}:function(h,d){return ah.extractOption(a,n,h,d)};function u(h,d,p){var _=s(d,p);o(_)&&(e[h]=_)}if(u("hoverinfo","hi","hoverinfo"),u("bgcolor","hbg","hoverlabel.bgcolor"),u("borderColor","hbc","hoverlabel.bordercolor"),u("fontFamily","htf","hoverlabel.font.family"),u("fontSize","hts","hoverlabel.font.size"),u("fontColor","htc","hoverlabel.font.color"),u("fontWeight","htw","hoverlabel.font.weight"),u("fontStyle","hty","hoverlabel.font.style"),u("fontVariant","htv","hoverlabel.font.variant"),u("nameLength","hnl","hoverlabel.namelength"),u("textAlign","hta","hoverlabel.align"),e.posref=t==="y"||t==="closest"&&n.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=ah.constrain(e.x0,0,e.xa._length),e.x1=ah.constrain(e.x1,0,e.xa._length),e.y0=ah.constrain(e.y0,0,e.ya._length),e.y1=ah.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:wy.hoverLabelText(e.xa,e.xLabelVal,n.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:wy.hoverLabelText(e.ya,e.yLabelVal,n.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var l=wy.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+l+" / -"+wy.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+l,t==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var f=wy.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+f+" / -"+wy.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+f,t==="y"&&(e.distance+=1)}var c=e.hoverinfo||e.trace.hoverinfo;return c&&c!=="all"&&(c=Array.isArray(c)?c:c.split("+"),c.indexOf("x")===-1&&(e.xLabel=void 0),c.indexOf("y")===-1&&(e.yLabel=void 0),c.indexOf("z")===-1&&(e.zLabel=void 0),c.indexOf("text")===-1&&(e.text=void 0),c.indexOf("name")===-1&&(e.name=void 0)),e}function Wle(e,t,r){var n=r.container,i=r.fullLayout,a=i._size,o=r.event,s=!!t.hLinePoint,u=!!t.vLinePoint,l,f;if(n.selectAll(".spikeline").remove(),!!(u||s)){var c=vd.combine(i.plot_bgcolor,i.paper_bgcolor);if(s){var h=t.hLinePoint,d,p;l=h&&h.xa,f=h&&h.ya;var _=f.spikesnap;_==="cursor"?(d=o.pointerX,p=o.pointerY):(d=l._offset+h.x,p=f._offset+h.y);var b=Ule.readability(h.color,c)<1.5?vd.contrast(c):h.color,v=f.spikemode,k=f.spikethickness,E=f.spikecolor||b,A=wy.getPxPosition(e,f),L,x;if(v.indexOf("toaxis")!==-1||v.indexOf("across")!==-1){if(v.indexOf("toaxis")!==-1&&(L=A,x=d),v.indexOf("across")!==-1){var C=f._counterDomainMin,M=f._counterDomainMax;f.anchor==="free"&&(C=Math.min(C,f.position),M=Math.max(M,f.position)),L=a.l+C*a.w,x=a.l+M*a.w}n.insert("line",":first-child").attr({x1:L,x2:x,y1:p,y2:p,"stroke-width":k,stroke:E,"stroke-dasharray":by.dashStyle(f.spikedash,k)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:L,x2:x,y1:p,y2:p,"stroke-width":k+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}v.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:A+(f.side!=="right"?k:-k),cy:p,r:k,fill:E}).classed("spikeline",!0)}if(u){var m=t.vLinePoint,P,T;l=m&&m.xa,f=m&&m.ya;var B=l.spikesnap;B==="cursor"?(P=o.pointerX,T=o.pointerY):(P=l._offset+m.x,T=f._offset+m.y);var F=Ule.readability(m.color,c)<1.5?vd.contrast(c):m.color,U=l.spikemode,G=l.spikethickness,j=l.spikecolor||F,W=wy.getPxPosition(e,l),N,H;if(U.indexOf("toaxis")!==-1||U.indexOf("across")!==-1){if(U.indexOf("toaxis")!==-1&&(N=W,H=T),U.indexOf("across")!==-1){var re=l._counterDomainMin,ae=l._counterDomainMax;l.anchor==="free"&&(re=Math.min(re,l.position),ae=Math.max(ae,l.position)),N=a.t+(1-ae)*a.h,H=a.t+(1-re)*a.h}n.insert("line",":first-child").attr({x1:P,x2:P,y1:N,y2:H,"stroke-width":G,stroke:j,"stroke-dasharray":by.dashStyle(l.spikedash,G)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:P,x2:P,y1:N,y2:H,"stroke-width":G+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}U.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:P,cy:W-(l.side!=="top"?G:-G),r:G,fill:j}).classed("spikeline",!0)}}}function aft(e,t,r){if(!r||r.length!==e._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var i=r[n],a=e._hoverdata[n];if(i.curveNumber!==a.curveNumber||String(i.pointNumber)!==String(a.pointNumber)||String(i.pointNumbers)!==String(a.pointNumbers)||i.binNumber!==a.binNumber)return!0}return!1}function jle(e,t){return!t||t.vLinePoint!==e._spikepoints.vLinePoint||t.hLinePoint!==e._spikepoints.hLinePoint}function Xle(e,t){return T0.plainText(e||"",{len:t,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function oft(e,t){for(var r=t.charAt(0),n=[],i=[],a=[],o=0;oe.offsetTop+e.clientTop,tue=e=>e.offsetLeft+e.clientLeft;function H3(e,t){var r=e._fullLayout,n=t.getBoundingClientRect(),i=n.left,a=n.top,o=i+n.width,s=a+n.height,u=ah.apply3DTransform(r._invTransform)(i,a),l=ah.apply3DTransform(r._invTransform)(o,s),f=u[0],c=u[1],h=l[0],d=l[1];return{x:f,y:c,width:h-f,height:d-c,top:Math.min(c,d),left:Math.min(f,h),right:Math.max(f,h),bottom:Math.max(c,d)}}});var h5=Ae((Vor,rue)=>{"use strict";var sft=ei(),lft=jl(),uft=iv().isUnifiedHover;rue.exports=function(t,r,n,i){i=i||{};var a=r.legend;function o(s){i.font[s]||(i.font[s]=a?r.legend.font[s]:r.font[s])}r&&uft(r.hovermode)&&(i.font||(i.font={}),o("size"),o("family"),o("color"),o("weight"),o("style"),o("variant"),a?(i.bgcolor||(i.bgcolor=lft.combine(r.legend.bgcolor,r.paper_bgcolor)),i.bordercolor||(i.bordercolor=r.legend.bordercolor)):i.bgcolor||(i.bgcolor=r.paper_bgcolor)),n("hoverlabel.bgcolor",i.bgcolor),n("hoverlabel.bordercolor",i.bordercolor),n("hoverlabel.namelength",i.namelength),n("hoverlabel.showarrow",i.showarrow),sft.coerceFont(n,"hoverlabel.font",i.font),n("hoverlabel.align",i.align)}});var nue=Ae((Gor,iue)=>{"use strict";var fft=ei(),cft=h5(),hft=q1();iue.exports=function(t,r){function n(i,a){return fft.coerce(t,r,hft,i,a)}cft(t,r,n)}});var sue=Ae((Hor,oue)=>{"use strict";var aue=ei(),dft=a3(),pft=h5();oue.exports=function(t,r,n,i){function a(s,u){return aue.coerce(t,r,dft,s,u)}var o=aue.extendFlat({},i.hoverlabel);r.hovertemplate&&(o.namelength=-1),pft(t,r,a,o)}});var e7=Ae((Wor,lue)=>{"use strict";var vft=ei(),mft=q1();lue.exports=function(t,r){function n(i,a){return r[i]!==void 0?r[i]:vft.coerce(t,r,mft,i,a)}return n("clickmode"),n("hoversubplots"),n("hovermode")}});var cue=Ae((jor,fue)=>{"use strict";var uue=ei(),yft=q1(),gft=e7(),_ft=h5();fue.exports=function(t,r){function n(f,c){return uue.coerce(t,r,yft,f,c)}var i=gft(t,r);i&&(n("hoverdistance"),n("spikedistance"));var a=n("dragmode");a==="select"&&n("selectdirection");var o=r._has("mapbox"),s=r._has("map"),u=r._has("geo"),l=r._basePlotModules.length;r.dragmode==="zoom"&&((o||s||u)&&l===1||(o||s)&&u&&l===2)&&(r.dragmode="pan"),_ft(t,r,n),uue.coerceFont(n,"hoverlabel.grouptitlefont",r.hoverlabel.font)}});var pue=Ae((Xor,due)=>{"use strict";var t7=ei(),hue=$l();due.exports=function(t){var r=t.calcdata,n=t._fullLayout;function i(l){return function(f){return t7.coerceHoverinfo({hoverinfo:f},{_module:l._module},n)}}for(var a=0;a{"use strict";var bft=$l(),wft=QN().hover;vue.exports=function(t,r,n){var i=bft.getComponentMethod("annotations","onClick")(t,t._hoverdata);n!==void 0&&wft(t,r,n,!0);function a(){t.emit("plotly_click",{points:t._hoverdata,event:r})}t._hoverdata&&r&&r.target&&(i&&i.then?i.then(a):a(),r.stopImmediatePropagation&&r.stopImmediatePropagation())}});var Xc=Ae((Yor,_ue)=>{"use strict";var Tft=Jl(),jP=ei(),Aft=xp(),d5=iv(),yue=q1(),gue=QN();_ue.exports={moduleType:"component",name:"fx",constants:FM(),schema:{layout:yue},attributes:a3(),layoutAttributes:yue,supplyLayoutGlobalDefaults:nue(),supplyDefaults:sue(),supplyLayoutDefaults:cue(),calc:pue(),getDistanceFunction:d5.getDistanceFunction,getClosest:d5.getClosest,inbox:d5.inbox,quadrature:d5.quadrature,appendArrayPointValue:d5.appendArrayPointValue,castHoverOption:Mft,castHoverinfo:Eft,hover:gue.hover,unhover:Aft.unhover,loneHover:gue.loneHover,loneUnhover:Sft,click:mue()};function Sft(e){var t=jP.isD3Selection(e)?e:Tft.select(e);t.selectAll("g.hovertext").remove(),t.selectAll(".spikeline").remove()}function Mft(e,t,r){return jP.castOption(e,t,"hoverlabel."+r)}function Eft(e,t,r){function n(i){return jP.coerceHoverinfo({hoverinfo:i},{_module:e._module},t)}return jP.castOption(e,r,"hoverinfo",n)}});var Em=Ae(Eg=>{"use strict";Eg.selectMode=function(e){return e==="lasso"||e==="select"};Eg.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Eg.openMode=function(e){return e==="drawline"||e==="drawopenpath"};Eg.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Eg.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};Eg.selectingOrDrawing=function(e){return Eg.freeMode(e)||Eg.rectMode(e)}});var p5=Ae((Jor,xue)=>{"use strict";xue.exports=function(t){var r=t._fullLayout;r._glcanvas&&r._glcanvas.size()&&r._glcanvas.each(function(n){n.regl&&n.regl.clear({color:!0,depth:!0})})}});var XP=Ae(($or,bue)=>{"use strict";bue.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var YP=Ae((Qor,wue)=>{"use strict";var ZP=32;wue.exports={CIRCLE_SIDES:ZP,i000:0,i090:ZP/4,i180:ZP/2,i270:ZP/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var KP=Ae((esr,Aue)=>{"use strict";var kft=ei().strTranslate;function Tue(e,t){switch(e.type){case"log":return e.p2d(t);case"date":return e.p2r(t,0,e.calendar);default:return e.p2r(t)}}function Cft(e,t){switch(e.type){case"log":return e.d2p(t);case"date":return e.r2p(t,0,e.calendar);default:return e.r2p(t)}}function Lft(e){var t=e._id.charAt(0)==="y"?1:0;return function(r){return Tue(e,r[t])}}function Pft(e){return kft(e.xaxis._offset,e.yaxis._offset)}Aue.exports={p2r:Tue,r2p:Cft,axValue:Lft,getTransform:Pft}});var u_=Ae(kg=>{"use strict";var zft=e5(),Eue=YP(),j3=Eue.CIRCLE_SIDES,r7=Eue.SQRT2,kue=KP(),Sue=kue.p2r,Mue=kue.r2p,Ift=[0,3,4,5,6,1,2],Rft=[0,3,4,1,2];kg.writePaths=function(e){var t=e.length;if(!t)return"M0,0Z";for(var r="",n=0;n0&&u{"use strict";var Cue=Wc(),Rue=Em(),Dft=Rue.drawMode,Fft=Rue.openMode,X3=YP(),Lue=X3.i000,Pue=X3.i090,zue=X3.i180,Iue=X3.i270,Bft=X3.cos45,Oft=X3.sin45,Due=KP(),$P=Due.p2r,f_=Due.r2p,qft=Q1(),Nft=qft.clearOutline,QP=u_(),Uft=QP.readPaths,Vft=QP.writePaths,Gft=QP.ellipseOver,Hft=QP.fixDatesForPaths;function Wft(e,t){if(e.length){var r=e[0][0];if(r){var n=t.gd,i=t.isActiveShape,a=t.dragmode,o=(n.layout||{}).shapes||[];if(!Dft(a)&&i!==void 0){var s=n._fullLayout._activeShapeIndex;if(s{"use strict";var jft=Em(),Xft=jft.selectMode,Zft=Q1(),Yft=Zft.clearOutline,i7=u_(),Kft=i7.readPaths,Jft=i7.writePaths,$ft=i7.fixDatesForPaths;Oue.exports=function(t,r){if(t.length){var n=t[0][0];if(n){var i=n.getAttribute("d"),a=r.gd,o=a._fullLayout.newselection,s=r.plotinfo,u=s.xaxis,l=s.yaxis,f=r.isActiveSelection,c=r.dragmode,h=(a.layout||{}).selections||[];if(!Xft(c)&&f!==void 0){var d=a._fullLayout._activeSelectionIndex;if(d{"use strict";que.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var c_=Ae(Fd=>{"use strict";var Bb=m5(),Nue=ei(),tz=wu();Fd.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(t){return t}};Fd.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(t){return t}};Fd.decodeDate=function(e){return function(t){return t.replace&&(t=t.replace("_"," ")),e(t)}};Fd.encodeDate=function(e){return function(t){return e(t).replace(" ","_")}};Fd.extractPathCoords=function(e,t,r){var n=[],i=e.match(Bb.segmentRE);return i.forEach(function(a){var o=t[a.charAt(0)].drawn;if(o!==void 0){var s=a.slice(1).match(Bb.paramRE);if(!(!s||s.lengthd&&(_="X"),_});return l>d&&(p=p.replace(/[\s,]*X.*/,""),Nue.log("Ignoring extra params in segment "+u)),f+p})}function y5(e,t){t=t||0;var r=0;return t&&e&&(e.type==="category"||e.type==="multicategory")&&(r=(e.r2p(1)-e.r2p(0))*t),r}});var o7=Ae((osr,Hue)=>{"use strict";var ect=ei(),Z3=wu(),Uue=Xf(),Vue=Mu(),tct=u_().readPaths,a7=c_(),rct=a7.getPathString,Gue=ML(),ict=td().FROM_TL;Hue.exports=function(t,r,n,i){if(i.selectAll(".shape-label").remove(),!!(n.label.text||n.label.texttemplate)){var a;if(n.label.texttemplate){var o={};if(n.type!=="path"){var s=Z3.getFromId(t,n.xref),u=Z3.getFromId(t,n.yref);for(var l in Gue){var f=Gue[l](n,s,u);f!==void 0&&(o[l]=f)}}a=ect.texttemplateStringForShapes({data:[o],fallback:n.label.texttemplatefallback,locale:t._fullLayout._d3locale,template:n.label.texttemplate})}else a=n.label.text;var c={"data-index":r},h=n.label.font,d={"data-notex":1},p=i.append("g").attr(c).classed("shape-label",!0),_=p.append("text").attr(d).classed("shape-label-text",!0).text(a),b,v,k,E;if(n.path){var A=rct(t,n),L=tct(A,t);b=1/0,k=1/0,v=-1/0,E=-1/0;for(var x=0;x=e?i=t-n:i=n-t,-180/Math.PI*Math.atan2(i,a)}function act(e,t,r,n,i,a,o){var s=i.label.textposition,u=i.label.textangle,l=i.label.padding,f=i.type,c=Math.PI/180*a,h=Math.sin(c),d=Math.cos(c),p=i.label.xanchor,_=i.label.yanchor,b,v,k,E;if(f==="line"){s==="start"?(b=e,v=t):s==="end"?(b=r,v=n):(b=(e+r)/2,v=(t+n)/2),p==="auto"&&(s==="start"?u==="auto"?r>e?p="left":re?p="right":re?p="right":re?p="left":r{"use strict";var oct=ei(),sct=oct.strTranslate,Wue=xp(),Zue=Em(),lct=Zue.drawMode,Yue=Zue.selectMode,Kue=$l(),jue=jl(),iz=YP(),uct=iz.i000,fct=iz.i090,cct=iz.i180,hct=iz.i270,dct=Q1(),Jue=dct.clearOutlineControllers,l7=u_(),rz=l7.pointsOnRectangle,s7=l7.pointsOnEllipse,pct=l7.writePaths,vct=ez().newShapes,mct=ez().createShapeObj,yct=n7(),gct=o7();$ue.exports=function e(t,r,n,i){i||(i=0);var a=n.gd;function o(){e(t,r,n,i++),(s7(t[0])||n.hasText)&&s({redrawing:!0})}function s(W){var N={};n.isActiveShape!==void 0&&(n.isActiveShape=!1,N=vct(r,n)),n.isActiveSelection!==void 0&&(n.isActiveSelection=!1,N=yct(r,n),a._fullLayout._reselect=!0),Object.keys(N).length&&Kue.call((W||{}).redrawing?"relayout":"_guiRelayout",a,N)}var u=a._fullLayout,l=u._zoomlayer,f=n.dragmode,c=lct(f),h=Yue(f);(c||h)&&(a._fullLayout._outlining=!0),Jue(a),r.attr("d",pct(t));var d,p,_,b,v;if(!i&&(n.isActiveShape||n.isActiveSelection)){v=_ct([],t);var k=l.append("g").attr("class","outline-controllers");P(k),j()}if(c&&n.hasText){var E=l.select(".label-temp"),A=mct(r,n,n.dragmode);gct(a,"label-temp",A,E)}function L(W){_=+W.srcElement.getAttribute("data-i"),b=+W.srcElement.getAttribute("data-j"),d[_][b].moveFn=x}function x(W,N){if(t.length){var H=v[_][b][1],re=v[_][b][2],ae=t[_],be=ae.length;if(rz(ae)){var ze=W,Ce=N;if(n.isActiveSelection){var de=Xue(ae,b);de[1]===ae[b][1]?Ce=0:ze=0}for(var te=0;te1&&!(W.length===2&&W[1][0]==="Z")&&(b===0&&(W[0][0]="M"),t[_]=W,o(),s())}}function m(W,N){if(W===2){_=+N.srcElement.getAttribute("data-i"),b=+N.srcElement.getAttribute("data-j");var H=t[_];!rz(H)&&!s7(H)&&M()}}function P(W){d=[];for(var N=0;N{"use strict";var bct=Jl(),nfe=$l(),Que=ei(),Y3=wu(),wct=u_().readPaths,Tct=nz(),oz=o7(),afe=Q1().clearOutlineControllers,u7=jl(),c7=Mu(),Act=Lf().arrayEditor,efe=xp(),tfe=Sm(),Ob=m5(),Ev=c_(),f7=Ev.getPathString;lfe.exports={draw:h7,drawOne:ofe,eraseActiveShape:Ect,drawLabel:oz};function h7(e){var t=e._fullLayout;t._shapeUpperLayer.selectAll("path").remove(),t._shapeLowerLayer.selectAll("path").remove(),t._shapeUpperLayer.selectAll("text").remove(),t._shapeLowerLayer.selectAll("text").remove();for(var r in t._plots){var n=t._plots[r].shapelayer;n&&(n.selectAll("path").remove(),n.selectAll("text").remove())}for(var i=0;io&&wt>s&&!at.shiftKey?efe.getCursor(St/Ct,1-Dt/wt):"move";tfe(t,Zt),ke=Zt.split("-")[0]}}function De(at){az(e)||(u&&(v=ae(r.xanchor)),l&&(k=be(r.yanchor)),r.type==="path"?T=r.path:(d=u?r.x0:ae(r.x0),p=l?r.y0:be(r.y0),_=u?r.x1:ae(r.x1),b=l?r.y1:be(r.y1)),d<_?(L=d,m="x0",x=_,P="x1"):(L=_,m="x1",x=d,P="x0"),!l&&pb?(E=p,C="y0",A=b,M="y1"):(E=b,C="y1",A=p,M="y0"),Ue(at),nt(i,r),Nt(t,r,e),te.moveFn=ke==="move"?ce:Je,te.altKey=at.altKey)}function ye(){az(e)||(tfe(t),gt(i),sfe(t,e,r),nfe.call("_guiRelayout",e,a.getUpdateObj()))}function qe(){az(e)||gt(i)}function ce(at,Ke){if(r.type==="path"){var Ct=function(Dt){return Dt},wt=Ct,St=Ct;u?h("xanchor",r.xanchor=ze(v+at)):(wt=function(Zt){return ze(ae(Zt)+at)},F&&F.type==="date"&&(wt=Ev.encodeDate(wt))),l?h("yanchor",r.yanchor=Ce(k+Ke)):(St=function(Zt){return Ce(be(Zt)+Ke)},G&&G.type==="date"&&(St=Ev.encodeDate(St))),h("path",r.path=rfe(T,wt,St))}else u?h("xanchor",r.xanchor=ze(v+at)):(h("x0",r.x0=ze(d+at)),h("x1",r.x1=ze(_+at))),l?h("yanchor",r.yanchor=Ce(k+Ke)):(h("y0",r.y0=Ce(p+Ke)),h("y1",r.y1=Ce(b+Ke)));t.attr("d",f7(e,r)),nt(i,r),oz(e,n,r,B)}function Je(at,Ke){if(c){var Ct=function(cr){return cr},wt=Ct,St=Ct;u?h("xanchor",r.xanchor=ze(v+at)):(wt=function(_r){return ze(ae(_r)+at)},F&&F.type==="date"&&(wt=Ev.encodeDate(wt))),l?h("yanchor",r.yanchor=Ce(k+Ke)):(St=function(_r){return Ce(be(_r)+Ke)},G&&G.type==="date"&&(St=Ev.encodeDate(St))),h("path",r.path=rfe(T,wt,St))}else if(f){if(ke==="resize-over-start-point"){var Dt=d+at,Zt=l?p-Ke:p+Ke;h("x0",r.x0=u?Dt:ze(Dt)),h("y0",r.y0=l?Zt:Ce(Zt))}else if(ke==="resize-over-end-point"){var Et=_+at,Te=l?b-Ke:b+Ke;h("x1",r.x1=u?Et:ze(Et)),h("y1",r.y1=l?Te:Ce(Te))}}else{var ot=function(cr){return ke.indexOf(cr)!==-1},Tt=ot("n"),vt=ot("s"),Ye=ot("w"),He=ot("e"),it=Tt?E+Ke:E,et=vt?A+Ke:A,It=Ye?L+at:L,Yt=He?x+at:x;l&&(Tt&&(it=E-Ke),vt&&(et=A-Ke)),(!l&&et-it>s||l&&it-et>s)&&(h(C,r[C]=l?it:Ce(it)),h(M,r[M]=l?et:Ce(et))),Yt-It>o&&(h(m,r[m]=u?It:ze(It)),h(P,r[P]=u?Yt:ze(Yt)))}t.attr("d",f7(e,r)),nt(i,r),oz(e,n,r,B)}function nt(at,Ke){(u||l)&&Ct();function Ct(){var wt=Ke.type!=="path",St=at.selectAll(".visual-cue").data([0]),Dt=1;St.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":Dt}).classed("visual-cue",!0);var Zt=ae(u?Ke.xanchor:Que.midRange(wt?[Ke.x0,Ke.x1]:Ev.extractPathCoords(Ke.path,Ob.paramIsX))),Et=be(l?Ke.yanchor:Que.midRange(wt?[Ke.y0,Ke.y1]:Ev.extractPathCoords(Ke.path,Ob.paramIsY)));if(Zt=Ev.roundPositionForSharpStrokeRendering(Zt,Dt),Et=Ev.roundPositionForSharpStrokeRendering(Et,Dt),u&&l){var Te="M"+(Zt-1-Dt)+","+(Et-1-Dt)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";St.attr("d",Te)}else if(u){var ot="M"+(Zt-1-Dt)+","+(Et-9-Dt)+"v18 h2 v-18 Z";St.attr("d",ot)}else{var Tt="M"+(Zt-9-Dt)+","+(Et-1-Dt)+"h18 v2 h-18 Z";St.attr("d",Tt)}}}function gt(at){at.selectAll(".visual-cue").remove()}function Nt(at,Ke,Ct){var wt=Ke.xref,St=Ke.yref,Dt=Y3.getFromId(Ct,wt),Zt=Y3.getFromId(Ct,St),Et="";wt!=="paper"&&!Dt.autorange&&(Et+=wt),St!=="paper"&&!Zt.autorange&&(Et+=St),c7.setClipUrl(at,Et?"clip"+Ct._fullLayout._uid+Et:null,Ct)}}function rfe(e,t,r){return e.replace(Ob.segmentRE,function(n){var i=0,a=n.charAt(0),o=Ob.paramIsX[a],s=Ob.paramIsY[a],u=Ob.numParams[a],l=n.slice(1).replace(Ob.paramRE,function(f){return i>=u||(o[i]?f=t(f):s[i]&&(f=r(f)),i++),f});return a+l})}function Mct(e,t){if(sz(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeShapeIndex){ife(e);return}e._fullLayout._activeShapeIndex=n,e._fullLayout._deactivateShape=ife,h7(e)}}}function ife(e){if(sz(e)){var t=e._fullLayout._activeShapeIndex;t>=0&&(afe(e),delete e._fullLayout._activeShapeIndex,h7(e))}}function Ect(e){if(sz(e)){afe(e);var t=e._fullLayout._activeShapeIndex,r=(e.layout||{}).shapes||[];if(t{"use strict";var A0=$l(),ufe=Cc(),ffe=Wc(),Bf=XP(),kct=lz().eraseActiveShape,uz=ei(),Af=uz._,Of=yfe.exports={};Of.toImage={name:"toImage",title:function(e){var t=e._context.toImageButtonOptions||{},r=t.format||"png";return r==="png"?Af(e,"Download plot as a PNG"):Af(e,"Download plot")},icon:Bf.camera,click:function(e){var t=e._context.toImageButtonOptions,r={format:t.format||"png"};uz.notifier(Af(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(n){n in t&&(r[n]=t[n])}),A0.call("downloadImage",e,r).then(function(n){uz.notifier(Af(e,"Snapshot succeeded")+" - "+n,"long")}).catch(function(){uz.notifier(Af(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Of.sendDataToCloud={name:"sendDataToCloud",title:function(e){return Af(e,"Edit in Chart Studio")},icon:Bf.disk,click:function(e){ufe.sendDataToCloud(e)}};Of.editInChartStudio={name:"editInChartStudio",title:function(e){return Af(e,"Edit in Chart Studio")},icon:Bf.pencil,click:function(e){ufe.sendDataToCloud(e)}};Of.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return Af(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Bf.zoombox,click:qp};Of.pan2d={name:"pan2d",_cat:"pan",title:function(e){return Af(e,"Pan")},attr:"dragmode",val:"pan",icon:Bf.pan,click:qp};Of.select2d={name:"select2d",_cat:"select",title:function(e){return Af(e,"Box Select")},attr:"dragmode",val:"select",icon:Bf.selectbox,click:qp};Of.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return Af(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Bf.lasso,click:qp};Of.drawclosedpath={name:"drawclosedpath",title:function(e){return Af(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Bf.drawclosedpath,click:qp};Of.drawopenpath={name:"drawopenpath",title:function(e){return Af(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Bf.drawopenpath,click:qp};Of.drawline={name:"drawline",title:function(e){return Af(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Bf.drawline,click:qp};Of.drawrect={name:"drawrect",title:function(e){return Af(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Bf.drawrect,click:qp};Of.drawcircle={name:"drawcircle",title:function(e){return Af(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Bf.drawcircle,click:qp};Of.eraseshape={name:"eraseshape",title:function(e){return Af(e,"Erase active shape")},icon:Bf.eraseshape,click:kct};Of.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return Af(e,"Zoom in")},attr:"zoom",val:"in",icon:Bf.zoom_plus,click:qp};Of.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return Af(e,"Zoom out")},attr:"zoom",val:"out",icon:Bf.zoom_minus,click:qp};Of.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return Af(e,"Autoscale")},attr:"zoom",val:"auto",icon:Bf.autoscale,click:qp};Of.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return Af(e,"Reset axes")},attr:"zoom",val:"reset",icon:Bf.home,click:qp};Of.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return Af(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Bf.tooltip_basic,gravity:"ne",click:qp};Of.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return Af(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Bf.tooltip_compare,gravity:"ne",click:qp};function qp(e,t){var r=t.currentTarget,n=r.getAttribute("data-attr"),i=r.getAttribute("data-val")||!0,a=e._fullLayout,o={},s=ffe.list(e,null,!0),u=a._cartesianSpikesEnabled,l,f;if(n==="zoom"){var c=i==="in"?.5:2,h=(1+c)/2,d=(1-c)/2,p,_;for(f=0;f{"use strict";var gfe=v7(),Pct=Object.keys(gfe),_fe=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],xfe=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(_fe),J3=[],zct=function(e){if(xfe.indexOf(e._cat||e.name)===-1){var t=e.name,r=(e._cat||e.name).toLowerCase();J3.indexOf(t)===-1&&J3.push(t),J3.indexOf(r)===-1&&J3.push(r)}};Pct.forEach(function(e){zct(gfe[e])});J3.sort();bfe.exports={DRAW_MODES:_fe,backButtons:xfe,foreButtons:J3}});var y7=Ae((hsr,wfe)=>{"use strict";var csr=m7();wfe.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var Afe=Ae((dsr,Tfe)=>{"use strict";var Ict=ei(),g5=jl(),Rct=Lf(),Dct=y7();Tfe.exports=function(t,r){var n=t.modebar||{},i=Rct.newContainer(r,"modebar");function a(s,u){return Ict.coerce(n,i,Dct,s,u)}a("orientation"),a("bgcolor",g5.addOpacity(r.paper_bgcolor,.5));var o=g5.contrast(g5.rgb(r.modebar.bgcolor));a("color",g5.addOpacity(o,.3)),a("activecolor",g5.addOpacity(o,.7)),a("uirevision",r.uirevision),a("add"),a("remove")}});var kfe=Ae((psr,Efe)=>{"use strict";var g7=Jl(),Fct=ku(),cz=ei(),Sfe=XP(),Bct=lL().version,Oct=new DOMParser;function Mfe(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Ty=Mfe.prototype;Ty.update=function(e,t){this.graphInfo=e;var r=this.graphInfo._context,n=this.graphInfo._fullLayout,i="modebar-"+n._uid;this.element.setAttribute("id",i),this.element.setAttribute("role","toolbar"),this._uid=i,this.element.className="modebar modebar--custom",r.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),n.modebar.orientation==="v"&&(this.element.className+=" vertical",t=t.reverse());var a=n.modebar,o="#"+i+" .modebar-group";document.querySelectorAll(o).forEach(function(c){c.style.backgroundColor=a.bgcolor});var s=!this.hasButtons(t),u=this.hasLogo!==r.displaylogo,l=this.locale!==r.locale;if(this.locale=r.locale,(s||u||l)&&(this.removeAllButtons(),this.updateButtons(t),r.watermark||r.displaylogo)){var f=this.getLogo();r.watermark&&(f.className=f.className+" watermark"),n.modebar.orientation==="v"?this.element.insertBefore(f,this.element.childNodes[0]):this.element.appendChild(f),this.hasLogo=!0}this.updateActiveButton(),cz.setStyleOnHover("#"+i+" .modebar-btn",".active",".icon path","fill: "+a.activecolor,"fill: "+a.color,this.element)};Ty.updateButtons=function(e){var t=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(r){var n=t.createGroup();r.forEach(function(i){var a=i.name;if(!a)throw new Error("must provide button 'name' in button config");if(t.buttonsNames.indexOf(a)!==-1)throw new Error("button name '"+a+"' is taken");t.buttonsNames.push(a);var o=t.createButton(i);t.buttonElements.push(o),n.appendChild(o)}),t.element.appendChild(n)})};Ty.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var t=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=t.bgcolor,e};Ty.createButton=function(e){var t=this,r=document.createElement("button");r.setAttribute("type","button"),r.setAttribute("rel","tooltip"),r.className="modebar-btn";var n=e.title;n===void 0?n=e.name:typeof n=="function"&&(n=n(this.graphInfo)),(n||n===0)&&(r.setAttribute("data-title",n),r.setAttribute("aria-label",n)),e.attr!==void 0&&r.setAttribute("data-attr",e.attr);var i=e.val;i!==void 0&&(typeof i=="function"&&(i=i(this.graphInfo)),r.setAttribute("data-val",i));var a=e.click;if(typeof a!="function")throw new Error("must provide button 'click' function in button config");r.addEventListener("click",function(s){e.click(t.graphInfo,s),t.updateActiveButton(s.currentTarget)}),r.setAttribute("data-toggle",e.toggle||!1),e.toggle&&g7.select(r).classed("active",!0);var o=e.icon;return typeof o=="function"?r.appendChild(o()):r.appendChild(this.createIcon(o||Sfe.question)),r.setAttribute("data-gravity",e.gravity||"n"),r};Ty.createIcon=function(e){var t=Fct(e.height)?Number(e.height):e.ascent-e.descent,r="http://www.w3.org/2000/svg",n;if(e.path){n=document.createElementNS(r,"svg"),n.setAttribute("viewBox",[0,0,e.width,t].join(" ")),n.setAttribute("class","icon");var i=document.createElementNS(r,"path");i.setAttribute("d",e.path),e.transform?i.setAttribute("transform",e.transform):e.ascent!==void 0&&i.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),n.appendChild(i)}if(e.svg){var a=Oct.parseFromString(e.svg,"application/xml");n=a.childNodes[0]}return n.setAttribute("height","1em"),n.setAttribute("width","1em"),n};Ty.updateActiveButton=function(e){var t=this.graphInfo._fullLayout,r=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(n){var i=n.getAttribute("data-val")||!0,a=n.getAttribute("data-attr"),o=n.getAttribute("data-toggle")==="true",s=g7.select(n),u=function(c,h){var d=t.modebar,p=c.querySelector(".icon path");p&&(h||c.matches(":hover")?p.style.fill=d.activecolor:p.style.fill=d.color)};if(o){if(a===r){var l=!s.classed("active");s.classed("active",l),u(n,l)}}else{var f=a===null?a:cz.nestedProperty(t,a).get();s.classed("active",f===i),u(n,f===i)}})};Ty.hasButtons=function(e){var t=this.buttons;if(!t||e.length!==t.length)return!1;for(var r=0;r{"use strict";var Uct=Wc(),Cfe=lc(),_7=$l(),Vct=iv().isUnifiedHover,Gct=kfe(),hz=v7(),Hct=m7().DRAW_MODES,Wct=ei().extendDeep;Lfe.exports=function(t){var r=t._fullLayout,n=t._context,i=r._modeBar;if(!n.displayModeBar&&!n.watermark){i&&(i.destroy(),delete r._modeBar);return}if(!Array.isArray(n.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(n.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var a=n.modeBarButtons,o;Array.isArray(a)&&a.length?o=Jct(a):!n.displayModeBar&&n.watermark?o=[]:o=jct(t),i?i.update(t,o):r._modeBar=Gct(t,o)};function jct(e){var t=e._fullLayout,r=e._fullData,n=e._context;function i(N,H){if(typeof H=="string"){if(H.toLowerCase()===N.toLowerCase())return!0}else{var re=H.name,ae=H._cat||H.name;if(re===N||ae===N.toLowerCase())return!0}return!1}var a=t.modebar.add;typeof a=="string"&&(a=[a]);var o=t.modebar.remove;typeof o=="string"&&(o=[o]);var s=n.modeBarButtonsToAdd.concat(a.filter(function(N){for(var H=0;H1?(P=["toggleHover"],T=["resetViews"]):c?(m=["zoomInGeo","zoomOutGeo"],P=["hoverClosestGeo"],T=["resetGeo"]):f?(P=["hoverClosest3d"],T=["resetCameraDefault3d","resetCameraLastSave3d"]):_?(m=["zoomInMapbox","zoomOutMapbox"],P=["toggleHover"],T=["resetViewMapbox"]):b?(m=["zoomInMap","zoomOutMap"],P=["toggleHover"],T=["resetViewMap"]):h?P=["hoverClosestPie"]:E?(P=["hoverClosestCartesian","hoverCompareCartesian"],T=["resetViewSankey"]):P=["toggleHover"],l&&P.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(Yct(r)||L)&&(P=[]),l&&!A&&(m=["zoomIn2d","zoomOut2d","autoScale2d"],T[0]!=="resetViews"&&(T=["resetScale2d"])),f?B=["zoom3d","pan3d","orbitRotation","tableRotation"]:l&&!A||p?B=["zoom2d","pan2d"]:_||b||c?B=["pan2d"]:v&&(B=["zoom2d"]),Zct(r)&&B.push("select2d","lasso2d");var F=[],U=function(N){F.indexOf(N)===-1&&P.indexOf(N)!==-1&&F.push(N)};if(Array.isArray(s)){for(var G=[],j=0;j{"use strict";zfe.exports={moduleType:"component",name:"modebar",layoutAttributes:y7(),supplyLayoutDefaults:Afe(),manage:Pfe()}});var b7=Ae((ysr,Ife)=>{"use strict";var $ct=td().FROM_BL;Ife.exports=function(t,r,n){n===void 0&&(n=$ct[t.constraintoward||"center"]);var i=[t.r2l(t.range[0]),t.r2l(t.range[1])],a=i[0]+(i[1]-i[0])*n;t.range=t._input.range=[t.l2r(a+(i[0]-a)*r),t.l2r(a+(i[1]-a)*r)],t.setScale()}});var Nb=Ae(_5=>{"use strict";var qb=ei(),w7=Am(),km=Wc().id2name,Qct=Dd(),Rfe=b7(),eht=gy(),tht=rf().ALMOST_EQUAL,rht=td().FROM_BL;_5.handleDefaults=function(e,t,r){var n=r.axIds,i=r.axHasImage,a=t._axisConstraintGroups=[],o=t._axisMatchGroups=[],s,u,l,f,c,h,d,p;for(s=0;sa?r.slice(a):n.slice(i))+o}function nht(e,t){for(var r=t._size,n=r.h/r.w,i={},a=Object.keys(e),o=0;otht*p&&!k)){for(a=0;aB&&reP&&(P=re);var be=(P-m)/(2*T);c/=be,m=u.l2r(m),P=u.l2r(P),u.range=u._input.range=x{"use strict";var pz=Jl(),Np=$l(),Jv=Cc(),S0=ei(),S7=Xf(),M7=p5(),x5=jl(),$3=Mu(),Ofe=Eb(),Gfe=x7(),b5=wu(),Cg=td(),Hfe=Nb(),aht=Hfe.enforce,oht=Hfe.clean,qfe=Am().doAutoRange,Wfe="start",sht="middle",jfe="end",lht=dd().zindexSeparator;md.layoutStyles=function(e){return S0.syncOrAsync([Jv.doAutoMargin,fht],e)};function uht(e,t,r){for(var n=0;n=e[1]||i[1]<=e[0])&&a[0]t[0])return!0}return!1}function fht(e){var t=e._fullLayout,r=t._size,n=r.p,i=b5.list(e,"",!0),a,o,s,u,l,f;if(t._paperdiv.style({width:e._context.responsive&&t.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":t.width+"px",height:e._context.responsive&&t.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":t.height+"px"}).selectAll(".main-svg").call($3.setSize,t.width,t.height),e._context.setBackground(e,t.paper_bgcolor),md.drawMainTitle(e),Gfe.manage(e),!t._has("cartesian"))return Jv.previousPromises(e);function c(De,ye,qe){var ce=De._lw/2;if(De._id.charAt(0)==="x"){if(ye){if(qe==="top")return ye._offset-n-ce}else return r.t+r.h*(1-(De.position||0))+ce%1;return ye._offset+ye._length+n+ce}if(ye){if(qe==="right")return ye._offset+ye._length+n+ce}else return r.l+r.w*(De.position||0)+ce%1;return ye._offset-n-ce}for(a=0;a0){pht(e,a,l,u),s.attr({x:o,y:a,"text-anchor":n,dy:Vfe(t.yanchor)}).call(S7.positionText,o,a);var f=(t.text.match(S7.BR_TAG_ALL)||[]).length;if(f){var c=Cg.LINE_SPACING*f+Cg.MID_SHIFT;t.y===0&&(c=-c),s.selectAll(".line").each(function(){var b=+this.getAttribute("dy").slice(0,-2)-c+"em";this.setAttribute("dy",b)})}var h=pz.select(e).selectAll(".gtitle-subtitle");if(h.node()){var d=s.node().getBBox(),p=d.y+d.height,_=p+Ofe.SUBTITLE_PADDING_EM*t.subtitle.font.size;h.attr({x:o,y:_,"text-anchor":n,dy:Vfe(t.yanchor)}).call(S7.positionText,o,_)}}}};function cht(e,t,r,n,i){var a=t.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,o=S0.isTopAnchor(t)?n:n-i,s=r==="b"?a-o:o;return S0.isTopAnchor(t)&&r==="t"||S0.isBottomAnchor(t)&&r==="b"?!1:s.5?"t":"b",o=e._fullLayout.margin[a],s=0;return t.yref==="paper"?s=r+t.pad.t+t.pad.b:t.yref==="container"&&(s=hht(a,n,i,e._fullLayout.height,r)+t.pad.t+t.pad.b),s>o?s:0}function pht(e,t,r,n){var i="title.automargin",a=e._fullLayout.title,o=a.y>.5?"t":"b",s={x:a.x,y:a.y,t:0,b:0},u={};a.yref==="paper"&&cht(e,a,o,t,n)?s[o]=r:a.yref==="container"&&(u[o]=r,e._fullLayout._reservedMargin[i]=u),Jv.allowAutoMargin(e,i),Jv.autoMargin(e,i,s)}function vht(e,t){var r=e.title,n=e._size,i=0;switch(t===Wfe?i=r.pad.l:t===jfe&&(i=-r.pad.r),r.xref){case"paper":return n.l+n.w*r.x+i;case"container":default:return e.width*r.x+i}}function mht(e,t){var r=e.title,n=e._size,i=0;if(t==="0em"||!t?i=-r.pad.b:t===Cg.CAP_SHIFT+"em"&&(i=r.pad.t),r.y==="auto")return n.t/2;switch(r.yref){case"paper":return n.t+n.h-n.h*r.y+i;case"container":default:return e.height-e.height*r.y+i}}function Vfe(e){return e==="top"?Cg.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":Cg.MID_SHIFT+"em"}function yht(e){var t=e.title,r=sht;return S0.isRightAnchor(t)?r=jfe:S0.isLeftAnchor(t)&&(r=Wfe),r}function ght(e){var t=e.title,r="0em";return S0.isTopAnchor(t)?r=Cg.CAP_SHIFT+"em":S0.isMiddleAnchor(t)&&(r=Cg.MID_SHIFT+"em"),r}md.doTraceStyle=function(e){var t=e.calcdata,r=[],n;for(n=0;n{"use strict";var _ht=u_().readPaths,xht=nz(),Xfe=Q1().clearOutlineControllers,E7=jl(),Zfe=Mu(),bht=Lf().arrayEditor,Yfe=c_(),wht=Yfe.getPathString;Jfe.exports={draw:vz,drawOne:Kfe,activateLastSelection:Sht};function vz(e){var t=e._fullLayout;Xfe(e),t._selectionLayer.selectAll("path").remove();for(var r in t._plots){var n=t._plots[r].selectionLayer;n&&n.selectAll("path").remove()}for(var i=0;i=0;b--){var v=o.append("path").attr(u).style("opacity",b?.1:l).call(E7.stroke,c).call(E7.fill,f).call(Zfe.dashLine,b?"solid":d,b?4+h:h);if(Tht(v,e,n),p){var k=bht(e.layout,"selections",n);v.style({cursor:"move"});var E={element:v.node(),plotinfo:i,gd:e,editHelpers:k,isActiveSelection:!0},A=_ht(s,e);xht(A,v,E)}else v.style("pointer-events",b?"all":"none");_[b]=v}var L=_[0],x=_[1];x.node().addEventListener("click",function(){return Aht(e,L)})}}function Tht(e,t,r){var n=r.xref+r.yref;Zfe.setClipUrl(e,"clip"+t._fullLayout._uid+n,t)}function Aht(e,t){if(mz(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeSelectionIndex){k7(e);return}e._fullLayout._activeSelectionIndex=n,e._fullLayout._deactivateSelection=k7,vz(e)}}}function Sht(e){if(mz(e)){var t=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=t,e._fullLayout._deactivateSelection=k7,vz(e)}}function k7(e){if(mz(e)){var t=e._fullLayout._activeSelectionIndex;t>=0&&(Xfe(e),delete e._fullLayout._activeSelectionIndex,vz(e))}}});var Qfe=Ae((bsr,$fe)=>{function Mht(){var e,t=0,r=!1;function n(i,a){return e.list.push({type:i,data:a?JSON.parse(JSON.stringify(a)):void 0}),e}return e={list:[],segmentId:function(){return t++},checkIntersection:function(i,a){return n("check",{seg1:i,seg2:a})},segmentChop:function(i,a){return n("div_seg",{seg:i,pt:a}),n("chop",{seg:i,pt:a})},statusRemove:function(i){return n("pop_seg",{seg:i})},segmentUpdate:function(i){return n("seg_update",{seg:i})},segmentNew:function(i,a){return n("new_seg",{seg:i,primary:a})},segmentRemove:function(i){return n("rem_seg",{seg:i})},tempStatus:function(i,a,o){return n("temp_status",{seg:i,above:a,below:o})},rewind:function(i){return n("rewind",{seg:i})},status:function(i,a,o){return n("status",{seg:i,above:a,below:o})},vert:function(i){return i===r?e:(r=i,n("vert",{x:i}))},log:function(i){return typeof i!="string"&&(i=JSON.stringify(i,!1," ")),n("log",{txt:i})},reset:function(){return n("reset")},selected:function(i){return n("selected",{segs:i})},chainStart:function(i){return n("chain_start",{seg:i})},chainRemoveHead:function(i,a){return n("chain_rem_head",{index:i,pt:a})},chainRemoveTail:function(i,a){return n("chain_rem_tail",{index:i,pt:a})},chainNew:function(i,a){return n("chain_new",{pt1:i,pt2:a})},chainMatch:function(i){return n("chain_match",{index:i})},chainClose:function(i){return n("chain_close",{index:i})},chainAddHead:function(i,a){return n("chain_add_head",{index:i,pt:a})},chainAddTail:function(i,a){return n("chain_add_tail",{index:i,pt:a})},chainConnect:function(i,a){return n("chain_con",{index1:i,index2:a})},chainReverse:function(i){return n("chain_rev",{index:i})},chainJoin:function(i,a){return n("chain_join",{index1:i,index2:a})},done:function(){return n("done")}},e}$fe.exports=Mht});var tce=Ae((wsr,ece)=>{function Eht(e){typeof e!="number"&&(e=1e-10);var t={epsilon:function(r){return typeof r=="number"&&(e=r),e},pointAboveOrOnLine:function(r,n,i){var a=n[0],o=n[1],s=i[0],u=i[1],l=r[0],f=r[1];return(s-a)*(f-o)-(u-o)*(l-a)>=-e},pointBetween:function(r,n,i){var a=r[1]-n[1],o=i[0]-n[0],s=r[0]-n[0],u=i[1]-n[1],l=s*o+a*u;if(l-e)},pointsSameX:function(r,n){return Math.abs(r[0]-n[0])e!=s-a>e&&(o-f)*(a-c)/(s-c)+f-i>e&&(u=!u),o=f,s=c}return u}};return t}ece.exports=Eht});var ice=Ae((Tsr,rce)=>{var kht={create:function(){var e={root:{root:!0,next:null},exists:function(t){return!(t===null||t===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(t,r){for(var n=e.root,i=e.root.next;i!==null;){if(r(i)){t.prev=i.prev,t.next=i,i.prev.next=t,i.prev=t;return}n=i,i=i.next}n.next=t,t.prev=n,t.next=null},findTransition:function(t){for(var r=e.root,n=e.root.next;n!==null&&!t(n);)r=n,n=n.next;return{before:r===e.root?null:r,after:n,insert:function(i){return i.prev=r,i.next=n,r.next=i,n!==null&&(n.prev=i),i}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};rce.exports=kht});var ace=Ae((Asr,nce)=>{var T5=ice();function Cht(e,t,r){function n(p,_){return{id:r?r.segmentId():-1,start:p,end:_,myFill:{above:null,below:null},otherFill:null}}function i(p,_,b){return{id:r?r.segmentId():-1,start:p,end:_,myFill:{above:b.myFill.above,below:b.myFill.below},otherFill:null}}var a=T5.create();function o(p,_,b,v,k,E){var A=t.pointsCompare(_,k);return A!==0?A:t.pointsSame(b,E)?0:p!==v?p?1:-1:t.pointAboveOrOnLine(b,v?k:E,v?E:k)?1:-1}function s(p,_){a.insertBefore(p,function(b){var v=o(p.isStart,p.pt,_,b.isStart,b.pt,b.other.pt);return v<0})}function u(p,_){var b=T5.node({isStart:!0,pt:p.start,seg:p,primary:_,other:null,status:null});return s(b,p.end),b}function l(p,_,b){var v=T5.node({isStart:!1,pt:_.end,seg:_,primary:b,other:p,status:null});p.other=v,s(v,p.pt)}function f(p,_){var b=u(p,_);return l(b,p,_),b}function c(p,_){r&&r.segmentChop(p.seg,_),p.other.remove(),p.seg.end=_,p.other.pt=_,s(p.other,p.pt)}function h(p,_){var b=i(_,p.seg.end,p.seg);return c(p,_),f(b,p.primary)}function d(p,_){var b=T5.create();function v(G,j){var W=G.seg.start,N=G.seg.end,H=j.seg.start,re=j.seg.end;return t.pointsCollinear(W,H,re)?t.pointsCollinear(N,H,re)||t.pointAboveOrOnLine(N,H,re)?1:-1:t.pointAboveOrOnLine(W,H,re)?1:-1}function k(G){return b.findTransition(function(j){var W=v(G,j.ev);return W>0})}function E(G,j){var W=G.seg,N=j.seg,H=W.start,re=W.end,ae=N.start,be=N.end;r&&r.checkIntersection(W,N);var ze=t.linesIntersect(H,re,ae,be);if(ze===!1){if(!t.pointsCollinear(H,re,ae)||t.pointsSame(H,be)||t.pointsSame(re,ae))return!1;var Ce=t.pointsSame(H,ae),de=t.pointsSame(re,be);if(Ce&&de)return j;var te=!Ce&&t.pointBetween(H,ae,be),ke=!de&&t.pointBetween(re,ae,be);if(Ce)return ke?h(j,re):h(G,be),j;te&&(de||(ke?h(j,re):h(G,be)),h(j,H))}else ze.alongA===0&&(ze.alongB===-1?h(G,ae):ze.alongB===0?h(G,ze.pt):ze.alongB===1&&h(G,be)),ze.alongB===0&&(ze.alongA===-1?h(j,H):ze.alongA===0?h(j,ze.pt):ze.alongA===1&&h(j,re));return!1}for(var A=[];!a.isEmpty();){var L=a.getHead();if(r&&r.vert(L.pt[0]),L.isStart){let G=function(){if(C){var j=E(L,C);if(j)return j}return M?E(L,M):!1};var U=G;r&&r.segmentNew(L.seg,L.primary);var x=k(L),C=x.before?x.before.ev:null,M=x.after?x.after.ev:null;r&&r.tempStatus(L.seg,C?C.seg:!1,M?M.seg:!1);var m=G();if(m){if(e){var P;L.seg.myFill.below===null?P=!0:P=L.seg.myFill.above!==L.seg.myFill.below,P&&(m.seg.myFill.above=!m.seg.myFill.above)}else m.seg.otherFill=L.seg.myFill;r&&r.segmentUpdate(m.seg),L.other.remove(),L.remove()}if(a.getHead()!==L){r&&r.rewind(L.seg);continue}if(e){var P;L.seg.myFill.below===null?P=!0:P=L.seg.myFill.above!==L.seg.myFill.below,M?L.seg.myFill.below=M.seg.myFill.above:L.seg.myFill.below=p,P?L.seg.myFill.above=!L.seg.myFill.below:L.seg.myFill.above=L.seg.myFill.below}else if(L.seg.otherFill===null){var T;M?L.primary===M.primary?T=M.seg.otherFill.above:T=M.seg.myFill.above:T=L.primary?_:p,L.seg.otherFill={above:T,below:T}}r&&r.status(L.seg,C?C.seg:!1,M?M.seg:!1),L.other.status=x.insert(T5.node({ev:L}))}else{var B=L.status;if(B===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(b.exists(B.prev)&&b.exists(B.next)&&E(B.prev.ev,B.next.ev),r&&r.statusRemove(B.ev.seg),B.remove(),!L.primary){var F=L.seg.myFill;L.seg.myFill=L.seg.otherFill,L.seg.otherFill=F}A.push(L.seg)}a.getHead().remove()}return r&&r.done(),A}return e?{addRegion:function(p){for(var _,b=p[p.length-1],v=0;v{function Lht(e,t,r){var n=[],i=[];return e.forEach(function(a){var o=a.start,s=a.end;if(t.pointsSame(o,s)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}r&&r.chainStart(a);var u={index:0,matches_head:!1,matches_pt1:!1},l={index:0,matches_head:!1,matches_pt1:!1},f=u;function c(U,G,j){return f.index=U,f.matches_head=G,f.matches_pt1=j,f===u?(f=l,!1):(f=null,!0)}for(var h=0;h{function A5(e,t,r){var n=[];return e.forEach(function(i){var a=(i.myFill.above?8:0)+(i.myFill.below?4:0)+(i.otherFill&&i.otherFill.above?2:0)+(i.otherFill&&i.otherFill.below?1:0);t[a]!==0&&n.push({id:r?r.segmentId():-1,start:i.start,end:i.end,myFill:{above:t[a]===1,below:t[a]===2},otherFill:null})}),r&&r.selected(n),n}var Pht={union:function(e,t){return A5(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],t)},intersect:function(e,t){return A5(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],t)},difference:function(e,t){return A5(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],t)},differenceRev:function(e,t){return A5(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],t)},xor:function(e,t){return A5(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],t)}};lce.exports=Pht});var cce=Ae((Esr,fce)=>{var zht={toPolygon:function(e,t){function r(a){if(a.length<=0)return e.segments({inverted:!1,regions:[]});function o(l){var f=l.slice(0,l.length-1);return e.segments({inverted:!1,regions:[f]})}for(var s=o(a[0]),u=1;u{var Iht=Qfe(),Rht=tce(),hce=ace(),Dht=sce(),S5=uce(),dce=cce(),M0=!1,M5=Rht(),kv;kv={buildLog:function(e){return e===!0?M0=Iht():e===!1&&(M0=!1),M0===!1?!1:M0.list},epsilon:function(e){return M5.epsilon(e)},segments:function(e){var t=hce(!0,M5,M0);return e.regions.forEach(t.addRegion),{segments:t.calculate(e.inverted),inverted:e.inverted}},combine:function(e,t){var r=hce(!1,M5,M0);return{combined:r.calculate(e.segments,e.inverted,t.segments,t.inverted),inverted1:e.inverted,inverted2:t.inverted}},selectUnion:function(e){return{segments:S5.union(e.combined,M0),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:S5.intersect(e.combined,M0),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:S5.difference(e.combined,M0),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:S5.differenceRev(e.combined,M0),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:S5.xor(e.combined,M0),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:Dht(e.segments,M5,M0),inverted:e.inverted}},polygonFromGeoJSON:function(e){return dce.toPolygon(kv,e)},polygonToGeoJSON:function(e){return dce.fromPolygon(kv,M5,e)},union:function(e,t){return E5(e,t,kv.selectUnion)},intersect:function(e,t){return E5(e,t,kv.selectIntersect)},difference:function(e,t){return E5(e,t,kv.selectDifference)},differenceRev:function(e,t){return E5(e,t,kv.selectDifferenceRev)},xor:function(e,t){return E5(e,t,kv.selectXor)}};function E5(e,t,r){var n=kv.segments(e),i=kv.segments(t),a=kv.combine(n,i),o=r(a);return kv.polygon(o)}typeof window=="object"&&(window.PolyBool=kv);pce.exports=kv});var yce=Ae((Csr,mce)=>{mce.exports=function(t,r,n,i){var a=t[0],o=t[1],s=!1;n===void 0&&(n=0),i===void 0&&(i=r.length);for(var u=i-n,l=0,f=u-1;lo!=p>o&&a<(d-c)*(o-h)/(p-h)+c;_&&(s=!s)}return s}});var k5=Ae((Lsr,gce)=>{"use strict";var L7=TL().dot,yz=rf().BADNUM,gz=gce.exports={};gz.tester=function(t){var r=t.slice(),n=r[0][0],i=n,a=r[0][1],o=a,s;for((r[r.length-1][0]!==r[0][0]||r[r.length-1][1]!==r[0][1])&&r.push(r[0]),s=1;si||v===yz||vo||_&&l(p))}function c(p,_){var b=p[0],v=p[1];if(b===yz||bi||v===yz||vo)return!1;var k=r.length,E=r[0][0],A=r[0][1],L=0,x,C,M,m,P;for(x=1;xMath.max(C,E)||v>Math.max(M,A)))if(vs||Math.abs(L7(c,l))>i)return!0;return!1};gz.filter=function(t,r){var n=[t[0]],i=0,a=0;function o(u){t.push(u);var l=n.length,f=i;n.splice(a+1);for(var c=f+1;c1){var s=t.pop();o(s)}return{addPt:o,raw:t,filtered:n}}});var xce=Ae((Psr,_ce)=>{"use strict";_ce.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var Vce=Ae((zsr,Uce)=>{"use strict";var bce=vce(),Fht=yce(),P5=$l(),Bht=Mu().dashStyle,C5=jl(),Oht=Xc(),qht=iv().makeEventData,F5=Em(),Nht=F5.freeMode,Uht=F5.rectMode,z5=F5.drawMode,R7=F5.openMode,D7=F5.selectMode,wce=c_(),Tce=m5(),kce=nz(),Cce=Q1().clearOutline,Lce=u_(),P7=Lce.handleEllipse,Vht=Lce.readPaths,Ght=ez().newShapes,Hht=n7(),Wht=C7().activateLastSelection,xz=ei(),jht=xz.sorterAsc,Pce=k5(),L5=FL(),E0=Wc().getFromId,Xht=p5(),Zht=w5().redrawReglTraces,bz=xce(),Ay=bz.MINSELECT,Yht=Pce.filter,F7=Pce.tester,B7=KP(),Ace=B7.p2r,Kht=B7.axValue,Jht=B7.getTransform;function O7(e){return e.subplot!==void 0}function $ht(e,t,r,n,i){var a=!O7(n),o=Nht(i),s=Uht(i),u=R7(i),l=z5(i),f=D7(i),c=i==="drawline",h=i==="drawcircle",d=c||h,p=n.gd,_=p._fullLayout,b=f&&_.newselection.mode==="immediate"&&a,v=_._zoomlayer,k=n.element.getBoundingClientRect(),E=n.plotinfo,A=Jht(E),L=t-k.left,x=r-k.top;_._calcInverseTransform(p);var C=xz.apply3DTransform(_._invTransform)(L,x);L=C[0],x=C[1];var M=_._invScaleX,m=_._invScaleY,P=L,T=x,B="M"+L+","+x,F=n.xaxes[0],U=n.yaxes[0],G=F._length,j=U._length,W=e.altKey&&!(z5(i)&&u),N,H,re,ae,be,ze,Ce;Ice(e,p,n),o&&(N=Yht([[L,x]],bz.BENDPX));var de=v.selectAll("path.select-outline-"+E.id).data([1]),te=l?_.newshape:_.newselection;l&&(n.hasText=te.label.text||te.label.texttemplate);var ke=l&&!u?te.fillcolor:"rgba(0,0,0,0)",Ee=te.line.color||(a?C5.contrast(p._fullLayout.plot_bgcolor):"#7f7f7f");de.enter().append("path").attr("class","select-outline select-outline-"+E.id).style({opacity:l?te.opacity/2:1,"stroke-dasharray":Bht(te.line.dash,te.line.width),"stroke-width":te.line.width+"px","shape-rendering":"crispEdges"}).call(C5.stroke,Ee).call(C5.fill,ke).attr("fill-rule","evenodd").classed("cursor-move",!!l).attr("transform",A).attr("d",B+"Z");var Me=v.append("path").attr("class","zoombox-corners").style({fill:C5.background,stroke:C5.defaultLine,"stroke-width":1}).attr("transform",A).attr("d","M0,0Z");if(l&&n.hasText){var Ue=v.select(".label-temp");Ue.empty()&&(Ue=v.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var De=_._uid+bz.SELECTID,ye=[],qe=wz(p,n.xaxes,n.yaxes,n.subplot);b&&!e.shiftKey&&(n._clearSubplotSelections=function(){if(a){var Je=F._id,nt=U._id;Oce(p,Je,nt,qe);for(var gt=(p.layout||{}).selections||[],Nt=[],at=!1,Ke=0;Ke=0){p._fullLayout._deactivateShape(p);return}if(!l){var gt=_.clickmode;L5.done(De).then(function(){if(L5.clear(De),Je===2){for(de.remove(),be=0;be-1&&zce(nt,p,n.xaxes,n.yaxes,n.subplot,n,de),gt==="event"&&D5(p,void 0);Oht.click(p,nt,E.id)}).catch(xz.error)}},n.doneFn=function(){Me.remove(),L5.done(De).then(function(){L5.clear(De),!b&&ae&&n.selectionDefs&&(ae.subtract=W,n.selectionDefs.push(ae),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,re)),(b||l)&&I5(n,b),n.doneFnCompleted&&n.doneFnCompleted(ye),f&&D5(p,Ce)}).catch(xz.error)}}function zce(e,t,r,n,i,a,o){var s=t._hoverdata,u=t._fullLayout,l=u.clickmode,f=l.indexOf("event")>-1,c=[],h,d,p,_,b,v,k,E,A,L;if(idt(s)){Ice(e,t,a),h=wz(t,r,n,i);var x=ndt(s,h),C=x.pointNumbers.length>0;if(C?adt(h,x):odt(h)&&(k=Mce(x))){for(o&&o.remove(),L=0;L=0}function rdt(e){return e._fullLayout._activeSelectionIndex>=0}function I5(e,t){var r=e.dragmode,n=e.plotinfo,i=e.gd;tdt(i)&&i._fullLayout._deactivateShape(i),rdt(i)&&i._fullLayout._deactivateSelection(i);var a=i._fullLayout,o=a._zoomlayer,s=z5(r),u=D7(r);if(s||u){var l=o.selectAll(".select-outline-"+n.id);if(l&&i._fullLayout._outlining){var f;s&&(f=Ght(l,e)),f&&P5.call("_guiRelayout",i,{shapes:f});var c;u&&!O7(e)&&(c=Hht(l,e)),c&&(i._fullLayout._noEmitSelectedAtStart=!0,P5.call("_guiRelayout",i,{selections:c}).then(function(){t&&Wht(i)})),i._fullLayout._outlining=!1}}n.selection={},n.selection.selectionDefs=e.selectionDefs=[],n.selection.mergedPolygons=e.mergedPolygons=[]}function Sce(e){return e._id}function wz(e,t,r,n){if(!e.calcdata)return[];var i=[],a=t.map(Sce),o=r.map(Sce),s,u,l;for(l=0;l0,a=i?n[0]:r;return t.selectedpoints?t.selectedpoints.indexOf(a)>-1:!1}function adt(e,t){var r=[],n,i,a,o;for(o=0;o0&&r.push(n);if(r.length===1&&(a=r[0]===t.searchInfo,a&&(i=t.searchInfo.cd[0].trace,i.selectedpoints.length===t.pointNumbers.length))){for(o=0;o1||(t+=n.selectedpoints.length,t>1)))return!1;return t===1}function R5(e,t,r){var n;for(n=0;n-1&&t;if(!o&&t){var Je=Ece(e,!0);if(Je.length){var nt=Je[0].xref,gt=Je[0].yref;if(nt&>){var Nt=qce(Je),at=Nce([E0(e,nt,"x"),E0(e,gt,"y")]);at(ye,Nt)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:ce&&D5(e,ye),h._reselect=!1}if(!o&&h._deselect){var Ke=h._deselect;s=Ke.xref,u=Ke.yref,udt(s,u,f)||Oce(e,s,u,n),ce&&(ye.points.length?D5(e,ye):U7(e)),h._deselect=!1}return{eventData:ye,selectionTesters:r}}function ldt(e){var t=e.calcdata;if(t)for(var r=0;r{"use strict";Gce.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var B5=Ae((Rsr,Hce)=>{"use strict";Hce.exports={axisRefDescription:function(e,t,r){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",t,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",t,"("+r+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",t,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",t,"and the",r,"of the domain of the","second",e,"axis."].join(" ")}}});var Ub=Ae((Fsr,Xce)=>{"use strict";var Wce=V7(),jce=gc(),Tz=dd(),pdt=Lf().templatedArray,Dsr=B5();Xce.exports=pdt("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:jce({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:Wce.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:Wce.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",Tz.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",Tz.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",Tz.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",Tz.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:jce({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Sy=Ae((Bsr,Zce)=>{"use strict";Zce.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var Cm=Ae((Osr,Yce)=>{"use strict";Yce.exports=function(t){return{valType:"color",editType:"style",anim:!0}}});var Zc=Ae((qsr,rhe)=>{"use strict";var Kce=jc().axisHoverFormat,{hovertemplateAttrs:vdt,texttemplateAttrs:mdt,templatefallbackAttrs:Jce}=Ff(),$ce=nc(),ydt=gc(),gdt=Id().dash,_dt=Id().pattern,xdt=Mu(),bdt=Sy(),Az=Su().extendFlat,wdt=Cm();function Qce(e){return{valType:"any",dflt:0,editType:"calc"}}function ehe(e){return{valType:"any",editType:"calc"}}function the(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}rhe.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:Qce("x"),yperiod:Qce("y"),xperiod0:ehe("x0"),yperiod0:ehe("y0"),xperiodalignment:the("x"),yperiodalignment:the("y"),xhoverformat:Kce("x"),yhoverformat:Kce("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:mdt(),texttemplatefallback:Jce({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:vdt({},{keys:bdt.eventDataKeys}),hovertemplatefallback:Jce(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:Az({},gdt,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:wdt(!0),fillgradient:Az({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:_dt,marker:Az({symbol:{valType:"enumerated",values:xdt.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:Az({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},$ce("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},$ce("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:ydt({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var G7=Ae((Usr,ahe)=>{"use strict";var ihe=Ub(),nhe=Zc().line,Tdt=Id().dash,Sz=Su().extendFlat,Adt=Sc().overrideAll,Sdt=Lf().templatedArray,Nsr=B5();ahe.exports=Adt(Sdt("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:Sz({},ihe.xref,{}),yref:Sz({},ihe.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:nhe.color,width:Sz({},nhe.width,{min:1,dflt:1}),dash:Sz({},Tdt,{dflt:"dot"})}}),"arraydraw","from-root")});var uhe=Ae((Vsr,lhe)=>{"use strict";var ohe=ei(),Mz=wu(),Mdt=Jd(),Edt=G7(),she=c_();lhe.exports=function(t,r){Mdt(t,r,{name:"selections",handleItemDefaults:kdt});for(var n=r.selections,i=0;i{"use strict";fhe.exports=function(t,r,n){n("newselection.mode");var i=n("newselection.line.width");i&&(n("newselection.line.color"),n("newselection.line.dash")),n("activeselection.fillcolor"),n("activeselection.opacity")}});var O5=Ae((Hsr,phe)=>{"use strict";var Cdt=$l(),hhe=ei(),dhe=Wc();phe.exports=function(t){return function(n,i){var a=n[t];if(Array.isArray(a))for(var o=Cdt.subplotsRegistry.cartesian,s=o.idRegex,u=i._subplots,l=u.xaxis,f=u.yaxis,c=u.cartesian,h=i._has("cartesian"),d=0;d{"use strict";var vhe=C7(),q5=Vce();mhe.exports={moduleType:"component",name:"selections",layoutAttributes:G7(),supplyLayoutDefaults:uhe(),supplyDrawNewSelectionDefaults:che(),includeBasePlot:O5()("selections"),draw:vhe.draw,drawOne:vhe.drawOne,reselect:q5.reselect,prepSelect:q5.prepSelect,clearOutline:q5.clearOutline,clearSelectionsCache:q5.clearSelectionsCache,selectOnClick:q5.selectOnClick}});var K7=Ae((jsr,Fhe)=>{"use strict";var Z7=Jl(),k0=ei(),yhe=k0.numberFormat,Ldt=cd(),Pdt=IP(),Ez=$l(),Mhe=k0.strTranslate,zdt=Xf(),ghe=jl(),d_=Mu(),Idt=Xc(),_he=wu(),Rdt=Sm(),Ddt=xp(),Ehe=Em(),kz=Ehe.selectingOrDrawing,Fdt=Ehe.freeMode,Bdt=td().FROM_TL,Odt=p5(),qdt=w5().redrawReglTraces,Ndt=Cc(),W7=Wc().getFromId,Udt=oh().prepSelect,Vdt=oh().clearOutline,Gdt=oh().selectOnClick,H7=b7(),Y7=dd(),xhe=Y7.MINDRAG,nv=Y7.MINZOOM,bhe=!0;function Hdt(e,t,r,n,i,a,o,s){var u=e._fullLayout._zoomlayer,l=o+s==="nsew",f=(o+s).length===1,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W;r+=t.yaxis._shift;function N(){if(c=t.xaxis,h=t.yaxis,E=c._length,A=h._length,v=c._offset,k=h._offset,d={},d[c._id]=c,p={},p[h._id]=h,o&&s)for(var He=t.overlays,it=0;it=0){et._fullLayout._deactivateShape(et);return}var It=et._fullLayout.clickmode;if(X7(et),He===2&&!f&&Et(),l)It.indexOf("select")>-1&&Gdt(it,et,_,b,t.id,ae),It.indexOf("event")>-1&&Idt.click(et,it,t.id);else if(He===1&&f){var Yt=o?h:c,cr=o==="s"||s==="w"?0:1,_r=Yt._name+".range["+cr+"]",yr=Wdt(Yt,cr),Ut="left",Re="middle";if(Yt.fixedrange)return;o?(Re=o==="n"?"top":"bottom",Yt.side==="right"&&(Ut="right")):s==="e"&&(Ut="right"),et._context.showAxisRangeEntryBoxes&&Z7.select(re).call(zdt.makeEditable,{gd:et,immediate:!0,background:et._fullLayout.paper_bgcolor,text:String(yr),fill:Yt.tickfont?Yt.tickfont.color:"#444",horizontalAlign:Ut,verticalAlign:Re}).on("edit",function(xe){var Oe=Yt.d2r(xe);Oe!==void 0&&Ez.call("_guiRelayout",et,_r,Oe)})}}Ddt.init(ae);var Ce,de,te,ke,Ee,Me,Ue,De,ye,qe;function ce(He,it,et){var It=re.getBoundingClientRect();Ce=it-It.left,de=et-It.top,e._fullLayout._calcInverseTransform(e);var Yt=k0.apply3DTransform(e._fullLayout._invTransform)(Ce,de);Ce=Yt[0],de=Yt[1],te={l:Ce,r:Ce,w:0,t:de,b:de,h:0},ke=e._hmpixcount?e._hmlumcount/e._hmpixcount:Ldt(e._fullLayout.plot_bgcolor).getLuminance(),Ee="M0,0H"+E+"V"+A+"H0V0",Me=!1,Ue="xy",qe=!1,De=Lhe(u,ke,v,k,Ee),ye=Phe(u,v,k)}function Je(He,it){if(e._transitioningWithDuration)return!1;var et=Math.max(0,Math.min(E,j*He+Ce)),It=Math.max(0,Math.min(A,W*it+de)),Yt=Math.abs(et-Ce),cr=Math.abs(It-de);te.l=Math.min(Ce,et),te.r=Math.max(Ce,et),te.t=Math.min(de,It),te.b=Math.max(de,It);function _r(){Ue="",te.r=te.l,te.t=te.b,ye.attr("d","M0,0Z")}if(L.isSubplotConstrained)Yt>nv||cr>nv?(Ue="xy",Yt/E>cr/A?(cr=Yt*A/E,de>It?te.t=de-cr:te.b=de+cr):(Yt=cr*E/A,Ce>et?te.l=Ce-Yt:te.r=Ce+Yt),ye.attr("d",Cz(te))):_r();else if(x.isSubplotConstrained)if(Yt>nv||cr>nv){Ue="xy";var yr=Math.min(te.l/E,(A-te.b)/A),Ut=Math.max(te.r/E,(A-te.t)/A);te.l=yr*E,te.r=Ut*E,te.b=(1-yr)*A,te.t=(1-Ut)*A,ye.attr("d",Cz(te))}else _r();else!M||cr0){var xe;if(x.isSubplotConstrained||!C&&M.length===1){for(xe=0;xe<_.length;xe++)_[xe].range=_[xe]._r.slice(),H7(_[xe],1-it/A);He=it*E/A,Ut=He/2}if(x.isSubplotConstrained||!M&&C.length===1){for(xe=0;xe1&&(_r.maxallowed!==void 0&&P===(_r.range[0]<_r.range[1]?"e":"w")||_r.minallowed!==void 0&&P===(_r.range[0]<_r.range[1]?"w":"e"))&&(ft=1,fe=0),Fe?(ge=Oe,pe=o||x.isSubplotConstrained?He[1]:Ye(yr,ge)):x.yaHash[yr._id]?(ge=Oe,pe=He[1]*yr._length/h._length):x.xaHash[yr._id]?(ge=xe,pe=C==="ew"?-He[0]*yr._length/c._length:Ye(yr,ge,{e:"right",w:"left"}[C])):(ge=Tt(yr,xe,Oe),pe=vt(yr,ge)),ge>1&&(yr.maxallowed!==void 0&&T===(yr.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function Xdt(e,t,r){return e?e==="nsew"?r?"":t==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function Lhe(e,t,r,n,i){return e.append("path").attr("class","zoombox").style({fill:t>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",Mhe(r,n)).attr("d",i+"Z")}function Phe(e,t,r){return e.append("path").attr("class","zoombox-corners").style({fill:ghe.background,stroke:ghe.defaultLine,"stroke-width":1,opacity:0}).attr("transform",Mhe(t,r)).attr("d","M0,0Z")}function zhe(e,t,r,n,i,a){e.attr("d",n+"M"+r.l+","+r.t+"v"+r.h+"h"+r.w+"v-"+r.h+"h-"+r.w+"Z"),Ihe(e,t,i,a)}function Ihe(e,t,r,n){r||(e.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),t.transition().style("opacity",1).duration(200))}function X7(e){Z7.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function Rhe(e){bhe&&e.data&&e._context.showTips&&(k0.notifier(k0._(e,"Double-click to zoom back out"),"long"),bhe=!1)}function Zdt(e,t){return"M"+(e.l-.5)+","+(t-nv-.5)+"h-3v"+(2*nv+1)+"h3ZM"+(e.r+.5)+","+(t-nv-.5)+"h3v"+(2*nv+1)+"h-3Z"}function Ydt(e,t){return"M"+(t-nv-.5)+","+(e.t-.5)+"v-3h"+(2*nv+1)+"v3ZM"+(t-nv-.5)+","+(e.b+.5)+"v3h"+(2*nv+1)+"v-3Z"}function Cz(e){var t=Math.floor(Math.min(e.b-e.t,e.r-e.l,nv)/2);return"M"+(e.l-3.5)+","+(e.t-.5+t)+"h3v"+-t+"h"+t+"v-3h-"+(t+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+t)+"h-3v"+-t+"h"+-t+"v-3h"+(t+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-t)+"h-3v"+t+"h"+-t+"v3h"+(t+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-t)+"h3v"+t+"h"+t+"v3h-"+(t+3)+"Z"}function Ahe(e,t,r,n,i){for(var a=!1,o={},s={},u,l,f,c,h=(i||{}).xaHash,d=(i||{}).yaHash,p=0;p{"use strict";var Kdt=Jl(),Lz=Xc(),Jdt=xp(),$dt=Sm(),Lm=K7().makeDragBox,yd=dd().DRAGGERSIZE;Pz.initInteractions=function(t){var r=t._fullLayout;if(t._context.staticPlot){Kdt.select(t).selectAll(".drag").remove();return}if(!(!r._has("cartesian")&&!r._has("splom"))){var n=Object.keys(r._plots||{}).sort(function(a,o){if((r._plots[a].mainplot&&!0)===(r._plots[o].mainplot&&!0)){var s=a.split("y"),u=o.split("y");return s[0]===u[0]?Number(s[1]||1)-Number(u[1]||1):Number(s[0]||1)-Number(u[0]||1)}return r._plots[a].mainplot?1:-1});n.forEach(function(a){var o=r._plots[a],s=o.xaxis,u=o.yaxis;if(!o.mainplot){var l=Lm(t,o,s._offset,u._offset,s._length,u._length,"ns","ew");l.onmousemove=function(h){t._fullLayout._rehover=function(){t._fullLayout._hoversubplot===a&&t._fullLayout._plots[a]&&Lz.hover(t,h,a)},Lz.hover(t,h,a),t._fullLayout._lasthover=l,t._fullLayout._hoversubplot=a},l.onmouseout=function(h){t._dragging||(t._fullLayout._hoversubplot=null,Jdt.unhover(t,h))},t._context.showAxisDragHandles&&(Lm(t,o,s._offset-yd,u._offset-yd,yd,yd,"n","w"),Lm(t,o,s._offset+s._length,u._offset-yd,yd,yd,"n","e"),Lm(t,o,s._offset-yd,u._offset+u._length,yd,yd,"s","w"),Lm(t,o,s._offset+s._length,u._offset+u._length,yd,yd,"s","e"))}if(t._context.showAxisDragHandles){if(a===s._mainSubplot){var f=s._mainLinePosition;s.side==="top"&&(f-=yd),Lm(t,o,s._offset+s._length*.1,f,s._length*.8,yd,"","ew"),Lm(t,o,s._offset,f,s._length*.1,yd,"","w"),Lm(t,o,s._offset+s._length*.9,f,s._length*.1,yd,"","e")}if(a===u._mainSubplot){var c=u._mainLinePosition;u.side!=="right"&&(c-=yd),Lm(t,o,c,u._offset+u._length*.1,yd,u._length*.8,"ns",""),Lm(t,o,c,u._offset+u._length*.9,yd,u._length*.1,"s",""),Lm(t,o,c,u._offset,yd,u._length*.1,"n","")}}});var i=r._hoverlayer.node();i.onmousemove=function(a){a.target=t._fullLayout._lasthover,Lz.hover(t,a,r._hoversubplot)},i.onclick=function(a){a.target=t._fullLayout._lasthover,Lz.click(t,a)},i.onmousedown=function(a){t._fullLayout._lasthover.onmousedown(a)},Pz.updateFx(t)}};Pz.updateFx=function(e){var t=e._fullLayout,r=t.dragmode==="pan"?"move":"crosshair";$dt(t._draggers,r)}});var qhe=Ae((Zsr,Ohe)=>{"use strict";var Bhe=$l();Ohe.exports=function(t){for(var r=Bhe.layoutArrayContainers,n=Bhe.layoutArrayRegexes,i=t.split("[")[0],a,o,s=0;s{"use strict";var Qdt=yg(),$7=wL(),N5=G1(),ept=IL().sorterAsc,Q7=$l();U5.containerArrayMatch=qhe();var tpt=U5.isAddVal=function(t){return t==="add"||Qdt(t)},Nhe=U5.isRemoveVal=function(t){return t===null||t==="remove"};U5.applyContainerArrayChanges=function(t,r,n,i,a){var o=r.astr,s=Q7.getComponentMethod(o,"supplyLayoutDefaults"),u=Q7.getComponentMethod(o,"draw"),l=Q7.getComponentMethod(o,"drawOne"),f=i.replot||i.recalc||s===$7||u===$7,c=t.layout,h=t._fullLayout;if(n[""]){Object.keys(n).length>1&&N5.warn("Full array edits are incompatible with other edits",o);var d=n[""][""];if(Nhe(d))r.set(null);else if(Array.isArray(d))r.set(d);else return N5.warn("Unrecognized full array edit value",o,d),!0;return f?!1:(s(c,h),u(t),!0)}var p=Object.keys(n).map(Number).sort(ept),_=r.get(),b=_||[],v=a(h,o).get(),k=[],E=-1,A=b.length,L,x,C,M,m,P,T,B;for(L=0;Lb.length-(T?0:1)){N5.warn("index out of range",o,C);continue}if(P!==void 0)m.length>1&&N5.warn("Insertion & removal are incompatible with edits to the same index.",o,C),Nhe(P)?k.push(C):T?(P==="add"&&(P={}),b.splice(C,0,P),v&&v.splice(C,0,{})):N5.warn("Unrecognized full object edit value",o,C,P),E===-1&&(E=C);else for(x=0;x=0;L--)b.splice(k[L],1),v&&v.splice(k[L],1);if(b.length?_||r.set(b):r.set(null),f)return!1;if(s(c,h),l!==$7){var F;if(E===-1)F=p;else{for(A=Math.max(b.length,A),F=[],L=0;L=E));L++)F.push(C);for(L=E;L{"use strict";var Whe=ku(),jhe=$l(),Up=ei(),V5=Cc(),Xhe=Wc(),Zhe=jl(),G5=Xhe.cleanId,rpt=Xhe.getFromTrace,eU=jhe.traceIs,ipt=["x","y","z"];C0.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&Up.log("Clearing previous rejected promises from queue."),e._promises=[]};C0.cleanLayout=function(e){var t,r;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var n=(V5.subplotsRegistry.cartesian||{}).attrRegex,i=(V5.subplotsRegistry.polar||{}).attrRegex,a=(V5.subplotsRegistry.ternary||{}).attrRegex,o=(V5.subplotsRegistry.gl3d||{}).attrRegex,s=Object.keys(e);for(t=0;t3?(b.x=1.02,b.xanchor="left"):b.x<-2&&(b.x=-.02,b.xanchor="right"),b.y>3?(b.y=1.02,b.yanchor="bottom"):b.y<-2&&(b.y=-.02,b.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),Zhe.clean(e),e.template&&e.template.layout&&C0.cleanLayout(e.template.layout),e};function Q3(e,t){var r=e[t],n=t.charAt(0);r&&r!=="paper"&&(e[t]=G5(r,n,!0))}C0.cleanData=function(e){for(var t=0;t0)return e.slice(0,t)}C0.hasParent=function(e,t){for(var r=Hhe(t);r;){if(r in e)return!0;r=Hhe(r)}return!1};C0.clearAxisTypes=function(e,t,r){for(var n=0;n{let r=(...n)=>n.every(i=>Up.isPlainObject(i))||n.every(i=>Array.isArray(i));if([e,t].every(n=>Array.isArray(n))){if(e.length!==t.length)return!1;for(let n=0;nUp.isPlainObject(n))){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e){if(n.startsWith("_"))continue;let i=e[n],a=t[n];if(i!==a&&!(r(i,a)?tU(i,a):!1))return!1}return!0}return!1};C0.collectionsAreEqual=tU});var Hz=Ae(zf=>{"use strict";var Dz=Jl(),opt=ku(),spt=pq(),Hl=ei(),Lc=Hl.nestedProperty,nU=_3(),av=Lne(),L0=$l(),Vz=w3(),Nu=Cc(),Vp=wu(),lpt=LN(),upt=Dd(),rU=Mu(),fpt=jl(),cpt=J7().initInteractions,hpt=jv(),dpt=oh().clearOutline,ede=fb().dfltConfig,Iz=Uhe(),Th=Yhe(),ac=w5(),p_=Sc(),ppt=dd().AX_NAME_PATTERN,iU=0,Khe=5;function vpt(e,t,r,n){var i;if(e=Hl.getGraphDiv(e),nU.init(e),Hl.isPlainObject(t)){var a=t;t=a.data,r=a.layout,n=a.config,i=a.frames}var o=nU.triggerHandler(e,"plotly_beforeplot",[t,r,n]);if(o===!1)return Promise.reject();!t&&!r&&!Hl.isPlotDiv(e)&&Hl.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function s(){if(i)return zf.addFrames(e,i)}rde(e,n),r||(r={}),Dz.select(e).classed("js-plotly-plot",!0),rU.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var u=(e.data||[]).length===0&&Array.isArray(t);Array.isArray(t)&&(Th.cleanData(t),u?e.data=t:e.data.push.apply(e.data,t),e.empty=!1),(!e.layout||u)&&(e.layout=Th.cleanLayout(r)),Nu.supplyDefaults(e);var l=e._fullLayout,f=l._has("cartesian");l._replotting=!0,(u||l._shouldCreateBgLayer)&&(Opt(e),l._shouldCreateBgLayer&&delete l._shouldCreateBgLayer),rU.initGradients(e),rU.initPatterns(e),u&&Vp.saveShowSpikeInitial(e);var c=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;c&&Nu.doCalcdata(e);for(var h=0;h=e.data.length||i<-e.data.length)throw new Error(r+" must be valid indices for gd.data.");if(t.indexOf(i,n+1)>-1||i>=0&&t.indexOf(-e.data.length+i)>-1||i<0&&t.indexOf(e.data.length+i)>-1)throw new Error("each index in "+r+" must be unique.")}}function ide(e,t,r){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(t)||(t=[t]),Bz(e,t,"currentIndices"),typeof r!="undefined"&&!Array.isArray(r)&&(r=[r]),typeof r!="undefined"&&Bz(e,r,"newIndices"),typeof r!="undefined"&&t.length!==r.length)throw new Error("current and new indices must be of equal length.")}function xpt(e,t,r){var n,i;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("traces must be defined.");for(Array.isArray(t)||(t=[t]),n=0;n=0&&f=0&&f0&&typeof M.parts[T]!="string";)T--;var B=M.parts[T],F=M.parts[T-1]+"."+B,U=M.parts.slice(0,T).join("."),G=Lc(e.layout,U).get(),j=Lc(n,U).get(),W=M.get();if(m!==void 0){v[C]=m,k[C]=B==="reverse"?m:Lg(W);var N=Vz.getLayoutValObject(n,M.parts);if(N&&N.impliedEdits&&m!==null)for(var H in N.impliedEdits)E(Hl.relativeAttr(C,H),N.impliedEdits[H]);if(["width","height"].indexOf(C)!==-1)if(m){E("autosize",null);var re=C==="height"?"width":"height";E(re,n[re])}else n[C]=e._initialAutoSize[C];else if(C==="autosize")E("width",m?null:n.width),E("height",m?null:n.height);else if(F.match(hde))x(F),Lc(n,U+"._inputRange").set(null);else if(F.match(dde)){x(F),Lc(n,U+"._inputRange").set(null);var ae=Lc(n,U).get();ae._inputDomain&&(ae._input.domain=ae._inputDomain.slice())}else F.match(Apt)&&Lc(n,U+"._inputDomain").set(null);if(B==="type"){L=G;var be=j.type==="linear"&&m==="log",ze=j.type==="log"&&m==="linear";if(be||ze){if(!L||!L.range)E(U+".autorange",!0);else if(j.autorange)be&&(L.range=L.range[1]>L.range[0]?[1,2]:[2,1]);else{var Ce=L.range[0],de=L.range[1];be?(Ce<=0&&de<=0&&E(U+".autorange",!0),Ce<=0?Ce=de/1e6:de<=0&&(de=Ce/1e6),E(U+".range[0]",Math.log(Ce)/Math.LN10),E(U+".range[1]",Math.log(de)/Math.LN10)):(E(U+".range[0]",Math.pow(10,Ce)),E(U+".range[1]",Math.pow(10,de)))}Array.isArray(n._subplots.polar)&&n._subplots.polar.length&&n[M.parts[0]]&&M.parts[1]==="radialaxis"&&delete n[M.parts[0]]._subplot.viewInitial["radialaxis.range"],L0.getComponentMethod("annotations","convertCoords")(e,j,m,E),L0.getComponentMethod("images","convertCoords")(e,j,m,E)}else E(U+".autorange",!0),E(U+".range",null);Lc(n,U+"._inputRange").set(null)}else if(B.match(ppt)){var te=Lc(n,C).get(),ke=(m||{}).type;(!ke||ke==="-")&&(ke="linear"),L0.getComponentMethod("annotations","convertCoords")(e,te,ke,E),L0.getComponentMethod("images","convertCoords")(e,te,ke,E)}var Ee=Iz.containerArrayMatch(C);if(Ee){f=Ee.array,c=Ee.index;var Me=Ee.property,Ue=N||{editType:"calc"};c!==""&&Me===""&&(Iz.isAddVal(m)?k[C]=null:Iz.isRemoveVal(m)?k[C]=(Lc(r,f).get()||[])[c]:Hl.warn("unrecognized full object value",t)),p_.update(b,Ue),l[f]||(l[f]={});var De=l[f][c];De||(De=l[f][c]={}),De[Me]=m,delete t[C]}else B==="reverse"?(G.range?G.range.reverse():(E(U+".autorange",!0),G.range=[1,0]),j.autorange?b.calc=!0:b.plot=!0):(C==="dragmode"&&(m===!1&&W!==!1||m!==!1&&W===!1)||n._has("scatter-like")&&n._has("regl")&&C==="dragmode"&&(m==="lasso"||m==="select")&&!(W==="lasso"||W==="select")?b.plot=!0:N?p_.update(b,N):b.calc=!0,M.set(m))}}for(f in l){var ye=Iz.applyContainerArrayChanges(e,a(r,f),l[f],b,a);ye||(b.plot=!0)}for(var qe in A){L=Vp.getFromId(e,qe);var ce=L&&L._constraintGroup;if(ce){b.calc=!0;for(var Je in ce)A[Je]||(Vp.getFromId(e,Je)._constraintShrinkable=!0)}}(vde(e)||t.height||t.width)&&(b.plot=!0);var nt=n.shapes;for(c=0;c1;)if(n.pop(),r=Lc(t,n.join(".")+".uirevision").get(),r!==void 0)return r;return t.uirevision}function Ept(e,t){for(var r=0;r[U,e._ev.listeners(U)]);a=zf.newPlot(e,t,r,n).then(()=>{for(let[U,G]of F)G.forEach(j=>e.on(U,j));return zf.react(e,t,r,n)})}else{e.data=t||[],Th.cleanData(e.data),e.layout=r||{},Th.cleanLayout(e.layout),Cpt(e.data,e.layout,s,u),Nu.supplyDefaults(e,{skipUpdateCalc:!0});var c=e._fullData,h=e._fullLayout,d=h.datarevision===void 0,p=h.transition,_=zpt(e,u,h,d,p),b=_.newDataRevision,v=Ppt(e,s,c,d,p,b);if(vde(e)&&(_.layoutReplot=!0),v.calc||_.calc){e.calcdata=void 0;for(var k=Object.getOwnPropertyNames(h),E=0;E(f||e.emit("plotly_react",{config:n,data:t,layout:r}),e))}function Ppt(e,t,r,n,i,a){var o=t.length===r.length;if(!i&&!o)return{fullReplot:!0,calc:!0};var s=p_.traceFlags();s.arrays={},s.nChanges=0,s.nChangesAnim=0;var u,l;function f(d){var p=Vz.getTraceValObject(l,d);return!l._module.animatable&&p.anim&&(p.anim=!1),p}var c={getValObject:f,flags:s,immutable:n,transition:i,newDataRevision:a,gd:e},h={};for(u=0;u=i.length?i[0]:i[l]:i}function s(l){return Array.isArray(a)?l>=a.length?a[0]:a[l]:a}function u(l,f){var c=0;return function(){if(l&&++c===f)return l()}}return new Promise(function(l,f){function c(){if(n._frameQueue.length!==0){for(;n._frameQueue.length;){var B=n._frameQueue.pop();B.onInterrupt&&B.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function h(B){if(B.length!==0){for(var F=0;Fn._timeToNext&&p()};B()}var b=0;function v(B){return Array.isArray(i)?b>=i.length?B.transitionOpts=i[b]:B.transitionOpts=i[0]:B.transitionOpts=i,b++,B}var k,E,A=[],L=t==null,x=Array.isArray(t),C=!L&&!x&&Hl.isPlainObject(t);if(C)A.push({type:"object",data:v(Hl.extendFlat({},t))});else if(L||["string","number"].indexOf(typeof t)!==-1)for(k=0;k0&&PP)&&T.push(E);A=T}}A.length>0?h(A):(e.emit("plotly_animated"),l())})}function Rpt(e,t,r){if(e=Hl.getGraphDiv(e),t==null)return Promise.resolve();if(!Hl.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var n,i,a,o,s=e._transitionData._frames,u=e._transitionData._frameHash;if(!Array.isArray(t))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+t);var l=s.length+t.length*2,f=[],c={};for(n=t.length-1;n>=0;n--)if(Hl.isPlainObject(t[n])){var h=t[n].name,d=(u[h]||c[h]||{}).name,p=t[n].name,_=u[d]||c[d];d&&p&&typeof p=="number"&&_&&iUM.index?-1:C.index=0;n--){if(i=f[n].frame,typeof i.name=="number"&&Hl.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!i.name)for(;u[i.name="frame "+e._transitionData._counter++];);if(u[i.name]){for(a=0;a=0;r--)n=t[r],a.push({type:"delete",index:n}),o.unshift({type:"insert",index:n,value:i[n]});var s=Nu.modifyFrames,u=Nu.modifyFrames,l=[e,o],f=[e,a];return av&&av.add(e,s,l,u,f),Nu.modifyFrames(e,a)}function Fpt(e){e=Hl.getGraphDiv(e);var t=e._fullLayout||{},r=e._fullData||[];return Nu.cleanPlot([],{},r,t),Nu.purge(e),nU.purge(e),t._container&&t._container.remove(),delete e._context,e}function Bpt(e){var t=e._fullLayout,r=e.getBoundingClientRect();if(!Hl.equalDomRects(r,t._lastBBox)){var n=t._invTransform=Hl.inverseTransformMatrix(Hl.getFullTransformMatrix(e));t._invScaleX=Math.sqrt(n[0][0]*n[0][0]+n[0][1]*n[0][1]+n[0][2]*n[0][2]),t._invScaleY=Math.sqrt(n[1][0]*n[1][0]+n[1][1]*n[1][1]+n[1][2]*n[1][2]),t._lastBBox=r}}function Opt(e){var t=Dz.select(e),r=e._fullLayout;if(r._calcInverseTransform=Bpt,r._calcInverseTransform(e),r._container=t.selectAll(".plot-container").data([0]),r._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),r._paperdiv=r._container.selectAll(".svg-container").data([0]),r._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),r._glcontainer=r._paperdiv.selectAll(".gl-container").data([{}]),r._glcontainer.enter().append("div").classed("gl-container",!0),r._paperdiv.selectAll(".main-svg").remove(),r._paperdiv.select(".modebar-container").remove(),r._paper=r._paperdiv.insert("svg",":first-child").classed("main-svg",!0),r._toppaper=r._paperdiv.append("svg").classed("main-svg",!0),r._modebardiv=r._paperdiv.append("div"),delete r._modeBar,r._hoverpaper=r._paperdiv.append("svg").classed("main-svg",!0),!r._uid){var n={};Dz.selectAll("defs").each(function(){this.id&&(n[this.id.split("-")[1]]=1)}),r._uid=Hl.randstr(n)}r._paperdiv.selectAll(".main-svg").attr(hpt.svgAttrs),r._defs=r._paper.append("defs").attr("id","defs-"+r._uid),r._clips=r._defs.append("g").classed("clips",!0),r._topdefs=r._toppaper.append("defs").attr("id","topdefs-"+r._uid),r._topclips=r._topdefs.append("g").classed("clips",!0),r._bgLayer=r._paper.append("g").classed("bglayer",!0),r._draggers=r._paper.append("g").classed("draglayer",!0);var i=r._paper.append("g").classed("layer-below",!0);r._imageLowerLayer=i.append("g").classed("imagelayer",!0),r._shapeLowerLayer=i.append("g").classed("shapelayer",!0),r._cartesianlayer=r._paper.append("g").classed("cartesianlayer",!0),r._polarlayer=r._paper.append("g").classed("polarlayer",!0),r._smithlayer=r._paper.append("g").classed("smithlayer",!0),r._ternarylayer=r._paper.append("g").classed("ternarylayer",!0),r._geolayer=r._paper.append("g").classed("geolayer",!0),r._funnelarealayer=r._paper.append("g").classed("funnelarealayer",!0),r._pielayer=r._paper.append("g").classed("pielayer",!0),r._iciclelayer=r._paper.append("g").classed("iciclelayer",!0),r._treemaplayer=r._paper.append("g").classed("treemaplayer",!0),r._sunburstlayer=r._paper.append("g").classed("sunburstlayer",!0),r._indicatorlayer=r._toppaper.append("g").classed("indicatorlayer",!0),r._glimages=r._paper.append("g").classed("glimages",!0);var a=r._toppaper.append("g").classed("layer-above",!0);r._imageUpperLayer=a.append("g").classed("imagelayer",!0),r._shapeUpperLayer=a.append("g").classed("shapelayer",!0),r._selectionLayer=r._toppaper.append("g").classed("selectionlayer",!0),r._infolayer=r._toppaper.append("g").classed("infolayer",!0),r._menulayer=r._toppaper.append("g").classed("menulayer",!0),r._zoomlayer=r._toppaper.append("g").classed("zoomlayer",!0),r._hoverlayer=r._hoverpaper.append("g").classed("hoverlayer",!0),r._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}zf.animate=Ipt;zf.addFrames=Rpt;zf.deleteFrames=Dpt;zf.addTraces=lde;zf.deleteTraces=ude;zf.extendTraces=ode;zf.moveTraces=aU;zf.prependTraces=sde;zf.newPlot=_pt;zf._doPlot=vpt;zf.purge=Fpt;zf.react=Lpt;zf.redraw=gpt;zf.relayout=H5;zf.restyle=Oz;zf.setPlotConfig=mpt;zf.update=Nz;zf._guiRelayout=oU(H5);zf._guiRestyle=oU(Oz);zf._guiUpdate=oU(Nz);zf._storeDirectGUIEdit=Tpt});var Pg=Ae(My=>{"use strict";var qpt=$l();My.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};My.getRedrawFunc=function(e){return function(){qpt.getComponentMethod("colorbar","draw")(e)}};My.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};My.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var mde=window.URL||window.webkitURL;My.createObjectURL=function(e){return mde.createObjectURL(e)};My.revokeObjectURL=function(e){return mde.revokeObjectURL(e)};My.createBlob=function(e,t){if(t==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(t==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var r=Npt(window.atob(e));return new window.Blob([r],{type:"image/"+t})};My.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function Npt(e){for(var t=e.length,r=new ArrayBuffer(t),n=new Uint8Array(r),i=0;i{"use strict";var lU=Jl(),Qsr=ei(),Upt=Mu(),Vpt=jl(),elr=jv(),sU=/"/g,j5="TOBESTRIPPED",Gpt=new RegExp('("'+j5+")|("+j5+'")',"g");function Hpt(e){var t=lU.select("body").append("div").style({display:"none"}).html(""),r=e.replace(/(&[^;]*;)/gi,function(n){return n==="<"?"<":n==="&rt;"?">":n.indexOf("<")!==-1||n.indexOf(">")!==-1?"":t.html(n).text()});return t.remove(),r}function Wpt(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}yde.exports=function(t,r,n){var i=t._fullLayout,a=i._paper,o=i._toppaper,s=i.width,u=i.height,l;a.insert("rect",":first-child").call(Upt.setRect,0,0,s,u).call(Vpt.fill,i.paper_bgcolor);var f=i._basePlotModules||[];for(l=0;l{"use strict";var jpt=ei(),Xpt=vb().EventEmitter,X5=Pg();function Zpt(e){var t=e.emitter||new Xpt,r=new Promise(function(n,i){var a=window.Image,o=e.svg,s=e.format||"png",u=e.canvas,l=e.scale||1,f=e.width||300,c=e.height||150,h=l*f,d=l*c,p=u.getContext("2d",{willReadFrequently:!0}),_=new a,b,v;s==="svg"||jpt.isSafari()?v=X5.encodeSVG(o):(b=X5.createBlob(o,"svg"),v=X5.createObjectURL(b)),u.width=h,u.height=d,_.onload=function(){var k;switch(b=null,X5.revokeObjectURL(v),s!=="svg"&&p.drawImage(_,0,0,h,d),s){case"jpeg":k=u.toDataURL("image/jpeg");break;case"png":k=u.toDataURL("image/png");break;case"webp":k=u.toDataURL("image/webp");break;case"svg":k=v;break;default:var E="Image format is not jpeg, png, svg or webp.";if(i(new Error(E)),!e.promise)return t.emit("error",E)}n(k),e.promise||t.emit("success",k)},_.onerror=function(k){if(b=null,X5.revokeObjectURL(v),i(k),!e.promise)return t.emit("error",k)},_.src=v});return e.promise?r:t}gde.exports=Zpt});var fU=Ae((ilr,bde)=>{"use strict";var _de=ku(),xde=Hz(),Ypt=Cc(),Ey=ei(),Z5=Pg(),Kpt=Wz(),Jpt=jz(),$pt=lL().version,uU={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function Qpt(e,t){t=t||{};var r,n,i,a;Ey.isPlainObject(e)?(r=e.data||[],n=e.layout||{},i=e.config||{},a={}):(e=Ey.getGraphDiv(e),r=Ey.extendDeep([],e.data),n=Ey.extendDeep({},e.layout),i=e._context,a=e._fullLayout||{});function o(x){return!(x in t)||Ey.validate(t[x],uU[x])}if(!o("width")&&t.width!==null||!o("height")&&t.height!==null)throw new Error("Height and width should be pixel values.");if(!o("format"))throw new Error("Export format is not "+Ey.join2(uU.format.values,", "," or ")+".");var s={};function u(x,C){return Ey.coerce(t,s,uU,x,C)}var l=u("format"),f=u("width"),c=u("height"),h=u("scale"),d=u("setBackground"),p=u("imageDataOnly"),_=document.createElement("div");_.style.position="absolute",_.style.left="-5000px",document.body.appendChild(_);var b=Ey.extendFlat({},n);f?b.width=f:t.width===null&&_de(a.width)&&(b.width=a.width),c?b.height=c:t.height===null&&_de(a.height)&&(b.height=a.height);var v=Ey.extendFlat({},i,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),k=Z5.getRedrawFunc(_);function E(){return new Promise(function(x){setTimeout(x,Z5.getDelay(_._fullLayout))})}function A(){return new Promise(function(x,C){var M=Kpt(_,l,h),m=_._fullLayout.width,P=_._fullLayout.height;function T(){xde.purge(_),document.body.removeChild(_)}if(l==="full-json"){var B=Ypt.graphJson(_,!1,"keepdata","object",!0,!0);return B.version=$pt,B=JSON.stringify(B),T(),x(p?B:Z5.encodeJSON(B))}if(T(),l==="svg")return x(p?M:Z5.encodeSVG(M));var F=document.createElement("canvas");F.id=Ey.randstr(),Jpt({format:l,width:m,height:P,scale:h,canvas:F,svg:M,promise:!0}).then(x).catch(C)})}function L(x){return p?x.replace(Z5.IMAGE_URL_PREFIX,""):x}return new Promise(function(x,C){xde.newPlot(_,r,b,v).then(k).then(E).then(A).then(function(M){x(L(M))}).catch(function(M){C(M)})})}bde.exports=Qpt});var Ade=Ae((nlr,Tde)=>{"use strict";var P0=ei(),evt=Cc(),tvt=w3(),rvt=fb().dfltConfig,Pm=P0.isPlainObject,Gb=Array.isArray,cU=P0.isArrayOrTypedArray;Tde.exports=function(t,r){t===void 0&&(t=[]),r===void 0&&(r={});var n=tvt.get(),i=[],a={_context:P0.extendFlat({},rvt)},o,s;Gb(t)?(a.data=P0.extendDeep([],t),o=t):(a.data=[],o=[],i.push(gd("array","data"))),Pm(r)?(a.layout=P0.extendDeep({},r),s=r):(a.layout={},s={},arguments.length>1&&i.push(gd("object","layout"))),evt.supplyDefaults(a);for(var u=a._fullData,l=o.length,f=0;fc.length&&n.push(gd("unused",i,l.concat(c.length)));var v=c.length,k=Array.isArray(b);k&&(v=Math.min(v,b.length));var E,A,L,x,C;if(h.dimensions===2)for(A=0;Ac[A].length&&n.push(gd("unused",i,l.concat(A,c[A].length)));var M=c[A].length;for(E=0;E<(k?Math.min(M,b[A].length):M);E++)L=k?b[A][E]:b,x=f[A][E],C=c[A][E],P0.validate(x,L)?C!==x&&C!==+x&&n.push(gd("dynamic",i,l.concat(A,E),x,C)):n.push(gd("value",i,l.concat(A,E),x))}else n.push(gd("array",i,l.concat(A),f[A]));else for(A=0;A{"use strict";var uvt=ei(),Zz=Pg();function fvt(e,t,r){var n=document.createElement("a"),i="download"in n,a=new Promise(function(o,s){var u,l;if(i)return u=Zz.createBlob(e,r),l=Zz.createObjectURL(u),n.href=l,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n),Zz.revokeObjectURL(l),u=null,o(t);if(uvt.isSafari()){var f=r==="svg"?",":";base64,";return Zz.octetStream(f+encodeURIComponent(e)),o(t)}s(new Error("download error"))});return a}Sde.exports=fvt});var hU=Ae((slr,kde)=>{"use strict";var Ede=ei(),cvt=fU(),hvt=Mde(),olr=Pg();function dvt(e,t){var r;return Ede.isPlainObject(e)||(r=Ede.getGraphDiv(e)),t=t||{},t.format=t.format||"png",t.width=t.width||null,t.height=t.height||null,t.imageDataOnly=!0,new Promise(function(n,i){r&&r._snapshotInProgress&&i(new Error("Snapshotting already in progress.")),r&&(r._snapshotInProgress=!0);var a=cvt(e,t),o=t.filename||e.fn||"newplot";o+="."+t.format.replace("-","."),a.then(function(s){return r&&(r._snapshotInProgress=!1),hvt(s,o,t.format)}).then(function(s){n(s)}).catch(function(s){r&&(r._snapshotInProgress=!1),i(s)})})}kde.exports=dvt});var Ide=Ae(dU=>{"use strict";var Cv=ei(),Lv=Cv.isPlainObject,Cde=w3(),Lde=Cc(),pvt=Gf(),Pde=Lf(),zde=fb().dfltConfig;dU.makeTemplate=function(e){e=Cv.isPlainObject(e)?e:Cv.getGraphDiv(e),e=Cv.extendDeep({_context:zde},{data:e.data,layout:e.layout}),Lde.supplyDefaults(e);var t=e.data||[],r=e.layout||{};r._basePlotModules=e._fullLayout._basePlotModules,r._modules=e._fullLayout._modules;var n={data:{},layout:{}};t.forEach(function(d){var p={};Y5(d,p,mvt.bind(null,d));var _=Cv.coerce(d,{},pvt,"type"),b=n.data[_];b||(b=n.data[_]=[]),b.push(p)}),Y5(r,n.layout,vvt.bind(null,r)),delete n.layout.template;var i=r.template;if(Lv(i)){var a=i.layout,o,s,u,l,f,c;Lv(a)&&Yz(a,n.layout);var h=i.data;if(Lv(h)){for(s in n.data)if(u=h[s],Array.isArray(u)){for(f=n.data[s],c=f.length,l=u.length,o=0;ov?o.push({code:"unused",traceType:d,templateCount:b,dataCount:v}):v>b&&o.push({code:"reused",traceType:d,templateCount:b,dataCount:v})}}function k(E,A){for(var L in E)if(L.charAt(0)!=="_"){var x=E[L],C=z0(E,L,A);Lv(x)?(Array.isArray(E)&&x._template===!1&&x.templateitemname&&o.push({code:"missing",path:C,templateitemname:x.templateitemname}),k(x,C)):Array.isArray(x)&&yvt(x)&&k(x,C)}}if(k({data:u,layout:s},""),o.length)return o.map(gvt)};function yvt(e){for(var t=0;t{"use strict";var nd=Hz();Vc._doPlot=nd._doPlot;Vc.newPlot=nd.newPlot;Vc.restyle=nd.restyle;Vc.relayout=nd.relayout;Vc.redraw=nd.redraw;Vc.update=nd.update;Vc._guiRestyle=nd._guiRestyle;Vc._guiRelayout=nd._guiRelayout;Vc._guiUpdate=nd._guiUpdate;Vc._storeDirectGUIEdit=nd._storeDirectGUIEdit;Vc.react=nd.react;Vc.extendTraces=nd.extendTraces;Vc.prependTraces=nd.prependTraces;Vc.addTraces=nd.addTraces;Vc.deleteTraces=nd.deleteTraces;Vc.moveTraces=nd.moveTraces;Vc.purge=nd.purge;Vc.addFrames=nd.addFrames;Vc.deleteFrames=nd.deleteFrames;Vc.animate=nd.animate;Vc.setPlotConfig=nd.setPlotConfig;var _vt=NM().getGraphDiv,xvt=lz().eraseActiveShape;Vc.deleteActiveShape=function(e){return xvt(_vt(e))};Vc.toImage=fU();Vc.validate=Ade();Vc.downloadImage=hU();var Rde=Ide();Vc.makeTemplate=Rde.makeTemplate;Vc.validateTemplate=Rde.validateTemplate});var eT=Ae((flr,Fde)=>{"use strict";var pU=ei(),bvt=$l();Fde.exports=function(t,r,n,i){var a=i("x"),o=i("y"),s,u=bvt.getComponentMethod("calendars","handleTraceDefaults");if(u(t,r,["x","y"],n),a){var l=pU.minRowLength(a);o?s=Math.min(l,pU.minRowLength(o)):(s=l,i("y0"),i("dy"))}else{if(!o)return 0;s=pU.minRowLength(o),i("x0"),i("dx")}return r._length=s,s}});var zm=Ae((clr,qde)=>{"use strict";var Bde=ei().dateTick0,wvt=rf(),Tvt=wvt.ONEWEEK;function Ode(e,t){return e%Tvt===0?Bde(t,1):Bde(t,0)}qde.exports=function(t,r,n,i,a){if(a||(a={x:!0,y:!0}),a.x){var o=i("xperiod");o&&(i("xperiod0",Ode(o,r.xcalendar)),i("xperiodalignment"))}if(a.y){var s=i("yperiod");s&&(i("yperiod0",Ode(s,r.ycalendar)),i("yperiodalignment"))}}});var Vde=Ae((hlr,Ude)=>{"use strict";var Nde=["orientation","groupnorm","stackgaps"];Ude.exports=function(t,r,n,i){var a=n._scatterStackOpts,o=i("stackgroup");if(o){var s=r.xaxis+r.yaxis,u=a[s];u||(u=a[s]={});var l=u[o],f=!1;l?l.traces.push(r):(l=u[o]={traceIndices:[],traces:[r]},f=!0);for(var c={orientation:r.x&&!r.y?"h":"v"},h=0;h{"use strict";var Gde=jl(),Hde=yp().hasColorscale,Wde=rd(),Avt=lc();jde.exports=function(t,r,n,i,a,o){var s=Avt.isBubble(t),u=(t.line||{}).color,l;if(o=o||{},u&&(n=u),a("marker.symbol"),a("marker.opacity",s?.7:1),a("marker.size"),o.noAngle||(a("marker.angle"),o.noAngleRef||a("marker.angleref"),o.noStandOff||a("marker.standoff")),a("marker.color",n),Hde(t,"marker")&&Wde(t,r,i,a,{prefix:"marker.",cLetter:"c"}),o.noSelect||(a("selected.marker.color"),a("unselected.marker.color"),a("selected.marker.size"),a("unselected.marker.size")),o.noLine||(u&&!Array.isArray(u)&&r.marker.color!==u?l=u:s?l=Gde.background:l=Gde.defaultLine,a("marker.line.color",l),Hde(t,"marker.line")&&Wde(t,r,i,a,{prefix:"marker.line.",cLetter:"c"}),a("marker.line.width",s?1:0)),s&&(a("marker.sizeref"),a("marker.sizemin"),a("marker.sizemode")),o.gradient){var f=a("marker.gradient.type");f!=="none"&&a("marker.gradient.color")}}});var I0=Ae((plr,Xde)=>{"use strict";var Svt=ei().isArrayOrTypedArray,Mvt=yp().hasColorscale,Evt=rd();Xde.exports=function(t,r,n,i,a,o){o||(o={});var s=(t.marker||{}).color;if(s&&s._inputArray&&(s=s._inputArray),a("line.color",n),Mvt(t,"line"))Evt(t,r,i,a,{prefix:"line.",cLetter:"c"});else{var u=(Svt(s)?!1:s)||n;a("line.color",u)}a("line.width"),o.noDash||a("line.dash"),o.backoff&&a("line.backoff")}});var tT=Ae((vlr,Zde)=>{"use strict";Zde.exports=function(t,r,n){var i=n("line.shape");i==="spline"&&n("line.smoothing")}});var R0=Ae((mlr,Yde)=>{"use strict";var kvt=ei();Yde.exports=function(e,t,r,n,i){i=i||{},n("textposition"),kvt.coerceFont(n,"textfont",i.font||r.font,i),i.noSelect||(n("selected.textfont.color"),n("unselected.textfont.color"))}});var Im=Ae((ylr,Jde)=>{"use strict";var Jz=jl(),Kde=ei().isArrayOrTypedArray;function Cvt(e){for(var t=Jz.interpolate(e[0][1],e[1][1],.5),r=2;r{"use strict";var $de=ei(),Lvt=$l(),Pvt=Zc(),zvt=Sy(),rT=lc(),Ivt=eT(),Rvt=zm(),Dvt=Vde(),Fvt=$v(),Bvt=I0(),Qde=tT(),Ovt=R0(),qvt=Im(),Nvt=ei().coercePattern;epe.exports=function(t,r,n,i){function a(d,p){return $de.coerce(t,r,Pvt,d,p)}var o=Ivt(t,r,i,a);if(o||(r.visible=!1),!!r.visible){Rvt(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("zorder");var s=Dvt(t,r,i,a);i.scattermode==="group"&&r.orientation===void 0&&a("orientation","v");var u=!s&&o{"use strict";var Uvt=Nb().getAxisGroup;rpe.exports=function(t,r,n,i,a){var o=r.orientation,s=r[{v:"x",h:"y"}[o]+"axis"],u=Uvt(n,s)+o,l=n._alignmentOpts||{},f=i("alignmentgroup"),c=l[u];c||(c=l[u]={});var h=c[f];h?h.traces.push(r):h=c[f]={traces:[r],alignmentIndex:Object.keys(c).length,offsetGroups:{}};var d=i("offsetgroup")||"",p=h.offsetGroups,_=p[d];r._offsetIndex=0,(a!=="group"||d)&&(_||(_=p[d]={offsetIndex:Object.keys(p).length}),r._offsetIndex=_.offsetIndex)}});var vU=Ae((xlr,ipe)=>{"use strict";var Vvt=ei(),Gvt=Hb(),Hvt=Zc();ipe.exports=function(t,r){var n,i,a,o=r.scattermode;function s(h){return Vvt.coerce(i._input,i,Hvt,h)}if(r.scattermode==="group")for(a=0;a=0;f--){var c=t[f];if(c.type==="scatter"&&c.xaxis===u.xaxis&&c.yaxis===u.yaxis){c.opacity=void 0;break}}}}}});var ape=Ae((blr,npe)=>{"use strict";var Wvt=ei(),jvt=XL();npe.exports=function(e,t){function r(i,a){return Wvt.coerce(e,t,jvt,i,a)}var n=t.barmode==="group";t.scattermode==="group"&&r("scattergap",n?t.bargap:.2)}});var Rm=Ae((wlr,spe)=>{"use strict";var Xvt=ku(),ope=ei(),Zvt=ope.dateTime2ms,$z=ope.incrementMonth,Yvt=rf(),Kvt=Yvt.ONEAVGMONTH;spe.exports=function(t,r,n,i){if(r.type!=="date")return{vals:i};var a=t[n+"periodalignment"];if(!a)return{vals:i};var o=t[n+"period"],s;if(Xvt(o)){if(o=+o,o<=0)return{vals:i}}else if(typeof o=="string"&&o.charAt(0)==="M"){var u=+o.substring(1);if(u>0&&Math.round(u)===u)s=u;else return{vals:i}}for(var l=r.calendar,f=a==="start",c=a==="end",h=t[n+"period0"],d=Zvt(h,l)||0,p=[],_=[],b=[],v=i.length,k=0;kE;)x=$z(x,-s,l);for(;x<=E;)x=$z(x,s,l);L=$z(x,-s,l)}else{for(A=Math.round((E-d)/o),x=d+A*o;x>E;)x-=o;for(;x<=E;)x+=o;L=x-o}p[k]=f?L:c?x:(L+x)/2,_[k]=L,b[k]=x}return{vals:p,starts:_,ends:b}}});var D0=Ae((Tlr,upe)=>{"use strict";var mU=yp().hasColorscale,yU=gp(),lpe=lc();upe.exports=function(t,r){lpe.hasLines(r)&&mU(r,"line")&&yU(t,r,{vals:r.line.color,containerStr:"line",cLetter:"c"}),lpe.hasMarkers(r)&&(mU(r,"marker")&&yU(t,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),mU(r,"marker.line")&&yU(t,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var ky=Ae((Alr,fpe)=>{"use strict";var ch=ei();fpe.exports=function(t,r){for(var n=0;n{"use strict";var cpe=ei();hpe.exports=function(t,r){cpe.isArrayOrTypedArray(r.selectedpoints)&&cpe.tagSelected(t,r)}});var B0=Ae((Mlr,_pe)=>{"use strict";var dpe=ku(),_U=ei(),K5=wu(),ppe=Rm(),gU=rf().BADNUM,xU=lc(),Jvt=D0(),$vt=ky(),Qvt=F0();function e0t(e,t){var r=e._fullLayout,n=t._xA=K5.getFromId(e,t.xaxis||"x","x"),i=t._yA=K5.getFromId(e,t.yaxis||"y","y"),a=n.makeCalcdata(t,"x"),o=i.makeCalcdata(t,"y"),s=ppe(t,n,"x",a),u=ppe(t,i,"y",o),l=s.vals,f=u.vals,c=t._length,h=new Array(c),d=t.ids,p=bU(t,r,n,i),_=!1,b,v,k,E,A,L;ype(r,t);var x="x",C="y",M;if(p)_U.pushUnique(p.traceIndices,t.index),b=p.orientation==="v",b?(C="s",M="x"):(x="s",M="y"),A=p.stackgaps==="interpolate";else{var m=mpe(t,c);vpe(e,t,n,i,l,f,m)}var P=!!t.xperiodalignment,T=!!t.yperiodalignment;for(v=0;vv&&h[E].gap;)E--;for(L=h[E].s,k=h.length-1;k>E;k--)h[k].s=L;for(;v{"use strict";xpe.exports=Qz;var t0t=ei().distinctVals;function Qz(e,t){this.traces=e,this.sepNegVal=t.sepNegVal,this.overlapNoMerge=t.overlapNoMerge;for(var r=1/0,n=t.posAxis._id.charAt(0),i=[],a=0;a{"use strict";var O0=ku(),v_=ei().isArrayOrTypedArray,iT=rf().BADNUM,r0t=$l(),J5=wu(),i0t=Nb().getAxisGroup,eI=bpe();function n0t(e,t){for(var r=t.xaxis,n=t.yaxis,i=e._fullLayout,a=e._fullData,o=e.calcdata,s=[],u=[],l=0;lu+o||!O0(s))}for(var f=0;f{"use strict";var Mpe=B0(),Epe=Wb().setGroupPositions;function m0t(e,t){for(var r=t.xaxis,n=t.yaxis,i=e._fullLayout,a=e._fullData,o=e.calcdata,s=[],u=[],l=0;lm[f]&&f{"use strict";var g0t=Mu(),Ipe=rf(),$5=Ipe.BADNUM,Rpe=Ipe.LOG_CLIP,Lpe=Rpe+.5,Ppe=Rpe-.5,tI=ei(),_0t=tI.segmentsIntersect,zpe=tI.constrain,EU=Sy();Dpe.exports=function(t,r){var n=r.trace||{},i=r.xaxis,a=r.yaxis,o=i.type==="log",s=a.type==="log",u=i._length,l=a._length,f=r.backoff,c=n.marker,h=r.connectGaps,d=r.baseTolerance,p=r.shape,_=p==="linear",b=n.fill&&n.fill!=="none",v=[],k=EU.minTolerance,E=t.length,A=new Array(E),L=0,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae;function be(Re){var xe=t[Re];if(!xe)return!1;var Oe=r.linearized?i.l2p(xe.x):i.c2p(xe.x),Ie=r.linearized?a.l2p(xe.y):a.c2p(xe.y);if(Oe===$5){if(o&&(Oe=i.c2p(xe.x,!0)),Oe===$5)return!1;s&&Ie===$5&&(Oe*=Math.abs(i._m*l*(i._m>0?Lpe:Ppe)/(a._m*u*(a._m>0?Lpe:Ppe)))),Oe*=1e3}if(Ie===$5){if(s&&(Ie=a.c2p(xe.y,!0)),Ie===$5)return!1;Ie*=1e3}return[Oe,Ie]}function ze(Re,xe,Oe,Ie){var Fe=Oe-Re,ft=Ie-xe,ge=.5-Re,fe=.5-xe,pe=Fe*Fe+ft*ft,dt=Fe*ge+ft*fe;if(dt>0&&dt1||Math.abs(ge.y-Oe[0][1])>1)&&(ge=[ge.x,ge.y],Ie&&ke(ge,Re)Ue||Re[1]ye)return[zpe(Re[0],Me,Ue),zpe(Re[1],De,ye)]}function wt(Re,xe){if(Re[0]===xe[0]&&(Re[0]===Me||Re[0]===Ue)||Re[1]===xe[1]&&(Re[1]===De||Re[1]===ye))return!0}function St(Re,xe){var Oe=[],Ie=Ct(Re),Fe=Ct(xe);return Ie&&Fe&&wt(Ie,Fe)||(Ie&&Oe.push(Ie),Fe&&Oe.push(Fe)),Oe}function Dt(Re,xe,Oe){return function(Ie,Fe){var ft=Ct(Ie),ge=Ct(Fe),fe=[];if(ft&&ge&&wt(ft,ge))return fe;ft&&fe.push(ft),ge&&fe.push(ge);var pe=2*tI.constrain((Ie[Re]+Fe[Re])/2,xe,Oe)-((ft||Ie)[Re]+(ge||Fe)[Re]);if(pe){var dt;ft&&ge?dt=pe>0==ft[Re]>ge[Re]?ft:ge:dt=ft||ge,dt[Re]+=pe}return fe}}var Zt;p==="linear"||p==="spline"?Zt=Ke:p==="hv"||p==="vh"?Zt=St:p==="hvh"?Zt=Dt(0,Me,Ue):p==="vhv"&&(Zt=Dt(1,De,ye));function Et(Re,xe){var Oe=xe[0]-Re[0],Ie=(xe[1]-Re[1])/Oe,Fe=(Re[1]*xe[0]-xe[1]*Re[0])/Oe;return Fe>0?[Ie>0?Me:Ue,ye]:[Ie>0?Ue:Me,De]}function Te(Re){var xe=Re[0],Oe=Re[1],Ie=xe===A[L-1][0],Fe=Oe===A[L-1][1];if(!(Ie&&Fe))if(L>1){var ft=xe===A[L-2][0],ge=Oe===A[L-2][1];Ie&&(xe===Me||xe===Ue)&&ft?ge?L--:A[L-1]=Re:Fe&&(Oe===De||Oe===ye)&&ge?ft?L--:A[L-1]=Re:A[L++]=Re}else A[L++]=Re}function ot(Re){A[L-1][0]!==Re[0]&&A[L-1][1]!==Re[1]&&Te([nt,gt]),Te(Re),Nt=null,nt=gt=0}var Tt=tI.isArrayOrTypedArray(c);function vt(Re){if(Re&&f&&(Re.i=x,Re.d=t,Re.trace=n,Re.marker=Tt?c[Re.i]:c,Re.backoff=f),Ce=Re[0]/u,de=Re[1]/l,ce=Re[0]Ue?Ue:0,Je=Re[1]ye?ye:0,ce||Je){if(!L)A[L++]=[ce||Re[0],Je||Re[1]];else if(Nt){var xe=Zt(Nt,Re);xe.length>1&&(ot(xe[0]),A[L++]=xe[1])}else at=Zt(A[L-1],Re)[0],A[L++]=at;var Oe=A[L-1];ce&&Je&&(Oe[0]!==ce||Oe[1]!==Je)?(Nt&&(nt!==ce&>!==Je?Te(nt&>?Et(Nt,Re):[nt||ce,gt||Je]):nt&>&&Te([nt,gt])),Te([ce,Je])):nt-ce&>-Je&&Te([ce||nt,Je||gt]),Nt=Re,nt=ce,gt=Je}else Nt&&ot(Zt(Nt,Re)[0]),A[L++]=Re}for(x=0;xte(T,Ye))break;M=T,N=U[0]*F[0]+U[1]*F[1],N>j?(j=N,m=T,B=!1):N=t.length||!T)break;vt(T),C=T}}Nt&&Te([nt||Nt[0],gt||Nt[1]]),v.push(A.slice(0,L))}var He=p.slice(p.length-1);if(f&&He!=="h"&&He!=="v"){for(var it=!1,et=-1,It=[],Yt=0;Yt{"use strict";var Fpe={tonextx:1,tonexty:1,tonext:1};Bpe.exports=function(t,r,n){var i,a,o,s,u,l={},f=!1,c=-1,h=0,d=-1;for(a=0;a=0?u=d:(u=d=h,h++),u{"use strict";var Dm=Jl(),x0t=$l(),Q5=ei(),aT=Q5.ensureSingle,qpe=Q5.identity,hh=Mu(),oT=lc(),b0t=kU(),w0t=CU(),rI=k5().tester;Npe.exports=function(t,r,n,i,a,o){var s,u,l=!a,f=!!a&&a.duration>0,c=w0t(t,r,n);if(s=i.selectAll("g.trace").data(c,function(d){return d[0].trace.uid}),s.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),s.order(),T0t(t,s,r),f){o&&(u=o());var h=Dm.transition().duration(a.duration).ease(a.easing).each("end",function(){u&&u()}).each("interrupt",function(){u&&u()});h.each(function(){i.selectAll("g.trace").each(function(d,p){Ope(t,p,r,d,c,this,a)})})}else s.each(function(d,p){Ope(t,p,r,d,c,this,a)});l&&s.exit().remove(),i.selectAll("path:not([d])").remove()};function T0t(e,t,r){t.each(function(n){var i=aT(Dm.select(this),"g","fills");hh.setClipUrl(i,r.layerClipId,e);var a=n[0].trace,o=[];a._ownfill&&o.push("_ownFill"),a._nexttrace&&o.push("_nextFill");var s=i.selectAll("g").data(o,qpe);s.enter().append("g"),s.exit().each(function(u){a[u]=null}).remove(),s.order().each(function(u){a[u]=aT(Dm.select(this),"path","js-fill")})})}function Ope(e,t,r,n,i,a,o){var s=e._context.staticPlot,u;A0t(e,t,r,n,i);var l=!!o&&o.duration>0;function f(Dt){return l?Dt.transition():Dt}var c=r.xaxis,h=r.yaxis,d=n[0].trace,p=d.line,_=Dm.select(a),b=aT(_,"g","errorbars"),v=aT(_,"g","lines"),k=aT(_,"g","points"),E=aT(_,"g","text");if(x0t.getComponentMethod("errorbars","plot")(e,b,r,o),d.visible!==!0)return;f(_).style("opacity",d.opacity);var A,L,x=d.fill.charAt(d.fill.length-1);x!=="x"&&x!=="y"&&(x="");var C,M;x==="y"?(C=1,M=h.c2p(0,!0)):x==="x"&&(C=0,M=c.c2p(0,!0)),n[0][r.isRangePlot?"nodeRangePlot3":"node3"]=_;var m="",P=[],T=d._prevtrace,B=null,F=null;T&&(m=T._prevRevpath||"",L=T._nextFill,P=T._ownPolygons,B=T._fillsegments,F=T._fillElement);var U,G,j="",W="",N,H,re,ae,be,ze,Ce=[];d._polygons=[];var de=[],te=[],ke=Q5.noop;if(A=d._ownFill,oT.hasLines(d)||d.fill!=="none"){L&&L.datum(n),["hv","vh","hvh","vhv"].indexOf(p.shape)!==-1?(N=hh.steps(p.shape),H=hh.steps(p.shape.split("").reverse().join(""))):p.shape==="spline"?N=H=function(Dt){var Zt=Dt[Dt.length-1];return Dt.length>1&&Dt[0][0]===Zt[0]&&Dt[0][1]===Zt[1]?hh.smoothclosed(Dt.slice(1),p.smoothing):hh.smoothopen(Dt,p.smoothing)}:N=H=function(Dt){return"M"+Dt.join("L")},re=function(Dt){return H(Dt.reverse())},te=b0t(n,{xaxis:c,yaxis:h,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(p.width||1,3)/4,shape:p.shape,backoff:p.backoff,simplify:p.simplify,fill:d.fill}),de=new Array(te.length);var Ee=0;for(u=0;u=s[0]&&_.x<=s[1]&&_.y>=u[0]&&_.y<=u[1]}),h=Math.ceil(c.length/f),d=0;i.forEach(function(_,b){var v=_[0].trace;oT.hasMarkers(v)&&v.marker.maxdisplayed>0&&b{"use strict";Upe.exports={container:"marker",min:"cmin",max:"cmax"}});var nI=Ae((Rlr,Vpe)=>{"use strict";var iI=wu();Vpe.exports=function(t,r,n){var i={},a={_fullLayout:n},o=iI.getFromTrace(a,r,"x"),s=iI.getFromTrace(a,r,"y"),u=t.orig_x;u===void 0&&(u=t.x);var l=t.orig_y;return l===void 0&&(l=t.y),i.xLabel=iI.tickText(o,o.c2l(u),!0).text,i.yLabel=iI.tickText(s,s.c2l(l),!0).text,i}});var ov=Ae((Dlr,Gpe)=>{"use strict";var LU=Jl(),lT=Mu(),S0t=$l();function M0t(e){var t=LU.select(e).selectAll("g.trace.scatter");t.style("opacity",function(r){return r[0].trace.opacity}),t.selectAll("g.points").each(function(r){var n=LU.select(this),i=r.trace||r[0].trace;PU(n,i,e)}),t.selectAll("g.text").each(function(r){var n=LU.select(this),i=r.trace||r[0].trace;zU(n,i,e)}),t.selectAll("g.trace path.js-line").call(lT.lineGroupStyle),t.selectAll("g.trace path.js-fill").call(lT.fillGroupStyle,e,!1),S0t.getComponentMethod("errorbars","style")(t)}function PU(e,t,r){lT.pointStyle(e.selectAll("path.point"),t,r)}function zU(e,t,r){lT.textPointStyle(e.selectAll("text"),t,r)}function E0t(e,t,r){var n=t[0].trace;n.selectedpoints?(lT.selectedPointStyle(r.selectAll("path.point"),n),lT.selectedTextStyle(r.selectAll("text"),n)):(PU(r,n,e),zU(r,n,e))}Gpe.exports={style:M0t,stylePoints:PU,styleText:zU,styleOnSelect:E0t}});var fT=Ae((Flr,Hpe)=>{"use strict";var uT=jl(),k0t=lc();Hpe.exports=function(t,r){var n,i;if(t.mode==="lines")return n=t.line.color,n&&uT.opacity(n)?n:t.fillcolor;if(t.mode==="none")return t.fill?t.fillcolor:"";var a=r.mcc||(t.marker||{}).color,o=r.mlcc||((t.marker||{}).line||{}).color;return i=a&&uT.opacity(a)?a:o&&uT.opacity(o)&&(r.mlw||((t.marker||{}).line||{}).width)?o:"",i?uT.opacity(i)<.3?uT.addOpacity(i,.3):i:(n=(t.line||{}).color,n&&uT.opacity(n)&&k0t.hasLines(t)&&t.line.width?n:t.fillcolor)}});var cT=Ae((Blr,jpe)=>{"use strict";var aI=ei(),Wpe=Xc(),C0t=$l(),L0t=fT(),IU=jl(),P0t=aI.fillText;jpe.exports=function(t,r,n,i){var a=t.cd,o=a[0].trace,s=t.xa,u=t.ya,l=s.c2p(r),f=u.c2p(n),c=[l,f],h=o.hoveron||"",d=o.mode.indexOf("markers")!==-1?3:.5,p=!!o.xperiodalignment,_=!!o.yperiodalignment;if(h.indexOf("points")!==-1){var b=function(W){if(p){var N=s.c2p(W.xStart),H=s.c2p(W.xEnd);return l>=Math.min(N,H)&&l<=Math.max(N,H)?0:1/0}var re=Math.max(3,W.mrc||0),ae=1-1/re,be=Math.abs(s.c2p(W.x)-l);return be=Math.min(N,H)&&f<=Math.max(N,H)?0:1/0}var re=Math.max(3,W.mrc||0),ae=1-1/re,be=Math.abs(u.c2p(W.y)-f);return beCe!=ye>=Ce&&(Me=ke[te-1][0],Ue=ke[te][0],ye-De&&(Ee=Me+(Ue-Me)*(Ce-De)/(ye-De),re=Math.min(re,Ee),ae=Math.max(ae,Ee)));return re=Math.max(re,0),ae=Math.min(ae,s._length),{x0:re,x1:ae,y0:Ce,y1:Ce}}if(h.indexOf("fills")!==-1&&o._fillElement){var U=B(o._fillElement)&&!B(o._fillExclusionElement);if(U){var G=F(o._polygons);G===null&&(G={x0:c[0],x1:c[0],y0:c[1],y1:c[1]});var j=IU.defaultLine;return IU.opacity(o.fillcolor)?j=o.fillcolor:IU.opacity((o.line||{}).color)&&(j=o.line.color),aI.extendFlat(t,{distance:t.maxHoverDistance,x0:G.x0,x1:G.x1,y0:G.y0,y1:G.y1,color:j,hovertemplate:!1}),delete t.index,o.text&&!aI.isArrayOrTypedArray(o.text)?t.text=String(o.text):t.text=o.name,[t]}}}});var hT=Ae((Olr,Zpe)=>{"use strict";var Xpe=lc();Zpe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,u,l,f,c,h=!Xpe.hasMarkers(s)&&!Xpe.hasText(s);if(h)return[];if(r===!1)for(u=0;u{"use strict";Ype.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var DU=Ae((Nlr,Qpe)=>{"use strict";var eE=$l().traceIs,RU=I3();Qpe.exports=function(t,r,n,i){n("autotypenumbers",i.autotypenumbersDflt);var a=n("type",(i.splomStash||{}).type);a==="-"&&(z0t(r,i.data),r.type==="-"?r.type="linear":t.type=r.type)};function z0t(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i;r.indexOf("scene")!==-1&&(r=n);var a=I0t(t,r,n);if(a){if(a.type==="histogram"&&n==={v:"y",h:"x"}[a.orientation||"v"]){e.type="linear";return}var o=n+"calendar",s=a[o],u={noMultiCategory:!eE(a,"cartesian")||eE(a,"noMultiCategory")};if(a.type==="box"&&a._hasPreCompStats&&n==={h:"x",v:"y"}[a.orientation||"v"]&&(u.noMultiCategory=!0),u.autotypenumbers=e.autotypenumbers,$pe(a,n)){var l=Jpe(a),f=[];for(i=0;i0&&(i["_"+r+"axes"]||{})[t])return i;if((i[r+"axis"]||r)===t){if($pe(i,r))return i;if((i[r]||[]).length||i[r+"0"])return i}}}function Jpe(e){return{v:"x",h:"y"}[e.orientation||"v"]}function $pe(e,t){var r=Jpe(e),n=eE(e,"box-violin"),i=eE(e._fullInput||{},"candlestick");return n&&!i&&t===r&&e[r]===void 0&&e[r+"0"]===void 0}});var oI=Ae((Ulr,eve)=>{"use strict";var R0t=mp().isTypedArraySpec;function D0t(e,t){var r=t.dataAttr||e._id.charAt(0),n={},i,a,o;if(t.axData)i=t.axData;else for(i=[],a=0;a0||R0t(a),s;o&&(s="array");var u=n("categoryorder",s),l;u==="array"&&(l=n("categoryarray")),!o&&u==="array"&&(u=r.categoryorder="trace"),u==="trace"?r._initialCategories=[]:u==="array"?r._initialCategories=l.slice():(l=D0t(r,i).sort(),u==="category ascending"?r._initialCategories=l:u==="category descending"&&(r._initialCategories=l.reverse()))}}});var tE=Ae((Vlr,rve)=>{"use strict";var tve=cd().mix,F0t=Fh(),B0t=ei();rve.exports=function(t,r,n,i){i=i||{};var a=i.dfltColor;function o(M,m){return B0t.coerce2(t,r,i.attributes,M,m)}var s=o("linecolor",a),u=o("linewidth"),l=n("showline",i.showLine||!!s||!!u);l||(delete r.linecolor,delete r.linewidth);var f=tve(a,i.bgColor,i.blend||F0t.lightFraction).toRgbString(),c=o("gridcolor",f),h=o("gridwidth"),d=o("griddash"),p=n("showgrid",i.showGrid||!!c||!!h||!!d);if(p||(delete r.gridcolor,delete r.gridwidth,delete r.griddash),i.hasMinor){var _=tve(r.gridcolor,i.bgColor,67).toRgbString(),b=o("minor.gridcolor",_),v=o("minor.gridwidth",r.gridwidth||1),k=o("minor.griddash",r.griddash||"solid"),E=n("minor.showgrid",!!b||!!v||!!k);E||(delete r.minor.gridcolor,delete r.minor.gridwidth,delete r.minor.griddash)}if(!i.noZeroLine){var A=o("zerolinelayer"),L=o("zerolinecolor",a),x=o("zerolinewidth"),C=n("zeroline",i.showGrid||!!L||!!x);C||(delete r.zerolinelayer,delete r.zerolinecolor,delete r.zerolinewidth)}}});var iE=Ae((Glr,lve)=>{"use strict";var ive=ku(),O0t=$l(),rE=ei(),q0t=Lf(),N0t=Jd(),FU=Dd(),nve=bb(),ave=M3(),U0t=e_(),V0t=t_(),G0t=oI(),H0t=tE(),W0t=LN(),ove=gy(),sI=dd().WEEKDAY_PATTERN,j0t=dd().HOUR_PATTERN;lve.exports=function(t,r,n,i,a){var o=i.letter,s=i.font||{},u=i.splomStash||{},l=n("visible",!i.visibleDflt),f=r._template||{},c=r.type||f.type||"-",h;if(c==="date"){var d=O0t.getComponentMethod("calendars","handleDefaults");d(t,r,"calendar",i.calendar),i.noTicklabelmode||(h=n("ticklabelmode"))}!i.noTicklabelindex&&(c==="date"||c==="linear")&&n("ticklabelindex");var p="";(!i.noTicklabelposition||c==="multicategory")&&(p=rE.coerce(t,r,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h==="period"?["outside","inside"]:o==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),i.noTicklabeloverflow||n("ticklabeloverflow",p.indexOf("inside")!==-1?"hide past domain":c==="category"||c==="multicategory"?"allow":"hide past div"),ove(r,a),W0t(t,r,n,i),G0t(t,r,n,i),i.noHover||(c!=="category"&&n("hoverformat"),i.noUnifiedhovertitle||n("unifiedhovertitle.text"));var _=n("color"),b=_!==FU.color.dflt?_:s.color,v=u.label||a._dfltTitle[o];if(V0t(t,r,n,c,i),!l)return r;n("title.text",v),rE.coerceFont(n,"title.font",s,{overrideDflt:{size:rE.bigFont(s.size),color:b}}),nve(t,r,n,c);var k=i.hasMinor;if(k&&(q0t.newContainer(r,"minor"),nve(t,r,n,c,{isMinor:!0})),U0t(t,r,n,c,i),ave(t,r,n,i),k){var E=i.isMinor;i.isMinor=!0,ave(t,r,n,i),i.isMinor=E}H0t(t,r,n,{dfltColor:_,bgColor:i.bgColor,showGrid:i.showGrid,hasMinor:k,attributes:FU}),k&&!r.minor.ticks&&!r.minor.showgrid&&delete r.minor,(r.showline||r.ticks)&&n("mirror");var A=c==="multicategory";if(!i.noTickson&&(c==="category"||A)&&(r.ticks||r.showgrid)&&(A?(n("tickson","boundaries"),delete r.ticklabelposition):n("tickson")),A){var L=n("showdividers");L&&(n("dividercolor"),n("dividerwidth"))}if(c==="date")if(N0t(t,r,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:X0t}),!r.rangebreaks.length)delete r.rangebreaks;else{for(var x=0;x=2){var o="",s,u;if(a.length===2){for(s=0;s<2;s++)if(u=sve(a[s]),u){o=sI;break}}var l=n("pattern",o);if(l===sI)for(s=0;s<2;s++)u=sve(a[s]),u&&(t.bounds[s]=a[s]=u-1);if(l)for(s=0;s<2;s++)switch(u=a[s],l){case sI:if(!ive(u)){t.enabled=!1;return}if(u=+u,u!==Math.floor(u)||u<0||u>=7){t.enabled=!1;return}t.bounds[s]=a[s]=u;break;case j0t:if(!ive(u)){t.enabled=!1;return}if(u=+u,u<0||u>24){t.enabled=!1;return}t.bounds[s]=a[s]=u;break}if(r.autorange===!1){var f=r.range;if(f[0]f[1]){t.enabled=!1;return}}else if(a[0]>f[0]&&a[1]{"use strict";var Y0t=ku(),lI=ei();uve.exports=function(t,r,n,i){var a=i.counterAxes||[],o=i.overlayableAxes||[],s=i.letter,u=i.grid,l=i.overlayingDomain,f,c,h,d,p,_;u&&(c=u._domains[s][u._axisMap[r._id]],f=u._anchors[r._id],c&&(h=u[s+"side"].split(" ")[0],d=u.domain[s][h==="right"||h==="top"?1:0])),c=c||[0,1],f=f||(Y0t(t.position)?"free":a[0]||"free"),h=h||(s==="x"?"bottom":"left"),d=d||0,p=0,_=!1;var b=lI.coerce(t,r,{anchor:{valType:"enumerated",values:["free"].concat(a),dflt:f}},"anchor"),v=lI.coerce(t,r,{side:{valType:"enumerated",values:s==="x"?["bottom","top"]:["left","right"],dflt:h}},"side");if(b==="free"){if(s==="y"){var k=n("autoshift");k&&(d=v==="left"?l[0]:l[1],_=r.automargin?r.automargin:!0,p=v==="left"?-3:3),n("shift",p)}n("position",d)}n("automargin",_);var E=!1;if(o.length&&(E=lI.coerce(t,r,{overlaying:{valType:"enumerated",values:[!1].concat(o),dflt:!1}},"overlaying")),!E){var A=n("domain",c);A[0]>A[1]-1/4096&&(r.domain=c),lI.noneOrAll(t.domain,r.domain,c),r.tickmode==="sync"&&(r.tickmode="auto")}return n("layer"),r}});var gve=Ae((Wlr,yve)=>{"use strict";var jb=ei(),fve=jl(),K0t=iv().isUnifiedHover,J0t=e7(),cve=Lf(),$0t=f3(),hve=Dd(),Q0t=DU(),dve=iE(),emt=Nb(),pve=uI(),OU=Wc(),Cy=OU.id2name,vve=OU.name2id,tmt=dd().AX_ID_PATTERN,mve=$l(),fI=mve.traceIs,BU=mve.getComponentMethod;function cI(e,t,r){Array.isArray(e[t])?e[t].push(r):e[t]=[r]}yve.exports=function(t,r,n){var i=r.autotypenumbers,a={},o={},s={},u={},l={},f={},c={},h={},d={},p={},_,b;for(_=0;_{"use strict";var rmt=Jl(),_ve=$l(),hI=ei(),Qv=Mu(),dI=wu();xve.exports=function(t,r,n,i){var a=t._fullLayout;if(r.length===0){dI.redrawComponents(t);return}function o(b){var v=b.xaxis,k=b.yaxis;a._defs.select("#"+b.clipId+"> rect").call(Qv.setTranslate,0,0).call(Qv.setScale,1,1),b.plot.call(Qv.setTranslate,v._offset,k._offset).call(Qv.setScale,1,1);var E=b.plot.selectAll(".scatterlayer .trace");E.selectAll(".point").call(Qv.setPointGroupScale,1,1),E.selectAll(".textpoint").call(Qv.setTextPointsScale,1,1),E.call(Qv.hideOutsideRangePoints,b)}function s(b,v){var k=b.plotinfo,E=k.xaxis,A=k.yaxis,L=E._length,x=A._length,C=!!b.xr1,M=!!b.yr1,m=[];if(C){var P=hI.simpleMap(b.xr0,E.r2l),T=hI.simpleMap(b.xr1,E.r2l),B=P[1]-P[0],F=T[1]-T[0];m[0]=(P[0]*(1-v)+v*T[0]-P[0])/(P[1]-P[0])*L,m[2]=L*(1-v+v*F/B),E.range[0]=E.l2r(P[0]*(1-v)+v*T[0]),E.range[1]=E.l2r(P[1]*(1-v)+v*T[1])}else m[0]=0,m[2]=L;if(M){var U=hI.simpleMap(b.yr0,A.r2l),G=hI.simpleMap(b.yr1,A.r2l),j=U[1]-U[0],W=G[1]-G[0];m[1]=(U[1]*(1-v)+v*G[1]-U[1])/(U[0]-U[1])*x,m[3]=x*(1-v+v*W/j),A.range[0]=E.l2r(U[0]*(1-v)+v*G[0]),A.range[1]=A.l2r(U[1]*(1-v)+v*G[1])}else m[1]=0,m[3]=x;dI.drawOne(t,E,{skipTitle:!0}),dI.drawOne(t,A,{skipTitle:!0}),dI.redrawComponents(t,[E._id,A._id]);var N=C?L/m[2]:1,H=M?x/m[3]:1,re=C?m[0]:0,ae=M?m[1]:0,be=C?m[0]/m[2]*L:0,ze=M?m[1]/m[3]*x:0,Ce=E._offset-be,de=A._offset-ze;k.clipRect.call(Qv.setTranslate,re,ae).call(Qv.setScale,1/N,1/H),k.plot.call(Qv.setTranslate,Ce,de).call(Qv.setScale,N,H),Qv.setPointGroupScale(k.zoomScalePts,1/N,1/H),Qv.setTextPointsScale(k.zoomScaleTxt,1/N,1/H)}var u;i&&(u=i());function l(){for(var b={},v=0;vn.duration?(l(),d=window.cancelAnimationFrame(_)):d=window.requestAnimationFrame(_)}return c=Date.now(),d=window.requestAnimationFrame(_),Promise.resolve()}});var Ah=Ae(wp=>{"use strict";var vI=Jl(),wve=$l(),Xb=ei(),imt=Cc(),nmt=Mu(),Tve=Rd().getModuleCalcData,m_=Wc(),Fm=dd(),amt=jv(),Zf=Xb.ensureSingle;function pI(e,t,r){return Xb.ensureSingle(e,t,r,function(n){n.datum(r)})}var Zb=Fm.zindexSeparator;wp.name="cartesian";wp.attr=["xaxis","yaxis"];wp.idRoot=["x","y"];wp.idRegex=Fm.idRegex;wp.attrRegex=Fm.attrRegex;wp.attributes=Kpe();wp.layoutAttributes=Dd();wp.supplyLayoutDefaults=gve();wp.transitionAxes=bve();wp.finalizeSubplots=function(e,t){var r=t._subplots,n=r.xaxis,i=r.yaxis,a=r.cartesian,o=a,s={},u={},l,f,c;for(l=0;l0){var d=h.id;if(d.indexOf(Zb)!==-1)continue;d+=Zb+(l+1),h=Xb.extendFlat({},h,{id:d,plot:i._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var p=[],_,b=0;b1&&(L+=Zb+A),E.push(s+L),o=0;o1,c=t.mainplotinfo;if(!t.mainplot||f)if(l)t.xlines=Zf(n,"path","xlines-above"),t.ylines=Zf(n,"path","ylines-above"),t.xaxislayer=Zf(n,"g","xaxislayer-above"),t.yaxislayer=Zf(n,"g","yaxislayer-above");else{if(!o){var h=Zf(n,"g","layer-subplot");t.shapelayer=Zf(h,"g","shapelayer"),t.imagelayer=Zf(h,"g","imagelayer"),c&&f?(t.minorGridlayer=c.minorGridlayer,t.gridlayer=c.gridlayer,t.zerolinelayer=c.zerolinelayer):(t.minorGridlayer=Zf(n,"g","minor-gridlayer"),t.gridlayer=Zf(n,"g","gridlayer"),t.zerolinelayer=Zf(n,"g","zerolinelayer"));var d=Zf(n,"g","layer-between");t.shapelayerBetween=Zf(d,"g","shapelayer"),t.imagelayerBetween=Zf(d,"g","imagelayer"),Zf(n,"path","xlines-below"),Zf(n,"path","ylines-below"),t.overlinesBelow=Zf(n,"g","overlines-below"),Zf(n,"g","xaxislayer-below"),Zf(n,"g","yaxislayer-below"),t.overaxesBelow=Zf(n,"g","overaxes-below")}t.overplot=Zf(n,"g","overplot"),t.plot=Zf(t.overplot,"g",i),c&&f?t.zerolinelayerAbove=c.zerolinelayerAbove:t.zerolinelayerAbove=Zf(n,"g","zerolinelayer-above"),o||(t.xlines=Zf(n,"path","xlines-above"),t.ylines=Zf(n,"path","ylines-above"),t.overlinesAbove=Zf(n,"g","overlines-above"),Zf(n,"g","xaxislayer-above"),Zf(n,"g","yaxislayer-above"),t.overaxesAbove=Zf(n,"g","overaxes-above"),t.xlines=n.select(".xlines-"+s),t.ylines=n.select(".ylines-"+u),t.xaxislayer=n.select(".xaxislayer-"+s),t.yaxislayer=n.select(".yaxislayer-"+u))}else{var p=c.plotgroup,_=i+"-x",b=i+"-y";t.minorGridlayer=c.minorGridlayer,t.gridlayer=c.gridlayer,t.zerolinelayer=c.zerolinelayer,t.zerolinelayerAbove=c.zerolinelayerAbove,Zf(c.overlinesBelow,"path",_),Zf(c.overlinesBelow,"path",b),Zf(c.overaxesBelow,"g",_),Zf(c.overaxesBelow,"g",b),t.plot=Zf(c.overplot,"g",i),Zf(c.overlinesAbove,"path",_),Zf(c.overlinesAbove,"path",b),Zf(c.overaxesAbove,"g",_),Zf(c.overaxesAbove,"g",b),t.xlines=p.select(".overlines-"+s).select("."+_),t.ylines=p.select(".overlines-"+u).select("."+b),t.xaxislayer=p.select(".overaxes-"+s).select("."+_),t.yaxislayer=p.select(".overaxes-"+u).select("."+b)}o||(l||(pI(t.minorGridlayer,"g",t.xaxis._id),pI(t.minorGridlayer,"g",t.yaxis._id),t.minorGridlayer.selectAll("g").map(function(v){return v[0]}).sort(m_.idSort),pI(t.gridlayer,"g",t.xaxis._id),pI(t.gridlayer,"g",t.yaxis._id),t.gridlayer.selectAll("g").map(function(v){return v[0]}).sort(m_.idSort)),t.xlines.style("fill","none").classed("crisp",!0),t.ylines.style("fill","none").classed("crisp",!0))}function Mve(e,t){if(e){var r={};e.each(function(u){var l=u[0],f=vI.select(this);f.remove(),Eve(l,t),r[l]=!0});for(var n in t._plots)for(var i=t._plots[n],a=i.overlays||[],o=0;o{"use strict";var mI=lc();kve.exports={hasLines:mI.hasLines,hasMarkers:mI.hasMarkers,hasText:mI.hasText,isBubble:mI.isBubble,attributes:Zc(),layoutAttributes:XL(),supplyDefaults:tpe(),crossTraceDefaults:vU(),supplyLayoutDefaults:ape(),calc:B0().calc,crossTraceCalc:Cpe(),arraysToCalcdata:ky(),plot:sT(),colorbar:ep(),formatLabels:nI(),style:ov().style,styleOnSelect:ov().styleOnSelect,hoverPoints:cT(),selectPoints:hT(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:Ah(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var zve=Ae((Ylr,Pve)=>{"use strict";var smt=Jl(),lmt=jl(),Lve=V7(),qU=ei(),umt=qU.strScale,fmt=qU.strRotate,cmt=qU.strTranslate;Pve.exports=function(t,r,n){var i=t.node(),a=Lve[n.arrowhead||0],o=Lve[n.startarrowhead||0],s=(n.arrowwidth||1)*(n.arrowsize||1),u=(n.arrowwidth||1)*(n.startarrowsize||1),l=r.indexOf("start")>=0,f=r.indexOf("end")>=0,c=a.backoff*s+n.standoff,h=o.backoff*u+n.startstandoff,d,p,_,b;if(i.nodeName==="line"){d={x:+t.attr("x1"),y:+t.attr("y1")},p={x:+t.attr("x2"),y:+t.attr("y2")};var v=d.x-p.x,k=d.y-p.y;if(_=Math.atan2(k,v),b=_+Math.PI,c&&h&&c+h>Math.sqrt(v*v+k*k)){U();return}if(c){if(c*c>v*v+k*k){U();return}var E=c*Math.cos(_),A=c*Math.sin(_);p.x+=E,p.y+=A,t.attr({x2:p.x,y2:p.y})}if(h){if(h*h>v*v+k*k){U();return}var L=h*Math.cos(_),x=h*Math.sin(_);d.x-=L,d.y-=x,t.attr({x1:d.x,y1:d.y})}}else if(i.nodeName==="path"){var C=i.getTotalLength(),M="";if(C{"use strict";var Ive=Jl(),NU=$l(),hmt=Cc(),g_=ei(),UU=g_.strTranslate,aE=wu(),Yb=jl(),zg=Mu(),Rve=Xc(),VU=Xf(),GU=Sm(),nE=xp(),dmt=Lf().arrayEditor,pmt=zve();Bve.exports={draw:vmt,drawOne:Dve,drawRaw:Fve};function vmt(e){var t=e._fullLayout;t._infolayer.selectAll(".annotation").remove();for(var r=0;r2/3?Fe="right":Fe="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[Fe]}for(var De=!1,ye=["x","y"],qe=0;qe1)&&(nt===Je?(Ye=gt.r2fraction(t["a"+ce]),(Ye<0||Ye>1)&&(De=!0)):De=!0),Zt=gt._offset+gt.r2p(t[ce]),ot=.5}else{var He=vt==="domain";ce==="x"?(Te=t[ce],Zt=He?gt._offset+gt._length*Te:Zt=s.l+s.w*Te):(Te=1-t[ce],Zt=He?gt._offset+gt._length*Te:Zt=s.t+s.h*Te),ot=t.showarrow?.5:Te}if(t.showarrow){Dt.head=Zt;var it=t["a"+ce];if(Tt=at*Ue(.5,t.xanchor)-Ke*Ue(.5,t.yanchor),nt===Je){var et=aE.getRefType(nt);et==="domain"?(ce==="y"&&(it=1-it),Dt.tail=gt._offset+gt._length*it):et==="paper"?ce==="y"?(it=1-it,Dt.tail=s.t+s.h*it):Dt.tail=s.l+s.w*it:Dt.tail=gt._offset+gt.r2p(it),Et=Tt}else Dt.tail=Zt+it,Et=Tt+it;Dt.text=Dt.tail+Tt;var It=o[ce==="x"?"width":"height"];if(Je==="paper"&&(Dt.head=g_.constrain(Dt.head,1,It-1)),nt==="pixel"){var Yt=-Math.max(Dt.tail-3,Dt.text),cr=Math.min(Dt.tail+3,Dt.text)-It;Yt>0?(Dt.tail+=Yt,Dt.text+=Yt):cr>0&&(Dt.tail-=cr,Dt.text-=cr)}Dt.tail+=St,Dt.head+=St}else Tt=Ct*Ue(ot,wt),Et=Tt,Dt.text=Zt+Tt;Dt.text+=St,Tt+=St,Et+=St,t["_"+ce+"padplus"]=Ct/2+Et,t["_"+ce+"padminus"]=Ct/2-Et,t["_"+ce+"size"]=Ct,t["_"+ce+"shift"]=Tt}if(De){C.remove();return}var _r=0,yr=0;if(t.align!=="left"&&(_r=(te-Ce)*(t.align==="center"?.5:1)),t.valign!=="top"&&(yr=(ke-de)*(t.valign==="middle"?.5:1)),be)ae.select("svg").attr({x:P+_r-1,y:P+yr}).call(zg.setClipUrl,B?_:null,e);else{var Ut=P+yr-ze.top,Re=P+_r-ze.left;j.call(VU.positionText,Re,Ut).call(zg.setClipUrl,B?_:null,e)}F.select("rect").call(zg.setRect,P,P,te,ke),T.call(zg.setRect,M/2,M/2,Ee-M,Me-M),C.call(zg.setTranslate,Math.round(b.x.text-Ee/2),Math.round(b.y.text-Me/2)),E.attr({transform:"rotate("+v+","+b.x.text+","+b.y.text+")"});var xe=function(Ie,Fe){k.selectAll(".annotation-arrow-g").remove();var ft=b.x.head,ge=b.y.head,fe=b.x.tail+Ie,pe=b.y.tail+Fe,dt=b.x.text+Ie,Pt=b.y.text+Fe,zt=g_.rotationXYMatrix(v,dt,Pt),rr=g_.apply2DTransform(zt),Gr=g_.apply2DTransform2(zt),Br=+T.attr("width"),Er=+T.attr("height"),Rr=dt-.5*Br,pi=Rr+Br,Di=Pt-.5*Er,ni=Di+Er,$i=[[Rr,Di,Rr,ni],[Rr,ni,pi,ni],[pi,ni,pi,Di],[pi,Di,Rr,Di]].map(Gr);if(!$i.reduce(function(Or,Hr){return Or^!!g_.segmentsIntersect(ft,ge,ft+1e6,ge+1e6,Hr[0],Hr[1],Hr[2],Hr[3])},!1)){$i.forEach(function(Or){var Hr=g_.segmentsIntersect(fe,pe,ft,ge,Or[0],Or[1],Or[2],Or[3]);Hr&&(fe=Hr.x,pe=Hr.y)});var Qi=t.arrowwidth,si=t.arrowcolor,Ai=t.arrowside,Ni=k.append("g").style({opacity:Yb.opacity(si)}).classed("annotation-arrow-g",!0),Rt=Ni.append("path").attr("d","M"+fe+","+pe+"L"+ft+","+ge).style("stroke-width",Qi+"px").call(Yb.stroke,Yb.rgb(si));if(pmt(Rt,Ai,t),u.annotationPosition&&Rt.node().parentNode&&!n){var yt=ft,Gt=ge;if(t.standoff){var Wt=Math.sqrt(Math.pow(ft-fe,2)+Math.pow(ge-pe,2));yt+=t.standoff*(fe-ft)/Wt,Gt+=t.standoff*(pe-ge)/Wt}var xr=Ni.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(fe-yt)+","+(pe-Gt),transform:UU(yt,Gt)}).style("stroke-width",Qi+6+"px").call(Yb.stroke,"rgba(0,0,0,0)").call(Yb.fill,"rgba(0,0,0,0)"),Lr,Nr;nE.init({element:xr.node(),gd:e,prepFn:function(){var Or=zg.getTranslate(C);Lr=Or.x,Nr=Or.y,i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0)},moveFn:function(Or,Hr){var jr=rr(Lr,Nr),gi=jr[0]+Or,ki=jr[1]+Hr;C.call(zg.setTranslate,gi,ki),d("x",y_(i,Or,"x",s,t)),d("y",y_(a,Hr,"y",s,t)),t.axref===t.xref&&d("ax",y_(i,Or,"ax",s,t)),t.ayref===t.yref&&d("ay",y_(a,Hr,"ay",s,t)),Ni.attr("transform",UU(Or,Hr)),E.attr({transform:"rotate("+v+","+gi+","+ki+")"})},doneFn:function(){NU.call("_guiRelayout",e,p());var Or=document.querySelector(".js-notes-box-panel");Or&&Or.redraw(Or.selectedObj)}})}}};if(t.showarrow&&xe(0,0),A){var Oe;nE.init({element:C.node(),gd:e,prepFn:function(){Oe=E.attr("transform")},moveFn:function(Ie,Fe){var ft="pointer";if(t.showarrow)t.axref===t.xref?d("ax",y_(i,Ie,"ax",s,t)):d("ax",t.ax+Ie),t.ayref===t.yref?d("ay",y_(a,Fe,"ay",s.w,t)):d("ay",t.ay+Fe),xe(Ie,Fe);else{if(n)return;var ge,fe;if(i)ge=y_(i,Ie,"x",s,t);else{var pe=t._xsize/s.w,dt=t.x+(t._xshift-t.xshift)/s.w-pe/2;ge=nE.align(dt+Ie/s.w,pe,0,1,t.xanchor)}if(a)fe=y_(a,Fe,"y",s,t);else{var Pt=t._ysize/s.h,zt=t.y-(t._yshift+t.yshift)/s.h-Pt/2;fe=nE.align(zt-Fe/s.h,Pt,0,1,t.yanchor)}d("x",ge),d("y",fe),(!i||!a)&&(ft=nE.getCursor(i?.5:ge,a?.5:fe,t.xanchor,t.yanchor))}E.attr({transform:UU(Ie,Fe)+Oe}),GU(C,ft)},clickFn:function(Ie,Fe){t.captureevents&&e.emit("plotly_clickannotation",x(Fe))},doneFn:function(){GU(C),NU.call("_guiRelayout",e,p());var Ie=document.querySelector(".js-notes-box-panel");Ie&&Ie.redraw(Ie.selectedObj)}})}}u.annotationText?j.call(VU.makeEditable,{delegate:C,gd:e}).call(W).on("edit",function(H){t.text=H,this.call(W),d("text",H),i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0),NU.call("_guiRelayout",e,p())}):j.call(W)}});var Gve=Ae((Jlr,Vve)=>{"use strict";var Ove=ei(),mmt=$l(),qve=Lf().arrayEditor;Vve.exports={hasClickToShow:ymt,onClick:gmt};function ymt(e,t){var r=Uve(e,t);return r.on.length>0||r.explicitOff.length>0}function gmt(e,t){var r=Uve(e,t),n=r.on,i=r.off.concat(r.explicitOff),a={},o=e._fullLayout.annotations,s,u;if(n.length||i.length){for(s=0;s{"use strict";var HU=ei(),dT=jl();Hve.exports=function(t,r,n,i){i("opacity");var a=i("bgcolor"),o=i("bordercolor"),s=dT.opacity(o);i("borderpad");var u=i("borderwidth"),l=i("showarrow");i("text",l?" ":n._dfltTitle.annotation),i("textangle"),HU.coerceFont(i,"font",n.font),i("width"),i("align");var f=i("height");if(f&&i("valign"),l){var c=i("arrowside"),h,d;c.indexOf("end")!==-1&&(h=i("arrowhead"),d=i("arrowsize")),c.indexOf("start")!==-1&&(i("startarrowhead",h),i("startarrowsize",d)),i("arrowcolor",s?r.bordercolor:dT.defaultLine),i("arrowwidth",(s&&u||1)*2),i("standoff"),i("startstandoff")}var p=i("hovertext"),_=n.hoverlabel||{};if(p){var b=i("hoverlabel.bgcolor",_.bgcolor||(dT.opacity(a)?dT.rgb(a):dT.defaultLine)),v=i("hoverlabel.bordercolor",_.bordercolor||dT.contrast(b)),k=HU.extendFlat({},_.font);k.color||(k.color=v),HU.coerceFont(i,"hoverlabel.font",k)}i("captureevents",!!p)}});var jve=Ae((Qlr,Wve)=>{"use strict";var jU=ei(),Kb=wu(),_mt=Jd(),xmt=WU(),bmt=Ub();Wve.exports=function(t,r){_mt(t,r,{name:"annotations",handleItemDefaults:wmt})};function wmt(e,t,r){function n(E,A){return jU.coerce(e,t,bmt,E,A)}var i=n("visible"),a=n("clicktoshow");if(i||a){xmt(e,t,r,n);for(var o=t.showarrow,s=["x","y"],u=[-10,-30],l={_fullLayout:r},f=0;f<2;f++){var c=s[f],h=Kb.coerceRef(e,t,l,c,"","paper");if(h!=="paper"){var d=Kb.getFromId(l,h);d._annIndices.push(t._index)}if(Kb.coercePosition(t,l,n,h,c,.5),o){var p="a"+c,_=Kb.coerceRef(e,t,l,p,"pixel",["pixel","paper"]);_!=="pixel"&&_!==h&&(_=t[p]="pixel");var b=_==="pixel"?u[f]:.4;Kb.coercePosition(t,l,n,_,p,b)}n(c+"anchor"),n(c+"shift")}if(jU.noneOrAll(e,t,["x","y"]),o&&jU.noneOrAll(e,t,["ax","ay"]),a){var v=n("xclick"),k=n("yclick");t._xclick=v===void 0?t.x:Kb.cleanPosition(v,l,t.xref),t._yclick=k===void 0?t.y:Kb.cleanPosition(k,l,t.yref)}}}});var Yve=Ae((eur,Zve)=>{"use strict";var XU=ei(),Jb=wu(),Tmt=yI().draw;Zve.exports=function(t){var r=t._fullLayout,n=XU.filterVisible(r.annotations);if(n.length&&t._fullData.length)return XU.syncOrAsync([Tmt,Amt],t)};function Amt(e){var t=e._fullLayout;XU.filterVisible(t.annotations).forEach(function(r){var n=Jb.getFromId(e,r.xref),i=Jb.getFromId(e,r.yref),a=Jb.getRefType(r.xref),o=Jb.getRefType(r.yref);r._extremes={},a==="range"&&Xve(r,n),o==="range"&&Xve(r,i)})}function Xve(e,t){var r=t._id,n=r.charAt(0),i=e[n],a=e["a"+n],o=e[n+"ref"],s=e["a"+n+"ref"],u=e["_"+n+"padplus"],l=e["_"+n+"padminus"],f={x:1,y:-1}[n]*e[n+"shift"],c=3*e.arrowsize*e.arrowwidth||0,h=c+f,d=c-f,p=3*e.startarrowsize*e.arrowwidth||0,_=p+f,b=p-f,v;if(s===o){var k=Jb.findExtremes(t,[t.r2c(i)],{ppadplus:h,ppadminus:d}),E=Jb.findExtremes(t,[t.r2c(a)],{ppadplus:Math.max(u,_),ppadminus:Math.max(l,b)});v={min:[k.min[0],E.min[0]],max:[k.max[0],E.max[0]]}}else _=a?_+a:_,b=a?b-a:b,v=Jb.findExtremes(t,[t.r2c(i)],{ppadplus:Math.max(u,h,_),ppadminus:Math.max(l,d,b)});e._extremes[r]=v}});var Jve=Ae((tur,Kve)=>{"use strict";var Smt=ku(),Mmt=yL();Kve.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(!(a||o))return;var s=t._fullLayout.annotations,u=r._id.charAt(0),l,f;function c(d){var p=l[d],_=null;a?_=Mmt(p,r.range):_=Math.pow(10,p),Smt(_)||(_=null),i(f+d,_)}for(var h=0;h{"use strict";var ZU=yI(),$ve=Gve();Qve.exports={moduleType:"component",name:"annotations",layoutAttributes:Ub(),supplyLayoutDefaults:jve(),includeBasePlot:O5()("annotations"),calcAutorange:Yve(),draw:ZU.draw,drawOne:ZU.drawOne,drawRaw:ZU.drawRaw,hasClickToShow:$ve.hasClickToShow,onClick:$ve.onClick,convertCoords:Jve()}});var gI=Ae((iur,t0e)=>{"use strict";var Pc=Ub(),Emt=Sc().overrideAll,kmt=Lf().templatedArray;t0e.exports=Emt(kmt("annotation",{visible:Pc.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:Pc.xanchor,xshift:Pc.xshift,yanchor:Pc.yanchor,yshift:Pc.yshift,text:Pc.text,textangle:Pc.textangle,font:Pc.font,width:Pc.width,height:Pc.height,opacity:Pc.opacity,align:Pc.align,valign:Pc.valign,bgcolor:Pc.bgcolor,bordercolor:Pc.bordercolor,borderpad:Pc.borderpad,borderwidth:Pc.borderwidth,showarrow:Pc.showarrow,arrowcolor:Pc.arrowcolor,arrowhead:Pc.arrowhead,startarrowhead:Pc.startarrowhead,arrowside:Pc.arrowside,arrowsize:Pc.arrowsize,startarrowsize:Pc.startarrowsize,arrowwidth:Pc.arrowwidth,standoff:Pc.standoff,startstandoff:Pc.startstandoff,hovertext:Pc.hovertext,hoverlabel:Pc.hoverlabel,captureevents:Pc.captureevents}),"calc","from-root")});var i0e=Ae((nur,r0e)=>{"use strict";var YU=ei(),Cmt=wu(),Lmt=Jd(),Pmt=WU(),zmt=gI();r0e.exports=function(t,r,n){Lmt(t,r,{name:"annotations",handleItemDefaults:Imt,fullLayout:n.fullLayout})};function Imt(e,t,r,n){function i(s,u){return YU.coerce(e,t,zmt,s,u)}function a(s){var u=s+"axis",l={_fullLayout:{}};return l._fullLayout[u]=r[u],Cmt.coercePosition(t,l,i,s,s,.5)}var o=i("visible");o&&(Pmt(e,t,n.fullLayout,i),a("x"),a("y"),a("z"),YU.noneOrAll(e,t,["x","y","z"]),t.xref="x",t.yref="y",t.zref="z",i("xanchor"),i("yanchor"),i("xshift"),i("yshift"),t.showarrow&&(t.axref="pixel",t.ayref="pixel",i("ax",-10),i("ay",-30),YU.noneOrAll(e,t,["ax","ay"])))}});var s0e=Ae((aur,o0e)=>{"use strict";var n0e=ei(),a0e=wu();o0e.exports=function(t){for(var r=t.fullSceneLayout,n=r.annotations,i=0;i{"use strict";function KU(e,t){var r=[0,0,0,0],n,i;for(n=0;n<4;++n)for(i=0;i<4;++i)r[i]+=e[4*n+i]*t[n];return r}function Dmt(e,t){var r=KU(e.projection,KU(e.view,KU(e.model,[t[0],t[1],t[2],1])));return r}l0e.exports=Dmt});var f0e=Ae((sur,u0e)=>{"use strict";var Fmt=yI().drawRaw,Bmt=JU(),Omt=["x","y","z"];u0e.exports=function(t){for(var r=t.fullSceneLayout,n=t.dataScale,i=r.annotations,a=0;a1){s=!0;break}}s?t.fullLayout._infolayer.select(".annotation-"+t.id+'[data-index="'+a+'"]').remove():(o._pdata=Bmt(t.glplot.cameraParams,[r.xaxis.r2l(o.x)*n[0],r.yaxis.r2l(o.y)*n[1],r.zaxis.r2l(o.z)*n[2]]),Fmt(t.graphDiv,o,a,t.id,o._xa,o._ya))}}});var d0e=Ae((lur,h0e)=>{"use strict";var qmt=$l(),c0e=ei();h0e.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:gI()}}},layoutAttributes:gI(),handleDefaults:i0e(),includeBasePlot:Nmt,convert:s0e(),draw:f0e()};function Nmt(e,t){var r=qmt.subplotsRegistry.gl3d;if(r)for(var n=r.attrRegex,i=Object.keys(e),a=0;a{"use strict";var p0e=Ub(),v0e=gc(),m0e=Zc().line,Umt=Id().dash,Bm=Su().extendFlat,Vmt=Lf().templatedArray,uur=B5(),pT=Gf(),{shapeTexttemplateAttrs:Gmt,templatefallbackAttrs:Hmt}=Ff(),Wmt=ML();y0e.exports=Vmt("shape",{visible:Bm({},pT.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:Bm({},pT.legend,{editType:"calc+arraydraw"}),legendgroup:Bm({},pT.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:Bm({},pT.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:v0e({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:Bm({},pT.legendrank,{editType:"calc+arraydraw"}),legendwidth:Bm({},pT.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:Bm({},p0e.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:Bm({},p0e.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:Bm({},m0e.color,{editType:"arraydraw"}),width:Bm({},m0e.width,{editType:"calc+arraydraw"}),dash:Bm({},Umt,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:Gmt({},{keys:Object.keys(Wmt)}),texttemplatefallback:Hmt({editType:"arraydraw"}),font:v0e({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var x0e=Ae((cur,_0e)=>{"use strict";var oE=ei(),vT=wu(),jmt=Jd(),Xmt=$U(),g0e=c_();_0e.exports=function(t,r){jmt(t,r,{name:"shapes",handleItemDefaults:Ymt})};function Zmt(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}function Ymt(e,t,r){function n(H,re){return oE.coerce(e,t,Xmt,H,re)}t._isShape=!0;var i=n("visible");if(i){var a=n("showlegend");a&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),oE.coerceFont(n,"legendgrouptitle.font"),n("legendrank"));var o=n("path"),s=o?"path":"rect",u=n("type",s),l=u!=="path";l&&delete t.path,n("editable"),n("layer"),n("opacity"),n("fillcolor"),n("fillrule");var f=n("line.width");f&&(n("line.color"),n("line.dash"));for(var c=n("xsizemode"),h=n("ysizemode"),d=["x","y"],p=0;p<2;p++){var _=d[p],b=_+"anchor",v=_==="x"?c:h,k={_fullLayout:r},E,A,L,x=vT.coerceRef(e,t,k,_,void 0,"paper"),C=vT.getRefType(x);if(C==="range"?(E=vT.getFromId(k,x),E._shapeIndices.push(t._index),L=g0e.rangeToShapePosition(E),A=g0e.shapePositionToRange(E),(E.type==="category"||E.type==="multicategory")&&(n(_+"0shift"),n(_+"1shift"))):A=L=oE.identity,l){var M=.25,m=.75,P=_+"0",T=_+"1",B=e[P],F=e[T];e[P]=A(e[P],!0),e[T]=A(e[T],!0),v==="pixel"?(n(P,0),n(T,10)):(vT.coercePosition(t,k,n,x,P,M),vT.coercePosition(t,k,n,x,T,m)),t[P]=L(t[P]),t[T]=L(t[T]),e[P]=B,e[T]=F}if(v==="pixel"){var U=e[b];e[b]=A(e[b],!0),vT.coercePosition(t,k,n,x,b,.25),t[b]=L(t[b]),e[b]=U}}l&&oE.noneOrAll(e,t,["x0","x1","y0","y1"]);var G=u==="line",j,W;if(l&&(j=n("label.texttemplate"),n("label.texttemplatefallback")),j||(W=n("label.text")),W||j){n("label.textangle");var N=n("label.textposition",G?"middle":"middle center");n("label.xanchor"),n("label.yanchor",Zmt(G,N)),n("label.padding"),oE.coerceFont(n,"label.font",r.font)}}}});var T0e=Ae((hur,w0e)=>{"use strict";var Kmt=jl(),b0e=ei();function Jmt(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}w0e.exports=function(t,r,n){n("newshape.visible"),n("newshape.name"),n("newshape.showlegend"),n("newshape.legend"),n("newshape.legendwidth"),n("newshape.legendgroup"),n("newshape.legendgrouptitle.text"),b0e.coerceFont(n,"newshape.legendgrouptitle.font"),n("newshape.legendrank"),n("newshape.drawdirection"),n("newshape.layer"),n("newshape.fillcolor"),n("newshape.fillrule"),n("newshape.opacity");var i=n("newshape.line.width");if(i){var a=(t||{}).plot_bgcolor||"#FFF";n("newshape.line.color",Kmt.contrast(a)),n("newshape.line.dash")}var o=t.dragmode==="drawline",s=n("newshape.label.text"),u=n("newshape.label.texttemplate");if(n("newshape.label.texttemplatefallback"),s||u){n("newshape.label.textangle");var l=n("newshape.label.textposition",o?"middle":"middle center");n("newshape.label.xanchor"),n("newshape.label.yanchor",Jmt(o,l)),n("newshape.label.padding"),b0e.coerceFont(n,"newshape.label.font",r.font)}n("activeshape.fillcolor"),n("activeshape.opacity")}});var k0e=Ae((dur,E0e)=>{"use strict";var QU=ei(),mT=wu(),yT=m5(),S0e=c_();E0e.exports=function(t){var r=t._fullLayout,n=QU.filterVisible(r.shapes);if(!(!n.length||!t._fullData.length))for(var i=0;i0?l+o:o;return{ppad:o,ppadplus:s?c:h,ppadminus:s?h:c}}else return{ppad:o}}function A0e(e,t,r){var n=e._id.charAt(0)==="x"?"x":"y",i=e.type==="category"||e.type==="multicategory",a,o,s=0,u=0,l=i?e.r2c:e.d2c,f=t[n+"sizemode"]==="scaled";if(f?(a=t[n+"0"],o=t[n+"1"],i&&(s=t[n+"0shift"],u=t[n+"1shift"])):(a=t[n+"anchor"],o=t[n+"anchor"]),a!==void 0)return[l(a)+s,l(o)+u];if(t.path){var c=1/0,h=-1/0,d=t.path.match(yT.segmentRE),p,_,b,v,k;for(e.type==="date"&&(l=S0e.decodeDate(l)),p=0;ph&&(h=k)));if(h>=c)return[c,h]}}});var P0e=Ae((pur,L0e)=>{"use strict";var C0e=lz();L0e.exports={moduleType:"component",name:"shapes",layoutAttributes:$U(),supplyLayoutDefaults:x0e(),supplyDrawNewShapeDefaults:T0e(),includeBasePlot:O5()("shapes"),calcAutorange:k0e(),draw:C0e.draw,drawOne:C0e.drawOne}});var eV=Ae((mur,I0e)=>{"use strict";var z0e=dd(),eyt=Lf().templatedArray,vur=B5();I0e.exports=eyt("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",z0e.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",z0e.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var D0e=Ae((yur,R0e)=>{"use strict";var tyt=ei(),tV=wu(),ryt=Jd(),iyt=eV(),nyt="images";R0e.exports=function(t,r){var n={name:nyt,handleItemDefaults:ayt};ryt(t,r,n)};function ayt(e,t,r){function n(h,d){return tyt.coerce(e,t,iyt,h,d)}var i=n("source"),a=n("visible",!!i);if(!a)return t;n("layer"),n("xanchor"),n("yanchor"),n("sizex"),n("sizey"),n("sizing"),n("opacity");for(var o={_fullLayout:r},s=["x","y"],u=0;u<2;u++){var l=s[u],f=tV.coerceRef(e,t,o,l,"paper",void 0);if(f!=="paper"){var c=tV.getFromId(o,f);c._imgIndices.push(t._index)}tV.coercePosition(t,o,n,f,l,0)}return t}});var q0e=Ae((gur,O0e)=>{"use strict";var F0e=Jl(),oyt=Mu(),gT=wu(),B0e=Wc(),syt=jv();O0e.exports=function(t){var r=t._fullLayout,n=[],i={},a=[],o,s;for(s=0;s{"use strict";var N0e=ku(),lyt=yL();U0e.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(a||o){for(var s=t._fullLayout.images,u=r._id.charAt(0),l,f,c=0;c{"use strict";G0e.exports={moduleType:"component",name:"images",layoutAttributes:eV(),supplyLayoutDefaults:D0e(),includeBasePlot:O5()("images"),draw:q0e(),convertCoords:V0e()}});var _I=Ae((bur,W0e)=>{"use strict";W0e.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var rV=Ae((wur,X0e)=>{"use strict";var uyt=gc(),fyt=Fh(),cyt=Su().extendFlat,hyt=Sc().overrideAll,dyt=EL(),j0e=Lf().templatedArray,pyt=j0e("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});X0e.exports=hyt(j0e("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:pyt,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:cyt(dyt({editType:"arraydraw"}),{}),font:uyt({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:fyt.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var J0e=Ae((Tur,K0e)=>{"use strict";var xI=ei(),Z0e=Jd(),Y0e=rV(),vyt=_I(),myt=vyt.name,yyt=Y0e.buttons;K0e.exports=function(t,r){var n={name:myt,handleItemDefaults:gyt};Z0e(t,r,n)};function gyt(e,t,r){function n(o,s){return xI.coerce(e,t,Y0e,o,s)}var i=Z0e(e,t,{name:"buttons",handleItemDefaults:_yt}),a=n("visible",i.length>0);a&&(n("active"),n("direction"),n("type"),n("showactive"),n("x"),n("y"),xI.noneOrAll(e,t,["x","y"]),n("xanchor"),n("yanchor"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),xI.coerceFont(n,"font",r.font),n("bgcolor",r.paper_bgcolor),n("bordercolor"),n("borderwidth"))}function _yt(e,t){function r(i,a){return xI.coerce(e,t,yyt,i,a)}var n=r("visible",e.method==="skip"||Array.isArray(e.args));n&&(r("method"),r("args"),r("args2"),r("label"),r("execute"))}});var eme=Ae((Aur,Q0e)=>{"use strict";Q0e.exports=eh;var Om=Jl(),$0e=jl(),_T=Mu(),bI=ei();function eh(e,t,r){this.gd=e,this.container=t,this.id=r,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}eh.barWidth=2;eh.barLength=20;eh.barRadius=2;eh.barPad=1;eh.barColor="#808BA4";eh.prototype.enable=function(t,r,n){var i=this.gd._fullLayout,a=i.width,o=i.height;this.position=t;var s=this.position.l,u=this.position.w,l=this.position.t,f=this.position.h,c=this.position.direction,h=c==="down",d=c==="left",p=c==="right",_=c==="up",b=u,v=f,k,E,A,L;!h&&!d&&!p&&!_&&(this.position.direction="down",h=!0);var x=h||_;x?(k=s,E=k+b,h?(A=l,L=Math.min(A+v,o),v=L-A):(L=l+v,A=Math.max(L-v,0),v=L-A)):(A=l,L=A+v,d?(E=s+b,k=Math.max(E-b,0),b=E-k):(k=s,E=Math.min(k+b,a),b=E-k)),this._box={l:k,t:A,w:b,h:v};var C=u>b,M=eh.barLength+2*eh.barPad,m=eh.barWidth+2*eh.barPad,P=s,T=l+f;T+m>o&&(T=o-m);var B=this.container.selectAll("rect.scrollbar-horizontal").data(C?[0]:[]);B.exit().on(".drag",null).remove(),B.enter().append("rect").classed("scrollbar-horizontal",!0).call($0e.fill,eh.barColor),C?(this.hbar=B.attr({rx:eh.barRadius,ry:eh.barRadius,x:P,y:T,width:M,height:m}),this._hbarXMin=P+M/2,this._hbarTranslateMax=b-M):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var F=f>v,U=eh.barWidth+2*eh.barPad,G=eh.barLength+2*eh.barPad,j=s+u,W=l;j+U>a&&(j=a-U);var N=this.container.selectAll("rect.scrollbar-vertical").data(F?[0]:[]);N.exit().on(".drag",null).remove(),N.enter().append("rect").classed("scrollbar-vertical",!0).call($0e.fill,eh.barColor),F?(this.vbar=N.attr({rx:eh.barRadius,ry:eh.barRadius,x:j,y:W,width:U,height:G}),this._vbarYMin=W+G/2,this._vbarTranslateMax=v-G):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var H=this.id,re=k-.5,ae=F?E+U+.5:E+.5,be=A-.5,ze=C?L+m+.5:L+.5,Ce=i._topdefs.selectAll("#"+H).data(C||F?[0]:[]);if(Ce.exit().remove(),Ce.enter().append("clipPath").attr("id",H).append("rect"),C||F?(this._clipRect=Ce.select("rect").attr({x:Math.floor(re),y:Math.floor(be),width:Math.ceil(ae)-Math.floor(re),height:Math.ceil(ze)-Math.floor(be)}),this.container.call(_T.setClipUrl,H,this.gd),this.bg.attr({x:s,y:l,width:u,height:f})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(_T.setClipUrl,null),delete this._clipRect),C||F){var de=Om.behavior.drag().on("dragstart",function(){Om.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(de);var te=Om.behavior.drag().on("dragstart",function(){Om.event.sourceEvent.preventDefault(),Om.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));C&&this.hbar.on(".drag",null).call(te),F&&this.vbar.on(".drag",null).call(te)}this.setTranslate(r,n)};eh.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(_T.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};eh.prototype._onBoxDrag=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t-=Om.event.dx),this.vbar&&(r-=Om.event.dy),this.setTranslate(t,r)};eh.prototype._onBoxWheel=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t+=Om.event.deltaY),this.vbar&&(r+=Om.event.deltaY),this.setTranslate(t,r)};eh.prototype._onBarDrag=function(){var t=this.translateX,r=this.translateY;if(this.hbar){var n=t+this._hbarXMin,i=n+this._hbarTranslateMax,a=bI.constrain(Om.event.x,n,i),o=(a-n)/(i-n),s=this.position.w-this._box.w;t=o*s}if(this.vbar){var u=r+this._vbarYMin,l=u+this._vbarTranslateMax,f=bI.constrain(Om.event.y,u,l),c=(f-u)/(l-u),h=this.position.h-this._box.h;r=c*h}this.setTranslate(t,r)};eh.prototype.setTranslate=function(t,r){var n=this.position.w-this._box.w,i=this.position.h-this._box.h;if(t=bI.constrain(t||0,0,n),r=bI.constrain(r||0,0,i),this.translateX=t,this.translateY=r,this.container.call(_T.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-r),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+r-.5)}),this.hbar){var a=t/n;this.hbar.call(_T.setTranslate,t+a*this._hbarTranslateMax,r)}if(this.vbar){var o=r/i;this.vbar.call(_T.setTranslate,t,r+o*this._vbarTranslateMax)}}});var fme=Ae((Sur,ume)=>{"use strict";var xT=Jl(),sE=Cc(),lE=jl(),bT=Mu(),e0=ei(),wI=Xf(),xyt=Lf().arrayEditor,rme=td().LINE_SPACING,Uu=_I(),byt=eme();ume.exports=function(t){var r=t._fullLayout,n=e0.filterVisible(r[Uu.name]);function i(h){sE.autoMargin(t,sme(h))}var a=r._menulayer.selectAll("g."+Uu.containerClassName).data(n.length>0?[0]:[]);if(a.enter().append("g").classed(Uu.containerClassName,!0).style("cursor","pointer"),a.exit().each(function(){xT.select(this).selectAll("g."+Uu.headerGroupClassName).each(i)}).remove(),n.length!==0){var o=a.selectAll("g."+Uu.headerGroupClassName).data(n,wyt);o.enter().append("g").classed(Uu.headerGroupClassName,!0);for(var s=e0.ensureSingle(a,"g",Uu.dropdownButtonGroupClassName,function(h){h.style("pointer-events","all")}),u=0;u{"use strict";var Cyt=_I();cme.exports={moduleType:"component",name:Cyt.name,layoutAttributes:rV(),supplyLayoutDefaults:J0e(),draw:fme()}});var fE=Ae((Eur,dme)=>{"use strict";dme.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var oV=Ae((kur,mme)=>{"use strict";var pme=gc(),Lyt=EL(),Pyt=Su().extendDeepAll,zyt=Sc().overrideAll,Iyt=UM(),vme=Lf().templatedArray,$b=fE(),Ryt=vme("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});mme.exports=zyt(vme("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:Ryt,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:Pyt(Lyt({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:Iyt.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:pme({})},font:pme({}),activebgcolor:{valType:"color",dflt:$b.gripBgActiveColor},bgcolor:{valType:"color",dflt:$b.railBgColor},bordercolor:{valType:"color",dflt:$b.railBorderColor},borderwidth:{valType:"number",min:0,dflt:$b.railBorderWidth},ticklen:{valType:"number",min:0,dflt:$b.tickLength},tickcolor:{valType:"color",dflt:$b.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:$b.minorTickLength}}),"arraydraw","from-root")});var xme=Ae((Cur,_me)=>{"use strict";var wT=ei(),yme=Jd(),gme=oV(),Dyt=fE(),Fyt=Dyt.name,Byt=gme.steps;_me.exports=function(t,r){yme(t,r,{name:Fyt,handleItemDefaults:Oyt})};function Oyt(e,t,r){function n(c,h){return wT.coerce(e,t,gme,c,h)}for(var i=yme(e,t,{name:"steps",handleItemDefaults:qyt}),a=0,o=0;o{"use strict";var qm=Jl(),TI=Cc(),__=jl(),Nm=Mu(),t0=ei(),Nyt=t0.strTranslate,cE=Xf(),Uyt=Lf().arrayEditor,df=fE(),uV=td(),Tme=uV.LINE_SPACING,sV=uV.FROM_TL,lV=uV.FROM_BR;Cme.exports=function(t){var r=t._context.staticPlot,n=t._fullLayout,i=Vyt(n,t),a=n._infolayer.selectAll("g."+df.containerClassName).data(i.length>0?[0]:[]);a.enter().append("g").classed(df.containerClassName,!0).style("cursor",r?null:"ew-resize");function o(f){f._commandObserver&&(f._commandObserver.remove(),delete f._commandObserver),TI.autoMargin(t,Ame(f))}if(a.exit().each(function(){qm.select(this).selectAll("g."+df.groupClassName).each(o)}).remove(),i.length!==0){var s=a.selectAll("g."+df.groupClassName).data(i,Gyt);s.enter().append("g").classed(df.groupClassName,!0),s.exit().each(o).remove();for(var u=0;u0&&(s=s.transition().duration(t.transition.duration).ease(t.transition.easing)),s.attr("transform",Nyt(o-df.gripWidth*.5,t._dims.currentValueTotalHeight))}}function fV(e,t){var r=e._dims;return r.inputAreaStart+df.stepInset+(r.inputAreaLength-2*df.stepInset)*Math.min(1,Math.max(0,t))}function wme(e,t){var r=e._dims;return Math.min(1,Math.max(0,(t-df.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*df.stepInset-2*r.inputAreaStart)))}function Kyt(e,t,r){var n=r._dims,i=t0.ensureSingle(e,"rect",df.railTouchRectClass,function(a){a.call(Eme,t,e,r).style("pointer-events","all")});i.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,df.tickOffset+r.ticklen+n.labelHeight)}).call(__.fill,r.bgcolor).attr("opacity",0),Nm.setTranslate(i,0,n.currentValueTotalHeight)}function Jyt(e,t){var r=t._dims,n=r.inputAreaLength-df.railInset*2,i=t0.ensureSingle(e,"rect",df.railRectClass);i.attr({width:n,height:df.railWidth,rx:df.railRadius,ry:df.railRadius,"shape-rendering":"crispEdges"}).call(__.stroke,t.bordercolor).call(__.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px"),Nm.setTranslate(i,df.railInset,(r.inputAreaWidth-df.railWidth)*.5+r.currentValueTotalHeight)}});var zme=Ae((Pur,Pme)=>{"use strict";var $yt=fE();Pme.exports={moduleType:"component",name:$yt.name,layoutAttributes:oV(),supplyLayoutDefaults:xme(),draw:Lme()}});var SI=Ae((zur,Rme)=>{"use strict";var Ime=Fh();Rme.exports={bgcolor:{valType:"color",dflt:Ime.background,editType:"plot"},bordercolor:{valType:"color",dflt:Ime.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var cV=Ae((Iur,Dme)=>{"use strict";Dme.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var MI=Ae((Rur,Fme)=>{"use strict";Fme.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var qme=Ae(kI=>{"use strict";var Qyt=Wc(),egt=Xf(),Bme=MI(),tgt=td().LINE_SPACING,EI=Bme.name;function Ome(e){var t=e&&e[EI];return t&&t.visible}kI.isVisible=Ome;kI.makeData=function(e){for(var t=Qyt.list({_fullLayout:e},"x",!0),r=e.margin,n=[],i=0;i{"use strict";var CI=ei(),Nme=Lf(),Ume=Wc(),rgt=SI(),igt=cV();Vme.exports=function(t,r,n){var i=t[n],a=r[n];if(!(i.rangeslider||r._requestRangeslider[a._id]))return;CI.isPlainObject(i.rangeslider)||(i.rangeslider={});var o=i.rangeslider,s=Nme.newContainer(a,"rangeslider");function u(L,x){return CI.coerce(o,s,rgt,L,x)}var l,f;function c(L,x){return CI.coerce(l,f,igt,L,x)}var h=u("visible");if(h){u("bgcolor",r.plot_bgcolor),u("bordercolor"),u("borderwidth"),u("thickness"),u("autorange",!a.isValidRange(o.range)),u("range");var d=r._subplots;if(d)for(var p=d.cartesian.filter(function(L){return L.slice(0,Math.max(0,L.indexOf("y")))===Ume.name2id(n)}).map(function(L){return L.slice(L.indexOf("y"),L.length)}),_=CI.simpleMap(p,Ume.id2name),b=0;b<_.length;b++){var v=_[b];l=o[v]||{},f=Nme.newContainer(s,v,"yaxis");var k=r[v],E;l.range&&k.isValidRange(l.range)&&(E="fixed");var A=c("rangemode",E);A!=="match"&&c("range",k.range.slice())}s._input=o}}});var Wme=Ae((Bur,Hme)=>{"use strict";var ngt=Wc().list,agt=Am().getAutoRange,ogt=MI();Hme.exports=function(t){for(var r=ngt(t,"x",!0),n=0;n{"use strict";var LI=Jl(),sgt=$l(),lgt=Cc(),dh=ei(),PI=dh.strTranslate,Xme=Mu(),x_=jl(),ugt=Eb(),fgt=Ah(),hV=Wc(),cgt=xp(),hgt=Sm(),Sf=MI();Zme.exports=function(e){for(var t=e._fullLayout,r=t._rangeSliderData,n=0;n=N.max)j=T[W+1];else if(G=N.pmax)j=T[W+1];else if(G0?e.touches[0].clientX:0}function dgt(e,t,r,n){if(t._context.staticPlot)return;var i=e.select("rect."+Sf.slideBoxClassName).node(),a=e.select("rect."+Sf.grabAreaMinClassName).node(),o=e.select("rect."+Sf.grabAreaMaxClassName).node();function s(){var u=LI.event,l=u.target,f=jme(u),c=f-e.node().getBoundingClientRect().left,h=n.d2p(r._rl[0]),d=n.d2p(r._rl[1]),p=cgt.coverSlip();this.addEventListener("touchmove",_),this.addEventListener("touchend",b),p.addEventListener("mousemove",_),p.addEventListener("mouseup",b);function _(v){var k=jme(v),E=+k-f,A,L,x;switch(l){case i:if(x="ew-resize",h+E>r._length||d+E<0)return;A=h+E,L=d+E;break;case a:if(x="col-resize",h+E>r._length)return;A=h+E,L=d;break;case o:if(x="col-resize",d+E<0)return;A=h,L=d+E;break;default:x="ew-resize",A=c,L=c+E;break}if(L{"use strict";var Tgt=ei(),Agt=SI(),Sgt=cV(),dV=qme();Kme.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:Tgt.extendFlat({},Agt,{yaxis:Sgt})}}},layoutAttributes:SI(),handleDefaults:Gme(),calcAutorange:Wme(),draw:Yme(),isVisible:dV.isVisible,makeData:dV.makeData,autoMarginOpts:dV.autoMarginOpts}});var zI=Ae((Nur,Qme)=>{"use strict";var Mgt=gc(),$me=Fh(),Egt=Lf().templatedArray,kgt=Egt("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});Qme.exports={visible:{valType:"boolean",editType:"plot"},buttons:kgt,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:Mgt({editType:"plot"}),bgcolor:{valType:"color",dflt:$me.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:$me.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var pV=Ae((Uur,eye)=>{"use strict";eye.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var iye=Ae((Vur,rye)=>{"use strict";var II=ei(),Cgt=jl(),Lgt=Lf(),Pgt=Jd(),tye=zI(),vV=pV();rye.exports=function(t,r,n,i,a){var o=t.rangeselector||{},s=Lgt.newContainer(r,"rangeselector");function u(d,p){return II.coerce(o,s,tye,d,p)}var l=Pgt(o,s,{name:"buttons",handleItemDefaults:zgt,calendar:a}),f=u("visible",l.length>0);if(f){var c=Igt(r,n,i);u("x",c[0]),u("y",c[1]),II.noneOrAll(t,r,["x","y"]),u("xanchor"),u("yanchor"),II.coerceFont(u,"font",n.font);var h=u("bgcolor");u("activecolor",Cgt.contrast(h,vV.lightAmount,vV.darkAmount)),u("bordercolor"),u("borderwidth")}};function zgt(e,t,r,n){var i=n.calendar;function a(u,l){return II.coerce(e,t,tye.buttons,u,l)}var o=a("visible");if(o){var s=a("step");s!=="all"&&(i&&i!=="gregorian"&&(s==="month"||s==="year")?t.stepmode="backward":a("stepmode"),a("count")),a("label")}}function Igt(e,t,r){for(var n=r.filter(function(s){return t[s].anchor===e._id}),i=0,a=0;a{"use strict";var Rgt=P9(),Dgt=ei().titleCase;nye.exports=function(t,r){var n=t._name,i={};if(r.step==="all")i[n+".autorange"]=!0;else{var a=Fgt(t,r);i[n+".range[0]"]=a[0],i[n+".range[1]"]=a[1]}return i};function Fgt(e,t){var r=e.range,n=new Date(e.r2l(r[1])),i=t.step,a=Rgt["utc"+Dgt(i)],o=t.count,s;switch(t.stepmode){case"backward":s=e.l2r(+a.offset(n,-o));break;case"todate":var u=a.offset(n,-o);s=e.l2r(+a.ceil(u));break}var l=r[1];return[s,l]}});var dye=Ae((Hur,hye)=>{"use strict";var DI=Jl(),Bgt=$l(),Ogt=Cc(),oye=jl(),cye=Mu(),Ig=ei(),sye=Ig.strTranslate,RI=Xf(),qgt=Wc(),gV=td(),lye=gV.LINE_SPACING,uye=gV.FROM_TL,fye=gV.FROM_BR,yV=pV(),Ngt=aye();hye.exports=function(t){var r=t._fullLayout,n=r._infolayer.selectAll(".rangeselector").data(Ugt(t),Vgt);n.enter().append("g").classed("rangeselector",!0),n.exit().remove(),n.style({cursor:"pointer","pointer-events":"all"}),n.each(function(i){var a=DI.select(this),o=i,s=o.rangeselector,u=a.selectAll("g.button").data(Ig.filterVisible(s.buttons));u.enter().append("g").classed("button",!0),u.exit().remove(),u.each(function(l){var f=DI.select(this),c=Ngt(o,l);l._isActive=Ggt(o,l,c),f.call(mV,s,l),f.call(Wgt,s,l,t),f.on("click",function(){t._dragged||Bgt.call("_guiRelayout",t,c)}),f.on("mouseover",function(){l._isHovered=!0,f.call(mV,s,l)}),f.on("mouseout",function(){l._isHovered=!1,f.call(mV,s,l)})}),Xgt(t,u,s,o._name,a)})};function Ugt(e){for(var t=qgt.list(e,"x",!0),r=[],n=0;n{"use strict";pye.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:zI()}}},layoutAttributes:zI(),handleDefaults:iye(),draw:dye()}});var zc=Ae(_V=>{"use strict";var mye=Su().extendFlat;_V.attributes=function(e,t){e=e||{},t=t||{};var r={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},n=e.name?e.name+" ":"",i=e.trace?"trace ":"subplot ",a=t.description?" "+t.description:"",o={x:mye({},r,{}),y:mye({},r,{}),editType:e.editType};return e.noGridCell||(o.row={valType:"integer",min:0,dflt:0,editType:e.editType},o.column={valType:"integer",min:0,dflt:0,editType:e.editType}),o};_V.defaults=function(e,t,r,n){var i=n&&n.x||[0,1],a=n&&n.y||[0,1],o=t.grid;if(o){var s=r("domain.column");s!==void 0&&(s{"use strict";var Zgt=ei(),Ygt=o3().counter,Kgt=zc().attributes,yye=dd().idRegex,Jgt=Lf(),xV={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[Ygt("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[yye.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[yye.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:Kgt({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function FI(e,t,r){var n=t[r+"axes"],i=Object.keys((e._splomAxes||{})[r]||{});if(Array.isArray(n))return n;if(i.length)return i}function $gt(e,t){var r=e.grid||{},n=FI(t,r,"x"),i=FI(t,r,"y");if(!e.grid&&!n&&!i)return;var a=Array.isArray(r.subplots)&&Array.isArray(r.subplots[0]),o=Array.isArray(n),s=Array.isArray(i),u=o&&n!==r.xaxes&&s&&i!==r.yaxes,l,f;a?(l=r.subplots.length,f=r.subplots[0].length):(s&&(l=i.length),o&&(f=n.length));var c=Jgt.newContainer(t,"grid");function h(x,C){return Zgt.coerce(r,c,xV,x,C)}var d=h("rows",l),p=h("columns",f);if(!(d*p>1)){delete t.grid;return}if(!a&&!o&&!s){var _=h("pattern")==="independent";_&&(a=!0)}c._hasSubplotGrid=a;var b=h("roworder"),v=b==="top to bottom",k=a?.2:.1,E=a?.3:.1,A,L;u&&t._splomGridDflt&&(A=t._splomGridDflt.xside,L=t._splomGridDflt.yside),c._domains={x:gye("x",h,k,A,p),y:gye("y",h,E,L,d,v)}}function gye(e,t,r,n,i,a){var o=t(e+"gap",r),s=t("domain."+e);t(e+"side",n);for(var u=new Array(i),l=s[0],f=(s[1]-l)/(i-o),c=f*(1-o),h=0;h{"use strict";bye.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var Aye=Ae((Yur,Tye)=>{"use strict";var wye=ku(),e1t=$l(),t1t=ei(),r1t=Lf(),i1t=wV();Tye.exports=function(e,t,r,n){var i="error_"+n.axis,a=r1t.newContainer(t,i),o=e[i]||{};function s(p,_){return t1t.coerce(o,a,i1t,p,_)}var u=o.array!==void 0||o.value!==void 0||o.type==="sqrt",l=s("visible",u);if(l!==!1){var f=s("type","array"in o?"data":"percent"),c=!0;f!=="sqrt"&&(c=s("symmetric",!((f==="data"?"arrayminus":"valueminus")in o))),f==="data"?(s("array"),s("traceref"),c||(s("arrayminus"),s("tracerefminus"))):(f==="percent"||f==="constant")&&(s("value"),c||s("valueminus"));var h="copy_"+n.inherit+"style";if(n.inherit){var d=t["error_"+n.inherit];(d||{}).visible&&s(h,!(o.color||wye(o.thickness)||wye(o.width)))}(!n.inherit||!a[h])&&(s("color",r),s("thickness"),s("width",e1t.traceIs(t,"gl3d")?0:4))}}});var TV=Ae((Kur,Mye)=>{"use strict";Mye.exports=function(t){var r=t.type,n=t.symmetric;if(r==="data"){var i=t.array||[];if(n)return function(l,f){var c=+i[f];return[c,c]};var a=t.arrayminus||[];return function(l,f){var c=+i[f],h=+a[f];return!isNaN(c)||!isNaN(h)?[h||0,c||0]:[NaN,NaN]}}else{var o=Sye(r,t.value),s=Sye(r,t.valueminus);return n||t.valueminus===void 0?function(l){var f=o(l);return[f,f]}:function(l){return[s(l),o(l)]}}};function Sye(e,t){if(e==="percent")return function(r){return Math.abs(r*t/100)};if(e==="constant")return function(){return Math.abs(t)};if(e==="sqrt")return function(r){return Math.sqrt(Math.abs(r))}}});var Cye=Ae((Jur,kye)=>{"use strict";var AV=ku(),n1t=$l(),SV=wu(),a1t=ei(),o1t=TV();kye.exports=function(t){for(var r=t.calcdata,n=0;n{"use strict";var Lye=Jl(),b_=ku(),s1t=Mu(),l1t=lc();Pye.exports=function(t,r,n,i){var a,o=n.xaxis,s=n.yaxis,u=i&&i.duration>0,l=t._context.staticPlot;r.each(function(f){var c=f[0].trace,h=c.error_x||{},d=c.error_y||{},p;c.ids&&(p=function(k){return k.id});var _=l1t.hasMarkers(c)&&c.marker.maxdisplayed>0;!d.visible&&!h.visible&&(f=[]);var b=Lye.select(this).selectAll("g.errorbar").data(f,p);if(b.exit().remove(),!!f.length){h.visible||b.selectAll("path.xerror").remove(),d.visible||b.selectAll("path.yerror").remove(),b.style("opacity",1);var v=b.enter().append("g").classed("errorbar",!0);u&&v.style("opacity",0).transition().duration(i.duration).style("opacity",1),s1t.setClipUrl(b,n.layerClipId,t),b.each(function(k){var E=Lye.select(this),A=u1t(k,o,s);if(!(_&&!k.vis)){var L,x=E.select("path.yerror");if(d.visible&&b_(A.x)&&b_(A.yh)&&b_(A.ys)){var C=d.width;L="M"+(A.x-C)+","+A.yh+"h"+2*C+"m-"+C+",0V"+A.ys,A.noYS||(L+="m-"+C+",0h"+2*C),a=!x.size(),a?x=E.append("path").style("vector-effect",l?"none":"non-scaling-stroke").classed("yerror",!0):u&&(x=x.transition().duration(i.duration).ease(i.easing)),x.attr("d",L)}else x.remove();var M=E.select("path.xerror");if(h.visible&&b_(A.y)&&b_(A.xh)&&b_(A.xs)){var m=(h.copy_ystyle?d:h).width;L="M"+A.xh+","+(A.y-m)+"v"+2*m+"m0,-"+m+"H"+A.xs,A.noXS||(L+="m0,-"+m+"v"+2*m),a=!M.size(),a?M=E.append("path").style("vector-effect",l?"none":"non-scaling-stroke").classed("xerror",!0):u&&(M=M.transition().duration(i.duration).ease(i.easing)),M.attr("d",L)}else M.remove()}})}})};function u1t(e,t,r){var n={x:t.c2p(e.x),y:r.c2p(e.y)};return e.yh!==void 0&&(n.yh=r.c2p(e.yh),n.ys=r.c2p(e.ys),b_(n.ys)||(n.noYS=!0,n.ys=r.c2p(e.ys,!0))),e.xh!==void 0&&(n.xh=t.c2p(e.xh),n.xs=t.c2p(e.xs),b_(n.xs)||(n.noXS=!0,n.xs=t.c2p(e.xs,!0))),n}});var Dye=Ae((Qur,Rye)=>{"use strict";var f1t=Jl(),Iye=jl();Rye.exports=function(t){t.each(function(r){var n=r[0].trace,i=n.error_y||{},a=n.error_x||{},o=f1t.select(this);o.selectAll("path.yerror").style("stroke-width",i.thickness+"px").call(Iye.stroke,i.color),a.copy_ystyle&&(a=i),o.selectAll("path.xerror").style("stroke-width",a.thickness+"px").call(Iye.stroke,a.color)})}});var Oye=Ae((efr,Bye)=>{"use strict";var hE=ei(),Fye=Sc().overrideAll,dE=wV(),Qb={error_x:hE.extendFlat({},dE),error_y:hE.extendFlat({},dE)};delete Qb.error_x.copy_zstyle;delete Qb.error_y.copy_zstyle;delete Qb.error_y.copy_ystyle;var pE={error_x:hE.extendFlat({},dE),error_y:hE.extendFlat({},dE),error_z:hE.extendFlat({},dE)};delete pE.error_x.copy_ystyle;delete pE.error_y.copy_ystyle;delete pE.error_z.copy_ystyle;delete pE.error_z.copy_zstyle;Bye.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Qb,bar:Qb,histogram:Qb,scatter3d:Fye(pE,"calc","nested"),scattergl:Fye(Qb,"calc","nested")}},supplyDefaults:Aye(),calc:Cye(),makeComputeError:TV(),plot:zye(),style:Dye(),hoverInfo:c1t};function c1t(e,t,r){(t.error_y||{}).visible&&(r.yerr=e.yh-e.y,t.error_y.symmetric||(r.yerrneg=e.y-e.ys)),(t.error_x||{}).visible&&(r.xerr=e.xh-e.x,t.error_x.symmetric||(r.xerrneg=e.x-e.xs))}});var Nye=Ae((tfr,qye)=>{"use strict";qye.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var Xye=Ae((rfr,jye)=>{"use strict";var w_=Jl(),MV=cd(),OI=Cc(),Uye=$l(),Rg=wu(),BI=xp(),q0=ei(),Vm=q0.strTranslate,Wye=Su().extendFlat,EV=Sm(),Um=Mu(),kV=jl(),h1t=Eb(),d1t=Xf(),p1t=yp().flipScale,v1t=iE(),m1t=uI(),y1t=Dd(),CV=td(),Vye=CV.LINE_SPACING,Gye=CV.FROM_TL,Hye=CV.FROM_BR,Yc=Nye().cn;function g1t(e){var t=e._fullLayout,r=t._infolayer.selectAll("g."+Yc.colorbar).data(_1t(e),function(n){return n._id});r.enter().append("g").attr("class",function(n){return n._id}).classed(Yc.colorbar,!0),r.each(function(n){var i=w_.select(this);q0.ensureSingle(i,"rect",Yc.cbbg),q0.ensureSingle(i,"g",Yc.cbfills),q0.ensureSingle(i,"g",Yc.cblines),q0.ensureSingle(i,"g",Yc.cbaxis,function(o){o.classed(Yc.crisp,!0)}),q0.ensureSingle(i,"g",Yc.cbtitleunshift,function(o){o.append("g").classed(Yc.cbtitle,!0)}),q0.ensureSingle(i,"rect",Yc.cboutline);var a=x1t(i,n,e);a&&a.then&&(e._promises||[]).push(a),e._context.edits.colorbarPosition&&b1t(i,n,e)}),r.exit().each(function(n){OI.autoMargin(e,n._id)}).remove(),r.order()}function _1t(e){var t=e._fullLayout,r=e.calcdata,n=[],i,a,o,s;function u(E){return Wye(E,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function l(){typeof s.calc=="function"?s.calc(e,o,i):(i._fillgradient=a.reversescale?p1t(a.colorscale):a.colorscale,i._zrange=[a[s.min],a[s.max]])}for(var f=0;f1){var qe=Math.pow(10,Math.floor(Math.log(ye)/Math.LN10));Ue*=qe*q0.roundUp(ye/qe,[2,5,10]),(Math.abs(B.start)/B.size+1e-6)%1<2e-6&&(Ee.tick0=0)}Ee.dtick=Ue}Ee.domain=n?[te+p/A.h,te+H-p/A.h]:[te+d/A.w,te+H-d/A.w],Ee.setScale(),e.attr("transform",Vm(Math.round(A.l),Math.round(A.t)));var ce=e.select("."+Yc.cbtitleunshift).attr("transform",Vm(-Math.round(A.l),-Math.round(A.t))),Je=Ee.ticklabelposition,nt=Ee.title.font.size,gt=e.select("."+Yc.cbaxis),Nt,at=0,Ke=0;function Ct(Et,Te){var ot={propContainer:Ee,propName:t._propPrefix+"title.text",traceIndex:t._traceIndex,_meta:t._meta,placeholder:E._dfltTitle.colorbar,containerGroup:e.select("."+Yc.cbtitle)},Tt=Et.charAt(0)==="h"?Et.slice(1):"h"+Et;e.selectAll("."+Tt+",."+Tt+"-math-group").remove(),h1t.draw(r,Et,Wye(ot,Te||{}))}function wt(){if(n&&Me||!n&&!Me){var Et,Te;M==="top"&&(Et=d+A.l+re*_,Te=p+A.t+ae*(1-te-H)+3+nt*.75),M==="bottom"&&(Et=d+A.l+re*_,Te=p+A.t+ae*(1-te)-3-nt*.25),M==="right"&&(Te=p+A.t+ae*b+3+nt*.75,Et=d+A.l+re*te),Ct(Ee._id+"title",{attributes:{x:Et,y:Te,"text-anchor":n?"start":"middle"}})}}function St(){if(n&&!Me||!n&&Me){var Et=Ee.position||0,Te=Ee._offset+Ee._length/2,ot,Tt;if(M==="right")Tt=Te,ot=A.l+re*Et+10+nt*(Ee.showticklabels?1:.5);else if(ot=Te,M==="bottom"&&(Tt=A.t+ae*Et+10+(Je.indexOf("inside")===-1?Ee.tickfont.size:0)+(Ee.ticks!=="inside"&&t.ticklen||0)),M==="top"){var vt=C.text.split("
").length;Tt=A.t+ae*Et+10-j-Vye*nt*vt}Ct((n?"h":"v")+Ee._id+"title",{avoid:{selection:w_.select(r).selectAll("g."+Ee._id+"tick"),side:M,offsetTop:n?0:A.t,offsetLeft:n?A.l:0,maxShift:n?E.width:E.height},attributes:{x:ot,y:Tt,"text-anchor":"middle"},transform:{rotate:n?-90:0,offset:0}})}}function Dt(){if(!n&&!Me||n&&Me){var Et=e.select("."+Yc.cbtitle),Te=Et.select("text"),ot=[-u/2,u/2],Tt=Et.select(".h"+Ee._id+"title-math-group").node(),vt=15.6;Te.node()&&(vt=parseInt(Te.node().style.fontSize,10)*Vye);var Ye;if(Tt?(Ye=Um.bBox(Tt),Ke=Ye.width,at=Ye.height,at>vt&&(ot[1]-=(at-vt)/2)):Te.node()&&!Te.classed(Yc.jsPlaceholder)&&(Ye=Um.bBox(Te.node()),Ke=Ye.width,at=Ye.height),n){if(at){if(at+=5,M==="top")Ee.domain[1]-=at/A.h,ot[1]*=-1;else{Ee.domain[0]+=at/A.h;var He=d1t.lineCount(Te);ot[1]+=(1-He)*vt}Et.attr("transform",Vm(ot[0],ot[1])),Ee.setScale()}}else Ke&&(M==="right"&&(Ee.domain[0]+=(Ke+nt/2)/A.w),Et.attr("transform",Vm(ot[0],ot[1])),Ee.setScale())}e.selectAll("."+Yc.cbfills+",."+Yc.cblines).attr("transform",n?Vm(0,Math.round(A.h*(1-Ee.domain[1]))):Vm(Math.round(A.w*Ee.domain[0]),0)),gt.attr("transform",n?Vm(0,Math.round(-A.t)):Vm(Math.round(-A.l),0));var it=e.select("."+Yc.cbfills).selectAll("rect."+Yc.cbfill).attr("style","").data(U);it.enter().append("rect").classed(Yc.cbfill,!0).attr("style",""),it.exit().remove();var et=m.map(Ee.c2p).map(Math.round).sort(function(yr,Ut){return yr-Ut});it.each(function(yr,Ut){var Re=[Ut===0?m[0]:(U[Ut]+U[Ut-1])/2,Ut===U.length-1?m[1]:(U[Ut]+U[Ut+1])/2].map(Ee.c2p).map(Math.round);n&&(Re[1]=q0.constrain(Re[1]+(Re[1]>Re[0])?1:-1,et[0],et[1]));var xe=w_.select(this).attr(n?"x":"y",be).attr(n?"y":"x",w_.min(Re)).attr(n?"width":"height",Math.max(j,2)).attr(n?"height":"width",Math.max(w_.max(Re)-w_.min(Re),2));if(t._fillgradient)Um.gradient(xe,r,t._id,n?"vertical":"horizontalreversed",t._fillgradient,"fill");else{var Oe=T(yr).replace("e-","");xe.attr("fill",MV(Oe).toHexString())}});var It=e.select("."+Yc.cblines).selectAll("path."+Yc.cbline).data(x.color&&x.width?G:[]);It.enter().append("path").classed(Yc.cbline,!0),It.exit().remove(),It.each(function(yr){var Ut=be,Re=Math.round(Ee.c2p(yr))+x.width/2%1;w_.select(this).attr("d","M"+(n?Ut+","+Re:Re+","+Ut)+(n?"h":"v")+j).call(Um.lineGroupStyle,x.width,P(yr),x.dash)}),gt.selectAll("g."+Ee._id+"tick,path").remove();var Yt=be+j+(u||0)/2-(t.ticks==="outside"?1:0),cr=Rg.calcTicks(Ee),_r=Rg.getTickSigns(Ee)[2];return Rg.drawTicks(r,Ee,{vals:Ee.ticks==="inside"?Rg.clipEnds(Ee,cr):cr,layer:gt,path:Rg.makeTickPath(Ee,Yt,_r),transFn:Rg.makeTransTickFn(Ee)}),Rg.drawLabels(r,Ee,{vals:cr,layer:gt,transFn:Rg.makeTransTickLabelFn(Ee),labelFns:Rg.makeLabelFns(Ee,Yt)})}function Zt(){var Et,Te=j+u/2;Je.indexOf("inside")===-1&&(Et=Um.bBox(gt.node()),Te+=n?Et.width:Et.height),Nt=ce.select("text");var ot=0,Tt=n&&M==="top",vt=!n&&M==="right",Ye=0;if(Nt.node()&&!Nt.classed(Yc.jsPlaceholder)){var He,it=ce.select(".h"+Ee._id+"title-math-group").node();it&&(n&&Me||!n&&!Me)?(Et=Um.bBox(it),ot=Et.width,He=Et.height):(Et=Um.bBox(ce.node()),ot=Et.right-A.l-(n?be:ke),He=Et.bottom-A.t-(n?ke:be),!n&&M==="top"&&(Te+=Et.height,Ye=Et.height)),vt&&(Nt.attr("transform",Vm(ot/2+nt/2,0)),ot*=2),Te=Math.max(Te,n?ot:He)}var et=(n?d:p)*2+Te+l+u/2,It=0;!n&&C.text&&h==="bottom"&&b<=0&&(It=et/2,et+=It,Ye+=It),E._hColorbarMoveTitle=It,E._hColorbarMoveCBTitle=Ye;var Yt=l+u,cr=(n?be:ke)-Yt/2-(n?d:0),_r=(n?ke:be)-(n?N:p+Ye-It);e.select("."+Yc.cbbg).attr("x",cr).attr("y",_r).attr(n?"width":"height",Math.max(et-It,2)).attr(n?"height":"width",Math.max(N+Yt,2)).call(kV.fill,f).call(kV.stroke,t.bordercolor).style("stroke-width",l);var yr=vt?Math.max(ot-10,0):0;e.selectAll("."+Yc.cboutline).attr("x",(n?be:ke+d)+yr).attr("y",(n?ke+p-N:be)+(Tt?at:0)).attr(n?"width":"height",Math.max(j,2)).attr(n?"height":"width",Math.max(N-(n?2*p+at:2*d+yr),2)).call(kV.stroke,t.outlinecolor).style({fill:"none","stroke-width":u});var Ut=n?ze*et:0,Re=n?0:(1-Ce)*et-Ye;if(Ut=k?A.l-Ut:-Ut,Re=v?A.t-Re:-Re,e.attr("transform",Vm(Ut,Re)),!n&&(l||MV(f).getAlpha()&&!MV.equals(E.paper_bgcolor,f))){var xe=gt.selectAll("text"),Oe=xe[0].length,Ie=e.select("."+Yc.cbbg).node(),Fe=Um.bBox(Ie),ft=Um.getTranslate(e),ge=2;xe.each(function(Rr,pi){var Di=0,ni=Oe-1;if(pi===Di||pi===ni){var $i=Um.bBox(this),Qi=Um.getTranslate(this),si;if(pi===ni){var Ai=$i.right+Qi.x,Ni=Fe.right+ft.x+ke-l-ge+_;si=Ni-Ai,si>0&&(si=0)}else if(pi===Di){var Rt=$i.left+Qi.x,yt=Fe.left+ft.x+ke+l+ge;si=yt-Rt,si<0&&(si=0)}si&&(Oe<3?this.setAttribute("transform","translate("+si+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var fe={},pe=Gye[c],dt=Hye[c],Pt=Gye[h],zt=Hye[h],rr=et-j;n?(a==="pixels"?(fe.y=b,fe.t=N*Pt,fe.b=N*zt):(fe.t=fe.b=0,fe.yt=b+i*Pt,fe.yb=b-i*zt),s==="pixels"?(fe.x=_,fe.l=et*pe,fe.r=et*dt):(fe.l=rr*pe,fe.r=rr*dt,fe.xl=_-o*pe,fe.xr=_+o*dt)):(a==="pixels"?(fe.x=_,fe.l=N*pe,fe.r=N*dt):(fe.l=fe.r=0,fe.xl=_+i*pe,fe.xr=_-i*dt),s==="pixels"?(fe.y=1-b,fe.t=et*Pt,fe.b=et*zt):(fe.t=rr*Pt,fe.b=rr*zt,fe.yt=b-o*Pt,fe.yb=b+o*zt));var Gr=t.y<.5?"b":"t",Br=t.x<.5?"l":"r";r._fullLayout._reservedMargin[t._id]={};var Er={r:E.width-cr-Ut,l:cr+fe.r,b:E.height-_r-Re,t:_r+fe.b};k&&v?OI.autoMargin(r,t._id,fe):k?r._fullLayout._reservedMargin[t._id][Gr]=Er[Gr]:v||n?r._fullLayout._reservedMargin[t._id][Br]=Er[Br]:r._fullLayout._reservedMargin[t._id][Gr]=Er[Gr]}return q0.syncOrAsync([OI.previousPromises,wt,Dt,St,OI.previousPromises,Zt],r)}function b1t(e,t,r){var n=t.orientation==="v",i=r._fullLayout,a=i._size,o,s,u;BI.init({element:e.node(),gd:r,prepFn:function(){o=e.attr("transform"),EV(e)},moveFn:function(l,f){e.attr("transform",o+Vm(l,f)),s=BI.align((n?t._uFrac:t._vFrac)+l/a.w,n?t._thickFrac:t._lenFrac,0,1,t.xanchor),u=BI.align((n?t._vFrac:1-t._uFrac)-f/a.h,n?t._lenFrac:t._thickFrac,0,1,t.yanchor);var c=BI.getCursor(s,u,t.xanchor,t.yanchor);EV(e,c)},doneFn:function(){if(EV(e),s!==void 0&&u!==void 0){var l={};l[t._propPrefix+"x"]=s,l[t._propPrefix+"y"]=u,t._traceIndex!==void 0?Uye.call("_guiRestyle",r,l,t._traceIndex):Uye.call("_guiRelayout",r,l)}}})}function w1t(e,t,r){var n=t._levels,i=[],a=[],o,s,u=n.end+n.size/100,l=n.size,f=1.001*r[0]-.001*r[1],c=1.001*r[1]-.001*r[0];for(s=0;s<1e5&&(o=n.start+s*l,!(l>0?o>=u:o<=u));s++)o>f&&o0?o>=u:o<=u));s++)o>r[0]&&o{"use strict";Zye.exports={moduleType:"component",name:"colorbar",attributes:tP(),supplyDefaults:Uq(),draw:Xye().draw,hasColorbar:Rq()}});var Jye=Ae((nfr,Kye)=>{"use strict";Kye.exports={moduleType:"component",name:"legend",layoutAttributes:DN(),supplyLayoutDefaults:BN(),draw:YN(),style:WN()}});var Qye=Ae((afr,$ye)=>{"use strict";$ye.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var tge=Ae((ofr,ege)=>{"use strict";ege.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var PV=Ae((sfr,age)=>{"use strict";var A1t=$l(),nge=ei(),LV=nge.extendFlat,rge=nge.extendDeep;function ige(e){var t;switch(e){case"themes__thumb":t={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":t={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:t={}}return t}function S1t(e){var t=["xaxis","yaxis","zaxis"];return t.indexOf(e.slice(0,5))>-1}age.exports=function(t,r){var n,i=t.data,a=t.layout,o=rge([],i),s=rge({},a,ige(r.tileClass)),u=t._context||{};if(r.width&&(s.width=r.width),r.height&&(s.height=r.height),r.tileClass==="thumbnail"||r.tileClass==="themes__thumb"){s.annotations=[];var l=Object.keys(s);for(n=0;n{"use strict";var M1t=vb().EventEmitter,E1t=$l(),k1t=ei(),oge=Pg(),C1t=PV(),L1t=Wz(),P1t=jz();function z1t(e,t){var r=new M1t,n=C1t(e,{format:"png"}),i=n.gd;i.style.position="absolute",i.style.left="-5000px",document.body.appendChild(i);function a(){var s=oge.getDelay(i._fullLayout);setTimeout(function(){var u=L1t(i),l=document.createElement("canvas");l.id=k1t.randstr(),r=P1t({format:t.format,width:i._fullLayout.width,height:i._fullLayout.height,canvas:l,emitter:r,svg:u}),r.clean=function(){i&&document.body.removeChild(i)}},s)}var o=oge.getRedrawFunc(i);return E1t.call("_doPlot",i,n.data,n.layout,n.config).then(o).then(a).catch(function(s){r.emit("error",s)}),r}sge.exports=z1t});var cge=Ae((ufr,fge)=>{"use strict";var uge=Pg(),I1t={getDelay:uge.getDelay,getRedrawFunc:uge.getRedrawFunc,clone:PV(),toSVG:Wz(),svgToImg:jz(),toImage:lge(),downloadImage:hU()};fge.exports=I1t});var dge=Ae(Dg=>{"use strict";Dg.version=lL().version;Mee();pne();var R1t=$l(),vE=Dg.register=R1t.register,IV=Dde(),hge=Object.keys(IV);for(qI=0;qI{"use strict";pge.exports=dge()});var e2=Ae((hfr,mge)=>{"use strict";mge.exports={TEXTPAD:3,eventDataKeys:["value","label"]}});var Ly=Ae((dfr,bge)=>{"use strict";var sh=Zc(),yge=jc().axisHoverFormat,{hovertemplateAttrs:D1t,texttemplateAttrs:F1t,templatefallbackAttrs:gge}=Ff(),xge=nc(),B1t=gc(),_ge=e2(),O1t=Id().pattern,t2=Su().extendFlat,RV=B1t({editType:"calc",arrayOk:!0,colorEditType:"style"}),q1t=sh.marker,N1t=q1t.line,U1t=t2({},N1t.width,{dflt:0}),V1t=t2({width:U1t,editType:"calc"},xge("marker.line")),G1t=t2({line:V1t,editType:"calc"},xge("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:O1t,cornerradius:{valType:"any",editType:"calc"}});bge.exports={x:sh.x,x0:sh.x0,dx:sh.dx,y:sh.y,y0:sh.y0,dy:sh.dy,xperiod:sh.xperiod,yperiod:sh.yperiod,xperiod0:sh.xperiod0,yperiod0:sh.yperiod0,xperiodalignment:sh.xperiodalignment,yperiodalignment:sh.yperiodalignment,xhoverformat:yge("x"),yhoverformat:yge("y"),text:sh.text,texttemplate:F1t({editType:"plot"},{keys:_ge.eventDataKeys}),texttemplatefallback:gge({editType:"plot"}),hovertext:sh.hovertext,hovertemplate:D1t({},{keys:_ge.eventDataKeys}),hovertemplatefallback:gge(),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:t2({},RV,{}),insidetextfont:t2({},RV,{}),outsidetextfont:t2({},RV,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:t2({},sh.cliponaxis,{}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc"},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc"},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc"},marker:G1t,offsetgroup:sh.offsetgroup,alignmentgroup:sh.alignmentgroup,selected:{marker:{opacity:sh.selected.marker.opacity,color:sh.selected.marker.color,editType:"style"},textfont:sh.selected.textfont,editType:"style"},unselected:{marker:{opacity:sh.unselected.marker.opacity,color:sh.unselected.marker.color,editType:"style"},textfont:sh.unselected.textfont,editType:"style"},zorder:sh.zorder}});var UI=Ae((pfr,wge)=>{"use strict";wge.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}});var VI=Ae((vfr,Sge)=>{"use strict";var H1t=jl(),Tge=yp().hasColorscale,Age=rd(),W1t=ei().coercePattern;Sge.exports=function(t,r,n,i,a){var o=n("marker.color",i),s=Tge(t,"marker");s&&Age(t,r,a,n,{prefix:"marker.",cLetter:"c"}),n("marker.line.color",H1t.defaultLine),Tge(t,"marker.line")&&Age(t,r,a,n,{prefix:"marker.line.",cLetter:"c"}),n("marker.line.width"),n("marker.opacity"),W1t(n,"marker.pattern",o,s),n("selected.marker.color"),n("unselected.marker.color")}});var r0=Ae((mfr,Pge)=>{"use strict";var Mge=ku(),AT=ei(),Ege=jl(),j1t=$l(),X1t=eT(),Z1t=zm(),Y1t=VI(),K1t=Hb(),kge=Ly(),GI=AT.coerceFont;function J1t(e,t,r,n){function i(l,f){return AT.coerce(e,t,kge,l,f)}var a=X1t(e,t,n,i);if(!a){t.visible=!1;return}Z1t(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder"),i("orientation",t.x&&!t.y?"h":"v"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var o=i("textposition");Lge(e,t,n,i,o,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),Y1t(e,t,i,r,n);var s=(t.marker.line||{}).color,u=j1t.getComponentMethod("errorbars","supplyDefaults");u(e,t,s||Ege.defaultLine,{axis:"y"}),u(e,t,s||Ege.defaultLine,{axis:"x",inherit:"y"}),AT.coerceSelectionMarkerOpacity(t,i)}function $1t(e,t){var r,n;function i(s,u){return AT.coerce(n._input,n,kge,s,u)}for(var a=0;a=0)return e}else if(typeof e=="string"&&(e=e.trim(),e.slice(-1)==="%"&&Mge(e.slice(0,-1))&&(e=+e.slice(0,-1),e>=0)))return e+"%"}function Lge(e,t,r,n,i,a){a=a||{};var o=a.moduleHasSelected!==!1,s=a.moduleHasUnselected!==!1,u=a.moduleHasConstrain!==!1,l=a.moduleHasCliponaxis!==!1,f=a.moduleHasTextangle!==!1,c=a.moduleHasInsideanchor!==!1,h=!!a.hasPathbar,d=Array.isArray(i)||i==="auto",p=d||i==="inside",_=d||i==="outside";if(p||_){var b=GI(n,"textfont",r.font),v=AT.extendFlat({},b),k=e.textfont&&e.textfont.color,E=!k;if(E&&delete v.color,GI(n,"insidetextfont",v),h){var A=AT.extendFlat({},b);E&&delete A.color,GI(n,"pathbar.textfont",A)}_&&GI(n,"outsidetextfont",b),o&&n("selected.textfont.color"),s&&n("unselected.textfont.color"),u&&n("constraintext"),l&&n("cliponaxis"),f&&n("textangle"),n("texttemplate"),n("texttemplatefallback")}p&&c&&n("insidetextanchor")}Pge.exports={supplyDefaults:J1t,crossTraceDefaults:$1t,handleText:Lge,validateCornerradius:Cge}});var DV=Ae((yfr,zge)=>{"use strict";var Q1t=$l(),e_t=wu(),t_t=ei(),r_t=UI(),i_t=r0().validateCornerradius;zge.exports=function(e,t,r){function n(_,b){return t_t.coerce(e,t,r_t,_,b)}for(var i=!1,a=!1,o=!1,s={},u=n("barmode"),l=u==="group",f=0;f0&&!s[h]&&(o=!0),s[h]=!0),c.visible&&c.type==="histogram"){var d=e_t.getFromId({_fullLayout:t},c[c.orientation==="v"?"xaxis":"yaxis"]);d.type!=="category"&&(a=!0)}}if(!i){delete t.barmode;return}u!=="overlay"&&n("barnorm"),n("bargap",a&&!o?0:.2),n("bargroupgap");var p=n("barcornerradius");t.barcornerradius=i_t(p)}});var mE=Ae((gfr,Ige)=>{"use strict";var ST=ei();Ige.exports=function(t,r){for(var n=0;n{"use strict";var Rge=wu(),Dge=Rm(),Fge=yp().hasColorscale,Bge=gp(),n_t=mE(),a_t=F0();Oge.exports=function(t,r){var n=Rge.getFromId(t,r.xaxis||"x"),i=Rge.getFromId(t,r.yaxis||"y"),a,o,s,u,l,f,c={msUTC:!!(r.base||r.base===0)};r.orientation==="h"?(a=n.makeCalcdata(r,"x",c),s=i.makeCalcdata(r,"y"),u=Dge(r,i,"y",s),l=!!r.yperiodalignment,f="y"):(a=i.makeCalcdata(r,"y",c),s=n.makeCalcdata(r,"x"),u=Dge(r,n,"x",s),l=!!r.xperiodalignment,f="x"),o=u.vals;for(var h=Math.min(o.length,a.length),d=new Array(h),p=0;p{"use strict";var o_t=Jl(),s_t=ei();function l_t(e,t,r){var n=e._fullLayout,i=n["_"+r+"Text_minsize"];if(i){var a=n.uniformtext.mode==="hide",o;switch(r){case"funnelarea":case"pie":case"sunburst":o="g.slice";break;case"treemap":case"icicle":o="g.slice, g.pathbar";break;default:o="g.points > g.point"}t.selectAll(o).each(function(s){var u=s.transform;if(u){u.scale=a&&u.hide?0:i/u.fontSize;var l=o_t.select(this).select("text");s_t.setTransormAndDisplay(l,u)}})}}function u_t(e,t,r){if(r.uniformtext.mode){var n=Nge(e),i=r.uniformtext.minsize,a=t.scale*t.fontSize;t.hide=a{"use strict";var c_t=ku(),h_t=cd(),Vge=ei().isArrayOrTypedArray;r2.coerceString=function(e,t,r){if(typeof t=="string"){if(t||!e.noBlank)return t}else if((typeof t=="number"||t===!0)&&!e.strict)return String(t);return r!==void 0?r:e.dflt};r2.coerceNumber=function(e,t,r){if(c_t(t)){t=+t;var n=e.min,i=e.max,a=n!==void 0&&ti;if(!a)return t}return r!==void 0?r:e.dflt};r2.coerceColor=function(e,t,r){return h_t(t).isValid()?t:r!==void 0?r:e.dflt};r2.coerceEnumerated=function(e,t,r){return e.coerceNumber&&(t=+t),e.values.indexOf(t)!==-1?t:r!==void 0?r:e.dflt};r2.getValue=function(e,t){var r;return Vge(e)?t{"use strict";var yE=Jl(),d_t=jl(),gE=Mu(),Gge=ei(),Hge=$l(),Wge=Tp().resizeText,FV=Ly(),p_t=FV.textfont,v_t=FV.insidetextfont,m_t=FV.outsidetextfont,tp=HI();function y_t(e){var t=yE.select(e).selectAll('g[class^="barlayer"]').selectAll("g.trace");Wge(e,t,"bar");var r=t.size(),n=e._fullLayout;t.style("opacity",function(i){return i[0].trace.opacity}).each(function(i){(n.barmode==="stack"&&r>1||n.bargap===0&&n.bargroupgap===0&&!i[0].trace.marker.line.width)&&yE.select(this).attr("shape-rendering","crispEdges")}),t.selectAll("g.points").each(function(i){var a=yE.select(this),o=i[0].trace;jge(a,o,e)}),Hge.getComponentMethod("errorbars","style")(t)}function jge(e,t,r){gE.pointStyle(e.selectAll("path"),t,r),Xge(e,t,r)}function Xge(e,t,r){e.selectAll("text").each(function(n){var i=yE.select(this),a=Gge.ensureUniformFontSize(r,Zge(i,n,t,r));gE.font(i,a)})}function g_t(e,t,r){var n=t[0].trace;n.selectedpoints?__t(r,n,e):(jge(r,n,e),Hge.getComponentMethod("errorbars","style")(r))}function __t(e,t,r){gE.selectedPointStyle(e.selectAll("path"),t),x_t(e.selectAll("text"),t,r)}function x_t(e,t,r){e.each(function(n){var i=yE.select(this),a;if(n.selected){a=Gge.ensureUniformFontSize(r,Zge(i,n,t,r));var o=t.selected.textfont&&t.selected.textfont.color;o&&(a.color=o),gE.font(i,a)}else gE.selectedTextStyle(i,t)})}function Zge(e,t,r,n){var i=n._fullLayout.font,a=r.textfont;if(e.classed("bartext-inside")){var o=$ge(t,r);a=Kge(r,t.i,i,o)}else e.classed("bartext-outside")&&(a=Jge(r,t.i,i));return a}function Yge(e,t,r){return BV(p_t,e.textfont,t,r)}function Kge(e,t,r,n){var i=Yge(e,t,r),a=e._input.textfont===void 0||e._input.textfont.color===void 0||Array.isArray(e.textfont.color)&&e.textfont.color[t]===void 0;return a&&(i={color:d_t.contrast(n),family:i.family,size:i.size,weight:i.weight,style:i.style,variant:i.variant,textcase:i.textcase,lineposition:i.lineposition,shadow:i.shadow}),BV(v_t,e.insidetextfont,t,i)}function Jge(e,t,r){var n=Yge(e,t,r);return BV(m_t,e.outsidetextfont,t,n)}function BV(e,t,r,n){t=t||{};var i=tp.getValue(t.family,r),a=tp.getValue(t.size,r),o=tp.getValue(t.color,r),s=tp.getValue(t.weight,r),u=tp.getValue(t.style,r),l=tp.getValue(t.variant,r),f=tp.getValue(t.textcase,r),c=tp.getValue(t.lineposition,r),h=tp.getValue(t.shadow,r);return{family:tp.coerceString(e.family,i,n.family),size:tp.coerceNumber(e.size,a,n.size),color:tp.coerceColor(e.color,o,n.color),weight:tp.coerceString(e.weight,s,n.weight),style:tp.coerceString(e.style,u,n.style),variant:tp.coerceString(e.variant,l,n.variant),textcase:tp.coerceString(e.variant,f,n.textcase),lineposition:tp.coerceString(e.variant,c,n.lineposition),shadow:tp.coerceString(e.variant,h,n.shadow)}}function $ge(e,t){return t.type==="waterfall"?t[e.dir].marker.color:e.mcc||e.mc||t.marker.color}Qge.exports={style:y_t,styleTextPoints:Xge,styleOnSelect:g_t,getInsideTextFont:Kge,getOutsideTextFont:Jge,getBarColor:$ge,resizeText:Wge}});var n2=Ae((Tfr,s1e)=>{"use strict";var WI=Jl(),jI=ku(),Bd=ei(),b_t=Xf(),w_t=jl(),T_=Mu(),T_t=$l(),XI=wu().tickText,e1e=Tp(),A_t=e1e.recordMinTextSize,S_t=e1e.clearMinTextSize,OV=N0(),MT=HI(),M_t=e2(),t1e=Ly(),E_t=t1e.text,k_t=t1e.textposition,C_t=iv().appendArrayPointValue,Gp=M_t.TEXTPAD;function L_t(e){return e.id}function P_t(e){if(e.ids)return L_t}function qV(e){return(e>0)-(e<0)}function Py(e,t){return e0}function I_t(e,t,r,n,i,a){var o=t.xaxis,s=t.yaxis,u=e._fullLayout,l=e._context.staticPlot;i||(i={mode:u.barmode,norm:u.barmode,gap:u.bargap,groupgap:u.bargroupgap},S_t("bar",u));var f=Bd.makeTraceGroups(n,r,"trace bars").each(function(c){var h=WI.select(this),d=c[0].trace,p=c[0].t,_=d.type==="waterfall",b=d.type==="funnel",v=d.type==="histogram",k=d.type==="bar",E=k||b,A=0;_&&d.connector.visible&&d.connector.mode==="between"&&(A=d.connector.line.width/2);var L=d.orientation==="h",x=i1e(i),C=Bd.ensureSingle(h,"g","points"),M=P_t(d),m=C.selectAll("g.point").data(Bd.identity,M);m.enter().append("g").classed("point",!0),m.exit().remove(),m.each(function(T,B){var F=WI.select(this),U=z_t(T,o,s,L),G=U[0][0],j=U[0][1],W=U[1][0],N=U[1][1],H=(L?j-G:N-W)===0;H&&E&&MT.getLineWidth(d,T)&&(H=!1),H||(H=!jI(G)||!jI(j)||!jI(W)||!jI(N)),T.isBlank=H,H&&(L?j=G:N=W),A&&!H&&(L?(G-=Py(G,j)*A,j+=Py(G,j)*A):(W-=Py(W,N)*A,N+=Py(W,N)*A));var re,ae;if(d.type==="waterfall"){if(!H){var be=d[T.dir].marker;re=be.line.width,ae=be.color}}else re=MT.getLineWidth(d,T),ae=T.mc||d.marker.color;function ze(Te){var ot=WI.round(re/2%1,2);return i.gap===0&&i.groupgap===0?WI.round(Math.round(Te)-ot,2):Te}function Ce(Te,ot,Tt){return Tt&&Te===ot?Te:Math.abs(Te-ot)>=2?ze(Te):Te>ot?Math.ceil(Te):Math.floor(Te)}var de=w_t.opacity(ae),te=de<1||re>.01?ze:Ce;e._context.staticPlot||(G=te(G,j,L),j=te(j,G,L),W=te(W,N,!L),N=te(N,W,!L));var ke=L?o.c2p:s.c2p,Ee;T.s0>0?Ee=T._sMax:T.s0<0?Ee=T._sMin:Ee=T.s1>0?T._sMax:T._sMin;function Me(Te,ot){if(!Te)return 0;var Tt=Math.abs(L?N-W:j-G),vt=Math.abs(L?j-G:N-W),Ye=te(Math.abs(ke(Ee,!0)-ke(0,!0))),He=T.hasB?Math.min(Tt/2,vt/2):Math.min(Tt/2,Ye),it;if(ot==="%"){var et=Math.min(50,Te);it=Tt*(et/100)}else it=Te;return te(Math.max(Math.min(it,He),0))}var Ue=k||v?Me(p.cornerradiusvalue,p.cornerradiusform):0,De,ye,qe="M"+G+","+W+"V"+N+"H"+j+"V"+W+"Z",ce=0;if(Ue&&T.s){var Je=qV(T.s0)===0||qV(T.s)===qV(T.s0)?T.s1:T.s0;if(ce=te(T.hasB?0:Math.abs(ke(Ee,!0)-ke(Je,!0))),ce0?Math.sqrt(ce*(2*Ue-ce)):0,Ct=nt>0?Math.max:Math.min;De="M"+G+","+W+"V"+(N-at*gt)+"H"+Ct(j-(Ue-ce)*nt,G)+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+j+","+(N-Ue*gt-Ke)+"V"+(W+Ue*gt+Ke)+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+Ct(j-(Ue-ce)*nt,G)+","+(W+at*gt)+"Z"}else if(T.hasB)De="M"+(G+Ue*nt)+","+W+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+G+","+(W+Ue*gt)+"V"+(N-Ue*gt)+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+(G+Ue*nt)+","+N+"H"+(j-Ue*nt)+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+j+","+(N-Ue*gt)+"V"+(W+Ue*gt)+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+(j-Ue*nt)+","+W+"Z";else{ye=Math.abs(N-W)+ce;var wt=ye0?Math.sqrt(ce*(2*Ue-ce)):0,Dt=gt>0?Math.max:Math.min;De="M"+(G+wt*nt)+","+W+"V"+Dt(N-(Ue-ce)*gt,W)+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+(G+Ue*nt-St)+","+N+"H"+(j-Ue*nt+St)+"A "+Ue+","+Ue+" 0 0 "+Nt+" "+(j-wt*nt)+","+Dt(N-(Ue-ce)*gt,W)+"V"+W+"Z"}}else De=qe}else De=qe;var Zt=r1e(Bd.ensureSingle(F,"path"),u,i,a);if(Zt.style("vector-effect",l?"none":"non-scaling-stroke").attr("d",isNaN((j-G)*(N-W))||H&&e._context.staticPlot?"M0,0Z":De).call(T_.setClipUrl,t.layerClipId,e),!u.uniformtext.mode&&x){var Et=T_.makePointStyleFns(d);T_.singlePointStyle(T,Zt,d,Et,e)}R_t(e,t,F,c,B,G,j,W,N,Ue,ce,i,a),t.layerClipId&&T_.hideOutsideRangePoint(T,F.select("text"),o,s,d.xcalendar,d.ycalendar)});var P=d.cliponaxis===!1;T_.setClipUrl(h,P?null:t.layerClipId,e)});T_t.getComponentMethod("errorbars","plot")(e,f,t,i)}function R_t(e,t,r,n,i,a,o,s,u,l,f,c,h){var d=t.xaxis,p=t.yaxis,_=e._fullLayout,b;function v(ye,qe,ce){var Je=Bd.ensureSingle(ye,"text").text(qe).attr({class:"bartext bartext-"+b,"text-anchor":"middle","data-notex":1}).call(T_.font,ce).call(b_t.convertToTspans,e);return Je}var k=n[0].trace,E=k.orientation==="h",A=B_t(_,n,i,d,p);b=O_t(k,i);var L=c.mode==="stack"||c.mode==="relative",x=n[i],C=!L||x._outmost,M=x.hasB,m=l&&l-f>Gp;if(!A||b==="none"||(x.isBlank||a===o||s===u)&&(b==="auto"||b==="inside")){r.select("text").remove();return}var P=_.font,T=OV.getBarColor(n[i],k),B=OV.getInsideTextFont(k,i,P,T),F=OV.getOutsideTextFont(k,i,P),U=k.insidetextanchor||"end",G=r.datum();E?d.type==="log"&&G.s0<=0&&(d.range[0]0&&ze>0,te;m?M?te=i2(N-2*l,H,be,ze,E)||i2(N,H-2*l,be,ze,E):E?te=i2(N-(l-f),H,be,ze,E)||i2(N,H-2*(l-f),be,ze,E):te=i2(N,H-(l-f),be,ze,E)||i2(N-2*(l-f),H,be,ze,E):te=i2(N,H,be,ze,E),de&&te?b="inside":(b="outside",re.remove(),re=null)}else b="inside";if(!re){Ce=Bd.ensureUniformFontSize(e,b==="outside"?F:B),re=v(r,A,Ce);var ke=re.attr("transform");if(re.attr("transform",""),ae=T_.bBox(re.node()),be=ae.width,ze=ae.height,re.attr("transform",ke),be<=0||ze<=0){re.remove();return}}var Ee=k.textangle,Me,Ue;b==="outside"?(Ue=k.constraintext==="both"||k.constraintext==="outside",Me=F_t(a,o,s,u,ae,{isHorizontal:E,constrained:Ue,angle:Ee})):(Ue=k.constraintext==="both"||k.constraintext==="inside",Me=o1e(a,o,s,u,ae,{isHorizontal:E,constrained:Ue,angle:Ee,anchor:U,hasB:M,r:l,overhead:f})),Me.fontSize=Ce.size,A_t(k.type==="histogram"?"bar":k.type,Me,_),x.transform=Me;var De=r1e(re,_,c,h);Bd.setTransormAndDisplay(De,Me)}function i2(e,t,r,n,i){if(e<0||t<0)return!1;var a=r<=e&&n<=t,o=r<=t&&n<=e,s=i?e>=r*(t/n):t>=n*(e/r);return a||o||s}function n1e(e){return e==="auto"?0:e}function a1e(e,t){var r=Math.PI/180*t,n=Math.abs(Math.sin(r)),i=Math.abs(Math.cos(r));return{x:e.width*i+e.height*n,y:e.width*n+e.height*i}}function o1e(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,u=a.angle||0,l=a.anchor,f=l==="end",c=l==="start",h=a.leftToRight||0,d=(h+1)/2,p=1-d,_=a.hasB,b=a.r,v=a.overhead,k=i.width,E=i.height,A=Math.abs(t-e),L=Math.abs(n-r),x=A>2*Gp&&L>2*Gp?Gp:0;A-=2*x,L-=2*x;var C=n1e(u);u==="auto"&&!(k<=A&&E<=L)&&(k>A||E>L)&&(!(k>L||E>A)||kGp){var T=D_t(e,t,r,n,M,b,v,o,_);m=T.scale,P=T.pad}else m=1,s&&(m=Math.min(1,A/M.x,L/M.y)),P=0;var B=i.left*p+i.right*d,F=(i.top+i.bottom)/2,U=(e+Gp)*p+(t-Gp)*d,G=(r+n)/2,j=0,W=0;if(c||f){var N=(o?M.x:M.y)/2;b&&(f||_)&&(x+=P);var H=o?Py(e,t):Py(r,n);o?c?(U=e+H*x,j=-H*N):(U=t-H*x,j=H*N):c?(G=r+H*x,W=-H*N):(G=n-H*x,W=H*N)}return{textX:B,textY:F,targetX:U,targetY:G,anchorX:j,anchorY:W,scale:m,rotate:C}}function D_t(e,t,r,n,i,a,o,s,u){var l=Math.max(0,Math.abs(t-e)-2*Gp),f=Math.max(0,Math.abs(n-r)-2*Gp),c=a-Gp,h=o?c-Math.sqrt(c*c-(c-o)*(c-o)):c,d=u?c*2:s?c-o:2*h,p=u?c*2:s?2*h:c-o,_,b,v,k,E;return i.y/i.x>=f/(l-d)?k=f/i.y:i.y/i.x<=(f-p)/l?k=l/i.x:!u&&s?(_=i.x*i.x+i.y*i.y/4,b=-2*i.x*(l-c)-i.y*(f/2-c),v=(l-c)*(l-c)+(f/2-c)*(f/2-c)-c*c,k=(-b+Math.sqrt(b*b-4*_*v))/(2*_)):u?(_=(i.x*i.x+i.y*i.y)/4,b=-i.x*(l/2-c)-i.y*(f/2-c),v=(l/2-c)*(l/2-c)+(f/2-c)*(f/2-c)-c*c,k=(-b+Math.sqrt(b*b-4*_*v))/(2*_)):(_=i.x*i.x/4+i.y*i.y,b=-i.x*(l/2-c)-2*i.y*(f-c),v=(l/2-c)*(l/2-c)+(f-c)*(f-c)-c*c,k=(-b+Math.sqrt(b*b-4*_*v))/(2*_)),k=Math.min(1,k),s?E=Math.max(0,c-Math.sqrt(Math.max(0,c*c-(c-(f-i.y*k)/2)*(c-(f-i.y*k)/2)))-o):E=Math.max(0,c-Math.sqrt(Math.max(0,c*c-(c-(l-i.x*k)/2)*(c-(l-i.x*k)/2)))-o),{scale:k,pad:E}}function F_t(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,u=a.angle||0,l=i.width,f=i.height,c=Math.abs(t-e),h=Math.abs(n-r),d;o?d=h>2*Gp?Gp:0:d=c>2*Gp?Gp:0;var p=1;s&&(p=o?Math.min(1,h/f):Math.min(1,c/l));var _=n1e(u),b=a1e(i,_),v=(o?b.x:b.y)/2,k=(i.left+i.right)/2,E=(i.top+i.bottom)/2,A=(e+t)/2,L=(r+n)/2,x=0,C=0,M=o?Py(t,e):Py(r,n);return o?(A=t-M*d,x=M*v):(L=n+M*d,C=-M*v),{textX:k,textY:E,targetX:A,targetY:L,anchorX:x,anchorY:C,scale:p,rotate:_}}function B_t(e,t,r,n,i){var a=t[0].trace,o=a.texttemplate,s;return o?s=q_t(e,t,r,n,i):a.textinfo?s=N_t(t,r,n,i):s=MT.getValue(a.text,r),MT.coerceString(E_t,s)}function O_t(e,t){var r=MT.getValue(e.textposition,t);return MT.coerceEnumerated(k_t,r)}function q_t(e,t,r,n,i){var a=t[0].trace,o=Bd.castOption(a,r,"texttemplate");if(!o)return"";var s=a.type==="histogram",u=a.type==="waterfall",l=a.type==="funnel",f=a.orientation==="h",c,h,d,p;f?(c="y",h=i,d="x",p=n):(c="x",h=n,d="y",p=i);function _(x){return XI(h,h.c2l(x),!0).text}function b(x){return XI(p,p.c2l(x),!0).text}var v=t[r],k={};k.label=v.p,k.labelLabel=k[c+"Label"]=_(v.p);var E=Bd.castOption(a,v.i,"text");(E===0||E)&&(k.text=E),k.value=v.s,k.valueLabel=k[d+"Label"]=b(v.s);var A={};C_t(A,a,v.i),(s||A.x===void 0)&&(A.x=f?k.value:k.label),(s||A.y===void 0)&&(A.y=f?k.label:k.value),(s||A.xLabel===void 0)&&(A.xLabel=f?k.valueLabel:k.labelLabel),(s||A.yLabel===void 0)&&(A.yLabel=f?k.labelLabel:k.valueLabel),u&&(k.delta=+v.rawS||v.s,k.deltaLabel=b(k.delta),k.final=v.v,k.finalLabel=b(k.final),k.initial=k.final-k.delta,k.initialLabel=b(k.initial)),l&&(k.value=v.s,k.valueLabel=b(k.value),k.percentInitial=v.begR,k.percentInitialLabel=Bd.formatPercent(v.begR),k.percentPrevious=v.difR,k.percentPreviousLabel=Bd.formatPercent(v.difR),k.percentTotal=v.sumR,k.percenTotalLabel=Bd.formatPercent(v.sumR));var L=Bd.castOption(a,v.i,"customdata");return L&&(k.customdata=L),Bd.texttemplateString({data:[A,k,a._meta],fallback:a.texttemplatefallback,labels:k,locale:e._d3locale,template:o})}function N_t(e,t,r,n){var i=e[0].trace,a=i.orientation==="h",o=i.type==="waterfall",s=i.type==="funnel";function u(L){var x=a?n:r;return XI(x,L,!0).text}function l(L){var x=a?r:n;return XI(x,+L,!0).text}var f=i.textinfo,c=e[t],h=f.split("+"),d=[],p,_=function(L){return h.indexOf(L)!==-1};if(_("label")&&d.push(u(e[t].p)),_("text")&&(p=Bd.castOption(i,c.i,"text"),(p===0||p)&&d.push(p)),o){var b=+c.rawS||c.s,v=c.v,k=v-b;_("initial")&&d.push(l(k)),_("delta")&&d.push(l(b)),_("final")&&d.push(l(v))}if(s){_("value")&&d.push(l(c.s));var E=0;_("percent initial")&&E++,_("percent previous")&&E++,_("percent total")&&E++;var A=E>1;_("percent initial")&&(p=Bd.formatPercent(c.begR),A&&(p+=" of initial"),d.push(p)),_("percent previous")&&(p=Bd.formatPercent(c.difR),A&&(p+=" of previous"),d.push(p)),_("percent total")&&(p=Bd.formatPercent(c.sumR),A&&(p+=" of total"),d.push(p))}return d.join("
")}s1e.exports={plot:I_t,toMoveInsideBar:o1e}});var ET=Ae((Afr,c1e)=>{"use strict";var _E=Xc(),U_t=$l(),l1e=jl(),V_t=ei().fillText,G_t=HI().getLineWidth,NV=wu().hoverLabelText,H_t=rf().BADNUM;function W_t(e,t,r,n,i){var a=u1e(e,t,r,n,i);if(a){var o=a.cd,s=o[0].trace,u=o[a.index];return a.color=f1e(s,u),U_t.getComponentMethod("errorbars","hoverInfo")(u,s,a),[a]}}function u1e(e,t,r,n,i){var a=e.cd,o=a[0].trace,s=a[0].t,u=n==="closest",l=o.type==="waterfall",f=e.maxHoverDistance,c=e.maxSpikeDistance,h,d,p,_,b,v,k;o.orientation==="h"?(h=r,d=t,p="y",_="x",b=G,v=B):(h=t,d=r,p="x",_="y",v=G,b=B);var E=o[p+"period"],A=u||E;function L(te){return C(te,-1)}function x(te){return C(te,1)}function C(te,ke){var Ee=te.w;return te[p]+ke*Ee/2}function M(te){return te[p+"End"]-te[p+"Start"]}var m=u?L:E?function(te){return te.p-M(te)/2}:function(te){return Math.min(L(te),te.p-s.bardelta/2)},P=u?x:E?function(te){return te.p+M(te)/2}:function(te){return Math.max(x(te),te.p+s.bardelta/2)};function T(te,ke,Ee){return i.finiteRange&&(Ee=0),_E.inbox(te-h,ke-h,Ee+Math.min(1,Math.abs(ke-te)/k)-1)}function B(te){return T(m(te),P(te),f)}function F(te){return T(L(te),x(te),c)}function U(te){var ke=te[_];if(l){var Ee=Math.abs(te.rawS)||0;d>0?ke+=Ee:d<0&&(ke-=Ee)}return ke}function G(te){var ke=d,Ee=te.b,Me=U(te);return _E.inbox(Ee-ke,Me-ke,f+(Me-ke)/(Me-Ee)-1)}function j(te){var ke=d,Ee=te.b,Me=U(te);return _E.inbox(Ee-ke,Me-ke,c+(Me-ke)/(Me-Ee)-1)}var W=e[p+"a"],N=e[_+"a"];k=Math.abs(W.r2c(W.range[1])-W.r2c(W.range[0]));function H(te){return(b(te)+v(te))/2}var re=_E.getDistanceFunction(n,b,v,H);if(_E.getClosest(a,re,e),e.index!==!1&&a[e.index].p!==H_t){A||(m=function(te){return Math.min(L(te),te.p-s.bargroupwidth/2)},P=function(te){return Math.max(x(te),te.p+s.bargroupwidth/2)});var ae=e.index,be=a[ae],ze=o.base?be.b+be.s:be.s;e[_+"0"]=e[_+"1"]=N.c2p(be[_],!0),e[_+"LabelVal"]=ze;var Ce=s.extents[s.extents.round(be.p)];e[p+"0"]=W.c2p(u?m(be):Ce[0],!0),e[p+"1"]=W.c2p(u?P(be):Ce[1],!0);var de=be.orig_p!==void 0;return e[p+"LabelVal"]=de?be.orig_p:be.p,e.labelLabel=NV(W,e[p+"LabelVal"],o[p+"hoverformat"]),e.valueLabel=NV(N,e[_+"LabelVal"],o[_+"hoverformat"]),e.baseLabel=NV(N,be.b,o[_+"hoverformat"]),e.spikeDistance=(j(be)+F(be))/2,e[p+"Spike"]=W.c2p(be.p,!0),V_t(be,o,e),e.hovertemplate=o.hovertemplate,e}}function f1e(e,t){var r=t.mcc||e.marker.color,n=t.mlcc||e.marker.line.color,i=G_t(e,t);if(l1e.opacity(r))return r;if(l1e.opacity(n)&&i)return n}c1e.exports={hoverPoints:W_t,hoverOnBars:u1e,getTraceColor:f1e}});var d1e=Ae((Sfr,h1e)=>{"use strict";h1e.exports=function(t,r,n){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),n.orientation==="h"?(t.label=t.y,t.value=t.x):(t.label=t.x,t.value=t.y),t}});var kT=Ae((Mfr,p1e)=>{"use strict";p1e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=n[0].trace,s=o.type==="funnel",u=o.orientation==="h",l=[],f;if(r===!1)for(f=0;f{"use strict";v1e.exports={attributes:Ly(),layoutAttributes:UI(),supplyDefaults:r0().supplyDefaults,crossTraceDefaults:r0().crossTraceDefaults,supplyLayoutDefaults:DV(),calc:qge(),crossTraceCalc:Wb().crossTraceCalc,colorbar:ep(),arraysToCalcdata:mE(),plot:n2().plot,style:N0().style,styleOnSelect:N0().styleOnSelect,hoverPoints:ET().hoverPoints,eventData:d1e(),selectPoints:kT(),moduleType:"trace",name:"bar",basePlotModule:Ah(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}});var g1e=Ae((kfr,y1e)=>{"use strict";y1e.exports=m1e()});var xE=Ae((Cfr,w1e)=>{"use strict";var X_t=Cm(),U0=Zc(),_1e=Ly(),Z_t=Fh(),x1e=jc().axisHoverFormat,{hovertemplateAttrs:Y_t,templatefallbackAttrs:K_t}=Ff(),Fg=Su().extendFlat,CT=U0.marker,b1e=CT.line;w1e.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:U0.xperiod,yperiod:U0.yperiod,xperiod0:U0.xperiod0,yperiod0:U0.yperiod0,xperiodalignment:U0.xperiodalignment,yperiodalignment:U0.yperiodalignment,xhoverformat:x1e("x"),yhoverformat:x1e("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:Fg({},CT.symbol,{arrayOk:!1,editType:"plot"}),opacity:Fg({},CT.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:Fg({},CT.angle,{arrayOk:!1,editType:"calc"}),size:Fg({},CT.size,{arrayOk:!1,editType:"calc"}),color:Fg({},CT.color,{arrayOk:!1,editType:"style"}),line:{color:Fg({},b1e.color,{arrayOk:!1,dflt:Z_t.defaultLine,editType:"style"}),width:Fg({},b1e.width,{arrayOk:!1,dflt:0,editType:"style"}),outliercolor:{valType:"color",editType:"style"},outlierwidth:{valType:"number",min:0,dflt:1,editType:"style"},editType:"style"},editType:"plot"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:X_t(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},showwhiskers:{valType:"boolean",editType:"calc"},offsetgroup:_1e.offsetgroup,alignmentgroup:_1e.alignmentgroup,selected:{marker:U0.selected.marker,editType:"style"},unselected:{marker:U0.unselected.marker,editType:"style"},text:Fg({},U0.text,{}),hovertext:Fg({},U0.hovertext,{}),hovertemplate:Y_t({}),hovertemplatefallback:K_t(),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"},zorder:U0.zorder}});var bE=Ae((Lfr,T1e)=>{"use strict";T1e.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"}}});var TE=Ae((Pfr,E1e)=>{"use strict";var V0=ei(),J_t=$l(),$_t=jl(),Q_t=zm(),ext=Hb(),A1e=I3(),wE=xE();function txt(e,t,r,n){function i(p,_){return V0.coerce(e,t,wE,p,_)}if(S1e(e,t,i,n),t.visible!==!1){Q_t(e,t,n,i),i("xhoverformat"),i("yhoverformat");var a=t._hasPreCompStats;a&&(i("lowerfence"),i("upperfence")),i("line.color",(e.marker||{}).color||r),i("line.width"),i("fillcolor",$_t.addOpacity(t.line.color,.5));var o=!1;if(a){var s=i("mean"),u=i("sd");s&&s.length&&(o=!0,u&&u.length&&(o="sd"))}i("whiskerwidth");var l=i("sizemode"),f;l==="quartiles"&&(f=i("boxmean",o)),i("showwhiskers",l==="quartiles"),(l==="sd"||f==="sd")&&i("sdmultiple"),i("width"),i("quartilemethod");var c=!1;if(a){var h=i("notchspan");h&&h.length&&(c=!0)}else V0.validate(e.notchwidth,wE.notchwidth)&&(c=!0);var d=i("notched",c);d&&i("notchwidth"),M1e(e,t,i,{prefix:"box"}),i("zorder")}}function S1e(e,t,r,n){function i(P){var T=0;return P&&P.length&&(T+=1,V0.isArrayOrTypedArray(P[0])&&P[0].length&&(T+=1)),T}function a(P){return V0.validate(e[P],wE[P])}var o=r("y"),s=r("x"),u;if(t.type==="box"){var l=r("q1"),f=r("median"),c=r("q3");t._hasPreCompStats=l&&l.length&&f&&f.length&&c&&c.length,u=Math.min(V0.minRowLength(l),V0.minRowLength(f),V0.minRowLength(c))}var h=i(o),d=i(s),p=h&&V0.minRowLength(o),_=d&&V0.minRowLength(s),b=n.calendar,v={autotypenumbers:n.autotypenumbers},k,E;if(t._hasPreCompStats)switch(String(d)+String(h)){case"00":var A=a("x0")||a("dx"),L=a("y0")||a("dy");L&&!A?k="h":k="v",E=u;break;case"10":k="v",E=Math.min(u,_);break;case"20":k="h",E=Math.min(u,s.length);break;case"01":k="h",E=Math.min(u,p);break;case"02":k="v",E=Math.min(u,o.length);break;case"12":k="v",E=Math.min(u,_,o.length);break;case"21":k="h",E=Math.min(u,s.length,p);break;case"11":E=0;break;case"22":var x=!1,C;for(C=0;C0?(k="v",d>0?E=Math.min(_,p):E=Math.min(p)):d>0?(k="h",E=Math.min(_)):E=0;if(!E){t.visible=!1;return}t._length=E;var M=r("orientation",k);t._hasPreCompStats?M==="v"&&d===0?(r("x0",0),r("dx",1)):M==="h"&&h===0&&(r("y0",0),r("dy",1)):M==="v"&&d===0?r("x0"):M==="h"&&h===0&&r("y0");var m=J_t.getComponentMethod("calendars","handleTraceDefaults");m(e,t,["x","y"],n)}function M1e(e,t,r,n){var i=n.prefix,a=V0.coerce2(e,t,wE,"marker.outliercolor"),o=r("marker.line.outliercolor"),s="outliers";t._hasPreCompStats?s="all":(a||o)&&(s="suspectedoutliers");var u=r(i+"points",s);u?(r("jitter",u==="all"?.3:0),r("pointpos",u==="all"?-1.5:0),r("marker.symbol"),r("marker.opacity"),r("marker.size"),r("marker.angle"),r("marker.color",t.line.color),r("marker.line.color"),r("marker.line.width"),u==="suspectedoutliers"&&(r("marker.line.outliercolor",t.marker.color),r("marker.line.outlierwidth")),r("selected.marker.color"),r("unselected.marker.color"),r("selected.marker.size"),r("unselected.marker.size"),r("text"),r("hovertext")):delete t.marker;var l=r("hoveron");(l==="all"||l.indexOf("points")!==-1)&&(r("hovertemplate"),r("hovertemplatefallback")),V0.coerceSelectionMarkerOpacity(t,r)}function rxt(e,t){var r,n;function i(u){return V0.coerce(n._input,n,wE,u)}for(var a=0;a{"use strict";var ixt=$l(),nxt=ei(),axt=bE();function k1e(e,t,r,n,i){for(var a=i+"Layout",o=!1,s=0;s{"use strict";var VV=ku(),YI=wu(),sxt=Rm(),Sh=ei(),i0=rf().BADNUM,Bg=Sh._;O1e.exports=function(t,r){var n=t._fullLayout,i=YI.getFromId(t,r.xaxis||"x"),a=YI.getFromId(t,r.yaxis||"y"),o=[],s=r.type==="violin"?"_numViolins":"_numBoxes",u,l,f,c,h,d,p;r.orientation==="h"?(f=i,c="x",h=a,d="y",p=!!r.yperiodalignment):(f=a,c="y",h=i,d="x",p=!!r.xperiodalignment);var _=lxt(r,d,h,n[s]),b=_[0],v=_[1],k=Sh.distinctVals(b,h),E=k.vals,A=k.minDiff/2,L,x,C,M,m,P,T=(r.boxpoints||r.points)==="all"?Sh.identity:function(Nt){return Nt.vL.uf};if(r._hasPreCompStats){var B=r[c],F=function(Nt){return f.d2c((r[Nt]||[])[u])},U=1/0,G=-1/0;for(u=0;u=L.q1&&L.q3>=L.med){var W=F("lowerfence");L.lf=W!==i0&&W<=L.q1?W:I1e(L,C,M);var N=F("upperfence");L.uf=N!==i0&&N>=L.q3?N:R1e(L,C,M);var H=F("mean");L.mean=H!==i0?H:M?Sh.mean(C,M):(L.q1+L.q3)/2;var re=F("sd");L.sd=H!==i0&&re>=0?re:M?Sh.stdev(C,M,L.mean):L.q3-L.q1,L.lo=D1e(L),L.uo=F1e(L);var ae=F("notchspan");ae=ae!==i0&&ae>0?ae:B1e(L,M),L.ln=L.med-ae,L.un=L.med+ae;var be=L.lf,ze=L.uf;r.boxpoints&&C.length&&(be=Math.min(be,C[0]),ze=Math.max(ze,C[M-1])),r.notched&&(be=Math.min(be,L.ln),ze=Math.max(ze,L.un)),L.min=be,L.max=ze}else{Sh.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+L.q1,"median = "+L.med,"q3 = "+L.q3].join(` +`));var Ce;L.med!==i0?Ce=L.med:L.q1!==i0?L.q3!==i0?Ce=(L.q1+L.q3)/2:Ce=L.q1:L.q3!==i0?Ce=L.q3:Ce=0,L.med=Ce,L.q1=L.q3=Ce,L.lf=L.uf=Ce,L.mean=L.sd=Ce,L.ln=L.un=Ce,L.min=L.max=Ce}U=Math.min(U,L.min),G=Math.max(G,L.max),L.pts2=x.filter(T),o.push(L)}}r._extremes[f._id]=YI.findExtremes(f,[U,G],{padded:!0})}else{var de=f.makeCalcdata(r,c),te=uxt(E,A),ke=E.length,Ee=fxt(ke);for(u=0;u=0&&Me0){if(L={},L.pos=L[d]=E[u],x=L.pts=Ee[u].sort(P1e),C=L[c]=x.map(z1e),M=C.length,L.min=C[0],L.max=C[M-1],L.mean=Sh.mean(C,M),L.sd=Sh.stdev(C,M,L.mean)*r.sdmultiple,L.med=Sh.interp(C,.5),M%2&&(qe||ce)){var Je,nt;qe?(Je=C.slice(0,M/2),nt=C.slice(M/2+1)):ce&&(Je=C.slice(0,M/2+1),nt=C.slice(M/2)),L.q1=Sh.interp(Je,.5),L.q3=Sh.interp(nt,.5)}else L.q1=Sh.interp(C,.25),L.q3=Sh.interp(C,.75);L.lf=I1e(L,C,M),L.uf=R1e(L,C,M),L.lo=D1e(L),L.uo=F1e(L);var gt=B1e(L,M);L.ln=L.med-gt,L.un=L.med+gt,Ue=Math.min(Ue,L.ln),De=Math.max(De,L.un),L.pts2=x.filter(T),o.push(L)}r.notched&&Sh.isTypedArray(de)&&(de=Array.from(de)),r._extremes[f._id]=YI.findExtremes(f,r.notched?de.concat([Ue,De]):de,{padded:!0})}return cxt(o,r),o.length>0?(o[0].t={num:n[s],dPos:A,posLetter:d,valLetter:c,labels:{med:Bg(t,"median:"),min:Bg(t,"min:"),q1:Bg(t,"q1:"),q3:Bg(t,"q3:"),max:Bg(t,"max:"),mean:r.boxmean==="sd"||r.sizemode==="sd"?Bg(t,"mean \xB1 \u03C3:").replace("\u03C3",r.sdmultiple===1?"\u03C3":r.sdmultiple+"\u03C3"):Bg(t,"mean:"),lf:Bg(t,"lower fence:"),uf:Bg(t,"upper fence:")}},n[s]++,o):[{t:{empty:!0}}]};function lxt(e,t,r,n){var i=t in e,a=t+"0"in e,o="d"+t in e;if(i||a&&o){var s=r.makeCalcdata(e,t),u=sxt(e,r,t,s).vals;return[u,s]}var l;a?l=e[t+"0"]:"name"in e&&(r.type==="category"||VV(e.name)&&["linear","log"].indexOf(r.type)!==-1||Sh.isDateTime(e.name)&&r.type==="date")?l=e.name:l=n;for(var f=r.type==="multicategory"?r.r2c_just_indices(l):r.d2c(l,0,e[t+"calendar"]),c=e._length,h=new Array(c),d=0;d{"use strict";var q1e=wu(),hxt=ei(),dxt=Nb().getAxisGroup,N1e=["v","h"];function pxt(e,t){for(var r=e.calcdata,n=t.xaxis,i=t.yaxis,a=0;a1,k=1-a[e+"gap"],E=1-a[e+"groupgap"];for(u=0;u0;if(C==="positive"?(N=M*(x?1:.5),ae=re,H=ae=P):C==="negative"?(N=ae=P,H=M*(x?1:.5),be=re):(N=H=M,ae=be=re),Ee){var Me=A.pointpos,Ue=A.jitter,De=A.marker.size/2,ye=0;Me+Ue>=0&&(ye=re*(Me+Ue),ye>N?(ke=!0,de=De,ze=ye):ye>ae&&(de=De,ze=N)),ye<=N&&(ze=N);var qe=0;Me-Ue<=0&&(qe=-re*(Me-Ue),qe>H?(ke=!0,te=De,Ce=qe):qe>be&&(te=De,Ce=H)),qe<=H&&(Ce=H)}else ze=N,Ce=H;var ce=new Array(f.length);for(l=0;l{"use strict";var LT=Jl(),a2=ei(),vxt=Mu(),G1e=5,mxt=.01;function yxt(e,t,r,n){var i=e._context.staticPlot,a=t.xaxis,o=t.yaxis;a2.makeTraceGroups(n,r,"trace boxes").each(function(s){var u=LT.select(this),l=s[0],f=l.t,c=l.trace;if(f.wdPos=f.bdPos*c.whiskerwidth,c.visible!==!0||f.empty){u.remove();return}var h,d;c.orientation==="h"?(h=o,d=a):(h=a,d=o),H1e(u,{pos:h,val:d},c,f,i),W1e(u,{x:a,y:o},c,f),j1e(u,{pos:h,val:d},c,f)})}function H1e(e,t,r,n,i){var a=r.orientation==="h",o=t.val,s=t.pos,u=!!s.rangebreaks,l=n.bPos,f=n.wdPos||0,c=n.bPosPxOffset||0,h=r.whiskerwidth||0,d=r.showwhiskers!==!1,p=r.notched||!1,_=p?1-2*r.notchwidth:1,b,v;Array.isArray(n.bdPos)?(b=n.bdPos[0],v=n.bdPos[1]):(b=n.bdPos,v=n.bdPos);var k=e.selectAll("path.box").data(r.type!=="violin"||r.box.visible?a2.identity:[]);k.enter().append("path").style("vector-effect",i?"none":"non-scaling-stroke").attr("class","box"),k.exit().remove(),k.each(function(E){if(E.empty)return LT.select(this).attr("d","M0,0Z");var A=s.c2l(E.pos+l,!0),L=s.l2p(A-b)+c,x=s.l2p(A+v)+c,C=u?(L+x)/2:s.l2p(A)+c,M=r.whiskerwidth,m=u?L*M+(1-M)*C:s.l2p(A-f)+c,P=u?x*M+(1-M)*C:s.l2p(A+f)+c,T=s.l2p(A-b*_)+c,B=s.l2p(A+v*_)+c,F=r.sizemode==="sd",U=o.c2p(F?E.mean-E.sd:E.q1,!0),G=F?o.c2p(E.mean+E.sd,!0):o.c2p(E.q3,!0),j=a2.constrain(F?o.c2p(E.mean,!0):o.c2p(E.med,!0),Math.min(U,G)+1,Math.max(U,G)-1),W=E.lf===void 0||r.boxpoints===!1||F,N=o.c2p(W?E.min:E.lf,!0),H=o.c2p(W?E.max:E.uf,!0),re=o.c2p(E.ln,!0),ae=o.c2p(E.un,!0);a?LT.select(this).attr("d","M"+j+","+T+"V"+B+"M"+U+","+L+"V"+x+(p?"H"+re+"L"+j+","+B+"L"+ae+","+x:"")+"H"+G+"V"+L+(p?"H"+ae+"L"+j+","+T+"L"+re+","+L:"")+"Z"+(d?"M"+U+","+C+"H"+N+"M"+G+","+C+"H"+H+(h===0?"":"M"+N+","+m+"V"+P+"M"+H+","+m+"V"+P):"")):LT.select(this).attr("d","M"+T+","+j+"H"+B+"M"+L+","+U+"H"+x+(p?"V"+re+"L"+B+","+j+"L"+x+","+ae:"")+"V"+G+"H"+L+(p?"V"+ae+"L"+T+","+j+"L"+L+","+re:"")+"Z"+(d?"M"+C+","+U+"V"+N+"M"+C+","+G+"V"+H+(h===0?"":"M"+m+","+N+"H"+P+"M"+m+","+H+"H"+P):""))})}function W1e(e,t,r,n){var i=t.x,a=t.y,o=n.bdPos,s=n.bPos,u=r.boxpoints||r.points;a2.seedPseudoRandom();var l=function(h){return h.forEach(function(d){d.t=n,d.trace=r}),h},f=e.selectAll("g.points").data(u?l:[]);f.enter().append("g").attr("class","points"),f.exit().remove();var c=f.selectAll("path").data(function(h){var d,p=h.pts2,_=Math.max((h.max-h.min)/10,h.q3-h.q1),b=_*1e-9,v=_*mxt,k=[],E=0,A;if(r.jitter){if(_===0)for(E=1,k=new Array(p.length),d=0;dh.lo&&(P.so=!0)}return p});c.enter().append("path").classed("point",!0),c.exit().remove(),c.call(vxt.translatePoints,i,a)}function j1e(e,t,r,n){var i=t.val,a=t.pos,o=!!a.rangebreaks,s=n.bPos,u=n.bPosPxOffset||0,l=r.boxmean||(r.meanline||{}).visible,f,c;Array.isArray(n.bdPos)?(f=n.bdPos[0],c=n.bdPos[1]):(f=n.bdPos,c=n.bdPos);var h=e.selectAll("path.mean").data(r.type==="box"&&r.boxmean||r.type==="violin"&&r.box.visible&&r.meanline.visible?a2.identity:[]);h.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),h.exit().remove(),h.each(function(d){var p=a.c2l(d.pos+s,!0),_=a.l2p(p-f)+u,b=a.l2p(p+c)+u,v=o?(_+b)/2:a.l2p(p)+u,k=i.c2p(d.mean,!0),E=i.c2p(d.mean-d.sd,!0),A=i.c2p(d.mean+d.sd,!0);r.orientation==="h"?LT.select(this).attr("d","M"+k+","+_+"V"+b+(l==="sd"?"m0,0L"+E+","+v+"L"+k+","+_+"L"+A+","+v+"Z":"")):LT.select(this).attr("d","M"+_+","+k+"H"+b+(l==="sd"?"m0,0L"+v+","+E+"L"+_+","+k+"L"+v+","+A+"Z":""))})}X1e.exports={plot:yxt,plotBoxAndWhiskers:H1e,plotPoints:W1e,plotBoxMean:j1e}});var $I=Ae((Ffr,Z1e)=>{"use strict";var HV=Jl(),WV=jl(),jV=Mu();function gxt(e,t,r){var n=r||HV.select(e).selectAll("g.trace.boxes");n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=HV.select(this),o=i[0].trace,s=o.line.width;function u(c,h,d,p){c.style("stroke-width",h+"px").call(WV.stroke,d).call(WV.fill,p)}var l=a.selectAll("path.box");if(o.type==="candlestick")l.each(function(c){if(!c.empty){var h=HV.select(this),d=o[c.dir];u(h,d.line.width,d.line.color,d.fillcolor),h.style("opacity",o.selectedpoints&&!c.selected?.3:1)}});else{u(l,s,o.line.color,o.fillcolor),a.selectAll("path.mean").style({"stroke-width":s,"stroke-dasharray":2*s+"px,"+s+"px"}).call(WV.stroke,o.line.color);var f=a.selectAll("path.point");jV.pointStyle(f,o,e)}})}function _xt(e,t,r){var n=t[0].trace,i=r.selectAll("path.point");n.selectedpoints?jV.selectedPointStyle(i,n):jV.pointStyle(i,n,e)}Z1e.exports={style:gxt,styleOnSelect:_xt}});var ZV=Ae((Bfr,$1e)=>{"use strict";var xxt=wu(),XV=ei(),A_=Xc(),Y1e=jl(),bxt=XV.fillText;function wxt(e,t,r,n){var i=e.cd,a=i[0].trace,o=a.hoveron,s=[],u;return o.indexOf("boxes")!==-1&&(s=s.concat(K1e(e,t,r,n))),o.indexOf("points")!==-1&&(u=J1e(e,t,r)),n==="closest"?u?[u]:s:(u&&s.push(u),s)}function K1e(e,t,r,n){var i=e.cd,a=e.xa,o=e.ya,s=i[0].trace,u=i[0].t,l=s.type==="violin",f,c,h,d,p,_,b,v,k,E,A,L=u.bdPos,x,C,M=u.wHover,m=function(De){return h.c2l(De.pos)+u.bPos-h.c2l(_)};l&&s.side!=="both"?(s.side==="positive"&&(k=function(De){var ye=m(De);return A_.inbox(ye,ye+M,E)},x=L,C=0),s.side==="negative"&&(k=function(De){var ye=m(De);return A_.inbox(ye-M,ye,E)},x=0,C=L)):(k=function(De){var ye=m(De);return A_.inbox(ye-M,ye+M,E)},x=C=L);var P;l?P=function(De){return A_.inbox(De.span[0]-p,De.span[1]-p,E)}:P=function(De){return A_.inbox(De.min-p,De.max-p,E)},s.orientation==="h"?(p=t,_=r,b=P,v=k,f="y",h=o,c="x",d=a):(p=r,_=t,b=k,v=P,f="x",h=a,c="y",d=o);var T=Math.min(1,L/Math.abs(h.r2c(h.range[1])-h.r2c(h.range[0])));E=e.maxHoverDistance-T,A=e.maxSpikeDistance-T;function B(De){return(b(De)+v(De))/2}var F=A_.getDistanceFunction(n,b,v,B);if(A_.getClosest(i,F,e),e.index===!1)return[];var U=i[e.index],G=s.line.color,j=(s.marker||{}).color;Y1e.opacity(G)&&s.line.width?e.color=G:Y1e.opacity(j)&&s.boxpoints?e.color=j:e.color=s.fillcolor,e[f+"0"]=h.c2p(U.pos+u.bPos-C,!0),e[f+"1"]=h.c2p(U.pos+u.bPos+x,!0),e[f+"LabelVal"]=U.orig_p!==void 0?U.orig_p:U.pos;var W=f+"Spike";e.spikeDistance=B(U)*A/E,e[W]=h.c2p(U.pos,!0);var N=s.boxmean||s.sizemode==="sd"||(s.meanline||{}).visible,H=s.boxpoints||s.points,re=H&&N?["max","uf","q3","med","mean","q1","lf","min"]:H&&!N?["max","uf","q3","med","q1","lf","min"]:!H&&N?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],ae=d.range[1]{"use strict";Q1e.exports=function(t,r){return r.hoverOnBox&&(t.hoverOnBox=r.hoverOnBox),"xVal"in r&&(t.x=r.xVal),"yVal"in r&&(t.y=r.yVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var YV=Ae((qfr,t_e)=>{"use strict";t_e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,u;if(r===!1)for(s=0;s{"use strict";r_e.exports={attributes:xE(),layoutAttributes:bE(),supplyDefaults:TE().supplyDefaults,crossTraceDefaults:TE().crossTraceDefaults,supplyLayoutDefaults:ZI().supplyLayoutDefaults,calc:GV(),crossTraceCalc:KI().crossTraceCalc,plot:JI().plot,style:$I().style,styleOnSelect:$I().styleOnSelect,hoverPoints:ZV().hoverPoints,eventData:e_e(),selectPoints:YV(),moduleType:"trace",name:"box",basePlotModule:Ah(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{}}});var a_e=Ae((Ufr,n_e)=>{"use strict";n_e.exports=i_e()});var PT=Ae((Vfr,s_e)=>{"use strict";var Txt=nc(),{extendFlat:Pv}=Su(),Axt=Gf(),{axisHoverFormat:KV}=jc(),Sxt=gc(),{hovertemplateAttrs:Mxt,templatefallbackAttrs:o_e,texttemplateAttrs:Ext}=Ff(),n0=Zc();s_e.exports=Pv({z:{valType:"data_array",editType:"calc"},x:Pv({},n0.x,{impliedEdits:{xtype:"array"}}),x0:Pv({},n0.x0,{impliedEdits:{xtype:"scaled"}}),dx:Pv({},n0.dx,{impliedEdits:{xtype:"scaled"}}),y:Pv({},n0.y,{impliedEdits:{ytype:"array"}}),y0:Pv({},n0.y0,{impliedEdits:{ytype:"scaled"}}),dy:Pv({},n0.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:Pv({},n0.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:Pv({},n0.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:Pv({},n0.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:Pv({},n0.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:Pv({},n0.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:Pv({},n0.yperiodalignment,{impliedEdits:{ytype:"scaled"}}),text:{valType:"data_array",editType:"calc"},hovertext:{valType:"data_array",editType:"calc"},transpose:{valType:"boolean",dflt:!1,editType:"calc"},xtype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},ytype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},zsmooth:{valType:"enumerated",values:["fast","best",!1],dflt:!1,editType:"calc"},hoverongaps:{valType:"boolean",dflt:!0,editType:"none"},connectgaps:{valType:"boolean",editType:"calc"},xgap:{valType:"number",dflt:0,min:0,editType:"plot"},ygap:{valType:"number",dflt:0,min:0,editType:"plot"},xhoverformat:KV("x"),yhoverformat:KV("y"),zhoverformat:KV("z",1),hovertemplate:Mxt(),hovertemplatefallback:o_e(),texttemplate:Ext({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),texttemplatefallback:o_e({editType:"plot"}),textfont:Sxt({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:Pv({},Axt.showlegend,{dflt:!1}),zorder:n0.zorder},Txt("",{cLetter:"z",autoColorDflt:!1}))});var eR=Ae((Gfr,u_e)=>{"use strict";var kxt=ku(),QI=ei(),Cxt=$l();u_e.exports=function(t,r,n,i,a,o){var s=n("z");a=a||"x",o=o||"y";var u,l;if(s===void 0||!s.length)return 0;if(QI.isArray1D(s)){u=n(a),l=n(o);var f=QI.minRowLength(u),c=QI.minRowLength(l);if(f===0||c===0)return 0;r._length=Math.min(f,c,s.length)}else{if(u=l_e(a,n),l=l_e(o,n),!Lxt(s))return 0;n("transpose"),r._length=null}var h=Cxt.getComponentMethod("calendars","handleTraceDefaults");return h(t,r,[a,o],i),!0};function l_e(e,t){var r=t(e),n=r?t(e+"type","array"):"scaled";return n==="scaled"&&(t(e+"0"),t("d"+e)),r}function Lxt(e){for(var t=!0,r=!1,n=!1,i,a=0;a0&&(r=!0);for(var o=0;o{"use strict";var f_e=ei();c_e.exports=function(t,r){t("texttemplate"),t("texttemplatefallback");var n=f_e.extendFlat({},r.font,{color:"auto",size:"auto"});f_e.coerceFont(t,"textfont",n)}});var JV=Ae((Wfr,h_e)=>{"use strict";h_e.exports=function(t,r,n){var i=n("zsmooth");i===!1&&(n("xgap"),n("ygap")),n("zhoverformat")}});var v_e=Ae((jfr,p_e)=>{"use strict";var d_e=ei(),Pxt=eR(),zxt=AE(),Ixt=zm(),Rxt=JV(),Dxt=rd(),Fxt=PT();p_e.exports=function(t,r,n,i){function a(s,u){return d_e.coerce(t,r,Fxt,s,u)}var o=Pxt(t,r,a,i);if(!o){r.visible=!1;return}Ixt(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),zxt(a,i),Rxt(t,r,a,i),a("hoverongaps"),a("connectgaps",d_e.isArray1D(r.z)&&r.zsmooth!==!1),Dxt(t,r,i,a,{prefix:"",cLetter:"z"}),a("zorder")}});var $V=Ae((Xfr,m_e)=>{"use strict";var zT=ku();m_e.exports={count:function(e,t,r){return r[e]++,1},sum:function(e,t,r,n){var i=n[t];return zT(i)?(i=Number(i),r[e]+=i,i):0},avg:function(e,t,r,n,i){var a=n[t];return zT(a)&&(a=Number(a),r[e]+=a,i[e]++),0},min:function(e,t,r,n){var i=n[t];if(zT(i))if(i=Number(i),zT(r[e])){if(r[e]>i){var a=i-r[e];return r[e]=i,a}}else return r[e]=i,i;return 0},max:function(e,t,r,n){var i=n[t];if(zT(i))if(i=Number(i),zT(r[e])){if(r[e]{"use strict";y_e.exports={percent:function(e,t){for(var r=e.length,n=100/t,i=0;i{"use strict";g_e.exports=function(t,r){for(var n=t.length,i=0,a=0;a{"use strict";var IT=rf(),o2=IT.ONEAVGYEAR,__e=IT.ONEAVGMONTH,rR=IT.ONEDAY,x_e=IT.ONEHOUR,b_e=IT.ONEMIN,w_e=IT.ONESEC,T_e=wu().tickIncrement;M_e.exports=function(t,r,n,i,a){var o=-1.1*r,s=-.1*r,u=t-s,l=n[0],f=n[1],c=Math.min(tR(l+s,l+u,i,a),tR(f+s,f+u,i,a)),h=Math.min(tR(l+o,l+s,i,a),tR(f+o,f+s,i,a)),d,p;if(c>h&&hrR){var _=d===o2?1:6,b=d===o2?"M12":"M1";return function(v,k){var E=i.c2d(v,o2,a),A=E.indexOf("-",_);A>0&&(E=E.slice(0,A));var L=i.d2c(E,0,a);if(Lw_e?e>rR?e>o2*1.1?o2:e>__e*1.1?__e:rR:e>x_e?x_e:e>b_e?b_e:w_e:Math.pow(10,Math.floor(Math.log(e)/Math.LN10))}function Bxt(e,t,r,n,i,a){if(n&&e>rR){var o=S_e(t,i,a),s=S_e(r,i,a),u=e===o2?0:1;return o[u]!==s[u]}return Math.floor(r/e)-Math.floor(t/e)>.1}function S_e(e,t,r){var n=t.c2d(e,o2,r).split("-");return n[0]===""&&(n.unshift(),n[0]="-"+n[0]),n}});var nG=Ae((Jfr,P_e)=>{"use strict";var rG=ku(),Hp=ei(),E_e=$l(),G0=wu(),{hasColorscale:k_e}=yp(),C_e=gp(),Oxt=mE(),L_e=$V(),qxt=QV(),Nxt=eG(),Uxt=tG();function Vxt(e,t){var r=[],n=[],i=t.orientation==="h",a=G0.getFromId(e,i?t.yaxis:t.xaxis),o=i?"y":"x",s={x:"y",y:"x"}[o],u=t[o+"calendar"],l=t.cumulative,f,c=iG(e,t,a,o),h=c[0],d=c[1],p=typeof h.size=="string",_=[],b=p?_:h,v=[],k=[],E=[],A=0,L=t.histnorm,x=t.histfunc,C=L.indexOf("density")!==-1,M,m,P;l.enabled&&C&&(L=L.replace(/ ?density$/,""),C=!1);var T=x==="max"||x==="min",B=T?null:0,F=L_e.count,U=qxt[L],G=!1,j=function(ye){return a.r2c(ye,0,u)},W;for(Hp.isArrayOrTypedArray(t[s])&&x!=="count"&&(W=t[s],G=x==="avg",F=L_e[x]),f=j(h.start),m=j(h.end)+(f-G0.tickIncrement(f,h.size,!1,u))/1e6;f=0&&P=Me;f--)if(n[f]){Ue=f;break}for(f=Me;f<=Ue;f++)if(rG(r[f])&&rG(n[f])){var De={p:r[f],s:n[f],b:0};l.enabled||(De.pts=E[f],ae?De.ph0=De.ph1=E[f].length?d[E[f][0]]:r[f]:(t._computePh=!0,De.ph0=te(_[f]),De.ph1=te(_[f+1],!0))),Ee.push(De)}return Ee.length===1&&(Ee[0].width1=G0.tickIncrement(Ee[0].p,h.size,!1,u)-Ee[0].p),k_e(t,"marker")&&C_e(e,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),k_e(t,"marker.line")&&C_e(e,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}),Oxt(Ee,t),Hp.isArrayOrTypedArray(t.selectedpoints)&&Hp.tagSelected(Ee,t,Ce),Ee}function iG(e,t,r,n,i){var a=n+"bins",o=e._fullLayout,s=t["_"+n+"bingroup"],u=o._histogramBinOpts[s],l=o.barmode==="overlay",f,c,h,d,p,_,b,v=function(de){return r.r2c(de,0,d)},k=function(de){return r.c2r(de,0,d)},E=r.type==="date"?function(de){return de||de===0?Hp.cleanDate(de,null,d):null}:function(de){return rG(de)?Number(de):null};function A(de,te,ke){te[de+"Found"]?(te[de]=E(te[de]),te[de]===null&&(te[de]=ke[de])):(_[de]=te[de]=ke[de],Hp.nestedProperty(c[0],a+"."+de).set(ke[de]))}if(t["_"+n+"autoBinFinished"])delete t["_"+n+"autoBinFinished"];else{c=u.traces;var L=[],x=!0,C=!1,M=!1;for(f=0;fr.r2l(W)&&(H=G0.tickIncrement(H,u.size,!0,d)),F.start=r.l2r(H),j||Hp.nestedProperty(t,a+".start").set(F.start)}var re=u.end,ae=r.r2l(B.end),be=ae!==void 0;if((u.endFound||be)&&ae!==r.r2l(re)){var ze=be?ae:Hp.aggNums(Math.max,null,p);F.end=r.l2r(ze),be||Hp.nestedProperty(t,a+".start").set(F.end)}var Ce="autobin"+n;return t._input[Ce]===!1&&(t._input[a]=Hp.extendFlat({},t[a]||{}),delete t._input[Ce],delete t[Ce]),[F,p]}function Gxt(e,t,r,n,i){var a=e._fullLayout,o=Hxt(e,t),s=!1,u=1/0,l=[t],f,c,h;for(f=0;f=0;n--)s(n);else if(t==="increasing"){for(n=1;n=0;n--)e[n]+=e[n+1];r==="exclude"&&(e.push(0),e.shift())}}P_e.exports={calc:Vxt,calcAllAutoBins:iG}});var q_e=Ae(($fr,O_e)=>{"use strict";var z_e=ei(),RT=wu(),I_e=$V(),jxt=QV(),Xxt=eG(),Zxt=tG(),R_e=nG().calcAllAutoBins;O_e.exports=function(t,r){var n=RT.getFromId(t,r.xaxis),i=RT.getFromId(t,r.yaxis),a=r.xcalendar,o=r.ycalendar,s=function(He){return n.r2c(He,0,a)},u=function(He){return i.r2c(He,0,o)},l=function(He){return n.c2r(He,0,a)},f=function(He){return i.c2r(He,0,o)},c,h,d,p,_=R_e(t,r,n,"x"),b=_[0],v=_[1],k=R_e(t,r,i,"y"),E=k[0],A=k[1],L=r._length;v.length>L&&v.splice(L,v.length-L),A.length>L&&A.splice(L,A.length-L);var x=[],C=[],M=[],m=typeof b.size=="string",P=typeof E.size=="string",T=[],B=[],F=m?T:b,U=P?B:E,G=0,j=[],W=[],N=r.histnorm,H=r.histfunc,re=N.indexOf("density")!==-1,ae=H==="max"||H==="min",be=ae?null:0,ze=I_e.count,Ce=jxt[N],de=!1,te=[],ke=[],Ee="z"in r?r.z:"marker"in r&&Array.isArray(r.marker.color)?r.marker.color:"";Ee&&H!=="count"&&(de=H==="avg",ze=I_e[H]);var Me=b.size,Ue=s(b.start),De=s(b.end)+(Ue-RT.tickIncrement(Ue,Me,!1,a))/1e6;for(c=Ue;c=0&&d=0&&p{"use strict";var zy=ei(),N_e=rf().BADNUM,U_e=Rm();V_e.exports=function(t,r,n,i,a,o){var s=t._length,u=r.makeCalcdata(t,i),l=n.makeCalcdata(t,a);u=U_e(t,r,i,u).vals,l=U_e(t,n,a,l).vals;var f=t.text,c=f!==void 0&&zy.isArray1D(f),h=t.hovertext,d=h!==void 0&&zy.isArray1D(h),p,_,b=zy.distinctVals(u),v=b.vals,k=zy.distinctVals(l),E=k.vals,A=[],L,x,C=E.length,M=v.length;for(p=0;p{"use strict";var Yxt=ku(),Kxt=ei(),nR=rf().BADNUM;G_e.exports=function(t,r,n,i){var a,o,s,u,l,f;function c(v){if(Yxt(v))return+v}if(r&&r.transpose){for(a=0,l=0;l{"use strict";var Jxt=ei(),H_e=.01,$xt=[[-1,0],[1,0],[0,-1],[0,1]];function Qxt(e){return .5-.25*Math.min(1,e*.5)}j_e.exports=function(t,r){var n=1,i;for(W_e(t,r),i=0;iH_e;i++)n=W_e(t,r,Qxt(n));return n>H_e&&Jxt.log("interp2d didn't converge quickly",n),t};function W_e(e,t,r){var n=0,i,a,o,s,u,l,f,c,h,d,p,_,b;for(s=0;s_&&(n=Math.max(n,Math.abs(e[a][o]-p)/(b-_))))}return n}});var sR=Ae((rcr,X_e)=>{"use strict";var ebt=ei().maxRowLength;X_e.exports=function(t){var r=[],n={},i=[],a=t[0],o=[],s=[0,0,0],u=ebt(t),l,f,c,h,d,p,_,b;for(f=0;f=0;d--)h=i[d],f=h[0],c=h[1],p=((n[[f-1,c]]||s)[2]+(n[[f+1,c]]||s)[2]+(n[[f,c-1]]||s)[2]+(n[[f,c+1]]||s)[2])/20,p&&(_[h]=[f,c,p],i.splice(d,1),b=!0);if(!b)throw"findEmpties iterated with no new neighbors";for(h in _)n[h]=_[h],r.push(_[h])}return r.sort(function(v,k){return k[2]-v[2]})}});var aG=Ae((icr,K_e)=>{"use strict";var Z_e=$l(),Y_e=ei().isArrayOrTypedArray;K_e.exports=function(t,r,n,i,a,o){var s=[],u=Z_e.traceIs(t,"contour"),l=Z_e.traceIs(t,"histogram"),f,c,h,d=Y_e(r)&&r.length>1;if(d&&!l&&o.type!=="category"){var p=r.length;if(p<=a){if(u)s=Array.from(r).slice(0,a);else if(a===1)o.type==="log"?s=[.5*r[0],2*r[0]]:s=[r[0]-.5,r[0]+.5];else if(o.type==="log"){for(s=[Math.pow(r[0],1.5)/Math.pow(r[1],.5)],h=1;h{"use strict";var J_e=$l(),oG=ei(),lR=wu(),$_e=Rm(),tbt=q_e(),rbt=gp(),ibt=iR(),nbt=aR(),abt=oR(),obt=sR(),uR=aG(),sG=rf().BADNUM;exe.exports=function(t,r){var n=lR.getFromId(t,r.xaxis||"x"),i=lR.getFromId(t,r.yaxis||"y"),a=J_e.traceIs(r,"contour"),o=J_e.traceIs(r,"histogram"),s=a?"best":r.zsmooth,u,l,f,c,h,d,p,_,b,v,k;if(n._minDtick=0,i._minDtick=0,o)k=tbt(t,r),c=k.orig_x,u=k.x,l=k.x0,f=k.dx,_=k.orig_y,h=k.y,d=k.y0,p=k.dy,b=k.z;else{var E=r.z;oG.isArray1D(E)?(ibt(r,n,i,"x","y",["z"]),u=r._x,h=r._y,E=r._z):(c=r.x?n.makeCalcdata(r,"x"):[],_=r.y?i.makeCalcdata(r,"y"):[],u=$_e(r,n,"x",c).vals,h=$_e(r,i,"y",_).vals,r._x=u,r._y=h),l=r.x0,f=r.dx,d=r.y0,p=r.dy,b=nbt(E,r,n,i)}(n.rangebreaks||i.rangebreaks)&&(b=sbt(u,h,b),o||(u=Q_e(u),h=Q_e(h),r._x=u,r._y=h)),!o&&(a||r.connectgaps)&&(r._emptypoints=obt(b),abt(b,r._emptypoints));function A(F){s=r._input.zsmooth=r.zsmooth=!1,oG.warn('cannot use zsmooth: "fast": '+F)}function L(F){if(F.length>1){var U=(F[F.length-1]-F[0])/(F.length-1),G=Math.abs(U/100);for(v=0;vG)return!1}return!0}r._islinear=!1,n.type==="log"||i.type==="log"?s==="fast"&&A("log axis found"):L(u)?L(h)?r._islinear=!0:s==="fast"&&A("y scale is not linear"):s==="fast"&&A("x scale is not linear");var x=oG.maxRowLength(b),C=r.xtype==="scaled"?"":u,M=uR(r,C,l,f,x,n),m=r.ytype==="scaled"?"":h,P=uR(r,m,d,p,b.length,i);r._extremes[n._id]=lR.findExtremes(n,M),r._extremes[i._id]=lR.findExtremes(i,P);var T={x:M,y:P,z:b,text:r._text||r.text,hovertext:r._hovertext||r.hovertext};if(r.xperiodalignment&&c&&(T.orig_x=c),r.yperiodalignment&&_&&(T.orig_y=_),C&&C.length===M.length-1&&(T.xCenter=C),m&&m.length===P.length-1&&(T.yCenter=m),o&&(T.xRanges=k.xRanges,T.yRanges=k.yRanges,T.pts=k.pts),a||rbt(t,r,{vals:b,cLetter:"z"}),a&&r.contours&&r.contours.coloring==="heatmap"){var B={type:r.type==="contour"?"heatmap":"histogram2d",xcalendar:r.xcalendar,ycalendar:r.ycalendar};T.xfill=uR(B,C,l,f,x,n),T.yfill=uR(B,m,d,p,b.length,i)}return[T]};function Q_e(e){for(var t=[],r=e.length,n=0;n{"use strict";cR.CSS_DECLARATIONS=[["image-rendering","optimizeSpeed"],["image-rendering","-moz-crisp-edges"],["image-rendering","-o-crisp-edges"],["image-rendering","-webkit-optimize-contrast"],["image-rendering","optimize-contrast"],["image-rendering","crisp-edges"],["image-rendering","pixelated"]];cR.STYLE=cR.CSS_DECLARATIONS.map(function(e){return e.join(": ")+"; "}).join("")});var uG=Ae((ocr,rxe)=>{"use strict";var txe=hR(),lbt=Mu(),lG=ei(),DT=null;function ubt(){if(DT!==null)return DT;DT=!1;var e=lG.isSafari()||lG.isMacWKWebView()||lG.isIOS();if(window.navigator.userAgent&&!e){var t=Array.from(txe.CSS_DECLARATIONS).reverse(),r=window.CSS&&window.CSS.supports||window.supportsCSS;if(typeof r=="function")DT=t.some(function(o){return r.apply(null,o)});else{var n=lbt.tester.append("image").attr("style",txe.STYLE),i=window.getComputedStyle(n.node()),a=i.imageRendering;DT=t.some(function(o){var s=o[1];return a===s||a===s.toLowerCase()}),n.remove()}}return DT}rxe.exports=ubt});var dR=Ae((scr,cxe)=>{"use strict";var ixe=Jl(),fbt=cd(),cbt=$l(),hbt=Mu(),dbt=wu(),H0=ei(),nxe=Xf(),pbt=nI(),vbt=jl(),mbt=_c().extractOpts,ybt=_c().makeColorScaleFuncFromTrace,gbt=jv(),_bt=td(),fG=_bt.LINE_SPACING,xbt=uG(),bbt=hR().STYLE,uxe="heatmap-label";function fxe(e){return e.selectAll("g."+uxe)}function axe(e){fxe(e).remove()}cxe.exports=function(e,t,r,n){var i=t.xaxis,a=t.yaxis;H0.makeTraceGroups(n,r,"hm").each(function(o){var s=ixe.select(this),u=o[0],l=u.trace,f=l.xgap||0,c=l.ygap||0,h=u.z,d=u.x,p=u.y,_=u.xCenter,b=u.yCenter,v=cbt.traceIs(l,"contour"),k=v?"best":l.zsmooth,E=h.length,A=H0.maxRowLength(h),L=!1,x=!1,C,M,m,P,T,B,F,U;for(B=0;C===void 0&&B0;)M=i.c2p(d[B]),B--;for(M0;)T=a.c2p(p[B]),B--;T=i._length||M<=0||P>=a._length||T<=0;if(H){var re=s.selectAll("image").data([]);re.exit().remove(),axe(s);return}var ae,be;G==="fast"?(ae=A,be=E):(ae=W,be=N);var ze=document.createElement("canvas");ze.width=ae,ze.height=be;var Ce=ze.getContext("2d",{willReadFrequently:!0}),de=ybt(l,{noNumericCheck:!0,returnArray:!0}),te,ke;G==="fast"?(te=L?function(ki){return A-1-ki}:H0.identity,ke=x?function(ki){return E-1-ki}:H0.identity):(te=function(ki){return H0.constrain(Math.round(i.c2p(d[ki])-C),0,W)},ke=function(ki){return H0.constrain(Math.round(a.c2p(p[ki])-P),0,N)});var Ee=ke(0),Me=[Ee,Ee],Ue=L?0:1,De=x?0:1,ye=0,qe=0,ce=0,Je=0,nt,gt,Nt,at,Ke;function Ct(ki,Vi){if(ki!==void 0){var ti=de(ki);return ti[0]=Math.round(ti[0]),ti[1]=Math.round(ti[1]),ti[2]=Math.round(ti[2]),ye+=Vi,qe+=ti[0]*Vi,ce+=ti[1]*Vi,Je+=ti[2]*Vi,ti}return[0,0,0,0]}function wt(ki,Vi,ti,tn){var Yr=ki[ti.bin0];if(Yr===void 0)return Ct(void 0,1);var oi=ki[ti.bin1],Fi=Vi[ti.bin0],an=Vi[ti.bin1],nn=oi-Yr||0,Ri=Fi-Yr||0,Ii;return oi===void 0?an===void 0?Ii=0:Fi===void 0?Ii=2*(an-Yr):Ii=(2*an-Fi-Yr)*2/3:an===void 0?Fi===void 0?Ii=0:Ii=(2*Yr-oi-Fi)*2/3:Fi===void 0?Ii=(2*an-oi-Yr)*2/3:Ii=an+Yr-oi-Fi,Ct(Yr+ti.frac*nn+tn.frac*(Ri+ti.frac*Ii))}if(G!=="default"){var St=0,Dt;try{Dt=new Uint8Array(ae*be*4)}catch(ki){Dt=new Array(ae*be*4)}if(G==="smooth"){var Zt=_||d,Et=b||p,Te=new Array(Zt.length),ot=new Array(Et.length),Tt=new Array(W),vt=_?sxe:oxe,Ye=b?sxe:oxe,He,it,et;for(B=0;Brr||rr>a._length))for(F=pe;FBr||Br>i._length)){var Er=pbt({x:Gr,y:zt},l,e._fullLayout);Er.x=Gr,Er.y=zt;var Rr=u.z[B][F];Rr===void 0?(Er.z="",Er.zLabel=""):(Er.z=Rr,Er.zLabel=dbt.tickText(Ie,Rr,"hover").text);var pi=u.text&&u.text[B]&&u.text[B][F];(pi===void 0||pi===!1)&&(pi=""),Er.text=pi;var Di=H0.texttemplateString({data:[Er,l._meta],fallback:l.texttemplatefallback,labels:Er,locale:e._fullLayout._d3locale,template:xe});if(Di){var ni=Di.split("
"),$i=ni.length,Qi=0;for(U=0;U<$i;U++)Qi=Math.max(Qi,ni[U].length);Pt.push({l:$i,c:Qi,t:Di,x:Br,y:rr,z:Rr})}}}}var si=l.textfont,Ai=si.size,Ni=e._fullLayout.font.size;if(!Ai||Ai==="auto"){var Rt=1/0,yt=1/0,Gt=0,Wt=0;for(U=0;U{"use strict";hxe.exports={min:"zmin",max:"zmax"}});var pR=Ae((ucr,dxe)=>{"use strict";var wbt=Jl();dxe.exports=function(t){wbt.select(t).selectAll(".hm image").style("opacity",function(r){return r.trace.opacity})}});var mR=Ae((fcr,vxe)=>{"use strict";var pxe=Xc(),SE=ei(),vR=SE.isArrayOrTypedArray,Tbt=wu(),Abt=_c().extractOpts;vxe.exports=function(t,r,n,i,a){a||(a={});var o=a.isContour,s=t.cd[0],u=s.trace,l=t.xa,f=t.ya,c=s.x,h=s.y,d=s.z,p=s.xCenter,_=s.yCenter,b=s.zmask,v=u.zhoverformat,k=c,E=h,A,L,x,C;if(t.index!==!1){try{x=Math.round(t.index[1]),C=Math.round(t.index[0])}catch(re){SE.error("Error hovering on heatmap, pointNumber must be [row,col], found:",t.index);return}if(x<0||x>=d[0].length||C<0||C>d.length)return}else{if(pxe.inbox(r-c[0],r-c[c.length-1],0)>0||pxe.inbox(n-h[0],n-h[h.length-1],0)>0)return;if(o){var M;for(k=[2*c[0]-c[1]],M=1;M{"use strict";mxe.exports={attributes:PT(),supplyDefaults:v_e(),calc:fR(),plot:dR(),colorbar:S_(),style:pR(),hoverPoints:mR(),moduleType:"trace",name:"heatmap",basePlotModule:Ah(),categories:["cartesian","svg","2dMap","showLegend"],meta:{}}});var _xe=Ae((hcr,gxe)=>{"use strict";gxe.exports=yxe()});var cG=Ae((dcr,xxe)=>{"use strict";xxe.exports=function(t,r){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}});var wxe=Ae((pcr,bxe)=>{"use strict";bxe.exports={eventDataKeys:["binNumber"]}});var yR=Ae((vcr,Mxe)=>{"use strict";var zv=Ly(),Txe=jc().axisHoverFormat,{hovertemplateAttrs:Sbt,texttemplateAttrs:Mbt,templatefallbackAttrs:Axe}=Ff(),hG=gc(),Sxe=cG(),Ebt=wxe(),dG=Su().extendFlat;Mxe.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:Txe("x"),yhoverformat:Txe("y"),text:dG({},zv.text,{}),hovertext:dG({},zv.hovertext,{}),orientation:zv.orientation,histfunc:{valType:"enumerated",values:["count","sum","avg","min","max"],dflt:"count",editType:"calc"},histnorm:{valType:"enumerated",values:["","percent","probability","density","probability density"],dflt:"",editType:"calc"},cumulative:{enabled:{valType:"boolean",dflt:!1,editType:"calc"},direction:{valType:"enumerated",values:["increasing","decreasing"],dflt:"increasing",editType:"calc"},currentbin:{valType:"enumerated",values:["include","exclude","half"],dflt:"include",editType:"calc"},editType:"calc"},nbinsx:{valType:"integer",min:0,dflt:0,editType:"calc"},xbins:Sxe("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:Sxe("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:Sbt({},{keys:Ebt.eventDataKeys}),hovertemplatefallback:Axe(),texttemplate:Mbt({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),texttemplatefallback:Axe({editType:"plot"}),textposition:dG({},zv.textposition,{arrayOk:!1}),textfont:hG({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:hG({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:hG({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:zv.insidetextanchor,textangle:zv.textangle,cliponaxis:zv.cliponaxis,constraintext:zv.constraintext,marker:zv.marker,offsetgroup:zv.offsetgroup,alignmentgroup:zv.alignmentgroup,selected:zv.selected,unselected:zv.unselected,zorder:zv.zorder}});var Lxe=Ae((mcr,Cxe)=>{"use strict";var Exe=$l(),ME=ei(),kxe=jl(),kbt=r0().handleText,Cbt=VI(),Lbt=yR();Cxe.exports=function(t,r,n,i){function a(k,E){return ME.coerce(t,r,Lbt,k,E)}var o=a("x"),s=a("y"),u=a("cumulative.enabled");u&&(a("cumulative.direction"),a("cumulative.currentbin")),a("text");var l=a("textposition");kbt(t,r,i,a,l,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat");var f=a("orientation",s&&!o?"h":"v"),c=f==="v"?"x":"y",h=f==="v"?"y":"x",d=o&&s?Math.min(ME.minRowLength(o)&&ME.minRowLength(s)):ME.minRowLength(r[c]||[]);if(!d){r.visible=!1;return}r._length=d;var p=Exe.getComponentMethod("calendars","handleTraceDefaults");p(t,r,["x","y"],i);var _=r[h];_&&a("histfunc"),a("histnorm"),a("autobin"+c),Cbt(t,r,a,n,i),ME.coerceSelectionMarkerOpacity(r,a);var b=(r.marker.line||{}).color,v=Exe.getComponentMethod("errorbars","supplyDefaults");v(t,r,b||kxe.defaultLine,{axis:"y"}),v(t,r,b||kxe.defaultLine,{axis:"x",inherit:"y"}),a("zorder")}});var _R=Ae((ycr,Ixe)=>{"use strict";var EE=ei(),Pbt=Wc(),gR=$l().traceIs,zbt=Hb(),Ibt=r0().validateCornerradius,Pxe=EE.nestedProperty,pG=Nb().getAxisGroup,zxe=[{aStr:{x:"xbins.start",y:"ybins.start"},name:"start"},{aStr:{x:"xbins.end",y:"ybins.end"},name:"end"},{aStr:{x:"xbins.size",y:"ybins.size"},name:"size"},{aStr:{x:"nbinsx",y:"nbinsy"},name:"nbins"}],Rbt=["x","y"];Ixe.exports=function(t,r){var n=r._histogramBinOpts={},i=[],a={},o=[],s,u,l,f,c,h,d;function p(G,j){return EE.coerce(s._input,s,s._module.attributes,G,j)}function _(G){return G.orientation==="v"?"x":"y"}function b(G,j){var W=Pbt.getFromTrace({_fullLayout:r},G,j);return W.type}function v(G,j,W){var N=G.uid+"__"+W;j||(j=N);var H=b(G,W),re=G[W+"calendar"]||"",ae=n[j],be=!0;ae&&(H===ae.axType&&re===ae.calendar?(be=!1,ae.traces.push(G),ae.dirs.push(W)):(j=N,H!==ae.axType&&EE.warn(["Attempted to group the bins of trace",G.index,"set on a","type:"+H,"axis","with bins on","type:"+ae.axType,"axis."].join(" ")),re!==ae.calendar&&EE.warn(["Attempted to group the bins of trace",G.index,"set with a",re,"calendar","with bins",ae.calendar?"on a "+ae.calendar+" calendar":"w/o a set calendar"].join(" ")))),be&&(n[j]={traces:[G],dirs:[W],axType:H,calendar:G[W+"calendar"]||""}),G["_"+W+"bingroup"]=j}for(c=0;c{"use strict";var Dbt=ET().hoverPoints,Fbt=wu().hoverLabelText;Rxe.exports=function(t,r,n,i,a){var o=Dbt(t,r,n,i,a);if(o){t=o[0];var s=t.cd[t.index],u=t.cd[0].trace;if(!u.cumulative.enabled){var l=u.orientation==="h"?"y":"x";t[l+"Label"]=Fbt(t[l+"a"],[s.ph0,s.ph1],u[l+"hoverformat"])}return o}}});var vG=Ae((_cr,Fxe)=>{"use strict";Fxe.exports=function(t,r,n,i,a){if(t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"zLabelVal"in r&&(t.z=r.zLabelVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),!(n.cumulative||{}).enabled){var o=Array.isArray(a)?i[0].pts[a[0]][a[1]]:i[a].pts;t.pointNumbers=o,t.binNumber=t.pointNumber,delete t.pointNumber,delete t.pointIndex;var s;if(n._indexToPoints){s=[];for(var u=0;u{"use strict";Bxe.exports={attributes:yR(),layoutAttributes:UI(),supplyDefaults:Lxe(),crossTraceDefaults:_R(),supplyLayoutDefaults:DV(),calc:nG().calc,crossTraceCalc:Wb().crossTraceCalc,plot:n2().plot,layerName:"barlayer",style:N0().style,styleOnSelect:N0().styleOnSelect,colorbar:ep(),hoverPoints:Dxe(),selectPoints:kT(),eventData:vG(),moduleType:"trace",name:"histogram",basePlotModule:Ah(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}});var Nxe=Ae((bcr,qxe)=>{"use strict";qxe.exports=Oxe()});var bR=Ae((wcr,Gxe)=>{"use strict";var Gm=yR(),Uxe=cG(),xR=PT(),Bbt=Gf(),mG=jc().axisHoverFormat,{hovertemplateAttrs:Obt,texttemplateAttrs:qbt,templatefallbackAttrs:Vxe}=Ff(),Nbt=nc(),kE=Su().extendFlat;Gxe.exports=kE({x:Gm.x,y:Gm.y,z:{valType:"data_array",editType:"calc"},marker:{color:{valType:"data_array",editType:"calc"},editType:"calc"},histnorm:Gm.histnorm,histfunc:Gm.histfunc,nbinsx:Gm.nbinsx,xbins:Uxe("x"),nbinsy:Gm.nbinsy,ybins:Uxe("y"),autobinx:Gm.autobinx,autobiny:Gm.autobiny,bingroup:kE({},Gm.bingroup,{}),xbingroup:kE({},Gm.bingroup,{}),ybingroup:kE({},Gm.bingroup,{}),xgap:xR.xgap,ygap:xR.ygap,zsmooth:xR.zsmooth,xhoverformat:mG("x"),yhoverformat:mG("y"),zhoverformat:mG("z",1),hovertemplate:Obt({},{keys:["z"]}),hovertemplatefallback:Vxe(),texttemplate:qbt({arrayOk:!1,editType:"plot"},{keys:["z"]}),texttemplatefallback:Vxe({editType:"plot"}),textfont:xR.textfont,showlegend:kE({},Bbt.showlegend,{dflt:!1})},Nbt("",{cLetter:"z",autoColorDflt:!1}))});var yG=Ae((Tcr,Wxe)=>{"use strict";var Ubt=$l(),Hxe=ei();Wxe.exports=function(t,r,n,i){var a=n("x"),o=n("y"),s=Hxe.minRowLength(a),u=Hxe.minRowLength(o);if(!s||!u){r.visible=!1;return}r._length=Math.min(s,u);var l=Ubt.getComponentMethod("calendars","handleTraceDefaults");l(t,r,["x","y"],i);var f=n("z")||n("marker.color");f&&n("histfunc"),n("histnorm"),n("autobinx"),n("autobiny")}});var Xxe=Ae((Acr,jxe)=>{"use strict";var Vbt=ei(),Gbt=yG(),Hbt=JV(),Wbt=rd(),jbt=AE(),Xbt=bR();jxe.exports=function(t,r,n,i){function a(o,s){return Vbt.coerce(t,r,Xbt,o,s)}Gbt(t,r,a,i),r.visible!==!1&&(Hbt(t,r,a,i),Wbt(t,r,i,a,{prefix:"",cLetter:"z"}),a("hovertemplate"),a("hovertemplatefallback"),jbt(a,i),a("xhoverformat"),a("yhoverformat"))}});var Kxe=Ae((Scr,Yxe)=>{"use strict";var Zbt=mR(),Zxe=wu().hoverLabelText;Yxe.exports=function(t,r,n,i,a){var o=Zbt(t,r,n,i,a);if(o){t=o[0];var s=t.index,u=s[0],l=s[1],f=t.cd[0],c=f.trace,h=f.xRanges[l],d=f.yRanges[u];return t.xLabel=Zxe(t.xa,[h[0],h[1]],c.xhoverformat),t.yLabel=Zxe(t.ya,[d[0],d[1]],c.yhoverformat),o}}});var $xe=Ae((Mcr,Jxe)=>{"use strict";Jxe.exports={attributes:bR(),supplyDefaults:Xxe(),crossTraceDefaults:_R(),calc:fR(),plot:dR(),layerName:"heatmaplayer",colorbar:S_(),style:pR(),hoverPoints:Kxe(),eventData:vG(),moduleType:"trace",name:"histogram2d",basePlotModule:Ah(),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{}}});var ebe=Ae((Ecr,Qxe)=>{"use strict";Qxe.exports=$xe()});var wR=Ae((kcr,tbe)=>{"use strict";tbe.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}});var CE=Ae((Ccr,abe)=>{"use strict";var Mh=PT(),TR=Zc(),ibe=jc(),gG=ibe.axisHoverFormat,Ybt=ibe.descriptionOnlyNumbers,Kbt=nc(),Jbt=Id().dash,$bt=gc(),FT=Su().extendFlat,nbe=wR(),Qbt=nbe.COMPARISON_OPS2,e2t=nbe.INTERVAL_OPS,rbe=TR.line;abe.exports=FT({z:Mh.z,x:Mh.x,x0:Mh.x0,dx:Mh.dx,y:Mh.y,y0:Mh.y0,dy:Mh.dy,xperiod:Mh.xperiod,yperiod:Mh.yperiod,xperiod0:TR.xperiod0,yperiod0:TR.yperiod0,xperiodalignment:Mh.xperiodalignment,yperiodalignment:Mh.yperiodalignment,text:Mh.text,hovertext:Mh.hovertext,transpose:Mh.transpose,xtype:Mh.xtype,ytype:Mh.ytype,xhoverformat:gG("x"),yhoverformat:gG("y"),zhoverformat:gG("z",1),hovertemplate:Mh.hovertemplate,hovertemplatefallback:Mh.hovertemplatefallback,texttemplate:FT({},Mh.texttemplate,{}),texttemplatefallback:Mh.texttemplatefallback,textfont:FT({},Mh.textfont,{}),hoverongaps:Mh.hoverongaps,connectgaps:FT({},Mh.connectgaps,{}),fillcolor:{valType:"color",editType:"calc"},autocontour:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"contours.start":void 0,"contours.end":void 0,"contours.size":void 0}},ncontours:{valType:"integer",dflt:15,min:1,editType:"calc"},contours:{type:{valType:"enumerated",values:["levels","constraint"],dflt:"levels",editType:"calc"},start:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},end:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},size:{valType:"number",dflt:null,min:0,editType:"plot",impliedEdits:{"^autocontour":!1}},coloring:{valType:"enumerated",values:["fill","heatmap","lines","none"],dflt:"fill",editType:"calc"},showlines:{valType:"boolean",dflt:!0,editType:"plot"},showlabels:{valType:"boolean",dflt:!1,editType:"plot"},labelfont:$bt({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:Ybt("contour label")},operation:{valType:"enumerated",values:[].concat(Qbt).concat(e2t),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:FT({},rbe.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:Jbt,smoothing:FT({},rbe.smoothing,{}),editType:"plot"},zorder:TR.zorder},Kbt("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))});var xG=Ae((Lcr,sbe)=>{"use strict";var Ap=bR(),Iy=CE(),t2t=nc(),_G=jc().axisHoverFormat,obe=Su().extendFlat;sbe.exports=obe({x:Ap.x,y:Ap.y,z:Ap.z,marker:Ap.marker,histnorm:Ap.histnorm,histfunc:Ap.histfunc,nbinsx:Ap.nbinsx,xbins:Ap.xbins,nbinsy:Ap.nbinsy,ybins:Ap.ybins,autobinx:Ap.autobinx,autobiny:Ap.autobiny,bingroup:Ap.bingroup,xbingroup:Ap.xbingroup,ybingroup:Ap.ybingroup,autocontour:Iy.autocontour,ncontours:Iy.ncontours,contours:Iy.contours,line:{color:Iy.line.color,width:obe({},Iy.line.width,{dflt:.5}),dash:Iy.line.dash,smoothing:Iy.line.smoothing,editType:"plot"},xhoverformat:_G("x"),yhoverformat:_G("y"),zhoverformat:_G("z",1),hovertemplate:Ap.hovertemplate,hovertemplatefallback:Ap.hovertemplatefallback,texttemplate:Iy.texttemplate,texttemplatefallback:Iy.texttemplatefallback,textfont:Iy.textfont},t2t("",{cLetter:"z",editTypeOverride:"calc"}))});var AR=Ae((Pcr,lbe)=>{"use strict";lbe.exports=function(t,r,n,i){var a=i("contours.start"),o=i("contours.end"),s=a===!1||o===!1,u=n("contours.size"),l;s?l=r.autocontour=!0:l=n("autocontour",!1),(l||!u)&&n("ncontours")}});var bG=Ae((zcr,ube)=>{"use strict";var r2t=ei();ube.exports=function(t,r,n,i){i||(i={});var a=t("contours.showlabels");if(a){var o=r.font;r2t.coerceFont(t,"contours.labelfont",o,{overrideDflt:{color:n}}),t("contours.labelformat")}i.hasHover!==!1&&t("zhoverformat")}});var SR=Ae((Icr,fbe)=>{"use strict";var i2t=rd(),n2t=bG();fbe.exports=function(t,r,n,i,a){var o=n("contours.coloring"),s,u="";o==="fill"&&(s=n("contours.showlines")),s!==!1&&(o!=="lines"&&(u=n("line.color","#000")),n("line.width",.5),n("line.dash")),o!=="none"&&(t.showlegend!==!0&&(r.showlegend=!1),r._dfltShowLegend=!1,i2t(t,r,i,n,{prefix:"",cLetter:"z"})),n("line.smoothing"),n2t(n,i,u,a)}});var pbe=Ae((Rcr,dbe)=>{"use strict";var cbe=ei(),a2t=yG(),o2t=AR(),s2t=SR(),l2t=AE(),hbe=xG();dbe.exports=function(t,r,n,i){function a(s,u){return cbe.coerce(t,r,hbe,s,u)}function o(s){return cbe.coerce2(t,r,hbe,s)}a2t(t,r,a,i),r.visible!==!1&&(o2t(t,r,a,o),s2t(t,r,a,i),a("xhoverformat"),a("yhoverformat"),a("hovertemplate"),a("hovertemplatefallback"),r.contours&&r.contours.coloring==="heatmap"&&l2t(a,i))}});var AG=Ae((Dcr,mbe)=>{"use strict";var TG=wu(),wG=ei();mbe.exports=function(t,r){var n=t.contours;if(t.autocontour){var i=t.zmin,a=t.zmax;(t.zauto||i===void 0)&&(i=wG.aggNums(Math.min,null,r)),(t.zauto||a===void 0)&&(a=wG.aggNums(Math.max,null,r));var o=vbe(i,a,t.ncontours);n.size=o.dtick,n.start=TG.tickFirst(o),o.range.reverse(),n.end=TG.tickFirst(o),n.start===i&&(n.start+=n.size),n.end===a&&(n.end-=n.size),n.start>n.end&&(n.start=n.end=(n.start+n.end)/2),t._input.contours||(t._input.contours={}),wG.extendFlat(t._input.contours,{start:n.start,end:n.end,size:n.size}),t._input.autocontour=!0}else if(n.type!=="constraint"){var s=n.start,u=n.end,l=t._input.contours;if(s>u&&(n.start=l.start=u,u=n.end=l.end=s,s=n.start),!(n.size>0)){var f;s===u?f=1:f=vbe(s,u,t.ncontours).dtick,l.size=n.size=f}}};function vbe(e,t,r){var n={type:"linear",range:[e,t]};return TG.autoTicks(n,(t-e)/(r||15)),n}});var LE=Ae((Fcr,ybe)=>{"use strict";ybe.exports=function(t){return t.end+t.size/1e6}});var SG=Ae((Bcr,_be)=>{"use strict";var gbe=_c(),u2t=fR(),f2t=AG(),c2t=LE();_be.exports=function(t,r){var n=u2t(t,r),i=n[0].z;f2t(r,i);var a=r.contours,o=gbe.extractOpts(r),s;if(a.coloring==="heatmap"&&o.auto&&r.autocontour===!1){var u=a.start,l=c2t(a),f=a.size||1,c=Math.floor((l-u)/f)+1;isFinite(f)||(f=1,c=1);var h=u-f/2,d=h+c*f;s=[h,d]}else s=i;return gbe.calc(t,r,{vals:s,cLetter:"z"}),n}});var PE=Ae((Ocr,xbe)=>{"use strict";xbe.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}});var MG=Ae((qcr,bbe)=>{"use strict";var MR=PE();bbe.exports=function(t){var r=t[0].z,n=r.length,i=r[0].length,a=n===2||i===2,o,s,u,l,f,c,h,d,p;for(s=0;se?0:1)+(t[0][1]>e?0:2)+(t[1][1]>e?0:4)+(t[1][0]>e?0:8);if(r===5||r===10){var n=(t[0][0]+t[0][1]+t[1][0]+t[1][1])/4;return e>n?r===5?713:1114:r===5?104:208}return r===15?0:r}});var EG=Ae((Ncr,Abe)=>{"use strict";var ER=ei(),BT=PE();Abe.exports=function(t,r,n){var i,a,o,s,u;for(r=r||.01,n=n||.01,o=0;o20?(o=BT.CHOOSESADDLE[o][(s[0]||s[1])<0?0:1],e.crossings[a]=BT.SADDLEREMAINDER[o]):delete e.crossings[a],s=BT.NEWDELTA[o],!s){ER.log("Found bad marching index:",o,t,e.level);break}u.push(Tbe(e,t,s)),t[0]+=s[0],t[1]+=s[1],a=t.join(","),zE(u[u.length-1],u[u.length-2],n,i)&&u.pop();var p=s[0]&&(t[0]<0||t[0]>f-2)||s[1]&&(t[1]<0||t[1]>l-2),_=t[0]===c[0]&&t[1]===c[1]&&s[0]===h[0]&&s[1]===h[1];if(_||r&&p)break;o=e.crossings[a]}d===1e4&&ER.log("Infinite loop in contour?");var b=zE(u[0],u[u.length-1],n,i),v=0,k=.2*e.smoothing,E=[],A=0,L,x,C,M,m,P,T,B,F,U,G;for(d=1;d=A;d--)if(L=E[d],L=A&&L+E[x]B&&F--,e.edgepaths[F]=G.concat(u,U));break}H||(e.edgepaths[B]=u.concat(U))}for(B=0;B20&&t?e===208||e===1114?n=r[0]===0?1:-1:i=r[1]===0?1:-1:BT.BOTTOMSTART.indexOf(e)!==-1?i=1:BT.LEFTSTART.indexOf(e)!==-1?n=1:BT.TOPSTART.indexOf(e)!==-1?i=-1:n=-1,[n,i]}function Tbe(e,t,r){var n=t[0]+Math.max(r[0],0),i=t[1]+Math.max(r[1],0),a=e.z[i][n],o=e.xaxis,s=e.yaxis;if(r[1]){var u=(e.level-a)/(e.z[i][n+1]-a),l=(u!==1?(1-u)*o.c2l(e.x[n]):0)+(u!==0?u*o.c2l(e.x[n+1]):0);return[o.c2p(o.l2c(l),!0),s.c2p(e.y[i],!0),n+u,i]}else{var f=(e.level-a)/(e.z[i+1][n]-a),c=(f!==1?(1-f)*s.c2l(e.y[i]):0)+(f!==0?f*s.c2l(e.y[i+1]):0);return[o.c2p(e.x[n],!0),s.c2p(s.l2c(c),!0),n,i+f]}}});var kbe=Ae((Ucr,Ebe)=>{"use strict";var kG=wR(),v2t=ku();Ebe.exports={"[]":Sbe("[]"),"][":Sbe("]["),">":CG(">"),"<":CG("<"),"=":CG("=")};function Mbe(e,t){var r=Array.isArray(t),n;function i(a){return v2t(a)?+a:null}return kG.COMPARISON_OPS2.indexOf(e)!==-1?n=i(r?t[0]:t):kG.INTERVAL_OPS.indexOf(e)!==-1?n=r?[i(t[0]),i(t[1])]:[i(t),i(t)]:kG.SET_OPS.indexOf(e)!==-1&&(n=r?t.map(i):[i(t)]),n}function Sbe(e){return function(t){t=Mbe(e,t);var r=Math.min(t[0],t[1]),n=Math.max(t[0],t[1]);return{start:r,end:n,size:n-r}}}function CG(e){return function(t){return t=Mbe(e,t),{start:t,end:1/0,size:1/0}}}});var LG=Ae((Vcr,Lbe)=>{"use strict";var Cbe=ei(),m2t=kbe(),y2t=LE();Lbe.exports=function(t,r,n){for(var i=t.type==="constraint"?m2t[t._operation](t.value):t,a=i.size,o=[],s=y2t(i),u=n.trace._carpetTrace,l=u?{xaxis:u.aaxis,yaxis:u.baxis,x:n.a,y:n.b}:{xaxis:r.xaxis,yaxis:r.yaxis,x:n.x,y:n.y},f=i.start;f1e3){Cbe.warn("Too many contours, clipping at 1000",t);break}return o}});var PG=Ae((Gcr,zbe)=>{"use strict";var OT=ei();zbe.exports=function(e,t){var r,n,i,a=function(u){return u.reverse()},o=function(u){return u};switch(t){case"=":case"<":return e;case">":for(e.length!==1&&OT.warn("Contour data invalid for the specified inequality operation."),n=e[0],r=0;r{"use strict";Ibe.exports=function(e,t){var r=e[0],n=r.z,i;switch(t.type){case"levels":var a=Math.min(n[0][0],n[0][1]);for(i=0;io.level||o.starts.length&&a===o.level)}break;case"constraint":if(r.prefixBoundary=!1,r.edgepaths.length)return;var s=r.x.length,u=r.y.length,l=-1/0,f=1/0;for(i=0;i":c>l&&(r.prefixBoundary=!0);break;case"<":(cl||r.starts.length&&d===f)&&(r.prefixBoundary=!0);break;case"][":h=Math.min(c[0],c[1]),d=Math.max(c[0],c[1]),hl&&(r.prefixBoundary=!0);break}break}}});var kR=Ae(Wp=>{"use strict";var RE=Jl(),Od=ei(),Og=Mu(),g2t=_c(),Fbe=Xf(),Rbe=wu(),Dbe=gy(),_2t=dR(),Bbe=MG(),Obe=EG(),x2t=LG(),b2t=PG(),qbe=zG(),IE=PE(),Ry=IE.LABELOPTIMIZER;Wp.plot=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;Od.makeTraceGroups(i,n,"contour").each(function(s){var u=RE.select(this),l=s[0],f=l.trace,c=l.x,h=l.y,d=f.contours,p=x2t(d,r,l),_=Od.ensureSingle(u,"g","heatmapcoloring"),b=[];d.coloring==="heatmap"&&(b=[s]),_2t(t,r,b,_),Bbe(p),Obe(p);var v=a.c2p(c[0],!0),k=a.c2p(c[c.length-1],!0),E=o.c2p(h[0],!0),A=o.c2p(h[h.length-1],!0),L=[[v,A],[k,A],[k,E],[v,E]],x=p;d.type==="constraint"&&(x=b2t(p,d._operation)),w2t(u,L,d),T2t(u,x,L,d),A2t(u,p,t,l,d),M2t(u,r,t,l,L)})};function w2t(e,t,r){var n=Od.ensureSingle(e,"g","contourbg"),i=n.selectAll("path").data(r.coloring==="fill"?[0]:[]);i.enter().append("path"),i.exit().remove(),i.attr("d","M"+t.join("L")+"Z").style("stroke","none")}function T2t(e,t,r,n){var i=n.coloring==="fill"||n.type==="constraint"&&n._operation!=="=",a="M"+r.join("L")+"Z";i&&qbe(t,n);var o=Od.ensureSingle(e,"g","contourfill"),s=o.selectAll("path").data(i?t:[]);s.enter().append("path"),s.exit().remove(),s.each(function(u){var l=(u.prefixBoundary?a:"")+Nbe(u,r);l?RE.select(this).attr("d",l).style("stroke","none"):RE.select(this).remove()})}function Nbe(e,t){var r="",n=0,i=e.edgepaths.map(function(v,k){return k}),a=!0,o,s,u,l,f,c;function h(v){return Math.abs(v[1]-t[0][1])<.01}function d(v){return Math.abs(v[1]-t[2][1])<.01}function p(v){return Math.abs(v[0]-t[0][0])<.01}function _(v){return Math.abs(v[0]-t[2][0])<.01}for(;i.length;){for(c=Og.smoothopen(e.edgepaths[n],e.smoothing),r+=a?c:c.replace(/^M/,"L"),i.splice(i.indexOf(n),1),o=e.edgepaths[n][e.edgepaths[n].length-1],l=-1,u=0;u<4;u++){if(!o){Od.log("Missing end?",n,e);break}for(h(o)&&!_(o)?s=t[1]:p(o)?s=t[0]:d(o)?s=t[3]:_(o)&&(s=t[2]),f=0;f=0&&(s=b,l=f):Math.abs(o[1]-s[1])<.01?Math.abs(o[1]-b[1])<.01&&(b[0]-o[0])*(s[0]-b[0])>=0&&(s=b,l=f):Od.log("endpt to newendpt is not vert. or horz.",o,s,b)}if(o=s,l>=0)break;r+="L"+s}if(l===e.edgepaths.length){Od.log("unclosed perimeter path");break}n=l,a=i.indexOf(n)===-1,a&&(n=i[0],r+="Z")}for(n=0;nRy.MAXCOST*2)break;h&&(s/=2),o=l-s/2,u=o+s*1.5}if(c<=Ry.MAXCOST)return f};function S2t(e,t,r,n){var i=t.width/2,a=t.height/2,o=e.x,s=e.y,u=e.theta,l=Math.cos(u)*i,f=Math.sin(u)*i,c=(o>n.center?n.right-o:o-n.left)/(l+Math.abs(Math.sin(u)*a)),h=(s>n.middle?n.bottom-s:s-n.top)/(Math.abs(f)+Math.cos(u)*a);if(c<1||h<1)return 1/0;var d=Ry.EDGECOST*(1/(c-1)+1/(h-1));d+=Ry.ANGLECOST*u*u;for(var p=o-l,_=s-f,b=o+l,v=s+f,k=0;k{"use strict";var k2t=Jl(),IG=_c(),C2t=LE();Ube.exports=function(t){var r=t.contours,n=r.start,i=C2t(r),a=r.size||1,o=Math.floor((i-n)/a)+1,s=r.coloring==="lines"?0:1,u=IG.extractOpts(t);isFinite(a)||(a=1,o=1);var l=u.reversescale?IG.flipScale(u.colorscale):u.colorscale,f=l.length,c=new Array(f),h=new Array(f),d,p,_=u.min,b=u.max;if(r.coloring==="heatmap"){for(p=0;p=b)&&(n<=_&&(n=_),i>=b&&(i=b),o=Math.floor((i-n)/a)+1,s=0),p=0;p_&&(c.unshift(_),h.unshift(h[0])),c[c.length-1]{"use strict";var CR=Jl(),Vbe=Mu(),L2t=pR(),P2t=RG();Gbe.exports=function(t){var r=CR.select(t).selectAll("g.contour");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=CR.select(this),a=n[0].trace,o=a.contours,s=a.line,u=o.size||1,l=o.start,f=o.type==="constraint",c=!f&&o.coloring==="lines",h=!f&&o.coloring==="fill",d=c||h?P2t(a):null;i.selectAll("g.contourlevel").each(function(b){CR.select(this).selectAll("path").call(Vbe.lineGroupStyle,s.width,c?d(b.level):s.color,s.dash)});var p=o.labelfont;if(i.selectAll("g.contourlabels text").each(function(b){Vbe.font(CR.select(this),{weight:p.weight,style:p.style,variant:p.variant,textcase:p.textcase,lineposition:p.lineposition,shadow:p.shadow,family:p.family,size:p.size,color:p.color||(c?d(b.level):s.color)})}),f)i.selectAll("g.contourfill path").style("fill",a.fillcolor);else if(h){var _;i.selectAll("g.contourfill path").style("fill",function(b){return _===void 0&&(_=b.level),d(b.level+.5*u)}),_===void 0&&(_=l),i.selectAll("g.contourbg path").style("fill",d(_-.5*u))}}),L2t(t)}});var PR=Ae((Zcr,Wbe)=>{"use strict";var Hbe=_c(),z2t=RG(),I2t=LE();function R2t(e,t,r){var n=t.contours,i=t.line,a=n.size||1,o=n.coloring,s=z2t(t,{isColorbar:!0});if(o==="heatmap"){var u=Hbe.extractOpts(t);r._fillgradient=u.reversescale?Hbe.flipScale(u.colorscale):u.colorscale,r._zrange=[u.min,u.max]}else o==="fill"&&(r._fillcolor=s);r._line={color:o==="lines"?s:i.color,width:n.showlines!==!1?i.width:0,dash:i.dash},r._levels={start:n.start,end:I2t(n),size:a}}Wbe.exports={min:"zmin",max:"zmax",calc:R2t}});var DG=Ae((Ycr,jbe)=>{"use strict";var zR=jl(),D2t=mR();jbe.exports=function(t,r,n,i,a){a||(a={}),a.isContour=!0;var o=D2t(t,r,n,i,a);return o&&o.forEach(function(s){var u=s.trace;u.contours.type==="constraint"&&(u.fillcolor&&zR.opacity(u.fillcolor)?s.color=zR.addOpacity(u.fillcolor,1):u.contours.showlines&&zR.opacity(u.line.color)&&(s.color=zR.addOpacity(u.line.color,1)))}),o}});var Zbe=Ae((Kcr,Xbe)=>{"use strict";Xbe.exports={attributes:xG(),supplyDefaults:pbe(),crossTraceDefaults:_R(),calc:SG(),plot:kR().plot,layerName:"contourlayer",style:LR(),colorbar:PR(),hoverPoints:DG(),moduleType:"trace",name:"histogram2dcontour",basePlotModule:Ah(),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{}}});var Kbe=Ae((Jcr,Ybe)=>{"use strict";Ybe.exports=Zbe()});var FG=Ae(($cr,r2e)=>{"use strict";var Jbe=ku(),F2t=bG(),e2e=jl(),$be=e2e.addOpacity,B2t=e2e.opacity,t2e=wR(),Qbe=ei().isArrayOrTypedArray,O2t=t2e.CONSTRAINT_REDUCTION,q2t=t2e.COMPARISON_OPS2;r2e.exports=function(t,r,n,i,a,o){var s=r.contours,u,l,f,c=n("contours.operation");if(s._operation=O2t[c],N2t(n,s),c==="="?u=s.showlines=!0:(u=n("contours.showlines"),f=n("fillcolor",$be((t.line||{}).color||a,.5))),u){var h=f&&B2t(f)?$be(r.fillcolor,1):a;l=n("line.color",h),n("line.width",2),n("line.dash")}n("line.smoothing"),F2t(n,i,l,o)};function N2t(e,t){var r;q2t.indexOf(t.operation)===-1?(e("contours.value",[0,1]),Qbe(t.value)?t.value.length>2?t.value=t.value.slice(2):t.length===0?t.value=[0,1]:t.length<2?(r=parseFloat(t.value[0]),t.value=[r,r+1]):t.value=[parseFloat(t.value[0]),parseFloat(t.value[1])]:Jbe(t.value)&&(r=parseFloat(t.value),t.value=[r,r+1])):(e("contours.value",0),Jbe(t.value)||(Qbe(t.value)?t.value=parseFloat(t.value[0]):t.value=0))}});var a2e=Ae((Qcr,n2e)=>{"use strict";var BG=ei(),U2t=eR(),V2t=zm(),G2t=FG(),H2t=AR(),W2t=SR(),j2t=AE(),i2e=CE();n2e.exports=function(t,r,n,i){function a(l,f){return BG.coerce(t,r,i2e,l,f)}function o(l){return BG.coerce2(t,r,i2e,l)}var s=U2t(t,r,a,i);if(!s){r.visible=!1;return}V2t(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hoverongaps"),a("hovertemplate"),a("hovertemplatefallback");var u=a("contours.type")==="constraint";a("connectgaps",BG.isArray1D(r.z)),u?G2t(t,r,a,i,n):(H2t(t,r,a,o),W2t(t,r,a,i)),r.contours&&r.contours.coloring==="heatmap"&&j2t(a,i),a("zorder")}});var s2e=Ae((ehr,o2e)=>{"use strict";o2e.exports={attributes:CE(),supplyDefaults:a2e(),calc:SG(),plot:kR().plot,style:LR(),colorbar:PR(),hoverPoints:DG(),moduleType:"trace",name:"contour",basePlotModule:Ah(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}});var u2e=Ae((thr,l2e)=>{"use strict";l2e.exports=s2e()});var OG=Ae((rhr,h2e)=>{"use strict";var{hovertemplateAttrs:X2t,texttemplateAttrs:Z2t,templatefallbackAttrs:f2e}=Ff(),Y2t=Cm(),a0=Zc(),K2t=Gf(),c2e=nc(),J2t=Id().dash,M_=Su().extendFlat,W0=a0.marker,DE=a0.line,$2t=W0.line;h2e.exports={a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},c:{valType:"data_array",editType:"calc"},sum:{valType:"number",dflt:0,min:0,editType:"calc"},mode:M_({},a0.mode,{dflt:"markers"}),text:M_({},a0.text,{}),texttemplate:Z2t({editType:"plot"},{keys:["a","b","c","text"]}),texttemplatefallback:f2e({editType:"plot"}),hovertext:M_({},a0.hovertext,{}),line:{color:DE.color,width:DE.width,dash:J2t,backoff:DE.backoff,shape:M_({},DE.shape,{values:["linear","spline"]}),smoothing:DE.smoothing,editType:"calc"},connectgaps:a0.connectgaps,cliponaxis:a0.cliponaxis,fill:M_({},a0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:Y2t(),marker:M_({symbol:W0.symbol,opacity:W0.opacity,angle:W0.angle,angleref:W0.angleref,standoff:W0.standoff,maxdisplayed:W0.maxdisplayed,size:W0.size,sizeref:W0.sizeref,sizemin:W0.sizemin,sizemode:W0.sizemode,line:M_({width:$2t.width,editType:"calc"},c2e("marker.line")),gradient:W0.gradient,editType:"calc"},c2e("marker")),textfont:a0.textfont,textposition:a0.textposition,selected:a0.selected,unselected:a0.unselected,hoverinfo:M_({},K2t.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:a0.hoveron,hovertemplate:X2t(),hovertemplatefallback:f2e()}});var m2e=Ae((ihr,v2e)=>{"use strict";var d2e=ei(),Q2t=Sy(),qT=lc(),ewt=$v(),twt=I0(),p2e=tT(),rwt=R0(),iwt=Im(),nwt=OG();v2e.exports=function(t,r,n,i){function a(h,d){return d2e.coerce(t,r,nwt,h,d)}var o=a("a"),s=a("b"),u=a("c"),l;if(o?(l=o.length,s?(l=Math.min(l,s.length),u&&(l=Math.min(l,u.length))):u?l=Math.min(l,u.length):l=0):s&&u&&(l=Math.min(s.length,u.length)),!l){r.visible=!1;return}r._length=l,a("sum"),a("text"),a("hovertext"),r.hoveron!=="fills"&&(a("hovertemplate"),a("hovertemplatefallback"));var f=l{"use strict";var qG=wu();y2e.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.aLabel=qG.tickText(a.aaxis,t.a,!0).text,i.bLabel=qG.tickText(a.baxis,t.b,!0).text,i.cLabel=qG.tickText(a.caxis,t.c,!0).text,i}});var w2e=Ae((ahr,b2e)=>{"use strict";var NG=ku(),awt=D0(),owt=ky(),swt=F0(),lwt=B0().calcMarkerSize,_2e=["a","b","c"],x2e={a:["b","c"],b:["a","c"],c:["a","b"]};b2e.exports=function(t,r){var n=t._fullLayout[r.subplot],i=n.sum,a=r.sum||i,o={a:r.a,b:r.b,c:r.c},s=r.ids,u,l,f,c,h,d;for(u=0;u<_2e.length;u++)if(f=_2e[u],!o[f]){for(h=o[x2e[f][0]],d=o[x2e[f][1]],c=new Array(h.length),l=0;l{"use strict";var uwt=sT();T2e.exports=function(t,r,n){var i=r.plotContainer;i.select(".scatterlayer").selectAll("*").remove();for(var a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:i,layerClipId:r._hasClipOnAxisFalse?r.clipIdRelative:null},u=r.layers.frontplot.select("g.scatterlayer"),l=0;l{"use strict";var fwt=cT();S2e.exports=function(t,r,n,i){var a=fwt(t,r,n,i);if(!a||a[0].index===!1)return;var o=a[0];if(o.index===void 0){var s=1-o.y0/t.ya._length,u=t.xa._length,l=u*s/2,f=u-l;return o.x0=Math.max(Math.min(o.x0,f),l),o.x1=Math.max(Math.min(o.x1,f),l),a}var c=o.cd[o.index],h=o.trace,d=o.subplot;o.a=c.a,o.b=c.b,o.c=c.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var p={};p[h.subplot]={_subplot:d};var _=h._module.formatLabels(c,h,p);o.aLabel=_.aLabel,o.bLabel=_.bLabel,o.cLabel=_.cLabel;var b=c.hi||h.hoverinfo,v=[];function k(A,L){v.push(A._hovertitle+": "+L)}if(!h.hovertemplate){var E=b.split("+");E.indexOf("all")!==-1&&(E=["a","b","c"]),E.indexOf("a")!==-1&&k(d.aaxis,o.aLabel),E.indexOf("b")!==-1&&k(d.baxis,o.bLabel),E.indexOf("c")!==-1&&k(d.caxis,o.cLabel)}return o.extraText=v.join("
"),o.hovertemplate=h.hovertemplate,a}});var k2e=Ae((lhr,E2e)=>{"use strict";E2e.exports=function(t,r,n,i,a){if(r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),i[a]){var o=i[a];t.a=o.a,t.b=o.b,t.c=o.c}else t.a=r.a,t.b=r.b,t.c=r.c;return t}});var q2e=Ae((uhr,O2e)=>{"use strict";var R2e=Jl(),cwt=cd(),UG=$l(),qg=ei(),Dy=qg.strTranslate,IR=qg._,UT=jl(),RR=Mu(),FE=gy(),VG=Su().extendFlat,hwt=Cc(),E_=wu(),C2e=xp(),L2e=Xc(),D2e=Em(),P2e=D2e.freeMode,dwt=D2e.rectMode,GG=Eb(),pwt=oh().prepSelect,vwt=oh().selectOnClick,mwt=oh().clearOutline,ywt=oh().clearSelectionsCache,F2e=dd();function B2e(e,t){this.id=e.id,this.graphDiv=e.graphDiv,this.init(t),this.makeFramework(t),this.updateFx(t),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}O2e.exports=B2e;var Fy=B2e.prototype;Fy.init=function(e){this.container=e._ternarylayer,this.defs=e._defs,this.layoutId=e._uid,this.traceHash={},this.layers={}};Fy.plot=function(e,t){var r=this,n=t[r.id],i=t._size;r._hasClipOnAxisFalse=!1;for(var a=0;aNT*l?(v=l,b=v*NT):(b=u,v=b/NT),k=o*b/u,E=s*v/l,p=t.l+t.w*i-b/2,_=t.t+t.h*(1-a)-v/2,r.x0=p,r.y0=_,r.w=b,r.h=v,r.sum=f,r.xaxis={type:"linear",range:[c+2*d-f,f-c-2*h],domain:[i-k/2,i+k/2],_id:"x"},FE(r.xaxis,r.graphDiv._fullLayout),r.xaxis.setScale(),r.xaxis.isPtWithinRange=function(U){return U.a>=r.aaxis.range[0]&&U.a<=r.aaxis.range[1]&&U.b>=r.baxis.range[1]&&U.b<=r.baxis.range[0]&&U.c>=r.caxis.range[1]&&U.c<=r.caxis.range[0]},r.yaxis={type:"linear",range:[c,f-h-d],domain:[a-E/2,a+E/2],_id:"y"},FE(r.yaxis,r.graphDiv._fullLayout),r.yaxis.setScale(),r.yaxis.isPtWithinRange=function(){return!0};var A=r.yaxis.domain[0],L=r.aaxis=VG({},e.aaxis,{range:[c,f-h-d],side:"left",tickangle:(+e.aaxis.tickangle||0)-30,domain:[A,A+E*NT],anchor:"free",position:0,_id:"y",_length:b});FE(L,r.graphDiv._fullLayout),L.setScale();var x=r.baxis=VG({},e.baxis,{range:[f-c-d,h],side:"bottom",domain:r.xaxis.domain,anchor:"free",position:0,_id:"x",_length:b});FE(x,r.graphDiv._fullLayout),x.setScale();var C=r.caxis=VG({},e.caxis,{range:[f-c-h,d],side:"right",tickangle:(+e.caxis.tickangle||0)+30,domain:[A,A+E*NT],anchor:"free",position:0,_id:"y",_length:b});FE(C,r.graphDiv._fullLayout),C.setScale();var M="M"+p+","+(_+v)+"h"+b+"l-"+b/2+",-"+v+"Z";r.clipDef.select("path").attr("d",M),r.layers.plotbg.select("path").attr("d",M);var m="M0,"+v+"h"+b+"l-"+b/2+",-"+v+"Z";r.clipDefRelative.select("path").attr("d",m);var P=Dy(p,_);r.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",P),r.clipDefRelative.select("path").attr("transform",null);var T=Dy(p-x._offset,_+v);r.layers.baxis.attr("transform",T),r.layers.bgrid.attr("transform",T);var B=Dy(p+b/2,_)+"rotate(30)"+Dy(0,-L._offset);r.layers.aaxis.attr("transform",B),r.layers.agrid.attr("transform",B);var F=Dy(p+b/2,_)+"rotate(-30)"+Dy(0,-C._offset);r.layers.caxis.attr("transform",F),r.layers.cgrid.attr("transform",F),r.drawAxes(!0),r.layers.aline.select("path").attr("d",L.showline?"M"+p+","+(_+v)+"l"+b/2+",-"+v:"M0,0").call(UT.stroke,L.linecolor||"#000").style("stroke-width",(L.linewidth||0)+"px"),r.layers.bline.select("path").attr("d",x.showline?"M"+p+","+(_+v)+"h"+b:"M0,0").call(UT.stroke,x.linecolor||"#000").style("stroke-width",(x.linewidth||0)+"px"),r.layers.cline.select("path").attr("d",C.showline?"M"+(p+b/2)+","+_+"l"+b/2+","+v:"M0,0").call(UT.stroke,C.linecolor||"#000").style("stroke-width",(C.linewidth||0)+"px"),r.graphDiv._context.staticPlot||r.initInteractions(),RR.setClipUrl(r.layers.frontplot,r._hasClipOnAxisFalse?null:r.clipId,r.graphDiv)};Fy.drawAxes=function(e){var t=this,r=t.graphDiv,n=t.id.slice(7)+"title",i=t.layers,a=t.aaxis,o=t.baxis,s=t.caxis;if(t.drawAx(a),t.drawAx(o),t.drawAx(s),e){var u=Math.max(a.showticklabels?a.tickfont.size/2:0,(s.showticklabels?s.tickfont.size*.75:0)+(s.ticks==="outside"?s.ticklen*.87:0)),l=(o.showticklabels?o.tickfont.size:0)+(o.ticks==="outside"?o.ticklen:0)+3;i["a-title"]=GG.draw(r,"a"+n,{propContainer:a,propName:t.id+".aaxis.title.text",placeholder:IR(r,"Click to enter Component A title"),attributes:{x:t.x0+t.w/2,y:t.y0-a.title.font.size/3-u,"text-anchor":"middle"}}),i["b-title"]=GG.draw(r,"b"+n,{propContainer:o,propName:t.id+".baxis.title.text",placeholder:IR(r,"Click to enter Component B title"),attributes:{x:t.x0-l,y:t.y0+t.h+o.title.font.size*.83+l,"text-anchor":"middle"}}),i["c-title"]=GG.draw(r,"c"+n,{propContainer:s,propName:t.id+".caxis.title.text",placeholder:IR(r,"Click to enter Component C title"),attributes:{x:t.x0+t.w+l,y:t.y0+t.h+s.title.font.size*.83+l,"text-anchor":"middle"}})}};Fy.drawAx=function(e){var t=this,r=t.graphDiv,n=e._name,i=n.charAt(0),a=e._id,o=t.layers[n],s=30,u=i+"tickLayout",l=gwt(e);t[u]!==l&&(o.selectAll("."+a+"tick").remove(),t[u]=l),e.setScale();var f=E_.calcTicks(e),c=E_.clipEnds(e,f),h=E_.makeTransTickFn(e),d=E_.getTickSigns(e)[2],p=qg.deg2rad(s),_=d*(e.linewidth||1)/2,b=d*e.ticklen,v=t.w,k=t.h,E=i==="b"?"M0,"+_+"l"+Math.sin(p)*b+","+Math.cos(p)*b:"M"+_+",0l"+Math.cos(p)*b+","+-Math.sin(p)*b,A={a:"M0,0l"+k+",-"+v/2,b:"M0,0l-"+v/2+",-"+k,c:"M0,0l-"+k+","+v/2}[i];E_.drawTicks(r,e,{vals:e.ticks==="inside"?c:f,layer:o,path:E,transFn:h,crisp:!1}),E_.drawGrid(r,e,{vals:c,layer:t.layers[i+"grid"],path:A,transFn:h,crisp:!1}),E_.drawLabels(r,e,{vals:f,layer:o,transFn:h,labelFns:E_.makeLabelFns(e,0,s)})};function gwt(e){return e.ticks+String(e.ticklen)+String(e.showticklabels)}var _d=F2e.MINZOOM/2+.87,_wt="m-0.87,.5h"+_d+"v3h-"+(_d+5.2)+"l"+(_d/2+2.6)+",-"+(_d*.87+4.5)+"l2.6,1.5l-"+_d/2+","+_d*.87+"Z",xwt="m0.87,.5h-"+_d+"v3h"+(_d+5.2)+"l-"+(_d/2+2.6)+",-"+(_d*.87+4.5)+"l-2.6,1.5l"+_d/2+","+_d*.87+"Z",bwt="m0,1l"+_d/2+","+_d*.87+"l2.6,-1.5l-"+(_d/2+2.6)+",-"+(_d*.87+4.5)+"l-"+(_d/2+2.6)+","+(_d*.87+4.5)+"l2.6,1.5l"+_d/2+",-"+_d*.87+"Z",wwt="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",z2e=!0;Fy.clearOutline=function(){ywt(this.dragOptions),mwt(this.dragOptions.gd)};Fy.initInteractions=function(){var e=this,t=e.layers.plotbg.select("path").node(),r=e.graphDiv,n=r._fullLayout._zoomlayer,i,a;this.dragOptions={element:t,gd:r,plotinfo:{id:e.id,domain:r._fullLayout[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis},subplot:e.id,prepFn:function(T,B,F){e.dragOptions.xaxes=[e.xaxis],e.dragOptions.yaxes=[e.yaxis],i=r._fullLayout._invScaleX,a=r._fullLayout._invScaleY;var U=e.dragOptions.dragmode=r._fullLayout.dragmode;P2e(U)?e.dragOptions.minDrag=1:e.dragOptions.minDrag=void 0,U==="zoom"?(e.dragOptions.moveFn=x,e.dragOptions.clickFn=v,e.dragOptions.doneFn=C,k(T,B,F)):U==="pan"?(e.dragOptions.moveFn=m,e.dragOptions.clickFn=v,e.dragOptions.doneFn=P,M(),e.clearOutline(r)):(dwt(U)||P2e(U))&&pwt(T,B,F,e.dragOptions,U)}};var o,s,u,l,f,c,h,d,p,_;function b(T){var B={};return B[e.id+".aaxis.min"]=T.a,B[e.id+".baxis.min"]=T.b,B[e.id+".caxis.min"]=T.c,B}function v(T,B){var F=r._fullLayout.clickmode;I2e(r),T===2&&(r.emit("plotly_doubleclick",null),UG.call("_guiRelayout",r,b({a:0,b:0,c:0}))),F.indexOf("select")>-1&&T===1&&vwt(B,r,[e.xaxis],[e.yaxis],e.id,e.dragOptions),F.indexOf("event")>-1&&L2e.click(r,B,e.id)}function k(T,B,F){var U=t.getBoundingClientRect();o=B-U.left,s=F-U.top,r._fullLayout._calcInverseTransform(r);var G=r._fullLayout._invTransform,j=qg.apply3DTransform(G)(o,s);o=j[0],s=j[1],u={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},f=u,l=e.aaxis.range[1]-u.a,c=cwt(e.graphDiv._fullLayout[e.id].bgcolor).getLuminance(),h="M0,"+e.h+"L"+e.w/2+", 0L"+e.w+","+e.h+"Z",d=!1,p=n.append("path").attr("class","zoombox").attr("transform",Dy(e.x0,e.y0)).style({fill:c>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",h),_=n.append("path").attr("class","zoombox-corners").attr("transform",Dy(e.x0,e.y0)).style({fill:UT.background,stroke:UT.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),e.clearOutline(r)}function E(T,B){return 1-B/e.h}function A(T,B){return 1-(T+(e.h-B)/Math.sqrt(3))/e.w}function L(T,B){return(T-(e.h-B)/Math.sqrt(3))/e.w}function x(T,B){var F=o+T*i,U=s+B*a,G=Math.max(0,Math.min(1,E(o,s),E(F,U))),j=Math.max(0,Math.min(1,A(o,s),A(F,U))),W=Math.max(0,Math.min(1,L(o,s),L(F,U))),N=(G/2+W)*e.w,H=(1-G/2-j)*e.w,re=(N+H)/2,ae=H-N,be=(1-G)*e.h,ze=be-ae/NT;ae.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),_.transition().style("opacity",1).duration(200),d=!0),r.emit("plotly_relayouting",b(f))}function C(){I2e(r),f!==u&&(UG.call("_guiRelayout",r,b(f)),z2e&&r.data&&r._context.showTips&&(qg.notifier(IR(r,"Double-click to zoom back out"),"long"),z2e=!1))}function M(){u={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},f=u}function m(T,B){var F=T/e.xaxis._m,U=B/e.yaxis._m;f={a:u.a-U,b:u.b+(F+U)/2,c:u.c-(F-U)/2};var G=[f.a,f.b,f.c].sort(qg.sorterAsc),j={a:G.indexOf(f.a),b:G.indexOf(f.b),c:G.indexOf(f.c)};G[0]<0&&(G[1]+G[0]/2<0?(G[2]+=G[0]+G[1],G[0]=G[1]=0):(G[2]+=G[0]/2,G[1]+=G[0]/2,G[0]=0),f={a:G[j.a],b:G[j.b],c:G[j.c]},B=(u.a-f.a)*e.yaxis._m,T=(u.c-f.c-u.b+f.b)*e.xaxis._m);var W=Dy(e.x0+T,e.y0+B);e.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",W);var N=Dy(-T,-B);e.clipDefRelative.select("path").attr("transform",N),e.aaxis.range=[f.a,e.sum-f.b-f.c],e.baxis.range=[e.sum-f.a-f.c,f.b],e.caxis.range=[e.sum-f.a-f.b,f.c],e.drawAxes(!1),e._hasClipOnAxisFalse&&e.plotContainer.select(".scatterlayer").selectAll(".trace").call(RR.hideOutsideRangePoints,e),r.emit("plotly_relayouting",b(f))}function P(){UG.call("_guiRelayout",r,b(f))}t.onmousemove=function(T){L2e.hover(r,T,e.id),r._fullLayout._lasthover=t,r._fullLayout._hoversubplot=e.id},t.onmouseout=function(T){r._dragging||C2e.unhover(r,T)},C2e.init(this.dragOptions)};function I2e(e){R2e.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}});var jG=Ae((fhr,N2e)=>{"use strict";var Twt=Fh(),Awt=zc().attributes,Kf=Dd(),Swt=Sc().overrideAll,HG=Su().extendFlat,WG={title:{text:Kf.title.text,font:Kf.title.font},color:Kf.color,tickmode:Kf.minor.tickmode,nticks:HG({},Kf.nticks,{dflt:6,min:1}),tick0:Kf.tick0,dtick:Kf.dtick,tickvals:Kf.tickvals,ticktext:Kf.ticktext,ticks:Kf.ticks,ticklen:Kf.ticklen,tickwidth:Kf.tickwidth,tickcolor:Kf.tickcolor,ticklabelstep:Kf.ticklabelstep,showticklabels:Kf.showticklabels,labelalias:Kf.labelalias,showtickprefix:Kf.showtickprefix,tickprefix:Kf.tickprefix,showticksuffix:Kf.showticksuffix,ticksuffix:Kf.ticksuffix,showexponent:Kf.showexponent,exponentformat:Kf.exponentformat,minexponent:Kf.minexponent,separatethousands:Kf.separatethousands,tickfont:Kf.tickfont,tickangle:Kf.tickangle,tickformat:Kf.tickformat,tickformatstops:Kf.tickformatstops,hoverformat:Kf.hoverformat,showline:HG({},Kf.showline,{dflt:!0}),linecolor:Kf.linecolor,linewidth:Kf.linewidth,showgrid:HG({},Kf.showgrid,{dflt:!0}),gridcolor:Kf.gridcolor,gridwidth:Kf.gridwidth,griddash:Kf.griddash,layer:Kf.layer,min:{valType:"number",dflt:0,min:0}},DR=N2e.exports=Swt({domain:Awt({name:"ternary"}),bgcolor:{valType:"color",dflt:Twt.background},sum:{valType:"number",dflt:1,min:0},aaxis:WG,baxis:WG,caxis:WG},"plot","from-root");DR.uirevision={valType:"any",editType:"none"};DR.aaxis.uirevision=DR.baxis.uirevision=DR.caxis.uirevision={valType:"any",editType:"none"}});var k_=Ae((chr,U2e)=>{"use strict";var Mwt=ei(),Ewt=Lf(),kwt=zc().defaults;U2e.exports=function(t,r,n,i){var a=i.type,o=i.attributes,s=i.handleDefaults,u=i.partition||"x",l=r._subplots[a],f=l.length,c=f&&l[0].replace(/\d+$/,""),h,d;function p(k,E){return Mwt.coerce(h,d,o,k,E)}for(var _=0;_{"use strict";var Cwt=jl(),Lwt=Lf(),FR=ei(),Pwt=k_(),zwt=e_(),Iwt=t_(),Rwt=M3(),Dwt=bb(),Fwt=tE(),G2e=jG(),V2e=["aaxis","baxis","caxis"];H2e.exports=function(t,r,n){Pwt(t,r,n,{type:"ternary",attributes:G2e,handleDefaults:Bwt,font:r.font,paper_bgcolor:r.paper_bgcolor})};function Bwt(e,t,r,n){var i=r("bgcolor"),a=r("sum");n.bgColor=Cwt.combine(i,n.paper_bgcolor);for(var o,s,u,l=0;l=a&&(f.min=0,c.min=0,h.min=0,e.aaxis&&delete e.aaxis.min,e.baxis&&delete e.baxis.min,e.caxis&&delete e.caxis.min)}function Owt(e,t,r,n){var i=G2e[t._name];function a(d,p){return FR.coerce(e,t,i,d,p)}a("uirevision",n.uirevision),t.type="linear";var o=a("color"),s=o!==i.color.dflt?o:r.font.color,u=t._name,l=u.charAt(0).toUpperCase(),f="Component "+l,c=a("title.text",f);t._hovertitle=c===f?c:l,FR.coerceFont(a,"title.font",r.font,{overrideDflt:{size:FR.bigFont(r.font.size),color:s}}),a("min"),Dwt(e,t,a,"linear"),Iwt(e,t,a,"linear"),zwt(e,t,a,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),Rwt(e,t,a,{outerTicks:!0});var h=a("showticklabels");h&&(FR.coerceFont(a,"tickfont",r.font,{overrideDflt:{color:s}}),a("tickangle"),a("tickformat")),Fwt(e,t,a,{dfltColor:o,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i}),a("hoverformat"),a("layer")}});var j2e=Ae(j0=>{"use strict";var qwt=q2e(),Nwt=Rd().getSubplotCalcData,Uwt=ei().counterRegex,VT="ternary";j0.name=VT;var Vwt=j0.attr="subplot";j0.idRoot=VT;j0.idRegex=j0.attrRegex=Uwt(VT);var Gwt=j0.attributes={};Gwt[Vwt]={valType:"subplotid",dflt:"ternary",editType:"calc"};j0.layoutAttributes=jG();j0.supplyLayoutDefaults=W2e();j0.plot=function(t){for(var r=t._fullLayout,n=t.calcdata,i=r._subplots[VT],a=0;a{"use strict";X2e.exports={attributes:OG(),supplyDefaults:m2e(),colorbar:ep(),formatLabels:g2e(),calc:w2e(),plot:A2e(),style:ov().style,styleOnSelect:ov().styleOnSelect,hoverPoints:M2e(),selectPoints:hT(),eventData:k2e(),moduleType:"trace",name:"scatterternary",basePlotModule:j2e(),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}});var K2e=Ae((vhr,Y2e)=>{"use strict";Y2e.exports=Z2e()});var XG=Ae((mhr,$2e)=>{"use strict";var Uh=xE(),GT=Su().extendFlat,J2e=jc().axisHoverFormat;$2e.exports={y:Uh.y,x:Uh.x,x0:Uh.x0,y0:Uh.y0,xhoverformat:J2e("x"),yhoverformat:J2e("y"),name:GT({},Uh.name,{}),orientation:GT({},Uh.orientation,{}),bandwidth:{valType:"number",min:0,editType:"calc"},scalegroup:{valType:"string",dflt:"",editType:"calc"},scalemode:{valType:"enumerated",values:["width","count"],dflt:"width",editType:"calc"},spanmode:{valType:"enumerated",values:["soft","hard","manual"],dflt:"soft",editType:"calc"},span:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:Uh.fillcolor,points:GT({},Uh.boxpoints,{}),jitter:GT({},Uh.jitter,{}),pointpos:GT({},Uh.pointpos,{}),width:GT({},Uh.width,{}),marker:Uh.marker,text:Uh.text,hovertext:Uh.hovertext,hovertemplate:Uh.hovertemplate,hovertemplatefallback:Uh.hovertemplatefallback,quartilemethod:Uh.quartilemethod,box:{visible:{valType:"boolean",dflt:!1,editType:"plot"},width:{valType:"number",min:0,max:1,dflt:.25,editType:"plot"},fillcolor:{valType:"color",editType:"style"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"style"},editType:"plot"},meanline:{visible:{valType:"boolean",dflt:!1,editType:"plot"},color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"plot"},side:{valType:"enumerated",values:["both","positive","negative"],dflt:"both",editType:"calc"},offsetgroup:Uh.offsetgroup,alignmentgroup:Uh.alignmentgroup,selected:Uh.selected,unselected:Uh.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style"},zorder:Uh.zorder}});var KG=Ae((yhr,Q2e)=>{"use strict";var ZG=bE(),YG=ei().extendFlat;Q2e.exports={violinmode:YG({},ZG.boxmode,{}),violingap:YG({},ZG.boxgap,{}),violingroupgap:YG({},ZG.boxgroupgap,{})}});var nwe=Ae((ghr,iwe)=>{"use strict";var ewe=ei(),Hwt=jl(),twe=TE(),rwe=XG();iwe.exports=function(t,r,n,i){function a(L,x){return ewe.coerce(t,r,rwe,L,x)}function o(L,x){return ewe.coerce2(t,r,rwe,L,x)}if(twe.handleSampleDefaults(t,r,a,i),r.visible!==!1){a("bandwidth"),a("side");var s=a("width");s||(a("scalegroup",r.name),a("scalemode"));var u=a("span"),l;Array.isArray(u)&&(l="manual"),a("spanmode",l);var f=a("line.color",(t.marker||{}).color||n),c=a("line.width"),h=a("fillcolor",Hwt.addOpacity(r.line.color,.5));twe.handlePointsDefaults(t,r,a,{prefix:""});var d=o("box.width"),p=o("box.fillcolor",h),_=o("box.line.color",f),b=o("box.line.width",c),v=a("box.visible",!!(d||p||_||b));v||(r.box={visible:!1});var k=o("meanline.color",f),E=o("meanline.width",c),A=a("meanline.visible",!!(k||E));A||(r.meanline={visible:!1}),a("quartilemethod"),a("zorder")}}});var owe=Ae((_hr,awe)=>{"use strict";var Wwt=ei(),jwt=KG(),Xwt=ZI();awe.exports=function(t,r,n){function i(a,o){return Wwt.coerce(t,r,jwt,a,o)}Xwt._supply(t,r,n,i,"violin")}});var BR=Ae(s2=>{"use strict";var Zwt=ei(),Ywt={gaussian:function(e){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*e*e)}};s2.makeKDE=function(e,t,r){var n=r.length,i=Ywt.gaussian,a=e.bandwidth,o=1/(n*a);return function(s){for(var u=0,l=0;l{"use strict";var JG=ei(),$G=wu(),Kwt=GV(),swe=BR(),Jwt=rf().BADNUM;lwe.exports=function(t,r){var n=Kwt(t,r);if(n[0].t.empty)return n;for(var i=t._fullLayout,a=$G.getFromId(t,r[r.orientation==="h"?"xaxis":"yaxis"]),o=1/0,s=-1/0,u=0,l=0,f=0;f{"use strict";var t3t=KI().setPositionOffset,fwe=["v","h"];cwe.exports=function(t,r){for(var n=t.calcdata,i=r.xaxis,a=r.yaxis,o=0;o{"use strict";var QG=Jl(),eH=ei(),r3t=Mu(),tH=JI(),i3t=kU(),n3t=BR();dwe.exports=function(t,r,n,i){var a=t._context.staticPlot,o=t._fullLayout,s=r.xaxis,u=r.yaxis;function l(f,c){var h=i3t(f,{xaxis:s,yaxis:u,trace:c,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return r3t.smoothopen(h[0],1)}eH.makeTraceGroups(i,n,"trace violins").each(function(f){var c=QG.select(this),h=f[0],d=h.t,p=h.trace;if(p.visible!==!0||d.empty){c.remove();return}var _=d.bPos,b=d.bdPos,v=r[d.valLetter+"axis"],k=r[d.posLetter+"axis"],E=p.side==="both",A=E||p.side==="positive",L=E||p.side==="negative",x=c.selectAll("path.violin").data(eH.identity);x.enter().append("path").style("vector-effect",a?"none":"non-scaling-stroke").attr("class","violin"),x.exit().remove(),x.each(function(U){var G=QG.select(this),j=U.density,W=j.length,N=k.c2l(U.pos+_,!0),H=k.l2p(N),re;if(p.width)re=d.maxKDE/b;else{var ae=o._violinScaleGroupStats[p.scalegroup];re=p.scalemode==="count"?ae.maxKDE/b*(ae.maxCount/U.pts.length):ae.maxKDE/b}var be,ze,Ce,de,te,ke,Ee;if(A){for(ke=new Array(W),de=0;de{"use strict";var vwe=Jl(),HT=jl(),a3t=ov().stylePoints;mwe.exports=function(t){var r=vwe.select(t).selectAll("g.trace.violins");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=n[0].trace,a=vwe.select(this),o=i.box||{},s=o.line||{},u=i.meanline||{},l=u.width;a.selectAll("path.violin").style("stroke-width",i.line.width+"px").call(HT.stroke,i.line.color).call(HT.fill,i.fillcolor),a.selectAll("path.box").style("stroke-width",s.width+"px").call(HT.stroke,s.color).call(HT.fill,o.fillcolor);var f={"stroke-width":l+"px","stroke-dasharray":2*l+"px,"+l+"px"};a.selectAll("path.mean").style(f).call(HT.stroke,u.color),a.selectAll("path.meanline").style(f).call(HT.stroke,u.color),a3t(a,i,t)})}});var bwe=Ae((Shr,xwe)=>{"use strict";var o3t=jl(),rH=ei(),s3t=wu(),gwe=ZV(),_we=BR();xwe.exports=function(t,r,n,i,a){a||(a={});var o=a.hoverLayer,s=t.cd,u=s[0].trace,l=u.hoveron,f=l.indexOf("violins")!==-1,c=l.indexOf("kde")!==-1,h=[],d,p;if(f||c){var _=gwe.hoverOnBoxes(t,r,n,i);if(c&&_.length>0){var b=t.xa,v=t.ya,k,E,A,L,x;u.orientation==="h"?(x=r,k="y",A=v,E="x",L=b):(x=n,k="x",A=b,E="y",L=v);var C=s[t.index];if(x>=C.span[0]&&x<=C.span[1]){var M=rH.extendFlat({},t),m=L.c2p(x,!0),P=_we.getKdeValue(C,u,x),T=_we.getPositionOnKdePath(C,u,m),B=A._offset,F=A._length;M[k+"0"]=T[0],M[k+"1"]=T[1],M[E+"0"]=M[E+"1"]=m,M[E+"Label"]=E+": "+s3t.hoverLabelText(L,x,u[E+"hoverformat"])+", "+s[0].t.labels.kde+" "+P.toFixed(3);for(var U=0,G=0;G<_.length;G++)if(_[G].attr==="med"){U=G;break}M.spikeDistance=_[U].spikeDistance;var j=k+"Spike";M[j]=_[U][j],_[U].spikeDistance=void 0,_[U][j]=void 0,M.hovertemplate=!1,h.push(M),p={},p[k+"1"]=rH.constrain(B+T[0],B,B+F),p[k+"2"]=rH.constrain(B+T[1],B,B+F),p[E+"1"]=p[E+"2"]=L._offset+m}}f&&(h=h.concat(_))}l.indexOf("points")!==-1&&(d=gwe.hoverOnPoints(t,r,n));var W=o.selectAll(".violinline-"+u.uid).data(p?[0]:[]);return W.enter().append("line").classed("violinline-"+u.uid,!0).attr("stroke-width",1.5),W.exit().remove(),W.attr(p).call(o3t.stroke,t.color),i==="closest"?d?[d]:h:(d&&h.push(d),h)}});var Twe=Ae((Mhr,wwe)=>{"use strict";wwe.exports={attributes:XG(),layoutAttributes:KG(),supplyDefaults:nwe(),crossTraceDefaults:TE().crossTraceDefaults,supplyLayoutDefaults:owe(),calc:uwe(),crossTraceCalc:hwe(),plot:pwe(),style:ywe(),styleOnSelect:ov().styleOnSelect,hoverPoints:bwe(),selectPoints:YV(),moduleType:"trace",name:"violin",basePlotModule:Ah(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{}}});var Swe=Ae((Ehr,Awe)=>{"use strict";Awe.exports=Twe()});var Ewe=Ae((khr,Mwe)=>{"use strict";Mwe.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}});var nH=Ae((Chr,Pwe)=>{"use strict";var Fc=Ly(),iH=Zc().line,l3t=Gf(),kwe=jc().axisHoverFormat,{hovertemplateAttrs:u3t,texttemplateAttrs:f3t,templatefallbackAttrs:Cwe}=Ff(),Lwe=Ewe(),Ng=Su().extendFlat,c3t=jl();Pwe.exports={x:Fc.x,x0:Fc.x0,dx:Fc.dx,y:Fc.y,y0:Fc.y0,dy:Fc.dy,xperiod:Fc.xperiod,yperiod:Fc.yperiod,xperiod0:Fc.xperiod0,yperiod0:Fc.yperiod0,xperiodalignment:Fc.xperiodalignment,yperiodalignment:Fc.yperiodalignment,xhoverformat:kwe("x"),yhoverformat:kwe("y"),hovertext:Fc.hovertext,hovertemplate:u3t({},{keys:Lwe.eventDataKeys}),hovertemplatefallback:Cwe(),hoverinfo:Ng({},l3t.hoverinfo,{flags:["name","x","y","text","percent initial","percent previous","percent total"]}),textinfo:{valType:"flaglist",flags:["label","text","percent initial","percent previous","percent total","value"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:f3t({editType:"plot"},{keys:Lwe.eventDataKeys.concat(["label","value"])}),texttemplatefallback:Cwe({editType:"plot"}),text:Fc.text,textposition:Fc.textposition,insidetextanchor:Ng({},Fc.insidetextanchor,{dflt:"middle"}),textangle:Ng({},Fc.textangle,{dflt:0}),textfont:Fc.textfont,insidetextfont:Fc.insidetextfont,outsidetextfont:Fc.outsidetextfont,constraintext:Fc.constraintext,cliponaxis:Fc.cliponaxis,orientation:Ng({},Fc.orientation,{}),offset:Ng({},Fc.offset,{arrayOk:!1}),width:Ng({},Fc.width,{arrayOk:!1}),marker:h3t(),connector:{fillcolor:{valType:"color",editType:"style"},line:{color:Ng({},iH.color,{dflt:c3t.defaultLine}),width:Ng({},iH.width,{dflt:0,editType:"plot"}),dash:iH.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:Fc.offsetgroup,alignmentgroup:Fc.alignmentgroup,zorder:Fc.zorder};function h3t(){var e=Ng({},Fc.marker);return delete e.pattern,delete e.cornerradius,e}});var aH=Ae((Lhr,zwe)=>{"use strict";zwe.exports={funnelmode:{valType:"enumerated",values:["stack","group","overlay"],dflt:"stack",editType:"calc"},funnelgap:{valType:"number",min:0,max:1,editType:"calc"},funnelgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var sH=Ae((Phr,Rwe)=>{"use strict";var OR=ei(),d3t=Hb(),p3t=r0().handleText,v3t=eT(),m3t=zm(),Iwe=nH(),oH=jl();function y3t(e,t,r,n){function i(c,h){return OR.coerce(e,t,Iwe,c,h)}var a=v3t(e,t,n,i);if(!a){t.visible=!1;return}m3t(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("orientation",t.y&&!t.x?"v":"h"),i("offset"),i("width");var o=i("text");i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var s=i("textposition");p3t(e,t,n,i,s,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&!t.texttemplate&&i("textinfo",OR.isArrayOrTypedArray(o)?"text+value":"value");var u=i("marker.color",r);i("marker.line.color",oH.defaultLine),i("marker.line.width");var l=i("connector.visible");if(l){i("connector.fillcolor",g3t(u));var f=i("connector.line.width");f&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function g3t(e){var t=OR.isArrayOrTypedArray(e)?"#000":e;return oH.addOpacity(t,.5*oH.opacity(t))}function _3t(e,t){var r,n;function i(o){return OR.coerce(n._input,n,Iwe,o)}for(var a=0;a{"use strict";var x3t=ei(),b3t=aH();Dwe.exports=function(e,t,r){var n=!1;function i(s,u){return x3t.coerce(e,t,b3t,s,u)}for(var a=0;a{"use strict";var WT=ei();Bwe.exports=function(t,r){for(var n=0;n{"use strict";var qwe=wu(),Nwe=Rm(),w3t=Owe(),T3t=F0(),BE=rf().BADNUM;Uwe.exports=function(t,r){var n=qwe.getFromId(t,r.xaxis||"x"),i=qwe.getFromId(t,r.yaxis||"y"),a,o,s,u,l,f,c,h;r.orientation==="h"?(a=n.makeCalcdata(r,"x"),s=i.makeCalcdata(r,"y"),u=Nwe(r,i,"y",s),l=!!r.yperiodalignment,f="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),u=Nwe(r,n,"x",s),l=!!r.xperiodalignment,f="x"),o=u.vals;var d=Math.min(o.length,a.length),p=new Array(d);for(r._base=[],c=0;c{"use strict";var Gwe=Wb().setGroupPositions;Hwe.exports=function(t,r){var n=t._fullLayout,i=t._fullData,a=t.calcdata,o=r.xaxis,s=r.yaxis,u=[],l=[],f=[],c,h;for(h=0;h{"use strict";var qR=Jl(),L_=ei(),jwe=Mu(),C_=rf().BADNUM,A3t=n2(),S3t=Tp().clearMinTextSize;Zwe.exports=function(t,r,n,i){var a=t._fullLayout;S3t("funnel",a),M3t(t,r,n,i),E3t(t,r,n,i),A3t.plot(t,r,n,i,{mode:a.funnelmode,norm:a.funnelmode,gap:a.funnelgap,groupgap:a.funnelgroupgap})};function M3t(e,t,r,n){var i=t.xaxis,a=t.yaxis;L_.makeTraceGroups(n,r,"trace bars").each(function(o){var s=qR.select(this),u=o[0].trace,l=L_.ensureSingle(s,"g","regions");if(!u.connector||!u.connector.visible){l.remove();return}var f=u.orientation==="h",c=l.selectAll("g.region").data(L_.identity);c.enter().append("g").classed("region",!0),c.exit().remove();var h=c.size();c.each(function(d,p){if(!(p!==h-1&&!d.cNext)){var _=Xwe(d,i,a,f),b=_[0],v=_[1],k="";b[0]!==C_&&v[0]!==C_&&b[1]!==C_&&v[1]!==C_&&b[2]!==C_&&v[2]!==C_&&b[3]!==C_&&v[3]!==C_&&(f?k+="M"+b[0]+","+v[1]+"L"+b[2]+","+v[2]+"H"+b[3]+"L"+b[1]+","+v[1]+"Z":k+="M"+b[1]+","+v[1]+"L"+b[2]+","+v[3]+"V"+v[2]+"L"+b[1]+","+v[0]+"Z"),k===""&&(k="M0,0Z"),L_.ensureSingle(qR.select(this),"path").attr("d",k).call(jwe.setClipUrl,t.layerClipId,e)}})})}function E3t(e,t,r,n){var i=t.xaxis,a=t.yaxis;L_.makeTraceGroups(n,r,"trace bars").each(function(o){var s=qR.select(this),u=o[0].trace,l=L_.ensureSingle(s,"g","lines");if(!u.connector||!u.connector.visible||!u.connector.line.width){l.remove();return}var f=u.orientation==="h",c=l.selectAll("g.line").data(L_.identity);c.enter().append("g").classed("line",!0),c.exit().remove();var h=c.size();c.each(function(d,p){if(!(p!==h-1&&!d.cNext)){var _=Xwe(d,i,a,f),b=_[0],v=_[1],k="";b[3]!==void 0&&v[3]!==void 0&&(f?(k+="M"+b[0]+","+v[1]+"L"+b[2]+","+v[2],k+="M"+b[1]+","+v[1]+"L"+b[3]+","+v[2]):(k+="M"+b[1]+","+v[1]+"L"+b[2]+","+v[3],k+="M"+b[1]+","+v[0]+"L"+b[2]+","+v[2])),k===""&&(k="M0,0Z"),L_.ensureSingle(qR.select(this),"path").attr("d",k).call(jwe.setClipUrl,t.layerClipId,e)}})})}function Xwe(e,t,r,n){var i=[],a=[],o=n?t:r,s=n?r:t;return i[0]=o.c2p(e.s0,!0),a[0]=s.c2p(e.p0,!0),i[1]=o.c2p(e.s1,!0),a[1]=s.c2p(e.p1,!0),i[2]=o.c2p(e.nextS0,!0),a[2]=s.c2p(e.nextP0,!0),i[3]=o.c2p(e.nextS1,!0),a[3]=s.c2p(e.nextP1,!0),n?[i,a]:[a,i]}});var $we=Ae((Bhr,Jwe)=>{"use strict";var OE=Jl(),Kwe=Mu(),uH=jl(),k3t=N1().DESELECTDIM,C3t=N0(),L3t=Tp().resizeText,P3t=C3t.styleTextPoints;function z3t(e,t,r){var n=r||OE.select(e).selectAll('g[class^="funnellayer"]').selectAll("g.trace");L3t(e,n,"funnel"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=OE.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var u=o.marker;OE.select(this).call(uH.fill,s.mc||u.color).call(uH.stroke,s.mlc||u.line.color).call(Kwe.dashLine,u.line.dash,s.mlw||u.line.width).style("opacity",o.selectedpoints&&!s.selected?k3t:1)}}),P3t(a,o,e),a.selectAll(".regions").each(function(){OE.select(this).selectAll("path").style("stroke-width",0).call(uH.fill,o.connector.fillcolor)}),a.selectAll(".lines").each(function(){var s=o.connector.line;Kwe.lineGroupStyle(OE.select(this).selectAll("path"),s.width,s.color,s.dash)})})}Jwe.exports={style:z3t}});var t3e=Ae((Ohr,e3e)=>{"use strict";var Qwe=jl().opacity,I3t=ET().hoverOnBars,fH=ei().formatPercent;e3e.exports=function(t,r,n,i,a){var o=I3t(t,r,n,i,a);if(o){var s=o.cd,u=s[0].trace,l=u.orientation==="h",f=o.index,c=s[f],h=l?"x":"y";o[h+"LabelVal"]=c.s,o.percentInitial=c.begR,o.percentInitialLabel=fH(c.begR,1),o.percentPrevious=c.difR,o.percentPreviousLabel=fH(c.difR,1),o.percentTotal=c.sumR,o.percentTotalLabel=fH(c.sumR,1);var d=c.hi||u.hoverinfo,p=[];if(d&&d!=="none"&&d!=="skip"){var _=d==="all",b=d.split("+"),v=function(k){return _||b.indexOf(k)!==-1};v("percent initial")&&p.push(o.percentInitialLabel+" of initial"),v("percent previous")&&p.push(o.percentPreviousLabel+" of previous"),v("percent total")&&p.push(o.percentTotalLabel+" of total")}return o.extraText=p.join("
"),o.color=R3t(u,c),[o]}};function R3t(e,t){var r=e.marker,n=t.mc||r.color,i=t.mlc||r.line.color,a=t.mlw||r.line.width;if(Qwe(n))return n;if(Qwe(i)&&a)return i}});var i3e=Ae((qhr,r3e)=>{"use strict";r3e.exports=function(t,r){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"percentInitial"in r&&(t.percentInitial=r.percentInitial),"percentPrevious"in r&&(t.percentPrevious=r.percentPrevious),"percentTotal"in r&&(t.percentTotal=r.percentTotal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var a3e=Ae((Nhr,n3e)=>{"use strict";n3e.exports={attributes:nH(),layoutAttributes:aH(),supplyDefaults:sH().supplyDefaults,crossTraceDefaults:sH().crossTraceDefaults,supplyLayoutDefaults:Fwe(),calc:Vwe(),crossTraceCalc:Wwe(),plot:Ywe(),style:$we().style,hoverPoints:t3e(),eventData:i3e(),selectPoints:kT(),moduleType:"trace",name:"funnel",basePlotModule:Ah(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var s3e=Ae((Uhr,o3e)=>{"use strict";o3e.exports=a3e()});var u3e=Ae((Vhr,l3e)=>{"use strict";l3e.exports={eventDataKeys:["initial","delta","final"]}});var dH=Ae((Ghr,d3e)=>{"use strict";var Ec=Ly(),cH=Zc().line,D3t=Gf(),f3e=jc().axisHoverFormat,{hovertemplateAttrs:F3t,texttemplateAttrs:B3t,templatefallbackAttrs:c3e}=Ff(),h3e=u3e(),jT=Su().extendFlat,O3t=jl();function hH(e){return{marker:{color:jT({},Ec.marker.color,{arrayOk:!1,editType:"style"}),line:{color:jT({},Ec.marker.line.color,{arrayOk:!1,editType:"style"}),width:jT({},Ec.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}d3e.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:Ec.x,x0:Ec.x0,dx:Ec.dx,y:Ec.y,y0:Ec.y0,dy:Ec.dy,xperiod:Ec.xperiod,yperiod:Ec.yperiod,xperiod0:Ec.xperiod0,yperiod0:Ec.yperiod0,xperiodalignment:Ec.xperiodalignment,yperiodalignment:Ec.yperiodalignment,xhoverformat:f3e("x"),yhoverformat:f3e("y"),hovertext:Ec.hovertext,hovertemplate:F3t({},{keys:h3e.eventDataKeys}),hovertemplatefallback:c3e(),hoverinfo:jT({},D3t.hoverinfo,{flags:["name","x","y","text","initial","delta","final"]}),textinfo:{valType:"flaglist",flags:["label","text","initial","delta","final"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:B3t({editType:"plot"},{keys:h3e.eventDataKeys.concat(["label"])}),texttemplatefallback:c3e({editType:"plot"}),text:Ec.text,textposition:Ec.textposition,insidetextanchor:Ec.insidetextanchor,textangle:Ec.textangle,textfont:Ec.textfont,insidetextfont:Ec.insidetextfont,outsidetextfont:Ec.outsidetextfont,constraintext:Ec.constraintext,cliponaxis:Ec.cliponaxis,orientation:Ec.orientation,offset:Ec.offset,width:Ec.width,increasing:hH("increasing"),decreasing:hH("decreasing"),totals:hH("intermediate sums and total"),connector:{line:{color:jT({},cH.color,{dflt:O3t.defaultLine}),width:jT({},cH.width,{editType:"plot"}),dash:cH.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:Ec.offsetgroup,alignmentgroup:Ec.alignmentgroup,zorder:Ec.zorder}});var pH=Ae((Hhr,p3e)=>{"use strict";p3e.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc"},waterfallgap:{valType:"number",min:0,max:1,editType:"calc"},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var XT=Ae((Whr,v3e)=>{"use strict";v3e.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}});var mH=Ae((jhr,_3e)=>{"use strict";var m3e=ei(),q3t=Hb(),N3t=r0().handleText,U3t=eT(),V3t=zm(),y3e=dH(),G3t=jl(),g3e=XT(),H3t=g3e.INCREASING.COLOR,W3t=g3e.DECREASING.COLOR,j3t="#4499FF";function vH(e,t,r){e(t+".marker.color",r),e(t+".marker.line.color",G3t.defaultLine),e(t+".marker.line.width")}function X3t(e,t,r,n){function i(l,f){return m3e.coerce(e,t,y3e,l,f)}var a=U3t(e,t,n,i);if(!a){t.visible=!1;return}V3t(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("measure"),i("orientation",t.x&&!t.y?"h":"v"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var o=i("textposition");N3t(e,t,n,i,o,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&(i("texttemplate"),i("texttemplatefallback"),t.texttemplate||i("textinfo")),vH(i,"increasing",H3t),vH(i,"decreasing",W3t),vH(i,"totals",j3t);var s=i("connector.visible");if(s){i("connector.mode");var u=i("connector.line.width");u&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function Z3t(e,t){var r,n;function i(o){return m3e.coerce(n._input,n,y3e,o)}if(t.waterfallmode==="group")for(var a=0;a{"use strict";var Y3t=ei(),K3t=pH();x3e.exports=function(e,t,r){var n=!1;function i(s,u){return Y3t.coerce(e,t,K3t,s,u)}for(var a=0;a{"use strict";var w3e=wu(),T3e=Rm(),A3e=ei().mergeArray,J3t=F0(),S3e=rf().BADNUM;function yH(e){return e==="a"||e==="absolute"}function gH(e){return e==="t"||e==="total"}M3e.exports=function(t,r){var n=w3e.getFromId(t,r.xaxis||"x"),i=w3e.getFromId(t,r.yaxis||"y"),a,o,s,u,l,f;r.orientation==="h"?(a=n.makeCalcdata(r,"x"),s=i.makeCalcdata(r,"y"),u=T3e(r,i,"y",s),l=!!r.yperiodalignment,f="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),u=T3e(r,n,"x",s),l=!!r.xperiodalignment,f="x"),o=u.vals;for(var c=Math.min(o.length,a.length),h=new Array(c),d=0,p,_=!1,b=0;b{"use strict";var k3e=Wb().setGroupPositions;C3e.exports=function(t,r){var n=t._fullLayout,i=t._fullData,a=t.calcdata,o=r.xaxis,s=r.yaxis,u=[],l=[],f=[],c,h;for(h=0;h{"use strict";var P3e=Jl(),NR=ei(),$3t=Mu(),ZT=rf().BADNUM,Q3t=n2(),eTt=Tp().clearMinTextSize;z3e.exports=function(t,r,n,i){var a=t._fullLayout;eTt("waterfall",a),Q3t.plot(t,r,n,i,{mode:a.waterfallmode,norm:a.waterfallmode,gap:a.waterfallgap,groupgap:a.waterfallgroupgap}),tTt(t,r,n,i)};function tTt(e,t,r,n){var i=t.xaxis,a=t.yaxis;NR.makeTraceGroups(n,r,"trace bars").each(function(o){var s=P3e.select(this),u=o[0].trace,l=NR.ensureSingle(s,"g","lines");if(!u.connector||!u.connector.visible){l.remove();return}var f=u.orientation==="h",c=u.connector.mode,h=l.selectAll("g.line").data(NR.identity);h.enter().append("g").classed("line",!0),h.exit().remove();var d=h.size();h.each(function(p,_){if(!(_!==d-1&&!p.cNext)){var b=rTt(p,i,a,f),v=b[0],k=b[1],E="";v[0]!==ZT&&k[0]!==ZT&&v[1]!==ZT&&k[1]!==ZT&&(c==="spanning"&&!p.isSum&&_>0&&(f?E+="M"+v[0]+","+k[1]+"V"+k[0]:E+="M"+v[1]+","+k[0]+"H"+v[0]),c!=="between"&&(p.isSum||_{"use strict";var UR=Jl(),R3e=Mu(),D3e=jl(),iTt=N1().DESELECTDIM,nTt=N0(),aTt=Tp().resizeText,oTt=nTt.styleTextPoints;function sTt(e,t,r){var n=r||UR.select(e).selectAll('g[class^="waterfalllayer"]').selectAll("g.trace");aTt(e,n,"waterfall"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=UR.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var u=o[s.dir].marker;UR.select(this).call(D3e.fill,u.color).call(D3e.stroke,u.line.color).call(R3e.dashLine,u.line.dash,u.line.width).style("opacity",o.selectedpoints&&!s.selected?iTt:1)}}),oTt(a,o,e),a.selectAll(".lines").each(function(){var s=o.connector.line;R3e.lineGroupStyle(UR.select(this).selectAll("path"),s.width,s.color,s.dash)})})}F3e.exports={style:sTt}});var V3e=Ae(($hr,U3e)=>{"use strict";var lTt=wu().hoverLabelText,O3e=jl().opacity,uTt=ET().hoverOnBars,q3e=XT(),N3e={increasing:q3e.INCREASING.SYMBOL,decreasing:q3e.DECREASING.SYMBOL};U3e.exports=function(t,r,n,i,a){var o=uTt(t,r,n,i,a);if(!o)return;var s=o.cd,u=s[0].trace,l=u.orientation==="h",f=l?"x":"y",c=l?t.xa:t.ya;function h(x){return lTt(c,x,u[f+"hoverformat"])}var d=o.index,p=s[d],_=p.isSum?p.b+p.s:p.rawS;o.initial=p.b+p.s-_,o.delta=_,o.final=o.initial+o.delta;var b=h(Math.abs(o.delta));o.deltaLabel=_<0?"("+b+")":b,o.finalLabel=h(o.final),o.initialLabel=h(o.initial);var v=p.hi||u.hoverinfo,k=[];if(v&&v!=="none"&&v!=="skip"){var E=v==="all",A=v.split("+"),L=function(x){return E||A.indexOf(x)!==-1};p.isSum||(L("final")&&(l?!L("x"):!L("y"))&&k.push(o.finalLabel),L("delta")&&(_<0?k.push(o.deltaLabel+" "+N3e.decreasing):k.push(o.deltaLabel+" "+N3e.increasing)),L("initial")&&k.push("Initial: "+o.initialLabel))}return k.length&&(o.extraText=k.join("
")),o.color=fTt(u,p),[o]};function fTt(e,t){var r=e[t.dir].marker,n=r.color,i=r.line.color,a=r.line.width;if(O3e(n))return n;if(O3e(i)&&a)return i}});var H3e=Ae((Qhr,G3e)=>{"use strict";G3e.exports=function(t,r){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"initial"in r&&(t.initial=r.initial),"delta"in r&&(t.delta=r.delta),"final"in r&&(t.final=r.final),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var j3e=Ae((edr,W3e)=>{"use strict";W3e.exports={attributes:dH(),layoutAttributes:pH(),supplyDefaults:mH().supplyDefaults,crossTraceDefaults:mH().crossTraceDefaults,supplyLayoutDefaults:b3e(),calc:E3e(),crossTraceCalc:L3e(),plot:I3e(),style:B3e().style,hoverPoints:V3e(),eventData:H3e(),selectPoints:kT(),moduleType:"trace",name:"waterfall",basePlotModule:Ah(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var Z3e=Ae((tdr,X3e)=>{"use strict";X3e.exports=j3e()});var YT=Ae((rdr,Y3e)=>{"use strict";Y3e.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(e){return e.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(e){var t=e.slice(0,3);return t[1]=t[1]+"%",t[2]=t[2]+"%",t},suffix:["\xB0","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(e){var t=e.slice(0,4);return t[1]=t[1]+"%",t[2]=t[2]+"%",t},suffix:["\xB0","%","%",""]}}}});var _H=Ae((idr,J3e)=>{"use strict";var cTt=Gf(),hTt=Zc().zorder,{hovertemplateAttrs:dTt,templatefallbackAttrs:pTt}=Ff(),K3e=Su().extendFlat,vTt=YT().colormodel,NE=["rgb","rgba","rgba256","hsl","hsla"],mTt=[],yTt=[];for(KT=0;KT{"use strict";var gTt=ei(),_Tt=_H(),$3e=YT(),xTt=Pg().IMAGE_URL_PREFIX;Q3e.exports=function(t,r){function n(o,s){return gTt.coerce(t,r,_Tt,o,s)}n("source"),r.source&&!r.source.match(xTt)&&delete r.source,r._hasSource=!!r.source;var i=n("z");if(r._hasZ=!(i===void 0||!i.length||!i[0]||!i[0].length),!r._hasZ&&!r._hasSource){r.visible=!1;return}n("x0"),n("y0"),n("dx"),n("dy");var a;r._hasZ?(n("colormodel","rgb"),a=$3e.colormodel[r.colormodel],n("zmin",a.zminDflt||a.min),n("zmax",a.zmaxDflt||a.max)):r._hasSource&&(r.colormodel="rgba256",a=$3e.colormodel[r.colormodel],r.zmin=a.zminDflt,r.zmax=a.zmaxDflt),n("zsmooth"),n("text"),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback"),r._length=null,n("zorder")}});var Ug=Ae((adr,xH)=>{typeof Object.create=="function"?xH.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:xH.exports=function(t,r){if(r){t.super_=r;var n=function(){};n.prototype=r.prototype,t.prototype=new n,t.prototype.constructor=t}}});var bH=Ae((odr,tTe)=>{tTe.exports=vb().EventEmitter});var nTe=Ae(VR=>{"use strict";VR.byteLength=wTt;VR.toByteArray=ATt;VR.fromByteArray=ETt;var By=[],X0=[],bTt=typeof Uint8Array!="undefined"?Uint8Array:Array,wH="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(l2=0,rTe=wH.length;l20)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");r===-1&&(r=t);var n=r===t?0:4-r%4;return[r,n]}function wTt(e){var t=iTe(e),r=t[0],n=t[1];return(r+n)*3/4-n}function TTt(e,t,r){return(t+r)*3/4-r}function ATt(e){var t,r=iTe(e),n=r[0],i=r[1],a=new bTt(TTt(e,n,i)),o=0,s=i>0?n-4:n,u;for(u=0;u>16&255,a[o++]=t>>8&255,a[o++]=t&255;return i===2&&(t=X0[e.charCodeAt(u)]<<2|X0[e.charCodeAt(u+1)]>>4,a[o++]=t&255),i===1&&(t=X0[e.charCodeAt(u)]<<10|X0[e.charCodeAt(u+1)]<<4|X0[e.charCodeAt(u+2)]>>2,a[o++]=t>>8&255,a[o++]=t&255),a}function STt(e){return By[e>>18&63]+By[e>>12&63]+By[e>>6&63]+By[e&63]}function MTt(e,t,r){for(var n,i=[],a=t;as?s:o+a));return n===1?(t=e[r-1],i.push(By[t>>2]+By[t<<4&63]+"==")):n===2&&(t=(e[r-2]<<8)+e[r-1],i.push(By[t>>10]+By[t>>4&63]+By[t<<2&63]+"=")),i.join("")}});var aTe=Ae(TH=>{TH.read=function(e,t,r,n,i){var a,o,s=i*8-n-1,u=(1<>1,f=-7,c=r?i-1:0,h=r?-1:1,d=e[t+c];for(c+=h,a=d&(1<<-f)-1,d>>=-f,f+=s;f>0;a=a*256+e[t+c],c+=h,f-=8);for(o=a&(1<<-f)-1,a>>=-f,f+=n;f>0;o=o*256+e[t+c],c+=h,f-=8);if(a===0)a=1-l;else{if(a===u)return o?NaN:(d?-1:1)*(1/0);o=o+Math.pow(2,n),a=a-l}return(d?-1:1)*o*Math.pow(2,a-n)};TH.write=function(e,t,r,n,i,a){var o,s,u,l=a*8-i-1,f=(1<>1,h=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:a-1,p=n?1:-1,_=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=f):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),o+c>=1?t+=h/u:t+=h*Math.pow(2,1-c),t*u>=2&&(o++,u/=2),o+c>=f?(s=0,o=f):o+c>=1?(s=(t*u-1)*Math.pow(2,i),o=o+c):(s=t*Math.pow(2,c-1)*Math.pow(2,i),o=0));i>=8;e[r+d]=s&255,d+=p,s/=256,i-=8);for(o=o<0;e[r+d]=o&255,d+=p,o/=256,l-=8);e[r+d-p]|=_*128}});var f2=Ae(eA=>{"use strict";var AH=nTe(),$T=aTe(),oTe=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;eA.Buffer=ol;eA.SlowBuffer=ITt;eA.INSPECT_MAX_BYTES=50;var GR=2147483647;eA.kMaxLength=GR;ol.TYPED_ARRAY_SUPPORT=kTt();!ol.TYPED_ARRAY_SUPPORT&&typeof console!="undefined"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function kTt(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch(e){return!1}}Object.defineProperty(ol.prototype,"parent",{enumerable:!0,get:function(){if(ol.isBuffer(this))return this.buffer}});Object.defineProperty(ol.prototype,"offset",{enumerable:!0,get:function(){if(ol.isBuffer(this))return this.byteOffset}});function Vg(e){if(e>GR)throw new RangeError('The value "'+e+'" is invalid for option "size"');let t=new Uint8Array(e);return Object.setPrototypeOf(t,ol.prototype),t}function ol(e,t,r){if(typeof e=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return kH(e)}return fTe(e,t,r)}ol.poolSize=8192;function fTe(e,t,r){if(typeof e=="string")return LTt(e,t);if(ArrayBuffer.isView(e))return PTt(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(Oy(e,ArrayBuffer)||e&&Oy(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(Oy(e,SharedArrayBuffer)||e&&Oy(e.buffer,SharedArrayBuffer)))return MH(e,t,r);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=e.valueOf&&e.valueOf();if(n!=null&&n!==e)return ol.from(n,t,r);let i=zTt(e);if(i)return i;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return ol.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}ol.from=function(e,t,r){return fTe(e,t,r)};Object.setPrototypeOf(ol.prototype,Uint8Array.prototype);Object.setPrototypeOf(ol,Uint8Array);function cTe(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function CTt(e,t,r){return cTe(e),e<=0?Vg(e):t!==void 0?typeof r=="string"?Vg(e).fill(t,r):Vg(e).fill(t):Vg(e)}ol.alloc=function(e,t,r){return CTt(e,t,r)};function kH(e){return cTe(e),Vg(e<0?0:CH(e)|0)}ol.allocUnsafe=function(e){return kH(e)};ol.allocUnsafeSlow=function(e){return kH(e)};function LTt(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!ol.isEncoding(t))throw new TypeError("Unknown encoding: "+t);let r=hTe(e,t)|0,n=Vg(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}function SH(e){let t=e.length<0?0:CH(e.length)|0,r=Vg(t);for(let n=0;n=GR)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+GR.toString(16)+" bytes");return e|0}function ITt(e){return+e!=e&&(e=0),ol.alloc(+e)}ol.isBuffer=function(t){return t!=null&&t._isBuffer===!0&&t!==ol.prototype};ol.compare=function(t,r){if(Oy(t,Uint8Array)&&(t=ol.from(t,t.offset,t.byteLength)),Oy(r,Uint8Array)&&(r=ol.from(r,r.offset,r.byteLength)),!ol.isBuffer(t)||!ol.isBuffer(r))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===r)return 0;let n=t.length,i=r.length;for(let a=0,o=Math.min(n,i);ai.length?(ol.isBuffer(o)||(o=ol.from(o)),o.copy(i,a)):Uint8Array.prototype.set.call(i,o,a);else if(ol.isBuffer(o))o.copy(i,a);else throw new TypeError('"list" argument must be an Array of Buffers');a+=o.length}return i};function hTe(e,t){if(ol.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||Oy(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let r=e.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return EH(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return bTe(e).length;default:if(i)return n?-1:EH(e).length;t=(""+t).toLowerCase(),i=!0}}ol.byteLength=hTe;function RTt(e,t,r){let n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,t>>>=0,r<=t))return"";for(e||(e="utf8");;)switch(e){case"hex":return HTt(this,t,r);case"utf8":case"utf-8":return pTe(this,t,r);case"ascii":return VTt(this,t,r);case"latin1":case"binary":return GTt(this,t,r);case"base64":return NTt(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return WTt(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}ol.prototype._isBuffer=!0;function u2(e,t,r){let n=e[t];e[t]=e[r],e[r]=n}ol.prototype.swap16=function(){let t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let r=0;rr&&(t+=" ... "),""};oTe&&(ol.prototype[oTe]=ol.prototype.inspect);ol.prototype.compare=function(t,r,n,i,a){if(Oy(t,Uint8Array)&&(t=ol.from(t,t.offset,t.byteLength)),!ol.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(r===void 0&&(r=0),n===void 0&&(n=t?t.length:0),i===void 0&&(i=0),a===void 0&&(a=this.length),r<0||n>t.length||i<0||a>this.length)throw new RangeError("out of range index");if(i>=a&&r>=n)return 0;if(i>=a)return-1;if(r>=n)return 1;if(r>>>=0,n>>>=0,i>>>=0,a>>>=0,this===t)return 0;let o=a-i,s=n-r,u=Math.min(o,s),l=this.slice(i,a),f=t.slice(r,n);for(let c=0;c2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,PH(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof t=="string"&&(t=ol.from(t,n)),ol.isBuffer(t))return t.length===0?-1:sTe(e,t,r,n,i);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):sTe(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function sTe(e,t,r,n,i){let a=1,o=e.length,s=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(e.length<2||t.length<2)return-1;a=2,o/=2,s/=2,r/=2}function u(f,c){return a===1?f[c]:f.readUInt16BE(c*a)}let l;if(i){let f=-1;for(l=r;lo&&(r=o-s),l=r;l>=0;l--){let f=!0;for(let c=0;ci&&(n=i)):n=i;let a=t.length;n>a/2&&(n=a/2);let o;for(o=0;o>>0,isFinite(n)?(n=n>>>0,i===void 0&&(i="utf8")):(i=n,n=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let a=this.length-r;if((n===void 0||n>a)&&(n=a),t.length>0&&(n<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");let o=!1;for(;;)switch(i){case"hex":return DTt(this,t,r,n);case"utf8":case"utf-8":return FTt(this,t,r,n);case"ascii":case"latin1":case"binary":return BTt(this,t,r,n);case"base64":return OTt(this,t,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return qTt(this,t,r,n);default:if(o)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),o=!0}};ol.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function NTt(e,t,r){return t===0&&r===e.length?AH.fromByteArray(e):AH.fromByteArray(e.slice(t,r))}function pTe(e,t,r){r=Math.min(e.length,r);let n=[],i=t;for(;i239?4:a>223?3:a>191?2:1;if(i+s<=r){let u,l,f,c;switch(s){case 1:a<128&&(o=a);break;case 2:u=e[i+1],(u&192)===128&&(c=(a&31)<<6|u&63,c>127&&(o=c));break;case 3:u=e[i+1],l=e[i+2],(u&192)===128&&(l&192)===128&&(c=(a&15)<<12|(u&63)<<6|l&63,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:u=e[i+1],l=e[i+2],f=e[i+3],(u&192)===128&&(l&192)===128&&(f&192)===128&&(c=(a&15)<<18|(u&63)<<12|(l&63)<<6|f&63,c>65535&&c<1114112&&(o=c))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),i+=s}return UTt(n)}var lTe=4096;function UTt(e){let t=e.length;if(t<=lTe)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn)&&(r=n);let i="";for(let a=t;an&&(t=n),r<0?(r+=n,r<0&&(r=0)):r>n&&(r=n),rr)throw new RangeError("Trying to access beyond buffer length")}ol.prototype.readUintLE=ol.prototype.readUIntLE=function(t,r,n){t=t>>>0,r=r>>>0,n||rp(t,r,this.length);let i=this[t],a=1,o=0;for(;++o>>0,r=r>>>0,n||rp(t,r,this.length);let i=this[t+--r],a=1;for(;r>0&&(a*=256);)i+=this[t+--r]*a;return i};ol.prototype.readUint8=ol.prototype.readUInt8=function(t,r){return t=t>>>0,r||rp(t,1,this.length),this[t]};ol.prototype.readUint16LE=ol.prototype.readUInt16LE=function(t,r){return t=t>>>0,r||rp(t,2,this.length),this[t]|this[t+1]<<8};ol.prototype.readUint16BE=ol.prototype.readUInt16BE=function(t,r){return t=t>>>0,r||rp(t,2,this.length),this[t]<<8|this[t+1]};ol.prototype.readUint32LE=ol.prototype.readUInt32LE=function(t,r){return t=t>>>0,r||rp(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+this[t+3]*16777216};ol.prototype.readUint32BE=ol.prototype.readUInt32BE=function(t,r){return t=t>>>0,r||rp(t,4,this.length),this[t]*16777216+(this[t+1]<<16|this[t+2]<<8|this[t+3])};ol.prototype.readBigUInt64LE=P_(function(t){t=t>>>0,QT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&UE(t,this.length-8);let i=r+this[++t]*2**8+this[++t]*2**16+this[++t]*2**24,a=this[++t]+this[++t]*2**8+this[++t]*2**16+n*2**24;return BigInt(i)+(BigInt(a)<>>0,QT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&UE(t,this.length-8);let i=r*2**24+this[++t]*2**16+this[++t]*2**8+this[++t],a=this[++t]*2**24+this[++t]*2**16+this[++t]*2**8+n;return(BigInt(i)<>>0,r=r>>>0,n||rp(t,r,this.length);let i=this[t],a=1,o=0;for(;++o=a&&(i-=Math.pow(2,8*r)),i};ol.prototype.readIntBE=function(t,r,n){t=t>>>0,r=r>>>0,n||rp(t,r,this.length);let i=r,a=1,o=this[t+--i];for(;i>0&&(a*=256);)o+=this[t+--i]*a;return a*=128,o>=a&&(o-=Math.pow(2,8*r)),o};ol.prototype.readInt8=function(t,r){return t=t>>>0,r||rp(t,1,this.length),this[t]&128?(255-this[t]+1)*-1:this[t]};ol.prototype.readInt16LE=function(t,r){t=t>>>0,r||rp(t,2,this.length);let n=this[t]|this[t+1]<<8;return n&32768?n|4294901760:n};ol.prototype.readInt16BE=function(t,r){t=t>>>0,r||rp(t,2,this.length);let n=this[t+1]|this[t]<<8;return n&32768?n|4294901760:n};ol.prototype.readInt32LE=function(t,r){return t=t>>>0,r||rp(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24};ol.prototype.readInt32BE=function(t,r){return t=t>>>0,r||rp(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]};ol.prototype.readBigInt64LE=P_(function(t){t=t>>>0,QT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&UE(t,this.length-8);let i=this[t+4]+this[t+5]*2**8+this[t+6]*2**16+(n<<24);return(BigInt(i)<>>0,QT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&UE(t,this.length-8);let i=(r<<24)+this[++t]*2**16+this[++t]*2**8+this[++t];return(BigInt(i)<>>0,r||rp(t,4,this.length),$T.read(this,t,!0,23,4)};ol.prototype.readFloatBE=function(t,r){return t=t>>>0,r||rp(t,4,this.length),$T.read(this,t,!1,23,4)};ol.prototype.readDoubleLE=function(t,r){return t=t>>>0,r||rp(t,8,this.length),$T.read(this,t,!0,52,8)};ol.prototype.readDoubleBE=function(t,r){return t=t>>>0,r||rp(t,8,this.length),$T.read(this,t,!1,52,8)};function Iv(e,t,r,n,i,a){if(!ol.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}ol.prototype.writeUintLE=ol.prototype.writeUIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,n=n>>>0,!i){let s=Math.pow(2,8*n)-1;Iv(this,t,r,n,s,0)}let a=1,o=0;for(this[r]=t&255;++o>>0,n=n>>>0,!i){let s=Math.pow(2,8*n)-1;Iv(this,t,r,n,s,0)}let a=n-1,o=1;for(this[r+a]=t&255;--a>=0&&(o*=256);)this[r+a]=t/o&255;return r+n};ol.prototype.writeUint8=ol.prototype.writeUInt8=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,1,255,0),this[r]=t&255,r+1};ol.prototype.writeUint16LE=ol.prototype.writeUInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,2,65535,0),this[r]=t&255,this[r+1]=t>>>8,r+2};ol.prototype.writeUint16BE=ol.prototype.writeUInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,2,65535,0),this[r]=t>>>8,this[r+1]=t&255,r+2};ol.prototype.writeUint32LE=ol.prototype.writeUInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,4,4294967295,0),this[r+3]=t>>>24,this[r+2]=t>>>16,this[r+1]=t>>>8,this[r]=t&255,r+4};ol.prototype.writeUint32BE=ol.prototype.writeUInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,4,4294967295,0),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};function vTe(e,t,r,n,i){xTe(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r++]=a,a=a>>8,e[r++]=a,a=a>>8,e[r++]=a,a=a>>8,e[r++]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,r}function mTe(e,t,r,n,i){xTe(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r+7]=a,a=a>>8,e[r+6]=a,a=a>>8,e[r+5]=a,a=a>>8,e[r+4]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=o,o=o>>8,e[r+2]=o,o=o>>8,e[r+1]=o,o=o>>8,e[r]=o,r+8}ol.prototype.writeBigUInt64LE=P_(function(t,r=0){return vTe(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});ol.prototype.writeBigUInt64BE=P_(function(t,r=0){return mTe(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});ol.prototype.writeIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let u=Math.pow(2,8*n-1);Iv(this,t,r,n,u-1,-u)}let a=0,o=1,s=0;for(this[r]=t&255;++a>0)-s&255;return r+n};ol.prototype.writeIntBE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let u=Math.pow(2,8*n-1);Iv(this,t,r,n,u-1,-u)}let a=n-1,o=1,s=0;for(this[r+a]=t&255;--a>=0&&(o*=256);)t<0&&s===0&&this[r+a+1]!==0&&(s=1),this[r+a]=(t/o>>0)-s&255;return r+n};ol.prototype.writeInt8=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,1,127,-128),t<0&&(t=255+t+1),this[r]=t&255,r+1};ol.prototype.writeInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,2,32767,-32768),this[r]=t&255,this[r+1]=t>>>8,r+2};ol.prototype.writeInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,2,32767,-32768),this[r]=t>>>8,this[r+1]=t&255,r+2};ol.prototype.writeInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,4,2147483647,-2147483648),this[r]=t&255,this[r+1]=t>>>8,this[r+2]=t>>>16,this[r+3]=t>>>24,r+4};ol.prototype.writeInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Iv(this,t,r,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};ol.prototype.writeBigInt64LE=P_(function(t,r=0){return vTe(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});ol.prototype.writeBigInt64BE=P_(function(t,r=0){return mTe(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function yTe(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function gTe(e,t,r,n,i){return t=+t,r=r>>>0,i||yTe(e,t,r,4,34028234663852886e22,-34028234663852886e22),$T.write(e,t,r,n,23,4),r+4}ol.prototype.writeFloatLE=function(t,r,n){return gTe(this,t,r,!0,n)};ol.prototype.writeFloatBE=function(t,r,n){return gTe(this,t,r,!1,n)};function _Te(e,t,r,n,i){return t=+t,r=r>>>0,i||yTe(e,t,r,8,17976931348623157e292,-17976931348623157e292),$T.write(e,t,r,n,52,8),r+8}ol.prototype.writeDoubleLE=function(t,r,n){return _Te(this,t,r,!0,n)};ol.prototype.writeDoubleBE=function(t,r,n){return _Te(this,t,r,!1,n)};ol.prototype.copy=function(t,r,n,i){if(!ol.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&i!==0&&(i=this.length),r>=t.length&&(r=t.length),r||(r=0),i>0&&i=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),t.length-r>>0,n=n===void 0?this.length:n>>>0,t||(t=0);let a;if(typeof t=="number")for(a=r;a2**32?i=uTe(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=uTe(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n},RangeError);function uTe(e){let t="",r=e.length,n=e[0]==="-"?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function jTt(e,t,r){QT(t,"offset"),(e[t]===void 0||e[t+r]===void 0)&&UE(t,e.length-(r+1))}function xTe(e,t,r,n,i,a){if(e>r||e3?t===0||t===BigInt(0)?s=`>= 0${o} and < 2${o} ** ${(a+1)*8}${o}`:s=`>= -(2${o} ** ${(a+1)*8-1}${o}) and < 2 ** ${(a+1)*8-1}${o}`:s=`>= ${t}${o} and <= ${r}${o}`,new JT.ERR_OUT_OF_RANGE("value",s,e)}jTt(n,i,a)}function QT(e,t){if(typeof e!="number")throw new JT.ERR_INVALID_ARG_TYPE(t,"number",e)}function UE(e,t,r){throw Math.floor(e)!==e?(QT(e,r),new JT.ERR_OUT_OF_RANGE(r||"offset","an integer",e)):t<0?new JT.ERR_BUFFER_OUT_OF_BOUNDS:new JT.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}var XTt=/[^+/0-9A-Za-z-_]/g;function ZTt(e){if(e=e.split("=")[0],e=e.trim().replace(XTt,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function EH(e,t){t=t||1/0;let r,n=e.length,i=null,a=[];for(let o=0;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}else if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,r&63|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return a}function YTt(e){let t=[];for(let r=0;r>8,i=r%256,a.push(i),a.push(n);return a}function bTe(e){return AH.toByteArray(ZTt(e))}function HR(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function Oy(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function PH(e){return e!==e}var JTt=function(){let e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){let n=r*16;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function P_(e){return typeof BigInt=="undefined"?$Tt:e}function $Tt(){throw new Error("BigInt not supported")}});var WR=Ae((cdr,wTe)=>{"use strict";wTe.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var t={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var i=42;t[r]=i;for(var a in t)return!1;if(typeof Object.keys=="function"&&Object.keys(t).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(t).length!==0)return!1;var o=Object.getOwnPropertySymbols(t);if(o.length!==1||o[0]!==r||!Object.prototype.propertyIsEnumerable.call(t,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var s=Object.getOwnPropertyDescriptor(t,r);if(s.value!==i||s.enumerable!==!0)return!1}return!0}});var VE=Ae((hdr,TTe)=>{"use strict";var QTt=WR();TTe.exports=function(){return QTt()&&!!Symbol.toStringTag}});var zH=Ae((ddr,ATe)=>{"use strict";ATe.exports=Object});var MTe=Ae((pdr,STe)=>{"use strict";STe.exports=Error});var kTe=Ae((vdr,ETe)=>{"use strict";ETe.exports=EvalError});var LTe=Ae((mdr,CTe)=>{"use strict";CTe.exports=RangeError});var zTe=Ae((ydr,PTe)=>{"use strict";PTe.exports=ReferenceError});var IH=Ae((gdr,ITe)=>{"use strict";ITe.exports=SyntaxError});var tA=Ae((_dr,RTe)=>{"use strict";RTe.exports=TypeError});var FTe=Ae((xdr,DTe)=>{"use strict";DTe.exports=URIError});var OTe=Ae((bdr,BTe)=>{"use strict";BTe.exports=Math.abs});var NTe=Ae((wdr,qTe)=>{"use strict";qTe.exports=Math.floor});var VTe=Ae((Tdr,UTe)=>{"use strict";UTe.exports=Math.max});var HTe=Ae((Adr,GTe)=>{"use strict";GTe.exports=Math.min});var jTe=Ae((Sdr,WTe)=>{"use strict";WTe.exports=Math.pow});var ZTe=Ae((Mdr,XTe)=>{"use strict";XTe.exports=Math.round});var KTe=Ae((Edr,YTe)=>{"use strict";YTe.exports=Number.isNaN||function(t){return t!==t}});var $Te=Ae((kdr,JTe)=>{"use strict";var eAt=KTe();JTe.exports=function(t){return eAt(t)||t===0?t:t<0?-1:1}});var eAe=Ae((Cdr,QTe)=>{"use strict";QTe.exports=Object.getOwnPropertyDescriptor});var c2=Ae((Ldr,tAe)=>{"use strict";var jR=eAe();if(jR)try{jR([],"length")}catch(e){jR=null}tAe.exports=jR});var GE=Ae((Pdr,rAe)=>{"use strict";var XR=Object.defineProperty||!1;if(XR)try{XR({},"a",{value:1})}catch(e){XR=!1}rAe.exports=XR});var aAe=Ae((zdr,nAe)=>{"use strict";var iAe=typeof Symbol!="undefined"&&Symbol,tAt=WR();nAe.exports=function(){return typeof iAe!="function"||typeof Symbol!="function"||typeof iAe("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:tAt()}});var RH=Ae((Idr,oAe)=>{"use strict";oAe.exports=typeof Reflect!="undefined"&&Reflect.getPrototypeOf||null});var DH=Ae((Rdr,sAe)=>{"use strict";var rAt=zH();sAe.exports=rAt.getPrototypeOf||null});var fAe=Ae((Ddr,uAe)=>{"use strict";var iAt="Function.prototype.bind called on incompatible ",nAt=Object.prototype.toString,aAt=Math.max,oAt="[object Function]",lAe=function(t,r){for(var n=[],i=0;i{"use strict";var uAt=fAe();cAe.exports=Function.prototype.bind||uAt});var ZR=Ae((Bdr,hAe)=>{"use strict";hAe.exports=Function.prototype.call});var FH=Ae((Odr,dAe)=>{"use strict";dAe.exports=Function.prototype.apply});var vAe=Ae((qdr,pAe)=>{"use strict";pAe.exports=typeof Reflect!="undefined"&&Reflect&&Reflect.apply});var yAe=Ae((Ndr,mAe)=>{"use strict";var fAt=rA(),cAt=FH(),hAt=ZR(),dAt=vAe();mAe.exports=dAt||fAt.call(hAt,cAt)});var _Ae=Ae((Udr,gAe)=>{"use strict";var pAt=rA(),vAt=tA(),mAt=ZR(),yAt=yAe();gAe.exports=function(t){if(t.length<1||typeof t[0]!="function")throw new vAt("a function is required");return yAt(pAt,mAt,t)}});var SAe=Ae((Vdr,AAe)=>{"use strict";var gAt=_Ae(),xAe=c2(),wAe;try{wAe=[].__proto__===Array.prototype}catch(e){if(!e||typeof e!="object"||!("code"in e)||e.code!=="ERR_PROTO_ACCESS")throw e}var BH=!!wAe&&xAe&&xAe(Object.prototype,"__proto__"),TAe=Object,bAe=TAe.getPrototypeOf;AAe.exports=BH&&typeof BH.get=="function"?gAt([BH.get]):typeof bAe=="function"?function(t){return bAe(t==null?t:TAe(t))}:!1});var LAe=Ae((Gdr,CAe)=>{"use strict";var MAe=RH(),EAe=DH(),kAe=SAe();CAe.exports=MAe?function(t){return MAe(t)}:EAe?function(t){if(!t||typeof t!="object"&&typeof t!="function")throw new TypeError("getProto: not an object");return EAe(t)}:kAe?function(t){return kAe(t)}:null});var zAe=Ae((Hdr,PAe)=>{"use strict";var _At=Function.prototype.call,xAt=Object.prototype.hasOwnProperty,bAt=rA();PAe.exports=bAt.call(_At,xAt)});var JR=Ae((Wdr,OAe)=>{"use strict";var Jf,wAt=zH(),TAt=MTe(),AAt=kTe(),SAt=LTe(),MAt=zTe(),oA=IH(),aA=tA(),EAt=FTe(),kAt=OTe(),CAt=NTe(),LAt=VTe(),PAt=HTe(),zAt=jTe(),IAt=ZTe(),RAt=$Te(),FAe=Function,OH=function(e){try{return FAe('"use strict"; return ('+e+").constructor;")()}catch(t){}},HE=c2(),DAt=GE(),qH=function(){throw new aA},FAt=HE?function(){try{return arguments.callee,qH}catch(e){try{return HE(arguments,"callee").get}catch(t){return qH}}}():qH,iA=aAe()(),ip=LAe(),BAt=DH(),OAt=RH(),BAe=FH(),WE=ZR(),nA={},qAt=typeof Uint8Array=="undefined"||!ip?Jf:ip(Uint8Array),h2={__proto__:null,"%AggregateError%":typeof AggregateError=="undefined"?Jf:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer=="undefined"?Jf:ArrayBuffer,"%ArrayIteratorPrototype%":iA&&ip?ip([][Symbol.iterator]()):Jf,"%AsyncFromSyncIteratorPrototype%":Jf,"%AsyncFunction%":nA,"%AsyncGenerator%":nA,"%AsyncGeneratorFunction%":nA,"%AsyncIteratorPrototype%":nA,"%Atomics%":typeof Atomics=="undefined"?Jf:Atomics,"%BigInt%":typeof BigInt=="undefined"?Jf:BigInt,"%BigInt64Array%":typeof BigInt64Array=="undefined"?Jf:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array=="undefined"?Jf:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView=="undefined"?Jf:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":TAt,"%eval%":eval,"%EvalError%":AAt,"%Float16Array%":typeof Float16Array=="undefined"?Jf:Float16Array,"%Float32Array%":typeof Float32Array=="undefined"?Jf:Float32Array,"%Float64Array%":typeof Float64Array=="undefined"?Jf:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry=="undefined"?Jf:FinalizationRegistry,"%Function%":FAe,"%GeneratorFunction%":nA,"%Int8Array%":typeof Int8Array=="undefined"?Jf:Int8Array,"%Int16Array%":typeof Int16Array=="undefined"?Jf:Int16Array,"%Int32Array%":typeof Int32Array=="undefined"?Jf:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":iA&&ip?ip(ip([][Symbol.iterator]())):Jf,"%JSON%":typeof JSON=="object"?JSON:Jf,"%Map%":typeof Map=="undefined"?Jf:Map,"%MapIteratorPrototype%":typeof Map=="undefined"||!iA||!ip?Jf:ip(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":wAt,"%Object.getOwnPropertyDescriptor%":HE,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise=="undefined"?Jf:Promise,"%Proxy%":typeof Proxy=="undefined"?Jf:Proxy,"%RangeError%":SAt,"%ReferenceError%":MAt,"%Reflect%":typeof Reflect=="undefined"?Jf:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set=="undefined"?Jf:Set,"%SetIteratorPrototype%":typeof Set=="undefined"||!iA||!ip?Jf:ip(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer=="undefined"?Jf:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":iA&&ip?ip(""[Symbol.iterator]()):Jf,"%Symbol%":iA?Symbol:Jf,"%SyntaxError%":oA,"%ThrowTypeError%":FAt,"%TypedArray%":qAt,"%TypeError%":aA,"%Uint8Array%":typeof Uint8Array=="undefined"?Jf:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray=="undefined"?Jf:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array=="undefined"?Jf:Uint16Array,"%Uint32Array%":typeof Uint32Array=="undefined"?Jf:Uint32Array,"%URIError%":EAt,"%WeakMap%":typeof WeakMap=="undefined"?Jf:WeakMap,"%WeakRef%":typeof WeakRef=="undefined"?Jf:WeakRef,"%WeakSet%":typeof WeakSet=="undefined"?Jf:WeakSet,"%Function.prototype.call%":WE,"%Function.prototype.apply%":BAe,"%Object.defineProperty%":DAt,"%Object.getPrototypeOf%":BAt,"%Math.abs%":kAt,"%Math.floor%":CAt,"%Math.max%":LAt,"%Math.min%":PAt,"%Math.pow%":zAt,"%Math.round%":IAt,"%Math.sign%":RAt,"%Reflect.getPrototypeOf%":OAt};if(ip)try{null.error}catch(e){IAe=ip(ip(e)),h2["%Error.prototype%"]=IAe}var IAe,NAt=function e(t){var r;if(t==="%AsyncFunction%")r=OH("async function () {}");else if(t==="%GeneratorFunction%")r=OH("function* () {}");else if(t==="%AsyncGeneratorFunction%")r=OH("async function* () {}");else if(t==="%AsyncGenerator%"){var n=e("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(t==="%AsyncIteratorPrototype%"){var i=e("%AsyncGenerator%");i&&ip&&(r=ip(i.prototype))}return h2[t]=r,r},RAe={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},jE=rA(),YR=zAe(),UAt=jE.call(WE,Array.prototype.concat),VAt=jE.call(BAe,Array.prototype.splice),DAe=jE.call(WE,String.prototype.replace),KR=jE.call(WE,String.prototype.slice),GAt=jE.call(WE,RegExp.prototype.exec),HAt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,WAt=/\\(\\)?/g,jAt=function(t){var r=KR(t,0,1),n=KR(t,-1);if(r==="%"&&n!=="%")throw new oA("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new oA("invalid intrinsic syntax, expected opening `%`");var i=[];return DAe(t,HAt,function(a,o,s,u){i[i.length]=s?DAe(u,WAt,"$1"):o||a}),i},XAt=function(t,r){var n=t,i;if(YR(RAe,n)&&(i=RAe[n],n="%"+i[0]+"%"),YR(h2,n)){var a=h2[n];if(a===nA&&(a=NAt(n)),typeof a=="undefined"&&!r)throw new aA("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:i,name:n,value:a}}throw new oA("intrinsic "+t+" does not exist!")};OAe.exports=function(t,r){if(typeof t!="string"||t.length===0)throw new aA("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new aA('"allowMissing" argument must be a boolean');if(GAt(/^%?[^%]*%?$/,t)===null)throw new oA("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=jAt(t),i=n.length>0?n[0]:"",a=XAt("%"+i+"%",r),o=a.name,s=a.value,u=!1,l=a.alias;l&&(i=l[0],VAt(n,UAt([0,1],l)));for(var f=1,c=!0;f=n.length){var _=HE(s,h);c=!!_,c&&"get"in _&&!("originalValue"in _.get)?s=_.get:s=s[h]}else c=YR(s,h),s=s[h];c&&!u&&(h2[o]=s)}}return s}});var VAe=Ae((jdr,UAe)=>{"use strict";var qAe=GE(),ZAt=IH(),sA=tA(),NAe=c2();UAe.exports=function(t,r,n){if(!t||typeof t!="object"&&typeof t!="function")throw new sA("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new sA("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new sA("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new sA("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new sA("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new sA("`loose`, if provided, must be a boolean");var i=arguments.length>3?arguments[3]:null,a=arguments.length>4?arguments[4]:null,o=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,u=!!NAe&&NAe(t,r);if(qAe)qAe(t,r,{configurable:o===null&&u?u.configurable:!o,enumerable:i===null&&u?u.enumerable:!i,value:n,writable:a===null&&u?u.writable:!a});else if(s||!i&&!a&&!o)t[r]=n;else throw new ZAt("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var UH=Ae((Xdr,HAe)=>{"use strict";var NH=GE(),GAe=function(){return!!NH};GAe.hasArrayLengthDefineBug=function(){if(!NH)return null;try{return NH([],"length",{value:1}).length!==1}catch(t){return!0}};HAe.exports=GAe});var YAe=Ae((Zdr,ZAe)=>{"use strict";var YAt=JR(),WAe=VAe(),KAt=UH()(),jAe=c2(),XAe=tA(),JAt=YAt("%Math.floor%");ZAe.exports=function(t,r){if(typeof t!="function")throw new XAe("`fn` is not a function");if(typeof r!="number"||r<0||r>4294967295||JAt(r)!==r)throw new XAe("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],i=!0,a=!0;if("length"in t&&jAe){var o=jAe(t,"length");o&&!o.configurable&&(i=!1),o&&!o.writable&&(a=!1)}return(i||a||!n)&&(KAt?WAe(t,"length",r,!0,!0):WAe(t,"length",r)),t}});var XE=Ae((Ydr,$R)=>{"use strict";var VH=rA(),QR=JR(),$At=YAe(),QAt=tA(),$Ae=QR("%Function.prototype.apply%"),QAe=QR("%Function.prototype.call%"),eSe=QR("%Reflect.apply%",!0)||VH.call(QAe,$Ae),KAe=GE(),eSt=QR("%Math.max%");$R.exports=function(t){if(typeof t!="function")throw new QAt("a function is required");var r=eSe(VH,QAe,arguments);return $At(r,1+eSt(0,t.length-(arguments.length-1)),!0)};var JAe=function(){return eSe(VH,$Ae,arguments)};KAe?KAe($R.exports,"apply",{value:JAe}):$R.exports.apply=JAe});var lA=Ae((Kdr,iSe)=>{"use strict";var tSe=JR(),rSe=XE(),tSt=rSe(tSe("String.prototype.indexOf"));iSe.exports=function(t,r){var n=tSe(t,!!r);return typeof n=="function"&&tSt(t,".prototype.")>-1?rSe(n):n}});var oSe=Ae((Jdr,aSe)=>{"use strict";var rSt=VE()(),iSt=lA(),GH=iSt("Object.prototype.toString"),eD=function(t){return rSt&&t&&typeof t=="object"&&Symbol.toStringTag in t?!1:GH(t)==="[object Arguments]"},nSe=function(t){return eD(t)?!0:t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&GH(t)!=="[object Array]"&&GH(t.callee)==="[object Function]"},nSt=function(){return eD(arguments)}();eD.isLegacyArguments=nSe;aSe.exports=nSt?eD:nSe});var uSe=Ae(($dr,lSe)=>{"use strict";var aSt=Object.prototype.toString,oSt=Function.prototype.toString,sSt=/^\s*(?:function)?\*/,sSe=VE()(),HH=Object.getPrototypeOf,lSt=function(){if(!sSe)return!1;try{return Function("return function*() {}")()}catch(e){}},WH;lSe.exports=function(t){if(typeof t!="function")return!1;if(sSt.test(oSt.call(t)))return!0;if(!sSe){var r=aSt.call(t);return r==="[object GeneratorFunction]"}if(!HH)return!1;if(typeof WH=="undefined"){var n=lSt();WH=n?HH(n):!1}return HH(t)===WH}});var dSe=Ae((Qdr,hSe)=>{"use strict";var cSe=Function.prototype.toString,uA=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,XH,tD;if(typeof uA=="function"&&typeof Object.defineProperty=="function")try{XH=Object.defineProperty({},"length",{get:function(){throw tD}}),tD={},uA(function(){throw 42},null,XH)}catch(e){e!==tD&&(uA=null)}else uA=null;var uSt=/^\s*class\b/,ZH=function(t){try{var r=cSe.call(t);return uSt.test(r)}catch(n){return!1}},jH=function(t){try{return ZH(t)?!1:(cSe.call(t),!0)}catch(r){return!1}},rD=Object.prototype.toString,fSt="[object Object]",cSt="[object Function]",hSt="[object GeneratorFunction]",dSt="[object HTMLAllCollection]",pSt="[object HTML document.all class]",vSt="[object HTMLCollection]",mSt=typeof Symbol=="function"&&!!Symbol.toStringTag,ySt=!(0 in[,]),YH=function(){return!1};typeof document=="object"&&(fSe=document.all,rD.call(fSe)===rD.call(document.all)&&(YH=function(t){if((ySt||!t)&&(typeof t=="undefined"||typeof t=="object"))try{var r=rD.call(t);return(r===dSt||r===pSt||r===vSt||r===fSt)&&t("")==null}catch(n){}return!1}));var fSe;hSe.exports=uA?function(t){if(YH(t))return!0;if(!t||typeof t!="function"&&typeof t!="object")return!1;try{uA(t,null,XH)}catch(r){if(r!==tD)return!1}return!ZH(t)&&jH(t)}:function(t){if(YH(t))return!0;if(!t||typeof t!="function"&&typeof t!="object")return!1;if(mSt)return jH(t);if(ZH(t))return!1;var r=rD.call(t);return r!==cSt&&r!==hSt&&!/^\[object HTML/.test(r)?!1:jH(t)}});var KH=Ae((epr,vSe)=>{"use strict";var gSt=dSe(),_St=Object.prototype.toString,pSe=Object.prototype.hasOwnProperty,xSt=function(t,r,n){for(var i=0,a=t.length;i=3&&(i=n),_St.call(t)==="[object Array]"?xSt(t,r,i):typeof t=="string"?bSt(t,r,i):wSt(t,r,i)};vSe.exports=TSt});var $H=Ae((tpr,mSe)=>{"use strict";var JH=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],ASt=typeof globalThis=="undefined"?window:globalThis;mSe.exports=function(){for(var t=[],r=0;r{"use strict";var nD=KH(),SSt=$H(),ySe=XE(),tW=lA(),iD=c2(),MSt=tW("Object.prototype.toString"),_Se=VE()(),gSe=typeof globalThis=="undefined"?window:globalThis,eW=SSt(),rW=tW("String.prototype.slice"),QH=Object.getPrototypeOf,ESt=tW("Array.prototype.indexOf",!0)||function(t,r){for(var n=0;n-1?r:r!=="Object"?!1:CSt(t)}return iD?kSt(t):null}});var ESe=Ae((ipr,MSe)=>{"use strict";var wSe=KH(),LSt=$H(),nW=lA(),PSt=nW("Object.prototype.toString"),TSe=VE()(),oD=c2(),zSt=typeof globalThis=="undefined"?window:globalThis,ASe=LSt(),ISt=nW("Array.prototype.indexOf",!0)||function(t,r){for(var n=0;n-1}return oD?DSt(t):!1}});var sW=Ae($f=>{"use strict";var FSt=oSe(),BSt=uSe(),Hm=bSe(),kSe=ESe();function fA(e){return e.call.bind(e)}var CSe=typeof BigInt!="undefined",LSe=typeof Symbol!="undefined",Z0=fA(Object.prototype.toString),OSt=fA(Number.prototype.valueOf),qSt=fA(String.prototype.valueOf),NSt=fA(Boolean.prototype.valueOf);CSe&&(PSe=fA(BigInt.prototype.valueOf));var PSe;LSe&&(zSe=fA(Symbol.prototype.valueOf));var zSe;function YE(e,t){if(typeof e!="object")return!1;try{return t(e),!0}catch(r){return!1}}$f.isArgumentsObject=FSt;$f.isGeneratorFunction=BSt;$f.isTypedArray=kSe;function USt(e){return typeof Promise!="undefined"&&e instanceof Promise||e!==null&&typeof e=="object"&&typeof e.then=="function"&&typeof e.catch=="function"}$f.isPromise=USt;function VSt(e){return typeof ArrayBuffer!="undefined"&&ArrayBuffer.isView?ArrayBuffer.isView(e):kSe(e)||RSe(e)}$f.isArrayBufferView=VSt;function GSt(e){return Hm(e)==="Uint8Array"}$f.isUint8Array=GSt;function HSt(e){return Hm(e)==="Uint8ClampedArray"}$f.isUint8ClampedArray=HSt;function WSt(e){return Hm(e)==="Uint16Array"}$f.isUint16Array=WSt;function jSt(e){return Hm(e)==="Uint32Array"}$f.isUint32Array=jSt;function XSt(e){return Hm(e)==="Int8Array"}$f.isInt8Array=XSt;function ZSt(e){return Hm(e)==="Int16Array"}$f.isInt16Array=ZSt;function YSt(e){return Hm(e)==="Int32Array"}$f.isInt32Array=YSt;function KSt(e){return Hm(e)==="Float32Array"}$f.isFloat32Array=KSt;function JSt(e){return Hm(e)==="Float64Array"}$f.isFloat64Array=JSt;function $St(e){return Hm(e)==="BigInt64Array"}$f.isBigInt64Array=$St;function QSt(e){return Hm(e)==="BigUint64Array"}$f.isBigUint64Array=QSt;function sD(e){return Z0(e)==="[object Map]"}sD.working=typeof Map!="undefined"&&sD(new Map);function eMt(e){return typeof Map=="undefined"?!1:sD.working?sD(e):e instanceof Map}$f.isMap=eMt;function lD(e){return Z0(e)==="[object Set]"}lD.working=typeof Set!="undefined"&&lD(new Set);function tMt(e){return typeof Set=="undefined"?!1:lD.working?lD(e):e instanceof Set}$f.isSet=tMt;function uD(e){return Z0(e)==="[object WeakMap]"}uD.working=typeof WeakMap!="undefined"&&uD(new WeakMap);function rMt(e){return typeof WeakMap=="undefined"?!1:uD.working?uD(e):e instanceof WeakMap}$f.isWeakMap=rMt;function oW(e){return Z0(e)==="[object WeakSet]"}oW.working=typeof WeakSet!="undefined"&&oW(new WeakSet);function iMt(e){return oW(e)}$f.isWeakSet=iMt;function fD(e){return Z0(e)==="[object ArrayBuffer]"}fD.working=typeof ArrayBuffer!="undefined"&&fD(new ArrayBuffer);function ISe(e){return typeof ArrayBuffer=="undefined"?!1:fD.working?fD(e):e instanceof ArrayBuffer}$f.isArrayBuffer=ISe;function cD(e){return Z0(e)==="[object DataView]"}cD.working=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined"&&cD(new DataView(new ArrayBuffer(1),0,1));function RSe(e){return typeof DataView=="undefined"?!1:cD.working?cD(e):e instanceof DataView}$f.isDataView=RSe;var aW=typeof SharedArrayBuffer!="undefined"?SharedArrayBuffer:void 0;function ZE(e){return Z0(e)==="[object SharedArrayBuffer]"}function DSe(e){return typeof aW=="undefined"?!1:(typeof ZE.working=="undefined"&&(ZE.working=ZE(new aW)),ZE.working?ZE(e):e instanceof aW)}$f.isSharedArrayBuffer=DSe;function nMt(e){return Z0(e)==="[object AsyncFunction]"}$f.isAsyncFunction=nMt;function aMt(e){return Z0(e)==="[object Map Iterator]"}$f.isMapIterator=aMt;function oMt(e){return Z0(e)==="[object Set Iterator]"}$f.isSetIterator=oMt;function sMt(e){return Z0(e)==="[object Generator]"}$f.isGeneratorObject=sMt;function lMt(e){return Z0(e)==="[object WebAssembly.Module]"}$f.isWebAssemblyCompiledModule=lMt;function FSe(e){return YE(e,OSt)}$f.isNumberObject=FSe;function BSe(e){return YE(e,qSt)}$f.isStringObject=BSe;function OSe(e){return YE(e,NSt)}$f.isBooleanObject=OSe;function qSe(e){return CSe&&YE(e,PSe)}$f.isBigIntObject=qSe;function NSe(e){return LSe&&YE(e,zSe)}$f.isSymbolObject=NSe;function uMt(e){return FSe(e)||BSe(e)||OSe(e)||qSe(e)||NSe(e)}$f.isBoxedPrimitive=uMt;function fMt(e){return typeof Uint8Array!="undefined"&&(ISe(e)||DSe(e))}$f.isAnyArrayBuffer=fMt;["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(e){Object.defineProperty($f,e,{enumerable:!1,value:function(){throw new Error(e+" is not supported in userland")}})})});var lW=Ae((apr,USe)=>{USe.exports=function(t){return t&&typeof t=="object"&&typeof t.copy=="function"&&typeof t.fill=="function"&&typeof t.readUInt8=="function"}});var pW=Ae(Qf=>{var VSe=Object.getOwnPropertyDescriptors||function(t){for(var r=Object.keys(t),n={},i=0;i=i)return s;switch(s){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(u){return"[Circular]"}default:return s}}),o=n[r];r=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),hW(t)?r.showHidden=t:t&&Qf._extend(r,t),p2(r.showHidden)&&(r.showHidden=!1),p2(r.depth)&&(r.depth=2),p2(r.colors)&&(r.colors=!1),p2(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=hMt),vD(r,e,r.depth)}Qf.inspect=z_;z_.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};z_.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function hMt(e,t){var r=z_.styles[t];return r?"\x1B["+z_.colors[r][0]+"m"+e+"\x1B["+z_.colors[r][1]+"m":e}function dMt(e,t){return e}function pMt(e){var t={};return e.forEach(function(r,n){t[r]=!0}),t}function vD(e,t,r){if(e.customInspect&&t&&pD(t.inspect)&&t.inspect!==Qf.inspect&&!(t.constructor&&t.constructor.prototype===t)){var n=t.inspect(r,e);return gD(n)||(n=vD(e,n,r)),n}var i=vMt(e,t);if(i)return i;var a=Object.keys(t),o=pMt(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(t)),JE(t)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return uW(t);if(a.length===0){if(pD(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if(KE(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(mD(t))return e.stylize(Date.prototype.toString.call(t),"date");if(JE(t))return uW(t)}var u="",l=!1,f=["{","}"];if(HSe(t)&&(l=!0,f=["[","]"]),pD(t)){var c=t.name?": "+t.name:"";u=" [Function"+c+"]"}if(KE(t)&&(u=" "+RegExp.prototype.toString.call(t)),mD(t)&&(u=" "+Date.prototype.toUTCString.call(t)),JE(t)&&(u=" "+uW(t)),a.length===0&&(!l||t.length==0))return f[0]+u+f[1];if(r<0)return KE(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var h;return l?h=mMt(e,t,r,o,a):h=a.map(function(d){return cW(e,t,r,o,d,l)}),e.seen.pop(),yMt(h,u,f)}function vMt(e,t){if(p2(t))return e.stylize("undefined","undefined");if(gD(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(WSe(t))return e.stylize(""+t,"number");if(hW(t))return e.stylize(""+t,"boolean");if(yD(t))return e.stylize("null","null")}function uW(e){return"["+Error.prototype.toString.call(e)+"]"}function mMt(e,t,r,n,i){for(var a=[],o=0,s=t.length;o-1&&(a?s=s.split(` `).map(function(l){return" "+l}).join(` `).slice(2):s=` `+s.split(` `).map(function(l){return" "+l}).join(` -`))):s=e.stylize("[Circular]","special")),p2(o)){if(a&&i.match(/^\d+$/))return s;o=JSON.stringify(""+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function mMt(e,t,r){var n=0,i=e.reduce(function(a,o){return n++,o.indexOf(` +`))):s=e.stylize("[Circular]","special")),p2(o)){if(a&&i.match(/^\d+$/))return s;o=JSON.stringify(""+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function yMt(e,t,r){var n=0,i=e.reduce(function(a,o){return n++,o.indexOf(` `)>=0&&n++,a+o.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?r[0]+(t===""?"":t+` `)+" "+e.join(`, - `)+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}Qf.types=sW();function GSe(e){return Array.isArray(e)}Qf.isArray=GSe;function hW(e){return typeof e=="boolean"}Qf.isBoolean=hW;function mD(e){return e===null}Qf.isNull=mD;function yMt(e){return e==null}Qf.isNullOrUndefined=yMt;function HSe(e){return typeof e=="number"}Qf.isNumber=HSe;function yD(e){return typeof e=="string"}Qf.isString=yD;function gMt(e){return typeof e=="symbol"}Qf.isSymbol=gMt;function p2(e){return e===void 0}Qf.isUndefined=p2;function YE(e){return fA(e)&&dW(e)==="[object RegExp]"}Qf.isRegExp=YE;Qf.types.isRegExp=YE;function fA(e){return typeof e=="object"&&e!==null}Qf.isObject=fA;function vD(e){return fA(e)&&dW(e)==="[object Date]"}Qf.isDate=vD;Qf.types.isDate=vD;function KE(e){return fA(e)&&(dW(e)==="[object Error]"||e instanceof Error)}Qf.isError=KE;Qf.types.isNativeError=KE;function dD(e){return typeof e=="function"}Qf.isFunction=dD;function _Mt(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}Qf.isPrimitive=_Mt;Qf.isBuffer=lW();function dW(e){return Object.prototype.toString.call(e)}function fW(e){return e<10?"0"+e.toString(10):e.toString(10)}var xMt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function bMt(){var e=new Date,t=[fW(e.getHours()),fW(e.getMinutes()),fW(e.getSeconds())].join(":");return[e.getDate(),xMt[e.getMonth()],t].join(" ")}Qf.log=function(){console.log("%s - %s",bMt(),Qf.format.apply(Qf,arguments))};Qf.inherits=Ug();Qf._extend=function(e,t){if(!t||!fA(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};function WSe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var d2=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;Qf.promisify=function(t){if(typeof t!="function")throw new TypeError('The "original" argument must be of type Function');if(d2&&t[d2]){var r=t[d2];if(typeof r!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(r,d2,{value:r,enumerable:!1,writable:!1,configurable:!0}),r}function r(){for(var n,i,a=new Promise(function(u,l){n=u,i=l}),o=[],s=0;s{"use strict";function jSe(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function AMt(e){for(var t=1;t0?this.tail.next=n:this.head=n,this.tail=n,++this.length}},{key:"unshift",value:function(r){var n={data:r,next:this.head};this.length===0&&(this.tail=n),this.head=n,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var n=this.head,i=""+n.data;n=n.next;)i+=r+n.data;return i}},{key:"concat",value:function(r){if(this.length===0)return gD.alloc(0);for(var n=gD.allocUnsafe(r>>>0),i=this.head,a=0;i;)PMt(i.data,n,a),a+=i.data.length,i=i.next;return n}},{key:"consume",value:function(r,n){var i;return ro.length?o.length:r;if(s===o.length?a+=o:a+=o.slice(0,r),r-=s,r===0){s===o.length?(++i,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(s));break}++i}return this.length-=i,a}},{key:"_getBuffer",value:function(r){var n=gD.allocUnsafe(r),i=this.head,a=1;for(i.data.copy(n),r-=i.data.length;i=i.next;){var o=i.data,s=r>o.length?o.length:r;if(o.copy(n,n.length-r,0,s),r-=s,r===0){s===o.length?(++a,i.next?this.head=i.next:this.head=this.tail=null):(this.head=i,i.data=o.slice(s));break}++a}return this.length-=a,n}},{key:LMt,value:function(r,n){return vW(this,AMt({},n,{depth:0,customInspect:!1}))}}]),e}()});var yW=Ae((lpr,JSe)=>{"use strict";function zMt(e,t){var r=this,n=this._readableState&&this._readableState.destroyed,i=this._writableState&&this._writableState.destroyed;return n||i?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(mW,this,e)):process.nextTick(mW,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(a){!t&&a?r._writableState?r._writableState.errorEmitted?process.nextTick(_D,r):(r._writableState.errorEmitted=!0,process.nextTick(KSe,r,a)):process.nextTick(KSe,r,a):t?(process.nextTick(_D,r),t(a)):process.nextTick(_D,r)}),this)}function KSe(e,t){mW(e,t),_D(e)}function _D(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function IMt(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function mW(e,t){e.emit("error",t)}function RMt(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}JSe.exports={destroy:zMt,undestroy:IMt,errorOrDestroy:RMt}});var v2=Ae((upr,eMe)=>{"use strict";function DMt(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}var QSe={};function Y0(e,t,r){r||(r=Error);function n(a,o,s){return typeof t=="string"?t:t(a,o,s)}var i=function(a){DMt(o,a);function o(s,u,l){return a.call(this,n(s,u,l))||this}return o}(r);i.prototype.name=r.name,i.prototype.code=e,QSe[e]=i}function $Se(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map(function(n){return String(n)}),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function FMt(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function BMt(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function OMt(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}Y0("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);Y0("ERR_INVALID_ARG_TYPE",function(e,t,r){var n;typeof t=="string"&&FMt(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";var i;if(BMt(e," argument"))i="The ".concat(e," ").concat(n," ").concat($Se(t,"type"));else{var a=OMt(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(a," ").concat(n," ").concat($Se(t,"type"))}return i+=". Received type ".concat(typeof r),i},TypeError);Y0("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");Y0("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});Y0("ERR_STREAM_PREMATURE_CLOSE","Premature close");Y0("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});Y0("ERR_MULTIPLE_CALLBACK","Callback called multiple times");Y0("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");Y0("ERR_STREAM_WRITE_AFTER_END","write after end");Y0("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);Y0("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);Y0("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");eMe.exports.codes=QSe});var gW=Ae((fpr,tMe)=>{"use strict";var qMt=v2().codes.ERR_INVALID_OPT_VALUE;function NMt(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function UMt(e,t,r,n){var i=NMt(t,n,r);if(i!=null){if(!(isFinite(i)&&Math.floor(i)===i)||i<0){var a=n?r:"highWaterMark";throw new qMt(a,i)}return Math.floor(i)}return e.objectMode?16:16*1024}tMe.exports={getHighWaterMark:UMt}});var iMe=Ae((cpr,rMe)=>{rMe.exports=VMt;function VMt(e,t){if(_W("noDeprecation"))return e;var r=!1;function n(){if(!r){if(_W("throwDeprecation"))throw new Error(t);_W("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}return n}function _W(e){try{if(!window.localStorage)return!1}catch(r){return!1}var t=window.localStorage[e];return t==null?!1:String(t).toLowerCase()==="true"}});var wW=Ae((hpr,uMe)=>{"use strict";uMe.exports=Vh;function aMe(e){var t=this;this.next=null,this.entry=null,this.finish=function(){v5t(t,e)}}var cA;Vh.WritableState=$E;var GMt={deprecate:iMe()},oMe=bH(),bD=f2().Buffer,HMt=window.Uint8Array||function(){};function WMt(e){return bD.from(e)}function jMt(e){return bD.isBuffer(e)||e instanceof HMt}var bW=yW(),XMt=gW(),ZMt=XMt.getHighWaterMark,I_=v2().codes,YMt=I_.ERR_INVALID_ARG_TYPE,KMt=I_.ERR_METHOD_NOT_IMPLEMENTED,JMt=I_.ERR_MULTIPLE_CALLBACK,$Mt=I_.ERR_STREAM_CANNOT_PIPE,QMt=I_.ERR_STREAM_DESTROYED,e5t=I_.ERR_STREAM_NULL_VALUES,t5t=I_.ERR_STREAM_WRITE_AFTER_END,r5t=I_.ERR_UNKNOWN_ENCODING,hA=bW.errorOrDestroy;Ug()(Vh,oMe);function i5t(){}function $E(e,t,r){cA=cA||m2(),e=e||{},typeof r!="boolean"&&(r=t instanceof cA),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=ZMt(this,e,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var n=e.decodeStrings===!1;this.decodeStrings=!n,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(i){f5t(t,i)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new aMe(this)}$E.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty($E.prototype,"buffer",{get:GMt.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}})();var xD;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(xD=Function.prototype[Symbol.hasInstance],Object.defineProperty(Vh,Symbol.hasInstance,{value:function(t){return xD.call(this,t)?!0:this!==Vh?!1:t&&t._writableState instanceof $E}})):xD=function(t){return t instanceof this};function Vh(e){cA=cA||m2();var t=this instanceof cA;if(!t&&!xD.call(Vh,this))return new Vh(e);this._writableState=new $E(e,this,t),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),oMe.call(this)}Vh.prototype.pipe=function(){hA(this,new $Mt)};function n5t(e,t){var r=new t5t;hA(e,r),process.nextTick(t,r)}function a5t(e,t,r,n){var i;return r===null?i=new e5t:typeof r!="string"&&!t.objectMode&&(i=new YMt("chunk",["string","Buffer"],r)),i?(hA(e,i),process.nextTick(n,i),!1):!0}Vh.prototype.write=function(e,t,r){var n=this._writableState,i=!1,a=!n.objectMode&&jMt(e);return a&&!bD.isBuffer(e)&&(e=WMt(e)),typeof t=="function"&&(r=t,t=null),a?t="buffer":t||(t=n.defaultEncoding),typeof r!="function"&&(r=i5t),n.ending?n5t(this,r):(a||a5t(this,n,e,r))&&(n.pendingcb++,i=s5t(this,n,a,e,t,r)),i};Vh.prototype.cork=function(){this._writableState.corked++};Vh.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&sMe(this,e))};Vh.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new r5t(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(Vh.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function o5t(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=bD.from(t,r)),t}Object.defineProperty(Vh.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function s5t(e,t,r,n,i,a){if(!r){var o=o5t(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var u=t.length{"use strict";var m5t=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};cMe.exports=qy;var fMe=SW(),AW=wW();Ug()(qy,fMe);for(TW=m5t(AW.prototype),wD=0;wD{var AD=f2(),Ny=AD.Buffer;function hMe(e,t){for(var r in e)t[r]=e[r]}Ny.from&&Ny.alloc&&Ny.allocUnsafe&&Ny.allocUnsafeSlow?dMe.exports=AD:(hMe(AD,MW),MW.Buffer=y2);function y2(e,t,r){return Ny(e,t,r)}y2.prototype=Object.create(Ny.prototype);hMe(Ny,y2);y2.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return Ny(e,t,r)};y2.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var n=Ny(e);return t!==void 0?typeof r=="string"?n.fill(t,r):n.fill(t):n.fill(0),n};y2.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return Ny(e)};y2.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return AD.SlowBuffer(e)}});var CW=Ae(mMe=>{"use strict";var kW=pMe().Buffer,vMe=kW.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function _5t(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function x5t(e){var t=_5t(e);if(typeof t!="string"&&(kW.isEncoding===vMe||!vMe(e)))throw new Error("Unknown encoding: "+e);return t||e}mMe.StringDecoder=QE;function QE(e){this.encoding=x5t(e);var t;switch(this.encoding){case"utf16le":this.text=M5t,this.end=E5t,t=4;break;case"utf8":this.fillLast=T5t,t=4;break;case"base64":this.text=k5t,this.end=C5t,t=3;break;default:this.write=L5t,this.end=P5t;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=kW.allocUnsafe(t)}QE.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function b5t(e,t,r){var n=t.length-1;if(n=0?(i>0&&(e.lastNeed=i-1),i):--n=0?(i>0&&(e.lastNeed=i-2),i):--n=0?(i>0&&(i===2?i=0:e.lastNeed=i-3),i):0))}function w5t(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function T5t(e){var t=this.lastTotal-this.lastNeed,r=w5t(this,e,t);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function A5t(e,t){var r=b5t(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)}function S5t(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function M5t(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function E5t(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function k5t(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function C5t(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function L5t(e){return e.toString(this.encoding)}function P5t(e){return e&&e.length?this.write(e):""}});var SD=Ae((vpr,_Me)=>{"use strict";var yMe=v2().codes.ERR_STREAM_PREMATURE_CLOSE;function z5t(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i{"use strict";var MD;function R_(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var D5t=SD(),D_=Symbol("lastResolve"),g2=Symbol("lastReject"),e4=Symbol("error"),ED=Symbol("ended"),_2=Symbol("lastPromise"),LW=Symbol("handlePromise"),x2=Symbol("stream");function F_(e,t){return{value:e,done:t}}function F5t(e){var t=e[D_];if(t!==null){var r=e[x2].read();r!==null&&(e[_2]=null,e[D_]=null,e[g2]=null,t(F_(r,!1)))}}function B5t(e){process.nextTick(F5t,e)}function O5t(e,t){return function(r,n){e.then(function(){if(t[ED]){r(F_(void 0,!0));return}t[LW](r,n)},n)}}var q5t=Object.getPrototypeOf(function(){}),N5t=Object.setPrototypeOf((MD={get stream(){return this[x2]},next:function(){var t=this,r=this[e4];if(r!==null)return Promise.reject(r);if(this[ED])return Promise.resolve(F_(void 0,!0));if(this[x2].destroyed)return new Promise(function(o,s){process.nextTick(function(){t[e4]?s(t[e4]):o(F_(void 0,!0))})});var n=this[_2],i;if(n)i=new Promise(O5t(n,this));else{var a=this[x2].read();if(a!==null)return Promise.resolve(F_(a,!1));i=new Promise(this[LW])}return this[_2]=i,i}},R_(MD,Symbol.asyncIterator,function(){return this}),R_(MD,"return",function(){var t=this;return new Promise(function(r,n){t[x2].destroy(null,function(i){if(i){n(i);return}r(F_(void 0,!0))})})}),MD),q5t),U5t=function(t){var r,n=Object.create(N5t,(r={},R_(r,x2,{value:t,writable:!0}),R_(r,D_,{value:null,writable:!0}),R_(r,g2,{value:null,writable:!0}),R_(r,e4,{value:null,writable:!0}),R_(r,ED,{value:t._readableState.endEmitted,writable:!0}),R_(r,LW,{value:function(a,o){var s=n[x2].read();s?(n[_2]=null,n[D_]=null,n[g2]=null,a(F_(s,!1))):(n[D_]=a,n[g2]=o)},writable:!0}),r));return n[_2]=null,D5t(t,function(i){if(i&&i.code!=="ERR_STREAM_PREMATURE_CLOSE"){var a=n[g2];a!==null&&(n[_2]=null,n[D_]=null,n[g2]=null,a(i)),n[e4]=i;return}var o=n[D_];o!==null&&(n[_2]=null,n[D_]=null,n[g2]=null,o(F_(void 0,!0))),n[ED]=!0}),t.on("readable",B5t.bind(null,n)),n};xMe.exports=U5t});var TMe=Ae((ypr,wMe)=>{wMe.exports=function(){throw new Error("Readable.from is not available in the browser")}});var SW=Ae((_pr,IMe)=>{"use strict";IMe.exports=hc;var dA;hc.ReadableState=EMe;var gpr=vb().EventEmitter,MMe=function(t,r){return t.listeners(r).length},r4=bH(),kD=f2().Buffer,V5t=window.Uint8Array||function(){};function G5t(e){return kD.from(e)}function H5t(e){return kD.isBuffer(e)||e instanceof V5t}var PW=pW(),Yf;PW&&PW.debuglog?Yf=PW.debuglog("stream"):Yf=function(){};var W5t=YSe(),OW=yW(),j5t=gW(),X5t=j5t.getHighWaterMark,CD=v2().codes,Z5t=CD.ERR_INVALID_ARG_TYPE,Y5t=CD.ERR_STREAM_PUSH_AFTER_EOF,K5t=CD.ERR_METHOD_NOT_IMPLEMENTED,J5t=CD.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,pA,zW,IW;Ug()(hc,r4);var t4=OW.errorOrDestroy,RW=["error","close","destroy","pause","resume"];function $5t(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function EMe(e,t,r){dA=dA||m2(),e=e||{},typeof r!="boolean"&&(r=t instanceof dA),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=X5t(this,e,"readableHighWaterMark",r),this.buffer=new W5t,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(pA||(pA=CW().StringDecoder),this.decoder=new pA(e.encoding),this.encoding=e.encoding)}function hc(e){if(dA=dA||m2(),!(this instanceof hc))return new hc(e);var t=this instanceof dA;this._readableState=new EMe(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),r4.call(this)}Object.defineProperty(hc.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});hc.prototype.destroy=OW.destroy;hc.prototype._undestroy=OW.undestroy;hc.prototype._destroy=function(e,t){t(e)};hc.prototype.push=function(e,t){var r=this._readableState,n;return r.objectMode?n=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=kD.from(e,t),t=""),n=!0),kMe(this,e,t,!1,n)};hc.prototype.unshift=function(e){return kMe(this,e,null,!0,!1)};function kMe(e,t,r,n,i){Yf("readableAddChunk",t);var a=e._readableState;if(t===null)a.reading=!1,tEt(e,a);else{var o;if(i||(o=Q5t(a,t)),o)t4(e,o);else if(a.objectMode||t&&t.length>0)if(typeof t!="string"&&!a.objectMode&&Object.getPrototypeOf(t)!==kD.prototype&&(t=G5t(t)),n)a.endEmitted?t4(e,new J5t):DW(e,a,t,!0);else if(a.ended)t4(e,new Y5t);else{if(a.destroyed)return!1;a.reading=!1,a.decoder&&!r?(t=a.decoder.write(t),a.objectMode||t.length!==0?DW(e,a,t,!1):BW(e,a)):DW(e,a,t,!1)}else n||(a.reading=!1,BW(e,a))}return!a.ended&&(a.length=AMe?e=AMe:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function SMe(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=eEt(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}hc.prototype.read=function(e){Yf("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended))return Yf("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?FW(this):LD(this),null;if(e=SMe(e,t),e===0&&t.ended)return t.length===0&&FW(this),null;var n=t.needReadable;Yf("need readable",n),(t.length===0||t.length-e0?i=PMe(e,t):i=null,i===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&FW(this)),i!==null&&this.emit("data",i),i};function tEt(e,t){if(Yf("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?LD(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,CMe(e)))}}function LD(e){var t=e._readableState;Yf("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(Yf("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(CMe,e))}function CMe(e){var t=e._readableState;Yf("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,qW(e)}function BW(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(rEt,e,t))}function rEt(e,t){for(;!t.reading&&!t.ended&&(t.length1&&zMe(n.pipes,e)!==-1)&&!l&&(Yf("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function h(b){Yf("onerror",b),_(),e.removeListener("error",h),MMe(e,"error")===0&&t4(e,b)}$5t(e,"error",h);function d(){e.removeListener("finish",p),_()}e.once("close",d);function p(){Yf("onfinish"),e.removeListener("close",d),_()}e.once("finish",p);function _(){Yf("unpipe"),r.unpipe(e)}return e.emit("pipe",r),n.flowing||(Yf("pipe resume"),r.resume()),e};function iEt(e){return function(){var r=e._readableState;Yf("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&MMe(e,"data")&&(r.flowing=!0,qW(e))}}hc.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,n.flowing!==!1&&this.resume()):e==="readable"&&!n.endEmitted&&!n.readableListening&&(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,Yf("on readable",n.length,n.reading),n.length?LD(this):n.reading||process.nextTick(nEt,this)),r};hc.prototype.addListener=hc.prototype.on;hc.prototype.removeListener=function(e,t){var r=r4.prototype.removeListener.call(this,e,t);return e==="readable"&&process.nextTick(LMe,this),r};hc.prototype.removeAllListeners=function(e){var t=r4.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(LMe,this),t};function LMe(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function nEt(e){Yf("readable nexttick read 0"),e.read(0)}hc.prototype.resume=function(){var e=this._readableState;return e.flowing||(Yf("resume"),e.flowing=!e.readableListening,aEt(this,e)),e.paused=!1,this};function aEt(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(oEt,e,t))}function oEt(e,t){Yf("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),qW(e),t.flowing&&!t.reading&&e.read(0)}hc.prototype.pause=function(){return Yf("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(Yf("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function qW(e){var t=e._readableState;for(Yf("flow",t.flowing);t.flowing&&e.read()!==null;);}hc.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;e.on("end",function(){if(Yf("wrapped end"),r.decoder&&!r.ended){var o=r.decoder.end();o&&o.length&&t.push(o)}t.push(null)}),e.on("data",function(o){if(Yf("wrapped data"),r.decoder&&(o=r.decoder.write(o)),!(r.objectMode&&o==null)&&!(!r.objectMode&&(!o||!o.length))){var s=t.push(o);s||(n=!0,e.pause())}});for(var i in e)this[i]===void 0&&typeof e[i]=="function"&&(this[i]=function(s){return function(){return e[s].apply(e,arguments)}}(i));for(var a=0;a=t.length?(t.decoder?r=t.buffer.join(""):t.buffer.length===1?r=t.buffer.first():r=t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function FW(e){var t=e._readableState;Yf("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(sEt,t,e))}function sEt(e,t){if(Yf("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(hc.from=function(e,t){return IW===void 0&&(IW=TMe()),IW(hc,e,t)});function zMe(e,t){for(var r=0,n=e.length;r{"use strict";DMe.exports=Gg;var PD=v2().codes,lEt=PD.ERR_METHOD_NOT_IMPLEMENTED,uEt=PD.ERR_MULTIPLE_CALLBACK,fEt=PD.ERR_TRANSFORM_ALREADY_TRANSFORMING,cEt=PD.ERR_TRANSFORM_WITH_LENGTH_0,zD=m2();Ug()(Gg,zD);function hEt(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(n===null)return this.emit("error",new uEt);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length{"use strict";BMe.exports=i4;var FMe=NW();Ug()(i4,FMe);function i4(e){if(!(this instanceof i4))return new i4(e);FMe.call(this,e)}i4.prototype._transform=function(e,t,r){r(null,e)}});var GMe=Ae((wpr,VMe)=>{"use strict";var UW;function pEt(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var UMe=v2().codes,vEt=UMe.ERR_MISSING_ARGS,mEt=UMe.ERR_STREAM_DESTROYED;function qMe(e){if(e)throw e}function yEt(e){return e.setHeader&&typeof e.abort=="function"}function gEt(e,t,r,n){n=pEt(n);var i=!1;e.on("close",function(){i=!0}),UW===void 0&&(UW=SD()),UW(e,{readable:t,writable:r},function(o){if(o)return n(o);i=!0,n()});var a=!1;return function(o){if(!i&&!a){if(a=!0,yEt(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();n(o||new mEt("pipe"))}}}function NMe(e){e()}function _Et(e,t){return e.pipe(t)}function xEt(e){return!e.length||typeof e[e.length-1]!="function"?qMe:e.pop()}function bEt(){for(var e=arguments.length,t=new Array(e),r=0;r0;return gEt(o,u,l,function(f){i||(i=f),f&&a.forEach(NMe),!u&&(a.forEach(NMe),n(i))})});return t.reduce(_Et)}VMe.exports=bEt});var WMe=Ae((Tpr,HMe)=>{HMe.exports=K0;var VW=vb().EventEmitter,wEt=Ug();wEt(K0,VW);K0.Readable=SW();K0.Writable=wW();K0.Duplex=m2();K0.Transform=NW();K0.PassThrough=OMe();K0.finished=SD();K0.pipeline=GMe();K0.Stream=K0;function K0(){VW.call(this)}K0.prototype.pipe=function(e,t){var r=this;function n(f){e.writable&&e.write(f)===!1&&r.pause&&r.pause()}r.on("data",n);function i(){r.readable&&r.resume&&r.resume()}e.on("drain",i),!e._isStdio&&(!t||t.end!==!1)&&(r.on("end",o),r.on("close",s));var a=!1;function o(){a||(a=!0,e.end())}function s(){a||(a=!0,typeof e.destroy=="function"&&e.destroy())}function u(f){if(l(),VW.listenerCount(this,"error")===0)throw f}r.on("error",u),e.on("error",u);function l(){r.removeListener("data",n),e.removeListener("drain",i),r.removeListener("end",o),r.removeListener("close",s),r.removeListener("error",u),e.removeListener("error",u),r.removeListener("end",l),r.removeListener("close",l),e.removeListener("close",l)}return r.on("end",l),r.on("close",l),e.on("close",l),e.emit("pipe",r),e}});var mA=Ae(ec=>{var jMe=Object.getOwnPropertyDescriptors||function(t){for(var r=Object.keys(t),n={},i=0;i=i)return s;switch(s){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(u){return"[Circular]"}default:return s}}),o=n[r];r=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),jW(t)?r.showHidden=t:t&&ec._extend(r,t),w2(r.showHidden)&&(r.showHidden=!1),w2(r.depth)&&(r.depth=2),w2(r.colors)&&(r.colors=!1),w2(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=AEt),FD(r,e,r.depth)}ec.inspect=B_;B_.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};B_.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function AEt(e,t){var r=B_.styles[t];return r?"\x1B["+B_.colors[r][0]+"m"+e+"\x1B["+B_.colors[r][1]+"m":e}function SEt(e,t){return e}function MEt(e){var t={};return e.forEach(function(r,n){t[r]=!0}),t}function FD(e,t,r){if(e.customInspect&&t&&DD(t.inspect)&&t.inspect!==ec.inspect&&!(t.constructor&&t.constructor.prototype===t)){var n=t.inspect(r,e);return qD(n)||(n=FD(e,n,r)),n}var i=EEt(e,t);if(i)return i;var a=Object.keys(t),o=MEt(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(t)),a4(t)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return GW(t);if(a.length===0){if(DD(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if(n4(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(BD(t))return e.stylize(Date.prototype.toString.call(t),"date");if(a4(t))return GW(t)}var u="",l=!1,f=["{","}"];if(ZMe(t)&&(l=!0,f=["[","]"]),DD(t)){var c=t.name?": "+t.name:"";u=" [Function"+c+"]"}if(n4(t)&&(u=" "+RegExp.prototype.toString.call(t)),BD(t)&&(u=" "+Date.prototype.toUTCString.call(t)),a4(t)&&(u=" "+GW(t)),a.length===0&&(!l||t.length==0))return f[0]+u+f[1];if(r<0)return n4(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var h;return l?h=kEt(e,t,r,o,a):h=a.map(function(d){return WW(e,t,r,o,d,l)}),e.seen.pop(),CEt(h,u,f)}function EEt(e,t){if(w2(t))return e.stylize("undefined","undefined");if(qD(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(YMe(t))return e.stylize(""+t,"number");if(jW(t))return e.stylize(""+t,"boolean");if(OD(t))return e.stylize("null","null")}function GW(e){return"["+Error.prototype.toString.call(e)+"]"}function kEt(e,t,r,n,i){for(var a=[],o=0,s=t.length;o{"use strict";function XSe(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function SMt(e){for(var t=1;t0?this.tail.next=n:this.head=n,this.tail=n,++this.length}},{key:"unshift",value:function(r){var n={data:r,next:this.head};this.length===0&&(this.tail=n),this.head=n,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var n=this.head,i=""+n.data;n=n.next;)i+=r+n.data;return i}},{key:"concat",value:function(r){if(this.length===0)return _D.alloc(0);for(var n=_D.allocUnsafe(r>>>0),i=this.head,a=0;i;)zMt(i.data,n,a),a+=i.data.length,i=i.next;return n}},{key:"consume",value:function(r,n){var i;return ro.length?o.length:r;if(s===o.length?a+=o:a+=o.slice(0,r),r-=s,r===0){s===o.length?(++i,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(s));break}++i}return this.length-=i,a}},{key:"_getBuffer",value:function(r){var n=_D.allocUnsafe(r),i=this.head,a=1;for(i.data.copy(n),r-=i.data.length;i=i.next;){var o=i.data,s=r>o.length?o.length:r;if(o.copy(n,n.length-r,0,s),r-=s,r===0){s===o.length?(++a,i.next?this.head=i.next:this.head=this.tail=null):(this.head=i,i.data=o.slice(s));break}++a}return this.length-=a,n}},{key:PMt,value:function(r,n){return vW(this,SMt({},n,{depth:0,customInspect:!1}))}}]),e}()});var yW=Ae((lpr,$Se)=>{"use strict";function IMt(e,t){var r=this,n=this._readableState&&this._readableState.destroyed,i=this._writableState&&this._writableState.destroyed;return n||i?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(mW,this,e)):process.nextTick(mW,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(a){!t&&a?r._writableState?r._writableState.errorEmitted?process.nextTick(xD,r):(r._writableState.errorEmitted=!0,process.nextTick(JSe,r,a)):process.nextTick(JSe,r,a):t?(process.nextTick(xD,r),t(a)):process.nextTick(xD,r)}),this)}function JSe(e,t){mW(e,t),xD(e)}function xD(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function RMt(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function mW(e,t){e.emit("error",t)}function DMt(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}$Se.exports={destroy:IMt,undestroy:RMt,errorOrDestroy:DMt}});var v2=Ae((upr,tMe)=>{"use strict";function FMt(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}var eMe={};function Y0(e,t,r){r||(r=Error);function n(a,o,s){return typeof t=="string"?t:t(a,o,s)}var i=function(a){FMt(o,a);function o(s,u,l){return a.call(this,n(s,u,l))||this}return o}(r);i.prototype.name=r.name,i.prototype.code=e,eMe[e]=i}function QSe(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map(function(n){return String(n)}),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function BMt(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function OMt(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function qMt(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}Y0("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);Y0("ERR_INVALID_ARG_TYPE",function(e,t,r){var n;typeof t=="string"&&BMt(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";var i;if(OMt(e," argument"))i="The ".concat(e," ").concat(n," ").concat(QSe(t,"type"));else{var a=qMt(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(a," ").concat(n," ").concat(QSe(t,"type"))}return i+=". Received type ".concat(typeof r),i},TypeError);Y0("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");Y0("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});Y0("ERR_STREAM_PREMATURE_CLOSE","Premature close");Y0("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});Y0("ERR_MULTIPLE_CALLBACK","Callback called multiple times");Y0("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");Y0("ERR_STREAM_WRITE_AFTER_END","write after end");Y0("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);Y0("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);Y0("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");tMe.exports.codes=eMe});var gW=Ae((fpr,rMe)=>{"use strict";var NMt=v2().codes.ERR_INVALID_OPT_VALUE;function UMt(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function VMt(e,t,r,n){var i=UMt(t,n,r);if(i!=null){if(!(isFinite(i)&&Math.floor(i)===i)||i<0){var a=n?r:"highWaterMark";throw new NMt(a,i)}return Math.floor(i)}return e.objectMode?16:16*1024}rMe.exports={getHighWaterMark:VMt}});var nMe=Ae((cpr,iMe)=>{iMe.exports=GMt;function GMt(e,t){if(_W("noDeprecation"))return e;var r=!1;function n(){if(!r){if(_W("throwDeprecation"))throw new Error(t);_W("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}return n}function _W(e){try{if(!window.localStorage)return!1}catch(r){return!1}var t=window.localStorage[e];return t==null?!1:String(t).toLowerCase()==="true"}});var wW=Ae((hpr,fMe)=>{"use strict";fMe.exports=Vh;function oMe(e){var t=this;this.next=null,this.entry=null,this.finish=function(){m5t(t,e)}}var hA;Vh.WritableState=QE;var HMt={deprecate:nMe()},sMe=bH(),wD=f2().Buffer,WMt=window.Uint8Array||function(){};function jMt(e){return wD.from(e)}function XMt(e){return wD.isBuffer(e)||e instanceof WMt}var bW=yW(),ZMt=gW(),YMt=ZMt.getHighWaterMark,I_=v2().codes,KMt=I_.ERR_INVALID_ARG_TYPE,JMt=I_.ERR_METHOD_NOT_IMPLEMENTED,$Mt=I_.ERR_MULTIPLE_CALLBACK,QMt=I_.ERR_STREAM_CANNOT_PIPE,e5t=I_.ERR_STREAM_DESTROYED,t5t=I_.ERR_STREAM_NULL_VALUES,r5t=I_.ERR_STREAM_WRITE_AFTER_END,i5t=I_.ERR_UNKNOWN_ENCODING,dA=bW.errorOrDestroy;Ug()(Vh,sMe);function n5t(){}function QE(e,t,r){hA=hA||m2(),e=e||{},typeof r!="boolean"&&(r=t instanceof hA),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=YMt(this,e,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var n=e.decodeStrings===!1;this.decodeStrings=!n,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(i){c5t(t,i)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new oMe(this)}QE.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty(QE.prototype,"buffer",{get:HMt.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}})();var bD;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(bD=Function.prototype[Symbol.hasInstance],Object.defineProperty(Vh,Symbol.hasInstance,{value:function(t){return bD.call(this,t)?!0:this!==Vh?!1:t&&t._writableState instanceof QE}})):bD=function(t){return t instanceof this};function Vh(e){hA=hA||m2();var t=this instanceof hA;if(!t&&!bD.call(Vh,this))return new Vh(e);this._writableState=new QE(e,this,t),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),sMe.call(this)}Vh.prototype.pipe=function(){dA(this,new QMt)};function a5t(e,t){var r=new r5t;dA(e,r),process.nextTick(t,r)}function o5t(e,t,r,n){var i;return r===null?i=new t5t:typeof r!="string"&&!t.objectMode&&(i=new KMt("chunk",["string","Buffer"],r)),i?(dA(e,i),process.nextTick(n,i),!1):!0}Vh.prototype.write=function(e,t,r){var n=this._writableState,i=!1,a=!n.objectMode&&XMt(e);return a&&!wD.isBuffer(e)&&(e=jMt(e)),typeof t=="function"&&(r=t,t=null),a?t="buffer":t||(t=n.defaultEncoding),typeof r!="function"&&(r=n5t),n.ending?a5t(this,r):(a||o5t(this,n,e,r))&&(n.pendingcb++,i=l5t(this,n,a,e,t,r)),i};Vh.prototype.cork=function(){this._writableState.corked++};Vh.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&lMe(this,e))};Vh.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new i5t(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(Vh.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function s5t(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=wD.from(t,r)),t}Object.defineProperty(Vh.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function l5t(e,t,r,n,i,a){if(!r){var o=s5t(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var u=t.length{"use strict";var y5t=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};hMe.exports=qy;var cMe=SW(),AW=wW();Ug()(qy,cMe);for(TW=y5t(AW.prototype),TD=0;TD{var SD=f2(),Ny=SD.Buffer;function dMe(e,t){for(var r in e)t[r]=e[r]}Ny.from&&Ny.alloc&&Ny.allocUnsafe&&Ny.allocUnsafeSlow?pMe.exports=SD:(dMe(SD,MW),MW.Buffer=y2);function y2(e,t,r){return Ny(e,t,r)}y2.prototype=Object.create(Ny.prototype);dMe(Ny,y2);y2.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return Ny(e,t,r)};y2.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var n=Ny(e);return t!==void 0?typeof r=="string"?n.fill(t,r):n.fill(t):n.fill(0),n};y2.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return Ny(e)};y2.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return SD.SlowBuffer(e)}});var CW=Ae(yMe=>{"use strict";var kW=vMe().Buffer,mMe=kW.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function x5t(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function b5t(e){var t=x5t(e);if(typeof t!="string"&&(kW.isEncoding===mMe||!mMe(e)))throw new Error("Unknown encoding: "+e);return t||e}yMe.StringDecoder=e4;function e4(e){this.encoding=b5t(e);var t;switch(this.encoding){case"utf16le":this.text=E5t,this.end=k5t,t=4;break;case"utf8":this.fillLast=A5t,t=4;break;case"base64":this.text=C5t,this.end=L5t,t=3;break;default:this.write=P5t,this.end=z5t;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=kW.allocUnsafe(t)}e4.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function w5t(e,t,r){var n=t.length-1;if(n=0?(i>0&&(e.lastNeed=i-1),i):--n=0?(i>0&&(e.lastNeed=i-2),i):--n=0?(i>0&&(i===2?i=0:e.lastNeed=i-3),i):0))}function T5t(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function A5t(e){var t=this.lastTotal-this.lastNeed,r=T5t(this,e,t);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function S5t(e,t){var r=w5t(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)}function M5t(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function E5t(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function k5t(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function C5t(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function L5t(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function P5t(e){return e.toString(this.encoding)}function z5t(e){return e&&e.length?this.write(e):""}});var MD=Ae((vpr,xMe)=>{"use strict";var gMe=v2().codes.ERR_STREAM_PREMATURE_CLOSE;function I5t(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i{"use strict";var ED;function R_(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var F5t=MD(),D_=Symbol("lastResolve"),g2=Symbol("lastReject"),t4=Symbol("error"),kD=Symbol("ended"),_2=Symbol("lastPromise"),LW=Symbol("handlePromise"),x2=Symbol("stream");function F_(e,t){return{value:e,done:t}}function B5t(e){var t=e[D_];if(t!==null){var r=e[x2].read();r!==null&&(e[_2]=null,e[D_]=null,e[g2]=null,t(F_(r,!1)))}}function O5t(e){process.nextTick(B5t,e)}function q5t(e,t){return function(r,n){e.then(function(){if(t[kD]){r(F_(void 0,!0));return}t[LW](r,n)},n)}}var N5t=Object.getPrototypeOf(function(){}),U5t=Object.setPrototypeOf((ED={get stream(){return this[x2]},next:function(){var t=this,r=this[t4];if(r!==null)return Promise.reject(r);if(this[kD])return Promise.resolve(F_(void 0,!0));if(this[x2].destroyed)return new Promise(function(o,s){process.nextTick(function(){t[t4]?s(t[t4]):o(F_(void 0,!0))})});var n=this[_2],i;if(n)i=new Promise(q5t(n,this));else{var a=this[x2].read();if(a!==null)return Promise.resolve(F_(a,!1));i=new Promise(this[LW])}return this[_2]=i,i}},R_(ED,Symbol.asyncIterator,function(){return this}),R_(ED,"return",function(){var t=this;return new Promise(function(r,n){t[x2].destroy(null,function(i){if(i){n(i);return}r(F_(void 0,!0))})})}),ED),N5t),V5t=function(t){var r,n=Object.create(U5t,(r={},R_(r,x2,{value:t,writable:!0}),R_(r,D_,{value:null,writable:!0}),R_(r,g2,{value:null,writable:!0}),R_(r,t4,{value:null,writable:!0}),R_(r,kD,{value:t._readableState.endEmitted,writable:!0}),R_(r,LW,{value:function(a,o){var s=n[x2].read();s?(n[_2]=null,n[D_]=null,n[g2]=null,a(F_(s,!1))):(n[D_]=a,n[g2]=o)},writable:!0}),r));return n[_2]=null,F5t(t,function(i){if(i&&i.code!=="ERR_STREAM_PREMATURE_CLOSE"){var a=n[g2];a!==null&&(n[_2]=null,n[D_]=null,n[g2]=null,a(i)),n[t4]=i;return}var o=n[D_];o!==null&&(n[_2]=null,n[D_]=null,n[g2]=null,o(F_(void 0,!0))),n[kD]=!0}),t.on("readable",O5t.bind(null,n)),n};bMe.exports=V5t});var AMe=Ae((ypr,TMe)=>{TMe.exports=function(){throw new Error("Readable.from is not available in the browser")}});var SW=Ae((_pr,RMe)=>{"use strict";RMe.exports=hc;var pA;hc.ReadableState=kMe;var gpr=vb().EventEmitter,EMe=function(t,r){return t.listeners(r).length},i4=bH(),CD=f2().Buffer,G5t=window.Uint8Array||function(){};function H5t(e){return CD.from(e)}function W5t(e){return CD.isBuffer(e)||e instanceof G5t}var PW=pW(),Yf;PW&&PW.debuglog?Yf=PW.debuglog("stream"):Yf=function(){};var j5t=KSe(),OW=yW(),X5t=gW(),Z5t=X5t.getHighWaterMark,LD=v2().codes,Y5t=LD.ERR_INVALID_ARG_TYPE,K5t=LD.ERR_STREAM_PUSH_AFTER_EOF,J5t=LD.ERR_METHOD_NOT_IMPLEMENTED,$5t=LD.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,vA,zW,IW;Ug()(hc,i4);var r4=OW.errorOrDestroy,RW=["error","close","destroy","pause","resume"];function Q5t(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function kMe(e,t,r){pA=pA||m2(),e=e||{},typeof r!="boolean"&&(r=t instanceof pA),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=Z5t(this,e,"readableHighWaterMark",r),this.buffer=new j5t,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(vA||(vA=CW().StringDecoder),this.decoder=new vA(e.encoding),this.encoding=e.encoding)}function hc(e){if(pA=pA||m2(),!(this instanceof hc))return new hc(e);var t=this instanceof pA;this._readableState=new kMe(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),i4.call(this)}Object.defineProperty(hc.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});hc.prototype.destroy=OW.destroy;hc.prototype._undestroy=OW.undestroy;hc.prototype._destroy=function(e,t){t(e)};hc.prototype.push=function(e,t){var r=this._readableState,n;return r.objectMode?n=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=CD.from(e,t),t=""),n=!0),CMe(this,e,t,!1,n)};hc.prototype.unshift=function(e){return CMe(this,e,null,!0,!1)};function CMe(e,t,r,n,i){Yf("readableAddChunk",t);var a=e._readableState;if(t===null)a.reading=!1,rEt(e,a);else{var o;if(i||(o=eEt(a,t)),o)r4(e,o);else if(a.objectMode||t&&t.length>0)if(typeof t!="string"&&!a.objectMode&&Object.getPrototypeOf(t)!==CD.prototype&&(t=H5t(t)),n)a.endEmitted?r4(e,new $5t):DW(e,a,t,!0);else if(a.ended)r4(e,new K5t);else{if(a.destroyed)return!1;a.reading=!1,a.decoder&&!r?(t=a.decoder.write(t),a.objectMode||t.length!==0?DW(e,a,t,!1):BW(e,a)):DW(e,a,t,!1)}else n||(a.reading=!1,BW(e,a))}return!a.ended&&(a.length=SMe?e=SMe:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function MMe(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=tEt(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}hc.prototype.read=function(e){Yf("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended))return Yf("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?FW(this):PD(this),null;if(e=MMe(e,t),e===0&&t.ended)return t.length===0&&FW(this),null;var n=t.needReadable;Yf("need readable",n),(t.length===0||t.length-e0?i=zMe(e,t):i=null,i===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&FW(this)),i!==null&&this.emit("data",i),i};function rEt(e,t){if(Yf("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?PD(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,LMe(e)))}}function PD(e){var t=e._readableState;Yf("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(Yf("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(LMe,e))}function LMe(e){var t=e._readableState;Yf("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,qW(e)}function BW(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(iEt,e,t))}function iEt(e,t){for(;!t.reading&&!t.ended&&(t.length1&&IMe(n.pipes,e)!==-1)&&!l&&(Yf("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function h(b){Yf("onerror",b),_(),e.removeListener("error",h),EMe(e,"error")===0&&r4(e,b)}Q5t(e,"error",h);function d(){e.removeListener("finish",p),_()}e.once("close",d);function p(){Yf("onfinish"),e.removeListener("close",d),_()}e.once("finish",p);function _(){Yf("unpipe"),r.unpipe(e)}return e.emit("pipe",r),n.flowing||(Yf("pipe resume"),r.resume()),e};function nEt(e){return function(){var r=e._readableState;Yf("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&EMe(e,"data")&&(r.flowing=!0,qW(e))}}hc.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,n.flowing!==!1&&this.resume()):e==="readable"&&!n.endEmitted&&!n.readableListening&&(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,Yf("on readable",n.length,n.reading),n.length?PD(this):n.reading||process.nextTick(aEt,this)),r};hc.prototype.addListener=hc.prototype.on;hc.prototype.removeListener=function(e,t){var r=i4.prototype.removeListener.call(this,e,t);return e==="readable"&&process.nextTick(PMe,this),r};hc.prototype.removeAllListeners=function(e){var t=i4.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(PMe,this),t};function PMe(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function aEt(e){Yf("readable nexttick read 0"),e.read(0)}hc.prototype.resume=function(){var e=this._readableState;return e.flowing||(Yf("resume"),e.flowing=!e.readableListening,oEt(this,e)),e.paused=!1,this};function oEt(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(sEt,e,t))}function sEt(e,t){Yf("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),qW(e),t.flowing&&!t.reading&&e.read(0)}hc.prototype.pause=function(){return Yf("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(Yf("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function qW(e){var t=e._readableState;for(Yf("flow",t.flowing);t.flowing&&e.read()!==null;);}hc.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;e.on("end",function(){if(Yf("wrapped end"),r.decoder&&!r.ended){var o=r.decoder.end();o&&o.length&&t.push(o)}t.push(null)}),e.on("data",function(o){if(Yf("wrapped data"),r.decoder&&(o=r.decoder.write(o)),!(r.objectMode&&o==null)&&!(!r.objectMode&&(!o||!o.length))){var s=t.push(o);s||(n=!0,e.pause())}});for(var i in e)this[i]===void 0&&typeof e[i]=="function"&&(this[i]=function(s){return function(){return e[s].apply(e,arguments)}}(i));for(var a=0;a=t.length?(t.decoder?r=t.buffer.join(""):t.buffer.length===1?r=t.buffer.first():r=t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function FW(e){var t=e._readableState;Yf("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(lEt,t,e))}function lEt(e,t){if(Yf("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(hc.from=function(e,t){return IW===void 0&&(IW=AMe()),IW(hc,e,t)});function IMe(e,t){for(var r=0,n=e.length;r{"use strict";FMe.exports=Gg;var zD=v2().codes,uEt=zD.ERR_METHOD_NOT_IMPLEMENTED,fEt=zD.ERR_MULTIPLE_CALLBACK,cEt=zD.ERR_TRANSFORM_ALREADY_TRANSFORMING,hEt=zD.ERR_TRANSFORM_WITH_LENGTH_0,ID=m2();Ug()(Gg,ID);function dEt(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(n===null)return this.emit("error",new fEt);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length{"use strict";OMe.exports=n4;var BMe=NW();Ug()(n4,BMe);function n4(e){if(!(this instanceof n4))return new n4(e);BMe.call(this,e)}n4.prototype._transform=function(e,t,r){r(null,e)}});var HMe=Ae((wpr,GMe)=>{"use strict";var UW;function vEt(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var VMe=v2().codes,mEt=VMe.ERR_MISSING_ARGS,yEt=VMe.ERR_STREAM_DESTROYED;function NMe(e){if(e)throw e}function gEt(e){return e.setHeader&&typeof e.abort=="function"}function _Et(e,t,r,n){n=vEt(n);var i=!1;e.on("close",function(){i=!0}),UW===void 0&&(UW=MD()),UW(e,{readable:t,writable:r},function(o){if(o)return n(o);i=!0,n()});var a=!1;return function(o){if(!i&&!a){if(a=!0,gEt(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();n(o||new yEt("pipe"))}}}function UMe(e){e()}function xEt(e,t){return e.pipe(t)}function bEt(e){return!e.length||typeof e[e.length-1]!="function"?NMe:e.pop()}function wEt(){for(var e=arguments.length,t=new Array(e),r=0;r0;return _Et(o,u,l,function(f){i||(i=f),f&&a.forEach(UMe),!u&&(a.forEach(UMe),n(i))})});return t.reduce(xEt)}GMe.exports=wEt});var jMe=Ae((Tpr,WMe)=>{WMe.exports=K0;var VW=vb().EventEmitter,TEt=Ug();TEt(K0,VW);K0.Readable=SW();K0.Writable=wW();K0.Duplex=m2();K0.Transform=NW();K0.PassThrough=qMe();K0.finished=MD();K0.pipeline=HMe();K0.Stream=K0;function K0(){VW.call(this)}K0.prototype.pipe=function(e,t){var r=this;function n(f){e.writable&&e.write(f)===!1&&r.pause&&r.pause()}r.on("data",n);function i(){r.readable&&r.resume&&r.resume()}e.on("drain",i),!e._isStdio&&(!t||t.end!==!1)&&(r.on("end",o),r.on("close",s));var a=!1;function o(){a||(a=!0,e.end())}function s(){a||(a=!0,typeof e.destroy=="function"&&e.destroy())}function u(f){if(l(),VW.listenerCount(this,"error")===0)throw f}r.on("error",u),e.on("error",u);function l(){r.removeListener("data",n),e.removeListener("drain",i),r.removeListener("end",o),r.removeListener("close",s),r.removeListener("error",u),e.removeListener("error",u),r.removeListener("end",l),r.removeListener("close",l),e.removeListener("close",l)}return r.on("end",l),r.on("close",l),e.on("close",l),e.emit("pipe",r),e}});var yA=Ae(ec=>{var XMe=Object.getOwnPropertyDescriptors||function(t){for(var r=Object.keys(t),n={},i=0;i=i)return s;switch(s){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(u){return"[Circular]"}default:return s}}),o=n[r];r=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),jW(t)?r.showHidden=t:t&&ec._extend(r,t),w2(r.showHidden)&&(r.showHidden=!1),w2(r.depth)&&(r.depth=2),w2(r.colors)&&(r.colors=!1),w2(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=SEt),BD(r,e,r.depth)}ec.inspect=B_;B_.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};B_.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function SEt(e,t){var r=B_.styles[t];return r?"\x1B["+B_.colors[r][0]+"m"+e+"\x1B["+B_.colors[r][1]+"m":e}function MEt(e,t){return e}function EEt(e){var t={};return e.forEach(function(r,n){t[r]=!0}),t}function BD(e,t,r){if(e.customInspect&&t&&FD(t.inspect)&&t.inspect!==ec.inspect&&!(t.constructor&&t.constructor.prototype===t)){var n=t.inspect(r,e);return ND(n)||(n=BD(e,n,r)),n}var i=kEt(e,t);if(i)return i;var a=Object.keys(t),o=EEt(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(t)),o4(t)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return GW(t);if(a.length===0){if(FD(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if(a4(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(OD(t))return e.stylize(Date.prototype.toString.call(t),"date");if(o4(t))return GW(t)}var u="",l=!1,f=["{","}"];if(YMe(t)&&(l=!0,f=["[","]"]),FD(t)){var c=t.name?": "+t.name:"";u=" [Function"+c+"]"}if(a4(t)&&(u=" "+RegExp.prototype.toString.call(t)),OD(t)&&(u=" "+Date.prototype.toUTCString.call(t)),o4(t)&&(u=" "+GW(t)),a.length===0&&(!l||t.length==0))return f[0]+u+f[1];if(r<0)return a4(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var h;return l?h=CEt(e,t,r,o,a):h=a.map(function(d){return WW(e,t,r,o,d,l)}),e.seen.pop(),LEt(h,u,f)}function kEt(e,t){if(w2(t))return e.stylize("undefined","undefined");if(ND(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(KMe(t))return e.stylize(""+t,"number");if(jW(t))return e.stylize(""+t,"boolean");if(qD(t))return e.stylize("null","null")}function GW(e){return"["+Error.prototype.toString.call(e)+"]"}function CEt(e,t,r,n,i){for(var a=[],o=0,s=t.length;o-1&&(a?s=s.split(` `).map(function(l){return" "+l}).join(` `).slice(2):s=` `+s.split(` `).map(function(l){return" "+l}).join(` -`))):s=e.stylize("[Circular]","special")),w2(o)){if(a&&i.match(/^\d+$/))return s;o=JSON.stringify(""+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function CEt(e,t,r){var n=0,i=e.reduce(function(a,o){return n++,o.indexOf(` +`))):s=e.stylize("[Circular]","special")),w2(o)){if(a&&i.match(/^\d+$/))return s;o=JSON.stringify(""+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function LEt(e,t,r){var n=0,i=e.reduce(function(a,o){return n++,o.indexOf(` `)>=0&&n++,a+o.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?r[0]+(t===""?"":t+` `)+" "+e.join(`, - `)+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}ec.types=sW();function ZMe(e){return Array.isArray(e)}ec.isArray=ZMe;function jW(e){return typeof e=="boolean"}ec.isBoolean=jW;function OD(e){return e===null}ec.isNull=OD;function LEt(e){return e==null}ec.isNullOrUndefined=LEt;function YMe(e){return typeof e=="number"}ec.isNumber=YMe;function qD(e){return typeof e=="string"}ec.isString=qD;function PEt(e){return typeof e=="symbol"}ec.isSymbol=PEt;function w2(e){return e===void 0}ec.isUndefined=w2;function n4(e){return vA(e)&&XW(e)==="[object RegExp]"}ec.isRegExp=n4;ec.types.isRegExp=n4;function vA(e){return typeof e=="object"&&e!==null}ec.isObject=vA;function BD(e){return vA(e)&&XW(e)==="[object Date]"}ec.isDate=BD;ec.types.isDate=BD;function a4(e){return vA(e)&&(XW(e)==="[object Error]"||e instanceof Error)}ec.isError=a4;ec.types.isNativeError=a4;function DD(e){return typeof e=="function"}ec.isFunction=DD;function zEt(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}ec.isPrimitive=zEt;ec.isBuffer=lW();function XW(e){return Object.prototype.toString.call(e)}function HW(e){return e<10?"0"+e.toString(10):e.toString(10)}var IEt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function REt(){var e=new Date,t=[HW(e.getHours()),HW(e.getMinutes()),HW(e.getSeconds())].join(":");return[e.getDate(),IEt[e.getMonth()],t].join(" ")}ec.log=function(){console.log("%s - %s",REt(),ec.format.apply(ec,arguments))};ec.inherits=Ug();ec._extend=function(e,t){if(!t||!vA(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};function KMe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var b2=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;ec.promisify=function(t){if(typeof t!="function")throw new TypeError('The "original" argument must be of type Function');if(b2&&t[b2]){var r=t[b2];if(typeof r!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(r,b2,{value:r,enumerable:!1,writable:!1,configurable:!0}),r}function r(){for(var n,i,a=new Promise(function(u,l){n=u,i=l}),o=[],s=0;s{"use strict";function O_(e){"@babel/helpers - typeof";return O_=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},O_(e)}function JMe(e,t){for(var r=0;r2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function jEt(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function XEt(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function ZEt(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}o4("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError);o4("ERR_INVALID_ARG_TYPE",function(e,t,r){yA===void 0&&(yA=s4()),yA(typeof e=="string","'name' must be a string");var n;typeof t=="string"&&jEt(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";var i;if(XEt(e," argument"))i="The ".concat(e," ").concat(n," ").concat($Me(t,"type"));else{var a=ZEt(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(a," ").concat(n," ").concat($Me(t,"type"))}return i+=". Received type ".concat(O_(r)),i},TypeError);o4("ERR_INVALID_ARG_VALUE",function(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";ZW===void 0&&(ZW=mA());var n=ZW.inspect(t);return n.length>128&&(n="".concat(n.slice(0,128),"...")),"The argument '".concat(e,"' ").concat(r,". Received ").concat(n)},TypeError,RangeError);o4("ERR_INVALID_RETURN_VALUE",function(e,t,r){var n;return r&&r.constructor&&r.constructor.name?n="instance of ".concat(r.constructor.name):n="type ".concat(O_(r)),"Expected ".concat(e,' to be returned from the "').concat(t,'"')+" function but got ".concat(n,".")},TypeError);o4("ERR_MISSING_ARGS",function(){for(var e=arguments.length,t=new Array(e),r=0;r0,"At least one arg needs to be specified");var n="The ",i=t.length;switch(t=t.map(function(a){return'"'.concat(a,'"')}),i){case 1:n+="".concat(t[0]," argument");break;case 2:n+="".concat(t[0]," and ").concat(t[1]," arguments");break;default:n+=t.slice(0,i-1).join(", "),n+=", and ".concat(t[i-1]," arguments");break}return"".concat(n," must be specified")},TypeError);e5e.exports.codes=QMe});var f5e=Ae((Mpr,u5e)=>{"use strict";function t5e(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function r5e(e){for(var t=1;te.length)&&(r=e.length),e.substring(r-t.length,r)===t}function a4t(e,t){if(t=Math.floor(t),e.length==0||t==0)return"";var r=e.length*t;for(t=Math.floor(Math.log(t)/Math.log(2));t;)e+=e,t--;return e+=e.substring(0,r-e.length),e}var Hm="",l4="",u4="",Sp="",T2={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},o4t=10;function a5e(e){var t=Object.keys(e),r=Object.create(Object.getPrototypeOf(e));return t.forEach(function(n){r[n]=e[n]}),Object.defineProperty(r,"message",{value:e.message}),r}function f4(e){return QW(e,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function s4t(e,t,r){var n="",i="",a=0,o="",s=!1,u=f4(e),l=u.split(` -`),f=f4(t).split(` -`),c=0,h="";if(r==="strictEqual"&&Rv(e)==="object"&&Rv(t)==="object"&&e!==null&&t!==null&&(r="strictEqualObject"),l.length===1&&f.length===1&&l[0]!==f[0]){var d=l[0].length+f[0].length;if(d<=o4t){if((Rv(e)!=="object"||e===null)&&(Rv(t)!=="object"||t===null)&&(e!==0||t!==0))return"".concat(T2[r],` + `)+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}ec.types=sW();function YMe(e){return Array.isArray(e)}ec.isArray=YMe;function jW(e){return typeof e=="boolean"}ec.isBoolean=jW;function qD(e){return e===null}ec.isNull=qD;function PEt(e){return e==null}ec.isNullOrUndefined=PEt;function KMe(e){return typeof e=="number"}ec.isNumber=KMe;function ND(e){return typeof e=="string"}ec.isString=ND;function zEt(e){return typeof e=="symbol"}ec.isSymbol=zEt;function w2(e){return e===void 0}ec.isUndefined=w2;function a4(e){return mA(e)&&XW(e)==="[object RegExp]"}ec.isRegExp=a4;ec.types.isRegExp=a4;function mA(e){return typeof e=="object"&&e!==null}ec.isObject=mA;function OD(e){return mA(e)&&XW(e)==="[object Date]"}ec.isDate=OD;ec.types.isDate=OD;function o4(e){return mA(e)&&(XW(e)==="[object Error]"||e instanceof Error)}ec.isError=o4;ec.types.isNativeError=o4;function FD(e){return typeof e=="function"}ec.isFunction=FD;function IEt(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}ec.isPrimitive=IEt;ec.isBuffer=lW();function XW(e){return Object.prototype.toString.call(e)}function HW(e){return e<10?"0"+e.toString(10):e.toString(10)}var REt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function DEt(){var e=new Date,t=[HW(e.getHours()),HW(e.getMinutes()),HW(e.getSeconds())].join(":");return[e.getDate(),REt[e.getMonth()],t].join(" ")}ec.log=function(){console.log("%s - %s",DEt(),ec.format.apply(ec,arguments))};ec.inherits=Ug();ec._extend=function(e,t){if(!t||!mA(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};function JMe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var b2=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;ec.promisify=function(t){if(typeof t!="function")throw new TypeError('The "original" argument must be of type Function');if(b2&&t[b2]){var r=t[b2];if(typeof r!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(r,b2,{value:r,enumerable:!1,writable:!1,configurable:!0}),r}function r(){for(var n,i,a=new Promise(function(u,l){n=u,i=l}),o=[],s=0;s{"use strict";function O_(e){"@babel/helpers - typeof";return O_=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},O_(e)}function $Me(e,t){for(var r=0;r2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function XEt(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function ZEt(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function YEt(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}s4("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError);s4("ERR_INVALID_ARG_TYPE",function(e,t,r){gA===void 0&&(gA=l4()),gA(typeof e=="string","'name' must be a string");var n;typeof t=="string"&&XEt(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";var i;if(ZEt(e," argument"))i="The ".concat(e," ").concat(n," ").concat(QMe(t,"type"));else{var a=YEt(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(a," ").concat(n," ").concat(QMe(t,"type"))}return i+=". Received type ".concat(O_(r)),i},TypeError);s4("ERR_INVALID_ARG_VALUE",function(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";ZW===void 0&&(ZW=yA());var n=ZW.inspect(t);return n.length>128&&(n="".concat(n.slice(0,128),"...")),"The argument '".concat(e,"' ").concat(r,". Received ").concat(n)},TypeError,RangeError);s4("ERR_INVALID_RETURN_VALUE",function(e,t,r){var n;return r&&r.constructor&&r.constructor.name?n="instance of ".concat(r.constructor.name):n="type ".concat(O_(r)),"Expected ".concat(e,' to be returned from the "').concat(t,'"')+" function but got ".concat(n,".")},TypeError);s4("ERR_MISSING_ARGS",function(){for(var e=arguments.length,t=new Array(e),r=0;r0,"At least one arg needs to be specified");var n="The ",i=t.length;switch(t=t.map(function(a){return'"'.concat(a,'"')}),i){case 1:n+="".concat(t[0]," argument");break;case 2:n+="".concat(t[0]," and ").concat(t[1]," arguments");break;default:n+=t.slice(0,i-1).join(", "),n+=", and ".concat(t[i-1]," arguments");break}return"".concat(n," must be specified")},TypeError);t5e.exports.codes=e5e});var c5e=Ae((Mpr,f5e)=>{"use strict";function r5e(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function i5e(e){for(var t=1;te.length)&&(r=e.length),e.substring(r-t.length,r)===t}function o4t(e,t){if(t=Math.floor(t),e.length==0||t==0)return"";var r=e.length*t;for(t=Math.floor(Math.log(t)/Math.log(2));t;)e+=e,t--;return e+=e.substring(0,r-e.length),e}var Wm="",u4="",f4="",Sp="",T2={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},s4t=10;function o5e(e){var t=Object.keys(e),r=Object.create(Object.getPrototypeOf(e));return t.forEach(function(n){r[n]=e[n]}),Object.defineProperty(r,"message",{value:e.message}),r}function c4(e){return QW(e,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function l4t(e,t,r){var n="",i="",a=0,o="",s=!1,u=c4(e),l=u.split(` +`),f=c4(t).split(` +`),c=0,h="";if(r==="strictEqual"&&Rv(e)==="object"&&Rv(t)==="object"&&e!==null&&t!==null&&(r="strictEqualObject"),l.length===1&&f.length===1&&l[0]!==f[0]){var d=l[0].length+f[0].length;if(d<=s4t){if((Rv(e)!=="object"||e===null)&&(Rv(t)!=="object"||t===null)&&(e!==0||t!==0))return"".concat(T2[r],` `)+"".concat(l[0]," !== ").concat(f[0],` `)}else if(r!=="strictEqualObject"){var p=process.stderr&&process.stderr.isTTY?process.stderr.columns:80;if(d2&&(h=` - `.concat(a4t(" ",c),"^"),c=0)}}}for(var _=l[l.length-1],b=f[f.length-1];_===b&&(c++<2?o=` + `.concat(o4t(" ",c),"^"),c=0)}}}for(var _=l[l.length-1],b=f[f.length-1];_===b&&(c++<2?o=` `.concat(_).concat(o):n=_,l.pop(),f.pop(),!(l.length===0||f.length===0));)_=l[l.length-1],b=f[f.length-1];var v=Math.max(l.length,f.length);if(v===0){var k=u.split(` -`);if(k.length>30)for(k[26]="".concat(Hm,"...").concat(Sp);k.length>27;)k.pop();return"".concat(T2.notIdentical,` +`);if(k.length>30)for(k[26]="".concat(Wm,"...").concat(Sp);k.length>27;)k.pop();return"".concat(T2.notIdentical,` `).concat(k.join(` `),` `)}c>3&&(o=` -`.concat(Hm,"...").concat(Sp).concat(o),s=!0),n!==""&&(o=` +`.concat(Wm,"...").concat(Sp).concat(o),s=!0),n!==""&&(o=` `.concat(n).concat(o),n="");var E=0,A=T2[r]+` -`.concat(l4,"+ actual").concat(Sp," ").concat(u4,"- expected").concat(Sp),L=" ".concat(Hm,"...").concat(Sp," Lines skipped");for(c=0;c1&&c>2&&(x>4?(i+=` -`.concat(Hm,"...").concat(Sp),s=!0):x>3&&(i+=` +`.concat(u4,"+ actual").concat(Sp," ").concat(f4,"- expected").concat(Sp),L=" ".concat(Wm,"...").concat(Sp," Lines skipped");for(c=0;c1&&c>2&&(x>4?(i+=` +`.concat(Wm,"...").concat(Sp),s=!0):x>3&&(i+=` `.concat(f[c-2]),E++),i+=` `.concat(f[c-1]),E++),a=c,n+=` -`.concat(u4,"-").concat(Sp," ").concat(f[c]),E++;else if(f.length1&&c>2&&(x>4?(i+=` -`.concat(Hm,"...").concat(Sp),s=!0):x>3&&(i+=` +`.concat(f4,"-").concat(Sp," ").concat(f[c]),E++;else if(f.length1&&c>2&&(x>4?(i+=` +`.concat(Wm,"...").concat(Sp),s=!0):x>3&&(i+=` `.concat(l[c-2]),E++),i+=` `.concat(l[c-1]),E++),a=c,i+=` -`.concat(l4,"+").concat(Sp," ").concat(l[c]),E++;else{var C=f[c],M=l[c],m=M!==C&&(!n5e(M,",")||M.slice(0,-1)!==C);m&&n5e(C,",")&&C.slice(0,-1)===M&&(m=!1,M+=","),m?(x>1&&c>2&&(x>4?(i+=` -`.concat(Hm,"...").concat(Sp),s=!0):x>3&&(i+=` +`.concat(u4,"+").concat(Sp," ").concat(l[c]),E++;else{var C=f[c],M=l[c],m=M!==C&&(!a5e(M,",")||M.slice(0,-1)!==C);m&&a5e(C,",")&&C.slice(0,-1)===M&&(m=!1,M+=","),m?(x>1&&c>2&&(x>4?(i+=` +`.concat(Wm,"...").concat(Sp),s=!0):x>3&&(i+=` `.concat(l[c-2]),E++),i+=` `.concat(l[c-1]),E++),a=c,i+=` -`.concat(l4,"+").concat(Sp," ").concat(M),n+=` -`.concat(u4,"-").concat(Sp," ").concat(C),E+=2):(i+=n,n="",(x===1||c===0)&&(i+=` +`.concat(u4,"+").concat(Sp," ").concat(M),n+=` +`.concat(f4,"-").concat(Sp," ").concat(C),E+=2):(i+=n,n="",(x===1||c===0)&&(i+=` `.concat(M),E++))}if(E>20&&c30)for(d[26]="".concat(Hm,"...").concat(Sp);d.length>27;)d.pop();d.length===1?a=r.call(this,"".concat(h," ").concat(d[0])):a=r.call(this,"".concat(h,` +`).concat(Wm,"...").concat(Sp).concat(n,` +`)+"".concat(Wm,"...").concat(Sp)}return"".concat(A).concat(s?L:"",` +`).concat(i).concat(n).concat(o).concat(h)}var u4t=function(e,t){e4t(n,e);var r=t4t(n);function n(i){var a;if(JEt(this,n),Rv(i)!=="object"||i===null)throw new a4t("options","Object",i);var o=i.message,s=i.operator,u=i.stackStartFn,l=i.actual,f=i.expected,c=Error.stackTraceLimit;if(Error.stackTraceLimit=0,o!=null)a=r.call(this,String(o));else if(process.stderr&&process.stderr.isTTY&&(process.stderr&&process.stderr.getColorDepth&&process.stderr.getColorDepth()!==1?(Wm="\x1B[34m",u4="\x1B[32m",Sp="\x1B[39m",f4="\x1B[31m"):(Wm="",u4="",Sp="",f4="")),Rv(l)==="object"&&l!==null&&Rv(f)==="object"&&f!==null&&"stack"in l&&l instanceof Error&&"stack"in f&&f instanceof Error&&(l=o5e(l),f=o5e(f)),s==="deepStrictEqual"||s==="strictEqual")a=r.call(this,l4t(l,f,s));else if(s==="notDeepStrictEqual"||s==="notStrictEqual"){var h=T2[s],d=c4(l).split(` +`);if(s==="notStrictEqual"&&Rv(l)==="object"&&l!==null&&(h=T2.notStrictEqualObject),d.length>30)for(d[26]="".concat(Wm,"...").concat(Sp);d.length>27;)d.pop();d.length===1?a=r.call(this,"".concat(h," ").concat(d[0])):a=r.call(this,"".concat(h,` `).concat(d.join(` `),` -`))}else{var p=f4(l),_="",b=T2[s];s==="notDeepEqual"||s==="notEqual"?(p="".concat(T2[s],` +`))}else{var p=c4(l),_="",b=T2[s];s==="notDeepEqual"||s==="notEqual"?(p="".concat(T2[s],` -`).concat(p),p.length>1024&&(p="".concat(p.slice(0,1021),"..."))):(_="".concat(f4(f)),p.length>512&&(p="".concat(p.slice(0,509),"...")),_.length>512&&(_="".concat(_.slice(0,509),"...")),s==="deepEqual"||s==="equal"?p="".concat(b,` +`).concat(p),p.length>1024&&(p="".concat(p.slice(0,1021),"..."))):(_="".concat(c4(f)),p.length>512&&(p="".concat(p.slice(0,509),"...")),_.length>512&&(_="".concat(_.slice(0,509),"...")),s==="deepEqual"||s==="equal"?p="".concat(b,` `).concat(p,` should equal -`):_=" ".concat(s," ").concat(_)),a=r.call(this,"".concat(p).concat(_))}return Error.stackTraceLimit=c,a.generatedMessage=!o,Object.defineProperty(JW(a),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),a.code="ERR_ASSERTION",a.actual=l,a.expected=f,a.operator=s,Error.captureStackTrace&&Error.captureStackTrace(JW(a),u),a.stack,a.name="AssertionError",s5e(a)}return JEt(n,[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:t,value:function(a,o){return QW(this,r5e(r5e({},o),{},{customInspect:!1,depth:0}))}}]),n}($W(Error),QW.custom);u5e.exports=l4t});var ej=Ae((Epr,h5e)=>{"use strict";var c5e=Object.prototype.toString;h5e.exports=function(t){var r=c5e.call(t),n=r==="[object Arguments]";return n||(n=r!=="[object Array]"&&t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&c5e.call(t.callee)==="[object Function]"),n}});var b5e=Ae((kpr,x5e)=>{"use strict";var _5e;Object.keys||(d4=Object.prototype.hasOwnProperty,tj=Object.prototype.toString,d5e=ej(),rj=Object.prototype.propertyIsEnumerable,p5e=!rj.call({toString:null},"toString"),v5e=rj.call(function(){},"prototype"),p4=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],VD=function(e){var t=e.constructor;return t&&t.prototype===e},m5e={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},y5e=function(){if(typeof window=="undefined")return!1;for(var e in window)try{if(!m5e["$"+e]&&d4.call(window,e)&&window[e]!==null&&typeof window[e]=="object")try{VD(window[e])}catch(t){return!0}}catch(t){return!0}return!1}(),g5e=function(e){if(typeof window=="undefined"||!y5e)return VD(e);try{return VD(e)}catch(t){return!1}},_5e=function(t){var r=t!==null&&typeof t=="object",n=tj.call(t)==="[object Function]",i=d5e(t),a=r&&tj.call(t)==="[object String]",o=[];if(!r&&!n&&!i)throw new TypeError("Object.keys called on a non-object");var s=v5e&&n;if(a&&t.length>0&&!d4.call(t,0))for(var u=0;u0)for(var l=0;l{"use strict";var u4t=Array.prototype.slice,f4t=ej(),w5e=Object.keys,GD=w5e?function(t){return w5e(t)}:b5e(),T5e=Object.keys;GD.shim=function(){if(Object.keys){var t=function(){var r=Object.keys(arguments);return r&&r.length===arguments.length}(1,2);t||(Object.keys=function(n){return f4t(n)?T5e(u4t.call(n)):T5e(n)})}else Object.keys=GD;return Object.keys||GD};A5e.exports=GD});var L5e=Ae((Lpr,C5e)=>{"use strict";var c4t=ij(),E5e=HR()(),k5e=sA(),S5e=Object,h4t=k5e("Array.prototype.push"),M5e=k5e("Object.prototype.propertyIsEnumerable"),d4t=E5e?Object.getOwnPropertySymbols:null;C5e.exports=function(t,r){if(t==null)throw new TypeError("target must be an object");var n=S5e(t);if(arguments.length===1)return n;for(var i=1;i{"use strict";var nj=L5e(),p4t=function(){if(!Object.assign)return!1;for(var e="abcdefghijklmnopqrst",t=e.split(""),r={},n=0;n{"use strict";var I5e=function(e){return e!==e};R5e.exports=function(t,r){return t===0&&r===0?1/t===1/r:!!(t===r||I5e(t)&&I5e(r))}});var HD=Ae((Ipr,D5e)=>{"use strict";var m4t=aj();D5e.exports=function(){return typeof Object.is=="function"?Object.is:m4t}});var v4=Ae((Rpr,q5e)=>{"use strict";var y4t=ij(),g4t=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",_4t=Object.prototype.toString,x4t=Array.prototype.concat,F5e=Object.defineProperty,b4t=function(e){return typeof e=="function"&&_4t.call(e)==="[object Function]"},w4t=UH()(),B5e=F5e&&w4t,T4t=function(e,t,r,n){if(t in e){if(n===!0){if(e[t]===r)return}else if(!b4t(n)||!n())return}B5e?F5e(e,t,{configurable:!0,enumerable:!1,value:r,writable:!0}):e[t]=r},O5e=function(e,t){var r=arguments.length>2?arguments[2]:{},n=y4t(t);g4t&&(n=x4t.call(n,Object.getOwnPropertySymbols(t)));for(var i=0;i{"use strict";var A4t=HD(),S4t=v4();N5e.exports=function(){var t=A4t();return S4t(Object,{is:t},{is:function(){return Object.is!==t}}),t}});var W5e=Ae((Fpr,H5e)=>{"use strict";var M4t=v4(),E4t=jE(),k4t=aj(),V5e=HD(),C4t=U5e(),G5e=E4t(V5e(),Object);M4t(G5e,{getPolyfill:V5e,implementation:k4t,shim:C4t});H5e.exports=G5e});var oj=Ae((Bpr,j5e)=>{"use strict";j5e.exports=function(t){return t!==t}});var sj=Ae((Opr,X5e)=>{"use strict";var L4t=oj();X5e.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:L4t}});var Y5e=Ae((qpr,Z5e)=>{"use strict";var P4t=v4(),z4t=sj();Z5e.exports=function(){var t=z4t();return P4t(Number,{isNaN:t},{isNaN:function(){return Number.isNaN!==t}}),t}});var Q5e=Ae((Npr,$5e)=>{"use strict";var I4t=jE(),R4t=v4(),D4t=oj(),K5e=sj(),F4t=Y5e(),J5e=I4t(K5e(),Number);R4t(J5e,{getPolyfill:K5e,implementation:D4t,shim:F4t});$5e.exports=J5e});var _Ee=Ae((Upr,gEe)=>{"use strict";function eEe(e,t){return N4t(e)||q4t(e,t)||O4t(e,t)||B4t()}function B4t(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function O4t(e,t){if(e){if(typeof e=="string")return tEe(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return tEe(e,t)}}function tEe(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r10)return!0;for(var t=0;t57)return!0}return e.length===10&&e>=Math.pow(2,32)}function XD(e){return Object.keys(e).filter(Y4t).concat(YD(e).filter(Object.prototype.propertyIsEnumerable.bind(e)))}function pEe(e,t){if(e===t)return 0;for(var r=e.length,n=t.length,i=0,a=Math.min(r,n);i{"use strict";function Wm(e){"@babel/helpers - typeof";return Wm=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Wm(e)}function xEe(e,t){for(var r=0;r1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;i{"use strict";var h5e=Object.prototype.toString;d5e.exports=function(t){var r=h5e.call(t),n=r==="[object Arguments]";return n||(n=r!=="[object Array]"&&t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&h5e.call(t.callee)==="[object Function]"),n}});var w5e=Ae((kpr,b5e)=>{"use strict";var x5e;Object.keys||(p4=Object.prototype.hasOwnProperty,tj=Object.prototype.toString,p5e=ej(),rj=Object.prototype.propertyIsEnumerable,v5e=!rj.call({toString:null},"toString"),m5e=rj.call(function(){},"prototype"),v4=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],GD=function(e){var t=e.constructor;return t&&t.prototype===e},y5e={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},g5e=function(){if(typeof window=="undefined")return!1;for(var e in window)try{if(!y5e["$"+e]&&p4.call(window,e)&&window[e]!==null&&typeof window[e]=="object")try{GD(window[e])}catch(t){return!0}}catch(t){return!0}return!1}(),_5e=function(e){if(typeof window=="undefined"||!g5e)return GD(e);try{return GD(e)}catch(t){return!1}},x5e=function(t){var r=t!==null&&typeof t=="object",n=tj.call(t)==="[object Function]",i=p5e(t),a=r&&tj.call(t)==="[object String]",o=[];if(!r&&!n&&!i)throw new TypeError("Object.keys called on a non-object");var s=m5e&&n;if(a&&t.length>0&&!p4.call(t,0))for(var u=0;u0)for(var l=0;l{"use strict";var f4t=Array.prototype.slice,c4t=ej(),T5e=Object.keys,HD=T5e?function(t){return T5e(t)}:w5e(),A5e=Object.keys;HD.shim=function(){if(Object.keys){var t=function(){var r=Object.keys(arguments);return r&&r.length===arguments.length}(1,2);t||(Object.keys=function(n){return c4t(n)?A5e(f4t.call(n)):A5e(n)})}else Object.keys=HD;return Object.keys||HD};S5e.exports=HD});var P5e=Ae((Lpr,L5e)=>{"use strict";var h4t=ij(),k5e=WR()(),C5e=lA(),M5e=Object,d4t=C5e("Array.prototype.push"),E5e=C5e("Object.prototype.propertyIsEnumerable"),p4t=k5e?Object.getOwnPropertySymbols:null;L5e.exports=function(t,r){if(t==null)throw new TypeError("target must be an object");var n=M5e(t);if(arguments.length===1)return n;for(var i=1;i{"use strict";var nj=P5e(),v4t=function(){if(!Object.assign)return!1;for(var e="abcdefghijklmnopqrst",t=e.split(""),r={},n=0;n{"use strict";var R5e=function(e){return e!==e};D5e.exports=function(t,r){return t===0&&r===0?1/t===1/r:!!(t===r||R5e(t)&&R5e(r))}});var WD=Ae((Ipr,F5e)=>{"use strict";var y4t=aj();F5e.exports=function(){return typeof Object.is=="function"?Object.is:y4t}});var m4=Ae((Rpr,N5e)=>{"use strict";var g4t=ij(),_4t=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",x4t=Object.prototype.toString,b4t=Array.prototype.concat,B5e=Object.defineProperty,w4t=function(e){return typeof e=="function"&&x4t.call(e)==="[object Function]"},T4t=UH()(),O5e=B5e&&T4t,A4t=function(e,t,r,n){if(t in e){if(n===!0){if(e[t]===r)return}else if(!w4t(n)||!n())return}O5e?B5e(e,t,{configurable:!0,enumerable:!1,value:r,writable:!0}):e[t]=r},q5e=function(e,t){var r=arguments.length>2?arguments[2]:{},n=g4t(t);_4t&&(n=b4t.call(n,Object.getOwnPropertySymbols(t)));for(var i=0;i{"use strict";var S4t=WD(),M4t=m4();U5e.exports=function(){var t=S4t();return M4t(Object,{is:t},{is:function(){return Object.is!==t}}),t}});var j5e=Ae((Fpr,W5e)=>{"use strict";var E4t=m4(),k4t=XE(),C4t=aj(),G5e=WD(),L4t=V5e(),H5e=k4t(G5e(),Object);E4t(H5e,{getPolyfill:G5e,implementation:C4t,shim:L4t});W5e.exports=H5e});var oj=Ae((Bpr,X5e)=>{"use strict";X5e.exports=function(t){return t!==t}});var sj=Ae((Opr,Z5e)=>{"use strict";var P4t=oj();Z5e.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:P4t}});var K5e=Ae((qpr,Y5e)=>{"use strict";var z4t=m4(),I4t=sj();Y5e.exports=function(){var t=I4t();return z4t(Number,{isNaN:t},{isNaN:function(){return Number.isNaN!==t}}),t}});var eEe=Ae((Npr,Q5e)=>{"use strict";var R4t=XE(),D4t=m4(),F4t=oj(),J5e=sj(),B4t=K5e(),$5e=R4t(J5e(),Number);D4t($5e,{getPolyfill:J5e,implementation:F4t,shim:B4t});Q5e.exports=$5e});var xEe=Ae((Upr,_Ee)=>{"use strict";function tEe(e,t){return U4t(e)||N4t(e,t)||q4t(e,t)||O4t()}function O4t(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function q4t(e,t){if(e){if(typeof e=="string")return rEe(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return rEe(e,t)}}function rEe(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r10)return!0;for(var t=0;t57)return!0}return e.length===10&&e>=Math.pow(2,32)}function ZD(e){return Object.keys(e).filter(K4t).concat(KD(e).filter(Object.prototype.propertyIsEnumerable.bind(e)))}function vEe(e,t){if(e===t)return 0;for(var r=e.length,n=t.length,i=0,a=Math.min(r,n);i{"use strict";function jm(e){"@babel/helpers - typeof";return jm=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},jm(e)}function bEe(e,t){for(var r=0;r1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;i{var x4=1e3,b4=x4*60,w4=b4*60,T4=w4*24,bkt=T4*365.25;OEe.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return wkt(e);if(r==="number"&&isNaN(e)===!1)return t.long?Akt(e):Tkt(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function wkt(e){if(e=String(e),!(e.length>100)){var t=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*bkt;case"days":case"day":case"d":return r*T4;case"hours":case"hour":case"hrs":case"hr":case"h":return r*w4;case"minutes":case"minute":case"mins":case"min":case"m":return r*b4;case"seconds":case"second":case"secs":case"sec":case"s":return r*x4;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function Tkt(e){return e>=T4?Math.round(e/T4)+"d":e>=w4?Math.round(e/w4)+"h":e>=b4?Math.round(e/b4)+"m":e>=x4?Math.round(e/x4)+"s":e+"ms"}function Akt(e){return i6(e,T4,"day")||i6(e,w4,"hour")||i6(e,b4,"minute")||i6(e,x4,"second")||e+" ms"}function i6(e,t,r){if(!(e{Ic=NEe.exports=pj.debug=pj.default=pj;Ic.coerce=Ckt;Ic.disable=Ekt;Ic.enable=Mkt;Ic.enabled=kkt;Ic.humanize=qEe();Ic.names=[];Ic.skips=[];Ic.formatters={};var dj;function Skt(e){var t=0,r;for(r in e)t=(t<<5)-t+e.charCodeAt(r),t|=0;return Ic.colors[Math.abs(t)%Ic.colors.length]}function pj(e){function t(){if(t.enabled){var r=t,n=+new Date,i=n-(dj||n);r.diff=i,r.prev=dj,r.curr=n,dj=n;for(var a=new Array(arguments.length),o=0;o{lv=GEe.exports=UEe();lv.log=zkt;lv.formatArgs=Pkt;lv.save=Ikt;lv.load=VEe;lv.useColors=Lkt;lv.storage=typeof chrome!="undefined"&&typeof chrome.storage!="undefined"?chrome.storage.local:Rkt();lv.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function Lkt(){return typeof window!="undefined"&&window.process&&window.process.type==="renderer"?!0:typeof document!="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}lv.formatters.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}};function Pkt(e){var t=this.useColors;if(e[0]=(t?"%c":"")+this.namespace+(t?" %c":" ")+e[0]+(t?"%c ":" ")+"+"+lv.humanize(this.diff),!!t){var r="color: "+this.color;e.splice(1,0,r,"color: inherit");var n=0,i=0;e[0].replace(/%[a-zA-Z%]/g,function(a){a!=="%%"&&(n++,a==="%c"&&(i=n))}),e.splice(i,0,r)}}function zkt(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function Ikt(e){try{e==null?lv.storage.removeItem("debug"):lv.storage.debug=e}catch(t){}}function VEe(){var e;try{e=lv.storage.debug}catch(t){}return!e&&typeof process!="undefined"&&"env"in process&&(e=process.env.DEBUG),e}lv.enable(VEe());function Rkt(){try{return window.localStorage}catch(e){}}});var $Ee=Ae((Hpr,JEe)=>{var _A=s4(),V_=HEe()("stream-parser");JEe.exports=Fkt;var jEe=-1,n6=0,Dkt=1,XEe=2;function Fkt(e){var t=e&&typeof e._transform=="function",r=e&&typeof e._write=="function";if(!t&&!r)throw new Error("must pass a Writable or Transform stream in");V_("extending Parser into stream"),e._bytes=Bkt,e._skipBytes=Okt,t&&(e._passthrough=qkt),t?e._transform=Ukt:e._write=Nkt}function A4(e){V_("initializing parser stream"),e._parserBytesLeft=0,e._parserBuffers=[],e._parserBuffered=0,e._parserState=jEe,e._parserCallback=null,typeof e.push=="function"&&(e._parserOutput=e.push.bind(e)),e._parserInit=!0}function Bkt(e,t){_A(!this._parserCallback,'there is already a "callback" set!'),_A(isFinite(e)&&e>0,'can only buffer a finite number of bytes > 0, got "'+e+'"'),this._parserInit||A4(this),V_("buffering %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=n6}function Okt(e,t){_A(!this._parserCallback,'there is already a "callback" set!'),_A(e>0,'can only skip > 0 bytes, got "'+e+'"'),this._parserInit||A4(this),V_("skipping %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=Dkt}function qkt(e,t){_A(!this._parserCallback,'There is already a "callback" set!'),_A(e>0,'can only pass through > 0 bytes, got "'+e+'"'),this._parserInit||A4(this),V_("passing through %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=XEe}function Nkt(e,t,r){this._parserInit||A4(this),V_("write(%o bytes)",e.length),typeof t=="function"&&(r=t),YEe(this,e,null,r)}function Ukt(e,t,r){this._parserInit||A4(this),V_("transform(%o bytes)",e.length),typeof t!="function"&&(t=this._parserOutput),YEe(this,e,t,r)}function ZEe(e,t,r,n){return e._parserBytesLeft<=0?n(new Error("got data but not currently parsing anything")):t.length<=e._parserBytesLeft?function(){return WEe(e,t,r,n)}:function(){var i=t.slice(0,e._parserBytesLeft);return WEe(e,i,r,function(a){if(a)return n(a);if(t.length>i.length)return function(){return ZEe(e,t.slice(i.length),r,n)}})}}function WEe(e,t,r,n){if(e._parserBytesLeft-=t.length,V_("%o bytes left for stream piece",e._parserBytesLeft),e._parserState===n6?(e._parserBuffers.push(t),e._parserBuffered+=t.length):e._parserState===XEe&&r(t),e._parserBytesLeft===0){var i=e._parserCallback;if(i&&e._parserState===n6&&e._parserBuffers.length>1&&(t=Buffer.concat(e._parserBuffers,e._parserBuffered)),e._parserState!==n6&&(t=null),e._parserCallback=null,e._parserBuffered=0,e._parserState=jEe,e._parserBuffers.splice(0),i){var a=[];t&&a.push(t),r&&a.push(r);var o=i.length>a.length;o&&a.push(KEe(n));var s=i.apply(e,a);if(!o||n===s)return n}}else return n}var YEe=KEe(ZEe);function KEe(e){return function(){for(var t=e.apply(this,arguments);typeof t=="function";)t=t();return t}}});var xc=Ae(Hg=>{"use strict";var QEe=WMe().Transform,Vkt=$Ee();function S4(){QEe.call(this,{readableObjectMode:!0})}S4.prototype=Object.create(QEe.prototype);S4.prototype.constructor=S4;Vkt(S4.prototype);Hg.ParserStream=S4;Hg.sliceEq=function(e,t,r){for(var n=t,i=0;i{"use strict";var xA=xc().readUInt16BE,mj=xc().readUInt32BE;function M4(e,t){if(e.length<4+t)return null;var r=mj(e,t);return e.length>4&15,n=e[4]&15,i=e[5]>>4&15,a=xA(e,6),o=8,s=0;sa.width||i.width===a.width&&i.height>a.height?i:a}),r=e.reduce(function(i,a){return i.height>a.height||i.height===a.height&&i.width>a.width?i:a}),n;return t.width>r.height||t.width===r.height&&t.height>r.width?n=t:n=r,n}o6.exports.readSizeFromMeta=function(e){var t={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(Xkt(e,t),!!t.sizes.length){var r=Zkt(t.sizes),n=1;t.transforms.forEach(function(a){var o={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},s={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if(a.type==="imir"&&(a.value===0?n=s[n]:(n=s[n],n=o[n],n=o[n])),a.type==="irot")for(var u=0;u{"use strict";function s6(e,t){var r=new Error(e);return r.code=t,r}function Ykt(e){try{return decodeURIComponent(escape(e))}catch(t){return e}}function Wg(e,t,r){this.input=e.subarray(t,r),this.start=t;var n=String.fromCharCode.apply(null,this.input.subarray(0,4));if(n!=="II*\0"&&n!=="MM\0*")throw s6("invalid TIFF signature","EBADDATA");this.big_endian=n[0]==="M"}Wg.prototype.each=function(e){this.aborted=!1;var t=this.read_uint32(4);for(this.ifds_to_read=[{id:0,offset:t}];this.ifds_to_read.length>0&&!this.aborted;){var r=this.ifds_to_read.shift();r.offset&&this.scan_ifd(r.id,r.offset,e)}};Wg.prototype.read_uint16=function(e){var t=this.input;if(e+2>t.length)throw s6("unexpected EOF","EBADDATA");return this.big_endian?t[e]*256+t[e+1]:t[e]+t[e+1]*256};Wg.prototype.read_uint32=function(e){var t=this.input;if(e+4>t.length)throw s6("unexpected EOF","EBADDATA");return this.big_endian?t[e]*16777216+t[e+1]*65536+t[e+2]*256+t[e+3]:t[e]+t[e+1]*256+t[e+2]*65536+t[e+3]*16777216};Wg.prototype.is_subifd_link=function(e,t){return e===0&&t===34665||e===0&&t===34853||e===34665&&t===40965};Wg.prototype.exif_format_length=function(e){switch(e){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}};Wg.prototype.exif_format_read=function(e,t){var r;switch(e){case 1:case 2:return r=this.input[t],r;case 6:return r=this.input[t],r|(r&128)*33554430;case 3:return r=this.read_uint16(t),r;case 8:return r=this.read_uint16(t),r|(r&32768)*131070;case 4:return r=this.read_uint32(t),r;case 9:return r=this.read_uint32(t),r|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}};Wg.prototype.scan_ifd=function(e,t,r){var n=this.read_uint16(t);t+=2;for(var i=0;ithis.input.length)throw s6("unexpected EOF","EBADDATA");for(var h=[],d=f,p=0;p0&&(this.ifds_to_read.push({id:a,offset:h[0]}),c=!0);var b={is_big_endian:this.big_endian,ifd:e,tag:a,format:o,count:s,entry_offset:t+this.start,data_length:l,data_offset:f+this.start,value:h,is_subifd_link:c};if(r(b)===!1){this.aborted=!0;return}t+=12}e===0&&this.ifds_to_read.push({id:1,offset:this.read_uint32(t)})};yj.exports.ExifParser=Wg;yj.exports.get_orientation=function(e){var t=0;try{return new Wg(e,0,e.length).each(function(r){if(r.ifd===0&&r.tag===274&&Array.isArray(r.value))return t=r.value[0],!1}),t}catch(r){return-1}}});var r4e=Ae((Zpr,t4e)=>{"use strict";var Kkt=xc().str2arr,Jkt=xc().sliceEq,$kt=xc().readUInt32BE,u6=e4e(),Qkt=l6(),eCt=Kkt("ftyp");t4e.exports=function(e){if(Jkt(e,4,eCt)){var t=u6.unbox(e,0);if(t){var r=u6.getMimeType(t.data);if(r){for(var n,i=t.end;;){var a=u6.unbox(e,i);if(!a)break;if(i=a.end,a.boxtype==="mdat")return;if(a.boxtype==="meta"){n=a.data;break}}if(n){var o=u6.readSizeFromMeta(n);if(o){var s={width:o.width,height:o.height,type:r.type,mime:r.mime,wUnits:"px",hUnits:"px"};if(o.variants.length>1&&(s.variants=o.variants),o.orientation&&(s.orientation=o.orientation),o.exif_location&&o.exif_location.offset+o.exif_location.length<=e.length){var u=$kt(e,o.exif_location.offset),l=e.slice(o.exif_location.offset+u+4,o.exif_location.offset+o.exif_location.length),f=Qkt.get_orientation(l);f>0&&(s.orientation=f)}return s}}}}}}});var a4e=Ae((Ypr,n4e)=>{"use strict";var tCt=xc().str2arr,rCt=xc().sliceEq,i4e=xc().readUInt16LE,iCt=tCt("BM");n4e.exports=function(e){if(!(e.length<26)&&rCt(e,0,iCt))return{width:i4e(e,18),height:i4e(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}});var f4e=Ae((Kpr,u4e)=>{"use strict";var l4e=xc().str2arr,o4e=xc().sliceEq,s4e=xc().readUInt16LE,nCt=l4e("GIF87a"),aCt=l4e("GIF89a");u4e.exports=function(e){if(!(e.length<10)&&!(!o4e(e,0,nCt)&&!o4e(e,0,aCt)))return{width:s4e(e,6),height:s4e(e,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}});var d4e=Ae((Jpr,h4e)=>{"use strict";var gj=xc().readUInt16LE,oCt=0,sCt=1,c4e=16;h4e.exports=function(e){var t=gj(e,0),r=gj(e,2),n=gj(e,4);if(!(t!==oCt||r!==sCt||!n)){for(var i=[],a={width:0,height:0},o=0;oa.width||u>a.height)&&(a=l)}return{width:a.width,height:a.height,variants:i,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}});var v4e=Ae(($pr,p4e)=>{"use strict";var _j=xc().readUInt16BE,lCt=xc().str2arr,uCt=xc().sliceEq,fCt=l6(),cCt=lCt("Exif\0\0");p4e.exports=function(e){if(!(e.length<2)&&!(e[0]!==255||e[1]!==216||e[2]!==255))for(var t=2;;){for(;;){if(e.length-t<2)return;if(e[t++]===255)break}for(var r=e[t++],n;r===255;)r=e[t++];if(208<=r&&r<=217||r===1)n=0;else if(192<=r&&r<=254){if(e.length-t<2)return;n=_j(e,t)-2,t+=2}else return;if(r===217||r===218)return;var i;if(r===225&&n>=10&&uCt(e,t,cCt)&&(i=fCt.get_orientation(e.slice(t+6,t+n))),n>=5&&192<=r&&r<=207&&r!==196&&r!==200&&r!==204){if(e.length-t0&&(a.orientation=i),a}t+=n}}});var x4e=Ae((Qpr,_4e)=>{"use strict";var g4e=xc().str2arr,m4e=xc().sliceEq,y4e=xc().readUInt32BE,hCt=g4e(`\x89PNG\r +`).concat(QD(e),` +`));var s=new U_({actual:e,expected:t,message:r,operator:i,stackStartFn:n});throw s.generatedMessage=o,s}}th.match=function e(t,r,n){FEe(t,r,n,e,"match")};th.doesNotMatch=function e(t,r,n){FEe(t,r,n,e,"doesNotMatch")};function BEe(){for(var e=arguments.length,t=new Array(e),r=0;r{var b4=1e3,w4=b4*60,T4=w4*60,A4=T4*24,wkt=A4*365.25;qEe.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return Tkt(e);if(r==="number"&&isNaN(e)===!1)return t.long?Skt(e):Akt(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function Tkt(e){if(e=String(e),!(e.length>100)){var t=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*wkt;case"days":case"day":case"d":return r*A4;case"hours":case"hour":case"hrs":case"hr":case"h":return r*T4;case"minutes":case"minute":case"mins":case"min":case"m":return r*w4;case"seconds":case"second":case"secs":case"sec":case"s":return r*b4;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function Akt(e){return e>=A4?Math.round(e/A4)+"d":e>=T4?Math.round(e/T4)+"h":e>=w4?Math.round(e/w4)+"m":e>=b4?Math.round(e/b4)+"s":e+"ms"}function Skt(e){return n6(e,A4,"day")||n6(e,T4,"hour")||n6(e,w4,"minute")||n6(e,b4,"second")||e+" ms"}function n6(e,t,r){if(!(e{Ic=UEe.exports=pj.debug=pj.default=pj;Ic.coerce=Lkt;Ic.disable=kkt;Ic.enable=Ekt;Ic.enabled=Ckt;Ic.humanize=NEe();Ic.names=[];Ic.skips=[];Ic.formatters={};var dj;function Mkt(e){var t=0,r;for(r in e)t=(t<<5)-t+e.charCodeAt(r),t|=0;return Ic.colors[Math.abs(t)%Ic.colors.length]}function pj(e){function t(){if(t.enabled){var r=t,n=+new Date,i=n-(dj||n);r.diff=i,r.prev=dj,r.curr=n,dj=n;for(var a=new Array(arguments.length),o=0;o{lv=HEe.exports=VEe();lv.log=Ikt;lv.formatArgs=zkt;lv.save=Rkt;lv.load=GEe;lv.useColors=Pkt;lv.storage=typeof chrome!="undefined"&&typeof chrome.storage!="undefined"?chrome.storage.local:Dkt();lv.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function Pkt(){return typeof window!="undefined"&&window.process&&window.process.type==="renderer"?!0:typeof document!="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}lv.formatters.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}};function zkt(e){var t=this.useColors;if(e[0]=(t?"%c":"")+this.namespace+(t?" %c":" ")+e[0]+(t?"%c ":" ")+"+"+lv.humanize(this.diff),!!t){var r="color: "+this.color;e.splice(1,0,r,"color: inherit");var n=0,i=0;e[0].replace(/%[a-zA-Z%]/g,function(a){a!=="%%"&&(n++,a==="%c"&&(i=n))}),e.splice(i,0,r)}}function Ikt(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function Rkt(e){try{e==null?lv.storage.removeItem("debug"):lv.storage.debug=e}catch(t){}}function GEe(){var e;try{e=lv.storage.debug}catch(t){}return!e&&typeof process!="undefined"&&"env"in process&&(e=process.env.DEBUG),e}lv.enable(GEe());function Dkt(){try{return window.localStorage}catch(e){}}});var QEe=Ae((Hpr,$Ee)=>{var xA=l4(),V_=WEe()("stream-parser");$Ee.exports=Bkt;var XEe=-1,a6=0,Fkt=1,ZEe=2;function Bkt(e){var t=e&&typeof e._transform=="function",r=e&&typeof e._write=="function";if(!t&&!r)throw new Error("must pass a Writable or Transform stream in");V_("extending Parser into stream"),e._bytes=Okt,e._skipBytes=qkt,t&&(e._passthrough=Nkt),t?e._transform=Vkt:e._write=Ukt}function S4(e){V_("initializing parser stream"),e._parserBytesLeft=0,e._parserBuffers=[],e._parserBuffered=0,e._parserState=XEe,e._parserCallback=null,typeof e.push=="function"&&(e._parserOutput=e.push.bind(e)),e._parserInit=!0}function Okt(e,t){xA(!this._parserCallback,'there is already a "callback" set!'),xA(isFinite(e)&&e>0,'can only buffer a finite number of bytes > 0, got "'+e+'"'),this._parserInit||S4(this),V_("buffering %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=a6}function qkt(e,t){xA(!this._parserCallback,'there is already a "callback" set!'),xA(e>0,'can only skip > 0 bytes, got "'+e+'"'),this._parserInit||S4(this),V_("skipping %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=Fkt}function Nkt(e,t){xA(!this._parserCallback,'There is already a "callback" set!'),xA(e>0,'can only pass through > 0 bytes, got "'+e+'"'),this._parserInit||S4(this),V_("passing through %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=ZEe}function Ukt(e,t,r){this._parserInit||S4(this),V_("write(%o bytes)",e.length),typeof t=="function"&&(r=t),KEe(this,e,null,r)}function Vkt(e,t,r){this._parserInit||S4(this),V_("transform(%o bytes)",e.length),typeof t!="function"&&(t=this._parserOutput),KEe(this,e,t,r)}function YEe(e,t,r,n){return e._parserBytesLeft<=0?n(new Error("got data but not currently parsing anything")):t.length<=e._parserBytesLeft?function(){return jEe(e,t,r,n)}:function(){var i=t.slice(0,e._parserBytesLeft);return jEe(e,i,r,function(a){if(a)return n(a);if(t.length>i.length)return function(){return YEe(e,t.slice(i.length),r,n)}})}}function jEe(e,t,r,n){if(e._parserBytesLeft-=t.length,V_("%o bytes left for stream piece",e._parserBytesLeft),e._parserState===a6?(e._parserBuffers.push(t),e._parserBuffered+=t.length):e._parserState===ZEe&&r(t),e._parserBytesLeft===0){var i=e._parserCallback;if(i&&e._parserState===a6&&e._parserBuffers.length>1&&(t=Buffer.concat(e._parserBuffers,e._parserBuffered)),e._parserState!==a6&&(t=null),e._parserCallback=null,e._parserBuffered=0,e._parserState=XEe,e._parserBuffers.splice(0),i){var a=[];t&&a.push(t),r&&a.push(r);var o=i.length>a.length;o&&a.push(JEe(n));var s=i.apply(e,a);if(!o||n===s)return n}}else return n}var KEe=JEe(YEe);function JEe(e){return function(){for(var t=e.apply(this,arguments);typeof t=="function";)t=t();return t}}});var xc=Ae(Hg=>{"use strict";var e4e=jMe().Transform,Gkt=QEe();function M4(){e4e.call(this,{readableObjectMode:!0})}M4.prototype=Object.create(e4e.prototype);M4.prototype.constructor=M4;Gkt(M4.prototype);Hg.ParserStream=M4;Hg.sliceEq=function(e,t,r){for(var n=t,i=0;i{"use strict";var bA=xc().readUInt16BE,mj=xc().readUInt32BE;function E4(e,t){if(e.length<4+t)return null;var r=mj(e,t);return e.length>4&15,n=e[4]&15,i=e[5]>>4&15,a=bA(e,6),o=8,s=0;sa.width||i.width===a.width&&i.height>a.height?i:a}),r=e.reduce(function(i,a){return i.height>a.height||i.height===a.height&&i.width>a.width?i:a}),n;return t.width>r.height||t.width===r.height&&t.height>r.width?n=t:n=r,n}s6.exports.readSizeFromMeta=function(e){var t={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(Zkt(e,t),!!t.sizes.length){var r=Ykt(t.sizes),n=1;t.transforms.forEach(function(a){var o={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},s={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if(a.type==="imir"&&(a.value===0?n=s[n]:(n=s[n],n=o[n],n=o[n])),a.type==="irot")for(var u=0;u{"use strict";function l6(e,t){var r=new Error(e);return r.code=t,r}function Kkt(e){try{return decodeURIComponent(escape(e))}catch(t){return e}}function Wg(e,t,r){this.input=e.subarray(t,r),this.start=t;var n=String.fromCharCode.apply(null,this.input.subarray(0,4));if(n!=="II*\0"&&n!=="MM\0*")throw l6("invalid TIFF signature","EBADDATA");this.big_endian=n[0]==="M"}Wg.prototype.each=function(e){this.aborted=!1;var t=this.read_uint32(4);for(this.ifds_to_read=[{id:0,offset:t}];this.ifds_to_read.length>0&&!this.aborted;){var r=this.ifds_to_read.shift();r.offset&&this.scan_ifd(r.id,r.offset,e)}};Wg.prototype.read_uint16=function(e){var t=this.input;if(e+2>t.length)throw l6("unexpected EOF","EBADDATA");return this.big_endian?t[e]*256+t[e+1]:t[e]+t[e+1]*256};Wg.prototype.read_uint32=function(e){var t=this.input;if(e+4>t.length)throw l6("unexpected EOF","EBADDATA");return this.big_endian?t[e]*16777216+t[e+1]*65536+t[e+2]*256+t[e+3]:t[e]+t[e+1]*256+t[e+2]*65536+t[e+3]*16777216};Wg.prototype.is_subifd_link=function(e,t){return e===0&&t===34665||e===0&&t===34853||e===34665&&t===40965};Wg.prototype.exif_format_length=function(e){switch(e){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}};Wg.prototype.exif_format_read=function(e,t){var r;switch(e){case 1:case 2:return r=this.input[t],r;case 6:return r=this.input[t],r|(r&128)*33554430;case 3:return r=this.read_uint16(t),r;case 8:return r=this.read_uint16(t),r|(r&32768)*131070;case 4:return r=this.read_uint32(t),r;case 9:return r=this.read_uint32(t),r|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}};Wg.prototype.scan_ifd=function(e,t,r){var n=this.read_uint16(t);t+=2;for(var i=0;ithis.input.length)throw l6("unexpected EOF","EBADDATA");for(var h=[],d=f,p=0;p0&&(this.ifds_to_read.push({id:a,offset:h[0]}),c=!0);var b={is_big_endian:this.big_endian,ifd:e,tag:a,format:o,count:s,entry_offset:t+this.start,data_length:l,data_offset:f+this.start,value:h,is_subifd_link:c};if(r(b)===!1){this.aborted=!0;return}t+=12}e===0&&this.ifds_to_read.push({id:1,offset:this.read_uint32(t)})};yj.exports.ExifParser=Wg;yj.exports.get_orientation=function(e){var t=0;try{return new Wg(e,0,e.length).each(function(r){if(r.ifd===0&&r.tag===274&&Array.isArray(r.value))return t=r.value[0],!1}),t}catch(r){return-1}}});var i4e=Ae((Zpr,r4e)=>{"use strict";var Jkt=xc().str2arr,$kt=xc().sliceEq,Qkt=xc().readUInt32BE,f6=t4e(),eCt=u6(),tCt=Jkt("ftyp");r4e.exports=function(e){if($kt(e,4,tCt)){var t=f6.unbox(e,0);if(t){var r=f6.getMimeType(t.data);if(r){for(var n,i=t.end;;){var a=f6.unbox(e,i);if(!a)break;if(i=a.end,a.boxtype==="mdat")return;if(a.boxtype==="meta"){n=a.data;break}}if(n){var o=f6.readSizeFromMeta(n);if(o){var s={width:o.width,height:o.height,type:r.type,mime:r.mime,wUnits:"px",hUnits:"px"};if(o.variants.length>1&&(s.variants=o.variants),o.orientation&&(s.orientation=o.orientation),o.exif_location&&o.exif_location.offset+o.exif_location.length<=e.length){var u=Qkt(e,o.exif_location.offset),l=e.slice(o.exif_location.offset+u+4,o.exif_location.offset+o.exif_location.length),f=eCt.get_orientation(l);f>0&&(s.orientation=f)}return s}}}}}}});var o4e=Ae((Ypr,a4e)=>{"use strict";var rCt=xc().str2arr,iCt=xc().sliceEq,n4e=xc().readUInt16LE,nCt=rCt("BM");a4e.exports=function(e){if(!(e.length<26)&&iCt(e,0,nCt))return{width:n4e(e,18),height:n4e(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}});var c4e=Ae((Kpr,f4e)=>{"use strict";var u4e=xc().str2arr,s4e=xc().sliceEq,l4e=xc().readUInt16LE,aCt=u4e("GIF87a"),oCt=u4e("GIF89a");f4e.exports=function(e){if(!(e.length<10)&&!(!s4e(e,0,aCt)&&!s4e(e,0,oCt)))return{width:l4e(e,6),height:l4e(e,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}});var p4e=Ae((Jpr,d4e)=>{"use strict";var gj=xc().readUInt16LE,sCt=0,lCt=1,h4e=16;d4e.exports=function(e){var t=gj(e,0),r=gj(e,2),n=gj(e,4);if(!(t!==sCt||r!==lCt||!n)){for(var i=[],a={width:0,height:0},o=0;oa.width||u>a.height)&&(a=l)}return{width:a.width,height:a.height,variants:i,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}});var m4e=Ae(($pr,v4e)=>{"use strict";var _j=xc().readUInt16BE,uCt=xc().str2arr,fCt=xc().sliceEq,cCt=u6(),hCt=uCt("Exif\0\0");v4e.exports=function(e){if(!(e.length<2)&&!(e[0]!==255||e[1]!==216||e[2]!==255))for(var t=2;;){for(;;){if(e.length-t<2)return;if(e[t++]===255)break}for(var r=e[t++],n;r===255;)r=e[t++];if(208<=r&&r<=217||r===1)n=0;else if(192<=r&&r<=254){if(e.length-t<2)return;n=_j(e,t)-2,t+=2}else return;if(r===217||r===218)return;var i;if(r===225&&n>=10&&fCt(e,t,hCt)&&(i=cCt.get_orientation(e.slice(t+6,t+n))),n>=5&&192<=r&&r<=207&&r!==196&&r!==200&&r!==204){if(e.length-t0&&(a.orientation=i),a}t+=n}}});var b4e=Ae((Qpr,x4e)=>{"use strict";var _4e=xc().str2arr,y4e=xc().sliceEq,g4e=xc().readUInt32BE,dCt=_4e(`\x89PNG\r  -`),dCt=g4e("IHDR");_4e.exports=function(e){if(!(e.length<24)&&m4e(e,0,hCt)&&m4e(e,12,dCt))return{width:y4e(e,16),height:y4e(e,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}});var T4e=Ae((evr,w4e)=>{"use strict";var pCt=xc().str2arr,vCt=xc().sliceEq,b4e=xc().readUInt32BE,mCt=pCt("8BPS\0");w4e.exports=function(e){if(!(e.length<22)&&vCt(e,0,mCt))return{width:b4e(e,18),height:b4e(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}});var M4e=Ae((tvr,S4e)=>{"use strict";function yCt(e){return e===32||e===9||e===13||e===10}function bA(e){return typeof e=="number"&&isFinite(e)&&e>0}function gCt(e){var t=0,r=e.length;for(e[0]===239&&e[1]===187&&e[2]===191&&(t=3);t]*>/,xCt=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,bCt=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,wCt=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,TCt=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,A4e=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function ACt(e){var t=e.match(bCt),r=e.match(wCt),n=e.match(TCt);return{width:t&&(t[1]||t[2]),height:r&&(r[1]||r[2]),viewbox:n&&(n[1]||n[2])}}function Uy(e){return A4e.test(e)?e.match(A4e)[0]:"px"}S4e.exports=function(e){if(gCt(e)){for(var t="",r=0;r{"use strict";var C4e=xc().str2arr,E4e=xc().sliceEq,SCt=xc().readUInt16LE,MCt=xc().readUInt16BE,ECt=xc().readUInt32LE,kCt=xc().readUInt32BE,CCt=C4e("II*\0"),LCt=C4e("MM\0*");function f6(e,t,r){return r?MCt(e,t):SCt(e,t)}function xj(e,t,r){return r?kCt(e,t):ECt(e,t)}function k4e(e,t,r){var n=f6(e,t+2,r),i=xj(e,t+4,r);return i!==1||n!==3&&n!==4?null:n===3?f6(e,t+8,r):xj(e,t+8,r)}L4e.exports=function(e){if(!(e.length<8)&&!(!E4e(e,0,CCt)&&!E4e(e,0,LCt))){var t=e[0]===77,r=xj(e,4,t)-8;if(!(r<0)){var n=r+8;if(!(e.length-n<2)){var i=f6(e,n+0,t)*12;if(!(i<=0)&&(n+=2,!(e.length-n{"use strict";var R4e=xc().str2arr,z4e=xc().sliceEq,I4e=xc().readUInt16LE,bj=xc().readUInt32LE,PCt=l6(),zCt=R4e("RIFF"),ICt=R4e("WEBP");function RCt(e,t){if(!(e[t+3]!==157||e[t+4]!==1||e[t+5]!==42))return{width:I4e(e,t+6)&16383,height:I4e(e,t+8)&16383,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}function DCt(e,t){if(e[t]===47){var r=bj(e,t+1);return{width:(r&16383)+1,height:(r>>14&16383)+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function FCt(e,t){return{width:(e[t+6]<<16|e[t+5]<<8|e[t+4])+1,height:(e[t+9]<e.length)){for(;t+8=10?r=r||RCt(e,t+8):a==="VP8L"&&o>=9?r=r||DCt(e,t+8):a==="VP8X"&&o>=10?r=r||FCt(e,t+8):a==="EXIF"&&(n=PCt.get_orientation(e.slice(t+8,t+8+o)),t=1/0),t+=8+o}if(r)return n>0&&(r.orientation=n),r}}}});var O4e=Ae((nvr,B4e)=>{"use strict";B4e.exports={avif:r4e(),bmp:a4e(),gif:f4e(),ico:d4e(),jpeg:v4e(),png:x4e(),psd:T4e(),svg:M4e(),tiff:P4e(),webp:F4e()}});var q4e=Ae((avr,Tj)=>{"use strict";var wj=O4e();function BCt(e){for(var t=Object.keys(wj),r=0;r{"use strict";var OCt=q4e(),qCt=Pg().IMAGE_URL_PREFIX,NCt=f2().Buffer;N4e.getImageSize=function(e){var t=e.replace(qCt,""),r=new NCt(t,"base64");return OCt(r)}});var H4e=Ae((svr,G4e)=>{"use strict";var V4e=ei(),UCt=ZT(),VCt=ku(),c6=wu(),GCt=ei().maxRowLength,HCt=U4e().getImageSize;G4e.exports=function(t,r){var n,i;if(r._hasZ)n=r.z.length,i=GCt(r.z);else if(r._hasSource){var a=HCt(r.source);n=a.height,i=a.width}var o=c6.getFromId(t,r.xaxis||"x"),s=c6.getFromId(t,r.yaxis||"y"),u=o.d2c(r.x0)-r.dx/2,l=s.d2c(r.y0)-r.dy/2,f,c=[u,u+i*r.dx],h=[l,l+n*r.dy];if(o&&o.type==="log")for(f=0;f{"use strict";var ZCt=Jl(),A2=ei(),W4e=A2.strTranslate,YCt=jv(),KCt=ZT(),JCt=uG(),$Ct=cR().STYLE;j4e.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis,s=!t._context._exportedPlot&&JCt();A2.makeTraceGroups(i,n,"im").each(function(u){var l=ZCt.select(this),f=u[0],c=f.trace,h=(c.zsmooth==="fast"||c.zsmooth===!1&&s)&&!c._hasZ&&c._hasSource&&a.type==="linear"&&o.type==="linear";c._realImage=h;var d=f.z,p=f.x0,_=f.y0,b=f.w,v=f.h,k=c.dx,E=c.dy,A,L,x,C,M,m;for(m=0;A===void 0&&m0;)L=a.c2p(p+m*k),m--;for(m=0;C===void 0&&m0;)M=o.c2p(_+m*E),m--;if(LW[0];if(re||ae){var be=A+T/2,ze=C+B/2;H+="transform:"+W4e(be+"px",ze+"px")+"scale("+(re?-1:1)+","+(ae?-1:1)+")"+W4e(-be+"px",-ze+"px")+";"}}j.attr("style",H);var Ce=new Promise(function(de){if(c._hasZ)de();else if(c._hasSource)if(c._canvas&&c._canvas.el.width===b&&c._canvas.el.height===v&&c._canvas.source===c.source)de();else{var te=document.createElement("canvas");te.width=b,te.height=v;var ke=te.getContext("2d",{willReadFrequently:!0});c._image=c._image||new Image;var Ee=c._image;Ee.onload=function(){ke.drawImage(Ee,0,0),c._canvas={el:te,source:c.source},de()},Ee.setAttribute("src",c.source)}}).then(function(){var de,te;if(c._hasZ)te=G(function(Me,Ue){var De=d[Ue][Me];return A2.isTypedArray(De)&&(De=Array.from(De)),De}),de=te.toDataURL("image/png");else if(c._hasSource)if(h)de=c.source;else{var ke=c._canvas.el.getContext("2d",{willReadFrequently:!0}),Ee=ke.getImageData(0,0,b,v).data;te=G(function(Me,Ue){var De=4*(Ue*b+Me);return[Ee[De],Ee[De+1],Ee[De+2],Ee[De+3]]}),de=te.toDataURL("image/png")}j.attr({"xlink:href":de,height:B,width:T,x:A,y:C})});t._promises.push(Ce)})}});var Y4e=Ae((uvr,Z4e)=>{"use strict";var QCt=Jl();Z4e.exports=function(t){QCt.select(t).selectAll(".im image").style("opacity",function(r){return r[0].trace.opacity})}});var Q4e=Ae((fvr,$4e)=>{"use strict";var K4e=Xc(),J4e=ei(),h6=J4e.isArrayOrTypedArray,eLt=ZT();$4e.exports=function(t,r,n){var i=t.cd[0],a=i.trace,o=t.xa,s=t.ya;if(!(K4e.inbox(r-i.x0,r-(i.x0+i.w*a.dx),0)>0||K4e.inbox(n-i.y0,n-(i.y0+i.h*a.dy),0)>0)){var u=Math.floor((r-i.x0)/a.dx),l=Math.floor(Math.abs(n-i.y0)/a.dy),f;if(a._hasZ?f=i.z[l][u]:a._hasSource&&(f=a._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(u,l,1,1).data),!!f){var c=i.hi||a.hoverinfo,h;if(c){var d=c.split("+");d.indexOf("all")!==-1&&(d=["color"]),d.indexOf("color")!==-1&&(h=!0)}var p=eLt.colormodel[a.colormodel],_=p.colormodel||a.colormodel,b=_.length,v=a._scaler(f),k=p.suffix,E=[];(a.hovertemplate||h)&&(E.push("["+[v[0]+k[0],v[1]+k[1],v[2]+k[2]].join(", ")),b===4&&E.push(", "+v[3]+k[3]),E.push("]"),E=E.join(""),t.extraText=_.toUpperCase()+": "+E);var A;h6(a.hovertext)&&h6(a.hovertext[l])?A=a.hovertext[l][u]:h6(a.text)&&h6(a.text[l])&&(A=a.text[l][u]);var L=s.c2p(i.y0+(l+.5)*a.dy),x=i.x0+(u+.5)*a.dx,C=i.y0+(l+.5)*a.dy,M="["+f.slice(0,a.colormodel.length).join(", ")+"]";return[J4e.extendFlat(t,{index:[l,u],x0:o.c2p(i.x0+u*a.dx),x1:o.c2p(i.x0+(u+1)*a.dx),y0:L,y1:L,color:v,xVal:x,xLabelVal:x,yVal:C,yLabelVal:C,zLabelVal:M,text:A,hovertemplateLabels:{zLabel:M,colorLabel:E,"color[0]Label":v[0]+k[0],"color[1]Label":v[1]+k[1],"color[2]Label":v[2]+k[2],"color[3]Label":v[3]+k[3]}})]}}}});var tke=Ae((cvr,eke)=>{"use strict";eke.exports=function(t,r){return"xVal"in r&&(t.x=r.xVal),"yVal"in r&&(t.y=r.yVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t.color=r.color,t.colormodel=r.trace.colormodel,t.z||(t.z=r.color),t}});var ike=Ae((hvr,rke)=>{"use strict";rke.exports={attributes:_H(),supplyDefaults:Q3e(),calc:H4e(),plot:X4e(),style:Y4e(),hoverPoints:Q4e(),eventData:tke(),moduleType:"trace",name:"image",basePlotModule:Ah(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}});var ake=Ae((dvr,nke)=>{"use strict";nke.exports=ike()});var S2=Ae((pvr,ske)=>{"use strict";var tLt=Gf(),rLt=zc().attributes,iLt=gc(),nLt=Fh(),{hovertemplateAttrs:aLt,texttemplateAttrs:oLt,templatefallbackAttrs:oke}=Ff(),E4=Su().extendFlat,sLt=Id().pattern,d6=iLt({editType:"plot",arrayOk:!0,colorEditType:"plot"});ske.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:nLt.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:sLt,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:E4({},tLt.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:aLt({},{keys:["label","color","value","percent","text"]}),hovertemplatefallback:oke(),texttemplate:oLt({editType:"plot"},{keys:["label","color","value","percent","text"]}),texttemplatefallback:oke({editType:"plot"}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:E4({},d6,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:E4({},d6,{}),outsidetextfont:E4({},d6,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:E4({},d6,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:rLt({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}});var M2=Ae((vvr,fke)=>{"use strict";var lLt=ku(),k4=ei(),uLt=S2(),fLt=zc().defaults,cLt=r0().handleText,hLt=ei().coercePattern;function lke(e,t){var r=k4.isArrayOrTypedArray(e),n=k4.isArrayOrTypedArray(t),i=Math.min(r?e.length:1/0,n?t.length:1/0);if(isFinite(i)||(i=0),i&&n){for(var a,o=0;o0){a=!0;break}}a||(i=0)}return{hasLabels:r,hasValues:n,len:i}}function uke(e,t,r,n,i){var a=n("marker.line.width");a&&n("marker.line.color",i?void 0:r.paper_bgcolor);var o=n("marker.colors");hLt(n,"marker.pattern",o),e.marker&&!t.marker.pattern.fgcolor&&(t.marker.pattern.fgcolor=e.marker.colors),t.marker.pattern.bgcolor||(t.marker.pattern.bgcolor=r.paper_bgcolor)}function dLt(e,t,r,n){function i(k,E){return k4.coerce(e,t,uLt,k,E)}var a=i("labels"),o=i("values"),s=lke(a,o),u=s.len;if(t._hasLabels=s.hasLabels,t._hasValues=s.hasValues,!t._hasLabels&&t._hasValues&&(i("label0"),i("dlabel")),!u){t.visible=!1;return}t._length=u,uke(e,t,n,i,!0),i("scalegroup");var l=i("text"),f=i("texttemplate");i("texttemplatefallback");var c;if(f||(c=i("textinfo",k4.isArrayOrTypedArray(l)?"text+percent":"percent")),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),f||c&&c!=="none"){var h=i("textposition");cLt(e,t,n,i,h,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var d=Array.isArray(h)||h==="auto",p=d||h==="outside";p&&i("automargin"),(h==="inside"||h==="auto"||Array.isArray(h))&&i("insidetextorientation")}else c==="none"&&i("textposition","none");fLt(t,n,i);var _=i("hole"),b=i("title.text");if(b){var v=i("title.position",_?"middle center":"top center");!_&&v==="middle center"&&(t.title.position="top center"),k4.coerceFont(i,"title.font",n.font)}i("sort"),i("direction"),i("rotation"),i("pull")}fke.exports={handleLabelsAndValues:lke,handleMarkerDefaults:uke,supplyDefaults:dLt}});var p6=Ae((mvr,cke)=>{"use strict";cke.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var dke=Ae((yvr,hke)=>{"use strict";var pLt=ei(),vLt=p6();hke.exports=function(t,r){function n(i,a){return pLt.coerce(t,r,vLt,i,a)}n("hiddenlabels"),n("piecolorway",r.colorway),n("extendpiecolors")}});var wA=Ae((gvr,mke)=>{"use strict";var mLt=ku(),Aj=cd(),yLt=jl(),gLt={};function _Lt(e,t){var r=[],n=e._fullLayout,i=n.hiddenlabels||[],a=t.labels,o=t.marker.colors||[],s=t.values,u=t._length,l=t._hasValues&&u,f,c;if(t.dlabel)for(a=new Array(u),f=0;f=0});var A=t.type==="funnelarea"?_:t.sort;return A&&r.sort(function(L,x){return x.v-L.v}),r[0]&&(r[0].vTotal=p),r}function pke(e){return function(r,n){return!r||(r=Aj(r),!r.isValid())?!1:(r=yLt.addOpacity(r,r.getAlpha()),e[n]||(e[n]=r),r)}}function xLt(e,t){var r=(t||{}).type;r||(r="pie");var n=e._fullLayout,i=e.calcdata,a=n[r+"colorway"],o=n["_"+r+"colormap"];n["extend"+r+"colors"]&&(a=vke(a,gLt));for(var s=0,u=0;u{"use strict";var bLt=iv().appendArrayMultiPointValues;yke.exports=function(t,r){var n={curveNumber:r.index,pointNumbers:t.pts,data:r._input,fullData:r,label:t.label,color:t.color,value:t.v,percent:t.percent,text:t.text,bbox:t.bbox,v:t.v};return t.pts.length===1&&(n.pointNumber=n.i=t.pts[0]),bLt(n,r,t.pts),r.type==="funnelarea"&&(delete n.v,delete n.i),n}});var g6=Ae((xvr,qke)=>{"use strict";var Dv=Jl(),wLt=Cc(),v6=Xc(),Ake=jl(),jg=Mu(),np=ei(),TLt=np.strScale,_ke=np.strTranslate,Sj=Xf(),Ske=Tp(),ALt=Ske.recordMinTextSize,SLt=Ske.clearMinTextSize,Mke=e2().TEXTPAD,Zu=l_(),m6=gke(),xke=ei().isValidTextValue;function MLt(e,t){var r=e._context.staticPlot,n=e._fullLayout,i=n._size;SLt("pie",n),Cke(t,e),Fke(t,i);var a=np.makeTraceGroups(n._pielayer,t,"trace").each(function(o){var s=Dv.select(this),u=o[0],l=u.trace;DLt(o),s.attr("stroke-linejoin","round"),s.each(function(){var f=Dv.select(this).selectAll("g.slice").data(o);f.enter().append("g").classed("slice",!0),f.exit().remove();var c=[[[],[]],[[],[]]],h=!1;f.each(function(A,L){if(A.hidden){Dv.select(this).selectAll("path,g").remove();return}A.pointNumber=A.i,A.curveNumber=l.index,c[A.pxmid[1]<0?0:1][A.pxmid[0]<0?0:1].push(A);var x=u.cx,C=u.cy,M=Dv.select(this),m=M.selectAll("path.surface").data([A]);if(m.enter().append("path").classed("surface",!0).style({"pointer-events":r?"none":"all"}),M.call(Eke,e,o),l.pull){var P=+Zu.castOption(l.pull,A.pts)||0;P>0&&(x+=P*A.pxmid[0],C+=P*A.pxmid[1])}A.cxFinal=x,A.cyFinal=C;function T(N,W,re,ae){var be=ae*(W[0]-N[0]),ze=ae*(W[1]-N[1]);return"a"+ae*u.r+","+ae*u.r+" 0 "+A.largeArc+(re?" 1 ":" 0 ")+be+","+ze}var B=l.hole;if(A.v===u.vTotal){var F="M"+(x+A.px0[0])+","+(C+A.px0[1])+T(A.px0,A.pxmid,!0,1)+T(A.pxmid,A.px0,!0,1)+"Z";B?m.attr("d","M"+(x+B*A.px0[0])+","+(C+B*A.px0[1])+T(A.px0,A.pxmid,!1,B)+T(A.pxmid,A.px0,!1,B)+"Z"+F):m.attr("d",F)}else{var U=T(A.px0,A.px1,!0,1);if(B){var G=1-B;m.attr("d","M"+(x+B*A.px1[0])+","+(C+B*A.px1[1])+T(A.px1,A.px0,!1,B)+"l"+G*A.px0[0]+","+G*A.px0[1]+U+"Z")}else m.attr("d","M"+x+","+C+"l"+A.px0[0]+","+A.px0[1]+U+"Z")}Bke(e,A,u);var j=Zu.castOption(l.textposition,A.pts),H=M.selectAll("g.slicetext").data(A.text&&j!=="none"?[0]:[]);H.enter().append("g").classed("slicetext",!0),H.exit().remove(),H.each(function(){var N=np.ensureSingle(Dv.select(this),"text","",function(te){te.attr("data-notex",1)}),W=np.ensureUniformFontSize(e,j==="outside"?kLt(l,A,n.font):kke(l,A,n.font));N.text(A.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(jg.font,W).call(Sj.convertToTspans,e);var re=jg.bBox(N.node()),ae;if(j==="outside")ae=Tke(re,A);else if(ae=Lke(re,A,u),j==="auto"&&ae.scale<1){var be=np.ensureUniformFontSize(e,l.outsidetextfont);N.call(jg.font,be),re=jg.bBox(N.node()),ae=Tke(re,A)}var ze=ae.textPosAngle,Ce=ze===void 0?A.pxmid:y6(u.r,ze);if(ae.targetX=x+Ce[0]*ae.rCenter+(ae.x||0),ae.targetY=C+Ce[1]*ae.rCenter+(ae.y||0),Oke(ae,re),ae.outside){var de=ae.targetY;A.yLabelMin=de-re.height/2,A.yLabelMid=de,A.yLabelMax=de+re.height/2,A.labelExtraX=0,A.labelExtraY=0,h=!0}ae.fontSize=W.size,ALt(l.type,ae,n),o[L].transform=ae,np.setTransormAndDisplay(N,ae)})});var d=Dv.select(this).selectAll("g.titletext").data(l.title.text?[0]:[]);if(d.enter().append("g").classed("titletext",!0),d.exit().remove(),d.each(function(){var A=np.ensureSingle(Dv.select(this),"text","",function(C){C.attr("data-notex",1)}),L=l.title.text;l._meta&&(L=np.templateString(L,l._meta)),A.text(L).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(jg.font,l.title.font).call(Sj.convertToTspans,e);var x;l.title.position==="middle center"?x=PLt(u):x=Rke(u,i),A.attr("transform",_ke(x.x,x.y)+TLt(Math.min(1,x.scale))+_ke(x.tx,x.ty))}),h&&ILt(c,l),ELt(f,l),h&&l.automargin){var p=jg.bBox(s.node()),_=l.domain,b=i.w*(_.x[1]-_.x[0]),v=i.h*(_.y[1]-_.y[0]),k=(.5*b-u.r)/i.w,E=(.5*v-u.r)/i.h;wLt.autoMargin(e,"pie."+l.uid+".automargin",{xl:_.x[0]-k,xr:_.x[1]+k,yb:_.y[0]-E,yt:_.y[1]+E,l:Math.max(u.cx-u.r-p.left,0),r:Math.max(p.right-(u.cx+u.r),0),b:Math.max(p.bottom-(u.cy+u.r),0),t:Math.max(u.cy-u.r-p.top,0),pad:5})}})});setTimeout(function(){a.selectAll("tspan").each(function(){var o=Dv.select(this);o.attr("dy")&&o.attr("dy",o.attr("dy"))})},0)}function ELt(e,t){e.each(function(r){var n=Dv.select(this);if(!r.labelExtraX&&!r.labelExtraY){n.select("path.textline").remove();return}var i=n.select("g.slicetext text");r.transform.targetX+=r.labelExtraX,r.transform.targetY+=r.labelExtraY,np.setTransormAndDisplay(i,r.transform);var a=r.cxFinal+r.pxmid[0],o=r.cyFinal+r.pxmid[1],s="M"+a+","+o,u=(r.yLabelMax-r.yLabelMin)*(r.pxmid[0]<0?-1:1)/4;if(r.labelExtraX){var l=r.labelExtraX*r.pxmid[1]/r.pxmid[0],f=r.yLabelMid+r.labelExtraY-(r.cyFinal+r.pxmid[1]);Math.abs(l)>Math.abs(f)?s+="l"+f*r.pxmid[0]/r.pxmid[1]+","+f+"H"+(a+r.labelExtraX+u):s+="l"+r.labelExtraX+","+l+"v"+(f-l)+"h"+u}else s+="V"+(r.yLabelMid+r.labelExtraY)+"h"+u;np.ensureSingle(n,"path","textline").call(Ake.stroke,t.outsidetextfont.color).attr({"stroke-width":Math.min(2,t.outsidetextfont.size/8),d:s,fill:"none"})})}function Eke(e,t,r){var n=r[0],i=n.cx,a=n.cy,o=n.trace,s=o.type==="funnelarea";"_hasHoverLabel"in o||(o._hasHoverLabel=!1),"_hasHoverEvent"in o||(o._hasHoverEvent=!1),e.on("mouseover",function(u){var l=t._fullLayout,f=t._fullData[o.index];if(!(t._dragging||l.hovermode===!1)){var c=f.hoverinfo;if(Array.isArray(c)&&(c=v6.castHoverinfo({hoverinfo:[Zu.castOption(c,u.pts)],_module:o._module},l,0)),c==="all"&&(c="label+text+value+percent+name"),f.hovertemplate||c!=="none"&&c!=="skip"&&c){var h=u.rInscribed||0,d=i+u.pxmid[0]*(1-h),p=a+u.pxmid[1]*(1-h),_=l.separators,b=[];if(c&&c.indexOf("label")!==-1&&b.push(u.label),u.text=Zu.castOption(f.hovertext||f.text,u.pts),c&&c.indexOf("text")!==-1){var v=u.text;np.isValidTextValue(v)&&b.push(v)}u.value=u.v,u.valueLabel=Zu.formatPieValue(u.v,_),c&&c.indexOf("value")!==-1&&b.push(u.valueLabel),u.percent=u.v/n.vTotal,u.percentLabel=Zu.formatPiePercent(u.percent,_),c&&c.indexOf("percent")!==-1&&b.push(u.percentLabel);var k=f.hoverlabel,E=k.font,A=[];v6.loneHover({trace:o,x0:d-h*n.r,x1:d+h*n.r,y:p,_x0:s?i+u.TL[0]:d-h*n.r,_x1:s?i+u.TR[0]:d+h*n.r,_y0:s?a+u.TL[1]:p-h*n.r,_y1:s?a+u.BL[1]:p+h*n.r,text:b.join("
"),name:f.hovertemplate||c.indexOf("name")!==-1?f.name:void 0,idealAlign:u.pxmid[0]<0?"left":"right",color:Zu.castOption(k.bgcolor,u.pts)||u.color,borderColor:Zu.castOption(k.bordercolor,u.pts),fontFamily:Zu.castOption(E.family,u.pts),fontSize:Zu.castOption(E.size,u.pts),fontColor:Zu.castOption(E.color,u.pts),nameLength:Zu.castOption(k.namelength,u.pts),textAlign:Zu.castOption(k.align,u.pts),hovertemplate:Zu.castOption(f.hovertemplate,u.pts),hovertemplateLabels:u,eventData:[m6(u,f)]},{container:l._hoverlayer.node(),outerContainer:l._paper.node(),gd:t,inOut_bbox:A}),u.bbox=A[0],o._hasHoverLabel=!0}o._hasHoverEvent=!0,t.emit("plotly_hover",{points:[m6(u,f)],event:Dv.event})}}),e.on("mouseout",function(u){var l=t._fullLayout,f=t._fullData[o.index],c=Dv.select(this).datum();o._hasHoverEvent&&(u.originalEvent=Dv.event,t.emit("plotly_unhover",{points:[m6(c,f)],event:Dv.event}),o._hasHoverEvent=!1),o._hasHoverLabel&&(v6.loneUnhover(l._hoverlayer.node()),o._hasHoverLabel=!1)}),e.on("click",function(u){var l=t._fullLayout,f=t._fullData[o.index];t._dragging||l.hovermode===!1||(t._hoverdata=[m6(u,f)],v6.click(t,Dv.event))})}function kLt(e,t,r){var n=Zu.castOption(e.outsidetextfont.color,t.pts)||Zu.castOption(e.textfont.color,t.pts)||r.color,i=Zu.castOption(e.outsidetextfont.family,t.pts)||Zu.castOption(e.textfont.family,t.pts)||r.family,a=Zu.castOption(e.outsidetextfont.size,t.pts)||Zu.castOption(e.textfont.size,t.pts)||r.size,o=Zu.castOption(e.outsidetextfont.weight,t.pts)||Zu.castOption(e.textfont.weight,t.pts)||r.weight,s=Zu.castOption(e.outsidetextfont.style,t.pts)||Zu.castOption(e.textfont.style,t.pts)||r.style,u=Zu.castOption(e.outsidetextfont.variant,t.pts)||Zu.castOption(e.textfont.variant,t.pts)||r.variant,l=Zu.castOption(e.outsidetextfont.textcase,t.pts)||Zu.castOption(e.textfont.textcase,t.pts)||r.textcase,f=Zu.castOption(e.outsidetextfont.lineposition,t.pts)||Zu.castOption(e.textfont.lineposition,t.pts)||r.lineposition,c=Zu.castOption(e.outsidetextfont.shadow,t.pts)||Zu.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n,family:i,size:a,weight:o,style:s,variant:u,textcase:l,lineposition:f,shadow:c}}function kke(e,t,r){var n=Zu.castOption(e.insidetextfont.color,t.pts);!n&&e._input.textfont&&(n=Zu.castOption(e._input.textfont.color,t.pts));var i=Zu.castOption(e.insidetextfont.family,t.pts)||Zu.castOption(e.textfont.family,t.pts)||r.family,a=Zu.castOption(e.insidetextfont.size,t.pts)||Zu.castOption(e.textfont.size,t.pts)||r.size,o=Zu.castOption(e.insidetextfont.weight,t.pts)||Zu.castOption(e.textfont.weight,t.pts)||r.weight,s=Zu.castOption(e.insidetextfont.style,t.pts)||Zu.castOption(e.textfont.style,t.pts)||r.style,u=Zu.castOption(e.insidetextfont.variant,t.pts)||Zu.castOption(e.textfont.variant,t.pts)||r.variant,l=Zu.castOption(e.insidetextfont.textcase,t.pts)||Zu.castOption(e.textfont.textcase,t.pts)||r.textcase,f=Zu.castOption(e.insidetextfont.lineposition,t.pts)||Zu.castOption(e.textfont.lineposition,t.pts)||r.lineposition,c=Zu.castOption(e.insidetextfont.shadow,t.pts)||Zu.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n||Ake.contrast(t.color),family:i,size:a,weight:o,style:s,variant:u,textcase:l,lineposition:f,shadow:c}}function Cke(e,t){for(var r,n,i=0;i=-4;k-=2)v(Math.PI*k,"tan");for(k=4;k>=-4;k-=2)v(Math.PI*(k+1),"tan")}if(c||d){for(k=4;k>=-4;k-=2)v(Math.PI*(k+1.5),"rad");for(k=4;k>=-4;k-=2)v(Math.PI*(k+.5),"rad")}}if(s||p||c){var E=Math.sqrt(e.width*e.width+e.height*e.height);if(b={scale:i*n*2/E,rCenter:1-i,rotate:0},b.textPosAngle=(t.startangle+t.stopangle)/2,b.scale>=1)return b;_.push(b)}(p||d)&&(b=bke(e,n,o,u,l),b.textPosAngle=(t.startangle+t.stopangle)/2,_.push(b)),(p||h)&&(b=wke(e,n,o,u,l),b.textPosAngle=(t.startangle+t.stopangle)/2,_.push(b));for(var A=0,L=0,x=0;x<_.length;x++){var C=_[x].scale;if(L=1)break}return _[A]}function CLt(e,t){var r=e.startangle,n=e.stopangle;return r>t&&t>n||r0?1:-1)/2,y:a/(1+r*r/(n*n)),outside:!0}}function PLt(e){var t=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/t,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}function Rke(e,t){var r=1,n=1,i,a=e.trace,o={x:e.cx,y:e.cy},s={tx:0,ty:0};s.ty+=a.title.font.size,i=Dke(a),a.title.position.indexOf("top")!==-1?(o.y-=(1+i)*e.r,s.ty-=e.titleBox.height):a.title.position.indexOf("bottom")!==-1&&(o.y+=(1+i)*e.r);var u=zLt(e.r,e.trace.aspectratio),l=t.w*(a.domain.x[1]-a.domain.x[0])/2;return a.title.position.indexOf("left")!==-1?(l=l+u,o.x-=(1+i)*u,s.tx+=e.titleBox.width/2):a.title.position.indexOf("center")!==-1?l*=2:a.title.position.indexOf("right")!==-1&&(l=l+u,o.x+=(1+i)*u,s.tx-=e.titleBox.width/2),r=l/e.titleBox.width,n=Mj(e,t)/e.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function zLt(e,t){return e/(t===void 0?1:t)}function Mj(e,t){var r=e.trace,n=t.h*(r.domain.y[1]-r.domain.y[0]);return Math.min(e.titleBox.height,n/2)}function Dke(e){var t=e.pull;if(!t)return 0;var r;if(np.isArrayOrTypedArray(t))for(t=0,r=0;rt&&(t=e.pull[r]);return t}function ILt(e,t){var r,n,i,a,o,s,u,l,f,c,h,d,p;function _(E,A){return E.pxmid[1]-A.pxmid[1]}function b(E,A){return A.pxmid[1]-E.pxmid[1]}function v(E,A){A||(A={});var L=A.labelExtraY+(n?A.yLabelMax:A.yLabelMin),x=n?E.yLabelMin:E.yLabelMax,C=n?E.yLabelMax:E.yLabelMin,M=E.cyFinal+o(E.px0[1],E.px1[1]),m=L-x,P,T,B,F,U,G;if(m*u>0&&(E.labelExtraY=m),!!np.isArrayOrTypedArray(t.pull))for(T=0;T=(Zu.castOption(t.pull,B.pts)||0))&&((E.pxmid[1]-B.pxmid[1])*u>0?(F=B.cyFinal+o(B.px0[1],B.px1[1]),m=F-x-E.labelExtraY,m*u>0&&(E.labelExtraY+=m)):(C+E.labelExtraY-M)*u>0&&(P=3*s*Math.abs(T-c.indexOf(E)),U=B.cxFinal+a(B.px0[0],B.px1[0]),G=U+P-(E.cxFinal+E.pxmid[0])-E.labelExtraX,G*s>0&&(E.labelExtraX+=G)))}for(n=0;n<2;n++)for(i=n?_:b,o=n?Math.max:Math.min,u=n?1:-1,r=0;r<2;r++){for(a=r?Math.max:Math.min,s=r?1:-1,l=e[n][r],l.sort(i),f=e[1-n][r],c=f.concat(l),d=[],h=0;h1?(l=r.r,f=l/i.aspectratio):(f=r.r,l=f*i.aspectratio),l*=(1+i.baseratio)/2,u=l*f}o=Math.min(o,u/r.vTotal)}for(n=0;nt.vTotal/2?1:0,l.halfangle=Math.PI*Math.min(l.v/t.vTotal,.5),l.ring=1-n.hole,l.rInscribed=LLt(l,t))}function y6(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}function Bke(e,t,r){var n=e._fullLayout,i=r.trace,a=i.texttemplate,o=i.textinfo;if(!a&&o&&o!=="none"){var s=o.split("+"),u=function(A){return s.indexOf(A)!==-1},l=u("label"),f=u("text"),c=u("value"),h=u("percent"),d=n.separators,p;if(p=l?[t.label]:[],f){var _=Zu.getFirstFilled(i.text,t.pts);xke(_)&&p.push(_)}c&&p.push(Zu.formatPieValue(t.v,d)),h&&p.push(Zu.formatPiePercent(t.v/r.vTotal,d)),t.text=p.join("
")}function b(A){return{label:A.label,value:A.v,valueLabel:Zu.formatPieValue(A.v,n.separators),percent:A.v/r.vTotal,percentLabel:Zu.formatPiePercent(A.v/r.vTotal,n.separators),color:A.color,text:A.text,customdata:np.castOption(i,A.i,"customdata")}}if(a){var v=np.castOption(i,t.i,"texttemplate");if(!v)t.text="";else{var k=b(t),E=Zu.getFirstFilled(i.text,t.pts);(xke(E)||E==="")&&(k.text=E),t.text=np.texttemplateString({data:[k,i._meta],fallback:i.texttemplatefallback,labels:k,locale:e._fullLayout._d3locale,template:v})}}}function Oke(e,t){var r=e.rotate*Math.PI/180,n=Math.cos(r),i=Math.sin(r),a=(t.left+t.right)/2,o=(t.top+t.bottom)/2;e.textX=a*n-o*i,e.textY=a*i+o*n,e.noCenter=!0}qke.exports={plot:MLt,formatSliceLabel:Bke,transformInsideText:Lke,determineInsideTextFont:kke,positionTitleOutside:Rke,prerenderTitles:Cke,layoutAreas:Fke,attachFxHandlers:Eke,computeTransform:Oke}});var Vke=Ae((bvr,Uke)=>{"use strict";var Nke=Jl(),FLt=O3(),BLt=Tp().resizeText;Uke.exports=function(t){var r=t._fullLayout._pielayer.selectAll(".trace");BLt(t,r,"pie"),r.each(function(n){var i=n[0],a=i.trace,o=Nke.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){Nke.select(this).call(FLt,s,a,t)})})}});var Hke=Ae(TA=>{"use strict";var Gke=Cc();TA.name="pie";TA.plot=function(e,t,r,n){Gke.plotBasePlot(TA.name,e,t,r,n)};TA.clean=function(e,t,r,n){Gke.cleanBasePlot(TA.name,e,t,r,n)}});var jke=Ae((Tvr,Wke)=>{"use strict";Wke.exports={attributes:S2(),supplyDefaults:M2().supplyDefaults,supplyLayoutDefaults:dke(),layoutAttributes:p6(),calc:wA().calc,crossTraceCalc:wA().crossTraceCalc,plot:g6().plot,style:Vke(),styleOne:O3(),moduleType:"trace",name:"pie",basePlotModule:Hke(),categories:["pie-like","pie","showLegend"],meta:{}}});var Zke=Ae((Avr,Xke)=>{"use strict";Xke.exports=jke()});var Kke=Ae(AA=>{"use strict";var Yke=Cc();AA.name="sunburst";AA.plot=function(e,t,r,n){Yke.plotBasePlot(AA.name,e,t,r,n)};AA.clean=function(e,t,r,n){Yke.cleanBasePlot(AA.name,e,t,r,n)}});var Ej=Ae((Mvr,Jke)=>{"use strict";Jke.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}});var L4=Ae((Evr,eCe)=>{"use strict";var OLt=Gf(),{hovertemplateAttrs:qLt,texttemplateAttrs:NLt,templatefallbackAttrs:$ke}=Ff(),ULt=nc(),VLt=zc().attributes,Xg=S2(),Qke=Ej(),C4=Su().extendFlat,GLt=Id().pattern;eCe.exports={labels:{valType:"data_array",editType:"calc"},parents:{valType:"data_array",editType:"calc"},values:{valType:"data_array",editType:"calc"},branchvalues:{valType:"enumerated",values:["remainder","total"],dflt:"remainder",editType:"calc"},count:{valType:"flaglist",flags:["branches","leaves"],dflt:"leaves",editType:"calc"},level:{valType:"any",editType:"plot",anim:!0},maxdepth:{valType:"integer",editType:"plot",dflt:-1},marker:C4({colors:{valType:"data_array",editType:"calc"},line:{color:C4({},Xg.marker.line.color,{dflt:null}),width:C4({},Xg.marker.line.width,{dflt:1}),editType:"calc"},pattern:GLt,editType:"calc"},ULt("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:Xg.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:NLt({editType:"plot"},{keys:Qke.eventDataKeys.concat(["label","value"])}),texttemplatefallback:$ke({editType:"plot"}),hovertext:Xg.hovertext,hoverinfo:C4({},OLt.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:qLt({},{keys:Qke.eventDataKeys}),hovertemplatefallback:$ke(),textfont:Xg.textfont,insidetextorientation:Xg.insidetextorientation,insidetextfont:Xg.insidetextfont,outsidetextfont:C4({},Xg.outsidetextfont,{}),rotation:{valType:"angle",dflt:0,editType:"plot"},sort:Xg.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)"},editType:"calc"},domain:VLt({name:"sunburst",trace:!0,editType:"calc"})}});var kj=Ae((kvr,tCe)=>{"use strict";tCe.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var aCe=Ae((Cvr,nCe)=>{"use strict";var rCe=ei(),HLt=L4(),WLt=zc().defaults,jLt=r0().handleText,XLt=M2().handleMarkerDefaults,iCe=_c(),ZLt=iCe.hasColorscale,YLt=iCe.handleDefaults;nCe.exports=function(t,r,n,i){function a(h,d){return rCe.coerce(t,r,HLt,h,d)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var u=a("values");u&&u.length?a("branchvalues"):a("count"),a("level"),a("maxdepth"),XLt(t,r,i,a);var l=r._hasColorscale=ZLt(t,"marker","colors")||(t.marker||{}).coloraxis;l&&YLt(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",l?1:.7);var f=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",rCe.isArrayOrTypedArray(f)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var c="auto";jLt(t,r,i,a,c,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("insidetextorientation"),a("sort"),a("rotation"),a("root.color"),WLt(r,i,a),r._length=null}});var sCe=Ae((Lvr,oCe)=>{"use strict";var KLt=ei(),JLt=kj();oCe.exports=function(t,r){function n(i,a){return KLt.coerce(t,r,JLt,i,a)}n("sunburstcolorway",r.colorway),n("extendsunburstcolors")}});var P4=Ae((_6,lCe)=>{(function(e,t){typeof _6=="object"&&typeof lCe!="undefined"?t(_6):(e=e||self,t(e.d3=e.d3||{}))})(_6,function(e){"use strict";function t(Ie,Fe){return Ie.parent===Fe.parent?1:2}function r(Ie){return Ie.reduce(n,0)/Ie.length}function n(Ie,Fe){return Ie+Fe.x}function i(Ie){return 1+Ie.reduce(a,0)}function a(Ie,Fe){return Math.max(Ie,Fe.y)}function o(Ie){for(var Fe;Fe=Ie.children;)Ie=Fe[0];return Ie}function s(Ie){for(var Fe;Fe=Ie.children;)Ie=Fe[Fe.length-1];return Ie}function u(){var Ie=t,Fe=1,ft=1,ge=!1;function fe(pe){var dt,Pt=0;pe.eachAfter(function(Er){var Rr=Er.children;Rr?(Er.x=r(Rr),Er.y=i(Rr)):(Er.x=dt?Pt+=Ie(Er,dt):0,Er.y=0,dt=Er)});var zt=o(pe),rr=s(pe),Gr=zt.x-Ie(zt,rr)/2,Br=rr.x+Ie(rr,zt)/2;return pe.eachAfter(ge?function(Er){Er.x=(Er.x-pe.x)*Fe,Er.y=(pe.y-Er.y)*ft}:function(Er){Er.x=(Er.x-Gr)/(Br-Gr)*Fe,Er.y=(1-(pe.y?Er.y/pe.y:1))*ft})}return fe.separation=function(pe){return arguments.length?(Ie=pe,fe):Ie},fe.size=function(pe){return arguments.length?(ge=!1,Fe=+pe[0],ft=+pe[1],fe):ge?null:[Fe,ft]},fe.nodeSize=function(pe){return arguments.length?(ge=!0,Fe=+pe[0],ft=+pe[1],fe):ge?[Fe,ft]:null},fe}function l(Ie){var Fe=0,ft=Ie.children,ge=ft&&ft.length;if(!ge)Fe=1;else for(;--ge>=0;)Fe+=ft[ge].value;Ie.value=Fe}function f(){return this.eachAfter(l)}function c(Ie){var Fe=this,ft,ge=[Fe],fe,pe,dt;do for(ft=ge.reverse(),ge=[];Fe=ft.pop();)if(Ie(Fe),fe=Fe.children,fe)for(pe=0,dt=fe.length;pe=0;--fe)ft.push(ge[fe]);return this}function d(Ie){for(var Fe=this,ft=[Fe],ge=[],fe,pe,dt;Fe=ft.pop();)if(ge.push(Fe),fe=Fe.children,fe)for(pe=0,dt=fe.length;pe=0;)ft+=ge[fe].value;Fe.value=ft})}function _(Ie){return this.eachBefore(function(Fe){Fe.children&&Fe.children.sort(Ie)})}function b(Ie){for(var Fe=this,ft=v(Fe,Ie),ge=[Fe];Fe!==ft;)Fe=Fe.parent,ge.push(Fe);for(var fe=ge.length;Ie!==ft;)ge.splice(fe,0,Ie),Ie=Ie.parent;return ge}function v(Ie,Fe){if(Ie===Fe)return Ie;var ft=Ie.ancestors(),ge=Fe.ancestors(),fe=null;for(Ie=ft.pop(),Fe=ge.pop();Ie===Fe;)fe=Ie,Ie=ft.pop(),Fe=ge.pop();return fe}function k(){for(var Ie=this,Fe=[Ie];Ie=Ie.parent;)Fe.push(Ie);return Fe}function E(){var Ie=[];return this.each(function(Fe){Ie.push(Fe)}),Ie}function A(){var Ie=[];return this.eachBefore(function(Fe){Fe.children||Ie.push(Fe)}),Ie}function L(){var Ie=this,Fe=[];return Ie.each(function(ft){ft!==Ie&&Fe.push({source:ft.parent,target:ft})}),Fe}function x(Ie,Fe){var ft=new T(Ie),ge=+Ie.value&&(ft.value=Ie.value),fe,pe=[ft],dt,Pt,zt,rr;for(Fe==null&&(Fe=M);fe=pe.pop();)if(ge&&(fe.value=+fe.data.value),(Pt=Fe(fe.data))&&(rr=Pt.length))for(fe.children=new Array(rr),zt=rr-1;zt>=0;--zt)pe.push(dt=fe.children[zt]=new T(Pt[zt])),dt.parent=fe,dt.depth=fe.depth+1;return ft.eachBefore(P)}function C(){return x(this).eachBefore(m)}function M(Ie){return Ie.children}function m(Ie){Ie.data=Ie.data.data}function P(Ie){var Fe=0;do Ie.height=Fe;while((Ie=Ie.parent)&&Ie.height<++Fe)}function T(Ie){this.data=Ie,this.depth=this.height=0,this.parent=null}T.prototype=x.prototype={constructor:T,count:f,each:c,eachAfter:d,eachBefore:h,sum:p,sort:_,path:b,ancestors:k,descendants:E,leaves:A,links:L,copy:C};var B=Array.prototype.slice;function F(Ie){for(var Fe=Ie.length,ft,ge;Fe;)ge=Math.random()*Fe--|0,ft=Ie[Fe],Ie[Fe]=Ie[ge],Ie[ge]=ft;return Ie}function U(Ie){for(var Fe=0,ft=(Ie=F(B.call(Ie))).length,ge=[],fe,pe;Fe0&&ft*ft>ge*ge+fe*fe}function N(Ie,Fe){for(var ft=0;ftzt?(fe=(rr+zt-pe)/(2*rr),Pt=Math.sqrt(Math.max(0,zt/rr-fe*fe)),ft.x=Ie.x-fe*ge-Pt*dt,ft.y=Ie.y-fe*dt+Pt*ge):(fe=(rr+pe-zt)/(2*rr),Pt=Math.sqrt(Math.max(0,pe/rr-fe*fe)),ft.x=Fe.x+fe*ge-Pt*dt,ft.y=Fe.y+fe*dt+Pt*ge)):(ft.x=Fe.x+ft.r,ft.y=Fe.y)}function Ce(Ie,Fe){var ft=Ie.r+Fe.r-1e-6,ge=Fe.x-Ie.x,fe=Fe.y-Ie.y;return ft>0&&ft*ft>ge*ge+fe*fe}function de(Ie){var Fe=Ie._,ft=Ie.next._,ge=Fe.r+ft.r,fe=(Fe.x*ft.r+ft.x*Fe.r)/ge,pe=(Fe.y*ft.r+ft.y*Fe.r)/ge;return fe*fe+pe*pe}function te(Ie){this._=Ie,this.next=null,this.previous=null}function ke(Ie){if(!(fe=Ie.length))return 0;var Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br;if(Fe=Ie[0],Fe.x=0,Fe.y=0,!(fe>1))return Fe.r;if(ft=Ie[1],Fe.x=-ft.r,ft.x=Fe.r,ft.y=0,!(fe>2))return Fe.r+ft.r;ze(ft,Fe,ge=Ie[2]),Fe=new te(Fe),ft=new te(ft),ge=new te(ge),Fe.next=ge.previous=ft,ft.next=Fe.previous=ge,ge.next=ft.previous=Fe;e:for(Pt=3;Pt0)throw new Error("cycle");return Pt}return ft.id=function(ge){return arguments.length?(Ie=Ue(ge),ft):Ie},ft.parentId=function(ge){return arguments.length?(Fe=Ue(ge),ft):Fe},ft}function Te(Ie,Fe){return Ie.parent===Fe.parent?1:2}function ot(Ie){var Fe=Ie.children;return Fe?Fe[0]:Ie.t}function Tt(Ie){var Fe=Ie.children;return Fe?Fe[Fe.length-1]:Ie.t}function vt(Ie,Fe,ft){var ge=ft/(Fe.i-Ie.i);Fe.c-=ge,Fe.s+=ft,Ie.c+=ge,Fe.z+=ft,Fe.m+=ft}function Ye(Ie){for(var Fe=0,ft=0,ge=Ie.children,fe=ge.length,pe;--fe>=0;)pe=ge[fe],pe.z+=Fe,pe.m+=Fe,Fe+=pe.s+(ft+=pe.c)}function He(Ie,Fe,ft){return Ie.a.parent===Fe.parent?Ie.a:ft}function it(Ie,Fe){this._=Ie,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=Fe}it.prototype=Object.create(T.prototype);function et(Ie){for(var Fe=new it(Ie,0),ft,ge=[Fe],fe,pe,dt,Pt;ft=ge.pop();)if(pe=ft._.children)for(ft.children=new Array(Pt=pe.length),dt=Pt-1;dt>=0;--dt)ge.push(fe=ft.children[dt]=new it(pe[dt],dt)),fe.parent=ft;return(Fe.parent=new it(null,0)).children=[Fe],Fe}function It(){var Ie=Te,Fe=1,ft=1,ge=null;function fe(rr){var Gr=et(rr);if(Gr.eachAfter(pe),Gr.parent.m=-Gr.z,Gr.eachBefore(dt),ge)rr.eachBefore(zt);else{var Br=rr,Er=rr,Rr=rr;rr.eachBefore(function(Qi){Qi.xEr.x&&(Er=Qi),Qi.depth>Rr.depth&&(Rr=Qi)});var pi=Br===Er?1:Ie(Br,Er)/2,Di=pi-Br.x,ni=Fe/(Er.x+pi+Di),$i=ft/(Rr.depth||1);rr.eachBefore(function(Qi){Qi.x=(Qi.x+Di)*ni,Qi.y=Qi.depth*$i})}return rr}function pe(rr){var Gr=rr.children,Br=rr.parent.children,Er=rr.i?Br[rr.i-1]:null;if(Gr){Ye(rr);var Rr=(Gr[0].z+Gr[Gr.length-1].z)/2;Er?(rr.z=Er.z+Ie(rr._,Er._),rr.m=rr.z-Rr):rr.z=Rr}else Er&&(rr.z=Er.z+Ie(rr._,Er._));rr.parent.A=Pt(rr,Er,rr.parent.A||Br[0])}function dt(rr){rr._.x=rr.z+rr.parent.m,rr.m+=rr.parent.m}function Pt(rr,Gr,Br){if(Gr){for(var Er=rr,Rr=rr,pi=Gr,Di=Er.parent.children[0],ni=Er.m,$i=Rr.m,Qi=pi.m,si=Di.m,Ai;pi=Tt(pi),Er=ot(Er),pi&&Er;)Di=ot(Di),Rr=Tt(Rr),Rr.a=rr,Ai=pi.z+Qi-Er.z-ni+Ie(pi._,Er._),Ai>0&&(vt(He(pi,rr,Br),rr,Ai),ni+=Ai,$i+=Ai),Qi+=pi.m,ni+=Er.m,si+=Di.m,$i+=Rr.m;pi&&!Tt(Rr)&&(Rr.t=pi,Rr.m+=Qi-$i),Er&&!ot(Di)&&(Di.t=Er,Di.m+=ni-si,Br=rr)}return Br}function zt(rr){rr.x*=Fe,rr.y=rr.depth*ft}return fe.separation=function(rr){return arguments.length?(Ie=rr,fe):Ie},fe.size=function(rr){return arguments.length?(ge=!1,Fe=+rr[0],ft=+rr[1],fe):ge?null:[Fe,ft]},fe.nodeSize=function(rr){return arguments.length?(ge=!0,Fe=+rr[0],ft=+rr[1],fe):ge?[Fe,ft]:null},fe}function Yt(Ie,Fe,ft,ge,fe){for(var pe=Ie.children,dt,Pt=-1,zt=pe.length,rr=Ie.value&&(fe-ft)/Ie.value;++PtQi&&(Qi=rr),Rt=ni*ni*Ni,si=Math.max(Qi/Rt,Rt/$i),si>Ai){ni-=rr;break}Ai=si}dt.push(zt={value:ni,dice:Rr1?ge:1)},ft}(cr);function Ut(){var Ie=yr,Fe=!1,ft=1,ge=1,fe=[0],pe=De,dt=De,Pt=De,zt=De,rr=De;function Gr(Er){return Er.x0=Er.y0=0,Er.x1=ft,Er.y1=ge,Er.eachBefore(Br),fe=[0],Fe&&Er.eachBefore(Nt),Er}function Br(Er){var Rr=fe[Er.depth],pi=Er.x0+Rr,Di=Er.y0+Rr,ni=Er.x1-Rr,$i=Er.y1-Rr;ni=Er-1){var Qi=pe[Br];Qi.x0=pi,Qi.y0=Di,Qi.x1=ni,Qi.y1=$i;return}for(var si=rr[Br],Ai=Rr/2+si,Ni=Br+1,Rt=Er-1;Ni>>1;rr[yt]$i-Di){var xr=(pi*Wt+ni*Gt)/Rr;Gr(Br,Ni,Gt,pi,Di,xr,$i),Gr(Ni,Er,Wt,xr,Di,ni,$i)}else{var Lr=(Di*Wt+$i*Gt)/Rr;Gr(Br,Ni,Gt,pi,Di,ni,Lr),Gr(Ni,Er,Wt,pi,Lr,ni,$i)}}}function xe(Ie,Fe,ft,ge,fe){(Ie.depth&1?Yt:at)(Ie,Fe,ft,ge,fe)}var Oe=function Ie(Fe){function ft(ge,fe,pe,dt,Pt){if((zt=ge._squarify)&&zt.ratio===Fe)for(var zt,rr,Gr,Br,Er=-1,Rr,pi=zt.length,Di=ge.value;++Er1?ge:1)},ft}(cr);e.cluster=u,e.hierarchy=x,e.pack=ce,e.packEnclose=U,e.packSiblings=Ee,e.partition=Ke,e.stratify=Et,e.tree=It,e.treemap=Ut,e.treemapBinary=Re,e.treemapDice=at,e.treemapResquarify=Oe,e.treemapSlice=Yt,e.treemapSliceDice=xe,e.treemapSquarify=yr,Object.defineProperty(e,"__esModule",{value:!0})})});var I4=Ae(z4=>{"use strict";var uCe=P4(),$Lt=ku(),SA=ei(),QLt=_c().makeColorScaleFuncFromTrace,ePt=wA().makePullColorFn,tPt=wA().generateExtendedColors,rPt=_c().calc,iPt=rf().ALMOST_EQUAL,nPt={},aPt={},oPt={};z4.calc=function(e,t){var r=e._fullLayout,n=t.ids,i=SA.isArrayOrTypedArray(n),a=t.labels,o=t.parents,s=t.values,u=SA.isArrayOrTypedArray(s),l=[],f={},c={},h=function(H,N){f[H]?f[H].push(N):f[H]=[N],c[N]=1},d=function(H){return H||typeof H=="number"},p=function(H){return!u||$Lt(s[H])&&s[H]>=0},_,b,v;i?(_=Math.min(n.length,o.length),b=function(H){return d(n[H])&&p(H)},v=function(H){return String(n[H])}):(_=Math.min(a.length,o.length),b=function(H){return d(a[H])&&p(H)},v=function(H){return String(a[H])}),u&&(_=Math.min(_,s.length));for(var k=0;k<_;k++)if(b(k)){var E=v(k),A=d(o[k])?String(o[k]):"",L={i:k,id:E,pid:A,label:d(a[k])?String(a[k]):""};u&&(L.v=+s[k]),l.push(L),h(A,E)}if(f[""]){if(f[""].length>1){for(var M=SA.randstr(),m=0;m{});function Gy(){}function hCe(){return this.rgb().formatHex()}function pPt(){return this.rgb().formatHex8()}function vPt(){return _Ce(this).formatHsl()}function dCe(){return this.rgb().formatRgb()}function W_(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=sPt.exec(e))?(r=t[1].length,t=parseInt(t[1],16),r===6?pCe(t):r===3?new xd(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):r===8?b6(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?b6(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=lPt.exec(e))?new xd(t[1],t[2],t[3],1):(t=uPt.exec(e))?new xd(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=fPt.exec(e))?b6(t[1],t[2],t[3],t[4]):(t=cPt.exec(e))?b6(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=hPt.exec(e))?yCe(t[1],t[2]/100,t[3]/100,1):(t=dPt.exec(e))?yCe(t[1],t[2]/100,t[3]/100,t[4]):cCe.hasOwnProperty(e)?pCe(cCe[e]):e==="transparent"?new xd(NaN,NaN,NaN,0):null}function pCe(e){return new xd(e>>16&255,e>>8&255,e&255,1)}function b6(e,t,r,n){return n<=0&&(e=t=r=NaN),new xd(e,t,r,n)}function D4(e){return e instanceof Gy||(e=W_(e)),e?(e=e.rgb(),new xd(e.r,e.g,e.b,e.opacity)):new xd}function EA(e,t,r,n){return arguments.length===1?D4(e):new xd(e,t,r,n==null?1:n)}function xd(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}function vCe(){return`#${E2(this.r)}${E2(this.g)}${E2(this.b)}`}function mPt(){return`#${E2(this.r)}${E2(this.g)}${E2(this.b)}${E2((isNaN(this.opacity)?1:this.opacity)*255)}`}function mCe(){let e=T6(this.opacity);return`${e===1?"rgb(":"rgba("}${k2(this.r)}, ${k2(this.g)}, ${k2(this.b)}${e===1?")":`, ${e})`}`}function T6(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function k2(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function E2(e){return e=k2(e),(e<16?"0":"")+e.toString(16)}function yCe(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Xm(e,t,r,n)}function _Ce(e){if(e instanceof Xm)return new Xm(e.h,e.s,e.l,e.opacity);if(e instanceof Gy||(e=W_(e)),!e)return new Xm;if(e instanceof Xm)return e;e=e.rgb();var t=e.r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=NaN,s=a-i,u=(a+i)/2;return s?(t===a?o=(r-n)/s+(r0&&u<1?0:o,new Xm(o,s,u,e.opacity)}function F4(e,t,r,n){return arguments.length===1?_Ce(e):new Xm(e,t,r,n==null?1:n)}function Xm(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}function gCe(e){return e=(e||0)%360,e<0?e+360:e}function w6(e){return Math.max(0,Math.min(1,e||0))}function Cj(e,t,r){return(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)*255}var H_,C2,MA,R4,Vy,sPt,lPt,uPt,fPt,cPt,hPt,dPt,cCe,A6=tc(()=>{x6();H_=.7,C2=1/H_,MA="\\s*([+-]?\\d+)\\s*",R4="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Vy="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",sPt=/^#([0-9a-f]{3,8})$/,lPt=new RegExp(`^rgb\\(${MA},${MA},${MA}\\)$`),uPt=new RegExp(`^rgb\\(${Vy},${Vy},${Vy}\\)$`),fPt=new RegExp(`^rgba\\(${MA},${MA},${MA},${R4}\\)$`),cPt=new RegExp(`^rgba\\(${Vy},${Vy},${Vy},${R4}\\)$`),hPt=new RegExp(`^hsl\\(${R4},${Vy},${Vy}\\)$`),dPt=new RegExp(`^hsla\\(${R4},${Vy},${Vy},${R4}\\)$`),cCe={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};Zg(Gy,W_,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:hCe,formatHex:hCe,formatHex8:pPt,formatHsl:vPt,formatRgb:dCe,toString:dCe});Zg(xd,EA,G_(Gy,{brighter(e){return e=e==null?C2:Math.pow(C2,e),new xd(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new xd(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new xd(k2(this.r),k2(this.g),k2(this.b),T6(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:vCe,formatHex:vCe,formatHex8:mPt,formatRgb:mCe,toString:mCe}));Zg(Xm,F4,G_(Gy,{brighter(e){return e=e==null?C2:Math.pow(C2,e),new Xm(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new Xm(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new xd(Cj(e>=240?e-240:e+120,i,n),Cj(e,i,n),Cj(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new Xm(gCe(this.h),w6(this.s),w6(this.l),T6(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=T6(this.opacity);return`${e===1?"hsl(":"hsla("}${gCe(this.h)}, ${w6(this.s)*100}%, ${w6(this.l)*100}%${e===1?")":`, ${e})`}`}}))});var S6,M6,Lj=tc(()=>{S6=Math.PI/180,M6=180/Math.PI});function SCe(e){if(e instanceof Hy)return new Hy(e.l,e.a,e.b,e.opacity);if(e instanceof Yg)return MCe(e);e instanceof xd||(e=D4(e));var t=Rj(e.r),r=Rj(e.g),n=Rj(e.b),i=Pj((.2225045*t+.7168786*r+.0606169*n)/bCe),a,o;return t===r&&r===n?a=o=i:(a=Pj((.4360747*t+.3850649*r+.1430804*n)/xCe),o=Pj((.0139322*t+.0971045*r+.7141733*n)/wCe)),new Hy(116*i-16,500*(a-i),200*(i-o),e.opacity)}function CA(e,t,r,n){return arguments.length===1?SCe(e):new Hy(e,t,r,n==null?1:n)}function Hy(e,t,r,n){this.l=+e,this.a=+t,this.b=+r,this.opacity=+n}function Pj(e){return e>yPt?Math.pow(e,1/3):e/ACe+TCe}function zj(e){return e>kA?e*e*e:ACe*(e-TCe)}function Ij(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function Rj(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function gPt(e){if(e instanceof Yg)return new Yg(e.h,e.c,e.l,e.opacity);if(e instanceof Hy||(e=SCe(e)),e.a===0&&e.b===0)return new Yg(NaN,0{x6();A6();Lj();E6=18,xCe=.96422,bCe=1,wCe=.82521,TCe=4/29,kA=6/29,ACe=3*kA*kA,yPt=kA*kA*kA;Zg(Hy,CA,G_(Gy,{brighter(e){return new Hy(this.l+E6*(e==null?1:e),this.a,this.b,this.opacity)},darker(e){return new Hy(this.l-E6*(e==null?1:e),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,r=isNaN(this.b)?e:e-this.b/200;return t=xCe*zj(t),e=bCe*zj(e),r=wCe*zj(r),new xd(Ij(3.1338561*t-1.6168667*e-.4906146*r),Ij(-.9787684*t+1.9161415*e+.033454*r),Ij(.0719453*t-.2289914*e+1.4052427*r),this.opacity)}}));Zg(Yg,B4,G_(Gy,{brighter(e){return new Yg(this.h,this.c,this.l+E6*(e==null?1:e),this.opacity)},darker(e){return new Yg(this.h,this.c,this.l-E6*(e==null?1:e),this.opacity)},rgb(){return MCe(this).rgb()}}))});function _Pt(e){if(e instanceof L2)return new L2(e.h,e.s,e.l,e.opacity);e instanceof xd||(e=D4(e));var t=e.r/255,r=e.g/255,n=e.b/255,i=(LCe*n+kCe*t-CCe*r)/(LCe+kCe-CCe),a=n-i,o=(O4*(r-i)-Fj*a)/k6,s=Math.sqrt(o*o+a*a)/(O4*i*(1-i)),u=s?Math.atan2(o,a)*M6-120:NaN;return new L2(u<0?u+360:u,s,i,e.opacity)}function LA(e,t,r,n){return arguments.length===1?_Pt(e):new L2(e,t,r,n==null?1:n)}function L2(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}var PCe,Dj,Fj,k6,O4,kCe,CCe,LCe,zCe=tc(()=>{x6();A6();Lj();PCe=-.14861,Dj=1.78277,Fj=-.29227,k6=-.90649,O4=1.97294,kCe=O4*k6,CCe=O4*Dj,LCe=Dj*Fj-k6*PCe;Zg(L2,LA,G_(Gy,{brighter(e){return e=e==null?C2:Math.pow(C2,e),new L2(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new L2(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=isNaN(this.h)?0:(this.h+120)*S6,t=+this.l,r=isNaN(this.s)?0:this.s*t*(1-t),n=Math.cos(e),i=Math.sin(e);return new xd(255*(t+r*(PCe*n+Dj*i)),255*(t+r*(Fj*n+k6*i)),255*(t+r*(O4*n)),this.opacity)}}))});var P2=tc(()=>{A6();ECe();zCe()});function Bj(e,t,r,n,i){var a=e*e,o=a*e;return((1-3*e+3*a-o)*t+(4-6*a+3*o)*r+(1+3*e+3*a-3*o)*n+o*i)/6}function C6(e){var t=e.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,t-1):Math.floor(r*t),i=e[n],a=e[n+1],o=n>0?e[n-1]:2*i-a,s=n{});function P6(e){var t=e.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*t),i=e[(n+t-1)%t],a=e[n%t],o=e[(n+1)%t],s=e[(n+2)%t];return Bj((r-n/t)*t,i,a,o,s)}}var Oj=tc(()=>{L6()});var PA,qj=tc(()=>{PA=e=>()=>e});function ICe(e,t){return function(r){return e+r*t}}function xPt(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}function j_(e,t){var r=t-e;return r?ICe(e,r>180||r<-180?r-360*Math.round(r/360):r):PA(isNaN(e)?t:e)}function RCe(e){return(e=+e)==1?ph:function(t,r){return r-t?xPt(t,r,e):PA(isNaN(t)?r:t)}}function ph(e,t){var r=t-e;return r?ICe(e,r):PA(isNaN(e)?t:e)}var z2=tc(()=>{qj()});function DCe(e){return function(t){var r=t.length,n=new Array(r),i=new Array(r),a=new Array(r),o,s;for(o=0;o{P2();L6();Oj();z2();q4=function e(t){var r=RCe(t);function n(i,a){var o=r((i=EA(i)).r,(a=EA(a)).r),s=r(i.g,a.g),u=r(i.b,a.b),l=ph(i.opacity,a.opacity);return function(f){return i.r=o(f),i.g=s(f),i.b=u(f),i.opacity=l(f),i+""}}return n.gamma=e,n}(1);FCe=DCe(C6),BCe=DCe(P6)});function zA(e,t){t||(t=[]);var r=e?Math.min(t.length,e.length):0,n=t.slice(),i;return function(a){for(i=0;i{});function OCe(e,t){return(z6(t)?zA:Uj)(e,t)}function Uj(e,t){var r=t?t.length:0,n=e?Math.min(r,e.length):0,i=new Array(n),a=new Array(r),o;for(o=0;o{N4();I6()});function R6(e,t){var r=new Date;return e=+e,t=+t,function(n){return r.setTime(e*(1-n)+t*n),r}}var Gj=tc(()=>{});function Fv(e,t){return e=+e,t=+t,function(r){return e*(1-r)+t*r}}var U4=tc(()=>{});function D6(e,t){var r={},n={},i;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(i in t)i in e?r[i]=X_(e[i],t[i]):n[i]=t[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var Hj=tc(()=>{N4()});function bPt(e){return function(){return e}}function wPt(e){return function(t){return e(t)+""}}function F6(e,t){var r=jj.lastIndex=Wj.lastIndex=0,n,i,a,o=-1,s=[],u=[];for(e=e+"",t=t+"";(n=jj.exec(e))&&(i=Wj.exec(t));)(a=i.index)>r&&(a=t.slice(r,a),s[o]?s[o]+=a:s[++o]=a),(n=n[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,u.push({i:o,x:Fv(n,i)})),r=Wj.lastIndex;return r{U4();jj=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Wj=new RegExp(jj.source,"g")});function X_(e,t){var r=typeof t,n;return t==null||r==="boolean"?PA(t):(r==="number"?Fv:r==="string"?(n=W_(t))?(t=n,q4):F6:t instanceof W_?q4:t instanceof Date?R6:z6(t)?zA:Array.isArray(t)?Uj:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?D6:Fv)(e,t)}var N4=tc(()=>{P2();Nj();Vj();Gj();U4();Hj();Xj();qj();I6()});function qCe(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}}var NCe=tc(()=>{});function UCe(e,t){var r=j_(+e,+t);return function(n){var i=r(n);return i-360*Math.floor(i/360)}}var VCe=tc(()=>{z2()});function GCe(e,t){return e=+e,t=+t,function(r){return Math.round(e*(1-r)+t*r)}}var HCe=tc(()=>{});function Zj(e,t,r,n,i,a){var o,s,u;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(u=e*r+t*n)&&(r-=e*u,n-=t*u),(s=Math.sqrt(r*r+n*n))&&(r/=s,n/=s,u/=s),e*n{WCe=180/Math.PI,B6={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}});function XCe(e){let t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?B6:Zj(t.a,t.b,t.c,t.d,t.e,t.f)}function ZCe(e){return e==null?B6:(O6||(O6=document.createElementNS("http://www.w3.org/2000/svg","g")),O6.setAttribute("transform",e),(e=O6.transform.baseVal.consolidate())?(e=e.matrix,Zj(e.a,e.b,e.c,e.d,e.e,e.f)):B6)}var O6,YCe=tc(()=>{jCe()});function KCe(e,t,r,n){function i(l){return l.length?l.pop()+" ":""}function a(l,f,c,h,d,p){if(l!==c||f!==h){var _=d.push("translate(",null,t,null,r);p.push({i:_-4,x:Fv(l,c)},{i:_-2,x:Fv(f,h)})}else(c||h)&&d.push("translate("+c+t+h+r)}function o(l,f,c,h){l!==f?(l-f>180?f+=360:f-l>180&&(l+=360),h.push({i:c.push(i(c)+"rotate(",null,n)-2,x:Fv(l,f)})):f&&c.push(i(c)+"rotate("+f+n)}function s(l,f,c,h){l!==f?h.push({i:c.push(i(c)+"skewX(",null,n)-2,x:Fv(l,f)}):f&&c.push(i(c)+"skewX("+f+n)}function u(l,f,c,h,d,p){if(l!==c||f!==h){var _=d.push(i(d)+"scale(",null,",",null,")");p.push({i:_-4,x:Fv(l,c)},{i:_-2,x:Fv(f,h)})}else(c!==1||h!==1)&&d.push(i(d)+"scale("+c+","+h+")")}return function(l,f){var c=[],h=[];return l=e(l),f=e(f),a(l.translateX,l.translateY,f.translateX,f.translateY,c,h),o(l.rotate,f.rotate,c,h),s(l.skewX,f.skewX,c,h),u(l.scaleX,l.scaleY,f.scaleX,f.scaleY,c,h),l=f=null,function(d){for(var p=-1,_=h.length,b;++p<_;)c[(b=h[p]).i]=b.x(d);return c.join("")}}}var JCe,$Ce,QCe=tc(()=>{U4();YCe();JCe=KCe(XCe,"px, ","px)","deg)"),$Ce=KCe(ZCe,", ",")",")")});function eLe(e){return((e=Math.exp(e))+1/e)/2}function APt(e){return((e=Math.exp(e))-1/e)/2}function SPt(e){return((e=Math.exp(2*e))-1)/(e+1)}var TPt,tLe,rLe=tc(()=>{TPt=1e-12;tLe=function e(t,r,n){function i(a,o){var s=a[0],u=a[1],l=a[2],f=o[0],c=o[1],h=o[2],d=f-s,p=c-u,_=d*d+p*p,b,v;if(_{P2();z2();nLe=iLe(j_),aLe=iLe(ph)});function Yj(e,t){var r=ph((e=CA(e)).l,(t=CA(t)).l),n=ph(e.a,t.a),i=ph(e.b,t.b),a=ph(e.opacity,t.opacity);return function(o){return e.l=r(o),e.a=n(o),e.b=i(o),e.opacity=a(o),e+""}}var sLe=tc(()=>{P2();z2()});function lLe(e){return function(t,r){var n=e((t=B4(t)).h,(r=B4(r)).h),i=ph(t.c,r.c),a=ph(t.l,r.l),o=ph(t.opacity,r.opacity);return function(s){return t.h=n(s),t.c=i(s),t.l=a(s),t.opacity=o(s),t+""}}}var uLe,fLe,cLe=tc(()=>{P2();z2();uLe=lLe(j_),fLe=lLe(ph)});function hLe(e){return function t(r){r=+r;function n(i,a){var o=e((i=LA(i)).h,(a=LA(a)).h),s=ph(i.s,a.s),u=ph(i.l,a.l),l=ph(i.opacity,a.opacity);return function(f){return i.h=o(f),i.s=s(f),i.l=u(Math.pow(f,r)),i.opacity=l(f),i+""}}return n.gamma=t,n}(1)}var dLe,pLe,vLe=tc(()=>{P2();z2();dLe=hLe(j_),pLe=hLe(ph)});function Kj(e,t){t===void 0&&(t=e,e=X_);for(var r=0,n=t.length-1,i=t[0],a=new Array(n<0?0:n);r{N4()});function yLe(e,t){for(var r=new Array(t),n=0;n{});var I2={};bee(I2,{interpolate:()=>X_,interpolateArray:()=>OCe,interpolateBasis:()=>C6,interpolateBasisClosed:()=>P6,interpolateCubehelix:()=>dLe,interpolateCubehelixLong:()=>pLe,interpolateDate:()=>R6,interpolateDiscrete:()=>qCe,interpolateHcl:()=>uLe,interpolateHclLong:()=>fLe,interpolateHsl:()=>nLe,interpolateHslLong:()=>aLe,interpolateHue:()=>UCe,interpolateLab:()=>Yj,interpolateNumber:()=>Fv,interpolateNumberArray:()=>zA,interpolateObject:()=>D6,interpolateRgb:()=>q4,interpolateRgbBasis:()=>FCe,interpolateRgbBasisClosed:()=>BCe,interpolateRound:()=>GCe,interpolateString:()=>F6,interpolateTransformCss:()=>JCe,interpolateTransformSvg:()=>$Ce,interpolateZoom:()=>tLe,piecewise:()=>Kj,quantize:()=>yLe});var R2=tc(()=>{N4();Vj();L6();Oj();Gj();NCe();VCe();U4();I6();Hj();HCe();Xj();QCe();rLe();Nj();oLe();sLe();cLe();vLe();mLe();gLe()});var q6=Ae((xmr,_Le)=>{"use strict";var MPt=Mu(),EPt=jl();_Le.exports=function(t,r,n,i,a){var o=r.data.data,s=o.i,u=a||o.color;if(s>=0){r.i=o.i;var l=n.marker;l.pattern?(!l.colors||!l.pattern.shape)&&(l.color=u,r.color=u):(l.color=u,r.color=u),MPt.pointStyle(t,n,i,r)}else EPt.fill(t,u)}});var Jj=Ae((bmr,ALe)=>{"use strict";var xLe=Jl(),bLe=jl(),wLe=ei(),kPt=Tp().resizeText,CPt=q6();function LPt(e){var t=e._fullLayout._sunburstlayer.selectAll(".trace");kPt(e,t,"sunburst"),t.each(function(r){var n=xLe.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){xLe.select(this).call(TLe,o,a,e)})})}function TLe(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=wLe.castOption(r,o,"marker.line.color")||bLe.defaultLine,u=wLe.castOption(r,o,"marker.line.width")||0;e.call(CPt,t,r,n).style("stroke-width",u).call(bLe.stroke,s).style("opacity",a?r.leaf.opacity:null)}ALe.exports={style:LPt,styleOne:TLe}});var Kg=Ae(yf=>{"use strict";var D2=ei(),PPt=jl(),zPt=Am(),SLe=l_();yf.findEntryWithLevel=function(e,t){var r;return t&&e.eachAfter(function(n){if(yf.getPtId(n)===t)return r=n.copy()}),r||e};yf.findEntryWithChild=function(e,t){var r;return e.eachAfter(function(n){for(var i=n.children||[],a=0;a0)};yf.getMaxDepth=function(e){return e.maxdepth>=0?e.maxdepth:1/0};yf.isHeader=function(e,t){return!(yf.isLeaf(e)||e.depth===t._maxDepth-1)};function MLe(e){return e.data.data.pid}yf.getParent=function(e,t){return yf.findEntryWithLevel(e,MLe(t))};yf.listPath=function(e,t){var r=e.parent;if(!r)return[];var n=t?[r.data[t]]:[r];return yf.listPath(r,t).concat(n)};yf.getPath=function(e){return yf.listPath(e,"label").join("/")+"/"};yf.formatValue=SLe.formatPieValue;yf.formatPercent=function(e,t){var r=D2.formatPercent(e,0);return r==="0%"&&(r=SLe.formatPiePercent(e,t)),r}});var H4=Ae((Tmr,CLe)=>{"use strict";var IA=Jl(),ELe=$l(),DPt=iv().appendArrayPointValue,V4=Xc(),kLe=ei(),FPt=g3(),ad=Kg(),BPt=l_(),OPt=BPt.formatPieValue;CLe.exports=function(t,r,n,i,a){var o=i[0],s=o.trace,u=o.hierarchy,l=s.type==="sunburst",f=s.type==="treemap"||s.type==="icicle";"_hasHoverLabel"in s||(s._hasHoverLabel=!1),"_hasHoverEvent"in s||(s._hasHoverEvent=!1);var c=function(p){var _=n._fullLayout;if(!(n._dragging||_.hovermode===!1)){var b=n._fullData[s.index],v=p.data.data,k=v.i,E=ad.isHierarchyRoot(p),A=ad.getParent(u,p),L=ad.getValue(p),x=function(ze){return kLe.castOption(b,k,ze)},C=x("hovertemplate"),M=V4.castHoverinfo(b,_,k),m=_.separators,P;if(C||M&&M!=="none"&&M!=="skip"){var T,B;l&&(T=o.cx+p.pxmid[0]*(1-p.rInscribed),B=o.cy+p.pxmid[1]*(1-p.rInscribed)),f&&(T=p._hoverX,B=p._hoverY);var F={},U=[],G=[],j=function(ze){return U.indexOf(ze)!==-1};M&&(U=M==="all"?b._module.attributes.hoverinfo.flags:M.split("+")),F.label=v.label,j("label")&&F.label&&G.push(F.label),v.hasOwnProperty("v")&&(F.value=v.v,F.valueLabel=OPt(F.value,m),j("value")&&G.push(F.valueLabel)),F.currentPath=p.currentPath=ad.getPath(p.data),j("current path")&&!E&&G.push(F.currentPath);var H,N=[],W=function(){N.indexOf(H)===-1&&(G.push(H),N.push(H))};F.percentParent=p.percentParent=L/ad.getValue(A),F.parent=p.parentString=ad.getPtLabel(A),j("percent parent")&&(H=ad.formatPercent(F.percentParent,m)+" of "+F.parent,W()),F.percentEntry=p.percentEntry=L/ad.getValue(r),F.entry=p.entry=ad.getPtLabel(r),j("percent entry")&&!E&&!p.onPathbar&&(H=ad.formatPercent(F.percentEntry,m)+" of "+F.entry,W()),F.percentRoot=p.percentRoot=L/ad.getValue(u),F.root=p.root=ad.getPtLabel(u),j("percent root")&&!E&&(H=ad.formatPercent(F.percentRoot,m)+" of "+F.root,W()),F.text=x("hovertext")||x("text"),j("text")&&(H=F.text,kLe.isValidTextValue(H)&&G.push(H)),P=[G4(p,b,a.eventDataKeys)];var re={trace:b,y:B,_x0:p._x0,_x1:p._x1,_y0:p._y0,_y1:p._y1,text:G.join("
"),name:C||j("name")?b.name:void 0,color:x("hoverlabel.bgcolor")||v.color,borderColor:x("hoverlabel.bordercolor"),fontFamily:x("hoverlabel.font.family"),fontSize:x("hoverlabel.font.size"),fontColor:x("hoverlabel.font.color"),fontWeight:x("hoverlabel.font.weight"),fontStyle:x("hoverlabel.font.style"),fontVariant:x("hoverlabel.font.variant"),nameLength:x("hoverlabel.namelength"),textAlign:x("hoverlabel.align"),hovertemplate:C,hovertemplateLabels:F,eventData:P};l&&(re.x0=T-p.rInscribed*p.rpx1,re.x1=T+p.rInscribed*p.rpx1,re.idealAlign=p.pxmid[0]<0?"left":"right"),f&&(re.x=T,re.idealAlign=T<0?"left":"right");var ae=[];V4.loneHover(re,{container:_._hoverlayer.node(),outerContainer:_._paper.node(),gd:n,inOut_bbox:ae}),P[0].bbox=ae[0],s._hasHoverLabel=!0}if(f){var be=t.select("path.surface");a.styleOne(be,p,b,n,{hovered:!0})}s._hasHoverEvent=!0,n.emit("plotly_hover",{points:P||[G4(p,b,a.eventDataKeys)],event:IA.event})}},h=function(p){var _=n._fullLayout,b=n._fullData[s.index],v=IA.select(this).datum();if(s._hasHoverEvent&&(p.originalEvent=IA.event,n.emit("plotly_unhover",{points:[G4(v,b,a.eventDataKeys)],event:IA.event}),s._hasHoverEvent=!1),s._hasHoverLabel&&(V4.loneUnhover(_._hoverlayer.node()),s._hasHoverLabel=!1),f){var k=t.select("path.surface");a.styleOne(k,v,b,n,{hovered:!1})}},d=function(p){var _=n._fullLayout,b=n._fullData[s.index],v=l&&(ad.isHierarchyRoot(p)||ad.isLeaf(p)),k=ad.getPtId(p),E=ad.isEntry(p)?ad.findEntryWithChild(u,k):ad.findEntryWithLevel(u,k),A=ad.getPtId(E),L={points:[G4(p,b,a.eventDataKeys)],event:IA.event};v||(L.nextLevel=A);var x=FPt.triggerHandler(n,"plotly_"+s.type+"click",L);if(x!==!1&&_.hovermode&&(n._hoverdata=[G4(p,b,a.eventDataKeys)],V4.click(n,IA.event)),!v&&x!==!1&&!n._dragging&&!n._transitioning){ELe.call("_storeDirectGUIEdit",b,_._tracePreGUI[b.uid],{level:b.level});var C={data:[{level:A}],traces:[s.index]},M={frame:{redraw:!1,duration:a.transitionTime},transition:{duration:a.transitionTime,easing:a.transitionEasing},mode:"immediate",fromcurrent:!0};V4.loneUnhover(_._hoverlayer.node()),ELe.call("animate",n,C,M)}};t.on("mouseover",c),t.on("mouseout",h),t.on("click",d)};function G4(e,t,r){for(var n=e.data.data,i={curveNumber:t.index,pointNumber:n.i,data:t._input,fullData:t},a=0;a{"use strict";var W4=Jl(),qPt=P4(),Zm=(R2(),ob(I2)).interpolate,LLe=Mu(),Mp=ei(),NPt=Xf(),RLe=Tp(),PLe=RLe.recordMinTextSize,UPt=RLe.clearMinTextSize,DLe=g6(),VPt=l_().getRotationAngle,GPt=DLe.computeTransform,HPt=DLe.transformInsideText,WPt=Jj().styleOne,jPt=N0().resizeText,XPt=H4(),$j=Ej(),qf=Kg();N6.plot=function(e,t,r,n){var i=e._fullLayout,a=i._sunburstlayer,o,s,u=!r,l=!i.uniformtext.mode&&qf.hasTransition(r);if(UPt("sunburst",i),o=a.selectAll("g.trace.sunburst").data(t,function(c){return c[0].trace.uid}),o.enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),o.order(),l){n&&(s=n());var f=W4.transition().duration(r.duration).ease(r.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});f.each(function(){a.selectAll("g.trace").each(function(c){zLe(e,c,this,r)})})}else o.each(function(c){zLe(e,c,this,r)}),i.uniformtext.mode&&jPt(e,i._sunburstlayer.selectAll(".trace"),"sunburst");u&&o.exit().remove()};function zLe(e,t,r,n){var i=e._context.staticPlot,a=e._fullLayout,o=!a.uniformtext.mode&&qf.hasTransition(n),s=W4.select(r),u=s.selectAll("g.slice"),l=t[0],f=l.trace,c=l.hierarchy,h=qf.findEntryWithLevel(c,f.level),d=qf.getMaxDepth(f),p=a._size,_=f.domain,b=p.w*(_.x[1]-_.x[0]),v=p.h*(_.y[1]-_.y[0]),k=.5*Math.min(b,v),E=l.cx=p.l+p.w*(_.x[1]+_.x[0])/2,A=l.cy=p.t+p.h*(1-_.y[0])-v/2;if(!h)return u.remove();var L=null,x={};o&&u.each(function(de){x[qf.getPtId(de)]={rpx0:de.rpx0,rpx1:de.rpx1,x0:de.x0,x1:de.x1,transform:de.transform},!L&&qf.isEntry(de)&&(L=de)});var C=ZPt(h).descendants(),M=h.height+1,m=0,P=d;l.hasMultipleRoots&&qf.isHierarchyRoot(h)&&(C=C.slice(1),M-=1,m=1,P+=1),C=C.filter(function(de){return de.y1<=P});var T=VPt(f.rotation);T&&C.forEach(function(de){de.x0+=T,de.x1+=T});var B=Math.min(M,d),F=function(de){return(de-m)/B*k},U=function(de,te){return[de*Math.cos(te),-de*Math.sin(te)]},G=function(de){return Mp.pathAnnulus(de.rpx0,de.rpx1,de.x0,de.x1,E,A)},j=function(de){return E+ILe(de)[0]*(de.transform.rCenter||0)+(de.transform.x||0)},H=function(de){return A+ILe(de)[1]*(de.transform.rCenter||0)+(de.transform.y||0)};u=u.data(C,qf.getPtId),u.enter().append("g").classed("slice",!0),o?u.exit().transition().each(function(){var de=W4.select(this),te=de.select("path.surface");te.transition().attrTween("d",function(Ee){var Me=ae(Ee);return function(Ue){return G(Me(Ue))}});var ke=de.select("g.slicetext");ke.attr("opacity",0)}).remove():u.exit().remove(),u.order();var N=null;if(o&&L){var W=qf.getPtId(L);u.each(function(de){N===null&&qf.getPtId(de)===W&&(N=de.x1)})}var re=u;o&&(re=re.transition().each("end",function(){var de=W4.select(this);qf.setSliceCursor(de,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})})),re.each(function(de){var te=W4.select(this),ke=Mp.ensureSingle(te,"path","surface",function(qe){qe.style("pointer-events",i?"none":"all")});de.rpx0=F(de.y0),de.rpx1=F(de.y1),de.xmid=(de.x0+de.x1)/2,de.pxmid=U(de.rpx1,de.xmid),de.midangle=-(de.xmid-Math.PI/2),de.startangle=-(de.x0-Math.PI/2),de.stopangle=-(de.x1-Math.PI/2),de.halfangle=.5*Math.min(Mp.angleDelta(de.x0,de.x1)||Math.PI,Math.PI),de.ring=1-de.rpx0/de.rpx1,de.rInscribed=YPt(de,f),o?ke.transition().attrTween("d",function(qe){var ce=be(qe);return function(Je){return G(ce(Je))}}):ke.attr("d",G),te.call(XPt,h,e,t,{eventDataKeys:$j.eventDataKeys,transitionTime:$j.CLICK_TRANSITION_TIME,transitionEasing:$j.CLICK_TRANSITION_EASING}).call(qf.setSliceCursor,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:e._transitioning}),ke.call(WPt,de,f,e);var Ee=Mp.ensureSingle(te,"g","slicetext"),Me=Mp.ensureSingle(Ee,"text","",function(qe){qe.attr("data-notex",1)}),Ue=Mp.ensureUniformFontSize(e,qf.determineTextFont(f,de,a.font));Me.text(N6.formatSliceLabel(de,h,f,t,a)).classed("slicetext",!0).attr("text-anchor","middle").call(LLe.font,Ue).call(NPt.convertToTspans,e);var De=LLe.bBox(Me.node());de.transform=HPt(De,de,l),de.transform.targetX=j(de),de.transform.targetY=H(de);var ye=function(qe,ce){var Je=qe.transform;return GPt(Je,ce),Je.fontSize=Ue.size,PLe(f.type,Je,a),Mp.getTextTransform(Je)};o?Me.transition().attrTween("transform",function(qe){var ce=ze(qe);return function(Je){return ye(ce(Je),De)}}):Me.attr("transform",ye(de,De))});function ae(de){var te=qf.getPtId(de),ke=x[te],Ee=x[qf.getPtId(h)],Me;if(Ee){var Ue=(de.x1>Ee.x1?2*Math.PI:0)+T;Me=de.rpx1N?2*Math.PI:0)+T;ke={x0:Me,x1:Me}}else ke={rpx0:k,rpx1:k},Mp.extendFlat(ke,Ce(de));else ke={rpx0:0,rpx1:0};else ke={x0:T,x1:T};return Zm(ke,Ee)}function ze(de){var te=x[qf.getPtId(de)],ke,Ee=de.transform;if(te)ke=te;else if(ke={rpx1:de.rpx1,transform:{textPosAngle:Ee.textPosAngle,scale:0,rotate:Ee.rotate,rCenter:Ee.rCenter,x:Ee.x,y:Ee.y}},L)if(de.parent)if(N){var Me=de.x1>N?2*Math.PI:0;ke.x0=ke.x1=Me}else Mp.extendFlat(ke,Ce(de));else ke.x0=ke.x1=T;else ke.x0=ke.x1=T;var Ue=Zm(ke.transform.textPosAngle,de.transform.textPosAngle),De=Zm(ke.rpx1,de.rpx1),ye=Zm(ke.x0,de.x0),qe=Zm(ke.x1,de.x1),ce=Zm(ke.transform.scale,Ee.scale),Je=Zm(ke.transform.rotate,Ee.rotate),nt=Ee.rCenter===0?3:ke.transform.rCenter===0?1/3:1,gt=Zm(ke.transform.rCenter,Ee.rCenter),Nt=function(at){return gt(Math.pow(at,nt))};return function(at){var Ke=De(at),Ct=ye(at),wt=qe(at),St=Nt(at),Dt=U(Ke,(Ct+wt)/2),Zt=Ue(at),Et={pxmid:Dt,rpx1:Ke,transform:{textPosAngle:Zt,rCenter:St,x:Ee.x,y:Ee.y}};return PLe(f.type,Ee,a),{transform:{targetX:j(Et),targetY:H(Et),scale:ce(at),rotate:Je(at),rCenter:St}}}}function Ce(de){var te=de.parent,ke=x[qf.getPtId(te)],Ee={};if(ke){var Me=te.children,Ue=Me.indexOf(de),De=Me.length,ye=Zm(ke.x0,ke.x1);Ee.x0=ye(Ue/De),Ee.x1=ye(Ue/De)}else Ee.x0=Ee.x1=0;return Ee}}function ZPt(e){return qPt.partition().size([2*Math.PI,e.height+1])(e)}N6.formatSliceLabel=function(e,t,r,n,i){var a=r.texttemplate,o=r.textinfo;if(!a&&(!o||o==="none"))return"";var s=i.separators,u=n[0],l=e.data.data,f=u.hierarchy,c=qf.isHierarchyRoot(e),h=qf.getParent(f,e),d=qf.getValue(e);if(!a){var p=o.split("+"),_=function(m){return p.indexOf(m)!==-1},b=[],v;if(_("label")&&l.label&&b.push(l.label),l.hasOwnProperty("v")&&_("value")&&b.push(qf.formatValue(l.v,s)),!c){_("current path")&&b.push(qf.getPath(e.data));var k=0;_("percent parent")&&k++,_("percent entry")&&k++,_("percent root")&&k++;var E=k>1;if(k){var A,L=function(m){v=qf.formatPercent(A,s),E&&(v+=" of "+m),b.push(v)};_("percent parent")&&!c&&(A=d/qf.getValue(h),L("parent")),_("percent entry")&&(A=d/qf.getValue(t),L("entry")),_("percent root")&&(A=d/qf.getValue(f),L("root"))}}return _("text")&&(v=Mp.castOption(r,l.i,"text"),Mp.isValidTextValue(v)&&b.push(v)),b.join("
")}var x=Mp.castOption(r,l.i,"texttemplate");if(!x)return"";var C={};l.label&&(C.label=l.label),l.hasOwnProperty("v")&&(C.value=l.v,C.valueLabel=qf.formatValue(l.v,s)),C.currentPath=qf.getPath(e.data),c||(C.percentParent=d/qf.getValue(h),C.percentParentLabel=qf.formatPercent(C.percentParent,s),C.parent=qf.getPtLabel(h)),C.percentEntry=d/qf.getValue(t),C.percentEntryLabel=qf.formatPercent(C.percentEntry,s),C.entry=qf.getPtLabel(t),C.percentRoot=d/qf.getValue(f),C.percentRootLabel=qf.formatPercent(C.percentRoot,s),C.root=qf.getPtLabel(f),l.hasOwnProperty("color")&&(C.color=l.color);var M=Mp.castOption(r,l.i,"text");return(Mp.isValidTextValue(M)||M==="")&&(C.text=M),C.customdata=Mp.castOption(r,l.i,"customdata"),Mp.texttemplateString({data:[C,r._meta],fallback:r.texttemplatefallback,labels:C,locale:i._d3locale,template:x})};function YPt(e){return e.rpx0===0&&Mp.isFullCircle([e.x0,e.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(e.halfangle)),e.ring/2))}function ILe(e){return KPt(e.rpx1,e.transform.textPosAngle)}function KPt(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}});var BLe=Ae((Smr,FLe)=>{"use strict";FLe.exports={moduleType:"trace",name:"sunburst",basePlotModule:Kke(),categories:[],animatable:!0,attributes:L4(),layoutAttributes:kj(),supplyDefaults:aCe(),supplyLayoutDefaults:sCe(),calc:I4().calc,crossTraceCalc:I4().crossTraceCalc,plot:U6().plot,style:Jj().style,colorbar:ep(),meta:{}}});var qLe=Ae((Mmr,OLe)=>{"use strict";OLe.exports=BLe()});var ULe=Ae(RA=>{"use strict";var NLe=Cc();RA.name="treemap";RA.plot=function(e,t,r,n){NLe.plotBasePlot(RA.name,e,t,r,n)};RA.clean=function(e,t,r,n){NLe.cleanBasePlot(RA.name,e,t,r,n)}});var F2=Ae((kmr,VLe)=>{"use strict";VLe.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}});var V6=Ae((Cmr,WLe)=>{"use strict";var{hovertemplateAttrs:JPt,texttemplateAttrs:$Pt,templatefallbackAttrs:GLe}=Ff(),QPt=nc(),ezt=zc().attributes,B2=S2(),Q0=L4(),HLe=F2(),Qj=Su().extendFlat,tzt=Id().pattern;WLe.exports={labels:Q0.labels,parents:Q0.parents,values:Q0.values,branchvalues:Q0.branchvalues,count:Q0.count,level:Q0.level,maxdepth:Q0.maxdepth,tiling:{packing:{valType:"enumerated",values:["squarify","binary","dice","slice","slice-dice","dice-slice"],dflt:"squarify",editType:"plot"},squarifyratio:{valType:"number",min:1,dflt:1,editType:"plot"},flip:{valType:"flaglist",flags:["x","y"],dflt:"",editType:"plot"},pad:{valType:"number",min:0,dflt:3,editType:"plot"},editType:"calc"},marker:Qj({pad:{t:{valType:"number",min:0,editType:"plot"},l:{valType:"number",min:0,editType:"plot"},r:{valType:"number",min:0,editType:"plot"},b:{valType:"number",min:0,editType:"plot"},editType:"calc"},colors:Q0.marker.colors,pattern:tzt,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:Q0.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},QPt("marker",{colorAttr:"colors",anim:!1})),pathbar:{visible:{valType:"boolean",dflt:!0,editType:"plot"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},edgeshape:{valType:"enumerated",values:[">","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:Qj({},B2.textfont,{}),editType:"calc"},text:B2.text,textinfo:Q0.textinfo,texttemplate:$Pt({editType:"plot"},{keys:HLe.eventDataKeys.concat(["label","value"])}),texttemplatefallback:GLe({editType:"plot"}),hovertext:B2.hovertext,hoverinfo:Q0.hoverinfo,hovertemplate:JPt({},{keys:HLe.eventDataKeys}),hovertemplatefallback:GLe(),textfont:B2.textfont,insidetextfont:B2.insidetextfont,outsidetextfont:Qj({},B2.outsidetextfont,{}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"top left",editType:"plot"},sort:B2.sort,root:Q0.root,domain:ezt({name:"treemap",trace:!0,editType:"calc"})}});var eX=Ae((Lmr,jLe)=>{"use strict";jLe.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var KLe=Ae((Pmr,YLe)=>{"use strict";var XLe=ei(),rzt=V6(),izt=jl(),nzt=zc().defaults,azt=r0().handleText,ozt=e2().TEXTPAD,szt=M2().handleMarkerDefaults,ZLe=_c(),lzt=ZLe.hasColorscale,uzt=ZLe.handleDefaults;YLe.exports=function(t,r,n,i){function a(b,v){return XLe.coerce(t,r,rzt,b,v)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var u=a("values");u&&u.length?a("branchvalues"):a("count"),a("level"),a("maxdepth");var l=a("tiling.packing");l==="squarify"&&a("tiling.squarifyratio"),a("tiling.flip"),a("tiling.pad");var f=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",XLe.isArrayOrTypedArray(f)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var c=a("pathbar.visible"),h="auto";azt(t,r,i,a,h,{hasPathbar:c,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition");var d=r.textposition.indexOf("bottom")!==-1;szt(t,r,i,a);var p=r._hasColorscale=lzt(t,"marker","colors")||(t.marker||{}).coloraxis;p?uzt(t,r,i,a,{prefix:"marker.",cLetter:"c"}):a("marker.depthfade",!(r.marker.colors||[]).length);var _=r.textfont.size*2;a("marker.pad.t",d?_/4:_),a("marker.pad.l",_/4),a("marker.pad.r",_/4),a("marker.pad.b",d?_:_/4),a("marker.cornerradius"),r._hovered={marker:{line:{width:2,color:izt.contrast(i.paper_bgcolor)}}},c&&(a("pathbar.thickness",r.pathbar.textfont.size+2*ozt),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),nzt(r,i,a),r._length=null}});var $Le=Ae((zmr,JLe)=>{"use strict";var fzt=ei(),czt=eX();JLe.exports=function(t,r){function n(i,a){return fzt.coerce(t,r,czt,i,a)}n("treemapcolorway",r.colorway),n("extendtreemapcolors")}});var rX=Ae(tX=>{"use strict";var QLe=I4();tX.calc=function(e,t){return QLe.calc(e,t)};tX.crossTraceCalc=function(e){return QLe._runCrossTraceCalc("treemap",e)}});var iX=Ae((Rmr,ePe)=>{"use strict";ePe.exports=function e(t,r,n){var i;n.swapXY&&(i=t.x0,t.x0=t.y0,t.y0=i,i=t.x1,t.x1=t.y1,t.y1=i),n.flipX&&(i=t.x0,t.x0=r[0]-t.x1,t.x1=r[0]-i),n.flipY&&(i=t.y0,t.y0=r[1]-t.y1,t.y1=r[1]-i);var a=t.children;if(a)for(var o=0;o{"use strict";var DA=P4(),hzt=iX();tPe.exports=function(t,r,n){var i=n.flipX,a=n.flipY,o=n.packing==="dice-slice",s=n.pad[a?"bottom":"top"],u=n.pad[i?"right":"left"],l=n.pad[i?"left":"right"],f=n.pad[a?"top":"bottom"],c;o&&(c=u,u=s,s=c,c=l,l=f,f=c);var h=DA.treemap().tile(dzt(n.packing,n.squarifyratio)).paddingInner(n.pad.inner).paddingLeft(u).paddingRight(l).paddingTop(s).paddingBottom(f).size(o?[r[1],r[0]]:r)(t);return(o||i||a)&&hzt(h,r,{swapXY:o,flipX:i,flipY:a}),h};function dzt(e,t){switch(e){case"squarify":return DA.treemapSquarify.ratio(t);case"binary":return DA.treemapBinary;case"dice":return DA.treemapDice;case"slice":return DA.treemapSlice;default:return DA.treemapSliceDice}}});var G6=Ae((Fmr,aPe)=>{"use strict";var rPe=Jl(),FA=jl(),iPe=ei(),aX=Kg(),pzt=Tp().resizeText,vzt=q6();function mzt(e){var t=e._fullLayout._treemaplayer.selectAll(".trace");pzt(e,t,"treemap"),t.each(function(r){var n=rPe.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){rPe.select(this).call(nPe,o,a,e,{hovered:!1})})})}function nPe(e,t,r,n,i){var a=(i||{}).hovered,o=t.data.data,s=o.i,u,l,f=o.color,c=aX.isHierarchyRoot(t),h=1;if(a)u=r._hovered.marker.line.color,l=r._hovered.marker.line.width;else if(c&&f===r.root.color)h=100,u="rgba(0,0,0,0)",l=0;else if(u=iPe.castOption(r,s,"marker.line.color")||FA.defaultLine,l=iPe.castOption(r,s,"marker.line.width")||0,!r._hasColorscale&&!t.onPathbar){var d=r.marker.depthfade;if(d){var p=FA.combine(FA.addOpacity(r._backgroundColor,.75),f),_;if(d===!0){var b=aX.getMaxDepth(r);isFinite(b)?aX.isLeaf(t)?_=0:_=r._maxVisibleLayers-(t.data.depth-r._entryDepth):_=t.data.height+1}else _=t.data.depth-r._entryDepth,r._atRootLevel||_++;if(_>0)for(var v=0;v<_;v++){var k=.5*v/_;f=FA.combine(FA.addOpacity(p,k),f)}}}e.call(vzt,t,r,n,f).style("stroke-width",l).call(FA.stroke,u).style("opacity",h)}aPe.exports={style:mzt,styleOne:nPe}});var fPe=Ae((Bmr,uPe)=>{"use strict";var oPe=Jl(),H6=ei(),sPe=Mu(),yzt=Xf(),gzt=nX(),lPe=G6().styleOne,oX=F2(),BA=Kg(),_zt=H4(),sX=!0;uPe.exports=function(t,r,n,i,a){var o=a.barDifY,s=a.width,u=a.height,l=a.viewX,f=a.viewY,c=a.pathSlice,h=a.toMoveInsideSlice,d=a.strTransform,p=a.hasTransition,_=a.handleSlicesExit,b=a.makeUpdateSliceInterpolator,v=a.makeUpdateTextInterpolator,k={},E=t._context.staticPlot,A=t._fullLayout,L=r[0],x=L.trace,C=L.hierarchy,M=s/x._entryDepth,m=BA.listPath(n.data,"id"),P=gzt(C.copy(),[s,u],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();P=P.filter(function(B){var F=m.indexOf(B.data.id);return F===-1?!1:(B.x0=M*F,B.x1=M*(F+1),B.y0=o,B.y1=o+u,B.onPathbar=!0,!0)}),P.reverse(),i=i.data(P,BA.getPtId),i.enter().append("g").classed("pathbar",!0),_(i,sX,k,[s,u],c),i.order();var T=i;p&&(T=T.transition().each("end",function(){var B=oPe.select(this);BA.setSliceCursor(B,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})})),T.each(function(B){B._x0=l(B.x0),B._x1=l(B.x1),B._y0=f(B.y0),B._y1=f(B.y1),B._hoverX=l(B.x1-Math.min(s,u)/2),B._hoverY=f(B.y1-u/2);var F=oPe.select(this),U=H6.ensureSingle(F,"path","surface",function(N){N.style("pointer-events",E?"none":"all")});p?U.transition().attrTween("d",function(N){var W=b(N,sX,k,[s,u]);return function(re){return c(W(re))}}):U.attr("d",c),F.call(_zt,n,t,r,{styleOne:lPe,eventDataKeys:oX.eventDataKeys,transitionTime:oX.CLICK_TRANSITION_TIME,transitionEasing:oX.CLICK_TRANSITION_EASING}).call(BA.setSliceCursor,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:t._transitioning}),U.call(lPe,B,x,t,{hovered:!1}),B._text=(BA.getPtLabel(B)||"").split("
").join(" ")||"";var G=H6.ensureSingle(F,"g","slicetext"),j=H6.ensureSingle(G,"text","",function(N){N.attr("data-notex",1)}),H=H6.ensureUniformFontSize(t,BA.determineTextFont(x,B,A.font,{onPathbar:!0}));j.text(B._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(sPe.font,H).call(yzt.convertToTspans,t),B.textBB=sPe.bBox(j.node()),B.transform=h(B,{fontSize:H.size,onPathbar:!0}),B.transform.fontSize=H.size,p?j.transition().attrTween("transform",function(N){var W=v(N,sX,k,[s,u]);return function(re){return d(W(re))}}):j.attr("transform",d(B))})}});var pPe=Ae((Omr,dPe)=>{"use strict";var cPe=Jl(),lX=(R2(),ob(I2)).interpolate,Z_=Kg(),j4=ei(),hPe=e2().TEXTPAD,xzt=n2(),bzt=xzt.toMoveInsideBar,wzt=Tp(),uX=wzt.recordMinTextSize,Tzt=F2(),Azt=fPe();function O2(e){return Z_.isHierarchyRoot(e)?"":Z_.getPtId(e)}dPe.exports=function(t,r,n,i,a){var o=t._fullLayout,s=r[0],u=s.trace,l=u.type,f=l==="icicle",c=s.hierarchy,h=Z_.findEntryWithLevel(c,u.level),d=cPe.select(n),p=d.selectAll("g.pathbar"),_=d.selectAll("g.slice");if(!h){p.remove(),_.remove();return}var b=Z_.isHierarchyRoot(h),v=!o.uniformtext.mode&&Z_.hasTransition(i),k=Z_.getMaxDepth(u),E=function(Te){return Te.data.depth-h.data.depth-1?C+P:-(m+P):0,B={x0:M,x1:M,y0:T,y1:T+m},F=function(Te,ot,Tt){var vt=u.tiling.pad,Ye=function(It){return It-vt<=ot.x0},He=function(It){return It+vt>=ot.x1},it=function(It){return It-vt<=ot.y0},et=function(It){return It+vt>=ot.y1};return Te.x0===ot.x0&&Te.x1===ot.x1&&Te.y0===ot.y0&&Te.y1===ot.y1?{x0:Te.x0,x1:Te.x1,y0:Te.y0,y1:Te.y1}:{x0:Ye(Te.x0-vt)?0:He(Te.x0-vt)?Tt[0]:Te.x0,x1:Ye(Te.x1+vt)?0:He(Te.x1+vt)?Tt[0]:Te.x1,y0:it(Te.y0-vt)?0:et(Te.y0-vt)?Tt[1]:Te.y0,y1:it(Te.y1+vt)?0:et(Te.y1+vt)?Tt[1]:Te.y1}},U=null,G={},j={},H=null,N=function(Te,ot){return ot?G[O2(Te)]:j[O2(Te)]},W=function(Te,ot,Tt,vt){if(ot)return G[O2(c)]||B;var Ye=j[u.level]||Tt;return E(Te)?F(Te,Ye,vt):{}};s.hasMultipleRoots&&b&&k++,u._maxDepth=k,u._backgroundColor=o.paper_bgcolor,u._entryDepth=h.data.depth,u._atRootLevel=b;var re=-x/2+A.l+A.w*(L.x[1]+L.x[0])/2,ae=-C/2+A.t+A.h*(1-(L.y[1]+L.y[0])/2),be=function(Te){return re+Te},ze=function(Te){return ae+Te},Ce=ze(0),de=be(0),te=function(Te){return de+Te},ke=function(Te){return Ce+Te};function Ee(Te,ot){return Te+","+ot}var Me=te(0),Ue=function(Te){Te.x=Math.max(Me,Te.x)},De=u.pathbar.edgeshape,ye=function(Te){var ot=te(Math.max(Math.min(Te.x0,Te.x0),0)),Tt=te(Math.min(Math.max(Te.x1,Te.x1),M)),vt=ke(Te.y0),Ye=ke(Te.y1),He=m/2,it={},et={};it.x=ot,et.x=Tt,it.y=et.y=(vt+Ye)/2;var It={x:ot,y:vt},Yt={x:Tt,y:vt},cr={x:Tt,y:Ye},_r={x:ot,y:Ye};return De===">"?(It.x-=He,Yt.x-=He,cr.x-=He,_r.x-=He):De==="/"?(cr.x-=He,_r.x-=He,it.x-=He/2,et.x-=He/2):De==="\\"?(It.x-=He,Yt.x-=He,it.x-=He/2,et.x-=He/2):De==="<"&&(it.x-=He,et.x-=He),Ue(It),Ue(_r),Ue(it),Ue(Yt),Ue(cr),Ue(et),"M"+Ee(It.x,It.y)+"L"+Ee(Yt.x,Yt.y)+"L"+Ee(et.x,et.y)+"L"+Ee(cr.x,cr.y)+"L"+Ee(_r.x,_r.y)+"L"+Ee(it.x,it.y)+"Z"},qe=u[f?"tiling":"marker"].pad,ce=function(Te){return u.textposition.indexOf(Te)!==-1},Je=ce("top"),nt=ce("left"),gt=ce("right"),Nt=ce("bottom"),at=function(Te){var ot=be(Te.x0),Tt=be(Te.x1),vt=ze(Te.y0),Ye=ze(Te.y1),He=Tt-ot,it=Ye-vt;if(!He||!it)return"";var et=u.marker.cornerradius||0,It=Math.min(et,He/2,it/2);It&&Te.data&&Te.data.data&&Te.data.data.label&&(Je&&(It=Math.min(It,qe.t)),nt&&(It=Math.min(It,qe.l)),gt&&(It=Math.min(It,qe.r)),Nt&&(It=Math.min(It,qe.b)));var Yt=function(cr,_r){return It?"a"+Ee(It,It)+" 0 0 1 "+Ee(cr,_r):""};return"M"+Ee(ot,vt+It)+Yt(It,-It)+"L"+Ee(Tt-It,vt)+Yt(It,It)+"L"+Ee(Tt,Ye-It)+Yt(-It,It)+"L"+Ee(ot+It,Ye)+Yt(-It,-It)+"Z"},Ke=function(Te,ot){var Tt=Te.x0,vt=Te.x1,Ye=Te.y0,He=Te.y1,it=Te.textBB,et=Je||ot.isHeader&&!Nt,It=et?"start":Nt?"end":"middle",Yt=ce("right"),cr=ce("left")||ot.onPathbar,_r=cr?-1:Yt?1:0;if(ot.isHeader){if(Tt+=(f?qe:qe.l)-hPe,vt-=(f?qe:qe.r)-hPe,Tt>=vt){var yr=(Tt+vt)/2;Tt=yr,vt=yr}var Ut;Nt?(Ut=He-(f?qe:qe.b),Ye{"use strict";var Szt=Jl(),Mzt=Kg(),Ezt=Tp(),kzt=Ezt.clearMinTextSize,Czt=N0().resizeText,vPe=pPe();mPe.exports=function(t,r,n,i,a){var o=a.type,s=a.drawDescendants,u=t._fullLayout,l=u["_"+o+"layer"],f,c,h=!n;if(kzt(o,u),f=l.selectAll("g.trace."+o).data(r,function(p){return p[0].trace.uid}),f.enter().append("g").classed("trace",!0).classed(o,!0),f.order(),!u.uniformtext.mode&&Mzt.hasTransition(n)){i&&(c=i());var d=Szt.transition().duration(n.duration).ease(n.easing).each("end",function(){c&&c()}).each("interrupt",function(){c&&c()});d.each(function(){l.selectAll("g.trace").each(function(p){vPe(t,p,this,n,s)})})}else f.each(function(p){vPe(t,p,this,n,s)}),u.uniformtext.mode&&Czt(t,l.selectAll(".trace"),o);h&&f.exit().remove()}});var bPe=Ae((Nmr,xPe)=>{"use strict";var yPe=Jl(),W6=ei(),gPe=Mu(),Lzt=Xf(),Pzt=nX(),_Pe=G6().styleOne,cX=F2(),Y_=Kg(),zzt=H4(),Izt=U6().formatSliceLabel,hX=!1;xPe.exports=function(t,r,n,i,a){var o=a.width,s=a.height,u=a.viewX,l=a.viewY,f=a.pathSlice,c=a.toMoveInsideSlice,h=a.strTransform,d=a.hasTransition,p=a.handleSlicesExit,_=a.makeUpdateSliceInterpolator,b=a.makeUpdateTextInterpolator,v=a.prevEntry,k={},E=t._context.staticPlot,A=t._fullLayout,L=r[0],x=L.trace,C=x.textposition.indexOf("left")!==-1,M=x.textposition.indexOf("right")!==-1,m=x.textposition.indexOf("bottom")!==-1,P=!m&&!x.marker.pad.t||m&&!x.marker.pad.b,T=Pzt(n,[o,s],{packing:x.tiling.packing,squarifyratio:x.tiling.squarifyratio,flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1,pad:{inner:x.tiling.pad,top:x.marker.pad.t,left:x.marker.pad.l,right:x.marker.pad.r,bottom:x.marker.pad.b}}),B=T.descendants(),F=1/0,U=-1/0;B.forEach(function(W){var re=W.depth;re>=x._maxDepth?(W.x0=W.x1=(W.x0+W.x1)/2,W.y0=W.y1=(W.y0+W.y1)/2):(F=Math.min(F,re),U=Math.max(U,re))}),i=i.data(B,Y_.getPtId),x._maxVisibleLayers=isFinite(U)?U-F+1:0,i.enter().append("g").classed("slice",!0),p(i,hX,k,[o,s],f),i.order();var G=null;if(d&&v){var j=Y_.getPtId(v);i.each(function(W){G===null&&Y_.getPtId(W)===j&&(G={x0:W.x0,x1:W.x1,y0:W.y0,y1:W.y1})})}var H=function(){return G||{x0:0,x1:o,y0:0,y1:s}},N=i;return d&&(N=N.transition().each("end",function(){var W=yPe.select(this);Y_.setSliceCursor(W,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),N.each(function(W){var re=Y_.isHeader(W,x);W._x0=u(W.x0),W._x1=u(W.x1),W._y0=l(W.y0),W._y1=l(W.y1),W._hoverX=u(W.x1-x.marker.pad.r),W._hoverY=l(m?W.y1-x.marker.pad.b/2:W.y0+x.marker.pad.t/2);var ae=yPe.select(this),be=W6.ensureSingle(ae,"path","surface",function(Ee){Ee.style("pointer-events",E?"none":"all")});d?be.transition().attrTween("d",function(Ee){var Me=_(Ee,hX,H(),[o,s]);return function(Ue){return f(Me(Ue))}}):be.attr("d",f),ae.call(zzt,n,t,r,{styleOne:_Pe,eventDataKeys:cX.eventDataKeys,transitionTime:cX.CLICK_TRANSITION_TIME,transitionEasing:cX.CLICK_TRANSITION_EASING}).call(Y_.setSliceCursor,t,{isTransitioning:t._transitioning}),be.call(_Pe,W,x,t,{hovered:!1}),W.x0===W.x1||W.y0===W.y1?W._text="":re?W._text=P?"":Y_.getPtLabel(W)||"":W._text=Izt(W,n,x,r,A)||"";var ze=W6.ensureSingle(ae,"g","slicetext"),Ce=W6.ensureSingle(ze,"text","",function(Ee){Ee.attr("data-notex",1)}),de=W6.ensureUniformFontSize(t,Y_.determineTextFont(x,W,A.font)),te=W._text||" ",ke=re&&te.indexOf("
")===-1;Ce.text(te).classed("slicetext",!0).attr("text-anchor",M?"end":C||ke?"start":"middle").call(gPe.font,de).call(Lzt.convertToTspans,t),W.textBB=gPe.bBox(Ce.node()),W.transform=c(W,{fontSize:de.size,isHeader:re}),W.transform.fontSize=de.size,d?Ce.transition().attrTween("transform",function(Ee){var Me=b(Ee,hX,H(),[o,s]);return function(Ue){return h(Me(Ue))}}):Ce.attr("transform",h(W))}),G}});var TPe=Ae((Umr,wPe)=>{"use strict";var Rzt=fX(),Dzt=bPe();wPe.exports=function(t,r,n,i){return Rzt(t,r,n,i,{type:"treemap",drawDescendants:Dzt})}});var SPe=Ae((Vmr,APe)=>{"use strict";APe.exports={moduleType:"trace",name:"treemap",basePlotModule:ULe(),categories:[],animatable:!0,attributes:V6(),layoutAttributes:eX(),supplyDefaults:KLe(),supplyLayoutDefaults:$Le(),calc:rX().calc,crossTraceCalc:rX().crossTraceCalc,plot:TPe(),style:G6().style,colorbar:ep(),meta:{}}});var EPe=Ae((Gmr,MPe)=>{"use strict";MPe.exports=SPe()});var CPe=Ae(OA=>{"use strict";var kPe=Cc();OA.name="icicle";OA.plot=function(e,t,r,n){kPe.plotBasePlot(OA.name,e,t,r,n)};OA.clean=function(e,t,r,n){kPe.cleanBasePlot(OA.name,e,t,r,n)}});var dX=Ae((Wmr,zPe)=>{"use strict";var{hovertemplateAttrs:Fzt,texttemplateAttrs:Bzt,templatefallbackAttrs:LPe}=Ff(),Ozt=nc(),qzt=zc().attributes,X4=S2(),o0=L4(),j6=V6(),PPe=F2(),Nzt=Su().extendFlat,Uzt=Id().pattern;zPe.exports={labels:o0.labels,parents:o0.parents,values:o0.values,branchvalues:o0.branchvalues,count:o0.count,level:o0.level,maxdepth:o0.maxdepth,tiling:{orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"plot"},flip:j6.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},marker:Nzt({colors:o0.marker.colors,line:o0.marker.line,pattern:Uzt,editType:"calc"},Ozt("marker",{colorAttr:"colors",anim:!1})),leaf:o0.leaf,pathbar:j6.pathbar,text:X4.text,textinfo:o0.textinfo,texttemplate:Bzt({editType:"plot"},{keys:PPe.eventDataKeys.concat(["label","value"])}),texttemplatefallback:LPe({editType:"plot"}),hovertext:X4.hovertext,hoverinfo:o0.hoverinfo,hovertemplate:Fzt({},{keys:PPe.eventDataKeys}),hovertemplatefallback:LPe(),textfont:X4.textfont,insidetextfont:X4.insidetextfont,outsidetextfont:j6.outsidetextfont,textposition:j6.textposition,sort:X4.sort,root:o0.root,domain:qzt({name:"icicle",trace:!0,editType:"calc"})}});var pX=Ae((jmr,IPe)=>{"use strict";IPe.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var BPe=Ae((Xmr,FPe)=>{"use strict";var RPe=ei(),Vzt=dX(),Gzt=jl(),Hzt=zc().defaults,Wzt=r0().handleText,jzt=e2().TEXTPAD,Xzt=M2().handleMarkerDefaults,DPe=_c(),Zzt=DPe.hasColorscale,Yzt=DPe.handleDefaults;FPe.exports=function(t,r,n,i){function a(d,p){return RPe.coerce(t,r,Vzt,d,p)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var u=a("values");u&&u.length?a("branchvalues"):a("count"),a("level"),a("maxdepth"),a("tiling.orientation"),a("tiling.flip"),a("tiling.pad");var l=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",RPe.isArrayOrTypedArray(l)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var f=a("pathbar.visible"),c="auto";Wzt(t,r,i,a,c,{hasPathbar:f,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition"),Xzt(t,r,i,a);var h=r._hasColorscale=Zzt(t,"marker","colors")||(t.marker||{}).coloraxis;h&&Yzt(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",h?1:.7),r._hovered={marker:{line:{width:2,color:Gzt.contrast(i.paper_bgcolor)}}},f&&(a("pathbar.thickness",r.pathbar.textfont.size+2*jzt),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),Hzt(r,i,a),r._length=null}});var qPe=Ae((Zmr,OPe)=>{"use strict";var Kzt=ei(),Jzt=pX();OPe.exports=function(t,r){function n(i,a){return Kzt.coerce(t,r,Jzt,i,a)}n("iciclecolorway",r.colorway),n("extendiciclecolors")}});var mX=Ae(vX=>{"use strict";var NPe=I4();vX.calc=function(e,t){return NPe.calc(e,t)};vX.crossTraceCalc=function(e){return NPe._runCrossTraceCalc("icicle",e)}});var VPe=Ae((Kmr,UPe)=>{"use strict";var $zt=P4(),Qzt=iX();UPe.exports=function(t,r,n){var i=n.flipX,a=n.flipY,o=n.orientation==="h",s=n.maxDepth,u=r[0],l=r[1];s&&(u=(t.height+1)*r[0]/Math.min(t.height+1,s),l=(t.height+1)*r[1]/Math.min(t.height+1,s));var f=$zt.partition().padding(n.pad.inner).size(o?[r[1],u]:[r[0],l])(t);return(o||i||a)&&Qzt(f,r,{swapXY:o,flipX:i,flipY:a}),f}});var yX=Ae((Jmr,XPe)=>{"use strict";var GPe=Jl(),HPe=jl(),WPe=ei(),eIt=Tp().resizeText,tIt=q6();function rIt(e){var t=e._fullLayout._iciclelayer.selectAll(".trace");eIt(e,t,"icicle"),t.each(function(r){var n=GPe.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){GPe.select(this).call(jPe,o,a,e)})})}function jPe(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=WPe.castOption(r,o,"marker.line.color")||HPe.defaultLine,u=WPe.castOption(r,o,"marker.line.width")||0;e.call(tIt,t,r,n).style("stroke-width",u).call(HPe.stroke,s).style("opacity",a?r.leaf.opacity:null)}XPe.exports={style:rIt,styleOne:jPe}});var $Pe=Ae(($mr,JPe)=>{"use strict";var ZPe=Jl(),X6=ei(),YPe=Mu(),iIt=Xf(),nIt=VPe(),KPe=yX().styleOne,gX=F2(),qA=Kg(),aIt=H4(),oIt=U6().formatSliceLabel,_X=!1;JPe.exports=function(t,r,n,i,a){var o=a.width,s=a.height,u=a.viewX,l=a.viewY,f=a.pathSlice,c=a.toMoveInsideSlice,h=a.strTransform,d=a.hasTransition,p=a.handleSlicesExit,_=a.makeUpdateSliceInterpolator,b=a.makeUpdateTextInterpolator,v=a.prevEntry,k={},E=t._context.staticPlot,A=t._fullLayout,L=r[0],x=L.trace,C=x.textposition.indexOf("left")!==-1,M=x.textposition.indexOf("right")!==-1,m=x.textposition.indexOf("bottom")!==-1,P=nIt(n,[o,s],{flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1,orientation:x.tiling.orientation,pad:{inner:x.tiling.pad},maxDepth:x._maxDepth}),T=P.descendants(),B=1/0,F=-1/0;T.forEach(function(N){var W=N.depth;W>=x._maxDepth?(N.x0=N.x1=(N.x0+N.x1)/2,N.y0=N.y1=(N.y0+N.y1)/2):(B=Math.min(B,W),F=Math.max(F,W))}),i=i.data(T,qA.getPtId),x._maxVisibleLayers=isFinite(F)?F-B+1:0,i.enter().append("g").classed("slice",!0),p(i,_X,k,[o,s],f),i.order();var U=null;if(d&&v){var G=qA.getPtId(v);i.each(function(N){U===null&&qA.getPtId(N)===G&&(U={x0:N.x0,x1:N.x1,y0:N.y0,y1:N.y1})})}var j=function(){return U||{x0:0,x1:o,y0:0,y1:s}},H=i;return d&&(H=H.transition().each("end",function(){var N=ZPe.select(this);qA.setSliceCursor(N,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),H.each(function(N){N._x0=u(N.x0),N._x1=u(N.x1),N._y0=l(N.y0),N._y1=l(N.y1),N._hoverX=u(N.x1-x.tiling.pad),N._hoverY=l(m?N.y1-x.tiling.pad/2:N.y0+x.tiling.pad/2);var W=ZPe.select(this),re=X6.ensureSingle(W,"path","surface",function(Ce){Ce.style("pointer-events",E?"none":"all")});d?re.transition().attrTween("d",function(Ce){var de=_(Ce,_X,j(),[o,s],{orientation:x.tiling.orientation,flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1});return function(te){return f(de(te))}}):re.attr("d",f),W.call(aIt,n,t,r,{styleOne:KPe,eventDataKeys:gX.eventDataKeys,transitionTime:gX.CLICK_TRANSITION_TIME,transitionEasing:gX.CLICK_TRANSITION_EASING}).call(qA.setSliceCursor,t,{isTransitioning:t._transitioning}),re.call(KPe,N,x,t,{hovered:!1}),N.x0===N.x1||N.y0===N.y1?N._text="":N._text=oIt(N,n,x,r,A)||"";var ae=X6.ensureSingle(W,"g","slicetext"),be=X6.ensureSingle(ae,"text","",function(Ce){Ce.attr("data-notex",1)}),ze=X6.ensureUniformFontSize(t,qA.determineTextFont(x,N,A.font));be.text(N._text||" ").classed("slicetext",!0).attr("text-anchor",M?"end":C?"start":"middle").call(YPe.font,ze).call(iIt.convertToTspans,t),N.textBB=YPe.bBox(be.node()),N.transform=c(N,{fontSize:ze.size}),N.transform.fontSize=ze.size,d?be.transition().attrTween("transform",function(Ce){var de=b(Ce,_X,j(),[o,s]);return function(te){return h(de(te))}}):be.attr("transform",h(N))}),U}});var eze=Ae((Qmr,QPe)=>{"use strict";var sIt=fX(),lIt=$Pe();QPe.exports=function(t,r,n,i){return sIt(t,r,n,i,{type:"icicle",drawDescendants:lIt})}});var rze=Ae((eyr,tze)=>{"use strict";tze.exports={moduleType:"trace",name:"icicle",basePlotModule:CPe(),categories:[],animatable:!0,attributes:dX(),layoutAttributes:pX(),supplyDefaults:BPe(),supplyLayoutDefaults:qPe(),calc:mX().calc,crossTraceCalc:mX().crossTraceCalc,plot:eze(),style:yX().style,colorbar:ep(),meta:{}}});var nze=Ae((tyr,ize)=>{"use strict";ize.exports=rze()});var oze=Ae(NA=>{"use strict";var aze=Cc();NA.name="funnelarea";NA.plot=function(e,t,r,n){aze.plotBasePlot(NA.name,e,t,r,n)};NA.clean=function(e,t,r,n){aze.cleanBasePlot(NA.name,e,t,r,n)}});var xX=Ae((iyr,lze)=>{"use strict";var ap=S2(),uIt=Gf(),fIt=zc().attributes,{hovertemplateAttrs:cIt,texttemplateAttrs:hIt,templatefallbackAttrs:sze}=Ff(),q2=Su().extendFlat;lze.exports={labels:ap.labels,label0:ap.label0,dlabel:ap.dlabel,values:ap.values,marker:{colors:ap.marker.colors,line:{color:q2({},ap.marker.line.color,{dflt:null}),width:q2({},ap.marker.line.width,{dflt:1}),editType:"calc"},pattern:ap.marker.pattern,editType:"calc"},text:ap.text,hovertext:ap.hovertext,scalegroup:q2({},ap.scalegroup,{}),textinfo:q2({},ap.textinfo,{flags:["label","text","value","percent"]}),texttemplate:hIt({editType:"plot"},{keys:["label","color","value","text","percent"]}),texttemplatefallback:sze({editType:"plot"}),hoverinfo:q2({},uIt.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:cIt({},{keys:["label","color","value","text","percent"]}),hovertemplatefallback:sze(),textposition:q2({},ap.textposition,{values:["inside","none"],dflt:"inside"}),textfont:ap.textfont,insidetextfont:ap.insidetextfont,title:{text:ap.title.text,font:ap.title.font,position:q2({},ap.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:fIt({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot"},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot"}}});var bX=Ae((nyr,uze)=>{"use strict";var dIt=p6().hiddenlabels;uze.exports={hiddenlabels:dIt,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var hze=Ae((ayr,cze)=>{"use strict";var fze=ei(),pIt=xX(),vIt=zc().defaults,mIt=r0().handleText,yIt=M2().handleLabelsAndValues,gIt=M2().handleMarkerDefaults;cze.exports=function(t,r,n,i){function a(_,b){return fze.coerce(t,r,pIt,_,b)}var o=a("labels"),s=a("values"),u=yIt(o,s),l=u.len;if(r._hasLabels=u.hasLabels,r._hasValues=u.hasValues,!r._hasLabels&&r._hasValues&&(a("label0"),a("dlabel")),!l){r.visible=!1;return}r._length=l,gIt(t,r,i,a),a("scalegroup");var f=a("text"),c=a("texttemplate");a("texttemplatefallback");var h;if(c||(h=a("textinfo",Array.isArray(f)?"text+percent":"percent")),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),c||h&&h!=="none"){var d=a("textposition");mIt(t,r,i,a,d,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else h==="none"&&a("textposition","none");vIt(r,i,a);var p=a("title.text");p&&(a("title.position"),fze.coerceFont(a,"title.font",i.font)),a("aspectratio"),a("baseratio")}});var pze=Ae((oyr,dze)=>{"use strict";var _It=ei(),xIt=bX();dze.exports=function(t,r){function n(i,a){return _It.coerce(t,r,xIt,i,a)}n("hiddenlabels"),n("funnelareacolorway",r.colorway),n("extendfunnelareacolors")}});var wX=Ae((syr,mze)=>{"use strict";var vze=wA();function bIt(e,t){return vze.calc(e,t)}function wIt(e){vze.crossTraceCalc(e,{type:"funnelarea"})}mze.exports={calc:bIt,crossTraceCalc:wIt}});var bze=Ae((lyr,xze)=>{"use strict";var N2=Jl(),TX=Mu(),K_=ei(),TIt=K_.strScale,yze=K_.strTranslate,gze=Xf(),AIt=n2(),SIt=AIt.toMoveInsideBar,_ze=Tp(),MIt=_ze.recordMinTextSize,EIt=_ze.clearMinTextSize,kIt=l_(),UA=g6(),CIt=UA.attachFxHandlers,LIt=UA.determineInsideTextFont,PIt=UA.layoutAreas,zIt=UA.prerenderTitles,IIt=UA.positionTitleOutside,RIt=UA.formatSliceLabel;xze.exports=function(t,r){var n=t._context.staticPlot,i=t._fullLayout;EIt("funnelarea",i),zIt(r,t),PIt(r,i._size),K_.makeTraceGroups(i._funnelarealayer,r,"trace").each(function(a){var o=N2.select(this),s=a[0],u=s.trace;FIt(a),o.each(function(){var l=N2.select(this).selectAll("g.slice").data(a);l.enter().append("g").classed("slice",!0),l.exit().remove(),l.each(function(c,h){if(c.hidden){N2.select(this).selectAll("path,g").remove();return}c.pointNumber=c.i,c.curveNumber=u.index;var d=s.cx,p=s.cy,_=N2.select(this),b=_.selectAll("path.surface").data([c]);b.enter().append("path").classed("surface",!0).style({"pointer-events":n?"none":"all"}),_.call(CIt,t,a);var v="M"+(d+c.TR[0])+","+(p+c.TR[1])+AX(c.TR,c.BR)+AX(c.BR,c.BL)+AX(c.BL,c.TL)+"Z";b.attr("d",v),RIt(t,c,s);var k=kIt.castOption(u.textposition,c.pts),E=_.selectAll("g.slicetext").data(c.text&&k!=="none"?[0]:[]);E.enter().append("g").classed("slicetext",!0),E.exit().remove(),E.each(function(){var A=K_.ensureSingle(N2.select(this),"text","",function(B){B.attr("data-notex",1)}),L=K_.ensureUniformFontSize(t,LIt(u,c,i.font));A.text(c.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(TX.font,L).call(gze.convertToTspans,t);var x=TX.bBox(A.node()),C,M,m,P=Math.min(c.BL[1],c.BR[1])+p,T=Math.max(c.TL[1],c.TR[1])+p;M=Math.max(c.TL[0],c.BL[0])+d,m=Math.min(c.TR[0],c.BR[0])+d,C=SIt(M,m,P,T,x,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),C.fontSize=L.size,MIt(u.type,C,i),a[h].transform=C,K_.setTransormAndDisplay(A,C)})});var f=N2.select(this).selectAll("g.titletext").data(u.title.text?[0]:[]);f.enter().append("g").classed("titletext",!0),f.exit().remove(),f.each(function(){var c=K_.ensureSingle(N2.select(this),"text","",function(p){p.attr("data-notex",1)}),h=u.title.text;u._meta&&(h=K_.templateString(h,u._meta)),c.text(h).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(TX.font,u.title.font).call(gze.convertToTspans,t);var d=IIt(s,i._size);c.attr("transform",yze(d.x,d.y)+TIt(Math.min(1,d.scale))+yze(d.tx,d.ty))})})})};function AX(e,t){var r=t[0]-e[0],n=t[1]-e[1];return"l"+r+","+n}function DIt(e,t){return[.5*(e[0]+t[0]),.5*(e[1]+t[1])]}function FIt(e){if(!e.length)return;var t=e[0],r=t.trace,n=r.aspectratio,i=r.baseratio;i>.999&&(i=.999);var a=Math.pow(i,2),o=t.vTotal,s=o*a/(1-a),u=o,l=s/o;function f(){var F=Math.sqrt(l);return{x:F,y:-F}}function c(){var F=f();return[F.x,F.y]}var h,d=[];d.push(c());var p,_;for(p=e.length-1;p>-1;p--)if(_=e[p],!_.hidden){var b=_.v/u;l+=b,d.push(c())}var v=1/0,k=-1/0;for(p=0;p-1;p--)if(_=e[p],!_.hidden){P+=1;var T=d[P][0],B=d[P][1];_.TL=[-T,B],_.TR=[T,B],_.BL=M,_.BR=m,_.pxmid=DIt(_.TR,_.BR),M=_.TL,m=_.TR}}});var Aze=Ae((uyr,Tze)=>{"use strict";var wze=Jl(),BIt=O3(),OIt=Tp().resizeText;Tze.exports=function(t){var r=t._fullLayout._funnelarealayer.selectAll(".trace");OIt(t,r,"funnelarea"),r.each(function(n){var i=n[0],a=i.trace,o=wze.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){wze.select(this).call(BIt,s,a,t)})})}});var Mze=Ae((fyr,Sze)=>{"use strict";Sze.exports={moduleType:"trace",name:"funnelarea",basePlotModule:oze(),categories:["pie-like","funnelarea","showLegend"],attributes:xX(),layoutAttributes:bX(),supplyDefaults:hze(),supplyLayoutDefaults:pze(),calc:wX().calc,crossTraceCalc:wX().crossTraceCalc,plot:bze(),style:Aze(),styleOne:O3(),meta:{}}});var kze=Ae((cyr,Eze)=>{"use strict";Eze.exports=Mze()});var qd=Ae((hyr,Cze)=>{(function(){var e={24:function(i){var a={left:0,top:0};i.exports=o;function o(u,l,f){l=l||u.currentTarget||u.srcElement,Array.isArray(f)||(f=[0,0]);var c=u.clientX||0,h=u.clientY||0,d=s(l);return f[0]=c-d.left,f[1]=h-d.top,f}function s(u){return u===window||u===document||u===document.body?a:u.getBoundingClientRect()}},109:function(i){i.exports=a;function a(o,s,u,l){var f=u[0],c=u[2],h=s[0]-f,d=s[2]-c,p=Math.sin(l),_=Math.cos(l);return o[0]=f+d*p+h*_,o[1]=s[1],o[2]=c+d*_-h*p,o}},160:function(i){i.exports=a;function a(o,s,u){return o[0]=Math.max(s[0],u[0]),o[1]=Math.max(s[1],u[1]),o[2]=Math.max(s[2],u[2]),o[3]=Math.max(s[3],u[3]),o}},216:function(i){"use strict";i.exports=a;function a(o,s){for(var u={},l=0;l1){p[0]in h||(h[p[0]]=[]),h=h[p[0]];for(var _=1;_=0;--N){var ke=j[N];W=ke[0];var Ee=U[W],Me=Ee[0],Ue=Ee[1],De=F[Me],ye=F[Ue];if((De[0]-ye[0]||De[1]-ye[1])<0){var qe=Me;Me=Ue,Ue=qe}Ee[0]=Me;var ce=Ee[1]=ke[1],Je;for(H&&(Je=Ee[2]);N>0&&j[N-1][0]===W;){var ke=j[--N],nt=ke[1];H?U.push([ce,nt,Je]):U.push([ce,nt]),ce=nt}H?U.push([ce,Ue,Je]):U.push([ce,Ue])}return re}function x(F,U,G){for(var j=U.length,H=new s(j),N=[],W=0;WU[2]?1:0)}function m(F,U,G){if(F.length!==0){if(U)for(var j=0;j0||W.length>0}function B(F,U,G){var j;if(G){j=U;for(var H=new Array(U.length),N=0;N{"use strict";var vCt=xc().str2arr,mCt=xc().sliceEq,w4e=xc().readUInt32BE,yCt=vCt("8BPS\0");T4e.exports=function(e){if(!(e.length<22)&&mCt(e,0,yCt))return{width:w4e(e,18),height:w4e(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}});var E4e=Ae((tvr,M4e)=>{"use strict";function gCt(e){return e===32||e===9||e===13||e===10}function wA(e){return typeof e=="number"&&isFinite(e)&&e>0}function _Ct(e){var t=0,r=e.length;for(e[0]===239&&e[1]===187&&e[2]===191&&(t=3);t]*>/,bCt=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,wCt=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,TCt=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,ACt=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,S4e=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function SCt(e){var t=e.match(wCt),r=e.match(TCt),n=e.match(ACt);return{width:t&&(t[1]||t[2]),height:r&&(r[1]||r[2]),viewbox:n&&(n[1]||n[2])}}function Uy(e){return S4e.test(e)?e.match(S4e)[0]:"px"}M4e.exports=function(e){if(_Ct(e)){for(var t="",r=0;r{"use strict";var L4e=xc().str2arr,k4e=xc().sliceEq,MCt=xc().readUInt16LE,ECt=xc().readUInt16BE,kCt=xc().readUInt32LE,CCt=xc().readUInt32BE,LCt=L4e("II*\0"),PCt=L4e("MM\0*");function c6(e,t,r){return r?ECt(e,t):MCt(e,t)}function xj(e,t,r){return r?CCt(e,t):kCt(e,t)}function C4e(e,t,r){var n=c6(e,t+2,r),i=xj(e,t+4,r);return i!==1||n!==3&&n!==4?null:n===3?c6(e,t+8,r):xj(e,t+8,r)}P4e.exports=function(e){if(!(e.length<8)&&!(!k4e(e,0,LCt)&&!k4e(e,0,PCt))){var t=e[0]===77,r=xj(e,4,t)-8;if(!(r<0)){var n=r+8;if(!(e.length-n<2)){var i=c6(e,n+0,t)*12;if(!(i<=0)&&(n+=2,!(e.length-n{"use strict";var D4e=xc().str2arr,I4e=xc().sliceEq,R4e=xc().readUInt16LE,bj=xc().readUInt32LE,zCt=u6(),ICt=D4e("RIFF"),RCt=D4e("WEBP");function DCt(e,t){if(!(e[t+3]!==157||e[t+4]!==1||e[t+5]!==42))return{width:R4e(e,t+6)&16383,height:R4e(e,t+8)&16383,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}function FCt(e,t){if(e[t]===47){var r=bj(e,t+1);return{width:(r&16383)+1,height:(r>>14&16383)+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function BCt(e,t){return{width:(e[t+6]<<16|e[t+5]<<8|e[t+4])+1,height:(e[t+9]<e.length)){for(;t+8=10?r=r||DCt(e,t+8):a==="VP8L"&&o>=9?r=r||FCt(e,t+8):a==="VP8X"&&o>=10?r=r||BCt(e,t+8):a==="EXIF"&&(n=zCt.get_orientation(e.slice(t+8,t+8+o)),t=1/0),t+=8+o}if(r)return n>0&&(r.orientation=n),r}}}});var q4e=Ae((nvr,O4e)=>{"use strict";O4e.exports={avif:i4e(),bmp:o4e(),gif:c4e(),ico:p4e(),jpeg:m4e(),png:b4e(),psd:A4e(),svg:E4e(),tiff:z4e(),webp:B4e()}});var N4e=Ae((avr,Tj)=>{"use strict";var wj=q4e();function OCt(e){for(var t=Object.keys(wj),r=0;r{"use strict";var qCt=N4e(),NCt=Pg().IMAGE_URL_PREFIX,UCt=f2().Buffer;U4e.getImageSize=function(e){var t=e.replace(NCt,""),r=new UCt(t,"base64");return qCt(r)}});var W4e=Ae((svr,H4e)=>{"use strict";var G4e=ei(),VCt=YT(),GCt=ku(),h6=wu(),HCt=ei().maxRowLength,WCt=V4e().getImageSize;H4e.exports=function(t,r){var n,i;if(r._hasZ)n=r.z.length,i=HCt(r.z);else if(r._hasSource){var a=WCt(r.source);n=a.height,i=a.width}var o=h6.getFromId(t,r.xaxis||"x"),s=h6.getFromId(t,r.yaxis||"y"),u=o.d2c(r.x0)-r.dx/2,l=s.d2c(r.y0)-r.dy/2,f,c=[u,u+i*r.dx],h=[l,l+n*r.dy];if(o&&o.type==="log")for(f=0;f{"use strict";var YCt=Jl(),A2=ei(),j4e=A2.strTranslate,KCt=jv(),JCt=YT(),$Ct=uG(),QCt=hR().STYLE;X4e.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis,s=!t._context._exportedPlot&&$Ct();A2.makeTraceGroups(i,n,"im").each(function(u){var l=YCt.select(this),f=u[0],c=f.trace,h=(c.zsmooth==="fast"||c.zsmooth===!1&&s)&&!c._hasZ&&c._hasSource&&a.type==="linear"&&o.type==="linear";c._realImage=h;var d=f.z,p=f.x0,_=f.y0,b=f.w,v=f.h,k=c.dx,E=c.dy,A,L,x,C,M,m;for(m=0;A===void 0&&m0;)L=a.c2p(p+m*k),m--;for(m=0;C===void 0&&m0;)M=o.c2p(_+m*E),m--;if(LH[0];if(re||ae){var be=A+T/2,ze=C+B/2;W+="transform:"+j4e(be+"px",ze+"px")+"scale("+(re?-1:1)+","+(ae?-1:1)+")"+j4e(-be+"px",-ze+"px")+";"}}j.attr("style",W);var Ce=new Promise(function(de){if(c._hasZ)de();else if(c._hasSource)if(c._canvas&&c._canvas.el.width===b&&c._canvas.el.height===v&&c._canvas.source===c.source)de();else{var te=document.createElement("canvas");te.width=b,te.height=v;var ke=te.getContext("2d",{willReadFrequently:!0});c._image=c._image||new Image;var Ee=c._image;Ee.onload=function(){ke.drawImage(Ee,0,0),c._canvas={el:te,source:c.source},de()},Ee.setAttribute("src",c.source)}}).then(function(){var de,te;if(c._hasZ)te=G(function(Me,Ue){var De=d[Ue][Me];return A2.isTypedArray(De)&&(De=Array.from(De)),De}),de=te.toDataURL("image/png");else if(c._hasSource)if(h)de=c.source;else{var ke=c._canvas.el.getContext("2d",{willReadFrequently:!0}),Ee=ke.getImageData(0,0,b,v).data;te=G(function(Me,Ue){var De=4*(Ue*b+Me);return[Ee[De],Ee[De+1],Ee[De+2],Ee[De+3]]}),de=te.toDataURL("image/png")}j.attr({"xlink:href":de,height:B,width:T,x:A,y:C})});t._promises.push(Ce)})}});var K4e=Ae((uvr,Y4e)=>{"use strict";var eLt=Jl();Y4e.exports=function(t){eLt.select(t).selectAll(".im image").style("opacity",function(r){return r[0].trace.opacity})}});var eke=Ae((fvr,Q4e)=>{"use strict";var J4e=Xc(),$4e=ei(),d6=$4e.isArrayOrTypedArray,tLt=YT();Q4e.exports=function(t,r,n){var i=t.cd[0],a=i.trace,o=t.xa,s=t.ya;if(!(J4e.inbox(r-i.x0,r-(i.x0+i.w*a.dx),0)>0||J4e.inbox(n-i.y0,n-(i.y0+i.h*a.dy),0)>0)){var u=Math.floor((r-i.x0)/a.dx),l=Math.floor(Math.abs(n-i.y0)/a.dy),f;if(a._hasZ?f=i.z[l][u]:a._hasSource&&(f=a._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(u,l,1,1).data),!!f){var c=i.hi||a.hoverinfo,h;if(c){var d=c.split("+");d.indexOf("all")!==-1&&(d=["color"]),d.indexOf("color")!==-1&&(h=!0)}var p=tLt.colormodel[a.colormodel],_=p.colormodel||a.colormodel,b=_.length,v=a._scaler(f),k=p.suffix,E=[];(a.hovertemplate||h)&&(E.push("["+[v[0]+k[0],v[1]+k[1],v[2]+k[2]].join(", ")),b===4&&E.push(", "+v[3]+k[3]),E.push("]"),E=E.join(""),t.extraText=_.toUpperCase()+": "+E);var A;d6(a.hovertext)&&d6(a.hovertext[l])?A=a.hovertext[l][u]:d6(a.text)&&d6(a.text[l])&&(A=a.text[l][u]);var L=s.c2p(i.y0+(l+.5)*a.dy),x=i.x0+(u+.5)*a.dx,C=i.y0+(l+.5)*a.dy,M="["+f.slice(0,a.colormodel.length).join(", ")+"]";return[$4e.extendFlat(t,{index:[l,u],x0:o.c2p(i.x0+u*a.dx),x1:o.c2p(i.x0+(u+1)*a.dx),y0:L,y1:L,color:v,xVal:x,xLabelVal:x,yVal:C,yLabelVal:C,zLabelVal:M,text:A,hovertemplateLabels:{zLabel:M,colorLabel:E,"color[0]Label":v[0]+k[0],"color[1]Label":v[1]+k[1],"color[2]Label":v[2]+k[2],"color[3]Label":v[3]+k[3]}})]}}}});var rke=Ae((cvr,tke)=>{"use strict";tke.exports=function(t,r){return"xVal"in r&&(t.x=r.xVal),"yVal"in r&&(t.y=r.yVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t.color=r.color,t.colormodel=r.trace.colormodel,t.z||(t.z=r.color),t}});var nke=Ae((hvr,ike)=>{"use strict";ike.exports={attributes:_H(),supplyDefaults:eTe(),calc:W4e(),plot:Z4e(),style:K4e(),hoverPoints:eke(),eventData:rke(),moduleType:"trace",name:"image",basePlotModule:Ah(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}});var oke=Ae((dvr,ake)=>{"use strict";ake.exports=nke()});var M2=Ae((pvr,lke)=>{"use strict";var Aj=Gf(),rLt=zc().attributes,iLt=gc(),nLt=Fh(),{hovertemplateAttrs:aLt,texttemplateAttrs:oLt,templatefallbackAttrs:ske}=Ff(),S2=Su().extendFlat,sLt=Id().pattern,p6=iLt({editType:"plot",arrayOk:!0,colorEditType:"plot"});lke.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:nLt.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:sLt,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:S2({},Aj.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:aLt({},{keys:["label","color","value","percent","text"]}),hovertemplatefallback:ske(),texttemplate:oLt({editType:"plot"},{keys:["label","color","value","percent","text"]}),texttemplatefallback:ske({editType:"plot"}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:S2({},p6,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:S2({},p6,{}),outsidetextfont:S2({},p6,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:S2({},Aj.showlegend,{arrayOk:!0}),legend:S2({},Aj.legend,{arrayOk:!0}),title:{text:{valType:"string",dflt:"",editType:"plot"},font:S2({},p6,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:rLt({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}});var E2=Ae((vvr,cke)=>{"use strict";var lLt=ku(),k4=ei(),uLt=M2(),fLt=zc().defaults,cLt=r0().handleText,hLt=ei().coercePattern;function uke(e,t){var r=k4.isArrayOrTypedArray(e),n=k4.isArrayOrTypedArray(t),i=Math.min(r?e.length:1/0,n?t.length:1/0);if(isFinite(i)||(i=0),i&&n){for(var a,o=0;o0){a=!0;break}}a||(i=0)}return{hasLabels:r,hasValues:n,len:i}}function fke(e,t,r,n,i){var a=n("marker.line.width");a&&n("marker.line.color",i?void 0:r.paper_bgcolor);var o=n("marker.colors");hLt(n,"marker.pattern",o),e.marker&&!t.marker.pattern.fgcolor&&(t.marker.pattern.fgcolor=e.marker.colors),t.marker.pattern.bgcolor||(t.marker.pattern.bgcolor=r.paper_bgcolor)}function dLt(e,t,r,n){function i(k,E){return k4.coerce(e,t,uLt,k,E)}var a=i("labels"),o=i("values"),s=uke(a,o),u=s.len;if(t._hasLabels=s.hasLabels,t._hasValues=s.hasValues,!t._hasLabels&&t._hasValues&&(i("label0"),i("dlabel")),!u){t.visible=!1;return}t._length=u,fke(e,t,n,i,!0),i("scalegroup");var l=i("text"),f=i("texttemplate");i("texttemplatefallback");var c;if(f||(c=i("textinfo",k4.isArrayOrTypedArray(l)?"text+percent":"percent")),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),f||c&&c!=="none"){var h=i("textposition");cLt(e,t,n,i,h,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var d=Array.isArray(h)||h==="auto",p=d||h==="outside";p&&i("automargin"),(h==="inside"||h==="auto"||Array.isArray(h))&&i("insidetextorientation")}else c==="none"&&i("textposition","none");fLt(t,n,i);var _=i("hole"),b=i("title.text");if(b){var v=i("title.position",_?"middle center":"top center");!_&&v==="middle center"&&(t.title.position="top center"),k4.coerceFont(i,"title.font",n.font)}i("sort"),i("direction"),i("rotation"),i("pull")}cke.exports={handleLabelsAndValues:uke,handleMarkerDefaults:fke,supplyDefaults:dLt}});var v6=Ae((mvr,hke)=>{"use strict";hke.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var pke=Ae((yvr,dke)=>{"use strict";var pLt=ei(),vLt=v6();dke.exports=function(t,r){function n(i,a){return pLt.coerce(t,r,vLt,i,a)}n("hiddenlabels"),n("piecolorway",r.colorway),n("extendpiecolors")}});var TA=Ae((gvr,yke)=>{"use strict";var mLt=ku(),Sj=cd(),yLt=jl(),gLt={};function _Lt(e,t){var r=[],n=e._fullLayout,i=n.hiddenlabels||[],a=t.labels,o=t.marker.colors||[],s=t.values,u=t._length,l=t._hasValues&&u,f,c;if(t.dlabel)for(a=new Array(u),f=0;f=0});var A=t.type==="funnelarea"?_:t.sort;return A&&r.sort(function(L,x){return x.v-L.v}),r[0]&&(r[0].vTotal=p),r}function vke(e){return function(r,n){return!r||(r=Sj(r),!r.isValid())?!1:(r=yLt.addOpacity(r,r.getAlpha()),e[n]||(e[n]=r),r)}}function xLt(e,t){var r=(t||{}).type;r||(r="pie");var n=e._fullLayout,i=e.calcdata,a=n[r+"colorway"],o=n["_"+r+"colormap"];n["extend"+r+"colors"]&&(a=mke(a,gLt));for(var s=0,u=0;u{"use strict";var bLt=iv().appendArrayMultiPointValues;gke.exports=function(t,r){var n={curveNumber:r.index,pointNumbers:t.pts,data:r._input,fullData:r,label:t.label,color:t.color,value:t.v,percent:t.percent,text:t.text,bbox:t.bbox,v:t.v};return t.pts.length===1&&(n.pointNumber=n.i=t.pts[0]),bLt(n,r,t.pts),r.type==="funnelarea"&&(delete n.v,delete n.i),n}});var _6=Ae((xvr,Nke)=>{"use strict";var Dv=Jl(),wLt=Cc(),m6=Xc(),Ske=jl(),jg=Mu(),np=ei(),TLt=np.strScale,xke=np.strTranslate,Mj=Xf(),Mke=Tp(),ALt=Mke.recordMinTextSize,SLt=Mke.clearMinTextSize,Eke=e2().TEXTPAD,Zu=l_(),y6=_ke(),bke=ei().isValidTextValue;function MLt(e,t){var r=e._context.staticPlot,n=e._fullLayout,i=n._size;SLt("pie",n),Lke(t,e),Bke(t,i);var a=np.makeTraceGroups(n._pielayer,t,"trace").each(function(o){var s=Dv.select(this),u=o[0],l=u.trace;DLt(o),s.attr("stroke-linejoin","round"),s.each(function(){var f=Dv.select(this).selectAll("g.slice").data(o);f.enter().append("g").classed("slice",!0),f.exit().remove();var c=[[[],[]],[[],[]]],h=!1;f.each(function(A,L){if(A.hidden){Dv.select(this).selectAll("path,g").remove();return}A.pointNumber=A.i,A.curveNumber=l.index,c[A.pxmid[1]<0?0:1][A.pxmid[0]<0?0:1].push(A);var x=u.cx,C=u.cy,M=Dv.select(this),m=M.selectAll("path.surface").data([A]);if(m.enter().append("path").classed("surface",!0).style({"pointer-events":r?"none":"all"}),M.call(kke,e,o),l.pull){var P=+Zu.castOption(l.pull,A.pts)||0;P>0&&(x+=P*A.pxmid[0],C+=P*A.pxmid[1])}A.cxFinal=x,A.cyFinal=C;function T(N,H,re,ae){var be=ae*(H[0]-N[0]),ze=ae*(H[1]-N[1]);return"a"+ae*u.r+","+ae*u.r+" 0 "+A.largeArc+(re?" 1 ":" 0 ")+be+","+ze}var B=l.hole;if(A.v===u.vTotal){var F="M"+(x+A.px0[0])+","+(C+A.px0[1])+T(A.px0,A.pxmid,!0,1)+T(A.pxmid,A.px0,!0,1)+"Z";B?m.attr("d","M"+(x+B*A.px0[0])+","+(C+B*A.px0[1])+T(A.px0,A.pxmid,!1,B)+T(A.pxmid,A.px0,!1,B)+"Z"+F):m.attr("d",F)}else{var U=T(A.px0,A.px1,!0,1);if(B){var G=1-B;m.attr("d","M"+(x+B*A.px1[0])+","+(C+B*A.px1[1])+T(A.px1,A.px0,!1,B)+"l"+G*A.px0[0]+","+G*A.px0[1]+U+"Z")}else m.attr("d","M"+x+","+C+"l"+A.px0[0]+","+A.px0[1]+U+"Z")}Oke(e,A,u);var j=Zu.castOption(l.textposition,A.pts),W=M.selectAll("g.slicetext").data(A.text&&j!=="none"?[0]:[]);W.enter().append("g").classed("slicetext",!0),W.exit().remove(),W.each(function(){var N=np.ensureSingle(Dv.select(this),"text","",function(te){te.attr("data-notex",1)}),H=np.ensureUniformFontSize(e,j==="outside"?kLt(l,A,n.font):Cke(l,A,n.font));N.text(A.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(jg.font,H).call(Mj.convertToTspans,e);var re=jg.bBox(N.node()),ae;if(j==="outside")ae=Ake(re,A);else if(ae=Pke(re,A,u),j==="auto"&&ae.scale<1){var be=np.ensureUniformFontSize(e,l.outsidetextfont);N.call(jg.font,be),re=jg.bBox(N.node()),ae=Ake(re,A)}var ze=ae.textPosAngle,Ce=ze===void 0?A.pxmid:g6(u.r,ze);if(ae.targetX=x+Ce[0]*ae.rCenter+(ae.x||0),ae.targetY=C+Ce[1]*ae.rCenter+(ae.y||0),qke(ae,re),ae.outside){var de=ae.targetY;A.yLabelMin=de-re.height/2,A.yLabelMid=de,A.yLabelMax=de+re.height/2,A.labelExtraX=0,A.labelExtraY=0,h=!0}ae.fontSize=H.size,ALt(l.type,ae,n),o[L].transform=ae,np.setTransormAndDisplay(N,ae)})});var d=Dv.select(this).selectAll("g.titletext").data(l.title.text?[0]:[]);if(d.enter().append("g").classed("titletext",!0),d.exit().remove(),d.each(function(){var A=np.ensureSingle(Dv.select(this),"text","",function(C){C.attr("data-notex",1)}),L=l.title.text;l._meta&&(L=np.templateString(L,l._meta)),A.text(L).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(jg.font,l.title.font).call(Mj.convertToTspans,e);var x;l.title.position==="middle center"?x=PLt(u):x=Dke(u,i),A.attr("transform",xke(x.x,x.y)+TLt(Math.min(1,x.scale))+xke(x.tx,x.ty))}),h&&ILt(c,l),ELt(f,l),h&&l.automargin){var p=jg.bBox(s.node()),_=l.domain,b=i.w*(_.x[1]-_.x[0]),v=i.h*(_.y[1]-_.y[0]),k=(.5*b-u.r)/i.w,E=(.5*v-u.r)/i.h;wLt.autoMargin(e,"pie."+l.uid+".automargin",{xl:_.x[0]-k,xr:_.x[1]+k,yb:_.y[0]-E,yt:_.y[1]+E,l:Math.max(u.cx-u.r-p.left,0),r:Math.max(p.right-(u.cx+u.r),0),b:Math.max(p.bottom-(u.cy+u.r),0),t:Math.max(u.cy-u.r-p.top,0),pad:5})}})});setTimeout(function(){a.selectAll("tspan").each(function(){var o=Dv.select(this);o.attr("dy")&&o.attr("dy",o.attr("dy"))})},0)}function ELt(e,t){e.each(function(r){var n=Dv.select(this);if(!r.labelExtraX&&!r.labelExtraY){n.select("path.textline").remove();return}var i=n.select("g.slicetext text");r.transform.targetX+=r.labelExtraX,r.transform.targetY+=r.labelExtraY,np.setTransormAndDisplay(i,r.transform);var a=r.cxFinal+r.pxmid[0],o=r.cyFinal+r.pxmid[1],s="M"+a+","+o,u=(r.yLabelMax-r.yLabelMin)*(r.pxmid[0]<0?-1:1)/4;if(r.labelExtraX){var l=r.labelExtraX*r.pxmid[1]/r.pxmid[0],f=r.yLabelMid+r.labelExtraY-(r.cyFinal+r.pxmid[1]);Math.abs(l)>Math.abs(f)?s+="l"+f*r.pxmid[0]/r.pxmid[1]+","+f+"H"+(a+r.labelExtraX+u):s+="l"+r.labelExtraX+","+l+"v"+(f-l)+"h"+u}else s+="V"+(r.yLabelMid+r.labelExtraY)+"h"+u;np.ensureSingle(n,"path","textline").call(Ske.stroke,t.outsidetextfont.color).attr({"stroke-width":Math.min(2,t.outsidetextfont.size/8),d:s,fill:"none"})})}function kke(e,t,r){var n=r[0],i=n.cx,a=n.cy,o=n.trace,s=o.type==="funnelarea";"_hasHoverLabel"in o||(o._hasHoverLabel=!1),"_hasHoverEvent"in o||(o._hasHoverEvent=!1),e.on("mouseover",function(u){var l=t._fullLayout,f=t._fullData[o.index];if(!(t._dragging||l.hovermode===!1)){var c=f.hoverinfo;if(Array.isArray(c)&&(c=m6.castHoverinfo({hoverinfo:[Zu.castOption(c,u.pts)],_module:o._module},l,0)),c==="all"&&(c="label+text+value+percent+name"),f.hovertemplate||c!=="none"&&c!=="skip"&&c){var h=u.rInscribed||0,d=i+u.pxmid[0]*(1-h),p=a+u.pxmid[1]*(1-h),_=l.separators,b=[];if(c&&c.indexOf("label")!==-1&&b.push(u.label),u.text=Zu.castOption(f.hovertext||f.text,u.pts),c&&c.indexOf("text")!==-1){var v=u.text;np.isValidTextValue(v)&&b.push(v)}u.value=u.v,u.valueLabel=Zu.formatPieValue(u.v,_),c&&c.indexOf("value")!==-1&&b.push(u.valueLabel),u.percent=u.v/n.vTotal,u.percentLabel=Zu.formatPiePercent(u.percent,_),c&&c.indexOf("percent")!==-1&&b.push(u.percentLabel);var k=f.hoverlabel,E=k.font,A=[];m6.loneHover({trace:o,x0:d-h*n.r,x1:d+h*n.r,y:p,_x0:s?i+u.TL[0]:d-h*n.r,_x1:s?i+u.TR[0]:d+h*n.r,_y0:s?a+u.TL[1]:p-h*n.r,_y1:s?a+u.BL[1]:p+h*n.r,text:b.join("
"),name:f.hovertemplate||c.indexOf("name")!==-1?f.name:void 0,idealAlign:u.pxmid[0]<0?"left":"right",color:Zu.castOption(k.bgcolor,u.pts)||u.color,borderColor:Zu.castOption(k.bordercolor,u.pts),fontFamily:Zu.castOption(E.family,u.pts),fontSize:Zu.castOption(E.size,u.pts),fontColor:Zu.castOption(E.color,u.pts),nameLength:Zu.castOption(k.namelength,u.pts),textAlign:Zu.castOption(k.align,u.pts),hovertemplate:Zu.castOption(f.hovertemplate,u.pts),hovertemplateLabels:u,eventData:[y6(u,f)]},{container:l._hoverlayer.node(),outerContainer:l._paper.node(),gd:t,inOut_bbox:A}),u.bbox=A[0],o._hasHoverLabel=!0}o._hasHoverEvent=!0,t.emit("plotly_hover",{points:[y6(u,f)],event:Dv.event})}}),e.on("mouseout",function(u){var l=t._fullLayout,f=t._fullData[o.index],c=Dv.select(this).datum();o._hasHoverEvent&&(u.originalEvent=Dv.event,t.emit("plotly_unhover",{points:[y6(c,f)],event:Dv.event}),o._hasHoverEvent=!1),o._hasHoverLabel&&(m6.loneUnhover(l._hoverlayer.node()),o._hasHoverLabel=!1)}),e.on("click",function(u){var l=t._fullLayout,f=t._fullData[o.index];t._dragging||l.hovermode===!1||(t._hoverdata=[y6(u,f)],m6.click(t,Dv.event))})}function kLt(e,t,r){var n=Zu.castOption(e.outsidetextfont.color,t.pts)||Zu.castOption(e.textfont.color,t.pts)||r.color,i=Zu.castOption(e.outsidetextfont.family,t.pts)||Zu.castOption(e.textfont.family,t.pts)||r.family,a=Zu.castOption(e.outsidetextfont.size,t.pts)||Zu.castOption(e.textfont.size,t.pts)||r.size,o=Zu.castOption(e.outsidetextfont.weight,t.pts)||Zu.castOption(e.textfont.weight,t.pts)||r.weight,s=Zu.castOption(e.outsidetextfont.style,t.pts)||Zu.castOption(e.textfont.style,t.pts)||r.style,u=Zu.castOption(e.outsidetextfont.variant,t.pts)||Zu.castOption(e.textfont.variant,t.pts)||r.variant,l=Zu.castOption(e.outsidetextfont.textcase,t.pts)||Zu.castOption(e.textfont.textcase,t.pts)||r.textcase,f=Zu.castOption(e.outsidetextfont.lineposition,t.pts)||Zu.castOption(e.textfont.lineposition,t.pts)||r.lineposition,c=Zu.castOption(e.outsidetextfont.shadow,t.pts)||Zu.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n,family:i,size:a,weight:o,style:s,variant:u,textcase:l,lineposition:f,shadow:c}}function Cke(e,t,r){var n=Zu.castOption(e.insidetextfont.color,t.pts);!n&&e._input.textfont&&(n=Zu.castOption(e._input.textfont.color,t.pts));var i=Zu.castOption(e.insidetextfont.family,t.pts)||Zu.castOption(e.textfont.family,t.pts)||r.family,a=Zu.castOption(e.insidetextfont.size,t.pts)||Zu.castOption(e.textfont.size,t.pts)||r.size,o=Zu.castOption(e.insidetextfont.weight,t.pts)||Zu.castOption(e.textfont.weight,t.pts)||r.weight,s=Zu.castOption(e.insidetextfont.style,t.pts)||Zu.castOption(e.textfont.style,t.pts)||r.style,u=Zu.castOption(e.insidetextfont.variant,t.pts)||Zu.castOption(e.textfont.variant,t.pts)||r.variant,l=Zu.castOption(e.insidetextfont.textcase,t.pts)||Zu.castOption(e.textfont.textcase,t.pts)||r.textcase,f=Zu.castOption(e.insidetextfont.lineposition,t.pts)||Zu.castOption(e.textfont.lineposition,t.pts)||r.lineposition,c=Zu.castOption(e.insidetextfont.shadow,t.pts)||Zu.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n||Ske.contrast(t.color),family:i,size:a,weight:o,style:s,variant:u,textcase:l,lineposition:f,shadow:c}}function Lke(e,t){for(var r,n,i=0;i=-4;k-=2)v(Math.PI*k,"tan");for(k=4;k>=-4;k-=2)v(Math.PI*(k+1),"tan")}if(c||d){for(k=4;k>=-4;k-=2)v(Math.PI*(k+1.5),"rad");for(k=4;k>=-4;k-=2)v(Math.PI*(k+.5),"rad")}}if(s||p||c){var E=Math.sqrt(e.width*e.width+e.height*e.height);if(b={scale:i*n*2/E,rCenter:1-i,rotate:0},b.textPosAngle=(t.startangle+t.stopangle)/2,b.scale>=1)return b;_.push(b)}(p||d)&&(b=wke(e,n,o,u,l),b.textPosAngle=(t.startangle+t.stopangle)/2,_.push(b)),(p||h)&&(b=Tke(e,n,o,u,l),b.textPosAngle=(t.startangle+t.stopangle)/2,_.push(b));for(var A=0,L=0,x=0;x<_.length;x++){var C=_[x].scale;if(L=1)break}return _[A]}function CLt(e,t){var r=e.startangle,n=e.stopangle;return r>t&&t>n||r0?1:-1)/2,y:a/(1+r*r/(n*n)),outside:!0}}function PLt(e){var t=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/t,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}function Dke(e,t){var r=1,n=1,i,a=e.trace,o={x:e.cx,y:e.cy},s={tx:0,ty:0};s.ty+=a.title.font.size,i=Fke(a),a.title.position.indexOf("top")!==-1?(o.y-=(1+i)*e.r,s.ty-=e.titleBox.height):a.title.position.indexOf("bottom")!==-1&&(o.y+=(1+i)*e.r);var u=zLt(e.r,e.trace.aspectratio),l=t.w*(a.domain.x[1]-a.domain.x[0])/2;return a.title.position.indexOf("left")!==-1?(l=l+u,o.x-=(1+i)*u,s.tx+=e.titleBox.width/2):a.title.position.indexOf("center")!==-1?l*=2:a.title.position.indexOf("right")!==-1&&(l=l+u,o.x+=(1+i)*u,s.tx-=e.titleBox.width/2),r=l/e.titleBox.width,n=Ej(e,t)/e.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function zLt(e,t){return e/(t===void 0?1:t)}function Ej(e,t){var r=e.trace,n=t.h*(r.domain.y[1]-r.domain.y[0]);return Math.min(e.titleBox.height,n/2)}function Fke(e){var t=e.pull;if(!t)return 0;var r;if(np.isArrayOrTypedArray(t))for(t=0,r=0;rt&&(t=e.pull[r]);return t}function ILt(e,t){var r,n,i,a,o,s,u,l,f,c,h,d,p;function _(E,A){return E.pxmid[1]-A.pxmid[1]}function b(E,A){return A.pxmid[1]-E.pxmid[1]}function v(E,A){A||(A={});var L=A.labelExtraY+(n?A.yLabelMax:A.yLabelMin),x=n?E.yLabelMin:E.yLabelMax,C=n?E.yLabelMax:E.yLabelMin,M=E.cyFinal+o(E.px0[1],E.px1[1]),m=L-x,P,T,B,F,U,G;if(m*u>0&&(E.labelExtraY=m),!!np.isArrayOrTypedArray(t.pull))for(T=0;T=(Zu.castOption(t.pull,B.pts)||0))&&((E.pxmid[1]-B.pxmid[1])*u>0?(F=B.cyFinal+o(B.px0[1],B.px1[1]),m=F-x-E.labelExtraY,m*u>0&&(E.labelExtraY+=m)):(C+E.labelExtraY-M)*u>0&&(P=3*s*Math.abs(T-c.indexOf(E)),U=B.cxFinal+a(B.px0[0],B.px1[0]),G=U+P-(E.cxFinal+E.pxmid[0])-E.labelExtraX,G*s>0&&(E.labelExtraX+=G)))}for(n=0;n<2;n++)for(i=n?_:b,o=n?Math.max:Math.min,u=n?1:-1,r=0;r<2;r++){for(a=r?Math.max:Math.min,s=r?1:-1,l=e[n][r],l.sort(i),f=e[1-n][r],c=f.concat(l),d=[],h=0;h1?(l=r.r,f=l/i.aspectratio):(f=r.r,l=f*i.aspectratio),l*=(1+i.baseratio)/2,u=l*f}o=Math.min(o,u/r.vTotal)}for(n=0;nt.vTotal/2?1:0,l.halfangle=Math.PI*Math.min(l.v/t.vTotal,.5),l.ring=1-n.hole,l.rInscribed=LLt(l,t))}function g6(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}function Oke(e,t,r){var n=e._fullLayout,i=r.trace,a=i.texttemplate,o=i.textinfo;if(!a&&o&&o!=="none"){var s=o.split("+"),u=function(A){return s.indexOf(A)!==-1},l=u("label"),f=u("text"),c=u("value"),h=u("percent"),d=n.separators,p;if(p=l?[t.label]:[],f){var _=Zu.getFirstFilled(i.text,t.pts);bke(_)&&p.push(_)}c&&p.push(Zu.formatPieValue(t.v,d)),h&&p.push(Zu.formatPiePercent(t.v/r.vTotal,d)),t.text=p.join("
")}function b(A){return{label:A.label,value:A.v,valueLabel:Zu.formatPieValue(A.v,n.separators),percent:A.v/r.vTotal,percentLabel:Zu.formatPiePercent(A.v/r.vTotal,n.separators),color:A.color,text:A.text,customdata:np.castOption(i,A.i,"customdata")}}if(a){var v=np.castOption(i,t.i,"texttemplate");if(!v)t.text="";else{var k=b(t),E=Zu.getFirstFilled(i.text,t.pts);(bke(E)||E==="")&&(k.text=E),t.text=np.texttemplateString({data:[k,i._meta],fallback:i.texttemplatefallback,labels:k,locale:e._fullLayout._d3locale,template:v})}}}function qke(e,t){var r=e.rotate*Math.PI/180,n=Math.cos(r),i=Math.sin(r),a=(t.left+t.right)/2,o=(t.top+t.bottom)/2;e.textX=a*n-o*i,e.textY=a*i+o*n,e.noCenter=!0}Nke.exports={plot:MLt,formatSliceLabel:Oke,transformInsideText:Pke,determineInsideTextFont:Cke,positionTitleOutside:Dke,prerenderTitles:Lke,layoutAreas:Bke,attachFxHandlers:kke,computeTransform:qke}});var Gke=Ae((bvr,Vke)=>{"use strict";var Uke=Jl(),FLt=q3(),BLt=Tp().resizeText;Vke.exports=function(t){var r=t._fullLayout._pielayer.selectAll(".trace");BLt(t,r,"pie"),r.each(function(n){var i=n[0],a=i.trace,o=Uke.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){Uke.select(this).call(FLt,s,a,t)})})}});var Wke=Ae(AA=>{"use strict";var Hke=Cc();AA.name="pie";AA.plot=function(e,t,r,n){Hke.plotBasePlot(AA.name,e,t,r,n)};AA.clean=function(e,t,r,n){Hke.cleanBasePlot(AA.name,e,t,r,n)}});var Xke=Ae((Tvr,jke)=>{"use strict";jke.exports={attributes:M2(),supplyDefaults:E2().supplyDefaults,supplyLayoutDefaults:pke(),layoutAttributes:v6(),calc:TA().calc,crossTraceCalc:TA().crossTraceCalc,plot:_6().plot,style:Gke(),styleOne:q3(),moduleType:"trace",name:"pie",basePlotModule:Wke(),categories:["pie-like","pie","showLegend"],meta:{}}});var Yke=Ae((Avr,Zke)=>{"use strict";Zke.exports=Xke()});var Jke=Ae(SA=>{"use strict";var Kke=Cc();SA.name="sunburst";SA.plot=function(e,t,r,n){Kke.plotBasePlot(SA.name,e,t,r,n)};SA.clean=function(e,t,r,n){Kke.cleanBasePlot(SA.name,e,t,r,n)}});var kj=Ae((Mvr,$ke)=>{"use strict";$ke.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}});var L4=Ae((Evr,tCe)=>{"use strict";var OLt=Gf(),{hovertemplateAttrs:qLt,texttemplateAttrs:NLt,templatefallbackAttrs:Qke}=Ff(),ULt=nc(),VLt=zc().attributes,Xg=M2(),eCe=kj(),C4=Su().extendFlat,GLt=Id().pattern;tCe.exports={labels:{valType:"data_array",editType:"calc"},parents:{valType:"data_array",editType:"calc"},values:{valType:"data_array",editType:"calc"},branchvalues:{valType:"enumerated",values:["remainder","total"],dflt:"remainder",editType:"calc"},count:{valType:"flaglist",flags:["branches","leaves"],dflt:"leaves",editType:"calc"},level:{valType:"any",editType:"plot",anim:!0},maxdepth:{valType:"integer",editType:"plot",dflt:-1},marker:C4({colors:{valType:"data_array",editType:"calc"},line:{color:C4({},Xg.marker.line.color,{dflt:null}),width:C4({},Xg.marker.line.width,{dflt:1}),editType:"calc"},pattern:GLt,editType:"calc"},ULt("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:Xg.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:NLt({editType:"plot"},{keys:eCe.eventDataKeys.concat(["label","value"])}),texttemplatefallback:Qke({editType:"plot"}),hovertext:Xg.hovertext,hoverinfo:C4({},OLt.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:qLt({},{keys:eCe.eventDataKeys}),hovertemplatefallback:Qke(),textfont:Xg.textfont,insidetextorientation:Xg.insidetextorientation,insidetextfont:Xg.insidetextfont,outsidetextfont:C4({},Xg.outsidetextfont,{}),rotation:{valType:"angle",dflt:0,editType:"plot"},sort:Xg.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)"},editType:"calc"},domain:VLt({name:"sunburst",trace:!0,editType:"calc"})}});var Cj=Ae((kvr,rCe)=>{"use strict";rCe.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var oCe=Ae((Cvr,aCe)=>{"use strict";var iCe=ei(),HLt=L4(),WLt=zc().defaults,jLt=r0().handleText,XLt=E2().handleMarkerDefaults,nCe=_c(),ZLt=nCe.hasColorscale,YLt=nCe.handleDefaults;aCe.exports=function(t,r,n,i){function a(h,d){return iCe.coerce(t,r,HLt,h,d)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var u=a("values");u&&u.length?a("branchvalues"):a("count"),a("level"),a("maxdepth"),XLt(t,r,i,a);var l=r._hasColorscale=ZLt(t,"marker","colors")||(t.marker||{}).coloraxis;l&&YLt(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",l?1:.7);var f=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",iCe.isArrayOrTypedArray(f)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var c="auto";jLt(t,r,i,a,c,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("insidetextorientation"),a("sort"),a("rotation"),a("root.color"),WLt(r,i,a),r._length=null}});var lCe=Ae((Lvr,sCe)=>{"use strict";var KLt=ei(),JLt=Cj();sCe.exports=function(t,r){function n(i,a){return KLt.coerce(t,r,JLt,i,a)}n("sunburstcolorway",r.colorway),n("extendsunburstcolors")}});var P4=Ae((x6,uCe)=>{(function(e,t){typeof x6=="object"&&typeof uCe!="undefined"?t(x6):(e=e||self,t(e.d3=e.d3||{}))})(x6,function(e){"use strict";function t(Ie,Fe){return Ie.parent===Fe.parent?1:2}function r(Ie){return Ie.reduce(n,0)/Ie.length}function n(Ie,Fe){return Ie+Fe.x}function i(Ie){return 1+Ie.reduce(a,0)}function a(Ie,Fe){return Math.max(Ie,Fe.y)}function o(Ie){for(var Fe;Fe=Ie.children;)Ie=Fe[0];return Ie}function s(Ie){for(var Fe;Fe=Ie.children;)Ie=Fe[Fe.length-1];return Ie}function u(){var Ie=t,Fe=1,ft=1,ge=!1;function fe(pe){var dt,Pt=0;pe.eachAfter(function(Er){var Rr=Er.children;Rr?(Er.x=r(Rr),Er.y=i(Rr)):(Er.x=dt?Pt+=Ie(Er,dt):0,Er.y=0,dt=Er)});var zt=o(pe),rr=s(pe),Gr=zt.x-Ie(zt,rr)/2,Br=rr.x+Ie(rr,zt)/2;return pe.eachAfter(ge?function(Er){Er.x=(Er.x-pe.x)*Fe,Er.y=(pe.y-Er.y)*ft}:function(Er){Er.x=(Er.x-Gr)/(Br-Gr)*Fe,Er.y=(1-(pe.y?Er.y/pe.y:1))*ft})}return fe.separation=function(pe){return arguments.length?(Ie=pe,fe):Ie},fe.size=function(pe){return arguments.length?(ge=!1,Fe=+pe[0],ft=+pe[1],fe):ge?null:[Fe,ft]},fe.nodeSize=function(pe){return arguments.length?(ge=!0,Fe=+pe[0],ft=+pe[1],fe):ge?[Fe,ft]:null},fe}function l(Ie){var Fe=0,ft=Ie.children,ge=ft&&ft.length;if(!ge)Fe=1;else for(;--ge>=0;)Fe+=ft[ge].value;Ie.value=Fe}function f(){return this.eachAfter(l)}function c(Ie){var Fe=this,ft,ge=[Fe],fe,pe,dt;do for(ft=ge.reverse(),ge=[];Fe=ft.pop();)if(Ie(Fe),fe=Fe.children,fe)for(pe=0,dt=fe.length;pe=0;--fe)ft.push(ge[fe]);return this}function d(Ie){for(var Fe=this,ft=[Fe],ge=[],fe,pe,dt;Fe=ft.pop();)if(ge.push(Fe),fe=Fe.children,fe)for(pe=0,dt=fe.length;pe=0;)ft+=ge[fe].value;Fe.value=ft})}function _(Ie){return this.eachBefore(function(Fe){Fe.children&&Fe.children.sort(Ie)})}function b(Ie){for(var Fe=this,ft=v(Fe,Ie),ge=[Fe];Fe!==ft;)Fe=Fe.parent,ge.push(Fe);for(var fe=ge.length;Ie!==ft;)ge.splice(fe,0,Ie),Ie=Ie.parent;return ge}function v(Ie,Fe){if(Ie===Fe)return Ie;var ft=Ie.ancestors(),ge=Fe.ancestors(),fe=null;for(Ie=ft.pop(),Fe=ge.pop();Ie===Fe;)fe=Ie,Ie=ft.pop(),Fe=ge.pop();return fe}function k(){for(var Ie=this,Fe=[Ie];Ie=Ie.parent;)Fe.push(Ie);return Fe}function E(){var Ie=[];return this.each(function(Fe){Ie.push(Fe)}),Ie}function A(){var Ie=[];return this.eachBefore(function(Fe){Fe.children||Ie.push(Fe)}),Ie}function L(){var Ie=this,Fe=[];return Ie.each(function(ft){ft!==Ie&&Fe.push({source:ft.parent,target:ft})}),Fe}function x(Ie,Fe){var ft=new T(Ie),ge=+Ie.value&&(ft.value=Ie.value),fe,pe=[ft],dt,Pt,zt,rr;for(Fe==null&&(Fe=M);fe=pe.pop();)if(ge&&(fe.value=+fe.data.value),(Pt=Fe(fe.data))&&(rr=Pt.length))for(fe.children=new Array(rr),zt=rr-1;zt>=0;--zt)pe.push(dt=fe.children[zt]=new T(Pt[zt])),dt.parent=fe,dt.depth=fe.depth+1;return ft.eachBefore(P)}function C(){return x(this).eachBefore(m)}function M(Ie){return Ie.children}function m(Ie){Ie.data=Ie.data.data}function P(Ie){var Fe=0;do Ie.height=Fe;while((Ie=Ie.parent)&&Ie.height<++Fe)}function T(Ie){this.data=Ie,this.depth=this.height=0,this.parent=null}T.prototype=x.prototype={constructor:T,count:f,each:c,eachAfter:d,eachBefore:h,sum:p,sort:_,path:b,ancestors:k,descendants:E,leaves:A,links:L,copy:C};var B=Array.prototype.slice;function F(Ie){for(var Fe=Ie.length,ft,ge;Fe;)ge=Math.random()*Fe--|0,ft=Ie[Fe],Ie[Fe]=Ie[ge],Ie[ge]=ft;return Ie}function U(Ie){for(var Fe=0,ft=(Ie=F(B.call(Ie))).length,ge=[],fe,pe;Fe0&&ft*ft>ge*ge+fe*fe}function N(Ie,Fe){for(var ft=0;ftzt?(fe=(rr+zt-pe)/(2*rr),Pt=Math.sqrt(Math.max(0,zt/rr-fe*fe)),ft.x=Ie.x-fe*ge-Pt*dt,ft.y=Ie.y-fe*dt+Pt*ge):(fe=(rr+pe-zt)/(2*rr),Pt=Math.sqrt(Math.max(0,pe/rr-fe*fe)),ft.x=Fe.x+fe*ge-Pt*dt,ft.y=Fe.y+fe*dt+Pt*ge)):(ft.x=Fe.x+ft.r,ft.y=Fe.y)}function Ce(Ie,Fe){var ft=Ie.r+Fe.r-1e-6,ge=Fe.x-Ie.x,fe=Fe.y-Ie.y;return ft>0&&ft*ft>ge*ge+fe*fe}function de(Ie){var Fe=Ie._,ft=Ie.next._,ge=Fe.r+ft.r,fe=(Fe.x*ft.r+ft.x*Fe.r)/ge,pe=(Fe.y*ft.r+ft.y*Fe.r)/ge;return fe*fe+pe*pe}function te(Ie){this._=Ie,this.next=null,this.previous=null}function ke(Ie){if(!(fe=Ie.length))return 0;var Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br;if(Fe=Ie[0],Fe.x=0,Fe.y=0,!(fe>1))return Fe.r;if(ft=Ie[1],Fe.x=-ft.r,ft.x=Fe.r,ft.y=0,!(fe>2))return Fe.r+ft.r;ze(ft,Fe,ge=Ie[2]),Fe=new te(Fe),ft=new te(ft),ge=new te(ge),Fe.next=ge.previous=ft,ft.next=Fe.previous=ge,ge.next=ft.previous=Fe;e:for(Pt=3;Pt0)throw new Error("cycle");return Pt}return ft.id=function(ge){return arguments.length?(Ie=Ue(ge),ft):Ie},ft.parentId=function(ge){return arguments.length?(Fe=Ue(ge),ft):Fe},ft}function Te(Ie,Fe){return Ie.parent===Fe.parent?1:2}function ot(Ie){var Fe=Ie.children;return Fe?Fe[0]:Ie.t}function Tt(Ie){var Fe=Ie.children;return Fe?Fe[Fe.length-1]:Ie.t}function vt(Ie,Fe,ft){var ge=ft/(Fe.i-Ie.i);Fe.c-=ge,Fe.s+=ft,Ie.c+=ge,Fe.z+=ft,Fe.m+=ft}function Ye(Ie){for(var Fe=0,ft=0,ge=Ie.children,fe=ge.length,pe;--fe>=0;)pe=ge[fe],pe.z+=Fe,pe.m+=Fe,Fe+=pe.s+(ft+=pe.c)}function He(Ie,Fe,ft){return Ie.a.parent===Fe.parent?Ie.a:ft}function it(Ie,Fe){this._=Ie,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=Fe}it.prototype=Object.create(T.prototype);function et(Ie){for(var Fe=new it(Ie,0),ft,ge=[Fe],fe,pe,dt,Pt;ft=ge.pop();)if(pe=ft._.children)for(ft.children=new Array(Pt=pe.length),dt=Pt-1;dt>=0;--dt)ge.push(fe=ft.children[dt]=new it(pe[dt],dt)),fe.parent=ft;return(Fe.parent=new it(null,0)).children=[Fe],Fe}function It(){var Ie=Te,Fe=1,ft=1,ge=null;function fe(rr){var Gr=et(rr);if(Gr.eachAfter(pe),Gr.parent.m=-Gr.z,Gr.eachBefore(dt),ge)rr.eachBefore(zt);else{var Br=rr,Er=rr,Rr=rr;rr.eachBefore(function(Qi){Qi.xEr.x&&(Er=Qi),Qi.depth>Rr.depth&&(Rr=Qi)});var pi=Br===Er?1:Ie(Br,Er)/2,Di=pi-Br.x,ni=Fe/(Er.x+pi+Di),$i=ft/(Rr.depth||1);rr.eachBefore(function(Qi){Qi.x=(Qi.x+Di)*ni,Qi.y=Qi.depth*$i})}return rr}function pe(rr){var Gr=rr.children,Br=rr.parent.children,Er=rr.i?Br[rr.i-1]:null;if(Gr){Ye(rr);var Rr=(Gr[0].z+Gr[Gr.length-1].z)/2;Er?(rr.z=Er.z+Ie(rr._,Er._),rr.m=rr.z-Rr):rr.z=Rr}else Er&&(rr.z=Er.z+Ie(rr._,Er._));rr.parent.A=Pt(rr,Er,rr.parent.A||Br[0])}function dt(rr){rr._.x=rr.z+rr.parent.m,rr.m+=rr.parent.m}function Pt(rr,Gr,Br){if(Gr){for(var Er=rr,Rr=rr,pi=Gr,Di=Er.parent.children[0],ni=Er.m,$i=Rr.m,Qi=pi.m,si=Di.m,Ai;pi=Tt(pi),Er=ot(Er),pi&&Er;)Di=ot(Di),Rr=Tt(Rr),Rr.a=rr,Ai=pi.z+Qi-Er.z-ni+Ie(pi._,Er._),Ai>0&&(vt(He(pi,rr,Br),rr,Ai),ni+=Ai,$i+=Ai),Qi+=pi.m,ni+=Er.m,si+=Di.m,$i+=Rr.m;pi&&!Tt(Rr)&&(Rr.t=pi,Rr.m+=Qi-$i),Er&&!ot(Di)&&(Di.t=Er,Di.m+=ni-si,Br=rr)}return Br}function zt(rr){rr.x*=Fe,rr.y=rr.depth*ft}return fe.separation=function(rr){return arguments.length?(Ie=rr,fe):Ie},fe.size=function(rr){return arguments.length?(ge=!1,Fe=+rr[0],ft=+rr[1],fe):ge?null:[Fe,ft]},fe.nodeSize=function(rr){return arguments.length?(ge=!0,Fe=+rr[0],ft=+rr[1],fe):ge?[Fe,ft]:null},fe}function Yt(Ie,Fe,ft,ge,fe){for(var pe=Ie.children,dt,Pt=-1,zt=pe.length,rr=Ie.value&&(fe-ft)/Ie.value;++PtQi&&(Qi=rr),Rt=ni*ni*Ni,si=Math.max(Qi/Rt,Rt/$i),si>Ai){ni-=rr;break}Ai=si}dt.push(zt={value:ni,dice:Rr1?ge:1)},ft}(cr);function Ut(){var Ie=yr,Fe=!1,ft=1,ge=1,fe=[0],pe=De,dt=De,Pt=De,zt=De,rr=De;function Gr(Er){return Er.x0=Er.y0=0,Er.x1=ft,Er.y1=ge,Er.eachBefore(Br),fe=[0],Fe&&Er.eachBefore(Nt),Er}function Br(Er){var Rr=fe[Er.depth],pi=Er.x0+Rr,Di=Er.y0+Rr,ni=Er.x1-Rr,$i=Er.y1-Rr;ni=Er-1){var Qi=pe[Br];Qi.x0=pi,Qi.y0=Di,Qi.x1=ni,Qi.y1=$i;return}for(var si=rr[Br],Ai=Rr/2+si,Ni=Br+1,Rt=Er-1;Ni>>1;rr[yt]$i-Di){var xr=(pi*Wt+ni*Gt)/Rr;Gr(Br,Ni,Gt,pi,Di,xr,$i),Gr(Ni,Er,Wt,xr,Di,ni,$i)}else{var Lr=(Di*Wt+$i*Gt)/Rr;Gr(Br,Ni,Gt,pi,Di,ni,Lr),Gr(Ni,Er,Wt,pi,Lr,ni,$i)}}}function xe(Ie,Fe,ft,ge,fe){(Ie.depth&1?Yt:at)(Ie,Fe,ft,ge,fe)}var Oe=function Ie(Fe){function ft(ge,fe,pe,dt,Pt){if((zt=ge._squarify)&&zt.ratio===Fe)for(var zt,rr,Gr,Br,Er=-1,Rr,pi=zt.length,Di=ge.value;++Er1?ge:1)},ft}(cr);e.cluster=u,e.hierarchy=x,e.pack=ce,e.packEnclose=U,e.packSiblings=Ee,e.partition=Ke,e.stratify=Et,e.tree=It,e.treemap=Ut,e.treemapBinary=Re,e.treemapDice=at,e.treemapResquarify=Oe,e.treemapSlice=Yt,e.treemapSliceDice=xe,e.treemapSquarify=yr,Object.defineProperty(e,"__esModule",{value:!0})})});var I4=Ae(z4=>{"use strict";var fCe=P4(),$Lt=ku(),MA=ei(),QLt=_c().makeColorScaleFuncFromTrace,ePt=TA().makePullColorFn,tPt=TA().generateExtendedColors,rPt=_c().calc,iPt=rf().ALMOST_EQUAL,nPt={},aPt={},oPt={};z4.calc=function(e,t){var r=e._fullLayout,n=t.ids,i=MA.isArrayOrTypedArray(n),a=t.labels,o=t.parents,s=t.values,u=MA.isArrayOrTypedArray(s),l=[],f={},c={},h=function(W,N){f[W]?f[W].push(N):f[W]=[N],c[N]=1},d=function(W){return W||typeof W=="number"},p=function(W){return!u||$Lt(s[W])&&s[W]>=0},_,b,v;i?(_=Math.min(n.length,o.length),b=function(W){return d(n[W])&&p(W)},v=function(W){return String(n[W])}):(_=Math.min(a.length,o.length),b=function(W){return d(a[W])&&p(W)},v=function(W){return String(a[W])}),u&&(_=Math.min(_,s.length));for(var k=0;k<_;k++)if(b(k)){var E=v(k),A=d(o[k])?String(o[k]):"",L={i:k,id:E,pid:A,label:d(a[k])?String(a[k]):""};u&&(L.v=+s[k]),l.push(L),h(A,E)}if(f[""]){if(f[""].length>1){for(var M=MA.randstr(),m=0;m{});function Gy(){}function dCe(){return this.rgb().formatHex()}function pPt(){return this.rgb().formatHex8()}function vPt(){return xCe(this).formatHsl()}function pCe(){return this.rgb().formatRgb()}function W_(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=sPt.exec(e))?(r=t[1].length,t=parseInt(t[1],16),r===6?vCe(t):r===3?new xd(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):r===8?w6(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?w6(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=lPt.exec(e))?new xd(t[1],t[2],t[3],1):(t=uPt.exec(e))?new xd(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=fPt.exec(e))?w6(t[1],t[2],t[3],t[4]):(t=cPt.exec(e))?w6(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=hPt.exec(e))?gCe(t[1],t[2]/100,t[3]/100,1):(t=dPt.exec(e))?gCe(t[1],t[2]/100,t[3]/100,t[4]):hCe.hasOwnProperty(e)?vCe(hCe[e]):e==="transparent"?new xd(NaN,NaN,NaN,0):null}function vCe(e){return new xd(e>>16&255,e>>8&255,e&255,1)}function w6(e,t,r,n){return n<=0&&(e=t=r=NaN),new xd(e,t,r,n)}function D4(e){return e instanceof Gy||(e=W_(e)),e?(e=e.rgb(),new xd(e.r,e.g,e.b,e.opacity)):new xd}function kA(e,t,r,n){return arguments.length===1?D4(e):new xd(e,t,r,n==null?1:n)}function xd(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}function mCe(){return`#${k2(this.r)}${k2(this.g)}${k2(this.b)}`}function mPt(){return`#${k2(this.r)}${k2(this.g)}${k2(this.b)}${k2((isNaN(this.opacity)?1:this.opacity)*255)}`}function yCe(){let e=A6(this.opacity);return`${e===1?"rgb(":"rgba("}${C2(this.r)}, ${C2(this.g)}, ${C2(this.b)}${e===1?")":`, ${e})`}`}function A6(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function C2(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function k2(e){return e=C2(e),(e<16?"0":"")+e.toString(16)}function gCe(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Zm(e,t,r,n)}function xCe(e){if(e instanceof Zm)return new Zm(e.h,e.s,e.l,e.opacity);if(e instanceof Gy||(e=W_(e)),!e)return new Zm;if(e instanceof Zm)return e;e=e.rgb();var t=e.r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=NaN,s=a-i,u=(a+i)/2;return s?(t===a?o=(r-n)/s+(r0&&u<1?0:o,new Zm(o,s,u,e.opacity)}function F4(e,t,r,n){return arguments.length===1?xCe(e):new Zm(e,t,r,n==null?1:n)}function Zm(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}function _Ce(e){return e=(e||0)%360,e<0?e+360:e}function T6(e){return Math.max(0,Math.min(1,e||0))}function Lj(e,t,r){return(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)*255}var H_,L2,EA,R4,Vy,sPt,lPt,uPt,fPt,cPt,hPt,dPt,hCe,S6=tc(()=>{b6();H_=.7,L2=1/H_,EA="\\s*([+-]?\\d+)\\s*",R4="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Vy="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",sPt=/^#([0-9a-f]{3,8})$/,lPt=new RegExp(`^rgb\\(${EA},${EA},${EA}\\)$`),uPt=new RegExp(`^rgb\\(${Vy},${Vy},${Vy}\\)$`),fPt=new RegExp(`^rgba\\(${EA},${EA},${EA},${R4}\\)$`),cPt=new RegExp(`^rgba\\(${Vy},${Vy},${Vy},${R4}\\)$`),hPt=new RegExp(`^hsl\\(${R4},${Vy},${Vy}\\)$`),dPt=new RegExp(`^hsla\\(${R4},${Vy},${Vy},${R4}\\)$`),hCe={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};Zg(Gy,W_,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:dCe,formatHex:dCe,formatHex8:pPt,formatHsl:vPt,formatRgb:pCe,toString:pCe});Zg(xd,kA,G_(Gy,{brighter(e){return e=e==null?L2:Math.pow(L2,e),new xd(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new xd(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new xd(C2(this.r),C2(this.g),C2(this.b),A6(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:mCe,formatHex:mCe,formatHex8:mPt,formatRgb:yCe,toString:yCe}));Zg(Zm,F4,G_(Gy,{brighter(e){return e=e==null?L2:Math.pow(L2,e),new Zm(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new Zm(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new xd(Lj(e>=240?e-240:e+120,i,n),Lj(e,i,n),Lj(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new Zm(_Ce(this.h),T6(this.s),T6(this.l),A6(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=A6(this.opacity);return`${e===1?"hsl(":"hsla("}${_Ce(this.h)}, ${T6(this.s)*100}%, ${T6(this.l)*100}%${e===1?")":`, ${e})`}`}}))});var M6,E6,Pj=tc(()=>{M6=Math.PI/180,E6=180/Math.PI});function MCe(e){if(e instanceof Hy)return new Hy(e.l,e.a,e.b,e.opacity);if(e instanceof Yg)return ECe(e);e instanceof xd||(e=D4(e));var t=Dj(e.r),r=Dj(e.g),n=Dj(e.b),i=zj((.2225045*t+.7168786*r+.0606169*n)/wCe),a,o;return t===r&&r===n?a=o=i:(a=zj((.4360747*t+.3850649*r+.1430804*n)/bCe),o=zj((.0139322*t+.0971045*r+.7141733*n)/TCe)),new Hy(116*i-16,500*(a-i),200*(i-o),e.opacity)}function LA(e,t,r,n){return arguments.length===1?MCe(e):new Hy(e,t,r,n==null?1:n)}function Hy(e,t,r,n){this.l=+e,this.a=+t,this.b=+r,this.opacity=+n}function zj(e){return e>yPt?Math.pow(e,1/3):e/SCe+ACe}function Ij(e){return e>CA?e*e*e:SCe*(e-ACe)}function Rj(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function Dj(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function gPt(e){if(e instanceof Yg)return new Yg(e.h,e.c,e.l,e.opacity);if(e instanceof Hy||(e=MCe(e)),e.a===0&&e.b===0)return new Yg(NaN,0{b6();S6();Pj();k6=18,bCe=.96422,wCe=1,TCe=.82521,ACe=4/29,CA=6/29,SCe=3*CA*CA,yPt=CA*CA*CA;Zg(Hy,LA,G_(Gy,{brighter(e){return new Hy(this.l+k6*(e==null?1:e),this.a,this.b,this.opacity)},darker(e){return new Hy(this.l-k6*(e==null?1:e),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,r=isNaN(this.b)?e:e-this.b/200;return t=bCe*Ij(t),e=wCe*Ij(e),r=TCe*Ij(r),new xd(Rj(3.1338561*t-1.6168667*e-.4906146*r),Rj(-.9787684*t+1.9161415*e+.033454*r),Rj(.0719453*t-.2289914*e+1.4052427*r),this.opacity)}}));Zg(Yg,B4,G_(Gy,{brighter(e){return new Yg(this.h,this.c,this.l+k6*(e==null?1:e),this.opacity)},darker(e){return new Yg(this.h,this.c,this.l-k6*(e==null?1:e),this.opacity)},rgb(){return ECe(this).rgb()}}))});function _Pt(e){if(e instanceof P2)return new P2(e.h,e.s,e.l,e.opacity);e instanceof xd||(e=D4(e));var t=e.r/255,r=e.g/255,n=e.b/255,i=(PCe*n+CCe*t-LCe*r)/(PCe+CCe-LCe),a=n-i,o=(O4*(r-i)-Bj*a)/C6,s=Math.sqrt(o*o+a*a)/(O4*i*(1-i)),u=s?Math.atan2(o,a)*E6-120:NaN;return new P2(u<0?u+360:u,s,i,e.opacity)}function PA(e,t,r,n){return arguments.length===1?_Pt(e):new P2(e,t,r,n==null?1:n)}function P2(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}var zCe,Fj,Bj,C6,O4,CCe,LCe,PCe,ICe=tc(()=>{b6();S6();Pj();zCe=-.14861,Fj=1.78277,Bj=-.29227,C6=-.90649,O4=1.97294,CCe=O4*C6,LCe=O4*Fj,PCe=Fj*Bj-C6*zCe;Zg(P2,PA,G_(Gy,{brighter(e){return e=e==null?L2:Math.pow(L2,e),new P2(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new P2(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=isNaN(this.h)?0:(this.h+120)*M6,t=+this.l,r=isNaN(this.s)?0:this.s*t*(1-t),n=Math.cos(e),i=Math.sin(e);return new xd(255*(t+r*(zCe*n+Fj*i)),255*(t+r*(Bj*n+C6*i)),255*(t+r*(O4*n)),this.opacity)}}))});var z2=tc(()=>{S6();kCe();ICe()});function Oj(e,t,r,n,i){var a=e*e,o=a*e;return((1-3*e+3*a-o)*t+(4-6*a+3*o)*r+(1+3*e+3*a-3*o)*n+o*i)/6}function L6(e){var t=e.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,t-1):Math.floor(r*t),i=e[n],a=e[n+1],o=n>0?e[n-1]:2*i-a,s=n{});function z6(e){var t=e.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*t),i=e[(n+t-1)%t],a=e[n%t],o=e[(n+1)%t],s=e[(n+2)%t];return Oj((r-n/t)*t,i,a,o,s)}}var qj=tc(()=>{P6()});var zA,Nj=tc(()=>{zA=e=>()=>e});function RCe(e,t){return function(r){return e+r*t}}function xPt(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}function j_(e,t){var r=t-e;return r?RCe(e,r>180||r<-180?r-360*Math.round(r/360):r):zA(isNaN(e)?t:e)}function DCe(e){return(e=+e)==1?ph:function(t,r){return r-t?xPt(t,r,e):zA(isNaN(t)?r:t)}}function ph(e,t){var r=t-e;return r?RCe(e,r):zA(isNaN(e)?t:e)}var I2=tc(()=>{Nj()});function FCe(e){return function(t){var r=t.length,n=new Array(r),i=new Array(r),a=new Array(r),o,s;for(o=0;o{z2();P6();qj();I2();q4=function e(t){var r=DCe(t);function n(i,a){var o=r((i=kA(i)).r,(a=kA(a)).r),s=r(i.g,a.g),u=r(i.b,a.b),l=ph(i.opacity,a.opacity);return function(f){return i.r=o(f),i.g=s(f),i.b=u(f),i.opacity=l(f),i+""}}return n.gamma=e,n}(1);BCe=FCe(L6),OCe=FCe(z6)});function IA(e,t){t||(t=[]);var r=e?Math.min(t.length,e.length):0,n=t.slice(),i;return function(a){for(i=0;i{});function qCe(e,t){return(I6(t)?IA:Vj)(e,t)}function Vj(e,t){var r=t?t.length:0,n=e?Math.min(r,e.length):0,i=new Array(n),a=new Array(r),o;for(o=0;o{N4();R6()});function D6(e,t){var r=new Date;return e=+e,t=+t,function(n){return r.setTime(e*(1-n)+t*n),r}}var Hj=tc(()=>{});function Fv(e,t){return e=+e,t=+t,function(r){return e*(1-r)+t*r}}var U4=tc(()=>{});function F6(e,t){var r={},n={},i;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(i in t)i in e?r[i]=X_(e[i],t[i]):n[i]=t[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var Wj=tc(()=>{N4()});function bPt(e){return function(){return e}}function wPt(e){return function(t){return e(t)+""}}function B6(e,t){var r=Xj.lastIndex=jj.lastIndex=0,n,i,a,o=-1,s=[],u=[];for(e=e+"",t=t+"";(n=Xj.exec(e))&&(i=jj.exec(t));)(a=i.index)>r&&(a=t.slice(r,a),s[o]?s[o]+=a:s[++o]=a),(n=n[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,u.push({i:o,x:Fv(n,i)})),r=jj.lastIndex;return r{U4();Xj=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,jj=new RegExp(Xj.source,"g")});function X_(e,t){var r=typeof t,n;return t==null||r==="boolean"?zA(t):(r==="number"?Fv:r==="string"?(n=W_(t))?(t=n,q4):B6:t instanceof W_?q4:t instanceof Date?D6:I6(t)?IA:Array.isArray(t)?Vj:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?F6:Fv)(e,t)}var N4=tc(()=>{z2();Uj();Gj();Hj();U4();Wj();Zj();Nj();R6()});function NCe(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}}var UCe=tc(()=>{});function VCe(e,t){var r=j_(+e,+t);return function(n){var i=r(n);return i-360*Math.floor(i/360)}}var GCe=tc(()=>{I2()});function HCe(e,t){return e=+e,t=+t,function(r){return Math.round(e*(1-r)+t*r)}}var WCe=tc(()=>{});function Yj(e,t,r,n,i,a){var o,s,u;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(u=e*r+t*n)&&(r-=e*u,n-=t*u),(s=Math.sqrt(r*r+n*n))&&(r/=s,n/=s,u/=s),e*n{jCe=180/Math.PI,O6={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}});function ZCe(e){let t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?O6:Yj(t.a,t.b,t.c,t.d,t.e,t.f)}function YCe(e){return e==null?O6:(q6||(q6=document.createElementNS("http://www.w3.org/2000/svg","g")),q6.setAttribute("transform",e),(e=q6.transform.baseVal.consolidate())?(e=e.matrix,Yj(e.a,e.b,e.c,e.d,e.e,e.f)):O6)}var q6,KCe=tc(()=>{XCe()});function JCe(e,t,r,n){function i(l){return l.length?l.pop()+" ":""}function a(l,f,c,h,d,p){if(l!==c||f!==h){var _=d.push("translate(",null,t,null,r);p.push({i:_-4,x:Fv(l,c)},{i:_-2,x:Fv(f,h)})}else(c||h)&&d.push("translate("+c+t+h+r)}function o(l,f,c,h){l!==f?(l-f>180?f+=360:f-l>180&&(l+=360),h.push({i:c.push(i(c)+"rotate(",null,n)-2,x:Fv(l,f)})):f&&c.push(i(c)+"rotate("+f+n)}function s(l,f,c,h){l!==f?h.push({i:c.push(i(c)+"skewX(",null,n)-2,x:Fv(l,f)}):f&&c.push(i(c)+"skewX("+f+n)}function u(l,f,c,h,d,p){if(l!==c||f!==h){var _=d.push(i(d)+"scale(",null,",",null,")");p.push({i:_-4,x:Fv(l,c)},{i:_-2,x:Fv(f,h)})}else(c!==1||h!==1)&&d.push(i(d)+"scale("+c+","+h+")")}return function(l,f){var c=[],h=[];return l=e(l),f=e(f),a(l.translateX,l.translateY,f.translateX,f.translateY,c,h),o(l.rotate,f.rotate,c,h),s(l.skewX,f.skewX,c,h),u(l.scaleX,l.scaleY,f.scaleX,f.scaleY,c,h),l=f=null,function(d){for(var p=-1,_=h.length,b;++p<_;)c[(b=h[p]).i]=b.x(d);return c.join("")}}}var $Ce,QCe,eLe=tc(()=>{U4();KCe();$Ce=JCe(ZCe,"px, ","px)","deg)"),QCe=JCe(YCe,", ",")",")")});function tLe(e){return((e=Math.exp(e))+1/e)/2}function APt(e){return((e=Math.exp(e))-1/e)/2}function SPt(e){return((e=Math.exp(2*e))-1)/(e+1)}var TPt,rLe,iLe=tc(()=>{TPt=1e-12;rLe=function e(t,r,n){function i(a,o){var s=a[0],u=a[1],l=a[2],f=o[0],c=o[1],h=o[2],d=f-s,p=c-u,_=d*d+p*p,b,v;if(_{z2();I2();aLe=nLe(j_),oLe=nLe(ph)});function Kj(e,t){var r=ph((e=LA(e)).l,(t=LA(t)).l),n=ph(e.a,t.a),i=ph(e.b,t.b),a=ph(e.opacity,t.opacity);return function(o){return e.l=r(o),e.a=n(o),e.b=i(o),e.opacity=a(o),e+""}}var lLe=tc(()=>{z2();I2()});function uLe(e){return function(t,r){var n=e((t=B4(t)).h,(r=B4(r)).h),i=ph(t.c,r.c),a=ph(t.l,r.l),o=ph(t.opacity,r.opacity);return function(s){return t.h=n(s),t.c=i(s),t.l=a(s),t.opacity=o(s),t+""}}}var fLe,cLe,hLe=tc(()=>{z2();I2();fLe=uLe(j_),cLe=uLe(ph)});function dLe(e){return function t(r){r=+r;function n(i,a){var o=e((i=PA(i)).h,(a=PA(a)).h),s=ph(i.s,a.s),u=ph(i.l,a.l),l=ph(i.opacity,a.opacity);return function(f){return i.h=o(f),i.s=s(f),i.l=u(Math.pow(f,r)),i.opacity=l(f),i+""}}return n.gamma=t,n}(1)}var pLe,vLe,mLe=tc(()=>{z2();I2();pLe=dLe(j_),vLe=dLe(ph)});function Jj(e,t){t===void 0&&(t=e,e=X_);for(var r=0,n=t.length-1,i=t[0],a=new Array(n<0?0:n);r{N4()});function gLe(e,t){for(var r=new Array(t),n=0;n{});var R2={};wee(R2,{interpolate:()=>X_,interpolateArray:()=>qCe,interpolateBasis:()=>L6,interpolateBasisClosed:()=>z6,interpolateCubehelix:()=>pLe,interpolateCubehelixLong:()=>vLe,interpolateDate:()=>D6,interpolateDiscrete:()=>NCe,interpolateHcl:()=>fLe,interpolateHclLong:()=>cLe,interpolateHsl:()=>aLe,interpolateHslLong:()=>oLe,interpolateHue:()=>VCe,interpolateLab:()=>Kj,interpolateNumber:()=>Fv,interpolateNumberArray:()=>IA,interpolateObject:()=>F6,interpolateRgb:()=>q4,interpolateRgbBasis:()=>BCe,interpolateRgbBasisClosed:()=>OCe,interpolateRound:()=>HCe,interpolateString:()=>B6,interpolateTransformCss:()=>$Ce,interpolateTransformSvg:()=>QCe,interpolateZoom:()=>rLe,piecewise:()=>Jj,quantize:()=>gLe});var D2=tc(()=>{N4();Gj();P6();qj();Hj();UCe();GCe();U4();R6();Wj();WCe();Zj();eLe();iLe();Uj();sLe();lLe();hLe();mLe();yLe();_Le()});var N6=Ae((xmr,xLe)=>{"use strict";var MPt=Mu(),EPt=jl();xLe.exports=function(t,r,n,i,a){var o=r.data.data,s=o.i,u=a||o.color;if(s>=0){r.i=o.i;var l=n.marker;l.pattern?(!l.colors||!l.pattern.shape)&&(l.color=u,r.color=u):(l.color=u,r.color=u),MPt.pointStyle(t,n,i,r)}else EPt.fill(t,u)}});var $j=Ae((bmr,SLe)=>{"use strict";var bLe=Jl(),wLe=jl(),TLe=ei(),kPt=Tp().resizeText,CPt=N6();function LPt(e){var t=e._fullLayout._sunburstlayer.selectAll(".trace");kPt(e,t,"sunburst"),t.each(function(r){var n=bLe.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){bLe.select(this).call(ALe,o,a,e)})})}function ALe(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=TLe.castOption(r,o,"marker.line.color")||wLe.defaultLine,u=TLe.castOption(r,o,"marker.line.width")||0;e.call(CPt,t,r,n).style("stroke-width",u).call(wLe.stroke,s).style("opacity",a?r.leaf.opacity:null)}SLe.exports={style:LPt,styleOne:ALe}});var Kg=Ae(yf=>{"use strict";var F2=ei(),PPt=jl(),zPt=Sm(),MLe=l_();yf.findEntryWithLevel=function(e,t){var r;return t&&e.eachAfter(function(n){if(yf.getPtId(n)===t)return r=n.copy()}),r||e};yf.findEntryWithChild=function(e,t){var r;return e.eachAfter(function(n){for(var i=n.children||[],a=0;a0)};yf.getMaxDepth=function(e){return e.maxdepth>=0?e.maxdepth:1/0};yf.isHeader=function(e,t){return!(yf.isLeaf(e)||e.depth===t._maxDepth-1)};function ELe(e){return e.data.data.pid}yf.getParent=function(e,t){return yf.findEntryWithLevel(e,ELe(t))};yf.listPath=function(e,t){var r=e.parent;if(!r)return[];var n=t?[r.data[t]]:[r];return yf.listPath(r,t).concat(n)};yf.getPath=function(e){return yf.listPath(e,"label").join("/")+"/"};yf.formatValue=MLe.formatPieValue;yf.formatPercent=function(e,t){var r=F2.formatPercent(e,0);return r==="0%"&&(r=MLe.formatPiePercent(e,t)),r}});var H4=Ae((Tmr,LLe)=>{"use strict";var RA=Jl(),kLe=$l(),DPt=iv().appendArrayPointValue,V4=Xc(),CLe=ei(),FPt=_3(),ad=Kg(),BPt=l_(),OPt=BPt.formatPieValue;LLe.exports=function(t,r,n,i,a){var o=i[0],s=o.trace,u=o.hierarchy,l=s.type==="sunburst",f=s.type==="treemap"||s.type==="icicle";"_hasHoverLabel"in s||(s._hasHoverLabel=!1),"_hasHoverEvent"in s||(s._hasHoverEvent=!1);var c=function(p){var _=n._fullLayout;if(!(n._dragging||_.hovermode===!1)){var b=n._fullData[s.index],v=p.data.data,k=v.i,E=ad.isHierarchyRoot(p),A=ad.getParent(u,p),L=ad.getValue(p),x=function(ze){return CLe.castOption(b,k,ze)},C=x("hovertemplate"),M=V4.castHoverinfo(b,_,k),m=_.separators,P;if(C||M&&M!=="none"&&M!=="skip"){var T,B;l&&(T=o.cx+p.pxmid[0]*(1-p.rInscribed),B=o.cy+p.pxmid[1]*(1-p.rInscribed)),f&&(T=p._hoverX,B=p._hoverY);var F={},U=[],G=[],j=function(ze){return U.indexOf(ze)!==-1};M&&(U=M==="all"?b._module.attributes.hoverinfo.flags:M.split("+")),F.label=v.label,j("label")&&F.label&&G.push(F.label),v.hasOwnProperty("v")&&(F.value=v.v,F.valueLabel=OPt(F.value,m),j("value")&&G.push(F.valueLabel)),F.currentPath=p.currentPath=ad.getPath(p.data),j("current path")&&!E&&G.push(F.currentPath);var W,N=[],H=function(){N.indexOf(W)===-1&&(G.push(W),N.push(W))};F.percentParent=p.percentParent=L/ad.getValue(A),F.parent=p.parentString=ad.getPtLabel(A),j("percent parent")&&(W=ad.formatPercent(F.percentParent,m)+" of "+F.parent,H()),F.percentEntry=p.percentEntry=L/ad.getValue(r),F.entry=p.entry=ad.getPtLabel(r),j("percent entry")&&!E&&!p.onPathbar&&(W=ad.formatPercent(F.percentEntry,m)+" of "+F.entry,H()),F.percentRoot=p.percentRoot=L/ad.getValue(u),F.root=p.root=ad.getPtLabel(u),j("percent root")&&!E&&(W=ad.formatPercent(F.percentRoot,m)+" of "+F.root,H()),F.text=x("hovertext")||x("text"),j("text")&&(W=F.text,CLe.isValidTextValue(W)&&G.push(W)),P=[G4(p,b,a.eventDataKeys)];var re={trace:b,y:B,_x0:p._x0,_x1:p._x1,_y0:p._y0,_y1:p._y1,text:G.join("
"),name:C||j("name")?b.name:void 0,color:x("hoverlabel.bgcolor")||v.color,borderColor:x("hoverlabel.bordercolor"),fontFamily:x("hoverlabel.font.family"),fontSize:x("hoverlabel.font.size"),fontColor:x("hoverlabel.font.color"),fontWeight:x("hoverlabel.font.weight"),fontStyle:x("hoverlabel.font.style"),fontVariant:x("hoverlabel.font.variant"),nameLength:x("hoverlabel.namelength"),textAlign:x("hoverlabel.align"),hovertemplate:C,hovertemplateLabels:F,eventData:P};l&&(re.x0=T-p.rInscribed*p.rpx1,re.x1=T+p.rInscribed*p.rpx1,re.idealAlign=p.pxmid[0]<0?"left":"right"),f&&(re.x=T,re.idealAlign=T<0?"left":"right");var ae=[];V4.loneHover(re,{container:_._hoverlayer.node(),outerContainer:_._paper.node(),gd:n,inOut_bbox:ae}),P[0].bbox=ae[0],s._hasHoverLabel=!0}if(f){var be=t.select("path.surface");a.styleOne(be,p,b,n,{hovered:!0})}s._hasHoverEvent=!0,n.emit("plotly_hover",{points:P||[G4(p,b,a.eventDataKeys)],event:RA.event})}},h=function(p){var _=n._fullLayout,b=n._fullData[s.index],v=RA.select(this).datum();if(s._hasHoverEvent&&(p.originalEvent=RA.event,n.emit("plotly_unhover",{points:[G4(v,b,a.eventDataKeys)],event:RA.event}),s._hasHoverEvent=!1),s._hasHoverLabel&&(V4.loneUnhover(_._hoverlayer.node()),s._hasHoverLabel=!1),f){var k=t.select("path.surface");a.styleOne(k,v,b,n,{hovered:!1})}},d=function(p){var _=n._fullLayout,b=n._fullData[s.index],v=l&&(ad.isHierarchyRoot(p)||ad.isLeaf(p)),k=ad.getPtId(p),E=ad.isEntry(p)?ad.findEntryWithChild(u,k):ad.findEntryWithLevel(u,k),A=ad.getPtId(E),L={points:[G4(p,b,a.eventDataKeys)],event:RA.event};v||(L.nextLevel=A);var x=FPt.triggerHandler(n,"plotly_"+s.type+"click",L);if(x!==!1&&_.hovermode&&(n._hoverdata=[G4(p,b,a.eventDataKeys)],V4.click(n,RA.event)),!v&&x!==!1&&!n._dragging&&!n._transitioning){kLe.call("_storeDirectGUIEdit",b,_._tracePreGUI[b.uid],{level:b.level});var C={data:[{level:A}],traces:[s.index]},M={frame:{redraw:!1,duration:a.transitionTime},transition:{duration:a.transitionTime,easing:a.transitionEasing},mode:"immediate",fromcurrent:!0};V4.loneUnhover(_._hoverlayer.node()),kLe.call("animate",n,C,M)}};t.on("mouseover",c),t.on("mouseout",h),t.on("click",d)};function G4(e,t,r){for(var n=e.data.data,i={curveNumber:t.index,pointNumber:n.i,data:t._input,fullData:t},a=0;a{"use strict";var W4=Jl(),qPt=P4(),Ym=(D2(),ob(R2)).interpolate,PLe=Mu(),Mp=ei(),NPt=Xf(),DLe=Tp(),zLe=DLe.recordMinTextSize,UPt=DLe.clearMinTextSize,FLe=_6(),VPt=l_().getRotationAngle,GPt=FLe.computeTransform,HPt=FLe.transformInsideText,WPt=$j().styleOne,jPt=N0().resizeText,XPt=H4(),Qj=kj(),qf=Kg();U6.plot=function(e,t,r,n){var i=e._fullLayout,a=i._sunburstlayer,o,s,u=!r,l=!i.uniformtext.mode&&qf.hasTransition(r);if(UPt("sunburst",i),o=a.selectAll("g.trace.sunburst").data(t,function(c){return c[0].trace.uid}),o.enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),o.order(),l){n&&(s=n());var f=W4.transition().duration(r.duration).ease(r.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});f.each(function(){a.selectAll("g.trace").each(function(c){ILe(e,c,this,r)})})}else o.each(function(c){ILe(e,c,this,r)}),i.uniformtext.mode&&jPt(e,i._sunburstlayer.selectAll(".trace"),"sunburst");u&&o.exit().remove()};function ILe(e,t,r,n){var i=e._context.staticPlot,a=e._fullLayout,o=!a.uniformtext.mode&&qf.hasTransition(n),s=W4.select(r),u=s.selectAll("g.slice"),l=t[0],f=l.trace,c=l.hierarchy,h=qf.findEntryWithLevel(c,f.level),d=qf.getMaxDepth(f),p=a._size,_=f.domain,b=p.w*(_.x[1]-_.x[0]),v=p.h*(_.y[1]-_.y[0]),k=.5*Math.min(b,v),E=l.cx=p.l+p.w*(_.x[1]+_.x[0])/2,A=l.cy=p.t+p.h*(1-_.y[0])-v/2;if(!h)return u.remove();var L=null,x={};o&&u.each(function(de){x[qf.getPtId(de)]={rpx0:de.rpx0,rpx1:de.rpx1,x0:de.x0,x1:de.x1,transform:de.transform},!L&&qf.isEntry(de)&&(L=de)});var C=ZPt(h).descendants(),M=h.height+1,m=0,P=d;l.hasMultipleRoots&&qf.isHierarchyRoot(h)&&(C=C.slice(1),M-=1,m=1,P+=1),C=C.filter(function(de){return de.y1<=P});var T=VPt(f.rotation);T&&C.forEach(function(de){de.x0+=T,de.x1+=T});var B=Math.min(M,d),F=function(de){return(de-m)/B*k},U=function(de,te){return[de*Math.cos(te),-de*Math.sin(te)]},G=function(de){return Mp.pathAnnulus(de.rpx0,de.rpx1,de.x0,de.x1,E,A)},j=function(de){return E+RLe(de)[0]*(de.transform.rCenter||0)+(de.transform.x||0)},W=function(de){return A+RLe(de)[1]*(de.transform.rCenter||0)+(de.transform.y||0)};u=u.data(C,qf.getPtId),u.enter().append("g").classed("slice",!0),o?u.exit().transition().each(function(){var de=W4.select(this),te=de.select("path.surface");te.transition().attrTween("d",function(Ee){var Me=ae(Ee);return function(Ue){return G(Me(Ue))}});var ke=de.select("g.slicetext");ke.attr("opacity",0)}).remove():u.exit().remove(),u.order();var N=null;if(o&&L){var H=qf.getPtId(L);u.each(function(de){N===null&&qf.getPtId(de)===H&&(N=de.x1)})}var re=u;o&&(re=re.transition().each("end",function(){var de=W4.select(this);qf.setSliceCursor(de,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})})),re.each(function(de){var te=W4.select(this),ke=Mp.ensureSingle(te,"path","surface",function(qe){qe.style("pointer-events",i?"none":"all")});de.rpx0=F(de.y0),de.rpx1=F(de.y1),de.xmid=(de.x0+de.x1)/2,de.pxmid=U(de.rpx1,de.xmid),de.midangle=-(de.xmid-Math.PI/2),de.startangle=-(de.x0-Math.PI/2),de.stopangle=-(de.x1-Math.PI/2),de.halfangle=.5*Math.min(Mp.angleDelta(de.x0,de.x1)||Math.PI,Math.PI),de.ring=1-de.rpx0/de.rpx1,de.rInscribed=YPt(de,f),o?ke.transition().attrTween("d",function(qe){var ce=be(qe);return function(Je){return G(ce(Je))}}):ke.attr("d",G),te.call(XPt,h,e,t,{eventDataKeys:Qj.eventDataKeys,transitionTime:Qj.CLICK_TRANSITION_TIME,transitionEasing:Qj.CLICK_TRANSITION_EASING}).call(qf.setSliceCursor,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:e._transitioning}),ke.call(WPt,de,f,e);var Ee=Mp.ensureSingle(te,"g","slicetext"),Me=Mp.ensureSingle(Ee,"text","",function(qe){qe.attr("data-notex",1)}),Ue=Mp.ensureUniformFontSize(e,qf.determineTextFont(f,de,a.font));Me.text(U6.formatSliceLabel(de,h,f,t,a)).classed("slicetext",!0).attr("text-anchor","middle").call(PLe.font,Ue).call(NPt.convertToTspans,e);var De=PLe.bBox(Me.node());de.transform=HPt(De,de,l),de.transform.targetX=j(de),de.transform.targetY=W(de);var ye=function(qe,ce){var Je=qe.transform;return GPt(Je,ce),Je.fontSize=Ue.size,zLe(f.type,Je,a),Mp.getTextTransform(Je)};o?Me.transition().attrTween("transform",function(qe){var ce=ze(qe);return function(Je){return ye(ce(Je),De)}}):Me.attr("transform",ye(de,De))});function ae(de){var te=qf.getPtId(de),ke=x[te],Ee=x[qf.getPtId(h)],Me;if(Ee){var Ue=(de.x1>Ee.x1?2*Math.PI:0)+T;Me=de.rpx1N?2*Math.PI:0)+T;ke={x0:Me,x1:Me}}else ke={rpx0:k,rpx1:k},Mp.extendFlat(ke,Ce(de));else ke={rpx0:0,rpx1:0};else ke={x0:T,x1:T};return Ym(ke,Ee)}function ze(de){var te=x[qf.getPtId(de)],ke,Ee=de.transform;if(te)ke=te;else if(ke={rpx1:de.rpx1,transform:{textPosAngle:Ee.textPosAngle,scale:0,rotate:Ee.rotate,rCenter:Ee.rCenter,x:Ee.x,y:Ee.y}},L)if(de.parent)if(N){var Me=de.x1>N?2*Math.PI:0;ke.x0=ke.x1=Me}else Mp.extendFlat(ke,Ce(de));else ke.x0=ke.x1=T;else ke.x0=ke.x1=T;var Ue=Ym(ke.transform.textPosAngle,de.transform.textPosAngle),De=Ym(ke.rpx1,de.rpx1),ye=Ym(ke.x0,de.x0),qe=Ym(ke.x1,de.x1),ce=Ym(ke.transform.scale,Ee.scale),Je=Ym(ke.transform.rotate,Ee.rotate),nt=Ee.rCenter===0?3:ke.transform.rCenter===0?1/3:1,gt=Ym(ke.transform.rCenter,Ee.rCenter),Nt=function(at){return gt(Math.pow(at,nt))};return function(at){var Ke=De(at),Ct=ye(at),wt=qe(at),St=Nt(at),Dt=U(Ke,(Ct+wt)/2),Zt=Ue(at),Et={pxmid:Dt,rpx1:Ke,transform:{textPosAngle:Zt,rCenter:St,x:Ee.x,y:Ee.y}};return zLe(f.type,Ee,a),{transform:{targetX:j(Et),targetY:W(Et),scale:ce(at),rotate:Je(at),rCenter:St}}}}function Ce(de){var te=de.parent,ke=x[qf.getPtId(te)],Ee={};if(ke){var Me=te.children,Ue=Me.indexOf(de),De=Me.length,ye=Ym(ke.x0,ke.x1);Ee.x0=ye(Ue/De),Ee.x1=ye(Ue/De)}else Ee.x0=Ee.x1=0;return Ee}}function ZPt(e){return qPt.partition().size([2*Math.PI,e.height+1])(e)}U6.formatSliceLabel=function(e,t,r,n,i){var a=r.texttemplate,o=r.textinfo;if(!a&&(!o||o==="none"))return"";var s=i.separators,u=n[0],l=e.data.data,f=u.hierarchy,c=qf.isHierarchyRoot(e),h=qf.getParent(f,e),d=qf.getValue(e);if(!a){var p=o.split("+"),_=function(m){return p.indexOf(m)!==-1},b=[],v;if(_("label")&&l.label&&b.push(l.label),l.hasOwnProperty("v")&&_("value")&&b.push(qf.formatValue(l.v,s)),!c){_("current path")&&b.push(qf.getPath(e.data));var k=0;_("percent parent")&&k++,_("percent entry")&&k++,_("percent root")&&k++;var E=k>1;if(k){var A,L=function(m){v=qf.formatPercent(A,s),E&&(v+=" of "+m),b.push(v)};_("percent parent")&&!c&&(A=d/qf.getValue(h),L("parent")),_("percent entry")&&(A=d/qf.getValue(t),L("entry")),_("percent root")&&(A=d/qf.getValue(f),L("root"))}}return _("text")&&(v=Mp.castOption(r,l.i,"text"),Mp.isValidTextValue(v)&&b.push(v)),b.join("
")}var x=Mp.castOption(r,l.i,"texttemplate");if(!x)return"";var C={};l.label&&(C.label=l.label),l.hasOwnProperty("v")&&(C.value=l.v,C.valueLabel=qf.formatValue(l.v,s)),C.currentPath=qf.getPath(e.data),c||(C.percentParent=d/qf.getValue(h),C.percentParentLabel=qf.formatPercent(C.percentParent,s),C.parent=qf.getPtLabel(h)),C.percentEntry=d/qf.getValue(t),C.percentEntryLabel=qf.formatPercent(C.percentEntry,s),C.entry=qf.getPtLabel(t),C.percentRoot=d/qf.getValue(f),C.percentRootLabel=qf.formatPercent(C.percentRoot,s),C.root=qf.getPtLabel(f),l.hasOwnProperty("color")&&(C.color=l.color);var M=Mp.castOption(r,l.i,"text");return(Mp.isValidTextValue(M)||M==="")&&(C.text=M),C.customdata=Mp.castOption(r,l.i,"customdata"),Mp.texttemplateString({data:[C,r._meta],fallback:r.texttemplatefallback,labels:C,locale:i._d3locale,template:x})};function YPt(e){return e.rpx0===0&&Mp.isFullCircle([e.x0,e.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(e.halfangle)),e.ring/2))}function RLe(e){return KPt(e.rpx1,e.transform.textPosAngle)}function KPt(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}});var OLe=Ae((Smr,BLe)=>{"use strict";BLe.exports={moduleType:"trace",name:"sunburst",basePlotModule:Jke(),categories:[],animatable:!0,attributes:L4(),layoutAttributes:Cj(),supplyDefaults:oCe(),supplyLayoutDefaults:lCe(),calc:I4().calc,crossTraceCalc:I4().crossTraceCalc,plot:V6().plot,style:$j().style,colorbar:ep(),meta:{}}});var NLe=Ae((Mmr,qLe)=>{"use strict";qLe.exports=OLe()});var VLe=Ae(DA=>{"use strict";var ULe=Cc();DA.name="treemap";DA.plot=function(e,t,r,n){ULe.plotBasePlot(DA.name,e,t,r,n)};DA.clean=function(e,t,r,n){ULe.cleanBasePlot(DA.name,e,t,r,n)}});var B2=Ae((kmr,GLe)=>{"use strict";GLe.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}});var G6=Ae((Cmr,jLe)=>{"use strict";var{hovertemplateAttrs:JPt,texttemplateAttrs:$Pt,templatefallbackAttrs:HLe}=Ff(),QPt=nc(),ezt=zc().attributes,O2=M2(),Q0=L4(),WLe=B2(),eX=Su().extendFlat,tzt=Id().pattern;jLe.exports={labels:Q0.labels,parents:Q0.parents,values:Q0.values,branchvalues:Q0.branchvalues,count:Q0.count,level:Q0.level,maxdepth:Q0.maxdepth,tiling:{packing:{valType:"enumerated",values:["squarify","binary","dice","slice","slice-dice","dice-slice"],dflt:"squarify",editType:"plot"},squarifyratio:{valType:"number",min:1,dflt:1,editType:"plot"},flip:{valType:"flaglist",flags:["x","y"],dflt:"",editType:"plot"},pad:{valType:"number",min:0,dflt:3,editType:"plot"},editType:"calc"},marker:eX({pad:{t:{valType:"number",min:0,editType:"plot"},l:{valType:"number",min:0,editType:"plot"},r:{valType:"number",min:0,editType:"plot"},b:{valType:"number",min:0,editType:"plot"},editType:"calc"},colors:Q0.marker.colors,pattern:tzt,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:Q0.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},QPt("marker",{colorAttr:"colors",anim:!1})),pathbar:{visible:{valType:"boolean",dflt:!0,editType:"plot"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},edgeshape:{valType:"enumerated",values:[">","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:eX({},O2.textfont,{}),editType:"calc"},text:O2.text,textinfo:Q0.textinfo,texttemplate:$Pt({editType:"plot"},{keys:WLe.eventDataKeys.concat(["label","value"])}),texttemplatefallback:HLe({editType:"plot"}),hovertext:O2.hovertext,hoverinfo:Q0.hoverinfo,hovertemplate:JPt({},{keys:WLe.eventDataKeys}),hovertemplatefallback:HLe(),textfont:O2.textfont,insidetextfont:O2.insidetextfont,outsidetextfont:eX({},O2.outsidetextfont,{}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"top left",editType:"plot"},sort:O2.sort,root:Q0.root,domain:ezt({name:"treemap",trace:!0,editType:"calc"})}});var tX=Ae((Lmr,XLe)=>{"use strict";XLe.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var JLe=Ae((Pmr,KLe)=>{"use strict";var ZLe=ei(),rzt=G6(),izt=jl(),nzt=zc().defaults,azt=r0().handleText,ozt=e2().TEXTPAD,szt=E2().handleMarkerDefaults,YLe=_c(),lzt=YLe.hasColorscale,uzt=YLe.handleDefaults;KLe.exports=function(t,r,n,i){function a(b,v){return ZLe.coerce(t,r,rzt,b,v)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var u=a("values");u&&u.length?a("branchvalues"):a("count"),a("level"),a("maxdepth");var l=a("tiling.packing");l==="squarify"&&a("tiling.squarifyratio"),a("tiling.flip"),a("tiling.pad");var f=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",ZLe.isArrayOrTypedArray(f)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var c=a("pathbar.visible"),h="auto";azt(t,r,i,a,h,{hasPathbar:c,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition");var d=r.textposition.indexOf("bottom")!==-1;szt(t,r,i,a);var p=r._hasColorscale=lzt(t,"marker","colors")||(t.marker||{}).coloraxis;p?uzt(t,r,i,a,{prefix:"marker.",cLetter:"c"}):a("marker.depthfade",!(r.marker.colors||[]).length);var _=r.textfont.size*2;a("marker.pad.t",d?_/4:_),a("marker.pad.l",_/4),a("marker.pad.r",_/4),a("marker.pad.b",d?_:_/4),a("marker.cornerradius"),r._hovered={marker:{line:{width:2,color:izt.contrast(i.paper_bgcolor)}}},c&&(a("pathbar.thickness",r.pathbar.textfont.size+2*ozt),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),nzt(r,i,a),r._length=null}});var QLe=Ae((zmr,$Le)=>{"use strict";var fzt=ei(),czt=tX();$Le.exports=function(t,r){function n(i,a){return fzt.coerce(t,r,czt,i,a)}n("treemapcolorway",r.colorway),n("extendtreemapcolors")}});var iX=Ae(rX=>{"use strict";var ePe=I4();rX.calc=function(e,t){return ePe.calc(e,t)};rX.crossTraceCalc=function(e){return ePe._runCrossTraceCalc("treemap",e)}});var nX=Ae((Rmr,tPe)=>{"use strict";tPe.exports=function e(t,r,n){var i;n.swapXY&&(i=t.x0,t.x0=t.y0,t.y0=i,i=t.x1,t.x1=t.y1,t.y1=i),n.flipX&&(i=t.x0,t.x0=r[0]-t.x1,t.x1=r[0]-i),n.flipY&&(i=t.y0,t.y0=r[1]-t.y1,t.y1=r[1]-i);var a=t.children;if(a)for(var o=0;o{"use strict";var FA=P4(),hzt=nX();rPe.exports=function(t,r,n){var i=n.flipX,a=n.flipY,o=n.packing==="dice-slice",s=n.pad[a?"bottom":"top"],u=n.pad[i?"right":"left"],l=n.pad[i?"left":"right"],f=n.pad[a?"top":"bottom"],c;o&&(c=u,u=s,s=c,c=l,l=f,f=c);var h=FA.treemap().tile(dzt(n.packing,n.squarifyratio)).paddingInner(n.pad.inner).paddingLeft(u).paddingRight(l).paddingTop(s).paddingBottom(f).size(o?[r[1],r[0]]:r)(t);return(o||i||a)&&hzt(h,r,{swapXY:o,flipX:i,flipY:a}),h};function dzt(e,t){switch(e){case"squarify":return FA.treemapSquarify.ratio(t);case"binary":return FA.treemapBinary;case"dice":return FA.treemapDice;case"slice":return FA.treemapSlice;default:return FA.treemapSliceDice}}});var H6=Ae((Fmr,oPe)=>{"use strict";var iPe=Jl(),BA=jl(),nPe=ei(),oX=Kg(),pzt=Tp().resizeText,vzt=N6();function mzt(e){var t=e._fullLayout._treemaplayer.selectAll(".trace");pzt(e,t,"treemap"),t.each(function(r){var n=iPe.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){iPe.select(this).call(aPe,o,a,e,{hovered:!1})})})}function aPe(e,t,r,n,i){var a=(i||{}).hovered,o=t.data.data,s=o.i,u,l,f=o.color,c=oX.isHierarchyRoot(t),h=1;if(a)u=r._hovered.marker.line.color,l=r._hovered.marker.line.width;else if(c&&f===r.root.color)h=100,u="rgba(0,0,0,0)",l=0;else if(u=nPe.castOption(r,s,"marker.line.color")||BA.defaultLine,l=nPe.castOption(r,s,"marker.line.width")||0,!r._hasColorscale&&!t.onPathbar){var d=r.marker.depthfade;if(d){var p=BA.combine(BA.addOpacity(r._backgroundColor,.75),f),_;if(d===!0){var b=oX.getMaxDepth(r);isFinite(b)?oX.isLeaf(t)?_=0:_=r._maxVisibleLayers-(t.data.depth-r._entryDepth):_=t.data.height+1}else _=t.data.depth-r._entryDepth,r._atRootLevel||_++;if(_>0)for(var v=0;v<_;v++){var k=.5*v/_;f=BA.combine(BA.addOpacity(p,k),f)}}}e.call(vzt,t,r,n,f).style("stroke-width",l).call(BA.stroke,u).style("opacity",h)}oPe.exports={style:mzt,styleOne:aPe}});var cPe=Ae((Bmr,fPe)=>{"use strict";var sPe=Jl(),W6=ei(),lPe=Mu(),yzt=Xf(),gzt=aX(),uPe=H6().styleOne,sX=B2(),OA=Kg(),_zt=H4(),lX=!0;fPe.exports=function(t,r,n,i,a){var o=a.barDifY,s=a.width,u=a.height,l=a.viewX,f=a.viewY,c=a.pathSlice,h=a.toMoveInsideSlice,d=a.strTransform,p=a.hasTransition,_=a.handleSlicesExit,b=a.makeUpdateSliceInterpolator,v=a.makeUpdateTextInterpolator,k={},E=t._context.staticPlot,A=t._fullLayout,L=r[0],x=L.trace,C=L.hierarchy,M=s/x._entryDepth,m=OA.listPath(n.data,"id"),P=gzt(C.copy(),[s,u],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();P=P.filter(function(B){var F=m.indexOf(B.data.id);return F===-1?!1:(B.x0=M*F,B.x1=M*(F+1),B.y0=o,B.y1=o+u,B.onPathbar=!0,!0)}),P.reverse(),i=i.data(P,OA.getPtId),i.enter().append("g").classed("pathbar",!0),_(i,lX,k,[s,u],c),i.order();var T=i;p&&(T=T.transition().each("end",function(){var B=sPe.select(this);OA.setSliceCursor(B,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})})),T.each(function(B){B._x0=l(B.x0),B._x1=l(B.x1),B._y0=f(B.y0),B._y1=f(B.y1),B._hoverX=l(B.x1-Math.min(s,u)/2),B._hoverY=f(B.y1-u/2);var F=sPe.select(this),U=W6.ensureSingle(F,"path","surface",function(N){N.style("pointer-events",E?"none":"all")});p?U.transition().attrTween("d",function(N){var H=b(N,lX,k,[s,u]);return function(re){return c(H(re))}}):U.attr("d",c),F.call(_zt,n,t,r,{styleOne:uPe,eventDataKeys:sX.eventDataKeys,transitionTime:sX.CLICK_TRANSITION_TIME,transitionEasing:sX.CLICK_TRANSITION_EASING}).call(OA.setSliceCursor,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:t._transitioning}),U.call(uPe,B,x,t,{hovered:!1}),B._text=(OA.getPtLabel(B)||"").split("
").join(" ")||"";var G=W6.ensureSingle(F,"g","slicetext"),j=W6.ensureSingle(G,"text","",function(N){N.attr("data-notex",1)}),W=W6.ensureUniformFontSize(t,OA.determineTextFont(x,B,A.font,{onPathbar:!0}));j.text(B._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(lPe.font,W).call(yzt.convertToTspans,t),B.textBB=lPe.bBox(j.node()),B.transform=h(B,{fontSize:W.size,onPathbar:!0}),B.transform.fontSize=W.size,p?j.transition().attrTween("transform",function(N){var H=v(N,lX,k,[s,u]);return function(re){return d(H(re))}}):j.attr("transform",d(B))})}});var vPe=Ae((Omr,pPe)=>{"use strict";var hPe=Jl(),uX=(D2(),ob(R2)).interpolate,Z_=Kg(),j4=ei(),dPe=e2().TEXTPAD,xzt=n2(),bzt=xzt.toMoveInsideBar,wzt=Tp(),fX=wzt.recordMinTextSize,Tzt=B2(),Azt=cPe();function q2(e){return Z_.isHierarchyRoot(e)?"":Z_.getPtId(e)}pPe.exports=function(t,r,n,i,a){var o=t._fullLayout,s=r[0],u=s.trace,l=u.type,f=l==="icicle",c=s.hierarchy,h=Z_.findEntryWithLevel(c,u.level),d=hPe.select(n),p=d.selectAll("g.pathbar"),_=d.selectAll("g.slice");if(!h){p.remove(),_.remove();return}var b=Z_.isHierarchyRoot(h),v=!o.uniformtext.mode&&Z_.hasTransition(i),k=Z_.getMaxDepth(u),E=function(Te){return Te.data.depth-h.data.depth-1?C+P:-(m+P):0,B={x0:M,x1:M,y0:T,y1:T+m},F=function(Te,ot,Tt){var vt=u.tiling.pad,Ye=function(It){return It-vt<=ot.x0},He=function(It){return It+vt>=ot.x1},it=function(It){return It-vt<=ot.y0},et=function(It){return It+vt>=ot.y1};return Te.x0===ot.x0&&Te.x1===ot.x1&&Te.y0===ot.y0&&Te.y1===ot.y1?{x0:Te.x0,x1:Te.x1,y0:Te.y0,y1:Te.y1}:{x0:Ye(Te.x0-vt)?0:He(Te.x0-vt)?Tt[0]:Te.x0,x1:Ye(Te.x1+vt)?0:He(Te.x1+vt)?Tt[0]:Te.x1,y0:it(Te.y0-vt)?0:et(Te.y0-vt)?Tt[1]:Te.y0,y1:it(Te.y1+vt)?0:et(Te.y1+vt)?Tt[1]:Te.y1}},U=null,G={},j={},W=null,N=function(Te,ot){return ot?G[q2(Te)]:j[q2(Te)]},H=function(Te,ot,Tt,vt){if(ot)return G[q2(c)]||B;var Ye=j[u.level]||Tt;return E(Te)?F(Te,Ye,vt):{}};s.hasMultipleRoots&&b&&k++,u._maxDepth=k,u._backgroundColor=o.paper_bgcolor,u._entryDepth=h.data.depth,u._atRootLevel=b;var re=-x/2+A.l+A.w*(L.x[1]+L.x[0])/2,ae=-C/2+A.t+A.h*(1-(L.y[1]+L.y[0])/2),be=function(Te){return re+Te},ze=function(Te){return ae+Te},Ce=ze(0),de=be(0),te=function(Te){return de+Te},ke=function(Te){return Ce+Te};function Ee(Te,ot){return Te+","+ot}var Me=te(0),Ue=function(Te){Te.x=Math.max(Me,Te.x)},De=u.pathbar.edgeshape,ye=function(Te){var ot=te(Math.max(Math.min(Te.x0,Te.x0),0)),Tt=te(Math.min(Math.max(Te.x1,Te.x1),M)),vt=ke(Te.y0),Ye=ke(Te.y1),He=m/2,it={},et={};it.x=ot,et.x=Tt,it.y=et.y=(vt+Ye)/2;var It={x:ot,y:vt},Yt={x:Tt,y:vt},cr={x:Tt,y:Ye},_r={x:ot,y:Ye};return De===">"?(It.x-=He,Yt.x-=He,cr.x-=He,_r.x-=He):De==="/"?(cr.x-=He,_r.x-=He,it.x-=He/2,et.x-=He/2):De==="\\"?(It.x-=He,Yt.x-=He,it.x-=He/2,et.x-=He/2):De==="<"&&(it.x-=He,et.x-=He),Ue(It),Ue(_r),Ue(it),Ue(Yt),Ue(cr),Ue(et),"M"+Ee(It.x,It.y)+"L"+Ee(Yt.x,Yt.y)+"L"+Ee(et.x,et.y)+"L"+Ee(cr.x,cr.y)+"L"+Ee(_r.x,_r.y)+"L"+Ee(it.x,it.y)+"Z"},qe=u[f?"tiling":"marker"].pad,ce=function(Te){return u.textposition.indexOf(Te)!==-1},Je=ce("top"),nt=ce("left"),gt=ce("right"),Nt=ce("bottom"),at=function(Te){var ot=be(Te.x0),Tt=be(Te.x1),vt=ze(Te.y0),Ye=ze(Te.y1),He=Tt-ot,it=Ye-vt;if(!He||!it)return"";var et=u.marker.cornerradius||0,It=Math.min(et,He/2,it/2);It&&Te.data&&Te.data.data&&Te.data.data.label&&(Je&&(It=Math.min(It,qe.t)),nt&&(It=Math.min(It,qe.l)),gt&&(It=Math.min(It,qe.r)),Nt&&(It=Math.min(It,qe.b)));var Yt=function(cr,_r){return It?"a"+Ee(It,It)+" 0 0 1 "+Ee(cr,_r):""};return"M"+Ee(ot,vt+It)+Yt(It,-It)+"L"+Ee(Tt-It,vt)+Yt(It,It)+"L"+Ee(Tt,Ye-It)+Yt(-It,It)+"L"+Ee(ot+It,Ye)+Yt(-It,-It)+"Z"},Ke=function(Te,ot){var Tt=Te.x0,vt=Te.x1,Ye=Te.y0,He=Te.y1,it=Te.textBB,et=Je||ot.isHeader&&!Nt,It=et?"start":Nt?"end":"middle",Yt=ce("right"),cr=ce("left")||ot.onPathbar,_r=cr?-1:Yt?1:0;if(ot.isHeader){if(Tt+=(f?qe:qe.l)-dPe,vt-=(f?qe:qe.r)-dPe,Tt>=vt){var yr=(Tt+vt)/2;Tt=yr,vt=yr}var Ut;Nt?(Ut=He-(f?qe:qe.b),Ye{"use strict";var Szt=Jl(),Mzt=Kg(),Ezt=Tp(),kzt=Ezt.clearMinTextSize,Czt=N0().resizeText,mPe=vPe();yPe.exports=function(t,r,n,i,a){var o=a.type,s=a.drawDescendants,u=t._fullLayout,l=u["_"+o+"layer"],f,c,h=!n;if(kzt(o,u),f=l.selectAll("g.trace."+o).data(r,function(p){return p[0].trace.uid}),f.enter().append("g").classed("trace",!0).classed(o,!0),f.order(),!u.uniformtext.mode&&Mzt.hasTransition(n)){i&&(c=i());var d=Szt.transition().duration(n.duration).ease(n.easing).each("end",function(){c&&c()}).each("interrupt",function(){c&&c()});d.each(function(){l.selectAll("g.trace").each(function(p){mPe(t,p,this,n,s)})})}else f.each(function(p){mPe(t,p,this,n,s)}),u.uniformtext.mode&&Czt(t,l.selectAll(".trace"),o);h&&f.exit().remove()}});var wPe=Ae((Nmr,bPe)=>{"use strict";var gPe=Jl(),j6=ei(),_Pe=Mu(),Lzt=Xf(),Pzt=aX(),xPe=H6().styleOne,hX=B2(),Y_=Kg(),zzt=H4(),Izt=V6().formatSliceLabel,dX=!1;bPe.exports=function(t,r,n,i,a){var o=a.width,s=a.height,u=a.viewX,l=a.viewY,f=a.pathSlice,c=a.toMoveInsideSlice,h=a.strTransform,d=a.hasTransition,p=a.handleSlicesExit,_=a.makeUpdateSliceInterpolator,b=a.makeUpdateTextInterpolator,v=a.prevEntry,k={},E=t._context.staticPlot,A=t._fullLayout,L=r[0],x=L.trace,C=x.textposition.indexOf("left")!==-1,M=x.textposition.indexOf("right")!==-1,m=x.textposition.indexOf("bottom")!==-1,P=!m&&!x.marker.pad.t||m&&!x.marker.pad.b,T=Pzt(n,[o,s],{packing:x.tiling.packing,squarifyratio:x.tiling.squarifyratio,flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1,pad:{inner:x.tiling.pad,top:x.marker.pad.t,left:x.marker.pad.l,right:x.marker.pad.r,bottom:x.marker.pad.b}}),B=T.descendants(),F=1/0,U=-1/0;B.forEach(function(H){var re=H.depth;re>=x._maxDepth?(H.x0=H.x1=(H.x0+H.x1)/2,H.y0=H.y1=(H.y0+H.y1)/2):(F=Math.min(F,re),U=Math.max(U,re))}),i=i.data(B,Y_.getPtId),x._maxVisibleLayers=isFinite(U)?U-F+1:0,i.enter().append("g").classed("slice",!0),p(i,dX,k,[o,s],f),i.order();var G=null;if(d&&v){var j=Y_.getPtId(v);i.each(function(H){G===null&&Y_.getPtId(H)===j&&(G={x0:H.x0,x1:H.x1,y0:H.y0,y1:H.y1})})}var W=function(){return G||{x0:0,x1:o,y0:0,y1:s}},N=i;return d&&(N=N.transition().each("end",function(){var H=gPe.select(this);Y_.setSliceCursor(H,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),N.each(function(H){var re=Y_.isHeader(H,x);H._x0=u(H.x0),H._x1=u(H.x1),H._y0=l(H.y0),H._y1=l(H.y1),H._hoverX=u(H.x1-x.marker.pad.r),H._hoverY=l(m?H.y1-x.marker.pad.b/2:H.y0+x.marker.pad.t/2);var ae=gPe.select(this),be=j6.ensureSingle(ae,"path","surface",function(Ee){Ee.style("pointer-events",E?"none":"all")});d?be.transition().attrTween("d",function(Ee){var Me=_(Ee,dX,W(),[o,s]);return function(Ue){return f(Me(Ue))}}):be.attr("d",f),ae.call(zzt,n,t,r,{styleOne:xPe,eventDataKeys:hX.eventDataKeys,transitionTime:hX.CLICK_TRANSITION_TIME,transitionEasing:hX.CLICK_TRANSITION_EASING}).call(Y_.setSliceCursor,t,{isTransitioning:t._transitioning}),be.call(xPe,H,x,t,{hovered:!1}),H.x0===H.x1||H.y0===H.y1?H._text="":re?H._text=P?"":Y_.getPtLabel(H)||"":H._text=Izt(H,n,x,r,A)||"";var ze=j6.ensureSingle(ae,"g","slicetext"),Ce=j6.ensureSingle(ze,"text","",function(Ee){Ee.attr("data-notex",1)}),de=j6.ensureUniformFontSize(t,Y_.determineTextFont(x,H,A.font)),te=H._text||" ",ke=re&&te.indexOf("
")===-1;Ce.text(te).classed("slicetext",!0).attr("text-anchor",M?"end":C||ke?"start":"middle").call(_Pe.font,de).call(Lzt.convertToTspans,t),H.textBB=_Pe.bBox(Ce.node()),H.transform=c(H,{fontSize:de.size,isHeader:re}),H.transform.fontSize=de.size,d?Ce.transition().attrTween("transform",function(Ee){var Me=b(Ee,dX,W(),[o,s]);return function(Ue){return h(Me(Ue))}}):Ce.attr("transform",h(H))}),G}});var APe=Ae((Umr,TPe)=>{"use strict";var Rzt=cX(),Dzt=wPe();TPe.exports=function(t,r,n,i){return Rzt(t,r,n,i,{type:"treemap",drawDescendants:Dzt})}});var MPe=Ae((Vmr,SPe)=>{"use strict";SPe.exports={moduleType:"trace",name:"treemap",basePlotModule:VLe(),categories:[],animatable:!0,attributes:G6(),layoutAttributes:tX(),supplyDefaults:JLe(),supplyLayoutDefaults:QLe(),calc:iX().calc,crossTraceCalc:iX().crossTraceCalc,plot:APe(),style:H6().style,colorbar:ep(),meta:{}}});var kPe=Ae((Gmr,EPe)=>{"use strict";EPe.exports=MPe()});var LPe=Ae(qA=>{"use strict";var CPe=Cc();qA.name="icicle";qA.plot=function(e,t,r,n){CPe.plotBasePlot(qA.name,e,t,r,n)};qA.clean=function(e,t,r,n){CPe.cleanBasePlot(qA.name,e,t,r,n)}});var pX=Ae((Wmr,IPe)=>{"use strict";var{hovertemplateAttrs:Fzt,texttemplateAttrs:Bzt,templatefallbackAttrs:PPe}=Ff(),Ozt=nc(),qzt=zc().attributes,X4=M2(),o0=L4(),X6=G6(),zPe=B2(),Nzt=Su().extendFlat,Uzt=Id().pattern;IPe.exports={labels:o0.labels,parents:o0.parents,values:o0.values,branchvalues:o0.branchvalues,count:o0.count,level:o0.level,maxdepth:o0.maxdepth,tiling:{orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"plot"},flip:X6.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},marker:Nzt({colors:o0.marker.colors,line:o0.marker.line,pattern:Uzt,editType:"calc"},Ozt("marker",{colorAttr:"colors",anim:!1})),leaf:o0.leaf,pathbar:X6.pathbar,text:X4.text,textinfo:o0.textinfo,texttemplate:Bzt({editType:"plot"},{keys:zPe.eventDataKeys.concat(["label","value"])}),texttemplatefallback:PPe({editType:"plot"}),hovertext:X4.hovertext,hoverinfo:o0.hoverinfo,hovertemplate:Fzt({},{keys:zPe.eventDataKeys}),hovertemplatefallback:PPe(),textfont:X4.textfont,insidetextfont:X4.insidetextfont,outsidetextfont:X6.outsidetextfont,textposition:X6.textposition,sort:X4.sort,root:o0.root,domain:qzt({name:"icicle",trace:!0,editType:"calc"})}});var vX=Ae((jmr,RPe)=>{"use strict";RPe.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var OPe=Ae((Xmr,BPe)=>{"use strict";var DPe=ei(),Vzt=pX(),Gzt=jl(),Hzt=zc().defaults,Wzt=r0().handleText,jzt=e2().TEXTPAD,Xzt=E2().handleMarkerDefaults,FPe=_c(),Zzt=FPe.hasColorscale,Yzt=FPe.handleDefaults;BPe.exports=function(t,r,n,i){function a(d,p){return DPe.coerce(t,r,Vzt,d,p)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var u=a("values");u&&u.length?a("branchvalues"):a("count"),a("level"),a("maxdepth"),a("tiling.orientation"),a("tiling.flip"),a("tiling.pad");var l=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",DPe.isArrayOrTypedArray(l)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var f=a("pathbar.visible"),c="auto";Wzt(t,r,i,a,c,{hasPathbar:f,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition"),Xzt(t,r,i,a);var h=r._hasColorscale=Zzt(t,"marker","colors")||(t.marker||{}).coloraxis;h&&Yzt(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",h?1:.7),r._hovered={marker:{line:{width:2,color:Gzt.contrast(i.paper_bgcolor)}}},f&&(a("pathbar.thickness",r.pathbar.textfont.size+2*jzt),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),Hzt(r,i,a),r._length=null}});var NPe=Ae((Zmr,qPe)=>{"use strict";var Kzt=ei(),Jzt=vX();qPe.exports=function(t,r){function n(i,a){return Kzt.coerce(t,r,Jzt,i,a)}n("iciclecolorway",r.colorway),n("extendiciclecolors")}});var yX=Ae(mX=>{"use strict";var UPe=I4();mX.calc=function(e,t){return UPe.calc(e,t)};mX.crossTraceCalc=function(e){return UPe._runCrossTraceCalc("icicle",e)}});var GPe=Ae((Kmr,VPe)=>{"use strict";var $zt=P4(),Qzt=nX();VPe.exports=function(t,r,n){var i=n.flipX,a=n.flipY,o=n.orientation==="h",s=n.maxDepth,u=r[0],l=r[1];s&&(u=(t.height+1)*r[0]/Math.min(t.height+1,s),l=(t.height+1)*r[1]/Math.min(t.height+1,s));var f=$zt.partition().padding(n.pad.inner).size(o?[r[1],u]:[r[0],l])(t);return(o||i||a)&&Qzt(f,r,{swapXY:o,flipX:i,flipY:a}),f}});var gX=Ae((Jmr,ZPe)=>{"use strict";var HPe=Jl(),WPe=jl(),jPe=ei(),eIt=Tp().resizeText,tIt=N6();function rIt(e){var t=e._fullLayout._iciclelayer.selectAll(".trace");eIt(e,t,"icicle"),t.each(function(r){var n=HPe.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){HPe.select(this).call(XPe,o,a,e)})})}function XPe(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=jPe.castOption(r,o,"marker.line.color")||WPe.defaultLine,u=jPe.castOption(r,o,"marker.line.width")||0;e.call(tIt,t,r,n).style("stroke-width",u).call(WPe.stroke,s).style("opacity",a?r.leaf.opacity:null)}ZPe.exports={style:rIt,styleOne:XPe}});var QPe=Ae(($mr,$Pe)=>{"use strict";var YPe=Jl(),Z6=ei(),KPe=Mu(),iIt=Xf(),nIt=GPe(),JPe=gX().styleOne,_X=B2(),NA=Kg(),aIt=H4(),oIt=V6().formatSliceLabel,xX=!1;$Pe.exports=function(t,r,n,i,a){var o=a.width,s=a.height,u=a.viewX,l=a.viewY,f=a.pathSlice,c=a.toMoveInsideSlice,h=a.strTransform,d=a.hasTransition,p=a.handleSlicesExit,_=a.makeUpdateSliceInterpolator,b=a.makeUpdateTextInterpolator,v=a.prevEntry,k={},E=t._context.staticPlot,A=t._fullLayout,L=r[0],x=L.trace,C=x.textposition.indexOf("left")!==-1,M=x.textposition.indexOf("right")!==-1,m=x.textposition.indexOf("bottom")!==-1,P=nIt(n,[o,s],{flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1,orientation:x.tiling.orientation,pad:{inner:x.tiling.pad},maxDepth:x._maxDepth}),T=P.descendants(),B=1/0,F=-1/0;T.forEach(function(N){var H=N.depth;H>=x._maxDepth?(N.x0=N.x1=(N.x0+N.x1)/2,N.y0=N.y1=(N.y0+N.y1)/2):(B=Math.min(B,H),F=Math.max(F,H))}),i=i.data(T,NA.getPtId),x._maxVisibleLayers=isFinite(F)?F-B+1:0,i.enter().append("g").classed("slice",!0),p(i,xX,k,[o,s],f),i.order();var U=null;if(d&&v){var G=NA.getPtId(v);i.each(function(N){U===null&&NA.getPtId(N)===G&&(U={x0:N.x0,x1:N.x1,y0:N.y0,y1:N.y1})})}var j=function(){return U||{x0:0,x1:o,y0:0,y1:s}},W=i;return d&&(W=W.transition().each("end",function(){var N=YPe.select(this);NA.setSliceCursor(N,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),W.each(function(N){N._x0=u(N.x0),N._x1=u(N.x1),N._y0=l(N.y0),N._y1=l(N.y1),N._hoverX=u(N.x1-x.tiling.pad),N._hoverY=l(m?N.y1-x.tiling.pad/2:N.y0+x.tiling.pad/2);var H=YPe.select(this),re=Z6.ensureSingle(H,"path","surface",function(Ce){Ce.style("pointer-events",E?"none":"all")});d?re.transition().attrTween("d",function(Ce){var de=_(Ce,xX,j(),[o,s],{orientation:x.tiling.orientation,flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1});return function(te){return f(de(te))}}):re.attr("d",f),H.call(aIt,n,t,r,{styleOne:JPe,eventDataKeys:_X.eventDataKeys,transitionTime:_X.CLICK_TRANSITION_TIME,transitionEasing:_X.CLICK_TRANSITION_EASING}).call(NA.setSliceCursor,t,{isTransitioning:t._transitioning}),re.call(JPe,N,x,t,{hovered:!1}),N.x0===N.x1||N.y0===N.y1?N._text="":N._text=oIt(N,n,x,r,A)||"";var ae=Z6.ensureSingle(H,"g","slicetext"),be=Z6.ensureSingle(ae,"text","",function(Ce){Ce.attr("data-notex",1)}),ze=Z6.ensureUniformFontSize(t,NA.determineTextFont(x,N,A.font));be.text(N._text||" ").classed("slicetext",!0).attr("text-anchor",M?"end":C?"start":"middle").call(KPe.font,ze).call(iIt.convertToTspans,t),N.textBB=KPe.bBox(be.node()),N.transform=c(N,{fontSize:ze.size}),N.transform.fontSize=ze.size,d?be.transition().attrTween("transform",function(Ce){var de=b(Ce,xX,j(),[o,s]);return function(te){return h(de(te))}}):be.attr("transform",h(N))}),U}});var tze=Ae((Qmr,eze)=>{"use strict";var sIt=cX(),lIt=QPe();eze.exports=function(t,r,n,i){return sIt(t,r,n,i,{type:"icicle",drawDescendants:lIt})}});var ize=Ae((eyr,rze)=>{"use strict";rze.exports={moduleType:"trace",name:"icicle",basePlotModule:LPe(),categories:[],animatable:!0,attributes:pX(),layoutAttributes:vX(),supplyDefaults:OPe(),supplyLayoutDefaults:NPe(),calc:yX().calc,crossTraceCalc:yX().crossTraceCalc,plot:tze(),style:gX().style,colorbar:ep(),meta:{}}});var aze=Ae((tyr,nze)=>{"use strict";nze.exports=ize()});var sze=Ae(UA=>{"use strict";var oze=Cc();UA.name="funnelarea";UA.plot=function(e,t,r,n){oze.plotBasePlot(UA.name,e,t,r,n)};UA.clean=function(e,t,r,n){oze.cleanBasePlot(UA.name,e,t,r,n)}});var bX=Ae((iyr,uze)=>{"use strict";var ap=M2(),uIt=Gf(),fIt=zc().attributes,{hovertemplateAttrs:cIt,texttemplateAttrs:hIt,templatefallbackAttrs:lze}=Ff(),N2=Su().extendFlat;uze.exports={labels:ap.labels,label0:ap.label0,dlabel:ap.dlabel,values:ap.values,marker:{colors:ap.marker.colors,line:{color:N2({},ap.marker.line.color,{dflt:null}),width:N2({},ap.marker.line.width,{dflt:1}),editType:"calc"},pattern:ap.marker.pattern,editType:"calc"},text:ap.text,hovertext:ap.hovertext,scalegroup:N2({},ap.scalegroup,{}),textinfo:N2({},ap.textinfo,{flags:["label","text","value","percent"]}),texttemplate:hIt({editType:"plot"},{keys:["label","color","value","text","percent"]}),texttemplatefallback:lze({editType:"plot"}),hoverinfo:N2({},uIt.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:cIt({},{keys:["label","color","value","text","percent"]}),hovertemplatefallback:lze(),textposition:N2({},ap.textposition,{values:["inside","none"],dflt:"inside"}),textfont:ap.textfont,insidetextfont:ap.insidetextfont,title:{text:ap.title.text,font:ap.title.font,position:N2({},ap.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:fIt({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot"},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot"}}});var wX=Ae((nyr,fze)=>{"use strict";var dIt=v6().hiddenlabels;fze.exports={hiddenlabels:dIt,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var dze=Ae((ayr,hze)=>{"use strict";var cze=ei(),pIt=bX(),vIt=zc().defaults,mIt=r0().handleText,yIt=E2().handleLabelsAndValues,gIt=E2().handleMarkerDefaults;hze.exports=function(t,r,n,i){function a(_,b){return cze.coerce(t,r,pIt,_,b)}var o=a("labels"),s=a("values"),u=yIt(o,s),l=u.len;if(r._hasLabels=u.hasLabels,r._hasValues=u.hasValues,!r._hasLabels&&r._hasValues&&(a("label0"),a("dlabel")),!l){r.visible=!1;return}r._length=l,gIt(t,r,i,a),a("scalegroup");var f=a("text"),c=a("texttemplate");a("texttemplatefallback");var h;if(c||(h=a("textinfo",Array.isArray(f)?"text+percent":"percent")),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),c||h&&h!=="none"){var d=a("textposition");mIt(t,r,i,a,d,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else h==="none"&&a("textposition","none");vIt(r,i,a);var p=a("title.text");p&&(a("title.position"),cze.coerceFont(a,"title.font",i.font)),a("aspectratio"),a("baseratio")}});var vze=Ae((oyr,pze)=>{"use strict";var _It=ei(),xIt=wX();pze.exports=function(t,r){function n(i,a){return _It.coerce(t,r,xIt,i,a)}n("hiddenlabels"),n("funnelareacolorway",r.colorway),n("extendfunnelareacolors")}});var TX=Ae((syr,yze)=>{"use strict";var mze=TA();function bIt(e,t){return mze.calc(e,t)}function wIt(e){mze.crossTraceCalc(e,{type:"funnelarea"})}yze.exports={calc:bIt,crossTraceCalc:wIt}});var wze=Ae((lyr,bze)=>{"use strict";var U2=Jl(),AX=Mu(),K_=ei(),TIt=K_.strScale,gze=K_.strTranslate,_ze=Xf(),AIt=n2(),SIt=AIt.toMoveInsideBar,xze=Tp(),MIt=xze.recordMinTextSize,EIt=xze.clearMinTextSize,kIt=l_(),VA=_6(),CIt=VA.attachFxHandlers,LIt=VA.determineInsideTextFont,PIt=VA.layoutAreas,zIt=VA.prerenderTitles,IIt=VA.positionTitleOutside,RIt=VA.formatSliceLabel;bze.exports=function(t,r){var n=t._context.staticPlot,i=t._fullLayout;EIt("funnelarea",i),zIt(r,t),PIt(r,i._size),K_.makeTraceGroups(i._funnelarealayer,r,"trace").each(function(a){var o=U2.select(this),s=a[0],u=s.trace;FIt(a),o.each(function(){var l=U2.select(this).selectAll("g.slice").data(a);l.enter().append("g").classed("slice",!0),l.exit().remove(),l.each(function(c,h){if(c.hidden){U2.select(this).selectAll("path,g").remove();return}c.pointNumber=c.i,c.curveNumber=u.index;var d=s.cx,p=s.cy,_=U2.select(this),b=_.selectAll("path.surface").data([c]);b.enter().append("path").classed("surface",!0).style({"pointer-events":n?"none":"all"}),_.call(CIt,t,a);var v="M"+(d+c.TR[0])+","+(p+c.TR[1])+SX(c.TR,c.BR)+SX(c.BR,c.BL)+SX(c.BL,c.TL)+"Z";b.attr("d",v),RIt(t,c,s);var k=kIt.castOption(u.textposition,c.pts),E=_.selectAll("g.slicetext").data(c.text&&k!=="none"?[0]:[]);E.enter().append("g").classed("slicetext",!0),E.exit().remove(),E.each(function(){var A=K_.ensureSingle(U2.select(this),"text","",function(B){B.attr("data-notex",1)}),L=K_.ensureUniformFontSize(t,LIt(u,c,i.font));A.text(c.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(AX.font,L).call(_ze.convertToTspans,t);var x=AX.bBox(A.node()),C,M,m,P=Math.min(c.BL[1],c.BR[1])+p,T=Math.max(c.TL[1],c.TR[1])+p;M=Math.max(c.TL[0],c.BL[0])+d,m=Math.min(c.TR[0],c.BR[0])+d,C=SIt(M,m,P,T,x,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),C.fontSize=L.size,MIt(u.type,C,i),a[h].transform=C,K_.setTransormAndDisplay(A,C)})});var f=U2.select(this).selectAll("g.titletext").data(u.title.text?[0]:[]);f.enter().append("g").classed("titletext",!0),f.exit().remove(),f.each(function(){var c=K_.ensureSingle(U2.select(this),"text","",function(p){p.attr("data-notex",1)}),h=u.title.text;u._meta&&(h=K_.templateString(h,u._meta)),c.text(h).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(AX.font,u.title.font).call(_ze.convertToTspans,t);var d=IIt(s,i._size);c.attr("transform",gze(d.x,d.y)+TIt(Math.min(1,d.scale))+gze(d.tx,d.ty))})})})};function SX(e,t){var r=t[0]-e[0],n=t[1]-e[1];return"l"+r+","+n}function DIt(e,t){return[.5*(e[0]+t[0]),.5*(e[1]+t[1])]}function FIt(e){if(!e.length)return;var t=e[0],r=t.trace,n=r.aspectratio,i=r.baseratio;i>.999&&(i=.999);var a=Math.pow(i,2),o=t.vTotal,s=o*a/(1-a),u=o,l=s/o;function f(){var F=Math.sqrt(l);return{x:F,y:-F}}function c(){var F=f();return[F.x,F.y]}var h,d=[];d.push(c());var p,_;for(p=e.length-1;p>-1;p--)if(_=e[p],!_.hidden){var b=_.v/u;l+=b,d.push(c())}var v=1/0,k=-1/0;for(p=0;p-1;p--)if(_=e[p],!_.hidden){P+=1;var T=d[P][0],B=d[P][1];_.TL=[-T,B],_.TR=[T,B],_.BL=M,_.BR=m,_.pxmid=DIt(_.TR,_.BR),M=_.TL,m=_.TR}}});var Sze=Ae((uyr,Aze)=>{"use strict";var Tze=Jl(),BIt=q3(),OIt=Tp().resizeText;Aze.exports=function(t){var r=t._fullLayout._funnelarealayer.selectAll(".trace");OIt(t,r,"funnelarea"),r.each(function(n){var i=n[0],a=i.trace,o=Tze.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){Tze.select(this).call(BIt,s,a,t)})})}});var Eze=Ae((fyr,Mze)=>{"use strict";Mze.exports={moduleType:"trace",name:"funnelarea",basePlotModule:sze(),categories:["pie-like","funnelarea","showLegend"],attributes:bX(),layoutAttributes:wX(),supplyDefaults:dze(),supplyLayoutDefaults:vze(),calc:TX().calc,crossTraceCalc:TX().crossTraceCalc,plot:wze(),style:Sze(),styleOne:q3(),meta:{}}});var Cze=Ae((cyr,kze)=>{"use strict";kze.exports=Eze()});var qd=Ae((hyr,Lze)=>{(function(){var e={24:function(i){var a={left:0,top:0};i.exports=o;function o(u,l,f){l=l||u.currentTarget||u.srcElement,Array.isArray(f)||(f=[0,0]);var c=u.clientX||0,h=u.clientY||0,d=s(l);return f[0]=c-d.left,f[1]=h-d.top,f}function s(u){return u===window||u===document||u===document.body?a:u.getBoundingClientRect()}},109:function(i){i.exports=a;function a(o,s,u,l){var f=u[0],c=u[2],h=s[0]-f,d=s[2]-c,p=Math.sin(l),_=Math.cos(l);return o[0]=f+d*p+h*_,o[1]=s[1],o[2]=c+d*_-h*p,o}},160:function(i){i.exports=a;function a(o,s,u){return o[0]=Math.max(s[0],u[0]),o[1]=Math.max(s[1],u[1]),o[2]=Math.max(s[2],u[2]),o[3]=Math.max(s[3],u[3]),o}},216:function(i){"use strict";i.exports=a;function a(o,s){for(var u={},l=0;l1){p[0]in h||(h[p[0]]=[]),h=h[p[0]];for(var _=1;_=0;--N){var ke=j[N];H=ke[0];var Ee=U[H],Me=Ee[0],Ue=Ee[1],De=F[Me],ye=F[Ue];if((De[0]-ye[0]||De[1]-ye[1])<0){var qe=Me;Me=Ue,Ue=qe}Ee[0]=Me;var ce=Ee[1]=ke[1],Je;for(W&&(Je=Ee[2]);N>0&&j[N-1][0]===H;){var ke=j[--N],nt=ke[1];W?U.push([ce,nt,Je]):U.push([ce,nt]),ce=nt}W?U.push([ce,Ue,Je]):U.push([ce,Ue])}return re}function x(F,U,G){for(var j=U.length,W=new s(j),N=[],H=0;HU[2]?1:0)}function m(F,U,G){if(F.length!==0){if(U)for(var j=0;j0||H.length>0}function B(F,U,G){var j;if(G){j=U;for(var W=new Array(U.length),N=0;N>>1;l(k,Ee);for(var Me=0,Ue=0,Ce=0;Ce=f)De=De-f|0,A(p,_,Ue--,De);else if(De>=0)A(h,d,Me--,De);else if(De<=-f){De=-De-f|0;for(var ye=0;ye>>1;l(k,Ee);for(var Me=0,Ue=0,De=0,Ce=0;Ce>1===k[2*Ce+3]>>1&&(qe=2,Ce+=1),ye<0){for(var ce=-(ye>>1)-1,Je=0;Je>1)-1;qe===0?A(h,d,Me--,ce):qe===1?A(p,_,Ue--,ce):qe===2&&A(b,v,De--,ce)}}}function M(P,T,B,F,U,G,j,H,N,W,re,ae){var be=0,ze=2*P,Ce=T,de=T+P,te=1,ke=1;F?ke=f:te=f;for(var Ee=U;Ee>>1;l(k,ye);for(var qe=0,Ee=0;Ee=f?(Je=!F,Me-=f):(Je=!!F,Me-=1),Je)L(h,d,qe++,Me);else{var nt=ae[Me],gt=ze*Me,Nt=re[gt+T+1],at=re[gt+T+1+P];e:for(var Ke=0;Ke>>1;l(k,Me);for(var Ue=0,de=0;de=f)h[Ue++]=te-f;else{te-=1;var ye=re[te],qe=be*te,ce=W[qe+T+1],Je=W[qe+T+1+P];e:for(var nt=0;nt=0;--nt)if(h[nt]===te){for(var Ke=nt+1;Ke>>1;l(k,Ee);for(var Me=0,Ue=0,Ce=0;Ce=f)De=De-f|0,A(p,_,Ue--,De);else if(De>=0)A(h,d,Me--,De);else if(De<=-f){De=-De-f|0;for(var ye=0;ye>>1;l(k,Ee);for(var Me=0,Ue=0,De=0,Ce=0;Ce>1===k[2*Ce+3]>>1&&(qe=2,Ce+=1),ye<0){for(var ce=-(ye>>1)-1,Je=0;Je>1)-1;qe===0?A(h,d,Me--,ce):qe===1?A(p,_,Ue--,ce):qe===2&&A(b,v,De--,ce)}}}function M(P,T,B,F,U,G,j,W,N,H,re,ae){var be=0,ze=2*P,Ce=T,de=T+P,te=1,ke=1;F?ke=f:te=f;for(var Ee=U;Ee>>1;l(k,ye);for(var qe=0,Ee=0;Ee=f?(Je=!F,Me-=f):(Je=!!F,Me-=1),Je)L(h,d,qe++,Me);else{var nt=ae[Me],gt=ze*Me,Nt=re[gt+T+1],at=re[gt+T+1+P];e:for(var Ke=0;Ke>>1;l(k,Me);for(var Ue=0,de=0;de=f)h[Ue++]=te-f;else{te-=1;var ye=re[te],qe=be*te,ce=H[qe+T+1],Je=H[qe+T+1+P];e:for(var nt=0;nt=0;--nt)if(h[nt]===te){for(var Ke=nt+1;Ke=0?B[re]:W)}function G(N){var W=L(N);return W?F in W:T.indexOf(N)>=0}function j(N,W){var re,ae=L(N);return ae?ae[F]=W:(re=T.indexOf(N),re>=0?B[re]=W:(re=T.length,B[re]=W,T[re]=N)),this}function H(N){var W=L(N),re,ae;return W?F in W&&delete W[F]:(re=T.indexOf(N),re<0?!1:(ae=T.length-1,T[re]=void 0,B[re]=B[ae],T[re]=T[ae],T.length=ae,B.length=ae,!0))}return Object.create(P.prototype,{get___:{value:x(U)},has___:{value:x(G)},set___:{value:x(j)},delete___:{value:x(H)}})};P.prototype=Object.create(Object.prototype,{get:{value:function(B,F){return this.get___(B,F)},writable:!0,configurable:!0},has:{value:function(B){return this.has___(B)},writable:!0,configurable:!0},set:{value:function(B,F){return this.set___(B,F)},writable:!0,configurable:!0},delete:{value:function(B){return this.delete___(B)},writable:!0,configurable:!0}}),typeof u=="function"?function(){s&&typeof Proxy!="undefined"&&(Proxy=void 0);function T(){this instanceof P||M();var B=new u,F=void 0,U=!1;function G(W,re){return F?B.has(W)?B.get(W):F.get___(W,re):B.get(W,re)}function j(W){return B.has(W)||(F?F.has___(W):!1)}var H;s?H=function(W,re){return B.set(W,re),B.has(W)||(F||(F=new P),F.set(W,re)),this}:H=function(W,re){if(U)try{B.set(W,re)}catch(ae){F||(F=new P),F.set___(W,re)}else B.set(W,re);return this};function N(W){var re=!!B.delete(W);return F&&F.delete___(W)||re}return Object.create(P.prototype,{get___:{value:x(G)},has___:{value:x(j)},set___:{value:x(H)},delete___:{value:x(N)},permitHostObjects___:{value:x(function(W){if(W===o)U=!0;else throw new Error("bogus call to permitHostObjects___")})}})}T.prototype=P.prototype,i.exports=T,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy!="undefined"&&(Proxy=void 0),i.exports=P)})()},1570:function(i){"use strict";i.exports=o;var a=[function(){function u(f,c,h,d){for(var p=Math.min(h,d)|0,_=Math.max(h,d)|0,b=f[2*p],v=f[2*p+1];b>1,E=c[2*k+1];if(E===_)return k;_>1,E=c[2*k+1];if(E===_)return k;_>1,E=c[2*k+1];if(E===_)return k;_>1,E=c[2*k+1];if(E===_)return k;_=0?B[re]:H)}function G(N){var H=L(N);return H?F in H:T.indexOf(N)>=0}function j(N,H){var re,ae=L(N);return ae?ae[F]=H:(re=T.indexOf(N),re>=0?B[re]=H:(re=T.length,B[re]=H,T[re]=N)),this}function W(N){var H=L(N),re,ae;return H?F in H&&delete H[F]:(re=T.indexOf(N),re<0?!1:(ae=T.length-1,T[re]=void 0,B[re]=B[ae],T[re]=T[ae],T.length=ae,B.length=ae,!0))}return Object.create(P.prototype,{get___:{value:x(U)},has___:{value:x(G)},set___:{value:x(j)},delete___:{value:x(W)}})};P.prototype=Object.create(Object.prototype,{get:{value:function(B,F){return this.get___(B,F)},writable:!0,configurable:!0},has:{value:function(B){return this.has___(B)},writable:!0,configurable:!0},set:{value:function(B,F){return this.set___(B,F)},writable:!0,configurable:!0},delete:{value:function(B){return this.delete___(B)},writable:!0,configurable:!0}}),typeof u=="function"?function(){s&&typeof Proxy!="undefined"&&(Proxy=void 0);function T(){this instanceof P||M();var B=new u,F=void 0,U=!1;function G(H,re){return F?B.has(H)?B.get(H):F.get___(H,re):B.get(H,re)}function j(H){return B.has(H)||(F?F.has___(H):!1)}var W;s?W=function(H,re){return B.set(H,re),B.has(H)||(F||(F=new P),F.set(H,re)),this}:W=function(H,re){if(U)try{B.set(H,re)}catch(ae){F||(F=new P),F.set___(H,re)}else B.set(H,re);return this};function N(H){var re=!!B.delete(H);return F&&F.delete___(H)||re}return Object.create(P.prototype,{get___:{value:x(G)},has___:{value:x(j)},set___:{value:x(W)},delete___:{value:x(N)},permitHostObjects___:{value:x(function(H){if(H===o)U=!0;else throw new Error("bogus call to permitHostObjects___")})}})}T.prototype=P.prototype,i.exports=T,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy!="undefined"&&(Proxy=void 0),i.exports=P)})()},1570:function(i){"use strict";i.exports=o;var a=[function(){function u(f,c,h,d){for(var p=Math.min(h,d)|0,_=Math.max(h,d)|0,b=f[2*p],v=f[2*p+1];b>1,E=c[2*k+1];if(E===_)return k;_>1,E=c[2*k+1];if(E===_)return k;_>1,E=c[2*k+1];if(E===_)return k;_>1,E=c[2*k+1];if(E===_)return k;_0?W.pop():new ArrayBuffer(H)}a.mallocArrayBuffer=k;function E(j){return new Uint8Array(k(j),0,j)}a.mallocUint8=E;function A(j){return new Uint16Array(k(2*j),0,j)}a.mallocUint16=A;function L(j){return new Uint32Array(k(4*j),0,j)}a.mallocUint32=L;function x(j){return new Int8Array(k(j),0,j)}a.mallocInt8=x;function C(j){return new Int16Array(k(2*j),0,j)}a.mallocInt16=C;function M(j){return new Int32Array(k(4*j),0,j)}a.mallocInt32=M;function m(j){return new Float32Array(k(4*j),0,j)}a.mallocFloat32=a.mallocFloat=m;function P(j){return new Float64Array(k(8*j),0,j)}a.mallocFloat64=a.mallocDouble=P;function T(j){return f?new Uint8ClampedArray(k(j),0,j):E(j)}a.mallocUint8Clamped=T;function B(j){return c?new BigUint64Array(k(8*j),0,j):null}a.mallocBigUint64=B;function F(j){return h?new BigInt64Array(k(8*j),0,j):null}a.mallocBigInt64=F;function U(j){return new DataView(k(j),0,j)}a.mallocDataView=U;function G(j){j=s.nextPow2(j);var H=s.log2(j),N=_[H];return N.length>0?N.pop():new l(j)}a.mallocBuffer=G,a.clearCache=function(){for(var H=0;H<32;++H)d.UINT8[H].length=0,d.UINT16[H].length=0,d.UINT32[H].length=0,d.INT8[H].length=0,d.INT16[H].length=0,d.INT32[H].length=0,d.FLOAT[H].length=0,d.DOUBLE[H].length=0,d.BIGUINT64[H].length=0,d.BIGINT64[H].length=0,d.UINT8C[H].length=0,p[H].length=0,_[H].length=0}},1903:function(i){i.exports=a;function a(o){var s=new Float32Array(16);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s[3]=o[3],s[4]=o[4],s[5]=o[5],s[6]=o[6],s[7]=o[7],s[8]=o[8],s[9]=o[9],s[10]=o[10],s[11]=o[11],s[12]=o[12],s[13]=o[13],s[14]=o[14],s[15]=o[15],s}},1944:function(i,a,o){"use strict";var s=o(5250),u=o(8210);i.exports=l;function l(f,c){for(var h=s(f[0],c[0]),d=1;d>1,G=h(m[U],P);G<=0?(G===0&&(F=U),T=U+1):G>0&&(B=U-1)}return F}a.findCell=b;function v(m,P){for(var T=new Array(m.length),B=0,F=T.length;B=m.length||h(m[be],U)!==0););}return T}a.incidence=v;function k(m,P){if(!P)return v(_(A(m,0)),m,0);for(var T=new Array(P),B=0;B>>N&1&&H.push(F[N]);P.push(H)}return p(P)}a.explode=E;function A(m,P){if(P<0)return[];for(var T=[],B=(1<0}C=C.filter(M);for(var m=C.length,P=new Array(m),T=new Array(m),x=0;x0;){var ce=De.pop(),Je=ze[ce];h(Je,function(Ke,Ct){return Ke-Ct});var nt=Je.length,gt=ye[ce],Nt;if(gt===0){var H=C[ce];Nt=[H]}for(var x=0;x=0)&&(ye[at]=gt^1,De.push(at),gt===0)){var H=C[at];Ue(H)||(H.reverse(),Nt.push(H))}}gt===0&&qe.push(Nt)}return qe}},2145:function(i,a){"use strict";a.uniforms=l,a.attributes=f;var o={FLOAT:"float",FLOAT_VEC2:"vec2",FLOAT_VEC3:"vec3",FLOAT_VEC4:"vec4",INT:"int",INT_VEC2:"ivec2",INT_VEC3:"ivec3",INT_VEC4:"ivec4",BOOL:"bool",BOOL_VEC2:"bvec2",BOOL_VEC3:"bvec3",BOOL_VEC4:"bvec4",FLOAT_MAT2:"mat2",FLOAT_MAT3:"mat3",FLOAT_MAT4:"mat4",SAMPLER_2D:"sampler2D",SAMPLER_CUBE:"samplerCube"},s=null;function u(c,h){if(!s){var d=Object.keys(o);s={};for(var p=0;p1)for(var k=0;k1&&G.drawBuffersWEBGL(u[U]);var re=P.getExtension("WEBGL_depth_texture");re?j?M.depth=v(P,B,F,re.UNSIGNED_INT_24_8_WEBGL,P.DEPTH_STENCIL,P.DEPTH_STENCIL_ATTACHMENT):H&&(M.depth=v(P,B,F,P.UNSIGNED_SHORT,P.DEPTH_COMPONENT,P.DEPTH_ATTACHMENT)):H&&j?M._depth_rb=k(P,B,F,P.DEPTH_STENCIL,P.DEPTH_STENCIL_ATTACHMENT):H?M._depth_rb=k(P,B,F,P.DEPTH_COMPONENT16,P.DEPTH_ATTACHMENT):j&&(M._depth_rb=k(P,B,F,P.STENCIL_INDEX,P.STENCIL_ATTACHMENT));var ae=P.checkFramebufferStatus(P.FRAMEBUFFER);if(ae!==P.FRAMEBUFFER_COMPLETE){M._destroyed=!0,P.bindFramebuffer(P.FRAMEBUFFER,null),P.deleteFramebuffer(M.handle),M.handle=null,M.depth&&(M.depth.dispose(),M.depth=null),M._depth_rb&&(P.deleteRenderbuffer(M._depth_rb),M._depth_rb=null);for(var W=0;WB||P<0||P>B)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");M._shape[0]=m,M._shape[1]=P;for(var F=d(T),U=0;UF||P<0||P>F)throw new Error("gl-fbo: Parameters are too large for FBO");T=T||{};var U=1;if("color"in T){if(U=Math.max(T.color|0,0),U<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(U>1)if(B){if(U>M.getParameter(B.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+U+" draw buffers")}else throw new Error("gl-fbo: Multiple draw buffer extension not supported")}var G=M.UNSIGNED_BYTE,j=M.getExtension("OES_texture_float");if(T.float&&U>0){if(!j)throw new Error("gl-fbo: Context does not support floating point textures");G=M.FLOAT}else T.preferFloat&&U>0&&j&&(G=M.FLOAT);var H=!0;"depth"in T&&(H=!!T.depth);var N=!1;return"stencil"in T&&(N=!!T.stencil),new A(M,m,P,G,U,H,N,B)}},2272:function(i,a,o){"use strict";var s=o(2646)[4],u=o(2478);i.exports=f;function l(c,h,d,p,_,b){var v=h.opposite(p,_);if(!(v<0)){if(_0;){for(var E=d.pop(),b=d.pop(),A=-1,L=-1,v=_[b],C=1;C=0||(h.flip(b,E),l(c,h,d,A,b,L),l(c,h,d,b,L,A),l(c,h,d,L,E,A),l(c,h,d,E,A,L))}}},2334:function(i){i.exports=a;function a(o,s,u){return o[0]=Math.min(s[0],u[0]),o[1]=Math.min(s[1],u[1]),o[2]=Math.min(s[2],u[2]),o[3]=Math.min(s[3],u[3]),o}},2335:function(i){i.exports=a;function a(o){var s=new Float32Array(4);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s[3]=o[3],s}},2361:function(i){var a=!1;if(typeof Float64Array!="undefined"){var o=new Float64Array(1),s=new Uint32Array(o.buffer);if(o[0]=1,a=!0,s[1]===1072693248){let k=function(L,x){return s[0]=L,s[1]=x,o[0]},E=function(L){return o[0]=L,s[0]},A=function(L){return o[0]=L,s[1]};var l=k,f=E,c=A;i.exports=function(x){return o[0]=x,[s[0],s[1]]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=A}else if(s[0]===1072693248){let k=function(L,x){return s[1]=L,s[0]=x,o[0]},E=function(L){return o[0]=L,s[1]},A=function(L){return o[0]=L,s[0]};var h=k,d=E,p=A;i.exports=function(x){return o[0]=x,[s[1],s[0]]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=A}else a=!1}if(!a){let k=function(L,x){return u.writeUInt32LE(L,0,!0),u.writeUInt32LE(x,4,!0),u.readDoubleLE(0,!0)},E=function(L){return u.writeDoubleLE(L,0,!0),u.readUInt32LE(0,!0)},A=function(L){return u.writeDoubleLE(L,0,!0),u.readUInt32LE(4,!0)};var _=k,b=E,v=A,u=new Buffer(8);i.exports=function(x){return u.writeDoubleLE(x,0,!0),[u.readUInt32LE(0,!0),u.readUInt32LE(4,!0)]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=A}i.exports.sign=function(k){return i.exports.hi(k)>>>31},i.exports.exponent=function(k){var E=i.exports.hi(k);return(E<<1>>>21)-1023},i.exports.fraction=function(k){var E=i.exports.lo(k),A=i.exports.hi(k),L=A&(1<<20)-1;return A&2146435072&&(L+=1048576),[E,L]},i.exports.denormalized=function(k){var E=i.exports.hi(k);return!(E&2146435072)}},2408:function(i){i.exports=a;function a(o,s,u){var l=Math.sin(u),f=Math.cos(u),c=s[0],h=s[1],d=s[2],p=s[3],_=s[8],b=s[9],v=s[10],k=s[11];return s!==o&&(o[4]=s[4],o[5]=s[5],o[6]=s[6],o[7]=s[7],o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15]),o[0]=c*f-_*l,o[1]=h*f-b*l,o[2]=d*f-v*l,o[3]=p*f-k*l,o[8]=c*l+_*f,o[9]=h*l+b*f,o[10]=d*l+v*f,o[11]=p*l+k*f,o}},2419:function(i){"use strict";i.exports=a;function a(o){for(var s=1,u=1;uA-E?l(h,d,p,_,b,v,k,E,A,L,x):f(h,d,p,_,b,v,k,E,A,L,x)}return c}function s(){function l(p,_,b,v,k,E,A,L,x,C,M){for(var m=2*p,P=v,T=m*v;PC-x?v?l(p,_,b,k,E,A,L,x,C,M,m):f(p,_,b,k,E,A,L,x,C,M,m):v?c(p,_,b,k,E,A,L,x,C,M,m):h(p,_,b,k,E,A,L,x,C,M,m)}return d}function u(l){return l?o():s()}a.partial=u(!1),a.full=u(!0)},2478:function(i){"use strict";function a(c,h,d,p,_){for(var b=_+1;p<=_;){var v=p+_>>>1,k=c[v],E=d!==void 0?d(k,h):k-h;E>=0?(b=v,_=v-1):p=v+1}return b}function o(c,h,d,p,_){for(var b=_+1;p<=_;){var v=p+_>>>1,k=c[v],E=d!==void 0?d(k,h):k-h;E>0?(b=v,_=v-1):p=v+1}return b}function s(c,h,d,p,_){for(var b=p-1;p<=_;){var v=p+_>>>1,k=c[v],E=d!==void 0?d(k,h):k-h;E<0?(b=v,p=v+1):_=v-1}return b}function u(c,h,d,p,_){for(var b=p-1;p<=_;){var v=p+_>>>1,k=c[v],E=d!==void 0?d(k,h):k-h;E<=0?(b=v,p=v+1):_=v-1}return b}function l(c,h,d,p,_){for(;p<=_;){var b=p+_>>>1,v=c[b],k=d!==void 0?d(v,h):v-h;if(k===0)return b;k<=0?p=b+1:_=b-1}return-1}function f(c,h,d,p,_,b){return typeof d=="function"?b(c,h,d,p===void 0?0:p|0,_===void 0?c.length-1:_|0):b(c,h,void 0,d===void 0?0:d|0,p===void 0?c.length-1:p|0)}i.exports={ge:function(c,h,d,p,_){return f(c,h,d,p,_,a)},gt:function(c,h,d,p,_){return f(c,h,d,p,_,o)},lt:function(c,h,d,p,_){return f(c,h,d,p,_,s)},le:function(c,h,d,p,_){return f(c,h,d,p,_,u)},eq:function(c,h,d,p,_){return f(c,h,d,p,_,l)}}},2504:function(i){i.exports=a;function a(o,s,u){var l=u[0],f=u[1],c=u[2];return o[0]=s[0]*l,o[1]=s[1]*l,o[2]=s[2]*l,o[3]=s[3]*l,o[4]=s[4]*f,o[5]=s[5]*f,o[6]=s[6]*f,o[7]=s[7]*f,o[8]=s[8]*c,o[9]=s[9]*c,o[10]=s[10]*c,o[11]=s[11]*c,o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15],o}},2538:function(i,a,o){"use strict";var s=o(8902),u=o(5542),l=o(2272),f=o(5023);i.exports=_;function c(b){return[Math.min(b[0],b[1]),Math.max(b[0],b[1])]}function h(b,v){return b[0]-v[0]||b[1]-v[1]}function d(b){return b.map(c).sort(h)}function p(b,v,k){return v in b?b[v]:k}function _(b,v,k){Array.isArray(v)?(k=k||{},v=v||[]):(k=v||{},v=[]);var E=!!p(k,"delaunay",!0),A=!!p(k,"interior",!0),L=!!p(k,"exterior",!0),x=!!p(k,"infinity",!1);if(!A&&!L||b.length===0)return[];var C=s(b,v);if(E||A!==L||x){for(var M=u(b.length,d(v)),m=0;m0){if(ze=1,te[Ee++]=p(M[B],E,A,L),B+=re,x>0)for(be=1,F=M[B],Me=te[Ee]=p(F,E,A,L),ye=te[Ee+Ue],Je=te[Ee+qe],Nt=te[Ee+nt],(Me!==ye||Me!==Je||Me!==Nt)&&(G=M[B+U],H=M[B+j],W=M[B+N],h(be,ze,F,G,H,W,Me,ye,Je,Nt,E,A,L),at=ke[Ee]=Ce++),Ee+=1,B+=re,be=2;be0)for(be=1,F=M[B],Me=te[Ee]=p(F,E,A,L),ye=te[Ee+Ue],Je=te[Ee+qe],Nt=te[Ee+nt],(Me!==ye||Me!==Je||Me!==Nt)&&(G=M[B+U],H=M[B+j],W=M[B+N],h(be,ze,F,G,H,W,Me,ye,Je,Nt,E,A,L),at=ke[Ee]=Ce++,Nt!==Je&&d(ke[Ee+qe],at,H,W,Je,Nt,E,A,L)),Ee+=1,B+=re,be=2;be0){if(be=1,te[Ee++]=p(M[B],E,A,L),B+=re,C>0)for(ze=1,F=M[B],Me=te[Ee]=p(F,E,A,L),Je=te[Ee+qe],ye=te[Ee+Ue],Nt=te[Ee+nt],(Me!==Je||Me!==ye||Me!==Nt)&&(G=M[B+U],H=M[B+j],W=M[B+N],h(be,ze,F,G,H,W,Me,Je,ye,Nt,E,A,L),at=ke[Ee]=Ce++),Ee+=1,B+=re,ze=2;ze0)for(ze=1,F=M[B],Me=te[Ee]=p(F,E,A,L),Je=te[Ee+qe],ye=te[Ee+Ue],Nt=te[Ee+nt],(Me!==Je||Me!==ye||Me!==Nt)&&(G=M[B+U],H=M[B+j],W=M[B+N],h(be,ze,F,G,H,W,Me,Je,ye,Nt,E,A,L),at=ke[Ee]=Ce++,Nt!==Je&&d(ke[Ee+qe],at,W,G,Nt,Je,E,A,L)),Ee+=1,B+=re,ze=2;ze 0"),typeof c.vertex!="function"&&h("Must specify vertex creation function"),typeof c.cell!="function"&&h("Must specify cell creation function"),typeof c.phase!="function"&&h("Must specify phase function");for(var b=c.getters||[],v=new Array(p),k=0;k=0?v[k]=!0:v[k]=!1;return l(c.vertex,c.cell,c.phase,_,d,v)}},2642:function(i,a,o){"use strict";i.exports=l;var s=o(727);function u(f){for(var c=0,h=0;hv[1][2]&&(B[0]=-B[0]),v[0][2]>v[2][0]&&(B[1]=-B[1]),v[1][0]>v[0][1]&&(B[2]=-B[2]),!0};function E(x,C,M){var m=C[0],P=C[1],T=C[2],B=C[3];return x[0]=M[0]*m+M[4]*P+M[8]*T+M[12]*B,x[1]=M[1]*m+M[5]*P+M[9]*T+M[13]*B,x[2]=M[2]*m+M[6]*P+M[10]*T+M[14]*B,x[3]=M[3]*m+M[7]*P+M[11]*T+M[15]*B,x}function A(x,C){x[0][0]=C[0],x[0][1]=C[1],x[0][2]=C[2],x[1][0]=C[4],x[1][1]=C[5],x[1][2]=C[6],x[2][0]=C[8],x[2][1]=C[9],x[2][2]=C[10]}function L(x,C,M,m,P){x[0]=C[0]*m+M[0]*P,x[1]=C[1]*m+M[1]*P,x[2]=C[2]*m+M[2]*P}},2653:function(i,a,o){"use strict";var s=o(3865);i.exports=u;function u(l,f){for(var c=l.length,h=new Array(c),d=0;d=d[A]&&(E+=1);v[k]=E}}return h}function c(h,d){try{return s(h,!0)}catch(v){var p=u(h);if(p.length<=d)return[];var _=l(h,p),b=s(_,!0);return f(b,p)}}},2762:function(i,a,o){"use strict";var s=o(1888),u=o(5298),l=o(9618),f=["uint8","uint8_clamped","uint16","uint32","int8","int16","int32","float32"];function c(v,k,E,A,L){this.gl=v,this.type=k,this.handle=E,this.length=A,this.usage=L}var h=c.prototype;h.bind=function(){this.gl.bindBuffer(this.type,this.handle)},h.unbind=function(){this.gl.bindBuffer(this.type,null)},h.dispose=function(){this.gl.deleteBuffer(this.handle)};function d(v,k,E,A,L,x){var C=L.length*L.BYTES_PER_ELEMENT;if(x<0)return v.bufferData(k,L,A),C;if(C+x>E)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return v.bufferSubData(k,x,L),E}function p(v,k){for(var E=s.malloc(v.length,k),A=v.length,L=0;L=0;--A){if(k[A]!==E)return!1;E*=v[A]}return!0}h.update=function(v,k){if(typeof k!="number"&&(k=-1),this.bind(),typeof v=="object"&&typeof v.shape!="undefined"){var E=v.dtype;if(f.indexOf(E)<0&&(E="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var A=gl.getExtension("OES_element_index_uint");A&&E!=="uint16"?E="uint32":E="uint16"}if(E===v.dtype&&_(v.shape,v.stride))v.offset===0&&v.data.length===v.shape[0]?this.length=d(this.gl,this.type,this.length,this.usage,v.data,k):this.length=d(this.gl,this.type,this.length,this.usage,v.data.subarray(v.offset,v.shape[0]),k);else{var L=s.malloc(v.size,E),x=l(L,v.shape);u.assign(x,v),k<0?this.length=d(this.gl,this.type,this.length,this.usage,L,k):this.length=d(this.gl,this.type,this.length,this.usage,L.subarray(0,v.size),k),s.free(L)}}else if(Array.isArray(v)){var C;this.type===this.gl.ELEMENT_ARRAY_BUFFER?C=p(v,"uint16"):C=p(v,"float32"),k<0?this.length=d(this.gl,this.type,this.length,this.usage,C,k):this.length=d(this.gl,this.type,this.length,this.usage,C.subarray(0,v.length),k),s.free(C)}else if(typeof v=="object"&&typeof v.length=="number")this.length=d(this.gl,this.type,this.length,this.usage,v,k);else if(typeof v=="number"||v===void 0){if(k>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");v=v|0,v<=0&&(v=1),this.gl.bufferData(this.type,v|0,this.usage),this.length=v}else throw new Error("gl-buffer: Invalid data type")};function b(v,k,E,A){if(E=E||v.ARRAY_BUFFER,A=A||v.DYNAMIC_DRAW,E!==v.ARRAY_BUFFER&&E!==v.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(A!==v.DYNAMIC_DRAW&&A!==v.STATIC_DRAW&&A!==v.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var L=v.createBuffer(),x=new c(v,E,L,0,A);return x.update(k),x}i.exports=b},2825:function(i){i.exports=a;function a(o,s,u){var l=new Float32Array(3);return l[0]=o,l[1]=s,l[2]=u,l}},2931:function(i,a,o){i.exports={EPSILON:o(2613),create:o(1091),clone:o(3126),angle:o(8192),fromValues:o(2825),copy:o(3990),set:o(1463),equals:o(9922),exactEquals:o(9265),add:o(5632),subtract:o(6843),sub:o(2229),multiply:o(5847),mul:o(4505),divide:o(6690),div:o(4008),min:o(8107),max:o(7417),floor:o(2681),ceil:o(9226),round:o(2447),scale:o(6621),scaleAndAdd:o(8489),distance:o(7056),dist:o(5455),squaredDistance:o(2953),sqrDist:o(6141),length:o(1387),len:o(868),squaredLength:o(3066),sqrLen:o(5486),negate:o(5093),inverse:o(811),normalize:o(3536),dot:o(244),cross:o(5911),lerp:o(6658),random:o(7636),transformMat4:o(5673),transformMat3:o(492),transformQuat:o(264),rotateX:o(6894),rotateY:o(109),rotateZ:o(8692),forEach:o(5137)}},2933:function(i){i.exports=a;function a(o,s){return o[0]=s[0],o[1]=s[1],o[2]=s[2],o[3]=s[3],o}},2953:function(i){i.exports=a;function a(o,s){var u=s[0]-o[0],l=s[1]-o[1],f=s[2]-o[2];return u*u+l*l+f*f}},2962:function(i,a,o){"use strict";var s=o(5250),u=o(8210),l=o(3012),f=o(7004),c=6;function h(A,L,x,C){return function(m){return C(A(x(m[0][0],m[1][1]),x(-m[0][1],m[1][0])))}}function d(A,L,x,C){return function(m){return C(A(L(A(x(m[1][1],m[2][2]),x(-m[1][2],m[2][1])),m[0][0]),A(L(A(x(m[1][0],m[2][2]),x(-m[1][2],m[2][0])),-m[0][1]),L(A(x(m[1][0],m[2][1]),x(-m[1][1],m[2][0])),m[0][2]))))}}function p(A,L,x,C){return function(m){return C(A(A(L(A(L(A(x(m[2][2],m[3][3]),x(-m[2][3],m[3][2])),m[1][1]),A(L(A(x(m[2][1],m[3][3]),x(-m[2][3],m[3][1])),-m[1][2]),L(A(x(m[2][1],m[3][2]),x(-m[2][2],m[3][1])),m[1][3]))),m[0][0]),L(A(L(A(x(m[2][2],m[3][3]),x(-m[2][3],m[3][2])),m[1][0]),A(L(A(x(m[2][0],m[3][3]),x(-m[2][3],m[3][0])),-m[1][2]),L(A(x(m[2][0],m[3][2]),x(-m[2][2],m[3][0])),m[1][3]))),-m[0][1])),A(L(A(L(A(x(m[2][1],m[3][3]),x(-m[2][3],m[3][1])),m[1][0]),A(L(A(x(m[2][0],m[3][3]),x(-m[2][3],m[3][0])),-m[1][1]),L(A(x(m[2][0],m[3][1]),x(-m[2][1],m[3][0])),m[1][3]))),m[0][2]),L(A(L(A(x(m[2][1],m[3][2]),x(-m[2][2],m[3][1])),m[1][0]),A(L(A(x(m[2][0],m[3][2]),x(-m[2][2],m[3][0])),-m[1][1]),L(A(x(m[2][0],m[3][1]),x(-m[2][1],m[3][0])),m[1][2]))),-m[0][3]))))}}function _(A,L,x,C){return function(m){return C(A(A(L(A(A(L(A(L(A(x(m[3][3],m[4][4]),x(-m[3][4],m[4][3])),m[2][2]),A(L(A(x(m[3][2],m[4][4]),x(-m[3][4],m[4][2])),-m[2][3]),L(A(x(m[3][2],m[4][3]),x(-m[3][3],m[4][2])),m[2][4]))),m[1][1]),L(A(L(A(x(m[3][3],m[4][4]),x(-m[3][4],m[4][3])),m[2][1]),A(L(A(x(m[3][1],m[4][4]),x(-m[3][4],m[4][1])),-m[2][3]),L(A(x(m[3][1],m[4][3]),x(-m[3][3],m[4][1])),m[2][4]))),-m[1][2])),A(L(A(L(A(x(m[3][2],m[4][4]),x(-m[3][4],m[4][2])),m[2][1]),A(L(A(x(m[3][1],m[4][4]),x(-m[3][4],m[4][1])),-m[2][2]),L(A(x(m[3][1],m[4][2]),x(-m[3][2],m[4][1])),m[2][4]))),m[1][3]),L(A(L(A(x(m[3][2],m[4][3]),x(-m[3][3],m[4][2])),m[2][1]),A(L(A(x(m[3][1],m[4][3]),x(-m[3][3],m[4][1])),-m[2][2]),L(A(x(m[3][1],m[4][2]),x(-m[3][2],m[4][1])),m[2][3]))),-m[1][4]))),m[0][0]),L(A(A(L(A(L(A(x(m[3][3],m[4][4]),x(-m[3][4],m[4][3])),m[2][2]),A(L(A(x(m[3][2],m[4][4]),x(-m[3][4],m[4][2])),-m[2][3]),L(A(x(m[3][2],m[4][3]),x(-m[3][3],m[4][2])),m[2][4]))),m[1][0]),L(A(L(A(x(m[3][3],m[4][4]),x(-m[3][4],m[4][3])),m[2][0]),A(L(A(x(m[3][0],m[4][4]),x(-m[3][4],m[4][0])),-m[2][3]),L(A(x(m[3][0],m[4][3]),x(-m[3][3],m[4][0])),m[2][4]))),-m[1][2])),A(L(A(L(A(x(m[3][2],m[4][4]),x(-m[3][4],m[4][2])),m[2][0]),A(L(A(x(m[3][0],m[4][4]),x(-m[3][4],m[4][0])),-m[2][2]),L(A(x(m[3][0],m[4][2]),x(-m[3][2],m[4][0])),m[2][4]))),m[1][3]),L(A(L(A(x(m[3][2],m[4][3]),x(-m[3][3],m[4][2])),m[2][0]),A(L(A(x(m[3][0],m[4][3]),x(-m[3][3],m[4][0])),-m[2][2]),L(A(x(m[3][0],m[4][2]),x(-m[3][2],m[4][0])),m[2][3]))),-m[1][4]))),-m[0][1])),A(L(A(A(L(A(L(A(x(m[3][3],m[4][4]),x(-m[3][4],m[4][3])),m[2][1]),A(L(A(x(m[3][1],m[4][4]),x(-m[3][4],m[4][1])),-m[2][3]),L(A(x(m[3][1],m[4][3]),x(-m[3][3],m[4][1])),m[2][4]))),m[1][0]),L(A(L(A(x(m[3][3],m[4][4]),x(-m[3][4],m[4][3])),m[2][0]),A(L(A(x(m[3][0],m[4][4]),x(-m[3][4],m[4][0])),-m[2][3]),L(A(x(m[3][0],m[4][3]),x(-m[3][3],m[4][0])),m[2][4]))),-m[1][1])),A(L(A(L(A(x(m[3][1],m[4][4]),x(-m[3][4],m[4][1])),m[2][0]),A(L(A(x(m[3][0],m[4][4]),x(-m[3][4],m[4][0])),-m[2][1]),L(A(x(m[3][0],m[4][1]),x(-m[3][1],m[4][0])),m[2][4]))),m[1][3]),L(A(L(A(x(m[3][1],m[4][3]),x(-m[3][3],m[4][1])),m[2][0]),A(L(A(x(m[3][0],m[4][3]),x(-m[3][3],m[4][0])),-m[2][1]),L(A(x(m[3][0],m[4][1]),x(-m[3][1],m[4][0])),m[2][3]))),-m[1][4]))),m[0][2]),A(L(A(A(L(A(L(A(x(m[3][2],m[4][4]),x(-m[3][4],m[4][2])),m[2][1]),A(L(A(x(m[3][1],m[4][4]),x(-m[3][4],m[4][1])),-m[2][2]),L(A(x(m[3][1],m[4][2]),x(-m[3][2],m[4][1])),m[2][4]))),m[1][0]),L(A(L(A(x(m[3][2],m[4][4]),x(-m[3][4],m[4][2])),m[2][0]),A(L(A(x(m[3][0],m[4][4]),x(-m[3][4],m[4][0])),-m[2][2]),L(A(x(m[3][0],m[4][2]),x(-m[3][2],m[4][0])),m[2][4]))),-m[1][1])),A(L(A(L(A(x(m[3][1],m[4][4]),x(-m[3][4],m[4][1])),m[2][0]),A(L(A(x(m[3][0],m[4][4]),x(-m[3][4],m[4][0])),-m[2][1]),L(A(x(m[3][0],m[4][1]),x(-m[3][1],m[4][0])),m[2][4]))),m[1][2]),L(A(L(A(x(m[3][1],m[4][2]),x(-m[3][2],m[4][1])),m[2][0]),A(L(A(x(m[3][0],m[4][2]),x(-m[3][2],m[4][0])),-m[2][1]),L(A(x(m[3][0],m[4][1]),x(-m[3][1],m[4][0])),m[2][2]))),-m[1][4]))),-m[0][3]),L(A(A(L(A(L(A(x(m[3][2],m[4][3]),x(-m[3][3],m[4][2])),m[2][1]),A(L(A(x(m[3][1],m[4][3]),x(-m[3][3],m[4][1])),-m[2][2]),L(A(x(m[3][1],m[4][2]),x(-m[3][2],m[4][1])),m[2][3]))),m[1][0]),L(A(L(A(x(m[3][2],m[4][3]),x(-m[3][3],m[4][2])),m[2][0]),A(L(A(x(m[3][0],m[4][3]),x(-m[3][3],m[4][0])),-m[2][2]),L(A(x(m[3][0],m[4][2]),x(-m[3][2],m[4][0])),m[2][3]))),-m[1][1])),A(L(A(L(A(x(m[3][1],m[4][3]),x(-m[3][3],m[4][1])),m[2][0]),A(L(A(x(m[3][0],m[4][3]),x(-m[3][3],m[4][0])),-m[2][1]),L(A(x(m[3][0],m[4][1]),x(-m[3][1],m[4][0])),m[2][3]))),m[1][2]),L(A(L(A(x(m[3][1],m[4][2]),x(-m[3][2],m[4][1])),m[2][0]),A(L(A(x(m[3][0],m[4][2]),x(-m[3][2],m[4][0])),-m[2][1]),L(A(x(m[3][0],m[4][1]),x(-m[3][1],m[4][0])),m[2][2]))),-m[1][3]))),m[0][4])))))}}function b(A){var L=A===2?h:A===3?d:A===4?p:A===5?_:void 0;return L(u,l,s,f)}var v=[function(){return[0]},function(L){return[L[0][0]]}];function k(A,L,x,C,M,m,P,T){return function(F){switch(F.length){case 0:return A(F);case 1:return L(F);case 2:return x(F);case 3:return C(F);case 4:return M(F);case 5:return m(F)}var U=P[F.length];return U||(U=P[F.length]=T(F.length)),U(F)}}function E(){for(;v.length0?H.pop():new ArrayBuffer(W)}a.mallocArrayBuffer=k;function E(j){return new Uint8Array(k(j),0,j)}a.mallocUint8=E;function A(j){return new Uint16Array(k(2*j),0,j)}a.mallocUint16=A;function L(j){return new Uint32Array(k(4*j),0,j)}a.mallocUint32=L;function x(j){return new Int8Array(k(j),0,j)}a.mallocInt8=x;function C(j){return new Int16Array(k(2*j),0,j)}a.mallocInt16=C;function M(j){return new Int32Array(k(4*j),0,j)}a.mallocInt32=M;function m(j){return new Float32Array(k(4*j),0,j)}a.mallocFloat32=a.mallocFloat=m;function P(j){return new Float64Array(k(8*j),0,j)}a.mallocFloat64=a.mallocDouble=P;function T(j){return f?new Uint8ClampedArray(k(j),0,j):E(j)}a.mallocUint8Clamped=T;function B(j){return c?new BigUint64Array(k(8*j),0,j):null}a.mallocBigUint64=B;function F(j){return h?new BigInt64Array(k(8*j),0,j):null}a.mallocBigInt64=F;function U(j){return new DataView(k(j),0,j)}a.mallocDataView=U;function G(j){j=s.nextPow2(j);var W=s.log2(j),N=_[W];return N.length>0?N.pop():new l(j)}a.mallocBuffer=G,a.clearCache=function(){for(var W=0;W<32;++W)d.UINT8[W].length=0,d.UINT16[W].length=0,d.UINT32[W].length=0,d.INT8[W].length=0,d.INT16[W].length=0,d.INT32[W].length=0,d.FLOAT[W].length=0,d.DOUBLE[W].length=0,d.BIGUINT64[W].length=0,d.BIGINT64[W].length=0,d.UINT8C[W].length=0,p[W].length=0,_[W].length=0}},1903:function(i){i.exports=a;function a(o){var s=new Float32Array(16);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s[3]=o[3],s[4]=o[4],s[5]=o[5],s[6]=o[6],s[7]=o[7],s[8]=o[8],s[9]=o[9],s[10]=o[10],s[11]=o[11],s[12]=o[12],s[13]=o[13],s[14]=o[14],s[15]=o[15],s}},1944:function(i,a,o){"use strict";var s=o(5250),u=o(8210);i.exports=l;function l(f,c){for(var h=s(f[0],c[0]),d=1;d>1,G=h(m[U],P);G<=0?(G===0&&(F=U),T=U+1):G>0&&(B=U-1)}return F}a.findCell=b;function v(m,P){for(var T=new Array(m.length),B=0,F=T.length;B=m.length||h(m[be],U)!==0););}return T}a.incidence=v;function k(m,P){if(!P)return v(_(A(m,0)),m,0);for(var T=new Array(P),B=0;B>>N&1&&W.push(F[N]);P.push(W)}return p(P)}a.explode=E;function A(m,P){if(P<0)return[];for(var T=[],B=(1<0}C=C.filter(M);for(var m=C.length,P=new Array(m),T=new Array(m),x=0;x0;){var ce=De.pop(),Je=ze[ce];h(Je,function(Ke,Ct){return Ke-Ct});var nt=Je.length,gt=ye[ce],Nt;if(gt===0){var W=C[ce];Nt=[W]}for(var x=0;x=0)&&(ye[at]=gt^1,De.push(at),gt===0)){var W=C[at];Ue(W)||(W.reverse(),Nt.push(W))}}gt===0&&qe.push(Nt)}return qe}},2145:function(i,a){"use strict";a.uniforms=l,a.attributes=f;var o={FLOAT:"float",FLOAT_VEC2:"vec2",FLOAT_VEC3:"vec3",FLOAT_VEC4:"vec4",INT:"int",INT_VEC2:"ivec2",INT_VEC3:"ivec3",INT_VEC4:"ivec4",BOOL:"bool",BOOL_VEC2:"bvec2",BOOL_VEC3:"bvec3",BOOL_VEC4:"bvec4",FLOAT_MAT2:"mat2",FLOAT_MAT3:"mat3",FLOAT_MAT4:"mat4",SAMPLER_2D:"sampler2D",SAMPLER_CUBE:"samplerCube"},s=null;function u(c,h){if(!s){var d=Object.keys(o);s={};for(var p=0;p1)for(var k=0;k1&&G.drawBuffersWEBGL(u[U]);var re=P.getExtension("WEBGL_depth_texture");re?j?M.depth=v(P,B,F,re.UNSIGNED_INT_24_8_WEBGL,P.DEPTH_STENCIL,P.DEPTH_STENCIL_ATTACHMENT):W&&(M.depth=v(P,B,F,P.UNSIGNED_SHORT,P.DEPTH_COMPONENT,P.DEPTH_ATTACHMENT)):W&&j?M._depth_rb=k(P,B,F,P.DEPTH_STENCIL,P.DEPTH_STENCIL_ATTACHMENT):W?M._depth_rb=k(P,B,F,P.DEPTH_COMPONENT16,P.DEPTH_ATTACHMENT):j&&(M._depth_rb=k(P,B,F,P.STENCIL_INDEX,P.STENCIL_ATTACHMENT));var ae=P.checkFramebufferStatus(P.FRAMEBUFFER);if(ae!==P.FRAMEBUFFER_COMPLETE){M._destroyed=!0,P.bindFramebuffer(P.FRAMEBUFFER,null),P.deleteFramebuffer(M.handle),M.handle=null,M.depth&&(M.depth.dispose(),M.depth=null),M._depth_rb&&(P.deleteRenderbuffer(M._depth_rb),M._depth_rb=null);for(var H=0;HB||P<0||P>B)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");M._shape[0]=m,M._shape[1]=P;for(var F=d(T),U=0;UF||P<0||P>F)throw new Error("gl-fbo: Parameters are too large for FBO");T=T||{};var U=1;if("color"in T){if(U=Math.max(T.color|0,0),U<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(U>1)if(B){if(U>M.getParameter(B.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+U+" draw buffers")}else throw new Error("gl-fbo: Multiple draw buffer extension not supported")}var G=M.UNSIGNED_BYTE,j=M.getExtension("OES_texture_float");if(T.float&&U>0){if(!j)throw new Error("gl-fbo: Context does not support floating point textures");G=M.FLOAT}else T.preferFloat&&U>0&&j&&(G=M.FLOAT);var W=!0;"depth"in T&&(W=!!T.depth);var N=!1;return"stencil"in T&&(N=!!T.stencil),new A(M,m,P,G,U,W,N,B)}},2272:function(i,a,o){"use strict";var s=o(2646)[4],u=o(2478);i.exports=f;function l(c,h,d,p,_,b){var v=h.opposite(p,_);if(!(v<0)){if(_0;){for(var E=d.pop(),b=d.pop(),A=-1,L=-1,v=_[b],C=1;C=0||(h.flip(b,E),l(c,h,d,A,b,L),l(c,h,d,b,L,A),l(c,h,d,L,E,A),l(c,h,d,E,A,L))}}},2334:function(i){i.exports=a;function a(o,s,u){return o[0]=Math.min(s[0],u[0]),o[1]=Math.min(s[1],u[1]),o[2]=Math.min(s[2],u[2]),o[3]=Math.min(s[3],u[3]),o}},2335:function(i){i.exports=a;function a(o){var s=new Float32Array(4);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s[3]=o[3],s}},2361:function(i){var a=!1;if(typeof Float64Array!="undefined"){var o=new Float64Array(1),s=new Uint32Array(o.buffer);if(o[0]=1,a=!0,s[1]===1072693248){let k=function(L,x){return s[0]=L,s[1]=x,o[0]},E=function(L){return o[0]=L,s[0]},A=function(L){return o[0]=L,s[1]};var l=k,f=E,c=A;i.exports=function(x){return o[0]=x,[s[0],s[1]]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=A}else if(s[0]===1072693248){let k=function(L,x){return s[1]=L,s[0]=x,o[0]},E=function(L){return o[0]=L,s[1]},A=function(L){return o[0]=L,s[0]};var h=k,d=E,p=A;i.exports=function(x){return o[0]=x,[s[1],s[0]]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=A}else a=!1}if(!a){let k=function(L,x){return u.writeUInt32LE(L,0,!0),u.writeUInt32LE(x,4,!0),u.readDoubleLE(0,!0)},E=function(L){return u.writeDoubleLE(L,0,!0),u.readUInt32LE(0,!0)},A=function(L){return u.writeDoubleLE(L,0,!0),u.readUInt32LE(4,!0)};var _=k,b=E,v=A,u=new Buffer(8);i.exports=function(x){return u.writeDoubleLE(x,0,!0),[u.readUInt32LE(0,!0),u.readUInt32LE(4,!0)]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=A}i.exports.sign=function(k){return i.exports.hi(k)>>>31},i.exports.exponent=function(k){var E=i.exports.hi(k);return(E<<1>>>21)-1023},i.exports.fraction=function(k){var E=i.exports.lo(k),A=i.exports.hi(k),L=A&(1<<20)-1;return A&2146435072&&(L+=1048576),[E,L]},i.exports.denormalized=function(k){var E=i.exports.hi(k);return!(E&2146435072)}},2408:function(i){i.exports=a;function a(o,s,u){var l=Math.sin(u),f=Math.cos(u),c=s[0],h=s[1],d=s[2],p=s[3],_=s[8],b=s[9],v=s[10],k=s[11];return s!==o&&(o[4]=s[4],o[5]=s[5],o[6]=s[6],o[7]=s[7],o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15]),o[0]=c*f-_*l,o[1]=h*f-b*l,o[2]=d*f-v*l,o[3]=p*f-k*l,o[8]=c*l+_*f,o[9]=h*l+b*f,o[10]=d*l+v*f,o[11]=p*l+k*f,o}},2419:function(i){"use strict";i.exports=a;function a(o){for(var s=1,u=1;uA-E?l(h,d,p,_,b,v,k,E,A,L,x):f(h,d,p,_,b,v,k,E,A,L,x)}return c}function s(){function l(p,_,b,v,k,E,A,L,x,C,M){for(var m=2*p,P=v,T=m*v;PC-x?v?l(p,_,b,k,E,A,L,x,C,M,m):f(p,_,b,k,E,A,L,x,C,M,m):v?c(p,_,b,k,E,A,L,x,C,M,m):h(p,_,b,k,E,A,L,x,C,M,m)}return d}function u(l){return l?o():s()}a.partial=u(!1),a.full=u(!0)},2478:function(i){"use strict";function a(c,h,d,p,_){for(var b=_+1;p<=_;){var v=p+_>>>1,k=c[v],E=d!==void 0?d(k,h):k-h;E>=0?(b=v,_=v-1):p=v+1}return b}function o(c,h,d,p,_){for(var b=_+1;p<=_;){var v=p+_>>>1,k=c[v],E=d!==void 0?d(k,h):k-h;E>0?(b=v,_=v-1):p=v+1}return b}function s(c,h,d,p,_){for(var b=p-1;p<=_;){var v=p+_>>>1,k=c[v],E=d!==void 0?d(k,h):k-h;E<0?(b=v,p=v+1):_=v-1}return b}function u(c,h,d,p,_){for(var b=p-1;p<=_;){var v=p+_>>>1,k=c[v],E=d!==void 0?d(k,h):k-h;E<=0?(b=v,p=v+1):_=v-1}return b}function l(c,h,d,p,_){for(;p<=_;){var b=p+_>>>1,v=c[b],k=d!==void 0?d(v,h):v-h;if(k===0)return b;k<=0?p=b+1:_=b-1}return-1}function f(c,h,d,p,_,b){return typeof d=="function"?b(c,h,d,p===void 0?0:p|0,_===void 0?c.length-1:_|0):b(c,h,void 0,d===void 0?0:d|0,p===void 0?c.length-1:p|0)}i.exports={ge:function(c,h,d,p,_){return f(c,h,d,p,_,a)},gt:function(c,h,d,p,_){return f(c,h,d,p,_,o)},lt:function(c,h,d,p,_){return f(c,h,d,p,_,s)},le:function(c,h,d,p,_){return f(c,h,d,p,_,u)},eq:function(c,h,d,p,_){return f(c,h,d,p,_,l)}}},2504:function(i){i.exports=a;function a(o,s,u){var l=u[0],f=u[1],c=u[2];return o[0]=s[0]*l,o[1]=s[1]*l,o[2]=s[2]*l,o[3]=s[3]*l,o[4]=s[4]*f,o[5]=s[5]*f,o[6]=s[6]*f,o[7]=s[7]*f,o[8]=s[8]*c,o[9]=s[9]*c,o[10]=s[10]*c,o[11]=s[11]*c,o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15],o}},2538:function(i,a,o){"use strict";var s=o(8902),u=o(5542),l=o(2272),f=o(5023);i.exports=_;function c(b){return[Math.min(b[0],b[1]),Math.max(b[0],b[1])]}function h(b,v){return b[0]-v[0]||b[1]-v[1]}function d(b){return b.map(c).sort(h)}function p(b,v,k){return v in b?b[v]:k}function _(b,v,k){Array.isArray(v)?(k=k||{},v=v||[]):(k=v||{},v=[]);var E=!!p(k,"delaunay",!0),A=!!p(k,"interior",!0),L=!!p(k,"exterior",!0),x=!!p(k,"infinity",!1);if(!A&&!L||b.length===0)return[];var C=s(b,v);if(E||A!==L||x){for(var M=u(b.length,d(v)),m=0;m0){if(ze=1,te[Ee++]=p(M[B],E,A,L),B+=re,x>0)for(be=1,F=M[B],Me=te[Ee]=p(F,E,A,L),ye=te[Ee+Ue],Je=te[Ee+qe],Nt=te[Ee+nt],(Me!==ye||Me!==Je||Me!==Nt)&&(G=M[B+U],W=M[B+j],H=M[B+N],h(be,ze,F,G,W,H,Me,ye,Je,Nt,E,A,L),at=ke[Ee]=Ce++),Ee+=1,B+=re,be=2;be0)for(be=1,F=M[B],Me=te[Ee]=p(F,E,A,L),ye=te[Ee+Ue],Je=te[Ee+qe],Nt=te[Ee+nt],(Me!==ye||Me!==Je||Me!==Nt)&&(G=M[B+U],W=M[B+j],H=M[B+N],h(be,ze,F,G,W,H,Me,ye,Je,Nt,E,A,L),at=ke[Ee]=Ce++,Nt!==Je&&d(ke[Ee+qe],at,W,H,Je,Nt,E,A,L)),Ee+=1,B+=re,be=2;be0){if(be=1,te[Ee++]=p(M[B],E,A,L),B+=re,C>0)for(ze=1,F=M[B],Me=te[Ee]=p(F,E,A,L),Je=te[Ee+qe],ye=te[Ee+Ue],Nt=te[Ee+nt],(Me!==Je||Me!==ye||Me!==Nt)&&(G=M[B+U],W=M[B+j],H=M[B+N],h(be,ze,F,G,W,H,Me,Je,ye,Nt,E,A,L),at=ke[Ee]=Ce++),Ee+=1,B+=re,ze=2;ze0)for(ze=1,F=M[B],Me=te[Ee]=p(F,E,A,L),Je=te[Ee+qe],ye=te[Ee+Ue],Nt=te[Ee+nt],(Me!==Je||Me!==ye||Me!==Nt)&&(G=M[B+U],W=M[B+j],H=M[B+N],h(be,ze,F,G,W,H,Me,Je,ye,Nt,E,A,L),at=ke[Ee]=Ce++,Nt!==Je&&d(ke[Ee+qe],at,H,G,Nt,Je,E,A,L)),Ee+=1,B+=re,ze=2;ze 0"),typeof c.vertex!="function"&&h("Must specify vertex creation function"),typeof c.cell!="function"&&h("Must specify cell creation function"),typeof c.phase!="function"&&h("Must specify phase function");for(var b=c.getters||[],v=new Array(p),k=0;k=0?v[k]=!0:v[k]=!1;return l(c.vertex,c.cell,c.phase,_,d,v)}},2642:function(i,a,o){"use strict";i.exports=l;var s=o(727);function u(f){for(var c=0,h=0;hv[1][2]&&(B[0]=-B[0]),v[0][2]>v[2][0]&&(B[1]=-B[1]),v[1][0]>v[0][1]&&(B[2]=-B[2]),!0};function E(x,C,M){var m=C[0],P=C[1],T=C[2],B=C[3];return x[0]=M[0]*m+M[4]*P+M[8]*T+M[12]*B,x[1]=M[1]*m+M[5]*P+M[9]*T+M[13]*B,x[2]=M[2]*m+M[6]*P+M[10]*T+M[14]*B,x[3]=M[3]*m+M[7]*P+M[11]*T+M[15]*B,x}function A(x,C){x[0][0]=C[0],x[0][1]=C[1],x[0][2]=C[2],x[1][0]=C[4],x[1][1]=C[5],x[1][2]=C[6],x[2][0]=C[8],x[2][1]=C[9],x[2][2]=C[10]}function L(x,C,M,m,P){x[0]=C[0]*m+M[0]*P,x[1]=C[1]*m+M[1]*P,x[2]=C[2]*m+M[2]*P}},2653:function(i,a,o){"use strict";var s=o(3865);i.exports=u;function u(l,f){for(var c=l.length,h=new Array(c),d=0;d=d[A]&&(E+=1);v[k]=E}}return h}function c(h,d){try{return s(h,!0)}catch(v){var p=u(h);if(p.length<=d)return[];var _=l(h,p),b=s(_,!0);return f(b,p)}}},2762:function(i,a,o){"use strict";var s=o(1888),u=o(5298),l=o(9618),f=["uint8","uint8_clamped","uint16","uint32","int8","int16","int32","float32"];function c(v,k,E,A,L){this.gl=v,this.type=k,this.handle=E,this.length=A,this.usage=L}var h=c.prototype;h.bind=function(){this.gl.bindBuffer(this.type,this.handle)},h.unbind=function(){this.gl.bindBuffer(this.type,null)},h.dispose=function(){this.gl.deleteBuffer(this.handle)};function d(v,k,E,A,L,x){var C=L.length*L.BYTES_PER_ELEMENT;if(x<0)return v.bufferData(k,L,A),C;if(C+x>E)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return v.bufferSubData(k,x,L),E}function p(v,k){for(var E=s.malloc(v.length,k),A=v.length,L=0;L=0;--A){if(k[A]!==E)return!1;E*=v[A]}return!0}h.update=function(v,k){if(typeof k!="number"&&(k=-1),this.bind(),typeof v=="object"&&typeof v.shape!="undefined"){var E=v.dtype;if(f.indexOf(E)<0&&(E="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var A=gl.getExtension("OES_element_index_uint");A&&E!=="uint16"?E="uint32":E="uint16"}if(E===v.dtype&&_(v.shape,v.stride))v.offset===0&&v.data.length===v.shape[0]?this.length=d(this.gl,this.type,this.length,this.usage,v.data,k):this.length=d(this.gl,this.type,this.length,this.usage,v.data.subarray(v.offset,v.shape[0]),k);else{var L=s.malloc(v.size,E),x=l(L,v.shape);u.assign(x,v),k<0?this.length=d(this.gl,this.type,this.length,this.usage,L,k):this.length=d(this.gl,this.type,this.length,this.usage,L.subarray(0,v.size),k),s.free(L)}}else if(Array.isArray(v)){var C;this.type===this.gl.ELEMENT_ARRAY_BUFFER?C=p(v,"uint16"):C=p(v,"float32"),k<0?this.length=d(this.gl,this.type,this.length,this.usage,C,k):this.length=d(this.gl,this.type,this.length,this.usage,C.subarray(0,v.length),k),s.free(C)}else if(typeof v=="object"&&typeof v.length=="number")this.length=d(this.gl,this.type,this.length,this.usage,v,k);else if(typeof v=="number"||v===void 0){if(k>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");v=v|0,v<=0&&(v=1),this.gl.bufferData(this.type,v|0,this.usage),this.length=v}else throw new Error("gl-buffer: Invalid data type")};function b(v,k,E,A){if(E=E||v.ARRAY_BUFFER,A=A||v.DYNAMIC_DRAW,E!==v.ARRAY_BUFFER&&E!==v.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(A!==v.DYNAMIC_DRAW&&A!==v.STATIC_DRAW&&A!==v.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var L=v.createBuffer(),x=new c(v,E,L,0,A);return x.update(k),x}i.exports=b},2825:function(i){i.exports=a;function a(o,s,u){var l=new Float32Array(3);return l[0]=o,l[1]=s,l[2]=u,l}},2931:function(i,a,o){i.exports={EPSILON:o(2613),create:o(1091),clone:o(3126),angle:o(8192),fromValues:o(2825),copy:o(3990),set:o(1463),equals:o(9922),exactEquals:o(9265),add:o(5632),subtract:o(6843),sub:o(2229),multiply:o(5847),mul:o(4505),divide:o(6690),div:o(4008),min:o(8107),max:o(7417),floor:o(2681),ceil:o(9226),round:o(2447),scale:o(6621),scaleAndAdd:o(8489),distance:o(7056),dist:o(5455),squaredDistance:o(2953),sqrDist:o(6141),length:o(1387),len:o(868),squaredLength:o(3066),sqrLen:o(5486),negate:o(5093),inverse:o(811),normalize:o(3536),dot:o(244),cross:o(5911),lerp:o(6658),random:o(7636),transformMat4:o(5673),transformMat3:o(492),transformQuat:o(264),rotateX:o(6894),rotateY:o(109),rotateZ:o(8692),forEach:o(5137)}},2933:function(i){i.exports=a;function a(o,s){return o[0]=s[0],o[1]=s[1],o[2]=s[2],o[3]=s[3],o}},2953:function(i){i.exports=a;function a(o,s){var u=s[0]-o[0],l=s[1]-o[1],f=s[2]-o[2];return u*u+l*l+f*f}},2962:function(i,a,o){"use strict";var s=o(5250),u=o(8210),l=o(3012),f=o(7004),c=6;function h(A,L,x,C){return function(m){return C(A(x(m[0][0],m[1][1]),x(-m[0][1],m[1][0])))}}function d(A,L,x,C){return function(m){return C(A(L(A(x(m[1][1],m[2][2]),x(-m[1][2],m[2][1])),m[0][0]),A(L(A(x(m[1][0],m[2][2]),x(-m[1][2],m[2][0])),-m[0][1]),L(A(x(m[1][0],m[2][1]),x(-m[1][1],m[2][0])),m[0][2]))))}}function p(A,L,x,C){return function(m){return C(A(A(L(A(L(A(x(m[2][2],m[3][3]),x(-m[2][3],m[3][2])),m[1][1]),A(L(A(x(m[2][1],m[3][3]),x(-m[2][3],m[3][1])),-m[1][2]),L(A(x(m[2][1],m[3][2]),x(-m[2][2],m[3][1])),m[1][3]))),m[0][0]),L(A(L(A(x(m[2][2],m[3][3]),x(-m[2][3],m[3][2])),m[1][0]),A(L(A(x(m[2][0],m[3][3]),x(-m[2][3],m[3][0])),-m[1][2]),L(A(x(m[2][0],m[3][2]),x(-m[2][2],m[3][0])),m[1][3]))),-m[0][1])),A(L(A(L(A(x(m[2][1],m[3][3]),x(-m[2][3],m[3][1])),m[1][0]),A(L(A(x(m[2][0],m[3][3]),x(-m[2][3],m[3][0])),-m[1][1]),L(A(x(m[2][0],m[3][1]),x(-m[2][1],m[3][0])),m[1][3]))),m[0][2]),L(A(L(A(x(m[2][1],m[3][2]),x(-m[2][2],m[3][1])),m[1][0]),A(L(A(x(m[2][0],m[3][2]),x(-m[2][2],m[3][0])),-m[1][1]),L(A(x(m[2][0],m[3][1]),x(-m[2][1],m[3][0])),m[1][2]))),-m[0][3]))))}}function _(A,L,x,C){return function(m){return C(A(A(L(A(A(L(A(L(A(x(m[3][3],m[4][4]),x(-m[3][4],m[4][3])),m[2][2]),A(L(A(x(m[3][2],m[4][4]),x(-m[3][4],m[4][2])),-m[2][3]),L(A(x(m[3][2],m[4][3]),x(-m[3][3],m[4][2])),m[2][4]))),m[1][1]),L(A(L(A(x(m[3][3],m[4][4]),x(-m[3][4],m[4][3])),m[2][1]),A(L(A(x(m[3][1],m[4][4]),x(-m[3][4],m[4][1])),-m[2][3]),L(A(x(m[3][1],m[4][3]),x(-m[3][3],m[4][1])),m[2][4]))),-m[1][2])),A(L(A(L(A(x(m[3][2],m[4][4]),x(-m[3][4],m[4][2])),m[2][1]),A(L(A(x(m[3][1],m[4][4]),x(-m[3][4],m[4][1])),-m[2][2]),L(A(x(m[3][1],m[4][2]),x(-m[3][2],m[4][1])),m[2][4]))),m[1][3]),L(A(L(A(x(m[3][2],m[4][3]),x(-m[3][3],m[4][2])),m[2][1]),A(L(A(x(m[3][1],m[4][3]),x(-m[3][3],m[4][1])),-m[2][2]),L(A(x(m[3][1],m[4][2]),x(-m[3][2],m[4][1])),m[2][3]))),-m[1][4]))),m[0][0]),L(A(A(L(A(L(A(x(m[3][3],m[4][4]),x(-m[3][4],m[4][3])),m[2][2]),A(L(A(x(m[3][2],m[4][4]),x(-m[3][4],m[4][2])),-m[2][3]),L(A(x(m[3][2],m[4][3]),x(-m[3][3],m[4][2])),m[2][4]))),m[1][0]),L(A(L(A(x(m[3][3],m[4][4]),x(-m[3][4],m[4][3])),m[2][0]),A(L(A(x(m[3][0],m[4][4]),x(-m[3][4],m[4][0])),-m[2][3]),L(A(x(m[3][0],m[4][3]),x(-m[3][3],m[4][0])),m[2][4]))),-m[1][2])),A(L(A(L(A(x(m[3][2],m[4][4]),x(-m[3][4],m[4][2])),m[2][0]),A(L(A(x(m[3][0],m[4][4]),x(-m[3][4],m[4][0])),-m[2][2]),L(A(x(m[3][0],m[4][2]),x(-m[3][2],m[4][0])),m[2][4]))),m[1][3]),L(A(L(A(x(m[3][2],m[4][3]),x(-m[3][3],m[4][2])),m[2][0]),A(L(A(x(m[3][0],m[4][3]),x(-m[3][3],m[4][0])),-m[2][2]),L(A(x(m[3][0],m[4][2]),x(-m[3][2],m[4][0])),m[2][3]))),-m[1][4]))),-m[0][1])),A(L(A(A(L(A(L(A(x(m[3][3],m[4][4]),x(-m[3][4],m[4][3])),m[2][1]),A(L(A(x(m[3][1],m[4][4]),x(-m[3][4],m[4][1])),-m[2][3]),L(A(x(m[3][1],m[4][3]),x(-m[3][3],m[4][1])),m[2][4]))),m[1][0]),L(A(L(A(x(m[3][3],m[4][4]),x(-m[3][4],m[4][3])),m[2][0]),A(L(A(x(m[3][0],m[4][4]),x(-m[3][4],m[4][0])),-m[2][3]),L(A(x(m[3][0],m[4][3]),x(-m[3][3],m[4][0])),m[2][4]))),-m[1][1])),A(L(A(L(A(x(m[3][1],m[4][4]),x(-m[3][4],m[4][1])),m[2][0]),A(L(A(x(m[3][0],m[4][4]),x(-m[3][4],m[4][0])),-m[2][1]),L(A(x(m[3][0],m[4][1]),x(-m[3][1],m[4][0])),m[2][4]))),m[1][3]),L(A(L(A(x(m[3][1],m[4][3]),x(-m[3][3],m[4][1])),m[2][0]),A(L(A(x(m[3][0],m[4][3]),x(-m[3][3],m[4][0])),-m[2][1]),L(A(x(m[3][0],m[4][1]),x(-m[3][1],m[4][0])),m[2][3]))),-m[1][4]))),m[0][2]),A(L(A(A(L(A(L(A(x(m[3][2],m[4][4]),x(-m[3][4],m[4][2])),m[2][1]),A(L(A(x(m[3][1],m[4][4]),x(-m[3][4],m[4][1])),-m[2][2]),L(A(x(m[3][1],m[4][2]),x(-m[3][2],m[4][1])),m[2][4]))),m[1][0]),L(A(L(A(x(m[3][2],m[4][4]),x(-m[3][4],m[4][2])),m[2][0]),A(L(A(x(m[3][0],m[4][4]),x(-m[3][4],m[4][0])),-m[2][2]),L(A(x(m[3][0],m[4][2]),x(-m[3][2],m[4][0])),m[2][4]))),-m[1][1])),A(L(A(L(A(x(m[3][1],m[4][4]),x(-m[3][4],m[4][1])),m[2][0]),A(L(A(x(m[3][0],m[4][4]),x(-m[3][4],m[4][0])),-m[2][1]),L(A(x(m[3][0],m[4][1]),x(-m[3][1],m[4][0])),m[2][4]))),m[1][2]),L(A(L(A(x(m[3][1],m[4][2]),x(-m[3][2],m[4][1])),m[2][0]),A(L(A(x(m[3][0],m[4][2]),x(-m[3][2],m[4][0])),-m[2][1]),L(A(x(m[3][0],m[4][1]),x(-m[3][1],m[4][0])),m[2][2]))),-m[1][4]))),-m[0][3]),L(A(A(L(A(L(A(x(m[3][2],m[4][3]),x(-m[3][3],m[4][2])),m[2][1]),A(L(A(x(m[3][1],m[4][3]),x(-m[3][3],m[4][1])),-m[2][2]),L(A(x(m[3][1],m[4][2]),x(-m[3][2],m[4][1])),m[2][3]))),m[1][0]),L(A(L(A(x(m[3][2],m[4][3]),x(-m[3][3],m[4][2])),m[2][0]),A(L(A(x(m[3][0],m[4][3]),x(-m[3][3],m[4][0])),-m[2][2]),L(A(x(m[3][0],m[4][2]),x(-m[3][2],m[4][0])),m[2][3]))),-m[1][1])),A(L(A(L(A(x(m[3][1],m[4][3]),x(-m[3][3],m[4][1])),m[2][0]),A(L(A(x(m[3][0],m[4][3]),x(-m[3][3],m[4][0])),-m[2][1]),L(A(x(m[3][0],m[4][1]),x(-m[3][1],m[4][0])),m[2][3]))),m[1][2]),L(A(L(A(x(m[3][1],m[4][2]),x(-m[3][2],m[4][1])),m[2][0]),A(L(A(x(m[3][0],m[4][2]),x(-m[3][2],m[4][0])),-m[2][1]),L(A(x(m[3][0],m[4][1]),x(-m[3][1],m[4][0])),m[2][2]))),-m[1][3]))),m[0][4])))))}}function b(A){var L=A===2?h:A===3?d:A===4?p:A===5?_:void 0;return L(u,l,s,f)}var v=[function(){return[0]},function(L){return[L[0][0]]}];function k(A,L,x,C,M,m,P,T){return function(F){switch(F.length){case 0:return A(F);case 1:return L(F);case 2:return x(F);case 3:return C(F);case 4:return M(F);case 5:return m(F)}var U=P[F.length];return U||(U=P[F.length]=T(F.length)),U(F)}}function E(){for(;v.length0){B=d[G][P][0],U=G;break}F=B[U^1];for(var j=0;j<2;++j)for(var H=d[j][P],N=0;N0&&(B=W,F=re,U=j)}return T||B&&v(B,U),F}function E(m,P){var T=d[P][m][0],B=[m];v(T,P);for(var F=T[P^1],U=P;;){for(;F!==m;)B.push(F),F=k(B[B.length-2],F,!1);if(d[0][m].length+d[1][m].length===0)break;var G=B[B.length-1],j=m,H=B[1],N=k(G,j,!0);if(s(f[G],f[j],f[H],f[N])<0)break;B.push(m),F=k(G,j)}return B}function A(m,P){return P[1]===P[P.length-1]}for(var p=0;p0;){var C=d[0][p].length,M=E(p,L);A(x,M)?x.push.apply(x,M):(x.length>0&&b.push(x),x=M)}x.length>0&&b.push(x)}return b}},3090:function(i,a,o){"use strict";i.exports=u;var s=o(3250)[3];function u(l){var f=l.length;if(f<3){for(var k=new Array(f),c=0;c1&&s(l[d[v-2]],l[d[v-1]],b)<=0;)v-=1,d.pop();for(d.push(_),v=p.length;v>1&&s(l[p[v-2]],l[p[v-1]],b)>=0;)v-=1,p.pop();p.push(_)}for(var k=new Array(p.length+d.length-2),E=0,c=0,A=d.length;c0;--L)k[E++]=p[L];return k}},3105:function(i,a){"use strict";"use restrict";var o=32;a.INT_BITS=o,a.INT_MAX=2147483647,a.INT_MIN=-1<0)-(l<0)},a.abs=function(l){var f=l>>o-1;return(l^f)-f},a.min=function(l,f){return f^(l^f)&-(l65535)<<4,l>>>=f,c=(l>255)<<3,l>>>=c,f|=c,c=(l>15)<<2,l>>>=c,f|=c,c=(l>3)<<1,l>>>=c,f|=c,f|l>>1},a.log10=function(l){return l>=1e9?9:l>=1e8?8:l>=1e7?7:l>=1e6?6:l>=1e5?5:l>=1e4?4:l>=1e3?3:l>=100?2:l>=10?1:0},a.popCount=function(l){return l=l-(l>>>1&1431655765),l=(l&858993459)+(l>>>2&858993459),(l+(l>>>4)&252645135)*16843009>>>24};function s(l){var f=32;return l&=-l,l&&f--,l&65535&&(f-=16),l&16711935&&(f-=8),l&252645135&&(f-=4),l&858993459&&(f-=2),l&1431655765&&(f-=1),f}a.countTrailingZeros=s,a.nextPow2=function(l){return l+=l===0,--l,l|=l>>>1,l|=l>>>2,l|=l>>>4,l|=l>>>8,l|=l>>>16,l+1},a.prevPow2=function(l){return l|=l>>>1,l|=l>>>2,l|=l>>>4,l|=l>>>8,l|=l>>>16,l-(l>>>1)},a.parity=function(l){return l^=l>>>16,l^=l>>>8,l^=l>>>4,l&=15,27030>>>l&1};var u=new Array(256);(function(l){for(var f=0;f<256;++f){var c=f,h=f,d=7;for(c>>>=1;c;c>>>=1)h<<=1,h|=c&1,--d;l[f]=h<>>8&255]<<16|u[l>>>16&255]<<8|u[l>>>24&255]},a.interleave2=function(l,f){return l&=65535,l=(l|l<<8)&16711935,l=(l|l<<4)&252645135,l=(l|l<<2)&858993459,l=(l|l<<1)&1431655765,f&=65535,f=(f|f<<8)&16711935,f=(f|f<<4)&252645135,f=(f|f<<2)&858993459,f=(f|f<<1)&1431655765,l|f<<1},a.deinterleave2=function(l,f){return l=l>>>f&1431655765,l=(l|l>>>1)&858993459,l=(l|l>>>2)&252645135,l=(l|l>>>4)&16711935,l=(l|l>>>16)&65535,l<<16>>16},a.interleave3=function(l,f,c){return l&=1023,l=(l|l<<16)&4278190335,l=(l|l<<8)&251719695,l=(l|l<<4)&3272356035,l=(l|l<<2)&1227133513,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,l|=f<<1,c&=1023,c=(c|c<<16)&4278190335,c=(c|c<<8)&251719695,c=(c|c<<4)&3272356035,c=(c|c<<2)&1227133513,l|c<<2},a.deinterleave3=function(l,f){return l=l>>>f&1227133513,l=(l|l>>>2)&3272356035,l=(l|l>>>4)&251719695,l=(l|l>>>8)&4278190335,l=(l|l>>>16)&1023,l<<22>>22},a.nextCombination=function(l){var f=l|l-1;return f+1|(~f&-~f)-1>>>s(l)+1}},3126:function(i){i.exports=a;function a(o){var s=new Float32Array(3);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s}},3134:function(i,a,o){"use strict";i.exports=u;var s=o(1682);function u(l,f){var c=l.length;if(typeof f!="number"){f=0;for(var h=0;h=0}function d(p,_,b,v){var k=s(_,b,v);if(k===0){var E=u(s(p,_,b)),A=u(s(p,_,v));if(E===A){if(E===0){var L=h(p,_,b),x=h(p,_,v);return L===x?0:L?1:-1}return 0}else{if(A===0)return E>0||h(p,_,v)?-1:1;if(E===0)return A>0||h(p,_,b)?1:-1}return u(A-E)}var C=s(p,_,b);if(C>0)return k>0&&s(p,_,v)>0?1:-1;if(C<0)return k>0||s(p,_,v)>0?1:-1;var M=s(p,_,v);return M>0||h(p,_,b)?1:-1}},3202:function(i){i.exports=function(o,s){s||(s=[0,""]),o=String(o);var u=parseFloat(o,10);return s[0]=u,s[1]=o.match(/[\d.\-\+]*\s*(.*)/)[1]||"",s}},3233:function(i){"use strict";var a="",o;i.exports=s;function s(u,l){if(typeof u!="string")throw new TypeError("expected a string");if(l===1)return u;if(l===2)return u+u;var f=u.length*l;if(o!==u||typeof o=="undefined")o=u,a="";else if(a.length>=f)return a.substr(0,f);for(;f>a.length&&l>1;)l&1&&(a+=u),l>>=1,u+=u;return a+=u,a=a.substr(0,f),a}},3236:function(i){i.exports=function(a){typeof a=="string"&&(a=[a]);for(var o=[].slice.call(arguments,1),s=[],u=0;u0){if(U<=0)return G;j=F+U}else if(F<0){if(U>=0)return G;j=-(F+U)}else return G;var H=d*j;return G>=H||G<=-H?G:E(P,T,B)},function(P,T,B,F){var U=P[0]-F[0],G=T[0]-F[0],j=B[0]-F[0],H=P[1]-F[1],N=T[1]-F[1],W=B[1]-F[1],re=P[2]-F[2],ae=T[2]-F[2],be=B[2]-F[2],ze=G*W,Ce=j*N,de=j*H,te=U*W,ke=U*N,Ee=G*H,Me=re*(ze-Ce)+ae*(de-te)+be*(ke-Ee),Ue=(Math.abs(ze)+Math.abs(Ce))*Math.abs(re)+(Math.abs(de)+Math.abs(te))*Math.abs(ae)+(Math.abs(ke)+Math.abs(Ee))*Math.abs(be),De=p*Ue;return Me>De||-Me>De?Me:A(P,T,B,F)}];function x(m){var P=L[m.length];return P||(P=L[m.length]=k(m.length)),P.apply(void 0,m)}function C(m,P,T,B,F,U,G){return function(H,N,W,re,ae){switch(arguments.length){case 0:case 1:return 0;case 2:return B(H,N);case 3:return F(H,N,W);case 4:return U(H,N,W,re);case 5:return G(H,N,W,re,ae)}for(var be=new Array(arguments.length),ze=0;ze4)throw new u("","Invalid data type");switch(re.charAt(0)){case"b":case"i":h["uniform"+ae+"iv"](_[U],G);break;case"v":h["uniform"+ae+"fv"](_[U],G);break;default:throw new u("","Unrecognized data type for vector "+name+": "+re)}}else if(re.indexOf("mat")===0&&re.length===4){if(ae=re.charCodeAt(re.length-1)-48,ae<2||ae>4)throw new u("","Invalid uniform dimension type for matrix "+name+": "+re);h["uniformMatrix"+ae+"fv"](_[U],!1,G);break}else throw new u("","Unknown uniform data type for "+name+": "+re)}}}}}function k(C,M){if(typeof M!="object")return[[C,M]];var m=[];for(var P in M){var T=M[P],B=C;parseInt(P)+""===P?B+="["+P+"]":B+="."+P,typeof T=="object"?m.push.apply(m,k(B,T)):m.push([B,T])}return m}function E(C){switch(C){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var M=C.indexOf("vec");if(0<=M&&M<=1&&C.length===4+M){var m=C.charCodeAt(C.length-1)-48;if(m<2||m>4)throw new u("","Invalid data type");return C.charAt(0)==="b"?f(m,!1):f(m,0)}else if(C.indexOf("mat")===0&&C.length===4){var m=C.charCodeAt(C.length-1)-48;if(m<2||m>4)throw new u("","Invalid uniform dimension type for matrix "+name+": "+C);return f(m*m,0)}else throw new u("","Unknown uniform data type for "+name+": "+C)}}function A(C,M,m){if(typeof m=="object"){var P=L(m);Object.defineProperty(C,M,{get:l(P),set:v(m),enumerable:!0,configurable:!1})}else _[m]?Object.defineProperty(C,M,{get:b(m),set:v(m),enumerable:!0,configurable:!1}):C[M]=E(p[m].type)}function L(C){var M;if(Array.isArray(C)){M=new Array(C.length);for(var m=0;m=0!=M>=0&&_.push(E[0]+.5+.5*(C+M)/(C-M))}p+=x,++E[0]}}}function o(){return a()}var s=o;function u(c){var h={};return function(p,_,b){var v=p.dtype,k=p.order,E=[v,k.join()].join(),A=h[E];return A||(h[E]=A=c([v,k])),A(p.shape.slice(0),p.data,p.stride,p.offset|0,_,b)}}function l(c){return u(s.bind(void 0,c))}function f(c){return l({funcName:c.funcName})}i.exports=f({funcName:"zeroCrossings"})},3352:function(i,a,o){"use strict";var s=o(2478),u=0,l=1,f=2;i.exports=P;function c(T,B,F,U,G){this.mid=T,this.left=B,this.right=F,this.leftPoints=U,this.rightPoints=G,this.count=(B?B.count:0)+(F?F.count:0)+U.length}var h=c.prototype;function d(T,B){T.mid=B.mid,T.left=B.left,T.right=B.right,T.leftPoints=B.leftPoints,T.rightPoints=B.rightPoints,T.count=B.count}function p(T,B){var F=C(B);T.mid=F.mid,T.left=F.left,T.right=F.right,T.leftPoints=F.leftPoints,T.rightPoints=F.rightPoints,T.count=F.count}function _(T,B){var F=T.intervals([]);F.push(B),p(T,F)}function b(T,B){var F=T.intervals([]),U=F.indexOf(B);return U<0?u:(F.splice(U,1),p(T,F),l)}h.intervals=function(T){return T.push.apply(T,this.leftPoints),this.left&&this.left.intervals(T),this.right&&this.right.intervals(T),T},h.insert=function(T){var B=this.count-this.leftPoints.length;if(this.count+=1,T[1]3*(B+1)?_(this,T):this.left.insert(T):this.left=C([T]);else if(T[0]>this.mid)this.right?4*(this.right.count+1)>3*(B+1)?_(this,T):this.right.insert(T):this.right=C([T]);else{var F=s.ge(this.leftPoints,T,L),U=s.ge(this.rightPoints,T,x);this.leftPoints.splice(F,0,T),this.rightPoints.splice(U,0,T)}},h.remove=function(T){var B=this.count-this.leftPoints;if(T[1]3*(B-1))return b(this,T);var U=this.left.remove(T);return U===f?(this.left=null,this.count-=1,l):(U===l&&(this.count-=1),U)}else if(T[0]>this.mid){if(!this.right)return u;var G=this.left?this.left.count:0;if(4*G>3*(B-1))return b(this,T);var U=this.right.remove(T);return U===f?(this.right=null,this.count-=1,l):(U===l&&(this.count-=1),U)}else{if(this.count===1)return this.leftPoints[0]===T?f:u;if(this.leftPoints.length===1&&this.leftPoints[0]===T){if(this.left&&this.right){for(var j=this,H=this.left;H.right;)j=H,H=H.right;if(j===this)H.right=this.right;else{var N=this.left,U=this.right;j.count-=H.count,j.right=H.left,H.left=N,H.right=U}d(this,H),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?d(this,this.left):d(this,this.right);return l}for(var N=s.ge(this.leftPoints,T,L);N=0&&T[U][1]>=B;--U){var G=F(T[U]);if(G)return G}}function E(T,B){for(var F=0;Fthis.mid){if(this.right){var F=this.right.queryPoint(T,B);if(F)return F}return k(this.rightPoints,T,B)}else return E(this.leftPoints,B)},h.queryInterval=function(T,B,F){if(Tthis.mid&&this.right){var U=this.right.queryInterval(T,B,F);if(U)return U}return Bthis.mid?k(this.rightPoints,T,F):E(this.leftPoints,F)};function A(T,B){return T-B}function L(T,B){var F=T[0]-B[0];return F||T[1]-B[1]}function x(T,B){var F=T[1]-B[1];return F||T[0]-B[0]}function C(T){if(T.length===0)return null;for(var B=[],F=0;F>1],G=[],j=[],H=[],F=0;F=0),x.type){case"b":k=parseInt(k,10).toString(2);break;case"c":k=String.fromCharCode(parseInt(k,10));break;case"d":case"i":k=parseInt(k,10);break;case"j":k=JSON.stringify(k,null,x.width?parseInt(x.width):0);break;case"e":k=x.precision?parseFloat(k).toExponential(x.precision):parseFloat(k).toExponential();break;case"f":k=x.precision?parseFloat(k).toFixed(x.precision):parseFloat(k);break;case"g":k=x.precision?String(Number(k.toPrecision(x.precision))):parseFloat(k);break;case"o":k=(parseInt(k,10)>>>0).toString(8);break;case"s":k=String(k),k=x.precision?k.substring(0,x.precision):k;break;case"t":k=String(!!k),k=x.precision?k.substring(0,x.precision):k;break;case"T":k=Object.prototype.toString.call(k).slice(8,-1).toLowerCase(),k=x.precision?k.substring(0,x.precision):k;break;case"u":k=parseInt(k,10)>>>0;break;case"v":k=k.valueOf(),k=x.precision?k.substring(0,x.precision):k;break;case"x":k=(parseInt(k,10)>>>0).toString(16);break;case"X":k=(parseInt(k,10)>>>0).toString(16).toUpperCase();break}u.json.test(x.type)?E+=k:(u.number.test(x.type)&&(!P||x.sign)?(T=P?"+":"-",k=k.toString().replace(u.sign,"")):T="",M=x.pad_char?x.pad_char==="0"?"0":x.pad_char.charAt(1):" ",m=x.width-(T+k).length,C=x.width&&m>0?M.repeat(m):"",E+=x.align?T+k+C:M==="0"?T+C+k:C+T+k)}return E}var h=Object.create(null);function d(p){if(h[p])return h[p];for(var _=p,b,v=[],k=0;_;){if((b=u.text.exec(_))!==null)v.push(b[0]);else if((b=u.modulo.exec(_))!==null)v.push("%");else if((b=u.placeholder.exec(_))!==null){if(b[2]){k|=1;var E=[],A=b[2],L=[];if((L=u.key.exec(A))!==null)for(E.push(L[1]);(A=A.substring(L[0].length))!=="";)if((L=u.key_access.exec(A))!==null)E.push(L[1]);else if((L=u.index_access.exec(A))!==null)E.push(L[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");b[2]=E}else k|=2;if(k===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");v.push({placeholder:b[0],param_no:b[1],keys:b[2],sign:b[3],pad_char:b[4],align:b[5],width:b[6],precision:b[7],type:b[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");_=_.substring(b[0].length)}return h[p]=v}a.sprintf=l,a.vsprintf=f,typeof window!="undefined"&&(window.sprintf=l,window.vsprintf=f,s=function(){return{sprintf:l,vsprintf:f}}.call(a,o,a,i),s!==void 0&&(i.exports=s))})()},3390:function(i){i.exports=a;function a(o,s,u,l){var f=new Float32Array(4);return f[0]=o,f[1]=s,f[2]=u,f[3]=l,f}},3436:function(i,a,o){"use strict";var s=o(3236),u=o(9405),l=s([`precision highp float; +`,P)}}return{long:v.trim(),short:k.trim()}}},3012:function(i,a,o){"use strict";var s=o(5250),u=o(9362);i.exports=l;function l(f,c){var h=f.length;if(h===1){var d=s(f[0],c);return d[0]?d:[d[1]]}var p=new Array(2*h),_=[.1,.1],b=[.1,.1],v=0;s(f[0],c,_),_[0]&&(p[v++]=_[0]);for(var k=1;k0){B=d[G][P][0],U=G;break}F=B[U^1];for(var j=0;j<2;++j)for(var W=d[j][P],N=0;N0&&(B=H,F=re,U=j)}return T||B&&v(B,U),F}function E(m,P){var T=d[P][m][0],B=[m];v(T,P);for(var F=T[P^1],U=P;;){for(;F!==m;)B.push(F),F=k(B[B.length-2],F,!1);if(d[0][m].length+d[1][m].length===0)break;var G=B[B.length-1],j=m,W=B[1],N=k(G,j,!0);if(s(f[G],f[j],f[W],f[N])<0)break;B.push(m),F=k(G,j)}return B}function A(m,P){return P[1]===P[P.length-1]}for(var p=0;p0;){var C=d[0][p].length,M=E(p,L);A(x,M)?x.push.apply(x,M):(x.length>0&&b.push(x),x=M)}x.length>0&&b.push(x)}return b}},3090:function(i,a,o){"use strict";i.exports=u;var s=o(3250)[3];function u(l){var f=l.length;if(f<3){for(var k=new Array(f),c=0;c1&&s(l[d[v-2]],l[d[v-1]],b)<=0;)v-=1,d.pop();for(d.push(_),v=p.length;v>1&&s(l[p[v-2]],l[p[v-1]],b)>=0;)v-=1,p.pop();p.push(_)}for(var k=new Array(p.length+d.length-2),E=0,c=0,A=d.length;c0;--L)k[E++]=p[L];return k}},3105:function(i,a){"use strict";"use restrict";var o=32;a.INT_BITS=o,a.INT_MAX=2147483647,a.INT_MIN=-1<0)-(l<0)},a.abs=function(l){var f=l>>o-1;return(l^f)-f},a.min=function(l,f){return f^(l^f)&-(l65535)<<4,l>>>=f,c=(l>255)<<3,l>>>=c,f|=c,c=(l>15)<<2,l>>>=c,f|=c,c=(l>3)<<1,l>>>=c,f|=c,f|l>>1},a.log10=function(l){return l>=1e9?9:l>=1e8?8:l>=1e7?7:l>=1e6?6:l>=1e5?5:l>=1e4?4:l>=1e3?3:l>=100?2:l>=10?1:0},a.popCount=function(l){return l=l-(l>>>1&1431655765),l=(l&858993459)+(l>>>2&858993459),(l+(l>>>4)&252645135)*16843009>>>24};function s(l){var f=32;return l&=-l,l&&f--,l&65535&&(f-=16),l&16711935&&(f-=8),l&252645135&&(f-=4),l&858993459&&(f-=2),l&1431655765&&(f-=1),f}a.countTrailingZeros=s,a.nextPow2=function(l){return l+=l===0,--l,l|=l>>>1,l|=l>>>2,l|=l>>>4,l|=l>>>8,l|=l>>>16,l+1},a.prevPow2=function(l){return l|=l>>>1,l|=l>>>2,l|=l>>>4,l|=l>>>8,l|=l>>>16,l-(l>>>1)},a.parity=function(l){return l^=l>>>16,l^=l>>>8,l^=l>>>4,l&=15,27030>>>l&1};var u=new Array(256);(function(l){for(var f=0;f<256;++f){var c=f,h=f,d=7;for(c>>>=1;c;c>>>=1)h<<=1,h|=c&1,--d;l[f]=h<>>8&255]<<16|u[l>>>16&255]<<8|u[l>>>24&255]},a.interleave2=function(l,f){return l&=65535,l=(l|l<<8)&16711935,l=(l|l<<4)&252645135,l=(l|l<<2)&858993459,l=(l|l<<1)&1431655765,f&=65535,f=(f|f<<8)&16711935,f=(f|f<<4)&252645135,f=(f|f<<2)&858993459,f=(f|f<<1)&1431655765,l|f<<1},a.deinterleave2=function(l,f){return l=l>>>f&1431655765,l=(l|l>>>1)&858993459,l=(l|l>>>2)&252645135,l=(l|l>>>4)&16711935,l=(l|l>>>16)&65535,l<<16>>16},a.interleave3=function(l,f,c){return l&=1023,l=(l|l<<16)&4278190335,l=(l|l<<8)&251719695,l=(l|l<<4)&3272356035,l=(l|l<<2)&1227133513,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,l|=f<<1,c&=1023,c=(c|c<<16)&4278190335,c=(c|c<<8)&251719695,c=(c|c<<4)&3272356035,c=(c|c<<2)&1227133513,l|c<<2},a.deinterleave3=function(l,f){return l=l>>>f&1227133513,l=(l|l>>>2)&3272356035,l=(l|l>>>4)&251719695,l=(l|l>>>8)&4278190335,l=(l|l>>>16)&1023,l<<22>>22},a.nextCombination=function(l){var f=l|l-1;return f+1|(~f&-~f)-1>>>s(l)+1}},3126:function(i){i.exports=a;function a(o){var s=new Float32Array(3);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s}},3134:function(i,a,o){"use strict";i.exports=u;var s=o(1682);function u(l,f){var c=l.length;if(typeof f!="number"){f=0;for(var h=0;h=0}function d(p,_,b,v){var k=s(_,b,v);if(k===0){var E=u(s(p,_,b)),A=u(s(p,_,v));if(E===A){if(E===0){var L=h(p,_,b),x=h(p,_,v);return L===x?0:L?1:-1}return 0}else{if(A===0)return E>0||h(p,_,v)?-1:1;if(E===0)return A>0||h(p,_,b)?1:-1}return u(A-E)}var C=s(p,_,b);if(C>0)return k>0&&s(p,_,v)>0?1:-1;if(C<0)return k>0||s(p,_,v)>0?1:-1;var M=s(p,_,v);return M>0||h(p,_,b)?1:-1}},3202:function(i){i.exports=function(o,s){s||(s=[0,""]),o=String(o);var u=parseFloat(o,10);return s[0]=u,s[1]=o.match(/[\d.\-\+]*\s*(.*)/)[1]||"",s}},3233:function(i){"use strict";var a="",o;i.exports=s;function s(u,l){if(typeof u!="string")throw new TypeError("expected a string");if(l===1)return u;if(l===2)return u+u;var f=u.length*l;if(o!==u||typeof o=="undefined")o=u,a="";else if(a.length>=f)return a.substr(0,f);for(;f>a.length&&l>1;)l&1&&(a+=u),l>>=1,u+=u;return a+=u,a=a.substr(0,f),a}},3236:function(i){i.exports=function(a){typeof a=="string"&&(a=[a]);for(var o=[].slice.call(arguments,1),s=[],u=0;u0){if(U<=0)return G;j=F+U}else if(F<0){if(U>=0)return G;j=-(F+U)}else return G;var W=d*j;return G>=W||G<=-W?G:E(P,T,B)},function(P,T,B,F){var U=P[0]-F[0],G=T[0]-F[0],j=B[0]-F[0],W=P[1]-F[1],N=T[1]-F[1],H=B[1]-F[1],re=P[2]-F[2],ae=T[2]-F[2],be=B[2]-F[2],ze=G*H,Ce=j*N,de=j*W,te=U*H,ke=U*N,Ee=G*W,Me=re*(ze-Ce)+ae*(de-te)+be*(ke-Ee),Ue=(Math.abs(ze)+Math.abs(Ce))*Math.abs(re)+(Math.abs(de)+Math.abs(te))*Math.abs(ae)+(Math.abs(ke)+Math.abs(Ee))*Math.abs(be),De=p*Ue;return Me>De||-Me>De?Me:A(P,T,B,F)}];function x(m){var P=L[m.length];return P||(P=L[m.length]=k(m.length)),P.apply(void 0,m)}function C(m,P,T,B,F,U,G){return function(W,N,H,re,ae){switch(arguments.length){case 0:case 1:return 0;case 2:return B(W,N);case 3:return F(W,N,H);case 4:return U(W,N,H,re);case 5:return G(W,N,H,re,ae)}for(var be=new Array(arguments.length),ze=0;ze4)throw new u("","Invalid data type");switch(re.charAt(0)){case"b":case"i":h["uniform"+ae+"iv"](_[U],G);break;case"v":h["uniform"+ae+"fv"](_[U],G);break;default:throw new u("","Unrecognized data type for vector "+name+": "+re)}}else if(re.indexOf("mat")===0&&re.length===4){if(ae=re.charCodeAt(re.length-1)-48,ae<2||ae>4)throw new u("","Invalid uniform dimension type for matrix "+name+": "+re);h["uniformMatrix"+ae+"fv"](_[U],!1,G);break}else throw new u("","Unknown uniform data type for "+name+": "+re)}}}}}function k(C,M){if(typeof M!="object")return[[C,M]];var m=[];for(var P in M){var T=M[P],B=C;parseInt(P)+""===P?B+="["+P+"]":B+="."+P,typeof T=="object"?m.push.apply(m,k(B,T)):m.push([B,T])}return m}function E(C){switch(C){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var M=C.indexOf("vec");if(0<=M&&M<=1&&C.length===4+M){var m=C.charCodeAt(C.length-1)-48;if(m<2||m>4)throw new u("","Invalid data type");return C.charAt(0)==="b"?f(m,!1):f(m,0)}else if(C.indexOf("mat")===0&&C.length===4){var m=C.charCodeAt(C.length-1)-48;if(m<2||m>4)throw new u("","Invalid uniform dimension type for matrix "+name+": "+C);return f(m*m,0)}else throw new u("","Unknown uniform data type for "+name+": "+C)}}function A(C,M,m){if(typeof m=="object"){var P=L(m);Object.defineProperty(C,M,{get:l(P),set:v(m),enumerable:!0,configurable:!1})}else _[m]?Object.defineProperty(C,M,{get:b(m),set:v(m),enumerable:!0,configurable:!1}):C[M]=E(p[m].type)}function L(C){var M;if(Array.isArray(C)){M=new Array(C.length);for(var m=0;m=0!=M>=0&&_.push(E[0]+.5+.5*(C+M)/(C-M))}p+=x,++E[0]}}}function o(){return a()}var s=o;function u(c){var h={};return function(p,_,b){var v=p.dtype,k=p.order,E=[v,k.join()].join(),A=h[E];return A||(h[E]=A=c([v,k])),A(p.shape.slice(0),p.data,p.stride,p.offset|0,_,b)}}function l(c){return u(s.bind(void 0,c))}function f(c){return l({funcName:c.funcName})}i.exports=f({funcName:"zeroCrossings"})},3352:function(i,a,o){"use strict";var s=o(2478),u=0,l=1,f=2;i.exports=P;function c(T,B,F,U,G){this.mid=T,this.left=B,this.right=F,this.leftPoints=U,this.rightPoints=G,this.count=(B?B.count:0)+(F?F.count:0)+U.length}var h=c.prototype;function d(T,B){T.mid=B.mid,T.left=B.left,T.right=B.right,T.leftPoints=B.leftPoints,T.rightPoints=B.rightPoints,T.count=B.count}function p(T,B){var F=C(B);T.mid=F.mid,T.left=F.left,T.right=F.right,T.leftPoints=F.leftPoints,T.rightPoints=F.rightPoints,T.count=F.count}function _(T,B){var F=T.intervals([]);F.push(B),p(T,F)}function b(T,B){var F=T.intervals([]),U=F.indexOf(B);return U<0?u:(F.splice(U,1),p(T,F),l)}h.intervals=function(T){return T.push.apply(T,this.leftPoints),this.left&&this.left.intervals(T),this.right&&this.right.intervals(T),T},h.insert=function(T){var B=this.count-this.leftPoints.length;if(this.count+=1,T[1]3*(B+1)?_(this,T):this.left.insert(T):this.left=C([T]);else if(T[0]>this.mid)this.right?4*(this.right.count+1)>3*(B+1)?_(this,T):this.right.insert(T):this.right=C([T]);else{var F=s.ge(this.leftPoints,T,L),U=s.ge(this.rightPoints,T,x);this.leftPoints.splice(F,0,T),this.rightPoints.splice(U,0,T)}},h.remove=function(T){var B=this.count-this.leftPoints;if(T[1]3*(B-1))return b(this,T);var U=this.left.remove(T);return U===f?(this.left=null,this.count-=1,l):(U===l&&(this.count-=1),U)}else if(T[0]>this.mid){if(!this.right)return u;var G=this.left?this.left.count:0;if(4*G>3*(B-1))return b(this,T);var U=this.right.remove(T);return U===f?(this.right=null,this.count-=1,l):(U===l&&(this.count-=1),U)}else{if(this.count===1)return this.leftPoints[0]===T?f:u;if(this.leftPoints.length===1&&this.leftPoints[0]===T){if(this.left&&this.right){for(var j=this,W=this.left;W.right;)j=W,W=W.right;if(j===this)W.right=this.right;else{var N=this.left,U=this.right;j.count-=W.count,j.right=W.left,W.left=N,W.right=U}d(this,W),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?d(this,this.left):d(this,this.right);return l}for(var N=s.ge(this.leftPoints,T,L);N=0&&T[U][1]>=B;--U){var G=F(T[U]);if(G)return G}}function E(T,B){for(var F=0;Fthis.mid){if(this.right){var F=this.right.queryPoint(T,B);if(F)return F}return k(this.rightPoints,T,B)}else return E(this.leftPoints,B)},h.queryInterval=function(T,B,F){if(Tthis.mid&&this.right){var U=this.right.queryInterval(T,B,F);if(U)return U}return Bthis.mid?k(this.rightPoints,T,F):E(this.leftPoints,F)};function A(T,B){return T-B}function L(T,B){var F=T[0]-B[0];return F||T[1]-B[1]}function x(T,B){var F=T[1]-B[1];return F||T[0]-B[0]}function C(T){if(T.length===0)return null;for(var B=[],F=0;F>1],G=[],j=[],W=[],F=0;F=0),x.type){case"b":k=parseInt(k,10).toString(2);break;case"c":k=String.fromCharCode(parseInt(k,10));break;case"d":case"i":k=parseInt(k,10);break;case"j":k=JSON.stringify(k,null,x.width?parseInt(x.width):0);break;case"e":k=x.precision?parseFloat(k).toExponential(x.precision):parseFloat(k).toExponential();break;case"f":k=x.precision?parseFloat(k).toFixed(x.precision):parseFloat(k);break;case"g":k=x.precision?String(Number(k.toPrecision(x.precision))):parseFloat(k);break;case"o":k=(parseInt(k,10)>>>0).toString(8);break;case"s":k=String(k),k=x.precision?k.substring(0,x.precision):k;break;case"t":k=String(!!k),k=x.precision?k.substring(0,x.precision):k;break;case"T":k=Object.prototype.toString.call(k).slice(8,-1).toLowerCase(),k=x.precision?k.substring(0,x.precision):k;break;case"u":k=parseInt(k,10)>>>0;break;case"v":k=k.valueOf(),k=x.precision?k.substring(0,x.precision):k;break;case"x":k=(parseInt(k,10)>>>0).toString(16);break;case"X":k=(parseInt(k,10)>>>0).toString(16).toUpperCase();break}u.json.test(x.type)?E+=k:(u.number.test(x.type)&&(!P||x.sign)?(T=P?"+":"-",k=k.toString().replace(u.sign,"")):T="",M=x.pad_char?x.pad_char==="0"?"0":x.pad_char.charAt(1):" ",m=x.width-(T+k).length,C=x.width&&m>0?M.repeat(m):"",E+=x.align?T+k+C:M==="0"?T+C+k:C+T+k)}return E}var h=Object.create(null);function d(p){if(h[p])return h[p];for(var _=p,b,v=[],k=0;_;){if((b=u.text.exec(_))!==null)v.push(b[0]);else if((b=u.modulo.exec(_))!==null)v.push("%");else if((b=u.placeholder.exec(_))!==null){if(b[2]){k|=1;var E=[],A=b[2],L=[];if((L=u.key.exec(A))!==null)for(E.push(L[1]);(A=A.substring(L[0].length))!=="";)if((L=u.key_access.exec(A))!==null)E.push(L[1]);else if((L=u.index_access.exec(A))!==null)E.push(L[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");b[2]=E}else k|=2;if(k===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");v.push({placeholder:b[0],param_no:b[1],keys:b[2],sign:b[3],pad_char:b[4],align:b[5],width:b[6],precision:b[7],type:b[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");_=_.substring(b[0].length)}return h[p]=v}a.sprintf=l,a.vsprintf=f,typeof window!="undefined"&&(window.sprintf=l,window.vsprintf=f,s=function(){return{sprintf:l,vsprintf:f}}.call(a,o,a,i),s!==void 0&&(i.exports=s))})()},3390:function(i){i.exports=a;function a(o,s,u,l){var f=new Float32Array(4);return f[0]=o,f[1]=s,f[2]=u,f[3]=l,f}},3436:function(i,a,o){"use strict";var s=o(3236),u=o(9405),l=s([`precision highp float; #define GLSLIFY 1 attribute vec3 position, offset; @@ -1571,11 +1571,11 @@ void main() { ) discard; gl_FragColor = opacity * fragColor; -}`]);i.exports=function(c){return u(c,l,f,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},3502:function(i,a,o){i.exports=l;var s=o(5995),u=o(9127);function l(f,c){return u(s(f,c))}},3508:function(i,a,o){var s=o(6852);s=s.slice().filter(function(u){return!/^(gl\_|texture)/.test(u)}),i.exports=s.concat(["gl_VertexID","gl_InstanceID","gl_Position","gl_PointSize","gl_FragCoord","gl_FrontFacing","gl_FragDepth","gl_PointCoord","gl_MaxVertexAttribs","gl_MaxVertexUniformVectors","gl_MaxVertexOutputVectors","gl_MaxFragmentInputVectors","gl_MaxVertexTextureImageUnits","gl_MaxCombinedTextureImageUnits","gl_MaxTextureImageUnits","gl_MaxFragmentUniformVectors","gl_MaxDrawBuffers","gl_MinProgramTexelOffset","gl_MaxProgramTexelOffset","gl_DepthRangeParameters","gl_DepthRange","trunc","round","roundEven","isnan","isinf","floatBitsToInt","floatBitsToUint","intBitsToFloat","uintBitsToFloat","packSnorm2x16","unpackSnorm2x16","packUnorm2x16","unpackUnorm2x16","packHalf2x16","unpackHalf2x16","outerProduct","transpose","determinant","inverse","texture","textureSize","textureProj","textureLod","textureOffset","texelFetch","texelFetchOffset","textureProjOffset","textureLodOffset","textureProjLod","textureProjLodOffset","textureGrad","textureGradOffset","textureProjGrad","textureProjGradOffset"])},3536:function(i){i.exports=a;function a(o,s){var u=s[0],l=s[1],f=s[2],c=u*u+l*l+f*f;return c>0&&(c=1/Math.sqrt(c),o[0]=s[0]*c,o[1]=s[1]*c,o[2]=s[2]*c),o}},3545:function(i,a,o){"use strict";i.exports=c;var s=o(8105),u=s("lop&&b[C+d]>L;--x,C-=k){for(var M=C,m=C+k,P=0;P>>1,L=2*h,x=A,C=b[L*A+d];k=B?(x=T,C=B):P>=U?(x=m,C=P):(x=F,C=U):B>=U?(x=T,C=B):U>=P?(x=m,C=P):(x=F,C=U);for(var H=L*(E-1),N=L*x,G=0;Gthis.buffer.length){u.free(this.buffer);for(var E=this.buffer=u.mallocUint8(f(k*v*4)),A=0;Ax|0},vertex:function(E,A,L,x,C,M,m,P,T,B,F,U,G){var j=(m<<0)+(P<<1)+(T<<2)+(B<<3)|0;if(!(j===0||j===15))switch(j){case 0:F.push([E-.5,A-.5]);break;case 1:F.push([E-.25-.25*(x+L-2*G)/(L-x),A-.25-.25*(C+L-2*G)/(L-C)]);break;case 2:F.push([E-.75-.25*(-x-L+2*G)/(x-L),A-.25-.25*(M+x-2*G)/(x-M)]);break;case 3:F.push([E-.5,A-.5-.5*(C+L+M+x-4*G)/(L-C+x-M)]);break;case 4:F.push([E-.25-.25*(M+C-2*G)/(C-M),A-.75-.25*(-C-L+2*G)/(C-L)]);break;case 5:F.push([E-.5-.5*(x+L+M+C-4*G)/(L-x+C-M),A-.5]);break;case 6:F.push([E-.5-.25*(-x-L+M+C)/(x-L+C-M),A-.5-.25*(-C-L+M+x)/(C-L+x-M)]);break;case 7:F.push([E-.75-.25*(M+C-2*G)/(C-M),A-.75-.25*(M+x-2*G)/(x-M)]);break;case 8:F.push([E-.75-.25*(-M-C+2*G)/(M-C),A-.75-.25*(-M-x+2*G)/(M-x)]);break;case 9:F.push([E-.5-.25*(x+L+-M-C)/(L-x+M-C),A-.5-.25*(C+L+-M-x)/(L-C+M-x)]);break;case 10:F.push([E-.5-.5*(-x-L+-M-C+4*G)/(x-L+M-C),A-.5]);break;case 11:F.push([E-.25-.25*(-M-C+2*G)/(M-C),A-.75-.25*(C+L-2*G)/(L-C)]);break;case 12:F.push([E-.5,A-.5-.5*(-C-L+-M-x+4*G)/(C-L+M-x)]);break;case 13:F.push([E-.75-.25*(x+L-2*G)/(L-x),A-.25-.25*(-M-x+2*G)/(M-x)]);break;case 14:F.push([E-.25-.25*(-x-L+2*G)/(x-L),A-.25-.25*(-C-L+2*G)/(C-L)]);break;case 15:F.push([E-.5,A-.5]);break}},cell:function(E,A,L,x,C,M,m,P,T){C?P.push([E,A]):P.push([A,E])}});return function(k,E){var A=[],L=[];return v(k,A,L,E),{positions:A,cells:L}}}};function f(p,_){var b=p.length+"d",v=l[b];if(v)return v(s,p,_)}function c(p,_){for(var b=u(p,_),v=b.length,k=new Array(v),E=new Array(v),A=0;A>1,b=-7,v=u?f-1:0,k=u?-1:1,E=o[s+v];for(v+=k,c=E&(1<<-b)-1,E>>=-b,b+=d;b>0;c=c*256+o[s+v],v+=k,b-=8);for(h=c&(1<<-b)-1,c>>=-b,b+=l;b>0;h=h*256+o[s+v],v+=k,b-=8);if(c===0)c=1-_;else{if(c===p)return h?NaN:(E?-1:1)*(1/0);h=h+Math.pow(2,l),c=c-_}return(E?-1:1)*h*Math.pow(2,c-l)},a.write=function(o,s,u,l,f,c){var h,d,p,_=c*8-f-1,b=(1<<_)-1,v=b>>1,k=f===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=l?0:c-1,A=l?1:-1,L=s<0||s===0&&1/s<0?1:0;for(s=Math.abs(s),isNaN(s)||s===1/0?(d=isNaN(s)?1:0,h=b):(h=Math.floor(Math.log(s)/Math.LN2),s*(p=Math.pow(2,-h))<1&&(h--,p*=2),h+v>=1?s+=k/p:s+=k*Math.pow(2,1-v),s*p>=2&&(h++,p/=2),h+v>=b?(d=0,h=b):h+v>=1?(d=(s*p-1)*Math.pow(2,f),h=h+v):(d=s*Math.pow(2,v-1)*Math.pow(2,f),h=0));f>=8;o[u+E]=d&255,E+=A,d/=256,f-=8);for(h=h<0;o[u+E]=h&255,E+=A,h/=256,_-=8);o[u+E-A]|=L*128}},3788:function(i,a,o){"use strict";var s=o(8507),u=o(2419);i.exports=l;function l(f,c){return s(f,c)||u(f)-u(c)}},3837:function(i,a,o){"use strict";i.exports=F;var s=o(4935),u=o(501),l=o(5304),f=o(6429),c=o(6444),h=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),d=ArrayBuffer,p=DataView;function _(U){return d.isView(U)&&!(U instanceof p)}function b(U){return Array.isArray(U)||_(U)}function v(U,G){return U[0]=G[0],U[1]=G[1],U[2]=G[2],U}function k(U){this.gl=U,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=l(U)}var E=k.prototype;E.update=function(U){U=U||{};function G(Me,Ue,De){if(De in U){var ye=U[De],qe=this[De],ce;(Me?b(ye)&&b(ye[0]):b(ye))?this[De]=ce=[Ue(ye[0]),Ue(ye[1]),Ue(ye[2])]:this[De]=ce=[Ue(ye),Ue(ye),Ue(ye)];for(var Je=0;Je<3;++Je)if(ce[Je]!==qe[Je])return!0}return!1}var j=G.bind(this,!1,Number),H=G.bind(this,!1,Boolean),N=G.bind(this,!1,String),W=G.bind(this,!0,function(Me){if(b(Me)){if(Me.length===3)return[+Me[0],+Me[1],+Me[2],1];if(Me.length===4)return[+Me[0],+Me[1],+Me[2],+Me[3]]}return[0,0,0,1]}),re,ae=!1,be=!1;if("bounds"in U)for(var ze=U.bounds,Ce=0;Ce<2;++Ce)for(var de=0;de<3;++de)ze[Ce][de]!==this.bounds[Ce][de]&&(be=!0),this.bounds[Ce][de]=ze[Ce][de];if("ticks"in U){re=U.ticks,ae=!0,this.autoTicks=!1;for(var Ce=0;Ce<3;++Ce)this.tickSpacing[Ce]=0}else j("tickSpacing")&&(this.autoTicks=!0,be=!0);if(this._firstInit&&("ticks"in U||"tickSpacing"in U||(this.autoTicks=!0),be=!0,ae=!0,this._firstInit=!1),be&&this.autoTicks&&(re=c.create(this.bounds,this.tickSpacing),ae=!0),ae){for(var Ce=0;Ce<3;++Ce)re[Ce].sort(function(Ue,De){return Ue.x-De.x});c.equal(re,this.ticks)?ae=!1:this.ticks=re}H("tickEnable"),N("tickFont")&&(ae=!0),N("tickFontStyle")&&(ae=!0),N("tickFontWeight")&&(ae=!0),N("tickFontVariant")&&(ae=!0),j("tickSize"),j("tickAngle"),j("tickPad"),W("tickColor");var te=N("labels");N("labelFont")&&(te=!0),N("labelFontStyle")&&(te=!0),N("labelFontWeight")&&(te=!0),N("labelFontVariant")&&(te=!0),H("labelEnable"),j("labelSize"),j("labelPad"),W("labelColor"),H("lineEnable"),H("lineMirror"),j("lineWidth"),W("lineColor"),H("lineTickEnable"),H("lineTickMirror"),j("lineTickLength"),j("lineTickWidth"),W("lineTickColor"),H("gridEnable"),j("gridWidth"),W("gridColor"),H("zeroEnable"),W("zeroLineColor"),j("zeroLineWidth"),H("backgroundEnable"),W("backgroundColor");var ke=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],Ee=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(te||ae)&&this._text.update(this.bounds,this.labels,ke,this.ticks,Ee):this._text=s(this.gl,this.bounds,this.labels,ke,this.ticks,Ee),this._lines&&ae&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=u(this.gl,this.bounds,this.ticks))};function A(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}var L=[new A,new A,new A];function x(U,G,j,H,N){for(var W=U.primalOffset,re=U.primalMinor,ae=U.mirrorOffset,be=U.mirrorMinor,ze=H[G],Ce=0;Ce<3;++Ce)if(G!==Ce){var de=W,te=ae,ke=re,Ee=be;ze&1<0?(ke[Ce]=-1,Ee[Ce]=0):(ke[Ce]=0,Ee[Ce]=1)}}var C=[0,0,0],M={model:h,view:h,projection:h,_ortho:!1};E.isOpaque=function(){return!0},E.isTransparent=function(){return!1},E.drawTransparent=function(U){};var m=0,P=[0,0,0],T=[0,0,0],B=[0,0,0];E.draw=function(U){U=U||M;for(var De=this.gl,G=U.model||h,j=U.view||h,H=U.projection||h,N=this.bounds,W=U._ortho||!1,re=f(G,j,H,N,W),ae=re.cubeEdges,be=re.axis,ze=j[12],Ce=j[13],de=j[14],te=j[15],ke=W?2:1,Ee=ke*this.pixelRatio*(H[3]*ze+H[7]*Ce+H[11]*de+H[15]*te)/De.drawingBufferHeight,Me=0;Me<3;++Me)this.lastCubeProps.cubeEdges[Me]=ae[Me],this.lastCubeProps.axis[Me]=be[Me];for(var Ue=L,Me=0;Me<3;++Me)x(L[Me],Me,this.bounds,ae,be);for(var De=this.gl,ye=C,Me=0;Me<3;++Me)this.backgroundEnable[Me]?ye[Me]=be[Me]:ye[Me]=0;this._background.draw(G,j,H,N,ye,this.backgroundColor),this._lines.bind(G,j,H,this);for(var Me=0;Me<3;++Me){var qe=[0,0,0];be[Me]>0?qe[Me]=N[1][Me]:qe[Me]=N[0][Me];for(var ce=0;ce<2;++ce){var Je=(Me+1+ce)%3,nt=(Me+1+(ce^1))%3;this.gridEnable[Je]&&this._lines.drawGrid(Je,nt,this.bounds,qe,this.gridColor[Je],this.gridWidth[Je]*this.pixelRatio)}for(var ce=0;ce<2;++ce){var Je=(Me+1+ce)%3,nt=(Me+1+(ce^1))%3;this.zeroEnable[nt]&&Math.min(N[0][nt],N[1][nt])<=0&&Math.max(N[0][nt],N[1][nt])>=0&&this._lines.drawZero(Je,nt,this.bounds,qe,this.zeroLineColor[nt],this.zeroLineWidth[nt]*this.pixelRatio)}}for(var Me=0;Me<3;++Me){this.lineEnable[Me]&&this._lines.drawAxisLine(Me,this.bounds,Ue[Me].primalOffset,this.lineColor[Me],this.lineWidth[Me]*this.pixelRatio),this.lineMirror[Me]&&this._lines.drawAxisLine(Me,this.bounds,Ue[Me].mirrorOffset,this.lineColor[Me],this.lineWidth[Me]*this.pixelRatio);for(var gt=v(P,Ue[Me].primalMinor),Nt=v(T,Ue[Me].mirrorMinor),at=this.lineTickLength,ce=0;ce<3;++ce){var Ke=Ee/G[5*ce];gt[ce]*=at[ce]*Ke,Nt[ce]*=at[ce]*Ke}this.lineTickEnable[Me]&&this._lines.drawAxisTicks(Me,Ue[Me].primalOffset,gt,this.lineTickColor[Me],this.lineTickWidth[Me]*this.pixelRatio),this.lineTickMirror[Me]&&this._lines.drawAxisTicks(Me,Ue[Me].mirrorOffset,Nt,this.lineTickColor[Me],this.lineTickWidth[Me]*this.pixelRatio)}this._lines.unbind(),this._text.bind(G,j,H,this.pixelRatio);var Ct,wt=.5,St,Dt;function Zt(Ye){Dt=[0,0,0],Dt[Ye]=1}function Et(Ye,He,it){var et=(Ye+1)%3,It=(Ye+2)%3,Yt=He[et],cr=He[It],_r=it[et],yr=it[It];if(Yt>0&&yr>0){Zt(et);return}else if(Yt>0&&yr<0){Zt(et);return}else if(Yt<0&&yr>0){Zt(et);return}else if(Yt<0&&yr<0){Zt(et);return}else if(cr>0&&_r>0){Zt(It);return}else if(cr>0&&_r<0){Zt(It);return}else if(cr<0&&_r>0){Zt(It);return}else if(cr<0&&_r<0){Zt(It);return}}for(var Me=0;Me<3;++Me){for(var Te=Ue[Me].primalMinor,ot=Ue[Me].mirrorMinor,Tt=v(B,Ue[Me].primalOffset),ce=0;ce<3;++ce)this.lineTickEnable[Me]&&(Tt[ce]+=Ee*Te[ce]*Math.max(this.lineTickLength[ce],0)/G[5*ce]);var vt=[0,0,0];if(vt[Me]=1,this.tickEnable[Me]){this.tickAngle[Me]===-3600?(this.tickAngle[Me]=0,this.tickAlign[Me]="auto"):this.tickAlign[Me]=-1,St=1,Ct=[this.tickAlign[Me],wt,St],Ct[0]==="auto"?Ct[0]=m:Ct[0]=parseInt(""+Ct[0]),Dt=[0,0,0],Et(Me,Te,ot);for(var ce=0;ce<3;++ce)Tt[ce]+=Ee*Te[ce]*this.tickPad[ce]/G[5*ce];this._text.drawTicks(Me,this.tickSize[Me],this.tickAngle[Me],Tt,this.tickColor[Me],vt,Dt,Ct)}if(this.labelEnable[Me]){St=0,Dt=[0,0,0],this.labels[Me].length>4&&(Zt(Me),St=1),Ct=[this.labelAlign[Me],wt,St],Ct[0]==="auto"?Ct[0]=m:Ct[0]=parseInt(""+Ct[0]);for(var ce=0;ce<3;++ce)Tt[ce]+=Ee*Te[ce]*this.labelPad[ce]/G[5*ce];Tt[Me]+=.5*(N[0][Me]+N[1][Me]),this._text.drawLabel(Me,this.labelSize[Me],this.labelAngle[Me],Tt,this.labelColor[Me],[0,0,0],Dt,Ct)}}this._text.unbind()},E.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function F(U,G){var j=new k(U);return j.update(G),j}},3840:function(i){"use strict";i.exports=L;var a=0,o=1;function s(x,C,M,m,P,T){this._color=x,this.key=C,this.value=M,this.left=m,this.right=P,this._count=T}function u(x){return new s(x._color,x.key,x.value,x.left,x.right,x._count)}function l(x,C){return new s(x,C.key,C.value,C.left,C.right,C._count)}function f(x){x._count=1+(x.left?x.left._count:0)+(x.right?x.right._count:0)}function c(x,C){this._compare=x,this.root=C}var h=c.prototype;Object.defineProperty(h,"keys",{get:function(){var x=[];return this.forEach(function(C,M){x.push(C)}),x}}),Object.defineProperty(h,"values",{get:function(){var x=[];return this.forEach(function(C,M){x.push(M)}),x}}),Object.defineProperty(h,"length",{get:function(){return this.root?this.root._count:0}}),h.insert=function(x,C){for(var M=this._compare,m=this.root,P=[],T=[];m;){var B=M(x,m.key);P.push(m),T.push(B),B<=0?m=m.left:m=m.right}P.push(new s(a,x,C,null,null,1));for(var F=P.length-2;F>=0;--F){var m=P[F];T[F]<=0?P[F]=new s(m._color,m.key,m.value,P[F+1],m.right,m._count+1):P[F]=new s(m._color,m.key,m.value,m.left,P[F+1],m._count+1)}for(var F=P.length-1;F>1;--F){var U=P[F-1],m=P[F];if(U._color===o||m._color===o)break;var G=P[F-2];if(G.left===U)if(U.left===m){var j=G.right;if(j&&j._color===a)U._color=o,G.right=l(o,j),G._color=a,F-=1;else{if(G._color=a,G.left=U.right,U._color=o,U.right=G,P[F-2]=U,P[F-1]=m,f(G),f(U),F>=3){var H=P[F-3];H.left===G?H.left=U:H.right=U}break}}else{var j=G.right;if(j&&j._color===a)U._color=o,G.right=l(o,j),G._color=a,F-=1;else{if(U.right=m.left,G._color=a,G.left=m.right,m._color=o,m.left=U,m.right=G,P[F-2]=m,P[F-1]=U,f(G),f(U),f(m),F>=3){var H=P[F-3];H.left===G?H.left=m:H.right=m}break}}else if(U.right===m){var j=G.left;if(j&&j._color===a)U._color=o,G.left=l(o,j),G._color=a,F-=1;else{if(G._color=a,G.right=U.left,U._color=o,U.left=G,P[F-2]=U,P[F-1]=m,f(G),f(U),F>=3){var H=P[F-3];H.right===G?H.right=U:H.left=U}break}}else{var j=G.left;if(j&&j._color===a)U._color=o,G.left=l(o,j),G._color=a,F-=1;else{if(U.left=m.right,G._color=a,G.right=m.left,m._color=o,m.right=U,m.left=G,P[F-2]=m,P[F-1]=U,f(G),f(U),f(m),F>=3){var H=P[F-3];H.right===G?H.right=m:H.left=m}break}}}return P[0]._color=o,new c(M,P[0])};function d(x,C){if(C.left){var M=d(x,C.left);if(M)return M}var M=x(C.key,C.value);if(M)return M;if(C.right)return d(x,C.right)}function p(x,C,M,m){var P=C(x,m.key);if(P<=0){if(m.left){var T=p(x,C,M,m.left);if(T)return T}var T=M(m.key,m.value);if(T)return T}if(m.right)return p(x,C,M,m.right)}function _(x,C,M,m,P){var T=M(x,P.key),B=M(C,P.key),F;if(T<=0&&(P.left&&(F=_(x,C,M,m,P.left),F)||B>0&&(F=m(P.key,P.value),F)))return F;if(B>0&&P.right)return _(x,C,M,m,P.right)}h.forEach=function(C,M,m){if(this.root)switch(arguments.length){case 1:return d(C,this.root);case 2:return p(M,this._compare,C,this.root);case 3:return this._compare(M,m)>=0?void 0:_(M,m,this._compare,C,this.root)}},Object.defineProperty(h,"begin",{get:function(){for(var x=[],C=this.root;C;)x.push(C),C=C.left;return new b(this,x)}}),Object.defineProperty(h,"end",{get:function(){for(var x=[],C=this.root;C;)x.push(C),C=C.right;return new b(this,x)}}),h.at=function(x){if(x<0)return new b(this,[]);for(var C=this.root,M=[];;){if(M.push(C),C.left){if(x=C.right._count)break;C=C.right}else break}return new b(this,[])},h.ge=function(x){for(var C=this._compare,M=this.root,m=[],P=0;M;){var T=C(x,M.key);m.push(M),T<=0&&(P=m.length),T<=0?M=M.left:M=M.right}return m.length=P,new b(this,m)},h.gt=function(x){for(var C=this._compare,M=this.root,m=[],P=0;M;){var T=C(x,M.key);m.push(M),T<0&&(P=m.length),T<0?M=M.left:M=M.right}return m.length=P,new b(this,m)},h.lt=function(x){for(var C=this._compare,M=this.root,m=[],P=0;M;){var T=C(x,M.key);m.push(M),T>0&&(P=m.length),T<=0?M=M.left:M=M.right}return m.length=P,new b(this,m)},h.le=function(x){for(var C=this._compare,M=this.root,m=[],P=0;M;){var T=C(x,M.key);m.push(M),T>=0&&(P=m.length),T<0?M=M.left:M=M.right}return m.length=P,new b(this,m)},h.find=function(x){for(var C=this._compare,M=this.root,m=[];M;){var P=C(x,M.key);if(m.push(M),P===0)return new b(this,m);P<=0?M=M.left:M=M.right}return new b(this,[])},h.remove=function(x){var C=this.find(x);return C?C.remove():this},h.get=function(x){for(var C=this._compare,M=this.root;M;){var m=C(x,M.key);if(m===0)return M.value;m<=0?M=M.left:M=M.right}};function b(x,C){this.tree=x,this._stack=C}var v=b.prototype;Object.defineProperty(v,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(v,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),v.clone=function(){return new b(this.tree,this._stack.slice())};function k(x,C){x.key=C.key,x.value=C.value,x.left=C.left,x.right=C.right,x._color=C._color,x._count=C._count}function E(x){for(var C,M,m,P,T=x.length-1;T>=0;--T){if(C=x[T],T===0){C._color=o;return}if(M=x[T-1],M.left===C){if(m=M.right,m.right&&m.right._color===a){if(m=M.right=u(m),P=m.right=u(m.right),M.right=m.left,m.left=M,m.right=P,m._color=M._color,C._color=o,M._color=o,P._color=o,f(M),f(m),T>1){var B=x[T-2];B.left===M?B.left=m:B.right=m}x[T-1]=m;return}else if(m.left&&m.left._color===a){if(m=M.right=u(m),P=m.left=u(m.left),M.right=P.left,m.left=P.right,P.left=M,P.right=m,P._color=M._color,M._color=o,m._color=o,C._color=o,f(M),f(m),f(P),T>1){var B=x[T-2];B.left===M?B.left=P:B.right=P}x[T-1]=P;return}if(m._color===o)if(M._color===a){M._color=o,M.right=l(a,m);return}else{M.right=l(a,m);continue}else{if(m=u(m),M.right=m.left,m.left=M,m._color=M._color,M._color=a,f(M),f(m),T>1){var B=x[T-2];B.left===M?B.left=m:B.right=m}x[T-1]=m,x[T]=M,T+11){var B=x[T-2];B.right===M?B.right=m:B.left=m}x[T-1]=m;return}else if(m.right&&m.right._color===a){if(m=M.left=u(m),P=m.right=u(m.right),M.left=P.right,m.right=P.left,P.right=M,P.left=m,P._color=M._color,M._color=o,m._color=o,C._color=o,f(M),f(m),f(P),T>1){var B=x[T-2];B.right===M?B.right=P:B.left=P}x[T-1]=P;return}if(m._color===o)if(M._color===a){M._color=o,M.left=l(a,m);return}else{M.left=l(a,m);continue}else{if(m=u(m),M.left=m.right,m.right=M,m._color=M._color,M._color=a,f(M),f(m),T>1){var B=x[T-2];B.right===M?B.right=m:B.left=m}x[T-1]=m,x[T]=M,T+1=0;--m){var M=x[m];M.left===x[m+1]?C[m]=new s(M._color,M.key,M.value,C[m+1],M.right,M._count):C[m]=new s(M._color,M.key,M.value,M.left,C[m+1],M._count)}if(M=C[C.length-1],M.left&&M.right){var P=C.length;for(M=M.left;M.right;)C.push(M),M=M.right;var T=C[P-1];C.push(new s(M._color,T.key,T.value,M.left,M.right,M._count)),C[P-1].key=M.key,C[P-1].value=M.value;for(var m=C.length-2;m>=P;--m)M=C[m],C[m]=new s(M._color,M.key,M.value,M.left,C[m+1],M._count);C[P-1].left=C[P]}if(M=C[C.length-1],M._color===a){var B=C[C.length-2];B.left===M?B.left=null:B.right===M&&(B.right=null),C.pop();for(var m=0;m0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(v,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(v,"index",{get:function(){var x=0,C=this._stack;if(C.length===0){var M=this.tree.root;return M?M._count:0}else C[C.length-1].left&&(x=C[C.length-1].left._count);for(var m=C.length-2;m>=0;--m)C[m+1]===C[m].right&&(++x,C[m].left&&(x+=C[m].left._count));return x},enumerable:!0}),v.next=function(){var x=this._stack;if(x.length!==0){var C=x[x.length-1];if(C.right)for(C=C.right;C;)x.push(C),C=C.left;else for(x.pop();x.length>0&&x[x.length-1].right===C;)C=x[x.length-1],x.pop()}},Object.defineProperty(v,"hasNext",{get:function(){var x=this._stack;if(x.length===0)return!1;if(x[x.length-1].right)return!0;for(var C=x.length-1;C>0;--C)if(x[C-1].left===x[C])return!0;return!1}}),v.update=function(x){var C=this._stack;if(C.length===0)throw new Error("Can't update empty node!");var M=new Array(C.length),m=C[C.length-1];M[M.length-1]=new s(m._color,m.key,x,m.left,m.right,m._count);for(var P=C.length-2;P>=0;--P)m=C[P],m.left===C[P+1]?M[P]=new s(m._color,m.key,m.value,M[P+1],m.right,m._count):M[P]=new s(m._color,m.key,m.value,m.left,M[P+1],m._count);return new c(this.tree._compare,M[0])},v.prev=function(){var x=this._stack;if(x.length!==0){var C=x[x.length-1];if(C.left)for(C=C.left;C;)x.push(C),C=C.right;else for(x.pop();x.length>0&&x[x.length-1].left===C;)C=x[x.length-1],x.pop()}},Object.defineProperty(v,"hasPrev",{get:function(){var x=this._stack;if(x.length===0)return!1;if(x[x.length-1].left)return!0;for(var C=x.length-1;C>0;--C)if(x[C-1].right===x[C])return!0;return!1}});function A(x,C){return xC?1:0}function L(x){return new c(x||A,null)}},3865:function(i,a,o){"use strict";var s=o(869);i.exports=u;function u(l,f){return s(l[0].mul(f[1]).add(f[0].mul(l[1])),l[1].mul(f[1]))}},3952:function(i,a,o){"use strict";i.exports=l;var s=o(3250);function u(f,c){for(var h=new Array(c+1),d=0;d20?52:h+32}},4040:function(i){i.exports=a;function a(o,s,u,l,f,c,h){var d=1/(s-u),p=1/(l-f),_=1/(c-h);return o[0]=-2*d,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=-2*p,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=2*_,o[11]=0,o[12]=(s+u)*d,o[13]=(f+l)*p,o[14]=(h+c)*_,o[15]=1,o}},4041:function(i){i.exports=a;function a(o,s,u){var l=s[0],f=s[1],c=s[2],h=u[0],d=u[1],p=u[2],_=u[3],b=_*l+d*c-p*f,v=_*f+p*l-h*c,k=_*c+h*f-d*l,E=-h*l-d*f-p*c;return o[0]=b*_+E*-h+v*-p-k*-d,o[1]=v*_+E*-d+k*-h-b*-p,o[2]=k*_+E*-p+b*-d-v*-h,o[3]=s[3],o}},4081:function(i){"use strict";i.exports=a;function a(o,s,u,l,f,c,h,d,p,_){var b=s+c+_;if(v>0){var v=Math.sqrt(b+1);o[0]=.5*(h-p)/v,o[1]=.5*(d-l)/v,o[2]=.5*(u-c)/v,o[3]=.5*v}else{var k=Math.max(s,c,_),v=Math.sqrt(2*k-b+1);s>=k?(o[0]=.5*v,o[1]=.5*(f+u)/v,o[2]=.5*(d+l)/v,o[3]=.5*(h-p)/v):c>=k?(o[0]=.5*(u+f)/v,o[1]=.5*v,o[2]=.5*(p+h)/v,o[3]=.5*(d-l)/v):(o[0]=.5*(l+d)/v,o[1]=.5*(h+p)/v,o[2]=.5*v,o[3]=.5*(u-f)/v)}return o}},4100:function(i,a,o){"use strict";var s=o(4437),u=o(3837),l=o(5445),f=o(4449),c=o(3589),h=o(2260),d=o(7169),p=o(351),_=o(4772),b=o(4040),v=o(799),k=o(9216)({tablet:!0,featureDetect:!0});i.exports={createScene:C,createCamera:s};function E(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function A(m,P){var T=null;try{T=m.getContext("webgl",P),T||(T=m.getContext("experimental-webgl",P))}catch(B){return null}return T}function L(m){var P=Math.round(Math.log(Math.abs(m))/Math.log(10));if(P<0){var T=Math.round(Math.pow(10,-P));return Math.ceil(m*T)/T}else if(P>0){var T=Math.round(Math.pow(10,P));return Math.ceil(m/T)*T}return Math.ceil(m)}function x(m){return typeof m=="boolean"?m:!0}function C(m){m=m||{},m.camera=m.camera||{};var P=m.canvas;if(!P)if(P=document.createElement("canvas"),m.container){var T=m.container;T.appendChild(P)}else document.body.appendChild(P);var B=m.gl;if(B||(m.glOptions&&(k=!!m.glOptions.preserveDrawingBuffer),B=A(P,m.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:k})),!B)throw new Error("webgl not supported");var F=m.bounds||[[-10,-10,-10],[10,10,10]],U=new E,G=h(B,B.drawingBufferWidth,B.drawingBufferHeight,{preferFloat:!k}),j=v(B),H=m.cameraObject&&m.cameraObject._ortho===!0||m.camera.projection&&m.camera.projection.type==="orthographic"||!1,N={eye:m.camera.eye||[2,0,0],center:m.camera.center||[0,0,0],up:m.camera.up||[0,1,0],zoomMin:m.camera.zoomMax||.1,zoomMax:m.camera.zoomMin||100,mode:m.camera.mode||"turntable",_ortho:H},W=m.axes||{},re=u(B,W);re.enable=!W.disable;var ae=m.spikes||{},be=f(B,ae),ze=[],Ce=[],de=[],te=[],ke=!0,De=!0,Ee=new Array(16),Me=new Array(16),Ue={view:null,projection:Ee,model:Me,_ortho:!1},De=!0,ye=[B.drawingBufferWidth,B.drawingBufferHeight],qe=m.cameraObject||s(P,N),ce={gl:B,contextLost:!1,pixelRatio:m.pixelRatio||1,canvas:P,selection:U,camera:qe,axes:re,axesPixels:null,spikes:be,bounds:F,objects:ze,shape:ye,aspect:m.aspectRatio||[1,1,1],pickRadius:m.pickRadius||10,zNear:m.zNear||.01,zFar:m.zFar||1e3,fovy:m.fovy||Math.PI/4,clearColor:m.clearColor||[0,0,0,0],autoResize:x(m.autoResize),autoBounds:x(m.autoBounds),autoScale:!!m.autoScale,autoCenter:x(m.autoCenter),clipToBounds:x(m.clipToBounds),snapToData:!!m.snapToData,onselect:m.onselect||null,onrender:m.onrender||null,onclick:m.onclick||null,cameraParams:Ue,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(Dt){this.aspect[0]=Dt.x,this.aspect[1]=Dt.y,this.aspect[2]=Dt.z,De=!0},setBounds:function(Dt,Zt){this.bounds[0][Dt]=Zt.min,this.bounds[1][Dt]=Zt.max},setClearColor:function(Dt){this.clearColor=Dt},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},Je=[B.drawingBufferWidth/ce.pixelRatio|0,B.drawingBufferHeight/ce.pixelRatio|0];function nt(){if(!ce._stopped&&ce.autoResize){var Dt=P.parentNode,Zt=1,Et=1;Dt&&Dt!==document.body?(Zt=Dt.clientWidth,Et=Dt.clientHeight):(Zt=window.innerWidth,Et=window.innerHeight);var Te=Math.ceil(Zt*ce.pixelRatio)|0,ot=Math.ceil(Et*ce.pixelRatio)|0;if(Te!==P.width||ot!==P.height){P.width=Te,P.height=ot;var Tt=P.style;Tt.position=Tt.position||"absolute",Tt.left="0px",Tt.top="0px",Tt.width=Zt+"px",Tt.height=Et+"px",ke=!0}}}ce.autoResize&&nt(),window.addEventListener("resize",nt);function gt(){for(var Dt=ze.length,Zt=te.length,Et=0;Et0&&de[Zt-1]===0;)de.pop(),te.pop().dispose()}ce.update=function(Dt){ce._stopped||(Dt=Dt||{},ke=!0,De=!0)},ce.add=function(Dt){ce._stopped||(Dt.axes=re,ze.push(Dt),Ce.push(-1),ke=!0,De=!0,gt())},ce.remove=function(Dt){if(!ce._stopped){var Zt=ze.indexOf(Dt);Zt<0||(ze.splice(Zt,1),Ce.pop(),ke=!0,De=!0,gt())}},ce.dispose=function(){if(!ce._stopped&&(ce._stopped=!0,window.removeEventListener("resize",nt),P.removeEventListener("webglcontextlost",Nt),ce.mouseListener.enabled=!1,!ce.contextLost)){re.dispose(),be.dispose();for(var Dt=0;DtU.distance)continue;for(var it=0;it_;){var M=v[C-2],m=v[C-1];if(Mv[b+1]:!0}function d(_,b,v,k){_*=2;var E=k[_];return E>1,x=L-k,C=L+k,M=E,m=x,P=L,T=C,B=A,F=_+1,U=b-1,G=0;h(M,m,v)&&(G=M,M=m,m=G),h(T,B,v)&&(G=T,T=B,B=G),h(M,P,v)&&(G=M,M=P,P=G),h(m,P,v)&&(G=m,m=P,P=G),h(M,T,v)&&(G=M,M=T,T=G),h(P,T,v)&&(G=P,P=T,T=G),h(m,B,v)&&(G=m,m=B,B=G),h(m,P,v)&&(G=m,m=P,P=G),h(T,B,v)&&(G=T,T=B,B=G);for(var j=v[2*m],H=v[2*m+1],N=v[2*T],W=v[2*T+1],re=2*M,ae=2*P,be=2*B,ze=2*E,Ce=2*L,de=2*A,te=0;te<2;++te){var ke=v[re+te],Ee=v[ae+te],Me=v[be+te];v[ze+te]=ke,v[Ce+te]=Ee,v[de+te]=Me}l(x,_,v),l(C,b,v);for(var Ue=F;Ue<=U;++Ue)if(d(Ue,j,H,v))Ue!==F&&u(Ue,F,v),++F;else if(!d(Ue,N,W,v))for(;;)if(d(U,N,W,v)){d(U,j,H,v)?(f(Ue,F,U,v),++F,--U):(u(Ue,U,v),--U);break}else{if(--U0)if(E[0]!==L[1][0])A=k,k=k.right;else{var m=p(k.right,E);if(m)return m;k=k.left}else{if(E[0]!==L[1][0])return k;var m=p(k.right,E);if(m)return m;k=k.left}}return A}h.castUp=function(k){var E=s.le(this.coordinates,k[0]);if(E<0)return-1;var A=this.slabs[E],L=p(this.slabs[E],k),x=-1;if(L&&(x=L.value),this.coordinates[E]===k[0]){var C=null;if(L&&(C=L.key),E>0){var M=p(this.slabs[E-1],k);M&&(C?f(M.key,C)>0&&(C=M.key,x=M.value):(x=M.value,C=M.key))}var m=this.horizontal[E];if(m.length>0){var P=s.ge(m,k[1],d);if(P=m.length)return x;T=m[P]}}if(T.start)if(C){var B=l(C[0],C[1],[k[0],T.y]);C[0][0]>C[1][0]&&(B=-B),B>0&&(x=T.index)}else x=T.index;else T.y!==k[1]&&(x=T.index)}}}return x};function _(k,E,A,L){this.y=k,this.index=E,this.start=A,this.closed=L}function b(k,E,A,L){this.x=k,this.segment=E,this.create=A,this.index=L}function v(k){for(var E=k.length,A=2*E,L=new Array(A),x=0;xMath.abs(m))v.rotate(B,0,0,-M*P*Math.PI*x.rotateSpeed/window.innerWidth);else if(!x._ortho){var F=-x.zoomSpeed*T*m/window.innerHeight*(B-v.lastT())/20;v.pan(B,0,0,E*(Math.exp(F)-1))}}},!0)},x.enableMouseListeners(),x}},4449:function(i,a,o){"use strict";var s=o(2762),u=o(8116),l=o(1493);i.exports=b;var f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function c(v,k,E,A){this.gl=v,this.buffer=k,this.vao=E,this.shader=A,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var h=c.prototype,d=[0,0,0],p=[0,0,0],_=[0,0];h.isTransparent=function(){return!1},h.drawTransparent=function(v){},h.draw=function(v){var k=this.gl,E=this.vao,A=this.shader;E.bind(),A.bind();var L=v.model||f,x=v.view||f,C=v.projection||f,M;this.axes&&(M=this.axes.lastCubeProps.axis);for(var m=d,P=p,T=0;T<3;++T)M&&M[T]<0?(m[T]=this.bounds[0][T],P[T]=this.bounds[1][T]):(m[T]=this.bounds[1][T],P[T]=this.bounds[0][T]);_[0]=k.drawingBufferWidth,_[1]=k.drawingBufferHeight,A.uniforms.model=L,A.uniforms.view=x,A.uniforms.projection=C,A.uniforms.coordinates=[this.position,m,P],A.uniforms.colors=this.colors,A.uniforms.screenShape=_;for(var T=0;T<3;++T)A.uniforms.lineWidth=this.lineWidth[T]*this.pixelRatio,this.enabled[T]&&(E.draw(k.TRIANGLES,6,6*T),this.drawSides[T]&&E.draw(k.TRIANGLES,12,18+12*T));E.unbind()},h.update=function(v){v&&("bounds"in v&&(this.bounds=v.bounds),"position"in v&&(this.position=v.position),"lineWidth"in v&&(this.lineWidth=v.lineWidth),"colors"in v&&(this.colors=v.colors),"enabled"in v&&(this.enabled=v.enabled),"drawSides"in v&&(this.drawSides=v.drawSides))},h.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function b(v,k){var E=[];function A(m,P,T,B,F,U){var G=[m,P,T,0,0,0,1];G[B+3]=1,G[B]=F,E.push.apply(E,G),G[6]=-1,E.push.apply(E,G),G[B]=U,E.push.apply(E,G),E.push.apply(E,G),G[6]=1,E.push.apply(E,G),G[B]=F,E.push.apply(E,G)}A(0,0,0,0,0,1),A(0,0,0,1,0,1),A(0,0,0,2,0,1),A(1,0,0,1,-1,1),A(1,0,0,2,-1,1),A(0,1,0,0,-1,1),A(0,1,0,2,-1,1),A(0,0,1,0,-1,1),A(0,0,1,1,-1,1);var L=s(v,E),x=u(v,[{type:v.FLOAT,buffer:L,size:3,offset:0,stride:28},{type:v.FLOAT,buffer:L,size:3,offset:12,stride:28},{type:v.FLOAT,buffer:L,size:1,offset:24,stride:28}]),C=l(v);C.attributes.position.location=0,C.attributes.color.location=1,C.attributes.weight.location=2;var M=new c(v,L,x,C);return M.update(k),M}},4494:function(i){i.exports=a;function a(o,s){return o[0]=1/s[0],o[1]=1/s[1],o[2]=1/s[2],o[3]=1/s[3],o}},4505:function(i,a,o){i.exports=o(5847)},4578:function(i){i.exports=a;function a(o,s,u,l,f){return o[0]=s,o[1]=u,o[2]=l,o[3]=f,o}},4623:function(i){"use strict";"use restrict";i.exports=a;function a(o){this.roots=new Array(o),this.ranks=new Array(o);for(var s=0;s0)return 1<=0)return 1<=0;--v)h[v]=d*s[v]+p*u[v]+_*l[v]+b*f[v];return h}return d*s+p*u+_*l[v]+b*f}function o(s,u,l,f,c,h){var d=c-1,p=c*c,_=d*d,b=(1+2*c)*_,v=c*_,k=p*(3-2*c),E=p*d;if(s.length){h||(h=new Array(s.length));for(var A=s.length-1;A>=0;--A)h[A]=b*s[A]+v*u[A]+k*l[A]+E*f[A];return h}return b*s+v*u+k*l+E*f}i.exports=o,i.exports.derivative=a},4772:function(i){i.exports=a;function a(o,s,u,l,f){var c=1/Math.tan(s/2),h=1/(l-f);return o[0]=c/u,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=c,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=(f+l)*h,o[11]=-1,o[12]=0,o[13]=0,o[14]=2*f*l*h,o[15]=0,o}},4793:function(i,a,o){"use strict";var s;function u(ge,fe){if(!(ge instanceof fe))throw new TypeError("Cannot call a class as a function")}function l(ge,fe){for(var pe=0;peM)throw new RangeError('The value "'+ge+'" is invalid for option "size"');var fe=new Uint8Array(ge);return Object.setPrototypeOf(fe,T.prototype),fe}function T(ge,fe,pe){if(typeof ge=="number"){if(typeof fe=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return G(ge)}return B(ge,fe,pe)}T.poolSize=8192;function B(ge,fe,pe){if(typeof ge=="string")return j(ge,fe);if(ArrayBuffer.isView(ge))return N(ge);if(ge==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+A(ge));if(xe(ge,ArrayBuffer)||ge&&xe(ge.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(xe(ge,SharedArrayBuffer)||ge&&xe(ge.buffer,SharedArrayBuffer)))return W(ge,fe,pe);if(typeof ge=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var dt=ge.valueOf&&ge.valueOf();if(dt!=null&&dt!==ge)return T.from(dt,fe,pe);var Pt=re(ge);if(Pt)return Pt;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof ge[Symbol.toPrimitive]=="function")return T.from(ge[Symbol.toPrimitive]("string"),fe,pe);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+A(ge))}T.from=function(ge,fe,pe){return B(ge,fe,pe)},Object.setPrototypeOf(T.prototype,Uint8Array.prototype),Object.setPrototypeOf(T,Uint8Array);function F(ge){if(typeof ge!="number")throw new TypeError('"size" argument must be of type number');if(ge<0)throw new RangeError('The value "'+ge+'" is invalid for option "size"')}function U(ge,fe,pe){return F(ge),ge<=0?P(ge):fe!==void 0?typeof pe=="string"?P(ge).fill(fe,pe):P(ge).fill(fe):P(ge)}T.alloc=function(ge,fe,pe){return U(ge,fe,pe)};function G(ge){return F(ge),P(ge<0?0:ae(ge)|0)}T.allocUnsafe=function(ge){return G(ge)},T.allocUnsafeSlow=function(ge){return G(ge)};function j(ge,fe){if((typeof fe!="string"||fe==="")&&(fe="utf8"),!T.isEncoding(fe))throw new TypeError("Unknown encoding: "+fe);var pe=ze(ge,fe)|0,dt=P(pe),Pt=dt.write(ge,fe);return Pt!==pe&&(dt=dt.slice(0,Pt)),dt}function H(ge){for(var fe=ge.length<0?0:ae(ge.length)|0,pe=P(fe),dt=0;dt=M)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+M.toString(16)+" bytes");return ge|0}function be(ge){return+ge!=ge&&(ge=0),T.alloc(+ge)}T.isBuffer=function(fe){return fe!=null&&fe._isBuffer===!0&&fe!==T.prototype},T.compare=function(fe,pe){if(xe(fe,Uint8Array)&&(fe=T.from(fe,fe.offset,fe.byteLength)),xe(pe,Uint8Array)&&(pe=T.from(pe,pe.offset,pe.byteLength)),!T.isBuffer(fe)||!T.isBuffer(pe))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(fe===pe)return 0;for(var dt=fe.length,Pt=pe.length,zt=0,rr=Math.min(dt,Pt);ztPt.length?(T.isBuffer(rr)||(rr=T.from(rr)),rr.copy(Pt,zt)):Uint8Array.prototype.set.call(Pt,rr,zt);else if(T.isBuffer(rr))rr.copy(Pt,zt);else throw new TypeError('"list" argument must be an Array of Buffers');zt+=rr.length}return Pt};function ze(ge,fe){if(T.isBuffer(ge))return ge.length;if(ArrayBuffer.isView(ge)||xe(ge,ArrayBuffer))return ge.byteLength;if(typeof ge!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+A(ge));var pe=ge.length,dt=arguments.length>2&&arguments[2]===!0;if(!dt&&pe===0)return 0;for(var Pt=!1;;)switch(fe){case"ascii":case"latin1":case"binary":return pe;case"utf8":case"utf-8":return cr(ge).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return pe*2;case"hex":return pe>>>1;case"base64":return Ut(ge).length;default:if(Pt)return dt?-1:cr(ge).length;fe=(""+fe).toLowerCase(),Pt=!0}}T.byteLength=ze;function Ce(ge,fe,pe){var dt=!1;if((fe===void 0||fe<0)&&(fe=0),fe>this.length||((pe===void 0||pe>this.length)&&(pe=this.length),pe<=0)||(pe>>>=0,fe>>>=0,pe<=fe))return"";for(ge||(ge="utf8");;)switch(ge){case"hex":return at(this,fe,pe);case"utf8":case"utf-8":return ce(this,fe,pe);case"ascii":return gt(this,fe,pe);case"latin1":case"binary":return Nt(this,fe,pe);case"base64":return qe(this,fe,pe);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ke(this,fe,pe);default:if(dt)throw new TypeError("Unknown encoding: "+ge);ge=(ge+"").toLowerCase(),dt=!0}}T.prototype._isBuffer=!0;function de(ge,fe,pe){var dt=ge[fe];ge[fe]=ge[pe],ge[pe]=dt}T.prototype.swap16=function(){var fe=this.length;if(fe%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var pe=0;pepe&&(fe+=" ... "),""},C&&(T.prototype[C]=T.prototype.inspect),T.prototype.compare=function(fe,pe,dt,Pt,zt){if(xe(fe,Uint8Array)&&(fe=T.from(fe,fe.offset,fe.byteLength)),!T.isBuffer(fe))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+A(fe));if(pe===void 0&&(pe=0),dt===void 0&&(dt=fe?fe.length:0),Pt===void 0&&(Pt=0),zt===void 0&&(zt=this.length),pe<0||dt>fe.length||Pt<0||zt>this.length)throw new RangeError("out of range index");if(Pt>=zt&&pe>=dt)return 0;if(Pt>=zt)return-1;if(pe>=dt)return 1;if(pe>>>=0,dt>>>=0,Pt>>>=0,zt>>>=0,this===fe)return 0;for(var rr=zt-Pt,Gr=dt-pe,Br=Math.min(rr,Gr),Er=this.slice(Pt,zt),Rr=fe.slice(pe,dt),pi=0;pi2147483647?pe=2147483647:pe<-2147483648&&(pe=-2147483648),pe=+pe,Oe(pe)&&(pe=Pt?0:ge.length-1),pe<0&&(pe=ge.length+pe),pe>=ge.length){if(Pt)return-1;pe=ge.length-1}else if(pe<0)if(Pt)pe=0;else return-1;if(typeof fe=="string"&&(fe=T.from(fe,dt)),T.isBuffer(fe))return fe.length===0?-1:ke(ge,fe,pe,dt,Pt);if(typeof fe=="number")return fe=fe&255,typeof Uint8Array.prototype.indexOf=="function"?Pt?Uint8Array.prototype.indexOf.call(ge,fe,pe):Uint8Array.prototype.lastIndexOf.call(ge,fe,pe):ke(ge,[fe],pe,dt,Pt);throw new TypeError("val must be string, number or Buffer")}function ke(ge,fe,pe,dt,Pt){var zt=1,rr=ge.length,Gr=fe.length;if(dt!==void 0&&(dt=String(dt).toLowerCase(),dt==="ucs2"||dt==="ucs-2"||dt==="utf16le"||dt==="utf-16le")){if(ge.length<2||fe.length<2)return-1;zt=2,rr/=2,Gr/=2,pe/=2}function Br(ni,$i){return zt===1?ni[$i]:ni.readUInt16BE($i*zt)}var Er;if(Pt){var Rr=-1;for(Er=pe;Errr&&(pe=rr-Gr),Er=pe;Er>=0;Er--){for(var pi=!0,Di=0;DiPt&&(dt=Pt)):dt=Pt;var zt=fe.length;dt>zt/2&&(dt=zt/2);var rr;for(rr=0;rr>>0,isFinite(dt)?(dt=dt>>>0,Pt===void 0&&(Pt="utf8")):(Pt=dt,dt=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var zt=this.length-pe;if((dt===void 0||dt>zt)&&(dt=zt),fe.length>0&&(dt<0||pe<0)||pe>this.length)throw new RangeError("Attempt to write outside buffer bounds");Pt||(Pt="utf8");for(var rr=!1;;)switch(Pt){case"hex":return Ee(this,fe,pe,dt);case"utf8":case"utf-8":return Me(this,fe,pe,dt);case"ascii":case"latin1":case"binary":return Ue(this,fe,pe,dt);case"base64":return De(this,fe,pe,dt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ye(this,fe,pe,dt);default:if(rr)throw new TypeError("Unknown encoding: "+Pt);Pt=(""+Pt).toLowerCase(),rr=!0}},T.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function qe(ge,fe,pe){return fe===0&&pe===ge.length?L.fromByteArray(ge):L.fromByteArray(ge.slice(fe,pe))}function ce(ge,fe,pe){pe=Math.min(ge.length,pe);for(var dt=[],Pt=fe;Pt239?4:zt>223?3:zt>191?2:1;if(Pt+Gr<=pe){var Br=void 0,Er=void 0,Rr=void 0,pi=void 0;switch(Gr){case 1:zt<128&&(rr=zt);break;case 2:Br=ge[Pt+1],(Br&192)===128&&(pi=(zt&31)<<6|Br&63,pi>127&&(rr=pi));break;case 3:Br=ge[Pt+1],Er=ge[Pt+2],(Br&192)===128&&(Er&192)===128&&(pi=(zt&15)<<12|(Br&63)<<6|Er&63,pi>2047&&(pi<55296||pi>57343)&&(rr=pi));break;case 4:Br=ge[Pt+1],Er=ge[Pt+2],Rr=ge[Pt+3],(Br&192)===128&&(Er&192)===128&&(Rr&192)===128&&(pi=(zt&15)<<18|(Br&63)<<12|(Er&63)<<6|Rr&63,pi>65535&&pi<1114112&&(rr=pi))}}rr===null?(rr=65533,Gr=1):rr>65535&&(rr-=65536,dt.push(rr>>>10&1023|55296),rr=56320|rr&1023),dt.push(rr),Pt+=Gr}return nt(dt)}var Je=4096;function nt(ge){var fe=ge.length;if(fe<=Je)return String.fromCharCode.apply(String,ge);for(var pe="",dt=0;dtdt)&&(pe=dt);for(var Pt="",zt=fe;ztdt&&(fe=dt),pe<0?(pe+=dt,pe<0&&(pe=0)):pe>dt&&(pe=dt),pepe)throw new RangeError("Trying to access beyond buffer length")}T.prototype.readUintLE=T.prototype.readUIntLE=function(fe,pe,dt){fe=fe>>>0,pe=pe>>>0,dt||Ct(fe,pe,this.length);for(var Pt=this[fe],zt=1,rr=0;++rr>>0,pe=pe>>>0,dt||Ct(fe,pe,this.length);for(var Pt=this[fe+--pe],zt=1;pe>0&&(zt*=256);)Pt+=this[fe+--pe]*zt;return Pt},T.prototype.readUint8=T.prototype.readUInt8=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,1,this.length),this[fe]},T.prototype.readUint16LE=T.prototype.readUInt16LE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,2,this.length),this[fe]|this[fe+1]<<8},T.prototype.readUint16BE=T.prototype.readUInt16BE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,2,this.length),this[fe]<<8|this[fe+1]},T.prototype.readUint32LE=T.prototype.readUInt32LE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,4,this.length),(this[fe]|this[fe+1]<<8|this[fe+2]<<16)+this[fe+3]*16777216},T.prototype.readUint32BE=T.prototype.readUInt32BE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,4,this.length),this[fe]*16777216+(this[fe+1]<<16|this[fe+2]<<8|this[fe+3])},T.prototype.readBigUInt64LE=Fe(function(fe){fe=fe>>>0,it(fe,"offset");var pe=this[fe],dt=this[fe+7];(pe===void 0||dt===void 0)&&et(fe,this.length-8);var Pt=pe+this[++fe]*Math.pow(2,8)+this[++fe]*Math.pow(2,16)+this[++fe]*Math.pow(2,24),zt=this[++fe]+this[++fe]*Math.pow(2,8)+this[++fe]*Math.pow(2,16)+dt*Math.pow(2,24);return BigInt(Pt)+(BigInt(zt)<>>0,it(fe,"offset");var pe=this[fe],dt=this[fe+7];(pe===void 0||dt===void 0)&&et(fe,this.length-8);var Pt=pe*Math.pow(2,24)+this[++fe]*Math.pow(2,16)+this[++fe]*Math.pow(2,8)+this[++fe],zt=this[++fe]*Math.pow(2,24)+this[++fe]*Math.pow(2,16)+this[++fe]*Math.pow(2,8)+dt;return(BigInt(Pt)<>>0,pe=pe>>>0,dt||Ct(fe,pe,this.length);for(var Pt=this[fe],zt=1,rr=0;++rr=zt&&(Pt-=Math.pow(2,8*pe)),Pt},T.prototype.readIntBE=function(fe,pe,dt){fe=fe>>>0,pe=pe>>>0,dt||Ct(fe,pe,this.length);for(var Pt=pe,zt=1,rr=this[fe+--Pt];Pt>0&&(zt*=256);)rr+=this[fe+--Pt]*zt;return zt*=128,rr>=zt&&(rr-=Math.pow(2,8*pe)),rr},T.prototype.readInt8=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,1,this.length),this[fe]&128?(255-this[fe]+1)*-1:this[fe]},T.prototype.readInt16LE=function(fe,pe){fe=fe>>>0,pe||Ct(fe,2,this.length);var dt=this[fe]|this[fe+1]<<8;return dt&32768?dt|4294901760:dt},T.prototype.readInt16BE=function(fe,pe){fe=fe>>>0,pe||Ct(fe,2,this.length);var dt=this[fe+1]|this[fe]<<8;return dt&32768?dt|4294901760:dt},T.prototype.readInt32LE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,4,this.length),this[fe]|this[fe+1]<<8|this[fe+2]<<16|this[fe+3]<<24},T.prototype.readInt32BE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,4,this.length),this[fe]<<24|this[fe+1]<<16|this[fe+2]<<8|this[fe+3]},T.prototype.readBigInt64LE=Fe(function(fe){fe=fe>>>0,it(fe,"offset");var pe=this[fe],dt=this[fe+7];(pe===void 0||dt===void 0)&&et(fe,this.length-8);var Pt=this[fe+4]+this[fe+5]*Math.pow(2,8)+this[fe+6]*Math.pow(2,16)+(dt<<24);return(BigInt(Pt)<>>0,it(fe,"offset");var pe=this[fe],dt=this[fe+7];(pe===void 0||dt===void 0)&&et(fe,this.length-8);var Pt=(pe<<24)+this[++fe]*Math.pow(2,16)+this[++fe]*Math.pow(2,8)+this[++fe];return(BigInt(Pt)<>>0,pe||Ct(fe,4,this.length),x.read(this,fe,!0,23,4)},T.prototype.readFloatBE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,4,this.length),x.read(this,fe,!1,23,4)},T.prototype.readDoubleLE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,8,this.length),x.read(this,fe,!0,52,8)},T.prototype.readDoubleBE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,8,this.length),x.read(this,fe,!1,52,8)};function wt(ge,fe,pe,dt,Pt,zt){if(!T.isBuffer(ge))throw new TypeError('"buffer" argument must be a Buffer instance');if(fe>Pt||fege.length)throw new RangeError("Index out of range")}T.prototype.writeUintLE=T.prototype.writeUIntLE=function(fe,pe,dt,Pt){if(fe=+fe,pe=pe>>>0,dt=dt>>>0,!Pt){var zt=Math.pow(2,8*dt)-1;wt(this,fe,pe,dt,zt,0)}var rr=1,Gr=0;for(this[pe]=fe&255;++Gr>>0,dt=dt>>>0,!Pt){var zt=Math.pow(2,8*dt)-1;wt(this,fe,pe,dt,zt,0)}var rr=dt-1,Gr=1;for(this[pe+rr]=fe&255;--rr>=0&&(Gr*=256);)this[pe+rr]=fe/Gr&255;return pe+dt},T.prototype.writeUint8=T.prototype.writeUInt8=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,1,255,0),this[pe]=fe&255,pe+1},T.prototype.writeUint16LE=T.prototype.writeUInt16LE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,2,65535,0),this[pe]=fe&255,this[pe+1]=fe>>>8,pe+2},T.prototype.writeUint16BE=T.prototype.writeUInt16BE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,2,65535,0),this[pe]=fe>>>8,this[pe+1]=fe&255,pe+2},T.prototype.writeUint32LE=T.prototype.writeUInt32LE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,4,4294967295,0),this[pe+3]=fe>>>24,this[pe+2]=fe>>>16,this[pe+1]=fe>>>8,this[pe]=fe&255,pe+4},T.prototype.writeUint32BE=T.prototype.writeUInt32BE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,4,4294967295,0),this[pe]=fe>>>24,this[pe+1]=fe>>>16,this[pe+2]=fe>>>8,this[pe+3]=fe&255,pe+4};function St(ge,fe,pe,dt,Pt){He(fe,dt,Pt,ge,pe,7);var zt=Number(fe&BigInt(4294967295));ge[pe++]=zt,zt=zt>>8,ge[pe++]=zt,zt=zt>>8,ge[pe++]=zt,zt=zt>>8,ge[pe++]=zt;var rr=Number(fe>>BigInt(32)&BigInt(4294967295));return ge[pe++]=rr,rr=rr>>8,ge[pe++]=rr,rr=rr>>8,ge[pe++]=rr,rr=rr>>8,ge[pe++]=rr,pe}function Dt(ge,fe,pe,dt,Pt){He(fe,dt,Pt,ge,pe,7);var zt=Number(fe&BigInt(4294967295));ge[pe+7]=zt,zt=zt>>8,ge[pe+6]=zt,zt=zt>>8,ge[pe+5]=zt,zt=zt>>8,ge[pe+4]=zt;var rr=Number(fe>>BigInt(32)&BigInt(4294967295));return ge[pe+3]=rr,rr=rr>>8,ge[pe+2]=rr,rr=rr>>8,ge[pe+1]=rr,rr=rr>>8,ge[pe]=rr,pe+8}T.prototype.writeBigUInt64LE=Fe(function(fe){var pe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return St(this,fe,pe,BigInt(0),BigInt("0xffffffffffffffff"))}),T.prototype.writeBigUInt64BE=Fe(function(fe){var pe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Dt(this,fe,pe,BigInt(0),BigInt("0xffffffffffffffff"))}),T.prototype.writeIntLE=function(fe,pe,dt,Pt){if(fe=+fe,pe=pe>>>0,!Pt){var zt=Math.pow(2,8*dt-1);wt(this,fe,pe,dt,zt-1,-zt)}var rr=0,Gr=1,Br=0;for(this[pe]=fe&255;++rr>0)-Br&255;return pe+dt},T.prototype.writeIntBE=function(fe,pe,dt,Pt){if(fe=+fe,pe=pe>>>0,!Pt){var zt=Math.pow(2,8*dt-1);wt(this,fe,pe,dt,zt-1,-zt)}var rr=dt-1,Gr=1,Br=0;for(this[pe+rr]=fe&255;--rr>=0&&(Gr*=256);)fe<0&&Br===0&&this[pe+rr+1]!==0&&(Br=1),this[pe+rr]=(fe/Gr>>0)-Br&255;return pe+dt},T.prototype.writeInt8=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,1,127,-128),fe<0&&(fe=255+fe+1),this[pe]=fe&255,pe+1},T.prototype.writeInt16LE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,2,32767,-32768),this[pe]=fe&255,this[pe+1]=fe>>>8,pe+2},T.prototype.writeInt16BE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,2,32767,-32768),this[pe]=fe>>>8,this[pe+1]=fe&255,pe+2},T.prototype.writeInt32LE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,4,2147483647,-2147483648),this[pe]=fe&255,this[pe+1]=fe>>>8,this[pe+2]=fe>>>16,this[pe+3]=fe>>>24,pe+4},T.prototype.writeInt32BE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,4,2147483647,-2147483648),fe<0&&(fe=4294967295+fe+1),this[pe]=fe>>>24,this[pe+1]=fe>>>16,this[pe+2]=fe>>>8,this[pe+3]=fe&255,pe+4},T.prototype.writeBigInt64LE=Fe(function(fe){var pe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return St(this,fe,pe,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),T.prototype.writeBigInt64BE=Fe(function(fe){var pe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Dt(this,fe,pe,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Zt(ge,fe,pe,dt,Pt,zt){if(pe+dt>ge.length)throw new RangeError("Index out of range");if(pe<0)throw new RangeError("Index out of range")}function Et(ge,fe,pe,dt,Pt){return fe=+fe,pe=pe>>>0,Pt||Zt(ge,fe,pe,4,34028234663852886e22,-34028234663852886e22),x.write(ge,fe,pe,dt,23,4),pe+4}T.prototype.writeFloatLE=function(fe,pe,dt){return Et(this,fe,pe,!0,dt)},T.prototype.writeFloatBE=function(fe,pe,dt){return Et(this,fe,pe,!1,dt)};function Te(ge,fe,pe,dt,Pt){return fe=+fe,pe=pe>>>0,Pt||Zt(ge,fe,pe,8,17976931348623157e292,-17976931348623157e292),x.write(ge,fe,pe,dt,52,8),pe+8}T.prototype.writeDoubleLE=function(fe,pe,dt){return Te(this,fe,pe,!0,dt)},T.prototype.writeDoubleBE=function(fe,pe,dt){return Te(this,fe,pe,!1,dt)},T.prototype.copy=function(fe,pe,dt,Pt){if(!T.isBuffer(fe))throw new TypeError("argument should be a Buffer");if(dt||(dt=0),!Pt&&Pt!==0&&(Pt=this.length),pe>=fe.length&&(pe=fe.length),pe||(pe=0),Pt>0&&Pt=this.length)throw new RangeError("Index out of range");if(Pt<0)throw new RangeError("sourceEnd out of bounds");Pt>this.length&&(Pt=this.length),fe.length-pe>>0,dt=dt===void 0?this.length:dt>>>0,fe||(fe=0);var rr;if(typeof fe=="number")for(rr=pe;rrMath.pow(2,32)?Pt=vt(String(pe)):typeof pe=="bigint"&&(Pt=String(pe),(pe>Math.pow(BigInt(2),BigInt(32))||pe<-Math.pow(BigInt(2),BigInt(32)))&&(Pt=vt(Pt)),Pt+="n"),dt+=" It must be ".concat(fe,". Received ").concat(Pt),dt},RangeError);function vt(ge){for(var fe="",pe=ge.length,dt=ge[0]==="-"?1:0;pe>=dt+4;pe-=3)fe="_".concat(ge.slice(pe-3,pe)).concat(fe);return"".concat(ge.slice(0,pe)).concat(fe)}function Ye(ge,fe,pe){it(fe,"offset"),(ge[fe]===void 0||ge[fe+pe]===void 0)&&et(fe,ge.length-(pe+1))}function He(ge,fe,pe,dt,Pt,zt){if(ge>pe||ge3?fe===0||fe===BigInt(0)?Gr=">= 0".concat(rr," and < 2").concat(rr," ** ").concat((zt+1)*8).concat(rr):Gr=">= -(2".concat(rr," ** ").concat((zt+1)*8-1).concat(rr,") and < 2 ** ")+"".concat((zt+1)*8-1).concat(rr):Gr=">= ".concat(fe).concat(rr," and <= ").concat(pe).concat(rr),new ot.ERR_OUT_OF_RANGE("value",Gr,ge)}Ye(dt,Pt,zt)}function it(ge,fe){if(typeof ge!="number")throw new ot.ERR_INVALID_ARG_TYPE(fe,"number",ge)}function et(ge,fe,pe){throw Math.floor(ge)!==ge?(it(ge,pe),new ot.ERR_OUT_OF_RANGE(pe||"offset","an integer",ge)):fe<0?new ot.ERR_BUFFER_OUT_OF_BOUNDS:new ot.ERR_OUT_OF_RANGE(pe||"offset",">= ".concat(pe?1:0," and <= ").concat(fe),ge)}var It=/[^+/0-9A-Za-z-_]/g;function Yt(ge){if(ge=ge.split("=")[0],ge=ge.trim().replace(It,""),ge.length<2)return"";for(;ge.length%4!==0;)ge=ge+"=";return ge}function cr(ge,fe){fe=fe||1/0;for(var pe,dt=ge.length,Pt=null,zt=[],rr=0;rr55295&&pe<57344){if(!Pt){if(pe>56319){(fe-=3)>-1&&zt.push(239,191,189);continue}else if(rr+1===dt){(fe-=3)>-1&&zt.push(239,191,189);continue}Pt=pe;continue}if(pe<56320){(fe-=3)>-1&&zt.push(239,191,189),Pt=pe;continue}pe=(Pt-55296<<10|pe-56320)+65536}else Pt&&(fe-=3)>-1&&zt.push(239,191,189);if(Pt=null,pe<128){if((fe-=1)<0)break;zt.push(pe)}else if(pe<2048){if((fe-=2)<0)break;zt.push(pe>>6|192,pe&63|128)}else if(pe<65536){if((fe-=3)<0)break;zt.push(pe>>12|224,pe>>6&63|128,pe&63|128)}else if(pe<1114112){if((fe-=4)<0)break;zt.push(pe>>18|240,pe>>12&63|128,pe>>6&63|128,pe&63|128)}else throw new Error("Invalid code point")}return zt}function _r(ge){for(var fe=[],pe=0;pe>8,Pt=pe%256,zt.push(Pt),zt.push(dt);return zt}function Ut(ge){return L.toByteArray(Yt(ge))}function Re(ge,fe,pe,dt){var Pt;for(Pt=0;Pt=fe.length||Pt>=ge.length);++Pt)fe[Pt+pe]=ge[Pt];return Pt}function xe(ge,fe){return ge instanceof fe||ge!=null&&ge.constructor!=null&&ge.constructor.name!=null&&ge.constructor.name===fe.name}function Oe(ge){return ge!==ge}var Ie=function(){for(var ge="0123456789abcdef",fe=new Array(256),pe=0;pe<16;++pe)for(var dt=pe*16,Pt=0;Pt<16;++Pt)fe[dt+Pt]=ge[pe]+ge[Pt];return fe}();function Fe(ge){return typeof BigInt=="undefined"?ft:ge}function ft(){throw new Error("BigInt not supported")}},4844:function(i){i.exports=a;function a(o,s,u,l){return o[0]=s[0]+u[0]*l,o[1]=s[1]+u[1]*l,o[2]=s[2]+u[2]*l,o[3]=s[3]+u[3]*l,o}},4905:function(i,a,o){var s=o(5874);i.exports=u;function u(l,f){var c=s(f),h=[];return h=h.concat(c(l)),h=h.concat(c(null)),h}},4935:function(i,a,o){"use strict";i.exports=k;var s=o(2762),u=o(8116),l=o(4359),f=o(1879).Q,c=window||process.global||{},h=c.__TEXT_CACHE||{};c.__TEXT_CACHE={};var d=3;function p(E,A,L,x){this.gl=E,this.shader=A,this.buffer=L,this.vao=x,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var _=p.prototype,b=[0,0];_.bind=function(E,A,L,x){this.vao.bind(),this.shader.bind();var C=this.shader.uniforms;C.model=E,C.view=A,C.projection=L,C.pixelScale=x,b[0]=this.gl.drawingBufferWidth,b[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=b},_.unbind=function(){this.vao.unbind()},_.update=function(E,A,L,x,C){var M=[];function m(W,re,ae,be,ze,Ce){var de=[ae.style,ae.weight,ae.variant,ae.family].join("_"),te=h[de];te||(te=h[de]={});var ke=te[re];ke||(ke=te[re]=v(re,{triangles:!0,font:ae.family,fontStyle:ae.style,fontWeight:ae.weight,fontVariant:ae.variant,textAlign:"center",textBaseline:"middle",lineSpacing:ze,styletags:Ce}));for(var Ee=(be||12)/12,Me=ke.positions,Ue=ke.cells,De=0,ye=Ue.length;De=0;--ce){var Je=Me[qe[ce]];M.push(Ee*Je[0],-Ee*Je[1],W)}}for(var P=[0,0,0],T=[0,0,0],B=[0,0,0],F=[0,0,0],U=1.25,G={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},j=0;j<3;++j){B[j]=M.length/d|0,m(.5*(E[0][j]+E[1][j]),A[j],L[j],12,U,G),F[j]=(M.length/d|0)-B[j],P[j]=M.length/d|0;for(var H=0;H0||A.length>0;){for(;E.length>0;){var m=E.pop();if(L[m]!==-k){L[m]=k;for(var P=x[m],T=0;T<3;++T){var B=M[3*m+T];B>=0&&L[B]===0&&(C[3*m+T]?A.push(B):(E.push(B),L[B]=k))}}}var F=A;A=E,E=F,A.length=0,k=-k}var U=h(x,L,_);return b?U.concat(v.boundary):U}},5033:function(i){"use strict";i.exports=a;function a(o,s,u){var l=s||0,f=u||1;return[[o[12]+o[0],o[13]+o[1],o[14]+o[2],o[15]+o[3]],[o[12]-o[0],o[13]-o[1],o[14]-o[2],o[15]-o[3]],[o[12]+o[4],o[13]+o[5],o[14]+o[6],o[15]+o[7]],[o[12]-o[4],o[13]-o[5],o[14]-o[6],o[15]-o[7]],[l*o[12]+o[8],l*o[13]+o[9],l*o[14]+o[10],l*o[15]+o[11]],[f*o[12]-o[8],f*o[13]-o[9],f*o[14]-o[10],f*o[15]-o[11]]]}},5085:function(i,a,o){i.exports=k;var s=o(3250)[3],u=o(4209),l=o(3352),f=o(2478);function c(){return!0}function h(E){return function(A,L){var x=E[A];return x?!!x.queryPoint(L,c):!1}}function d(E){for(var A={},L=0;L0&&A[x]===L[0])C=E[x-1];else return 1;for(var M=1;C;){var m=C.key,P=s(L,m[0],m[1]);if(m[0][0]0)M=-1,C=C.right;else return 0;else if(P>0)C=C.left;else if(P<0)M=1,C=C.right;else return 0}return M}}function _(E){return 1}function b(E){return function(L){return E(L[0],L[1])?0:1}}function v(E,A){return function(x){return E(x[0],x[1])?0:A(x)}}function k(E){for(var A=E.length,L=[],x=[],C=0,M=0;M0&&(h=1/Math.sqrt(h),o[0]=u*h,o[1]=l*h,o[2]=f*h,o[3]=c*h),o}},5202:function(i,a,o){"use strict";var s=o(1944),u=o(8210);i.exports=c,i.exports.positive=h,i.exports.negative=d;function l(p,_){var b=u(s(p,_),[_[_.length-1]]);return b[b.length-1]}function f(p,_,b,v){var k=v-_,E=-_/k;E<0?E=0:E>1&&(E=1);for(var A=1-E,L=p.length,x=new Array(L),C=0;C0||k>0&&x<0){var C=f(E,x,A,k);b.push(C),v.push(C.slice())}x<0?v.push(A.slice()):x>0?b.push(A.slice()):(b.push(A.slice()),v.push(A.slice())),k=x}return{positive:b,negative:v}}function h(p,_){for(var b=[],v=l(p[p.length-1],_),k=p[p.length-1],E=p[0],A=0;A0||v>0&&L<0)&&b.push(f(k,L,E,v)),L>=0&&b.push(E.slice()),v=L}return b}function d(p,_){for(var b=[],v=l(p[p.length-1],_),k=p[p.length-1],E=p[0],A=0;A0||v>0&&L<0)&&b.push(f(k,L,E,v)),L<=0&&b.push(E.slice()),v=L}return b}},5219:function(i){"use strict";i.exports=function(a){for(var o=a.length,s,u=0;u13)&&s!==32&&s!==133&&s!==160&&s!==5760&&s!==6158&&(s<8192||s>8205)&&s!==8232&&s!==8233&&s!==8239&&s!==8287&&s!==8288&&s!==12288&&s!==65279)return!1;return!0}},5250:function(i){"use strict";i.exports=o;var a=+(Math.pow(2,27)+1);function o(s,u,l){var f=s*u,c=a*s,h=c-s,d=c-h,p=s-d,_=a*u,b=_-u,v=_-b,k=u-v,E=f-d*v,A=E-p*v,L=A-d*k,x=p*k-L;return l?(l[0]=x,l[1]=f,l):[x,f]}},5298:function(i,a){"use strict";var o={"float64,2,1,0":function(){return function(p,_,b,v,k){var E=p[0],A=p[1],L=p[2],x=b[0],C=b[1],M=b[2];v|=0;var m=0,P=0,T=0,B=M,F=C-L*M,U=x-A*C;for(T=0;T0;){H<64?(x=H,H=0):(x=64,H-=64);for(var N=p[1]|0;N>0;){N<64?(C=N,N=0):(C=64,N-=64),v=G+H*m+N*P,A=j+H*B+N*F;var W=0,re=0,ae=0,be=T,ze=m-M*T,Ce=P-x*m,de=U,te=B-M*U,ke=F-x*B;for(ae=0;ae0;){F<64?(x=F,F=0):(x=64,F-=64);for(var U=p[0]|0;U>0;){U<64?(L=U,U=0):(L=64,U-=64),v=T+F*M+U*C,A=B+F*P+U*m;var G=0,j=0,H=M,N=C-x*M,W=P,re=m-x*P;for(j=0;j0;){j<64?(C=j,j=0):(C=64,j-=64);for(var H=p[0]|0;H>0;){H<64?(L=H,H=0):(L=64,H-=64);for(var N=p[1]|0;N>0;){N<64?(x=N,N=0):(x=64,N-=64),v=U+j*P+H*M+N*m,A=G+j*F+H*T+N*B;var W=0,re=0,ae=0,be=P,ze=M-C*P,Ce=m-L*M,de=F,te=T-C*F,ke=B-L*T;for(ae=0;ae=0}}(),l.removeTriangle=function(h,d,p){var _=this.stars;f(_[h],d,p),f(_[d],p,h),f(_[p],h,d)},l.addTriangle=function(h,d,p){var _=this.stars;_[h].push(d,p),_[d].push(p,h),_[p].push(h,d)},l.opposite=function(h,d){for(var p=this.stars[d],_=1,b=p.length;_0;){var v=p.pop();h[v]=!1;for(var k=c[v],_=0;_0){for(var de=0;de<24;++de)F.push(F[F.length-12]);H+=2,be=!0}continue e}N[0][T]=Math.min(N[0][T],ze[T],Ce[T]),N[1][T]=Math.max(N[1][T],ze[T],Ce[T])}var te,ke;Array.isArray(re[0])?(te=re.length>P-1?re[P-1]:re.length>0?re[re.length-1]:[0,0,0,1],ke=re.length>P?re[P]:re.length>0?re[re.length-1]:[0,0,0,1]):te=ke=re,te.length===3&&(te=[te[0],te[1],te[2],1]),ke.length===3&&(ke=[ke[0],ke[1],ke[2],1]),!this.hasAlpha&&te[3]<1&&(this.hasAlpha=!0);var Ee;Array.isArray(ae)?Ee=ae.length>P-1?ae[P-1]:ae.length>0?ae[ae.length-1]:[0,0,0,1]:Ee=ae;var Me=j;if(j+=E(ze,Ce),be){for(T=0;T<2;++T)F.push(ze[0],ze[1],ze[2],Ce[0],Ce[1],Ce[2],Me,Ee,te[0],te[1],te[2],te[3]);H+=2,be=!1}F.push(ze[0],ze[1],ze[2],Ce[0],Ce[1],Ce[2],Me,Ee,te[0],te[1],te[2],te[3],ze[0],ze[1],ze[2],Ce[0],Ce[1],Ce[2],Me,-Ee,te[0],te[1],te[2],te[3],Ce[0],Ce[1],Ce[2],ze[0],ze[1],ze[2],j,-Ee,ke[0],ke[1],ke[2],ke[3],Ce[0],Ce[1],Ce[2],ze[0],ze[1],ze[2],j,Ee,ke[0],ke[1],ke[2],ke[3]),H+=4}}if(this.buffer.update(F),U.push(j),G.push(W[W.length-1].slice()),this.bounds=N,this.vertexCount=H,this.points=G,this.arcLength=U,"dashes"in m){var Ue=m.dashes,De=Ue.slice();for(De.unshift(0),P=1;Po[u][0]&&(u=l);return su?[[u],[s]]:[[s]]}},5771:function(i,a,o){"use strict";var s=o(8507),u=o(3788),l=o(2419);i.exports=f;function f(c){c.sort(u);for(var h=c.length,d=0,p=0;p0){var v=c[d-1];if(s(_,v)===0&&l(v)!==b){d-=1;continue}}c[d++]=_}}return c.length=d,c}},5838:function(i,a,o){"use strict";i.exports=u;var s=o(7842);function u(l){for(var f=new Array(l.length),c=0;c0&&(c=1/Math.sqrt(c),o[0]=s[0]*c,o[1]=s[1]*c,o[2]=s[2]*c),o}},3545:function(i,a,o){"use strict";i.exports=c;var s=o(8105),u=s("lop&&b[C+d]>L;--x,C-=k){for(var M=C,m=C+k,P=0;P>>1,L=2*h,x=A,C=b[L*A+d];k=B?(x=T,C=B):P>=U?(x=m,C=P):(x=F,C=U):B>=U?(x=T,C=B):U>=P?(x=m,C=P):(x=F,C=U);for(var W=L*(E-1),N=L*x,G=0;Gthis.buffer.length){u.free(this.buffer);for(var E=this.buffer=u.mallocUint8(f(k*v*4)),A=0;Ax|0},vertex:function(E,A,L,x,C,M,m,P,T,B,F,U,G){var j=(m<<0)+(P<<1)+(T<<2)+(B<<3)|0;if(!(j===0||j===15))switch(j){case 0:F.push([E-.5,A-.5]);break;case 1:F.push([E-.25-.25*(x+L-2*G)/(L-x),A-.25-.25*(C+L-2*G)/(L-C)]);break;case 2:F.push([E-.75-.25*(-x-L+2*G)/(x-L),A-.25-.25*(M+x-2*G)/(x-M)]);break;case 3:F.push([E-.5,A-.5-.5*(C+L+M+x-4*G)/(L-C+x-M)]);break;case 4:F.push([E-.25-.25*(M+C-2*G)/(C-M),A-.75-.25*(-C-L+2*G)/(C-L)]);break;case 5:F.push([E-.5-.5*(x+L+M+C-4*G)/(L-x+C-M),A-.5]);break;case 6:F.push([E-.5-.25*(-x-L+M+C)/(x-L+C-M),A-.5-.25*(-C-L+M+x)/(C-L+x-M)]);break;case 7:F.push([E-.75-.25*(M+C-2*G)/(C-M),A-.75-.25*(M+x-2*G)/(x-M)]);break;case 8:F.push([E-.75-.25*(-M-C+2*G)/(M-C),A-.75-.25*(-M-x+2*G)/(M-x)]);break;case 9:F.push([E-.5-.25*(x+L+-M-C)/(L-x+M-C),A-.5-.25*(C+L+-M-x)/(L-C+M-x)]);break;case 10:F.push([E-.5-.5*(-x-L+-M-C+4*G)/(x-L+M-C),A-.5]);break;case 11:F.push([E-.25-.25*(-M-C+2*G)/(M-C),A-.75-.25*(C+L-2*G)/(L-C)]);break;case 12:F.push([E-.5,A-.5-.5*(-C-L+-M-x+4*G)/(C-L+M-x)]);break;case 13:F.push([E-.75-.25*(x+L-2*G)/(L-x),A-.25-.25*(-M-x+2*G)/(M-x)]);break;case 14:F.push([E-.25-.25*(-x-L+2*G)/(x-L),A-.25-.25*(-C-L+2*G)/(C-L)]);break;case 15:F.push([E-.5,A-.5]);break}},cell:function(E,A,L,x,C,M,m,P,T){C?P.push([E,A]):P.push([A,E])}});return function(k,E){var A=[],L=[];return v(k,A,L,E),{positions:A,cells:L}}}};function f(p,_){var b=p.length+"d",v=l[b];if(v)return v(s,p,_)}function c(p,_){for(var b=u(p,_),v=b.length,k=new Array(v),E=new Array(v),A=0;A>1,b=-7,v=u?f-1:0,k=u?-1:1,E=o[s+v];for(v+=k,c=E&(1<<-b)-1,E>>=-b,b+=d;b>0;c=c*256+o[s+v],v+=k,b-=8);for(h=c&(1<<-b)-1,c>>=-b,b+=l;b>0;h=h*256+o[s+v],v+=k,b-=8);if(c===0)c=1-_;else{if(c===p)return h?NaN:(E?-1:1)*(1/0);h=h+Math.pow(2,l),c=c-_}return(E?-1:1)*h*Math.pow(2,c-l)},a.write=function(o,s,u,l,f,c){var h,d,p,_=c*8-f-1,b=(1<<_)-1,v=b>>1,k=f===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=l?0:c-1,A=l?1:-1,L=s<0||s===0&&1/s<0?1:0;for(s=Math.abs(s),isNaN(s)||s===1/0?(d=isNaN(s)?1:0,h=b):(h=Math.floor(Math.log(s)/Math.LN2),s*(p=Math.pow(2,-h))<1&&(h--,p*=2),h+v>=1?s+=k/p:s+=k*Math.pow(2,1-v),s*p>=2&&(h++,p/=2),h+v>=b?(d=0,h=b):h+v>=1?(d=(s*p-1)*Math.pow(2,f),h=h+v):(d=s*Math.pow(2,v-1)*Math.pow(2,f),h=0));f>=8;o[u+E]=d&255,E+=A,d/=256,f-=8);for(h=h<0;o[u+E]=h&255,E+=A,h/=256,_-=8);o[u+E-A]|=L*128}},3788:function(i,a,o){"use strict";var s=o(8507),u=o(2419);i.exports=l;function l(f,c){return s(f,c)||u(f)-u(c)}},3837:function(i,a,o){"use strict";i.exports=F;var s=o(4935),u=o(501),l=o(5304),f=o(6429),c=o(6444),h=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),d=ArrayBuffer,p=DataView;function _(U){return d.isView(U)&&!(U instanceof p)}function b(U){return Array.isArray(U)||_(U)}function v(U,G){return U[0]=G[0],U[1]=G[1],U[2]=G[2],U}function k(U){this.gl=U,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=l(U)}var E=k.prototype;E.update=function(U){U=U||{};function G(Me,Ue,De){if(De in U){var ye=U[De],qe=this[De],ce;(Me?b(ye)&&b(ye[0]):b(ye))?this[De]=ce=[Ue(ye[0]),Ue(ye[1]),Ue(ye[2])]:this[De]=ce=[Ue(ye),Ue(ye),Ue(ye)];for(var Je=0;Je<3;++Je)if(ce[Je]!==qe[Je])return!0}return!1}var j=G.bind(this,!1,Number),W=G.bind(this,!1,Boolean),N=G.bind(this,!1,String),H=G.bind(this,!0,function(Me){if(b(Me)){if(Me.length===3)return[+Me[0],+Me[1],+Me[2],1];if(Me.length===4)return[+Me[0],+Me[1],+Me[2],+Me[3]]}return[0,0,0,1]}),re,ae=!1,be=!1;if("bounds"in U)for(var ze=U.bounds,Ce=0;Ce<2;++Ce)for(var de=0;de<3;++de)ze[Ce][de]!==this.bounds[Ce][de]&&(be=!0),this.bounds[Ce][de]=ze[Ce][de];if("ticks"in U){re=U.ticks,ae=!0,this.autoTicks=!1;for(var Ce=0;Ce<3;++Ce)this.tickSpacing[Ce]=0}else j("tickSpacing")&&(this.autoTicks=!0,be=!0);if(this._firstInit&&("ticks"in U||"tickSpacing"in U||(this.autoTicks=!0),be=!0,ae=!0,this._firstInit=!1),be&&this.autoTicks&&(re=c.create(this.bounds,this.tickSpacing),ae=!0),ae){for(var Ce=0;Ce<3;++Ce)re[Ce].sort(function(Ue,De){return Ue.x-De.x});c.equal(re,this.ticks)?ae=!1:this.ticks=re}W("tickEnable"),N("tickFont")&&(ae=!0),N("tickFontStyle")&&(ae=!0),N("tickFontWeight")&&(ae=!0),N("tickFontVariant")&&(ae=!0),j("tickSize"),j("tickAngle"),j("tickPad"),H("tickColor");var te=N("labels");N("labelFont")&&(te=!0),N("labelFontStyle")&&(te=!0),N("labelFontWeight")&&(te=!0),N("labelFontVariant")&&(te=!0),W("labelEnable"),j("labelSize"),j("labelPad"),H("labelColor"),W("lineEnable"),W("lineMirror"),j("lineWidth"),H("lineColor"),W("lineTickEnable"),W("lineTickMirror"),j("lineTickLength"),j("lineTickWidth"),H("lineTickColor"),W("gridEnable"),j("gridWidth"),H("gridColor"),W("zeroEnable"),H("zeroLineColor"),j("zeroLineWidth"),W("backgroundEnable"),H("backgroundColor");var ke=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],Ee=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(te||ae)&&this._text.update(this.bounds,this.labels,ke,this.ticks,Ee):this._text=s(this.gl,this.bounds,this.labels,ke,this.ticks,Ee),this._lines&&ae&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=u(this.gl,this.bounds,this.ticks))};function A(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}var L=[new A,new A,new A];function x(U,G,j,W,N){for(var H=U.primalOffset,re=U.primalMinor,ae=U.mirrorOffset,be=U.mirrorMinor,ze=W[G],Ce=0;Ce<3;++Ce)if(G!==Ce){var de=H,te=ae,ke=re,Ee=be;ze&1<0?(ke[Ce]=-1,Ee[Ce]=0):(ke[Ce]=0,Ee[Ce]=1)}}var C=[0,0,0],M={model:h,view:h,projection:h,_ortho:!1};E.isOpaque=function(){return!0},E.isTransparent=function(){return!1},E.drawTransparent=function(U){};var m=0,P=[0,0,0],T=[0,0,0],B=[0,0,0];E.draw=function(U){U=U||M;for(var De=this.gl,G=U.model||h,j=U.view||h,W=U.projection||h,N=this.bounds,H=U._ortho||!1,re=f(G,j,W,N,H),ae=re.cubeEdges,be=re.axis,ze=j[12],Ce=j[13],de=j[14],te=j[15],ke=H?2:1,Ee=ke*this.pixelRatio*(W[3]*ze+W[7]*Ce+W[11]*de+W[15]*te)/De.drawingBufferHeight,Me=0;Me<3;++Me)this.lastCubeProps.cubeEdges[Me]=ae[Me],this.lastCubeProps.axis[Me]=be[Me];for(var Ue=L,Me=0;Me<3;++Me)x(L[Me],Me,this.bounds,ae,be);for(var De=this.gl,ye=C,Me=0;Me<3;++Me)this.backgroundEnable[Me]?ye[Me]=be[Me]:ye[Me]=0;this._background.draw(G,j,W,N,ye,this.backgroundColor),this._lines.bind(G,j,W,this);for(var Me=0;Me<3;++Me){var qe=[0,0,0];be[Me]>0?qe[Me]=N[1][Me]:qe[Me]=N[0][Me];for(var ce=0;ce<2;++ce){var Je=(Me+1+ce)%3,nt=(Me+1+(ce^1))%3;this.gridEnable[Je]&&this._lines.drawGrid(Je,nt,this.bounds,qe,this.gridColor[Je],this.gridWidth[Je]*this.pixelRatio)}for(var ce=0;ce<2;++ce){var Je=(Me+1+ce)%3,nt=(Me+1+(ce^1))%3;this.zeroEnable[nt]&&Math.min(N[0][nt],N[1][nt])<=0&&Math.max(N[0][nt],N[1][nt])>=0&&this._lines.drawZero(Je,nt,this.bounds,qe,this.zeroLineColor[nt],this.zeroLineWidth[nt]*this.pixelRatio)}}for(var Me=0;Me<3;++Me){this.lineEnable[Me]&&this._lines.drawAxisLine(Me,this.bounds,Ue[Me].primalOffset,this.lineColor[Me],this.lineWidth[Me]*this.pixelRatio),this.lineMirror[Me]&&this._lines.drawAxisLine(Me,this.bounds,Ue[Me].mirrorOffset,this.lineColor[Me],this.lineWidth[Me]*this.pixelRatio);for(var gt=v(P,Ue[Me].primalMinor),Nt=v(T,Ue[Me].mirrorMinor),at=this.lineTickLength,ce=0;ce<3;++ce){var Ke=Ee/G[5*ce];gt[ce]*=at[ce]*Ke,Nt[ce]*=at[ce]*Ke}this.lineTickEnable[Me]&&this._lines.drawAxisTicks(Me,Ue[Me].primalOffset,gt,this.lineTickColor[Me],this.lineTickWidth[Me]*this.pixelRatio),this.lineTickMirror[Me]&&this._lines.drawAxisTicks(Me,Ue[Me].mirrorOffset,Nt,this.lineTickColor[Me],this.lineTickWidth[Me]*this.pixelRatio)}this._lines.unbind(),this._text.bind(G,j,W,this.pixelRatio);var Ct,wt=.5,St,Dt;function Zt(Ye){Dt=[0,0,0],Dt[Ye]=1}function Et(Ye,He,it){var et=(Ye+1)%3,It=(Ye+2)%3,Yt=He[et],cr=He[It],_r=it[et],yr=it[It];if(Yt>0&&yr>0){Zt(et);return}else if(Yt>0&&yr<0){Zt(et);return}else if(Yt<0&&yr>0){Zt(et);return}else if(Yt<0&&yr<0){Zt(et);return}else if(cr>0&&_r>0){Zt(It);return}else if(cr>0&&_r<0){Zt(It);return}else if(cr<0&&_r>0){Zt(It);return}else if(cr<0&&_r<0){Zt(It);return}}for(var Me=0;Me<3;++Me){for(var Te=Ue[Me].primalMinor,ot=Ue[Me].mirrorMinor,Tt=v(B,Ue[Me].primalOffset),ce=0;ce<3;++ce)this.lineTickEnable[Me]&&(Tt[ce]+=Ee*Te[ce]*Math.max(this.lineTickLength[ce],0)/G[5*ce]);var vt=[0,0,0];if(vt[Me]=1,this.tickEnable[Me]){this.tickAngle[Me]===-3600?(this.tickAngle[Me]=0,this.tickAlign[Me]="auto"):this.tickAlign[Me]=-1,St=1,Ct=[this.tickAlign[Me],wt,St],Ct[0]==="auto"?Ct[0]=m:Ct[0]=parseInt(""+Ct[0]),Dt=[0,0,0],Et(Me,Te,ot);for(var ce=0;ce<3;++ce)Tt[ce]+=Ee*Te[ce]*this.tickPad[ce]/G[5*ce];this._text.drawTicks(Me,this.tickSize[Me],this.tickAngle[Me],Tt,this.tickColor[Me],vt,Dt,Ct)}if(this.labelEnable[Me]){St=0,Dt=[0,0,0],this.labels[Me].length>4&&(Zt(Me),St=1),Ct=[this.labelAlign[Me],wt,St],Ct[0]==="auto"?Ct[0]=m:Ct[0]=parseInt(""+Ct[0]);for(var ce=0;ce<3;++ce)Tt[ce]+=Ee*Te[ce]*this.labelPad[ce]/G[5*ce];Tt[Me]+=.5*(N[0][Me]+N[1][Me]),this._text.drawLabel(Me,this.labelSize[Me],this.labelAngle[Me],Tt,this.labelColor[Me],[0,0,0],Dt,Ct)}}this._text.unbind()},E.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function F(U,G){var j=new k(U);return j.update(G),j}},3840:function(i){"use strict";i.exports=L;var a=0,o=1;function s(x,C,M,m,P,T){this._color=x,this.key=C,this.value=M,this.left=m,this.right=P,this._count=T}function u(x){return new s(x._color,x.key,x.value,x.left,x.right,x._count)}function l(x,C){return new s(x,C.key,C.value,C.left,C.right,C._count)}function f(x){x._count=1+(x.left?x.left._count:0)+(x.right?x.right._count:0)}function c(x,C){this._compare=x,this.root=C}var h=c.prototype;Object.defineProperty(h,"keys",{get:function(){var x=[];return this.forEach(function(C,M){x.push(C)}),x}}),Object.defineProperty(h,"values",{get:function(){var x=[];return this.forEach(function(C,M){x.push(M)}),x}}),Object.defineProperty(h,"length",{get:function(){return this.root?this.root._count:0}}),h.insert=function(x,C){for(var M=this._compare,m=this.root,P=[],T=[];m;){var B=M(x,m.key);P.push(m),T.push(B),B<=0?m=m.left:m=m.right}P.push(new s(a,x,C,null,null,1));for(var F=P.length-2;F>=0;--F){var m=P[F];T[F]<=0?P[F]=new s(m._color,m.key,m.value,P[F+1],m.right,m._count+1):P[F]=new s(m._color,m.key,m.value,m.left,P[F+1],m._count+1)}for(var F=P.length-1;F>1;--F){var U=P[F-1],m=P[F];if(U._color===o||m._color===o)break;var G=P[F-2];if(G.left===U)if(U.left===m){var j=G.right;if(j&&j._color===a)U._color=o,G.right=l(o,j),G._color=a,F-=1;else{if(G._color=a,G.left=U.right,U._color=o,U.right=G,P[F-2]=U,P[F-1]=m,f(G),f(U),F>=3){var W=P[F-3];W.left===G?W.left=U:W.right=U}break}}else{var j=G.right;if(j&&j._color===a)U._color=o,G.right=l(o,j),G._color=a,F-=1;else{if(U.right=m.left,G._color=a,G.left=m.right,m._color=o,m.left=U,m.right=G,P[F-2]=m,P[F-1]=U,f(G),f(U),f(m),F>=3){var W=P[F-3];W.left===G?W.left=m:W.right=m}break}}else if(U.right===m){var j=G.left;if(j&&j._color===a)U._color=o,G.left=l(o,j),G._color=a,F-=1;else{if(G._color=a,G.right=U.left,U._color=o,U.left=G,P[F-2]=U,P[F-1]=m,f(G),f(U),F>=3){var W=P[F-3];W.right===G?W.right=U:W.left=U}break}}else{var j=G.left;if(j&&j._color===a)U._color=o,G.left=l(o,j),G._color=a,F-=1;else{if(U.left=m.right,G._color=a,G.right=m.left,m._color=o,m.right=U,m.left=G,P[F-2]=m,P[F-1]=U,f(G),f(U),f(m),F>=3){var W=P[F-3];W.right===G?W.right=m:W.left=m}break}}}return P[0]._color=o,new c(M,P[0])};function d(x,C){if(C.left){var M=d(x,C.left);if(M)return M}var M=x(C.key,C.value);if(M)return M;if(C.right)return d(x,C.right)}function p(x,C,M,m){var P=C(x,m.key);if(P<=0){if(m.left){var T=p(x,C,M,m.left);if(T)return T}var T=M(m.key,m.value);if(T)return T}if(m.right)return p(x,C,M,m.right)}function _(x,C,M,m,P){var T=M(x,P.key),B=M(C,P.key),F;if(T<=0&&(P.left&&(F=_(x,C,M,m,P.left),F)||B>0&&(F=m(P.key,P.value),F)))return F;if(B>0&&P.right)return _(x,C,M,m,P.right)}h.forEach=function(C,M,m){if(this.root)switch(arguments.length){case 1:return d(C,this.root);case 2:return p(M,this._compare,C,this.root);case 3:return this._compare(M,m)>=0?void 0:_(M,m,this._compare,C,this.root)}},Object.defineProperty(h,"begin",{get:function(){for(var x=[],C=this.root;C;)x.push(C),C=C.left;return new b(this,x)}}),Object.defineProperty(h,"end",{get:function(){for(var x=[],C=this.root;C;)x.push(C),C=C.right;return new b(this,x)}}),h.at=function(x){if(x<0)return new b(this,[]);for(var C=this.root,M=[];;){if(M.push(C),C.left){if(x=C.right._count)break;C=C.right}else break}return new b(this,[])},h.ge=function(x){for(var C=this._compare,M=this.root,m=[],P=0;M;){var T=C(x,M.key);m.push(M),T<=0&&(P=m.length),T<=0?M=M.left:M=M.right}return m.length=P,new b(this,m)},h.gt=function(x){for(var C=this._compare,M=this.root,m=[],P=0;M;){var T=C(x,M.key);m.push(M),T<0&&(P=m.length),T<0?M=M.left:M=M.right}return m.length=P,new b(this,m)},h.lt=function(x){for(var C=this._compare,M=this.root,m=[],P=0;M;){var T=C(x,M.key);m.push(M),T>0&&(P=m.length),T<=0?M=M.left:M=M.right}return m.length=P,new b(this,m)},h.le=function(x){for(var C=this._compare,M=this.root,m=[],P=0;M;){var T=C(x,M.key);m.push(M),T>=0&&(P=m.length),T<0?M=M.left:M=M.right}return m.length=P,new b(this,m)},h.find=function(x){for(var C=this._compare,M=this.root,m=[];M;){var P=C(x,M.key);if(m.push(M),P===0)return new b(this,m);P<=0?M=M.left:M=M.right}return new b(this,[])},h.remove=function(x){var C=this.find(x);return C?C.remove():this},h.get=function(x){for(var C=this._compare,M=this.root;M;){var m=C(x,M.key);if(m===0)return M.value;m<=0?M=M.left:M=M.right}};function b(x,C){this.tree=x,this._stack=C}var v=b.prototype;Object.defineProperty(v,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(v,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),v.clone=function(){return new b(this.tree,this._stack.slice())};function k(x,C){x.key=C.key,x.value=C.value,x.left=C.left,x.right=C.right,x._color=C._color,x._count=C._count}function E(x){for(var C,M,m,P,T=x.length-1;T>=0;--T){if(C=x[T],T===0){C._color=o;return}if(M=x[T-1],M.left===C){if(m=M.right,m.right&&m.right._color===a){if(m=M.right=u(m),P=m.right=u(m.right),M.right=m.left,m.left=M,m.right=P,m._color=M._color,C._color=o,M._color=o,P._color=o,f(M),f(m),T>1){var B=x[T-2];B.left===M?B.left=m:B.right=m}x[T-1]=m;return}else if(m.left&&m.left._color===a){if(m=M.right=u(m),P=m.left=u(m.left),M.right=P.left,m.left=P.right,P.left=M,P.right=m,P._color=M._color,M._color=o,m._color=o,C._color=o,f(M),f(m),f(P),T>1){var B=x[T-2];B.left===M?B.left=P:B.right=P}x[T-1]=P;return}if(m._color===o)if(M._color===a){M._color=o,M.right=l(a,m);return}else{M.right=l(a,m);continue}else{if(m=u(m),M.right=m.left,m.left=M,m._color=M._color,M._color=a,f(M),f(m),T>1){var B=x[T-2];B.left===M?B.left=m:B.right=m}x[T-1]=m,x[T]=M,T+11){var B=x[T-2];B.right===M?B.right=m:B.left=m}x[T-1]=m;return}else if(m.right&&m.right._color===a){if(m=M.left=u(m),P=m.right=u(m.right),M.left=P.right,m.right=P.left,P.right=M,P.left=m,P._color=M._color,M._color=o,m._color=o,C._color=o,f(M),f(m),f(P),T>1){var B=x[T-2];B.right===M?B.right=P:B.left=P}x[T-1]=P;return}if(m._color===o)if(M._color===a){M._color=o,M.left=l(a,m);return}else{M.left=l(a,m);continue}else{if(m=u(m),M.left=m.right,m.right=M,m._color=M._color,M._color=a,f(M),f(m),T>1){var B=x[T-2];B.right===M?B.right=m:B.left=m}x[T-1]=m,x[T]=M,T+1=0;--m){var M=x[m];M.left===x[m+1]?C[m]=new s(M._color,M.key,M.value,C[m+1],M.right,M._count):C[m]=new s(M._color,M.key,M.value,M.left,C[m+1],M._count)}if(M=C[C.length-1],M.left&&M.right){var P=C.length;for(M=M.left;M.right;)C.push(M),M=M.right;var T=C[P-1];C.push(new s(M._color,T.key,T.value,M.left,M.right,M._count)),C[P-1].key=M.key,C[P-1].value=M.value;for(var m=C.length-2;m>=P;--m)M=C[m],C[m]=new s(M._color,M.key,M.value,M.left,C[m+1],M._count);C[P-1].left=C[P]}if(M=C[C.length-1],M._color===a){var B=C[C.length-2];B.left===M?B.left=null:B.right===M&&(B.right=null),C.pop();for(var m=0;m0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(v,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(v,"index",{get:function(){var x=0,C=this._stack;if(C.length===0){var M=this.tree.root;return M?M._count:0}else C[C.length-1].left&&(x=C[C.length-1].left._count);for(var m=C.length-2;m>=0;--m)C[m+1]===C[m].right&&(++x,C[m].left&&(x+=C[m].left._count));return x},enumerable:!0}),v.next=function(){var x=this._stack;if(x.length!==0){var C=x[x.length-1];if(C.right)for(C=C.right;C;)x.push(C),C=C.left;else for(x.pop();x.length>0&&x[x.length-1].right===C;)C=x[x.length-1],x.pop()}},Object.defineProperty(v,"hasNext",{get:function(){var x=this._stack;if(x.length===0)return!1;if(x[x.length-1].right)return!0;for(var C=x.length-1;C>0;--C)if(x[C-1].left===x[C])return!0;return!1}}),v.update=function(x){var C=this._stack;if(C.length===0)throw new Error("Can't update empty node!");var M=new Array(C.length),m=C[C.length-1];M[M.length-1]=new s(m._color,m.key,x,m.left,m.right,m._count);for(var P=C.length-2;P>=0;--P)m=C[P],m.left===C[P+1]?M[P]=new s(m._color,m.key,m.value,M[P+1],m.right,m._count):M[P]=new s(m._color,m.key,m.value,m.left,M[P+1],m._count);return new c(this.tree._compare,M[0])},v.prev=function(){var x=this._stack;if(x.length!==0){var C=x[x.length-1];if(C.left)for(C=C.left;C;)x.push(C),C=C.right;else for(x.pop();x.length>0&&x[x.length-1].left===C;)C=x[x.length-1],x.pop()}},Object.defineProperty(v,"hasPrev",{get:function(){var x=this._stack;if(x.length===0)return!1;if(x[x.length-1].left)return!0;for(var C=x.length-1;C>0;--C)if(x[C-1].right===x[C])return!0;return!1}});function A(x,C){return xC?1:0}function L(x){return new c(x||A,null)}},3865:function(i,a,o){"use strict";var s=o(869);i.exports=u;function u(l,f){return s(l[0].mul(f[1]).add(f[0].mul(l[1])),l[1].mul(f[1]))}},3952:function(i,a,o){"use strict";i.exports=l;var s=o(3250);function u(f,c){for(var h=new Array(c+1),d=0;d20?52:h+32}},4040:function(i){i.exports=a;function a(o,s,u,l,f,c,h){var d=1/(s-u),p=1/(l-f),_=1/(c-h);return o[0]=-2*d,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=-2*p,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=2*_,o[11]=0,o[12]=(s+u)*d,o[13]=(f+l)*p,o[14]=(h+c)*_,o[15]=1,o}},4041:function(i){i.exports=a;function a(o,s,u){var l=s[0],f=s[1],c=s[2],h=u[0],d=u[1],p=u[2],_=u[3],b=_*l+d*c-p*f,v=_*f+p*l-h*c,k=_*c+h*f-d*l,E=-h*l-d*f-p*c;return o[0]=b*_+E*-h+v*-p-k*-d,o[1]=v*_+E*-d+k*-h-b*-p,o[2]=k*_+E*-p+b*-d-v*-h,o[3]=s[3],o}},4081:function(i){"use strict";i.exports=a;function a(o,s,u,l,f,c,h,d,p,_){var b=s+c+_;if(v>0){var v=Math.sqrt(b+1);o[0]=.5*(h-p)/v,o[1]=.5*(d-l)/v,o[2]=.5*(u-c)/v,o[3]=.5*v}else{var k=Math.max(s,c,_),v=Math.sqrt(2*k-b+1);s>=k?(o[0]=.5*v,o[1]=.5*(f+u)/v,o[2]=.5*(d+l)/v,o[3]=.5*(h-p)/v):c>=k?(o[0]=.5*(u+f)/v,o[1]=.5*v,o[2]=.5*(p+h)/v,o[3]=.5*(d-l)/v):(o[0]=.5*(l+d)/v,o[1]=.5*(h+p)/v,o[2]=.5*v,o[3]=.5*(u-f)/v)}return o}},4100:function(i,a,o){"use strict";var s=o(4437),u=o(3837),l=o(5445),f=o(4449),c=o(3589),h=o(2260),d=o(7169),p=o(351),_=o(4772),b=o(4040),v=o(799),k=o(9216)({tablet:!0,featureDetect:!0});i.exports={createScene:C,createCamera:s};function E(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function A(m,P){var T=null;try{T=m.getContext("webgl",P),T||(T=m.getContext("experimental-webgl",P))}catch(B){return null}return T}function L(m){var P=Math.round(Math.log(Math.abs(m))/Math.log(10));if(P<0){var T=Math.round(Math.pow(10,-P));return Math.ceil(m*T)/T}else if(P>0){var T=Math.round(Math.pow(10,P));return Math.ceil(m/T)*T}return Math.ceil(m)}function x(m){return typeof m=="boolean"?m:!0}function C(m){m=m||{},m.camera=m.camera||{};var P=m.canvas;if(!P)if(P=document.createElement("canvas"),m.container){var T=m.container;T.appendChild(P)}else document.body.appendChild(P);var B=m.gl;if(B||(m.glOptions&&(k=!!m.glOptions.preserveDrawingBuffer),B=A(P,m.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:k})),!B)throw new Error("webgl not supported");var F=m.bounds||[[-10,-10,-10],[10,10,10]],U=new E,G=h(B,B.drawingBufferWidth,B.drawingBufferHeight,{preferFloat:!k}),j=v(B),W=m.cameraObject&&m.cameraObject._ortho===!0||m.camera.projection&&m.camera.projection.type==="orthographic"||!1,N={eye:m.camera.eye||[2,0,0],center:m.camera.center||[0,0,0],up:m.camera.up||[0,1,0],zoomMin:m.camera.zoomMax||.1,zoomMax:m.camera.zoomMin||100,mode:m.camera.mode||"turntable",_ortho:W},H=m.axes||{},re=u(B,H);re.enable=!H.disable;var ae=m.spikes||{},be=f(B,ae),ze=[],Ce=[],de=[],te=[],ke=!0,De=!0,Ee=new Array(16),Me=new Array(16),Ue={view:null,projection:Ee,model:Me,_ortho:!1},De=!0,ye=[B.drawingBufferWidth,B.drawingBufferHeight],qe=m.cameraObject||s(P,N),ce={gl:B,contextLost:!1,pixelRatio:m.pixelRatio||1,canvas:P,selection:U,camera:qe,axes:re,axesPixels:null,spikes:be,bounds:F,objects:ze,shape:ye,aspect:m.aspectRatio||[1,1,1],pickRadius:m.pickRadius||10,zNear:m.zNear||.01,zFar:m.zFar||1e3,fovy:m.fovy||Math.PI/4,clearColor:m.clearColor||[0,0,0,0],autoResize:x(m.autoResize),autoBounds:x(m.autoBounds),autoScale:!!m.autoScale,autoCenter:x(m.autoCenter),clipToBounds:x(m.clipToBounds),snapToData:!!m.snapToData,onselect:m.onselect||null,onrender:m.onrender||null,onclick:m.onclick||null,cameraParams:Ue,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(Dt){this.aspect[0]=Dt.x,this.aspect[1]=Dt.y,this.aspect[2]=Dt.z,De=!0},setBounds:function(Dt,Zt){this.bounds[0][Dt]=Zt.min,this.bounds[1][Dt]=Zt.max},setClearColor:function(Dt){this.clearColor=Dt},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},Je=[B.drawingBufferWidth/ce.pixelRatio|0,B.drawingBufferHeight/ce.pixelRatio|0];function nt(){if(!ce._stopped&&ce.autoResize){var Dt=P.parentNode,Zt=1,Et=1;Dt&&Dt!==document.body?(Zt=Dt.clientWidth,Et=Dt.clientHeight):(Zt=window.innerWidth,Et=window.innerHeight);var Te=Math.ceil(Zt*ce.pixelRatio)|0,ot=Math.ceil(Et*ce.pixelRatio)|0;if(Te!==P.width||ot!==P.height){P.width=Te,P.height=ot;var Tt=P.style;Tt.position=Tt.position||"absolute",Tt.left="0px",Tt.top="0px",Tt.width=Zt+"px",Tt.height=Et+"px",ke=!0}}}ce.autoResize&&nt(),window.addEventListener("resize",nt);function gt(){for(var Dt=ze.length,Zt=te.length,Et=0;Et0&&de[Zt-1]===0;)de.pop(),te.pop().dispose()}ce.update=function(Dt){ce._stopped||(Dt=Dt||{},ke=!0,De=!0)},ce.add=function(Dt){ce._stopped||(Dt.axes=re,ze.push(Dt),Ce.push(-1),ke=!0,De=!0,gt())},ce.remove=function(Dt){if(!ce._stopped){var Zt=ze.indexOf(Dt);Zt<0||(ze.splice(Zt,1),Ce.pop(),ke=!0,De=!0,gt())}},ce.dispose=function(){if(!ce._stopped&&(ce._stopped=!0,window.removeEventListener("resize",nt),P.removeEventListener("webglcontextlost",Nt),ce.mouseListener.enabled=!1,!ce.contextLost)){re.dispose(),be.dispose();for(var Dt=0;DtU.distance)continue;for(var it=0;it_;){var M=v[C-2],m=v[C-1];if(Mv[b+1]:!0}function d(_,b,v,k){_*=2;var E=k[_];return E>1,x=L-k,C=L+k,M=E,m=x,P=L,T=C,B=A,F=_+1,U=b-1,G=0;h(M,m,v)&&(G=M,M=m,m=G),h(T,B,v)&&(G=T,T=B,B=G),h(M,P,v)&&(G=M,M=P,P=G),h(m,P,v)&&(G=m,m=P,P=G),h(M,T,v)&&(G=M,M=T,T=G),h(P,T,v)&&(G=P,P=T,T=G),h(m,B,v)&&(G=m,m=B,B=G),h(m,P,v)&&(G=m,m=P,P=G),h(T,B,v)&&(G=T,T=B,B=G);for(var j=v[2*m],W=v[2*m+1],N=v[2*T],H=v[2*T+1],re=2*M,ae=2*P,be=2*B,ze=2*E,Ce=2*L,de=2*A,te=0;te<2;++te){var ke=v[re+te],Ee=v[ae+te],Me=v[be+te];v[ze+te]=ke,v[Ce+te]=Ee,v[de+te]=Me}l(x,_,v),l(C,b,v);for(var Ue=F;Ue<=U;++Ue)if(d(Ue,j,W,v))Ue!==F&&u(Ue,F,v),++F;else if(!d(Ue,N,H,v))for(;;)if(d(U,N,H,v)){d(U,j,W,v)?(f(Ue,F,U,v),++F,--U):(u(Ue,U,v),--U);break}else{if(--U0)if(E[0]!==L[1][0])A=k,k=k.right;else{var m=p(k.right,E);if(m)return m;k=k.left}else{if(E[0]!==L[1][0])return k;var m=p(k.right,E);if(m)return m;k=k.left}}return A}h.castUp=function(k){var E=s.le(this.coordinates,k[0]);if(E<0)return-1;var A=this.slabs[E],L=p(this.slabs[E],k),x=-1;if(L&&(x=L.value),this.coordinates[E]===k[0]){var C=null;if(L&&(C=L.key),E>0){var M=p(this.slabs[E-1],k);M&&(C?f(M.key,C)>0&&(C=M.key,x=M.value):(x=M.value,C=M.key))}var m=this.horizontal[E];if(m.length>0){var P=s.ge(m,k[1],d);if(P=m.length)return x;T=m[P]}}if(T.start)if(C){var B=l(C[0],C[1],[k[0],T.y]);C[0][0]>C[1][0]&&(B=-B),B>0&&(x=T.index)}else x=T.index;else T.y!==k[1]&&(x=T.index)}}}return x};function _(k,E,A,L){this.y=k,this.index=E,this.start=A,this.closed=L}function b(k,E,A,L){this.x=k,this.segment=E,this.create=A,this.index=L}function v(k){for(var E=k.length,A=2*E,L=new Array(A),x=0;xMath.abs(m))v.rotate(B,0,0,-M*P*Math.PI*x.rotateSpeed/window.innerWidth);else if(!x._ortho){var F=-x.zoomSpeed*T*m/window.innerHeight*(B-v.lastT())/20;v.pan(B,0,0,E*(Math.exp(F)-1))}}},!0)},x.enableMouseListeners(),x}},4449:function(i,a,o){"use strict";var s=o(2762),u=o(8116),l=o(1493);i.exports=b;var f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function c(v,k,E,A){this.gl=v,this.buffer=k,this.vao=E,this.shader=A,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var h=c.prototype,d=[0,0,0],p=[0,0,0],_=[0,0];h.isTransparent=function(){return!1},h.drawTransparent=function(v){},h.draw=function(v){var k=this.gl,E=this.vao,A=this.shader;E.bind(),A.bind();var L=v.model||f,x=v.view||f,C=v.projection||f,M;this.axes&&(M=this.axes.lastCubeProps.axis);for(var m=d,P=p,T=0;T<3;++T)M&&M[T]<0?(m[T]=this.bounds[0][T],P[T]=this.bounds[1][T]):(m[T]=this.bounds[1][T],P[T]=this.bounds[0][T]);_[0]=k.drawingBufferWidth,_[1]=k.drawingBufferHeight,A.uniforms.model=L,A.uniforms.view=x,A.uniforms.projection=C,A.uniforms.coordinates=[this.position,m,P],A.uniforms.colors=this.colors,A.uniforms.screenShape=_;for(var T=0;T<3;++T)A.uniforms.lineWidth=this.lineWidth[T]*this.pixelRatio,this.enabled[T]&&(E.draw(k.TRIANGLES,6,6*T),this.drawSides[T]&&E.draw(k.TRIANGLES,12,18+12*T));E.unbind()},h.update=function(v){v&&("bounds"in v&&(this.bounds=v.bounds),"position"in v&&(this.position=v.position),"lineWidth"in v&&(this.lineWidth=v.lineWidth),"colors"in v&&(this.colors=v.colors),"enabled"in v&&(this.enabled=v.enabled),"drawSides"in v&&(this.drawSides=v.drawSides))},h.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function b(v,k){var E=[];function A(m,P,T,B,F,U){var G=[m,P,T,0,0,0,1];G[B+3]=1,G[B]=F,E.push.apply(E,G),G[6]=-1,E.push.apply(E,G),G[B]=U,E.push.apply(E,G),E.push.apply(E,G),G[6]=1,E.push.apply(E,G),G[B]=F,E.push.apply(E,G)}A(0,0,0,0,0,1),A(0,0,0,1,0,1),A(0,0,0,2,0,1),A(1,0,0,1,-1,1),A(1,0,0,2,-1,1),A(0,1,0,0,-1,1),A(0,1,0,2,-1,1),A(0,0,1,0,-1,1),A(0,0,1,1,-1,1);var L=s(v,E),x=u(v,[{type:v.FLOAT,buffer:L,size:3,offset:0,stride:28},{type:v.FLOAT,buffer:L,size:3,offset:12,stride:28},{type:v.FLOAT,buffer:L,size:1,offset:24,stride:28}]),C=l(v);C.attributes.position.location=0,C.attributes.color.location=1,C.attributes.weight.location=2;var M=new c(v,L,x,C);return M.update(k),M}},4494:function(i){i.exports=a;function a(o,s){return o[0]=1/s[0],o[1]=1/s[1],o[2]=1/s[2],o[3]=1/s[3],o}},4505:function(i,a,o){i.exports=o(5847)},4578:function(i){i.exports=a;function a(o,s,u,l,f){return o[0]=s,o[1]=u,o[2]=l,o[3]=f,o}},4623:function(i){"use strict";"use restrict";i.exports=a;function a(o){this.roots=new Array(o),this.ranks=new Array(o);for(var s=0;s0)return 1<=0)return 1<=0;--v)h[v]=d*s[v]+p*u[v]+_*l[v]+b*f[v];return h}return d*s+p*u+_*l[v]+b*f}function o(s,u,l,f,c,h){var d=c-1,p=c*c,_=d*d,b=(1+2*c)*_,v=c*_,k=p*(3-2*c),E=p*d;if(s.length){h||(h=new Array(s.length));for(var A=s.length-1;A>=0;--A)h[A]=b*s[A]+v*u[A]+k*l[A]+E*f[A];return h}return b*s+v*u+k*l+E*f}i.exports=o,i.exports.derivative=a},4772:function(i){i.exports=a;function a(o,s,u,l,f){var c=1/Math.tan(s/2),h=1/(l-f);return o[0]=c/u,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=c,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=(f+l)*h,o[11]=-1,o[12]=0,o[13]=0,o[14]=2*f*l*h,o[15]=0,o}},4793:function(i,a,o){"use strict";var s;function u(ge,fe){if(!(ge instanceof fe))throw new TypeError("Cannot call a class as a function")}function l(ge,fe){for(var pe=0;peM)throw new RangeError('The value "'+ge+'" is invalid for option "size"');var fe=new Uint8Array(ge);return Object.setPrototypeOf(fe,T.prototype),fe}function T(ge,fe,pe){if(typeof ge=="number"){if(typeof fe=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return G(ge)}return B(ge,fe,pe)}T.poolSize=8192;function B(ge,fe,pe){if(typeof ge=="string")return j(ge,fe);if(ArrayBuffer.isView(ge))return N(ge);if(ge==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+A(ge));if(xe(ge,ArrayBuffer)||ge&&xe(ge.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(xe(ge,SharedArrayBuffer)||ge&&xe(ge.buffer,SharedArrayBuffer)))return H(ge,fe,pe);if(typeof ge=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var dt=ge.valueOf&&ge.valueOf();if(dt!=null&&dt!==ge)return T.from(dt,fe,pe);var Pt=re(ge);if(Pt)return Pt;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof ge[Symbol.toPrimitive]=="function")return T.from(ge[Symbol.toPrimitive]("string"),fe,pe);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+A(ge))}T.from=function(ge,fe,pe){return B(ge,fe,pe)},Object.setPrototypeOf(T.prototype,Uint8Array.prototype),Object.setPrototypeOf(T,Uint8Array);function F(ge){if(typeof ge!="number")throw new TypeError('"size" argument must be of type number');if(ge<0)throw new RangeError('The value "'+ge+'" is invalid for option "size"')}function U(ge,fe,pe){return F(ge),ge<=0?P(ge):fe!==void 0?typeof pe=="string"?P(ge).fill(fe,pe):P(ge).fill(fe):P(ge)}T.alloc=function(ge,fe,pe){return U(ge,fe,pe)};function G(ge){return F(ge),P(ge<0?0:ae(ge)|0)}T.allocUnsafe=function(ge){return G(ge)},T.allocUnsafeSlow=function(ge){return G(ge)};function j(ge,fe){if((typeof fe!="string"||fe==="")&&(fe="utf8"),!T.isEncoding(fe))throw new TypeError("Unknown encoding: "+fe);var pe=ze(ge,fe)|0,dt=P(pe),Pt=dt.write(ge,fe);return Pt!==pe&&(dt=dt.slice(0,Pt)),dt}function W(ge){for(var fe=ge.length<0?0:ae(ge.length)|0,pe=P(fe),dt=0;dt=M)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+M.toString(16)+" bytes");return ge|0}function be(ge){return+ge!=ge&&(ge=0),T.alloc(+ge)}T.isBuffer=function(fe){return fe!=null&&fe._isBuffer===!0&&fe!==T.prototype},T.compare=function(fe,pe){if(xe(fe,Uint8Array)&&(fe=T.from(fe,fe.offset,fe.byteLength)),xe(pe,Uint8Array)&&(pe=T.from(pe,pe.offset,pe.byteLength)),!T.isBuffer(fe)||!T.isBuffer(pe))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(fe===pe)return 0;for(var dt=fe.length,Pt=pe.length,zt=0,rr=Math.min(dt,Pt);ztPt.length?(T.isBuffer(rr)||(rr=T.from(rr)),rr.copy(Pt,zt)):Uint8Array.prototype.set.call(Pt,rr,zt);else if(T.isBuffer(rr))rr.copy(Pt,zt);else throw new TypeError('"list" argument must be an Array of Buffers');zt+=rr.length}return Pt};function ze(ge,fe){if(T.isBuffer(ge))return ge.length;if(ArrayBuffer.isView(ge)||xe(ge,ArrayBuffer))return ge.byteLength;if(typeof ge!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+A(ge));var pe=ge.length,dt=arguments.length>2&&arguments[2]===!0;if(!dt&&pe===0)return 0;for(var Pt=!1;;)switch(fe){case"ascii":case"latin1":case"binary":return pe;case"utf8":case"utf-8":return cr(ge).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return pe*2;case"hex":return pe>>>1;case"base64":return Ut(ge).length;default:if(Pt)return dt?-1:cr(ge).length;fe=(""+fe).toLowerCase(),Pt=!0}}T.byteLength=ze;function Ce(ge,fe,pe){var dt=!1;if((fe===void 0||fe<0)&&(fe=0),fe>this.length||((pe===void 0||pe>this.length)&&(pe=this.length),pe<=0)||(pe>>>=0,fe>>>=0,pe<=fe))return"";for(ge||(ge="utf8");;)switch(ge){case"hex":return at(this,fe,pe);case"utf8":case"utf-8":return ce(this,fe,pe);case"ascii":return gt(this,fe,pe);case"latin1":case"binary":return Nt(this,fe,pe);case"base64":return qe(this,fe,pe);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ke(this,fe,pe);default:if(dt)throw new TypeError("Unknown encoding: "+ge);ge=(ge+"").toLowerCase(),dt=!0}}T.prototype._isBuffer=!0;function de(ge,fe,pe){var dt=ge[fe];ge[fe]=ge[pe],ge[pe]=dt}T.prototype.swap16=function(){var fe=this.length;if(fe%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var pe=0;pepe&&(fe+=" ... "),""},C&&(T.prototype[C]=T.prototype.inspect),T.prototype.compare=function(fe,pe,dt,Pt,zt){if(xe(fe,Uint8Array)&&(fe=T.from(fe,fe.offset,fe.byteLength)),!T.isBuffer(fe))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+A(fe));if(pe===void 0&&(pe=0),dt===void 0&&(dt=fe?fe.length:0),Pt===void 0&&(Pt=0),zt===void 0&&(zt=this.length),pe<0||dt>fe.length||Pt<0||zt>this.length)throw new RangeError("out of range index");if(Pt>=zt&&pe>=dt)return 0;if(Pt>=zt)return-1;if(pe>=dt)return 1;if(pe>>>=0,dt>>>=0,Pt>>>=0,zt>>>=0,this===fe)return 0;for(var rr=zt-Pt,Gr=dt-pe,Br=Math.min(rr,Gr),Er=this.slice(Pt,zt),Rr=fe.slice(pe,dt),pi=0;pi2147483647?pe=2147483647:pe<-2147483648&&(pe=-2147483648),pe=+pe,Oe(pe)&&(pe=Pt?0:ge.length-1),pe<0&&(pe=ge.length+pe),pe>=ge.length){if(Pt)return-1;pe=ge.length-1}else if(pe<0)if(Pt)pe=0;else return-1;if(typeof fe=="string"&&(fe=T.from(fe,dt)),T.isBuffer(fe))return fe.length===0?-1:ke(ge,fe,pe,dt,Pt);if(typeof fe=="number")return fe=fe&255,typeof Uint8Array.prototype.indexOf=="function"?Pt?Uint8Array.prototype.indexOf.call(ge,fe,pe):Uint8Array.prototype.lastIndexOf.call(ge,fe,pe):ke(ge,[fe],pe,dt,Pt);throw new TypeError("val must be string, number or Buffer")}function ke(ge,fe,pe,dt,Pt){var zt=1,rr=ge.length,Gr=fe.length;if(dt!==void 0&&(dt=String(dt).toLowerCase(),dt==="ucs2"||dt==="ucs-2"||dt==="utf16le"||dt==="utf-16le")){if(ge.length<2||fe.length<2)return-1;zt=2,rr/=2,Gr/=2,pe/=2}function Br(ni,$i){return zt===1?ni[$i]:ni.readUInt16BE($i*zt)}var Er;if(Pt){var Rr=-1;for(Er=pe;Errr&&(pe=rr-Gr),Er=pe;Er>=0;Er--){for(var pi=!0,Di=0;DiPt&&(dt=Pt)):dt=Pt;var zt=fe.length;dt>zt/2&&(dt=zt/2);var rr;for(rr=0;rr>>0,isFinite(dt)?(dt=dt>>>0,Pt===void 0&&(Pt="utf8")):(Pt=dt,dt=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var zt=this.length-pe;if((dt===void 0||dt>zt)&&(dt=zt),fe.length>0&&(dt<0||pe<0)||pe>this.length)throw new RangeError("Attempt to write outside buffer bounds");Pt||(Pt="utf8");for(var rr=!1;;)switch(Pt){case"hex":return Ee(this,fe,pe,dt);case"utf8":case"utf-8":return Me(this,fe,pe,dt);case"ascii":case"latin1":case"binary":return Ue(this,fe,pe,dt);case"base64":return De(this,fe,pe,dt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ye(this,fe,pe,dt);default:if(rr)throw new TypeError("Unknown encoding: "+Pt);Pt=(""+Pt).toLowerCase(),rr=!0}},T.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function qe(ge,fe,pe){return fe===0&&pe===ge.length?L.fromByteArray(ge):L.fromByteArray(ge.slice(fe,pe))}function ce(ge,fe,pe){pe=Math.min(ge.length,pe);for(var dt=[],Pt=fe;Pt239?4:zt>223?3:zt>191?2:1;if(Pt+Gr<=pe){var Br=void 0,Er=void 0,Rr=void 0,pi=void 0;switch(Gr){case 1:zt<128&&(rr=zt);break;case 2:Br=ge[Pt+1],(Br&192)===128&&(pi=(zt&31)<<6|Br&63,pi>127&&(rr=pi));break;case 3:Br=ge[Pt+1],Er=ge[Pt+2],(Br&192)===128&&(Er&192)===128&&(pi=(zt&15)<<12|(Br&63)<<6|Er&63,pi>2047&&(pi<55296||pi>57343)&&(rr=pi));break;case 4:Br=ge[Pt+1],Er=ge[Pt+2],Rr=ge[Pt+3],(Br&192)===128&&(Er&192)===128&&(Rr&192)===128&&(pi=(zt&15)<<18|(Br&63)<<12|(Er&63)<<6|Rr&63,pi>65535&&pi<1114112&&(rr=pi))}}rr===null?(rr=65533,Gr=1):rr>65535&&(rr-=65536,dt.push(rr>>>10&1023|55296),rr=56320|rr&1023),dt.push(rr),Pt+=Gr}return nt(dt)}var Je=4096;function nt(ge){var fe=ge.length;if(fe<=Je)return String.fromCharCode.apply(String,ge);for(var pe="",dt=0;dtdt)&&(pe=dt);for(var Pt="",zt=fe;ztdt&&(fe=dt),pe<0?(pe+=dt,pe<0&&(pe=0)):pe>dt&&(pe=dt),pepe)throw new RangeError("Trying to access beyond buffer length")}T.prototype.readUintLE=T.prototype.readUIntLE=function(fe,pe,dt){fe=fe>>>0,pe=pe>>>0,dt||Ct(fe,pe,this.length);for(var Pt=this[fe],zt=1,rr=0;++rr>>0,pe=pe>>>0,dt||Ct(fe,pe,this.length);for(var Pt=this[fe+--pe],zt=1;pe>0&&(zt*=256);)Pt+=this[fe+--pe]*zt;return Pt},T.prototype.readUint8=T.prototype.readUInt8=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,1,this.length),this[fe]},T.prototype.readUint16LE=T.prototype.readUInt16LE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,2,this.length),this[fe]|this[fe+1]<<8},T.prototype.readUint16BE=T.prototype.readUInt16BE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,2,this.length),this[fe]<<8|this[fe+1]},T.prototype.readUint32LE=T.prototype.readUInt32LE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,4,this.length),(this[fe]|this[fe+1]<<8|this[fe+2]<<16)+this[fe+3]*16777216},T.prototype.readUint32BE=T.prototype.readUInt32BE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,4,this.length),this[fe]*16777216+(this[fe+1]<<16|this[fe+2]<<8|this[fe+3])},T.prototype.readBigUInt64LE=Fe(function(fe){fe=fe>>>0,it(fe,"offset");var pe=this[fe],dt=this[fe+7];(pe===void 0||dt===void 0)&&et(fe,this.length-8);var Pt=pe+this[++fe]*Math.pow(2,8)+this[++fe]*Math.pow(2,16)+this[++fe]*Math.pow(2,24),zt=this[++fe]+this[++fe]*Math.pow(2,8)+this[++fe]*Math.pow(2,16)+dt*Math.pow(2,24);return BigInt(Pt)+(BigInt(zt)<>>0,it(fe,"offset");var pe=this[fe],dt=this[fe+7];(pe===void 0||dt===void 0)&&et(fe,this.length-8);var Pt=pe*Math.pow(2,24)+this[++fe]*Math.pow(2,16)+this[++fe]*Math.pow(2,8)+this[++fe],zt=this[++fe]*Math.pow(2,24)+this[++fe]*Math.pow(2,16)+this[++fe]*Math.pow(2,8)+dt;return(BigInt(Pt)<>>0,pe=pe>>>0,dt||Ct(fe,pe,this.length);for(var Pt=this[fe],zt=1,rr=0;++rr=zt&&(Pt-=Math.pow(2,8*pe)),Pt},T.prototype.readIntBE=function(fe,pe,dt){fe=fe>>>0,pe=pe>>>0,dt||Ct(fe,pe,this.length);for(var Pt=pe,zt=1,rr=this[fe+--Pt];Pt>0&&(zt*=256);)rr+=this[fe+--Pt]*zt;return zt*=128,rr>=zt&&(rr-=Math.pow(2,8*pe)),rr},T.prototype.readInt8=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,1,this.length),this[fe]&128?(255-this[fe]+1)*-1:this[fe]},T.prototype.readInt16LE=function(fe,pe){fe=fe>>>0,pe||Ct(fe,2,this.length);var dt=this[fe]|this[fe+1]<<8;return dt&32768?dt|4294901760:dt},T.prototype.readInt16BE=function(fe,pe){fe=fe>>>0,pe||Ct(fe,2,this.length);var dt=this[fe+1]|this[fe]<<8;return dt&32768?dt|4294901760:dt},T.prototype.readInt32LE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,4,this.length),this[fe]|this[fe+1]<<8|this[fe+2]<<16|this[fe+3]<<24},T.prototype.readInt32BE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,4,this.length),this[fe]<<24|this[fe+1]<<16|this[fe+2]<<8|this[fe+3]},T.prototype.readBigInt64LE=Fe(function(fe){fe=fe>>>0,it(fe,"offset");var pe=this[fe],dt=this[fe+7];(pe===void 0||dt===void 0)&&et(fe,this.length-8);var Pt=this[fe+4]+this[fe+5]*Math.pow(2,8)+this[fe+6]*Math.pow(2,16)+(dt<<24);return(BigInt(Pt)<>>0,it(fe,"offset");var pe=this[fe],dt=this[fe+7];(pe===void 0||dt===void 0)&&et(fe,this.length-8);var Pt=(pe<<24)+this[++fe]*Math.pow(2,16)+this[++fe]*Math.pow(2,8)+this[++fe];return(BigInt(Pt)<>>0,pe||Ct(fe,4,this.length),x.read(this,fe,!0,23,4)},T.prototype.readFloatBE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,4,this.length),x.read(this,fe,!1,23,4)},T.prototype.readDoubleLE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,8,this.length),x.read(this,fe,!0,52,8)},T.prototype.readDoubleBE=function(fe,pe){return fe=fe>>>0,pe||Ct(fe,8,this.length),x.read(this,fe,!1,52,8)};function wt(ge,fe,pe,dt,Pt,zt){if(!T.isBuffer(ge))throw new TypeError('"buffer" argument must be a Buffer instance');if(fe>Pt||fege.length)throw new RangeError("Index out of range")}T.prototype.writeUintLE=T.prototype.writeUIntLE=function(fe,pe,dt,Pt){if(fe=+fe,pe=pe>>>0,dt=dt>>>0,!Pt){var zt=Math.pow(2,8*dt)-1;wt(this,fe,pe,dt,zt,0)}var rr=1,Gr=0;for(this[pe]=fe&255;++Gr>>0,dt=dt>>>0,!Pt){var zt=Math.pow(2,8*dt)-1;wt(this,fe,pe,dt,zt,0)}var rr=dt-1,Gr=1;for(this[pe+rr]=fe&255;--rr>=0&&(Gr*=256);)this[pe+rr]=fe/Gr&255;return pe+dt},T.prototype.writeUint8=T.prototype.writeUInt8=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,1,255,0),this[pe]=fe&255,pe+1},T.prototype.writeUint16LE=T.prototype.writeUInt16LE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,2,65535,0),this[pe]=fe&255,this[pe+1]=fe>>>8,pe+2},T.prototype.writeUint16BE=T.prototype.writeUInt16BE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,2,65535,0),this[pe]=fe>>>8,this[pe+1]=fe&255,pe+2},T.prototype.writeUint32LE=T.prototype.writeUInt32LE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,4,4294967295,0),this[pe+3]=fe>>>24,this[pe+2]=fe>>>16,this[pe+1]=fe>>>8,this[pe]=fe&255,pe+4},T.prototype.writeUint32BE=T.prototype.writeUInt32BE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,4,4294967295,0),this[pe]=fe>>>24,this[pe+1]=fe>>>16,this[pe+2]=fe>>>8,this[pe+3]=fe&255,pe+4};function St(ge,fe,pe,dt,Pt){He(fe,dt,Pt,ge,pe,7);var zt=Number(fe&BigInt(4294967295));ge[pe++]=zt,zt=zt>>8,ge[pe++]=zt,zt=zt>>8,ge[pe++]=zt,zt=zt>>8,ge[pe++]=zt;var rr=Number(fe>>BigInt(32)&BigInt(4294967295));return ge[pe++]=rr,rr=rr>>8,ge[pe++]=rr,rr=rr>>8,ge[pe++]=rr,rr=rr>>8,ge[pe++]=rr,pe}function Dt(ge,fe,pe,dt,Pt){He(fe,dt,Pt,ge,pe,7);var zt=Number(fe&BigInt(4294967295));ge[pe+7]=zt,zt=zt>>8,ge[pe+6]=zt,zt=zt>>8,ge[pe+5]=zt,zt=zt>>8,ge[pe+4]=zt;var rr=Number(fe>>BigInt(32)&BigInt(4294967295));return ge[pe+3]=rr,rr=rr>>8,ge[pe+2]=rr,rr=rr>>8,ge[pe+1]=rr,rr=rr>>8,ge[pe]=rr,pe+8}T.prototype.writeBigUInt64LE=Fe(function(fe){var pe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return St(this,fe,pe,BigInt(0),BigInt("0xffffffffffffffff"))}),T.prototype.writeBigUInt64BE=Fe(function(fe){var pe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Dt(this,fe,pe,BigInt(0),BigInt("0xffffffffffffffff"))}),T.prototype.writeIntLE=function(fe,pe,dt,Pt){if(fe=+fe,pe=pe>>>0,!Pt){var zt=Math.pow(2,8*dt-1);wt(this,fe,pe,dt,zt-1,-zt)}var rr=0,Gr=1,Br=0;for(this[pe]=fe&255;++rr>0)-Br&255;return pe+dt},T.prototype.writeIntBE=function(fe,pe,dt,Pt){if(fe=+fe,pe=pe>>>0,!Pt){var zt=Math.pow(2,8*dt-1);wt(this,fe,pe,dt,zt-1,-zt)}var rr=dt-1,Gr=1,Br=0;for(this[pe+rr]=fe&255;--rr>=0&&(Gr*=256);)fe<0&&Br===0&&this[pe+rr+1]!==0&&(Br=1),this[pe+rr]=(fe/Gr>>0)-Br&255;return pe+dt},T.prototype.writeInt8=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,1,127,-128),fe<0&&(fe=255+fe+1),this[pe]=fe&255,pe+1},T.prototype.writeInt16LE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,2,32767,-32768),this[pe]=fe&255,this[pe+1]=fe>>>8,pe+2},T.prototype.writeInt16BE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,2,32767,-32768),this[pe]=fe>>>8,this[pe+1]=fe&255,pe+2},T.prototype.writeInt32LE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,4,2147483647,-2147483648),this[pe]=fe&255,this[pe+1]=fe>>>8,this[pe+2]=fe>>>16,this[pe+3]=fe>>>24,pe+4},T.prototype.writeInt32BE=function(fe,pe,dt){return fe=+fe,pe=pe>>>0,dt||wt(this,fe,pe,4,2147483647,-2147483648),fe<0&&(fe=4294967295+fe+1),this[pe]=fe>>>24,this[pe+1]=fe>>>16,this[pe+2]=fe>>>8,this[pe+3]=fe&255,pe+4},T.prototype.writeBigInt64LE=Fe(function(fe){var pe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return St(this,fe,pe,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),T.prototype.writeBigInt64BE=Fe(function(fe){var pe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Dt(this,fe,pe,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Zt(ge,fe,pe,dt,Pt,zt){if(pe+dt>ge.length)throw new RangeError("Index out of range");if(pe<0)throw new RangeError("Index out of range")}function Et(ge,fe,pe,dt,Pt){return fe=+fe,pe=pe>>>0,Pt||Zt(ge,fe,pe,4,34028234663852886e22,-34028234663852886e22),x.write(ge,fe,pe,dt,23,4),pe+4}T.prototype.writeFloatLE=function(fe,pe,dt){return Et(this,fe,pe,!0,dt)},T.prototype.writeFloatBE=function(fe,pe,dt){return Et(this,fe,pe,!1,dt)};function Te(ge,fe,pe,dt,Pt){return fe=+fe,pe=pe>>>0,Pt||Zt(ge,fe,pe,8,17976931348623157e292,-17976931348623157e292),x.write(ge,fe,pe,dt,52,8),pe+8}T.prototype.writeDoubleLE=function(fe,pe,dt){return Te(this,fe,pe,!0,dt)},T.prototype.writeDoubleBE=function(fe,pe,dt){return Te(this,fe,pe,!1,dt)},T.prototype.copy=function(fe,pe,dt,Pt){if(!T.isBuffer(fe))throw new TypeError("argument should be a Buffer");if(dt||(dt=0),!Pt&&Pt!==0&&(Pt=this.length),pe>=fe.length&&(pe=fe.length),pe||(pe=0),Pt>0&&Pt=this.length)throw new RangeError("Index out of range");if(Pt<0)throw new RangeError("sourceEnd out of bounds");Pt>this.length&&(Pt=this.length),fe.length-pe>>0,dt=dt===void 0?this.length:dt>>>0,fe||(fe=0);var rr;if(typeof fe=="number")for(rr=pe;rrMath.pow(2,32)?Pt=vt(String(pe)):typeof pe=="bigint"&&(Pt=String(pe),(pe>Math.pow(BigInt(2),BigInt(32))||pe<-Math.pow(BigInt(2),BigInt(32)))&&(Pt=vt(Pt)),Pt+="n"),dt+=" It must be ".concat(fe,". Received ").concat(Pt),dt},RangeError);function vt(ge){for(var fe="",pe=ge.length,dt=ge[0]==="-"?1:0;pe>=dt+4;pe-=3)fe="_".concat(ge.slice(pe-3,pe)).concat(fe);return"".concat(ge.slice(0,pe)).concat(fe)}function Ye(ge,fe,pe){it(fe,"offset"),(ge[fe]===void 0||ge[fe+pe]===void 0)&&et(fe,ge.length-(pe+1))}function He(ge,fe,pe,dt,Pt,zt){if(ge>pe||ge3?fe===0||fe===BigInt(0)?Gr=">= 0".concat(rr," and < 2").concat(rr," ** ").concat((zt+1)*8).concat(rr):Gr=">= -(2".concat(rr," ** ").concat((zt+1)*8-1).concat(rr,") and < 2 ** ")+"".concat((zt+1)*8-1).concat(rr):Gr=">= ".concat(fe).concat(rr," and <= ").concat(pe).concat(rr),new ot.ERR_OUT_OF_RANGE("value",Gr,ge)}Ye(dt,Pt,zt)}function it(ge,fe){if(typeof ge!="number")throw new ot.ERR_INVALID_ARG_TYPE(fe,"number",ge)}function et(ge,fe,pe){throw Math.floor(ge)!==ge?(it(ge,pe),new ot.ERR_OUT_OF_RANGE(pe||"offset","an integer",ge)):fe<0?new ot.ERR_BUFFER_OUT_OF_BOUNDS:new ot.ERR_OUT_OF_RANGE(pe||"offset",">= ".concat(pe?1:0," and <= ").concat(fe),ge)}var It=/[^+/0-9A-Za-z-_]/g;function Yt(ge){if(ge=ge.split("=")[0],ge=ge.trim().replace(It,""),ge.length<2)return"";for(;ge.length%4!==0;)ge=ge+"=";return ge}function cr(ge,fe){fe=fe||1/0;for(var pe,dt=ge.length,Pt=null,zt=[],rr=0;rr55295&&pe<57344){if(!Pt){if(pe>56319){(fe-=3)>-1&&zt.push(239,191,189);continue}else if(rr+1===dt){(fe-=3)>-1&&zt.push(239,191,189);continue}Pt=pe;continue}if(pe<56320){(fe-=3)>-1&&zt.push(239,191,189),Pt=pe;continue}pe=(Pt-55296<<10|pe-56320)+65536}else Pt&&(fe-=3)>-1&&zt.push(239,191,189);if(Pt=null,pe<128){if((fe-=1)<0)break;zt.push(pe)}else if(pe<2048){if((fe-=2)<0)break;zt.push(pe>>6|192,pe&63|128)}else if(pe<65536){if((fe-=3)<0)break;zt.push(pe>>12|224,pe>>6&63|128,pe&63|128)}else if(pe<1114112){if((fe-=4)<0)break;zt.push(pe>>18|240,pe>>12&63|128,pe>>6&63|128,pe&63|128)}else throw new Error("Invalid code point")}return zt}function _r(ge){for(var fe=[],pe=0;pe>8,Pt=pe%256,zt.push(Pt),zt.push(dt);return zt}function Ut(ge){return L.toByteArray(Yt(ge))}function Re(ge,fe,pe,dt){var Pt;for(Pt=0;Pt=fe.length||Pt>=ge.length);++Pt)fe[Pt+pe]=ge[Pt];return Pt}function xe(ge,fe){return ge instanceof fe||ge!=null&&ge.constructor!=null&&ge.constructor.name!=null&&ge.constructor.name===fe.name}function Oe(ge){return ge!==ge}var Ie=function(){for(var ge="0123456789abcdef",fe=new Array(256),pe=0;pe<16;++pe)for(var dt=pe*16,Pt=0;Pt<16;++Pt)fe[dt+Pt]=ge[pe]+ge[Pt];return fe}();function Fe(ge){return typeof BigInt=="undefined"?ft:ge}function ft(){throw new Error("BigInt not supported")}},4844:function(i){i.exports=a;function a(o,s,u,l){return o[0]=s[0]+u[0]*l,o[1]=s[1]+u[1]*l,o[2]=s[2]+u[2]*l,o[3]=s[3]+u[3]*l,o}},4905:function(i,a,o){var s=o(5874);i.exports=u;function u(l,f){var c=s(f),h=[];return h=h.concat(c(l)),h=h.concat(c(null)),h}},4935:function(i,a,o){"use strict";i.exports=k;var s=o(2762),u=o(8116),l=o(4359),f=o(1879).Q,c=window||process.global||{},h=c.__TEXT_CACHE||{};c.__TEXT_CACHE={};var d=3;function p(E,A,L,x){this.gl=E,this.shader=A,this.buffer=L,this.vao=x,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var _=p.prototype,b=[0,0];_.bind=function(E,A,L,x){this.vao.bind(),this.shader.bind();var C=this.shader.uniforms;C.model=E,C.view=A,C.projection=L,C.pixelScale=x,b[0]=this.gl.drawingBufferWidth,b[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=b},_.unbind=function(){this.vao.unbind()},_.update=function(E,A,L,x,C){var M=[];function m(H,re,ae,be,ze,Ce){var de=[ae.style,ae.weight,ae.variant,ae.family].join("_"),te=h[de];te||(te=h[de]={});var ke=te[re];ke||(ke=te[re]=v(re,{triangles:!0,font:ae.family,fontStyle:ae.style,fontWeight:ae.weight,fontVariant:ae.variant,textAlign:"center",textBaseline:"middle",lineSpacing:ze,styletags:Ce}));for(var Ee=(be||12)/12,Me=ke.positions,Ue=ke.cells,De=0,ye=Ue.length;De=0;--ce){var Je=Me[qe[ce]];M.push(Ee*Je[0],-Ee*Je[1],H)}}for(var P=[0,0,0],T=[0,0,0],B=[0,0,0],F=[0,0,0],U=1.25,G={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},j=0;j<3;++j){B[j]=M.length/d|0,m(.5*(E[0][j]+E[1][j]),A[j],L[j],12,U,G),F[j]=(M.length/d|0)-B[j],P[j]=M.length/d|0;for(var W=0;W0||A.length>0;){for(;E.length>0;){var m=E.pop();if(L[m]!==-k){L[m]=k;for(var P=x[m],T=0;T<3;++T){var B=M[3*m+T];B>=0&&L[B]===0&&(C[3*m+T]?A.push(B):(E.push(B),L[B]=k))}}}var F=A;A=E,E=F,A.length=0,k=-k}var U=h(x,L,_);return b?U.concat(v.boundary):U}},5033:function(i){"use strict";i.exports=a;function a(o,s,u){var l=s||0,f=u||1;return[[o[12]+o[0],o[13]+o[1],o[14]+o[2],o[15]+o[3]],[o[12]-o[0],o[13]-o[1],o[14]-o[2],o[15]-o[3]],[o[12]+o[4],o[13]+o[5],o[14]+o[6],o[15]+o[7]],[o[12]-o[4],o[13]-o[5],o[14]-o[6],o[15]-o[7]],[l*o[12]+o[8],l*o[13]+o[9],l*o[14]+o[10],l*o[15]+o[11]],[f*o[12]-o[8],f*o[13]-o[9],f*o[14]-o[10],f*o[15]-o[11]]]}},5085:function(i,a,o){i.exports=k;var s=o(3250)[3],u=o(4209),l=o(3352),f=o(2478);function c(){return!0}function h(E){return function(A,L){var x=E[A];return x?!!x.queryPoint(L,c):!1}}function d(E){for(var A={},L=0;L0&&A[x]===L[0])C=E[x-1];else return 1;for(var M=1;C;){var m=C.key,P=s(L,m[0],m[1]);if(m[0][0]0)M=-1,C=C.right;else return 0;else if(P>0)C=C.left;else if(P<0)M=1,C=C.right;else return 0}return M}}function _(E){return 1}function b(E){return function(L){return E(L[0],L[1])?0:1}}function v(E,A){return function(x){return E(x[0],x[1])?0:A(x)}}function k(E){for(var A=E.length,L=[],x=[],C=0,M=0;M0&&(h=1/Math.sqrt(h),o[0]=u*h,o[1]=l*h,o[2]=f*h,o[3]=c*h),o}},5202:function(i,a,o){"use strict";var s=o(1944),u=o(8210);i.exports=c,i.exports.positive=h,i.exports.negative=d;function l(p,_){var b=u(s(p,_),[_[_.length-1]]);return b[b.length-1]}function f(p,_,b,v){var k=v-_,E=-_/k;E<0?E=0:E>1&&(E=1);for(var A=1-E,L=p.length,x=new Array(L),C=0;C0||k>0&&x<0){var C=f(E,x,A,k);b.push(C),v.push(C.slice())}x<0?v.push(A.slice()):x>0?b.push(A.slice()):(b.push(A.slice()),v.push(A.slice())),k=x}return{positive:b,negative:v}}function h(p,_){for(var b=[],v=l(p[p.length-1],_),k=p[p.length-1],E=p[0],A=0;A0||v>0&&L<0)&&b.push(f(k,L,E,v)),L>=0&&b.push(E.slice()),v=L}return b}function d(p,_){for(var b=[],v=l(p[p.length-1],_),k=p[p.length-1],E=p[0],A=0;A0||v>0&&L<0)&&b.push(f(k,L,E,v)),L<=0&&b.push(E.slice()),v=L}return b}},5219:function(i){"use strict";i.exports=function(a){for(var o=a.length,s,u=0;u13)&&s!==32&&s!==133&&s!==160&&s!==5760&&s!==6158&&(s<8192||s>8205)&&s!==8232&&s!==8233&&s!==8239&&s!==8287&&s!==8288&&s!==12288&&s!==65279)return!1;return!0}},5250:function(i){"use strict";i.exports=o;var a=+(Math.pow(2,27)+1);function o(s,u,l){var f=s*u,c=a*s,h=c-s,d=c-h,p=s-d,_=a*u,b=_-u,v=_-b,k=u-v,E=f-d*v,A=E-p*v,L=A-d*k,x=p*k-L;return l?(l[0]=x,l[1]=f,l):[x,f]}},5298:function(i,a){"use strict";var o={"float64,2,1,0":function(){return function(p,_,b,v,k){var E=p[0],A=p[1],L=p[2],x=b[0],C=b[1],M=b[2];v|=0;var m=0,P=0,T=0,B=M,F=C-L*M,U=x-A*C;for(T=0;T0;){W<64?(x=W,W=0):(x=64,W-=64);for(var N=p[1]|0;N>0;){N<64?(C=N,N=0):(C=64,N-=64),v=G+W*m+N*P,A=j+W*B+N*F;var H=0,re=0,ae=0,be=T,ze=m-M*T,Ce=P-x*m,de=U,te=B-M*U,ke=F-x*B;for(ae=0;ae0;){F<64?(x=F,F=0):(x=64,F-=64);for(var U=p[0]|0;U>0;){U<64?(L=U,U=0):(L=64,U-=64),v=T+F*M+U*C,A=B+F*P+U*m;var G=0,j=0,W=M,N=C-x*M,H=P,re=m-x*P;for(j=0;j0;){j<64?(C=j,j=0):(C=64,j-=64);for(var W=p[0]|0;W>0;){W<64?(L=W,W=0):(L=64,W-=64);for(var N=p[1]|0;N>0;){N<64?(x=N,N=0):(x=64,N-=64),v=U+j*P+W*M+N*m,A=G+j*F+W*T+N*B;var H=0,re=0,ae=0,be=P,ze=M-C*P,Ce=m-L*M,de=F,te=T-C*F,ke=B-L*T;for(ae=0;ae=0}}(),l.removeTriangle=function(h,d,p){var _=this.stars;f(_[h],d,p),f(_[d],p,h),f(_[p],h,d)},l.addTriangle=function(h,d,p){var _=this.stars;_[h].push(d,p),_[d].push(p,h),_[p].push(h,d)},l.opposite=function(h,d){for(var p=this.stars[d],_=1,b=p.length;_0;){var v=p.pop();h[v]=!1;for(var k=c[v],_=0;_0){for(var de=0;de<24;++de)F.push(F[F.length-12]);W+=2,be=!0}continue e}N[0][T]=Math.min(N[0][T],ze[T],Ce[T]),N[1][T]=Math.max(N[1][T],ze[T],Ce[T])}var te,ke;Array.isArray(re[0])?(te=re.length>P-1?re[P-1]:re.length>0?re[re.length-1]:[0,0,0,1],ke=re.length>P?re[P]:re.length>0?re[re.length-1]:[0,0,0,1]):te=ke=re,te.length===3&&(te=[te[0],te[1],te[2],1]),ke.length===3&&(ke=[ke[0],ke[1],ke[2],1]),!this.hasAlpha&&te[3]<1&&(this.hasAlpha=!0);var Ee;Array.isArray(ae)?Ee=ae.length>P-1?ae[P-1]:ae.length>0?ae[ae.length-1]:[0,0,0,1]:Ee=ae;var Me=j;if(j+=E(ze,Ce),be){for(T=0;T<2;++T)F.push(ze[0],ze[1],ze[2],Ce[0],Ce[1],Ce[2],Me,Ee,te[0],te[1],te[2],te[3]);W+=2,be=!1}F.push(ze[0],ze[1],ze[2],Ce[0],Ce[1],Ce[2],Me,Ee,te[0],te[1],te[2],te[3],ze[0],ze[1],ze[2],Ce[0],Ce[1],Ce[2],Me,-Ee,te[0],te[1],te[2],te[3],Ce[0],Ce[1],Ce[2],ze[0],ze[1],ze[2],j,-Ee,ke[0],ke[1],ke[2],ke[3],Ce[0],Ce[1],Ce[2],ze[0],ze[1],ze[2],j,Ee,ke[0],ke[1],ke[2],ke[3]),W+=4}}if(this.buffer.update(F),U.push(j),G.push(H[H.length-1].slice()),this.bounds=N,this.vertexCount=W,this.points=G,this.arcLength=U,"dashes"in m){var Ue=m.dashes,De=Ue.slice();for(De.unshift(0),P=1;Po[u][0]&&(u=l);return su?[[u],[s]]:[[s]]}},5771:function(i,a,o){"use strict";var s=o(8507),u=o(3788),l=o(2419);i.exports=f;function f(c){c.sort(u);for(var h=c.length,d=0,p=0;p0){var v=c[d-1];if(s(_,v)===0&&l(v)!==b){d-=1;continue}}c[d++]=_}}return c.length=d,c}},5838:function(i,a,o){"use strict";i.exports=u;var s=o(7842);function u(l){for(var f=new Array(l.length),c=0;c0)continue;vt=Te.slice(0,1).join("")}return qe(vt),Ce+=vt.length,N=N.slice(vt.length),N.length}while(!0)}function St(){return/[^a-fA-F0-9]/.test(j)?(qe(N.join("")),G=h,F):(N.push(j),H=j,F+1)}function Dt(){return j==="."||/[eE]/.test(j)?(N.push(j),G=E,H=j,F+1):j==="x"&&N.length===1&&N[0]==="0"?(G=m,N.push(j),H=j,F+1):/[^\d]/.test(j)?(qe(N.join("")),G=h,F):(N.push(j),H=j,F+1)}function Zt(){return j==="f"&&(N.push(j),H=j,F+=1),/[eE]/.test(j)||(j==="-"||j==="+")&&/[eE]/.test(H)?(N.push(j),H=j,F+1):/[^\d]/.test(j)?(qe(N.join("")),G=h,F):(N.push(j),H=j,F+1)}function Et(){if(/[^\d\w_]/.test(j)){var Te=N.join("");return ye[Te]?G=x:De[Te]?G=L:G=A,qe(N.join("")),G=h,F}return N.push(j),H=j,F+1}}},5878:function(i,a,o){"use strict";i.exports=f;var s=o(3250),u=o(2014);function l(c,h,d){var p=Math.abs(s(c,h,d)),_=Math.sqrt(Math.pow(h[0]-d[0],2)+Math.pow(h[1]-d[1],2));return p/_}function f(c,h,d){for(var p=h.length,_=c.length,b=new Array(p),v=new Array(p),k=new Array(p),E=new Array(p),A=0;A>1:(te>>1)-1}function B(te){for(var ke=P(te);;){var Ee=ke,Me=2*te+1,Ue=2*(te+1),De=te;if(Me0;){var Ee=T(te);if(Ee>=0){var Me=P(Ee);if(ke0){var te=H[0];return m(0,re-1),re-=1,B(0),te}return-1}function G(te,ke){var Ee=H[te];return k[Ee]===ke?te:(k[Ee]=-1/0,F(te),U(),k[Ee]=ke,re+=1,F(re-1))}function j(te){if(!E[te]){E[te]=!0;var ke=b[te],Ee=v[te];b[Ee]>=0&&(b[Ee]=ke),v[ke]>=0&&(v[ke]=Ee),N[ke]>=0&&G(N[ke],M(ke)),N[Ee]>=0&&G(N[Ee],M(Ee))}}for(var H=[],N=new Array(p),A=0;A>1;A>=0;--A)B(A);for(;;){var ae=U();if(ae<0||k[ae]>d)break;j(ae)}for(var be=[],A=0;A=0&&Ee>=0&&ke!==Ee){var Me=N[ke],Ue=N[Ee];Me!==Ue&&de.push([Me,Ue])}}),u.unique(u.normalize(de)),{positions:be,edges:de}}},5911:function(i){i.exports=a;function a(o,s,u){var l=s[0],f=s[1],c=s[2],h=u[0],d=u[1],p=u[2];return o[0]=f*p-c*d,o[1]=c*h-l*p,o[2]=l*d-f*h,o}},5964:function(i){"use strict";i.exports=function(a){return!a&&a!==0?"":a.toString()}},5995:function(i,a,o){"use strict";i.exports=l;var s=o(7642),u=o(6037);function l(f,c){return s(c).filter(function(h){for(var d=new Array(h.length),p=0;p2&&T[1]>2&&M(P.pick(-1,-1).lo(1,1).hi(T[0]-2,T[1]-2),m.pick(-1,-1,0).lo(1,1).hi(T[0]-2,T[1]-2),m.pick(-1,-1,1).lo(1,1).hi(T[0]-2,T[1]-2)),T[1]>2&&(C(P.pick(0,-1).lo(1).hi(T[1]-2),m.pick(0,-1,1).lo(1).hi(T[1]-2)),x(m.pick(0,-1,0).lo(1).hi(T[1]-2))),T[1]>2&&(C(P.pick(T[0]-1,-1).lo(1).hi(T[1]-2),m.pick(T[0]-1,-1,1).lo(1).hi(T[1]-2)),x(m.pick(T[0]-1,-1,0).lo(1).hi(T[1]-2))),T[0]>2&&(C(P.pick(-1,0).lo(1).hi(T[0]-2),m.pick(-1,0,0).lo(1).hi(T[0]-2)),x(m.pick(-1,0,1).lo(1).hi(T[0]-2))),T[0]>2&&(C(P.pick(-1,T[1]-1).lo(1).hi(T[0]-2),m.pick(-1,T[1]-1,0).lo(1).hi(T[0]-2)),x(m.pick(-1,T[1]-1,1).lo(1).hi(T[0]-2))),m.set(0,0,0,0),m.set(0,0,1,0),m.set(T[0]-1,0,0,0),m.set(T[0]-1,0,1,0),m.set(0,T[1]-1,0,0),m.set(0,T[1]-1,1,0),m.set(T[0]-1,T[1]-1,0,0),m.set(T[0]-1,T[1]-1,1,0),m}}function A(L){var x=L.join(),T=p[x];if(T)return T;for(var C=L.length,M=[b,v],m=1;m<=C;++m)M.push(k(m));var P=E,T=P.apply(void 0,M);return p[x]=T,T}i.exports=function(x,C,M){if(Array.isArray(M)||(typeof M=="string"?M=s(C.dimension,M):M=s(C.dimension,"clamp")),C.size===0)return x;if(C.dimension===0)return x.set(0),x;var m=A(M);return m(x,C)}},6204:function(i){"use strict";i.exports=a;function a(o){var s,u,l,f=o.length,c=0;for(s=0;sp&&(p=s.length(F)),T&&!P){var U=2*s.distance(L,B)/(s.length(x)+s.length(F));U?(M=Math.min(M,U),m=!1):m=!0}m||(L=B,x=F),C.push(F)}var G=[_,v,E],j=[b,k,A];f&&(f[0]=G,f[1]=j),p===0&&(p=1);var H=1/p;isFinite(M)||(M=1),d.vectorScale=M;var N=l.coneSize||(P?1:.5);l.absoluteConeSize&&(N=l.absoluteConeSize*H),d.coneScale=N;for(var T=0,W=0;Tbe&&(j|=1<be){j|=1<d[F][1])&&(Ue=F);for(var De=-1,F=0;F<3;++F){var ye=Ue^1<d[qe][0]&&(qe=ye)}}var ce=E;ce[0]=ce[1]=ce[2]=0,ce[s.log2(De^Ue)]=Ue&De,ce[s.log2(Ue^qe)]=Ue&qe;var Je=qe^7;Je===j||Je===Me?(Je=De^7,ce[s.log2(qe^Je)]=Je&qe):ce[s.log2(De^Je)]=Je&De;for(var nt=A,gt=j,W=0;W<3;++W)gt&1<=0&&(d=c.length-h-1);var p=Math.pow(10,d),_=Math.round(l*f*p),b=_+"";if(b.indexOf("e")>=0)return b;var v=_/p,k=_%p;_<0?(v=-Math.ceil(v)|0,k=-k|0):(v=Math.floor(v)|0,k=k|0);var E=""+v;if(_<0&&(E="-"+E),d){for(var A=""+k;A.length=l[0][h];--_)d.push({x:_*f[h],text:o(f[h],_)});c.push(d)}return c}function u(l,f){for(var c=0;c<3;++c){if(l[c].length!==f[c].length)return!1;for(var h=0;hL+1)throw new Error(E+" map requires nshades to be at least size "+k.length);Array.isArray(d.alpha)?d.alpha.length!==2?x=[1,1]:x=d.alpha.slice():typeof d.alpha=="number"?x=[d.alpha,d.alpha]:x=[1,1],p=k.map(function(B){return Math.round(B.index*L)}),x[0]=Math.min(Math.max(x[0],0),1),x[1]=Math.min(Math.max(x[1],0),1);var M=k.map(function(B,F){var U=k[F].index,G=k[F].rgb.slice();return G.length===4&&G[3]>=0&&G[3]<=1||(G[3]=x[0]+(x[1]-x[0])*U),G}),m=[];for(C=0;C0)continue;vt=Te.slice(0,1).join("")}return qe(vt),Ce+=vt.length,N=N.slice(vt.length),N.length}while(!0)}function St(){return/[^a-fA-F0-9]/.test(j)?(qe(N.join("")),G=h,F):(N.push(j),W=j,F+1)}function Dt(){return j==="."||/[eE]/.test(j)?(N.push(j),G=E,W=j,F+1):j==="x"&&N.length===1&&N[0]==="0"?(G=m,N.push(j),W=j,F+1):/[^\d]/.test(j)?(qe(N.join("")),G=h,F):(N.push(j),W=j,F+1)}function Zt(){return j==="f"&&(N.push(j),W=j,F+=1),/[eE]/.test(j)||(j==="-"||j==="+")&&/[eE]/.test(W)?(N.push(j),W=j,F+1):/[^\d]/.test(j)?(qe(N.join("")),G=h,F):(N.push(j),W=j,F+1)}function Et(){if(/[^\d\w_]/.test(j)){var Te=N.join("");return ye[Te]?G=x:De[Te]?G=L:G=A,qe(N.join("")),G=h,F}return N.push(j),W=j,F+1}}},5878:function(i,a,o){"use strict";i.exports=f;var s=o(3250),u=o(2014);function l(c,h,d){var p=Math.abs(s(c,h,d)),_=Math.sqrt(Math.pow(h[0]-d[0],2)+Math.pow(h[1]-d[1],2));return p/_}function f(c,h,d){for(var p=h.length,_=c.length,b=new Array(p),v=new Array(p),k=new Array(p),E=new Array(p),A=0;A>1:(te>>1)-1}function B(te){for(var ke=P(te);;){var Ee=ke,Me=2*te+1,Ue=2*(te+1),De=te;if(Me0;){var Ee=T(te);if(Ee>=0){var Me=P(Ee);if(ke0){var te=W[0];return m(0,re-1),re-=1,B(0),te}return-1}function G(te,ke){var Ee=W[te];return k[Ee]===ke?te:(k[Ee]=-1/0,F(te),U(),k[Ee]=ke,re+=1,F(re-1))}function j(te){if(!E[te]){E[te]=!0;var ke=b[te],Ee=v[te];b[Ee]>=0&&(b[Ee]=ke),v[ke]>=0&&(v[ke]=Ee),N[ke]>=0&&G(N[ke],M(ke)),N[Ee]>=0&&G(N[Ee],M(Ee))}}for(var W=[],N=new Array(p),A=0;A>1;A>=0;--A)B(A);for(;;){var ae=U();if(ae<0||k[ae]>d)break;j(ae)}for(var be=[],A=0;A=0&&Ee>=0&&ke!==Ee){var Me=N[ke],Ue=N[Ee];Me!==Ue&&de.push([Me,Ue])}}),u.unique(u.normalize(de)),{positions:be,edges:de}}},5911:function(i){i.exports=a;function a(o,s,u){var l=s[0],f=s[1],c=s[2],h=u[0],d=u[1],p=u[2];return o[0]=f*p-c*d,o[1]=c*h-l*p,o[2]=l*d-f*h,o}},5964:function(i){"use strict";i.exports=function(a){return!a&&a!==0?"":a.toString()}},5995:function(i,a,o){"use strict";i.exports=l;var s=o(7642),u=o(6037);function l(f,c){return s(c).filter(function(h){for(var d=new Array(h.length),p=0;p2&&T[1]>2&&M(P.pick(-1,-1).lo(1,1).hi(T[0]-2,T[1]-2),m.pick(-1,-1,0).lo(1,1).hi(T[0]-2,T[1]-2),m.pick(-1,-1,1).lo(1,1).hi(T[0]-2,T[1]-2)),T[1]>2&&(C(P.pick(0,-1).lo(1).hi(T[1]-2),m.pick(0,-1,1).lo(1).hi(T[1]-2)),x(m.pick(0,-1,0).lo(1).hi(T[1]-2))),T[1]>2&&(C(P.pick(T[0]-1,-1).lo(1).hi(T[1]-2),m.pick(T[0]-1,-1,1).lo(1).hi(T[1]-2)),x(m.pick(T[0]-1,-1,0).lo(1).hi(T[1]-2))),T[0]>2&&(C(P.pick(-1,0).lo(1).hi(T[0]-2),m.pick(-1,0,0).lo(1).hi(T[0]-2)),x(m.pick(-1,0,1).lo(1).hi(T[0]-2))),T[0]>2&&(C(P.pick(-1,T[1]-1).lo(1).hi(T[0]-2),m.pick(-1,T[1]-1,0).lo(1).hi(T[0]-2)),x(m.pick(-1,T[1]-1,1).lo(1).hi(T[0]-2))),m.set(0,0,0,0),m.set(0,0,1,0),m.set(T[0]-1,0,0,0),m.set(T[0]-1,0,1,0),m.set(0,T[1]-1,0,0),m.set(0,T[1]-1,1,0),m.set(T[0]-1,T[1]-1,0,0),m.set(T[0]-1,T[1]-1,1,0),m}}function A(L){var x=L.join(),T=p[x];if(T)return T;for(var C=L.length,M=[b,v],m=1;m<=C;++m)M.push(k(m));var P=E,T=P.apply(void 0,M);return p[x]=T,T}i.exports=function(x,C,M){if(Array.isArray(M)||(typeof M=="string"?M=s(C.dimension,M):M=s(C.dimension,"clamp")),C.size===0)return x;if(C.dimension===0)return x.set(0),x;var m=A(M);return m(x,C)}},6204:function(i){"use strict";i.exports=a;function a(o){var s,u,l,f=o.length,c=0;for(s=0;sp&&(p=s.length(F)),T&&!P){var U=2*s.distance(L,B)/(s.length(x)+s.length(F));U?(M=Math.min(M,U),m=!1):m=!0}m||(L=B,x=F),C.push(F)}var G=[_,v,E],j=[b,k,A];f&&(f[0]=G,f[1]=j),p===0&&(p=1);var W=1/p;isFinite(M)||(M=1),d.vectorScale=M;var N=l.coneSize||(P?1:.5);l.absoluteConeSize&&(N=l.absoluteConeSize*W),d.coneScale=N;for(var T=0,H=0;Tbe&&(j|=1<be){j|=1<d[F][1])&&(Ue=F);for(var De=-1,F=0;F<3;++F){var ye=Ue^1<d[qe][0]&&(qe=ye)}}var ce=E;ce[0]=ce[1]=ce[2]=0,ce[s.log2(De^Ue)]=Ue&De,ce[s.log2(Ue^qe)]=Ue&qe;var Je=qe^7;Je===j||Je===Me?(Je=De^7,ce[s.log2(qe^Je)]=Je&qe):ce[s.log2(De^Je)]=Je&De;for(var nt=A,gt=j,H=0;H<3;++H)gt&1<=0&&(d=c.length-h-1);var p=Math.pow(10,d),_=Math.round(l*f*p),b=_+"";if(b.indexOf("e")>=0)return b;var v=_/p,k=_%p;_<0?(v=-Math.ceil(v)|0,k=-k|0):(v=Math.floor(v)|0,k=k|0);var E=""+v;if(_<0&&(E="-"+E),d){for(var A=""+k;A.length=l[0][h];--_)d.push({x:_*f[h],text:o(f[h],_)});c.push(d)}return c}function u(l,f){for(var c=0;c<3;++c){if(l[c].length!==f[c].length)return!1;for(var h=0;hL+1)throw new Error(E+" map requires nshades to be at least size "+k.length);Array.isArray(d.alpha)?d.alpha.length!==2?x=[1,1]:x=d.alpha.slice():typeof d.alpha=="number"?x=[d.alpha,d.alpha]:x=[1,1],p=k.map(function(B){return Math.round(B.index*L)}),x[0]=Math.min(Math.max(x[0],0),1),x[1]=Math.min(Math.max(x[1],0),1);var M=k.map(function(B,F){var U=k[F].index,G=k[F].rgb.slice();return G.length===4&&G[3]>=0&&G[3]<=1||(G[3]=x[0]+(x[1]-x[0])*U),G}),m=[];for(C=0;C>1,j=d(P[G],T);j<=0?(j===0&&(U=G),B=G+1):j>0&&(F=G-1)}return U}s=v;function k(P,T){for(var B=new Array(P.length),F=0,U=B.length;F=P.length||d(P[ze],G)!==0););}return B}s=k;function E(P,T){if(!T)return k(b(L(P,0)),P,0);for(var B=new Array(T),F=0;F>>W&1&&N.push(U[W]);T.push(N)}return _(T)}s=A;function L(P,T){if(T<0)return[];for(var B=[],F=(1<0?N:W},c.min=function(N,W){return N.cmp(W)<0?N:W},c.prototype._init=function(N,W,re){if(typeof N=="number")return this._initNumber(N,W,re);if(typeof N=="object")return this._initArray(N,W,re);W==="hex"&&(W=16),l(W===(W|0)&&W>=2&&W<=36),N=N.toString().replace(/\s+/g,"");var ae=0;N[0]==="-"&&(ae++,this.negative=1),ae=0;ae-=3)ze=N[ae]|N[ae-1]<<8|N[ae-2]<<16,this.words[be]|=ze<>>26-Ce&67108863,Ce+=24,Ce>=26&&(Ce-=26,be++);else if(re==="le")for(ae=0,be=0;ae>>26-Ce&67108863,Ce+=24,Ce>=26&&(Ce-=26,be++);return this.strip()};function d(H,N){var W=H.charCodeAt(N);return W>=65&&W<=70?W-55:W>=97&&W<=102?W-87:W-48&15}function p(H,N,W){var re=d(H,W);return W-1>=N&&(re|=d(H,W-1)<<4),re}c.prototype._parseHex=function(N,W,re){this.length=Math.ceil((N.length-W)/6),this.words=new Array(this.length);for(var ae=0;ae=W;ae-=2)Ce=p(N,W,ae)<=18?(be-=18,ze+=1,this.words[ze]|=Ce>>>26):be+=8;else{var de=N.length-W;for(ae=de%2===0?W+1:W;ae=18?(be-=18,ze+=1,this.words[ze]|=Ce>>>26):be+=8}this.strip()};function _(H,N,W,re){for(var ae=0,be=Math.min(H.length,W),ze=N;ze=49?ae+=Ce-49+10:Ce>=17?ae+=Ce-17+10:ae+=Ce}return ae}c.prototype._parseBase=function(N,W,re){this.words=[0],this.length=1;for(var ae=0,be=1;be<=67108863;be*=W)ae++;ae--,be=be/W|0;for(var ze=N.length-re,Ce=ze%ae,de=Math.min(ze,ze-Ce)+re,te=0,ke=re;ke1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},c.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},c.prototype.inspect=function(){return(this.red?""};var b=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],v=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],k=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];c.prototype.toString=function(N,W){N=N||10,W=W|0||1;var re;if(N===16||N==="hex"){re="";for(var ae=0,be=0,ze=0;ze>>24-ae&16777215,be!==0||ze!==this.length-1?re=b[6-de.length]+de+re:re=de+re,ae+=2,ae>=26&&(ae-=26,ze--)}for(be!==0&&(re=be.toString(16)+re);re.length%W!==0;)re="0"+re;return this.negative!==0&&(re="-"+re),re}if(N===(N|0)&&N>=2&&N<=36){var te=v[N],ke=k[N];re="";var Ee=this.clone();for(Ee.negative=0;!Ee.isZero();){var Me=Ee.modn(ke).toString(N);Ee=Ee.idivn(ke),Ee.isZero()?re=Me+re:re=b[te-Me.length]+Me+re}for(this.isZero()&&(re="0"+re);re.length%W!==0;)re="0"+re;return this.negative!==0&&(re="-"+re),re}l(!1,"Base should be between 2 and 36")},c.prototype.toNumber=function(){var N=this.words[0];return this.length===2?N+=this.words[1]*67108864:this.length===3&&this.words[2]===1?N+=4503599627370496+this.words[1]*67108864:this.length>2&&l(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-N:N},c.prototype.toJSON=function(){return this.toString(16)},c.prototype.toBuffer=function(N,W){return l(typeof h!="undefined"),this.toArrayLike(h,N,W)},c.prototype.toArray=function(N,W){return this.toArrayLike(Array,N,W)},c.prototype.toArrayLike=function(N,W,re){var ae=this.byteLength(),be=re||Math.max(1,ae);l(ae<=be,"byte array longer than desired length"),l(be>0,"Requested array length <= 0"),this.strip();var ze=W==="le",Ce=new N(be),de,te,ke=this.clone();if(ze){for(te=0;!ke.isZero();te++)de=ke.andln(255),ke.iushrn(8),Ce[te]=de;for(;te=4096&&(re+=13,W>>>=13),W>=64&&(re+=7,W>>>=7),W>=8&&(re+=4,W>>>=4),W>=2&&(re+=2,W>>>=2),re+W},c.prototype._zeroBits=function(N){if(N===0)return 26;var W=N,re=0;return(W&8191)===0&&(re+=13,W>>>=13),(W&127)===0&&(re+=7,W>>>=7),(W&15)===0&&(re+=4,W>>>=4),(W&3)===0&&(re+=2,W>>>=2),(W&1)===0&&re++,re},c.prototype.bitLength=function(){var N=this.words[this.length-1],W=this._countBits(N);return(this.length-1)*26+W};function E(H){for(var N=new Array(H.bitLength()),W=0;W>>ae}return N}c.prototype.zeroBits=function(){if(this.isZero())return 0;for(var N=0,W=0;WN.length?this.clone().ior(N):N.clone().ior(this)},c.prototype.uor=function(N){return this.length>N.length?this.clone().iuor(N):N.clone().iuor(this)},c.prototype.iuand=function(N){var W;this.length>N.length?W=N:W=this;for(var re=0;reN.length?this.clone().iand(N):N.clone().iand(this)},c.prototype.uand=function(N){return this.length>N.length?this.clone().iuand(N):N.clone().iuand(this)},c.prototype.iuxor=function(N){var W,re;this.length>N.length?(W=this,re=N):(W=N,re=this);for(var ae=0;aeN.length?this.clone().ixor(N):N.clone().ixor(this)},c.prototype.uxor=function(N){return this.length>N.length?this.clone().iuxor(N):N.clone().iuxor(this)},c.prototype.inotn=function(N){l(typeof N=="number"&&N>=0);var W=Math.ceil(N/26)|0,re=N%26;this._expand(W),re>0&&W--;for(var ae=0;ae0&&(this.words[ae]=~this.words[ae]&67108863>>26-re),this.strip()},c.prototype.notn=function(N){return this.clone().inotn(N)},c.prototype.setn=function(N,W){l(typeof N=="number"&&N>=0);var re=N/26|0,ae=N%26;return this._expand(re+1),W?this.words[re]=this.words[re]|1<N.length?(re=this,ae=N):(re=N,ae=this);for(var be=0,ze=0;ze>>26;for(;be!==0&&ze>>26;if(this.length=re.length,be!==0)this.words[this.length]=be,this.length++;else if(re!==this)for(;zeN.length?this.clone().iadd(N):N.clone().iadd(this)},c.prototype.isub=function(N){if(N.negative!==0){N.negative=0;var W=this.iadd(N);return N.negative=1,W._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(N),this.negative=1,this._normSign();var re=this.cmp(N);if(re===0)return this.negative=0,this.length=1,this.words[0]=0,this;var ae,be;re>0?(ae=this,be=N):(ae=N,be=this);for(var ze=0,Ce=0;Ce>26,this.words[Ce]=W&67108863;for(;ze!==0&&Ce>26,this.words[Ce]=W&67108863;if(ze===0&&Ce>>26,Ee=de&67108863,Me=Math.min(te,N.length-1),Ue=Math.max(0,te-H.length+1);Ue<=Me;Ue++){var De=te-Ue|0;ae=H.words[De]|0,be=N.words[Ue]|0,ze=ae*be+Ee,ke+=ze/67108864|0,Ee=ze&67108863}W.words[te]=Ee|0,de=ke|0}return de!==0?W.words[te]=de|0:W.length--,W.strip()}var L=function(N,W,re){var ae=N.words,be=W.words,ze=re.words,Ce=0,de,te,ke,Ee=ae[0]|0,Me=Ee&8191,Ue=Ee>>>13,De=ae[1]|0,ye=De&8191,qe=De>>>13,ce=ae[2]|0,Je=ce&8191,nt=ce>>>13,gt=ae[3]|0,Nt=gt&8191,at=gt>>>13,Ke=ae[4]|0,Ct=Ke&8191,wt=Ke>>>13,St=ae[5]|0,Dt=St&8191,Zt=St>>>13,Et=ae[6]|0,Te=Et&8191,ot=Et>>>13,Tt=ae[7]|0,vt=Tt&8191,Ye=Tt>>>13,He=ae[8]|0,it=He&8191,et=He>>>13,It=ae[9]|0,Yt=It&8191,cr=It>>>13,_r=be[0]|0,yr=_r&8191,Ut=_r>>>13,Re=be[1]|0,xe=Re&8191,Oe=Re>>>13,Ie=be[2]|0,Fe=Ie&8191,ft=Ie>>>13,ge=be[3]|0,fe=ge&8191,pe=ge>>>13,dt=be[4]|0,Pt=dt&8191,zt=dt>>>13,rr=be[5]|0,Gr=rr&8191,Br=rr>>>13,Er=be[6]|0,Rr=Er&8191,pi=Er>>>13,Di=be[7]|0,ni=Di&8191,$i=Di>>>13,Qi=be[8]|0,si=Qi&8191,Ai=Qi>>>13,Ni=be[9]|0,Rt=Ni&8191,yt=Ni>>>13;re.negative=N.negative^W.negative,re.length=19,de=Math.imul(Me,yr),te=Math.imul(Me,Ut),te=te+Math.imul(Ue,yr)|0,ke=Math.imul(Ue,Ut);var Gt=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Gt>>>26)|0,Gt&=67108863,de=Math.imul(ye,yr),te=Math.imul(ye,Ut),te=te+Math.imul(qe,yr)|0,ke=Math.imul(qe,Ut),de=de+Math.imul(Me,xe)|0,te=te+Math.imul(Me,Oe)|0,te=te+Math.imul(Ue,xe)|0,ke=ke+Math.imul(Ue,Oe)|0;var Wt=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Wt>>>26)|0,Wt&=67108863,de=Math.imul(Je,yr),te=Math.imul(Je,Ut),te=te+Math.imul(nt,yr)|0,ke=Math.imul(nt,Ut),de=de+Math.imul(ye,xe)|0,te=te+Math.imul(ye,Oe)|0,te=te+Math.imul(qe,xe)|0,ke=ke+Math.imul(qe,Oe)|0,de=de+Math.imul(Me,Fe)|0,te=te+Math.imul(Me,ft)|0,te=te+Math.imul(Ue,Fe)|0,ke=ke+Math.imul(Ue,ft)|0;var xr=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(xr>>>26)|0,xr&=67108863,de=Math.imul(Nt,yr),te=Math.imul(Nt,Ut),te=te+Math.imul(at,yr)|0,ke=Math.imul(at,Ut),de=de+Math.imul(Je,xe)|0,te=te+Math.imul(Je,Oe)|0,te=te+Math.imul(nt,xe)|0,ke=ke+Math.imul(nt,Oe)|0,de=de+Math.imul(ye,Fe)|0,te=te+Math.imul(ye,ft)|0,te=te+Math.imul(qe,Fe)|0,ke=ke+Math.imul(qe,ft)|0,de=de+Math.imul(Me,fe)|0,te=te+Math.imul(Me,pe)|0,te=te+Math.imul(Ue,fe)|0,ke=ke+Math.imul(Ue,pe)|0;var Lr=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Lr>>>26)|0,Lr&=67108863,de=Math.imul(Ct,yr),te=Math.imul(Ct,Ut),te=te+Math.imul(wt,yr)|0,ke=Math.imul(wt,Ut),de=de+Math.imul(Nt,xe)|0,te=te+Math.imul(Nt,Oe)|0,te=te+Math.imul(at,xe)|0,ke=ke+Math.imul(at,Oe)|0,de=de+Math.imul(Je,Fe)|0,te=te+Math.imul(Je,ft)|0,te=te+Math.imul(nt,Fe)|0,ke=ke+Math.imul(nt,ft)|0,de=de+Math.imul(ye,fe)|0,te=te+Math.imul(ye,pe)|0,te=te+Math.imul(qe,fe)|0,ke=ke+Math.imul(qe,pe)|0,de=de+Math.imul(Me,Pt)|0,te=te+Math.imul(Me,zt)|0,te=te+Math.imul(Ue,Pt)|0,ke=ke+Math.imul(Ue,zt)|0;var Nr=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Nr>>>26)|0,Nr&=67108863,de=Math.imul(Dt,yr),te=Math.imul(Dt,Ut),te=te+Math.imul(Zt,yr)|0,ke=Math.imul(Zt,Ut),de=de+Math.imul(Ct,xe)|0,te=te+Math.imul(Ct,Oe)|0,te=te+Math.imul(wt,xe)|0,ke=ke+Math.imul(wt,Oe)|0,de=de+Math.imul(Nt,Fe)|0,te=te+Math.imul(Nt,ft)|0,te=te+Math.imul(at,Fe)|0,ke=ke+Math.imul(at,ft)|0,de=de+Math.imul(Je,fe)|0,te=te+Math.imul(Je,pe)|0,te=te+Math.imul(nt,fe)|0,ke=ke+Math.imul(nt,pe)|0,de=de+Math.imul(ye,Pt)|0,te=te+Math.imul(ye,zt)|0,te=te+Math.imul(qe,Pt)|0,ke=ke+Math.imul(qe,zt)|0,de=de+Math.imul(Me,Gr)|0,te=te+Math.imul(Me,Br)|0,te=te+Math.imul(Ue,Gr)|0,ke=ke+Math.imul(Ue,Br)|0;var Or=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Or>>>26)|0,Or&=67108863,de=Math.imul(Te,yr),te=Math.imul(Te,Ut),te=te+Math.imul(ot,yr)|0,ke=Math.imul(ot,Ut),de=de+Math.imul(Dt,xe)|0,te=te+Math.imul(Dt,Oe)|0,te=te+Math.imul(Zt,xe)|0,ke=ke+Math.imul(Zt,Oe)|0,de=de+Math.imul(Ct,Fe)|0,te=te+Math.imul(Ct,ft)|0,te=te+Math.imul(wt,Fe)|0,ke=ke+Math.imul(wt,ft)|0,de=de+Math.imul(Nt,fe)|0,te=te+Math.imul(Nt,pe)|0,te=te+Math.imul(at,fe)|0,ke=ke+Math.imul(at,pe)|0,de=de+Math.imul(Je,Pt)|0,te=te+Math.imul(Je,zt)|0,te=te+Math.imul(nt,Pt)|0,ke=ke+Math.imul(nt,zt)|0,de=de+Math.imul(ye,Gr)|0,te=te+Math.imul(ye,Br)|0,te=te+Math.imul(qe,Gr)|0,ke=ke+Math.imul(qe,Br)|0,de=de+Math.imul(Me,Rr)|0,te=te+Math.imul(Me,pi)|0,te=te+Math.imul(Ue,Rr)|0,ke=ke+Math.imul(Ue,pi)|0;var Hr=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Hr>>>26)|0,Hr&=67108863,de=Math.imul(vt,yr),te=Math.imul(vt,Ut),te=te+Math.imul(Ye,yr)|0,ke=Math.imul(Ye,Ut),de=de+Math.imul(Te,xe)|0,te=te+Math.imul(Te,Oe)|0,te=te+Math.imul(ot,xe)|0,ke=ke+Math.imul(ot,Oe)|0,de=de+Math.imul(Dt,Fe)|0,te=te+Math.imul(Dt,ft)|0,te=te+Math.imul(Zt,Fe)|0,ke=ke+Math.imul(Zt,ft)|0,de=de+Math.imul(Ct,fe)|0,te=te+Math.imul(Ct,pe)|0,te=te+Math.imul(wt,fe)|0,ke=ke+Math.imul(wt,pe)|0,de=de+Math.imul(Nt,Pt)|0,te=te+Math.imul(Nt,zt)|0,te=te+Math.imul(at,Pt)|0,ke=ke+Math.imul(at,zt)|0,de=de+Math.imul(Je,Gr)|0,te=te+Math.imul(Je,Br)|0,te=te+Math.imul(nt,Gr)|0,ke=ke+Math.imul(nt,Br)|0,de=de+Math.imul(ye,Rr)|0,te=te+Math.imul(ye,pi)|0,te=te+Math.imul(qe,Rr)|0,ke=ke+Math.imul(qe,pi)|0,de=de+Math.imul(Me,ni)|0,te=te+Math.imul(Me,$i)|0,te=te+Math.imul(Ue,ni)|0,ke=ke+Math.imul(Ue,$i)|0;var jr=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(jr>>>26)|0,jr&=67108863,de=Math.imul(it,yr),te=Math.imul(it,Ut),te=te+Math.imul(et,yr)|0,ke=Math.imul(et,Ut),de=de+Math.imul(vt,xe)|0,te=te+Math.imul(vt,Oe)|0,te=te+Math.imul(Ye,xe)|0,ke=ke+Math.imul(Ye,Oe)|0,de=de+Math.imul(Te,Fe)|0,te=te+Math.imul(Te,ft)|0,te=te+Math.imul(ot,Fe)|0,ke=ke+Math.imul(ot,ft)|0,de=de+Math.imul(Dt,fe)|0,te=te+Math.imul(Dt,pe)|0,te=te+Math.imul(Zt,fe)|0,ke=ke+Math.imul(Zt,pe)|0,de=de+Math.imul(Ct,Pt)|0,te=te+Math.imul(Ct,zt)|0,te=te+Math.imul(wt,Pt)|0,ke=ke+Math.imul(wt,zt)|0,de=de+Math.imul(Nt,Gr)|0,te=te+Math.imul(Nt,Br)|0,te=te+Math.imul(at,Gr)|0,ke=ke+Math.imul(at,Br)|0,de=de+Math.imul(Je,Rr)|0,te=te+Math.imul(Je,pi)|0,te=te+Math.imul(nt,Rr)|0,ke=ke+Math.imul(nt,pi)|0,de=de+Math.imul(ye,ni)|0,te=te+Math.imul(ye,$i)|0,te=te+Math.imul(qe,ni)|0,ke=ke+Math.imul(qe,$i)|0,de=de+Math.imul(Me,si)|0,te=te+Math.imul(Me,Ai)|0,te=te+Math.imul(Ue,si)|0,ke=ke+Math.imul(Ue,Ai)|0;var gi=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(gi>>>26)|0,gi&=67108863,de=Math.imul(Yt,yr),te=Math.imul(Yt,Ut),te=te+Math.imul(cr,yr)|0,ke=Math.imul(cr,Ut),de=de+Math.imul(it,xe)|0,te=te+Math.imul(it,Oe)|0,te=te+Math.imul(et,xe)|0,ke=ke+Math.imul(et,Oe)|0,de=de+Math.imul(vt,Fe)|0,te=te+Math.imul(vt,ft)|0,te=te+Math.imul(Ye,Fe)|0,ke=ke+Math.imul(Ye,ft)|0,de=de+Math.imul(Te,fe)|0,te=te+Math.imul(Te,pe)|0,te=te+Math.imul(ot,fe)|0,ke=ke+Math.imul(ot,pe)|0,de=de+Math.imul(Dt,Pt)|0,te=te+Math.imul(Dt,zt)|0,te=te+Math.imul(Zt,Pt)|0,ke=ke+Math.imul(Zt,zt)|0,de=de+Math.imul(Ct,Gr)|0,te=te+Math.imul(Ct,Br)|0,te=te+Math.imul(wt,Gr)|0,ke=ke+Math.imul(wt,Br)|0,de=de+Math.imul(Nt,Rr)|0,te=te+Math.imul(Nt,pi)|0,te=te+Math.imul(at,Rr)|0,ke=ke+Math.imul(at,pi)|0,de=de+Math.imul(Je,ni)|0,te=te+Math.imul(Je,$i)|0,te=te+Math.imul(nt,ni)|0,ke=ke+Math.imul(nt,$i)|0,de=de+Math.imul(ye,si)|0,te=te+Math.imul(ye,Ai)|0,te=te+Math.imul(qe,si)|0,ke=ke+Math.imul(qe,Ai)|0,de=de+Math.imul(Me,Rt)|0,te=te+Math.imul(Me,yt)|0,te=te+Math.imul(Ue,Rt)|0,ke=ke+Math.imul(Ue,yt)|0;var ki=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(ki>>>26)|0,ki&=67108863,de=Math.imul(Yt,xe),te=Math.imul(Yt,Oe),te=te+Math.imul(cr,xe)|0,ke=Math.imul(cr,Oe),de=de+Math.imul(it,Fe)|0,te=te+Math.imul(it,ft)|0,te=te+Math.imul(et,Fe)|0,ke=ke+Math.imul(et,ft)|0,de=de+Math.imul(vt,fe)|0,te=te+Math.imul(vt,pe)|0,te=te+Math.imul(Ye,fe)|0,ke=ke+Math.imul(Ye,pe)|0,de=de+Math.imul(Te,Pt)|0,te=te+Math.imul(Te,zt)|0,te=te+Math.imul(ot,Pt)|0,ke=ke+Math.imul(ot,zt)|0,de=de+Math.imul(Dt,Gr)|0,te=te+Math.imul(Dt,Br)|0,te=te+Math.imul(Zt,Gr)|0,ke=ke+Math.imul(Zt,Br)|0,de=de+Math.imul(Ct,Rr)|0,te=te+Math.imul(Ct,pi)|0,te=te+Math.imul(wt,Rr)|0,ke=ke+Math.imul(wt,pi)|0,de=de+Math.imul(Nt,ni)|0,te=te+Math.imul(Nt,$i)|0,te=te+Math.imul(at,ni)|0,ke=ke+Math.imul(at,$i)|0,de=de+Math.imul(Je,si)|0,te=te+Math.imul(Je,Ai)|0,te=te+Math.imul(nt,si)|0,ke=ke+Math.imul(nt,Ai)|0,de=de+Math.imul(ye,Rt)|0,te=te+Math.imul(ye,yt)|0,te=te+Math.imul(qe,Rt)|0,ke=ke+Math.imul(qe,yt)|0;var Vi=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Vi>>>26)|0,Vi&=67108863,de=Math.imul(Yt,Fe),te=Math.imul(Yt,ft),te=te+Math.imul(cr,Fe)|0,ke=Math.imul(cr,ft),de=de+Math.imul(it,fe)|0,te=te+Math.imul(it,pe)|0,te=te+Math.imul(et,fe)|0,ke=ke+Math.imul(et,pe)|0,de=de+Math.imul(vt,Pt)|0,te=te+Math.imul(vt,zt)|0,te=te+Math.imul(Ye,Pt)|0,ke=ke+Math.imul(Ye,zt)|0,de=de+Math.imul(Te,Gr)|0,te=te+Math.imul(Te,Br)|0,te=te+Math.imul(ot,Gr)|0,ke=ke+Math.imul(ot,Br)|0,de=de+Math.imul(Dt,Rr)|0,te=te+Math.imul(Dt,pi)|0,te=te+Math.imul(Zt,Rr)|0,ke=ke+Math.imul(Zt,pi)|0,de=de+Math.imul(Ct,ni)|0,te=te+Math.imul(Ct,$i)|0,te=te+Math.imul(wt,ni)|0,ke=ke+Math.imul(wt,$i)|0,de=de+Math.imul(Nt,si)|0,te=te+Math.imul(Nt,Ai)|0,te=te+Math.imul(at,si)|0,ke=ke+Math.imul(at,Ai)|0,de=de+Math.imul(Je,Rt)|0,te=te+Math.imul(Je,yt)|0,te=te+Math.imul(nt,Rt)|0,ke=ke+Math.imul(nt,yt)|0;var ti=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(ti>>>26)|0,ti&=67108863,de=Math.imul(Yt,fe),te=Math.imul(Yt,pe),te=te+Math.imul(cr,fe)|0,ke=Math.imul(cr,pe),de=de+Math.imul(it,Pt)|0,te=te+Math.imul(it,zt)|0,te=te+Math.imul(et,Pt)|0,ke=ke+Math.imul(et,zt)|0,de=de+Math.imul(vt,Gr)|0,te=te+Math.imul(vt,Br)|0,te=te+Math.imul(Ye,Gr)|0,ke=ke+Math.imul(Ye,Br)|0,de=de+Math.imul(Te,Rr)|0,te=te+Math.imul(Te,pi)|0,te=te+Math.imul(ot,Rr)|0,ke=ke+Math.imul(ot,pi)|0,de=de+Math.imul(Dt,ni)|0,te=te+Math.imul(Dt,$i)|0,te=te+Math.imul(Zt,ni)|0,ke=ke+Math.imul(Zt,$i)|0,de=de+Math.imul(Ct,si)|0,te=te+Math.imul(Ct,Ai)|0,te=te+Math.imul(wt,si)|0,ke=ke+Math.imul(wt,Ai)|0,de=de+Math.imul(Nt,Rt)|0,te=te+Math.imul(Nt,yt)|0,te=te+Math.imul(at,Rt)|0,ke=ke+Math.imul(at,yt)|0;var tn=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(tn>>>26)|0,tn&=67108863,de=Math.imul(Yt,Pt),te=Math.imul(Yt,zt),te=te+Math.imul(cr,Pt)|0,ke=Math.imul(cr,zt),de=de+Math.imul(it,Gr)|0,te=te+Math.imul(it,Br)|0,te=te+Math.imul(et,Gr)|0,ke=ke+Math.imul(et,Br)|0,de=de+Math.imul(vt,Rr)|0,te=te+Math.imul(vt,pi)|0,te=te+Math.imul(Ye,Rr)|0,ke=ke+Math.imul(Ye,pi)|0,de=de+Math.imul(Te,ni)|0,te=te+Math.imul(Te,$i)|0,te=te+Math.imul(ot,ni)|0,ke=ke+Math.imul(ot,$i)|0,de=de+Math.imul(Dt,si)|0,te=te+Math.imul(Dt,Ai)|0,te=te+Math.imul(Zt,si)|0,ke=ke+Math.imul(Zt,Ai)|0,de=de+Math.imul(Ct,Rt)|0,te=te+Math.imul(Ct,yt)|0,te=te+Math.imul(wt,Rt)|0,ke=ke+Math.imul(wt,yt)|0;var Yr=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Yr>>>26)|0,Yr&=67108863,de=Math.imul(Yt,Gr),te=Math.imul(Yt,Br),te=te+Math.imul(cr,Gr)|0,ke=Math.imul(cr,Br),de=de+Math.imul(it,Rr)|0,te=te+Math.imul(it,pi)|0,te=te+Math.imul(et,Rr)|0,ke=ke+Math.imul(et,pi)|0,de=de+Math.imul(vt,ni)|0,te=te+Math.imul(vt,$i)|0,te=te+Math.imul(Ye,ni)|0,ke=ke+Math.imul(Ye,$i)|0,de=de+Math.imul(Te,si)|0,te=te+Math.imul(Te,Ai)|0,te=te+Math.imul(ot,si)|0,ke=ke+Math.imul(ot,Ai)|0,de=de+Math.imul(Dt,Rt)|0,te=te+Math.imul(Dt,yt)|0,te=te+Math.imul(Zt,Rt)|0,ke=ke+Math.imul(Zt,yt)|0;var oi=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(oi>>>26)|0,oi&=67108863,de=Math.imul(Yt,Rr),te=Math.imul(Yt,pi),te=te+Math.imul(cr,Rr)|0,ke=Math.imul(cr,pi),de=de+Math.imul(it,ni)|0,te=te+Math.imul(it,$i)|0,te=te+Math.imul(et,ni)|0,ke=ke+Math.imul(et,$i)|0,de=de+Math.imul(vt,si)|0,te=te+Math.imul(vt,Ai)|0,te=te+Math.imul(Ye,si)|0,ke=ke+Math.imul(Ye,Ai)|0,de=de+Math.imul(Te,Rt)|0,te=te+Math.imul(Te,yt)|0,te=te+Math.imul(ot,Rt)|0,ke=ke+Math.imul(ot,yt)|0;var Fi=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Fi>>>26)|0,Fi&=67108863,de=Math.imul(Yt,ni),te=Math.imul(Yt,$i),te=te+Math.imul(cr,ni)|0,ke=Math.imul(cr,$i),de=de+Math.imul(it,si)|0,te=te+Math.imul(it,Ai)|0,te=te+Math.imul(et,si)|0,ke=ke+Math.imul(et,Ai)|0,de=de+Math.imul(vt,Rt)|0,te=te+Math.imul(vt,yt)|0,te=te+Math.imul(Ye,Rt)|0,ke=ke+Math.imul(Ye,yt)|0;var an=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(an>>>26)|0,an&=67108863,de=Math.imul(Yt,si),te=Math.imul(Yt,Ai),te=te+Math.imul(cr,si)|0,ke=Math.imul(cr,Ai),de=de+Math.imul(it,Rt)|0,te=te+Math.imul(it,yt)|0,te=te+Math.imul(et,Rt)|0,ke=ke+Math.imul(et,yt)|0;var nn=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(nn>>>26)|0,nn&=67108863,de=Math.imul(Yt,Rt),te=Math.imul(Yt,yt),te=te+Math.imul(cr,Rt)|0,ke=Math.imul(cr,yt);var Ri=(Ce+de|0)+((te&8191)<<13)|0;return Ce=(ke+(te>>>13)|0)+(Ri>>>26)|0,Ri&=67108863,ze[0]=Gt,ze[1]=Wt,ze[2]=xr,ze[3]=Lr,ze[4]=Nr,ze[5]=Or,ze[6]=Hr,ze[7]=jr,ze[8]=gi,ze[9]=ki,ze[10]=Vi,ze[11]=ti,ze[12]=tn,ze[13]=Yr,ze[14]=oi,ze[15]=Fi,ze[16]=an,ze[17]=nn,ze[18]=Ri,Ce!==0&&(ze[19]=Ce,re.length++),re};Math.imul||(L=A);function x(H,N,W){W.negative=N.negative^H.negative,W.length=H.length+N.length;for(var re=0,ae=0,be=0;be>>26)|0,ae+=ze>>>26,ze&=67108863}W.words[be]=Ce,re=ze,ze=ae}return re!==0?W.words[be]=re:W.length--,W.strip()}function C(H,N,W){var re=new M;return re.mulp(H,N,W)}c.prototype.mulTo=function(N,W){var re,ae=this.length+N.length;return this.length===10&&N.length===10?re=L(this,N,W):ae<63?re=A(this,N,W):ae<1024?re=x(this,N,W):re=C(this,N,W),re};function M(H,N){this.x=H,this.y=N}M.prototype.makeRBT=function(N){for(var W=new Array(N),re=c.prototype._countBits(N)-1,ae=0;ae>=1;return ae},M.prototype.permute=function(N,W,re,ae,be,ze){for(var Ce=0;Ce>>1)be++;return 1<>>13,re[2*ze+1]=be&8191,be=be>>>13;for(ze=2*W;ze>=26,W+=ae/67108864|0,W+=be>>>26,this.words[re]=be&67108863}return W!==0&&(this.words[re]=W,this.length++),this},c.prototype.muln=function(N){return this.clone().imuln(N)},c.prototype.sqr=function(){return this.mul(this)},c.prototype.isqr=function(){return this.imul(this.clone())},c.prototype.pow=function(N){var W=E(N);if(W.length===0)return new c(1);for(var re=this,ae=0;ae=0);var W=N%26,re=(N-W)/26,ae=67108863>>>26-W<<26-W,be;if(W!==0){var ze=0;for(be=0;be>>26-W}ze&&(this.words[be]=ze,this.length++)}if(re!==0){for(be=this.length-1;be>=0;be--)this.words[be+re]=this.words[be];for(be=0;be=0);var ae;W?ae=(W-W%26)/26:ae=0;var be=N%26,ze=Math.min((N-be)/26,this.length),Ce=67108863^67108863>>>be<ze)for(this.length-=ze,te=0;te=0&&(ke!==0||te>=ae);te--){var Ee=this.words[te]|0;this.words[te]=ke<<26-be|Ee>>>be,ke=Ee&Ce}return de&&ke!==0&&(de.words[de.length++]=ke),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},c.prototype.ishrn=function(N,W,re){return l(this.negative===0),this.iushrn(N,W,re)},c.prototype.shln=function(N){return this.clone().ishln(N)},c.prototype.ushln=function(N){return this.clone().iushln(N)},c.prototype.shrn=function(N){return this.clone().ishrn(N)},c.prototype.ushrn=function(N){return this.clone().iushrn(N)},c.prototype.testn=function(N){l(typeof N=="number"&&N>=0);var W=N%26,re=(N-W)/26,ae=1<=0);var W=N%26,re=(N-W)/26;if(l(this.negative===0,"imaskn works only with positive numbers"),this.length<=re)return this;if(W!==0&&re++,this.length=Math.min(re,this.length),W!==0){var ae=67108863^67108863>>>W<=67108864;W++)this.words[W]-=67108864,W===this.length-1?this.words[W+1]=1:this.words[W+1]++;return this.length=Math.max(this.length,W+1),this},c.prototype.isubn=function(N){if(l(typeof N=="number"),l(N<67108864),N<0)return this.iaddn(-N);if(this.negative!==0)return this.negative=0,this.iaddn(N),this.negative=1,this;if(this.words[0]-=N,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var W=0;W>26)-(de/67108864|0),this.words[be+re]=ze&67108863}for(;be>26,this.words[be+re]=ze&67108863;if(Ce===0)return this.strip();for(l(Ce===-1),Ce=0,be=0;be>26,this.words[be]=ze&67108863;return this.negative=1,this.strip()},c.prototype._wordDiv=function(N,W){var re=this.length-N.length,ae=this.clone(),be=N,ze=be.words[be.length-1]|0,Ce=this._countBits(ze);re=26-Ce,re!==0&&(be=be.ushln(re),ae.iushln(re),ze=be.words[be.length-1]|0);var de=ae.length-be.length,te;if(W!=="mod"){te=new c(null),te.length=de+1,te.words=new Array(te.length);for(var ke=0;ke=0;Me--){var Ue=(ae.words[be.length+Me]|0)*67108864+(ae.words[be.length+Me-1]|0);for(Ue=Math.min(Ue/ze|0,67108863),ae._ishlnsubmul(be,Ue,Me);ae.negative!==0;)Ue--,ae.negative=0,ae._ishlnsubmul(be,1,Me),ae.isZero()||(ae.negative^=1);te&&(te.words[Me]=Ue)}return te&&te.strip(),ae.strip(),W!=="div"&&re!==0&&ae.iushrn(re),{div:te||null,mod:ae}},c.prototype.divmod=function(N,W,re){if(l(!N.isZero()),this.isZero())return{div:new c(0),mod:new c(0)};var ae,be,ze;return this.negative!==0&&N.negative===0?(ze=this.neg().divmod(N,W),W!=="mod"&&(ae=ze.div.neg()),W!=="div"&&(be=ze.mod.neg(),re&&be.negative!==0&&be.iadd(N)),{div:ae,mod:be}):this.negative===0&&N.negative!==0?(ze=this.divmod(N.neg(),W),W!=="mod"&&(ae=ze.div.neg()),{div:ae,mod:ze.mod}):(this.negative&N.negative)!==0?(ze=this.neg().divmod(N.neg(),W),W!=="div"&&(be=ze.mod.neg(),re&&be.negative!==0&&be.isub(N)),{div:ze.div,mod:be}):N.length>this.length||this.cmp(N)<0?{div:new c(0),mod:this}:N.length===1?W==="div"?{div:this.divn(N.words[0]),mod:null}:W==="mod"?{div:null,mod:new c(this.modn(N.words[0]))}:{div:this.divn(N.words[0]),mod:new c(this.modn(N.words[0]))}:this._wordDiv(N,W)},c.prototype.div=function(N){return this.divmod(N,"div",!1).div},c.prototype.mod=function(N){return this.divmod(N,"mod",!1).mod},c.prototype.umod=function(N){return this.divmod(N,"mod",!0).mod},c.prototype.divRound=function(N){var W=this.divmod(N);if(W.mod.isZero())return W.div;var re=W.div.negative!==0?W.mod.isub(N):W.mod,ae=N.ushrn(1),be=N.andln(1),ze=re.cmp(ae);return ze<0||be===1&&ze===0?W.div:W.div.negative!==0?W.div.isubn(1):W.div.iaddn(1)},c.prototype.modn=function(N){l(N<=67108863);for(var W=(1<<26)%N,re=0,ae=this.length-1;ae>=0;ae--)re=(W*re+(this.words[ae]|0))%N;return re},c.prototype.idivn=function(N){l(N<=67108863);for(var W=0,re=this.length-1;re>=0;re--){var ae=(this.words[re]|0)+W*67108864;this.words[re]=ae/N|0,W=ae%N}return this.strip()},c.prototype.divn=function(N){return this.clone().idivn(N)},c.prototype.egcd=function(N){l(N.negative===0),l(!N.isZero());var W=this,re=N.clone();W.negative!==0?W=W.umod(N):W=W.clone();for(var ae=new c(1),be=new c(0),ze=new c(0),Ce=new c(1),de=0;W.isEven()&&re.isEven();)W.iushrn(1),re.iushrn(1),++de;for(var te=re.clone(),ke=W.clone();!W.isZero();){for(var Ee=0,Me=1;(W.words[0]&Me)===0&&Ee<26;++Ee,Me<<=1);if(Ee>0)for(W.iushrn(Ee);Ee-- >0;)(ae.isOdd()||be.isOdd())&&(ae.iadd(te),be.isub(ke)),ae.iushrn(1),be.iushrn(1);for(var Ue=0,De=1;(re.words[0]&De)===0&&Ue<26;++Ue,De<<=1);if(Ue>0)for(re.iushrn(Ue);Ue-- >0;)(ze.isOdd()||Ce.isOdd())&&(ze.iadd(te),Ce.isub(ke)),ze.iushrn(1),Ce.iushrn(1);W.cmp(re)>=0?(W.isub(re),ae.isub(ze),be.isub(Ce)):(re.isub(W),ze.isub(ae),Ce.isub(be))}return{a:ze,b:Ce,gcd:re.iushln(de)}},c.prototype._invmp=function(N){l(N.negative===0),l(!N.isZero());var W=this,re=N.clone();W.negative!==0?W=W.umod(N):W=W.clone();for(var ae=new c(1),be=new c(0),ze=re.clone();W.cmpn(1)>0&&re.cmpn(1)>0;){for(var Ce=0,de=1;(W.words[0]&de)===0&&Ce<26;++Ce,de<<=1);if(Ce>0)for(W.iushrn(Ce);Ce-- >0;)ae.isOdd()&&ae.iadd(ze),ae.iushrn(1);for(var te=0,ke=1;(re.words[0]&ke)===0&&te<26;++te,ke<<=1);if(te>0)for(re.iushrn(te);te-- >0;)be.isOdd()&&be.iadd(ze),be.iushrn(1);W.cmp(re)>=0?(W.isub(re),ae.isub(be)):(re.isub(W),be.isub(ae))}var Ee;return W.cmpn(1)===0?Ee=ae:Ee=be,Ee.cmpn(0)<0&&Ee.iadd(N),Ee},c.prototype.gcd=function(N){if(this.isZero())return N.abs();if(N.isZero())return this.abs();var W=this.clone(),re=N.clone();W.negative=0,re.negative=0;for(var ae=0;W.isEven()&&re.isEven();ae++)W.iushrn(1),re.iushrn(1);do{for(;W.isEven();)W.iushrn(1);for(;re.isEven();)re.iushrn(1);var be=W.cmp(re);if(be<0){var ze=W;W=re,re=ze}else if(be===0||re.cmpn(1)===0)break;W.isub(re)}while(!0);return re.iushln(ae)},c.prototype.invm=function(N){return this.egcd(N).a.umod(N)},c.prototype.isEven=function(){return(this.words[0]&1)===0},c.prototype.isOdd=function(){return(this.words[0]&1)===1},c.prototype.andln=function(N){return this.words[0]&N},c.prototype.bincn=function(N){l(typeof N=="number");var W=N%26,re=(N-W)/26,ae=1<>>26,Ce&=67108863,this.words[ze]=Ce}return be!==0&&(this.words[ze]=be,this.length++),this},c.prototype.isZero=function(){return this.length===1&&this.words[0]===0},c.prototype.cmpn=function(N){var W=N<0;if(this.negative!==0&&!W)return-1;if(this.negative===0&&W)return 1;this.strip();var re;if(this.length>1)re=1;else{W&&(N=-N),l(N<=67108863,"Number is too big");var ae=this.words[0]|0;re=ae===N?0:aeN.length)return 1;if(this.length=0;re--){var ae=this.words[re]|0,be=N.words[re]|0;if(ae!==be){aebe&&(W=1);break}}return W},c.prototype.gtn=function(N){return this.cmpn(N)===1},c.prototype.gt=function(N){return this.cmp(N)===1},c.prototype.gten=function(N){return this.cmpn(N)>=0},c.prototype.gte=function(N){return this.cmp(N)>=0},c.prototype.ltn=function(N){return this.cmpn(N)===-1},c.prototype.lt=function(N){return this.cmp(N)===-1},c.prototype.lten=function(N){return this.cmpn(N)<=0},c.prototype.lte=function(N){return this.cmp(N)<=0},c.prototype.eqn=function(N){return this.cmpn(N)===0},c.prototype.eq=function(N){return this.cmp(N)===0},c.red=function(N){return new G(N)},c.prototype.toRed=function(N){return l(!this.red,"Already a number in reduction context"),l(this.negative===0,"red works only with positives"),N.convertTo(this)._forceRed(N)},c.prototype.fromRed=function(){return l(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},c.prototype._forceRed=function(N){return this.red=N,this},c.prototype.forceRed=function(N){return l(!this.red,"Already a number in reduction context"),this._forceRed(N)},c.prototype.redAdd=function(N){return l(this.red,"redAdd works only with red numbers"),this.red.add(this,N)},c.prototype.redIAdd=function(N){return l(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,N)},c.prototype.redSub=function(N){return l(this.red,"redSub works only with red numbers"),this.red.sub(this,N)},c.prototype.redISub=function(N){return l(this.red,"redISub works only with red numbers"),this.red.isub(this,N)},c.prototype.redShl=function(N){return l(this.red,"redShl works only with red numbers"),this.red.shl(this,N)},c.prototype.redMul=function(N){return l(this.red,"redMul works only with red numbers"),this.red._verify2(this,N),this.red.mul(this,N)},c.prototype.redIMul=function(N){return l(this.red,"redMul works only with red numbers"),this.red._verify2(this,N),this.red.imul(this,N)},c.prototype.redSqr=function(){return l(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},c.prototype.redISqr=function(){return l(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},c.prototype.redSqrt=function(){return l(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},c.prototype.redInvm=function(){return l(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},c.prototype.redNeg=function(){return l(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},c.prototype.redPow=function(N){return l(this.red&&!N.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,N)};var m={k256:null,p224:null,p192:null,p25519:null};function P(H,N){this.name=H,this.p=new c(N,16),this.n=this.p.bitLength(),this.k=new c(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}P.prototype._tmp=function(){var N=new c(null);return N.words=new Array(Math.ceil(this.n/13)),N},P.prototype.ireduce=function(N){var W=N,re;do this.split(W,this.tmp),W=this.imulK(W),W=W.iadd(this.tmp),re=W.bitLength();while(re>this.n);var ae=re0?W.isub(this.p):W.strip!==void 0?W.strip():W._strip(),W},P.prototype.split=function(N,W){N.iushrn(this.n,0,W)},P.prototype.imulK=function(N){return N.imul(this.k)};function T(){P.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}f(T,P),T.prototype.split=function(N,W){for(var re=4194303,ae=Math.min(N.length,9),be=0;be>>22,ze=Ce}ze>>>=22,N.words[be-10]=ze,ze===0&&N.length>10?N.length-=10:N.length-=9},T.prototype.imulK=function(N){N.words[N.length]=0,N.words[N.length+1]=0,N.length+=2;for(var W=0,re=0;re>>=26,N.words[re]=be,W=ae}return W!==0&&(N.words[N.length++]=W),N},c._prime=function(N){if(m[N])return m[N];var W;if(N==="k256")W=new T;else if(N==="p224")W=new B;else if(N==="p192")W=new F;else if(N==="p25519")W=new U;else throw new Error("Unknown prime "+N);return m[N]=W,W};function G(H){if(typeof H=="string"){var N=c._prime(H);this.m=N.p,this.prime=N}else l(H.gtn(1),"modulus must be greater than 1"),this.m=H,this.prime=null}G.prototype._verify1=function(N){l(N.negative===0,"red works only with positives"),l(N.red,"red works only with red numbers")},G.prototype._verify2=function(N,W){l((N.negative|W.negative)===0,"red works only with positives"),l(N.red&&N.red===W.red,"red works only with red numbers")},G.prototype.imod=function(N){return this.prime?this.prime.ireduce(N)._forceRed(this):N.umod(this.m)._forceRed(this)},G.prototype.neg=function(N){return N.isZero()?N.clone():this.m.sub(N)._forceRed(this)},G.prototype.add=function(N,W){this._verify2(N,W);var re=N.add(W);return re.cmp(this.m)>=0&&re.isub(this.m),re._forceRed(this)},G.prototype.iadd=function(N,W){this._verify2(N,W);var re=N.iadd(W);return re.cmp(this.m)>=0&&re.isub(this.m),re},G.prototype.sub=function(N,W){this._verify2(N,W);var re=N.sub(W);return re.cmpn(0)<0&&re.iadd(this.m),re._forceRed(this)},G.prototype.isub=function(N,W){this._verify2(N,W);var re=N.isub(W);return re.cmpn(0)<0&&re.iadd(this.m),re},G.prototype.shl=function(N,W){return this._verify1(N),this.imod(N.ushln(W))},G.prototype.imul=function(N,W){return this._verify2(N,W),this.imod(N.imul(W))},G.prototype.mul=function(N,W){return this._verify2(N,W),this.imod(N.mul(W))},G.prototype.isqr=function(N){return this.imul(N,N.clone())},G.prototype.sqr=function(N){return this.mul(N,N)},G.prototype.sqrt=function(N){if(N.isZero())return N.clone();var W=this.m.andln(3);if(l(W%2===1),W===3){var re=this.m.add(new c(1)).iushrn(2);return this.pow(N,re)}for(var ae=this.m.subn(1),be=0;!ae.isZero()&&ae.andln(1)===0;)be++,ae.iushrn(1);l(!ae.isZero());var ze=new c(1).toRed(this),Ce=ze.redNeg(),de=this.m.subn(1).iushrn(1),te=this.m.bitLength();for(te=new c(2*te*te).toRed(this);this.pow(te,de).cmp(Ce)!==0;)te.redIAdd(Ce);for(var ke=this.pow(te,ae),Ee=this.pow(N,ae.addn(1).iushrn(1)),Me=this.pow(N,ae),Ue=be;Me.cmp(ze)!==0;){for(var De=Me,ye=0;De.cmp(ze)!==0;ye++)De=De.redSqr();l(ye=0;be--){for(var ke=W.words[be],Ee=te-1;Ee>=0;Ee--){var Me=ke>>Ee&1;if(ze!==ae[0]&&(ze=this.sqr(ze)),Me===0&&Ce===0){de=0;continue}Ce<<=1,Ce|=Me,de++,!(de!==re&&(be!==0||Ee!==0))&&(ze=this.mul(ze,ae[Ce]),de=0,Ce=0)}te=26}return ze},G.prototype.convertTo=function(N){var W=N.umod(this.m);return W===N?W.clone():W},G.prototype.convertFrom=function(N){var W=N.clone();return W.red=null,W},c.mont=function(N){return new j(N)};function j(H){G.call(this,H),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new c(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}f(j,G),j.prototype.convertTo=function(N){return this.imod(N.ushln(this.shift))},j.prototype.convertFrom=function(N){var W=this.imod(N.mul(this.rinv));return W.red=null,W},j.prototype.imul=function(N,W){if(N.isZero()||W.isZero())return N.words[0]=0,N.length=1,N;var re=N.imul(W),ae=re.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),be=re.isub(ae).iushrn(this.shift),ze=be;return be.cmp(this.m)>=0?ze=be.isub(this.m):be.cmpn(0)<0&&(ze=be.iadd(this.m)),ze._forceRed(this)},j.prototype.mul=function(N,W){if(N.isZero()||W.isZero())return new c(0)._forceRed(this);var re=N.mul(W),ae=re.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),be=re.isub(ae).iushrn(this.shift),ze=be;return be.cmp(this.m)>=0?ze=be.isub(this.m):be.cmpn(0)<0&&(ze=be.iadd(this.m)),ze._forceRed(this)},j.prototype.invm=function(N){var W=this.imod(N._invmp(this.m).mul(this.r2));return W._forceRed(this)}}(i,this)},6860:function(i){i.exports=a;function a(o,s,u){return o[0]=s[0]-u[0],o[1]=s[1]-u[1],o[2]=s[2]-u[2],o[3]=s[3]-u[3],o}},6864:function(i){i.exports=a;function a(){var o=new Float32Array(16);return o[0]=1,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=1,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=1,o[11]=0,o[12]=0,o[13]=0,o[14]=0,o[15]=1,o}},6867:function(i,a,o){"use strict";i.exports=v;var s=o(1888),u=o(855),l=o(7150);function f(k,E){for(var A=0;A>>1;if(!(M<=0)){var m,P=s.mallocDouble(2*M*x),T=s.mallocInt32(x);if(x=c(k,M,P,T),x>0){if(M===1&&L)u.init(x),m=u.sweepComplete(M,A,0,x,P,T,0,x,P,T);else{var B=s.mallocDouble(2*M*C),F=s.mallocInt32(C);C=c(E,M,B,F),C>0&&(u.init(x+C),M===1?m=u.sweepBipartite(M,A,0,x,P,T,0,C,B,F):m=l(M,A,L,x,P,T,C,B,F),s.free(B),s.free(F))}s.free(P),s.free(T)}return m}}}var d;function p(k,E){d.push([k,E])}function _(k){return d=[],h(k,k,p,!0),d}function b(k,E){return d=[],h(k,E,p,!1),d}function v(k,E,A){switch(arguments.length){case 1:return _(k);case 2:return typeof E=="function"?h(k,k,E,!0):b(k,E);case 3:return h(k,E,A,!1);default:throw new Error("box-intersect: Invalid arguments")}}},6894:function(i){i.exports=a;function a(o,s,u,l){var f=u[1],c=u[2],h=s[1]-f,d=s[2]-c,p=Math.sin(l),_=Math.cos(l);return o[0]=s[0],o[1]=f+h*_-d*p,o[2]=c+h*p+d*_,o}},7004:function(i){"use strict";i.exports=a;function a(o){for(var s=o.length,u=o[o.length-1],l=s,f=s-2;f>=0;--f){var c=u,h=o[f];u=c+h;var d=u-c,p=h-d;p&&(o[--l]=u,u=p)}for(var _=0,f=l;f=p0)&&!(p1>=hi)"),E=p("lo===p0"),A=p("lo0;){ke-=1;var Ue=ke*M,De=T[Ue],ye=T[Ue+1],qe=T[Ue+2],ce=T[Ue+3],Je=T[Ue+4],nt=T[Ue+5],gt=ke*m,Nt=B[gt],at=B[gt+1],Ke=nt&1,Ct=!!(nt&16),wt=be,St=ze,Dt=de,Zt=te;if(Ke&&(wt=de,St=te,Dt=be,Zt=ze),!(nt&2&&(qe=A(N,De,ye,qe,wt,St,at),ye>=qe))&&!(nt&4&&(ye=L(N,De,ye,qe,wt,St,Nt),ye>=qe))){var Et=qe-ye,Te=Je-ce;if(Ct){if(N*Et*(Et+Te)de&&ke>0){var Ee=(te[ke][0]-de)/(te[ke][0]-te[ke-1][0]);return te[ke][1]*(1-Ee)+Ee*te[ke-1][1]}}return 1}function j(de,te){for(var ke=v({colormap:de,nshades:256,format:"rgba"}),Ee=new Uint8Array(256*4),Me=0;Me<256;++Me){for(var Ue=ke[Me],De=0;De<3;++De)Ee[4*Me+De]=Ue[De];te?Ee[4*Me+3]=255*G(Me/255,te):Ee[4*Me+3]=255*Ue[3]}return b(Ee,[256,256,4],[4,0,1])}function H(de){for(var te=de.length,ke=new Array(te),Ee=0;Ee0){var gt=this.triShader;gt.bind(),gt.uniforms=ye,this.triangleVAO.bind(),te.drawArrays(te.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var gt=this.lineShader;gt.bind(),gt.uniforms=ye,this.edgeVAO.bind(),te.lineWidth(this.lineWidth*this.pixelRatio),te.drawArrays(te.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()}if(this.pointCount>0){var gt=this.pointShader;gt.bind(),gt.uniforms=ye,this.pointVAO.bind(),te.drawArrays(te.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var gt=this.contourShader;gt.bind(),gt.uniforms=ye,this.contourVAO.bind(),te.drawArrays(te.LINES,0,this.contourCount),this.contourVAO.unbind()}},U.drawPick=function(de){de=de||{};for(var te=this.gl,ke=de.model||B,Ee=de.view||B,Me=de.projection||B,Ue=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],De=0;De<3;++De)Ue[0][De]=Math.max(Ue[0][De],this.clipBounds[0][De]),Ue[1][De]=Math.min(Ue[1][De],this.clipBounds[1][De]);this._model=[].slice.call(ke),this._view=[].slice.call(Ee),this._projection=[].slice.call(Me),this._resolution=[te.drawingBufferWidth,te.drawingBufferHeight];var ye={model:ke,view:Ee,projection:Me,clipBounds:Ue,pickId:this.pickId/255},qe=this.pickShader;if(qe.bind(),qe.uniforms=ye,this.triangleCount>0&&(this.triangleVAO.bind(),te.drawArrays(te.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),te.lineWidth(this.lineWidth*this.pixelRatio),te.drawArrays(te.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var qe=this.pointPickShader;qe.bind(),qe.uniforms=ye,this.pointVAO.bind(),te.drawArrays(te.POINTS,0,this.pointCount),this.pointVAO.unbind()}},U.pick=function(de){if(!de||de.id!==this.pickId)return null;for(var te=de.value[0]+256*de.value[1]+65536*de.value[2],ke=this.cells[te],Ee=this.positions,Me=new Array(ke.length),Ue=0;UeMath.max(x,C)?M[2]=1:x>Math.max(L,C)?M[0]=1:M[1]=1;for(var m=0,P=0,T=0;T<3;++T)m+=A[T]*A[T],P+=M[T]*A[T];for(var T=0;T<3;++T)M[T]-=P/m*A[T];return c(M,M),M}function b(A,L,x,C,M,m,P,T){this.center=s(x),this.up=s(C),this.right=s(M),this.radius=s([m]),this.angle=s([P,T]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(A,L),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var B=0;B<16;++B)this.computedMatrix[B]=.5;this.recalcMatrix(0)}var v=b.prototype;v.setDistanceLimits=function(A,L){A>0?A=Math.log(A):A=-1/0,L>0?L=Math.log(L):L=1/0,L=Math.max(L,A),this.radius.bounds[0][0]=A,this.radius.bounds[1][0]=L},v.getDistanceLimits=function(A){var L=this.radius.bounds[0];return A?(A[0]=Math.exp(L[0][0]),A[1]=Math.exp(L[1][0]),A):[Math.exp(L[0][0]),Math.exp(L[1][0])]},v.recalcMatrix=function(A){this.center.curve(A),this.up.curve(A),this.right.curve(A),this.radius.curve(A),this.angle.curve(A);for(var L=this.computedUp,x=this.computedRight,C=0,M=0,m=0;m<3;++m)M+=L[m]*x[m],C+=L[m]*L[m];for(var P=Math.sqrt(C),T=0,m=0;m<3;++m)x[m]-=L[m]*M/C,T+=x[m]*x[m],L[m]/=P;for(var B=Math.sqrt(T),m=0;m<3;++m)x[m]/=B;var F=this.computedToward;f(F,L,x),c(F,F);for(var U=Math.exp(this.computedRadius[0]),G=this.computedAngle[0],j=this.computedAngle[1],H=Math.cos(G),N=Math.sin(G),W=Math.cos(j),re=Math.sin(j),ae=this.computedCenter,be=H*W,ze=N*W,Ce=re,de=-H*re,te=-N*re,ke=W,Ee=this.computedEye,Me=this.computedMatrix,m=0;m<3;++m){var Ue=be*x[m]+ze*F[m]+Ce*L[m];Me[4*m+1]=de*x[m]+te*F[m]+ke*L[m],Me[4*m+2]=Ue,Me[4*m+3]=0}var De=Me[1],ye=Me[5],qe=Me[9],ce=Me[2],Je=Me[6],nt=Me[10],gt=ye*nt-qe*Je,Nt=qe*ce-De*nt,at=De*Je-ye*ce,Ke=d(gt,Nt,at);gt/=Ke,Nt/=Ke,at/=Ke,Me[0]=gt,Me[4]=Nt,Me[8]=at;for(var m=0;m<3;++m)Ee[m]=ae[m]+Me[2+4*m]*U;for(var m=0;m<3;++m){for(var T=0,Ct=0;Ct<3;++Ct)T+=Me[m+4*Ct]*Ee[Ct];Me[12+m]=-T}Me[15]=1},v.getMatrix=function(A,L){this.recalcMatrix(A);var x=this.computedMatrix;if(L){for(var C=0;C<16;++C)L[C]=x[C];return L}return x};var k=[0,0,0];v.rotate=function(A,L,x,C){if(this.angle.move(A,L,x),C){this.recalcMatrix(A);var M=this.computedMatrix;k[0]=M[2],k[1]=M[6],k[2]=M[10];for(var m=this.computedUp,P=this.computedRight,T=this.computedToward,B=0;B<3;++B)M[4*B]=m[B],M[4*B+1]=P[B],M[4*B+2]=T[B];l(M,M,C,k);for(var B=0;B<3;++B)m[B]=M[4*B],P[B]=M[4*B+1];this.up.set(A,m[0],m[1],m[2]),this.right.set(A,P[0],P[1],P[2])}},v.pan=function(A,L,x,C){L=L||0,x=x||0,C=C||0,this.recalcMatrix(A);var M=this.computedMatrix,m=Math.exp(this.computedRadius[0]),P=M[1],T=M[5],B=M[9],F=d(P,T,B);P/=F,T/=F,B/=F;var U=M[0],G=M[4],j=M[8],H=U*P+G*T+j*B;U-=P*H,G-=T*H,j-=B*H;var N=d(U,G,j);U/=N,G/=N,j/=N;var W=U*L+P*x,re=G*L+T*x,ae=j*L+B*x;this.center.move(A,W,re,ae);var be=Math.exp(this.computedRadius[0]);be=Math.max(1e-4,be+C),this.radius.set(A,Math.log(be))},v.translate=function(A,L,x,C){this.center.move(A,L||0,x||0,C||0)},v.setMatrix=function(A,L,x,C){var M=1;typeof x=="number"&&(M=x|0),(M<0||M>3)&&(M=1);var m=(M+2)%3,P=(M+1)%3;L||(this.recalcMatrix(A),L=this.computedMatrix);var T=L[M],B=L[M+4],F=L[M+8];if(C){var G=Math.abs(T),j=Math.abs(B),H=Math.abs(F),N=Math.max(G,j,H);G===N?(T=T<0?-1:1,B=F=0):H===N?(F=F<0?-1:1,T=B=0):(B=B<0?-1:1,T=F=0)}else{var U=d(T,B,F);T/=U,B/=U,F/=U}var W=L[m],re=L[m+4],ae=L[m+8],be=W*T+re*B+ae*F;W-=T*be,re-=B*be,ae-=F*be;var ze=d(W,re,ae);W/=ze,re/=ze,ae/=ze;var Ce=B*ae-F*re,de=F*W-T*ae,te=T*re-B*W,ke=d(Ce,de,te);Ce/=ke,de/=ke,te/=ke,this.center.jump(A,Et,Te,ot),this.radius.idle(A),this.up.jump(A,T,B,F),this.right.jump(A,W,re,ae);var Ee,Me;if(M===2){var Ue=L[1],De=L[5],ye=L[9],qe=Ue*W+De*re+ye*ae,ce=Ue*Ce+De*de+ye*te;Nt<0?Ee=-Math.PI/2:Ee=Math.PI/2,Me=Math.atan2(ce,qe)}else{var Je=L[2],nt=L[6],gt=L[10],Nt=Je*T+nt*B+gt*F,at=Je*W+nt*re+gt*ae,Ke=Je*Ce+nt*de+gt*te;Ee=Math.asin(p(Nt)),Me=Math.atan2(Ke,at)}this.angle.jump(A,Me,Ee),this.recalcMatrix(A);var Ct=L[2],wt=L[6],St=L[10],Dt=this.computedMatrix;u(Dt,L);var Zt=Dt[15],Et=Dt[12]/Zt,Te=Dt[13]/Zt,ot=Dt[14]/Zt,Tt=Math.exp(this.computedRadius[0]);this.center.jump(A,Et-Ct*Tt,Te-wt*Tt,ot-St*Tt)},v.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},v.idle=function(A){this.center.idle(A),this.up.idle(A),this.right.idle(A),this.radius.idle(A),this.angle.idle(A)},v.flush=function(A){this.center.flush(A),this.up.flush(A),this.right.flush(A),this.radius.flush(A),this.angle.flush(A)},v.setDistance=function(A,L){L>0&&this.radius.set(A,Math.log(L))},v.lookAt=function(A,L,x,C){this.recalcMatrix(A),L=L||this.computedEye,x=x||this.computedCenter,C=C||this.computedUp;var M=C[0],m=C[1],P=C[2],T=d(M,m,P);if(!(T<1e-6)){M/=T,m/=T,P/=T;var B=L[0]-x[0],F=L[1]-x[1],U=L[2]-x[2],G=d(B,F,U);if(!(G<1e-6)){B/=G,F/=G,U/=G;var j=this.computedRight,H=j[0],N=j[1],W=j[2],re=M*H+m*N+P*W;H-=re*M,N-=re*m,W-=re*P;var ae=d(H,N,W);if(!(ae<.01&&(H=m*U-P*F,N=P*B-M*U,W=M*F-m*B,ae=d(H,N,W),ae<1e-6))){H/=ae,N/=ae,W/=ae,this.up.set(A,M,m,P),this.right.set(A,H,N,W),this.center.set(A,x[0],x[1],x[2]),this.radius.set(A,Math.log(G));var be=m*W-P*N,ze=P*H-M*W,Ce=M*N-m*H,de=d(be,ze,Ce);be/=de,ze/=de,Ce/=de;var te=M*B+m*F+P*U,ke=H*B+N*F+W*U,Ee=be*B+ze*F+Ce*U,Me=Math.asin(p(te)),Ue=Math.atan2(Ee,ke),De=this.angle._state,ye=De[De.length-1],qe=De[De.length-2];ye=ye%(2*Math.PI);var ce=Math.abs(ye+2*Math.PI-Ue),Je=Math.abs(ye-Ue),nt=Math.abs(ye-2*Math.PI-Ue);ce>1,j=d(P[G],T);j<=0?(j===0&&(U=G),B=G+1):j>0&&(F=G-1)}return U}s=v;function k(P,T){for(var B=new Array(P.length),F=0,U=B.length;F=P.length||d(P[ze],G)!==0););}return B}s=k;function E(P,T){if(!T)return k(b(L(P,0)),P,0);for(var B=new Array(T),F=0;F>>H&1&&N.push(U[H]);T.push(N)}return _(T)}s=A;function L(P,T){if(T<0)return[];for(var B=[],F=(1<0?N:H},c.min=function(N,H){return N.cmp(H)<0?N:H},c.prototype._init=function(N,H,re){if(typeof N=="number")return this._initNumber(N,H,re);if(typeof N=="object")return this._initArray(N,H,re);H==="hex"&&(H=16),l(H===(H|0)&&H>=2&&H<=36),N=N.toString().replace(/\s+/g,"");var ae=0;N[0]==="-"&&(ae++,this.negative=1),ae=0;ae-=3)ze=N[ae]|N[ae-1]<<8|N[ae-2]<<16,this.words[be]|=ze<>>26-Ce&67108863,Ce+=24,Ce>=26&&(Ce-=26,be++);else if(re==="le")for(ae=0,be=0;ae>>26-Ce&67108863,Ce+=24,Ce>=26&&(Ce-=26,be++);return this.strip()};function d(W,N){var H=W.charCodeAt(N);return H>=65&&H<=70?H-55:H>=97&&H<=102?H-87:H-48&15}function p(W,N,H){var re=d(W,H);return H-1>=N&&(re|=d(W,H-1)<<4),re}c.prototype._parseHex=function(N,H,re){this.length=Math.ceil((N.length-H)/6),this.words=new Array(this.length);for(var ae=0;ae=H;ae-=2)Ce=p(N,H,ae)<=18?(be-=18,ze+=1,this.words[ze]|=Ce>>>26):be+=8;else{var de=N.length-H;for(ae=de%2===0?H+1:H;ae=18?(be-=18,ze+=1,this.words[ze]|=Ce>>>26):be+=8}this.strip()};function _(W,N,H,re){for(var ae=0,be=Math.min(W.length,H),ze=N;ze=49?ae+=Ce-49+10:Ce>=17?ae+=Ce-17+10:ae+=Ce}return ae}c.prototype._parseBase=function(N,H,re){this.words=[0],this.length=1;for(var ae=0,be=1;be<=67108863;be*=H)ae++;ae--,be=be/H|0;for(var ze=N.length-re,Ce=ze%ae,de=Math.min(ze,ze-Ce)+re,te=0,ke=re;ke1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},c.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},c.prototype.inspect=function(){return(this.red?""};var b=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],v=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],k=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];c.prototype.toString=function(N,H){N=N||10,H=H|0||1;var re;if(N===16||N==="hex"){re="";for(var ae=0,be=0,ze=0;ze>>24-ae&16777215,be!==0||ze!==this.length-1?re=b[6-de.length]+de+re:re=de+re,ae+=2,ae>=26&&(ae-=26,ze--)}for(be!==0&&(re=be.toString(16)+re);re.length%H!==0;)re="0"+re;return this.negative!==0&&(re="-"+re),re}if(N===(N|0)&&N>=2&&N<=36){var te=v[N],ke=k[N];re="";var Ee=this.clone();for(Ee.negative=0;!Ee.isZero();){var Me=Ee.modn(ke).toString(N);Ee=Ee.idivn(ke),Ee.isZero()?re=Me+re:re=b[te-Me.length]+Me+re}for(this.isZero()&&(re="0"+re);re.length%H!==0;)re="0"+re;return this.negative!==0&&(re="-"+re),re}l(!1,"Base should be between 2 and 36")},c.prototype.toNumber=function(){var N=this.words[0];return this.length===2?N+=this.words[1]*67108864:this.length===3&&this.words[2]===1?N+=4503599627370496+this.words[1]*67108864:this.length>2&&l(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-N:N},c.prototype.toJSON=function(){return this.toString(16)},c.prototype.toBuffer=function(N,H){return l(typeof h!="undefined"),this.toArrayLike(h,N,H)},c.prototype.toArray=function(N,H){return this.toArrayLike(Array,N,H)},c.prototype.toArrayLike=function(N,H,re){var ae=this.byteLength(),be=re||Math.max(1,ae);l(ae<=be,"byte array longer than desired length"),l(be>0,"Requested array length <= 0"),this.strip();var ze=H==="le",Ce=new N(be),de,te,ke=this.clone();if(ze){for(te=0;!ke.isZero();te++)de=ke.andln(255),ke.iushrn(8),Ce[te]=de;for(;te=4096&&(re+=13,H>>>=13),H>=64&&(re+=7,H>>>=7),H>=8&&(re+=4,H>>>=4),H>=2&&(re+=2,H>>>=2),re+H},c.prototype._zeroBits=function(N){if(N===0)return 26;var H=N,re=0;return(H&8191)===0&&(re+=13,H>>>=13),(H&127)===0&&(re+=7,H>>>=7),(H&15)===0&&(re+=4,H>>>=4),(H&3)===0&&(re+=2,H>>>=2),(H&1)===0&&re++,re},c.prototype.bitLength=function(){var N=this.words[this.length-1],H=this._countBits(N);return(this.length-1)*26+H};function E(W){for(var N=new Array(W.bitLength()),H=0;H>>ae}return N}c.prototype.zeroBits=function(){if(this.isZero())return 0;for(var N=0,H=0;HN.length?this.clone().ior(N):N.clone().ior(this)},c.prototype.uor=function(N){return this.length>N.length?this.clone().iuor(N):N.clone().iuor(this)},c.prototype.iuand=function(N){var H;this.length>N.length?H=N:H=this;for(var re=0;reN.length?this.clone().iand(N):N.clone().iand(this)},c.prototype.uand=function(N){return this.length>N.length?this.clone().iuand(N):N.clone().iuand(this)},c.prototype.iuxor=function(N){var H,re;this.length>N.length?(H=this,re=N):(H=N,re=this);for(var ae=0;aeN.length?this.clone().ixor(N):N.clone().ixor(this)},c.prototype.uxor=function(N){return this.length>N.length?this.clone().iuxor(N):N.clone().iuxor(this)},c.prototype.inotn=function(N){l(typeof N=="number"&&N>=0);var H=Math.ceil(N/26)|0,re=N%26;this._expand(H),re>0&&H--;for(var ae=0;ae0&&(this.words[ae]=~this.words[ae]&67108863>>26-re),this.strip()},c.prototype.notn=function(N){return this.clone().inotn(N)},c.prototype.setn=function(N,H){l(typeof N=="number"&&N>=0);var re=N/26|0,ae=N%26;return this._expand(re+1),H?this.words[re]=this.words[re]|1<N.length?(re=this,ae=N):(re=N,ae=this);for(var be=0,ze=0;ze>>26;for(;be!==0&&ze>>26;if(this.length=re.length,be!==0)this.words[this.length]=be,this.length++;else if(re!==this)for(;zeN.length?this.clone().iadd(N):N.clone().iadd(this)},c.prototype.isub=function(N){if(N.negative!==0){N.negative=0;var H=this.iadd(N);return N.negative=1,H._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(N),this.negative=1,this._normSign();var re=this.cmp(N);if(re===0)return this.negative=0,this.length=1,this.words[0]=0,this;var ae,be;re>0?(ae=this,be=N):(ae=N,be=this);for(var ze=0,Ce=0;Ce>26,this.words[Ce]=H&67108863;for(;ze!==0&&Ce>26,this.words[Ce]=H&67108863;if(ze===0&&Ce>>26,Ee=de&67108863,Me=Math.min(te,N.length-1),Ue=Math.max(0,te-W.length+1);Ue<=Me;Ue++){var De=te-Ue|0;ae=W.words[De]|0,be=N.words[Ue]|0,ze=ae*be+Ee,ke+=ze/67108864|0,Ee=ze&67108863}H.words[te]=Ee|0,de=ke|0}return de!==0?H.words[te]=de|0:H.length--,H.strip()}var L=function(N,H,re){var ae=N.words,be=H.words,ze=re.words,Ce=0,de,te,ke,Ee=ae[0]|0,Me=Ee&8191,Ue=Ee>>>13,De=ae[1]|0,ye=De&8191,qe=De>>>13,ce=ae[2]|0,Je=ce&8191,nt=ce>>>13,gt=ae[3]|0,Nt=gt&8191,at=gt>>>13,Ke=ae[4]|0,Ct=Ke&8191,wt=Ke>>>13,St=ae[5]|0,Dt=St&8191,Zt=St>>>13,Et=ae[6]|0,Te=Et&8191,ot=Et>>>13,Tt=ae[7]|0,vt=Tt&8191,Ye=Tt>>>13,He=ae[8]|0,it=He&8191,et=He>>>13,It=ae[9]|0,Yt=It&8191,cr=It>>>13,_r=be[0]|0,yr=_r&8191,Ut=_r>>>13,Re=be[1]|0,xe=Re&8191,Oe=Re>>>13,Ie=be[2]|0,Fe=Ie&8191,ft=Ie>>>13,ge=be[3]|0,fe=ge&8191,pe=ge>>>13,dt=be[4]|0,Pt=dt&8191,zt=dt>>>13,rr=be[5]|0,Gr=rr&8191,Br=rr>>>13,Er=be[6]|0,Rr=Er&8191,pi=Er>>>13,Di=be[7]|0,ni=Di&8191,$i=Di>>>13,Qi=be[8]|0,si=Qi&8191,Ai=Qi>>>13,Ni=be[9]|0,Rt=Ni&8191,yt=Ni>>>13;re.negative=N.negative^H.negative,re.length=19,de=Math.imul(Me,yr),te=Math.imul(Me,Ut),te=te+Math.imul(Ue,yr)|0,ke=Math.imul(Ue,Ut);var Gt=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Gt>>>26)|0,Gt&=67108863,de=Math.imul(ye,yr),te=Math.imul(ye,Ut),te=te+Math.imul(qe,yr)|0,ke=Math.imul(qe,Ut),de=de+Math.imul(Me,xe)|0,te=te+Math.imul(Me,Oe)|0,te=te+Math.imul(Ue,xe)|0,ke=ke+Math.imul(Ue,Oe)|0;var Wt=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Wt>>>26)|0,Wt&=67108863,de=Math.imul(Je,yr),te=Math.imul(Je,Ut),te=te+Math.imul(nt,yr)|0,ke=Math.imul(nt,Ut),de=de+Math.imul(ye,xe)|0,te=te+Math.imul(ye,Oe)|0,te=te+Math.imul(qe,xe)|0,ke=ke+Math.imul(qe,Oe)|0,de=de+Math.imul(Me,Fe)|0,te=te+Math.imul(Me,ft)|0,te=te+Math.imul(Ue,Fe)|0,ke=ke+Math.imul(Ue,ft)|0;var xr=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(xr>>>26)|0,xr&=67108863,de=Math.imul(Nt,yr),te=Math.imul(Nt,Ut),te=te+Math.imul(at,yr)|0,ke=Math.imul(at,Ut),de=de+Math.imul(Je,xe)|0,te=te+Math.imul(Je,Oe)|0,te=te+Math.imul(nt,xe)|0,ke=ke+Math.imul(nt,Oe)|0,de=de+Math.imul(ye,Fe)|0,te=te+Math.imul(ye,ft)|0,te=te+Math.imul(qe,Fe)|0,ke=ke+Math.imul(qe,ft)|0,de=de+Math.imul(Me,fe)|0,te=te+Math.imul(Me,pe)|0,te=te+Math.imul(Ue,fe)|0,ke=ke+Math.imul(Ue,pe)|0;var Lr=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Lr>>>26)|0,Lr&=67108863,de=Math.imul(Ct,yr),te=Math.imul(Ct,Ut),te=te+Math.imul(wt,yr)|0,ke=Math.imul(wt,Ut),de=de+Math.imul(Nt,xe)|0,te=te+Math.imul(Nt,Oe)|0,te=te+Math.imul(at,xe)|0,ke=ke+Math.imul(at,Oe)|0,de=de+Math.imul(Je,Fe)|0,te=te+Math.imul(Je,ft)|0,te=te+Math.imul(nt,Fe)|0,ke=ke+Math.imul(nt,ft)|0,de=de+Math.imul(ye,fe)|0,te=te+Math.imul(ye,pe)|0,te=te+Math.imul(qe,fe)|0,ke=ke+Math.imul(qe,pe)|0,de=de+Math.imul(Me,Pt)|0,te=te+Math.imul(Me,zt)|0,te=te+Math.imul(Ue,Pt)|0,ke=ke+Math.imul(Ue,zt)|0;var Nr=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Nr>>>26)|0,Nr&=67108863,de=Math.imul(Dt,yr),te=Math.imul(Dt,Ut),te=te+Math.imul(Zt,yr)|0,ke=Math.imul(Zt,Ut),de=de+Math.imul(Ct,xe)|0,te=te+Math.imul(Ct,Oe)|0,te=te+Math.imul(wt,xe)|0,ke=ke+Math.imul(wt,Oe)|0,de=de+Math.imul(Nt,Fe)|0,te=te+Math.imul(Nt,ft)|0,te=te+Math.imul(at,Fe)|0,ke=ke+Math.imul(at,ft)|0,de=de+Math.imul(Je,fe)|0,te=te+Math.imul(Je,pe)|0,te=te+Math.imul(nt,fe)|0,ke=ke+Math.imul(nt,pe)|0,de=de+Math.imul(ye,Pt)|0,te=te+Math.imul(ye,zt)|0,te=te+Math.imul(qe,Pt)|0,ke=ke+Math.imul(qe,zt)|0,de=de+Math.imul(Me,Gr)|0,te=te+Math.imul(Me,Br)|0,te=te+Math.imul(Ue,Gr)|0,ke=ke+Math.imul(Ue,Br)|0;var Or=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Or>>>26)|0,Or&=67108863,de=Math.imul(Te,yr),te=Math.imul(Te,Ut),te=te+Math.imul(ot,yr)|0,ke=Math.imul(ot,Ut),de=de+Math.imul(Dt,xe)|0,te=te+Math.imul(Dt,Oe)|0,te=te+Math.imul(Zt,xe)|0,ke=ke+Math.imul(Zt,Oe)|0,de=de+Math.imul(Ct,Fe)|0,te=te+Math.imul(Ct,ft)|0,te=te+Math.imul(wt,Fe)|0,ke=ke+Math.imul(wt,ft)|0,de=de+Math.imul(Nt,fe)|0,te=te+Math.imul(Nt,pe)|0,te=te+Math.imul(at,fe)|0,ke=ke+Math.imul(at,pe)|0,de=de+Math.imul(Je,Pt)|0,te=te+Math.imul(Je,zt)|0,te=te+Math.imul(nt,Pt)|0,ke=ke+Math.imul(nt,zt)|0,de=de+Math.imul(ye,Gr)|0,te=te+Math.imul(ye,Br)|0,te=te+Math.imul(qe,Gr)|0,ke=ke+Math.imul(qe,Br)|0,de=de+Math.imul(Me,Rr)|0,te=te+Math.imul(Me,pi)|0,te=te+Math.imul(Ue,Rr)|0,ke=ke+Math.imul(Ue,pi)|0;var Hr=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Hr>>>26)|0,Hr&=67108863,de=Math.imul(vt,yr),te=Math.imul(vt,Ut),te=te+Math.imul(Ye,yr)|0,ke=Math.imul(Ye,Ut),de=de+Math.imul(Te,xe)|0,te=te+Math.imul(Te,Oe)|0,te=te+Math.imul(ot,xe)|0,ke=ke+Math.imul(ot,Oe)|0,de=de+Math.imul(Dt,Fe)|0,te=te+Math.imul(Dt,ft)|0,te=te+Math.imul(Zt,Fe)|0,ke=ke+Math.imul(Zt,ft)|0,de=de+Math.imul(Ct,fe)|0,te=te+Math.imul(Ct,pe)|0,te=te+Math.imul(wt,fe)|0,ke=ke+Math.imul(wt,pe)|0,de=de+Math.imul(Nt,Pt)|0,te=te+Math.imul(Nt,zt)|0,te=te+Math.imul(at,Pt)|0,ke=ke+Math.imul(at,zt)|0,de=de+Math.imul(Je,Gr)|0,te=te+Math.imul(Je,Br)|0,te=te+Math.imul(nt,Gr)|0,ke=ke+Math.imul(nt,Br)|0,de=de+Math.imul(ye,Rr)|0,te=te+Math.imul(ye,pi)|0,te=te+Math.imul(qe,Rr)|0,ke=ke+Math.imul(qe,pi)|0,de=de+Math.imul(Me,ni)|0,te=te+Math.imul(Me,$i)|0,te=te+Math.imul(Ue,ni)|0,ke=ke+Math.imul(Ue,$i)|0;var jr=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(jr>>>26)|0,jr&=67108863,de=Math.imul(it,yr),te=Math.imul(it,Ut),te=te+Math.imul(et,yr)|0,ke=Math.imul(et,Ut),de=de+Math.imul(vt,xe)|0,te=te+Math.imul(vt,Oe)|0,te=te+Math.imul(Ye,xe)|0,ke=ke+Math.imul(Ye,Oe)|0,de=de+Math.imul(Te,Fe)|0,te=te+Math.imul(Te,ft)|0,te=te+Math.imul(ot,Fe)|0,ke=ke+Math.imul(ot,ft)|0,de=de+Math.imul(Dt,fe)|0,te=te+Math.imul(Dt,pe)|0,te=te+Math.imul(Zt,fe)|0,ke=ke+Math.imul(Zt,pe)|0,de=de+Math.imul(Ct,Pt)|0,te=te+Math.imul(Ct,zt)|0,te=te+Math.imul(wt,Pt)|0,ke=ke+Math.imul(wt,zt)|0,de=de+Math.imul(Nt,Gr)|0,te=te+Math.imul(Nt,Br)|0,te=te+Math.imul(at,Gr)|0,ke=ke+Math.imul(at,Br)|0,de=de+Math.imul(Je,Rr)|0,te=te+Math.imul(Je,pi)|0,te=te+Math.imul(nt,Rr)|0,ke=ke+Math.imul(nt,pi)|0,de=de+Math.imul(ye,ni)|0,te=te+Math.imul(ye,$i)|0,te=te+Math.imul(qe,ni)|0,ke=ke+Math.imul(qe,$i)|0,de=de+Math.imul(Me,si)|0,te=te+Math.imul(Me,Ai)|0,te=te+Math.imul(Ue,si)|0,ke=ke+Math.imul(Ue,Ai)|0;var gi=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(gi>>>26)|0,gi&=67108863,de=Math.imul(Yt,yr),te=Math.imul(Yt,Ut),te=te+Math.imul(cr,yr)|0,ke=Math.imul(cr,Ut),de=de+Math.imul(it,xe)|0,te=te+Math.imul(it,Oe)|0,te=te+Math.imul(et,xe)|0,ke=ke+Math.imul(et,Oe)|0,de=de+Math.imul(vt,Fe)|0,te=te+Math.imul(vt,ft)|0,te=te+Math.imul(Ye,Fe)|0,ke=ke+Math.imul(Ye,ft)|0,de=de+Math.imul(Te,fe)|0,te=te+Math.imul(Te,pe)|0,te=te+Math.imul(ot,fe)|0,ke=ke+Math.imul(ot,pe)|0,de=de+Math.imul(Dt,Pt)|0,te=te+Math.imul(Dt,zt)|0,te=te+Math.imul(Zt,Pt)|0,ke=ke+Math.imul(Zt,zt)|0,de=de+Math.imul(Ct,Gr)|0,te=te+Math.imul(Ct,Br)|0,te=te+Math.imul(wt,Gr)|0,ke=ke+Math.imul(wt,Br)|0,de=de+Math.imul(Nt,Rr)|0,te=te+Math.imul(Nt,pi)|0,te=te+Math.imul(at,Rr)|0,ke=ke+Math.imul(at,pi)|0,de=de+Math.imul(Je,ni)|0,te=te+Math.imul(Je,$i)|0,te=te+Math.imul(nt,ni)|0,ke=ke+Math.imul(nt,$i)|0,de=de+Math.imul(ye,si)|0,te=te+Math.imul(ye,Ai)|0,te=te+Math.imul(qe,si)|0,ke=ke+Math.imul(qe,Ai)|0,de=de+Math.imul(Me,Rt)|0,te=te+Math.imul(Me,yt)|0,te=te+Math.imul(Ue,Rt)|0,ke=ke+Math.imul(Ue,yt)|0;var ki=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(ki>>>26)|0,ki&=67108863,de=Math.imul(Yt,xe),te=Math.imul(Yt,Oe),te=te+Math.imul(cr,xe)|0,ke=Math.imul(cr,Oe),de=de+Math.imul(it,Fe)|0,te=te+Math.imul(it,ft)|0,te=te+Math.imul(et,Fe)|0,ke=ke+Math.imul(et,ft)|0,de=de+Math.imul(vt,fe)|0,te=te+Math.imul(vt,pe)|0,te=te+Math.imul(Ye,fe)|0,ke=ke+Math.imul(Ye,pe)|0,de=de+Math.imul(Te,Pt)|0,te=te+Math.imul(Te,zt)|0,te=te+Math.imul(ot,Pt)|0,ke=ke+Math.imul(ot,zt)|0,de=de+Math.imul(Dt,Gr)|0,te=te+Math.imul(Dt,Br)|0,te=te+Math.imul(Zt,Gr)|0,ke=ke+Math.imul(Zt,Br)|0,de=de+Math.imul(Ct,Rr)|0,te=te+Math.imul(Ct,pi)|0,te=te+Math.imul(wt,Rr)|0,ke=ke+Math.imul(wt,pi)|0,de=de+Math.imul(Nt,ni)|0,te=te+Math.imul(Nt,$i)|0,te=te+Math.imul(at,ni)|0,ke=ke+Math.imul(at,$i)|0,de=de+Math.imul(Je,si)|0,te=te+Math.imul(Je,Ai)|0,te=te+Math.imul(nt,si)|0,ke=ke+Math.imul(nt,Ai)|0,de=de+Math.imul(ye,Rt)|0,te=te+Math.imul(ye,yt)|0,te=te+Math.imul(qe,Rt)|0,ke=ke+Math.imul(qe,yt)|0;var Vi=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Vi>>>26)|0,Vi&=67108863,de=Math.imul(Yt,Fe),te=Math.imul(Yt,ft),te=te+Math.imul(cr,Fe)|0,ke=Math.imul(cr,ft),de=de+Math.imul(it,fe)|0,te=te+Math.imul(it,pe)|0,te=te+Math.imul(et,fe)|0,ke=ke+Math.imul(et,pe)|0,de=de+Math.imul(vt,Pt)|0,te=te+Math.imul(vt,zt)|0,te=te+Math.imul(Ye,Pt)|0,ke=ke+Math.imul(Ye,zt)|0,de=de+Math.imul(Te,Gr)|0,te=te+Math.imul(Te,Br)|0,te=te+Math.imul(ot,Gr)|0,ke=ke+Math.imul(ot,Br)|0,de=de+Math.imul(Dt,Rr)|0,te=te+Math.imul(Dt,pi)|0,te=te+Math.imul(Zt,Rr)|0,ke=ke+Math.imul(Zt,pi)|0,de=de+Math.imul(Ct,ni)|0,te=te+Math.imul(Ct,$i)|0,te=te+Math.imul(wt,ni)|0,ke=ke+Math.imul(wt,$i)|0,de=de+Math.imul(Nt,si)|0,te=te+Math.imul(Nt,Ai)|0,te=te+Math.imul(at,si)|0,ke=ke+Math.imul(at,Ai)|0,de=de+Math.imul(Je,Rt)|0,te=te+Math.imul(Je,yt)|0,te=te+Math.imul(nt,Rt)|0,ke=ke+Math.imul(nt,yt)|0;var ti=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(ti>>>26)|0,ti&=67108863,de=Math.imul(Yt,fe),te=Math.imul(Yt,pe),te=te+Math.imul(cr,fe)|0,ke=Math.imul(cr,pe),de=de+Math.imul(it,Pt)|0,te=te+Math.imul(it,zt)|0,te=te+Math.imul(et,Pt)|0,ke=ke+Math.imul(et,zt)|0,de=de+Math.imul(vt,Gr)|0,te=te+Math.imul(vt,Br)|0,te=te+Math.imul(Ye,Gr)|0,ke=ke+Math.imul(Ye,Br)|0,de=de+Math.imul(Te,Rr)|0,te=te+Math.imul(Te,pi)|0,te=te+Math.imul(ot,Rr)|0,ke=ke+Math.imul(ot,pi)|0,de=de+Math.imul(Dt,ni)|0,te=te+Math.imul(Dt,$i)|0,te=te+Math.imul(Zt,ni)|0,ke=ke+Math.imul(Zt,$i)|0,de=de+Math.imul(Ct,si)|0,te=te+Math.imul(Ct,Ai)|0,te=te+Math.imul(wt,si)|0,ke=ke+Math.imul(wt,Ai)|0,de=de+Math.imul(Nt,Rt)|0,te=te+Math.imul(Nt,yt)|0,te=te+Math.imul(at,Rt)|0,ke=ke+Math.imul(at,yt)|0;var tn=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(tn>>>26)|0,tn&=67108863,de=Math.imul(Yt,Pt),te=Math.imul(Yt,zt),te=te+Math.imul(cr,Pt)|0,ke=Math.imul(cr,zt),de=de+Math.imul(it,Gr)|0,te=te+Math.imul(it,Br)|0,te=te+Math.imul(et,Gr)|0,ke=ke+Math.imul(et,Br)|0,de=de+Math.imul(vt,Rr)|0,te=te+Math.imul(vt,pi)|0,te=te+Math.imul(Ye,Rr)|0,ke=ke+Math.imul(Ye,pi)|0,de=de+Math.imul(Te,ni)|0,te=te+Math.imul(Te,$i)|0,te=te+Math.imul(ot,ni)|0,ke=ke+Math.imul(ot,$i)|0,de=de+Math.imul(Dt,si)|0,te=te+Math.imul(Dt,Ai)|0,te=te+Math.imul(Zt,si)|0,ke=ke+Math.imul(Zt,Ai)|0,de=de+Math.imul(Ct,Rt)|0,te=te+Math.imul(Ct,yt)|0,te=te+Math.imul(wt,Rt)|0,ke=ke+Math.imul(wt,yt)|0;var Yr=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Yr>>>26)|0,Yr&=67108863,de=Math.imul(Yt,Gr),te=Math.imul(Yt,Br),te=te+Math.imul(cr,Gr)|0,ke=Math.imul(cr,Br),de=de+Math.imul(it,Rr)|0,te=te+Math.imul(it,pi)|0,te=te+Math.imul(et,Rr)|0,ke=ke+Math.imul(et,pi)|0,de=de+Math.imul(vt,ni)|0,te=te+Math.imul(vt,$i)|0,te=te+Math.imul(Ye,ni)|0,ke=ke+Math.imul(Ye,$i)|0,de=de+Math.imul(Te,si)|0,te=te+Math.imul(Te,Ai)|0,te=te+Math.imul(ot,si)|0,ke=ke+Math.imul(ot,Ai)|0,de=de+Math.imul(Dt,Rt)|0,te=te+Math.imul(Dt,yt)|0,te=te+Math.imul(Zt,Rt)|0,ke=ke+Math.imul(Zt,yt)|0;var oi=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(oi>>>26)|0,oi&=67108863,de=Math.imul(Yt,Rr),te=Math.imul(Yt,pi),te=te+Math.imul(cr,Rr)|0,ke=Math.imul(cr,pi),de=de+Math.imul(it,ni)|0,te=te+Math.imul(it,$i)|0,te=te+Math.imul(et,ni)|0,ke=ke+Math.imul(et,$i)|0,de=de+Math.imul(vt,si)|0,te=te+Math.imul(vt,Ai)|0,te=te+Math.imul(Ye,si)|0,ke=ke+Math.imul(Ye,Ai)|0,de=de+Math.imul(Te,Rt)|0,te=te+Math.imul(Te,yt)|0,te=te+Math.imul(ot,Rt)|0,ke=ke+Math.imul(ot,yt)|0;var Fi=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(Fi>>>26)|0,Fi&=67108863,de=Math.imul(Yt,ni),te=Math.imul(Yt,$i),te=te+Math.imul(cr,ni)|0,ke=Math.imul(cr,$i),de=de+Math.imul(it,si)|0,te=te+Math.imul(it,Ai)|0,te=te+Math.imul(et,si)|0,ke=ke+Math.imul(et,Ai)|0,de=de+Math.imul(vt,Rt)|0,te=te+Math.imul(vt,yt)|0,te=te+Math.imul(Ye,Rt)|0,ke=ke+Math.imul(Ye,yt)|0;var an=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(an>>>26)|0,an&=67108863,de=Math.imul(Yt,si),te=Math.imul(Yt,Ai),te=te+Math.imul(cr,si)|0,ke=Math.imul(cr,Ai),de=de+Math.imul(it,Rt)|0,te=te+Math.imul(it,yt)|0,te=te+Math.imul(et,Rt)|0,ke=ke+Math.imul(et,yt)|0;var nn=(Ce+de|0)+((te&8191)<<13)|0;Ce=(ke+(te>>>13)|0)+(nn>>>26)|0,nn&=67108863,de=Math.imul(Yt,Rt),te=Math.imul(Yt,yt),te=te+Math.imul(cr,Rt)|0,ke=Math.imul(cr,yt);var Ri=(Ce+de|0)+((te&8191)<<13)|0;return Ce=(ke+(te>>>13)|0)+(Ri>>>26)|0,Ri&=67108863,ze[0]=Gt,ze[1]=Wt,ze[2]=xr,ze[3]=Lr,ze[4]=Nr,ze[5]=Or,ze[6]=Hr,ze[7]=jr,ze[8]=gi,ze[9]=ki,ze[10]=Vi,ze[11]=ti,ze[12]=tn,ze[13]=Yr,ze[14]=oi,ze[15]=Fi,ze[16]=an,ze[17]=nn,ze[18]=Ri,Ce!==0&&(ze[19]=Ce,re.length++),re};Math.imul||(L=A);function x(W,N,H){H.negative=N.negative^W.negative,H.length=W.length+N.length;for(var re=0,ae=0,be=0;be>>26)|0,ae+=ze>>>26,ze&=67108863}H.words[be]=Ce,re=ze,ze=ae}return re!==0?H.words[be]=re:H.length--,H.strip()}function C(W,N,H){var re=new M;return re.mulp(W,N,H)}c.prototype.mulTo=function(N,H){var re,ae=this.length+N.length;return this.length===10&&N.length===10?re=L(this,N,H):ae<63?re=A(this,N,H):ae<1024?re=x(this,N,H):re=C(this,N,H),re};function M(W,N){this.x=W,this.y=N}M.prototype.makeRBT=function(N){for(var H=new Array(N),re=c.prototype._countBits(N)-1,ae=0;ae>=1;return ae},M.prototype.permute=function(N,H,re,ae,be,ze){for(var Ce=0;Ce>>1)be++;return 1<>>13,re[2*ze+1]=be&8191,be=be>>>13;for(ze=2*H;ze>=26,H+=ae/67108864|0,H+=be>>>26,this.words[re]=be&67108863}return H!==0&&(this.words[re]=H,this.length++),this},c.prototype.muln=function(N){return this.clone().imuln(N)},c.prototype.sqr=function(){return this.mul(this)},c.prototype.isqr=function(){return this.imul(this.clone())},c.prototype.pow=function(N){var H=E(N);if(H.length===0)return new c(1);for(var re=this,ae=0;ae=0);var H=N%26,re=(N-H)/26,ae=67108863>>>26-H<<26-H,be;if(H!==0){var ze=0;for(be=0;be>>26-H}ze&&(this.words[be]=ze,this.length++)}if(re!==0){for(be=this.length-1;be>=0;be--)this.words[be+re]=this.words[be];for(be=0;be=0);var ae;H?ae=(H-H%26)/26:ae=0;var be=N%26,ze=Math.min((N-be)/26,this.length),Ce=67108863^67108863>>>be<ze)for(this.length-=ze,te=0;te=0&&(ke!==0||te>=ae);te--){var Ee=this.words[te]|0;this.words[te]=ke<<26-be|Ee>>>be,ke=Ee&Ce}return de&&ke!==0&&(de.words[de.length++]=ke),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},c.prototype.ishrn=function(N,H,re){return l(this.negative===0),this.iushrn(N,H,re)},c.prototype.shln=function(N){return this.clone().ishln(N)},c.prototype.ushln=function(N){return this.clone().iushln(N)},c.prototype.shrn=function(N){return this.clone().ishrn(N)},c.prototype.ushrn=function(N){return this.clone().iushrn(N)},c.prototype.testn=function(N){l(typeof N=="number"&&N>=0);var H=N%26,re=(N-H)/26,ae=1<=0);var H=N%26,re=(N-H)/26;if(l(this.negative===0,"imaskn works only with positive numbers"),this.length<=re)return this;if(H!==0&&re++,this.length=Math.min(re,this.length),H!==0){var ae=67108863^67108863>>>H<=67108864;H++)this.words[H]-=67108864,H===this.length-1?this.words[H+1]=1:this.words[H+1]++;return this.length=Math.max(this.length,H+1),this},c.prototype.isubn=function(N){if(l(typeof N=="number"),l(N<67108864),N<0)return this.iaddn(-N);if(this.negative!==0)return this.negative=0,this.iaddn(N),this.negative=1,this;if(this.words[0]-=N,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var H=0;H>26)-(de/67108864|0),this.words[be+re]=ze&67108863}for(;be>26,this.words[be+re]=ze&67108863;if(Ce===0)return this.strip();for(l(Ce===-1),Ce=0,be=0;be>26,this.words[be]=ze&67108863;return this.negative=1,this.strip()},c.prototype._wordDiv=function(N,H){var re=this.length-N.length,ae=this.clone(),be=N,ze=be.words[be.length-1]|0,Ce=this._countBits(ze);re=26-Ce,re!==0&&(be=be.ushln(re),ae.iushln(re),ze=be.words[be.length-1]|0);var de=ae.length-be.length,te;if(H!=="mod"){te=new c(null),te.length=de+1,te.words=new Array(te.length);for(var ke=0;ke=0;Me--){var Ue=(ae.words[be.length+Me]|0)*67108864+(ae.words[be.length+Me-1]|0);for(Ue=Math.min(Ue/ze|0,67108863),ae._ishlnsubmul(be,Ue,Me);ae.negative!==0;)Ue--,ae.negative=0,ae._ishlnsubmul(be,1,Me),ae.isZero()||(ae.negative^=1);te&&(te.words[Me]=Ue)}return te&&te.strip(),ae.strip(),H!=="div"&&re!==0&&ae.iushrn(re),{div:te||null,mod:ae}},c.prototype.divmod=function(N,H,re){if(l(!N.isZero()),this.isZero())return{div:new c(0),mod:new c(0)};var ae,be,ze;return this.negative!==0&&N.negative===0?(ze=this.neg().divmod(N,H),H!=="mod"&&(ae=ze.div.neg()),H!=="div"&&(be=ze.mod.neg(),re&&be.negative!==0&&be.iadd(N)),{div:ae,mod:be}):this.negative===0&&N.negative!==0?(ze=this.divmod(N.neg(),H),H!=="mod"&&(ae=ze.div.neg()),{div:ae,mod:ze.mod}):(this.negative&N.negative)!==0?(ze=this.neg().divmod(N.neg(),H),H!=="div"&&(be=ze.mod.neg(),re&&be.negative!==0&&be.isub(N)),{div:ze.div,mod:be}):N.length>this.length||this.cmp(N)<0?{div:new c(0),mod:this}:N.length===1?H==="div"?{div:this.divn(N.words[0]),mod:null}:H==="mod"?{div:null,mod:new c(this.modn(N.words[0]))}:{div:this.divn(N.words[0]),mod:new c(this.modn(N.words[0]))}:this._wordDiv(N,H)},c.prototype.div=function(N){return this.divmod(N,"div",!1).div},c.prototype.mod=function(N){return this.divmod(N,"mod",!1).mod},c.prototype.umod=function(N){return this.divmod(N,"mod",!0).mod},c.prototype.divRound=function(N){var H=this.divmod(N);if(H.mod.isZero())return H.div;var re=H.div.negative!==0?H.mod.isub(N):H.mod,ae=N.ushrn(1),be=N.andln(1),ze=re.cmp(ae);return ze<0||be===1&&ze===0?H.div:H.div.negative!==0?H.div.isubn(1):H.div.iaddn(1)},c.prototype.modn=function(N){l(N<=67108863);for(var H=(1<<26)%N,re=0,ae=this.length-1;ae>=0;ae--)re=(H*re+(this.words[ae]|0))%N;return re},c.prototype.idivn=function(N){l(N<=67108863);for(var H=0,re=this.length-1;re>=0;re--){var ae=(this.words[re]|0)+H*67108864;this.words[re]=ae/N|0,H=ae%N}return this.strip()},c.prototype.divn=function(N){return this.clone().idivn(N)},c.prototype.egcd=function(N){l(N.negative===0),l(!N.isZero());var H=this,re=N.clone();H.negative!==0?H=H.umod(N):H=H.clone();for(var ae=new c(1),be=new c(0),ze=new c(0),Ce=new c(1),de=0;H.isEven()&&re.isEven();)H.iushrn(1),re.iushrn(1),++de;for(var te=re.clone(),ke=H.clone();!H.isZero();){for(var Ee=0,Me=1;(H.words[0]&Me)===0&&Ee<26;++Ee,Me<<=1);if(Ee>0)for(H.iushrn(Ee);Ee-- >0;)(ae.isOdd()||be.isOdd())&&(ae.iadd(te),be.isub(ke)),ae.iushrn(1),be.iushrn(1);for(var Ue=0,De=1;(re.words[0]&De)===0&&Ue<26;++Ue,De<<=1);if(Ue>0)for(re.iushrn(Ue);Ue-- >0;)(ze.isOdd()||Ce.isOdd())&&(ze.iadd(te),Ce.isub(ke)),ze.iushrn(1),Ce.iushrn(1);H.cmp(re)>=0?(H.isub(re),ae.isub(ze),be.isub(Ce)):(re.isub(H),ze.isub(ae),Ce.isub(be))}return{a:ze,b:Ce,gcd:re.iushln(de)}},c.prototype._invmp=function(N){l(N.negative===0),l(!N.isZero());var H=this,re=N.clone();H.negative!==0?H=H.umod(N):H=H.clone();for(var ae=new c(1),be=new c(0),ze=re.clone();H.cmpn(1)>0&&re.cmpn(1)>0;){for(var Ce=0,de=1;(H.words[0]&de)===0&&Ce<26;++Ce,de<<=1);if(Ce>0)for(H.iushrn(Ce);Ce-- >0;)ae.isOdd()&&ae.iadd(ze),ae.iushrn(1);for(var te=0,ke=1;(re.words[0]&ke)===0&&te<26;++te,ke<<=1);if(te>0)for(re.iushrn(te);te-- >0;)be.isOdd()&&be.iadd(ze),be.iushrn(1);H.cmp(re)>=0?(H.isub(re),ae.isub(be)):(re.isub(H),be.isub(ae))}var Ee;return H.cmpn(1)===0?Ee=ae:Ee=be,Ee.cmpn(0)<0&&Ee.iadd(N),Ee},c.prototype.gcd=function(N){if(this.isZero())return N.abs();if(N.isZero())return this.abs();var H=this.clone(),re=N.clone();H.negative=0,re.negative=0;for(var ae=0;H.isEven()&&re.isEven();ae++)H.iushrn(1),re.iushrn(1);do{for(;H.isEven();)H.iushrn(1);for(;re.isEven();)re.iushrn(1);var be=H.cmp(re);if(be<0){var ze=H;H=re,re=ze}else if(be===0||re.cmpn(1)===0)break;H.isub(re)}while(!0);return re.iushln(ae)},c.prototype.invm=function(N){return this.egcd(N).a.umod(N)},c.prototype.isEven=function(){return(this.words[0]&1)===0},c.prototype.isOdd=function(){return(this.words[0]&1)===1},c.prototype.andln=function(N){return this.words[0]&N},c.prototype.bincn=function(N){l(typeof N=="number");var H=N%26,re=(N-H)/26,ae=1<>>26,Ce&=67108863,this.words[ze]=Ce}return be!==0&&(this.words[ze]=be,this.length++),this},c.prototype.isZero=function(){return this.length===1&&this.words[0]===0},c.prototype.cmpn=function(N){var H=N<0;if(this.negative!==0&&!H)return-1;if(this.negative===0&&H)return 1;this.strip();var re;if(this.length>1)re=1;else{H&&(N=-N),l(N<=67108863,"Number is too big");var ae=this.words[0]|0;re=ae===N?0:aeN.length)return 1;if(this.length=0;re--){var ae=this.words[re]|0,be=N.words[re]|0;if(ae!==be){aebe&&(H=1);break}}return H},c.prototype.gtn=function(N){return this.cmpn(N)===1},c.prototype.gt=function(N){return this.cmp(N)===1},c.prototype.gten=function(N){return this.cmpn(N)>=0},c.prototype.gte=function(N){return this.cmp(N)>=0},c.prototype.ltn=function(N){return this.cmpn(N)===-1},c.prototype.lt=function(N){return this.cmp(N)===-1},c.prototype.lten=function(N){return this.cmpn(N)<=0},c.prototype.lte=function(N){return this.cmp(N)<=0},c.prototype.eqn=function(N){return this.cmpn(N)===0},c.prototype.eq=function(N){return this.cmp(N)===0},c.red=function(N){return new G(N)},c.prototype.toRed=function(N){return l(!this.red,"Already a number in reduction context"),l(this.negative===0,"red works only with positives"),N.convertTo(this)._forceRed(N)},c.prototype.fromRed=function(){return l(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},c.prototype._forceRed=function(N){return this.red=N,this},c.prototype.forceRed=function(N){return l(!this.red,"Already a number in reduction context"),this._forceRed(N)},c.prototype.redAdd=function(N){return l(this.red,"redAdd works only with red numbers"),this.red.add(this,N)},c.prototype.redIAdd=function(N){return l(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,N)},c.prototype.redSub=function(N){return l(this.red,"redSub works only with red numbers"),this.red.sub(this,N)},c.prototype.redISub=function(N){return l(this.red,"redISub works only with red numbers"),this.red.isub(this,N)},c.prototype.redShl=function(N){return l(this.red,"redShl works only with red numbers"),this.red.shl(this,N)},c.prototype.redMul=function(N){return l(this.red,"redMul works only with red numbers"),this.red._verify2(this,N),this.red.mul(this,N)},c.prototype.redIMul=function(N){return l(this.red,"redMul works only with red numbers"),this.red._verify2(this,N),this.red.imul(this,N)},c.prototype.redSqr=function(){return l(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},c.prototype.redISqr=function(){return l(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},c.prototype.redSqrt=function(){return l(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},c.prototype.redInvm=function(){return l(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},c.prototype.redNeg=function(){return l(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},c.prototype.redPow=function(N){return l(this.red&&!N.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,N)};var m={k256:null,p224:null,p192:null,p25519:null};function P(W,N){this.name=W,this.p=new c(N,16),this.n=this.p.bitLength(),this.k=new c(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}P.prototype._tmp=function(){var N=new c(null);return N.words=new Array(Math.ceil(this.n/13)),N},P.prototype.ireduce=function(N){var H=N,re;do this.split(H,this.tmp),H=this.imulK(H),H=H.iadd(this.tmp),re=H.bitLength();while(re>this.n);var ae=re0?H.isub(this.p):H.strip!==void 0?H.strip():H._strip(),H},P.prototype.split=function(N,H){N.iushrn(this.n,0,H)},P.prototype.imulK=function(N){return N.imul(this.k)};function T(){P.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}f(T,P),T.prototype.split=function(N,H){for(var re=4194303,ae=Math.min(N.length,9),be=0;be>>22,ze=Ce}ze>>>=22,N.words[be-10]=ze,ze===0&&N.length>10?N.length-=10:N.length-=9},T.prototype.imulK=function(N){N.words[N.length]=0,N.words[N.length+1]=0,N.length+=2;for(var H=0,re=0;re>>=26,N.words[re]=be,H=ae}return H!==0&&(N.words[N.length++]=H),N},c._prime=function(N){if(m[N])return m[N];var H;if(N==="k256")H=new T;else if(N==="p224")H=new B;else if(N==="p192")H=new F;else if(N==="p25519")H=new U;else throw new Error("Unknown prime "+N);return m[N]=H,H};function G(W){if(typeof W=="string"){var N=c._prime(W);this.m=N.p,this.prime=N}else l(W.gtn(1),"modulus must be greater than 1"),this.m=W,this.prime=null}G.prototype._verify1=function(N){l(N.negative===0,"red works only with positives"),l(N.red,"red works only with red numbers")},G.prototype._verify2=function(N,H){l((N.negative|H.negative)===0,"red works only with positives"),l(N.red&&N.red===H.red,"red works only with red numbers")},G.prototype.imod=function(N){return this.prime?this.prime.ireduce(N)._forceRed(this):N.umod(this.m)._forceRed(this)},G.prototype.neg=function(N){return N.isZero()?N.clone():this.m.sub(N)._forceRed(this)},G.prototype.add=function(N,H){this._verify2(N,H);var re=N.add(H);return re.cmp(this.m)>=0&&re.isub(this.m),re._forceRed(this)},G.prototype.iadd=function(N,H){this._verify2(N,H);var re=N.iadd(H);return re.cmp(this.m)>=0&&re.isub(this.m),re},G.prototype.sub=function(N,H){this._verify2(N,H);var re=N.sub(H);return re.cmpn(0)<0&&re.iadd(this.m),re._forceRed(this)},G.prototype.isub=function(N,H){this._verify2(N,H);var re=N.isub(H);return re.cmpn(0)<0&&re.iadd(this.m),re},G.prototype.shl=function(N,H){return this._verify1(N),this.imod(N.ushln(H))},G.prototype.imul=function(N,H){return this._verify2(N,H),this.imod(N.imul(H))},G.prototype.mul=function(N,H){return this._verify2(N,H),this.imod(N.mul(H))},G.prototype.isqr=function(N){return this.imul(N,N.clone())},G.prototype.sqr=function(N){return this.mul(N,N)},G.prototype.sqrt=function(N){if(N.isZero())return N.clone();var H=this.m.andln(3);if(l(H%2===1),H===3){var re=this.m.add(new c(1)).iushrn(2);return this.pow(N,re)}for(var ae=this.m.subn(1),be=0;!ae.isZero()&&ae.andln(1)===0;)be++,ae.iushrn(1);l(!ae.isZero());var ze=new c(1).toRed(this),Ce=ze.redNeg(),de=this.m.subn(1).iushrn(1),te=this.m.bitLength();for(te=new c(2*te*te).toRed(this);this.pow(te,de).cmp(Ce)!==0;)te.redIAdd(Ce);for(var ke=this.pow(te,ae),Ee=this.pow(N,ae.addn(1).iushrn(1)),Me=this.pow(N,ae),Ue=be;Me.cmp(ze)!==0;){for(var De=Me,ye=0;De.cmp(ze)!==0;ye++)De=De.redSqr();l(ye=0;be--){for(var ke=H.words[be],Ee=te-1;Ee>=0;Ee--){var Me=ke>>Ee&1;if(ze!==ae[0]&&(ze=this.sqr(ze)),Me===0&&Ce===0){de=0;continue}Ce<<=1,Ce|=Me,de++,!(de!==re&&(be!==0||Ee!==0))&&(ze=this.mul(ze,ae[Ce]),de=0,Ce=0)}te=26}return ze},G.prototype.convertTo=function(N){var H=N.umod(this.m);return H===N?H.clone():H},G.prototype.convertFrom=function(N){var H=N.clone();return H.red=null,H},c.mont=function(N){return new j(N)};function j(W){G.call(this,W),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new c(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}f(j,G),j.prototype.convertTo=function(N){return this.imod(N.ushln(this.shift))},j.prototype.convertFrom=function(N){var H=this.imod(N.mul(this.rinv));return H.red=null,H},j.prototype.imul=function(N,H){if(N.isZero()||H.isZero())return N.words[0]=0,N.length=1,N;var re=N.imul(H),ae=re.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),be=re.isub(ae).iushrn(this.shift),ze=be;return be.cmp(this.m)>=0?ze=be.isub(this.m):be.cmpn(0)<0&&(ze=be.iadd(this.m)),ze._forceRed(this)},j.prototype.mul=function(N,H){if(N.isZero()||H.isZero())return new c(0)._forceRed(this);var re=N.mul(H),ae=re.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),be=re.isub(ae).iushrn(this.shift),ze=be;return be.cmp(this.m)>=0?ze=be.isub(this.m):be.cmpn(0)<0&&(ze=be.iadd(this.m)),ze._forceRed(this)},j.prototype.invm=function(N){var H=this.imod(N._invmp(this.m).mul(this.r2));return H._forceRed(this)}}(i,this)},6860:function(i){i.exports=a;function a(o,s,u){return o[0]=s[0]-u[0],o[1]=s[1]-u[1],o[2]=s[2]-u[2],o[3]=s[3]-u[3],o}},6864:function(i){i.exports=a;function a(){var o=new Float32Array(16);return o[0]=1,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=1,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=1,o[11]=0,o[12]=0,o[13]=0,o[14]=0,o[15]=1,o}},6867:function(i,a,o){"use strict";i.exports=v;var s=o(1888),u=o(855),l=o(7150);function f(k,E){for(var A=0;A>>1;if(!(M<=0)){var m,P=s.mallocDouble(2*M*x),T=s.mallocInt32(x);if(x=c(k,M,P,T),x>0){if(M===1&&L)u.init(x),m=u.sweepComplete(M,A,0,x,P,T,0,x,P,T);else{var B=s.mallocDouble(2*M*C),F=s.mallocInt32(C);C=c(E,M,B,F),C>0&&(u.init(x+C),M===1?m=u.sweepBipartite(M,A,0,x,P,T,0,C,B,F):m=l(M,A,L,x,P,T,C,B,F),s.free(B),s.free(F))}s.free(P),s.free(T)}return m}}}var d;function p(k,E){d.push([k,E])}function _(k){return d=[],h(k,k,p,!0),d}function b(k,E){return d=[],h(k,E,p,!1),d}function v(k,E,A){switch(arguments.length){case 1:return _(k);case 2:return typeof E=="function"?h(k,k,E,!0):b(k,E);case 3:return h(k,E,A,!1);default:throw new Error("box-intersect: Invalid arguments")}}},6894:function(i){i.exports=a;function a(o,s,u,l){var f=u[1],c=u[2],h=s[1]-f,d=s[2]-c,p=Math.sin(l),_=Math.cos(l);return o[0]=s[0],o[1]=f+h*_-d*p,o[2]=c+h*p+d*_,o}},7004:function(i){"use strict";i.exports=a;function a(o){for(var s=o.length,u=o[o.length-1],l=s,f=s-2;f>=0;--f){var c=u,h=o[f];u=c+h;var d=u-c,p=h-d;p&&(o[--l]=u,u=p)}for(var _=0,f=l;f=p0)&&!(p1>=hi)"),E=p("lo===p0"),A=p("lo0;){ke-=1;var Ue=ke*M,De=T[Ue],ye=T[Ue+1],qe=T[Ue+2],ce=T[Ue+3],Je=T[Ue+4],nt=T[Ue+5],gt=ke*m,Nt=B[gt],at=B[gt+1],Ke=nt&1,Ct=!!(nt&16),wt=be,St=ze,Dt=de,Zt=te;if(Ke&&(wt=de,St=te,Dt=be,Zt=ze),!(nt&2&&(qe=A(N,De,ye,qe,wt,St,at),ye>=qe))&&!(nt&4&&(ye=L(N,De,ye,qe,wt,St,Nt),ye>=qe))){var Et=qe-ye,Te=Je-ce;if(Ct){if(N*Et*(Et+Te)de&&ke>0){var Ee=(te[ke][0]-de)/(te[ke][0]-te[ke-1][0]);return te[ke][1]*(1-Ee)+Ee*te[ke-1][1]}}return 1}function j(de,te){for(var ke=v({colormap:de,nshades:256,format:"rgba"}),Ee=new Uint8Array(256*4),Me=0;Me<256;++Me){for(var Ue=ke[Me],De=0;De<3;++De)Ee[4*Me+De]=Ue[De];te?Ee[4*Me+3]=255*G(Me/255,te):Ee[4*Me+3]=255*Ue[3]}return b(Ee,[256,256,4],[4,0,1])}function W(de){for(var te=de.length,ke=new Array(te),Ee=0;Ee0){var gt=this.triShader;gt.bind(),gt.uniforms=ye,this.triangleVAO.bind(),te.drawArrays(te.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var gt=this.lineShader;gt.bind(),gt.uniforms=ye,this.edgeVAO.bind(),te.lineWidth(this.lineWidth*this.pixelRatio),te.drawArrays(te.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()}if(this.pointCount>0){var gt=this.pointShader;gt.bind(),gt.uniforms=ye,this.pointVAO.bind(),te.drawArrays(te.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var gt=this.contourShader;gt.bind(),gt.uniforms=ye,this.contourVAO.bind(),te.drawArrays(te.LINES,0,this.contourCount),this.contourVAO.unbind()}},U.drawPick=function(de){de=de||{};for(var te=this.gl,ke=de.model||B,Ee=de.view||B,Me=de.projection||B,Ue=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],De=0;De<3;++De)Ue[0][De]=Math.max(Ue[0][De],this.clipBounds[0][De]),Ue[1][De]=Math.min(Ue[1][De],this.clipBounds[1][De]);this._model=[].slice.call(ke),this._view=[].slice.call(Ee),this._projection=[].slice.call(Me),this._resolution=[te.drawingBufferWidth,te.drawingBufferHeight];var ye={model:ke,view:Ee,projection:Me,clipBounds:Ue,pickId:this.pickId/255},qe=this.pickShader;if(qe.bind(),qe.uniforms=ye,this.triangleCount>0&&(this.triangleVAO.bind(),te.drawArrays(te.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),te.lineWidth(this.lineWidth*this.pixelRatio),te.drawArrays(te.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var qe=this.pointPickShader;qe.bind(),qe.uniforms=ye,this.pointVAO.bind(),te.drawArrays(te.POINTS,0,this.pointCount),this.pointVAO.unbind()}},U.pick=function(de){if(!de||de.id!==this.pickId)return null;for(var te=de.value[0]+256*de.value[1]+65536*de.value[2],ke=this.cells[te],Ee=this.positions,Me=new Array(ke.length),Ue=0;UeMath.max(x,C)?M[2]=1:x>Math.max(L,C)?M[0]=1:M[1]=1;for(var m=0,P=0,T=0;T<3;++T)m+=A[T]*A[T],P+=M[T]*A[T];for(var T=0;T<3;++T)M[T]-=P/m*A[T];return c(M,M),M}function b(A,L,x,C,M,m,P,T){this.center=s(x),this.up=s(C),this.right=s(M),this.radius=s([m]),this.angle=s([P,T]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(A,L),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var B=0;B<16;++B)this.computedMatrix[B]=.5;this.recalcMatrix(0)}var v=b.prototype;v.setDistanceLimits=function(A,L){A>0?A=Math.log(A):A=-1/0,L>0?L=Math.log(L):L=1/0,L=Math.max(L,A),this.radius.bounds[0][0]=A,this.radius.bounds[1][0]=L},v.getDistanceLimits=function(A){var L=this.radius.bounds[0];return A?(A[0]=Math.exp(L[0][0]),A[1]=Math.exp(L[1][0]),A):[Math.exp(L[0][0]),Math.exp(L[1][0])]},v.recalcMatrix=function(A){this.center.curve(A),this.up.curve(A),this.right.curve(A),this.radius.curve(A),this.angle.curve(A);for(var L=this.computedUp,x=this.computedRight,C=0,M=0,m=0;m<3;++m)M+=L[m]*x[m],C+=L[m]*L[m];for(var P=Math.sqrt(C),T=0,m=0;m<3;++m)x[m]-=L[m]*M/C,T+=x[m]*x[m],L[m]/=P;for(var B=Math.sqrt(T),m=0;m<3;++m)x[m]/=B;var F=this.computedToward;f(F,L,x),c(F,F);for(var U=Math.exp(this.computedRadius[0]),G=this.computedAngle[0],j=this.computedAngle[1],W=Math.cos(G),N=Math.sin(G),H=Math.cos(j),re=Math.sin(j),ae=this.computedCenter,be=W*H,ze=N*H,Ce=re,de=-W*re,te=-N*re,ke=H,Ee=this.computedEye,Me=this.computedMatrix,m=0;m<3;++m){var Ue=be*x[m]+ze*F[m]+Ce*L[m];Me[4*m+1]=de*x[m]+te*F[m]+ke*L[m],Me[4*m+2]=Ue,Me[4*m+3]=0}var De=Me[1],ye=Me[5],qe=Me[9],ce=Me[2],Je=Me[6],nt=Me[10],gt=ye*nt-qe*Je,Nt=qe*ce-De*nt,at=De*Je-ye*ce,Ke=d(gt,Nt,at);gt/=Ke,Nt/=Ke,at/=Ke,Me[0]=gt,Me[4]=Nt,Me[8]=at;for(var m=0;m<3;++m)Ee[m]=ae[m]+Me[2+4*m]*U;for(var m=0;m<3;++m){for(var T=0,Ct=0;Ct<3;++Ct)T+=Me[m+4*Ct]*Ee[Ct];Me[12+m]=-T}Me[15]=1},v.getMatrix=function(A,L){this.recalcMatrix(A);var x=this.computedMatrix;if(L){for(var C=0;C<16;++C)L[C]=x[C];return L}return x};var k=[0,0,0];v.rotate=function(A,L,x,C){if(this.angle.move(A,L,x),C){this.recalcMatrix(A);var M=this.computedMatrix;k[0]=M[2],k[1]=M[6],k[2]=M[10];for(var m=this.computedUp,P=this.computedRight,T=this.computedToward,B=0;B<3;++B)M[4*B]=m[B],M[4*B+1]=P[B],M[4*B+2]=T[B];l(M,M,C,k);for(var B=0;B<3;++B)m[B]=M[4*B],P[B]=M[4*B+1];this.up.set(A,m[0],m[1],m[2]),this.right.set(A,P[0],P[1],P[2])}},v.pan=function(A,L,x,C){L=L||0,x=x||0,C=C||0,this.recalcMatrix(A);var M=this.computedMatrix,m=Math.exp(this.computedRadius[0]),P=M[1],T=M[5],B=M[9],F=d(P,T,B);P/=F,T/=F,B/=F;var U=M[0],G=M[4],j=M[8],W=U*P+G*T+j*B;U-=P*W,G-=T*W,j-=B*W;var N=d(U,G,j);U/=N,G/=N,j/=N;var H=U*L+P*x,re=G*L+T*x,ae=j*L+B*x;this.center.move(A,H,re,ae);var be=Math.exp(this.computedRadius[0]);be=Math.max(1e-4,be+C),this.radius.set(A,Math.log(be))},v.translate=function(A,L,x,C){this.center.move(A,L||0,x||0,C||0)},v.setMatrix=function(A,L,x,C){var M=1;typeof x=="number"&&(M=x|0),(M<0||M>3)&&(M=1);var m=(M+2)%3,P=(M+1)%3;L||(this.recalcMatrix(A),L=this.computedMatrix);var T=L[M],B=L[M+4],F=L[M+8];if(C){var G=Math.abs(T),j=Math.abs(B),W=Math.abs(F),N=Math.max(G,j,W);G===N?(T=T<0?-1:1,B=F=0):W===N?(F=F<0?-1:1,T=B=0):(B=B<0?-1:1,T=F=0)}else{var U=d(T,B,F);T/=U,B/=U,F/=U}var H=L[m],re=L[m+4],ae=L[m+8],be=H*T+re*B+ae*F;H-=T*be,re-=B*be,ae-=F*be;var ze=d(H,re,ae);H/=ze,re/=ze,ae/=ze;var Ce=B*ae-F*re,de=F*H-T*ae,te=T*re-B*H,ke=d(Ce,de,te);Ce/=ke,de/=ke,te/=ke,this.center.jump(A,Et,Te,ot),this.radius.idle(A),this.up.jump(A,T,B,F),this.right.jump(A,H,re,ae);var Ee,Me;if(M===2){var Ue=L[1],De=L[5],ye=L[9],qe=Ue*H+De*re+ye*ae,ce=Ue*Ce+De*de+ye*te;Nt<0?Ee=-Math.PI/2:Ee=Math.PI/2,Me=Math.atan2(ce,qe)}else{var Je=L[2],nt=L[6],gt=L[10],Nt=Je*T+nt*B+gt*F,at=Je*H+nt*re+gt*ae,Ke=Je*Ce+nt*de+gt*te;Ee=Math.asin(p(Nt)),Me=Math.atan2(Ke,at)}this.angle.jump(A,Me,Ee),this.recalcMatrix(A);var Ct=L[2],wt=L[6],St=L[10],Dt=this.computedMatrix;u(Dt,L);var Zt=Dt[15],Et=Dt[12]/Zt,Te=Dt[13]/Zt,ot=Dt[14]/Zt,Tt=Math.exp(this.computedRadius[0]);this.center.jump(A,Et-Ct*Tt,Te-wt*Tt,ot-St*Tt)},v.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},v.idle=function(A){this.center.idle(A),this.up.idle(A),this.right.idle(A),this.radius.idle(A),this.angle.idle(A)},v.flush=function(A){this.center.flush(A),this.up.flush(A),this.right.flush(A),this.radius.flush(A),this.angle.flush(A)},v.setDistance=function(A,L){L>0&&this.radius.set(A,Math.log(L))},v.lookAt=function(A,L,x,C){this.recalcMatrix(A),L=L||this.computedEye,x=x||this.computedCenter,C=C||this.computedUp;var M=C[0],m=C[1],P=C[2],T=d(M,m,P);if(!(T<1e-6)){M/=T,m/=T,P/=T;var B=L[0]-x[0],F=L[1]-x[1],U=L[2]-x[2],G=d(B,F,U);if(!(G<1e-6)){B/=G,F/=G,U/=G;var j=this.computedRight,W=j[0],N=j[1],H=j[2],re=M*W+m*N+P*H;W-=re*M,N-=re*m,H-=re*P;var ae=d(W,N,H);if(!(ae<.01&&(W=m*U-P*F,N=P*B-M*U,H=M*F-m*B,ae=d(W,N,H),ae<1e-6))){W/=ae,N/=ae,H/=ae,this.up.set(A,M,m,P),this.right.set(A,W,N,H),this.center.set(A,x[0],x[1],x[2]),this.radius.set(A,Math.log(G));var be=m*H-P*N,ze=P*W-M*H,Ce=M*N-m*W,de=d(be,ze,Ce);be/=de,ze/=de,Ce/=de;var te=M*B+m*F+P*U,ke=W*B+N*F+H*U,Ee=be*B+ze*F+Ce*U,Me=Math.asin(p(te)),Ue=Math.atan2(Ee,ke),De=this.angle._state,ye=De[De.length-1],qe=De[De.length-2];ye=ye%(2*Math.PI);var ce=Math.abs(ye+2*Math.PI-Ue),Je=Math.abs(ye-Ue),nt=Math.abs(ye-2*Math.PI-Ue);ce0)throw new Error("Invalid string. Length must be a multiple of 4");var L=E.indexOf("=");L===-1&&(L=A);var x=L===A?0:4-L%4;return[L,x]}function d(E){var A=h(E),L=A[0],x=A[1];return(L+x)*3/4-x}function p(E,A,L){return(A+L)*3/4-L}function _(E){var A,L=h(E),x=L[0],C=L[1],M=new u(p(E,x,C)),m=0,P=C>0?x-4:x,T;for(T=0;T>16&255,M[m++]=A>>8&255,M[m++]=A&255;return C===2&&(A=s[E.charCodeAt(T)]<<2|s[E.charCodeAt(T+1)]>>4,M[m++]=A&255),C===1&&(A=s[E.charCodeAt(T)]<<10|s[E.charCodeAt(T+1)]<<4|s[E.charCodeAt(T+2)]>>2,M[m++]=A>>8&255,M[m++]=A&255),M}function b(E){return o[E>>18&63]+o[E>>12&63]+o[E>>6&63]+o[E&63]}function v(E,A,L){for(var x,C=[],M=A;MP?P:m+M));return x===1?(A=E[L-1],C.push(o[A>>2]+o[A<<4&63]+"==")):x===2&&(A=(E[L-2]<<8)+E[L-1],C.push(o[A>>10]+o[A>>4&63]+o[A<<2&63]+"=")),C.join("")}},7518:function(i,a,o){"use strict";var s=o(1433);function u(c,h,d,p,_,b){this.location=c,this.dimension=h,this.a=d,this.b=p,this.c=_,this.d=b}u.prototype.bind=function(c){switch(this.dimension){case 1:c.vertexAttrib1f(this.location,this.a);break;case 2:c.vertexAttrib2f(this.location,this.a,this.b);break;case 3:c.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:c.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d);break}};function l(c,h,d){this.gl=c,this._ext=h,this.handle=d,this._attribs=[],this._useElements=!1,this._elementsType=c.UNSIGNED_SHORT}l.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var c=0;c1.0001)return null;T+=P[L]}return Math.abs(T-1)>.001?null:[x,h(p,P),P]}},7636:function(i){i.exports=a;function a(o,s){s=s||1;var u=Math.random()*2*Math.PI,l=Math.random()*2-1,f=Math.sqrt(1-l*l)*s;return o[0]=Math.cos(u)*f,o[1]=Math.sin(u)*f,o[2]=l*s,o}},7640:function(i,a,o){"use strict";var s=o(1888);function u(_){switch(_){case"uint32":return[s.mallocUint32,s.freeUint32];default:return null}}var l={"uint32,1,0":function(_,b){return function(k,E,A,L,x,C,M,m,P,T,B){var F,U,G,j=k*x+L,H,N=_(m),W,re,ae,be;for(F=k+1;F<=E;++F){for(U=F,j+=x,G=j,W=0,re=j,H=0;Hk;){W=0,re=G-x;t:for(H=0;Hbe)break t;re+=T,W+=B}for(W=G,re=G-x,H=0;H>1,N=H-U,W=H+U,re=G,ae=N,be=H,ze=W,Ce=j,de=E+1,te=A-1,ke=!0,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt=0,Nt=0,at=0,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt=P,cr=b(Yt),_r=b(Yt);Ct=C*re,wt=C*ae,It=x;e:for(Ke=0;Ke0){Me=re,re=ae,ae=Me;break e}if(at<0)break e;It+=B}Ct=C*ze,wt=C*Ce,It=x;e:for(Ke=0;Ke0){Me=ze,ze=Ce,Ce=Me;break e}if(at<0)break e;It+=B}Ct=C*re,wt=C*be,It=x;e:for(Ke=0;Ke0){Me=re,re=be,be=Me;break e}if(at<0)break e;It+=B}Ct=C*ae,wt=C*be,It=x;e:for(Ke=0;Ke0){Me=ae,ae=be,be=Me;break e}if(at<0)break e;It+=B}Ct=C*re,wt=C*ze,It=x;e:for(Ke=0;Ke0){Me=re,re=ze,ze=Me;break e}if(at<0)break e;It+=B}Ct=C*be,wt=C*ze,It=x;e:for(Ke=0;Ke0){Me=be,be=ze,ze=Me;break e}if(at<0)break e;It+=B}Ct=C*ae,wt=C*Ce,It=x;e:for(Ke=0;Ke0){Me=ae,ae=Ce,Ce=Me;break e}if(at<0)break e;It+=B}Ct=C*ae,wt=C*be,It=x;e:for(Ke=0;Ke0){Me=ae,ae=be,be=Me;break e}if(at<0)break e;It+=B}Ct=C*ze,wt=C*Ce,It=x;e:for(Ke=0;Ke0){Me=ze,ze=Ce,Ce=Me;break e}if(at<0)break e;It+=B}for(Ct=C*re,wt=C*ae,St=C*be,Dt=C*ze,Zt=C*Ce,Et=C*G,Te=C*H,ot=C*j,et=0,It=x,Ke=0;Ke0)te--;else if(at<0){for(Ct=C*qe,wt=C*de,St=C*te,It=x,Ke=0;Ke0)for(;;){ce=x+te*C,et=0;e:for(Ke=0;Ke0){if(--tej){e:for(;;){for(ce=x+de*C,et=0,It=x,Ke=0;Ke1&&k?A(v,k[0],k[1]):A(v)}var d={"uint32,1,0":function(_,b){return function(v){var k=v.data,E=v.offset|0,A=v.shape,L=v.stride,x=L[0]|0,C=A[0]|0,M=L[1]|0,m=A[1]|0,P=M,T=M,B=1;C<=32?_(0,C-1,k,E,x,M,C,m,P,T,B):b(0,C-1,k,E,x,M,C,m,P,T,B)}}};function p(_,b){var v=[b,_].join(","),k=d[v],E=f(_,b),A=h(_,b,E);return k(E,A)}i.exports=p},7642:function(i,a,o){"use strict";var s=o(8954),u=o(1682);i.exports=h;function l(d,p){this.point=d,this.index=p}function f(d,p){for(var _=d.point,b=p.point,v=_.length,k=0;k=2)return!1;G[H]=N}return!0}):U=U.filter(function(G){for(var j=0;j<=b;++j){var H=P[G[j]];if(H<0)return!1;G[j]=H}return!0}),b&1)for(var E=0;E",W="",re=N.length,ae=W.length,be=G[0]===k||G[0]===L,ze=0,Ce=-ae;ze>-1&&(ze=j.indexOf(N,ze),!(ze===-1||(Ce=j.indexOf(W,ze+re),Ce===-1)||Ce<=ze));){for(var de=ze;de=Ce)H[de]=null,j=j.substr(0,de)+" "+j.substr(de+1);else if(H[de]!==null){var te=H[de].indexOf(G[0]);te===-1?H[de]+=G:be&&(H[de]=H[de].substr(0,te+1)+(1+parseInt(H[de][te+1]))+H[de].substr(te+2))}var ke=ze+re,Ee=j.substr(ke,Ce-ke),Me=Ee.indexOf(N);Me!==-1?ze=Me:ze=Ce+ae}return H}function M(U,G,j){for(var H=G.textAlign||"start",N=G.textBaseline||"alphabetic",W=[1<<30,1<<30],re=[0,0],ae=U.length,be=0;be/g,` -`):j=j.replace(/\/g," ");var re="",ae=[];for(ye=0;ye-1?parseInt(Te[1+vt]):0,it=Ye>-1?parseInt(ot[1+Ye]):0;He!==it&&(Tt=Tt.replace(at(),"?px "),Je*=Math.pow(.75,it-He),Tt=Tt.replace("?px ",at())),ce+=.25*te*(it-He)}if(W.superscripts===!0){var et=Te.indexOf(k),It=ot.indexOf(k),Yt=et>-1?parseInt(Te[1+et]):0,cr=It>-1?parseInt(ot[1+It]):0;Yt!==cr&&(Tt=Tt.replace(at(),"?px "),Je*=Math.pow(.75,cr-Yt),Tt=Tt.replace("?px ",at())),ce-=.25*te*(cr-Yt)}if(W.bolds===!0){var _r=Te.indexOf(p)>-1,yr=ot.indexOf(p)>-1;!_r&&yr&&(Ut?Tt=Tt.replace("italic ","italic bold "):Tt="bold "+Tt),_r&&!yr&&(Tt=Tt.replace("bold ",""))}if(W.italics===!0){var Ut=Te.indexOf(b)>-1,Re=ot.indexOf(b)>-1;!Ut&&Re&&(Tt="italic "+Tt),Ut&&!Re&&(Tt=Tt.replace("italic ",""))}G.font=Tt}for(De=0;De0&&(N=H.size),H.lineSpacing&&H.lineSpacing>0&&(W=H.lineSpacing),H.styletags&&H.styletags.breaklines&&(re.breaklines=!!H.styletags.breaklines),H.styletags&&H.styletags.bolds&&(re.bolds=!!H.styletags.bolds),H.styletags&&H.styletags.italics&&(re.italics=!!H.styletags.italics),H.styletags&&H.styletags.subscripts&&(re.subscripts=!!H.styletags.subscripts),H.styletags&&H.styletags.superscripts&&(re.superscripts=!!H.styletags.superscripts)),j.font=[H.fontStyle,H.fontVariant,H.fontWeight,N+"px",H.font].filter(function(be){return be}).join(" "),j.textAlign="start",j.textBaseline="alphabetic",j.direction="ltr";var ae=m(G,j,U,N,W,re);return B(ae,H,N)}},7721:function(i,a,o){"use strict";var s=o(5716);i.exports=u;function u(l){return s(l[0])*s(l[1])}},7765:function(i,a,o){"use strict";i.exports=v;var s=o(9618),u=o(1888),l=o(446),f=o(1570);function c(k){for(var E=k.length,A=0,L=0;LU||B<0||B>U)throw new Error("gl-texture2d: Invalid texture size");return P._shape=[T,B],P.bind(),F.texImage2D(F.TEXTURE_2D,0,P.format,T,B,0,P.format,P.type,null),P._mipLevels=[0],P}function v(P,T,B,F,U,G){this.gl=P,this.handle=T,this.format=U,this.type=G,this._shape=[B,F],this._mipLevels=[0],this._magFilter=P.NEAREST,this._minFilter=P.NEAREST,this._wrapS=P.CLAMP_TO_EDGE,this._wrapT=P.CLAMP_TO_EDGE,this._anisoSamples=1;var j=this,H=[this._wrapS,this._wrapT];Object.defineProperties(H,[{get:function(){return j._wrapS},set:function(W){return j.wrapS=W}},{get:function(){return j._wrapT},set:function(W){return j.wrapT=W}}]),this._wrapVector=H;var N=[this._shape[0],this._shape[1]];Object.defineProperties(N,[{get:function(){return j._shape[0]},set:function(W){return j.width=W}},{get:function(){return j._shape[1]},set:function(W){return j.height=W}}]),this._shapeVector=N}var k=v.prototype;Object.defineProperties(k,{minFilter:{get:function(){return this._minFilter},set:function(P){this.bind();var T=this.gl;if(this.type===T.FLOAT&&f.indexOf(P)>=0&&(T.getExtension("OES_texture_float_linear")||(P=T.NEAREST)),c.indexOf(P)<0)throw new Error("gl-texture2d: Unknown filter mode "+P);return T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MIN_FILTER,P),this._minFilter=P}},magFilter:{get:function(){return this._magFilter},set:function(P){this.bind();var T=this.gl;if(this.type===T.FLOAT&&f.indexOf(P)>=0&&(T.getExtension("OES_texture_float_linear")||(P=T.NEAREST)),c.indexOf(P)<0)throw new Error("gl-texture2d: Unknown filter mode "+P);return T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MAG_FILTER,P),this._magFilter=P}},mipSamples:{get:function(){return this._anisoSamples},set:function(P){var T=this._anisoSamples;if(this._anisoSamples=Math.max(P,1)|0,T!==this._anisoSamples){var B=this.gl.getExtension("EXT_texture_filter_anisotropic");B&&this.gl.texParameterf(this.gl.TEXTURE_2D,B.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(P){if(this.bind(),h.indexOf(P)<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,P),this._wrapS=P}},wrapT:{get:function(){return this._wrapT},set:function(P){if(this.bind(),h.indexOf(P)<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,P),this._wrapT=P}},wrap:{get:function(){return this._wrapVector},set:function(P){if(Array.isArray(P)||(P=[P,P]),P.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var T=0;T<2;++T)if(h.indexOf(P[T])<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);this._wrapS=P[0],this._wrapT=P[1];var B=this.gl;return this.bind(),B.texParameteri(B.TEXTURE_2D,B.TEXTURE_WRAP_S,this._wrapS),B.texParameteri(B.TEXTURE_2D,B.TEXTURE_WRAP_T,this._wrapT),P}},shape:{get:function(){return this._shapeVector},set:function(P){if(!Array.isArray(P))P=[P|0,P|0];else if(P.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return b(this,P[0]|0,P[1]|0),[P[0]|0,P[1]|0]}},width:{get:function(){return this._shape[0]},set:function(P){return P=P|0,b(this,P,this._shape[1]),P}},height:{get:function(){return this._shape[1]},set:function(P){return P=P|0,b(this,this._shape[0],P),P}}}),k.bind=function(P){var T=this.gl;return P!==void 0&&T.activeTexture(T.TEXTURE0+(P|0)),T.bindTexture(T.TEXTURE_2D,this.handle),P!==void 0?P|0:T.getParameter(T.ACTIVE_TEXTURE)-T.TEXTURE0},k.dispose=function(){this.gl.deleteTexture(this.handle)},k.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var P=Math.min(this._shape[0],this._shape[1]),T=0;P>0;++T,P>>>=1)this._mipLevels.indexOf(T)<0&&this._mipLevels.push(T)},k.setPixels=function(P,T,B,F){var U=this.gl;this.bind(),Array.isArray(T)?(F=B,B=T[1]|0,T=T[0]|0):(T=T||0,B=B||0),F=F||0;var G=p(P)?P:P.raw;if(G){var j=this._mipLevels.indexOf(F)<0;j?(U.texImage2D(U.TEXTURE_2D,0,this.format,this.format,this.type,G),this._mipLevels.push(F)):U.texSubImage2D(U.TEXTURE_2D,F,T,B,this.format,this.type,G)}else if(P.shape&&P.stride&&P.data){if(P.shape.length<2||T+P.shape[1]>this._shape[1]>>>F||B+P.shape[0]>this._shape[0]>>>F||T<0||B<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");A(U,T,B,F,this.format,this.type,this._mipLevels,P)}else throw new Error("gl-texture2d: Unsupported data type")};function E(P,T){return P.length===3?T[2]===1&&T[1]===P[0]*P[2]&&T[0]===P[2]:T[0]===1&&T[1]===P[0]}function A(P,T,B,F,U,G,j,H){var N=H.dtype,W=H.shape.slice();if(W.length<2||W.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var re=0,ae=0,be=E(W,H.stride.slice());N==="float32"?re=P.FLOAT:N==="float64"?(re=P.FLOAT,be=!1,N="float32"):N==="uint8"?re=P.UNSIGNED_BYTE:(re=P.UNSIGNED_BYTE,be=!1,N="uint8");var ze=1;if(W.length===2)ae=P.LUMINANCE,W=[W[0],W[1],1],H=s(H.data,W,[H.stride[0],H.stride[1],1],H.offset);else if(W.length===3){if(W[2]===1)ae=P.ALPHA;else if(W[2]===2)ae=P.LUMINANCE_ALPHA;else if(W[2]===3)ae=P.RGB;else if(W[2]===4)ae=P.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");ze=W[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((ae===P.LUMINANCE||ae===P.ALPHA)&&(U===P.LUMINANCE||U===P.ALPHA)&&(ae=U),ae!==U)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var Ce=H.size,de=j.indexOf(F)<0;if(de&&j.push(F),re===G&&be)H.offset===0&&H.data.length===Ce?de?P.texImage2D(P.TEXTURE_2D,F,U,W[0],W[1],0,U,G,H.data):P.texSubImage2D(P.TEXTURE_2D,F,T,B,W[0],W[1],U,G,H.data):de?P.texImage2D(P.TEXTURE_2D,F,U,W[0],W[1],0,U,G,H.data.subarray(H.offset,H.offset+Ce)):P.texSubImage2D(P.TEXTURE_2D,F,T,B,W[0],W[1],U,G,H.data.subarray(H.offset,H.offset+Ce));else{var te;G===P.FLOAT?te=l.mallocFloat32(Ce):te=l.mallocUint8(Ce);var ke=s(te,W,[W[2],W[2]*W[0],1]);re===P.FLOAT&&G===P.UNSIGNED_BYTE?_(ke,H):u.assign(ke,H),de?P.texImage2D(P.TEXTURE_2D,F,U,W[0],W[1],0,U,G,te.subarray(0,Ce)):P.texSubImage2D(P.TEXTURE_2D,F,T,B,W[0],W[1],U,G,te.subarray(0,Ce)),G===P.FLOAT?l.freeFloat32(te):l.freeUint8(te)}}function L(P){var T=P.createTexture();return P.bindTexture(P.TEXTURE_2D,T),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_MIN_FILTER,P.NEAREST),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_MAG_FILTER,P.NEAREST),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_S,P.CLAMP_TO_EDGE),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_T,P.CLAMP_TO_EDGE),T}function x(P,T,B,F,U){var G=P.getParameter(P.MAX_TEXTURE_SIZE);if(T<0||T>G||B<0||B>G)throw new Error("gl-texture2d: Invalid texture shape");if(U===P.FLOAT&&!P.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var j=L(P);return P.texImage2D(P.TEXTURE_2D,0,F,T,B,0,F,U,null),new v(P,j,T,B,F,U)}function C(P,T,B,F,U,G){var j=L(P);return P.texImage2D(P.TEXTURE_2D,0,U,U,G,T),new v(P,j,B,F,U,G)}function M(P,T){var B=T.dtype,F=T.shape.slice(),U=P.getParameter(P.MAX_TEXTURE_SIZE);if(F[0]<0||F[0]>U||F[1]<0||F[1]>U)throw new Error("gl-texture2d: Invalid texture size");var G=E(F,T.stride.slice()),j=0;B==="float32"?j=P.FLOAT:B==="float64"?(j=P.FLOAT,G=!1,B="float32"):B==="uint8"?j=P.UNSIGNED_BYTE:(j=P.UNSIGNED_BYTE,G=!1,B="uint8");var H=0;if(F.length===2)H=P.LUMINANCE,F=[F[0],F[1],1],T=s(T.data,F,[T.stride[0],T.stride[1],1],T.offset);else if(F.length===3)if(F[2]===1)H=P.ALPHA;else if(F[2]===2)H=P.LUMINANCE_ALPHA;else if(F[2]===3)H=P.RGB;else if(F[2]===4)H=P.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");j===P.FLOAT&&!P.getExtension("OES_texture_float")&&(j=P.UNSIGNED_BYTE,G=!1);var N,W,re=T.size;if(G)T.offset===0&&T.data.length===re?N=T.data:N=T.data.subarray(T.offset,T.offset+re);else{var ae=[F[2],F[2]*F[0],1];W=l.malloc(re,B);var be=s(W,F,ae,0);(B==="float32"||B==="float64")&&j===P.UNSIGNED_BYTE?_(be,T):u.assign(be,T),N=W.subarray(0,re)}var ze=L(P);return P.texImage2D(P.TEXTURE_2D,0,H,F[0],F[1],0,H,j,N),G||l.free(W),new v(P,ze,F[0],F[1],H,j)}function m(P){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(f||d(P),typeof arguments[1]=="number")return x(P,arguments[1],arguments[2],arguments[3]||P.RGBA,arguments[4]||P.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return x(P,arguments[1][0]|0,arguments[1][1]|0,arguments[2]||P.RGBA,arguments[3]||P.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var T=arguments[1],B=p(T)?T:T.raw;if(B)return C(P,B,T.width|0,T.height|0,arguments[2]||P.RGBA,arguments[3]||P.UNSIGNED_BYTE);if(T.shape&&T.data&&T.stride)return M(P,T)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},7790:function(){},7815:function(i,a,o){"use strict";var s=o(2931),u=o(9970),l=["xyz","xzy","yxz","yzx","zxy","zyx"],f=function(A,L,x,C){for(var M=A.points,m=A.velocities,P=A.divergences,T=[],B=[],F=[],U=[],G=[],j=[],H=0,N=0,W=u.create(),re=u.create(),ae=8,be=0;be0)for(var te=0;teL)return C-1}return C},d=function(A,L,x){return Ax?x:A},p=function(A,L,x){var C=L.vectors,M=L.meshgrid,m=A[0],P=A[1],T=A[2],B=M[0].length,F=M[1].length,U=M[2].length,G=h(M[0],m),j=h(M[1],P),H=h(M[2],T),N=G+1,W=j+1,re=H+1;if(G=d(G,0,B-1),N=d(N,0,B-1),j=d(j,0,F-1),W=d(W,0,F-1),H=d(H,0,U-1),re=d(re,0,U-1),G<0||j<0||H<0||N>B-1||W>F-1||re>U-1)return s.create();var ae=M[0][G],be=M[0][N],ze=M[1][j],Ce=M[1][W],de=M[2][H],te=M[2][re],ke=(m-ae)/(be-ae),Ee=(P-ze)/(Ce-ze),Me=(T-de)/(te-de);isFinite(ke)||(ke=.5),isFinite(Ee)||(Ee=.5),isFinite(Me)||(Me=.5);var Ue,De,ye,qe,ce,Je;switch(x.reversedX&&(G=B-1-G,N=B-1-N),x.reversedY&&(j=F-1-j,W=F-1-W),x.reversedZ&&(H=U-1-H,re=U-1-re),x.filled){case 5:ce=H,Je=re,ye=j*U,qe=W*U,Ue=G*U*F,De=N*U*F;break;case 4:ce=H,Je=re,Ue=G*U,De=N*U,ye=j*U*B,qe=W*U*B;break;case 3:ye=j,qe=W,ce=H*F,Je=re*F,Ue=G*F*U,De=N*F*U;break;case 2:ye=j,qe=W,Ue=G*F,De=N*F,ce=H*F*B,Je=re*F*B;break;case 1:Ue=G,De=N,ce=H*B,Je=re*B,ye=j*B*U,qe=W*B*U;break;default:Ue=G,De=N,ye=j*B,qe=W*B,ce=H*B*F,Je=re*B*F;break}var nt=C[Ue+ye+ce],gt=C[Ue+ye+Je],Nt=C[Ue+qe+ce],at=C[Ue+qe+Je],Ke=C[De+ye+ce],Ct=C[De+ye+Je],wt=C[De+qe+ce],St=C[De+qe+Je],Dt=s.create(),Zt=s.create(),Et=s.create(),Te=s.create();s.lerp(Dt,nt,Ke,ke),s.lerp(Zt,gt,Ct,ke),s.lerp(Et,Nt,wt,ke),s.lerp(Te,at,St,ke);var ot=s.create(),Tt=s.create();s.lerp(ot,Dt,Et,Ee),s.lerp(Tt,Zt,Te,Ee);var vt=s.create();return s.lerp(vt,ot,Tt,Me),vt},_=function(A,L){var x=L[0],C=L[1],M=L[2];return A[0]=x<0?-x:x,A[1]=C<0?-C:C,A[2]=M<0?-M:M,A},b=function(A){var L=1/0;A.sort(function(m,P){return m-P});for(var x=A.length,C=1;CN||StW||Dtre)},be=s.distance(L[0],L[1]),ze=10*be/C,Ce=ze*ze,de=1,te=0,ke=x.length;ke>1&&(de=v(x));for(var Ee=0;Eete&&(te=nt),ce.push(nt),U.push({points:Ue,velocities:De,divergences:ce});for(var gt=0;gtCe&&s.scale(Nt,Nt,ze/Math.sqrt(at)),s.add(Nt,Nt,Me),ye=B(Nt),s.squaredDistance(qe,Nt)-Ce>-1e-4*Ce){Ue.push(Nt),qe=Nt,De.push(ye);var Je=F(Nt,ye),nt=s.length(Je);isFinite(nt)&&nt>te&&(te=nt),ce.push(nt)}Me=Nt}}var Ke=c(U,A.colormap,te,de);return m?Ke.tubeScale=m:(te===0&&(te=1),Ke.tubeScale=M*.5*de/te),Ke};var k=o(6740),E=o(6405).createMesh;i.exports.createTubeMesh=function(A,L){return E(A,L,{shaders:k,traceType:"streamtube"})}},7827:function(i){i.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},7842:function(i,a,o){"use strict";var s=o(6330),u=o(1533),l=o(2651),f=o(6768),c=o(869),h=o(8697);i.exports=d;function d(p,_){if(s(p))return _?h(p,d(_)):[p[0].clone(),p[1].clone()];var b=0,v,k;if(u(p))v=p.clone();else if(typeof p=="string")v=f(p);else{if(p===0)return[l(0),l(1)];if(p===Math.floor(p))v=l(p);else{for(;p!==Math.floor(p);)p=p*Math.pow(2,256),b-=256;v=l(p)}}if(s(_))v.mul(_[1]),k=_[0].clone();else if(u(_))k=_.clone();else if(typeof _=="string")k=f(_);else if(!_)k=l(1);else if(_===Math.floor(_))k=l(_);else{for(;_!==Math.floor(_);)_=_*Math.pow(2,256),b+=256;k=l(_)}return b>0?v=v.ushln(b):b<0&&(k=k.ushln(-b)),c(v,k)}},7894:function(i){i.exports=a;function a(o){return o[0]=1,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=1,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=1,o[11]=0,o[12]=0,o[13]=0,o[14]=0,o[15]=1,o}},7932:function(i,a,o){var s=o(620);i.exports=s.slice().concat(["layout","centroid","smooth","case","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","uvec2","uvec3","uvec4","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","coherent","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","image1DShadow","image2DShadow","image1DArrayShadow","image2DArrayShadow","imageBuffer","iimageBuffer","uimageBuffer","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray"])},7960:function(i){i.exports=a;function a(o,s){var u=s[0]-o[0],l=s[1]-o[1],f=s[2]-o[2],c=s[3]-o[3];return u*u+l*l+f*f+c*c}},8105:function(i){"use strict";i.exports=o;var a={"lo===p0":s,"lo=p0)&&!(p1>=hi)":d};function o(p){return a[p]}function s(p,_,b,v,k,E,A){for(var L=2*p,x=L*b,C=x,M=b,m=_,P=p+_,T=b;v>T;++T,x+=L){var B=k[x+m];if(B===A)if(M===T)M+=1,C+=L;else{for(var F=0;L>F;++F){var U=k[x+F];k[x+F]=k[C],k[C++]=U}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function u(p,_,b,v,k,E,A){for(var L=2*p,x=L*b,C=x,M=b,m=_,P=p+_,T=b;v>T;++T,x+=L){var B=k[x+m];if(BF;++F){var U=k[x+F];k[x+F]=k[C],k[C++]=U}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function l(p,_,b,v,k,E,A){for(var L=2*p,x=L*b,C=x,M=b,m=_,P=p+_,T=b;v>T;++T,x+=L){var B=k[x+P];if(B<=A)if(M===T)M+=1,C+=L;else{for(var F=0;L>F;++F){var U=k[x+F];k[x+F]=k[C],k[C++]=U}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function f(p,_,b,v,k,E,A){for(var L=2*p,x=L*b,C=x,M=b,m=_,P=p+_,T=b;v>T;++T,x+=L){var B=k[x+P];if(B<=A)if(M===T)M+=1,C+=L;else{for(var F=0;L>F;++F){var U=k[x+F];k[x+F]=k[C],k[C++]=U}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function c(p,_,b,v,k,E,A){for(var L=2*p,x=L*b,C=x,M=b,m=_,P=p+_,T=b;v>T;++T,x+=L){var B=k[x+m],F=k[x+P];if(B<=A&&A<=F)if(M===T)M+=1,C+=L;else{for(var U=0;L>U;++U){var G=k[x+U];k[x+U]=k[C],k[C++]=G}var j=E[T];E[T]=E[M],E[M++]=j}}return M}function h(p,_,b,v,k,E,A){for(var L=2*p,x=L*b,C=x,M=b,m=_,P=p+_,T=b;v>T;++T,x+=L){var B=k[x+m],F=k[x+P];if(BU;++U){var G=k[x+U];k[x+U]=k[C],k[C++]=G}var j=E[T];E[T]=E[M],E[M++]=j}}return M}function d(p,_,b,v,k,E,A,L){for(var x=2*p,C=x*b,M=C,m=b,P=_,T=p+_,B=b;v>B;++B,C+=x){var F=k[C+P],U=k[C+T];if(!(F>=A)&&!(L>=U))if(m===B)m+=1,M+=x;else{for(var G=0;x>G;++G){var j=k[C+G];k[C+G]=k[M],k[M++]=j}var H=E[B];E[B]=E[m],E[m++]=H}}return m}},8107:function(i){i.exports=a;function a(o,s,u){return o[0]=Math.min(s[0],u[0]),o[1]=Math.min(s[1],u[1]),o[2]=Math.min(s[2],u[2]),o}},8116:function(i,a,o){"use strict";var s=o(7518),u=o(870);function l(c){this.bindVertexArrayOES=c.bindVertexArray.bind(c),this.createVertexArrayOES=c.createVertexArray.bind(c),this.deleteVertexArrayOES=c.deleteVertexArray.bind(c)}function f(c,h,d,p){var _=c.createVertexArray?new l(c):c.getExtension("OES_vertex_array_object"),b;return _?b=s(c,_):b=u(c),b.update(h,d,p),b}i.exports=f},8192:function(i,a,o){i.exports=f;var s=o(2825),u=o(3536),l=o(244);function f(c,h){var d=s(c[0],c[1],c[2]),p=s(h[0],h[1],h[2]);u(d,d),u(p,p);var _=l(d,p);return _>1?0:Math.acos(_)}},8210:function(i){"use strict";i.exports=o;function a(s,u){var l=s+u,f=l-s,c=l-f,h=u-f,d=s-c,p=d+h;return p?[p,l]:[l]}function o(s,u){var l=s.length|0,f=u.length|0;if(l===1&&f===1)return a(s[0],u[0]);var c=l+f,h=new Array(c),d=0,p=0,_=0,b=Math.abs,v=s[p],k=b(v),E=u[_],A=b(E),L,x;k=f?(L=v,p+=1,pd)for(var B=h[v],F=1/Math.sqrt(M*P),T=0;T<3;++T){var U=(T+1)%3,G=(T+2)%3;B[T]+=F*(m[U]*C[G]-m[G]*C[U])}}for(var p=0;pd)for(var F=1/Math.sqrt(j),T=0;T<3;++T)B[T]*=F;else for(var T=0;T<3;++T)B[T]=0}return h},a.faceNormals=function(u,l,f){for(var c=u.length,h=new Array(c),d=f===void 0?s:f,p=0;pd?L=1/Math.sqrt(L):L=0;for(var v=0;v<3;++v)A[v]*=L;h[p]=A}return h}},8418:function(i,a,o){"use strict";var s=o(5219),u=o(2762),l=o(8116),f=o(1888),c=o(6760),h=o(1283),d=o(9366),p=o(5964),_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],b=ArrayBuffer,v=DataView;function k(Me){return b.isView(Me)&&!(Me instanceof v)}function E(Me){return Array.isArray(Me)||k(Me)}i.exports=Ee;function A(Me,Ue){var De=Me[0],ye=Me[1],qe=Me[2],ce=Me[3];return Me[0]=Ue[0]*De+Ue[4]*ye+Ue[8]*qe+Ue[12]*ce,Me[1]=Ue[1]*De+Ue[5]*ye+Ue[9]*qe+Ue[13]*ce,Me[2]=Ue[2]*De+Ue[6]*ye+Ue[10]*qe+Ue[14]*ce,Me[3]=Ue[3]*De+Ue[7]*ye+Ue[11]*qe+Ue[15]*ce,Me}function L(Me,Ue,De,ye){return A(ye,ye,De),A(ye,ye,Ue),A(ye,ye,Me)}function x(Me,Ue){this.index=Me,this.dataCoordinate=this.position=Ue}function C(Me){return Me===!0||Me>1?1:Me}function M(Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke){this.gl=Me,this.pixelRatio=1,this.shader=Ue,this.orthoShader=De,this.projectShader=ye,this.pointBuffer=qe,this.colorBuffer=ce,this.glyphBuffer=Je,this.idBuffer=nt,this.vao=gt,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=Nt,this.pickOrthoShader=at,this.pickProjectShader=Ke,this.points=[],this._selectResult=new x(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}var m=M.prototype;m.pickSlots=1,m.setPickBase=function(Me){this.pickId=Me},m.isTransparent=function(){if(this.hasAlpha)return!0;for(var Me=0;Me<3;++Me)if(this.axesProject[Me]&&this.projectHasAlpha)return!0;return!1},m.isOpaque=function(){if(!this.hasAlpha)return!0;for(var Me=0;Me<3;++Me)if(this.axesProject[Me]&&!this.projectHasAlpha)return!0;return!1};var P=[0,0],T=[0,0,0],B=[0,0,0],F=[0,0,0,1],U=[0,0,0,1],G=_.slice(),j=[0,0,0],H=[[0,0,0],[0,0,0]];function N(Me){return Me[0]=Me[1]=Me[2]=0,Me}function W(Me,Ue){return Me[0]=Ue[0],Me[1]=Ue[1],Me[2]=Ue[2],Me[3]=1,Me}function re(Me,Ue,De,ye){return Me[0]=Ue[0],Me[1]=Ue[1],Me[2]=Ue[2],Me[De]=ye,Me}function ae(Me){for(var Ue=H,De=0;De<2;++De)for(var ye=0;ye<3;++ye)Ue[De][ye]=Math.max(Math.min(Me[De][ye],1e8),-1e8);return Ue}function be(Me,Ue,De,ye){var qe=Ue.axesProject,ce=Ue.gl,Je=Me.uniforms,nt=De.model||_,gt=De.view||_,Nt=De.projection||_,at=Ue.axesBounds,Ke=ae(Ue.clipBounds),Ct;Ue.axes&&Ue.axes.lastCubeProps?Ct=Ue.axes.lastCubeProps.axis:Ct=[1,1,1],P[0]=2/ce.drawingBufferWidth,P[1]=2/ce.drawingBufferHeight,Me.bind(),Je.view=gt,Je.projection=Nt,Je.screenSize=P,Je.highlightId=Ue.highlightId,Je.highlightScale=Ue.highlightScale,Je.clipBounds=Ke,Je.pickGroup=Ue.pickId/255,Je.pixelRatio=ye;for(var wt=0;wt<3;++wt)if(qe[wt]){Je.scale=Ue.projectScale[wt],Je.opacity=Ue.projectOpacity[wt];for(var St=G,Dt=0;Dt<16;++Dt)St[Dt]=0;for(var Dt=0;Dt<4;++Dt)St[5*Dt]=1;St[5*wt]=0,Ct[wt]<0?St[12+wt]=at[0][wt]:St[12+wt]=at[1][wt],c(St,nt,St),Je.model=St;var Zt=(wt+1)%3,Et=(wt+2)%3,Te=N(T),ot=N(B);Te[Zt]=1,ot[Et]=1;var Tt=L(Nt,gt,nt,W(F,Te)),vt=L(Nt,gt,nt,W(U,ot));if(Math.abs(Tt[1])>Math.abs(vt[1])){var Ye=Tt;Tt=vt,vt=Ye,Ye=Te,Te=ot,ot=Ye;var He=Zt;Zt=Et,Et=He}Tt[0]<0&&(Te[Zt]=-1),vt[1]>0&&(ot[Et]=-1);for(var it=0,et=0,Dt=0;Dt<4;++Dt)it+=Math.pow(nt[4*Zt+Dt],2),et+=Math.pow(nt[4*Et+Dt],2);Te[Zt]/=Math.sqrt(it),ot[Et]/=Math.sqrt(et),Je.axes[0]=Te,Je.axes[1]=ot,Je.fragClipBounds[0]=re(j,Ke[0],wt,-1e8),Je.fragClipBounds[1]=re(j,Ke[1],wt,1e8),Ue.vao.bind(),Ue.vao.draw(ce.TRIANGLES,Ue.vertexCount),Ue.lineWidth>0&&(ce.lineWidth(Ue.lineWidth*ye),Ue.vao.draw(ce.LINES,Ue.lineVertexCount,Ue.vertexCount)),Ue.vao.unbind()}}var ze=[-1e8,-1e8,-1e8],Ce=[1e8,1e8,1e8],de=[ze,Ce];function te(Me,Ue,De,ye,qe,ce,Je){var nt=De.gl;if((ce===De.projectHasAlpha||Je)&&be(Ue,De,ye,qe),ce===De.hasAlpha||Je){Me.bind();var gt=Me.uniforms;gt.model=ye.model||_,gt.view=ye.view||_,gt.projection=ye.projection||_,P[0]=2/nt.drawingBufferWidth,P[1]=2/nt.drawingBufferHeight,gt.screenSize=P,gt.highlightId=De.highlightId,gt.highlightScale=De.highlightScale,gt.fragClipBounds=de,gt.clipBounds=De.axes.bounds,gt.opacity=De.opacity,gt.pickGroup=De.pickId/255,gt.pixelRatio=qe,De.vao.bind(),De.vao.draw(nt.TRIANGLES,De.vertexCount),De.lineWidth>0&&(nt.lineWidth(De.lineWidth*qe),De.vao.draw(nt.LINES,De.lineVertexCount,De.vertexCount)),De.vao.unbind()}}m.draw=function(Me){var Ue=this.useOrtho?this.orthoShader:this.shader;te(Ue,this.projectShader,this,Me,this.pixelRatio,!1,!1)},m.drawTransparent=function(Me){var Ue=this.useOrtho?this.orthoShader:this.shader;te(Ue,this.projectShader,this,Me,this.pixelRatio,!0,!1)},m.drawPick=function(Me){var Ue=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;te(Ue,this.pickProjectShader,this,Me,1,!0,!0)},m.pick=function(Me){if(!Me||Me.id!==this.pickId)return null;var Ue=Me.value[2]+(Me.value[1]<<8)+(Me.value[0]<<16);if(Ue>=this.pointCount||Ue<0)return null;var De=this.points[Ue],ye=this._selectResult;ye.index=Ue;for(var qe=0;qe<3;++qe)ye.position[qe]=ye.dataCoordinate[qe]=De[qe];return ye},m.highlight=function(Me){if(!Me)this.highlightId=[1,1,1,1];else{var Ue=Me.index,De=Ue&255,ye=Ue>>8&255,qe=Ue>>16&255;this.highlightId=[De/255,ye/255,qe/255,0]}};function ke(Me,Ue,De,ye){var qe;E(Me)?Ue0){var Ut=0,Re=Et,xe=[0,0,0,1],Oe=[0,0,0,1],Ie=E(Ct)&&E(Ct[0]),Fe=E(Dt)&&E(Dt[0]);e:for(var ye=0;ye0?1-et[0][0]:zt<0?1+et[1][0]:1,rr*=rr>0?1-et[0][1]:rr<0?1+et[1][1]:1;for(var Gr=[zt,rr],Di=He.cells||[],ni=He.positions||[],vt=0;vt=f?(L=v,p+=1,p0?1:0}},8648:function(i,a,o){i.exports=o(783)},8692:function(i){i.exports=a;function a(o,s,u,l){var f=u[0],c=u[1],h=s[0]-f,d=s[1]-c,p=Math.sin(l),_=Math.cos(l);return o[0]=f+h*_-d*p,o[1]=c+h*p+d*_,o[2]=s[2],o}},8697:function(i,a,o){"use strict";var s=o(869);i.exports=u;function u(l,f){return s(l[0].mul(f[1]),l[1].mul(f[0]))}},8731:function(i,a,o){"use strict";i.exports=d;var s=o(8866);function u(p,_,b,v,k,E){this._gl=p,this._wrapper=_,this._index=b,this._locations=v,this._dimension=k,this._constFunc=E}var l=u.prototype;l.pointer=function(_,b,v,k){var E=this,A=E._gl,L=E._locations[E._index];A.vertexAttribPointer(L,E._dimension,_||A.FLOAT,!!b,v||0,k||0),A.enableVertexAttribArray(L)},l.set=function(p,_,b,v){return this._constFunc(this._locations[this._index],p,_,b,v)},Object.defineProperty(l,"location",{get:function(){return this._locations[this._index]},set:function(p){return p!==this._locations[this._index]&&(this._locations[this._index]=p|0,this._wrapper.program=null),p|0}});var f=[function(p,_,b){return b.length===void 0?p.vertexAttrib1f(_,b):p.vertexAttrib1fv(_,b)},function(p,_,b,v){return b.length===void 0?p.vertexAttrib2f(_,b,v):p.vertexAttrib2fv(_,b)},function(p,_,b,v,k){return b.length===void 0?p.vertexAttrib3f(_,b,v,k):p.vertexAttrib3fv(_,b)},function(p,_,b,v,k,E){return b.length===void 0?p.vertexAttrib4f(_,b,v,k,E):p.vertexAttrib4fv(_,b)}];function c(p,_,b,v,k,E,A){var L=f[k],x=new u(p,_,b,v,k,L);Object.defineProperty(E,A,{set:function(C){return p.disableVertexAttribArray(v[b]),L(p,v[b],C),C},get:function(){return x},enumerable:!0})}function h(p,_,b,v,k,E,A){for(var L=new Array(k),x=new Array(k),C=0;C=0){var m=C.charCodeAt(C.length-1)-48;if(m<2||m>4)throw new s("","Invalid data type for attribute "+x+": "+C);c(p,_,M[0],v,m,k,x)}else if(C.indexOf("mat")>=0){var m=C.charCodeAt(C.length-1)-48;if(m<2||m>4)throw new s("","Invalid data type for attribute "+x+": "+C);h(p,_,M,v,m,k,x)}else throw new s("","Unknown data type for attribute "+x+": "+C);break}}return k}},8828:function(i,a){"use strict";"use restrict";var o=32;a.INT_BITS=o,a.INT_MAX=2147483647,a.INT_MIN=-1<0)-(l<0)},a.abs=function(l){var f=l>>o-1;return(l^f)-f},a.min=function(l,f){return f^(l^f)&-(l65535)<<4,l>>>=f,c=(l>255)<<3,l>>>=c,f|=c,c=(l>15)<<2,l>>>=c,f|=c,c=(l>3)<<1,l>>>=c,f|=c,f|l>>1},a.log10=function(l){return l>=1e9?9:l>=1e8?8:l>=1e7?7:l>=1e6?6:l>=1e5?5:l>=1e4?4:l>=1e3?3:l>=100?2:l>=10?1:0},a.popCount=function(l){return l=l-(l>>>1&1431655765),l=(l&858993459)+(l>>>2&858993459),(l+(l>>>4)&252645135)*16843009>>>24};function s(l){var f=32;return l&=-l,l&&f--,l&65535&&(f-=16),l&16711935&&(f-=8),l&252645135&&(f-=4),l&858993459&&(f-=2),l&1431655765&&(f-=1),f}a.countTrailingZeros=s,a.nextPow2=function(l){return l+=l===0,--l,l|=l>>>1,l|=l>>>2,l|=l>>>4,l|=l>>>8,l|=l>>>16,l+1},a.prevPow2=function(l){return l|=l>>>1,l|=l>>>2,l|=l>>>4,l|=l>>>8,l|=l>>>16,l-(l>>>1)},a.parity=function(l){return l^=l>>>16,l^=l>>>8,l^=l>>>4,l&=15,27030>>>l&1};var u=new Array(256);(function(l){for(var f=0;f<256;++f){var c=f,h=f,d=7;for(c>>>=1;c;c>>>=1)h<<=1,h|=c&1,--d;l[f]=h<>>8&255]<<16|u[l>>>16&255]<<8|u[l>>>24&255]},a.interleave2=function(l,f){return l&=65535,l=(l|l<<8)&16711935,l=(l|l<<4)&252645135,l=(l|l<<2)&858993459,l=(l|l<<1)&1431655765,f&=65535,f=(f|f<<8)&16711935,f=(f|f<<4)&252645135,f=(f|f<<2)&858993459,f=(f|f<<1)&1431655765,l|f<<1},a.deinterleave2=function(l,f){return l=l>>>f&1431655765,l=(l|l>>>1)&858993459,l=(l|l>>>2)&252645135,l=(l|l>>>4)&16711935,l=(l|l>>>16)&65535,l<<16>>16},a.interleave3=function(l,f,c){return l&=1023,l=(l|l<<16)&4278190335,l=(l|l<<8)&251719695,l=(l|l<<4)&3272356035,l=(l|l<<2)&1227133513,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,l|=f<<1,c&=1023,c=(c|c<<16)&4278190335,c=(c|c<<8)&251719695,c=(c|c<<4)&3272356035,c=(c|c<<2)&1227133513,l|c<<2},a.deinterleave3=function(l,f){return l=l>>>f&1227133513,l=(l|l>>>2)&3272356035,l=(l|l>>>4)&251719695,l=(l|l>>>8)&4278190335,l=(l|l>>>16)&1023,l<<22>>22},a.nextCombination=function(l){var f=l|l-1;return f+1|(~f&-~f)-1>>>s(l)+1}},8866:function(i){function a(o,s,u){this.shortMessage=s||"",this.longMessage=u||"",this.rawError=o||"",this.message="gl-shader: "+(s||o||"")+(u?` -`+u:""),this.stack=new Error().stack}a.prototype=new Error,a.prototype.name="GLError",a.prototype.constructor=a,i.exports=a},8902:function(i,a,o){"use strict";var s=o(2478),u=o(3250)[3],l=0,f=1,c=2;i.exports=A;function h(L,x,C,M,m){this.a=L,this.b=x,this.idx=C,this.lowerIds=M,this.upperIds=m}function d(L,x,C,M){this.a=L,this.b=x,this.type=C,this.idx=M}function p(L,x){var C=L.a[0]-x.a[0]||L.a[1]-x.a[1]||L.type-x.type;return C||L.type!==l&&(C=u(L.a,L.b,x.b),C)?C:L.idx-x.idx}function _(L,x){return u(L.a,L.b,x)}function b(L,x,C,M,m){for(var P=s.lt(x,M,_),T=s.gt(x,M,_),B=P;B1&&u(C[U[j-2]],C[U[j-1]],M)>0;)L.push([U[j-1],U[j-2],m]),j-=1;U.length=j,U.push(m);for(var G=F.upperIds,j=G.length;j>1&&u(C[G[j-2]],C[G[j-1]],M)<0;)L.push([G[j-2],G[j-1],m]),j-=1;G.length=j,G.push(m)}}function v(L,x){var C;return L.a[0]F[0]&&m.push(new d(F,B,c,P),new d(B,F,f,P))}m.sort(p);for(var U=m[0].a[0]-(1+Math.abs(m[0].a[0]))*Math.pow(2,-52),G=[new h([U,1],[U,0],-1,[],[],[],[])],j=[],P=0,H=m.length;P0;){k=M.pop();for(var m=k.adjacent,P=0;P<=A;++P){var T=m[P];if(!(!T.boundary||T.lastVisited<=-L)){for(var B=T.vertices,F=0;F<=A;++F){var U=B[F];U<0?x[F]=E:x[F]=C[U]}var G=this.orient();if(G>0)return T;T.lastVisited=-L,G===0&&M.push(T)}}}return null},b.walk=function(k,E){var A=this.vertices.length-1,L=this.dimension,x=this.vertices,C=this.tuple,M=E?this.interior.length*Math.random()|0:this.interior.length-1,m=this.interior[M];e:for(;!m.boundary;){for(var P=m.vertices,T=m.adjacent,B=0;B<=L;++B)C[B]=x[P[B]];m.lastVisited=A;for(var B=0;B<=L;++B){var F=T[B];if(!(F.lastVisited>=A)){var U=C[B];C[B]=k;var G=this.orient();if(C[B]=U,G<0){m=F;continue e}else F.boundary?F.lastVisited=-A:F.lastVisited=A}}return}return m},b.addPeaks=function(k,E){var A=this.vertices.length-1,L=this.dimension,x=this.vertices,C=this.tuple,M=this.interior,m=this.simplices,P=[E];E.lastVisited=A,E.vertices[E.vertices.indexOf(-1)]=A,E.boundary=!1,M.push(E);for(var T=[];P.length>0;){var E=P.pop(),B=E.vertices,F=E.adjacent,U=B.indexOf(A);if(!(U<0)){for(var G=0;G<=L;++G)if(G!==U){var j=F[G];if(!(!j.boundary||j.lastVisited>=A)){var H=j.vertices;if(j.lastVisited!==-A){for(var N=0,W=0;W<=L;++W)H[W]<0?(N=W,C[W]=k):C[W]=x[H[W]];var re=this.orient();if(re>0){H[N]=A,j.boundary=!1,M.push(j),P.push(j),j.lastVisited=A;continue}else j.lastVisited=-A}var ae=j.adjacent,be=B.slice(),ze=F.slice(),Ce=new l(be,ze,!0);m.push(Ce);var de=ae.indexOf(E);if(!(de<0)){ae[de]=Ce,ze[U]=j,be[G]=-1,ze[G]=E,F[G]=Ce,Ce.flip();for(var W=0;W<=L;++W){var te=be[W];if(!(te<0||te===A)){for(var ke=new Array(L-1),Ee=0,Me=0;Me<=L;++Me){var Ue=be[Me];Ue<0||Me===W||(ke[Ee++]=Ue)}T.push(new f(ke,Ce,W))}}}}}}}T.sort(c);for(var G=0;G+1=0?M[P++]=m[B]:T=B&1;if(T===(k&1)){var F=M[0];M[0]=M[1],M[1]=F}E.push(M)}}return E};function v(k,E){var A=k.length;if(A===0)throw new Error("Must have at least d+1 points");var L=k[0].length;if(A<=L)throw new Error("Must input at least d+1 points");var x=k.slice(0,L+1),C=s.apply(void 0,x);if(C===0)throw new Error("Input not in general position");for(var M=new Array(L+1),m=0;m<=L;++m)M[m]=m;C<0&&(M[0]=1,M[1]=0);for(var P=new l(M,new Array(L+1),!1),T=P.adjacent,B=new Array(L+2),m=0;m<=L;++m){for(var F=M.slice(),U=0;U<=L;++U)U===m&&(F[U]=-1);var G=F[0];F[0]=F[1],F[1]=G;var j=new l(F,new Array(L+1),!0);T[m]=j,B[m]=j}B[L+1]=P;for(var m=0;m<=L;++m)for(var F=T[m].vertices,H=T[m].adjacent,U=0;U<=L;++U){var N=F[U];if(N<0){H[U]=P;continue}for(var W=0;W<=L;++W)T[W].vertices.indexOf(N)<0&&(H[U]=T[W])}for(var re=new _(L,x,B),ae=!!E,m=L+1;m=1},v.isTransparent=function(){return this.opacity<1},v.pickSlots=1,v.setPickBase=function(C){this.pickId=C};function k(C){for(var M=p({colormap:C,nshades:256,format:"rgba"}),m=new Uint8Array(256*4),P=0;P<256;++P){for(var T=M[P],B=0;B<3;++B)m[4*P+B]=T[B];m[4*P+3]=T[3]*255}return d(m,[256,256,4],[4,0,1])}function E(C){for(var M=C.length,m=new Array(M),P=0;P0){var W=this.triShader;W.bind(),W.uniforms=U,this.triangleVAO.bind(),M.drawArrays(M.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},v.drawPick=function(C){C=C||{};for(var M=this.gl,m=C.model||_,P=C.view||_,T=C.projection||_,B=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],F=0;F<3;++F)B[0][F]=Math.max(B[0][F],this.clipBounds[0][F]),B[1][F]=Math.min(B[1][F],this.clipBounds[1][F]);this._model=[].slice.call(m),this._view=[].slice.call(P),this._projection=[].slice.call(T),this._resolution=[M.drawingBufferWidth,M.drawingBufferHeight];var U={model:m,view:P,projection:T,clipBounds:B,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},G=this.pickShader;G.bind(),G.uniforms=U,this.triangleCount>0&&(this.triangleVAO.bind(),M.drawArrays(M.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},v.pick=function(C){if(!C||C.id!==this.pickId)return null;var M=C.value[0]+256*C.value[1]+65536*C.value[2],m=this.cells[M],P=this.positions[m[1]].slice(0,3),T={position:P,dataCoordinate:P,index:Math.floor(m[1]/48)};return this.traceType==="cone"?T.index=Math.floor(m[1]/48):this.traceType==="streamtube"&&(T.intensity=this.intensity[m[1]],T.velocity=this.vectors[m[1]].slice(0,3),T.divergence=this.vectors[m[1]][3],T.index=M),T},v.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()};function A(C,M){var m=s(C,M.meshShader.vertex,M.meshShader.fragment,null,M.meshShader.attributes);return m.attributes.position.location=0,m.attributes.color.location=2,m.attributes.uv.location=3,m.attributes.vector.location=4,m}function L(C,M){var m=s(C,M.pickShader.vertex,M.pickShader.fragment,null,M.pickShader.attributes);return m.attributes.position.location=0,m.attributes.id.location=1,m.attributes.vector.location=4,m}function x(C,M,m){var P=m.shaders;arguments.length===1&&(M=C,C=M.gl);var T=A(C,P),B=L(C,P),F=f(C,d(new Uint8Array([255,255,255,255]),[1,1,4]));F.generateMipmap(),F.minFilter=C.LINEAR_MIPMAP_LINEAR,F.magFilter=C.LINEAR;var U=u(C),G=u(C),j=u(C),H=u(C),N=u(C),W=l(C,[{buffer:U,type:C.FLOAT,size:4},{buffer:N,type:C.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:j,type:C.FLOAT,size:4},{buffer:H,type:C.FLOAT,size:2},{buffer:G,type:C.FLOAT,size:4}]),re=new b(C,F,T,B,U,G,N,j,H,W,m.traceType||"cone");return re.update(M),re}i.exports=x},9127:function(i,a,o){"use strict";i.exports=l;var s=o(6204),u=o(5771);function l(f){return u(s(f))}},9131:function(i,a,o){var s=o(5177),u=o(9288);i.exports=l;function l(f,c){return c=c||1,f[0]=Math.random(),f[1]=Math.random(),f[2]=Math.random(),f[3]=Math.random(),s(f,f),u(f,f,c),f}},9165:function(i,a,o){"use strict";i.exports=b;var s=o(2762),u=o(8116),l=o(3436),f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function c(v,k,E,A){this.gl=v,this.shader=A,this.buffer=k,this.vao=E,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var h=c.prototype;h.isOpaque=function(){return!this.hasAlpha},h.isTransparent=function(){return this.hasAlpha},h.drawTransparent=h.draw=function(v){var k=this.gl,E=this.shader.uniforms;this.shader.bind();var A=E.view=v.view||f,L=E.projection=v.projection||f;E.model=v.model||f,E.clipBounds=this.clipBounds,E.opacity=this.opacity;var x=A[12],C=A[13],M=A[14],m=A[15],P=v._ortho||!1,T=P?2:1,B=T*this.pixelRatio*(L[3]*x+L[7]*C+L[11]*M+L[15]*m)/k.drawingBufferHeight;this.vao.bind();for(var F=0;F<3;++F)k.lineWidth(this.lineWidth[F]*this.pixelRatio),E.capSize=this.capSize[F]*B,this.lineCount[F]&&k.drawArrays(k.LINES,this.lineOffset[F],this.lineCount[F]);this.vao.unbind()};function d(v,k){for(var E=0;E<3;++E)v[0][E]=Math.min(v[0][E],k[E]),v[1][E]=Math.max(v[1][E],k[E])}var p=function(){for(var v=new Array(3),k=0;k<3;++k){for(var E=[],A=1;A<=2;++A)for(var L=-1;L<=1;L+=2){var x=(A+k)%3,C=[0,0,0];C[x]=L,E.push(C)}v[k]=E}return v}();function _(v,k,E,A){for(var L=p[A],x=0;x0){var U=P.slice();U[M]+=B[1][M],L.push(P[0],P[1],P[2],F[0],F[1],F[2],F[3],0,0,0,U[0],U[1],U[2],F[0],F[1],F[2],F[3],0,0,0),d(this.bounds,U),C+=2+_(L,U,F,M)}}}this.lineCount[M]=C-this.lineOffset[M]}this.buffer.update(L)}},h.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function b(v){var k=v.gl,E=s(k),A=u(k,[{buffer:E,type:k.FLOAT,size:3,offset:0,stride:40},{buffer:E,type:k.FLOAT,size:4,offset:12,stride:40},{buffer:E,type:k.FLOAT,size:3,offset:28,stride:40}]),L=l(k);L.attributes.position.location=0,L.attributes.color.location=1,L.attributes.offset.location=2;var x=new c(k,E,A,L);return x.update(v),x}},9215:function(i,a,o){"use strict";i.exports=d;var s=o(4769),u=o(2478);function l(p,_,b){return Math.min(_,Math.max(p,b))}function f(p,_,b){this.dimension=p.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var v=0;v=b-1)for(var C=E.length-1,m=p-_[b-1],M=0;M=b-1)for(var x=E.length-1,C=p-_[b-1],M=0;M=0;--b)if(p[--_])return!1;return!0},c.jump=function(p){var _=this.lastT(),b=this.dimension;if(!(p<_||arguments.length!==b+1)){var v=this._state,k=this._velocity,E=v.length-this.dimension,A=this.bounds,L=A[0],x=A[1];this._time.push(_,p);for(var C=0;C<2;++C)for(var M=0;M0;--M)v.push(l(L[M-1],x[M-1],arguments[M])),k.push(0)}},c.push=function(p){var _=this.lastT(),b=this.dimension;if(!(p<_||arguments.length!==b+1)){var v=this._state,k=this._velocity,E=v.length-this.dimension,A=p-_,L=this.bounds,x=L[0],C=L[1],M=A>1e-6?1/A:0;this._time.push(p);for(var m=b;m>0;--m){var P=l(x[m-1],C[m-1],arguments[m]);v.push(P),k.push((P-v[E++])*M)}}},c.set=function(p){var _=this.dimension;if(!(p0;--L)b.push(l(E[L-1],A[L-1],arguments[L])),v.push(0)}},c.move=function(p){var _=this.lastT(),b=this.dimension;if(!(p<=_||arguments.length!==b+1)){var v=this._state,k=this._velocity,E=v.length-this.dimension,A=this.bounds,L=A[0],x=A[1],C=p-_,M=C>1e-6?1/C:0;this._time.push(p);for(var m=b;m>0;--m){var P=arguments[m];v.push(l(L[m-1],x[m-1],v[E++]+P)),k.push(P*M)}}},c.idle=function(p){var _=this.lastT();if(!(p<_)){var b=this.dimension,v=this._state,k=this._velocity,E=v.length-b,A=this.bounds,L=A[0],x=A[1],C=p-_;this._time.push(p);for(var M=b-1;M>=0;--M)v.push(l(L[M],x[M],v[E]+C*k[E])),k.push(0),E+=1}};function h(p){for(var _=new Array(p),b=0;b1&&f.indexOf("Macintosh")!==-1&&f.indexOf("Safari")!==-1&&(c=!0),c}},9226:function(i){i.exports=a;function a(o,s){return o[0]=Math.ceil(s[0]),o[1]=Math.ceil(s[1]),o[2]=Math.ceil(s[2]),o}},9265:function(i){i.exports=a;function a(o,s){return o[0]===s[0]&&o[1]===s[1]&&o[2]===s[2]}},9288:function(i){i.exports=a;function a(o,s,u){return o[0]=s[0]*u,o[1]=s[1]*u,o[2]=s[2]*u,o[3]=s[3]*u,o}},9346:function(i){"use strict";var a=new Float64Array(4),o=new Float64Array(4),s=new Float64Array(4);function u(l,f,c,h,d){a.length=_?(m=1,T=_+2*k+A):(m=-k/_,T=k*m+A)):(m=0,E>=0?(P=0,T=A):-E>=v?(P=1,T=v+2*E+A):(P=-E/v,T=E*P+A));else if(P<0)P=0,k>=0?(m=0,T=A):-k>=_?(m=1,T=_+2*k+A):(m=-k/_,T=k*m+A);else{var B=1/M;m*=B,P*=B,T=m*(_*m+b*P+2*k)+P*(b*m+v*P+2*E)+A}else{var F,U,G,j;m<0?(F=b+k,U=v+E,U>F?(G=U-F,j=_-2*b+v,G>=j?(m=1,P=0,T=_+2*k+A):(m=G/j,P=1-m,T=m*(_*m+b*P+2*k)+P*(b*m+v*P+2*E)+A)):(m=0,U<=0?(P=1,T=v+2*E+A):E>=0?(P=0,T=A):(P=-E/v,T=E*P+A))):P<0?(F=b+E,U=_+k,U>F?(G=U-F,j=_-2*b+v,G>=j?(P=1,m=0,T=v+2*E+A):(P=G/j,m=1-P,T=m*(_*m+b*P+2*k)+P*(b*m+v*P+2*E)+A)):(P=0,U<=0?(m=1,T=_+2*k+A):k>=0?(m=0,T=A):(m=-k/_,T=k*m+A))):(G=v+E-b-k,G<=0?(m=0,P=1,T=v+2*E+A):(j=_-2*b+v,G>=j?(m=1,P=0,T=_+2*k+A):(m=G/j,P=1-m,T=m*(_*m+b*P+2*k)+P*(b*m+v*P+2*E)+A)))}for(var H=1-m-P,p=0;pE)for(v=E;vk)for(v=k;v=0){for(var H=j.type.charAt(j.type.length-1)|0,N=new Array(H),W=0;W=0;)re+=1;U[G]=re}var ae=new Array(E.length);function be(){x.program=f.program(C,x._vref,x._fref,F,U);for(var ze=0;zeDe&&qe>0){var ce=(ye[qe][0]-De)/(ye[qe][0]-ye[qe-1][0]);return ye[qe][1]*(1-ce)+ce*ye[qe-1][1]}}return 1}var W=[0,0,0],re={showSurface:!1,showContour:!1,projections:[T.slice(),T.slice(),T.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function ae(De,ye){var qe,ce,Je,nt=ye.axes&&ye.axes.lastCubeProps.axis||W,gt=ye.showSurface,Nt=ye.showContour;for(qe=0;qe<3;++qe)for(gt=gt||ye.surfaceProject[qe],ce=0;ce<3;++ce)Nt=Nt||ye.contourProject[qe][ce];for(qe=0;qe<3;++qe){var at=re.projections[qe];for(ce=0;ce<16;++ce)at[ce]=0;for(ce=0;ce<4;++ce)at[5*ce]=1;at[5*qe]=0,at[12+qe]=ye.axesBounds[+(nt[qe]>0)][qe],v(at,De.model,at);var Ke=re.clipBounds[qe];for(Je=0;Je<2;++Je)for(ce=0;ce<3;++ce)Ke[Je][ce]=De.clipBounds[Je][ce];Ke[0][qe]=-1e8,Ke[1][qe]=1e8}return re.showSurface=gt,re.showContour=Nt,re}var be={model:T,view:T,projection:T,inverseModel:T.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},ze=T.slice(),Ce=[1,0,0,0,1,0,0,0,1];function de(De,ye){De=De||{};var qe=this.gl;qe.disable(qe.CULL_FACE),this._colorMap.bind(0);var ce=be;ce.model=De.model||T,ce.view=De.view||T,ce.projection=De.projection||T,ce.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],ce.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],ce.objectOffset=this.objectOffset,ce.contourColor=this.contourColor[0],ce.inverseModel=k(ce.inverseModel,ce.model);for(var Je=0;Je<2;++Je)for(var nt=ce.clipBounds[Je],gt=0;gt<3;++gt)nt[gt]=Math.min(Math.max(this.clipBounds[Je][gt],-1e8),1e8);ce.kambient=this.ambientLight,ce.kdiffuse=this.diffuseLight,ce.kspecular=this.specularLight,ce.roughness=this.roughness,ce.fresnel=this.fresnel,ce.opacity=this.opacity,ce.height=0,ce.permutation=Ce,ce.vertexColor=this.vertexColor;var Nt=ze;for(v(Nt,ce.view,ce.model),v(Nt,ce.projection,Nt),k(Nt,Nt),Je=0;Je<3;++Je)ce.eyePosition[Je]=Nt[12+Je]/Nt[15];var at=Nt[15];for(Je=0;Je<3;++Je)at+=this.lightPosition[Je]*Nt[4*Je+3];for(Je=0;Je<3;++Je){var Ke=Nt[12+Je];for(gt=0;gt<3;++gt)Ke+=Nt[4*gt+Je]*this.lightPosition[gt];ce.lightPosition[Je]=Ke/at}var Ct=ae(ce,this);if(Ct.showSurface){for(this._shader.bind(),this._shader.uniforms=ce,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(qe.TRIANGLES,this._vertexCount),Je=0;Je<3;++Je)!this.surfaceProject[Je]||!this.vertexCount||(this._shader.uniforms.model=Ct.projections[Je],this._shader.uniforms.clipBounds=Ct.clipBounds[Je],this._vao.draw(qe.TRIANGLES,this._vertexCount));this._vao.unbind()}if(Ct.showContour){var wt=this._contourShader;ce.kambient=1,ce.kdiffuse=0,ce.kspecular=0,ce.opacity=1,wt.bind(),wt.uniforms=ce;var St=this._contourVAO;for(St.bind(),Je=0;Je<3;++Je)for(wt.uniforms.permutation=F[Je],qe.lineWidth(this.contourWidth[Je]*this.pixelRatio),gt=0;gt>4)/16)/255,Je=Math.floor(ce),nt=ce-Je,gt=ye[1]*(De.value[1]+(De.value[2]&15)/16)/255,Nt=Math.floor(gt),at=gt-Nt;Je+=1,Nt+=1;var Ke=qe.position;Ke[0]=Ke[1]=Ke[2]=0;for(var Ct=0;Ct<2;++Ct)for(var wt=Ct?nt:1-nt,St=0;St<2;++St)for(var Dt=St?at:1-at,Zt=Je+Ct,Et=Nt+St,Te=wt*Dt,ot=0;ot<3;++ot)Ke[ot]+=this._field[ot].get(Zt,Et)*Te;for(var Tt=this._pickResult.level,vt=0;vt<3;++vt)if(Tt[vt]=E.le(this.contourLevels[vt],Ke[vt]),Tt[vt]<0)this.contourLevels[vt].length>0&&(Tt[vt]=0);else if(Tt[vt]Math.abs(He-Ke[vt])&&(Tt[vt]+=1)}for(qe.index[0]=nt<.5?Je:Je+1,qe.index[1]=at<.5?Nt:Nt+1,qe.uv[0]=ce/ye[0],qe.uv[1]=gt/ye[1],ot=0;ot<3;++ot)qe.dataCoordinate[ot]=this._field[ot].get(qe.index[0],qe.index[1]);return qe},H.padField=function(De,ye){var qe=ye.shape.slice(),ce=De.shape.slice();d.assign(De.lo(1,1).hi(qe[0],qe[1]),ye),d.assign(De.lo(1).hi(qe[0],1),ye.hi(qe[0],1)),d.assign(De.lo(1,ce[1]-1).hi(qe[0],1),ye.lo(0,qe[1]-1).hi(qe[0],1)),d.assign(De.lo(0,1).hi(1,qe[1]),ye.hi(1)),d.assign(De.lo(ce[0]-1,1).hi(1,qe[1]),ye.lo(qe[0]-1)),De.set(0,0,ye.get(0,0)),De.set(0,ce[1]-1,ye.get(0,qe[1]-1)),De.set(ce[0]-1,0,ye.get(qe[0]-1,0)),De.set(ce[0]-1,ce[1]-1,ye.get(qe[0]-1,qe[1]-1))};function ke(De,ye){return Array.isArray(De)?[ye(De[0]),ye(De[1]),ye(De[2])]:[ye(De),ye(De),ye(De)]}function Ee(De){return Array.isArray(De)?De.length===3?[De[0],De[1],De[2],1]:[De[0],De[1],De[2],De[3]]:[0,0,0,1]}function Me(De){if(Array.isArray(De)){if(Array.isArray(De))return[Ee(De[0]),Ee(De[1]),Ee(De[2])];var ye=Ee(De);return[ye.slice(),ye.slice(),ye.slice()]}}H.update=function(De){De=De||{},this.objectOffset=De.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in De&&(this.contourWidth=ke(De.contourWidth,Number)),"showContour"in De&&(this.showContour=ke(De.showContour,Boolean)),"showSurface"in De&&(this.showSurface=!!De.showSurface),"contourTint"in De&&(this.contourTint=ke(De.contourTint,Boolean)),"contourColor"in De&&(this.contourColor=Me(De.contourColor)),"contourProject"in De&&(this.contourProject=ke(De.contourProject,function(Vi){return ke(Vi,Boolean)})),"surfaceProject"in De&&(this.surfaceProject=De.surfaceProject),"dynamicColor"in De&&(this.dynamicColor=Me(De.dynamicColor)),"dynamicTint"in De&&(this.dynamicTint=ke(De.dynamicTint,Number)),"dynamicWidth"in De&&(this.dynamicWidth=ke(De.dynamicWidth,Number)),"opacity"in De&&(this.opacity=De.opacity),"opacityscale"in De&&(this.opacityscale=De.opacityscale),"colorBounds"in De&&(this.colorBounds=De.colorBounds),"vertexColor"in De&&(this.vertexColor=De.vertexColor?1:0),"colormap"in De&&this._colorMap.setPixels(this.genColormap(De.colormap,this.opacityscale));var ye=De.field||De.coords&&De.coords[2]||null,qe=!1;if(ye||(this._field[2].shape[0]||this._field[2].shape[2]?ye=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):ye=this._field[2].hi(0,0)),"field"in De||"coords"in De){var ce=(ye.shape[0]+2)*(ye.shape[1]+2);ce>this._field[2].data.length&&(c.freeFloat(this._field[2].data),this._field[2].data=c.mallocFloat(s.nextPow2(ce))),this._field[2]=_(this._field[2].data,[ye.shape[0]+2,ye.shape[1]+2]),this.padField(this._field[2],ye),this.shape=ye.shape.slice();for(var Je=this.shape,nt=0;nt<2;++nt)this._field[2].size>this._field[nt].data.length&&(c.freeFloat(this._field[nt].data),this._field[nt].data=c.mallocFloat(this._field[2].size)),this._field[nt]=_(this._field[nt].data,[Je[0]+2,Je[1]+2]);if(De.coords){var gt=De.coords;if(!Array.isArray(gt)||gt.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(nt=0;nt<2;++nt){var Nt=gt[nt];for(St=0;St<2;++St)if(Nt.shape[St]!==Je[St])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[nt],Nt)}}else if(De.ticks){var at=De.ticks;if(!Array.isArray(at)||at.length!==2)throw new Error("gl-surface: invalid ticks");for(nt=0;nt<2;++nt){var Ke=at[nt];if((Array.isArray(Ke)||Ke.length)&&(Ke=_(Ke)),Ke.shape[0]!==Je[nt])throw new Error("gl-surface: invalid tick length");var Ct=_(Ke.data,Je);Ct.stride[nt]=Ke.stride[0],Ct.stride[nt^1]=0,this.padField(this._field[nt],Ct)}}else{for(nt=0;nt<2;++nt){var wt=[0,0];wt[nt]=1,this._field[nt]=_(this._field[nt].data,[Je[0]+2,Je[1]+2],wt,0)}this._field[0].set(0,0,0);for(var St=0;St0){for(var gi=0;gi<5;++gi)Br.pop();Ie-=1}continue e}}}Di.push(Ie)}this._contourOffsets[Er]=pi,this._contourCounts[Er]=Di}var ki=c.mallocFloat(Br.length);for(nt=0;nt=0&&(M=x|0,C+=P*M,m-=M),new E(this.data,m,P,C)},A.step=function(x){var C=this.shape[0],M=this.stride[0],m=this.offset,P=0,T=Math.ceil;return typeof x=="number"&&(P=x|0,P<0?(m+=M*(C-1),C=T(-C/P)):C=T(C/P),M*=P),new E(this.data,C,M,m)},A.transpose=function(x){x=x===void 0?0:x|0;var C=this.shape,M=this.stride;return new E(this.data,C[x],M[x],this.offset)},A.pick=function(x){var C=[],M=[],m=this.offset;typeof x=="number"&&x>=0?m=m+this.stride[0]*x|0:(C.push(this.shape[0]),M.push(this.stride[0]));var P=v[C.length+1];return P(this.data,C,M,m)},function(x,C,M,m){return new E(x,C[0],M[0],m)}},2:function(b,v,k){function E(L,x,C,M,m,P){this.data=L,this.shape=[x,C],this.stride=[M,m],this.offset=P|0}var A=E.prototype;return A.dtype=b,A.dimension=2,Object.defineProperty(A,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(A,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),A.set=function(x,C,M){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C,M):this.data[this.offset+this.stride[0]*x+this.stride[1]*C]=M},A.get=function(x,C){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C):this.data[this.offset+this.stride[0]*x+this.stride[1]*C]},A.index=function(x,C){return this.offset+this.stride[0]*x+this.stride[1]*C},A.hi=function(x,C){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,this.stride[0],this.stride[1],this.offset)},A.lo=function(x,C){var M=this.offset,m=0,P=this.shape[0],T=this.shape[1],B=this.stride[0],F=this.stride[1];return typeof x=="number"&&x>=0&&(m=x|0,M+=B*m,P-=m),typeof C=="number"&&C>=0&&(m=C|0,M+=F*m,T-=m),new E(this.data,P,T,B,F,M)},A.step=function(x,C){var M=this.shape[0],m=this.shape[1],P=this.stride[0],T=this.stride[1],B=this.offset,F=0,U=Math.ceil;return typeof x=="number"&&(F=x|0,F<0?(B+=P*(M-1),M=U(-M/F)):M=U(M/F),P*=F),typeof C=="number"&&(F=C|0,F<0?(B+=T*(m-1),m=U(-m/F)):m=U(m/F),T*=F),new E(this.data,M,m,P,T,B)},A.transpose=function(x,C){x=x===void 0?0:x|0,C=C===void 0?1:C|0;var M=this.shape,m=this.stride;return new E(this.data,M[x],M[C],m[x],m[C],this.offset)},A.pick=function(x,C){var M=[],m=[],P=this.offset;typeof x=="number"&&x>=0?P=P+this.stride[0]*x|0:(M.push(this.shape[0]),m.push(this.stride[0])),typeof C=="number"&&C>=0?P=P+this.stride[1]*C|0:(M.push(this.shape[1]),m.push(this.stride[1]));var T=v[M.length+1];return T(this.data,M,m,P)},function(x,C,M,m){return new E(x,C[0],C[1],M[0],M[1],m)}},3:function(b,v,k){function E(L,x,C,M,m,P,T,B){this.data=L,this.shape=[x,C,M],this.stride=[m,P,T],this.offset=B|0}var A=E.prototype;return A.dtype=b,A.dimension=3,Object.defineProperty(A,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(A,"order",{get:function(){var x=Math.abs(this.stride[0]),C=Math.abs(this.stride[1]),M=Math.abs(this.stride[2]);return x>C?C>M?[2,1,0]:x>M?[1,2,0]:[1,0,2]:x>M?[2,0,1]:M>C?[0,1,2]:[0,2,1]}}),A.set=function(x,C,M,m){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M,m):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M]=m},A.get=function(x,C,M){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M]},A.index=function(x,C,M){return this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M},A.hi=function(x,C,M){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,typeof M!="number"||M<0?this.shape[2]:M|0,this.stride[0],this.stride[1],this.stride[2],this.offset)},A.lo=function(x,C,M){var m=this.offset,P=0,T=this.shape[0],B=this.shape[1],F=this.shape[2],U=this.stride[0],G=this.stride[1],j=this.stride[2];return typeof x=="number"&&x>=0&&(P=x|0,m+=U*P,T-=P),typeof C=="number"&&C>=0&&(P=C|0,m+=G*P,B-=P),typeof M=="number"&&M>=0&&(P=M|0,m+=j*P,F-=P),new E(this.data,T,B,F,U,G,j,m)},A.step=function(x,C,M){var m=this.shape[0],P=this.shape[1],T=this.shape[2],B=this.stride[0],F=this.stride[1],U=this.stride[2],G=this.offset,j=0,H=Math.ceil;return typeof x=="number"&&(j=x|0,j<0?(G+=B*(m-1),m=H(-m/j)):m=H(m/j),B*=j),typeof C=="number"&&(j=C|0,j<0?(G+=F*(P-1),P=H(-P/j)):P=H(P/j),F*=j),typeof M=="number"&&(j=M|0,j<0?(G+=U*(T-1),T=H(-T/j)):T=H(T/j),U*=j),new E(this.data,m,P,T,B,F,U,G)},A.transpose=function(x,C,M){x=x===void 0?0:x|0,C=C===void 0?1:C|0,M=M===void 0?2:M|0;var m=this.shape,P=this.stride;return new E(this.data,m[x],m[C],m[M],P[x],P[C],P[M],this.offset)},A.pick=function(x,C,M){var m=[],P=[],T=this.offset;typeof x=="number"&&x>=0?T=T+this.stride[0]*x|0:(m.push(this.shape[0]),P.push(this.stride[0])),typeof C=="number"&&C>=0?T=T+this.stride[1]*C|0:(m.push(this.shape[1]),P.push(this.stride[1])),typeof M=="number"&&M>=0?T=T+this.stride[2]*M|0:(m.push(this.shape[2]),P.push(this.stride[2]));var B=v[m.length+1];return B(this.data,m,P,T)},function(x,C,M,m){return new E(x,C[0],C[1],C[2],M[0],M[1],M[2],m)}},4:function(b,v,k){function E(L,x,C,M,m,P,T,B,F,U){this.data=L,this.shape=[x,C,M,m],this.stride=[P,T,B,F],this.offset=U|0}var A=E.prototype;return A.dtype=b,A.dimension=4,Object.defineProperty(A,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(A,"order",{get:k}),A.set=function(x,C,M,m,P){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*m,P):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*m]=P},A.get=function(x,C,M,m){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*m):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*m]},A.index=function(x,C,M,m){return this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*m},A.hi=function(x,C,M,m){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,typeof M!="number"||M<0?this.shape[2]:M|0,typeof m!="number"||m<0?this.shape[3]:m|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},A.lo=function(x,C,M,m){var P=this.offset,T=0,B=this.shape[0],F=this.shape[1],U=this.shape[2],G=this.shape[3],j=this.stride[0],H=this.stride[1],N=this.stride[2],W=this.stride[3];return typeof x=="number"&&x>=0&&(T=x|0,P+=j*T,B-=T),typeof C=="number"&&C>=0&&(T=C|0,P+=H*T,F-=T),typeof M=="number"&&M>=0&&(T=M|0,P+=N*T,U-=T),typeof m=="number"&&m>=0&&(T=m|0,P+=W*T,G-=T),new E(this.data,B,F,U,G,j,H,N,W,P)},A.step=function(x,C,M,m){var P=this.shape[0],T=this.shape[1],B=this.shape[2],F=this.shape[3],U=this.stride[0],G=this.stride[1],j=this.stride[2],H=this.stride[3],N=this.offset,W=0,re=Math.ceil;return typeof x=="number"&&(W=x|0,W<0?(N+=U*(P-1),P=re(-P/W)):P=re(P/W),U*=W),typeof C=="number"&&(W=C|0,W<0?(N+=G*(T-1),T=re(-T/W)):T=re(T/W),G*=W),typeof M=="number"&&(W=M|0,W<0?(N+=j*(B-1),B=re(-B/W)):B=re(B/W),j*=W),typeof m=="number"&&(W=m|0,W<0?(N+=H*(F-1),F=re(-F/W)):F=re(F/W),H*=W),new E(this.data,P,T,B,F,U,G,j,H,N)},A.transpose=function(x,C,M,m){x=x===void 0?0:x|0,C=C===void 0?1:C|0,M=M===void 0?2:M|0,m=m===void 0?3:m|0;var P=this.shape,T=this.stride;return new E(this.data,P[x],P[C],P[M],P[m],T[x],T[C],T[M],T[m],this.offset)},A.pick=function(x,C,M,m){var P=[],T=[],B=this.offset;typeof x=="number"&&x>=0?B=B+this.stride[0]*x|0:(P.push(this.shape[0]),T.push(this.stride[0])),typeof C=="number"&&C>=0?B=B+this.stride[1]*C|0:(P.push(this.shape[1]),T.push(this.stride[1])),typeof M=="number"&&M>=0?B=B+this.stride[2]*M|0:(P.push(this.shape[2]),T.push(this.stride[2])),typeof m=="number"&&m>=0?B=B+this.stride[3]*m|0:(P.push(this.shape[3]),T.push(this.stride[3]));var F=v[P.length+1];return F(this.data,P,T,B)},function(x,C,M,m){return new E(x,C[0],C[1],C[2],C[3],M[0],M[1],M[2],M[3],m)}},5:function(v,k,E){function A(x,C,M,m,P,T,B,F,U,G,j,H){this.data=x,this.shape=[C,M,m,P,T],this.stride=[B,F,U,G,j],this.offset=H|0}var L=A.prototype;return L.dtype=v,L.dimension=5,Object.defineProperty(L,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(L,"order",{get:E}),L.set=function(C,M,m,P,T,B){return v==="generic"?this.data.set(this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*m+this.stride[3]*P+this.stride[4]*T,B):this.data[this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*m+this.stride[3]*P+this.stride[4]*T]=B},L.get=function(C,M,m,P,T){return v==="generic"?this.data.get(this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*m+this.stride[3]*P+this.stride[4]*T):this.data[this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*m+this.stride[3]*P+this.stride[4]*T]},L.index=function(C,M,m,P,T){return this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*m+this.stride[3]*P+this.stride[4]*T},L.hi=function(C,M,m,P,T){return new A(this.data,typeof C!="number"||C<0?this.shape[0]:C|0,typeof M!="number"||M<0?this.shape[1]:M|0,typeof m!="number"||m<0?this.shape[2]:m|0,typeof P!="number"||P<0?this.shape[3]:P|0,typeof T!="number"||T<0?this.shape[4]:T|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},L.lo=function(C,M,m,P,T){var B=this.offset,F=0,U=this.shape[0],G=this.shape[1],j=this.shape[2],H=this.shape[3],N=this.shape[4],W=this.stride[0],re=this.stride[1],ae=this.stride[2],be=this.stride[3],ze=this.stride[4];return typeof C=="number"&&C>=0&&(F=C|0,B+=W*F,U-=F),typeof M=="number"&&M>=0&&(F=M|0,B+=re*F,G-=F),typeof m=="number"&&m>=0&&(F=m|0,B+=ae*F,j-=F),typeof P=="number"&&P>=0&&(F=P|0,B+=be*F,H-=F),typeof T=="number"&&T>=0&&(F=T|0,B+=ze*F,N-=F),new A(this.data,U,G,j,H,N,W,re,ae,be,ze,B)},L.step=function(C,M,m,P,T){var B=this.shape[0],F=this.shape[1],U=this.shape[2],G=this.shape[3],j=this.shape[4],H=this.stride[0],N=this.stride[1],W=this.stride[2],re=this.stride[3],ae=this.stride[4],be=this.offset,ze=0,Ce=Math.ceil;return typeof C=="number"&&(ze=C|0,ze<0?(be+=H*(B-1),B=Ce(-B/ze)):B=Ce(B/ze),H*=ze),typeof M=="number"&&(ze=M|0,ze<0?(be+=N*(F-1),F=Ce(-F/ze)):F=Ce(F/ze),N*=ze),typeof m=="number"&&(ze=m|0,ze<0?(be+=W*(U-1),U=Ce(-U/ze)):U=Ce(U/ze),W*=ze),typeof P=="number"&&(ze=P|0,ze<0?(be+=re*(G-1),G=Ce(-G/ze)):G=Ce(G/ze),re*=ze),typeof T=="number"&&(ze=T|0,ze<0?(be+=ae*(j-1),j=Ce(-j/ze)):j=Ce(j/ze),ae*=ze),new A(this.data,B,F,U,G,j,H,N,W,re,ae,be)},L.transpose=function(C,M,m,P,T){C=C===void 0?0:C|0,M=M===void 0?1:M|0,m=m===void 0?2:m|0,P=P===void 0?3:P|0,T=T===void 0?4:T|0;var B=this.shape,F=this.stride;return new A(this.data,B[C],B[M],B[m],B[P],B[T],F[C],F[M],F[m],F[P],F[T],this.offset)},L.pick=function(C,M,m,P,T){var B=[],F=[],U=this.offset;typeof C=="number"&&C>=0?U=U+this.stride[0]*C|0:(B.push(this.shape[0]),F.push(this.stride[0])),typeof M=="number"&&M>=0?U=U+this.stride[1]*M|0:(B.push(this.shape[1]),F.push(this.stride[1])),typeof m=="number"&&m>=0?U=U+this.stride[2]*m|0:(B.push(this.shape[2]),F.push(this.stride[2])),typeof P=="number"&&P>=0?U=U+this.stride[3]*P|0:(B.push(this.shape[3]),F.push(this.stride[3])),typeof T=="number"&&T>=0?U=U+this.stride[4]*T|0:(B.push(this.shape[4]),F.push(this.stride[4]));var G=k[B.length+1];return G(this.data,B,F,U)},function(C,M,m,P){return new A(C,M[0],M[1],M[2],M[3],M[4],m[0],m[1],m[2],m[3],m[4],P)}}};function h(b,v){var k=v===-1?"T":String(v),E=c[k];return v===-1?E(b):v===0?E(b,p[b][0]):E(b,p[b],f)}function d(b){if(s(b))return"buffer";if(u)switch(Object.prototype.toString.call(b)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(b)?"array":"generic"}var p={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function _(b,v,k,E){if(b===void 0){var m=p.array[0];return m([])}else typeof b=="number"&&(b=[b]);v===void 0&&(v=[b.length]);var A=v.length;if(k===void 0){k=new Array(A);for(var L=A-1,x=1;L>=0;--L)k[L]=x,x*=v[L]}if(E===void 0){E=0;for(var L=0;L1e-6?(k[0]=A/M,k[1]=L/M,k[2]=x/M,k[3]=C/M):(k[0]=k[1]=k[2]=0,k[3]=1)}function _(k,E,A){this.radius=s([A]),this.center=s(E),this.rotation=s(k),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var b=_.prototype;b.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},b.recalcMatrix=function(k){this.radius.curve(k),this.center.curve(k),this.rotation.curve(k);var E=this.computedRotation;p(E,E);var A=this.computedMatrix;l(A,E);var L=this.computedCenter,x=this.computedEye,C=this.computedUp,M=Math.exp(this.computedRadius[0]);x[0]=L[0]+M*A[2],x[1]=L[1]+M*A[6],x[2]=L[2]+M*A[10],C[0]=A[1],C[1]=A[5],C[2]=A[9];for(var m=0;m<3;++m){for(var P=0,T=0;T<3;++T)P+=A[m+4*T]*x[T];A[12+m]=-P}},b.getMatrix=function(k,E){this.recalcMatrix(k);var A=this.computedMatrix;if(E){for(var L=0;L<16;++L)E[L]=A[L];return E}return A},b.idle=function(k){this.center.idle(k),this.radius.idle(k),this.rotation.idle(k)},b.flush=function(k){this.center.flush(k),this.radius.flush(k),this.rotation.flush(k)},b.pan=function(k,E,A,L){E=E||0,A=A||0,L=L||0,this.recalcMatrix(k);var x=this.computedMatrix,C=x[1],M=x[5],m=x[9],P=h(C,M,m);C/=P,M/=P,m/=P;var T=x[0],B=x[4],F=x[8],U=T*C+B*M+F*m;T-=C*U,B-=M*U,F-=m*U;var G=h(T,B,F);T/=G,B/=G,F/=G;var j=x[2],H=x[6],N=x[10],W=j*C+H*M+N*m,re=j*T+H*B+N*F;j-=W*C+re*T,H-=W*M+re*B,N-=W*m+re*F;var ae=h(j,H,N);j/=ae,H/=ae,N/=ae;var be=T*E+C*A,ze=B*E+M*A,Ce=F*E+m*A;this.center.move(k,be,ze,Ce);var de=Math.exp(this.computedRadius[0]);de=Math.max(1e-4,de+L),this.radius.set(k,Math.log(de))},b.rotate=function(k,E,A,L){this.recalcMatrix(k),E=E||0,A=A||0;var x=this.computedMatrix,C=x[0],M=x[4],m=x[8],P=x[1],T=x[5],B=x[9],F=x[2],U=x[6],G=x[10],j=E*C+A*P,H=E*M+A*T,N=E*m+A*B,W=-(U*N-G*H),re=-(G*j-F*N),ae=-(F*H-U*j),be=Math.sqrt(Math.max(0,1-Math.pow(W,2)-Math.pow(re,2)-Math.pow(ae,2))),ze=d(W,re,ae,be);ze>1e-6?(W/=ze,re/=ze,ae/=ze,be/=ze):(W=re=ae=0,be=1);var Ce=this.computedRotation,de=Ce[0],te=Ce[1],ke=Ce[2],Ee=Ce[3],Me=de*be+Ee*W+te*ae-ke*re,Ue=te*be+Ee*re+ke*W-de*ae,De=ke*be+Ee*ae+de*re-te*W,ye=Ee*be-de*W-te*re-ke*ae;if(L){W=F,re=U,ae=G;var qe=Math.sin(L)/h(W,re,ae);W*=qe,re*=qe,ae*=qe,be=Math.cos(E),Me=Me*be+ye*W+Ue*ae-De*re,Ue=Ue*be+ye*re+De*W-Me*ae,De=De*be+ye*ae+Me*re-Ue*W,ye=ye*be-Me*W-Ue*re-De*ae}var ce=d(Me,Ue,De,ye);ce>1e-6?(Me/=ce,Ue/=ce,De/=ce,ye/=ce):(Me=Ue=De=0,ye=1),this.rotation.set(k,Me,Ue,De,ye)},b.lookAt=function(k,E,A,L){this.recalcMatrix(k),A=A||this.computedCenter,E=E||this.computedEye,L=L||this.computedUp;var x=this.computedMatrix;u(x,E,A,L);var C=this.computedRotation;c(C,x[0],x[1],x[2],x[4],x[5],x[6],x[8],x[9],x[10]),p(C,C),this.rotation.set(k,C[0],C[1],C[2],C[3]);for(var M=0,m=0;m<3;++m)M+=Math.pow(A[m]-E[m],2);this.radius.set(k,.5*Math.log(Math.max(M,1e-6))),this.center.set(k,A[0],A[1],A[2])},b.translate=function(k,E,A,L){this.center.move(k,E||0,A||0,L||0)},b.setMatrix=function(k,E){var A=this.computedRotation;c(A,E[0],E[1],E[2],E[4],E[5],E[6],E[8],E[9],E[10]),p(A,A),this.rotation.set(k,A[0],A[1],A[2],A[3]);var L=this.computedMatrix;f(L,E);var x=L[15];if(Math.abs(x)>1e-6){var C=L[12]/x,M=L[13]/x,m=L[14]/x;this.recalcMatrix(k);var P=Math.exp(this.computedRadius[0]);this.center.set(k,C-L[2]*P,M-L[6]*P,m-L[10]*P),this.radius.idle(k)}else this.center.idle(k),this.radius.idle(k)},b.setDistance=function(k,E){E>0&&this.radius.set(k,Math.log(E))},b.setDistanceLimits=function(k,E){k>0?k=Math.log(k):k=-1/0,E>0?E=Math.log(E):E=1/0,E=Math.max(E,k),this.radius.bounds[0][0]=k,this.radius.bounds[1][0]=E},b.getDistanceLimits=function(k){var E=this.radius.bounds;return k?(k[0]=Math.exp(E[0][0]),k[1]=Math.exp(E[1][0]),k):[Math.exp(E[0][0]),Math.exp(E[1][0])]},b.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},b.fromJSON=function(k){var E=this.lastT(),A=k.center;A&&this.center.set(E,A[0],A[1],A[2]);var L=k.rotation;L&&this.rotation.set(E,L[0],L[1],L[2],L[3]);var x=k.distance;x&&x>0&&this.radius.set(E,Math.log(x)),this.setDistanceLimits(k.zoomMin,k.zoomMax)};function v(k){k=k||{};var E=k.center||[0,0,0],A=k.rotation||[0,0,0,1],L=k.radius||1;E=[].slice.call(E,0,3),A=[].slice.call(A,0,4),p(A,A);var x=new _(A,E,Math.log(L));return x.setDistanceLimits(k.zoomMin,k.zoomMax),("eye"in k||"up"in k)&&x.lookAt(0,k.eye,k.center,k.up),x}},9994:function(i,a,o){"use strict";var s=o(9618),u=o(8277);i.exports=function(f,c){for(var h=[],d=f,p=1;Array.isArray(d);)h.push(d.length),p*=d.length,d=d[0];return h.length===0?s():(c||(c=s(new Float64Array(p),h)),u(c,f),c)}}},t={};function r(i){var a=t[i];if(a!==void 0)return a.exports;var o=t[i]={id:i,loaded:!1,exports:{}};return e[i].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}(function(){r.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch(i){if(typeof window=="object")return window}}()})(),function(){r.nmd=function(i){return i.paths=[],i.children||(i.children=[]),i}}();var n=r(1964);Cze.exports=n})()});var SX=Ae((dyr,Lze)=>{"use strict";Lze.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var Rze=Ae((pyr,Ize)=>{"use strict";var Pze=SX();Ize.exports=qIt;var zze={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function qIt(e){var t,r=[],n=1,i;if(typeof e=="string")if(e=e.toLowerCase(),Pze[e])r=Pze[e].slice(),i="rgb";else if(e==="transparent")n=0,i="rgb",r=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var a=e.slice(1),o=a.length,s=o<=4;n=1,s?(r=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],o===4&&(n=parseInt(a[3]+a[3],16)/255)):(r=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],o===8&&(n=parseInt(a[6]+a[7],16)/255)),r[0]||(r[0]=0),r[1]||(r[1]=0),r[2]||(r[2]=0),i="rgb"}else if(t=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var u=t[1],l=u==="rgb",a=u.replace(/a$/,"");i=a;var o=a==="cmyk"?4:a==="gray"?1:3;r=t[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(h,d){if(/%$/.test(h))return d===o?parseFloat(h)/100:a==="rgb"?parseFloat(h)*255/100:parseFloat(h);if(a[d]==="h"){if(/deg$/.test(h))return parseFloat(h);if(zze[h]!==void 0)return zze[h]}return parseFloat(h)}),u===a&&r.push(1),n=l||r[o]===void 0?1:r[o],r=r.slice(0,o)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(r=e.match(/([0-9]+)/g).map(function(f){return parseFloat(f)}),i=e.match(/([a-z])/ig).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(r=[e[0],e[1],e[2]],i="rgb",n=e.length===4?e[3]:1):e instanceof Object&&(e.r!=null||e.red!=null||e.R!=null?(i="rgb",r=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(i="hsl",r=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),n=e.a||e.alpha||e.opacity||1,e.opacity!=null&&(n/=100)):(i="rgb",r=[e>>>16,(e&65280)>>>8,e&255]);return{space:i,values:r,alpha:n}}});var Fze=Ae((vyr,Dze)=>{"use strict";var NIt=Rze();Dze.exports=function(t){Array.isArray(t)&&t.raw&&(t=String.raw.apply(null,arguments));var r,n,i,a=NIt(t);if(!a.space)return[];var o=[0,0,0],s=a.space[0]==="h"?[360,100,100]:[255,255,255];return r=Array(3),r[0]=Math.min(Math.max(a.values[0],o[0]),s[0]),r[1]=Math.min(Math.max(a.values[1],o[1]),s[1]),r[2]=Math.min(Math.max(a.values[2],o[2]),s[2]),a.space[0]==="h"&&(r=UIt(r)),r.push(Math.min(Math.max(a.alpha,0),1)),r};function UIt(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a,o,s,u,l=0;if(r===0)return u=n*255,[u,u,u];for(a=n<.5?n*(1+r):n+r-n*r,i=2*n-a,s=[0,0,0];l<3;)o=t+1/3*-(l-1),o<0?o++:o>1&&o--,u=6*o<1?i+(a-i)*6*o:2*o<1?a:3*o<2?i+(a-i)*(2/3-o)*6:i,s[l++]=u*255;return s}});var Z4=Ae((myr,Bze)=>{Bze.exports=VIt;function VIt(e,t,r){return tr?r:e:et?t:e}});var Z6=Ae((yyr,Oze)=>{Oze.exports=function(e){switch(e){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}});var J_=Ae((gyr,qze)=>{"use strict";var GIt=Fze(),Y6=Z4(),HIt=Z6();qze.exports=function(t,r){(r==="float"||!r)&&(r="array"),r==="uint"&&(r="uint8"),r==="uint_clamped"&&(r="uint8_clamped");var n=HIt(r),i=new n(4),a=r!=="uint8"&&r!=="uint8_clamped";return(!t.length||typeof t=="string")&&(t=GIt(t),t[0]/=255,t[1]/=255,t[2]/=255),WIt(t)?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:255,a&&(i[0]/=255,i[1]/=255,i[2]/=255,i[3]/=255),i):(a?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:1):(i[0]=Y6(Math.floor(t[0]*255),0,255),i[1]=Y6(Math.floor(t[1]*255),0,255),i[2]=Y6(Math.floor(t[2]*255),0,255),i[3]=t[3]==null?255:Y6(Math.floor(t[3]*255),0,255)),i)};function WIt(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}});var Jg=Ae((_yr,Nze)=>{"use strict";var jIt=J_();function XIt(e){return e?jIt(e):[0,0,0,1]}Nze.exports=XIt});var $g=Ae((xyr,Xze)=>{"use strict";var Wze=ku(),ZIt=cd(),K6=J_(),J6=_c(),YIt=Fh().defaultLine,Uze=mp().isArrayOrTypedArray,MX=K6(YIt),jze=1;function Vze(e,t){var r=e;return r[3]*=t,r}function Gze(e){if(Wze(e))return MX;var t=K6(e);return t.length?t:MX}function Hze(e){return Wze(e)?e:jze}function KIt(e,t,r){var n=e.color;n&&n._inputArray&&(n=n._inputArray);var i=Uze(n),a=Uze(t),o=J6.extractOpts(e),s=[],u,l,f,c,h;if(o.colorscale!==void 0?u=J6.makeColorScaleFuncFromTrace(e):u=Gze,i?l=function(p,_){return p[_]===void 0?MX:K6(u(p[_]))}:l=Gze,a?f=function(p,_){return p[_]===void 0?jze:Hze(p[_])}:f=Hze,i||a)for(var d=0;d{"use strict";Zze.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}});var $6=Ae((wyr,Yze)=>{"use strict";Yze.exports={circle:"\u25CF","circle-open":"\u25CB",square:"\u25A0","square-open":"\u25A1",diamond:"\u25C6","diamond-open":"\u25C7",cross:"+",x:"\u274C"}});var Jze=Ae((Tyr,Kze)=>{"use strict";var $It=$l();function kX(e,t,r,n){if(!t||!t.visible)return null;for(var i=$It.getComponentMethod("errorbars","makeComputeError")(t),a=new Array(e.length),o=0;o0){var c=n.c2l(l);n._lowerLogErrorBound||(n._lowerLogErrorBound=c),n._lowerErrorBound=Math.min(n._lowerLogErrorBound,c)}}else a[o]=[-s[0]*r,s[1]*r]}return a}function QIt(e){for(var t=0;t{"use strict";var tRt=qd().gl_line3d,$ze=qd().gl_scatter3d,rRt=qd().gl_error3d,iRt=qd().gl_mesh3d,nRt=qd().delaunay_triangulate,Qg=ei(),iIe=Jg(),Q6=$g().formatColor,aRt=E3(),CX=EX(),oRt=$6(),sRt=wu(),lRt=iv().appendArrayPointValue,uRt=Jze();function nIe(e,t){this.scene=e,this.uid=t,this.linePlot=null,this.scatterPlot=null,this.errorBars=null,this.textMarkers=null,this.delaunayMesh=null,this.color=null,this.mode="",this.dataPoints=[],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.textLabels=null,this.data=null}var PX=nIe.prototype;PX.handlePick=function(e){if(e.object&&(e.object===this.linePlot||e.object===this.delaunayMesh||e.object===this.textMarkers||e.object===this.scatterPlot)){var t=e.index=e.data.index;return e.object.highlight&&e.object.highlight(null),this.scatterPlot&&(e.object=this.scatterPlot,this.scatterPlot.highlight(e.data)),e.textLabel="",this.textLabels&&(Qg.isArrayOrTypedArray(this.textLabels)?(this.textLabels[t]||this.textLabels[t]===0)&&(e.textLabel=this.textLabels[t]):e.textLabel=this.textLabels),e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]],!0}};function fRt(e,t,r){var n=(r+1)%3,i=(r+2)%3,a=[],o=[],s;for(s=0;s-1?-1:e.indexOf("right")>-1?1:0}function eIe(e){return e==null?0:e.indexOf("top")>-1?-1:e.indexOf("bottom")>-1?1:0}function hRt(e){var t=0,r=0,n=[t,r];if(Array.isArray(e))for(var i=0;i=0){var l=fRt(s.position,s.delaunayColor,s.delaunayAxis);l.opacity=e.opacity,this.delaunayMesh?this.delaunayMesh.update(l):(l.gl=t,this.delaunayMesh=iRt(l),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)};PX.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())};function mRt(e,t){var r=new nIe(e,t.uid);return r.update(t),r}aIe.exports=mRt});var FX=Ae((Syr,fIe)=>{"use strict";var e1=Zc(),yRt=gc(),DX=nc(),zX=jc().axisHoverFormat,{hovertemplateAttrs:gRt,texttemplateAttrs:_Rt,templatefallbackAttrs:sIe}=Ff(),lIe=Gf(),xRt=EX(),bRt=$6(),Ym=Su().extendFlat,wRt=Sc().overrideAll,uIe=Z1(),TRt=e1.line,U2=e1.marker,ARt=U2.line,SRt=Ym({width:TRt.width,dash:{valType:"enumerated",values:uIe(xRt),dflt:"solid"}},DX("line"));function IX(e){return{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}}var RX=fIe.exports=wRt({x:e1.x,y:e1.y,z:{valType:"data_array"},text:Ym({},e1.text,{}),texttemplate:_Rt(),texttemplatefallback:sIe({editType:"calc"}),hovertext:Ym({},e1.hovertext,{}),hovertemplate:gRt(),hovertemplatefallback:sIe(),xhoverformat:zX("x"),yhoverformat:zX("y"),zhoverformat:zX("z"),mode:Ym({},e1.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:IX("x"),y:IX("y"),z:IX("z")},connectgaps:e1.connectgaps,line:SRt,marker:Ym({symbol:{valType:"enumerated",values:uIe(bRt),dflt:"circle",arrayOk:!0},size:Ym({},U2.size,{dflt:8}),sizeref:U2.sizeref,sizemin:U2.sizemin,sizemode:U2.sizemode,opacity:Ym({},U2.opacity,{arrayOk:!1}),colorbar:U2.colorbar,line:Ym({width:Ym({},ARt.width,{arrayOk:!1})},DX("marker.line"))},DX("marker")),textposition:Ym({},e1.textposition,{dflt:"top center"}),textfont:yRt({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"]}),opacity:lIe.opacity,hoverinfo:Ym({},lIe.hoverinfo)},"calc","nested");RX.x.editType=RX.y.editType=RX.z.editType="calc+clearAxisTypes"});var dIe=Ae((Myr,hIe)=>{"use strict";var cIe=$l(),MRt=ei(),BX=lc(),ERt=$v(),kRt=I0(),CRt=R0(),LRt=FX();hIe.exports=function(t,r,n,i){function a(d,p){return MRt.coerce(t,r,LRt,d,p)}var o=PRt(t,r,a,i);if(!o){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),a("mode"),BX.hasMarkers(r)&&ERt(t,r,n,i,a,{noSelect:!0,noAngle:!0}),BX.hasLines(r)&&(a("connectgaps"),kRt(t,r,n,i,a)),BX.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),CRt(t,r,i,a,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var s=(r.line||{}).color,u=(r.marker||{}).color;a("surfaceaxis")>=0&&a("surfacecolor",s||u);for(var l=["x","y","z"],f=0;f<3;++f){var c="projection."+l[f];a(c+".show")&&(a(c+".opacity"),a(c+".scale"))}var h=cIe.getComponentMethod("errorbars","supplyDefaults");h(t,r,s||u||n,{axis:"z"}),h(t,r,s||u||n,{axis:"y",inherit:"z"}),h(t,r,s||u||n,{axis:"x",inherit:"z"})};function PRt(e,t,r,n){var i=0,a=r("x"),o=r("y"),s=r("z"),u=cIe.getComponentMethod("calendars","handleTraceDefaults");return u(e,t,["x","y","z"],n),a&&o&&s&&(i=Math.min(a.length,o.length,s.length),t._length=t._xlength=t._ylength=t._zlength=i),i}});var vIe=Ae((Eyr,pIe)=>{"use strict";var zRt=ky(),IRt=D0();pIe.exports=function(t,r){var n=[{x:!1,y:!1,trace:r,t:{}}];return zRt(n,r),IRt(t,r),n}});var yIe=Ae((kyr,mIe)=>{mIe.exports=RRt;function RRt(e,t){if(typeof e!="string")throw new TypeError("must specify type string");if(t=t||{},typeof document=="undefined"&&!t.canvas)return null;var r=t.canvas||document.createElement("canvas");typeof t.width=="number"&&(r.width=t.width),typeof t.height=="number"&&(r.height=t.height);var n=t,i;try{var a=[e];e.indexOf("webgl")===0&&a.push("experimental-"+e);for(var o=0;o{var DRt=yIe();gIe.exports=function(t){return DRt("webgl",t)}});var OX=Ae((Lyr,bIe)=>{"use strict";var xIe=jl(),FRt=function(){};bIe.exports=function(t){for(var r in t)typeof t[r]=="function"&&(t[r]=FRt);t.destroy=function(){t.container.parentNode.removeChild(t.container)};var n=document.createElement("div");n.className="no-webgl",n.style.cursor="pointer",n.style.fontSize="24px",n.style.color=xIe.defaults[0],n.style.position="absolute",n.style.left=n.style.top="0px",n.style.width=n.style.height="100%",n.style["background-color"]=xIe.lightLine,n.style["z-index"]=30;var i=document.createElement("p");return i.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",i.style.position="relative",i.style.top="50%",i.style.left="50%",i.style.height="30%",i.style.width="50%",i.style.margin="-15% 0 0 -25%",n.appendChild(i),t.container.appendChild(n),t.container.style.background="#FFFFFF",t.container.onclick=function(){window.open("https://get.webgl.org")},!1}});var AIe=Ae((Pyr,TIe)=>{"use strict";var V2=Jg(),BRt=ei(),ORt=["xaxis","yaxis","zaxis"];function wIe(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickFontWeight=["normal","normal","normal","normal"],this.tickFontStyle=["normal","normal","normal","normal"],this.tickFontVariant=["normal","normal","normal","normal"],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["Open Sans","Open Sans","Open Sans"],this.labelSize=[20,20,20],this.labelFontWeight=["normal","normal","normal","normal"],this.labelFontStyle=["normal","normal","normal","normal"],this.labelFontVariant=["normal","normal","normal","normal"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[30,30,30],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[10,10,10],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!0,!0,!0],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._defaultTickPad=this.tickPad.slice(),this._defaultLabelPad=this.labelPad.slice(),this._defaultLineTickLength=this.lineTickLength.slice()}var qRt=wIe.prototype;qRt.merge=function(e,t){for(var r=this,n=0;n<3;++n){var i=t[ORt[n]];if(!i.visible){r.tickEnable[n]=!1,r.labelEnable[n]=!1,r.lineEnable[n]=!1,r.lineTickEnable[n]=!1,r.gridEnable[n]=!1,r.zeroEnable[n]=!1,r.backgroundEnable[n]=!1;continue}r.labels[n]=e._meta?BRt.templateString(i.title.text,e._meta):i.title.text,"font"in i.title&&(i.title.font.color&&(r.labelColor[n]=V2(i.title.font.color)),i.title.font.family&&(r.labelFont[n]=i.title.font.family),i.title.font.size&&(r.labelSize[n]=i.title.font.size),i.title.font.weight&&(r.labelFontWeight[n]=i.title.font.weight),i.title.font.style&&(r.labelFontStyle[n]=i.title.font.style),i.title.font.variant&&(r.labelFontVariant[n]=i.title.font.variant)),"showline"in i&&(r.lineEnable[n]=i.showline),"linecolor"in i&&(r.lineColor[n]=V2(i.linecolor)),"linewidth"in i&&(r.lineWidth[n]=i.linewidth),"showgrid"in i&&(r.gridEnable[n]=i.showgrid),"gridcolor"in i&&(r.gridColor[n]=V2(i.gridcolor)),"gridwidth"in i&&(r.gridWidth[n]=i.gridwidth),i.type==="log"?r.zeroEnable[n]=!1:"zeroline"in i&&(r.zeroEnable[n]=i.zeroline),"zerolinecolor"in i&&(r.zeroLineColor[n]=V2(i.zerolinecolor)),"zerolinewidth"in i&&(r.zeroLineWidth[n]=i.zerolinewidth),"ticks"in i&&i.ticks?r.lineTickEnable[n]=!0:r.lineTickEnable[n]=!1,"ticklen"in i&&(r.lineTickLength[n]=r._defaultLineTickLength[n]=i.ticklen),"tickcolor"in i&&(r.lineTickColor[n]=V2(i.tickcolor)),"tickwidth"in i&&(r.lineTickWidth[n]=i.tickwidth),"tickangle"in i&&(r.tickAngle[n]=i.tickangle==="auto"?-3600:Math.PI*-i.tickangle/180),"showticklabels"in i&&(r.tickEnable[n]=i.showticklabels),"tickfont"in i&&(i.tickfont.color&&(r.tickColor[n]=V2(i.tickfont.color)),i.tickfont.family&&(r.tickFont[n]=i.tickfont.family),i.tickfont.size&&(r.tickSize[n]=i.tickfont.size),i.tickfont.weight&&(r.tickFontWeight[n]=i.tickfont.weight),i.tickfont.style&&(r.tickFontStyle[n]=i.tickfont.style),i.tickfont.variant&&(r.tickFontVariant[n]=i.tickfont.variant)),"mirror"in i?["ticks","all","allticks"].indexOf(i.mirror)!==-1?(r.lineTickMirror[n]=!0,r.lineMirror[n]=!0):i.mirror===!0?(r.lineTickMirror[n]=!1,r.lineMirror[n]=!0):(r.lineTickMirror[n]=!1,r.lineMirror[n]=!1):r.lineMirror[n]=!1,"showbackground"in i&&i.showbackground!==!1?(r.backgroundEnable[n]=!0,r.backgroundColor[n]=V2(i.backgroundcolor)):r.backgroundEnable[n]=!1}};function NRt(e,t){var r=new wIe;return r.merge(e,t),r}TIe.exports=NRt});var EIe=Ae((zyr,MIe)=>{"use strict";var URt=Jg(),VRt=["xaxis","yaxis","zaxis"];function SIe(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}var GRt=SIe.prototype;GRt.merge=function(e){for(var t=0;t<3;++t){var r=e[VRt[t]];if(!r.visible){this.enabled[t]=!1,this.drawSides[t]=!1;continue}this.enabled[t]=r.showspikes,this.colors[t]=URt(r.spikecolor),this.drawSides[t]=r.spikesides,this.lineWidth[t]=r.spikethickness}};function HRt(e){var t=new SIe;return t.merge(e),t}MIe.exports=HRt});var LIe=Ae((Iyr,CIe)=>{"use strict";CIe.exports=YRt;var kIe=wu(),WRt=ei(),jRt=["xaxis","yaxis","zaxis"],XRt=[0,0,0];function ZRt(e){for(var t=new Array(3),r=0;r<3;++r){for(var n=e[r],i=new Array(n.length),a=0;a/g," "));i[a]=l,o.tickmode=s}}t.ticks=i;for(var a=0;a<3;++a){XRt[a]=.5*(e.glplot.bounds[0][a]+e.glplot.bounds[1][a]);for(var f=0;f<2;++f)t.bounds[f][a]=e.glplot.bounds[f][a]}e.contourLevels=ZRt(i)}});var BIe=Ae((Ryr,FIe)=>{"use strict";var IIe=qd().gl_plot3d,KRt=IIe.createCamera,PIe=IIe.createScene,JRt=_Ie(),$Rt=IP(),rF=$l(),uv=ei(),tF=uv.preserveDrawingBuffer(),iF=wu(),Km=Xc(),QRt=Jg(),eDt=OX(),tDt=JU(),rDt=AIe(),iDt=EIe(),nDt=LIe(),aDt=Tm().applyAutorangeOptions,Y4,eF,RIe=!1;function DIe(e,t){var r=document.createElement("div"),n=e.container;this.graphDiv=e.graphDiv;var i=document.createElementNS("http://www.w3.org/2000/svg","svg");i.style.position="absolute",i.style.top=i.style.left="0px",i.style.width=i.style.height="100%",i.style["z-index"]=20,i.style["pointer-events"]="none",r.appendChild(i),this.svgContainer=i,r.id=e.id,r.style.position="absolute",r.style.top=r.style.left="0px",r.style.width=r.style.height="100%",n.appendChild(r),this.fullLayout=t,this.id=e.id||"scene",this.fullSceneLayout=t[this.id],this.plotArgs=[[],{},{}],this.axesOptions=rDt(t,t[this.id]),this.spikeOptions=iDt(t[this.id]),this.container=r,this.staticMode=!!e.staticPlot,this.pixelRatio=this.pixelRatio||e.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=rF.getComponentMethod("annotations3d","convert"),this.drawAnnotations=rF.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var Ep=DIe.prototype;Ep.prepareOptions=function(){var e=this,t={canvas:e.canvas,gl:e.gl,glOptions:{preserveDrawingBuffer:tF,premultipliedAlpha:!0,antialias:!0},container:e.container,axes:e.axesOptions,spikes:e.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:e.camera,pixelRatio:e.pixelRatio};if(e.staticMode){if(!eF&&(Y4=document.createElement("canvas"),eF=JRt({canvas:Y4,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!eF))throw new Error("error creating static canvas/context for image server");t.gl=eF,t.canvas=Y4}return t};var zIe=!0;Ep.tryCreatePlot=function(){var e=this,t=e.prepareOptions(),r=!0;try{e.glplot=PIe(t)}catch(n){if(e.staticMode||!zIe||tF)r=!1;else{uv.warn(["webgl setup failed possibly due to","false preserveDrawingBuffer config.","The mobile/tablet device may not be detected by is-mobile module.","Enabling preserveDrawingBuffer in second attempt to create webgl scene..."].join(" "));try{tF=t.glOptions.preserveDrawingBuffer=!0,e.glplot=PIe(t)}catch(i){tF=t.glOptions.preserveDrawingBuffer=!1,r=!1}}}return zIe=!1,r};Ep.initializeGLCamera=function(){var e=this,t=e.fullSceneLayout.camera,r=t.projection.type==="orthographic";e.camera=KRt(e.container,{center:[t.center.x,t.center.y,t.center.z],eye:[t.eye.x,t.eye.y,t.eye.z],up:[t.up.x,t.up.y,t.up.z],_ortho:r,zoomMin:.01,zoomMax:100,mode:"orbit"})};Ep.initializeGLPlot=function(){var e=this;e.initializeGLCamera();var t=e.tryCreatePlot();if(!t)return eDt(e);e.traces={},e.make4thDimension();var r=e.graphDiv,n=r.layout,i=function(){var o={};return e.isCameraChanged(n)&&(o[e.id+".camera"]=e.getCamera()),e.isAspectChanged(n)&&(o[e.id+".aspectratio"]=e.glplot.getAspectratio(),n[e.id].aspectmode!=="manual"&&(e.fullSceneLayout.aspectmode=n[e.id].aspectmode=o[e.id+".aspectmode"]="manual")),o},a=function(o){if(o.fullSceneLayout.dragmode!==!1){var s=i();o.saveLayout(n),o.graphDiv.emit("plotly_relayout",s)}};return e.glplot.canvas&&(e.glplot.canvas.addEventListener("mouseup",function(){a(e)}),e.glplot.canvas.addEventListener("touchstart",function(){RIe=!0}),e.glplot.canvas.addEventListener("wheel",function(o){if(r._context._scrollZoom.gl3d){if(e.camera._ortho){var s=o.deltaX>o.deltaY?1.1:.9090909090909091,u=e.glplot.getAspectratio();e.glplot.setAspectratio({x:s*u.x,y:s*u.y,z:s*u.z})}a(e)}},$Rt?{passive:!1}:!1),e.glplot.canvas.addEventListener("mousemove",function(){if(e.fullSceneLayout.dragmode!==!1&&e.camera.mouseListener.buttons!==0){var o=i();e.graphDiv.emit("plotly_relayouting",o)}}),e.staticMode||e.glplot.canvas.addEventListener("webglcontextlost",function(o){r&&r.emit&&r.emit("plotly_webglcontextlost",{event:o,layer:e.id})},!1)),e.glplot.oncontextloss=function(){e.recoverContext()},e.glplot.onrender=function(){e.render()},!0};Ep.render=function(){var e=this,t=e.graphDiv,r,n=e.svgContainer,i=e.container.getBoundingClientRect();t._fullLayout._calcInverseTransform(t);var a=t._fullLayout._invScaleX,o=t._fullLayout._invScaleY,s=i.width*a,u=i.height*o;n.setAttributeNS(null,"viewBox","0 0 "+s+" "+u),n.setAttributeNS(null,"width",s),n.setAttributeNS(null,"height",u),nDt(e),e.glplot.axes.update(e.axesOptions);for(var l=Object.keys(e.traces),f=null,c=e.glplot.selection,h=0;h")):r.type==="isosurface"||r.type==="volume"?(v.valueLabel=iF.hoverLabelText(e._mockAxis,e._mockAxis.d2l(c.traceCoordinate[3]),r.valuehoverformat),x.push("value: "+v.valueLabel),c.textLabel&&x.push(c.textLabel),L=x.join("
")):L=c.textLabel;var C={x:c.traceCoordinate[0],y:c.traceCoordinate[1],z:c.traceCoordinate[2],data:_._input,fullData:_,curveNumber:_.index,pointNumber:b};Km.appendArrayPointValue(C,_,b),r._module.eventData&&(C=_._module.eventData(C,c,_,{},b));var M={points:[C]};if(e.fullSceneLayout.hovermode){var m=[];Km.loneHover({trace:_,x:(.5+.5*p[0]/p[3])*s,y:(.5-.5*p[1]/p[3])*u,xLabel:v.xLabel,yLabel:v.yLabel,zLabel:v.zLabel,text:L,name:f.name,color:Km.castHoverOption(_,b,"bgcolor")||f.color,borderColor:Km.castHoverOption(_,b,"bordercolor"),fontFamily:Km.castHoverOption(_,b,"font.family"),fontSize:Km.castHoverOption(_,b,"font.size"),fontColor:Km.castHoverOption(_,b,"font.color"),nameLength:Km.castHoverOption(_,b,"namelength"),textAlign:Km.castHoverOption(_,b,"align"),hovertemplate:uv.castOption(_,b,"hovertemplate"),hovertemplateLabels:uv.extendFlat({},C,v),eventData:[C]},{container:n,gd:t,inOut_bbox:m}),C.bbox=m[0]}c.distance<5&&(c.buttons||RIe)?t.emit("plotly_click",M):t.emit("plotly_hover",M),this.oldEventData=M}else Km.loneUnhover(n),this.oldEventData&&t.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;e.drawAnnotations(e)};Ep.recoverContext=function(){var e=this;e.glplot.dispose();var t=function(){if(e.glplot.gl.isContextLost()){requestAnimationFrame(t);return}if(!e.initializeGLPlot()){uv.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}e.plot.apply(e,e.plotArgs)};requestAnimationFrame(t)};var K4=["xaxis","yaxis","zaxis"];function oDt(e,t,r){for(var n=e.fullSceneLayout,i=0;i<3;i++){var a=K4[i],o=a.charAt(0),s=n[a],u=t[o],l=t[o+"calendar"],f=t["_"+o+"length"];if(!uv.isArrayOrTypedArray(u))r[0][i]=Math.min(r[0][i],0),r[1][i]=Math.max(r[1][i],f-1);else for(var c,h=0;h<(f||u.length);h++)if(uv.isArrayOrTypedArray(u[h]))for(var d=0;d_[1][o])_[0][o]=-1,_[1][o]=1;else{var T=_[1][o]-_[0][o];_[0][o]-=T/32,_[1][o]+=T/32}if(k=[_[0][o],_[1][o]],k=aDt(k,u),_[0][o]=k[0],_[1][o]=k[1],u.isReversed()){var B=_[0][o];_[0][o]=_[1][o],_[1][o]=B}}else k=u.range,_[0][o]=u.r2l(k[0]),_[1][o]=u.r2l(k[1]);_[0][o]===_[1][o]&&(_[0][o]-=1,_[1][o]+=1),b[o]=_[1][o]-_[0][o],u.range=[_[0][o],_[1][o]],u.limitRange(),n.glplot.setBounds(o,{min:u.range[0]*d[o],max:u.range[1]*d[o]})}var F,U=f.aspectmode;if(U==="cube")F=[1,1,1];else if(U==="manual"){var G=f.aspectratio;F=[G.x,G.y,G.z]}else if(U==="auto"||U==="data"){var j=[1,1,1];for(o=0;o<3;++o){u=f[K4[o]],l=u.type;var H=v[l];j[o]=Math.pow(H.acc,1/H.count)/d[o]}U==="data"||Math.max.apply(null,j)/Math.min.apply(null,j)<=4?F=j:F=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");f.aspectratio.x=c.aspectratio.x=F[0],f.aspectratio.y=c.aspectratio.y=F[1],f.aspectratio.z=c.aspectratio.z=F[2],n.glplot.setAspectratio(f.aspectratio),n.viewInitial.aspectratio||(n.viewInitial.aspectratio={x:f.aspectratio.x,y:f.aspectratio.y,z:f.aspectratio.z}),n.viewInitial.aspectmode||(n.viewInitial.aspectmode=f.aspectmode);var N=f.domain||null,W=t._size||null;if(N&&W){var re=n.container.style;re.position="absolute",re.left=W.l+N.x[0]*W.w+"px",re.top=W.t+(1-N.y[1])*W.h+"px",re.width=W.w*(N.x[1]-N.x[0])+"px",re.height=W.h*(N.y[1]-N.y[0])+"px"}n.glplot.redraw()}};Ep.destroy=function(){var e=this;e.glplot&&(e.camera.mouseListener.enabled=!1,e.container.removeEventListener("wheel",e.camera.wheelListener),e.camera=null,e.glplot.dispose(),e.container.parentNode.removeChild(e.container),e.glplot=null)};function lDt(e){return[[e.eye.x,e.eye.y,e.eye.z],[e.center.x,e.center.y,e.center.z],[e.up.x,e.up.y,e.up.z]]}function uDt(e){return{up:{x:e.up[0],y:e.up[1],z:e.up[2]},center:{x:e.center[0],y:e.center[1],z:e.center[2]},eye:{x:e.eye[0],y:e.eye[1],z:e.eye[2]},projection:{type:e._ortho===!0?"orthographic":"perspective"}}}Ep.getCamera=function(){var e=this;return e.camera.view.recalcMatrix(e.camera.view.lastT()),uDt(e.camera)};Ep.setViewport=function(e){var t=this,r=e.camera;t.camera.lookAt.apply(this,lDt(r)),t.glplot.setAspectratio(e.aspectratio);var n=r.projection.type==="orthographic",i=t.camera._ortho;n!==i&&(t.glplot.redraw(),t.glplot.clearRGBA(),t.glplot.dispose(),t.initializeGLPlot())};Ep.isCameraChanged=function(e){var t=this,r=t.getCamera(),n=uv.nestedProperty(e,t.id+".camera"),i=n.get();function a(l,f,c,h){var d=["up","center","eye"],p=["x","y","z"];return f[d[c]]&&l[d[c]][p[h]]===f[d[c]][p[h]]}var o=!1;if(i===void 0)o=!0;else{for(var s=0;s<3;s++)for(var u=0;u<3;u++)if(!a(r,i,s,u)){o=!0;break}(!i.projection||r.projection&&r.projection.type!==i.projection.type)&&(o=!0)}return o};Ep.isAspectChanged=function(e){var t=this,r=t.glplot.getAspectratio(),n=uv.nestedProperty(e,t.id+".aspectratio"),i=n.get();return i===void 0||i.x!==r.x||i.y!==r.y||i.z!==r.z};Ep.saveLayout=function(e){var t=this,r=t.fullLayout,n,i,a,o,s,u,l=t.isCameraChanged(e),f=t.isAspectChanged(e),c=l||f;if(c){var h={};if(l&&(n=t.getCamera(),i=uv.nestedProperty(e,t.id+".camera"),a=i.get(),h[t.id+".camera"]=a),f&&(o=t.glplot.getAspectratio(),s=uv.nestedProperty(e,t.id+".aspectratio"),u=s.get(),h[t.id+".aspectratio"]=u),rF.call("_storeDirectGUIEdit",e,r._preGUI,h),l){i.set(n);var d=uv.nestedProperty(r,t.id+".camera");d.set(n)}if(f){s.set(o);var p=uv.nestedProperty(r,t.id+".aspectratio");p.set(o),t.glplot.redraw()}}return c};Ep.updateFx=function(e,t){var r=this,n=r.camera;if(n)if(e==="orbit")n.mode="orbit",n.keyBindingMode="rotate";else if(e==="turntable"){n.up=[0,0,1],n.mode="turntable",n.keyBindingMode="rotate";var i=r.graphDiv,a=i._fullLayout,o=r.fullSceneLayout.camera,s=o.up.x,u=o.up.y,l=o.up.z;if(l/Math.sqrt(s*s+u*u+l*l)<.999){var f=r.id+".camera.up",c={x:0,y:0,z:1},h={};h[f]=c;var d=i.layout;rF.call("_storeDirectGUIEdit",d,a._preGUI,h),o.up=c,uv.nestedProperty(d,f).set(c)}}else n.keyBindingMode=e;r.fullSceneLayout.hovermode=t};function fDt(e,t,r){for(var n=0,i=r-1;n0)for(var s=255/o,u=0;u<3;++u)e[a+u]=Math.min(s*e[a+u],255)}}Ep.toImage=function(e){var t=this;e||(e="png"),t.staticMode&&t.container.appendChild(Y4),t.glplot.redraw();var r=t.glplot.gl,n=r.drawingBufferWidth,i=r.drawingBufferHeight;r.bindFramebuffer(r.FRAMEBUFFER,null);var a=new Uint8Array(n*i*4);r.readPixels(0,0,n,i,r.RGBA,r.UNSIGNED_BYTE,a),fDt(a,n,i),cDt(a,n,i);var o=document.createElement("canvas");o.width=n,o.height=i;var s=o.getContext("2d",{willReadFrequently:!0}),u=s.createImageData(n,i);u.data.set(a),s.putImageData(u,0,0);var l;switch(e){case"jpeg":l=o.toDataURL("image/jpeg");break;case"webp":l=o.toDataURL("image/webp");break;default:l=o.toDataURL("image/png")}return t.staticMode&&t.container.removeChild(Y4),l};Ep.setConvert=function(){for(var e=this,t=0;t<3;t++){var r=e.fullSceneLayout[K4[t]];iF.setConvert(r,e.fullLayout),r.setScale=uv.noop}};Ep.make4thDimension=function(){var e=this,t=e.graphDiv,r=t._fullLayout;e._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},iF.setConvert(e._mockAxis,r)};FIe.exports=DIe});var qIe=Ae((Dyr,OIe)=>{"use strict";OIe.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}});var NX=Ae((Fyr,NIe)=>{"use strict";var hDt=jl(),ff=Dd(),qX=Su().extendFlat,dDt=Sc().overrideAll;NIe.exports=dDt({visible:ff.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:hDt.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:ff.color,categoryorder:ff.categoryorder,categoryarray:ff.categoryarray,title:{text:ff.title.text,font:ff.title.font},type:qX({},ff.type,{values:["-","linear","log","date","category"]}),autotypenumbers:ff.autotypenumbers,autorange:ff.autorange,autorangeoptions:{minallowed:ff.autorangeoptions.minallowed,maxallowed:ff.autorangeoptions.maxallowed,clipmin:ff.autorangeoptions.clipmin,clipmax:ff.autorangeoptions.clipmax,include:ff.autorangeoptions.include,editType:"plot"},rangemode:ff.rangemode,minallowed:ff.minallowed,maxallowed:ff.maxallowed,range:qX({},ff.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:ff.minor.tickmode,nticks:ff.nticks,tick0:ff.tick0,dtick:ff.dtick,tickvals:ff.tickvals,ticktext:ff.ticktext,ticks:ff.ticks,mirror:ff.mirror,ticklen:ff.ticklen,tickwidth:ff.tickwidth,tickcolor:ff.tickcolor,showticklabels:ff.showticklabels,labelalias:ff.labelalias,tickfont:ff.tickfont,tickangle:ff.tickangle,tickprefix:ff.tickprefix,showtickprefix:ff.showtickprefix,ticksuffix:ff.ticksuffix,showticksuffix:ff.showticksuffix,showexponent:ff.showexponent,exponentformat:ff.exponentformat,minexponent:ff.minexponent,separatethousands:ff.separatethousands,tickformat:ff.tickformat,tickformatstops:ff.tickformatstops,hoverformat:ff.hoverformat,showline:ff.showline,linecolor:ff.linecolor,linewidth:ff.linewidth,showgrid:ff.showgrid,gridcolor:qX({},ff.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:ff.gridwidth,zeroline:ff.zeroline,zerolinecolor:ff.zerolinecolor,zerolinewidth:ff.zerolinewidth},"plot","from-root")});var HX=Ae((Byr,UIe)=>{"use strict";var UX=NX(),pDt=zc().attributes,VX=Su().extendFlat,vDt=ei().counterRegex;function GX(e,t,r){return{x:{valType:"number",dflt:e,editType:"camera"},y:{valType:"number",dflt:t,editType:"camera"},z:{valType:"number",dflt:r,editType:"camera"},editType:"camera"}}UIe.exports={_arrayAttrRegexps:[vDt("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:VX(GX(0,0,1),{}),center:VX(GX(0,0,0),{}),eye:VX(GX(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:pDt({name:"scene",editType:"plot"}),aspectmode:{valType:"enumerated",values:["auto","cube","data","manual"],dflt:"auto",editType:"plot",impliedEdits:{"aspectratio.x":void 0,"aspectratio.y":void 0,"aspectratio.z":void 0}},aspectratio:{x:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},y:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},z:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},editType:"plot",impliedEdits:{aspectmode:"manual"}},xaxis:UX,yaxis:UX,zaxis:UX,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot"},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar"},uirevision:{valType:"any",editType:"none"},editType:"plot"}});var WIe=Ae((Oyr,HIe)=>{"use strict";var mDt=cd().mix,VIe=ei(),yDt=Lf(),gDt=NX(),_Dt=DU(),xDt=rE(),GIe=["xaxis","yaxis","zaxis"],bDt=100*136/187;HIe.exports=function(t,r,n){var i,a;function o(l,f){return VIe.coerce(i,a,gDt,l,f)}for(var s=0;s{"use strict";var wDt=ei(),TDt=jl(),ADt=$l(),SDt=k_(),MDt=WIe(),jIe=HX(),EDt=Rd().getSubplotData,XIe="gl3d";ZIe.exports=function(t,r,n){var i=r._basePlotModules.length>1;function a(o){if(!i){var s=wDt.validate(t[o],jIe[o]);if(s)return t[o]}}SDt(t,r,n,{type:XIe,attributes:jIe,handleDefaults:kDt,fullLayout:r,font:r.font,fullData:n,getDfltFromLayout:a,autotypenumbersDflt:r.autotypenumbers,paper_bgcolor:r.paper_bgcolor,calendar:r.calendar})};function kDt(e,t,r,n){for(var i=r("bgcolor"),a=TDt.combine(i,n.paper_bgcolor),o=["up","center","eye"],s=0;s.999)&&(h="turntable")}else h="turntable";r("dragmode",h),r("hovermode",n.getDfltFromLayout("hovermode"))}});var $_=Ae(fv=>{"use strict";var CDt=Sc().overrideAll,LDt=q1(),PDt=BIe(),zDt=Rd().getSubplotData,IDt=ei(),RDt=jv(),VA="gl3d",WX="scene";fv.name=VA;fv.attr=WX;fv.idRoot=WX;fv.idRegex=fv.attrRegex=IDt.counterRegex("scene");fv.attributes=qIe();fv.layoutAttributes=HX();fv.baseLayoutAttrOverrides=CDt({hoverlabel:LDt.hoverlabel},"plot","nested");fv.supplyLayoutDefaults=YIe();fv.plot=function(t){for(var r=t._fullLayout,n=t._fullData,i=r._subplots[VA],a=0;a{"use strict";KIe.exports={plot:oIe(),attributes:FX(),markerSymbols:$6(),supplyDefaults:dIe(),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:vIe(),moduleType:"trace",name:"scatter3d",basePlotModule:$_(),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}});var QIe=Ae((Vyr,$Ie)=>{"use strict";$Ie.exports=JIe()});var J4=Ae((Gyr,rRe)=>{"use strict";var eRe=jl(),DDt=nc(),jX=jc().axisHoverFormat,{hovertemplateAttrs:FDt,templatefallbackAttrs:BDt}=Ff(),tRe=Gf(),XX=Su().extendFlat,ODt=Sc().overrideAll;function ZX(e){return{valType:"boolean",dflt:!1}}function YX(e){return{show:{valType:"boolean",dflt:!1},start:{valType:"number",dflt:null,editType:"plot"},end:{valType:"number",dflt:null,editType:"plot"},size:{valType:"number",dflt:null,min:0,editType:"plot"},project:{x:ZX("x"),y:ZX("y"),z:ZX("z")},color:{valType:"color",dflt:eRe.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:eRe.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var KX=rRe.exports=ODt(XX({z:{valType:"data_array"},x:{valType:"data_array"},y:{valType:"data_array"},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:FDt(),hovertemplatefallback:BDt(),xhoverformat:jX("x"),yhoverformat:jX("y"),zhoverformat:jX("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},DDt("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:YX("x"),y:YX("y"),z:YX("z")},hidesurface:{valType:"boolean",dflt:!1},lightposition:{x:{valType:"number",min:-1e5,max:1e5,dflt:10},y:{valType:"number",min:-1e5,max:1e5,dflt:1e4},z:{valType:"number",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:"number",min:0,max:1,dflt:.8},diffuse:{valType:"number",min:0,max:1,dflt:.8},specular:{valType:"number",min:0,max:2,dflt:.05,description:"Represents the level that incident rays are reflected in a single direction, causing shine."},roughness:{valType:"number",min:0,max:1,dflt:.5,description:"Alters specular reflection; the rougher the surface, the wider and less contrasty the shine."},fresnel:{valType:"number",min:0,max:5,dflt:.2}},opacity:{valType:"number",min:0,max:1,dflt:1},opacityscale:{valType:"any",editType:"calc"},hoverinfo:XX({},tRe.hoverinfo),showlegend:XX({},tRe.showlegend,{dflt:!1})}),"calc","nested");KX.x.editType=KX.y.editType=KX.z.editType="calc+clearAxisTypes"});var $X=Ae((Hyr,aRe)=>{"use strict";var qDt=$l(),iRe=ei(),NDt=rd(),UDt=J4(),JX=.1;function VDt(e,t){for(var r=[],n=32,i=0;i{"use strict";var oRe=gp();sRe.exports=function(t,r){r.surfacecolor?oRe(t,r,{vals:r.surfacecolor,containerStr:"",cLetter:"c"}):oRe(t,r,{vals:r.z,containerStr:"",cLetter:"c"})}});var pRe=Ae((jyr,dRe)=>{"use strict";var WDt=qd().gl_surface3d,GA=qd().ndarray,jDt=qd().ndarray_linear_interpolate.d2,XDt=aR(),ZDt=oR(),$4=ei().isArrayOrTypedArray,YDt=$g().parseColorScale,uRe=Jg(),KDt=_c().extractOpts;function cRe(e,t,r){this.scene=e,this.uid=r,this.surface=t,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var Jm=cRe.prototype;Jm.getXat=function(e,t,r,n){var i=$4(this.data.x)?$4(this.data.x[0])?this.data.x[t][e]:this.data.x[e]:e;return r===void 0?i:n.d2l(i,0,r)};Jm.getYat=function(e,t,r,n){var i=$4(this.data.y)?$4(this.data.y[0])?this.data.y[t][e]:this.data.y[t]:t;return r===void 0?i:n.d2l(i,0,r)};Jm.getZat=function(e,t,r,n){var i=this.data.z[t][e];return i===null&&this.data.connectgaps&&this.data._interpolatedZ&&(i=this.data._interpolatedZ[t][e]),r===void 0?i:n.d2l(i,0,r)};Jm.handlePick=function(e){if(e.object===this.surface){var t=(e.data.index[0]-1)/this.dataScaleX-1,r=(e.data.index[1]-1)/this.dataScaleY-1,n=Math.max(Math.min(Math.round(t),this.data.z[0].length-1),0),i=Math.max(Math.min(Math.round(r),this.data._ylength-1),0);e.index=[n,i],e.traceCoordinate=[this.getXat(n,i),this.getYat(n,i),this.getZat(n,i)],e.dataCoordinate=[this.getXat(n,i,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(n,i,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(n,i,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var a=0;a<3;a++){var o=e.dataCoordinate[a];o!=null&&(e.dataCoordinate[a]*=this.scene.dataScale[a])}var s=this.data.hovertext||this.data.text;return $4(s)&&s[i]&&s[i][n]!==void 0?e.textLabel=s[i][n]:s?e.textLabel=s:e.textLabel="",e.data.dataCoordinate=e.dataCoordinate.slice(),this.surface.highlight(e.data),this.scene.glplot.spikes.position=e.dataCoordinate,!0}};function JDt(e){var t=e[0].rgb,r=e[e.length-1].rgb;return t[0]===r[0]&&t[1]===r[1]&&t[2]===r[2]&&t[3]===r[3]}var HA=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999];function $Dt(e,t){if(e0){r=HA[n];break}return r}function e6t(e,t){if(!(e<1||t<1)){for(var r=QX(e),n=QX(t),i=1,a=0;anF;)n--,n/=QDt(n),n++,n1?i:1};function r6t(e,t,r){var n=r[8]+r[2]*t[0]+r[5]*t[1];return e[0]=(r[6]+r[0]*t[0]+r[3]*t[1])/n,e[1]=(r[7]+r[1]*t[0]+r[4]*t[1])/n,e}function i6t(e,t,r){return n6t(e,t,r6t,r),e}function n6t(e,t,r,n){for(var i=[0,0],a=e.shape[0],o=e.shape[1],s=0;s0&&this.contourStart[n]!==null&&this.contourEnd[n]!==null&&this.contourEnd[n]>this.contourStart[n]))for(t[n]=!0,i=this.contourStart[n];ih&&(this.minValues[l]=h),this.maxValues[l]{"use strict";vRe.exports={attributes:J4(),supplyDefaults:$X().supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:lRe(),plot:pRe(),moduleType:"trace",name:"surface",basePlotModule:$_(),categories:["gl3d","2dMap","showLegend"],meta:{}}});var gRe=Ae((Zyr,yRe)=>{"use strict";yRe.exports=mRe()});var WA=Ae((Yyr,xRe)=>{"use strict";var s6t=nc(),eZ=jc().axisHoverFormat,{hovertemplateAttrs:l6t,templatefallbackAttrs:u6t}=Ff(),Q_=J4(),_Re=Gf(),ex=Su().extendFlat;xRe.exports=ex({x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},i:{valType:"data_array",editType:"calc"},j:{valType:"data_array",editType:"calc"},k:{valType:"data_array",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:l6t({editType:"calc"}),hovertemplatefallback:u6t({editType:"calc"}),xhoverformat:eZ("x"),yhoverformat:eZ("y"),zhoverformat:eZ("z"),delaunayaxis:{valType:"enumerated",values:["x","y","z"],dflt:"z",editType:"calc"},alphahull:{valType:"number",dflt:-1,editType:"calc"},intensity:{valType:"data_array",editType:"calc"},intensitymode:{valType:"enumerated",values:["vertex","cell"],dflt:"vertex",editType:"calc"},color:{valType:"color",editType:"calc"},vertexcolor:{valType:"data_array",editType:"calc"},facecolor:{valType:"data_array",editType:"calc"}},s6t("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:Q_.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:ex({},Q_.contours.x.show,{}),color:Q_.contours.x.color,width:Q_.contours.x.width,editType:"calc"},lightposition:{x:ex({},Q_.lightposition.x,{dflt:1e5}),y:ex({},Q_.lightposition.y,{dflt:1e5}),z:ex({},Q_.lightposition.z,{dflt:0}),editType:"calc"},lighting:ex({vertexnormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-12,editType:"calc",description:"Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry."},facenormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-6,editType:"calc",description:"Epsilon for face normals calculation avoids math issues arising from degenerate geometry."},editType:"calc"},Q_.lighting),hoverinfo:ex({},_Re.hoverinfo,{editType:"calc"}),showlegend:ex({},_Re.showlegend,{dflt:!1})})});var oF=Ae((Kyr,wRe)=>{"use strict";var f6t=nc(),aF=jc().axisHoverFormat,{hovertemplateAttrs:c6t,templatefallbackAttrs:h6t}=Ff(),Q4=WA(),bRe=Gf(),tZ=Su().extendFlat,d6t=Sc().overrideAll;function rZ(e){return{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}}}function iZ(e){return{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}}}var jA=wRe.exports=d6t(tZ({x:{valType:"data_array"},y:{valType:"data_array"},z:{valType:"data_array"},value:{valType:"data_array"},isomin:{valType:"number"},isomax:{valType:"number"},surface:{show:{valType:"boolean",dflt:!0},count:{valType:"integer",dflt:2,min:1},fill:{valType:"number",min:0,max:1,dflt:1},pattern:{valType:"flaglist",flags:["A","B","C","D","E"],extras:["all","odd","even"],dflt:"all"}},spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:.15}},slices:{x:rZ("x"),y:rZ("y"),z:rZ("z")},caps:{x:iZ("x"),y:iZ("y"),z:iZ("z")},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:c6t(),hovertemplatefallback:h6t(),xhoverformat:aF("x"),yhoverformat:aF("y"),zhoverformat:aF("z"),valuehoverformat:aF("value",1),showlegend:tZ({},bRe.showlegend,{dflt:!1})},f6t("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:Q4.opacity,lightposition:Q4.lightposition,lighting:Q4.lighting,flatshading:Q4.flatshading,contour:Q4.contour,hoverinfo:tZ({},bRe.hoverinfo)}),"calc","nested");jA.flatshading.dflt=!0;jA.lighting.facenormalsepsilon.dflt=0;jA.x.editType=jA.y.editType=jA.z.editType=jA.value.editType="calc+clearAxisTypes"});var nZ=Ae((Jyr,ARe)=>{"use strict";var p6t=ei(),v6t=$l(),m6t=oF(),y6t=rd();function g6t(e,t,r,n){function i(a,o){return p6t.coerce(e,t,m6t,a,o)}TRe(e,t,r,n,i)}function TRe(e,t,r,n,i){var a=i("isomin"),o=i("isomax");o!=null&&a!==void 0&&a!==null&&a>o&&(t.isomin=null,t.isomax=null);var s=i("x"),u=i("y"),l=i("z"),f=i("value");if(!s||!s.length||!u||!u.length||!l||!l.length||!f||!f.length){t.visible=!1;return}var c=v6t.getComponentMethod("calendars","handleTraceDefaults");c(e,t,["x","y","z"],n),i("valuehoverformat"),["x","y","z"].forEach(function(_){i(_+"hoverformat");var b="caps."+_,v=i(b+".show");v&&i(b+".fill");var k="slices."+_,E=i(k+".show");E&&(i(k+".fill"),i(k+".locations"))});var h=i("spaceframe.show");h&&i("spaceframe.fill");var d=i("surface.show");d&&(i("surface.count"),i("surface.fill"),i("surface.pattern"));var p=i("contour.show");p&&(i("contour.color"),i("contour.width")),["text","hovertext","hovertemplate","lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","opacity"].forEach(function(_){i(_)}),y6t(e,t,n,i,{prefix:"",cLetter:"c"}),t._length=null}ARe.exports={supplyDefaults:g6t,supplyIsoDefaults:TRe}});var sF=Ae(($yr,MRe)=>{"use strict";var oZ=ei(),_6t=gp();function x6t(e,t){t._len=Math.min(t.u.length,t.v.length,t.w.length,t.x.length,t.y.length,t.z.length),t._u=Wy(t.u,t._len),t._v=Wy(t.v,t._len),t._w=Wy(t.w,t._len),t._x=Wy(t.x,t._len),t._y=Wy(t.y,t._len),t._z=Wy(t.z,t._len);var r=SRe(t);t._gridFill=r.fill,t._Xs=r.Xs,t._Ys=r.Ys,t._Zs=r.Zs,t._len=r.len;var n=0,i,a,o;t.starts&&(i=Wy(t.starts.x||[]),a=Wy(t.starts.y||[]),o=Wy(t.starts.z||[]),n=Math.min(i.length,a.length,o.length)),t._startsX=i||[],t._startsY=a||[],t._startsZ=o||[];var s=0,u=1/0,l;for(l=0;l1&&(E=t[i-1],L=r[i-1],C=n[i-1]),a=0;aE?"-":"+")+"x"),p=p.replace("y",(A>L?"-":"+")+"y"),p=p.replace("z",(x>C?"-":"+")+"z");var T=function(){i=0,M=[],m=[],P=[]};(!i||i{"use strict";var b6t=gp(),w6t=sF().processGrid,lF=sF().filter;ERe.exports=function(t,r){r._len=Math.min(r.x.length,r.y.length,r.z.length,r.value.length),r._x=lF(r.x,r._len),r._y=lF(r.y,r._len),r._z=lF(r.z,r._len),r._value=lF(r.value,r._len);var n=w6t(r);r._gridFill=n.fill,r._Xs=n.Xs,r._Ys=n.Ys,r._Zs=n.Zs,r._len=n.len;for(var i=1/0,a=-1/0,o=0;o{"use strict";kRe.exports=function(t,r,n,i){i=i||t.length;for(var a=new Array(i),o=0;o{"use strict";var T6t=qd().gl_mesh3d,A6t=$g().parseColorScale,S6t=ei().isArrayOrTypedArray,M6t=Jg(),E6t=_c().extractOpts,CRe=XA(),ek=function(e,t){for(var r=t.length-1;r>0;r--){var n=Math.min(t[r],t[r-1]),i=Math.max(t[r],t[r-1]);if(i>n&&n-1}function ae(Tt,vt){return Tt===null?vt:Tt}function be(Tt,vt,Ye){T();var He=[vt],it=[Ye];if(H>=1)He=[vt],it=[Ye];else if(H>0){var et=W(vt,Ye);He=et.xyzv,it=et.abc}for(var It=0;It-1?Ye[cr]:P(_r,yr,Ut);xe>-1?Yt[cr]=xe:Yt[cr]=F(_r,yr,Ut,ae(Tt,Re))}U(Yt[0],Yt[1],Yt[2])}}function ze(Tt,vt,Ye){var He=function(it,et,It){be(Tt,[vt[it],vt[et],vt[It]],[Ye[it],Ye[et],Ye[It]])};He(0,1,2),He(2,3,0)}function Ce(Tt,vt,Ye){var He=function(it,et,It){be(Tt,[vt[it],vt[et],vt[It]],[Ye[it],Ye[et],Ye[It]])};He(0,1,2),He(3,0,1),He(2,3,0),He(1,2,3)}function de(Tt,vt,Ye,He){var it=Tt[3];itHe&&(it=He);for(var et=(Tt[3]-it)/(Tt[3]-vt[3]+1e-9),It=[],Yt=0;Yt<4;Yt++)It[Yt]=(1-et)*Tt[Yt]+et*vt[Yt];return It}function te(Tt,vt,Ye){return Tt>=vt&&Tt<=Ye}function ke(Tt){var vt=.001*(L-A);return Tt>=A-vt&&Tt<=L+vt}function Ee(Tt){for(var vt=[],Ye=0;Ye<4;Ye++){var He=Tt[Ye];vt.push([e._x[He],e._y[He],e._z[He],e._value[He]])}return vt}var Me=3;function Ue(Tt,vt,Ye,He,it,et){et||(et=1),Ye=[-1,-1,-1];var It=!1,Yt=[te(vt[0][3],He,it),te(vt[1][3],He,it),te(vt[2][3],He,it)];if(!Yt[0]&&!Yt[1]&&!Yt[2])return!1;var cr=function(yr,Ut,Re){return ke(Ut[0][3])&&ke(Ut[1][3])&&ke(Ut[2][3])?(be(yr,Ut,Re),!0):etYt?[k,et]:[et,E];wt(vt,cr[0],cr[1])}}var _r=[[Math.min(A,E),Math.max(A,E)],[Math.min(k,L),Math.max(k,L)]];["x","y","z"].forEach(function(yr){for(var Ut=[],Re=0;Re<_r.length;Re++){var xe=0,Oe=_r[Re][0],Ie=_r[Re][1],Fe=e.slices[yr];if(Fe.show&&Fe.fill){N(Fe.fill);var ft=[],ge=[],fe=[];if(Fe.locations.length)for(var pe=0;pe0&&(ge.push(dt.id),yr==="x"?fe.push([dt.distRatio,0,0]):yr==="y"?fe.push([0,dt.distRatio,0]):fe.push([0,0,dt.distRatio]))}else yr==="x"?ft=Et(1,d-1):yr==="y"?ft=Et(1,p-1):ft=Et(1,_-1);ge.length>0&&(yr==="x"?Ut[xe]=St(Tt,ge,Oe,Ie,fe,Ut[xe]):yr==="y"?Ut[xe]=Dt(Tt,ge,Oe,Ie,fe,Ut[xe]):Ut[xe]=Zt(Tt,ge,Oe,Ie,fe,Ut[xe]),xe++),ft.length>0&&(yr==="x"?Ut[xe]=gt(Tt,ft,Oe,Ie,Ut[xe]):yr==="y"?Ut[xe]=Nt(Tt,ft,Oe,Ie,Ut[xe]):Ut[xe]=at(Tt,ft,Oe,Ie,Ut[xe]),xe++)}var Pt=e.caps[yr];Pt.show&&Pt.fill&&(N(Pt.fill),yr==="x"?Ut[xe]=gt(Tt,[0,d-1],Oe,Ie,Ut[xe]):yr==="y"?Ut[xe]=Nt(Tt,[0,p-1],Oe,Ie,Ut[xe]):Ut[xe]=at(Tt,[0,_-1],Oe,Ie,Ut[xe]),xe++)}}),s===0&&B(),e._meshX=x,e._meshY=C,e._meshZ=M,e._meshIntensity=m,e._Xs=f,e._Ys=c,e._Zs=h}return ot(),e}function C6t(e,t){var r=e.glplot.gl,n=T6t({gl:r}),i=new LRe(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}zRe.exports={findNearestOnAxis:ek,generateIsoMeshes:PRe,createIsosurfaceTrace:C6t}});var RRe=Ae((rgr,IRe)=>{"use strict";IRe.exports={attributes:oF(),supplyDefaults:nZ().supplyDefaults,calc:sZ(),colorbar:{min:"cmin",max:"cmax"},plot:uF().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var FRe=Ae((igr,DRe)=>{"use strict";DRe.exports=RRe()});var fZ=Ae((ngr,ORe)=>{"use strict";var L6t=nc(),Eh=oF(),P6t=J4(),BRe=Gf(),uZ=Su().extendFlat,z6t=Sc().overrideAll,fF=ORe.exports=z6t(uZ({x:Eh.x,y:Eh.y,z:Eh.z,value:Eh.value,isomin:Eh.isomin,isomax:Eh.isomax,surface:Eh.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:Eh.slices,caps:Eh.caps,text:Eh.text,hovertext:Eh.hovertext,xhoverformat:Eh.xhoverformat,yhoverformat:Eh.yhoverformat,zhoverformat:Eh.zhoverformat,valuehoverformat:Eh.valuehoverformat,hovertemplate:Eh.hovertemplate,hovertemplatefallback:Eh.hovertemplatefallback},L6t("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:Eh.colorbar,opacity:Eh.opacity,opacityscale:P6t.opacityscale,lightposition:Eh.lightposition,lighting:Eh.lighting,flatshading:Eh.flatshading,contour:Eh.contour,hoverinfo:uZ({},BRe.hoverinfo),showlegend:uZ({},BRe.showlegend,{dflt:!1})}),"calc","nested");fF.x.editType=fF.y.editType=fF.z.editType=fF.value.editType="calc+clearAxisTypes"});var NRe=Ae((agr,qRe)=>{"use strict";var I6t=ei(),R6t=fZ(),D6t=nZ().supplyIsoDefaults,F6t=$X().opacityscaleDefaults;qRe.exports=function(t,r,n,i){function a(o,s){return I6t.coerce(t,r,R6t,o,s)}D6t(t,r,n,i,a),F6t(t,r,i,a)}});var HRe=Ae((ogr,GRe)=>{"use strict";var B6t=qd().gl_mesh3d,O6t=$g().parseColorScale,q6t=ei().isArrayOrTypedArray,N6t=Jg(),U6t=_c().extractOpts,URe=XA(),cZ=uF().findNearestOnAxis,V6t=uF().generateIsoMeshes;function VRe(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.data=null,this.showContour=!1}var hZ=VRe.prototype;hZ.handlePick=function(e){if(e.object===this.mesh){var t=e.data.index,r=this.data._meshX[t],n=this.data._meshY[t],i=this.data._meshZ[t],a=this.data._Ys.length,o=this.data._Zs.length,s=cZ(r,this.data._Xs).id,u=cZ(n,this.data._Ys).id,l=cZ(i,this.data._Zs).id,f=e.index=l+o*u+o*a*s;e.traceCoordinate=[this.data._meshX[f],this.data._meshY[f],this.data._meshZ[f],this.data._value[f]];var c=this.data.hovertext||this.data.text;return q6t(c)&&c[f]!==void 0?e.textLabel=c[f]:c&&(e.textLabel=c),!0}};hZ.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=V6t(e);function n(u,l,f,c){return l.map(function(h){return u.d2l(h,0,c)*f})}var i=URe(n(r.xaxis,e._meshX,t.dataScale[0],e.xcalendar),n(r.yaxis,e._meshY,t.dataScale[1],e.ycalendar),n(r.zaxis,e._meshZ,t.dataScale[2],e.zcalendar)),a=URe(e._meshI,e._meshJ,e._meshK),o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,opacityscale:e.opacityscale,contourEnable:e.contour.show,contourColor:N6t(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading},s=U6t(e);o.vertexIntensity=e._meshIntensity,o.vertexIntensityBounds=[s.min,s.max],o.colormap=O6t(e),this.mesh.update(o)};hZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function G6t(e,t){var r=e.glplot.gl,n=B6t({gl:r}),i=new VRe(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}GRe.exports=G6t});var jRe=Ae((sgr,WRe)=>{"use strict";WRe.exports={attributes:fZ(),supplyDefaults:NRe(),calc:sZ(),colorbar:{min:"cmin",max:"cmax"},plot:HRe(),moduleType:"trace",name:"volume",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var ZRe=Ae((lgr,XRe)=>{"use strict";XRe.exports=jRe()});var JRe=Ae((ugr,KRe)=>{"use strict";var H6t=$l(),YRe=ei(),W6t=rd(),j6t=WA();KRe.exports=function(t,r,n,i){function a(f,c){return YRe.coerce(t,r,j6t,f,c)}function o(f){var c=f.map(function(h){var d=a(h);return d&&YRe.isArrayOrTypedArray(d)?d:null});return c.every(function(h){return h&&h.length===c[0].length})&&c}var s=o(["x","y","z"]);if(!s){r.visible=!1;return}if(o(["i","j","k"]),r.i&&(!r.j||!r.k)||r.j&&(!r.k||!r.i)||r.k&&(!r.i||!r.j)){r.visible=!1;return}var u=H6t.getComponentMethod("calendars","handleTraceDefaults");u(t,r,["x","y","z"],i),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach(function(f){a(f)});var l=a("contour.show");l&&(a("contour.color"),a("contour.width")),"intensity"in t?(a("intensity"),a("intensitymode"),W6t(t,r,i,a,{prefix:"",cLetter:"c"})):(r.showscale=!1,"facecolor"in t?a("facecolor"):"vertexcolor"in t?a("vertexcolor"):a("color",n)),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var QRe=Ae((fgr,$Re)=>{"use strict";var X6t=gp();$Re.exports=function(t,r){r.intensity&&X6t(t,r,{vals:r.intensity,containerStr:"",cLetter:"c"})}});var nDe=Ae((cgr,iDe)=>{"use strict";var Z6t=qd().gl_mesh3d,Y6t=qd().delaunay_triangulate,K6t=qd().alpha_shape,J6t=qd().convex_hull,$6t=$g().parseColorScale,Q6t=ei().isArrayOrTypedArray,mZ=Jg(),eFt=_c().extractOpts,eDe=XA();function rDe(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var yZ=rDe.prototype;yZ.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index;e.data._cellCenter?e.traceCoordinate=e.data.dataCoordinate:e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]];var r=this.data.hovertext||this.data.text;return Q6t(r)&&r[t]!==void 0?e.textLabel=r[t]:r&&(e.textLabel=r),!0}};function tDe(e){for(var t=[],r=e.length,n=0;n=t-.5)return!1;return!0}yZ.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=e;var n=e.x.length,i=eDe(dZ(r.xaxis,e.x,t.dataScale[0],e.xcalendar),dZ(r.yaxis,e.y,t.dataScale[1],e.ycalendar),dZ(r.zaxis,e.z,t.dataScale[2],e.zcalendar)),a;if(e.i&&e.j&&e.k){if(e.i.length!==e.j.length||e.j.length!==e.k.length||!vZ(e.i,n)||!vZ(e.j,n)||!vZ(e.k,n))return;a=eDe(pZ(e.i),pZ(e.j),pZ(e.k))}else e.alphahull===0?a=J6t(i):e.alphahull>0?a=K6t(e.alphahull,i):a=tFt(e.delaunayaxis,i);var o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,contourEnable:e.contour.show,contourColor:mZ(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading};if(e.intensity){var s=eFt(e);this.color="#fff";var u=e.intensitymode;o[u+"Intensity"]=e.intensity,o[u+"IntensityBounds"]=[s.min,s.max],o.colormap=$6t(e)}else e.vertexcolor?(this.color=e.vertexcolor[0],o.vertexColors=tDe(e.vertexcolor)):e.facecolor?(this.color=e.facecolor[0],o.cellColors=tDe(e.facecolor)):(this.color=e.color,o.meshColor=mZ(e.color));this.mesh.update(o)};yZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function rFt(e,t){var r=e.glplot.gl,n=Z6t({gl:r}),i=new rDe(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}iDe.exports=rFt});var oDe=Ae((hgr,aDe)=>{"use strict";aDe.exports={attributes:WA(),supplyDefaults:JRe(),calc:QRe(),colorbar:{min:"cmin",max:"cmax"},plot:nDe(),moduleType:"trace",name:"mesh3d",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var lDe=Ae((dgr,sDe)=>{"use strict";sDe.exports=oDe()});var _Z=Ae((pgr,fDe)=>{"use strict";var iFt=nc(),ZA=jc().axisHoverFormat,{hovertemplateAttrs:nFt,templatefallbackAttrs:aFt}=Ff(),oFt=WA(),uDe=Gf(),gZ=Su().extendFlat,cF={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},sizemode:{valType:"enumerated",values:["scaled","absolute","raw"],editType:"calc",dflt:"scaled"},sizeref:{valType:"number",editType:"calc",min:0},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:nFt({editType:"calc"},{keys:["norm"]}),hovertemplatefallback:aFt({editType:"calc"}),uhoverformat:ZA("u",1),vhoverformat:ZA("v",1),whoverformat:ZA("w",1),xhoverformat:ZA("x"),yhoverformat:ZA("y"),zhoverformat:ZA("z"),showlegend:gZ({},uDe.showlegend,{dflt:!1})};gZ(cF,iFt("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var sFt=["opacity","lightposition","lighting"];sFt.forEach(function(e){cF[e]=oFt[e]});cF.hoverinfo=gZ({},uDe.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"});fDe.exports=cF});var hDe=Ae((vgr,cDe)=>{"use strict";var lFt=ei(),uFt=rd(),fFt=_Z();cDe.exports=function(t,r,n,i){function a(d,p){return lFt.coerce(t,r,fFt,d,p)}var o=a("u"),s=a("v"),u=a("w"),l=a("x"),f=a("y"),c=a("z");if(!o||!o.length||!s||!s.length||!u||!u.length||!l||!l.length||!f||!f.length||!c||!c.length){r.visible=!1;return}var h=a("sizemode");a("sizeref",h==="raw"?1:.5),a("anchor"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),uFt(t,r,i,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var pDe=Ae((mgr,dDe)=>{"use strict";var cFt=gp();dDe.exports=function(t,r){for(var n=r.u,i=r.v,a=r.w,o=Math.min(r.x.length,r.y.length,r.z.length,n.length,i.length,a.length),s=-1/0,u=1/0,l=0;l{"use strict";var hFt=qd().gl_cone3d,dFt=qd().gl_cone3d.createConeMesh,pFt=ei().simpleMap,vFt=$g().parseColorScale,mFt=_c().extractOpts,yFt=ei().isArrayOrTypedArray,vDe=XA();function mDe(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var xZ=mDe.prototype;xZ.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index,r=this.data.x[t],n=this.data.y[t],i=this.data.z[t],a=this.data.u[t],o=this.data.v[t],s=this.data.w[t];e.traceCoordinate=[r,n,i,a,o,s,Math.sqrt(a*a+o*o+s*s)];var u=this.data.hovertext||this.data.text;return yFt(u)&&u[t]!==void 0?e.textLabel=u[t]:u&&(e.textLabel=u),!0}};var gFt={xaxis:0,yaxis:1,zaxis:2},_Ft={tip:1,tail:0,cm:.25,center:.5},xFt={tip:1,tail:1,cm:.75,center:.5};function yDe(e,t){var r=e.fullSceneLayout,n=e.dataScale,i={};function a(f,c){var h=r[c],d=n[gFt[c]];return pFt(f,function(p){return h.d2l(p)*d})}i.vectors=vDe(a(t.u,"xaxis"),a(t.v,"yaxis"),a(t.w,"zaxis"),t._len),i.positions=vDe(a(t.x,"xaxis"),a(t.y,"yaxis"),a(t.z,"zaxis"),t._len);var o=mFt(t);i.colormap=vFt(t),i.vertexIntensityBounds=[o.min/t._normMax,o.max/t._normMax],i.coneOffset=_Ft[t.anchor];var s=t.sizemode;s==="scaled"?i.coneSize=t.sizeref||.5:s==="absolute"?i.coneSize=t.sizeref&&t._normMax?t.sizeref/t._normMax:.5:s==="raw"&&(i.coneSize=t.sizeref),i.coneSizemode=s;var u=hFt(i),l=t.lightposition;return u.lightPosition=[l.x,l.y,l.z],u.ambient=t.lighting.ambient,u.diffuse=t.lighting.diffuse,u.specular=t.lighting.specular,u.roughness=t.lighting.roughness,u.fresnel=t.lighting.fresnel,u.opacity=t.opacity,t._pad=xFt[t.anchor]*u.vectorScale*u.coneScale*t._normMax,u}xZ.update=function(e){this.data=e;var t=yDe(this.scene,e);this.mesh.update(t)};xZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function bFt(e,t){var r=e.glplot.gl,n=yDe(e,t),i=dFt(r,n),a=new mDe(e,t.uid);return a.mesh=i,a.data=t,i._trace=a,e.glplot.add(i),a}gDe.exports=bFt});var bDe=Ae((ggr,xDe)=>{"use strict";xDe.exports={moduleType:"trace",name:"cone",basePlotModule:$_(),categories:["gl3d","showLegend"],attributes:_Z(),supplyDefaults:hDe(),colorbar:{min:"cmin",max:"cmax"},calc:pDe(),plot:_De(),eventData:function(e,t){return e.norm=t.traceCoordinate[6],e},meta:{}}});var TDe=Ae((_gr,wDe)=>{"use strict";wDe.exports=bDe()});var wZ=Ae((xgr,SDe)=>{"use strict";var wFt=nc(),YA=jc().axisHoverFormat,{hovertemplateAttrs:TFt,templatefallbackAttrs:AFt}=Ff(),SFt=WA(),ADe=Gf(),bZ=Su().extendFlat,hF={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},starts:{x:{valType:"data_array",editType:"calc"},y:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},editType:"calc"},maxdisplayed:{valType:"integer",min:0,dflt:1e3,editType:"calc"},sizeref:{valType:"number",editType:"calc",min:0,dflt:1},text:{valType:"string",dflt:"",editType:"calc"},hovertext:{valType:"string",dflt:"",editType:"calc"},hovertemplate:TFt({editType:"calc"},{keys:["tubex","tubey","tubez","tubeu","tubev","tubew","norm","divergence"]}),hovertemplatefallback:AFt({editType:"calc"}),uhoverformat:YA("u",1),vhoverformat:YA("v",1),whoverformat:YA("w",1),xhoverformat:YA("x"),yhoverformat:YA("y"),zhoverformat:YA("z"),showlegend:bZ({},ADe.showlegend,{dflt:!1})};bZ(hF,wFt("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var MFt=["opacity","lightposition","lighting"];MFt.forEach(function(e){hF[e]=SFt[e]});hF.hoverinfo=bZ({},ADe.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","divergence","text","name"],dflt:"x+y+z+norm+text+name"});SDe.exports=hF});var EDe=Ae((bgr,MDe)=>{"use strict";var EFt=ei(),kFt=rd(),CFt=wZ();MDe.exports=function(t,r,n,i){function a(h,d){return EFt.coerce(t,r,CFt,h,d)}var o=a("u"),s=a("v"),u=a("w"),l=a("x"),f=a("y"),c=a("z");if(!o||!o.length||!s||!s.length||!u||!u.length||!l||!l.length||!f||!f.length||!c||!c.length){r.visible=!1;return}a("starts.x"),a("starts.y"),a("starts.z"),a("maxdisplayed"),a("sizeref"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),kFt(t,r,i,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var DDe=Ae((wgr,RDe)=>{"use strict";var LDe=qd().gl_streamtube3d,LFt=LDe.createTubeMesh,PFt=ei(),zFt=$g().parseColorScale,IFt=_c().extractOpts,kDe=XA(),PDe={xaxis:0,yaxis:1,zaxis:2};function zDe(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var AZ=zDe.prototype;AZ.handlePick=function(e){var t=this.scene.fullSceneLayout,r=this.scene.dataScale;function n(o,s){var u=t[s],l=r[PDe[s]];return u.l2c(o)/l}if(e.object===this.mesh){var i=e.data.position,a=e.data.velocity;return e.traceCoordinate=[n(i[0],"xaxis"),n(i[1],"yaxis"),n(i[2],"zaxis"),n(a[0],"xaxis"),n(a[1],"yaxis"),n(a[2],"zaxis"),e.data.intensity*this.data._normMax,e.data.divergence],e.textLabel=this.data.hovertext||this.data.text,!0}};function CDe(e){var t=e.length,r;return t>2?r=e.slice(1,t-1):t===2?r=[(e[0]+e[1])/2]:r=e,r}function TZ(e){var t=e.length;return t===1?[.5,.5]:[e[1]-e[0],e[t-1]-e[t-2]]}function IDe(e,t){var r=e.fullSceneLayout,n=e.dataScale,i=t._len,a={};function o(B,F){var U=r[F],G=n[PDe[F]];return PFt.simpleMap(B,function(j){return U.d2l(j)*G})}if(a.vectors=kDe(o(t._u,"xaxis"),o(t._v,"yaxis"),o(t._w,"zaxis"),i),!i)return{positions:[],cells:[]};var s=o(t._Xs,"xaxis"),u=o(t._Ys,"yaxis"),l=o(t._Zs,"zaxis");a.meshgrid=[s,u,l],a.gridFill=t._gridFill;var f=t._slen;if(f)a.startingPositions=kDe(o(t._startsX,"xaxis"),o(t._startsY,"yaxis"),o(t._startsZ,"zaxis"));else{for(var c=u[0],h=CDe(s),d=CDe(l),p=new Array(h.length*d.length),_=0,b=0;b{"use strict";FDe.exports={moduleType:"trace",name:"streamtube",basePlotModule:$_(),categories:["gl3d","showLegend"],attributes:wZ(),supplyDefaults:EDe(),colorbar:{min:"cmin",max:"cmax"},calc:sF().calc,plot:DDe(),eventData:function(e,t){return e.tubex=e.x,e.tubey=e.y,e.tubez=e.z,e.tubeu=t.traceCoordinate[3],e.tubev=t.traceCoordinate[4],e.tubew=t.traceCoordinate[5],e.norm=t.traceCoordinate[6],e.divergence=t.traceCoordinate[7],delete e.x,delete e.y,delete e.z,e},meta:{}}});var qDe=Ae((Agr,ODe)=>{"use strict";ODe.exports=BDe()});var H2=Ae((Mgr,GDe)=>{"use strict";var{hovertemplateAttrs:DFt,texttemplateAttrs:FFt,templatefallbackAttrs:NDe}=Ff(),BFt=km(),jy=Zc(),OFt=Gf(),UDe=nc(),qFt=Id().dash,G2=Su().extendFlat,NFt=Sc().overrideAll,em=jy.marker,VDe=jy.line,UFt=em.line,Sgr=["The library used by the *country names* `locationmode` option is changing in an upcoming version.","Country names in existing plots may not work in the new version."].join(" ");GDe.exports=NFt({lon:{valType:"data_array"},lat:{valType:"data_array"},locations:{valType:"data_array"},locationmode:{valType:"enumerated",values:["ISO-3","USA-states","country names","geojson-id"],dflt:"ISO-3"},geojson:{valType:"any",editType:"calc"},featureidkey:{valType:"string",editType:"calc",dflt:"id"},mode:G2({},jy.mode,{dflt:"markers"}),text:G2({},jy.text,{}),texttemplate:FFt({editType:"plot"},{keys:["lat","lon","location","text"]}),texttemplatefallback:NDe({editType:"plot"}),hovertext:G2({},jy.hovertext,{}),textfont:jy.textfont,textposition:jy.textposition,line:{color:VDe.color,width:VDe.width,dash:qFt},connectgaps:jy.connectgaps,marker:G2({symbol:em.symbol,opacity:em.opacity,angle:em.angle,angleref:G2({},em.angleref,{values:["previous","up","north"]}),standoff:em.standoff,size:em.size,sizeref:em.sizeref,sizemin:em.sizemin,sizemode:em.sizemode,colorbar:em.colorbar,line:G2({width:UFt.width},UDe("marker.line")),gradient:em.gradient},UDe("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:BFt(),selected:jy.selected,unselected:jy.unselected,hoverinfo:G2({},OFt.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:DFt(),hovertemplatefallback:NDe()},"calc","nested")});var WDe=Ae((Egr,HDe)=>{"use strict";var dF=ei(),SZ=lc(),VFt=$v(),GFt=I0(),HFt=R0(),WFt=zm(),jFt=H2(),XFt=["The library used by the *country names* `locationmode` option is changing in the next major version.","Some country names in existing plots may not work in the new version.","To ensure consistent behavior, consider setting `locationmode` to *ISO-3*."].join(" ");HDe.exports=function(t,r,n,i){function a(d,p){return dF.coerce(t,r,jFt,d,p)}var o=a("locations"),s;if(o&&o.length){var u=a("geojson"),l;(typeof u=="string"&&u!==""||dF.isPlainObject(u))&&(l="geojson-id");var f=a("locationmode",l);f==="country names"&&dF.warn(XFt),f==="geojson-id"&&a("featureidkey"),s=o.length}else{var c=a("lon")||[],h=a("lat")||[];s=Math.min(c.length,h.length)}if(!s){r.visible=!1;return}r._length=s,a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),SZ.hasMarkers(r)&&VFt(t,r,n,i,a,{gradient:!0}),SZ.hasLines(r)&&(GFt(t,r,n,i,a),a("connectgaps")),SZ.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),HFt(t,r,i,a)),a("fill"),r.fill!=="none"&&WFt(t,r,n,a),dF.coerceSelectionMarkerOpacity(r,a)}});var ZDe=Ae((kgr,XDe)=>{"use strict";var jDe=wu();XDe.exports=function(t,r,n){var i={},a=n[r.geo]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=jDe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=jDe.tickText(o,o.c2l(s[1]),!0).text,i}});var pF=Ae((Cgr,$De)=>{"use strict";var MZ=ku(),YDe=rf().BADNUM,ZFt=D0(),YFt=ky(),KFt=F0(),JFt=ei().isArrayOrTypedArray,KDe=ei()._;function JDe(e){return e&&typeof e=="string"}$De.exports=function(t,r){var n=JFt(r.locations),i=n?r.locations.length:r._length,a=new Array(i),o;r.geojson?o=function(h){return JDe(h)||MZ(h)}:o=JDe;for(var s=0;s{"use strict";kp.projNames={airy:"airy",aitoff:"aitoff","albers usa":"albersUsa",albers:"albers",august:"august","azimuthal equal area":"azimuthalEqualArea","azimuthal equidistant":"azimuthalEquidistant",baker:"baker",bertin1953:"bertin1953",boggs:"boggs",bonne:"bonne",bottomley:"bottomley",bromley:"bromley",collignon:"collignon","conic conformal":"conicConformal","conic equal area":"conicEqualArea","conic equidistant":"conicEquidistant",craig:"craig",craster:"craster","cylindrical equal area":"cylindricalEqualArea","cylindrical stereographic":"cylindricalStereographic",eckert1:"eckert1",eckert2:"eckert2",eckert3:"eckert3",eckert4:"eckert4",eckert5:"eckert5",eckert6:"eckert6",eisenlohr:"eisenlohr","equal earth":"equalEarth",equirectangular:"equirectangular",fahey:"fahey","foucaut sinusoidal":"foucautSinusoidal",foucaut:"foucaut",ginzburg4:"ginzburg4",ginzburg5:"ginzburg5",ginzburg6:"ginzburg6",ginzburg8:"ginzburg8",ginzburg9:"ginzburg9",gnomonic:"gnomonic","gringorten quincuncial":"gringortenQuincuncial",gringorten:"gringorten",guyou:"guyou",hammer:"hammer",hill:"hill",homolosine:"homolosine",hufnagel:"hufnagel",hyperelliptical:"hyperelliptical",kavrayskiy7:"kavrayskiy7",lagrange:"lagrange",larrivee:"larrivee",laskowski:"laskowski",loximuthal:"loximuthal",mercator:"mercator",miller:"miller",mollweide:"mollweide","mt flat polar parabolic":"mtFlatPolarParabolic","mt flat polar quartic":"mtFlatPolarQuartic","mt flat polar sinusoidal":"mtFlatPolarSinusoidal","natural earth":"naturalEarth","natural earth1":"naturalEarth1","natural earth2":"naturalEarth2","nell hammer":"nellHammer",nicolosi:"nicolosi",orthographic:"orthographic",patterson:"patterson","peirce quincuncial":"peirceQuincuncial",polyconic:"polyconic","rectangular polyconic":"rectangularPolyconic",robinson:"robinson",satellite:"satellite","sinu mollweide":"sinuMollweide",sinusoidal:"sinusoidal",stereographic:"stereographic",times:"times","transverse mercator":"transverseMercator","van der grinten":"vanDerGrinten","van der grinten2":"vanDerGrinten2","van der grinten3":"vanDerGrinten3","van der grinten4":"vanDerGrinten4",wagner4:"wagner4",wagner6:"wagner6",wiechel:"wiechel","winkel tripel":"winkel3",winkel3:"winkel3"};kp.axesNames=["lonaxis","lataxis"];kp.lonaxisSpan={orthographic:180,"azimuthal equal area":360,"azimuthal equidistant":360,"conic conformal":180,gnomonic:160,stereographic:180,"transverse mercator":180,"*":360};kp.lataxisSpan={"conic conformal":150,stereographic:179.5,"*":180};kp.scopeDefaults={world:{lonaxisRange:[-180,180],lataxisRange:[-90,90],projType:"equirectangular",projRotate:[0,0,0]},usa:{lonaxisRange:[-180,-50],lataxisRange:[15,80],projType:"albers usa"},europe:{lonaxisRange:[-30,60],lataxisRange:[30,85],projType:"conic conformal",projRotate:[15,0,0],projParallels:[0,60]},asia:{lonaxisRange:[22,160],lataxisRange:[-15,55],projType:"mercator",projRotate:[0,0,0]},africa:{lonaxisRange:[-30,60],lataxisRange:[-40,40],projType:"mercator",projRotate:[0,0,0]},"north america":{lonaxisRange:[-180,-45],lataxisRange:[5,85],projType:"conic conformal",projRotate:[-100,0,0],projParallels:[29.5,45.5]},"south america":{lonaxisRange:[-100,-30],lataxisRange:[-60,15],projType:"mercator",projRotate:[0,0,0]},antarctica:{lonaxisRange:[-180,180],lataxisRange:[-90,-60],projType:"equirectangular",projRotate:[0,0,0]},oceania:{lonaxisRange:[-180,180],lataxisRange:[-50,25],projType:"equirectangular",projRotate:[0,0,0]}};kp.clipPad=.001;kp.precision=.1;kp.landColor="#F0DC82";kp.waterColor="#3399FF";kp.locationmodeToLayer={"ISO-3":"countries","USA-states":"subunits","country names":"countries"};kp.sphereSVG={type:"Sphere"};kp.fillLayers={ocean:1,land:1,lakes:1};kp.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1};kp.layers=["bg","ocean","land","lakes","subunits","countries","coastlines","rivers","lataxis","lonaxis","frame","backplot","frontplot"];kp.layersForChoropleth=["bg","ocean","land","subunits","countries","coastlines","lataxis","lonaxis","frame","backplot","rivers","lakes","frontplot"];kp.layerNameToAdjective={ocean:"ocean",land:"land",lakes:"lake",subunits:"subunit",countries:"country",coastlines:"coastline",rivers:"river",frame:"frame"}});var EZ=Ae((vF,QDe)=>{(function(e,t){typeof vF=="object"&&typeof QDe!="undefined"?t(vF):(e=e||self,t(e.topojson=e.topojson||{}))})(vF,function(e){"use strict";function t(E){return E}function r(E){if(E==null)return t;var A,L,x=E.scale[0],C=E.scale[1],M=E.translate[0],m=E.translate[1];return function(P,T){T||(A=L=0);var B=2,F=P.length,U=new Array(F);for(U[0]=(A+=P[0])*x+M,U[1]=(L+=P[1])*C+m;BM&&(M=B[0]),B[1]m&&(m=B[1])}function T(B){switch(B.type){case"GeometryCollection":B.geometries.forEach(T);break;case"Point":P(B.coordinates);break;case"MultiPoint":B.coordinates.forEach(P);break}}E.arcs.forEach(function(B){for(var F=-1,U=B.length,G;++FM&&(M=G[0]),G[1]m&&(m=G[1])});for(L in E.objects)T(E.objects[L]);return[x,C,M,m]}function i(E,A){for(var L,x=E.length,C=x-A;C<--x;)L=E[C],E[C++]=E[x],E[x]=L}function a(E,A){return typeof A=="string"&&(A=E.objects[A]),A.type==="GeometryCollection"?{type:"FeatureCollection",features:A.geometries.map(function(L){return o(E,L)})}:o(E,A)}function o(E,A){var L=A.id,x=A.bbox,C=A.properties==null?{}:A.properties,M=s(E,A);return L==null&&x==null?{type:"Feature",properties:C,geometry:M}:x==null?{type:"Feature",id:L,properties:C,geometry:M}:{type:"Feature",id:L,bbox:x,properties:C,geometry:M}}function s(E,A){var L=r(E.transform),x=E.arcs;function C(F,U){U.length&&U.pop();for(var G=x[F<0?~F:F],j=0,H=G.length;j1)x=c(E,A,L);else for(C=0,x=new Array(M=E.arcs.length);C1)for(var U=1,G=P(B[0]),j,H;UG&&(H=B[0],B[0]=B[U],B[U]=H,G=j);return B}).filter(function(T){return T.length>0})}}function _(E,A){for(var L=0,x=E.length;L>>1;E[C]=2))throw new Error("n must be \u22652");T=E.bbox||n(E);var L=T[0],x=T[1],C=T[2],M=T[3],m;A={scale:[C-L?(C-L)/(m-1):1,M-x?(M-x)/(m-1):1],translate:[L,x]}}else T=E.bbox;var P=v(A),T,B,F=E.objects,U={};function G(N){return P(N)}function j(N){var W;switch(N.type){case"GeometryCollection":W={type:"GeometryCollection",geometries:N.geometries.map(j)};break;case"Point":W={type:"Point",coordinates:G(N.coordinates)};break;case"MultiPoint":W={type:"MultiPoint",coordinates:N.coordinates.map(G)};break;default:return N}return N.id!=null&&(W.id=N.id),N.bbox!=null&&(W.bbox=N.bbox),N.properties!=null&&(W.properties=N.properties),W}function H(N){var W=0,re=1,ae=N.length,be,ze=new Array(ae);for(ze[0]=P(N[0],0);++W{"use strict";var kZ=e6e.exports={},$Ft=tk().locationmodeToLayer,QFt=EZ().feature;kZ.getTopojsonName=function(e){return[e.scope.replace(/ /g,"-"),"_",e.resolution.toString(),"m"].join("")};kZ.getTopojsonPath=function(e,t){return e+=e.endsWith("/")?"":"/",`${e}${t}.json`};kZ.getTopojsonFeatures=function(e,t){var r=$Ft[e.locationmode],n=t.objects[r];return QFt(t,n).features}});var tx=Ae(rk=>{"use strict";var e8t=rf().BADNUM;rk.calcTraceToLineCoords=function(e){for(var t=e[0].trace,r=t.connectgaps,n=[],i=[],a=0;a0&&(n.push(i),i=[])}return i.length>0&&n.push(i),n};rk.makeLine=function(e){return e.length===1?{type:"LineString",coordinates:e[0]}:{type:"MultiLineString",coordinates:e}};rk.makePolygon=function(e){if(e.length===1)return{type:"Polygon",coordinates:e};for(var t=new Array(e.length),r=0;r{t6e.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xE7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xE9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xE9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xE3)o.?tom(e|\xE9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}});var _F=Ae(bc=>{"use strict";Object.defineProperty(bc,"__esModule",{value:!0});var Bv=63710088e-1,LZ={centimeters:Bv*100,centimetres:Bv*100,degrees:360/(2*Math.PI),feet:Bv*3.28084,inches:Bv*39.37,kilometers:Bv/1e3,kilometres:Bv/1e3,meters:Bv,metres:Bv,miles:Bv/1609.344,millimeters:Bv*1e3,millimetres:Bv*1e3,nauticalmiles:Bv/1852,radians:1,yards:Bv*1.0936},CZ={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,nauticalmiles:29155334959812285e-23,millimeters:1e6,millimetres:1e6,yards:1.195990046};function rx(e,t,r={}){let n={type:"Feature"};return(r.id===0||r.id)&&(n.id=r.id),r.bbox&&(n.bbox=r.bbox),n.properties=t||{},n.geometry=e,n}function t8t(e,t,r={}){switch(e){case"Point":return PZ(t).geometry;case"LineString":return IZ(t).geometry;case"Polygon":return zZ(t).geometry;case"MultiPoint":return n6e(t).geometry;case"MultiLineString":return i6e(t).geometry;case"MultiPolygon":return a6e(t).geometry;default:throw new Error(e+" is invalid")}}function PZ(e,t,r={}){if(!e)throw new Error("coordinates is required");if(!Array.isArray(e))throw new Error("coordinates must be an Array");if(e.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!yF(e[0])||!yF(e[1]))throw new Error("coordinates must contain numbers");return rx({type:"Point",coordinates:e},t,r)}function r8t(e,t,r={}){return gF(e.map(n=>PZ(n,t)),r)}function zZ(e,t,r={}){for(let i of e){if(i.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(i[i.length-1].length!==i[0].length)throw new Error("First and last Position are not equivalent.");for(let a=0;azZ(n,t)),r)}function IZ(e,t,r={}){if(e.length<2)throw new Error("coordinates must be an array of two or more positions");return rx({type:"LineString",coordinates:e},t,r)}function n8t(e,t,r={}){return gF(e.map(n=>IZ(n,t)),r)}function gF(e,t={}){let r={type:"FeatureCollection"};return t.id&&(r.id=t.id),t.bbox&&(r.bbox=t.bbox),r.features=e,r}function i6e(e,t,r={}){return rx({type:"MultiLineString",coordinates:e},t,r)}function n6e(e,t,r={}){return rx({type:"MultiPoint",coordinates:e},t,r)}function a6e(e,t,r={}){return rx({type:"MultiPolygon",coordinates:e},t,r)}function a8t(e,t,r={}){return rx({type:"GeometryCollection",geometries:e},t,r)}function o8t(e,t=0){if(t&&!(t>=0))throw new Error("precision must be a positive number");let r=Math.pow(10,t||0);return Math.round(e*r)/r}function o6e(e,t="kilometers"){let r=LZ[t];if(!r)throw new Error(t+" units is invalid");return e*r}function RZ(e,t="kilometers"){let r=LZ[t];if(!r)throw new Error(t+" units is invalid");return e/r}function s8t(e,t){return s6e(RZ(e,t))}function l8t(e){let t=e%360;return t<0&&(t+=360),t}function u8t(e){return e=e%360,e>180?e-360:e<-180?e+360:e}function s6e(e){return e%(2*Math.PI)*180/Math.PI}function f8t(e){return e%360*Math.PI/180}function c8t(e,t="kilometers",r="kilometers"){if(!(e>=0))throw new Error("length must be a positive number");return o6e(RZ(e,t),r)}function h8t(e,t="meters",r="kilometers"){if(!(e>=0))throw new Error("area must be a positive number");let n=CZ[t];if(!n)throw new Error("invalid original units");let i=CZ[r];if(!i)throw new Error("invalid final units");return e/n*i}function yF(e){return!isNaN(e)&&e!==null&&!Array.isArray(e)}function d8t(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function p8t(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(e.length!==4&&e.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach(t=>{if(!yF(t))throw new Error("bbox must only contain numbers")})}function v8t(e){if(!e)throw new Error("id is required");if(["string","number"].indexOf(typeof e)===-1)throw new Error("id must be a number or a string")}bc.areaFactors=CZ;bc.azimuthToBearing=u8t;bc.bearingToAzimuth=l8t;bc.convertArea=h8t;bc.convertLength=c8t;bc.degreesToRadians=f8t;bc.earthRadius=Bv;bc.factors=LZ;bc.feature=rx;bc.featureCollection=gF;bc.geometry=t8t;bc.geometryCollection=a8t;bc.isNumber=yF;bc.isObject=d8t;bc.lengthToDegrees=s8t;bc.lengthToRadians=RZ;bc.lineString=IZ;bc.lineStrings=n8t;bc.multiLineString=i6e;bc.multiPoint=n6e;bc.multiPolygon=a6e;bc.point=PZ;bc.points=r8t;bc.polygon=zZ;bc.polygons=i8t;bc.radiansToDegrees=s6e;bc.radiansToLength=o6e;bc.round=o8t;bc.validateBBox=p8t;bc.validateId=v8t});var bF=Ae(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var jp=_F();function ik(e,t,r){if(e!==null)for(var n,i,a,o,s,u,l,f=0,c=0,h,d=e.type,p=d==="FeatureCollection",_=d==="Feature",b=p?e.features.length:1,v=0;vu||p>l||_>f){s=c,u=n,l=p,f=_,a=0;return}var b=jp.lineString.call(void 0,[s,c],r.properties);if(t(b,n,i,_,a)===!1)return!1;a++,s=c})===!1)return!1}}})}function w8t(e,t,r){var n=r,i=!1;return f6e(e,function(a,o,s,u,l){i===!1&&r===void 0?n=a:n=t(n,a,o,s,u,l),i=!0}),n}function c6e(e,t){if(!e)throw new Error("geojson is required");xF(e,function(r,n,i){if(r.geometry!==null){var a=r.geometry.type,o=r.geometry.coordinates;switch(a){case"LineString":if(t(r,n,i,0,0)===!1)return!1;break;case"Polygon":for(var s=0;s{"use strict";Object.defineProperty(wF,"__esModule",{value:!0});var h6e=_F(),M8t=bF();function v6e(e){return M8t.geomReduce.call(void 0,e,(t,r)=>t+E8t(r),0)}function E8t(e){let t=0,r;switch(e.type){case"Polygon":return d6e(e.coordinates);case"MultiPolygon":for(r=0;r0){t+=Math.abs(p6e(e[0]));for(let r=1;r=t?(n+2)%t:n+2],s=i[0]*FZ,u=a[1]*FZ,l=o[0]*FZ;r+=(l-s)*Math.sin(u),n++}return r*k8t}var C8t=v6e;wF.area=v6e;wF.default=C8t});var g6e=Ae(TF=>{"use strict";Object.defineProperty(TF,"__esModule",{value:!0});var L8t=_F(),P8t=bF();function y6e(e,t={}){let r=0,n=0,i=0;return P8t.coordEach.call(void 0,e,function(a){r+=a[0],n+=a[1],i++},!0),L8t.point.call(void 0,[r/i,n/i],t.properties)}var z8t=y6e;TF.centroid=y6e;TF.default=z8t});var x6e=Ae(AF=>{"use strict";Object.defineProperty(AF,"__esModule",{value:!0});var I8t=bF();function _6e(e,t={}){if(e.bbox!=null&&t.recompute!==!0)return e.bbox;let r=[1/0,1/0,-1/0,-1/0];return I8t.coordEach.call(void 0,e,n=>{r[0]>n[0]&&(r[0]=n[0]),r[1]>n[1]&&(r[1]=n[1]),r[2]{"use strict";var D8t=Jl(),T6e=r6e(),{area:F8t}=m6e(),{centroid:B8t}=g6e(),{bbox:O8t}=x6e(),b6e=GM(),KA=G1(),q8t=yg(),N8t=LM(),SF=E5(),w6e=Object.keys(T6e),U8t={"ISO-3":b6e,"USA-states":b6e,"country names":V8t};function V8t(e){for(var t=0;t0&&f[c+1][0]<0)return c;return null}switch(n==="RUS"||n==="FJI"?a=function(f){var c;if(l(f)===null)c=f;else for(c=new Array(f.length),u=0;uc?h[d++]=[f[u][0]+360,f[u][1]]:u===c?(h[d++]=f[u],h[d++]=[f[u][0],-90]):h[d++]=f[u];var p=SF.tester(h);p.pts.pop(),i.push(p)}:a=function(f){i.push(SF.tester(f))},t.type){case"MultiPolygon":for(o=0;o0?p.properties.ct=j8t(p):p.properties.ct=[NaN,NaN],h.fIn=f,h.fOut=p,i.push(p)}else KA.log(["Location",h.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete n[c]}switch(r.type){case"FeatureCollection":var u=r.features;for(a=0;ai&&(i=s,r=o)}else r=t;return B8t(r).geometry.coordinates}function X8t(e){var t=window.PlotlyGeoAssets||{},r=[];function n(u){return new Promise(function(l,f){D8t.json(u,function(c,h){if(c){delete t[u];var d=c.status===404?'GeoJSON at URL "'+u+'" does not exist.':"Unexpected error while fetching from "+u;return f(new Error(d))}return t[u]=h,l(h)})})}function i(u){return new Promise(function(l,f){var c=0,h=setInterval(function(){if(t[u]&&t[u]!=="pending")return clearInterval(h),l(t[u]);if(c>100)return clearInterval(h),f("Unexpected error while fetching from "+u);c++},50)})}for(var a=0;a{"use strict";var Y8t=Jl(),K8t=Mu(),M6e=jl(),E6e=ov(),J8t=E6e.stylePoints,$8t=E6e.styleText;k6e.exports=function(t,r){r&&Q8t(t,r)};function Q8t(e,t){var r=t[0].trace,n=t[0].node3;n.style("opacity",t[0].trace.opacity),J8t(n,r,e),$8t(n,r,e),n.selectAll("path.js-line").style("fill","none").each(function(i){var a=Y8t.select(this),o=i.trace,s=o.line||{};a.call(M6e.stroke,s.color).call(K8t.dashLine,s.dash||"",s.width||0),o.fill!=="none"&&a.call(M6e.fill,o.fillcolor)})}});var UZ=Ae((Ugr,P6e)=>{"use strict";var C6e=Jl(),EF=ei(),eBt=mF().getTopojsonFeatures,OZ=tx(),MF=ix(),L6e=Tm().findExtremes,NZ=rf().BADNUM,tBt=B0().calcMarkerSize,qZ=lc(),rBt=BZ();function iBt(e,t,r){var n=t.layers.frontplot.select(".scatterlayer"),i=EF.makeTraceGroups(n,r,"trace scattergeo");function a(o,s){o.lonlat[0]===NZ&&C6e.select(s).remove()}i.selectAll("*").remove(),i.each(function(o){var s=C6e.select(this),u=o[0].trace;if(qZ.hasLines(u)||u.fill!=="none"){var l=OZ.calcTraceToLineCoords(o),f=u.fill!=="none"?OZ.makePolygon(l):OZ.makeLine(l);s.selectAll("path.js-line").data([{geojson:f,trace:u}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}qZ.hasMarkers(u)&&s.selectAll("path.point").data(EF.identity).enter().append("path").classed("point",!0).each(function(c){a(c,this)}),qZ.hasText(u)&&s.selectAll("g").data(EF.identity).enter().append("g").append("text").each(function(c){a(c,this)}),rBt(e,o)})}function nBt(e,t){var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r._length,o,s;if(EF.isArrayOrTypedArray(r.locations)){var u=r.locationmode,l=u==="geojson-id"?MF.extractTraceFeature(e):eBt(r,i.topojson);for(o=0;o{"use strict";var aBt=Xc(),oBt=rf().BADNUM,sBt=uT(),lBt=ei().fillText,uBt=H2();z6e.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.xa,s=t.ya,u=t.subplot,l=u.projection.isLonLatOverEdges,f=u.project;function c(k){var E=k.lonlat;if(E[0]===oBt||l(E))return 1/0;var A=f(E),L=f([r,n]),x=Math.abs(A[0]-L[0]),C=Math.abs(A[1]-L[1]),M=Math.max(3,k.mrc||0);return Math.max(Math.sqrt(x*x+C*C)-M,1-3/M)}if(aBt.getClosest(i,c,t),t.index!==!1){var h=i[t.index],d=h.lonlat,p=[o.c2p(d),s.c2p(d)],_=h.mrc||1;t.x0=p[0]-_,t.x1=p[0]+_,t.y0=p[1]-_,t.y1=p[1]+_,t.loc=h.loc,t.lon=d[0],t.lat=d[1];var b={};b[a.geo]={_subplot:u};var v=a._module.formatLabels(h,a,b);return t.lonLabel=v.lonLabel,t.latLabel=v.latLabel,t.color=sBt(a,h),t.extraText=fBt(a,h,t,i[0].t.labels),t.hovertemplate=a.hovertemplate,[t]}};function fBt(e,t,r,n){if(e.hovertemplate)return;var i=t.hi||e.hoverinfo,a=i==="all"?uBt.hoverinfo.flags:i.split("+"),o=a.indexOf("location")!==-1&&Array.isArray(e.locations),s=a.indexOf("lon")!==-1,u=a.indexOf("lat")!==-1,l=a.indexOf("text")!==-1,f=[];function c(h){return h+"\xB0"}return o?f.push(t.loc):s&&u?f.push("("+c(r.latLabel)+", "+c(r.lonLabel)+")"):s?f.push(n.lon+c(r.lonLabel)):u&&f.push(n.lat+c(r.latLabel)),l&&lBt(t,e,f),f.join("
")}});var D6e=Ae((Ggr,R6e)=>{"use strict";R6e.exports=function(t,r,n,i,a){t.lon=r.lon,t.lat=r.lat,t.location=r.loc?r.loc:null;var o=i[a];return o.fIn&&o.fIn.properties&&(t.properties=o.fIn.properties),t}});var O6e=Ae((Hgr,B6e)=>{"use strict";var F6e=lc(),cBt=rf().BADNUM;B6e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,u,l,f,c,h,d=!F6e.hasMarkers(s)&&!F6e.hasText(s);if(d)return[];if(r===!1)for(h=0;h{(function(e,t){t(typeof kF=="object"&&typeof q6e!="undefined"?kF:e.d3=e.d3||{})})(kF,function(e){"use strict";function t(Ee,Me){return EeMe?1:Ee>=Me?0:NaN}function r(Ee){return Ee.length===1&&(Ee=n(Ee)),{left:function(Me,Ue,De,ye){for(De==null&&(De=0),ye==null&&(ye=Me.length);De>>1;Ee(Me[qe],Ue)<0?De=qe+1:ye=qe}return De},right:function(Me,Ue,De,ye){for(De==null&&(De=0),ye==null&&(ye=Me.length);De>>1;Ee(Me[qe],Ue)>0?ye=qe:De=qe+1}return De}}}function n(Ee){return function(Me,Ue){return t(Ee(Me),Ue)}}var i=r(t),a=i.right,o=i.left;function s(Ee,Me){Me==null&&(Me=u);for(var Ue=0,De=Ee.length-1,ye=Ee[0],qe=new Array(De<0?0:De);UeEe?1:Me>=Ee?0:NaN}function c(Ee){return Ee===null?NaN:+Ee}function h(Ee,Me){var Ue=Ee.length,De=0,ye=-1,qe=0,ce,Je,nt=0;if(Me==null)for(;++ye1)return nt/(De-1)}function d(Ee,Me){var Ue=h(Ee,Me);return Ue&&Math.sqrt(Ue)}function p(Ee,Me){var Ue=Ee.length,De=-1,ye,qe,ce;if(Me==null){for(;++De=ye)for(qe=ce=ye;++Deye&&(qe=ye),ce=ye)for(qe=ce=ye;++Deye&&(qe=ye),ce0)return[Ee];if((De=Me0)for(Ee=Math.ceil(Ee/Je),Me=Math.floor(Me/Je),ce=new Array(qe=Math.ceil(Me-Ee+1));++ye=0?(qe>=L?10:qe>=x?5:qe>=C?2:1)*Math.pow(10,ye):-Math.pow(10,-ye)/(qe>=L?10:qe>=x?5:qe>=C?2:1)}function P(Ee,Me,Ue){var De=Math.abs(Me-Ee)/Math.max(0,Ue),ye=Math.pow(10,Math.floor(Math.log(De)/Math.LN10)),qe=De/ye;return qe>=L?ye*=10:qe>=x?ye*=5:qe>=C&&(ye*=2),Meat;)Ke.pop(),--Ct;var wt=new Array(Ct+1),St;for(qe=0;qe<=Ct;++qe)St=wt[qe]=[],St.x0=qe>0?Ke[qe-1]:Nt,St.x1=qe=1)return+Ue(Ee[De-1],De-1,Ee);var De,ye=(De-1)*Me,qe=Math.floor(ye),ce=+Ue(Ee[qe],qe,Ee),Je=+Ue(Ee[qe+1],qe+1,Ee);return ce+(Je-ce)*(ye-qe)}}function U(Ee,Me,Ue){return Ee=v.call(Ee,c).sort(t),Math.ceil((Ue-Me)/(2*(F(Ee,.75)-F(Ee,.25))*Math.pow(Ee.length,-1/3)))}function G(Ee,Me,Ue){return Math.ceil((Ue-Me)/(3.5*d(Ee)*Math.pow(Ee.length,-1/3)))}function j(Ee,Me){var Ue=Ee.length,De=-1,ye,qe;if(Me==null){for(;++De=ye)for(qe=ye;++Deqe&&(qe=ye)}else for(;++De=ye)for(qe=ye;++Deqe&&(qe=ye);return qe}function H(Ee,Me){var Ue=Ee.length,De=Ue,ye=-1,qe,ce=0;if(Me==null)for(;++ye=0;)for(ce=Ee[Me],Ue=ce.length;--Ue>=0;)qe[--ye]=ce[Ue];return qe}function re(Ee,Me){var Ue=Ee.length,De=-1,ye,qe;if(Me==null){for(;++De=ye)for(qe=ye;++Deye&&(qe=ye)}else for(;++De=ye)for(qe=ye;++Deye&&(qe=ye);return qe}function ae(Ee,Me){for(var Ue=Me.length,De=new Array(Ue);Ue--;)De[Ue]=Ee[Me[Ue]];return De}function be(Ee,Me){if(Ue=Ee.length){var Ue,De=0,ye=0,qe,ce=Ee[ye];for(Me==null&&(Me=t);++De{(function(e,t){typeof CF=="object"&&typeof N6e!="undefined"?t(CF,nk()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(CF,function(e,t){"use strict";function r(){return new n}function n(){this.reset()}n.prototype={constructor:n,reset:function(){this.s=this.t=0},add:function(At){a(i,At,this.t),a(this,i.s,this.s),this.s?this.t+=i.t:this.s=i.t},valueOf:function(){return this.s}};var i=new n;function a(At,Vt,wr){var mr=At.s=Vt+wr,Fr=mr-Vt,_i=mr-Fr;At.t=Vt-_i+(wr-Fr)}var o=1e-6,s=1e-12,u=Math.PI,l=u/2,f=u/4,c=u*2,h=180/u,d=u/180,p=Math.abs,_=Math.atan,b=Math.atan2,v=Math.cos,k=Math.ceil,E=Math.exp,A=Math.log,L=Math.pow,x=Math.sin,C=Math.sign||function(At){return At>0?1:At<0?-1:0},M=Math.sqrt,m=Math.tan;function P(At){return At>1?0:At<-1?u:Math.acos(At)}function T(At){return At>1?l:At<-1?-l:Math.asin(At)}function B(At){return(At=x(At/2))*At}function F(){}function U(At,Vt){At&&j.hasOwnProperty(At.type)&&j[At.type](At,Vt)}var G={Feature:function(At,Vt){U(At.geometry,Vt)},FeatureCollection:function(At,Vt){for(var wr=At.features,mr=-1,Fr=wr.length;++mr=0?1:-1,Fr=mr*wr,_i=v(Vt),Si=x(Vt),Ci=te*Si,Ki=de*_i+Ci*v(Fr),Fn=Ci*mr*x(Fr);re.add(b(Fn,Ki)),Ce=At,de=_i,te=Si}function ye(At){return ae.reset(),W(At,ke),ae*2}function qe(At){return[b(At[1],At[0]),T(At[2])]}function ce(At){var Vt=At[0],wr=At[1],mr=v(wr);return[mr*v(Vt),mr*x(Vt),x(wr)]}function Je(At,Vt){return At[0]*Vt[0]+At[1]*Vt[1]+At[2]*Vt[2]}function nt(At,Vt){return[At[1]*Vt[2]-At[2]*Vt[1],At[2]*Vt[0]-At[0]*Vt[2],At[0]*Vt[1]-At[1]*Vt[0]]}function gt(At,Vt){At[0]+=Vt[0],At[1]+=Vt[1],At[2]+=Vt[2]}function Nt(At,Vt){return[At[0]*Vt,At[1]*Vt,At[2]*Vt]}function at(At){var Vt=M(At[0]*At[0]+At[1]*At[1]+At[2]*At[2]);At[0]/=Vt,At[1]/=Vt,At[2]/=Vt}var Ke,Ct,wt,St,Dt,Zt,Et,Te,ot=r(),Tt,vt,Ye={point:He,lineStart:et,lineEnd:It,polygonStart:function(){Ye.point=Yt,Ye.lineStart=cr,Ye.lineEnd=_r,ot.reset(),ke.polygonStart()},polygonEnd:function(){ke.polygonEnd(),Ye.point=He,Ye.lineStart=et,Ye.lineEnd=It,re<0?(Ke=-(wt=180),Ct=-(St=90)):ot>o?St=90:ot<-o&&(Ct=-90),vt[0]=Ke,vt[1]=wt},sphere:function(){Ke=-(wt=180),Ct=-(St=90)}};function He(At,Vt){Tt.push(vt=[Ke=At,wt=At]),VtSt&&(St=Vt)}function it(At,Vt){var wr=ce([At*d,Vt*d]);if(Te){var mr=nt(Te,wr),Fr=[mr[1],-mr[0],0],_i=nt(Fr,mr);at(_i),_i=qe(_i);var Si=At-Dt,Ci=Si>0?1:-1,Ki=_i[0]*h*Ci,Fn,Pi=p(Si)>180;Pi^(Ci*DtSt&&(St=Fn)):(Ki=(Ki+360)%360-180,Pi^(Ci*DtSt&&(St=Vt))),Pi?Atyr(Ke,wt)&&(wt=At):yr(At,wt)>yr(Ke,wt)&&(Ke=At):wt>=Ke?(Atwt&&(wt=At)):At>Dt?yr(Ke,At)>yr(Ke,wt)&&(wt=At):yr(At,wt)>yr(Ke,wt)&&(Ke=At)}else Tt.push(vt=[Ke=At,wt=At]);VtSt&&(St=Vt),Te=wr,Dt=At}function et(){Ye.point=it}function It(){vt[0]=Ke,vt[1]=wt,Ye.point=He,Te=null}function Yt(At,Vt){if(Te){var wr=At-Dt;ot.add(p(wr)>180?wr+(wr>0?360:-360):wr)}else Zt=At,Et=Vt;ke.point(At,Vt),it(At,Vt)}function cr(){ke.lineStart()}function _r(){Yt(Zt,Et),ke.lineEnd(),p(ot)>o&&(Ke=-(wt=180)),vt[0]=Ke,vt[1]=wt,Te=null}function yr(At,Vt){return(Vt-=At)<0?Vt+360:Vt}function Ut(At,Vt){return At[0]-Vt[0]}function Re(At,Vt){return At[0]<=At[1]?At[0]<=Vt&&Vt<=At[1]:Vtyr(mr[0],mr[1])&&(mr[1]=Fr[1]),yr(Fr[0],mr[1])>yr(mr[0],mr[1])&&(mr[0]=Fr[0])):_i.push(mr=Fr);for(Si=-1/0,wr=_i.length-1,Vt=0,mr=_i[wr];Vt<=wr;mr=Fr,++Vt)Fr=_i[Vt],(Ci=yr(mr[1],Fr[0]))>Si&&(Si=Ci,Ke=Fr[0],wt=mr[1])}return Tt=vt=null,Ke===1/0||Ct===1/0?[[NaN,NaN],[NaN,NaN]]:[[Ke,Ct],[wt,St]]}var Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di={sphere:F,point:ni,lineStart:Qi,lineEnd:Ni,polygonStart:function(){Di.lineStart=Rt,Di.lineEnd=yt},polygonEnd:function(){Di.lineStart=Qi,Di.lineEnd=Ni}};function ni(At,Vt){At*=d,Vt*=d;var wr=v(Vt);$i(wr*v(At),wr*x(At),x(Vt))}function $i(At,Vt,wr){++Oe,Fe+=(At-Fe)/Oe,ft+=(Vt-ft)/Oe,ge+=(wr-ge)/Oe}function Qi(){Di.point=si}function si(At,Vt){At*=d,Vt*=d;var wr=v(Vt);Er=wr*v(At),Rr=wr*x(At),pi=x(Vt),Di.point=Ai,$i(Er,Rr,pi)}function Ai(At,Vt){At*=d,Vt*=d;var wr=v(Vt),mr=wr*v(At),Fr=wr*x(At),_i=x(Vt),Si=b(M((Si=Rr*_i-pi*Fr)*Si+(Si=pi*mr-Er*_i)*Si+(Si=Er*Fr-Rr*mr)*Si),Er*mr+Rr*Fr+pi*_i);Ie+=Si,fe+=Si*(Er+(Er=mr)),pe+=Si*(Rr+(Rr=Fr)),dt+=Si*(pi+(pi=_i)),$i(Er,Rr,pi)}function Ni(){Di.point=ni}function Rt(){Di.point=Gt}function yt(){Wt(Gr,Br),Di.point=ni}function Gt(At,Vt){Gr=At,Br=Vt,At*=d,Vt*=d,Di.point=Wt;var wr=v(Vt);Er=wr*v(At),Rr=wr*x(At),pi=x(Vt),$i(Er,Rr,pi)}function Wt(At,Vt){At*=d,Vt*=d;var wr=v(Vt),mr=wr*v(At),Fr=wr*x(At),_i=x(Vt),Si=Rr*_i-pi*Fr,Ci=pi*mr-Er*_i,Ki=Er*Fr-Rr*mr,Fn=M(Si*Si+Ci*Ci+Ki*Ki),Pi=T(Fn),di=Fn&&-Pi/Fn;Pt+=di*Si,zt+=di*Ci,rr+=di*Ki,Ie+=Pi,fe+=Pi*(Er+(Er=mr)),pe+=Pi*(Rr+(Rr=Fr)),dt+=Pi*(pi+(pi=_i)),$i(Er,Rr,pi)}function xr(At){Oe=Ie=Fe=ft=ge=fe=pe=dt=Pt=zt=rr=0,W(At,Di);var Vt=Pt,wr=zt,mr=rr,Fr=Vt*Vt+wr*wr+mr*mr;return Fru?At+Math.round(-At/c)*c:At,Vt]}Or.invert=Or;function Hr(At,Vt,wr){return(At%=c)?Vt||wr?Nr(gi(At),ki(Vt,wr)):gi(At):Vt||wr?ki(Vt,wr):Or}function jr(At){return function(Vt,wr){return Vt+=At,[Vt>u?Vt-c:Vt<-u?Vt+c:Vt,wr]}}function gi(At){var Vt=jr(At);return Vt.invert=jr(-At),Vt}function ki(At,Vt){var wr=v(At),mr=x(At),Fr=v(Vt),_i=x(Vt);function Si(Ci,Ki){var Fn=v(Ki),Pi=v(Ci)*Fn,di=x(Ci)*Fn,Li=x(Ki),Mi=Li*wr+Pi*mr;return[b(di*Fr-Mi*_i,Pi*wr-Li*mr),T(Mi*Fr+di*_i)]}return Si.invert=function(Ci,Ki){var Fn=v(Ki),Pi=v(Ci)*Fn,di=x(Ci)*Fn,Li=x(Ki),Mi=Li*Fr-di*_i;return[b(di*Fr+Li*_i,Pi*wr+Mi*mr),T(Mi*wr-Pi*mr)]},Si}function Vi(At){At=Hr(At[0]*d,At[1]*d,At.length>2?At[2]*d:0);function Vt(wr){return wr=At(wr[0]*d,wr[1]*d),wr[0]*=h,wr[1]*=h,wr}return Vt.invert=function(wr){return wr=At.invert(wr[0]*d,wr[1]*d),wr[0]*=h,wr[1]*=h,wr},Vt}function ti(At,Vt,wr,mr,Fr,_i){if(wr){var Si=v(Vt),Ci=x(Vt),Ki=mr*wr;Fr==null?(Fr=Vt+mr*c,_i=Vt-Ki/2):(Fr=tn(Si,Fr),_i=tn(Si,_i),(mr>0?Fr<_i:Fr>_i)&&(Fr+=mr*c));for(var Fn,Pi=Fr;mr>0?Pi>_i:Pi<_i;Pi-=Ki)Fn=qe([Si,-Ci*v(Pi),-Ci*x(Pi)]),At.point(Fn[0],Fn[1])}}function tn(At,Vt){Vt=ce(Vt),Vt[0]-=At,at(Vt);var wr=P(-Vt[1]);return((-Vt[2]<0?-wr:wr)+c-o)%c}function Yr(){var At=Lr([0,0]),Vt=Lr(90),wr=Lr(6),mr,Fr,_i={point:Si};function Si(Ki,Fn){mr.push(Ki=Fr(Ki,Fn)),Ki[0]*=h,Ki[1]*=h}function Ci(){var Ki=At.apply(this,arguments),Fn=Vt.apply(this,arguments)*d,Pi=wr.apply(this,arguments)*d;return mr=[],Fr=Hr(-Ki[0]*d,-Ki[1]*d,0).invert,ti(_i,Fn,Pi,1),Ki={type:"Polygon",coordinates:[mr]},mr=Fr=null,Ki}return Ci.center=function(Ki){return arguments.length?(At=typeof Ki=="function"?Ki:Lr([+Ki[0],+Ki[1]]),Ci):At},Ci.radius=function(Ki){return arguments.length?(Vt=typeof Ki=="function"?Ki:Lr(+Ki),Ci):Vt},Ci.precision=function(Ki){return arguments.length?(wr=typeof Ki=="function"?Ki:Lr(+Ki),Ci):wr},Ci}function oi(){var At=[],Vt;return{point:function(wr,mr,Fr){Vt.push([wr,mr,Fr])},lineStart:function(){At.push(Vt=[])},lineEnd:F,rejoin:function(){At.length>1&&At.push(At.pop().concat(At.shift()))},result:function(){var wr=At;return At=[],Vt=null,wr}}}function Fi(At,Vt){return p(At[0]-Vt[0])=0;--Ci)Fr.point((di=Pi[Ci])[0],di[1]);else mr(Li.x,Li.p.x,-1,Fr);Li=Li.p}Li=Li.o,Pi=Li.z,Mi=!Mi}while(!Li.v);Fr.lineEnd()}}}function Ri(At){if(Vt=At.length){for(var Vt,wr=0,mr=At[0],Fr;++wr=0?1:-1,xl=dl*Ks,Bl=xl>u,bl=ta*is;if(Ii.add(b(bl*dl*x(xl),ya*Cs+bl*v(xl))),Si+=Bl?Ks+dl*c:Ks,Bl^Mi>=wr^va>=wr){var eu=nt(ce(Li),ce(pa));at(eu);var Zl=nt(_i,eu);at(Zl);var Ul=(Bl^Ks>=0?-1:1)*T(Zl[2]);(mr>Ul||mr===Ul&&(eu[0]||eu[1]))&&(Ci+=Bl^Ks>=0?1:-1)}}return(Si<-o||Si0){for(Ki||(Fr.polygonStart(),Ki=!0),Fr.lineStart(),Cs=0;Cs1&&zn&2&&is.push(is.pop().concat(is.shift())),Pi.push(is.filter(ct))}}return Li}}function ct(At){return At.length>1}function tr(At,Vt){return((At=At.x)[0]<0?At[1]-l-o:l-At[1])-((Vt=Vt.x)[0]<0?Vt[1]-l-o:l-Vt[1])}var pr=Xr(function(){return!0},gr,Ti,[-u,-l]);function gr(At){var Vt=NaN,wr=NaN,mr=NaN,Fr;return{lineStart:function(){At.lineStart(),Fr=1},point:function(_i,Si){var Ci=_i>0?u:-u,Ki=p(_i-Vt);p(Ki-u)0?l:-l),At.point(mr,wr),At.lineEnd(),At.lineStart(),At.point(Ci,wr),At.point(_i,wr),Fr=0):mr!==Ci&&Ki>=u&&(p(Vt-mr)o?_((x(Vt)*(_i=v(mr))*x(wr)-x(mr)*(Fr=v(Vt))*x(At))/(Fr*_i*Si)):(Vt+mr)/2}function Ti(At,Vt,wr,mr){var Fr;if(At==null)Fr=wr*l,mr.point(-u,Fr),mr.point(0,Fr),mr.point(u,Fr),mr.point(u,0),mr.point(u,-Fr),mr.point(0,-Fr),mr.point(-u,-Fr),mr.point(-u,0),mr.point(-u,Fr);else if(p(At[0]-Vt[0])>o){var _i=At[0]0,Fr=p(Vt)>o;function _i(Pi,di,Li,Mi){ti(Mi,At,wr,Li,Pi,di)}function Si(Pi,di){return v(Pi)*v(di)>Vt}function Ci(Pi){var di,Li,Mi,Gn,ta;return{lineStart:function(){Gn=Mi=!1,ta=1},point:function(ya,ia){var pa=[ya,ia],va,zn=Si(ya,ia),is=mr?zn?0:Fn(ya,ia):zn?Fn(ya+(ya<0?u:-u),ia):0;if(!di&&(Gn=Mi=zn)&&Pi.lineStart(),zn!==Mi&&(va=Ki(di,pa),(!va||Fi(di,va)||Fi(pa,va))&&(pa[2]=1)),zn!==Mi)ta=0,zn?(Pi.lineStart(),va=Ki(pa,di),Pi.point(va[0],va[1])):(va=Ki(di,pa),Pi.point(va[0],va[1],2),Pi.lineEnd()),di=va;else if(Fr&&di&&mr^zn){var Cs;!(is&Li)&&(Cs=Ki(pa,di,!0))&&(ta=0,mr?(Pi.lineStart(),Pi.point(Cs[0][0],Cs[0][1]),Pi.point(Cs[1][0],Cs[1][1]),Pi.lineEnd()):(Pi.point(Cs[1][0],Cs[1][1]),Pi.lineEnd(),Pi.lineStart(),Pi.point(Cs[0][0],Cs[0][1],3)))}zn&&(!di||!Fi(di,pa))&&Pi.point(pa[0],pa[1]),di=pa,Mi=zn,Li=is},lineEnd:function(){Mi&&Pi.lineEnd(),di=null},clean:function(){return ta|(Gn&&Mi)<<1}}}function Ki(Pi,di,Li){var Mi=ce(Pi),Gn=ce(di),ta=[1,0,0],ya=nt(Mi,Gn),ia=Je(ya,ya),pa=ya[0],va=ia-pa*pa;if(!va)return!Li&Πvar zn=Vt*ia/va,is=-Vt*pa/va,Cs=nt(ta,ya),Ks=Nt(ta,zn),dl=Nt(ya,is);gt(Ks,dl);var xl=Cs,Bl=Je(Ks,xl),bl=Je(xl,xl),eu=Bl*Bl-bl*(Je(Ks,Ks)-1);if(!(eu<0)){var Zl=M(eu),Ul=Nt(xl,(-Bl-Zl)/bl);if(gt(Ul,Ks),Ul=qe(Ul),!Li)return Ul;var ja=Pi[0],ns=di[0],Js=Pi[1],cs=di[1],sl;ns0^Ul[1]<(p(Ul[0]-ja)u^(ja<=Ul[0]&&Ul[0]<=ns)){var Ml=Nt(xl,(-Bl+Zl)/bl);return gt(Ml,Ks),[Ul,qe(Ml)]}}}function Fn(Pi,di){var Li=mr?At:u-At,Mi=0;return Pi<-Li?Mi|=1:Pi>Li&&(Mi|=2),di<-Li?Mi|=4:di>Li&&(Mi|=8),Mi}return Xr(Si,Ci,_i,mr?[0,-At]:[-u,At-u])}function ii(At,Vt,wr,mr,Fr,_i){var Si=At[0],Ci=At[1],Ki=Vt[0],Fn=Vt[1],Pi=0,di=1,Li=Ki-Si,Mi=Fn-Ci,Gn;if(Gn=wr-Si,!(!Li&&Gn>0)){if(Gn/=Li,Li<0){if(Gn0){if(Gn>di)return;Gn>Pi&&(Pi=Gn)}if(Gn=Fr-Si,!(!Li&&Gn<0)){if(Gn/=Li,Li<0){if(Gn>di)return;Gn>Pi&&(Pi=Gn)}else if(Li>0){if(Gn0)){if(Gn/=Mi,Mi<0){if(Gn0){if(Gn>di)return;Gn>Pi&&(Pi=Gn)}if(Gn=_i-Ci,!(!Mi&&Gn<0)){if(Gn/=Mi,Mi<0){if(Gn>di)return;Gn>Pi&&(Pi=Gn)}else if(Mi>0){if(Gn0&&(At[0]=Si+Pi*Li,At[1]=Ci+Pi*Mi),di<1&&(Vt[0]=Si+di*Li,Vt[1]=Ci+di*Mi),!0}}}}}var Xi=1e9,aa=-Xi;function Mn(At,Vt,wr,mr){function Fr(Fn,Pi){return At<=Fn&&Fn<=wr&&Vt<=Pi&&Pi<=mr}function _i(Fn,Pi,di,Li){var Mi=0,Gn=0;if(Fn==null||(Mi=Si(Fn,di))!==(Gn=Si(Pi,di))||Ki(Fn,Pi)<0^di>0)do Li.point(Mi===0||Mi===3?At:wr,Mi>1?mr:Vt);while((Mi=(Mi+di+4)%4)!==Gn);else Li.point(Pi[0],Pi[1])}function Si(Fn,Pi){return p(Fn[0]-At)0?0:3:p(Fn[0]-wr)0?2:1:p(Fn[1]-Vt)0?1:0:Pi>0?3:2}function Ci(Fn,Pi){return Ki(Fn.x,Pi.x)}function Ki(Fn,Pi){var di=Si(Fn,1),Li=Si(Pi,1);return di!==Li?di-Li:di===0?Pi[1]-Fn[1]:di===1?Fn[0]-Pi[0]:di===2?Fn[1]-Pi[1]:Pi[0]-Fn[0]}return function(Fn){var Pi=Fn,di=oi(),Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks={point:dl,lineStart:eu,lineEnd:Zl,polygonStart:Bl,polygonEnd:bl};function dl(ja,ns){Fr(ja,ns)&&Pi.point(ja,ns)}function xl(){for(var ja=0,ns=0,Js=Mi.length;nsmr&&(Rl-zl)*(mr-Ml)>(Tl-Ml)*(At-zl)&&++ja:Tl<=mr&&(Rl-zl)*(mr-Ml)<(Tl-Ml)*(At-zl)&&--ja;return ja}function Bl(){Pi=di,Li=[],Mi=[],Cs=!0}function bl(){var ja=xl(),ns=Cs&&ja,Js=(Li=t.merge(Li)).length;(ns||Js)&&(Fn.polygonStart(),ns&&(Fn.lineStart(),_i(null,null,1,Fn),Fn.lineEnd()),Js&&nn(Li,Ci,ja,_i,Fn),Fn.polygonEnd()),Pi=Fn,Li=Mi=Gn=null}function eu(){Ks.point=Ul,Mi&&Mi.push(Gn=[]),is=!0,zn=!1,pa=va=NaN}function Zl(){Li&&(Ul(ta,ya),ia&&zn&&di.rejoin(),Li.push(di.result())),Ks.point=dl,zn&&Pi.lineEnd()}function Ul(ja,ns){var Js=Fr(ja,ns);if(Mi&&Gn.push([ja,ns]),is)ta=ja,ya=ns,ia=Js,is=!1,Js&&(Pi.lineStart(),Pi.point(ja,ns));else if(Js&&zn)Pi.point(ja,ns);else{var cs=[pa=Math.max(aa,Math.min(Xi,pa)),va=Math.max(aa,Math.min(Xi,va))],sl=[ja=Math.max(aa,Math.min(Xi,ja)),ns=Math.max(aa,Math.min(Xi,ns))];ii(cs,sl,At,Vt,wr,mr)?(zn||(Pi.lineStart(),Pi.point(cs[0],cs[1])),Pi.point(sl[0],sl[1]),Js||Pi.lineEnd(),Cs=!1):Js&&(Pi.lineStart(),Pi.point(ja,ns),Cs=!1)}pa=ja,va=ns,zn=Js}return Ks}}function Un(){var At=0,Vt=0,wr=960,mr=500,Fr,_i,Si;return Si={stream:function(Ci){return Fr&&_i===Ci?Fr:Fr=Mn(At,Vt,wr,mr)(_i=Ci)},extent:function(Ci){return arguments.length?(At=+Ci[0][0],Vt=+Ci[0][1],wr=+Ci[1][0],mr=+Ci[1][1],Fr=_i=null,Si):[[At,Vt],[wr,mr]]}}}var Ga=r(),ma,oa,ka,so={sphere:F,point:F,lineStart:Kr,lineEnd:F,polygonStart:F,polygonEnd:F};function Kr(){so.point=Yo,so.lineEnd=Ia}function Ia(){so.point=so.lineEnd=F}function Yo(At,Vt){At*=d,Vt*=d,ma=At,oa=x(Vt),ka=v(Vt),so.point=fa}function fa(At,Vt){At*=d,Vt*=d;var wr=x(Vt),mr=v(Vt),Fr=p(At-ma),_i=v(Fr),Si=x(Fr),Ci=mr*Si,Ki=ka*wr-oa*mr*_i,Fn=oa*wr+ka*mr*_i;Ga.add(b(M(Ci*Ci+Ki*Ki),Fn)),ma=At,oa=wr,ka=mr}function kn(At){return Ga.reset(),W(At,so),+Ga}var Aa=[null,null],ys={type:"LineString",coordinates:Aa};function uo(At,Vt){return Aa[0]=At,Aa[1]=Vt,kn(ys)}var ls={Feature:function(At,Vt){return fo(At.geometry,Vt)},FeatureCollection:function(At,Vt){for(var wr=At.features,mr=-1,Fr=wr.length;++mr0&&(Fr=uo(At[_i],At[_i-1]),Fr>0&&wr<=Fr&&mr<=Fr&&(wr+mr-Fr)*(1-Math.pow((wr-mr)/Fr,2))o}).map(Li)).concat(t.range(k(_i/Fn)*Fn,Fr,Fn).filter(function(va){return p(va%di)>o}).map(Mi))}return ia.lines=function(){return pa().map(function(va){return{type:"LineString",coordinates:va}})},ia.outline=function(){return{type:"Polygon",coordinates:[Gn(mr).concat(ta(Si).slice(1),Gn(wr).reverse().slice(1),ta(Ci).reverse().slice(1))]}},ia.extent=function(va){return arguments.length?ia.extentMajor(va).extentMinor(va):ia.extentMinor()},ia.extentMajor=function(va){return arguments.length?(mr=+va[0][0],wr=+va[1][0],Ci=+va[0][1],Si=+va[1][1],mr>wr&&(va=mr,mr=wr,wr=va),Ci>Si&&(va=Ci,Ci=Si,Si=va),ia.precision(ya)):[[mr,Ci],[wr,Si]]},ia.extentMinor=function(va){return arguments.length?(Vt=+va[0][0],At=+va[1][0],_i=+va[0][1],Fr=+va[1][1],Vt>At&&(va=Vt,Vt=At,At=va),_i>Fr&&(va=_i,_i=Fr,Fr=va),ia.precision(ya)):[[Vt,_i],[At,Fr]]},ia.step=function(va){return arguments.length?ia.stepMajor(va).stepMinor(va):ia.stepMinor()},ia.stepMajor=function(va){return arguments.length?(Pi=+va[0],di=+va[1],ia):[Pi,di]},ia.stepMinor=function(va){return arguments.length?(Ki=+va[0],Fn=+va[1],ia):[Ki,Fn]},ia.precision=function(va){return arguments.length?(ya=+va,Li=Wi(_i,Fr,90),Mi=gn(Vt,At,ya),Gn=Wi(Ci,Si,90),ta=gn(mr,wr,ya),ia):ya},ia.extentMajor([[-180,-90+o],[180,90-o]]).extentMinor([[-180,-80-o],[180,80+o]])}function Ha(){return Ps()()}function Sn(At,Vt){var wr=At[0]*d,mr=At[1]*d,Fr=Vt[0]*d,_i=Vt[1]*d,Si=v(mr),Ci=x(mr),Ki=v(_i),Fn=x(_i),Pi=Si*v(wr),di=Si*x(wr),Li=Ki*v(Fr),Mi=Ki*x(Fr),Gn=2*T(M(B(_i-mr)+Si*Ki*B(Fr-wr))),ta=x(Gn),ya=Gn?function(ia){var pa=x(ia*=Gn)/ta,va=x(Gn-ia)/ta,zn=va*Pi+pa*Li,is=va*di+pa*Mi,Cs=va*Ci+pa*Fn;return[b(is,zn)*h,b(Cs,M(zn*zn+is*is))*h]}:function(){return[wr*h,mr*h]};return ya.distance=Gn,ya}function ao(At){return At}var Ba=r(),Ko=r(),Qo,Hi,Sa,Qa,vn={point:F,lineStart:F,lineEnd:F,polygonStart:function(){vn.lineStart=da,vn.lineEnd=Ts},polygonEnd:function(){vn.lineStart=vn.lineEnd=vn.point=F,Ba.add(p(Ko)),Ko.reset()},result:function(){var At=Ba/2;return Ba.reset(),At}};function da(){vn.point=la}function la(At,Vt){vn.point=vo,Qo=Sa=At,Hi=Qa=Vt}function vo(At,Vt){Ko.add(Qa*At-Sa*Vt),Sa=At,Qa=Vt}function Ts(){vo(Qo,Hi)}var ps=1/0,co=ps,mo=-ps,No=mo,jn={point:Go,lineStart:F,lineEnd:F,polygonStart:F,polygonEnd:F,result:function(){var At=[[ps,co],[mo,No]];return mo=No=-(co=ps=1/0),At}};function Go(At,Vt){Atmo&&(mo=At),VtNo&&(No=Vt)}var Ys=0,qs=0,Ns=0,Oa=0,ha=0,Vs=0,Ya=0,_n=0,Vn=0,wo,Ra,Xn,un,$n={point:Ka,lineStart:qn,lineEnd:lo,polygonStart:function(){$n.lineStart=eo,$n.lineEnd=sa},polygonEnd:function(){$n.point=Ka,$n.lineStart=qn,$n.lineEnd=lo},result:function(){var At=Vn?[Ya/Vn,_n/Vn]:Vs?[Oa/Vs,ha/Vs]:Ns?[Ys/Ns,qs/Ns]:[NaN,NaN];return Ys=qs=Ns=Oa=ha=Vs=Ya=_n=Vn=0,At}};function Ka(At,Vt){Ys+=At,qs+=Vt,++Ns}function qn(){$n.point=Eo}function Eo(At,Vt){$n.point=Ja,Ka(Xn=At,un=Vt)}function Ja(At,Vt){var wr=At-Xn,mr=Vt-un,Fr=M(wr*wr+mr*mr);Oa+=Fr*(Xn+At)/2,ha+=Fr*(un+Vt)/2,Vs+=Fr,Ka(Xn=At,un=Vt)}function lo(){$n.point=Ka}function eo(){$n.point=es}function sa(){Na(wo,Ra)}function es(At,Vt){$n.point=Na,Ka(wo=Xn=At,Ra=un=Vt)}function Na(At,Vt){var wr=At-Xn,mr=Vt-un,Fr=M(wr*wr+mr*mr);Oa+=Fr*(Xn+At)/2,ha+=Fr*(un+Vt)/2,Vs+=Fr,Fr=un*At-Xn*Vt,Ya+=Fr*(Xn+At),_n+=Fr*(un+Vt),Vn+=Fr*3,Ka(Xn=At,un=Vt)}function rn(At){this._context=At}rn.prototype={_radius:4.5,pointRadius:function(At){return this._radius=At,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(At,Vt){switch(this._point){case 0:{this._context.moveTo(At,Vt),this._point=1;break}case 1:{this._context.lineTo(At,Vt);break}default:{this._context.moveTo(At+this._radius,Vt),this._context.arc(At,Vt,this._radius,0,c);break}}},result:F};var Pa=r(),to,yo,Jo,To,Dn,_a={point:F,lineStart:function(){_a.point=Ws},lineEnd:function(){to&&Ca(yo,Jo),_a.point=F},polygonStart:function(){to=!0},polygonEnd:function(){to=null},result:function(){var At=+Pa;return Pa.reset(),At}};function Ws(At,Vt){_a.point=Ca,yo=To=At,Jo=Dn=Vt}function Ca(At,Vt){To-=At,Dn-=Vt,Pa.add(M(To*To+Dn*Dn)),To=At,Dn=Vt}function Es(){this._string=[]}Es.prototype={_radius:4.5,_circle:As(4.5),pointRadius:function(At){return(At=+At)!==this._radius&&(this._radius=At,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(At,Vt){switch(this._point){case 0:{this._string.push("M",At,",",Vt),this._point=1;break}case 1:{this._string.push("L",At,",",Vt);break}default:{this._circle==null&&(this._circle=As(this._radius)),this._string.push("M",At,",",Vt,this._circle);break}}},result:function(){if(this._string.length){var At=this._string.join("");return this._string=[],At}else return null}};function As(At){return"m0,"+At+"a"+At+","+At+" 0 1,1 0,"+-2*At+"a"+At+","+At+" 0 1,1 0,"+2*At+"z"}function Ho(At,Vt){var wr=4.5,mr,Fr;function _i(Si){return Si&&(typeof wr=="function"&&Fr.pointRadius(+wr.apply(this,arguments)),W(Si,mr(Fr))),Fr.result()}return _i.area=function(Si){return W(Si,mr(vn)),vn.result()},_i.measure=function(Si){return W(Si,mr(_a)),_a.result()},_i.bounds=function(Si){return W(Si,mr(jn)),jn.result()},_i.centroid=function(Si){return W(Si,mr($n)),$n.result()},_i.projection=function(Si){return arguments.length?(mr=Si==null?(At=null,ao):(At=Si).stream,_i):At},_i.context=function(Si){return arguments.length?(Fr=Si==null?(Vt=null,new Es):new rn(Vt=Si),typeof wr!="function"&&Fr.pointRadius(wr),_i):Vt},_i.pointRadius=function(Si){return arguments.length?(wr=typeof Si=="function"?Si:(Fr.pointRadius(+Si),+Si),_i):wr},_i.projection(At).context(Vt)}function Wa(At){return{stream:Ao(At)}}function Ao(At){return function(Vt){var wr=new ts;for(var mr in At)wr[mr]=At[mr];return wr.stream=Vt,wr}}function ts(){}ts.prototype={constructor:ts,point:function(At,Vt){this.stream.point(At,Vt)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function Wo(At,Vt,wr){var mr=At.clipExtent&&At.clipExtent();return At.scale(150).translate([0,0]),mr!=null&&At.clipExtent(null),W(wr,At.stream(jn)),Vt(jn.result()),mr!=null&&At.clipExtent(mr),At}function qa(At,Vt,wr){return Wo(At,function(mr){var Fr=Vt[1][0]-Vt[0][0],_i=Vt[1][1]-Vt[0][1],Si=Math.min(Fr/(mr[1][0]-mr[0][0]),_i/(mr[1][1]-mr[0][1])),Ci=+Vt[0][0]+(Fr-Si*(mr[1][0]+mr[0][0]))/2,Ki=+Vt[0][1]+(_i-Si*(mr[1][1]+mr[0][1]))/2;At.scale(150*Si).translate([Ci,Ki])},wr)}function ln(At,Vt,wr){return qa(At,[[0,0],Vt],wr)}function Bo(At,Vt,wr){return Wo(At,function(mr){var Fr=+Vt,_i=Fr/(mr[1][0]-mr[0][0]),Si=(Fr-_i*(mr[1][0]+mr[0][0]))/2,Ci=-_i*mr[0][1];At.scale(150*_i).translate([Si,Ci])},wr)}function ko(At,Vt,wr){return Wo(At,function(mr){var Fr=+Vt,_i=Fr/(mr[1][1]-mr[0][1]),Si=-_i*mr[0][0],Ci=(Fr-_i*(mr[1][1]+mr[0][1]))/2;At.scale(150*_i).translate([Si,Ci])},wr)}var oo=16,za=v(30*d);function ea(At,Vt){return+Vt?$s(At,Vt):rs(At)}function rs(At){return Ao({point:function(Vt,wr){Vt=At(Vt,wr),this.stream.point(Vt[0],Vt[1])}})}function $s(At,Vt){function wr(mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya){var ia=Fn-mr,pa=Pi-Fr,va=ia*ia+pa*pa;if(va>4*Vt&&ta--){var zn=Si+Li,is=Ci+Mi,Cs=Ki+Gn,Ks=M(zn*zn+is*is+Cs*Cs),dl=T(Cs/=Ks),xl=p(p(Cs)-1)Vt||p((ia*Zl+pa*Ul)/va-.5)>.3||Si*Li+Ci*Mi+Ki*Gn2?ja[2]%360*d:0,Zl()):[Ci*h,Ki*h,Fn*h]},bl.angle=function(ja){return arguments.length?(di=ja%360*d,Zl()):di*h},bl.reflectX=function(ja){return arguments.length?(Li=ja?-1:1,Zl()):Li<0},bl.reflectY=function(ja){return arguments.length?(Mi=ja?-1:1,Zl()):Mi<0},bl.precision=function(ja){return arguments.length?(Cs=ea(Ks,is=ja*ja),Ul()):M(is)},bl.fitExtent=function(ja,ns){return qa(bl,ja,ns)},bl.fitSize=function(ja,ns){return ln(bl,ja,ns)},bl.fitWidth=function(ja,ns){return Bo(bl,ja,ns)},bl.fitHeight=function(ja,ns){return ko(bl,ja,ns)};function Zl(){var ja=as(wr,0,0,Li,Mi,di).apply(null,Vt(_i,Si)),ns=(di?as:fl)(wr,mr-ja[0],Fr-ja[1],Li,Mi,di);return Pi=Hr(Ci,Ki,Fn),Ks=Nr(Vt,ns),dl=Nr(Pi,Ks),Cs=ea(Ks,is),Ul()}function Ul(){return xl=Bl=null,bl}return function(){return Vt=At.apply(this,arguments),bl.invert=Vt.invert&&eu,Zl()}}function ho(At){var Vt=0,wr=u/3,mr=Qs(At),Fr=mr(Vt,wr);return Fr.parallels=function(_i){return arguments.length?mr(Vt=_i[0]*d,wr=_i[1]*d):[Vt*h,wr*h]},Fr}function gs(At){var Vt=v(At);function wr(mr,Fr){return[mr*Vt,x(Fr)/Vt]}return wr.invert=function(mr,Fr){return[mr/Vt,T(Fr*Vt)]},wr}function Vo(At,Vt){var wr=x(At),mr=(wr+x(Vt))/2;if(p(mr)=.12&&ya<.234&&ta>=-.425&&ta<-.214?Fr:ya>=.166&&ya<.234&&ta>=-.214&&ta<-.115?Si:wr).invert(Li)},Pi.stream=function(Li){return At&&Vt===Li?At:At=xs([wr.stream(Vt=Li),Fr.stream(Li),Si.stream(Li)])},Pi.precision=function(Li){return arguments.length?(wr.precision(Li),Fr.precision(Li),Si.precision(Li),di()):wr.precision()},Pi.scale=function(Li){return arguments.length?(wr.scale(Li),Fr.scale(Li*.35),Si.scale(Li),Pi.translate(wr.translate())):wr.scale()},Pi.translate=function(Li){if(!arguments.length)return wr.translate();var Mi=wr.scale(),Gn=+Li[0],ta=+Li[1];return mr=wr.translate(Li).clipExtent([[Gn-.455*Mi,ta-.238*Mi],[Gn+.455*Mi,ta+.238*Mi]]).stream(Fn),_i=Fr.translate([Gn-.307*Mi,ta+.201*Mi]).clipExtent([[Gn-.425*Mi+o,ta+.12*Mi+o],[Gn-.214*Mi-o,ta+.234*Mi-o]]).stream(Fn),Ci=Si.translate([Gn-.205*Mi,ta+.212*Mi]).clipExtent([[Gn-.214*Mi+o,ta+.166*Mi+o],[Gn-.115*Mi-o,ta+.234*Mi-o]]).stream(Fn),di()},Pi.fitExtent=function(Li,Mi){return qa(Pi,Li,Mi)},Pi.fitSize=function(Li,Mi){return ln(Pi,Li,Mi)},Pi.fitWidth=function(Li,Mi){return Bo(Pi,Li,Mi)},Pi.fitHeight=function(Li,Mi){return ko(Pi,Li,Mi)};function di(){return At=Vt=null,Pi}return Pi.scale(1070)}function Ea(At){return function(Vt,wr){var mr=v(Vt),Fr=v(wr),_i=At(mr*Fr);return[_i*Fr*x(Vt),_i*x(wr)]}}function Jn(At){return function(Vt,wr){var mr=M(Vt*Vt+wr*wr),Fr=At(mr),_i=x(Fr),Si=v(Fr);return[b(Vt*_i,mr*Si),T(mr&&wr*_i/mr)]}}var Oo=Ea(function(At){return M(2/(1+At))});Oo.invert=Jn(function(At){return 2*T(At/2)});function rl(){return Ma(Oo).scale(124.75).clipAngle(180-.001)}var Gs=Ea(function(At){return(At=P(At))&&At/x(At)});Gs.invert=Jn(function(At){return At});function bs(){return Ma(Gs).scale(79.4188).clipAngle(180-.001)}function zs(At,Vt){return[At,A(m((l+Vt)/2))]}zs.invert=function(At,Vt){return[At,2*_(E(Vt))-l]};function $o(){return Ta(zs).scale(961/c)}function Ta(At){var Vt=Ma(At),wr=Vt.center,mr=Vt.scale,Fr=Vt.translate,_i=Vt.clipExtent,Si=null,Ci,Ki,Fn;Vt.scale=function(di){return arguments.length?(mr(di),Pi()):mr()},Vt.translate=function(di){return arguments.length?(Fr(di),Pi()):Fr()},Vt.center=function(di){return arguments.length?(wr(di),Pi()):wr()},Vt.clipExtent=function(di){return arguments.length?(di==null?Si=Ci=Ki=Fn=null:(Si=+di[0][0],Ci=+di[0][1],Ki=+di[1][0],Fn=+di[1][1]),Pi()):Si==null?null:[[Si,Ci],[Ki,Fn]]};function Pi(){var di=u*mr(),Li=Vt(Vi(Vt.rotate()).invert([0,0]));return _i(Si==null?[[Li[0]-di,Li[1]-di],[Li[0]+di,Li[1]+di]]:At===zs?[[Math.max(Li[0]-di,Si),Ci],[Math.min(Li[0]+di,Ki),Fn]]:[[Si,Math.max(Li[1]-di,Ci)],[Ki,Math.min(Li[1]+di,Fn)]])}return Pi()}function os(At){return m((l+At)/2)}function _l(At,Vt){var wr=v(At),mr=At===Vt?x(At):A(wr/v(Vt))/A(os(Vt)/os(At)),Fr=wr*L(os(At),mr)/mr;if(!mr)return zs;function _i(Si,Ci){Fr>0?Ci<-l+o&&(Ci=-l+o):Ci>l-o&&(Ci=l-o);var Ki=Fr/L(os(Ci),mr);return[Ki*x(mr*Si),Fr-Ki*v(mr*Si)]}return _i.invert=function(Si,Ci){var Ki=Fr-Ci,Fn=C(mr)*M(Si*Si+Ki*Ki),Pi=b(Si,p(Ki))*C(Ki);return Ki*mr<0&&(Pi-=u*C(Si)*C(Ki)),[Pi/mr,2*_(L(Fr/Fn,1/mr))-l]},_i}function Ss(){return ho(_l).scale(109.5).parallels([30,30])}function po(At,Vt){return[At,Vt]}po.invert=po;function go(){return Ma(po).scale(152.63)}function ss(At,Vt){var wr=v(At),mr=At===Vt?x(At):(wr-v(Vt))/(Vt-At),Fr=wr/mr+At;if(p(mr)o&&--mr>0);return[At/(.8707+(_i=wr*wr)*(-.131979+_i*(-.013791+_i*_i*_i*(.003971-.001529*_i)))),wr]};function hl(){return Ma(Fs).scale(175.295)}function Fa(At,Vt){return[v(Vt)*x(At),x(Vt)]}Fa.invert=Jn(T);function Ms(){return Ma(Fa).scale(249.5).clipAngle(90+o)}function jo(At,Vt){var wr=v(Vt),mr=1+v(At)*wr;return[wr*x(At)/mr,x(Vt)/mr]}jo.invert=Jn(function(At){return 2*_(At)});function Rs(){return Ma(jo).scale(250).clipAngle(142)}function Is(At,Vt){return[A(m((l+Vt)/2)),-At]}Is.invert=function(At,Vt){return[-Vt,2*_(E(At))-l]};function Bs(){var At=Ta(Is),Vt=At.center,wr=At.rotate;return At.center=function(mr){return arguments.length?Vt([-mr[1],mr[0]]):(mr=Vt(),[mr[1],-mr[0]])},At.rotate=function(mr){return arguments.length?wr([mr[0],mr[1],mr.length>2?mr[2]+90:90]):(mr=wr(),[mr[0],mr[1],mr[2]-90])},wr([0,0,90]).scale(159.155)}e.geoAlbers=Lo,e.geoAlbersUsa=ks,e.geoArea=ye,e.geoAzimuthalEqualArea=rl,e.geoAzimuthalEqualAreaRaw=Oo,e.geoAzimuthalEquidistant=bs,e.geoAzimuthalEquidistantRaw=Gs,e.geoBounds=xe,e.geoCentroid=xr,e.geoCircle=Yr,e.geoClipAntimeridian=pr,e.geoClipCircle=en,e.geoClipExtent=Un,e.geoClipRectangle=Mn,e.geoConicConformal=Ss,e.geoConicConformalRaw=_l,e.geoConicEqualArea=Do,e.geoConicEqualAreaRaw=Vo,e.geoConicEquidistant=qo,e.geoConicEquidistantRaw=ss,e.geoContains=Po,e.geoDistance=uo,e.geoEqualEarth=el,e.geoEqualEarthRaw=cl,e.geoEquirectangular=go,e.geoEquirectangularRaw=po,e.geoGnomonic=Ro,e.geoGnomonicRaw=Hs,e.geoGraticule=Ps,e.geoGraticule10=Ha,e.geoIdentity=tl,e.geoInterpolate=Sn,e.geoLength=kn,e.geoMercator=$o,e.geoMercatorRaw=zs,e.geoNaturalEarth1=hl,e.geoNaturalEarth1Raw=Fs,e.geoOrthographic=Ms,e.geoOrthographicRaw=Fa,e.geoPath=Ho,e.geoProjection=Ma,e.geoProjectionMutator=Qs,e.geoRotation=Vi,e.geoStereographic=Rs,e.geoStereographicRaw=jo,e.geoStream=W,e.geoTransform=Wa,e.geoTransverseMercator=Bs,e.geoTransverseMercatorRaw=Is,Object.defineProperty(e,"__esModule",{value:!0})})});var V6e=Ae((LF,U6e)=>{(function(e,t){typeof LF=="object"&&typeof U6e!="undefined"?t(LF,VZ(),nk()):t(e.d3=e.d3||{},e.d3,e.d3)})(LF,function(e,t,r){"use strict";var n=Math.abs,i=Math.atan,a=Math.atan2,o=Math.cos,s=Math.exp,u=Math.floor,l=Math.log,f=Math.max,c=Math.min,h=Math.pow,d=Math.round,p=Math.sign||function(he){return he>0?1:he<0?-1:0},_=Math.sin,b=Math.tan,v=1e-6,k=1e-12,E=Math.PI,A=E/2,L=E/4,x=Math.SQRT1_2,C=G(2),M=G(E),m=E*2,P=180/E,T=E/180;function B(he){return he?he/Math.sin(he):1}function F(he){return he>1?A:he<-1?-A:Math.asin(he)}function U(he){return he>1?0:he<-1?E:Math.acos(he)}function G(he){return he>0?Math.sqrt(he):0}function j(he){return he=s(2*he),(he-1)/(he+1)}function H(he){return(s(he)-s(-he))/2}function N(he){return(s(he)+s(-he))/2}function W(he){return l(he+G(he*he+1))}function re(he){return l(he+G(he*he-1))}function ae(he){var Se=b(he/2),Ne=2*l(o(he/2))/(Se*Se);function Ge(lt,rt){var pt=o(lt),Ht=o(rt),nr=_(rt),fr=Ht*pt,Tr=-((1-fr?l((1+fr)/2)/(1-fr):-.5)+Ne/(1+fr));return[Tr*Ht*_(lt),Tr*nr]}return Ge.invert=function(lt,rt){var pt=G(lt*lt+rt*rt),Ht=-he/2,nr=50,fr;if(!pt)return[0,0];do{var Tr=Ht/2,Ir=o(Tr),ri=_(Tr),li=ri/Ir,Ei=-l(n(Ir));Ht-=fr=(2/li*Ei-Ne*li-pt)/(-Ei/(ri*ri)+1-Ne/(2*Ir*Ir))*(Ir<0?.7:1)}while(n(fr)>v&&--nr>0);var hn=_(Ht);return[a(lt*hn,pt*o(Ht)),F(rt*hn/pt)]},Ge}function be(){var he=A,Se=t.geoProjectionMutator(ae),Ne=Se(he);return Ne.radius=function(Ge){return arguments.length?Se(he=Ge*T):he*P},Ne.scale(179.976).clipAngle(147)}function ze(he,Se){var Ne=o(Se),Ge=B(U(Ne*o(he/=2)));return[2*Ne*_(he)*Ge,_(Se)*Ge]}ze.invert=function(he,Se){if(!(he*he+4*Se*Se>E*E+v)){var Ne=he,Ge=Se,lt=25;do{var rt=_(Ne),pt=_(Ne/2),Ht=o(Ne/2),nr=_(Ge),fr=o(Ge),Tr=_(2*Ge),Ir=nr*nr,ri=fr*fr,li=pt*pt,Ei=1-ri*Ht*Ht,hn=Ei?U(fr*Ht)*G(Zn=1/Ei):Zn=0,Zn,Yn=2*hn*fr*pt-he,Ua=hn*nr-Se,Fo=Zn*(ri*li+hn*fr*Ht*Ir),vl=Zn*(.5*rt*Tr-hn*2*nr*pt),Us=Zn*.25*(Tr*pt-hn*nr*ri*rt),ml=Zn*(Ir*Ht+hn*li*fr),au=vl*Us-ml*Fo;if(!au)break;var Sl=(Ua*vl-Yn*ml)/au,Yl=(Yn*Us-Ua*Fo)/au;Ne-=Sl,Ge-=Yl}while((n(Sl)>v||n(Yl)>v)&&--lt>0);return[Ne,Ge]}};function Ce(){return t.geoProjection(ze).scale(152.63)}function de(he){var Se=_(he),Ne=o(he),Ge=he>=0?1:-1,lt=b(Ge*he),rt=(1+Se-Ne)/2;function pt(Ht,nr){var fr=o(nr),Tr=o(Ht/=2);return[(1+fr)*_(Ht),(Ge*nr>-a(Tr,lt)-.001?0:-Ge*10)+rt+_(nr)*Ne-(1+fr)*Se*Tr]}return pt.invert=function(Ht,nr){var fr=0,Tr=0,Ir=50;do{var ri=o(fr),li=_(fr),Ei=o(Tr),hn=_(Tr),Zn=1+Ei,Yn=Zn*li-Ht,Ua=rt+hn*Ne-Zn*Se*ri-nr,Fo=Zn*ri/2,vl=-li*hn,Us=Se*Zn*li/2,ml=Ne*Ei+Se*ri*hn,au=vl*Us-ml*Fo,Sl=(Ua*vl-Yn*ml)/au/2,Yl=(Yn*Us-Ua*Fo)/au;n(Yl)>2&&(Yl/=2),fr-=Sl,Tr-=Yl}while((n(Sl)>v||n(Yl)>v)&&--Ir>0);return Ge*Tr>-a(o(fr),lt)-.001?[fr*2,Tr]:null},pt}function te(){var he=20*T,Se=he>=0?1:-1,Ne=b(Se*he),Ge=t.geoProjectionMutator(de),lt=Ge(he),rt=lt.stream;return lt.parallel=function(pt){return arguments.length?(Ne=b((Se=(he=pt*T)>=0?1:-1)*he),Ge(he)):he*P},lt.stream=function(pt){var Ht=lt.rotate(),nr=rt(pt),fr=(lt.rotate([0,0]),rt(pt)),Tr=lt.precision();return lt.rotate(Ht),nr.sphere=function(){fr.polygonStart(),fr.lineStart();for(var Ir=Se*-180;Se*Ir<180;Ir+=Se*90)fr.point(Ir,Se*90);if(he)for(;Se*(Ir-=3*Se*Tr)>=-180;)fr.point(Ir,Se*-a(o(Ir*T/2),Ne)*P);fr.lineEnd(),fr.polygonEnd()},nr},lt.scale(218.695).center([0,28.0974])}function ke(he,Se){var Ne=b(Se/2),Ge=G(1-Ne*Ne),lt=1+Ge*o(he/=2),rt=_(he)*Ge/lt,pt=Ne/lt,Ht=rt*rt,nr=pt*pt;return[4/3*rt*(3+Ht-3*nr),4/3*pt*(3+3*Ht-nr)]}ke.invert=function(he,Se){if(he*=3/8,Se*=3/8,!he&&n(Se)>1)return null;var Ne=he*he,Ge=Se*Se,lt=1+Ne+Ge,rt=G((lt-G(lt*lt-4*Se*Se))/2),pt=F(rt)/3,Ht=rt?re(n(Se/rt))/3:W(n(he))/3,nr=o(pt),fr=N(Ht),Tr=fr*fr-nr*nr;return[p(he)*2*a(H(Ht)*nr,.25-Tr),p(Se)*2*a(fr*_(pt),.25+Tr)]};function Ee(){return t.geoProjection(ke).scale(66.1603)}var Me=G(8),Ue=l(1+C);function De(he,Se){var Ne=n(Se);return Nek&&--Ge>0);return[he/(o(Ne)*(Me-1/_(Ne))),p(Se)*Ne]};function ye(){return t.geoProjection(De).scale(112.314)}function qe(he){var Se=2*E/he;function Ne(Ge,lt){var rt=t.geoAzimuthalEquidistantRaw(Ge,lt);if(n(Ge)>A){var pt=a(rt[1],rt[0]),Ht=G(rt[0]*rt[0]+rt[1]*rt[1]),nr=Se*d((pt-A)/Se)+A,fr=a(_(pt-=nr),2-o(pt));pt=nr+F(E/Ht*_(fr))-fr,rt[0]=Ht*o(pt),rt[1]=Ht*_(pt)}return rt}return Ne.invert=function(Ge,lt){var rt=G(Ge*Ge+lt*lt);if(rt>A){var pt=a(lt,Ge),Ht=Se*d((pt-A)/Se)+A,nr=pt>Ht?-1:1,fr=rt*o(Ht-pt),Tr=1/b(nr*U((fr-E)/G(E*(E-2*fr)+rt*rt)));pt=Ht+2*i((Tr+nr*G(Tr*Tr-3))/3),Ge=rt*o(pt),lt=rt*_(pt)}return t.geoAzimuthalEquidistantRaw.invert(Ge,lt)},Ne}function ce(){var he=5,Se=t.geoProjectionMutator(qe),Ne=Se(he),Ge=Ne.stream,lt=.01,rt=-o(lt*T),pt=_(lt*T);return Ne.lobes=function(Ht){return arguments.length?Se(he=+Ht):he},Ne.stream=function(Ht){var nr=Ne.rotate(),fr=Ge(Ht),Tr=(Ne.rotate([0,0]),Ge(Ht));return Ne.rotate(nr),fr.sphere=function(){Tr.polygonStart(),Tr.lineStart();for(var Ir=0,ri=360/he,li=2*E/he,Ei=90-180/he,hn=A;Ir0&&n(lt)>v);return Ge<0?NaN:Ne}function at(he,Se,Ne){return Se===void 0&&(Se=40),Ne===void 0&&(Ne=k),function(Ge,lt,rt,pt){var Ht,nr,fr;rt=rt===void 0?0:+rt,pt=pt===void 0?0:+pt;for(var Tr=0;TrHt){rt-=nr/=2,pt-=fr/=2;continue}Ht=Ei;var hn=(rt>0?-1:1)*Ne,Zn=(pt>0?-1:1)*Ne,Yn=he(rt+hn,pt),Ua=he(rt,pt+Zn),Fo=(Yn[0]-Ir[0])/hn,vl=(Yn[1]-Ir[1])/hn,Us=(Ua[0]-Ir[0])/Zn,ml=(Ua[1]-Ir[1])/Zn,au=ml*Fo-vl*Us,Sl=(n(au)<.5?.5:1)/au;if(nr=(li*Us-ri*ml)*Sl,fr=(ri*vl-li*Fo)*Sl,rt+=nr,pt+=fr,n(nr)0&&(Ht[1]*=1+nr/1.5*Ht[0]*Ht[0]),Ht}return Ge.invert=at(Ge),Ge}function Ct(){return t.geoProjection(Ke()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function wt(he,Se){var Ne=he*_(Se),Ge=30,lt;do Se-=lt=(Se+_(Se)-Ne)/(1+o(Se));while(n(lt)>v&&--Ge>0);return Se/2}function St(he,Se,Ne){function Ge(lt,rt){return[he*lt*o(rt=wt(Ne,rt)),Se*_(rt)]}return Ge.invert=function(lt,rt){return rt=F(rt/Se),[lt/(he*o(rt)),F((2*rt+_(2*rt))/Ne)]},Ge}var Dt=St(C/A,C,E);function Zt(){return t.geoProjection(Dt).scale(169.529)}var Et=2.00276,Te=1.11072;function ot(he,Se){var Ne=wt(E,Se);return[Et*he/(1/o(Se)+Te/o(Ne)),(Se+C*_(Ne))/Et]}ot.invert=function(he,Se){var Ne=Et*Se,Ge=Se<0?-L:L,lt=25,rt,pt;do pt=Ne-C*_(Ge),Ge-=rt=(_(2*Ge)+2*Ge-E*_(pt))/(2*o(2*Ge)+2+E*o(pt)*C*o(Ge));while(n(rt)>v&&--lt>0);return pt=Ne-C*_(Ge),[he*(1/o(pt)+Te/o(Ge))/Et,pt]};function Tt(){return t.geoProjection(ot).scale(160.857)}function vt(he){var Se=0,Ne=t.geoProjectionMutator(he),Ge=Ne(Se);return Ge.parallel=function(lt){return arguments.length?Ne(Se=lt*T):Se*P},Ge}function Ye(he,Se){return[he*o(Se),Se]}Ye.invert=function(he,Se){return[he/o(Se),Se]};function He(){return t.geoProjection(Ye).scale(152.63)}function it(he){if(!he)return Ye;var Se=1/b(he);function Ne(Ge,lt){var rt=Se+he-lt,pt=rt&&Ge*o(lt)/rt;return[rt*_(pt),Se-rt*o(pt)]}return Ne.invert=function(Ge,lt){var rt=G(Ge*Ge+(lt=Se-lt)*lt),pt=Se+he-rt;return[rt/o(pt)*a(Ge,lt),pt]},Ne}function et(){return vt(it).scale(123.082).center([0,26.1441]).parallel(45)}function It(he){function Se(Ne,Ge){var lt=A-Ge,rt=lt&&Ne*he*_(lt)/lt;return[lt*_(rt)/he,A-lt*o(rt)]}return Se.invert=function(Ne,Ge){var lt=Ne*he,rt=A-Ge,pt=G(lt*lt+rt*rt),Ht=a(lt,rt);return[(pt?pt/_(pt):1)*Ht/he,A-pt]},Se}function Yt(){var he=.5,Se=t.geoProjectionMutator(It),Ne=Se(he);return Ne.fraction=function(Ge){return arguments.length?Se(he=+Ge):he},Ne.scale(158.837)}var cr=St(1,4/E,E);function _r(){return t.geoProjection(cr).scale(152.63)}function yr(he,Se,Ne,Ge,lt,rt){var pt=o(rt),Ht;if(n(he)>1||n(rt)>1)Ht=U(Ne*lt+Se*Ge*pt);else{var nr=_(he/2),fr=_(rt/2);Ht=2*F(G(nr*nr+Se*Ge*fr*fr))}return n(Ht)>v?[Ht,a(Ge*_(rt),Se*lt-Ne*Ge*pt)]:[0,0]}function Ut(he,Se,Ne){return U((he*he+Se*Se-Ne*Ne)/(2*he*Se))}function Re(he){return he-2*E*u((he+E)/(2*E))}function xe(he,Se,Ne){for(var Ge=[[he[0],he[1],_(he[1]),o(he[1])],[Se[0],Se[1],_(Se[1]),o(Se[1])],[Ne[0],Ne[1],_(Ne[1]),o(Ne[1])]],lt=Ge[2],rt,pt=0;pt<3;++pt,lt=rt)rt=Ge[pt],lt.v=yr(rt[1]-lt[1],lt[3],lt[2],rt[3],rt[2],rt[0]-lt[0]),lt.point=[0,0];var Ht=Ut(Ge[0].v[0],Ge[2].v[0],Ge[1].v[0]),nr=Ut(Ge[0].v[0],Ge[1].v[0],Ge[2].v[0]),fr=E-Ht;Ge[2].point[1]=0,Ge[0].point[0]=-(Ge[1].point[0]=Ge[0].v[0]/2);var Tr=[Ge[2].point[0]=Ge[0].point[0]+Ge[2].v[0]*o(Ht),2*(Ge[0].point[1]=Ge[1].point[1]=Ge[2].v[0]*_(Ht))];function Ir(ri,li){var Ei=_(li),hn=o(li),Zn=new Array(3),Yn;for(Yn=0;Yn<3;++Yn){var Ua=Ge[Yn];if(Zn[Yn]=yr(li-Ua[1],Ua[3],Ua[2],hn,Ei,ri-Ua[0]),!Zn[Yn][0])return Ua.point;Zn[Yn][1]=Re(Zn[Yn][1]-Ua.v[1])}var Fo=Tr.slice();for(Yn=0;Yn<3;++Yn){var vl=Yn==2?0:Yn+1,Us=Ut(Ge[Yn].v[0],Zn[Yn][0],Zn[vl][0]);Zn[Yn][1]<0&&(Us=-Us),Yn?Yn==1?(Us=nr-Us,Fo[0]-=Zn[Yn][0]*o(Us),Fo[1]-=Zn[Yn][0]*_(Us)):(Us=fr-Us,Fo[0]+=Zn[Yn][0]*o(Us),Fo[1]+=Zn[Yn][0]*_(Us)):(Fo[0]+=Zn[Yn][0]*o(Us),Fo[1]-=Zn[Yn][0]*_(Us))}return Fo[0]/=3,Fo[1]/=3,Fo}return Ir}function Oe(he){return he[0]*=T,he[1]*=T,he}function Ie(){return Fe([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function Fe(he,Se,Ne){var Ge=t.geoCentroid({type:"MultiPoint",coordinates:[he,Se,Ne]}),lt=[-Ge[0],-Ge[1]],rt=t.geoRotation(lt),pt=xe(Oe(rt(he)),Oe(rt(Se)),Oe(rt(Ne)));pt.invert=at(pt);var Ht=t.geoProjection(pt).rotate(lt),nr=Ht.center;return delete Ht.rotate,Ht.center=function(fr){return arguments.length?nr(rt(fr)):rt.invert(nr())},Ht.clipAngle(90)}function ft(he,Se){var Ne=G(1-_(Se));return[2/M*he*Ne,M*(1-Ne)]}ft.invert=function(he,Se){var Ne=(Ne=Se/M-1)*Ne;return[Ne>0?he*G(E/Ne)/2:0,F(1-Ne)]};function ge(){return t.geoProjection(ft).scale(95.6464).center([0,30])}function fe(he){var Se=b(he);function Ne(Ge,lt){return[Ge,(Ge?Ge/_(Ge):1)*(_(lt)*o(Ge)-Se*o(lt))]}return Ne.invert=Se?function(Ge,lt){Ge&&(lt*=_(Ge)/Ge);var rt=o(Ge);return[Ge,2*a(G(rt*rt+Se*Se-lt*lt)-rt,Se-lt)]}:function(Ge,lt){return[Ge,F(Ge?lt*b(Ge)/Ge:lt)]},Ne}function pe(){return vt(fe).scale(249.828).clipAngle(90)}var dt=G(3);function Pt(he,Se){return[dt*he*(2*o(2*Se/3)-1)/M,dt*M*_(Se/3)]}Pt.invert=function(he,Se){var Ne=3*F(Se/(dt*M));return[M*he/(dt*(2*o(2*Ne/3)-1)),Ne]};function zt(){return t.geoProjection(Pt).scale(156.19)}function rr(he){var Se=o(he);function Ne(Ge,lt){return[Ge*Se,_(lt)/Se]}return Ne.invert=function(Ge,lt){return[Ge/Se,F(lt*Se)]},Ne}function Gr(){return vt(rr).parallel(38.58).scale(195.044)}function Br(he){var Se=o(he);function Ne(Ge,lt){return[Ge*Se,(1+Se)*b(lt/2)]}return Ne.invert=function(Ge,lt){return[Ge/Se,i(lt/(1+Se))*2]},Ne}function Er(){return vt(Br).scale(124.75)}function Rr(he,Se){var Ne=G(8/(3*E));return[Ne*he*(1-n(Se)/E),Ne*Se]}Rr.invert=function(he,Se){var Ne=G(8/(3*E)),Ge=Se/Ne;return[he/(Ne*(1-n(Ge)/E)),Ge]};function pi(){return t.geoProjection(Rr).scale(165.664)}function Di(he,Se){var Ne=G(4-3*_(n(Se)));return[2/G(6*E)*he*Ne,p(Se)*G(2*E/3)*(2-Ne)]}Di.invert=function(he,Se){var Ne=2-n(Se)/G(2*E/3);return[he*G(6*E)/(2*Ne),p(Se)*F((4-Ne*Ne)/3)]};function ni(){return t.geoProjection(Di).scale(165.664)}function $i(he,Se){var Ne=G(E*(4+E));return[2/Ne*he*(1+G(1-4*Se*Se/(E*E))),4/Ne*Se]}$i.invert=function(he,Se){var Ne=G(E*(4+E))/2;return[he*Ne/(1+G(1-Se*Se*(4+E)/(4*E))),Se*Ne/2]};function Qi(){return t.geoProjection($i).scale(180.739)}function si(he,Se){var Ne=(2+A)*_(Se);Se/=2;for(var Ge=0,lt=1/0;Ge<10&&n(lt)>v;Ge++){var rt=o(Se);Se-=lt=(Se+_(Se)*(rt+2)-Ne)/(2*rt*(1+rt))}return[2/G(E*(4+E))*he*(1+o(Se)),2*G(E/(4+E))*_(Se)]}si.invert=function(he,Se){var Ne=Se*G((4+E)/E)/2,Ge=F(Ne),lt=o(Ge);return[he/(2/G(E*(4+E))*(1+lt)),F((Ge+Ne*(lt+2))/(2+A))]};function Ai(){return t.geoProjection(si).scale(180.739)}function Ni(he,Se){return[he*(1+o(Se))/G(2+E),2*Se/G(2+E)]}Ni.invert=function(he,Se){var Ne=G(2+E),Ge=Se*Ne/2;return[Ne*he/(1+o(Ge)),Ge]};function Rt(){return t.geoProjection(Ni).scale(173.044)}function yt(he,Se){for(var Ne=(1+A)*_(Se),Ge=0,lt=1/0;Ge<10&&n(lt)>v;Ge++)Se-=lt=(Se+_(Se)-Ne)/(1+o(Se));return Ne=G(2+E),[he*(1+o(Se))/Ne,2*Se/Ne]}yt.invert=function(he,Se){var Ne=1+A,Ge=G(Ne/2);return[he*2*Ge/(1+o(Se*=Ge)),F((Se+_(Se))/Ne)]};function Gt(){return t.geoProjection(yt).scale(173.044)}var Wt=3+2*C;function xr(he,Se){var Ne=_(he/=2),Ge=o(he),lt=G(o(Se)),rt=o(Se/=2),pt=_(Se)/(rt+C*Ge*lt),Ht=G(2/(1+pt*pt)),nr=G((C*rt+(Ge+Ne)*lt)/(C*rt+(Ge-Ne)*lt));return[Wt*(Ht*(nr-1/nr)-2*l(nr)),Wt*(Ht*pt*(nr+1/nr)-2*i(pt))]}xr.invert=function(he,Se){if(!(rt=ke.invert(he/1.2,Se*1.065)))return null;var Ne=rt[0],Ge=rt[1],lt=20,rt;he/=Wt,Se/=Wt;do{var pt=Ne/2,Ht=Ge/2,nr=_(pt),fr=o(pt),Tr=_(Ht),Ir=o(Ht),ri=o(Ge),li=G(ri),Ei=Tr/(Ir+C*fr*li),hn=Ei*Ei,Zn=G(2/(1+hn)),Yn=C*Ir+(fr+nr)*li,Ua=C*Ir+(fr-nr)*li,Fo=Yn/Ua,vl=G(Fo),Us=vl-1/vl,ml=vl+1/vl,au=Zn*Us-2*l(vl)-he,Sl=Zn*Ei*ml-2*i(Ei)-Se,Yl=Tr&&x*li*nr*hn/Tr,Ol=(C*fr*Ir+li)/(2*(Ir+C*fr*li)*(Ir+C*fr*li)*li),ou=-.5*Ei*Zn*Zn*Zn,Pu=ou*Yl,iu=ou*Ol,tu=(tu=2*Ir+C*li*(fr-nr))*tu*vl,Hu=(C*fr*Ir*li+ri)/tu,$u=-(C*nr*Tr)/(li*tu),Ku=Us*Pu-2*Hu/vl+Zn*(Hu+Hu/Fo),Wu=Us*iu-2*$u/vl+Zn*($u+$u/Fo),ju=Ei*ml*Pu-2*Yl/(1+hn)+Zn*ml*Yl+Zn*Ei*(Hu-Hu/Fo),sf=Ei*ml*iu-2*Ol/(1+hn)+Zn*ml*Ol+Zn*Ei*($u-$u/Fo),_f=Wu*ju-sf*Ku;if(!_f)break;var Qu=(Sl*Wu-au*sf)/_f,ef=(au*ju-Sl*Ku)/_f;Ne-=Qu,Ge=f(-A,c(A,Ge-ef))}while((n(Qu)>v||n(ef)>v)&&--lt>0);return n(n(Ge)-A)Ge){var Ir=G(Tr),ri=a(fr,nr),li=Ne*d(ri/Ne),Ei=ri-li,hn=he*o(Ei),Zn=(he*_(Ei)-Ei*_(hn))/(A-hn),Yn=Fi(Ei,Zn),Ua=(E-he)/an(Yn,hn,E);nr=Ir;var Fo=50,vl;do nr-=vl=(he+an(Yn,hn,nr)*Ua-Ir)/(Yn(nr)*Ua);while(n(vl)>v&&--Fo>0);fr=Ei*_(nr),nrGe){var nr=G(Ht),fr=a(pt,rt),Tr=Ne*d(fr/Ne),Ir=fr-Tr;rt=nr*o(Ir),pt=nr*_(Ir);for(var ri=rt-A,li=_(rt),Ei=pt/li,hn=rtv||n(Ei)>v)&&--hn>0);return[Ir,ri]},nr}var Ii=Ri(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function xn(){return t.geoProjection(Ii).scale(149.995)}var bi=Ri(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function Xr(){return t.geoProjection(bi).scale(153.93)}var ct=Ri(5/6*E,-.62636,-.0344,0,1.3493,-.05524,0,.045);function tr(){return t.geoProjection(ct).scale(130.945)}function pr(he,Se){var Ne=he*he,Ge=Se*Se;return[he*(1-.162388*Ge)*(.87-952426e-9*Ne*Ne),Se*(1+Ge/12)]}pr.invert=function(he,Se){var Ne=he,Ge=Se,lt=50,rt;do{var pt=Ge*Ge;Ge-=rt=(Ge*(1+pt/12)-Se)/(1+pt/4)}while(n(rt)>v&&--lt>0);lt=50,he/=1-.162388*pt;do{var Ht=(Ht=Ne*Ne)*Ht;Ne-=rt=(Ne*(.87-952426e-9*Ht)-he)/(.87-.00476213*Ht)}while(n(rt)>v&&--lt>0);return[Ne,Ge]};function gr(){return t.geoProjection(pr).scale(131.747)}var Zr=Ri(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Ti(){return t.geoProjection(Zr).scale(131.087)}function en(he){var Se=he(A,0)[0]-he(-A,0)[0];function Ne(Ge,lt){var rt=Ge>0?-.5:.5,pt=he(Ge+rt*E,lt);return pt[0]-=rt*Se,pt}return he.invert&&(Ne.invert=function(Ge,lt){var rt=Ge>0?-.5:.5,pt=he.invert(Ge+rt*Se,lt),Ht=pt[0]-rt*E;return Ht<-E?Ht+=2*E:Ht>E&&(Ht-=2*E),pt[0]=Ht,pt}),Ne}function ii(he,Se){var Ne=p(he),Ge=p(Se),lt=o(Se),rt=o(he)*lt,pt=_(he)*lt,Ht=_(Ge*Se);he=n(a(pt,Ht)),Se=F(rt),n(he-A)>v&&(he%=A);var nr=Xi(he>E/4?A-he:he,Se);return he>E/4&&(Ht=nr[0],nr[0]=-nr[1],nr[1]=-Ht),nr[0]*=Ne,nr[1]*=-Ge,nr}ii.invert=function(he,Se){n(he)>1&&(he=p(he)*2-he),n(Se)>1&&(Se=p(Se)*2-Se);var Ne=p(he),Ge=p(Se),lt=-Ne*he,rt=-Ge*Se,pt=rt/lt<1,Ht=aa(pt?rt:lt,pt?lt:rt),nr=Ht[0],fr=Ht[1],Tr=o(fr);return pt&&(nr=-A-nr),[Ne*(a(_(nr)*Tr,-_(fr))+E),Ge*F(o(nr)*Tr)]};function Xi(he,Se){if(Se===A)return[0,0];var Ne=_(Se),Ge=Ne*Ne,lt=Ge*Ge,rt=1+lt,pt=1+3*lt,Ht=1-lt,nr=F(1/G(rt)),fr=Ht+Ge*rt*nr,Tr=(1-Ne)/fr,Ir=G(Tr),ri=Tr*rt,li=G(ri),Ei=Ir*Ht,hn,Zn;if(he===0)return[0,-(Ei+Ge*li)];var Yn=o(Se),Ua=1/Yn,Fo=2*Ne*Yn,vl=(-3*Ge+nr*pt)*Fo,Us=(-fr*Yn-(1-Ne)*vl)/(fr*fr),ml=.5*Us/Ir,au=Ht*ml-2*Ge*Ir*Fo,Sl=Ge*rt*Us+Tr*pt*Fo,Yl=-Ua*Fo,Ol=-Ua*Sl,ou=-2*Ua*au,Pu=4*he/E,iu;if(he>.222*E||Se.175*E){if(hn=(Ei+Ge*G(ri*(1+lt)-Ei*Ei))/(1+lt),he>E/4)return[hn,hn];var tu=hn,Hu=.5*hn;hn=.5*(Hu+tu),Zn=50;do{var $u=G(ri-hn*hn),Ku=hn*(ou+Yl*$u)+Ol*F(hn/li)-Pu;if(!Ku)break;Ku<0?Hu=hn:tu=hn,hn=.5*(Hu+tu)}while(n(tu-Hu)>v&&--Zn>0)}else{hn=v,Zn=25;do{var Wu=hn*hn,ju=G(ri-Wu),sf=ou+Yl*ju,_f=hn*sf+Ol*F(hn/li)-Pu,Qu=sf+(Ol-Yl*Wu)/ju;hn-=iu=ju?_f/Qu:0}while(n(iu)>v&&--Zn>0)}return[hn,-Ei-Ge*G(ri-hn*hn)]}function aa(he,Se){for(var Ne=0,Ge=1,lt=.5,rt=50;;){var pt=lt*lt,Ht=G(lt),nr=F(1/G(1+pt)),fr=1-pt+lt*(1+pt)*nr,Tr=(1-Ht)/fr,Ir=G(Tr),ri=Tr*(1+pt),li=Ir*(1-pt),Ei=ri-he*he,hn=G(Ei),Zn=Se+li+lt*hn;if(n(Ge-Ne)0?Ne=lt:Ge=lt,lt=.5*(Ne+Ge)}if(!rt)return null;var Yn=F(Ht),Ua=o(Yn),Fo=1/Ua,vl=2*Ht*Ua,Us=(-3*lt+nr*(1+3*pt))*vl,ml=(-fr*Ua-(1-Ht)*Us)/(fr*fr),au=.5*ml/Ir,Sl=(1-pt)*au-2*lt*Ir*vl,Yl=-2*Fo*Sl,Ol=-Fo*vl,ou=-Fo*(lt*(1+pt)*ml+Tr*(1+3*pt)*vl);return[E/4*(he*(Yl+Ol*hn)+ou*F(he/G(ri))),Yn]}function Mn(){return t.geoProjection(en(ii)).scale(239.75)}function Un(he,Se,Ne){var Ge,lt,rt;return he?(Ge=Ga(he,Ne),Se?(lt=Ga(Se,1-Ne),rt=lt[1]*lt[1]+Ne*Ge[0]*Ge[0]*lt[0]*lt[0],[[Ge[0]*lt[2]/rt,Ge[1]*Ge[2]*lt[0]*lt[1]/rt],[Ge[1]*lt[1]/rt,-Ge[0]*Ge[2]*lt[0]*lt[2]/rt],[Ge[2]*lt[1]*lt[2]/rt,-Ne*Ge[0]*Ge[1]*lt[0]/rt]]):[[Ge[0],0],[Ge[1],0],[Ge[2],0]]):(lt=Ga(Se,1-Ne),[[0,lt[0]/lt[1]],[1/lt[1],0],[lt[2]/lt[1],0]])}function Ga(he,Se){var Ne,Ge,lt,rt,pt;if(Se=1-v)return Ne=(1-Se)/4,Ge=N(he),rt=j(he),lt=1/Ge,pt=Ge*H(he),[rt+Ne*(pt-he)/(Ge*Ge),lt-Ne*rt*lt*(pt-he),lt+Ne*rt*lt*(pt+he),2*i(s(he))-A+Ne*(pt-he)/Ge];var Ht=[1,0,0,0,0,0,0,0,0],nr=[G(Se),0,0,0,0,0,0,0,0],fr=0;for(Ge=G(1-Se),pt=1;n(nr[fr]/Ht[fr])>v&&fr<8;)Ne=Ht[fr++],nr[fr]=(Ne-Ge)/2,Ht[fr]=(Ne+Ge)/2,Ge=G(Ne*Ge),pt*=2;lt=pt*Ht[fr]*he;do rt=nr[fr]*_(Ge=lt)/Ht[fr],lt=(F(rt)+lt)/2;while(--fr);return[_(lt),rt=o(lt),rt/o(lt-Ge),lt]}function ma(he,Se,Ne){var Ge=n(he),lt=n(Se),rt=H(lt);if(Ge){var pt=1/_(Ge),Ht=1/(b(Ge)*b(Ge)),nr=-(Ht+Ne*(rt*rt*pt*pt)-1+Ne),fr=(Ne-1)*Ht,Tr=(-nr+G(nr*nr-4*fr))/2;return[oa(i(1/G(Tr)),Ne)*p(he),oa(i(G((Tr/Ht-1)/Ne)),1-Ne)*p(Se)]}return[0,oa(i(rt),1-Ne)*p(Se)]}function oa(he,Se){if(!Se)return he;if(Se===1)return l(b(he/2+L));for(var Ne=1,Ge=G(1-Se),lt=G(Se),rt=0;n(lt)>v;rt++){if(he%E){var pt=i(Ge*b(he)/Ne);pt<0&&(pt+=E),he+=pt+~~(he/E)*E}else he+=he;lt=(Ne+Ge)/2,Ge=G(Ne*Ge),lt=((Ne=lt)-Ge)/2}return he/(h(2,rt)*Ne)}function ka(he,Se){var Ne=(C-1)/(C+1),Ge=G(1-Ne*Ne),lt=oa(A,Ge*Ge),rt=-1,pt=l(b(E/4+n(Se)/2)),Ht=s(rt*pt)/G(Ne),nr=so(Ht*o(rt*he),Ht*_(rt*he)),fr=ma(nr[0],nr[1],Ge*Ge);return[-fr[1],(Se>=0?1:-1)*(.5*lt-fr[0])]}function so(he,Se){var Ne=he*he,Ge=Se+1,lt=1-Ne-Se*Se;return[.5*((he>=0?A:-A)-a(lt,2*he)),-.25*l(lt*lt+4*Ne)+.5*l(Ge*Ge+Ne)]}function Kr(he,Se){var Ne=Se[0]*Se[0]+Se[1]*Se[1];return[(he[0]*Se[0]+he[1]*Se[1])/Ne,(he[1]*Se[0]-he[0]*Se[1])/Ne]}ka.invert=function(he,Se){var Ne=(C-1)/(C+1),Ge=G(1-Ne*Ne),lt=oa(A,Ge*Ge),rt=-1,pt=Un(.5*lt-Se,-he,Ge*Ge),Ht=Kr(pt[0],pt[1]),nr=a(Ht[1],Ht[0])/rt;return[nr,2*i(s(.5/rt*l(Ne*Ht[0]*Ht[0]+Ne*Ht[1]*Ht[1])))-A]};function Ia(){return t.geoProjection(en(ka)).scale(151.496)}function Yo(he){var Se=_(he),Ne=o(he),Ge=fa(he);Ge.invert=fa(-he);function lt(rt,pt){var Ht=Ge(rt,pt);rt=Ht[0],pt=Ht[1];var nr=_(pt),fr=o(pt),Tr=o(rt),Ir=U(Se*nr+Ne*fr*Tr),ri=_(Ir),li=n(ri)>v?Ir/ri:1;return[li*Ne*_(rt),(n(rt)>A?li:-li)*(Se*fr-Ne*nr*Tr)]}return lt.invert=function(rt,pt){var Ht=G(rt*rt+pt*pt),nr=-_(Ht),fr=o(Ht),Tr=Ht*fr,Ir=-pt*nr,ri=Ht*Se,li=G(Tr*Tr+Ir*Ir-ri*ri),Ei=a(Tr*ri+Ir*li,Ir*ri-Tr*li),hn=(Ht>A?-1:1)*a(rt*nr,Ht*o(Ei)*fr+pt*_(Ei)*nr);return Ge.invert(hn,Ei)},lt}function fa(he){var Se=_(he),Ne=o(he);return function(Ge,lt){var rt=o(lt),pt=o(Ge)*rt,Ht=_(Ge)*rt,nr=_(lt);return[a(Ht,pt*Ne-nr*Se),F(nr*Ne+pt*Se)]}}function kn(){var he=0,Se=t.geoProjectionMutator(Yo),Ne=Se(he),Ge=Ne.rotate,lt=Ne.stream,rt=t.geoCircle();return Ne.parallel=function(pt){if(!arguments.length)return he*P;var Ht=Ne.rotate();return Se(he=pt*T).rotate(Ht)},Ne.rotate=function(pt){return arguments.length?(Ge.call(Ne,[pt[0],pt[1]-he*P]),rt.center([-pt[0],-pt[1]]),Ne):(pt=Ge.call(Ne),pt[1]+=he*P,pt)},Ne.stream=function(pt){return pt=lt(pt),pt.sphere=function(){pt.polygonStart();var Ht=.01,nr=rt.radius(90-Ht)().coordinates[0],fr=nr.length-1,Tr=-1,Ir;for(pt.lineStart();++Tr=0;)pt.point((Ir=nr[Tr])[0],Ir[1]);pt.lineEnd(),pt.polygonEnd()},pt},Ne.scale(79.4187).parallel(45).clipAngle(180-.001)}var Aa=3,ys=F(1-1/Aa)*P,uo=rr(0);function ls(he){var Se=ys*T,Ne=ft(E,Se)[0]-ft(-E,Se)[0],Ge=uo(0,Se)[1],lt=ft(0,Se)[1],rt=M-lt,pt=m/he,Ht=4/m,nr=Ge+rt*rt*4/m;function fr(Tr,Ir){var ri,li=n(Ir);if(li>Se){var Ei=c(he-1,f(0,u((Tr+E)/pt)));Tr+=E*(he-1)/he-Ei*pt,ri=ft(Tr,li),ri[0]=ri[0]*m/Ne-m*(he-1)/(2*he)+Ei*m/he,ri[1]=Ge+(ri[1]-lt)*4*rt/m,Ir<0&&(ri[1]=-ri[1])}else ri=uo(Tr,Ir);return ri[0]*=Ht,ri[1]/=nr,ri}return fr.invert=function(Tr,Ir){Tr/=Ht,Ir*=nr;var ri=n(Ir);if(ri>Ge){var li=c(he-1,f(0,u((Tr+E)/pt)));Tr=(Tr+E*(he-1)/he-li*pt)*Ne/m;var Ei=ft.invert(Tr,.25*(ri-Ge)*m/rt+lt);return Ei[0]-=E*(he-1)/he-li*pt,Ir<0&&(Ei[1]=-Ei[1]),Ei}return uo.invert(Tr,Ir)},fr}function $a(he,Se){return[he,Se&1?90-v:ys]}function fo(he,Se){return[he,Se&1?-90+v:-ys]}function mn(he){return[he[0]*(1-v),he[1]]}function ra(he){var Se=[].concat(r.range(-180,180+he/2,he).map($a),r.range(180,-180-he/2,-he).map(fo));return{type:"Polygon",coordinates:[he===180?Se.map(mn):Se]}}function wa(){var he=4,Se=t.geoProjectionMutator(ls),Ne=Se(he),Ge=Ne.stream;return Ne.lobes=function(lt){return arguments.length?Se(he=+lt):he},Ne.stream=function(lt){var rt=Ne.rotate(),pt=Ge(lt),Ht=(Ne.rotate([0,0]),Ge(lt));return Ne.rotate(rt),pt.sphere=function(){t.geoStream(ra(180/he),Ht)},pt},Ne.scale(239.75)}function ws(he){var Se=1+he,Ne=_(1/Se),Ge=F(Ne),lt=2*G(E/(rt=E+4*Ge*Se)),rt,pt=.5*lt*(Se+G(he*(2+he))),Ht=he*he,nr=Se*Se;function fr(Tr,Ir){var ri=1-_(Ir),li,Ei;if(ri&&ri<2){var hn=A-Ir,Zn=25,Yn;do{var Ua=_(hn),Fo=o(hn),vl=Ge+a(Ua,Se-Fo),Us=1+nr-2*Se*Fo;hn-=Yn=(hn-Ht*Ge-Se*Ua+Us*vl-.5*ri*rt)/(2*Se*Ua*vl)}while(n(Yn)>k&&--Zn>0);li=lt*G(Us),Ei=Tr*vl/E}else li=lt*(he+ri),Ei=Tr*Ge/E;return[li*_(Ei),pt-li*o(Ei)]}return fr.invert=function(Tr,Ir){var ri=Tr*Tr+(Ir-=pt)*Ir,li=(1+nr-ri/(lt*lt))/(2*Se),Ei=U(li),hn=_(Ei),Zn=Ge+a(hn,Se-li);return[F(Tr/G(ri))*E/Zn,F(1-2*(Ei-Ht*Ge-Se*hn+(1+nr-2*Se*li)*Zn)/rt)]},fr}function Co(){var he=1,Se=t.geoProjectionMutator(ws),Ne=Se(he);return Ne.ratio=function(Ge){return arguments.length?Se(he=+Ge):he},Ne.scale(167.774).center([0,18.67])}var Po=.7109889596207567,Wi=.0528035274542;function gn(he,Se){return Se>-Po?(he=Dt(he,Se),he[1]+=Wi,he):Ye(he,Se)}gn.invert=function(he,Se){return Se>-Po?Dt.invert(he,Se-Wi):Ye.invert(he,Se)};function Ps(){return t.geoProjection(gn).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function Ha(he,Se){return n(Se)>Po?(he=Dt(he,Se),he[1]-=Se>0?Wi:-Wi,he):Ye(he,Se)}Ha.invert=function(he,Se){return n(Se)>Po?Dt.invert(he,Se+(Se>0?Wi:-Wi)):Ye.invert(he,Se)};function Sn(){return t.geoProjection(Ha).scale(152.63)}function ao(he,Se,Ne,Ge){var lt=G(4*E/(2*Ne+(1+he-Se/2)*_(2*Ne)+(he+Se)/2*_(4*Ne)+Se/2*_(6*Ne))),rt=G(Ge*_(Ne)*G((1+he*o(2*Ne)+Se*o(4*Ne))/(1+he+Se))),pt=Ne*nr(1);function Ht(Ir){return G(1+he*o(2*Ir)+Se*o(4*Ir))}function nr(Ir){var ri=Ir*Ne;return(2*ri+(1+he-Se/2)*_(2*ri)+(he+Se)/2*_(4*ri)+Se/2*_(6*ri))/Ne}function fr(Ir){return Ht(Ir)*_(Ir)}var Tr=function(Ir,ri){var li=Ne*Nt(nr,pt*_(ri)/Ne,ri/E);isNaN(li)&&(li=Ne*p(ri));var Ei=lt*Ht(li);return[Ei*rt*Ir/E*o(li),Ei/rt*_(li)]};return Tr.invert=function(Ir,ri){var li=Nt(fr,ri*rt/lt);return[Ir*E/(o(li)*lt*rt*Ht(li)),F(Ne*nr(li/Ne)/pt)]},Ne===0&&(lt=G(Ge/E),Tr=function(Ir,ri){return[Ir*lt,_(ri)/lt]},Tr.invert=function(Ir,ri){return[Ir/lt,F(ri*lt)]}),Tr}function Ba(){var he=1,Se=0,Ne=45*T,Ge=2,lt=t.geoProjectionMutator(ao),rt=lt(he,Se,Ne,Ge);return rt.a=function(pt){return arguments.length?lt(he=+pt,Se,Ne,Ge):he},rt.b=function(pt){return arguments.length?lt(he,Se=+pt,Ne,Ge):Se},rt.psiMax=function(pt){return arguments.length?lt(he,Se,Ne=+pt*T,Ge):Ne*P},rt.ratio=function(pt){return arguments.length?lt(he,Se,Ne,Ge=+pt):Ge},rt.scale(180.739)}function Ko(he,Se,Ne,Ge,lt,rt,pt,Ht,nr,fr,Tr){if(Tr.nanEncountered)return NaN;var Ir,ri,li,Ei,hn,Zn,Yn,Ua,Fo,vl;if(Ir=Ne-Se,ri=he(Se+Ir*.25),li=he(Ne-Ir*.25),isNaN(ri)){Tr.nanEncountered=!0;return}if(isNaN(li)){Tr.nanEncountered=!0;return}return Ei=Ir*(Ge+4*ri+lt)/12,hn=Ir*(lt+4*li+rt)/12,Zn=Ei+hn,vl=(Zn-pt)/15,fr>nr?(Tr.maxDepthCount++,Zn+vl):Math.abs(vl)>1;do nr[Zn]>li?hn=Zn:Ei=Zn,Zn=Ei+hn>>1;while(Zn>Ei);var Yn=nr[Zn+1]-nr[Zn];return Yn&&(Yn=(li-nr[Zn+1])/Yn),(Zn+1+Yn)/pt}var Ir=2*Tr(1)/E*rt/Ne,ri=function(li,Ei){var hn=Tr(n(_(Ei))),Zn=Ge(hn)*li;return hn/=Ir,[Zn,Ei>=0?hn:-hn]};return ri.invert=function(li,Ei){var hn;return Ei*=Ir,n(Ei)<1&&(hn=p(Ei)*F(lt(n(Ei))*rt)),[li/Ge(n(Ei)),hn]},ri}function Sa(){var he=0,Se=2.5,Ne=1.183136,Ge=t.geoProjectionMutator(Hi),lt=Ge(he,Se,Ne);return lt.alpha=function(rt){return arguments.length?Ge(he=+rt,Se,Ne):he},lt.k=function(rt){return arguments.length?Ge(he,Se=+rt,Ne):Se},lt.gamma=function(rt){return arguments.length?Ge(he,Se,Ne=+rt):Ne},lt.scale(152.63)}function Qa(he,Se){return n(he[0]-Se[0])=0;--nr)Ne=he[1][nr],Ge=Ne[0][0],lt=Ne[0][1],rt=Ne[1][1],pt=Ne[2][0],Ht=Ne[2][1],Se.push(vn([[pt-v,Ht-v],[pt-v,rt+v],[Ge+v,rt+v],[Ge+v,lt-v]],30));return{type:"Polygon",coordinates:[r.merge(Se)]}}function la(he,Se,Ne){var Ge,lt;function rt(nr,fr){for(var Tr=fr<0?-1:1,Ir=Se[+(fr<0)],ri=0,li=Ir.length-1;riIr[ri][2][0];++ri);var Ei=he(nr-Ir[ri][1][0],fr);return Ei[0]+=he(Ir[ri][1][0],Tr*fr>Tr*Ir[ri][0][1]?Ir[ri][0][1]:fr)[0],Ei}Ne?rt.invert=Ne(rt):he.invert&&(rt.invert=function(nr,fr){for(var Tr=lt[+(fr<0)],Ir=Se[+(fr<0)],ri=0,li=Tr.length;riEi&&(hn=li,li=Ei,Ei=hn),[[Ir,li],[ri,Ei]]})}),pt):Se.map(function(fr){return fr.map(function(Tr){return[[Tr[0][0]*P,Tr[0][1]*P],[Tr[1][0]*P,Tr[1][1]*P],[Tr[2][0]*P,Tr[2][1]*P]]})})},Se!=null&&pt.lobes(Se),pt}var vo=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Ts(){return la(ot,vo).scale(160.857)}var ps=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function co(){return la(Ha,ps).scale(152.63)}var mo=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function No(){return la(Dt,mo).scale(169.529)}var jn=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function Go(){return la(Dt,jn).scale(169.529).rotate([20,0])}var Ys=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function qs(){return la(gn,Ys,at).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var Ns=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function Oa(){return la(Ye,Ns).scale(152.63).rotate([-20,0])}function ha(he,Se){return[3/m*he*G(E*E/3-Se*Se),Se]}ha.invert=function(he,Se){return[m/3*he/G(E*E/3-Se*Se),Se]};function Vs(){return t.geoProjection(ha).scale(158.837)}function Ya(he){function Se(Ne,Ge){if(n(n(Ge)-A)2)return null;Ne/=2,Ge/=2;var rt=Ne*Ne,pt=Ge*Ge,Ht=2*Ge/(1+rt+pt);return Ht=h((1+Ht)/(1-Ht),1/he),[a(2*Ne,1-rt-pt)/he,F((Ht-1)/(Ht+1))]},Se}function _n(){var he=.5,Se=t.geoProjectionMutator(Ya),Ne=Se(he);return Ne.spacing=function(Ge){return arguments.length?Se(he=+Ge):he},Ne.scale(124.75)}var Vn=E/C;function wo(he,Se){return[he*(1+G(o(Se)))/2,Se/(o(Se/2)*o(he/6))]}wo.invert=function(he,Se){var Ne=n(he),Ge=n(Se),lt=v,rt=A;Gev||n(Zn)>v)&&--lt>0);return lt&&[Ne,Ge]};function un(){return t.geoProjection(Xn).scale(139.98)}function $n(he,Se){return[_(he)/o(Se),b(Se)*o(he)]}$n.invert=function(he,Se){var Ne=he*he,Ge=Se*Se,lt=Ge+1,rt=Ne+lt,pt=he?x*G((rt-G(rt*rt-4*Ne))/Ne):1/G(lt);return[F(he*pt),p(Se)*U(pt)]};function Ka(){return t.geoProjection($n).scale(144.049).clipAngle(90-.001)}function qn(he){var Se=o(he),Ne=b(L+he/2);function Ge(lt,rt){var pt=rt-he,Ht=n(pt)=0;)Tr=he[fr],Ir=Tr[0]+Ht*(li=Ir)-nr*ri,ri=Tr[1]+Ht*ri+nr*li;return Ir=Ht*(li=Ir)-nr*ri,ri=Ht*ri+nr*li,[Ir,ri]}return Ne.invert=function(Ge,lt){var rt=20,pt=Ge,Ht=lt;do{for(var nr=Se,fr=he[nr],Tr=fr[0],Ir=fr[1],ri=0,li=0,Ei;--nr>=0;)fr=he[nr],ri=Tr+pt*(Ei=ri)-Ht*li,li=Ir+pt*li+Ht*Ei,Tr=fr[0]+pt*(Ei=Tr)-Ht*Ir,Ir=fr[1]+pt*Ir+Ht*Ei;ri=Tr+pt*(Ei=ri)-Ht*li,li=Ir+pt*li+Ht*Ei,Tr=pt*(Ei=Tr)-Ht*Ir-Ge,Ir=pt*Ir+Ht*Ei-lt;var hn=ri*ri+li*li,Zn,Yn;pt-=Zn=(Tr*ri+Ir*li)/hn,Ht-=Yn=(Ir*ri-Tr*li)/hn}while(n(Zn)+n(Yn)>v*v&&--rt>0);if(rt){var Ua=G(pt*pt+Ht*Ht),Fo=2*i(Ua*.5),vl=_(Fo);return[a(pt*vl,Ua*o(Fo)),Ua?F(Ht*vl/Ua):0]}},Ne}var sa=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],es=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Na=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],rn=[[.9245,0],[0,0],[.01943,0]],Pa=[[.721316,0],[0,0],[-.00881625,-.00617325]];function to(){return _a(sa,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function yo(){return _a(es,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Jo(){return _a(Na,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function To(){return _a(rn,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function Dn(){return _a(Pa,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function _a(he,Se){var Ne=t.geoProjection(eo(he)).rotate(Se).clipAngle(90),Ge=t.geoRotation(Se),lt=Ne.center;return delete Ne.rotate,Ne.center=function(rt){return arguments.length?lt(Ge(rt)):Ge.invert(lt())},Ne}var Ws=G(6),Ca=G(7);function Es(he,Se){var Ne=F(7*_(Se)/(3*Ws));return[Ws*he*(2*o(2*Ne/3)-1)/Ca,9*_(Ne/3)/Ca]}Es.invert=function(he,Se){var Ne=3*F(Se*Ca/9);return[he*Ca/(Ws*(2*o(2*Ne/3)-1)),F(_(Ne)*3*Ws/7)]};function As(){return t.geoProjection(Es).scale(164.859)}function Ho(he,Se){for(var Ne=(1+x)*_(Se),Ge=Se,lt=0,rt;lt<25&&(Ge-=rt=(_(Ge/2)+_(Ge)-Ne)/(.5*o(Ge/2)+o(Ge)),!(n(rt)k&&--Ge>0);return rt=Ne*Ne,pt=rt*rt,Ht=rt*pt,[he/(.84719-.13063*rt+Ht*Ht*(-.04515+.05494*rt-.02326*pt+.00331*Ht)),Ne]};function qa(){return t.geoProjection(Wo).scale(175.295)}function ln(he,Se){return[he*(1+o(Se))/2,2*(Se-b(Se/2))]}ln.invert=function(he,Se){for(var Ne=Se/2,Ge=0,lt=1/0;Ge<10&&n(lt)>v;++Ge){var rt=o(Se/2);Se-=lt=(Se-b(Se/2)-Ne)/(1-.5/(rt*rt))}return[2*he/(1+o(Se)),Se]};function Bo(){return t.geoProjection(ln).scale(152.63)}var ko=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function oo(){return la(Je(1/0),ko).rotate([20,0]).scale(152.63)}function za(he,Se){var Ne=_(Se),Ge=o(Se),lt=p(he);if(he===0||n(Se)===A)return[0,Se];if(Se===0)return[he,0];if(n(he)===A)return[he*Ge,A*Ne];var rt=E/(2*he)-2*he/E,pt=2*Se/E,Ht=(1-pt*pt)/(Ne-pt),nr=rt*rt,fr=Ht*Ht,Tr=1+nr/fr,Ir=1+fr/nr,ri=(rt*Ne/Ht-rt/2)/Tr,li=(fr*Ne/nr+Ht/2)/Ir,Ei=ri*ri+Ge*Ge/Tr,hn=li*li-(fr*Ne*Ne/nr+Ht*Ne-1)/Ir;return[A*(ri+G(Ei)*lt),A*(li+G(hn<0?0:hn)*p(-Se*rt)*lt)]}za.invert=function(he,Se){he/=A,Se/=A;var Ne=he*he,Ge=Se*Se,lt=Ne+Ge,rt=E*E;return[he?(lt-1+G((1-lt)*(1-lt)+4*Ne))/(2*he)*A:0,Nt(function(pt){return lt*(E*_(pt)-2*pt)*E+4*pt*pt*(Se-_(pt))+2*E*pt-rt*Se},0)]};function ea(){return t.geoProjection(za).scale(127.267)}var rs=1.0148,$s=.23185,us=-.14499,Ds=.02406,fl=rs,as=5*$s,Ma=7*us,Qs=9*Ds,ho=1.790857183;function gs(he,Se){var Ne=Se*Se;return[he,Se*(rs+Ne*Ne*($s+Ne*(us+Ds*Ne)))]}gs.invert=function(he,Se){Se>ho?Se=ho:Se<-ho&&(Se=-ho);var Ne=Se,Ge;do{var lt=Ne*Ne;Ne-=Ge=(Ne*(rs+lt*lt*($s+lt*(us+Ds*lt)))-Se)/(fl+lt*lt*(as+lt*(Ma+Qs*lt)))}while(n(Ge)>v);return[he,Ne]};function Vo(){return t.geoProjection(gs).scale(139.319)}function Do(he,Se){if(n(Se)v&&--lt>0);return pt=b(Ge),[(n(Se)=0;)if(Ge=Se[Ht],Ne[0]===Ge[0]&&Ne[1]===Ge[1]){if(rt)return[rt,Ne];rt=Ne}}}function Ta(he){for(var Se=he.length,Ne=[],Ge=he[Se-1],lt=0;lt0?[-Ge[0],0]:[180-Ge[0],180])};var Se=Ss.map(function(Ne){return{face:Ne,project:he(Ne)}});return[-1,0,0,1,0,1,4,5].forEach(function(Ne,Ge){var lt=Se[Ne];lt&&(lt.children||(lt.children=[])).push(Se[Ge])}),Gs(Se[0],function(Ne,Ge){return Se[Ne<-E/2?Ge<0?6:4:Ne<0?Ge<0?2:0:NeGe^li>Ge&&Ne<(ri-fr)*(Ge-Tr)/(li-Tr)+fr&&(lt=!lt)}return lt}function Hs(he,Se){var Ne=Se.stream,Ge;if(!Ne)throw new Error("invalid projection");switch(he&&he.type){case"Feature":Ge=tl;break;case"FeatureCollection":Ge=Ro;break;default:Ge=hl;break}return Ge(he,Ne)}function Ro(he,Se){return{type:"FeatureCollection",features:he.features.map(function(Ne){return tl(Ne,Se)})}}function tl(he,Se){return{type:"Feature",id:he.id,properties:he.properties,geometry:hl(he.geometry,Se)}}function Fs(he,Se){return{type:"GeometryCollection",geometries:he.geometries.map(function(Ne){return hl(Ne,Se)})}}function hl(he,Se){if(!he)return null;if(he.type==="GeometryCollection")return Fs(he,Se);var Ne;switch(he.type){case"Point":Ne=jo;break;case"MultiPoint":Ne=jo;break;case"LineString":Ne=Rs;break;case"MultiLineString":Ne=Rs;break;case"Polygon":Ne=Is;break;case"MultiPolygon":Ne=Is;break;case"Sphere":Ne=Is;break;default:return null}return t.geoStream(he,Se(Ne)),Ne.result()}var Fa=[],Ms=[],jo={point:function(he,Se){Fa.push([he,Se])},result:function(){var he=Fa.length?Fa.length<2?{type:"Point",coordinates:Fa[0]}:{type:"MultiPoint",coordinates:Fa}:null;return Fa=[],he}},Rs={lineStart:fs,point:function(he,Se){Fa.push([he,Se])},lineEnd:function(){Fa.length&&(Ms.push(Fa),Fa=[])},result:function(){var he=Ms.length?Ms.length<2?{type:"LineString",coordinates:Ms[0]}:{type:"MultiLineString",coordinates:Ms}:null;return Ms=[],he}},Is={polygonStart:fs,lineStart:fs,point:function(he,Se){Fa.push([he,Se])},lineEnd:function(){var he=Fa.length;if(he){do Fa.push(Fa[0].slice());while(++he<4);Ms.push(Fa),Fa=[]}},polygonEnd:fs,result:function(){if(!Ms.length)return null;var he=[],Se=[];return Ms.forEach(function(Ne){cl(Ne)?he.push([Ne]):Se.push(Ne)}),Se.forEach(function(Ne){var Ge=Ne[0];he.some(function(lt){if(el(lt[0],Ge))return lt.push(Ne),!0})||he.push([Ne])}),Ms=[],he.length?he.length>1?{type:"MultiPolygon",coordinates:he}:{type:"Polygon",coordinates:he[0]}:null}};function Bs(he){var Se=he(A,0)[0]-he(-A,0)[0];function Ne(Ge,lt){var rt=n(Ge)0?Ge-E:Ge+E,lt),Ht=(pt[0]-pt[1])*x,nr=(pt[0]+pt[1])*x;if(rt)return[Ht,nr];var fr=Se*x,Tr=Ht>0^nr>0?-1:1;return[Tr*Ht-p(nr)*fr,Tr*nr-p(Ht)*fr]}return he.invert&&(Ne.invert=function(Ge,lt){var rt=(Ge+lt)*x,pt=(lt-Ge)*x,Ht=n(rt)<.5*Se&&n(pt)<.5*Se;if(!Ht){var nr=Se*x,fr=rt>0^pt>0?-1:1,Tr=-fr*Ge+(pt>0?1:-1)*nr,Ir=-fr*lt+(rt>0?1:-1)*nr;rt=(-Tr-Ir)*x,pt=(Tr-Ir)*x}var ri=he.invert(rt,pt);return Ht||(ri[0]+=rt>0?E:-E),ri}),t.geoProjection(Ne).rotate([-90,-90,45]).clipAngle(180-.001)}function At(){return Bs(ii).scale(176.423)}function Vt(){return Bs(ka).scale(111.48)}function wr(he,Se){if(!(0<=(Se=+Se)&&Se<=20))throw new Error("invalid digits");function Ne(fr){var Tr=fr.length,Ir=2,ri=new Array(Tr);for(ri[0]=+fr[0].toFixed(Se),ri[1]=+fr[1].toFixed(Se);Ir2||li[0]!=Tr[0]||li[1]!=Tr[1])&&(Ir.push(li),Tr=li)}return Ir.length===1&&fr.length>1&&Ir.push(Ne(fr[fr.length-1])),Ir}function rt(fr){return fr.map(lt)}function pt(fr){if(fr==null)return fr;var Tr;switch(fr.type){case"GeometryCollection":Tr={type:"GeometryCollection",geometries:fr.geometries.map(pt)};break;case"Point":Tr={type:"Point",coordinates:Ne(fr.coordinates)};break;case"MultiPoint":Tr={type:fr.type,coordinates:Ge(fr.coordinates)};break;case"LineString":Tr={type:fr.type,coordinates:lt(fr.coordinates)};break;case"MultiLineString":case"Polygon":Tr={type:fr.type,coordinates:rt(fr.coordinates)};break;case"MultiPolygon":Tr={type:"MultiPolygon",coordinates:fr.coordinates.map(rt)};break;default:return fr}return fr.bbox!=null&&(Tr.bbox=fr.bbox),Tr}function Ht(fr){var Tr={type:"Feature",properties:fr.properties,geometry:pt(fr.geometry)};return fr.id!=null&&(Tr.id=fr.id),fr.bbox!=null&&(Tr.bbox=fr.bbox),Tr}if(he!=null)switch(he.type){case"Feature":return Ht(he);case"FeatureCollection":{var nr={type:"FeatureCollection",features:he.features.map(Ht)};return he.bbox!=null&&(nr.bbox=he.bbox),nr}default:return pt(he)}return he}function mr(he){var Se=_(he);function Ne(Ge,lt){var rt=Se?b(Ge*Se/2)/Se:Ge/2;if(!lt)return[2*rt,-he];var pt=2*i(rt*_(lt)),Ht=1/b(lt);return[_(pt)*Ht,lt+(1-o(pt))*Ht-he]}return Ne.invert=function(Ge,lt){if(n(lt+=he)v&&--Ht>0);var ri=Ge*(fr=b(pt)),li=b(n(lt)0?A:-A)*(nr+lt*(Tr-pt)/2+lt*lt*(Tr-2*nr+pt)/2)]}Si.invert=function(he,Se){var Ne=Se/A,Ge=Ne*90,lt=c(18,n(Ge/5)),rt=f(0,u(lt));do{var pt=_i[rt][1],Ht=_i[rt+1][1],nr=_i[c(19,rt+2)][1],fr=nr-pt,Tr=nr-2*Ht+pt,Ir=2*(n(Ne)-Ht)/fr,ri=Tr/fr,li=Ir*(1-ri*Ir*(1-2*ri*Ir));if(li>=0||rt===1){Ge=(Se>=0?5:-5)*(li+lt);var Ei=50,hn;do lt=c(18,n(Ge)/5),rt=u(lt),li=lt-rt,pt=_i[rt][1],Ht=_i[rt+1][1],nr=_i[c(19,rt+2)][1],Ge-=(hn=(Se>=0?A:-A)*(Ht+li*(nr-pt)/2+li*li*(nr-2*Ht+pt)/2)-Se)*P;while(n(hn)>k&&--Ei>0);break}}while(--rt>=0);var Zn=_i[rt][0],Yn=_i[rt+1][0],Ua=_i[c(19,rt+2)][0];return[he/(Yn+li*(Ua-Zn)/2+li*li*(Ua-2*Yn+Zn)/2),Ge*T]};function Ci(){return t.geoProjection(Si).scale(152.63)}function Ki(he){function Se(Ne,Ge){var lt=o(Ge),rt=(he-1)/(he-lt*o(Ne));return[rt*lt*_(Ne),rt*_(Ge)]}return Se.invert=function(Ne,Ge){var lt=Ne*Ne+Ge*Ge,rt=G(lt),pt=(he-G(1-lt*(he+1)/(he-1)))/((he-1)/rt+rt/(he-1));return[a(Ne*pt,rt*G(1-pt*pt)),rt?F(Ge*pt/rt):0]},Se}function Fn(he,Se){var Ne=Ki(he);if(!Se)return Ne;var Ge=o(Se),lt=_(Se);function rt(pt,Ht){var nr=Ne(pt,Ht),fr=nr[1],Tr=fr*lt/(he-1)+Ge;return[nr[0]*Ge/Tr,fr/Tr]}return rt.invert=function(pt,Ht){var nr=(he-1)/(he-1-Ht*lt);return Ne.invert(nr*pt,nr*Ht*Ge)},rt}function Pi(){var he=2,Se=0,Ne=t.geoProjectionMutator(Fn),Ge=Ne(he,Se);return Ge.distance=function(lt){return arguments.length?Ne(he=+lt,Se):he},Ge.tilt=function(lt){return arguments.length?Ne(he,Se=lt*T):Se*P},Ge.scale(432.147).clipAngle(U(1/he)*P-1e-6)}var di=1e-4,Li=1e4,Mi=-180,Gn=Mi+di,ta=180,ya=ta-di,ia=-90,pa=ia+di,va=90,zn=va-di;function is(he){return he.length>0}function Cs(he){return Math.floor(he*Li)/Li}function Ks(he){return he===ia||he===va?[0,he]:[Mi,Cs(he)]}function dl(he){var Se=he[0],Ne=he[1],Ge=!1;return Se<=Gn?(Se=Mi,Ge=!0):Se>=ya&&(Se=ta,Ge=!0),Ne<=pa?(Ne=ia,Ge=!0):Ne>=zn&&(Ne=va,Ge=!0),Ge?[Se,Ne]:he}function xl(he){return he.map(dl)}function Bl(he,Se,Ne){for(var Ge=0,lt=he.length;Ge=ya||Tr<=pa||Tr>=zn){rt[pt]=dl(nr);for(var Ir=pt+1;IrGn&&lipa&&Ei=Ht)break;Ne.push({index:-1,polygon:Se,ring:rt=rt.slice(Ir-1)}),rt[0]=Ks(rt[0][1]),pt=-1,Ht=rt.length}}}}function bl(he){var Se,Ne=he.length,Ge={},lt={},rt,pt,Ht,nr,fr;for(Se=0;Se0?E-Ht:Ht)*P],fr=t.geoProjection(he(pt)).rotate(nr),Tr=t.geoRotation(nr),Ir=fr.center;return delete fr.rotate,fr.center=function(ri){return arguments.length?Ir(Tr(ri)):Tr.invert(Ir())},fr.clipAngle(90)}function cs(he){var Se=o(he);function Ne(Ge,lt){var rt=t.geoGnomonicRaw(Ge,lt);return rt[0]*=Se,rt}return Ne.invert=function(Ge,lt){return t.geoGnomonicRaw.invert(Ge/Se,lt)},Ne}function sl(){return ll([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function ll(he,Se){return Js(cs,he,Se)}function il(he){if(!(he*=2))return t.geoAzimuthalEquidistantRaw;var Se=-he/2,Ne=-Se,Ge=he*he,lt=b(Ne),rt=.5/_(Ne);function pt(Ht,nr){var fr=U(o(nr)*o(Ht-Se)),Tr=U(o(nr)*o(Ht-Ne)),Ir=nr<0?-1:1;return fr*=fr,Tr*=Tr,[(fr-Tr)/(2*he),Ir*G(4*Ge*Tr-(Ge-fr+Tr)*(Ge-fr+Tr))/(2*he)]}return pt.invert=function(Ht,nr){var fr=nr*nr,Tr=o(G(fr+(ri=Ht+Se)*ri)),Ir=o(G(fr+(ri=Ht+Ne)*ri)),ri,li;return[a(li=Tr-Ir,ri=(Tr+Ir)*lt),(nr<0?-1:1)*U(G(ri*ri+li*li)*rt)]},pt}function zl(){return Ml([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function Ml(he,Se){return Js(il,he,Se)}function Rl(he,Se){if(n(Se)v&&--Ht>0);return[p(he)*(G(lt*lt+4)+lt)*E/4,A*pt]};function Nl(){return t.geoProjection(Vl).scale(127.16)}function le(he,Se,Ne,Ge,lt){function rt(pt,Ht){var nr=Ne*_(Ge*Ht),fr=G(1-nr*nr),Tr=G(2/(1+fr*o(pt*=lt)));return[he*fr*Tr*_(pt),Se*nr*Tr]}return rt.invert=function(pt,Ht){var nr=pt/he,fr=Ht/Se,Tr=G(nr*nr+fr*fr),Ir=2*F(Tr/2);return[a(pt*b(Ir),he*Tr)/lt,Tr&&F(Ht*_(Ir)/(Se*Ne*Tr))/Ge]},rt}function w(he,Se,Ne,Ge){var lt=E/3;he=f(he,v),Se=f(Se,v),he=c(he,A),Se=c(Se,E-v),Ne=f(Ne,0),Ne=c(Ne,100-v),Ge=f(Ge,v);var rt=Ne/100+1,pt=Ge/100,Ht=U(rt*o(lt))/lt,nr=_(he)/_(Ht*A),fr=Se/E,Tr=G(pt*_(he/2)/_(Se/2)),Ir=Tr/G(fr*nr*Ht),ri=1/(Tr*G(fr*nr*Ht));return le(Ir,ri,nr,Ht,fr)}function q(){var he=65*T,Se=60*T,Ne=20,Ge=200,lt=t.geoProjectionMutator(w),rt=lt(he,Se,Ne,Ge);return rt.poleline=function(pt){return arguments.length?lt(he=+pt*T,Se,Ne,Ge):he*P},rt.parallels=function(pt){return arguments.length?lt(he,Se=+pt*T,Ne,Ge):Se*P},rt.inflation=function(pt){return arguments.length?lt(he,Se,Ne=+pt,Ge):Ne},rt.ratio=function(pt){return arguments.length?lt(he,Se,Ne,Ge=+pt):Ge},rt.scale(163.775)}function Q(){return q().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var ee=4*E+3*G(3),ue=2*G(2*E*G(3)/ee),Ve=St(ue*G(3)/E,ue,ee/6);function tt(){return t.geoProjection(Ve).scale(176.84)}function mt(he,Se){return[he*G(1-3*Se*Se/(E*E)),Se]}mt.invert=function(he,Se){return[he/G(1-3*Se*Se/(E*E)),Se]};function Bt(){return t.geoProjection(mt).scale(152.63)}function ir(he,Se){var Ne=o(Se),Ge=o(he)*Ne,lt=1-Ge,rt=o(he=a(_(he)*Ne,-_(Se))),pt=_(he);return Ne=G(1-Ge*Ge),[pt*Ne-rt*lt,-rt*Ne-pt*lt]}ir.invert=function(he,Se){var Ne=(he*he+Se*Se)/-2,Ge=G(-Ne*(2+Ne)),lt=Se*Ne+he*Ge,rt=he*Ne-Se*Ge,pt=G(rt*rt+lt*lt);return[a(Ge*lt,pt*(1+Ne)),pt?-F(Ge*rt/pt):0]};function or(){return t.geoProjection(ir).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function kr(he,Se){var Ne=ze(he,Se);return[(Ne[0]+he/A)/2,(Ne[1]+Se)/2]}kr.invert=function(he,Se){var Ne=he,Ge=Se,lt=25;do{var rt=o(Ge),pt=_(Ge),Ht=_(2*Ge),nr=pt*pt,fr=rt*rt,Tr=_(Ne),Ir=o(Ne/2),ri=_(Ne/2),li=ri*ri,Ei=1-fr*Ir*Ir,hn=Ei?U(rt*Ir)*G(Zn=1/Ei):Zn=0,Zn,Yn=.5*(2*hn*rt*ri+Ne/A)-he,Ua=.5*(hn*pt+Ge)-Se,Fo=.5*Zn*(fr*li+hn*rt*Ir*nr)+.5/A,vl=Zn*(Tr*Ht/4-hn*pt*ri),Us=.125*Zn*(Ht*ri-hn*pt*fr*Tr),ml=.5*Zn*(nr*Ir+hn*li*rt)+.5,au=vl*Us-ml*Fo,Sl=(Ua*vl-Yn*ml)/au,Yl=(Yn*Us-Ua*Fo)/au;Ne-=Sl,Ge-=Yl}while((n(Sl)>v||n(Yl)>v)&&--lt>0);return[Ne,Ge]};function Vr(){return t.geoProjection(kr).scale(158.837)}e.geoNaturalEarth=t.geoNaturalEarth1,e.geoNaturalEarthRaw=t.geoNaturalEarth1Raw,e.geoAiry=be,e.geoAiryRaw=ae,e.geoAitoff=Ce,e.geoAitoffRaw=ze,e.geoArmadillo=te,e.geoArmadilloRaw=de,e.geoAugust=Ee,e.geoAugustRaw=ke,e.geoBaker=ye,e.geoBakerRaw=De,e.geoBerghaus=ce,e.geoBerghausRaw=qe,e.geoBertin1953=Ct,e.geoBertin1953Raw=Ke,e.geoBoggs=Tt,e.geoBoggsRaw=ot,e.geoBonne=et,e.geoBonneRaw=it,e.geoBottomley=Yt,e.geoBottomleyRaw=It,e.geoBromley=_r,e.geoBromleyRaw=cr,e.geoChamberlin=Fe,e.geoChamberlinRaw=xe,e.geoChamberlinAfrica=Ie,e.geoCollignon=ge,e.geoCollignonRaw=ft,e.geoCraig=pe,e.geoCraigRaw=fe,e.geoCraster=zt,e.geoCrasterRaw=Pt,e.geoCylindricalEqualArea=Gr,e.geoCylindricalEqualAreaRaw=rr,e.geoCylindricalStereographic=Er,e.geoCylindricalStereographicRaw=Br,e.geoEckert1=pi,e.geoEckert1Raw=Rr,e.geoEckert2=ni,e.geoEckert2Raw=Di,e.geoEckert3=Qi,e.geoEckert3Raw=$i,e.geoEckert4=Ai,e.geoEckert4Raw=si,e.geoEckert5=Rt,e.geoEckert5Raw=Ni,e.geoEckert6=Gt,e.geoEckert6Raw=yt,e.geoEisenlohr=Lr,e.geoEisenlohrRaw=xr,e.geoFahey=Hr,e.geoFaheyRaw=Or,e.geoFoucaut=gi,e.geoFoucautRaw=jr,e.geoFoucautSinusoidal=Vi,e.geoFoucautSinusoidalRaw=ki,e.geoGilbert=Yr,e.geoGingery=nn,e.geoGingeryRaw=oi,e.geoGinzburg4=xn,e.geoGinzburg4Raw=Ii,e.geoGinzburg5=Xr,e.geoGinzburg5Raw=bi,e.geoGinzburg6=tr,e.geoGinzburg6Raw=ct,e.geoGinzburg8=gr,e.geoGinzburg8Raw=pr,e.geoGinzburg9=Ti,e.geoGinzburg9Raw=Zr,e.geoGringorten=Mn,e.geoGringortenRaw=ii,e.geoGuyou=Ia,e.geoGuyouRaw=ka,e.geoHammer=gt,e.geoHammerRaw=Je,e.geoHammerRetroazimuthal=kn,e.geoHammerRetroazimuthalRaw=Yo,e.geoHealpix=wa,e.geoHealpixRaw=ls,e.geoHill=Co,e.geoHillRaw=ws,e.geoHomolosine=Sn,e.geoHomolosineRaw=Ha,e.geoHufnagel=Ba,e.geoHufnagelRaw=ao,e.geoHyperelliptical=Sa,e.geoHyperellipticalRaw=Hi,e.geoInterrupt=la,e.geoInterruptedBoggs=Ts,e.geoInterruptedHomolosine=co,e.geoInterruptedMollweide=No,e.geoInterruptedMollweideHemispheres=Go,e.geoInterruptedSinuMollweide=qs,e.geoInterruptedSinusoidal=Oa,e.geoKavrayskiy7=Vs,e.geoKavrayskiy7Raw=ha,e.geoLagrange=_n,e.geoLagrangeRaw=Ya,e.geoLarrivee=Ra,e.geoLarriveeRaw=wo,e.geoLaskowski=un,e.geoLaskowskiRaw=Xn,e.geoLittrow=Ka,e.geoLittrowRaw=$n,e.geoLoximuthal=Eo,e.geoLoximuthalRaw=qn,e.geoMiller=lo,e.geoMillerRaw=Ja,e.geoModifiedStereographic=_a,e.geoModifiedStereographicRaw=eo,e.geoModifiedStereographicAlaska=to,e.geoModifiedStereographicGs48=yo,e.geoModifiedStereographicGs50=Jo,e.geoModifiedStereographicMiller=To,e.geoModifiedStereographicLee=Dn,e.geoMollweide=Zt,e.geoMollweideRaw=Dt,e.geoMtFlatPolarParabolic=As,e.geoMtFlatPolarParabolicRaw=Es,e.geoMtFlatPolarQuartic=Wa,e.geoMtFlatPolarQuarticRaw=Ho,e.geoMtFlatPolarSinusoidal=ts,e.geoMtFlatPolarSinusoidalRaw=Ao,e.geoNaturalEarth2=qa,e.geoNaturalEarth2Raw=Wo,e.geoNellHammer=Bo,e.geoNellHammerRaw=ln,e.geoInterruptedQuarticAuthalic=oo,e.geoNicolosi=ea,e.geoNicolosiRaw=za,e.geoPatterson=Vo,e.geoPattersonRaw=gs,e.geoPolyconic=Lo,e.geoPolyconicRaw=Do,e.geoPolyhedral=Gs,e.geoPolyhedralButterfly=po,e.geoPolyhedralCollignon=qo,e.geoPolyhedralWaterman=zo,e.geoProject=Hs,e.geoGringortenQuincuncial=At,e.geoPeirceQuincuncial=Vt,e.geoPierceQuincuncial=Vt,e.geoQuantize=wr,e.geoQuincuncial=Bs,e.geoRectangularPolyconic=Fr,e.geoRectangularPolyconicRaw=mr,e.geoRobinson=Ci,e.geoRobinsonRaw=Si,e.geoSatellite=Pi,e.geoSatelliteRaw=Fn,e.geoSinuMollweide=Ps,e.geoSinuMollweideRaw=gn,e.geoSinusoidal=He,e.geoSinusoidalRaw=Ye,e.geoStitch=Ul,e.geoTimes=ns,e.geoTimesRaw=ja,e.geoTwoPointAzimuthal=ll,e.geoTwoPointAzimuthalRaw=cs,e.geoTwoPointAzimuthalUsa=sl,e.geoTwoPointEquidistant=Ml,e.geoTwoPointEquidistantRaw=il,e.geoTwoPointEquidistantUsa=zl,e.geoVanDerGrinten=Tl,e.geoVanDerGrintenRaw=Rl,e.geoVanDerGrinten2=ms,e.geoVanDerGrinten2Raw=Ll,e.geoVanDerGrinten3=Xl,e.geoVanDerGrinten3Raw=Os,e.geoVanDerGrinten4=Nl,e.geoVanDerGrinten4Raw=Vl,e.geoWagner=q,e.geoWagner7=Q,e.geoWagnerRaw=w,e.geoWagner4=tt,e.geoWagner4Raw=Ve,e.geoWagner6=Bt,e.geoWagner6Raw=mt,e.geoWiechel=or,e.geoWiechelRaw=ir,e.geoWinkel3=Vr,e.geoWinkel3Raw=kr,Object.defineProperty(e,"__esModule",{value:!0})})});var X6e=Ae((Wgr,j6e)=>{"use strict";var od=Jl(),GZ=ei(),hBt=$l(),JA=Math.PI/180,W2=180/Math.PI,WZ={cursor:"pointer"},jZ={cursor:"auto"};function dBt(e,t){var r=e.projection,n;return t._isScoped?n=pBt:t._isClipped?n=mBt:n=vBt,n(e,r)}j6e.exports=dBt;function XZ(e,t){return od.behavior.zoom().translate(t.translate()).scale(t.scale())}function ZZ(e,t,r){var n=e.id,i=e.graphDiv,a=i.layout,o=a[n],s=i._fullLayout,u=s[n],l={},f={};function c(h,d){l[n+"."+h]=GZ.nestedProperty(o,h).get(),hBt.call("_storeDirectGUIEdit",a,s._preGUI,l);var p=GZ.nestedProperty(u,h);p.get()!==d&&(p.set(d),GZ.nestedProperty(o,h).set(d),f[n+"."+h]=d)}r(c),c("projection.scale",t.scale()/e.fitScale),c("fitbounds",!1),i.emit("plotly_relayout",f)}function pBt(e,t){var r=XZ(e,t);function n(){od.select(this).style(WZ)}function i(){t.scale(od.event.scale).translate(od.event.translate),e.render(!0);var s=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":s[0],"geo.center.lat":s[1]})}function a(s){var u=t.invert(e.midPt);s("center.lon",u[0]),s("center.lat",u[1])}function o(){od.select(this).style(jZ),ZZ(e,t,a)}return r.on("zoomstart",n).on("zoom",i).on("zoomend",o),r}function vBt(e,t){var r=XZ(e,t),n=2,i,a,o,s,u,l,f,c,h;function d(E){return t.invert(E)}function p(E){var A=d(E);if(!A)return!0;var L=t(A);return Math.abs(L[0]-E[0])>n||Math.abs(L[1]-E[1])>n}function _(){od.select(this).style(WZ),i=od.mouse(this),a=t.rotate(),o=t.translate(),s=a,u=d(i)}function b(){if(l=od.mouse(this),p(i)){r.scale(t.scale()),r.translate(t.translate());return}t.scale(od.event.scale),t.translate([o[0],od.event.translate[1]]),u?d(l)&&(c=d(l),f=[s[0]+(c[0]-u[0]),a[1],a[2]],t.rotate(f),s=f):(i=l,u=d(i)),h=!0,e.render(!0);var E=t.rotate(),A=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":A[0],"geo.center.lat":A[1],"geo.projection.rotation.lon":-E[0]})}function v(){od.select(this).style(jZ),h&&ZZ(e,t,k)}function k(E){var A=t.rotate(),L=t.invert(e.midPt);E("projection.rotation.lon",-A[0]),E("center.lon",L[0]),E("center.lat",L[1])}return r.on("zoomstart",_).on("zoom",b).on("zoomend",v),r}function mBt(e,t){var r={r:t.rotate(),k:t.scale()},n=XZ(e,t),i=ABt(n,"zoomstart","zoom","zoomend"),a=0,o=n.on,s;n.on("zoomstart",function(){od.select(this).style(WZ);var h=od.mouse(this),d=t.rotate(),p=d,_=t.translate(),b=yBt(d);s=PF(t,h),o.call(n,"zoom",function(){var v=od.mouse(this);if(t.scale(r.k=od.event.scale),!s)h=v,s=PF(t,h);else if(PF(t,v)){t.rotate(d).translate(_);var k=PF(t,v),E=_Bt(s,k),A=bBt(gBt(b,E)),L=r.r=xBt(A,s,p);(!isFinite(L[0])||!isFinite(L[1])||!isFinite(L[2]))&&(L=p),t.rotate(L),p=L}l(i.of(this,arguments))}),u(i.of(this,arguments))}).on("zoomend",function(){od.select(this).style(jZ),o.call(n,"zoom",null),f(i.of(this,arguments)),ZZ(e,t,c)}).on("zoom.redraw",function(){e.render(!0);var h=t.rotate();e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.projection.rotation.lon":-h[0],"geo.projection.rotation.lat":-h[1]})});function u(h){a++||h({type:"zoomstart"})}function l(h){h({type:"zoom"})}function f(h){--a||h({type:"zoomend"})}function c(h){var d=t.rotate();h("projection.rotation.lon",-d[0]),h("projection.rotation.lat",-d[1])}return od.rebind(n,i,"on")}function PF(e,t){var r=e.invert(t);return r&&isFinite(r[0])&&isFinite(r[1])&&wBt(r)}function yBt(e){var t=.5*e[0]*JA,r=.5*e[1]*JA,n=.5*e[2]*JA,i=Math.sin(t),a=Math.cos(t),o=Math.sin(r),s=Math.cos(r),u=Math.sin(n),l=Math.cos(n);return[a*s*l+i*o*u,i*s*l-a*o*u,a*o*l+i*s*u,a*s*u-i*o*l]}function gBt(e,t){var r=e[0],n=e[1],i=e[2],a=e[3],o=t[0],s=t[1],u=t[2],l=t[3];return[r*o-n*s-i*u-a*l,r*s+n*o+i*l-a*u,r*u-n*l+i*o+a*s,r*l+n*u-i*s+a*o]}function _Bt(e,t){if(!(!e||!t)){var r=TBt(e,t),n=Math.sqrt(W6e(r,r)),i=.5*Math.acos(Math.max(-1,Math.min(1,W6e(e,t)))),a=Math.sin(i)/n;return n&&[Math.cos(i),r[2]*a,-r[1]*a,r[0]*a]}}function xBt(e,t,r){var n=HZ(t,2,e[0]);n=HZ(n,1,e[1]),n=HZ(n,0,e[2]-r[2]);var i=t[0],a=t[1],o=t[2],s=n[0],u=n[1],l=n[2],f=Math.atan2(a,i)*W2,c=Math.sqrt(i*i+a*a),h,d;Math.abs(u)>c?(d=(u>0?90:-90)-f,h=0):(d=Math.asin(u/c)*W2-f,h=Math.sqrt(c*c-u*u));var p=180-d-2*f,_=(Math.atan2(l,s)-Math.atan2(o,h))*W2,b=(Math.atan2(l,s)-Math.atan2(o,-h))*W2,v=G6e(r[0],r[1],d,_),k=G6e(r[0],r[1],p,b);return v<=k?[d,_,r[2]]:[p,b,r[2]]}function G6e(e,t,r,n){var i=H6e(r-e),a=H6e(n-t);return Math.sqrt(i*i+a*a)}function H6e(e){return(e%360+540)%360-180}function HZ(e,t,r){var n=r*JA,i=e.slice(),a=t===0?1:0,o=t===2?1:2,s=Math.cos(n),u=Math.sin(n);return i[a]=e[a]*s-e[o]*u,i[o]=e[o]*s+e[a]*u,i}function bBt(e){return[Math.atan2(2*(e[0]*e[1]+e[2]*e[3]),1-2*(e[1]*e[1]+e[2]*e[2]))*W2,Math.asin(Math.max(-1,Math.min(1,2*(e[0]*e[2]-e[3]*e[1]))))*W2,Math.atan2(2*(e[0]*e[3]+e[1]*e[2]),1-2*(e[2]*e[2]+e[3]*e[3]))*W2]}function wBt(e){var t=e[0]*JA,r=e[1]*JA,n=Math.cos(r);return[n*Math.cos(t),n*Math.sin(t),Math.sin(r)]}function W6e(e,t){for(var r=0,n=0,i=e.length;n{"use strict";var t1=Jl(),JZ=VZ(),SBt=JZ.geoPath,MBt=JZ.geoDistance,EBt=V6e(),kBt=$l(),ok=ei(),CBt=ok.strTranslate,zF=jl(),ak=Mu(),Z6e=Xc(),LBt=Cc(),KZ=wu(),Y6e=Tm().getAutoRange,YZ=xp(),PBt=oh().prepSelect,zBt=oh().clearOutline,IBt=oh().selectOnClick,RBt=X6e(),cv=tk(),DBt=ix(),J6e=mF(),FBt=EZ().feature;function $6e(e){this.id=e.id,this.graphDiv=e.graphDiv,this.container=e.container,this.topojsonURL=e.topojsonURL,this.isStatic=e.staticPlot,this.topojsonName=null,this.topojson=null,this.projection=null,this.scope=null,this.viewInitial=null,this.fitScale=null,this.bounds=null,this.midPt=null,this.hasChoropleth=!1,this.traceHash={},this.layers={},this.basePaths={},this.dataPaths={},this.dataPoints={},this.clipDef=null,this.clipRect=null,this.bgRect=null,this.makeFramework()}var $m=$6e.prototype;Q6e.exports=function(t){return new $6e(t)};$m.plot=function(e,t,r,n){var i=this;if(n)return i.update(e,t,!0);i._geoCalcData=e,i._fullLayout=t;var a=t[this.id],o=[],s=!1;for(var u in cv.layerNameToAdjective)if(u!=="frame"&&a["show"+u]){s=!0;break}for(var l=!1,f=0;f0&&o._module.calcGeoJSON(a,t)}if(!r){var s=this.updateProjection(e,t);if(s)return;(!this.viewInitial||this.scope!==n.scope)&&this.saveViewInitial(n)}this.scope=n.scope,this.updateBaseLayers(t,n),this.updateDims(t,n),this.updateFx(t,n),LBt.generalUpdatePerTraceModule(this.graphDiv,this,e,n);var u=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=u.selectAll(".point"),this.dataPoints.text=u.selectAll("text"),this.dataPaths.line=u.selectAll(".js-line");var l=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=l.selectAll("path"),this._render()};$m.updateProjection=function(e,t){var r=this.graphDiv,n=t[this.id],i=t._size,a=n.domain,o=n.projection,s=n.lonaxis,u=n.lataxis,l=s._ax,f=u._ax,c=this.projection=BBt(n),h=[[i.l+i.w*a.x[0],i.t+i.h*(1-a.y[1])],[i.l+i.w*a.x[1],i.t+i.h*(1-a.y[0])]],d=n.center||{},p=o.rotation||{},_=s.range||[],b=u.range||[];if(n.fitbounds){l._length=h[1][0]-h[0][0],f._length=h[1][1]-h[0][1],l.range=Y6e(r,l),f.range=Y6e(r,f);var v=(l.range[0]+l.range[1])/2,k=(f.range[0]+f.range[1])/2;if(n._isScoped)d={lon:v,lat:k};else if(n._isClipped){d={lon:v,lat:k},p={lon:v,lat:k,roll:p.roll};var E=o.type,A=cv.lonaxisSpan[E]/2||180,L=cv.lataxisSpan[E]/2||90;_=[v-A,v+A],b=[k-L,k+L]}else d={lon:v,lat:k},p={lon:v,lat:p.lat,roll:p.roll}}c.center([d.lon-p.lon,d.lat-p.lat]).rotate([-p.lon,-p.lat,p.roll]).parallels(o.parallels);var x=K6e(_,b);c.fitExtent(h,x);var C=this.bounds=c.getBounds(x),M=this.fitScale=c.scale(),m=c.translate();if(n.fitbounds){var P=c.getBounds(K6e(l.range,f.range)),T=Math.min((C[1][0]-C[0][0])/(P[1][0]-P[0][0]),(C[1][1]-C[0][1])/(P[1][1]-P[0][1]));isFinite(T)?c.scale(T*M):ok.warn("Something went wrong during"+this.id+"fitbounds computations.")}else c.scale(o.scale*M);var B=this.midPt=[(C[0][0]+C[1][0])/2,(C[0][1]+C[1][1])/2];if(c.translate([m[0]+(B[0]-m[0]),m[1]+(B[1]-m[1])]).clipExtent(C),n._isAlbersUsa){var F=c([d.lon,d.lat]),U=c.translate();c.translate([U[0]-(F[0]-U[0]),U[1]-(F[1]-U[1])])}};$m.updateBaseLayers=function(e,t){var r=this,n=r.topojson,i=r.layers,a=r.basePaths;function o(h){return h==="lonaxis"||h==="lataxis"}function s(h){return!!cv.lineLayers[h]}function u(h){return!!cv.fillLayers[h]}var l=this.hasChoropleth?cv.layersForChoropleth:cv.layers,f=l.filter(function(h){return s(h)||u(h)?t["show"+h]:o(h)?t[h].showgrid:!0}),c=r.framework.selectAll(".layer").data(f,String);c.exit().each(function(h){delete i[h],delete a[h],t1.select(this).remove()}),c.enter().append("g").attr("class",function(h){return"layer "+h}).each(function(h){var d=i[h]=t1.select(this);h==="bg"?r.bgRect=d.append("rect").style("pointer-events","all"):o(h)?a[h]=d.append("path").style("fill","none"):h==="backplot"?d.append("g").classed("choroplethlayer",!0):h==="frontplot"?d.append("g").classed("scatterlayer",!0):s(h)?a[h]=d.append("path").style("fill","none").style("stroke-miterlimit",2):u(h)&&(a[h]=d.append("path").style("stroke","none"))}),c.order(),c.each(function(h){var d=a[h],p=cv.layerNameToAdjective[h];h==="frame"?d.datum(cv.sphereSVG):s(h)||u(h)?d.datum(FBt(n,n.objects[h])):o(h)&&d.datum(OBt(h,t,e)).call(zF.stroke,t[h].gridcolor).call(ak.dashLine,t[h].griddash,t[h].gridwidth),s(h)?d.call(zF.stroke,t[p+"color"]).call(ak.dashLine,"",t[p+"width"]):u(h)&&d.call(zF.fill,t[p+"color"])})};$m.updateDims=function(e,t){var r=this.bounds,n=(t.framewidth||0)/2,i=r[0][0]-n,a=r[0][1]-n,o=r[1][0]-i+n,s=r[1][1]-a+n;ak.setRect(this.clipRect,i,a,o,s),this.bgRect.call(ak.setRect,i,a,o,s).call(zF.fill,t.bgcolor),this.xaxis._offset=i,this.xaxis._length=o,this.yaxis._offset=a,this.yaxis._length=s};$m.updateFx=function(e,t){var r=this,n=r.graphDiv,i=r.bgRect,a=e.dragmode,o=e.clickmode;if(r.isStatic)return;function s(){var c=r.viewInitial,h={};for(var d in c)h[r.id+"."+d]=c[d];kBt.call("_guiRelayout",n,h),n.emit("plotly_doubleclick",null)}function u(c){return r.projection.invert([c[0]+r.xaxis._offset,c[1]+r.yaxis._offset])}var l=function(c,h){if(h.isRect){var d=c.range={};d[r.id]=[u([h.xmin,h.ymin]),u([h.xmax,h.ymax])]}else{var p=c.lassoPoints={};p[r.id]=h.map(u)}},f={element:r.bgRect.node(),gd:n,plotinfo:{id:r.id,xaxis:r.xaxis,yaxis:r.yaxis,fillRangeItems:l},xaxes:[r.xaxis],yaxes:[r.yaxis],subplot:r.id,clickFn:function(c){c===2&&zBt(n)}};a==="pan"?(i.node().onmousedown=null,i.call(RBt(r,t)),i.on("dblclick.zoom",s),n._context._scrollZoom.geo||i.on("wheel.zoom",null)):(a==="select"||a==="lasso")&&(i.on(".zoom",null),f.prepFn=function(c,h,d){PBt(c,h,d,f,a)},YZ.init(f)),i.on("mousemove",function(){var c=r.projection.invert(ok.getPositionFromD3Event());if(!c)return YZ.unhover(n,t1.event);r.xaxis.p2c=function(){return c[0]},r.yaxis.p2c=function(){return c[1]},Z6e.hover(n,t1.event,r.id)}),i.on("mouseout",function(){n._dragging||YZ.unhover(n,t1.event)}),i.on("click",function(){a!=="select"&&a!=="lasso"&&(o.indexOf("select")>-1&&IBt(t1.event,n,[r.xaxis],[r.yaxis],r.id,f),o.indexOf("event")>-1&&Z6e.click(n,t1.event))})};$m.makeFramework=function(){var e=this,t=e.graphDiv,r=t._fullLayout,n="clip"+r._uid+e.id;e.clipDef=r._clips.append("clipPath").attr("id",n),e.clipRect=e.clipDef.append("rect"),e.framework=t1.select(e.container).append("g").attr("class","geo "+e.id).call(ak.setClipUrl,n,t),e.project=function(i){var a=e.projection(i);return a?[a[0]-e.xaxis._offset,a[1]-e.yaxis._offset]:[null,null]},e.xaxis={_id:"x",c2p:function(i){return e.project(i)[0]}},e.yaxis={_id:"y",c2p:function(i){return e.project(i)[1]}},e.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},KZ.setConvert(e.mockAxis,r)};$m.saveViewInitial=function(e){var t=e.center||{},r=e.projection,n=r.rotation||{};this.viewInitial={fitbounds:e.fitbounds,"projection.scale":r.scale};var i;e._isScoped?i={"center.lon":t.lon,"center.lat":t.lat}:e._isClipped?i={"projection.rotation.lon":n.lon,"projection.rotation.lat":n.lat}:i={"center.lon":t.lon,"center.lat":t.lat,"projection.rotation.lon":n.lon},ok.extendFlat(this.viewInitial,i)};$m.render=function(e){this._hasMarkerAngles&&e?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()};$m._render=function(){var e=this.projection,t=e.getPath(),r;function n(a){var o=e(a.lonlat);return o?CBt(o[0],o[1]):null}function i(a){return e.isLonLatOverEdges(a.lonlat)?"none":null}for(r in this.basePaths)this.basePaths[r].attr("d",t);for(r in this.dataPaths)this.dataPaths[r].attr("d",function(a){return t(a.geojson)});for(r in this.dataPoints)this.dataPoints[r].attr("display",i).attr("transform",n)};function BBt(e){var t=e.projection,r=t.type,n=cv.projNames[r];n="geo"+ok.titleCase(n);for(var i=JZ[n]||EBt[n],a=i(),o=e._isSatellite?Math.acos(1/t.distance)*180/Math.PI:e._isClipped?cv.lonaxisSpan[r]/2:null,s=["center","rotate","parallels","clipExtent"],u=function(c){return c?a:[]},l=0;lp}else return!1},a.getPath=function(){return SBt().projection(a)},a.getBounds=function(c){return a.getPath().bounds(c)},a.precision(cv.precision),e._isSatellite&&a.tilt(t.tilt).distance(t.distance),o&&a.clipAngle(o-cv.clipPad),a}function OBt(e,t,r){var n=1e-6,i=2.5,a=t[e],o=cv.scopeDefaults[t.scope],s,u,l;e==="lonaxis"?(s=o.lonaxisRange,u=o.lataxisRange,l=function(k,E){return[k,E]}):e==="lataxis"&&(s=o.lataxisRange,u=o.lonaxisRange,l=function(k,E){return[E,k]});var f={type:"linear",range:[s[0],s[1]-n],tick0:a.tick0,dtick:a.dtick};KZ.setConvert(f,r);var c=KZ.calcTicks(f);!t.isScoped&&e==="lonaxis"&&c.pop();for(var h=c.length,d=new Array(h),p=0;p0&&i<0&&(i+=360);var s=(i-n)/4;return{type:"Polygon",coordinates:[[[n,a],[n,o],[n+s,o],[n+2*s,o],[n+3*s,o],[i,o],[i,a],[i-s,a],[i-2*s,a],[i-3*s,a],[n,a]]]}}});var $Z=Ae((Xgr,iFe)=>{"use strict";var QA=Fh(),qBt=zc().attributes,NBt=Id().dash,$A=tk(),UBt=Sc().overrideAll,tFe=Z1(),rFe={range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},showgrid:{valType:"boolean",dflt:!1},tick0:{valType:"number",dflt:0},dtick:{valType:"number"},gridcolor:{valType:"color",dflt:QA.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:NBt},VBt=iFe.exports=UBt({domain:qBt({name:"geo"},{}),fitbounds:{valType:"enumerated",values:[!1,"locations","geojson"],dflt:!1,editType:"plot"},resolution:{valType:"enumerated",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:"enumerated",values:tFe($A.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:tFe($A.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:QA.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:$A.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:$A.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:$A.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:$A.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:QA.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:QA.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:QA.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:QA.background},lonaxis:rFe,lataxis:rFe},"plot","from-root");VBt.uirevision={valType:"any",editType:"none"}});var oFe=Ae((Zgr,aFe)=>{"use strict";var IF=ei(),GBt=k_(),HBt=Rd().getSubplotData,RF=tk(),WBt=$Z(),nFe=RF.axesNames;aFe.exports=function(t,r,n){GBt(t,r,n,{type:"geo",attributes:WBt,handleDefaults:jBt,fullData:n,partition:"y"})};function jBt(e,t,r,n){var i=HBt(n.fullData,"geo",n.id),a=i.map(function(ae){return ae.index}),o=r("resolution"),s=r("scope"),u=RF.scopeDefaults[s],l=r("projection.type",u.projType),f=t._isAlbersUsa=l==="albers usa";f&&(s=t.scope="usa");var c=t._isScoped=s!=="world",h=t._isSatellite=l==="satellite",d=t._isConic=l.indexOf("conic")!==-1||l==="albers",p=t._isClipped=!!RF.lonaxisSpan[l];if(e.visible===!1){var _=IF.extendDeep({},t._template);_.showcoastlines=!1,_.showcountries=!1,_.showframe=!1,_.showlakes=!1,_.showland=!1,_.showocean=!1,_.showrivers=!1,_.showsubunits=!1,_.lonaxis&&(_.lonaxis.showgrid=!1),_.lataxis&&(_.lataxis.showgrid=!1),t._template=_}for(var b=r("visible"),v,k=0;k0&&F<0&&(F+=360);var U=(B+F)/2,G;if(!f){var j=c?u.projRotate:[U,0,0];G=r("projection.rotation.lon",j[0]),r("projection.rotation.lat",j[1]),r("projection.rotation.roll",j[2]),v=r("showcoastlines",!c&&b),v&&(r("coastlinecolor"),r("coastlinewidth")),v=r("showocean",b?void 0:!1),v&&r("oceancolor")}var H,N;if(f?(H=-96.6,N=38.7):(H=c?U:G,N=(T[0]+T[1])/2),r("center.lon",H),r("center.lat",N),h&&(r("projection.tilt"),r("projection.distance")),d){var W=u.projParallels||[0,60];r("projection.parallels",W)}r("projection.scale"),v=r("showland",b?void 0:!1),v&&r("landcolor"),v=r("showlakes",b?void 0:!1),v&&r("lakecolor"),v=r("showrivers",b?void 0:!1),v&&(r("rivercolor"),r("riverwidth")),v=r("showcountries",c&&s!=="usa"&&b),v&&(r("countrycolor"),r("countrywidth")),(s==="usa"||s==="north america"&&o===50)&&(r("showsubunits",b),r("subunitcolor"),r("subunitwidth")),c||(v=r("showframe",b),v&&(r("framecolor"),r("framewidth"))),r("bgcolor");var re=r("fitbounds");re&&(delete t.projection.scale,c?(delete t.center.lon,delete t.center.lat):p?(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon,delete t.projection.rotation.lat,delete t.lonaxis.range,delete t.lataxis.range):(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon))}});var QZ=Ae((Ygr,uFe)=>{"use strict";var XBt=Rd().getSubplotCalcData,ZBt=ei().counterRegex,YBt=eFe(),Xy="geo",sFe=ZBt(Xy),lFe={};lFe[Xy]={valType:"subplotid",dflt:Xy,editType:"calc"};function KBt(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[Xy],i=0;i{"use strict";fFe.exports={attributes:H2(),supplyDefaults:WDe(),colorbar:ep(),formatLabels:ZDe(),calc:pF(),calcGeoJSON:UZ().calcGeoJSON,plot:UZ().plot,style:BZ(),styleOnSelect:ov().styleOnSelect,hoverPoints:I6e(),eventData:D6e(),selectPoints:O6e(),moduleType:"trace",name:"scattergeo",basePlotModule:QZ(),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}});var dFe=Ae((Jgr,hFe)=>{"use strict";hFe.exports=cFe()});var eS=Ae(($gr,mFe)=>{"use strict";var{hovertemplateAttrs:QBt,templatefallbackAttrs:eOt}=Ff(),ax=H2(),tOt=nc(),pFe=Gf(),rOt=Fh().defaultLine,nx=Su().extendFlat,vFe=ax.marker.line;mFe.exports=nx({locations:{valType:"data_array",editType:"calc"},locationmode:ax.locationmode,z:{valType:"data_array",editType:"calc"},geojson:nx({},ax.geojson,{}),featureidkey:ax.featureidkey,text:nx({},ax.text,{}),hovertext:nx({},ax.hovertext,{}),marker:{line:{color:nx({},vFe.color,{dflt:rOt}),width:nx({},vFe.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:ax.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:ax.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:nx({},pFe.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:QBt(),hovertemplatefallback:eOt(),showlegend:nx({},pFe.showlegend,{dflt:!1})},tOt("",{cLetter:"z",editTypeOverride:"calc"}))});var gFe=Ae((Qgr,yFe)=>{"use strict";var sk=ei(),iOt=rd(),nOt=eS(),aOt=["The library used by the *country names* `locationmode` option is changing in the next major version.","Some country names in existing plots may not work in the new version.","To ensure consistent behavior, consider setting `locationmode` to *ISO-3*."].join(" ");yFe.exports=function(t,r,n,i){function a(h,d){return sk.coerce(t,r,nOt,h,d)}var o=a("locations"),s=a("z");if(!(o&&o.length&&sk.isArrayOrTypedArray(s)&&s.length)){r.visible=!1;return}r._length=Math.min(o.length,s.length);var u=a("geojson"),l;(typeof u=="string"&&u!==""||sk.isPlainObject(u))&&(l="geojson-id");var f=a("locationmode",l);f==="country names"&&sk.warn(aOt),f==="geojson-id"&&a("featureidkey"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var c=a("marker.line.width");c&&a("marker.line.color"),a("marker.opacity"),iOt(t,r,i,a,{prefix:"",cLetter:"z"}),sk.coerceSelectionMarkerOpacity(r,a)}});var DF=Ae((e1r,bFe)=>{"use strict";var _Fe=ku(),oOt=rf().BADNUM,sOt=gp(),lOt=ky(),uOt=F0();function xFe(e){return e&&typeof e=="string"}bFe.exports=function(t,r){var n=r._length,i=new Array(n),a;r.geojson?a=function(f){return xFe(f)||_Fe(f)}:a=xFe;for(var o=0;o{"use strict";var fOt=Jl(),cOt=jl(),eY=Mu(),hOt=_c();function dOt(e,t){t&&wFe(e,t)}function wFe(e,t){var r=t[0].trace,n=t[0].node3,i=n.selectAll(".choroplethlocation"),a=r.marker||{},o=a.line||{},s=hOt.makeColorScaleFuncFromTrace(r);i.each(function(u){fOt.select(this).attr("fill",s(u.z)).call(cOt.stroke,u.mlc||o.color).call(eY.dashLine,"",u.mlw||o.width||0).style("opacity",a.opacity)}),eY.selectedPointStyle(i,r)}function pOt(e,t){var r=t[0].node3,n=t[0].trace;n.selectedpoints?eY.selectedPointStyle(r.selectAll(".choroplethlocation"),n):wFe(e,t)}TFe.exports={style:dOt,styleOnSelect:pOt}});var tY=Ae((r1r,MFe)=>{"use strict";var vOt=Jl(),AFe=ei(),tS=ix(),mOt=mF().getTopojsonFeatures,SFe=Tm().findExtremes,yOt=FF().style;function gOt(e,t,r){var n=t.layers.backplot.select(".choroplethlayer");AFe.makeTraceGroups(n,r,"trace choropleth").each(function(i){var a=vOt.select(this),o=a.selectAll("path.choroplethlocation").data(AFe.identity);o.enter().append("path").classed("choroplethlocation",!0),o.exit().remove(),yOt(e,i)})}function _Ot(e,t){for(var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r.locationmode,o=r._length,s=a==="geojson-id"?tS.extractTraceFeature(e):mOt(r,i.topojson),u=[],l=[],f=0;f{"use strict";var xOt=wu(),bOt=eS(),wOt=ei().fillText;EFe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.subplot,s,u,l,f,c=[r,n],h=[r+360,n];for(u=0;u")}}});var OF=Ae((n1r,kFe)=>{"use strict";kFe.exports=function(t,r,n,i,a){t.location=r.location,t.z=r.z;var o=i[a];return o.fIn&&o.fIn.properties&&(t.properties=o.fIn.properties),t.ct=o.ct,t}});var qF=Ae((a1r,CFe)=>{"use strict";CFe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,u,l,f,c;if(r===!1)for(s=0;s{"use strict";LFe.exports={attributes:eS(),supplyDefaults:gFe(),colorbar:S_(),calc:DF(),calcGeoJSON:tY().calcGeoJSON,plot:tY().plot,style:FF().style,styleOnSelect:FF().styleOnSelect,hoverPoints:BF(),eventData:OF(),selectPoints:qF(),moduleType:"trace",name:"choropleth",basePlotModule:QZ(),categories:["geo","noOpacity","showLegend"],meta:{}}});var IFe=Ae((s1r,zFe)=>{"use strict";zFe.exports=PFe()});var NF=Ae((l1r,DFe)=>{"use strict";var AOt=$l(),s0=ei(),SOt=uT();function MOt(e,t,r,n){var i=e.cd,a=i[0].t,o=i[0].trace,s=e.xa,u=e.ya,l=a.x,f=a.y,c=s.c2p(t),h=u.c2p(r),d=e.distance,p;if(a.tree){var _=s.p2c(c-d),b=s.p2c(c+d),v=u.p2c(h-d),k=u.p2c(h+d);n==="x"?p=a.tree.range(Math.min(_,b),Math.min(u._rl[0],u._rl[1]),Math.max(_,b),Math.max(u._rl[0],u._rl[1])):p=a.tree.range(Math.min(_,b),Math.min(v,k),Math.max(_,b),Math.max(v,k))}else p=a.ids;var E,A,L,x,C,M,m,P,T,B=d;if(n==="x"){var F=!!o.xperiodalignment,U=!!o.yperiodalignment;for(C=0;C=Math.min(G,j)&&c<=Math.max(G,j)?0:1/0}if(M=Math.min(H,N)&&h<=Math.max(H,N)?0:1/0}T=Math.sqrt(M*M+m*m),A=p[C]}}}else for(C=p.length-1;C>-1;C--)E=p[C],L=l[E],x=f[E],M=s.c2p(L)-c,m=u.c2p(x)-h,P=Math.sqrt(M*M+m*m),P{"use strict";var FFe=20;BFe.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:FFe,SYMBOL_STROKE:FFe/20,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}});var lk=Ae((f1r,UFe)=>{"use strict";var EOt=Gf(),kOt=gc(),COt=km(),Kc=Zc(),OFe=jc().axisHoverFormat,qFe=nc(),LOt=Z1(),rY=Su().extendFlat,POt=Sc().overrideAll,zOt=ox().DASHES,NFe=Kc.line,r1=Kc.marker,IOt=r1.line,sx=UFe.exports=POt({x:Kc.x,x0:Kc.x0,dx:Kc.dx,y:Kc.y,y0:Kc.y0,dy:Kc.dy,xperiod:Kc.xperiod,yperiod:Kc.yperiod,xperiod0:Kc.xperiod0,yperiod0:Kc.yperiod0,xperiodalignment:Kc.xperiodalignment,yperiodalignment:Kc.yperiodalignment,xhoverformat:OFe("x"),yhoverformat:OFe("y"),text:Kc.text,hovertext:Kc.hovertext,textposition:Kc.textposition,textfont:kOt({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,noNumericWeightValues:!0,variantValues:["normal","small-caps"]}),mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"]},line:{color:NFe.color,width:NFe.width,shape:{valType:"enumerated",values:["linear","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},dash:{valType:"enumerated",values:LOt(zOt),dflt:"solid"}},marker:rY({},qFe("marker"),{symbol:r1.symbol,angle:r1.angle,size:r1.size,sizeref:r1.sizeref,sizemin:r1.sizemin,sizemode:r1.sizemode,opacity:r1.opacity,colorbar:r1.colorbar,line:rY({},qFe("marker.line"),{width:IOt.width})}),connectgaps:Kc.connectgaps,fill:rY({},Kc.fill,{dflt:"none"}),fillcolor:COt(),selected:{marker:Kc.selected.marker,textfont:Kc.selected.textfont},unselected:{marker:Kc.unselected.marker,textfont:Kc.unselected.textfont},opacity:EOt.opacity},"calc","nested");sx.x.editType=sx.y.editType=sx.x0.editType=sx.y0.editType="calc+clearAxisTypes";sx.hovertemplate=Kc.hovertemplate;sx.hovertemplatefallback=Kc.hovertemplatefallback;sx.texttemplate=Kc.texttemplate;sx.texttemplatefallback=Kc.texttemplatefallback});var UF=Ae(iY=>{"use strict";var VFe=ox();iY.isOpenSymbol=function(e){return typeof e=="string"?VFe.OPEN_RE.test(e):e%200>100};iY.isDotSymbol=function(e){return typeof e=="string"?VFe.DOT_RE.test(e):e>200}});var WFe=Ae((h1r,HFe)=>{"use strict";var GFe=ei(),ROt=$l(),DOt=UF(),FOt=lk(),BOt=Sy(),VF=lc(),OOt=Q3(),qOt=Pm(),NOt=$v(),UOt=I0(),VOt=zm(),GOt=R0();HFe.exports=function(t,r,n,i){function a(d,p){return GFe.coerce(t,r,FOt,d,p)}var o=t.marker?DOt.isOpenSymbol(t.marker.symbol):!1,s=VF.isBubble(t),u=OOt(t,r,i,a);if(!u){r.visible=!1;return}qOt(t,r,i,a),a("xhoverformat"),a("yhoverformat");var l=u{"use strict";var HOt=iI();jFe.exports=function(t,r,n){var i=t.i;return"x"in t||(t.x=r._x[i]),"y"in t||(t.y=r._y[i]),HOt(t,r,n)}});var YFe=Ae((p1r,ZFe)=>{"use strict";function WOt(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o],u=r!==void 0?r(s,t):s-t;u>=0?(a=o,i=o-1):n=o+1}return a}function jOt(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o],u=r!==void 0?r(s,t):s-t;u>0?(a=o,i=o-1):n=o+1}return a}function XOt(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o],u=r!==void 0?r(s,t):s-t;u<0?(a=o,n=o+1):i=o-1}return a}function ZOt(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o],u=r!==void 0?r(s,t):s-t;u<=0?(a=o,n=o+1):i=o-1}return a}function YOt(e,t,r,n,i){for(;n<=i;){var a=n+i>>>1,o=e[a],s=r!==void 0?r(o,t):o-t;if(s===0)return a;s<=0?n=a+1:i=a-1}return-1}function uk(e,t,r,n,i,a){return typeof r=="function"?a(e,t,r,n===void 0?0:n|0,i===void 0?e.length-1:i|0):a(e,t,void 0,r===void 0?0:r|0,n===void 0?e.length-1:n|0)}ZFe.exports={ge:function(e,t,r,n,i){return uk(e,t,r,n,i,WOt)},gt:function(e,t,r,n,i){return uk(e,t,r,n,i,jOt)},lt:function(e,t,r,n,i){return uk(e,t,r,n,i,XOt)},le:function(e,t,r,n,i){return uk(e,t,r,n,i,ZOt)},eq:function(e,t,r,n,i){return uk(e,t,r,n,i,YOt)}}});var Zy=Ae((v1r,JFe)=>{"use strict";JFe.exports=function(t,r,n){var i={},a,o;if(typeof r=="string"&&(r=KFe(r)),Array.isArray(r)){var s={};for(o=0;o{"use strict";var KOt=Zy();$Fe.exports=JOt;function JOt(e){var t;return arguments.length>1&&(e=arguments),typeof e=="string"?e=e.split(/\s/).map(parseFloat):typeof e=="number"&&(e=[e]),e.length&&typeof e[0]=="number"?e.length===1?t={width:e[0],height:e[0],x:0,y:0}:e.length===2?t={width:e[0],height:e[1],x:0,y:0}:t={x:e[0],y:e[1],width:e[2]-e[0]||0,height:e[3]-e[1]||0}:e&&(e=KOt(e,{left:"x l left Left",top:"y t top Top",width:"w width W Width",height:"h height W Width",bottom:"b bottom Bottom",right:"r right Right"}),t={x:e.left||0,y:e.top||0},e.width==null?e.right?t.width=e.right-t.x:t.width=0:t.width=e.width,e.height==null?e.bottom?t.height=e.bottom-t.y:t.height=0:t.height=e.height),t}});var j2=Ae((y1r,QFe)=>{"use strict";QFe.exports=$Ot;function $Ot(e,t){if(!e||e.length==null)throw Error("Argument should be an array");t==null?t=1:t=Math.floor(t);for(var r=Array(t*2),n=0;ni&&(i=e[o]),e[o]{e8e.exports=function(){for(var e=0;e{var r8e=Z6();i8e.exports=QOt;function QOt(e,t,r){if(!e)throw new TypeError("must specify data as first parameter");if(r=+(r||0)|0,Array.isArray(e)&&e[0]&&typeof e[0][0]=="number"){var n=e[0].length,i=e.length*n,a,o,s,u;(!t||typeof t=="string")&&(t=new(r8e(t||"float32"))(i+r));var l=t.length-r;if(i!==l)throw new Error("source length "+i+" ("+n+"x"+e.length+") does not match destination length "+l);for(a=0,s=r;a{"use strict";n8e.exports=function(e){var t=typeof e;return e!==null&&(t==="object"||t==="function")}});var s8e=Ae((b1r,o8e)=>{"use strict";o8e.exports=Math.log2||function(e){return Math.log(e)*Math.LOG2E}});var p8e=Ae((w1r,d8e)=>{"use strict";var l8e=YFe(),u8e=Z4(),e9t=rS(),t9t=j2(),f8e=Zy(),aY=t8e(),r9t=X2(),i9t=a8e(),n9t=Z6(),c8e=s8e(),a9t=1073741824;d8e.exports=function(t,r){r||(r={}),t=r9t(t,"float64"),r=f8e(r,{bounds:"range bounds dataBox databox",maxDepth:"depth maxDepth maxdepth level maxLevel maxlevel levels",dtype:"type dtype format out dst output destination"});let n=aY(r.maxDepth,255),i=aY(r.bounds,t9t(t,2));i[0]===i[2]&&i[2]++,i[1]===i[3]&&i[3]++;let a=h8e(t,i),o=t.length>>>1,s;r.dtype||(r.dtype="array"),typeof r.dtype=="string"?s=new(n9t(r.dtype))(o):r.dtype&&(s=r.dtype,Array.isArray(s)&&(s.length=o));for(let v=0;vn||x>a9t){for(let N=0;Nbe||m>ze||P=B||re===ae)return;let Ce=u[W];ae===void 0&&(ae=Ce.length);for(let qe=re;qe=A&&Je<=x&&nt>=L&&nt<=C&&F.push(ce)}let de=l[W],te=de[re*4+0],ke=de[re*4+1],Ee=de[re*4+2],Me=de[re*4+3],Ue=G(de,re+1),De=N*.5,ye=W+1;U(j,H,De,ye,te,ke||Ee||Me||Ue),U(j,H+De,De,ye,ke,Ee||Me||Ue),U(j+De,H,De,ye,Ee,Me||Ue),U(j+De,H+De,De,ye,Me,Ue)}function G(j,H){let N=null,W=0;for(;N===null;)if(N=j[H*4+W],W++,W>j.length)return null;return N}return F}function _(v,k,E,A,L){let x=[];for(let C=0;C{"use strict";v8e.exports=p8e()});var oY=Ae((A1r,m8e)=>{m8e.exports=o9t;function o9t(e){var t=0,r=0,n=0,i=0;return e.map(function(a){a=a.slice();var o=a[0],s=o.toUpperCase();if(o!=s)switch(a[0]=s,o){case"a":a[6]+=n,a[7]+=i;break;case"v":a[1]+=i;break;case"h":a[1]+=n;break;default:for(var u=1;u{"use strict";Object.defineProperty(HF,"__esModule",{value:!0});var s9t=function(){function e(t,r){var n=[],i=!0,a=!1,o=void 0;try{for(var s=t[Symbol.iterator](),u;!(i=(u=s.next()).done)&&(n.push(u.value),!(r&&n.length===r));i=!0);}catch(l){a=!0,o=l}finally{try{!i&&s.return&&s.return()}finally{if(a)throw o}}return n}return function(t,r){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),fk=Math.PI*2,sY=function(t,r,n,i,a,o,s){var u=t.x,l=t.y;u*=r,l*=n;var f=i*u-a*l,c=a*u+i*l;return{x:f+o,y:c+s}},l9t=function(t,r){var n=r===1.5707963267948966?.551915024494:r===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(r/4),i=Math.cos(t),a=Math.sin(t),o=Math.cos(t+r),s=Math.sin(t+r);return[{x:i-a*n,y:a+i*n},{x:o+s*n,y:s-o*n},{x:o,y:s}]},y8e=function(t,r,n,i){var a=t*i-r*n<0?-1:1,o=t*n+r*i;return o>1&&(o=1),o<-1&&(o=-1),a*Math.acos(o)},u9t=function(t,r,n,i,a,o,s,u,l,f,c,h){var d=Math.pow(a,2),p=Math.pow(o,2),_=Math.pow(c,2),b=Math.pow(h,2),v=d*p-d*b-p*_;v<0&&(v=0),v/=d*b+p*_,v=Math.sqrt(v)*(s===u?-1:1);var k=v*a/o*h,E=v*-o/a*c,A=f*k-l*E+(t+n)/2,L=l*k+f*E+(r+i)/2,x=(c-k)/a,C=(h-E)/o,M=(-c-k)/a,m=(-h-E)/o,P=y8e(1,0,x,C),T=y8e(x,C,M,m);return u===0&&T>0&&(T-=fk),u===1&&T<0&&(T+=fk),[A,L,P,T]},f9t=function(t){var r=t.px,n=t.py,i=t.cx,a=t.cy,o=t.rx,s=t.ry,u=t.xAxisRotation,l=u===void 0?0:u,f=t.largeArcFlag,c=f===void 0?0:f,h=t.sweepFlag,d=h===void 0?0:h,p=[];if(o===0||s===0)return[];var _=Math.sin(l*fk/360),b=Math.cos(l*fk/360),v=b*(r-i)/2+_*(n-a)/2,k=-_*(r-i)/2+b*(n-a)/2;if(v===0&&k===0)return[];o=Math.abs(o),s=Math.abs(s);var E=Math.pow(v,2)/Math.pow(o,2)+Math.pow(k,2)/Math.pow(s,2);E>1&&(o*=Math.sqrt(E),s*=Math.sqrt(E));var A=u9t(r,n,i,a,o,s,c,d,_,b,v,k),L=s9t(A,4),x=L[0],C=L[1],M=L[2],m=L[3],P=Math.abs(m)/(fk/4);Math.abs(1-P)<1e-7&&(P=1);var T=Math.max(Math.ceil(P),1);m/=T;for(var B=0;B{"use strict";b8e.exports=h9t;var c9t=_8e();function h9t(e){for(var t,r=[],n=0,i=0,a=0,o=0,s=null,u=null,l=0,f=0,c=0,h=e.length;c4?(n=d[d.length-4],i=d[d.length-3]):(n=l,i=f),r.push(d)}return r}function WF(e,t,r,n){return["C",e,t,r,n,r,n]}function x8e(e,t,r,n,i,a){return["C",e/3+2/3*r,t/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}});var lY=Ae((M1r,T8e)=>{"use strict";T8e.exports=function(t){return typeof t!="string"?!1:(t=t.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(t)&&/[\dz]$/i.test(t)&&t.length>4))}});var M8e=Ae((E1r,S8e)=>{"use strict";var d9t=QM(),p9t=oY(),v9t=w8e(),m9t=lY(),A8e=s4();S8e.exports=y9t;function y9t(e){if(Array.isArray(e)&&e.length===1&&typeof e[0]=="string"&&(e=e[0]),typeof e=="string"&&(A8e(m9t(e),"String is not an SVG path."),e=d9t(e)),A8e(Array.isArray(e),"Argument should be a string or an array of path segments."),e=p9t(e),e=v9t(e),!e.length)return[0,0,0,0];for(var t=[1/0,1/0,-1/0,-1/0],r=0,n=e.length;rt[2]&&(t[2]=i[a+0]),i[a+1]>t[3]&&(t[3]=i[a+1]);return t}});var z8e=Ae((k1r,P8e)=>{var Z2=Math.PI,E8e=L8e(120);P8e.exports=g9t;function g9t(e){for(var t,r=[],n=0,i=0,a=0,o=0,s=null,u=null,l=0,f=0,c=0,h=e.length;c7&&(r.push(d.splice(0,7)),d.unshift("C"));break;case"S":var _=l,b=f;(t=="C"||t=="S")&&(_+=_-n,b+=b-i),d=["C",_,b,d[1],d[2],d[3],d[4]];break;case"T":t=="Q"||t=="T"?(s=l*2-s,u=f*2-u):(s=l,u=f),d=k8e(l,f,s,u,d[1],d[2]);break;case"Q":s=d[1],u=d[2],d=k8e(l,f,d[1],d[2],d[3],d[4]);break;case"L":d=jF(l,f,d[1],d[2]);break;case"H":d=jF(l,f,d[1],f);break;case"V":d=jF(l,f,l,d[1]);break;case"Z":d=jF(l,f,a,o);break}t=p,l=d[d.length-2],f=d[d.length-1],d.length>4?(n=d[d.length-4],i=d[d.length-3]):(n=l,i=f),r.push(d)}return r}function jF(e,t,r,n){return["C",e,t,r,n,r,n]}function k8e(e,t,r,n,i,a){return["C",e/3+2/3*r,t/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}function C8e(e,t,r,n,i,a,o,s,u,l){if(l)E=l[0],A=l[1],v=l[2],k=l[3];else{var f=uY(e,t,-i);e=f.x,t=f.y,f=uY(s,u,-i),s=f.x,u=f.y;var c=(e-s)/2,h=(t-u)/2,d=c*c/(r*r)+h*h/(n*n);d>1&&(d=Math.sqrt(d),r=d*r,n=d*n);var p=r*r,_=n*n,b=(a==o?-1:1)*Math.sqrt(Math.abs((p*_-p*h*h-_*c*c)/(p*h*h+_*c*c)));b==1/0&&(b=1);var v=b*r*h/n+(e+s)/2,k=b*-n*c/r+(t+u)/2,E=Math.asin(((t-k)/n).toFixed(9)),A=Math.asin(((u-k)/n).toFixed(9));E=eA&&(E=E-Z2*2),!o&&A>E&&(A=A-Z2*2)}if(Math.abs(A-E)>E8e){var L=A,x=s,C=u;A=E+E8e*(o&&A>E?1:-1),s=v+r*Math.cos(A),u=k+n*Math.sin(A);var M=C8e(s,u,r,n,i,0,o,x,C,[A,L,v,k])}var m=Math.tan((A-E)/4),P=4/3*r*m,T=4/3*n*m,B=[2*e-(e+P*Math.sin(E)),2*t-(t-T*Math.cos(E)),s+P*Math.sin(A),u-T*Math.cos(A),s,u];if(l)return B;M&&(B=B.concat(M));for(var F=0;F{var _9t=oY(),x9t=z8e(),b9t={M:"moveTo",C:"bezierCurveTo"};I8e.exports=function(e,t){e.beginPath(),x9t(_9t(t)).forEach(function(r){var n=r[0],i=r.slice(1);e[b9t[n]].apply(e,i)}),e.closePath()}});var O8e=Ae((L1r,B8e)=>{"use strict";var w9t=Z4();B8e.exports=T9t;var ck=1e20;function T9t(e,t){t||(t={});var r=t.cutoff==null?.25:t.cutoff,n=t.radius==null?8:t.radius,i=t.channel||0,a,o,s,u,l,f,c,h,d,p,_;if(ArrayBuffer.isView(e)||Array.isArray(e)){if(!t.width||!t.height)throw Error("For raw data width and height should be provided by options");a=t.width,o=t.height,u=e,t.stride?f=t.stride:f=Math.floor(e.length/a/o)}else window.HTMLCanvasElement&&e instanceof window.HTMLCanvasElement?(h=e,c=h.getContext("2d"),a=h.width,o=h.height,d=c.getImageData(0,0,a,o),u=d.data,f=4):window.CanvasRenderingContext2D&&e instanceof window.CanvasRenderingContext2D?(h=e.canvas,c=e,a=h.width,o=h.height,d=c.getImageData(0,0,a,o),u=d.data,f=4):window.ImageData&&e instanceof window.ImageData&&(d=e,a=e.width,o=e.height,u=d.data,f=4);if(s=Math.max(a,o),window.Uint8ClampedArray&&u instanceof window.Uint8ClampedArray||window.Uint8Array&&u instanceof window.Uint8Array)for(l=u,u=Array(a*o),p=0,_=l.length;p<_;p++)u[p]=l[p*f+i]/255;else if(f!==1)throw Error("Raw data can have only 1 value per pixel");var b=Array(a*o),v=Array(a*o),k=Array(s),E=Array(s),A=Array(s+1),L=Array(s);for(p=0,_=a*o;p<_;p++){var x=u[p];b[p]=x===1?0:x===0?ck:Math.pow(Math.max(0,.5-x),2),v[p]=x===1?ck:x===0?0:Math.pow(Math.max(0,x-.5),2)}D8e(b,a,o,k,E,L,A),D8e(v,a,o,k,E,L,A);var C=window.Float32Array?new Float32Array(a*o):new Array(a*o);for(p=0,_=a*o;p<_;p++)C[p]=w9t(1-((b[p]-v[p])/n+r),0,1);return C}function D8e(e,t,r,n,i,a,o){for(var s=0;s{"use strict";var A9t=M8e(),S9t=QM(),M9t=R8e(),E9t=lY(),k9t=O8e(),fY=document.createElement("canvas"),hv=fY.getContext("2d");q8e.exports=C9t;function C9t(e,t){if(!E9t(e))throw Error("Argument should be valid svg path string");t||(t={});var r,n;t.shape?(r=t.shape[0],n=t.shape[1]):(r=fY.width=t.w||t.width||200,n=fY.height=t.h||t.height||200);var i=Math.min(r,n),a=t.stroke||0,o=t.viewbox||t.viewBox||A9t(e),s=[r/(o[2]-o[0]),n/(o[3]-o[1])],u=Math.min(s[0]||0,s[1]||0)/2;if(hv.fillStyle="black",hv.fillRect(0,0,r,n),hv.fillStyle="white",a&&(typeof a!="number"&&(a=1),a>0?hv.strokeStyle="white":hv.strokeStyle="black",hv.lineWidth=Math.abs(a)),hv.translate(r*.5,n*.5),hv.scale(u,u),L9t()){var l=new Path2D(e);hv.fill(l),a&&hv.stroke(l)}else{var f=S9t(e);M9t(hv,f),hv.fill(),a&&hv.stroke()}hv.setTransform(1,0,0,1,0,0);var c=k9t(hv,{cutoff:t.cutoff!=null?t.cutoff:.5,radius:t.radius!=null?t.radius:i*.5});return c}var XF;function L9t(){if(XF!=null)return XF;var e=document.createElement("canvas").getContext("2d");if(e.canvas.width=e.canvas.height=1,!window.Path2D)return XF=!1;var t=new Path2D("M0,0h1v1h-1v-1Z");e.fillStyle="black",e.fill(t);var r=e.getImageData(0,0,1,1);return XF=r&&r.data&&r.data[3]===255}});var K2=Ae((z1r,J8e)=>{"use strict";var YF=ku(),P9t=N8e(),ZF=J_(),z9t=$l(),aS=ei(),kh=aS.isArrayOrTypedArray,iS=Mu(),U8e=Wc(),V8e=$g().formatColor,nS=lc(),I9t=E3(),hY=UF(),hk=ox(),R9t=N1().DESELECTDIM,G8e={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},D9t=iv().appendArrayPointValue;function F9t(e,t){var r,n={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0},i=e._context.plotGlPixelRatio;if(t.visible!==!0)return n;if(nS.hasText(t)&&(n.text=K8e(e,t),n.textSel=W8e(e,t,t.selected),n.textUnsel=W8e(e,t,t.unselected)),nS.hasMarkers(t)&&(n.marker=pY(e,t),n.markerSel=dY(e,t,t.selected),n.markerUnsel=dY(e,t,t.unselected),!t.unselected&&kh(t.marker.opacity))){var a=t.marker.opacity;for(n.markerUnsel.opacity=new Array(a.length),r=0;r500?"bold":"normal":e}function pY(e,t){var r=t._length,n=t.marker,i={},a,o=kh(n.symbol),s=kh(n.angle),u=kh(n.color),l=kh(n.line.color),f=kh(n.opacity),c=kh(n.size),h=kh(n.line.width),d;if(o||(d=hY.isOpenSymbol(n.symbol)),o||u||l||f||s){i.symbols=new Array(r),i.angles=new Array(r),i.colors=new Array(r),i.borderColors=new Array(r);var p=n.symbol,_=n.angle,b=V8e(n,n.opacity,r),v=V8e(n.line,n.opacity,r);if(!kh(v[0])){var k=v;for(v=Array(r),a=0;ahk.TOO_MANY_POINTS||nS.hasMarkers(t)?"rect":"round";if(l&&t.connectgaps){var c=a[0],h=a[1];for(o=0;o1?u[o]:u[0]:u,d=kh(l)?l.length>1?l[o]:l[0]:l,p=G8e[h],_=G8e[d],b=f?f/.8+1:0,v=-_*b-_*.5;a.offset[o]=[p*b/c,v/c]}}return a}J8e.exports={style:F9t,markerStyle:pY,markerSelection:dY,linePositions:O9t,errorBarPositions:q9t,textPosition:N9t}});var vY=Ae((I1r,$8e)=>{"use strict";var KF=ei();$8e.exports=function(t,r){var n=r._scene,i={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},a={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return r._scene||(n=r._scene={},n.init=function(){KF.extendFlat(n,a,i)},n.init(),n.update=function(s){var u=KF.repeat(s,n.count);if(n.fill2d&&n.fill2d.update(u),n.scatter2d&&n.scatter2d.update(u),n.line2d&&n.line2d.update(u),n.error2d&&n.error2d.update(u.concat(u)),n.select2d&&n.select2d.update(u),n.glText)for(var l=0;l{"use strict";var U9t=GF(),oS=ei(),Q8e=Wc(),V9t=Tm().findExtremes,eBe=Im(),mY=B0(),G9t=mY.calcMarkerSize,H9t=mY.calcAxisExpansion,W9t=mY.setFirstScatter,j9t=D0(),sS=K2(),X9t=vY(),tBe=rf().BADNUM,Z9t=ox().TOO_MANY_POINTS;iBe.exports=function(t,r){var n=t._fullLayout,i=r._xA=Q8e.getFromId(t,r.xaxis,"x"),a=r._yA=Q8e.getFromId(t,r.yaxis,"y"),o=n._plots[r.xaxis+r.yaxis],s=r._length,u=s>=Z9t,l=s*2,f={},c,h=i.makeCalcdata(r,"x"),d=a.makeCalcdata(r,"y"),p=eBe(r,i,"x",h),_=eBe(r,a,"y",d),b=p.vals,v=_.vals;r._x=b,r._y=v,r.xperiodalignment&&(r._origX=h,r._xStarts=p.starts,r._xEnds=p.ends),r.yperiodalignment&&(r._origY=d,r._yStarts=_.starts,r._yEnds=_.ends);var k=new Array(l),E=new Array(s);for(c=0;c1&&oS.extendFlat(o.line,sS.linePositions(e,r,n)),o.errorX||o.errorY){var s=sS.errorBarPositions(e,r,n,i,a);o.errorX&&oS.extendFlat(o.errorX,s.x),o.errorY&&oS.extendFlat(o.errorY,s.y)}return o.text&&(oS.extendFlat(o.text,{positions:n},sS.textPosition(e,r,o.text,o.marker)),oS.extendFlat(o.textSel,{positions:n},sS.textPosition(e,r,o.text,o.markerSel)),oS.extendFlat(o.textUnsel,{positions:n},sS.textPosition(e,r,o.text,o.markerUnsel))),o}});var yY=Ae((D1r,oBe)=>{"use strict";var aBe=ei(),K9t=jl(),J9t=N1().DESELECTDIM;function $9t(e){var t=e[0],r=t.trace,n=t.t,i=n._scene,a=n.index,o=i.selectBatch[a],s=i.unselectBatch[a],u=i.textOptions[a],l=i.textSelectedOptions[a]||{},f=i.textUnselectedOptions[a]||{},c=aBe.extendFlat({},u),h,d;if(o.length||s.length){var p=l.color,_=f.color,b=u.color,v=aBe.isArrayOrTypedArray(b);for(c.color=new Array(r._length),h=0;h{"use strict";var sBe=lc(),Q9t=yY().styleTextSelection;lBe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,u=n[0].t,l=s._length,f=u.x,c=u.y,h=u._scene,d=u.index;if(!h)return o;var p=sBe.hasText(s),_=sBe.hasMarkers(s),b=!_&&!p;if(s.visible!==!0||b)return o;var v=[],k=[];if(r!==!1&&!r.degenerate)for(var E=0;E{"use strict";var eqt=NF();uBe.exports={moduleType:"trace",name:"scattergl",basePlotModule:Ah(),categories:["gl","regl","cartesian","symbols","errorBarsOK","showLegend","scatter-like"],attributes:lk(),supplyDefaults:WFe(),crossTraceDefaults:vU(),colorbar:ep(),formatLabels:XFe(),calc:nBe(),hoverPoints:eqt.hoverPoints,selectPoints:gY(),meta:{}}});var hBe=Ae((O1r,$F)=>{"use strict";var JF=Z4();$F.exports=cBe;$F.exports.to=cBe;$F.exports.from=tqt;function cBe(e,t){t==null&&(t=!0);var r=e[0],n=e[1],i=e[2],a=e[3];a==null&&(a=t?1:255),t&&(r*=255,n*=255,i*=255,a*=255),r=JF(r,0,255)&255,n=JF(n,0,255)&255,i=JF(i,0,255)&255,a=JF(a,0,255)&255;var o=r*16777216+(n<<16)+(i<<8)+a;return o}function tqt(e,t){e=+e;var r=e>>>24,n=(e&16711680)>>>16,i=(e&65280)>>>8,a=e&255;return t===!1?[r,n,i,a]:[r/255,n/255,i/255,a/255]}});var Gh=Ae((q1r,pBe)=>{"use strict";var dBe=Object.getOwnPropertySymbols,rqt=Object.prototype.hasOwnProperty,iqt=Object.prototype.propertyIsEnumerable;function nqt(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function aqt(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(t).map(function(a){return t[a]});if(n.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(a){i[a]=a}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch(a){return!1}}pBe.exports=aqt()?Object.assign:function(e,t){for(var r,n=nqt(e),i,a=1;a{vBe.exports=function(e){typeof e=="string"&&(e=[e]);for(var t=[].slice.call(arguments,1),r=[],n=0;n{"use strict";yBe.exports=function(t,r,n){Array.isArray(n)||(n=[].slice.call(arguments,2));for(var i=0,a=n.length;i{"use strict";gBe.exports=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))});var QF=Ae((G1r,lS)=>{"use strict";lS.exports=dk;lS.exports.float32=lS.exports.float=dk;lS.exports.fract32=lS.exports.fract=oqt;var xBe=new Float32Array(1);function oqt(e,t){if(e.length){if(e instanceof Float32Array)return new Float32Array(e.length);t instanceof Float32Array||(t=dk(e));for(var r=0,n=t.length;r{"use strict";function sqt(e,t){var r=e==null?null:typeof Symbol!="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var n,i,a,o,s=[],u=!0,l=!1;try{if(a=(r=r.call(e)).next,t===0){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=a.call(r)).done)&&(s.push(n.value),s.length!==t);u=!0);}catch(f){l=!0,i=f}finally{try{if(!u&&r.return!=null&&(o=r.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function lqt(e,t){return cqt(e)||sqt(e,t)||wBe(e,t)||pqt()}function uqt(e){return fqt(e)||hqt(e)||wBe(e)||dqt()}function fqt(e){if(Array.isArray(e))return xY(e)}function cqt(e){if(Array.isArray(e))return e}function hqt(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function wBe(e,t){if(e){if(typeof e=="string")return xY(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return xY(e,t)}}function xY(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0)throw new Error("Invalid string. Length must be a multiple of 4");var L=E.indexOf("=");L===-1&&(L=A);var x=L===A?0:4-L%4;return[L,x]}function d(E){var A=h(E),L=A[0],x=A[1];return(L+x)*3/4-x}function p(E,A,L){return(A+L)*3/4-L}function _(E){var A,L=h(E),x=L[0],C=L[1],M=new u(p(E,x,C)),m=0,P=C>0?x-4:x,T;for(T=0;T>16&255,M[m++]=A>>8&255,M[m++]=A&255;return C===2&&(A=s[E.charCodeAt(T)]<<2|s[E.charCodeAt(T+1)]>>4,M[m++]=A&255),C===1&&(A=s[E.charCodeAt(T)]<<10|s[E.charCodeAt(T+1)]<<4|s[E.charCodeAt(T+2)]>>2,M[m++]=A>>8&255,M[m++]=A&255),M}function b(E){return o[E>>18&63]+o[E>>12&63]+o[E>>6&63]+o[E&63]}function v(E,A,L){for(var x,C=[],M=A;MP?P:m+M));return x===1?(A=E[L-1],C.push(o[A>>2]+o[A<<4&63]+"==")):x===2&&(A=(E[L-2]<<8)+E[L-1],C.push(o[A>>10]+o[A>>4&63]+o[A<<2&63]+"=")),C.join("")}},7518:function(i,a,o){"use strict";var s=o(1433);function u(c,h,d,p,_,b){this.location=c,this.dimension=h,this.a=d,this.b=p,this.c=_,this.d=b}u.prototype.bind=function(c){switch(this.dimension){case 1:c.vertexAttrib1f(this.location,this.a);break;case 2:c.vertexAttrib2f(this.location,this.a,this.b);break;case 3:c.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:c.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d);break}};function l(c,h,d){this.gl=c,this._ext=h,this.handle=d,this._attribs=[],this._useElements=!1,this._elementsType=c.UNSIGNED_SHORT}l.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var c=0;c1.0001)return null;T+=P[L]}return Math.abs(T-1)>.001?null:[x,h(p,P),P]}},7636:function(i){i.exports=a;function a(o,s){s=s||1;var u=Math.random()*2*Math.PI,l=Math.random()*2-1,f=Math.sqrt(1-l*l)*s;return o[0]=Math.cos(u)*f,o[1]=Math.sin(u)*f,o[2]=l*s,o}},7640:function(i,a,o){"use strict";var s=o(1888);function u(_){switch(_){case"uint32":return[s.mallocUint32,s.freeUint32];default:return null}}var l={"uint32,1,0":function(_,b){return function(k,E,A,L,x,C,M,m,P,T,B){var F,U,G,j=k*x+L,W,N=_(m),H,re,ae,be;for(F=k+1;F<=E;++F){for(U=F,j+=x,G=j,H=0,re=j,W=0;Wk;){H=0,re=G-x;t:for(W=0;Wbe)break t;re+=T,H+=B}for(H=G,re=G-x,W=0;W>1,N=W-U,H=W+U,re=G,ae=N,be=W,ze=H,Ce=j,de=E+1,te=A-1,ke=!0,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt=0,Nt=0,at=0,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt=P,cr=b(Yt),_r=b(Yt);Ct=C*re,wt=C*ae,It=x;e:for(Ke=0;Ke0){Me=re,re=ae,ae=Me;break e}if(at<0)break e;It+=B}Ct=C*ze,wt=C*Ce,It=x;e:for(Ke=0;Ke0){Me=ze,ze=Ce,Ce=Me;break e}if(at<0)break e;It+=B}Ct=C*re,wt=C*be,It=x;e:for(Ke=0;Ke0){Me=re,re=be,be=Me;break e}if(at<0)break e;It+=B}Ct=C*ae,wt=C*be,It=x;e:for(Ke=0;Ke0){Me=ae,ae=be,be=Me;break e}if(at<0)break e;It+=B}Ct=C*re,wt=C*ze,It=x;e:for(Ke=0;Ke0){Me=re,re=ze,ze=Me;break e}if(at<0)break e;It+=B}Ct=C*be,wt=C*ze,It=x;e:for(Ke=0;Ke0){Me=be,be=ze,ze=Me;break e}if(at<0)break e;It+=B}Ct=C*ae,wt=C*Ce,It=x;e:for(Ke=0;Ke0){Me=ae,ae=Ce,Ce=Me;break e}if(at<0)break e;It+=B}Ct=C*ae,wt=C*be,It=x;e:for(Ke=0;Ke0){Me=ae,ae=be,be=Me;break e}if(at<0)break e;It+=B}Ct=C*ze,wt=C*Ce,It=x;e:for(Ke=0;Ke0){Me=ze,ze=Ce,Ce=Me;break e}if(at<0)break e;It+=B}for(Ct=C*re,wt=C*ae,St=C*be,Dt=C*ze,Zt=C*Ce,Et=C*G,Te=C*W,ot=C*j,et=0,It=x,Ke=0;Ke0)te--;else if(at<0){for(Ct=C*qe,wt=C*de,St=C*te,It=x,Ke=0;Ke0)for(;;){ce=x+te*C,et=0;e:for(Ke=0;Ke0){if(--tej){e:for(;;){for(ce=x+de*C,et=0,It=x,Ke=0;Ke1&&k?A(v,k[0],k[1]):A(v)}var d={"uint32,1,0":function(_,b){return function(v){var k=v.data,E=v.offset|0,A=v.shape,L=v.stride,x=L[0]|0,C=A[0]|0,M=L[1]|0,m=A[1]|0,P=M,T=M,B=1;C<=32?_(0,C-1,k,E,x,M,C,m,P,T,B):b(0,C-1,k,E,x,M,C,m,P,T,B)}}};function p(_,b){var v=[b,_].join(","),k=d[v],E=f(_,b),A=h(_,b,E);return k(E,A)}i.exports=p},7642:function(i,a,o){"use strict";var s=o(8954),u=o(1682);i.exports=h;function l(d,p){this.point=d,this.index=p}function f(d,p){for(var _=d.point,b=p.point,v=_.length,k=0;k=2)return!1;G[W]=N}return!0}):U=U.filter(function(G){for(var j=0;j<=b;++j){var W=P[G[j]];if(W<0)return!1;G[j]=W}return!0}),b&1)for(var E=0;E",H="",re=N.length,ae=H.length,be=G[0]===k||G[0]===L,ze=0,Ce=-ae;ze>-1&&(ze=j.indexOf(N,ze),!(ze===-1||(Ce=j.indexOf(H,ze+re),Ce===-1)||Ce<=ze));){for(var de=ze;de=Ce)W[de]=null,j=j.substr(0,de)+" "+j.substr(de+1);else if(W[de]!==null){var te=W[de].indexOf(G[0]);te===-1?W[de]+=G:be&&(W[de]=W[de].substr(0,te+1)+(1+parseInt(W[de][te+1]))+W[de].substr(te+2))}var ke=ze+re,Ee=j.substr(ke,Ce-ke),Me=Ee.indexOf(N);Me!==-1?ze=Me:ze=Ce+ae}return W}function M(U,G,j){for(var W=G.textAlign||"start",N=G.textBaseline||"alphabetic",H=[1<<30,1<<30],re=[0,0],ae=U.length,be=0;be/g,` +`):j=j.replace(/\/g," ");var re="",ae=[];for(ye=0;ye-1?parseInt(Te[1+vt]):0,it=Ye>-1?parseInt(ot[1+Ye]):0;He!==it&&(Tt=Tt.replace(at(),"?px "),Je*=Math.pow(.75,it-He),Tt=Tt.replace("?px ",at())),ce+=.25*te*(it-He)}if(H.superscripts===!0){var et=Te.indexOf(k),It=ot.indexOf(k),Yt=et>-1?parseInt(Te[1+et]):0,cr=It>-1?parseInt(ot[1+It]):0;Yt!==cr&&(Tt=Tt.replace(at(),"?px "),Je*=Math.pow(.75,cr-Yt),Tt=Tt.replace("?px ",at())),ce-=.25*te*(cr-Yt)}if(H.bolds===!0){var _r=Te.indexOf(p)>-1,yr=ot.indexOf(p)>-1;!_r&&yr&&(Ut?Tt=Tt.replace("italic ","italic bold "):Tt="bold "+Tt),_r&&!yr&&(Tt=Tt.replace("bold ",""))}if(H.italics===!0){var Ut=Te.indexOf(b)>-1,Re=ot.indexOf(b)>-1;!Ut&&Re&&(Tt="italic "+Tt),Ut&&!Re&&(Tt=Tt.replace("italic ",""))}G.font=Tt}for(De=0;De0&&(N=W.size),W.lineSpacing&&W.lineSpacing>0&&(H=W.lineSpacing),W.styletags&&W.styletags.breaklines&&(re.breaklines=!!W.styletags.breaklines),W.styletags&&W.styletags.bolds&&(re.bolds=!!W.styletags.bolds),W.styletags&&W.styletags.italics&&(re.italics=!!W.styletags.italics),W.styletags&&W.styletags.subscripts&&(re.subscripts=!!W.styletags.subscripts),W.styletags&&W.styletags.superscripts&&(re.superscripts=!!W.styletags.superscripts)),j.font=[W.fontStyle,W.fontVariant,W.fontWeight,N+"px",W.font].filter(function(be){return be}).join(" "),j.textAlign="start",j.textBaseline="alphabetic",j.direction="ltr";var ae=m(G,j,U,N,H,re);return B(ae,W,N)}},7721:function(i,a,o){"use strict";var s=o(5716);i.exports=u;function u(l){return s(l[0])*s(l[1])}},7765:function(i,a,o){"use strict";i.exports=v;var s=o(9618),u=o(1888),l=o(446),f=o(1570);function c(k){for(var E=k.length,A=0,L=0;LU||B<0||B>U)throw new Error("gl-texture2d: Invalid texture size");return P._shape=[T,B],P.bind(),F.texImage2D(F.TEXTURE_2D,0,P.format,T,B,0,P.format,P.type,null),P._mipLevels=[0],P}function v(P,T,B,F,U,G){this.gl=P,this.handle=T,this.format=U,this.type=G,this._shape=[B,F],this._mipLevels=[0],this._magFilter=P.NEAREST,this._minFilter=P.NEAREST,this._wrapS=P.CLAMP_TO_EDGE,this._wrapT=P.CLAMP_TO_EDGE,this._anisoSamples=1;var j=this,W=[this._wrapS,this._wrapT];Object.defineProperties(W,[{get:function(){return j._wrapS},set:function(H){return j.wrapS=H}},{get:function(){return j._wrapT},set:function(H){return j.wrapT=H}}]),this._wrapVector=W;var N=[this._shape[0],this._shape[1]];Object.defineProperties(N,[{get:function(){return j._shape[0]},set:function(H){return j.width=H}},{get:function(){return j._shape[1]},set:function(H){return j.height=H}}]),this._shapeVector=N}var k=v.prototype;Object.defineProperties(k,{minFilter:{get:function(){return this._minFilter},set:function(P){this.bind();var T=this.gl;if(this.type===T.FLOAT&&f.indexOf(P)>=0&&(T.getExtension("OES_texture_float_linear")||(P=T.NEAREST)),c.indexOf(P)<0)throw new Error("gl-texture2d: Unknown filter mode "+P);return T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MIN_FILTER,P),this._minFilter=P}},magFilter:{get:function(){return this._magFilter},set:function(P){this.bind();var T=this.gl;if(this.type===T.FLOAT&&f.indexOf(P)>=0&&(T.getExtension("OES_texture_float_linear")||(P=T.NEAREST)),c.indexOf(P)<0)throw new Error("gl-texture2d: Unknown filter mode "+P);return T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MAG_FILTER,P),this._magFilter=P}},mipSamples:{get:function(){return this._anisoSamples},set:function(P){var T=this._anisoSamples;if(this._anisoSamples=Math.max(P,1)|0,T!==this._anisoSamples){var B=this.gl.getExtension("EXT_texture_filter_anisotropic");B&&this.gl.texParameterf(this.gl.TEXTURE_2D,B.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(P){if(this.bind(),h.indexOf(P)<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,P),this._wrapS=P}},wrapT:{get:function(){return this._wrapT},set:function(P){if(this.bind(),h.indexOf(P)<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,P),this._wrapT=P}},wrap:{get:function(){return this._wrapVector},set:function(P){if(Array.isArray(P)||(P=[P,P]),P.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var T=0;T<2;++T)if(h.indexOf(P[T])<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);this._wrapS=P[0],this._wrapT=P[1];var B=this.gl;return this.bind(),B.texParameteri(B.TEXTURE_2D,B.TEXTURE_WRAP_S,this._wrapS),B.texParameteri(B.TEXTURE_2D,B.TEXTURE_WRAP_T,this._wrapT),P}},shape:{get:function(){return this._shapeVector},set:function(P){if(!Array.isArray(P))P=[P|0,P|0];else if(P.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return b(this,P[0]|0,P[1]|0),[P[0]|0,P[1]|0]}},width:{get:function(){return this._shape[0]},set:function(P){return P=P|0,b(this,P,this._shape[1]),P}},height:{get:function(){return this._shape[1]},set:function(P){return P=P|0,b(this,this._shape[0],P),P}}}),k.bind=function(P){var T=this.gl;return P!==void 0&&T.activeTexture(T.TEXTURE0+(P|0)),T.bindTexture(T.TEXTURE_2D,this.handle),P!==void 0?P|0:T.getParameter(T.ACTIVE_TEXTURE)-T.TEXTURE0},k.dispose=function(){this.gl.deleteTexture(this.handle)},k.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var P=Math.min(this._shape[0],this._shape[1]),T=0;P>0;++T,P>>>=1)this._mipLevels.indexOf(T)<0&&this._mipLevels.push(T)},k.setPixels=function(P,T,B,F){var U=this.gl;this.bind(),Array.isArray(T)?(F=B,B=T[1]|0,T=T[0]|0):(T=T||0,B=B||0),F=F||0;var G=p(P)?P:P.raw;if(G){var j=this._mipLevels.indexOf(F)<0;j?(U.texImage2D(U.TEXTURE_2D,0,this.format,this.format,this.type,G),this._mipLevels.push(F)):U.texSubImage2D(U.TEXTURE_2D,F,T,B,this.format,this.type,G)}else if(P.shape&&P.stride&&P.data){if(P.shape.length<2||T+P.shape[1]>this._shape[1]>>>F||B+P.shape[0]>this._shape[0]>>>F||T<0||B<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");A(U,T,B,F,this.format,this.type,this._mipLevels,P)}else throw new Error("gl-texture2d: Unsupported data type")};function E(P,T){return P.length===3?T[2]===1&&T[1]===P[0]*P[2]&&T[0]===P[2]:T[0]===1&&T[1]===P[0]}function A(P,T,B,F,U,G,j,W){var N=W.dtype,H=W.shape.slice();if(H.length<2||H.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var re=0,ae=0,be=E(H,W.stride.slice());N==="float32"?re=P.FLOAT:N==="float64"?(re=P.FLOAT,be=!1,N="float32"):N==="uint8"?re=P.UNSIGNED_BYTE:(re=P.UNSIGNED_BYTE,be=!1,N="uint8");var ze=1;if(H.length===2)ae=P.LUMINANCE,H=[H[0],H[1],1],W=s(W.data,H,[W.stride[0],W.stride[1],1],W.offset);else if(H.length===3){if(H[2]===1)ae=P.ALPHA;else if(H[2]===2)ae=P.LUMINANCE_ALPHA;else if(H[2]===3)ae=P.RGB;else if(H[2]===4)ae=P.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");ze=H[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((ae===P.LUMINANCE||ae===P.ALPHA)&&(U===P.LUMINANCE||U===P.ALPHA)&&(ae=U),ae!==U)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var Ce=W.size,de=j.indexOf(F)<0;if(de&&j.push(F),re===G&&be)W.offset===0&&W.data.length===Ce?de?P.texImage2D(P.TEXTURE_2D,F,U,H[0],H[1],0,U,G,W.data):P.texSubImage2D(P.TEXTURE_2D,F,T,B,H[0],H[1],U,G,W.data):de?P.texImage2D(P.TEXTURE_2D,F,U,H[0],H[1],0,U,G,W.data.subarray(W.offset,W.offset+Ce)):P.texSubImage2D(P.TEXTURE_2D,F,T,B,H[0],H[1],U,G,W.data.subarray(W.offset,W.offset+Ce));else{var te;G===P.FLOAT?te=l.mallocFloat32(Ce):te=l.mallocUint8(Ce);var ke=s(te,H,[H[2],H[2]*H[0],1]);re===P.FLOAT&&G===P.UNSIGNED_BYTE?_(ke,W):u.assign(ke,W),de?P.texImage2D(P.TEXTURE_2D,F,U,H[0],H[1],0,U,G,te.subarray(0,Ce)):P.texSubImage2D(P.TEXTURE_2D,F,T,B,H[0],H[1],U,G,te.subarray(0,Ce)),G===P.FLOAT?l.freeFloat32(te):l.freeUint8(te)}}function L(P){var T=P.createTexture();return P.bindTexture(P.TEXTURE_2D,T),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_MIN_FILTER,P.NEAREST),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_MAG_FILTER,P.NEAREST),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_S,P.CLAMP_TO_EDGE),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_T,P.CLAMP_TO_EDGE),T}function x(P,T,B,F,U){var G=P.getParameter(P.MAX_TEXTURE_SIZE);if(T<0||T>G||B<0||B>G)throw new Error("gl-texture2d: Invalid texture shape");if(U===P.FLOAT&&!P.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var j=L(P);return P.texImage2D(P.TEXTURE_2D,0,F,T,B,0,F,U,null),new v(P,j,T,B,F,U)}function C(P,T,B,F,U,G){var j=L(P);return P.texImage2D(P.TEXTURE_2D,0,U,U,G,T),new v(P,j,B,F,U,G)}function M(P,T){var B=T.dtype,F=T.shape.slice(),U=P.getParameter(P.MAX_TEXTURE_SIZE);if(F[0]<0||F[0]>U||F[1]<0||F[1]>U)throw new Error("gl-texture2d: Invalid texture size");var G=E(F,T.stride.slice()),j=0;B==="float32"?j=P.FLOAT:B==="float64"?(j=P.FLOAT,G=!1,B="float32"):B==="uint8"?j=P.UNSIGNED_BYTE:(j=P.UNSIGNED_BYTE,G=!1,B="uint8");var W=0;if(F.length===2)W=P.LUMINANCE,F=[F[0],F[1],1],T=s(T.data,F,[T.stride[0],T.stride[1],1],T.offset);else if(F.length===3)if(F[2]===1)W=P.ALPHA;else if(F[2]===2)W=P.LUMINANCE_ALPHA;else if(F[2]===3)W=P.RGB;else if(F[2]===4)W=P.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");j===P.FLOAT&&!P.getExtension("OES_texture_float")&&(j=P.UNSIGNED_BYTE,G=!1);var N,H,re=T.size;if(G)T.offset===0&&T.data.length===re?N=T.data:N=T.data.subarray(T.offset,T.offset+re);else{var ae=[F[2],F[2]*F[0],1];H=l.malloc(re,B);var be=s(H,F,ae,0);(B==="float32"||B==="float64")&&j===P.UNSIGNED_BYTE?_(be,T):u.assign(be,T),N=H.subarray(0,re)}var ze=L(P);return P.texImage2D(P.TEXTURE_2D,0,W,F[0],F[1],0,W,j,N),G||l.free(H),new v(P,ze,F[0],F[1],W,j)}function m(P){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(f||d(P),typeof arguments[1]=="number")return x(P,arguments[1],arguments[2],arguments[3]||P.RGBA,arguments[4]||P.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return x(P,arguments[1][0]|0,arguments[1][1]|0,arguments[2]||P.RGBA,arguments[3]||P.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var T=arguments[1],B=p(T)?T:T.raw;if(B)return C(P,B,T.width|0,T.height|0,arguments[2]||P.RGBA,arguments[3]||P.UNSIGNED_BYTE);if(T.shape&&T.data&&T.stride)return M(P,T)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},7790:function(){},7815:function(i,a,o){"use strict";var s=o(2931),u=o(9970),l=["xyz","xzy","yxz","yzx","zxy","zyx"],f=function(A,L,x,C){for(var M=A.points,m=A.velocities,P=A.divergences,T=[],B=[],F=[],U=[],G=[],j=[],W=0,N=0,H=u.create(),re=u.create(),ae=8,be=0;be0)for(var te=0;teL)return C-1}return C},d=function(A,L,x){return Ax?x:A},p=function(A,L,x){var C=L.vectors,M=L.meshgrid,m=A[0],P=A[1],T=A[2],B=M[0].length,F=M[1].length,U=M[2].length,G=h(M[0],m),j=h(M[1],P),W=h(M[2],T),N=G+1,H=j+1,re=W+1;if(G=d(G,0,B-1),N=d(N,0,B-1),j=d(j,0,F-1),H=d(H,0,F-1),W=d(W,0,U-1),re=d(re,0,U-1),G<0||j<0||W<0||N>B-1||H>F-1||re>U-1)return s.create();var ae=M[0][G],be=M[0][N],ze=M[1][j],Ce=M[1][H],de=M[2][W],te=M[2][re],ke=(m-ae)/(be-ae),Ee=(P-ze)/(Ce-ze),Me=(T-de)/(te-de);isFinite(ke)||(ke=.5),isFinite(Ee)||(Ee=.5),isFinite(Me)||(Me=.5);var Ue,De,ye,qe,ce,Je;switch(x.reversedX&&(G=B-1-G,N=B-1-N),x.reversedY&&(j=F-1-j,H=F-1-H),x.reversedZ&&(W=U-1-W,re=U-1-re),x.filled){case 5:ce=W,Je=re,ye=j*U,qe=H*U,Ue=G*U*F,De=N*U*F;break;case 4:ce=W,Je=re,Ue=G*U,De=N*U,ye=j*U*B,qe=H*U*B;break;case 3:ye=j,qe=H,ce=W*F,Je=re*F,Ue=G*F*U,De=N*F*U;break;case 2:ye=j,qe=H,Ue=G*F,De=N*F,ce=W*F*B,Je=re*F*B;break;case 1:Ue=G,De=N,ce=W*B,Je=re*B,ye=j*B*U,qe=H*B*U;break;default:Ue=G,De=N,ye=j*B,qe=H*B,ce=W*B*F,Je=re*B*F;break}var nt=C[Ue+ye+ce],gt=C[Ue+ye+Je],Nt=C[Ue+qe+ce],at=C[Ue+qe+Je],Ke=C[De+ye+ce],Ct=C[De+ye+Je],wt=C[De+qe+ce],St=C[De+qe+Je],Dt=s.create(),Zt=s.create(),Et=s.create(),Te=s.create();s.lerp(Dt,nt,Ke,ke),s.lerp(Zt,gt,Ct,ke),s.lerp(Et,Nt,wt,ke),s.lerp(Te,at,St,ke);var ot=s.create(),Tt=s.create();s.lerp(ot,Dt,Et,Ee),s.lerp(Tt,Zt,Te,Ee);var vt=s.create();return s.lerp(vt,ot,Tt,Me),vt},_=function(A,L){var x=L[0],C=L[1],M=L[2];return A[0]=x<0?-x:x,A[1]=C<0?-C:C,A[2]=M<0?-M:M,A},b=function(A){var L=1/0;A.sort(function(m,P){return m-P});for(var x=A.length,C=1;CN||StH||Dtre)},be=s.distance(L[0],L[1]),ze=10*be/C,Ce=ze*ze,de=1,te=0,ke=x.length;ke>1&&(de=v(x));for(var Ee=0;Eete&&(te=nt),ce.push(nt),U.push({points:Ue,velocities:De,divergences:ce});for(var gt=0;gtCe&&s.scale(Nt,Nt,ze/Math.sqrt(at)),s.add(Nt,Nt,Me),ye=B(Nt),s.squaredDistance(qe,Nt)-Ce>-1e-4*Ce){Ue.push(Nt),qe=Nt,De.push(ye);var Je=F(Nt,ye),nt=s.length(Je);isFinite(nt)&&nt>te&&(te=nt),ce.push(nt)}Me=Nt}}var Ke=c(U,A.colormap,te,de);return m?Ke.tubeScale=m:(te===0&&(te=1),Ke.tubeScale=M*.5*de/te),Ke};var k=o(6740),E=o(6405).createMesh;i.exports.createTubeMesh=function(A,L){return E(A,L,{shaders:k,traceType:"streamtube"})}},7827:function(i){i.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},7842:function(i,a,o){"use strict";var s=o(6330),u=o(1533),l=o(2651),f=o(6768),c=o(869),h=o(8697);i.exports=d;function d(p,_){if(s(p))return _?h(p,d(_)):[p[0].clone(),p[1].clone()];var b=0,v,k;if(u(p))v=p.clone();else if(typeof p=="string")v=f(p);else{if(p===0)return[l(0),l(1)];if(p===Math.floor(p))v=l(p);else{for(;p!==Math.floor(p);)p=p*Math.pow(2,256),b-=256;v=l(p)}}if(s(_))v.mul(_[1]),k=_[0].clone();else if(u(_))k=_.clone();else if(typeof _=="string")k=f(_);else if(!_)k=l(1);else if(_===Math.floor(_))k=l(_);else{for(;_!==Math.floor(_);)_=_*Math.pow(2,256),b+=256;k=l(_)}return b>0?v=v.ushln(b):b<0&&(k=k.ushln(-b)),c(v,k)}},7894:function(i){i.exports=a;function a(o){return o[0]=1,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=1,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=1,o[11]=0,o[12]=0,o[13]=0,o[14]=0,o[15]=1,o}},7932:function(i,a,o){var s=o(620);i.exports=s.slice().concat(["layout","centroid","smooth","case","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","uvec2","uvec3","uvec4","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","coherent","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","image1DShadow","image2DShadow","image1DArrayShadow","image2DArrayShadow","imageBuffer","iimageBuffer","uimageBuffer","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray"])},7960:function(i){i.exports=a;function a(o,s){var u=s[0]-o[0],l=s[1]-o[1],f=s[2]-o[2],c=s[3]-o[3];return u*u+l*l+f*f+c*c}},8105:function(i){"use strict";i.exports=o;var a={"lo===p0":s,"lo=p0)&&!(p1>=hi)":d};function o(p){return a[p]}function s(p,_,b,v,k,E,A){for(var L=2*p,x=L*b,C=x,M=b,m=_,P=p+_,T=b;v>T;++T,x+=L){var B=k[x+m];if(B===A)if(M===T)M+=1,C+=L;else{for(var F=0;L>F;++F){var U=k[x+F];k[x+F]=k[C],k[C++]=U}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function u(p,_,b,v,k,E,A){for(var L=2*p,x=L*b,C=x,M=b,m=_,P=p+_,T=b;v>T;++T,x+=L){var B=k[x+m];if(BF;++F){var U=k[x+F];k[x+F]=k[C],k[C++]=U}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function l(p,_,b,v,k,E,A){for(var L=2*p,x=L*b,C=x,M=b,m=_,P=p+_,T=b;v>T;++T,x+=L){var B=k[x+P];if(B<=A)if(M===T)M+=1,C+=L;else{for(var F=0;L>F;++F){var U=k[x+F];k[x+F]=k[C],k[C++]=U}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function f(p,_,b,v,k,E,A){for(var L=2*p,x=L*b,C=x,M=b,m=_,P=p+_,T=b;v>T;++T,x+=L){var B=k[x+P];if(B<=A)if(M===T)M+=1,C+=L;else{for(var F=0;L>F;++F){var U=k[x+F];k[x+F]=k[C],k[C++]=U}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function c(p,_,b,v,k,E,A){for(var L=2*p,x=L*b,C=x,M=b,m=_,P=p+_,T=b;v>T;++T,x+=L){var B=k[x+m],F=k[x+P];if(B<=A&&A<=F)if(M===T)M+=1,C+=L;else{for(var U=0;L>U;++U){var G=k[x+U];k[x+U]=k[C],k[C++]=G}var j=E[T];E[T]=E[M],E[M++]=j}}return M}function h(p,_,b,v,k,E,A){for(var L=2*p,x=L*b,C=x,M=b,m=_,P=p+_,T=b;v>T;++T,x+=L){var B=k[x+m],F=k[x+P];if(BU;++U){var G=k[x+U];k[x+U]=k[C],k[C++]=G}var j=E[T];E[T]=E[M],E[M++]=j}}return M}function d(p,_,b,v,k,E,A,L){for(var x=2*p,C=x*b,M=C,m=b,P=_,T=p+_,B=b;v>B;++B,C+=x){var F=k[C+P],U=k[C+T];if(!(F>=A)&&!(L>=U))if(m===B)m+=1,M+=x;else{for(var G=0;x>G;++G){var j=k[C+G];k[C+G]=k[M],k[M++]=j}var W=E[B];E[B]=E[m],E[m++]=W}}return m}},8107:function(i){i.exports=a;function a(o,s,u){return o[0]=Math.min(s[0],u[0]),o[1]=Math.min(s[1],u[1]),o[2]=Math.min(s[2],u[2]),o}},8116:function(i,a,o){"use strict";var s=o(7518),u=o(870);function l(c){this.bindVertexArrayOES=c.bindVertexArray.bind(c),this.createVertexArrayOES=c.createVertexArray.bind(c),this.deleteVertexArrayOES=c.deleteVertexArray.bind(c)}function f(c,h,d,p){var _=c.createVertexArray?new l(c):c.getExtension("OES_vertex_array_object"),b;return _?b=s(c,_):b=u(c),b.update(h,d,p),b}i.exports=f},8192:function(i,a,o){i.exports=f;var s=o(2825),u=o(3536),l=o(244);function f(c,h){var d=s(c[0],c[1],c[2]),p=s(h[0],h[1],h[2]);u(d,d),u(p,p);var _=l(d,p);return _>1?0:Math.acos(_)}},8210:function(i){"use strict";i.exports=o;function a(s,u){var l=s+u,f=l-s,c=l-f,h=u-f,d=s-c,p=d+h;return p?[p,l]:[l]}function o(s,u){var l=s.length|0,f=u.length|0;if(l===1&&f===1)return a(s[0],u[0]);var c=l+f,h=new Array(c),d=0,p=0,_=0,b=Math.abs,v=s[p],k=b(v),E=u[_],A=b(E),L,x;k=f?(L=v,p+=1,pd)for(var B=h[v],F=1/Math.sqrt(M*P),T=0;T<3;++T){var U=(T+1)%3,G=(T+2)%3;B[T]+=F*(m[U]*C[G]-m[G]*C[U])}}for(var p=0;pd)for(var F=1/Math.sqrt(j),T=0;T<3;++T)B[T]*=F;else for(var T=0;T<3;++T)B[T]=0}return h},a.faceNormals=function(u,l,f){for(var c=u.length,h=new Array(c),d=f===void 0?s:f,p=0;pd?L=1/Math.sqrt(L):L=0;for(var v=0;v<3;++v)A[v]*=L;h[p]=A}return h}},8418:function(i,a,o){"use strict";var s=o(5219),u=o(2762),l=o(8116),f=o(1888),c=o(6760),h=o(1283),d=o(9366),p=o(5964),_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],b=ArrayBuffer,v=DataView;function k(Me){return b.isView(Me)&&!(Me instanceof v)}function E(Me){return Array.isArray(Me)||k(Me)}i.exports=Ee;function A(Me,Ue){var De=Me[0],ye=Me[1],qe=Me[2],ce=Me[3];return Me[0]=Ue[0]*De+Ue[4]*ye+Ue[8]*qe+Ue[12]*ce,Me[1]=Ue[1]*De+Ue[5]*ye+Ue[9]*qe+Ue[13]*ce,Me[2]=Ue[2]*De+Ue[6]*ye+Ue[10]*qe+Ue[14]*ce,Me[3]=Ue[3]*De+Ue[7]*ye+Ue[11]*qe+Ue[15]*ce,Me}function L(Me,Ue,De,ye){return A(ye,ye,De),A(ye,ye,Ue),A(ye,ye,Me)}function x(Me,Ue){this.index=Me,this.dataCoordinate=this.position=Ue}function C(Me){return Me===!0||Me>1?1:Me}function M(Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke){this.gl=Me,this.pixelRatio=1,this.shader=Ue,this.orthoShader=De,this.projectShader=ye,this.pointBuffer=qe,this.colorBuffer=ce,this.glyphBuffer=Je,this.idBuffer=nt,this.vao=gt,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=Nt,this.pickOrthoShader=at,this.pickProjectShader=Ke,this.points=[],this._selectResult=new x(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}var m=M.prototype;m.pickSlots=1,m.setPickBase=function(Me){this.pickId=Me},m.isTransparent=function(){if(this.hasAlpha)return!0;for(var Me=0;Me<3;++Me)if(this.axesProject[Me]&&this.projectHasAlpha)return!0;return!1},m.isOpaque=function(){if(!this.hasAlpha)return!0;for(var Me=0;Me<3;++Me)if(this.axesProject[Me]&&!this.projectHasAlpha)return!0;return!1};var P=[0,0],T=[0,0,0],B=[0,0,0],F=[0,0,0,1],U=[0,0,0,1],G=_.slice(),j=[0,0,0],W=[[0,0,0],[0,0,0]];function N(Me){return Me[0]=Me[1]=Me[2]=0,Me}function H(Me,Ue){return Me[0]=Ue[0],Me[1]=Ue[1],Me[2]=Ue[2],Me[3]=1,Me}function re(Me,Ue,De,ye){return Me[0]=Ue[0],Me[1]=Ue[1],Me[2]=Ue[2],Me[De]=ye,Me}function ae(Me){for(var Ue=W,De=0;De<2;++De)for(var ye=0;ye<3;++ye)Ue[De][ye]=Math.max(Math.min(Me[De][ye],1e8),-1e8);return Ue}function be(Me,Ue,De,ye){var qe=Ue.axesProject,ce=Ue.gl,Je=Me.uniforms,nt=De.model||_,gt=De.view||_,Nt=De.projection||_,at=Ue.axesBounds,Ke=ae(Ue.clipBounds),Ct;Ue.axes&&Ue.axes.lastCubeProps?Ct=Ue.axes.lastCubeProps.axis:Ct=[1,1,1],P[0]=2/ce.drawingBufferWidth,P[1]=2/ce.drawingBufferHeight,Me.bind(),Je.view=gt,Je.projection=Nt,Je.screenSize=P,Je.highlightId=Ue.highlightId,Je.highlightScale=Ue.highlightScale,Je.clipBounds=Ke,Je.pickGroup=Ue.pickId/255,Je.pixelRatio=ye;for(var wt=0;wt<3;++wt)if(qe[wt]){Je.scale=Ue.projectScale[wt],Je.opacity=Ue.projectOpacity[wt];for(var St=G,Dt=0;Dt<16;++Dt)St[Dt]=0;for(var Dt=0;Dt<4;++Dt)St[5*Dt]=1;St[5*wt]=0,Ct[wt]<0?St[12+wt]=at[0][wt]:St[12+wt]=at[1][wt],c(St,nt,St),Je.model=St;var Zt=(wt+1)%3,Et=(wt+2)%3,Te=N(T),ot=N(B);Te[Zt]=1,ot[Et]=1;var Tt=L(Nt,gt,nt,H(F,Te)),vt=L(Nt,gt,nt,H(U,ot));if(Math.abs(Tt[1])>Math.abs(vt[1])){var Ye=Tt;Tt=vt,vt=Ye,Ye=Te,Te=ot,ot=Ye;var He=Zt;Zt=Et,Et=He}Tt[0]<0&&(Te[Zt]=-1),vt[1]>0&&(ot[Et]=-1);for(var it=0,et=0,Dt=0;Dt<4;++Dt)it+=Math.pow(nt[4*Zt+Dt],2),et+=Math.pow(nt[4*Et+Dt],2);Te[Zt]/=Math.sqrt(it),ot[Et]/=Math.sqrt(et),Je.axes[0]=Te,Je.axes[1]=ot,Je.fragClipBounds[0]=re(j,Ke[0],wt,-1e8),Je.fragClipBounds[1]=re(j,Ke[1],wt,1e8),Ue.vao.bind(),Ue.vao.draw(ce.TRIANGLES,Ue.vertexCount),Ue.lineWidth>0&&(ce.lineWidth(Ue.lineWidth*ye),Ue.vao.draw(ce.LINES,Ue.lineVertexCount,Ue.vertexCount)),Ue.vao.unbind()}}var ze=[-1e8,-1e8,-1e8],Ce=[1e8,1e8,1e8],de=[ze,Ce];function te(Me,Ue,De,ye,qe,ce,Je){var nt=De.gl;if((ce===De.projectHasAlpha||Je)&&be(Ue,De,ye,qe),ce===De.hasAlpha||Je){Me.bind();var gt=Me.uniforms;gt.model=ye.model||_,gt.view=ye.view||_,gt.projection=ye.projection||_,P[0]=2/nt.drawingBufferWidth,P[1]=2/nt.drawingBufferHeight,gt.screenSize=P,gt.highlightId=De.highlightId,gt.highlightScale=De.highlightScale,gt.fragClipBounds=de,gt.clipBounds=De.axes.bounds,gt.opacity=De.opacity,gt.pickGroup=De.pickId/255,gt.pixelRatio=qe,De.vao.bind(),De.vao.draw(nt.TRIANGLES,De.vertexCount),De.lineWidth>0&&(nt.lineWidth(De.lineWidth*qe),De.vao.draw(nt.LINES,De.lineVertexCount,De.vertexCount)),De.vao.unbind()}}m.draw=function(Me){var Ue=this.useOrtho?this.orthoShader:this.shader;te(Ue,this.projectShader,this,Me,this.pixelRatio,!1,!1)},m.drawTransparent=function(Me){var Ue=this.useOrtho?this.orthoShader:this.shader;te(Ue,this.projectShader,this,Me,this.pixelRatio,!0,!1)},m.drawPick=function(Me){var Ue=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;te(Ue,this.pickProjectShader,this,Me,1,!0,!0)},m.pick=function(Me){if(!Me||Me.id!==this.pickId)return null;var Ue=Me.value[2]+(Me.value[1]<<8)+(Me.value[0]<<16);if(Ue>=this.pointCount||Ue<0)return null;var De=this.points[Ue],ye=this._selectResult;ye.index=Ue;for(var qe=0;qe<3;++qe)ye.position[qe]=ye.dataCoordinate[qe]=De[qe];return ye},m.highlight=function(Me){if(!Me)this.highlightId=[1,1,1,1];else{var Ue=Me.index,De=Ue&255,ye=Ue>>8&255,qe=Ue>>16&255;this.highlightId=[De/255,ye/255,qe/255,0]}};function ke(Me,Ue,De,ye){var qe;E(Me)?Ue0){var Ut=0,Re=Et,xe=[0,0,0,1],Oe=[0,0,0,1],Ie=E(Ct)&&E(Ct[0]),Fe=E(Dt)&&E(Dt[0]);e:for(var ye=0;ye0?1-et[0][0]:zt<0?1+et[1][0]:1,rr*=rr>0?1-et[0][1]:rr<0?1+et[1][1]:1;for(var Gr=[zt,rr],Di=He.cells||[],ni=He.positions||[],vt=0;vt=f?(L=v,p+=1,p0?1:0}},8648:function(i,a,o){i.exports=o(783)},8692:function(i){i.exports=a;function a(o,s,u,l){var f=u[0],c=u[1],h=s[0]-f,d=s[1]-c,p=Math.sin(l),_=Math.cos(l);return o[0]=f+h*_-d*p,o[1]=c+h*p+d*_,o[2]=s[2],o}},8697:function(i,a,o){"use strict";var s=o(869);i.exports=u;function u(l,f){return s(l[0].mul(f[1]),l[1].mul(f[0]))}},8731:function(i,a,o){"use strict";i.exports=d;var s=o(8866);function u(p,_,b,v,k,E){this._gl=p,this._wrapper=_,this._index=b,this._locations=v,this._dimension=k,this._constFunc=E}var l=u.prototype;l.pointer=function(_,b,v,k){var E=this,A=E._gl,L=E._locations[E._index];A.vertexAttribPointer(L,E._dimension,_||A.FLOAT,!!b,v||0,k||0),A.enableVertexAttribArray(L)},l.set=function(p,_,b,v){return this._constFunc(this._locations[this._index],p,_,b,v)},Object.defineProperty(l,"location",{get:function(){return this._locations[this._index]},set:function(p){return p!==this._locations[this._index]&&(this._locations[this._index]=p|0,this._wrapper.program=null),p|0}});var f=[function(p,_,b){return b.length===void 0?p.vertexAttrib1f(_,b):p.vertexAttrib1fv(_,b)},function(p,_,b,v){return b.length===void 0?p.vertexAttrib2f(_,b,v):p.vertexAttrib2fv(_,b)},function(p,_,b,v,k){return b.length===void 0?p.vertexAttrib3f(_,b,v,k):p.vertexAttrib3fv(_,b)},function(p,_,b,v,k,E){return b.length===void 0?p.vertexAttrib4f(_,b,v,k,E):p.vertexAttrib4fv(_,b)}];function c(p,_,b,v,k,E,A){var L=f[k],x=new u(p,_,b,v,k,L);Object.defineProperty(E,A,{set:function(C){return p.disableVertexAttribArray(v[b]),L(p,v[b],C),C},get:function(){return x},enumerable:!0})}function h(p,_,b,v,k,E,A){for(var L=new Array(k),x=new Array(k),C=0;C=0){var m=C.charCodeAt(C.length-1)-48;if(m<2||m>4)throw new s("","Invalid data type for attribute "+x+": "+C);c(p,_,M[0],v,m,k,x)}else if(C.indexOf("mat")>=0){var m=C.charCodeAt(C.length-1)-48;if(m<2||m>4)throw new s("","Invalid data type for attribute "+x+": "+C);h(p,_,M,v,m,k,x)}else throw new s("","Unknown data type for attribute "+x+": "+C);break}}return k}},8828:function(i,a){"use strict";"use restrict";var o=32;a.INT_BITS=o,a.INT_MAX=2147483647,a.INT_MIN=-1<0)-(l<0)},a.abs=function(l){var f=l>>o-1;return(l^f)-f},a.min=function(l,f){return f^(l^f)&-(l65535)<<4,l>>>=f,c=(l>255)<<3,l>>>=c,f|=c,c=(l>15)<<2,l>>>=c,f|=c,c=(l>3)<<1,l>>>=c,f|=c,f|l>>1},a.log10=function(l){return l>=1e9?9:l>=1e8?8:l>=1e7?7:l>=1e6?6:l>=1e5?5:l>=1e4?4:l>=1e3?3:l>=100?2:l>=10?1:0},a.popCount=function(l){return l=l-(l>>>1&1431655765),l=(l&858993459)+(l>>>2&858993459),(l+(l>>>4)&252645135)*16843009>>>24};function s(l){var f=32;return l&=-l,l&&f--,l&65535&&(f-=16),l&16711935&&(f-=8),l&252645135&&(f-=4),l&858993459&&(f-=2),l&1431655765&&(f-=1),f}a.countTrailingZeros=s,a.nextPow2=function(l){return l+=l===0,--l,l|=l>>>1,l|=l>>>2,l|=l>>>4,l|=l>>>8,l|=l>>>16,l+1},a.prevPow2=function(l){return l|=l>>>1,l|=l>>>2,l|=l>>>4,l|=l>>>8,l|=l>>>16,l-(l>>>1)},a.parity=function(l){return l^=l>>>16,l^=l>>>8,l^=l>>>4,l&=15,27030>>>l&1};var u=new Array(256);(function(l){for(var f=0;f<256;++f){var c=f,h=f,d=7;for(c>>>=1;c;c>>>=1)h<<=1,h|=c&1,--d;l[f]=h<>>8&255]<<16|u[l>>>16&255]<<8|u[l>>>24&255]},a.interleave2=function(l,f){return l&=65535,l=(l|l<<8)&16711935,l=(l|l<<4)&252645135,l=(l|l<<2)&858993459,l=(l|l<<1)&1431655765,f&=65535,f=(f|f<<8)&16711935,f=(f|f<<4)&252645135,f=(f|f<<2)&858993459,f=(f|f<<1)&1431655765,l|f<<1},a.deinterleave2=function(l,f){return l=l>>>f&1431655765,l=(l|l>>>1)&858993459,l=(l|l>>>2)&252645135,l=(l|l>>>4)&16711935,l=(l|l>>>16)&65535,l<<16>>16},a.interleave3=function(l,f,c){return l&=1023,l=(l|l<<16)&4278190335,l=(l|l<<8)&251719695,l=(l|l<<4)&3272356035,l=(l|l<<2)&1227133513,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,l|=f<<1,c&=1023,c=(c|c<<16)&4278190335,c=(c|c<<8)&251719695,c=(c|c<<4)&3272356035,c=(c|c<<2)&1227133513,l|c<<2},a.deinterleave3=function(l,f){return l=l>>>f&1227133513,l=(l|l>>>2)&3272356035,l=(l|l>>>4)&251719695,l=(l|l>>>8)&4278190335,l=(l|l>>>16)&1023,l<<22>>22},a.nextCombination=function(l){var f=l|l-1;return f+1|(~f&-~f)-1>>>s(l)+1}},8866:function(i){function a(o,s,u){this.shortMessage=s||"",this.longMessage=u||"",this.rawError=o||"",this.message="gl-shader: "+(s||o||"")+(u?` +`+u:""),this.stack=new Error().stack}a.prototype=new Error,a.prototype.name="GLError",a.prototype.constructor=a,i.exports=a},8902:function(i,a,o){"use strict";var s=o(2478),u=o(3250)[3],l=0,f=1,c=2;i.exports=A;function h(L,x,C,M,m){this.a=L,this.b=x,this.idx=C,this.lowerIds=M,this.upperIds=m}function d(L,x,C,M){this.a=L,this.b=x,this.type=C,this.idx=M}function p(L,x){var C=L.a[0]-x.a[0]||L.a[1]-x.a[1]||L.type-x.type;return C||L.type!==l&&(C=u(L.a,L.b,x.b),C)?C:L.idx-x.idx}function _(L,x){return u(L.a,L.b,x)}function b(L,x,C,M,m){for(var P=s.lt(x,M,_),T=s.gt(x,M,_),B=P;B1&&u(C[U[j-2]],C[U[j-1]],M)>0;)L.push([U[j-1],U[j-2],m]),j-=1;U.length=j,U.push(m);for(var G=F.upperIds,j=G.length;j>1&&u(C[G[j-2]],C[G[j-1]],M)<0;)L.push([G[j-2],G[j-1],m]),j-=1;G.length=j,G.push(m)}}function v(L,x){var C;return L.a[0]F[0]&&m.push(new d(F,B,c,P),new d(B,F,f,P))}m.sort(p);for(var U=m[0].a[0]-(1+Math.abs(m[0].a[0]))*Math.pow(2,-52),G=[new h([U,1],[U,0],-1,[],[],[],[])],j=[],P=0,W=m.length;P0;){k=M.pop();for(var m=k.adjacent,P=0;P<=A;++P){var T=m[P];if(!(!T.boundary||T.lastVisited<=-L)){for(var B=T.vertices,F=0;F<=A;++F){var U=B[F];U<0?x[F]=E:x[F]=C[U]}var G=this.orient();if(G>0)return T;T.lastVisited=-L,G===0&&M.push(T)}}}return null},b.walk=function(k,E){var A=this.vertices.length-1,L=this.dimension,x=this.vertices,C=this.tuple,M=E?this.interior.length*Math.random()|0:this.interior.length-1,m=this.interior[M];e:for(;!m.boundary;){for(var P=m.vertices,T=m.adjacent,B=0;B<=L;++B)C[B]=x[P[B]];m.lastVisited=A;for(var B=0;B<=L;++B){var F=T[B];if(!(F.lastVisited>=A)){var U=C[B];C[B]=k;var G=this.orient();if(C[B]=U,G<0){m=F;continue e}else F.boundary?F.lastVisited=-A:F.lastVisited=A}}return}return m},b.addPeaks=function(k,E){var A=this.vertices.length-1,L=this.dimension,x=this.vertices,C=this.tuple,M=this.interior,m=this.simplices,P=[E];E.lastVisited=A,E.vertices[E.vertices.indexOf(-1)]=A,E.boundary=!1,M.push(E);for(var T=[];P.length>0;){var E=P.pop(),B=E.vertices,F=E.adjacent,U=B.indexOf(A);if(!(U<0)){for(var G=0;G<=L;++G)if(G!==U){var j=F[G];if(!(!j.boundary||j.lastVisited>=A)){var W=j.vertices;if(j.lastVisited!==-A){for(var N=0,H=0;H<=L;++H)W[H]<0?(N=H,C[H]=k):C[H]=x[W[H]];var re=this.orient();if(re>0){W[N]=A,j.boundary=!1,M.push(j),P.push(j),j.lastVisited=A;continue}else j.lastVisited=-A}var ae=j.adjacent,be=B.slice(),ze=F.slice(),Ce=new l(be,ze,!0);m.push(Ce);var de=ae.indexOf(E);if(!(de<0)){ae[de]=Ce,ze[U]=j,be[G]=-1,ze[G]=E,F[G]=Ce,Ce.flip();for(var H=0;H<=L;++H){var te=be[H];if(!(te<0||te===A)){for(var ke=new Array(L-1),Ee=0,Me=0;Me<=L;++Me){var Ue=be[Me];Ue<0||Me===H||(ke[Ee++]=Ue)}T.push(new f(ke,Ce,H))}}}}}}}T.sort(c);for(var G=0;G+1=0?M[P++]=m[B]:T=B&1;if(T===(k&1)){var F=M[0];M[0]=M[1],M[1]=F}E.push(M)}}return E};function v(k,E){var A=k.length;if(A===0)throw new Error("Must have at least d+1 points");var L=k[0].length;if(A<=L)throw new Error("Must input at least d+1 points");var x=k.slice(0,L+1),C=s.apply(void 0,x);if(C===0)throw new Error("Input not in general position");for(var M=new Array(L+1),m=0;m<=L;++m)M[m]=m;C<0&&(M[0]=1,M[1]=0);for(var P=new l(M,new Array(L+1),!1),T=P.adjacent,B=new Array(L+2),m=0;m<=L;++m){for(var F=M.slice(),U=0;U<=L;++U)U===m&&(F[U]=-1);var G=F[0];F[0]=F[1],F[1]=G;var j=new l(F,new Array(L+1),!0);T[m]=j,B[m]=j}B[L+1]=P;for(var m=0;m<=L;++m)for(var F=T[m].vertices,W=T[m].adjacent,U=0;U<=L;++U){var N=F[U];if(N<0){W[U]=P;continue}for(var H=0;H<=L;++H)T[H].vertices.indexOf(N)<0&&(W[U]=T[H])}for(var re=new _(L,x,B),ae=!!E,m=L+1;m=1},v.isTransparent=function(){return this.opacity<1},v.pickSlots=1,v.setPickBase=function(C){this.pickId=C};function k(C){for(var M=p({colormap:C,nshades:256,format:"rgba"}),m=new Uint8Array(256*4),P=0;P<256;++P){for(var T=M[P],B=0;B<3;++B)m[4*P+B]=T[B];m[4*P+3]=T[3]*255}return d(m,[256,256,4],[4,0,1])}function E(C){for(var M=C.length,m=new Array(M),P=0;P0){var H=this.triShader;H.bind(),H.uniforms=U,this.triangleVAO.bind(),M.drawArrays(M.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},v.drawPick=function(C){C=C||{};for(var M=this.gl,m=C.model||_,P=C.view||_,T=C.projection||_,B=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],F=0;F<3;++F)B[0][F]=Math.max(B[0][F],this.clipBounds[0][F]),B[1][F]=Math.min(B[1][F],this.clipBounds[1][F]);this._model=[].slice.call(m),this._view=[].slice.call(P),this._projection=[].slice.call(T),this._resolution=[M.drawingBufferWidth,M.drawingBufferHeight];var U={model:m,view:P,projection:T,clipBounds:B,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},G=this.pickShader;G.bind(),G.uniforms=U,this.triangleCount>0&&(this.triangleVAO.bind(),M.drawArrays(M.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},v.pick=function(C){if(!C||C.id!==this.pickId)return null;var M=C.value[0]+256*C.value[1]+65536*C.value[2],m=this.cells[M],P=this.positions[m[1]].slice(0,3),T={position:P,dataCoordinate:P,index:Math.floor(m[1]/48)};return this.traceType==="cone"?T.index=Math.floor(m[1]/48):this.traceType==="streamtube"&&(T.intensity=this.intensity[m[1]],T.velocity=this.vectors[m[1]].slice(0,3),T.divergence=this.vectors[m[1]][3],T.index=M),T},v.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()};function A(C,M){var m=s(C,M.meshShader.vertex,M.meshShader.fragment,null,M.meshShader.attributes);return m.attributes.position.location=0,m.attributes.color.location=2,m.attributes.uv.location=3,m.attributes.vector.location=4,m}function L(C,M){var m=s(C,M.pickShader.vertex,M.pickShader.fragment,null,M.pickShader.attributes);return m.attributes.position.location=0,m.attributes.id.location=1,m.attributes.vector.location=4,m}function x(C,M,m){var P=m.shaders;arguments.length===1&&(M=C,C=M.gl);var T=A(C,P),B=L(C,P),F=f(C,d(new Uint8Array([255,255,255,255]),[1,1,4]));F.generateMipmap(),F.minFilter=C.LINEAR_MIPMAP_LINEAR,F.magFilter=C.LINEAR;var U=u(C),G=u(C),j=u(C),W=u(C),N=u(C),H=l(C,[{buffer:U,type:C.FLOAT,size:4},{buffer:N,type:C.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:j,type:C.FLOAT,size:4},{buffer:W,type:C.FLOAT,size:2},{buffer:G,type:C.FLOAT,size:4}]),re=new b(C,F,T,B,U,G,N,j,W,H,m.traceType||"cone");return re.update(M),re}i.exports=x},9127:function(i,a,o){"use strict";i.exports=l;var s=o(6204),u=o(5771);function l(f){return u(s(f))}},9131:function(i,a,o){var s=o(5177),u=o(9288);i.exports=l;function l(f,c){return c=c||1,f[0]=Math.random(),f[1]=Math.random(),f[2]=Math.random(),f[3]=Math.random(),s(f,f),u(f,f,c),f}},9165:function(i,a,o){"use strict";i.exports=b;var s=o(2762),u=o(8116),l=o(3436),f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function c(v,k,E,A){this.gl=v,this.shader=A,this.buffer=k,this.vao=E,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var h=c.prototype;h.isOpaque=function(){return!this.hasAlpha},h.isTransparent=function(){return this.hasAlpha},h.drawTransparent=h.draw=function(v){var k=this.gl,E=this.shader.uniforms;this.shader.bind();var A=E.view=v.view||f,L=E.projection=v.projection||f;E.model=v.model||f,E.clipBounds=this.clipBounds,E.opacity=this.opacity;var x=A[12],C=A[13],M=A[14],m=A[15],P=v._ortho||!1,T=P?2:1,B=T*this.pixelRatio*(L[3]*x+L[7]*C+L[11]*M+L[15]*m)/k.drawingBufferHeight;this.vao.bind();for(var F=0;F<3;++F)k.lineWidth(this.lineWidth[F]*this.pixelRatio),E.capSize=this.capSize[F]*B,this.lineCount[F]&&k.drawArrays(k.LINES,this.lineOffset[F],this.lineCount[F]);this.vao.unbind()};function d(v,k){for(var E=0;E<3;++E)v[0][E]=Math.min(v[0][E],k[E]),v[1][E]=Math.max(v[1][E],k[E])}var p=function(){for(var v=new Array(3),k=0;k<3;++k){for(var E=[],A=1;A<=2;++A)for(var L=-1;L<=1;L+=2){var x=(A+k)%3,C=[0,0,0];C[x]=L,E.push(C)}v[k]=E}return v}();function _(v,k,E,A){for(var L=p[A],x=0;x0){var U=P.slice();U[M]+=B[1][M],L.push(P[0],P[1],P[2],F[0],F[1],F[2],F[3],0,0,0,U[0],U[1],U[2],F[0],F[1],F[2],F[3],0,0,0),d(this.bounds,U),C+=2+_(L,U,F,M)}}}this.lineCount[M]=C-this.lineOffset[M]}this.buffer.update(L)}},h.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function b(v){var k=v.gl,E=s(k),A=u(k,[{buffer:E,type:k.FLOAT,size:3,offset:0,stride:40},{buffer:E,type:k.FLOAT,size:4,offset:12,stride:40},{buffer:E,type:k.FLOAT,size:3,offset:28,stride:40}]),L=l(k);L.attributes.position.location=0,L.attributes.color.location=1,L.attributes.offset.location=2;var x=new c(k,E,A,L);return x.update(v),x}},9215:function(i,a,o){"use strict";i.exports=d;var s=o(4769),u=o(2478);function l(p,_,b){return Math.min(_,Math.max(p,b))}function f(p,_,b){this.dimension=p.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var v=0;v=b-1)for(var C=E.length-1,m=p-_[b-1],M=0;M=b-1)for(var x=E.length-1,C=p-_[b-1],M=0;M=0;--b)if(p[--_])return!1;return!0},c.jump=function(p){var _=this.lastT(),b=this.dimension;if(!(p<_||arguments.length!==b+1)){var v=this._state,k=this._velocity,E=v.length-this.dimension,A=this.bounds,L=A[0],x=A[1];this._time.push(_,p);for(var C=0;C<2;++C)for(var M=0;M0;--M)v.push(l(L[M-1],x[M-1],arguments[M])),k.push(0)}},c.push=function(p){var _=this.lastT(),b=this.dimension;if(!(p<_||arguments.length!==b+1)){var v=this._state,k=this._velocity,E=v.length-this.dimension,A=p-_,L=this.bounds,x=L[0],C=L[1],M=A>1e-6?1/A:0;this._time.push(p);for(var m=b;m>0;--m){var P=l(x[m-1],C[m-1],arguments[m]);v.push(P),k.push((P-v[E++])*M)}}},c.set=function(p){var _=this.dimension;if(!(p0;--L)b.push(l(E[L-1],A[L-1],arguments[L])),v.push(0)}},c.move=function(p){var _=this.lastT(),b=this.dimension;if(!(p<=_||arguments.length!==b+1)){var v=this._state,k=this._velocity,E=v.length-this.dimension,A=this.bounds,L=A[0],x=A[1],C=p-_,M=C>1e-6?1/C:0;this._time.push(p);for(var m=b;m>0;--m){var P=arguments[m];v.push(l(L[m-1],x[m-1],v[E++]+P)),k.push(P*M)}}},c.idle=function(p){var _=this.lastT();if(!(p<_)){var b=this.dimension,v=this._state,k=this._velocity,E=v.length-b,A=this.bounds,L=A[0],x=A[1],C=p-_;this._time.push(p);for(var M=b-1;M>=0;--M)v.push(l(L[M],x[M],v[E]+C*k[E])),k.push(0),E+=1}};function h(p){for(var _=new Array(p),b=0;b1&&f.indexOf("Macintosh")!==-1&&f.indexOf("Safari")!==-1&&(c=!0),c}},9226:function(i){i.exports=a;function a(o,s){return o[0]=Math.ceil(s[0]),o[1]=Math.ceil(s[1]),o[2]=Math.ceil(s[2]),o}},9265:function(i){i.exports=a;function a(o,s){return o[0]===s[0]&&o[1]===s[1]&&o[2]===s[2]}},9288:function(i){i.exports=a;function a(o,s,u){return o[0]=s[0]*u,o[1]=s[1]*u,o[2]=s[2]*u,o[3]=s[3]*u,o}},9346:function(i){"use strict";var a=new Float64Array(4),o=new Float64Array(4),s=new Float64Array(4);function u(l,f,c,h,d){a.length=_?(m=1,T=_+2*k+A):(m=-k/_,T=k*m+A)):(m=0,E>=0?(P=0,T=A):-E>=v?(P=1,T=v+2*E+A):(P=-E/v,T=E*P+A));else if(P<0)P=0,k>=0?(m=0,T=A):-k>=_?(m=1,T=_+2*k+A):(m=-k/_,T=k*m+A);else{var B=1/M;m*=B,P*=B,T=m*(_*m+b*P+2*k)+P*(b*m+v*P+2*E)+A}else{var F,U,G,j;m<0?(F=b+k,U=v+E,U>F?(G=U-F,j=_-2*b+v,G>=j?(m=1,P=0,T=_+2*k+A):(m=G/j,P=1-m,T=m*(_*m+b*P+2*k)+P*(b*m+v*P+2*E)+A)):(m=0,U<=0?(P=1,T=v+2*E+A):E>=0?(P=0,T=A):(P=-E/v,T=E*P+A))):P<0?(F=b+E,U=_+k,U>F?(G=U-F,j=_-2*b+v,G>=j?(P=1,m=0,T=v+2*E+A):(P=G/j,m=1-P,T=m*(_*m+b*P+2*k)+P*(b*m+v*P+2*E)+A)):(P=0,U<=0?(m=1,T=_+2*k+A):k>=0?(m=0,T=A):(m=-k/_,T=k*m+A))):(G=v+E-b-k,G<=0?(m=0,P=1,T=v+2*E+A):(j=_-2*b+v,G>=j?(m=1,P=0,T=_+2*k+A):(m=G/j,P=1-m,T=m*(_*m+b*P+2*k)+P*(b*m+v*P+2*E)+A)))}for(var W=1-m-P,p=0;pE)for(v=E;vk)for(v=k;v=0){for(var W=j.type.charAt(j.type.length-1)|0,N=new Array(W),H=0;H=0;)re+=1;U[G]=re}var ae=new Array(E.length);function be(){x.program=f.program(C,x._vref,x._fref,F,U);for(var ze=0;zeDe&&qe>0){var ce=(ye[qe][0]-De)/(ye[qe][0]-ye[qe-1][0]);return ye[qe][1]*(1-ce)+ce*ye[qe-1][1]}}return 1}var H=[0,0,0],re={showSurface:!1,showContour:!1,projections:[T.slice(),T.slice(),T.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function ae(De,ye){var qe,ce,Je,nt=ye.axes&&ye.axes.lastCubeProps.axis||H,gt=ye.showSurface,Nt=ye.showContour;for(qe=0;qe<3;++qe)for(gt=gt||ye.surfaceProject[qe],ce=0;ce<3;++ce)Nt=Nt||ye.contourProject[qe][ce];for(qe=0;qe<3;++qe){var at=re.projections[qe];for(ce=0;ce<16;++ce)at[ce]=0;for(ce=0;ce<4;++ce)at[5*ce]=1;at[5*qe]=0,at[12+qe]=ye.axesBounds[+(nt[qe]>0)][qe],v(at,De.model,at);var Ke=re.clipBounds[qe];for(Je=0;Je<2;++Je)for(ce=0;ce<3;++ce)Ke[Je][ce]=De.clipBounds[Je][ce];Ke[0][qe]=-1e8,Ke[1][qe]=1e8}return re.showSurface=gt,re.showContour=Nt,re}var be={model:T,view:T,projection:T,inverseModel:T.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},ze=T.slice(),Ce=[1,0,0,0,1,0,0,0,1];function de(De,ye){De=De||{};var qe=this.gl;qe.disable(qe.CULL_FACE),this._colorMap.bind(0);var ce=be;ce.model=De.model||T,ce.view=De.view||T,ce.projection=De.projection||T,ce.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],ce.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],ce.objectOffset=this.objectOffset,ce.contourColor=this.contourColor[0],ce.inverseModel=k(ce.inverseModel,ce.model);for(var Je=0;Je<2;++Je)for(var nt=ce.clipBounds[Je],gt=0;gt<3;++gt)nt[gt]=Math.min(Math.max(this.clipBounds[Je][gt],-1e8),1e8);ce.kambient=this.ambientLight,ce.kdiffuse=this.diffuseLight,ce.kspecular=this.specularLight,ce.roughness=this.roughness,ce.fresnel=this.fresnel,ce.opacity=this.opacity,ce.height=0,ce.permutation=Ce,ce.vertexColor=this.vertexColor;var Nt=ze;for(v(Nt,ce.view,ce.model),v(Nt,ce.projection,Nt),k(Nt,Nt),Je=0;Je<3;++Je)ce.eyePosition[Je]=Nt[12+Je]/Nt[15];var at=Nt[15];for(Je=0;Je<3;++Je)at+=this.lightPosition[Je]*Nt[4*Je+3];for(Je=0;Je<3;++Je){var Ke=Nt[12+Je];for(gt=0;gt<3;++gt)Ke+=Nt[4*gt+Je]*this.lightPosition[gt];ce.lightPosition[Je]=Ke/at}var Ct=ae(ce,this);if(Ct.showSurface){for(this._shader.bind(),this._shader.uniforms=ce,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(qe.TRIANGLES,this._vertexCount),Je=0;Je<3;++Je)!this.surfaceProject[Je]||!this.vertexCount||(this._shader.uniforms.model=Ct.projections[Je],this._shader.uniforms.clipBounds=Ct.clipBounds[Je],this._vao.draw(qe.TRIANGLES,this._vertexCount));this._vao.unbind()}if(Ct.showContour){var wt=this._contourShader;ce.kambient=1,ce.kdiffuse=0,ce.kspecular=0,ce.opacity=1,wt.bind(),wt.uniforms=ce;var St=this._contourVAO;for(St.bind(),Je=0;Je<3;++Je)for(wt.uniforms.permutation=F[Je],qe.lineWidth(this.contourWidth[Je]*this.pixelRatio),gt=0;gt>4)/16)/255,Je=Math.floor(ce),nt=ce-Je,gt=ye[1]*(De.value[1]+(De.value[2]&15)/16)/255,Nt=Math.floor(gt),at=gt-Nt;Je+=1,Nt+=1;var Ke=qe.position;Ke[0]=Ke[1]=Ke[2]=0;for(var Ct=0;Ct<2;++Ct)for(var wt=Ct?nt:1-nt,St=0;St<2;++St)for(var Dt=St?at:1-at,Zt=Je+Ct,Et=Nt+St,Te=wt*Dt,ot=0;ot<3;++ot)Ke[ot]+=this._field[ot].get(Zt,Et)*Te;for(var Tt=this._pickResult.level,vt=0;vt<3;++vt)if(Tt[vt]=E.le(this.contourLevels[vt],Ke[vt]),Tt[vt]<0)this.contourLevels[vt].length>0&&(Tt[vt]=0);else if(Tt[vt]Math.abs(He-Ke[vt])&&(Tt[vt]+=1)}for(qe.index[0]=nt<.5?Je:Je+1,qe.index[1]=at<.5?Nt:Nt+1,qe.uv[0]=ce/ye[0],qe.uv[1]=gt/ye[1],ot=0;ot<3;++ot)qe.dataCoordinate[ot]=this._field[ot].get(qe.index[0],qe.index[1]);return qe},W.padField=function(De,ye){var qe=ye.shape.slice(),ce=De.shape.slice();d.assign(De.lo(1,1).hi(qe[0],qe[1]),ye),d.assign(De.lo(1).hi(qe[0],1),ye.hi(qe[0],1)),d.assign(De.lo(1,ce[1]-1).hi(qe[0],1),ye.lo(0,qe[1]-1).hi(qe[0],1)),d.assign(De.lo(0,1).hi(1,qe[1]),ye.hi(1)),d.assign(De.lo(ce[0]-1,1).hi(1,qe[1]),ye.lo(qe[0]-1)),De.set(0,0,ye.get(0,0)),De.set(0,ce[1]-1,ye.get(0,qe[1]-1)),De.set(ce[0]-1,0,ye.get(qe[0]-1,0)),De.set(ce[0]-1,ce[1]-1,ye.get(qe[0]-1,qe[1]-1))};function ke(De,ye){return Array.isArray(De)?[ye(De[0]),ye(De[1]),ye(De[2])]:[ye(De),ye(De),ye(De)]}function Ee(De){return Array.isArray(De)?De.length===3?[De[0],De[1],De[2],1]:[De[0],De[1],De[2],De[3]]:[0,0,0,1]}function Me(De){if(Array.isArray(De)){if(Array.isArray(De))return[Ee(De[0]),Ee(De[1]),Ee(De[2])];var ye=Ee(De);return[ye.slice(),ye.slice(),ye.slice()]}}W.update=function(De){De=De||{},this.objectOffset=De.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in De&&(this.contourWidth=ke(De.contourWidth,Number)),"showContour"in De&&(this.showContour=ke(De.showContour,Boolean)),"showSurface"in De&&(this.showSurface=!!De.showSurface),"contourTint"in De&&(this.contourTint=ke(De.contourTint,Boolean)),"contourColor"in De&&(this.contourColor=Me(De.contourColor)),"contourProject"in De&&(this.contourProject=ke(De.contourProject,function(Vi){return ke(Vi,Boolean)})),"surfaceProject"in De&&(this.surfaceProject=De.surfaceProject),"dynamicColor"in De&&(this.dynamicColor=Me(De.dynamicColor)),"dynamicTint"in De&&(this.dynamicTint=ke(De.dynamicTint,Number)),"dynamicWidth"in De&&(this.dynamicWidth=ke(De.dynamicWidth,Number)),"opacity"in De&&(this.opacity=De.opacity),"opacityscale"in De&&(this.opacityscale=De.opacityscale),"colorBounds"in De&&(this.colorBounds=De.colorBounds),"vertexColor"in De&&(this.vertexColor=De.vertexColor?1:0),"colormap"in De&&this._colorMap.setPixels(this.genColormap(De.colormap,this.opacityscale));var ye=De.field||De.coords&&De.coords[2]||null,qe=!1;if(ye||(this._field[2].shape[0]||this._field[2].shape[2]?ye=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):ye=this._field[2].hi(0,0)),"field"in De||"coords"in De){var ce=(ye.shape[0]+2)*(ye.shape[1]+2);ce>this._field[2].data.length&&(c.freeFloat(this._field[2].data),this._field[2].data=c.mallocFloat(s.nextPow2(ce))),this._field[2]=_(this._field[2].data,[ye.shape[0]+2,ye.shape[1]+2]),this.padField(this._field[2],ye),this.shape=ye.shape.slice();for(var Je=this.shape,nt=0;nt<2;++nt)this._field[2].size>this._field[nt].data.length&&(c.freeFloat(this._field[nt].data),this._field[nt].data=c.mallocFloat(this._field[2].size)),this._field[nt]=_(this._field[nt].data,[Je[0]+2,Je[1]+2]);if(De.coords){var gt=De.coords;if(!Array.isArray(gt)||gt.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(nt=0;nt<2;++nt){var Nt=gt[nt];for(St=0;St<2;++St)if(Nt.shape[St]!==Je[St])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[nt],Nt)}}else if(De.ticks){var at=De.ticks;if(!Array.isArray(at)||at.length!==2)throw new Error("gl-surface: invalid ticks");for(nt=0;nt<2;++nt){var Ke=at[nt];if((Array.isArray(Ke)||Ke.length)&&(Ke=_(Ke)),Ke.shape[0]!==Je[nt])throw new Error("gl-surface: invalid tick length");var Ct=_(Ke.data,Je);Ct.stride[nt]=Ke.stride[0],Ct.stride[nt^1]=0,this.padField(this._field[nt],Ct)}}else{for(nt=0;nt<2;++nt){var wt=[0,0];wt[nt]=1,this._field[nt]=_(this._field[nt].data,[Je[0]+2,Je[1]+2],wt,0)}this._field[0].set(0,0,0);for(var St=0;St0){for(var gi=0;gi<5;++gi)Br.pop();Ie-=1}continue e}}}Di.push(Ie)}this._contourOffsets[Er]=pi,this._contourCounts[Er]=Di}var ki=c.mallocFloat(Br.length);for(nt=0;nt=0&&(M=x|0,C+=P*M,m-=M),new E(this.data,m,P,C)},A.step=function(x){var C=this.shape[0],M=this.stride[0],m=this.offset,P=0,T=Math.ceil;return typeof x=="number"&&(P=x|0,P<0?(m+=M*(C-1),C=T(-C/P)):C=T(C/P),M*=P),new E(this.data,C,M,m)},A.transpose=function(x){x=x===void 0?0:x|0;var C=this.shape,M=this.stride;return new E(this.data,C[x],M[x],this.offset)},A.pick=function(x){var C=[],M=[],m=this.offset;typeof x=="number"&&x>=0?m=m+this.stride[0]*x|0:(C.push(this.shape[0]),M.push(this.stride[0]));var P=v[C.length+1];return P(this.data,C,M,m)},function(x,C,M,m){return new E(x,C[0],M[0],m)}},2:function(b,v,k){function E(L,x,C,M,m,P){this.data=L,this.shape=[x,C],this.stride=[M,m],this.offset=P|0}var A=E.prototype;return A.dtype=b,A.dimension=2,Object.defineProperty(A,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(A,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),A.set=function(x,C,M){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C,M):this.data[this.offset+this.stride[0]*x+this.stride[1]*C]=M},A.get=function(x,C){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C):this.data[this.offset+this.stride[0]*x+this.stride[1]*C]},A.index=function(x,C){return this.offset+this.stride[0]*x+this.stride[1]*C},A.hi=function(x,C){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,this.stride[0],this.stride[1],this.offset)},A.lo=function(x,C){var M=this.offset,m=0,P=this.shape[0],T=this.shape[1],B=this.stride[0],F=this.stride[1];return typeof x=="number"&&x>=0&&(m=x|0,M+=B*m,P-=m),typeof C=="number"&&C>=0&&(m=C|0,M+=F*m,T-=m),new E(this.data,P,T,B,F,M)},A.step=function(x,C){var M=this.shape[0],m=this.shape[1],P=this.stride[0],T=this.stride[1],B=this.offset,F=0,U=Math.ceil;return typeof x=="number"&&(F=x|0,F<0?(B+=P*(M-1),M=U(-M/F)):M=U(M/F),P*=F),typeof C=="number"&&(F=C|0,F<0?(B+=T*(m-1),m=U(-m/F)):m=U(m/F),T*=F),new E(this.data,M,m,P,T,B)},A.transpose=function(x,C){x=x===void 0?0:x|0,C=C===void 0?1:C|0;var M=this.shape,m=this.stride;return new E(this.data,M[x],M[C],m[x],m[C],this.offset)},A.pick=function(x,C){var M=[],m=[],P=this.offset;typeof x=="number"&&x>=0?P=P+this.stride[0]*x|0:(M.push(this.shape[0]),m.push(this.stride[0])),typeof C=="number"&&C>=0?P=P+this.stride[1]*C|0:(M.push(this.shape[1]),m.push(this.stride[1]));var T=v[M.length+1];return T(this.data,M,m,P)},function(x,C,M,m){return new E(x,C[0],C[1],M[0],M[1],m)}},3:function(b,v,k){function E(L,x,C,M,m,P,T,B){this.data=L,this.shape=[x,C,M],this.stride=[m,P,T],this.offset=B|0}var A=E.prototype;return A.dtype=b,A.dimension=3,Object.defineProperty(A,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(A,"order",{get:function(){var x=Math.abs(this.stride[0]),C=Math.abs(this.stride[1]),M=Math.abs(this.stride[2]);return x>C?C>M?[2,1,0]:x>M?[1,2,0]:[1,0,2]:x>M?[2,0,1]:M>C?[0,1,2]:[0,2,1]}}),A.set=function(x,C,M,m){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M,m):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M]=m},A.get=function(x,C,M){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M]},A.index=function(x,C,M){return this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M},A.hi=function(x,C,M){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,typeof M!="number"||M<0?this.shape[2]:M|0,this.stride[0],this.stride[1],this.stride[2],this.offset)},A.lo=function(x,C,M){var m=this.offset,P=0,T=this.shape[0],B=this.shape[1],F=this.shape[2],U=this.stride[0],G=this.stride[1],j=this.stride[2];return typeof x=="number"&&x>=0&&(P=x|0,m+=U*P,T-=P),typeof C=="number"&&C>=0&&(P=C|0,m+=G*P,B-=P),typeof M=="number"&&M>=0&&(P=M|0,m+=j*P,F-=P),new E(this.data,T,B,F,U,G,j,m)},A.step=function(x,C,M){var m=this.shape[0],P=this.shape[1],T=this.shape[2],B=this.stride[0],F=this.stride[1],U=this.stride[2],G=this.offset,j=0,W=Math.ceil;return typeof x=="number"&&(j=x|0,j<0?(G+=B*(m-1),m=W(-m/j)):m=W(m/j),B*=j),typeof C=="number"&&(j=C|0,j<0?(G+=F*(P-1),P=W(-P/j)):P=W(P/j),F*=j),typeof M=="number"&&(j=M|0,j<0?(G+=U*(T-1),T=W(-T/j)):T=W(T/j),U*=j),new E(this.data,m,P,T,B,F,U,G)},A.transpose=function(x,C,M){x=x===void 0?0:x|0,C=C===void 0?1:C|0,M=M===void 0?2:M|0;var m=this.shape,P=this.stride;return new E(this.data,m[x],m[C],m[M],P[x],P[C],P[M],this.offset)},A.pick=function(x,C,M){var m=[],P=[],T=this.offset;typeof x=="number"&&x>=0?T=T+this.stride[0]*x|0:(m.push(this.shape[0]),P.push(this.stride[0])),typeof C=="number"&&C>=0?T=T+this.stride[1]*C|0:(m.push(this.shape[1]),P.push(this.stride[1])),typeof M=="number"&&M>=0?T=T+this.stride[2]*M|0:(m.push(this.shape[2]),P.push(this.stride[2]));var B=v[m.length+1];return B(this.data,m,P,T)},function(x,C,M,m){return new E(x,C[0],C[1],C[2],M[0],M[1],M[2],m)}},4:function(b,v,k){function E(L,x,C,M,m,P,T,B,F,U){this.data=L,this.shape=[x,C,M,m],this.stride=[P,T,B,F],this.offset=U|0}var A=E.prototype;return A.dtype=b,A.dimension=4,Object.defineProperty(A,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(A,"order",{get:k}),A.set=function(x,C,M,m,P){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*m,P):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*m]=P},A.get=function(x,C,M,m){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*m):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*m]},A.index=function(x,C,M,m){return this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*m},A.hi=function(x,C,M,m){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,typeof M!="number"||M<0?this.shape[2]:M|0,typeof m!="number"||m<0?this.shape[3]:m|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},A.lo=function(x,C,M,m){var P=this.offset,T=0,B=this.shape[0],F=this.shape[1],U=this.shape[2],G=this.shape[3],j=this.stride[0],W=this.stride[1],N=this.stride[2],H=this.stride[3];return typeof x=="number"&&x>=0&&(T=x|0,P+=j*T,B-=T),typeof C=="number"&&C>=0&&(T=C|0,P+=W*T,F-=T),typeof M=="number"&&M>=0&&(T=M|0,P+=N*T,U-=T),typeof m=="number"&&m>=0&&(T=m|0,P+=H*T,G-=T),new E(this.data,B,F,U,G,j,W,N,H,P)},A.step=function(x,C,M,m){var P=this.shape[0],T=this.shape[1],B=this.shape[2],F=this.shape[3],U=this.stride[0],G=this.stride[1],j=this.stride[2],W=this.stride[3],N=this.offset,H=0,re=Math.ceil;return typeof x=="number"&&(H=x|0,H<0?(N+=U*(P-1),P=re(-P/H)):P=re(P/H),U*=H),typeof C=="number"&&(H=C|0,H<0?(N+=G*(T-1),T=re(-T/H)):T=re(T/H),G*=H),typeof M=="number"&&(H=M|0,H<0?(N+=j*(B-1),B=re(-B/H)):B=re(B/H),j*=H),typeof m=="number"&&(H=m|0,H<0?(N+=W*(F-1),F=re(-F/H)):F=re(F/H),W*=H),new E(this.data,P,T,B,F,U,G,j,W,N)},A.transpose=function(x,C,M,m){x=x===void 0?0:x|0,C=C===void 0?1:C|0,M=M===void 0?2:M|0,m=m===void 0?3:m|0;var P=this.shape,T=this.stride;return new E(this.data,P[x],P[C],P[M],P[m],T[x],T[C],T[M],T[m],this.offset)},A.pick=function(x,C,M,m){var P=[],T=[],B=this.offset;typeof x=="number"&&x>=0?B=B+this.stride[0]*x|0:(P.push(this.shape[0]),T.push(this.stride[0])),typeof C=="number"&&C>=0?B=B+this.stride[1]*C|0:(P.push(this.shape[1]),T.push(this.stride[1])),typeof M=="number"&&M>=0?B=B+this.stride[2]*M|0:(P.push(this.shape[2]),T.push(this.stride[2])),typeof m=="number"&&m>=0?B=B+this.stride[3]*m|0:(P.push(this.shape[3]),T.push(this.stride[3]));var F=v[P.length+1];return F(this.data,P,T,B)},function(x,C,M,m){return new E(x,C[0],C[1],C[2],C[3],M[0],M[1],M[2],M[3],m)}},5:function(v,k,E){function A(x,C,M,m,P,T,B,F,U,G,j,W){this.data=x,this.shape=[C,M,m,P,T],this.stride=[B,F,U,G,j],this.offset=W|0}var L=A.prototype;return L.dtype=v,L.dimension=5,Object.defineProperty(L,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(L,"order",{get:E}),L.set=function(C,M,m,P,T,B){return v==="generic"?this.data.set(this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*m+this.stride[3]*P+this.stride[4]*T,B):this.data[this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*m+this.stride[3]*P+this.stride[4]*T]=B},L.get=function(C,M,m,P,T){return v==="generic"?this.data.get(this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*m+this.stride[3]*P+this.stride[4]*T):this.data[this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*m+this.stride[3]*P+this.stride[4]*T]},L.index=function(C,M,m,P,T){return this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*m+this.stride[3]*P+this.stride[4]*T},L.hi=function(C,M,m,P,T){return new A(this.data,typeof C!="number"||C<0?this.shape[0]:C|0,typeof M!="number"||M<0?this.shape[1]:M|0,typeof m!="number"||m<0?this.shape[2]:m|0,typeof P!="number"||P<0?this.shape[3]:P|0,typeof T!="number"||T<0?this.shape[4]:T|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},L.lo=function(C,M,m,P,T){var B=this.offset,F=0,U=this.shape[0],G=this.shape[1],j=this.shape[2],W=this.shape[3],N=this.shape[4],H=this.stride[0],re=this.stride[1],ae=this.stride[2],be=this.stride[3],ze=this.stride[4];return typeof C=="number"&&C>=0&&(F=C|0,B+=H*F,U-=F),typeof M=="number"&&M>=0&&(F=M|0,B+=re*F,G-=F),typeof m=="number"&&m>=0&&(F=m|0,B+=ae*F,j-=F),typeof P=="number"&&P>=0&&(F=P|0,B+=be*F,W-=F),typeof T=="number"&&T>=0&&(F=T|0,B+=ze*F,N-=F),new A(this.data,U,G,j,W,N,H,re,ae,be,ze,B)},L.step=function(C,M,m,P,T){var B=this.shape[0],F=this.shape[1],U=this.shape[2],G=this.shape[3],j=this.shape[4],W=this.stride[0],N=this.stride[1],H=this.stride[2],re=this.stride[3],ae=this.stride[4],be=this.offset,ze=0,Ce=Math.ceil;return typeof C=="number"&&(ze=C|0,ze<0?(be+=W*(B-1),B=Ce(-B/ze)):B=Ce(B/ze),W*=ze),typeof M=="number"&&(ze=M|0,ze<0?(be+=N*(F-1),F=Ce(-F/ze)):F=Ce(F/ze),N*=ze),typeof m=="number"&&(ze=m|0,ze<0?(be+=H*(U-1),U=Ce(-U/ze)):U=Ce(U/ze),H*=ze),typeof P=="number"&&(ze=P|0,ze<0?(be+=re*(G-1),G=Ce(-G/ze)):G=Ce(G/ze),re*=ze),typeof T=="number"&&(ze=T|0,ze<0?(be+=ae*(j-1),j=Ce(-j/ze)):j=Ce(j/ze),ae*=ze),new A(this.data,B,F,U,G,j,W,N,H,re,ae,be)},L.transpose=function(C,M,m,P,T){C=C===void 0?0:C|0,M=M===void 0?1:M|0,m=m===void 0?2:m|0,P=P===void 0?3:P|0,T=T===void 0?4:T|0;var B=this.shape,F=this.stride;return new A(this.data,B[C],B[M],B[m],B[P],B[T],F[C],F[M],F[m],F[P],F[T],this.offset)},L.pick=function(C,M,m,P,T){var B=[],F=[],U=this.offset;typeof C=="number"&&C>=0?U=U+this.stride[0]*C|0:(B.push(this.shape[0]),F.push(this.stride[0])),typeof M=="number"&&M>=0?U=U+this.stride[1]*M|0:(B.push(this.shape[1]),F.push(this.stride[1])),typeof m=="number"&&m>=0?U=U+this.stride[2]*m|0:(B.push(this.shape[2]),F.push(this.stride[2])),typeof P=="number"&&P>=0?U=U+this.stride[3]*P|0:(B.push(this.shape[3]),F.push(this.stride[3])),typeof T=="number"&&T>=0?U=U+this.stride[4]*T|0:(B.push(this.shape[4]),F.push(this.stride[4]));var G=k[B.length+1];return G(this.data,B,F,U)},function(C,M,m,P){return new A(C,M[0],M[1],M[2],M[3],M[4],m[0],m[1],m[2],m[3],m[4],P)}}};function h(b,v){var k=v===-1?"T":String(v),E=c[k];return v===-1?E(b):v===0?E(b,p[b][0]):E(b,p[b],f)}function d(b){if(s(b))return"buffer";if(u)switch(Object.prototype.toString.call(b)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(b)?"array":"generic"}var p={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function _(b,v,k,E){if(b===void 0){var m=p.array[0];return m([])}else typeof b=="number"&&(b=[b]);v===void 0&&(v=[b.length]);var A=v.length;if(k===void 0){k=new Array(A);for(var L=A-1,x=1;L>=0;--L)k[L]=x,x*=v[L]}if(E===void 0){E=0;for(var L=0;L1e-6?(k[0]=A/M,k[1]=L/M,k[2]=x/M,k[3]=C/M):(k[0]=k[1]=k[2]=0,k[3]=1)}function _(k,E,A){this.radius=s([A]),this.center=s(E),this.rotation=s(k),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var b=_.prototype;b.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},b.recalcMatrix=function(k){this.radius.curve(k),this.center.curve(k),this.rotation.curve(k);var E=this.computedRotation;p(E,E);var A=this.computedMatrix;l(A,E);var L=this.computedCenter,x=this.computedEye,C=this.computedUp,M=Math.exp(this.computedRadius[0]);x[0]=L[0]+M*A[2],x[1]=L[1]+M*A[6],x[2]=L[2]+M*A[10],C[0]=A[1],C[1]=A[5],C[2]=A[9];for(var m=0;m<3;++m){for(var P=0,T=0;T<3;++T)P+=A[m+4*T]*x[T];A[12+m]=-P}},b.getMatrix=function(k,E){this.recalcMatrix(k);var A=this.computedMatrix;if(E){for(var L=0;L<16;++L)E[L]=A[L];return E}return A},b.idle=function(k){this.center.idle(k),this.radius.idle(k),this.rotation.idle(k)},b.flush=function(k){this.center.flush(k),this.radius.flush(k),this.rotation.flush(k)},b.pan=function(k,E,A,L){E=E||0,A=A||0,L=L||0,this.recalcMatrix(k);var x=this.computedMatrix,C=x[1],M=x[5],m=x[9],P=h(C,M,m);C/=P,M/=P,m/=P;var T=x[0],B=x[4],F=x[8],U=T*C+B*M+F*m;T-=C*U,B-=M*U,F-=m*U;var G=h(T,B,F);T/=G,B/=G,F/=G;var j=x[2],W=x[6],N=x[10],H=j*C+W*M+N*m,re=j*T+W*B+N*F;j-=H*C+re*T,W-=H*M+re*B,N-=H*m+re*F;var ae=h(j,W,N);j/=ae,W/=ae,N/=ae;var be=T*E+C*A,ze=B*E+M*A,Ce=F*E+m*A;this.center.move(k,be,ze,Ce);var de=Math.exp(this.computedRadius[0]);de=Math.max(1e-4,de+L),this.radius.set(k,Math.log(de))},b.rotate=function(k,E,A,L){this.recalcMatrix(k),E=E||0,A=A||0;var x=this.computedMatrix,C=x[0],M=x[4],m=x[8],P=x[1],T=x[5],B=x[9],F=x[2],U=x[6],G=x[10],j=E*C+A*P,W=E*M+A*T,N=E*m+A*B,H=-(U*N-G*W),re=-(G*j-F*N),ae=-(F*W-U*j),be=Math.sqrt(Math.max(0,1-Math.pow(H,2)-Math.pow(re,2)-Math.pow(ae,2))),ze=d(H,re,ae,be);ze>1e-6?(H/=ze,re/=ze,ae/=ze,be/=ze):(H=re=ae=0,be=1);var Ce=this.computedRotation,de=Ce[0],te=Ce[1],ke=Ce[2],Ee=Ce[3],Me=de*be+Ee*H+te*ae-ke*re,Ue=te*be+Ee*re+ke*H-de*ae,De=ke*be+Ee*ae+de*re-te*H,ye=Ee*be-de*H-te*re-ke*ae;if(L){H=F,re=U,ae=G;var qe=Math.sin(L)/h(H,re,ae);H*=qe,re*=qe,ae*=qe,be=Math.cos(E),Me=Me*be+ye*H+Ue*ae-De*re,Ue=Ue*be+ye*re+De*H-Me*ae,De=De*be+ye*ae+Me*re-Ue*H,ye=ye*be-Me*H-Ue*re-De*ae}var ce=d(Me,Ue,De,ye);ce>1e-6?(Me/=ce,Ue/=ce,De/=ce,ye/=ce):(Me=Ue=De=0,ye=1),this.rotation.set(k,Me,Ue,De,ye)},b.lookAt=function(k,E,A,L){this.recalcMatrix(k),A=A||this.computedCenter,E=E||this.computedEye,L=L||this.computedUp;var x=this.computedMatrix;u(x,E,A,L);var C=this.computedRotation;c(C,x[0],x[1],x[2],x[4],x[5],x[6],x[8],x[9],x[10]),p(C,C),this.rotation.set(k,C[0],C[1],C[2],C[3]);for(var M=0,m=0;m<3;++m)M+=Math.pow(A[m]-E[m],2);this.radius.set(k,.5*Math.log(Math.max(M,1e-6))),this.center.set(k,A[0],A[1],A[2])},b.translate=function(k,E,A,L){this.center.move(k,E||0,A||0,L||0)},b.setMatrix=function(k,E){var A=this.computedRotation;c(A,E[0],E[1],E[2],E[4],E[5],E[6],E[8],E[9],E[10]),p(A,A),this.rotation.set(k,A[0],A[1],A[2],A[3]);var L=this.computedMatrix;f(L,E);var x=L[15];if(Math.abs(x)>1e-6){var C=L[12]/x,M=L[13]/x,m=L[14]/x;this.recalcMatrix(k);var P=Math.exp(this.computedRadius[0]);this.center.set(k,C-L[2]*P,M-L[6]*P,m-L[10]*P),this.radius.idle(k)}else this.center.idle(k),this.radius.idle(k)},b.setDistance=function(k,E){E>0&&this.radius.set(k,Math.log(E))},b.setDistanceLimits=function(k,E){k>0?k=Math.log(k):k=-1/0,E>0?E=Math.log(E):E=1/0,E=Math.max(E,k),this.radius.bounds[0][0]=k,this.radius.bounds[1][0]=E},b.getDistanceLimits=function(k){var E=this.radius.bounds;return k?(k[0]=Math.exp(E[0][0]),k[1]=Math.exp(E[1][0]),k):[Math.exp(E[0][0]),Math.exp(E[1][0])]},b.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},b.fromJSON=function(k){var E=this.lastT(),A=k.center;A&&this.center.set(E,A[0],A[1],A[2]);var L=k.rotation;L&&this.rotation.set(E,L[0],L[1],L[2],L[3]);var x=k.distance;x&&x>0&&this.radius.set(E,Math.log(x)),this.setDistanceLimits(k.zoomMin,k.zoomMax)};function v(k){k=k||{};var E=k.center||[0,0,0],A=k.rotation||[0,0,0,1],L=k.radius||1;E=[].slice.call(E,0,3),A=[].slice.call(A,0,4),p(A,A);var x=new _(A,E,Math.log(L));return x.setDistanceLimits(k.zoomMin,k.zoomMax),("eye"in k||"up"in k)&&x.lookAt(0,k.eye,k.center,k.up),x}},9994:function(i,a,o){"use strict";var s=o(9618),u=o(8277);i.exports=function(f,c){for(var h=[],d=f,p=1;Array.isArray(d);)h.push(d.length),p*=d.length,d=d[0];return h.length===0?s():(c||(c=s(new Float64Array(p),h)),u(c,f),c)}}},t={};function r(i){var a=t[i];if(a!==void 0)return a.exports;var o=t[i]={id:i,loaded:!1,exports:{}};return e[i].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}(function(){r.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch(i){if(typeof window=="object")return window}}()})(),function(){r.nmd=function(i){return i.paths=[],i.children||(i.children=[]),i}}();var n=r(1964);Lze.exports=n})()});var MX=Ae((dyr,Pze)=>{"use strict";Pze.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var Dze=Ae((pyr,Rze)=>{"use strict";var zze=MX();Rze.exports=qIt;var Ize={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function qIt(e){var t,r=[],n=1,i;if(typeof e=="string")if(e=e.toLowerCase(),zze[e])r=zze[e].slice(),i="rgb";else if(e==="transparent")n=0,i="rgb",r=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var a=e.slice(1),o=a.length,s=o<=4;n=1,s?(r=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],o===4&&(n=parseInt(a[3]+a[3],16)/255)):(r=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],o===8&&(n=parseInt(a[6]+a[7],16)/255)),r[0]||(r[0]=0),r[1]||(r[1]=0),r[2]||(r[2]=0),i="rgb"}else if(t=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var u=t[1],l=u==="rgb",a=u.replace(/a$/,"");i=a;var o=a==="cmyk"?4:a==="gray"?1:3;r=t[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(h,d){if(/%$/.test(h))return d===o?parseFloat(h)/100:a==="rgb"?parseFloat(h)*255/100:parseFloat(h);if(a[d]==="h"){if(/deg$/.test(h))return parseFloat(h);if(Ize[h]!==void 0)return Ize[h]}return parseFloat(h)}),u===a&&r.push(1),n=l||r[o]===void 0?1:r[o],r=r.slice(0,o)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(r=e.match(/([0-9]+)/g).map(function(f){return parseFloat(f)}),i=e.match(/([a-z])/ig).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(r=[e[0],e[1],e[2]],i="rgb",n=e.length===4?e[3]:1):e instanceof Object&&(e.r!=null||e.red!=null||e.R!=null?(i="rgb",r=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(i="hsl",r=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),n=e.a||e.alpha||e.opacity||1,e.opacity!=null&&(n/=100)):(i="rgb",r=[e>>>16,(e&65280)>>>8,e&255]);return{space:i,values:r,alpha:n}}});var Bze=Ae((vyr,Fze)=>{"use strict";var NIt=Dze();Fze.exports=function(t){Array.isArray(t)&&t.raw&&(t=String.raw.apply(null,arguments));var r,n,i,a=NIt(t);if(!a.space)return[];var o=[0,0,0],s=a.space[0]==="h"?[360,100,100]:[255,255,255];return r=Array(3),r[0]=Math.min(Math.max(a.values[0],o[0]),s[0]),r[1]=Math.min(Math.max(a.values[1],o[1]),s[1]),r[2]=Math.min(Math.max(a.values[2],o[2]),s[2]),a.space[0]==="h"&&(r=UIt(r)),r.push(Math.min(Math.max(a.alpha,0),1)),r};function UIt(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a,o,s,u,l=0;if(r===0)return u=n*255,[u,u,u];for(a=n<.5?n*(1+r):n+r-n*r,i=2*n-a,s=[0,0,0];l<3;)o=t+1/3*-(l-1),o<0?o++:o>1&&o--,u=6*o<1?i+(a-i)*6*o:2*o<1?a:3*o<2?i+(a-i)*(2/3-o)*6:i,s[l++]=u*255;return s}});var Z4=Ae((myr,Oze)=>{Oze.exports=VIt;function VIt(e,t,r){return tr?r:e:et?t:e}});var Y6=Ae((yyr,qze)=>{qze.exports=function(e){switch(e){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}});var J_=Ae((gyr,Nze)=>{"use strict";var GIt=Bze(),K6=Z4(),HIt=Y6();Nze.exports=function(t,r){(r==="float"||!r)&&(r="array"),r==="uint"&&(r="uint8"),r==="uint_clamped"&&(r="uint8_clamped");var n=HIt(r),i=new n(4),a=r!=="uint8"&&r!=="uint8_clamped";return(!t.length||typeof t=="string")&&(t=GIt(t),t[0]/=255,t[1]/=255,t[2]/=255),WIt(t)?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:255,a&&(i[0]/=255,i[1]/=255,i[2]/=255,i[3]/=255),i):(a?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:1):(i[0]=K6(Math.floor(t[0]*255),0,255),i[1]=K6(Math.floor(t[1]*255),0,255),i[2]=K6(Math.floor(t[2]*255),0,255),i[3]=t[3]==null?255:K6(Math.floor(t[3]*255),0,255)),i)};function WIt(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}});var Jg=Ae((_yr,Uze)=>{"use strict";var jIt=J_();function XIt(e){return e?jIt(e):[0,0,0,1]}Uze.exports=XIt});var $g=Ae((xyr,Zze)=>{"use strict";var jze=ku(),ZIt=cd(),J6=J_(),$6=_c(),YIt=Fh().defaultLine,Vze=mp().isArrayOrTypedArray,EX=J6(YIt),Xze=1;function Gze(e,t){var r=e;return r[3]*=t,r}function Hze(e){if(jze(e))return EX;var t=J6(e);return t.length?t:EX}function Wze(e){return jze(e)?e:Xze}function KIt(e,t,r){var n=e.color;n&&n._inputArray&&(n=n._inputArray);var i=Vze(n),a=Vze(t),o=$6.extractOpts(e),s=[],u,l,f,c,h;if(o.colorscale!==void 0?u=$6.makeColorScaleFuncFromTrace(e):u=Hze,i?l=function(p,_){return p[_]===void 0?EX:J6(u(p[_]))}:l=Hze,a?f=function(p,_){return p[_]===void 0?Xze:Wze(p[_])}:f=Wze,i||a)for(var d=0;d{"use strict";Yze.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}});var Q6=Ae((wyr,Kze)=>{"use strict";Kze.exports={circle:"\u25CF","circle-open":"\u25CB",square:"\u25A0","square-open":"\u25A1",diamond:"\u25C6","diamond-open":"\u25C7",cross:"+",x:"\u274C"}});var $ze=Ae((Tyr,Jze)=>{"use strict";var $It=$l();function CX(e,t,r,n){if(!t||!t.visible)return null;for(var i=$It.getComponentMethod("errorbars","makeComputeError")(t),a=new Array(e.length),o=0;o0){var c=n.c2l(l);n._lowerLogErrorBound||(n._lowerLogErrorBound=c),n._lowerErrorBound=Math.min(n._lowerLogErrorBound,c)}}else a[o]=[-s[0]*r,s[1]*r]}return a}function QIt(e){for(var t=0;t{"use strict";var tRt=qd().gl_line3d,Qze=qd().gl_scatter3d,rRt=qd().gl_error3d,iRt=qd().gl_mesh3d,nRt=qd().delaunay_triangulate,Qg=ei(),nIe=Jg(),eF=$g().formatColor,aRt=k3(),LX=kX(),oRt=Q6(),sRt=wu(),lRt=iv().appendArrayPointValue,uRt=$ze();function aIe(e,t){this.scene=e,this.uid=t,this.linePlot=null,this.scatterPlot=null,this.errorBars=null,this.textMarkers=null,this.delaunayMesh=null,this.color=null,this.mode="",this.dataPoints=[],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.textLabels=null,this.data=null}var zX=aIe.prototype;zX.handlePick=function(e){if(e.object&&(e.object===this.linePlot||e.object===this.delaunayMesh||e.object===this.textMarkers||e.object===this.scatterPlot)){var t=e.index=e.data.index;return e.object.highlight&&e.object.highlight(null),this.scatterPlot&&(e.object=this.scatterPlot,this.scatterPlot.highlight(e.data)),e.textLabel="",this.textLabels&&(Qg.isArrayOrTypedArray(this.textLabels)?(this.textLabels[t]||this.textLabels[t]===0)&&(e.textLabel=this.textLabels[t]):e.textLabel=this.textLabels),e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]],!0}};function fRt(e,t,r){var n=(r+1)%3,i=(r+2)%3,a=[],o=[],s;for(s=0;s-1?-1:e.indexOf("right")>-1?1:0}function tIe(e){return e==null?0:e.indexOf("top")>-1?-1:e.indexOf("bottom")>-1?1:0}function hRt(e){var t=0,r=0,n=[t,r];if(Array.isArray(e))for(var i=0;i=0){var l=fRt(s.position,s.delaunayColor,s.delaunayAxis);l.opacity=e.opacity,this.delaunayMesh?this.delaunayMesh.update(l):(l.gl=t,this.delaunayMesh=iRt(l),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)};zX.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())};function mRt(e,t){var r=new aIe(e,t.uid);return r.update(t),r}oIe.exports=mRt});var BX=Ae((Syr,cIe)=>{"use strict";var e1=Zc(),yRt=gc(),FX=nc(),IX=jc().axisHoverFormat,{hovertemplateAttrs:gRt,texttemplateAttrs:_Rt,templatefallbackAttrs:lIe}=Ff(),uIe=Gf(),xRt=kX(),bRt=Q6(),Km=Su().extendFlat,wRt=Sc().overrideAll,fIe=Z1(),TRt=e1.line,V2=e1.marker,ARt=V2.line,SRt=Km({width:TRt.width,dash:{valType:"enumerated",values:fIe(xRt),dflt:"solid"}},FX("line"));function RX(e){return{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}}var DX=cIe.exports=wRt({x:e1.x,y:e1.y,z:{valType:"data_array"},text:Km({},e1.text,{}),texttemplate:_Rt(),texttemplatefallback:lIe({editType:"calc"}),hovertext:Km({},e1.hovertext,{}),hovertemplate:gRt(),hovertemplatefallback:lIe(),xhoverformat:IX("x"),yhoverformat:IX("y"),zhoverformat:IX("z"),mode:Km({},e1.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:RX("x"),y:RX("y"),z:RX("z")},connectgaps:e1.connectgaps,line:SRt,marker:Km({symbol:{valType:"enumerated",values:fIe(bRt),dflt:"circle",arrayOk:!0},size:Km({},V2.size,{dflt:8}),sizeref:V2.sizeref,sizemin:V2.sizemin,sizemode:V2.sizemode,opacity:Km({},V2.opacity,{arrayOk:!1}),colorbar:V2.colorbar,line:Km({width:Km({},ARt.width,{arrayOk:!1})},FX("marker.line"))},FX("marker")),textposition:Km({},e1.textposition,{dflt:"top center"}),textfont:yRt({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"]}),opacity:uIe.opacity,hoverinfo:Km({},uIe.hoverinfo)},"calc","nested");DX.x.editType=DX.y.editType=DX.z.editType="calc+clearAxisTypes"});var pIe=Ae((Myr,dIe)=>{"use strict";var hIe=$l(),MRt=ei(),OX=lc(),ERt=$v(),kRt=I0(),CRt=R0(),LRt=BX();dIe.exports=function(t,r,n,i){function a(d,p){return MRt.coerce(t,r,LRt,d,p)}var o=PRt(t,r,a,i);if(!o){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),a("mode"),OX.hasMarkers(r)&&ERt(t,r,n,i,a,{noSelect:!0,noAngle:!0}),OX.hasLines(r)&&(a("connectgaps"),kRt(t,r,n,i,a)),OX.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),CRt(t,r,i,a,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var s=(r.line||{}).color,u=(r.marker||{}).color;a("surfaceaxis")>=0&&a("surfacecolor",s||u);for(var l=["x","y","z"],f=0;f<3;++f){var c="projection."+l[f];a(c+".show")&&(a(c+".opacity"),a(c+".scale"))}var h=hIe.getComponentMethod("errorbars","supplyDefaults");h(t,r,s||u||n,{axis:"z"}),h(t,r,s||u||n,{axis:"y",inherit:"z"}),h(t,r,s||u||n,{axis:"x",inherit:"z"})};function PRt(e,t,r,n){var i=0,a=r("x"),o=r("y"),s=r("z"),u=hIe.getComponentMethod("calendars","handleTraceDefaults");return u(e,t,["x","y","z"],n),a&&o&&s&&(i=Math.min(a.length,o.length,s.length),t._length=t._xlength=t._ylength=t._zlength=i),i}});var mIe=Ae((Eyr,vIe)=>{"use strict";var zRt=ky(),IRt=D0();vIe.exports=function(t,r){var n=[{x:!1,y:!1,trace:r,t:{}}];return zRt(n,r),IRt(t,r),n}});var gIe=Ae((kyr,yIe)=>{yIe.exports=RRt;function RRt(e,t){if(typeof e!="string")throw new TypeError("must specify type string");if(t=t||{},typeof document=="undefined"&&!t.canvas)return null;var r=t.canvas||document.createElement("canvas");typeof t.width=="number"&&(r.width=t.width),typeof t.height=="number"&&(r.height=t.height);var n=t,i;try{var a=[e];e.indexOf("webgl")===0&&a.push("experimental-"+e);for(var o=0;o{var DRt=gIe();_Ie.exports=function(t){return DRt("webgl",t)}});var qX=Ae((Lyr,wIe)=>{"use strict";var bIe=jl(),FRt=function(){};wIe.exports=function(t){for(var r in t)typeof t[r]=="function"&&(t[r]=FRt);t.destroy=function(){t.container.parentNode.removeChild(t.container)};var n=document.createElement("div");n.className="no-webgl",n.style.cursor="pointer",n.style.fontSize="24px",n.style.color=bIe.defaults[0],n.style.position="absolute",n.style.left=n.style.top="0px",n.style.width=n.style.height="100%",n.style["background-color"]=bIe.lightLine,n.style["z-index"]=30;var i=document.createElement("p");return i.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",i.style.position="relative",i.style.top="50%",i.style.left="50%",i.style.height="30%",i.style.width="50%",i.style.margin="-15% 0 0 -25%",n.appendChild(i),t.container.appendChild(n),t.container.style.background="#FFFFFF",t.container.onclick=function(){window.open("https://get.webgl.org")},!1}});var SIe=Ae((Pyr,AIe)=>{"use strict";var G2=Jg(),BRt=ei(),ORt=["xaxis","yaxis","zaxis"];function TIe(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickFontWeight=["normal","normal","normal","normal"],this.tickFontStyle=["normal","normal","normal","normal"],this.tickFontVariant=["normal","normal","normal","normal"],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["Open Sans","Open Sans","Open Sans"],this.labelSize=[20,20,20],this.labelFontWeight=["normal","normal","normal","normal"],this.labelFontStyle=["normal","normal","normal","normal"],this.labelFontVariant=["normal","normal","normal","normal"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[30,30,30],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[10,10,10],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!0,!0,!0],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._defaultTickPad=this.tickPad.slice(),this._defaultLabelPad=this.labelPad.slice(),this._defaultLineTickLength=this.lineTickLength.slice()}var qRt=TIe.prototype;qRt.merge=function(e,t){for(var r=this,n=0;n<3;++n){var i=t[ORt[n]];if(!i.visible){r.tickEnable[n]=!1,r.labelEnable[n]=!1,r.lineEnable[n]=!1,r.lineTickEnable[n]=!1,r.gridEnable[n]=!1,r.zeroEnable[n]=!1,r.backgroundEnable[n]=!1;continue}r.labels[n]=e._meta?BRt.templateString(i.title.text,e._meta):i.title.text,"font"in i.title&&(i.title.font.color&&(r.labelColor[n]=G2(i.title.font.color)),i.title.font.family&&(r.labelFont[n]=i.title.font.family),i.title.font.size&&(r.labelSize[n]=i.title.font.size),i.title.font.weight&&(r.labelFontWeight[n]=i.title.font.weight),i.title.font.style&&(r.labelFontStyle[n]=i.title.font.style),i.title.font.variant&&(r.labelFontVariant[n]=i.title.font.variant)),"showline"in i&&(r.lineEnable[n]=i.showline),"linecolor"in i&&(r.lineColor[n]=G2(i.linecolor)),"linewidth"in i&&(r.lineWidth[n]=i.linewidth),"showgrid"in i&&(r.gridEnable[n]=i.showgrid),"gridcolor"in i&&(r.gridColor[n]=G2(i.gridcolor)),"gridwidth"in i&&(r.gridWidth[n]=i.gridwidth),i.type==="log"?r.zeroEnable[n]=!1:"zeroline"in i&&(r.zeroEnable[n]=i.zeroline),"zerolinecolor"in i&&(r.zeroLineColor[n]=G2(i.zerolinecolor)),"zerolinewidth"in i&&(r.zeroLineWidth[n]=i.zerolinewidth),"ticks"in i&&i.ticks?r.lineTickEnable[n]=!0:r.lineTickEnable[n]=!1,"ticklen"in i&&(r.lineTickLength[n]=r._defaultLineTickLength[n]=i.ticklen),"tickcolor"in i&&(r.lineTickColor[n]=G2(i.tickcolor)),"tickwidth"in i&&(r.lineTickWidth[n]=i.tickwidth),"tickangle"in i&&(r.tickAngle[n]=i.tickangle==="auto"?-3600:Math.PI*-i.tickangle/180),"showticklabels"in i&&(r.tickEnable[n]=i.showticklabels),"tickfont"in i&&(i.tickfont.color&&(r.tickColor[n]=G2(i.tickfont.color)),i.tickfont.family&&(r.tickFont[n]=i.tickfont.family),i.tickfont.size&&(r.tickSize[n]=i.tickfont.size),i.tickfont.weight&&(r.tickFontWeight[n]=i.tickfont.weight),i.tickfont.style&&(r.tickFontStyle[n]=i.tickfont.style),i.tickfont.variant&&(r.tickFontVariant[n]=i.tickfont.variant)),"mirror"in i?["ticks","all","allticks"].indexOf(i.mirror)!==-1?(r.lineTickMirror[n]=!0,r.lineMirror[n]=!0):i.mirror===!0?(r.lineTickMirror[n]=!1,r.lineMirror[n]=!0):(r.lineTickMirror[n]=!1,r.lineMirror[n]=!1):r.lineMirror[n]=!1,"showbackground"in i&&i.showbackground!==!1?(r.backgroundEnable[n]=!0,r.backgroundColor[n]=G2(i.backgroundcolor)):r.backgroundEnable[n]=!1}};function NRt(e,t){var r=new TIe;return r.merge(e,t),r}AIe.exports=NRt});var kIe=Ae((zyr,EIe)=>{"use strict";var URt=Jg(),VRt=["xaxis","yaxis","zaxis"];function MIe(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}var GRt=MIe.prototype;GRt.merge=function(e){for(var t=0;t<3;++t){var r=e[VRt[t]];if(!r.visible){this.enabled[t]=!1,this.drawSides[t]=!1;continue}this.enabled[t]=r.showspikes,this.colors[t]=URt(r.spikecolor),this.drawSides[t]=r.spikesides,this.lineWidth[t]=r.spikethickness}};function HRt(e){var t=new MIe;return t.merge(e),t}EIe.exports=HRt});var PIe=Ae((Iyr,LIe)=>{"use strict";LIe.exports=YRt;var CIe=wu(),WRt=ei(),jRt=["xaxis","yaxis","zaxis"],XRt=[0,0,0];function ZRt(e){for(var t=new Array(3),r=0;r<3;++r){for(var n=e[r],i=new Array(n.length),a=0;a/g," "));i[a]=l,o.tickmode=s}}t.ticks=i;for(var a=0;a<3;++a){XRt[a]=.5*(e.glplot.bounds[0][a]+e.glplot.bounds[1][a]);for(var f=0;f<2;++f)t.bounds[f][a]=e.glplot.bounds[f][a]}e.contourLevels=ZRt(i)}});var OIe=Ae((Ryr,BIe)=>{"use strict";var RIe=qd().gl_plot3d,KRt=RIe.createCamera,zIe=RIe.createScene,JRt=xIe(),$Rt=IP(),iF=$l(),uv=ei(),rF=uv.preserveDrawingBuffer(),nF=wu(),Jm=Xc(),QRt=Jg(),eDt=qX(),tDt=JU(),rDt=SIe(),iDt=kIe(),nDt=PIe(),aDt=Am().applyAutorangeOptions,Y4,tF,DIe=!1;function FIe(e,t){var r=document.createElement("div"),n=e.container;this.graphDiv=e.graphDiv;var i=document.createElementNS("http://www.w3.org/2000/svg","svg");i.style.position="absolute",i.style.top=i.style.left="0px",i.style.width=i.style.height="100%",i.style["z-index"]=20,i.style["pointer-events"]="none",r.appendChild(i),this.svgContainer=i,r.id=e.id,r.style.position="absolute",r.style.top=r.style.left="0px",r.style.width=r.style.height="100%",n.appendChild(r),this.fullLayout=t,this.id=e.id||"scene",this.fullSceneLayout=t[this.id],this.plotArgs=[[],{},{}],this.axesOptions=rDt(t,t[this.id]),this.spikeOptions=iDt(t[this.id]),this.container=r,this.staticMode=!!e.staticPlot,this.pixelRatio=this.pixelRatio||e.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=iF.getComponentMethod("annotations3d","convert"),this.drawAnnotations=iF.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var Ep=FIe.prototype;Ep.prepareOptions=function(){var e=this,t={canvas:e.canvas,gl:e.gl,glOptions:{preserveDrawingBuffer:rF,premultipliedAlpha:!0,antialias:!0},container:e.container,axes:e.axesOptions,spikes:e.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:e.camera,pixelRatio:e.pixelRatio};if(e.staticMode){if(!tF&&(Y4=document.createElement("canvas"),tF=JRt({canvas:Y4,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!tF))throw new Error("error creating static canvas/context for image server");t.gl=tF,t.canvas=Y4}return t};var IIe=!0;Ep.tryCreatePlot=function(){var e=this,t=e.prepareOptions(),r=!0;try{e.glplot=zIe(t)}catch(n){if(e.staticMode||!IIe||rF)r=!1;else{uv.warn(["webgl setup failed possibly due to","false preserveDrawingBuffer config.","The mobile/tablet device may not be detected by is-mobile module.","Enabling preserveDrawingBuffer in second attempt to create webgl scene..."].join(" "));try{rF=t.glOptions.preserveDrawingBuffer=!0,e.glplot=zIe(t)}catch(i){rF=t.glOptions.preserveDrawingBuffer=!1,r=!1}}}return IIe=!1,r};Ep.initializeGLCamera=function(){var e=this,t=e.fullSceneLayout.camera,r=t.projection.type==="orthographic";e.camera=KRt(e.container,{center:[t.center.x,t.center.y,t.center.z],eye:[t.eye.x,t.eye.y,t.eye.z],up:[t.up.x,t.up.y,t.up.z],_ortho:r,zoomMin:.01,zoomMax:100,mode:"orbit"})};Ep.initializeGLPlot=function(){var e=this;e.initializeGLCamera();var t=e.tryCreatePlot();if(!t)return eDt(e);e.traces={},e.make4thDimension();var r=e.graphDiv,n=r.layout,i=function(){var o={};return e.isCameraChanged(n)&&(o[e.id+".camera"]=e.getCamera()),e.isAspectChanged(n)&&(o[e.id+".aspectratio"]=e.glplot.getAspectratio(),n[e.id].aspectmode!=="manual"&&(e.fullSceneLayout.aspectmode=n[e.id].aspectmode=o[e.id+".aspectmode"]="manual")),o},a=function(o){if(o.fullSceneLayout.dragmode!==!1){var s=i();o.saveLayout(n),o.graphDiv.emit("plotly_relayout",s)}};return e.glplot.canvas&&(e.glplot.canvas.addEventListener("mouseup",function(){a(e)}),e.glplot.canvas.addEventListener("touchstart",function(){DIe=!0}),e.glplot.canvas.addEventListener("wheel",function(o){if(r._context._scrollZoom.gl3d){if(e.camera._ortho){var s=o.deltaX>o.deltaY?1.1:.9090909090909091,u=e.glplot.getAspectratio();e.glplot.setAspectratio({x:s*u.x,y:s*u.y,z:s*u.z})}a(e)}},$Rt?{passive:!1}:!1),e.glplot.canvas.addEventListener("mousemove",function(){if(e.fullSceneLayout.dragmode!==!1&&e.camera.mouseListener.buttons!==0){var o=i();e.graphDiv.emit("plotly_relayouting",o)}}),e.staticMode||e.glplot.canvas.addEventListener("webglcontextlost",function(o){r&&r.emit&&r.emit("plotly_webglcontextlost",{event:o,layer:e.id})},!1)),e.glplot.oncontextloss=function(){e.recoverContext()},e.glplot.onrender=function(){e.render()},!0};Ep.render=function(){var e=this,t=e.graphDiv,r,n=e.svgContainer,i=e.container.getBoundingClientRect();t._fullLayout._calcInverseTransform(t);var a=t._fullLayout._invScaleX,o=t._fullLayout._invScaleY,s=i.width*a,u=i.height*o;n.setAttributeNS(null,"viewBox","0 0 "+s+" "+u),n.setAttributeNS(null,"width",s),n.setAttributeNS(null,"height",u),nDt(e),e.glplot.axes.update(e.axesOptions);for(var l=Object.keys(e.traces),f=null,c=e.glplot.selection,h=0;h")):r.type==="isosurface"||r.type==="volume"?(v.valueLabel=nF.hoverLabelText(e._mockAxis,e._mockAxis.d2l(c.traceCoordinate[3]),r.valuehoverformat),x.push("value: "+v.valueLabel),c.textLabel&&x.push(c.textLabel),L=x.join("
")):L=c.textLabel;var C={x:c.traceCoordinate[0],y:c.traceCoordinate[1],z:c.traceCoordinate[2],data:_._input,fullData:_,curveNumber:_.index,pointNumber:b};Jm.appendArrayPointValue(C,_,b),r._module.eventData&&(C=_._module.eventData(C,c,_,{},b));var M={points:[C]};if(e.fullSceneLayout.hovermode){var m=[];Jm.loneHover({trace:_,x:(.5+.5*p[0]/p[3])*s,y:(.5-.5*p[1]/p[3])*u,xLabel:v.xLabel,yLabel:v.yLabel,zLabel:v.zLabel,text:L,name:f.name,color:Jm.castHoverOption(_,b,"bgcolor")||f.color,borderColor:Jm.castHoverOption(_,b,"bordercolor"),fontFamily:Jm.castHoverOption(_,b,"font.family"),fontSize:Jm.castHoverOption(_,b,"font.size"),fontColor:Jm.castHoverOption(_,b,"font.color"),nameLength:Jm.castHoverOption(_,b,"namelength"),textAlign:Jm.castHoverOption(_,b,"align"),hovertemplate:uv.castOption(_,b,"hovertemplate"),hovertemplateLabels:uv.extendFlat({},C,v),eventData:[C]},{container:n,gd:t,inOut_bbox:m}),C.bbox=m[0]}c.distance<5&&(c.buttons||DIe)?t.emit("plotly_click",M):t.emit("plotly_hover",M),this.oldEventData=M}else Jm.loneUnhover(n),this.oldEventData&&t.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;e.drawAnnotations(e)};Ep.recoverContext=function(){var e=this;e.glplot.dispose();var t=function(){if(e.glplot.gl.isContextLost()){requestAnimationFrame(t);return}if(!e.initializeGLPlot()){uv.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}e.plot.apply(e,e.plotArgs)};requestAnimationFrame(t)};var K4=["xaxis","yaxis","zaxis"];function oDt(e,t,r){for(var n=e.fullSceneLayout,i=0;i<3;i++){var a=K4[i],o=a.charAt(0),s=n[a],u=t[o],l=t[o+"calendar"],f=t["_"+o+"length"];if(!uv.isArrayOrTypedArray(u))r[0][i]=Math.min(r[0][i],0),r[1][i]=Math.max(r[1][i],f-1);else for(var c,h=0;h<(f||u.length);h++)if(uv.isArrayOrTypedArray(u[h]))for(var d=0;d_[1][o])_[0][o]=-1,_[1][o]=1;else{var T=_[1][o]-_[0][o];_[0][o]-=T/32,_[1][o]+=T/32}if(k=[_[0][o],_[1][o]],k=aDt(k,u),_[0][o]=k[0],_[1][o]=k[1],u.isReversed()){var B=_[0][o];_[0][o]=_[1][o],_[1][o]=B}}else k=u.range,_[0][o]=u.r2l(k[0]),_[1][o]=u.r2l(k[1]);_[0][o]===_[1][o]&&(_[0][o]-=1,_[1][o]+=1),b[o]=_[1][o]-_[0][o],u.range=[_[0][o],_[1][o]],u.limitRange(),n.glplot.setBounds(o,{min:u.range[0]*d[o],max:u.range[1]*d[o]})}var F,U=f.aspectmode;if(U==="cube")F=[1,1,1];else if(U==="manual"){var G=f.aspectratio;F=[G.x,G.y,G.z]}else if(U==="auto"||U==="data"){var j=[1,1,1];for(o=0;o<3;++o){u=f[K4[o]],l=u.type;var W=v[l];j[o]=Math.pow(W.acc,1/W.count)/d[o]}U==="data"||Math.max.apply(null,j)/Math.min.apply(null,j)<=4?F=j:F=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");f.aspectratio.x=c.aspectratio.x=F[0],f.aspectratio.y=c.aspectratio.y=F[1],f.aspectratio.z=c.aspectratio.z=F[2],n.glplot.setAspectratio(f.aspectratio),n.viewInitial.aspectratio||(n.viewInitial.aspectratio={x:f.aspectratio.x,y:f.aspectratio.y,z:f.aspectratio.z}),n.viewInitial.aspectmode||(n.viewInitial.aspectmode=f.aspectmode);var N=f.domain||null,H=t._size||null;if(N&&H){var re=n.container.style;re.position="absolute",re.left=H.l+N.x[0]*H.w+"px",re.top=H.t+(1-N.y[1])*H.h+"px",re.width=H.w*(N.x[1]-N.x[0])+"px",re.height=H.h*(N.y[1]-N.y[0])+"px"}n.glplot.redraw()}};Ep.destroy=function(){var e=this;e.glplot&&(e.camera.mouseListener.enabled=!1,e.container.removeEventListener("wheel",e.camera.wheelListener),e.camera=null,e.glplot.dispose(),e.container.parentNode.removeChild(e.container),e.glplot=null)};function lDt(e){return[[e.eye.x,e.eye.y,e.eye.z],[e.center.x,e.center.y,e.center.z],[e.up.x,e.up.y,e.up.z]]}function uDt(e){return{up:{x:e.up[0],y:e.up[1],z:e.up[2]},center:{x:e.center[0],y:e.center[1],z:e.center[2]},eye:{x:e.eye[0],y:e.eye[1],z:e.eye[2]},projection:{type:e._ortho===!0?"orthographic":"perspective"}}}Ep.getCamera=function(){var e=this;return e.camera.view.recalcMatrix(e.camera.view.lastT()),uDt(e.camera)};Ep.setViewport=function(e){var t=this,r=e.camera;t.camera.lookAt.apply(this,lDt(r)),t.glplot.setAspectratio(e.aspectratio);var n=r.projection.type==="orthographic",i=t.camera._ortho;n!==i&&(t.glplot.redraw(),t.glplot.clearRGBA(),t.glplot.dispose(),t.initializeGLPlot())};Ep.isCameraChanged=function(e){var t=this,r=t.getCamera(),n=uv.nestedProperty(e,t.id+".camera"),i=n.get();function a(l,f,c,h){var d=["up","center","eye"],p=["x","y","z"];return f[d[c]]&&l[d[c]][p[h]]===f[d[c]][p[h]]}var o=!1;if(i===void 0)o=!0;else{for(var s=0;s<3;s++)for(var u=0;u<3;u++)if(!a(r,i,s,u)){o=!0;break}(!i.projection||r.projection&&r.projection.type!==i.projection.type)&&(o=!0)}return o};Ep.isAspectChanged=function(e){var t=this,r=t.glplot.getAspectratio(),n=uv.nestedProperty(e,t.id+".aspectratio"),i=n.get();return i===void 0||i.x!==r.x||i.y!==r.y||i.z!==r.z};Ep.saveLayout=function(e){var t=this,r=t.fullLayout,n,i,a,o,s,u,l=t.isCameraChanged(e),f=t.isAspectChanged(e),c=l||f;if(c){var h={};if(l&&(n=t.getCamera(),i=uv.nestedProperty(e,t.id+".camera"),a=i.get(),h[t.id+".camera"]=a),f&&(o=t.glplot.getAspectratio(),s=uv.nestedProperty(e,t.id+".aspectratio"),u=s.get(),h[t.id+".aspectratio"]=u),iF.call("_storeDirectGUIEdit",e,r._preGUI,h),l){i.set(n);var d=uv.nestedProperty(r,t.id+".camera");d.set(n)}if(f){s.set(o);var p=uv.nestedProperty(r,t.id+".aspectratio");p.set(o),t.glplot.redraw()}}return c};Ep.updateFx=function(e,t){var r=this,n=r.camera;if(n)if(e==="orbit")n.mode="orbit",n.keyBindingMode="rotate";else if(e==="turntable"){n.up=[0,0,1],n.mode="turntable",n.keyBindingMode="rotate";var i=r.graphDiv,a=i._fullLayout,o=r.fullSceneLayout.camera,s=o.up.x,u=o.up.y,l=o.up.z;if(l/Math.sqrt(s*s+u*u+l*l)<.999){var f=r.id+".camera.up",c={x:0,y:0,z:1},h={};h[f]=c;var d=i.layout;iF.call("_storeDirectGUIEdit",d,a._preGUI,h),o.up=c,uv.nestedProperty(d,f).set(c)}}else n.keyBindingMode=e;r.fullSceneLayout.hovermode=t};function fDt(e,t,r){for(var n=0,i=r-1;n0)for(var s=255/o,u=0;u<3;++u)e[a+u]=Math.min(s*e[a+u],255)}}Ep.toImage=function(e){var t=this;e||(e="png"),t.staticMode&&t.container.appendChild(Y4),t.glplot.redraw();var r=t.glplot.gl,n=r.drawingBufferWidth,i=r.drawingBufferHeight;r.bindFramebuffer(r.FRAMEBUFFER,null);var a=new Uint8Array(n*i*4);r.readPixels(0,0,n,i,r.RGBA,r.UNSIGNED_BYTE,a),fDt(a,n,i),cDt(a,n,i);var o=document.createElement("canvas");o.width=n,o.height=i;var s=o.getContext("2d",{willReadFrequently:!0}),u=s.createImageData(n,i);u.data.set(a),s.putImageData(u,0,0);var l;switch(e){case"jpeg":l=o.toDataURL("image/jpeg");break;case"webp":l=o.toDataURL("image/webp");break;default:l=o.toDataURL("image/png")}return t.staticMode&&t.container.removeChild(Y4),l};Ep.setConvert=function(){for(var e=this,t=0;t<3;t++){var r=e.fullSceneLayout[K4[t]];nF.setConvert(r,e.fullLayout),r.setScale=uv.noop}};Ep.make4thDimension=function(){var e=this,t=e.graphDiv,r=t._fullLayout;e._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},nF.setConvert(e._mockAxis,r)};BIe.exports=FIe});var NIe=Ae((Dyr,qIe)=>{"use strict";qIe.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}});var UX=Ae((Fyr,UIe)=>{"use strict";var hDt=jl(),ff=Dd(),NX=Su().extendFlat,dDt=Sc().overrideAll;UIe.exports=dDt({visible:ff.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:hDt.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:ff.color,categoryorder:ff.categoryorder,categoryarray:ff.categoryarray,title:{text:ff.title.text,font:ff.title.font},type:NX({},ff.type,{values:["-","linear","log","date","category"]}),autotypenumbers:ff.autotypenumbers,autorange:ff.autorange,autorangeoptions:{minallowed:ff.autorangeoptions.minallowed,maxallowed:ff.autorangeoptions.maxallowed,clipmin:ff.autorangeoptions.clipmin,clipmax:ff.autorangeoptions.clipmax,include:ff.autorangeoptions.include,editType:"plot"},rangemode:ff.rangemode,minallowed:ff.minallowed,maxallowed:ff.maxallowed,range:NX({},ff.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:ff.minor.tickmode,nticks:ff.nticks,tick0:ff.tick0,dtick:ff.dtick,tickvals:ff.tickvals,ticktext:ff.ticktext,ticks:ff.ticks,mirror:ff.mirror,ticklen:ff.ticklen,tickwidth:ff.tickwidth,tickcolor:ff.tickcolor,showticklabels:ff.showticklabels,labelalias:ff.labelalias,tickfont:ff.tickfont,tickangle:ff.tickangle,tickprefix:ff.tickprefix,showtickprefix:ff.showtickprefix,ticksuffix:ff.ticksuffix,showticksuffix:ff.showticksuffix,showexponent:ff.showexponent,exponentformat:ff.exponentformat,minexponent:ff.minexponent,separatethousands:ff.separatethousands,tickformat:ff.tickformat,tickformatstops:ff.tickformatstops,hoverformat:ff.hoverformat,showline:ff.showline,linecolor:ff.linecolor,linewidth:ff.linewidth,showgrid:ff.showgrid,gridcolor:NX({},ff.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:ff.gridwidth,zeroline:ff.zeroline,zerolinecolor:ff.zerolinecolor,zerolinewidth:ff.zerolinewidth},"plot","from-root")});var WX=Ae((Byr,VIe)=>{"use strict";var VX=UX(),pDt=zc().attributes,GX=Su().extendFlat,vDt=ei().counterRegex;function HX(e,t,r){return{x:{valType:"number",dflt:e,editType:"camera"},y:{valType:"number",dflt:t,editType:"camera"},z:{valType:"number",dflt:r,editType:"camera"},editType:"camera"}}VIe.exports={_arrayAttrRegexps:[vDt("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:GX(HX(0,0,1),{}),center:GX(HX(0,0,0),{}),eye:GX(HX(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:pDt({name:"scene",editType:"plot"}),aspectmode:{valType:"enumerated",values:["auto","cube","data","manual"],dflt:"auto",editType:"plot",impliedEdits:{"aspectratio.x":void 0,"aspectratio.y":void 0,"aspectratio.z":void 0}},aspectratio:{x:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},y:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},z:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},editType:"plot",impliedEdits:{aspectmode:"manual"}},xaxis:VX,yaxis:VX,zaxis:VX,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot"},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar"},uirevision:{valType:"any",editType:"none"},editType:"plot"}});var jIe=Ae((Oyr,WIe)=>{"use strict";var mDt=cd().mix,GIe=ei(),yDt=Lf(),gDt=UX(),_Dt=DU(),xDt=iE(),HIe=["xaxis","yaxis","zaxis"],bDt=100*136/187;WIe.exports=function(t,r,n){var i,a;function o(l,f){return GIe.coerce(i,a,gDt,l,f)}for(var s=0;s{"use strict";var wDt=ei(),TDt=jl(),ADt=$l(),SDt=k_(),MDt=jIe(),XIe=WX(),EDt=Rd().getSubplotData,ZIe="gl3d";YIe.exports=function(t,r,n){var i=r._basePlotModules.length>1;function a(o){if(!i){var s=wDt.validate(t[o],XIe[o]);if(s)return t[o]}}SDt(t,r,n,{type:ZIe,attributes:XIe,handleDefaults:kDt,fullLayout:r,font:r.font,fullData:n,getDfltFromLayout:a,autotypenumbersDflt:r.autotypenumbers,paper_bgcolor:r.paper_bgcolor,calendar:r.calendar})};function kDt(e,t,r,n){for(var i=r("bgcolor"),a=TDt.combine(i,n.paper_bgcolor),o=["up","center","eye"],s=0;s.999)&&(h="turntable")}else h="turntable";r("dragmode",h),r("hovermode",n.getDfltFromLayout("hovermode"))}});var $_=Ae(fv=>{"use strict";var CDt=Sc().overrideAll,LDt=q1(),PDt=OIe(),zDt=Rd().getSubplotData,IDt=ei(),RDt=jv(),GA="gl3d",jX="scene";fv.name=GA;fv.attr=jX;fv.idRoot=jX;fv.idRegex=fv.attrRegex=IDt.counterRegex("scene");fv.attributes=NIe();fv.layoutAttributes=WX();fv.baseLayoutAttrOverrides=CDt({hoverlabel:LDt.hoverlabel},"plot","nested");fv.supplyLayoutDefaults=KIe();fv.plot=function(t){for(var r=t._fullLayout,n=t._fullData,i=r._subplots[GA],a=0;a{"use strict";JIe.exports={plot:sIe(),attributes:BX(),markerSymbols:Q6(),supplyDefaults:pIe(),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:mIe(),moduleType:"trace",name:"scatter3d",basePlotModule:$_(),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}});var eRe=Ae((Vyr,QIe)=>{"use strict";QIe.exports=$Ie()});var J4=Ae((Gyr,iRe)=>{"use strict";var tRe=jl(),DDt=nc(),XX=jc().axisHoverFormat,{hovertemplateAttrs:FDt,templatefallbackAttrs:BDt}=Ff(),rRe=Gf(),ZX=Su().extendFlat,ODt=Sc().overrideAll;function YX(e){return{valType:"boolean",dflt:!1}}function KX(e){return{show:{valType:"boolean",dflt:!1},start:{valType:"number",dflt:null,editType:"plot"},end:{valType:"number",dflt:null,editType:"plot"},size:{valType:"number",dflt:null,min:0,editType:"plot"},project:{x:YX("x"),y:YX("y"),z:YX("z")},color:{valType:"color",dflt:tRe.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:tRe.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var JX=iRe.exports=ODt(ZX({z:{valType:"data_array"},x:{valType:"data_array"},y:{valType:"data_array"},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:FDt(),hovertemplatefallback:BDt(),xhoverformat:XX("x"),yhoverformat:XX("y"),zhoverformat:XX("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},DDt("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:KX("x"),y:KX("y"),z:KX("z")},hidesurface:{valType:"boolean",dflt:!1},lightposition:{x:{valType:"number",min:-1e5,max:1e5,dflt:10},y:{valType:"number",min:-1e5,max:1e5,dflt:1e4},z:{valType:"number",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:"number",min:0,max:1,dflt:.8},diffuse:{valType:"number",min:0,max:1,dflt:.8},specular:{valType:"number",min:0,max:2,dflt:.05,description:"Represents the level that incident rays are reflected in a single direction, causing shine."},roughness:{valType:"number",min:0,max:1,dflt:.5,description:"Alters specular reflection; the rougher the surface, the wider and less contrasty the shine."},fresnel:{valType:"number",min:0,max:5,dflt:.2}},opacity:{valType:"number",min:0,max:1,dflt:1},opacityscale:{valType:"any",editType:"calc"},hoverinfo:ZX({},rRe.hoverinfo),showlegend:ZX({},rRe.showlegend,{dflt:!1})}),"calc","nested");JX.x.editType=JX.y.editType=JX.z.editType="calc+clearAxisTypes"});var QX=Ae((Hyr,oRe)=>{"use strict";var qDt=$l(),nRe=ei(),NDt=rd(),UDt=J4(),$X=.1;function VDt(e,t){for(var r=[],n=32,i=0;i{"use strict";var sRe=gp();lRe.exports=function(t,r){r.surfacecolor?sRe(t,r,{vals:r.surfacecolor,containerStr:"",cLetter:"c"}):sRe(t,r,{vals:r.z,containerStr:"",cLetter:"c"})}});var vRe=Ae((jyr,pRe)=>{"use strict";var WDt=qd().gl_surface3d,HA=qd().ndarray,jDt=qd().ndarray_linear_interpolate.d2,XDt=oR(),ZDt=sR(),$4=ei().isArrayOrTypedArray,YDt=$g().parseColorScale,fRe=Jg(),KDt=_c().extractOpts;function hRe(e,t,r){this.scene=e,this.uid=r,this.surface=t,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var $m=hRe.prototype;$m.getXat=function(e,t,r,n){var i=$4(this.data.x)?$4(this.data.x[0])?this.data.x[t][e]:this.data.x[e]:e;return r===void 0?i:n.d2l(i,0,r)};$m.getYat=function(e,t,r,n){var i=$4(this.data.y)?$4(this.data.y[0])?this.data.y[t][e]:this.data.y[t]:t;return r===void 0?i:n.d2l(i,0,r)};$m.getZat=function(e,t,r,n){var i=this.data.z[t][e];return i===null&&this.data.connectgaps&&this.data._interpolatedZ&&(i=this.data._interpolatedZ[t][e]),r===void 0?i:n.d2l(i,0,r)};$m.handlePick=function(e){if(e.object===this.surface){var t=(e.data.index[0]-1)/this.dataScaleX-1,r=(e.data.index[1]-1)/this.dataScaleY-1,n=Math.max(Math.min(Math.round(t),this.data.z[0].length-1),0),i=Math.max(Math.min(Math.round(r),this.data._ylength-1),0);e.index=[n,i],e.traceCoordinate=[this.getXat(n,i),this.getYat(n,i),this.getZat(n,i)],e.dataCoordinate=[this.getXat(n,i,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(n,i,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(n,i,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var a=0;a<3;a++){var o=e.dataCoordinate[a];o!=null&&(e.dataCoordinate[a]*=this.scene.dataScale[a])}var s=this.data.hovertext||this.data.text;return $4(s)&&s[i]&&s[i][n]!==void 0?e.textLabel=s[i][n]:s?e.textLabel=s:e.textLabel="",e.data.dataCoordinate=e.dataCoordinate.slice(),this.surface.highlight(e.data),this.scene.glplot.spikes.position=e.dataCoordinate,!0}};function JDt(e){var t=e[0].rgb,r=e[e.length-1].rgb;return t[0]===r[0]&&t[1]===r[1]&&t[2]===r[2]&&t[3]===r[3]}var WA=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999];function $Dt(e,t){if(e0){r=WA[n];break}return r}function e6t(e,t){if(!(e<1||t<1)){for(var r=eZ(e),n=eZ(t),i=1,a=0;aaF;)n--,n/=QDt(n),n++,n1?i:1};function r6t(e,t,r){var n=r[8]+r[2]*t[0]+r[5]*t[1];return e[0]=(r[6]+r[0]*t[0]+r[3]*t[1])/n,e[1]=(r[7]+r[1]*t[0]+r[4]*t[1])/n,e}function i6t(e,t,r){return n6t(e,t,r6t,r),e}function n6t(e,t,r,n){for(var i=[0,0],a=e.shape[0],o=e.shape[1],s=0;s0&&this.contourStart[n]!==null&&this.contourEnd[n]!==null&&this.contourEnd[n]>this.contourStart[n]))for(t[n]=!0,i=this.contourStart[n];ih&&(this.minValues[l]=h),this.maxValues[l]{"use strict";mRe.exports={attributes:J4(),supplyDefaults:QX().supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:uRe(),plot:vRe(),moduleType:"trace",name:"surface",basePlotModule:$_(),categories:["gl3d","2dMap","showLegend"],meta:{}}});var _Re=Ae((Zyr,gRe)=>{"use strict";gRe.exports=yRe()});var jA=Ae((Yyr,bRe)=>{"use strict";var s6t=nc(),tZ=jc().axisHoverFormat,{hovertemplateAttrs:l6t,templatefallbackAttrs:u6t}=Ff(),Q_=J4(),xRe=Gf(),ex=Su().extendFlat;bRe.exports=ex({x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},i:{valType:"data_array",editType:"calc"},j:{valType:"data_array",editType:"calc"},k:{valType:"data_array",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:l6t({editType:"calc"}),hovertemplatefallback:u6t({editType:"calc"}),xhoverformat:tZ("x"),yhoverformat:tZ("y"),zhoverformat:tZ("z"),delaunayaxis:{valType:"enumerated",values:["x","y","z"],dflt:"z",editType:"calc"},alphahull:{valType:"number",dflt:-1,editType:"calc"},intensity:{valType:"data_array",editType:"calc"},intensitymode:{valType:"enumerated",values:["vertex","cell"],dflt:"vertex",editType:"calc"},color:{valType:"color",editType:"calc"},vertexcolor:{valType:"data_array",editType:"calc"},facecolor:{valType:"data_array",editType:"calc"}},s6t("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:Q_.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:ex({},Q_.contours.x.show,{}),color:Q_.contours.x.color,width:Q_.contours.x.width,editType:"calc"},lightposition:{x:ex({},Q_.lightposition.x,{dflt:1e5}),y:ex({},Q_.lightposition.y,{dflt:1e5}),z:ex({},Q_.lightposition.z,{dflt:0}),editType:"calc"},lighting:ex({vertexnormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-12,editType:"calc",description:"Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry."},facenormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-6,editType:"calc",description:"Epsilon for face normals calculation avoids math issues arising from degenerate geometry."},editType:"calc"},Q_.lighting),hoverinfo:ex({},xRe.hoverinfo,{editType:"calc"}),showlegend:ex({},xRe.showlegend,{dflt:!1})})});var sF=Ae((Kyr,TRe)=>{"use strict";var f6t=nc(),oF=jc().axisHoverFormat,{hovertemplateAttrs:c6t,templatefallbackAttrs:h6t}=Ff(),Q4=jA(),wRe=Gf(),rZ=Su().extendFlat,d6t=Sc().overrideAll;function iZ(e){return{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}}}function nZ(e){return{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}}}var XA=TRe.exports=d6t(rZ({x:{valType:"data_array"},y:{valType:"data_array"},z:{valType:"data_array"},value:{valType:"data_array"},isomin:{valType:"number"},isomax:{valType:"number"},surface:{show:{valType:"boolean",dflt:!0},count:{valType:"integer",dflt:2,min:1},fill:{valType:"number",min:0,max:1,dflt:1},pattern:{valType:"flaglist",flags:["A","B","C","D","E"],extras:["all","odd","even"],dflt:"all"}},spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:.15}},slices:{x:iZ("x"),y:iZ("y"),z:iZ("z")},caps:{x:nZ("x"),y:nZ("y"),z:nZ("z")},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:c6t(),hovertemplatefallback:h6t(),xhoverformat:oF("x"),yhoverformat:oF("y"),zhoverformat:oF("z"),valuehoverformat:oF("value",1),showlegend:rZ({},wRe.showlegend,{dflt:!1})},f6t("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:Q4.opacity,lightposition:Q4.lightposition,lighting:Q4.lighting,flatshading:Q4.flatshading,contour:Q4.contour,hoverinfo:rZ({},wRe.hoverinfo)}),"calc","nested");XA.flatshading.dflt=!0;XA.lighting.facenormalsepsilon.dflt=0;XA.x.editType=XA.y.editType=XA.z.editType=XA.value.editType="calc+clearAxisTypes"});var aZ=Ae((Jyr,SRe)=>{"use strict";var p6t=ei(),v6t=$l(),m6t=sF(),y6t=rd();function g6t(e,t,r,n){function i(a,o){return p6t.coerce(e,t,m6t,a,o)}ARe(e,t,r,n,i)}function ARe(e,t,r,n,i){var a=i("isomin"),o=i("isomax");o!=null&&a!==void 0&&a!==null&&a>o&&(t.isomin=null,t.isomax=null);var s=i("x"),u=i("y"),l=i("z"),f=i("value");if(!s||!s.length||!u||!u.length||!l||!l.length||!f||!f.length){t.visible=!1;return}var c=v6t.getComponentMethod("calendars","handleTraceDefaults");c(e,t,["x","y","z"],n),i("valuehoverformat"),["x","y","z"].forEach(function(_){i(_+"hoverformat");var b="caps."+_,v=i(b+".show");v&&i(b+".fill");var k="slices."+_,E=i(k+".show");E&&(i(k+".fill"),i(k+".locations"))});var h=i("spaceframe.show");h&&i("spaceframe.fill");var d=i("surface.show");d&&(i("surface.count"),i("surface.fill"),i("surface.pattern"));var p=i("contour.show");p&&(i("contour.color"),i("contour.width")),["text","hovertext","hovertemplate","lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","opacity"].forEach(function(_){i(_)}),y6t(e,t,n,i,{prefix:"",cLetter:"c"}),t._length=null}SRe.exports={supplyDefaults:g6t,supplyIsoDefaults:ARe}});var lF=Ae(($yr,ERe)=>{"use strict";var sZ=ei(),_6t=gp();function x6t(e,t){t._len=Math.min(t.u.length,t.v.length,t.w.length,t.x.length,t.y.length,t.z.length),t._u=Wy(t.u,t._len),t._v=Wy(t.v,t._len),t._w=Wy(t.w,t._len),t._x=Wy(t.x,t._len),t._y=Wy(t.y,t._len),t._z=Wy(t.z,t._len);var r=MRe(t);t._gridFill=r.fill,t._Xs=r.Xs,t._Ys=r.Ys,t._Zs=r.Zs,t._len=r.len;var n=0,i,a,o;t.starts&&(i=Wy(t.starts.x||[]),a=Wy(t.starts.y||[]),o=Wy(t.starts.z||[]),n=Math.min(i.length,a.length,o.length)),t._startsX=i||[],t._startsY=a||[],t._startsZ=o||[];var s=0,u=1/0,l;for(l=0;l1&&(E=t[i-1],L=r[i-1],C=n[i-1]),a=0;aE?"-":"+")+"x"),p=p.replace("y",(A>L?"-":"+")+"y"),p=p.replace("z",(x>C?"-":"+")+"z");var T=function(){i=0,M=[],m=[],P=[]};(!i||i{"use strict";var b6t=gp(),w6t=lF().processGrid,uF=lF().filter;kRe.exports=function(t,r){r._len=Math.min(r.x.length,r.y.length,r.z.length,r.value.length),r._x=uF(r.x,r._len),r._y=uF(r.y,r._len),r._z=uF(r.z,r._len),r._value=uF(r.value,r._len);var n=w6t(r);r._gridFill=n.fill,r._Xs=n.Xs,r._Ys=n.Ys,r._Zs=n.Zs,r._len=n.len;for(var i=1/0,a=-1/0,o=0;o{"use strict";CRe.exports=function(t,r,n,i){i=i||t.length;for(var a=new Array(i),o=0;o{"use strict";var T6t=qd().gl_mesh3d,A6t=$g().parseColorScale,S6t=ei().isArrayOrTypedArray,M6t=Jg(),E6t=_c().extractOpts,LRe=ZA(),ek=function(e,t){for(var r=t.length-1;r>0;r--){var n=Math.min(t[r],t[r-1]),i=Math.max(t[r],t[r-1]);if(i>n&&n-1}function ae(Tt,vt){return Tt===null?vt:Tt}function be(Tt,vt,Ye){T();var He=[vt],it=[Ye];if(W>=1)He=[vt],it=[Ye];else if(W>0){var et=H(vt,Ye);He=et.xyzv,it=et.abc}for(var It=0;It-1?Ye[cr]:P(_r,yr,Ut);xe>-1?Yt[cr]=xe:Yt[cr]=F(_r,yr,Ut,ae(Tt,Re))}U(Yt[0],Yt[1],Yt[2])}}function ze(Tt,vt,Ye){var He=function(it,et,It){be(Tt,[vt[it],vt[et],vt[It]],[Ye[it],Ye[et],Ye[It]])};He(0,1,2),He(2,3,0)}function Ce(Tt,vt,Ye){var He=function(it,et,It){be(Tt,[vt[it],vt[et],vt[It]],[Ye[it],Ye[et],Ye[It]])};He(0,1,2),He(3,0,1),He(2,3,0),He(1,2,3)}function de(Tt,vt,Ye,He){var it=Tt[3];itHe&&(it=He);for(var et=(Tt[3]-it)/(Tt[3]-vt[3]+1e-9),It=[],Yt=0;Yt<4;Yt++)It[Yt]=(1-et)*Tt[Yt]+et*vt[Yt];return It}function te(Tt,vt,Ye){return Tt>=vt&&Tt<=Ye}function ke(Tt){var vt=.001*(L-A);return Tt>=A-vt&&Tt<=L+vt}function Ee(Tt){for(var vt=[],Ye=0;Ye<4;Ye++){var He=Tt[Ye];vt.push([e._x[He],e._y[He],e._z[He],e._value[He]])}return vt}var Me=3;function Ue(Tt,vt,Ye,He,it,et){et||(et=1),Ye=[-1,-1,-1];var It=!1,Yt=[te(vt[0][3],He,it),te(vt[1][3],He,it),te(vt[2][3],He,it)];if(!Yt[0]&&!Yt[1]&&!Yt[2])return!1;var cr=function(yr,Ut,Re){return ke(Ut[0][3])&&ke(Ut[1][3])&&ke(Ut[2][3])?(be(yr,Ut,Re),!0):etYt?[k,et]:[et,E];wt(vt,cr[0],cr[1])}}var _r=[[Math.min(A,E),Math.max(A,E)],[Math.min(k,L),Math.max(k,L)]];["x","y","z"].forEach(function(yr){for(var Ut=[],Re=0;Re<_r.length;Re++){var xe=0,Oe=_r[Re][0],Ie=_r[Re][1],Fe=e.slices[yr];if(Fe.show&&Fe.fill){N(Fe.fill);var ft=[],ge=[],fe=[];if(Fe.locations.length)for(var pe=0;pe0&&(ge.push(dt.id),yr==="x"?fe.push([dt.distRatio,0,0]):yr==="y"?fe.push([0,dt.distRatio,0]):fe.push([0,0,dt.distRatio]))}else yr==="x"?ft=Et(1,d-1):yr==="y"?ft=Et(1,p-1):ft=Et(1,_-1);ge.length>0&&(yr==="x"?Ut[xe]=St(Tt,ge,Oe,Ie,fe,Ut[xe]):yr==="y"?Ut[xe]=Dt(Tt,ge,Oe,Ie,fe,Ut[xe]):Ut[xe]=Zt(Tt,ge,Oe,Ie,fe,Ut[xe]),xe++),ft.length>0&&(yr==="x"?Ut[xe]=gt(Tt,ft,Oe,Ie,Ut[xe]):yr==="y"?Ut[xe]=Nt(Tt,ft,Oe,Ie,Ut[xe]):Ut[xe]=at(Tt,ft,Oe,Ie,Ut[xe]),xe++)}var Pt=e.caps[yr];Pt.show&&Pt.fill&&(N(Pt.fill),yr==="x"?Ut[xe]=gt(Tt,[0,d-1],Oe,Ie,Ut[xe]):yr==="y"?Ut[xe]=Nt(Tt,[0,p-1],Oe,Ie,Ut[xe]):Ut[xe]=at(Tt,[0,_-1],Oe,Ie,Ut[xe]),xe++)}}),s===0&&B(),e._meshX=x,e._meshY=C,e._meshZ=M,e._meshIntensity=m,e._Xs=f,e._Ys=c,e._Zs=h}return ot(),e}function C6t(e,t){var r=e.glplot.gl,n=T6t({gl:r}),i=new PRe(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}IRe.exports={findNearestOnAxis:ek,generateIsoMeshes:zRe,createIsosurfaceTrace:C6t}});var DRe=Ae((rgr,RRe)=>{"use strict";RRe.exports={attributes:sF(),supplyDefaults:aZ().supplyDefaults,calc:lZ(),colorbar:{min:"cmin",max:"cmax"},plot:fF().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var BRe=Ae((igr,FRe)=>{"use strict";FRe.exports=DRe()});var cZ=Ae((ngr,qRe)=>{"use strict";var L6t=nc(),Eh=sF(),P6t=J4(),ORe=Gf(),fZ=Su().extendFlat,z6t=Sc().overrideAll,cF=qRe.exports=z6t(fZ({x:Eh.x,y:Eh.y,z:Eh.z,value:Eh.value,isomin:Eh.isomin,isomax:Eh.isomax,surface:Eh.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:Eh.slices,caps:Eh.caps,text:Eh.text,hovertext:Eh.hovertext,xhoverformat:Eh.xhoverformat,yhoverformat:Eh.yhoverformat,zhoverformat:Eh.zhoverformat,valuehoverformat:Eh.valuehoverformat,hovertemplate:Eh.hovertemplate,hovertemplatefallback:Eh.hovertemplatefallback},L6t("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:Eh.colorbar,opacity:Eh.opacity,opacityscale:P6t.opacityscale,lightposition:Eh.lightposition,lighting:Eh.lighting,flatshading:Eh.flatshading,contour:Eh.contour,hoverinfo:fZ({},ORe.hoverinfo),showlegend:fZ({},ORe.showlegend,{dflt:!1})}),"calc","nested");cF.x.editType=cF.y.editType=cF.z.editType=cF.value.editType="calc+clearAxisTypes"});var URe=Ae((agr,NRe)=>{"use strict";var I6t=ei(),R6t=cZ(),D6t=aZ().supplyIsoDefaults,F6t=QX().opacityscaleDefaults;NRe.exports=function(t,r,n,i){function a(o,s){return I6t.coerce(t,r,R6t,o,s)}D6t(t,r,n,i,a),F6t(t,r,i,a)}});var WRe=Ae((ogr,HRe)=>{"use strict";var B6t=qd().gl_mesh3d,O6t=$g().parseColorScale,q6t=ei().isArrayOrTypedArray,N6t=Jg(),U6t=_c().extractOpts,VRe=ZA(),hZ=fF().findNearestOnAxis,V6t=fF().generateIsoMeshes;function GRe(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.data=null,this.showContour=!1}var dZ=GRe.prototype;dZ.handlePick=function(e){if(e.object===this.mesh){var t=e.data.index,r=this.data._meshX[t],n=this.data._meshY[t],i=this.data._meshZ[t],a=this.data._Ys.length,o=this.data._Zs.length,s=hZ(r,this.data._Xs).id,u=hZ(n,this.data._Ys).id,l=hZ(i,this.data._Zs).id,f=e.index=l+o*u+o*a*s;e.traceCoordinate=[this.data._meshX[f],this.data._meshY[f],this.data._meshZ[f],this.data._value[f]];var c=this.data.hovertext||this.data.text;return q6t(c)&&c[f]!==void 0?e.textLabel=c[f]:c&&(e.textLabel=c),!0}};dZ.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=V6t(e);function n(u,l,f,c){return l.map(function(h){return u.d2l(h,0,c)*f})}var i=VRe(n(r.xaxis,e._meshX,t.dataScale[0],e.xcalendar),n(r.yaxis,e._meshY,t.dataScale[1],e.ycalendar),n(r.zaxis,e._meshZ,t.dataScale[2],e.zcalendar)),a=VRe(e._meshI,e._meshJ,e._meshK),o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,opacityscale:e.opacityscale,contourEnable:e.contour.show,contourColor:N6t(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading},s=U6t(e);o.vertexIntensity=e._meshIntensity,o.vertexIntensityBounds=[s.min,s.max],o.colormap=O6t(e),this.mesh.update(o)};dZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function G6t(e,t){var r=e.glplot.gl,n=B6t({gl:r}),i=new GRe(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}HRe.exports=G6t});var XRe=Ae((sgr,jRe)=>{"use strict";jRe.exports={attributes:cZ(),supplyDefaults:URe(),calc:lZ(),colorbar:{min:"cmin",max:"cmax"},plot:WRe(),moduleType:"trace",name:"volume",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var YRe=Ae((lgr,ZRe)=>{"use strict";ZRe.exports=XRe()});var $Re=Ae((ugr,JRe)=>{"use strict";var H6t=$l(),KRe=ei(),W6t=rd(),j6t=jA();JRe.exports=function(t,r,n,i){function a(f,c){return KRe.coerce(t,r,j6t,f,c)}function o(f){var c=f.map(function(h){var d=a(h);return d&&KRe.isArrayOrTypedArray(d)?d:null});return c.every(function(h){return h&&h.length===c[0].length})&&c}var s=o(["x","y","z"]);if(!s){r.visible=!1;return}if(o(["i","j","k"]),r.i&&(!r.j||!r.k)||r.j&&(!r.k||!r.i)||r.k&&(!r.i||!r.j)){r.visible=!1;return}var u=H6t.getComponentMethod("calendars","handleTraceDefaults");u(t,r,["x","y","z"],i),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach(function(f){a(f)});var l=a("contour.show");l&&(a("contour.color"),a("contour.width")),"intensity"in t?(a("intensity"),a("intensitymode"),W6t(t,r,i,a,{prefix:"",cLetter:"c"})):(r.showscale=!1,"facecolor"in t?a("facecolor"):"vertexcolor"in t?a("vertexcolor"):a("color",n)),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var eDe=Ae((fgr,QRe)=>{"use strict";var X6t=gp();QRe.exports=function(t,r){r.intensity&&X6t(t,r,{vals:r.intensity,containerStr:"",cLetter:"c"})}});var aDe=Ae((cgr,nDe)=>{"use strict";var Z6t=qd().gl_mesh3d,Y6t=qd().delaunay_triangulate,K6t=qd().alpha_shape,J6t=qd().convex_hull,$6t=$g().parseColorScale,Q6t=ei().isArrayOrTypedArray,yZ=Jg(),eFt=_c().extractOpts,tDe=ZA();function iDe(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var gZ=iDe.prototype;gZ.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index;e.data._cellCenter?e.traceCoordinate=e.data.dataCoordinate:e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]];var r=this.data.hovertext||this.data.text;return Q6t(r)&&r[t]!==void 0?e.textLabel=r[t]:r&&(e.textLabel=r),!0}};function rDe(e){for(var t=[],r=e.length,n=0;n=t-.5)return!1;return!0}gZ.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=e;var n=e.x.length,i=tDe(pZ(r.xaxis,e.x,t.dataScale[0],e.xcalendar),pZ(r.yaxis,e.y,t.dataScale[1],e.ycalendar),pZ(r.zaxis,e.z,t.dataScale[2],e.zcalendar)),a;if(e.i&&e.j&&e.k){if(e.i.length!==e.j.length||e.j.length!==e.k.length||!mZ(e.i,n)||!mZ(e.j,n)||!mZ(e.k,n))return;a=tDe(vZ(e.i),vZ(e.j),vZ(e.k))}else e.alphahull===0?a=J6t(i):e.alphahull>0?a=K6t(e.alphahull,i):a=tFt(e.delaunayaxis,i);var o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,contourEnable:e.contour.show,contourColor:yZ(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading};if(e.intensity){var s=eFt(e);this.color="#fff";var u=e.intensitymode;o[u+"Intensity"]=e.intensity,o[u+"IntensityBounds"]=[s.min,s.max],o.colormap=$6t(e)}else e.vertexcolor?(this.color=e.vertexcolor[0],o.vertexColors=rDe(e.vertexcolor)):e.facecolor?(this.color=e.facecolor[0],o.cellColors=rDe(e.facecolor)):(this.color=e.color,o.meshColor=yZ(e.color));this.mesh.update(o)};gZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function rFt(e,t){var r=e.glplot.gl,n=Z6t({gl:r}),i=new iDe(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}nDe.exports=rFt});var sDe=Ae((hgr,oDe)=>{"use strict";oDe.exports={attributes:jA(),supplyDefaults:$Re(),calc:eDe(),colorbar:{min:"cmin",max:"cmax"},plot:aDe(),moduleType:"trace",name:"mesh3d",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var uDe=Ae((dgr,lDe)=>{"use strict";lDe.exports=sDe()});var xZ=Ae((pgr,cDe)=>{"use strict";var iFt=nc(),YA=jc().axisHoverFormat,{hovertemplateAttrs:nFt,templatefallbackAttrs:aFt}=Ff(),oFt=jA(),fDe=Gf(),_Z=Su().extendFlat,hF={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},sizemode:{valType:"enumerated",values:["scaled","absolute","raw"],editType:"calc",dflt:"scaled"},sizeref:{valType:"number",editType:"calc",min:0},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:nFt({editType:"calc"},{keys:["norm"]}),hovertemplatefallback:aFt({editType:"calc"}),uhoverformat:YA("u",1),vhoverformat:YA("v",1),whoverformat:YA("w",1),xhoverformat:YA("x"),yhoverformat:YA("y"),zhoverformat:YA("z"),showlegend:_Z({},fDe.showlegend,{dflt:!1})};_Z(hF,iFt("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var sFt=["opacity","lightposition","lighting"];sFt.forEach(function(e){hF[e]=oFt[e]});hF.hoverinfo=_Z({},fDe.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"});cDe.exports=hF});var dDe=Ae((vgr,hDe)=>{"use strict";var lFt=ei(),uFt=rd(),fFt=xZ();hDe.exports=function(t,r,n,i){function a(d,p){return lFt.coerce(t,r,fFt,d,p)}var o=a("u"),s=a("v"),u=a("w"),l=a("x"),f=a("y"),c=a("z");if(!o||!o.length||!s||!s.length||!u||!u.length||!l||!l.length||!f||!f.length||!c||!c.length){r.visible=!1;return}var h=a("sizemode");a("sizeref",h==="raw"?1:.5),a("anchor"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),uFt(t,r,i,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var vDe=Ae((mgr,pDe)=>{"use strict";var cFt=gp();pDe.exports=function(t,r){for(var n=r.u,i=r.v,a=r.w,o=Math.min(r.x.length,r.y.length,r.z.length,n.length,i.length,a.length),s=-1/0,u=1/0,l=0;l{"use strict";var hFt=qd().gl_cone3d,dFt=qd().gl_cone3d.createConeMesh,pFt=ei().simpleMap,vFt=$g().parseColorScale,mFt=_c().extractOpts,yFt=ei().isArrayOrTypedArray,mDe=ZA();function yDe(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var bZ=yDe.prototype;bZ.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index,r=this.data.x[t],n=this.data.y[t],i=this.data.z[t],a=this.data.u[t],o=this.data.v[t],s=this.data.w[t];e.traceCoordinate=[r,n,i,a,o,s,Math.sqrt(a*a+o*o+s*s)];var u=this.data.hovertext||this.data.text;return yFt(u)&&u[t]!==void 0?e.textLabel=u[t]:u&&(e.textLabel=u),!0}};var gFt={xaxis:0,yaxis:1,zaxis:2},_Ft={tip:1,tail:0,cm:.25,center:.5},xFt={tip:1,tail:1,cm:.75,center:.5};function gDe(e,t){var r=e.fullSceneLayout,n=e.dataScale,i={};function a(f,c){var h=r[c],d=n[gFt[c]];return pFt(f,function(p){return h.d2l(p)*d})}i.vectors=mDe(a(t.u,"xaxis"),a(t.v,"yaxis"),a(t.w,"zaxis"),t._len),i.positions=mDe(a(t.x,"xaxis"),a(t.y,"yaxis"),a(t.z,"zaxis"),t._len);var o=mFt(t);i.colormap=vFt(t),i.vertexIntensityBounds=[o.min/t._normMax,o.max/t._normMax],i.coneOffset=_Ft[t.anchor];var s=t.sizemode;s==="scaled"?i.coneSize=t.sizeref||.5:s==="absolute"?i.coneSize=t.sizeref&&t._normMax?t.sizeref/t._normMax:.5:s==="raw"&&(i.coneSize=t.sizeref),i.coneSizemode=s;var u=hFt(i),l=t.lightposition;return u.lightPosition=[l.x,l.y,l.z],u.ambient=t.lighting.ambient,u.diffuse=t.lighting.diffuse,u.specular=t.lighting.specular,u.roughness=t.lighting.roughness,u.fresnel=t.lighting.fresnel,u.opacity=t.opacity,t._pad=xFt[t.anchor]*u.vectorScale*u.coneScale*t._normMax,u}bZ.update=function(e){this.data=e;var t=gDe(this.scene,e);this.mesh.update(t)};bZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function bFt(e,t){var r=e.glplot.gl,n=gDe(e,t),i=dFt(r,n),a=new yDe(e,t.uid);return a.mesh=i,a.data=t,i._trace=a,e.glplot.add(i),a}_De.exports=bFt});var wDe=Ae((ggr,bDe)=>{"use strict";bDe.exports={moduleType:"trace",name:"cone",basePlotModule:$_(),categories:["gl3d","showLegend"],attributes:xZ(),supplyDefaults:dDe(),colorbar:{min:"cmin",max:"cmax"},calc:vDe(),plot:xDe(),eventData:function(e,t){return e.norm=t.traceCoordinate[6],e},meta:{}}});var ADe=Ae((_gr,TDe)=>{"use strict";TDe.exports=wDe()});var TZ=Ae((xgr,MDe)=>{"use strict";var wFt=nc(),KA=jc().axisHoverFormat,{hovertemplateAttrs:TFt,templatefallbackAttrs:AFt}=Ff(),SFt=jA(),SDe=Gf(),wZ=Su().extendFlat,dF={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},starts:{x:{valType:"data_array",editType:"calc"},y:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},editType:"calc"},maxdisplayed:{valType:"integer",min:0,dflt:1e3,editType:"calc"},sizeref:{valType:"number",editType:"calc",min:0,dflt:1},text:{valType:"string",dflt:"",editType:"calc"},hovertext:{valType:"string",dflt:"",editType:"calc"},hovertemplate:TFt({editType:"calc"},{keys:["tubex","tubey","tubez","tubeu","tubev","tubew","norm","divergence"]}),hovertemplatefallback:AFt({editType:"calc"}),uhoverformat:KA("u",1),vhoverformat:KA("v",1),whoverformat:KA("w",1),xhoverformat:KA("x"),yhoverformat:KA("y"),zhoverformat:KA("z"),showlegend:wZ({},SDe.showlegend,{dflt:!1})};wZ(dF,wFt("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var MFt=["opacity","lightposition","lighting"];MFt.forEach(function(e){dF[e]=SFt[e]});dF.hoverinfo=wZ({},SDe.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","divergence","text","name"],dflt:"x+y+z+norm+text+name"});MDe.exports=dF});var kDe=Ae((bgr,EDe)=>{"use strict";var EFt=ei(),kFt=rd(),CFt=TZ();EDe.exports=function(t,r,n,i){function a(h,d){return EFt.coerce(t,r,CFt,h,d)}var o=a("u"),s=a("v"),u=a("w"),l=a("x"),f=a("y"),c=a("z");if(!o||!o.length||!s||!s.length||!u||!u.length||!l||!l.length||!f||!f.length||!c||!c.length){r.visible=!1;return}a("starts.x"),a("starts.y"),a("starts.z"),a("maxdisplayed"),a("sizeref"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),kFt(t,r,i,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var FDe=Ae((wgr,DDe)=>{"use strict";var PDe=qd().gl_streamtube3d,LFt=PDe.createTubeMesh,PFt=ei(),zFt=$g().parseColorScale,IFt=_c().extractOpts,CDe=ZA(),zDe={xaxis:0,yaxis:1,zaxis:2};function IDe(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var SZ=IDe.prototype;SZ.handlePick=function(e){var t=this.scene.fullSceneLayout,r=this.scene.dataScale;function n(o,s){var u=t[s],l=r[zDe[s]];return u.l2c(o)/l}if(e.object===this.mesh){var i=e.data.position,a=e.data.velocity;return e.traceCoordinate=[n(i[0],"xaxis"),n(i[1],"yaxis"),n(i[2],"zaxis"),n(a[0],"xaxis"),n(a[1],"yaxis"),n(a[2],"zaxis"),e.data.intensity*this.data._normMax,e.data.divergence],e.textLabel=this.data.hovertext||this.data.text,!0}};function LDe(e){var t=e.length,r;return t>2?r=e.slice(1,t-1):t===2?r=[(e[0]+e[1])/2]:r=e,r}function AZ(e){var t=e.length;return t===1?[.5,.5]:[e[1]-e[0],e[t-1]-e[t-2]]}function RDe(e,t){var r=e.fullSceneLayout,n=e.dataScale,i=t._len,a={};function o(B,F){var U=r[F],G=n[zDe[F]];return PFt.simpleMap(B,function(j){return U.d2l(j)*G})}if(a.vectors=CDe(o(t._u,"xaxis"),o(t._v,"yaxis"),o(t._w,"zaxis"),i),!i)return{positions:[],cells:[]};var s=o(t._Xs,"xaxis"),u=o(t._Ys,"yaxis"),l=o(t._Zs,"zaxis");a.meshgrid=[s,u,l],a.gridFill=t._gridFill;var f=t._slen;if(f)a.startingPositions=CDe(o(t._startsX,"xaxis"),o(t._startsY,"yaxis"),o(t._startsZ,"zaxis"));else{for(var c=u[0],h=LDe(s),d=LDe(l),p=new Array(h.length*d.length),_=0,b=0;b{"use strict";BDe.exports={moduleType:"trace",name:"streamtube",basePlotModule:$_(),categories:["gl3d","showLegend"],attributes:TZ(),supplyDefaults:kDe(),colorbar:{min:"cmin",max:"cmax"},calc:lF().calc,plot:FDe(),eventData:function(e,t){return e.tubex=e.x,e.tubey=e.y,e.tubez=e.z,e.tubeu=t.traceCoordinate[3],e.tubev=t.traceCoordinate[4],e.tubew=t.traceCoordinate[5],e.norm=t.traceCoordinate[6],e.divergence=t.traceCoordinate[7],delete e.x,delete e.y,delete e.z,e},meta:{}}});var NDe=Ae((Agr,qDe)=>{"use strict";qDe.exports=ODe()});var W2=Ae((Mgr,HDe)=>{"use strict";var{hovertemplateAttrs:DFt,texttemplateAttrs:FFt,templatefallbackAttrs:UDe}=Ff(),BFt=Cm(),jy=Zc(),OFt=Gf(),VDe=nc(),qFt=Id().dash,H2=Su().extendFlat,NFt=Sc().overrideAll,em=jy.marker,GDe=jy.line,UFt=em.line,Sgr=["The library used by the *country names* `locationmode` option is changing in an upcoming version.","Country names in existing plots may not work in the new version."].join(" ");HDe.exports=NFt({lon:{valType:"data_array"},lat:{valType:"data_array"},locations:{valType:"data_array"},locationmode:{valType:"enumerated",values:["ISO-3","USA-states","country names","geojson-id"],dflt:"ISO-3"},geojson:{valType:"any",editType:"calc"},featureidkey:{valType:"string",editType:"calc",dflt:"id"},mode:H2({},jy.mode,{dflt:"markers"}),text:H2({},jy.text,{}),texttemplate:FFt({editType:"plot"},{keys:["lat","lon","location","text"]}),texttemplatefallback:UDe({editType:"plot"}),hovertext:H2({},jy.hovertext,{}),textfont:jy.textfont,textposition:jy.textposition,line:{color:GDe.color,width:GDe.width,dash:qFt},connectgaps:jy.connectgaps,marker:H2({symbol:em.symbol,opacity:em.opacity,angle:em.angle,angleref:H2({},em.angleref,{values:["previous","up","north"]}),standoff:em.standoff,size:em.size,sizeref:em.sizeref,sizemin:em.sizemin,sizemode:em.sizemode,colorbar:em.colorbar,line:H2({width:UFt.width},VDe("marker.line")),gradient:em.gradient},VDe("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:BFt(),selected:jy.selected,unselected:jy.unselected,hoverinfo:H2({},OFt.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:DFt(),hovertemplatefallback:UDe()},"calc","nested")});var jDe=Ae((Egr,WDe)=>{"use strict";var pF=ei(),MZ=lc(),VFt=$v(),GFt=I0(),HFt=R0(),WFt=Im(),jFt=W2(),XFt=["The library used by the *country names* `locationmode` option is changing in the next major version.","Some country names in existing plots may not work in the new version.","To ensure consistent behavior, consider setting `locationmode` to *ISO-3*."].join(" ");WDe.exports=function(t,r,n,i){function a(d,p){return pF.coerce(t,r,jFt,d,p)}var o=a("locations"),s;if(o&&o.length){var u=a("geojson"),l;(typeof u=="string"&&u!==""||pF.isPlainObject(u))&&(l="geojson-id");var f=a("locationmode",l);f==="country names"&&pF.warn(XFt),f==="geojson-id"&&a("featureidkey"),s=o.length}else{var c=a("lon")||[],h=a("lat")||[];s=Math.min(c.length,h.length)}if(!s){r.visible=!1;return}r._length=s,a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),MZ.hasMarkers(r)&&VFt(t,r,n,i,a,{gradient:!0}),MZ.hasLines(r)&&(GFt(t,r,n,i,a),a("connectgaps")),MZ.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),HFt(t,r,i,a)),a("fill"),r.fill!=="none"&&WFt(t,r,n,a),pF.coerceSelectionMarkerOpacity(r,a)}});var YDe=Ae((kgr,ZDe)=>{"use strict";var XDe=wu();ZDe.exports=function(t,r,n){var i={},a=n[r.geo]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=XDe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=XDe.tickText(o,o.c2l(s[1]),!0).text,i}});var vF=Ae((Cgr,QDe)=>{"use strict";var EZ=ku(),KDe=rf().BADNUM,ZFt=D0(),YFt=ky(),KFt=F0(),JFt=ei().isArrayOrTypedArray,JDe=ei()._;function $De(e){return e&&typeof e=="string"}QDe.exports=function(t,r){var n=JFt(r.locations),i=n?r.locations.length:r._length,a=new Array(i),o;r.geojson?o=function(h){return $De(h)||EZ(h)}:o=$De;for(var s=0;s{"use strict";kp.projNames={airy:"airy",aitoff:"aitoff","albers usa":"albersUsa",albers:"albers",august:"august","azimuthal equal area":"azimuthalEqualArea","azimuthal equidistant":"azimuthalEquidistant",baker:"baker",bertin1953:"bertin1953",boggs:"boggs",bonne:"bonne",bottomley:"bottomley",bromley:"bromley",collignon:"collignon","conic conformal":"conicConformal","conic equal area":"conicEqualArea","conic equidistant":"conicEquidistant",craig:"craig",craster:"craster","cylindrical equal area":"cylindricalEqualArea","cylindrical stereographic":"cylindricalStereographic",eckert1:"eckert1",eckert2:"eckert2",eckert3:"eckert3",eckert4:"eckert4",eckert5:"eckert5",eckert6:"eckert6",eisenlohr:"eisenlohr","equal earth":"equalEarth",equirectangular:"equirectangular",fahey:"fahey","foucaut sinusoidal":"foucautSinusoidal",foucaut:"foucaut",ginzburg4:"ginzburg4",ginzburg5:"ginzburg5",ginzburg6:"ginzburg6",ginzburg8:"ginzburg8",ginzburg9:"ginzburg9",gnomonic:"gnomonic","gringorten quincuncial":"gringortenQuincuncial",gringorten:"gringorten",guyou:"guyou",hammer:"hammer",hill:"hill",homolosine:"homolosine",hufnagel:"hufnagel",hyperelliptical:"hyperelliptical",kavrayskiy7:"kavrayskiy7",lagrange:"lagrange",larrivee:"larrivee",laskowski:"laskowski",loximuthal:"loximuthal",mercator:"mercator",miller:"miller",mollweide:"mollweide","mt flat polar parabolic":"mtFlatPolarParabolic","mt flat polar quartic":"mtFlatPolarQuartic","mt flat polar sinusoidal":"mtFlatPolarSinusoidal","natural earth":"naturalEarth","natural earth1":"naturalEarth1","natural earth2":"naturalEarth2","nell hammer":"nellHammer",nicolosi:"nicolosi",orthographic:"orthographic",patterson:"patterson","peirce quincuncial":"peirceQuincuncial",polyconic:"polyconic","rectangular polyconic":"rectangularPolyconic",robinson:"robinson",satellite:"satellite","sinu mollweide":"sinuMollweide",sinusoidal:"sinusoidal",stereographic:"stereographic",times:"times","transverse mercator":"transverseMercator","van der grinten":"vanDerGrinten","van der grinten2":"vanDerGrinten2","van der grinten3":"vanDerGrinten3","van der grinten4":"vanDerGrinten4",wagner4:"wagner4",wagner6:"wagner6",wiechel:"wiechel","winkel tripel":"winkel3",winkel3:"winkel3"};kp.axesNames=["lonaxis","lataxis"];kp.lonaxisSpan={orthographic:180,"azimuthal equal area":360,"azimuthal equidistant":360,"conic conformal":180,gnomonic:160,stereographic:180,"transverse mercator":180,"*":360};kp.lataxisSpan={"conic conformal":150,stereographic:179.5,"*":180};kp.scopeDefaults={world:{lonaxisRange:[-180,180],lataxisRange:[-90,90],projType:"equirectangular",projRotate:[0,0,0]},usa:{lonaxisRange:[-180,-50],lataxisRange:[15,80],projType:"albers usa"},europe:{lonaxisRange:[-30,60],lataxisRange:[30,85],projType:"conic conformal",projRotate:[15,0,0],projParallels:[0,60]},asia:{lonaxisRange:[22,160],lataxisRange:[-15,55],projType:"mercator",projRotate:[0,0,0]},africa:{lonaxisRange:[-30,60],lataxisRange:[-40,40],projType:"mercator",projRotate:[0,0,0]},"north america":{lonaxisRange:[-180,-45],lataxisRange:[5,85],projType:"conic conformal",projRotate:[-100,0,0],projParallels:[29.5,45.5]},"south america":{lonaxisRange:[-100,-30],lataxisRange:[-60,15],projType:"mercator",projRotate:[0,0,0]},antarctica:{lonaxisRange:[-180,180],lataxisRange:[-90,-60],projType:"equirectangular",projRotate:[0,0,0]},oceania:{lonaxisRange:[-180,180],lataxisRange:[-50,25],projType:"equirectangular",projRotate:[0,0,0]}};kp.clipPad=.001;kp.precision=.1;kp.landColor="#F0DC82";kp.waterColor="#3399FF";kp.locationmodeToLayer={"ISO-3":"countries","USA-states":"subunits","country names":"countries"};kp.sphereSVG={type:"Sphere"};kp.fillLayers={ocean:1,land:1,lakes:1};kp.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1};kp.layers=["bg","ocean","land","lakes","subunits","countries","coastlines","rivers","lataxis","lonaxis","frame","backplot","frontplot"];kp.layersForChoropleth=["bg","ocean","land","subunits","countries","coastlines","lataxis","lonaxis","frame","backplot","rivers","lakes","frontplot"];kp.layerNameToAdjective={ocean:"ocean",land:"land",lakes:"lake",subunits:"subunit",countries:"country",coastlines:"coastline",rivers:"river",frame:"frame"}});var kZ=Ae((mF,e6e)=>{(function(e,t){typeof mF=="object"&&typeof e6e!="undefined"?t(mF):(e=e||self,t(e.topojson=e.topojson||{}))})(mF,function(e){"use strict";function t(E){return E}function r(E){if(E==null)return t;var A,L,x=E.scale[0],C=E.scale[1],M=E.translate[0],m=E.translate[1];return function(P,T){T||(A=L=0);var B=2,F=P.length,U=new Array(F);for(U[0]=(A+=P[0])*x+M,U[1]=(L+=P[1])*C+m;BM&&(M=B[0]),B[1]m&&(m=B[1])}function T(B){switch(B.type){case"GeometryCollection":B.geometries.forEach(T);break;case"Point":P(B.coordinates);break;case"MultiPoint":B.coordinates.forEach(P);break}}E.arcs.forEach(function(B){for(var F=-1,U=B.length,G;++FM&&(M=G[0]),G[1]m&&(m=G[1])});for(L in E.objects)T(E.objects[L]);return[x,C,M,m]}function i(E,A){for(var L,x=E.length,C=x-A;C<--x;)L=E[C],E[C++]=E[x],E[x]=L}function a(E,A){return typeof A=="string"&&(A=E.objects[A]),A.type==="GeometryCollection"?{type:"FeatureCollection",features:A.geometries.map(function(L){return o(E,L)})}:o(E,A)}function o(E,A){var L=A.id,x=A.bbox,C=A.properties==null?{}:A.properties,M=s(E,A);return L==null&&x==null?{type:"Feature",properties:C,geometry:M}:x==null?{type:"Feature",id:L,properties:C,geometry:M}:{type:"Feature",id:L,bbox:x,properties:C,geometry:M}}function s(E,A){var L=r(E.transform),x=E.arcs;function C(F,U){U.length&&U.pop();for(var G=x[F<0?~F:F],j=0,W=G.length;j1)x=c(E,A,L);else for(C=0,x=new Array(M=E.arcs.length);C1)for(var U=1,G=P(B[0]),j,W;UG&&(W=B[0],B[0]=B[U],B[U]=W,G=j);return B}).filter(function(T){return T.length>0})}}function _(E,A){for(var L=0,x=E.length;L>>1;E[C]=2))throw new Error("n must be \u22652");T=E.bbox||n(E);var L=T[0],x=T[1],C=T[2],M=T[3],m;A={scale:[C-L?(C-L)/(m-1):1,M-x?(M-x)/(m-1):1],translate:[L,x]}}else T=E.bbox;var P=v(A),T,B,F=E.objects,U={};function G(N){return P(N)}function j(N){var H;switch(N.type){case"GeometryCollection":H={type:"GeometryCollection",geometries:N.geometries.map(j)};break;case"Point":H={type:"Point",coordinates:G(N.coordinates)};break;case"MultiPoint":H={type:"MultiPoint",coordinates:N.coordinates.map(G)};break;default:return N}return N.id!=null&&(H.id=N.id),N.bbox!=null&&(H.bbox=N.bbox),N.properties!=null&&(H.properties=N.properties),H}function W(N){var H=0,re=1,ae=N.length,be,ze=new Array(ae);for(ze[0]=P(N[0],0);++H{"use strict";var CZ=t6e.exports={},$Ft=tk().locationmodeToLayer,QFt=kZ().feature;CZ.getTopojsonName=function(e){return[e.scope.replace(/ /g,"-"),"_",e.resolution.toString(),"m"].join("")};CZ.getTopojsonPath=function(e,t){return e+=e.endsWith("/")?"":"/",`${e}${t}.json`};CZ.getTopojsonFeatures=function(e,t){var r=$Ft[e.locationmode],n=t.objects[r];return QFt(t,n).features}});var tx=Ae(rk=>{"use strict";var e8t=rf().BADNUM;rk.calcTraceToLineCoords=function(e){for(var t=e[0].trace,r=t.connectgaps,n=[],i=[],a=0;a0&&(n.push(i),i=[])}return i.length>0&&n.push(i),n};rk.makeLine=function(e){return e.length===1?{type:"LineString",coordinates:e[0]}:{type:"MultiLineString",coordinates:e}};rk.makePolygon=function(e){if(e.length===1)return{type:"Polygon",coordinates:e};for(var t=new Array(e.length),r=0;r{r6e.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xE7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xE9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xE9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xE3)o.?tom(e|\xE9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}});var xF=Ae(bc=>{"use strict";Object.defineProperty(bc,"__esModule",{value:!0});var Bv=63710088e-1,PZ={centimeters:Bv*100,centimetres:Bv*100,degrees:360/(2*Math.PI),feet:Bv*3.28084,inches:Bv*39.37,kilometers:Bv/1e3,kilometres:Bv/1e3,meters:Bv,metres:Bv,miles:Bv/1609.344,millimeters:Bv*1e3,millimetres:Bv*1e3,nauticalmiles:Bv/1852,radians:1,yards:Bv*1.0936},LZ={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,nauticalmiles:29155334959812285e-23,millimeters:1e6,millimetres:1e6,yards:1.195990046};function rx(e,t,r={}){let n={type:"Feature"};return(r.id===0||r.id)&&(n.id=r.id),r.bbox&&(n.bbox=r.bbox),n.properties=t||{},n.geometry=e,n}function t8t(e,t,r={}){switch(e){case"Point":return zZ(t).geometry;case"LineString":return RZ(t).geometry;case"Polygon":return IZ(t).geometry;case"MultiPoint":return a6e(t).geometry;case"MultiLineString":return n6e(t).geometry;case"MultiPolygon":return o6e(t).geometry;default:throw new Error(e+" is invalid")}}function zZ(e,t,r={}){if(!e)throw new Error("coordinates is required");if(!Array.isArray(e))throw new Error("coordinates must be an Array");if(e.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!gF(e[0])||!gF(e[1]))throw new Error("coordinates must contain numbers");return rx({type:"Point",coordinates:e},t,r)}function r8t(e,t,r={}){return _F(e.map(n=>zZ(n,t)),r)}function IZ(e,t,r={}){for(let i of e){if(i.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(i[i.length-1].length!==i[0].length)throw new Error("First and last Position are not equivalent.");for(let a=0;aIZ(n,t)),r)}function RZ(e,t,r={}){if(e.length<2)throw new Error("coordinates must be an array of two or more positions");return rx({type:"LineString",coordinates:e},t,r)}function n8t(e,t,r={}){return _F(e.map(n=>RZ(n,t)),r)}function _F(e,t={}){let r={type:"FeatureCollection"};return t.id&&(r.id=t.id),t.bbox&&(r.bbox=t.bbox),r.features=e,r}function n6e(e,t,r={}){return rx({type:"MultiLineString",coordinates:e},t,r)}function a6e(e,t,r={}){return rx({type:"MultiPoint",coordinates:e},t,r)}function o6e(e,t,r={}){return rx({type:"MultiPolygon",coordinates:e},t,r)}function a8t(e,t,r={}){return rx({type:"GeometryCollection",geometries:e},t,r)}function o8t(e,t=0){if(t&&!(t>=0))throw new Error("precision must be a positive number");let r=Math.pow(10,t||0);return Math.round(e*r)/r}function s6e(e,t="kilometers"){let r=PZ[t];if(!r)throw new Error(t+" units is invalid");return e*r}function DZ(e,t="kilometers"){let r=PZ[t];if(!r)throw new Error(t+" units is invalid");return e/r}function s8t(e,t){return l6e(DZ(e,t))}function l8t(e){let t=e%360;return t<0&&(t+=360),t}function u8t(e){return e=e%360,e>180?e-360:e<-180?e+360:e}function l6e(e){return e%(2*Math.PI)*180/Math.PI}function f8t(e){return e%360*Math.PI/180}function c8t(e,t="kilometers",r="kilometers"){if(!(e>=0))throw new Error("length must be a positive number");return s6e(DZ(e,t),r)}function h8t(e,t="meters",r="kilometers"){if(!(e>=0))throw new Error("area must be a positive number");let n=LZ[t];if(!n)throw new Error("invalid original units");let i=LZ[r];if(!i)throw new Error("invalid final units");return e/n*i}function gF(e){return!isNaN(e)&&e!==null&&!Array.isArray(e)}function d8t(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function p8t(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(e.length!==4&&e.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach(t=>{if(!gF(t))throw new Error("bbox must only contain numbers")})}function v8t(e){if(!e)throw new Error("id is required");if(["string","number"].indexOf(typeof e)===-1)throw new Error("id must be a number or a string")}bc.areaFactors=LZ;bc.azimuthToBearing=u8t;bc.bearingToAzimuth=l8t;bc.convertArea=h8t;bc.convertLength=c8t;bc.degreesToRadians=f8t;bc.earthRadius=Bv;bc.factors=PZ;bc.feature=rx;bc.featureCollection=_F;bc.geometry=t8t;bc.geometryCollection=a8t;bc.isNumber=gF;bc.isObject=d8t;bc.lengthToDegrees=s8t;bc.lengthToRadians=DZ;bc.lineString=RZ;bc.lineStrings=n8t;bc.multiLineString=n6e;bc.multiPoint=a6e;bc.multiPolygon=o6e;bc.point=zZ;bc.points=r8t;bc.polygon=IZ;bc.polygons=i8t;bc.radiansToDegrees=l6e;bc.radiansToLength=s6e;bc.round=o8t;bc.validateBBox=p8t;bc.validateId=v8t});var wF=Ae(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var jp=xF();function ik(e,t,r){if(e!==null)for(var n,i,a,o,s,u,l,f=0,c=0,h,d=e.type,p=d==="FeatureCollection",_=d==="Feature",b=p?e.features.length:1,v=0;vu||p>l||_>f){s=c,u=n,l=p,f=_,a=0;return}var b=jp.lineString.call(void 0,[s,c],r.properties);if(t(b,n,i,_,a)===!1)return!1;a++,s=c})===!1)return!1}}})}function w8t(e,t,r){var n=r,i=!1;return c6e(e,function(a,o,s,u,l){i===!1&&r===void 0?n=a:n=t(n,a,o,s,u,l),i=!0}),n}function h6e(e,t){if(!e)throw new Error("geojson is required");bF(e,function(r,n,i){if(r.geometry!==null){var a=r.geometry.type,o=r.geometry.coordinates;switch(a){case"LineString":if(t(r,n,i,0,0)===!1)return!1;break;case"Polygon":for(var s=0;s{"use strict";Object.defineProperty(TF,"__esModule",{value:!0});var d6e=xF(),M8t=wF();function m6e(e){return M8t.geomReduce.call(void 0,e,(t,r)=>t+E8t(r),0)}function E8t(e){let t=0,r;switch(e.type){case"Polygon":return p6e(e.coordinates);case"MultiPolygon":for(r=0;r0){t+=Math.abs(v6e(e[0]));for(let r=1;r=t?(n+2)%t:n+2],s=i[0]*BZ,u=a[1]*BZ,l=o[0]*BZ;r+=(l-s)*Math.sin(u),n++}return r*k8t}var C8t=m6e;TF.area=m6e;TF.default=C8t});var _6e=Ae(AF=>{"use strict";Object.defineProperty(AF,"__esModule",{value:!0});var L8t=xF(),P8t=wF();function g6e(e,t={}){let r=0,n=0,i=0;return P8t.coordEach.call(void 0,e,function(a){r+=a[0],n+=a[1],i++},!0),L8t.point.call(void 0,[r/i,n/i],t.properties)}var z8t=g6e;AF.centroid=g6e;AF.default=z8t});var b6e=Ae(SF=>{"use strict";Object.defineProperty(SF,"__esModule",{value:!0});var I8t=wF();function x6e(e,t={}){if(e.bbox!=null&&t.recompute!==!0)return e.bbox;let r=[1/0,1/0,-1/0,-1/0];return I8t.coordEach.call(void 0,e,n=>{r[0]>n[0]&&(r[0]=n[0]),r[1]>n[1]&&(r[1]=n[1]),r[2]{"use strict";var D8t=Jl(),A6e=i6e(),{area:F8t}=y6e(),{centroid:B8t}=_6e(),{bbox:O8t}=b6e(),w6e=HM(),JA=G1(),q8t=yg(),N8t=PM(),MF=k5(),T6e=Object.keys(A6e),U8t={"ISO-3":w6e,"USA-states":w6e,"country names":V8t};function V8t(e){for(var t=0;t0&&f[c+1][0]<0)return c;return null}switch(n==="RUS"||n==="FJI"?a=function(f){var c;if(l(f)===null)c=f;else for(c=new Array(f.length),u=0;uc?h[d++]=[f[u][0]+360,f[u][1]]:u===c?(h[d++]=f[u],h[d++]=[f[u][0],-90]):h[d++]=f[u];var p=MF.tester(h);p.pts.pop(),i.push(p)}:a=function(f){i.push(MF.tester(f))},t.type){case"MultiPolygon":for(o=0;o0?p.properties.ct=j8t(p):p.properties.ct=[NaN,NaN],h.fIn=f,h.fOut=p,i.push(p)}else JA.log(["Location",h.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete n[c]}switch(r.type){case"FeatureCollection":var u=r.features;for(a=0;ai&&(i=s,r=o)}else r=t;return B8t(r).geometry.coordinates}function X8t(e){var t=window.PlotlyGeoAssets||{},r=[];function n(u){return new Promise(function(l,f){D8t.json(u,function(c,h){if(c){delete t[u];var d=c.status===404?'GeoJSON at URL "'+u+'" does not exist.':"Unexpected error while fetching from "+u;return f(new Error(d))}return t[u]=h,l(h)})})}function i(u){return new Promise(function(l,f){var c=0,h=setInterval(function(){if(t[u]&&t[u]!=="pending")return clearInterval(h),l(t[u]);if(c>100)return clearInterval(h),f("Unexpected error while fetching from "+u);c++},50)})}for(var a=0;a{"use strict";var Y8t=Jl(),K8t=Mu(),E6e=jl(),k6e=ov(),J8t=k6e.stylePoints,$8t=k6e.styleText;C6e.exports=function(t,r){r&&Q8t(t,r)};function Q8t(e,t){var r=t[0].trace,n=t[0].node3;n.style("opacity",t[0].trace.opacity),J8t(n,r,e),$8t(n,r,e),n.selectAll("path.js-line").style("fill","none").each(function(i){var a=Y8t.select(this),o=i.trace,s=o.line||{};a.call(E6e.stroke,s.color).call(K8t.dashLine,s.dash||"",s.width||0),o.fill!=="none"&&a.call(E6e.fill,o.fillcolor)})}});var VZ=Ae((Ugr,z6e)=>{"use strict";var L6e=Jl(),kF=ei(),eBt=yF().getTopojsonFeatures,qZ=tx(),EF=ix(),P6e=Am().findExtremes,UZ=rf().BADNUM,tBt=B0().calcMarkerSize,NZ=lc(),rBt=OZ();function iBt(e,t,r){var n=t.layers.frontplot.select(".scatterlayer"),i=kF.makeTraceGroups(n,r,"trace scattergeo");function a(o,s){o.lonlat[0]===UZ&&L6e.select(s).remove()}i.selectAll("*").remove(),i.each(function(o){var s=L6e.select(this),u=o[0].trace;if(NZ.hasLines(u)||u.fill!=="none"){var l=qZ.calcTraceToLineCoords(o),f=u.fill!=="none"?qZ.makePolygon(l):qZ.makeLine(l);s.selectAll("path.js-line").data([{geojson:f,trace:u}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}NZ.hasMarkers(u)&&s.selectAll("path.point").data(kF.identity).enter().append("path").classed("point",!0).each(function(c){a(c,this)}),NZ.hasText(u)&&s.selectAll("g").data(kF.identity).enter().append("g").append("text").each(function(c){a(c,this)}),rBt(e,o)})}function nBt(e,t){var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r._length,o,s;if(kF.isArrayOrTypedArray(r.locations)){var u=r.locationmode,l=u==="geojson-id"?EF.extractTraceFeature(e):eBt(r,i.topojson);for(o=0;o{"use strict";var aBt=Xc(),oBt=rf().BADNUM,sBt=fT(),lBt=ei().fillText,uBt=W2();I6e.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.xa,s=t.ya,u=t.subplot,l=u.projection.isLonLatOverEdges,f=u.project;function c(k){var E=k.lonlat;if(E[0]===oBt||l(E))return 1/0;var A=f(E),L=f([r,n]),x=Math.abs(A[0]-L[0]),C=Math.abs(A[1]-L[1]),M=Math.max(3,k.mrc||0);return Math.max(Math.sqrt(x*x+C*C)-M,1-3/M)}if(aBt.getClosest(i,c,t),t.index!==!1){var h=i[t.index],d=h.lonlat,p=[o.c2p(d),s.c2p(d)],_=h.mrc||1;t.x0=p[0]-_,t.x1=p[0]+_,t.y0=p[1]-_,t.y1=p[1]+_,t.loc=h.loc,t.lon=d[0],t.lat=d[1];var b={};b[a.geo]={_subplot:u};var v=a._module.formatLabels(h,a,b);return t.lonLabel=v.lonLabel,t.latLabel=v.latLabel,t.color=sBt(a,h),t.extraText=fBt(a,h,t,i[0].t.labels),t.hovertemplate=a.hovertemplate,[t]}};function fBt(e,t,r,n){if(e.hovertemplate)return;var i=t.hi||e.hoverinfo,a=i==="all"?uBt.hoverinfo.flags:i.split("+"),o=a.indexOf("location")!==-1&&Array.isArray(e.locations),s=a.indexOf("lon")!==-1,u=a.indexOf("lat")!==-1,l=a.indexOf("text")!==-1,f=[];function c(h){return h+"\xB0"}return o?f.push(t.loc):s&&u?f.push("("+c(r.latLabel)+", "+c(r.lonLabel)+")"):s?f.push(n.lon+c(r.lonLabel)):u&&f.push(n.lat+c(r.latLabel)),l&&lBt(t,e,f),f.join("
")}});var F6e=Ae((Ggr,D6e)=>{"use strict";D6e.exports=function(t,r,n,i,a){t.lon=r.lon,t.lat=r.lat,t.location=r.loc?r.loc:null;var o=i[a];return o.fIn&&o.fIn.properties&&(t.properties=o.fIn.properties),t}});var q6e=Ae((Hgr,O6e)=>{"use strict";var B6e=lc(),cBt=rf().BADNUM;O6e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,u,l,f,c,h,d=!B6e.hasMarkers(s)&&!B6e.hasText(s);if(d)return[];if(r===!1)for(h=0;h{(function(e,t){t(typeof CF=="object"&&typeof N6e!="undefined"?CF:e.d3=e.d3||{})})(CF,function(e){"use strict";function t(Ee,Me){return EeMe?1:Ee>=Me?0:NaN}function r(Ee){return Ee.length===1&&(Ee=n(Ee)),{left:function(Me,Ue,De,ye){for(De==null&&(De=0),ye==null&&(ye=Me.length);De>>1;Ee(Me[qe],Ue)<0?De=qe+1:ye=qe}return De},right:function(Me,Ue,De,ye){for(De==null&&(De=0),ye==null&&(ye=Me.length);De>>1;Ee(Me[qe],Ue)>0?ye=qe:De=qe+1}return De}}}function n(Ee){return function(Me,Ue){return t(Ee(Me),Ue)}}var i=r(t),a=i.right,o=i.left;function s(Ee,Me){Me==null&&(Me=u);for(var Ue=0,De=Ee.length-1,ye=Ee[0],qe=new Array(De<0?0:De);UeEe?1:Me>=Ee?0:NaN}function c(Ee){return Ee===null?NaN:+Ee}function h(Ee,Me){var Ue=Ee.length,De=0,ye=-1,qe=0,ce,Je,nt=0;if(Me==null)for(;++ye1)return nt/(De-1)}function d(Ee,Me){var Ue=h(Ee,Me);return Ue&&Math.sqrt(Ue)}function p(Ee,Me){var Ue=Ee.length,De=-1,ye,qe,ce;if(Me==null){for(;++De=ye)for(qe=ce=ye;++Deye&&(qe=ye),ce=ye)for(qe=ce=ye;++Deye&&(qe=ye),ce0)return[Ee];if((De=Me0)for(Ee=Math.ceil(Ee/Je),Me=Math.floor(Me/Je),ce=new Array(qe=Math.ceil(Me-Ee+1));++ye=0?(qe>=L?10:qe>=x?5:qe>=C?2:1)*Math.pow(10,ye):-Math.pow(10,-ye)/(qe>=L?10:qe>=x?5:qe>=C?2:1)}function P(Ee,Me,Ue){var De=Math.abs(Me-Ee)/Math.max(0,Ue),ye=Math.pow(10,Math.floor(Math.log(De)/Math.LN10)),qe=De/ye;return qe>=L?ye*=10:qe>=x?ye*=5:qe>=C&&(ye*=2),Meat;)Ke.pop(),--Ct;var wt=new Array(Ct+1),St;for(qe=0;qe<=Ct;++qe)St=wt[qe]=[],St.x0=qe>0?Ke[qe-1]:Nt,St.x1=qe=1)return+Ue(Ee[De-1],De-1,Ee);var De,ye=(De-1)*Me,qe=Math.floor(ye),ce=+Ue(Ee[qe],qe,Ee),Je=+Ue(Ee[qe+1],qe+1,Ee);return ce+(Je-ce)*(ye-qe)}}function U(Ee,Me,Ue){return Ee=v.call(Ee,c).sort(t),Math.ceil((Ue-Me)/(2*(F(Ee,.75)-F(Ee,.25))*Math.pow(Ee.length,-1/3)))}function G(Ee,Me,Ue){return Math.ceil((Ue-Me)/(3.5*d(Ee)*Math.pow(Ee.length,-1/3)))}function j(Ee,Me){var Ue=Ee.length,De=-1,ye,qe;if(Me==null){for(;++De=ye)for(qe=ye;++Deqe&&(qe=ye)}else for(;++De=ye)for(qe=ye;++Deqe&&(qe=ye);return qe}function W(Ee,Me){var Ue=Ee.length,De=Ue,ye=-1,qe,ce=0;if(Me==null)for(;++ye=0;)for(ce=Ee[Me],Ue=ce.length;--Ue>=0;)qe[--ye]=ce[Ue];return qe}function re(Ee,Me){var Ue=Ee.length,De=-1,ye,qe;if(Me==null){for(;++De=ye)for(qe=ye;++Deye&&(qe=ye)}else for(;++De=ye)for(qe=ye;++Deye&&(qe=ye);return qe}function ae(Ee,Me){for(var Ue=Me.length,De=new Array(Ue);Ue--;)De[Ue]=Ee[Me[Ue]];return De}function be(Ee,Me){if(Ue=Ee.length){var Ue,De=0,ye=0,qe,ce=Ee[ye];for(Me==null&&(Me=t);++De{(function(e,t){typeof LF=="object"&&typeof U6e!="undefined"?t(LF,nk()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(LF,function(e,t){"use strict";function r(){return new n}function n(){this.reset()}n.prototype={constructor:n,reset:function(){this.s=this.t=0},add:function(At){a(i,At,this.t),a(this,i.s,this.s),this.s?this.t+=i.t:this.s=i.t},valueOf:function(){return this.s}};var i=new n;function a(At,Vt,wr){var mr=At.s=Vt+wr,Fr=mr-Vt,_i=mr-Fr;At.t=Vt-_i+(wr-Fr)}var o=1e-6,s=1e-12,u=Math.PI,l=u/2,f=u/4,c=u*2,h=180/u,d=u/180,p=Math.abs,_=Math.atan,b=Math.atan2,v=Math.cos,k=Math.ceil,E=Math.exp,A=Math.log,L=Math.pow,x=Math.sin,C=Math.sign||function(At){return At>0?1:At<0?-1:0},M=Math.sqrt,m=Math.tan;function P(At){return At>1?0:At<-1?u:Math.acos(At)}function T(At){return At>1?l:At<-1?-l:Math.asin(At)}function B(At){return(At=x(At/2))*At}function F(){}function U(At,Vt){At&&j.hasOwnProperty(At.type)&&j[At.type](At,Vt)}var G={Feature:function(At,Vt){U(At.geometry,Vt)},FeatureCollection:function(At,Vt){for(var wr=At.features,mr=-1,Fr=wr.length;++mr=0?1:-1,Fr=mr*wr,_i=v(Vt),Si=x(Vt),Ci=te*Si,Ki=de*_i+Ci*v(Fr),Fn=Ci*mr*x(Fr);re.add(b(Fn,Ki)),Ce=At,de=_i,te=Si}function ye(At){return ae.reset(),H(At,ke),ae*2}function qe(At){return[b(At[1],At[0]),T(At[2])]}function ce(At){var Vt=At[0],wr=At[1],mr=v(wr);return[mr*v(Vt),mr*x(Vt),x(wr)]}function Je(At,Vt){return At[0]*Vt[0]+At[1]*Vt[1]+At[2]*Vt[2]}function nt(At,Vt){return[At[1]*Vt[2]-At[2]*Vt[1],At[2]*Vt[0]-At[0]*Vt[2],At[0]*Vt[1]-At[1]*Vt[0]]}function gt(At,Vt){At[0]+=Vt[0],At[1]+=Vt[1],At[2]+=Vt[2]}function Nt(At,Vt){return[At[0]*Vt,At[1]*Vt,At[2]*Vt]}function at(At){var Vt=M(At[0]*At[0]+At[1]*At[1]+At[2]*At[2]);At[0]/=Vt,At[1]/=Vt,At[2]/=Vt}var Ke,Ct,wt,St,Dt,Zt,Et,Te,ot=r(),Tt,vt,Ye={point:He,lineStart:et,lineEnd:It,polygonStart:function(){Ye.point=Yt,Ye.lineStart=cr,Ye.lineEnd=_r,ot.reset(),ke.polygonStart()},polygonEnd:function(){ke.polygonEnd(),Ye.point=He,Ye.lineStart=et,Ye.lineEnd=It,re<0?(Ke=-(wt=180),Ct=-(St=90)):ot>o?St=90:ot<-o&&(Ct=-90),vt[0]=Ke,vt[1]=wt},sphere:function(){Ke=-(wt=180),Ct=-(St=90)}};function He(At,Vt){Tt.push(vt=[Ke=At,wt=At]),VtSt&&(St=Vt)}function it(At,Vt){var wr=ce([At*d,Vt*d]);if(Te){var mr=nt(Te,wr),Fr=[mr[1],-mr[0],0],_i=nt(Fr,mr);at(_i),_i=qe(_i);var Si=At-Dt,Ci=Si>0?1:-1,Ki=_i[0]*h*Ci,Fn,Pi=p(Si)>180;Pi^(Ci*DtSt&&(St=Fn)):(Ki=(Ki+360)%360-180,Pi^(Ci*DtSt&&(St=Vt))),Pi?Atyr(Ke,wt)&&(wt=At):yr(At,wt)>yr(Ke,wt)&&(Ke=At):wt>=Ke?(Atwt&&(wt=At)):At>Dt?yr(Ke,At)>yr(Ke,wt)&&(wt=At):yr(At,wt)>yr(Ke,wt)&&(Ke=At)}else Tt.push(vt=[Ke=At,wt=At]);VtSt&&(St=Vt),Te=wr,Dt=At}function et(){Ye.point=it}function It(){vt[0]=Ke,vt[1]=wt,Ye.point=He,Te=null}function Yt(At,Vt){if(Te){var wr=At-Dt;ot.add(p(wr)>180?wr+(wr>0?360:-360):wr)}else Zt=At,Et=Vt;ke.point(At,Vt),it(At,Vt)}function cr(){ke.lineStart()}function _r(){Yt(Zt,Et),ke.lineEnd(),p(ot)>o&&(Ke=-(wt=180)),vt[0]=Ke,vt[1]=wt,Te=null}function yr(At,Vt){return(Vt-=At)<0?Vt+360:Vt}function Ut(At,Vt){return At[0]-Vt[0]}function Re(At,Vt){return At[0]<=At[1]?At[0]<=Vt&&Vt<=At[1]:Vtyr(mr[0],mr[1])&&(mr[1]=Fr[1]),yr(Fr[0],mr[1])>yr(mr[0],mr[1])&&(mr[0]=Fr[0])):_i.push(mr=Fr);for(Si=-1/0,wr=_i.length-1,Vt=0,mr=_i[wr];Vt<=wr;mr=Fr,++Vt)Fr=_i[Vt],(Ci=yr(mr[1],Fr[0]))>Si&&(Si=Ci,Ke=Fr[0],wt=mr[1])}return Tt=vt=null,Ke===1/0||Ct===1/0?[[NaN,NaN],[NaN,NaN]]:[[Ke,Ct],[wt,St]]}var Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di={sphere:F,point:ni,lineStart:Qi,lineEnd:Ni,polygonStart:function(){Di.lineStart=Rt,Di.lineEnd=yt},polygonEnd:function(){Di.lineStart=Qi,Di.lineEnd=Ni}};function ni(At,Vt){At*=d,Vt*=d;var wr=v(Vt);$i(wr*v(At),wr*x(At),x(Vt))}function $i(At,Vt,wr){++Oe,Fe+=(At-Fe)/Oe,ft+=(Vt-ft)/Oe,ge+=(wr-ge)/Oe}function Qi(){Di.point=si}function si(At,Vt){At*=d,Vt*=d;var wr=v(Vt);Er=wr*v(At),Rr=wr*x(At),pi=x(Vt),Di.point=Ai,$i(Er,Rr,pi)}function Ai(At,Vt){At*=d,Vt*=d;var wr=v(Vt),mr=wr*v(At),Fr=wr*x(At),_i=x(Vt),Si=b(M((Si=Rr*_i-pi*Fr)*Si+(Si=pi*mr-Er*_i)*Si+(Si=Er*Fr-Rr*mr)*Si),Er*mr+Rr*Fr+pi*_i);Ie+=Si,fe+=Si*(Er+(Er=mr)),pe+=Si*(Rr+(Rr=Fr)),dt+=Si*(pi+(pi=_i)),$i(Er,Rr,pi)}function Ni(){Di.point=ni}function Rt(){Di.point=Gt}function yt(){Wt(Gr,Br),Di.point=ni}function Gt(At,Vt){Gr=At,Br=Vt,At*=d,Vt*=d,Di.point=Wt;var wr=v(Vt);Er=wr*v(At),Rr=wr*x(At),pi=x(Vt),$i(Er,Rr,pi)}function Wt(At,Vt){At*=d,Vt*=d;var wr=v(Vt),mr=wr*v(At),Fr=wr*x(At),_i=x(Vt),Si=Rr*_i-pi*Fr,Ci=pi*mr-Er*_i,Ki=Er*Fr-Rr*mr,Fn=M(Si*Si+Ci*Ci+Ki*Ki),Pi=T(Fn),di=Fn&&-Pi/Fn;Pt+=di*Si,zt+=di*Ci,rr+=di*Ki,Ie+=Pi,fe+=Pi*(Er+(Er=mr)),pe+=Pi*(Rr+(Rr=Fr)),dt+=Pi*(pi+(pi=_i)),$i(Er,Rr,pi)}function xr(At){Oe=Ie=Fe=ft=ge=fe=pe=dt=Pt=zt=rr=0,H(At,Di);var Vt=Pt,wr=zt,mr=rr,Fr=Vt*Vt+wr*wr+mr*mr;return Fru?At+Math.round(-At/c)*c:At,Vt]}Or.invert=Or;function Hr(At,Vt,wr){return(At%=c)?Vt||wr?Nr(gi(At),ki(Vt,wr)):gi(At):Vt||wr?ki(Vt,wr):Or}function jr(At){return function(Vt,wr){return Vt+=At,[Vt>u?Vt-c:Vt<-u?Vt+c:Vt,wr]}}function gi(At){var Vt=jr(At);return Vt.invert=jr(-At),Vt}function ki(At,Vt){var wr=v(At),mr=x(At),Fr=v(Vt),_i=x(Vt);function Si(Ci,Ki){var Fn=v(Ki),Pi=v(Ci)*Fn,di=x(Ci)*Fn,Li=x(Ki),Mi=Li*wr+Pi*mr;return[b(di*Fr-Mi*_i,Pi*wr-Li*mr),T(Mi*Fr+di*_i)]}return Si.invert=function(Ci,Ki){var Fn=v(Ki),Pi=v(Ci)*Fn,di=x(Ci)*Fn,Li=x(Ki),Mi=Li*Fr-di*_i;return[b(di*Fr+Li*_i,Pi*wr+Mi*mr),T(Mi*wr-Pi*mr)]},Si}function Vi(At){At=Hr(At[0]*d,At[1]*d,At.length>2?At[2]*d:0);function Vt(wr){return wr=At(wr[0]*d,wr[1]*d),wr[0]*=h,wr[1]*=h,wr}return Vt.invert=function(wr){return wr=At.invert(wr[0]*d,wr[1]*d),wr[0]*=h,wr[1]*=h,wr},Vt}function ti(At,Vt,wr,mr,Fr,_i){if(wr){var Si=v(Vt),Ci=x(Vt),Ki=mr*wr;Fr==null?(Fr=Vt+mr*c,_i=Vt-Ki/2):(Fr=tn(Si,Fr),_i=tn(Si,_i),(mr>0?Fr<_i:Fr>_i)&&(Fr+=mr*c));for(var Fn,Pi=Fr;mr>0?Pi>_i:Pi<_i;Pi-=Ki)Fn=qe([Si,-Ci*v(Pi),-Ci*x(Pi)]),At.point(Fn[0],Fn[1])}}function tn(At,Vt){Vt=ce(Vt),Vt[0]-=At,at(Vt);var wr=P(-Vt[1]);return((-Vt[2]<0?-wr:wr)+c-o)%c}function Yr(){var At=Lr([0,0]),Vt=Lr(90),wr=Lr(6),mr,Fr,_i={point:Si};function Si(Ki,Fn){mr.push(Ki=Fr(Ki,Fn)),Ki[0]*=h,Ki[1]*=h}function Ci(){var Ki=At.apply(this,arguments),Fn=Vt.apply(this,arguments)*d,Pi=wr.apply(this,arguments)*d;return mr=[],Fr=Hr(-Ki[0]*d,-Ki[1]*d,0).invert,ti(_i,Fn,Pi,1),Ki={type:"Polygon",coordinates:[mr]},mr=Fr=null,Ki}return Ci.center=function(Ki){return arguments.length?(At=typeof Ki=="function"?Ki:Lr([+Ki[0],+Ki[1]]),Ci):At},Ci.radius=function(Ki){return arguments.length?(Vt=typeof Ki=="function"?Ki:Lr(+Ki),Ci):Vt},Ci.precision=function(Ki){return arguments.length?(wr=typeof Ki=="function"?Ki:Lr(+Ki),Ci):wr},Ci}function oi(){var At=[],Vt;return{point:function(wr,mr,Fr){Vt.push([wr,mr,Fr])},lineStart:function(){At.push(Vt=[])},lineEnd:F,rejoin:function(){At.length>1&&At.push(At.pop().concat(At.shift()))},result:function(){var wr=At;return At=[],Vt=null,wr}}}function Fi(At,Vt){return p(At[0]-Vt[0])=0;--Ci)Fr.point((di=Pi[Ci])[0],di[1]);else mr(Li.x,Li.p.x,-1,Fr);Li=Li.p}Li=Li.o,Pi=Li.z,Mi=!Mi}while(!Li.v);Fr.lineEnd()}}}function Ri(At){if(Vt=At.length){for(var Vt,wr=0,mr=At[0],Fr;++wr=0?1:-1,xl=dl*Ks,Bl=xl>u,bl=ta*is;if(Ii.add(b(bl*dl*x(xl),ya*Cs+bl*v(xl))),Si+=Bl?Ks+dl*c:Ks,Bl^Mi>=wr^va>=wr){var eu=nt(ce(Li),ce(pa));at(eu);var Zl=nt(_i,eu);at(Zl);var Ul=(Bl^Ks>=0?-1:1)*T(Zl[2]);(mr>Ul||mr===Ul&&(eu[0]||eu[1]))&&(Ci+=Bl^Ks>=0?1:-1)}}return(Si<-o||Si0){for(Ki||(Fr.polygonStart(),Ki=!0),Fr.lineStart(),Cs=0;Cs1&&zn&2&&is.push(is.pop().concat(is.shift())),Pi.push(is.filter(ct))}}return Li}}function ct(At){return At.length>1}function tr(At,Vt){return((At=At.x)[0]<0?At[1]-l-o:l-At[1])-((Vt=Vt.x)[0]<0?Vt[1]-l-o:l-Vt[1])}var pr=Xr(function(){return!0},gr,Ti,[-u,-l]);function gr(At){var Vt=NaN,wr=NaN,mr=NaN,Fr;return{lineStart:function(){At.lineStart(),Fr=1},point:function(_i,Si){var Ci=_i>0?u:-u,Ki=p(_i-Vt);p(Ki-u)0?l:-l),At.point(mr,wr),At.lineEnd(),At.lineStart(),At.point(Ci,wr),At.point(_i,wr),Fr=0):mr!==Ci&&Ki>=u&&(p(Vt-mr)o?_((x(Vt)*(_i=v(mr))*x(wr)-x(mr)*(Fr=v(Vt))*x(At))/(Fr*_i*Si)):(Vt+mr)/2}function Ti(At,Vt,wr,mr){var Fr;if(At==null)Fr=wr*l,mr.point(-u,Fr),mr.point(0,Fr),mr.point(u,Fr),mr.point(u,0),mr.point(u,-Fr),mr.point(0,-Fr),mr.point(-u,-Fr),mr.point(-u,0),mr.point(-u,Fr);else if(p(At[0]-Vt[0])>o){var _i=At[0]0,Fr=p(Vt)>o;function _i(Pi,di,Li,Mi){ti(Mi,At,wr,Li,Pi,di)}function Si(Pi,di){return v(Pi)*v(di)>Vt}function Ci(Pi){var di,Li,Mi,Gn,ta;return{lineStart:function(){Gn=Mi=!1,ta=1},point:function(ya,ia){var pa=[ya,ia],va,zn=Si(ya,ia),is=mr?zn?0:Fn(ya,ia):zn?Fn(ya+(ya<0?u:-u),ia):0;if(!di&&(Gn=Mi=zn)&&Pi.lineStart(),zn!==Mi&&(va=Ki(di,pa),(!va||Fi(di,va)||Fi(pa,va))&&(pa[2]=1)),zn!==Mi)ta=0,zn?(Pi.lineStart(),va=Ki(pa,di),Pi.point(va[0],va[1])):(va=Ki(di,pa),Pi.point(va[0],va[1],2),Pi.lineEnd()),di=va;else if(Fr&&di&&mr^zn){var Cs;!(is&Li)&&(Cs=Ki(pa,di,!0))&&(ta=0,mr?(Pi.lineStart(),Pi.point(Cs[0][0],Cs[0][1]),Pi.point(Cs[1][0],Cs[1][1]),Pi.lineEnd()):(Pi.point(Cs[1][0],Cs[1][1]),Pi.lineEnd(),Pi.lineStart(),Pi.point(Cs[0][0],Cs[0][1],3)))}zn&&(!di||!Fi(di,pa))&&Pi.point(pa[0],pa[1]),di=pa,Mi=zn,Li=is},lineEnd:function(){Mi&&Pi.lineEnd(),di=null},clean:function(){return ta|(Gn&&Mi)<<1}}}function Ki(Pi,di,Li){var Mi=ce(Pi),Gn=ce(di),ta=[1,0,0],ya=nt(Mi,Gn),ia=Je(ya,ya),pa=ya[0],va=ia-pa*pa;if(!va)return!Li&Πvar zn=Vt*ia/va,is=-Vt*pa/va,Cs=nt(ta,ya),Ks=Nt(ta,zn),dl=Nt(ya,is);gt(Ks,dl);var xl=Cs,Bl=Je(Ks,xl),bl=Je(xl,xl),eu=Bl*Bl-bl*(Je(Ks,Ks)-1);if(!(eu<0)){var Zl=M(eu),Ul=Nt(xl,(-Bl-Zl)/bl);if(gt(Ul,Ks),Ul=qe(Ul),!Li)return Ul;var ja=Pi[0],ns=di[0],Js=Pi[1],cs=di[1],sl;ns0^Ul[1]<(p(Ul[0]-ja)u^(ja<=Ul[0]&&Ul[0]<=ns)){var Ml=Nt(xl,(-Bl+Zl)/bl);return gt(Ml,Ks),[Ul,qe(Ml)]}}}function Fn(Pi,di){var Li=mr?At:u-At,Mi=0;return Pi<-Li?Mi|=1:Pi>Li&&(Mi|=2),di<-Li?Mi|=4:di>Li&&(Mi|=8),Mi}return Xr(Si,Ci,_i,mr?[0,-At]:[-u,At-u])}function ii(At,Vt,wr,mr,Fr,_i){var Si=At[0],Ci=At[1],Ki=Vt[0],Fn=Vt[1],Pi=0,di=1,Li=Ki-Si,Mi=Fn-Ci,Gn;if(Gn=wr-Si,!(!Li&&Gn>0)){if(Gn/=Li,Li<0){if(Gn0){if(Gn>di)return;Gn>Pi&&(Pi=Gn)}if(Gn=Fr-Si,!(!Li&&Gn<0)){if(Gn/=Li,Li<0){if(Gn>di)return;Gn>Pi&&(Pi=Gn)}else if(Li>0){if(Gn0)){if(Gn/=Mi,Mi<0){if(Gn0){if(Gn>di)return;Gn>Pi&&(Pi=Gn)}if(Gn=_i-Ci,!(!Mi&&Gn<0)){if(Gn/=Mi,Mi<0){if(Gn>di)return;Gn>Pi&&(Pi=Gn)}else if(Mi>0){if(Gn0&&(At[0]=Si+Pi*Li,At[1]=Ci+Pi*Mi),di<1&&(Vt[0]=Si+di*Li,Vt[1]=Ci+di*Mi),!0}}}}}var Xi=1e9,aa=-Xi;function Mn(At,Vt,wr,mr){function Fr(Fn,Pi){return At<=Fn&&Fn<=wr&&Vt<=Pi&&Pi<=mr}function _i(Fn,Pi,di,Li){var Mi=0,Gn=0;if(Fn==null||(Mi=Si(Fn,di))!==(Gn=Si(Pi,di))||Ki(Fn,Pi)<0^di>0)do Li.point(Mi===0||Mi===3?At:wr,Mi>1?mr:Vt);while((Mi=(Mi+di+4)%4)!==Gn);else Li.point(Pi[0],Pi[1])}function Si(Fn,Pi){return p(Fn[0]-At)0?0:3:p(Fn[0]-wr)0?2:1:p(Fn[1]-Vt)0?1:0:Pi>0?3:2}function Ci(Fn,Pi){return Ki(Fn.x,Pi.x)}function Ki(Fn,Pi){var di=Si(Fn,1),Li=Si(Pi,1);return di!==Li?di-Li:di===0?Pi[1]-Fn[1]:di===1?Fn[0]-Pi[0]:di===2?Fn[1]-Pi[1]:Pi[0]-Fn[0]}return function(Fn){var Pi=Fn,di=oi(),Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks={point:dl,lineStart:eu,lineEnd:Zl,polygonStart:Bl,polygonEnd:bl};function dl(ja,ns){Fr(ja,ns)&&Pi.point(ja,ns)}function xl(){for(var ja=0,ns=0,Js=Mi.length;nsmr&&(Rl-zl)*(mr-Ml)>(Tl-Ml)*(At-zl)&&++ja:Tl<=mr&&(Rl-zl)*(mr-Ml)<(Tl-Ml)*(At-zl)&&--ja;return ja}function Bl(){Pi=di,Li=[],Mi=[],Cs=!0}function bl(){var ja=xl(),ns=Cs&&ja,Js=(Li=t.merge(Li)).length;(ns||Js)&&(Fn.polygonStart(),ns&&(Fn.lineStart(),_i(null,null,1,Fn),Fn.lineEnd()),Js&&nn(Li,Ci,ja,_i,Fn),Fn.polygonEnd()),Pi=Fn,Li=Mi=Gn=null}function eu(){Ks.point=Ul,Mi&&Mi.push(Gn=[]),is=!0,zn=!1,pa=va=NaN}function Zl(){Li&&(Ul(ta,ya),ia&&zn&&di.rejoin(),Li.push(di.result())),Ks.point=dl,zn&&Pi.lineEnd()}function Ul(ja,ns){var Js=Fr(ja,ns);if(Mi&&Gn.push([ja,ns]),is)ta=ja,ya=ns,ia=Js,is=!1,Js&&(Pi.lineStart(),Pi.point(ja,ns));else if(Js&&zn)Pi.point(ja,ns);else{var cs=[pa=Math.max(aa,Math.min(Xi,pa)),va=Math.max(aa,Math.min(Xi,va))],sl=[ja=Math.max(aa,Math.min(Xi,ja)),ns=Math.max(aa,Math.min(Xi,ns))];ii(cs,sl,At,Vt,wr,mr)?(zn||(Pi.lineStart(),Pi.point(cs[0],cs[1])),Pi.point(sl[0],sl[1]),Js||Pi.lineEnd(),Cs=!1):Js&&(Pi.lineStart(),Pi.point(ja,ns),Cs=!1)}pa=ja,va=ns,zn=Js}return Ks}}function Un(){var At=0,Vt=0,wr=960,mr=500,Fr,_i,Si;return Si={stream:function(Ci){return Fr&&_i===Ci?Fr:Fr=Mn(At,Vt,wr,mr)(_i=Ci)},extent:function(Ci){return arguments.length?(At=+Ci[0][0],Vt=+Ci[0][1],wr=+Ci[1][0],mr=+Ci[1][1],Fr=_i=null,Si):[[At,Vt],[wr,mr]]}}}var Ga=r(),ma,oa,ka,so={sphere:F,point:F,lineStart:Kr,lineEnd:F,polygonStart:F,polygonEnd:F};function Kr(){so.point=Yo,so.lineEnd=Ia}function Ia(){so.point=so.lineEnd=F}function Yo(At,Vt){At*=d,Vt*=d,ma=At,oa=x(Vt),ka=v(Vt),so.point=fa}function fa(At,Vt){At*=d,Vt*=d;var wr=x(Vt),mr=v(Vt),Fr=p(At-ma),_i=v(Fr),Si=x(Fr),Ci=mr*Si,Ki=ka*wr-oa*mr*_i,Fn=oa*wr+ka*mr*_i;Ga.add(b(M(Ci*Ci+Ki*Ki),Fn)),ma=At,oa=wr,ka=mr}function kn(At){return Ga.reset(),H(At,so),+Ga}var Aa=[null,null],ys={type:"LineString",coordinates:Aa};function uo(At,Vt){return Aa[0]=At,Aa[1]=Vt,kn(ys)}var ls={Feature:function(At,Vt){return fo(At.geometry,Vt)},FeatureCollection:function(At,Vt){for(var wr=At.features,mr=-1,Fr=wr.length;++mr0&&(Fr=uo(At[_i],At[_i-1]),Fr>0&&wr<=Fr&&mr<=Fr&&(wr+mr-Fr)*(1-Math.pow((wr-mr)/Fr,2))o}).map(Li)).concat(t.range(k(_i/Fn)*Fn,Fr,Fn).filter(function(va){return p(va%di)>o}).map(Mi))}return ia.lines=function(){return pa().map(function(va){return{type:"LineString",coordinates:va}})},ia.outline=function(){return{type:"Polygon",coordinates:[Gn(mr).concat(ta(Si).slice(1),Gn(wr).reverse().slice(1),ta(Ci).reverse().slice(1))]}},ia.extent=function(va){return arguments.length?ia.extentMajor(va).extentMinor(va):ia.extentMinor()},ia.extentMajor=function(va){return arguments.length?(mr=+va[0][0],wr=+va[1][0],Ci=+va[0][1],Si=+va[1][1],mr>wr&&(va=mr,mr=wr,wr=va),Ci>Si&&(va=Ci,Ci=Si,Si=va),ia.precision(ya)):[[mr,Ci],[wr,Si]]},ia.extentMinor=function(va){return arguments.length?(Vt=+va[0][0],At=+va[1][0],_i=+va[0][1],Fr=+va[1][1],Vt>At&&(va=Vt,Vt=At,At=va),_i>Fr&&(va=_i,_i=Fr,Fr=va),ia.precision(ya)):[[Vt,_i],[At,Fr]]},ia.step=function(va){return arguments.length?ia.stepMajor(va).stepMinor(va):ia.stepMinor()},ia.stepMajor=function(va){return arguments.length?(Pi=+va[0],di=+va[1],ia):[Pi,di]},ia.stepMinor=function(va){return arguments.length?(Ki=+va[0],Fn=+va[1],ia):[Ki,Fn]},ia.precision=function(va){return arguments.length?(ya=+va,Li=Wi(_i,Fr,90),Mi=gn(Vt,At,ya),Gn=Wi(Ci,Si,90),ta=gn(mr,wr,ya),ia):ya},ia.extentMajor([[-180,-90+o],[180,90-o]]).extentMinor([[-180,-80-o],[180,80+o]])}function Ha(){return Ps()()}function Sn(At,Vt){var wr=At[0]*d,mr=At[1]*d,Fr=Vt[0]*d,_i=Vt[1]*d,Si=v(mr),Ci=x(mr),Ki=v(_i),Fn=x(_i),Pi=Si*v(wr),di=Si*x(wr),Li=Ki*v(Fr),Mi=Ki*x(Fr),Gn=2*T(M(B(_i-mr)+Si*Ki*B(Fr-wr))),ta=x(Gn),ya=Gn?function(ia){var pa=x(ia*=Gn)/ta,va=x(Gn-ia)/ta,zn=va*Pi+pa*Li,is=va*di+pa*Mi,Cs=va*Ci+pa*Fn;return[b(is,zn)*h,b(Cs,M(zn*zn+is*is))*h]}:function(){return[wr*h,mr*h]};return ya.distance=Gn,ya}function ao(At){return At}var Ba=r(),Ko=r(),Qo,Hi,Sa,Qa,vn={point:F,lineStart:F,lineEnd:F,polygonStart:function(){vn.lineStart=da,vn.lineEnd=Ts},polygonEnd:function(){vn.lineStart=vn.lineEnd=vn.point=F,Ba.add(p(Ko)),Ko.reset()},result:function(){var At=Ba/2;return Ba.reset(),At}};function da(){vn.point=la}function la(At,Vt){vn.point=vo,Qo=Sa=At,Hi=Qa=Vt}function vo(At,Vt){Ko.add(Qa*At-Sa*Vt),Sa=At,Qa=Vt}function Ts(){vo(Qo,Hi)}var ps=1/0,co=ps,mo=-ps,No=mo,jn={point:Go,lineStart:F,lineEnd:F,polygonStart:F,polygonEnd:F,result:function(){var At=[[ps,co],[mo,No]];return mo=No=-(co=ps=1/0),At}};function Go(At,Vt){Atmo&&(mo=At),VtNo&&(No=Vt)}var Ys=0,qs=0,Ns=0,Oa=0,ha=0,Vs=0,Ya=0,_n=0,Vn=0,wo,Ra,Xn,un,$n={point:Ka,lineStart:qn,lineEnd:lo,polygonStart:function(){$n.lineStart=eo,$n.lineEnd=sa},polygonEnd:function(){$n.point=Ka,$n.lineStart=qn,$n.lineEnd=lo},result:function(){var At=Vn?[Ya/Vn,_n/Vn]:Vs?[Oa/Vs,ha/Vs]:Ns?[Ys/Ns,qs/Ns]:[NaN,NaN];return Ys=qs=Ns=Oa=ha=Vs=Ya=_n=Vn=0,At}};function Ka(At,Vt){Ys+=At,qs+=Vt,++Ns}function qn(){$n.point=Eo}function Eo(At,Vt){$n.point=Ja,Ka(Xn=At,un=Vt)}function Ja(At,Vt){var wr=At-Xn,mr=Vt-un,Fr=M(wr*wr+mr*mr);Oa+=Fr*(Xn+At)/2,ha+=Fr*(un+Vt)/2,Vs+=Fr,Ka(Xn=At,un=Vt)}function lo(){$n.point=Ka}function eo(){$n.point=es}function sa(){Na(wo,Ra)}function es(At,Vt){$n.point=Na,Ka(wo=Xn=At,Ra=un=Vt)}function Na(At,Vt){var wr=At-Xn,mr=Vt-un,Fr=M(wr*wr+mr*mr);Oa+=Fr*(Xn+At)/2,ha+=Fr*(un+Vt)/2,Vs+=Fr,Fr=un*At-Xn*Vt,Ya+=Fr*(Xn+At),_n+=Fr*(un+Vt),Vn+=Fr*3,Ka(Xn=At,un=Vt)}function rn(At){this._context=At}rn.prototype={_radius:4.5,pointRadius:function(At){return this._radius=At,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(At,Vt){switch(this._point){case 0:{this._context.moveTo(At,Vt),this._point=1;break}case 1:{this._context.lineTo(At,Vt);break}default:{this._context.moveTo(At+this._radius,Vt),this._context.arc(At,Vt,this._radius,0,c);break}}},result:F};var Pa=r(),to,yo,Jo,To,Dn,_a={point:F,lineStart:function(){_a.point=Ws},lineEnd:function(){to&&Ca(yo,Jo),_a.point=F},polygonStart:function(){to=!0},polygonEnd:function(){to=null},result:function(){var At=+Pa;return Pa.reset(),At}};function Ws(At,Vt){_a.point=Ca,yo=To=At,Jo=Dn=Vt}function Ca(At,Vt){To-=At,Dn-=Vt,Pa.add(M(To*To+Dn*Dn)),To=At,Dn=Vt}function Es(){this._string=[]}Es.prototype={_radius:4.5,_circle:As(4.5),pointRadius:function(At){return(At=+At)!==this._radius&&(this._radius=At,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(At,Vt){switch(this._point){case 0:{this._string.push("M",At,",",Vt),this._point=1;break}case 1:{this._string.push("L",At,",",Vt);break}default:{this._circle==null&&(this._circle=As(this._radius)),this._string.push("M",At,",",Vt,this._circle);break}}},result:function(){if(this._string.length){var At=this._string.join("");return this._string=[],At}else return null}};function As(At){return"m0,"+At+"a"+At+","+At+" 0 1,1 0,"+-2*At+"a"+At+","+At+" 0 1,1 0,"+2*At+"z"}function Ho(At,Vt){var wr=4.5,mr,Fr;function _i(Si){return Si&&(typeof wr=="function"&&Fr.pointRadius(+wr.apply(this,arguments)),H(Si,mr(Fr))),Fr.result()}return _i.area=function(Si){return H(Si,mr(vn)),vn.result()},_i.measure=function(Si){return H(Si,mr(_a)),_a.result()},_i.bounds=function(Si){return H(Si,mr(jn)),jn.result()},_i.centroid=function(Si){return H(Si,mr($n)),$n.result()},_i.projection=function(Si){return arguments.length?(mr=Si==null?(At=null,ao):(At=Si).stream,_i):At},_i.context=function(Si){return arguments.length?(Fr=Si==null?(Vt=null,new Es):new rn(Vt=Si),typeof wr!="function"&&Fr.pointRadius(wr),_i):Vt},_i.pointRadius=function(Si){return arguments.length?(wr=typeof Si=="function"?Si:(Fr.pointRadius(+Si),+Si),_i):wr},_i.projection(At).context(Vt)}function Wa(At){return{stream:Ao(At)}}function Ao(At){return function(Vt){var wr=new ts;for(var mr in At)wr[mr]=At[mr];return wr.stream=Vt,wr}}function ts(){}ts.prototype={constructor:ts,point:function(At,Vt){this.stream.point(At,Vt)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function Wo(At,Vt,wr){var mr=At.clipExtent&&At.clipExtent();return At.scale(150).translate([0,0]),mr!=null&&At.clipExtent(null),H(wr,At.stream(jn)),Vt(jn.result()),mr!=null&&At.clipExtent(mr),At}function qa(At,Vt,wr){return Wo(At,function(mr){var Fr=Vt[1][0]-Vt[0][0],_i=Vt[1][1]-Vt[0][1],Si=Math.min(Fr/(mr[1][0]-mr[0][0]),_i/(mr[1][1]-mr[0][1])),Ci=+Vt[0][0]+(Fr-Si*(mr[1][0]+mr[0][0]))/2,Ki=+Vt[0][1]+(_i-Si*(mr[1][1]+mr[0][1]))/2;At.scale(150*Si).translate([Ci,Ki])},wr)}function ln(At,Vt,wr){return qa(At,[[0,0],Vt],wr)}function Bo(At,Vt,wr){return Wo(At,function(mr){var Fr=+Vt,_i=Fr/(mr[1][0]-mr[0][0]),Si=(Fr-_i*(mr[1][0]+mr[0][0]))/2,Ci=-_i*mr[0][1];At.scale(150*_i).translate([Si,Ci])},wr)}function ko(At,Vt,wr){return Wo(At,function(mr){var Fr=+Vt,_i=Fr/(mr[1][1]-mr[0][1]),Si=-_i*mr[0][0],Ci=(Fr-_i*(mr[1][1]+mr[0][1]))/2;At.scale(150*_i).translate([Si,Ci])},wr)}var oo=16,za=v(30*d);function ea(At,Vt){return+Vt?$s(At,Vt):rs(At)}function rs(At){return Ao({point:function(Vt,wr){Vt=At(Vt,wr),this.stream.point(Vt[0],Vt[1])}})}function $s(At,Vt){function wr(mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya){var ia=Fn-mr,pa=Pi-Fr,va=ia*ia+pa*pa;if(va>4*Vt&&ta--){var zn=Si+Li,is=Ci+Mi,Cs=Ki+Gn,Ks=M(zn*zn+is*is+Cs*Cs),dl=T(Cs/=Ks),xl=p(p(Cs)-1)Vt||p((ia*Zl+pa*Ul)/va-.5)>.3||Si*Li+Ci*Mi+Ki*Gn2?ja[2]%360*d:0,Zl()):[Ci*h,Ki*h,Fn*h]},bl.angle=function(ja){return arguments.length?(di=ja%360*d,Zl()):di*h},bl.reflectX=function(ja){return arguments.length?(Li=ja?-1:1,Zl()):Li<0},bl.reflectY=function(ja){return arguments.length?(Mi=ja?-1:1,Zl()):Mi<0},bl.precision=function(ja){return arguments.length?(Cs=ea(Ks,is=ja*ja),Ul()):M(is)},bl.fitExtent=function(ja,ns){return qa(bl,ja,ns)},bl.fitSize=function(ja,ns){return ln(bl,ja,ns)},bl.fitWidth=function(ja,ns){return Bo(bl,ja,ns)},bl.fitHeight=function(ja,ns){return ko(bl,ja,ns)};function Zl(){var ja=as(wr,0,0,Li,Mi,di).apply(null,Vt(_i,Si)),ns=(di?as:fl)(wr,mr-ja[0],Fr-ja[1],Li,Mi,di);return Pi=Hr(Ci,Ki,Fn),Ks=Nr(Vt,ns),dl=Nr(Pi,Ks),Cs=ea(Ks,is),Ul()}function Ul(){return xl=Bl=null,bl}return function(){return Vt=At.apply(this,arguments),bl.invert=Vt.invert&&eu,Zl()}}function ho(At){var Vt=0,wr=u/3,mr=Qs(At),Fr=mr(Vt,wr);return Fr.parallels=function(_i){return arguments.length?mr(Vt=_i[0]*d,wr=_i[1]*d):[Vt*h,wr*h]},Fr}function gs(At){var Vt=v(At);function wr(mr,Fr){return[mr*Vt,x(Fr)/Vt]}return wr.invert=function(mr,Fr){return[mr/Vt,T(Fr*Vt)]},wr}function Vo(At,Vt){var wr=x(At),mr=(wr+x(Vt))/2;if(p(mr)=.12&&ya<.234&&ta>=-.425&&ta<-.214?Fr:ya>=.166&&ya<.234&&ta>=-.214&&ta<-.115?Si:wr).invert(Li)},Pi.stream=function(Li){return At&&Vt===Li?At:At=xs([wr.stream(Vt=Li),Fr.stream(Li),Si.stream(Li)])},Pi.precision=function(Li){return arguments.length?(wr.precision(Li),Fr.precision(Li),Si.precision(Li),di()):wr.precision()},Pi.scale=function(Li){return arguments.length?(wr.scale(Li),Fr.scale(Li*.35),Si.scale(Li),Pi.translate(wr.translate())):wr.scale()},Pi.translate=function(Li){if(!arguments.length)return wr.translate();var Mi=wr.scale(),Gn=+Li[0],ta=+Li[1];return mr=wr.translate(Li).clipExtent([[Gn-.455*Mi,ta-.238*Mi],[Gn+.455*Mi,ta+.238*Mi]]).stream(Fn),_i=Fr.translate([Gn-.307*Mi,ta+.201*Mi]).clipExtent([[Gn-.425*Mi+o,ta+.12*Mi+o],[Gn-.214*Mi-o,ta+.234*Mi-o]]).stream(Fn),Ci=Si.translate([Gn-.205*Mi,ta+.212*Mi]).clipExtent([[Gn-.214*Mi+o,ta+.166*Mi+o],[Gn-.115*Mi-o,ta+.234*Mi-o]]).stream(Fn),di()},Pi.fitExtent=function(Li,Mi){return qa(Pi,Li,Mi)},Pi.fitSize=function(Li,Mi){return ln(Pi,Li,Mi)},Pi.fitWidth=function(Li,Mi){return Bo(Pi,Li,Mi)},Pi.fitHeight=function(Li,Mi){return ko(Pi,Li,Mi)};function di(){return At=Vt=null,Pi}return Pi.scale(1070)}function Ea(At){return function(Vt,wr){var mr=v(Vt),Fr=v(wr),_i=At(mr*Fr);return[_i*Fr*x(Vt),_i*x(wr)]}}function Jn(At){return function(Vt,wr){var mr=M(Vt*Vt+wr*wr),Fr=At(mr),_i=x(Fr),Si=v(Fr);return[b(Vt*_i,mr*Si),T(mr&&wr*_i/mr)]}}var Oo=Ea(function(At){return M(2/(1+At))});Oo.invert=Jn(function(At){return 2*T(At/2)});function rl(){return Ma(Oo).scale(124.75).clipAngle(180-.001)}var Gs=Ea(function(At){return(At=P(At))&&At/x(At)});Gs.invert=Jn(function(At){return At});function bs(){return Ma(Gs).scale(79.4188).clipAngle(180-.001)}function zs(At,Vt){return[At,A(m((l+Vt)/2))]}zs.invert=function(At,Vt){return[At,2*_(E(Vt))-l]};function $o(){return Ta(zs).scale(961/c)}function Ta(At){var Vt=Ma(At),wr=Vt.center,mr=Vt.scale,Fr=Vt.translate,_i=Vt.clipExtent,Si=null,Ci,Ki,Fn;Vt.scale=function(di){return arguments.length?(mr(di),Pi()):mr()},Vt.translate=function(di){return arguments.length?(Fr(di),Pi()):Fr()},Vt.center=function(di){return arguments.length?(wr(di),Pi()):wr()},Vt.clipExtent=function(di){return arguments.length?(di==null?Si=Ci=Ki=Fn=null:(Si=+di[0][0],Ci=+di[0][1],Ki=+di[1][0],Fn=+di[1][1]),Pi()):Si==null?null:[[Si,Ci],[Ki,Fn]]};function Pi(){var di=u*mr(),Li=Vt(Vi(Vt.rotate()).invert([0,0]));return _i(Si==null?[[Li[0]-di,Li[1]-di],[Li[0]+di,Li[1]+di]]:At===zs?[[Math.max(Li[0]-di,Si),Ci],[Math.min(Li[0]+di,Ki),Fn]]:[[Si,Math.max(Li[1]-di,Ci)],[Ki,Math.min(Li[1]+di,Fn)]])}return Pi()}function os(At){return m((l+At)/2)}function _l(At,Vt){var wr=v(At),mr=At===Vt?x(At):A(wr/v(Vt))/A(os(Vt)/os(At)),Fr=wr*L(os(At),mr)/mr;if(!mr)return zs;function _i(Si,Ci){Fr>0?Ci<-l+o&&(Ci=-l+o):Ci>l-o&&(Ci=l-o);var Ki=Fr/L(os(Ci),mr);return[Ki*x(mr*Si),Fr-Ki*v(mr*Si)]}return _i.invert=function(Si,Ci){var Ki=Fr-Ci,Fn=C(mr)*M(Si*Si+Ki*Ki),Pi=b(Si,p(Ki))*C(Ki);return Ki*mr<0&&(Pi-=u*C(Si)*C(Ki)),[Pi/mr,2*_(L(Fr/Fn,1/mr))-l]},_i}function Ss(){return ho(_l).scale(109.5).parallels([30,30])}function po(At,Vt){return[At,Vt]}po.invert=po;function go(){return Ma(po).scale(152.63)}function ss(At,Vt){var wr=v(At),mr=At===Vt?x(At):(wr-v(Vt))/(Vt-At),Fr=wr/mr+At;if(p(mr)o&&--mr>0);return[At/(.8707+(_i=wr*wr)*(-.131979+_i*(-.013791+_i*_i*_i*(.003971-.001529*_i)))),wr]};function hl(){return Ma(Fs).scale(175.295)}function Fa(At,Vt){return[v(Vt)*x(At),x(Vt)]}Fa.invert=Jn(T);function Ms(){return Ma(Fa).scale(249.5).clipAngle(90+o)}function jo(At,Vt){var wr=v(Vt),mr=1+v(At)*wr;return[wr*x(At)/mr,x(Vt)/mr]}jo.invert=Jn(function(At){return 2*_(At)});function Rs(){return Ma(jo).scale(250).clipAngle(142)}function Is(At,Vt){return[A(m((l+Vt)/2)),-At]}Is.invert=function(At,Vt){return[-Vt,2*_(E(At))-l]};function Bs(){var At=Ta(Is),Vt=At.center,wr=At.rotate;return At.center=function(mr){return arguments.length?Vt([-mr[1],mr[0]]):(mr=Vt(),[mr[1],-mr[0]])},At.rotate=function(mr){return arguments.length?wr([mr[0],mr[1],mr.length>2?mr[2]+90:90]):(mr=wr(),[mr[0],mr[1],mr[2]-90])},wr([0,0,90]).scale(159.155)}e.geoAlbers=Lo,e.geoAlbersUsa=ks,e.geoArea=ye,e.geoAzimuthalEqualArea=rl,e.geoAzimuthalEqualAreaRaw=Oo,e.geoAzimuthalEquidistant=bs,e.geoAzimuthalEquidistantRaw=Gs,e.geoBounds=xe,e.geoCentroid=xr,e.geoCircle=Yr,e.geoClipAntimeridian=pr,e.geoClipCircle=en,e.geoClipExtent=Un,e.geoClipRectangle=Mn,e.geoConicConformal=Ss,e.geoConicConformalRaw=_l,e.geoConicEqualArea=Do,e.geoConicEqualAreaRaw=Vo,e.geoConicEquidistant=qo,e.geoConicEquidistantRaw=ss,e.geoContains=Po,e.geoDistance=uo,e.geoEqualEarth=el,e.geoEqualEarthRaw=cl,e.geoEquirectangular=go,e.geoEquirectangularRaw=po,e.geoGnomonic=Ro,e.geoGnomonicRaw=Hs,e.geoGraticule=Ps,e.geoGraticule10=Ha,e.geoIdentity=tl,e.geoInterpolate=Sn,e.geoLength=kn,e.geoMercator=$o,e.geoMercatorRaw=zs,e.geoNaturalEarth1=hl,e.geoNaturalEarth1Raw=Fs,e.geoOrthographic=Ms,e.geoOrthographicRaw=Fa,e.geoPath=Ho,e.geoProjection=Ma,e.geoProjectionMutator=Qs,e.geoRotation=Vi,e.geoStereographic=Rs,e.geoStereographicRaw=jo,e.geoStream=H,e.geoTransform=Wa,e.geoTransverseMercator=Bs,e.geoTransverseMercatorRaw=Is,Object.defineProperty(e,"__esModule",{value:!0})})});var G6e=Ae((PF,V6e)=>{(function(e,t){typeof PF=="object"&&typeof V6e!="undefined"?t(PF,GZ(),nk()):t(e.d3=e.d3||{},e.d3,e.d3)})(PF,function(e,t,r){"use strict";var n=Math.abs,i=Math.atan,a=Math.atan2,o=Math.cos,s=Math.exp,u=Math.floor,l=Math.log,f=Math.max,c=Math.min,h=Math.pow,d=Math.round,p=Math.sign||function(he){return he>0?1:he<0?-1:0},_=Math.sin,b=Math.tan,v=1e-6,k=1e-12,E=Math.PI,A=E/2,L=E/4,x=Math.SQRT1_2,C=G(2),M=G(E),m=E*2,P=180/E,T=E/180;function B(he){return he?he/Math.sin(he):1}function F(he){return he>1?A:he<-1?-A:Math.asin(he)}function U(he){return he>1?0:he<-1?E:Math.acos(he)}function G(he){return he>0?Math.sqrt(he):0}function j(he){return he=s(2*he),(he-1)/(he+1)}function W(he){return(s(he)-s(-he))/2}function N(he){return(s(he)+s(-he))/2}function H(he){return l(he+G(he*he+1))}function re(he){return l(he+G(he*he-1))}function ae(he){var Se=b(he/2),Ne=2*l(o(he/2))/(Se*Se);function Ge(lt,rt){var pt=o(lt),Ht=o(rt),nr=_(rt),fr=Ht*pt,Tr=-((1-fr?l((1+fr)/2)/(1-fr):-.5)+Ne/(1+fr));return[Tr*Ht*_(lt),Tr*nr]}return Ge.invert=function(lt,rt){var pt=G(lt*lt+rt*rt),Ht=-he/2,nr=50,fr;if(!pt)return[0,0];do{var Tr=Ht/2,Ir=o(Tr),ri=_(Tr),li=ri/Ir,Ei=-l(n(Ir));Ht-=fr=(2/li*Ei-Ne*li-pt)/(-Ei/(ri*ri)+1-Ne/(2*Ir*Ir))*(Ir<0?.7:1)}while(n(fr)>v&&--nr>0);var hn=_(Ht);return[a(lt*hn,pt*o(Ht)),F(rt*hn/pt)]},Ge}function be(){var he=A,Se=t.geoProjectionMutator(ae),Ne=Se(he);return Ne.radius=function(Ge){return arguments.length?Se(he=Ge*T):he*P},Ne.scale(179.976).clipAngle(147)}function ze(he,Se){var Ne=o(Se),Ge=B(U(Ne*o(he/=2)));return[2*Ne*_(he)*Ge,_(Se)*Ge]}ze.invert=function(he,Se){if(!(he*he+4*Se*Se>E*E+v)){var Ne=he,Ge=Se,lt=25;do{var rt=_(Ne),pt=_(Ne/2),Ht=o(Ne/2),nr=_(Ge),fr=o(Ge),Tr=_(2*Ge),Ir=nr*nr,ri=fr*fr,li=pt*pt,Ei=1-ri*Ht*Ht,hn=Ei?U(fr*Ht)*G(Zn=1/Ei):Zn=0,Zn,Yn=2*hn*fr*pt-he,Ua=hn*nr-Se,Fo=Zn*(ri*li+hn*fr*Ht*Ir),vl=Zn*(.5*rt*Tr-hn*2*nr*pt),Us=Zn*.25*(Tr*pt-hn*nr*ri*rt),ml=Zn*(Ir*Ht+hn*li*fr),au=vl*Us-ml*Fo;if(!au)break;var Sl=(Ua*vl-Yn*ml)/au,Yl=(Yn*Us-Ua*Fo)/au;Ne-=Sl,Ge-=Yl}while((n(Sl)>v||n(Yl)>v)&&--lt>0);return[Ne,Ge]}};function Ce(){return t.geoProjection(ze).scale(152.63)}function de(he){var Se=_(he),Ne=o(he),Ge=he>=0?1:-1,lt=b(Ge*he),rt=(1+Se-Ne)/2;function pt(Ht,nr){var fr=o(nr),Tr=o(Ht/=2);return[(1+fr)*_(Ht),(Ge*nr>-a(Tr,lt)-.001?0:-Ge*10)+rt+_(nr)*Ne-(1+fr)*Se*Tr]}return pt.invert=function(Ht,nr){var fr=0,Tr=0,Ir=50;do{var ri=o(fr),li=_(fr),Ei=o(Tr),hn=_(Tr),Zn=1+Ei,Yn=Zn*li-Ht,Ua=rt+hn*Ne-Zn*Se*ri-nr,Fo=Zn*ri/2,vl=-li*hn,Us=Se*Zn*li/2,ml=Ne*Ei+Se*ri*hn,au=vl*Us-ml*Fo,Sl=(Ua*vl-Yn*ml)/au/2,Yl=(Yn*Us-Ua*Fo)/au;n(Yl)>2&&(Yl/=2),fr-=Sl,Tr-=Yl}while((n(Sl)>v||n(Yl)>v)&&--Ir>0);return Ge*Tr>-a(o(fr),lt)-.001?[fr*2,Tr]:null},pt}function te(){var he=20*T,Se=he>=0?1:-1,Ne=b(Se*he),Ge=t.geoProjectionMutator(de),lt=Ge(he),rt=lt.stream;return lt.parallel=function(pt){return arguments.length?(Ne=b((Se=(he=pt*T)>=0?1:-1)*he),Ge(he)):he*P},lt.stream=function(pt){var Ht=lt.rotate(),nr=rt(pt),fr=(lt.rotate([0,0]),rt(pt)),Tr=lt.precision();return lt.rotate(Ht),nr.sphere=function(){fr.polygonStart(),fr.lineStart();for(var Ir=Se*-180;Se*Ir<180;Ir+=Se*90)fr.point(Ir,Se*90);if(he)for(;Se*(Ir-=3*Se*Tr)>=-180;)fr.point(Ir,Se*-a(o(Ir*T/2),Ne)*P);fr.lineEnd(),fr.polygonEnd()},nr},lt.scale(218.695).center([0,28.0974])}function ke(he,Se){var Ne=b(Se/2),Ge=G(1-Ne*Ne),lt=1+Ge*o(he/=2),rt=_(he)*Ge/lt,pt=Ne/lt,Ht=rt*rt,nr=pt*pt;return[4/3*rt*(3+Ht-3*nr),4/3*pt*(3+3*Ht-nr)]}ke.invert=function(he,Se){if(he*=3/8,Se*=3/8,!he&&n(Se)>1)return null;var Ne=he*he,Ge=Se*Se,lt=1+Ne+Ge,rt=G((lt-G(lt*lt-4*Se*Se))/2),pt=F(rt)/3,Ht=rt?re(n(Se/rt))/3:H(n(he))/3,nr=o(pt),fr=N(Ht),Tr=fr*fr-nr*nr;return[p(he)*2*a(W(Ht)*nr,.25-Tr),p(Se)*2*a(fr*_(pt),.25+Tr)]};function Ee(){return t.geoProjection(ke).scale(66.1603)}var Me=G(8),Ue=l(1+C);function De(he,Se){var Ne=n(Se);return Nek&&--Ge>0);return[he/(o(Ne)*(Me-1/_(Ne))),p(Se)*Ne]};function ye(){return t.geoProjection(De).scale(112.314)}function qe(he){var Se=2*E/he;function Ne(Ge,lt){var rt=t.geoAzimuthalEquidistantRaw(Ge,lt);if(n(Ge)>A){var pt=a(rt[1],rt[0]),Ht=G(rt[0]*rt[0]+rt[1]*rt[1]),nr=Se*d((pt-A)/Se)+A,fr=a(_(pt-=nr),2-o(pt));pt=nr+F(E/Ht*_(fr))-fr,rt[0]=Ht*o(pt),rt[1]=Ht*_(pt)}return rt}return Ne.invert=function(Ge,lt){var rt=G(Ge*Ge+lt*lt);if(rt>A){var pt=a(lt,Ge),Ht=Se*d((pt-A)/Se)+A,nr=pt>Ht?-1:1,fr=rt*o(Ht-pt),Tr=1/b(nr*U((fr-E)/G(E*(E-2*fr)+rt*rt)));pt=Ht+2*i((Tr+nr*G(Tr*Tr-3))/3),Ge=rt*o(pt),lt=rt*_(pt)}return t.geoAzimuthalEquidistantRaw.invert(Ge,lt)},Ne}function ce(){var he=5,Se=t.geoProjectionMutator(qe),Ne=Se(he),Ge=Ne.stream,lt=.01,rt=-o(lt*T),pt=_(lt*T);return Ne.lobes=function(Ht){return arguments.length?Se(he=+Ht):he},Ne.stream=function(Ht){var nr=Ne.rotate(),fr=Ge(Ht),Tr=(Ne.rotate([0,0]),Ge(Ht));return Ne.rotate(nr),fr.sphere=function(){Tr.polygonStart(),Tr.lineStart();for(var Ir=0,ri=360/he,li=2*E/he,Ei=90-180/he,hn=A;Ir0&&n(lt)>v);return Ge<0?NaN:Ne}function at(he,Se,Ne){return Se===void 0&&(Se=40),Ne===void 0&&(Ne=k),function(Ge,lt,rt,pt){var Ht,nr,fr;rt=rt===void 0?0:+rt,pt=pt===void 0?0:+pt;for(var Tr=0;TrHt){rt-=nr/=2,pt-=fr/=2;continue}Ht=Ei;var hn=(rt>0?-1:1)*Ne,Zn=(pt>0?-1:1)*Ne,Yn=he(rt+hn,pt),Ua=he(rt,pt+Zn),Fo=(Yn[0]-Ir[0])/hn,vl=(Yn[1]-Ir[1])/hn,Us=(Ua[0]-Ir[0])/Zn,ml=(Ua[1]-Ir[1])/Zn,au=ml*Fo-vl*Us,Sl=(n(au)<.5?.5:1)/au;if(nr=(li*Us-ri*ml)*Sl,fr=(ri*vl-li*Fo)*Sl,rt+=nr,pt+=fr,n(nr)0&&(Ht[1]*=1+nr/1.5*Ht[0]*Ht[0]),Ht}return Ge.invert=at(Ge),Ge}function Ct(){return t.geoProjection(Ke()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function wt(he,Se){var Ne=he*_(Se),Ge=30,lt;do Se-=lt=(Se+_(Se)-Ne)/(1+o(Se));while(n(lt)>v&&--Ge>0);return Se/2}function St(he,Se,Ne){function Ge(lt,rt){return[he*lt*o(rt=wt(Ne,rt)),Se*_(rt)]}return Ge.invert=function(lt,rt){return rt=F(rt/Se),[lt/(he*o(rt)),F((2*rt+_(2*rt))/Ne)]},Ge}var Dt=St(C/A,C,E);function Zt(){return t.geoProjection(Dt).scale(169.529)}var Et=2.00276,Te=1.11072;function ot(he,Se){var Ne=wt(E,Se);return[Et*he/(1/o(Se)+Te/o(Ne)),(Se+C*_(Ne))/Et]}ot.invert=function(he,Se){var Ne=Et*Se,Ge=Se<0?-L:L,lt=25,rt,pt;do pt=Ne-C*_(Ge),Ge-=rt=(_(2*Ge)+2*Ge-E*_(pt))/(2*o(2*Ge)+2+E*o(pt)*C*o(Ge));while(n(rt)>v&&--lt>0);return pt=Ne-C*_(Ge),[he*(1/o(pt)+Te/o(Ge))/Et,pt]};function Tt(){return t.geoProjection(ot).scale(160.857)}function vt(he){var Se=0,Ne=t.geoProjectionMutator(he),Ge=Ne(Se);return Ge.parallel=function(lt){return arguments.length?Ne(Se=lt*T):Se*P},Ge}function Ye(he,Se){return[he*o(Se),Se]}Ye.invert=function(he,Se){return[he/o(Se),Se]};function He(){return t.geoProjection(Ye).scale(152.63)}function it(he){if(!he)return Ye;var Se=1/b(he);function Ne(Ge,lt){var rt=Se+he-lt,pt=rt&&Ge*o(lt)/rt;return[rt*_(pt),Se-rt*o(pt)]}return Ne.invert=function(Ge,lt){var rt=G(Ge*Ge+(lt=Se-lt)*lt),pt=Se+he-rt;return[rt/o(pt)*a(Ge,lt),pt]},Ne}function et(){return vt(it).scale(123.082).center([0,26.1441]).parallel(45)}function It(he){function Se(Ne,Ge){var lt=A-Ge,rt=lt&&Ne*he*_(lt)/lt;return[lt*_(rt)/he,A-lt*o(rt)]}return Se.invert=function(Ne,Ge){var lt=Ne*he,rt=A-Ge,pt=G(lt*lt+rt*rt),Ht=a(lt,rt);return[(pt?pt/_(pt):1)*Ht/he,A-pt]},Se}function Yt(){var he=.5,Se=t.geoProjectionMutator(It),Ne=Se(he);return Ne.fraction=function(Ge){return arguments.length?Se(he=+Ge):he},Ne.scale(158.837)}var cr=St(1,4/E,E);function _r(){return t.geoProjection(cr).scale(152.63)}function yr(he,Se,Ne,Ge,lt,rt){var pt=o(rt),Ht;if(n(he)>1||n(rt)>1)Ht=U(Ne*lt+Se*Ge*pt);else{var nr=_(he/2),fr=_(rt/2);Ht=2*F(G(nr*nr+Se*Ge*fr*fr))}return n(Ht)>v?[Ht,a(Ge*_(rt),Se*lt-Ne*Ge*pt)]:[0,0]}function Ut(he,Se,Ne){return U((he*he+Se*Se-Ne*Ne)/(2*he*Se))}function Re(he){return he-2*E*u((he+E)/(2*E))}function xe(he,Se,Ne){for(var Ge=[[he[0],he[1],_(he[1]),o(he[1])],[Se[0],Se[1],_(Se[1]),o(Se[1])],[Ne[0],Ne[1],_(Ne[1]),o(Ne[1])]],lt=Ge[2],rt,pt=0;pt<3;++pt,lt=rt)rt=Ge[pt],lt.v=yr(rt[1]-lt[1],lt[3],lt[2],rt[3],rt[2],rt[0]-lt[0]),lt.point=[0,0];var Ht=Ut(Ge[0].v[0],Ge[2].v[0],Ge[1].v[0]),nr=Ut(Ge[0].v[0],Ge[1].v[0],Ge[2].v[0]),fr=E-Ht;Ge[2].point[1]=0,Ge[0].point[0]=-(Ge[1].point[0]=Ge[0].v[0]/2);var Tr=[Ge[2].point[0]=Ge[0].point[0]+Ge[2].v[0]*o(Ht),2*(Ge[0].point[1]=Ge[1].point[1]=Ge[2].v[0]*_(Ht))];function Ir(ri,li){var Ei=_(li),hn=o(li),Zn=new Array(3),Yn;for(Yn=0;Yn<3;++Yn){var Ua=Ge[Yn];if(Zn[Yn]=yr(li-Ua[1],Ua[3],Ua[2],hn,Ei,ri-Ua[0]),!Zn[Yn][0])return Ua.point;Zn[Yn][1]=Re(Zn[Yn][1]-Ua.v[1])}var Fo=Tr.slice();for(Yn=0;Yn<3;++Yn){var vl=Yn==2?0:Yn+1,Us=Ut(Ge[Yn].v[0],Zn[Yn][0],Zn[vl][0]);Zn[Yn][1]<0&&(Us=-Us),Yn?Yn==1?(Us=nr-Us,Fo[0]-=Zn[Yn][0]*o(Us),Fo[1]-=Zn[Yn][0]*_(Us)):(Us=fr-Us,Fo[0]+=Zn[Yn][0]*o(Us),Fo[1]+=Zn[Yn][0]*_(Us)):(Fo[0]+=Zn[Yn][0]*o(Us),Fo[1]-=Zn[Yn][0]*_(Us))}return Fo[0]/=3,Fo[1]/=3,Fo}return Ir}function Oe(he){return he[0]*=T,he[1]*=T,he}function Ie(){return Fe([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function Fe(he,Se,Ne){var Ge=t.geoCentroid({type:"MultiPoint",coordinates:[he,Se,Ne]}),lt=[-Ge[0],-Ge[1]],rt=t.geoRotation(lt),pt=xe(Oe(rt(he)),Oe(rt(Se)),Oe(rt(Ne)));pt.invert=at(pt);var Ht=t.geoProjection(pt).rotate(lt),nr=Ht.center;return delete Ht.rotate,Ht.center=function(fr){return arguments.length?nr(rt(fr)):rt.invert(nr())},Ht.clipAngle(90)}function ft(he,Se){var Ne=G(1-_(Se));return[2/M*he*Ne,M*(1-Ne)]}ft.invert=function(he,Se){var Ne=(Ne=Se/M-1)*Ne;return[Ne>0?he*G(E/Ne)/2:0,F(1-Ne)]};function ge(){return t.geoProjection(ft).scale(95.6464).center([0,30])}function fe(he){var Se=b(he);function Ne(Ge,lt){return[Ge,(Ge?Ge/_(Ge):1)*(_(lt)*o(Ge)-Se*o(lt))]}return Ne.invert=Se?function(Ge,lt){Ge&&(lt*=_(Ge)/Ge);var rt=o(Ge);return[Ge,2*a(G(rt*rt+Se*Se-lt*lt)-rt,Se-lt)]}:function(Ge,lt){return[Ge,F(Ge?lt*b(Ge)/Ge:lt)]},Ne}function pe(){return vt(fe).scale(249.828).clipAngle(90)}var dt=G(3);function Pt(he,Se){return[dt*he*(2*o(2*Se/3)-1)/M,dt*M*_(Se/3)]}Pt.invert=function(he,Se){var Ne=3*F(Se/(dt*M));return[M*he/(dt*(2*o(2*Ne/3)-1)),Ne]};function zt(){return t.geoProjection(Pt).scale(156.19)}function rr(he){var Se=o(he);function Ne(Ge,lt){return[Ge*Se,_(lt)/Se]}return Ne.invert=function(Ge,lt){return[Ge/Se,F(lt*Se)]},Ne}function Gr(){return vt(rr).parallel(38.58).scale(195.044)}function Br(he){var Se=o(he);function Ne(Ge,lt){return[Ge*Se,(1+Se)*b(lt/2)]}return Ne.invert=function(Ge,lt){return[Ge/Se,i(lt/(1+Se))*2]},Ne}function Er(){return vt(Br).scale(124.75)}function Rr(he,Se){var Ne=G(8/(3*E));return[Ne*he*(1-n(Se)/E),Ne*Se]}Rr.invert=function(he,Se){var Ne=G(8/(3*E)),Ge=Se/Ne;return[he/(Ne*(1-n(Ge)/E)),Ge]};function pi(){return t.geoProjection(Rr).scale(165.664)}function Di(he,Se){var Ne=G(4-3*_(n(Se)));return[2/G(6*E)*he*Ne,p(Se)*G(2*E/3)*(2-Ne)]}Di.invert=function(he,Se){var Ne=2-n(Se)/G(2*E/3);return[he*G(6*E)/(2*Ne),p(Se)*F((4-Ne*Ne)/3)]};function ni(){return t.geoProjection(Di).scale(165.664)}function $i(he,Se){var Ne=G(E*(4+E));return[2/Ne*he*(1+G(1-4*Se*Se/(E*E))),4/Ne*Se]}$i.invert=function(he,Se){var Ne=G(E*(4+E))/2;return[he*Ne/(1+G(1-Se*Se*(4+E)/(4*E))),Se*Ne/2]};function Qi(){return t.geoProjection($i).scale(180.739)}function si(he,Se){var Ne=(2+A)*_(Se);Se/=2;for(var Ge=0,lt=1/0;Ge<10&&n(lt)>v;Ge++){var rt=o(Se);Se-=lt=(Se+_(Se)*(rt+2)-Ne)/(2*rt*(1+rt))}return[2/G(E*(4+E))*he*(1+o(Se)),2*G(E/(4+E))*_(Se)]}si.invert=function(he,Se){var Ne=Se*G((4+E)/E)/2,Ge=F(Ne),lt=o(Ge);return[he/(2/G(E*(4+E))*(1+lt)),F((Ge+Ne*(lt+2))/(2+A))]};function Ai(){return t.geoProjection(si).scale(180.739)}function Ni(he,Se){return[he*(1+o(Se))/G(2+E),2*Se/G(2+E)]}Ni.invert=function(he,Se){var Ne=G(2+E),Ge=Se*Ne/2;return[Ne*he/(1+o(Ge)),Ge]};function Rt(){return t.geoProjection(Ni).scale(173.044)}function yt(he,Se){for(var Ne=(1+A)*_(Se),Ge=0,lt=1/0;Ge<10&&n(lt)>v;Ge++)Se-=lt=(Se+_(Se)-Ne)/(1+o(Se));return Ne=G(2+E),[he*(1+o(Se))/Ne,2*Se/Ne]}yt.invert=function(he,Se){var Ne=1+A,Ge=G(Ne/2);return[he*2*Ge/(1+o(Se*=Ge)),F((Se+_(Se))/Ne)]};function Gt(){return t.geoProjection(yt).scale(173.044)}var Wt=3+2*C;function xr(he,Se){var Ne=_(he/=2),Ge=o(he),lt=G(o(Se)),rt=o(Se/=2),pt=_(Se)/(rt+C*Ge*lt),Ht=G(2/(1+pt*pt)),nr=G((C*rt+(Ge+Ne)*lt)/(C*rt+(Ge-Ne)*lt));return[Wt*(Ht*(nr-1/nr)-2*l(nr)),Wt*(Ht*pt*(nr+1/nr)-2*i(pt))]}xr.invert=function(he,Se){if(!(rt=ke.invert(he/1.2,Se*1.065)))return null;var Ne=rt[0],Ge=rt[1],lt=20,rt;he/=Wt,Se/=Wt;do{var pt=Ne/2,Ht=Ge/2,nr=_(pt),fr=o(pt),Tr=_(Ht),Ir=o(Ht),ri=o(Ge),li=G(ri),Ei=Tr/(Ir+C*fr*li),hn=Ei*Ei,Zn=G(2/(1+hn)),Yn=C*Ir+(fr+nr)*li,Ua=C*Ir+(fr-nr)*li,Fo=Yn/Ua,vl=G(Fo),Us=vl-1/vl,ml=vl+1/vl,au=Zn*Us-2*l(vl)-he,Sl=Zn*Ei*ml-2*i(Ei)-Se,Yl=Tr&&x*li*nr*hn/Tr,Ol=(C*fr*Ir+li)/(2*(Ir+C*fr*li)*(Ir+C*fr*li)*li),ou=-.5*Ei*Zn*Zn*Zn,Pu=ou*Yl,nu=ou*Ol,tu=(tu=2*Ir+C*li*(fr-nr))*tu*vl,Hu=(C*fr*Ir*li+ri)/tu,$u=-(C*nr*Tr)/(li*tu),Ku=Us*Pu-2*Hu/vl+Zn*(Hu+Hu/Fo),Wu=Us*nu-2*$u/vl+Zn*($u+$u/Fo),ju=Ei*ml*Pu-2*Yl/(1+hn)+Zn*ml*Yl+Zn*Ei*(Hu-Hu/Fo),sf=Ei*ml*nu-2*Ol/(1+hn)+Zn*ml*Ol+Zn*Ei*($u-$u/Fo),_f=Wu*ju-sf*Ku;if(!_f)break;var Qu=(Sl*Wu-au*sf)/_f,ef=(au*ju-Sl*Ku)/_f;Ne-=Qu,Ge=f(-A,c(A,Ge-ef))}while((n(Qu)>v||n(ef)>v)&&--lt>0);return n(n(Ge)-A)Ge){var Ir=G(Tr),ri=a(fr,nr),li=Ne*d(ri/Ne),Ei=ri-li,hn=he*o(Ei),Zn=(he*_(Ei)-Ei*_(hn))/(A-hn),Yn=Fi(Ei,Zn),Ua=(E-he)/an(Yn,hn,E);nr=Ir;var Fo=50,vl;do nr-=vl=(he+an(Yn,hn,nr)*Ua-Ir)/(Yn(nr)*Ua);while(n(vl)>v&&--Fo>0);fr=Ei*_(nr),nrGe){var nr=G(Ht),fr=a(pt,rt),Tr=Ne*d(fr/Ne),Ir=fr-Tr;rt=nr*o(Ir),pt=nr*_(Ir);for(var ri=rt-A,li=_(rt),Ei=pt/li,hn=rtv||n(Ei)>v)&&--hn>0);return[Ir,ri]},nr}var Ii=Ri(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function xn(){return t.geoProjection(Ii).scale(149.995)}var bi=Ri(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function Xr(){return t.geoProjection(bi).scale(153.93)}var ct=Ri(5/6*E,-.62636,-.0344,0,1.3493,-.05524,0,.045);function tr(){return t.geoProjection(ct).scale(130.945)}function pr(he,Se){var Ne=he*he,Ge=Se*Se;return[he*(1-.162388*Ge)*(.87-952426e-9*Ne*Ne),Se*(1+Ge/12)]}pr.invert=function(he,Se){var Ne=he,Ge=Se,lt=50,rt;do{var pt=Ge*Ge;Ge-=rt=(Ge*(1+pt/12)-Se)/(1+pt/4)}while(n(rt)>v&&--lt>0);lt=50,he/=1-.162388*pt;do{var Ht=(Ht=Ne*Ne)*Ht;Ne-=rt=(Ne*(.87-952426e-9*Ht)-he)/(.87-.00476213*Ht)}while(n(rt)>v&&--lt>0);return[Ne,Ge]};function gr(){return t.geoProjection(pr).scale(131.747)}var Zr=Ri(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Ti(){return t.geoProjection(Zr).scale(131.087)}function en(he){var Se=he(A,0)[0]-he(-A,0)[0];function Ne(Ge,lt){var rt=Ge>0?-.5:.5,pt=he(Ge+rt*E,lt);return pt[0]-=rt*Se,pt}return he.invert&&(Ne.invert=function(Ge,lt){var rt=Ge>0?-.5:.5,pt=he.invert(Ge+rt*Se,lt),Ht=pt[0]-rt*E;return Ht<-E?Ht+=2*E:Ht>E&&(Ht-=2*E),pt[0]=Ht,pt}),Ne}function ii(he,Se){var Ne=p(he),Ge=p(Se),lt=o(Se),rt=o(he)*lt,pt=_(he)*lt,Ht=_(Ge*Se);he=n(a(pt,Ht)),Se=F(rt),n(he-A)>v&&(he%=A);var nr=Xi(he>E/4?A-he:he,Se);return he>E/4&&(Ht=nr[0],nr[0]=-nr[1],nr[1]=-Ht),nr[0]*=Ne,nr[1]*=-Ge,nr}ii.invert=function(he,Se){n(he)>1&&(he=p(he)*2-he),n(Se)>1&&(Se=p(Se)*2-Se);var Ne=p(he),Ge=p(Se),lt=-Ne*he,rt=-Ge*Se,pt=rt/lt<1,Ht=aa(pt?rt:lt,pt?lt:rt),nr=Ht[0],fr=Ht[1],Tr=o(fr);return pt&&(nr=-A-nr),[Ne*(a(_(nr)*Tr,-_(fr))+E),Ge*F(o(nr)*Tr)]};function Xi(he,Se){if(Se===A)return[0,0];var Ne=_(Se),Ge=Ne*Ne,lt=Ge*Ge,rt=1+lt,pt=1+3*lt,Ht=1-lt,nr=F(1/G(rt)),fr=Ht+Ge*rt*nr,Tr=(1-Ne)/fr,Ir=G(Tr),ri=Tr*rt,li=G(ri),Ei=Ir*Ht,hn,Zn;if(he===0)return[0,-(Ei+Ge*li)];var Yn=o(Se),Ua=1/Yn,Fo=2*Ne*Yn,vl=(-3*Ge+nr*pt)*Fo,Us=(-fr*Yn-(1-Ne)*vl)/(fr*fr),ml=.5*Us/Ir,au=Ht*ml-2*Ge*Ir*Fo,Sl=Ge*rt*Us+Tr*pt*Fo,Yl=-Ua*Fo,Ol=-Ua*Sl,ou=-2*Ua*au,Pu=4*he/E,nu;if(he>.222*E||Se.175*E){if(hn=(Ei+Ge*G(ri*(1+lt)-Ei*Ei))/(1+lt),he>E/4)return[hn,hn];var tu=hn,Hu=.5*hn;hn=.5*(Hu+tu),Zn=50;do{var $u=G(ri-hn*hn),Ku=hn*(ou+Yl*$u)+Ol*F(hn/li)-Pu;if(!Ku)break;Ku<0?Hu=hn:tu=hn,hn=.5*(Hu+tu)}while(n(tu-Hu)>v&&--Zn>0)}else{hn=v,Zn=25;do{var Wu=hn*hn,ju=G(ri-Wu),sf=ou+Yl*ju,_f=hn*sf+Ol*F(hn/li)-Pu,Qu=sf+(Ol-Yl*Wu)/ju;hn-=nu=ju?_f/Qu:0}while(n(nu)>v&&--Zn>0)}return[hn,-Ei-Ge*G(ri-hn*hn)]}function aa(he,Se){for(var Ne=0,Ge=1,lt=.5,rt=50;;){var pt=lt*lt,Ht=G(lt),nr=F(1/G(1+pt)),fr=1-pt+lt*(1+pt)*nr,Tr=(1-Ht)/fr,Ir=G(Tr),ri=Tr*(1+pt),li=Ir*(1-pt),Ei=ri-he*he,hn=G(Ei),Zn=Se+li+lt*hn;if(n(Ge-Ne)0?Ne=lt:Ge=lt,lt=.5*(Ne+Ge)}if(!rt)return null;var Yn=F(Ht),Ua=o(Yn),Fo=1/Ua,vl=2*Ht*Ua,Us=(-3*lt+nr*(1+3*pt))*vl,ml=(-fr*Ua-(1-Ht)*Us)/(fr*fr),au=.5*ml/Ir,Sl=(1-pt)*au-2*lt*Ir*vl,Yl=-2*Fo*Sl,Ol=-Fo*vl,ou=-Fo*(lt*(1+pt)*ml+Tr*(1+3*pt)*vl);return[E/4*(he*(Yl+Ol*hn)+ou*F(he/G(ri))),Yn]}function Mn(){return t.geoProjection(en(ii)).scale(239.75)}function Un(he,Se,Ne){var Ge,lt,rt;return he?(Ge=Ga(he,Ne),Se?(lt=Ga(Se,1-Ne),rt=lt[1]*lt[1]+Ne*Ge[0]*Ge[0]*lt[0]*lt[0],[[Ge[0]*lt[2]/rt,Ge[1]*Ge[2]*lt[0]*lt[1]/rt],[Ge[1]*lt[1]/rt,-Ge[0]*Ge[2]*lt[0]*lt[2]/rt],[Ge[2]*lt[1]*lt[2]/rt,-Ne*Ge[0]*Ge[1]*lt[0]/rt]]):[[Ge[0],0],[Ge[1],0],[Ge[2],0]]):(lt=Ga(Se,1-Ne),[[0,lt[0]/lt[1]],[1/lt[1],0],[lt[2]/lt[1],0]])}function Ga(he,Se){var Ne,Ge,lt,rt,pt;if(Se=1-v)return Ne=(1-Se)/4,Ge=N(he),rt=j(he),lt=1/Ge,pt=Ge*W(he),[rt+Ne*(pt-he)/(Ge*Ge),lt-Ne*rt*lt*(pt-he),lt+Ne*rt*lt*(pt+he),2*i(s(he))-A+Ne*(pt-he)/Ge];var Ht=[1,0,0,0,0,0,0,0,0],nr=[G(Se),0,0,0,0,0,0,0,0],fr=0;for(Ge=G(1-Se),pt=1;n(nr[fr]/Ht[fr])>v&&fr<8;)Ne=Ht[fr++],nr[fr]=(Ne-Ge)/2,Ht[fr]=(Ne+Ge)/2,Ge=G(Ne*Ge),pt*=2;lt=pt*Ht[fr]*he;do rt=nr[fr]*_(Ge=lt)/Ht[fr],lt=(F(rt)+lt)/2;while(--fr);return[_(lt),rt=o(lt),rt/o(lt-Ge),lt]}function ma(he,Se,Ne){var Ge=n(he),lt=n(Se),rt=W(lt);if(Ge){var pt=1/_(Ge),Ht=1/(b(Ge)*b(Ge)),nr=-(Ht+Ne*(rt*rt*pt*pt)-1+Ne),fr=(Ne-1)*Ht,Tr=(-nr+G(nr*nr-4*fr))/2;return[oa(i(1/G(Tr)),Ne)*p(he),oa(i(G((Tr/Ht-1)/Ne)),1-Ne)*p(Se)]}return[0,oa(i(rt),1-Ne)*p(Se)]}function oa(he,Se){if(!Se)return he;if(Se===1)return l(b(he/2+L));for(var Ne=1,Ge=G(1-Se),lt=G(Se),rt=0;n(lt)>v;rt++){if(he%E){var pt=i(Ge*b(he)/Ne);pt<0&&(pt+=E),he+=pt+~~(he/E)*E}else he+=he;lt=(Ne+Ge)/2,Ge=G(Ne*Ge),lt=((Ne=lt)-Ge)/2}return he/(h(2,rt)*Ne)}function ka(he,Se){var Ne=(C-1)/(C+1),Ge=G(1-Ne*Ne),lt=oa(A,Ge*Ge),rt=-1,pt=l(b(E/4+n(Se)/2)),Ht=s(rt*pt)/G(Ne),nr=so(Ht*o(rt*he),Ht*_(rt*he)),fr=ma(nr[0],nr[1],Ge*Ge);return[-fr[1],(Se>=0?1:-1)*(.5*lt-fr[0])]}function so(he,Se){var Ne=he*he,Ge=Se+1,lt=1-Ne-Se*Se;return[.5*((he>=0?A:-A)-a(lt,2*he)),-.25*l(lt*lt+4*Ne)+.5*l(Ge*Ge+Ne)]}function Kr(he,Se){var Ne=Se[0]*Se[0]+Se[1]*Se[1];return[(he[0]*Se[0]+he[1]*Se[1])/Ne,(he[1]*Se[0]-he[0]*Se[1])/Ne]}ka.invert=function(he,Se){var Ne=(C-1)/(C+1),Ge=G(1-Ne*Ne),lt=oa(A,Ge*Ge),rt=-1,pt=Un(.5*lt-Se,-he,Ge*Ge),Ht=Kr(pt[0],pt[1]),nr=a(Ht[1],Ht[0])/rt;return[nr,2*i(s(.5/rt*l(Ne*Ht[0]*Ht[0]+Ne*Ht[1]*Ht[1])))-A]};function Ia(){return t.geoProjection(en(ka)).scale(151.496)}function Yo(he){var Se=_(he),Ne=o(he),Ge=fa(he);Ge.invert=fa(-he);function lt(rt,pt){var Ht=Ge(rt,pt);rt=Ht[0],pt=Ht[1];var nr=_(pt),fr=o(pt),Tr=o(rt),Ir=U(Se*nr+Ne*fr*Tr),ri=_(Ir),li=n(ri)>v?Ir/ri:1;return[li*Ne*_(rt),(n(rt)>A?li:-li)*(Se*fr-Ne*nr*Tr)]}return lt.invert=function(rt,pt){var Ht=G(rt*rt+pt*pt),nr=-_(Ht),fr=o(Ht),Tr=Ht*fr,Ir=-pt*nr,ri=Ht*Se,li=G(Tr*Tr+Ir*Ir-ri*ri),Ei=a(Tr*ri+Ir*li,Ir*ri-Tr*li),hn=(Ht>A?-1:1)*a(rt*nr,Ht*o(Ei)*fr+pt*_(Ei)*nr);return Ge.invert(hn,Ei)},lt}function fa(he){var Se=_(he),Ne=o(he);return function(Ge,lt){var rt=o(lt),pt=o(Ge)*rt,Ht=_(Ge)*rt,nr=_(lt);return[a(Ht,pt*Ne-nr*Se),F(nr*Ne+pt*Se)]}}function kn(){var he=0,Se=t.geoProjectionMutator(Yo),Ne=Se(he),Ge=Ne.rotate,lt=Ne.stream,rt=t.geoCircle();return Ne.parallel=function(pt){if(!arguments.length)return he*P;var Ht=Ne.rotate();return Se(he=pt*T).rotate(Ht)},Ne.rotate=function(pt){return arguments.length?(Ge.call(Ne,[pt[0],pt[1]-he*P]),rt.center([-pt[0],-pt[1]]),Ne):(pt=Ge.call(Ne),pt[1]+=he*P,pt)},Ne.stream=function(pt){return pt=lt(pt),pt.sphere=function(){pt.polygonStart();var Ht=.01,nr=rt.radius(90-Ht)().coordinates[0],fr=nr.length-1,Tr=-1,Ir;for(pt.lineStart();++Tr=0;)pt.point((Ir=nr[Tr])[0],Ir[1]);pt.lineEnd(),pt.polygonEnd()},pt},Ne.scale(79.4187).parallel(45).clipAngle(180-.001)}var Aa=3,ys=F(1-1/Aa)*P,uo=rr(0);function ls(he){var Se=ys*T,Ne=ft(E,Se)[0]-ft(-E,Se)[0],Ge=uo(0,Se)[1],lt=ft(0,Se)[1],rt=M-lt,pt=m/he,Ht=4/m,nr=Ge+rt*rt*4/m;function fr(Tr,Ir){var ri,li=n(Ir);if(li>Se){var Ei=c(he-1,f(0,u((Tr+E)/pt)));Tr+=E*(he-1)/he-Ei*pt,ri=ft(Tr,li),ri[0]=ri[0]*m/Ne-m*(he-1)/(2*he)+Ei*m/he,ri[1]=Ge+(ri[1]-lt)*4*rt/m,Ir<0&&(ri[1]=-ri[1])}else ri=uo(Tr,Ir);return ri[0]*=Ht,ri[1]/=nr,ri}return fr.invert=function(Tr,Ir){Tr/=Ht,Ir*=nr;var ri=n(Ir);if(ri>Ge){var li=c(he-1,f(0,u((Tr+E)/pt)));Tr=(Tr+E*(he-1)/he-li*pt)*Ne/m;var Ei=ft.invert(Tr,.25*(ri-Ge)*m/rt+lt);return Ei[0]-=E*(he-1)/he-li*pt,Ir<0&&(Ei[1]=-Ei[1]),Ei}return uo.invert(Tr,Ir)},fr}function $a(he,Se){return[he,Se&1?90-v:ys]}function fo(he,Se){return[he,Se&1?-90+v:-ys]}function mn(he){return[he[0]*(1-v),he[1]]}function ra(he){var Se=[].concat(r.range(-180,180+he/2,he).map($a),r.range(180,-180-he/2,-he).map(fo));return{type:"Polygon",coordinates:[he===180?Se.map(mn):Se]}}function wa(){var he=4,Se=t.geoProjectionMutator(ls),Ne=Se(he),Ge=Ne.stream;return Ne.lobes=function(lt){return arguments.length?Se(he=+lt):he},Ne.stream=function(lt){var rt=Ne.rotate(),pt=Ge(lt),Ht=(Ne.rotate([0,0]),Ge(lt));return Ne.rotate(rt),pt.sphere=function(){t.geoStream(ra(180/he),Ht)},pt},Ne.scale(239.75)}function ws(he){var Se=1+he,Ne=_(1/Se),Ge=F(Ne),lt=2*G(E/(rt=E+4*Ge*Se)),rt,pt=.5*lt*(Se+G(he*(2+he))),Ht=he*he,nr=Se*Se;function fr(Tr,Ir){var ri=1-_(Ir),li,Ei;if(ri&&ri<2){var hn=A-Ir,Zn=25,Yn;do{var Ua=_(hn),Fo=o(hn),vl=Ge+a(Ua,Se-Fo),Us=1+nr-2*Se*Fo;hn-=Yn=(hn-Ht*Ge-Se*Ua+Us*vl-.5*ri*rt)/(2*Se*Ua*vl)}while(n(Yn)>k&&--Zn>0);li=lt*G(Us),Ei=Tr*vl/E}else li=lt*(he+ri),Ei=Tr*Ge/E;return[li*_(Ei),pt-li*o(Ei)]}return fr.invert=function(Tr,Ir){var ri=Tr*Tr+(Ir-=pt)*Ir,li=(1+nr-ri/(lt*lt))/(2*Se),Ei=U(li),hn=_(Ei),Zn=Ge+a(hn,Se-li);return[F(Tr/G(ri))*E/Zn,F(1-2*(Ei-Ht*Ge-Se*hn+(1+nr-2*Se*li)*Zn)/rt)]},fr}function Co(){var he=1,Se=t.geoProjectionMutator(ws),Ne=Se(he);return Ne.ratio=function(Ge){return arguments.length?Se(he=+Ge):he},Ne.scale(167.774).center([0,18.67])}var Po=.7109889596207567,Wi=.0528035274542;function gn(he,Se){return Se>-Po?(he=Dt(he,Se),he[1]+=Wi,he):Ye(he,Se)}gn.invert=function(he,Se){return Se>-Po?Dt.invert(he,Se-Wi):Ye.invert(he,Se)};function Ps(){return t.geoProjection(gn).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function Ha(he,Se){return n(Se)>Po?(he=Dt(he,Se),he[1]-=Se>0?Wi:-Wi,he):Ye(he,Se)}Ha.invert=function(he,Se){return n(Se)>Po?Dt.invert(he,Se+(Se>0?Wi:-Wi)):Ye.invert(he,Se)};function Sn(){return t.geoProjection(Ha).scale(152.63)}function ao(he,Se,Ne,Ge){var lt=G(4*E/(2*Ne+(1+he-Se/2)*_(2*Ne)+(he+Se)/2*_(4*Ne)+Se/2*_(6*Ne))),rt=G(Ge*_(Ne)*G((1+he*o(2*Ne)+Se*o(4*Ne))/(1+he+Se))),pt=Ne*nr(1);function Ht(Ir){return G(1+he*o(2*Ir)+Se*o(4*Ir))}function nr(Ir){var ri=Ir*Ne;return(2*ri+(1+he-Se/2)*_(2*ri)+(he+Se)/2*_(4*ri)+Se/2*_(6*ri))/Ne}function fr(Ir){return Ht(Ir)*_(Ir)}var Tr=function(Ir,ri){var li=Ne*Nt(nr,pt*_(ri)/Ne,ri/E);isNaN(li)&&(li=Ne*p(ri));var Ei=lt*Ht(li);return[Ei*rt*Ir/E*o(li),Ei/rt*_(li)]};return Tr.invert=function(Ir,ri){var li=Nt(fr,ri*rt/lt);return[Ir*E/(o(li)*lt*rt*Ht(li)),F(Ne*nr(li/Ne)/pt)]},Ne===0&&(lt=G(Ge/E),Tr=function(Ir,ri){return[Ir*lt,_(ri)/lt]},Tr.invert=function(Ir,ri){return[Ir/lt,F(ri*lt)]}),Tr}function Ba(){var he=1,Se=0,Ne=45*T,Ge=2,lt=t.geoProjectionMutator(ao),rt=lt(he,Se,Ne,Ge);return rt.a=function(pt){return arguments.length?lt(he=+pt,Se,Ne,Ge):he},rt.b=function(pt){return arguments.length?lt(he,Se=+pt,Ne,Ge):Se},rt.psiMax=function(pt){return arguments.length?lt(he,Se,Ne=+pt*T,Ge):Ne*P},rt.ratio=function(pt){return arguments.length?lt(he,Se,Ne,Ge=+pt):Ge},rt.scale(180.739)}function Ko(he,Se,Ne,Ge,lt,rt,pt,Ht,nr,fr,Tr){if(Tr.nanEncountered)return NaN;var Ir,ri,li,Ei,hn,Zn,Yn,Ua,Fo,vl;if(Ir=Ne-Se,ri=he(Se+Ir*.25),li=he(Ne-Ir*.25),isNaN(ri)){Tr.nanEncountered=!0;return}if(isNaN(li)){Tr.nanEncountered=!0;return}return Ei=Ir*(Ge+4*ri+lt)/12,hn=Ir*(lt+4*li+rt)/12,Zn=Ei+hn,vl=(Zn-pt)/15,fr>nr?(Tr.maxDepthCount++,Zn+vl):Math.abs(vl)>1;do nr[Zn]>li?hn=Zn:Ei=Zn,Zn=Ei+hn>>1;while(Zn>Ei);var Yn=nr[Zn+1]-nr[Zn];return Yn&&(Yn=(li-nr[Zn+1])/Yn),(Zn+1+Yn)/pt}var Ir=2*Tr(1)/E*rt/Ne,ri=function(li,Ei){var hn=Tr(n(_(Ei))),Zn=Ge(hn)*li;return hn/=Ir,[Zn,Ei>=0?hn:-hn]};return ri.invert=function(li,Ei){var hn;return Ei*=Ir,n(Ei)<1&&(hn=p(Ei)*F(lt(n(Ei))*rt)),[li/Ge(n(Ei)),hn]},ri}function Sa(){var he=0,Se=2.5,Ne=1.183136,Ge=t.geoProjectionMutator(Hi),lt=Ge(he,Se,Ne);return lt.alpha=function(rt){return arguments.length?Ge(he=+rt,Se,Ne):he},lt.k=function(rt){return arguments.length?Ge(he,Se=+rt,Ne):Se},lt.gamma=function(rt){return arguments.length?Ge(he,Se,Ne=+rt):Ne},lt.scale(152.63)}function Qa(he,Se){return n(he[0]-Se[0])=0;--nr)Ne=he[1][nr],Ge=Ne[0][0],lt=Ne[0][1],rt=Ne[1][1],pt=Ne[2][0],Ht=Ne[2][1],Se.push(vn([[pt-v,Ht-v],[pt-v,rt+v],[Ge+v,rt+v],[Ge+v,lt-v]],30));return{type:"Polygon",coordinates:[r.merge(Se)]}}function la(he,Se,Ne){var Ge,lt;function rt(nr,fr){for(var Tr=fr<0?-1:1,Ir=Se[+(fr<0)],ri=0,li=Ir.length-1;riIr[ri][2][0];++ri);var Ei=he(nr-Ir[ri][1][0],fr);return Ei[0]+=he(Ir[ri][1][0],Tr*fr>Tr*Ir[ri][0][1]?Ir[ri][0][1]:fr)[0],Ei}Ne?rt.invert=Ne(rt):he.invert&&(rt.invert=function(nr,fr){for(var Tr=lt[+(fr<0)],Ir=Se[+(fr<0)],ri=0,li=Tr.length;riEi&&(hn=li,li=Ei,Ei=hn),[[Ir,li],[ri,Ei]]})}),pt):Se.map(function(fr){return fr.map(function(Tr){return[[Tr[0][0]*P,Tr[0][1]*P],[Tr[1][0]*P,Tr[1][1]*P],[Tr[2][0]*P,Tr[2][1]*P]]})})},Se!=null&&pt.lobes(Se),pt}var vo=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Ts(){return la(ot,vo).scale(160.857)}var ps=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function co(){return la(Ha,ps).scale(152.63)}var mo=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function No(){return la(Dt,mo).scale(169.529)}var jn=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function Go(){return la(Dt,jn).scale(169.529).rotate([20,0])}var Ys=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function qs(){return la(gn,Ys,at).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var Ns=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function Oa(){return la(Ye,Ns).scale(152.63).rotate([-20,0])}function ha(he,Se){return[3/m*he*G(E*E/3-Se*Se),Se]}ha.invert=function(he,Se){return[m/3*he/G(E*E/3-Se*Se),Se]};function Vs(){return t.geoProjection(ha).scale(158.837)}function Ya(he){function Se(Ne,Ge){if(n(n(Ge)-A)2)return null;Ne/=2,Ge/=2;var rt=Ne*Ne,pt=Ge*Ge,Ht=2*Ge/(1+rt+pt);return Ht=h((1+Ht)/(1-Ht),1/he),[a(2*Ne,1-rt-pt)/he,F((Ht-1)/(Ht+1))]},Se}function _n(){var he=.5,Se=t.geoProjectionMutator(Ya),Ne=Se(he);return Ne.spacing=function(Ge){return arguments.length?Se(he=+Ge):he},Ne.scale(124.75)}var Vn=E/C;function wo(he,Se){return[he*(1+G(o(Se)))/2,Se/(o(Se/2)*o(he/6))]}wo.invert=function(he,Se){var Ne=n(he),Ge=n(Se),lt=v,rt=A;Gev||n(Zn)>v)&&--lt>0);return lt&&[Ne,Ge]};function un(){return t.geoProjection(Xn).scale(139.98)}function $n(he,Se){return[_(he)/o(Se),b(Se)*o(he)]}$n.invert=function(he,Se){var Ne=he*he,Ge=Se*Se,lt=Ge+1,rt=Ne+lt,pt=he?x*G((rt-G(rt*rt-4*Ne))/Ne):1/G(lt);return[F(he*pt),p(Se)*U(pt)]};function Ka(){return t.geoProjection($n).scale(144.049).clipAngle(90-.001)}function qn(he){var Se=o(he),Ne=b(L+he/2);function Ge(lt,rt){var pt=rt-he,Ht=n(pt)=0;)Tr=he[fr],Ir=Tr[0]+Ht*(li=Ir)-nr*ri,ri=Tr[1]+Ht*ri+nr*li;return Ir=Ht*(li=Ir)-nr*ri,ri=Ht*ri+nr*li,[Ir,ri]}return Ne.invert=function(Ge,lt){var rt=20,pt=Ge,Ht=lt;do{for(var nr=Se,fr=he[nr],Tr=fr[0],Ir=fr[1],ri=0,li=0,Ei;--nr>=0;)fr=he[nr],ri=Tr+pt*(Ei=ri)-Ht*li,li=Ir+pt*li+Ht*Ei,Tr=fr[0]+pt*(Ei=Tr)-Ht*Ir,Ir=fr[1]+pt*Ir+Ht*Ei;ri=Tr+pt*(Ei=ri)-Ht*li,li=Ir+pt*li+Ht*Ei,Tr=pt*(Ei=Tr)-Ht*Ir-Ge,Ir=pt*Ir+Ht*Ei-lt;var hn=ri*ri+li*li,Zn,Yn;pt-=Zn=(Tr*ri+Ir*li)/hn,Ht-=Yn=(Ir*ri-Tr*li)/hn}while(n(Zn)+n(Yn)>v*v&&--rt>0);if(rt){var Ua=G(pt*pt+Ht*Ht),Fo=2*i(Ua*.5),vl=_(Fo);return[a(pt*vl,Ua*o(Fo)),Ua?F(Ht*vl/Ua):0]}},Ne}var sa=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],es=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Na=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],rn=[[.9245,0],[0,0],[.01943,0]],Pa=[[.721316,0],[0,0],[-.00881625,-.00617325]];function to(){return _a(sa,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function yo(){return _a(es,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Jo(){return _a(Na,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function To(){return _a(rn,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function Dn(){return _a(Pa,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function _a(he,Se){var Ne=t.geoProjection(eo(he)).rotate(Se).clipAngle(90),Ge=t.geoRotation(Se),lt=Ne.center;return delete Ne.rotate,Ne.center=function(rt){return arguments.length?lt(Ge(rt)):Ge.invert(lt())},Ne}var Ws=G(6),Ca=G(7);function Es(he,Se){var Ne=F(7*_(Se)/(3*Ws));return[Ws*he*(2*o(2*Ne/3)-1)/Ca,9*_(Ne/3)/Ca]}Es.invert=function(he,Se){var Ne=3*F(Se*Ca/9);return[he*Ca/(Ws*(2*o(2*Ne/3)-1)),F(_(Ne)*3*Ws/7)]};function As(){return t.geoProjection(Es).scale(164.859)}function Ho(he,Se){for(var Ne=(1+x)*_(Se),Ge=Se,lt=0,rt;lt<25&&(Ge-=rt=(_(Ge/2)+_(Ge)-Ne)/(.5*o(Ge/2)+o(Ge)),!(n(rt)k&&--Ge>0);return rt=Ne*Ne,pt=rt*rt,Ht=rt*pt,[he/(.84719-.13063*rt+Ht*Ht*(-.04515+.05494*rt-.02326*pt+.00331*Ht)),Ne]};function qa(){return t.geoProjection(Wo).scale(175.295)}function ln(he,Se){return[he*(1+o(Se))/2,2*(Se-b(Se/2))]}ln.invert=function(he,Se){for(var Ne=Se/2,Ge=0,lt=1/0;Ge<10&&n(lt)>v;++Ge){var rt=o(Se/2);Se-=lt=(Se-b(Se/2)-Ne)/(1-.5/(rt*rt))}return[2*he/(1+o(Se)),Se]};function Bo(){return t.geoProjection(ln).scale(152.63)}var ko=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function oo(){return la(Je(1/0),ko).rotate([20,0]).scale(152.63)}function za(he,Se){var Ne=_(Se),Ge=o(Se),lt=p(he);if(he===0||n(Se)===A)return[0,Se];if(Se===0)return[he,0];if(n(he)===A)return[he*Ge,A*Ne];var rt=E/(2*he)-2*he/E,pt=2*Se/E,Ht=(1-pt*pt)/(Ne-pt),nr=rt*rt,fr=Ht*Ht,Tr=1+nr/fr,Ir=1+fr/nr,ri=(rt*Ne/Ht-rt/2)/Tr,li=(fr*Ne/nr+Ht/2)/Ir,Ei=ri*ri+Ge*Ge/Tr,hn=li*li-(fr*Ne*Ne/nr+Ht*Ne-1)/Ir;return[A*(ri+G(Ei)*lt),A*(li+G(hn<0?0:hn)*p(-Se*rt)*lt)]}za.invert=function(he,Se){he/=A,Se/=A;var Ne=he*he,Ge=Se*Se,lt=Ne+Ge,rt=E*E;return[he?(lt-1+G((1-lt)*(1-lt)+4*Ne))/(2*he)*A:0,Nt(function(pt){return lt*(E*_(pt)-2*pt)*E+4*pt*pt*(Se-_(pt))+2*E*pt-rt*Se},0)]};function ea(){return t.geoProjection(za).scale(127.267)}var rs=1.0148,$s=.23185,us=-.14499,Ds=.02406,fl=rs,as=5*$s,Ma=7*us,Qs=9*Ds,ho=1.790857183;function gs(he,Se){var Ne=Se*Se;return[he,Se*(rs+Ne*Ne*($s+Ne*(us+Ds*Ne)))]}gs.invert=function(he,Se){Se>ho?Se=ho:Se<-ho&&(Se=-ho);var Ne=Se,Ge;do{var lt=Ne*Ne;Ne-=Ge=(Ne*(rs+lt*lt*($s+lt*(us+Ds*lt)))-Se)/(fl+lt*lt*(as+lt*(Ma+Qs*lt)))}while(n(Ge)>v);return[he,Ne]};function Vo(){return t.geoProjection(gs).scale(139.319)}function Do(he,Se){if(n(Se)v&&--lt>0);return pt=b(Ge),[(n(Se)=0;)if(Ge=Se[Ht],Ne[0]===Ge[0]&&Ne[1]===Ge[1]){if(rt)return[rt,Ne];rt=Ne}}}function Ta(he){for(var Se=he.length,Ne=[],Ge=he[Se-1],lt=0;lt0?[-Ge[0],0]:[180-Ge[0],180])};var Se=Ss.map(function(Ne){return{face:Ne,project:he(Ne)}});return[-1,0,0,1,0,1,4,5].forEach(function(Ne,Ge){var lt=Se[Ne];lt&&(lt.children||(lt.children=[])).push(Se[Ge])}),Gs(Se[0],function(Ne,Ge){return Se[Ne<-E/2?Ge<0?6:4:Ne<0?Ge<0?2:0:NeGe^li>Ge&&Ne<(ri-fr)*(Ge-Tr)/(li-Tr)+fr&&(lt=!lt)}return lt}function Hs(he,Se){var Ne=Se.stream,Ge;if(!Ne)throw new Error("invalid projection");switch(he&&he.type){case"Feature":Ge=tl;break;case"FeatureCollection":Ge=Ro;break;default:Ge=hl;break}return Ge(he,Ne)}function Ro(he,Se){return{type:"FeatureCollection",features:he.features.map(function(Ne){return tl(Ne,Se)})}}function tl(he,Se){return{type:"Feature",id:he.id,properties:he.properties,geometry:hl(he.geometry,Se)}}function Fs(he,Se){return{type:"GeometryCollection",geometries:he.geometries.map(function(Ne){return hl(Ne,Se)})}}function hl(he,Se){if(!he)return null;if(he.type==="GeometryCollection")return Fs(he,Se);var Ne;switch(he.type){case"Point":Ne=jo;break;case"MultiPoint":Ne=jo;break;case"LineString":Ne=Rs;break;case"MultiLineString":Ne=Rs;break;case"Polygon":Ne=Is;break;case"MultiPolygon":Ne=Is;break;case"Sphere":Ne=Is;break;default:return null}return t.geoStream(he,Se(Ne)),Ne.result()}var Fa=[],Ms=[],jo={point:function(he,Se){Fa.push([he,Se])},result:function(){var he=Fa.length?Fa.length<2?{type:"Point",coordinates:Fa[0]}:{type:"MultiPoint",coordinates:Fa}:null;return Fa=[],he}},Rs={lineStart:fs,point:function(he,Se){Fa.push([he,Se])},lineEnd:function(){Fa.length&&(Ms.push(Fa),Fa=[])},result:function(){var he=Ms.length?Ms.length<2?{type:"LineString",coordinates:Ms[0]}:{type:"MultiLineString",coordinates:Ms}:null;return Ms=[],he}},Is={polygonStart:fs,lineStart:fs,point:function(he,Se){Fa.push([he,Se])},lineEnd:function(){var he=Fa.length;if(he){do Fa.push(Fa[0].slice());while(++he<4);Ms.push(Fa),Fa=[]}},polygonEnd:fs,result:function(){if(!Ms.length)return null;var he=[],Se=[];return Ms.forEach(function(Ne){cl(Ne)?he.push([Ne]):Se.push(Ne)}),Se.forEach(function(Ne){var Ge=Ne[0];he.some(function(lt){if(el(lt[0],Ge))return lt.push(Ne),!0})||he.push([Ne])}),Ms=[],he.length?he.length>1?{type:"MultiPolygon",coordinates:he}:{type:"Polygon",coordinates:he[0]}:null}};function Bs(he){var Se=he(A,0)[0]-he(-A,0)[0];function Ne(Ge,lt){var rt=n(Ge)0?Ge-E:Ge+E,lt),Ht=(pt[0]-pt[1])*x,nr=(pt[0]+pt[1])*x;if(rt)return[Ht,nr];var fr=Se*x,Tr=Ht>0^nr>0?-1:1;return[Tr*Ht-p(nr)*fr,Tr*nr-p(Ht)*fr]}return he.invert&&(Ne.invert=function(Ge,lt){var rt=(Ge+lt)*x,pt=(lt-Ge)*x,Ht=n(rt)<.5*Se&&n(pt)<.5*Se;if(!Ht){var nr=Se*x,fr=rt>0^pt>0?-1:1,Tr=-fr*Ge+(pt>0?1:-1)*nr,Ir=-fr*lt+(rt>0?1:-1)*nr;rt=(-Tr-Ir)*x,pt=(Tr-Ir)*x}var ri=he.invert(rt,pt);return Ht||(ri[0]+=rt>0?E:-E),ri}),t.geoProjection(Ne).rotate([-90,-90,45]).clipAngle(180-.001)}function At(){return Bs(ii).scale(176.423)}function Vt(){return Bs(ka).scale(111.48)}function wr(he,Se){if(!(0<=(Se=+Se)&&Se<=20))throw new Error("invalid digits");function Ne(fr){var Tr=fr.length,Ir=2,ri=new Array(Tr);for(ri[0]=+fr[0].toFixed(Se),ri[1]=+fr[1].toFixed(Se);Ir2||li[0]!=Tr[0]||li[1]!=Tr[1])&&(Ir.push(li),Tr=li)}return Ir.length===1&&fr.length>1&&Ir.push(Ne(fr[fr.length-1])),Ir}function rt(fr){return fr.map(lt)}function pt(fr){if(fr==null)return fr;var Tr;switch(fr.type){case"GeometryCollection":Tr={type:"GeometryCollection",geometries:fr.geometries.map(pt)};break;case"Point":Tr={type:"Point",coordinates:Ne(fr.coordinates)};break;case"MultiPoint":Tr={type:fr.type,coordinates:Ge(fr.coordinates)};break;case"LineString":Tr={type:fr.type,coordinates:lt(fr.coordinates)};break;case"MultiLineString":case"Polygon":Tr={type:fr.type,coordinates:rt(fr.coordinates)};break;case"MultiPolygon":Tr={type:"MultiPolygon",coordinates:fr.coordinates.map(rt)};break;default:return fr}return fr.bbox!=null&&(Tr.bbox=fr.bbox),Tr}function Ht(fr){var Tr={type:"Feature",properties:fr.properties,geometry:pt(fr.geometry)};return fr.id!=null&&(Tr.id=fr.id),fr.bbox!=null&&(Tr.bbox=fr.bbox),Tr}if(he!=null)switch(he.type){case"Feature":return Ht(he);case"FeatureCollection":{var nr={type:"FeatureCollection",features:he.features.map(Ht)};return he.bbox!=null&&(nr.bbox=he.bbox),nr}default:return pt(he)}return he}function mr(he){var Se=_(he);function Ne(Ge,lt){var rt=Se?b(Ge*Se/2)/Se:Ge/2;if(!lt)return[2*rt,-he];var pt=2*i(rt*_(lt)),Ht=1/b(lt);return[_(pt)*Ht,lt+(1-o(pt))*Ht-he]}return Ne.invert=function(Ge,lt){if(n(lt+=he)v&&--Ht>0);var ri=Ge*(fr=b(pt)),li=b(n(lt)0?A:-A)*(nr+lt*(Tr-pt)/2+lt*lt*(Tr-2*nr+pt)/2)]}Si.invert=function(he,Se){var Ne=Se/A,Ge=Ne*90,lt=c(18,n(Ge/5)),rt=f(0,u(lt));do{var pt=_i[rt][1],Ht=_i[rt+1][1],nr=_i[c(19,rt+2)][1],fr=nr-pt,Tr=nr-2*Ht+pt,Ir=2*(n(Ne)-Ht)/fr,ri=Tr/fr,li=Ir*(1-ri*Ir*(1-2*ri*Ir));if(li>=0||rt===1){Ge=(Se>=0?5:-5)*(li+lt);var Ei=50,hn;do lt=c(18,n(Ge)/5),rt=u(lt),li=lt-rt,pt=_i[rt][1],Ht=_i[rt+1][1],nr=_i[c(19,rt+2)][1],Ge-=(hn=(Se>=0?A:-A)*(Ht+li*(nr-pt)/2+li*li*(nr-2*Ht+pt)/2)-Se)*P;while(n(hn)>k&&--Ei>0);break}}while(--rt>=0);var Zn=_i[rt][0],Yn=_i[rt+1][0],Ua=_i[c(19,rt+2)][0];return[he/(Yn+li*(Ua-Zn)/2+li*li*(Ua-2*Yn+Zn)/2),Ge*T]};function Ci(){return t.geoProjection(Si).scale(152.63)}function Ki(he){function Se(Ne,Ge){var lt=o(Ge),rt=(he-1)/(he-lt*o(Ne));return[rt*lt*_(Ne),rt*_(Ge)]}return Se.invert=function(Ne,Ge){var lt=Ne*Ne+Ge*Ge,rt=G(lt),pt=(he-G(1-lt*(he+1)/(he-1)))/((he-1)/rt+rt/(he-1));return[a(Ne*pt,rt*G(1-pt*pt)),rt?F(Ge*pt/rt):0]},Se}function Fn(he,Se){var Ne=Ki(he);if(!Se)return Ne;var Ge=o(Se),lt=_(Se);function rt(pt,Ht){var nr=Ne(pt,Ht),fr=nr[1],Tr=fr*lt/(he-1)+Ge;return[nr[0]*Ge/Tr,fr/Tr]}return rt.invert=function(pt,Ht){var nr=(he-1)/(he-1-Ht*lt);return Ne.invert(nr*pt,nr*Ht*Ge)},rt}function Pi(){var he=2,Se=0,Ne=t.geoProjectionMutator(Fn),Ge=Ne(he,Se);return Ge.distance=function(lt){return arguments.length?Ne(he=+lt,Se):he},Ge.tilt=function(lt){return arguments.length?Ne(he,Se=lt*T):Se*P},Ge.scale(432.147).clipAngle(U(1/he)*P-1e-6)}var di=1e-4,Li=1e4,Mi=-180,Gn=Mi+di,ta=180,ya=ta-di,ia=-90,pa=ia+di,va=90,zn=va-di;function is(he){return he.length>0}function Cs(he){return Math.floor(he*Li)/Li}function Ks(he){return he===ia||he===va?[0,he]:[Mi,Cs(he)]}function dl(he){var Se=he[0],Ne=he[1],Ge=!1;return Se<=Gn?(Se=Mi,Ge=!0):Se>=ya&&(Se=ta,Ge=!0),Ne<=pa?(Ne=ia,Ge=!0):Ne>=zn&&(Ne=va,Ge=!0),Ge?[Se,Ne]:he}function xl(he){return he.map(dl)}function Bl(he,Se,Ne){for(var Ge=0,lt=he.length;Ge=ya||Tr<=pa||Tr>=zn){rt[pt]=dl(nr);for(var Ir=pt+1;IrGn&&lipa&&Ei=Ht)break;Ne.push({index:-1,polygon:Se,ring:rt=rt.slice(Ir-1)}),rt[0]=Ks(rt[0][1]),pt=-1,Ht=rt.length}}}}function bl(he){var Se,Ne=he.length,Ge={},lt={},rt,pt,Ht,nr,fr;for(Se=0;Se0?E-Ht:Ht)*P],fr=t.geoProjection(he(pt)).rotate(nr),Tr=t.geoRotation(nr),Ir=fr.center;return delete fr.rotate,fr.center=function(ri){return arguments.length?Ir(Tr(ri)):Tr.invert(Ir())},fr.clipAngle(90)}function cs(he){var Se=o(he);function Ne(Ge,lt){var rt=t.geoGnomonicRaw(Ge,lt);return rt[0]*=Se,rt}return Ne.invert=function(Ge,lt){return t.geoGnomonicRaw.invert(Ge/Se,lt)},Ne}function sl(){return ll([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function ll(he,Se){return Js(cs,he,Se)}function il(he){if(!(he*=2))return t.geoAzimuthalEquidistantRaw;var Se=-he/2,Ne=-Se,Ge=he*he,lt=b(Ne),rt=.5/_(Ne);function pt(Ht,nr){var fr=U(o(nr)*o(Ht-Se)),Tr=U(o(nr)*o(Ht-Ne)),Ir=nr<0?-1:1;return fr*=fr,Tr*=Tr,[(fr-Tr)/(2*he),Ir*G(4*Ge*Tr-(Ge-fr+Tr)*(Ge-fr+Tr))/(2*he)]}return pt.invert=function(Ht,nr){var fr=nr*nr,Tr=o(G(fr+(ri=Ht+Se)*ri)),Ir=o(G(fr+(ri=Ht+Ne)*ri)),ri,li;return[a(li=Tr-Ir,ri=(Tr+Ir)*lt),(nr<0?-1:1)*U(G(ri*ri+li*li)*rt)]},pt}function zl(){return Ml([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function Ml(he,Se){return Js(il,he,Se)}function Rl(he,Se){if(n(Se)v&&--Ht>0);return[p(he)*(G(lt*lt+4)+lt)*E/4,A*pt]};function Nl(){return t.geoProjection(Vl).scale(127.16)}function le(he,Se,Ne,Ge,lt){function rt(pt,Ht){var nr=Ne*_(Ge*Ht),fr=G(1-nr*nr),Tr=G(2/(1+fr*o(pt*=lt)));return[he*fr*Tr*_(pt),Se*nr*Tr]}return rt.invert=function(pt,Ht){var nr=pt/he,fr=Ht/Se,Tr=G(nr*nr+fr*fr),Ir=2*F(Tr/2);return[a(pt*b(Ir),he*Tr)/lt,Tr&&F(Ht*_(Ir)/(Se*Ne*Tr))/Ge]},rt}function w(he,Se,Ne,Ge){var lt=E/3;he=f(he,v),Se=f(Se,v),he=c(he,A),Se=c(Se,E-v),Ne=f(Ne,0),Ne=c(Ne,100-v),Ge=f(Ge,v);var rt=Ne/100+1,pt=Ge/100,Ht=U(rt*o(lt))/lt,nr=_(he)/_(Ht*A),fr=Se/E,Tr=G(pt*_(he/2)/_(Se/2)),Ir=Tr/G(fr*nr*Ht),ri=1/(Tr*G(fr*nr*Ht));return le(Ir,ri,nr,Ht,fr)}function q(){var he=65*T,Se=60*T,Ne=20,Ge=200,lt=t.geoProjectionMutator(w),rt=lt(he,Se,Ne,Ge);return rt.poleline=function(pt){return arguments.length?lt(he=+pt*T,Se,Ne,Ge):he*P},rt.parallels=function(pt){return arguments.length?lt(he,Se=+pt*T,Ne,Ge):Se*P},rt.inflation=function(pt){return arguments.length?lt(he,Se,Ne=+pt,Ge):Ne},rt.ratio=function(pt){return arguments.length?lt(he,Se,Ne,Ge=+pt):Ge},rt.scale(163.775)}function Q(){return q().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var ee=4*E+3*G(3),ue=2*G(2*E*G(3)/ee),Ve=St(ue*G(3)/E,ue,ee/6);function tt(){return t.geoProjection(Ve).scale(176.84)}function mt(he,Se){return[he*G(1-3*Se*Se/(E*E)),Se]}mt.invert=function(he,Se){return[he/G(1-3*Se*Se/(E*E)),Se]};function Bt(){return t.geoProjection(mt).scale(152.63)}function ir(he,Se){var Ne=o(Se),Ge=o(he)*Ne,lt=1-Ge,rt=o(he=a(_(he)*Ne,-_(Se))),pt=_(he);return Ne=G(1-Ge*Ge),[pt*Ne-rt*lt,-rt*Ne-pt*lt]}ir.invert=function(he,Se){var Ne=(he*he+Se*Se)/-2,Ge=G(-Ne*(2+Ne)),lt=Se*Ne+he*Ge,rt=he*Ne-Se*Ge,pt=G(rt*rt+lt*lt);return[a(Ge*lt,pt*(1+Ne)),pt?-F(Ge*rt/pt):0]};function or(){return t.geoProjection(ir).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function kr(he,Se){var Ne=ze(he,Se);return[(Ne[0]+he/A)/2,(Ne[1]+Se)/2]}kr.invert=function(he,Se){var Ne=he,Ge=Se,lt=25;do{var rt=o(Ge),pt=_(Ge),Ht=_(2*Ge),nr=pt*pt,fr=rt*rt,Tr=_(Ne),Ir=o(Ne/2),ri=_(Ne/2),li=ri*ri,Ei=1-fr*Ir*Ir,hn=Ei?U(rt*Ir)*G(Zn=1/Ei):Zn=0,Zn,Yn=.5*(2*hn*rt*ri+Ne/A)-he,Ua=.5*(hn*pt+Ge)-Se,Fo=.5*Zn*(fr*li+hn*rt*Ir*nr)+.5/A,vl=Zn*(Tr*Ht/4-hn*pt*ri),Us=.125*Zn*(Ht*ri-hn*pt*fr*Tr),ml=.5*Zn*(nr*Ir+hn*li*rt)+.5,au=vl*Us-ml*Fo,Sl=(Ua*vl-Yn*ml)/au,Yl=(Yn*Us-Ua*Fo)/au;Ne-=Sl,Ge-=Yl}while((n(Sl)>v||n(Yl)>v)&&--lt>0);return[Ne,Ge]};function Vr(){return t.geoProjection(kr).scale(158.837)}e.geoNaturalEarth=t.geoNaturalEarth1,e.geoNaturalEarthRaw=t.geoNaturalEarth1Raw,e.geoAiry=be,e.geoAiryRaw=ae,e.geoAitoff=Ce,e.geoAitoffRaw=ze,e.geoArmadillo=te,e.geoArmadilloRaw=de,e.geoAugust=Ee,e.geoAugustRaw=ke,e.geoBaker=ye,e.geoBakerRaw=De,e.geoBerghaus=ce,e.geoBerghausRaw=qe,e.geoBertin1953=Ct,e.geoBertin1953Raw=Ke,e.geoBoggs=Tt,e.geoBoggsRaw=ot,e.geoBonne=et,e.geoBonneRaw=it,e.geoBottomley=Yt,e.geoBottomleyRaw=It,e.geoBromley=_r,e.geoBromleyRaw=cr,e.geoChamberlin=Fe,e.geoChamberlinRaw=xe,e.geoChamberlinAfrica=Ie,e.geoCollignon=ge,e.geoCollignonRaw=ft,e.geoCraig=pe,e.geoCraigRaw=fe,e.geoCraster=zt,e.geoCrasterRaw=Pt,e.geoCylindricalEqualArea=Gr,e.geoCylindricalEqualAreaRaw=rr,e.geoCylindricalStereographic=Er,e.geoCylindricalStereographicRaw=Br,e.geoEckert1=pi,e.geoEckert1Raw=Rr,e.geoEckert2=ni,e.geoEckert2Raw=Di,e.geoEckert3=Qi,e.geoEckert3Raw=$i,e.geoEckert4=Ai,e.geoEckert4Raw=si,e.geoEckert5=Rt,e.geoEckert5Raw=Ni,e.geoEckert6=Gt,e.geoEckert6Raw=yt,e.geoEisenlohr=Lr,e.geoEisenlohrRaw=xr,e.geoFahey=Hr,e.geoFaheyRaw=Or,e.geoFoucaut=gi,e.geoFoucautRaw=jr,e.geoFoucautSinusoidal=Vi,e.geoFoucautSinusoidalRaw=ki,e.geoGilbert=Yr,e.geoGingery=nn,e.geoGingeryRaw=oi,e.geoGinzburg4=xn,e.geoGinzburg4Raw=Ii,e.geoGinzburg5=Xr,e.geoGinzburg5Raw=bi,e.geoGinzburg6=tr,e.geoGinzburg6Raw=ct,e.geoGinzburg8=gr,e.geoGinzburg8Raw=pr,e.geoGinzburg9=Ti,e.geoGinzburg9Raw=Zr,e.geoGringorten=Mn,e.geoGringortenRaw=ii,e.geoGuyou=Ia,e.geoGuyouRaw=ka,e.geoHammer=gt,e.geoHammerRaw=Je,e.geoHammerRetroazimuthal=kn,e.geoHammerRetroazimuthalRaw=Yo,e.geoHealpix=wa,e.geoHealpixRaw=ls,e.geoHill=Co,e.geoHillRaw=ws,e.geoHomolosine=Sn,e.geoHomolosineRaw=Ha,e.geoHufnagel=Ba,e.geoHufnagelRaw=ao,e.geoHyperelliptical=Sa,e.geoHyperellipticalRaw=Hi,e.geoInterrupt=la,e.geoInterruptedBoggs=Ts,e.geoInterruptedHomolosine=co,e.geoInterruptedMollweide=No,e.geoInterruptedMollweideHemispheres=Go,e.geoInterruptedSinuMollweide=qs,e.geoInterruptedSinusoidal=Oa,e.geoKavrayskiy7=Vs,e.geoKavrayskiy7Raw=ha,e.geoLagrange=_n,e.geoLagrangeRaw=Ya,e.geoLarrivee=Ra,e.geoLarriveeRaw=wo,e.geoLaskowski=un,e.geoLaskowskiRaw=Xn,e.geoLittrow=Ka,e.geoLittrowRaw=$n,e.geoLoximuthal=Eo,e.geoLoximuthalRaw=qn,e.geoMiller=lo,e.geoMillerRaw=Ja,e.geoModifiedStereographic=_a,e.geoModifiedStereographicRaw=eo,e.geoModifiedStereographicAlaska=to,e.geoModifiedStereographicGs48=yo,e.geoModifiedStereographicGs50=Jo,e.geoModifiedStereographicMiller=To,e.geoModifiedStereographicLee=Dn,e.geoMollweide=Zt,e.geoMollweideRaw=Dt,e.geoMtFlatPolarParabolic=As,e.geoMtFlatPolarParabolicRaw=Es,e.geoMtFlatPolarQuartic=Wa,e.geoMtFlatPolarQuarticRaw=Ho,e.geoMtFlatPolarSinusoidal=ts,e.geoMtFlatPolarSinusoidalRaw=Ao,e.geoNaturalEarth2=qa,e.geoNaturalEarth2Raw=Wo,e.geoNellHammer=Bo,e.geoNellHammerRaw=ln,e.geoInterruptedQuarticAuthalic=oo,e.geoNicolosi=ea,e.geoNicolosiRaw=za,e.geoPatterson=Vo,e.geoPattersonRaw=gs,e.geoPolyconic=Lo,e.geoPolyconicRaw=Do,e.geoPolyhedral=Gs,e.geoPolyhedralButterfly=po,e.geoPolyhedralCollignon=qo,e.geoPolyhedralWaterman=zo,e.geoProject=Hs,e.geoGringortenQuincuncial=At,e.geoPeirceQuincuncial=Vt,e.geoPierceQuincuncial=Vt,e.geoQuantize=wr,e.geoQuincuncial=Bs,e.geoRectangularPolyconic=Fr,e.geoRectangularPolyconicRaw=mr,e.geoRobinson=Ci,e.geoRobinsonRaw=Si,e.geoSatellite=Pi,e.geoSatelliteRaw=Fn,e.geoSinuMollweide=Ps,e.geoSinuMollweideRaw=gn,e.geoSinusoidal=He,e.geoSinusoidalRaw=Ye,e.geoStitch=Ul,e.geoTimes=ns,e.geoTimesRaw=ja,e.geoTwoPointAzimuthal=ll,e.geoTwoPointAzimuthalRaw=cs,e.geoTwoPointAzimuthalUsa=sl,e.geoTwoPointEquidistant=Ml,e.geoTwoPointEquidistantRaw=il,e.geoTwoPointEquidistantUsa=zl,e.geoVanDerGrinten=Tl,e.geoVanDerGrintenRaw=Rl,e.geoVanDerGrinten2=ms,e.geoVanDerGrinten2Raw=Ll,e.geoVanDerGrinten3=Xl,e.geoVanDerGrinten3Raw=Os,e.geoVanDerGrinten4=Nl,e.geoVanDerGrinten4Raw=Vl,e.geoWagner=q,e.geoWagner7=Q,e.geoWagnerRaw=w,e.geoWagner4=tt,e.geoWagner4Raw=Ve,e.geoWagner6=Bt,e.geoWagner6Raw=mt,e.geoWiechel=or,e.geoWiechelRaw=ir,e.geoWinkel3=Vr,e.geoWinkel3Raw=kr,Object.defineProperty(e,"__esModule",{value:!0})})});var Z6e=Ae((Wgr,X6e)=>{"use strict";var od=Jl(),HZ=ei(),hBt=$l(),$A=Math.PI/180,j2=180/Math.PI,jZ={cursor:"pointer"},XZ={cursor:"auto"};function dBt(e,t){var r=e.projection,n;return t._isScoped?n=pBt:t._isClipped?n=mBt:n=vBt,n(e,r)}X6e.exports=dBt;function ZZ(e,t){return od.behavior.zoom().translate(t.translate()).scale(t.scale())}function YZ(e,t,r){var n=e.id,i=e.graphDiv,a=i.layout,o=a[n],s=i._fullLayout,u=s[n],l={},f={};function c(h,d){l[n+"."+h]=HZ.nestedProperty(o,h).get(),hBt.call("_storeDirectGUIEdit",a,s._preGUI,l);var p=HZ.nestedProperty(u,h);p.get()!==d&&(p.set(d),HZ.nestedProperty(o,h).set(d),f[n+"."+h]=d)}r(c),c("projection.scale",t.scale()/e.fitScale),c("fitbounds",!1),i.emit("plotly_relayout",f)}function pBt(e,t){var r=ZZ(e,t);function n(){od.select(this).style(jZ)}function i(){t.scale(od.event.scale).translate(od.event.translate),e.render(!0);var s=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":s[0],"geo.center.lat":s[1]})}function a(s){var u=t.invert(e.midPt);s("center.lon",u[0]),s("center.lat",u[1])}function o(){od.select(this).style(XZ),YZ(e,t,a)}return r.on("zoomstart",n).on("zoom",i).on("zoomend",o),r}function vBt(e,t){var r=ZZ(e,t),n=2,i,a,o,s,u,l,f,c,h;function d(E){return t.invert(E)}function p(E){var A=d(E);if(!A)return!0;var L=t(A);return Math.abs(L[0]-E[0])>n||Math.abs(L[1]-E[1])>n}function _(){od.select(this).style(jZ),i=od.mouse(this),a=t.rotate(),o=t.translate(),s=a,u=d(i)}function b(){if(l=od.mouse(this),p(i)){r.scale(t.scale()),r.translate(t.translate());return}t.scale(od.event.scale),t.translate([o[0],od.event.translate[1]]),u?d(l)&&(c=d(l),f=[s[0]+(c[0]-u[0]),a[1],a[2]],t.rotate(f),s=f):(i=l,u=d(i)),h=!0,e.render(!0);var E=t.rotate(),A=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":A[0],"geo.center.lat":A[1],"geo.projection.rotation.lon":-E[0]})}function v(){od.select(this).style(XZ),h&&YZ(e,t,k)}function k(E){var A=t.rotate(),L=t.invert(e.midPt);E("projection.rotation.lon",-A[0]),E("center.lon",L[0]),E("center.lat",L[1])}return r.on("zoomstart",_).on("zoom",b).on("zoomend",v),r}function mBt(e,t){var r={r:t.rotate(),k:t.scale()},n=ZZ(e,t),i=ABt(n,"zoomstart","zoom","zoomend"),a=0,o=n.on,s;n.on("zoomstart",function(){od.select(this).style(jZ);var h=od.mouse(this),d=t.rotate(),p=d,_=t.translate(),b=yBt(d);s=zF(t,h),o.call(n,"zoom",function(){var v=od.mouse(this);if(t.scale(r.k=od.event.scale),!s)h=v,s=zF(t,h);else if(zF(t,v)){t.rotate(d).translate(_);var k=zF(t,v),E=_Bt(s,k),A=bBt(gBt(b,E)),L=r.r=xBt(A,s,p);(!isFinite(L[0])||!isFinite(L[1])||!isFinite(L[2]))&&(L=p),t.rotate(L),p=L}l(i.of(this,arguments))}),u(i.of(this,arguments))}).on("zoomend",function(){od.select(this).style(XZ),o.call(n,"zoom",null),f(i.of(this,arguments)),YZ(e,t,c)}).on("zoom.redraw",function(){e.render(!0);var h=t.rotate();e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.projection.rotation.lon":-h[0],"geo.projection.rotation.lat":-h[1]})});function u(h){a++||h({type:"zoomstart"})}function l(h){h({type:"zoom"})}function f(h){--a||h({type:"zoomend"})}function c(h){var d=t.rotate();h("projection.rotation.lon",-d[0]),h("projection.rotation.lat",-d[1])}return od.rebind(n,i,"on")}function zF(e,t){var r=e.invert(t);return r&&isFinite(r[0])&&isFinite(r[1])&&wBt(r)}function yBt(e){var t=.5*e[0]*$A,r=.5*e[1]*$A,n=.5*e[2]*$A,i=Math.sin(t),a=Math.cos(t),o=Math.sin(r),s=Math.cos(r),u=Math.sin(n),l=Math.cos(n);return[a*s*l+i*o*u,i*s*l-a*o*u,a*o*l+i*s*u,a*s*u-i*o*l]}function gBt(e,t){var r=e[0],n=e[1],i=e[2],a=e[3],o=t[0],s=t[1],u=t[2],l=t[3];return[r*o-n*s-i*u-a*l,r*s+n*o+i*l-a*u,r*u-n*l+i*o+a*s,r*l+n*u-i*s+a*o]}function _Bt(e,t){if(!(!e||!t)){var r=TBt(e,t),n=Math.sqrt(j6e(r,r)),i=.5*Math.acos(Math.max(-1,Math.min(1,j6e(e,t)))),a=Math.sin(i)/n;return n&&[Math.cos(i),r[2]*a,-r[1]*a,r[0]*a]}}function xBt(e,t,r){var n=WZ(t,2,e[0]);n=WZ(n,1,e[1]),n=WZ(n,0,e[2]-r[2]);var i=t[0],a=t[1],o=t[2],s=n[0],u=n[1],l=n[2],f=Math.atan2(a,i)*j2,c=Math.sqrt(i*i+a*a),h,d;Math.abs(u)>c?(d=(u>0?90:-90)-f,h=0):(d=Math.asin(u/c)*j2-f,h=Math.sqrt(c*c-u*u));var p=180-d-2*f,_=(Math.atan2(l,s)-Math.atan2(o,h))*j2,b=(Math.atan2(l,s)-Math.atan2(o,-h))*j2,v=H6e(r[0],r[1],d,_),k=H6e(r[0],r[1],p,b);return v<=k?[d,_,r[2]]:[p,b,r[2]]}function H6e(e,t,r,n){var i=W6e(r-e),a=W6e(n-t);return Math.sqrt(i*i+a*a)}function W6e(e){return(e%360+540)%360-180}function WZ(e,t,r){var n=r*$A,i=e.slice(),a=t===0?1:0,o=t===2?1:2,s=Math.cos(n),u=Math.sin(n);return i[a]=e[a]*s-e[o]*u,i[o]=e[o]*s+e[a]*u,i}function bBt(e){return[Math.atan2(2*(e[0]*e[1]+e[2]*e[3]),1-2*(e[1]*e[1]+e[2]*e[2]))*j2,Math.asin(Math.max(-1,Math.min(1,2*(e[0]*e[2]-e[3]*e[1]))))*j2,Math.atan2(2*(e[0]*e[3]+e[1]*e[2]),1-2*(e[2]*e[2]+e[3]*e[3]))*j2]}function wBt(e){var t=e[0]*$A,r=e[1]*$A,n=Math.cos(r);return[n*Math.cos(t),n*Math.sin(t),Math.sin(r)]}function j6e(e,t){for(var r=0,n=0,i=e.length;n{"use strict";var t1=Jl(),$Z=GZ(),SBt=$Z.geoPath,MBt=$Z.geoDistance,EBt=G6e(),kBt=$l(),ok=ei(),CBt=ok.strTranslate,IF=jl(),ak=Mu(),Y6e=Xc(),LBt=Cc(),JZ=wu(),K6e=Am().getAutoRange,KZ=xp(),PBt=oh().prepSelect,zBt=oh().clearOutline,IBt=oh().selectOnClick,RBt=Z6e(),cv=tk(),DBt=ix(),$6e=yF(),FBt=kZ().feature;function Q6e(e){this.id=e.id,this.graphDiv=e.graphDiv,this.container=e.container,this.topojsonURL=e.topojsonURL,this.isStatic=e.staticPlot,this.topojsonName=null,this.topojson=null,this.projection=null,this.scope=null,this.viewInitial=null,this.fitScale=null,this.bounds=null,this.midPt=null,this.hasChoropleth=!1,this.traceHash={},this.layers={},this.basePaths={},this.dataPaths={},this.dataPoints={},this.clipDef=null,this.clipRect=null,this.bgRect=null,this.makeFramework()}var Qm=Q6e.prototype;eFe.exports=function(t){return new Q6e(t)};Qm.plot=function(e,t,r,n){var i=this;if(n)return i.update(e,t,!0);i._geoCalcData=e,i._fullLayout=t;var a=t[this.id],o=[],s=!1;for(var u in cv.layerNameToAdjective)if(u!=="frame"&&a["show"+u]){s=!0;break}for(var l=!1,f=0;f0&&o._module.calcGeoJSON(a,t)}if(!r){var s=this.updateProjection(e,t);if(s)return;(!this.viewInitial||this.scope!==n.scope)&&this.saveViewInitial(n)}this.scope=n.scope,this.updateBaseLayers(t,n),this.updateDims(t,n),this.updateFx(t,n),LBt.generalUpdatePerTraceModule(this.graphDiv,this,e,n);var u=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=u.selectAll(".point"),this.dataPoints.text=u.selectAll("text"),this.dataPaths.line=u.selectAll(".js-line");var l=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=l.selectAll("path"),this._render()};Qm.updateProjection=function(e,t){var r=this.graphDiv,n=t[this.id],i=t._size,a=n.domain,o=n.projection,s=n.lonaxis,u=n.lataxis,l=s._ax,f=u._ax,c=this.projection=BBt(n),h=[[i.l+i.w*a.x[0],i.t+i.h*(1-a.y[1])],[i.l+i.w*a.x[1],i.t+i.h*(1-a.y[0])]],d=n.center||{},p=o.rotation||{},_=s.range||[],b=u.range||[];if(n.fitbounds){l._length=h[1][0]-h[0][0],f._length=h[1][1]-h[0][1],l.range=K6e(r,l),f.range=K6e(r,f);var v=(l.range[0]+l.range[1])/2,k=(f.range[0]+f.range[1])/2;if(n._isScoped)d={lon:v,lat:k};else if(n._isClipped){d={lon:v,lat:k},p={lon:v,lat:k,roll:p.roll};var E=o.type,A=cv.lonaxisSpan[E]/2||180,L=cv.lataxisSpan[E]/2||90;_=[v-A,v+A],b=[k-L,k+L]}else d={lon:v,lat:k},p={lon:v,lat:p.lat,roll:p.roll}}c.center([d.lon-p.lon,d.lat-p.lat]).rotate([-p.lon,-p.lat,p.roll]).parallels(o.parallels);var x=J6e(_,b);c.fitExtent(h,x);var C=this.bounds=c.getBounds(x),M=this.fitScale=c.scale(),m=c.translate();if(n.fitbounds){var P=c.getBounds(J6e(l.range,f.range)),T=Math.min((C[1][0]-C[0][0])/(P[1][0]-P[0][0]),(C[1][1]-C[0][1])/(P[1][1]-P[0][1]));isFinite(T)?c.scale(T*M):ok.warn("Something went wrong during"+this.id+"fitbounds computations.")}else c.scale(o.scale*M);var B=this.midPt=[(C[0][0]+C[1][0])/2,(C[0][1]+C[1][1])/2];if(c.translate([m[0]+(B[0]-m[0]),m[1]+(B[1]-m[1])]).clipExtent(C),n._isAlbersUsa){var F=c([d.lon,d.lat]),U=c.translate();c.translate([U[0]-(F[0]-U[0]),U[1]-(F[1]-U[1])])}};Qm.updateBaseLayers=function(e,t){var r=this,n=r.topojson,i=r.layers,a=r.basePaths;function o(h){return h==="lonaxis"||h==="lataxis"}function s(h){return!!cv.lineLayers[h]}function u(h){return!!cv.fillLayers[h]}var l=this.hasChoropleth?cv.layersForChoropleth:cv.layers,f=l.filter(function(h){return s(h)||u(h)?t["show"+h]:o(h)?t[h].showgrid:!0}),c=r.framework.selectAll(".layer").data(f,String);c.exit().each(function(h){delete i[h],delete a[h],t1.select(this).remove()}),c.enter().append("g").attr("class",function(h){return"layer "+h}).each(function(h){var d=i[h]=t1.select(this);h==="bg"?r.bgRect=d.append("rect").style("pointer-events","all"):o(h)?a[h]=d.append("path").style("fill","none"):h==="backplot"?d.append("g").classed("choroplethlayer",!0):h==="frontplot"?d.append("g").classed("scatterlayer",!0):s(h)?a[h]=d.append("path").style("fill","none").style("stroke-miterlimit",2):u(h)&&(a[h]=d.append("path").style("stroke","none"))}),c.order(),c.each(function(h){var d=a[h],p=cv.layerNameToAdjective[h];h==="frame"?d.datum(cv.sphereSVG):s(h)||u(h)?d.datum(FBt(n,n.objects[h])):o(h)&&d.datum(OBt(h,t,e)).call(IF.stroke,t[h].gridcolor).call(ak.dashLine,t[h].griddash,t[h].gridwidth),s(h)?d.call(IF.stroke,t[p+"color"]).call(ak.dashLine,"",t[p+"width"]):u(h)&&d.call(IF.fill,t[p+"color"])})};Qm.updateDims=function(e,t){var r=this.bounds,n=(t.framewidth||0)/2,i=r[0][0]-n,a=r[0][1]-n,o=r[1][0]-i+n,s=r[1][1]-a+n;ak.setRect(this.clipRect,i,a,o,s),this.bgRect.call(ak.setRect,i,a,o,s).call(IF.fill,t.bgcolor),this.xaxis._offset=i,this.xaxis._length=o,this.yaxis._offset=a,this.yaxis._length=s};Qm.updateFx=function(e,t){var r=this,n=r.graphDiv,i=r.bgRect,a=e.dragmode,o=e.clickmode;if(r.isStatic)return;function s(){var c=r.viewInitial,h={};for(var d in c)h[r.id+"."+d]=c[d];kBt.call("_guiRelayout",n,h),n.emit("plotly_doubleclick",null)}function u(c){return r.projection.invert([c[0]+r.xaxis._offset,c[1]+r.yaxis._offset])}var l=function(c,h){if(h.isRect){var d=c.range={};d[r.id]=[u([h.xmin,h.ymin]),u([h.xmax,h.ymax])]}else{var p=c.lassoPoints={};p[r.id]=h.map(u)}},f={element:r.bgRect.node(),gd:n,plotinfo:{id:r.id,xaxis:r.xaxis,yaxis:r.yaxis,fillRangeItems:l},xaxes:[r.xaxis],yaxes:[r.yaxis],subplot:r.id,clickFn:function(c){c===2&&zBt(n)}};a==="pan"?(i.node().onmousedown=null,i.call(RBt(r,t)),i.on("dblclick.zoom",s),n._context._scrollZoom.geo||i.on("wheel.zoom",null)):(a==="select"||a==="lasso")&&(i.on(".zoom",null),f.prepFn=function(c,h,d){PBt(c,h,d,f,a)},KZ.init(f)),i.on("mousemove",function(){var c=r.projection.invert(ok.getPositionFromD3Event());if(!c)return KZ.unhover(n,t1.event);r.xaxis.p2c=function(){return c[0]},r.yaxis.p2c=function(){return c[1]},Y6e.hover(n,t1.event,r.id)}),i.on("mouseout",function(){n._dragging||KZ.unhover(n,t1.event)}),i.on("click",function(){a!=="select"&&a!=="lasso"&&(o.indexOf("select")>-1&&IBt(t1.event,n,[r.xaxis],[r.yaxis],r.id,f),o.indexOf("event")>-1&&Y6e.click(n,t1.event))})};Qm.makeFramework=function(){var e=this,t=e.graphDiv,r=t._fullLayout,n="clip"+r._uid+e.id;e.clipDef=r._clips.append("clipPath").attr("id",n),e.clipRect=e.clipDef.append("rect"),e.framework=t1.select(e.container).append("g").attr("class","geo "+e.id).call(ak.setClipUrl,n,t),e.project=function(i){var a=e.projection(i);return a?[a[0]-e.xaxis._offset,a[1]-e.yaxis._offset]:[null,null]},e.xaxis={_id:"x",c2p:function(i){return e.project(i)[0]}},e.yaxis={_id:"y",c2p:function(i){return e.project(i)[1]}},e.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},JZ.setConvert(e.mockAxis,r)};Qm.saveViewInitial=function(e){var t=e.center||{},r=e.projection,n=r.rotation||{};this.viewInitial={fitbounds:e.fitbounds,"projection.scale":r.scale};var i;e._isScoped?i={"center.lon":t.lon,"center.lat":t.lat}:e._isClipped?i={"projection.rotation.lon":n.lon,"projection.rotation.lat":n.lat}:i={"center.lon":t.lon,"center.lat":t.lat,"projection.rotation.lon":n.lon},ok.extendFlat(this.viewInitial,i)};Qm.render=function(e){this._hasMarkerAngles&&e?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()};Qm._render=function(){var e=this.projection,t=e.getPath(),r;function n(a){var o=e(a.lonlat);return o?CBt(o[0],o[1]):null}function i(a){return e.isLonLatOverEdges(a.lonlat)?"none":null}for(r in this.basePaths)this.basePaths[r].attr("d",t);for(r in this.dataPaths)this.dataPaths[r].attr("d",function(a){return t(a.geojson)});for(r in this.dataPoints)this.dataPoints[r].attr("display",i).attr("transform",n)};function BBt(e){var t=e.projection,r=t.type,n=cv.projNames[r];n="geo"+ok.titleCase(n);for(var i=$Z[n]||EBt[n],a=i(),o=e._isSatellite?Math.acos(1/t.distance)*180/Math.PI:e._isClipped?cv.lonaxisSpan[r]/2:null,s=["center","rotate","parallels","clipExtent"],u=function(c){return c?a:[]},l=0;lp}else return!1},a.getPath=function(){return SBt().projection(a)},a.getBounds=function(c){return a.getPath().bounds(c)},a.precision(cv.precision),e._isSatellite&&a.tilt(t.tilt).distance(t.distance),o&&a.clipAngle(o-cv.clipPad),a}function OBt(e,t,r){var n=1e-6,i=2.5,a=t[e],o=cv.scopeDefaults[t.scope],s,u,l;e==="lonaxis"?(s=o.lonaxisRange,u=o.lataxisRange,l=function(k,E){return[k,E]}):e==="lataxis"&&(s=o.lataxisRange,u=o.lonaxisRange,l=function(k,E){return[E,k]});var f={type:"linear",range:[s[0],s[1]-n],tick0:a.tick0,dtick:a.dtick};JZ.setConvert(f,r);var c=JZ.calcTicks(f);!t.isScoped&&e==="lonaxis"&&c.pop();for(var h=c.length,d=new Array(h),p=0;p0&&i<0&&(i+=360);var s=(i-n)/4;return{type:"Polygon",coordinates:[[[n,a],[n,o],[n+s,o],[n+2*s,o],[n+3*s,o],[i,o],[i,a],[i-s,a],[i-2*s,a],[i-3*s,a],[n,a]]]}}});var QZ=Ae((Xgr,nFe)=>{"use strict";var eS=Fh(),qBt=zc().attributes,NBt=Id().dash,QA=tk(),UBt=Sc().overrideAll,rFe=Z1(),iFe={range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},showgrid:{valType:"boolean",dflt:!1},tick0:{valType:"number",dflt:0},dtick:{valType:"number"},gridcolor:{valType:"color",dflt:eS.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:NBt},VBt=nFe.exports=UBt({domain:qBt({name:"geo"},{}),fitbounds:{valType:"enumerated",values:[!1,"locations","geojson"],dflt:!1,editType:"plot"},resolution:{valType:"enumerated",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:"enumerated",values:rFe(QA.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:rFe(QA.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:eS.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:QA.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:QA.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:QA.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:QA.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:eS.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:eS.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:eS.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:eS.background},lonaxis:iFe,lataxis:iFe},"plot","from-root");VBt.uirevision={valType:"any",editType:"none"}});var sFe=Ae((Zgr,oFe)=>{"use strict";var RF=ei(),GBt=k_(),HBt=Rd().getSubplotData,DF=tk(),WBt=QZ(),aFe=DF.axesNames;oFe.exports=function(t,r,n){GBt(t,r,n,{type:"geo",attributes:WBt,handleDefaults:jBt,fullData:n,partition:"y"})};function jBt(e,t,r,n){var i=HBt(n.fullData,"geo",n.id),a=i.map(function(ae){return ae.index}),o=r("resolution"),s=r("scope"),u=DF.scopeDefaults[s],l=r("projection.type",u.projType),f=t._isAlbersUsa=l==="albers usa";f&&(s=t.scope="usa");var c=t._isScoped=s!=="world",h=t._isSatellite=l==="satellite",d=t._isConic=l.indexOf("conic")!==-1||l==="albers",p=t._isClipped=!!DF.lonaxisSpan[l];if(e.visible===!1){var _=RF.extendDeep({},t._template);_.showcoastlines=!1,_.showcountries=!1,_.showframe=!1,_.showlakes=!1,_.showland=!1,_.showocean=!1,_.showrivers=!1,_.showsubunits=!1,_.lonaxis&&(_.lonaxis.showgrid=!1),_.lataxis&&(_.lataxis.showgrid=!1),t._template=_}for(var b=r("visible"),v,k=0;k0&&F<0&&(F+=360);var U=(B+F)/2,G;if(!f){var j=c?u.projRotate:[U,0,0];G=r("projection.rotation.lon",j[0]),r("projection.rotation.lat",j[1]),r("projection.rotation.roll",j[2]),v=r("showcoastlines",!c&&b),v&&(r("coastlinecolor"),r("coastlinewidth")),v=r("showocean",b?void 0:!1),v&&r("oceancolor")}var W,N;if(f?(W=-96.6,N=38.7):(W=c?U:G,N=(T[0]+T[1])/2),r("center.lon",W),r("center.lat",N),h&&(r("projection.tilt"),r("projection.distance")),d){var H=u.projParallels||[0,60];r("projection.parallels",H)}r("projection.scale"),v=r("showland",b?void 0:!1),v&&r("landcolor"),v=r("showlakes",b?void 0:!1),v&&r("lakecolor"),v=r("showrivers",b?void 0:!1),v&&(r("rivercolor"),r("riverwidth")),v=r("showcountries",c&&s!=="usa"&&b),v&&(r("countrycolor"),r("countrywidth")),(s==="usa"||s==="north america"&&o===50)&&(r("showsubunits",b),r("subunitcolor"),r("subunitwidth")),c||(v=r("showframe",b),v&&(r("framecolor"),r("framewidth"))),r("bgcolor");var re=r("fitbounds");re&&(delete t.projection.scale,c?(delete t.center.lon,delete t.center.lat):p?(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon,delete t.projection.rotation.lat,delete t.lonaxis.range,delete t.lataxis.range):(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon))}});var eY=Ae((Ygr,fFe)=>{"use strict";var XBt=Rd().getSubplotCalcData,ZBt=ei().counterRegex,YBt=tFe(),Xy="geo",lFe=ZBt(Xy),uFe={};uFe[Xy]={valType:"subplotid",dflt:Xy,editType:"calc"};function KBt(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[Xy],i=0;i{"use strict";cFe.exports={attributes:W2(),supplyDefaults:jDe(),colorbar:ep(),formatLabels:YDe(),calc:vF(),calcGeoJSON:VZ().calcGeoJSON,plot:VZ().plot,style:OZ(),styleOnSelect:ov().styleOnSelect,hoverPoints:R6e(),eventData:F6e(),selectPoints:q6e(),moduleType:"trace",name:"scattergeo",basePlotModule:eY(),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}});var pFe=Ae((Jgr,dFe)=>{"use strict";dFe.exports=hFe()});var tS=Ae(($gr,yFe)=>{"use strict";var{hovertemplateAttrs:QBt,templatefallbackAttrs:eOt}=Ff(),ax=W2(),tOt=nc(),vFe=Gf(),rOt=Fh().defaultLine,nx=Su().extendFlat,mFe=ax.marker.line;yFe.exports=nx({locations:{valType:"data_array",editType:"calc"},locationmode:ax.locationmode,z:{valType:"data_array",editType:"calc"},geojson:nx({},ax.geojson,{}),featureidkey:ax.featureidkey,text:nx({},ax.text,{}),hovertext:nx({},ax.hovertext,{}),marker:{line:{color:nx({},mFe.color,{dflt:rOt}),width:nx({},mFe.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:ax.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:ax.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:nx({},vFe.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:QBt(),hovertemplatefallback:eOt(),showlegend:nx({},vFe.showlegend,{dflt:!1})},tOt("",{cLetter:"z",editTypeOverride:"calc"}))});var _Fe=Ae((Qgr,gFe)=>{"use strict";var sk=ei(),iOt=rd(),nOt=tS(),aOt=["The library used by the *country names* `locationmode` option is changing in the next major version.","Some country names in existing plots may not work in the new version.","To ensure consistent behavior, consider setting `locationmode` to *ISO-3*."].join(" ");gFe.exports=function(t,r,n,i){function a(h,d){return sk.coerce(t,r,nOt,h,d)}var o=a("locations"),s=a("z");if(!(o&&o.length&&sk.isArrayOrTypedArray(s)&&s.length)){r.visible=!1;return}r._length=Math.min(o.length,s.length);var u=a("geojson"),l;(typeof u=="string"&&u!==""||sk.isPlainObject(u))&&(l="geojson-id");var f=a("locationmode",l);f==="country names"&&sk.warn(aOt),f==="geojson-id"&&a("featureidkey"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var c=a("marker.line.width");c&&a("marker.line.color"),a("marker.opacity"),iOt(t,r,i,a,{prefix:"",cLetter:"z"}),sk.coerceSelectionMarkerOpacity(r,a)}});var FF=Ae((e1r,wFe)=>{"use strict";var xFe=ku(),oOt=rf().BADNUM,sOt=gp(),lOt=ky(),uOt=F0();function bFe(e){return e&&typeof e=="string"}wFe.exports=function(t,r){var n=r._length,i=new Array(n),a;r.geojson?a=function(f){return bFe(f)||xFe(f)}:a=bFe;for(var o=0;o{"use strict";var fOt=Jl(),cOt=jl(),tY=Mu(),hOt=_c();function dOt(e,t){t&&TFe(e,t)}function TFe(e,t){var r=t[0].trace,n=t[0].node3,i=n.selectAll(".choroplethlocation"),a=r.marker||{},o=a.line||{},s=hOt.makeColorScaleFuncFromTrace(r);i.each(function(u){fOt.select(this).attr("fill",s(u.z)).call(cOt.stroke,u.mlc||o.color).call(tY.dashLine,"",u.mlw||o.width||0).style("opacity",a.opacity)}),tY.selectedPointStyle(i,r)}function pOt(e,t){var r=t[0].node3,n=t[0].trace;n.selectedpoints?tY.selectedPointStyle(r.selectAll(".choroplethlocation"),n):TFe(e,t)}AFe.exports={style:dOt,styleOnSelect:pOt}});var rY=Ae((r1r,EFe)=>{"use strict";var vOt=Jl(),SFe=ei(),rS=ix(),mOt=yF().getTopojsonFeatures,MFe=Am().findExtremes,yOt=BF().style;function gOt(e,t,r){var n=t.layers.backplot.select(".choroplethlayer");SFe.makeTraceGroups(n,r,"trace choropleth").each(function(i){var a=vOt.select(this),o=a.selectAll("path.choroplethlocation").data(SFe.identity);o.enter().append("path").classed("choroplethlocation",!0),o.exit().remove(),yOt(e,i)})}function _Ot(e,t){for(var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r.locationmode,o=r._length,s=a==="geojson-id"?rS.extractTraceFeature(e):mOt(r,i.topojson),u=[],l=[],f=0;f{"use strict";var xOt=wu(),bOt=tS(),wOt=ei().fillText;kFe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.subplot,s,u,l,f,c=[r,n],h=[r+360,n];for(u=0;u")}}});var qF=Ae((n1r,CFe)=>{"use strict";CFe.exports=function(t,r,n,i,a){t.location=r.location,t.z=r.z;var o=i[a];return o.fIn&&o.fIn.properties&&(t.properties=o.fIn.properties),t.ct=o.ct,t}});var NF=Ae((a1r,LFe)=>{"use strict";LFe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,u,l,f,c;if(r===!1)for(s=0;s{"use strict";PFe.exports={attributes:tS(),supplyDefaults:_Fe(),colorbar:S_(),calc:FF(),calcGeoJSON:rY().calcGeoJSON,plot:rY().plot,style:BF().style,styleOnSelect:BF().styleOnSelect,hoverPoints:OF(),eventData:qF(),selectPoints:NF(),moduleType:"trace",name:"choropleth",basePlotModule:eY(),categories:["geo","noOpacity","showLegend"],meta:{}}});var RFe=Ae((s1r,IFe)=>{"use strict";IFe.exports=zFe()});var UF=Ae((l1r,FFe)=>{"use strict";var AOt=$l(),s0=ei(),SOt=fT();function MOt(e,t,r,n){var i=e.cd,a=i[0].t,o=i[0].trace,s=e.xa,u=e.ya,l=a.x,f=a.y,c=s.c2p(t),h=u.c2p(r),d=e.distance,p;if(a.tree){var _=s.p2c(c-d),b=s.p2c(c+d),v=u.p2c(h-d),k=u.p2c(h+d);n==="x"?p=a.tree.range(Math.min(_,b),Math.min(u._rl[0],u._rl[1]),Math.max(_,b),Math.max(u._rl[0],u._rl[1])):p=a.tree.range(Math.min(_,b),Math.min(v,k),Math.max(_,b),Math.max(v,k))}else p=a.ids;var E,A,L,x,C,M,m,P,T,B=d;if(n==="x"){var F=!!o.xperiodalignment,U=!!o.yperiodalignment;for(C=0;C=Math.min(G,j)&&c<=Math.max(G,j)?0:1/0}if(M=Math.min(W,N)&&h<=Math.max(W,N)?0:1/0}T=Math.sqrt(M*M+m*m),A=p[C]}}}else for(C=p.length-1;C>-1;C--)E=p[C],L=l[E],x=f[E],M=s.c2p(L)-c,m=u.c2p(x)-h,P=Math.sqrt(M*M+m*m),P{"use strict";var BFe=20;OFe.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:BFe,SYMBOL_STROKE:BFe/20,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}});var lk=Ae((f1r,VFe)=>{"use strict";var EOt=Gf(),kOt=gc(),COt=Cm(),Kc=Zc(),qFe=jc().axisHoverFormat,NFe=nc(),LOt=Z1(),iY=Su().extendFlat,POt=Sc().overrideAll,zOt=ox().DASHES,UFe=Kc.line,r1=Kc.marker,IOt=r1.line,sx=VFe.exports=POt({x:Kc.x,x0:Kc.x0,dx:Kc.dx,y:Kc.y,y0:Kc.y0,dy:Kc.dy,xperiod:Kc.xperiod,yperiod:Kc.yperiod,xperiod0:Kc.xperiod0,yperiod0:Kc.yperiod0,xperiodalignment:Kc.xperiodalignment,yperiodalignment:Kc.yperiodalignment,xhoverformat:qFe("x"),yhoverformat:qFe("y"),text:Kc.text,hovertext:Kc.hovertext,textposition:Kc.textposition,textfont:kOt({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,noNumericWeightValues:!0,variantValues:["normal","small-caps"]}),mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"]},line:{color:UFe.color,width:UFe.width,shape:{valType:"enumerated",values:["linear","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},dash:{valType:"enumerated",values:LOt(zOt),dflt:"solid"}},marker:iY({},NFe("marker"),{symbol:r1.symbol,angle:r1.angle,size:r1.size,sizeref:r1.sizeref,sizemin:r1.sizemin,sizemode:r1.sizemode,opacity:r1.opacity,colorbar:r1.colorbar,line:iY({},NFe("marker.line"),{width:IOt.width})}),connectgaps:Kc.connectgaps,fill:iY({},Kc.fill,{dflt:"none"}),fillcolor:COt(),selected:{marker:Kc.selected.marker,textfont:Kc.selected.textfont},unselected:{marker:Kc.unselected.marker,textfont:Kc.unselected.textfont},opacity:EOt.opacity},"calc","nested");sx.x.editType=sx.y.editType=sx.x0.editType=sx.y0.editType="calc+clearAxisTypes";sx.hovertemplate=Kc.hovertemplate;sx.hovertemplatefallback=Kc.hovertemplatefallback;sx.texttemplate=Kc.texttemplate;sx.texttemplatefallback=Kc.texttemplatefallback});var VF=Ae(nY=>{"use strict";var GFe=ox();nY.isOpenSymbol=function(e){return typeof e=="string"?GFe.OPEN_RE.test(e):e%200>100};nY.isDotSymbol=function(e){return typeof e=="string"?GFe.DOT_RE.test(e):e>200}});var jFe=Ae((h1r,WFe)=>{"use strict";var HFe=ei(),ROt=$l(),DOt=VF(),FOt=lk(),BOt=Sy(),GF=lc(),OOt=eT(),qOt=zm(),NOt=$v(),UOt=I0(),VOt=Im(),GOt=R0();WFe.exports=function(t,r,n,i){function a(d,p){return HFe.coerce(t,r,FOt,d,p)}var o=t.marker?DOt.isOpenSymbol(t.marker.symbol):!1,s=GF.isBubble(t),u=OOt(t,r,i,a);if(!u){r.visible=!1;return}qOt(t,r,i,a),a("xhoverformat"),a("yhoverformat");var l=u{"use strict";var HOt=nI();XFe.exports=function(t,r,n){var i=t.i;return"x"in t||(t.x=r._x[i]),"y"in t||(t.y=r._y[i]),HOt(t,r,n)}});var KFe=Ae((p1r,YFe)=>{"use strict";function WOt(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o],u=r!==void 0?r(s,t):s-t;u>=0?(a=o,i=o-1):n=o+1}return a}function jOt(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o],u=r!==void 0?r(s,t):s-t;u>0?(a=o,i=o-1):n=o+1}return a}function XOt(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o],u=r!==void 0?r(s,t):s-t;u<0?(a=o,n=o+1):i=o-1}return a}function ZOt(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o],u=r!==void 0?r(s,t):s-t;u<=0?(a=o,n=o+1):i=o-1}return a}function YOt(e,t,r,n,i){for(;n<=i;){var a=n+i>>>1,o=e[a],s=r!==void 0?r(o,t):o-t;if(s===0)return a;s<=0?n=a+1:i=a-1}return-1}function uk(e,t,r,n,i,a){return typeof r=="function"?a(e,t,r,n===void 0?0:n|0,i===void 0?e.length-1:i|0):a(e,t,void 0,r===void 0?0:r|0,n===void 0?e.length-1:n|0)}YFe.exports={ge:function(e,t,r,n,i){return uk(e,t,r,n,i,WOt)},gt:function(e,t,r,n,i){return uk(e,t,r,n,i,jOt)},lt:function(e,t,r,n,i){return uk(e,t,r,n,i,XOt)},le:function(e,t,r,n,i){return uk(e,t,r,n,i,ZOt)},eq:function(e,t,r,n,i){return uk(e,t,r,n,i,YOt)}}});var Zy=Ae((v1r,$Fe)=>{"use strict";$Fe.exports=function(t,r,n){var i={},a,o;if(typeof r=="string"&&(r=JFe(r)),Array.isArray(r)){var s={};for(o=0;o{"use strict";var KOt=Zy();QFe.exports=JOt;function JOt(e){var t;return arguments.length>1&&(e=arguments),typeof e=="string"?e=e.split(/\s/).map(parseFloat):typeof e=="number"&&(e=[e]),e.length&&typeof e[0]=="number"?e.length===1?t={width:e[0],height:e[0],x:0,y:0}:e.length===2?t={width:e[0],height:e[1],x:0,y:0}:t={x:e[0],y:e[1],width:e[2]-e[0]||0,height:e[3]-e[1]||0}:e&&(e=KOt(e,{left:"x l left Left",top:"y t top Top",width:"w width W Width",height:"h height W Width",bottom:"b bottom Bottom",right:"r right Right"}),t={x:e.left||0,y:e.top||0},e.width==null?e.right?t.width=e.right-t.x:t.width=0:t.width=e.width,e.height==null?e.bottom?t.height=e.bottom-t.y:t.height=0:t.height=e.height),t}});var X2=Ae((y1r,e8e)=>{"use strict";e8e.exports=$Ot;function $Ot(e,t){if(!e||e.length==null)throw Error("Argument should be an array");t==null?t=1:t=Math.floor(t);for(var r=Array(t*2),n=0;ni&&(i=e[o]),e[o]{t8e.exports=function(){for(var e=0;e{var i8e=Y6();n8e.exports=QOt;function QOt(e,t,r){if(!e)throw new TypeError("must specify data as first parameter");if(r=+(r||0)|0,Array.isArray(e)&&e[0]&&typeof e[0][0]=="number"){var n=e[0].length,i=e.length*n,a,o,s,u;(!t||typeof t=="string")&&(t=new(i8e(t||"float32"))(i+r));var l=t.length-r;if(i!==l)throw new Error("source length "+i+" ("+n+"x"+e.length+") does not match destination length "+l);for(a=0,s=r;a{"use strict";a8e.exports=function(e){var t=typeof e;return e!==null&&(t==="object"||t==="function")}});var l8e=Ae((b1r,s8e)=>{"use strict";s8e.exports=Math.log2||function(e){return Math.log(e)*Math.LOG2E}});var v8e=Ae((w1r,p8e)=>{"use strict";var u8e=KFe(),f8e=Z4(),e9t=iS(),t9t=X2(),c8e=Zy(),oY=r8e(),r9t=Z2(),i9t=o8e(),n9t=Y6(),h8e=l8e(),a9t=1073741824;p8e.exports=function(t,r){r||(r={}),t=r9t(t,"float64"),r=c8e(r,{bounds:"range bounds dataBox databox",maxDepth:"depth maxDepth maxdepth level maxLevel maxlevel levels",dtype:"type dtype format out dst output destination"});let n=oY(r.maxDepth,255),i=oY(r.bounds,t9t(t,2));i[0]===i[2]&&i[2]++,i[1]===i[3]&&i[3]++;let a=d8e(t,i),o=t.length>>>1,s;r.dtype||(r.dtype="array"),typeof r.dtype=="string"?s=new(n9t(r.dtype))(o):r.dtype&&(s=r.dtype,Array.isArray(s)&&(s.length=o));for(let v=0;vn||x>a9t){for(let N=0;Nbe||m>ze||P=B||re===ae)return;let Ce=u[H];ae===void 0&&(ae=Ce.length);for(let qe=re;qe=A&&Je<=x&&nt>=L&&nt<=C&&F.push(ce)}let de=l[H],te=de[re*4+0],ke=de[re*4+1],Ee=de[re*4+2],Me=de[re*4+3],Ue=G(de,re+1),De=N*.5,ye=H+1;U(j,W,De,ye,te,ke||Ee||Me||Ue),U(j,W+De,De,ye,ke,Ee||Me||Ue),U(j+De,W,De,ye,Ee,Me||Ue),U(j+De,W+De,De,ye,Me,Ue)}function G(j,W){let N=null,H=0;for(;N===null;)if(N=j[W*4+H],H++,H>j.length)return null;return N}return F}function _(v,k,E,A,L){let x=[];for(let C=0;C{"use strict";m8e.exports=v8e()});var sY=Ae((A1r,y8e)=>{y8e.exports=o9t;function o9t(e){var t=0,r=0,n=0,i=0;return e.map(function(a){a=a.slice();var o=a[0],s=o.toUpperCase();if(o!=s)switch(a[0]=s,o){case"a":a[6]+=n,a[7]+=i;break;case"v":a[1]+=i;break;case"h":a[1]+=n;break;default:for(var u=1;u{"use strict";Object.defineProperty(WF,"__esModule",{value:!0});var s9t=function(){function e(t,r){var n=[],i=!0,a=!1,o=void 0;try{for(var s=t[Symbol.iterator](),u;!(i=(u=s.next()).done)&&(n.push(u.value),!(r&&n.length===r));i=!0);}catch(l){a=!0,o=l}finally{try{!i&&s.return&&s.return()}finally{if(a)throw o}}return n}return function(t,r){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),fk=Math.PI*2,lY=function(t,r,n,i,a,o,s){var u=t.x,l=t.y;u*=r,l*=n;var f=i*u-a*l,c=a*u+i*l;return{x:f+o,y:c+s}},l9t=function(t,r){var n=r===1.5707963267948966?.551915024494:r===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(r/4),i=Math.cos(t),a=Math.sin(t),o=Math.cos(t+r),s=Math.sin(t+r);return[{x:i-a*n,y:a+i*n},{x:o+s*n,y:s-o*n},{x:o,y:s}]},g8e=function(t,r,n,i){var a=t*i-r*n<0?-1:1,o=t*n+r*i;return o>1&&(o=1),o<-1&&(o=-1),a*Math.acos(o)},u9t=function(t,r,n,i,a,o,s,u,l,f,c,h){var d=Math.pow(a,2),p=Math.pow(o,2),_=Math.pow(c,2),b=Math.pow(h,2),v=d*p-d*b-p*_;v<0&&(v=0),v/=d*b+p*_,v=Math.sqrt(v)*(s===u?-1:1);var k=v*a/o*h,E=v*-o/a*c,A=f*k-l*E+(t+n)/2,L=l*k+f*E+(r+i)/2,x=(c-k)/a,C=(h-E)/o,M=(-c-k)/a,m=(-h-E)/o,P=g8e(1,0,x,C),T=g8e(x,C,M,m);return u===0&&T>0&&(T-=fk),u===1&&T<0&&(T+=fk),[A,L,P,T]},f9t=function(t){var r=t.px,n=t.py,i=t.cx,a=t.cy,o=t.rx,s=t.ry,u=t.xAxisRotation,l=u===void 0?0:u,f=t.largeArcFlag,c=f===void 0?0:f,h=t.sweepFlag,d=h===void 0?0:h,p=[];if(o===0||s===0)return[];var _=Math.sin(l*fk/360),b=Math.cos(l*fk/360),v=b*(r-i)/2+_*(n-a)/2,k=-_*(r-i)/2+b*(n-a)/2;if(v===0&&k===0)return[];o=Math.abs(o),s=Math.abs(s);var E=Math.pow(v,2)/Math.pow(o,2)+Math.pow(k,2)/Math.pow(s,2);E>1&&(o*=Math.sqrt(E),s*=Math.sqrt(E));var A=u9t(r,n,i,a,o,s,c,d,_,b,v,k),L=s9t(A,4),x=L[0],C=L[1],M=L[2],m=L[3],P=Math.abs(m)/(fk/4);Math.abs(1-P)<1e-7&&(P=1);var T=Math.max(Math.ceil(P),1);m/=T;for(var B=0;B{"use strict";w8e.exports=h9t;var c9t=x8e();function h9t(e){for(var t,r=[],n=0,i=0,a=0,o=0,s=null,u=null,l=0,f=0,c=0,h=e.length;c4?(n=d[d.length-4],i=d[d.length-3]):(n=l,i=f),r.push(d)}return r}function jF(e,t,r,n){return["C",e,t,r,n,r,n]}function b8e(e,t,r,n,i,a){return["C",e/3+2/3*r,t/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}});var uY=Ae((M1r,A8e)=>{"use strict";A8e.exports=function(t){return typeof t!="string"?!1:(t=t.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(t)&&/[\dz]$/i.test(t)&&t.length>4))}});var E8e=Ae((E1r,M8e)=>{"use strict";var d9t=e5(),p9t=sY(),v9t=T8e(),m9t=uY(),S8e=l4();M8e.exports=y9t;function y9t(e){if(Array.isArray(e)&&e.length===1&&typeof e[0]=="string"&&(e=e[0]),typeof e=="string"&&(S8e(m9t(e),"String is not an SVG path."),e=d9t(e)),S8e(Array.isArray(e),"Argument should be a string or an array of path segments."),e=p9t(e),e=v9t(e),!e.length)return[0,0,0,0];for(var t=[1/0,1/0,-1/0,-1/0],r=0,n=e.length;rt[2]&&(t[2]=i[a+0]),i[a+1]>t[3]&&(t[3]=i[a+1]);return t}});var I8e=Ae((k1r,z8e)=>{var Y2=Math.PI,k8e=P8e(120);z8e.exports=g9t;function g9t(e){for(var t,r=[],n=0,i=0,a=0,o=0,s=null,u=null,l=0,f=0,c=0,h=e.length;c7&&(r.push(d.splice(0,7)),d.unshift("C"));break;case"S":var _=l,b=f;(t=="C"||t=="S")&&(_+=_-n,b+=b-i),d=["C",_,b,d[1],d[2],d[3],d[4]];break;case"T":t=="Q"||t=="T"?(s=l*2-s,u=f*2-u):(s=l,u=f),d=C8e(l,f,s,u,d[1],d[2]);break;case"Q":s=d[1],u=d[2],d=C8e(l,f,d[1],d[2],d[3],d[4]);break;case"L":d=XF(l,f,d[1],d[2]);break;case"H":d=XF(l,f,d[1],f);break;case"V":d=XF(l,f,l,d[1]);break;case"Z":d=XF(l,f,a,o);break}t=p,l=d[d.length-2],f=d[d.length-1],d.length>4?(n=d[d.length-4],i=d[d.length-3]):(n=l,i=f),r.push(d)}return r}function XF(e,t,r,n){return["C",e,t,r,n,r,n]}function C8e(e,t,r,n,i,a){return["C",e/3+2/3*r,t/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}function L8e(e,t,r,n,i,a,o,s,u,l){if(l)E=l[0],A=l[1],v=l[2],k=l[3];else{var f=fY(e,t,-i);e=f.x,t=f.y,f=fY(s,u,-i),s=f.x,u=f.y;var c=(e-s)/2,h=(t-u)/2,d=c*c/(r*r)+h*h/(n*n);d>1&&(d=Math.sqrt(d),r=d*r,n=d*n);var p=r*r,_=n*n,b=(a==o?-1:1)*Math.sqrt(Math.abs((p*_-p*h*h-_*c*c)/(p*h*h+_*c*c)));b==1/0&&(b=1);var v=b*r*h/n+(e+s)/2,k=b*-n*c/r+(t+u)/2,E=Math.asin(((t-k)/n).toFixed(9)),A=Math.asin(((u-k)/n).toFixed(9));E=eA&&(E=E-Y2*2),!o&&A>E&&(A=A-Y2*2)}if(Math.abs(A-E)>k8e){var L=A,x=s,C=u;A=E+k8e*(o&&A>E?1:-1),s=v+r*Math.cos(A),u=k+n*Math.sin(A);var M=L8e(s,u,r,n,i,0,o,x,C,[A,L,v,k])}var m=Math.tan((A-E)/4),P=4/3*r*m,T=4/3*n*m,B=[2*e-(e+P*Math.sin(E)),2*t-(t-T*Math.cos(E)),s+P*Math.sin(A),u-T*Math.cos(A),s,u];if(l)return B;M&&(B=B.concat(M));for(var F=0;F{var _9t=sY(),x9t=I8e(),b9t={M:"moveTo",C:"bezierCurveTo"};R8e.exports=function(e,t){e.beginPath(),x9t(_9t(t)).forEach(function(r){var n=r[0],i=r.slice(1);e[b9t[n]].apply(e,i)}),e.closePath()}});var q8e=Ae((L1r,O8e)=>{"use strict";var w9t=Z4();O8e.exports=T9t;var ck=1e20;function T9t(e,t){t||(t={});var r=t.cutoff==null?.25:t.cutoff,n=t.radius==null?8:t.radius,i=t.channel||0,a,o,s,u,l,f,c,h,d,p,_;if(ArrayBuffer.isView(e)||Array.isArray(e)){if(!t.width||!t.height)throw Error("For raw data width and height should be provided by options");a=t.width,o=t.height,u=e,t.stride?f=t.stride:f=Math.floor(e.length/a/o)}else window.HTMLCanvasElement&&e instanceof window.HTMLCanvasElement?(h=e,c=h.getContext("2d"),a=h.width,o=h.height,d=c.getImageData(0,0,a,o),u=d.data,f=4):window.CanvasRenderingContext2D&&e instanceof window.CanvasRenderingContext2D?(h=e.canvas,c=e,a=h.width,o=h.height,d=c.getImageData(0,0,a,o),u=d.data,f=4):window.ImageData&&e instanceof window.ImageData&&(d=e,a=e.width,o=e.height,u=d.data,f=4);if(s=Math.max(a,o),window.Uint8ClampedArray&&u instanceof window.Uint8ClampedArray||window.Uint8Array&&u instanceof window.Uint8Array)for(l=u,u=Array(a*o),p=0,_=l.length;p<_;p++)u[p]=l[p*f+i]/255;else if(f!==1)throw Error("Raw data can have only 1 value per pixel");var b=Array(a*o),v=Array(a*o),k=Array(s),E=Array(s),A=Array(s+1),L=Array(s);for(p=0,_=a*o;p<_;p++){var x=u[p];b[p]=x===1?0:x===0?ck:Math.pow(Math.max(0,.5-x),2),v[p]=x===1?ck:x===0?0:Math.pow(Math.max(0,x-.5),2)}F8e(b,a,o,k,E,L,A),F8e(v,a,o,k,E,L,A);var C=window.Float32Array?new Float32Array(a*o):new Array(a*o);for(p=0,_=a*o;p<_;p++)C[p]=w9t(1-((b[p]-v[p])/n+r),0,1);return C}function F8e(e,t,r,n,i,a,o){for(var s=0;s{"use strict";var A9t=E8e(),S9t=e5(),M9t=D8e(),E9t=uY(),k9t=q8e(),cY=document.createElement("canvas"),hv=cY.getContext("2d");N8e.exports=C9t;function C9t(e,t){if(!E9t(e))throw Error("Argument should be valid svg path string");t||(t={});var r,n;t.shape?(r=t.shape[0],n=t.shape[1]):(r=cY.width=t.w||t.width||200,n=cY.height=t.h||t.height||200);var i=Math.min(r,n),a=t.stroke||0,o=t.viewbox||t.viewBox||A9t(e),s=[r/(o[2]-o[0]),n/(o[3]-o[1])],u=Math.min(s[0]||0,s[1]||0)/2;if(hv.fillStyle="black",hv.fillRect(0,0,r,n),hv.fillStyle="white",a&&(typeof a!="number"&&(a=1),a>0?hv.strokeStyle="white":hv.strokeStyle="black",hv.lineWidth=Math.abs(a)),hv.translate(r*.5,n*.5),hv.scale(u,u),L9t()){var l=new Path2D(e);hv.fill(l),a&&hv.stroke(l)}else{var f=S9t(e);M9t(hv,f),hv.fill(),a&&hv.stroke()}hv.setTransform(1,0,0,1,0,0);var c=k9t(hv,{cutoff:t.cutoff!=null?t.cutoff:.5,radius:t.radius!=null?t.radius:i*.5});return c}var ZF;function L9t(){if(ZF!=null)return ZF;var e=document.createElement("canvas").getContext("2d");if(e.canvas.width=e.canvas.height=1,!window.Path2D)return ZF=!1;var t=new Path2D("M0,0h1v1h-1v-1Z");e.fillStyle="black",e.fill(t);var r=e.getImageData(0,0,1,1);return ZF=r&&r.data&&r.data[3]===255}});var J2=Ae((z1r,$8e)=>{"use strict";var KF=ku(),P9t=U8e(),YF=J_(),z9t=$l(),oS=ei(),kh=oS.isArrayOrTypedArray,nS=Mu(),V8e=Wc(),G8e=$g().formatColor,aS=lc(),I9t=k3(),dY=VF(),hk=ox(),R9t=N1().DESELECTDIM,H8e={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},D9t=iv().appendArrayPointValue;function F9t(e,t){var r,n={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0},i=e._context.plotGlPixelRatio;if(t.visible!==!0)return n;if(aS.hasText(t)&&(n.text=J8e(e,t),n.textSel=j8e(e,t,t.selected),n.textUnsel=j8e(e,t,t.unselected)),aS.hasMarkers(t)&&(n.marker=vY(e,t),n.markerSel=pY(e,t,t.selected),n.markerUnsel=pY(e,t,t.unselected),!t.unselected&&kh(t.marker.opacity))){var a=t.marker.opacity;for(n.markerUnsel.opacity=new Array(a.length),r=0;r500?"bold":"normal":e}function vY(e,t){var r=t._length,n=t.marker,i={},a,o=kh(n.symbol),s=kh(n.angle),u=kh(n.color),l=kh(n.line.color),f=kh(n.opacity),c=kh(n.size),h=kh(n.line.width),d;if(o||(d=dY.isOpenSymbol(n.symbol)),o||u||l||f||s){i.symbols=new Array(r),i.angles=new Array(r),i.colors=new Array(r),i.borderColors=new Array(r);var p=n.symbol,_=n.angle,b=G8e(n,n.opacity,r),v=G8e(n.line,n.opacity,r);if(!kh(v[0])){var k=v;for(v=Array(r),a=0;ahk.TOO_MANY_POINTS||aS.hasMarkers(t)?"rect":"round";if(l&&t.connectgaps){var c=a[0],h=a[1];for(o=0;o1?u[o]:u[0]:u,d=kh(l)?l.length>1?l[o]:l[0]:l,p=H8e[h],_=H8e[d],b=f?f/.8+1:0,v=-_*b-_*.5;a.offset[o]=[p*b/c,v/c]}}return a}$8e.exports={style:F9t,markerStyle:vY,markerSelection:pY,linePositions:O9t,errorBarPositions:q9t,textPosition:N9t}});var mY=Ae((I1r,Q8e)=>{"use strict";var JF=ei();Q8e.exports=function(t,r){var n=r._scene,i={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},a={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return r._scene||(n=r._scene={},n.init=function(){JF.extendFlat(n,a,i)},n.init(),n.update=function(s){var u=JF.repeat(s,n.count);if(n.fill2d&&n.fill2d.update(u),n.scatter2d&&n.scatter2d.update(u),n.line2d&&n.line2d.update(u),n.error2d&&n.error2d.update(u.concat(u)),n.select2d&&n.select2d.update(u),n.glText)for(var l=0;l{"use strict";var U9t=HF(),sS=ei(),eBe=Wc(),V9t=Am().findExtremes,tBe=Rm(),yY=B0(),G9t=yY.calcMarkerSize,H9t=yY.calcAxisExpansion,W9t=yY.setFirstScatter,j9t=D0(),lS=J2(),X9t=mY(),rBe=rf().BADNUM,Z9t=ox().TOO_MANY_POINTS;nBe.exports=function(t,r){var n=t._fullLayout,i=r._xA=eBe.getFromId(t,r.xaxis,"x"),a=r._yA=eBe.getFromId(t,r.yaxis,"y"),o=n._plots[r.xaxis+r.yaxis],s=r._length,u=s>=Z9t,l=s*2,f={},c,h=i.makeCalcdata(r,"x"),d=a.makeCalcdata(r,"y"),p=tBe(r,i,"x",h),_=tBe(r,a,"y",d),b=p.vals,v=_.vals;r._x=b,r._y=v,r.xperiodalignment&&(r._origX=h,r._xStarts=p.starts,r._xEnds=p.ends),r.yperiodalignment&&(r._origY=d,r._yStarts=_.starts,r._yEnds=_.ends);var k=new Array(l),E=new Array(s);for(c=0;c1&&sS.extendFlat(o.line,lS.linePositions(e,r,n)),o.errorX||o.errorY){var s=lS.errorBarPositions(e,r,n,i,a);o.errorX&&sS.extendFlat(o.errorX,s.x),o.errorY&&sS.extendFlat(o.errorY,s.y)}return o.text&&(sS.extendFlat(o.text,{positions:n},lS.textPosition(e,r,o.text,o.marker)),sS.extendFlat(o.textSel,{positions:n},lS.textPosition(e,r,o.text,o.markerSel)),sS.extendFlat(o.textUnsel,{positions:n},lS.textPosition(e,r,o.text,o.markerUnsel))),o}});var gY=Ae((D1r,sBe)=>{"use strict";var oBe=ei(),K9t=jl(),J9t=N1().DESELECTDIM;function $9t(e){var t=e[0],r=t.trace,n=t.t,i=n._scene,a=n.index,o=i.selectBatch[a],s=i.unselectBatch[a],u=i.textOptions[a],l=i.textSelectedOptions[a]||{},f=i.textUnselectedOptions[a]||{},c=oBe.extendFlat({},u),h,d;if(o.length||s.length){var p=l.color,_=f.color,b=u.color,v=oBe.isArrayOrTypedArray(b);for(c.color=new Array(r._length),h=0;h{"use strict";var lBe=lc(),Q9t=gY().styleTextSelection;uBe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,u=n[0].t,l=s._length,f=u.x,c=u.y,h=u._scene,d=u.index;if(!h)return o;var p=lBe.hasText(s),_=lBe.hasMarkers(s),b=!_&&!p;if(s.visible!==!0||b)return o;var v=[],k=[];if(r!==!1&&!r.degenerate)for(var E=0;E{"use strict";var eqt=UF();fBe.exports={moduleType:"trace",name:"scattergl",basePlotModule:Ah(),categories:["gl","regl","cartesian","symbols","errorBarsOK","showLegend","scatter-like"],attributes:lk(),supplyDefaults:jFe(),crossTraceDefaults:vU(),colorbar:ep(),formatLabels:ZFe(),calc:aBe(),hoverPoints:eqt.hoverPoints,selectPoints:_Y(),meta:{}}});var dBe=Ae((O1r,QF)=>{"use strict";var $F=Z4();QF.exports=hBe;QF.exports.to=hBe;QF.exports.from=tqt;function hBe(e,t){t==null&&(t=!0);var r=e[0],n=e[1],i=e[2],a=e[3];a==null&&(a=t?1:255),t&&(r*=255,n*=255,i*=255,a*=255),r=$F(r,0,255)&255,n=$F(n,0,255)&255,i=$F(i,0,255)&255,a=$F(a,0,255)&255;var o=r*16777216+(n<<16)+(i<<8)+a;return o}function tqt(e,t){e=+e;var r=e>>>24,n=(e&16711680)>>>16,i=(e&65280)>>>8,a=e&255;return t===!1?[r,n,i,a]:[r/255,n/255,i/255,a/255]}});var Gh=Ae((q1r,vBe)=>{"use strict";var pBe=Object.getOwnPropertySymbols,rqt=Object.prototype.hasOwnProperty,iqt=Object.prototype.propertyIsEnumerable;function nqt(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function aqt(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(t).map(function(a){return t[a]});if(n.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(a){i[a]=a}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch(a){return!1}}vBe.exports=aqt()?Object.assign:function(e,t){for(var r,n=nqt(e),i,a=1;a{mBe.exports=function(e){typeof e=="string"&&(e=[e]);for(var t=[].slice.call(arguments,1),r=[],n=0;n{"use strict";gBe.exports=function(t,r,n){Array.isArray(n)||(n=[].slice.call(arguments,2));for(var i=0,a=n.length;i{"use strict";_Be.exports=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))});var e8=Ae((G1r,uS)=>{"use strict";uS.exports=dk;uS.exports.float32=uS.exports.float=dk;uS.exports.fract32=uS.exports.fract=oqt;var bBe=new Float32Array(1);function oqt(e,t){if(e.length){if(e instanceof Float32Array)return new Float32Array(e.length);t instanceof Float32Array||(t=dk(e));for(var r=0,n=t.length;r{"use strict";function sqt(e,t){var r=e==null?null:typeof Symbol!="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var n,i,a,o,s=[],u=!0,l=!1;try{if(a=(r=r.call(e)).next,t===0){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=a.call(r)).done)&&(s.push(n.value),s.length!==t);u=!0);}catch(f){l=!0,i=f}finally{try{if(!u&&r.return!=null&&(o=r.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function lqt(e,t){return cqt(e)||sqt(e,t)||TBe(e,t)||pqt()}function uqt(e){return fqt(e)||hqt(e)||TBe(e)||dqt()}function fqt(e){if(Array.isArray(e))return bY(e)}function cqt(e){if(Array.isArray(e))return e}function hqt(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function TBe(e,t){if(e){if(typeof e=="string")return bY(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return bY(e,t)}}function bY(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);rre)?N.tree=gqt(H,{bounds:de}):re&&re.length&&(N.tree=re),N.tree){var te={primitive:"points",usage:"static",data:N.tree,type:"uint32"};N.elements?N.elements(te):N.elements=o.elements(te)}var ke=t8.float32(H);ae({data:ke,usage:"dynamic"});var Ee=t8.fract32(H,ke);return be({data:Ee,usage:"dynamic"}),ze({data:new Uint8Array(Ce),type:"uint8",usage:"stream"}),H}},{marker:function(H,N,W){var re=N.activation;if(re.forEach(function(Ee){return Ee&&Ee.destroy&&Ee.destroy()}),re.length=0,!H||typeof H[0]=="number"){var ae=e.addMarker(H);re[ae]=!0}else{for(var be=[],ze=0,Ce=Math.min(H.length,N.count);ze=0)return i;var a;if(e instanceof Uint8Array||e instanceof Uint8ClampedArray)a=e;else{a=new Uint8Array(e.length);for(var o=0,s=e.length;on*4&&(this.tooManyColors=!0),this.updatePalette(r),i.length===1?i[0]:i};op.prototype.updatePalette=function(e){if(!this.tooManyColors){var t=this.maxColors,r=this.paletteTexture,n=Math.ceil(e.length*.25/t);if(n>1){e=e.slice();for(var i=e.length*.25%t;i{"use strict";SY.exports=n8;SY.exports.default=n8;function n8(e,t,r){r=r||2;var n=t&&t.length,i=n?t[0]*r:e.length,a=SBe(e,0,i,r,!0),o=[];if(!a||a.next===a.prev)return o;var s,u,l,f,c,h,d;if(n&&(a=Lqt(e,t,a,r)),e.length>80*r){s=l=e[0],u=f=e[1];for(var p=r;pl&&(l=c),h>f&&(f=h);d=Math.max(l-s,f-u),d=d!==0?32767/d:0}return pk(a,o,r,s,u,d,0),o}function SBe(e,t,r,n,i){var a,o;if(i===AY(e,t,r,n)>0)for(a=t;a=t;a-=n)o=ABe(a,e[a],e[a+1],o);return o&&a8(o,o.next)&&(mk(o),o=o.next),o}function $2(e,t){if(!e)return e;t||(t=e);var r=e,n;do if(n=!1,!r.steiner&&(a8(r,r.next)||Ch(r.prev,r,r.next)===0)){if(mk(r),r=t=r.prev,r===r.next)break;n=!0}else r=r.next;while(n||r!==t);return t}function pk(e,t,r,n,i,a,o){if(e){!o&&a&&Dqt(e,n,i,a);for(var s=e,u,l;e.prev!==e.next;){if(u=e.prev,l=e.next,a?Eqt(e,n,i,a):Mqt(e)){t.push(u.i/r|0),t.push(e.i/r|0),t.push(l.i/r|0),mk(e),e=l.next,s=l.next;continue}if(e=l,e===s){o?o===1?(e=kqt($2(e),t,r),pk(e,t,r,n,i,a,2)):o===2&&Cqt(e,t,r,n,i,a):pk($2(e),t,r,n,i,a,1);break}}}}function Mqt(e){var t=e.prev,r=e,n=e.next;if(Ch(t,r,n)>=0)return!1;for(var i=t.x,a=r.x,o=n.x,s=t.y,u=r.y,l=n.y,f=ia?i>o?i:o:a>o?a:o,d=s>u?s>l?s:l:u>l?u:l,p=n.next;p!==t;){if(p.x>=f&&p.x<=h&&p.y>=c&&p.y<=d&&uS(i,s,a,u,o,l,p.x,p.y)&&Ch(p.prev,p,p.next)>=0)return!1;p=p.next}return!0}function Eqt(e,t,r,n){var i=e.prev,a=e,o=e.next;if(Ch(i,a,o)>=0)return!1;for(var s=i.x,u=a.x,l=o.x,f=i.y,c=a.y,h=o.y,d=su?s>l?s:l:u>l?u:l,b=f>c?f>h?f:h:c>h?c:h,v=wY(d,p,t,r,n),k=wY(_,b,t,r,n),E=e.prevZ,A=e.nextZ;E&&E.z>=v&&A&&A.z<=k;){if(E.x>=d&&E.x<=_&&E.y>=p&&E.y<=b&&E!==i&&E!==o&&uS(s,f,u,c,l,h,E.x,E.y)&&Ch(E.prev,E,E.next)>=0||(E=E.prevZ,A.x>=d&&A.x<=_&&A.y>=p&&A.y<=b&&A!==i&&A!==o&&uS(s,f,u,c,l,h,A.x,A.y)&&Ch(A.prev,A,A.next)>=0))return!1;A=A.nextZ}for(;E&&E.z>=v;){if(E.x>=d&&E.x<=_&&E.y>=p&&E.y<=b&&E!==i&&E!==o&&uS(s,f,u,c,l,h,E.x,E.y)&&Ch(E.prev,E,E.next)>=0)return!1;E=E.prevZ}for(;A&&A.z<=k;){if(A.x>=d&&A.x<=_&&A.y>=p&&A.y<=b&&A!==i&&A!==o&&uS(s,f,u,c,l,h,A.x,A.y)&&Ch(A.prev,A,A.next)>=0)return!1;A=A.nextZ}return!0}function kqt(e,t,r){var n=e;do{var i=n.prev,a=n.next.next;!a8(i,a)&&MBe(i,n,n.next,a)&&vk(i,a)&&vk(a,i)&&(t.push(i.i/r|0),t.push(n.i/r|0),t.push(a.i/r|0),mk(n),mk(n.next),n=e=a),n=n.next}while(n!==e);return $2(n)}function Cqt(e,t,r,n,i,a){var o=e;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&Oqt(o,s)){var u=EBe(o,s);o=$2(o,o.next),u=$2(u,u.next),pk(o,t,r,n,i,a,0),pk(u,t,r,n,i,a,0);return}s=s.next}o=o.next}while(o!==e)}function Lqt(e,t,r,n){var i=[],a,o,s,u,l;for(a=0,o=t.length;a=r.next.y&&r.next.y!==r.y){var s=r.x+(i-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(s<=n&&s>a&&(a=s,o=r.x=r.x&&r.x>=l&&n!==r.x&&uS(io.x||r.x===o.x&&Rqt(o,r)))&&(o=r,c=h)),r=r.next;while(r!==u);return o}function Rqt(e,t){return Ch(e.prev,e,t.prev)<0&&Ch(t.next,e,e.next)<0}function Dqt(e,t,r,n){var i=e;do i.z===0&&(i.z=wY(i.x,i.y,t,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,Fqt(i)}function Fqt(e){var t,r,n,i,a,o,s,u,l=1;do{for(r=e,e=null,a=null,o=0;r;){for(o++,n=r,s=0,t=0;t0||u>0&&n;)s!==0&&(u===0||!n||r.z<=n.z)?(i=r,r=r.nextZ,s--):(i=n,n=n.nextZ,u--),a?a.nextZ=i:e=i,i.prevZ=a,a=i;r=n}a.nextZ=null,l*=2}while(o>1);return e}function wY(e,t,r,n,i){return e=(e-r)*i|0,t=(t-n)*i|0,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1}function Bqt(e){var t=e,r=e;do(t.x=(e-o)*(a-s)&&(e-o)*(n-s)>=(r-o)*(t-s)&&(r-o)*(a-s)>=(i-o)*(n-s)}function Oqt(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!qqt(e,t)&&(vk(e,t)&&vk(t,e)&&Nqt(e,t)&&(Ch(e.prev,e,t.prev)||Ch(e,t.prev,t))||a8(e,t)&&Ch(e.prev,e,e.next)>0&&Ch(t.prev,t,t.next)>0)}function Ch(e,t,r){return(t.y-e.y)*(r.x-t.x)-(t.x-e.x)*(r.y-t.y)}function a8(e,t){return e.x===t.x&&e.y===t.y}function MBe(e,t,r,n){var i=i8(Ch(e,t,r)),a=i8(Ch(e,t,n)),o=i8(Ch(r,n,e)),s=i8(Ch(r,n,t));return!!(i!==a&&o!==s||i===0&&r8(e,r,t)||a===0&&r8(e,n,t)||o===0&&r8(r,e,n)||s===0&&r8(r,t,n))}function r8(e,t,r){return t.x<=Math.max(e.x,r.x)&&t.x>=Math.min(e.x,r.x)&&t.y<=Math.max(e.y,r.y)&&t.y>=Math.min(e.y,r.y)}function i8(e){return e>0?1:e<0?-1:0}function qqt(e,t){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==t.i&&r.next.i!==t.i&&MBe(r,r.next,e,t))return!0;r=r.next}while(r!==e);return!1}function vk(e,t){return Ch(e.prev,e,e.next)<0?Ch(e,t,e.next)>=0&&Ch(e,e.prev,t)>=0:Ch(e,t,e.prev)<0||Ch(e,e.next,t)<0}function Nqt(e,t){var r=e,n=!1,i=(e.x+t.x)/2,a=(e.y+t.y)/2;do r.y>a!=r.next.y>a&&r.next.y!==r.y&&i<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next;while(r!==e);return n}function EBe(e,t){var r=new TY(e.i,e.x,e.y),n=new TY(t.i,t.x,t.y),i=e.next,a=t.prev;return e.next=t,t.prev=e,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function ABe(e,t,r,n){var i=new TY(e,t,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function mk(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function TY(e,t,r){this.i=e,this.x=t,this.y=r,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}n8.deviation=function(e,t,r,n){var i=t&&t.length,a=i?t[0]*r:e.length,o=Math.abs(AY(e,0,a,r));if(i)for(var s=0,u=t.length;s0&&(n+=e[i-1].length,r.holes.push(n))}return r}});var LBe=Ae((j1r,CBe)=>{"use strict";var Uqt=j2();CBe.exports=Vqt;function Vqt(e,t,r){if(!e||e.length==null)throw Error("Argument should be an array");t==null&&(t=1),r==null&&(r=Uqt(e,t));for(var n=0;n{"use strict";PBe.exports=function(){var e,t;if(typeof WeakMap!="function")return!1;try{e=new WeakMap([[t={},"one"],[{},"two"],[{},"three"]])}catch(r){return!1}return!(String(e)!=="[object WeakMap]"||typeof e.set!="function"||e.set({},1)!==e||typeof e.delete!="function"||typeof e.has!="function"||e.get(t)!=="one")}});var RBe=Ae((Z1r,IBe)=>{"use strict";IBe.exports=function(){}});var lx=Ae((Y1r,DBe)=>{"use strict";var Gqt=RBe()();DBe.exports=function(e){return e!==Gqt&&e!==null}});var MY=Ae((K1r,BBe)=>{"use strict";var Hqt=Object.create,Wqt=Object.getPrototypeOf,FBe={};BBe.exports=function(){var e=Object.setPrototypeOf,t=arguments[0]||Hqt;return typeof e!="function"?!1:Wqt(e(t(null),FBe))===FBe}});var EY=Ae((J1r,OBe)=>{"use strict";var jqt=lx(),Xqt={function:!0,object:!0};OBe.exports=function(e){return jqt(e)&&Xqt[typeof e]||!1}});var i1=Ae(($1r,qBe)=>{"use strict";var Zqt=lx();qBe.exports=function(e){if(!Zqt(e))throw new TypeError("Cannot use null or undefined");return e}});var UBe=Ae((Q1r,NBe)=>{"use strict";var kY=Object.create,o8;MY()()||(o8=CY());NBe.exports=function(){var e,t,r;return!o8||o8.level!==1?kY:(e={},t={},r={configurable:!1,enumerable:!1,writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(n){if(n==="__proto__"){t[n]={configurable:!0,enumerable:!1,writable:!0,value:void 0};return}t[n]=r}),Object.defineProperties(e,t),Object.defineProperty(o8,"nullPolyfill",{configurable:!1,enumerable:!1,writable:!1,value:e}),function(n,i){return kY(n===null?e:n,i)})}()});var CY=Ae((e_r,VBe)=>{"use strict";var Yqt=EY(),Kqt=i1(),Jqt=Object.prototype.isPrototypeOf,$qt=Object.defineProperty,Qqt={configurable:!0,enumerable:!1,writable:!0,value:void 0},s8;s8=function(e,t){if(Kqt(e),t===null||Yqt(t))return e;throw new TypeError("Prototype must be null or an object")};VBe.exports=function(e){var t,r;return e?(e.level===2?e.set?(r=e.set,t=function(n,i){return r.call(s8(n,i),i),n}):t=function(n,i){return s8(n,i).__proto__=i,n}:t=function n(i,a){var o;return s8(i,a),o=Jqt.call(n.nullPolyfill,i),o&&delete n.nullPolyfill.__proto__,a===null&&(a=n.nullPolyfill),i.__proto__=a,o&&$qt(n.nullPolyfill,"__proto__",Qqt),i},Object.defineProperty(t,"level",{configurable:!1,enumerable:!1,writable:!1,value:e.level})):null}(function(){var e=Object.create(null),t={},r,n=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__");if(n){try{r=n.set,r.call(e,t)}catch(i){}if(Object.getPrototypeOf(e)===t)return{set:r,level:2}}return e.__proto__=t,Object.getPrototypeOf(e)===t?{level:2}:(e={},e.__proto__=t,Object.getPrototypeOf(e)===t?{level:1}:!1)}());UBe()});var l8=Ae((t_r,GBe)=>{"use strict";GBe.exports=MY()()?Object.setPrototypeOf:CY()});var WBe=Ae((r_r,HBe)=>{"use strict";var eNt=EY();HBe.exports=function(e){if(!eNt(e))throw new TypeError(e+" is not an Object");return e}});var XBe=Ae((i_r,jBe)=>{"use strict";var tNt=Object.create(null),rNt=Math.random;jBe.exports=function(){var e;do e=rNt().toString(36).slice(2);while(tNt[e]);return e}});var Q2=Ae((n_r,ZBe)=>{"use strict";var iNt=void 0;ZBe.exports=function(e){return e!==iNt&&e!==null}});var u8=Ae((a_r,YBe)=>{"use strict";var nNt=Q2(),aNt={object:!0,function:!0,undefined:!0};YBe.exports=function(e){return nNt(e)?hasOwnProperty.call(aNt,typeof e):!1}});var JBe=Ae((o_r,KBe)=>{"use strict";var oNt=u8();KBe.exports=function(e){if(!oNt(e))return!1;try{return e.constructor?e.constructor.prototype===e:!1}catch(t){return!1}}});var QBe=Ae((s_r,$Be)=>{"use strict";var sNt=JBe();$Be.exports=function(e){if(typeof e!="function"||!hasOwnProperty.call(e,"length"))return!1;try{if(typeof e.length!="number"||typeof e.call!="function"||typeof e.apply!="function")return!1}catch(t){return!1}return!sNt(e)}});var LY=Ae((l_r,eOe)=>{"use strict";var lNt=QBe(),uNt=/^\s*class[\s{/}]/,fNt=Function.prototype.toString;eOe.exports=function(e){return!(!lNt(e)||uNt.test(fNt.call(e)))}});var rOe=Ae((u_r,tOe)=>{"use strict";tOe.exports=function(){var e=Object.assign,t;return typeof e!="function"?!1:(t={foo:"raz"},e(t,{bar:"dwa"},{trzy:"trzy"}),t.foo+t.bar+t.trzy==="razdwatrzy")}});var nOe=Ae((f_r,iOe)=>{"use strict";iOe.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}});var oOe=Ae((c_r,aOe)=>{"use strict";var cNt=lx(),hNt=Object.keys;aOe.exports=function(e){return hNt(cNt(e)?Object(e):e)}});var lOe=Ae((h_r,sOe)=>{"use strict";sOe.exports=nOe()()?Object.keys:oOe()});var fOe=Ae((d_r,uOe)=>{"use strict";var dNt=lOe(),pNt=i1(),vNt=Math.max;uOe.exports=function(e,t){var r,n,i=vNt(arguments.length,2),a;for(e=Object(pNt(e)),a=function(o){try{e[o]=t[o]}catch(s){r||(r=s)}},n=1;n{"use strict";cOe.exports=rOe()()?Object.assign:fOe()});var PY=Ae((v_r,hOe)=>{"use strict";var mNt=lx(),yNt=Array.prototype.forEach,gNt=Object.create,_Nt=function(e,t){var r;for(r in e)t[r]=e[r]};hOe.exports=function(e){var t=gNt(null);return yNt.call(arguments,function(r){mNt(r)&&_Nt(Object(r),t)}),t}});var pOe=Ae((m_r,dOe)=>{"use strict";var zY="razdwatrzy";dOe.exports=function(){return typeof zY.contains!="function"?!1:zY.contains("dwa")===!0&&zY.contains("foo")===!1}});var mOe=Ae((y_r,vOe)=>{"use strict";var xNt=String.prototype.indexOf;vOe.exports=function(e){return xNt.call(this,e,arguments[1])>-1}});var IY=Ae((g_r,yOe)=>{"use strict";yOe.exports=pOe()()?String.prototype.contains:mOe()});var n1=Ae((__r,bOe)=>{"use strict";var c8=Q2(),gOe=LY(),_Oe=f8(),xOe=PY(),yk=IY(),bNt=bOe.exports=function(e,t){var r,n,i,a,o;return arguments.length<2||typeof e!="string"?(a=t,t=e,e=null):a=arguments[2],c8(e)?(r=yk.call(e,"c"),n=yk.call(e,"e"),i=yk.call(e,"w")):(r=i=!0,n=!1),o={value:t,configurable:r,enumerable:n,writable:i},a?_Oe(xOe(a),o):o};bNt.gs=function(e,t,r){var n,i,a,o;return typeof e!="string"?(a=r,r=t,t=e,e=null):a=arguments[3],c8(t)?gOe(t)?c8(r)?gOe(r)||(a=r,r=void 0):r=void 0:(a=t,t=r=void 0):t=void 0,c8(e)?(n=yk.call(e,"c"),i=yk.call(e,"e")):(n=!0,i=!1),o={get:t,set:r,configurable:n,enumerable:i},a?_Oe(xOe(a),o):o}});var gk=Ae((x_r,TOe)=>{"use strict";var wOe=Object.prototype.toString,wNt=wOe.call(function(){return arguments}());TOe.exports=function(e){return wOe.call(e)===wNt}});var _k=Ae((b_r,SOe)=>{"use strict";var AOe=Object.prototype.toString,TNt=AOe.call("");SOe.exports=function(e){return typeof e=="string"||e&&typeof e=="object"&&(e instanceof String||AOe.call(e)===TNt)||!1}});var EOe=Ae((w_r,MOe)=>{"use strict";MOe.exports=function(){return typeof globalThis!="object"||!globalThis?!1:globalThis.Array===Array}});var LOe=Ae((T_r,COe)=>{var kOe=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};COe.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch(e){return kOe()}try{return __global__||kOe()}finally{delete Object.prototype.__global__}}()});var xk=Ae((A_r,POe)=>{"use strict";POe.exports=EOe()()?globalThis:LOe()});var IOe=Ae((S_r,zOe)=>{"use strict";var ANt=xk(),RY={object:!0,symbol:!0};zOe.exports=function(){var e=ANt.Symbol,t;if(typeof e!="function")return!1;t=e("test symbol");try{String(t)}catch(r){return!1}return!(!RY[typeof e.iterator]||!RY[typeof e.toPrimitive]||!RY[typeof e.toStringTag])}});var DOe=Ae((M_r,ROe)=>{"use strict";ROe.exports=function(e){return e?typeof e=="symbol"?!0:!e.constructor||e.constructor.name!=="Symbol"?!1:e[e.constructor.toStringTag]==="Symbol":!1}});var DY=Ae((E_r,FOe)=>{"use strict";var SNt=DOe();FOe.exports=function(e){if(!SNt(e))throw new TypeError(e+" is not a symbol");return e}});var UOe=Ae((k_r,NOe)=>{"use strict";var BOe=n1(),MNt=Object.create,OOe=Object.defineProperty,ENt=Object.prototype,qOe=MNt(null);NOe.exports=function(e){for(var t=0,r,n;qOe[e+(t||"")];)++t;return e+=t||"",qOe[e]=!0,r="@@"+e,OOe(ENt,r,BOe.gs(null,function(i){n||(n=!0,OOe(this,r,BOe(i)),n=!1)})),r}});var GOe=Ae((C_r,VOe)=>{"use strict";var Qm=n1(),Hh=xk().Symbol;VOe.exports=function(e){return Object.defineProperties(e,{hasInstance:Qm("",Hh&&Hh.hasInstance||e("hasInstance")),isConcatSpreadable:Qm("",Hh&&Hh.isConcatSpreadable||e("isConcatSpreadable")),iterator:Qm("",Hh&&Hh.iterator||e("iterator")),match:Qm("",Hh&&Hh.match||e("match")),replace:Qm("",Hh&&Hh.replace||e("replace")),search:Qm("",Hh&&Hh.search||e("search")),species:Qm("",Hh&&Hh.species||e("species")),split:Qm("",Hh&&Hh.split||e("split")),toPrimitive:Qm("",Hh&&Hh.toPrimitive||e("toPrimitive")),toStringTag:Qm("",Hh&&Hh.toStringTag||e("toStringTag")),unscopables:Qm("",Hh&&Hh.unscopables||e("unscopables"))})}});var jOe=Ae((L_r,WOe)=>{"use strict";var HOe=n1(),kNt=DY(),bk=Object.create(null);WOe.exports=function(e){return Object.defineProperties(e,{for:HOe(function(t){return bk[t]?bk[t]:bk[t]=e(String(t))}),keyFor:HOe(function(t){var r;kNt(t);for(r in bk)if(bk[r]===t)return r})})}});var YOe=Ae((P_r,ZOe)=>{"use strict";var Yy=n1(),FY=DY(),h8=xk().Symbol,CNt=UOe(),LNt=GOe(),PNt=jOe(),zNt=Object.create,BY=Object.defineProperties,d8=Object.defineProperty,Xp,fS,XOe;if(typeof h8=="function")try{String(h8()),XOe=!0}catch(e){}else h8=null;fS=function(t){if(this instanceof fS)throw new TypeError("Symbol is not a constructor");return Xp(t)};ZOe.exports=Xp=function e(t){var r;if(this instanceof e)throw new TypeError("Symbol is not a constructor");return XOe?h8(t):(r=zNt(fS.prototype),t=t===void 0?"":String(t),BY(r,{__description__:Yy("",t),__name__:Yy("",CNt(t))}))};LNt(Xp);PNt(Xp);BY(fS.prototype,{constructor:Yy(Xp),toString:Yy("",function(){return this.__name__})});BY(Xp.prototype,{toString:Yy(function(){return"Symbol ("+FY(this).__description__+")"}),valueOf:Yy(function(){return FY(this)})});d8(Xp.prototype,Xp.toPrimitive,Yy("",function(){var e=FY(this);return typeof e=="symbol"?e:e.toString()}));d8(Xp.prototype,Xp.toStringTag,Yy("c","Symbol"));d8(fS.prototype,Xp.toStringTag,Yy("c",Xp.prototype[Xp.toStringTag]));d8(fS.prototype,Xp.toPrimitive,Yy("c",Xp.prototype[Xp.toPrimitive]))});var ux=Ae((z_r,KOe)=>{"use strict";KOe.exports=IOe()()?xk().Symbol:YOe()});var $Oe=Ae((I_r,JOe)=>{"use strict";var INt=i1();JOe.exports=function(){return INt(this).length=0,this}});var cS=Ae((R_r,QOe)=>{"use strict";QOe.exports=function(e){if(typeof e!="function")throw new TypeError(e+" is not a function");return e}});var t9e=Ae((D_r,e9e)=>{"use strict";var RNt=Q2(),DNt=u8(),FNt=Object.prototype.toString;e9e.exports=function(e){if(!RNt(e))return null;if(DNt(e)){var t=e.toString;if(typeof t!="function"||t===FNt)return null}try{return""+e}catch(r){return null}}});var i9e=Ae((F_r,r9e)=>{"use strict";r9e.exports=function(e){try{return e.toString()}catch(t){try{return String(e)}catch(r){return null}}}});var a9e=Ae((B_r,n9e)=>{"use strict";var BNt=i9e(),ONt=/[\n\r\u2028\u2029]/g;n9e.exports=function(e){var t=BNt(e);return t===null?"":(t.length>100&&(t=t.slice(0,99)+"\u2026"),t=t.replace(ONt,function(r){switch(r){case` -`:return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}}),t)}});var OY=Ae((O_r,l9e)=>{"use strict";var o9e=Q2(),qNt=u8(),NNt=t9e(),UNt=a9e(),s9e=function(e,t){return e.replace("%v",UNt(t))};l9e.exports=function(e,t,r){if(!qNt(r))throw new TypeError(s9e(t,e));if(!o9e(e)){if("default"in r)return r.default;if(r.isOptional)return null}var n=NNt(r.errorMessage);throw o9e(n)||(n=t),new TypeError(s9e(n,e))}});var f9e=Ae((q_r,u9e)=>{"use strict";var VNt=OY(),GNt=Q2();u9e.exports=function(e){return GNt(e)?e:VNt(e,"Cannot use %v",arguments[1])}});var h9e=Ae((N_r,c9e)=>{"use strict";var HNt=OY(),WNt=LY();c9e.exports=function(e){return WNt(e)?e:HNt(e,"%v is not a plain function",arguments[1])}});var p9e=Ae((U_r,d9e)=>{"use strict";d9e.exports=function(){var e=Array.from,t,r;return typeof e!="function"?!1:(t=["raz","dwa"],r=e(t),!!(r&&r!==t&&r[1]==="dwa"))}});var m9e=Ae((V_r,v9e)=>{"use strict";var jNt=Object.prototype.toString,XNt=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);v9e.exports=function(e){return typeof e=="function"&&XNt(jNt.call(e))}});var g9e=Ae((G_r,y9e)=>{"use strict";y9e.exports=function(){var e=Math.sign;return typeof e!="function"?!1:e(10)===1&&e(-20)===-1}});var x9e=Ae((H_r,_9e)=>{"use strict";_9e.exports=function(e){return e=Number(e),isNaN(e)||e===0?e:e>0?1:-1}});var w9e=Ae((W_r,b9e)=>{"use strict";b9e.exports=g9e()()?Math.sign:x9e()});var A9e=Ae((j_r,T9e)=>{"use strict";var ZNt=w9e(),YNt=Math.abs,KNt=Math.floor;T9e.exports=function(e){return isNaN(e)?0:(e=Number(e),e===0||!isFinite(e)?e:ZNt(e)*KNt(YNt(e)))}});var M9e=Ae((X_r,S9e)=>{"use strict";var JNt=A9e(),$Nt=Math.max;S9e.exports=function(e){return $Nt(0,JNt(e))}});var L9e=Ae((Z_r,C9e)=>{"use strict";var QNt=ux().iterator,e7t=gk(),t7t=m9e(),r7t=M9e(),E9e=cS(),i7t=i1(),n7t=lx(),a7t=_k(),k9e=Array.isArray,qY=Function.prototype.call,ew={configurable:!0,enumerable:!0,writable:!0,value:null},NY=Object.defineProperty;C9e.exports=function(e){var t=arguments[1],r=arguments[2],n,i,a,o,s,u,l,f,c,h;if(e=Object(i7t(e)),n7t(t)&&E9e(t),!this||this===Array||!t7t(this)){if(!t){if(e7t(e))return s=e.length,s!==1?Array.apply(null,e):(o=new Array(1),o[0]=e[0],o);if(k9e(e)){for(o=new Array(s=e.length),i=0;i=55296&&u<=56319&&(h+=e[++i])),h=t?qY.call(t,r,h,a):h,n?(ew.value=h,NY(o,a,ew)):o[a]=h,++a;s=a}}if(s===void 0)for(s=r7t(e.length),n&&(o=new n(s)),i=0;i{"use strict";P9e.exports=p9e()()?Array.from:L9e()});var R9e=Ae((K_r,I9e)=>{"use strict";var o7t=z9e(),s7t=f8(),l7t=i1();I9e.exports=function(e){var t=Object(l7t(e)),r=arguments[1],n=Object(arguments[2]);if(t!==e&&!r)return t;var i={};return r?o7t(r,function(a){(n.ensure||a in e)&&(i[a]=e[a])}):s7t(i,e),i}});var B9e=Ae((J_r,F9e)=>{"use strict";var u7t=cS(),f7t=i1(),c7t=Function.prototype.bind,D9e=Function.prototype.call,h7t=Object.keys,d7t=Object.prototype.propertyIsEnumerable;F9e.exports=function(e,t){return function(r,n){var i,a=arguments[2],o=arguments[3];return r=Object(f7t(r)),u7t(n),i=h7t(r),o&&i.sort(typeof o=="function"?c7t.call(o,r):void 0),typeof e!="function"&&(e=i[e]),D9e.call(e,i,function(s,u){return d7t.call(r,s)?D9e.call(n,a,r[s],s,r,u):t})}}});var q9e=Ae(($_r,O9e)=>{"use strict";O9e.exports=B9e()("forEach")});var U9e=Ae((Q_r,N9e)=>{"use strict";var p7t=cS(),v7t=q9e(),m7t=Function.prototype.call;N9e.exports=function(e,t){var r={},n=arguments[2];return p7t(t),v7t(e,function(i,a,o,s){r[a]=m7t.call(t,n,i,a,o,s)}),r}});var W9e=Ae((exr,H9e)=>{"use strict";var y7t=Q2(),g7t=f9e(),V9e=h9e(),_7t=R9e(),x7t=PY(),b7t=U9e(),w7t=Function.prototype.bind,T7t=Object.defineProperty,A7t=Object.prototype.hasOwnProperty,G9e;G9e=function(e,t,r){var n=g7t(t)&&V9e(t.value),i;return i=_7t(t),delete i.writable,delete i.value,i.get=function(){return!r.overwriteDefinition&&A7t.call(this,e)?n:(t.value=w7t.call(n,r.resolveContext?r.resolveContext(this):this),T7t(this,e,t),this[e])},i};H9e.exports=function(e){var t=x7t(arguments[1]);return y7t(t.resolveContext)&&V9e(t.resolveContext),b7t(e,function(r,n){return G9e(n,r,t)})}});var UY=Ae((txr,Y9e)=>{"use strict";var S7t=$Oe(),M7t=f8(),E7t=cS(),k7t=i1(),Ov=n1(),C7t=W9e(),j9e=ux(),X9e=Object.defineProperty,Z9e=Object.defineProperties,wk;Y9e.exports=wk=function(e,t){if(!(this instanceof wk))throw new TypeError("Constructor requires 'new'");Z9e(this,{__list__:Ov("w",k7t(e)),__context__:Ov("w",t),__nextIndex__:Ov("w",0)}),t&&(E7t(t.on),t.on("_add",this._onAdd),t.on("_delete",this._onDelete),t.on("_clear",this._onClear))};delete wk.prototype.constructor;Z9e(wk.prototype,M7t({_next:Ov(function(){var e;if(this.__list__){if(this.__redo__&&(e=this.__redo__.shift(),e!==void 0))return e;if(this.__nextIndex__=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__){X9e(this,"__redo__",Ov("c",[e]));return}this.__redo__.forEach(function(t,r){t>=e&&(this.__redo__[r]=++t)},this),this.__redo__.push(e)}}),_onDelete:Ov(function(e){var t;e>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(t=this.__redo__.indexOf(e),t!==-1&&this.__redo__.splice(t,1),this.__redo__.forEach(function(r,n){r>e&&(this.__redo__[n]=--r)},this)))}),_onClear:Ov(function(){this.__redo__&&S7t.call(this.__redo__),this.__nextIndex__=0})})));X9e(wk.prototype,j9e.iterator,Ov(function(){return this}))});var eqe=Ae((rxr,Q9e)=>{"use strict";var K9e=l8(),J9e=IY(),VY=n1(),L7t=ux(),GY=UY(),$9e=Object.defineProperty,hS;hS=Q9e.exports=function(e,t){if(!(this instanceof hS))throw new TypeError("Constructor requires 'new'");GY.call(this,e),t?J9e.call(t,"key+value")?t="key+value":J9e.call(t,"key")?t="key":t="value":t="value",$9e(this,"__kind__",VY("",t))};K9e&&K9e(hS,GY);delete hS.prototype.constructor;hS.prototype=Object.create(GY.prototype,{_resolve:VY(function(e){return this.__kind__==="value"?this.__list__[e]:this.__kind__==="key+value"?[e,this.__list__[e]]:e})});$9e(hS.prototype,L7t.toStringTag,VY("c","Array Iterator"))});var nqe=Ae((ixr,iqe)=>{"use strict";var tqe=l8(),p8=n1(),P7t=ux(),HY=UY(),rqe=Object.defineProperty,dS;dS=iqe.exports=function(e){if(!(this instanceof dS))throw new TypeError("Constructor requires 'new'");e=String(e),HY.call(this,e),rqe(this,"__length__",p8("",e.length))};tqe&&tqe(dS,HY);delete dS.prototype.constructor;dS.prototype=Object.create(HY.prototype,{_next:p8(function(){if(this.__list__){if(this.__nextIndex__=55296&&r<=56319?t+this.__list__[this.__nextIndex__++]:t)})});rqe(dS.prototype,P7t.toStringTag,p8("c","String Iterator"))});var oqe=Ae((nxr,aqe)=>{"use strict";var z7t=gk(),I7t=lx(),R7t=_k(),D7t=ux().iterator,F7t=Array.isArray;aqe.exports=function(e){return I7t(e)?F7t(e)||R7t(e)||z7t(e)?!0:typeof e[D7t]=="function":!1}});var lqe=Ae((axr,sqe)=>{"use strict";var B7t=oqe();sqe.exports=function(e){if(!B7t(e))throw new TypeError(e+" is not iterable");return e}});var WY=Ae((oxr,cqe)=>{"use strict";var O7t=gk(),q7t=_k(),uqe=eqe(),N7t=nqe(),U7t=lqe(),fqe=ux().iterator;cqe.exports=function(e){return typeof U7t(e)[fqe]=="function"?e[fqe]():O7t(e)?new uqe(e):q7t(e)?new N7t(e):new uqe(e)}});var dqe=Ae((sxr,hqe)=>{"use strict";var V7t=gk(),G7t=cS(),H7t=_k(),W7t=WY(),j7t=Array.isArray,jY=Function.prototype.call,X7t=Array.prototype.some;hqe.exports=function(e,t){var r,n=arguments[2],i,a,o,s,u,l,f;if(j7t(e)||V7t(e)?r="array":H7t(e)?r="string":e=W7t(e),G7t(t),a=function(){o=!0},r==="array"){X7t.call(e,function(c){return jY.call(t,n,c,a),o});return}if(r==="string"){for(u=e.length,s=0;s=55296&&f<=56319&&(l+=e[++s])),jY.call(t,n,l,a),!o);++s);return}for(i=e.next();!i.done;){if(jY.call(t,n,i.value,a),o)return;i=e.next()}}});var vqe=Ae((lxr,pqe)=>{"use strict";pqe.exports=function(){return typeof WeakMap!="function"?!1:Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"}()});var gqe=Ae((uxr,yqe)=>{"use strict";var Z7t=lx(),m8=l8(),v8=WBe(),Y7t=i1(),K7t=XBe(),a1=n1(),J7t=WY(),$7t=dqe(),Q7t=ux().toStringTag,mqe=vqe(),eUt=Array.isArray,ZY=Object.defineProperty,XY=Object.prototype.hasOwnProperty,tUt=Object.getPrototypeOf,fx;yqe.exports=fx=function(){var e=arguments[0],t;if(!(this instanceof fx))throw new TypeError("Constructor requires 'new'");return t=mqe&&m8&&WeakMap!==fx?m8(new WeakMap,tUt(this)):this,Z7t(e)&&(eUt(e)||(e=J7t(e))),ZY(t,"__weakMapData__",a1("c","$weakMap$"+K7t())),e&&$7t(e,function(r){Y7t(r),t.set(r[0],r[1])}),t};mqe&&(m8&&m8(fx,WeakMap),fx.prototype=Object.create(WeakMap.prototype,{constructor:a1(fx)}));Object.defineProperties(fx.prototype,{delete:a1(function(e){return XY.call(v8(e),this.__weakMapData__)?(delete e[this.__weakMapData__],!0):!1}),get:a1(function(e){if(XY.call(v8(e),this.__weakMapData__))return e[this.__weakMapData__]}),has:a1(function(e){return XY.call(v8(e),this.__weakMapData__)}),set:a1(function(e,t){return ZY(v8(e),this.__weakMapData__,a1("c",t)),this}),toString:a1(function(){return"[object WeakMap]"})});ZY(fx.prototype,Q7t,a1("c","WeakMap"))});var YY=Ae((fxr,_qe)=>{"use strict";_qe.exports=zBe()()?WeakMap:gqe()});var bqe=Ae((cxr,xqe)=>{"use strict";xqe.exports=function(e,t,r){if(typeof Array.prototype.findIndex=="function")return e.findIndex(t,r);if(typeof t!="function")throw new TypeError("predicate must be a function");var n=Object(e),i=n.length;if(i===0)return-1;for(var a=0;a{"use strict";var y8=J_(),rUt=j2(),JY=Gh(),iUt=Zy(),nUt=X2(),wqe=kBe(),aUt=LBe(),{float32:oUt,fract32:KY}=QF(),sUt=YY(),Tqe=rS(),lUt=bqe(),uUt=` +`]),wBe&&(p.frag=p.frag.replace("smoothstep","smoothStep"),d.frag=d.frag.replace("smoothstep","smoothStep")),this.drawCircle=e(p)}op.defaults={color:"black",borderColor:"transparent",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4};op.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this};op.prototype.draw=function(){for(var e=this,t=arguments.length,r=new Array(t),n=0;nre)?N.tree=gqt(W,{bounds:de}):re&&re.length&&(N.tree=re),N.tree){var te={primitive:"points",usage:"static",data:N.tree,type:"uint32"};N.elements?N.elements(te):N.elements=o.elements(te)}var ke=r8.float32(W);ae({data:ke,usage:"dynamic"});var Ee=r8.fract32(W,ke);return be({data:Ee,usage:"dynamic"}),ze({data:new Uint8Array(Ce),type:"uint8",usage:"stream"}),W}},{marker:function(W,N,H){var re=N.activation;if(re.forEach(function(Ee){return Ee&&Ee.destroy&&Ee.destroy()}),re.length=0,!W||typeof W[0]=="number"){var ae=e.addMarker(W);re[ae]=!0}else{for(var be=[],ze=0,Ce=Math.min(W.length,N.count);ze=0)return i;var a;if(e instanceof Uint8Array||e instanceof Uint8ClampedArray)a=e;else{a=new Uint8Array(e.length);for(var o=0,s=e.length;on*4&&(this.tooManyColors=!0),this.updatePalette(r),i.length===1?i[0]:i};op.prototype.updatePalette=function(e){if(!this.tooManyColors){var t=this.maxColors,r=this.paletteTexture,n=Math.ceil(e.length*.25/t);if(n>1){e=e.slice();for(var i=e.length*.25%t;i{"use strict";MY.exports=a8;MY.exports.default=a8;function a8(e,t,r){r=r||2;var n=t&&t.length,i=n?t[0]*r:e.length,a=MBe(e,0,i,r,!0),o=[];if(!a||a.next===a.prev)return o;var s,u,l,f,c,h,d;if(n&&(a=Lqt(e,t,a,r)),e.length>80*r){s=l=e[0],u=f=e[1];for(var p=r;pl&&(l=c),h>f&&(f=h);d=Math.max(l-s,f-u),d=d!==0?32767/d:0}return pk(a,o,r,s,u,d,0),o}function MBe(e,t,r,n,i){var a,o;if(i===SY(e,t,r,n)>0)for(a=t;a=t;a-=n)o=SBe(a,e[a],e[a+1],o);return o&&o8(o,o.next)&&(mk(o),o=o.next),o}function Q2(e,t){if(!e)return e;t||(t=e);var r=e,n;do if(n=!1,!r.steiner&&(o8(r,r.next)||Ch(r.prev,r,r.next)===0)){if(mk(r),r=t=r.prev,r===r.next)break;n=!0}else r=r.next;while(n||r!==t);return t}function pk(e,t,r,n,i,a,o){if(e){!o&&a&&Dqt(e,n,i,a);for(var s=e,u,l;e.prev!==e.next;){if(u=e.prev,l=e.next,a?Eqt(e,n,i,a):Mqt(e)){t.push(u.i/r|0),t.push(e.i/r|0),t.push(l.i/r|0),mk(e),e=l.next,s=l.next;continue}if(e=l,e===s){o?o===1?(e=kqt(Q2(e),t,r),pk(e,t,r,n,i,a,2)):o===2&&Cqt(e,t,r,n,i,a):pk(Q2(e),t,r,n,i,a,1);break}}}}function Mqt(e){var t=e.prev,r=e,n=e.next;if(Ch(t,r,n)>=0)return!1;for(var i=t.x,a=r.x,o=n.x,s=t.y,u=r.y,l=n.y,f=ia?i>o?i:o:a>o?a:o,d=s>u?s>l?s:l:u>l?u:l,p=n.next;p!==t;){if(p.x>=f&&p.x<=h&&p.y>=c&&p.y<=d&&fS(i,s,a,u,o,l,p.x,p.y)&&Ch(p.prev,p,p.next)>=0)return!1;p=p.next}return!0}function Eqt(e,t,r,n){var i=e.prev,a=e,o=e.next;if(Ch(i,a,o)>=0)return!1;for(var s=i.x,u=a.x,l=o.x,f=i.y,c=a.y,h=o.y,d=su?s>l?s:l:u>l?u:l,b=f>c?f>h?f:h:c>h?c:h,v=TY(d,p,t,r,n),k=TY(_,b,t,r,n),E=e.prevZ,A=e.nextZ;E&&E.z>=v&&A&&A.z<=k;){if(E.x>=d&&E.x<=_&&E.y>=p&&E.y<=b&&E!==i&&E!==o&&fS(s,f,u,c,l,h,E.x,E.y)&&Ch(E.prev,E,E.next)>=0||(E=E.prevZ,A.x>=d&&A.x<=_&&A.y>=p&&A.y<=b&&A!==i&&A!==o&&fS(s,f,u,c,l,h,A.x,A.y)&&Ch(A.prev,A,A.next)>=0))return!1;A=A.nextZ}for(;E&&E.z>=v;){if(E.x>=d&&E.x<=_&&E.y>=p&&E.y<=b&&E!==i&&E!==o&&fS(s,f,u,c,l,h,E.x,E.y)&&Ch(E.prev,E,E.next)>=0)return!1;E=E.prevZ}for(;A&&A.z<=k;){if(A.x>=d&&A.x<=_&&A.y>=p&&A.y<=b&&A!==i&&A!==o&&fS(s,f,u,c,l,h,A.x,A.y)&&Ch(A.prev,A,A.next)>=0)return!1;A=A.nextZ}return!0}function kqt(e,t,r){var n=e;do{var i=n.prev,a=n.next.next;!o8(i,a)&&EBe(i,n,n.next,a)&&vk(i,a)&&vk(a,i)&&(t.push(i.i/r|0),t.push(n.i/r|0),t.push(a.i/r|0),mk(n),mk(n.next),n=e=a),n=n.next}while(n!==e);return Q2(n)}function Cqt(e,t,r,n,i,a){var o=e;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&Oqt(o,s)){var u=kBe(o,s);o=Q2(o,o.next),u=Q2(u,u.next),pk(o,t,r,n,i,a,0),pk(u,t,r,n,i,a,0);return}s=s.next}o=o.next}while(o!==e)}function Lqt(e,t,r,n){var i=[],a,o,s,u,l;for(a=0,o=t.length;a=r.next.y&&r.next.y!==r.y){var s=r.x+(i-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(s<=n&&s>a&&(a=s,o=r.x=r.x&&r.x>=l&&n!==r.x&&fS(io.x||r.x===o.x&&Rqt(o,r)))&&(o=r,c=h)),r=r.next;while(r!==u);return o}function Rqt(e,t){return Ch(e.prev,e,t.prev)<0&&Ch(t.next,e,e.next)<0}function Dqt(e,t,r,n){var i=e;do i.z===0&&(i.z=TY(i.x,i.y,t,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,Fqt(i)}function Fqt(e){var t,r,n,i,a,o,s,u,l=1;do{for(r=e,e=null,a=null,o=0;r;){for(o++,n=r,s=0,t=0;t0||u>0&&n;)s!==0&&(u===0||!n||r.z<=n.z)?(i=r,r=r.nextZ,s--):(i=n,n=n.nextZ,u--),a?a.nextZ=i:e=i,i.prevZ=a,a=i;r=n}a.nextZ=null,l*=2}while(o>1);return e}function TY(e,t,r,n,i){return e=(e-r)*i|0,t=(t-n)*i|0,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1}function Bqt(e){var t=e,r=e;do(t.x=(e-o)*(a-s)&&(e-o)*(n-s)>=(r-o)*(t-s)&&(r-o)*(a-s)>=(i-o)*(n-s)}function Oqt(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!qqt(e,t)&&(vk(e,t)&&vk(t,e)&&Nqt(e,t)&&(Ch(e.prev,e,t.prev)||Ch(e,t.prev,t))||o8(e,t)&&Ch(e.prev,e,e.next)>0&&Ch(t.prev,t,t.next)>0)}function Ch(e,t,r){return(t.y-e.y)*(r.x-t.x)-(t.x-e.x)*(r.y-t.y)}function o8(e,t){return e.x===t.x&&e.y===t.y}function EBe(e,t,r,n){var i=n8(Ch(e,t,r)),a=n8(Ch(e,t,n)),o=n8(Ch(r,n,e)),s=n8(Ch(r,n,t));return!!(i!==a&&o!==s||i===0&&i8(e,r,t)||a===0&&i8(e,n,t)||o===0&&i8(r,e,n)||s===0&&i8(r,t,n))}function i8(e,t,r){return t.x<=Math.max(e.x,r.x)&&t.x>=Math.min(e.x,r.x)&&t.y<=Math.max(e.y,r.y)&&t.y>=Math.min(e.y,r.y)}function n8(e){return e>0?1:e<0?-1:0}function qqt(e,t){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==t.i&&r.next.i!==t.i&&EBe(r,r.next,e,t))return!0;r=r.next}while(r!==e);return!1}function vk(e,t){return Ch(e.prev,e,e.next)<0?Ch(e,t,e.next)>=0&&Ch(e,e.prev,t)>=0:Ch(e,t,e.prev)<0||Ch(e,e.next,t)<0}function Nqt(e,t){var r=e,n=!1,i=(e.x+t.x)/2,a=(e.y+t.y)/2;do r.y>a!=r.next.y>a&&r.next.y!==r.y&&i<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next;while(r!==e);return n}function kBe(e,t){var r=new AY(e.i,e.x,e.y),n=new AY(t.i,t.x,t.y),i=e.next,a=t.prev;return e.next=t,t.prev=e,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function SBe(e,t,r,n){var i=new AY(e,t,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function mk(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function AY(e,t,r){this.i=e,this.x=t,this.y=r,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}a8.deviation=function(e,t,r,n){var i=t&&t.length,a=i?t[0]*r:e.length,o=Math.abs(SY(e,0,a,r));if(i)for(var s=0,u=t.length;s0&&(n+=e[i-1].length,r.holes.push(n))}return r}});var PBe=Ae((j1r,LBe)=>{"use strict";var Uqt=X2();LBe.exports=Vqt;function Vqt(e,t,r){if(!e||e.length==null)throw Error("Argument should be an array");t==null&&(t=1),r==null&&(r=Uqt(e,t));for(var n=0;n{"use strict";zBe.exports=function(){var e,t;if(typeof WeakMap!="function")return!1;try{e=new WeakMap([[t={},"one"],[{},"two"],[{},"three"]])}catch(r){return!1}return!(String(e)!=="[object WeakMap]"||typeof e.set!="function"||e.set({},1)!==e||typeof e.delete!="function"||typeof e.has!="function"||e.get(t)!=="one")}});var DBe=Ae((Z1r,RBe)=>{"use strict";RBe.exports=function(){}});var lx=Ae((Y1r,FBe)=>{"use strict";var Gqt=DBe()();FBe.exports=function(e){return e!==Gqt&&e!==null}});var EY=Ae((K1r,OBe)=>{"use strict";var Hqt=Object.create,Wqt=Object.getPrototypeOf,BBe={};OBe.exports=function(){var e=Object.setPrototypeOf,t=arguments[0]||Hqt;return typeof e!="function"?!1:Wqt(e(t(null),BBe))===BBe}});var kY=Ae((J1r,qBe)=>{"use strict";var jqt=lx(),Xqt={function:!0,object:!0};qBe.exports=function(e){return jqt(e)&&Xqt[typeof e]||!1}});var i1=Ae(($1r,NBe)=>{"use strict";var Zqt=lx();NBe.exports=function(e){if(!Zqt(e))throw new TypeError("Cannot use null or undefined");return e}});var VBe=Ae((Q1r,UBe)=>{"use strict";var CY=Object.create,s8;EY()()||(s8=LY());UBe.exports=function(){var e,t,r;return!s8||s8.level!==1?CY:(e={},t={},r={configurable:!1,enumerable:!1,writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(n){if(n==="__proto__"){t[n]={configurable:!0,enumerable:!1,writable:!0,value:void 0};return}t[n]=r}),Object.defineProperties(e,t),Object.defineProperty(s8,"nullPolyfill",{configurable:!1,enumerable:!1,writable:!1,value:e}),function(n,i){return CY(n===null?e:n,i)})}()});var LY=Ae((e_r,GBe)=>{"use strict";var Yqt=kY(),Kqt=i1(),Jqt=Object.prototype.isPrototypeOf,$qt=Object.defineProperty,Qqt={configurable:!0,enumerable:!1,writable:!0,value:void 0},l8;l8=function(e,t){if(Kqt(e),t===null||Yqt(t))return e;throw new TypeError("Prototype must be null or an object")};GBe.exports=function(e){var t,r;return e?(e.level===2?e.set?(r=e.set,t=function(n,i){return r.call(l8(n,i),i),n}):t=function(n,i){return l8(n,i).__proto__=i,n}:t=function n(i,a){var o;return l8(i,a),o=Jqt.call(n.nullPolyfill,i),o&&delete n.nullPolyfill.__proto__,a===null&&(a=n.nullPolyfill),i.__proto__=a,o&&$qt(n.nullPolyfill,"__proto__",Qqt),i},Object.defineProperty(t,"level",{configurable:!1,enumerable:!1,writable:!1,value:e.level})):null}(function(){var e=Object.create(null),t={},r,n=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__");if(n){try{r=n.set,r.call(e,t)}catch(i){}if(Object.getPrototypeOf(e)===t)return{set:r,level:2}}return e.__proto__=t,Object.getPrototypeOf(e)===t?{level:2}:(e={},e.__proto__=t,Object.getPrototypeOf(e)===t?{level:1}:!1)}());VBe()});var u8=Ae((t_r,HBe)=>{"use strict";HBe.exports=EY()()?Object.setPrototypeOf:LY()});var jBe=Ae((r_r,WBe)=>{"use strict";var eNt=kY();WBe.exports=function(e){if(!eNt(e))throw new TypeError(e+" is not an Object");return e}});var ZBe=Ae((i_r,XBe)=>{"use strict";var tNt=Object.create(null),rNt=Math.random;XBe.exports=function(){var e;do e=rNt().toString(36).slice(2);while(tNt[e]);return e}});var ew=Ae((n_r,YBe)=>{"use strict";var iNt=void 0;YBe.exports=function(e){return e!==iNt&&e!==null}});var f8=Ae((a_r,KBe)=>{"use strict";var nNt=ew(),aNt={object:!0,function:!0,undefined:!0};KBe.exports=function(e){return nNt(e)?hasOwnProperty.call(aNt,typeof e):!1}});var $Be=Ae((o_r,JBe)=>{"use strict";var oNt=f8();JBe.exports=function(e){if(!oNt(e))return!1;try{return e.constructor?e.constructor.prototype===e:!1}catch(t){return!1}}});var eOe=Ae((s_r,QBe)=>{"use strict";var sNt=$Be();QBe.exports=function(e){if(typeof e!="function"||!hasOwnProperty.call(e,"length"))return!1;try{if(typeof e.length!="number"||typeof e.call!="function"||typeof e.apply!="function")return!1}catch(t){return!1}return!sNt(e)}});var PY=Ae((l_r,tOe)=>{"use strict";var lNt=eOe(),uNt=/^\s*class[\s{/}]/,fNt=Function.prototype.toString;tOe.exports=function(e){return!(!lNt(e)||uNt.test(fNt.call(e)))}});var iOe=Ae((u_r,rOe)=>{"use strict";rOe.exports=function(){var e=Object.assign,t;return typeof e!="function"?!1:(t={foo:"raz"},e(t,{bar:"dwa"},{trzy:"trzy"}),t.foo+t.bar+t.trzy==="razdwatrzy")}});var aOe=Ae((f_r,nOe)=>{"use strict";nOe.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}});var sOe=Ae((c_r,oOe)=>{"use strict";var cNt=lx(),hNt=Object.keys;oOe.exports=function(e){return hNt(cNt(e)?Object(e):e)}});var uOe=Ae((h_r,lOe)=>{"use strict";lOe.exports=aOe()()?Object.keys:sOe()});var cOe=Ae((d_r,fOe)=>{"use strict";var dNt=uOe(),pNt=i1(),vNt=Math.max;fOe.exports=function(e,t){var r,n,i=vNt(arguments.length,2),a;for(e=Object(pNt(e)),a=function(o){try{e[o]=t[o]}catch(s){r||(r=s)}},n=1;n{"use strict";hOe.exports=iOe()()?Object.assign:cOe()});var zY=Ae((v_r,dOe)=>{"use strict";var mNt=lx(),yNt=Array.prototype.forEach,gNt=Object.create,_Nt=function(e,t){var r;for(r in e)t[r]=e[r]};dOe.exports=function(e){var t=gNt(null);return yNt.call(arguments,function(r){mNt(r)&&_Nt(Object(r),t)}),t}});var vOe=Ae((m_r,pOe)=>{"use strict";var IY="razdwatrzy";pOe.exports=function(){return typeof IY.contains!="function"?!1:IY.contains("dwa")===!0&&IY.contains("foo")===!1}});var yOe=Ae((y_r,mOe)=>{"use strict";var xNt=String.prototype.indexOf;mOe.exports=function(e){return xNt.call(this,e,arguments[1])>-1}});var RY=Ae((g_r,gOe)=>{"use strict";gOe.exports=vOe()()?String.prototype.contains:yOe()});var n1=Ae((__r,wOe)=>{"use strict";var h8=ew(),_Oe=PY(),xOe=c8(),bOe=zY(),yk=RY(),bNt=wOe.exports=function(e,t){var r,n,i,a,o;return arguments.length<2||typeof e!="string"?(a=t,t=e,e=null):a=arguments[2],h8(e)?(r=yk.call(e,"c"),n=yk.call(e,"e"),i=yk.call(e,"w")):(r=i=!0,n=!1),o={value:t,configurable:r,enumerable:n,writable:i},a?xOe(bOe(a),o):o};bNt.gs=function(e,t,r){var n,i,a,o;return typeof e!="string"?(a=r,r=t,t=e,e=null):a=arguments[3],h8(t)?_Oe(t)?h8(r)?_Oe(r)||(a=r,r=void 0):r=void 0:(a=t,t=r=void 0):t=void 0,h8(e)?(n=yk.call(e,"c"),i=yk.call(e,"e")):(n=!0,i=!1),o={get:t,set:r,configurable:n,enumerable:i},a?xOe(bOe(a),o):o}});var gk=Ae((x_r,AOe)=>{"use strict";var TOe=Object.prototype.toString,wNt=TOe.call(function(){return arguments}());AOe.exports=function(e){return TOe.call(e)===wNt}});var _k=Ae((b_r,MOe)=>{"use strict";var SOe=Object.prototype.toString,TNt=SOe.call("");MOe.exports=function(e){return typeof e=="string"||e&&typeof e=="object"&&(e instanceof String||SOe.call(e)===TNt)||!1}});var kOe=Ae((w_r,EOe)=>{"use strict";EOe.exports=function(){return typeof globalThis!="object"||!globalThis?!1:globalThis.Array===Array}});var POe=Ae((T_r,LOe)=>{var COe=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};LOe.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch(e){return COe()}try{return __global__||COe()}finally{delete Object.prototype.__global__}}()});var xk=Ae((A_r,zOe)=>{"use strict";zOe.exports=kOe()()?globalThis:POe()});var ROe=Ae((S_r,IOe)=>{"use strict";var ANt=xk(),DY={object:!0,symbol:!0};IOe.exports=function(){var e=ANt.Symbol,t;if(typeof e!="function")return!1;t=e("test symbol");try{String(t)}catch(r){return!1}return!(!DY[typeof e.iterator]||!DY[typeof e.toPrimitive]||!DY[typeof e.toStringTag])}});var FOe=Ae((M_r,DOe)=>{"use strict";DOe.exports=function(e){return e?typeof e=="symbol"?!0:!e.constructor||e.constructor.name!=="Symbol"?!1:e[e.constructor.toStringTag]==="Symbol":!1}});var FY=Ae((E_r,BOe)=>{"use strict";var SNt=FOe();BOe.exports=function(e){if(!SNt(e))throw new TypeError(e+" is not a symbol");return e}});var VOe=Ae((k_r,UOe)=>{"use strict";var OOe=n1(),MNt=Object.create,qOe=Object.defineProperty,ENt=Object.prototype,NOe=MNt(null);UOe.exports=function(e){for(var t=0,r,n;NOe[e+(t||"")];)++t;return e+=t||"",NOe[e]=!0,r="@@"+e,qOe(ENt,r,OOe.gs(null,function(i){n||(n=!0,qOe(this,r,OOe(i)),n=!1)})),r}});var HOe=Ae((C_r,GOe)=>{"use strict";var ey=n1(),Hh=xk().Symbol;GOe.exports=function(e){return Object.defineProperties(e,{hasInstance:ey("",Hh&&Hh.hasInstance||e("hasInstance")),isConcatSpreadable:ey("",Hh&&Hh.isConcatSpreadable||e("isConcatSpreadable")),iterator:ey("",Hh&&Hh.iterator||e("iterator")),match:ey("",Hh&&Hh.match||e("match")),replace:ey("",Hh&&Hh.replace||e("replace")),search:ey("",Hh&&Hh.search||e("search")),species:ey("",Hh&&Hh.species||e("species")),split:ey("",Hh&&Hh.split||e("split")),toPrimitive:ey("",Hh&&Hh.toPrimitive||e("toPrimitive")),toStringTag:ey("",Hh&&Hh.toStringTag||e("toStringTag")),unscopables:ey("",Hh&&Hh.unscopables||e("unscopables"))})}});var XOe=Ae((L_r,jOe)=>{"use strict";var WOe=n1(),kNt=FY(),bk=Object.create(null);jOe.exports=function(e){return Object.defineProperties(e,{for:WOe(function(t){return bk[t]?bk[t]:bk[t]=e(String(t))}),keyFor:WOe(function(t){var r;kNt(t);for(r in bk)if(bk[r]===t)return r})})}});var KOe=Ae((P_r,YOe)=>{"use strict";var Yy=n1(),BY=FY(),d8=xk().Symbol,CNt=VOe(),LNt=HOe(),PNt=XOe(),zNt=Object.create,OY=Object.defineProperties,p8=Object.defineProperty,Xp,cS,ZOe;if(typeof d8=="function")try{String(d8()),ZOe=!0}catch(e){}else d8=null;cS=function(t){if(this instanceof cS)throw new TypeError("Symbol is not a constructor");return Xp(t)};YOe.exports=Xp=function e(t){var r;if(this instanceof e)throw new TypeError("Symbol is not a constructor");return ZOe?d8(t):(r=zNt(cS.prototype),t=t===void 0?"":String(t),OY(r,{__description__:Yy("",t),__name__:Yy("",CNt(t))}))};LNt(Xp);PNt(Xp);OY(cS.prototype,{constructor:Yy(Xp),toString:Yy("",function(){return this.__name__})});OY(Xp.prototype,{toString:Yy(function(){return"Symbol ("+BY(this).__description__+")"}),valueOf:Yy(function(){return BY(this)})});p8(Xp.prototype,Xp.toPrimitive,Yy("",function(){var e=BY(this);return typeof e=="symbol"?e:e.toString()}));p8(Xp.prototype,Xp.toStringTag,Yy("c","Symbol"));p8(cS.prototype,Xp.toStringTag,Yy("c",Xp.prototype[Xp.toStringTag]));p8(cS.prototype,Xp.toPrimitive,Yy("c",Xp.prototype[Xp.toPrimitive]))});var ux=Ae((z_r,JOe)=>{"use strict";JOe.exports=ROe()()?xk().Symbol:KOe()});var QOe=Ae((I_r,$Oe)=>{"use strict";var INt=i1();$Oe.exports=function(){return INt(this).length=0,this}});var hS=Ae((R_r,e9e)=>{"use strict";e9e.exports=function(e){if(typeof e!="function")throw new TypeError(e+" is not a function");return e}});var r9e=Ae((D_r,t9e)=>{"use strict";var RNt=ew(),DNt=f8(),FNt=Object.prototype.toString;t9e.exports=function(e){if(!RNt(e))return null;if(DNt(e)){var t=e.toString;if(typeof t!="function"||t===FNt)return null}try{return""+e}catch(r){return null}}});var n9e=Ae((F_r,i9e)=>{"use strict";i9e.exports=function(e){try{return e.toString()}catch(t){try{return String(e)}catch(r){return null}}}});var o9e=Ae((B_r,a9e)=>{"use strict";var BNt=n9e(),ONt=/[\n\r\u2028\u2029]/g;a9e.exports=function(e){var t=BNt(e);return t===null?"":(t.length>100&&(t=t.slice(0,99)+"\u2026"),t=t.replace(ONt,function(r){switch(r){case` +`:return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}}),t)}});var qY=Ae((O_r,u9e)=>{"use strict";var s9e=ew(),qNt=f8(),NNt=r9e(),UNt=o9e(),l9e=function(e,t){return e.replace("%v",UNt(t))};u9e.exports=function(e,t,r){if(!qNt(r))throw new TypeError(l9e(t,e));if(!s9e(e)){if("default"in r)return r.default;if(r.isOptional)return null}var n=NNt(r.errorMessage);throw s9e(n)||(n=t),new TypeError(l9e(n,e))}});var c9e=Ae((q_r,f9e)=>{"use strict";var VNt=qY(),GNt=ew();f9e.exports=function(e){return GNt(e)?e:VNt(e,"Cannot use %v",arguments[1])}});var d9e=Ae((N_r,h9e)=>{"use strict";var HNt=qY(),WNt=PY();h9e.exports=function(e){return WNt(e)?e:HNt(e,"%v is not a plain function",arguments[1])}});var v9e=Ae((U_r,p9e)=>{"use strict";p9e.exports=function(){var e=Array.from,t,r;return typeof e!="function"?!1:(t=["raz","dwa"],r=e(t),!!(r&&r!==t&&r[1]==="dwa"))}});var y9e=Ae((V_r,m9e)=>{"use strict";var jNt=Object.prototype.toString,XNt=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);m9e.exports=function(e){return typeof e=="function"&&XNt(jNt.call(e))}});var _9e=Ae((G_r,g9e)=>{"use strict";g9e.exports=function(){var e=Math.sign;return typeof e!="function"?!1:e(10)===1&&e(-20)===-1}});var b9e=Ae((H_r,x9e)=>{"use strict";x9e.exports=function(e){return e=Number(e),isNaN(e)||e===0?e:e>0?1:-1}});var T9e=Ae((W_r,w9e)=>{"use strict";w9e.exports=_9e()()?Math.sign:b9e()});var S9e=Ae((j_r,A9e)=>{"use strict";var ZNt=T9e(),YNt=Math.abs,KNt=Math.floor;A9e.exports=function(e){return isNaN(e)?0:(e=Number(e),e===0||!isFinite(e)?e:ZNt(e)*KNt(YNt(e)))}});var E9e=Ae((X_r,M9e)=>{"use strict";var JNt=S9e(),$Nt=Math.max;M9e.exports=function(e){return $Nt(0,JNt(e))}});var P9e=Ae((Z_r,L9e)=>{"use strict";var QNt=ux().iterator,e7t=gk(),t7t=y9e(),r7t=E9e(),k9e=hS(),i7t=i1(),n7t=lx(),a7t=_k(),C9e=Array.isArray,NY=Function.prototype.call,tw={configurable:!0,enumerable:!0,writable:!0,value:null},UY=Object.defineProperty;L9e.exports=function(e){var t=arguments[1],r=arguments[2],n,i,a,o,s,u,l,f,c,h;if(e=Object(i7t(e)),n7t(t)&&k9e(t),!this||this===Array||!t7t(this)){if(!t){if(e7t(e))return s=e.length,s!==1?Array.apply(null,e):(o=new Array(1),o[0]=e[0],o);if(C9e(e)){for(o=new Array(s=e.length),i=0;i=55296&&u<=56319&&(h+=e[++i])),h=t?NY.call(t,r,h,a):h,n?(tw.value=h,UY(o,a,tw)):o[a]=h,++a;s=a}}if(s===void 0)for(s=r7t(e.length),n&&(o=new n(s)),i=0;i{"use strict";z9e.exports=v9e()()?Array.from:P9e()});var D9e=Ae((K_r,R9e)=>{"use strict";var o7t=I9e(),s7t=c8(),l7t=i1();R9e.exports=function(e){var t=Object(l7t(e)),r=arguments[1],n=Object(arguments[2]);if(t!==e&&!r)return t;var i={};return r?o7t(r,function(a){(n.ensure||a in e)&&(i[a]=e[a])}):s7t(i,e),i}});var O9e=Ae((J_r,B9e)=>{"use strict";var u7t=hS(),f7t=i1(),c7t=Function.prototype.bind,F9e=Function.prototype.call,h7t=Object.keys,d7t=Object.prototype.propertyIsEnumerable;B9e.exports=function(e,t){return function(r,n){var i,a=arguments[2],o=arguments[3];return r=Object(f7t(r)),u7t(n),i=h7t(r),o&&i.sort(typeof o=="function"?c7t.call(o,r):void 0),typeof e!="function"&&(e=i[e]),F9e.call(e,i,function(s,u){return d7t.call(r,s)?F9e.call(n,a,r[s],s,r,u):t})}}});var N9e=Ae(($_r,q9e)=>{"use strict";q9e.exports=O9e()("forEach")});var V9e=Ae((Q_r,U9e)=>{"use strict";var p7t=hS(),v7t=N9e(),m7t=Function.prototype.call;U9e.exports=function(e,t){var r={},n=arguments[2];return p7t(t),v7t(e,function(i,a,o,s){r[a]=m7t.call(t,n,i,a,o,s)}),r}});var j9e=Ae((exr,W9e)=>{"use strict";var y7t=ew(),g7t=c9e(),G9e=d9e(),_7t=D9e(),x7t=zY(),b7t=V9e(),w7t=Function.prototype.bind,T7t=Object.defineProperty,A7t=Object.prototype.hasOwnProperty,H9e;H9e=function(e,t,r){var n=g7t(t)&&G9e(t.value),i;return i=_7t(t),delete i.writable,delete i.value,i.get=function(){return!r.overwriteDefinition&&A7t.call(this,e)?n:(t.value=w7t.call(n,r.resolveContext?r.resolveContext(this):this),T7t(this,e,t),this[e])},i};W9e.exports=function(e){var t=x7t(arguments[1]);return y7t(t.resolveContext)&&G9e(t.resolveContext),b7t(e,function(r,n){return H9e(n,r,t)})}});var VY=Ae((txr,K9e)=>{"use strict";var S7t=QOe(),M7t=c8(),E7t=hS(),k7t=i1(),Ov=n1(),C7t=j9e(),X9e=ux(),Z9e=Object.defineProperty,Y9e=Object.defineProperties,wk;K9e.exports=wk=function(e,t){if(!(this instanceof wk))throw new TypeError("Constructor requires 'new'");Y9e(this,{__list__:Ov("w",k7t(e)),__context__:Ov("w",t),__nextIndex__:Ov("w",0)}),t&&(E7t(t.on),t.on("_add",this._onAdd),t.on("_delete",this._onDelete),t.on("_clear",this._onClear))};delete wk.prototype.constructor;Y9e(wk.prototype,M7t({_next:Ov(function(){var e;if(this.__list__){if(this.__redo__&&(e=this.__redo__.shift(),e!==void 0))return e;if(this.__nextIndex__=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__){Z9e(this,"__redo__",Ov("c",[e]));return}this.__redo__.forEach(function(t,r){t>=e&&(this.__redo__[r]=++t)},this),this.__redo__.push(e)}}),_onDelete:Ov(function(e){var t;e>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(t=this.__redo__.indexOf(e),t!==-1&&this.__redo__.splice(t,1),this.__redo__.forEach(function(r,n){r>e&&(this.__redo__[n]=--r)},this)))}),_onClear:Ov(function(){this.__redo__&&S7t.call(this.__redo__),this.__nextIndex__=0})})));Z9e(wk.prototype,X9e.iterator,Ov(function(){return this}))});var tqe=Ae((rxr,eqe)=>{"use strict";var J9e=u8(),$9e=RY(),GY=n1(),L7t=ux(),HY=VY(),Q9e=Object.defineProperty,dS;dS=eqe.exports=function(e,t){if(!(this instanceof dS))throw new TypeError("Constructor requires 'new'");HY.call(this,e),t?$9e.call(t,"key+value")?t="key+value":$9e.call(t,"key")?t="key":t="value":t="value",Q9e(this,"__kind__",GY("",t))};J9e&&J9e(dS,HY);delete dS.prototype.constructor;dS.prototype=Object.create(HY.prototype,{_resolve:GY(function(e){return this.__kind__==="value"?this.__list__[e]:this.__kind__==="key+value"?[e,this.__list__[e]]:e})});Q9e(dS.prototype,L7t.toStringTag,GY("c","Array Iterator"))});var aqe=Ae((ixr,nqe)=>{"use strict";var rqe=u8(),v8=n1(),P7t=ux(),WY=VY(),iqe=Object.defineProperty,pS;pS=nqe.exports=function(e){if(!(this instanceof pS))throw new TypeError("Constructor requires 'new'");e=String(e),WY.call(this,e),iqe(this,"__length__",v8("",e.length))};rqe&&rqe(pS,WY);delete pS.prototype.constructor;pS.prototype=Object.create(WY.prototype,{_next:v8(function(){if(this.__list__){if(this.__nextIndex__=55296&&r<=56319?t+this.__list__[this.__nextIndex__++]:t)})});iqe(pS.prototype,P7t.toStringTag,v8("c","String Iterator"))});var sqe=Ae((nxr,oqe)=>{"use strict";var z7t=gk(),I7t=lx(),R7t=_k(),D7t=ux().iterator,F7t=Array.isArray;oqe.exports=function(e){return I7t(e)?F7t(e)||R7t(e)||z7t(e)?!0:typeof e[D7t]=="function":!1}});var uqe=Ae((axr,lqe)=>{"use strict";var B7t=sqe();lqe.exports=function(e){if(!B7t(e))throw new TypeError(e+" is not iterable");return e}});var jY=Ae((oxr,hqe)=>{"use strict";var O7t=gk(),q7t=_k(),fqe=tqe(),N7t=aqe(),U7t=uqe(),cqe=ux().iterator;hqe.exports=function(e){return typeof U7t(e)[cqe]=="function"?e[cqe]():O7t(e)?new fqe(e):q7t(e)?new N7t(e):new fqe(e)}});var pqe=Ae((sxr,dqe)=>{"use strict";var V7t=gk(),G7t=hS(),H7t=_k(),W7t=jY(),j7t=Array.isArray,XY=Function.prototype.call,X7t=Array.prototype.some;dqe.exports=function(e,t){var r,n=arguments[2],i,a,o,s,u,l,f;if(j7t(e)||V7t(e)?r="array":H7t(e)?r="string":e=W7t(e),G7t(t),a=function(){o=!0},r==="array"){X7t.call(e,function(c){return XY.call(t,n,c,a),o});return}if(r==="string"){for(u=e.length,s=0;s=55296&&f<=56319&&(l+=e[++s])),XY.call(t,n,l,a),!o);++s);return}for(i=e.next();!i.done;){if(XY.call(t,n,i.value,a),o)return;i=e.next()}}});var mqe=Ae((lxr,vqe)=>{"use strict";vqe.exports=function(){return typeof WeakMap!="function"?!1:Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"}()});var _qe=Ae((uxr,gqe)=>{"use strict";var Z7t=lx(),y8=u8(),m8=jBe(),Y7t=i1(),K7t=ZBe(),a1=n1(),J7t=jY(),$7t=pqe(),Q7t=ux().toStringTag,yqe=mqe(),eUt=Array.isArray,YY=Object.defineProperty,ZY=Object.prototype.hasOwnProperty,tUt=Object.getPrototypeOf,fx;gqe.exports=fx=function(){var e=arguments[0],t;if(!(this instanceof fx))throw new TypeError("Constructor requires 'new'");return t=yqe&&y8&&WeakMap!==fx?y8(new WeakMap,tUt(this)):this,Z7t(e)&&(eUt(e)||(e=J7t(e))),YY(t,"__weakMapData__",a1("c","$weakMap$"+K7t())),e&&$7t(e,function(r){Y7t(r),t.set(r[0],r[1])}),t};yqe&&(y8&&y8(fx,WeakMap),fx.prototype=Object.create(WeakMap.prototype,{constructor:a1(fx)}));Object.defineProperties(fx.prototype,{delete:a1(function(e){return ZY.call(m8(e),this.__weakMapData__)?(delete e[this.__weakMapData__],!0):!1}),get:a1(function(e){if(ZY.call(m8(e),this.__weakMapData__))return e[this.__weakMapData__]}),has:a1(function(e){return ZY.call(m8(e),this.__weakMapData__)}),set:a1(function(e,t){return YY(m8(e),this.__weakMapData__,a1("c",t)),this}),toString:a1(function(){return"[object WeakMap]"})});YY(fx.prototype,Q7t,a1("c","WeakMap"))});var KY=Ae((fxr,xqe)=>{"use strict";xqe.exports=IBe()()?WeakMap:_qe()});var wqe=Ae((cxr,bqe)=>{"use strict";bqe.exports=function(e,t,r){if(typeof Array.prototype.findIndex=="function")return e.findIndex(t,r);if(typeof t!="function")throw new TypeError("predicate must be a function");var n=Object(e),i=n.length;if(i===0)return-1;for(var a=0;a{"use strict";var g8=J_(),rUt=X2(),$Y=Gh(),iUt=Zy(),nUt=Z2(),Tqe=CBe(),aUt=PBe(),{float32:oUt,fract32:JY}=e8(),sUt=KY(),Aqe=iS(),lUt=wqe(),uUt=` precision highp float; attribute vec2 aCoord, bCoord, aCoordFract, bCoordFract; @@ -2584,7 +2584,7 @@ void main() { gl_FragColor = fragColor; gl_FragColor.a *= alpha * opacity * dash; } -`;Aqe.exports=Bc;function Bc(e,t){if(!(this instanceof Bc))return new Bc(e,t);if(typeof e=="function"?(t||(t={}),t.regl=e):t=e,t.length&&(t.positions=t),e=t.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=e._gl,this.regl=e,this.passes=[],this.shaders=Bc.shaders.has(e)?Bc.shaders.get(e):Bc.shaders.set(e,Bc.createShaders(e)).get(e),this.update(t)}Bc.dashMult=2;Bc.maxPatternLength=256;Bc.precisionThreshold=3e6;Bc.maxPoints=1e4;Bc.maxLines=2048;Bc.shaders=new sUt;Bc.createShaders=function(e){let t=e.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),r={primitive:"triangle strip",instances:e.prop("count"),count:4,offset:0,uniforms:{miterMode:(o,s)=>s.join==="round"?2:1,miterLimit:e.prop("miterLimit"),scale:e.prop("scale"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),thickness:e.prop("thickness"),dashTexture:e.prop("dashTexture"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),dashLength:e.prop("dashLength"),viewport:(o,s)=>[s.viewport.x,s.viewport.y,o.viewportWidth,o.viewportHeight],depth:e.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:(o,s)=>!s.overlay},stencil:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport")},n=e(JY({vert:uUt,frag:fUt,attributes:{lineEnd:{buffer:t,divisor:0,stride:8,offset:0},lineTop:{buffer:t,divisor:0,stride:8,offset:4},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},r)),i;try{i=e(JY({cull:{enable:!0,face:"back"},vert:dUt,frag:pUt,attributes:{lineEnd:{buffer:t,divisor:0,stride:8,offset:0},lineTop:{buffer:t,divisor:0,stride:8,offset:4},aColor:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:e.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},r))}catch(o){i=n}return{fill:e({primitive:"triangle",elements:(o,s)=>s.triangles,offset:0,vert:cUt,frag:hUt,uniforms:{scale:e.prop("scale"),color:e.prop("fill"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),viewport:(o,s)=>[s.viewport.x,s.viewport.y,o.viewportWidth,o.viewportHeight]},attributes:{position:{buffer:e.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8}},blend:r.blend,depth:{enable:!1},scissor:r.scissor,stencil:r.stencil,viewport:r.viewport}),rect:n,miter:i}};Bc.defaults={dashes:null,join:"miter",miterLimit:1,thickness:10,cap:"square",color:"black",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null};Bc.prototype.render=function(...e){e.length&&this.update(...e),this.draw()};Bc.prototype.draw=function(...e){return(e.length?e:this.passes).forEach((t,r)=>{if(t&&Array.isArray(t))return this.draw(...t);typeof t=="number"&&(t=this.passes[t]),t&&t.count>1&&t.opacity&&(this.regl._refresh(),t.fill&&t.triangles&&t.triangles.length>2&&this.shaders.fill(t),t.thickness&&(t.scale[0]*t.viewport.width>Bc.precisionThreshold||t.scale[1]*t.viewport.height>Bc.precisionThreshold?this.shaders.rect(t):t.join==="rect"||!t.join&&(t.thickness<=2||t.count>=Bc.maxPoints)?this.shaders.rect(t):this.shaders.miter(t)))}),this};Bc.prototype.update=function(e){if(!e)return;e.length!=null?typeof e[0]=="number"&&(e=[{positions:e}]):Array.isArray(e)||(e=[e]);let{regl:t,gl:r}=this;if(e.forEach((i,a)=>{let o=this.passes[a];if(i!==void 0){if(i===null){this.passes[a]=null;return}if(typeof i[0]=="number"&&(i={positions:i}),i=iUt(i,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),o||(this.passes[a]=o={id:a,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:t.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:t.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:t.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:t.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},i=JY({},Bc.defaults,i)),i.thickness!=null&&(o.thickness=parseFloat(i.thickness)),i.opacity!=null&&(o.opacity=parseFloat(i.opacity)),i.miterLimit!=null&&(o.miterLimit=parseFloat(i.miterLimit)),i.overlay!=null&&(o.overlay=!!i.overlay,aL-x),k=[],E=0,A=o.hole!=null?o.hole[0]:null;if(A!=null){let L=lUt(v,x=>x>=A);v=v.slice(0,L),v.push(A)}for(let L=0;Lm-A+(v[L]-E)),M=wqe(x,C);M=M.map(m=>m+E+(m+E{e.colorBuffer.destroy(),e.positionBuffer.destroy(),e.dashTexture.destroy()}),this.passes.length=0,this}});var Cqe=Ae((dxr,kqe)=>{"use strict";var vUt=j2(),mUt=J_(),yUt=_Y(),gUt=Zy(),Sqe=Gh(),Mqe=X2(),{float32:_Ut,fract32:QY}=QF();kqe.exports=xUt;var Eqe=[[1,0,0,1,0,0],[1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]];function xUt(e,t){if(typeof e=="function"?(t||(t={}),t.regl=e):t=e,t.length&&(t.positions=t),e=t.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");let r=e._gl,n,i,a,o,s,u,l={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},f=[];return o=e.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),i=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),a=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),s=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),u=e.buffer({usage:"static",type:"float",data:Eqe}),p(t),n=e({vert:` +`;Sqe.exports=Bc;function Bc(e,t){if(!(this instanceof Bc))return new Bc(e,t);if(typeof e=="function"?(t||(t={}),t.regl=e):t=e,t.length&&(t.positions=t),e=t.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=e._gl,this.regl=e,this.passes=[],this.shaders=Bc.shaders.has(e)?Bc.shaders.get(e):Bc.shaders.set(e,Bc.createShaders(e)).get(e),this.update(t)}Bc.dashMult=2;Bc.maxPatternLength=256;Bc.precisionThreshold=3e6;Bc.maxPoints=1e4;Bc.maxLines=2048;Bc.shaders=new sUt;Bc.createShaders=function(e){let t=e.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),r={primitive:"triangle strip",instances:e.prop("count"),count:4,offset:0,uniforms:{miterMode:(o,s)=>s.join==="round"?2:1,miterLimit:e.prop("miterLimit"),scale:e.prop("scale"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),thickness:e.prop("thickness"),dashTexture:e.prop("dashTexture"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),dashLength:e.prop("dashLength"),viewport:(o,s)=>[s.viewport.x,s.viewport.y,o.viewportWidth,o.viewportHeight],depth:e.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:(o,s)=>!s.overlay},stencil:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport")},n=e($Y({vert:uUt,frag:fUt,attributes:{lineEnd:{buffer:t,divisor:0,stride:8,offset:0},lineTop:{buffer:t,divisor:0,stride:8,offset:4},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},r)),i;try{i=e($Y({cull:{enable:!0,face:"back"},vert:dUt,frag:pUt,attributes:{lineEnd:{buffer:t,divisor:0,stride:8,offset:0},lineTop:{buffer:t,divisor:0,stride:8,offset:4},aColor:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:e.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},r))}catch(o){i=n}return{fill:e({primitive:"triangle",elements:(o,s)=>s.triangles,offset:0,vert:cUt,frag:hUt,uniforms:{scale:e.prop("scale"),color:e.prop("fill"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),viewport:(o,s)=>[s.viewport.x,s.viewport.y,o.viewportWidth,o.viewportHeight]},attributes:{position:{buffer:e.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8}},blend:r.blend,depth:{enable:!1},scissor:r.scissor,stencil:r.stencil,viewport:r.viewport}),rect:n,miter:i}};Bc.defaults={dashes:null,join:"miter",miterLimit:1,thickness:10,cap:"square",color:"black",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null};Bc.prototype.render=function(...e){e.length&&this.update(...e),this.draw()};Bc.prototype.draw=function(...e){return(e.length?e:this.passes).forEach((t,r)=>{if(t&&Array.isArray(t))return this.draw(...t);typeof t=="number"&&(t=this.passes[t]),t&&t.count>1&&t.opacity&&(this.regl._refresh(),t.fill&&t.triangles&&t.triangles.length>2&&this.shaders.fill(t),t.thickness&&(t.scale[0]*t.viewport.width>Bc.precisionThreshold||t.scale[1]*t.viewport.height>Bc.precisionThreshold?this.shaders.rect(t):t.join==="rect"||!t.join&&(t.thickness<=2||t.count>=Bc.maxPoints)?this.shaders.rect(t):this.shaders.miter(t)))}),this};Bc.prototype.update=function(e){if(!e)return;e.length!=null?typeof e[0]=="number"&&(e=[{positions:e}]):Array.isArray(e)||(e=[e]);let{regl:t,gl:r}=this;if(e.forEach((i,a)=>{let o=this.passes[a];if(i!==void 0){if(i===null){this.passes[a]=null;return}if(typeof i[0]=="number"&&(i={positions:i}),i=iUt(i,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),o||(this.passes[a]=o={id:a,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:t.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:t.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:t.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:t.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},i=$Y({},Bc.defaults,i)),i.thickness!=null&&(o.thickness=parseFloat(i.thickness)),i.opacity!=null&&(o.opacity=parseFloat(i.opacity)),i.miterLimit!=null&&(o.miterLimit=parseFloat(i.miterLimit)),i.overlay!=null&&(o.overlay=!!i.overlay,aL-x),k=[],E=0,A=o.hole!=null?o.hole[0]:null;if(A!=null){let L=lUt(v,x=>x>=A);v=v.slice(0,L),v.push(A)}for(let L=0;Lm-A+(v[L]-E)),M=Tqe(x,C);M=M.map(m=>m+E+(m+E{e.colorBuffer.destroy(),e.positionBuffer.destroy(),e.dashTexture.destroy()}),this.passes.length=0,this}});var Lqe=Ae((dxr,Cqe)=>{"use strict";var vUt=X2(),mUt=J_(),yUt=xY(),gUt=Zy(),Mqe=Gh(),Eqe=Z2(),{float32:_Ut,fract32:eK}=e8();Cqe.exports=xUt;var kqe=[[1,0,0,1,0,0],[1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]];function xUt(e,t){if(typeof e=="function"?(t||(t={}),t.regl=e):t=e,t.length&&(t.positions=t),e=t.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");let r=e._gl,n,i,a,o,s,u,l={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},f=[];return o=e.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),i=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),a=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),s=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),u=e.buffer({usage:"static",type:"float",data:kqe}),p(t),n=e({vert:` precision highp float; attribute vec2 position, positionFract; @@ -2628,10 +2628,10 @@ void main() { gl_FragColor = fragColor; gl_FragColor.a *= opacity; } - `,uniforms:{range:e.prop("range"),lineWidth:e.prop("lineWidth"),capSize:e.prop("capSize"),opacity:e.prop("opacity"),scale:e.prop("scale"),translate:e.prop("translate"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),viewport:(b,v)=>[v.viewport.x,v.viewport.y,b.viewportWidth,b.viewportHeight]},attributes:{color:{buffer:o,offset:(b,v)=>v.offset*4,divisor:1},position:{buffer:i,offset:(b,v)=>v.offset*8,divisor:1},positionFract:{buffer:a,offset:(b,v)=>v.offset*8,divisor:1},error:{buffer:s,offset:(b,v)=>v.offset*16,divisor:1},direction:{buffer:u,stride:24,offset:0},lineOffset:{buffer:u,stride:24,offset:8},capOffset:{buffer:u,stride:24,offset:16}},primitive:"triangles",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport"),stencil:!1,instances:e.prop("count"),count:Eqe.length}),Sqe(c,{update:p,draw:h,destroy:_,regl:e,gl:r,canvas:r.canvas,groups:f}),c;function c(b){b?p(b):b===null&&_(),h()}function h(b){if(typeof b=="number")return d(b);b&&!Array.isArray(b)&&(b=[b]),e._refresh(),f.forEach((v,k)=>{if(v){if(b&&(b[k]?v.draw=!0:v.draw=!1),!v.draw){v.draw=!0;return}d(k)}})}function d(b){typeof b=="number"&&(b=f[b]),b!=null&&b&&b.count&&b.color&&b.opacity&&b.positions&&b.positions.length>1&&(b.scaleRatio=[b.scale[0]*b.viewport.width,b.scale[1]*b.viewport.height],n(b),b.after&&b.after(b))}function p(b){if(!b)return;b.length!=null?typeof b[0]=="number"&&(b=[{positions:b}]):Array.isArray(b)||(b=[b]);let v=0,k=0;if(c.groups=f=b.map((L,x)=>{let C=f[x];if(L)typeof L=="function"?L={after:L}:typeof L[0]=="number"&&(L={positions:L});else return C;return L=gUt(L,{color:"color colors fill",capSize:"capSize cap capsize cap-size",lineWidth:"lineWidth line-width width line thickness",opacity:"opacity alpha",range:"range dataBox",viewport:"viewport viewBox",errors:"errors error",positions:"positions position data points"}),C||(f[x]=C={id:x,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},L=Sqe({},l,L)),yUt(C,L,[{lineWidth:M=>+M*.5,capSize:M=>+M*.5,opacity:parseFloat,errors:M=>(M=Mqe(M),k+=M.length,M),positions:(M,m)=>(M=Mqe(M,"float64"),m.count=Math.floor(M.length/2),m.bounds=vUt(M,2),m.offset=v,v+=m.count,M)},{color:(M,m)=>{let P=m.count;if(M||(M="transparent"),!Array.isArray(M)||typeof M[0]=="number"){let B=M;M=Array(P);for(let F=0;F{let T=m.bounds;return M||(M=T),m.scale=[1/(M[2]-M[0]),1/(M[3]-M[1])],m.translate=[-M[0],-M[1]],m.scaleFract=QY(m.scale),m.translateFract=QY(m.translate),M},viewport:M=>{let m;return Array.isArray(M)?m={x:M[0],y:M[1],width:M[2]-M[0],height:M[3]-M[1]}:M?(m={x:M.x||M.left||0,y:M.y||M.top||0},M.right?m.width=M.right-m.x:m.width=M.w||M.width||0,M.bottom?m.height=M.bottom-m.y:m.height=M.h||M.height||0):m={x:0,y:0,width:r.drawingBufferWidth,height:r.drawingBufferHeight},m}}]),C}),v||k){let L=f.reduce((m,P,T)=>m+(P?P.count:0),0),x=new Float64Array(L*2),C=new Uint8Array(L*4),M=new Float32Array(L*4);f.forEach((m,P)=>{if(!m)return;let{positions:T,count:B,offset:F,color:U,errors:G}=m;B&&(C.set(U,F*4),M.set(G,F*4),x.set(T,F*2))});var E=_Ut(x);i(E);var A=QY(x,E);a(A),o(C),s(M)}}function _(){i.destroy(),a.destroy(),o.destroy(),s.destroy(),u.destroy()}}});var zqe=Ae((pxr,Pqe)=>{var Lqe=/[\'\"]/;Pqe.exports=function(t){return t?(Lqe.test(t.charAt(0))&&(t=t.substr(1)),Lqe.test(t.charAt(t.length-1))&&(t=t.substr(0,t.length-1)),t):""}});var eK=Ae((vxr,bUt)=>{bUt.exports=["inherit","initial","unset"]});var tK=Ae((mxr,wUt)=>{wUt.exports=["caption","icon","menu","message-box","small-caption","status-bar"]});var rK=Ae((yxr,TUt)=>{TUt.exports=["normal","bold","bolder","lighter","100","200","300","400","500","600","700","800","900"]});var iK=Ae((gxr,AUt)=>{AUt.exports=["normal","italic","oblique"]});var nK=Ae((_xr,SUt)=>{SUt.exports=["normal","condensed","semi-condensed","extra-condensed","ultra-condensed","expanded","semi-expanded","extra-expanded","ultra-expanded"]});var Fqe=Ae((xxr,Dqe)=>{"use strict";function Iqe(e,t){if(typeof e!="string")return[e];var r=[e];typeof t=="string"||Array.isArray(t)?t={brackets:t}:t||(t={});var n=t.brackets?Array.isArray(t.brackets)?t.brackets:[t.brackets]:["{}","[]","()"],i=t.escape||"___",a=!!t.flat;n.forEach(function(u){var l=new RegExp(["\\",u[0],"[^\\",u[0],"\\",u[1],"]*\\",u[1]].join("")),f=[];function c(h,d,p){var _=r.push(h.slice(u[0].length,-u[1].length))-1;return f.push(_),i+_+i}r.forEach(function(h,d){for(var p,_=0;h!=p;)if(p=h,h=h.replace(l,c),_++>1e4)throw Error("References have circular dependency. Please, check them.");r[d]=h}),f=f.reverse(),r=r.map(function(h){return f.forEach(function(d){h=h.replace(new RegExp("(\\"+i+d+"\\"+i+")","g"),u[0]+"$1"+u[1])}),h})});var o=new RegExp("\\"+i+"([0-9]+)\\"+i);function s(u,l,f){for(var c=[],h,d=0;h=o.exec(u);){if(d++>1e4)throw Error("Circular references in parenthesis");c.push(u.slice(0,h.index)),c.push(s(l[h[1]],l)),u=u.slice(h.index+h[0].length)}return c.push(u),c}return a?r:s(r[0],r)}function Rqe(e,t){if(t&&t.flat){var r=t&&t.escape||"___",n=e[0],i;if(!n)return"";for(var a=new RegExp("\\"+r+"([0-9]+)\\"+r),o=0;n!=i;){if(o++>1e4)throw Error("Circular references in "+e);i=n,n=n.replace(a,s)}return n}return e.reduce(function u(l,f){return Array.isArray(f)&&(f=f.reduce(u,"")),l+f},"");function s(u,l){if(e[l]==null)throw Error("Reference "+l+"is undefined");return e[l]}}function aK(e,t){return Array.isArray(e)?Rqe(e,t):Iqe(e,t)}aK.parse=Iqe;aK.stringify=Rqe;Dqe.exports=aK});var qqe=Ae((bxr,Oqe)=>{"use strict";var Bqe=Fqe();Oqe.exports=function(t,r,n){if(t==null)throw Error("First argument should be a string");if(r==null)throw Error("Separator should be a string or a RegExp");n?(typeof n=="string"||Array.isArray(n))&&(n={ignore:n}):n={},n.escape==null&&(n.escape=!0),n.ignore==null?n.ignore=["[]","()","{}","<>",'""',"''","``","\u201C\u201D","\xAB\xBB"]:(typeof n.ignore=="string"&&(n.ignore=[n.ignore]),n.ignore=n.ignore.map(function(c){return c.length===1&&(c=c+c),c}));var i=Bqe.parse(t,{flat:!0,brackets:n.ignore}),a=i[0],o=a.split(r);if(n.escape){for(var s=[],u=0;u{MUt.exports=["xx-small","x-small","small","medium","large","x-large","xx-large","larger","smaller"]});var oK=Ae((Txr,Uqe)=>{"use strict";var EUt=Nqe();Uqe.exports={isSize:function(t){return/^[\d\.]/.test(t)||t.indexOf("/")!==-1||EUt.indexOf(t)!==-1}}});var Wqe=Ae((Axr,Hqe)=>{"use strict";var kUt=zqe(),CUt=eK(),LUt=tK(),PUt=rK(),zUt=iK(),IUt=nK(),sK=qqe(),RUt=oK().isSize;Hqe.exports=Gqe;var Tk=Gqe.cache={};function Gqe(e){if(typeof e!="string")throw new Error("Font argument must be a string.");if(Tk[e])return Tk[e];if(e==="")throw new Error("Cannot parse an empty string.");if(LUt.indexOf(e)!==-1)return Tk[e]={system:e};for(var t={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},r=sK(e,/\s+/),n;n=r.shift();){if(CUt.indexOf(n)!==-1)return["style","variant","weight","stretch"].forEach(function(a){t[a]=n}),Tk[e]=t;if(zUt.indexOf(n)!==-1){t.style=n;continue}if(n==="normal"||n==="small-caps"){t.variant=n;continue}if(IUt.indexOf(n)!==-1){t.stretch=n;continue}if(PUt.indexOf(n)!==-1){t.weight=n;continue}if(RUt(n)){var i=sK(n,"/");if(t.size=i[0],i[1]!=null?t.lineHeight=Vqe(i[1]):r[0]==="/"&&(r.shift(),t.lineHeight=Vqe(r.shift())),!r.length)throw new Error("Missing required font-family.");return t.family=sK(r.join(" "),/\s*,\s*/).map(kUt),Tk[e]=t}throw new Error("Unknown or unsupported font token: "+n)}throw new Error("Missing required font-size.")}function Vqe(e){var t=parseFloat(e);return t.toString()===e?t:e}});var uK=Ae((Sxr,jqe)=>{"use strict";var DUt=Zy(),FUt=oK().isSize,BUt=Sk(eK()),OUt=Sk(tK()),qUt=Sk(rK()),NUt=Sk(iK()),UUt=Sk(nK()),VUt={normal:1,"small-caps":1},GUt={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},lK={style:"normal",variant:"normal",weight:"normal",stretch:"normal",size:"1rem",lineHeight:"normal",family:"serif"};jqe.exports=function(t){if(t=DUt(t,{style:"style fontstyle fontStyle font-style slope distinction",variant:"variant font-variant fontVariant fontvariant var capitalization",weight:"weight w font-weight fontWeight fontweight",stretch:"stretch font-stretch fontStretch fontstretch width",size:"size s font-size fontSize fontsize height em emSize",lineHeight:"lh line-height lineHeight lineheight leading",family:"font family fontFamily font-family fontfamily type typeface face",system:"system reserved default global"}),t.system)return t.system&&Ak(t.system,OUt),t.system;if(Ak(t.style,NUt),Ak(t.variant,VUt),Ak(t.weight,qUt),Ak(t.stretch,UUt),t.size==null&&(t.size=lK.size),typeof t.size=="number"&&(t.size+="px"),!FUt)throw Error("Bad size value `"+t.size+"`");t.family||(t.family=lK.family),Array.isArray(t.family)&&(t.family.length||(t.family=[lK.family]),t.family=t.family.map(function(n){return GUt[n]?n:'"'+n+'"'}).join(", "));var r=[];return r.push(t.style),t.variant!==t.style&&r.push(t.variant),t.weight!==t.variant&&t.weight!==t.style&&r.push(t.weight),t.stretch!==t.weight&&t.stretch!==t.variant&&t.stretch!==t.style&&r.push(t.stretch),r.push(t.size+(t.lineHeight==null||t.lineHeight==="normal"||t.lineHeight+""=="1"?"":"/"+t.lineHeight)),r.push(t.family),r.filter(Boolean).join(" ")};function Ak(e,t){if(e&&!t[e]&&!BUt[e])throw Error("Unknown keyword `"+e+"`");return e}function Sk(e){for(var t={},r=0;r{"use strict";Xqe.exports={parse:Wqe(),stringify:uK()}});var Yqe=Ae((fK,cK)=>{(function(e,t){typeof fK=="object"&&typeof cK!="undefined"?cK.exports=t():e.createREGL=t()})(fK,function(){"use strict";var e=function(Be,qt){for(var ar=Object.keys(qt),Qr=0;Qr1&&qt===ar&&(qt==='"'||qt==="'"))return['"'+o(Be.substr(1,Be.length-2))+'"'];var Qr=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Be);if(Qr)return s(Be.substr(0,Qr.index)).concat(s(Qr[1])).concat(s(Be.substr(Qr.index+Qr[0].length)));var yi=Be.split(".");if(yi.length===1)return['"'+o(Be)+'"'];for(var ci=[],vi=0;vi65535)<<4,Be>>>=qt,ar=(Be>255)<<3,Be>>>=ar,qt|=ar,ar=(Be>15)<<2,Be>>>=ar,qt|=ar,ar=(Be>3)<<1,Be>>>=ar,qt|=ar,qt|Be>>1}function N(){var Be=M(8,function(){return[]});function qt(ci){var vi=j(ci),on=Be[H(vi)>>2];return on.length>0?on.pop():new ArrayBuffer(vi)}function ar(ci){Be[H(ci.byteLength)>>2].push(ci)}function Qr(ci,vi){var on=null;switch(ci){case m:on=new Int8Array(qt(vi),0,vi);break;case P:on=new Uint8Array(qt(vi),0,vi);break;case T:on=new Int16Array(qt(2*vi),0,vi);break;case B:on=new Uint16Array(qt(2*vi),0,vi);break;case F:on=new Int32Array(qt(4*vi),0,vi);break;case U:on=new Uint32Array(qt(4*vi),0,vi);break;case G:on=new Float32Array(qt(4*vi),0,vi);break;default:return null}return on.length!==vi?on.subarray(0,vi):on}function yi(ci){ar(ci.buffer)}return{alloc:qt,free:ar,allocType:Qr,freeType:yi}}var W=N();W.zero=N();var re=3408,ae=3410,be=3411,ze=3412,Ce=3413,de=3414,te=3415,ke=33901,Ee=33902,Me=3379,Ue=3386,De=34921,ye=36347,qe=36348,ce=35661,Je=35660,nt=34930,gt=36349,Nt=34076,at=34024,Ke=7936,Ct=7937,wt=7938,St=35724,Dt=34047,Zt=36063,Et=34852,Te=3553,ot=34067,Tt=34069,vt=33984,Ye=6408,He=5126,it=5121,et=36160,It=36053,Yt=36064,cr=16384,_r=function(Be,qt){var ar=1;qt.ext_texture_filter_anisotropic&&(ar=Be.getParameter(Dt));var Qr=1,yi=1;qt.webgl_draw_buffers&&(Qr=Be.getParameter(Et),yi=Be.getParameter(Zt));var ci=!!qt.oes_texture_float;if(ci){var vi=Be.createTexture();Be.bindTexture(Te,vi),Be.texImage2D(Te,0,Ye,1,1,0,Ye,He,null);var on=Be.createFramebuffer();if(Be.bindFramebuffer(et,on),Be.framebufferTexture2D(et,Yt,Te,vi,0),Be.bindTexture(Te,null),Be.checkFramebufferStatus(et)!==It)ci=!1;else{Be.viewport(0,0,1,1),Be.clearColor(1,0,0,1),Be.clear(cr);var Bn=W.allocType(He,4);Be.readPixels(0,0,1,1,Ye,He,Bn),Be.getError()?ci=!1:(Be.deleteFramebuffer(on),Be.deleteTexture(vi),ci=Bn[0]===1),W.freeType(Bn)}}var Ln=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),wn=!0;if(!Ln){var Ls=Be.createTexture(),ua=W.allocType(it,36);Be.activeTexture(vt),Be.bindTexture(ot,Ls),Be.texImage2D(Tt,0,Ye,3,3,0,Ye,it,ua),W.freeType(ua),Be.bindTexture(ot,null),Be.deleteTexture(Ls),wn=!Be.getError()}return{colorBits:[Be.getParameter(ae),Be.getParameter(be),Be.getParameter(ze),Be.getParameter(Ce)],depthBits:Be.getParameter(de),stencilBits:Be.getParameter(te),subpixelBits:Be.getParameter(re),extensions:Object.keys(qt).filter(function(Hn){return!!qt[Hn]}),maxAnisotropic:ar,maxDrawbuffers:Qr,maxColorAttachments:yi,pointSizeDims:Be.getParameter(ke),lineWidthDims:Be.getParameter(Ee),maxViewportDims:Be.getParameter(Ue),maxCombinedTextureUnits:Be.getParameter(ce),maxCubeMapSize:Be.getParameter(Nt),maxRenderbufferSize:Be.getParameter(at),maxTextureUnits:Be.getParameter(nt),maxTextureSize:Be.getParameter(Me),maxAttributes:Be.getParameter(De),maxVertexUniforms:Be.getParameter(ye),maxVertexTextureUnits:Be.getParameter(Je),maxVaryingVectors:Be.getParameter(qe),maxFragmentUniforms:Be.getParameter(gt),glsl:Be.getParameter(St),renderer:Be.getParameter(Ct),vendor:Be.getParameter(Ke),version:Be.getParameter(wt),readFloat:ci,npotTextureCube:wn}},yr=function(Be){return Be instanceof Uint8Array||Be instanceof Uint16Array||Be instanceof Uint32Array||Be instanceof Int8Array||Be instanceof Int16Array||Be instanceof Int32Array||Be instanceof Float32Array||Be instanceof Float64Array||Be instanceof Uint8ClampedArray};function Ut(Be){return!!Be&&typeof Be=="object"&&Array.isArray(Be.shape)&&Array.isArray(Be.stride)&&typeof Be.offset=="number"&&Be.shape.length===Be.stride.length&&(Array.isArray(Be.data)||yr(Be.data))}var Re=function(Be){return Object.keys(Be).map(function(qt){return Be[qt]})},xe={shape:fe,flatten:ge};function Oe(Be,qt,ar){for(var Qr=0;Qr0){var hs;if(Array.isArray(xi[0])){Kn=si(xi);for(var Ji=1,Ui=1;Ui0){if(typeof Ji[0]=="number"){var On=W.allocType(Zi.dtype,Ji.length);xr(On,Ji),Kn(On,ro),W.freeType(On)}else if(Array.isArray(Ji[0])||yr(Ji[0])){na=si(Ji);var In=Qi(Ji,na,Zi.dtype);Kn(In,ro),W.freeType(In)}}}else if(Ut(Ji)){na=Ji.shape;var Va=Ji.stride,_s=0,ul=0,Qn=0,Mo=0;na.length===1?(_s=na[0],ul=1,Qn=Va[0],Mo=0):na.length===2&&(_s=na[0],ul=na[1],Qn=Va[0],Mo=Va[1]);var nl=Array.isArray(Ji.data)?Zi.dtype:Wt(Ji.data),pl=W.allocType(nl,_s*ul);Lr(pl,Ji.data,_s,ul,Qn,Mo,Ji.offset),Kn(pl,ro),W.freeType(pl)}return ga}return dn||ga(Wr),ga._reglType="buffer",ga._buffer=Zi,ga.subdata=hs,ar.profile&&(ga.stats=Zi.stats),ga.destroy=function(){ua(Zi)},ga}function qi(){Re(ci).forEach(function(Wr){Wr.buffer=Be.createBuffer(),Be.bindBuffer(Wr.type,Wr.buffer),Be.bufferData(Wr.type,Wr.persistentData||Wr.byteLength,Wr.usage)})}return ar.profile&&(qt.getTotalBufferSize=function(){var Wr=0;return Object.keys(ci).forEach(function(xi){Wr+=ci[xi].stats.size}),Wr}),{create:Hn,createStream:Bn,destroyStream:Ln,clear:function(){Re(ci).forEach(ua),on.forEach(ua)},getBuffer:function(Wr){return Wr&&Wr._buffer instanceof vi?Wr._buffer:null},restore:qi,_initBuffer:Ls}}var Or=0,Hr=0,jr=1,gi=1,ki=4,Vi=4,ti={points:Or,point:Hr,lines:jr,line:gi,triangles:ki,triangle:Vi,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},tn=0,Yr=1,oi=4,Fi=5120,an=5121,nn=5122,Ri=5123,Ii=5124,xn=5125,bi=34963,Xr=35040,ct=35044;function tr(Be,qt,ar,Qr){var yi={},ci=0,vi={uint8:an,uint16:Ri};qt.oes_element_index_uint&&(vi.uint32=xn);function on(qi){this.id=ci++,yi[this.id]=this,this.buffer=qi,this.primType=oi,this.vertCount=0,this.type=0}on.prototype.bind=function(){this.buffer.bind()};var Bn=[];function Ln(qi){var Wr=Bn.pop();return Wr||(Wr=new on(ar.create(null,bi,!0,!1)._buffer)),Ls(Wr,qi,Xr,-1,-1,0,0),Wr}function wn(qi){Bn.push(qi)}function Ls(qi,Wr,xi,dn,En,Zi,ga){qi.buffer.bind();var Kn;if(Wr){var hs=ga;!ga&&(!yr(Wr)||Ut(Wr)&&!yr(Wr.data))&&(hs=qt.oes_element_index_uint?xn:Ri),ar._initBuffer(qi.buffer,Wr,xi,hs,3)}else Be.bufferData(bi,Zi,xi),qi.buffer.dtype=Kn||an,qi.buffer.usage=xi,qi.buffer.dimension=3,qi.buffer.byteLength=Zi;if(Kn=ga,!ga){switch(qi.buffer.dtype){case an:case Fi:Kn=an;break;case Ri:case nn:Kn=Ri;break;case xn:case Ii:Kn=xn;break;default:}qi.buffer.dtype=Kn}qi.type=Kn;var Ji=En;Ji<0&&(Ji=qi.buffer.byteLength,Kn===Ri?Ji>>=1:Kn===xn&&(Ji>>=2)),qi.vertCount=Ji;var Ui=dn;if(dn<0){Ui=oi;var ro=qi.buffer.dimension;ro===1&&(Ui=tn),ro===2&&(Ui=Yr),ro===3&&(Ui=oi)}qi.primType=Ui}function ua(qi){Qr.elementsCount--,delete yi[qi.id],qi.buffer.destroy(),qi.buffer=null}function Hn(qi,Wr){var xi=ar.create(null,bi,!0),dn=new on(xi._buffer);Qr.elementsCount++;function En(Zi){if(!Zi)xi(),dn.primType=oi,dn.vertCount=0,dn.type=an;else if(typeof Zi=="number")xi(Zi),dn.primType=oi,dn.vertCount=Zi|0,dn.type=an;else{var ga=null,Kn=ct,hs=-1,Ji=-1,Ui=0,ro=0;Array.isArray(Zi)||yr(Zi)||Ut(Zi)?ga=Zi:("data"in Zi&&(ga=Zi.data),"usage"in Zi&&(Kn=$i[Zi.usage]),"primitive"in Zi&&(hs=ti[Zi.primitive]),"count"in Zi&&(Ji=Zi.count|0),"type"in Zi&&(ro=vi[Zi.type]),"length"in Zi?Ui=Zi.length|0:(Ui=Ji,ro===Ri||ro===nn?Ui*=2:(ro===xn||ro===Ii)&&(Ui*=4))),Ls(dn,ga,Kn,hs,Ji,Ui,ro)}return En}return En(qi),En._reglType="elements",En._elements=dn,En.subdata=function(Zi,ga){return xi.subdata(Zi,ga),En},En.destroy=function(){ua(dn)},En}return{create:Hn,createStream:Ln,destroyStream:wn,getElements:function(qi){return typeof qi=="function"&&qi._elements instanceof on?qi._elements:null},clear:function(){Re(yi).forEach(ua)}}}var pr=new Float32Array(1),gr=new Uint32Array(pr.buffer),Zr=5123;function Ti(Be){for(var qt=W.allocType(Zr,Be.length),ar=0;ar>>31<<15,ci=(Qr<<1>>>24)-127,vi=Qr>>13&1023;if(ci<-24)qt[ar]=yi;else if(ci<-14){var on=-14-ci;qt[ar]=yi+(vi+1024>>on)}else ci>15?qt[ar]=yi+31744:qt[ar]=yi+(ci+15<<10)+vi}return qt}function en(Be){return Array.isArray(Be)||yr(Be)}var ii=34467,Xi=3553,aa=34067,Mn=34069,Un=6408,Ga=6406,ma=6407,oa=6409,ka=6410,so=32854,Kr=32855,Ia=36194,Yo=32819,fa=32820,kn=33635,Aa=34042,ys=6402,uo=34041,ls=35904,$a=35906,fo=36193,mn=33776,ra=33777,wa=33778,ws=33779,Co=35986,Po=35987,Wi=34798,gn=35840,Ps=35841,Ha=35842,Sn=35843,ao=36196,Ba=5121,Ko=5123,Qo=5125,Hi=5126,Sa=10242,Qa=10243,vn=10497,da=33071,la=33648,vo=10240,Ts=10241,ps=9728,co=9729,mo=9984,No=9985,jn=9986,Go=9987,Ys=33170,qs=4352,Ns=4353,Oa=4354,ha=34046,Vs=3317,Ya=37440,_n=37441,Vn=37443,wo=37444,Ra=33984,Xn=[mo,jn,No,Go],un=[0,oa,ka,ma,Un],$n={};$n[oa]=$n[Ga]=$n[ys]=1,$n[uo]=$n[ka]=2,$n[ma]=$n[ls]=3,$n[Un]=$n[$a]=4;function Ka(Be){return"[object "+Be+"]"}var qn=Ka("HTMLCanvasElement"),Eo=Ka("OffscreenCanvas"),Ja=Ka("CanvasRenderingContext2D"),lo=Ka("ImageBitmap"),eo=Ka("HTMLImageElement"),sa=Ka("HTMLVideoElement"),es=Object.keys(pe).concat([qn,Eo,Ja,lo,eo,sa]),Na=[];Na[Ba]=1,Na[Hi]=4,Na[fo]=2,Na[Ko]=2,Na[Qo]=4;var rn=[];rn[so]=2,rn[Kr]=2,rn[Ia]=2,rn[uo]=4,rn[mn]=.5,rn[ra]=.5,rn[wa]=1,rn[ws]=1,rn[Co]=.5,rn[Po]=1,rn[Wi]=1,rn[gn]=.5,rn[Ps]=.25,rn[Ha]=.5,rn[Sn]=.25,rn[ao]=.5;function Pa(Be){return Array.isArray(Be)&&(Be.length===0||typeof Be[0]=="number")}function to(Be){if(!Array.isArray(Be))return!1;var qt=Be.length;return!(qt===0||!en(Be[0]))}function yo(Be){return Object.prototype.toString.call(Be)}function Jo(Be){return yo(Be)===qn}function To(Be){return yo(Be)===Eo}function Dn(Be){return yo(Be)===Ja}function _a(Be){return yo(Be)===lo}function Ws(Be){return yo(Be)===eo}function Ca(Be){return yo(Be)===sa}function Es(Be){if(!Be)return!1;var qt=yo(Be);return es.indexOf(qt)>=0?!0:Pa(Be)||to(Be)||Ut(Be)}function As(Be){return pe[Object.prototype.toString.call(Be)]|0}function Ho(Be,qt){var ar=qt.length;switch(Be.type){case Ba:case Ko:case Qo:case Hi:var Qr=W.allocType(Be.type,ar);Qr.set(qt),Be.data=Qr;break;case fo:Be.data=Ti(qt);break;default:}}function Wa(Be,qt){return W.allocType(Be.type===fo?Hi:Be.type,qt)}function Ao(Be,qt){Be.type===fo?(Be.data=Ti(qt),W.freeType(qt)):Be.data=qt}function ts(Be,qt,ar,Qr,yi,ci){for(var vi=Be.width,on=Be.height,Bn=Be.channels,Ln=vi*on*Bn,wn=Wa(Be,Ln),Ls=0,ua=0;ua=1;)on+=vi*Bn*Bn,Bn/=2;return on}else return vi*ar*Qr}function qa(Be,qt,ar,Qr,yi,ci,vi){var on={"don't care":qs,"dont care":qs,nice:Oa,fast:Ns},Bn={repeat:vn,clamp:da,mirror:la},Ln={nearest:ps,linear:co},wn=e({mipmap:Go,"nearest mipmap nearest":mo,"linear mipmap nearest":No,"nearest mipmap linear":jn,"linear mipmap linear":Go},Ln),Ls={none:0,browser:wo},ua={uint8:Ba,rgba4:Yo,rgb565:kn,"rgb5 a1":fa},Hn={alpha:Ga,luminance:oa,"luminance alpha":ka,rgb:ma,rgba:Un,rgba4:so,"rgb5 a1":Kr,rgb565:Ia},qi={};qt.ext_srgb&&(Hn.srgb=ls,Hn.srgba=$a),qt.oes_texture_float&&(ua.float32=ua.float=Hi),qt.oes_texture_half_float&&(ua.float16=ua["half float"]=fo),qt.webgl_depth_texture&&(e(Hn,{depth:ys,"depth stencil":uo}),e(ua,{uint16:Ko,uint32:Qo,"depth stencil":Aa})),qt.webgl_compressed_texture_s3tc&&e(qi,{"rgb s3tc dxt1":mn,"rgba s3tc dxt1":ra,"rgba s3tc dxt3":wa,"rgba s3tc dxt5":ws}),qt.webgl_compressed_texture_atc&&e(qi,{"rgb atc":Co,"rgba atc explicit alpha":Po,"rgba atc interpolated alpha":Wi}),qt.webgl_compressed_texture_pvrtc&&e(qi,{"rgb pvrtc 4bppv1":gn,"rgb pvrtc 2bppv1":Ps,"rgba pvrtc 4bppv1":Ha,"rgba pvrtc 2bppv1":Sn}),qt.webgl_compressed_texture_etc1&&(qi["rgb etc1"]=ao);var Wr=Array.prototype.slice.call(Be.getParameter(ii));Object.keys(qi).forEach(function(ne){var Le=qi[ne];Wr.indexOf(Le)>=0&&(Hn[ne]=Le)});var xi=Object.keys(Hn);ar.textureFormats=xi;var dn=[];Object.keys(Hn).forEach(function(ne){var Le=Hn[ne];dn[Le]=ne});var En=[];Object.keys(ua).forEach(function(ne){var Le=ua[ne];En[Le]=ne});var Zi=[];Object.keys(Ln).forEach(function(ne){var Le=Ln[ne];Zi[Le]=ne});var ga=[];Object.keys(wn).forEach(function(ne){var Le=wn[ne];ga[Le]=ne});var Kn=[];Object.keys(Bn).forEach(function(ne){var Le=Bn[ne];Kn[Le]=ne});var hs=xi.reduce(function(ne,Le){var Ze=Hn[Le];return Ze===oa||Ze===Ga||Ze===oa||Ze===ka||Ze===ys||Ze===uo||qt.ext_srgb&&(Ze===ls||Ze===$a)?ne[Ze]=Ze:Ze===Kr||Le.indexOf("rgba")>=0?ne[Ze]=Un:ne[Ze]=ma,ne},{});function Ji(){this.internalformat=Un,this.format=Un,this.type=Ba,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=wo,this.width=0,this.height=0,this.channels=0}function Ui(ne,Le){ne.internalformat=Le.internalformat,ne.format=Le.format,ne.type=Le.type,ne.compressed=Le.compressed,ne.premultiplyAlpha=Le.premultiplyAlpha,ne.flipY=Le.flipY,ne.unpackAlignment=Le.unpackAlignment,ne.colorSpace=Le.colorSpace,ne.width=Le.width,ne.height=Le.height,ne.channels=Le.channels}function ro(ne,Le){if(!(typeof Le!="object"||!Le)){if("premultiplyAlpha"in Le&&(ne.premultiplyAlpha=Le.premultiplyAlpha),"flipY"in Le&&(ne.flipY=Le.flipY),"alignment"in Le&&(ne.unpackAlignment=Le.alignment),"colorSpace"in Le&&(ne.colorSpace=Ls[Le.colorSpace]),"type"in Le){var Ze=Le.type;ne.type=ua[Ze]}var kt=ne.width,dr=ne.height,Mr=ne.channels,lr=!1;"shape"in Le?(kt=Le.shape[0],dr=Le.shape[1],Le.shape.length===3&&(Mr=Le.shape[2],lr=!0)):("radius"in Le&&(kt=dr=Le.radius),"width"in Le&&(kt=Le.width),"height"in Le&&(dr=Le.height),"channels"in Le&&(Mr=Le.channels,lr=!0)),ne.width=kt|0,ne.height=dr|0,ne.channels=Mr|0;var $e=!1;if("format"in Le){var ht=Le.format,bt=ne.internalformat=Hn[ht];ne.format=hs[bt],ht in ua&&("type"in Le||(ne.type=ua[ht])),ht in qi&&(ne.compressed=!0),$e=!0}!lr&&$e?ne.channels=$n[ne.format]:lr&&!$e&&ne.channels!==un[ne.format]&&(ne.format=ne.internalformat=un[ne.channels])}}function na(ne){Be.pixelStorei(Ya,ne.flipY),Be.pixelStorei(_n,ne.premultiplyAlpha),Be.pixelStorei(Vn,ne.colorSpace),Be.pixelStorei(Vs,ne.unpackAlignment)}function On(){Ji.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function In(ne,Le){var Ze=null;if(Es(Le)?Ze=Le:Le&&(ro(ne,Le),"x"in Le&&(ne.xOffset=Le.x|0),"y"in Le&&(ne.yOffset=Le.y|0),Es(Le.data)&&(Ze=Le.data)),Le.copy){var kt=yi.viewportWidth,dr=yi.viewportHeight;ne.width=ne.width||kt-ne.xOffset,ne.height=ne.height||dr-ne.yOffset,ne.needsCopy=!0}else if(!Ze)ne.width=ne.width||1,ne.height=ne.height||1,ne.channels=ne.channels||4;else if(yr(Ze))ne.channels=ne.channels||4,ne.data=Ze,!("type"in Le)&&ne.type===Ba&&(ne.type=As(Ze));else if(Pa(Ze))ne.channels=ne.channels||4,Ho(ne,Ze),ne.alignment=1,ne.needsFree=!0;else if(Ut(Ze)){var Mr=Ze.data;!Array.isArray(Mr)&&ne.type===Ba&&(ne.type=As(Mr));var lr=Ze.shape,$e=Ze.stride,ht,bt,Kt,sr,Qt,ur;lr.length===3?(Kt=lr[2],ur=$e[2]):(Kt=1,ur=1),ht=lr[0],bt=lr[1],sr=$e[0],Qt=$e[1],ne.alignment=1,ne.width=ht,ne.height=bt,ne.channels=Kt,ne.format=ne.internalformat=un[Kt],ne.needsFree=!0,ts(ne,Mr,sr,Qt,ur,Ze.offset)}else if(Jo(Ze)||To(Ze)||Dn(Ze))Jo(Ze)||To(Ze)?ne.element=Ze:ne.element=Ze.canvas,ne.width=ne.element.width,ne.height=ne.element.height,ne.channels=4;else if(_a(Ze))ne.element=Ze,ne.width=Ze.width,ne.height=Ze.height,ne.channels=4;else if(Ws(Ze))ne.element=Ze,ne.width=Ze.naturalWidth,ne.height=Ze.naturalHeight,ne.channels=4;else if(Ca(Ze))ne.element=Ze,ne.width=Ze.videoWidth,ne.height=Ze.videoHeight,ne.channels=4;else if(to(Ze)){var er=ne.width||Ze[0].length,Ot=ne.height||Ze.length,Jt=ne.channels;en(Ze[0][0])?Jt=Jt||Ze[0][0].length:Jt=Jt||1;for(var Lt=xe.shape(Ze),Ar=1,Ur=0;Ur>=dr,Ze.height>>=dr,In(Ze,kt[dr]),ne.mipmask|=1<=0&&!("faces"in Le)&&(ne.genMipmaps=!0)}if("mag"in Le){var kt=Le.mag;ne.magFilter=Ln[kt]}var dr=ne.wrapS,Mr=ne.wrapT;if("wrap"in Le){var lr=Le.wrap;typeof lr=="string"?dr=Mr=Bn[lr]:Array.isArray(lr)&&(dr=Bn[lr[0]],Mr=Bn[lr[1]])}else{if("wrapS"in Le){var $e=Le.wrapS;dr=Bn[$e]}if("wrapT"in Le){var ht=Le.wrapT;Mr=Bn[ht]}}if(ne.wrapS=dr,ne.wrapT=Mr,"anisotropic"in Le){var bt=Le.anisotropic;ne.anisotropic=Le.anisotropic}if("mipmap"in Le){var Kt=!1;switch(typeof Le.mipmap){case"string":ne.mipmapHint=on[Le.mipmap],ne.genMipmaps=!0,Kt=!0;break;case"boolean":Kt=ne.genMipmaps=Le.mipmap;break;case"object":ne.genMipmaps=!1,Kt=!0;break;default:}Kt&&!("min"in Le)&&(ne.minFilter=mo)}}function xf(ne,Le){Be.texParameteri(Le,Ts,ne.minFilter),Be.texParameteri(Le,vo,ne.magFilter),Be.texParameteri(Le,Sa,ne.wrapS),Be.texParameteri(Le,Qa,ne.wrapT),qt.ext_texture_filter_anisotropic&&Be.texParameteri(Le,ha,ne.anisotropic),ne.genMipmaps&&(Be.hint(Ys,ne.mipmapHint),Be.generateMipmap(Le))}var Cf=0,Gu={},cf=ar.maxTextureUnits,mf=Array(cf).map(function(){return null});function Fl(ne){Ji.call(this),this.mipmask=0,this.internalformat=Un,this.id=Cf++,this.refCount=1,this.target=ne,this.texture=Be.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new Cu,vi.profile&&(this.stats={size:0})}function bf(ne){Be.activeTexture(Ra),Be.bindTexture(ne.target,ne.texture)}function cu(){var ne=mf[0];ne?Be.bindTexture(ne.target,ne.texture):Be.bindTexture(Xi,null)}function Y(ne){var Le=ne.texture,Ze=ne.unit,kt=ne.target;Ze>=0&&(Be.activeTexture(Ra+Ze),Be.bindTexture(kt,null),mf[Ze]=null),Be.deleteTexture(Le),ne.texture=null,ne.params=null,ne.pixels=null,ne.refCount=0,delete Gu[ne.id],ci.textureCount--}e(Fl.prototype,{bind:function(){var ne=this;ne.bindCount+=1;var Le=ne.unit;if(Le<0){for(var Ze=0;Ze0)continue;kt.unit=-1}mf[Ze]=ne,Le=Ze;break}Le>=cf,vi.profile&&ci.maxTextureUnits>Qt)-Kt,ur.height=ur.height||(Ze.height>>Qt)-sr,bf(Ze),_s(ur,Xi,Kt,sr,Qt),cu(),Mo(ur),kt}function Mr(lr,$e){var ht=lr|0,bt=$e|0||ht;if(ht===Ze.width&&bt===Ze.height)return kt;kt.width=Ze.width=ht,kt.height=Ze.height=bt,bf(Ze);for(var Kt=0;Ze.mipmask>>Kt;++Kt){var sr=ht>>Kt,Qt=bt>>Kt;if(!sr||!Qt)break;Be.texImage2D(Xi,Kt,Ze.format,sr,Qt,0,Ze.format,Ze.type,null)}return cu(),vi.profile&&(Ze.stats.size=Wo(Ze.internalformat,Ze.type,ht,bt,!1,!1)),kt}return kt(ne,Le),kt.subimage=dr,kt.resize=Mr,kt._reglType="texture2d",kt._texture=Ze,vi.profile&&(kt.stats=Ze.stats),kt.destroy=function(){Ze.decRef()},kt}function J(ne,Le,Ze,kt,dr,Mr){var lr=new Fl(aa);Gu[lr.id]=lr,ci.cubeCount++;var $e=new Array(6);function ht(sr,Qt,ur,er,Ot,Jt){var Lt,Ar=lr.texInfo;for(Cu.call(Ar),Lt=0;Lt<6;++Lt)$e[Lt]=Ql();if(typeof sr=="number"||!sr){var Ur=sr|0||1;for(Lt=0;Lt<6;++Lt)pl($e[Lt],Ur,Ur)}else if(typeof sr=="object")if(Qt)Dl($e[0],sr),Dl($e[1],Qt),Dl($e[2],ur),Dl($e[3],er),Dl($e[4],Ot),Dl($e[5],Jt);else if(gf(Ar,sr),ro(lr,sr),"faces"in sr){var hi=sr.faces;for(Lt=0;Lt<6;++Lt)Ui($e[Lt],lr),Dl($e[Lt],hi[Lt])}else for(Lt=0;Lt<6;++Lt)Dl($e[Lt],sr);for(Ui(lr,$e[0]),Ar.genMipmaps?lr.mipmask=($e[0].width<<1)-1:lr.mipmask=$e[0].mipmask,lr.internalformat=$e[0].internalformat,ht.width=$e[0].width,ht.height=$e[0].height,bf(lr),Lt=0;Lt<6;++Lt)Fu($e[Lt],Mn+Lt);for(xf(Ar,aa),cu(),vi.profile&&(lr.stats.size=Wo(lr.internalformat,lr.type,ht.width,ht.height,Ar.genMipmaps,!0)),ht.format=dn[lr.internalformat],ht.type=En[lr.type],ht.mag=Zi[Ar.magFilter],ht.min=ga[Ar.minFilter],ht.wrapS=Kn[Ar.wrapS],ht.wrapT=Kn[Ar.wrapT],Lt=0;Lt<6;++Lt)Ef($e[Lt]);return ht}function bt(sr,Qt,ur,er,Ot){var Jt=ur|0,Lt=er|0,Ar=Ot|0,Ur=Qn();return Ui(Ur,lr),Ur.width=0,Ur.height=0,In(Ur,Qt),Ur.width=Ur.width||(lr.width>>Ar)-Jt,Ur.height=Ur.height||(lr.height>>Ar)-Lt,bf(lr),_s(Ur,Mn+sr,Jt,Lt,Ar),cu(),Mo(Ur),ht}function Kt(sr){var Qt=sr|0;if(Qt!==lr.width){ht.width=lr.width=Qt,ht.height=lr.height=Qt,bf(lr);for(var ur=0;ur<6;++ur)for(var er=0;lr.mipmask>>er;++er)Be.texImage2D(Mn+ur,er,lr.format,Qt>>er,Qt>>er,0,lr.format,lr.type,null);return cu(),vi.profile&&(lr.stats.size=Wo(lr.internalformat,lr.type,ht.width,ht.height,!1,!0)),ht}}return ht(ne,Le,Ze,kt,dr,Mr),ht.subimage=bt,ht.resize=Kt,ht._reglType="textureCube",ht._texture=lr,vi.profile&&(ht.stats=lr.stats),ht.destroy=function(){lr.decRef()},ht}function O(){for(var ne=0;ne>kt,Ze.height>>kt,0,Ze.internalformat,Ze.type,null);else for(var dr=0;dr<6;++dr)Be.texImage2D(Mn+dr,kt,Ze.internalformat,Ze.width>>kt,Ze.height>>kt,0,Ze.internalformat,Ze.type,null);xf(Ze.texInfo,Ze.target)})}function _e(){for(var ne=0;ne=0?Ef=!0:Bn.indexOf(Cu)>=0&&(Ef=!1))),("depthTexture"in Fl||"depthStencilTexture"in Fl)&&(mf=!!(Fl.depthTexture||Fl.depthStencilTexture)),"depth"in Fl&&(typeof Fl.depth=="boolean"?Fu=Fl.depth:(Cf=Fl.depth,vf=!1)),"stencil"in Fl&&(typeof Fl.stencil=="boolean"?vf=Fl.stencil:(Gu=Fl.stencil,Fu=!1)),"depthStencil"in Fl&&(typeof Fl.depthStencil=="boolean"?Fu=vf=Fl.depthStencil:(cf=Fl.depthStencil,Fu=!1,vf=!1))}var cu=null,Y=null,R=null,J=null;if(Array.isArray(Ql))cu=Ql.map(qi);else if(Ql)cu=[qi(Ql)];else for(cu=new Array(xf),nl=0;nl0&&(Mo.depth=In[0].depth,Mo.stencil=In[0].stencil,Mo.depthStencil=In[0].depthStencil),In[Qn]?In[Qn](Mo):In[Qn]=Ui(Mo)}return e(Va,{width:nl,height:nl,color:Cu})}function _s(ul){var Qn,Mo=ul|0;if(Mo===Va.width)return Va;var nl=Va.color;for(Qn=0;Qn=nl.byteLength?pl.subdata(nl):(pl.destroy(),Ui.buffers[ul]=null)),Ui.buffers[ul]||(pl=Ui.buffers[ul]=yi.create(Qn,Ss,!1,!0)),Mo.buffer=yi.getBuffer(pl),Mo.size=Mo.buffer.dimension|0,Mo.normalized=!1,Mo.type=Mo.buffer.dtype,Mo.offset=0,Mo.stride=0,Mo.divisor=0,Mo.state=1,Va[ul]=1}else yi.getBuffer(Qn)?(Mo.buffer=yi.getBuffer(Qn),Mo.size=Mo.buffer.dimension|0,Mo.normalized=!1,Mo.type=Mo.buffer.dtype,Mo.offset=0,Mo.stride=0,Mo.divisor=0,Mo.state=1):yi.getBuffer(Qn.buffer)?(Mo.buffer=yi.getBuffer(Qn.buffer),Mo.size=(+Qn.size||Mo.buffer.dimension)|0,Mo.normalized=!!Qn.normalized||!1,"type"in Qn?Mo.type=pi[Qn.type]:Mo.type=Mo.buffer.dtype,Mo.offset=(Qn.offset||0)|0,Mo.stride=(Qn.stride||0)|0,Mo.divisor=(Qn.divisor||0)|0,Mo.state=1):"x"in Qn&&(Mo.x=+Qn.x||0,Mo.y=+Qn.y||0,Mo.z=+Qn.z||0,Mo.w=+Qn.w||0,Mo.state=2)}for(var Dl=0;Dl1)for(var na=0;naWr&&(Wr=xi.stats.uniformsCount)}),Wr},ar.getMaxAttributesCount=function(){var Wr=0;return wn.forEach(function(xi){xi.stats.attributesCount>Wr&&(Wr=xi.stats.attributesCount)}),Wr});function qi(){yi={},ci={};for(var Wr=0;Wr16&&(ar=Pi(ar,Be.length*8));for(var Qr=Array(16),yi=Array(16),ci=0;ci<16;ci++)Qr[ci]=ar[ci]^909522486,yi[ci]=ar[ci]^1549556828;var vi=Pi(Qr.concat(Bs(qt)),512+qt.length*8);return At(Pi(yi.concat(vi),768))}function Ms(Be){for(var qt=Ro?"0123456789ABCDEF":"0123456789abcdef",ar="",Qr,yi=0;yi>>4&15)+qt.charAt(Qr&15);return ar}function jo(Be){for(var qt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ar="",Qr=Be.length,yi=0;yiBe.length*8?ar+=tl:ar+=qt.charAt(ci>>>6*(3-vi)&63);return ar}function Rs(Be,qt){var ar=qt.length,Qr=Array(),yi,ci,vi,on,Bn=Array(Math.ceil(Be.length/2));for(yi=0;yi0;){for(on=Array(),vi=0,yi=0;yi0||ci>0)&&(on[on.length]=ci);Qr[Qr.length]=vi,Bn=on}var Ln="";for(yi=Qr.length-1;yi>=0;yi--)Ln+=qt.charAt(Qr[yi]);var wn=Math.ceil(Be.length*8/(Math.log(qt.length)/Math.log(2)));for(yi=Ln.length;yi>>6&31,128|Qr&63):Qr<=65535?qt+=String.fromCharCode(224|Qr>>>12&15,128|Qr>>>6&63,128|Qr&63):Qr<=2097151&&(qt+=String.fromCharCode(240|Qr>>>18&7,128|Qr>>>12&63,128|Qr>>>6&63,128|Qr&63));return qt}function Bs(Be){for(var qt=Array(Be.length>>2),ar=0;ar>5]|=(Be.charCodeAt(ar/8)&255)<<24-ar%32;return qt}function At(Be){for(var qt="",ar=0;ar>5]>>>24-ar%32&255);return qt}function Vt(Be,qt){return Be>>>qt|Be<<32-qt}function wr(Be,qt){return Be>>>qt}function mr(Be,qt,ar){return Be&qt^~Be&ar}function Fr(Be,qt,ar){return Be&qt^Be&ar^qt&ar}function _i(Be){return Vt(Be,2)^Vt(Be,13)^Vt(Be,22)}function Si(Be){return Vt(Be,6)^Vt(Be,11)^Vt(Be,25)}function Ci(Be){return Vt(Be,7)^Vt(Be,18)^wr(Be,3)}function Ki(Be){return Vt(Be,17)^Vt(Be,19)^wr(Be,10)}var Fn=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function Pi(Be,qt){var ar=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),Qr=new Array(64),yi,ci,vi,on,Bn,Ln,wn,Ls,ua,Hn,qi,Wr;for(Be[qt>>5]|=128<<24-qt%32,Be[(qt+64>>9<<4)+15]=qt,ua=0;ua>16)+(qt>>16)+(ar>>16);return Qr<<16|ar&65535}function Li(Be){return Array.prototype.slice.call(Be)}function Mi(Be){return Li(Be).join("")}function Gn(Be){var qt=Be&&Be.cache,ar=0,Qr=[],yi=[],ci=[];function vi(qi,Wr){var xi=Wr&&Wr.stable;if(!xi){for(var dn=0;dn0&&(qi.push(En,"="),qi.push.apply(qi,Li(arguments)),qi.push(";")),En}return e(Wr,{def:dn,toString:function(){return Mi([xi.length>0?"var "+xi.join(",")+";":"",Mi(qi)])}})}function Bn(){var qi=on(),Wr=on(),xi=qi.toString,dn=Wr.toString;function En(Zi,ga){Wr(Zi,ga,"=",qi.def(Zi,ga),";")}return e(function(){qi.apply(qi,Li(arguments))},{def:qi.def,entry:qi,exit:Wr,save:En,set:function(Zi,ga,Kn){En(Zi,ga),qi(Zi,ga,"=",Kn,";")},toString:function(){return xi()+dn()}})}function Ln(){var qi=Mi(arguments),Wr=Bn(),xi=Bn(),dn=Wr.toString,En=xi.toString;return e(Wr,{then:function(){return Wr.apply(Wr,Li(arguments)),this},else:function(){return xi.apply(xi,Li(arguments)),this},toString:function(){var Zi=En();return Zi&&(Zi="else{"+Zi+"}"),Mi(["if(",qi,"){",dn(),"}",Zi])}})}var wn=on(),Ls={};function ua(qi,Wr){var xi=[];function dn(){var hs="a"+xi.length;return xi.push(hs),hs}Wr=Wr||0;for(var En=0;En[v.viewport.x,v.viewport.y,b.viewportWidth,b.viewportHeight]},attributes:{color:{buffer:o,offset:(b,v)=>v.offset*4,divisor:1},position:{buffer:i,offset:(b,v)=>v.offset*8,divisor:1},positionFract:{buffer:a,offset:(b,v)=>v.offset*8,divisor:1},error:{buffer:s,offset:(b,v)=>v.offset*16,divisor:1},direction:{buffer:u,stride:24,offset:0},lineOffset:{buffer:u,stride:24,offset:8},capOffset:{buffer:u,stride:24,offset:16}},primitive:"triangles",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport"),stencil:!1,instances:e.prop("count"),count:kqe.length}),Mqe(c,{update:p,draw:h,destroy:_,regl:e,gl:r,canvas:r.canvas,groups:f}),c;function c(b){b?p(b):b===null&&_(),h()}function h(b){if(typeof b=="number")return d(b);b&&!Array.isArray(b)&&(b=[b]),e._refresh(),f.forEach((v,k)=>{if(v){if(b&&(b[k]?v.draw=!0:v.draw=!1),!v.draw){v.draw=!0;return}d(k)}})}function d(b){typeof b=="number"&&(b=f[b]),b!=null&&b&&b.count&&b.color&&b.opacity&&b.positions&&b.positions.length>1&&(b.scaleRatio=[b.scale[0]*b.viewport.width,b.scale[1]*b.viewport.height],n(b),b.after&&b.after(b))}function p(b){if(!b)return;b.length!=null?typeof b[0]=="number"&&(b=[{positions:b}]):Array.isArray(b)||(b=[b]);let v=0,k=0;if(c.groups=f=b.map((L,x)=>{let C=f[x];if(L)typeof L=="function"?L={after:L}:typeof L[0]=="number"&&(L={positions:L});else return C;return L=gUt(L,{color:"color colors fill",capSize:"capSize cap capsize cap-size",lineWidth:"lineWidth line-width width line thickness",opacity:"opacity alpha",range:"range dataBox",viewport:"viewport viewBox",errors:"errors error",positions:"positions position data points"}),C||(f[x]=C={id:x,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},L=Mqe({},l,L)),yUt(C,L,[{lineWidth:M=>+M*.5,capSize:M=>+M*.5,opacity:parseFloat,errors:M=>(M=Eqe(M),k+=M.length,M),positions:(M,m)=>(M=Eqe(M,"float64"),m.count=Math.floor(M.length/2),m.bounds=vUt(M,2),m.offset=v,v+=m.count,M)},{color:(M,m)=>{let P=m.count;if(M||(M="transparent"),!Array.isArray(M)||typeof M[0]=="number"){let B=M;M=Array(P);for(let F=0;F{let T=m.bounds;return M||(M=T),m.scale=[1/(M[2]-M[0]),1/(M[3]-M[1])],m.translate=[-M[0],-M[1]],m.scaleFract=eK(m.scale),m.translateFract=eK(m.translate),M},viewport:M=>{let m;return Array.isArray(M)?m={x:M[0],y:M[1],width:M[2]-M[0],height:M[3]-M[1]}:M?(m={x:M.x||M.left||0,y:M.y||M.top||0},M.right?m.width=M.right-m.x:m.width=M.w||M.width||0,M.bottom?m.height=M.bottom-m.y:m.height=M.h||M.height||0):m={x:0,y:0,width:r.drawingBufferWidth,height:r.drawingBufferHeight},m}}]),C}),v||k){let L=f.reduce((m,P,T)=>m+(P?P.count:0),0),x=new Float64Array(L*2),C=new Uint8Array(L*4),M=new Float32Array(L*4);f.forEach((m,P)=>{if(!m)return;let{positions:T,count:B,offset:F,color:U,errors:G}=m;B&&(C.set(U,F*4),M.set(G,F*4),x.set(T,F*2))});var E=_Ut(x);i(E);var A=eK(x,E);a(A),o(C),s(M)}}function _(){i.destroy(),a.destroy(),o.destroy(),s.destroy(),u.destroy()}}});var Iqe=Ae((pxr,zqe)=>{var Pqe=/[\'\"]/;zqe.exports=function(t){return t?(Pqe.test(t.charAt(0))&&(t=t.substr(1)),Pqe.test(t.charAt(t.length-1))&&(t=t.substr(0,t.length-1)),t):""}});var tK=Ae((vxr,bUt)=>{bUt.exports=["inherit","initial","unset"]});var rK=Ae((mxr,wUt)=>{wUt.exports=["caption","icon","menu","message-box","small-caption","status-bar"]});var iK=Ae((yxr,TUt)=>{TUt.exports=["normal","bold","bolder","lighter","100","200","300","400","500","600","700","800","900"]});var nK=Ae((gxr,AUt)=>{AUt.exports=["normal","italic","oblique"]});var aK=Ae((_xr,SUt)=>{SUt.exports=["normal","condensed","semi-condensed","extra-condensed","ultra-condensed","expanded","semi-expanded","extra-expanded","ultra-expanded"]});var Bqe=Ae((xxr,Fqe)=>{"use strict";function Rqe(e,t){if(typeof e!="string")return[e];var r=[e];typeof t=="string"||Array.isArray(t)?t={brackets:t}:t||(t={});var n=t.brackets?Array.isArray(t.brackets)?t.brackets:[t.brackets]:["{}","[]","()"],i=t.escape||"___",a=!!t.flat;n.forEach(function(u){var l=new RegExp(["\\",u[0],"[^\\",u[0],"\\",u[1],"]*\\",u[1]].join("")),f=[];function c(h,d,p){var _=r.push(h.slice(u[0].length,-u[1].length))-1;return f.push(_),i+_+i}r.forEach(function(h,d){for(var p,_=0;h!=p;)if(p=h,h=h.replace(l,c),_++>1e4)throw Error("References have circular dependency. Please, check them.");r[d]=h}),f=f.reverse(),r=r.map(function(h){return f.forEach(function(d){h=h.replace(new RegExp("(\\"+i+d+"\\"+i+")","g"),u[0]+"$1"+u[1])}),h})});var o=new RegExp("\\"+i+"([0-9]+)\\"+i);function s(u,l,f){for(var c=[],h,d=0;h=o.exec(u);){if(d++>1e4)throw Error("Circular references in parenthesis");c.push(u.slice(0,h.index)),c.push(s(l[h[1]],l)),u=u.slice(h.index+h[0].length)}return c.push(u),c}return a?r:s(r[0],r)}function Dqe(e,t){if(t&&t.flat){var r=t&&t.escape||"___",n=e[0],i;if(!n)return"";for(var a=new RegExp("\\"+r+"([0-9]+)\\"+r),o=0;n!=i;){if(o++>1e4)throw Error("Circular references in "+e);i=n,n=n.replace(a,s)}return n}return e.reduce(function u(l,f){return Array.isArray(f)&&(f=f.reduce(u,"")),l+f},"");function s(u,l){if(e[l]==null)throw Error("Reference "+l+"is undefined");return e[l]}}function oK(e,t){return Array.isArray(e)?Dqe(e,t):Rqe(e,t)}oK.parse=Rqe;oK.stringify=Dqe;Fqe.exports=oK});var Nqe=Ae((bxr,qqe)=>{"use strict";var Oqe=Bqe();qqe.exports=function(t,r,n){if(t==null)throw Error("First argument should be a string");if(r==null)throw Error("Separator should be a string or a RegExp");n?(typeof n=="string"||Array.isArray(n))&&(n={ignore:n}):n={},n.escape==null&&(n.escape=!0),n.ignore==null?n.ignore=["[]","()","{}","<>",'""',"''","``","\u201C\u201D","\xAB\xBB"]:(typeof n.ignore=="string"&&(n.ignore=[n.ignore]),n.ignore=n.ignore.map(function(c){return c.length===1&&(c=c+c),c}));var i=Oqe.parse(t,{flat:!0,brackets:n.ignore}),a=i[0],o=a.split(r);if(n.escape){for(var s=[],u=0;u{MUt.exports=["xx-small","x-small","small","medium","large","x-large","xx-large","larger","smaller"]});var sK=Ae((Txr,Vqe)=>{"use strict";var EUt=Uqe();Vqe.exports={isSize:function(t){return/^[\d\.]/.test(t)||t.indexOf("/")!==-1||EUt.indexOf(t)!==-1}}});var jqe=Ae((Axr,Wqe)=>{"use strict";var kUt=Iqe(),CUt=tK(),LUt=rK(),PUt=iK(),zUt=nK(),IUt=aK(),lK=Nqe(),RUt=sK().isSize;Wqe.exports=Hqe;var Tk=Hqe.cache={};function Hqe(e){if(typeof e!="string")throw new Error("Font argument must be a string.");if(Tk[e])return Tk[e];if(e==="")throw new Error("Cannot parse an empty string.");if(LUt.indexOf(e)!==-1)return Tk[e]={system:e};for(var t={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},r=lK(e,/\s+/),n;n=r.shift();){if(CUt.indexOf(n)!==-1)return["style","variant","weight","stretch"].forEach(function(a){t[a]=n}),Tk[e]=t;if(zUt.indexOf(n)!==-1){t.style=n;continue}if(n==="normal"||n==="small-caps"){t.variant=n;continue}if(IUt.indexOf(n)!==-1){t.stretch=n;continue}if(PUt.indexOf(n)!==-1){t.weight=n;continue}if(RUt(n)){var i=lK(n,"/");if(t.size=i[0],i[1]!=null?t.lineHeight=Gqe(i[1]):r[0]==="/"&&(r.shift(),t.lineHeight=Gqe(r.shift())),!r.length)throw new Error("Missing required font-family.");return t.family=lK(r.join(" "),/\s*,\s*/).map(kUt),Tk[e]=t}throw new Error("Unknown or unsupported font token: "+n)}throw new Error("Missing required font-size.")}function Gqe(e){var t=parseFloat(e);return t.toString()===e?t:e}});var fK=Ae((Sxr,Xqe)=>{"use strict";var DUt=Zy(),FUt=sK().isSize,BUt=Sk(tK()),OUt=Sk(rK()),qUt=Sk(iK()),NUt=Sk(nK()),UUt=Sk(aK()),VUt={normal:1,"small-caps":1},GUt={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},uK={style:"normal",variant:"normal",weight:"normal",stretch:"normal",size:"1rem",lineHeight:"normal",family:"serif"};Xqe.exports=function(t){if(t=DUt(t,{style:"style fontstyle fontStyle font-style slope distinction",variant:"variant font-variant fontVariant fontvariant var capitalization",weight:"weight w font-weight fontWeight fontweight",stretch:"stretch font-stretch fontStretch fontstretch width",size:"size s font-size fontSize fontsize height em emSize",lineHeight:"lh line-height lineHeight lineheight leading",family:"font family fontFamily font-family fontfamily type typeface face",system:"system reserved default global"}),t.system)return t.system&&Ak(t.system,OUt),t.system;if(Ak(t.style,NUt),Ak(t.variant,VUt),Ak(t.weight,qUt),Ak(t.stretch,UUt),t.size==null&&(t.size=uK.size),typeof t.size=="number"&&(t.size+="px"),!FUt)throw Error("Bad size value `"+t.size+"`");t.family||(t.family=uK.family),Array.isArray(t.family)&&(t.family.length||(t.family=[uK.family]),t.family=t.family.map(function(n){return GUt[n]?n:'"'+n+'"'}).join(", "));var r=[];return r.push(t.style),t.variant!==t.style&&r.push(t.variant),t.weight!==t.variant&&t.weight!==t.style&&r.push(t.weight),t.stretch!==t.weight&&t.stretch!==t.variant&&t.stretch!==t.style&&r.push(t.stretch),r.push(t.size+(t.lineHeight==null||t.lineHeight==="normal"||t.lineHeight+""=="1"?"":"/"+t.lineHeight)),r.push(t.family),r.filter(Boolean).join(" ")};function Ak(e,t){if(e&&!t[e]&&!BUt[e])throw Error("Unknown keyword `"+e+"`");return e}function Sk(e){for(var t={},r=0;r{"use strict";Zqe.exports={parse:jqe(),stringify:fK()}});var Kqe=Ae((cK,hK)=>{(function(e,t){typeof cK=="object"&&typeof hK!="undefined"?hK.exports=t():e.createREGL=t()})(cK,function(){"use strict";var e=function(Be,qt){for(var ar=Object.keys(qt),Qr=0;Qr1&&qt===ar&&(qt==='"'||qt==="'"))return['"'+o(Be.substr(1,Be.length-2))+'"'];var Qr=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Be);if(Qr)return s(Be.substr(0,Qr.index)).concat(s(Qr[1])).concat(s(Be.substr(Qr.index+Qr[0].length)));var yi=Be.split(".");if(yi.length===1)return['"'+o(Be)+'"'];for(var ci=[],vi=0;vi65535)<<4,Be>>>=qt,ar=(Be>255)<<3,Be>>>=ar,qt|=ar,ar=(Be>15)<<2,Be>>>=ar,qt|=ar,ar=(Be>3)<<1,Be>>>=ar,qt|=ar,qt|Be>>1}function N(){var Be=M(8,function(){return[]});function qt(ci){var vi=j(ci),on=Be[W(vi)>>2];return on.length>0?on.pop():new ArrayBuffer(vi)}function ar(ci){Be[W(ci.byteLength)>>2].push(ci)}function Qr(ci,vi){var on=null;switch(ci){case m:on=new Int8Array(qt(vi),0,vi);break;case P:on=new Uint8Array(qt(vi),0,vi);break;case T:on=new Int16Array(qt(2*vi),0,vi);break;case B:on=new Uint16Array(qt(2*vi),0,vi);break;case F:on=new Int32Array(qt(4*vi),0,vi);break;case U:on=new Uint32Array(qt(4*vi),0,vi);break;case G:on=new Float32Array(qt(4*vi),0,vi);break;default:return null}return on.length!==vi?on.subarray(0,vi):on}function yi(ci){ar(ci.buffer)}return{alloc:qt,free:ar,allocType:Qr,freeType:yi}}var H=N();H.zero=N();var re=3408,ae=3410,be=3411,ze=3412,Ce=3413,de=3414,te=3415,ke=33901,Ee=33902,Me=3379,Ue=3386,De=34921,ye=36347,qe=36348,ce=35661,Je=35660,nt=34930,gt=36349,Nt=34076,at=34024,Ke=7936,Ct=7937,wt=7938,St=35724,Dt=34047,Zt=36063,Et=34852,Te=3553,ot=34067,Tt=34069,vt=33984,Ye=6408,He=5126,it=5121,et=36160,It=36053,Yt=36064,cr=16384,_r=function(Be,qt){var ar=1;qt.ext_texture_filter_anisotropic&&(ar=Be.getParameter(Dt));var Qr=1,yi=1;qt.webgl_draw_buffers&&(Qr=Be.getParameter(Et),yi=Be.getParameter(Zt));var ci=!!qt.oes_texture_float;if(ci){var vi=Be.createTexture();Be.bindTexture(Te,vi),Be.texImage2D(Te,0,Ye,1,1,0,Ye,He,null);var on=Be.createFramebuffer();if(Be.bindFramebuffer(et,on),Be.framebufferTexture2D(et,Yt,Te,vi,0),Be.bindTexture(Te,null),Be.checkFramebufferStatus(et)!==It)ci=!1;else{Be.viewport(0,0,1,1),Be.clearColor(1,0,0,1),Be.clear(cr);var Bn=H.allocType(He,4);Be.readPixels(0,0,1,1,Ye,He,Bn),Be.getError()?ci=!1:(Be.deleteFramebuffer(on),Be.deleteTexture(vi),ci=Bn[0]===1),H.freeType(Bn)}}var Ln=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),wn=!0;if(!Ln){var Ls=Be.createTexture(),ua=H.allocType(it,36);Be.activeTexture(vt),Be.bindTexture(ot,Ls),Be.texImage2D(Tt,0,Ye,3,3,0,Ye,it,ua),H.freeType(ua),Be.bindTexture(ot,null),Be.deleteTexture(Ls),wn=!Be.getError()}return{colorBits:[Be.getParameter(ae),Be.getParameter(be),Be.getParameter(ze),Be.getParameter(Ce)],depthBits:Be.getParameter(de),stencilBits:Be.getParameter(te),subpixelBits:Be.getParameter(re),extensions:Object.keys(qt).filter(function(Hn){return!!qt[Hn]}),maxAnisotropic:ar,maxDrawbuffers:Qr,maxColorAttachments:yi,pointSizeDims:Be.getParameter(ke),lineWidthDims:Be.getParameter(Ee),maxViewportDims:Be.getParameter(Ue),maxCombinedTextureUnits:Be.getParameter(ce),maxCubeMapSize:Be.getParameter(Nt),maxRenderbufferSize:Be.getParameter(at),maxTextureUnits:Be.getParameter(nt),maxTextureSize:Be.getParameter(Me),maxAttributes:Be.getParameter(De),maxVertexUniforms:Be.getParameter(ye),maxVertexTextureUnits:Be.getParameter(Je),maxVaryingVectors:Be.getParameter(qe),maxFragmentUniforms:Be.getParameter(gt),glsl:Be.getParameter(St),renderer:Be.getParameter(Ct),vendor:Be.getParameter(Ke),version:Be.getParameter(wt),readFloat:ci,npotTextureCube:wn}},yr=function(Be){return Be instanceof Uint8Array||Be instanceof Uint16Array||Be instanceof Uint32Array||Be instanceof Int8Array||Be instanceof Int16Array||Be instanceof Int32Array||Be instanceof Float32Array||Be instanceof Float64Array||Be instanceof Uint8ClampedArray};function Ut(Be){return!!Be&&typeof Be=="object"&&Array.isArray(Be.shape)&&Array.isArray(Be.stride)&&typeof Be.offset=="number"&&Be.shape.length===Be.stride.length&&(Array.isArray(Be.data)||yr(Be.data))}var Re=function(Be){return Object.keys(Be).map(function(qt){return Be[qt]})},xe={shape:fe,flatten:ge};function Oe(Be,qt,ar){for(var Qr=0;Qr0){var hs;if(Array.isArray(xi[0])){Kn=si(xi);for(var Ji=1,Ui=1;Ui0){if(typeof Ji[0]=="number"){var On=H.allocType(Zi.dtype,Ji.length);xr(On,Ji),Kn(On,ro),H.freeType(On)}else if(Array.isArray(Ji[0])||yr(Ji[0])){na=si(Ji);var In=Qi(Ji,na,Zi.dtype);Kn(In,ro),H.freeType(In)}}}else if(Ut(Ji)){na=Ji.shape;var Va=Ji.stride,_s=0,ul=0,Qn=0,Mo=0;na.length===1?(_s=na[0],ul=1,Qn=Va[0],Mo=0):na.length===2&&(_s=na[0],ul=na[1],Qn=Va[0],Mo=Va[1]);var nl=Array.isArray(Ji.data)?Zi.dtype:Wt(Ji.data),pl=H.allocType(nl,_s*ul);Lr(pl,Ji.data,_s,ul,Qn,Mo,Ji.offset),Kn(pl,ro),H.freeType(pl)}return ga}return dn||ga(Wr),ga._reglType="buffer",ga._buffer=Zi,ga.subdata=hs,ar.profile&&(ga.stats=Zi.stats),ga.destroy=function(){ua(Zi)},ga}function qi(){Re(ci).forEach(function(Wr){Wr.buffer=Be.createBuffer(),Be.bindBuffer(Wr.type,Wr.buffer),Be.bufferData(Wr.type,Wr.persistentData||Wr.byteLength,Wr.usage)})}return ar.profile&&(qt.getTotalBufferSize=function(){var Wr=0;return Object.keys(ci).forEach(function(xi){Wr+=ci[xi].stats.size}),Wr}),{create:Hn,createStream:Bn,destroyStream:Ln,clear:function(){Re(ci).forEach(ua),on.forEach(ua)},getBuffer:function(Wr){return Wr&&Wr._buffer instanceof vi?Wr._buffer:null},restore:qi,_initBuffer:Ls}}var Or=0,Hr=0,jr=1,gi=1,ki=4,Vi=4,ti={points:Or,point:Hr,lines:jr,line:gi,triangles:ki,triangle:Vi,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},tn=0,Yr=1,oi=4,Fi=5120,an=5121,nn=5122,Ri=5123,Ii=5124,xn=5125,bi=34963,Xr=35040,ct=35044;function tr(Be,qt,ar,Qr){var yi={},ci=0,vi={uint8:an,uint16:Ri};qt.oes_element_index_uint&&(vi.uint32=xn);function on(qi){this.id=ci++,yi[this.id]=this,this.buffer=qi,this.primType=oi,this.vertCount=0,this.type=0}on.prototype.bind=function(){this.buffer.bind()};var Bn=[];function Ln(qi){var Wr=Bn.pop();return Wr||(Wr=new on(ar.create(null,bi,!0,!1)._buffer)),Ls(Wr,qi,Xr,-1,-1,0,0),Wr}function wn(qi){Bn.push(qi)}function Ls(qi,Wr,xi,dn,En,Zi,ga){qi.buffer.bind();var Kn;if(Wr){var hs=ga;!ga&&(!yr(Wr)||Ut(Wr)&&!yr(Wr.data))&&(hs=qt.oes_element_index_uint?xn:Ri),ar._initBuffer(qi.buffer,Wr,xi,hs,3)}else Be.bufferData(bi,Zi,xi),qi.buffer.dtype=Kn||an,qi.buffer.usage=xi,qi.buffer.dimension=3,qi.buffer.byteLength=Zi;if(Kn=ga,!ga){switch(qi.buffer.dtype){case an:case Fi:Kn=an;break;case Ri:case nn:Kn=Ri;break;case xn:case Ii:Kn=xn;break;default:}qi.buffer.dtype=Kn}qi.type=Kn;var Ji=En;Ji<0&&(Ji=qi.buffer.byteLength,Kn===Ri?Ji>>=1:Kn===xn&&(Ji>>=2)),qi.vertCount=Ji;var Ui=dn;if(dn<0){Ui=oi;var ro=qi.buffer.dimension;ro===1&&(Ui=tn),ro===2&&(Ui=Yr),ro===3&&(Ui=oi)}qi.primType=Ui}function ua(qi){Qr.elementsCount--,delete yi[qi.id],qi.buffer.destroy(),qi.buffer=null}function Hn(qi,Wr){var xi=ar.create(null,bi,!0),dn=new on(xi._buffer);Qr.elementsCount++;function En(Zi){if(!Zi)xi(),dn.primType=oi,dn.vertCount=0,dn.type=an;else if(typeof Zi=="number")xi(Zi),dn.primType=oi,dn.vertCount=Zi|0,dn.type=an;else{var ga=null,Kn=ct,hs=-1,Ji=-1,Ui=0,ro=0;Array.isArray(Zi)||yr(Zi)||Ut(Zi)?ga=Zi:("data"in Zi&&(ga=Zi.data),"usage"in Zi&&(Kn=$i[Zi.usage]),"primitive"in Zi&&(hs=ti[Zi.primitive]),"count"in Zi&&(Ji=Zi.count|0),"type"in Zi&&(ro=vi[Zi.type]),"length"in Zi?Ui=Zi.length|0:(Ui=Ji,ro===Ri||ro===nn?Ui*=2:(ro===xn||ro===Ii)&&(Ui*=4))),Ls(dn,ga,Kn,hs,Ji,Ui,ro)}return En}return En(qi),En._reglType="elements",En._elements=dn,En.subdata=function(Zi,ga){return xi.subdata(Zi,ga),En},En.destroy=function(){ua(dn)},En}return{create:Hn,createStream:Ln,destroyStream:wn,getElements:function(qi){return typeof qi=="function"&&qi._elements instanceof on?qi._elements:null},clear:function(){Re(yi).forEach(ua)}}}var pr=new Float32Array(1),gr=new Uint32Array(pr.buffer),Zr=5123;function Ti(Be){for(var qt=H.allocType(Zr,Be.length),ar=0;ar>>31<<15,ci=(Qr<<1>>>24)-127,vi=Qr>>13&1023;if(ci<-24)qt[ar]=yi;else if(ci<-14){var on=-14-ci;qt[ar]=yi+(vi+1024>>on)}else ci>15?qt[ar]=yi+31744:qt[ar]=yi+(ci+15<<10)+vi}return qt}function en(Be){return Array.isArray(Be)||yr(Be)}var ii=34467,Xi=3553,aa=34067,Mn=34069,Un=6408,Ga=6406,ma=6407,oa=6409,ka=6410,so=32854,Kr=32855,Ia=36194,Yo=32819,fa=32820,kn=33635,Aa=34042,ys=6402,uo=34041,ls=35904,$a=35906,fo=36193,mn=33776,ra=33777,wa=33778,ws=33779,Co=35986,Po=35987,Wi=34798,gn=35840,Ps=35841,Ha=35842,Sn=35843,ao=36196,Ba=5121,Ko=5123,Qo=5125,Hi=5126,Sa=10242,Qa=10243,vn=10497,da=33071,la=33648,vo=10240,Ts=10241,ps=9728,co=9729,mo=9984,No=9985,jn=9986,Go=9987,Ys=33170,qs=4352,Ns=4353,Oa=4354,ha=34046,Vs=3317,Ya=37440,_n=37441,Vn=37443,wo=37444,Ra=33984,Xn=[mo,jn,No,Go],un=[0,oa,ka,ma,Un],$n={};$n[oa]=$n[Ga]=$n[ys]=1,$n[uo]=$n[ka]=2,$n[ma]=$n[ls]=3,$n[Un]=$n[$a]=4;function Ka(Be){return"[object "+Be+"]"}var qn=Ka("HTMLCanvasElement"),Eo=Ka("OffscreenCanvas"),Ja=Ka("CanvasRenderingContext2D"),lo=Ka("ImageBitmap"),eo=Ka("HTMLImageElement"),sa=Ka("HTMLVideoElement"),es=Object.keys(pe).concat([qn,Eo,Ja,lo,eo,sa]),Na=[];Na[Ba]=1,Na[Hi]=4,Na[fo]=2,Na[Ko]=2,Na[Qo]=4;var rn=[];rn[so]=2,rn[Kr]=2,rn[Ia]=2,rn[uo]=4,rn[mn]=.5,rn[ra]=.5,rn[wa]=1,rn[ws]=1,rn[Co]=.5,rn[Po]=1,rn[Wi]=1,rn[gn]=.5,rn[Ps]=.25,rn[Ha]=.5,rn[Sn]=.25,rn[ao]=.5;function Pa(Be){return Array.isArray(Be)&&(Be.length===0||typeof Be[0]=="number")}function to(Be){if(!Array.isArray(Be))return!1;var qt=Be.length;return!(qt===0||!en(Be[0]))}function yo(Be){return Object.prototype.toString.call(Be)}function Jo(Be){return yo(Be)===qn}function To(Be){return yo(Be)===Eo}function Dn(Be){return yo(Be)===Ja}function _a(Be){return yo(Be)===lo}function Ws(Be){return yo(Be)===eo}function Ca(Be){return yo(Be)===sa}function Es(Be){if(!Be)return!1;var qt=yo(Be);return es.indexOf(qt)>=0?!0:Pa(Be)||to(Be)||Ut(Be)}function As(Be){return pe[Object.prototype.toString.call(Be)]|0}function Ho(Be,qt){var ar=qt.length;switch(Be.type){case Ba:case Ko:case Qo:case Hi:var Qr=H.allocType(Be.type,ar);Qr.set(qt),Be.data=Qr;break;case fo:Be.data=Ti(qt);break;default:}}function Wa(Be,qt){return H.allocType(Be.type===fo?Hi:Be.type,qt)}function Ao(Be,qt){Be.type===fo?(Be.data=Ti(qt),H.freeType(qt)):Be.data=qt}function ts(Be,qt,ar,Qr,yi,ci){for(var vi=Be.width,on=Be.height,Bn=Be.channels,Ln=vi*on*Bn,wn=Wa(Be,Ln),Ls=0,ua=0;ua=1;)on+=vi*Bn*Bn,Bn/=2;return on}else return vi*ar*Qr}function qa(Be,qt,ar,Qr,yi,ci,vi){var on={"don't care":qs,"dont care":qs,nice:Oa,fast:Ns},Bn={repeat:vn,clamp:da,mirror:la},Ln={nearest:ps,linear:co},wn=e({mipmap:Go,"nearest mipmap nearest":mo,"linear mipmap nearest":No,"nearest mipmap linear":jn,"linear mipmap linear":Go},Ln),Ls={none:0,browser:wo},ua={uint8:Ba,rgba4:Yo,rgb565:kn,"rgb5 a1":fa},Hn={alpha:Ga,luminance:oa,"luminance alpha":ka,rgb:ma,rgba:Un,rgba4:so,"rgb5 a1":Kr,rgb565:Ia},qi={};qt.ext_srgb&&(Hn.srgb=ls,Hn.srgba=$a),qt.oes_texture_float&&(ua.float32=ua.float=Hi),qt.oes_texture_half_float&&(ua.float16=ua["half float"]=fo),qt.webgl_depth_texture&&(e(Hn,{depth:ys,"depth stencil":uo}),e(ua,{uint16:Ko,uint32:Qo,"depth stencil":Aa})),qt.webgl_compressed_texture_s3tc&&e(qi,{"rgb s3tc dxt1":mn,"rgba s3tc dxt1":ra,"rgba s3tc dxt3":wa,"rgba s3tc dxt5":ws}),qt.webgl_compressed_texture_atc&&e(qi,{"rgb atc":Co,"rgba atc explicit alpha":Po,"rgba atc interpolated alpha":Wi}),qt.webgl_compressed_texture_pvrtc&&e(qi,{"rgb pvrtc 4bppv1":gn,"rgb pvrtc 2bppv1":Ps,"rgba pvrtc 4bppv1":Ha,"rgba pvrtc 2bppv1":Sn}),qt.webgl_compressed_texture_etc1&&(qi["rgb etc1"]=ao);var Wr=Array.prototype.slice.call(Be.getParameter(ii));Object.keys(qi).forEach(function(ne){var Le=qi[ne];Wr.indexOf(Le)>=0&&(Hn[ne]=Le)});var xi=Object.keys(Hn);ar.textureFormats=xi;var dn=[];Object.keys(Hn).forEach(function(ne){var Le=Hn[ne];dn[Le]=ne});var En=[];Object.keys(ua).forEach(function(ne){var Le=ua[ne];En[Le]=ne});var Zi=[];Object.keys(Ln).forEach(function(ne){var Le=Ln[ne];Zi[Le]=ne});var ga=[];Object.keys(wn).forEach(function(ne){var Le=wn[ne];ga[Le]=ne});var Kn=[];Object.keys(Bn).forEach(function(ne){var Le=Bn[ne];Kn[Le]=ne});var hs=xi.reduce(function(ne,Le){var Ze=Hn[Le];return Ze===oa||Ze===Ga||Ze===oa||Ze===ka||Ze===ys||Ze===uo||qt.ext_srgb&&(Ze===ls||Ze===$a)?ne[Ze]=Ze:Ze===Kr||Le.indexOf("rgba")>=0?ne[Ze]=Un:ne[Ze]=ma,ne},{});function Ji(){this.internalformat=Un,this.format=Un,this.type=Ba,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=wo,this.width=0,this.height=0,this.channels=0}function Ui(ne,Le){ne.internalformat=Le.internalformat,ne.format=Le.format,ne.type=Le.type,ne.compressed=Le.compressed,ne.premultiplyAlpha=Le.premultiplyAlpha,ne.flipY=Le.flipY,ne.unpackAlignment=Le.unpackAlignment,ne.colorSpace=Le.colorSpace,ne.width=Le.width,ne.height=Le.height,ne.channels=Le.channels}function ro(ne,Le){if(!(typeof Le!="object"||!Le)){if("premultiplyAlpha"in Le&&(ne.premultiplyAlpha=Le.premultiplyAlpha),"flipY"in Le&&(ne.flipY=Le.flipY),"alignment"in Le&&(ne.unpackAlignment=Le.alignment),"colorSpace"in Le&&(ne.colorSpace=Ls[Le.colorSpace]),"type"in Le){var Ze=Le.type;ne.type=ua[Ze]}var kt=ne.width,dr=ne.height,Mr=ne.channels,lr=!1;"shape"in Le?(kt=Le.shape[0],dr=Le.shape[1],Le.shape.length===3&&(Mr=Le.shape[2],lr=!0)):("radius"in Le&&(kt=dr=Le.radius),"width"in Le&&(kt=Le.width),"height"in Le&&(dr=Le.height),"channels"in Le&&(Mr=Le.channels,lr=!0)),ne.width=kt|0,ne.height=dr|0,ne.channels=Mr|0;var $e=!1;if("format"in Le){var ht=Le.format,bt=ne.internalformat=Hn[ht];ne.format=hs[bt],ht in ua&&("type"in Le||(ne.type=ua[ht])),ht in qi&&(ne.compressed=!0),$e=!0}!lr&&$e?ne.channels=$n[ne.format]:lr&&!$e&&ne.channels!==un[ne.format]&&(ne.format=ne.internalformat=un[ne.channels])}}function na(ne){Be.pixelStorei(Ya,ne.flipY),Be.pixelStorei(_n,ne.premultiplyAlpha),Be.pixelStorei(Vn,ne.colorSpace),Be.pixelStorei(Vs,ne.unpackAlignment)}function On(){Ji.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function In(ne,Le){var Ze=null;if(Es(Le)?Ze=Le:Le&&(ro(ne,Le),"x"in Le&&(ne.xOffset=Le.x|0),"y"in Le&&(ne.yOffset=Le.y|0),Es(Le.data)&&(Ze=Le.data)),Le.copy){var kt=yi.viewportWidth,dr=yi.viewportHeight;ne.width=ne.width||kt-ne.xOffset,ne.height=ne.height||dr-ne.yOffset,ne.needsCopy=!0}else if(!Ze)ne.width=ne.width||1,ne.height=ne.height||1,ne.channels=ne.channels||4;else if(yr(Ze))ne.channels=ne.channels||4,ne.data=Ze,!("type"in Le)&&ne.type===Ba&&(ne.type=As(Ze));else if(Pa(Ze))ne.channels=ne.channels||4,Ho(ne,Ze),ne.alignment=1,ne.needsFree=!0;else if(Ut(Ze)){var Mr=Ze.data;!Array.isArray(Mr)&&ne.type===Ba&&(ne.type=As(Mr));var lr=Ze.shape,$e=Ze.stride,ht,bt,Kt,sr,Qt,ur;lr.length===3?(Kt=lr[2],ur=$e[2]):(Kt=1,ur=1),ht=lr[0],bt=lr[1],sr=$e[0],Qt=$e[1],ne.alignment=1,ne.width=ht,ne.height=bt,ne.channels=Kt,ne.format=ne.internalformat=un[Kt],ne.needsFree=!0,ts(ne,Mr,sr,Qt,ur,Ze.offset)}else if(Jo(Ze)||To(Ze)||Dn(Ze))Jo(Ze)||To(Ze)?ne.element=Ze:ne.element=Ze.canvas,ne.width=ne.element.width,ne.height=ne.element.height,ne.channels=4;else if(_a(Ze))ne.element=Ze,ne.width=Ze.width,ne.height=Ze.height,ne.channels=4;else if(Ws(Ze))ne.element=Ze,ne.width=Ze.naturalWidth,ne.height=Ze.naturalHeight,ne.channels=4;else if(Ca(Ze))ne.element=Ze,ne.width=Ze.videoWidth,ne.height=Ze.videoHeight,ne.channels=4;else if(to(Ze)){var er=ne.width||Ze[0].length,Ot=ne.height||Ze.length,Jt=ne.channels;en(Ze[0][0])?Jt=Jt||Ze[0][0].length:Jt=Jt||1;for(var Lt=xe.shape(Ze),Ar=1,Ur=0;Ur>=dr,Ze.height>>=dr,In(Ze,kt[dr]),ne.mipmask|=1<=0&&!("faces"in Le)&&(ne.genMipmaps=!0)}if("mag"in Le){var kt=Le.mag;ne.magFilter=Ln[kt]}var dr=ne.wrapS,Mr=ne.wrapT;if("wrap"in Le){var lr=Le.wrap;typeof lr=="string"?dr=Mr=Bn[lr]:Array.isArray(lr)&&(dr=Bn[lr[0]],Mr=Bn[lr[1]])}else{if("wrapS"in Le){var $e=Le.wrapS;dr=Bn[$e]}if("wrapT"in Le){var ht=Le.wrapT;Mr=Bn[ht]}}if(ne.wrapS=dr,ne.wrapT=Mr,"anisotropic"in Le){var bt=Le.anisotropic;ne.anisotropic=Le.anisotropic}if("mipmap"in Le){var Kt=!1;switch(typeof Le.mipmap){case"string":ne.mipmapHint=on[Le.mipmap],ne.genMipmaps=!0,Kt=!0;break;case"boolean":Kt=ne.genMipmaps=Le.mipmap;break;case"object":ne.genMipmaps=!1,Kt=!0;break;default:}Kt&&!("min"in Le)&&(ne.minFilter=mo)}}function xf(ne,Le){Be.texParameteri(Le,Ts,ne.minFilter),Be.texParameteri(Le,vo,ne.magFilter),Be.texParameteri(Le,Sa,ne.wrapS),Be.texParameteri(Le,Qa,ne.wrapT),qt.ext_texture_filter_anisotropic&&Be.texParameteri(Le,ha,ne.anisotropic),ne.genMipmaps&&(Be.hint(Ys,ne.mipmapHint),Be.generateMipmap(Le))}var Cf=0,Gu={},cf=ar.maxTextureUnits,mf=Array(cf).map(function(){return null});function Fl(ne){Ji.call(this),this.mipmask=0,this.internalformat=Un,this.id=Cf++,this.refCount=1,this.target=ne,this.texture=Be.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new Cu,vi.profile&&(this.stats={size:0})}function bf(ne){Be.activeTexture(Ra),Be.bindTexture(ne.target,ne.texture)}function cu(){var ne=mf[0];ne?Be.bindTexture(ne.target,ne.texture):Be.bindTexture(Xi,null)}function Y(ne){var Le=ne.texture,Ze=ne.unit,kt=ne.target;Ze>=0&&(Be.activeTexture(Ra+Ze),Be.bindTexture(kt,null),mf[Ze]=null),Be.deleteTexture(Le),ne.texture=null,ne.params=null,ne.pixels=null,ne.refCount=0,delete Gu[ne.id],ci.textureCount--}e(Fl.prototype,{bind:function(){var ne=this;ne.bindCount+=1;var Le=ne.unit;if(Le<0){for(var Ze=0;Ze0)continue;kt.unit=-1}mf[Ze]=ne,Le=Ze;break}Le>=cf,vi.profile&&ci.maxTextureUnits>Qt)-Kt,ur.height=ur.height||(Ze.height>>Qt)-sr,bf(Ze),_s(ur,Xi,Kt,sr,Qt),cu(),Mo(ur),kt}function Mr(lr,$e){var ht=lr|0,bt=$e|0||ht;if(ht===Ze.width&&bt===Ze.height)return kt;kt.width=Ze.width=ht,kt.height=Ze.height=bt,bf(Ze);for(var Kt=0;Ze.mipmask>>Kt;++Kt){var sr=ht>>Kt,Qt=bt>>Kt;if(!sr||!Qt)break;Be.texImage2D(Xi,Kt,Ze.format,sr,Qt,0,Ze.format,Ze.type,null)}return cu(),vi.profile&&(Ze.stats.size=Wo(Ze.internalformat,Ze.type,ht,bt,!1,!1)),kt}return kt(ne,Le),kt.subimage=dr,kt.resize=Mr,kt._reglType="texture2d",kt._texture=Ze,vi.profile&&(kt.stats=Ze.stats),kt.destroy=function(){Ze.decRef()},kt}function J(ne,Le,Ze,kt,dr,Mr){var lr=new Fl(aa);Gu[lr.id]=lr,ci.cubeCount++;var $e=new Array(6);function ht(sr,Qt,ur,er,Ot,Jt){var Lt,Ar=lr.texInfo;for(Cu.call(Ar),Lt=0;Lt<6;++Lt)$e[Lt]=Ql();if(typeof sr=="number"||!sr){var Ur=sr|0||1;for(Lt=0;Lt<6;++Lt)pl($e[Lt],Ur,Ur)}else if(typeof sr=="object")if(Qt)Dl($e[0],sr),Dl($e[1],Qt),Dl($e[2],ur),Dl($e[3],er),Dl($e[4],Ot),Dl($e[5],Jt);else if(gf(Ar,sr),ro(lr,sr),"faces"in sr){var hi=sr.faces;for(Lt=0;Lt<6;++Lt)Ui($e[Lt],lr),Dl($e[Lt],hi[Lt])}else for(Lt=0;Lt<6;++Lt)Dl($e[Lt],sr);for(Ui(lr,$e[0]),Ar.genMipmaps?lr.mipmask=($e[0].width<<1)-1:lr.mipmask=$e[0].mipmask,lr.internalformat=$e[0].internalformat,ht.width=$e[0].width,ht.height=$e[0].height,bf(lr),Lt=0;Lt<6;++Lt)Fu($e[Lt],Mn+Lt);for(xf(Ar,aa),cu(),vi.profile&&(lr.stats.size=Wo(lr.internalformat,lr.type,ht.width,ht.height,Ar.genMipmaps,!0)),ht.format=dn[lr.internalformat],ht.type=En[lr.type],ht.mag=Zi[Ar.magFilter],ht.min=ga[Ar.minFilter],ht.wrapS=Kn[Ar.wrapS],ht.wrapT=Kn[Ar.wrapT],Lt=0;Lt<6;++Lt)Ef($e[Lt]);return ht}function bt(sr,Qt,ur,er,Ot){var Jt=ur|0,Lt=er|0,Ar=Ot|0,Ur=Qn();return Ui(Ur,lr),Ur.width=0,Ur.height=0,In(Ur,Qt),Ur.width=Ur.width||(lr.width>>Ar)-Jt,Ur.height=Ur.height||(lr.height>>Ar)-Lt,bf(lr),_s(Ur,Mn+sr,Jt,Lt,Ar),cu(),Mo(Ur),ht}function Kt(sr){var Qt=sr|0;if(Qt!==lr.width){ht.width=lr.width=Qt,ht.height=lr.height=Qt,bf(lr);for(var ur=0;ur<6;++ur)for(var er=0;lr.mipmask>>er;++er)Be.texImage2D(Mn+ur,er,lr.format,Qt>>er,Qt>>er,0,lr.format,lr.type,null);return cu(),vi.profile&&(lr.stats.size=Wo(lr.internalformat,lr.type,ht.width,ht.height,!1,!0)),ht}}return ht(ne,Le,Ze,kt,dr,Mr),ht.subimage=bt,ht.resize=Kt,ht._reglType="textureCube",ht._texture=lr,vi.profile&&(ht.stats=lr.stats),ht.destroy=function(){lr.decRef()},ht}function O(){for(var ne=0;ne>kt,Ze.height>>kt,0,Ze.internalformat,Ze.type,null);else for(var dr=0;dr<6;++dr)Be.texImage2D(Mn+dr,kt,Ze.internalformat,Ze.width>>kt,Ze.height>>kt,0,Ze.internalformat,Ze.type,null);xf(Ze.texInfo,Ze.target)})}function _e(){for(var ne=0;ne=0?Ef=!0:Bn.indexOf(Cu)>=0&&(Ef=!1))),("depthTexture"in Fl||"depthStencilTexture"in Fl)&&(mf=!!(Fl.depthTexture||Fl.depthStencilTexture)),"depth"in Fl&&(typeof Fl.depth=="boolean"?Fu=Fl.depth:(Cf=Fl.depth,vf=!1)),"stencil"in Fl&&(typeof Fl.stencil=="boolean"?vf=Fl.stencil:(Gu=Fl.stencil,Fu=!1)),"depthStencil"in Fl&&(typeof Fl.depthStencil=="boolean"?Fu=vf=Fl.depthStencil:(cf=Fl.depthStencil,Fu=!1,vf=!1))}var cu=null,Y=null,R=null,J=null;if(Array.isArray(Ql))cu=Ql.map(qi);else if(Ql)cu=[qi(Ql)];else for(cu=new Array(xf),nl=0;nl0&&(Mo.depth=In[0].depth,Mo.stencil=In[0].stencil,Mo.depthStencil=In[0].depthStencil),In[Qn]?In[Qn](Mo):In[Qn]=Ui(Mo)}return e(Va,{width:nl,height:nl,color:Cu})}function _s(ul){var Qn,Mo=ul|0;if(Mo===Va.width)return Va;var nl=Va.color;for(Qn=0;Qn=nl.byteLength?pl.subdata(nl):(pl.destroy(),Ui.buffers[ul]=null)),Ui.buffers[ul]||(pl=Ui.buffers[ul]=yi.create(Qn,Ss,!1,!0)),Mo.buffer=yi.getBuffer(pl),Mo.size=Mo.buffer.dimension|0,Mo.normalized=!1,Mo.type=Mo.buffer.dtype,Mo.offset=0,Mo.stride=0,Mo.divisor=0,Mo.state=1,Va[ul]=1}else yi.getBuffer(Qn)?(Mo.buffer=yi.getBuffer(Qn),Mo.size=Mo.buffer.dimension|0,Mo.normalized=!1,Mo.type=Mo.buffer.dtype,Mo.offset=0,Mo.stride=0,Mo.divisor=0,Mo.state=1):yi.getBuffer(Qn.buffer)?(Mo.buffer=yi.getBuffer(Qn.buffer),Mo.size=(+Qn.size||Mo.buffer.dimension)|0,Mo.normalized=!!Qn.normalized||!1,"type"in Qn?Mo.type=pi[Qn.type]:Mo.type=Mo.buffer.dtype,Mo.offset=(Qn.offset||0)|0,Mo.stride=(Qn.stride||0)|0,Mo.divisor=(Qn.divisor||0)|0,Mo.state=1):"x"in Qn&&(Mo.x=+Qn.x||0,Mo.y=+Qn.y||0,Mo.z=+Qn.z||0,Mo.w=+Qn.w||0,Mo.state=2)}for(var Dl=0;Dl1)for(var na=0;naWr&&(Wr=xi.stats.uniformsCount)}),Wr},ar.getMaxAttributesCount=function(){var Wr=0;return wn.forEach(function(xi){xi.stats.attributesCount>Wr&&(Wr=xi.stats.attributesCount)}),Wr});function qi(){yi={},ci={};for(var Wr=0;Wr16&&(ar=Pi(ar,Be.length*8));for(var Qr=Array(16),yi=Array(16),ci=0;ci<16;ci++)Qr[ci]=ar[ci]^909522486,yi[ci]=ar[ci]^1549556828;var vi=Pi(Qr.concat(Bs(qt)),512+qt.length*8);return At(Pi(yi.concat(vi),768))}function Ms(Be){for(var qt=Ro?"0123456789ABCDEF":"0123456789abcdef",ar="",Qr,yi=0;yi>>4&15)+qt.charAt(Qr&15);return ar}function jo(Be){for(var qt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ar="",Qr=Be.length,yi=0;yiBe.length*8?ar+=tl:ar+=qt.charAt(ci>>>6*(3-vi)&63);return ar}function Rs(Be,qt){var ar=qt.length,Qr=Array(),yi,ci,vi,on,Bn=Array(Math.ceil(Be.length/2));for(yi=0;yi0;){for(on=Array(),vi=0,yi=0;yi0||ci>0)&&(on[on.length]=ci);Qr[Qr.length]=vi,Bn=on}var Ln="";for(yi=Qr.length-1;yi>=0;yi--)Ln+=qt.charAt(Qr[yi]);var wn=Math.ceil(Be.length*8/(Math.log(qt.length)/Math.log(2)));for(yi=Ln.length;yi>>6&31,128|Qr&63):Qr<=65535?qt+=String.fromCharCode(224|Qr>>>12&15,128|Qr>>>6&63,128|Qr&63):Qr<=2097151&&(qt+=String.fromCharCode(240|Qr>>>18&7,128|Qr>>>12&63,128|Qr>>>6&63,128|Qr&63));return qt}function Bs(Be){for(var qt=Array(Be.length>>2),ar=0;ar>5]|=(Be.charCodeAt(ar/8)&255)<<24-ar%32;return qt}function At(Be){for(var qt="",ar=0;ar>5]>>>24-ar%32&255);return qt}function Vt(Be,qt){return Be>>>qt|Be<<32-qt}function wr(Be,qt){return Be>>>qt}function mr(Be,qt,ar){return Be&qt^~Be&ar}function Fr(Be,qt,ar){return Be&qt^Be&ar^qt&ar}function _i(Be){return Vt(Be,2)^Vt(Be,13)^Vt(Be,22)}function Si(Be){return Vt(Be,6)^Vt(Be,11)^Vt(Be,25)}function Ci(Be){return Vt(Be,7)^Vt(Be,18)^wr(Be,3)}function Ki(Be){return Vt(Be,17)^Vt(Be,19)^wr(Be,10)}var Fn=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function Pi(Be,qt){var ar=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),Qr=new Array(64),yi,ci,vi,on,Bn,Ln,wn,Ls,ua,Hn,qi,Wr;for(Be[qt>>5]|=128<<24-qt%32,Be[(qt+64>>9<<4)+15]=qt,ua=0;ua>16)+(qt>>16)+(ar>>16);return Qr<<16|ar&65535}function Li(Be){return Array.prototype.slice.call(Be)}function Mi(Be){return Li(Be).join("")}function Gn(Be){var qt=Be&&Be.cache,ar=0,Qr=[],yi=[],ci=[];function vi(qi,Wr){var xi=Wr&&Wr.stable;if(!xi){for(var dn=0;dn0&&(qi.push(En,"="),qi.push.apply(qi,Li(arguments)),qi.push(";")),En}return e(Wr,{def:dn,toString:function(){return Mi([xi.length>0?"var "+xi.join(",")+";":"",Mi(qi)])}})}function Bn(){var qi=on(),Wr=on(),xi=qi.toString,dn=Wr.toString;function En(Zi,ga){Wr(Zi,ga,"=",qi.def(Zi,ga),";")}return e(function(){qi.apply(qi,Li(arguments))},{def:qi.def,entry:qi,exit:Wr,save:En,set:function(Zi,ga,Kn){En(Zi,ga),qi(Zi,ga,"=",Kn,";")},toString:function(){return xi()+dn()}})}function Ln(){var qi=Mi(arguments),Wr=Bn(),xi=Bn(),dn=Wr.toString,En=xi.toString;return e(Wr,{then:function(){return Wr.apply(Wr,Li(arguments)),this},else:function(){return xi.apply(xi,Li(arguments)),this},toString:function(){var Zi=En();return Zi&&(Zi="else{"+Zi+"}"),Mi(["if(",qi,"){",dn(),"}",Zi])}})}var wn=on(),Ls={};function ua(qi,Wr){var xi=[];function dn(){var hs="a"+xi.length;return xi.push(hs),hs}Wr=Wr||0;for(var En=0;En":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},zi={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ji={cw:Pe,ccw:Xe};function pn(Be){return Array.isArray(Be)||yr(Be)||Ut(Be)}function sn(Be){return Be.sort(function(qt,ar){return qt===ee?-1:ar===ee?1:qt=1,Qr>=2,qt)}else if(ar===Ks){var yi=Be.data;return new wi(yi.thisDep,yi.contextDep,yi.propDep,qt)}else{if(ar===dl)return new wi(!1,!1,!1,qt);if(ar===xl){for(var ci=!1,vi=!1,on=!1,Bn=0;Bn=1&&(vi=!0),wn>=2&&(on=!0)}else Ln.type===Ks&&(ci=ci||Ln.data.thisDep,vi=vi||Ln.data.contextDep,on=on||Ln.data.propDep)}return new wi(ci,vi,on,qt)}else return new wi(ar===Cs,ar===is,ar===zn,qt)}}var js=new wi(!1,!1,!1,function(){});function El(Be,qt,ar,Qr,yi,ci,vi,on,Bn,Ln,wn,Ls,ua,Hn,qi,Wr){var xi=Ln.Record,dn={add:32774,subtract:32778,"reverse subtract":32779};ar.ext_blend_minmax&&(dn.min=Qe,dn.max=st);var En=ar.angle_instanced_arrays,Zi=ar.webgl_draw_buffers,ga=ar.oes_vertex_array_object,Kn={dirty:!0,profile:Wr.profile},hs={},Ji=[],Ui={},ro={};function na($e){return $e.replace(".","_")}function On($e,ht,bt){var Kt=na($e);Ji.push($e),hs[Kt]=Kn[Kt]=!!bt,Ui[Kt]=ht}function In($e,ht,bt){var Kt=na($e);Ji.push($e),Array.isArray(bt)?(Kn[Kt]=bt.slice(),hs[Kt]=bt.slice()):Kn[Kt]=hs[Kt]=bt,ro[Kt]=ht}function Va($e){return!!isNaN($e)}On(Bl,hn),On(bl,Ei),In(eu,"blendColor",[0,0,0,0]),In(Zl,"blendEquationSeparate",[zr,zr]),In(Ul,"blendFuncSeparate",[Cr,hr,Cr,hr]),On(ja,Yn,!0),In(ns,"depthFunc",fi),In(Js,"depthRange",[0,1]),In(cs,"depthMask",!0),In(sl,sl,[!0,!0,!0,!0]),On(ll,li),In(il,"cullFace",se),In(zl,zl,Xe),In(Ml,Ml,1),On(Rl,Fo),In(Tl,"polygonOffset",[0,0]),On(Ll,vl),On(ms,Us),In(Os,"sampleCoverage",[1,!1]),On(Xl,Zn),In(Vl,"stencilMask",-1),In(Nl,"stencilFunc",[jt,0,-1]),In(le,"stencilOpSeparate",[Z,_t,_t,_t]),In(w,"stencilOpSeparate",[se,_t,_t,_t]),On(q,Ua),In(Q,"scissor",[0,0,Be.drawingBufferWidth,Be.drawingBufferHeight]),In(ee,ee,[0,0,Be.drawingBufferWidth,Be.drawingBufferHeight]);var _s={gl:Be,context:ua,strings:qt,next:hs,current:Kn,draw:Ls,elements:ci,buffer:yi,shader:wn,attributes:Ln.state,vao:Ln,uniforms:Bn,framebuffer:on,extensions:ar,timer:Hn,isBufferArgs:pn},ul={primTypes:ti,compareFuncs:mi,blendFuncs:fn,blendEquations:dn,stencilOps:zi,glTypes:pi,orientationType:ji};Zi&&(ul.backBuffer=[se],ul.drawBuffer=M(Qr.maxDrawbuffers,function($e){return $e===0?[0]:M($e,function(ht){return Bi+ht})}));var Qn=0;function Mo(){var $e=Gn({cache:qi}),ht=$e.link,bt=$e.global;$e.id=Qn++,$e.batchId="0";var Kt=ht(_s),sr=$e.shared={props:"a0"};Object.keys(_s).forEach(function(Jt){sr[Jt]=bt.def(Kt,".",Jt)});var Qt=$e.next={},ur=$e.current={};Object.keys(ro).forEach(function(Jt){Array.isArray(Kn[Jt])&&(Qt[Jt]=bt.def(sr.next,".",Jt),ur[Jt]=bt.def(sr.current,".",Jt))});var er=$e.constants={};Object.keys(ul).forEach(function(Jt){er[Jt]=bt.def(JSON.stringify(ul[Jt]))}),$e.invoke=function(Jt,Lt){switch(Lt.type){case va:var Ar=["this",sr.context,sr.props,$e.batchId];return Jt.def(ht(Lt.data),".call(",Ar.slice(0,Math.max(Lt.data.length+1,4)),")");case zn:return Jt.def(sr.props,Lt.data);case is:return Jt.def(sr.context,Lt.data);case Cs:return Jt.def("this",Lt.data);case Ks:return Lt.data.append($e,Jt),Lt.data.ref;case dl:return Lt.data.toString();case xl:return Lt.data.map(function(Ur){return $e.invoke(Jt,Ur)})}},$e.attribCache={};var Ot={};return $e.scopeAttrib=function(Jt){var Lt=qt.id(Jt);if(Lt in Ot)return Ot[Lt];var Ar=Ln.scope[Lt];Ar||(Ar=Ln.scope[Lt]=new xi);var Ur=Ot[Lt]=ht(Ar);return Ur},$e}function nl($e){var ht=$e.static,bt=$e.dynamic,Kt;if(ue in ht){var sr=!!ht[ue];Kt=no(function(ur,er){return sr}),Kt.enable=sr}else if(ue in bt){var Qt=bt[ue];Kt=Xo(Qt,function(ur,er){return ur.invoke(er,Qt)})}return Kt}function pl($e,ht){var bt=$e.static,Kt=$e.dynamic;if(Ve in bt){var sr=bt[Ve];return sr?(sr=on.getFramebuffer(sr),no(function(ur,er){var Ot=ur.link(sr),Jt=ur.shared;er.set(Jt.framebuffer,".next",Ot);var Lt=Jt.context;return er.set(Lt,"."+Ge,Ot+".width"),er.set(Lt,"."+lt,Ot+".height"),Ot})):no(function(ur,er){var Ot=ur.shared;er.set(Ot.framebuffer,".next","null");var Jt=Ot.context;return er.set(Jt,"."+Ge,Jt+"."+nr),er.set(Jt,"."+lt,Jt+"."+fr),"null"})}else if(Ve in Kt){var Qt=Kt[Ve];return Xo(Qt,function(ur,er){var Ot=ur.invoke(er,Qt),Jt=ur.shared,Lt=Jt.framebuffer,Ar=er.def(Lt,".getFramebuffer(",Ot,")");er.set(Lt,".next",Ar);var Ur=Jt.context;return er.set(Ur,"."+Ge,Ar+"?"+Ar+".width:"+Ur+"."+nr),er.set(Ur,"."+lt,Ar+"?"+Ar+".height:"+Ur+"."+fr),Ar})}else return null}function Dl($e,ht,bt){var Kt=$e.static,sr=$e.dynamic;function Qt(Ot){if(Ot in Kt){var Jt=Kt[Ot],Lt=!0,Ar=Jt.x|0,Ur=Jt.y|0,hi,Cn;return"width"in Jt?hi=Jt.width|0:Lt=!1,"height"in Jt?Cn=Jt.height|0:Lt=!1,new wi(!Lt&&ht&&ht.thisDep,!Lt&&ht&&ht.contextDep,!Lt&&ht&&ht.propDep,function(Xa,ca){var An=Xa.shared.context,Pn=hi;"width"in Jt||(Pn=ca.def(An,".",Ge,"-",Ar));var Nn=Cn;return"height"in Jt||(Nn=ca.def(An,".",lt,"-",Ur)),[Ar,Ur,Pn,Nn]})}else if(Ot in sr){var Yi=sr[Ot],yn=Xo(Yi,function(Xa,ca){var An=Xa.invoke(ca,Yi),Pn=Xa.shared.context,Nn=ca.def(An,".x|0"),xa=ca.def(An,".y|0"),Zo=ca.def('"width" in ',An,"?",An,".width|0:","(",Pn,".",Ge,"-",Nn,")"),ru=ca.def('"height" in ',An,"?",An,".height|0:","(",Pn,".",lt,"-",xa,")");return[Nn,xa,Zo,ru]});return ht&&(yn.thisDep=yn.thisDep||ht.thisDep,yn.contextDep=yn.contextDep||ht.contextDep,yn.propDep=yn.propDep||ht.propDep),yn}else return ht?new wi(ht.thisDep,ht.contextDep,ht.propDep,function(Xa,ca){var An=Xa.shared.context;return[0,0,ca.def(An,".",Ge),ca.def(An,".",lt)]}):null}var ur=Qt(ee);if(ur){var er=ur;ur=new wi(ur.thisDep,ur.contextDep,ur.propDep,function(Ot,Jt){var Lt=er.append(Ot,Jt),Ar=Ot.shared.context;return Jt.set(Ar,"."+rt,Lt[2]),Jt.set(Ar,"."+pt,Lt[3]),Lt})}return{viewport:ur,scissor_box:Qt(Q)}}function Fu($e,ht){var bt=$e.static,Kt=typeof bt[mt]=="string"&&typeof bt[tt]=="string";if(Kt){if(Object.keys(ht.dynamic).length>0)return null;var sr=ht.static,Qt=Object.keys(sr);if(Qt.length>0&&typeof sr[Qt[0]]=="number"){for(var ur=[],er=0;er"+Nn+"?"+Lt+".constant["+Nn+"]:0;"}).join(""),"}}else{","if(",hi,"(",Lt,".buffer)){",Xa,"=",Cn,".createStream(",Ir,",",Lt,".buffer);","}else{",Xa,"=",Cn,".getBuffer(",Lt,".buffer);","}",ca,'="type" in ',Lt,"?",Ur.glTypes,"[",Lt,".type]:",Xa,".dtype;",Yi.normalized,"=!!",Lt,".normalized;");function An(Pn){Jt(Yi[Pn],"=",Lt,".",Pn,"|0;")}return An("size"),An("offset"),An("stride"),An("divisor"),Jt("}}"),Jt.exit("if(",Yi.isStream,"){",Cn,".destroyStream(",Xa,");","}"),Yi}sr[Qt]=Xo(ur,er)}),sr}function xf($e){var ht=$e.static,bt=$e.dynamic,Kt={};return Object.keys(ht).forEach(function(sr){var Qt=ht[sr];Kt[sr]=no(function(ur,er){return typeof Qt=="number"||typeof Qt=="boolean"?""+Qt:ur.link(Qt)})}),Object.keys(bt).forEach(function(sr){var Qt=bt[sr];Kt[sr]=Xo(Qt,function(ur,er){return ur.invoke(er,Qt)})}),Kt}function Cf($e,ht,bt,Kt,sr){var Qt=$e.static,ur=$e.dynamic,er=Fu($e,ht),Ot=pl($e,sr),Jt=Dl($e,Ot,sr),Lt=Ql($e,sr),Ar=Ef($e,sr),Ur=vf($e,sr,er);function hi(An){var Pn=Jt[An];Pn&&(Ar[An]=Pn)}hi(ee),hi(na(Q));var Cn=Object.keys(Ar).length>0,Yi={framebuffer:Ot,draw:Lt,shader:Ur,state:Ar,dirty:Cn,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(Yi.profile=nl($e,sr),Yi.uniforms=Cu(bt,sr),Yi.drawVAO=Yi.scopeVAO=Lt.vao,!Yi.drawVAO&&Ur.program&&!er&&ar.angle_instanced_arrays&&Lt.static.elements){var yn=!0,Xa=Ur.program.attributes.map(function(An){var Pn=ht.static[An];return yn=yn&&!!Pn,Pn});if(yn&&Xa.length>0){var ca=Ln.getVAO(Ln.createVAO({attributes:Xa,elements:Lt.static.elements}));Yi.drawVAO=new wi(null,null,null,function(An,Pn){return An.link(ca)}),Yi.useVAO=!0}}return er?Yi.useVAO=!0:Yi.attributes=gf(ht,sr),Yi.context=xf(Kt,sr),Yi}function Gu($e,ht,bt){var Kt=$e.shared,sr=Kt.context,Qt=$e.scope();Object.keys(bt).forEach(function(ur){ht.save(sr,"."+ur);var er=bt[ur],Ot=er.append($e,ht);Array.isArray(Ot)?Qt(sr,".",ur,"=[",Ot.join(),"];"):Qt(sr,".",ur,"=",Ot,";")}),ht(Qt)}function cf($e,ht,bt,Kt){var sr=$e.shared,Qt=sr.gl,ur=sr.framebuffer,er;Zi&&(er=ht.def(sr.extensions,".webgl_draw_buffers"));var Ot=$e.constants,Jt=Ot.drawBuffer,Lt=Ot.backBuffer,Ar;bt?Ar=bt.append($e,ht):Ar=ht.def(ur,".next"),Kt||ht("if(",Ar,"!==",ur,".cur){"),ht("if(",Ar,"){",Qt,".bindFramebuffer(",$r,",",Ar,".framebuffer);"),Zi&&ht(er,".drawBuffersWEBGL(",Jt,"[",Ar,".colorAttachments.length]);"),ht("}else{",Qt,".bindFramebuffer(",$r,",null);"),Zi&&ht(er,".drawBuffersWEBGL(",Lt,");"),ht("}",ur,".cur=",Ar,";"),Kt||ht("}")}function mf($e,ht,bt){var Kt=$e.shared,sr=Kt.gl,Qt=$e.current,ur=$e.next,er=Kt.current,Ot=Kt.next,Jt=$e.cond(er,".dirty");Ji.forEach(function(Lt){var Ar=na(Lt);if(!(Ar in bt.state)){var Ur,hi;if(Ar in ur){Ur=ur[Ar],hi=Qt[Ar];var Cn=M(Kn[Ar].length,function(yn){return Jt.def(Ur,"[",yn,"]")});Jt($e.cond(Cn.map(function(yn,Xa){return yn+"!=="+hi+"["+Xa+"]"}).join("||")).then(sr,".",ro[Ar],"(",Cn,");",Cn.map(function(yn,Xa){return hi+"["+Xa+"]="+yn}).join(";"),";"))}else{Ur=Jt.def(Ot,".",Ar);var Yi=$e.cond(Ur,"!==",er,".",Ar);Jt(Yi),Ar in Ui?Yi($e.cond(Ur).then(sr,".enable(",Ui[Ar],");").else(sr,".disable(",Ui[Ar],");"),er,".",Ar,"=",Ur,";"):Yi(sr,".",ro[Ar],"(",Ur,");",er,".",Ar,"=",Ur,";")}}}),Object.keys(bt.state).length===0&&Jt(er,".dirty=false;"),ht(Jt)}function Fl($e,ht,bt,Kt){var sr=$e.shared,Qt=$e.current,ur=sr.current,er=sr.gl,Ot;sn(Object.keys(bt)).forEach(function(Jt){var Lt=bt[Jt];if(!(Kt&&!Kt(Lt))){var Ar=Lt.append($e,ht);if(Ui[Jt]){var Ur=Ui[Jt];xo(Lt)?(Ot=$e.link(Ar,{stable:!0}),ht($e.cond(Ot).then(er,".enable(",Ur,");").else(er,".disable(",Ur,");")),ht(ur,".",Jt,"=",Ot,";")):(ht($e.cond(Ar).then(er,".enable(",Ur,");").else(er,".disable(",Ur,");")),ht(ur,".",Jt,"=",Ar,";"))}else if(en(Ar)){var hi=Qt[Jt];ht(er,".",ro[Jt],"(",Ar,");",Ar.map(function(Cn,Yi){return hi+"["+Yi+"]="+Cn}).join(";"),";")}else xo(Lt)?(Ot=$e.link(Ar,{stable:!0}),ht(er,".",ro[Jt],"(",Ot,");",ur,".",Jt,"=",Ot,";")):ht(er,".",ro[Jt],"(",Ar,");",ur,".",Jt,"=",Ar,";")}})}function bf($e,ht){En&&($e.instancing=ht.def($e.shared.extensions,".angle_instanced_arrays"))}function cu($e,ht,bt,Kt,sr){var Qt=$e.shared,ur=$e.stats,er=Qt.current,Ot=Qt.timer,Jt=bt.profile;function Lt(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var Ar,Ur;function hi(An){Ar=ht.def(),An(Ar,"=",Lt(),";"),typeof sr=="string"?An(ur,".count+=",sr,";"):An(ur,".count++;"),Hn&&(Kt?(Ur=ht.def(),An(Ur,"=",Ot,".getNumPendingQueries();")):An(Ot,".beginQuery(",ur,");"))}function Cn(An){An(ur,".cpuTime+=",Lt(),"-",Ar,";"),Hn&&(Kt?An(Ot,".pushScopeStats(",Ur,",",Ot,".getNumPendingQueries(),",ur,");"):An(Ot,".endQuery();"))}function Yi(An){var Pn=ht.def(er,".profile");ht(er,".profile=",An,";"),ht.exit(er,".profile=",Pn,";")}var yn;if(Jt){if(xo(Jt)){Jt.enable?(hi(ht),Cn(ht.exit),Yi("true")):Yi("false");return}yn=Jt.append($e,ht),Yi(yn)}else yn=ht.def(er,".profile");var Xa=$e.block();hi(Xa),ht("if(",yn,"){",Xa,"}");var ca=$e.block();Cn(ca),ht.exit("if(",yn,"){",ca,"}")}function Y($e,ht,bt,Kt,sr){var Qt=$e.shared;function ur(Ot){switch(Ot){case au:case ou:case Hu:return 2;case Sl:case Pu:case $u:return 3;case Yl:case iu:case Ku:return 4;default:return 1}}function er(Ot,Jt,Lt){var Ar=Qt.gl,Ur=ht.def(Ot,".location"),hi=ht.def(Qt.attributes,"[",Ur,"]"),Cn=Lt.state,Yi=Lt.buffer,yn=[Lt.x,Lt.y,Lt.z,Lt.w],Xa=["buffer","normalized","offset","stride"];function ca(){ht("if(!",hi,".buffer){",Ar,".enableVertexAttribArray(",Ur,");}");var Pn=Lt.type,Nn;if(Lt.size?Nn=ht.def(Lt.size,"||",Jt):Nn=Jt,ht("if(",hi,".type!==",Pn,"||",hi,".size!==",Nn,"||",Xa.map(function(Zo){return hi+"."+Zo+"!=="+Lt[Zo]}).join("||"),"){",Ar,".bindBuffer(",Ir,",",Yi,".buffer);",Ar,".vertexAttribPointer(",[Ur,Nn,Pn,Lt.normalized,Lt.stride,Lt.offset],");",hi,".type=",Pn,";",hi,".size=",Nn,";",Xa.map(function(Zo){return hi+"."+Zo+"="+Lt[Zo]+";"}).join(""),"}"),En){var xa=Lt.divisor;ht("if(",hi,".divisor!==",xa,"){",$e.instancing,".vertexAttribDivisorANGLE(",[Ur,xa],");",hi,".divisor=",xa,";}")}}function An(){ht("if(",hi,".buffer){",Ar,".disableVertexAttribArray(",Ur,");",hi,".buffer=null;","}if(",ta.map(function(Pn,Nn){return hi+"."+Pn+"!=="+yn[Nn]}).join("||"),"){",Ar,".vertexAttrib4f(",Ur,",",yn,");",ta.map(function(Pn,Nn){return hi+"."+Pn+"="+yn[Nn]+";"}).join(""),"}")}Cn===ia?ca():Cn===pa?An():(ht("if(",Cn,"===",ia,"){"),ca(),ht("}else{"),An(),ht("}"))}Kt.forEach(function(Ot){var Jt=Ot.name,Lt=bt.attributes[Jt],Ar;if(Lt){if(!sr(Lt))return;Ar=Lt.append($e,ht)}else{if(!sr(js))return;var Ur=$e.scopeAttrib(Jt);Ar={},Object.keys(new xi).forEach(function(hi){Ar[hi]=ht.def(Ur,".",hi)})}er($e.link(Ot),ur(Ot.info.type),Ar)})}function R($e,ht,bt,Kt,sr,Qt){for(var ur=$e.shared,er=ur.gl,Ot,Jt=0;Jt1){for(var yu=[],Du=[],vu=0;vu>1)",Yi],");")}function xa(){bt(yn,".drawArraysInstancedANGLE(",[Ur,hi,Cn,Yi],");")}Lt&&Lt!=="null"?ca?Nn():(bt("if(",Lt,"){"),Nn(),bt("}else{"),xa(),bt("}")):xa()}function Pn(){function Nn(){bt(Qt+".drawElements("+[Ur,Cn,Xa,hi+"<<(("+Xa+"-"+ya+")>>1)"]+");")}function xa(){bt(Qt+".drawArrays("+[Ur,hi,Cn]+");")}Lt&&Lt!=="null"?ca?Nn():(bt("if(",Lt,"){"),Nn(),bt("}else{"),xa(),bt("}")):xa()}En&&(typeof Yi!="number"||Yi>=0)?typeof Yi=="string"?(bt("if(",Yi,">0){"),An(),bt("}else if(",Yi,"<0){"),Pn(),bt("}")):An():Pn()}function O($e,ht,bt,Kt,sr){var Qt=Mo(),ur=Qt.proc("body",sr);return En&&(Qt.instancing=ur.def(Qt.shared.extensions,".angle_instanced_arrays")),$e(Qt,ur,bt,Kt),Qt.compile().body}function K($e,ht,bt,Kt){bf($e,ht),bt.useVAO?bt.drawVAO?ht($e.shared.vao,".setVAO(",bt.drawVAO.append($e,ht),");"):ht($e.shared.vao,".setVAO(",$e.shared.vao,".targetVAO);"):(ht($e.shared.vao,".setVAO(null);"),Y($e,ht,bt,Kt.attributes,function(){return!0})),R($e,ht,bt,Kt.uniforms,function(){return!0},!1),J($e,ht,ht,bt)}function _e($e,ht){var bt=$e.proc("draw",1);bf($e,bt),Gu($e,bt,ht.context),cf($e,bt,ht.framebuffer),mf($e,bt,ht),Fl($e,bt,ht.state),cu($e,bt,ht,!1,!0);var Kt=ht.shader.progVar.append($e,bt);if(bt($e.shared.gl,".useProgram(",Kt,".program);"),ht.shader.program)K($e,bt,ht,ht.shader.program);else{bt($e.shared.vao,".setVAO(null);");var sr=$e.global.def("{}"),Qt=bt.def(Kt,".id"),ur=bt.def(sr,"[",Qt,"]");bt($e.cond(ur).then(ur,".call(this,a0);").else(ur,"=",sr,"[",Qt,"]=",$e.link(function(er){return O(K,$e,ht,er,1)}),"(",Kt,");",ur,".call(this,a0);"))}Object.keys(ht.state).length>0&&bt($e.shared.current,".dirty=true;"),$e.shared.vao&&bt($e.shared.vao,".setVAO(null);")}function ne($e,ht,bt,Kt){$e.batchId="a1",bf($e,ht);function sr(){return!0}Y($e,ht,bt,Kt.attributes,sr),R($e,ht,bt,Kt.uniforms,sr,!1),J($e,ht,ht,bt)}function Le($e,ht,bt,Kt){bf($e,ht);var sr=bt.contextDep,Qt=ht.def(),ur="a0",er="a1",Ot=ht.def();$e.shared.props=Ot,$e.batchId=Qt;var Jt=$e.scope(),Lt=$e.scope();ht(Jt.entry,"for(",Qt,"=0;",Qt,"<",er,";++",Qt,"){",Ot,"=",ur,"[",Qt,"];",Lt,"}",Jt.exit);function Ar(Xa){return Xa.contextDep&&sr||Xa.propDep}function Ur(Xa){return!Ar(Xa)}if(bt.needsContext&&Gu($e,Lt,bt.context),bt.needsFramebuffer&&cf($e,Lt,bt.framebuffer),Fl($e,Lt,bt.state,Ar),bt.profile&&Ar(bt.profile)&&cu($e,Lt,bt,!1,!0),Kt)bt.useVAO?bt.drawVAO?Ar(bt.drawVAO)?Lt($e.shared.vao,".setVAO(",bt.drawVAO.append($e,Lt),");"):Jt($e.shared.vao,".setVAO(",bt.drawVAO.append($e,Jt),");"):Jt($e.shared.vao,".setVAO(",$e.shared.vao,".targetVAO);"):(Jt($e.shared.vao,".setVAO(null);"),Y($e,Jt,bt,Kt.attributes,Ur),Y($e,Lt,bt,Kt.attributes,Ar)),R($e,Jt,bt,Kt.uniforms,Ur,!1),R($e,Lt,bt,Kt.uniforms,Ar,!0),J($e,Jt,Lt,bt);else{var hi=$e.global.def("{}"),Cn=bt.shader.progVar.append($e,Lt),Yi=Lt.def(Cn,".id"),yn=Lt.def(hi,"[",Yi,"]");Lt($e.shared.gl,".useProgram(",Cn,".program);","if(!",yn,"){",yn,"=",hi,"[",Yi,"]=",$e.link(function(Xa){return O(ne,$e,bt,Xa,2)}),"(",Cn,");}",yn,".call(this,a0[",Qt,"],",Qt,");")}}function Ze($e,ht){var bt=$e.proc("batch",2);$e.batchId="0",bf($e,bt);var Kt=!1,sr=!0;Object.keys(ht.context).forEach(function(hi){Kt=Kt||ht.context[hi].propDep}),Kt||(Gu($e,bt,ht.context),sr=!1);var Qt=ht.framebuffer,ur=!1;Qt?(Qt.propDep?Kt=ur=!0:Qt.contextDep&&Kt&&(ur=!0),ur||cf($e,bt,Qt)):cf($e,bt,null),ht.state.viewport&&ht.state.viewport.propDep&&(Kt=!0);function er(hi){return hi.contextDep&&Kt||hi.propDep}mf($e,bt,ht),Fl($e,bt,ht.state,function(hi){return!er(hi)}),(!ht.profile||!er(ht.profile))&&cu($e,bt,ht,!1,"a1"),ht.contextDep=Kt,ht.needsContext=sr,ht.needsFramebuffer=ur;var Ot=ht.shader.progVar;if(Ot.contextDep&&Kt||Ot.propDep)Le($e,bt,ht,null);else{var Jt=Ot.append($e,bt);if(bt($e.shared.gl,".useProgram(",Jt,".program);"),ht.shader.program)Le($e,bt,ht,ht.shader.program);else{bt($e.shared.vao,".setVAO(null);");var Lt=$e.global.def("{}"),Ar=bt.def(Jt,".id"),Ur=bt.def(Lt,"[",Ar,"]");bt($e.cond(Ur).then(Ur,".call(this,a0,a1);").else(Ur,"=",Lt,"[",Ar,"]=",$e.link(function(hi){return O(Le,$e,ht,hi,2)}),"(",Jt,");",Ur,".call(this,a0,a1);"))}}Object.keys(ht.state).length>0&&bt($e.shared.current,".dirty=true;"),$e.shared.vao&&bt($e.shared.vao,".setVAO(null);")}function kt($e,ht){var bt=$e.proc("scope",3);$e.batchId="a2";var Kt=$e.shared,sr=Kt.current;if(Gu($e,bt,ht.context),ht.framebuffer&&ht.framebuffer.append($e,bt),sn(Object.keys(ht.state)).forEach(function(er){var Ot=ht.state[er],Jt=Ot.append($e,bt);en(Jt)?Jt.forEach(function(Lt,Ar){Va(Lt)?bt.set($e.next[er],"["+Ar+"]",Lt):bt.set($e.next[er],"["+Ar+"]",$e.link(Lt,{stable:!0}))}):xo(Ot)?bt.set(Kt.next,"."+er,$e.link(Jt,{stable:!0})):bt.set(Kt.next,"."+er,Jt)}),cu($e,bt,ht,!0,!0),[Bt,kr,or,Vr,ir].forEach(function(er){var Ot=ht.draw[er];if(Ot){var Jt=Ot.append($e,bt);Va(Jt)?bt.set(Kt.draw,"."+er,Jt):bt.set(Kt.draw,"."+er,$e.link(Jt),{stable:!0})}}),Object.keys(ht.uniforms).forEach(function(er){var Ot=ht.uniforms[er].append($e,bt);Array.isArray(Ot)&&(Ot="["+Ot.map(function(Jt){return Va(Jt)?Jt:$e.link(Jt,{stable:!0})})+"]"),bt.set(Kt.uniforms,"["+$e.link(qt.id(er),{stable:!0})+"]",Ot)}),Object.keys(ht.attributes).forEach(function(er){var Ot=ht.attributes[er].append($e,bt),Jt=$e.scopeAttrib(er);Object.keys(new xi).forEach(function(Lt){bt.set(Jt,"."+Lt,Ot[Lt])})}),ht.scopeVAO){var Qt=ht.scopeVAO.append($e,bt);Va(Qt)?bt.set(Kt.vao,".targetVAO",Qt):bt.set(Kt.vao,".targetVAO",$e.link(Qt,{stable:!0}))}function ur(er){var Ot=ht.shader[er];if(Ot){var Jt=Ot.append($e,bt);Va(Jt)?bt.set(Kt.shader,"."+er,Jt):bt.set(Kt.shader,"."+er,$e.link(Jt,{stable:!0}))}}ur(tt),ur(mt),Object.keys(ht.state).length>0&&(bt(sr,".dirty=true;"),bt.exit(sr,".dirty=true;")),bt("a1(",$e.shared.context,",a0,",$e.batchId,");")}function dr($e){if(!(typeof $e!="object"||en($e))){for(var ht=Object.keys($e),bt=0;bt=0;--O){var K=_s[O];K&&K(qi,null,0)}ar.flush(),wn&&wn.update()}function Dl(){!nl&&_s.length>0&&(nl=d.next(pl))}function Fu(){nl&&(d.cancel(pl),nl=null)}function vf(O){O.preventDefault(),yi=!0,Fu(),ul.forEach(function(K){K()})}function Ql(O){ar.getError(),yi=!1,ci.restore(),hs.restore(),En.restore(),Ji.restore(),Ui.restore(),ro.restore(),ga.restore(),wn&&wn.restore(),na.procs.refresh(),Dl(),Qn.forEach(function(K){K()})}Va&&(Va.addEventListener(Tu,vf,!1),Va.addEventListener(Au,Ql,!1));function Ef(){_s.length=0,Fu(),Va&&(Va.removeEventListener(Tu,vf),Va.removeEventListener(Au,Ql)),hs.clear(),ro.clear(),Ui.clear(),ga.clear(),Ji.clear(),Zi.clear(),En.clear(),wn&&wn.clear(),Mo.forEach(function(O){O()})}function Cu(O){function K(Qt){var ur=e({},Qt);delete ur.uniforms,delete ur.attributes,delete ur.context,delete ur.vao,"stencil"in ur&&ur.stencil.op&&(ur.stencil.opBack=ur.stencil.opFront=ur.stencil.op,delete ur.stencil.op);function er(Ot){if(Ot in ur){var Jt=ur[Ot];delete ur[Ot],Object.keys(Jt).forEach(function(Lt){ur[Ot+"."+Lt]=Jt[Lt]})}}return er("blend"),er("depth"),er("cull"),er("stencil"),er("polygonOffset"),er("scissor"),er("sample"),"vao"in Qt&&(ur.vao=Qt.vao),ur}function _e(Qt,ur){var er={},Ot={};return Object.keys(Qt).forEach(function(Jt){var Lt=Qt[Jt];if(h.isDynamic(Lt)){Ot[Jt]=h.unbox(Lt,Jt);return}else if(ur&&Array.isArray(Lt)){for(var Ar=0;Ar0)return $e.call(this,Kt(Qt|0),Qt|0)}else if(Array.isArray(Qt)){if(Qt.length)return $e.call(this,Qt,Qt.length)}else return lr.call(this,Qt)}return e(sr,{stats:dr,destroy:function(){Mr.destroy()}})}var gf=ro.setFBO=Cu({framebuffer:h.define.call(null,lf,"framebuffer")});function xf(O,K){var _e=0;na.procs.poll();var ne=K.color;ne&&(ar.clearColor(+ne[0]||0,+ne[1]||0,+ne[2]||0,+ne[3]||0),_e|=Vu),"depth"in K&&(ar.clearDepth(+K.depth),_e|=tf),"stencil"in K&&(ar.clearStencil(K.stencil|0),_e|=ds),ar.clear(_e)}function Cf(O){if("framebuffer"in O)if(O.framebuffer&&O.framebuffer_reglType==="framebufferCube")for(var K=0;K<6;++K)gf(e({framebuffer:O.framebuffer.faces[K]},O),xf);else gf(O,xf);else xf(null,O)}function Gu(O){_s.push(O);function K(){var _e=pf(_s,O);function ne(){var Le=pf(_s,ne);_s[Le]=_s[_s.length-1],_s.length-=1,_s.length<=0&&Fu()}_s[_e]=ne}return Dl(),{cancel:K}}function cf(){var O=In.viewport,K=In.scissor_box;O[0]=O[1]=K[0]=K[1]=0,qi.viewportWidth=qi.framebufferWidth=qi.drawingBufferWidth=O[2]=K[2]=ar.drawingBufferWidth,qi.viewportHeight=qi.framebufferHeight=qi.drawingBufferHeight=O[3]=K[3]=ar.drawingBufferHeight}function mf(){qi.tick+=1,qi.time=bf(),cf(),na.procs.poll()}function Fl(){Ji.refresh(),cf(),na.procs.refresh(),wn&&wn.update()}function bf(){return(p()-Ls)/1e3}Fl();function cu(O,K){var _e;switch(O){case"frame":return Gu(K);case"lost":_e=ul;break;case"restore":_e=Qn;break;case"destroy":_e=Mo;break;default:}return _e.push(K),{cancel:function(){for(var ne=0;ne<_e.length;++ne)if(_e[ne]===K){_e[ne]=_e[_e.length-1],_e.pop();return}}}}function Y(){return Bn}function R(O){Object.entries(O).forEach(function(K){Bn[K[0]]=K[1]})}var J=e(Cu,{clear:Cf,prop:h.define.bind(null,lf),context:h.define.bind(null,hf),this:h.define.bind(null,Mf),draw:Cu({}),buffer:function(O){return En.create(O,Wl,!1,!1)},elements:function(O){return Zi.create(O,!1)},texture:Ji.create2D,cube:Ji.createCube,renderbuffer:Ui.create,framebuffer:ro.create,framebufferCube:ro.createCube,vao:ga.createVAO,attributes:Qr,frame:Gu,on:cu,limits:dn,hasExtension:function(O){return dn.extensions.indexOf(O.toLowerCase())>=0},read:On,destroy:Ef,_gl:ar,_refresh:Fl,poll:function(){mf(),wn&&wn.update()},now:bf,stats:on,getCachedCode:Y,preloadCachedCode:R});return qt.onDone(null,J),J}return fc})});var eNe=Ae((Exr,Qqe)=>{"use strict";var HUt=Zy();Qqe.exports=function(t){if(t?typeof t=="string"&&(t={container:t}):t={},Jqe(t)?t={container:t}:WUt(t)?t={container:t}:jUt(t)?t={gl:t}:t=HUt(t,{container:"container target element el canvas holder parent parentNode wrapper use ref root node",gl:"gl context webgl glContext",attrs:"attributes attrs contextAttributes",pixelRatio:"pixelRatio pxRatio px ratio pxratio pixelratio",width:"w width",height:"h height"},!0),t.pixelRatio||(t.pixelRatio=window.pixelRatio||1),t.gl)return t.gl;if(t.canvas&&(t.container=t.canvas.parentNode),t.container){if(typeof t.container=="string"){var r=document.querySelector(t.container);if(!r)throw Error("Element "+t.container+" is not found");t.container=r}Jqe(t.container)?(t.canvas=t.container,t.container=t.canvas.parentNode):t.canvas||(t.canvas=$qe(),t.container.appendChild(t.canvas),Kqe(t))}else if(!t.canvas)if(typeof document!="undefined")t.container=document.body||document.documentElement,t.canvas=$qe(),t.container.appendChild(t.canvas),Kqe(t);else throw Error("Not DOM environment. Use headless-gl.");return t.gl||["webgl","experimental-webgl","webgl-experimental"].some(function(n){try{t.gl=t.canvas.getContext(n,t.attrs)}catch(i){}return t.gl}),t.gl};function Kqe(e){if(e.container)if(e.container==document.body)document.body.style.width||(e.canvas.width=e.width||e.pixelRatio*window.innerWidth),document.body.style.height||(e.canvas.height=e.height||e.pixelRatio*window.innerHeight);else{var t=e.container.getBoundingClientRect();e.canvas.width=e.width||t.right-t.left,e.canvas.height=e.height||t.bottom-t.top}}function Jqe(e){return typeof e.getContext=="function"&&"width"in e&&"height"in e}function WUt(e){return typeof e.nodeName=="string"&&typeof e.appendChild=="function"&&typeof e.getBoundingClientRect=="function"}function jUt(e){return typeof e.drawArrays=="function"||typeof e.drawElements=="function"}function $qe(){var e=document.createElement("canvas");return e.style.position="absolute",e.style.top=0,e.style.left=0,e}});var rNe=Ae((kxr,tNe)=>{"use strict";var XUt=uK(),ZUt=[32,126];tNe.exports=YUt;function YUt(e){e=e||{};var t=e.shape?e.shape:e.canvas?[e.canvas.width,e.canvas.height]:[512,512],r=e.canvas||document.createElement("canvas"),n=e.font,i=typeof e.step=="number"?[e.step,e.step]:e.step||[32,32],a=e.chars||ZUt;if(n&&typeof n!="string"&&(n=XUt(n)),!Array.isArray(a))a=String(a).split("");else if(a.length===2&&typeof a[0]=="number"&&typeof a[1]=="number"){for(var o=[],s=a[0],u=0;s<=a[1];s++)o[u++]=String.fromCharCode(s);a=o}t=t.slice(),r.width=t[0],r.height=t[1];var l=r.getContext("2d");l.fillStyle="#000",l.fillRect(0,0,r.width,r.height),l.font=n,l.textAlign="center",l.textBaseline="middle",l.fillStyle="#fff";for(var f=i[0]/2,c=i[1]/2,s=0;st[0]-i[0]/2&&(f=i[0]/2,c+=i[1]);return r}});var dK=Ae(Wh=>{"use strict";"use restrict";var hK=32;Wh.INT_BITS=hK;Wh.INT_MAX=2147483647;Wh.INT_MIN=-1<0)-(e<0)};Wh.abs=function(e){var t=e>>hK-1;return(e^t)-t};Wh.min=function(e,t){return t^(e^t)&-(e65535)<<4,e>>>=t,r=(e>255)<<3,e>>>=r,t|=r,r=(e>15)<<2,e>>>=r,t|=r,r=(e>3)<<1,e>>>=r,t|=r,t|e>>1};Wh.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0};Wh.popCount=function(e){return e=e-(e>>>1&1431655765),e=(e&858993459)+(e>>>2&858993459),(e+(e>>>4)&252645135)*16843009>>>24};function iNe(e){var t=32;return e&=-e,e&&t--,e&65535&&(t-=16),e&16711935&&(t-=8),e&252645135&&(t-=4),e&858993459&&(t-=2),e&1431655765&&(t-=1),t}Wh.countTrailingZeros=iNe;Wh.nextPow2=function(e){return e+=e===0,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e+1};Wh.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e-(e>>>1)};Wh.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,e&=15,27030>>>e&1};var Mk=new Array(256);(function(e){for(var t=0;t<256;++t){var r=t,n=t,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=r&1,--i;e[t]=n<>>8&255]<<16|Mk[e>>>16&255]<<8|Mk[e>>>24&255]};Wh.interleave2=function(e,t){return e&=65535,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t&=65535,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1};Wh.deinterleave2=function(e,t){return e=e>>>t&1431655765,e=(e|e>>>1)&858993459,e=(e|e>>>2)&252645135,e=(e|e>>>4)&16711935,e=(e|e>>>16)&65535,e<<16>>16};Wh.interleave3=function(e,t,r){return e&=1023,e=(e|e<<16)&4278190335,e=(e|e<<8)&251719695,e=(e|e<<4)&3272356035,e=(e|e<<2)&1227133513,t&=1023,t=(t|t<<16)&4278190335,t=(t|t<<8)&251719695,t=(t|t<<4)&3272356035,t=(t|t<<2)&1227133513,e|=t<<1,r&=1023,r=(r|r<<16)&4278190335,r=(r|r<<8)&251719695,r=(r|r<<4)&3272356035,r=(r|r<<2)&1227133513,e|r<<2};Wh.deinterleave3=function(e,t){return e=e>>>t&1227133513,e=(e|e>>>2)&3272356035,e=(e|e>>>4)&251719695,e=(e|e>>>8)&4278190335,e=(e|e>>>16)&1023,e<<22>>22};Wh.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>iNe(e)+1}});var oNe=Ae((Lxr,aNe)=>{"use strict";function nNe(e,t,r){var n=e[r]|0;if(n<=0)return[];var i=new Array(n),a;if(r===e.length-1)for(a=0;a0)return KUt(e|0,t);break;case"object":if(typeof e.length=="number")return nNe(e,t,0);break}return[]}aNe.exports=JUt});var bNe=Ae(rc=>{"use strict";var cx=dK(),Cp=oNe(),sNe=f2().Buffer;window.__TYPEDARRAY_POOL||(window.__TYPEDARRAY_POOL={UINT8:Cp([32,0]),UINT16:Cp([32,0]),UINT32:Cp([32,0]),BIGUINT64:Cp([32,0]),INT8:Cp([32,0]),INT16:Cp([32,0]),INT32:Cp([32,0]),BIGINT64:Cp([32,0]),FLOAT:Cp([32,0]),DOUBLE:Cp([32,0]),DATA:Cp([32,0]),UINT8C:Cp([32,0]),BUFFER:Cp([32,0])});var $Ut=typeof Uint8ClampedArray!="undefined",QUt=typeof BigUint64Array!="undefined",eVt=typeof BigInt64Array!="undefined",sd=window.__TYPEDARRAY_POOL;sd.UINT8C||(sd.UINT8C=Cp([32,0]));sd.BIGUINT64||(sd.BIGUINT64=Cp([32,0]));sd.BIGINT64||(sd.BIGINT64=Cp([32,0]));sd.BUFFER||(sd.BUFFER=Cp([32,0]));var g8=sd.DATA,_8=sd.BUFFER;rc.free=function(t){if(sNe.isBuffer(t))_8[cx.log2(t.length)].push(t);else{if(Object.prototype.toString.call(t)!=="[object ArrayBuffer]"&&(t=t.buffer),!t)return;var r=t.length||t.byteLength,n=cx.log2(r)|0;g8[n].push(t)}};function lNe(e){if(e){var t=e.length||e.byteLength,r=cx.log2(t);g8[r].push(e)}}function tVt(e){lNe(e.buffer)}rc.freeUint8=rc.freeUint16=rc.freeUint32=rc.freeBigUint64=rc.freeInt8=rc.freeInt16=rc.freeInt32=rc.freeBigInt64=rc.freeFloat32=rc.freeFloat=rc.freeFloat64=rc.freeDouble=rc.freeUint8Clamped=rc.freeDataView=tVt;rc.freeArrayBuffer=lNe;rc.freeBuffer=function(t){_8[cx.log2(t.length)].push(t)};rc.malloc=function(t,r){if(r===void 0||r==="arraybuffer")return qv(t);switch(r){case"uint8":return pK(t);case"uint16":return uNe(t);case"uint32":return fNe(t);case"int8":return cNe(t);case"int16":return hNe(t);case"int32":return dNe(t);case"float":case"float32":return pNe(t);case"double":case"float64":return vNe(t);case"uint8_clamped":return mNe(t);case"bigint64":return gNe(t);case"biguint64":return yNe(t);case"buffer":return xNe(t);case"data":case"dataview":return _Ne(t);default:return null}return null};function qv(t){var t=cx.nextPow2(t),r=cx.log2(t),n=g8[r];return n.length>0?n.pop():new ArrayBuffer(t)}rc.mallocArrayBuffer=qv;function pK(e){return new Uint8Array(qv(e),0,e)}rc.mallocUint8=pK;function uNe(e){return new Uint16Array(qv(2*e),0,e)}rc.mallocUint16=uNe;function fNe(e){return new Uint32Array(qv(4*e),0,e)}rc.mallocUint32=fNe;function cNe(e){return new Int8Array(qv(e),0,e)}rc.mallocInt8=cNe;function hNe(e){return new Int16Array(qv(2*e),0,e)}rc.mallocInt16=hNe;function dNe(e){return new Int32Array(qv(4*e),0,e)}rc.mallocInt32=dNe;function pNe(e){return new Float32Array(qv(4*e),0,e)}rc.mallocFloat32=rc.mallocFloat=pNe;function vNe(e){return new Float64Array(qv(8*e),0,e)}rc.mallocFloat64=rc.mallocDouble=vNe;function mNe(e){return $Ut?new Uint8ClampedArray(qv(e),0,e):pK(e)}rc.mallocUint8Clamped=mNe;function yNe(e){return QUt?new BigUint64Array(qv(8*e),0,e):null}rc.mallocBigUint64=yNe;function gNe(e){return eVt?new BigInt64Array(qv(8*e),0,e):null}rc.mallocBigInt64=gNe;function _Ne(e){return new DataView(qv(e),0,e)}rc.mallocDataView=_Ne;function xNe(e){e=cx.nextPow2(e);var t=cx.log2(e),r=_8[t];return r.length>0?r.pop():new sNe(e)}rc.mallocBuffer=xNe;rc.clearCache=function(){for(var t=0;t<32;++t)sd.UINT8[t].length=0,sd.UINT16[t].length=0,sd.UINT32[t].length=0,sd.INT8[t].length=0,sd.INT16[t].length=0,sd.INT32[t].length=0,sd.FLOAT[t].length=0,sd.DOUBLE[t].length=0,sd.BIGUINT64[t].length=0,sd.BIGINT64[t].length=0,sd.UINT8C[t].length=0,g8[t].length=0,_8[t].length=0}});var TNe=Ae((zxr,wNe)=>{"use strict";var rVt=Object.prototype.toString;wNe.exports=function(e){var t;return rVt.call(e)==="[object Object]"&&(t=Object.getPrototypeOf(e),t===null||t===Object.getPrototypeOf({}))}});var vK=Ae((Ixr,ANe)=>{ANe.exports=function(t,r){r||(r=[0,""]),t=String(t);var n=parseFloat(t,10);return r[0]=n,r[1]=t.match(/[\d.\-\+]*\s*(.*)/)[1]||"",r}});var ENe=Ae((Rxr,MNe)=>{"use strict";var iVt=vK();MNe.exports=SNe;var Ek=96;function mK(e,t){var r=iVt(getComputedStyle(e).getPropertyValue(t));return r[0]*SNe(r[1],e)}function nVt(e,t){var r=document.createElement("div");r.style["font-size"]="128"+e,t.appendChild(r);var n=mK(r,"font-size")/128;return t.removeChild(r),n}function SNe(e,t){switch(t=t||document.body,e=(e||"px").trim().toLowerCase(),(t===window||t===document)&&(t=document.body),e){case"%":return t.clientHeight/100;case"ch":case"ex":return nVt(e,t);case"em":return mK(t,"font-size");case"rem":return mK(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return Ek;case"cm":return Ek/2.54;case"mm":return Ek/25.4;case"pt":return Ek/72;case"pc":return Ek/6}return 1}});var LNe=Ae((Dxr,CNe)=>{"use strict";CNe.exports=w8;var aVt=w8.canvas=document.createElement("canvas"),x8=aVt.getContext("2d"),kNe=b8([32,126]);w8.createPairs=b8;w8.ascii=kNe;function w8(e,t){Array.isArray(e)&&(e=e.join(", "));var r={},n,i=16,a=.05;t&&(t.length===2&&typeof t[0]=="number"?n=b8(t):Array.isArray(t)?n=t:(t.o?n=b8(t.o):t.pairs&&(n=t.pairs),t.fontSize&&(i=t.fontSize),t.threshold!=null&&(a=t.threshold))),n||(n=kNe),x8.font=i+"px "+e;for(var o=0;oi*a){var f=(l-u)/i;r[s]=f*1e3}}return r}function b8(e){for(var t=[],r=e[0];r<=e[1];r++)for(var n=String.fromCharCode(r),i=e[0];i{"use strict";INe.exports=hx;hx.canvas=document.createElement("canvas");hx.cache={};function hx(o,t){t||(t={}),(typeof o=="string"||Array.isArray(o))&&(t.family=o);var r=Array.isArray(t.family)?t.family.join(", "):t.family;if(!r)throw Error("`family` must be defined");var n=t.size||t.fontSize||t.em||48,i=t.weight||t.fontWeight||"",a=t.style||t.fontStyle||"",o=[a,i,n].join(" ")+"px "+r,s=t.origin||"top";if(hx.cache[r]&&n<=hx.cache[r].em)return PNe(hx.cache[r],s);var u=t.canvas||hx.canvas,l=u.getContext("2d"),f={upper:t.upper!==void 0?t.upper:"H",lower:t.lower!==void 0?t.lower:"x",descent:t.descent!==void 0?t.descent:"p",ascent:t.ascent!==void 0?t.ascent:"h",tittle:t.tittle!==void 0?t.tittle:"i",overshoot:t.overshoot!==void 0?t.overshoot:"O"},c=Math.ceil(n*1.5);u.height=c,u.width=c*.5,l.font=o;var h="H",d={top:0};l.clearRect(0,0,c,c),l.textBaseline="top",l.fillStyle="black",l.fillText(h,0,0);var p=Ky(l.getImageData(0,0,c,c));l.clearRect(0,0,c,c),l.textBaseline="bottom",l.fillText(h,0,c);var _=Ky(l.getImageData(0,0,c,c));d.lineHeight=d.bottom=c-_+p,l.clearRect(0,0,c,c),l.textBaseline="alphabetic",l.fillText(h,0,c);var b=Ky(l.getImageData(0,0,c,c)),v=c-b-1+p;d.baseline=d.alphabetic=v,l.clearRect(0,0,c,c),l.textBaseline="middle",l.fillText(h,0,c*.5);var k=Ky(l.getImageData(0,0,c,c));d.median=d.middle=c-k-1+p-c*.5,l.clearRect(0,0,c,c),l.textBaseline="hanging",l.fillText(h,0,c*.5);var E=Ky(l.getImageData(0,0,c,c));d.hanging=c-E-1+p-c*.5,l.clearRect(0,0,c,c),l.textBaseline="ideographic",l.fillText(h,0,c);var A=Ky(l.getImageData(0,0,c,c));if(d.ideographic=c-A-1+p,f.upper&&(l.clearRect(0,0,c,c),l.textBaseline="top",l.fillText(f.upper,0,0),d.upper=Ky(l.getImageData(0,0,c,c)),d.capHeight=d.baseline-d.upper),f.lower&&(l.clearRect(0,0,c,c),l.textBaseline="top",l.fillText(f.lower,0,0),d.lower=Ky(l.getImageData(0,0,c,c)),d.xHeight=d.baseline-d.lower),f.tittle&&(l.clearRect(0,0,c,c),l.textBaseline="top",l.fillText(f.tittle,0,0),d.tittle=Ky(l.getImageData(0,0,c,c))),f.ascent&&(l.clearRect(0,0,c,c),l.textBaseline="top",l.fillText(f.ascent,0,0),d.ascent=Ky(l.getImageData(0,0,c,c))),f.descent&&(l.clearRect(0,0,c,c),l.textBaseline="top",l.fillText(f.descent,0,0),d.descent=zNe(l.getImageData(0,0,c,c))),f.overshoot){l.clearRect(0,0,c,c),l.textBaseline="top",l.fillText(f.overshoot,0,0);var L=zNe(l.getImageData(0,0,c,c));d.overshoot=L-v}for(var x in d)d[x]/=n;return d.em=n,hx.cache[r]=d,PNe(d,s)}function PNe(e,t){var r={};typeof t=="string"&&(t=e[t]);for(var n in e)n!=="em"&&(r[n]=e[n]-t);return r}function Ky(e){for(var t=e.height,r=e.data,n=3;n0;n-=4)if(r[n]!==0)return Math.floor((n-3)*.25/t)}});var ONe=Ae((Bxr,BNe)=>{"use strict";var pS=Zqe(),oVt=Zy(),sVt=Yqe(),lVt=eNe(),uVt=YY(),yK=J_(),fVt=rNe(),dx=bNe(),cVt=rS(),hVt=TNe(),dVt=vK(),pVt=ENe(),vVt=LNe(),mVt=Gh(),yVt=RNe(),gVt=X2(),_Vt=dK(),DNe=_Vt.nextPow2,FNe=new uVt,A8=!1;document.body&&(T8=document.body.appendChild(document.createElement("div")),T8.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(T8).fontStretch&&(A8=!0),document.body.removeChild(T8));var T8,kc=function(t){xVt(t)?(t={regl:t},this.gl=t.regl._gl):this.gl=lVt(t),this.shader=FNe.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=t.regl||sVt({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),FNe.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(hVt(t)?t:{})};kc.prototype.createShader=function(){var t=this.regl,r=t({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:t.prop("count"),offset:t.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:t.this("sizeBuffer")},width:{offset:0,stride:8,buffer:t.this("sizeBuffer")},char:t.this("charBuffer"),position:t.this("position")},uniforms:{atlasSize:function(i,a){return[a.atlas.width,a.atlas.height]},atlasDim:function(i,a){return[a.atlas.cols,a.atlas.rows]},atlas:function(i,a){return a.atlas.texture},charStep:function(i,a){return a.atlas.step},em:function(i,a){return a.atlas.em},color:t.prop("color"),opacity:t.prop("opacity"),viewport:t.this("viewportArray"),scale:t.this("scale"),align:t.prop("align"),baseline:t.prop("baseline"),translate:t.this("translate"),positionOffset:t.prop("positionOffset")},primitive:"points",viewport:t.this("viewport"),vert:` +`),xi;if(qt&&(xi=Fs(Wr),qt[xi]))return qt[xi].apply(null,yi);var dn=Function.apply(null,Qr.concat(Wr));return qt&&(qt[xi]=dn),dn.apply(null,yi)}return{global:wn,link:vi,block:on,proc:ua,scope:Bn,cond:Ln,compile:Hn}}var ta="xyzw".split(""),ya=5121,ia=1,pa=2,va=0,zn=1,is=2,Cs=3,Ks=4,dl=5,xl=6,Bl="dither",bl="blend.enable",eu="blend.color",Zl="blend.equation",Ul="blend.func",ja="depth.enable",ns="depth.func",Js="depth.range",cs="depth.mask",sl="colorMask",ll="cull.enable",il="cull.face",zl="frontFace",Ml="lineWidth",Rl="polygonOffset.enable",Tl="polygonOffset.offset",Ll="sample.alpha",ms="sample.enable",Os="sample.coverage",Xl="stencil.enable",Vl="stencil.mask",Nl="stencil.func",le="stencil.opFront",w="stencil.opBack",q="scissor.enable",Q="scissor.box",ee="viewport",ue="profile",Ve="framebuffer",tt="vert",mt="frag",Bt="elements",ir="primitive",or="count",kr="offset",Vr="instances",he="vao",Se="Width",Ne="Height",Ge=Ve+Se,lt=Ve+Ne,rt=ee+Se,pt=ee+Ne,Ht="drawingBuffer",nr=Ht+Se,fr=Ht+Ne,Tr=[Ul,Zl,Nl,le,w,Os,ee,Q,Tl],Ir=34962,ri=34963,li=2884,Ei=3042,hn=3024,Zn=2960,Yn=2929,Ua=3089,Fo=32823,vl=32926,Us=32928,ml=5126,au=35664,Sl=35665,Yl=35666,Ol=5124,ou=35667,Pu=35668,nu=35669,tu=35670,Hu=35671,$u=35672,Ku=35673,Wu=35674,ju=35675,sf=35676,_f=35678,Qu=35680,ef=4,Z=1028,se=1029,Pe=2304,Xe=2305,Qe=32775,st=32776,jt=519,_t=7680,hr=0,Cr=1,zr=32774,fi=513,$r=36160,Bi=36064,fn={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},mi={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},zi={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ji={cw:Pe,ccw:Xe};function pn(Be){return Array.isArray(Be)||yr(Be)||Ut(Be)}function sn(Be){return Be.sort(function(qt,ar){return qt===ee?-1:ar===ee?1:qt=1,Qr>=2,qt)}else if(ar===Ks){var yi=Be.data;return new wi(yi.thisDep,yi.contextDep,yi.propDep,qt)}else{if(ar===dl)return new wi(!1,!1,!1,qt);if(ar===xl){for(var ci=!1,vi=!1,on=!1,Bn=0;Bn=1&&(vi=!0),wn>=2&&(on=!0)}else Ln.type===Ks&&(ci=ci||Ln.data.thisDep,vi=vi||Ln.data.contextDep,on=on||Ln.data.propDep)}return new wi(ci,vi,on,qt)}else return new wi(ar===Cs,ar===is,ar===zn,qt)}}var js=new wi(!1,!1,!1,function(){});function El(Be,qt,ar,Qr,yi,ci,vi,on,Bn,Ln,wn,Ls,ua,Hn,qi,Wr){var xi=Ln.Record,dn={add:32774,subtract:32778,"reverse subtract":32779};ar.ext_blend_minmax&&(dn.min=Qe,dn.max=st);var En=ar.angle_instanced_arrays,Zi=ar.webgl_draw_buffers,ga=ar.oes_vertex_array_object,Kn={dirty:!0,profile:Wr.profile},hs={},Ji=[],Ui={},ro={};function na($e){return $e.replace(".","_")}function On($e,ht,bt){var Kt=na($e);Ji.push($e),hs[Kt]=Kn[Kt]=!!bt,Ui[Kt]=ht}function In($e,ht,bt){var Kt=na($e);Ji.push($e),Array.isArray(bt)?(Kn[Kt]=bt.slice(),hs[Kt]=bt.slice()):Kn[Kt]=hs[Kt]=bt,ro[Kt]=ht}function Va($e){return!!isNaN($e)}On(Bl,hn),On(bl,Ei),In(eu,"blendColor",[0,0,0,0]),In(Zl,"blendEquationSeparate",[zr,zr]),In(Ul,"blendFuncSeparate",[Cr,hr,Cr,hr]),On(ja,Yn,!0),In(ns,"depthFunc",fi),In(Js,"depthRange",[0,1]),In(cs,"depthMask",!0),In(sl,sl,[!0,!0,!0,!0]),On(ll,li),In(il,"cullFace",se),In(zl,zl,Xe),In(Ml,Ml,1),On(Rl,Fo),In(Tl,"polygonOffset",[0,0]),On(Ll,vl),On(ms,Us),In(Os,"sampleCoverage",[1,!1]),On(Xl,Zn),In(Vl,"stencilMask",-1),In(Nl,"stencilFunc",[jt,0,-1]),In(le,"stencilOpSeparate",[Z,_t,_t,_t]),In(w,"stencilOpSeparate",[se,_t,_t,_t]),On(q,Ua),In(Q,"scissor",[0,0,Be.drawingBufferWidth,Be.drawingBufferHeight]),In(ee,ee,[0,0,Be.drawingBufferWidth,Be.drawingBufferHeight]);var _s={gl:Be,context:ua,strings:qt,next:hs,current:Kn,draw:Ls,elements:ci,buffer:yi,shader:wn,attributes:Ln.state,vao:Ln,uniforms:Bn,framebuffer:on,extensions:ar,timer:Hn,isBufferArgs:pn},ul={primTypes:ti,compareFuncs:mi,blendFuncs:fn,blendEquations:dn,stencilOps:zi,glTypes:pi,orientationType:ji};Zi&&(ul.backBuffer=[se],ul.drawBuffer=M(Qr.maxDrawbuffers,function($e){return $e===0?[0]:M($e,function(ht){return Bi+ht})}));var Qn=0;function Mo(){var $e=Gn({cache:qi}),ht=$e.link,bt=$e.global;$e.id=Qn++,$e.batchId="0";var Kt=ht(_s),sr=$e.shared={props:"a0"};Object.keys(_s).forEach(function(Jt){sr[Jt]=bt.def(Kt,".",Jt)});var Qt=$e.next={},ur=$e.current={};Object.keys(ro).forEach(function(Jt){Array.isArray(Kn[Jt])&&(Qt[Jt]=bt.def(sr.next,".",Jt),ur[Jt]=bt.def(sr.current,".",Jt))});var er=$e.constants={};Object.keys(ul).forEach(function(Jt){er[Jt]=bt.def(JSON.stringify(ul[Jt]))}),$e.invoke=function(Jt,Lt){switch(Lt.type){case va:var Ar=["this",sr.context,sr.props,$e.batchId];return Jt.def(ht(Lt.data),".call(",Ar.slice(0,Math.max(Lt.data.length+1,4)),")");case zn:return Jt.def(sr.props,Lt.data);case is:return Jt.def(sr.context,Lt.data);case Cs:return Jt.def("this",Lt.data);case Ks:return Lt.data.append($e,Jt),Lt.data.ref;case dl:return Lt.data.toString();case xl:return Lt.data.map(function(Ur){return $e.invoke(Jt,Ur)})}},$e.attribCache={};var Ot={};return $e.scopeAttrib=function(Jt){var Lt=qt.id(Jt);if(Lt in Ot)return Ot[Lt];var Ar=Ln.scope[Lt];Ar||(Ar=Ln.scope[Lt]=new xi);var Ur=Ot[Lt]=ht(Ar);return Ur},$e}function nl($e){var ht=$e.static,bt=$e.dynamic,Kt;if(ue in ht){var sr=!!ht[ue];Kt=no(function(ur,er){return sr}),Kt.enable=sr}else if(ue in bt){var Qt=bt[ue];Kt=Xo(Qt,function(ur,er){return ur.invoke(er,Qt)})}return Kt}function pl($e,ht){var bt=$e.static,Kt=$e.dynamic;if(Ve in bt){var sr=bt[Ve];return sr?(sr=on.getFramebuffer(sr),no(function(ur,er){var Ot=ur.link(sr),Jt=ur.shared;er.set(Jt.framebuffer,".next",Ot);var Lt=Jt.context;return er.set(Lt,"."+Ge,Ot+".width"),er.set(Lt,"."+lt,Ot+".height"),Ot})):no(function(ur,er){var Ot=ur.shared;er.set(Ot.framebuffer,".next","null");var Jt=Ot.context;return er.set(Jt,"."+Ge,Jt+"."+nr),er.set(Jt,"."+lt,Jt+"."+fr),"null"})}else if(Ve in Kt){var Qt=Kt[Ve];return Xo(Qt,function(ur,er){var Ot=ur.invoke(er,Qt),Jt=ur.shared,Lt=Jt.framebuffer,Ar=er.def(Lt,".getFramebuffer(",Ot,")");er.set(Lt,".next",Ar);var Ur=Jt.context;return er.set(Ur,"."+Ge,Ar+"?"+Ar+".width:"+Ur+"."+nr),er.set(Ur,"."+lt,Ar+"?"+Ar+".height:"+Ur+"."+fr),Ar})}else return null}function Dl($e,ht,bt){var Kt=$e.static,sr=$e.dynamic;function Qt(Ot){if(Ot in Kt){var Jt=Kt[Ot],Lt=!0,Ar=Jt.x|0,Ur=Jt.y|0,hi,Cn;return"width"in Jt?hi=Jt.width|0:Lt=!1,"height"in Jt?Cn=Jt.height|0:Lt=!1,new wi(!Lt&&ht&&ht.thisDep,!Lt&&ht&&ht.contextDep,!Lt&&ht&&ht.propDep,function(Xa,ca){var An=Xa.shared.context,Pn=hi;"width"in Jt||(Pn=ca.def(An,".",Ge,"-",Ar));var Nn=Cn;return"height"in Jt||(Nn=ca.def(An,".",lt,"-",Ur)),[Ar,Ur,Pn,Nn]})}else if(Ot in sr){var Yi=sr[Ot],yn=Xo(Yi,function(Xa,ca){var An=Xa.invoke(ca,Yi),Pn=Xa.shared.context,Nn=ca.def(An,".x|0"),xa=ca.def(An,".y|0"),Zo=ca.def('"width" in ',An,"?",An,".width|0:","(",Pn,".",Ge,"-",Nn,")"),ru=ca.def('"height" in ',An,"?",An,".height|0:","(",Pn,".",lt,"-",xa,")");return[Nn,xa,Zo,ru]});return ht&&(yn.thisDep=yn.thisDep||ht.thisDep,yn.contextDep=yn.contextDep||ht.contextDep,yn.propDep=yn.propDep||ht.propDep),yn}else return ht?new wi(ht.thisDep,ht.contextDep,ht.propDep,function(Xa,ca){var An=Xa.shared.context;return[0,0,ca.def(An,".",Ge),ca.def(An,".",lt)]}):null}var ur=Qt(ee);if(ur){var er=ur;ur=new wi(ur.thisDep,ur.contextDep,ur.propDep,function(Ot,Jt){var Lt=er.append(Ot,Jt),Ar=Ot.shared.context;return Jt.set(Ar,"."+rt,Lt[2]),Jt.set(Ar,"."+pt,Lt[3]),Lt})}return{viewport:ur,scissor_box:Qt(Q)}}function Fu($e,ht){var bt=$e.static,Kt=typeof bt[mt]=="string"&&typeof bt[tt]=="string";if(Kt){if(Object.keys(ht.dynamic).length>0)return null;var sr=ht.static,Qt=Object.keys(sr);if(Qt.length>0&&typeof sr[Qt[0]]=="number"){for(var ur=[],er=0;er"+Nn+"?"+Lt+".constant["+Nn+"]:0;"}).join(""),"}}else{","if(",hi,"(",Lt,".buffer)){",Xa,"=",Cn,".createStream(",Ir,",",Lt,".buffer);","}else{",Xa,"=",Cn,".getBuffer(",Lt,".buffer);","}",ca,'="type" in ',Lt,"?",Ur.glTypes,"[",Lt,".type]:",Xa,".dtype;",Yi.normalized,"=!!",Lt,".normalized;");function An(Pn){Jt(Yi[Pn],"=",Lt,".",Pn,"|0;")}return An("size"),An("offset"),An("stride"),An("divisor"),Jt("}}"),Jt.exit("if(",Yi.isStream,"){",Cn,".destroyStream(",Xa,");","}"),Yi}sr[Qt]=Xo(ur,er)}),sr}function xf($e){var ht=$e.static,bt=$e.dynamic,Kt={};return Object.keys(ht).forEach(function(sr){var Qt=ht[sr];Kt[sr]=no(function(ur,er){return typeof Qt=="number"||typeof Qt=="boolean"?""+Qt:ur.link(Qt)})}),Object.keys(bt).forEach(function(sr){var Qt=bt[sr];Kt[sr]=Xo(Qt,function(ur,er){return ur.invoke(er,Qt)})}),Kt}function Cf($e,ht,bt,Kt,sr){var Qt=$e.static,ur=$e.dynamic,er=Fu($e,ht),Ot=pl($e,sr),Jt=Dl($e,Ot,sr),Lt=Ql($e,sr),Ar=Ef($e,sr),Ur=vf($e,sr,er);function hi(An){var Pn=Jt[An];Pn&&(Ar[An]=Pn)}hi(ee),hi(na(Q));var Cn=Object.keys(Ar).length>0,Yi={framebuffer:Ot,draw:Lt,shader:Ur,state:Ar,dirty:Cn,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(Yi.profile=nl($e,sr),Yi.uniforms=Cu(bt,sr),Yi.drawVAO=Yi.scopeVAO=Lt.vao,!Yi.drawVAO&&Ur.program&&!er&&ar.angle_instanced_arrays&&Lt.static.elements){var yn=!0,Xa=Ur.program.attributes.map(function(An){var Pn=ht.static[An];return yn=yn&&!!Pn,Pn});if(yn&&Xa.length>0){var ca=Ln.getVAO(Ln.createVAO({attributes:Xa,elements:Lt.static.elements}));Yi.drawVAO=new wi(null,null,null,function(An,Pn){return An.link(ca)}),Yi.useVAO=!0}}return er?Yi.useVAO=!0:Yi.attributes=gf(ht,sr),Yi.context=xf(Kt,sr),Yi}function Gu($e,ht,bt){var Kt=$e.shared,sr=Kt.context,Qt=$e.scope();Object.keys(bt).forEach(function(ur){ht.save(sr,"."+ur);var er=bt[ur],Ot=er.append($e,ht);Array.isArray(Ot)?Qt(sr,".",ur,"=[",Ot.join(),"];"):Qt(sr,".",ur,"=",Ot,";")}),ht(Qt)}function cf($e,ht,bt,Kt){var sr=$e.shared,Qt=sr.gl,ur=sr.framebuffer,er;Zi&&(er=ht.def(sr.extensions,".webgl_draw_buffers"));var Ot=$e.constants,Jt=Ot.drawBuffer,Lt=Ot.backBuffer,Ar;bt?Ar=bt.append($e,ht):Ar=ht.def(ur,".next"),Kt||ht("if(",Ar,"!==",ur,".cur){"),ht("if(",Ar,"){",Qt,".bindFramebuffer(",$r,",",Ar,".framebuffer);"),Zi&&ht(er,".drawBuffersWEBGL(",Jt,"[",Ar,".colorAttachments.length]);"),ht("}else{",Qt,".bindFramebuffer(",$r,",null);"),Zi&&ht(er,".drawBuffersWEBGL(",Lt,");"),ht("}",ur,".cur=",Ar,";"),Kt||ht("}")}function mf($e,ht,bt){var Kt=$e.shared,sr=Kt.gl,Qt=$e.current,ur=$e.next,er=Kt.current,Ot=Kt.next,Jt=$e.cond(er,".dirty");Ji.forEach(function(Lt){var Ar=na(Lt);if(!(Ar in bt.state)){var Ur,hi;if(Ar in ur){Ur=ur[Ar],hi=Qt[Ar];var Cn=M(Kn[Ar].length,function(yn){return Jt.def(Ur,"[",yn,"]")});Jt($e.cond(Cn.map(function(yn,Xa){return yn+"!=="+hi+"["+Xa+"]"}).join("||")).then(sr,".",ro[Ar],"(",Cn,");",Cn.map(function(yn,Xa){return hi+"["+Xa+"]="+yn}).join(";"),";"))}else{Ur=Jt.def(Ot,".",Ar);var Yi=$e.cond(Ur,"!==",er,".",Ar);Jt(Yi),Ar in Ui?Yi($e.cond(Ur).then(sr,".enable(",Ui[Ar],");").else(sr,".disable(",Ui[Ar],");"),er,".",Ar,"=",Ur,";"):Yi(sr,".",ro[Ar],"(",Ur,");",er,".",Ar,"=",Ur,";")}}}),Object.keys(bt.state).length===0&&Jt(er,".dirty=false;"),ht(Jt)}function Fl($e,ht,bt,Kt){var sr=$e.shared,Qt=$e.current,ur=sr.current,er=sr.gl,Ot;sn(Object.keys(bt)).forEach(function(Jt){var Lt=bt[Jt];if(!(Kt&&!Kt(Lt))){var Ar=Lt.append($e,ht);if(Ui[Jt]){var Ur=Ui[Jt];xo(Lt)?(Ot=$e.link(Ar,{stable:!0}),ht($e.cond(Ot).then(er,".enable(",Ur,");").else(er,".disable(",Ur,");")),ht(ur,".",Jt,"=",Ot,";")):(ht($e.cond(Ar).then(er,".enable(",Ur,");").else(er,".disable(",Ur,");")),ht(ur,".",Jt,"=",Ar,";"))}else if(en(Ar)){var hi=Qt[Jt];ht(er,".",ro[Jt],"(",Ar,");",Ar.map(function(Cn,Yi){return hi+"["+Yi+"]="+Cn}).join(";"),";")}else xo(Lt)?(Ot=$e.link(Ar,{stable:!0}),ht(er,".",ro[Jt],"(",Ot,");",ur,".",Jt,"=",Ot,";")):ht(er,".",ro[Jt],"(",Ar,");",ur,".",Jt,"=",Ar,";")}})}function bf($e,ht){En&&($e.instancing=ht.def($e.shared.extensions,".angle_instanced_arrays"))}function cu($e,ht,bt,Kt,sr){var Qt=$e.shared,ur=$e.stats,er=Qt.current,Ot=Qt.timer,Jt=bt.profile;function Lt(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var Ar,Ur;function hi(An){Ar=ht.def(),An(Ar,"=",Lt(),";"),typeof sr=="string"?An(ur,".count+=",sr,";"):An(ur,".count++;"),Hn&&(Kt?(Ur=ht.def(),An(Ur,"=",Ot,".getNumPendingQueries();")):An(Ot,".beginQuery(",ur,");"))}function Cn(An){An(ur,".cpuTime+=",Lt(),"-",Ar,";"),Hn&&(Kt?An(Ot,".pushScopeStats(",Ur,",",Ot,".getNumPendingQueries(),",ur,");"):An(Ot,".endQuery();"))}function Yi(An){var Pn=ht.def(er,".profile");ht(er,".profile=",An,";"),ht.exit(er,".profile=",Pn,";")}var yn;if(Jt){if(xo(Jt)){Jt.enable?(hi(ht),Cn(ht.exit),Yi("true")):Yi("false");return}yn=Jt.append($e,ht),Yi(yn)}else yn=ht.def(er,".profile");var Xa=$e.block();hi(Xa),ht("if(",yn,"){",Xa,"}");var ca=$e.block();Cn(ca),ht.exit("if(",yn,"){",ca,"}")}function Y($e,ht,bt,Kt,sr){var Qt=$e.shared;function ur(Ot){switch(Ot){case au:case ou:case Hu:return 2;case Sl:case Pu:case $u:return 3;case Yl:case nu:case Ku:return 4;default:return 1}}function er(Ot,Jt,Lt){var Ar=Qt.gl,Ur=ht.def(Ot,".location"),hi=ht.def(Qt.attributes,"[",Ur,"]"),Cn=Lt.state,Yi=Lt.buffer,yn=[Lt.x,Lt.y,Lt.z,Lt.w],Xa=["buffer","normalized","offset","stride"];function ca(){ht("if(!",hi,".buffer){",Ar,".enableVertexAttribArray(",Ur,");}");var Pn=Lt.type,Nn;if(Lt.size?Nn=ht.def(Lt.size,"||",Jt):Nn=Jt,ht("if(",hi,".type!==",Pn,"||",hi,".size!==",Nn,"||",Xa.map(function(Zo){return hi+"."+Zo+"!=="+Lt[Zo]}).join("||"),"){",Ar,".bindBuffer(",Ir,",",Yi,".buffer);",Ar,".vertexAttribPointer(",[Ur,Nn,Pn,Lt.normalized,Lt.stride,Lt.offset],");",hi,".type=",Pn,";",hi,".size=",Nn,";",Xa.map(function(Zo){return hi+"."+Zo+"="+Lt[Zo]+";"}).join(""),"}"),En){var xa=Lt.divisor;ht("if(",hi,".divisor!==",xa,"){",$e.instancing,".vertexAttribDivisorANGLE(",[Ur,xa],");",hi,".divisor=",xa,";}")}}function An(){ht("if(",hi,".buffer){",Ar,".disableVertexAttribArray(",Ur,");",hi,".buffer=null;","}if(",ta.map(function(Pn,Nn){return hi+"."+Pn+"!=="+yn[Nn]}).join("||"),"){",Ar,".vertexAttrib4f(",Ur,",",yn,");",ta.map(function(Pn,Nn){return hi+"."+Pn+"="+yn[Nn]+";"}).join(""),"}")}Cn===ia?ca():Cn===pa?An():(ht("if(",Cn,"===",ia,"){"),ca(),ht("}else{"),An(),ht("}"))}Kt.forEach(function(Ot){var Jt=Ot.name,Lt=bt.attributes[Jt],Ar;if(Lt){if(!sr(Lt))return;Ar=Lt.append($e,ht)}else{if(!sr(js))return;var Ur=$e.scopeAttrib(Jt);Ar={},Object.keys(new xi).forEach(function(hi){Ar[hi]=ht.def(Ur,".",hi)})}er($e.link(Ot),ur(Ot.info.type),Ar)})}function R($e,ht,bt,Kt,sr,Qt){for(var ur=$e.shared,er=ur.gl,Ot,Jt=0;Jt1){for(var yu=[],Du=[],vu=0;vu>1)",Yi],");")}function xa(){bt(yn,".drawArraysInstancedANGLE(",[Ur,hi,Cn,Yi],");")}Lt&&Lt!=="null"?ca?Nn():(bt("if(",Lt,"){"),Nn(),bt("}else{"),xa(),bt("}")):xa()}function Pn(){function Nn(){bt(Qt+".drawElements("+[Ur,Cn,Xa,hi+"<<(("+Xa+"-"+ya+")>>1)"]+");")}function xa(){bt(Qt+".drawArrays("+[Ur,hi,Cn]+");")}Lt&&Lt!=="null"?ca?Nn():(bt("if(",Lt,"){"),Nn(),bt("}else{"),xa(),bt("}")):xa()}En&&(typeof Yi!="number"||Yi>=0)?typeof Yi=="string"?(bt("if(",Yi,">0){"),An(),bt("}else if(",Yi,"<0){"),Pn(),bt("}")):An():Pn()}function O($e,ht,bt,Kt,sr){var Qt=Mo(),ur=Qt.proc("body",sr);return En&&(Qt.instancing=ur.def(Qt.shared.extensions,".angle_instanced_arrays")),$e(Qt,ur,bt,Kt),Qt.compile().body}function K($e,ht,bt,Kt){bf($e,ht),bt.useVAO?bt.drawVAO?ht($e.shared.vao,".setVAO(",bt.drawVAO.append($e,ht),");"):ht($e.shared.vao,".setVAO(",$e.shared.vao,".targetVAO);"):(ht($e.shared.vao,".setVAO(null);"),Y($e,ht,bt,Kt.attributes,function(){return!0})),R($e,ht,bt,Kt.uniforms,function(){return!0},!1),J($e,ht,ht,bt)}function _e($e,ht){var bt=$e.proc("draw",1);bf($e,bt),Gu($e,bt,ht.context),cf($e,bt,ht.framebuffer),mf($e,bt,ht),Fl($e,bt,ht.state),cu($e,bt,ht,!1,!0);var Kt=ht.shader.progVar.append($e,bt);if(bt($e.shared.gl,".useProgram(",Kt,".program);"),ht.shader.program)K($e,bt,ht,ht.shader.program);else{bt($e.shared.vao,".setVAO(null);");var sr=$e.global.def("{}"),Qt=bt.def(Kt,".id"),ur=bt.def(sr,"[",Qt,"]");bt($e.cond(ur).then(ur,".call(this,a0);").else(ur,"=",sr,"[",Qt,"]=",$e.link(function(er){return O(K,$e,ht,er,1)}),"(",Kt,");",ur,".call(this,a0);"))}Object.keys(ht.state).length>0&&bt($e.shared.current,".dirty=true;"),$e.shared.vao&&bt($e.shared.vao,".setVAO(null);")}function ne($e,ht,bt,Kt){$e.batchId="a1",bf($e,ht);function sr(){return!0}Y($e,ht,bt,Kt.attributes,sr),R($e,ht,bt,Kt.uniforms,sr,!1),J($e,ht,ht,bt)}function Le($e,ht,bt,Kt){bf($e,ht);var sr=bt.contextDep,Qt=ht.def(),ur="a0",er="a1",Ot=ht.def();$e.shared.props=Ot,$e.batchId=Qt;var Jt=$e.scope(),Lt=$e.scope();ht(Jt.entry,"for(",Qt,"=0;",Qt,"<",er,";++",Qt,"){",Ot,"=",ur,"[",Qt,"];",Lt,"}",Jt.exit);function Ar(Xa){return Xa.contextDep&&sr||Xa.propDep}function Ur(Xa){return!Ar(Xa)}if(bt.needsContext&&Gu($e,Lt,bt.context),bt.needsFramebuffer&&cf($e,Lt,bt.framebuffer),Fl($e,Lt,bt.state,Ar),bt.profile&&Ar(bt.profile)&&cu($e,Lt,bt,!1,!0),Kt)bt.useVAO?bt.drawVAO?Ar(bt.drawVAO)?Lt($e.shared.vao,".setVAO(",bt.drawVAO.append($e,Lt),");"):Jt($e.shared.vao,".setVAO(",bt.drawVAO.append($e,Jt),");"):Jt($e.shared.vao,".setVAO(",$e.shared.vao,".targetVAO);"):(Jt($e.shared.vao,".setVAO(null);"),Y($e,Jt,bt,Kt.attributes,Ur),Y($e,Lt,bt,Kt.attributes,Ar)),R($e,Jt,bt,Kt.uniforms,Ur,!1),R($e,Lt,bt,Kt.uniforms,Ar,!0),J($e,Jt,Lt,bt);else{var hi=$e.global.def("{}"),Cn=bt.shader.progVar.append($e,Lt),Yi=Lt.def(Cn,".id"),yn=Lt.def(hi,"[",Yi,"]");Lt($e.shared.gl,".useProgram(",Cn,".program);","if(!",yn,"){",yn,"=",hi,"[",Yi,"]=",$e.link(function(Xa){return O(ne,$e,bt,Xa,2)}),"(",Cn,");}",yn,".call(this,a0[",Qt,"],",Qt,");")}}function Ze($e,ht){var bt=$e.proc("batch",2);$e.batchId="0",bf($e,bt);var Kt=!1,sr=!0;Object.keys(ht.context).forEach(function(hi){Kt=Kt||ht.context[hi].propDep}),Kt||(Gu($e,bt,ht.context),sr=!1);var Qt=ht.framebuffer,ur=!1;Qt?(Qt.propDep?Kt=ur=!0:Qt.contextDep&&Kt&&(ur=!0),ur||cf($e,bt,Qt)):cf($e,bt,null),ht.state.viewport&&ht.state.viewport.propDep&&(Kt=!0);function er(hi){return hi.contextDep&&Kt||hi.propDep}mf($e,bt,ht),Fl($e,bt,ht.state,function(hi){return!er(hi)}),(!ht.profile||!er(ht.profile))&&cu($e,bt,ht,!1,"a1"),ht.contextDep=Kt,ht.needsContext=sr,ht.needsFramebuffer=ur;var Ot=ht.shader.progVar;if(Ot.contextDep&&Kt||Ot.propDep)Le($e,bt,ht,null);else{var Jt=Ot.append($e,bt);if(bt($e.shared.gl,".useProgram(",Jt,".program);"),ht.shader.program)Le($e,bt,ht,ht.shader.program);else{bt($e.shared.vao,".setVAO(null);");var Lt=$e.global.def("{}"),Ar=bt.def(Jt,".id"),Ur=bt.def(Lt,"[",Ar,"]");bt($e.cond(Ur).then(Ur,".call(this,a0,a1);").else(Ur,"=",Lt,"[",Ar,"]=",$e.link(function(hi){return O(Le,$e,ht,hi,2)}),"(",Jt,");",Ur,".call(this,a0,a1);"))}}Object.keys(ht.state).length>0&&bt($e.shared.current,".dirty=true;"),$e.shared.vao&&bt($e.shared.vao,".setVAO(null);")}function kt($e,ht){var bt=$e.proc("scope",3);$e.batchId="a2";var Kt=$e.shared,sr=Kt.current;if(Gu($e,bt,ht.context),ht.framebuffer&&ht.framebuffer.append($e,bt),sn(Object.keys(ht.state)).forEach(function(er){var Ot=ht.state[er],Jt=Ot.append($e,bt);en(Jt)?Jt.forEach(function(Lt,Ar){Va(Lt)?bt.set($e.next[er],"["+Ar+"]",Lt):bt.set($e.next[er],"["+Ar+"]",$e.link(Lt,{stable:!0}))}):xo(Ot)?bt.set(Kt.next,"."+er,$e.link(Jt,{stable:!0})):bt.set(Kt.next,"."+er,Jt)}),cu($e,bt,ht,!0,!0),[Bt,kr,or,Vr,ir].forEach(function(er){var Ot=ht.draw[er];if(Ot){var Jt=Ot.append($e,bt);Va(Jt)?bt.set(Kt.draw,"."+er,Jt):bt.set(Kt.draw,"."+er,$e.link(Jt),{stable:!0})}}),Object.keys(ht.uniforms).forEach(function(er){var Ot=ht.uniforms[er].append($e,bt);Array.isArray(Ot)&&(Ot="["+Ot.map(function(Jt){return Va(Jt)?Jt:$e.link(Jt,{stable:!0})})+"]"),bt.set(Kt.uniforms,"["+$e.link(qt.id(er),{stable:!0})+"]",Ot)}),Object.keys(ht.attributes).forEach(function(er){var Ot=ht.attributes[er].append($e,bt),Jt=$e.scopeAttrib(er);Object.keys(new xi).forEach(function(Lt){bt.set(Jt,"."+Lt,Ot[Lt])})}),ht.scopeVAO){var Qt=ht.scopeVAO.append($e,bt);Va(Qt)?bt.set(Kt.vao,".targetVAO",Qt):bt.set(Kt.vao,".targetVAO",$e.link(Qt,{stable:!0}))}function ur(er){var Ot=ht.shader[er];if(Ot){var Jt=Ot.append($e,bt);Va(Jt)?bt.set(Kt.shader,"."+er,Jt):bt.set(Kt.shader,"."+er,$e.link(Jt,{stable:!0}))}}ur(tt),ur(mt),Object.keys(ht.state).length>0&&(bt(sr,".dirty=true;"),bt.exit(sr,".dirty=true;")),bt("a1(",$e.shared.context,",a0,",$e.batchId,");")}function dr($e){if(!(typeof $e!="object"||en($e))){for(var ht=Object.keys($e),bt=0;bt=0;--O){var K=_s[O];K&&K(qi,null,0)}ar.flush(),wn&&wn.update()}function Dl(){!nl&&_s.length>0&&(nl=d.next(pl))}function Fu(){nl&&(d.cancel(pl),nl=null)}function vf(O){O.preventDefault(),yi=!0,Fu(),ul.forEach(function(K){K()})}function Ql(O){ar.getError(),yi=!1,ci.restore(),hs.restore(),En.restore(),Ji.restore(),Ui.restore(),ro.restore(),ga.restore(),wn&&wn.restore(),na.procs.refresh(),Dl(),Qn.forEach(function(K){K()})}Va&&(Va.addEventListener(Tu,vf,!1),Va.addEventListener(Au,Ql,!1));function Ef(){_s.length=0,Fu(),Va&&(Va.removeEventListener(Tu,vf),Va.removeEventListener(Au,Ql)),hs.clear(),ro.clear(),Ui.clear(),ga.clear(),Ji.clear(),Zi.clear(),En.clear(),wn&&wn.clear(),Mo.forEach(function(O){O()})}function Cu(O){function K(Qt){var ur=e({},Qt);delete ur.uniforms,delete ur.attributes,delete ur.context,delete ur.vao,"stencil"in ur&&ur.stencil.op&&(ur.stencil.opBack=ur.stencil.opFront=ur.stencil.op,delete ur.stencil.op);function er(Ot){if(Ot in ur){var Jt=ur[Ot];delete ur[Ot],Object.keys(Jt).forEach(function(Lt){ur[Ot+"."+Lt]=Jt[Lt]})}}return er("blend"),er("depth"),er("cull"),er("stencil"),er("polygonOffset"),er("scissor"),er("sample"),"vao"in Qt&&(ur.vao=Qt.vao),ur}function _e(Qt,ur){var er={},Ot={};return Object.keys(Qt).forEach(function(Jt){var Lt=Qt[Jt];if(h.isDynamic(Lt)){Ot[Jt]=h.unbox(Lt,Jt);return}else if(ur&&Array.isArray(Lt)){for(var Ar=0;Ar0)return $e.call(this,Kt(Qt|0),Qt|0)}else if(Array.isArray(Qt)){if(Qt.length)return $e.call(this,Qt,Qt.length)}else return lr.call(this,Qt)}return e(sr,{stats:dr,destroy:function(){Mr.destroy()}})}var gf=ro.setFBO=Cu({framebuffer:h.define.call(null,lf,"framebuffer")});function xf(O,K){var _e=0;na.procs.poll();var ne=K.color;ne&&(ar.clearColor(+ne[0]||0,+ne[1]||0,+ne[2]||0,+ne[3]||0),_e|=Vu),"depth"in K&&(ar.clearDepth(+K.depth),_e|=tf),"stencil"in K&&(ar.clearStencil(K.stencil|0),_e|=ds),ar.clear(_e)}function Cf(O){if("framebuffer"in O)if(O.framebuffer&&O.framebuffer_reglType==="framebufferCube")for(var K=0;K<6;++K)gf(e({framebuffer:O.framebuffer.faces[K]},O),xf);else gf(O,xf);else xf(null,O)}function Gu(O){_s.push(O);function K(){var _e=pf(_s,O);function ne(){var Le=pf(_s,ne);_s[Le]=_s[_s.length-1],_s.length-=1,_s.length<=0&&Fu()}_s[_e]=ne}return Dl(),{cancel:K}}function cf(){var O=In.viewport,K=In.scissor_box;O[0]=O[1]=K[0]=K[1]=0,qi.viewportWidth=qi.framebufferWidth=qi.drawingBufferWidth=O[2]=K[2]=ar.drawingBufferWidth,qi.viewportHeight=qi.framebufferHeight=qi.drawingBufferHeight=O[3]=K[3]=ar.drawingBufferHeight}function mf(){qi.tick+=1,qi.time=bf(),cf(),na.procs.poll()}function Fl(){Ji.refresh(),cf(),na.procs.refresh(),wn&&wn.update()}function bf(){return(p()-Ls)/1e3}Fl();function cu(O,K){var _e;switch(O){case"frame":return Gu(K);case"lost":_e=ul;break;case"restore":_e=Qn;break;case"destroy":_e=Mo;break;default:}return _e.push(K),{cancel:function(){for(var ne=0;ne<_e.length;++ne)if(_e[ne]===K){_e[ne]=_e[_e.length-1],_e.pop();return}}}}function Y(){return Bn}function R(O){Object.entries(O).forEach(function(K){Bn[K[0]]=K[1]})}var J=e(Cu,{clear:Cf,prop:h.define.bind(null,lf),context:h.define.bind(null,hf),this:h.define.bind(null,Mf),draw:Cu({}),buffer:function(O){return En.create(O,Wl,!1,!1)},elements:function(O){return Zi.create(O,!1)},texture:Ji.create2D,cube:Ji.createCube,renderbuffer:Ui.create,framebuffer:ro.create,framebufferCube:ro.createCube,vao:ga.createVAO,attributes:Qr,frame:Gu,on:cu,limits:dn,hasExtension:function(O){return dn.extensions.indexOf(O.toLowerCase())>=0},read:On,destroy:Ef,_gl:ar,_refresh:Fl,poll:function(){mf(),wn&&wn.update()},now:bf,stats:on,getCachedCode:Y,preloadCachedCode:R});return qt.onDone(null,J),J}return fc})});var tNe=Ae((Exr,eNe)=>{"use strict";var HUt=Zy();eNe.exports=function(t){if(t?typeof t=="string"&&(t={container:t}):t={},$qe(t)?t={container:t}:WUt(t)?t={container:t}:jUt(t)?t={gl:t}:t=HUt(t,{container:"container target element el canvas holder parent parentNode wrapper use ref root node",gl:"gl context webgl glContext",attrs:"attributes attrs contextAttributes",pixelRatio:"pixelRatio pxRatio px ratio pxratio pixelratio",width:"w width",height:"h height"},!0),t.pixelRatio||(t.pixelRatio=window.pixelRatio||1),t.gl)return t.gl;if(t.canvas&&(t.container=t.canvas.parentNode),t.container){if(typeof t.container=="string"){var r=document.querySelector(t.container);if(!r)throw Error("Element "+t.container+" is not found");t.container=r}$qe(t.container)?(t.canvas=t.container,t.container=t.canvas.parentNode):t.canvas||(t.canvas=Qqe(),t.container.appendChild(t.canvas),Jqe(t))}else if(!t.canvas)if(typeof document!="undefined")t.container=document.body||document.documentElement,t.canvas=Qqe(),t.container.appendChild(t.canvas),Jqe(t);else throw Error("Not DOM environment. Use headless-gl.");return t.gl||["webgl","experimental-webgl","webgl-experimental"].some(function(n){try{t.gl=t.canvas.getContext(n,t.attrs)}catch(i){}return t.gl}),t.gl};function Jqe(e){if(e.container)if(e.container==document.body)document.body.style.width||(e.canvas.width=e.width||e.pixelRatio*window.innerWidth),document.body.style.height||(e.canvas.height=e.height||e.pixelRatio*window.innerHeight);else{var t=e.container.getBoundingClientRect();e.canvas.width=e.width||t.right-t.left,e.canvas.height=e.height||t.bottom-t.top}}function $qe(e){return typeof e.getContext=="function"&&"width"in e&&"height"in e}function WUt(e){return typeof e.nodeName=="string"&&typeof e.appendChild=="function"&&typeof e.getBoundingClientRect=="function"}function jUt(e){return typeof e.drawArrays=="function"||typeof e.drawElements=="function"}function Qqe(){var e=document.createElement("canvas");return e.style.position="absolute",e.style.top=0,e.style.left=0,e}});var iNe=Ae((kxr,rNe)=>{"use strict";var XUt=fK(),ZUt=[32,126];rNe.exports=YUt;function YUt(e){e=e||{};var t=e.shape?e.shape:e.canvas?[e.canvas.width,e.canvas.height]:[512,512],r=e.canvas||document.createElement("canvas"),n=e.font,i=typeof e.step=="number"?[e.step,e.step]:e.step||[32,32],a=e.chars||ZUt;if(n&&typeof n!="string"&&(n=XUt(n)),!Array.isArray(a))a=String(a).split("");else if(a.length===2&&typeof a[0]=="number"&&typeof a[1]=="number"){for(var o=[],s=a[0],u=0;s<=a[1];s++)o[u++]=String.fromCharCode(s);a=o}t=t.slice(),r.width=t[0],r.height=t[1];var l=r.getContext("2d");l.fillStyle="#000",l.fillRect(0,0,r.width,r.height),l.font=n,l.textAlign="center",l.textBaseline="middle",l.fillStyle="#fff";for(var f=i[0]/2,c=i[1]/2,s=0;st[0]-i[0]/2&&(f=i[0]/2,c+=i[1]);return r}});var pK=Ae(Wh=>{"use strict";"use restrict";var dK=32;Wh.INT_BITS=dK;Wh.INT_MAX=2147483647;Wh.INT_MIN=-1<0)-(e<0)};Wh.abs=function(e){var t=e>>dK-1;return(e^t)-t};Wh.min=function(e,t){return t^(e^t)&-(e65535)<<4,e>>>=t,r=(e>255)<<3,e>>>=r,t|=r,r=(e>15)<<2,e>>>=r,t|=r,r=(e>3)<<1,e>>>=r,t|=r,t|e>>1};Wh.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0};Wh.popCount=function(e){return e=e-(e>>>1&1431655765),e=(e&858993459)+(e>>>2&858993459),(e+(e>>>4)&252645135)*16843009>>>24};function nNe(e){var t=32;return e&=-e,e&&t--,e&65535&&(t-=16),e&16711935&&(t-=8),e&252645135&&(t-=4),e&858993459&&(t-=2),e&1431655765&&(t-=1),t}Wh.countTrailingZeros=nNe;Wh.nextPow2=function(e){return e+=e===0,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e+1};Wh.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e-(e>>>1)};Wh.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,e&=15,27030>>>e&1};var Mk=new Array(256);(function(e){for(var t=0;t<256;++t){var r=t,n=t,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=r&1,--i;e[t]=n<>>8&255]<<16|Mk[e>>>16&255]<<8|Mk[e>>>24&255]};Wh.interleave2=function(e,t){return e&=65535,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t&=65535,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1};Wh.deinterleave2=function(e,t){return e=e>>>t&1431655765,e=(e|e>>>1)&858993459,e=(e|e>>>2)&252645135,e=(e|e>>>4)&16711935,e=(e|e>>>16)&65535,e<<16>>16};Wh.interleave3=function(e,t,r){return e&=1023,e=(e|e<<16)&4278190335,e=(e|e<<8)&251719695,e=(e|e<<4)&3272356035,e=(e|e<<2)&1227133513,t&=1023,t=(t|t<<16)&4278190335,t=(t|t<<8)&251719695,t=(t|t<<4)&3272356035,t=(t|t<<2)&1227133513,e|=t<<1,r&=1023,r=(r|r<<16)&4278190335,r=(r|r<<8)&251719695,r=(r|r<<4)&3272356035,r=(r|r<<2)&1227133513,e|r<<2};Wh.deinterleave3=function(e,t){return e=e>>>t&1227133513,e=(e|e>>>2)&3272356035,e=(e|e>>>4)&251719695,e=(e|e>>>8)&4278190335,e=(e|e>>>16)&1023,e<<22>>22};Wh.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>nNe(e)+1}});var sNe=Ae((Lxr,oNe)=>{"use strict";function aNe(e,t,r){var n=e[r]|0;if(n<=0)return[];var i=new Array(n),a;if(r===e.length-1)for(a=0;a0)return KUt(e|0,t);break;case"object":if(typeof e.length=="number")return aNe(e,t,0);break}return[]}oNe.exports=JUt});var wNe=Ae(rc=>{"use strict";var cx=pK(),Cp=sNe(),lNe=f2().Buffer;window.__TYPEDARRAY_POOL||(window.__TYPEDARRAY_POOL={UINT8:Cp([32,0]),UINT16:Cp([32,0]),UINT32:Cp([32,0]),BIGUINT64:Cp([32,0]),INT8:Cp([32,0]),INT16:Cp([32,0]),INT32:Cp([32,0]),BIGINT64:Cp([32,0]),FLOAT:Cp([32,0]),DOUBLE:Cp([32,0]),DATA:Cp([32,0]),UINT8C:Cp([32,0]),BUFFER:Cp([32,0])});var $Ut=typeof Uint8ClampedArray!="undefined",QUt=typeof BigUint64Array!="undefined",eVt=typeof BigInt64Array!="undefined",sd=window.__TYPEDARRAY_POOL;sd.UINT8C||(sd.UINT8C=Cp([32,0]));sd.BIGUINT64||(sd.BIGUINT64=Cp([32,0]));sd.BIGINT64||(sd.BIGINT64=Cp([32,0]));sd.BUFFER||(sd.BUFFER=Cp([32,0]));var _8=sd.DATA,x8=sd.BUFFER;rc.free=function(t){if(lNe.isBuffer(t))x8[cx.log2(t.length)].push(t);else{if(Object.prototype.toString.call(t)!=="[object ArrayBuffer]"&&(t=t.buffer),!t)return;var r=t.length||t.byteLength,n=cx.log2(r)|0;_8[n].push(t)}};function uNe(e){if(e){var t=e.length||e.byteLength,r=cx.log2(t);_8[r].push(e)}}function tVt(e){uNe(e.buffer)}rc.freeUint8=rc.freeUint16=rc.freeUint32=rc.freeBigUint64=rc.freeInt8=rc.freeInt16=rc.freeInt32=rc.freeBigInt64=rc.freeFloat32=rc.freeFloat=rc.freeFloat64=rc.freeDouble=rc.freeUint8Clamped=rc.freeDataView=tVt;rc.freeArrayBuffer=uNe;rc.freeBuffer=function(t){x8[cx.log2(t.length)].push(t)};rc.malloc=function(t,r){if(r===void 0||r==="arraybuffer")return qv(t);switch(r){case"uint8":return vK(t);case"uint16":return fNe(t);case"uint32":return cNe(t);case"int8":return hNe(t);case"int16":return dNe(t);case"int32":return pNe(t);case"float":case"float32":return vNe(t);case"double":case"float64":return mNe(t);case"uint8_clamped":return yNe(t);case"bigint64":return _Ne(t);case"biguint64":return gNe(t);case"buffer":return bNe(t);case"data":case"dataview":return xNe(t);default:return null}return null};function qv(t){var t=cx.nextPow2(t),r=cx.log2(t),n=_8[r];return n.length>0?n.pop():new ArrayBuffer(t)}rc.mallocArrayBuffer=qv;function vK(e){return new Uint8Array(qv(e),0,e)}rc.mallocUint8=vK;function fNe(e){return new Uint16Array(qv(2*e),0,e)}rc.mallocUint16=fNe;function cNe(e){return new Uint32Array(qv(4*e),0,e)}rc.mallocUint32=cNe;function hNe(e){return new Int8Array(qv(e),0,e)}rc.mallocInt8=hNe;function dNe(e){return new Int16Array(qv(2*e),0,e)}rc.mallocInt16=dNe;function pNe(e){return new Int32Array(qv(4*e),0,e)}rc.mallocInt32=pNe;function vNe(e){return new Float32Array(qv(4*e),0,e)}rc.mallocFloat32=rc.mallocFloat=vNe;function mNe(e){return new Float64Array(qv(8*e),0,e)}rc.mallocFloat64=rc.mallocDouble=mNe;function yNe(e){return $Ut?new Uint8ClampedArray(qv(e),0,e):vK(e)}rc.mallocUint8Clamped=yNe;function gNe(e){return QUt?new BigUint64Array(qv(8*e),0,e):null}rc.mallocBigUint64=gNe;function _Ne(e){return eVt?new BigInt64Array(qv(8*e),0,e):null}rc.mallocBigInt64=_Ne;function xNe(e){return new DataView(qv(e),0,e)}rc.mallocDataView=xNe;function bNe(e){e=cx.nextPow2(e);var t=cx.log2(e),r=x8[t];return r.length>0?r.pop():new lNe(e)}rc.mallocBuffer=bNe;rc.clearCache=function(){for(var t=0;t<32;++t)sd.UINT8[t].length=0,sd.UINT16[t].length=0,sd.UINT32[t].length=0,sd.INT8[t].length=0,sd.INT16[t].length=0,sd.INT32[t].length=0,sd.FLOAT[t].length=0,sd.DOUBLE[t].length=0,sd.BIGUINT64[t].length=0,sd.BIGINT64[t].length=0,sd.UINT8C[t].length=0,_8[t].length=0,x8[t].length=0}});var ANe=Ae((zxr,TNe)=>{"use strict";var rVt=Object.prototype.toString;TNe.exports=function(e){var t;return rVt.call(e)==="[object Object]"&&(t=Object.getPrototypeOf(e),t===null||t===Object.getPrototypeOf({}))}});var mK=Ae((Ixr,SNe)=>{SNe.exports=function(t,r){r||(r=[0,""]),t=String(t);var n=parseFloat(t,10);return r[0]=n,r[1]=t.match(/[\d.\-\+]*\s*(.*)/)[1]||"",r}});var kNe=Ae((Rxr,ENe)=>{"use strict";var iVt=mK();ENe.exports=MNe;var Ek=96;function yK(e,t){var r=iVt(getComputedStyle(e).getPropertyValue(t));return r[0]*MNe(r[1],e)}function nVt(e,t){var r=document.createElement("div");r.style["font-size"]="128"+e,t.appendChild(r);var n=yK(r,"font-size")/128;return t.removeChild(r),n}function MNe(e,t){switch(t=t||document.body,e=(e||"px").trim().toLowerCase(),(t===window||t===document)&&(t=document.body),e){case"%":return t.clientHeight/100;case"ch":case"ex":return nVt(e,t);case"em":return yK(t,"font-size");case"rem":return yK(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return Ek;case"cm":return Ek/2.54;case"mm":return Ek/25.4;case"pt":return Ek/72;case"pc":return Ek/6}return 1}});var PNe=Ae((Dxr,LNe)=>{"use strict";LNe.exports=T8;var aVt=T8.canvas=document.createElement("canvas"),b8=aVt.getContext("2d"),CNe=w8([32,126]);T8.createPairs=w8;T8.ascii=CNe;function T8(e,t){Array.isArray(e)&&(e=e.join(", "));var r={},n,i=16,a=.05;t&&(t.length===2&&typeof t[0]=="number"?n=w8(t):Array.isArray(t)?n=t:(t.o?n=w8(t.o):t.pairs&&(n=t.pairs),t.fontSize&&(i=t.fontSize),t.threshold!=null&&(a=t.threshold))),n||(n=CNe),b8.font=i+"px "+e;for(var o=0;oi*a){var f=(l-u)/i;r[s]=f*1e3}}return r}function w8(e){for(var t=[],r=e[0];r<=e[1];r++)for(var n=String.fromCharCode(r),i=e[0];i{"use strict";RNe.exports=hx;hx.canvas=document.createElement("canvas");hx.cache={};function hx(o,t){t||(t={}),(typeof o=="string"||Array.isArray(o))&&(t.family=o);var r=Array.isArray(t.family)?t.family.join(", "):t.family;if(!r)throw Error("`family` must be defined");var n=t.size||t.fontSize||t.em||48,i=t.weight||t.fontWeight||"",a=t.style||t.fontStyle||"",o=[a,i,n].join(" ")+"px "+r,s=t.origin||"top";if(hx.cache[r]&&n<=hx.cache[r].em)return zNe(hx.cache[r],s);var u=t.canvas||hx.canvas,l=u.getContext("2d"),f={upper:t.upper!==void 0?t.upper:"H",lower:t.lower!==void 0?t.lower:"x",descent:t.descent!==void 0?t.descent:"p",ascent:t.ascent!==void 0?t.ascent:"h",tittle:t.tittle!==void 0?t.tittle:"i",overshoot:t.overshoot!==void 0?t.overshoot:"O"},c=Math.ceil(n*1.5);u.height=c,u.width=c*.5,l.font=o;var h="H",d={top:0};l.clearRect(0,0,c,c),l.textBaseline="top",l.fillStyle="black",l.fillText(h,0,0);var p=Ky(l.getImageData(0,0,c,c));l.clearRect(0,0,c,c),l.textBaseline="bottom",l.fillText(h,0,c);var _=Ky(l.getImageData(0,0,c,c));d.lineHeight=d.bottom=c-_+p,l.clearRect(0,0,c,c),l.textBaseline="alphabetic",l.fillText(h,0,c);var b=Ky(l.getImageData(0,0,c,c)),v=c-b-1+p;d.baseline=d.alphabetic=v,l.clearRect(0,0,c,c),l.textBaseline="middle",l.fillText(h,0,c*.5);var k=Ky(l.getImageData(0,0,c,c));d.median=d.middle=c-k-1+p-c*.5,l.clearRect(0,0,c,c),l.textBaseline="hanging",l.fillText(h,0,c*.5);var E=Ky(l.getImageData(0,0,c,c));d.hanging=c-E-1+p-c*.5,l.clearRect(0,0,c,c),l.textBaseline="ideographic",l.fillText(h,0,c);var A=Ky(l.getImageData(0,0,c,c));if(d.ideographic=c-A-1+p,f.upper&&(l.clearRect(0,0,c,c),l.textBaseline="top",l.fillText(f.upper,0,0),d.upper=Ky(l.getImageData(0,0,c,c)),d.capHeight=d.baseline-d.upper),f.lower&&(l.clearRect(0,0,c,c),l.textBaseline="top",l.fillText(f.lower,0,0),d.lower=Ky(l.getImageData(0,0,c,c)),d.xHeight=d.baseline-d.lower),f.tittle&&(l.clearRect(0,0,c,c),l.textBaseline="top",l.fillText(f.tittle,0,0),d.tittle=Ky(l.getImageData(0,0,c,c))),f.ascent&&(l.clearRect(0,0,c,c),l.textBaseline="top",l.fillText(f.ascent,0,0),d.ascent=Ky(l.getImageData(0,0,c,c))),f.descent&&(l.clearRect(0,0,c,c),l.textBaseline="top",l.fillText(f.descent,0,0),d.descent=INe(l.getImageData(0,0,c,c))),f.overshoot){l.clearRect(0,0,c,c),l.textBaseline="top",l.fillText(f.overshoot,0,0);var L=INe(l.getImageData(0,0,c,c));d.overshoot=L-v}for(var x in d)d[x]/=n;return d.em=n,hx.cache[r]=d,zNe(d,s)}function zNe(e,t){var r={};typeof t=="string"&&(t=e[t]);for(var n in e)n!=="em"&&(r[n]=e[n]-t);return r}function Ky(e){for(var t=e.height,r=e.data,n=3;n0;n-=4)if(r[n]!==0)return Math.floor((n-3)*.25/t)}});var qNe=Ae((Bxr,ONe)=>{"use strict";var vS=Yqe(),oVt=Zy(),sVt=Kqe(),lVt=tNe(),uVt=KY(),gK=J_(),fVt=iNe(),dx=wNe(),cVt=iS(),hVt=ANe(),dVt=mK(),pVt=kNe(),vVt=PNe(),mVt=Gh(),yVt=DNe(),gVt=Z2(),_Vt=pK(),FNe=_Vt.nextPow2,BNe=new uVt,S8=!1;document.body&&(A8=document.body.appendChild(document.createElement("div")),A8.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(A8).fontStretch&&(S8=!0),document.body.removeChild(A8));var A8,kc=function(t){xVt(t)?(t={regl:t},this.gl=t.regl._gl):this.gl=lVt(t),this.shader=BNe.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=t.regl||sVt({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),BNe.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(hVt(t)?t:{})};kc.prototype.createShader=function(){var t=this.regl,r=t({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:t.prop("count"),offset:t.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:t.this("sizeBuffer")},width:{offset:0,stride:8,buffer:t.this("sizeBuffer")},char:t.this("charBuffer"),position:t.this("position")},uniforms:{atlasSize:function(i,a){return[a.atlas.width,a.atlas.height]},atlasDim:function(i,a){return[a.atlas.cols,a.atlas.rows]},atlas:function(i,a){return a.atlas.texture},charStep:function(i,a){return a.atlas.step},em:function(i,a){return a.atlas.em},color:t.prop("color"),opacity:t.prop("opacity"),viewport:t.this("viewportArray"),scale:t.this("scale"),align:t.prop("align"),baseline:t.prop("baseline"),translate:t.this("translate"),positionOffset:t.prop("positionOffset")},primitive:"points",viewport:t.this("viewport"),vert:` precision highp float; attribute float width, charOffset, char; attribute vec2 position; @@ -2705,17 +2705,17 @@ void main() { // color.rgb += (1. - color.rgb) * (1. - mask.rgb); gl_FragColor = color; - }`}),n={};return{regl:t,draw:r,atlas:n}};kc.prototype.update=function(t){var r=this;if(typeof t=="string")t={text:t};else if(!t)return;t=oVt(t,{position:"position positions coord coords coordinates",font:"font fontFace fontface typeface cssFont css-font family fontFamily",fontSize:"fontSize fontsize size font-size",text:"text texts chars characters value values symbols",align:"align alignment textAlign textbaseline",baseline:"baseline textBaseline textbaseline",direction:"dir direction textDirection",color:"color colour fill fill-color fillColor textColor textcolor",kerning:"kerning kern",range:"range dataBox",viewport:"vp viewport viewBox viewbox viewPort",opacity:"opacity alpha transparency visible visibility opaque",offset:"offset positionOffset padding shift indent indentation"},!0),t.opacity!=null&&(Array.isArray(t.opacity)?this.opacity=t.opacity.map(function(Ce){return parseFloat(Ce)}):this.opacity=parseFloat(t.opacity)),t.viewport!=null&&(this.viewport=cVt(t.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),this.viewport==null&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),t.kerning!=null&&(this.kerning=t.kerning),t.offset!=null&&(typeof t.offset=="number"&&(t.offset=[t.offset,0]),this.positionOffset=gVt(t.offset)),t.direction&&(this.direction=t.direction),t.range&&(this.range=t.range,this.scale=[1/(t.range[2]-t.range[0]),1/(t.range[3]-t.range[1])],this.translate=[-t.range[0],-t.range[1]]),t.scale&&(this.scale=t.scale),t.translate&&(this.translate=t.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),!this.font.length&&!t.font&&(t.font=kc.baseFontSize+"px sans-serif");var n=!1,i=!1;if(t.font&&(Array.isArray(t.font)?t.font:[t.font]).forEach(function(Ce,de){if(typeof Ce=="string")try{Ce=pS.parse(Ce)}catch(Je){Ce=pS.parse(kc.baseFontSize+"px "+Ce)}else{var te=Ce.style,ke=Ce.weight,Ee=Ce.stretch,Me=Ce.variant;Ce=pS.parse(pS.stringify(Ce)),te&&(Ce.style=te),ke&&(Ce.weight=ke),Ee&&(Ce.stretch=Ee),Me&&(Ce.variant=Me)}var Ue=pS.stringify({size:kc.baseFontSize,family:Ce.family,stretch:A8?Ce.stretch:void 0,variant:Ce.variant,weight:Ce.weight,style:Ce.style}),De=dVt(Ce.size),ye=Math.round(De[0]*pVt(De[1]));if(ye!==r.fontSize[de]&&(i=!0,r.fontSize[de]=ye),(!r.font[de]||Ue!=r.font[de].baseString)&&(n=!0,r.font[de]=kc.fonts[Ue],!r.font[de])){var qe=Ce.family.join(", "),ce=[Ce.style];Ce.style!=Ce.variant&&ce.push(Ce.variant),Ce.variant!=Ce.weight&&ce.push(Ce.weight),A8&&Ce.weight!=Ce.stretch&&ce.push(Ce.stretch),r.font[de]={baseString:Ue,family:qe,weight:Ce.weight,stretch:Ce.stretch,style:Ce.style,variant:Ce.variant,width:{},kerning:{},metrics:yVt(qe,{origin:"top",fontSize:kc.baseFontSize,fontStyle:ce.join(" ")})},kc.fonts[Ue]=r.font[de]}}),(n||i)&&this.font.forEach(function(Ce,de){var te=pS.stringify({size:r.fontSize[de],family:Ce.family,stretch:A8?Ce.stretch:void 0,variant:Ce.variant,weight:Ce.weight,style:Ce.style});if(r.fontAtlas[de]=r.shader.atlas[te],!r.fontAtlas[de]){var ke=Ce.metrics;r.shader.atlas[te]=r.fontAtlas[de]={fontString:te,step:Math.ceil(r.fontSize[de]*ke.bottom*.5)*2,em:r.fontSize[de],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:r.regl.texture()}}t.text==null&&(t.text=r.text)}),typeof t.text=="string"&&t.position&&t.position.length>2){for(var a=Array(t.position.length*.5),o=0;o2){for(var l=!t.position[0].length,f=dx.mallocFloat(this.count*2),c=0,h=0;c1?r.align[de]:r.align[0]:r.align;if(typeof te=="number")return te;switch(te){case"right":case"end":return-Ce;case"center":case"centre":case"middle":return-Ce*.5}return 0})),this.baseline==null&&t.baseline==null&&(t.baseline=0),t.baseline!=null&&(this.baseline=t.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map(function(Ce,de){var te=(r.font[de]||r.font[0]).metrics,ke=0;return ke+=te.bottom*.5,typeof Ce=="number"?ke+=Ce-te.baseline:ke+=-te[Ce],ke*=-1,ke})),t.color!=null)if(t.color||(t.color="transparent"),typeof t.color=="string"||!isNaN(t.color))this.color=yK(t.color,"uint8");else{var G;if(typeof t.color[0]=="number"&&t.color.length>this.counts.length){var j=t.color.length;G=dx.mallocUint8(j);for(var H=(t.color.subarray||t.color.slice).bind(t.color),N=0;N4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2;if(ae){var be=Math.max(this.position.length*.5||0,this.color.length*.25||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,this.positionOffset.length*.5||0);this.batch=Array(be);for(var ze=0;ze1?this.counts[ze]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[ze]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(ze*4,ze*4+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[ze]:this.opacity,baseline:this.baselineOffset[ze]!=null?this.baselineOffset[ze]:this.baselineOffset[0],align:this.align?this.alignOffset[ze]!=null?this.alignOffset[ze]:this.alignOffset[0]:0,atlas:this.fontAtlas[ze]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(ze*2,ze*2+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]}};kc.prototype.destroy=function(){};kc.prototype.kerning=!0;kc.prototype.position={constant:new Float32Array(2)};kc.prototype.translate=null;kc.prototype.scale=null;kc.prototype.font=null;kc.prototype.text="";kc.prototype.positionOffset=[0,0];kc.prototype.opacity=1;kc.prototype.color=new Uint8Array([0,0,0,255]);kc.prototype.alignOffset=[0,0];kc.maxAtlasSize=1024;kc.atlasCanvas=document.createElement("canvas");kc.atlasContext=kc.atlasCanvas.getContext("2d",{alpha:!1});kc.baseFontSize=64;kc.fonts={};function xVt(e){return typeof e=="function"&&e._gl&&e.prop&&e.texture&&e.buffer}BNe.exports=kc});var qNe=Ae((gK,_K)=>{(function(e,t){typeof gK=="object"&&typeof _K!="undefined"?_K.exports=t():e.createREGL=t()})(gK,function(){"use strict";var e=function(Be,qt){for(var ar=Object.keys(qt),Qr=0;Qr1&&qt===ar&&(qt==='"'||qt==="'"))return['"'+o(Be.substr(1,Be.length-2))+'"'];var Qr=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Be);if(Qr)return s(Be.substr(0,Qr.index)).concat(s(Qr[1])).concat(s(Be.substr(Qr.index+Qr[0].length)));var yi=Be.split(".");if(yi.length===1)return['"'+o(Be)+'"'];for(var ci=[],vi=0;vi65535)<<4,Be>>>=qt,ar=(Be>255)<<3,Be>>>=ar,qt|=ar,ar=(Be>15)<<2,Be>>>=ar,qt|=ar,ar=(Be>3)<<1,Be>>>=ar,qt|=ar,qt|Be>>1}function N(){var Be=M(8,function(){return[]});function qt(ci){var vi=j(ci),on=Be[H(vi)>>2];return on.length>0?on.pop():new ArrayBuffer(vi)}function ar(ci){Be[H(ci.byteLength)>>2].push(ci)}function Qr(ci,vi){var on=null;switch(ci){case m:on=new Int8Array(qt(vi),0,vi);break;case P:on=new Uint8Array(qt(vi),0,vi);break;case T:on=new Int16Array(qt(2*vi),0,vi);break;case B:on=new Uint16Array(qt(2*vi),0,vi);break;case F:on=new Int32Array(qt(4*vi),0,vi);break;case U:on=new Uint32Array(qt(4*vi),0,vi);break;case G:on=new Float32Array(qt(4*vi),0,vi);break;default:return null}return on.length!==vi?on.subarray(0,vi):on}function yi(ci){ar(ci.buffer)}return{alloc:qt,free:ar,allocType:Qr,freeType:yi}}var W=N();W.zero=N();var re=3408,ae=3410,be=3411,ze=3412,Ce=3413,de=3414,te=3415,ke=33901,Ee=33902,Me=3379,Ue=3386,De=34921,ye=36347,qe=36348,ce=35661,Je=35660,nt=34930,gt=36349,Nt=34076,at=34024,Ke=7936,Ct=7937,wt=7938,St=35724,Dt=34047,Zt=36063,Et=34852,Te=3553,ot=34067,Tt=34069,vt=33984,Ye=6408,He=5126,it=5121,et=36160,It=36053,Yt=36064,cr=16384,_r=function(Be,qt){var ar=1;qt.ext_texture_filter_anisotropic&&(ar=Be.getParameter(Dt));var Qr=1,yi=1;qt.webgl_draw_buffers&&(Qr=Be.getParameter(Et),yi=Be.getParameter(Zt));var ci=!!qt.oes_texture_float;if(ci){var vi=Be.createTexture();Be.bindTexture(Te,vi),Be.texImage2D(Te,0,Ye,1,1,0,Ye,He,null);var on=Be.createFramebuffer();if(Be.bindFramebuffer(et,on),Be.framebufferTexture2D(et,Yt,Te,vi,0),Be.bindTexture(Te,null),Be.checkFramebufferStatus(et)!==It)ci=!1;else{Be.viewport(0,0,1,1),Be.clearColor(1,0,0,1),Be.clear(cr);var Bn=W.allocType(He,4);Be.readPixels(0,0,1,1,Ye,He,Bn),Be.getError()?ci=!1:(Be.deleteFramebuffer(on),Be.deleteTexture(vi),ci=Bn[0]===1),W.freeType(Bn)}}var Ln=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),wn=!0;if(!Ln){var Ls=Be.createTexture(),ua=W.allocType(it,36);Be.activeTexture(vt),Be.bindTexture(ot,Ls),Be.texImage2D(Tt,0,Ye,3,3,0,Ye,it,ua),W.freeType(ua),Be.bindTexture(ot,null),Be.deleteTexture(Ls),wn=!Be.getError()}return{colorBits:[Be.getParameter(ae),Be.getParameter(be),Be.getParameter(ze),Be.getParameter(Ce)],depthBits:Be.getParameter(de),stencilBits:Be.getParameter(te),subpixelBits:Be.getParameter(re),extensions:Object.keys(qt).filter(function(Hn){return!!qt[Hn]}),maxAnisotropic:ar,maxDrawbuffers:Qr,maxColorAttachments:yi,pointSizeDims:Be.getParameter(ke),lineWidthDims:Be.getParameter(Ee),maxViewportDims:Be.getParameter(Ue),maxCombinedTextureUnits:Be.getParameter(ce),maxCubeMapSize:Be.getParameter(Nt),maxRenderbufferSize:Be.getParameter(at),maxTextureUnits:Be.getParameter(nt),maxTextureSize:Be.getParameter(Me),maxAttributes:Be.getParameter(De),maxVertexUniforms:Be.getParameter(ye),maxVertexTextureUnits:Be.getParameter(Je),maxVaryingVectors:Be.getParameter(qe),maxFragmentUniforms:Be.getParameter(gt),glsl:Be.getParameter(St),renderer:Be.getParameter(Ct),vendor:Be.getParameter(Ke),version:Be.getParameter(wt),readFloat:ci,npotTextureCube:wn}},yr=function(Be){return Be instanceof Uint8Array||Be instanceof Uint16Array||Be instanceof Uint32Array||Be instanceof Int8Array||Be instanceof Int16Array||Be instanceof Int32Array||Be instanceof Float32Array||Be instanceof Float64Array||Be instanceof Uint8ClampedArray};function Ut(Be){return!!Be&&typeof Be=="object"&&Array.isArray(Be.shape)&&Array.isArray(Be.stride)&&typeof Be.offset=="number"&&Be.shape.length===Be.stride.length&&(Array.isArray(Be.data)||yr(Be.data))}var Re=function(Be){return Object.keys(Be).map(function(qt){return Be[qt]})},xe={shape:fe,flatten:ge};function Oe(Be,qt,ar){for(var Qr=0;Qr0){var hs;if(Array.isArray(xi[0])){Kn=si(xi);for(var Ji=1,Ui=1;Ui0){if(typeof Ji[0]=="number"){var On=W.allocType(Zi.dtype,Ji.length);xr(On,Ji),Kn(On,ro),W.freeType(On)}else if(Array.isArray(Ji[0])||yr(Ji[0])){na=si(Ji);var In=Qi(Ji,na,Zi.dtype);Kn(In,ro),W.freeType(In)}}}else if(Ut(Ji)){na=Ji.shape;var Va=Ji.stride,_s=0,ul=0,Qn=0,Mo=0;na.length===1?(_s=na[0],ul=1,Qn=Va[0],Mo=0):na.length===2&&(_s=na[0],ul=na[1],Qn=Va[0],Mo=Va[1]);var nl=Array.isArray(Ji.data)?Zi.dtype:Wt(Ji.data),pl=W.allocType(nl,_s*ul);Lr(pl,Ji.data,_s,ul,Qn,Mo,Ji.offset),Kn(pl,ro),W.freeType(pl)}return ga}return dn||ga(Wr),ga._reglType="buffer",ga._buffer=Zi,ga.subdata=hs,ar.profile&&(ga.stats=Zi.stats),ga.destroy=function(){ua(Zi)},ga}function qi(){Re(ci).forEach(function(Wr){Wr.buffer=Be.createBuffer(),Be.bindBuffer(Wr.type,Wr.buffer),Be.bufferData(Wr.type,Wr.persistentData||Wr.byteLength,Wr.usage)})}return ar.profile&&(qt.getTotalBufferSize=function(){var Wr=0;return Object.keys(ci).forEach(function(xi){Wr+=ci[xi].stats.size}),Wr}),{create:Hn,createStream:Bn,destroyStream:Ln,clear:function(){Re(ci).forEach(ua),on.forEach(ua)},getBuffer:function(Wr){return Wr&&Wr._buffer instanceof vi?Wr._buffer:null},restore:qi,_initBuffer:Ls}}var Or=0,Hr=0,jr=1,gi=1,ki=4,Vi=4,ti={points:Or,point:Hr,lines:jr,line:gi,triangles:ki,triangle:Vi,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},tn=0,Yr=1,oi=4,Fi=5120,an=5121,nn=5122,Ri=5123,Ii=5124,xn=5125,bi=34963,Xr=35040,ct=35044;function tr(Be,qt,ar,Qr){var yi={},ci=0,vi={uint8:an,uint16:Ri};qt.oes_element_index_uint&&(vi.uint32=xn);function on(qi){this.id=ci++,yi[this.id]=this,this.buffer=qi,this.primType=oi,this.vertCount=0,this.type=0}on.prototype.bind=function(){this.buffer.bind()};var Bn=[];function Ln(qi){var Wr=Bn.pop();return Wr||(Wr=new on(ar.create(null,bi,!0,!1)._buffer)),Ls(Wr,qi,Xr,-1,-1,0,0),Wr}function wn(qi){Bn.push(qi)}function Ls(qi,Wr,xi,dn,En,Zi,ga){qi.buffer.bind();var Kn;if(Wr){var hs=ga;!ga&&(!yr(Wr)||Ut(Wr)&&!yr(Wr.data))&&(hs=qt.oes_element_index_uint?xn:Ri),ar._initBuffer(qi.buffer,Wr,xi,hs,3)}else Be.bufferData(bi,Zi,xi),qi.buffer.dtype=Kn||an,qi.buffer.usage=xi,qi.buffer.dimension=3,qi.buffer.byteLength=Zi;if(Kn=ga,!ga){switch(qi.buffer.dtype){case an:case Fi:Kn=an;break;case Ri:case nn:Kn=Ri;break;case xn:case Ii:Kn=xn;break;default:}qi.buffer.dtype=Kn}qi.type=Kn;var Ji=En;Ji<0&&(Ji=qi.buffer.byteLength,Kn===Ri?Ji>>=1:Kn===xn&&(Ji>>=2)),qi.vertCount=Ji;var Ui=dn;if(dn<0){Ui=oi;var ro=qi.buffer.dimension;ro===1&&(Ui=tn),ro===2&&(Ui=Yr),ro===3&&(Ui=oi)}qi.primType=Ui}function ua(qi){Qr.elementsCount--,delete yi[qi.id],qi.buffer.destroy(),qi.buffer=null}function Hn(qi,Wr){var xi=ar.create(null,bi,!0),dn=new on(xi._buffer);Qr.elementsCount++;function En(Zi){if(!Zi)xi(),dn.primType=oi,dn.vertCount=0,dn.type=an;else if(typeof Zi=="number")xi(Zi),dn.primType=oi,dn.vertCount=Zi|0,dn.type=an;else{var ga=null,Kn=ct,hs=-1,Ji=-1,Ui=0,ro=0;Array.isArray(Zi)||yr(Zi)||Ut(Zi)?ga=Zi:("data"in Zi&&(ga=Zi.data),"usage"in Zi&&(Kn=$i[Zi.usage]),"primitive"in Zi&&(hs=ti[Zi.primitive]),"count"in Zi&&(Ji=Zi.count|0),"type"in Zi&&(ro=vi[Zi.type]),"length"in Zi?Ui=Zi.length|0:(Ui=Ji,ro===Ri||ro===nn?Ui*=2:(ro===xn||ro===Ii)&&(Ui*=4))),Ls(dn,ga,Kn,hs,Ji,Ui,ro)}return En}return En(qi),En._reglType="elements",En._elements=dn,En.subdata=function(Zi,ga){return xi.subdata(Zi,ga),En},En.destroy=function(){ua(dn)},En}return{create:Hn,createStream:Ln,destroyStream:wn,getElements:function(qi){return typeof qi=="function"&&qi._elements instanceof on?qi._elements:null},clear:function(){Re(yi).forEach(ua)}}}var pr=new Float32Array(1),gr=new Uint32Array(pr.buffer),Zr=5123;function Ti(Be){for(var qt=W.allocType(Zr,Be.length),ar=0;ar>>31<<15,ci=(Qr<<1>>>24)-127,vi=Qr>>13&1023;if(ci<-24)qt[ar]=yi;else if(ci<-14){var on=-14-ci;qt[ar]=yi+(vi+1024>>on)}else ci>15?qt[ar]=yi+31744:qt[ar]=yi+(ci+15<<10)+vi}return qt}function en(Be){return Array.isArray(Be)||yr(Be)}var ii=34467,Xi=3553,aa=34067,Mn=34069,Un=6408,Ga=6406,ma=6407,oa=6409,ka=6410,so=32854,Kr=32855,Ia=36194,Yo=32819,fa=32820,kn=33635,Aa=34042,ys=6402,uo=34041,ls=35904,$a=35906,fo=36193,mn=33776,ra=33777,wa=33778,ws=33779,Co=35986,Po=35987,Wi=34798,gn=35840,Ps=35841,Ha=35842,Sn=35843,ao=36196,Ba=5121,Ko=5123,Qo=5125,Hi=5126,Sa=10242,Qa=10243,vn=10497,da=33071,la=33648,vo=10240,Ts=10241,ps=9728,co=9729,mo=9984,No=9985,jn=9986,Go=9987,Ys=33170,qs=4352,Ns=4353,Oa=4354,ha=34046,Vs=3317,Ya=37440,_n=37441,Vn=37443,wo=37444,Ra=33984,Xn=[mo,jn,No,Go],un=[0,oa,ka,ma,Un],$n={};$n[oa]=$n[Ga]=$n[ys]=1,$n[uo]=$n[ka]=2,$n[ma]=$n[ls]=3,$n[Un]=$n[$a]=4;function Ka(Be){return"[object "+Be+"]"}var qn=Ka("HTMLCanvasElement"),Eo=Ka("OffscreenCanvas"),Ja=Ka("CanvasRenderingContext2D"),lo=Ka("ImageBitmap"),eo=Ka("HTMLImageElement"),sa=Ka("HTMLVideoElement"),es=Object.keys(pe).concat([qn,Eo,Ja,lo,eo,sa]),Na=[];Na[Ba]=1,Na[Hi]=4,Na[fo]=2,Na[Ko]=2,Na[Qo]=4;var rn=[];rn[so]=2,rn[Kr]=2,rn[Ia]=2,rn[uo]=4,rn[mn]=.5,rn[ra]=.5,rn[wa]=1,rn[ws]=1,rn[Co]=.5,rn[Po]=1,rn[Wi]=1,rn[gn]=.5,rn[Ps]=.25,rn[Ha]=.5,rn[Sn]=.25,rn[ao]=.5;function Pa(Be){return Array.isArray(Be)&&(Be.length===0||typeof Be[0]=="number")}function to(Be){if(!Array.isArray(Be))return!1;var qt=Be.length;return!(qt===0||!en(Be[0]))}function yo(Be){return Object.prototype.toString.call(Be)}function Jo(Be){return yo(Be)===qn}function To(Be){return yo(Be)===Eo}function Dn(Be){return yo(Be)===Ja}function _a(Be){return yo(Be)===lo}function Ws(Be){return yo(Be)===eo}function Ca(Be){return yo(Be)===sa}function Es(Be){if(!Be)return!1;var qt=yo(Be);return es.indexOf(qt)>=0?!0:Pa(Be)||to(Be)||Ut(Be)}function As(Be){return pe[Object.prototype.toString.call(Be)]|0}function Ho(Be,qt){var ar=qt.length;switch(Be.type){case Ba:case Ko:case Qo:case Hi:var Qr=W.allocType(Be.type,ar);Qr.set(qt),Be.data=Qr;break;case fo:Be.data=Ti(qt);break;default:}}function Wa(Be,qt){return W.allocType(Be.type===fo?Hi:Be.type,qt)}function Ao(Be,qt){Be.type===fo?(Be.data=Ti(qt),W.freeType(qt)):Be.data=qt}function ts(Be,qt,ar,Qr,yi,ci){for(var vi=Be.width,on=Be.height,Bn=Be.channels,Ln=vi*on*Bn,wn=Wa(Be,Ln),Ls=0,ua=0;ua=1;)on+=vi*Bn*Bn,Bn/=2;return on}else return vi*ar*Qr}function qa(Be,qt,ar,Qr,yi,ci,vi){var on={"don't care":qs,"dont care":qs,nice:Oa,fast:Ns},Bn={repeat:vn,clamp:da,mirror:la},Ln={nearest:ps,linear:co},wn=e({mipmap:Go,"nearest mipmap nearest":mo,"linear mipmap nearest":No,"nearest mipmap linear":jn,"linear mipmap linear":Go},Ln),Ls={none:0,browser:wo},ua={uint8:Ba,rgba4:Yo,rgb565:kn,"rgb5 a1":fa},Hn={alpha:Ga,luminance:oa,"luminance alpha":ka,rgb:ma,rgba:Un,rgba4:so,"rgb5 a1":Kr,rgb565:Ia},qi={};qt.ext_srgb&&(Hn.srgb=ls,Hn.srgba=$a),qt.oes_texture_float&&(ua.float32=ua.float=Hi),qt.oes_texture_half_float&&(ua.float16=ua["half float"]=fo),qt.webgl_depth_texture&&(e(Hn,{depth:ys,"depth stencil":uo}),e(ua,{uint16:Ko,uint32:Qo,"depth stencil":Aa})),qt.webgl_compressed_texture_s3tc&&e(qi,{"rgb s3tc dxt1":mn,"rgba s3tc dxt1":ra,"rgba s3tc dxt3":wa,"rgba s3tc dxt5":ws}),qt.webgl_compressed_texture_atc&&e(qi,{"rgb atc":Co,"rgba atc explicit alpha":Po,"rgba atc interpolated alpha":Wi}),qt.webgl_compressed_texture_pvrtc&&e(qi,{"rgb pvrtc 4bppv1":gn,"rgb pvrtc 2bppv1":Ps,"rgba pvrtc 4bppv1":Ha,"rgba pvrtc 2bppv1":Sn}),qt.webgl_compressed_texture_etc1&&(qi["rgb etc1"]=ao);var Wr=Array.prototype.slice.call(Be.getParameter(ii));Object.keys(qi).forEach(function(ne){var Le=qi[ne];Wr.indexOf(Le)>=0&&(Hn[ne]=Le)});var xi=Object.keys(Hn);ar.textureFormats=xi;var dn=[];Object.keys(Hn).forEach(function(ne){var Le=Hn[ne];dn[Le]=ne});var En=[];Object.keys(ua).forEach(function(ne){var Le=ua[ne];En[Le]=ne});var Zi=[];Object.keys(Ln).forEach(function(ne){var Le=Ln[ne];Zi[Le]=ne});var ga=[];Object.keys(wn).forEach(function(ne){var Le=wn[ne];ga[Le]=ne});var Kn=[];Object.keys(Bn).forEach(function(ne){var Le=Bn[ne];Kn[Le]=ne});var hs=xi.reduce(function(ne,Le){var Ze=Hn[Le];return Ze===oa||Ze===Ga||Ze===oa||Ze===ka||Ze===ys||Ze===uo||qt.ext_srgb&&(Ze===ls||Ze===$a)?ne[Ze]=Ze:Ze===Kr||Le.indexOf("rgba")>=0?ne[Ze]=Un:ne[Ze]=ma,ne},{});function Ji(){this.internalformat=Un,this.format=Un,this.type=Ba,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=wo,this.width=0,this.height=0,this.channels=0}function Ui(ne,Le){ne.internalformat=Le.internalformat,ne.format=Le.format,ne.type=Le.type,ne.compressed=Le.compressed,ne.premultiplyAlpha=Le.premultiplyAlpha,ne.flipY=Le.flipY,ne.unpackAlignment=Le.unpackAlignment,ne.colorSpace=Le.colorSpace,ne.width=Le.width,ne.height=Le.height,ne.channels=Le.channels}function ro(ne,Le){if(!(typeof Le!="object"||!Le)){if("premultiplyAlpha"in Le&&(ne.premultiplyAlpha=Le.premultiplyAlpha),"flipY"in Le&&(ne.flipY=Le.flipY),"alignment"in Le&&(ne.unpackAlignment=Le.alignment),"colorSpace"in Le&&(ne.colorSpace=Ls[Le.colorSpace]),"type"in Le){var Ze=Le.type;ne.type=ua[Ze]}var kt=ne.width,dr=ne.height,Mr=ne.channels,lr=!1;"shape"in Le?(kt=Le.shape[0],dr=Le.shape[1],Le.shape.length===3&&(Mr=Le.shape[2],lr=!0)):("radius"in Le&&(kt=dr=Le.radius),"width"in Le&&(kt=Le.width),"height"in Le&&(dr=Le.height),"channels"in Le&&(Mr=Le.channels,lr=!0)),ne.width=kt|0,ne.height=dr|0,ne.channels=Mr|0;var $e=!1;if("format"in Le){var ht=Le.format,bt=ne.internalformat=Hn[ht];ne.format=hs[bt],ht in ua&&("type"in Le||(ne.type=ua[ht])),ht in qi&&(ne.compressed=!0),$e=!0}!lr&&$e?ne.channels=$n[ne.format]:lr&&!$e&&ne.channels!==un[ne.format]&&(ne.format=ne.internalformat=un[ne.channels])}}function na(ne){Be.pixelStorei(Ya,ne.flipY),Be.pixelStorei(_n,ne.premultiplyAlpha),Be.pixelStorei(Vn,ne.colorSpace),Be.pixelStorei(Vs,ne.unpackAlignment)}function On(){Ji.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function In(ne,Le){var Ze=null;if(Es(Le)?Ze=Le:Le&&(ro(ne,Le),"x"in Le&&(ne.xOffset=Le.x|0),"y"in Le&&(ne.yOffset=Le.y|0),Es(Le.data)&&(Ze=Le.data)),Le.copy){var kt=yi.viewportWidth,dr=yi.viewportHeight;ne.width=ne.width||kt-ne.xOffset,ne.height=ne.height||dr-ne.yOffset,ne.needsCopy=!0}else if(!Ze)ne.width=ne.width||1,ne.height=ne.height||1,ne.channels=ne.channels||4;else if(yr(Ze))ne.channels=ne.channels||4,ne.data=Ze,!("type"in Le)&&ne.type===Ba&&(ne.type=As(Ze));else if(Pa(Ze))ne.channels=ne.channels||4,Ho(ne,Ze),ne.alignment=1,ne.needsFree=!0;else if(Ut(Ze)){var Mr=Ze.data;!Array.isArray(Mr)&&ne.type===Ba&&(ne.type=As(Mr));var lr=Ze.shape,$e=Ze.stride,ht,bt,Kt,sr,Qt,ur;lr.length===3?(Kt=lr[2],ur=$e[2]):(Kt=1,ur=1),ht=lr[0],bt=lr[1],sr=$e[0],Qt=$e[1],ne.alignment=1,ne.width=ht,ne.height=bt,ne.channels=Kt,ne.format=ne.internalformat=un[Kt],ne.needsFree=!0,ts(ne,Mr,sr,Qt,ur,Ze.offset)}else if(Jo(Ze)||To(Ze)||Dn(Ze))Jo(Ze)||To(Ze)?ne.element=Ze:ne.element=Ze.canvas,ne.width=ne.element.width,ne.height=ne.element.height,ne.channels=4;else if(_a(Ze))ne.element=Ze,ne.width=Ze.width,ne.height=Ze.height,ne.channels=4;else if(Ws(Ze))ne.element=Ze,ne.width=Ze.naturalWidth,ne.height=Ze.naturalHeight,ne.channels=4;else if(Ca(Ze))ne.element=Ze,ne.width=Ze.videoWidth,ne.height=Ze.videoHeight,ne.channels=4;else if(to(Ze)){var er=ne.width||Ze[0].length,Ot=ne.height||Ze.length,Jt=ne.channels;en(Ze[0][0])?Jt=Jt||Ze[0][0].length:Jt=Jt||1;for(var Lt=xe.shape(Ze),Ar=1,Ur=0;Ur>=dr,Ze.height>>=dr,In(Ze,kt[dr]),ne.mipmask|=1<=0&&!("faces"in Le)&&(ne.genMipmaps=!0)}if("mag"in Le){var kt=Le.mag;ne.magFilter=Ln[kt]}var dr=ne.wrapS,Mr=ne.wrapT;if("wrap"in Le){var lr=Le.wrap;typeof lr=="string"?dr=Mr=Bn[lr]:Array.isArray(lr)&&(dr=Bn[lr[0]],Mr=Bn[lr[1]])}else{if("wrapS"in Le){var $e=Le.wrapS;dr=Bn[$e]}if("wrapT"in Le){var ht=Le.wrapT;Mr=Bn[ht]}}if(ne.wrapS=dr,ne.wrapT=Mr,"anisotropic"in Le){var bt=Le.anisotropic;ne.anisotropic=Le.anisotropic}if("mipmap"in Le){var Kt=!1;switch(typeof Le.mipmap){case"string":ne.mipmapHint=on[Le.mipmap],ne.genMipmaps=!0,Kt=!0;break;case"boolean":Kt=ne.genMipmaps=Le.mipmap;break;case"object":ne.genMipmaps=!1,Kt=!0;break;default:}Kt&&!("min"in Le)&&(ne.minFilter=mo)}}function xf(ne,Le){Be.texParameteri(Le,Ts,ne.minFilter),Be.texParameteri(Le,vo,ne.magFilter),Be.texParameteri(Le,Sa,ne.wrapS),Be.texParameteri(Le,Qa,ne.wrapT),qt.ext_texture_filter_anisotropic&&Be.texParameteri(Le,ha,ne.anisotropic),ne.genMipmaps&&(Be.hint(Ys,ne.mipmapHint),Be.generateMipmap(Le))}var Cf=0,Gu={},cf=ar.maxTextureUnits,mf=Array(cf).map(function(){return null});function Fl(ne){Ji.call(this),this.mipmask=0,this.internalformat=Un,this.id=Cf++,this.refCount=1,this.target=ne,this.texture=Be.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new Cu,vi.profile&&(this.stats={size:0})}function bf(ne){Be.activeTexture(Ra),Be.bindTexture(ne.target,ne.texture)}function cu(){var ne=mf[0];ne?Be.bindTexture(ne.target,ne.texture):Be.bindTexture(Xi,null)}function Y(ne){var Le=ne.texture,Ze=ne.unit,kt=ne.target;Ze>=0&&(Be.activeTexture(Ra+Ze),Be.bindTexture(kt,null),mf[Ze]=null),Be.deleteTexture(Le),ne.texture=null,ne.params=null,ne.pixels=null,ne.refCount=0,delete Gu[ne.id],ci.textureCount--}e(Fl.prototype,{bind:function(){var ne=this;ne.bindCount+=1;var Le=ne.unit;if(Le<0){for(var Ze=0;Ze0)continue;kt.unit=-1}mf[Ze]=ne,Le=Ze;break}Le>=cf,vi.profile&&ci.maxTextureUnits>Qt)-Kt,ur.height=ur.height||(Ze.height>>Qt)-sr,bf(Ze),_s(ur,Xi,Kt,sr,Qt),cu(),Mo(ur),kt}function Mr(lr,$e){var ht=lr|0,bt=$e|0||ht;if(ht===Ze.width&&bt===Ze.height)return kt;kt.width=Ze.width=ht,kt.height=Ze.height=bt,bf(Ze);for(var Kt=0;Ze.mipmask>>Kt;++Kt){var sr=ht>>Kt,Qt=bt>>Kt;if(!sr||!Qt)break;Be.texImage2D(Xi,Kt,Ze.format,sr,Qt,0,Ze.format,Ze.type,null)}return cu(),vi.profile&&(Ze.stats.size=Wo(Ze.internalformat,Ze.type,ht,bt,!1,!1)),kt}return kt(ne,Le),kt.subimage=dr,kt.resize=Mr,kt._reglType="texture2d",kt._texture=Ze,vi.profile&&(kt.stats=Ze.stats),kt.destroy=function(){Ze.decRef()},kt}function J(ne,Le,Ze,kt,dr,Mr){var lr=new Fl(aa);Gu[lr.id]=lr,ci.cubeCount++;var $e=new Array(6);function ht(sr,Qt,ur,er,Ot,Jt){var Lt,Ar=lr.texInfo;for(Cu.call(Ar),Lt=0;Lt<6;++Lt)$e[Lt]=Ql();if(typeof sr=="number"||!sr){var Ur=sr|0||1;for(Lt=0;Lt<6;++Lt)pl($e[Lt],Ur,Ur)}else if(typeof sr=="object")if(Qt)Dl($e[0],sr),Dl($e[1],Qt),Dl($e[2],ur),Dl($e[3],er),Dl($e[4],Ot),Dl($e[5],Jt);else if(gf(Ar,sr),ro(lr,sr),"faces"in sr){var hi=sr.faces;for(Lt=0;Lt<6;++Lt)Ui($e[Lt],lr),Dl($e[Lt],hi[Lt])}else for(Lt=0;Lt<6;++Lt)Dl($e[Lt],sr);for(Ui(lr,$e[0]),Ar.genMipmaps?lr.mipmask=($e[0].width<<1)-1:lr.mipmask=$e[0].mipmask,lr.internalformat=$e[0].internalformat,ht.width=$e[0].width,ht.height=$e[0].height,bf(lr),Lt=0;Lt<6;++Lt)Fu($e[Lt],Mn+Lt);for(xf(Ar,aa),cu(),vi.profile&&(lr.stats.size=Wo(lr.internalformat,lr.type,ht.width,ht.height,Ar.genMipmaps,!0)),ht.format=dn[lr.internalformat],ht.type=En[lr.type],ht.mag=Zi[Ar.magFilter],ht.min=ga[Ar.minFilter],ht.wrapS=Kn[Ar.wrapS],ht.wrapT=Kn[Ar.wrapT],Lt=0;Lt<6;++Lt)Ef($e[Lt]);return ht}function bt(sr,Qt,ur,er,Ot){var Jt=ur|0,Lt=er|0,Ar=Ot|0,Ur=Qn();return Ui(Ur,lr),Ur.width=0,Ur.height=0,In(Ur,Qt),Ur.width=Ur.width||(lr.width>>Ar)-Jt,Ur.height=Ur.height||(lr.height>>Ar)-Lt,bf(lr),_s(Ur,Mn+sr,Jt,Lt,Ar),cu(),Mo(Ur),ht}function Kt(sr){var Qt=sr|0;if(Qt!==lr.width){ht.width=lr.width=Qt,ht.height=lr.height=Qt,bf(lr);for(var ur=0;ur<6;++ur)for(var er=0;lr.mipmask>>er;++er)Be.texImage2D(Mn+ur,er,lr.format,Qt>>er,Qt>>er,0,lr.format,lr.type,null);return cu(),vi.profile&&(lr.stats.size=Wo(lr.internalformat,lr.type,ht.width,ht.height,!1,!0)),ht}}return ht(ne,Le,Ze,kt,dr,Mr),ht.subimage=bt,ht.resize=Kt,ht._reglType="textureCube",ht._texture=lr,vi.profile&&(ht.stats=lr.stats),ht.destroy=function(){lr.decRef()},ht}function O(){for(var ne=0;ne>kt,Ze.height>>kt,0,Ze.internalformat,Ze.type,null);else for(var dr=0;dr<6;++dr)Be.texImage2D(Mn+dr,kt,Ze.internalformat,Ze.width>>kt,Ze.height>>kt,0,Ze.internalformat,Ze.type,null);xf(Ze.texInfo,Ze.target)})}function _e(){for(var ne=0;ne=0?Ef=!0:Bn.indexOf(Cu)>=0&&(Ef=!1))),("depthTexture"in Fl||"depthStencilTexture"in Fl)&&(mf=!!(Fl.depthTexture||Fl.depthStencilTexture)),"depth"in Fl&&(typeof Fl.depth=="boolean"?Fu=Fl.depth:(Cf=Fl.depth,vf=!1)),"stencil"in Fl&&(typeof Fl.stencil=="boolean"?vf=Fl.stencil:(Gu=Fl.stencil,Fu=!1)),"depthStencil"in Fl&&(typeof Fl.depthStencil=="boolean"?Fu=vf=Fl.depthStencil:(cf=Fl.depthStencil,Fu=!1,vf=!1))}var cu=null,Y=null,R=null,J=null;if(Array.isArray(Ql))cu=Ql.map(qi);else if(Ql)cu=[qi(Ql)];else for(cu=new Array(xf),nl=0;nl0&&(Mo.depth=In[0].depth,Mo.stencil=In[0].stencil,Mo.depthStencil=In[0].depthStencil),In[Qn]?In[Qn](Mo):In[Qn]=Ui(Mo)}return e(Va,{width:nl,height:nl,color:Cu})}function _s(ul){var Qn,Mo=ul|0;if(Mo===Va.width)return Va;var nl=Va.color;for(Qn=0;Qn=nl.byteLength?pl.subdata(nl):(pl.destroy(),Ui.buffers[ul]=null)),Ui.buffers[ul]||(pl=Ui.buffers[ul]=yi.create(Qn,Ss,!1,!0)),Mo.buffer=yi.getBuffer(pl),Mo.size=Mo.buffer.dimension|0,Mo.normalized=!1,Mo.type=Mo.buffer.dtype,Mo.offset=0,Mo.stride=0,Mo.divisor=0,Mo.state=1,Va[ul]=1}else yi.getBuffer(Qn)?(Mo.buffer=yi.getBuffer(Qn),Mo.size=Mo.buffer.dimension|0,Mo.normalized=!1,Mo.type=Mo.buffer.dtype,Mo.offset=0,Mo.stride=0,Mo.divisor=0,Mo.state=1):yi.getBuffer(Qn.buffer)?(Mo.buffer=yi.getBuffer(Qn.buffer),Mo.size=(+Qn.size||Mo.buffer.dimension)|0,Mo.normalized=!!Qn.normalized||!1,"type"in Qn?Mo.type=pi[Qn.type]:Mo.type=Mo.buffer.dtype,Mo.offset=(Qn.offset||0)|0,Mo.stride=(Qn.stride||0)|0,Mo.divisor=(Qn.divisor||0)|0,Mo.state=1):"x"in Qn&&(Mo.x=+Qn.x||0,Mo.y=+Qn.y||0,Mo.z=+Qn.z||0,Mo.w=+Qn.w||0,Mo.state=2)}for(var Dl=0;Dl1)for(var na=0;naWr&&(Wr=xi.stats.uniformsCount)}),Wr},ar.getMaxAttributesCount=function(){var Wr=0;return wn.forEach(function(xi){xi.stats.attributesCount>Wr&&(Wr=xi.stats.attributesCount)}),Wr});function qi(){yi={},ci={};for(var Wr=0;Wr16&&(ar=Pi(ar,Be.length*8));for(var Qr=Array(16),yi=Array(16),ci=0;ci<16;ci++)Qr[ci]=ar[ci]^909522486,yi[ci]=ar[ci]^1549556828;var vi=Pi(Qr.concat(Bs(qt)),512+qt.length*8);return At(Pi(yi.concat(vi),768))}function Ms(Be){for(var qt=Ro?"0123456789ABCDEF":"0123456789abcdef",ar="",Qr,yi=0;yi>>4&15)+qt.charAt(Qr&15);return ar}function jo(Be){for(var qt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ar="",Qr=Be.length,yi=0;yiBe.length*8?ar+=tl:ar+=qt.charAt(ci>>>6*(3-vi)&63);return ar}function Rs(Be,qt){var ar=qt.length,Qr=Array(),yi,ci,vi,on,Bn=Array(Math.ceil(Be.length/2));for(yi=0;yi0;){for(on=Array(),vi=0,yi=0;yi0||ci>0)&&(on[on.length]=ci);Qr[Qr.length]=vi,Bn=on}var Ln="";for(yi=Qr.length-1;yi>=0;yi--)Ln+=qt.charAt(Qr[yi]);var wn=Math.ceil(Be.length*8/(Math.log(qt.length)/Math.log(2)));for(yi=Ln.length;yi>>6&31,128|Qr&63):Qr<=65535?qt+=String.fromCharCode(224|Qr>>>12&15,128|Qr>>>6&63,128|Qr&63):Qr<=2097151&&(qt+=String.fromCharCode(240|Qr>>>18&7,128|Qr>>>12&63,128|Qr>>>6&63,128|Qr&63));return qt}function Bs(Be){for(var qt=Array(Be.length>>2),ar=0;ar>5]|=(Be.charCodeAt(ar/8)&255)<<24-ar%32;return qt}function At(Be){for(var qt="",ar=0;ar>5]>>>24-ar%32&255);return qt}function Vt(Be,qt){return Be>>>qt|Be<<32-qt}function wr(Be,qt){return Be>>>qt}function mr(Be,qt,ar){return Be&qt^~Be&ar}function Fr(Be,qt,ar){return Be&qt^Be&ar^qt&ar}function _i(Be){return Vt(Be,2)^Vt(Be,13)^Vt(Be,22)}function Si(Be){return Vt(Be,6)^Vt(Be,11)^Vt(Be,25)}function Ci(Be){return Vt(Be,7)^Vt(Be,18)^wr(Be,3)}function Ki(Be){return Vt(Be,17)^Vt(Be,19)^wr(Be,10)}var Fn=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function Pi(Be,qt){var ar=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),Qr=new Array(64),yi,ci,vi,on,Bn,Ln,wn,Ls,ua,Hn,qi,Wr;for(Be[qt>>5]|=128<<24-qt%32,Be[(qt+64>>9<<4)+15]=qt,ua=0;ua>16)+(qt>>16)+(ar>>16);return Qr<<16|ar&65535}function Li(Be){return Array.prototype.slice.call(Be)}function Mi(Be){return Li(Be).join("")}function Gn(Be){var qt=Be&&Be.cache,ar=0,Qr=[],yi=[],ci=[];function vi(qi,Wr){var xi=Wr&&Wr.stable;if(!xi){for(var dn=0;dn0&&(qi.push(En,"="),qi.push.apply(qi,Li(arguments)),qi.push(";")),En}return e(Wr,{def:dn,toString:function(){return Mi([xi.length>0?"var "+xi.join(",")+";":"",Mi(qi)])}})}function Bn(){var qi=on(),Wr=on(),xi=qi.toString,dn=Wr.toString;function En(Zi,ga){Wr(Zi,ga,"=",qi.def(Zi,ga),";")}return e(function(){qi.apply(qi,Li(arguments))},{def:qi.def,entry:qi,exit:Wr,save:En,set:function(Zi,ga,Kn){En(Zi,ga),qi(Zi,ga,"=",Kn,";")},toString:function(){return xi()+dn()}})}function Ln(){var qi=Mi(arguments),Wr=Bn(),xi=Bn(),dn=Wr.toString,En=xi.toString;return e(Wr,{then:function(){return Wr.apply(Wr,Li(arguments)),this},else:function(){return xi.apply(xi,Li(arguments)),this},toString:function(){var Zi=En();return Zi&&(Zi="else{"+Zi+"}"),Mi(["if(",qi,"){",dn(),"}",Zi])}})}var wn=on(),Ls={};function ua(qi,Wr){var xi=[];function dn(){var hs="a"+xi.length;return xi.push(hs),hs}Wr=Wr||0;for(var En=0;En2){for(var a=Array(t.position.length*.5),o=0;o2){for(var l=!t.position[0].length,f=dx.mallocFloat(this.count*2),c=0,h=0;c1?r.align[de]:r.align[0]:r.align;if(typeof te=="number")return te;switch(te){case"right":case"end":return-Ce;case"center":case"centre":case"middle":return-Ce*.5}return 0})),this.baseline==null&&t.baseline==null&&(t.baseline=0),t.baseline!=null&&(this.baseline=t.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map(function(Ce,de){var te=(r.font[de]||r.font[0]).metrics,ke=0;return ke+=te.bottom*.5,typeof Ce=="number"?ke+=Ce-te.baseline:ke+=-te[Ce],ke*=-1,ke})),t.color!=null)if(t.color||(t.color="transparent"),typeof t.color=="string"||!isNaN(t.color))this.color=gK(t.color,"uint8");else{var G;if(typeof t.color[0]=="number"&&t.color.length>this.counts.length){var j=t.color.length;G=dx.mallocUint8(j);for(var W=(t.color.subarray||t.color.slice).bind(t.color),N=0;N4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2;if(ae){var be=Math.max(this.position.length*.5||0,this.color.length*.25||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,this.positionOffset.length*.5||0);this.batch=Array(be);for(var ze=0;ze1?this.counts[ze]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[ze]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(ze*4,ze*4+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[ze]:this.opacity,baseline:this.baselineOffset[ze]!=null?this.baselineOffset[ze]:this.baselineOffset[0],align:this.align?this.alignOffset[ze]!=null?this.alignOffset[ze]:this.alignOffset[0]:0,atlas:this.fontAtlas[ze]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(ze*2,ze*2+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]}};kc.prototype.destroy=function(){};kc.prototype.kerning=!0;kc.prototype.position={constant:new Float32Array(2)};kc.prototype.translate=null;kc.prototype.scale=null;kc.prototype.font=null;kc.prototype.text="";kc.prototype.positionOffset=[0,0];kc.prototype.opacity=1;kc.prototype.color=new Uint8Array([0,0,0,255]);kc.prototype.alignOffset=[0,0];kc.maxAtlasSize=1024;kc.atlasCanvas=document.createElement("canvas");kc.atlasContext=kc.atlasCanvas.getContext("2d",{alpha:!1});kc.baseFontSize=64;kc.fonts={};function xVt(e){return typeof e=="function"&&e._gl&&e.prop&&e.texture&&e.buffer}ONe.exports=kc});var NNe=Ae((_K,xK)=>{(function(e,t){typeof _K=="object"&&typeof xK!="undefined"?xK.exports=t():e.createREGL=t()})(_K,function(){"use strict";var e=function(Be,qt){for(var ar=Object.keys(qt),Qr=0;Qr1&&qt===ar&&(qt==='"'||qt==="'"))return['"'+o(Be.substr(1,Be.length-2))+'"'];var Qr=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Be);if(Qr)return s(Be.substr(0,Qr.index)).concat(s(Qr[1])).concat(s(Be.substr(Qr.index+Qr[0].length)));var yi=Be.split(".");if(yi.length===1)return['"'+o(Be)+'"'];for(var ci=[],vi=0;vi65535)<<4,Be>>>=qt,ar=(Be>255)<<3,Be>>>=ar,qt|=ar,ar=(Be>15)<<2,Be>>>=ar,qt|=ar,ar=(Be>3)<<1,Be>>>=ar,qt|=ar,qt|Be>>1}function N(){var Be=M(8,function(){return[]});function qt(ci){var vi=j(ci),on=Be[W(vi)>>2];return on.length>0?on.pop():new ArrayBuffer(vi)}function ar(ci){Be[W(ci.byteLength)>>2].push(ci)}function Qr(ci,vi){var on=null;switch(ci){case m:on=new Int8Array(qt(vi),0,vi);break;case P:on=new Uint8Array(qt(vi),0,vi);break;case T:on=new Int16Array(qt(2*vi),0,vi);break;case B:on=new Uint16Array(qt(2*vi),0,vi);break;case F:on=new Int32Array(qt(4*vi),0,vi);break;case U:on=new Uint32Array(qt(4*vi),0,vi);break;case G:on=new Float32Array(qt(4*vi),0,vi);break;default:return null}return on.length!==vi?on.subarray(0,vi):on}function yi(ci){ar(ci.buffer)}return{alloc:qt,free:ar,allocType:Qr,freeType:yi}}var H=N();H.zero=N();var re=3408,ae=3410,be=3411,ze=3412,Ce=3413,de=3414,te=3415,ke=33901,Ee=33902,Me=3379,Ue=3386,De=34921,ye=36347,qe=36348,ce=35661,Je=35660,nt=34930,gt=36349,Nt=34076,at=34024,Ke=7936,Ct=7937,wt=7938,St=35724,Dt=34047,Zt=36063,Et=34852,Te=3553,ot=34067,Tt=34069,vt=33984,Ye=6408,He=5126,it=5121,et=36160,It=36053,Yt=36064,cr=16384,_r=function(Be,qt){var ar=1;qt.ext_texture_filter_anisotropic&&(ar=Be.getParameter(Dt));var Qr=1,yi=1;qt.webgl_draw_buffers&&(Qr=Be.getParameter(Et),yi=Be.getParameter(Zt));var ci=!!qt.oes_texture_float;if(ci){var vi=Be.createTexture();Be.bindTexture(Te,vi),Be.texImage2D(Te,0,Ye,1,1,0,Ye,He,null);var on=Be.createFramebuffer();if(Be.bindFramebuffer(et,on),Be.framebufferTexture2D(et,Yt,Te,vi,0),Be.bindTexture(Te,null),Be.checkFramebufferStatus(et)!==It)ci=!1;else{Be.viewport(0,0,1,1),Be.clearColor(1,0,0,1),Be.clear(cr);var Bn=H.allocType(He,4);Be.readPixels(0,0,1,1,Ye,He,Bn),Be.getError()?ci=!1:(Be.deleteFramebuffer(on),Be.deleteTexture(vi),ci=Bn[0]===1),H.freeType(Bn)}}var Ln=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),wn=!0;if(!Ln){var Ls=Be.createTexture(),ua=H.allocType(it,36);Be.activeTexture(vt),Be.bindTexture(ot,Ls),Be.texImage2D(Tt,0,Ye,3,3,0,Ye,it,ua),H.freeType(ua),Be.bindTexture(ot,null),Be.deleteTexture(Ls),wn=!Be.getError()}return{colorBits:[Be.getParameter(ae),Be.getParameter(be),Be.getParameter(ze),Be.getParameter(Ce)],depthBits:Be.getParameter(de),stencilBits:Be.getParameter(te),subpixelBits:Be.getParameter(re),extensions:Object.keys(qt).filter(function(Hn){return!!qt[Hn]}),maxAnisotropic:ar,maxDrawbuffers:Qr,maxColorAttachments:yi,pointSizeDims:Be.getParameter(ke),lineWidthDims:Be.getParameter(Ee),maxViewportDims:Be.getParameter(Ue),maxCombinedTextureUnits:Be.getParameter(ce),maxCubeMapSize:Be.getParameter(Nt),maxRenderbufferSize:Be.getParameter(at),maxTextureUnits:Be.getParameter(nt),maxTextureSize:Be.getParameter(Me),maxAttributes:Be.getParameter(De),maxVertexUniforms:Be.getParameter(ye),maxVertexTextureUnits:Be.getParameter(Je),maxVaryingVectors:Be.getParameter(qe),maxFragmentUniforms:Be.getParameter(gt),glsl:Be.getParameter(St),renderer:Be.getParameter(Ct),vendor:Be.getParameter(Ke),version:Be.getParameter(wt),readFloat:ci,npotTextureCube:wn}},yr=function(Be){return Be instanceof Uint8Array||Be instanceof Uint16Array||Be instanceof Uint32Array||Be instanceof Int8Array||Be instanceof Int16Array||Be instanceof Int32Array||Be instanceof Float32Array||Be instanceof Float64Array||Be instanceof Uint8ClampedArray};function Ut(Be){return!!Be&&typeof Be=="object"&&Array.isArray(Be.shape)&&Array.isArray(Be.stride)&&typeof Be.offset=="number"&&Be.shape.length===Be.stride.length&&(Array.isArray(Be.data)||yr(Be.data))}var Re=function(Be){return Object.keys(Be).map(function(qt){return Be[qt]})},xe={shape:fe,flatten:ge};function Oe(Be,qt,ar){for(var Qr=0;Qr0){var hs;if(Array.isArray(xi[0])){Kn=si(xi);for(var Ji=1,Ui=1;Ui0){if(typeof Ji[0]=="number"){var On=H.allocType(Zi.dtype,Ji.length);xr(On,Ji),Kn(On,ro),H.freeType(On)}else if(Array.isArray(Ji[0])||yr(Ji[0])){na=si(Ji);var In=Qi(Ji,na,Zi.dtype);Kn(In,ro),H.freeType(In)}}}else if(Ut(Ji)){na=Ji.shape;var Va=Ji.stride,_s=0,ul=0,Qn=0,Mo=0;na.length===1?(_s=na[0],ul=1,Qn=Va[0],Mo=0):na.length===2&&(_s=na[0],ul=na[1],Qn=Va[0],Mo=Va[1]);var nl=Array.isArray(Ji.data)?Zi.dtype:Wt(Ji.data),pl=H.allocType(nl,_s*ul);Lr(pl,Ji.data,_s,ul,Qn,Mo,Ji.offset),Kn(pl,ro),H.freeType(pl)}return ga}return dn||ga(Wr),ga._reglType="buffer",ga._buffer=Zi,ga.subdata=hs,ar.profile&&(ga.stats=Zi.stats),ga.destroy=function(){ua(Zi)},ga}function qi(){Re(ci).forEach(function(Wr){Wr.buffer=Be.createBuffer(),Be.bindBuffer(Wr.type,Wr.buffer),Be.bufferData(Wr.type,Wr.persistentData||Wr.byteLength,Wr.usage)})}return ar.profile&&(qt.getTotalBufferSize=function(){var Wr=0;return Object.keys(ci).forEach(function(xi){Wr+=ci[xi].stats.size}),Wr}),{create:Hn,createStream:Bn,destroyStream:Ln,clear:function(){Re(ci).forEach(ua),on.forEach(ua)},getBuffer:function(Wr){return Wr&&Wr._buffer instanceof vi?Wr._buffer:null},restore:qi,_initBuffer:Ls}}var Or=0,Hr=0,jr=1,gi=1,ki=4,Vi=4,ti={points:Or,point:Hr,lines:jr,line:gi,triangles:ki,triangle:Vi,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},tn=0,Yr=1,oi=4,Fi=5120,an=5121,nn=5122,Ri=5123,Ii=5124,xn=5125,bi=34963,Xr=35040,ct=35044;function tr(Be,qt,ar,Qr){var yi={},ci=0,vi={uint8:an,uint16:Ri};qt.oes_element_index_uint&&(vi.uint32=xn);function on(qi){this.id=ci++,yi[this.id]=this,this.buffer=qi,this.primType=oi,this.vertCount=0,this.type=0}on.prototype.bind=function(){this.buffer.bind()};var Bn=[];function Ln(qi){var Wr=Bn.pop();return Wr||(Wr=new on(ar.create(null,bi,!0,!1)._buffer)),Ls(Wr,qi,Xr,-1,-1,0,0),Wr}function wn(qi){Bn.push(qi)}function Ls(qi,Wr,xi,dn,En,Zi,ga){qi.buffer.bind();var Kn;if(Wr){var hs=ga;!ga&&(!yr(Wr)||Ut(Wr)&&!yr(Wr.data))&&(hs=qt.oes_element_index_uint?xn:Ri),ar._initBuffer(qi.buffer,Wr,xi,hs,3)}else Be.bufferData(bi,Zi,xi),qi.buffer.dtype=Kn||an,qi.buffer.usage=xi,qi.buffer.dimension=3,qi.buffer.byteLength=Zi;if(Kn=ga,!ga){switch(qi.buffer.dtype){case an:case Fi:Kn=an;break;case Ri:case nn:Kn=Ri;break;case xn:case Ii:Kn=xn;break;default:}qi.buffer.dtype=Kn}qi.type=Kn;var Ji=En;Ji<0&&(Ji=qi.buffer.byteLength,Kn===Ri?Ji>>=1:Kn===xn&&(Ji>>=2)),qi.vertCount=Ji;var Ui=dn;if(dn<0){Ui=oi;var ro=qi.buffer.dimension;ro===1&&(Ui=tn),ro===2&&(Ui=Yr),ro===3&&(Ui=oi)}qi.primType=Ui}function ua(qi){Qr.elementsCount--,delete yi[qi.id],qi.buffer.destroy(),qi.buffer=null}function Hn(qi,Wr){var xi=ar.create(null,bi,!0),dn=new on(xi._buffer);Qr.elementsCount++;function En(Zi){if(!Zi)xi(),dn.primType=oi,dn.vertCount=0,dn.type=an;else if(typeof Zi=="number")xi(Zi),dn.primType=oi,dn.vertCount=Zi|0,dn.type=an;else{var ga=null,Kn=ct,hs=-1,Ji=-1,Ui=0,ro=0;Array.isArray(Zi)||yr(Zi)||Ut(Zi)?ga=Zi:("data"in Zi&&(ga=Zi.data),"usage"in Zi&&(Kn=$i[Zi.usage]),"primitive"in Zi&&(hs=ti[Zi.primitive]),"count"in Zi&&(Ji=Zi.count|0),"type"in Zi&&(ro=vi[Zi.type]),"length"in Zi?Ui=Zi.length|0:(Ui=Ji,ro===Ri||ro===nn?Ui*=2:(ro===xn||ro===Ii)&&(Ui*=4))),Ls(dn,ga,Kn,hs,Ji,Ui,ro)}return En}return En(qi),En._reglType="elements",En._elements=dn,En.subdata=function(Zi,ga){return xi.subdata(Zi,ga),En},En.destroy=function(){ua(dn)},En}return{create:Hn,createStream:Ln,destroyStream:wn,getElements:function(qi){return typeof qi=="function"&&qi._elements instanceof on?qi._elements:null},clear:function(){Re(yi).forEach(ua)}}}var pr=new Float32Array(1),gr=new Uint32Array(pr.buffer),Zr=5123;function Ti(Be){for(var qt=H.allocType(Zr,Be.length),ar=0;ar>>31<<15,ci=(Qr<<1>>>24)-127,vi=Qr>>13&1023;if(ci<-24)qt[ar]=yi;else if(ci<-14){var on=-14-ci;qt[ar]=yi+(vi+1024>>on)}else ci>15?qt[ar]=yi+31744:qt[ar]=yi+(ci+15<<10)+vi}return qt}function en(Be){return Array.isArray(Be)||yr(Be)}var ii=34467,Xi=3553,aa=34067,Mn=34069,Un=6408,Ga=6406,ma=6407,oa=6409,ka=6410,so=32854,Kr=32855,Ia=36194,Yo=32819,fa=32820,kn=33635,Aa=34042,ys=6402,uo=34041,ls=35904,$a=35906,fo=36193,mn=33776,ra=33777,wa=33778,ws=33779,Co=35986,Po=35987,Wi=34798,gn=35840,Ps=35841,Ha=35842,Sn=35843,ao=36196,Ba=5121,Ko=5123,Qo=5125,Hi=5126,Sa=10242,Qa=10243,vn=10497,da=33071,la=33648,vo=10240,Ts=10241,ps=9728,co=9729,mo=9984,No=9985,jn=9986,Go=9987,Ys=33170,qs=4352,Ns=4353,Oa=4354,ha=34046,Vs=3317,Ya=37440,_n=37441,Vn=37443,wo=37444,Ra=33984,Xn=[mo,jn,No,Go],un=[0,oa,ka,ma,Un],$n={};$n[oa]=$n[Ga]=$n[ys]=1,$n[uo]=$n[ka]=2,$n[ma]=$n[ls]=3,$n[Un]=$n[$a]=4;function Ka(Be){return"[object "+Be+"]"}var qn=Ka("HTMLCanvasElement"),Eo=Ka("OffscreenCanvas"),Ja=Ka("CanvasRenderingContext2D"),lo=Ka("ImageBitmap"),eo=Ka("HTMLImageElement"),sa=Ka("HTMLVideoElement"),es=Object.keys(pe).concat([qn,Eo,Ja,lo,eo,sa]),Na=[];Na[Ba]=1,Na[Hi]=4,Na[fo]=2,Na[Ko]=2,Na[Qo]=4;var rn=[];rn[so]=2,rn[Kr]=2,rn[Ia]=2,rn[uo]=4,rn[mn]=.5,rn[ra]=.5,rn[wa]=1,rn[ws]=1,rn[Co]=.5,rn[Po]=1,rn[Wi]=1,rn[gn]=.5,rn[Ps]=.25,rn[Ha]=.5,rn[Sn]=.25,rn[ao]=.5;function Pa(Be){return Array.isArray(Be)&&(Be.length===0||typeof Be[0]=="number")}function to(Be){if(!Array.isArray(Be))return!1;var qt=Be.length;return!(qt===0||!en(Be[0]))}function yo(Be){return Object.prototype.toString.call(Be)}function Jo(Be){return yo(Be)===qn}function To(Be){return yo(Be)===Eo}function Dn(Be){return yo(Be)===Ja}function _a(Be){return yo(Be)===lo}function Ws(Be){return yo(Be)===eo}function Ca(Be){return yo(Be)===sa}function Es(Be){if(!Be)return!1;var qt=yo(Be);return es.indexOf(qt)>=0?!0:Pa(Be)||to(Be)||Ut(Be)}function As(Be){return pe[Object.prototype.toString.call(Be)]|0}function Ho(Be,qt){var ar=qt.length;switch(Be.type){case Ba:case Ko:case Qo:case Hi:var Qr=H.allocType(Be.type,ar);Qr.set(qt),Be.data=Qr;break;case fo:Be.data=Ti(qt);break;default:}}function Wa(Be,qt){return H.allocType(Be.type===fo?Hi:Be.type,qt)}function Ao(Be,qt){Be.type===fo?(Be.data=Ti(qt),H.freeType(qt)):Be.data=qt}function ts(Be,qt,ar,Qr,yi,ci){for(var vi=Be.width,on=Be.height,Bn=Be.channels,Ln=vi*on*Bn,wn=Wa(Be,Ln),Ls=0,ua=0;ua=1;)on+=vi*Bn*Bn,Bn/=2;return on}else return vi*ar*Qr}function qa(Be,qt,ar,Qr,yi,ci,vi){var on={"don't care":qs,"dont care":qs,nice:Oa,fast:Ns},Bn={repeat:vn,clamp:da,mirror:la},Ln={nearest:ps,linear:co},wn=e({mipmap:Go,"nearest mipmap nearest":mo,"linear mipmap nearest":No,"nearest mipmap linear":jn,"linear mipmap linear":Go},Ln),Ls={none:0,browser:wo},ua={uint8:Ba,rgba4:Yo,rgb565:kn,"rgb5 a1":fa},Hn={alpha:Ga,luminance:oa,"luminance alpha":ka,rgb:ma,rgba:Un,rgba4:so,"rgb5 a1":Kr,rgb565:Ia},qi={};qt.ext_srgb&&(Hn.srgb=ls,Hn.srgba=$a),qt.oes_texture_float&&(ua.float32=ua.float=Hi),qt.oes_texture_half_float&&(ua.float16=ua["half float"]=fo),qt.webgl_depth_texture&&(e(Hn,{depth:ys,"depth stencil":uo}),e(ua,{uint16:Ko,uint32:Qo,"depth stencil":Aa})),qt.webgl_compressed_texture_s3tc&&e(qi,{"rgb s3tc dxt1":mn,"rgba s3tc dxt1":ra,"rgba s3tc dxt3":wa,"rgba s3tc dxt5":ws}),qt.webgl_compressed_texture_atc&&e(qi,{"rgb atc":Co,"rgba atc explicit alpha":Po,"rgba atc interpolated alpha":Wi}),qt.webgl_compressed_texture_pvrtc&&e(qi,{"rgb pvrtc 4bppv1":gn,"rgb pvrtc 2bppv1":Ps,"rgba pvrtc 4bppv1":Ha,"rgba pvrtc 2bppv1":Sn}),qt.webgl_compressed_texture_etc1&&(qi["rgb etc1"]=ao);var Wr=Array.prototype.slice.call(Be.getParameter(ii));Object.keys(qi).forEach(function(ne){var Le=qi[ne];Wr.indexOf(Le)>=0&&(Hn[ne]=Le)});var xi=Object.keys(Hn);ar.textureFormats=xi;var dn=[];Object.keys(Hn).forEach(function(ne){var Le=Hn[ne];dn[Le]=ne});var En=[];Object.keys(ua).forEach(function(ne){var Le=ua[ne];En[Le]=ne});var Zi=[];Object.keys(Ln).forEach(function(ne){var Le=Ln[ne];Zi[Le]=ne});var ga=[];Object.keys(wn).forEach(function(ne){var Le=wn[ne];ga[Le]=ne});var Kn=[];Object.keys(Bn).forEach(function(ne){var Le=Bn[ne];Kn[Le]=ne});var hs=xi.reduce(function(ne,Le){var Ze=Hn[Le];return Ze===oa||Ze===Ga||Ze===oa||Ze===ka||Ze===ys||Ze===uo||qt.ext_srgb&&(Ze===ls||Ze===$a)?ne[Ze]=Ze:Ze===Kr||Le.indexOf("rgba")>=0?ne[Ze]=Un:ne[Ze]=ma,ne},{});function Ji(){this.internalformat=Un,this.format=Un,this.type=Ba,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=wo,this.width=0,this.height=0,this.channels=0}function Ui(ne,Le){ne.internalformat=Le.internalformat,ne.format=Le.format,ne.type=Le.type,ne.compressed=Le.compressed,ne.premultiplyAlpha=Le.premultiplyAlpha,ne.flipY=Le.flipY,ne.unpackAlignment=Le.unpackAlignment,ne.colorSpace=Le.colorSpace,ne.width=Le.width,ne.height=Le.height,ne.channels=Le.channels}function ro(ne,Le){if(!(typeof Le!="object"||!Le)){if("premultiplyAlpha"in Le&&(ne.premultiplyAlpha=Le.premultiplyAlpha),"flipY"in Le&&(ne.flipY=Le.flipY),"alignment"in Le&&(ne.unpackAlignment=Le.alignment),"colorSpace"in Le&&(ne.colorSpace=Ls[Le.colorSpace]),"type"in Le){var Ze=Le.type;ne.type=ua[Ze]}var kt=ne.width,dr=ne.height,Mr=ne.channels,lr=!1;"shape"in Le?(kt=Le.shape[0],dr=Le.shape[1],Le.shape.length===3&&(Mr=Le.shape[2],lr=!0)):("radius"in Le&&(kt=dr=Le.radius),"width"in Le&&(kt=Le.width),"height"in Le&&(dr=Le.height),"channels"in Le&&(Mr=Le.channels,lr=!0)),ne.width=kt|0,ne.height=dr|0,ne.channels=Mr|0;var $e=!1;if("format"in Le){var ht=Le.format,bt=ne.internalformat=Hn[ht];ne.format=hs[bt],ht in ua&&("type"in Le||(ne.type=ua[ht])),ht in qi&&(ne.compressed=!0),$e=!0}!lr&&$e?ne.channels=$n[ne.format]:lr&&!$e&&ne.channels!==un[ne.format]&&(ne.format=ne.internalformat=un[ne.channels])}}function na(ne){Be.pixelStorei(Ya,ne.flipY),Be.pixelStorei(_n,ne.premultiplyAlpha),Be.pixelStorei(Vn,ne.colorSpace),Be.pixelStorei(Vs,ne.unpackAlignment)}function On(){Ji.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function In(ne,Le){var Ze=null;if(Es(Le)?Ze=Le:Le&&(ro(ne,Le),"x"in Le&&(ne.xOffset=Le.x|0),"y"in Le&&(ne.yOffset=Le.y|0),Es(Le.data)&&(Ze=Le.data)),Le.copy){var kt=yi.viewportWidth,dr=yi.viewportHeight;ne.width=ne.width||kt-ne.xOffset,ne.height=ne.height||dr-ne.yOffset,ne.needsCopy=!0}else if(!Ze)ne.width=ne.width||1,ne.height=ne.height||1,ne.channels=ne.channels||4;else if(yr(Ze))ne.channels=ne.channels||4,ne.data=Ze,!("type"in Le)&&ne.type===Ba&&(ne.type=As(Ze));else if(Pa(Ze))ne.channels=ne.channels||4,Ho(ne,Ze),ne.alignment=1,ne.needsFree=!0;else if(Ut(Ze)){var Mr=Ze.data;!Array.isArray(Mr)&&ne.type===Ba&&(ne.type=As(Mr));var lr=Ze.shape,$e=Ze.stride,ht,bt,Kt,sr,Qt,ur;lr.length===3?(Kt=lr[2],ur=$e[2]):(Kt=1,ur=1),ht=lr[0],bt=lr[1],sr=$e[0],Qt=$e[1],ne.alignment=1,ne.width=ht,ne.height=bt,ne.channels=Kt,ne.format=ne.internalformat=un[Kt],ne.needsFree=!0,ts(ne,Mr,sr,Qt,ur,Ze.offset)}else if(Jo(Ze)||To(Ze)||Dn(Ze))Jo(Ze)||To(Ze)?ne.element=Ze:ne.element=Ze.canvas,ne.width=ne.element.width,ne.height=ne.element.height,ne.channels=4;else if(_a(Ze))ne.element=Ze,ne.width=Ze.width,ne.height=Ze.height,ne.channels=4;else if(Ws(Ze))ne.element=Ze,ne.width=Ze.naturalWidth,ne.height=Ze.naturalHeight,ne.channels=4;else if(Ca(Ze))ne.element=Ze,ne.width=Ze.videoWidth,ne.height=Ze.videoHeight,ne.channels=4;else if(to(Ze)){var er=ne.width||Ze[0].length,Ot=ne.height||Ze.length,Jt=ne.channels;en(Ze[0][0])?Jt=Jt||Ze[0][0].length:Jt=Jt||1;for(var Lt=xe.shape(Ze),Ar=1,Ur=0;Ur>=dr,Ze.height>>=dr,In(Ze,kt[dr]),ne.mipmask|=1<=0&&!("faces"in Le)&&(ne.genMipmaps=!0)}if("mag"in Le){var kt=Le.mag;ne.magFilter=Ln[kt]}var dr=ne.wrapS,Mr=ne.wrapT;if("wrap"in Le){var lr=Le.wrap;typeof lr=="string"?dr=Mr=Bn[lr]:Array.isArray(lr)&&(dr=Bn[lr[0]],Mr=Bn[lr[1]])}else{if("wrapS"in Le){var $e=Le.wrapS;dr=Bn[$e]}if("wrapT"in Le){var ht=Le.wrapT;Mr=Bn[ht]}}if(ne.wrapS=dr,ne.wrapT=Mr,"anisotropic"in Le){var bt=Le.anisotropic;ne.anisotropic=Le.anisotropic}if("mipmap"in Le){var Kt=!1;switch(typeof Le.mipmap){case"string":ne.mipmapHint=on[Le.mipmap],ne.genMipmaps=!0,Kt=!0;break;case"boolean":Kt=ne.genMipmaps=Le.mipmap;break;case"object":ne.genMipmaps=!1,Kt=!0;break;default:}Kt&&!("min"in Le)&&(ne.minFilter=mo)}}function xf(ne,Le){Be.texParameteri(Le,Ts,ne.minFilter),Be.texParameteri(Le,vo,ne.magFilter),Be.texParameteri(Le,Sa,ne.wrapS),Be.texParameteri(Le,Qa,ne.wrapT),qt.ext_texture_filter_anisotropic&&Be.texParameteri(Le,ha,ne.anisotropic),ne.genMipmaps&&(Be.hint(Ys,ne.mipmapHint),Be.generateMipmap(Le))}var Cf=0,Gu={},cf=ar.maxTextureUnits,mf=Array(cf).map(function(){return null});function Fl(ne){Ji.call(this),this.mipmask=0,this.internalformat=Un,this.id=Cf++,this.refCount=1,this.target=ne,this.texture=Be.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new Cu,vi.profile&&(this.stats={size:0})}function bf(ne){Be.activeTexture(Ra),Be.bindTexture(ne.target,ne.texture)}function cu(){var ne=mf[0];ne?Be.bindTexture(ne.target,ne.texture):Be.bindTexture(Xi,null)}function Y(ne){var Le=ne.texture,Ze=ne.unit,kt=ne.target;Ze>=0&&(Be.activeTexture(Ra+Ze),Be.bindTexture(kt,null),mf[Ze]=null),Be.deleteTexture(Le),ne.texture=null,ne.params=null,ne.pixels=null,ne.refCount=0,delete Gu[ne.id],ci.textureCount--}e(Fl.prototype,{bind:function(){var ne=this;ne.bindCount+=1;var Le=ne.unit;if(Le<0){for(var Ze=0;Ze0)continue;kt.unit=-1}mf[Ze]=ne,Le=Ze;break}Le>=cf,vi.profile&&ci.maxTextureUnits>Qt)-Kt,ur.height=ur.height||(Ze.height>>Qt)-sr,bf(Ze),_s(ur,Xi,Kt,sr,Qt),cu(),Mo(ur),kt}function Mr(lr,$e){var ht=lr|0,bt=$e|0||ht;if(ht===Ze.width&&bt===Ze.height)return kt;kt.width=Ze.width=ht,kt.height=Ze.height=bt,bf(Ze);for(var Kt=0;Ze.mipmask>>Kt;++Kt){var sr=ht>>Kt,Qt=bt>>Kt;if(!sr||!Qt)break;Be.texImage2D(Xi,Kt,Ze.format,sr,Qt,0,Ze.format,Ze.type,null)}return cu(),vi.profile&&(Ze.stats.size=Wo(Ze.internalformat,Ze.type,ht,bt,!1,!1)),kt}return kt(ne,Le),kt.subimage=dr,kt.resize=Mr,kt._reglType="texture2d",kt._texture=Ze,vi.profile&&(kt.stats=Ze.stats),kt.destroy=function(){Ze.decRef()},kt}function J(ne,Le,Ze,kt,dr,Mr){var lr=new Fl(aa);Gu[lr.id]=lr,ci.cubeCount++;var $e=new Array(6);function ht(sr,Qt,ur,er,Ot,Jt){var Lt,Ar=lr.texInfo;for(Cu.call(Ar),Lt=0;Lt<6;++Lt)$e[Lt]=Ql();if(typeof sr=="number"||!sr){var Ur=sr|0||1;for(Lt=0;Lt<6;++Lt)pl($e[Lt],Ur,Ur)}else if(typeof sr=="object")if(Qt)Dl($e[0],sr),Dl($e[1],Qt),Dl($e[2],ur),Dl($e[3],er),Dl($e[4],Ot),Dl($e[5],Jt);else if(gf(Ar,sr),ro(lr,sr),"faces"in sr){var hi=sr.faces;for(Lt=0;Lt<6;++Lt)Ui($e[Lt],lr),Dl($e[Lt],hi[Lt])}else for(Lt=0;Lt<6;++Lt)Dl($e[Lt],sr);for(Ui(lr,$e[0]),Ar.genMipmaps?lr.mipmask=($e[0].width<<1)-1:lr.mipmask=$e[0].mipmask,lr.internalformat=$e[0].internalformat,ht.width=$e[0].width,ht.height=$e[0].height,bf(lr),Lt=0;Lt<6;++Lt)Fu($e[Lt],Mn+Lt);for(xf(Ar,aa),cu(),vi.profile&&(lr.stats.size=Wo(lr.internalformat,lr.type,ht.width,ht.height,Ar.genMipmaps,!0)),ht.format=dn[lr.internalformat],ht.type=En[lr.type],ht.mag=Zi[Ar.magFilter],ht.min=ga[Ar.minFilter],ht.wrapS=Kn[Ar.wrapS],ht.wrapT=Kn[Ar.wrapT],Lt=0;Lt<6;++Lt)Ef($e[Lt]);return ht}function bt(sr,Qt,ur,er,Ot){var Jt=ur|0,Lt=er|0,Ar=Ot|0,Ur=Qn();return Ui(Ur,lr),Ur.width=0,Ur.height=0,In(Ur,Qt),Ur.width=Ur.width||(lr.width>>Ar)-Jt,Ur.height=Ur.height||(lr.height>>Ar)-Lt,bf(lr),_s(Ur,Mn+sr,Jt,Lt,Ar),cu(),Mo(Ur),ht}function Kt(sr){var Qt=sr|0;if(Qt!==lr.width){ht.width=lr.width=Qt,ht.height=lr.height=Qt,bf(lr);for(var ur=0;ur<6;++ur)for(var er=0;lr.mipmask>>er;++er)Be.texImage2D(Mn+ur,er,lr.format,Qt>>er,Qt>>er,0,lr.format,lr.type,null);return cu(),vi.profile&&(lr.stats.size=Wo(lr.internalformat,lr.type,ht.width,ht.height,!1,!0)),ht}}return ht(ne,Le,Ze,kt,dr,Mr),ht.subimage=bt,ht.resize=Kt,ht._reglType="textureCube",ht._texture=lr,vi.profile&&(ht.stats=lr.stats),ht.destroy=function(){lr.decRef()},ht}function O(){for(var ne=0;ne>kt,Ze.height>>kt,0,Ze.internalformat,Ze.type,null);else for(var dr=0;dr<6;++dr)Be.texImage2D(Mn+dr,kt,Ze.internalformat,Ze.width>>kt,Ze.height>>kt,0,Ze.internalformat,Ze.type,null);xf(Ze.texInfo,Ze.target)})}function _e(){for(var ne=0;ne=0?Ef=!0:Bn.indexOf(Cu)>=0&&(Ef=!1))),("depthTexture"in Fl||"depthStencilTexture"in Fl)&&(mf=!!(Fl.depthTexture||Fl.depthStencilTexture)),"depth"in Fl&&(typeof Fl.depth=="boolean"?Fu=Fl.depth:(Cf=Fl.depth,vf=!1)),"stencil"in Fl&&(typeof Fl.stencil=="boolean"?vf=Fl.stencil:(Gu=Fl.stencil,Fu=!1)),"depthStencil"in Fl&&(typeof Fl.depthStencil=="boolean"?Fu=vf=Fl.depthStencil:(cf=Fl.depthStencil,Fu=!1,vf=!1))}var cu=null,Y=null,R=null,J=null;if(Array.isArray(Ql))cu=Ql.map(qi);else if(Ql)cu=[qi(Ql)];else for(cu=new Array(xf),nl=0;nl0&&(Mo.depth=In[0].depth,Mo.stencil=In[0].stencil,Mo.depthStencil=In[0].depthStencil),In[Qn]?In[Qn](Mo):In[Qn]=Ui(Mo)}return e(Va,{width:nl,height:nl,color:Cu})}function _s(ul){var Qn,Mo=ul|0;if(Mo===Va.width)return Va;var nl=Va.color;for(Qn=0;Qn=nl.byteLength?pl.subdata(nl):(pl.destroy(),Ui.buffers[ul]=null)),Ui.buffers[ul]||(pl=Ui.buffers[ul]=yi.create(Qn,Ss,!1,!0)),Mo.buffer=yi.getBuffer(pl),Mo.size=Mo.buffer.dimension|0,Mo.normalized=!1,Mo.type=Mo.buffer.dtype,Mo.offset=0,Mo.stride=0,Mo.divisor=0,Mo.state=1,Va[ul]=1}else yi.getBuffer(Qn)?(Mo.buffer=yi.getBuffer(Qn),Mo.size=Mo.buffer.dimension|0,Mo.normalized=!1,Mo.type=Mo.buffer.dtype,Mo.offset=0,Mo.stride=0,Mo.divisor=0,Mo.state=1):yi.getBuffer(Qn.buffer)?(Mo.buffer=yi.getBuffer(Qn.buffer),Mo.size=(+Qn.size||Mo.buffer.dimension)|0,Mo.normalized=!!Qn.normalized||!1,"type"in Qn?Mo.type=pi[Qn.type]:Mo.type=Mo.buffer.dtype,Mo.offset=(Qn.offset||0)|0,Mo.stride=(Qn.stride||0)|0,Mo.divisor=(Qn.divisor||0)|0,Mo.state=1):"x"in Qn&&(Mo.x=+Qn.x||0,Mo.y=+Qn.y||0,Mo.z=+Qn.z||0,Mo.w=+Qn.w||0,Mo.state=2)}for(var Dl=0;Dl1)for(var na=0;naWr&&(Wr=xi.stats.uniformsCount)}),Wr},ar.getMaxAttributesCount=function(){var Wr=0;return wn.forEach(function(xi){xi.stats.attributesCount>Wr&&(Wr=xi.stats.attributesCount)}),Wr});function qi(){yi={},ci={};for(var Wr=0;Wr16&&(ar=Pi(ar,Be.length*8));for(var Qr=Array(16),yi=Array(16),ci=0;ci<16;ci++)Qr[ci]=ar[ci]^909522486,yi[ci]=ar[ci]^1549556828;var vi=Pi(Qr.concat(Bs(qt)),512+qt.length*8);return At(Pi(yi.concat(vi),768))}function Ms(Be){for(var qt=Ro?"0123456789ABCDEF":"0123456789abcdef",ar="",Qr,yi=0;yi>>4&15)+qt.charAt(Qr&15);return ar}function jo(Be){for(var qt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ar="",Qr=Be.length,yi=0;yiBe.length*8?ar+=tl:ar+=qt.charAt(ci>>>6*(3-vi)&63);return ar}function Rs(Be,qt){var ar=qt.length,Qr=Array(),yi,ci,vi,on,Bn=Array(Math.ceil(Be.length/2));for(yi=0;yi0;){for(on=Array(),vi=0,yi=0;yi0||ci>0)&&(on[on.length]=ci);Qr[Qr.length]=vi,Bn=on}var Ln="";for(yi=Qr.length-1;yi>=0;yi--)Ln+=qt.charAt(Qr[yi]);var wn=Math.ceil(Be.length*8/(Math.log(qt.length)/Math.log(2)));for(yi=Ln.length;yi>>6&31,128|Qr&63):Qr<=65535?qt+=String.fromCharCode(224|Qr>>>12&15,128|Qr>>>6&63,128|Qr&63):Qr<=2097151&&(qt+=String.fromCharCode(240|Qr>>>18&7,128|Qr>>>12&63,128|Qr>>>6&63,128|Qr&63));return qt}function Bs(Be){for(var qt=Array(Be.length>>2),ar=0;ar>5]|=(Be.charCodeAt(ar/8)&255)<<24-ar%32;return qt}function At(Be){for(var qt="",ar=0;ar>5]>>>24-ar%32&255);return qt}function Vt(Be,qt){return Be>>>qt|Be<<32-qt}function wr(Be,qt){return Be>>>qt}function mr(Be,qt,ar){return Be&qt^~Be&ar}function Fr(Be,qt,ar){return Be&qt^Be&ar^qt&ar}function _i(Be){return Vt(Be,2)^Vt(Be,13)^Vt(Be,22)}function Si(Be){return Vt(Be,6)^Vt(Be,11)^Vt(Be,25)}function Ci(Be){return Vt(Be,7)^Vt(Be,18)^wr(Be,3)}function Ki(Be){return Vt(Be,17)^Vt(Be,19)^wr(Be,10)}var Fn=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function Pi(Be,qt){var ar=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),Qr=new Array(64),yi,ci,vi,on,Bn,Ln,wn,Ls,ua,Hn,qi,Wr;for(Be[qt>>5]|=128<<24-qt%32,Be[(qt+64>>9<<4)+15]=qt,ua=0;ua>16)+(qt>>16)+(ar>>16);return Qr<<16|ar&65535}function Li(Be){return Array.prototype.slice.call(Be)}function Mi(Be){return Li(Be).join("")}function Gn(Be){var qt=Be&&Be.cache,ar=0,Qr=[],yi=[],ci=[];function vi(qi,Wr){var xi=Wr&&Wr.stable;if(!xi){for(var dn=0;dn0&&(qi.push(En,"="),qi.push.apply(qi,Li(arguments)),qi.push(";")),En}return e(Wr,{def:dn,toString:function(){return Mi([xi.length>0?"var "+xi.join(",")+";":"",Mi(qi)])}})}function Bn(){var qi=on(),Wr=on(),xi=qi.toString,dn=Wr.toString;function En(Zi,ga){Wr(Zi,ga,"=",qi.def(Zi,ga),";")}return e(function(){qi.apply(qi,Li(arguments))},{def:qi.def,entry:qi,exit:Wr,save:En,set:function(Zi,ga,Kn){En(Zi,ga),qi(Zi,ga,"=",Kn,";")},toString:function(){return xi()+dn()}})}function Ln(){var qi=Mi(arguments),Wr=Bn(),xi=Bn(),dn=Wr.toString,En=xi.toString;return e(Wr,{then:function(){return Wr.apply(Wr,Li(arguments)),this},else:function(){return xi.apply(xi,Li(arguments)),this},toString:function(){var Zi=En();return Zi&&(Zi="else{"+Zi+"}"),Mi(["if(",qi,"){",dn(),"}",Zi])}})}var wn=on(),Ls={};function ua(qi,Wr){var xi=[];function dn(){var hs="a"+xi.length;return xi.push(hs),hs}Wr=Wr||0;for(var En=0;En":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},zi={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ji={cw:Pe,ccw:Xe};function pn(Be){return Array.isArray(Be)||yr(Be)||Ut(Be)}function sn(Be){return Be.sort(function(qt,ar){return qt===ee?-1:ar===ee?1:qt=1,Qr>=2,qt)}else if(ar===Ks){var yi=Be.data;return new wi(yi.thisDep,yi.contextDep,yi.propDep,qt)}else{if(ar===dl)return new wi(!1,!1,!1,qt);if(ar===xl){for(var ci=!1,vi=!1,on=!1,Bn=0;Bn=1&&(vi=!0),wn>=2&&(on=!0)}else Ln.type===Ks&&(ci=ci||Ln.data.thisDep,vi=vi||Ln.data.contextDep,on=on||Ln.data.propDep)}return new wi(ci,vi,on,qt)}else return new wi(ar===Cs,ar===is,ar===zn,qt)}}var js=new wi(!1,!1,!1,function(){});function El(Be,qt,ar,Qr,yi,ci,vi,on,Bn,Ln,wn,Ls,ua,Hn,qi,Wr){var xi=Ln.Record,dn={add:32774,subtract:32778,"reverse subtract":32779};ar.ext_blend_minmax&&(dn.min=Qe,dn.max=st);var En=ar.angle_instanced_arrays,Zi=ar.webgl_draw_buffers,ga=ar.oes_vertex_array_object,Kn={dirty:!0,profile:Wr.profile},hs={},Ji=[],Ui={},ro={};function na($e){return $e.replace(".","_")}function On($e,ht,bt){var Kt=na($e);Ji.push($e),hs[Kt]=Kn[Kt]=!!bt,Ui[Kt]=ht}function In($e,ht,bt){var Kt=na($e);Ji.push($e),Array.isArray(bt)?(Kn[Kt]=bt.slice(),hs[Kt]=bt.slice()):Kn[Kt]=hs[Kt]=bt,ro[Kt]=ht}function Va($e){return!!isNaN($e)}On(Bl,hn),On(bl,Ei),In(eu,"blendColor",[0,0,0,0]),In(Zl,"blendEquationSeparate",[zr,zr]),In(Ul,"blendFuncSeparate",[Cr,hr,Cr,hr]),On(ja,Yn,!0),In(ns,"depthFunc",fi),In(Js,"depthRange",[0,1]),In(cs,"depthMask",!0),In(sl,sl,[!0,!0,!0,!0]),On(ll,li),In(il,"cullFace",se),In(zl,zl,Xe),In(Ml,Ml,1),On(Rl,Fo),In(Tl,"polygonOffset",[0,0]),On(Ll,vl),On(ms,Us),In(Os,"sampleCoverage",[1,!1]),On(Xl,Zn),In(Vl,"stencilMask",-1),In(Nl,"stencilFunc",[jt,0,-1]),In(le,"stencilOpSeparate",[Z,_t,_t,_t]),In(w,"stencilOpSeparate",[se,_t,_t,_t]),On(q,Ua),In(Q,"scissor",[0,0,Be.drawingBufferWidth,Be.drawingBufferHeight]),In(ee,ee,[0,0,Be.drawingBufferWidth,Be.drawingBufferHeight]);var _s={gl:Be,context:ua,strings:qt,next:hs,current:Kn,draw:Ls,elements:ci,buffer:yi,shader:wn,attributes:Ln.state,vao:Ln,uniforms:Bn,framebuffer:on,extensions:ar,timer:Hn,isBufferArgs:pn},ul={primTypes:ti,compareFuncs:mi,blendFuncs:fn,blendEquations:dn,stencilOps:zi,glTypes:pi,orientationType:ji};Zi&&(ul.backBuffer=[se],ul.drawBuffer=M(Qr.maxDrawbuffers,function($e){return $e===0?[0]:M($e,function(ht){return Bi+ht})}));var Qn=0;function Mo(){var $e=Gn({cache:qi}),ht=$e.link,bt=$e.global;$e.id=Qn++,$e.batchId="0";var Kt=ht(_s),sr=$e.shared={props:"a0"};Object.keys(_s).forEach(function(Jt){sr[Jt]=bt.def(Kt,".",Jt)});var Qt=$e.next={},ur=$e.current={};Object.keys(ro).forEach(function(Jt){Array.isArray(Kn[Jt])&&(Qt[Jt]=bt.def(sr.next,".",Jt),ur[Jt]=bt.def(sr.current,".",Jt))});var er=$e.constants={};Object.keys(ul).forEach(function(Jt){er[Jt]=bt.def(JSON.stringify(ul[Jt]))}),$e.invoke=function(Jt,Lt){switch(Lt.type){case va:var Ar=["this",sr.context,sr.props,$e.batchId];return Jt.def(ht(Lt.data),".call(",Ar.slice(0,Math.max(Lt.data.length+1,4)),")");case zn:return Jt.def(sr.props,Lt.data);case is:return Jt.def(sr.context,Lt.data);case Cs:return Jt.def("this",Lt.data);case Ks:return Lt.data.append($e,Jt),Lt.data.ref;case dl:return Lt.data.toString();case xl:return Lt.data.map(function(Ur){return $e.invoke(Jt,Ur)})}},$e.attribCache={};var Ot={};return $e.scopeAttrib=function(Jt){var Lt=qt.id(Jt);if(Lt in Ot)return Ot[Lt];var Ar=Ln.scope[Lt];Ar||(Ar=Ln.scope[Lt]=new xi);var Ur=Ot[Lt]=ht(Ar);return Ur},$e}function nl($e){var ht=$e.static,bt=$e.dynamic,Kt;if(ue in ht){var sr=!!ht[ue];Kt=no(function(ur,er){return sr}),Kt.enable=sr}else if(ue in bt){var Qt=bt[ue];Kt=Xo(Qt,function(ur,er){return ur.invoke(er,Qt)})}return Kt}function pl($e,ht){var bt=$e.static,Kt=$e.dynamic;if(Ve in bt){var sr=bt[Ve];return sr?(sr=on.getFramebuffer(sr),no(function(ur,er){var Ot=ur.link(sr),Jt=ur.shared;er.set(Jt.framebuffer,".next",Ot);var Lt=Jt.context;return er.set(Lt,"."+Ge,Ot+".width"),er.set(Lt,"."+lt,Ot+".height"),Ot})):no(function(ur,er){var Ot=ur.shared;er.set(Ot.framebuffer,".next","null");var Jt=Ot.context;return er.set(Jt,"."+Ge,Jt+"."+nr),er.set(Jt,"."+lt,Jt+"."+fr),"null"})}else if(Ve in Kt){var Qt=Kt[Ve];return Xo(Qt,function(ur,er){var Ot=ur.invoke(er,Qt),Jt=ur.shared,Lt=Jt.framebuffer,Ar=er.def(Lt,".getFramebuffer(",Ot,")");er.set(Lt,".next",Ar);var Ur=Jt.context;return er.set(Ur,"."+Ge,Ar+"?"+Ar+".width:"+Ur+"."+nr),er.set(Ur,"."+lt,Ar+"?"+Ar+".height:"+Ur+"."+fr),Ar})}else return null}function Dl($e,ht,bt){var Kt=$e.static,sr=$e.dynamic;function Qt(Ot){if(Ot in Kt){var Jt=Kt[Ot],Lt=!0,Ar=Jt.x|0,Ur=Jt.y|0,hi,Cn;return"width"in Jt?hi=Jt.width|0:Lt=!1,"height"in Jt?Cn=Jt.height|0:Lt=!1,new wi(!Lt&&ht&&ht.thisDep,!Lt&&ht&&ht.contextDep,!Lt&&ht&&ht.propDep,function(Xa,ca){var An=Xa.shared.context,Pn=hi;"width"in Jt||(Pn=ca.def(An,".",Ge,"-",Ar));var Nn=Cn;return"height"in Jt||(Nn=ca.def(An,".",lt,"-",Ur)),[Ar,Ur,Pn,Nn]})}else if(Ot in sr){var Yi=sr[Ot],yn=Xo(Yi,function(Xa,ca){var An=Xa.invoke(ca,Yi),Pn=Xa.shared.context,Nn=ca.def(An,".x|0"),xa=ca.def(An,".y|0"),Zo=ca.def('"width" in ',An,"?",An,".width|0:","(",Pn,".",Ge,"-",Nn,")"),ru=ca.def('"height" in ',An,"?",An,".height|0:","(",Pn,".",lt,"-",xa,")");return[Nn,xa,Zo,ru]});return ht&&(yn.thisDep=yn.thisDep||ht.thisDep,yn.contextDep=yn.contextDep||ht.contextDep,yn.propDep=yn.propDep||ht.propDep),yn}else return ht?new wi(ht.thisDep,ht.contextDep,ht.propDep,function(Xa,ca){var An=Xa.shared.context;return[0,0,ca.def(An,".",Ge),ca.def(An,".",lt)]}):null}var ur=Qt(ee);if(ur){var er=ur;ur=new wi(ur.thisDep,ur.contextDep,ur.propDep,function(Ot,Jt){var Lt=er.append(Ot,Jt),Ar=Ot.shared.context;return Jt.set(Ar,"."+rt,Lt[2]),Jt.set(Ar,"."+pt,Lt[3]),Lt})}return{viewport:ur,scissor_box:Qt(Q)}}function Fu($e,ht){var bt=$e.static,Kt=typeof bt[mt]=="string"&&typeof bt[tt]=="string";if(Kt){if(Object.keys(ht.dynamic).length>0)return null;var sr=ht.static,Qt=Object.keys(sr);if(Qt.length>0&&typeof sr[Qt[0]]=="number"){for(var ur=[],er=0;er"+Nn+"?"+Lt+".constant["+Nn+"]:0;"}).join(""),"}}else{","if(",hi,"(",Lt,".buffer)){",Xa,"=",Cn,".createStream(",Ir,",",Lt,".buffer);","}else{",Xa,"=",Cn,".getBuffer(",Lt,".buffer);","}",ca,'="type" in ',Lt,"?",Ur.glTypes,"[",Lt,".type]:",Xa,".dtype;",Yi.normalized,"=!!",Lt,".normalized;");function An(Pn){Jt(Yi[Pn],"=",Lt,".",Pn,"|0;")}return An("size"),An("offset"),An("stride"),An("divisor"),Jt("}}"),Jt.exit("if(",Yi.isStream,"){",Cn,".destroyStream(",Xa,");","}"),Yi}sr[Qt]=Xo(ur,er)}),sr}function xf($e){var ht=$e.static,bt=$e.dynamic,Kt={};return Object.keys(ht).forEach(function(sr){var Qt=ht[sr];Kt[sr]=no(function(ur,er){return typeof Qt=="number"||typeof Qt=="boolean"?""+Qt:ur.link(Qt)})}),Object.keys(bt).forEach(function(sr){var Qt=bt[sr];Kt[sr]=Xo(Qt,function(ur,er){return ur.invoke(er,Qt)})}),Kt}function Cf($e,ht,bt,Kt,sr){var Qt=$e.static,ur=$e.dynamic,er=Fu($e,ht),Ot=pl($e,sr),Jt=Dl($e,Ot,sr),Lt=Ql($e,sr),Ar=Ef($e,sr),Ur=vf($e,sr,er);function hi(An){var Pn=Jt[An];Pn&&(Ar[An]=Pn)}hi(ee),hi(na(Q));var Cn=Object.keys(Ar).length>0,Yi={framebuffer:Ot,draw:Lt,shader:Ur,state:Ar,dirty:Cn,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(Yi.profile=nl($e,sr),Yi.uniforms=Cu(bt,sr),Yi.drawVAO=Yi.scopeVAO=Lt.vao,!Yi.drawVAO&&Ur.program&&!er&&ar.angle_instanced_arrays&&Lt.static.elements){var yn=!0,Xa=Ur.program.attributes.map(function(An){var Pn=ht.static[An];return yn=yn&&!!Pn,Pn});if(yn&&Xa.length>0){var ca=Ln.getVAO(Ln.createVAO({attributes:Xa,elements:Lt.static.elements}));Yi.drawVAO=new wi(null,null,null,function(An,Pn){return An.link(ca)}),Yi.useVAO=!0}}return er?Yi.useVAO=!0:Yi.attributes=gf(ht,sr),Yi.context=xf(Kt,sr),Yi}function Gu($e,ht,bt){var Kt=$e.shared,sr=Kt.context,Qt=$e.scope();Object.keys(bt).forEach(function(ur){ht.save(sr,"."+ur);var er=bt[ur],Ot=er.append($e,ht);Array.isArray(Ot)?Qt(sr,".",ur,"=[",Ot.join(),"];"):Qt(sr,".",ur,"=",Ot,";")}),ht(Qt)}function cf($e,ht,bt,Kt){var sr=$e.shared,Qt=sr.gl,ur=sr.framebuffer,er;Zi&&(er=ht.def(sr.extensions,".webgl_draw_buffers"));var Ot=$e.constants,Jt=Ot.drawBuffer,Lt=Ot.backBuffer,Ar;bt?Ar=bt.append($e,ht):Ar=ht.def(ur,".next"),Kt||ht("if(",Ar,"!==",ur,".cur){"),ht("if(",Ar,"){",Qt,".bindFramebuffer(",$r,",",Ar,".framebuffer);"),Zi&&ht(er,".drawBuffersWEBGL(",Jt,"[",Ar,".colorAttachments.length]);"),ht("}else{",Qt,".bindFramebuffer(",$r,",null);"),Zi&&ht(er,".drawBuffersWEBGL(",Lt,");"),ht("}",ur,".cur=",Ar,";"),Kt||ht("}")}function mf($e,ht,bt){var Kt=$e.shared,sr=Kt.gl,Qt=$e.current,ur=$e.next,er=Kt.current,Ot=Kt.next,Jt=$e.cond(er,".dirty");Ji.forEach(function(Lt){var Ar=na(Lt);if(!(Ar in bt.state)){var Ur,hi;if(Ar in ur){Ur=ur[Ar],hi=Qt[Ar];var Cn=M(Kn[Ar].length,function(yn){return Jt.def(Ur,"[",yn,"]")});Jt($e.cond(Cn.map(function(yn,Xa){return yn+"!=="+hi+"["+Xa+"]"}).join("||")).then(sr,".",ro[Ar],"(",Cn,");",Cn.map(function(yn,Xa){return hi+"["+Xa+"]="+yn}).join(";"),";"))}else{Ur=Jt.def(Ot,".",Ar);var Yi=$e.cond(Ur,"!==",er,".",Ar);Jt(Yi),Ar in Ui?Yi($e.cond(Ur).then(sr,".enable(",Ui[Ar],");").else(sr,".disable(",Ui[Ar],");"),er,".",Ar,"=",Ur,";"):Yi(sr,".",ro[Ar],"(",Ur,");",er,".",Ar,"=",Ur,";")}}}),Object.keys(bt.state).length===0&&Jt(er,".dirty=false;"),ht(Jt)}function Fl($e,ht,bt,Kt){var sr=$e.shared,Qt=$e.current,ur=sr.current,er=sr.gl,Ot;sn(Object.keys(bt)).forEach(function(Jt){var Lt=bt[Jt];if(!(Kt&&!Kt(Lt))){var Ar=Lt.append($e,ht);if(Ui[Jt]){var Ur=Ui[Jt];xo(Lt)?(Ot=$e.link(Ar,{stable:!0}),ht($e.cond(Ot).then(er,".enable(",Ur,");").else(er,".disable(",Ur,");")),ht(ur,".",Jt,"=",Ot,";")):(ht($e.cond(Ar).then(er,".enable(",Ur,");").else(er,".disable(",Ur,");")),ht(ur,".",Jt,"=",Ar,";"))}else if(en(Ar)){var hi=Qt[Jt];ht(er,".",ro[Jt],"(",Ar,");",Ar.map(function(Cn,Yi){return hi+"["+Yi+"]="+Cn}).join(";"),";")}else xo(Lt)?(Ot=$e.link(Ar,{stable:!0}),ht(er,".",ro[Jt],"(",Ot,");",ur,".",Jt,"=",Ot,";")):ht(er,".",ro[Jt],"(",Ar,");",ur,".",Jt,"=",Ar,";")}})}function bf($e,ht){En&&($e.instancing=ht.def($e.shared.extensions,".angle_instanced_arrays"))}function cu($e,ht,bt,Kt,sr){var Qt=$e.shared,ur=$e.stats,er=Qt.current,Ot=Qt.timer,Jt=bt.profile;function Lt(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var Ar,Ur;function hi(An){Ar=ht.def(),An(Ar,"=",Lt(),";"),typeof sr=="string"?An(ur,".count+=",sr,";"):An(ur,".count++;"),Hn&&(Kt?(Ur=ht.def(),An(Ur,"=",Ot,".getNumPendingQueries();")):An(Ot,".beginQuery(",ur,");"))}function Cn(An){An(ur,".cpuTime+=",Lt(),"-",Ar,";"),Hn&&(Kt?An(Ot,".pushScopeStats(",Ur,",",Ot,".getNumPendingQueries(),",ur,");"):An(Ot,".endQuery();"))}function Yi(An){var Pn=ht.def(er,".profile");ht(er,".profile=",An,";"),ht.exit(er,".profile=",Pn,";")}var yn;if(Jt){if(xo(Jt)){Jt.enable?(hi(ht),Cn(ht.exit),Yi("true")):Yi("false");return}yn=Jt.append($e,ht),Yi(yn)}else yn=ht.def(er,".profile");var Xa=$e.block();hi(Xa),ht("if(",yn,"){",Xa,"}");var ca=$e.block();Cn(ca),ht.exit("if(",yn,"){",ca,"}")}function Y($e,ht,bt,Kt,sr){var Qt=$e.shared;function ur(Ot){switch(Ot){case au:case ou:case Hu:return 2;case Sl:case Pu:case $u:return 3;case Yl:case iu:case Ku:return 4;default:return 1}}function er(Ot,Jt,Lt){var Ar=Qt.gl,Ur=ht.def(Ot,".location"),hi=ht.def(Qt.attributes,"[",Ur,"]"),Cn=Lt.state,Yi=Lt.buffer,yn=[Lt.x,Lt.y,Lt.z,Lt.w],Xa=["buffer","normalized","offset","stride"];function ca(){ht("if(!",hi,".buffer){",Ar,".enableVertexAttribArray(",Ur,");}");var Pn=Lt.type,Nn;if(Lt.size?Nn=ht.def(Lt.size,"||",Jt):Nn=Jt,ht("if(",hi,".type!==",Pn,"||",hi,".size!==",Nn,"||",Xa.map(function(Zo){return hi+"."+Zo+"!=="+Lt[Zo]}).join("||"),"){",Ar,".bindBuffer(",Ir,",",Yi,".buffer);",Ar,".vertexAttribPointer(",[Ur,Nn,Pn,Lt.normalized,Lt.stride,Lt.offset],");",hi,".type=",Pn,";",hi,".size=",Nn,";",Xa.map(function(Zo){return hi+"."+Zo+"="+Lt[Zo]+";"}).join(""),"}"),En){var xa=Lt.divisor;ht("if(",hi,".divisor!==",xa,"){",$e.instancing,".vertexAttribDivisorANGLE(",[Ur,xa],");",hi,".divisor=",xa,";}")}}function An(){ht("if(",hi,".buffer){",Ar,".disableVertexAttribArray(",Ur,");",hi,".buffer=null;","}if(",ta.map(function(Pn,Nn){return hi+"."+Pn+"!=="+yn[Nn]}).join("||"),"){",Ar,".vertexAttrib4f(",Ur,",",yn,");",ta.map(function(Pn,Nn){return hi+"."+Pn+"="+yn[Nn]+";"}).join(""),"}")}Cn===ia?ca():Cn===pa?An():(ht("if(",Cn,"===",ia,"){"),ca(),ht("}else{"),An(),ht("}"))}Kt.forEach(function(Ot){var Jt=Ot.name,Lt=bt.attributes[Jt],Ar;if(Lt){if(!sr(Lt))return;Ar=Lt.append($e,ht)}else{if(!sr(js))return;var Ur=$e.scopeAttrib(Jt);Ar={},Object.keys(new xi).forEach(function(hi){Ar[hi]=ht.def(Ur,".",hi)})}er($e.link(Ot),ur(Ot.info.type),Ar)})}function R($e,ht,bt,Kt,sr,Qt){for(var ur=$e.shared,er=ur.gl,Ot,Jt=0;Jt1){for(var yu=[],Du=[],vu=0;vu>1)",Yi],");")}function xa(){bt(yn,".drawArraysInstancedANGLE(",[Ur,hi,Cn,Yi],");")}Lt&&Lt!=="null"?ca?Nn():(bt("if(",Lt,"){"),Nn(),bt("}else{"),xa(),bt("}")):xa()}function Pn(){function Nn(){bt(Qt+".drawElements("+[Ur,Cn,Xa,hi+"<<(("+Xa+"-"+ya+")>>1)"]+");")}function xa(){bt(Qt+".drawArrays("+[Ur,hi,Cn]+");")}Lt&&Lt!=="null"?ca?Nn():(bt("if(",Lt,"){"),Nn(),bt("}else{"),xa(),bt("}")):xa()}En&&(typeof Yi!="number"||Yi>=0)?typeof Yi=="string"?(bt("if(",Yi,">0){"),An(),bt("}else if(",Yi,"<0){"),Pn(),bt("}")):An():Pn()}function O($e,ht,bt,Kt,sr){var Qt=Mo(),ur=Qt.proc("body",sr);return En&&(Qt.instancing=ur.def(Qt.shared.extensions,".angle_instanced_arrays")),$e(Qt,ur,bt,Kt),Qt.compile().body}function K($e,ht,bt,Kt){bf($e,ht),bt.useVAO?bt.drawVAO?ht($e.shared.vao,".setVAO(",bt.drawVAO.append($e,ht),");"):ht($e.shared.vao,".setVAO(",$e.shared.vao,".targetVAO);"):(ht($e.shared.vao,".setVAO(null);"),Y($e,ht,bt,Kt.attributes,function(){return!0})),R($e,ht,bt,Kt.uniforms,function(){return!0},!1),J($e,ht,ht,bt)}function _e($e,ht){var bt=$e.proc("draw",1);bf($e,bt),Gu($e,bt,ht.context),cf($e,bt,ht.framebuffer),mf($e,bt,ht),Fl($e,bt,ht.state),cu($e,bt,ht,!1,!0);var Kt=ht.shader.progVar.append($e,bt);if(bt($e.shared.gl,".useProgram(",Kt,".program);"),ht.shader.program)K($e,bt,ht,ht.shader.program);else{bt($e.shared.vao,".setVAO(null);");var sr=$e.global.def("{}"),Qt=bt.def(Kt,".id"),ur=bt.def(sr,"[",Qt,"]");bt($e.cond(ur).then(ur,".call(this,a0);").else(ur,"=",sr,"[",Qt,"]=",$e.link(function(er){return O(K,$e,ht,er,1)}),"(",Kt,");",ur,".call(this,a0);"))}Object.keys(ht.state).length>0&&bt($e.shared.current,".dirty=true;"),$e.shared.vao&&bt($e.shared.vao,".setVAO(null);")}function ne($e,ht,bt,Kt){$e.batchId="a1",bf($e,ht);function sr(){return!0}Y($e,ht,bt,Kt.attributes,sr),R($e,ht,bt,Kt.uniforms,sr,!1),J($e,ht,ht,bt)}function Le($e,ht,bt,Kt){bf($e,ht);var sr=bt.contextDep,Qt=ht.def(),ur="a0",er="a1",Ot=ht.def();$e.shared.props=Ot,$e.batchId=Qt;var Jt=$e.scope(),Lt=$e.scope();ht(Jt.entry,"for(",Qt,"=0;",Qt,"<",er,";++",Qt,"){",Ot,"=",ur,"[",Qt,"];",Lt,"}",Jt.exit);function Ar(Xa){return Xa.contextDep&&sr||Xa.propDep}function Ur(Xa){return!Ar(Xa)}if(bt.needsContext&&Gu($e,Lt,bt.context),bt.needsFramebuffer&&cf($e,Lt,bt.framebuffer),Fl($e,Lt,bt.state,Ar),bt.profile&&Ar(bt.profile)&&cu($e,Lt,bt,!1,!0),Kt)bt.useVAO?bt.drawVAO?Ar(bt.drawVAO)?Lt($e.shared.vao,".setVAO(",bt.drawVAO.append($e,Lt),");"):Jt($e.shared.vao,".setVAO(",bt.drawVAO.append($e,Jt),");"):Jt($e.shared.vao,".setVAO(",$e.shared.vao,".targetVAO);"):(Jt($e.shared.vao,".setVAO(null);"),Y($e,Jt,bt,Kt.attributes,Ur),Y($e,Lt,bt,Kt.attributes,Ar)),R($e,Jt,bt,Kt.uniforms,Ur,!1),R($e,Lt,bt,Kt.uniforms,Ar,!0),J($e,Jt,Lt,bt);else{var hi=$e.global.def("{}"),Cn=bt.shader.progVar.append($e,Lt),Yi=Lt.def(Cn,".id"),yn=Lt.def(hi,"[",Yi,"]");Lt($e.shared.gl,".useProgram(",Cn,".program);","if(!",yn,"){",yn,"=",hi,"[",Yi,"]=",$e.link(function(Xa){return O(ne,$e,bt,Xa,2)}),"(",Cn,");}",yn,".call(this,a0[",Qt,"],",Qt,");")}}function Ze($e,ht){var bt=$e.proc("batch",2);$e.batchId="0",bf($e,bt);var Kt=!1,sr=!0;Object.keys(ht.context).forEach(function(hi){Kt=Kt||ht.context[hi].propDep}),Kt||(Gu($e,bt,ht.context),sr=!1);var Qt=ht.framebuffer,ur=!1;Qt?(Qt.propDep?Kt=ur=!0:Qt.contextDep&&Kt&&(ur=!0),ur||cf($e,bt,Qt)):cf($e,bt,null),ht.state.viewport&&ht.state.viewport.propDep&&(Kt=!0);function er(hi){return hi.contextDep&&Kt||hi.propDep}mf($e,bt,ht),Fl($e,bt,ht.state,function(hi){return!er(hi)}),(!ht.profile||!er(ht.profile))&&cu($e,bt,ht,!1,"a1"),ht.contextDep=Kt,ht.needsContext=sr,ht.needsFramebuffer=ur;var Ot=ht.shader.progVar;if(Ot.contextDep&&Kt||Ot.propDep)Le($e,bt,ht,null);else{var Jt=Ot.append($e,bt);if(bt($e.shared.gl,".useProgram(",Jt,".program);"),ht.shader.program)Le($e,bt,ht,ht.shader.program);else{bt($e.shared.vao,".setVAO(null);");var Lt=$e.global.def("{}"),Ar=bt.def(Jt,".id"),Ur=bt.def(Lt,"[",Ar,"]");bt($e.cond(Ur).then(Ur,".call(this,a0,a1);").else(Ur,"=",Lt,"[",Ar,"]=",$e.link(function(hi){return O(Le,$e,ht,hi,2)}),"(",Jt,");",Ur,".call(this,a0,a1);"))}}Object.keys(ht.state).length>0&&bt($e.shared.current,".dirty=true;"),$e.shared.vao&&bt($e.shared.vao,".setVAO(null);")}function kt($e,ht){var bt=$e.proc("scope",3);$e.batchId="a2";var Kt=$e.shared,sr=Kt.current;if(Gu($e,bt,ht.context),ht.framebuffer&&ht.framebuffer.append($e,bt),sn(Object.keys(ht.state)).forEach(function(er){var Ot=ht.state[er],Jt=Ot.append($e,bt);en(Jt)?Jt.forEach(function(Lt,Ar){Va(Lt)?bt.set($e.next[er],"["+Ar+"]",Lt):bt.set($e.next[er],"["+Ar+"]",$e.link(Lt,{stable:!0}))}):xo(Ot)?bt.set(Kt.next,"."+er,$e.link(Jt,{stable:!0})):bt.set(Kt.next,"."+er,Jt)}),cu($e,bt,ht,!0,!0),[Bt,kr,or,Vr,ir].forEach(function(er){var Ot=ht.draw[er];if(Ot){var Jt=Ot.append($e,bt);Va(Jt)?bt.set(Kt.draw,"."+er,Jt):bt.set(Kt.draw,"."+er,$e.link(Jt),{stable:!0})}}),Object.keys(ht.uniforms).forEach(function(er){var Ot=ht.uniforms[er].append($e,bt);Array.isArray(Ot)&&(Ot="["+Ot.map(function(Jt){return Va(Jt)?Jt:$e.link(Jt,{stable:!0})})+"]"),bt.set(Kt.uniforms,"["+$e.link(qt.id(er),{stable:!0})+"]",Ot)}),Object.keys(ht.attributes).forEach(function(er){var Ot=ht.attributes[er].append($e,bt),Jt=$e.scopeAttrib(er);Object.keys(new xi).forEach(function(Lt){bt.set(Jt,"."+Lt,Ot[Lt])})}),ht.scopeVAO){var Qt=ht.scopeVAO.append($e,bt);Va(Qt)?bt.set(Kt.vao,".targetVAO",Qt):bt.set(Kt.vao,".targetVAO",$e.link(Qt,{stable:!0}))}function ur(er){var Ot=ht.shader[er];if(Ot){var Jt=Ot.append($e,bt);Va(Jt)?bt.set(Kt.shader,"."+er,Jt):bt.set(Kt.shader,"."+er,$e.link(Jt,{stable:!0}))}}ur(tt),ur(mt),Object.keys(ht.state).length>0&&(bt(sr,".dirty=true;"),bt.exit(sr,".dirty=true;")),bt("a1(",$e.shared.context,",a0,",$e.batchId,");")}function dr($e){if(!(typeof $e!="object"||en($e))){for(var ht=Object.keys($e),bt=0;bt=0;--O){var K=_s[O];K&&K(qi,null,0)}ar.flush(),wn&&wn.update()}function Dl(){!nl&&_s.length>0&&(nl=d.next(pl))}function Fu(){nl&&(d.cancel(pl),nl=null)}function vf(O){O.preventDefault(),yi=!0,Fu(),ul.forEach(function(K){K()})}function Ql(O){ar.getError(),yi=!1,ci.restore(),hs.restore(),En.restore(),Ji.restore(),Ui.restore(),ro.restore(),ga.restore(),wn&&wn.restore(),na.procs.refresh(),Dl(),Qn.forEach(function(K){K()})}Va&&(Va.addEventListener(Tu,vf,!1),Va.addEventListener(Au,Ql,!1));function Ef(){_s.length=0,Fu(),Va&&(Va.removeEventListener(Tu,vf),Va.removeEventListener(Au,Ql)),hs.clear(),ro.clear(),Ui.clear(),ga.clear(),Ji.clear(),Zi.clear(),En.clear(),wn&&wn.clear(),Mo.forEach(function(O){O()})}function Cu(O){function K(Qt){var ur=e({},Qt);delete ur.uniforms,delete ur.attributes,delete ur.context,delete ur.vao,"stencil"in ur&&ur.stencil.op&&(ur.stencil.opBack=ur.stencil.opFront=ur.stencil.op,delete ur.stencil.op);function er(Ot){if(Ot in ur){var Jt=ur[Ot];delete ur[Ot],Object.keys(Jt).forEach(function(Lt){ur[Ot+"."+Lt]=Jt[Lt]})}}return er("blend"),er("depth"),er("cull"),er("stencil"),er("polygonOffset"),er("scissor"),er("sample"),"vao"in Qt&&(ur.vao=Qt.vao),ur}function _e(Qt,ur){var er={},Ot={};return Object.keys(Qt).forEach(function(Jt){var Lt=Qt[Jt];if(h.isDynamic(Lt)){Ot[Jt]=h.unbox(Lt,Jt);return}else if(ur&&Array.isArray(Lt)){for(var Ar=0;Ar0)return $e.call(this,Kt(Qt|0),Qt|0)}else if(Array.isArray(Qt)){if(Qt.length)return $e.call(this,Qt,Qt.length)}else return lr.call(this,Qt)}return e(sr,{stats:dr,destroy:function(){Mr.destroy()}})}var gf=ro.setFBO=Cu({framebuffer:h.define.call(null,lf,"framebuffer")});function xf(O,K){var _e=0;na.procs.poll();var ne=K.color;ne&&(ar.clearColor(+ne[0]||0,+ne[1]||0,+ne[2]||0,+ne[3]||0),_e|=Vu),"depth"in K&&(ar.clearDepth(+K.depth),_e|=tf),"stencil"in K&&(ar.clearStencil(K.stencil|0),_e|=ds),ar.clear(_e)}function Cf(O){if("framebuffer"in O)if(O.framebuffer&&O.framebuffer_reglType==="framebufferCube")for(var K=0;K<6;++K)gf(e({framebuffer:O.framebuffer.faces[K]},O),xf);else gf(O,xf);else xf(null,O)}function Gu(O){_s.push(O);function K(){var _e=pf(_s,O);function ne(){var Le=pf(_s,ne);_s[Le]=_s[_s.length-1],_s.length-=1,_s.length<=0&&Fu()}_s[_e]=ne}return Dl(),{cancel:K}}function cf(){var O=In.viewport,K=In.scissor_box;O[0]=O[1]=K[0]=K[1]=0,qi.viewportWidth=qi.framebufferWidth=qi.drawingBufferWidth=O[2]=K[2]=ar.drawingBufferWidth,qi.viewportHeight=qi.framebufferHeight=qi.drawingBufferHeight=O[3]=K[3]=ar.drawingBufferHeight}function mf(){qi.tick+=1,qi.time=bf(),cf(),na.procs.poll()}function Fl(){Ji.refresh(),cf(),na.procs.refresh(),wn&&wn.update()}function bf(){return(p()-Ls)/1e3}Fl();function cu(O,K){var _e;switch(O){case"frame":return Gu(K);case"lost":_e=ul;break;case"restore":_e=Qn;break;case"destroy":_e=Mo;break;default:}return _e.push(K),{cancel:function(){for(var ne=0;ne<_e.length;++ne)if(_e[ne]===K){_e[ne]=_e[_e.length-1],_e.pop();return}}}}function Y(){return Bn}function R(O){Object.entries(O).forEach(function(K){Bn[K[0]]=K[1]})}var J=e(Cu,{clear:Cf,prop:h.define.bind(null,lf),context:h.define.bind(null,hf),this:h.define.bind(null,Mf),draw:Cu({}),buffer:function(O){return En.create(O,Wl,!1,!1)},elements:function(O){return Zi.create(O,!1)},texture:Ji.create2D,cube:Ji.createCube,renderbuffer:Ui.create,framebuffer:ro.create,framebufferCube:ro.createCube,vao:ga.createVAO,attributes:Qr,frame:Gu,on:cu,limits:dn,hasExtension:function(O){return dn.extensions.indexOf(O.toLowerCase())>=0},read:On,destroy:Ef,_gl:ar,_refresh:Fl,poll:function(){mf(),wn&&wn.update()},now:bf,stats:on,getCachedCode:Y,preloadCachedCode:R});return qt.onDone(null,J),J}return fc})});var S8=Ae((Oxr,NNe)=>{"use strict";var bVt=OX(),wVt=qNe();NNe.exports=function(t,r,n){var i=t._fullLayout,a=!0;return i._glcanvas.each(function(o){if(o.regl){o.regl.preloadCachedCode(n);return}if(!(o.pick&&!i._has("parcoords"))){try{o.regl=wVt({canvas:this,attributes:{antialias:!o.pick,preserveDrawingBuffer:!0},pixelRatio:t._context.plotGlPixelRatio||window.devicePixelRatio,extensions:r||[],cachedCode:n||{}})}catch(s){a=!1}o.regl||(a=!1),a&&this.addEventListener("webglcontextlost",function(s){t&&t.emit&&t.emit("plotly_webglcontextlost",{event:s,layer:o.key})},!1)}}),a||bVt({container:i._glcontainer.node()}),a}});var wK=Ae((bK,WNe)=>{"use strict";var UNe=bY(),VNe=$Y(),TVt=Cqe(),GNe=ONe(),xK=ei(),AVt=Mm().selectMode,SVt=S8(),MVt=lc(),EVt=CU(),kVt=yY().styleTextSelection,HNe={};function CVt(e,t,r,n){var i=e._size,a=e.width*n,o=e.height*n,s=i.l*n,u=i.b*n,l=i.r*n,f=i.t*n,c=i.w*n,h=i.h*n;return[s+t.domain[0]*c,u+r.domain[0]*h,a-l-(1-t.domain[1])*c,o-f-(1-r.domain[1])*h]}var bK=WNe.exports=function(t,r,n){if(n.length){var i=t._fullLayout,a=r._scene,o=r.xaxis,s=r.yaxis,u,l;if(a){var f=SVt(t,["ANGLE_instanced_arrays","OES_element_index_uint"],HNe);if(!f){a.init();return}var c=a.count,h=i._glcanvas.data()[0].regl;if(EVt(t,r,n),a.dirty){if((a.line2d||a.error2d)&&!(a.scatter2d||a.fill2d||a.glText)&&h.clear({color:!0,depth:!0}),a.error2d===!0&&(a.error2d=TVt(h)),a.line2d===!0&&(a.line2d=VNe(h)),a.scatter2d===!0&&(a.scatter2d=UNe(h)),a.fill2d===!0&&(a.fill2d=VNe(h)),a.glText===!0)for(a.glText=new Array(c),u=0;ua.glText.length){var d=c-a.glText.length;for(u=0;uae&&(isNaN(re[be])||isNaN(re[be+1]));)be-=2;W.positions=re.slice(ae,be+2)}return W}),a.line2d.update(a.lineOptions)),a.error2d){var b=(a.errorXOptions||[]).concat(a.errorYOptions||[]);a.error2d.update(b)}a.scatter2d&&a.scatter2d.update(a.markerOptions),a.fillOrder=xK.repeat(null,c),a.fill2d&&(a.fillOptions=a.fillOptions.map(function(W,re){var ae=n[re];if(!(!W||!ae||!ae[0]||!ae[0].trace)){var be=ae[0],ze=be.trace,Ce=be.t,de=a.lineOptions[re],te,ke,Ee=[];ze._ownfill&&Ee.push(re),ze._nexttrace&&Ee.push(re+1),Ee.length&&(a.fillOrder[re]=Ee);var Me=[],Ue=de&&de.positions||Ce.positions,De,ye;if(ze.fill==="tozeroy"){for(De=0;DeDe&&isNaN(Ue[ye+1]);)ye-=2;Ue[De+1]!==0&&(Me=[Ue[De],0]),Me=Me.concat(Ue.slice(De,ye+2)),Ue[ye+1]!==0&&(Me=Me.concat([Ue[ye],0]))}else if(ze.fill==="tozerox"){for(De=0;DeDe&&isNaN(Ue[ye]);)ye-=2;Ue[De]!==0&&(Me=[0,Ue[De+1]]),Me=Me.concat(Ue.slice(De,ye+2)),Ue[ye]!==0&&(Me=Me.concat([0,Ue[ye+1]]))}else if(ze.fill==="toself"||ze.fill==="tonext"){for(Me=[],te=0,W.splitNull=!0,ke=0;ke-1;for(u=0;u{jNe.exports=function(t,r,n){"use strict";var i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r;return i=t.gl,a=t.context,o=t.strings,s=t.next,u=t.current,l=t.draw,f=t.elements,c=t.buffer,h=t.shader,d=t.attributes,p=t.vao,_=t.uniforms,b=t.framebuffer,v=t.extensions,k=t.timer,E=t.isBufferArgs,A=s.blend_color,L=u.blend_color,x=s.blend_equation,C=u.blend_equation,M=s.blend_func,m=u.blend_func,P=s.depth_range,T=u.depth_range,B=s.colorMask,F=u.colorMask,U=s.polygonOffset_offset,G=u.polygonOffset_offset,j=s.sample_coverage,H=u.sample_coverage,N=s.stencil_func,W=u.stencil_func,re=s.stencil_opFront,ae=u.stencil_opFront,be=s.stencil_opBack,ze=u.stencil_opBack,Ce=s.scissor_box,de=u.scissor_box,te=s.viewport,ke=u.viewport,Ee={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Me={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Ue={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},De={add:32774,subtract:32778,"reverse subtract":32779},ye={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},qe={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},ce={cw:2304,ccw:2305},Je=s.blend_color,nt=u.blend_color,gt=s.blend_equation,Nt=u.blend_equation,at=s.blend_func,Ke=u.blend_func,Ct=s.depth_range,wt=u.depth_range,St=s.colorMask,Dt=u.colorMask,Zt=s.polygonOffset_offset,Et=u.polygonOffset_offset,Te=s.sample_coverage,ot=u.sample_coverage,Tt=s.stencil_func,vt=u.stencil_func,Ye=s.stencil_opFront,He=u.stencil_opFront,it=s.stencil_opBack,et=u.stencil_opBack,It=s.scissor_box,Yt=u.scissor_box,cr=s.viewport,_r=u.viewport,{poll:function(){var yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni;u.dirty=!1,Ut=s.dither,Re=s.blend_enable,xe=s.depth_enable,Oe=s.cull_enable,Ie=s.polygonOffset_enable,Fe=s.sample_alpha,ft=s.sample_enable,ge=s.stencil_enable,fe=s.scissor_enable,pe=s.depth_func,dt=u.depth_func,Pt=s.depth_mask,zt=u.depth_mask,rr=s.cull_face,Gr=u.cull_face,Br=s.frontFace,Er=u.frontFace,Rr=s.lineWidth,pi=u.lineWidth,Di=s.stencil_mask,ni=u.stencil_mask,yr=b.next,yr!==b.cur&&(yr?i.bindFramebuffer(36160,yr.framebuffer):i.bindFramebuffer(36160,null),b.cur=yr),Ut!==u.dither&&(Ut?i.enable(3024):i.disable(3024),u.dither=Ut),Re!==u.blend_enable&&(Re?i.enable(3042):i.disable(3042),u.blend_enable=Re),xe!==u.depth_enable&&(xe?i.enable(2929):i.disable(2929),u.depth_enable=xe),Oe!==u.cull_enable&&(Oe?i.enable(2884):i.disable(2884),u.cull_enable=Oe),Ie!==u.polygonOffset_enable&&(Ie?i.enable(32823):i.disable(32823),u.polygonOffset_enable=Ie),Fe!==u.sample_alpha&&(Fe?i.enable(32926):i.disable(32926),u.sample_alpha=Fe),ft!==u.sample_enable&&(ft?i.enable(32928):i.disable(32928),u.sample_enable=ft),ge!==u.stencil_enable&&(ge?i.enable(2960):i.disable(2960),u.stencil_enable=ge),fe!==u.scissor_enable&&(fe?i.enable(3089):i.disable(3089),u.scissor_enable=fe),(Je[0]!==nt[0]||Je[1]!==nt[1]||Je[2]!==nt[2]||Je[3]!==nt[3])&&(i.blendColor(Je[0],Je[1],Je[2],Je[3]),nt[0]=Je[0],nt[1]=Je[1],nt[2]=Je[2],nt[3]=Je[3]),(gt[0]!==Nt[0]||gt[1]!==Nt[1])&&(i.blendEquationSeparate(gt[0],gt[1]),Nt[0]=gt[0],Nt[1]=gt[1]),(at[0]!==Ke[0]||at[1]!==Ke[1]||at[2]!==Ke[2]||at[3]!==Ke[3])&&(i.blendFuncSeparate(at[0],at[1],at[2],at[3]),Ke[0]=at[0],Ke[1]=at[1],Ke[2]=at[2],Ke[3]=at[3]),pe!==dt&&(i.depthFunc(pe),u.depth_func=pe),(Ct[0]!==wt[0]||Ct[1]!==wt[1])&&(i.depthRange(Ct[0],Ct[1]),wt[0]=Ct[0],wt[1]=Ct[1]),Pt!==zt&&(i.depthMask(Pt),u.depth_mask=Pt),(St[0]!==Dt[0]||St[1]!==Dt[1]||St[2]!==Dt[2]||St[3]!==Dt[3])&&(i.colorMask(St[0],St[1],St[2],St[3]),Dt[0]=St[0],Dt[1]=St[1],Dt[2]=St[2],Dt[3]=St[3]),rr!==Gr&&(i.cullFace(rr),u.cull_face=rr),Br!==Er&&(i.frontFace(Br),u.frontFace=Br),Rr!==pi&&(i.lineWidth(Rr),u.lineWidth=Rr),(Zt[0]!==Et[0]||Zt[1]!==Et[1])&&(i.polygonOffset(Zt[0],Zt[1]),Et[0]=Zt[0],Et[1]=Zt[1]),(Te[0]!==ot[0]||Te[1]!==ot[1])&&(i.sampleCoverage(Te[0],Te[1]),ot[0]=Te[0],ot[1]=Te[1]),Di!==ni&&(i.stencilMask(Di),u.stencil_mask=Di),(Tt[0]!==vt[0]||Tt[1]!==vt[1]||Tt[2]!==vt[2])&&(i.stencilFunc(Tt[0],Tt[1],Tt[2]),vt[0]=Tt[0],vt[1]=Tt[1],vt[2]=Tt[2]),(Ye[0]!==He[0]||Ye[1]!==He[1]||Ye[2]!==He[2]||Ye[3]!==He[3])&&(i.stencilOpSeparate(Ye[0],Ye[1],Ye[2],Ye[3]),He[0]=Ye[0],He[1]=Ye[1],He[2]=Ye[2],He[3]=Ye[3]),(it[0]!==et[0]||it[1]!==et[1]||it[2]!==et[2]||it[3]!==et[3])&&(i.stencilOpSeparate(it[0],it[1],it[2],it[3]),et[0]=it[0],et[1]=it[1],et[2]=it[2],et[3]=it[3]),(It[0]!==Yt[0]||It[1]!==Yt[1]||It[2]!==Yt[2]||It[3]!==Yt[3])&&(i.scissor(It[0],It[1],It[2],It[3]),Yt[0]=It[0],Yt[1]=It[1],Yt[2]=It[2],Yt[3]=It[3]),(cr[0]!==_r[0]||cr[1]!==_r[1]||cr[2]!==_r[2]||cr[3]!==_r[3])&&(i.viewport(cr[0],cr[1],cr[2],cr[3]),_r[0]=cr[0],_r[1]=cr[1],_r[2]=cr[2],_r[3]=cr[3])},refresh:function(){var yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi;u.dirty=!1,xe=s.dither,Oe=s.blend_enable,Ie=s.depth_enable,Fe=s.cull_enable,ft=s.polygonOffset_enable,ge=s.sample_alpha,fe=s.sample_enable,pe=s.stencil_enable,dt=s.scissor_enable,Pt=s.depth_func,zt=u.depth_func,rr=s.depth_mask,Gr=u.depth_mask,Br=s.cull_face,Er=u.cull_face,Rr=s.frontFace,pi=u.frontFace,Di=s.lineWidth,ni=u.lineWidth,$i=s.stencil_mask,Qi=u.stencil_mask,yr=b.next,yr?i.bindFramebuffer(36160,yr.framebuffer):i.bindFramebuffer(36160,null),b.cur=yr,Ut=d,Re=0;for(var si=0;si{XNe.exports=function(t,r,n,i,a,o,s,u){"use strict";var l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct;return l=t.gl,f=t.context,c=t.strings,h=t.next,d=t.current,p=t.draw,_=t.elements,b=t.buffer,v=t.shader,k=t.attributes,E=t.vao,A=t.uniforms,L=t.framebuffer,x=t.extensions,C=t.timer,M=t.isBufferArgs,m=h.blend_color,P=d.blend_color,T=h.blend_equation,B=d.blend_equation,F=h.blend_func,U=d.blend_func,G=h.depth_range,j=d.depth_range,H=h.colorMask,N=d.colorMask,W=h.polygonOffset_offset,re=d.polygonOffset_offset,ae=h.sample_coverage,be=d.sample_coverage,ze=h.stencil_func,Ce=d.stencil_func,de=h.stencil_opFront,te=d.stencil_opFront,ke=h.stencil_opBack,Ee=d.stencil_opBack,Me=h.scissor_box,Ue=d.scissor_box,De=h.viewport,ye=d.viewport,qe={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},ce={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Je={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},nt={add:32774,subtract:32778,"reverse subtract":32779},gt={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Nt={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},at={cw:2304,ccw:2305},Ke={},Ct={},{draw:function(wt){var St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re;if(St=x.angle_instanced_arrays,Dt=wt.framebuffer,Zt=L.getFramebuffer(Dt),Et=L.next,L.next=Zt,Te=f.framebufferWidth,f.framebufferWidth=Zt?Zt.width:f.drawingBufferWidth,ot=f.framebufferHeight,f.framebufferHeight=Zt?Zt.height:f.drawingBufferHeight,Zt!==L.cur&&(Zt?l.bindFramebuffer(36160,Zt.framebuffer):l.bindFramebuffer(36160,null),L.cur=Zt),d.dirty){var xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii;xe=h.dither,xe!==d.dither&&(xe?l.enable(3024):l.disable(3024),d.dither=xe),Oe=h.blend_enable,Oe!==d.blend_enable&&(Oe?l.enable(3042):l.disable(3042),d.blend_enable=Oe),Ie=m[0],Fe=m[1],ft=m[2],ge=m[3],(Ie!==P[0]||Fe!==P[1]||ft!==P[2]||ge!==P[3])&&(l.blendColor(Ie,Fe,ft,ge),P[0]=Ie,P[1]=Fe,P[2]=ft,P[3]=ge),fe=T[0],pe=T[1],(fe!==B[0]||pe!==B[1])&&(l.blendEquationSeparate(fe,pe),B[0]=fe,B[1]=pe),dt=F[0],Pt=F[1],zt=F[2],rr=F[3],(dt!==U[0]||Pt!==U[1]||zt!==U[2]||rr!==U[3])&&(l.blendFuncSeparate(dt,Pt,zt,rr),U[0]=dt,U[1]=Pt,U[2]=zt,U[3]=rr),Gr=h.depth_enable,Gr!==d.depth_enable&&(Gr?l.enable(2929):l.disable(2929),d.depth_enable=Gr),Br=h.depth_func,Br!==d.depth_func&&(l.depthFunc(Br),d.depth_func=Br),Er=G[0],Rr=G[1],(Er!==j[0]||Rr!==j[1])&&(l.depthRange(Er,Rr),j[0]=Er,j[1]=Rr),pi=h.depth_mask,pi!==d.depth_mask&&(l.depthMask(pi),d.depth_mask=pi),Di=H[0],ni=H[1],$i=H[2],Qi=H[3],(Di!==N[0]||ni!==N[1]||$i!==N[2]||Qi!==N[3])&&(l.colorMask(Di,ni,$i,Qi),N[0]=Di,N[1]=ni,N[2]=$i,N[3]=Qi),si=h.cull_enable,si!==d.cull_enable&&(si?l.enable(2884):l.disable(2884),d.cull_enable=si),Ai=h.cull_face,Ai!==d.cull_face&&(l.cullFace(Ai),d.cull_face=Ai),Ni=h.frontFace,Ni!==d.frontFace&&(l.frontFace(Ni),d.frontFace=Ni),Rt=h.lineWidth,Rt!==d.lineWidth&&(l.lineWidth(Rt),d.lineWidth=Rt),yt=h.polygonOffset_enable,yt!==d.polygonOffset_enable&&(yt?l.enable(32823):l.disable(32823),d.polygonOffset_enable=yt),Gt=W[0],Wt=W[1],(Gt!==re[0]||Wt!==re[1])&&(l.polygonOffset(Gt,Wt),re[0]=Gt,re[1]=Wt),xr=h.sample_alpha,xr!==d.sample_alpha&&(xr?l.enable(32926):l.disable(32926),d.sample_alpha=xr),Lr=h.sample_enable,Lr!==d.sample_enable&&(Lr?l.enable(32928):l.disable(32928),d.sample_enable=Lr),Nr=ae[0],Or=ae[1],(Nr!==be[0]||Or!==be[1])&&(l.sampleCoverage(Nr,Or),be[0]=Nr,be[1]=Or),Hr=h.stencil_enable,Hr!==d.stencil_enable&&(Hr?l.enable(2960):l.disable(2960),d.stencil_enable=Hr),jr=h.stencil_mask,jr!==d.stencil_mask&&(l.stencilMask(jr),d.stencil_mask=jr),gi=ze[0],ki=ze[1],Vi=ze[2],(gi!==Ce[0]||ki!==Ce[1]||Vi!==Ce[2])&&(l.stencilFunc(gi,ki,Vi),Ce[0]=gi,Ce[1]=ki,Ce[2]=Vi),ti=de[0],tn=de[1],Yr=de[2],oi=de[3],(ti!==te[0]||tn!==te[1]||Yr!==te[2]||oi!==te[3])&&(l.stencilOpSeparate(ti,tn,Yr,oi),te[0]=ti,te[1]=tn,te[2]=Yr,te[3]=oi),Fi=ke[0],an=ke[1],nn=ke[2],Ri=ke[3],(Fi!==Ee[0]||an!==Ee[1]||nn!==Ee[2]||Ri!==Ee[3])&&(l.stencilOpSeparate(Fi,an,nn,Ri),Ee[0]=Fi,Ee[1]=an,Ee[2]=nn,Ee[3]=Ri),Ii=h.scissor_enable,Ii!==d.scissor_enable&&(Ii?l.enable(3089):l.disable(3089),d.scissor_enable=Ii)}Tt=f.framebufferWidth,vt=f.framebufferHeight,Ye=f.viewportWidth,f.viewportWidth=Tt,He=f.viewportHeight,f.viewportHeight=vt,l.viewport(0,0,Tt,vt),ye[0]=0,ye[1]=0,ye[2]=Tt,ye[3]=vt,it=f.framebufferWidth,et=f.framebufferHeight,l.scissor(0,0,it,et),Ue[0]=0,Ue[1]=0,Ue[2]=it,Ue[3]=et,It=d.profile,It&&(Yt=performance.now(),r.count++),cr=v.frag,_r=v.vert,yr=v.program(_r,cr),l.useProgram(yr.program),E.setVAO(null),Ut=yr.id,Re=Ke[Ut],Re?Re.call(this,wt):(Re=Ke[Ut]=n(yr),Re.call(this,wt)),d.dirty=!0,E.setVAO(null),L.next=Et,f.framebufferWidth=Te,f.framebufferHeight=ot,f.viewportWidth=Ye,f.viewportHeight=He,It&&(r.cpuTime+=performance.now()-Yt)},scope:function(wt,St,Dt){var Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe;Zt=wt.framebuffer,Et=L.getFramebuffer(Zt),Te=L.next,L.next=Et,ot=f.framebufferWidth,f.framebufferWidth=Et?Et.width:f.drawingBufferWidth,Tt=f.framebufferHeight,f.framebufferHeight=Et?Et.height:f.drawingBufferHeight,vt=f.framebufferWidth,Ye=f.framebufferHeight,He=f.viewportWidth,f.viewportWidth=vt,it=f.viewportHeight,f.viewportHeight=Ye,et=De[0],De[0]=i,It=De[1],De[1]=a,Yt=De[2],De[2]=vt,cr=De[3],De[3]=Ye,_r=f.framebufferWidth,yr=f.framebufferHeight,Ut=Me[0],Me[0]=o,Re=Me[1],Me[1]=s,xe=Me[2],Me[2]=_r,Oe=Me[3],Me[3]=yr,Ie=d.profile,Ie&&(Fe=performance.now(),r.count++),d.dirty=!0,St(f,wt,Dt),L.next=Te,f.framebufferWidth=ot,f.framebufferHeight=Tt,f.viewportWidth=He,f.viewportHeight=it,De[0]=et,De[1]=It,De[2]=Yt,De[3]=cr,Me[0]=Ut,Me[1]=Re,Me[2]=xe,Me[3]=Oe,Ie&&(r.cpuTime+=performance.now()-Fe),d.dirty=!0},batch:function(wt,St){var Dt,Zt,Et,Te,ot,Tt,vt,Ye;if(Dt=x.angle_instanced_arrays,d.dirty){var He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki;He=h.dither,He!==d.dither&&(He?l.enable(3024):l.disable(3024),d.dither=He),it=h.blend_enable,it!==d.blend_enable&&(it?l.enable(3042):l.disable(3042),d.blend_enable=it),et=m[0],It=m[1],Yt=m[2],cr=m[3],(et!==P[0]||It!==P[1]||Yt!==P[2]||cr!==P[3])&&(l.blendColor(et,It,Yt,cr),P[0]=et,P[1]=It,P[2]=Yt,P[3]=cr),_r=T[0],yr=T[1],(_r!==B[0]||yr!==B[1])&&(l.blendEquationSeparate(_r,yr),B[0]=_r,B[1]=yr),Ut=F[0],Re=F[1],xe=F[2],Oe=F[3],(Ut!==U[0]||Re!==U[1]||xe!==U[2]||Oe!==U[3])&&(l.blendFuncSeparate(Ut,Re,xe,Oe),U[0]=Ut,U[1]=Re,U[2]=xe,U[3]=Oe),Ie=h.depth_enable,Ie!==d.depth_enable&&(Ie?l.enable(2929):l.disable(2929),d.depth_enable=Ie),Fe=h.depth_func,Fe!==d.depth_func&&(l.depthFunc(Fe),d.depth_func=Fe),ft=G[0],ge=G[1],(ft!==j[0]||ge!==j[1])&&(l.depthRange(ft,ge),j[0]=ft,j[1]=ge),fe=h.depth_mask,fe!==d.depth_mask&&(l.depthMask(fe),d.depth_mask=fe),pe=H[0],dt=H[1],Pt=H[2],zt=H[3],(pe!==N[0]||dt!==N[1]||Pt!==N[2]||zt!==N[3])&&(l.colorMask(pe,dt,Pt,zt),N[0]=pe,N[1]=dt,N[2]=Pt,N[3]=zt),rr=h.cull_enable,rr!==d.cull_enable&&(rr?l.enable(2884):l.disable(2884),d.cull_enable=rr),Gr=h.cull_face,Gr!==d.cull_face&&(l.cullFace(Gr),d.cull_face=Gr),Br=h.frontFace,Br!==d.frontFace&&(l.frontFace(Br),d.frontFace=Br),Er=h.lineWidth,Er!==d.lineWidth&&(l.lineWidth(Er),d.lineWidth=Er),Rr=h.polygonOffset_enable,Rr!==d.polygonOffset_enable&&(Rr?l.enable(32823):l.disable(32823),d.polygonOffset_enable=Rr),pi=W[0],Di=W[1],(pi!==re[0]||Di!==re[1])&&(l.polygonOffset(pi,Di),re[0]=pi,re[1]=Di),ni=h.sample_alpha,ni!==d.sample_alpha&&(ni?l.enable(32926):l.disable(32926),d.sample_alpha=ni),$i=h.sample_enable,$i!==d.sample_enable&&($i?l.enable(32928):l.disable(32928),d.sample_enable=$i),Qi=ae[0],si=ae[1],(Qi!==be[0]||si!==be[1])&&(l.sampleCoverage(Qi,si),be[0]=Qi,be[1]=si),Ai=h.stencil_enable,Ai!==d.stencil_enable&&(Ai?l.enable(2960):l.disable(2960),d.stencil_enable=Ai),Ni=h.stencil_mask,Ni!==d.stencil_mask&&(l.stencilMask(Ni),d.stencil_mask=Ni),Rt=ze[0],yt=ze[1],Gt=ze[2],(Rt!==Ce[0]||yt!==Ce[1]||Gt!==Ce[2])&&(l.stencilFunc(Rt,yt,Gt),Ce[0]=Rt,Ce[1]=yt,Ce[2]=Gt),Wt=de[0],xr=de[1],Lr=de[2],Nr=de[3],(Wt!==te[0]||xr!==te[1]||Lr!==te[2]||Nr!==te[3])&&(l.stencilOpSeparate(Wt,xr,Lr,Nr),te[0]=Wt,te[1]=xr,te[2]=Lr,te[3]=Nr),Or=ke[0],Hr=ke[1],jr=ke[2],gi=ke[3],(Or!==Ee[0]||Hr!==Ee[1]||jr!==Ee[2]||gi!==Ee[3])&&(l.stencilOpSeparate(Or,Hr,jr,gi),Ee[0]=Or,Ee[1]=Hr,Ee[2]=jr,Ee[3]=gi),ki=h.scissor_enable,ki!==d.scissor_enable&&(ki?l.enable(3089):l.disable(3089),d.scissor_enable=ki)}Zt=d.profile,Zt&&(Et=performance.now(),r.count+=St),Te=v.frag,ot=v.vert,Tt=v.program(ot,Te),l.useProgram(Tt.program),E.setVAO(null),vt=Tt.id,Ye=Ct[vt],Ye?Ye.call(this,wt,St):(Ye=Ct[vt]=u(Tt),Ye.call(this,wt,St)),d.dirty=!0,E.setVAO(null),Zt&&(r.cpuTime+=performance.now()-Et)}}}});var k8=Ae((Uxr,ZNe)=>{ZNe.exports=function(t,r,n,i){"use strict";var a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt;return a=t.gl,o=t.context,s=t.strings,u=t.next,l=t.current,f=t.draw,c=t.elements,h=t.buffer,d=t.shader,p=t.attributes,_=t.vao,b=t.uniforms,v=t.framebuffer,k=t.extensions,E=t.timer,A=t.isBufferArgs,L=u.blend_color,x=l.blend_color,C=u.blend_equation,M=l.blend_equation,m=u.blend_func,P=l.blend_func,T=u.depth_range,B=l.depth_range,F=u.colorMask,U=l.colorMask,G=u.polygonOffset_offset,j=l.polygonOffset_offset,H=u.sample_coverage,N=l.sample_coverage,W=u.stencil_func,re=l.stencil_func,ae=u.stencil_opFront,be=l.stencil_opFront,ze=u.stencil_opBack,Ce=l.stencil_opBack,de=u.scissor_box,te=l.scissor_box,ke=u.viewport,Ee=l.viewport,Me={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ue={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},De={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},ye={add:32774,subtract:32778,"reverse subtract":32779},qe={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ce={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Je={cw:2304,ccw:2305},nt={},gt={},{draw:function(Nt){var at,Ke,Ct,wt,St,Dt,Zt,Et,Te;if(at=k.angle_instanced_arrays,Ke=v.next,Ke!==v.cur&&(Ke?a.bindFramebuffer(36160,Ke.framebuffer):a.bindFramebuffer(36160,null),v.cur=Ke),l.dirty){var ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr;ot=u.dither,ot!==l.dither&&(ot?a.enable(3024):a.disable(3024),l.dither=ot),Tt=u.blend_enable,Tt!==l.blend_enable&&(Tt?a.enable(3042):a.disable(3042),l.blend_enable=Tt),vt=L[0],Ye=L[1],He=L[2],it=L[3],(vt!==x[0]||Ye!==x[1]||He!==x[2]||it!==x[3])&&(a.blendColor(vt,Ye,He,it),x[0]=vt,x[1]=Ye,x[2]=He,x[3]=it),et=C[0],It=C[1],(et!==M[0]||It!==M[1])&&(a.blendEquationSeparate(et,It),M[0]=et,M[1]=It),Yt=m[0],cr=m[1],_r=m[2],yr=m[3],(Yt!==P[0]||cr!==P[1]||_r!==P[2]||yr!==P[3])&&(a.blendFuncSeparate(Yt,cr,_r,yr),P[0]=Yt,P[1]=cr,P[2]=_r,P[3]=yr),Ut=u.depth_enable,Ut!==l.depth_enable&&(Ut?a.enable(2929):a.disable(2929),l.depth_enable=Ut),Re=u.depth_func,Re!==l.depth_func&&(a.depthFunc(Re),l.depth_func=Re),xe=T[0],Oe=T[1],(xe!==B[0]||Oe!==B[1])&&(a.depthRange(xe,Oe),B[0]=xe,B[1]=Oe),Ie=u.depth_mask,Ie!==l.depth_mask&&(a.depthMask(Ie),l.depth_mask=Ie),Fe=F[0],ft=F[1],ge=F[2],fe=F[3],(Fe!==U[0]||ft!==U[1]||ge!==U[2]||fe!==U[3])&&(a.colorMask(Fe,ft,ge,fe),U[0]=Fe,U[1]=ft,U[2]=ge,U[3]=fe),pe=u.cull_enable,pe!==l.cull_enable&&(pe?a.enable(2884):a.disable(2884),l.cull_enable=pe),dt=u.cull_face,dt!==l.cull_face&&(a.cullFace(dt),l.cull_face=dt),Pt=u.frontFace,Pt!==l.frontFace&&(a.frontFace(Pt),l.frontFace=Pt),zt=u.lineWidth,zt!==l.lineWidth&&(a.lineWidth(zt),l.lineWidth=zt),rr=u.polygonOffset_enable,rr!==l.polygonOffset_enable&&(rr?a.enable(32823):a.disable(32823),l.polygonOffset_enable=rr),Gr=G[0],Br=G[1],(Gr!==j[0]||Br!==j[1])&&(a.polygonOffset(Gr,Br),j[0]=Gr,j[1]=Br),Er=u.sample_alpha,Er!==l.sample_alpha&&(Er?a.enable(32926):a.disable(32926),l.sample_alpha=Er),Rr=u.sample_enable,Rr!==l.sample_enable&&(Rr?a.enable(32928):a.disable(32928),l.sample_enable=Rr),pi=H[0],Di=H[1],(pi!==N[0]||Di!==N[1])&&(a.sampleCoverage(pi,Di),N[0]=pi,N[1]=Di),ni=u.stencil_enable,ni!==l.stencil_enable&&(ni?a.enable(2960):a.disable(2960),l.stencil_enable=ni),$i=u.stencil_mask,$i!==l.stencil_mask&&(a.stencilMask($i),l.stencil_mask=$i),Qi=W[0],si=W[1],Ai=W[2],(Qi!==re[0]||si!==re[1]||Ai!==re[2])&&(a.stencilFunc(Qi,si,Ai),re[0]=Qi,re[1]=si,re[2]=Ai),Ni=ae[0],Rt=ae[1],yt=ae[2],Gt=ae[3],(Ni!==be[0]||Rt!==be[1]||yt!==be[2]||Gt!==be[3])&&(a.stencilOpSeparate(Ni,Rt,yt,Gt),be[0]=Ni,be[1]=Rt,be[2]=yt,be[3]=Gt),Wt=ze[0],xr=ze[1],Lr=ze[2],Nr=ze[3],(Wt!==Ce[0]||xr!==Ce[1]||Lr!==Ce[2]||Nr!==Ce[3])&&(a.stencilOpSeparate(Wt,xr,Lr,Nr),Ce[0]=Wt,Ce[1]=xr,Ce[2]=Lr,Ce[3]=Nr),Or=u.scissor_enable,Or!==l.scissor_enable&&(Or?a.enable(3089):a.disable(3089),l.scissor_enable=Or),Hr=de[0],jr=de[1],gi=de[2],ki=de[3],(Hr!==te[0]||jr!==te[1]||gi!==te[2]||ki!==te[3])&&(a.scissor(Hr,jr,gi,ki),te[0]=Hr,te[1]=jr,te[2]=gi,te[3]=ki),Vi=ke[0],ti=ke[1],tn=ke[2],Yr=ke[3],(Vi!==Ee[0]||ti!==Ee[1]||tn!==Ee[2]||Yr!==Ee[3])&&(a.viewport(Vi,ti,tn,Yr),Ee[0]=Vi,Ee[1]=ti,Ee[2]=tn,Ee[3]=Yr),l.dirty=!1}Ct=l.profile,Ct&&(wt=performance.now(),r.count++),St=d.frag,Dt=d.vert,Zt=d.program(Dt,St),a.useProgram(Zt.program),_.setVAO(null),Et=Zt.id,Te=nt[Et],Te?Te.call(this,Nt):(Te=nt[Et]=n(Zt),Te.call(this,Nt)),_.setVAO(null),Ct&&(r.cpuTime+=performance.now()-wt)},scope:function(Nt,at,Ke){var Ct,wt;Ct=l.profile,Ct&&(wt=performance.now(),r.count++),at(o,Nt,Ke),Ct&&(r.cpuTime+=performance.now()-wt)},batch:function(Nt,at){var Ke,Ct,wt,St,Dt,Zt,Et,Te,ot;if(Ke=k.angle_instanced_arrays,Ct=v.next,Ct!==v.cur&&(Ct?a.bindFramebuffer(36160,Ct.framebuffer):a.bindFramebuffer(36160,null),v.cur=Ct),l.dirty){var Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi;Tt=u.dither,Tt!==l.dither&&(Tt?a.enable(3024):a.disable(3024),l.dither=Tt),vt=u.blend_enable,vt!==l.blend_enable&&(vt?a.enable(3042):a.disable(3042),l.blend_enable=vt),Ye=L[0],He=L[1],it=L[2],et=L[3],(Ye!==x[0]||He!==x[1]||it!==x[2]||et!==x[3])&&(a.blendColor(Ye,He,it,et),x[0]=Ye,x[1]=He,x[2]=it,x[3]=et),It=C[0],Yt=C[1],(It!==M[0]||Yt!==M[1])&&(a.blendEquationSeparate(It,Yt),M[0]=It,M[1]=Yt),cr=m[0],_r=m[1],yr=m[2],Ut=m[3],(cr!==P[0]||_r!==P[1]||yr!==P[2]||Ut!==P[3])&&(a.blendFuncSeparate(cr,_r,yr,Ut),P[0]=cr,P[1]=_r,P[2]=yr,P[3]=Ut),Re=u.depth_enable,Re!==l.depth_enable&&(Re?a.enable(2929):a.disable(2929),l.depth_enable=Re),xe=u.depth_func,xe!==l.depth_func&&(a.depthFunc(xe),l.depth_func=xe),Oe=T[0],Ie=T[1],(Oe!==B[0]||Ie!==B[1])&&(a.depthRange(Oe,Ie),B[0]=Oe,B[1]=Ie),Fe=u.depth_mask,Fe!==l.depth_mask&&(a.depthMask(Fe),l.depth_mask=Fe),ft=F[0],ge=F[1],fe=F[2],pe=F[3],(ft!==U[0]||ge!==U[1]||fe!==U[2]||pe!==U[3])&&(a.colorMask(ft,ge,fe,pe),U[0]=ft,U[1]=ge,U[2]=fe,U[3]=pe),dt=u.cull_enable,dt!==l.cull_enable&&(dt?a.enable(2884):a.disable(2884),l.cull_enable=dt),Pt=u.cull_face,Pt!==l.cull_face&&(a.cullFace(Pt),l.cull_face=Pt),zt=u.frontFace,zt!==l.frontFace&&(a.frontFace(zt),l.frontFace=zt),rr=u.lineWidth,rr!==l.lineWidth&&(a.lineWidth(rr),l.lineWidth=rr),Gr=u.polygonOffset_enable,Gr!==l.polygonOffset_enable&&(Gr?a.enable(32823):a.disable(32823),l.polygonOffset_enable=Gr),Br=G[0],Er=G[1],(Br!==j[0]||Er!==j[1])&&(a.polygonOffset(Br,Er),j[0]=Br,j[1]=Er),Rr=u.sample_alpha,Rr!==l.sample_alpha&&(Rr?a.enable(32926):a.disable(32926),l.sample_alpha=Rr),pi=u.sample_enable,pi!==l.sample_enable&&(pi?a.enable(32928):a.disable(32928),l.sample_enable=pi),Di=H[0],ni=H[1],(Di!==N[0]||ni!==N[1])&&(a.sampleCoverage(Di,ni),N[0]=Di,N[1]=ni),$i=u.stencil_enable,$i!==l.stencil_enable&&($i?a.enable(2960):a.disable(2960),l.stencil_enable=$i),Qi=u.stencil_mask,Qi!==l.stencil_mask&&(a.stencilMask(Qi),l.stencil_mask=Qi),si=W[0],Ai=W[1],Ni=W[2],(si!==re[0]||Ai!==re[1]||Ni!==re[2])&&(a.stencilFunc(si,Ai,Ni),re[0]=si,re[1]=Ai,re[2]=Ni),Rt=ae[0],yt=ae[1],Gt=ae[2],Wt=ae[3],(Rt!==be[0]||yt!==be[1]||Gt!==be[2]||Wt!==be[3])&&(a.stencilOpSeparate(Rt,yt,Gt,Wt),be[0]=Rt,be[1]=yt,be[2]=Gt,be[3]=Wt),xr=ze[0],Lr=ze[1],Nr=ze[2],Or=ze[3],(xr!==Ce[0]||Lr!==Ce[1]||Nr!==Ce[2]||Or!==Ce[3])&&(a.stencilOpSeparate(xr,Lr,Nr,Or),Ce[0]=xr,Ce[1]=Lr,Ce[2]=Nr,Ce[3]=Or),Hr=u.scissor_enable,Hr!==l.scissor_enable&&(Hr?a.enable(3089):a.disable(3089),l.scissor_enable=Hr),jr=de[0],gi=de[1],ki=de[2],Vi=de[3],(jr!==te[0]||gi!==te[1]||ki!==te[2]||Vi!==te[3])&&(a.scissor(jr,gi,ki,Vi),te[0]=jr,te[1]=gi,te[2]=ki,te[3]=Vi),ti=ke[0],tn=ke[1],Yr=ke[2],oi=ke[3],(ti!==Ee[0]||tn!==Ee[1]||Yr!==Ee[2]||oi!==Ee[3])&&(a.viewport(ti,tn,Yr,oi),Ee[0]=ti,Ee[1]=tn,Ee[2]=Yr,Ee[3]=oi),l.dirty=!1}wt=l.profile,wt&&(St=performance.now(),r.count+=at),Dt=d.frag,Zt=d.vert,Et=d.program(Zt,Dt),a.useProgram(Et.program),_.setVAO(null),Te=Et.id,ot=gt[Te],ot?ot.call(this,Nt,at):(ot=gt[Te]=i(Et),ot.call(this,Nt,at)),_.setVAO(null),wt&&(r.cpuTime+=performance.now()-St)}}}});var C8=Ae((Vxr,YNe)=>{YNe.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it){"use strict";var et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn;return et=t.gl,It=t.context,Yt=t.strings,cr=t.next,_r=t.current,yr=t.draw,Ut=t.elements,Re=t.buffer,xe=t.shader,Oe=t.attributes,Ie=t.vao,Fe=t.uniforms,ft=t.framebuffer,ge=t.extensions,fe=t.timer,pe=t.isBufferArgs,dt=cr.blend_color,Pt=_r.blend_color,zt=cr.blend_equation,rr=_r.blend_equation,Gr=cr.blend_func,Br=_r.blend_func,Er=cr.depth_range,Rr=_r.depth_range,pi=cr.colorMask,Di=_r.colorMask,ni=cr.polygonOffset_offset,$i=_r.polygonOffset_offset,Qi=cr.sample_coverage,si=_r.sample_coverage,Ai=cr.stencil_func,Ni=_r.stencil_func,Rt=cr.stencil_opFront,yt=_r.stencil_opFront,Gt=cr.stencil_opBack,Wt=_r.stencil_opBack,xr=cr.scissor_box,Lr=_r.scissor_box,Nr=cr.viewport,Or=_r.viewport,Hr={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},jr={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},gi={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},ki={add:32774,subtract:32778,"reverse subtract":32779},Vi={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ti={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},tn={cw:2304,ccw:2305},Yr={},Yr.stride=8,Yr.offset=8,Yr.divisor=1,oi={},oi.stride=8,oi.offset=16,oi.divisor=1,Fi={},Fi.stride=8,Fi.offset=8,Fi.divisor=1,an={},an.stride=8,an.offset=16,an.divisor=1,nn={},nn.stride=4,nn.offset=0,nn.divisor=1,{draw:function(Ri){var Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta;if(Ii=ge.angle_instanced_arrays,xn=ft.next,xn!==ft.cur&&(xn?et.bindFramebuffer(36160,xn.framebuffer):et.bindFramebuffer(36160,null),ft.cur=xn),_r.dirty){var os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i;os=cr.dither,os!==_r.dither&&(os?et.enable(3024):et.disable(3024),_r.dither=os),_l=cr.depth_func,_l!==_r.depth_func&&(et.depthFunc(_l),_r.depth_func=_l),Ss=Er[0],po=Er[1],(Ss!==Rr[0]||po!==Rr[1])&&(et.depthRange(Ss,po),Rr[0]=Ss,Rr[1]=po),go=cr.depth_mask,go!==_r.depth_mask&&(et.depthMask(go),_r.depth_mask=go),ss=pi[0],qo=pi[1],zo=pi[2],io=pi[3],(ss!==Di[0]||qo!==Di[1]||zo!==Di[2]||io!==Di[3])&&(et.colorMask(ss,qo,zo,io),Di[0]=ss,Di[1]=qo,Di[2]=zo,Di[3]=io),Io=cr.cull_enable,Io!==_r.cull_enable&&(Io?et.enable(2884):et.disable(2884),_r.cull_enable=Io),Da=cr.cull_face,Da!==_r.cull_face&&(et.cullFace(Da),_r.cull_face=Da),vs=cr.frontFace,vs!==_r.frontFace&&(et.frontFace(vs),_r.frontFace=vs),fs=cr.lineWidth,fs!==_r.lineWidth&&(et.lineWidth(fs),_r.lineWidth=fs),cl=cr.polygonOffset_enable,cl!==_r.polygonOffset_enable&&(cl?et.enable(32823):et.disable(32823),_r.polygonOffset_enable=cl),el=ni[0],Hs=ni[1],(el!==$i[0]||Hs!==$i[1])&&(et.polygonOffset(el,Hs),$i[0]=el,$i[1]=Hs),Ro=cr.sample_alpha,Ro!==_r.sample_alpha&&(Ro?et.enable(32926):et.disable(32926),_r.sample_alpha=Ro),tl=cr.sample_enable,tl!==_r.sample_enable&&(tl?et.enable(32928):et.disable(32928),_r.sample_enable=tl),Fs=Qi[0],hl=Qi[1],(Fs!==si[0]||hl!==si[1])&&(et.sampleCoverage(Fs,hl),si[0]=Fs,si[1]=hl),Fa=cr.stencil_mask,Fa!==_r.stencil_mask&&(et.stencilMask(Fa),_r.stencil_mask=Fa),Ms=Ai[0],jo=Ai[1],Rs=Ai[2],(Ms!==Ni[0]||jo!==Ni[1]||Rs!==Ni[2])&&(et.stencilFunc(Ms,jo,Rs),Ni[0]=Ms,Ni[1]=jo,Ni[2]=Rs),Is=Rt[0],Bs=Rt[1],At=Rt[2],Vt=Rt[3],(Is!==yt[0]||Bs!==yt[1]||At!==yt[2]||Vt!==yt[3])&&(et.stencilOpSeparate(Is,Bs,At,Vt),yt[0]=Is,yt[1]=Bs,yt[2]=At,yt[3]=Vt),wr=Gt[0],mr=Gt[1],Fr=Gt[2],_i=Gt[3],(wr!==Wt[0]||mr!==Wt[1]||Fr!==Wt[2]||_i!==Wt[3])&&(et.stencilOpSeparate(wr,mr,Fr,_i),Wt[0]=wr,Wt[1]=mr,Wt[2]=Fr,Wt[3]=_i)}bi=Ri.viewport,Xr=bi.x|0,ct=bi.y|0,tr="width"in bi?bi.width|0:It.framebufferWidth-Xr,pr="height"in bi?bi.height|0:It.framebufferHeight-ct,gr=It.viewportWidth,It.viewportWidth=tr,Zr=It.viewportHeight,It.viewportHeight=pr,et.viewport(Xr,ct,tr,pr),Or[0]=Xr,Or[1]=ct,Or[2]=tr,Or[3]=pr,et.blendColor(0,0,0,0),Pt[0]=0,Pt[1]=0,Pt[2]=0,Pt[3]=0,n?et.enable(3042):et.disable(3042),_r.blend_enable=n,et.blendEquationSeparate(32774,32774),rr[0]=32774,rr[1]=32774,et.blendFuncSeparate(770,771,773,1),Br[0]=770,Br[1]=771,Br[2]=773,Br[3]=1,Ti=i.call(this,It,Ri,0),Ti?et.enable(2929):et.disable(2929),_r.depth_enable=Ti,en=Ri.viewport,ii=en.x|0,Xi=en.y|0,aa="width"in en?en.width|0:It.framebufferWidth-ii,Mn="height"in en?en.height|0:It.framebufferHeight-Xi,et.scissor(ii,Xi,aa,Mn),Lr[0]=ii,Lr[1]=Xi,Lr[2]=aa,Lr[3]=Mn,a?et.enable(3089):et.disable(3089),_r.scissor_enable=a,o?et.enable(2960):et.disable(2960),_r.stencil_enable=o,Un=_r.profile,Un&&(Ga=performance.now(),r.count++),et.useProgram(s.program),ma=ge.angle_instanced_arrays,Ie.setVAO(null),oa=Ri.positionBuffer,Yr.buffer=oa,ka=!1,so=1,Kr=0,Ia=0,Yo=0,fa=0,kn=null,Aa=0,ys=!1,uo=5126,ls=0,$a=0,fo=0,pe(Yr)?(ka=!0,kn=Re.createStream(34962,Yr),uo=kn.dtype):(kn=Re.getBuffer(Yr),kn?uo=kn.dtype:"constant"in Yr?(so=2,typeof Yr.constant=="number"?(Kr=Yr.constant,Ia=Yo=fa=0):(Kr=Yr.constant.length>0?Yr.constant[0]:0,Ia=Yr.constant.length>1?Yr.constant[1]:0,Yo=Yr.constant.length>2?Yr.constant[2]:0,fa=Yr.constant.length>3?Yr.constant[3]:0)):(pe(Yr.buffer)?kn=Re.createStream(34962,Yr.buffer):kn=Re.getBuffer(Yr.buffer),uo="type"in Yr?ti[Yr.type]:kn.dtype,ys=!!Yr.normalized,Aa=Yr.size|0,ls=Yr.offset|0,$a=Yr.stride|0,fo=Yr.divisor|0)),mn=u.location,ra=Oe[mn],so===1?(ra.buffer||et.enableVertexAttribArray(mn),wa=Aa||2,(ra.type!==uo||ra.size!==wa||ra.buffer!==kn||ra.normalized!==ys||ra.offset!==ls||ra.stride!==$a)&&(et.bindBuffer(34962,kn.buffer),et.vertexAttribPointer(mn,wa,uo,ys,$a,ls),ra.type=uo,ra.size=wa,ra.buffer=kn,ra.normalized=ys,ra.offset=ls,ra.stride=$a),ra.divisor!==fo&&(ma.vertexAttribDivisorANGLE(mn,fo),ra.divisor=fo)):(ra.buffer&&(et.disableVertexAttribArray(mn),ra.buffer=null),(ra.x!==Kr||ra.y!==Ia||ra.z!==Yo||ra.w!==fa)&&(et.vertexAttrib4f(mn,Kr,Ia,Yo,fa),ra.x=Kr,ra.y=Ia,ra.z=Yo,ra.w=fa)),ws=Ri.positionFractBuffer,Fi.buffer=ws,Co=!1,Po=1,Wi=0,gn=0,Ps=0,Ha=0,Sn=null,ao=0,Ba=!1,Ko=5126,Qo=0,Hi=0,Sa=0,pe(Fi)?(Co=!0,Sn=Re.createStream(34962,Fi),Ko=Sn.dtype):(Sn=Re.getBuffer(Fi),Sn?Ko=Sn.dtype:"constant"in Fi?(Po=2,typeof Fi.constant=="number"?(Wi=Fi.constant,gn=Ps=Ha=0):(Wi=Fi.constant.length>0?Fi.constant[0]:0,gn=Fi.constant.length>1?Fi.constant[1]:0,Ps=Fi.constant.length>2?Fi.constant[2]:0,Ha=Fi.constant.length>3?Fi.constant[3]:0)):(pe(Fi.buffer)?Sn=Re.createStream(34962,Fi.buffer):Sn=Re.getBuffer(Fi.buffer),Ko="type"in Fi?ti[Fi.type]:Sn.dtype,Ba=!!Fi.normalized,ao=Fi.size|0,Qo=Fi.offset|0,Hi=Fi.stride|0,Sa=Fi.divisor|0)),Qa=l.location,vn=Oe[Qa],Po===1?(vn.buffer||et.enableVertexAttribArray(Qa),da=ao||2,(vn.type!==Ko||vn.size!==da||vn.buffer!==Sn||vn.normalized!==Ba||vn.offset!==Qo||vn.stride!==Hi)&&(et.bindBuffer(34962,Sn.buffer),et.vertexAttribPointer(Qa,da,Ko,Ba,Hi,Qo),vn.type=Ko,vn.size=da,vn.buffer=Sn,vn.normalized=Ba,vn.offset=Qo,vn.stride=Hi),vn.divisor!==Sa&&(ma.vertexAttribDivisorANGLE(Qa,Sa),vn.divisor=Sa)):(vn.buffer&&(et.disableVertexAttribArray(Qa),vn.buffer=null),(vn.x!==Wi||vn.y!==gn||vn.z!==Ps||vn.w!==Ha)&&(et.vertexAttrib4f(Qa,Wi,gn,Ps,Ha),vn.x=Wi,vn.y=gn,vn.z=Ps,vn.w=Ha)),la=Ri.positionBuffer,oi.buffer=la,vo=!1,Ts=1,ps=0,co=0,mo=0,No=0,jn=null,Go=0,Ys=!1,qs=5126,Ns=0,Oa=0,ha=0,pe(oi)?(vo=!0,jn=Re.createStream(34962,oi),qs=jn.dtype):(jn=Re.getBuffer(oi),jn?qs=jn.dtype:"constant"in oi?(Ts=2,typeof oi.constant=="number"?(ps=oi.constant,co=mo=No=0):(ps=oi.constant.length>0?oi.constant[0]:0,co=oi.constant.length>1?oi.constant[1]:0,mo=oi.constant.length>2?oi.constant[2]:0,No=oi.constant.length>3?oi.constant[3]:0)):(pe(oi.buffer)?jn=Re.createStream(34962,oi.buffer):jn=Re.getBuffer(oi.buffer),qs="type"in oi?ti[oi.type]:jn.dtype,Ys=!!oi.normalized,Go=oi.size|0,Ns=oi.offset|0,Oa=oi.stride|0,ha=oi.divisor|0)),Vs=f.location,Ya=Oe[Vs],Ts===1?(Ya.buffer||et.enableVertexAttribArray(Vs),_n=Go||2,(Ya.type!==qs||Ya.size!==_n||Ya.buffer!==jn||Ya.normalized!==Ys||Ya.offset!==Ns||Ya.stride!==Oa)&&(et.bindBuffer(34962,jn.buffer),et.vertexAttribPointer(Vs,_n,qs,Ys,Oa,Ns),Ya.type=qs,Ya.size=_n,Ya.buffer=jn,Ya.normalized=Ys,Ya.offset=Ns,Ya.stride=Oa),Ya.divisor!==ha&&(ma.vertexAttribDivisorANGLE(Vs,ha),Ya.divisor=ha)):(Ya.buffer&&(et.disableVertexAttribArray(Vs),Ya.buffer=null),(Ya.x!==ps||Ya.y!==co||Ya.z!==mo||Ya.w!==No)&&(et.vertexAttrib4f(Vs,ps,co,mo,No),Ya.x=ps,Ya.y=co,Ya.z=mo,Ya.w=No)),Vn=Ri.positionFractBuffer,an.buffer=Vn,wo=!1,Ra=1,Xn=0,un=0,$n=0,Ka=0,qn=null,Eo=0,Ja=!1,lo=5126,eo=0,sa=0,es=0,pe(an)?(wo=!0,qn=Re.createStream(34962,an),lo=qn.dtype):(qn=Re.getBuffer(an),qn?lo=qn.dtype:"constant"in an?(Ra=2,typeof an.constant=="number"?(Xn=an.constant,un=$n=Ka=0):(Xn=an.constant.length>0?an.constant[0]:0,un=an.constant.length>1?an.constant[1]:0,$n=an.constant.length>2?an.constant[2]:0,Ka=an.constant.length>3?an.constant[3]:0)):(pe(an.buffer)?qn=Re.createStream(34962,an.buffer):qn=Re.getBuffer(an.buffer),lo="type"in an?ti[an.type]:qn.dtype,Ja=!!an.normalized,Eo=an.size|0,eo=an.offset|0,sa=an.stride|0,es=an.divisor|0)),Na=c.location,rn=Oe[Na],Ra===1?(rn.buffer||et.enableVertexAttribArray(Na),Pa=Eo||2,(rn.type!==lo||rn.size!==Pa||rn.buffer!==qn||rn.normalized!==Ja||rn.offset!==eo||rn.stride!==sa)&&(et.bindBuffer(34962,qn.buffer),et.vertexAttribPointer(Na,Pa,lo,Ja,sa,eo),rn.type=lo,rn.size=Pa,rn.buffer=qn,rn.normalized=Ja,rn.offset=eo,rn.stride=sa),rn.divisor!==es&&(ma.vertexAttribDivisorANGLE(Na,es),rn.divisor=es)):(rn.buffer&&(et.disableVertexAttribArray(Na),rn.buffer=null),(rn.x!==Xn||rn.y!==un||rn.z!==$n||rn.w!==Ka)&&(et.vertexAttrib4f(Na,Xn,un,$n,Ka),rn.x=Xn,rn.y=un,rn.z=$n,rn.w=Ka)),to=Ri.colorBuffer,nn.buffer=to,yo=!1,Jo=1,To=0,Dn=0,_a=0,Ws=0,Ca=null,Es=0,As=!1,Ho=5126,Wa=0,Ao=0,ts=0,pe(nn)?(yo=!0,Ca=Re.createStream(34962,nn),Ho=Ca.dtype):(Ca=Re.getBuffer(nn),Ca?Ho=Ca.dtype:"constant"in nn?(Jo=2,typeof nn.constant=="number"?(To=nn.constant,Dn=_a=Ws=0):(To=nn.constant.length>0?nn.constant[0]:0,Dn=nn.constant.length>1?nn.constant[1]:0,_a=nn.constant.length>2?nn.constant[2]:0,Ws=nn.constant.length>3?nn.constant[3]:0)):(pe(nn.buffer)?Ca=Re.createStream(34962,nn.buffer):Ca=Re.getBuffer(nn.buffer),Ho="type"in nn?ti[nn.type]:Ca.dtype,As=!!nn.normalized,Es=nn.size|0,Wa=nn.offset|0,Ao=nn.stride|0,ts=nn.divisor|0)),Wo=h.location,qa=Oe[Wo],Jo===1?(qa.buffer||et.enableVertexAttribArray(Wo),ln=Es||4,(qa.type!==Ho||qa.size!==ln||qa.buffer!==Ca||qa.normalized!==As||qa.offset!==Wa||qa.stride!==Ao)&&(et.bindBuffer(34962,Ca.buffer),et.vertexAttribPointer(Wo,ln,Ho,As,Ao,Wa),qa.type=Ho,qa.size=ln,qa.buffer=Ca,qa.normalized=As,qa.offset=Wa,qa.stride=Ao),qa.divisor!==ts&&(ma.vertexAttribDivisorANGLE(Wo,ts),qa.divisor=ts)):(qa.buffer&&(et.disableVertexAttribArray(Wo),qa.buffer=null),(qa.x!==To||qa.y!==Dn||qa.z!==_a||qa.w!==Ws)&&(et.vertexAttrib4f(Wo,To,Dn,_a,Ws),qa.x=To,qa.y=Dn,qa.z=_a,qa.w=Ws)),Bo=p.location,ko=Oe[Bo],ko.buffer||et.enableVertexAttribArray(Bo),(ko.type!==5126||ko.size!==1||ko.buffer!==d||ko.normalized!==!1||ko.offset!==0||ko.stride!==8)&&(et.bindBuffer(34962,d.buffer),et.vertexAttribPointer(Bo,1,5126,!1,8,0),ko.type=5126,ko.size=1,ko.buffer=d,ko.normalized=!1,ko.offset=0,ko.stride=8),ko.divisor!==0&&(ma.vertexAttribDivisorANGLE(Bo,0),ko.divisor=0),oo=_.location,za=Oe[oo],za.buffer||et.enableVertexAttribArray(oo),(za.type!==5126||za.size!==1||za.buffer!==d||za.normalized!==!1||za.offset!==4||za.stride!==8)&&(et.bindBuffer(34962,d.buffer),et.vertexAttribPointer(oo,1,5126,!1,8,4),za.type=5126,za.size=1,za.buffer=d,za.normalized=!1,za.offset=4,za.stride=8),za.divisor!==0&&(ma.vertexAttribDivisorANGLE(oo,0),za.divisor=0),ea=Ri.dashLength,et.uniform1f(b.location,ea),rs=Ri.dashTexture,rs&&rs._reglType==="framebuffer"&&(rs=rs.color[0]),$s=rs._texture,et.uniform1i(v.location,$s.bind()),us=Ri.depth,et.uniform1f(k.location,us),Ds=Ri.opacity,et.uniform1f(E.location,Ds),fl=Ri.scale,as=fl[0],Ma=fl[1],et.uniform2f(A.location,as,Ma),Qs=Ri.scaleFract,ho=Qs[0],gs=Qs[1],et.uniform2f(L.location,ho,gs),Vo=Ri.thickness,et.uniform1f(x.location,Vo),Do=Ri.translate,Lo=Do[0],xs=Do[1],et.uniform2f(C.location,Lo,xs),ks=Ri.translateFract,Ea=ks[0],Jn=ks[1],et.uniform2f(M.location,Ea,Jn),Oo=P.call(this,It,Ri,0),rl=Oo[0],Gs=Oo[1],bs=Oo[2],zs=Oo[3],et.uniform4f(m.location,rl,Gs,bs,zs),$o=yr.elements,$o?et.bindBuffer(34963,$o.buffer.buffer):Ie.currentVAO&&($o=Ut.getElements(Ie.currentVAO.elements),$o&&et.bindBuffer(34963,$o.buffer.buffer)),Ta=Ri.count,Ta>0?$o?ma.drawElementsInstancedANGLE(5,4,$o.type,0<<($o.type-5121>>1),Ta):ma.drawArraysInstancedANGLE(5,0,4,Ta):Ta<0&&($o?et.drawElements(5,4,$o.type,0<<($o.type-5121>>1)):et.drawArrays(5,0,4)),_r.dirty=!0,Ie.setVAO(null),It.viewportWidth=gr,It.viewportHeight=Zr,Un&&(r.cpuTime+=performance.now()-Ga),ka&&Re.destroyStream(kn),Co&&Re.destroyStream(Sn),vo&&Re.destroyStream(jn),wo&&Re.destroyStream(qn),yo&&Re.destroyStream(Ca),$s.unbind()},scope:function(Ri,Ii,xn){var bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl,ll,il,zl,Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt,pt,Ht;bi=Ri.viewport,Xr=bi.x|0,ct=bi.y|0,tr="width"in bi?bi.width|0:It.framebufferWidth-Xr,pr="height"in bi?bi.height|0:It.framebufferHeight-ct,gr=It.viewportWidth,It.viewportWidth=tr,Zr=It.viewportHeight,It.viewportHeight=pr,Ti=Nr[0],Nr[0]=Xr,en=Nr[1],Nr[1]=ct,ii=Nr[2],Nr[2]=tr,Xi=Nr[3],Nr[3]=pr,aa=dt[0],dt[0]=T,Mn=dt[1],dt[1]=B,Un=dt[2],dt[2]=F,Ga=dt[3],dt[3]=U,ma=cr.blend_enable,cr.blend_enable=G,oa=zt[0],zt[0]=j,ka=zt[1],zt[1]=H,so=Gr[0],Gr[0]=N,Kr=Gr[1],Gr[1]=W,Ia=Gr[2],Gr[2]=re,Yo=Gr[3],Gr[3]=ae,fa=i.call(this,It,Ri,xn),kn=cr.depth_enable,cr.depth_enable=fa,Aa=Ri.viewport,ys=Aa.x|0,uo=Aa.y|0,ls="width"in Aa?Aa.width|0:It.framebufferWidth-ys,$a="height"in Aa?Aa.height|0:It.framebufferHeight-uo,fo=xr[0],xr[0]=ys,mn=xr[1],xr[1]=uo,ra=xr[2],xr[2]=ls,wa=xr[3],xr[3]=$a,ws=cr.scissor_enable,cr.scissor_enable=be,Co=cr.stencil_enable,cr.stencil_enable=ze,Po=_r.profile,Po&&(Wi=performance.now(),r.count++),gn=yr.offset,yr.offset=Ce,Ps=yr.count,yr.count=de,Ha=Ri.count,Sn=yr.instances,yr.instances=Ha,ao=yr.primitive,yr.primitive=te,Ba=ke.call(this,It,Ri,xn),Ko=Fe[Ee],Fe[Ee]=Ba,Qo=Ri.miterLimit,Hi=Fe[Me],Fe[Me]=Qo,Sa=Ri.scale,Qa=Fe[Ue],Fe[Ue]=Sa,vn=Ri.scaleFract,da=Fe[De],Fe[De]=vn,la=Ri.translateFract,vo=Fe[ye],Fe[ye]=la,Ts=Ri.translate,ps=Fe[qe],Fe[qe]=Ts,co=Ri.thickness,mo=Fe[ce],Fe[ce]=co,No=Ri.dashTexture,jn=Fe[Je],Fe[Je]=No,Go=Ri.opacity,Ys=Fe[nt],Fe[nt]=Go,qs=It.pixelRatio,Ns=Fe[gt],Fe[gt]=qs,Oa=Ri.id,ha=Fe[Nt],Fe[Nt]=Oa,Vs=Ri.dashLength,Ya=Fe[at],Fe[at]=Vs,_n=P.call(this,It,Ri,xn),Vn=Fe[Ke],Fe[Ke]=_n,wo=Ri.depth,Ra=Fe[Ct],Fe[Ct]=wo,Xn=wt.state,wt.state=1,un=wt.x,wt.x=0,$n=wt.y,wt.y=0,Ka=wt.z,wt.z=0,qn=wt.w,wt.w=0,Eo=wt.buffer,wt.buffer=d,Ja=wt.size,wt.size=0,lo=wt.normalized,wt.normalized=!1,eo=wt.type,wt.type=5126,sa=wt.offset,wt.offset=0,es=wt.stride,wt.stride=8,Na=wt.divisor,wt.divisor=0,rn=St.state,St.state=1,Pa=St.x,St.x=0,to=St.y,St.y=0,yo=St.z,St.z=0,Jo=St.w,St.w=0,To=St.buffer,St.buffer=d,Dn=St.size,St.size=0,_a=St.normalized,St.normalized=!1,Ws=St.type,St.type=5126,Ca=St.offset,St.offset=4,Es=St.stride,St.stride=8,As=St.divisor,St.divisor=0,Ho=Ri.positionBuffer,Yr.buffer=Ho,Wa=!1,Ao=1,ts=0,Wo=0,qa=0,ln=0,Bo=null,ko=0,oo=!1,za=5126,ea=0,rs=0,$s=0,pe(Yr)?(Wa=!0,Bo=Re.createStream(34962,Yr),za=Bo.dtype):(Bo=Re.getBuffer(Yr),Bo?za=Bo.dtype:"constant"in Yr?(Ao=2,typeof Yr.constant=="number"?(ts=Yr.constant,Wo=qa=ln=0):(ts=Yr.constant.length>0?Yr.constant[0]:0,Wo=Yr.constant.length>1?Yr.constant[1]:0,qa=Yr.constant.length>2?Yr.constant[2]:0,ln=Yr.constant.length>3?Yr.constant[3]:0)):(pe(Yr.buffer)?Bo=Re.createStream(34962,Yr.buffer):Bo=Re.getBuffer(Yr.buffer),za="type"in Yr?ti[Yr.type]:Bo.dtype,oo=!!Yr.normalized,ko=Yr.size|0,ea=Yr.offset|0,rs=Yr.stride|0,$s=Yr.divisor|0)),us=Dt.state,Dt.state=Ao,Ds=Dt.x,Dt.x=ts,fl=Dt.y,Dt.y=Wo,as=Dt.z,Dt.z=qa,Ma=Dt.w,Dt.w=ln,Qs=Dt.buffer,Dt.buffer=Bo,ho=Dt.size,Dt.size=ko,gs=Dt.normalized,Dt.normalized=oo,Vo=Dt.type,Dt.type=za,Do=Dt.offset,Dt.offset=ea,Lo=Dt.stride,Dt.stride=rs,xs=Dt.divisor,Dt.divisor=$s,ks=Ri.positionBuffer,oi.buffer=ks,Ea=!1,Jn=1,Oo=0,rl=0,Gs=0,bs=0,zs=null,$o=0,Ta=!1,os=5126,_l=0,Ss=0,po=0,pe(oi)?(Ea=!0,zs=Re.createStream(34962,oi),os=zs.dtype):(zs=Re.getBuffer(oi),zs?os=zs.dtype:"constant"in oi?(Jn=2,typeof oi.constant=="number"?(Oo=oi.constant,rl=Gs=bs=0):(Oo=oi.constant.length>0?oi.constant[0]:0,rl=oi.constant.length>1?oi.constant[1]:0,Gs=oi.constant.length>2?oi.constant[2]:0,bs=oi.constant.length>3?oi.constant[3]:0)):(pe(oi.buffer)?zs=Re.createStream(34962,oi.buffer):zs=Re.getBuffer(oi.buffer),os="type"in oi?ti[oi.type]:zs.dtype,Ta=!!oi.normalized,$o=oi.size|0,_l=oi.offset|0,Ss=oi.stride|0,po=oi.divisor|0)),go=Zt.state,Zt.state=Jn,ss=Zt.x,Zt.x=Oo,qo=Zt.y,Zt.y=rl,zo=Zt.z,Zt.z=Gs,io=Zt.w,Zt.w=bs,Io=Zt.buffer,Zt.buffer=zs,Da=Zt.size,Zt.size=$o,vs=Zt.normalized,Zt.normalized=Ta,fs=Zt.type,Zt.type=os,cl=Zt.offset,Zt.offset=_l,el=Zt.stride,Zt.stride=Ss,Hs=Zt.divisor,Zt.divisor=po,Ro=Ri.positionFractBuffer,Fi.buffer=Ro,tl=!1,Fs=1,hl=0,Fa=0,Ms=0,jo=0,Rs=null,Is=0,Bs=!1,At=5126,Vt=0,wr=0,mr=0,pe(Fi)?(tl=!0,Rs=Re.createStream(34962,Fi),At=Rs.dtype):(Rs=Re.getBuffer(Fi),Rs?At=Rs.dtype:"constant"in Fi?(Fs=2,typeof Fi.constant=="number"?(hl=Fi.constant,Fa=Ms=jo=0):(hl=Fi.constant.length>0?Fi.constant[0]:0,Fa=Fi.constant.length>1?Fi.constant[1]:0,Ms=Fi.constant.length>2?Fi.constant[2]:0,jo=Fi.constant.length>3?Fi.constant[3]:0)):(pe(Fi.buffer)?Rs=Re.createStream(34962,Fi.buffer):Rs=Re.getBuffer(Fi.buffer),At="type"in Fi?ti[Fi.type]:Rs.dtype,Bs=!!Fi.normalized,Is=Fi.size|0,Vt=Fi.offset|0,wr=Fi.stride|0,mr=Fi.divisor|0)),Fr=Et.state,Et.state=Fs,_i=Et.x,Et.x=hl,Si=Et.y,Et.y=Fa,Ci=Et.z,Et.z=Ms,Ki=Et.w,Et.w=jo,Fn=Et.buffer,Et.buffer=Rs,Pi=Et.size,Et.size=Is,di=Et.normalized,Et.normalized=Bs,Li=Et.type,Et.type=At,Mi=Et.offset,Et.offset=Vt,Gn=Et.stride,Et.stride=wr,ta=Et.divisor,Et.divisor=mr,ya=Ri.positionFractBuffer,an.buffer=ya,ia=!1,pa=1,va=0,zn=0,is=0,Cs=0,Ks=null,dl=0,xl=!1,Bl=5126,bl=0,eu=0,Zl=0,pe(an)?(ia=!0,Ks=Re.createStream(34962,an),Bl=Ks.dtype):(Ks=Re.getBuffer(an),Ks?Bl=Ks.dtype:"constant"in an?(pa=2,typeof an.constant=="number"?(va=an.constant,zn=is=Cs=0):(va=an.constant.length>0?an.constant[0]:0,zn=an.constant.length>1?an.constant[1]:0,is=an.constant.length>2?an.constant[2]:0,Cs=an.constant.length>3?an.constant[3]:0)):(pe(an.buffer)?Ks=Re.createStream(34962,an.buffer):Ks=Re.getBuffer(an.buffer),Bl="type"in an?ti[an.type]:Ks.dtype,xl=!!an.normalized,dl=an.size|0,bl=an.offset|0,eu=an.stride|0,Zl=an.divisor|0)),Ul=Te.state,Te.state=pa,ja=Te.x,Te.x=va,ns=Te.y,Te.y=zn,Js=Te.z,Te.z=is,cs=Te.w,Te.w=Cs,sl=Te.buffer,Te.buffer=Ks,ll=Te.size,Te.size=dl,il=Te.normalized,Te.normalized=xl,zl=Te.type,Te.type=Bl,Ml=Te.offset,Te.offset=bl,Rl=Te.stride,Te.stride=eu,Tl=Te.divisor,Te.divisor=Zl,Ll=Ri.colorBuffer,nn.buffer=Ll,ms=!1,Os=1,Xl=0,Vl=0,Nl=0,le=0,w=null,q=0,Q=!1,ee=5126,ue=0,Ve=0,tt=0,pe(nn)?(ms=!0,w=Re.createStream(34962,nn),ee=w.dtype):(w=Re.getBuffer(nn),w?ee=w.dtype:"constant"in nn?(Os=2,typeof nn.constant=="number"?(Xl=nn.constant,Vl=Nl=le=0):(Xl=nn.constant.length>0?nn.constant[0]:0,Vl=nn.constant.length>1?nn.constant[1]:0,Nl=nn.constant.length>2?nn.constant[2]:0,le=nn.constant.length>3?nn.constant[3]:0)):(pe(nn.buffer)?w=Re.createStream(34962,nn.buffer):w=Re.getBuffer(nn.buffer),ee="type"in nn?ti[nn.type]:w.dtype,Q=!!nn.normalized,q=nn.size|0,ue=nn.offset|0,Ve=nn.stride|0,tt=nn.divisor|0)),mt=ot.state,ot.state=Os,Bt=ot.x,ot.x=Xl,ir=ot.y,ot.y=Vl,or=ot.z,ot.z=Nl,kr=ot.w,ot.w=le,Vr=ot.buffer,ot.buffer=w,he=ot.size,ot.size=q,Se=ot.normalized,ot.normalized=Q,Ne=ot.type,ot.type=ee,Ge=ot.offset,ot.offset=ue,lt=ot.stride,ot.stride=Ve,rt=ot.divisor,ot.divisor=tt,pt=xe.vert,xe.vert=Tt,Ht=xe.frag,xe.frag=vt,_r.dirty=!0,Ii(It,Ri,xn),It.viewportWidth=gr,It.viewportHeight=Zr,Nr[0]=Ti,Nr[1]=en,Nr[2]=ii,Nr[3]=Xi,dt[0]=aa,dt[1]=Mn,dt[2]=Un,dt[3]=Ga,cr.blend_enable=ma,zt[0]=oa,zt[1]=ka,Gr[0]=so,Gr[1]=Kr,Gr[2]=Ia,Gr[3]=Yo,cr.depth_enable=kn,xr[0]=fo,xr[1]=mn,xr[2]=ra,xr[3]=wa,cr.scissor_enable=ws,cr.stencil_enable=Co,Po&&(r.cpuTime+=performance.now()-Wi),yr.offset=gn,yr.count=Ps,yr.instances=Sn,yr.primitive=ao,Fe[Ee]=Ko,Fe[Me]=Hi,Fe[Ue]=Qa,Fe[De]=da,Fe[ye]=vo,Fe[qe]=ps,Fe[ce]=mo,Fe[Je]=jn,Fe[nt]=Ys,Fe[gt]=Ns,Fe[Nt]=ha,Fe[at]=Ya,Fe[Ke]=Vn,Fe[Ct]=Ra,wt.state=Xn,wt.x=un,wt.y=$n,wt.z=Ka,wt.w=qn,wt.buffer=Eo,wt.size=Ja,wt.normalized=lo,wt.type=eo,wt.offset=sa,wt.stride=es,wt.divisor=Na,St.state=rn,St.x=Pa,St.y=to,St.z=yo,St.w=Jo,St.buffer=To,St.size=Dn,St.normalized=_a,St.type=Ws,St.offset=Ca,St.stride=Es,St.divisor=As,Wa&&Re.destroyStream(Bo),Dt.state=us,Dt.x=Ds,Dt.y=fl,Dt.z=as,Dt.w=Ma,Dt.buffer=Qs,Dt.size=ho,Dt.normalized=gs,Dt.type=Vo,Dt.offset=Do,Dt.stride=Lo,Dt.divisor=xs,Ea&&Re.destroyStream(zs),Zt.state=go,Zt.x=ss,Zt.y=qo,Zt.z=zo,Zt.w=io,Zt.buffer=Io,Zt.size=Da,Zt.normalized=vs,Zt.type=fs,Zt.offset=cl,Zt.stride=el,Zt.divisor=Hs,tl&&Re.destroyStream(Rs),Et.state=Fr,Et.x=_i,Et.y=Si,Et.z=Ci,Et.w=Ki,Et.buffer=Fn,Et.size=Pi,Et.normalized=di,Et.type=Li,Et.offset=Mi,Et.stride=Gn,Et.divisor=ta,ia&&Re.destroyStream(Ks),Te.state=Ul,Te.x=ja,Te.y=ns,Te.z=Js,Te.w=cs,Te.buffer=sl,Te.size=ll,Te.normalized=il,Te.type=zl,Te.offset=Ml,Te.stride=Rl,Te.divisor=Tl,ms&&Re.destroyStream(w),ot.state=mt,ot.x=Bt,ot.y=ir,ot.z=or,ot.w=kr,ot.buffer=Vr,ot.size=he,ot.normalized=Se,ot.type=Ne,ot.offset=Ge,ot.stride=lt,ot.divisor=rt,xe.vert=pt,xe.frag=Ht,_r.dirty=!0},batch:function(Ri,Ii){var xn,bi,Xr,ct,tr,pr,gr;if(xn=ge.angle_instanced_arrays,bi=ft.next,bi!==ft.cur&&(bi?et.bindFramebuffer(36160,bi.framebuffer):et.bindFramebuffer(36160,null),ft.cur=bi),_r.dirty){var Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn;Zr=cr.dither,Zr!==_r.dither&&(Zr?et.enable(3024):et.disable(3024),_r.dither=Zr),Ti=cr.depth_func,Ti!==_r.depth_func&&(et.depthFunc(Ti),_r.depth_func=Ti),en=Er[0],ii=Er[1],(en!==Rr[0]||ii!==Rr[1])&&(et.depthRange(en,ii),Rr[0]=en,Rr[1]=ii),Xi=cr.depth_mask,Xi!==_r.depth_mask&&(et.depthMask(Xi),_r.depth_mask=Xi),aa=pi[0],Mn=pi[1],Un=pi[2],Ga=pi[3],(aa!==Di[0]||Mn!==Di[1]||Un!==Di[2]||Ga!==Di[3])&&(et.colorMask(aa,Mn,Un,Ga),Di[0]=aa,Di[1]=Mn,Di[2]=Un,Di[3]=Ga),ma=cr.cull_enable,ma!==_r.cull_enable&&(ma?et.enable(2884):et.disable(2884),_r.cull_enable=ma),oa=cr.cull_face,oa!==_r.cull_face&&(et.cullFace(oa),_r.cull_face=oa),ka=cr.frontFace,ka!==_r.frontFace&&(et.frontFace(ka),_r.frontFace=ka),so=cr.lineWidth,so!==_r.lineWidth&&(et.lineWidth(so),_r.lineWidth=so),Kr=cr.polygonOffset_enable,Kr!==_r.polygonOffset_enable&&(Kr?et.enable(32823):et.disable(32823),_r.polygonOffset_enable=Kr),Ia=ni[0],Yo=ni[1],(Ia!==$i[0]||Yo!==$i[1])&&(et.polygonOffset(Ia,Yo),$i[0]=Ia,$i[1]=Yo),fa=cr.sample_alpha,fa!==_r.sample_alpha&&(fa?et.enable(32926):et.disable(32926),_r.sample_alpha=fa),kn=cr.sample_enable,kn!==_r.sample_enable&&(kn?et.enable(32928):et.disable(32928),_r.sample_enable=kn),Aa=Qi[0],ys=Qi[1],(Aa!==si[0]||ys!==si[1])&&(et.sampleCoverage(Aa,ys),si[0]=Aa,si[1]=ys),uo=cr.stencil_mask,uo!==_r.stencil_mask&&(et.stencilMask(uo),_r.stencil_mask=uo),ls=Ai[0],$a=Ai[1],fo=Ai[2],(ls!==Ni[0]||$a!==Ni[1]||fo!==Ni[2])&&(et.stencilFunc(ls,$a,fo),Ni[0]=ls,Ni[1]=$a,Ni[2]=fo),mn=Rt[0],ra=Rt[1],wa=Rt[2],ws=Rt[3],(mn!==yt[0]||ra!==yt[1]||wa!==yt[2]||ws!==yt[3])&&(et.stencilOpSeparate(mn,ra,wa,ws),yt[0]=mn,yt[1]=ra,yt[2]=wa,yt[3]=ws),Co=Gt[0],Po=Gt[1],Wi=Gt[2],gn=Gt[3],(Co!==Wt[0]||Po!==Wt[1]||Wi!==Wt[2]||gn!==Wt[3])&&(et.stencilOpSeparate(Co,Po,Wi,gn),Wt[0]=Co,Wt[1]=Po,Wt[2]=Wi,Wt[3]=gn)}et.blendColor(0,0,0,0),Pt[0]=0,Pt[1]=0,Pt[2]=0,Pt[3]=0,Ye?et.enable(3042):et.disable(3042),_r.blend_enable=Ye,et.blendEquationSeparate(32774,32774),rr[0]=32774,rr[1]=32774,et.blendFuncSeparate(770,771,773,1),Br[0]=770,Br[1]=771,Br[2]=773,Br[3]=1,He?et.enable(3089):et.disable(3089),_r.scissor_enable=He,it?et.enable(2960):et.disable(2960),_r.stencil_enable=it,Xr=_r.profile,Xr&&(ct=performance.now(),r.count+=Ii),et.useProgram(s.program),tr=ge.angle_instanced_arrays;var Ps,Ha,Sn,ao,Ba;for(Ie.setVAO(null),Ps=p.location,Ha=Oe[Ps],Ha.buffer||et.enableVertexAttribArray(Ps),(Ha.type!==5126||Ha.size!==1||Ha.buffer!==d||Ha.normalized!==!1||Ha.offset!==0||Ha.stride!==8)&&(et.bindBuffer(34962,d.buffer),et.vertexAttribPointer(Ps,1,5126,!1,8,0),Ha.type=5126,Ha.size=1,Ha.buffer=d,Ha.normalized=!1,Ha.offset=0,Ha.stride=8),Ha.divisor!==0&&(tr.vertexAttribDivisorANGLE(Ps,0),Ha.divisor=0),Sn=_.location,ao=Oe[Sn],ao.buffer||et.enableVertexAttribArray(Sn),(ao.type!==5126||ao.size!==1||ao.buffer!==d||ao.normalized!==!1||ao.offset!==4||ao.stride!==8)&&(et.bindBuffer(34962,d.buffer),et.vertexAttribPointer(Sn,1,5126,!1,8,4),ao.type=5126,ao.size=1,ao.buffer=d,ao.normalized=!1,ao.offset=4,ao.stride=8),ao.divisor!==0&&(tr.vertexAttribDivisorANGLE(Sn,0),ao.divisor=0),Ba=yr.elements,Ba?et.bindBuffer(34963,Ba.buffer.buffer):Ie.currentVAO&&(Ba=Ut.getElements(Ie.currentVAO.elements),Ba&&et.bindBuffer(34963,Ba.buffer.buffer)),pr=0;pr0?Yr.constant[0]:0,qs=Yr.constant.length>1?Yr.constant[1]:0,Ns=Yr.constant.length>2?Yr.constant[2]:0,Oa=Yr.constant.length>3?Yr.constant[3]:0)):(pe(Yr.buffer)?ha=Re.createStream(34962,Yr.buffer):ha=Re.getBuffer(Yr.buffer),_n="type"in Yr?ti[Yr.type]:ha.dtype,Ya=!!Yr.normalized,Vs=Yr.size|0,Vn=Yr.offset|0,wo=Yr.stride|0,Ra=Yr.divisor|0)),Xn=u.location,un=Oe[Xn],Go===1?(un.buffer||et.enableVertexAttribArray(Xn),$n=Vs||2,(un.type!==_n||un.size!==$n||un.buffer!==ha||un.normalized!==Ya||un.offset!==Vn||un.stride!==wo)&&(et.bindBuffer(34962,ha.buffer),et.vertexAttribPointer(Xn,$n,_n,Ya,wo,Vn),un.type=_n,un.size=$n,un.buffer=ha,un.normalized=Ya,un.offset=Vn,un.stride=wo),un.divisor!==Ra&&(tr.vertexAttribDivisorANGLE(Xn,Ra),un.divisor=Ra)):(un.buffer&&(et.disableVertexAttribArray(Xn),un.buffer=null),(un.x!==Ys||un.y!==qs||un.z!==Ns||un.w!==Oa)&&(et.vertexAttrib4f(Xn,Ys,qs,Ns,Oa),un.x=Ys,un.y=qs,un.z=Ns,un.w=Oa)),Ka=gr.positionFractBuffer,Fi.buffer=Ka,qn=!1,Eo=1,Ja=0,lo=0,eo=0,sa=0,es=null,Na=0,rn=!1,Pa=5126,to=0,yo=0,Jo=0,pe(Fi)?(qn=!0,es=Re.createStream(34962,Fi),Pa=es.dtype):(es=Re.getBuffer(Fi),es?Pa=es.dtype:"constant"in Fi?(Eo=2,typeof Fi.constant=="number"?(Ja=Fi.constant,lo=eo=sa=0):(Ja=Fi.constant.length>0?Fi.constant[0]:0,lo=Fi.constant.length>1?Fi.constant[1]:0,eo=Fi.constant.length>2?Fi.constant[2]:0,sa=Fi.constant.length>3?Fi.constant[3]:0)):(pe(Fi.buffer)?es=Re.createStream(34962,Fi.buffer):es=Re.getBuffer(Fi.buffer),Pa="type"in Fi?ti[Fi.type]:es.dtype,rn=!!Fi.normalized,Na=Fi.size|0,to=Fi.offset|0,yo=Fi.stride|0,Jo=Fi.divisor|0)),To=l.location,Dn=Oe[To],Eo===1?(Dn.buffer||et.enableVertexAttribArray(To),_a=Na||2,(Dn.type!==Pa||Dn.size!==_a||Dn.buffer!==es||Dn.normalized!==rn||Dn.offset!==to||Dn.stride!==yo)&&(et.bindBuffer(34962,es.buffer),et.vertexAttribPointer(To,_a,Pa,rn,yo,to),Dn.type=Pa,Dn.size=_a,Dn.buffer=es,Dn.normalized=rn,Dn.offset=to,Dn.stride=yo),Dn.divisor!==Jo&&(tr.vertexAttribDivisorANGLE(To,Jo),Dn.divisor=Jo)):(Dn.buffer&&(et.disableVertexAttribArray(To),Dn.buffer=null),(Dn.x!==Ja||Dn.y!==lo||Dn.z!==eo||Dn.w!==sa)&&(et.vertexAttrib4f(To,Ja,lo,eo,sa),Dn.x=Ja,Dn.y=lo,Dn.z=eo,Dn.w=sa)),Ws=gr.positionBuffer,oi.buffer=Ws,Ca=!1,Es=1,As=0,Ho=0,Wa=0,Ao=0,ts=null,Wo=0,qa=!1,ln=5126,Bo=0,ko=0,oo=0,pe(oi)?(Ca=!0,ts=Re.createStream(34962,oi),ln=ts.dtype):(ts=Re.getBuffer(oi),ts?ln=ts.dtype:"constant"in oi?(Es=2,typeof oi.constant=="number"?(As=oi.constant,Ho=Wa=Ao=0):(As=oi.constant.length>0?oi.constant[0]:0,Ho=oi.constant.length>1?oi.constant[1]:0,Wa=oi.constant.length>2?oi.constant[2]:0,Ao=oi.constant.length>3?oi.constant[3]:0)):(pe(oi.buffer)?ts=Re.createStream(34962,oi.buffer):ts=Re.getBuffer(oi.buffer),ln="type"in oi?ti[oi.type]:ts.dtype,qa=!!oi.normalized,Wo=oi.size|0,Bo=oi.offset|0,ko=oi.stride|0,oo=oi.divisor|0)),za=f.location,ea=Oe[za],Es===1?(ea.buffer||et.enableVertexAttribArray(za),rs=Wo||2,(ea.type!==ln||ea.size!==rs||ea.buffer!==ts||ea.normalized!==qa||ea.offset!==Bo||ea.stride!==ko)&&(et.bindBuffer(34962,ts.buffer),et.vertexAttribPointer(za,rs,ln,qa,ko,Bo),ea.type=ln,ea.size=rs,ea.buffer=ts,ea.normalized=qa,ea.offset=Bo,ea.stride=ko),ea.divisor!==oo&&(tr.vertexAttribDivisorANGLE(za,oo),ea.divisor=oo)):(ea.buffer&&(et.disableVertexAttribArray(za),ea.buffer=null),(ea.x!==As||ea.y!==Ho||ea.z!==Wa||ea.w!==Ao)&&(et.vertexAttrib4f(za,As,Ho,Wa,Ao),ea.x=As,ea.y=Ho,ea.z=Wa,ea.w=Ao)),$s=gr.positionFractBuffer,an.buffer=$s,us=!1,Ds=1,fl=0,as=0,Ma=0,Qs=0,ho=null,gs=0,Vo=!1,Do=5126,Lo=0,xs=0,ks=0,pe(an)?(us=!0,ho=Re.createStream(34962,an),Do=ho.dtype):(ho=Re.getBuffer(an),ho?Do=ho.dtype:"constant"in an?(Ds=2,typeof an.constant=="number"?(fl=an.constant,as=Ma=Qs=0):(fl=an.constant.length>0?an.constant[0]:0,as=an.constant.length>1?an.constant[1]:0,Ma=an.constant.length>2?an.constant[2]:0,Qs=an.constant.length>3?an.constant[3]:0)):(pe(an.buffer)?ho=Re.createStream(34962,an.buffer):ho=Re.getBuffer(an.buffer),Do="type"in an?ti[an.type]:ho.dtype,Vo=!!an.normalized,gs=an.size|0,Lo=an.offset|0,xs=an.stride|0,ks=an.divisor|0)),Ea=c.location,Jn=Oe[Ea],Ds===1?(Jn.buffer||et.enableVertexAttribArray(Ea),Oo=gs||2,(Jn.type!==Do||Jn.size!==Oo||Jn.buffer!==ho||Jn.normalized!==Vo||Jn.offset!==Lo||Jn.stride!==xs)&&(et.bindBuffer(34962,ho.buffer),et.vertexAttribPointer(Ea,Oo,Do,Vo,xs,Lo),Jn.type=Do,Jn.size=Oo,Jn.buffer=ho,Jn.normalized=Vo,Jn.offset=Lo,Jn.stride=xs),Jn.divisor!==ks&&(tr.vertexAttribDivisorANGLE(Ea,ks),Jn.divisor=ks)):(Jn.buffer&&(et.disableVertexAttribArray(Ea),Jn.buffer=null),(Jn.x!==fl||Jn.y!==as||Jn.z!==Ma||Jn.w!==Qs)&&(et.vertexAttrib4f(Ea,fl,as,Ma,Qs),Jn.x=fl,Jn.y=as,Jn.z=Ma,Jn.w=Qs)),rl=gr.colorBuffer,nn.buffer=rl,Gs=!1,bs=1,zs=0,$o=0,Ta=0,os=0,_l=null,Ss=0,po=!1,go=5126,ss=0,qo=0,zo=0,pe(nn)?(Gs=!0,_l=Re.createStream(34962,nn),go=_l.dtype):(_l=Re.getBuffer(nn),_l?go=_l.dtype:"constant"in nn?(bs=2,typeof nn.constant=="number"?(zs=nn.constant,$o=Ta=os=0):(zs=nn.constant.length>0?nn.constant[0]:0,$o=nn.constant.length>1?nn.constant[1]:0,Ta=nn.constant.length>2?nn.constant[2]:0,os=nn.constant.length>3?nn.constant[3]:0)):(pe(nn.buffer)?_l=Re.createStream(34962,nn.buffer):_l=Re.getBuffer(nn.buffer),go="type"in nn?ti[nn.type]:_l.dtype,po=!!nn.normalized,Ss=nn.size|0,ss=nn.offset|0,qo=nn.stride|0,zo=nn.divisor|0)),io=h.location,Io=Oe[io],bs===1?(Io.buffer||et.enableVertexAttribArray(io),Da=Ss||4,(Io.type!==go||Io.size!==Da||Io.buffer!==_l||Io.normalized!==po||Io.offset!==ss||Io.stride!==qo)&&(et.bindBuffer(34962,_l.buffer),et.vertexAttribPointer(io,Da,go,po,qo,ss),Io.type=go,Io.size=Da,Io.buffer=_l,Io.normalized=po,Io.offset=ss,Io.stride=qo),Io.divisor!==zo&&(tr.vertexAttribDivisorANGLE(io,zo),Io.divisor=zo)):(Io.buffer&&(et.disableVertexAttribArray(io),Io.buffer=null),(Io.x!==zs||Io.y!==$o||Io.z!==Ta||Io.w!==os)&&(et.vertexAttrib4f(io,zs,$o,Ta,os),Io.x=zs,Io.y=$o,Io.z=Ta,Io.w=os)),vs=gr.dashLength,(!pr||fs!==vs)&&(fs=vs,et.uniform1f(b.location,vs)),cl=gr.dashTexture,cl&&cl._reglType==="framebuffer"&&(cl=cl.color[0]),el=cl._texture,et.uniform1i(v.location,el.bind()),Hs=gr.depth,(!pr||Ro!==Hs)&&(Ro=Hs,et.uniform1f(k.location,Hs)),tl=gr.opacity,(!pr||Fs!==tl)&&(Fs=tl,et.uniform1f(E.location,tl)),hl=gr.scale,Fa=hl[0],jo=hl[1],(!pr||Ms!==Fa||Rs!==jo)&&(Ms=Fa,Rs=jo,et.uniform2f(A.location,Fa,jo)),Is=gr.scaleFract,Bs=Is[0],Vt=Is[1],(!pr||At!==Bs||wr!==Vt)&&(At=Bs,wr=Vt,et.uniform2f(L.location,Bs,Vt)),mr=gr.thickness,(!pr||Fr!==mr)&&(Fr=mr,et.uniform1f(x.location,mr)),_i=gr.translate,Si=_i[0],Ki=_i[1],(!pr||Ci!==Si||Fn!==Ki)&&(Ci=Si,Fn=Ki,et.uniform2f(C.location,Si,Ki)),Pi=gr.translateFract,di=Pi[0],Mi=Pi[1],(!pr||Li!==di||Gn!==Mi)&&(Li=di,Gn=Mi,et.uniform2f(M.location,di,Mi)),ta=P.call(this,It,gr,pr),ya=ta[0],pa=ta[1],zn=ta[2],Cs=ta[3],(!pr||ia!==ya||va!==pa||is!==zn||Ks!==Cs)&&(ia=ya,va=pa,is=zn,Ks=Cs,et.uniform4f(m.location,ya,pa,zn,Cs)),dl=gr.count,dl>0?Ba?tr.drawElementsInstancedANGLE(5,4,Ba.type,0<<(Ba.type-5121>>1),dl):tr.drawArraysInstancedANGLE(5,0,4,dl):dl<0&&(Ba?et.drawElements(5,4,Ba.type,0<<(Ba.type-5121>>1)):et.drawArrays(5,0,4)),It.viewportWidth=vn,It.viewportHeight=da,jn&&Re.destroyStream(ha),qn&&Re.destroyStream(es),Ca&&Re.destroyStream(ts),us&&Re.destroyStream(ho),Gs&&Re.destroyStream(_l),el.unbind()}_r.dirty=!0,Ie.setVAO(null),Xr&&(r.cpuTime+=performance.now()-ct)}}}});var L8=Ae((Gxr,KNe)=>{KNe.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re){"use strict";var xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr;return xe=t.gl,Oe=t.context,Ie=t.strings,Fe=t.next,ft=t.current,ge=t.draw,fe=t.elements,pe=t.buffer,dt=t.shader,Pt=t.attributes,zt=t.vao,rr=t.uniforms,Gr=t.framebuffer,Br=t.extensions,Er=t.timer,Rr=t.isBufferArgs,pi=Fe.blend_color,Di=ft.blend_color,ni=Fe.blend_equation,$i=ft.blend_equation,Qi=Fe.blend_func,si=ft.blend_func,Ai=Fe.depth_range,Ni=ft.depth_range,Rt=Fe.colorMask,yt=ft.colorMask,Gt=Fe.polygonOffset_offset,Wt=ft.polygonOffset_offset,xr=Fe.sample_coverage,Lr=ft.sample_coverage,Nr=Fe.stencil_func,Or=ft.stencil_func,Hr=Fe.stencil_opFront,jr=ft.stencil_opFront,gi=Fe.stencil_opBack,ki=ft.stencil_opBack,Vi=Fe.scissor_box,ti=ft.scissor_box,tn=Fe.viewport,Yr=ft.viewport,oi={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Fi={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},an={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},nn={add:32774,subtract:32778,"reverse subtract":32779},Ri={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Ii={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},xn={cw:2304,ccw:2305},bi={},bi.stride=4,bi.offset=0,bi.divisor=1,Xr={},Xr.stride=4,Xr.offset=4,Xr.divisor=1,ct={},ct.stride=8,ct.offset=0,ct.divisor=1,tr={},tr.stride=8,tr.offset=8,tr.divisor=1,pr={},pr.stride=8,pr.offset=16,pr.divisor=1,gr={},gr.stride=8,gr.offset=24,gr.divisor=1,{draw:function(Zr){var Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms;if(Ti=Br.angle_instanced_arrays,en=Gr.next,en!==Gr.cur&&(en?xe.bindFramebuffer(36160,en.framebuffer):xe.bindFramebuffer(36160,null),Gr.cur=en),ft.dirty){var jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl;jo=Fe.dither,jo!==ft.dither&&(jo?xe.enable(3024):xe.disable(3024),ft.dither=jo),Rs=Fe.depth_func,Rs!==ft.depth_func&&(xe.depthFunc(Rs),ft.depth_func=Rs),Is=Ai[0],Bs=Ai[1],(Is!==Ni[0]||Bs!==Ni[1])&&(xe.depthRange(Is,Bs),Ni[0]=Is,Ni[1]=Bs),At=Fe.depth_mask,At!==ft.depth_mask&&(xe.depthMask(At),ft.depth_mask=At),Vt=Rt[0],wr=Rt[1],mr=Rt[2],Fr=Rt[3],(Vt!==yt[0]||wr!==yt[1]||mr!==yt[2]||Fr!==yt[3])&&(xe.colorMask(Vt,wr,mr,Fr),yt[0]=Vt,yt[1]=wr,yt[2]=mr,yt[3]=Fr),_i=Fe.frontFace,_i!==ft.frontFace&&(xe.frontFace(_i),ft.frontFace=_i),Si=Fe.lineWidth,Si!==ft.lineWidth&&(xe.lineWidth(Si),ft.lineWidth=Si),Ci=Fe.polygonOffset_enable,Ci!==ft.polygonOffset_enable&&(Ci?xe.enable(32823):xe.disable(32823),ft.polygonOffset_enable=Ci),Ki=Gt[0],Fn=Gt[1],(Ki!==Wt[0]||Fn!==Wt[1])&&(xe.polygonOffset(Ki,Fn),Wt[0]=Ki,Wt[1]=Fn),Pi=Fe.sample_alpha,Pi!==ft.sample_alpha&&(Pi?xe.enable(32926):xe.disable(32926),ft.sample_alpha=Pi),di=Fe.sample_enable,di!==ft.sample_enable&&(di?xe.enable(32928):xe.disable(32928),ft.sample_enable=di),Li=xr[0],Mi=xr[1],(Li!==Lr[0]||Mi!==Lr[1])&&(xe.sampleCoverage(Li,Mi),Lr[0]=Li,Lr[1]=Mi),Gn=Fe.stencil_mask,Gn!==ft.stencil_mask&&(xe.stencilMask(Gn),ft.stencil_mask=Gn),ta=Nr[0],ya=Nr[1],ia=Nr[2],(ta!==Or[0]||ya!==Or[1]||ia!==Or[2])&&(xe.stencilFunc(ta,ya,ia),Or[0]=ta,Or[1]=ya,Or[2]=ia),pa=Hr[0],va=Hr[1],zn=Hr[2],is=Hr[3],(pa!==jr[0]||va!==jr[1]||zn!==jr[2]||is!==jr[3])&&(xe.stencilOpSeparate(pa,va,zn,is),jr[0]=pa,jr[1]=va,jr[2]=zn,jr[3]=is),Cs=gi[0],Ks=gi[1],dl=gi[2],xl=gi[3],(Cs!==ki[0]||Ks!==ki[1]||dl!==ki[2]||xl!==ki[3])&&(xe.stencilOpSeparate(Cs,Ks,dl,xl),ki[0]=Cs,ki[1]=Ks,ki[2]=dl,ki[3]=xl)}ii=Zr.viewport,Xi=ii.x|0,aa=ii.y|0,Mn="width"in ii?ii.width|0:Oe.framebufferWidth-Xi,Un="height"in ii?ii.height|0:Oe.framebufferHeight-aa,Ga=Oe.viewportWidth,Oe.viewportWidth=Mn,ma=Oe.viewportHeight,Oe.viewportHeight=Un,xe.viewport(Xi,aa,Mn,Un),Yr[0]=Xi,Yr[1]=aa,Yr[2]=Mn,Yr[3]=Un,xe.blendColor(0,0,0,0),Di[0]=0,Di[1]=0,Di[2]=0,Di[3]=0,n?xe.enable(3042):xe.disable(3042),ft.blend_enable=n,xe.blendEquationSeparate(32774,32774),$i[0]=32774,$i[1]=32774,xe.blendFuncSeparate(770,771,773,1),si[0]=770,si[1]=771,si[2]=773,si[3]=1,i?xe.enable(2884):xe.disable(2884),ft.cull_enable=i,xe.cullFace(a),ft.cull_face=a,oa=o.call(this,Oe,Zr,0),oa?xe.enable(2929):xe.disable(2929),ft.depth_enable=oa,ka=Zr.viewport,so=ka.x|0,Kr=ka.y|0,Ia="width"in ka?ka.width|0:Oe.framebufferWidth-so,Yo="height"in ka?ka.height|0:Oe.framebufferHeight-Kr,xe.scissor(so,Kr,Ia,Yo),ti[0]=so,ti[1]=Kr,ti[2]=Ia,ti[3]=Yo,s?xe.enable(3089):xe.disable(3089),ft.scissor_enable=s,u?xe.enable(2960):xe.disable(2960),ft.stencil_enable=u,fa=ft.profile,fa&&(kn=performance.now(),r.count++),xe.useProgram(l.program),Aa=Br.angle_instanced_arrays,zt.setVAO(null),ys=Zr.colorBuffer,bi.buffer=ys,uo=!1,ls=1,$a=0,fo=0,mn=0,ra=0,wa=null,ws=0,Co=!1,Po=5126,Wi=0,gn=0,Ps=0,Rr(bi)?(uo=!0,wa=pe.createStream(34962,bi),Po=wa.dtype):(wa=pe.getBuffer(bi),wa?Po=wa.dtype:"constant"in bi?(ls=2,typeof bi.constant=="number"?($a=bi.constant,fo=mn=ra=0):($a=bi.constant.length>0?bi.constant[0]:0,fo=bi.constant.length>1?bi.constant[1]:0,mn=bi.constant.length>2?bi.constant[2]:0,ra=bi.constant.length>3?bi.constant[3]:0)):(Rr(bi.buffer)?wa=pe.createStream(34962,bi.buffer):wa=pe.getBuffer(bi.buffer),Po="type"in bi?Ii[bi.type]:wa.dtype,Co=!!bi.normalized,ws=bi.size|0,Wi=bi.offset|0,gn=bi.stride|0,Ps=bi.divisor|0)),Ha=f.location,Sn=Pt[Ha],ls===1?(Sn.buffer||xe.enableVertexAttribArray(Ha),ao=ws||4,(Sn.type!==Po||Sn.size!==ao||Sn.buffer!==wa||Sn.normalized!==Co||Sn.offset!==Wi||Sn.stride!==gn)&&(xe.bindBuffer(34962,wa.buffer),xe.vertexAttribPointer(Ha,ao,Po,Co,gn,Wi),Sn.type=Po,Sn.size=ao,Sn.buffer=wa,Sn.normalized=Co,Sn.offset=Wi,Sn.stride=gn),Sn.divisor!==Ps&&(Aa.vertexAttribDivisorANGLE(Ha,Ps),Sn.divisor=Ps)):(Sn.buffer&&(xe.disableVertexAttribArray(Ha),Sn.buffer=null),(Sn.x!==$a||Sn.y!==fo||Sn.z!==mn||Sn.w!==ra)&&(xe.vertexAttrib4f(Ha,$a,fo,mn,ra),Sn.x=$a,Sn.y=fo,Sn.z=mn,Sn.w=ra)),Ba=Zr.positionBuffer,tr.buffer=Ba,Ko=!1,Qo=1,Hi=0,Sa=0,Qa=0,vn=0,da=null,la=0,vo=!1,Ts=5126,ps=0,co=0,mo=0,Rr(tr)?(Ko=!0,da=pe.createStream(34962,tr),Ts=da.dtype):(da=pe.getBuffer(tr),da?Ts=da.dtype:"constant"in tr?(Qo=2,typeof tr.constant=="number"?(Hi=tr.constant,Sa=Qa=vn=0):(Hi=tr.constant.length>0?tr.constant[0]:0,Sa=tr.constant.length>1?tr.constant[1]:0,Qa=tr.constant.length>2?tr.constant[2]:0,vn=tr.constant.length>3?tr.constant[3]:0)):(Rr(tr.buffer)?da=pe.createStream(34962,tr.buffer):da=pe.getBuffer(tr.buffer),Ts="type"in tr?Ii[tr.type]:da.dtype,vo=!!tr.normalized,la=tr.size|0,ps=tr.offset|0,co=tr.stride|0,mo=tr.divisor|0)),No=c.location,jn=Pt[No],Qo===1?(jn.buffer||xe.enableVertexAttribArray(No),Go=la||2,(jn.type!==Ts||jn.size!==Go||jn.buffer!==da||jn.normalized!==vo||jn.offset!==ps||jn.stride!==co)&&(xe.bindBuffer(34962,da.buffer),xe.vertexAttribPointer(No,Go,Ts,vo,co,ps),jn.type=Ts,jn.size=Go,jn.buffer=da,jn.normalized=vo,jn.offset=ps,jn.stride=co),jn.divisor!==mo&&(Aa.vertexAttribDivisorANGLE(No,mo),jn.divisor=mo)):(jn.buffer&&(xe.disableVertexAttribArray(No),jn.buffer=null),(jn.x!==Hi||jn.y!==Sa||jn.z!==Qa||jn.w!==vn)&&(xe.vertexAttrib4f(No,Hi,Sa,Qa,vn),jn.x=Hi,jn.y=Sa,jn.z=Qa,jn.w=vn)),Ys=Zr.colorBuffer,Xr.buffer=Ys,qs=!1,Ns=1,Oa=0,ha=0,Vs=0,Ya=0,_n=null,Vn=0,wo=!1,Ra=5126,Xn=0,un=0,$n=0,Rr(Xr)?(qs=!0,_n=pe.createStream(34962,Xr),Ra=_n.dtype):(_n=pe.getBuffer(Xr),_n?Ra=_n.dtype:"constant"in Xr?(Ns=2,typeof Xr.constant=="number"?(Oa=Xr.constant,ha=Vs=Ya=0):(Oa=Xr.constant.length>0?Xr.constant[0]:0,ha=Xr.constant.length>1?Xr.constant[1]:0,Vs=Xr.constant.length>2?Xr.constant[2]:0,Ya=Xr.constant.length>3?Xr.constant[3]:0)):(Rr(Xr.buffer)?_n=pe.createStream(34962,Xr.buffer):_n=pe.getBuffer(Xr.buffer),Ra="type"in Xr?Ii[Xr.type]:_n.dtype,wo=!!Xr.normalized,Vn=Xr.size|0,Xn=Xr.offset|0,un=Xr.stride|0,$n=Xr.divisor|0)),Ka=h.location,qn=Pt[Ka],Ns===1?(qn.buffer||xe.enableVertexAttribArray(Ka),Eo=Vn||4,(qn.type!==Ra||qn.size!==Eo||qn.buffer!==_n||qn.normalized!==wo||qn.offset!==Xn||qn.stride!==un)&&(xe.bindBuffer(34962,_n.buffer),xe.vertexAttribPointer(Ka,Eo,Ra,wo,un,Xn),qn.type=Ra,qn.size=Eo,qn.buffer=_n,qn.normalized=wo,qn.offset=Xn,qn.stride=un),qn.divisor!==$n&&(Aa.vertexAttribDivisorANGLE(Ka,$n),qn.divisor=$n)):(qn.buffer&&(xe.disableVertexAttribArray(Ka),qn.buffer=null),(qn.x!==Oa||qn.y!==ha||qn.z!==Vs||qn.w!==Ya)&&(xe.vertexAttrib4f(Ka,Oa,ha,Vs,Ya),qn.x=Oa,qn.y=ha,qn.z=Vs,qn.w=Ya)),Ja=Zr.positionBuffer,pr.buffer=Ja,lo=!1,eo=1,sa=0,es=0,Na=0,rn=0,Pa=null,to=0,yo=!1,Jo=5126,To=0,Dn=0,_a=0,Rr(pr)?(lo=!0,Pa=pe.createStream(34962,pr),Jo=Pa.dtype):(Pa=pe.getBuffer(pr),Pa?Jo=Pa.dtype:"constant"in pr?(eo=2,typeof pr.constant=="number"?(sa=pr.constant,es=Na=rn=0):(sa=pr.constant.length>0?pr.constant[0]:0,es=pr.constant.length>1?pr.constant[1]:0,Na=pr.constant.length>2?pr.constant[2]:0,rn=pr.constant.length>3?pr.constant[3]:0)):(Rr(pr.buffer)?Pa=pe.createStream(34962,pr.buffer):Pa=pe.getBuffer(pr.buffer),Jo="type"in pr?Ii[pr.type]:Pa.dtype,yo=!!pr.normalized,to=pr.size|0,To=pr.offset|0,Dn=pr.stride|0,_a=pr.divisor|0)),Ws=d.location,Ca=Pt[Ws],eo===1?(Ca.buffer||xe.enableVertexAttribArray(Ws),Es=to||2,(Ca.type!==Jo||Ca.size!==Es||Ca.buffer!==Pa||Ca.normalized!==yo||Ca.offset!==To||Ca.stride!==Dn)&&(xe.bindBuffer(34962,Pa.buffer),xe.vertexAttribPointer(Ws,Es,Jo,yo,Dn,To),Ca.type=Jo,Ca.size=Es,Ca.buffer=Pa,Ca.normalized=yo,Ca.offset=To,Ca.stride=Dn),Ca.divisor!==_a&&(Aa.vertexAttribDivisorANGLE(Ws,_a),Ca.divisor=_a)):(Ca.buffer&&(xe.disableVertexAttribArray(Ws),Ca.buffer=null),(Ca.x!==sa||Ca.y!==es||Ca.z!==Na||Ca.w!==rn)&&(xe.vertexAttrib4f(Ws,sa,es,Na,rn),Ca.x=sa,Ca.y=es,Ca.z=Na,Ca.w=rn)),As=_.location,Ho=Pt[As],Ho.buffer||xe.enableVertexAttribArray(As),(Ho.type!==5126||Ho.size!==1||Ho.buffer!==p||Ho.normalized!==!1||Ho.offset!==0||Ho.stride!==8)&&(xe.bindBuffer(34962,p.buffer),xe.vertexAttribPointer(As,1,5126,!1,8,0),Ho.type=5126,Ho.size=1,Ho.buffer=p,Ho.normalized=!1,Ho.offset=0,Ho.stride=8),Ho.divisor!==0&&(Aa.vertexAttribDivisorANGLE(As,0),Ho.divisor=0),Wa=b.location,Ao=Pt[Wa],Ao.buffer||xe.enableVertexAttribArray(Wa),(Ao.type!==5126||Ao.size!==1||Ao.buffer!==p||Ao.normalized!==!1||Ao.offset!==4||Ao.stride!==8)&&(xe.bindBuffer(34962,p.buffer),xe.vertexAttribPointer(Wa,1,5126,!1,8,4),Ao.type=5126,Ao.size=1,Ao.buffer=p,Ao.normalized=!1,Ao.offset=4,Ao.stride=8),Ao.divisor!==0&&(Aa.vertexAttribDivisorANGLE(Wa,0),Ao.divisor=0),ts=Zr.positionBuffer,gr.buffer=ts,Wo=!1,qa=1,ln=0,Bo=0,ko=0,oo=0,za=null,ea=0,rs=!1,$s=5126,us=0,Ds=0,fl=0,Rr(gr)?(Wo=!0,za=pe.createStream(34962,gr),$s=za.dtype):(za=pe.getBuffer(gr),za?$s=za.dtype:"constant"in gr?(qa=2,typeof gr.constant=="number"?(ln=gr.constant,Bo=ko=oo=0):(ln=gr.constant.length>0?gr.constant[0]:0,Bo=gr.constant.length>1?gr.constant[1]:0,ko=gr.constant.length>2?gr.constant[2]:0,oo=gr.constant.length>3?gr.constant[3]:0)):(Rr(gr.buffer)?za=pe.createStream(34962,gr.buffer):za=pe.getBuffer(gr.buffer),$s="type"in gr?Ii[gr.type]:za.dtype,rs=!!gr.normalized,ea=gr.size|0,us=gr.offset|0,Ds=gr.stride|0,fl=gr.divisor|0)),as=v.location,Ma=Pt[as],qa===1?(Ma.buffer||xe.enableVertexAttribArray(as),Qs=ea||2,(Ma.type!==$s||Ma.size!==Qs||Ma.buffer!==za||Ma.normalized!==rs||Ma.offset!==us||Ma.stride!==Ds)&&(xe.bindBuffer(34962,za.buffer),xe.vertexAttribPointer(as,Qs,$s,rs,Ds,us),Ma.type=$s,Ma.size=Qs,Ma.buffer=za,Ma.normalized=rs,Ma.offset=us,Ma.stride=Ds),Ma.divisor!==fl&&(Aa.vertexAttribDivisorANGLE(as,fl),Ma.divisor=fl)):(Ma.buffer&&(xe.disableVertexAttribArray(as),Ma.buffer=null),(Ma.x!==ln||Ma.y!==Bo||Ma.z!==ko||Ma.w!==oo)&&(xe.vertexAttrib4f(as,ln,Bo,ko,oo),Ma.x=ln,Ma.y=Bo,Ma.z=ko,Ma.w=oo)),ho=Zr.positionBuffer,ct.buffer=ho,gs=!1,Vo=1,Do=0,Lo=0,xs=0,ks=0,Ea=null,Jn=0,Oo=!1,rl=5126,Gs=0,bs=0,zs=0,Rr(ct)?(gs=!0,Ea=pe.createStream(34962,ct),rl=Ea.dtype):(Ea=pe.getBuffer(ct),Ea?rl=Ea.dtype:"constant"in ct?(Vo=2,typeof ct.constant=="number"?(Do=ct.constant,Lo=xs=ks=0):(Do=ct.constant.length>0?ct.constant[0]:0,Lo=ct.constant.length>1?ct.constant[1]:0,xs=ct.constant.length>2?ct.constant[2]:0,ks=ct.constant.length>3?ct.constant[3]:0)):(Rr(ct.buffer)?Ea=pe.createStream(34962,ct.buffer):Ea=pe.getBuffer(ct.buffer),rl="type"in ct?Ii[ct.type]:Ea.dtype,Oo=!!ct.normalized,Jn=ct.size|0,Gs=ct.offset|0,bs=ct.stride|0,zs=ct.divisor|0)),$o=k.location,Ta=Pt[$o],Vo===1?(Ta.buffer||xe.enableVertexAttribArray($o),os=Jn||2,(Ta.type!==rl||Ta.size!==os||Ta.buffer!==Ea||Ta.normalized!==Oo||Ta.offset!==Gs||Ta.stride!==bs)&&(xe.bindBuffer(34962,Ea.buffer),xe.vertexAttribPointer($o,os,rl,Oo,bs,Gs),Ta.type=rl,Ta.size=os,Ta.buffer=Ea,Ta.normalized=Oo,Ta.offset=Gs,Ta.stride=bs),Ta.divisor!==zs&&(Aa.vertexAttribDivisorANGLE($o,zs),Ta.divisor=zs)):(Ta.buffer&&(xe.disableVertexAttribArray($o),Ta.buffer=null),(Ta.x!==Do||Ta.y!==Lo||Ta.z!==xs||Ta.w!==ks)&&(xe.vertexAttrib4f($o,Do,Lo,xs,ks),Ta.x=Do,Ta.y=Lo,Ta.z=xs,Ta.w=ks)),_l=Zr.dashLength,xe.uniform1f(E.location,_l),Ss=Zr.dashTexture,Ss&&Ss._reglType==="framebuffer"&&(Ss=Ss.color[0]),po=Ss._texture,xe.uniform1i(A.location,po.bind()),go=Zr.depth,xe.uniform1f(L.location,go),ss=Zr.miterLimit,xe.uniform1f(x.location,ss),qo=M.call(this,Oe,Zr,0),xe.uniform1f(C.location,qo),zo=Zr.opacity,xe.uniform1f(m.location,zo),io=Zr.scale,Io=io[0],Da=io[1],xe.uniform2f(P.location,Io,Da),vs=Zr.thickness,xe.uniform1f(T.location,vs),fs=Zr.translate,cl=fs[0],el=fs[1],xe.uniform2f(B.location,cl,el),Hs=U.call(this,Oe,Zr,0),Ro=Hs[0],tl=Hs[1],Fs=Hs[2],hl=Hs[3],xe.uniform4f(F.location,Ro,tl,Fs,hl),Fa=ge.elements,Fa?xe.bindBuffer(34963,Fa.buffer.buffer):zt.currentVAO&&(Fa=fe.getElements(zt.currentVAO.elements),Fa&&xe.bindBuffer(34963,Fa.buffer.buffer)),Ms=Zr.count,Ms>0?Fa?Aa.drawElementsInstancedANGLE(5,4,Fa.type,0<<(Fa.type-5121>>1),Ms):Aa.drawArraysInstancedANGLE(5,0,4,Ms):Ms<0&&(Fa?xe.drawElements(5,4,Fa.type,0<<(Fa.type-5121>>1)):xe.drawArrays(5,0,4)),ft.dirty=!0,zt.setVAO(null),Oe.viewportWidth=Ga,Oe.viewportHeight=ma,fa&&(r.cpuTime+=performance.now()-kn),uo&&pe.destroyStream(wa),Ko&&pe.destroyStream(da),qs&&pe.destroyStream(_n),lo&&pe.destroyStream(Pa),Wo&&pe.destroyStream(za),gs&&pe.destroyStream(Ea),po.unbind()},scope:function(Zr,Ti,en){var ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl,ll,il,zl,Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt,pt,Ht,nr,fr,Tr,Ir,ri,li,Ei,hn,Zn,Yn,Ua,Fo,vl,Us,ml,au,Sl,Yl,Ol,ou,Pu,iu,tu,Hu,$u,Ku,Wu,ju,sf,_f,Qu,ef,Z,se,Pe,Xe,Qe;ii=Zr.viewport,Xi=ii.x|0,aa=ii.y|0,Mn="width"in ii?ii.width|0:Oe.framebufferWidth-Xi,Un="height"in ii?ii.height|0:Oe.framebufferHeight-aa,Ga=Oe.viewportWidth,Oe.viewportWidth=Mn,ma=Oe.viewportHeight,Oe.viewportHeight=Un,oa=tn[0],tn[0]=Xi,ka=tn[1],tn[1]=aa,so=tn[2],tn[2]=Mn,Kr=tn[3],tn[3]=Un,Ia=pi[0],pi[0]=G,Yo=pi[1],pi[1]=j,fa=pi[2],pi[2]=H,kn=pi[3],pi[3]=N,Aa=Fe.blend_enable,Fe.blend_enable=W,ys=ni[0],ni[0]=re,uo=ni[1],ni[1]=ae,ls=Qi[0],Qi[0]=be,$a=Qi[1],Qi[1]=ze,fo=Qi[2],Qi[2]=Ce,mn=Qi[3],Qi[3]=de,ra=Fe.cull_enable,Fe.cull_enable=te,wa=Fe.cull_face,Fe.cull_face=ke,ws=o.call(this,Oe,Zr,en),Co=Fe.depth_enable,Fe.depth_enable=ws,Po=Zr.viewport,Wi=Po.x|0,gn=Po.y|0,Ps="width"in Po?Po.width|0:Oe.framebufferWidth-Wi,Ha="height"in Po?Po.height|0:Oe.framebufferHeight-gn,Sn=Vi[0],Vi[0]=Wi,ao=Vi[1],Vi[1]=gn,Ba=Vi[2],Vi[2]=Ps,Ko=Vi[3],Vi[3]=Ha,Qo=Fe.scissor_enable,Fe.scissor_enable=Ee,Hi=Fe.stencil_enable,Fe.stencil_enable=Me,Sa=ft.profile,Sa&&(Qa=performance.now(),r.count++),vn=ge.offset,ge.offset=Ue,da=ge.count,ge.count=De,la=Zr.count,vo=ge.instances,ge.instances=la,Ts=ge.primitive,ge.primitive=ye,ps=M.call(this,Oe,Zr,en),co=rr[qe],rr[qe]=ps,mo=Zr.miterLimit,No=rr[ce],rr[ce]=mo,jn=Zr.scale,Go=rr[Je],rr[Je]=jn,Ys=Zr.scaleFract,qs=rr[nt],rr[nt]=Ys,Ns=Zr.translateFract,Oa=rr[gt],rr[gt]=Ns,ha=Zr.translate,Vs=rr[Nt],rr[Nt]=ha,Ya=Zr.thickness,_n=rr[at],rr[at]=Ya,Vn=Zr.dashTexture,wo=rr[Ke],rr[Ke]=Vn,Ra=Zr.opacity,Xn=rr[Ct],rr[Ct]=Ra,un=Oe.pixelRatio,$n=rr[wt],rr[wt]=un,Ka=Zr.id,qn=rr[St],rr[St]=Ka,Eo=Zr.dashLength,Ja=rr[Dt],rr[Dt]=Eo,lo=U.call(this,Oe,Zr,en),eo=rr[Zt],rr[Zt]=lo,sa=Zr.depth,es=rr[Et],rr[Et]=sa,Na=Te.state,Te.state=1,rn=Te.x,Te.x=0,Pa=Te.y,Te.y=0,to=Te.z,Te.z=0,yo=Te.w,Te.w=0,Jo=Te.buffer,Te.buffer=p,To=Te.size,Te.size=0,Dn=Te.normalized,Te.normalized=!1,_a=Te.type,Te.type=5126,Ws=Te.offset,Te.offset=0,Ca=Te.stride,Te.stride=8,Es=Te.divisor,Te.divisor=0,As=ot.state,ot.state=1,Ho=ot.x,ot.x=0,Wa=ot.y,ot.y=0,Ao=ot.z,ot.z=0,ts=ot.w,ot.w=0,Wo=ot.buffer,ot.buffer=p,qa=ot.size,ot.size=0,ln=ot.normalized,ot.normalized=!1,Bo=ot.type,ot.type=5126,ko=ot.offset,ot.offset=4,oo=ot.stride,ot.stride=8,za=ot.divisor,ot.divisor=0,ea=Zr.colorBuffer,bi.buffer=ea,rs=!1,$s=1,us=0,Ds=0,fl=0,as=0,Ma=null,Qs=0,ho=!1,gs=5126,Vo=0,Do=0,Lo=0,Rr(bi)?(rs=!0,Ma=pe.createStream(34962,bi),gs=Ma.dtype):(Ma=pe.getBuffer(bi),Ma?gs=Ma.dtype:"constant"in bi?($s=2,typeof bi.constant=="number"?(us=bi.constant,Ds=fl=as=0):(us=bi.constant.length>0?bi.constant[0]:0,Ds=bi.constant.length>1?bi.constant[1]:0,fl=bi.constant.length>2?bi.constant[2]:0,as=bi.constant.length>3?bi.constant[3]:0)):(Rr(bi.buffer)?Ma=pe.createStream(34962,bi.buffer):Ma=pe.getBuffer(bi.buffer),gs="type"in bi?Ii[bi.type]:Ma.dtype,ho=!!bi.normalized,Qs=bi.size|0,Vo=bi.offset|0,Do=bi.stride|0,Lo=bi.divisor|0)),xs=Tt.state,Tt.state=$s,ks=Tt.x,Tt.x=us,Ea=Tt.y,Tt.y=Ds,Jn=Tt.z,Tt.z=fl,Oo=Tt.w,Tt.w=as,rl=Tt.buffer,Tt.buffer=Ma,Gs=Tt.size,Tt.size=Qs,bs=Tt.normalized,Tt.normalized=ho,zs=Tt.type,Tt.type=gs,$o=Tt.offset,Tt.offset=Vo,Ta=Tt.stride,Tt.stride=Do,os=Tt.divisor,Tt.divisor=Lo,_l=Zr.colorBuffer,Xr.buffer=_l,Ss=!1,po=1,go=0,ss=0,qo=0,zo=0,io=null,Io=0,Da=!1,vs=5126,fs=0,cl=0,el=0,Rr(Xr)?(Ss=!0,io=pe.createStream(34962,Xr),vs=io.dtype):(io=pe.getBuffer(Xr),io?vs=io.dtype:"constant"in Xr?(po=2,typeof Xr.constant=="number"?(go=Xr.constant,ss=qo=zo=0):(go=Xr.constant.length>0?Xr.constant[0]:0,ss=Xr.constant.length>1?Xr.constant[1]:0,qo=Xr.constant.length>2?Xr.constant[2]:0,zo=Xr.constant.length>3?Xr.constant[3]:0)):(Rr(Xr.buffer)?io=pe.createStream(34962,Xr.buffer):io=pe.getBuffer(Xr.buffer),vs="type"in Xr?Ii[Xr.type]:io.dtype,Da=!!Xr.normalized,Io=Xr.size|0,fs=Xr.offset|0,cl=Xr.stride|0,el=Xr.divisor|0)),Hs=vt.state,vt.state=po,Ro=vt.x,vt.x=go,tl=vt.y,vt.y=ss,Fs=vt.z,vt.z=qo,hl=vt.w,vt.w=zo,Fa=vt.buffer,vt.buffer=io,Ms=vt.size,vt.size=Io,jo=vt.normalized,vt.normalized=Da,Rs=vt.type,vt.type=vs,Is=vt.offset,vt.offset=fs,Bs=vt.stride,vt.stride=cl,At=vt.divisor,vt.divisor=el,Vt=Zr.positionBuffer,ct.buffer=Vt,wr=!1,mr=1,Fr=0,_i=0,Si=0,Ci=0,Ki=null,Fn=0,Pi=!1,di=5126,Li=0,Mi=0,Gn=0,Rr(ct)?(wr=!0,Ki=pe.createStream(34962,ct),di=Ki.dtype):(Ki=pe.getBuffer(ct),Ki?di=Ki.dtype:"constant"in ct?(mr=2,typeof ct.constant=="number"?(Fr=ct.constant,_i=Si=Ci=0):(Fr=ct.constant.length>0?ct.constant[0]:0,_i=ct.constant.length>1?ct.constant[1]:0,Si=ct.constant.length>2?ct.constant[2]:0,Ci=ct.constant.length>3?ct.constant[3]:0)):(Rr(ct.buffer)?Ki=pe.createStream(34962,ct.buffer):Ki=pe.getBuffer(ct.buffer),di="type"in ct?Ii[ct.type]:Ki.dtype,Pi=!!ct.normalized,Fn=ct.size|0,Li=ct.offset|0,Mi=ct.stride|0,Gn=ct.divisor|0)),ta=Ye.state,Ye.state=mr,ya=Ye.x,Ye.x=Fr,ia=Ye.y,Ye.y=_i,pa=Ye.z,Ye.z=Si,va=Ye.w,Ye.w=Ci,zn=Ye.buffer,Ye.buffer=Ki,is=Ye.size,Ye.size=Fn,Cs=Ye.normalized,Ye.normalized=Pi,Ks=Ye.type,Ye.type=di,dl=Ye.offset,Ye.offset=Li,xl=Ye.stride,Ye.stride=Mi,Bl=Ye.divisor,Ye.divisor=Gn,bl=Zr.positionBuffer,tr.buffer=bl,eu=!1,Zl=1,Ul=0,ja=0,ns=0,Js=0,cs=null,sl=0,ll=!1,il=5126,zl=0,Ml=0,Rl=0,Rr(tr)?(eu=!0,cs=pe.createStream(34962,tr),il=cs.dtype):(cs=pe.getBuffer(tr),cs?il=cs.dtype:"constant"in tr?(Zl=2,typeof tr.constant=="number"?(Ul=tr.constant,ja=ns=Js=0):(Ul=tr.constant.length>0?tr.constant[0]:0,ja=tr.constant.length>1?tr.constant[1]:0,ns=tr.constant.length>2?tr.constant[2]:0,Js=tr.constant.length>3?tr.constant[3]:0)):(Rr(tr.buffer)?cs=pe.createStream(34962,tr.buffer):cs=pe.getBuffer(tr.buffer),il="type"in tr?Ii[tr.type]:cs.dtype,ll=!!tr.normalized,sl=tr.size|0,zl=tr.offset|0,Ml=tr.stride|0,Rl=tr.divisor|0)),Tl=He.state,He.state=Zl,Ll=He.x,He.x=Ul,ms=He.y,He.y=ja,Os=He.z,He.z=ns,Xl=He.w,He.w=Js,Vl=He.buffer,He.buffer=cs,Nl=He.size,He.size=sl,le=He.normalized,He.normalized=ll,w=He.type,He.type=il,q=He.offset,He.offset=zl,Q=He.stride,He.stride=Ml,ee=He.divisor,He.divisor=Rl,ue=Zr.positionBuffer,pr.buffer=ue,Ve=!1,tt=1,mt=0,Bt=0,ir=0,or=0,kr=null,Vr=0,he=!1,Se=5126,Ne=0,Ge=0,lt=0,Rr(pr)?(Ve=!0,kr=pe.createStream(34962,pr),Se=kr.dtype):(kr=pe.getBuffer(pr),kr?Se=kr.dtype:"constant"in pr?(tt=2,typeof pr.constant=="number"?(mt=pr.constant,Bt=ir=or=0):(mt=pr.constant.length>0?pr.constant[0]:0,Bt=pr.constant.length>1?pr.constant[1]:0,ir=pr.constant.length>2?pr.constant[2]:0,or=pr.constant.length>3?pr.constant[3]:0)):(Rr(pr.buffer)?kr=pe.createStream(34962,pr.buffer):kr=pe.getBuffer(pr.buffer),Se="type"in pr?Ii[pr.type]:kr.dtype,he=!!pr.normalized,Vr=pr.size|0,Ne=pr.offset|0,Ge=pr.stride|0,lt=pr.divisor|0)),rt=it.state,it.state=tt,pt=it.x,it.x=mt,Ht=it.y,it.y=Bt,nr=it.z,it.z=ir,fr=it.w,it.w=or,Tr=it.buffer,it.buffer=kr,Ir=it.size,it.size=Vr,ri=it.normalized,it.normalized=he,li=it.type,it.type=Se,Ei=it.offset,it.offset=Ne,hn=it.stride,it.stride=Ge,Zn=it.divisor,it.divisor=lt,Yn=Zr.positionBuffer,gr.buffer=Yn,Ua=!1,Fo=1,vl=0,Us=0,ml=0,au=0,Sl=null,Yl=0,Ol=!1,ou=5126,Pu=0,iu=0,tu=0,Rr(gr)?(Ua=!0,Sl=pe.createStream(34962,gr),ou=Sl.dtype):(Sl=pe.getBuffer(gr),Sl?ou=Sl.dtype:"constant"in gr?(Fo=2,typeof gr.constant=="number"?(vl=gr.constant,Us=ml=au=0):(vl=gr.constant.length>0?gr.constant[0]:0,Us=gr.constant.length>1?gr.constant[1]:0,ml=gr.constant.length>2?gr.constant[2]:0,au=gr.constant.length>3?gr.constant[3]:0)):(Rr(gr.buffer)?Sl=pe.createStream(34962,gr.buffer):Sl=pe.getBuffer(gr.buffer),ou="type"in gr?Ii[gr.type]:Sl.dtype,Ol=!!gr.normalized,Yl=gr.size|0,Pu=gr.offset|0,iu=gr.stride|0,tu=gr.divisor|0)),Hu=et.state,et.state=Fo,$u=et.x,et.x=vl,Ku=et.y,et.y=Us,Wu=et.z,et.z=ml,ju=et.w,et.w=au,sf=et.buffer,et.buffer=Sl,_f=et.size,et.size=Yl,Qu=et.normalized,et.normalized=Ol,ef=et.type,et.type=ou,Z=et.offset,et.offset=Pu,se=et.stride,et.stride=iu,Pe=et.divisor,et.divisor=tu,Xe=dt.vert,dt.vert=It,Qe=dt.frag,dt.frag=Yt,ft.dirty=!0,Ti(Oe,Zr,en),Oe.viewportWidth=Ga,Oe.viewportHeight=ma,tn[0]=oa,tn[1]=ka,tn[2]=so,tn[3]=Kr,pi[0]=Ia,pi[1]=Yo,pi[2]=fa,pi[3]=kn,Fe.blend_enable=Aa,ni[0]=ys,ni[1]=uo,Qi[0]=ls,Qi[1]=$a,Qi[2]=fo,Qi[3]=mn,Fe.cull_enable=ra,Fe.cull_face=wa,Fe.depth_enable=Co,Vi[0]=Sn,Vi[1]=ao,Vi[2]=Ba,Vi[3]=Ko,Fe.scissor_enable=Qo,Fe.stencil_enable=Hi,Sa&&(r.cpuTime+=performance.now()-Qa),ge.offset=vn,ge.count=da,ge.instances=vo,ge.primitive=Ts,rr[qe]=co,rr[ce]=No,rr[Je]=Go,rr[nt]=qs,rr[gt]=Oa,rr[Nt]=Vs,rr[at]=_n,rr[Ke]=wo,rr[Ct]=Xn,rr[wt]=$n,rr[St]=qn,rr[Dt]=Ja,rr[Zt]=eo,rr[Et]=es,Te.state=Na,Te.x=rn,Te.y=Pa,Te.z=to,Te.w=yo,Te.buffer=Jo,Te.size=To,Te.normalized=Dn,Te.type=_a,Te.offset=Ws,Te.stride=Ca,Te.divisor=Es,ot.state=As,ot.x=Ho,ot.y=Wa,ot.z=Ao,ot.w=ts,ot.buffer=Wo,ot.size=qa,ot.normalized=ln,ot.type=Bo,ot.offset=ko,ot.stride=oo,ot.divisor=za,rs&&pe.destroyStream(Ma),Tt.state=xs,Tt.x=ks,Tt.y=Ea,Tt.z=Jn,Tt.w=Oo,Tt.buffer=rl,Tt.size=Gs,Tt.normalized=bs,Tt.type=zs,Tt.offset=$o,Tt.stride=Ta,Tt.divisor=os,Ss&&pe.destroyStream(io),vt.state=Hs,vt.x=Ro,vt.y=tl,vt.z=Fs,vt.w=hl,vt.buffer=Fa,vt.size=Ms,vt.normalized=jo,vt.type=Rs,vt.offset=Is,vt.stride=Bs,vt.divisor=At,wr&&pe.destroyStream(Ki),Ye.state=ta,Ye.x=ya,Ye.y=ia,Ye.z=pa,Ye.w=va,Ye.buffer=zn,Ye.size=is,Ye.normalized=Cs,Ye.type=Ks,Ye.offset=dl,Ye.stride=xl,Ye.divisor=Bl,eu&&pe.destroyStream(cs),He.state=Tl,He.x=Ll,He.y=ms,He.z=Os,He.w=Xl,He.buffer=Vl,He.size=Nl,He.normalized=le,He.type=w,He.offset=q,He.stride=Q,He.divisor=ee,Ve&&pe.destroyStream(kr),it.state=rt,it.x=pt,it.y=Ht,it.z=nr,it.w=fr,it.buffer=Tr,it.size=Ir,it.normalized=ri,it.type=li,it.offset=Ei,it.stride=hn,it.divisor=Zn,Ua&&pe.destroyStream(Sl),et.state=Hu,et.x=$u,et.y=Ku,et.z=Wu,et.w=ju,et.buffer=sf,et.size=_f,et.normalized=Qu,et.type=ef,et.offset=Z,et.stride=se,et.divisor=Pe,dt.vert=Xe,dt.frag=Qe,ft.dirty=!0},batch:function(Zr,Ti){var en,ii,Xi,aa,Mn,Un,Ga;if(en=Br.angle_instanced_arrays,ii=Gr.next,ii!==Gr.cur&&(ii?xe.bindFramebuffer(36160,ii.framebuffer):xe.bindFramebuffer(36160,null),Gr.cur=ii),ft.dirty){var ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo;ma=Fe.dither,ma!==ft.dither&&(ma?xe.enable(3024):xe.disable(3024),ft.dither=ma),oa=Fe.depth_func,oa!==ft.depth_func&&(xe.depthFunc(oa),ft.depth_func=oa),ka=Ai[0],so=Ai[1],(ka!==Ni[0]||so!==Ni[1])&&(xe.depthRange(ka,so),Ni[0]=ka,Ni[1]=so),Kr=Fe.depth_mask,Kr!==ft.depth_mask&&(xe.depthMask(Kr),ft.depth_mask=Kr),Ia=Rt[0],Yo=Rt[1],fa=Rt[2],kn=Rt[3],(Ia!==yt[0]||Yo!==yt[1]||fa!==yt[2]||kn!==yt[3])&&(xe.colorMask(Ia,Yo,fa,kn),yt[0]=Ia,yt[1]=Yo,yt[2]=fa,yt[3]=kn),Aa=Fe.frontFace,Aa!==ft.frontFace&&(xe.frontFace(Aa),ft.frontFace=Aa),ys=Fe.lineWidth,ys!==ft.lineWidth&&(xe.lineWidth(ys),ft.lineWidth=ys),uo=Fe.polygonOffset_enable,uo!==ft.polygonOffset_enable&&(uo?xe.enable(32823):xe.disable(32823),ft.polygonOffset_enable=uo),ls=Gt[0],$a=Gt[1],(ls!==Wt[0]||$a!==Wt[1])&&(xe.polygonOffset(ls,$a),Wt[0]=ls,Wt[1]=$a),fo=Fe.sample_alpha,fo!==ft.sample_alpha&&(fo?xe.enable(32926):xe.disable(32926),ft.sample_alpha=fo),mn=Fe.sample_enable,mn!==ft.sample_enable&&(mn?xe.enable(32928):xe.disable(32928),ft.sample_enable=mn),ra=xr[0],wa=xr[1],(ra!==Lr[0]||wa!==Lr[1])&&(xe.sampleCoverage(ra,wa),Lr[0]=ra,Lr[1]=wa),ws=Fe.stencil_mask,ws!==ft.stencil_mask&&(xe.stencilMask(ws),ft.stencil_mask=ws),Co=Nr[0],Po=Nr[1],Wi=Nr[2],(Co!==Or[0]||Po!==Or[1]||Wi!==Or[2])&&(xe.stencilFunc(Co,Po,Wi),Or[0]=Co,Or[1]=Po,Or[2]=Wi),gn=Hr[0],Ps=Hr[1],Ha=Hr[2],Sn=Hr[3],(gn!==jr[0]||Ps!==jr[1]||Ha!==jr[2]||Sn!==jr[3])&&(xe.stencilOpSeparate(gn,Ps,Ha,Sn),jr[0]=gn,jr[1]=Ps,jr[2]=Ha,jr[3]=Sn),ao=gi[0],Ba=gi[1],Ko=gi[2],Qo=gi[3],(ao!==ki[0]||Ba!==ki[1]||Ko!==ki[2]||Qo!==ki[3])&&(xe.stencilOpSeparate(ao,Ba,Ko,Qo),ki[0]=ao,ki[1]=Ba,ki[2]=Ko,ki[3]=Qo)}xe.blendColor(0,0,0,0),Di[0]=0,Di[1]=0,Di[2]=0,Di[3]=0,cr?xe.enable(3042):xe.disable(3042),ft.blend_enable=cr,xe.blendEquationSeparate(32774,32774),$i[0]=32774,$i[1]=32774,xe.blendFuncSeparate(770,771,773,1),si[0]=770,si[1]=771,si[2]=773,si[3]=1,_r?xe.enable(2884):xe.disable(2884),ft.cull_enable=_r,xe.cullFace(yr),ft.cull_face=yr,Ut?xe.enable(3089):xe.disable(3089),ft.scissor_enable=Ut,Re?xe.enable(2960):xe.disable(2960),ft.stencil_enable=Re,Xi=ft.profile,Xi&&(aa=performance.now(),r.count+=Ti),xe.useProgram(l.program),Mn=Br.angle_instanced_arrays;var Hi,Sa,Qa,vn,da;for(zt.setVAO(null),Hi=_.location,Sa=Pt[Hi],Sa.buffer||xe.enableVertexAttribArray(Hi),(Sa.type!==5126||Sa.size!==1||Sa.buffer!==p||Sa.normalized!==!1||Sa.offset!==0||Sa.stride!==8)&&(xe.bindBuffer(34962,p.buffer),xe.vertexAttribPointer(Hi,1,5126,!1,8,0),Sa.type=5126,Sa.size=1,Sa.buffer=p,Sa.normalized=!1,Sa.offset=0,Sa.stride=8),Sa.divisor!==0&&(Mn.vertexAttribDivisorANGLE(Hi,0),Sa.divisor=0),Qa=b.location,vn=Pt[Qa],vn.buffer||xe.enableVertexAttribArray(Qa),(vn.type!==5126||vn.size!==1||vn.buffer!==p||vn.normalized!==!1||vn.offset!==4||vn.stride!==8)&&(xe.bindBuffer(34962,p.buffer),xe.vertexAttribPointer(Qa,1,5126,!1,8,4),vn.type=5126,vn.size=1,vn.buffer=p,vn.normalized=!1,vn.offset=4,vn.stride=8),vn.divisor!==0&&(Mn.vertexAttribDivisorANGLE(Qa,0),vn.divisor=0),da=ge.elements,da?xe.bindBuffer(34963,da.buffer.buffer):zt.currentVAO&&(da=fe.getElements(zt.currentVAO.elements),da&&xe.bindBuffer(34963,da.buffer.buffer)),Un=0;Un0?bi.constant[0]:0,Vn=bi.constant.length>1?bi.constant[1]:0,wo=bi.constant.length>2?bi.constant[2]:0,Ra=bi.constant.length>3?bi.constant[3]:0)):(Rr(bi.buffer)?Xn=pe.createStream(34962,bi.buffer):Xn=pe.getBuffer(bi.buffer),Ka="type"in bi?Ii[bi.type]:Xn.dtype,$n=!!bi.normalized,un=bi.size|0,qn=bi.offset|0,Eo=bi.stride|0,Ja=bi.divisor|0)),lo=f.location,eo=Pt[lo],Ya===1?(eo.buffer||xe.enableVertexAttribArray(lo),sa=un||4,(eo.type!==Ka||eo.size!==sa||eo.buffer!==Xn||eo.normalized!==$n||eo.offset!==qn||eo.stride!==Eo)&&(xe.bindBuffer(34962,Xn.buffer),xe.vertexAttribPointer(lo,sa,Ka,$n,Eo,qn),eo.type=Ka,eo.size=sa,eo.buffer=Xn,eo.normalized=$n,eo.offset=qn,eo.stride=Eo),eo.divisor!==Ja&&(Mn.vertexAttribDivisorANGLE(lo,Ja),eo.divisor=Ja)):(eo.buffer&&(xe.disableVertexAttribArray(lo),eo.buffer=null),(eo.x!==_n||eo.y!==Vn||eo.z!==wo||eo.w!==Ra)&&(xe.vertexAttrib4f(lo,_n,Vn,wo,Ra),eo.x=_n,eo.y=Vn,eo.z=wo,eo.w=Ra)),es=Ga.positionBuffer,tr.buffer=es,Na=!1,rn=1,Pa=0,to=0,yo=0,Jo=0,To=null,Dn=0,_a=!1,Ws=5126,Ca=0,Es=0,As=0,Rr(tr)?(Na=!0,To=pe.createStream(34962,tr),Ws=To.dtype):(To=pe.getBuffer(tr),To?Ws=To.dtype:"constant"in tr?(rn=2,typeof tr.constant=="number"?(Pa=tr.constant,to=yo=Jo=0):(Pa=tr.constant.length>0?tr.constant[0]:0,to=tr.constant.length>1?tr.constant[1]:0,yo=tr.constant.length>2?tr.constant[2]:0,Jo=tr.constant.length>3?tr.constant[3]:0)):(Rr(tr.buffer)?To=pe.createStream(34962,tr.buffer):To=pe.getBuffer(tr.buffer),Ws="type"in tr?Ii[tr.type]:To.dtype,_a=!!tr.normalized,Dn=tr.size|0,Ca=tr.offset|0,Es=tr.stride|0,As=tr.divisor|0)),Ho=c.location,Wa=Pt[Ho],rn===1?(Wa.buffer||xe.enableVertexAttribArray(Ho),Ao=Dn||2,(Wa.type!==Ws||Wa.size!==Ao||Wa.buffer!==To||Wa.normalized!==_a||Wa.offset!==Ca||Wa.stride!==Es)&&(xe.bindBuffer(34962,To.buffer),xe.vertexAttribPointer(Ho,Ao,Ws,_a,Es,Ca),Wa.type=Ws,Wa.size=Ao,Wa.buffer=To,Wa.normalized=_a,Wa.offset=Ca,Wa.stride=Es),Wa.divisor!==As&&(Mn.vertexAttribDivisorANGLE(Ho,As),Wa.divisor=As)):(Wa.buffer&&(xe.disableVertexAttribArray(Ho),Wa.buffer=null),(Wa.x!==Pa||Wa.y!==to||Wa.z!==yo||Wa.w!==Jo)&&(xe.vertexAttrib4f(Ho,Pa,to,yo,Jo),Wa.x=Pa,Wa.y=to,Wa.z=yo,Wa.w=Jo)),ts=Ga.colorBuffer,Xr.buffer=ts,Wo=!1,qa=1,ln=0,Bo=0,ko=0,oo=0,za=null,ea=0,rs=!1,$s=5126,us=0,Ds=0,fl=0,Rr(Xr)?(Wo=!0,za=pe.createStream(34962,Xr),$s=za.dtype):(za=pe.getBuffer(Xr),za?$s=za.dtype:"constant"in Xr?(qa=2,typeof Xr.constant=="number"?(ln=Xr.constant,Bo=ko=oo=0):(ln=Xr.constant.length>0?Xr.constant[0]:0,Bo=Xr.constant.length>1?Xr.constant[1]:0,ko=Xr.constant.length>2?Xr.constant[2]:0,oo=Xr.constant.length>3?Xr.constant[3]:0)):(Rr(Xr.buffer)?za=pe.createStream(34962,Xr.buffer):za=pe.getBuffer(Xr.buffer),$s="type"in Xr?Ii[Xr.type]:za.dtype,rs=!!Xr.normalized,ea=Xr.size|0,us=Xr.offset|0,Ds=Xr.stride|0,fl=Xr.divisor|0)),as=h.location,Ma=Pt[as],qa===1?(Ma.buffer||xe.enableVertexAttribArray(as),Qs=ea||4,(Ma.type!==$s||Ma.size!==Qs||Ma.buffer!==za||Ma.normalized!==rs||Ma.offset!==us||Ma.stride!==Ds)&&(xe.bindBuffer(34962,za.buffer),xe.vertexAttribPointer(as,Qs,$s,rs,Ds,us),Ma.type=$s,Ma.size=Qs,Ma.buffer=za,Ma.normalized=rs,Ma.offset=us,Ma.stride=Ds),Ma.divisor!==fl&&(Mn.vertexAttribDivisorANGLE(as,fl),Ma.divisor=fl)):(Ma.buffer&&(xe.disableVertexAttribArray(as),Ma.buffer=null),(Ma.x!==ln||Ma.y!==Bo||Ma.z!==ko||Ma.w!==oo)&&(xe.vertexAttrib4f(as,ln,Bo,ko,oo),Ma.x=ln,Ma.y=Bo,Ma.z=ko,Ma.w=oo)),ho=Ga.positionBuffer,pr.buffer=ho,gs=!1,Vo=1,Do=0,Lo=0,xs=0,ks=0,Ea=null,Jn=0,Oo=!1,rl=5126,Gs=0,bs=0,zs=0,Rr(pr)?(gs=!0,Ea=pe.createStream(34962,pr),rl=Ea.dtype):(Ea=pe.getBuffer(pr),Ea?rl=Ea.dtype:"constant"in pr?(Vo=2,typeof pr.constant=="number"?(Do=pr.constant,Lo=xs=ks=0):(Do=pr.constant.length>0?pr.constant[0]:0,Lo=pr.constant.length>1?pr.constant[1]:0,xs=pr.constant.length>2?pr.constant[2]:0,ks=pr.constant.length>3?pr.constant[3]:0)):(Rr(pr.buffer)?Ea=pe.createStream(34962,pr.buffer):Ea=pe.getBuffer(pr.buffer),rl="type"in pr?Ii[pr.type]:Ea.dtype,Oo=!!pr.normalized,Jn=pr.size|0,Gs=pr.offset|0,bs=pr.stride|0,zs=pr.divisor|0)),$o=d.location,Ta=Pt[$o],Vo===1?(Ta.buffer||xe.enableVertexAttribArray($o),os=Jn||2,(Ta.type!==rl||Ta.size!==os||Ta.buffer!==Ea||Ta.normalized!==Oo||Ta.offset!==Gs||Ta.stride!==bs)&&(xe.bindBuffer(34962,Ea.buffer),xe.vertexAttribPointer($o,os,rl,Oo,bs,Gs),Ta.type=rl,Ta.size=os,Ta.buffer=Ea,Ta.normalized=Oo,Ta.offset=Gs,Ta.stride=bs),Ta.divisor!==zs&&(Mn.vertexAttribDivisorANGLE($o,zs),Ta.divisor=zs)):(Ta.buffer&&(xe.disableVertexAttribArray($o),Ta.buffer=null),(Ta.x!==Do||Ta.y!==Lo||Ta.z!==xs||Ta.w!==ks)&&(xe.vertexAttrib4f($o,Do,Lo,xs,ks),Ta.x=Do,Ta.y=Lo,Ta.z=xs,Ta.w=ks)),_l=Ga.positionBuffer,gr.buffer=_l,Ss=!1,po=1,go=0,ss=0,qo=0,zo=0,io=null,Io=0,Da=!1,vs=5126,fs=0,cl=0,el=0,Rr(gr)?(Ss=!0,io=pe.createStream(34962,gr),vs=io.dtype):(io=pe.getBuffer(gr),io?vs=io.dtype:"constant"in gr?(po=2,typeof gr.constant=="number"?(go=gr.constant,ss=qo=zo=0):(go=gr.constant.length>0?gr.constant[0]:0,ss=gr.constant.length>1?gr.constant[1]:0,qo=gr.constant.length>2?gr.constant[2]:0,zo=gr.constant.length>3?gr.constant[3]:0)):(Rr(gr.buffer)?io=pe.createStream(34962,gr.buffer):io=pe.getBuffer(gr.buffer),vs="type"in gr?Ii[gr.type]:io.dtype,Da=!!gr.normalized,Io=gr.size|0,fs=gr.offset|0,cl=gr.stride|0,el=gr.divisor|0)),Hs=v.location,Ro=Pt[Hs],po===1?(Ro.buffer||xe.enableVertexAttribArray(Hs),tl=Io||2,(Ro.type!==vs||Ro.size!==tl||Ro.buffer!==io||Ro.normalized!==Da||Ro.offset!==fs||Ro.stride!==cl)&&(xe.bindBuffer(34962,io.buffer),xe.vertexAttribPointer(Hs,tl,vs,Da,cl,fs),Ro.type=vs,Ro.size=tl,Ro.buffer=io,Ro.normalized=Da,Ro.offset=fs,Ro.stride=cl),Ro.divisor!==el&&(Mn.vertexAttribDivisorANGLE(Hs,el),Ro.divisor=el)):(Ro.buffer&&(xe.disableVertexAttribArray(Hs),Ro.buffer=null),(Ro.x!==go||Ro.y!==ss||Ro.z!==qo||Ro.w!==zo)&&(xe.vertexAttrib4f(Hs,go,ss,qo,zo),Ro.x=go,Ro.y=ss,Ro.z=qo,Ro.w=zo)),Fs=Ga.positionBuffer,ct.buffer=Fs,hl=!1,Fa=1,Ms=0,jo=0,Rs=0,Is=0,Bs=null,At=0,Vt=!1,wr=5126,mr=0,Fr=0,_i=0,Rr(ct)?(hl=!0,Bs=pe.createStream(34962,ct),wr=Bs.dtype):(Bs=pe.getBuffer(ct),Bs?wr=Bs.dtype:"constant"in ct?(Fa=2,typeof ct.constant=="number"?(Ms=ct.constant,jo=Rs=Is=0):(Ms=ct.constant.length>0?ct.constant[0]:0,jo=ct.constant.length>1?ct.constant[1]:0,Rs=ct.constant.length>2?ct.constant[2]:0,Is=ct.constant.length>3?ct.constant[3]:0)):(Rr(ct.buffer)?Bs=pe.createStream(34962,ct.buffer):Bs=pe.getBuffer(ct.buffer),wr="type"in ct?Ii[ct.type]:Bs.dtype,Vt=!!ct.normalized,At=ct.size|0,mr=ct.offset|0,Fr=ct.stride|0,_i=ct.divisor|0)),Si=k.location,Ci=Pt[Si],Fa===1?(Ci.buffer||xe.enableVertexAttribArray(Si),Ki=At||2,(Ci.type!==wr||Ci.size!==Ki||Ci.buffer!==Bs||Ci.normalized!==Vt||Ci.offset!==mr||Ci.stride!==Fr)&&(xe.bindBuffer(34962,Bs.buffer),xe.vertexAttribPointer(Si,Ki,wr,Vt,Fr,mr),Ci.type=wr,Ci.size=Ki,Ci.buffer=Bs,Ci.normalized=Vt,Ci.offset=mr,Ci.stride=Fr),Ci.divisor!==_i&&(Mn.vertexAttribDivisorANGLE(Si,_i),Ci.divisor=_i)):(Ci.buffer&&(xe.disableVertexAttribArray(Si),Ci.buffer=null),(Ci.x!==Ms||Ci.y!==jo||Ci.z!==Rs||Ci.w!==Is)&&(xe.vertexAttrib4f(Si,Ms,jo,Rs,Is),Ci.x=Ms,Ci.y=jo,Ci.z=Rs,Ci.w=Is)),Fn=Ga.dashLength,(!Un||Pi!==Fn)&&(Pi=Fn,xe.uniform1f(E.location,Fn)),di=Ga.dashTexture,di&&di._reglType==="framebuffer"&&(di=di.color[0]),Li=di._texture,xe.uniform1i(A.location,Li.bind()),Mi=Ga.depth,(!Un||Gn!==Mi)&&(Gn=Mi,xe.uniform1f(L.location,Mi)),ta=Ga.miterLimit,(!Un||ya!==ta)&&(ya=ta,xe.uniform1f(x.location,ta)),ia=M.call(this,Oe,Ga,Un),(!Un||pa!==ia)&&(pa=ia,xe.uniform1f(C.location,ia)),va=Ga.opacity,(!Un||zn!==va)&&(zn=va,xe.uniform1f(m.location,va)),is=Ga.scale,Cs=is[0],dl=is[1],(!Un||Ks!==Cs||xl!==dl)&&(Ks=Cs,xl=dl,xe.uniform2f(P.location,Cs,dl)),Bl=Ga.thickness,(!Un||bl!==Bl)&&(bl=Bl,xe.uniform1f(T.location,Bl)),eu=Ga.translate,Zl=eu[0],ja=eu[1],(!Un||Ul!==Zl||ns!==ja)&&(Ul=Zl,ns=ja,xe.uniform2f(B.location,Zl,ja)),Js=U.call(this,Oe,Ga,Un),cs=Js[0],ll=Js[1],zl=Js[2],Rl=Js[3],(!Un||sl!==cs||il!==ll||Ml!==zl||Tl!==Rl)&&(sl=cs,il=ll,Ml=zl,Tl=Rl,xe.uniform4f(F.location,cs,ll,zl,Rl)),Ll=Ga.count,Ll>0?da?Mn.drawElementsInstancedANGLE(5,4,da.type,0<<(da.type-5121>>1),Ll):Mn.drawArraysInstancedANGLE(5,0,4,Ll):Ll<0&&(da?xe.drawElements(5,4,da.type,0<<(da.type-5121>>1)):xe.drawArrays(5,0,4)),Oe.viewportWidth=mo,Oe.viewportHeight=No,Vs&&pe.destroyStream(Xn),Na&&pe.destroyStream(To),Wo&&pe.destroyStream(za),gs&&pe.destroyStream(Ea),Ss&&pe.destroyStream(io),hl&&pe.destroyStream(Bs),Li.unbind()}ft.dirty=!0,zt.setVAO(null),Xi&&(r.cpuTime+=performance.now()-aa)}}}});var P8=Ae((Hxr,JNe)=>{JNe.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je){"use strict";var nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai;return nt=t.gl,gt=t.context,Nt=t.strings,at=t.next,Ke=t.current,Ct=t.draw,wt=t.elements,St=t.buffer,Dt=t.shader,Zt=t.attributes,Et=t.vao,Te=t.uniforms,ot=t.framebuffer,Tt=t.extensions,vt=t.timer,Ye=t.isBufferArgs,He=at.blend_color,it=Ke.blend_color,et=at.blend_equation,It=Ke.blend_equation,Yt=at.blend_func,cr=Ke.blend_func,_r=at.depth_range,yr=Ke.depth_range,Ut=at.colorMask,Re=Ke.colorMask,xe=at.polygonOffset_offset,Oe=Ke.polygonOffset_offset,Ie=at.sample_coverage,Fe=Ke.sample_coverage,ft=at.stencil_func,ge=Ke.stencil_func,fe=at.stencil_opFront,pe=Ke.stencil_opFront,dt=at.stencil_opBack,Pt=Ke.stencil_opBack,zt=at.scissor_box,rr=Ke.scissor_box,Gr=at.viewport,Br=Ke.viewport,Er={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Rr={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},pi={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Di={add:32774,subtract:32778,"reverse subtract":32779},ni={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},$i={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Qi={cw:2304,ccw:2305},si={},si.stride=8,si.offset=8,Ai={},Ai.stride=8,Ai.offset=8,{draw:function(Ni){var Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo;if(Rt=Tt.angle_instanced_arrays,yt=ot.next,yt!==ot.cur&&(yt?nt.bindFramebuffer(36160,yt.framebuffer):nt.bindFramebuffer(36160,null),ot.cur=yt),Ke.dirty){var Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa;Ts=at.dither,Ts!==Ke.dither&&(Ts?nt.enable(3024):nt.disable(3024),Ke.dither=Ts),ps=at.depth_func,ps!==Ke.depth_func&&(nt.depthFunc(ps),Ke.depth_func=ps),co=_r[0],mo=_r[1],(co!==yr[0]||mo!==yr[1])&&(nt.depthRange(co,mo),yr[0]=co,yr[1]=mo),No=at.depth_mask,No!==Ke.depth_mask&&(nt.depthMask(No),Ke.depth_mask=No),jn=Ut[0],Go=Ut[1],Ys=Ut[2],qs=Ut[3],(jn!==Re[0]||Go!==Re[1]||Ys!==Re[2]||qs!==Re[3])&&(nt.colorMask(jn,Go,Ys,qs),Re[0]=jn,Re[1]=Go,Re[2]=Ys,Re[3]=qs),Ns=at.cull_enable,Ns!==Ke.cull_enable&&(Ns?nt.enable(2884):nt.disable(2884),Ke.cull_enable=Ns),Oa=at.cull_face,Oa!==Ke.cull_face&&(nt.cullFace(Oa),Ke.cull_face=Oa),ha=at.frontFace,ha!==Ke.frontFace&&(nt.frontFace(ha),Ke.frontFace=ha),Vs=at.lineWidth,Vs!==Ke.lineWidth&&(nt.lineWidth(Vs),Ke.lineWidth=Vs),Ya=at.polygonOffset_enable,Ya!==Ke.polygonOffset_enable&&(Ya?nt.enable(32823):nt.disable(32823),Ke.polygonOffset_enable=Ya),_n=xe[0],Vn=xe[1],(_n!==Oe[0]||Vn!==Oe[1])&&(nt.polygonOffset(_n,Vn),Oe[0]=_n,Oe[1]=Vn),wo=at.sample_alpha,wo!==Ke.sample_alpha&&(wo?nt.enable(32926):nt.disable(32926),Ke.sample_alpha=wo),Ra=at.sample_enable,Ra!==Ke.sample_enable&&(Ra?nt.enable(32928):nt.disable(32928),Ke.sample_enable=Ra),Xn=Ie[0],un=Ie[1],(Xn!==Fe[0]||un!==Fe[1])&&(nt.sampleCoverage(Xn,un),Fe[0]=Xn,Fe[1]=un),$n=at.stencil_mask,$n!==Ke.stencil_mask&&(nt.stencilMask($n),Ke.stencil_mask=$n),Ka=ft[0],qn=ft[1],Eo=ft[2],(Ka!==ge[0]||qn!==ge[1]||Eo!==ge[2])&&(nt.stencilFunc(Ka,qn,Eo),ge[0]=Ka,ge[1]=qn,ge[2]=Eo),Ja=fe[0],lo=fe[1],eo=fe[2],sa=fe[3],(Ja!==pe[0]||lo!==pe[1]||eo!==pe[2]||sa!==pe[3])&&(nt.stencilOpSeparate(Ja,lo,eo,sa),pe[0]=Ja,pe[1]=lo,pe[2]=eo,pe[3]=sa),es=dt[0],Na=dt[1],rn=dt[2],Pa=dt[3],(es!==Pt[0]||Na!==Pt[1]||rn!==Pt[2]||Pa!==Pt[3])&&(nt.stencilOpSeparate(es,Na,rn,Pa),Pt[0]=es,Pt[1]=Na,Pt[2]=rn,Pt[3]=Pa)}Gt=Ni.viewport,Wt=Gt.x|0,xr=Gt.y|0,Lr="width"in Gt?Gt.width|0:gt.framebufferWidth-Wt,Nr="height"in Gt?Gt.height|0:gt.framebufferHeight-xr,Or=gt.viewportWidth,gt.viewportWidth=Lr,Hr=gt.viewportHeight,gt.viewportHeight=Nr,nt.viewport(Wt,xr,Lr,Nr),Br[0]=Wt,Br[1]=xr,Br[2]=Lr,Br[3]=Nr,nt.blendColor(0,0,0,0),it[0]=0,it[1]=0,it[2]=0,it[3]=0,n?nt.enable(3042):nt.disable(3042),Ke.blend_enable=n,nt.blendEquationSeparate(32774,32774),It[0]=32774,It[1]=32774,nt.blendFuncSeparate(770,771,773,1),cr[0]=770,cr[1]=771,cr[2]=773,cr[3]=1,i?nt.enable(2929):nt.disable(2929),Ke.depth_enable=i,jr=Ni.viewport,gi=jr.x|0,ki=jr.y|0,Vi="width"in jr?jr.width|0:gt.framebufferWidth-gi,ti="height"in jr?jr.height|0:gt.framebufferHeight-ki,nt.scissor(gi,ki,Vi,ti),rr[0]=gi,rr[1]=ki,rr[2]=Vi,rr[3]=ti,a?nt.enable(3089):nt.disable(3089),Ke.scissor_enable=a,o?nt.enable(2960):nt.disable(2960),Ke.stencil_enable=o,tn=Ke.profile,tn&&(Yr=performance.now(),r.count++),nt.useProgram(s.program),oi=Tt.angle_instanced_arrays,Et.setVAO(null),Fi=Ni.positionBuffer,si.buffer=Fi,an=!1,nn=1,Ri=0,Ii=0,xn=0,bi=0,Xr=null,ct=0,tr=!1,pr=5126,gr=0,Zr=0,Ti=0,Ye(si)?(an=!0,Xr=St.createStream(34962,si),pr=Xr.dtype):(Xr=St.getBuffer(si),Xr?pr=Xr.dtype:"constant"in si?(nn=2,typeof si.constant=="number"?(Ri=si.constant,Ii=xn=bi=0):(Ri=si.constant.length>0?si.constant[0]:0,Ii=si.constant.length>1?si.constant[1]:0,xn=si.constant.length>2?si.constant[2]:0,bi=si.constant.length>3?si.constant[3]:0)):(Ye(si.buffer)?Xr=St.createStream(34962,si.buffer):Xr=St.getBuffer(si.buffer),pr="type"in si?$i[si.type]:Xr.dtype,tr=!!si.normalized,ct=si.size|0,gr=si.offset|0,Zr=si.stride|0,Ti=si.divisor|0)),en=u.location,ii=Zt[en],nn===1?(ii.buffer||nt.enableVertexAttribArray(en),Xi=ct||2,(ii.type!==pr||ii.size!==Xi||ii.buffer!==Xr||ii.normalized!==tr||ii.offset!==gr||ii.stride!==Zr)&&(nt.bindBuffer(34962,Xr.buffer),nt.vertexAttribPointer(en,Xi,pr,tr,Zr,gr),ii.type=pr,ii.size=Xi,ii.buffer=Xr,ii.normalized=tr,ii.offset=gr,ii.stride=Zr),ii.divisor!==Ti&&(oi.vertexAttribDivisorANGLE(en,Ti),ii.divisor=Ti)):(ii.buffer&&(nt.disableVertexAttribArray(en),ii.buffer=null),(ii.x!==Ri||ii.y!==Ii||ii.z!==xn||ii.w!==bi)&&(nt.vertexAttrib4f(en,Ri,Ii,xn,bi),ii.x=Ri,ii.y=Ii,ii.z=xn,ii.w=bi)),aa=Ni.positionFractBuffer,Ai.buffer=aa,Mn=!1,Un=1,Ga=0,ma=0,oa=0,ka=0,so=null,Kr=0,Ia=!1,Yo=5126,fa=0,kn=0,Aa=0,Ye(Ai)?(Mn=!0,so=St.createStream(34962,Ai),Yo=so.dtype):(so=St.getBuffer(Ai),so?Yo=so.dtype:"constant"in Ai?(Un=2,typeof Ai.constant=="number"?(Ga=Ai.constant,ma=oa=ka=0):(Ga=Ai.constant.length>0?Ai.constant[0]:0,ma=Ai.constant.length>1?Ai.constant[1]:0,oa=Ai.constant.length>2?Ai.constant[2]:0,ka=Ai.constant.length>3?Ai.constant[3]:0)):(Ye(Ai.buffer)?so=St.createStream(34962,Ai.buffer):so=St.getBuffer(Ai.buffer),Yo="type"in Ai?$i[Ai.type]:so.dtype,Ia=!!Ai.normalized,Kr=Ai.size|0,fa=Ai.offset|0,kn=Ai.stride|0,Aa=Ai.divisor|0)),ys=l.location,uo=Zt[ys],Un===1?(uo.buffer||nt.enableVertexAttribArray(ys),ls=Kr||2,(uo.type!==Yo||uo.size!==ls||uo.buffer!==so||uo.normalized!==Ia||uo.offset!==fa||uo.stride!==kn)&&(nt.bindBuffer(34962,so.buffer),nt.vertexAttribPointer(ys,ls,Yo,Ia,kn,fa),uo.type=Yo,uo.size=ls,uo.buffer=so,uo.normalized=Ia,uo.offset=fa,uo.stride=kn),uo.divisor!==Aa&&(oi.vertexAttribDivisorANGLE(ys,Aa),uo.divisor=Aa)):(uo.buffer&&(nt.disableVertexAttribArray(ys),uo.buffer=null),(uo.x!==Ga||uo.y!==ma||uo.z!==oa||uo.w!==ka)&&(nt.vertexAttrib4f(ys,Ga,ma,oa,ka),uo.x=Ga,uo.y=ma,uo.z=oa,uo.w=ka)),$a=Ni.fill,fo=$a[0],mn=$a[1],ra=$a[2],wa=$a[3],nt.uniform4f(f.location,fo,mn,ra,wa),ws=Ni.id,nt.uniform1f(c.location,ws),Co=Ni.opacity,nt.uniform1f(h.location,Co),Po=Ni.scale,Wi=Po[0],gn=Po[1],nt.uniform2f(d.location,Wi,gn),Ps=Ni.scaleFract,Ha=Ps[0],Sn=Ps[1],nt.uniform2f(p.location,Ha,Sn),ao=Ni.translate,Ba=ao[0],Ko=ao[1],nt.uniform2f(_.location,Ba,Ko),Qo=Ni.translateFract,Hi=Qo[0],Sa=Qo[1],nt.uniform2f(b.location,Hi,Sa),Qa=v.call(this,gt,Ni,0),vn=null,da=Ye(Qa),da?vn=wt.createStream(Qa):vn=wt.getElements(Qa),vn&&nt.bindBuffer(34963,vn.buffer.buffer),la=vn?vn.vertCount:-1,la&&(vo=Ct.instances,vo>0?vn?oi.drawElementsInstancedANGLE(4,la,vn.type,0<<(vn.type-5121>>1),vo):oi.drawArraysInstancedANGLE(4,0,la,vo):vo<0&&(vn?nt.drawElements(4,la,vn.type,0<<(vn.type-5121>>1)):nt.drawArrays(4,0,la)),Ke.dirty=!0,Et.setVAO(null),gt.viewportWidth=Or,gt.viewportHeight=Hr,tn&&(r.cpuTime+=performance.now()-Yr),an&&St.destroyStream(Xr),Mn&&St.destroyStream(so),da&&wt.destroyStream(vn))},scope:function(Ni,Rt,yt){var Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho;Gt=Ni.viewport,Wt=Gt.x|0,xr=Gt.y|0,Lr="width"in Gt?Gt.width|0:gt.framebufferWidth-Wt,Nr="height"in Gt?Gt.height|0:gt.framebufferHeight-xr,Or=gt.viewportWidth,gt.viewportWidth=Lr,Hr=gt.viewportHeight,gt.viewportHeight=Nr,jr=Gr[0],Gr[0]=Wt,gi=Gr[1],Gr[1]=xr,ki=Gr[2],Gr[2]=Lr,Vi=Gr[3],Gr[3]=Nr,ti=He[0],He[0]=k,tn=He[1],He[1]=E,Yr=He[2],He[2]=A,oi=He[3],He[3]=L,Fi=at.blend_enable,at.blend_enable=x,an=et[0],et[0]=C,nn=et[1],et[1]=M,Ri=Yt[0],Yt[0]=m,Ii=Yt[1],Yt[1]=P,xn=Yt[2],Yt[2]=T,bi=Yt[3],Yt[3]=B,Xr=at.depth_enable,at.depth_enable=F,ct=Ni.viewport,tr=ct.x|0,pr=ct.y|0,gr="width"in ct?ct.width|0:gt.framebufferWidth-tr,Zr="height"in ct?ct.height|0:gt.framebufferHeight-pr,Ti=zt[0],zt[0]=tr,en=zt[1],zt[1]=pr,ii=zt[2],zt[2]=gr,Xi=zt[3],zt[3]=Zr,aa=at.scissor_enable,at.scissor_enable=U,Mn=at.stencil_enable,at.stencil_enable=G,Un=Ke.profile,Un&&(Ga=performance.now(),r.count++),ma=v.call(this,gt,Ni,yt),oa=null,ka=Ye(ma),ka?oa=wt.createStream(ma):oa=wt.getElements(ma),so=Ct.elements,Ct.elements=oa,Kr=Ct.offset,Ct.offset=j,Ia=oa?oa.vertCount:-1,Yo=Ct.count,Ct.count=Ia,fa=Ct.primitive,Ct.primitive=H,kn=Ni.scale,Aa=Te[N],Te[N]=kn,ys=Ni.fill,uo=Te[W],Te[W]=ys,ls=Ni.scaleFract,$a=Te[re],Te[re]=ls,fo=Ni.translateFract,mn=Te[ae],Te[ae]=fo,ra=Ni.translate,wa=Te[be],Te[be]=ra,ws=Ni.opacity,Co=Te[ze],Te[ze]=ws,Po=gt.pixelRatio,Wi=Te[Ce],Te[Ce]=Po,gn=Ni.id,Ps=Te[de],Te[de]=gn,Ha=te.call(this,gt,Ni,yt),Sn=Te[ke],Te[ke]=Ha,ao=Ni.positionBuffer,si.buffer=ao,Ba=!1,Ko=1,Qo=0,Hi=0,Sa=0,Qa=0,vn=null,da=0,la=!1,vo=5126,Ts=0,ps=0,co=0,Ye(si)?(Ba=!0,vn=St.createStream(34962,si),vo=vn.dtype):(vn=St.getBuffer(si),vn?vo=vn.dtype:"constant"in si?(Ko=2,typeof si.constant=="number"?(Qo=si.constant,Hi=Sa=Qa=0):(Qo=si.constant.length>0?si.constant[0]:0,Hi=si.constant.length>1?si.constant[1]:0,Sa=si.constant.length>2?si.constant[2]:0,Qa=si.constant.length>3?si.constant[3]:0)):(Ye(si.buffer)?vn=St.createStream(34962,si.buffer):vn=St.getBuffer(si.buffer),vo="type"in si?$i[si.type]:vn.dtype,la=!!si.normalized,da=si.size|0,Ts=si.offset|0,ps=si.stride|0,co=si.divisor|0)),mo=Ee.state,Ee.state=Ko,No=Ee.x,Ee.x=Qo,jn=Ee.y,Ee.y=Hi,Go=Ee.z,Ee.z=Sa,Ys=Ee.w,Ee.w=Qa,qs=Ee.buffer,Ee.buffer=vn,Ns=Ee.size,Ee.size=da,Oa=Ee.normalized,Ee.normalized=la,ha=Ee.type,Ee.type=vo,Vs=Ee.offset,Ee.offset=Ts,Ya=Ee.stride,Ee.stride=ps,_n=Ee.divisor,Ee.divisor=co,Vn=Ni.positionFractBuffer,Ai.buffer=Vn,wo=!1,Ra=1,Xn=0,un=0,$n=0,Ka=0,qn=null,Eo=0,Ja=!1,lo=5126,eo=0,sa=0,es=0,Ye(Ai)?(wo=!0,qn=St.createStream(34962,Ai),lo=qn.dtype):(qn=St.getBuffer(Ai),qn?lo=qn.dtype:"constant"in Ai?(Ra=2,typeof Ai.constant=="number"?(Xn=Ai.constant,un=$n=Ka=0):(Xn=Ai.constant.length>0?Ai.constant[0]:0,un=Ai.constant.length>1?Ai.constant[1]:0,$n=Ai.constant.length>2?Ai.constant[2]:0,Ka=Ai.constant.length>3?Ai.constant[3]:0)):(Ye(Ai.buffer)?qn=St.createStream(34962,Ai.buffer):qn=St.getBuffer(Ai.buffer),lo="type"in Ai?$i[Ai.type]:qn.dtype,Ja=!!Ai.normalized,Eo=Ai.size|0,eo=Ai.offset|0,sa=Ai.stride|0,es=Ai.divisor|0)),Na=Me.state,Me.state=Ra,rn=Me.x,Me.x=Xn,Pa=Me.y,Me.y=un,to=Me.z,Me.z=$n,yo=Me.w,Me.w=Ka,Jo=Me.buffer,Me.buffer=qn,To=Me.size,Me.size=Eo,Dn=Me.normalized,Me.normalized=Ja,_a=Me.type,Me.type=lo,Ws=Me.offset,Me.offset=eo,Ca=Me.stride,Me.stride=sa,Es=Me.divisor,Me.divisor=es,As=Dt.vert,Dt.vert=Ue,Ho=Dt.frag,Dt.frag=De,Ke.dirty=!0,Rt(gt,Ni,yt),gt.viewportWidth=Or,gt.viewportHeight=Hr,Gr[0]=jr,Gr[1]=gi,Gr[2]=ki,Gr[3]=Vi,He[0]=ti,He[1]=tn,He[2]=Yr,He[3]=oi,at.blend_enable=Fi,et[0]=an,et[1]=nn,Yt[0]=Ri,Yt[1]=Ii,Yt[2]=xn,Yt[3]=bi,at.depth_enable=Xr,zt[0]=Ti,zt[1]=en,zt[2]=ii,zt[3]=Xi,at.scissor_enable=aa,at.stencil_enable=Mn,Un&&(r.cpuTime+=performance.now()-Ga),ka&&wt.destroyStream(oa),Ct.elements=so,Ct.offset=Kr,Ct.count=Yo,Ct.primitive=fa,Te[N]=Aa,Te[W]=uo,Te[re]=$a,Te[ae]=mn,Te[be]=wa,Te[ze]=Co,Te[Ce]=Wi,Te[de]=Ps,Te[ke]=Sn,Ba&&St.destroyStream(vn),Ee.state=mo,Ee.x=No,Ee.y=jn,Ee.z=Go,Ee.w=Ys,Ee.buffer=qs,Ee.size=Ns,Ee.normalized=Oa,Ee.type=ha,Ee.offset=Vs,Ee.stride=Ya,Ee.divisor=_n,wo&&St.destroyStream(qn),Me.state=Na,Me.x=rn,Me.y=Pa,Me.z=to,Me.w=yo,Me.buffer=Jo,Me.size=To,Me.normalized=Dn,Me.type=_a,Me.offset=Ws,Me.stride=Ca,Me.divisor=Es,Dt.vert=As,Dt.frag=Ho,Ke.dirty=!0},batch:function(Ni,Rt){var yt,Gt,Wt,xr,Lr,Nr,Or;if(yt=Tt.angle_instanced_arrays,Gt=ot.next,Gt!==ot.cur&&(Gt?nt.bindFramebuffer(36160,Gt.framebuffer):nt.bindFramebuffer(36160,null),ot.cur=Gt),Ke.dirty){var Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa;Hr=at.dither,Hr!==Ke.dither&&(Hr?nt.enable(3024):nt.disable(3024),Ke.dither=Hr),jr=at.depth_func,jr!==Ke.depth_func&&(nt.depthFunc(jr),Ke.depth_func=jr),gi=_r[0],ki=_r[1],(gi!==yr[0]||ki!==yr[1])&&(nt.depthRange(gi,ki),yr[0]=gi,yr[1]=ki),Vi=at.depth_mask,Vi!==Ke.depth_mask&&(nt.depthMask(Vi),Ke.depth_mask=Vi),ti=Ut[0],tn=Ut[1],Yr=Ut[2],oi=Ut[3],(ti!==Re[0]||tn!==Re[1]||Yr!==Re[2]||oi!==Re[3])&&(nt.colorMask(ti,tn,Yr,oi),Re[0]=ti,Re[1]=tn,Re[2]=Yr,Re[3]=oi),Fi=at.cull_enable,Fi!==Ke.cull_enable&&(Fi?nt.enable(2884):nt.disable(2884),Ke.cull_enable=Fi),an=at.cull_face,an!==Ke.cull_face&&(nt.cullFace(an),Ke.cull_face=an),nn=at.frontFace,nn!==Ke.frontFace&&(nt.frontFace(nn),Ke.frontFace=nn),Ri=at.lineWidth,Ri!==Ke.lineWidth&&(nt.lineWidth(Ri),Ke.lineWidth=Ri),Ii=at.polygonOffset_enable,Ii!==Ke.polygonOffset_enable&&(Ii?nt.enable(32823):nt.disable(32823),Ke.polygonOffset_enable=Ii),xn=xe[0],bi=xe[1],(xn!==Oe[0]||bi!==Oe[1])&&(nt.polygonOffset(xn,bi),Oe[0]=xn,Oe[1]=bi),Xr=at.sample_alpha,Xr!==Ke.sample_alpha&&(Xr?nt.enable(32926):nt.disable(32926),Ke.sample_alpha=Xr),ct=at.sample_enable,ct!==Ke.sample_enable&&(ct?nt.enable(32928):nt.disable(32928),Ke.sample_enable=ct),tr=Ie[0],pr=Ie[1],(tr!==Fe[0]||pr!==Fe[1])&&(nt.sampleCoverage(tr,pr),Fe[0]=tr,Fe[1]=pr),gr=at.stencil_mask,gr!==Ke.stencil_mask&&(nt.stencilMask(gr),Ke.stencil_mask=gr),Zr=ft[0],Ti=ft[1],en=ft[2],(Zr!==ge[0]||Ti!==ge[1]||en!==ge[2])&&(nt.stencilFunc(Zr,Ti,en),ge[0]=Zr,ge[1]=Ti,ge[2]=en),ii=fe[0],Xi=fe[1],aa=fe[2],Mn=fe[3],(ii!==pe[0]||Xi!==pe[1]||aa!==pe[2]||Mn!==pe[3])&&(nt.stencilOpSeparate(ii,Xi,aa,Mn),pe[0]=ii,pe[1]=Xi,pe[2]=aa,pe[3]=Mn),Un=dt[0],Ga=dt[1],ma=dt[2],oa=dt[3],(Un!==Pt[0]||Ga!==Pt[1]||ma!==Pt[2]||oa!==Pt[3])&&(nt.stencilOpSeparate(Un,Ga,ma,oa),Pt[0]=Un,Pt[1]=Ga,Pt[2]=ma,Pt[3]=oa)}nt.blendColor(0,0,0,0),it[0]=0,it[1]=0,it[2]=0,it[3]=0,ye?nt.enable(3042):nt.disable(3042),Ke.blend_enable=ye,nt.blendEquationSeparate(32774,32774),It[0]=32774,It[1]=32774,nt.blendFuncSeparate(770,771,773,1),cr[0]=770,cr[1]=771,cr[2]=773,cr[3]=1,qe?nt.enable(2929):nt.disable(2929),Ke.depth_enable=qe,ce?nt.enable(3089):nt.disable(3089),Ke.scissor_enable=ce,Je?nt.enable(2960):nt.disable(2960),Ke.stencil_enable=Je,Wt=Ke.profile,Wt&&(xr=performance.now(),r.count+=Rt),nt.useProgram(s.program),Lr=Tt.angle_instanced_arrays;var ka;for(Et.setVAO(null),ka=Ct.instances,Nr=0;Nr0?si.constant[0]:0,Co=si.constant.length>1?si.constant[1]:0,Po=si.constant.length>2?si.constant[2]:0,Wi=si.constant.length>3?si.constant[3]:0)):(Ye(si.buffer)?gn=St.createStream(34962,si.buffer):gn=St.getBuffer(si.buffer),Sn="type"in si?$i[si.type]:gn.dtype,Ha=!!si.normalized,Ps=si.size|0,ao=si.offset|0,Ba=si.stride|0,Ko=si.divisor|0)),Qo=u.location,Hi=Zt[Qo],wa===1?(Hi.buffer||nt.enableVertexAttribArray(Qo),Sa=Ps||2,(Hi.type!==Sn||Hi.size!==Sa||Hi.buffer!==gn||Hi.normalized!==Ha||Hi.offset!==ao||Hi.stride!==Ba)&&(nt.bindBuffer(34962,gn.buffer),nt.vertexAttribPointer(Qo,Sa,Sn,Ha,Ba,ao),Hi.type=Sn,Hi.size=Sa,Hi.buffer=gn,Hi.normalized=Ha,Hi.offset=ao,Hi.stride=Ba),Hi.divisor!==Ko&&(Lr.vertexAttribDivisorANGLE(Qo,Ko),Hi.divisor=Ko)):(Hi.buffer&&(nt.disableVertexAttribArray(Qo),Hi.buffer=null),(Hi.x!==ws||Hi.y!==Co||Hi.z!==Po||Hi.w!==Wi)&&(nt.vertexAttrib4f(Qo,ws,Co,Po,Wi),Hi.x=ws,Hi.y=Co,Hi.z=Po,Hi.w=Wi)),Qa=Or.positionFractBuffer,Ai.buffer=Qa,vn=!1,da=1,la=0,vo=0,Ts=0,ps=0,co=null,mo=0,No=!1,jn=5126,Go=0,Ys=0,qs=0,Ye(Ai)?(vn=!0,co=St.createStream(34962,Ai),jn=co.dtype):(co=St.getBuffer(Ai),co?jn=co.dtype:"constant"in Ai?(da=2,typeof Ai.constant=="number"?(la=Ai.constant,vo=Ts=ps=0):(la=Ai.constant.length>0?Ai.constant[0]:0,vo=Ai.constant.length>1?Ai.constant[1]:0,Ts=Ai.constant.length>2?Ai.constant[2]:0,ps=Ai.constant.length>3?Ai.constant[3]:0)):(Ye(Ai.buffer)?co=St.createStream(34962,Ai.buffer):co=St.getBuffer(Ai.buffer),jn="type"in Ai?$i[Ai.type]:co.dtype,No=!!Ai.normalized,mo=Ai.size|0,Go=Ai.offset|0,Ys=Ai.stride|0,qs=Ai.divisor|0)),Ns=l.location,Oa=Zt[Ns],da===1?(Oa.buffer||nt.enableVertexAttribArray(Ns),ha=mo||2,(Oa.type!==jn||Oa.size!==ha||Oa.buffer!==co||Oa.normalized!==No||Oa.offset!==Go||Oa.stride!==Ys)&&(nt.bindBuffer(34962,co.buffer),nt.vertexAttribPointer(Ns,ha,jn,No,Ys,Go),Oa.type=jn,Oa.size=ha,Oa.buffer=co,Oa.normalized=No,Oa.offset=Go,Oa.stride=Ys),Oa.divisor!==qs&&(Lr.vertexAttribDivisorANGLE(Ns,qs),Oa.divisor=qs)):(Oa.buffer&&(nt.disableVertexAttribArray(Ns),Oa.buffer=null),(Oa.x!==la||Oa.y!==vo||Oa.z!==Ts||Oa.w!==ps)&&(nt.vertexAttrib4f(Ns,la,vo,Ts,ps),Oa.x=la,Oa.y=vo,Oa.z=Ts,Oa.w=ps)),Vs=Or.fill,Ya=Vs[0],Vn=Vs[1],Ra=Vs[2],un=Vs[3],(!Nr||_n!==Ya||wo!==Vn||Xn!==Ra||$n!==un)&&(_n=Ya,wo=Vn,Xn=Ra,$n=un,nt.uniform4f(f.location,Ya,Vn,Ra,un)),Ka=Or.id,(!Nr||qn!==Ka)&&(qn=Ka,nt.uniform1f(c.location,Ka)),Eo=Or.opacity,(!Nr||Ja!==Eo)&&(Ja=Eo,nt.uniform1f(h.location,Eo)),lo=Or.scale,eo=lo[0],es=lo[1],(!Nr||sa!==eo||Na!==es)&&(sa=eo,Na=es,nt.uniform2f(d.location,eo,es)),rn=Or.scaleFract,Pa=rn[0],yo=rn[1],(!Nr||to!==Pa||Jo!==yo)&&(to=Pa,Jo=yo,nt.uniform2f(p.location,Pa,yo)),To=Or.translate,Dn=To[0],Ws=To[1],(!Nr||_a!==Dn||Ca!==Ws)&&(_a=Dn,Ca=Ws,nt.uniform2f(_.location,Dn,Ws)),Es=Or.translateFract,As=Es[0],Wa=Es[1],(!Nr||Ho!==As||Ao!==Wa)&&(Ho=As,Ao=Wa,nt.uniform2f(b.location,As,Wa)),ts=v.call(this,gt,Or,Nr),Wo=null,qa=Ye(ts),qa?Wo=wt.createStream(ts):Wo=wt.getElements(ts),Wo&&nt.bindBuffer(34963,Wo.buffer.buffer),ln=Wo?Wo.vertCount:-1,ln&&(ka>0?Wo?Lr.drawElementsInstancedANGLE(4,ln,Wo.type,0<<(Wo.type-5121>>1),ka):Lr.drawArraysInstancedANGLE(4,0,ln,ka):ka<0&&(Wo?nt.drawElements(4,ln,Wo.type,0<<(Wo.type-5121>>1)):nt.drawArrays(4,0,ln)),gt.viewportWidth=kn,gt.viewportHeight=Aa,ra&&St.destroyStream(gn),vn&&St.destroyStream(co),qa&&wt.destroyStream(Wo))}Ke.dirty=!0,Et.setVAO(null),Wt&&(r.cpuTime+=performance.now()-xr)}}}});var z8=Ae((Wxr,$Ne)=>{$Ne.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut){"use strict";var Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii;return Re=t.gl,xe=t.context,Oe=t.strings,Ie=t.next,Fe=t.current,ft=t.draw,ge=t.elements,fe=t.buffer,pe=t.shader,dt=t.attributes,Pt=t.vao,zt=t.uniforms,rr=t.framebuffer,Gr=t.extensions,Br=t.timer,Er=t.isBufferArgs,Rr=Ie.blend_color,pi=Fe.blend_color,Di=Ie.blend_equation,ni=Fe.blend_equation,$i=Ie.blend_func,Qi=Fe.blend_func,si=Ie.depth_range,Ai=Fe.depth_range,Ni=Ie.colorMask,Rt=Fe.colorMask,yt=Ie.polygonOffset_offset,Gt=Fe.polygonOffset_offset,Wt=Ie.sample_coverage,xr=Fe.sample_coverage,Lr=Ie.stencil_func,Nr=Fe.stencil_func,Or=Ie.stencil_opFront,Hr=Fe.stencil_opFront,jr=Ie.stencil_opBack,gi=Fe.stencil_opBack,ki=Ie.scissor_box,Vi=Fe.scissor_box,ti=Ie.viewport,tn=Fe.viewport,Yr={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},oi={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Fi={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},an={add:32774,subtract:32778,"reverse subtract":32779},nn={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Ri={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Ii={cw:2304,ccw:2305},{draw:function(xn){var bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl,ll,il,zl;if(bi=Gr.angle_instanced_arrays,Xr=rr.next,Xr!==rr.cur&&(Xr?Re.bindFramebuffer(36160,Xr.framebuffer):Re.bindFramebuffer(36160,null),rr.cur=Xr),Fe.dirty){var Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt,pt,Ht,nr,fr,Tr;Ml=Ie.dither,Ml!==Fe.dither&&(Ml?Re.enable(3024):Re.disable(3024),Fe.dither=Ml),Rl=Di[0],Tl=Di[1],(Rl!==ni[0]||Tl!==ni[1])&&(Re.blendEquationSeparate(Rl,Tl),ni[0]=Rl,ni[1]=Tl),Ll=Ie.depth_func,Ll!==Fe.depth_func&&(Re.depthFunc(Ll),Fe.depth_func=Ll),ms=si[0],Os=si[1],(ms!==Ai[0]||Os!==Ai[1])&&(Re.depthRange(ms,Os),Ai[0]=ms,Ai[1]=Os),Xl=Ie.depth_mask,Xl!==Fe.depth_mask&&(Re.depthMask(Xl),Fe.depth_mask=Xl),Vl=Ni[0],Nl=Ni[1],le=Ni[2],w=Ni[3],(Vl!==Rt[0]||Nl!==Rt[1]||le!==Rt[2]||w!==Rt[3])&&(Re.colorMask(Vl,Nl,le,w),Rt[0]=Vl,Rt[1]=Nl,Rt[2]=le,Rt[3]=w),q=Ie.cull_enable,q!==Fe.cull_enable&&(q?Re.enable(2884):Re.disable(2884),Fe.cull_enable=q),Q=Ie.cull_face,Q!==Fe.cull_face&&(Re.cullFace(Q),Fe.cull_face=Q),ee=Ie.frontFace,ee!==Fe.frontFace&&(Re.frontFace(ee),Fe.frontFace=ee),ue=Ie.lineWidth,ue!==Fe.lineWidth&&(Re.lineWidth(ue),Fe.lineWidth=ue),Ve=Ie.polygonOffset_enable,Ve!==Fe.polygonOffset_enable&&(Ve?Re.enable(32823):Re.disable(32823),Fe.polygonOffset_enable=Ve),tt=yt[0],mt=yt[1],(tt!==Gt[0]||mt!==Gt[1])&&(Re.polygonOffset(tt,mt),Gt[0]=tt,Gt[1]=mt),Bt=Ie.sample_alpha,Bt!==Fe.sample_alpha&&(Bt?Re.enable(32926):Re.disable(32926),Fe.sample_alpha=Bt),ir=Ie.sample_enable,ir!==Fe.sample_enable&&(ir?Re.enable(32928):Re.disable(32928),Fe.sample_enable=ir),or=Wt[0],kr=Wt[1],(or!==xr[0]||kr!==xr[1])&&(Re.sampleCoverage(or,kr),xr[0]=or,xr[1]=kr),Vr=Ie.stencil_mask,Vr!==Fe.stencil_mask&&(Re.stencilMask(Vr),Fe.stencil_mask=Vr),he=Lr[0],Se=Lr[1],Ne=Lr[2],(he!==Nr[0]||Se!==Nr[1]||Ne!==Nr[2])&&(Re.stencilFunc(he,Se,Ne),Nr[0]=he,Nr[1]=Se,Nr[2]=Ne),Ge=Or[0],lt=Or[1],rt=Or[2],pt=Or[3],(Ge!==Hr[0]||lt!==Hr[1]||rt!==Hr[2]||pt!==Hr[3])&&(Re.stencilOpSeparate(Ge,lt,rt,pt),Hr[0]=Ge,Hr[1]=lt,Hr[2]=rt,Hr[3]=pt),Ht=jr[0],nr=jr[1],fr=jr[2],Tr=jr[3],(Ht!==gi[0]||nr!==gi[1]||fr!==gi[2]||Tr!==gi[3])&&(Re.stencilOpSeparate(Ht,nr,fr,Tr),gi[0]=Ht,gi[1]=nr,gi[2]=fr,gi[3]=Tr)}ct=xn.viewport,tr=ct.x|0,pr=ct.y|0,gr="width"in ct?ct.width|0:xe.framebufferWidth-tr,Zr="height"in ct?ct.height|0:xe.framebufferHeight-pr,Ti=xe.viewportWidth,xe.viewportWidth=gr,en=xe.viewportHeight,xe.viewportHeight=Zr,Re.viewport(tr,pr,gr,Zr),tn[0]=tr,tn[1]=pr,tn[2]=gr,tn[3]=Zr,Re.blendColor(0,0,0,1),pi[0]=0,pi[1]=0,pi[2]=0,pi[3]=1,n?Re.enable(3042):Re.disable(3042),Fe.blend_enable=n,Re.blendFuncSeparate(770,771,773,1),Qi[0]=770,Qi[1]=771,Qi[2]=773,Qi[3]=1,i?Re.enable(2929):Re.disable(2929),Fe.depth_enable=i,ii=xn.viewport,Xi=ii.x|0,aa=ii.y|0,Mn="width"in ii?ii.width|0:xe.framebufferWidth-Xi,Un="height"in ii?ii.height|0:xe.framebufferHeight-aa,Re.scissor(Xi,aa,Mn,Un),Vi[0]=Xi,Vi[1]=aa,Vi[2]=Mn,Vi[3]=Un,a?Re.enable(3089):Re.disable(3089),Fe.scissor_enable=a,o?Re.enable(2960):Re.disable(2960),Fe.stencil_enable=o,Ga=Fe.profile,Ga&&(ma=performance.now(),r.count++),Re.useProgram(s.program),oa=Gr.angle_instanced_arrays,Pt.setVAO(null),ka=u.call(this,xe,xn,0),so=!1,Kr=1,Ia=0,Yo=0,fa=0,kn=0,Aa=null,ys=0,uo=!1,ls=5126,$a=0,fo=0,mn=0,Er(ka)?(so=!0,Aa=fe.createStream(34962,ka),ls=Aa.dtype):(Aa=fe.getBuffer(ka),Aa?ls=Aa.dtype:"constant"in ka?(Kr=2,typeof ka.constant=="number"?(Ia=ka.constant,Yo=fa=kn=0):(Ia=ka.constant.length>0?ka.constant[0]:0,Yo=ka.constant.length>1?ka.constant[1]:0,fa=ka.constant.length>2?ka.constant[2]:0,kn=ka.constant.length>3?ka.constant[3]:0)):(Er(ka.buffer)?Aa=fe.createStream(34962,ka.buffer):Aa=fe.getBuffer(ka.buffer),ls="type"in ka?Ri[ka.type]:Aa.dtype,uo=!!ka.normalized,ys=ka.size|0,$a=ka.offset|0,fo=ka.stride|0,mn=ka.divisor|0)),ra=l.location,wa=dt[ra],Kr===1?(wa.buffer||Re.enableVertexAttribArray(ra),ws=ys||4,(wa.type!==ls||wa.size!==ws||wa.buffer!==Aa||wa.normalized!==uo||wa.offset!==$a||wa.stride!==fo)&&(Re.bindBuffer(34962,Aa.buffer),Re.vertexAttribPointer(ra,ws,ls,uo,fo,$a),wa.type=ls,wa.size=ws,wa.buffer=Aa,wa.normalized=uo,wa.offset=$a,wa.stride=fo),wa.divisor!==mn&&(oa.vertexAttribDivisorANGLE(ra,mn),wa.divisor=mn)):(wa.buffer&&(Re.disableVertexAttribArray(ra),wa.buffer=null),(wa.x!==Ia||wa.y!==Yo||wa.z!==fa||wa.w!==kn)&&(Re.vertexAttrib4f(ra,Ia,Yo,fa,kn),wa.x=Ia,wa.y=Yo,wa.z=fa,wa.w=kn)),Co=f.call(this,xe,xn,0),Po=!1,Wi=1,gn=0,Ps=0,Ha=0,Sn=0,ao=null,Ba=0,Ko=!1,Qo=5126,Hi=0,Sa=0,Qa=0,Er(Co)?(Po=!0,ao=fe.createStream(34962,Co),Qo=ao.dtype):(ao=fe.getBuffer(Co),ao?Qo=ao.dtype:"constant"in Co?(Wi=2,typeof Co.constant=="number"?(gn=Co.constant,Ps=Ha=Sn=0):(gn=Co.constant.length>0?Co.constant[0]:0,Ps=Co.constant.length>1?Co.constant[1]:0,Ha=Co.constant.length>2?Co.constant[2]:0,Sn=Co.constant.length>3?Co.constant[3]:0)):(Er(Co.buffer)?ao=fe.createStream(34962,Co.buffer):ao=fe.getBuffer(Co.buffer),Qo="type"in Co?Ri[Co.type]:ao.dtype,Ko=!!Co.normalized,Ba=Co.size|0,Hi=Co.offset|0,Sa=Co.stride|0,Qa=Co.divisor|0)),vn=c.location,da=dt[vn],Wi===1?(da.buffer||Re.enableVertexAttribArray(vn),la=Ba||1,(da.type!==Qo||da.size!==la||da.buffer!==ao||da.normalized!==Ko||da.offset!==Hi||da.stride!==Sa)&&(Re.bindBuffer(34962,ao.buffer),Re.vertexAttribPointer(vn,la,Qo,Ko,Sa,Hi),da.type=Qo,da.size=la,da.buffer=ao,da.normalized=Ko,da.offset=Hi,da.stride=Sa),da.divisor!==Qa&&(oa.vertexAttribDivisorANGLE(vn,Qa),da.divisor=Qa)):(da.buffer&&(Re.disableVertexAttribArray(vn),da.buffer=null),(da.x!==gn||da.y!==Ps||da.z!==Ha||da.w!==Sn)&&(Re.vertexAttrib4f(vn,gn,Ps,Ha,Sn),da.x=gn,da.y=Ps,da.z=Ha,da.w=Sn)),vo=h.call(this,xe,xn,0),Ts=!1,ps=1,co=0,mo=0,No=0,jn=0,Go=null,Ys=0,qs=!1,Ns=5126,Oa=0,ha=0,Vs=0,Er(vo)?(Ts=!0,Go=fe.createStream(34962,vo),Ns=Go.dtype):(Go=fe.getBuffer(vo),Go?Ns=Go.dtype:"constant"in vo?(ps=2,typeof vo.constant=="number"?(co=vo.constant,mo=No=jn=0):(co=vo.constant.length>0?vo.constant[0]:0,mo=vo.constant.length>1?vo.constant[1]:0,No=vo.constant.length>2?vo.constant[2]:0,jn=vo.constant.length>3?vo.constant[3]:0)):(Er(vo.buffer)?Go=fe.createStream(34962,vo.buffer):Go=fe.getBuffer(vo.buffer),Ns="type"in vo?Ri[vo.type]:Go.dtype,qs=!!vo.normalized,Ys=vo.size|0,Oa=vo.offset|0,ha=vo.stride|0,Vs=vo.divisor|0)),Ya=d.location,_n=dt[Ya],ps===1?(_n.buffer||Re.enableVertexAttribArray(Ya),Vn=Ys||4,(_n.type!==Ns||_n.size!==Vn||_n.buffer!==Go||_n.normalized!==qs||_n.offset!==Oa||_n.stride!==ha)&&(Re.bindBuffer(34962,Go.buffer),Re.vertexAttribPointer(Ya,Vn,Ns,qs,ha,Oa),_n.type=Ns,_n.size=Vn,_n.buffer=Go,_n.normalized=qs,_n.offset=Oa,_n.stride=ha),_n.divisor!==Vs&&(oa.vertexAttribDivisorANGLE(Ya,Vs),_n.divisor=Vs)):(_n.buffer&&(Re.disableVertexAttribArray(Ya),_n.buffer=null),(_n.x!==co||_n.y!==mo||_n.z!==No||_n.w!==jn)&&(Re.vertexAttrib4f(Ya,co,mo,No,jn),_n.x=co,_n.y=mo,_n.z=No,_n.w=jn)),wo=p.call(this,xe,xn,0),Ra=!1,Xn=1,un=0,$n=0,Ka=0,qn=0,Eo=null,Ja=0,lo=!1,eo=5126,sa=0,es=0,Na=0,Er(wo)?(Ra=!0,Eo=fe.createStream(34962,wo),eo=Eo.dtype):(Eo=fe.getBuffer(wo),Eo?eo=Eo.dtype:"constant"in wo?(Xn=2,typeof wo.constant=="number"?(un=wo.constant,$n=Ka=qn=0):(un=wo.constant.length>0?wo.constant[0]:0,$n=wo.constant.length>1?wo.constant[1]:0,Ka=wo.constant.length>2?wo.constant[2]:0,qn=wo.constant.length>3?wo.constant[3]:0)):(Er(wo.buffer)?Eo=fe.createStream(34962,wo.buffer):Eo=fe.getBuffer(wo.buffer),eo="type"in wo?Ri[wo.type]:Eo.dtype,lo=!!wo.normalized,Ja=wo.size|0,sa=wo.offset|0,es=wo.stride|0,Na=wo.divisor|0)),rn=_.location,Pa=dt[rn],Xn===1?(Pa.buffer||Re.enableVertexAttribArray(rn),to=Ja||1,(Pa.type!==eo||Pa.size!==to||Pa.buffer!==Eo||Pa.normalized!==lo||Pa.offset!==sa||Pa.stride!==es)&&(Re.bindBuffer(34962,Eo.buffer),Re.vertexAttribPointer(rn,to,eo,lo,es,sa),Pa.type=eo,Pa.size=to,Pa.buffer=Eo,Pa.normalized=lo,Pa.offset=sa,Pa.stride=es),Pa.divisor!==Na&&(oa.vertexAttribDivisorANGLE(rn,Na),Pa.divisor=Na)):(Pa.buffer&&(Re.disableVertexAttribArray(rn),Pa.buffer=null),(Pa.x!==un||Pa.y!==$n||Pa.z!==Ka||Pa.w!==qn)&&(Re.vertexAttrib4f(rn,un,$n,Ka,qn),Pa.x=un,Pa.y=$n,Pa.z=Ka,Pa.w=qn)),yo=b.call(this,xe,xn,0),Jo=!1,To=1,Dn=0,_a=0,Ws=0,Ca=0,Es=null,As=0,Ho=!1,Wa=5126,Ao=0,ts=0,Wo=0,Er(yo)?(Jo=!0,Es=fe.createStream(34962,yo),Wa=Es.dtype):(Es=fe.getBuffer(yo),Es?Wa=Es.dtype:"constant"in yo?(To=2,typeof yo.constant=="number"?(Dn=yo.constant,_a=Ws=Ca=0):(Dn=yo.constant.length>0?yo.constant[0]:0,_a=yo.constant.length>1?yo.constant[1]:0,Ws=yo.constant.length>2?yo.constant[2]:0,Ca=yo.constant.length>3?yo.constant[3]:0)):(Er(yo.buffer)?Es=fe.createStream(34962,yo.buffer):Es=fe.getBuffer(yo.buffer),Wa="type"in yo?Ri[yo.type]:Es.dtype,Ho=!!yo.normalized,As=yo.size|0,Ao=yo.offset|0,ts=yo.stride|0,Wo=yo.divisor|0)),qa=v.location,ln=dt[qa],To===1?(ln.buffer||Re.enableVertexAttribArray(qa),Bo=As||1,(ln.type!==Wa||ln.size!==Bo||ln.buffer!==Es||ln.normalized!==Ho||ln.offset!==Ao||ln.stride!==ts)&&(Re.bindBuffer(34962,Es.buffer),Re.vertexAttribPointer(qa,Bo,Wa,Ho,ts,Ao),ln.type=Wa,ln.size=Bo,ln.buffer=Es,ln.normalized=Ho,ln.offset=Ao,ln.stride=ts),ln.divisor!==Wo&&(oa.vertexAttribDivisorANGLE(qa,Wo),ln.divisor=Wo)):(ln.buffer&&(Re.disableVertexAttribArray(qa),ln.buffer=null),(ln.x!==Dn||ln.y!==_a||ln.z!==Ws||ln.w!==Ca)&&(Re.vertexAttrib4f(qa,Dn,_a,Ws,Ca),ln.x=Dn,ln.y=_a,ln.z=Ws,ln.w=Ca)),ko=k.call(this,xe,xn,0),oo=!1,za=1,ea=0,rs=0,$s=0,us=0,Ds=null,fl=0,as=!1,Ma=5126,Qs=0,ho=0,gs=0,Er(ko)?(oo=!0,Ds=fe.createStream(34962,ko),Ma=Ds.dtype):(Ds=fe.getBuffer(ko),Ds?Ma=Ds.dtype:"constant"in ko?(za=2,typeof ko.constant=="number"?(ea=ko.constant,rs=$s=us=0):(ea=ko.constant.length>0?ko.constant[0]:0,rs=ko.constant.length>1?ko.constant[1]:0,$s=ko.constant.length>2?ko.constant[2]:0,us=ko.constant.length>3?ko.constant[3]:0)):(Er(ko.buffer)?Ds=fe.createStream(34962,ko.buffer):Ds=fe.getBuffer(ko.buffer),Ma="type"in ko?Ri[ko.type]:Ds.dtype,as=!!ko.normalized,fl=ko.size|0,Qs=ko.offset|0,ho=ko.stride|0,gs=ko.divisor|0)),Vo=E.location,Do=dt[Vo],za===1?(Do.buffer||Re.enableVertexAttribArray(Vo),Lo=fl||1,(Do.type!==Ma||Do.size!==Lo||Do.buffer!==Ds||Do.normalized!==as||Do.offset!==Qs||Do.stride!==ho)&&(Re.bindBuffer(34962,Ds.buffer),Re.vertexAttribPointer(Vo,Lo,Ma,as,ho,Qs),Do.type=Ma,Do.size=Lo,Do.buffer=Ds,Do.normalized=as,Do.offset=Qs,Do.stride=ho),Do.divisor!==gs&&(oa.vertexAttribDivisorANGLE(Vo,gs),Do.divisor=gs)):(Do.buffer&&(Re.disableVertexAttribArray(Vo),Do.buffer=null),(Do.x!==ea||Do.y!==rs||Do.z!==$s||Do.w!==us)&&(Re.vertexAttrib4f(Vo,ea,rs,$s,us),Do.x=ea,Do.y=rs,Do.z=$s,Do.w=us)),xs=A.call(this,xe,xn,0),ks=!1,Ea=1,Jn=0,Oo=0,rl=0,Gs=0,bs=null,zs=0,$o=!1,Ta=5126,os=0,_l=0,Ss=0,Er(xs)?(ks=!0,bs=fe.createStream(34962,xs),Ta=bs.dtype):(bs=fe.getBuffer(xs),bs?Ta=bs.dtype:"constant"in xs?(Ea=2,typeof xs.constant=="number"?(Jn=xs.constant,Oo=rl=Gs=0):(Jn=xs.constant.length>0?xs.constant[0]:0,Oo=xs.constant.length>1?xs.constant[1]:0,rl=xs.constant.length>2?xs.constant[2]:0,Gs=xs.constant.length>3?xs.constant[3]:0)):(Er(xs.buffer)?bs=fe.createStream(34962,xs.buffer):bs=fe.getBuffer(xs.buffer),Ta="type"in xs?Ri[xs.type]:bs.dtype,$o=!!xs.normalized,zs=xs.size|0,os=xs.offset|0,_l=xs.stride|0,Ss=xs.divisor|0)),po=L.location,go=dt[po],Ea===1?(go.buffer||Re.enableVertexAttribArray(po),ss=zs||1,(go.type!==Ta||go.size!==ss||go.buffer!==bs||go.normalized!==$o||go.offset!==os||go.stride!==_l)&&(Re.bindBuffer(34962,bs.buffer),Re.vertexAttribPointer(po,ss,Ta,$o,_l,os),go.type=Ta,go.size=ss,go.buffer=bs,go.normalized=$o,go.offset=os,go.stride=_l),go.divisor!==Ss&&(oa.vertexAttribDivisorANGLE(po,Ss),go.divisor=Ss)):(go.buffer&&(Re.disableVertexAttribArray(po),go.buffer=null),(go.x!==Jn||go.y!==Oo||go.z!==rl||go.w!==Gs)&&(Re.vertexAttrib4f(po,Jn,Oo,rl,Gs),go.x=Jn,go.y=Oo,go.z=rl,go.w=Gs)),qo=x.call(this,xe,xn,0),zo=!1,io=1,Io=0,Da=0,vs=0,fs=0,cl=null,el=0,Hs=!1,Ro=5126,tl=0,Fs=0,hl=0,Er(qo)?(zo=!0,cl=fe.createStream(34962,qo),Ro=cl.dtype):(cl=fe.getBuffer(qo),cl?Ro=cl.dtype:"constant"in qo?(io=2,typeof qo.constant=="number"?(Io=qo.constant,Da=vs=fs=0):(Io=qo.constant.length>0?qo.constant[0]:0,Da=qo.constant.length>1?qo.constant[1]:0,vs=qo.constant.length>2?qo.constant[2]:0,fs=qo.constant.length>3?qo.constant[3]:0)):(Er(qo.buffer)?cl=fe.createStream(34962,qo.buffer):cl=fe.getBuffer(qo.buffer),Ro="type"in qo?Ri[qo.type]:cl.dtype,Hs=!!qo.normalized,el=qo.size|0,tl=qo.offset|0,Fs=qo.stride|0,hl=qo.divisor|0)),Fa=C.location,Ms=dt[Fa],io===1?(Ms.buffer||Re.enableVertexAttribArray(Fa),jo=el||1,(Ms.type!==Ro||Ms.size!==jo||Ms.buffer!==cl||Ms.normalized!==Hs||Ms.offset!==tl||Ms.stride!==Fs)&&(Re.bindBuffer(34962,cl.buffer),Re.vertexAttribPointer(Fa,jo,Ro,Hs,Fs,tl),Ms.type=Ro,Ms.size=jo,Ms.buffer=cl,Ms.normalized=Hs,Ms.offset=tl,Ms.stride=Fs),Ms.divisor!==hl&&(oa.vertexAttribDivisorANGLE(Fa,hl),Ms.divisor=hl)):(Ms.buffer&&(Re.disableVertexAttribArray(Fa),Ms.buffer=null),(Ms.x!==Io||Ms.y!==Da||Ms.z!==vs||Ms.w!==fs)&&(Re.vertexAttrib4f(Fa,Io,Da,vs,fs),Ms.x=Io,Ms.y=Da,Ms.z=vs,Ms.w=fs)),Rs=M.call(this,xe,xn,0),Is=!1,Bs=1,At=0,Vt=0,wr=0,mr=0,Fr=null,_i=0,Si=!1,Ci=5126,Ki=0,Fn=0,Pi=0,Er(Rs)?(Is=!0,Fr=fe.createStream(34962,Rs),Ci=Fr.dtype):(Fr=fe.getBuffer(Rs),Fr?Ci=Fr.dtype:"constant"in Rs?(Bs=2,typeof Rs.constant=="number"?(At=Rs.constant,Vt=wr=mr=0):(At=Rs.constant.length>0?Rs.constant[0]:0,Vt=Rs.constant.length>1?Rs.constant[1]:0,wr=Rs.constant.length>2?Rs.constant[2]:0,mr=Rs.constant.length>3?Rs.constant[3]:0)):(Er(Rs.buffer)?Fr=fe.createStream(34962,Rs.buffer):Fr=fe.getBuffer(Rs.buffer),Ci="type"in Rs?Ri[Rs.type]:Fr.dtype,Si=!!Rs.normalized,_i=Rs.size|0,Ki=Rs.offset|0,Fn=Rs.stride|0,Pi=Rs.divisor|0)),di=m.location,Li=dt[di],Bs===1?(Li.buffer||Re.enableVertexAttribArray(di),Mi=_i||1,(Li.type!==Ci||Li.size!==Mi||Li.buffer!==Fr||Li.normalized!==Si||Li.offset!==Ki||Li.stride!==Fn)&&(Re.bindBuffer(34962,Fr.buffer),Re.vertexAttribPointer(di,Mi,Ci,Si,Fn,Ki),Li.type=Ci,Li.size=Mi,Li.buffer=Fr,Li.normalized=Si,Li.offset=Ki,Li.stride=Fn),Li.divisor!==Pi&&(oa.vertexAttribDivisorANGLE(di,Pi),Li.divisor=Pi)):(Li.buffer&&(Re.disableVertexAttribArray(di),Li.buffer=null),(Li.x!==At||Li.y!==Vt||Li.z!==wr||Li.w!==mr)&&(Re.vertexAttrib4f(di,At,Vt,wr,mr),Li.x=At,Li.y=Vt,Li.z=wr,Li.w=mr)),Re.uniform1i(P.location,!1),Gn=xn.markerTexture,Gn&&Gn._reglType==="framebuffer"&&(Gn=Gn.color[0]),ta=Gn._texture,Re.uniform1i(T.location,ta.bind()),ya=xn.opacity,Re.uniform1f(B.location,ya),ia=U.call(this,xe,xn,0),pa=ia[0],va=ia[1],Re.uniform2f(F.location,pa,va),Re.uniform1i(G.location,j.bind()),zn=xe.pixelRatio,Re.uniform1f(H.location,zn),is=xn.scale,Cs=is[0],Ks=is[1],Re.uniform2f(N.location,Cs,Ks),dl=xn.scaleFract,xl=dl[0],Bl=dl[1],Re.uniform2f(W.location,xl,Bl),bl=xn.translate,eu=bl[0],Zl=bl[1],Re.uniform2f(re.location,eu,Zl),Ul=xn.translateFract,ja=Ul[0],ns=Ul[1],Re.uniform2f(ae.location,ja,ns),Js=xn.elements,cs=null,sl=Er(Js),sl?cs=ge.createStream(Js):cs=ge.getElements(Js),cs&&Re.bindBuffer(34963,cs.buffer.buffer),ll=xn.offset,il=xn.count,il&&(zl=ft.instances,zl>0?cs?oa.drawElementsInstancedANGLE(0,il,cs.type,ll<<(cs.type-5121>>1),zl):oa.drawArraysInstancedANGLE(0,ll,il,zl):zl<0&&(cs?Re.drawElements(0,il,cs.type,ll<<(cs.type-5121>>1)):Re.drawArrays(0,ll,il)),Fe.dirty=!0,Pt.setVAO(null),xe.viewportWidth=Ti,xe.viewportHeight=en,Ga&&(r.cpuTime+=performance.now()-ma),so&&fe.destroyStream(Aa),Po&&fe.destroyStream(ao),Ts&&fe.destroyStream(Go),Ra&&fe.destroyStream(Eo),Jo&&fe.destroyStream(Es),oo&&fe.destroyStream(Ds),ks&&fe.destroyStream(bs),zo&&fe.destroyStream(cl),Is&&fe.destroyStream(Fr),ta.unbind(),j.unbind(),sl&&ge.destroyStream(cs))},scope:function(xn,bi,Xr){var ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl,ll,il,zl,Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt,pt,Ht,nr,fr,Tr,Ir,ri,li,Ei,hn,Zn,Yn,Ua,Fo,vl,Us,ml,au,Sl,Yl,Ol,ou,Pu,iu,tu,Hu,$u,Ku,Wu,ju,sf,_f,Qu,ef,Z,se,Pe,Xe,Qe,st,jt,_t,hr,Cr,zr,fi,$r,Bi,fn,mi,zi,ji,pn,sn,wi,xo,no,Xo,js,El,Pl,pu,Il,fu,Xu,Vu,tf,ds,Wl,Tu,Au,lf,hf,Mf,pf;ct=xn.viewport,tr=ct.x|0,pr=ct.y|0,gr="width"in ct?ct.width|0:xe.framebufferWidth-tr,Zr="height"in ct?ct.height|0:xe.framebufferHeight-pr,Ti=xe.viewportWidth,xe.viewportWidth=gr,en=xe.viewportHeight,xe.viewportHeight=Zr,ii=ti[0],ti[0]=tr,Xi=ti[1],ti[1]=pr,aa=ti[2],ti[2]=gr,Mn=ti[3],ti[3]=Zr,Un=Rr[0],Rr[0]=be,Ga=Rr[1],Rr[1]=ze,ma=Rr[2],Rr[2]=Ce,oa=Rr[3],Rr[3]=de,ka=Ie.blend_enable,Ie.blend_enable=te,so=$i[0],$i[0]=ke,Kr=$i[1],$i[1]=Ee,Ia=$i[2],$i[2]=Me,Yo=$i[3],$i[3]=Ue,fa=Ie.depth_enable,Ie.depth_enable=De,kn=xn.viewport,Aa=kn.x|0,ys=kn.y|0,uo="width"in kn?kn.width|0:xe.framebufferWidth-Aa,ls="height"in kn?kn.height|0:xe.framebufferHeight-ys,$a=ki[0],ki[0]=Aa,fo=ki[1],ki[1]=ys,mn=ki[2],ki[2]=uo,ra=ki[3],ki[3]=ls,wa=Ie.scissor_enable,Ie.scissor_enable=ye,ws=Ie.stencil_enable,Ie.stencil_enable=qe,Co=Fe.profile,Co&&(Po=performance.now(),r.count++),Wi=xn.elements,gn=null,Ps=Er(Wi),Ps?gn=ge.createStream(Wi):gn=ge.getElements(Wi),Ha=ft.elements,ft.elements=gn,Sn=xn.offset,ao=ft.offset,ft.offset=Sn,Ba=xn.count,Ko=ft.count,ft.count=Ba,Qo=ft.primitive,ft.primitive=ce,Hi=zt[Je],zt[Je]=!1,Sa=zt[gt],zt[gt]=nt,Qa=xn.opacity,vn=zt[Nt],zt[Nt]=Qa,da=U.call(this,xe,xn,Xr),la=zt[at],zt[at]=da,vo=xe.pixelRatio,Ts=zt[Ke],zt[Ke]=vo,ps=xn.scale,co=zt[Ct],zt[Ct]=ps,mo=xn.scaleFract,No=zt[wt],zt[wt]=mo,jn=xn.translate,Go=zt[St],zt[St]=jn,Ys=xn.translateFract,qs=zt[Dt],zt[Dt]=Ys,Ns=xn.markerTexture,Oa=zt[Zt],zt[Zt]=Ns,ha=k.call(this,xe,xn,Xr),Vs=!1,Ya=1,_n=0,Vn=0,wo=0,Ra=0,Xn=null,un=0,$n=!1,Ka=5126,qn=0,Eo=0,Ja=0,Er(ha)?(Vs=!0,Xn=fe.createStream(34962,ha),Ka=Xn.dtype):(Xn=fe.getBuffer(ha),Xn?Ka=Xn.dtype:"constant"in ha?(Ya=2,typeof ha.constant=="number"?(_n=ha.constant,Vn=wo=Ra=0):(_n=ha.constant.length>0?ha.constant[0]:0,Vn=ha.constant.length>1?ha.constant[1]:0,wo=ha.constant.length>2?ha.constant[2]:0,Ra=ha.constant.length>3?ha.constant[3]:0)):(Er(ha.buffer)?Xn=fe.createStream(34962,ha.buffer):Xn=fe.getBuffer(ha.buffer),Ka="type"in ha?Ri[ha.type]:Xn.dtype,$n=!!ha.normalized,un=ha.size|0,qn=ha.offset|0,Eo=ha.stride|0,Ja=ha.divisor|0)),lo=Et.state,Et.state=Ya,eo=Et.x,Et.x=_n,sa=Et.y,Et.y=Vn,es=Et.z,Et.z=wo,Na=Et.w,Et.w=Ra,rn=Et.buffer,Et.buffer=Xn,Pa=Et.size,Et.size=un,to=Et.normalized,Et.normalized=$n,yo=Et.type,Et.type=Ka,Jo=Et.offset,Et.offset=qn,To=Et.stride,Et.stride=Eo,Dn=Et.divisor,Et.divisor=Ja,_a=x.call(this,xe,xn,Xr),Ws=!1,Ca=1,Es=0,As=0,Ho=0,Wa=0,Ao=null,ts=0,Wo=!1,qa=5126,ln=0,Bo=0,ko=0,Er(_a)?(Ws=!0,Ao=fe.createStream(34962,_a),qa=Ao.dtype):(Ao=fe.getBuffer(_a),Ao?qa=Ao.dtype:"constant"in _a?(Ca=2,typeof _a.constant=="number"?(Es=_a.constant,As=Ho=Wa=0):(Es=_a.constant.length>0?_a.constant[0]:0,As=_a.constant.length>1?_a.constant[1]:0,Ho=_a.constant.length>2?_a.constant[2]:0,Wa=_a.constant.length>3?_a.constant[3]:0)):(Er(_a.buffer)?Ao=fe.createStream(34962,_a.buffer):Ao=fe.getBuffer(_a.buffer),qa="type"in _a?Ri[_a.type]:Ao.dtype,Wo=!!_a.normalized,ts=_a.size|0,ln=_a.offset|0,Bo=_a.stride|0,ko=_a.divisor|0)),oo=Te.state,Te.state=Ca,za=Te.x,Te.x=Es,ea=Te.y,Te.y=As,rs=Te.z,Te.z=Ho,$s=Te.w,Te.w=Wa,us=Te.buffer,Te.buffer=Ao,Ds=Te.size,Te.size=ts,fl=Te.normalized,Te.normalized=Wo,as=Te.type,Te.type=qa,Ma=Te.offset,Te.offset=ln,Qs=Te.stride,Te.stride=Bo,ho=Te.divisor,Te.divisor=ko,gs=A.call(this,xe,xn,Xr),Vo=!1,Do=1,Lo=0,xs=0,ks=0,Ea=0,Jn=null,Oo=0,rl=!1,Gs=5126,bs=0,zs=0,$o=0,Er(gs)?(Vo=!0,Jn=fe.createStream(34962,gs),Gs=Jn.dtype):(Jn=fe.getBuffer(gs),Jn?Gs=Jn.dtype:"constant"in gs?(Do=2,typeof gs.constant=="number"?(Lo=gs.constant,xs=ks=Ea=0):(Lo=gs.constant.length>0?gs.constant[0]:0,xs=gs.constant.length>1?gs.constant[1]:0,ks=gs.constant.length>2?gs.constant[2]:0,Ea=gs.constant.length>3?gs.constant[3]:0)):(Er(gs.buffer)?Jn=fe.createStream(34962,gs.buffer):Jn=fe.getBuffer(gs.buffer),Gs="type"in gs?Ri[gs.type]:Jn.dtype,rl=!!gs.normalized,Oo=gs.size|0,bs=gs.offset|0,zs=gs.stride|0,$o=gs.divisor|0)),Ta=ot.state,ot.state=Do,os=ot.x,ot.x=Lo,_l=ot.y,ot.y=xs,Ss=ot.z,ot.z=ks,po=ot.w,ot.w=Ea,go=ot.buffer,ot.buffer=Jn,ss=ot.size,ot.size=Oo,qo=ot.normalized,ot.normalized=rl,zo=ot.type,ot.type=Gs,io=ot.offset,ot.offset=bs,Io=ot.stride,ot.stride=zs,Da=ot.divisor,ot.divisor=$o,vs=M.call(this,xe,xn,Xr),fs=!1,cl=1,el=0,Hs=0,Ro=0,tl=0,Fs=null,hl=0,Fa=!1,Ms=5126,jo=0,Rs=0,Is=0,Er(vs)?(fs=!0,Fs=fe.createStream(34962,vs),Ms=Fs.dtype):(Fs=fe.getBuffer(vs),Fs?Ms=Fs.dtype:"constant"in vs?(cl=2,typeof vs.constant=="number"?(el=vs.constant,Hs=Ro=tl=0):(el=vs.constant.length>0?vs.constant[0]:0,Hs=vs.constant.length>1?vs.constant[1]:0,Ro=vs.constant.length>2?vs.constant[2]:0,tl=vs.constant.length>3?vs.constant[3]:0)):(Er(vs.buffer)?Fs=fe.createStream(34962,vs.buffer):Fs=fe.getBuffer(vs.buffer),Ms="type"in vs?Ri[vs.type]:Fs.dtype,Fa=!!vs.normalized,hl=vs.size|0,jo=vs.offset|0,Rs=vs.stride|0,Is=vs.divisor|0)),Bs=Tt.state,Tt.state=cl,At=Tt.x,Tt.x=el,Vt=Tt.y,Tt.y=Hs,wr=Tt.z,Tt.z=Ro,mr=Tt.w,Tt.w=tl,Fr=Tt.buffer,Tt.buffer=Fs,_i=Tt.size,Tt.size=hl,Si=Tt.normalized,Tt.normalized=Fa,Ci=Tt.type,Tt.type=Ms,Ki=Tt.offset,Tt.offset=jo,Fn=Tt.stride,Tt.stride=Rs,Pi=Tt.divisor,Tt.divisor=Is,di=b.call(this,xe,xn,Xr),Li=!1,Mi=1,Gn=0,ta=0,ya=0,ia=0,pa=null,va=0,zn=!1,is=5126,Cs=0,Ks=0,dl=0,Er(di)?(Li=!0,pa=fe.createStream(34962,di),is=pa.dtype):(pa=fe.getBuffer(di),pa?is=pa.dtype:"constant"in di?(Mi=2,typeof di.constant=="number"?(Gn=di.constant,ta=ya=ia=0):(Gn=di.constant.length>0?di.constant[0]:0,ta=di.constant.length>1?di.constant[1]:0,ya=di.constant.length>2?di.constant[2]:0,ia=di.constant.length>3?di.constant[3]:0)):(Er(di.buffer)?pa=fe.createStream(34962,di.buffer):pa=fe.getBuffer(di.buffer),is="type"in di?Ri[di.type]:pa.dtype,zn=!!di.normalized,va=di.size|0,Cs=di.offset|0,Ks=di.stride|0,dl=di.divisor|0)),xl=vt.state,vt.state=Mi,Bl=vt.x,vt.x=Gn,bl=vt.y,vt.y=ta,eu=vt.z,vt.z=ya,Zl=vt.w,vt.w=ia,Ul=vt.buffer,vt.buffer=pa,ja=vt.size,vt.size=va,ns=vt.normalized,vt.normalized=zn,Js=vt.type,vt.type=is,cs=vt.offset,vt.offset=Cs,sl=vt.stride,vt.stride=Ks,ll=vt.divisor,vt.divisor=dl,il=f.call(this,xe,xn,Xr),zl=!1,Ml=1,Rl=0,Tl=0,Ll=0,ms=0,Os=null,Xl=0,Vl=!1,Nl=5126,le=0,w=0,q=0,Er(il)?(zl=!0,Os=fe.createStream(34962,il),Nl=Os.dtype):(Os=fe.getBuffer(il),Os?Nl=Os.dtype:"constant"in il?(Ml=2,typeof il.constant=="number"?(Rl=il.constant,Tl=Ll=ms=0):(Rl=il.constant.length>0?il.constant[0]:0,Tl=il.constant.length>1?il.constant[1]:0,Ll=il.constant.length>2?il.constant[2]:0,ms=il.constant.length>3?il.constant[3]:0)):(Er(il.buffer)?Os=fe.createStream(34962,il.buffer):Os=fe.getBuffer(il.buffer),Nl="type"in il?Ri[il.type]:Os.dtype,Vl=!!il.normalized,Xl=il.size|0,le=il.offset|0,w=il.stride|0,q=il.divisor|0)),Q=Ye.state,Ye.state=Ml,ee=Ye.x,Ye.x=Rl,ue=Ye.y,Ye.y=Tl,Ve=Ye.z,Ye.z=Ll,tt=Ye.w,Ye.w=ms,mt=Ye.buffer,Ye.buffer=Os,Bt=Ye.size,Ye.size=Xl,ir=Ye.normalized,Ye.normalized=Vl,or=Ye.type,Ye.type=Nl,kr=Ye.offset,Ye.offset=le,Vr=Ye.stride,Ye.stride=w,he=Ye.divisor,Ye.divisor=q,Se=h.call(this,xe,xn,Xr),Ne=!1,Ge=1,lt=0,rt=0,pt=0,Ht=0,nr=null,fr=0,Tr=!1,Ir=5126,ri=0,li=0,Ei=0,Er(Se)?(Ne=!0,nr=fe.createStream(34962,Se),Ir=nr.dtype):(nr=fe.getBuffer(Se),nr?Ir=nr.dtype:"constant"in Se?(Ge=2,typeof Se.constant=="number"?(lt=Se.constant,rt=pt=Ht=0):(lt=Se.constant.length>0?Se.constant[0]:0,rt=Se.constant.length>1?Se.constant[1]:0,pt=Se.constant.length>2?Se.constant[2]:0,Ht=Se.constant.length>3?Se.constant[3]:0)):(Er(Se.buffer)?nr=fe.createStream(34962,Se.buffer):nr=fe.getBuffer(Se.buffer),Ir="type"in Se?Ri[Se.type]:nr.dtype,Tr=!!Se.normalized,fr=Se.size|0,ri=Se.offset|0,li=Se.stride|0,Ei=Se.divisor|0)),hn=He.state,He.state=Ge,Zn=He.x,He.x=lt,Yn=He.y,He.y=rt,Ua=He.z,He.z=pt,Fo=He.w,He.w=Ht,vl=He.buffer,He.buffer=nr,Us=He.size,He.size=fr,ml=He.normalized,He.normalized=Tr,au=He.type,He.type=Ir,Sl=He.offset,He.offset=ri,Yl=He.stride,He.stride=li,Ol=He.divisor,He.divisor=Ei,ou=u.call(this,xe,xn,Xr),Pu=!1,iu=1,tu=0,Hu=0,$u=0,Ku=0,Wu=null,ju=0,sf=!1,_f=5126,Qu=0,ef=0,Z=0,Er(ou)?(Pu=!0,Wu=fe.createStream(34962,ou),_f=Wu.dtype):(Wu=fe.getBuffer(ou),Wu?_f=Wu.dtype:"constant"in ou?(iu=2,typeof ou.constant=="number"?(tu=ou.constant,Hu=$u=Ku=0):(tu=ou.constant.length>0?ou.constant[0]:0,Hu=ou.constant.length>1?ou.constant[1]:0,$u=ou.constant.length>2?ou.constant[2]:0,Ku=ou.constant.length>3?ou.constant[3]:0)):(Er(ou.buffer)?Wu=fe.createStream(34962,ou.buffer):Wu=fe.getBuffer(ou.buffer),_f="type"in ou?Ri[ou.type]:Wu.dtype,sf=!!ou.normalized,ju=ou.size|0,Qu=ou.offset|0,ef=ou.stride|0,Z=ou.divisor|0)),se=it.state,it.state=iu,Pe=it.x,it.x=tu,Xe=it.y,it.y=Hu,Qe=it.z,it.z=$u,st=it.w,it.w=Ku,jt=it.buffer,it.buffer=Wu,_t=it.size,it.size=ju,hr=it.normalized,it.normalized=sf,Cr=it.type,it.type=_f,zr=it.offset,it.offset=Qu,fi=it.stride,it.stride=ef,$r=it.divisor,it.divisor=Z,Bi=p.call(this,xe,xn,Xr),fn=!1,mi=1,zi=0,ji=0,pn=0,sn=0,wi=null,xo=0,no=!1,Xo=5126,js=0,El=0,Pl=0,Er(Bi)?(fn=!0,wi=fe.createStream(34962,Bi),Xo=wi.dtype):(wi=fe.getBuffer(Bi),wi?Xo=wi.dtype:"constant"in Bi?(mi=2,typeof Bi.constant=="number"?(zi=Bi.constant,ji=pn=sn=0):(zi=Bi.constant.length>0?Bi.constant[0]:0,ji=Bi.constant.length>1?Bi.constant[1]:0,pn=Bi.constant.length>2?Bi.constant[2]:0,sn=Bi.constant.length>3?Bi.constant[3]:0)):(Er(Bi.buffer)?wi=fe.createStream(34962,Bi.buffer):wi=fe.getBuffer(Bi.buffer),Xo="type"in Bi?Ri[Bi.type]:wi.dtype,no=!!Bi.normalized,xo=Bi.size|0,js=Bi.offset|0,El=Bi.stride|0,Pl=Bi.divisor|0)),pu=et.state,et.state=mi,Il=et.x,et.x=zi,fu=et.y,et.y=ji,Xu=et.z,et.z=pn,Vu=et.w,et.w=sn,tf=et.buffer,et.buffer=wi,ds=et.size,et.size=xo,Wl=et.normalized,et.normalized=no,Tu=et.type,et.type=Xo,Au=et.offset,et.offset=js,lf=et.stride,et.stride=El,hf=et.divisor,et.divisor=Pl,Mf=pe.vert,pe.vert=It,pf=pe.frag,pe.frag=Yt,Fe.dirty=!0,bi(xe,xn,Xr),xe.viewportWidth=Ti,xe.viewportHeight=en,ti[0]=ii,ti[1]=Xi,ti[2]=aa,ti[3]=Mn,Rr[0]=Un,Rr[1]=Ga,Rr[2]=ma,Rr[3]=oa,Ie.blend_enable=ka,$i[0]=so,$i[1]=Kr,$i[2]=Ia,$i[3]=Yo,Ie.depth_enable=fa,ki[0]=$a,ki[1]=fo,ki[2]=mn,ki[3]=ra,Ie.scissor_enable=wa,Ie.stencil_enable=ws,Co&&(r.cpuTime+=performance.now()-Po),Ps&&ge.destroyStream(gn),ft.elements=Ha,ft.offset=ao,ft.count=Ko,ft.primitive=Qo,zt[Je]=Hi,zt[gt]=Sa,zt[Nt]=vn,zt[at]=la,zt[Ke]=Ts,zt[Ct]=co,zt[wt]=No,zt[St]=Go,zt[Dt]=qs,zt[Zt]=Oa,Vs&&fe.destroyStream(Xn),Et.state=lo,Et.x=eo,Et.y=sa,Et.z=es,Et.w=Na,Et.buffer=rn,Et.size=Pa,Et.normalized=to,Et.type=yo,Et.offset=Jo,Et.stride=To,Et.divisor=Dn,Ws&&fe.destroyStream(Ao),Te.state=oo,Te.x=za,Te.y=ea,Te.z=rs,Te.w=$s,Te.buffer=us,Te.size=Ds,Te.normalized=fl,Te.type=as,Te.offset=Ma,Te.stride=Qs,Te.divisor=ho,Vo&&fe.destroyStream(Jn),ot.state=Ta,ot.x=os,ot.y=_l,ot.z=Ss,ot.w=po,ot.buffer=go,ot.size=ss,ot.normalized=qo,ot.type=zo,ot.offset=io,ot.stride=Io,ot.divisor=Da,fs&&fe.destroyStream(Fs),Tt.state=Bs,Tt.x=At,Tt.y=Vt,Tt.z=wr,Tt.w=mr,Tt.buffer=Fr,Tt.size=_i,Tt.normalized=Si,Tt.type=Ci,Tt.offset=Ki,Tt.stride=Fn,Tt.divisor=Pi,Li&&fe.destroyStream(pa),vt.state=xl,vt.x=Bl,vt.y=bl,vt.z=eu,vt.w=Zl,vt.buffer=Ul,vt.size=ja,vt.normalized=ns,vt.type=Js,vt.offset=cs,vt.stride=sl,vt.divisor=ll,zl&&fe.destroyStream(Os),Ye.state=Q,Ye.x=ee,Ye.y=ue,Ye.z=Ve,Ye.w=tt,Ye.buffer=mt,Ye.size=Bt,Ye.normalized=ir,Ye.type=or,Ye.offset=kr,Ye.stride=Vr,Ye.divisor=he,Ne&&fe.destroyStream(nr),He.state=hn,He.x=Zn,He.y=Yn,He.z=Ua,He.w=Fo,He.buffer=vl,He.size=Us,He.normalized=ml,He.type=au,He.offset=Sl,He.stride=Yl,He.divisor=Ol,Pu&&fe.destroyStream(Wu),it.state=se,it.x=Pe,it.y=Xe,it.z=Qe,it.w=st,it.buffer=jt,it.size=_t,it.normalized=hr,it.type=Cr,it.offset=zr,it.stride=fi,it.divisor=$r,fn&&fe.destroyStream(wi),et.state=pu,et.x=Il,et.y=fu,et.z=Xu,et.w=Vu,et.buffer=tf,et.size=ds,et.normalized=Wl,et.type=Tu,et.offset=Au,et.stride=lf,et.divisor=hf,pe.vert=Mf,pe.frag=pf,Fe.dirty=!0},batch:function(xn,bi){var Xr,ct,tr,pr,gr,Zr,Ti;if(Xr=Gr.angle_instanced_arrays,ct=rr.next,ct!==rr.cur&&(ct?Re.bindFramebuffer(36160,ct.framebuffer):Re.bindFramebuffer(36160,null),rr.cur=ct),Fe.dirty){var en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao;en=Ie.dither,en!==Fe.dither&&(en?Re.enable(3024):Re.disable(3024),Fe.dither=en),ii=Di[0],Xi=Di[1],(ii!==ni[0]||Xi!==ni[1])&&(Re.blendEquationSeparate(ii,Xi),ni[0]=ii,ni[1]=Xi),aa=Ie.depth_func,aa!==Fe.depth_func&&(Re.depthFunc(aa),Fe.depth_func=aa),Mn=si[0],Un=si[1],(Mn!==Ai[0]||Un!==Ai[1])&&(Re.depthRange(Mn,Un),Ai[0]=Mn,Ai[1]=Un),Ga=Ie.depth_mask,Ga!==Fe.depth_mask&&(Re.depthMask(Ga),Fe.depth_mask=Ga),ma=Ni[0],oa=Ni[1],ka=Ni[2],so=Ni[3],(ma!==Rt[0]||oa!==Rt[1]||ka!==Rt[2]||so!==Rt[3])&&(Re.colorMask(ma,oa,ka,so),Rt[0]=ma,Rt[1]=oa,Rt[2]=ka,Rt[3]=so),Kr=Ie.cull_enable,Kr!==Fe.cull_enable&&(Kr?Re.enable(2884):Re.disable(2884),Fe.cull_enable=Kr),Ia=Ie.cull_face,Ia!==Fe.cull_face&&(Re.cullFace(Ia),Fe.cull_face=Ia),Yo=Ie.frontFace,Yo!==Fe.frontFace&&(Re.frontFace(Yo),Fe.frontFace=Yo),fa=Ie.lineWidth,fa!==Fe.lineWidth&&(Re.lineWidth(fa),Fe.lineWidth=fa),kn=Ie.polygonOffset_enable,kn!==Fe.polygonOffset_enable&&(kn?Re.enable(32823):Re.disable(32823),Fe.polygonOffset_enable=kn),Aa=yt[0],ys=yt[1],(Aa!==Gt[0]||ys!==Gt[1])&&(Re.polygonOffset(Aa,ys),Gt[0]=Aa,Gt[1]=ys),uo=Ie.sample_alpha,uo!==Fe.sample_alpha&&(uo?Re.enable(32926):Re.disable(32926),Fe.sample_alpha=uo),ls=Ie.sample_enable,ls!==Fe.sample_enable&&(ls?Re.enable(32928):Re.disable(32928),Fe.sample_enable=ls),$a=Wt[0],fo=Wt[1],($a!==xr[0]||fo!==xr[1])&&(Re.sampleCoverage($a,fo),xr[0]=$a,xr[1]=fo),mn=Ie.stencil_mask,mn!==Fe.stencil_mask&&(Re.stencilMask(mn),Fe.stencil_mask=mn),ra=Lr[0],wa=Lr[1],ws=Lr[2],(ra!==Nr[0]||wa!==Nr[1]||ws!==Nr[2])&&(Re.stencilFunc(ra,wa,ws),Nr[0]=ra,Nr[1]=wa,Nr[2]=ws),Co=Or[0],Po=Or[1],Wi=Or[2],gn=Or[3],(Co!==Hr[0]||Po!==Hr[1]||Wi!==Hr[2]||gn!==Hr[3])&&(Re.stencilOpSeparate(Co,Po,Wi,gn),Hr[0]=Co,Hr[1]=Po,Hr[2]=Wi,Hr[3]=gn),Ps=jr[0],Ha=jr[1],Sn=jr[2],ao=jr[3],(Ps!==gi[0]||Ha!==gi[1]||Sn!==gi[2]||ao!==gi[3])&&(Re.stencilOpSeparate(Ps,Ha,Sn,ao),gi[0]=Ps,gi[1]=Ha,gi[2]=Sn,gi[3]=ao)}Re.blendColor(0,0,0,1),pi[0]=0,pi[1]=0,pi[2]=0,pi[3]=1,cr?Re.enable(3042):Re.disable(3042),Fe.blend_enable=cr,Re.blendFuncSeparate(770,771,773,1),Qi[0]=770,Qi[1]=771,Qi[2]=773,Qi[3]=1,_r?Re.enable(2929):Re.disable(2929),Fe.depth_enable=_r,yr?Re.enable(3089):Re.disable(3089),Fe.scissor_enable=yr,Ut?Re.enable(2960):Re.disable(2960),Fe.stencil_enable=Ut,tr=Fe.profile,tr&&(pr=performance.now(),r.count+=bi),Re.useProgram(s.program),gr=Gr.angle_instanced_arrays;var Ba;for(Pt.setVAO(null),Re.uniform1i(P.location,!1),Re.uniform1i(G.location,j.bind()),Ba=ft.instances,Zr=0;Zr0?mo.constant[0]:0,Ys=mo.constant.length>1?mo.constant[1]:0,qs=mo.constant.length>2?mo.constant[2]:0,Ns=mo.constant.length>3?mo.constant[3]:0)):(Er(mo.buffer)?Oa=fe.createStream(34962,mo.buffer):Oa=fe.getBuffer(mo.buffer),Ya="type"in mo?Ri[mo.type]:Oa.dtype,Vs=!!mo.normalized,ha=mo.size|0,_n=mo.offset|0,Vn=mo.stride|0,wo=mo.divisor|0)),Ra=l.location,Xn=dt[Ra],jn===1?(Xn.buffer||Re.enableVertexAttribArray(Ra),un=ha||4,(Xn.type!==Ya||Xn.size!==un||Xn.buffer!==Oa||Xn.normalized!==Vs||Xn.offset!==_n||Xn.stride!==Vn)&&(Re.bindBuffer(34962,Oa.buffer),Re.vertexAttribPointer(Ra,un,Ya,Vs,Vn,_n),Xn.type=Ya,Xn.size=un,Xn.buffer=Oa,Xn.normalized=Vs,Xn.offset=_n,Xn.stride=Vn),Xn.divisor!==wo&&(gr.vertexAttribDivisorANGLE(Ra,wo),Xn.divisor=wo)):(Xn.buffer&&(Re.disableVertexAttribArray(Ra),Xn.buffer=null),(Xn.x!==Go||Xn.y!==Ys||Xn.z!==qs||Xn.w!==Ns)&&(Re.vertexAttrib4f(Ra,Go,Ys,qs,Ns),Xn.x=Go,Xn.y=Ys,Xn.z=qs,Xn.w=Ns)),$n=f.call(this,xe,Ti,Zr),Ka=!1,qn=1,Eo=0,Ja=0,lo=0,eo=0,sa=null,es=0,Na=!1,rn=5126,Pa=0,to=0,yo=0,Er($n)?(Ka=!0,sa=fe.createStream(34962,$n),rn=sa.dtype):(sa=fe.getBuffer($n),sa?rn=sa.dtype:"constant"in $n?(qn=2,typeof $n.constant=="number"?(Eo=$n.constant,Ja=lo=eo=0):(Eo=$n.constant.length>0?$n.constant[0]:0,Ja=$n.constant.length>1?$n.constant[1]:0,lo=$n.constant.length>2?$n.constant[2]:0,eo=$n.constant.length>3?$n.constant[3]:0)):(Er($n.buffer)?sa=fe.createStream(34962,$n.buffer):sa=fe.getBuffer($n.buffer),rn="type"in $n?Ri[$n.type]:sa.dtype,Na=!!$n.normalized,es=$n.size|0,Pa=$n.offset|0,to=$n.stride|0,yo=$n.divisor|0)),Jo=c.location,To=dt[Jo],qn===1?(To.buffer||Re.enableVertexAttribArray(Jo),Dn=es||1,(To.type!==rn||To.size!==Dn||To.buffer!==sa||To.normalized!==Na||To.offset!==Pa||To.stride!==to)&&(Re.bindBuffer(34962,sa.buffer),Re.vertexAttribPointer(Jo,Dn,rn,Na,to,Pa),To.type=rn,To.size=Dn,To.buffer=sa,To.normalized=Na,To.offset=Pa,To.stride=to),To.divisor!==yo&&(gr.vertexAttribDivisorANGLE(Jo,yo),To.divisor=yo)):(To.buffer&&(Re.disableVertexAttribArray(Jo),To.buffer=null),(To.x!==Eo||To.y!==Ja||To.z!==lo||To.w!==eo)&&(Re.vertexAttrib4f(Jo,Eo,Ja,lo,eo),To.x=Eo,To.y=Ja,To.z=lo,To.w=eo)),_a=h.call(this,xe,Ti,Zr),Ws=!1,Ca=1,Es=0,As=0,Ho=0,Wa=0,Ao=null,ts=0,Wo=!1,qa=5126,ln=0,Bo=0,ko=0,Er(_a)?(Ws=!0,Ao=fe.createStream(34962,_a),qa=Ao.dtype):(Ao=fe.getBuffer(_a),Ao?qa=Ao.dtype:"constant"in _a?(Ca=2,typeof _a.constant=="number"?(Es=_a.constant,As=Ho=Wa=0):(Es=_a.constant.length>0?_a.constant[0]:0,As=_a.constant.length>1?_a.constant[1]:0,Ho=_a.constant.length>2?_a.constant[2]:0,Wa=_a.constant.length>3?_a.constant[3]:0)):(Er(_a.buffer)?Ao=fe.createStream(34962,_a.buffer):Ao=fe.getBuffer(_a.buffer),qa="type"in _a?Ri[_a.type]:Ao.dtype,Wo=!!_a.normalized,ts=_a.size|0,ln=_a.offset|0,Bo=_a.stride|0,ko=_a.divisor|0)),oo=d.location,za=dt[oo],Ca===1?(za.buffer||Re.enableVertexAttribArray(oo),ea=ts||4,(za.type!==qa||za.size!==ea||za.buffer!==Ao||za.normalized!==Wo||za.offset!==ln||za.stride!==Bo)&&(Re.bindBuffer(34962,Ao.buffer),Re.vertexAttribPointer(oo,ea,qa,Wo,Bo,ln),za.type=qa,za.size=ea,za.buffer=Ao,za.normalized=Wo,za.offset=ln,za.stride=Bo),za.divisor!==ko&&(gr.vertexAttribDivisorANGLE(oo,ko),za.divisor=ko)):(za.buffer&&(Re.disableVertexAttribArray(oo),za.buffer=null),(za.x!==Es||za.y!==As||za.z!==Ho||za.w!==Wa)&&(Re.vertexAttrib4f(oo,Es,As,Ho,Wa),za.x=Es,za.y=As,za.z=Ho,za.w=Wa)),rs=p.call(this,xe,Ti,Zr),$s=!1,us=1,Ds=0,fl=0,as=0,Ma=0,Qs=null,ho=0,gs=!1,Vo=5126,Do=0,Lo=0,xs=0,Er(rs)?($s=!0,Qs=fe.createStream(34962,rs),Vo=Qs.dtype):(Qs=fe.getBuffer(rs),Qs?Vo=Qs.dtype:"constant"in rs?(us=2,typeof rs.constant=="number"?(Ds=rs.constant,fl=as=Ma=0):(Ds=rs.constant.length>0?rs.constant[0]:0,fl=rs.constant.length>1?rs.constant[1]:0,as=rs.constant.length>2?rs.constant[2]:0,Ma=rs.constant.length>3?rs.constant[3]:0)):(Er(rs.buffer)?Qs=fe.createStream(34962,rs.buffer):Qs=fe.getBuffer(rs.buffer),Vo="type"in rs?Ri[rs.type]:Qs.dtype,gs=!!rs.normalized,ho=rs.size|0,Do=rs.offset|0,Lo=rs.stride|0,xs=rs.divisor|0)),ks=_.location,Ea=dt[ks],us===1?(Ea.buffer||Re.enableVertexAttribArray(ks),Jn=ho||1,(Ea.type!==Vo||Ea.size!==Jn||Ea.buffer!==Qs||Ea.normalized!==gs||Ea.offset!==Do||Ea.stride!==Lo)&&(Re.bindBuffer(34962,Qs.buffer),Re.vertexAttribPointer(ks,Jn,Vo,gs,Lo,Do),Ea.type=Vo,Ea.size=Jn,Ea.buffer=Qs,Ea.normalized=gs,Ea.offset=Do,Ea.stride=Lo),Ea.divisor!==xs&&(gr.vertexAttribDivisorANGLE(ks,xs),Ea.divisor=xs)):(Ea.buffer&&(Re.disableVertexAttribArray(ks),Ea.buffer=null),(Ea.x!==Ds||Ea.y!==fl||Ea.z!==as||Ea.w!==Ma)&&(Re.vertexAttrib4f(ks,Ds,fl,as,Ma),Ea.x=Ds,Ea.y=fl,Ea.z=as,Ea.w=Ma)),Oo=b.call(this,xe,Ti,Zr),rl=!1,Gs=1,bs=0,zs=0,$o=0,Ta=0,os=null,_l=0,Ss=!1,po=5126,go=0,ss=0,qo=0,Er(Oo)?(rl=!0,os=fe.createStream(34962,Oo),po=os.dtype):(os=fe.getBuffer(Oo),os?po=os.dtype:"constant"in Oo?(Gs=2,typeof Oo.constant=="number"?(bs=Oo.constant,zs=$o=Ta=0):(bs=Oo.constant.length>0?Oo.constant[0]:0,zs=Oo.constant.length>1?Oo.constant[1]:0,$o=Oo.constant.length>2?Oo.constant[2]:0,Ta=Oo.constant.length>3?Oo.constant[3]:0)):(Er(Oo.buffer)?os=fe.createStream(34962,Oo.buffer):os=fe.getBuffer(Oo.buffer),po="type"in Oo?Ri[Oo.type]:os.dtype,Ss=!!Oo.normalized,_l=Oo.size|0,go=Oo.offset|0,ss=Oo.stride|0,qo=Oo.divisor|0)),zo=v.location,io=dt[zo],Gs===1?(io.buffer||Re.enableVertexAttribArray(zo),Io=_l||1,(io.type!==po||io.size!==Io||io.buffer!==os||io.normalized!==Ss||io.offset!==go||io.stride!==ss)&&(Re.bindBuffer(34962,os.buffer),Re.vertexAttribPointer(zo,Io,po,Ss,ss,go),io.type=po,io.size=Io,io.buffer=os,io.normalized=Ss,io.offset=go,io.stride=ss),io.divisor!==qo&&(gr.vertexAttribDivisorANGLE(zo,qo),io.divisor=qo)):(io.buffer&&(Re.disableVertexAttribArray(zo),io.buffer=null),(io.x!==bs||io.y!==zs||io.z!==$o||io.w!==Ta)&&(Re.vertexAttrib4f(zo,bs,zs,$o,Ta),io.x=bs,io.y=zs,io.z=$o,io.w=Ta)),Da=k.call(this,xe,Ti,Zr),vs=!1,fs=1,cl=0,el=0,Hs=0,Ro=0,tl=null,Fs=0,hl=!1,Fa=5126,Ms=0,jo=0,Rs=0,Er(Da)?(vs=!0,tl=fe.createStream(34962,Da),Fa=tl.dtype):(tl=fe.getBuffer(Da),tl?Fa=tl.dtype:"constant"in Da?(fs=2,typeof Da.constant=="number"?(cl=Da.constant,el=Hs=Ro=0):(cl=Da.constant.length>0?Da.constant[0]:0,el=Da.constant.length>1?Da.constant[1]:0,Hs=Da.constant.length>2?Da.constant[2]:0,Ro=Da.constant.length>3?Da.constant[3]:0)):(Er(Da.buffer)?tl=fe.createStream(34962,Da.buffer):tl=fe.getBuffer(Da.buffer),Fa="type"in Da?Ri[Da.type]:tl.dtype,hl=!!Da.normalized,Fs=Da.size|0,Ms=Da.offset|0,jo=Da.stride|0,Rs=Da.divisor|0)),Is=E.location,Bs=dt[Is],fs===1?(Bs.buffer||Re.enableVertexAttribArray(Is),At=Fs||1,(Bs.type!==Fa||Bs.size!==At||Bs.buffer!==tl||Bs.normalized!==hl||Bs.offset!==Ms||Bs.stride!==jo)&&(Re.bindBuffer(34962,tl.buffer),Re.vertexAttribPointer(Is,At,Fa,hl,jo,Ms),Bs.type=Fa,Bs.size=At,Bs.buffer=tl,Bs.normalized=hl,Bs.offset=Ms,Bs.stride=jo),Bs.divisor!==Rs&&(gr.vertexAttribDivisorANGLE(Is,Rs),Bs.divisor=Rs)):(Bs.buffer&&(Re.disableVertexAttribArray(Is),Bs.buffer=null),(Bs.x!==cl||Bs.y!==el||Bs.z!==Hs||Bs.w!==Ro)&&(Re.vertexAttrib4f(Is,cl,el,Hs,Ro),Bs.x=cl,Bs.y=el,Bs.z=Hs,Bs.w=Ro)),Vt=A.call(this,xe,Ti,Zr),wr=!1,mr=1,Fr=0,_i=0,Si=0,Ci=0,Ki=null,Fn=0,Pi=!1,di=5126,Li=0,Mi=0,Gn=0,Er(Vt)?(wr=!0,Ki=fe.createStream(34962,Vt),di=Ki.dtype):(Ki=fe.getBuffer(Vt),Ki?di=Ki.dtype:"constant"in Vt?(mr=2,typeof Vt.constant=="number"?(Fr=Vt.constant,_i=Si=Ci=0):(Fr=Vt.constant.length>0?Vt.constant[0]:0,_i=Vt.constant.length>1?Vt.constant[1]:0,Si=Vt.constant.length>2?Vt.constant[2]:0,Ci=Vt.constant.length>3?Vt.constant[3]:0)):(Er(Vt.buffer)?Ki=fe.createStream(34962,Vt.buffer):Ki=fe.getBuffer(Vt.buffer),di="type"in Vt?Ri[Vt.type]:Ki.dtype,Pi=!!Vt.normalized,Fn=Vt.size|0,Li=Vt.offset|0,Mi=Vt.stride|0,Gn=Vt.divisor|0)),ta=L.location,ya=dt[ta],mr===1?(ya.buffer||Re.enableVertexAttribArray(ta),ia=Fn||1,(ya.type!==di||ya.size!==ia||ya.buffer!==Ki||ya.normalized!==Pi||ya.offset!==Li||ya.stride!==Mi)&&(Re.bindBuffer(34962,Ki.buffer),Re.vertexAttribPointer(ta,ia,di,Pi,Mi,Li),ya.type=di,ya.size=ia,ya.buffer=Ki,ya.normalized=Pi,ya.offset=Li,ya.stride=Mi),ya.divisor!==Gn&&(gr.vertexAttribDivisorANGLE(ta,Gn),ya.divisor=Gn)):(ya.buffer&&(Re.disableVertexAttribArray(ta),ya.buffer=null),(ya.x!==Fr||ya.y!==_i||ya.z!==Si||ya.w!==Ci)&&(Re.vertexAttrib4f(ta,Fr,_i,Si,Ci),ya.x=Fr,ya.y=_i,ya.z=Si,ya.w=Ci)),pa=x.call(this,xe,Ti,Zr),va=!1,zn=1,is=0,Cs=0,Ks=0,dl=0,xl=null,Bl=0,bl=!1,eu=5126,Zl=0,Ul=0,ja=0,Er(pa)?(va=!0,xl=fe.createStream(34962,pa),eu=xl.dtype):(xl=fe.getBuffer(pa),xl?eu=xl.dtype:"constant"in pa?(zn=2,typeof pa.constant=="number"?(is=pa.constant,Cs=Ks=dl=0):(is=pa.constant.length>0?pa.constant[0]:0,Cs=pa.constant.length>1?pa.constant[1]:0,Ks=pa.constant.length>2?pa.constant[2]:0,dl=pa.constant.length>3?pa.constant[3]:0)):(Er(pa.buffer)?xl=fe.createStream(34962,pa.buffer):xl=fe.getBuffer(pa.buffer),eu="type"in pa?Ri[pa.type]:xl.dtype,bl=!!pa.normalized,Bl=pa.size|0,Zl=pa.offset|0,Ul=pa.stride|0,ja=pa.divisor|0)),ns=C.location,Js=dt[ns],zn===1?(Js.buffer||Re.enableVertexAttribArray(ns),cs=Bl||1,(Js.type!==eu||Js.size!==cs||Js.buffer!==xl||Js.normalized!==bl||Js.offset!==Zl||Js.stride!==Ul)&&(Re.bindBuffer(34962,xl.buffer),Re.vertexAttribPointer(ns,cs,eu,bl,Ul,Zl),Js.type=eu,Js.size=cs,Js.buffer=xl,Js.normalized=bl,Js.offset=Zl,Js.stride=Ul),Js.divisor!==ja&&(gr.vertexAttribDivisorANGLE(ns,ja),Js.divisor=ja)):(Js.buffer&&(Re.disableVertexAttribArray(ns),Js.buffer=null),(Js.x!==is||Js.y!==Cs||Js.z!==Ks||Js.w!==dl)&&(Re.vertexAttrib4f(ns,is,Cs,Ks,dl),Js.x=is,Js.y=Cs,Js.z=Ks,Js.w=dl)),sl=M.call(this,xe,Ti,Zr),ll=!1,il=1,zl=0,Ml=0,Rl=0,Tl=0,Ll=null,ms=0,Os=!1,Xl=5126,Vl=0,Nl=0,le=0,Er(sl)?(ll=!0,Ll=fe.createStream(34962,sl),Xl=Ll.dtype):(Ll=fe.getBuffer(sl),Ll?Xl=Ll.dtype:"constant"in sl?(il=2,typeof sl.constant=="number"?(zl=sl.constant,Ml=Rl=Tl=0):(zl=sl.constant.length>0?sl.constant[0]:0,Ml=sl.constant.length>1?sl.constant[1]:0,Rl=sl.constant.length>2?sl.constant[2]:0,Tl=sl.constant.length>3?sl.constant[3]:0)):(Er(sl.buffer)?Ll=fe.createStream(34962,sl.buffer):Ll=fe.getBuffer(sl.buffer),Xl="type"in sl?Ri[sl.type]:Ll.dtype,Os=!!sl.normalized,ms=sl.size|0,Vl=sl.offset|0,Nl=sl.stride|0,le=sl.divisor|0)),w=m.location,q=dt[w],il===1?(q.buffer||Re.enableVertexAttribArray(w),Q=ms||1,(q.type!==Xl||q.size!==Q||q.buffer!==Ll||q.normalized!==Os||q.offset!==Vl||q.stride!==Nl)&&(Re.bindBuffer(34962,Ll.buffer),Re.vertexAttribPointer(w,Q,Xl,Os,Nl,Vl),q.type=Xl,q.size=Q,q.buffer=Ll,q.normalized=Os,q.offset=Vl,q.stride=Nl),q.divisor!==le&&(gr.vertexAttribDivisorANGLE(w,le),q.divisor=le)):(q.buffer&&(Re.disableVertexAttribArray(w),q.buffer=null),(q.x!==zl||q.y!==Ml||q.z!==Rl||q.w!==Tl)&&(Re.vertexAttrib4f(w,zl,Ml,Rl,Tl),q.x=zl,q.y=Ml,q.z=Rl,q.w=Tl)),ee=Ti.markerTexture,ee&&ee._reglType==="framebuffer"&&(ee=ee.color[0]),ue=ee._texture,Re.uniform1i(T.location,ue.bind()),Ve=Ti.opacity,(!Zr||tt!==Ve)&&(tt=Ve,Re.uniform1f(B.location,Ve)),mt=U.call(this,xe,Ti,Zr),Bt=mt[0],or=mt[1],(!Zr||ir!==Bt||kr!==or)&&(ir=Bt,kr=or,Re.uniform2f(F.location,Bt,or)),Vr=xe.pixelRatio,(!Zr||he!==Vr)&&(he=Vr,Re.uniform1f(H.location,Vr)),Se=Ti.scale,Ne=Se[0],lt=Se[1],(!Zr||Ge!==Ne||rt!==lt)&&(Ge=Ne,rt=lt,Re.uniform2f(N.location,Ne,lt)),pt=Ti.scaleFract,Ht=pt[0],fr=pt[1],(!Zr||nr!==Ht||Tr!==fr)&&(nr=Ht,Tr=fr,Re.uniform2f(W.location,Ht,fr)),Ir=Ti.translate,ri=Ir[0],Ei=Ir[1],(!Zr||li!==ri||hn!==Ei)&&(li=ri,hn=Ei,Re.uniform2f(re.location,ri,Ei)),Zn=Ti.translateFract,Yn=Zn[0],Fo=Zn[1],(!Zr||Ua!==Yn||vl!==Fo)&&(Ua=Yn,vl=Fo,Re.uniform2f(ae.location,Yn,Fo)),Us=Ti.elements,ml=null,au=Er(Us),au?ml=ge.createStream(Us):ml=ge.getElements(Us),ml&&Re.bindBuffer(34963,ml.buffer.buffer),Sl=Ti.offset,Yl=Ti.count,Yl&&(Ba>0?ml?gr.drawElementsInstancedANGLE(0,Yl,ml.type,Sl<<(ml.type-5121>>1),Ba):gr.drawArraysInstancedANGLE(0,Sl,Yl,Ba):Ba<0&&(ml?Re.drawElements(0,Yl,ml.type,Sl<<(ml.type-5121>>1)):Re.drawArrays(0,Sl,Yl)),xe.viewportWidth=vn,xe.viewportHeight=da,No&&fe.destroyStream(Oa),Ka&&fe.destroyStream(sa),Ws&&fe.destroyStream(Ao),$s&&fe.destroyStream(Qs),rl&&fe.destroyStream(os),vs&&fe.destroyStream(tl),wr&&fe.destroyStream(Ki),va&&fe.destroyStream(xl),ll&&fe.destroyStream(Ll),ue.unbind(),au&&ge.destroyStream(ml))}j.unbind(),Fe.dirty=!0,Pt.setVAO(null),tr&&(r.cpuTime+=performance.now()-pr)}}}});var I8=Ae((jxr,QNe)=>{QNe.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr){"use strict";var Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri;return Ut=t.gl,Re=t.context,xe=t.strings,Oe=t.next,Ie=t.current,Fe=t.draw,ft=t.elements,ge=t.buffer,fe=t.shader,pe=t.attributes,dt=t.vao,Pt=t.uniforms,zt=t.framebuffer,rr=t.extensions,Gr=t.timer,Br=t.isBufferArgs,Er=Oe.blend_color,Rr=Ie.blend_color,pi=Oe.blend_equation,Di=Ie.blend_equation,ni=Oe.blend_func,$i=Ie.blend_func,Qi=Oe.depth_range,si=Ie.depth_range,Ai=Oe.colorMask,Ni=Ie.colorMask,Rt=Oe.polygonOffset_offset,yt=Ie.polygonOffset_offset,Gt=Oe.sample_coverage,Wt=Ie.sample_coverage,xr=Oe.stencil_func,Lr=Ie.stencil_func,Nr=Oe.stencil_opFront,Or=Ie.stencil_opFront,Hr=Oe.stencil_opBack,jr=Ie.stencil_opBack,gi=Oe.scissor_box,ki=Ie.scissor_box,Vi=Oe.viewport,ti=Ie.viewport,tn={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Yr={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},oi={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Fi={add:32774,subtract:32778,"reverse subtract":32779},an={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},nn={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Ri={cw:2304,ccw:2305},{draw:function(Ii){var xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl;if(xn=rr.angle_instanced_arrays,bi=zt.next,bi!==zt.cur&&(bi?Ut.bindFramebuffer(36160,bi.framebuffer):Ut.bindFramebuffer(36160,null),zt.cur=bi),Ie.dirty){var ll,il,zl,Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt,pt,Ht;ll=Oe.dither,ll!==Ie.dither&&(ll?Ut.enable(3024):Ut.disable(3024),Ie.dither=ll),il=pi[0],zl=pi[1],(il!==Di[0]||zl!==Di[1])&&(Ut.blendEquationSeparate(il,zl),Di[0]=il,Di[1]=zl),Ml=Oe.depth_func,Ml!==Ie.depth_func&&(Ut.depthFunc(Ml),Ie.depth_func=Ml),Rl=Qi[0],Tl=Qi[1],(Rl!==si[0]||Tl!==si[1])&&(Ut.depthRange(Rl,Tl),si[0]=Rl,si[1]=Tl),Ll=Oe.depth_mask,Ll!==Ie.depth_mask&&(Ut.depthMask(Ll),Ie.depth_mask=Ll),ms=Ai[0],Os=Ai[1],Xl=Ai[2],Vl=Ai[3],(ms!==Ni[0]||Os!==Ni[1]||Xl!==Ni[2]||Vl!==Ni[3])&&(Ut.colorMask(ms,Os,Xl,Vl),Ni[0]=ms,Ni[1]=Os,Ni[2]=Xl,Ni[3]=Vl),Nl=Oe.cull_enable,Nl!==Ie.cull_enable&&(Nl?Ut.enable(2884):Ut.disable(2884),Ie.cull_enable=Nl),le=Oe.cull_face,le!==Ie.cull_face&&(Ut.cullFace(le),Ie.cull_face=le),w=Oe.frontFace,w!==Ie.frontFace&&(Ut.frontFace(w),Ie.frontFace=w),q=Oe.lineWidth,q!==Ie.lineWidth&&(Ut.lineWidth(q),Ie.lineWidth=q),Q=Oe.polygonOffset_enable,Q!==Ie.polygonOffset_enable&&(Q?Ut.enable(32823):Ut.disable(32823),Ie.polygonOffset_enable=Q),ee=Rt[0],ue=Rt[1],(ee!==yt[0]||ue!==yt[1])&&(Ut.polygonOffset(ee,ue),yt[0]=ee,yt[1]=ue),Ve=Oe.sample_alpha,Ve!==Ie.sample_alpha&&(Ve?Ut.enable(32926):Ut.disable(32926),Ie.sample_alpha=Ve),tt=Oe.sample_enable,tt!==Ie.sample_enable&&(tt?Ut.enable(32928):Ut.disable(32928),Ie.sample_enable=tt),mt=Gt[0],Bt=Gt[1],(mt!==Wt[0]||Bt!==Wt[1])&&(Ut.sampleCoverage(mt,Bt),Wt[0]=mt,Wt[1]=Bt),ir=Oe.stencil_mask,ir!==Ie.stencil_mask&&(Ut.stencilMask(ir),Ie.stencil_mask=ir),or=xr[0],kr=xr[1],Vr=xr[2],(or!==Lr[0]||kr!==Lr[1]||Vr!==Lr[2])&&(Ut.stencilFunc(or,kr,Vr),Lr[0]=or,Lr[1]=kr,Lr[2]=Vr),he=Nr[0],Se=Nr[1],Ne=Nr[2],Ge=Nr[3],(he!==Or[0]||Se!==Or[1]||Ne!==Or[2]||Ge!==Or[3])&&(Ut.stencilOpSeparate(he,Se,Ne,Ge),Or[0]=he,Or[1]=Se,Or[2]=Ne,Or[3]=Ge),lt=Hr[0],rt=Hr[1],pt=Hr[2],Ht=Hr[3],(lt!==jr[0]||rt!==jr[1]||pt!==jr[2]||Ht!==jr[3])&&(Ut.stencilOpSeparate(lt,rt,pt,Ht),jr[0]=lt,jr[1]=rt,jr[2]=pt,jr[3]=Ht)}Xr=Ii.viewport,ct=Xr.x|0,tr=Xr.y|0,pr="width"in Xr?Xr.width|0:Re.framebufferWidth-ct,gr="height"in Xr?Xr.height|0:Re.framebufferHeight-tr,Zr=Re.viewportWidth,Re.viewportWidth=pr,Ti=Re.viewportHeight,Re.viewportHeight=gr,Ut.viewport(ct,tr,pr,gr),ti[0]=ct,ti[1]=tr,ti[2]=pr,ti[3]=gr,Ut.blendColor(0,0,0,1),Rr[0]=0,Rr[1]=0,Rr[2]=0,Rr[3]=1,n?Ut.enable(3042):Ut.disable(3042),Ie.blend_enable=n,Ut.blendFuncSeparate(770,771,773,1),$i[0]=770,$i[1]=771,$i[2]=773,$i[3]=1,i?Ut.enable(2929):Ut.disable(2929),Ie.depth_enable=i,en=Ii.viewport,ii=en.x|0,Xi=en.y|0,aa="width"in en?en.width|0:Re.framebufferWidth-ii,Mn="height"in en?en.height|0:Re.framebufferHeight-Xi,Ut.scissor(ii,Xi,aa,Mn),ki[0]=ii,ki[1]=Xi,ki[2]=aa,ki[3]=Mn,a?Ut.enable(3089):Ut.disable(3089),Ie.scissor_enable=a,o?Ut.enable(2960):Ut.disable(2960),Ie.stencil_enable=o,Un=Ie.profile,Un&&(Ga=performance.now(),r.count++),Ut.useProgram(s.program),ma=rr.angle_instanced_arrays,dt.setVAO(null),oa=u.call(this,Re,Ii,0),ka=!1,so=1,Kr=0,Ia=0,Yo=0,fa=0,kn=null,Aa=0,ys=!1,uo=5126,ls=0,$a=0,fo=0,Br(oa)?(ka=!0,kn=ge.createStream(34962,oa),uo=kn.dtype):(kn=ge.getBuffer(oa),kn?uo=kn.dtype:"constant"in oa?(so=2,typeof oa.constant=="number"?(Kr=oa.constant,Ia=Yo=fa=0):(Kr=oa.constant.length>0?oa.constant[0]:0,Ia=oa.constant.length>1?oa.constant[1]:0,Yo=oa.constant.length>2?oa.constant[2]:0,fa=oa.constant.length>3?oa.constant[3]:0)):(Br(oa.buffer)?kn=ge.createStream(34962,oa.buffer):kn=ge.getBuffer(oa.buffer),uo="type"in oa?nn[oa.type]:kn.dtype,ys=!!oa.normalized,Aa=oa.size|0,ls=oa.offset|0,$a=oa.stride|0,fo=oa.divisor|0)),mn=l.location,ra=pe[mn],so===1?(ra.buffer||Ut.enableVertexAttribArray(mn),wa=Aa||4,(ra.type!==uo||ra.size!==wa||ra.buffer!==kn||ra.normalized!==ys||ra.offset!==ls||ra.stride!==$a)&&(Ut.bindBuffer(34962,kn.buffer),Ut.vertexAttribPointer(mn,wa,uo,ys,$a,ls),ra.type=uo,ra.size=wa,ra.buffer=kn,ra.normalized=ys,ra.offset=ls,ra.stride=$a),ra.divisor!==fo&&(ma.vertexAttribDivisorANGLE(mn,fo),ra.divisor=fo)):(ra.buffer&&(Ut.disableVertexAttribArray(mn),ra.buffer=null),(ra.x!==Kr||ra.y!==Ia||ra.z!==Yo||ra.w!==fa)&&(Ut.vertexAttrib4f(mn,Kr,Ia,Yo,fa),ra.x=Kr,ra.y=Ia,ra.z=Yo,ra.w=fa)),ws=f.call(this,Re,Ii,0),Co=!1,Po=1,Wi=0,gn=0,Ps=0,Ha=0,Sn=null,ao=0,Ba=!1,Ko=5126,Qo=0,Hi=0,Sa=0,Br(ws)?(Co=!0,Sn=ge.createStream(34962,ws),Ko=Sn.dtype):(Sn=ge.getBuffer(ws),Sn?Ko=Sn.dtype:"constant"in ws?(Po=2,typeof ws.constant=="number"?(Wi=ws.constant,gn=Ps=Ha=0):(Wi=ws.constant.length>0?ws.constant[0]:0,gn=ws.constant.length>1?ws.constant[1]:0,Ps=ws.constant.length>2?ws.constant[2]:0,Ha=ws.constant.length>3?ws.constant[3]:0)):(Br(ws.buffer)?Sn=ge.createStream(34962,ws.buffer):Sn=ge.getBuffer(ws.buffer),Ko="type"in ws?nn[ws.type]:Sn.dtype,Ba=!!ws.normalized,ao=ws.size|0,Qo=ws.offset|0,Hi=ws.stride|0,Sa=ws.divisor|0)),Qa=c.location,vn=pe[Qa],Po===1?(vn.buffer||Ut.enableVertexAttribArray(Qa),da=ao||1,(vn.type!==Ko||vn.size!==da||vn.buffer!==Sn||vn.normalized!==Ba||vn.offset!==Qo||vn.stride!==Hi)&&(Ut.bindBuffer(34962,Sn.buffer),Ut.vertexAttribPointer(Qa,da,Ko,Ba,Hi,Qo),vn.type=Ko,vn.size=da,vn.buffer=Sn,vn.normalized=Ba,vn.offset=Qo,vn.stride=Hi),vn.divisor!==Sa&&(ma.vertexAttribDivisorANGLE(Qa,Sa),vn.divisor=Sa)):(vn.buffer&&(Ut.disableVertexAttribArray(Qa),vn.buffer=null),(vn.x!==Wi||vn.y!==gn||vn.z!==Ps||vn.w!==Ha)&&(Ut.vertexAttrib4f(Qa,Wi,gn,Ps,Ha),vn.x=Wi,vn.y=gn,vn.z=Ps,vn.w=Ha)),la=h.call(this,Re,Ii,0),vo=!1,Ts=1,ps=0,co=0,mo=0,No=0,jn=null,Go=0,Ys=!1,qs=5126,Ns=0,Oa=0,ha=0,Br(la)?(vo=!0,jn=ge.createStream(34962,la),qs=jn.dtype):(jn=ge.getBuffer(la),jn?qs=jn.dtype:"constant"in la?(Ts=2,typeof la.constant=="number"?(ps=la.constant,co=mo=No=0):(ps=la.constant.length>0?la.constant[0]:0,co=la.constant.length>1?la.constant[1]:0,mo=la.constant.length>2?la.constant[2]:0,No=la.constant.length>3?la.constant[3]:0)):(Br(la.buffer)?jn=ge.createStream(34962,la.buffer):jn=ge.getBuffer(la.buffer),qs="type"in la?nn[la.type]:jn.dtype,Ys=!!la.normalized,Go=la.size|0,Ns=la.offset|0,Oa=la.stride|0,ha=la.divisor|0)),Vs=d.location,Ya=pe[Vs],Ts===1?(Ya.buffer||Ut.enableVertexAttribArray(Vs),_n=Go||4,(Ya.type!==qs||Ya.size!==_n||Ya.buffer!==jn||Ya.normalized!==Ys||Ya.offset!==Ns||Ya.stride!==Oa)&&(Ut.bindBuffer(34962,jn.buffer),Ut.vertexAttribPointer(Vs,_n,qs,Ys,Oa,Ns),Ya.type=qs,Ya.size=_n,Ya.buffer=jn,Ya.normalized=Ys,Ya.offset=Ns,Ya.stride=Oa),Ya.divisor!==ha&&(ma.vertexAttribDivisorANGLE(Vs,ha),Ya.divisor=ha)):(Ya.buffer&&(Ut.disableVertexAttribArray(Vs),Ya.buffer=null),(Ya.x!==ps||Ya.y!==co||Ya.z!==mo||Ya.w!==No)&&(Ut.vertexAttrib4f(Vs,ps,co,mo,No),Ya.x=ps,Ya.y=co,Ya.z=mo,Ya.w=No)),Vn=p.call(this,Re,Ii,0),wo=!1,Ra=1,Xn=0,un=0,$n=0,Ka=0,qn=null,Eo=0,Ja=!1,lo=5126,eo=0,sa=0,es=0,Br(Vn)?(wo=!0,qn=ge.createStream(34962,Vn),lo=qn.dtype):(qn=ge.getBuffer(Vn),qn?lo=qn.dtype:"constant"in Vn?(Ra=2,typeof Vn.constant=="number"?(Xn=Vn.constant,un=$n=Ka=0):(Xn=Vn.constant.length>0?Vn.constant[0]:0,un=Vn.constant.length>1?Vn.constant[1]:0,$n=Vn.constant.length>2?Vn.constant[2]:0,Ka=Vn.constant.length>3?Vn.constant[3]:0)):(Br(Vn.buffer)?qn=ge.createStream(34962,Vn.buffer):qn=ge.getBuffer(Vn.buffer),lo="type"in Vn?nn[Vn.type]:qn.dtype,Ja=!!Vn.normalized,Eo=Vn.size|0,eo=Vn.offset|0,sa=Vn.stride|0,es=Vn.divisor|0)),Na=_.location,rn=pe[Na],Ra===1?(rn.buffer||Ut.enableVertexAttribArray(Na),Pa=Eo||1,(rn.type!==lo||rn.size!==Pa||rn.buffer!==qn||rn.normalized!==Ja||rn.offset!==eo||rn.stride!==sa)&&(Ut.bindBuffer(34962,qn.buffer),Ut.vertexAttribPointer(Na,Pa,lo,Ja,sa,eo),rn.type=lo,rn.size=Pa,rn.buffer=qn,rn.normalized=Ja,rn.offset=eo,rn.stride=sa),rn.divisor!==es&&(ma.vertexAttribDivisorANGLE(Na,es),rn.divisor=es)):(rn.buffer&&(Ut.disableVertexAttribArray(Na),rn.buffer=null),(rn.x!==Xn||rn.y!==un||rn.z!==$n||rn.w!==Ka)&&(Ut.vertexAttrib4f(Na,Xn,un,$n,Ka),rn.x=Xn,rn.y=un,rn.z=$n,rn.w=Ka)),to=b.call(this,Re,Ii,0),yo=!1,Jo=1,To=0,Dn=0,_a=0,Ws=0,Ca=null,Es=0,As=!1,Ho=5126,Wa=0,Ao=0,ts=0,Br(to)?(yo=!0,Ca=ge.createStream(34962,to),Ho=Ca.dtype):(Ca=ge.getBuffer(to),Ca?Ho=Ca.dtype:"constant"in to?(Jo=2,typeof to.constant=="number"?(To=to.constant,Dn=_a=Ws=0):(To=to.constant.length>0?to.constant[0]:0,Dn=to.constant.length>1?to.constant[1]:0,_a=to.constant.length>2?to.constant[2]:0,Ws=to.constant.length>3?to.constant[3]:0)):(Br(to.buffer)?Ca=ge.createStream(34962,to.buffer):Ca=ge.getBuffer(to.buffer),Ho="type"in to?nn[to.type]:Ca.dtype,As=!!to.normalized,Es=to.size|0,Wa=to.offset|0,Ao=to.stride|0,ts=to.divisor|0)),Wo=v.location,qa=pe[Wo],Jo===1?(qa.buffer||Ut.enableVertexAttribArray(Wo),ln=Es||1,(qa.type!==Ho||qa.size!==ln||qa.buffer!==Ca||qa.normalized!==As||qa.offset!==Wa||qa.stride!==Ao)&&(Ut.bindBuffer(34962,Ca.buffer),Ut.vertexAttribPointer(Wo,ln,Ho,As,Ao,Wa),qa.type=Ho,qa.size=ln,qa.buffer=Ca,qa.normalized=As,qa.offset=Wa,qa.stride=Ao),qa.divisor!==ts&&(ma.vertexAttribDivisorANGLE(Wo,ts),qa.divisor=ts)):(qa.buffer&&(Ut.disableVertexAttribArray(Wo),qa.buffer=null),(qa.x!==To||qa.y!==Dn||qa.z!==_a||qa.w!==Ws)&&(Ut.vertexAttrib4f(Wo,To,Dn,_a,Ws),qa.x=To,qa.y=Dn,qa.z=_a,qa.w=Ws)),Bo=k.call(this,Re,Ii,0),ko=!1,oo=1,za=0,ea=0,rs=0,$s=0,us=null,Ds=0,fl=!1,as=5126,Ma=0,Qs=0,ho=0,Br(Bo)?(ko=!0,us=ge.createStream(34962,Bo),as=us.dtype):(us=ge.getBuffer(Bo),us?as=us.dtype:"constant"in Bo?(oo=2,typeof Bo.constant=="number"?(za=Bo.constant,ea=rs=$s=0):(za=Bo.constant.length>0?Bo.constant[0]:0,ea=Bo.constant.length>1?Bo.constant[1]:0,rs=Bo.constant.length>2?Bo.constant[2]:0,$s=Bo.constant.length>3?Bo.constant[3]:0)):(Br(Bo.buffer)?us=ge.createStream(34962,Bo.buffer):us=ge.getBuffer(Bo.buffer),as="type"in Bo?nn[Bo.type]:us.dtype,fl=!!Bo.normalized,Ds=Bo.size|0,Ma=Bo.offset|0,Qs=Bo.stride|0,ho=Bo.divisor|0)),gs=E.location,Vo=pe[gs],oo===1?(Vo.buffer||Ut.enableVertexAttribArray(gs),Do=Ds||1,(Vo.type!==as||Vo.size!==Do||Vo.buffer!==us||Vo.normalized!==fl||Vo.offset!==Ma||Vo.stride!==Qs)&&(Ut.bindBuffer(34962,us.buffer),Ut.vertexAttribPointer(gs,Do,as,fl,Qs,Ma),Vo.type=as,Vo.size=Do,Vo.buffer=us,Vo.normalized=fl,Vo.offset=Ma,Vo.stride=Qs),Vo.divisor!==ho&&(ma.vertexAttribDivisorANGLE(gs,ho),Vo.divisor=ho)):(Vo.buffer&&(Ut.disableVertexAttribArray(gs),Vo.buffer=null),(Vo.x!==za||Vo.y!==ea||Vo.z!==rs||Vo.w!==$s)&&(Ut.vertexAttrib4f(gs,za,ea,rs,$s),Vo.x=za,Vo.y=ea,Vo.z=rs,Vo.w=$s)),Lo=A.call(this,Re,Ii,0),xs=!1,ks=1,Ea=0,Jn=0,Oo=0,rl=0,Gs=null,bs=0,zs=!1,$o=5126,Ta=0,os=0,_l=0,Br(Lo)?(xs=!0,Gs=ge.createStream(34962,Lo),$o=Gs.dtype):(Gs=ge.getBuffer(Lo),Gs?$o=Gs.dtype:"constant"in Lo?(ks=2,typeof Lo.constant=="number"?(Ea=Lo.constant,Jn=Oo=rl=0):(Ea=Lo.constant.length>0?Lo.constant[0]:0,Jn=Lo.constant.length>1?Lo.constant[1]:0,Oo=Lo.constant.length>2?Lo.constant[2]:0,rl=Lo.constant.length>3?Lo.constant[3]:0)):(Br(Lo.buffer)?Gs=ge.createStream(34962,Lo.buffer):Gs=ge.getBuffer(Lo.buffer),$o="type"in Lo?nn[Lo.type]:Gs.dtype,zs=!!Lo.normalized,bs=Lo.size|0,Ta=Lo.offset|0,os=Lo.stride|0,_l=Lo.divisor|0)),Ss=L.location,po=pe[Ss],ks===1?(po.buffer||Ut.enableVertexAttribArray(Ss),go=bs||1,(po.type!==$o||po.size!==go||po.buffer!==Gs||po.normalized!==zs||po.offset!==Ta||po.stride!==os)&&(Ut.bindBuffer(34962,Gs.buffer),Ut.vertexAttribPointer(Ss,go,$o,zs,os,Ta),po.type=$o,po.size=go,po.buffer=Gs,po.normalized=zs,po.offset=Ta,po.stride=os),po.divisor!==_l&&(ma.vertexAttribDivisorANGLE(Ss,_l),po.divisor=_l)):(po.buffer&&(Ut.disableVertexAttribArray(Ss),po.buffer=null),(po.x!==Ea||po.y!==Jn||po.z!==Oo||po.w!==rl)&&(Ut.vertexAttrib4f(Ss,Ea,Jn,Oo,rl),po.x=Ea,po.y=Jn,po.z=Oo,po.w=rl)),ss=x.call(this,Re,Ii,0),qo=!1,zo=1,io=0,Io=0,Da=0,vs=0,fs=null,cl=0,el=!1,Hs=5126,Ro=0,tl=0,Fs=0,Br(ss)?(qo=!0,fs=ge.createStream(34962,ss),Hs=fs.dtype):(fs=ge.getBuffer(ss),fs?Hs=fs.dtype:"constant"in ss?(zo=2,typeof ss.constant=="number"?(io=ss.constant,Io=Da=vs=0):(io=ss.constant.length>0?ss.constant[0]:0,Io=ss.constant.length>1?ss.constant[1]:0,Da=ss.constant.length>2?ss.constant[2]:0,vs=ss.constant.length>3?ss.constant[3]:0)):(Br(ss.buffer)?fs=ge.createStream(34962,ss.buffer):fs=ge.getBuffer(ss.buffer),Hs="type"in ss?nn[ss.type]:fs.dtype,el=!!ss.normalized,cl=ss.size|0,Ro=ss.offset|0,tl=ss.stride|0,Fs=ss.divisor|0)),hl=C.location,Fa=pe[hl],zo===1?(Fa.buffer||Ut.enableVertexAttribArray(hl),Ms=cl||1,(Fa.type!==Hs||Fa.size!==Ms||Fa.buffer!==fs||Fa.normalized!==el||Fa.offset!==Ro||Fa.stride!==tl)&&(Ut.bindBuffer(34962,fs.buffer),Ut.vertexAttribPointer(hl,Ms,Hs,el,tl,Ro),Fa.type=Hs,Fa.size=Ms,Fa.buffer=fs,Fa.normalized=el,Fa.offset=Ro,Fa.stride=tl),Fa.divisor!==Fs&&(ma.vertexAttribDivisorANGLE(hl,Fs),Fa.divisor=Fs)):(Fa.buffer&&(Ut.disableVertexAttribArray(hl),Fa.buffer=null),(Fa.x!==io||Fa.y!==Io||Fa.z!==Da||Fa.w!==vs)&&(Ut.vertexAttrib4f(hl,io,Io,Da,vs),Fa.x=io,Fa.y=Io,Fa.z=Da,Fa.w=vs)),jo=M.call(this,Re,Ii,0),Rs=!1,Is=1,Bs=0,At=0,Vt=0,wr=0,mr=null,Fr=0,_i=!1,Si=5126,Ci=0,Ki=0,Fn=0,Br(jo)?(Rs=!0,mr=ge.createStream(34962,jo),Si=mr.dtype):(mr=ge.getBuffer(jo),mr?Si=mr.dtype:"constant"in jo?(Is=2,typeof jo.constant=="number"?(Bs=jo.constant,At=Vt=wr=0):(Bs=jo.constant.length>0?jo.constant[0]:0,At=jo.constant.length>1?jo.constant[1]:0,Vt=jo.constant.length>2?jo.constant[2]:0,wr=jo.constant.length>3?jo.constant[3]:0)):(Br(jo.buffer)?mr=ge.createStream(34962,jo.buffer):mr=ge.getBuffer(jo.buffer),Si="type"in jo?nn[jo.type]:mr.dtype,_i=!!jo.normalized,Fr=jo.size|0,Ci=jo.offset|0,Ki=jo.stride|0,Fn=jo.divisor|0)),Pi=m.location,di=pe[Pi],Is===1?(di.buffer||Ut.enableVertexAttribArray(Pi),Li=Fr||1,(di.type!==Si||di.size!==Li||di.buffer!==mr||di.normalized!==_i||di.offset!==Ci||di.stride!==Ki)&&(Ut.bindBuffer(34962,mr.buffer),Ut.vertexAttribPointer(Pi,Li,Si,_i,Ki,Ci),di.type=Si,di.size=Li,di.buffer=mr,di.normalized=_i,di.offset=Ci,di.stride=Ki),di.divisor!==Fn&&(ma.vertexAttribDivisorANGLE(Pi,Fn),di.divisor=Fn)):(di.buffer&&(Ut.disableVertexAttribArray(Pi),di.buffer=null),(di.x!==Bs||di.y!==At||di.z!==Vt||di.w!==wr)&&(Ut.vertexAttrib4f(Pi,Bs,At,Vt,wr),di.x=Bs,di.y=At,di.z=Vt,di.w=wr)),Ut.uniform1i(P.location,!1),Mi=Ii.opacity,Ut.uniform1f(T.location,Mi),Gn=F.call(this,Re,Ii,0),ta=Gn[0],ya=Gn[1],Ut.uniform2f(B.location,ta,ya),Ut.uniform1i(U.location,G.bind()),ia=Re.pixelRatio,Ut.uniform1f(j.location,ia),pa=Ii.scale,va=pa[0],zn=pa[1],Ut.uniform2f(H.location,va,zn),is=Ii.scaleFract,Cs=is[0],Ks=is[1],Ut.uniform2f(N.location,Cs,Ks),dl=Ii.translate,xl=dl[0],Bl=dl[1],Ut.uniform2f(W.location,xl,Bl),bl=Ii.translateFract,eu=bl[0],Zl=bl[1],Ut.uniform2f(re.location,eu,Zl),Ul=Ii.elements,ja=null,ns=Br(Ul),ns?ja=ft.createStream(Ul):ja=ft.getElements(Ul),ja&&Ut.bindBuffer(34963,ja.buffer.buffer),Js=Ii.offset,cs=Ii.count,cs&&(sl=Fe.instances,sl>0?ja?ma.drawElementsInstancedANGLE(0,cs,ja.type,Js<<(ja.type-5121>>1),sl):ma.drawArraysInstancedANGLE(0,Js,cs,sl):sl<0&&(ja?Ut.drawElements(0,cs,ja.type,Js<<(ja.type-5121>>1)):Ut.drawArrays(0,Js,cs)),Ie.dirty=!0,dt.setVAO(null),Re.viewportWidth=Zr,Re.viewportHeight=Ti,Un&&(r.cpuTime+=performance.now()-Ga),ka&&ge.destroyStream(kn),Co&&ge.destroyStream(Sn),vo&&ge.destroyStream(jn),wo&&ge.destroyStream(qn),yo&&ge.destroyStream(Ca),ko&&ge.destroyStream(us),xs&&ge.destroyStream(Gs),qo&&ge.destroyStream(fs),Rs&&ge.destroyStream(mr),G.unbind(),ns&&ft.destroyStream(ja))},scope:function(Ii,xn,bi){var Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl,ll,il,zl,Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt,pt,Ht,nr,fr,Tr,Ir,ri,li,Ei,hn,Zn,Yn,Ua,Fo,vl,Us,ml,au,Sl,Yl,Ol,ou,Pu,iu,tu,Hu,$u,Ku,Wu,ju,sf,_f,Qu,ef,Z,se,Pe,Xe,Qe,st,jt,_t,hr,Cr,zr,fi,$r,Bi,fn,mi,zi,ji,pn,sn,wi,xo,no,Xo,js,El,Pl,pu,Il,fu,Xu,Vu,tf,ds,Wl,Tu,Au,lf,hf,Mf;Xr=Ii.viewport,ct=Xr.x|0,tr=Xr.y|0,pr="width"in Xr?Xr.width|0:Re.framebufferWidth-ct,gr="height"in Xr?Xr.height|0:Re.framebufferHeight-tr,Zr=Re.viewportWidth,Re.viewportWidth=pr,Ti=Re.viewportHeight,Re.viewportHeight=gr,en=Vi[0],Vi[0]=ct,ii=Vi[1],Vi[1]=tr,Xi=Vi[2],Vi[2]=pr,aa=Vi[3],Vi[3]=gr,Mn=Er[0],Er[0]=ae,Un=Er[1],Er[1]=be,Ga=Er[2],Er[2]=ze,ma=Er[3],Er[3]=Ce,oa=Oe.blend_enable,Oe.blend_enable=de,ka=ni[0],ni[0]=te,so=ni[1],ni[1]=ke,Kr=ni[2],ni[2]=Ee,Ia=ni[3],ni[3]=Me,Yo=Oe.depth_enable,Oe.depth_enable=Ue,fa=Ii.viewport,kn=fa.x|0,Aa=fa.y|0,ys="width"in fa?fa.width|0:Re.framebufferWidth-kn,uo="height"in fa?fa.height|0:Re.framebufferHeight-Aa,ls=gi[0],gi[0]=kn,$a=gi[1],gi[1]=Aa,fo=gi[2],gi[2]=ys,mn=gi[3],gi[3]=uo,ra=Oe.scissor_enable,Oe.scissor_enable=De,wa=Oe.stencil_enable,Oe.stencil_enable=ye,ws=Ie.profile,ws&&(Co=performance.now(),r.count++),Po=Ii.elements,Wi=null,gn=Br(Po),gn?Wi=ft.createStream(Po):Wi=ft.getElements(Po),Ps=Fe.elements,Fe.elements=Wi,Ha=Ii.offset,Sn=Fe.offset,Fe.offset=Ha,ao=Ii.count,Ba=Fe.count,Fe.count=ao,Ko=Fe.primitive,Fe.primitive=qe,Qo=Pt[ce],Pt[ce]=!1,Hi=Pt[nt],Pt[nt]=Je,Sa=Ii.opacity,Qa=Pt[gt],Pt[gt]=Sa,vn=F.call(this,Re,Ii,bi),da=Pt[Nt],Pt[Nt]=vn,la=Re.pixelRatio,vo=Pt[at],Pt[at]=la,Ts=Ii.scale,ps=Pt[Ke],Pt[Ke]=Ts,co=Ii.scaleFract,mo=Pt[Ct],Pt[Ct]=co,No=Ii.translate,jn=Pt[wt],Pt[wt]=No,Go=Ii.translateFract,Ys=Pt[St],Pt[St]=Go,qs=Ii.markerTexture,Ns=Pt[Dt],Pt[Dt]=qs,Oa=k.call(this,Re,Ii,bi),ha=!1,Vs=1,Ya=0,_n=0,Vn=0,wo=0,Ra=null,Xn=0,un=!1,$n=5126,Ka=0,qn=0,Eo=0,Br(Oa)?(ha=!0,Ra=ge.createStream(34962,Oa),$n=Ra.dtype):(Ra=ge.getBuffer(Oa),Ra?$n=Ra.dtype:"constant"in Oa?(Vs=2,typeof Oa.constant=="number"?(Ya=Oa.constant,_n=Vn=wo=0):(Ya=Oa.constant.length>0?Oa.constant[0]:0,_n=Oa.constant.length>1?Oa.constant[1]:0,Vn=Oa.constant.length>2?Oa.constant[2]:0,wo=Oa.constant.length>3?Oa.constant[3]:0)):(Br(Oa.buffer)?Ra=ge.createStream(34962,Oa.buffer):Ra=ge.getBuffer(Oa.buffer),$n="type"in Oa?nn[Oa.type]:Ra.dtype,un=!!Oa.normalized,Xn=Oa.size|0,Ka=Oa.offset|0,qn=Oa.stride|0,Eo=Oa.divisor|0)),Ja=Zt.state,Zt.state=Vs,lo=Zt.x,Zt.x=Ya,eo=Zt.y,Zt.y=_n,sa=Zt.z,Zt.z=Vn,es=Zt.w,Zt.w=wo,Na=Zt.buffer,Zt.buffer=Ra,rn=Zt.size,Zt.size=Xn,Pa=Zt.normalized,Zt.normalized=un,to=Zt.type,Zt.type=$n,yo=Zt.offset,Zt.offset=Ka,Jo=Zt.stride,Zt.stride=qn,To=Zt.divisor,Zt.divisor=Eo,Dn=x.call(this,Re,Ii,bi),_a=!1,Ws=1,Ca=0,Es=0,As=0,Ho=0,Wa=null,Ao=0,ts=!1,Wo=5126,qa=0,ln=0,Bo=0,Br(Dn)?(_a=!0,Wa=ge.createStream(34962,Dn),Wo=Wa.dtype):(Wa=ge.getBuffer(Dn),Wa?Wo=Wa.dtype:"constant"in Dn?(Ws=2,typeof Dn.constant=="number"?(Ca=Dn.constant,Es=As=Ho=0):(Ca=Dn.constant.length>0?Dn.constant[0]:0,Es=Dn.constant.length>1?Dn.constant[1]:0,As=Dn.constant.length>2?Dn.constant[2]:0,Ho=Dn.constant.length>3?Dn.constant[3]:0)):(Br(Dn.buffer)?Wa=ge.createStream(34962,Dn.buffer):Wa=ge.getBuffer(Dn.buffer),Wo="type"in Dn?nn[Dn.type]:Wa.dtype,ts=!!Dn.normalized,Ao=Dn.size|0,qa=Dn.offset|0,ln=Dn.stride|0,Bo=Dn.divisor|0)),ko=Et.state,Et.state=Ws,oo=Et.x,Et.x=Ca,za=Et.y,Et.y=Es,ea=Et.z,Et.z=As,rs=Et.w,Et.w=Ho,$s=Et.buffer,Et.buffer=Wa,us=Et.size,Et.size=Ao,Ds=Et.normalized,Et.normalized=ts,fl=Et.type,Et.type=Wo,as=Et.offset,Et.offset=qa,Ma=Et.stride,Et.stride=ln,Qs=Et.divisor,Et.divisor=Bo,ho=A.call(this,Re,Ii,bi),gs=!1,Vo=1,Do=0,Lo=0,xs=0,ks=0,Ea=null,Jn=0,Oo=!1,rl=5126,Gs=0,bs=0,zs=0,Br(ho)?(gs=!0,Ea=ge.createStream(34962,ho),rl=Ea.dtype):(Ea=ge.getBuffer(ho),Ea?rl=Ea.dtype:"constant"in ho?(Vo=2,typeof ho.constant=="number"?(Do=ho.constant,Lo=xs=ks=0):(Do=ho.constant.length>0?ho.constant[0]:0,Lo=ho.constant.length>1?ho.constant[1]:0,xs=ho.constant.length>2?ho.constant[2]:0,ks=ho.constant.length>3?ho.constant[3]:0)):(Br(ho.buffer)?Ea=ge.createStream(34962,ho.buffer):Ea=ge.getBuffer(ho.buffer),rl="type"in ho?nn[ho.type]:Ea.dtype,Oo=!!ho.normalized,Jn=ho.size|0,Gs=ho.offset|0,bs=ho.stride|0,zs=ho.divisor|0)),$o=Te.state,Te.state=Vo,Ta=Te.x,Te.x=Do,os=Te.y,Te.y=Lo,_l=Te.z,Te.z=xs,Ss=Te.w,Te.w=ks,po=Te.buffer,Te.buffer=Ea,go=Te.size,Te.size=Jn,ss=Te.normalized,Te.normalized=Oo,qo=Te.type,Te.type=rl,zo=Te.offset,Te.offset=Gs,io=Te.stride,Te.stride=bs,Io=Te.divisor,Te.divisor=zs,Da=M.call(this,Re,Ii,bi),vs=!1,fs=1,cl=0,el=0,Hs=0,Ro=0,tl=null,Fs=0,hl=!1,Fa=5126,Ms=0,jo=0,Rs=0,Br(Da)?(vs=!0,tl=ge.createStream(34962,Da),Fa=tl.dtype):(tl=ge.getBuffer(Da),tl?Fa=tl.dtype:"constant"in Da?(fs=2,typeof Da.constant=="number"?(cl=Da.constant,el=Hs=Ro=0):(cl=Da.constant.length>0?Da.constant[0]:0,el=Da.constant.length>1?Da.constant[1]:0,Hs=Da.constant.length>2?Da.constant[2]:0,Ro=Da.constant.length>3?Da.constant[3]:0)):(Br(Da.buffer)?tl=ge.createStream(34962,Da.buffer):tl=ge.getBuffer(Da.buffer),Fa="type"in Da?nn[Da.type]:tl.dtype,hl=!!Da.normalized,Fs=Da.size|0,Ms=Da.offset|0,jo=Da.stride|0,Rs=Da.divisor|0)),Is=ot.state,ot.state=fs,Bs=ot.x,ot.x=cl,At=ot.y,ot.y=el,Vt=ot.z,ot.z=Hs,wr=ot.w,ot.w=Ro,mr=ot.buffer,ot.buffer=tl,Fr=ot.size,ot.size=Fs,_i=ot.normalized,ot.normalized=hl,Si=ot.type,ot.type=Fa,Ci=ot.offset,ot.offset=Ms,Ki=ot.stride,ot.stride=jo,Fn=ot.divisor,ot.divisor=Rs,Pi=b.call(this,Re,Ii,bi),di=!1,Li=1,Mi=0,Gn=0,ta=0,ya=0,ia=null,pa=0,va=!1,zn=5126,is=0,Cs=0,Ks=0,Br(Pi)?(di=!0,ia=ge.createStream(34962,Pi),zn=ia.dtype):(ia=ge.getBuffer(Pi),ia?zn=ia.dtype:"constant"in Pi?(Li=2,typeof Pi.constant=="number"?(Mi=Pi.constant,Gn=ta=ya=0):(Mi=Pi.constant.length>0?Pi.constant[0]:0,Gn=Pi.constant.length>1?Pi.constant[1]:0,ta=Pi.constant.length>2?Pi.constant[2]:0,ya=Pi.constant.length>3?Pi.constant[3]:0)):(Br(Pi.buffer)?ia=ge.createStream(34962,Pi.buffer):ia=ge.getBuffer(Pi.buffer),zn="type"in Pi?nn[Pi.type]:ia.dtype,va=!!Pi.normalized,pa=Pi.size|0,is=Pi.offset|0,Cs=Pi.stride|0,Ks=Pi.divisor|0)),dl=Tt.state,Tt.state=Li,xl=Tt.x,Tt.x=Mi,Bl=Tt.y,Tt.y=Gn,bl=Tt.z,Tt.z=ta,eu=Tt.w,Tt.w=ya,Zl=Tt.buffer,Tt.buffer=ia,Ul=Tt.size,Tt.size=pa,ja=Tt.normalized,Tt.normalized=va,ns=Tt.type,Tt.type=zn,Js=Tt.offset,Tt.offset=is,cs=Tt.stride,Tt.stride=Cs,sl=Tt.divisor,Tt.divisor=Ks,ll=f.call(this,Re,Ii,bi),il=!1,zl=1,Ml=0,Rl=0,Tl=0,Ll=0,ms=null,Os=0,Xl=!1,Vl=5126,Nl=0,le=0,w=0,Br(ll)?(il=!0,ms=ge.createStream(34962,ll),Vl=ms.dtype):(ms=ge.getBuffer(ll),ms?Vl=ms.dtype:"constant"in ll?(zl=2,typeof ll.constant=="number"?(Ml=ll.constant,Rl=Tl=Ll=0):(Ml=ll.constant.length>0?ll.constant[0]:0,Rl=ll.constant.length>1?ll.constant[1]:0,Tl=ll.constant.length>2?ll.constant[2]:0,Ll=ll.constant.length>3?ll.constant[3]:0)):(Br(ll.buffer)?ms=ge.createStream(34962,ll.buffer):ms=ge.getBuffer(ll.buffer),Vl="type"in ll?nn[ll.type]:ms.dtype,Xl=!!ll.normalized,Os=ll.size|0,Nl=ll.offset|0,le=ll.stride|0,w=ll.divisor|0)),q=vt.state,vt.state=zl,Q=vt.x,vt.x=Ml,ee=vt.y,vt.y=Rl,ue=vt.z,vt.z=Tl,Ve=vt.w,vt.w=Ll,tt=vt.buffer,vt.buffer=ms,mt=vt.size,vt.size=Os,Bt=vt.normalized,vt.normalized=Xl,ir=vt.type,vt.type=Vl,or=vt.offset,vt.offset=Nl,kr=vt.stride,vt.stride=le,Vr=vt.divisor,vt.divisor=w,he=h.call(this,Re,Ii,bi),Se=!1,Ne=1,Ge=0,lt=0,rt=0,pt=0,Ht=null,nr=0,fr=!1,Tr=5126,Ir=0,ri=0,li=0,Br(he)?(Se=!0,Ht=ge.createStream(34962,he),Tr=Ht.dtype):(Ht=ge.getBuffer(he),Ht?Tr=Ht.dtype:"constant"in he?(Ne=2,typeof he.constant=="number"?(Ge=he.constant,lt=rt=pt=0):(Ge=he.constant.length>0?he.constant[0]:0,lt=he.constant.length>1?he.constant[1]:0,rt=he.constant.length>2?he.constant[2]:0,pt=he.constant.length>3?he.constant[3]:0)):(Br(he.buffer)?Ht=ge.createStream(34962,he.buffer):Ht=ge.getBuffer(he.buffer),Tr="type"in he?nn[he.type]:Ht.dtype,fr=!!he.normalized,nr=he.size|0,Ir=he.offset|0,ri=he.stride|0,li=he.divisor|0)),Ei=Ye.state,Ye.state=Ne,hn=Ye.x,Ye.x=Ge,Zn=Ye.y,Ye.y=lt,Yn=Ye.z,Ye.z=rt,Ua=Ye.w,Ye.w=pt,Fo=Ye.buffer,Ye.buffer=Ht,vl=Ye.size,Ye.size=nr,Us=Ye.normalized,Ye.normalized=fr,ml=Ye.type,Ye.type=Tr,au=Ye.offset,Ye.offset=Ir,Sl=Ye.stride,Ye.stride=ri,Yl=Ye.divisor,Ye.divisor=li,Ol=u.call(this,Re,Ii,bi),ou=!1,Pu=1,iu=0,tu=0,Hu=0,$u=0,Ku=null,Wu=0,ju=!1,sf=5126,_f=0,Qu=0,ef=0,Br(Ol)?(ou=!0,Ku=ge.createStream(34962,Ol),sf=Ku.dtype):(Ku=ge.getBuffer(Ol),Ku?sf=Ku.dtype:"constant"in Ol?(Pu=2,typeof Ol.constant=="number"?(iu=Ol.constant,tu=Hu=$u=0):(iu=Ol.constant.length>0?Ol.constant[0]:0,tu=Ol.constant.length>1?Ol.constant[1]:0,Hu=Ol.constant.length>2?Ol.constant[2]:0,$u=Ol.constant.length>3?Ol.constant[3]:0)):(Br(Ol.buffer)?Ku=ge.createStream(34962,Ol.buffer):Ku=ge.getBuffer(Ol.buffer),sf="type"in Ol?nn[Ol.type]:Ku.dtype,ju=!!Ol.normalized,Wu=Ol.size|0,_f=Ol.offset|0,Qu=Ol.stride|0,ef=Ol.divisor|0)),Z=He.state,He.state=Pu,se=He.x,He.x=iu,Pe=He.y,He.y=tu,Xe=He.z,He.z=Hu,Qe=He.w,He.w=$u,st=He.buffer,He.buffer=Ku,jt=He.size,He.size=Wu,_t=He.normalized,He.normalized=ju,hr=He.type,He.type=sf,Cr=He.offset,He.offset=_f,zr=He.stride,He.stride=Qu,fi=He.divisor,He.divisor=ef,$r=p.call(this,Re,Ii,bi),Bi=!1,fn=1,mi=0,zi=0,ji=0,pn=0,sn=null,wi=0,xo=!1,no=5126,Xo=0,js=0,El=0,Br($r)?(Bi=!0,sn=ge.createStream(34962,$r),no=sn.dtype):(sn=ge.getBuffer($r),sn?no=sn.dtype:"constant"in $r?(fn=2,typeof $r.constant=="number"?(mi=$r.constant,zi=ji=pn=0):(mi=$r.constant.length>0?$r.constant[0]:0,zi=$r.constant.length>1?$r.constant[1]:0,ji=$r.constant.length>2?$r.constant[2]:0,pn=$r.constant.length>3?$r.constant[3]:0)):(Br($r.buffer)?sn=ge.createStream(34962,$r.buffer):sn=ge.getBuffer($r.buffer),no="type"in $r?nn[$r.type]:sn.dtype,xo=!!$r.normalized,wi=$r.size|0,Xo=$r.offset|0,js=$r.stride|0,El=$r.divisor|0)),Pl=it.state,it.state=fn,pu=it.x,it.x=mi,Il=it.y,it.y=zi,fu=it.z,it.z=ji,Xu=it.w,it.w=pn,Vu=it.buffer,it.buffer=sn,tf=it.size,it.size=wi,ds=it.normalized,it.normalized=xo,Wl=it.type,it.type=no,Tu=it.offset,it.offset=Xo,Au=it.stride,it.stride=js,lf=it.divisor,it.divisor=El,hf=fe.vert,fe.vert=et,Mf=fe.frag,fe.frag=It,Ie.dirty=!0,xn(Re,Ii,bi),Re.viewportWidth=Zr,Re.viewportHeight=Ti,Vi[0]=en,Vi[1]=ii,Vi[2]=Xi,Vi[3]=aa,Er[0]=Mn,Er[1]=Un,Er[2]=Ga,Er[3]=ma,Oe.blend_enable=oa,ni[0]=ka,ni[1]=so,ni[2]=Kr,ni[3]=Ia,Oe.depth_enable=Yo,gi[0]=ls,gi[1]=$a,gi[2]=fo,gi[3]=mn,Oe.scissor_enable=ra,Oe.stencil_enable=wa,ws&&(r.cpuTime+=performance.now()-Co),gn&&ft.destroyStream(Wi),Fe.elements=Ps,Fe.offset=Sn,Fe.count=Ba,Fe.primitive=Ko,Pt[ce]=Qo,Pt[nt]=Hi,Pt[gt]=Qa,Pt[Nt]=da,Pt[at]=vo,Pt[Ke]=ps,Pt[Ct]=mo,Pt[wt]=jn,Pt[St]=Ys,Pt[Dt]=Ns,ha&&ge.destroyStream(Ra),Zt.state=Ja,Zt.x=lo,Zt.y=eo,Zt.z=sa,Zt.w=es,Zt.buffer=Na,Zt.size=rn,Zt.normalized=Pa,Zt.type=to,Zt.offset=yo,Zt.stride=Jo,Zt.divisor=To,_a&&ge.destroyStream(Wa),Et.state=ko,Et.x=oo,Et.y=za,Et.z=ea,Et.w=rs,Et.buffer=$s,Et.size=us,Et.normalized=Ds,Et.type=fl,Et.offset=as,Et.stride=Ma,Et.divisor=Qs,gs&&ge.destroyStream(Ea),Te.state=$o,Te.x=Ta,Te.y=os,Te.z=_l,Te.w=Ss,Te.buffer=po,Te.size=go,Te.normalized=ss,Te.type=qo,Te.offset=zo,Te.stride=io,Te.divisor=Io,vs&&ge.destroyStream(tl),ot.state=Is,ot.x=Bs,ot.y=At,ot.z=Vt,ot.w=wr,ot.buffer=mr,ot.size=Fr,ot.normalized=_i,ot.type=Si,ot.offset=Ci,ot.stride=Ki,ot.divisor=Fn,di&&ge.destroyStream(ia),Tt.state=dl,Tt.x=xl,Tt.y=Bl,Tt.z=bl,Tt.w=eu,Tt.buffer=Zl,Tt.size=Ul,Tt.normalized=ja,Tt.type=ns,Tt.offset=Js,Tt.stride=cs,Tt.divisor=sl,il&&ge.destroyStream(ms),vt.state=q,vt.x=Q,vt.y=ee,vt.z=ue,vt.w=Ve,vt.buffer=tt,vt.size=mt,vt.normalized=Bt,vt.type=ir,vt.offset=or,vt.stride=kr,vt.divisor=Vr,Se&&ge.destroyStream(Ht),Ye.state=Ei,Ye.x=hn,Ye.y=Zn,Ye.z=Yn,Ye.w=Ua,Ye.buffer=Fo,Ye.size=vl,Ye.normalized=Us,Ye.type=ml,Ye.offset=au,Ye.stride=Sl,Ye.divisor=Yl,ou&&ge.destroyStream(Ku),He.state=Z,He.x=se,He.y=Pe,He.z=Xe,He.w=Qe,He.buffer=st,He.size=jt,He.normalized=_t,He.type=hr,He.offset=Cr,He.stride=zr,He.divisor=fi,Bi&&ge.destroyStream(sn),it.state=Pl,it.x=pu,it.y=Il,it.z=fu,it.w=Xu,it.buffer=Vu,it.size=tf,it.normalized=ds,it.type=Wl,it.offset=Tu,it.stride=Au,it.divisor=lf,fe.vert=hf,fe.frag=Mf,Ie.dirty=!0},batch:function(Ii,xn){var bi,Xr,ct,tr,pr,gr,Zr;if(bi=rr.angle_instanced_arrays,Xr=zt.next,Xr!==zt.cur&&(Xr?Ut.bindFramebuffer(36160,Xr.framebuffer):Ut.bindFramebuffer(36160,null),zt.cur=Xr),Ie.dirty){var Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn;Ti=Oe.dither,Ti!==Ie.dither&&(Ti?Ut.enable(3024):Ut.disable(3024),Ie.dither=Ti),en=pi[0],ii=pi[1],(en!==Di[0]||ii!==Di[1])&&(Ut.blendEquationSeparate(en,ii),Di[0]=en,Di[1]=ii),Xi=Oe.depth_func,Xi!==Ie.depth_func&&(Ut.depthFunc(Xi),Ie.depth_func=Xi),aa=Qi[0],Mn=Qi[1],(aa!==si[0]||Mn!==si[1])&&(Ut.depthRange(aa,Mn),si[0]=aa,si[1]=Mn),Un=Oe.depth_mask,Un!==Ie.depth_mask&&(Ut.depthMask(Un),Ie.depth_mask=Un),Ga=Ai[0],ma=Ai[1],oa=Ai[2],ka=Ai[3],(Ga!==Ni[0]||ma!==Ni[1]||oa!==Ni[2]||ka!==Ni[3])&&(Ut.colorMask(Ga,ma,oa,ka),Ni[0]=Ga,Ni[1]=ma,Ni[2]=oa,Ni[3]=ka),so=Oe.cull_enable,so!==Ie.cull_enable&&(so?Ut.enable(2884):Ut.disable(2884),Ie.cull_enable=so),Kr=Oe.cull_face,Kr!==Ie.cull_face&&(Ut.cullFace(Kr),Ie.cull_face=Kr),Ia=Oe.frontFace,Ia!==Ie.frontFace&&(Ut.frontFace(Ia),Ie.frontFace=Ia),Yo=Oe.lineWidth,Yo!==Ie.lineWidth&&(Ut.lineWidth(Yo),Ie.lineWidth=Yo),fa=Oe.polygonOffset_enable,fa!==Ie.polygonOffset_enable&&(fa?Ut.enable(32823):Ut.disable(32823),Ie.polygonOffset_enable=fa),kn=Rt[0],Aa=Rt[1],(kn!==yt[0]||Aa!==yt[1])&&(Ut.polygonOffset(kn,Aa),yt[0]=kn,yt[1]=Aa),ys=Oe.sample_alpha,ys!==Ie.sample_alpha&&(ys?Ut.enable(32926):Ut.disable(32926),Ie.sample_alpha=ys),uo=Oe.sample_enable,uo!==Ie.sample_enable&&(uo?Ut.enable(32928):Ut.disable(32928),Ie.sample_enable=uo),ls=Gt[0],$a=Gt[1],(ls!==Wt[0]||$a!==Wt[1])&&(Ut.sampleCoverage(ls,$a),Wt[0]=ls,Wt[1]=$a),fo=Oe.stencil_mask,fo!==Ie.stencil_mask&&(Ut.stencilMask(fo),Ie.stencil_mask=fo),mn=xr[0],ra=xr[1],wa=xr[2],(mn!==Lr[0]||ra!==Lr[1]||wa!==Lr[2])&&(Ut.stencilFunc(mn,ra,wa),Lr[0]=mn,Lr[1]=ra,Lr[2]=wa),ws=Nr[0],Co=Nr[1],Po=Nr[2],Wi=Nr[3],(ws!==Or[0]||Co!==Or[1]||Po!==Or[2]||Wi!==Or[3])&&(Ut.stencilOpSeparate(ws,Co,Po,Wi),Or[0]=ws,Or[1]=Co,Or[2]=Po,Or[3]=Wi),gn=Hr[0],Ps=Hr[1],Ha=Hr[2],Sn=Hr[3],(gn!==jr[0]||Ps!==jr[1]||Ha!==jr[2]||Sn!==jr[3])&&(Ut.stencilOpSeparate(gn,Ps,Ha,Sn),jr[0]=gn,jr[1]=Ps,jr[2]=Ha,jr[3]=Sn)}Ut.blendColor(0,0,0,1),Rr[0]=0,Rr[1]=0,Rr[2]=0,Rr[3]=1,Yt?Ut.enable(3042):Ut.disable(3042),Ie.blend_enable=Yt,Ut.blendFuncSeparate(770,771,773,1),$i[0]=770,$i[1]=771,$i[2]=773,$i[3]=1,cr?Ut.enable(2929):Ut.disable(2929),Ie.depth_enable=cr,_r?Ut.enable(3089):Ut.disable(3089),Ie.scissor_enable=_r,yr?Ut.enable(2960):Ut.disable(2960),Ie.stencil_enable=yr,ct=Ie.profile,ct&&(tr=performance.now(),r.count+=xn),Ut.useProgram(s.program),pr=rr.angle_instanced_arrays;var ao;for(dt.setVAO(null),Ut.uniform1i(P.location,!1),Ut.uniform1i(U.location,G.bind()),ao=Fe.instances,gr=0;gr0?co.constant[0]:0,Go=co.constant.length>1?co.constant[1]:0,Ys=co.constant.length>2?co.constant[2]:0,qs=co.constant.length>3?co.constant[3]:0)):(Br(co.buffer)?Ns=ge.createStream(34962,co.buffer):Ns=ge.getBuffer(co.buffer),Vs="type"in co?nn[co.type]:Ns.dtype,ha=!!co.normalized,Oa=co.size|0,Ya=co.offset|0,_n=co.stride|0,Vn=co.divisor|0)),wo=l.location,Ra=pe[wo],No===1?(Ra.buffer||Ut.enableVertexAttribArray(wo),Xn=Oa||4,(Ra.type!==Vs||Ra.size!==Xn||Ra.buffer!==Ns||Ra.normalized!==ha||Ra.offset!==Ya||Ra.stride!==_n)&&(Ut.bindBuffer(34962,Ns.buffer),Ut.vertexAttribPointer(wo,Xn,Vs,ha,_n,Ya),Ra.type=Vs,Ra.size=Xn,Ra.buffer=Ns,Ra.normalized=ha,Ra.offset=Ya,Ra.stride=_n),Ra.divisor!==Vn&&(pr.vertexAttribDivisorANGLE(wo,Vn),Ra.divisor=Vn)):(Ra.buffer&&(Ut.disableVertexAttribArray(wo),Ra.buffer=null),(Ra.x!==jn||Ra.y!==Go||Ra.z!==Ys||Ra.w!==qs)&&(Ut.vertexAttrib4f(wo,jn,Go,Ys,qs),Ra.x=jn,Ra.y=Go,Ra.z=Ys,Ra.w=qs)),un=f.call(this,Re,Zr,gr),$n=!1,Ka=1,qn=0,Eo=0,Ja=0,lo=0,eo=null,sa=0,es=!1,Na=5126,rn=0,Pa=0,to=0,Br(un)?($n=!0,eo=ge.createStream(34962,un),Na=eo.dtype):(eo=ge.getBuffer(un),eo?Na=eo.dtype:"constant"in un?(Ka=2,typeof un.constant=="number"?(qn=un.constant,Eo=Ja=lo=0):(qn=un.constant.length>0?un.constant[0]:0,Eo=un.constant.length>1?un.constant[1]:0,Ja=un.constant.length>2?un.constant[2]:0,lo=un.constant.length>3?un.constant[3]:0)):(Br(un.buffer)?eo=ge.createStream(34962,un.buffer):eo=ge.getBuffer(un.buffer),Na="type"in un?nn[un.type]:eo.dtype,es=!!un.normalized,sa=un.size|0,rn=un.offset|0,Pa=un.stride|0,to=un.divisor|0)),yo=c.location,Jo=pe[yo],Ka===1?(Jo.buffer||Ut.enableVertexAttribArray(yo),To=sa||1,(Jo.type!==Na||Jo.size!==To||Jo.buffer!==eo||Jo.normalized!==es||Jo.offset!==rn||Jo.stride!==Pa)&&(Ut.bindBuffer(34962,eo.buffer),Ut.vertexAttribPointer(yo,To,Na,es,Pa,rn),Jo.type=Na,Jo.size=To,Jo.buffer=eo,Jo.normalized=es,Jo.offset=rn,Jo.stride=Pa),Jo.divisor!==to&&(pr.vertexAttribDivisorANGLE(yo,to),Jo.divisor=to)):(Jo.buffer&&(Ut.disableVertexAttribArray(yo),Jo.buffer=null),(Jo.x!==qn||Jo.y!==Eo||Jo.z!==Ja||Jo.w!==lo)&&(Ut.vertexAttrib4f(yo,qn,Eo,Ja,lo),Jo.x=qn,Jo.y=Eo,Jo.z=Ja,Jo.w=lo)),Dn=h.call(this,Re,Zr,gr),_a=!1,Ws=1,Ca=0,Es=0,As=0,Ho=0,Wa=null,Ao=0,ts=!1,Wo=5126,qa=0,ln=0,Bo=0,Br(Dn)?(_a=!0,Wa=ge.createStream(34962,Dn),Wo=Wa.dtype):(Wa=ge.getBuffer(Dn),Wa?Wo=Wa.dtype:"constant"in Dn?(Ws=2,typeof Dn.constant=="number"?(Ca=Dn.constant,Es=As=Ho=0):(Ca=Dn.constant.length>0?Dn.constant[0]:0,Es=Dn.constant.length>1?Dn.constant[1]:0,As=Dn.constant.length>2?Dn.constant[2]:0,Ho=Dn.constant.length>3?Dn.constant[3]:0)):(Br(Dn.buffer)?Wa=ge.createStream(34962,Dn.buffer):Wa=ge.getBuffer(Dn.buffer),Wo="type"in Dn?nn[Dn.type]:Wa.dtype,ts=!!Dn.normalized,Ao=Dn.size|0,qa=Dn.offset|0,ln=Dn.stride|0,Bo=Dn.divisor|0)),ko=d.location,oo=pe[ko],Ws===1?(oo.buffer||Ut.enableVertexAttribArray(ko),za=Ao||4,(oo.type!==Wo||oo.size!==za||oo.buffer!==Wa||oo.normalized!==ts||oo.offset!==qa||oo.stride!==ln)&&(Ut.bindBuffer(34962,Wa.buffer),Ut.vertexAttribPointer(ko,za,Wo,ts,ln,qa),oo.type=Wo,oo.size=za,oo.buffer=Wa,oo.normalized=ts,oo.offset=qa,oo.stride=ln),oo.divisor!==Bo&&(pr.vertexAttribDivisorANGLE(ko,Bo),oo.divisor=Bo)):(oo.buffer&&(Ut.disableVertexAttribArray(ko),oo.buffer=null),(oo.x!==Ca||oo.y!==Es||oo.z!==As||oo.w!==Ho)&&(Ut.vertexAttrib4f(ko,Ca,Es,As,Ho),oo.x=Ca,oo.y=Es,oo.z=As,oo.w=Ho)),ea=p.call(this,Re,Zr,gr),rs=!1,$s=1,us=0,Ds=0,fl=0,as=0,Ma=null,Qs=0,ho=!1,gs=5126,Vo=0,Do=0,Lo=0,Br(ea)?(rs=!0,Ma=ge.createStream(34962,ea),gs=Ma.dtype):(Ma=ge.getBuffer(ea),Ma?gs=Ma.dtype:"constant"in ea?($s=2,typeof ea.constant=="number"?(us=ea.constant,Ds=fl=as=0):(us=ea.constant.length>0?ea.constant[0]:0,Ds=ea.constant.length>1?ea.constant[1]:0,fl=ea.constant.length>2?ea.constant[2]:0,as=ea.constant.length>3?ea.constant[3]:0)):(Br(ea.buffer)?Ma=ge.createStream(34962,ea.buffer):Ma=ge.getBuffer(ea.buffer),gs="type"in ea?nn[ea.type]:Ma.dtype,ho=!!ea.normalized,Qs=ea.size|0,Vo=ea.offset|0,Do=ea.stride|0,Lo=ea.divisor|0)),xs=_.location,ks=pe[xs],$s===1?(ks.buffer||Ut.enableVertexAttribArray(xs),Ea=Qs||1,(ks.type!==gs||ks.size!==Ea||ks.buffer!==Ma||ks.normalized!==ho||ks.offset!==Vo||ks.stride!==Do)&&(Ut.bindBuffer(34962,Ma.buffer),Ut.vertexAttribPointer(xs,Ea,gs,ho,Do,Vo),ks.type=gs,ks.size=Ea,ks.buffer=Ma,ks.normalized=ho,ks.offset=Vo,ks.stride=Do),ks.divisor!==Lo&&(pr.vertexAttribDivisorANGLE(xs,Lo),ks.divisor=Lo)):(ks.buffer&&(Ut.disableVertexAttribArray(xs),ks.buffer=null),(ks.x!==us||ks.y!==Ds||ks.z!==fl||ks.w!==as)&&(Ut.vertexAttrib4f(xs,us,Ds,fl,as),ks.x=us,ks.y=Ds,ks.z=fl,ks.w=as)),Jn=b.call(this,Re,Zr,gr),Oo=!1,rl=1,Gs=0,bs=0,zs=0,$o=0,Ta=null,os=0,_l=!1,Ss=5126,po=0,go=0,ss=0,Br(Jn)?(Oo=!0,Ta=ge.createStream(34962,Jn),Ss=Ta.dtype):(Ta=ge.getBuffer(Jn),Ta?Ss=Ta.dtype:"constant"in Jn?(rl=2,typeof Jn.constant=="number"?(Gs=Jn.constant,bs=zs=$o=0):(Gs=Jn.constant.length>0?Jn.constant[0]:0,bs=Jn.constant.length>1?Jn.constant[1]:0,zs=Jn.constant.length>2?Jn.constant[2]:0,$o=Jn.constant.length>3?Jn.constant[3]:0)):(Br(Jn.buffer)?Ta=ge.createStream(34962,Jn.buffer):Ta=ge.getBuffer(Jn.buffer),Ss="type"in Jn?nn[Jn.type]:Ta.dtype,_l=!!Jn.normalized,os=Jn.size|0,po=Jn.offset|0,go=Jn.stride|0,ss=Jn.divisor|0)),qo=v.location,zo=pe[qo],rl===1?(zo.buffer||Ut.enableVertexAttribArray(qo),io=os||1,(zo.type!==Ss||zo.size!==io||zo.buffer!==Ta||zo.normalized!==_l||zo.offset!==po||zo.stride!==go)&&(Ut.bindBuffer(34962,Ta.buffer),Ut.vertexAttribPointer(qo,io,Ss,_l,go,po),zo.type=Ss,zo.size=io,zo.buffer=Ta,zo.normalized=_l,zo.offset=po,zo.stride=go),zo.divisor!==ss&&(pr.vertexAttribDivisorANGLE(qo,ss),zo.divisor=ss)):(zo.buffer&&(Ut.disableVertexAttribArray(qo),zo.buffer=null),(zo.x!==Gs||zo.y!==bs||zo.z!==zs||zo.w!==$o)&&(Ut.vertexAttrib4f(qo,Gs,bs,zs,$o),zo.x=Gs,zo.y=bs,zo.z=zs,zo.w=$o)),Io=k.call(this,Re,Zr,gr),Da=!1,vs=1,fs=0,cl=0,el=0,Hs=0,Ro=null,tl=0,Fs=!1,hl=5126,Fa=0,Ms=0,jo=0,Br(Io)?(Da=!0,Ro=ge.createStream(34962,Io),hl=Ro.dtype):(Ro=ge.getBuffer(Io),Ro?hl=Ro.dtype:"constant"in Io?(vs=2,typeof Io.constant=="number"?(fs=Io.constant,cl=el=Hs=0):(fs=Io.constant.length>0?Io.constant[0]:0,cl=Io.constant.length>1?Io.constant[1]:0,el=Io.constant.length>2?Io.constant[2]:0,Hs=Io.constant.length>3?Io.constant[3]:0)):(Br(Io.buffer)?Ro=ge.createStream(34962,Io.buffer):Ro=ge.getBuffer(Io.buffer),hl="type"in Io?nn[Io.type]:Ro.dtype,Fs=!!Io.normalized,tl=Io.size|0,Fa=Io.offset|0,Ms=Io.stride|0,jo=Io.divisor|0)),Rs=E.location,Is=pe[Rs],vs===1?(Is.buffer||Ut.enableVertexAttribArray(Rs),Bs=tl||1,(Is.type!==hl||Is.size!==Bs||Is.buffer!==Ro||Is.normalized!==Fs||Is.offset!==Fa||Is.stride!==Ms)&&(Ut.bindBuffer(34962,Ro.buffer),Ut.vertexAttribPointer(Rs,Bs,hl,Fs,Ms,Fa),Is.type=hl,Is.size=Bs,Is.buffer=Ro,Is.normalized=Fs,Is.offset=Fa,Is.stride=Ms),Is.divisor!==jo&&(pr.vertexAttribDivisorANGLE(Rs,jo),Is.divisor=jo)):(Is.buffer&&(Ut.disableVertexAttribArray(Rs),Is.buffer=null),(Is.x!==fs||Is.y!==cl||Is.z!==el||Is.w!==Hs)&&(Ut.vertexAttrib4f(Rs,fs,cl,el,Hs),Is.x=fs,Is.y=cl,Is.z=el,Is.w=Hs)),At=A.call(this,Re,Zr,gr),Vt=!1,wr=1,mr=0,Fr=0,_i=0,Si=0,Ci=null,Ki=0,Fn=!1,Pi=5126,di=0,Li=0,Mi=0,Br(At)?(Vt=!0,Ci=ge.createStream(34962,At),Pi=Ci.dtype):(Ci=ge.getBuffer(At),Ci?Pi=Ci.dtype:"constant"in At?(wr=2,typeof At.constant=="number"?(mr=At.constant,Fr=_i=Si=0):(mr=At.constant.length>0?At.constant[0]:0,Fr=At.constant.length>1?At.constant[1]:0,_i=At.constant.length>2?At.constant[2]:0,Si=At.constant.length>3?At.constant[3]:0)):(Br(At.buffer)?Ci=ge.createStream(34962,At.buffer):Ci=ge.getBuffer(At.buffer),Pi="type"in At?nn[At.type]:Ci.dtype,Fn=!!At.normalized,Ki=At.size|0,di=At.offset|0,Li=At.stride|0,Mi=At.divisor|0)),Gn=L.location,ta=pe[Gn],wr===1?(ta.buffer||Ut.enableVertexAttribArray(Gn),ya=Ki||1,(ta.type!==Pi||ta.size!==ya||ta.buffer!==Ci||ta.normalized!==Fn||ta.offset!==di||ta.stride!==Li)&&(Ut.bindBuffer(34962,Ci.buffer),Ut.vertexAttribPointer(Gn,ya,Pi,Fn,Li,di),ta.type=Pi,ta.size=ya,ta.buffer=Ci,ta.normalized=Fn,ta.offset=di,ta.stride=Li),ta.divisor!==Mi&&(pr.vertexAttribDivisorANGLE(Gn,Mi),ta.divisor=Mi)):(ta.buffer&&(Ut.disableVertexAttribArray(Gn),ta.buffer=null),(ta.x!==mr||ta.y!==Fr||ta.z!==_i||ta.w!==Si)&&(Ut.vertexAttrib4f(Gn,mr,Fr,_i,Si),ta.x=mr,ta.y=Fr,ta.z=_i,ta.w=Si)),ia=x.call(this,Re,Zr,gr),pa=!1,va=1,zn=0,is=0,Cs=0,Ks=0,dl=null,xl=0,Bl=!1,bl=5126,eu=0,Zl=0,Ul=0,Br(ia)?(pa=!0,dl=ge.createStream(34962,ia),bl=dl.dtype):(dl=ge.getBuffer(ia),dl?bl=dl.dtype:"constant"in ia?(va=2,typeof ia.constant=="number"?(zn=ia.constant,is=Cs=Ks=0):(zn=ia.constant.length>0?ia.constant[0]:0,is=ia.constant.length>1?ia.constant[1]:0,Cs=ia.constant.length>2?ia.constant[2]:0,Ks=ia.constant.length>3?ia.constant[3]:0)):(Br(ia.buffer)?dl=ge.createStream(34962,ia.buffer):dl=ge.getBuffer(ia.buffer),bl="type"in ia?nn[ia.type]:dl.dtype,Bl=!!ia.normalized,xl=ia.size|0,eu=ia.offset|0,Zl=ia.stride|0,Ul=ia.divisor|0)),ja=C.location,ns=pe[ja],va===1?(ns.buffer||Ut.enableVertexAttribArray(ja),Js=xl||1,(ns.type!==bl||ns.size!==Js||ns.buffer!==dl||ns.normalized!==Bl||ns.offset!==eu||ns.stride!==Zl)&&(Ut.bindBuffer(34962,dl.buffer),Ut.vertexAttribPointer(ja,Js,bl,Bl,Zl,eu),ns.type=bl,ns.size=Js,ns.buffer=dl,ns.normalized=Bl,ns.offset=eu,ns.stride=Zl),ns.divisor!==Ul&&(pr.vertexAttribDivisorANGLE(ja,Ul),ns.divisor=Ul)):(ns.buffer&&(Ut.disableVertexAttribArray(ja),ns.buffer=null),(ns.x!==zn||ns.y!==is||ns.z!==Cs||ns.w!==Ks)&&(Ut.vertexAttrib4f(ja,zn,is,Cs,Ks),ns.x=zn,ns.y=is,ns.z=Cs,ns.w=Ks)),cs=M.call(this,Re,Zr,gr),sl=!1,ll=1,il=0,zl=0,Ml=0,Rl=0,Tl=null,Ll=0,ms=!1,Os=5126,Xl=0,Vl=0,Nl=0,Br(cs)?(sl=!0,Tl=ge.createStream(34962,cs),Os=Tl.dtype):(Tl=ge.getBuffer(cs),Tl?Os=Tl.dtype:"constant"in cs?(ll=2,typeof cs.constant=="number"?(il=cs.constant,zl=Ml=Rl=0):(il=cs.constant.length>0?cs.constant[0]:0,zl=cs.constant.length>1?cs.constant[1]:0,Ml=cs.constant.length>2?cs.constant[2]:0,Rl=cs.constant.length>3?cs.constant[3]:0)):(Br(cs.buffer)?Tl=ge.createStream(34962,cs.buffer):Tl=ge.getBuffer(cs.buffer),Os="type"in cs?nn[cs.type]:Tl.dtype,ms=!!cs.normalized,Ll=cs.size|0,Xl=cs.offset|0,Vl=cs.stride|0,Nl=cs.divisor|0)),le=m.location,w=pe[le],ll===1?(w.buffer||Ut.enableVertexAttribArray(le),q=Ll||1,(w.type!==Os||w.size!==q||w.buffer!==Tl||w.normalized!==ms||w.offset!==Xl||w.stride!==Vl)&&(Ut.bindBuffer(34962,Tl.buffer),Ut.vertexAttribPointer(le,q,Os,ms,Vl,Xl),w.type=Os,w.size=q,w.buffer=Tl,w.normalized=ms,w.offset=Xl,w.stride=Vl),w.divisor!==Nl&&(pr.vertexAttribDivisorANGLE(le,Nl),w.divisor=Nl)):(w.buffer&&(Ut.disableVertexAttribArray(le),w.buffer=null),(w.x!==il||w.y!==zl||w.z!==Ml||w.w!==Rl)&&(Ut.vertexAttrib4f(le,il,zl,Ml,Rl),w.x=il,w.y=zl,w.z=Ml,w.w=Rl)),Q=Zr.opacity,(!gr||ee!==Q)&&(ee=Q,Ut.uniform1f(T.location,Q)),ue=F.call(this,Re,Zr,gr),Ve=ue[0],mt=ue[1],(!gr||tt!==Ve||Bt!==mt)&&(tt=Ve,Bt=mt,Ut.uniform2f(B.location,Ve,mt)),ir=Re.pixelRatio,(!gr||or!==ir)&&(or=ir,Ut.uniform1f(j.location,ir)),kr=Zr.scale,Vr=kr[0],Se=kr[1],(!gr||he!==Vr||Ne!==Se)&&(he=Vr,Ne=Se,Ut.uniform2f(H.location,Vr,Se)),Ge=Zr.scaleFract,lt=Ge[0],pt=Ge[1],(!gr||rt!==lt||Ht!==pt)&&(rt=lt,Ht=pt,Ut.uniform2f(N.location,lt,pt)),nr=Zr.translate,fr=nr[0],Ir=nr[1],(!gr||Tr!==fr||ri!==Ir)&&(Tr=fr,ri=Ir,Ut.uniform2f(W.location,fr,Ir)),li=Zr.translateFract,Ei=li[0],Zn=li[1],(!gr||hn!==Ei||Yn!==Zn)&&(hn=Ei,Yn=Zn,Ut.uniform2f(re.location,Ei,Zn)),Ua=Zr.elements,Fo=null,vl=Br(Ua),vl?Fo=ft.createStream(Ua):Fo=ft.getElements(Ua),Fo&&Ut.bindBuffer(34963,Fo.buffer.buffer),Us=Zr.offset,ml=Zr.count,ml&&(ao>0?Fo?pr.drawElementsInstancedANGLE(0,ml,Fo.type,Us<<(Fo.type-5121>>1),ao):pr.drawArraysInstancedANGLE(0,Us,ml,ao):ao<0&&(Fo?Ut.drawElements(0,ml,Fo.type,Us<<(Fo.type-5121>>1)):Ut.drawArrays(0,Us,ml)),Re.viewportWidth=Qa,Re.viewportHeight=vn,mo&&ge.destroyStream(Ns),$n&&ge.destroyStream(eo),_a&&ge.destroyStream(Wa),rs&&ge.destroyStream(Ma),Oo&&ge.destroyStream(Ta),Da&&ge.destroyStream(Ro),Vt&&ge.destroyStream(Ci),pa&&ge.destroyStream(dl),sl&&ge.destroyStream(Tl),vl&&ft.destroyStream(Fo))}G.unbind(),Ie.dirty=!0,dt.setVAO(null),ct&&(r.cpuTime+=performance.now()-tr)}}}});var R8=Ae((Xxr,e7e)=>{e7e.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye){"use strict";var He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi;return He=t.gl,it=t.context,et=t.strings,It=t.next,Yt=t.current,cr=t.draw,_r=t.elements,yr=t.buffer,Ut=t.shader,Re=t.attributes,xe=t.vao,Oe=t.uniforms,Ie=t.framebuffer,Fe=t.extensions,ft=t.timer,ge=t.isBufferArgs,fe=It.blend_color,pe=Yt.blend_color,dt=It.blend_equation,Pt=Yt.blend_equation,zt=It.blend_func,rr=Yt.blend_func,Gr=It.depth_range,Br=Yt.depth_range,Er=It.colorMask,Rr=Yt.colorMask,pi=It.polygonOffset_offset,Di=Yt.polygonOffset_offset,ni=It.sample_coverage,$i=Yt.sample_coverage,Qi=It.stencil_func,si=Yt.stencil_func,Ai=It.stencil_opFront,Ni=Yt.stencil_opFront,Rt=It.stencil_opBack,yt=Yt.stencil_opBack,Gt=It.scissor_box,Wt=Yt.scissor_box,xr=It.viewport,Lr=Yt.viewport,Nr={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Or={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Hr={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},jr={add:32774,subtract:32778,"reverse subtract":32779},gi={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ki={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Vi={cw:2304,ccw:2305},ti={},ti.buffer=n,ti.divisor=1,tn={},tn.buffer=i,tn.divisor=1,Yr={},Yr.buffer=a,Yr.divisor=1,oi={},oi.buffer=o,oi.divisor=1,{draw:function(Fi){var an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us;if(an=Fe.angle_instanced_arrays,nn=Ie.next,nn!==Ie.cur&&(nn?He.bindFramebuffer(36160,nn.framebuffer):He.bindFramebuffer(36160,null),Ie.cur=nn),Yt.dirty){var Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs;Ds=It.dither,Ds!==Yt.dither&&(Ds?He.enable(3024):He.disable(3024),Yt.dither=Ds),fl=It.depth_func,fl!==Yt.depth_func&&(He.depthFunc(fl),Yt.depth_func=fl),as=Gr[0],Ma=Gr[1],(as!==Br[0]||Ma!==Br[1])&&(He.depthRange(as,Ma),Br[0]=as,Br[1]=Ma),Qs=It.depth_mask,Qs!==Yt.depth_mask&&(He.depthMask(Qs),Yt.depth_mask=Qs),ho=Er[0],gs=Er[1],Vo=Er[2],Do=Er[3],(ho!==Rr[0]||gs!==Rr[1]||Vo!==Rr[2]||Do!==Rr[3])&&(He.colorMask(ho,gs,Vo,Do),Rr[0]=ho,Rr[1]=gs,Rr[2]=Vo,Rr[3]=Do),Lo=It.cull_enable,Lo!==Yt.cull_enable&&(Lo?He.enable(2884):He.disable(2884),Yt.cull_enable=Lo),xs=It.cull_face,xs!==Yt.cull_face&&(He.cullFace(xs),Yt.cull_face=xs),ks=It.frontFace,ks!==Yt.frontFace&&(He.frontFace(ks),Yt.frontFace=ks),Ea=It.lineWidth,Ea!==Yt.lineWidth&&(He.lineWidth(Ea),Yt.lineWidth=Ea),Jn=It.polygonOffset_enable,Jn!==Yt.polygonOffset_enable&&(Jn?He.enable(32823):He.disable(32823),Yt.polygonOffset_enable=Jn),Oo=pi[0],rl=pi[1],(Oo!==Di[0]||rl!==Di[1])&&(He.polygonOffset(Oo,rl),Di[0]=Oo,Di[1]=rl),Gs=It.sample_alpha,Gs!==Yt.sample_alpha&&(Gs?He.enable(32926):He.disable(32926),Yt.sample_alpha=Gs),bs=It.sample_enable,bs!==Yt.sample_enable&&(bs?He.enable(32928):He.disable(32928),Yt.sample_enable=bs),zs=ni[0],$o=ni[1],(zs!==$i[0]||$o!==$i[1])&&(He.sampleCoverage(zs,$o),$i[0]=zs,$i[1]=$o),Ta=It.stencil_enable,Ta!==Yt.stencil_enable&&(Ta?He.enable(2960):He.disable(2960),Yt.stencil_enable=Ta),os=It.stencil_mask,os!==Yt.stencil_mask&&(He.stencilMask(os),Yt.stencil_mask=os),_l=Qi[0],Ss=Qi[1],po=Qi[2],(_l!==si[0]||Ss!==si[1]||po!==si[2])&&(He.stencilFunc(_l,Ss,po),si[0]=_l,si[1]=Ss,si[2]=po),go=Ai[0],ss=Ai[1],qo=Ai[2],zo=Ai[3],(go!==Ni[0]||ss!==Ni[1]||qo!==Ni[2]||zo!==Ni[3])&&(He.stencilOpSeparate(go,ss,qo,zo),Ni[0]=go,Ni[1]=ss,Ni[2]=qo,Ni[3]=zo),io=Rt[0],Io=Rt[1],Da=Rt[2],vs=Rt[3],(io!==yt[0]||Io!==yt[1]||Da!==yt[2]||vs!==yt[3])&&(He.stencilOpSeparate(io,Io,Da,vs),yt[0]=io,yt[1]=Io,yt[2]=Da,yt[3]=vs)}Ri=Fi.viewport,Ii=Ri.x|0,xn=Ri.y|0,bi="width"in Ri?Ri.width|0:it.framebufferWidth-Ii,Xr="height"in Ri?Ri.height|0:it.framebufferHeight-xn,ct=it.viewportWidth,it.viewportWidth=bi,tr=it.viewportHeight,it.viewportHeight=Xr,He.viewport(Ii,xn,bi,Xr),Lr[0]=Ii,Lr[1]=xn,Lr[2]=bi,Lr[3]=Xr,He.blendColor(0,0,0,0),pe[0]=0,pe[1]=0,pe[2]=0,pe[3]=0,s?He.enable(3042):He.disable(3042),Yt.blend_enable=s,He.blendEquationSeparate(32774,32774),Pt[0]=32774,Pt[1]=32774,He.blendFuncSeparate(770,771,773,1),rr[0]=770,rr[1]=771,rr[2]=773,rr[3]=1,u?He.enable(2929):He.disable(2929),Yt.depth_enable=u,pr=Fi.viewport,gr=pr.x|0,Zr=pr.y|0,Ti="width"in pr?pr.width|0:it.framebufferWidth-gr,en="height"in pr?pr.height|0:it.framebufferHeight-Zr,He.scissor(gr,Zr,Ti,en),Wt[0]=gr,Wt[1]=Zr,Wt[2]=Ti,Wt[3]=en,l?He.enable(3089):He.disable(3089),Yt.scissor_enable=l,ii=Yt.profile,ii&&(Xi=performance.now(),r.count++),He.useProgram(f.program),aa=Fe.angle_instanced_arrays,xe.setVAO(null),Mn=h.location,Un=Re[Mn],Un.buffer||He.enableVertexAttribArray(Mn),(Un.type!==5126||Un.size!==2||Un.buffer!==c||Un.normalized!==!1||Un.offset!==16||Un.stride!==24)&&(He.bindBuffer(34962,c.buffer),He.vertexAttribPointer(Mn,2,5126,!1,24,16),Un.type=5126,Un.size=2,Un.buffer=c,Un.normalized=!1,Un.offset=16,Un.stride=24),Un.divisor!==0&&(aa.vertexAttribDivisorANGLE(Mn,0),Un.divisor=0),Ga=d.call(this,it,Fi,0),ti.offset=Ga,ma=!1,oa=1,ka=0,so=0,Kr=0,Ia=0,Yo=null,fa=0,kn=!1,Aa=5126,ys=0,uo=0,ls=0,ge(ti)?(ma=!0,Yo=yr.createStream(34962,ti),Aa=Yo.dtype):(Yo=yr.getBuffer(ti),Yo?Aa=Yo.dtype:"constant"in ti?(oa=2,typeof ti.constant=="number"?(ka=ti.constant,so=Kr=Ia=0):(ka=ti.constant.length>0?ti.constant[0]:0,so=ti.constant.length>1?ti.constant[1]:0,Kr=ti.constant.length>2?ti.constant[2]:0,Ia=ti.constant.length>3?ti.constant[3]:0)):(ge(ti.buffer)?Yo=yr.createStream(34962,ti.buffer):Yo=yr.getBuffer(ti.buffer),Aa="type"in ti?ki[ti.type]:Yo.dtype,kn=!!ti.normalized,fa=ti.size|0,ys=ti.offset|0,uo=ti.stride|0,ls=ti.divisor|0)),$a=p.location,fo=Re[$a],oa===1?(fo.buffer||He.enableVertexAttribArray($a),mn=fa||4,(fo.type!==Aa||fo.size!==mn||fo.buffer!==Yo||fo.normalized!==kn||fo.offset!==ys||fo.stride!==uo)&&(He.bindBuffer(34962,Yo.buffer),He.vertexAttribPointer($a,mn,Aa,kn,uo,ys),fo.type=Aa,fo.size=mn,fo.buffer=Yo,fo.normalized=kn,fo.offset=ys,fo.stride=uo),fo.divisor!==ls&&(aa.vertexAttribDivisorANGLE($a,ls),fo.divisor=ls)):(fo.buffer&&(He.disableVertexAttribArray($a),fo.buffer=null),(fo.x!==ka||fo.y!==so||fo.z!==Kr||fo.w!==Ia)&&(He.vertexAttrib4f($a,ka,so,Kr,Ia),fo.x=ka,fo.y=so,fo.z=Kr,fo.w=Ia)),ra=_.location,wa=Re[ra],wa.buffer||He.enableVertexAttribArray(ra),(wa.type!==5126||wa.size!==2||wa.buffer!==c||wa.normalized!==!1||wa.offset!==0||wa.stride!==24)&&(He.bindBuffer(34962,c.buffer),He.vertexAttribPointer(ra,2,5126,!1,24,0),wa.type=5126,wa.size=2,wa.buffer=c,wa.normalized=!1,wa.offset=0,wa.stride=24),wa.divisor!==0&&(aa.vertexAttribDivisorANGLE(ra,0),wa.divisor=0),ws=b.call(this,it,Fi,0),oi.offset=ws,Co=!1,Po=1,Wi=0,gn=0,Ps=0,Ha=0,Sn=null,ao=0,Ba=!1,Ko=5126,Qo=0,Hi=0,Sa=0,ge(oi)?(Co=!0,Sn=yr.createStream(34962,oi),Ko=Sn.dtype):(Sn=yr.getBuffer(oi),Sn?Ko=Sn.dtype:"constant"in oi?(Po=2,typeof oi.constant=="number"?(Wi=oi.constant,gn=Ps=Ha=0):(Wi=oi.constant.length>0?oi.constant[0]:0,gn=oi.constant.length>1?oi.constant[1]:0,Ps=oi.constant.length>2?oi.constant[2]:0,Ha=oi.constant.length>3?oi.constant[3]:0)):(ge(oi.buffer)?Sn=yr.createStream(34962,oi.buffer):Sn=yr.getBuffer(oi.buffer),Ko="type"in oi?ki[oi.type]:Sn.dtype,Ba=!!oi.normalized,ao=oi.size|0,Qo=oi.offset|0,Hi=oi.stride|0,Sa=oi.divisor|0)),Qa=v.location,vn=Re[Qa],Po===1?(vn.buffer||He.enableVertexAttribArray(Qa),da=ao||4,(vn.type!==Ko||vn.size!==da||vn.buffer!==Sn||vn.normalized!==Ba||vn.offset!==Qo||vn.stride!==Hi)&&(He.bindBuffer(34962,Sn.buffer),He.vertexAttribPointer(Qa,da,Ko,Ba,Hi,Qo),vn.type=Ko,vn.size=da,vn.buffer=Sn,vn.normalized=Ba,vn.offset=Qo,vn.stride=Hi),vn.divisor!==Sa&&(aa.vertexAttribDivisorANGLE(Qa,Sa),vn.divisor=Sa)):(vn.buffer&&(He.disableVertexAttribArray(Qa),vn.buffer=null),(vn.x!==Wi||vn.y!==gn||vn.z!==Ps||vn.w!==Ha)&&(He.vertexAttrib4f(Qa,Wi,gn,Ps,Ha),vn.x=Wi,vn.y=gn,vn.z=Ps,vn.w=Ha)),la=k.location,vo=Re[la],vo.buffer||He.enableVertexAttribArray(la),(vo.type!==5126||vo.size!==2||vo.buffer!==c||vo.normalized!==!1||vo.offset!==8||vo.stride!==24)&&(He.bindBuffer(34962,c.buffer),He.vertexAttribPointer(la,2,5126,!1,24,8),vo.type=5126,vo.size=2,vo.buffer=c,vo.normalized=!1,vo.offset=8,vo.stride=24),vo.divisor!==0&&(aa.vertexAttribDivisorANGLE(la,0),vo.divisor=0),Ts=E.call(this,it,Fi,0),tn.offset=Ts,ps=!1,co=1,mo=0,No=0,jn=0,Go=0,Ys=null,qs=0,Ns=!1,Oa=5126,ha=0,Vs=0,Ya=0,ge(tn)?(ps=!0,Ys=yr.createStream(34962,tn),Oa=Ys.dtype):(Ys=yr.getBuffer(tn),Ys?Oa=Ys.dtype:"constant"in tn?(co=2,typeof tn.constant=="number"?(mo=tn.constant,No=jn=Go=0):(mo=tn.constant.length>0?tn.constant[0]:0,No=tn.constant.length>1?tn.constant[1]:0,jn=tn.constant.length>2?tn.constant[2]:0,Go=tn.constant.length>3?tn.constant[3]:0)):(ge(tn.buffer)?Ys=yr.createStream(34962,tn.buffer):Ys=yr.getBuffer(tn.buffer),Oa="type"in tn?ki[tn.type]:Ys.dtype,Ns=!!tn.normalized,qs=tn.size|0,ha=tn.offset|0,Vs=tn.stride|0,Ya=tn.divisor|0)),_n=A.location,Vn=Re[_n],co===1?(Vn.buffer||He.enableVertexAttribArray(_n),wo=qs||2,(Vn.type!==Oa||Vn.size!==wo||Vn.buffer!==Ys||Vn.normalized!==Ns||Vn.offset!==ha||Vn.stride!==Vs)&&(He.bindBuffer(34962,Ys.buffer),He.vertexAttribPointer(_n,wo,Oa,Ns,Vs,ha),Vn.type=Oa,Vn.size=wo,Vn.buffer=Ys,Vn.normalized=Ns,Vn.offset=ha,Vn.stride=Vs),Vn.divisor!==Ya&&(aa.vertexAttribDivisorANGLE(_n,Ya),Vn.divisor=Ya)):(Vn.buffer&&(He.disableVertexAttribArray(_n),Vn.buffer=null),(Vn.x!==mo||Vn.y!==No||Vn.z!==jn||Vn.w!==Go)&&(He.vertexAttrib4f(_n,mo,No,jn,Go),Vn.x=mo,Vn.y=No,Vn.z=jn,Vn.w=Go)),Ra=L.call(this,it,Fi,0),Yr.offset=Ra,Xn=!1,un=1,$n=0,Ka=0,qn=0,Eo=0,Ja=null,lo=0,eo=!1,sa=5126,es=0,Na=0,rn=0,ge(Yr)?(Xn=!0,Ja=yr.createStream(34962,Yr),sa=Ja.dtype):(Ja=yr.getBuffer(Yr),Ja?sa=Ja.dtype:"constant"in Yr?(un=2,typeof Yr.constant=="number"?($n=Yr.constant,Ka=qn=Eo=0):($n=Yr.constant.length>0?Yr.constant[0]:0,Ka=Yr.constant.length>1?Yr.constant[1]:0,qn=Yr.constant.length>2?Yr.constant[2]:0,Eo=Yr.constant.length>3?Yr.constant[3]:0)):(ge(Yr.buffer)?Ja=yr.createStream(34962,Yr.buffer):Ja=yr.getBuffer(Yr.buffer),sa="type"in Yr?ki[Yr.type]:Ja.dtype,eo=!!Yr.normalized,lo=Yr.size|0,es=Yr.offset|0,Na=Yr.stride|0,rn=Yr.divisor|0)),Pa=x.location,to=Re[Pa],un===1?(to.buffer||He.enableVertexAttribArray(Pa),yo=lo||2,(to.type!==sa||to.size!==yo||to.buffer!==Ja||to.normalized!==eo||to.offset!==es||to.stride!==Na)&&(He.bindBuffer(34962,Ja.buffer),He.vertexAttribPointer(Pa,yo,sa,eo,Na,es),to.type=sa,to.size=yo,to.buffer=Ja,to.normalized=eo,to.offset=es,to.stride=Na),to.divisor!==rn&&(aa.vertexAttribDivisorANGLE(Pa,rn),to.divisor=rn)):(to.buffer&&(He.disableVertexAttribArray(Pa),to.buffer=null),(to.x!==$n||to.y!==Ka||to.z!==qn||to.w!==Eo)&&(He.vertexAttrib4f(Pa,$n,Ka,qn,Eo),to.x=$n,to.y=Ka,to.z=qn,to.w=Eo)),Jo=Fi.capSize,He.uniform1f(C.location,Jo),To=Fi.lineWidth,He.uniform1f(M.location,To),Dn=Fi.opacity,He.uniform1f(m.location,Dn),_a=Fi.scale,Ws=_a[0],Ca=_a[1],He.uniform2f(P.location,Ws,Ca),Es=Fi.scaleFract,As=Es[0],Ho=Es[1],He.uniform2f(T.location,As,Ho),Wa=Fi.translate,Ao=Wa[0],ts=Wa[1],He.uniform2f(B.location,Ao,ts),Wo=Fi.translateFract,qa=Wo[0],ln=Wo[1],He.uniform2f(F.location,qa,ln),Bo=G.call(this,it,Fi,0),ko=Bo[0],oo=Bo[1],za=Bo[2],ea=Bo[3],He.uniform4f(U.location,ko,oo,za,ea),rs=cr.elements,rs?He.bindBuffer(34963,rs.buffer.buffer):xe.currentVAO&&(rs=_r.getElements(xe.currentVAO.elements),rs&&He.bindBuffer(34963,rs.buffer.buffer)),$s=cr.offset,us=Fi.count,us>0?rs?aa.drawElementsInstancedANGLE(4,36,rs.type,$s<<(rs.type-5121>>1),us):aa.drawArraysInstancedANGLE(4,$s,36,us):us<0&&(rs?He.drawElements(4,36,rs.type,$s<<(rs.type-5121>>1)):He.drawArrays(4,$s,36)),Yt.dirty=!0,xe.setVAO(null),it.viewportWidth=ct,it.viewportHeight=tr,ii&&(r.cpuTime+=performance.now()-Xi),ma&&yr.destroyStream(Yo),Co&&yr.destroyStream(Sn),ps&&yr.destroyStream(Ys),Xn&&yr.destroyStream(Ja)},scope:function(Fi,an,nn){var Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl,ll,il,zl,Ml;Ri=Fi.viewport,Ii=Ri.x|0,xn=Ri.y|0,bi="width"in Ri?Ri.width|0:it.framebufferWidth-Ii,Xr="height"in Ri?Ri.height|0:it.framebufferHeight-xn,ct=it.viewportWidth,it.viewportWidth=bi,tr=it.viewportHeight,it.viewportHeight=Xr,pr=xr[0],xr[0]=Ii,gr=xr[1],xr[1]=xn,Zr=xr[2],xr[2]=bi,Ti=xr[3],xr[3]=Xr,en=fe[0],fe[0]=j,ii=fe[1],fe[1]=H,Xi=fe[2],fe[2]=N,aa=fe[3],fe[3]=W,Mn=It.blend_enable,It.blend_enable=re,Un=dt[0],dt[0]=ae,Ga=dt[1],dt[1]=be,ma=zt[0],zt[0]=ze,oa=zt[1],zt[1]=Ce,ka=zt[2],zt[2]=de,so=zt[3],zt[3]=te,Kr=It.depth_enable,It.depth_enable=ke,Ia=Fi.viewport,Yo=Ia.x|0,fa=Ia.y|0,kn="width"in Ia?Ia.width|0:it.framebufferWidth-Yo,Aa="height"in Ia?Ia.height|0:it.framebufferHeight-fa,ys=Gt[0],Gt[0]=Yo,uo=Gt[1],Gt[1]=fa,ls=Gt[2],Gt[2]=kn,$a=Gt[3],Gt[3]=Aa,fo=It.scissor_enable,It.scissor_enable=Ee,mn=Yt.profile,mn&&(ra=performance.now(),r.count++),wa=cr.count,cr.count=Me,ws=Fi.count,Co=cr.instances,cr.instances=ws,Po=cr.primitive,cr.primitive=Ue,Wi=Fi.range,gn=Oe[De],Oe[De]=Wi,Ps=Fi.lineWidth,Ha=Oe[ye],Oe[ye]=Ps,Sn=Fi.capSize,ao=Oe[qe],Oe[qe]=Sn,Ba=Fi.opacity,Ko=Oe[ce],Oe[ce]=Ba,Qo=Fi.scale,Hi=Oe[Je],Oe[Je]=Qo,Sa=Fi.translate,Qa=Oe[nt],Oe[nt]=Sa,vn=Fi.scaleFract,da=Oe[gt],Oe[gt]=vn,la=Fi.translateFract,vo=Oe[Nt],Oe[Nt]=la,Ts=G.call(this,it,Fi,nn),ps=Oe[at],Oe[at]=Ts,co=Ke.state,Ke.state=1,mo=Ke.x,Ke.x=0,No=Ke.y,Ke.y=0,jn=Ke.z,Ke.z=0,Go=Ke.w,Ke.w=0,Ys=Ke.buffer,Ke.buffer=c,qs=Ke.size,Ke.size=0,Ns=Ke.normalized,Ke.normalized=!1,Oa=Ke.type,Ke.type=5126,ha=Ke.offset,Ke.offset=0,Vs=Ke.stride,Ke.stride=24,Ya=Ke.divisor,Ke.divisor=0,_n=Ct.state,Ct.state=1,Vn=Ct.x,Ct.x=0,wo=Ct.y,Ct.y=0,Ra=Ct.z,Ct.z=0,Xn=Ct.w,Ct.w=0,un=Ct.buffer,Ct.buffer=c,$n=Ct.size,Ct.size=0,Ka=Ct.normalized,Ct.normalized=!1,qn=Ct.type,Ct.type=5126,Eo=Ct.offset,Ct.offset=8,Ja=Ct.stride,Ct.stride=24,lo=Ct.divisor,Ct.divisor=0,eo=wt.state,wt.state=1,sa=wt.x,wt.x=0,es=wt.y,wt.y=0,Na=wt.z,wt.z=0,rn=wt.w,wt.w=0,Pa=wt.buffer,wt.buffer=c,to=wt.size,wt.size=0,yo=wt.normalized,wt.normalized=!1,Jo=wt.type,wt.type=5126,To=wt.offset,wt.offset=16,Dn=wt.stride,wt.stride=24,_a=wt.divisor,wt.divisor=0,Ws=d.call(this,it,Fi,nn),ti.offset=Ws,Ca=!1,Es=1,As=0,Ho=0,Wa=0,Ao=0,ts=null,Wo=0,qa=!1,ln=5126,Bo=0,ko=0,oo=0,ge(ti)?(Ca=!0,ts=yr.createStream(34962,ti),ln=ts.dtype):(ts=yr.getBuffer(ti),ts?ln=ts.dtype:"constant"in ti?(Es=2,typeof ti.constant=="number"?(As=ti.constant,Ho=Wa=Ao=0):(As=ti.constant.length>0?ti.constant[0]:0,Ho=ti.constant.length>1?ti.constant[1]:0,Wa=ti.constant.length>2?ti.constant[2]:0,Ao=ti.constant.length>3?ti.constant[3]:0)):(ge(ti.buffer)?ts=yr.createStream(34962,ti.buffer):ts=yr.getBuffer(ti.buffer),ln="type"in ti?ki[ti.type]:ts.dtype,qa=!!ti.normalized,Wo=ti.size|0,Bo=ti.offset|0,ko=ti.stride|0,oo=ti.divisor|0)),za=St.state,St.state=Es,ea=St.x,St.x=As,rs=St.y,St.y=Ho,$s=St.z,St.z=Wa,us=St.w,St.w=Ao,Ds=St.buffer,St.buffer=ts,fl=St.size,St.size=Wo,as=St.normalized,St.normalized=qa,Ma=St.type,St.type=ln,Qs=St.offset,St.offset=Bo,ho=St.stride,St.stride=ko,gs=St.divisor,St.divisor=oo,Vo=E.call(this,it,Fi,nn),tn.offset=Vo,Do=!1,Lo=1,xs=0,ks=0,Ea=0,Jn=0,Oo=null,rl=0,Gs=!1,bs=5126,zs=0,$o=0,Ta=0,ge(tn)?(Do=!0,Oo=yr.createStream(34962,tn),bs=Oo.dtype):(Oo=yr.getBuffer(tn),Oo?bs=Oo.dtype:"constant"in tn?(Lo=2,typeof tn.constant=="number"?(xs=tn.constant,ks=Ea=Jn=0):(xs=tn.constant.length>0?tn.constant[0]:0,ks=tn.constant.length>1?tn.constant[1]:0,Ea=tn.constant.length>2?tn.constant[2]:0,Jn=tn.constant.length>3?tn.constant[3]:0)):(ge(tn.buffer)?Oo=yr.createStream(34962,tn.buffer):Oo=yr.getBuffer(tn.buffer),bs="type"in tn?ki[tn.type]:Oo.dtype,Gs=!!tn.normalized,rl=tn.size|0,zs=tn.offset|0,$o=tn.stride|0,Ta=tn.divisor|0)),os=Dt.state,Dt.state=Lo,_l=Dt.x,Dt.x=xs,Ss=Dt.y,Dt.y=ks,po=Dt.z,Dt.z=Ea,go=Dt.w,Dt.w=Jn,ss=Dt.buffer,Dt.buffer=Oo,qo=Dt.size,Dt.size=rl,zo=Dt.normalized,Dt.normalized=Gs,io=Dt.type,Dt.type=bs,Io=Dt.offset,Dt.offset=zs,Da=Dt.stride,Dt.stride=$o,vs=Dt.divisor,Dt.divisor=Ta,fs=L.call(this,it,Fi,nn),Yr.offset=fs,cl=!1,el=1,Hs=0,Ro=0,tl=0,Fs=0,hl=null,Fa=0,Ms=!1,jo=5126,Rs=0,Is=0,Bs=0,ge(Yr)?(cl=!0,hl=yr.createStream(34962,Yr),jo=hl.dtype):(hl=yr.getBuffer(Yr),hl?jo=hl.dtype:"constant"in Yr?(el=2,typeof Yr.constant=="number"?(Hs=Yr.constant,Ro=tl=Fs=0):(Hs=Yr.constant.length>0?Yr.constant[0]:0,Ro=Yr.constant.length>1?Yr.constant[1]:0,tl=Yr.constant.length>2?Yr.constant[2]:0,Fs=Yr.constant.length>3?Yr.constant[3]:0)):(ge(Yr.buffer)?hl=yr.createStream(34962,Yr.buffer):hl=yr.getBuffer(Yr.buffer),jo="type"in Yr?ki[Yr.type]:hl.dtype,Ms=!!Yr.normalized,Fa=Yr.size|0,Rs=Yr.offset|0,Is=Yr.stride|0,Bs=Yr.divisor|0)),At=Zt.state,Zt.state=el,Vt=Zt.x,Zt.x=Hs,wr=Zt.y,Zt.y=Ro,mr=Zt.z,Zt.z=tl,Fr=Zt.w,Zt.w=Fs,_i=Zt.buffer,Zt.buffer=hl,Si=Zt.size,Zt.size=Fa,Ci=Zt.normalized,Zt.normalized=Ms,Ki=Zt.type,Zt.type=jo,Fn=Zt.offset,Zt.offset=Rs,Pi=Zt.stride,Zt.stride=Is,di=Zt.divisor,Zt.divisor=Bs,Li=b.call(this,it,Fi,nn),oi.offset=Li,Mi=!1,Gn=1,ta=0,ya=0,ia=0,pa=0,va=null,zn=0,is=!1,Cs=5126,Ks=0,dl=0,xl=0,ge(oi)?(Mi=!0,va=yr.createStream(34962,oi),Cs=va.dtype):(va=yr.getBuffer(oi),va?Cs=va.dtype:"constant"in oi?(Gn=2,typeof oi.constant=="number"?(ta=oi.constant,ya=ia=pa=0):(ta=oi.constant.length>0?oi.constant[0]:0,ya=oi.constant.length>1?oi.constant[1]:0,ia=oi.constant.length>2?oi.constant[2]:0,pa=oi.constant.length>3?oi.constant[3]:0)):(ge(oi.buffer)?va=yr.createStream(34962,oi.buffer):va=yr.getBuffer(oi.buffer),Cs="type"in oi?ki[oi.type]:va.dtype,is=!!oi.normalized,zn=oi.size|0,Ks=oi.offset|0,dl=oi.stride|0,xl=oi.divisor|0)),Bl=Et.state,Et.state=Gn,bl=Et.x,Et.x=ta,eu=Et.y,Et.y=ya,Zl=Et.z,Et.z=ia,Ul=Et.w,Et.w=pa,ja=Et.buffer,Et.buffer=va,ns=Et.size,Et.size=zn,Js=Et.normalized,Et.normalized=is,cs=Et.type,Et.type=Cs,sl=Et.offset,Et.offset=Ks,ll=Et.stride,Et.stride=dl,il=Et.divisor,Et.divisor=xl,zl=Ut.vert,Ut.vert=Te,Ml=Ut.frag,Ut.frag=ot,Yt.dirty=!0,an(it,Fi,nn),it.viewportWidth=ct,it.viewportHeight=tr,xr[0]=pr,xr[1]=gr,xr[2]=Zr,xr[3]=Ti,fe[0]=en,fe[1]=ii,fe[2]=Xi,fe[3]=aa,It.blend_enable=Mn,dt[0]=Un,dt[1]=Ga,zt[0]=ma,zt[1]=oa,zt[2]=ka,zt[3]=so,It.depth_enable=Kr,Gt[0]=ys,Gt[1]=uo,Gt[2]=ls,Gt[3]=$a,It.scissor_enable=fo,mn&&(r.cpuTime+=performance.now()-ra),cr.count=wa,cr.instances=Co,cr.primitive=Po,Oe[De]=gn,Oe[ye]=Ha,Oe[qe]=ao,Oe[ce]=Ko,Oe[Je]=Hi,Oe[nt]=Qa,Oe[gt]=da,Oe[Nt]=vo,Oe[at]=ps,Ke.state=co,Ke.x=mo,Ke.y=No,Ke.z=jn,Ke.w=Go,Ke.buffer=Ys,Ke.size=qs,Ke.normalized=Ns,Ke.type=Oa,Ke.offset=ha,Ke.stride=Vs,Ke.divisor=Ya,Ct.state=_n,Ct.x=Vn,Ct.y=wo,Ct.z=Ra,Ct.w=Xn,Ct.buffer=un,Ct.size=$n,Ct.normalized=Ka,Ct.type=qn,Ct.offset=Eo,Ct.stride=Ja,Ct.divisor=lo,wt.state=eo,wt.x=sa,wt.y=es,wt.z=Na,wt.w=rn,wt.buffer=Pa,wt.size=to,wt.normalized=yo,wt.type=Jo,wt.offset=To,wt.stride=Dn,wt.divisor=_a,Ca&&yr.destroyStream(ts),St.state=za,St.x=ea,St.y=rs,St.z=$s,St.w=us,St.buffer=Ds,St.size=fl,St.normalized=as,St.type=Ma,St.offset=Qs,St.stride=ho,St.divisor=gs,Do&&yr.destroyStream(Oo),Dt.state=os,Dt.x=_l,Dt.y=Ss,Dt.z=po,Dt.w=go,Dt.buffer=ss,Dt.size=qo,Dt.normalized=zo,Dt.type=io,Dt.offset=Io,Dt.stride=Da,Dt.divisor=vs,cl&&yr.destroyStream(hl),Zt.state=At,Zt.x=Vt,Zt.y=wr,Zt.z=mr,Zt.w=Fr,Zt.buffer=_i,Zt.size=Si,Zt.normalized=Ci,Zt.type=Ki,Zt.offset=Fn,Zt.stride=Pi,Zt.divisor=di,Mi&&yr.destroyStream(va),Et.state=Bl,Et.x=bl,Et.y=eu,Et.z=Zl,Et.w=Ul,Et.buffer=ja,Et.size=ns,Et.normalized=Js,Et.type=cs,Et.offset=sl,Et.stride=ll,Et.divisor=il,Ut.vert=zl,Ut.frag=Ml,Yt.dirty=!0},batch:function(Fi,an){var nn,Ri,Ii,xn,bi,Xr,ct;if(nn=Fe.angle_instanced_arrays,Ri=Ie.next,Ri!==Ie.cur&&(Ri?He.bindFramebuffer(36160,Ri.framebuffer):He.bindFramebuffer(36160,null),Ie.cur=Ri),Yt.dirty){var tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po;tr=It.dither,tr!==Yt.dither&&(tr?He.enable(3024):He.disable(3024),Yt.dither=tr),pr=It.depth_func,pr!==Yt.depth_func&&(He.depthFunc(pr),Yt.depth_func=pr),gr=Gr[0],Zr=Gr[1],(gr!==Br[0]||Zr!==Br[1])&&(He.depthRange(gr,Zr),Br[0]=gr,Br[1]=Zr),Ti=It.depth_mask,Ti!==Yt.depth_mask&&(He.depthMask(Ti),Yt.depth_mask=Ti),en=Er[0],ii=Er[1],Xi=Er[2],aa=Er[3],(en!==Rr[0]||ii!==Rr[1]||Xi!==Rr[2]||aa!==Rr[3])&&(He.colorMask(en,ii,Xi,aa),Rr[0]=en,Rr[1]=ii,Rr[2]=Xi,Rr[3]=aa),Mn=It.cull_enable,Mn!==Yt.cull_enable&&(Mn?He.enable(2884):He.disable(2884),Yt.cull_enable=Mn),Un=It.cull_face,Un!==Yt.cull_face&&(He.cullFace(Un),Yt.cull_face=Un),Ga=It.frontFace,Ga!==Yt.frontFace&&(He.frontFace(Ga),Yt.frontFace=Ga),ma=It.lineWidth,ma!==Yt.lineWidth&&(He.lineWidth(ma),Yt.lineWidth=ma),oa=It.polygonOffset_enable,oa!==Yt.polygonOffset_enable&&(oa?He.enable(32823):He.disable(32823),Yt.polygonOffset_enable=oa),ka=pi[0],so=pi[1],(ka!==Di[0]||so!==Di[1])&&(He.polygonOffset(ka,so),Di[0]=ka,Di[1]=so),Kr=It.sample_alpha,Kr!==Yt.sample_alpha&&(Kr?He.enable(32926):He.disable(32926),Yt.sample_alpha=Kr),Ia=It.sample_enable,Ia!==Yt.sample_enable&&(Ia?He.enable(32928):He.disable(32928),Yt.sample_enable=Ia),Yo=ni[0],fa=ni[1],(Yo!==$i[0]||fa!==$i[1])&&(He.sampleCoverage(Yo,fa),$i[0]=Yo,$i[1]=fa),kn=It.stencil_enable,kn!==Yt.stencil_enable&&(kn?He.enable(2960):He.disable(2960),Yt.stencil_enable=kn),Aa=It.stencil_mask,Aa!==Yt.stencil_mask&&(He.stencilMask(Aa),Yt.stencil_mask=Aa),ys=Qi[0],uo=Qi[1],ls=Qi[2],(ys!==si[0]||uo!==si[1]||ls!==si[2])&&(He.stencilFunc(ys,uo,ls),si[0]=ys,si[1]=uo,si[2]=ls),$a=Ai[0],fo=Ai[1],mn=Ai[2],ra=Ai[3],($a!==Ni[0]||fo!==Ni[1]||mn!==Ni[2]||ra!==Ni[3])&&(He.stencilOpSeparate($a,fo,mn,ra),Ni[0]=$a,Ni[1]=fo,Ni[2]=mn,Ni[3]=ra),wa=Rt[0],ws=Rt[1],Co=Rt[2],Po=Rt[3],(wa!==yt[0]||ws!==yt[1]||Co!==yt[2]||Po!==yt[3])&&(He.stencilOpSeparate(wa,ws,Co,Po),yt[0]=wa,yt[1]=ws,yt[2]=Co,yt[3]=Po)}He.blendColor(0,0,0,0),pe[0]=0,pe[1]=0,pe[2]=0,pe[3]=0,Tt?He.enable(3042):He.disable(3042),Yt.blend_enable=Tt,He.blendEquationSeparate(32774,32774),Pt[0]=32774,Pt[1]=32774,He.blendFuncSeparate(770,771,773,1),rr[0]=770,rr[1]=771,rr[2]=773,rr[3]=1,vt?He.enable(2929):He.disable(2929),Yt.depth_enable=vt,Ye?He.enable(3089):He.disable(3089),Yt.scissor_enable=Ye,Ii=Yt.profile,Ii&&(xn=performance.now(),r.count+=an),He.useProgram(f.program),bi=Fe.angle_instanced_arrays;var Wi,gn,Ps,Ha,Sn,ao,Ba,Ko;for(xe.setVAO(null),Wi=h.location,gn=Re[Wi],gn.buffer||He.enableVertexAttribArray(Wi),(gn.type!==5126||gn.size!==2||gn.buffer!==c||gn.normalized!==!1||gn.offset!==16||gn.stride!==24)&&(He.bindBuffer(34962,c.buffer),He.vertexAttribPointer(Wi,2,5126,!1,24,16),gn.type=5126,gn.size=2,gn.buffer=c,gn.normalized=!1,gn.offset=16,gn.stride=24),gn.divisor!==0&&(bi.vertexAttribDivisorANGLE(Wi,0),gn.divisor=0),Ps=_.location,Ha=Re[Ps],Ha.buffer||He.enableVertexAttribArray(Ps),(Ha.type!==5126||Ha.size!==2||Ha.buffer!==c||Ha.normalized!==!1||Ha.offset!==0||Ha.stride!==24)&&(He.bindBuffer(34962,c.buffer),He.vertexAttribPointer(Ps,2,5126,!1,24,0),Ha.type=5126,Ha.size=2,Ha.buffer=c,Ha.normalized=!1,Ha.offset=0,Ha.stride=24),Ha.divisor!==0&&(bi.vertexAttribDivisorANGLE(Ps,0),Ha.divisor=0),Sn=k.location,ao=Re[Sn],ao.buffer||He.enableVertexAttribArray(Sn),(ao.type!==5126||ao.size!==2||ao.buffer!==c||ao.normalized!==!1||ao.offset!==8||ao.stride!==24)&&(He.bindBuffer(34962,c.buffer),He.vertexAttribPointer(Sn,2,5126,!1,24,8),ao.type=5126,ao.size=2,ao.buffer=c,ao.normalized=!1,ao.offset=8,ao.stride=24),ao.divisor!==0&&(bi.vertexAttribDivisorANGLE(Sn,0),ao.divisor=0),Ba=cr.elements,Ba?He.bindBuffer(34963,Ba.buffer.buffer):xe.currentVAO&&(Ba=_r.getElements(xe.currentVAO.elements),Ba&&He.bindBuffer(34963,Ba.buffer.buffer)),Ko=cr.offset,Xr=0;Xr0?ti.constant[0]:0,qs=ti.constant.length>1?ti.constant[1]:0,Ns=ti.constant.length>2?ti.constant[2]:0,Oa=ti.constant.length>3?ti.constant[3]:0)):(ge(ti.buffer)?ha=yr.createStream(34962,ti.buffer):ha=yr.getBuffer(ti.buffer),_n="type"in ti?ki[ti.type]:ha.dtype,Ya=!!ti.normalized,Vs=ti.size|0,Vn=ti.offset|0,wo=ti.stride|0,Ra=ti.divisor|0)),Xn=p.location,un=Re[Xn],Go===1?(un.buffer||He.enableVertexAttribArray(Xn),$n=Vs||4,(un.type!==_n||un.size!==$n||un.buffer!==ha||un.normalized!==Ya||un.offset!==Vn||un.stride!==wo)&&(He.bindBuffer(34962,ha.buffer),He.vertexAttribPointer(Xn,$n,_n,Ya,wo,Vn),un.type=_n,un.size=$n,un.buffer=ha,un.normalized=Ya,un.offset=Vn,un.stride=wo),un.divisor!==Ra&&(bi.vertexAttribDivisorANGLE(Xn,Ra),un.divisor=Ra)):(un.buffer&&(He.disableVertexAttribArray(Xn),un.buffer=null),(un.x!==Ys||un.y!==qs||un.z!==Ns||un.w!==Oa)&&(He.vertexAttrib4f(Xn,Ys,qs,Ns,Oa),un.x=Ys,un.y=qs,un.z=Ns,un.w=Oa)),Ka=b.call(this,it,ct,Xr),oi.offset=Ka,qn=!1,Eo=1,Ja=0,lo=0,eo=0,sa=0,es=null,Na=0,rn=!1,Pa=5126,to=0,yo=0,Jo=0,ge(oi)?(qn=!0,es=yr.createStream(34962,oi),Pa=es.dtype):(es=yr.getBuffer(oi),es?Pa=es.dtype:"constant"in oi?(Eo=2,typeof oi.constant=="number"?(Ja=oi.constant,lo=eo=sa=0):(Ja=oi.constant.length>0?oi.constant[0]:0,lo=oi.constant.length>1?oi.constant[1]:0,eo=oi.constant.length>2?oi.constant[2]:0,sa=oi.constant.length>3?oi.constant[3]:0)):(ge(oi.buffer)?es=yr.createStream(34962,oi.buffer):es=yr.getBuffer(oi.buffer),Pa="type"in oi?ki[oi.type]:es.dtype,rn=!!oi.normalized,Na=oi.size|0,to=oi.offset|0,yo=oi.stride|0,Jo=oi.divisor|0)),To=v.location,Dn=Re[To],Eo===1?(Dn.buffer||He.enableVertexAttribArray(To),_a=Na||4,(Dn.type!==Pa||Dn.size!==_a||Dn.buffer!==es||Dn.normalized!==rn||Dn.offset!==to||Dn.stride!==yo)&&(He.bindBuffer(34962,es.buffer),He.vertexAttribPointer(To,_a,Pa,rn,yo,to),Dn.type=Pa,Dn.size=_a,Dn.buffer=es,Dn.normalized=rn,Dn.offset=to,Dn.stride=yo),Dn.divisor!==Jo&&(bi.vertexAttribDivisorANGLE(To,Jo),Dn.divisor=Jo)):(Dn.buffer&&(He.disableVertexAttribArray(To),Dn.buffer=null),(Dn.x!==Ja||Dn.y!==lo||Dn.z!==eo||Dn.w!==sa)&&(He.vertexAttrib4f(To,Ja,lo,eo,sa),Dn.x=Ja,Dn.y=lo,Dn.z=eo,Dn.w=sa)),Ws=E.call(this,it,ct,Xr),tn.offset=Ws,Ca=!1,Es=1,As=0,Ho=0,Wa=0,Ao=0,ts=null,Wo=0,qa=!1,ln=5126,Bo=0,ko=0,oo=0,ge(tn)?(Ca=!0,ts=yr.createStream(34962,tn),ln=ts.dtype):(ts=yr.getBuffer(tn),ts?ln=ts.dtype:"constant"in tn?(Es=2,typeof tn.constant=="number"?(As=tn.constant,Ho=Wa=Ao=0):(As=tn.constant.length>0?tn.constant[0]:0,Ho=tn.constant.length>1?tn.constant[1]:0,Wa=tn.constant.length>2?tn.constant[2]:0,Ao=tn.constant.length>3?tn.constant[3]:0)):(ge(tn.buffer)?ts=yr.createStream(34962,tn.buffer):ts=yr.getBuffer(tn.buffer),ln="type"in tn?ki[tn.type]:ts.dtype,qa=!!tn.normalized,Wo=tn.size|0,Bo=tn.offset|0,ko=tn.stride|0,oo=tn.divisor|0)),za=A.location,ea=Re[za],Es===1?(ea.buffer||He.enableVertexAttribArray(za),rs=Wo||2,(ea.type!==ln||ea.size!==rs||ea.buffer!==ts||ea.normalized!==qa||ea.offset!==Bo||ea.stride!==ko)&&(He.bindBuffer(34962,ts.buffer),He.vertexAttribPointer(za,rs,ln,qa,ko,Bo),ea.type=ln,ea.size=rs,ea.buffer=ts,ea.normalized=qa,ea.offset=Bo,ea.stride=ko),ea.divisor!==oo&&(bi.vertexAttribDivisorANGLE(za,oo),ea.divisor=oo)):(ea.buffer&&(He.disableVertexAttribArray(za),ea.buffer=null),(ea.x!==As||ea.y!==Ho||ea.z!==Wa||ea.w!==Ao)&&(He.vertexAttrib4f(za,As,Ho,Wa,Ao),ea.x=As,ea.y=Ho,ea.z=Wa,ea.w=Ao)),$s=L.call(this,it,ct,Xr),Yr.offset=$s,us=!1,Ds=1,fl=0,as=0,Ma=0,Qs=0,ho=null,gs=0,Vo=!1,Do=5126,Lo=0,xs=0,ks=0,ge(Yr)?(us=!0,ho=yr.createStream(34962,Yr),Do=ho.dtype):(ho=yr.getBuffer(Yr),ho?Do=ho.dtype:"constant"in Yr?(Ds=2,typeof Yr.constant=="number"?(fl=Yr.constant,as=Ma=Qs=0):(fl=Yr.constant.length>0?Yr.constant[0]:0,as=Yr.constant.length>1?Yr.constant[1]:0,Ma=Yr.constant.length>2?Yr.constant[2]:0,Qs=Yr.constant.length>3?Yr.constant[3]:0)):(ge(Yr.buffer)?ho=yr.createStream(34962,Yr.buffer):ho=yr.getBuffer(Yr.buffer),Do="type"in Yr?ki[Yr.type]:ho.dtype,Vo=!!Yr.normalized,gs=Yr.size|0,Lo=Yr.offset|0,xs=Yr.stride|0,ks=Yr.divisor|0)),Ea=x.location,Jn=Re[Ea],Ds===1?(Jn.buffer||He.enableVertexAttribArray(Ea),Oo=gs||2,(Jn.type!==Do||Jn.size!==Oo||Jn.buffer!==ho||Jn.normalized!==Vo||Jn.offset!==Lo||Jn.stride!==xs)&&(He.bindBuffer(34962,ho.buffer),He.vertexAttribPointer(Ea,Oo,Do,Vo,xs,Lo),Jn.type=Do,Jn.size=Oo,Jn.buffer=ho,Jn.normalized=Vo,Jn.offset=Lo,Jn.stride=xs),Jn.divisor!==ks&&(bi.vertexAttribDivisorANGLE(Ea,ks),Jn.divisor=ks)):(Jn.buffer&&(He.disableVertexAttribArray(Ea),Jn.buffer=null),(Jn.x!==fl||Jn.y!==as||Jn.z!==Ma||Jn.w!==Qs)&&(He.vertexAttrib4f(Ea,fl,as,Ma,Qs),Jn.x=fl,Jn.y=as,Jn.z=Ma,Jn.w=Qs)),rl=ct.capSize,(!Xr||Gs!==rl)&&(Gs=rl,He.uniform1f(C.location,rl)),bs=ct.lineWidth,(!Xr||zs!==bs)&&(zs=bs,He.uniform1f(M.location,bs)),$o=ct.opacity,(!Xr||Ta!==$o)&&(Ta=$o,He.uniform1f(m.location,$o)),os=ct.scale,_l=os[0],po=os[1],(!Xr||Ss!==_l||go!==po)&&(Ss=_l,go=po,He.uniform2f(P.location,_l,po)),ss=ct.scaleFract,qo=ss[0],io=ss[1],(!Xr||zo!==qo||Io!==io)&&(zo=qo,Io=io,He.uniform2f(T.location,qo,io)),Da=ct.translate,vs=Da[0],cl=Da[1],(!Xr||fs!==vs||el!==cl)&&(fs=vs,el=cl,He.uniform2f(B.location,vs,cl)),Hs=ct.translateFract,Ro=Hs[0],Fs=Hs[1],(!Xr||tl!==Ro||hl!==Fs)&&(tl=Ro,hl=Fs,He.uniform2f(F.location,Ro,Fs)),Fa=G.call(this,it,ct,Xr),Ms=Fa[0],Rs=Fa[1],Bs=Fa[2],Vt=Fa[3],(!Xr||jo!==Ms||Is!==Rs||At!==Bs||wr!==Vt)&&(jo=Ms,Is=Rs,At=Bs,wr=Vt,He.uniform4f(U.location,Ms,Rs,Bs,Vt)),mr=ct.count,mr>0?Ba?bi.drawElementsInstancedANGLE(4,36,Ba.type,Ko<<(Ba.type-5121>>1),mr):bi.drawArraysInstancedANGLE(4,Ko,36,mr):mr<0&&(Ba?He.drawElements(4,36,Ba.type,Ko<<(Ba.type-5121>>1)):He.drawArrays(4,Ko,36)),it.viewportWidth=da,it.viewportHeight=la,jn&&yr.destroyStream(ha),qn&&yr.destroyStream(es),Ca&&yr.destroyStream(ts),us&&yr.destroyStream(ho)}Yt.dirty=!0,xe.setVAO(null),Ii&&(r.cpuTime+=performance.now()-xn)}}}});var D8=Ae((Zxr,t7e)=>{t7e.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et){"use strict";var Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr;return Te=t.gl,ot=t.context,Tt=t.strings,vt=t.next,Ye=t.current,He=t.draw,it=t.elements,et=t.buffer,It=t.shader,Yt=t.attributes,cr=t.vao,_r=t.uniforms,yr=t.framebuffer,Ut=t.extensions,Re=t.timer,xe=t.isBufferArgs,Oe=vt.blend_color,Ie=Ye.blend_color,Fe=vt.blend_equation,ft=Ye.blend_equation,ge=vt.blend_func,fe=Ye.blend_func,pe=vt.depth_range,dt=Ye.depth_range,Pt=vt.colorMask,zt=Ye.colorMask,rr=vt.polygonOffset_offset,Gr=Ye.polygonOffset_offset,Br=vt.sample_coverage,Er=Ye.sample_coverage,Rr=vt.stencil_func,pi=Ye.stencil_func,Di=vt.stencil_opFront,ni=Ye.stencil_opFront,$i=vt.stencil_opBack,Qi=Ye.stencil_opBack,si=vt.scissor_box,Ai=Ye.scissor_box,Ni=vt.viewport,Rt=Ye.viewport,yt={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Gt={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Wt={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},xr={add:32774,subtract:32778,"reverse subtract":32779},Lr={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Nr={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Or={cw:2304,ccw:2305},Hr={},Hr.offset=4,Hr.stride=8,jr={},jr.offset=0,jr.stride=8,{draw:function(gi){var ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo;if(ki=Ut.angle_instanced_arrays,Vi=yr.next,Vi!==yr.cur&&(Vi?Te.bindFramebuffer(36160,Vi.framebuffer):Te.bindFramebuffer(36160,null),yr.cur=Vi),Ye.dirty){var za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs;za=vt.dither,za!==Ye.dither&&(za?Te.enable(3024):Te.disable(3024),Ye.dither=za),ea=Fe[0],rs=Fe[1],(ea!==ft[0]||rs!==ft[1])&&(Te.blendEquationSeparate(ea,rs),ft[0]=ea,ft[1]=rs),$s=vt.depth_func,$s!==Ye.depth_func&&(Te.depthFunc($s),Ye.depth_func=$s),us=pe[0],Ds=pe[1],(us!==dt[0]||Ds!==dt[1])&&(Te.depthRange(us,Ds),dt[0]=us,dt[1]=Ds),fl=vt.depth_mask,fl!==Ye.depth_mask&&(Te.depthMask(fl),Ye.depth_mask=fl),as=Pt[0],Ma=Pt[1],Qs=Pt[2],ho=Pt[3],(as!==zt[0]||Ma!==zt[1]||Qs!==zt[2]||ho!==zt[3])&&(Te.colorMask(as,Ma,Qs,ho),zt[0]=as,zt[1]=Ma,zt[2]=Qs,zt[3]=ho),gs=vt.cull_enable,gs!==Ye.cull_enable&&(gs?Te.enable(2884):Te.disable(2884),Ye.cull_enable=gs),Vo=vt.cull_face,Vo!==Ye.cull_face&&(Te.cullFace(Vo),Ye.cull_face=Vo),Do=vt.frontFace,Do!==Ye.frontFace&&(Te.frontFace(Do),Ye.frontFace=Do),Lo=vt.lineWidth,Lo!==Ye.lineWidth&&(Te.lineWidth(Lo),Ye.lineWidth=Lo),xs=vt.polygonOffset_enable,xs!==Ye.polygonOffset_enable&&(xs?Te.enable(32823):Te.disable(32823),Ye.polygonOffset_enable=xs),ks=rr[0],Ea=rr[1],(ks!==Gr[0]||Ea!==Gr[1])&&(Te.polygonOffset(ks,Ea),Gr[0]=ks,Gr[1]=Ea),Jn=vt.sample_alpha,Jn!==Ye.sample_alpha&&(Jn?Te.enable(32926):Te.disable(32926),Ye.sample_alpha=Jn),Oo=vt.sample_enable,Oo!==Ye.sample_enable&&(Oo?Te.enable(32928):Te.disable(32928),Ye.sample_enable=Oo),rl=Br[0],Gs=Br[1],(rl!==Er[0]||Gs!==Er[1])&&(Te.sampleCoverage(rl,Gs),Er[0]=rl,Er[1]=Gs),bs=vt.stencil_mask,bs!==Ye.stencil_mask&&(Te.stencilMask(bs),Ye.stencil_mask=bs),zs=Rr[0],$o=Rr[1],Ta=Rr[2],(zs!==pi[0]||$o!==pi[1]||Ta!==pi[2])&&(Te.stencilFunc(zs,$o,Ta),pi[0]=zs,pi[1]=$o,pi[2]=Ta),os=Di[0],_l=Di[1],Ss=Di[2],po=Di[3],(os!==ni[0]||_l!==ni[1]||Ss!==ni[2]||po!==ni[3])&&(Te.stencilOpSeparate(os,_l,Ss,po),ni[0]=os,ni[1]=_l,ni[2]=Ss,ni[3]=po),go=$i[0],ss=$i[1],qo=$i[2],zo=$i[3],(go!==Qi[0]||ss!==Qi[1]||qo!==Qi[2]||zo!==Qi[3])&&(Te.stencilOpSeparate(go,ss,qo,zo),Qi[0]=go,Qi[1]=ss,Qi[2]=qo,Qi[3]=zo),io=vt.scissor_enable,io!==Ye.scissor_enable&&(io?Te.enable(3089):Te.disable(3089),Ye.scissor_enable=io),Io=si[0],Da=si[1],vs=si[2],fs=si[3],(Io!==Ai[0]||Da!==Ai[1]||vs!==Ai[2]||fs!==Ai[3])&&(Te.scissor(Io,Da,vs,fs),Ai[0]=Io,Ai[1]=Da,Ai[2]=vs,Ai[3]=fs)}ti=this.viewport,tn=ti.x|0,Yr=ti.y|0,oi="width"in ti?ti.width|0:ot.framebufferWidth-tn,Fi="height"in ti?ti.height|0:ot.framebufferHeight-Yr,an=ot.viewportWidth,ot.viewportWidth=oi,nn=ot.viewportHeight,ot.viewportHeight=Fi,Te.viewport(tn,Yr,oi,Fi),Rt[0]=tn,Rt[1]=Yr,Rt[2]=oi,Rt[3]=Fi,Te.blendColor(0,0,0,1),Ie[0]=0,Ie[1]=0,Ie[2]=0,Ie[3]=1,n?Te.enable(3042):Te.disable(3042),Ye.blend_enable=n,Te.blendFuncSeparate(770,771,773,1),fe[0]=770,fe[1]=771,fe[2]=773,fe[3]=1,i?Te.enable(2929):Te.disable(2929),Ye.depth_enable=i,a?Te.enable(2960):Te.disable(2960),Ye.stencil_enable=a,Ri=Ye.profile,Ri&&(Ii=performance.now(),r.count++),Te.useProgram(o.program),xn=Ut.angle_instanced_arrays,cr.setVAO(null),bi=this.charBuffer,Xr=!1,ct=1,tr=0,pr=0,gr=0,Zr=0,Ti=null,en=0,ii=!1,Xi=5126,aa=0,Mn=0,Un=0,xe(bi)?(Xr=!0,Ti=et.createStream(34962,bi),Xi=Ti.dtype):(Ti=et.getBuffer(bi),Ti?Xi=Ti.dtype:"constant"in bi?(ct=2,typeof bi.constant=="number"?(tr=bi.constant,pr=gr=Zr=0):(tr=bi.constant.length>0?bi.constant[0]:0,pr=bi.constant.length>1?bi.constant[1]:0,gr=bi.constant.length>2?bi.constant[2]:0,Zr=bi.constant.length>3?bi.constant[3]:0)):(xe(bi.buffer)?Ti=et.createStream(34962,bi.buffer):Ti=et.getBuffer(bi.buffer),Xi="type"in bi?Nr[bi.type]:Ti.dtype,ii=!!bi.normalized,en=bi.size|0,aa=bi.offset|0,Mn=bi.stride|0,Un=bi.divisor|0)),Ga=s.location,ma=Yt[Ga],ct===1?(ma.buffer||Te.enableVertexAttribArray(Ga),oa=en||1,(ma.type!==Xi||ma.size!==oa||ma.buffer!==Ti||ma.normalized!==ii||ma.offset!==aa||ma.stride!==Mn)&&(Te.bindBuffer(34962,Ti.buffer),Te.vertexAttribPointer(Ga,oa,Xi,ii,Mn,aa),ma.type=Xi,ma.size=oa,ma.buffer=Ti,ma.normalized=ii,ma.offset=aa,ma.stride=Mn),ma.divisor!==Un&&(xn.vertexAttribDivisorANGLE(Ga,Un),ma.divisor=Un)):(ma.buffer&&(Te.disableVertexAttribArray(Ga),ma.buffer=null),(ma.x!==tr||ma.y!==pr||ma.z!==gr||ma.w!==Zr)&&(Te.vertexAttrib4f(Ga,tr,pr,gr,Zr),ma.x=tr,ma.y=pr,ma.z=gr,ma.w=Zr)),ka=this.sizeBuffer,Hr.buffer=ka,so=!1,Kr=1,Ia=0,Yo=0,fa=0,kn=0,Aa=null,ys=0,uo=!1,ls=5126,$a=0,fo=0,mn=0,xe(Hr)?(so=!0,Aa=et.createStream(34962,Hr),ls=Aa.dtype):(Aa=et.getBuffer(Hr),Aa?ls=Aa.dtype:"constant"in Hr?(Kr=2,typeof Hr.constant=="number"?(Ia=Hr.constant,Yo=fa=kn=0):(Ia=Hr.constant.length>0?Hr.constant[0]:0,Yo=Hr.constant.length>1?Hr.constant[1]:0,fa=Hr.constant.length>2?Hr.constant[2]:0,kn=Hr.constant.length>3?Hr.constant[3]:0)):(xe(Hr.buffer)?Aa=et.createStream(34962,Hr.buffer):Aa=et.getBuffer(Hr.buffer),ls="type"in Hr?Nr[Hr.type]:Aa.dtype,uo=!!Hr.normalized,ys=Hr.size|0,$a=Hr.offset|0,fo=Hr.stride|0,mn=Hr.divisor|0)),ra=u.location,wa=Yt[ra],Kr===1?(wa.buffer||Te.enableVertexAttribArray(ra),ws=ys||1,(wa.type!==ls||wa.size!==ws||wa.buffer!==Aa||wa.normalized!==uo||wa.offset!==$a||wa.stride!==fo)&&(Te.bindBuffer(34962,Aa.buffer),Te.vertexAttribPointer(ra,ws,ls,uo,fo,$a),wa.type=ls,wa.size=ws,wa.buffer=Aa,wa.normalized=uo,wa.offset=$a,wa.stride=fo),wa.divisor!==mn&&(xn.vertexAttribDivisorANGLE(ra,mn),wa.divisor=mn)):(wa.buffer&&(Te.disableVertexAttribArray(ra),wa.buffer=null),(wa.x!==Ia||wa.y!==Yo||wa.z!==fa||wa.w!==kn)&&(Te.vertexAttrib4f(ra,Ia,Yo,fa,kn),wa.x=Ia,wa.y=Yo,wa.z=fa,wa.w=kn)),Co=this.position,Po=!1,Wi=1,gn=0,Ps=0,Ha=0,Sn=0,ao=null,Ba=0,Ko=!1,Qo=5126,Hi=0,Sa=0,Qa=0,xe(Co)?(Po=!0,ao=et.createStream(34962,Co),Qo=ao.dtype):(ao=et.getBuffer(Co),ao?Qo=ao.dtype:"constant"in Co?(Wi=2,typeof Co.constant=="number"?(gn=Co.constant,Ps=Ha=Sn=0):(gn=Co.constant.length>0?Co.constant[0]:0,Ps=Co.constant.length>1?Co.constant[1]:0,Ha=Co.constant.length>2?Co.constant[2]:0,Sn=Co.constant.length>3?Co.constant[3]:0)):(xe(Co.buffer)?ao=et.createStream(34962,Co.buffer):ao=et.getBuffer(Co.buffer),Qo="type"in Co?Nr[Co.type]:ao.dtype,Ko=!!Co.normalized,Ba=Co.size|0,Hi=Co.offset|0,Sa=Co.stride|0,Qa=Co.divisor|0)),vn=l.location,da=Yt[vn],Wi===1?(da.buffer||Te.enableVertexAttribArray(vn),la=Ba||2,(da.type!==Qo||da.size!==la||da.buffer!==ao||da.normalized!==Ko||da.offset!==Hi||da.stride!==Sa)&&(Te.bindBuffer(34962,ao.buffer),Te.vertexAttribPointer(vn,la,Qo,Ko,Sa,Hi),da.type=Qo,da.size=la,da.buffer=ao,da.normalized=Ko,da.offset=Hi,da.stride=Sa),da.divisor!==Qa&&(xn.vertexAttribDivisorANGLE(vn,Qa),da.divisor=Qa)):(da.buffer&&(Te.disableVertexAttribArray(vn),da.buffer=null),(da.x!==gn||da.y!==Ps||da.z!==Ha||da.w!==Sn)&&(Te.vertexAttrib4f(vn,gn,Ps,Ha,Sn),da.x=gn,da.y=Ps,da.z=Ha,da.w=Sn)),vo=this.sizeBuffer,jr.buffer=vo,Ts=!1,ps=1,co=0,mo=0,No=0,jn=0,Go=null,Ys=0,qs=!1,Ns=5126,Oa=0,ha=0,Vs=0,xe(jr)?(Ts=!0,Go=et.createStream(34962,jr),Ns=Go.dtype):(Go=et.getBuffer(jr),Go?Ns=Go.dtype:"constant"in jr?(ps=2,typeof jr.constant=="number"?(co=jr.constant,mo=No=jn=0):(co=jr.constant.length>0?jr.constant[0]:0,mo=jr.constant.length>1?jr.constant[1]:0,No=jr.constant.length>2?jr.constant[2]:0,jn=jr.constant.length>3?jr.constant[3]:0)):(xe(jr.buffer)?Go=et.createStream(34962,jr.buffer):Go=et.getBuffer(jr.buffer),Ns="type"in jr?Nr[jr.type]:Go.dtype,qs=!!jr.normalized,Ys=jr.size|0,Oa=jr.offset|0,ha=jr.stride|0,Vs=jr.divisor|0)),Ya=f.location,_n=Yt[Ya],ps===1?(_n.buffer||Te.enableVertexAttribArray(Ya),Vn=Ys||1,(_n.type!==Ns||_n.size!==Vn||_n.buffer!==Go||_n.normalized!==qs||_n.offset!==Oa||_n.stride!==ha)&&(Te.bindBuffer(34962,Go.buffer),Te.vertexAttribPointer(Ya,Vn,Ns,qs,ha,Oa),_n.type=Ns,_n.size=Vn,_n.buffer=Go,_n.normalized=qs,_n.offset=Oa,_n.stride=ha),_n.divisor!==Vs&&(xn.vertexAttribDivisorANGLE(Ya,Vs),_n.divisor=Vs)):(_n.buffer&&(Te.disableVertexAttribArray(Ya),_n.buffer=null),(_n.x!==co||_n.y!==mo||_n.z!==No||_n.w!==jn)&&(Te.vertexAttrib4f(Ya,co,mo,No,jn),_n.x=co,_n.y=mo,_n.z=No,_n.w=jn)),wo=gi.align,Te.uniform1f(c.location,wo),Ra=d.call(this,ot,gi,0),Ra&&Ra._reglType==="framebuffer"&&(Ra=Ra.color[0]),Xn=Ra._texture,Te.uniform1i(h.location,Xn.bind()),un=_.call(this,ot,gi,0),$n=un[0],Ka=un[1],Te.uniform2f(p.location,$n,Ka),qn=v.call(this,ot,gi,0),Eo=qn[0],Ja=qn[1],Te.uniform2f(b.location,Eo,Ja),lo=gi.baseline,Te.uniform1f(k.location,lo),eo=A.call(this,ot,gi,0),Te.uniform1f(E.location,eo),sa=gi.color,es=sa[0],Na=sa[1],rn=sa[2],Pa=sa[3],Te.uniform4f(L.location,es,Na,rn,Pa),to=C.call(this,ot,gi,0),Te.uniform1f(x.location,to),yo=gi.opacity,Te.uniform1f(M.location,yo),Jo=gi.positionOffset,To=Jo[0],Dn=Jo[1],Te.uniform2f(m.location,To,Dn),_a=this.scale,Ws=_a[0],Ca=_a[1],Te.uniform2f(P.location,Ws,Ca),Es=this.translate,As=Es[0],Ho=Es[1],Te.uniform2f(T.location,As,Ho),Wa=this.viewportArray,Ao=Wa[0],ts=Wa[1],Wo=Wa[2],qa=Wa[3],Te.uniform4f(B.location,Ao,ts,Wo,qa),ln=He.elements,ln?Te.bindBuffer(34963,ln.buffer.buffer):cr.currentVAO&&(ln=it.getElements(cr.currentVAO.elements),ln&&Te.bindBuffer(34963,ln.buffer.buffer)),Bo=gi.offset,ko=gi.count,ko&&(oo=He.instances,oo>0?ln?xn.drawElementsInstancedANGLE(0,ko,ln.type,Bo<<(ln.type-5121>>1),oo):xn.drawArraysInstancedANGLE(0,Bo,ko,oo):oo<0&&(ln?Te.drawElements(0,ko,ln.type,Bo<<(ln.type-5121>>1)):Te.drawArrays(0,Bo,ko)),Ye.dirty=!0,cr.setVAO(null),ot.viewportWidth=an,ot.viewportHeight=nn,Ri&&(r.cpuTime+=performance.now()-Ii),Xr&&et.destroyStream(Ti),so&&et.destroyStream(Aa),Po&&et.destroyStream(ao),Ts&&et.destroyStream(Go),Xn.unbind())},scope:function(gi,ki,Vi){var ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa;ti=this.viewport,tn=ti.x|0,Yr=ti.y|0,oi="width"in ti?ti.width|0:ot.framebufferWidth-tn,Fi="height"in ti?ti.height|0:ot.framebufferHeight-Yr,an=ot.viewportWidth,ot.viewportWidth=oi,nn=ot.viewportHeight,ot.viewportHeight=Fi,Ri=Ni[0],Ni[0]=tn,Ii=Ni[1],Ni[1]=Yr,xn=Ni[2],Ni[2]=oi,bi=Ni[3],Ni[3]=Fi,Xr=Oe[0],Oe[0]=F,ct=Oe[1],Oe[1]=U,tr=Oe[2],Oe[2]=G,pr=Oe[3],Oe[3]=j,gr=vt.blend_enable,vt.blend_enable=H,Zr=ge[0],ge[0]=N,Ti=ge[1],ge[1]=W,en=ge[2],ge[2]=re,ii=ge[3],ge[3]=ae,Xi=vt.depth_enable,vt.depth_enable=be,aa=vt.stencil_enable,vt.stencil_enable=ze,Mn=Ye.profile,Mn&&(Un=performance.now(),r.count++),Ga=gi.offset,ma=He.offset,He.offset=Ga,oa=gi.count,ka=He.count,He.count=oa,so=He.primitive,He.primitive=Ce,Kr=v.call(this,ot,gi,Vi),Ia=_r[de],_r[de]=Kr,Yo=_.call(this,ot,gi,Vi),fa=_r[te],_r[te]=Yo,kn=d.call(this,ot,gi,Vi),Aa=_r[ke],_r[ke]=kn,ys=A.call(this,ot,gi,Vi),uo=_r[Ee],_r[Ee]=ys,ls=C.call(this,ot,gi,Vi),$a=_r[Me],_r[Me]=ls,fo=gi.color,mn=_r[Ue],_r[Ue]=fo,ra=gi.opacity,wa=_r[De],_r[De]=ra,ws=this.viewportArray,Co=_r[ye],_r[ye]=ws,Po=this.scale,Wi=_r[qe],_r[qe]=Po,gn=gi.align,Ps=_r[ce],_r[ce]=gn,Ha=gi.baseline,Sn=_r[Je],_r[Je]=Ha,ao=this.translate,Ba=_r[nt],_r[nt]=ao,Ko=gi.positionOffset,Qo=_r[gt],_r[gt]=Ko,Hi=this.charBuffer,Sa=!1,Qa=1,vn=0,da=0,la=0,vo=0,Ts=null,ps=0,co=!1,mo=5126,No=0,jn=0,Go=0,xe(Hi)?(Sa=!0,Ts=et.createStream(34962,Hi),mo=Ts.dtype):(Ts=et.getBuffer(Hi),Ts?mo=Ts.dtype:"constant"in Hi?(Qa=2,typeof Hi.constant=="number"?(vn=Hi.constant,da=la=vo=0):(vn=Hi.constant.length>0?Hi.constant[0]:0,da=Hi.constant.length>1?Hi.constant[1]:0,la=Hi.constant.length>2?Hi.constant[2]:0,vo=Hi.constant.length>3?Hi.constant[3]:0)):(xe(Hi.buffer)?Ts=et.createStream(34962,Hi.buffer):Ts=et.getBuffer(Hi.buffer),mo="type"in Hi?Nr[Hi.type]:Ts.dtype,co=!!Hi.normalized,ps=Hi.size|0,No=Hi.offset|0,jn=Hi.stride|0,Go=Hi.divisor|0)),Ys=Nt.state,Nt.state=Qa,qs=Nt.x,Nt.x=vn,Ns=Nt.y,Nt.y=da,Oa=Nt.z,Nt.z=la,ha=Nt.w,Nt.w=vo,Vs=Nt.buffer,Nt.buffer=Ts,Ya=Nt.size,Nt.size=ps,_n=Nt.normalized,Nt.normalized=co,Vn=Nt.type,Nt.type=mo,wo=Nt.offset,Nt.offset=No,Ra=Nt.stride,Nt.stride=jn,Xn=Nt.divisor,Nt.divisor=Go,un=this.position,$n=!1,Ka=1,qn=0,Eo=0,Ja=0,lo=0,eo=null,sa=0,es=!1,Na=5126,rn=0,Pa=0,to=0,xe(un)?($n=!0,eo=et.createStream(34962,un),Na=eo.dtype):(eo=et.getBuffer(un),eo?Na=eo.dtype:"constant"in un?(Ka=2,typeof un.constant=="number"?(qn=un.constant,Eo=Ja=lo=0):(qn=un.constant.length>0?un.constant[0]:0,Eo=un.constant.length>1?un.constant[1]:0,Ja=un.constant.length>2?un.constant[2]:0,lo=un.constant.length>3?un.constant[3]:0)):(xe(un.buffer)?eo=et.createStream(34962,un.buffer):eo=et.getBuffer(un.buffer),Na="type"in un?Nr[un.type]:eo.dtype,es=!!un.normalized,sa=un.size|0,rn=un.offset|0,Pa=un.stride|0,to=un.divisor|0)),yo=at.state,at.state=Ka,Jo=at.x,at.x=qn,To=at.y,at.y=Eo,Dn=at.z,at.z=Ja,_a=at.w,at.w=lo,Ws=at.buffer,at.buffer=eo,Ca=at.size,at.size=sa,Es=at.normalized,at.normalized=es,As=at.type,at.type=Na,Ho=at.offset,at.offset=rn,Wa=at.stride,at.stride=Pa,Ao=at.divisor,at.divisor=to,ts=this.sizeBuffer,Hr.buffer=ts,Wo=!1,qa=1,ln=0,Bo=0,ko=0,oo=0,za=null,ea=0,rs=!1,$s=5126,us=0,Ds=0,fl=0,xe(Hr)?(Wo=!0,za=et.createStream(34962,Hr),$s=za.dtype):(za=et.getBuffer(Hr),za?$s=za.dtype:"constant"in Hr?(qa=2,typeof Hr.constant=="number"?(ln=Hr.constant,Bo=ko=oo=0):(ln=Hr.constant.length>0?Hr.constant[0]:0,Bo=Hr.constant.length>1?Hr.constant[1]:0,ko=Hr.constant.length>2?Hr.constant[2]:0,oo=Hr.constant.length>3?Hr.constant[3]:0)):(xe(Hr.buffer)?za=et.createStream(34962,Hr.buffer):za=et.getBuffer(Hr.buffer),$s="type"in Hr?Nr[Hr.type]:za.dtype,rs=!!Hr.normalized,ea=Hr.size|0,us=Hr.offset|0,Ds=Hr.stride|0,fl=Hr.divisor|0)),as=Ke.state,Ke.state=qa,Ma=Ke.x,Ke.x=ln,Qs=Ke.y,Ke.y=Bo,ho=Ke.z,Ke.z=ko,gs=Ke.w,Ke.w=oo,Vo=Ke.buffer,Ke.buffer=za,Do=Ke.size,Ke.size=ea,Lo=Ke.normalized,Ke.normalized=rs,xs=Ke.type,Ke.type=$s,ks=Ke.offset,Ke.offset=us,Ea=Ke.stride,Ke.stride=Ds,Jn=Ke.divisor,Ke.divisor=fl,Oo=this.sizeBuffer,jr.buffer=Oo,rl=!1,Gs=1,bs=0,zs=0,$o=0,Ta=0,os=null,_l=0,Ss=!1,po=5126,go=0,ss=0,qo=0,xe(jr)?(rl=!0,os=et.createStream(34962,jr),po=os.dtype):(os=et.getBuffer(jr),os?po=os.dtype:"constant"in jr?(Gs=2,typeof jr.constant=="number"?(bs=jr.constant,zs=$o=Ta=0):(bs=jr.constant.length>0?jr.constant[0]:0,zs=jr.constant.length>1?jr.constant[1]:0,$o=jr.constant.length>2?jr.constant[2]:0,Ta=jr.constant.length>3?jr.constant[3]:0)):(xe(jr.buffer)?os=et.createStream(34962,jr.buffer):os=et.getBuffer(jr.buffer),po="type"in jr?Nr[jr.type]:os.dtype,Ss=!!jr.normalized,_l=jr.size|0,go=jr.offset|0,ss=jr.stride|0,qo=jr.divisor|0)),zo=Ct.state,Ct.state=Gs,io=Ct.x,Ct.x=bs,Io=Ct.y,Ct.y=zs,Da=Ct.z,Ct.z=$o,vs=Ct.w,Ct.w=Ta,fs=Ct.buffer,Ct.buffer=os,cl=Ct.size,Ct.size=_l,el=Ct.normalized,Ct.normalized=Ss,Hs=Ct.type,Ct.type=po,Ro=Ct.offset,Ct.offset=go,tl=Ct.stride,Ct.stride=ss,Fs=Ct.divisor,Ct.divisor=qo,hl=It.vert,It.vert=wt,Fa=It.frag,It.frag=St,Ye.dirty=!0,ki(ot,gi,Vi),ot.viewportWidth=an,ot.viewportHeight=nn,Ni[0]=Ri,Ni[1]=Ii,Ni[2]=xn,Ni[3]=bi,Oe[0]=Xr,Oe[1]=ct,Oe[2]=tr,Oe[3]=pr,vt.blend_enable=gr,ge[0]=Zr,ge[1]=Ti,ge[2]=en,ge[3]=ii,vt.depth_enable=Xi,vt.stencil_enable=aa,Mn&&(r.cpuTime+=performance.now()-Un),He.offset=ma,He.count=ka,He.primitive=so,_r[de]=Ia,_r[te]=fa,_r[ke]=Aa,_r[Ee]=uo,_r[Me]=$a,_r[Ue]=mn,_r[De]=wa,_r[ye]=Co,_r[qe]=Wi,_r[ce]=Ps,_r[Je]=Sn,_r[nt]=Ba,_r[gt]=Qo,Sa&&et.destroyStream(Ts),Nt.state=Ys,Nt.x=qs,Nt.y=Ns,Nt.z=Oa,Nt.w=ha,Nt.buffer=Vs,Nt.size=Ya,Nt.normalized=_n,Nt.type=Vn,Nt.offset=wo,Nt.stride=Ra,Nt.divisor=Xn,$n&&et.destroyStream(eo),at.state=yo,at.x=Jo,at.y=To,at.z=Dn,at.w=_a,at.buffer=Ws,at.size=Ca,at.normalized=Es,at.type=As,at.offset=Ho,at.stride=Wa,at.divisor=Ao,Wo&&et.destroyStream(za),Ke.state=as,Ke.x=Ma,Ke.y=Qs,Ke.z=ho,Ke.w=gs,Ke.buffer=Vo,Ke.size=Do,Ke.normalized=Lo,Ke.type=xs,Ke.offset=ks,Ke.stride=Ea,Ke.divisor=Jn,rl&&et.destroyStream(os),Ct.state=zo,Ct.x=io,Ct.y=Io,Ct.z=Da,Ct.w=vs,Ct.buffer=fs,Ct.size=cl,Ct.normalized=el,Ct.type=Hs,Ct.offset=Ro,Ct.stride=tl,Ct.divisor=Fs,It.vert=hl,It.frag=Fa,Ye.dirty=!0},batch:function(gi,ki){var Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct;if(Vi=Ut.angle_instanced_arrays,ti=yr.next,ti!==yr.cur&&(ti?Te.bindFramebuffer(36160,ti.framebuffer):Te.bindFramebuffer(36160,null),yr.cur=ti),Ye.dirty){var tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao;tr=vt.dither,tr!==Ye.dither&&(tr?Te.enable(3024):Te.disable(3024),Ye.dither=tr),pr=Fe[0],gr=Fe[1],(pr!==ft[0]||gr!==ft[1])&&(Te.blendEquationSeparate(pr,gr),ft[0]=pr,ft[1]=gr),Zr=vt.depth_func,Zr!==Ye.depth_func&&(Te.depthFunc(Zr),Ye.depth_func=Zr),Ti=pe[0],en=pe[1],(Ti!==dt[0]||en!==dt[1])&&(Te.depthRange(Ti,en),dt[0]=Ti,dt[1]=en),ii=vt.depth_mask,ii!==Ye.depth_mask&&(Te.depthMask(ii),Ye.depth_mask=ii),Xi=Pt[0],aa=Pt[1],Mn=Pt[2],Un=Pt[3],(Xi!==zt[0]||aa!==zt[1]||Mn!==zt[2]||Un!==zt[3])&&(Te.colorMask(Xi,aa,Mn,Un),zt[0]=Xi,zt[1]=aa,zt[2]=Mn,zt[3]=Un),Ga=vt.cull_enable,Ga!==Ye.cull_enable&&(Ga?Te.enable(2884):Te.disable(2884),Ye.cull_enable=Ga),ma=vt.cull_face,ma!==Ye.cull_face&&(Te.cullFace(ma),Ye.cull_face=ma),oa=vt.frontFace,oa!==Ye.frontFace&&(Te.frontFace(oa),Ye.frontFace=oa),ka=vt.lineWidth,ka!==Ye.lineWidth&&(Te.lineWidth(ka),Ye.lineWidth=ka),so=vt.polygonOffset_enable,so!==Ye.polygonOffset_enable&&(so?Te.enable(32823):Te.disable(32823),Ye.polygonOffset_enable=so),Kr=rr[0],Ia=rr[1],(Kr!==Gr[0]||Ia!==Gr[1])&&(Te.polygonOffset(Kr,Ia),Gr[0]=Kr,Gr[1]=Ia),Yo=vt.sample_alpha,Yo!==Ye.sample_alpha&&(Yo?Te.enable(32926):Te.disable(32926),Ye.sample_alpha=Yo),fa=vt.sample_enable,fa!==Ye.sample_enable&&(fa?Te.enable(32928):Te.disable(32928),Ye.sample_enable=fa),kn=Br[0],Aa=Br[1],(kn!==Er[0]||Aa!==Er[1])&&(Te.sampleCoverage(kn,Aa),Er[0]=kn,Er[1]=Aa),ys=vt.stencil_mask,ys!==Ye.stencil_mask&&(Te.stencilMask(ys),Ye.stencil_mask=ys),uo=Rr[0],ls=Rr[1],$a=Rr[2],(uo!==pi[0]||ls!==pi[1]||$a!==pi[2])&&(Te.stencilFunc(uo,ls,$a),pi[0]=uo,pi[1]=ls,pi[2]=$a),fo=Di[0],mn=Di[1],ra=Di[2],wa=Di[3],(fo!==ni[0]||mn!==ni[1]||ra!==ni[2]||wa!==ni[3])&&(Te.stencilOpSeparate(fo,mn,ra,wa),ni[0]=fo,ni[1]=mn,ni[2]=ra,ni[3]=wa),ws=$i[0],Co=$i[1],Po=$i[2],Wi=$i[3],(ws!==Qi[0]||Co!==Qi[1]||Po!==Qi[2]||Wi!==Qi[3])&&(Te.stencilOpSeparate(ws,Co,Po,Wi),Qi[0]=ws,Qi[1]=Co,Qi[2]=Po,Qi[3]=Wi),gn=vt.scissor_enable,gn!==Ye.scissor_enable&&(gn?Te.enable(3089):Te.disable(3089),Ye.scissor_enable=gn),Ps=si[0],Ha=si[1],Sn=si[2],ao=si[3],(Ps!==Ai[0]||Ha!==Ai[1]||Sn!==Ai[2]||ao!==Ai[3])&&(Te.scissor(Ps,Ha,Sn,ao),Ai[0]=Ps,Ai[1]=Ha,Ai[2]=Sn,Ai[3]=ao)}tn=this.viewport,Yr=tn.x|0,oi=tn.y|0,Fi="width"in tn?tn.width|0:ot.framebufferWidth-Yr,an="height"in tn?tn.height|0:ot.framebufferHeight-oi,nn=ot.viewportWidth,ot.viewportWidth=Fi,Ri=ot.viewportHeight,ot.viewportHeight=an,Te.viewport(Yr,oi,Fi,an),Rt[0]=Yr,Rt[1]=oi,Rt[2]=Fi,Rt[3]=an,Te.blendColor(0,0,0,1),Ie[0]=0,Ie[1]=0,Ie[2]=0,Ie[3]=1,Dt?Te.enable(3042):Te.disable(3042),Ye.blend_enable=Dt,Te.blendFuncSeparate(770,771,773,1),fe[0]=770,fe[1]=771,fe[2]=773,fe[3]=1,Zt?Te.enable(2929):Te.disable(2929),Ye.depth_enable=Zt,Et?Te.enable(2960):Te.disable(2960),Ye.stencil_enable=Et,Ii=Ye.profile,Ii&&(xn=performance.now(),r.count+=ki),Te.useProgram(o.program),bi=Ut.angle_instanced_arrays;var Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn;for(cr.setVAO(null),Ba=this.charBuffer,Ko=!1,Qo=1,Hi=0,Sa=0,Qa=0,vn=0,da=null,la=0,vo=!1,Ts=5126,ps=0,co=0,mo=0,xe(Ba)?(Ko=!0,da=et.createStream(34962,Ba),Ts=da.dtype):(da=et.getBuffer(Ba),da?Ts=da.dtype:"constant"in Ba?(Qo=2,typeof Ba.constant=="number"?(Hi=Ba.constant,Sa=Qa=vn=0):(Hi=Ba.constant.length>0?Ba.constant[0]:0,Sa=Ba.constant.length>1?Ba.constant[1]:0,Qa=Ba.constant.length>2?Ba.constant[2]:0,vn=Ba.constant.length>3?Ba.constant[3]:0)):(xe(Ba.buffer)?da=et.createStream(34962,Ba.buffer):da=et.getBuffer(Ba.buffer),Ts="type"in Ba?Nr[Ba.type]:da.dtype,vo=!!Ba.normalized,la=Ba.size|0,ps=Ba.offset|0,co=Ba.stride|0,mo=Ba.divisor|0)),No=s.location,jn=Yt[No],Qo===1?(jn.buffer||Te.enableVertexAttribArray(No),Go=la||1,(jn.type!==Ts||jn.size!==Go||jn.buffer!==da||jn.normalized!==vo||jn.offset!==ps||jn.stride!==co)&&(Te.bindBuffer(34962,da.buffer),Te.vertexAttribPointer(No,Go,Ts,vo,co,ps),jn.type=Ts,jn.size=Go,jn.buffer=da,jn.normalized=vo,jn.offset=ps,jn.stride=co),jn.divisor!==mo&&(bi.vertexAttribDivisorANGLE(No,mo),jn.divisor=mo)):(jn.buffer&&(Te.disableVertexAttribArray(No),jn.buffer=null),(jn.x!==Hi||jn.y!==Sa||jn.z!==Qa||jn.w!==vn)&&(Te.vertexAttrib4f(No,Hi,Sa,Qa,vn),jn.x=Hi,jn.y=Sa,jn.z=Qa,jn.w=vn)),Ys=this.sizeBuffer,Hr.buffer=Ys,qs=!1,Ns=1,Oa=0,ha=0,Vs=0,Ya=0,_n=null,Vn=0,wo=!1,Ra=5126,Xn=0,un=0,$n=0,xe(Hr)?(qs=!0,_n=et.createStream(34962,Hr),Ra=_n.dtype):(_n=et.getBuffer(Hr),_n?Ra=_n.dtype:"constant"in Hr?(Ns=2,typeof Hr.constant=="number"?(Oa=Hr.constant,ha=Vs=Ya=0):(Oa=Hr.constant.length>0?Hr.constant[0]:0,ha=Hr.constant.length>1?Hr.constant[1]:0,Vs=Hr.constant.length>2?Hr.constant[2]:0,Ya=Hr.constant.length>3?Hr.constant[3]:0)):(xe(Hr.buffer)?_n=et.createStream(34962,Hr.buffer):_n=et.getBuffer(Hr.buffer),Ra="type"in Hr?Nr[Hr.type]:_n.dtype,wo=!!Hr.normalized,Vn=Hr.size|0,Xn=Hr.offset|0,un=Hr.stride|0,$n=Hr.divisor|0)),Ka=u.location,qn=Yt[Ka],Ns===1?(qn.buffer||Te.enableVertexAttribArray(Ka),Eo=Vn||1,(qn.type!==Ra||qn.size!==Eo||qn.buffer!==_n||qn.normalized!==wo||qn.offset!==Xn||qn.stride!==un)&&(Te.bindBuffer(34962,_n.buffer),Te.vertexAttribPointer(Ka,Eo,Ra,wo,un,Xn),qn.type=Ra,qn.size=Eo,qn.buffer=_n,qn.normalized=wo,qn.offset=Xn,qn.stride=un),qn.divisor!==$n&&(bi.vertexAttribDivisorANGLE(Ka,$n),qn.divisor=$n)):(qn.buffer&&(Te.disableVertexAttribArray(Ka),qn.buffer=null),(qn.x!==Oa||qn.y!==ha||qn.z!==Vs||qn.w!==Ya)&&(Te.vertexAttrib4f(Ka,Oa,ha,Vs,Ya),qn.x=Oa,qn.y=ha,qn.z=Vs,qn.w=Ya)),Ja=this.position,lo=!1,eo=1,sa=0,es=0,Na=0,rn=0,Pa=null,to=0,yo=!1,Jo=5126,To=0,Dn=0,_a=0,xe(Ja)?(lo=!0,Pa=et.createStream(34962,Ja),Jo=Pa.dtype):(Pa=et.getBuffer(Ja),Pa?Jo=Pa.dtype:"constant"in Ja?(eo=2,typeof Ja.constant=="number"?(sa=Ja.constant,es=Na=rn=0):(sa=Ja.constant.length>0?Ja.constant[0]:0,es=Ja.constant.length>1?Ja.constant[1]:0,Na=Ja.constant.length>2?Ja.constant[2]:0,rn=Ja.constant.length>3?Ja.constant[3]:0)):(xe(Ja.buffer)?Pa=et.createStream(34962,Ja.buffer):Pa=et.getBuffer(Ja.buffer),Jo="type"in Ja?Nr[Ja.type]:Pa.dtype,yo=!!Ja.normalized,to=Ja.size|0,To=Ja.offset|0,Dn=Ja.stride|0,_a=Ja.divisor|0)),Ws=l.location,Ca=Yt[Ws],eo===1?(Ca.buffer||Te.enableVertexAttribArray(Ws),Es=to||2,(Ca.type!==Jo||Ca.size!==Es||Ca.buffer!==Pa||Ca.normalized!==yo||Ca.offset!==To||Ca.stride!==Dn)&&(Te.bindBuffer(34962,Pa.buffer),Te.vertexAttribPointer(Ws,Es,Jo,yo,Dn,To),Ca.type=Jo,Ca.size=Es,Ca.buffer=Pa,Ca.normalized=yo,Ca.offset=To,Ca.stride=Dn),Ca.divisor!==_a&&(bi.vertexAttribDivisorANGLE(Ws,_a),Ca.divisor=_a)):(Ca.buffer&&(Te.disableVertexAttribArray(Ws),Ca.buffer=null),(Ca.x!==sa||Ca.y!==es||Ca.z!==Na||Ca.w!==rn)&&(Te.vertexAttrib4f(Ws,sa,es,Na,rn),Ca.x=sa,Ca.y=es,Ca.z=Na,Ca.w=rn)),As=this.sizeBuffer,jr.buffer=As,Ho=!1,Wa=1,Ao=0,ts=0,Wo=0,qa=0,ln=null,Bo=0,ko=!1,oo=5126,za=0,ea=0,rs=0,xe(jr)?(Ho=!0,ln=et.createStream(34962,jr),oo=ln.dtype):(ln=et.getBuffer(jr),ln?oo=ln.dtype:"constant"in jr?(Wa=2,typeof jr.constant=="number"?(Ao=jr.constant,ts=Wo=qa=0):(Ao=jr.constant.length>0?jr.constant[0]:0,ts=jr.constant.length>1?jr.constant[1]:0,Wo=jr.constant.length>2?jr.constant[2]:0,qa=jr.constant.length>3?jr.constant[3]:0)):(xe(jr.buffer)?ln=et.createStream(34962,jr.buffer):ln=et.getBuffer(jr.buffer),oo="type"in jr?Nr[jr.type]:ln.dtype,ko=!!jr.normalized,Bo=jr.size|0,za=jr.offset|0,ea=jr.stride|0,rs=jr.divisor|0)),$s=f.location,us=Yt[$s],Wa===1?(us.buffer||Te.enableVertexAttribArray($s),Ds=Bo||1,(us.type!==oo||us.size!==Ds||us.buffer!==ln||us.normalized!==ko||us.offset!==za||us.stride!==ea)&&(Te.bindBuffer(34962,ln.buffer),Te.vertexAttribPointer($s,Ds,oo,ko,ea,za),us.type=oo,us.size=Ds,us.buffer=ln,us.normalized=ko,us.offset=za,us.stride=ea),us.divisor!==rs&&(bi.vertexAttribDivisorANGLE($s,rs),us.divisor=rs)):(us.buffer&&(Te.disableVertexAttribArray($s),us.buffer=null),(us.x!==Ao||us.y!==ts||us.z!==Wo||us.w!==qa)&&(Te.vertexAttrib4f($s,Ao,ts,Wo,qa),us.x=Ao,us.y=ts,us.z=Wo,us.w=qa)),fl=this.scale,as=fl[0],Ma=fl[1],Te.uniform2f(P.location,as,Ma),Qs=this.translate,ho=Qs[0],gs=Qs[1],Te.uniform2f(T.location,ho,gs),Vo=this.viewportArray,Do=Vo[0],Lo=Vo[1],xs=Vo[2],ks=Vo[3],Te.uniform4f(B.location,Do,Lo,xs,ks),Ea=He.elements,Ea?Te.bindBuffer(34963,Ea.buffer.buffer):cr.currentVAO&&(Ea=it.getElements(cr.currentVAO.elements),Ea&&Te.bindBuffer(34963,Ea.buffer.buffer)),Jn=He.instances,Xr=0;Xr0?Ea?bi.drawElementsInstancedANGLE(0,Fr,Ea.type,mr<<(Ea.type-5121>>1),Jn):bi.drawArraysInstancedANGLE(0,mr,Fr,Jn):Jn<0&&(Ea?Te.drawElements(0,Fr,Ea.type,mr<<(Ea.type-5121>>1)):Te.drawArrays(0,mr,Fr)),bs.unbind())}Ko&&et.destroyStream(da),qs&&et.destroyStream(_n),lo&&et.destroyStream(Pa),Ho&&et.destroyStream(ln),Ye.dirty=!0,cr.setVAO(null),ot.viewportWidth=nn,ot.viewportHeight=Ri,Ii&&(r.cpuTime+=performance.now()-xn)}}}});var TK=Ae((Yxr,r7e)=>{"use strict";var LVt=M8(),PVt=E8(),zVt=k8(),IVt=C8(),RVt=L8(),DVt=P8(),FVt=z8(),BVt=I8(),OVt=R8(),qVt=D8();r7e.exports={"3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b":LVt,cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81:PVt,"8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623":zVt,fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7:IVt,db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d:RVt,"49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210":DVt,dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5:FVt,bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019:BVt,"6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923":OVt,"8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034":qVt}});var a7e=Ae((Kxr,n7e)=>{"use strict";var i7e=wK(),NVt=TK();Object.assign(i7e.reglPrecompiled,NVt);n7e.exports=i7e});var l7e=Ae((Jxr,s7e)=>{"use strict";var o7e=fBe();o7e.plot=a7e();s7e.exports=o7e});var AK=Ae(($xr,h7e)=>{"use strict";var UVt=Zc(),c7e=nc(),u7e=jc().axisHoverFormat,{hovertemplateAttrs:VVt,templatefallbackAttrs:GVt}=Ff(),kk=lk(),HVt=dd().idRegex,WVt=Lf().templatedArray,vS=Su().extendFlat,o1=UVt.marker,jVt=o1.line,XVt=vS(c7e("marker.line",{editTypeOverride:"calc"}),{width:vS({},jVt.width,{editType:"calc"}),editType:"calc"}),F8=vS(c7e("marker"),{symbol:o1.symbol,angle:o1.angle,size:vS({},o1.size,{editType:"markerSize"}),sizeref:o1.sizeref,sizemin:o1.sizemin,sizemode:o1.sizemode,opacity:o1.opacity,colorbar:o1.colorbar,line:XVt,editType:"calc"});F8.color.editType=F8.cmin.editType=F8.cmax.editType="style";function f7e(e){return{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"subplotid",regex:HVt[e],editType:"plot"}}}h7e.exports={dimensions:WVt("dimension",{visible:{valType:"boolean",dflt:!0,editType:"calc"},label:{valType:"string",editType:"calc"},values:{valType:"data_array",editType:"calc+clearAxisTypes"},axis:{type:{valType:"enumerated",values:["linear","log","date","category"],editType:"calc+clearAxisTypes"},matches:{valType:"boolean",dflt:!1,editType:"calc"},editType:"calc+clearAxisTypes"},editType:"calc+clearAxisTypes"}),text:vS({},kk.text,{}),hovertext:vS({},kk.hovertext,{}),hovertemplate:VVt(),hovertemplatefallback:GVt(),xhoverformat:u7e("x"),yhoverformat:u7e("y"),marker:F8,xaxes:f7e("x"),yaxes:f7e("y"),diagonal:{visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"},showupperhalf:{valType:"boolean",dflt:!0,editType:"calc"},showlowerhalf:{valType:"boolean",dflt:!0,editType:"calc"},selected:{marker:kk.selected.marker,editType:"calc"},unselected:{marker:kk.unselected.marker,editType:"calc"},opacity:kk.opacity}});var B8=Ae((Qxr,d7e)=>{"use strict";d7e.exports=function(e,t,r,n){n||(n=1/0);var i,a;for(i=0;i{"use strict";var SK=ei(),ZVt=Jd(),p7e=AK(),YVt=lc(),KVt=$v(),JVt=B8(),$Vt=UF().isOpenSymbol;v7e.exports=function(t,r,n,i){function a(d,p){return SK.coerce(t,r,p7e,d,p)}var o=ZVt(t,r,{name:"dimensions",handleItemDefaults:QVt}),s=a("diagonal.visible"),u=a("showupperhalf"),l=a("showlowerhalf"),f=JVt(r,o,"values");if(!f||!s&&!u&&!l){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),KVt(t,r,n,i,a,{noAngleRef:!0,noStandOff:!0});var c=$Vt(r.marker.symbol),h=YVt.isBubble(r);a("marker.line.width",c||h?1:0),eGt(t,r,i,a),SK.coerceSelectionMarkerOpacity(r,a)};function QVt(e,t){function r(i,a){return SK.coerce(e,t,p7e.dimensions,i,a)}r("label");var n=r("values");n&&n.length?r("visible"):t.visible=!1,r("axis.type"),r("axis.matches")}function eGt(e,t,r,n){var i=t.dimensions,a=i.length,o=t.showupperhalf,s=t.showlowerhalf,u=t.diagonal.visible,l,f,c=new Array(a),h=new Array(a);for(l=0;lf&&o||l{"use strict";var y7e=ei();g7e.exports=function(t,r){var n=t._fullLayout,i=r.uid,a=n._splomScenes;a||(a=n._splomScenes={});var o={dirty:!0,selectBatch:[],unselectBatch:[]},s={matrix:!1,selectBatch:[],unselectBatch:[]},u=a[r.uid];return u||(u=a[i]=y7e.extendFlat({},o,s),u.draw=function(){u.matrix&&u.matrix.draw&&(u.selectBatch.length||u.unselectBatch.length?u.matrix.draw(u.unselectBatch,u.selectBatch):u.matrix.draw()),u.dirty=!1},u.destroy=function(){u.matrix&&u.matrix.destroy&&u.matrix.destroy(),u.matrixOptions=null,u.selectBatch=null,u.unselectBatch=null,u=null}),u.dirty||y7e.extendFlat(u,o),u}});var w7e=Ae((rbr,b7e)=>{"use strict";var MK=ei(),O8=Wc(),tGt=B0().calcMarkerSize,rGt=B0().calcAxisExpansion,iGt=D0(),x7e=K2().markerSelection,nGt=K2().markerStyle,aGt=_7e(),oGt=rf().BADNUM,sGt=ox().TOO_MANY_POINTS;b7e.exports=function(t,r){var n=r.dimensions,i=r._length,a={},o=a.cdata=[],s=a.data=[],u=r._visibleDims=[],l,f,c,h,d;function p(E,A){for(var L=E.makeCalcdata({v:A.values,vcalendar:r.calendar},"v"),x=0;xsGt,v;for(b?v=a.sizeAvg||Math.max(a.size,3):v=tGt(r,i),f=0;f{(function(){var e,t,r,n,i,a;typeof performance!="undefined"&&performance!==null&&performance.now?Ck.exports=function(){return performance.now()}:typeof process!="undefined"&&process!==null&&process.hrtime?(Ck.exports=function(){return(e()-i)/1e6},t=process.hrtime,e=function(){var o;return o=t(),o[0]*1e9+o[1]},n=e(),a=process.uptime()*1e9,i=n-a):Date.now?(Ck.exports=function(){return Date.now()-r},r=Date.now()):(Ck.exports=function(){return new Date().getTime()-r},r=new Date().getTime())}).call(T7e)});var M7e=Ae((ibr,U8)=>{var lGt=A7e(),s1=window,q8=["moz","webkit"],yS="AnimationFrame",gS=s1["request"+yS],Lk=s1["cancel"+yS]||s1["cancelRequest"+yS];for(mS=0;!gS&&mS{E7e.exports=function(t,r){var n=typeof t=="number",i=typeof r=="number";n&&!i?(r=t,t=0):!n&&!i&&(t=0,r=0),t=t|0,r=r|0;var a=r-t;if(a<0)throw new Error("array length must be positive");for(var o=new Array(a),s=0,u=t;s{"use strict";var uGt=bY(),fGt=Zy(),cGt=j2(),C7e=M7e(),hGt=k7e(),kK=rS(),dGt=X2();P7e.exports=vx;function vx(e,t){if(!(this instanceof vx))return new vx(e,t);this.traces=[],this.passes={},this.regl=e,this.scatter=uGt(e),this.canvas=this.scatter.canvas}vx.prototype.render=function(...e){return e.length&&this.update(...e),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?this.planned==null&&(this.planned=C7e(()=>{this.draw(),this.dirty=!0,this.planned=null})):(this.draw(),this.dirty=!0,C7e(()=>{this.dirty=!1})),this)};vx.prototype.update=function(...e){if(!e.length)return;for(let n=0;nb||!i.lower&&_{t[a+s]=n})}this.scatter.draw(...t)}return this};vx.prototype.destroy=function(){return this.traces.forEach(e=>{e.buffer&&e.buffer.destroy&&e.buffer.destroy()}),this.traces=null,this.passes=null,this.scatter.destroy(),this};function pGt(e,t,r){let n=e.id!=null?e.id:e,i=t,a=r;return n<<16|(i&255)<<8|a&255}function V8(e,t,r){let n,i,a,o,s,u,l,f,c=e[t],h=e[r];return c.length>2?(n=c[0],a=c[2],i=c[1],o=c[3]):c.length?(n=i=c[0],a=o=c[1]):(n=c.x,i=c.y,a=c.x+c.width,o=c.y+c.height),h.length>2?(s=h[0],l=h[2],u=h[1],f=h[3]):h.length?(s=u=h[0],l=f=h[1]):(s=h.x,u=h.y,l=h.x+h.width,f=h.y+h.height),[s,i,l,o]}function L7e(e){if(typeof e=="number")return[e,e,e,e];if(e.length===2)return[e[0],e[1],e[0],e[1]];{let t=kK(e);return[t.x,t.y,t.x+t.width,t.y+t.height]}}});var R7e=Ae((obr,I7e)=>{"use strict";var vGt=z7e(),CK=ei(),G8=Wc(),mGt=Mm().selectMode;I7e.exports=function(t,r,n){if(n.length)for(var i=0;i-1,T=mGt(f)||!!i.selectedpoints||P,B=!0;if(T){var F=i._length;if(i.selectedpoints){o.selectBatch=i.selectedpoints;var U=i.selectedpoints,G={};for(d=0;d{"use strict";D7e.getDimIndex=function(t,r){for(var n=r._id,i=n.charAt(0),a={x:0,y:1}[i],o=t._visibleDims,s=0;s{"use strict";var F7e=LK(),gGt=NF().calcHover,B7e=wu().getFromId,_Gt=Su().extendFlat;function xGt(e,t,r,n,i){i||(i={});var a=(n||"").charAt(0)==="x",o=(n||"").charAt(0)==="y",s=O7e(e,t,r);if((a||o)&&i.hoversubplots==="axis"&&s[0])for(var u=(a?e.xa:e.ya)._subplotsWith,l=i.gd,f=_Gt({},e),c=0;c{"use strict";var H7e=ei(),U7e=H7e.pushUnique,V7e=lc(),G7e=LK();W7e.exports=function(t,r){var n=t.cd,i=n[0].trace,a=n[0].t,o=t.scene,s=o.matrixOptions.cdata,u=t.xaxis,l=t.yaxis,f=[];if(!o)return f;var c=!V7e.hasMarkers(i)&&!V7e.hasText(i);if(i.visible!==!0||c)return f;var h=G7e.getDimIndex(i,u),d=G7e.getDimIndex(i,l);if(h===!1||d===!1)return f;var p=a.xpx[h],_=a.ypx[d],b=s[h],v=s[d],k=(t.scene.selectBatch||[]).slice(),E=[];if(r!==!1&&!r.degenerate)for(var A=0;A{"use strict";var X7e=ei(),bGt=D0(),wGt=K2().markerStyle;Z7e.exports=function(t,r){var n=r.trace,i=t._fullLayout._splomScenes[n.uid];if(i){bGt(t,n),X7e.extendFlat(i.matrixOptions,wGt(t,n));var a=X7e.extendFlat({},i.matrixOptions,i.viewOpts);i.matrix.update(a,null)}}});var J7e=Ae((cbr,K7e)=>{"use strict";var TGt=$l(),AGt=bV();K7e.exports={moduleType:"trace",name:"splom",categories:["gl","regl","cartesian","symbols","showLegend","scatter-like"],attributes:AK(),supplyDefaults:m7e(),colorbar:ep(),calc:w7e(),plot:R7e(),hoverPoints:N7e().hoverPoints,selectPoints:j7e(),editStyle:Y7e(),meta:{}};TGt.register(AGt)});var iUe=Ae((hbr,rUe)=>{"use strict";var SGt=$Y(),MGt=$l(),EGt=S8(),kGt=Rd().getModuleCalcData,mx=Ah(),$7e=Wc().getFromId,Q7e=wu().shouldShowZeroLine,eUe="splom",tUe={};function CGt(e){var t=e._fullLayout,r=MGt.getModule(eUe),n=kGt(e.calcdata,r)[0],i=EGt(e,["ANGLE_instanced_arrays","OES_element_index_uint"],tUe);i&&(t._hasOnlyLargeSploms&&PK(e),r.plot(e,{},n))}function LGt(e){var t=e.calcdata,r=e._fullLayout;r._hasOnlyLargeSploms&&PK(e);for(var n=0;n{"use strict";var RGt=M8(),DGt=E8(),FGt=k8(),BGt=z8(),OGt=I8(),qGt=C8(),NGt=L8(),UGt=P8(),VGt=R8(),GGt=D8();nUe.exports={"3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b":RGt,cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81:DGt,"8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623":FGt,dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5:BGt,bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019:OGt,fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7:qGt,db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d:NGt,"49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210":UGt,"6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923":VGt,"8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034":GGt}});var lUe=Ae((pbr,sUe)=>{"use strict";var oUe=iUe(),HGt=aUe();Object.assign(oUe.reglPrecompiled,HGt);sUe.exports=oUe});var cUe=Ae((vbr,fUe)=>{"use strict";var uUe=J7e();uUe.basePlotModule=lUe(),fUe.exports=uUe});var RK=Ae((mbr,hUe)=>{"use strict";var WGt=nc(),zK=Dd(),IK=gc(),jGt=zc().attributes,H8=Su().extendFlat,XGt=Lf().templatedArray;hUe.exports={domain:jGt({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:IK({editType:"plot"}),tickfont:IK({autoShadowDflt:!0,editType:"plot"}),rangefont:IK({editType:"plot"}),dimensions:XGt("dimension",{label:{valType:"string",editType:"plot"},tickvals:H8({},zK.tickvals,{editType:"plot"}),ticktext:H8({},zK.ticktext,{editType:"plot"}),tickformat:H8({},zK.tickformat,{editType:"plot"}),visible:{valType:"boolean",dflt:!0,editType:"plot"},range:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},constraintrange:{valType:"info_array",freeLength:!0,dimensions:"1-2",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},multiselect:{valType:"boolean",dflt:!0,editType:"plot"},values:{valType:"data_array",editType:"calc"},editType:"calc"}),line:H8({editType:"calc"},WGt("line",{colorscaleDflt:"Viridis",autoColorDflt:!1,editTypeOverride:"calc"})),unselected:{line:{color:{valType:"color",dflt:"#7f7f7f",editType:"plot"},opacity:{valType:"number",min:0,max:1,dflt:"auto",editType:"plot"},editType:"plot"},editType:"plot"}}});var Pk=Ae((ybr,dUe)=>{"use strict";dUe.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:["contextLineLayer","focusLineLayer","pickLineLayer"],axisTitleOffset:28,axisExtentOffset:10,bar:{width:4,captureWidth:10,fillColor:"magenta",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeOpacity:1,strokeWidth:1,handleHeight:8,handleOpacity:1,handleOverlap:0},cn:{axisExtentText:"axis-extent-text",parcoordsLineLayers:"parcoords-line-layers",parcoordsLineLayer:"parcoords-lines",parcoords:"parcoords",parcoordsControlView:"parcoords-control-view",yAxis:"y-axis",axisOverlays:"axis-overlays",axis:"axis",axisHeading:"axis-heading",axisTitle:"axis-title",axisExtent:"axis-extent",axisExtentTop:"axis-extent-top",axisExtentTopText:"axis-extent-top-text",axisExtentBottom:"axis-extent-bottom",axisExtentBottomText:"axis-extent-bottom-text",axisBrush:"axis-brush"},id:{filterBarPattern:"filter-bar-pattern"}}});var Jy=Ae((gbr,vUe)=>{"use strict";var ZGt=GM();function pUe(e){return[e]}vUe.exports={keyFun:function(e){return e.key},repeat:pUe,descend:ZGt,wrap:pUe,unwrap:function(e){return e[0]}}});var BK=Ae((_br,MUe)=>{"use strict";var Lh=Pk(),ey=Jl(),YGt=Jy().keyFun,W8=Jy().repeat,_S=ei().sorterAsc,KGt=ei().strTranslate,mUe=Lh.bar.snapRatio;function yUe(e,t){return e*(1-mUe)+t*mUe}var gUe=Lh.bar.snapClose;function JGt(e,t){return e*(1-gUe)+t*gUe}function X8(e,t,r,n){if($Gt(r,n))return r;var i=e?-1:1,a=0,o=t.length-1;if(i<0){var s=a;a=o,o=s}for(var u=t[a],l=u,f=a;i*f=t[r][0]&&e<=t[r][1])return!0;return!1}function QGt(e){e.attr("x",-Lh.bar.captureWidth/2).attr("width",Lh.bar.captureWidth)}function eHt(e){e.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function tHt(e){if(!e.brush.filterSpecified)return"0,"+e.height;for(var t=_Ue(e.brush.filter.getConsolidated(),e.height),r=[0],n,i,a,o=t.length?t[0][0]:null,s=0;se[1]+r||t=.9*e[1]+.1*e[0]?"n":t<=.9*e[0]+.1*e[1]?"s":"ns"}function xUe(){ey.select(document.body).style("cursor",null)}function FK(e){e.attr("stroke-dasharray",tHt)}function j8(e,t){var r=ey.select(e).selectAll(".highlight, .highlight-shadow"),n=t?r.transition().duration(Lh.bar.snapDuration).each("end",t):r;FK(n)}function bUe(e,t){var r=e.brush,n=r.filterSpecified,i=NaN,a={},o;if(n){var s=e.height,u=r.filter.getConsolidated(),l=_Ue(u,s),f=NaN,c=NaN,h=NaN;for(o=0;o<=l.length;o++){var d=l[o];if(d&&d[0]<=t&&t<=d[1]){f=o;break}else if(c=o?o-1:NaN,d&&d[0]>t){h=o;break}}if(i=f,isNaN(i)&&(isNaN(c)||isNaN(h)?i=isNaN(c)?h:c:i=t-l[c][1]=k[0]&&v<=k[1]){a.clickableOrdinalRange=k;break}}}return a}function iHt(e,t){ey.event.sourceEvent.stopPropagation();var r=t.height-ey.mouse(e)[1]-2*Lh.verticalPadding,n=t.unitToPaddedPx.invert(r),i=t.brush,a=bUe(t,r),o=a.interval,s=i.svgBrush;if(s.wasDragged=!1,s.grabbingBar=a.region==="ns",s.grabbingBar){var u=o.map(t.unitToPaddedPx);s.grabPoint=r-u[0]-Lh.verticalPadding,s.barLength=u[1]-u[0]}s.clickableOrdinalRange=a.clickableOrdinalRange,s.stayingIntervals=t.multiselect&&i.filterSpecified?i.filter.getConsolidated():[],o&&(s.stayingIntervals=s.stayingIntervals.filter(function(l){return l[0]!==o[0]&&l[1]!==o[1]})),s.startExtent=a.region?o[a.region==="s"?1:0]:n,t.parent.inBrushDrag=!0,s.brushStartCallback()}function wUe(e,t){ey.event.sourceEvent.stopPropagation();var r=t.height-ey.mouse(e)[1]-2*Lh.verticalPadding,n=t.brush.svgBrush;n.wasDragged=!0,n._dragging=!0,n.grabbingBar?n.newExtent=[r-n.grabPoint,r+n.barLength-n.grabPoint].map(t.unitToPaddedPx.invert):n.newExtent=[n.startExtent,t.unitToPaddedPx.invert(r)].sort(_S),t.brush.filterSpecified=!0,n.extent=n.stayingIntervals.concat([n.newExtent]),n.brushCallback(t),j8(e.parentNode)}function nHt(e,t){var r=t.brush,n=r.filter,i=r.svgBrush;i._dragging||(TUe(e,t),wUe(e,t),t.brush.svgBrush.wasDragged=!1),i._dragging=!1;var a=ey.event;a.sourceEvent.stopPropagation();var o=i.grabbingBar;if(i.grabbingBar=!1,i.grabLocation=void 0,t.parent.inBrushDrag=!1,xUe(),!i.wasDragged){i.wasDragged=void 0,i.clickableOrdinalRange?r.filterSpecified&&t.multiselect?i.extent.push(i.clickableOrdinalRange):(i.extent=[i.clickableOrdinalRange],r.filterSpecified=!0):o?(i.extent=i.stayingIntervals,i.extent.length===0&&DK(r)):DK(r),i.brushCallback(t),j8(e.parentNode),i.brushEndCallback(r.filterSpecified?n.getConsolidated():[]);return}var s=function(){n.set(n.getConsolidated())};if(t.ordinal){var u=t.unitTickvals;u[u.length-1]i.newExtent[0];i.extent=i.stayingIntervals.concat(l?[i.newExtent]:[]),i.extent.length||DK(r),i.brushCallback(t),l?j8(e.parentNode,s):(s(),j8(e.parentNode))}else s();i.brushEndCallback(r.filterSpecified?n.getConsolidated():[])}function TUe(e,t){var r=t.height-ey.mouse(e)[1]-2*Lh.verticalPadding,n=bUe(t,r),i="crosshair";n.clickableOrdinalRange?i="pointer":n.region&&(i=n.region+"-resize"),ey.select(document.body).style("cursor",i)}function aHt(e){e.on("mousemove",function(t){ey.event.preventDefault(),t.parent.inBrushDrag||TUe(this,t)}).on("mouseleave",function(t){t.parent.inBrushDrag||xUe()}).call(ey.behavior.drag().on("dragstart",function(t){iHt(this,t)}).on("drag",function(t){wUe(this,t)}).on("dragend",function(t){nHt(this,t)}))}function AUe(e,t){return e[0]-t[0]}function oHt(e,t,r){var n=r._context.staticPlot,i=e.selectAll(".background").data(W8);i.enter().append("rect").classed("background",!0).call(QGt).call(eHt).style("pointer-events",n?"none":"auto").attr("transform",KGt(0,Lh.verticalPadding)),i.call(aHt).attr("height",function(s){return s.height-Lh.verticalPadding});var a=e.selectAll(".highlight-shadow").data(W8);a.enter().append("line").classed("highlight-shadow",!0).attr("x",-Lh.bar.width/2).attr("stroke-width",Lh.bar.width+Lh.bar.strokeWidth).attr("stroke",t).attr("opacity",Lh.bar.strokeOpacity).attr("stroke-linecap","butt"),a.attr("y1",function(s){return s.height}).call(FK);var o=e.selectAll(".highlight").data(W8);o.enter().append("line").classed("highlight",!0).attr("x",-Lh.bar.width/2).attr("stroke-width",Lh.bar.width-Lh.bar.strokeWidth).attr("stroke",Lh.bar.fillColor).attr("opacity",Lh.bar.fillOpacity).attr("stroke-linecap","butt"),o.attr("y1",function(s){return s.height}).call(FK)}function sHt(e,t,r){var n=e.selectAll("."+Lh.cn.axisBrush).data(W8,YGt);n.enter().append("g").classed(Lh.cn.axisBrush,!0),oHt(n,t,r)}function lHt(e){return e.svgBrush.extent.map(function(t){return t.slice()})}function DK(e){e.filterSpecified=!1,e.svgBrush.extent=[[-1/0,1/0]]}function uHt(e){return function(r){var n=r.brush,i=lHt(n),a=i.slice();n.filter.set(a),e()}}function SUe(e){for(var t=e.slice(),r=[],n,i=t.shift();i;){for(n=i.slice();(i=t.shift())&&i[0]<=n[1];)n[1]=Math.max(n[1],i[1]);r.push(n)}return r.length===1&&r[0][0]>r[0][1]&&(r=[]),r}function fHt(){var e=[],t,r;return{set:function(n){e=n.map(function(i){return i.slice().sort(_S)}).sort(AUe),e.length===1&&e[0][0]===-1/0&&e[0][1]===1/0&&(e=[[0,-1]]),t=SUe(e),r=e.reduce(function(i,a){return[Math.min(i[0],a[0]),Math.max(i[1],a[1])]},[1/0,-1/0])},get:function(){return e.slice()},getConsolidated:function(){return t},getBounds:function(){return r}}}function cHt(e,t,r,n,i,a){var o=fHt();return o.set(r),{filter:o,filterSpecified:t,svgBrush:{extent:[],brushStartCallback:n,brushCallback:uHt(i),brushEndCallback:a}}}function hHt(e,t){if(Array.isArray(e[0])?(e=e.map(function(n){return n.sort(_S)}),t.multiselect?e=SUe(e.sort(AUe)):e=[e[0]]):e=[e.sort(_S)],t.tickvals){var r=t.tickvals.slice().sort(_S);if(e=e.map(function(n){var i=[X8(0,r,n[0],[]),X8(1,r,n[1],[])];if(i[1]>i[0])return i}).filter(function(n){return n}),!e.length)return}return e.length>1?e:e[0]}MUe.exports={makeBrush:cHt,ensureAxisBrush:sHt,cleanRanges:hHt}});var CUe=Ae((xbr,kUe)=>{"use strict";var yx=ei(),dHt=yp().hasColorscale,pHt=rd(),vHt=zc().defaults,mHt=Jd(),yHt=wu(),EUe=RK(),gHt=BK(),OK=Pk().maxDimensionCount,_Ht=B8();function xHt(e,t,r,n,i){var a=i("line.color",r);if(dHt(e,"line")&&yx.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),pHt(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function bHt(e,t,r,n){function i(l,f){return yx.coerce(e,t,EUe.dimensions,l,f)}var a=i("values"),o=i("visible");if(a&&a.length||(o=t.visible=!1),o){i("label"),i("tickvals"),i("ticktext"),i("tickformat");var s=i("range");t._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:s},yHt.setConvert(t._ax,n.layout),i("multiselect");var u=i("constraintrange");u&&(t.constraintrange=gHt.cleanRanges(u,t))}}kUe.exports=function(t,r,n,i){function a(f,c){return yx.coerce(t,r,EUe,f,c)}var o=t.dimensions;Array.isArray(o)&&o.length>OK&&(yx.log("parcoords traces support up to "+OK+" dimensions at the moment"),o.splice(OK));var s=mHt(t,r,{name:"dimensions",layout:i,handleItemDefaults:bHt}),u=xHt(t,r,n,i,a);vHt(r,i,a),(!Array.isArray(s)||!s.length)&&(r.visible=!1),_Ht(r,s,"values",u);var l=yx.extendFlat({},i.font,{size:Math.round(i.font.size/1.2)});yx.coerceFont(a,"labelfont",l),yx.coerceFont(a,"tickfont",l,{autoShadowDflt:!0}),yx.coerceFont(a,"rangefont",l),a("labelangle"),a("labelside"),a("unselected.line.color"),a("unselected.line.opacity")}});var PUe=Ae((bbr,LUe)=>{"use strict";var wHt=ei().isArrayOrTypedArray,qK=_c(),THt=Jy().wrap;LUe.exports=function(t,r){var n,i;return qK.hasColorscale(r,"line")&&wHt(r.line.color)?(n=r.line.color,i=qK.extractOpts(r.line).colorscale,qK.calc(t,r,{vals:n,containerStr:"line",cLetter:"c"})):(n=AHt(r._length),i=[[0,r.line.color],[1,r.line.color]]),THt({lineColor:n,cscale:i})};function AHt(e){for(var t=new Array(e),r=0;r>>16,(e&65280)>>>8,e&255],alpha:1};if(typeof e=="number")return{space:"rgb",values:[e>>>16,(e&65280)>>>8,e&255],alpha:1};if(e=String(e).toLowerCase(),NK.default[e])r=NK.default[e].slice(),i="rgb";else if(e==="transparent")n=0,i="rgb",r=[0,0,0];else if(e[0]==="#"){var a=e.slice(1),o=a.length,s=o<=4;n=1,s?(r=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],o===4&&(n=parseInt(a[3]+a[3],16)/255)):(r=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],o===8&&(n=parseInt(a[6]+a[7],16)/255)),r[0]||(r[0]=0),r[1]||(r[1]=0),r[2]||(r[2]=0),i="rgb"}else if(t=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(e)){var u=t[1];i=u.replace(/a$/,"");var l=i==="cmyk"?4:i==="gray"?1:3;r=t[2].trim().split(/\s*[,\/]\s*|\s+/),i==="color"&&(i=r.shift()),r=r.map(function(h,d){if(h[h.length-1]==="%")return h=parseFloat(h)/100,d===3?h:i==="rgb"?h*255:i[0]==="h"||i[0]==="l"&&!d?h*100:i==="lab"?h*125:i==="lch"?d<2?h*150:h*360:i[0]==="o"&&!d?h:i==="oklab"?h*.4:i==="oklch"?d<2?h*.4:h*360:h;if(i[d]==="h"||d===2&&i[i.length-1]==="h"){if(zUe[h]!==void 0)return zUe[h];if(h.endsWith("deg"))return parseFloat(h);if(h.endsWith("turn"))return parseFloat(h)*360;if(h.endsWith("grad"))return parseFloat(h)*360/400;if(h.endsWith("rad"))return parseFloat(h)*180/Math.PI}return h==="none"?0:parseFloat(h)}),n=r.length>l?r.pop():1}else/[0-9](?:\s|\/|,)/.test(e)&&(r=e.match(/([0-9]+)/g).map(function(h){return parseFloat(h)}),i=((c=(f=e.match(/([a-z])/ig))==null?void 0:f.join(""))==null?void 0:c.toLowerCase())||"rgb");return{space:i,values:r,alpha:n}}var NK,IUe,zUe,RUe=tc(()=>{NK=trt(SX(),1),IUe=SHt,zUe={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}});var zk,UK=tc(()=>{zk={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}});var Z8,DUe=tc(()=>{UK();Z8={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a,o,s,u,l=0;if(r===0)return u=n*255,[u,u,u];for(a=n<.5?n*(1+r):n+r-n*r,i=2*n-a,s=[0,0,0];l<3;)o=t+1/3*-(l-1),o<0?o++:o>1&&o--,u=6*o<1?i+(a-i)*6*o:2*o<1?a:3*o<2?i+(a-i)*(2/3-o)*6:i,s[l++]=u*255;return s}};zk.hsl=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=a-i,s,u,l;return a===i?s=0:t===a?s=(r-n)/o:r===a?s=2+(n-t)/o:n===a&&(s=4+(t-r)/o),s=Math.min(s*60,360),s<0&&(s+=360),l=(i+a)/2,a===i?u=0:l<=.5?u=o/(a+i):u=o/(2-a-i),[s,u*100,l*100]}});var BUe={};bee(BUe,{default:()=>FUe});function FUe(e){Array.isArray(e)&&e.raw&&(e=String.raw(...arguments)),e instanceof Number&&(e=+e);var t,r,n,i=IUe(e);if(!i.space)return[];let a=i.space[0]==="h"?Z8.min:zk.min,o=i.space[0]==="h"?Z8.max:zk.max;return t=Array(3),t[0]=Math.min(Math.max(i.values[0],a[0]),o[0]),t[1]=Math.min(Math.max(i.values[1],a[1]),o[1]),t[2]=Math.min(Math.max(i.values[2],a[2]),o[2]),i.space[0]==="h"&&(t=Z8.rgb(t)),t.push(Math.min(Math.max(i.alpha,0),1)),t}var OUe=tc(()=>{RUe();UK();DUe()});var VK=Ae(Y8=>{"use strict";var MHt=ei().isTypedArray;Y8.convertTypedArray=function(e){return MHt(e)?Array.prototype.slice.call(e):e};Y8.isOrdinal=function(e){return!!e.tickvals};Y8.isVisible=function(e){return e.visible||!("visible"in e)}});var ZUe=Ae((Lbr,XUe)=>{"use strict";var EHt=["precision highp float;","","varying vec4 fragColor;","","attribute vec4 p01_04, p05_08, p09_12, p13_16,"," p17_20, p21_24, p25_28, p29_32,"," p33_36, p37_40, p41_44, p45_48,"," p49_52, p53_56, p57_60, colors;","","uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,"," loA, hiA, loB, hiB, loC, hiC, loD, hiD;","","uniform vec2 resolution, viewBoxPos, viewBoxSize;","uniform float maskHeight;","uniform float drwLayer; // 0: context, 1: focus, 2: pick","uniform vec4 contextColor;","uniform sampler2D maskTexture, palette;","","bool isPick = (drwLayer > 1.5);","bool isContext = (drwLayer < 0.5);","","const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);","const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);","","float val(mat4 p, mat4 v) {"," return dot(matrixCompMult(p, v) * UNITS, UNITS);","}","","float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {"," float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);"," float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);"," return y1 * (1.0 - ratio) + y2 * ratio;","}","","int iMod(int a, int b) {"," return a - b * (a / b);","}","","bool fOutside(float p, float lo, float hi) {"," return (lo < hi) && (lo > p || p > hi);","}","","bool vOutside(vec4 p, vec4 lo, vec4 hi) {"," return ("," fOutside(p[0], lo[0], hi[0]) ||"," fOutside(p[1], lo[1], hi[1]) ||"," fOutside(p[2], lo[2], hi[2]) ||"," fOutside(p[3], lo[3], hi[3])"," );","}","","bool mOutside(mat4 p, mat4 lo, mat4 hi) {"," return ("," vOutside(p[0], lo[0], hi[0]) ||"," vOutside(p[1], lo[1], hi[1]) ||"," vOutside(p[2], lo[2], hi[2]) ||"," vOutside(p[3], lo[3], hi[3])"," );","}","","bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {"," return mOutside(A, loA, hiA) ||"," mOutside(B, loB, hiB) ||"," mOutside(C, loC, hiC) ||"," mOutside(D, loD, hiD);","}","","bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {"," mat4 pnts[4];"," pnts[0] = A;"," pnts[1] = B;"," pnts[2] = C;"," pnts[3] = D;",""," for(int i = 0; i < 4; ++i) {"," for(int j = 0; j < 4; ++j) {"," for(int k = 0; k < 4; ++k) {"," if(0 == iMod("," int(255.0 * texture2D(maskTexture,"," vec2("," (float(i * 2 + j / 2) + 0.5) / 8.0,"," (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight"," ))[3]"," ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),"," 2"," )) return true;"," }"," }"," }"," return false;","}","","vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {"," float x = 0.5 * sign(v) + 0.5;"," float y = axisY(x, A, B, C, D);"," float z = 1.0 - abs(v);",""," z += isContext ? 0.0 : 2.0 * float("," outsideBoundingBox(A, B, C, D) ||"," outsideRasterMask(A, B, C, D)"," );",""," return vec4("," 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,"," z,"," 1.0"," );","}","","void main() {"," mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);"," mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);"," mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);"," mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);",""," float v = colors[3];",""," gl_Position = position(isContext, v, A, B, C, D);",""," fragColor ="," isContext ? vec4(contextColor) :"," isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));","}"].join(` +`),xi;if(qt&&(xi=Fs(Wr),qt[xi]))return qt[xi].apply(null,yi);var dn=Function.apply(null,Qr.concat(Wr));return qt&&(qt[xi]=dn),dn.apply(null,yi)}return{global:wn,link:vi,block:on,proc:ua,scope:Bn,cond:Ln,compile:Hn}}var ta="xyzw".split(""),ya=5121,ia=1,pa=2,va=0,zn=1,is=2,Cs=3,Ks=4,dl=5,xl=6,Bl="dither",bl="blend.enable",eu="blend.color",Zl="blend.equation",Ul="blend.func",ja="depth.enable",ns="depth.func",Js="depth.range",cs="depth.mask",sl="colorMask",ll="cull.enable",il="cull.face",zl="frontFace",Ml="lineWidth",Rl="polygonOffset.enable",Tl="polygonOffset.offset",Ll="sample.alpha",ms="sample.enable",Os="sample.coverage",Xl="stencil.enable",Vl="stencil.mask",Nl="stencil.func",le="stencil.opFront",w="stencil.opBack",q="scissor.enable",Q="scissor.box",ee="viewport",ue="profile",Ve="framebuffer",tt="vert",mt="frag",Bt="elements",ir="primitive",or="count",kr="offset",Vr="instances",he="vao",Se="Width",Ne="Height",Ge=Ve+Se,lt=Ve+Ne,rt=ee+Se,pt=ee+Ne,Ht="drawingBuffer",nr=Ht+Se,fr=Ht+Ne,Tr=[Ul,Zl,Nl,le,w,Os,ee,Q,Tl],Ir=34962,ri=34963,li=2884,Ei=3042,hn=3024,Zn=2960,Yn=2929,Ua=3089,Fo=32823,vl=32926,Us=32928,ml=5126,au=35664,Sl=35665,Yl=35666,Ol=5124,ou=35667,Pu=35668,nu=35669,tu=35670,Hu=35671,$u=35672,Ku=35673,Wu=35674,ju=35675,sf=35676,_f=35678,Qu=35680,ef=4,Z=1028,se=1029,Pe=2304,Xe=2305,Qe=32775,st=32776,jt=519,_t=7680,hr=0,Cr=1,zr=32774,fi=513,$r=36160,Bi=36064,fn={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},mi={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},zi={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ji={cw:Pe,ccw:Xe};function pn(Be){return Array.isArray(Be)||yr(Be)||Ut(Be)}function sn(Be){return Be.sort(function(qt,ar){return qt===ee?-1:ar===ee?1:qt=1,Qr>=2,qt)}else if(ar===Ks){var yi=Be.data;return new wi(yi.thisDep,yi.contextDep,yi.propDep,qt)}else{if(ar===dl)return new wi(!1,!1,!1,qt);if(ar===xl){for(var ci=!1,vi=!1,on=!1,Bn=0;Bn=1&&(vi=!0),wn>=2&&(on=!0)}else Ln.type===Ks&&(ci=ci||Ln.data.thisDep,vi=vi||Ln.data.contextDep,on=on||Ln.data.propDep)}return new wi(ci,vi,on,qt)}else return new wi(ar===Cs,ar===is,ar===zn,qt)}}var js=new wi(!1,!1,!1,function(){});function El(Be,qt,ar,Qr,yi,ci,vi,on,Bn,Ln,wn,Ls,ua,Hn,qi,Wr){var xi=Ln.Record,dn={add:32774,subtract:32778,"reverse subtract":32779};ar.ext_blend_minmax&&(dn.min=Qe,dn.max=st);var En=ar.angle_instanced_arrays,Zi=ar.webgl_draw_buffers,ga=ar.oes_vertex_array_object,Kn={dirty:!0,profile:Wr.profile},hs={},Ji=[],Ui={},ro={};function na($e){return $e.replace(".","_")}function On($e,ht,bt){var Kt=na($e);Ji.push($e),hs[Kt]=Kn[Kt]=!!bt,Ui[Kt]=ht}function In($e,ht,bt){var Kt=na($e);Ji.push($e),Array.isArray(bt)?(Kn[Kt]=bt.slice(),hs[Kt]=bt.slice()):Kn[Kt]=hs[Kt]=bt,ro[Kt]=ht}function Va($e){return!!isNaN($e)}On(Bl,hn),On(bl,Ei),In(eu,"blendColor",[0,0,0,0]),In(Zl,"blendEquationSeparate",[zr,zr]),In(Ul,"blendFuncSeparate",[Cr,hr,Cr,hr]),On(ja,Yn,!0),In(ns,"depthFunc",fi),In(Js,"depthRange",[0,1]),In(cs,"depthMask",!0),In(sl,sl,[!0,!0,!0,!0]),On(ll,li),In(il,"cullFace",se),In(zl,zl,Xe),In(Ml,Ml,1),On(Rl,Fo),In(Tl,"polygonOffset",[0,0]),On(Ll,vl),On(ms,Us),In(Os,"sampleCoverage",[1,!1]),On(Xl,Zn),In(Vl,"stencilMask",-1),In(Nl,"stencilFunc",[jt,0,-1]),In(le,"stencilOpSeparate",[Z,_t,_t,_t]),In(w,"stencilOpSeparate",[se,_t,_t,_t]),On(q,Ua),In(Q,"scissor",[0,0,Be.drawingBufferWidth,Be.drawingBufferHeight]),In(ee,ee,[0,0,Be.drawingBufferWidth,Be.drawingBufferHeight]);var _s={gl:Be,context:ua,strings:qt,next:hs,current:Kn,draw:Ls,elements:ci,buffer:yi,shader:wn,attributes:Ln.state,vao:Ln,uniforms:Bn,framebuffer:on,extensions:ar,timer:Hn,isBufferArgs:pn},ul={primTypes:ti,compareFuncs:mi,blendFuncs:fn,blendEquations:dn,stencilOps:zi,glTypes:pi,orientationType:ji};Zi&&(ul.backBuffer=[se],ul.drawBuffer=M(Qr.maxDrawbuffers,function($e){return $e===0?[0]:M($e,function(ht){return Bi+ht})}));var Qn=0;function Mo(){var $e=Gn({cache:qi}),ht=$e.link,bt=$e.global;$e.id=Qn++,$e.batchId="0";var Kt=ht(_s),sr=$e.shared={props:"a0"};Object.keys(_s).forEach(function(Jt){sr[Jt]=bt.def(Kt,".",Jt)});var Qt=$e.next={},ur=$e.current={};Object.keys(ro).forEach(function(Jt){Array.isArray(Kn[Jt])&&(Qt[Jt]=bt.def(sr.next,".",Jt),ur[Jt]=bt.def(sr.current,".",Jt))});var er=$e.constants={};Object.keys(ul).forEach(function(Jt){er[Jt]=bt.def(JSON.stringify(ul[Jt]))}),$e.invoke=function(Jt,Lt){switch(Lt.type){case va:var Ar=["this",sr.context,sr.props,$e.batchId];return Jt.def(ht(Lt.data),".call(",Ar.slice(0,Math.max(Lt.data.length+1,4)),")");case zn:return Jt.def(sr.props,Lt.data);case is:return Jt.def(sr.context,Lt.data);case Cs:return Jt.def("this",Lt.data);case Ks:return Lt.data.append($e,Jt),Lt.data.ref;case dl:return Lt.data.toString();case xl:return Lt.data.map(function(Ur){return $e.invoke(Jt,Ur)})}},$e.attribCache={};var Ot={};return $e.scopeAttrib=function(Jt){var Lt=qt.id(Jt);if(Lt in Ot)return Ot[Lt];var Ar=Ln.scope[Lt];Ar||(Ar=Ln.scope[Lt]=new xi);var Ur=Ot[Lt]=ht(Ar);return Ur},$e}function nl($e){var ht=$e.static,bt=$e.dynamic,Kt;if(ue in ht){var sr=!!ht[ue];Kt=no(function(ur,er){return sr}),Kt.enable=sr}else if(ue in bt){var Qt=bt[ue];Kt=Xo(Qt,function(ur,er){return ur.invoke(er,Qt)})}return Kt}function pl($e,ht){var bt=$e.static,Kt=$e.dynamic;if(Ve in bt){var sr=bt[Ve];return sr?(sr=on.getFramebuffer(sr),no(function(ur,er){var Ot=ur.link(sr),Jt=ur.shared;er.set(Jt.framebuffer,".next",Ot);var Lt=Jt.context;return er.set(Lt,"."+Ge,Ot+".width"),er.set(Lt,"."+lt,Ot+".height"),Ot})):no(function(ur,er){var Ot=ur.shared;er.set(Ot.framebuffer,".next","null");var Jt=Ot.context;return er.set(Jt,"."+Ge,Jt+"."+nr),er.set(Jt,"."+lt,Jt+"."+fr),"null"})}else if(Ve in Kt){var Qt=Kt[Ve];return Xo(Qt,function(ur,er){var Ot=ur.invoke(er,Qt),Jt=ur.shared,Lt=Jt.framebuffer,Ar=er.def(Lt,".getFramebuffer(",Ot,")");er.set(Lt,".next",Ar);var Ur=Jt.context;return er.set(Ur,"."+Ge,Ar+"?"+Ar+".width:"+Ur+"."+nr),er.set(Ur,"."+lt,Ar+"?"+Ar+".height:"+Ur+"."+fr),Ar})}else return null}function Dl($e,ht,bt){var Kt=$e.static,sr=$e.dynamic;function Qt(Ot){if(Ot in Kt){var Jt=Kt[Ot],Lt=!0,Ar=Jt.x|0,Ur=Jt.y|0,hi,Cn;return"width"in Jt?hi=Jt.width|0:Lt=!1,"height"in Jt?Cn=Jt.height|0:Lt=!1,new wi(!Lt&&ht&&ht.thisDep,!Lt&&ht&&ht.contextDep,!Lt&&ht&&ht.propDep,function(Xa,ca){var An=Xa.shared.context,Pn=hi;"width"in Jt||(Pn=ca.def(An,".",Ge,"-",Ar));var Nn=Cn;return"height"in Jt||(Nn=ca.def(An,".",lt,"-",Ur)),[Ar,Ur,Pn,Nn]})}else if(Ot in sr){var Yi=sr[Ot],yn=Xo(Yi,function(Xa,ca){var An=Xa.invoke(ca,Yi),Pn=Xa.shared.context,Nn=ca.def(An,".x|0"),xa=ca.def(An,".y|0"),Zo=ca.def('"width" in ',An,"?",An,".width|0:","(",Pn,".",Ge,"-",Nn,")"),ru=ca.def('"height" in ',An,"?",An,".height|0:","(",Pn,".",lt,"-",xa,")");return[Nn,xa,Zo,ru]});return ht&&(yn.thisDep=yn.thisDep||ht.thisDep,yn.contextDep=yn.contextDep||ht.contextDep,yn.propDep=yn.propDep||ht.propDep),yn}else return ht?new wi(ht.thisDep,ht.contextDep,ht.propDep,function(Xa,ca){var An=Xa.shared.context;return[0,0,ca.def(An,".",Ge),ca.def(An,".",lt)]}):null}var ur=Qt(ee);if(ur){var er=ur;ur=new wi(ur.thisDep,ur.contextDep,ur.propDep,function(Ot,Jt){var Lt=er.append(Ot,Jt),Ar=Ot.shared.context;return Jt.set(Ar,"."+rt,Lt[2]),Jt.set(Ar,"."+pt,Lt[3]),Lt})}return{viewport:ur,scissor_box:Qt(Q)}}function Fu($e,ht){var bt=$e.static,Kt=typeof bt[mt]=="string"&&typeof bt[tt]=="string";if(Kt){if(Object.keys(ht.dynamic).length>0)return null;var sr=ht.static,Qt=Object.keys(sr);if(Qt.length>0&&typeof sr[Qt[0]]=="number"){for(var ur=[],er=0;er"+Nn+"?"+Lt+".constant["+Nn+"]:0;"}).join(""),"}}else{","if(",hi,"(",Lt,".buffer)){",Xa,"=",Cn,".createStream(",Ir,",",Lt,".buffer);","}else{",Xa,"=",Cn,".getBuffer(",Lt,".buffer);","}",ca,'="type" in ',Lt,"?",Ur.glTypes,"[",Lt,".type]:",Xa,".dtype;",Yi.normalized,"=!!",Lt,".normalized;");function An(Pn){Jt(Yi[Pn],"=",Lt,".",Pn,"|0;")}return An("size"),An("offset"),An("stride"),An("divisor"),Jt("}}"),Jt.exit("if(",Yi.isStream,"){",Cn,".destroyStream(",Xa,");","}"),Yi}sr[Qt]=Xo(ur,er)}),sr}function xf($e){var ht=$e.static,bt=$e.dynamic,Kt={};return Object.keys(ht).forEach(function(sr){var Qt=ht[sr];Kt[sr]=no(function(ur,er){return typeof Qt=="number"||typeof Qt=="boolean"?""+Qt:ur.link(Qt)})}),Object.keys(bt).forEach(function(sr){var Qt=bt[sr];Kt[sr]=Xo(Qt,function(ur,er){return ur.invoke(er,Qt)})}),Kt}function Cf($e,ht,bt,Kt,sr){var Qt=$e.static,ur=$e.dynamic,er=Fu($e,ht),Ot=pl($e,sr),Jt=Dl($e,Ot,sr),Lt=Ql($e,sr),Ar=Ef($e,sr),Ur=vf($e,sr,er);function hi(An){var Pn=Jt[An];Pn&&(Ar[An]=Pn)}hi(ee),hi(na(Q));var Cn=Object.keys(Ar).length>0,Yi={framebuffer:Ot,draw:Lt,shader:Ur,state:Ar,dirty:Cn,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(Yi.profile=nl($e,sr),Yi.uniforms=Cu(bt,sr),Yi.drawVAO=Yi.scopeVAO=Lt.vao,!Yi.drawVAO&&Ur.program&&!er&&ar.angle_instanced_arrays&&Lt.static.elements){var yn=!0,Xa=Ur.program.attributes.map(function(An){var Pn=ht.static[An];return yn=yn&&!!Pn,Pn});if(yn&&Xa.length>0){var ca=Ln.getVAO(Ln.createVAO({attributes:Xa,elements:Lt.static.elements}));Yi.drawVAO=new wi(null,null,null,function(An,Pn){return An.link(ca)}),Yi.useVAO=!0}}return er?Yi.useVAO=!0:Yi.attributes=gf(ht,sr),Yi.context=xf(Kt,sr),Yi}function Gu($e,ht,bt){var Kt=$e.shared,sr=Kt.context,Qt=$e.scope();Object.keys(bt).forEach(function(ur){ht.save(sr,"."+ur);var er=bt[ur],Ot=er.append($e,ht);Array.isArray(Ot)?Qt(sr,".",ur,"=[",Ot.join(),"];"):Qt(sr,".",ur,"=",Ot,";")}),ht(Qt)}function cf($e,ht,bt,Kt){var sr=$e.shared,Qt=sr.gl,ur=sr.framebuffer,er;Zi&&(er=ht.def(sr.extensions,".webgl_draw_buffers"));var Ot=$e.constants,Jt=Ot.drawBuffer,Lt=Ot.backBuffer,Ar;bt?Ar=bt.append($e,ht):Ar=ht.def(ur,".next"),Kt||ht("if(",Ar,"!==",ur,".cur){"),ht("if(",Ar,"){",Qt,".bindFramebuffer(",$r,",",Ar,".framebuffer);"),Zi&&ht(er,".drawBuffersWEBGL(",Jt,"[",Ar,".colorAttachments.length]);"),ht("}else{",Qt,".bindFramebuffer(",$r,",null);"),Zi&&ht(er,".drawBuffersWEBGL(",Lt,");"),ht("}",ur,".cur=",Ar,";"),Kt||ht("}")}function mf($e,ht,bt){var Kt=$e.shared,sr=Kt.gl,Qt=$e.current,ur=$e.next,er=Kt.current,Ot=Kt.next,Jt=$e.cond(er,".dirty");Ji.forEach(function(Lt){var Ar=na(Lt);if(!(Ar in bt.state)){var Ur,hi;if(Ar in ur){Ur=ur[Ar],hi=Qt[Ar];var Cn=M(Kn[Ar].length,function(yn){return Jt.def(Ur,"[",yn,"]")});Jt($e.cond(Cn.map(function(yn,Xa){return yn+"!=="+hi+"["+Xa+"]"}).join("||")).then(sr,".",ro[Ar],"(",Cn,");",Cn.map(function(yn,Xa){return hi+"["+Xa+"]="+yn}).join(";"),";"))}else{Ur=Jt.def(Ot,".",Ar);var Yi=$e.cond(Ur,"!==",er,".",Ar);Jt(Yi),Ar in Ui?Yi($e.cond(Ur).then(sr,".enable(",Ui[Ar],");").else(sr,".disable(",Ui[Ar],");"),er,".",Ar,"=",Ur,";"):Yi(sr,".",ro[Ar],"(",Ur,");",er,".",Ar,"=",Ur,";")}}}),Object.keys(bt.state).length===0&&Jt(er,".dirty=false;"),ht(Jt)}function Fl($e,ht,bt,Kt){var sr=$e.shared,Qt=$e.current,ur=sr.current,er=sr.gl,Ot;sn(Object.keys(bt)).forEach(function(Jt){var Lt=bt[Jt];if(!(Kt&&!Kt(Lt))){var Ar=Lt.append($e,ht);if(Ui[Jt]){var Ur=Ui[Jt];xo(Lt)?(Ot=$e.link(Ar,{stable:!0}),ht($e.cond(Ot).then(er,".enable(",Ur,");").else(er,".disable(",Ur,");")),ht(ur,".",Jt,"=",Ot,";")):(ht($e.cond(Ar).then(er,".enable(",Ur,");").else(er,".disable(",Ur,");")),ht(ur,".",Jt,"=",Ar,";"))}else if(en(Ar)){var hi=Qt[Jt];ht(er,".",ro[Jt],"(",Ar,");",Ar.map(function(Cn,Yi){return hi+"["+Yi+"]="+Cn}).join(";"),";")}else xo(Lt)?(Ot=$e.link(Ar,{stable:!0}),ht(er,".",ro[Jt],"(",Ot,");",ur,".",Jt,"=",Ot,";")):ht(er,".",ro[Jt],"(",Ar,");",ur,".",Jt,"=",Ar,";")}})}function bf($e,ht){En&&($e.instancing=ht.def($e.shared.extensions,".angle_instanced_arrays"))}function cu($e,ht,bt,Kt,sr){var Qt=$e.shared,ur=$e.stats,er=Qt.current,Ot=Qt.timer,Jt=bt.profile;function Lt(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var Ar,Ur;function hi(An){Ar=ht.def(),An(Ar,"=",Lt(),";"),typeof sr=="string"?An(ur,".count+=",sr,";"):An(ur,".count++;"),Hn&&(Kt?(Ur=ht.def(),An(Ur,"=",Ot,".getNumPendingQueries();")):An(Ot,".beginQuery(",ur,");"))}function Cn(An){An(ur,".cpuTime+=",Lt(),"-",Ar,";"),Hn&&(Kt?An(Ot,".pushScopeStats(",Ur,",",Ot,".getNumPendingQueries(),",ur,");"):An(Ot,".endQuery();"))}function Yi(An){var Pn=ht.def(er,".profile");ht(er,".profile=",An,";"),ht.exit(er,".profile=",Pn,";")}var yn;if(Jt){if(xo(Jt)){Jt.enable?(hi(ht),Cn(ht.exit),Yi("true")):Yi("false");return}yn=Jt.append($e,ht),Yi(yn)}else yn=ht.def(er,".profile");var Xa=$e.block();hi(Xa),ht("if(",yn,"){",Xa,"}");var ca=$e.block();Cn(ca),ht.exit("if(",yn,"){",ca,"}")}function Y($e,ht,bt,Kt,sr){var Qt=$e.shared;function ur(Ot){switch(Ot){case au:case ou:case Hu:return 2;case Sl:case Pu:case $u:return 3;case Yl:case nu:case Ku:return 4;default:return 1}}function er(Ot,Jt,Lt){var Ar=Qt.gl,Ur=ht.def(Ot,".location"),hi=ht.def(Qt.attributes,"[",Ur,"]"),Cn=Lt.state,Yi=Lt.buffer,yn=[Lt.x,Lt.y,Lt.z,Lt.w],Xa=["buffer","normalized","offset","stride"];function ca(){ht("if(!",hi,".buffer){",Ar,".enableVertexAttribArray(",Ur,");}");var Pn=Lt.type,Nn;if(Lt.size?Nn=ht.def(Lt.size,"||",Jt):Nn=Jt,ht("if(",hi,".type!==",Pn,"||",hi,".size!==",Nn,"||",Xa.map(function(Zo){return hi+"."+Zo+"!=="+Lt[Zo]}).join("||"),"){",Ar,".bindBuffer(",Ir,",",Yi,".buffer);",Ar,".vertexAttribPointer(",[Ur,Nn,Pn,Lt.normalized,Lt.stride,Lt.offset],");",hi,".type=",Pn,";",hi,".size=",Nn,";",Xa.map(function(Zo){return hi+"."+Zo+"="+Lt[Zo]+";"}).join(""),"}"),En){var xa=Lt.divisor;ht("if(",hi,".divisor!==",xa,"){",$e.instancing,".vertexAttribDivisorANGLE(",[Ur,xa],");",hi,".divisor=",xa,";}")}}function An(){ht("if(",hi,".buffer){",Ar,".disableVertexAttribArray(",Ur,");",hi,".buffer=null;","}if(",ta.map(function(Pn,Nn){return hi+"."+Pn+"!=="+yn[Nn]}).join("||"),"){",Ar,".vertexAttrib4f(",Ur,",",yn,");",ta.map(function(Pn,Nn){return hi+"."+Pn+"="+yn[Nn]+";"}).join(""),"}")}Cn===ia?ca():Cn===pa?An():(ht("if(",Cn,"===",ia,"){"),ca(),ht("}else{"),An(),ht("}"))}Kt.forEach(function(Ot){var Jt=Ot.name,Lt=bt.attributes[Jt],Ar;if(Lt){if(!sr(Lt))return;Ar=Lt.append($e,ht)}else{if(!sr(js))return;var Ur=$e.scopeAttrib(Jt);Ar={},Object.keys(new xi).forEach(function(hi){Ar[hi]=ht.def(Ur,".",hi)})}er($e.link(Ot),ur(Ot.info.type),Ar)})}function R($e,ht,bt,Kt,sr,Qt){for(var ur=$e.shared,er=ur.gl,Ot,Jt=0;Jt1){for(var yu=[],Du=[],vu=0;vu>1)",Yi],");")}function xa(){bt(yn,".drawArraysInstancedANGLE(",[Ur,hi,Cn,Yi],");")}Lt&&Lt!=="null"?ca?Nn():(bt("if(",Lt,"){"),Nn(),bt("}else{"),xa(),bt("}")):xa()}function Pn(){function Nn(){bt(Qt+".drawElements("+[Ur,Cn,Xa,hi+"<<(("+Xa+"-"+ya+")>>1)"]+");")}function xa(){bt(Qt+".drawArrays("+[Ur,hi,Cn]+");")}Lt&&Lt!=="null"?ca?Nn():(bt("if(",Lt,"){"),Nn(),bt("}else{"),xa(),bt("}")):xa()}En&&(typeof Yi!="number"||Yi>=0)?typeof Yi=="string"?(bt("if(",Yi,">0){"),An(),bt("}else if(",Yi,"<0){"),Pn(),bt("}")):An():Pn()}function O($e,ht,bt,Kt,sr){var Qt=Mo(),ur=Qt.proc("body",sr);return En&&(Qt.instancing=ur.def(Qt.shared.extensions,".angle_instanced_arrays")),$e(Qt,ur,bt,Kt),Qt.compile().body}function K($e,ht,bt,Kt){bf($e,ht),bt.useVAO?bt.drawVAO?ht($e.shared.vao,".setVAO(",bt.drawVAO.append($e,ht),");"):ht($e.shared.vao,".setVAO(",$e.shared.vao,".targetVAO);"):(ht($e.shared.vao,".setVAO(null);"),Y($e,ht,bt,Kt.attributes,function(){return!0})),R($e,ht,bt,Kt.uniforms,function(){return!0},!1),J($e,ht,ht,bt)}function _e($e,ht){var bt=$e.proc("draw",1);bf($e,bt),Gu($e,bt,ht.context),cf($e,bt,ht.framebuffer),mf($e,bt,ht),Fl($e,bt,ht.state),cu($e,bt,ht,!1,!0);var Kt=ht.shader.progVar.append($e,bt);if(bt($e.shared.gl,".useProgram(",Kt,".program);"),ht.shader.program)K($e,bt,ht,ht.shader.program);else{bt($e.shared.vao,".setVAO(null);");var sr=$e.global.def("{}"),Qt=bt.def(Kt,".id"),ur=bt.def(sr,"[",Qt,"]");bt($e.cond(ur).then(ur,".call(this,a0);").else(ur,"=",sr,"[",Qt,"]=",$e.link(function(er){return O(K,$e,ht,er,1)}),"(",Kt,");",ur,".call(this,a0);"))}Object.keys(ht.state).length>0&&bt($e.shared.current,".dirty=true;"),$e.shared.vao&&bt($e.shared.vao,".setVAO(null);")}function ne($e,ht,bt,Kt){$e.batchId="a1",bf($e,ht);function sr(){return!0}Y($e,ht,bt,Kt.attributes,sr),R($e,ht,bt,Kt.uniforms,sr,!1),J($e,ht,ht,bt)}function Le($e,ht,bt,Kt){bf($e,ht);var sr=bt.contextDep,Qt=ht.def(),ur="a0",er="a1",Ot=ht.def();$e.shared.props=Ot,$e.batchId=Qt;var Jt=$e.scope(),Lt=$e.scope();ht(Jt.entry,"for(",Qt,"=0;",Qt,"<",er,";++",Qt,"){",Ot,"=",ur,"[",Qt,"];",Lt,"}",Jt.exit);function Ar(Xa){return Xa.contextDep&&sr||Xa.propDep}function Ur(Xa){return!Ar(Xa)}if(bt.needsContext&&Gu($e,Lt,bt.context),bt.needsFramebuffer&&cf($e,Lt,bt.framebuffer),Fl($e,Lt,bt.state,Ar),bt.profile&&Ar(bt.profile)&&cu($e,Lt,bt,!1,!0),Kt)bt.useVAO?bt.drawVAO?Ar(bt.drawVAO)?Lt($e.shared.vao,".setVAO(",bt.drawVAO.append($e,Lt),");"):Jt($e.shared.vao,".setVAO(",bt.drawVAO.append($e,Jt),");"):Jt($e.shared.vao,".setVAO(",$e.shared.vao,".targetVAO);"):(Jt($e.shared.vao,".setVAO(null);"),Y($e,Jt,bt,Kt.attributes,Ur),Y($e,Lt,bt,Kt.attributes,Ar)),R($e,Jt,bt,Kt.uniforms,Ur,!1),R($e,Lt,bt,Kt.uniforms,Ar,!0),J($e,Jt,Lt,bt);else{var hi=$e.global.def("{}"),Cn=bt.shader.progVar.append($e,Lt),Yi=Lt.def(Cn,".id"),yn=Lt.def(hi,"[",Yi,"]");Lt($e.shared.gl,".useProgram(",Cn,".program);","if(!",yn,"){",yn,"=",hi,"[",Yi,"]=",$e.link(function(Xa){return O(ne,$e,bt,Xa,2)}),"(",Cn,");}",yn,".call(this,a0[",Qt,"],",Qt,");")}}function Ze($e,ht){var bt=$e.proc("batch",2);$e.batchId="0",bf($e,bt);var Kt=!1,sr=!0;Object.keys(ht.context).forEach(function(hi){Kt=Kt||ht.context[hi].propDep}),Kt||(Gu($e,bt,ht.context),sr=!1);var Qt=ht.framebuffer,ur=!1;Qt?(Qt.propDep?Kt=ur=!0:Qt.contextDep&&Kt&&(ur=!0),ur||cf($e,bt,Qt)):cf($e,bt,null),ht.state.viewport&&ht.state.viewport.propDep&&(Kt=!0);function er(hi){return hi.contextDep&&Kt||hi.propDep}mf($e,bt,ht),Fl($e,bt,ht.state,function(hi){return!er(hi)}),(!ht.profile||!er(ht.profile))&&cu($e,bt,ht,!1,"a1"),ht.contextDep=Kt,ht.needsContext=sr,ht.needsFramebuffer=ur;var Ot=ht.shader.progVar;if(Ot.contextDep&&Kt||Ot.propDep)Le($e,bt,ht,null);else{var Jt=Ot.append($e,bt);if(bt($e.shared.gl,".useProgram(",Jt,".program);"),ht.shader.program)Le($e,bt,ht,ht.shader.program);else{bt($e.shared.vao,".setVAO(null);");var Lt=$e.global.def("{}"),Ar=bt.def(Jt,".id"),Ur=bt.def(Lt,"[",Ar,"]");bt($e.cond(Ur).then(Ur,".call(this,a0,a1);").else(Ur,"=",Lt,"[",Ar,"]=",$e.link(function(hi){return O(Le,$e,ht,hi,2)}),"(",Jt,");",Ur,".call(this,a0,a1);"))}}Object.keys(ht.state).length>0&&bt($e.shared.current,".dirty=true;"),$e.shared.vao&&bt($e.shared.vao,".setVAO(null);")}function kt($e,ht){var bt=$e.proc("scope",3);$e.batchId="a2";var Kt=$e.shared,sr=Kt.current;if(Gu($e,bt,ht.context),ht.framebuffer&&ht.framebuffer.append($e,bt),sn(Object.keys(ht.state)).forEach(function(er){var Ot=ht.state[er],Jt=Ot.append($e,bt);en(Jt)?Jt.forEach(function(Lt,Ar){Va(Lt)?bt.set($e.next[er],"["+Ar+"]",Lt):bt.set($e.next[er],"["+Ar+"]",$e.link(Lt,{stable:!0}))}):xo(Ot)?bt.set(Kt.next,"."+er,$e.link(Jt,{stable:!0})):bt.set(Kt.next,"."+er,Jt)}),cu($e,bt,ht,!0,!0),[Bt,kr,or,Vr,ir].forEach(function(er){var Ot=ht.draw[er];if(Ot){var Jt=Ot.append($e,bt);Va(Jt)?bt.set(Kt.draw,"."+er,Jt):bt.set(Kt.draw,"."+er,$e.link(Jt),{stable:!0})}}),Object.keys(ht.uniforms).forEach(function(er){var Ot=ht.uniforms[er].append($e,bt);Array.isArray(Ot)&&(Ot="["+Ot.map(function(Jt){return Va(Jt)?Jt:$e.link(Jt,{stable:!0})})+"]"),bt.set(Kt.uniforms,"["+$e.link(qt.id(er),{stable:!0})+"]",Ot)}),Object.keys(ht.attributes).forEach(function(er){var Ot=ht.attributes[er].append($e,bt),Jt=$e.scopeAttrib(er);Object.keys(new xi).forEach(function(Lt){bt.set(Jt,"."+Lt,Ot[Lt])})}),ht.scopeVAO){var Qt=ht.scopeVAO.append($e,bt);Va(Qt)?bt.set(Kt.vao,".targetVAO",Qt):bt.set(Kt.vao,".targetVAO",$e.link(Qt,{stable:!0}))}function ur(er){var Ot=ht.shader[er];if(Ot){var Jt=Ot.append($e,bt);Va(Jt)?bt.set(Kt.shader,"."+er,Jt):bt.set(Kt.shader,"."+er,$e.link(Jt,{stable:!0}))}}ur(tt),ur(mt),Object.keys(ht.state).length>0&&(bt(sr,".dirty=true;"),bt.exit(sr,".dirty=true;")),bt("a1(",$e.shared.context,",a0,",$e.batchId,");")}function dr($e){if(!(typeof $e!="object"||en($e))){for(var ht=Object.keys($e),bt=0;bt=0;--O){var K=_s[O];K&&K(qi,null,0)}ar.flush(),wn&&wn.update()}function Dl(){!nl&&_s.length>0&&(nl=d.next(pl))}function Fu(){nl&&(d.cancel(pl),nl=null)}function vf(O){O.preventDefault(),yi=!0,Fu(),ul.forEach(function(K){K()})}function Ql(O){ar.getError(),yi=!1,ci.restore(),hs.restore(),En.restore(),Ji.restore(),Ui.restore(),ro.restore(),ga.restore(),wn&&wn.restore(),na.procs.refresh(),Dl(),Qn.forEach(function(K){K()})}Va&&(Va.addEventListener(Tu,vf,!1),Va.addEventListener(Au,Ql,!1));function Ef(){_s.length=0,Fu(),Va&&(Va.removeEventListener(Tu,vf),Va.removeEventListener(Au,Ql)),hs.clear(),ro.clear(),Ui.clear(),ga.clear(),Ji.clear(),Zi.clear(),En.clear(),wn&&wn.clear(),Mo.forEach(function(O){O()})}function Cu(O){function K(Qt){var ur=e({},Qt);delete ur.uniforms,delete ur.attributes,delete ur.context,delete ur.vao,"stencil"in ur&&ur.stencil.op&&(ur.stencil.opBack=ur.stencil.opFront=ur.stencil.op,delete ur.stencil.op);function er(Ot){if(Ot in ur){var Jt=ur[Ot];delete ur[Ot],Object.keys(Jt).forEach(function(Lt){ur[Ot+"."+Lt]=Jt[Lt]})}}return er("blend"),er("depth"),er("cull"),er("stencil"),er("polygonOffset"),er("scissor"),er("sample"),"vao"in Qt&&(ur.vao=Qt.vao),ur}function _e(Qt,ur){var er={},Ot={};return Object.keys(Qt).forEach(function(Jt){var Lt=Qt[Jt];if(h.isDynamic(Lt)){Ot[Jt]=h.unbox(Lt,Jt);return}else if(ur&&Array.isArray(Lt)){for(var Ar=0;Ar0)return $e.call(this,Kt(Qt|0),Qt|0)}else if(Array.isArray(Qt)){if(Qt.length)return $e.call(this,Qt,Qt.length)}else return lr.call(this,Qt)}return e(sr,{stats:dr,destroy:function(){Mr.destroy()}})}var gf=ro.setFBO=Cu({framebuffer:h.define.call(null,lf,"framebuffer")});function xf(O,K){var _e=0;na.procs.poll();var ne=K.color;ne&&(ar.clearColor(+ne[0]||0,+ne[1]||0,+ne[2]||0,+ne[3]||0),_e|=Vu),"depth"in K&&(ar.clearDepth(+K.depth),_e|=tf),"stencil"in K&&(ar.clearStencil(K.stencil|0),_e|=ds),ar.clear(_e)}function Cf(O){if("framebuffer"in O)if(O.framebuffer&&O.framebuffer_reglType==="framebufferCube")for(var K=0;K<6;++K)gf(e({framebuffer:O.framebuffer.faces[K]},O),xf);else gf(O,xf);else xf(null,O)}function Gu(O){_s.push(O);function K(){var _e=pf(_s,O);function ne(){var Le=pf(_s,ne);_s[Le]=_s[_s.length-1],_s.length-=1,_s.length<=0&&Fu()}_s[_e]=ne}return Dl(),{cancel:K}}function cf(){var O=In.viewport,K=In.scissor_box;O[0]=O[1]=K[0]=K[1]=0,qi.viewportWidth=qi.framebufferWidth=qi.drawingBufferWidth=O[2]=K[2]=ar.drawingBufferWidth,qi.viewportHeight=qi.framebufferHeight=qi.drawingBufferHeight=O[3]=K[3]=ar.drawingBufferHeight}function mf(){qi.tick+=1,qi.time=bf(),cf(),na.procs.poll()}function Fl(){Ji.refresh(),cf(),na.procs.refresh(),wn&&wn.update()}function bf(){return(p()-Ls)/1e3}Fl();function cu(O,K){var _e;switch(O){case"frame":return Gu(K);case"lost":_e=ul;break;case"restore":_e=Qn;break;case"destroy":_e=Mo;break;default:}return _e.push(K),{cancel:function(){for(var ne=0;ne<_e.length;++ne)if(_e[ne]===K){_e[ne]=_e[_e.length-1],_e.pop();return}}}}function Y(){return Bn}function R(O){Object.entries(O).forEach(function(K){Bn[K[0]]=K[1]})}var J=e(Cu,{clear:Cf,prop:h.define.bind(null,lf),context:h.define.bind(null,hf),this:h.define.bind(null,Mf),draw:Cu({}),buffer:function(O){return En.create(O,Wl,!1,!1)},elements:function(O){return Zi.create(O,!1)},texture:Ji.create2D,cube:Ji.createCube,renderbuffer:Ui.create,framebuffer:ro.create,framebufferCube:ro.createCube,vao:ga.createVAO,attributes:Qr,frame:Gu,on:cu,limits:dn,hasExtension:function(O){return dn.extensions.indexOf(O.toLowerCase())>=0},read:On,destroy:Ef,_gl:ar,_refresh:Fl,poll:function(){mf(),wn&&wn.update()},now:bf,stats:on,getCachedCode:Y,preloadCachedCode:R});return qt.onDone(null,J),J}return fc})});var M8=Ae((Oxr,UNe)=>{"use strict";var bVt=qX(),wVt=NNe();UNe.exports=function(t,r,n){var i=t._fullLayout,a=!0;return i._glcanvas.each(function(o){if(o.regl){o.regl.preloadCachedCode(n);return}if(!(o.pick&&!i._has("parcoords"))){try{o.regl=wVt({canvas:this,attributes:{antialias:!o.pick,preserveDrawingBuffer:!0},pixelRatio:t._context.plotGlPixelRatio||window.devicePixelRatio,extensions:r||[],cachedCode:n||{}})}catch(s){a=!1}o.regl||(a=!1),a&&this.addEventListener("webglcontextlost",function(s){t&&t.emit&&t.emit("plotly_webglcontextlost",{event:s,layer:o.key})},!1)}}),a||bVt({container:i._glcontainer.node()}),a}});var TK=Ae((wK,jNe)=>{"use strict";var VNe=wY(),GNe=QY(),TVt=Lqe(),HNe=qNe(),bK=ei(),AVt=Em().selectMode,SVt=M8(),MVt=lc(),EVt=CU(),kVt=gY().styleTextSelection,WNe={};function CVt(e,t,r,n){var i=e._size,a=e.width*n,o=e.height*n,s=i.l*n,u=i.b*n,l=i.r*n,f=i.t*n,c=i.w*n,h=i.h*n;return[s+t.domain[0]*c,u+r.domain[0]*h,a-l-(1-t.domain[1])*c,o-f-(1-r.domain[1])*h]}var wK=jNe.exports=function(t,r,n){if(n.length){var i=t._fullLayout,a=r._scene,o=r.xaxis,s=r.yaxis,u,l;if(a){var f=SVt(t,["ANGLE_instanced_arrays","OES_element_index_uint"],WNe);if(!f){a.init();return}var c=a.count,h=i._glcanvas.data()[0].regl;if(EVt(t,r,n),a.dirty){if((a.line2d||a.error2d)&&!(a.scatter2d||a.fill2d||a.glText)&&h.clear({color:!0,depth:!0}),a.error2d===!0&&(a.error2d=TVt(h)),a.line2d===!0&&(a.line2d=GNe(h)),a.scatter2d===!0&&(a.scatter2d=VNe(h)),a.fill2d===!0&&(a.fill2d=GNe(h)),a.glText===!0)for(a.glText=new Array(c),u=0;ua.glText.length){var d=c-a.glText.length;for(u=0;uae&&(isNaN(re[be])||isNaN(re[be+1]));)be-=2;H.positions=re.slice(ae,be+2)}return H}),a.line2d.update(a.lineOptions)),a.error2d){var b=(a.errorXOptions||[]).concat(a.errorYOptions||[]);a.error2d.update(b)}a.scatter2d&&a.scatter2d.update(a.markerOptions),a.fillOrder=bK.repeat(null,c),a.fill2d&&(a.fillOptions=a.fillOptions.map(function(H,re){var ae=n[re];if(!(!H||!ae||!ae[0]||!ae[0].trace)){var be=ae[0],ze=be.trace,Ce=be.t,de=a.lineOptions[re],te,ke,Ee=[];ze._ownfill&&Ee.push(re),ze._nexttrace&&Ee.push(re+1),Ee.length&&(a.fillOrder[re]=Ee);var Me=[],Ue=de&&de.positions||Ce.positions,De,ye;if(ze.fill==="tozeroy"){for(De=0;DeDe&&isNaN(Ue[ye+1]);)ye-=2;Ue[De+1]!==0&&(Me=[Ue[De],0]),Me=Me.concat(Ue.slice(De,ye+2)),Ue[ye+1]!==0&&(Me=Me.concat([Ue[ye],0]))}else if(ze.fill==="tozerox"){for(De=0;DeDe&&isNaN(Ue[ye]);)ye-=2;Ue[De]!==0&&(Me=[0,Ue[De+1]]),Me=Me.concat(Ue.slice(De,ye+2)),Ue[ye]!==0&&(Me=Me.concat([0,Ue[ye+1]]))}else if(ze.fill==="toself"||ze.fill==="tonext"){for(Me=[],te=0,H.splitNull=!0,ke=0;ke-1;for(u=0;u{XNe.exports=function(t,r,n){"use strict";var i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r;return i=t.gl,a=t.context,o=t.strings,s=t.next,u=t.current,l=t.draw,f=t.elements,c=t.buffer,h=t.shader,d=t.attributes,p=t.vao,_=t.uniforms,b=t.framebuffer,v=t.extensions,k=t.timer,E=t.isBufferArgs,A=s.blend_color,L=u.blend_color,x=s.blend_equation,C=u.blend_equation,M=s.blend_func,m=u.blend_func,P=s.depth_range,T=u.depth_range,B=s.colorMask,F=u.colorMask,U=s.polygonOffset_offset,G=u.polygonOffset_offset,j=s.sample_coverage,W=u.sample_coverage,N=s.stencil_func,H=u.stencil_func,re=s.stencil_opFront,ae=u.stencil_opFront,be=s.stencil_opBack,ze=u.stencil_opBack,Ce=s.scissor_box,de=u.scissor_box,te=s.viewport,ke=u.viewport,Ee={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Me={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Ue={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},De={add:32774,subtract:32778,"reverse subtract":32779},ye={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},qe={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},ce={cw:2304,ccw:2305},Je=s.blend_color,nt=u.blend_color,gt=s.blend_equation,Nt=u.blend_equation,at=s.blend_func,Ke=u.blend_func,Ct=s.depth_range,wt=u.depth_range,St=s.colorMask,Dt=u.colorMask,Zt=s.polygonOffset_offset,Et=u.polygonOffset_offset,Te=s.sample_coverage,ot=u.sample_coverage,Tt=s.stencil_func,vt=u.stencil_func,Ye=s.stencil_opFront,He=u.stencil_opFront,it=s.stencil_opBack,et=u.stencil_opBack,It=s.scissor_box,Yt=u.scissor_box,cr=s.viewport,_r=u.viewport,{poll:function(){var yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni;u.dirty=!1,Ut=s.dither,Re=s.blend_enable,xe=s.depth_enable,Oe=s.cull_enable,Ie=s.polygonOffset_enable,Fe=s.sample_alpha,ft=s.sample_enable,ge=s.stencil_enable,fe=s.scissor_enable,pe=s.depth_func,dt=u.depth_func,Pt=s.depth_mask,zt=u.depth_mask,rr=s.cull_face,Gr=u.cull_face,Br=s.frontFace,Er=u.frontFace,Rr=s.lineWidth,pi=u.lineWidth,Di=s.stencil_mask,ni=u.stencil_mask,yr=b.next,yr!==b.cur&&(yr?i.bindFramebuffer(36160,yr.framebuffer):i.bindFramebuffer(36160,null),b.cur=yr),Ut!==u.dither&&(Ut?i.enable(3024):i.disable(3024),u.dither=Ut),Re!==u.blend_enable&&(Re?i.enable(3042):i.disable(3042),u.blend_enable=Re),xe!==u.depth_enable&&(xe?i.enable(2929):i.disable(2929),u.depth_enable=xe),Oe!==u.cull_enable&&(Oe?i.enable(2884):i.disable(2884),u.cull_enable=Oe),Ie!==u.polygonOffset_enable&&(Ie?i.enable(32823):i.disable(32823),u.polygonOffset_enable=Ie),Fe!==u.sample_alpha&&(Fe?i.enable(32926):i.disable(32926),u.sample_alpha=Fe),ft!==u.sample_enable&&(ft?i.enable(32928):i.disable(32928),u.sample_enable=ft),ge!==u.stencil_enable&&(ge?i.enable(2960):i.disable(2960),u.stencil_enable=ge),fe!==u.scissor_enable&&(fe?i.enable(3089):i.disable(3089),u.scissor_enable=fe),(Je[0]!==nt[0]||Je[1]!==nt[1]||Je[2]!==nt[2]||Je[3]!==nt[3])&&(i.blendColor(Je[0],Je[1],Je[2],Je[3]),nt[0]=Je[0],nt[1]=Je[1],nt[2]=Je[2],nt[3]=Je[3]),(gt[0]!==Nt[0]||gt[1]!==Nt[1])&&(i.blendEquationSeparate(gt[0],gt[1]),Nt[0]=gt[0],Nt[1]=gt[1]),(at[0]!==Ke[0]||at[1]!==Ke[1]||at[2]!==Ke[2]||at[3]!==Ke[3])&&(i.blendFuncSeparate(at[0],at[1],at[2],at[3]),Ke[0]=at[0],Ke[1]=at[1],Ke[2]=at[2],Ke[3]=at[3]),pe!==dt&&(i.depthFunc(pe),u.depth_func=pe),(Ct[0]!==wt[0]||Ct[1]!==wt[1])&&(i.depthRange(Ct[0],Ct[1]),wt[0]=Ct[0],wt[1]=Ct[1]),Pt!==zt&&(i.depthMask(Pt),u.depth_mask=Pt),(St[0]!==Dt[0]||St[1]!==Dt[1]||St[2]!==Dt[2]||St[3]!==Dt[3])&&(i.colorMask(St[0],St[1],St[2],St[3]),Dt[0]=St[0],Dt[1]=St[1],Dt[2]=St[2],Dt[3]=St[3]),rr!==Gr&&(i.cullFace(rr),u.cull_face=rr),Br!==Er&&(i.frontFace(Br),u.frontFace=Br),Rr!==pi&&(i.lineWidth(Rr),u.lineWidth=Rr),(Zt[0]!==Et[0]||Zt[1]!==Et[1])&&(i.polygonOffset(Zt[0],Zt[1]),Et[0]=Zt[0],Et[1]=Zt[1]),(Te[0]!==ot[0]||Te[1]!==ot[1])&&(i.sampleCoverage(Te[0],Te[1]),ot[0]=Te[0],ot[1]=Te[1]),Di!==ni&&(i.stencilMask(Di),u.stencil_mask=Di),(Tt[0]!==vt[0]||Tt[1]!==vt[1]||Tt[2]!==vt[2])&&(i.stencilFunc(Tt[0],Tt[1],Tt[2]),vt[0]=Tt[0],vt[1]=Tt[1],vt[2]=Tt[2]),(Ye[0]!==He[0]||Ye[1]!==He[1]||Ye[2]!==He[2]||Ye[3]!==He[3])&&(i.stencilOpSeparate(Ye[0],Ye[1],Ye[2],Ye[3]),He[0]=Ye[0],He[1]=Ye[1],He[2]=Ye[2],He[3]=Ye[3]),(it[0]!==et[0]||it[1]!==et[1]||it[2]!==et[2]||it[3]!==et[3])&&(i.stencilOpSeparate(it[0],it[1],it[2],it[3]),et[0]=it[0],et[1]=it[1],et[2]=it[2],et[3]=it[3]),(It[0]!==Yt[0]||It[1]!==Yt[1]||It[2]!==Yt[2]||It[3]!==Yt[3])&&(i.scissor(It[0],It[1],It[2],It[3]),Yt[0]=It[0],Yt[1]=It[1],Yt[2]=It[2],Yt[3]=It[3]),(cr[0]!==_r[0]||cr[1]!==_r[1]||cr[2]!==_r[2]||cr[3]!==_r[3])&&(i.viewport(cr[0],cr[1],cr[2],cr[3]),_r[0]=cr[0],_r[1]=cr[1],_r[2]=cr[2],_r[3]=cr[3])},refresh:function(){var yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi;u.dirty=!1,xe=s.dither,Oe=s.blend_enable,Ie=s.depth_enable,Fe=s.cull_enable,ft=s.polygonOffset_enable,ge=s.sample_alpha,fe=s.sample_enable,pe=s.stencil_enable,dt=s.scissor_enable,Pt=s.depth_func,zt=u.depth_func,rr=s.depth_mask,Gr=u.depth_mask,Br=s.cull_face,Er=u.cull_face,Rr=s.frontFace,pi=u.frontFace,Di=s.lineWidth,ni=u.lineWidth,$i=s.stencil_mask,Qi=u.stencil_mask,yr=b.next,yr?i.bindFramebuffer(36160,yr.framebuffer):i.bindFramebuffer(36160,null),b.cur=yr,Ut=d,Re=0;for(var si=0;si{ZNe.exports=function(t,r,n,i,a,o,s,u){"use strict";var l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct;return l=t.gl,f=t.context,c=t.strings,h=t.next,d=t.current,p=t.draw,_=t.elements,b=t.buffer,v=t.shader,k=t.attributes,E=t.vao,A=t.uniforms,L=t.framebuffer,x=t.extensions,C=t.timer,M=t.isBufferArgs,m=h.blend_color,P=d.blend_color,T=h.blend_equation,B=d.blend_equation,F=h.blend_func,U=d.blend_func,G=h.depth_range,j=d.depth_range,W=h.colorMask,N=d.colorMask,H=h.polygonOffset_offset,re=d.polygonOffset_offset,ae=h.sample_coverage,be=d.sample_coverage,ze=h.stencil_func,Ce=d.stencil_func,de=h.stencil_opFront,te=d.stencil_opFront,ke=h.stencil_opBack,Ee=d.stencil_opBack,Me=h.scissor_box,Ue=d.scissor_box,De=h.viewport,ye=d.viewport,qe={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},ce={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Je={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},nt={add:32774,subtract:32778,"reverse subtract":32779},gt={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Nt={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},at={cw:2304,ccw:2305},Ke={},Ct={},{draw:function(wt){var St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re;if(St=x.angle_instanced_arrays,Dt=wt.framebuffer,Zt=L.getFramebuffer(Dt),Et=L.next,L.next=Zt,Te=f.framebufferWidth,f.framebufferWidth=Zt?Zt.width:f.drawingBufferWidth,ot=f.framebufferHeight,f.framebufferHeight=Zt?Zt.height:f.drawingBufferHeight,Zt!==L.cur&&(Zt?l.bindFramebuffer(36160,Zt.framebuffer):l.bindFramebuffer(36160,null),L.cur=Zt),d.dirty){var xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii;xe=h.dither,xe!==d.dither&&(xe?l.enable(3024):l.disable(3024),d.dither=xe),Oe=h.blend_enable,Oe!==d.blend_enable&&(Oe?l.enable(3042):l.disable(3042),d.blend_enable=Oe),Ie=m[0],Fe=m[1],ft=m[2],ge=m[3],(Ie!==P[0]||Fe!==P[1]||ft!==P[2]||ge!==P[3])&&(l.blendColor(Ie,Fe,ft,ge),P[0]=Ie,P[1]=Fe,P[2]=ft,P[3]=ge),fe=T[0],pe=T[1],(fe!==B[0]||pe!==B[1])&&(l.blendEquationSeparate(fe,pe),B[0]=fe,B[1]=pe),dt=F[0],Pt=F[1],zt=F[2],rr=F[3],(dt!==U[0]||Pt!==U[1]||zt!==U[2]||rr!==U[3])&&(l.blendFuncSeparate(dt,Pt,zt,rr),U[0]=dt,U[1]=Pt,U[2]=zt,U[3]=rr),Gr=h.depth_enable,Gr!==d.depth_enable&&(Gr?l.enable(2929):l.disable(2929),d.depth_enable=Gr),Br=h.depth_func,Br!==d.depth_func&&(l.depthFunc(Br),d.depth_func=Br),Er=G[0],Rr=G[1],(Er!==j[0]||Rr!==j[1])&&(l.depthRange(Er,Rr),j[0]=Er,j[1]=Rr),pi=h.depth_mask,pi!==d.depth_mask&&(l.depthMask(pi),d.depth_mask=pi),Di=W[0],ni=W[1],$i=W[2],Qi=W[3],(Di!==N[0]||ni!==N[1]||$i!==N[2]||Qi!==N[3])&&(l.colorMask(Di,ni,$i,Qi),N[0]=Di,N[1]=ni,N[2]=$i,N[3]=Qi),si=h.cull_enable,si!==d.cull_enable&&(si?l.enable(2884):l.disable(2884),d.cull_enable=si),Ai=h.cull_face,Ai!==d.cull_face&&(l.cullFace(Ai),d.cull_face=Ai),Ni=h.frontFace,Ni!==d.frontFace&&(l.frontFace(Ni),d.frontFace=Ni),Rt=h.lineWidth,Rt!==d.lineWidth&&(l.lineWidth(Rt),d.lineWidth=Rt),yt=h.polygonOffset_enable,yt!==d.polygonOffset_enable&&(yt?l.enable(32823):l.disable(32823),d.polygonOffset_enable=yt),Gt=H[0],Wt=H[1],(Gt!==re[0]||Wt!==re[1])&&(l.polygonOffset(Gt,Wt),re[0]=Gt,re[1]=Wt),xr=h.sample_alpha,xr!==d.sample_alpha&&(xr?l.enable(32926):l.disable(32926),d.sample_alpha=xr),Lr=h.sample_enable,Lr!==d.sample_enable&&(Lr?l.enable(32928):l.disable(32928),d.sample_enable=Lr),Nr=ae[0],Or=ae[1],(Nr!==be[0]||Or!==be[1])&&(l.sampleCoverage(Nr,Or),be[0]=Nr,be[1]=Or),Hr=h.stencil_enable,Hr!==d.stencil_enable&&(Hr?l.enable(2960):l.disable(2960),d.stencil_enable=Hr),jr=h.stencil_mask,jr!==d.stencil_mask&&(l.stencilMask(jr),d.stencil_mask=jr),gi=ze[0],ki=ze[1],Vi=ze[2],(gi!==Ce[0]||ki!==Ce[1]||Vi!==Ce[2])&&(l.stencilFunc(gi,ki,Vi),Ce[0]=gi,Ce[1]=ki,Ce[2]=Vi),ti=de[0],tn=de[1],Yr=de[2],oi=de[3],(ti!==te[0]||tn!==te[1]||Yr!==te[2]||oi!==te[3])&&(l.stencilOpSeparate(ti,tn,Yr,oi),te[0]=ti,te[1]=tn,te[2]=Yr,te[3]=oi),Fi=ke[0],an=ke[1],nn=ke[2],Ri=ke[3],(Fi!==Ee[0]||an!==Ee[1]||nn!==Ee[2]||Ri!==Ee[3])&&(l.stencilOpSeparate(Fi,an,nn,Ri),Ee[0]=Fi,Ee[1]=an,Ee[2]=nn,Ee[3]=Ri),Ii=h.scissor_enable,Ii!==d.scissor_enable&&(Ii?l.enable(3089):l.disable(3089),d.scissor_enable=Ii)}Tt=f.framebufferWidth,vt=f.framebufferHeight,Ye=f.viewportWidth,f.viewportWidth=Tt,He=f.viewportHeight,f.viewportHeight=vt,l.viewport(0,0,Tt,vt),ye[0]=0,ye[1]=0,ye[2]=Tt,ye[3]=vt,it=f.framebufferWidth,et=f.framebufferHeight,l.scissor(0,0,it,et),Ue[0]=0,Ue[1]=0,Ue[2]=it,Ue[3]=et,It=d.profile,It&&(Yt=performance.now(),r.count++),cr=v.frag,_r=v.vert,yr=v.program(_r,cr),l.useProgram(yr.program),E.setVAO(null),Ut=yr.id,Re=Ke[Ut],Re?Re.call(this,wt):(Re=Ke[Ut]=n(yr),Re.call(this,wt)),d.dirty=!0,E.setVAO(null),L.next=Et,f.framebufferWidth=Te,f.framebufferHeight=ot,f.viewportWidth=Ye,f.viewportHeight=He,It&&(r.cpuTime+=performance.now()-Yt)},scope:function(wt,St,Dt){var Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe;Zt=wt.framebuffer,Et=L.getFramebuffer(Zt),Te=L.next,L.next=Et,ot=f.framebufferWidth,f.framebufferWidth=Et?Et.width:f.drawingBufferWidth,Tt=f.framebufferHeight,f.framebufferHeight=Et?Et.height:f.drawingBufferHeight,vt=f.framebufferWidth,Ye=f.framebufferHeight,He=f.viewportWidth,f.viewportWidth=vt,it=f.viewportHeight,f.viewportHeight=Ye,et=De[0],De[0]=i,It=De[1],De[1]=a,Yt=De[2],De[2]=vt,cr=De[3],De[3]=Ye,_r=f.framebufferWidth,yr=f.framebufferHeight,Ut=Me[0],Me[0]=o,Re=Me[1],Me[1]=s,xe=Me[2],Me[2]=_r,Oe=Me[3],Me[3]=yr,Ie=d.profile,Ie&&(Fe=performance.now(),r.count++),d.dirty=!0,St(f,wt,Dt),L.next=Te,f.framebufferWidth=ot,f.framebufferHeight=Tt,f.viewportWidth=He,f.viewportHeight=it,De[0]=et,De[1]=It,De[2]=Yt,De[3]=cr,Me[0]=Ut,Me[1]=Re,Me[2]=xe,Me[3]=Oe,Ie&&(r.cpuTime+=performance.now()-Fe),d.dirty=!0},batch:function(wt,St){var Dt,Zt,Et,Te,ot,Tt,vt,Ye;if(Dt=x.angle_instanced_arrays,d.dirty){var He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki;He=h.dither,He!==d.dither&&(He?l.enable(3024):l.disable(3024),d.dither=He),it=h.blend_enable,it!==d.blend_enable&&(it?l.enable(3042):l.disable(3042),d.blend_enable=it),et=m[0],It=m[1],Yt=m[2],cr=m[3],(et!==P[0]||It!==P[1]||Yt!==P[2]||cr!==P[3])&&(l.blendColor(et,It,Yt,cr),P[0]=et,P[1]=It,P[2]=Yt,P[3]=cr),_r=T[0],yr=T[1],(_r!==B[0]||yr!==B[1])&&(l.blendEquationSeparate(_r,yr),B[0]=_r,B[1]=yr),Ut=F[0],Re=F[1],xe=F[2],Oe=F[3],(Ut!==U[0]||Re!==U[1]||xe!==U[2]||Oe!==U[3])&&(l.blendFuncSeparate(Ut,Re,xe,Oe),U[0]=Ut,U[1]=Re,U[2]=xe,U[3]=Oe),Ie=h.depth_enable,Ie!==d.depth_enable&&(Ie?l.enable(2929):l.disable(2929),d.depth_enable=Ie),Fe=h.depth_func,Fe!==d.depth_func&&(l.depthFunc(Fe),d.depth_func=Fe),ft=G[0],ge=G[1],(ft!==j[0]||ge!==j[1])&&(l.depthRange(ft,ge),j[0]=ft,j[1]=ge),fe=h.depth_mask,fe!==d.depth_mask&&(l.depthMask(fe),d.depth_mask=fe),pe=W[0],dt=W[1],Pt=W[2],zt=W[3],(pe!==N[0]||dt!==N[1]||Pt!==N[2]||zt!==N[3])&&(l.colorMask(pe,dt,Pt,zt),N[0]=pe,N[1]=dt,N[2]=Pt,N[3]=zt),rr=h.cull_enable,rr!==d.cull_enable&&(rr?l.enable(2884):l.disable(2884),d.cull_enable=rr),Gr=h.cull_face,Gr!==d.cull_face&&(l.cullFace(Gr),d.cull_face=Gr),Br=h.frontFace,Br!==d.frontFace&&(l.frontFace(Br),d.frontFace=Br),Er=h.lineWidth,Er!==d.lineWidth&&(l.lineWidth(Er),d.lineWidth=Er),Rr=h.polygonOffset_enable,Rr!==d.polygonOffset_enable&&(Rr?l.enable(32823):l.disable(32823),d.polygonOffset_enable=Rr),pi=H[0],Di=H[1],(pi!==re[0]||Di!==re[1])&&(l.polygonOffset(pi,Di),re[0]=pi,re[1]=Di),ni=h.sample_alpha,ni!==d.sample_alpha&&(ni?l.enable(32926):l.disable(32926),d.sample_alpha=ni),$i=h.sample_enable,$i!==d.sample_enable&&($i?l.enable(32928):l.disable(32928),d.sample_enable=$i),Qi=ae[0],si=ae[1],(Qi!==be[0]||si!==be[1])&&(l.sampleCoverage(Qi,si),be[0]=Qi,be[1]=si),Ai=h.stencil_enable,Ai!==d.stencil_enable&&(Ai?l.enable(2960):l.disable(2960),d.stencil_enable=Ai),Ni=h.stencil_mask,Ni!==d.stencil_mask&&(l.stencilMask(Ni),d.stencil_mask=Ni),Rt=ze[0],yt=ze[1],Gt=ze[2],(Rt!==Ce[0]||yt!==Ce[1]||Gt!==Ce[2])&&(l.stencilFunc(Rt,yt,Gt),Ce[0]=Rt,Ce[1]=yt,Ce[2]=Gt),Wt=de[0],xr=de[1],Lr=de[2],Nr=de[3],(Wt!==te[0]||xr!==te[1]||Lr!==te[2]||Nr!==te[3])&&(l.stencilOpSeparate(Wt,xr,Lr,Nr),te[0]=Wt,te[1]=xr,te[2]=Lr,te[3]=Nr),Or=ke[0],Hr=ke[1],jr=ke[2],gi=ke[3],(Or!==Ee[0]||Hr!==Ee[1]||jr!==Ee[2]||gi!==Ee[3])&&(l.stencilOpSeparate(Or,Hr,jr,gi),Ee[0]=Or,Ee[1]=Hr,Ee[2]=jr,Ee[3]=gi),ki=h.scissor_enable,ki!==d.scissor_enable&&(ki?l.enable(3089):l.disable(3089),d.scissor_enable=ki)}Zt=d.profile,Zt&&(Et=performance.now(),r.count+=St),Te=v.frag,ot=v.vert,Tt=v.program(ot,Te),l.useProgram(Tt.program),E.setVAO(null),vt=Tt.id,Ye=Ct[vt],Ye?Ye.call(this,wt,St):(Ye=Ct[vt]=u(Tt),Ye.call(this,wt,St)),d.dirty=!0,E.setVAO(null),Zt&&(r.cpuTime+=performance.now()-Et)}}}});var C8=Ae((Uxr,YNe)=>{YNe.exports=function(t,r,n,i){"use strict";var a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt;return a=t.gl,o=t.context,s=t.strings,u=t.next,l=t.current,f=t.draw,c=t.elements,h=t.buffer,d=t.shader,p=t.attributes,_=t.vao,b=t.uniforms,v=t.framebuffer,k=t.extensions,E=t.timer,A=t.isBufferArgs,L=u.blend_color,x=l.blend_color,C=u.blend_equation,M=l.blend_equation,m=u.blend_func,P=l.blend_func,T=u.depth_range,B=l.depth_range,F=u.colorMask,U=l.colorMask,G=u.polygonOffset_offset,j=l.polygonOffset_offset,W=u.sample_coverage,N=l.sample_coverage,H=u.stencil_func,re=l.stencil_func,ae=u.stencil_opFront,be=l.stencil_opFront,ze=u.stencil_opBack,Ce=l.stencil_opBack,de=u.scissor_box,te=l.scissor_box,ke=u.viewport,Ee=l.viewport,Me={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ue={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},De={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},ye={add:32774,subtract:32778,"reverse subtract":32779},qe={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ce={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Je={cw:2304,ccw:2305},nt={},gt={},{draw:function(Nt){var at,Ke,Ct,wt,St,Dt,Zt,Et,Te;if(at=k.angle_instanced_arrays,Ke=v.next,Ke!==v.cur&&(Ke?a.bindFramebuffer(36160,Ke.framebuffer):a.bindFramebuffer(36160,null),v.cur=Ke),l.dirty){var ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr;ot=u.dither,ot!==l.dither&&(ot?a.enable(3024):a.disable(3024),l.dither=ot),Tt=u.blend_enable,Tt!==l.blend_enable&&(Tt?a.enable(3042):a.disable(3042),l.blend_enable=Tt),vt=L[0],Ye=L[1],He=L[2],it=L[3],(vt!==x[0]||Ye!==x[1]||He!==x[2]||it!==x[3])&&(a.blendColor(vt,Ye,He,it),x[0]=vt,x[1]=Ye,x[2]=He,x[3]=it),et=C[0],It=C[1],(et!==M[0]||It!==M[1])&&(a.blendEquationSeparate(et,It),M[0]=et,M[1]=It),Yt=m[0],cr=m[1],_r=m[2],yr=m[3],(Yt!==P[0]||cr!==P[1]||_r!==P[2]||yr!==P[3])&&(a.blendFuncSeparate(Yt,cr,_r,yr),P[0]=Yt,P[1]=cr,P[2]=_r,P[3]=yr),Ut=u.depth_enable,Ut!==l.depth_enable&&(Ut?a.enable(2929):a.disable(2929),l.depth_enable=Ut),Re=u.depth_func,Re!==l.depth_func&&(a.depthFunc(Re),l.depth_func=Re),xe=T[0],Oe=T[1],(xe!==B[0]||Oe!==B[1])&&(a.depthRange(xe,Oe),B[0]=xe,B[1]=Oe),Ie=u.depth_mask,Ie!==l.depth_mask&&(a.depthMask(Ie),l.depth_mask=Ie),Fe=F[0],ft=F[1],ge=F[2],fe=F[3],(Fe!==U[0]||ft!==U[1]||ge!==U[2]||fe!==U[3])&&(a.colorMask(Fe,ft,ge,fe),U[0]=Fe,U[1]=ft,U[2]=ge,U[3]=fe),pe=u.cull_enable,pe!==l.cull_enable&&(pe?a.enable(2884):a.disable(2884),l.cull_enable=pe),dt=u.cull_face,dt!==l.cull_face&&(a.cullFace(dt),l.cull_face=dt),Pt=u.frontFace,Pt!==l.frontFace&&(a.frontFace(Pt),l.frontFace=Pt),zt=u.lineWidth,zt!==l.lineWidth&&(a.lineWidth(zt),l.lineWidth=zt),rr=u.polygonOffset_enable,rr!==l.polygonOffset_enable&&(rr?a.enable(32823):a.disable(32823),l.polygonOffset_enable=rr),Gr=G[0],Br=G[1],(Gr!==j[0]||Br!==j[1])&&(a.polygonOffset(Gr,Br),j[0]=Gr,j[1]=Br),Er=u.sample_alpha,Er!==l.sample_alpha&&(Er?a.enable(32926):a.disable(32926),l.sample_alpha=Er),Rr=u.sample_enable,Rr!==l.sample_enable&&(Rr?a.enable(32928):a.disable(32928),l.sample_enable=Rr),pi=W[0],Di=W[1],(pi!==N[0]||Di!==N[1])&&(a.sampleCoverage(pi,Di),N[0]=pi,N[1]=Di),ni=u.stencil_enable,ni!==l.stencil_enable&&(ni?a.enable(2960):a.disable(2960),l.stencil_enable=ni),$i=u.stencil_mask,$i!==l.stencil_mask&&(a.stencilMask($i),l.stencil_mask=$i),Qi=H[0],si=H[1],Ai=H[2],(Qi!==re[0]||si!==re[1]||Ai!==re[2])&&(a.stencilFunc(Qi,si,Ai),re[0]=Qi,re[1]=si,re[2]=Ai),Ni=ae[0],Rt=ae[1],yt=ae[2],Gt=ae[3],(Ni!==be[0]||Rt!==be[1]||yt!==be[2]||Gt!==be[3])&&(a.stencilOpSeparate(Ni,Rt,yt,Gt),be[0]=Ni,be[1]=Rt,be[2]=yt,be[3]=Gt),Wt=ze[0],xr=ze[1],Lr=ze[2],Nr=ze[3],(Wt!==Ce[0]||xr!==Ce[1]||Lr!==Ce[2]||Nr!==Ce[3])&&(a.stencilOpSeparate(Wt,xr,Lr,Nr),Ce[0]=Wt,Ce[1]=xr,Ce[2]=Lr,Ce[3]=Nr),Or=u.scissor_enable,Or!==l.scissor_enable&&(Or?a.enable(3089):a.disable(3089),l.scissor_enable=Or),Hr=de[0],jr=de[1],gi=de[2],ki=de[3],(Hr!==te[0]||jr!==te[1]||gi!==te[2]||ki!==te[3])&&(a.scissor(Hr,jr,gi,ki),te[0]=Hr,te[1]=jr,te[2]=gi,te[3]=ki),Vi=ke[0],ti=ke[1],tn=ke[2],Yr=ke[3],(Vi!==Ee[0]||ti!==Ee[1]||tn!==Ee[2]||Yr!==Ee[3])&&(a.viewport(Vi,ti,tn,Yr),Ee[0]=Vi,Ee[1]=ti,Ee[2]=tn,Ee[3]=Yr),l.dirty=!1}Ct=l.profile,Ct&&(wt=performance.now(),r.count++),St=d.frag,Dt=d.vert,Zt=d.program(Dt,St),a.useProgram(Zt.program),_.setVAO(null),Et=Zt.id,Te=nt[Et],Te?Te.call(this,Nt):(Te=nt[Et]=n(Zt),Te.call(this,Nt)),_.setVAO(null),Ct&&(r.cpuTime+=performance.now()-wt)},scope:function(Nt,at,Ke){var Ct,wt;Ct=l.profile,Ct&&(wt=performance.now(),r.count++),at(o,Nt,Ke),Ct&&(r.cpuTime+=performance.now()-wt)},batch:function(Nt,at){var Ke,Ct,wt,St,Dt,Zt,Et,Te,ot;if(Ke=k.angle_instanced_arrays,Ct=v.next,Ct!==v.cur&&(Ct?a.bindFramebuffer(36160,Ct.framebuffer):a.bindFramebuffer(36160,null),v.cur=Ct),l.dirty){var Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi;Tt=u.dither,Tt!==l.dither&&(Tt?a.enable(3024):a.disable(3024),l.dither=Tt),vt=u.blend_enable,vt!==l.blend_enable&&(vt?a.enable(3042):a.disable(3042),l.blend_enable=vt),Ye=L[0],He=L[1],it=L[2],et=L[3],(Ye!==x[0]||He!==x[1]||it!==x[2]||et!==x[3])&&(a.blendColor(Ye,He,it,et),x[0]=Ye,x[1]=He,x[2]=it,x[3]=et),It=C[0],Yt=C[1],(It!==M[0]||Yt!==M[1])&&(a.blendEquationSeparate(It,Yt),M[0]=It,M[1]=Yt),cr=m[0],_r=m[1],yr=m[2],Ut=m[3],(cr!==P[0]||_r!==P[1]||yr!==P[2]||Ut!==P[3])&&(a.blendFuncSeparate(cr,_r,yr,Ut),P[0]=cr,P[1]=_r,P[2]=yr,P[3]=Ut),Re=u.depth_enable,Re!==l.depth_enable&&(Re?a.enable(2929):a.disable(2929),l.depth_enable=Re),xe=u.depth_func,xe!==l.depth_func&&(a.depthFunc(xe),l.depth_func=xe),Oe=T[0],Ie=T[1],(Oe!==B[0]||Ie!==B[1])&&(a.depthRange(Oe,Ie),B[0]=Oe,B[1]=Ie),Fe=u.depth_mask,Fe!==l.depth_mask&&(a.depthMask(Fe),l.depth_mask=Fe),ft=F[0],ge=F[1],fe=F[2],pe=F[3],(ft!==U[0]||ge!==U[1]||fe!==U[2]||pe!==U[3])&&(a.colorMask(ft,ge,fe,pe),U[0]=ft,U[1]=ge,U[2]=fe,U[3]=pe),dt=u.cull_enable,dt!==l.cull_enable&&(dt?a.enable(2884):a.disable(2884),l.cull_enable=dt),Pt=u.cull_face,Pt!==l.cull_face&&(a.cullFace(Pt),l.cull_face=Pt),zt=u.frontFace,zt!==l.frontFace&&(a.frontFace(zt),l.frontFace=zt),rr=u.lineWidth,rr!==l.lineWidth&&(a.lineWidth(rr),l.lineWidth=rr),Gr=u.polygonOffset_enable,Gr!==l.polygonOffset_enable&&(Gr?a.enable(32823):a.disable(32823),l.polygonOffset_enable=Gr),Br=G[0],Er=G[1],(Br!==j[0]||Er!==j[1])&&(a.polygonOffset(Br,Er),j[0]=Br,j[1]=Er),Rr=u.sample_alpha,Rr!==l.sample_alpha&&(Rr?a.enable(32926):a.disable(32926),l.sample_alpha=Rr),pi=u.sample_enable,pi!==l.sample_enable&&(pi?a.enable(32928):a.disable(32928),l.sample_enable=pi),Di=W[0],ni=W[1],(Di!==N[0]||ni!==N[1])&&(a.sampleCoverage(Di,ni),N[0]=Di,N[1]=ni),$i=u.stencil_enable,$i!==l.stencil_enable&&($i?a.enable(2960):a.disable(2960),l.stencil_enable=$i),Qi=u.stencil_mask,Qi!==l.stencil_mask&&(a.stencilMask(Qi),l.stencil_mask=Qi),si=H[0],Ai=H[1],Ni=H[2],(si!==re[0]||Ai!==re[1]||Ni!==re[2])&&(a.stencilFunc(si,Ai,Ni),re[0]=si,re[1]=Ai,re[2]=Ni),Rt=ae[0],yt=ae[1],Gt=ae[2],Wt=ae[3],(Rt!==be[0]||yt!==be[1]||Gt!==be[2]||Wt!==be[3])&&(a.stencilOpSeparate(Rt,yt,Gt,Wt),be[0]=Rt,be[1]=yt,be[2]=Gt,be[3]=Wt),xr=ze[0],Lr=ze[1],Nr=ze[2],Or=ze[3],(xr!==Ce[0]||Lr!==Ce[1]||Nr!==Ce[2]||Or!==Ce[3])&&(a.stencilOpSeparate(xr,Lr,Nr,Or),Ce[0]=xr,Ce[1]=Lr,Ce[2]=Nr,Ce[3]=Or),Hr=u.scissor_enable,Hr!==l.scissor_enable&&(Hr?a.enable(3089):a.disable(3089),l.scissor_enable=Hr),jr=de[0],gi=de[1],ki=de[2],Vi=de[3],(jr!==te[0]||gi!==te[1]||ki!==te[2]||Vi!==te[3])&&(a.scissor(jr,gi,ki,Vi),te[0]=jr,te[1]=gi,te[2]=ki,te[3]=Vi),ti=ke[0],tn=ke[1],Yr=ke[2],oi=ke[3],(ti!==Ee[0]||tn!==Ee[1]||Yr!==Ee[2]||oi!==Ee[3])&&(a.viewport(ti,tn,Yr,oi),Ee[0]=ti,Ee[1]=tn,Ee[2]=Yr,Ee[3]=oi),l.dirty=!1}wt=l.profile,wt&&(St=performance.now(),r.count+=at),Dt=d.frag,Zt=d.vert,Et=d.program(Zt,Dt),a.useProgram(Et.program),_.setVAO(null),Te=Et.id,ot=gt[Te],ot?ot.call(this,Nt,at):(ot=gt[Te]=i(Et),ot.call(this,Nt,at)),_.setVAO(null),wt&&(r.cpuTime+=performance.now()-St)}}}});var L8=Ae((Vxr,KNe)=>{KNe.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it){"use strict";var et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn;return et=t.gl,It=t.context,Yt=t.strings,cr=t.next,_r=t.current,yr=t.draw,Ut=t.elements,Re=t.buffer,xe=t.shader,Oe=t.attributes,Ie=t.vao,Fe=t.uniforms,ft=t.framebuffer,ge=t.extensions,fe=t.timer,pe=t.isBufferArgs,dt=cr.blend_color,Pt=_r.blend_color,zt=cr.blend_equation,rr=_r.blend_equation,Gr=cr.blend_func,Br=_r.blend_func,Er=cr.depth_range,Rr=_r.depth_range,pi=cr.colorMask,Di=_r.colorMask,ni=cr.polygonOffset_offset,$i=_r.polygonOffset_offset,Qi=cr.sample_coverage,si=_r.sample_coverage,Ai=cr.stencil_func,Ni=_r.stencil_func,Rt=cr.stencil_opFront,yt=_r.stencil_opFront,Gt=cr.stencil_opBack,Wt=_r.stencil_opBack,xr=cr.scissor_box,Lr=_r.scissor_box,Nr=cr.viewport,Or=_r.viewport,Hr={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},jr={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},gi={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},ki={add:32774,subtract:32778,"reverse subtract":32779},Vi={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ti={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},tn={cw:2304,ccw:2305},Yr={},Yr.stride=8,Yr.offset=8,Yr.divisor=1,oi={},oi.stride=8,oi.offset=16,oi.divisor=1,Fi={},Fi.stride=8,Fi.offset=8,Fi.divisor=1,an={},an.stride=8,an.offset=16,an.divisor=1,nn={},nn.stride=4,nn.offset=0,nn.divisor=1,{draw:function(Ri){var Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta;if(Ii=ge.angle_instanced_arrays,xn=ft.next,xn!==ft.cur&&(xn?et.bindFramebuffer(36160,xn.framebuffer):et.bindFramebuffer(36160,null),ft.cur=xn),_r.dirty){var os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i;os=cr.dither,os!==_r.dither&&(os?et.enable(3024):et.disable(3024),_r.dither=os),_l=cr.depth_func,_l!==_r.depth_func&&(et.depthFunc(_l),_r.depth_func=_l),Ss=Er[0],po=Er[1],(Ss!==Rr[0]||po!==Rr[1])&&(et.depthRange(Ss,po),Rr[0]=Ss,Rr[1]=po),go=cr.depth_mask,go!==_r.depth_mask&&(et.depthMask(go),_r.depth_mask=go),ss=pi[0],qo=pi[1],zo=pi[2],io=pi[3],(ss!==Di[0]||qo!==Di[1]||zo!==Di[2]||io!==Di[3])&&(et.colorMask(ss,qo,zo,io),Di[0]=ss,Di[1]=qo,Di[2]=zo,Di[3]=io),Io=cr.cull_enable,Io!==_r.cull_enable&&(Io?et.enable(2884):et.disable(2884),_r.cull_enable=Io),Da=cr.cull_face,Da!==_r.cull_face&&(et.cullFace(Da),_r.cull_face=Da),vs=cr.frontFace,vs!==_r.frontFace&&(et.frontFace(vs),_r.frontFace=vs),fs=cr.lineWidth,fs!==_r.lineWidth&&(et.lineWidth(fs),_r.lineWidth=fs),cl=cr.polygonOffset_enable,cl!==_r.polygonOffset_enable&&(cl?et.enable(32823):et.disable(32823),_r.polygonOffset_enable=cl),el=ni[0],Hs=ni[1],(el!==$i[0]||Hs!==$i[1])&&(et.polygonOffset(el,Hs),$i[0]=el,$i[1]=Hs),Ro=cr.sample_alpha,Ro!==_r.sample_alpha&&(Ro?et.enable(32926):et.disable(32926),_r.sample_alpha=Ro),tl=cr.sample_enable,tl!==_r.sample_enable&&(tl?et.enable(32928):et.disable(32928),_r.sample_enable=tl),Fs=Qi[0],hl=Qi[1],(Fs!==si[0]||hl!==si[1])&&(et.sampleCoverage(Fs,hl),si[0]=Fs,si[1]=hl),Fa=cr.stencil_mask,Fa!==_r.stencil_mask&&(et.stencilMask(Fa),_r.stencil_mask=Fa),Ms=Ai[0],jo=Ai[1],Rs=Ai[2],(Ms!==Ni[0]||jo!==Ni[1]||Rs!==Ni[2])&&(et.stencilFunc(Ms,jo,Rs),Ni[0]=Ms,Ni[1]=jo,Ni[2]=Rs),Is=Rt[0],Bs=Rt[1],At=Rt[2],Vt=Rt[3],(Is!==yt[0]||Bs!==yt[1]||At!==yt[2]||Vt!==yt[3])&&(et.stencilOpSeparate(Is,Bs,At,Vt),yt[0]=Is,yt[1]=Bs,yt[2]=At,yt[3]=Vt),wr=Gt[0],mr=Gt[1],Fr=Gt[2],_i=Gt[3],(wr!==Wt[0]||mr!==Wt[1]||Fr!==Wt[2]||_i!==Wt[3])&&(et.stencilOpSeparate(wr,mr,Fr,_i),Wt[0]=wr,Wt[1]=mr,Wt[2]=Fr,Wt[3]=_i)}bi=Ri.viewport,Xr=bi.x|0,ct=bi.y|0,tr="width"in bi?bi.width|0:It.framebufferWidth-Xr,pr="height"in bi?bi.height|0:It.framebufferHeight-ct,gr=It.viewportWidth,It.viewportWidth=tr,Zr=It.viewportHeight,It.viewportHeight=pr,et.viewport(Xr,ct,tr,pr),Or[0]=Xr,Or[1]=ct,Or[2]=tr,Or[3]=pr,et.blendColor(0,0,0,0),Pt[0]=0,Pt[1]=0,Pt[2]=0,Pt[3]=0,n?et.enable(3042):et.disable(3042),_r.blend_enable=n,et.blendEquationSeparate(32774,32774),rr[0]=32774,rr[1]=32774,et.blendFuncSeparate(770,771,773,1),Br[0]=770,Br[1]=771,Br[2]=773,Br[3]=1,Ti=i.call(this,It,Ri,0),Ti?et.enable(2929):et.disable(2929),_r.depth_enable=Ti,en=Ri.viewport,ii=en.x|0,Xi=en.y|0,aa="width"in en?en.width|0:It.framebufferWidth-ii,Mn="height"in en?en.height|0:It.framebufferHeight-Xi,et.scissor(ii,Xi,aa,Mn),Lr[0]=ii,Lr[1]=Xi,Lr[2]=aa,Lr[3]=Mn,a?et.enable(3089):et.disable(3089),_r.scissor_enable=a,o?et.enable(2960):et.disable(2960),_r.stencil_enable=o,Un=_r.profile,Un&&(Ga=performance.now(),r.count++),et.useProgram(s.program),ma=ge.angle_instanced_arrays,Ie.setVAO(null),oa=Ri.positionBuffer,Yr.buffer=oa,ka=!1,so=1,Kr=0,Ia=0,Yo=0,fa=0,kn=null,Aa=0,ys=!1,uo=5126,ls=0,$a=0,fo=0,pe(Yr)?(ka=!0,kn=Re.createStream(34962,Yr),uo=kn.dtype):(kn=Re.getBuffer(Yr),kn?uo=kn.dtype:"constant"in Yr?(so=2,typeof Yr.constant=="number"?(Kr=Yr.constant,Ia=Yo=fa=0):(Kr=Yr.constant.length>0?Yr.constant[0]:0,Ia=Yr.constant.length>1?Yr.constant[1]:0,Yo=Yr.constant.length>2?Yr.constant[2]:0,fa=Yr.constant.length>3?Yr.constant[3]:0)):(pe(Yr.buffer)?kn=Re.createStream(34962,Yr.buffer):kn=Re.getBuffer(Yr.buffer),uo="type"in Yr?ti[Yr.type]:kn.dtype,ys=!!Yr.normalized,Aa=Yr.size|0,ls=Yr.offset|0,$a=Yr.stride|0,fo=Yr.divisor|0)),mn=u.location,ra=Oe[mn],so===1?(ra.buffer||et.enableVertexAttribArray(mn),wa=Aa||2,(ra.type!==uo||ra.size!==wa||ra.buffer!==kn||ra.normalized!==ys||ra.offset!==ls||ra.stride!==$a)&&(et.bindBuffer(34962,kn.buffer),et.vertexAttribPointer(mn,wa,uo,ys,$a,ls),ra.type=uo,ra.size=wa,ra.buffer=kn,ra.normalized=ys,ra.offset=ls,ra.stride=$a),ra.divisor!==fo&&(ma.vertexAttribDivisorANGLE(mn,fo),ra.divisor=fo)):(ra.buffer&&(et.disableVertexAttribArray(mn),ra.buffer=null),(ra.x!==Kr||ra.y!==Ia||ra.z!==Yo||ra.w!==fa)&&(et.vertexAttrib4f(mn,Kr,Ia,Yo,fa),ra.x=Kr,ra.y=Ia,ra.z=Yo,ra.w=fa)),ws=Ri.positionFractBuffer,Fi.buffer=ws,Co=!1,Po=1,Wi=0,gn=0,Ps=0,Ha=0,Sn=null,ao=0,Ba=!1,Ko=5126,Qo=0,Hi=0,Sa=0,pe(Fi)?(Co=!0,Sn=Re.createStream(34962,Fi),Ko=Sn.dtype):(Sn=Re.getBuffer(Fi),Sn?Ko=Sn.dtype:"constant"in Fi?(Po=2,typeof Fi.constant=="number"?(Wi=Fi.constant,gn=Ps=Ha=0):(Wi=Fi.constant.length>0?Fi.constant[0]:0,gn=Fi.constant.length>1?Fi.constant[1]:0,Ps=Fi.constant.length>2?Fi.constant[2]:0,Ha=Fi.constant.length>3?Fi.constant[3]:0)):(pe(Fi.buffer)?Sn=Re.createStream(34962,Fi.buffer):Sn=Re.getBuffer(Fi.buffer),Ko="type"in Fi?ti[Fi.type]:Sn.dtype,Ba=!!Fi.normalized,ao=Fi.size|0,Qo=Fi.offset|0,Hi=Fi.stride|0,Sa=Fi.divisor|0)),Qa=l.location,vn=Oe[Qa],Po===1?(vn.buffer||et.enableVertexAttribArray(Qa),da=ao||2,(vn.type!==Ko||vn.size!==da||vn.buffer!==Sn||vn.normalized!==Ba||vn.offset!==Qo||vn.stride!==Hi)&&(et.bindBuffer(34962,Sn.buffer),et.vertexAttribPointer(Qa,da,Ko,Ba,Hi,Qo),vn.type=Ko,vn.size=da,vn.buffer=Sn,vn.normalized=Ba,vn.offset=Qo,vn.stride=Hi),vn.divisor!==Sa&&(ma.vertexAttribDivisorANGLE(Qa,Sa),vn.divisor=Sa)):(vn.buffer&&(et.disableVertexAttribArray(Qa),vn.buffer=null),(vn.x!==Wi||vn.y!==gn||vn.z!==Ps||vn.w!==Ha)&&(et.vertexAttrib4f(Qa,Wi,gn,Ps,Ha),vn.x=Wi,vn.y=gn,vn.z=Ps,vn.w=Ha)),la=Ri.positionBuffer,oi.buffer=la,vo=!1,Ts=1,ps=0,co=0,mo=0,No=0,jn=null,Go=0,Ys=!1,qs=5126,Ns=0,Oa=0,ha=0,pe(oi)?(vo=!0,jn=Re.createStream(34962,oi),qs=jn.dtype):(jn=Re.getBuffer(oi),jn?qs=jn.dtype:"constant"in oi?(Ts=2,typeof oi.constant=="number"?(ps=oi.constant,co=mo=No=0):(ps=oi.constant.length>0?oi.constant[0]:0,co=oi.constant.length>1?oi.constant[1]:0,mo=oi.constant.length>2?oi.constant[2]:0,No=oi.constant.length>3?oi.constant[3]:0)):(pe(oi.buffer)?jn=Re.createStream(34962,oi.buffer):jn=Re.getBuffer(oi.buffer),qs="type"in oi?ti[oi.type]:jn.dtype,Ys=!!oi.normalized,Go=oi.size|0,Ns=oi.offset|0,Oa=oi.stride|0,ha=oi.divisor|0)),Vs=f.location,Ya=Oe[Vs],Ts===1?(Ya.buffer||et.enableVertexAttribArray(Vs),_n=Go||2,(Ya.type!==qs||Ya.size!==_n||Ya.buffer!==jn||Ya.normalized!==Ys||Ya.offset!==Ns||Ya.stride!==Oa)&&(et.bindBuffer(34962,jn.buffer),et.vertexAttribPointer(Vs,_n,qs,Ys,Oa,Ns),Ya.type=qs,Ya.size=_n,Ya.buffer=jn,Ya.normalized=Ys,Ya.offset=Ns,Ya.stride=Oa),Ya.divisor!==ha&&(ma.vertexAttribDivisorANGLE(Vs,ha),Ya.divisor=ha)):(Ya.buffer&&(et.disableVertexAttribArray(Vs),Ya.buffer=null),(Ya.x!==ps||Ya.y!==co||Ya.z!==mo||Ya.w!==No)&&(et.vertexAttrib4f(Vs,ps,co,mo,No),Ya.x=ps,Ya.y=co,Ya.z=mo,Ya.w=No)),Vn=Ri.positionFractBuffer,an.buffer=Vn,wo=!1,Ra=1,Xn=0,un=0,$n=0,Ka=0,qn=null,Eo=0,Ja=!1,lo=5126,eo=0,sa=0,es=0,pe(an)?(wo=!0,qn=Re.createStream(34962,an),lo=qn.dtype):(qn=Re.getBuffer(an),qn?lo=qn.dtype:"constant"in an?(Ra=2,typeof an.constant=="number"?(Xn=an.constant,un=$n=Ka=0):(Xn=an.constant.length>0?an.constant[0]:0,un=an.constant.length>1?an.constant[1]:0,$n=an.constant.length>2?an.constant[2]:0,Ka=an.constant.length>3?an.constant[3]:0)):(pe(an.buffer)?qn=Re.createStream(34962,an.buffer):qn=Re.getBuffer(an.buffer),lo="type"in an?ti[an.type]:qn.dtype,Ja=!!an.normalized,Eo=an.size|0,eo=an.offset|0,sa=an.stride|0,es=an.divisor|0)),Na=c.location,rn=Oe[Na],Ra===1?(rn.buffer||et.enableVertexAttribArray(Na),Pa=Eo||2,(rn.type!==lo||rn.size!==Pa||rn.buffer!==qn||rn.normalized!==Ja||rn.offset!==eo||rn.stride!==sa)&&(et.bindBuffer(34962,qn.buffer),et.vertexAttribPointer(Na,Pa,lo,Ja,sa,eo),rn.type=lo,rn.size=Pa,rn.buffer=qn,rn.normalized=Ja,rn.offset=eo,rn.stride=sa),rn.divisor!==es&&(ma.vertexAttribDivisorANGLE(Na,es),rn.divisor=es)):(rn.buffer&&(et.disableVertexAttribArray(Na),rn.buffer=null),(rn.x!==Xn||rn.y!==un||rn.z!==$n||rn.w!==Ka)&&(et.vertexAttrib4f(Na,Xn,un,$n,Ka),rn.x=Xn,rn.y=un,rn.z=$n,rn.w=Ka)),to=Ri.colorBuffer,nn.buffer=to,yo=!1,Jo=1,To=0,Dn=0,_a=0,Ws=0,Ca=null,Es=0,As=!1,Ho=5126,Wa=0,Ao=0,ts=0,pe(nn)?(yo=!0,Ca=Re.createStream(34962,nn),Ho=Ca.dtype):(Ca=Re.getBuffer(nn),Ca?Ho=Ca.dtype:"constant"in nn?(Jo=2,typeof nn.constant=="number"?(To=nn.constant,Dn=_a=Ws=0):(To=nn.constant.length>0?nn.constant[0]:0,Dn=nn.constant.length>1?nn.constant[1]:0,_a=nn.constant.length>2?nn.constant[2]:0,Ws=nn.constant.length>3?nn.constant[3]:0)):(pe(nn.buffer)?Ca=Re.createStream(34962,nn.buffer):Ca=Re.getBuffer(nn.buffer),Ho="type"in nn?ti[nn.type]:Ca.dtype,As=!!nn.normalized,Es=nn.size|0,Wa=nn.offset|0,Ao=nn.stride|0,ts=nn.divisor|0)),Wo=h.location,qa=Oe[Wo],Jo===1?(qa.buffer||et.enableVertexAttribArray(Wo),ln=Es||4,(qa.type!==Ho||qa.size!==ln||qa.buffer!==Ca||qa.normalized!==As||qa.offset!==Wa||qa.stride!==Ao)&&(et.bindBuffer(34962,Ca.buffer),et.vertexAttribPointer(Wo,ln,Ho,As,Ao,Wa),qa.type=Ho,qa.size=ln,qa.buffer=Ca,qa.normalized=As,qa.offset=Wa,qa.stride=Ao),qa.divisor!==ts&&(ma.vertexAttribDivisorANGLE(Wo,ts),qa.divisor=ts)):(qa.buffer&&(et.disableVertexAttribArray(Wo),qa.buffer=null),(qa.x!==To||qa.y!==Dn||qa.z!==_a||qa.w!==Ws)&&(et.vertexAttrib4f(Wo,To,Dn,_a,Ws),qa.x=To,qa.y=Dn,qa.z=_a,qa.w=Ws)),Bo=p.location,ko=Oe[Bo],ko.buffer||et.enableVertexAttribArray(Bo),(ko.type!==5126||ko.size!==1||ko.buffer!==d||ko.normalized!==!1||ko.offset!==0||ko.stride!==8)&&(et.bindBuffer(34962,d.buffer),et.vertexAttribPointer(Bo,1,5126,!1,8,0),ko.type=5126,ko.size=1,ko.buffer=d,ko.normalized=!1,ko.offset=0,ko.stride=8),ko.divisor!==0&&(ma.vertexAttribDivisorANGLE(Bo,0),ko.divisor=0),oo=_.location,za=Oe[oo],za.buffer||et.enableVertexAttribArray(oo),(za.type!==5126||za.size!==1||za.buffer!==d||za.normalized!==!1||za.offset!==4||za.stride!==8)&&(et.bindBuffer(34962,d.buffer),et.vertexAttribPointer(oo,1,5126,!1,8,4),za.type=5126,za.size=1,za.buffer=d,za.normalized=!1,za.offset=4,za.stride=8),za.divisor!==0&&(ma.vertexAttribDivisorANGLE(oo,0),za.divisor=0),ea=Ri.dashLength,et.uniform1f(b.location,ea),rs=Ri.dashTexture,rs&&rs._reglType==="framebuffer"&&(rs=rs.color[0]),$s=rs._texture,et.uniform1i(v.location,$s.bind()),us=Ri.depth,et.uniform1f(k.location,us),Ds=Ri.opacity,et.uniform1f(E.location,Ds),fl=Ri.scale,as=fl[0],Ma=fl[1],et.uniform2f(A.location,as,Ma),Qs=Ri.scaleFract,ho=Qs[0],gs=Qs[1],et.uniform2f(L.location,ho,gs),Vo=Ri.thickness,et.uniform1f(x.location,Vo),Do=Ri.translate,Lo=Do[0],xs=Do[1],et.uniform2f(C.location,Lo,xs),ks=Ri.translateFract,Ea=ks[0],Jn=ks[1],et.uniform2f(M.location,Ea,Jn),Oo=P.call(this,It,Ri,0),rl=Oo[0],Gs=Oo[1],bs=Oo[2],zs=Oo[3],et.uniform4f(m.location,rl,Gs,bs,zs),$o=yr.elements,$o?et.bindBuffer(34963,$o.buffer.buffer):Ie.currentVAO&&($o=Ut.getElements(Ie.currentVAO.elements),$o&&et.bindBuffer(34963,$o.buffer.buffer)),Ta=Ri.count,Ta>0?$o?ma.drawElementsInstancedANGLE(5,4,$o.type,0<<($o.type-5121>>1),Ta):ma.drawArraysInstancedANGLE(5,0,4,Ta):Ta<0&&($o?et.drawElements(5,4,$o.type,0<<($o.type-5121>>1)):et.drawArrays(5,0,4)),_r.dirty=!0,Ie.setVAO(null),It.viewportWidth=gr,It.viewportHeight=Zr,Un&&(r.cpuTime+=performance.now()-Ga),ka&&Re.destroyStream(kn),Co&&Re.destroyStream(Sn),vo&&Re.destroyStream(jn),wo&&Re.destroyStream(qn),yo&&Re.destroyStream(Ca),$s.unbind()},scope:function(Ri,Ii,xn){var bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl,ll,il,zl,Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt,pt,Ht;bi=Ri.viewport,Xr=bi.x|0,ct=bi.y|0,tr="width"in bi?bi.width|0:It.framebufferWidth-Xr,pr="height"in bi?bi.height|0:It.framebufferHeight-ct,gr=It.viewportWidth,It.viewportWidth=tr,Zr=It.viewportHeight,It.viewportHeight=pr,Ti=Nr[0],Nr[0]=Xr,en=Nr[1],Nr[1]=ct,ii=Nr[2],Nr[2]=tr,Xi=Nr[3],Nr[3]=pr,aa=dt[0],dt[0]=T,Mn=dt[1],dt[1]=B,Un=dt[2],dt[2]=F,Ga=dt[3],dt[3]=U,ma=cr.blend_enable,cr.blend_enable=G,oa=zt[0],zt[0]=j,ka=zt[1],zt[1]=W,so=Gr[0],Gr[0]=N,Kr=Gr[1],Gr[1]=H,Ia=Gr[2],Gr[2]=re,Yo=Gr[3],Gr[3]=ae,fa=i.call(this,It,Ri,xn),kn=cr.depth_enable,cr.depth_enable=fa,Aa=Ri.viewport,ys=Aa.x|0,uo=Aa.y|0,ls="width"in Aa?Aa.width|0:It.framebufferWidth-ys,$a="height"in Aa?Aa.height|0:It.framebufferHeight-uo,fo=xr[0],xr[0]=ys,mn=xr[1],xr[1]=uo,ra=xr[2],xr[2]=ls,wa=xr[3],xr[3]=$a,ws=cr.scissor_enable,cr.scissor_enable=be,Co=cr.stencil_enable,cr.stencil_enable=ze,Po=_r.profile,Po&&(Wi=performance.now(),r.count++),gn=yr.offset,yr.offset=Ce,Ps=yr.count,yr.count=de,Ha=Ri.count,Sn=yr.instances,yr.instances=Ha,ao=yr.primitive,yr.primitive=te,Ba=ke.call(this,It,Ri,xn),Ko=Fe[Ee],Fe[Ee]=Ba,Qo=Ri.miterLimit,Hi=Fe[Me],Fe[Me]=Qo,Sa=Ri.scale,Qa=Fe[Ue],Fe[Ue]=Sa,vn=Ri.scaleFract,da=Fe[De],Fe[De]=vn,la=Ri.translateFract,vo=Fe[ye],Fe[ye]=la,Ts=Ri.translate,ps=Fe[qe],Fe[qe]=Ts,co=Ri.thickness,mo=Fe[ce],Fe[ce]=co,No=Ri.dashTexture,jn=Fe[Je],Fe[Je]=No,Go=Ri.opacity,Ys=Fe[nt],Fe[nt]=Go,qs=It.pixelRatio,Ns=Fe[gt],Fe[gt]=qs,Oa=Ri.id,ha=Fe[Nt],Fe[Nt]=Oa,Vs=Ri.dashLength,Ya=Fe[at],Fe[at]=Vs,_n=P.call(this,It,Ri,xn),Vn=Fe[Ke],Fe[Ke]=_n,wo=Ri.depth,Ra=Fe[Ct],Fe[Ct]=wo,Xn=wt.state,wt.state=1,un=wt.x,wt.x=0,$n=wt.y,wt.y=0,Ka=wt.z,wt.z=0,qn=wt.w,wt.w=0,Eo=wt.buffer,wt.buffer=d,Ja=wt.size,wt.size=0,lo=wt.normalized,wt.normalized=!1,eo=wt.type,wt.type=5126,sa=wt.offset,wt.offset=0,es=wt.stride,wt.stride=8,Na=wt.divisor,wt.divisor=0,rn=St.state,St.state=1,Pa=St.x,St.x=0,to=St.y,St.y=0,yo=St.z,St.z=0,Jo=St.w,St.w=0,To=St.buffer,St.buffer=d,Dn=St.size,St.size=0,_a=St.normalized,St.normalized=!1,Ws=St.type,St.type=5126,Ca=St.offset,St.offset=4,Es=St.stride,St.stride=8,As=St.divisor,St.divisor=0,Ho=Ri.positionBuffer,Yr.buffer=Ho,Wa=!1,Ao=1,ts=0,Wo=0,qa=0,ln=0,Bo=null,ko=0,oo=!1,za=5126,ea=0,rs=0,$s=0,pe(Yr)?(Wa=!0,Bo=Re.createStream(34962,Yr),za=Bo.dtype):(Bo=Re.getBuffer(Yr),Bo?za=Bo.dtype:"constant"in Yr?(Ao=2,typeof Yr.constant=="number"?(ts=Yr.constant,Wo=qa=ln=0):(ts=Yr.constant.length>0?Yr.constant[0]:0,Wo=Yr.constant.length>1?Yr.constant[1]:0,qa=Yr.constant.length>2?Yr.constant[2]:0,ln=Yr.constant.length>3?Yr.constant[3]:0)):(pe(Yr.buffer)?Bo=Re.createStream(34962,Yr.buffer):Bo=Re.getBuffer(Yr.buffer),za="type"in Yr?ti[Yr.type]:Bo.dtype,oo=!!Yr.normalized,ko=Yr.size|0,ea=Yr.offset|0,rs=Yr.stride|0,$s=Yr.divisor|0)),us=Dt.state,Dt.state=Ao,Ds=Dt.x,Dt.x=ts,fl=Dt.y,Dt.y=Wo,as=Dt.z,Dt.z=qa,Ma=Dt.w,Dt.w=ln,Qs=Dt.buffer,Dt.buffer=Bo,ho=Dt.size,Dt.size=ko,gs=Dt.normalized,Dt.normalized=oo,Vo=Dt.type,Dt.type=za,Do=Dt.offset,Dt.offset=ea,Lo=Dt.stride,Dt.stride=rs,xs=Dt.divisor,Dt.divisor=$s,ks=Ri.positionBuffer,oi.buffer=ks,Ea=!1,Jn=1,Oo=0,rl=0,Gs=0,bs=0,zs=null,$o=0,Ta=!1,os=5126,_l=0,Ss=0,po=0,pe(oi)?(Ea=!0,zs=Re.createStream(34962,oi),os=zs.dtype):(zs=Re.getBuffer(oi),zs?os=zs.dtype:"constant"in oi?(Jn=2,typeof oi.constant=="number"?(Oo=oi.constant,rl=Gs=bs=0):(Oo=oi.constant.length>0?oi.constant[0]:0,rl=oi.constant.length>1?oi.constant[1]:0,Gs=oi.constant.length>2?oi.constant[2]:0,bs=oi.constant.length>3?oi.constant[3]:0)):(pe(oi.buffer)?zs=Re.createStream(34962,oi.buffer):zs=Re.getBuffer(oi.buffer),os="type"in oi?ti[oi.type]:zs.dtype,Ta=!!oi.normalized,$o=oi.size|0,_l=oi.offset|0,Ss=oi.stride|0,po=oi.divisor|0)),go=Zt.state,Zt.state=Jn,ss=Zt.x,Zt.x=Oo,qo=Zt.y,Zt.y=rl,zo=Zt.z,Zt.z=Gs,io=Zt.w,Zt.w=bs,Io=Zt.buffer,Zt.buffer=zs,Da=Zt.size,Zt.size=$o,vs=Zt.normalized,Zt.normalized=Ta,fs=Zt.type,Zt.type=os,cl=Zt.offset,Zt.offset=_l,el=Zt.stride,Zt.stride=Ss,Hs=Zt.divisor,Zt.divisor=po,Ro=Ri.positionFractBuffer,Fi.buffer=Ro,tl=!1,Fs=1,hl=0,Fa=0,Ms=0,jo=0,Rs=null,Is=0,Bs=!1,At=5126,Vt=0,wr=0,mr=0,pe(Fi)?(tl=!0,Rs=Re.createStream(34962,Fi),At=Rs.dtype):(Rs=Re.getBuffer(Fi),Rs?At=Rs.dtype:"constant"in Fi?(Fs=2,typeof Fi.constant=="number"?(hl=Fi.constant,Fa=Ms=jo=0):(hl=Fi.constant.length>0?Fi.constant[0]:0,Fa=Fi.constant.length>1?Fi.constant[1]:0,Ms=Fi.constant.length>2?Fi.constant[2]:0,jo=Fi.constant.length>3?Fi.constant[3]:0)):(pe(Fi.buffer)?Rs=Re.createStream(34962,Fi.buffer):Rs=Re.getBuffer(Fi.buffer),At="type"in Fi?ti[Fi.type]:Rs.dtype,Bs=!!Fi.normalized,Is=Fi.size|0,Vt=Fi.offset|0,wr=Fi.stride|0,mr=Fi.divisor|0)),Fr=Et.state,Et.state=Fs,_i=Et.x,Et.x=hl,Si=Et.y,Et.y=Fa,Ci=Et.z,Et.z=Ms,Ki=Et.w,Et.w=jo,Fn=Et.buffer,Et.buffer=Rs,Pi=Et.size,Et.size=Is,di=Et.normalized,Et.normalized=Bs,Li=Et.type,Et.type=At,Mi=Et.offset,Et.offset=Vt,Gn=Et.stride,Et.stride=wr,ta=Et.divisor,Et.divisor=mr,ya=Ri.positionFractBuffer,an.buffer=ya,ia=!1,pa=1,va=0,zn=0,is=0,Cs=0,Ks=null,dl=0,xl=!1,Bl=5126,bl=0,eu=0,Zl=0,pe(an)?(ia=!0,Ks=Re.createStream(34962,an),Bl=Ks.dtype):(Ks=Re.getBuffer(an),Ks?Bl=Ks.dtype:"constant"in an?(pa=2,typeof an.constant=="number"?(va=an.constant,zn=is=Cs=0):(va=an.constant.length>0?an.constant[0]:0,zn=an.constant.length>1?an.constant[1]:0,is=an.constant.length>2?an.constant[2]:0,Cs=an.constant.length>3?an.constant[3]:0)):(pe(an.buffer)?Ks=Re.createStream(34962,an.buffer):Ks=Re.getBuffer(an.buffer),Bl="type"in an?ti[an.type]:Ks.dtype,xl=!!an.normalized,dl=an.size|0,bl=an.offset|0,eu=an.stride|0,Zl=an.divisor|0)),Ul=Te.state,Te.state=pa,ja=Te.x,Te.x=va,ns=Te.y,Te.y=zn,Js=Te.z,Te.z=is,cs=Te.w,Te.w=Cs,sl=Te.buffer,Te.buffer=Ks,ll=Te.size,Te.size=dl,il=Te.normalized,Te.normalized=xl,zl=Te.type,Te.type=Bl,Ml=Te.offset,Te.offset=bl,Rl=Te.stride,Te.stride=eu,Tl=Te.divisor,Te.divisor=Zl,Ll=Ri.colorBuffer,nn.buffer=Ll,ms=!1,Os=1,Xl=0,Vl=0,Nl=0,le=0,w=null,q=0,Q=!1,ee=5126,ue=0,Ve=0,tt=0,pe(nn)?(ms=!0,w=Re.createStream(34962,nn),ee=w.dtype):(w=Re.getBuffer(nn),w?ee=w.dtype:"constant"in nn?(Os=2,typeof nn.constant=="number"?(Xl=nn.constant,Vl=Nl=le=0):(Xl=nn.constant.length>0?nn.constant[0]:0,Vl=nn.constant.length>1?nn.constant[1]:0,Nl=nn.constant.length>2?nn.constant[2]:0,le=nn.constant.length>3?nn.constant[3]:0)):(pe(nn.buffer)?w=Re.createStream(34962,nn.buffer):w=Re.getBuffer(nn.buffer),ee="type"in nn?ti[nn.type]:w.dtype,Q=!!nn.normalized,q=nn.size|0,ue=nn.offset|0,Ve=nn.stride|0,tt=nn.divisor|0)),mt=ot.state,ot.state=Os,Bt=ot.x,ot.x=Xl,ir=ot.y,ot.y=Vl,or=ot.z,ot.z=Nl,kr=ot.w,ot.w=le,Vr=ot.buffer,ot.buffer=w,he=ot.size,ot.size=q,Se=ot.normalized,ot.normalized=Q,Ne=ot.type,ot.type=ee,Ge=ot.offset,ot.offset=ue,lt=ot.stride,ot.stride=Ve,rt=ot.divisor,ot.divisor=tt,pt=xe.vert,xe.vert=Tt,Ht=xe.frag,xe.frag=vt,_r.dirty=!0,Ii(It,Ri,xn),It.viewportWidth=gr,It.viewportHeight=Zr,Nr[0]=Ti,Nr[1]=en,Nr[2]=ii,Nr[3]=Xi,dt[0]=aa,dt[1]=Mn,dt[2]=Un,dt[3]=Ga,cr.blend_enable=ma,zt[0]=oa,zt[1]=ka,Gr[0]=so,Gr[1]=Kr,Gr[2]=Ia,Gr[3]=Yo,cr.depth_enable=kn,xr[0]=fo,xr[1]=mn,xr[2]=ra,xr[3]=wa,cr.scissor_enable=ws,cr.stencil_enable=Co,Po&&(r.cpuTime+=performance.now()-Wi),yr.offset=gn,yr.count=Ps,yr.instances=Sn,yr.primitive=ao,Fe[Ee]=Ko,Fe[Me]=Hi,Fe[Ue]=Qa,Fe[De]=da,Fe[ye]=vo,Fe[qe]=ps,Fe[ce]=mo,Fe[Je]=jn,Fe[nt]=Ys,Fe[gt]=Ns,Fe[Nt]=ha,Fe[at]=Ya,Fe[Ke]=Vn,Fe[Ct]=Ra,wt.state=Xn,wt.x=un,wt.y=$n,wt.z=Ka,wt.w=qn,wt.buffer=Eo,wt.size=Ja,wt.normalized=lo,wt.type=eo,wt.offset=sa,wt.stride=es,wt.divisor=Na,St.state=rn,St.x=Pa,St.y=to,St.z=yo,St.w=Jo,St.buffer=To,St.size=Dn,St.normalized=_a,St.type=Ws,St.offset=Ca,St.stride=Es,St.divisor=As,Wa&&Re.destroyStream(Bo),Dt.state=us,Dt.x=Ds,Dt.y=fl,Dt.z=as,Dt.w=Ma,Dt.buffer=Qs,Dt.size=ho,Dt.normalized=gs,Dt.type=Vo,Dt.offset=Do,Dt.stride=Lo,Dt.divisor=xs,Ea&&Re.destroyStream(zs),Zt.state=go,Zt.x=ss,Zt.y=qo,Zt.z=zo,Zt.w=io,Zt.buffer=Io,Zt.size=Da,Zt.normalized=vs,Zt.type=fs,Zt.offset=cl,Zt.stride=el,Zt.divisor=Hs,tl&&Re.destroyStream(Rs),Et.state=Fr,Et.x=_i,Et.y=Si,Et.z=Ci,Et.w=Ki,Et.buffer=Fn,Et.size=Pi,Et.normalized=di,Et.type=Li,Et.offset=Mi,Et.stride=Gn,Et.divisor=ta,ia&&Re.destroyStream(Ks),Te.state=Ul,Te.x=ja,Te.y=ns,Te.z=Js,Te.w=cs,Te.buffer=sl,Te.size=ll,Te.normalized=il,Te.type=zl,Te.offset=Ml,Te.stride=Rl,Te.divisor=Tl,ms&&Re.destroyStream(w),ot.state=mt,ot.x=Bt,ot.y=ir,ot.z=or,ot.w=kr,ot.buffer=Vr,ot.size=he,ot.normalized=Se,ot.type=Ne,ot.offset=Ge,ot.stride=lt,ot.divisor=rt,xe.vert=pt,xe.frag=Ht,_r.dirty=!0},batch:function(Ri,Ii){var xn,bi,Xr,ct,tr,pr,gr;if(xn=ge.angle_instanced_arrays,bi=ft.next,bi!==ft.cur&&(bi?et.bindFramebuffer(36160,bi.framebuffer):et.bindFramebuffer(36160,null),ft.cur=bi),_r.dirty){var Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn;Zr=cr.dither,Zr!==_r.dither&&(Zr?et.enable(3024):et.disable(3024),_r.dither=Zr),Ti=cr.depth_func,Ti!==_r.depth_func&&(et.depthFunc(Ti),_r.depth_func=Ti),en=Er[0],ii=Er[1],(en!==Rr[0]||ii!==Rr[1])&&(et.depthRange(en,ii),Rr[0]=en,Rr[1]=ii),Xi=cr.depth_mask,Xi!==_r.depth_mask&&(et.depthMask(Xi),_r.depth_mask=Xi),aa=pi[0],Mn=pi[1],Un=pi[2],Ga=pi[3],(aa!==Di[0]||Mn!==Di[1]||Un!==Di[2]||Ga!==Di[3])&&(et.colorMask(aa,Mn,Un,Ga),Di[0]=aa,Di[1]=Mn,Di[2]=Un,Di[3]=Ga),ma=cr.cull_enable,ma!==_r.cull_enable&&(ma?et.enable(2884):et.disable(2884),_r.cull_enable=ma),oa=cr.cull_face,oa!==_r.cull_face&&(et.cullFace(oa),_r.cull_face=oa),ka=cr.frontFace,ka!==_r.frontFace&&(et.frontFace(ka),_r.frontFace=ka),so=cr.lineWidth,so!==_r.lineWidth&&(et.lineWidth(so),_r.lineWidth=so),Kr=cr.polygonOffset_enable,Kr!==_r.polygonOffset_enable&&(Kr?et.enable(32823):et.disable(32823),_r.polygonOffset_enable=Kr),Ia=ni[0],Yo=ni[1],(Ia!==$i[0]||Yo!==$i[1])&&(et.polygonOffset(Ia,Yo),$i[0]=Ia,$i[1]=Yo),fa=cr.sample_alpha,fa!==_r.sample_alpha&&(fa?et.enable(32926):et.disable(32926),_r.sample_alpha=fa),kn=cr.sample_enable,kn!==_r.sample_enable&&(kn?et.enable(32928):et.disable(32928),_r.sample_enable=kn),Aa=Qi[0],ys=Qi[1],(Aa!==si[0]||ys!==si[1])&&(et.sampleCoverage(Aa,ys),si[0]=Aa,si[1]=ys),uo=cr.stencil_mask,uo!==_r.stencil_mask&&(et.stencilMask(uo),_r.stencil_mask=uo),ls=Ai[0],$a=Ai[1],fo=Ai[2],(ls!==Ni[0]||$a!==Ni[1]||fo!==Ni[2])&&(et.stencilFunc(ls,$a,fo),Ni[0]=ls,Ni[1]=$a,Ni[2]=fo),mn=Rt[0],ra=Rt[1],wa=Rt[2],ws=Rt[3],(mn!==yt[0]||ra!==yt[1]||wa!==yt[2]||ws!==yt[3])&&(et.stencilOpSeparate(mn,ra,wa,ws),yt[0]=mn,yt[1]=ra,yt[2]=wa,yt[3]=ws),Co=Gt[0],Po=Gt[1],Wi=Gt[2],gn=Gt[3],(Co!==Wt[0]||Po!==Wt[1]||Wi!==Wt[2]||gn!==Wt[3])&&(et.stencilOpSeparate(Co,Po,Wi,gn),Wt[0]=Co,Wt[1]=Po,Wt[2]=Wi,Wt[3]=gn)}et.blendColor(0,0,0,0),Pt[0]=0,Pt[1]=0,Pt[2]=0,Pt[3]=0,Ye?et.enable(3042):et.disable(3042),_r.blend_enable=Ye,et.blendEquationSeparate(32774,32774),rr[0]=32774,rr[1]=32774,et.blendFuncSeparate(770,771,773,1),Br[0]=770,Br[1]=771,Br[2]=773,Br[3]=1,He?et.enable(3089):et.disable(3089),_r.scissor_enable=He,it?et.enable(2960):et.disable(2960),_r.stencil_enable=it,Xr=_r.profile,Xr&&(ct=performance.now(),r.count+=Ii),et.useProgram(s.program),tr=ge.angle_instanced_arrays;var Ps,Ha,Sn,ao,Ba;for(Ie.setVAO(null),Ps=p.location,Ha=Oe[Ps],Ha.buffer||et.enableVertexAttribArray(Ps),(Ha.type!==5126||Ha.size!==1||Ha.buffer!==d||Ha.normalized!==!1||Ha.offset!==0||Ha.stride!==8)&&(et.bindBuffer(34962,d.buffer),et.vertexAttribPointer(Ps,1,5126,!1,8,0),Ha.type=5126,Ha.size=1,Ha.buffer=d,Ha.normalized=!1,Ha.offset=0,Ha.stride=8),Ha.divisor!==0&&(tr.vertexAttribDivisorANGLE(Ps,0),Ha.divisor=0),Sn=_.location,ao=Oe[Sn],ao.buffer||et.enableVertexAttribArray(Sn),(ao.type!==5126||ao.size!==1||ao.buffer!==d||ao.normalized!==!1||ao.offset!==4||ao.stride!==8)&&(et.bindBuffer(34962,d.buffer),et.vertexAttribPointer(Sn,1,5126,!1,8,4),ao.type=5126,ao.size=1,ao.buffer=d,ao.normalized=!1,ao.offset=4,ao.stride=8),ao.divisor!==0&&(tr.vertexAttribDivisorANGLE(Sn,0),ao.divisor=0),Ba=yr.elements,Ba?et.bindBuffer(34963,Ba.buffer.buffer):Ie.currentVAO&&(Ba=Ut.getElements(Ie.currentVAO.elements),Ba&&et.bindBuffer(34963,Ba.buffer.buffer)),pr=0;pr0?Yr.constant[0]:0,qs=Yr.constant.length>1?Yr.constant[1]:0,Ns=Yr.constant.length>2?Yr.constant[2]:0,Oa=Yr.constant.length>3?Yr.constant[3]:0)):(pe(Yr.buffer)?ha=Re.createStream(34962,Yr.buffer):ha=Re.getBuffer(Yr.buffer),_n="type"in Yr?ti[Yr.type]:ha.dtype,Ya=!!Yr.normalized,Vs=Yr.size|0,Vn=Yr.offset|0,wo=Yr.stride|0,Ra=Yr.divisor|0)),Xn=u.location,un=Oe[Xn],Go===1?(un.buffer||et.enableVertexAttribArray(Xn),$n=Vs||2,(un.type!==_n||un.size!==$n||un.buffer!==ha||un.normalized!==Ya||un.offset!==Vn||un.stride!==wo)&&(et.bindBuffer(34962,ha.buffer),et.vertexAttribPointer(Xn,$n,_n,Ya,wo,Vn),un.type=_n,un.size=$n,un.buffer=ha,un.normalized=Ya,un.offset=Vn,un.stride=wo),un.divisor!==Ra&&(tr.vertexAttribDivisorANGLE(Xn,Ra),un.divisor=Ra)):(un.buffer&&(et.disableVertexAttribArray(Xn),un.buffer=null),(un.x!==Ys||un.y!==qs||un.z!==Ns||un.w!==Oa)&&(et.vertexAttrib4f(Xn,Ys,qs,Ns,Oa),un.x=Ys,un.y=qs,un.z=Ns,un.w=Oa)),Ka=gr.positionFractBuffer,Fi.buffer=Ka,qn=!1,Eo=1,Ja=0,lo=0,eo=0,sa=0,es=null,Na=0,rn=!1,Pa=5126,to=0,yo=0,Jo=0,pe(Fi)?(qn=!0,es=Re.createStream(34962,Fi),Pa=es.dtype):(es=Re.getBuffer(Fi),es?Pa=es.dtype:"constant"in Fi?(Eo=2,typeof Fi.constant=="number"?(Ja=Fi.constant,lo=eo=sa=0):(Ja=Fi.constant.length>0?Fi.constant[0]:0,lo=Fi.constant.length>1?Fi.constant[1]:0,eo=Fi.constant.length>2?Fi.constant[2]:0,sa=Fi.constant.length>3?Fi.constant[3]:0)):(pe(Fi.buffer)?es=Re.createStream(34962,Fi.buffer):es=Re.getBuffer(Fi.buffer),Pa="type"in Fi?ti[Fi.type]:es.dtype,rn=!!Fi.normalized,Na=Fi.size|0,to=Fi.offset|0,yo=Fi.stride|0,Jo=Fi.divisor|0)),To=l.location,Dn=Oe[To],Eo===1?(Dn.buffer||et.enableVertexAttribArray(To),_a=Na||2,(Dn.type!==Pa||Dn.size!==_a||Dn.buffer!==es||Dn.normalized!==rn||Dn.offset!==to||Dn.stride!==yo)&&(et.bindBuffer(34962,es.buffer),et.vertexAttribPointer(To,_a,Pa,rn,yo,to),Dn.type=Pa,Dn.size=_a,Dn.buffer=es,Dn.normalized=rn,Dn.offset=to,Dn.stride=yo),Dn.divisor!==Jo&&(tr.vertexAttribDivisorANGLE(To,Jo),Dn.divisor=Jo)):(Dn.buffer&&(et.disableVertexAttribArray(To),Dn.buffer=null),(Dn.x!==Ja||Dn.y!==lo||Dn.z!==eo||Dn.w!==sa)&&(et.vertexAttrib4f(To,Ja,lo,eo,sa),Dn.x=Ja,Dn.y=lo,Dn.z=eo,Dn.w=sa)),Ws=gr.positionBuffer,oi.buffer=Ws,Ca=!1,Es=1,As=0,Ho=0,Wa=0,Ao=0,ts=null,Wo=0,qa=!1,ln=5126,Bo=0,ko=0,oo=0,pe(oi)?(Ca=!0,ts=Re.createStream(34962,oi),ln=ts.dtype):(ts=Re.getBuffer(oi),ts?ln=ts.dtype:"constant"in oi?(Es=2,typeof oi.constant=="number"?(As=oi.constant,Ho=Wa=Ao=0):(As=oi.constant.length>0?oi.constant[0]:0,Ho=oi.constant.length>1?oi.constant[1]:0,Wa=oi.constant.length>2?oi.constant[2]:0,Ao=oi.constant.length>3?oi.constant[3]:0)):(pe(oi.buffer)?ts=Re.createStream(34962,oi.buffer):ts=Re.getBuffer(oi.buffer),ln="type"in oi?ti[oi.type]:ts.dtype,qa=!!oi.normalized,Wo=oi.size|0,Bo=oi.offset|0,ko=oi.stride|0,oo=oi.divisor|0)),za=f.location,ea=Oe[za],Es===1?(ea.buffer||et.enableVertexAttribArray(za),rs=Wo||2,(ea.type!==ln||ea.size!==rs||ea.buffer!==ts||ea.normalized!==qa||ea.offset!==Bo||ea.stride!==ko)&&(et.bindBuffer(34962,ts.buffer),et.vertexAttribPointer(za,rs,ln,qa,ko,Bo),ea.type=ln,ea.size=rs,ea.buffer=ts,ea.normalized=qa,ea.offset=Bo,ea.stride=ko),ea.divisor!==oo&&(tr.vertexAttribDivisorANGLE(za,oo),ea.divisor=oo)):(ea.buffer&&(et.disableVertexAttribArray(za),ea.buffer=null),(ea.x!==As||ea.y!==Ho||ea.z!==Wa||ea.w!==Ao)&&(et.vertexAttrib4f(za,As,Ho,Wa,Ao),ea.x=As,ea.y=Ho,ea.z=Wa,ea.w=Ao)),$s=gr.positionFractBuffer,an.buffer=$s,us=!1,Ds=1,fl=0,as=0,Ma=0,Qs=0,ho=null,gs=0,Vo=!1,Do=5126,Lo=0,xs=0,ks=0,pe(an)?(us=!0,ho=Re.createStream(34962,an),Do=ho.dtype):(ho=Re.getBuffer(an),ho?Do=ho.dtype:"constant"in an?(Ds=2,typeof an.constant=="number"?(fl=an.constant,as=Ma=Qs=0):(fl=an.constant.length>0?an.constant[0]:0,as=an.constant.length>1?an.constant[1]:0,Ma=an.constant.length>2?an.constant[2]:0,Qs=an.constant.length>3?an.constant[3]:0)):(pe(an.buffer)?ho=Re.createStream(34962,an.buffer):ho=Re.getBuffer(an.buffer),Do="type"in an?ti[an.type]:ho.dtype,Vo=!!an.normalized,gs=an.size|0,Lo=an.offset|0,xs=an.stride|0,ks=an.divisor|0)),Ea=c.location,Jn=Oe[Ea],Ds===1?(Jn.buffer||et.enableVertexAttribArray(Ea),Oo=gs||2,(Jn.type!==Do||Jn.size!==Oo||Jn.buffer!==ho||Jn.normalized!==Vo||Jn.offset!==Lo||Jn.stride!==xs)&&(et.bindBuffer(34962,ho.buffer),et.vertexAttribPointer(Ea,Oo,Do,Vo,xs,Lo),Jn.type=Do,Jn.size=Oo,Jn.buffer=ho,Jn.normalized=Vo,Jn.offset=Lo,Jn.stride=xs),Jn.divisor!==ks&&(tr.vertexAttribDivisorANGLE(Ea,ks),Jn.divisor=ks)):(Jn.buffer&&(et.disableVertexAttribArray(Ea),Jn.buffer=null),(Jn.x!==fl||Jn.y!==as||Jn.z!==Ma||Jn.w!==Qs)&&(et.vertexAttrib4f(Ea,fl,as,Ma,Qs),Jn.x=fl,Jn.y=as,Jn.z=Ma,Jn.w=Qs)),rl=gr.colorBuffer,nn.buffer=rl,Gs=!1,bs=1,zs=0,$o=0,Ta=0,os=0,_l=null,Ss=0,po=!1,go=5126,ss=0,qo=0,zo=0,pe(nn)?(Gs=!0,_l=Re.createStream(34962,nn),go=_l.dtype):(_l=Re.getBuffer(nn),_l?go=_l.dtype:"constant"in nn?(bs=2,typeof nn.constant=="number"?(zs=nn.constant,$o=Ta=os=0):(zs=nn.constant.length>0?nn.constant[0]:0,$o=nn.constant.length>1?nn.constant[1]:0,Ta=nn.constant.length>2?nn.constant[2]:0,os=nn.constant.length>3?nn.constant[3]:0)):(pe(nn.buffer)?_l=Re.createStream(34962,nn.buffer):_l=Re.getBuffer(nn.buffer),go="type"in nn?ti[nn.type]:_l.dtype,po=!!nn.normalized,Ss=nn.size|0,ss=nn.offset|0,qo=nn.stride|0,zo=nn.divisor|0)),io=h.location,Io=Oe[io],bs===1?(Io.buffer||et.enableVertexAttribArray(io),Da=Ss||4,(Io.type!==go||Io.size!==Da||Io.buffer!==_l||Io.normalized!==po||Io.offset!==ss||Io.stride!==qo)&&(et.bindBuffer(34962,_l.buffer),et.vertexAttribPointer(io,Da,go,po,qo,ss),Io.type=go,Io.size=Da,Io.buffer=_l,Io.normalized=po,Io.offset=ss,Io.stride=qo),Io.divisor!==zo&&(tr.vertexAttribDivisorANGLE(io,zo),Io.divisor=zo)):(Io.buffer&&(et.disableVertexAttribArray(io),Io.buffer=null),(Io.x!==zs||Io.y!==$o||Io.z!==Ta||Io.w!==os)&&(et.vertexAttrib4f(io,zs,$o,Ta,os),Io.x=zs,Io.y=$o,Io.z=Ta,Io.w=os)),vs=gr.dashLength,(!pr||fs!==vs)&&(fs=vs,et.uniform1f(b.location,vs)),cl=gr.dashTexture,cl&&cl._reglType==="framebuffer"&&(cl=cl.color[0]),el=cl._texture,et.uniform1i(v.location,el.bind()),Hs=gr.depth,(!pr||Ro!==Hs)&&(Ro=Hs,et.uniform1f(k.location,Hs)),tl=gr.opacity,(!pr||Fs!==tl)&&(Fs=tl,et.uniform1f(E.location,tl)),hl=gr.scale,Fa=hl[0],jo=hl[1],(!pr||Ms!==Fa||Rs!==jo)&&(Ms=Fa,Rs=jo,et.uniform2f(A.location,Fa,jo)),Is=gr.scaleFract,Bs=Is[0],Vt=Is[1],(!pr||At!==Bs||wr!==Vt)&&(At=Bs,wr=Vt,et.uniform2f(L.location,Bs,Vt)),mr=gr.thickness,(!pr||Fr!==mr)&&(Fr=mr,et.uniform1f(x.location,mr)),_i=gr.translate,Si=_i[0],Ki=_i[1],(!pr||Ci!==Si||Fn!==Ki)&&(Ci=Si,Fn=Ki,et.uniform2f(C.location,Si,Ki)),Pi=gr.translateFract,di=Pi[0],Mi=Pi[1],(!pr||Li!==di||Gn!==Mi)&&(Li=di,Gn=Mi,et.uniform2f(M.location,di,Mi)),ta=P.call(this,It,gr,pr),ya=ta[0],pa=ta[1],zn=ta[2],Cs=ta[3],(!pr||ia!==ya||va!==pa||is!==zn||Ks!==Cs)&&(ia=ya,va=pa,is=zn,Ks=Cs,et.uniform4f(m.location,ya,pa,zn,Cs)),dl=gr.count,dl>0?Ba?tr.drawElementsInstancedANGLE(5,4,Ba.type,0<<(Ba.type-5121>>1),dl):tr.drawArraysInstancedANGLE(5,0,4,dl):dl<0&&(Ba?et.drawElements(5,4,Ba.type,0<<(Ba.type-5121>>1)):et.drawArrays(5,0,4)),It.viewportWidth=vn,It.viewportHeight=da,jn&&Re.destroyStream(ha),qn&&Re.destroyStream(es),Ca&&Re.destroyStream(ts),us&&Re.destroyStream(ho),Gs&&Re.destroyStream(_l),el.unbind()}_r.dirty=!0,Ie.setVAO(null),Xr&&(r.cpuTime+=performance.now()-ct)}}}});var P8=Ae((Gxr,JNe)=>{JNe.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re){"use strict";var xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr;return xe=t.gl,Oe=t.context,Ie=t.strings,Fe=t.next,ft=t.current,ge=t.draw,fe=t.elements,pe=t.buffer,dt=t.shader,Pt=t.attributes,zt=t.vao,rr=t.uniforms,Gr=t.framebuffer,Br=t.extensions,Er=t.timer,Rr=t.isBufferArgs,pi=Fe.blend_color,Di=ft.blend_color,ni=Fe.blend_equation,$i=ft.blend_equation,Qi=Fe.blend_func,si=ft.blend_func,Ai=Fe.depth_range,Ni=ft.depth_range,Rt=Fe.colorMask,yt=ft.colorMask,Gt=Fe.polygonOffset_offset,Wt=ft.polygonOffset_offset,xr=Fe.sample_coverage,Lr=ft.sample_coverage,Nr=Fe.stencil_func,Or=ft.stencil_func,Hr=Fe.stencil_opFront,jr=ft.stencil_opFront,gi=Fe.stencil_opBack,ki=ft.stencil_opBack,Vi=Fe.scissor_box,ti=ft.scissor_box,tn=Fe.viewport,Yr=ft.viewport,oi={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Fi={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},an={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},nn={add:32774,subtract:32778,"reverse subtract":32779},Ri={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Ii={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},xn={cw:2304,ccw:2305},bi={},bi.stride=4,bi.offset=0,bi.divisor=1,Xr={},Xr.stride=4,Xr.offset=4,Xr.divisor=1,ct={},ct.stride=8,ct.offset=0,ct.divisor=1,tr={},tr.stride=8,tr.offset=8,tr.divisor=1,pr={},pr.stride=8,pr.offset=16,pr.divisor=1,gr={},gr.stride=8,gr.offset=24,gr.divisor=1,{draw:function(Zr){var Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms;if(Ti=Br.angle_instanced_arrays,en=Gr.next,en!==Gr.cur&&(en?xe.bindFramebuffer(36160,en.framebuffer):xe.bindFramebuffer(36160,null),Gr.cur=en),ft.dirty){var jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl;jo=Fe.dither,jo!==ft.dither&&(jo?xe.enable(3024):xe.disable(3024),ft.dither=jo),Rs=Fe.depth_func,Rs!==ft.depth_func&&(xe.depthFunc(Rs),ft.depth_func=Rs),Is=Ai[0],Bs=Ai[1],(Is!==Ni[0]||Bs!==Ni[1])&&(xe.depthRange(Is,Bs),Ni[0]=Is,Ni[1]=Bs),At=Fe.depth_mask,At!==ft.depth_mask&&(xe.depthMask(At),ft.depth_mask=At),Vt=Rt[0],wr=Rt[1],mr=Rt[2],Fr=Rt[3],(Vt!==yt[0]||wr!==yt[1]||mr!==yt[2]||Fr!==yt[3])&&(xe.colorMask(Vt,wr,mr,Fr),yt[0]=Vt,yt[1]=wr,yt[2]=mr,yt[3]=Fr),_i=Fe.frontFace,_i!==ft.frontFace&&(xe.frontFace(_i),ft.frontFace=_i),Si=Fe.lineWidth,Si!==ft.lineWidth&&(xe.lineWidth(Si),ft.lineWidth=Si),Ci=Fe.polygonOffset_enable,Ci!==ft.polygonOffset_enable&&(Ci?xe.enable(32823):xe.disable(32823),ft.polygonOffset_enable=Ci),Ki=Gt[0],Fn=Gt[1],(Ki!==Wt[0]||Fn!==Wt[1])&&(xe.polygonOffset(Ki,Fn),Wt[0]=Ki,Wt[1]=Fn),Pi=Fe.sample_alpha,Pi!==ft.sample_alpha&&(Pi?xe.enable(32926):xe.disable(32926),ft.sample_alpha=Pi),di=Fe.sample_enable,di!==ft.sample_enable&&(di?xe.enable(32928):xe.disable(32928),ft.sample_enable=di),Li=xr[0],Mi=xr[1],(Li!==Lr[0]||Mi!==Lr[1])&&(xe.sampleCoverage(Li,Mi),Lr[0]=Li,Lr[1]=Mi),Gn=Fe.stencil_mask,Gn!==ft.stencil_mask&&(xe.stencilMask(Gn),ft.stencil_mask=Gn),ta=Nr[0],ya=Nr[1],ia=Nr[2],(ta!==Or[0]||ya!==Or[1]||ia!==Or[2])&&(xe.stencilFunc(ta,ya,ia),Or[0]=ta,Or[1]=ya,Or[2]=ia),pa=Hr[0],va=Hr[1],zn=Hr[2],is=Hr[3],(pa!==jr[0]||va!==jr[1]||zn!==jr[2]||is!==jr[3])&&(xe.stencilOpSeparate(pa,va,zn,is),jr[0]=pa,jr[1]=va,jr[2]=zn,jr[3]=is),Cs=gi[0],Ks=gi[1],dl=gi[2],xl=gi[3],(Cs!==ki[0]||Ks!==ki[1]||dl!==ki[2]||xl!==ki[3])&&(xe.stencilOpSeparate(Cs,Ks,dl,xl),ki[0]=Cs,ki[1]=Ks,ki[2]=dl,ki[3]=xl)}ii=Zr.viewport,Xi=ii.x|0,aa=ii.y|0,Mn="width"in ii?ii.width|0:Oe.framebufferWidth-Xi,Un="height"in ii?ii.height|0:Oe.framebufferHeight-aa,Ga=Oe.viewportWidth,Oe.viewportWidth=Mn,ma=Oe.viewportHeight,Oe.viewportHeight=Un,xe.viewport(Xi,aa,Mn,Un),Yr[0]=Xi,Yr[1]=aa,Yr[2]=Mn,Yr[3]=Un,xe.blendColor(0,0,0,0),Di[0]=0,Di[1]=0,Di[2]=0,Di[3]=0,n?xe.enable(3042):xe.disable(3042),ft.blend_enable=n,xe.blendEquationSeparate(32774,32774),$i[0]=32774,$i[1]=32774,xe.blendFuncSeparate(770,771,773,1),si[0]=770,si[1]=771,si[2]=773,si[3]=1,i?xe.enable(2884):xe.disable(2884),ft.cull_enable=i,xe.cullFace(a),ft.cull_face=a,oa=o.call(this,Oe,Zr,0),oa?xe.enable(2929):xe.disable(2929),ft.depth_enable=oa,ka=Zr.viewport,so=ka.x|0,Kr=ka.y|0,Ia="width"in ka?ka.width|0:Oe.framebufferWidth-so,Yo="height"in ka?ka.height|0:Oe.framebufferHeight-Kr,xe.scissor(so,Kr,Ia,Yo),ti[0]=so,ti[1]=Kr,ti[2]=Ia,ti[3]=Yo,s?xe.enable(3089):xe.disable(3089),ft.scissor_enable=s,u?xe.enable(2960):xe.disable(2960),ft.stencil_enable=u,fa=ft.profile,fa&&(kn=performance.now(),r.count++),xe.useProgram(l.program),Aa=Br.angle_instanced_arrays,zt.setVAO(null),ys=Zr.colorBuffer,bi.buffer=ys,uo=!1,ls=1,$a=0,fo=0,mn=0,ra=0,wa=null,ws=0,Co=!1,Po=5126,Wi=0,gn=0,Ps=0,Rr(bi)?(uo=!0,wa=pe.createStream(34962,bi),Po=wa.dtype):(wa=pe.getBuffer(bi),wa?Po=wa.dtype:"constant"in bi?(ls=2,typeof bi.constant=="number"?($a=bi.constant,fo=mn=ra=0):($a=bi.constant.length>0?bi.constant[0]:0,fo=bi.constant.length>1?bi.constant[1]:0,mn=bi.constant.length>2?bi.constant[2]:0,ra=bi.constant.length>3?bi.constant[3]:0)):(Rr(bi.buffer)?wa=pe.createStream(34962,bi.buffer):wa=pe.getBuffer(bi.buffer),Po="type"in bi?Ii[bi.type]:wa.dtype,Co=!!bi.normalized,ws=bi.size|0,Wi=bi.offset|0,gn=bi.stride|0,Ps=bi.divisor|0)),Ha=f.location,Sn=Pt[Ha],ls===1?(Sn.buffer||xe.enableVertexAttribArray(Ha),ao=ws||4,(Sn.type!==Po||Sn.size!==ao||Sn.buffer!==wa||Sn.normalized!==Co||Sn.offset!==Wi||Sn.stride!==gn)&&(xe.bindBuffer(34962,wa.buffer),xe.vertexAttribPointer(Ha,ao,Po,Co,gn,Wi),Sn.type=Po,Sn.size=ao,Sn.buffer=wa,Sn.normalized=Co,Sn.offset=Wi,Sn.stride=gn),Sn.divisor!==Ps&&(Aa.vertexAttribDivisorANGLE(Ha,Ps),Sn.divisor=Ps)):(Sn.buffer&&(xe.disableVertexAttribArray(Ha),Sn.buffer=null),(Sn.x!==$a||Sn.y!==fo||Sn.z!==mn||Sn.w!==ra)&&(xe.vertexAttrib4f(Ha,$a,fo,mn,ra),Sn.x=$a,Sn.y=fo,Sn.z=mn,Sn.w=ra)),Ba=Zr.positionBuffer,tr.buffer=Ba,Ko=!1,Qo=1,Hi=0,Sa=0,Qa=0,vn=0,da=null,la=0,vo=!1,Ts=5126,ps=0,co=0,mo=0,Rr(tr)?(Ko=!0,da=pe.createStream(34962,tr),Ts=da.dtype):(da=pe.getBuffer(tr),da?Ts=da.dtype:"constant"in tr?(Qo=2,typeof tr.constant=="number"?(Hi=tr.constant,Sa=Qa=vn=0):(Hi=tr.constant.length>0?tr.constant[0]:0,Sa=tr.constant.length>1?tr.constant[1]:0,Qa=tr.constant.length>2?tr.constant[2]:0,vn=tr.constant.length>3?tr.constant[3]:0)):(Rr(tr.buffer)?da=pe.createStream(34962,tr.buffer):da=pe.getBuffer(tr.buffer),Ts="type"in tr?Ii[tr.type]:da.dtype,vo=!!tr.normalized,la=tr.size|0,ps=tr.offset|0,co=tr.stride|0,mo=tr.divisor|0)),No=c.location,jn=Pt[No],Qo===1?(jn.buffer||xe.enableVertexAttribArray(No),Go=la||2,(jn.type!==Ts||jn.size!==Go||jn.buffer!==da||jn.normalized!==vo||jn.offset!==ps||jn.stride!==co)&&(xe.bindBuffer(34962,da.buffer),xe.vertexAttribPointer(No,Go,Ts,vo,co,ps),jn.type=Ts,jn.size=Go,jn.buffer=da,jn.normalized=vo,jn.offset=ps,jn.stride=co),jn.divisor!==mo&&(Aa.vertexAttribDivisorANGLE(No,mo),jn.divisor=mo)):(jn.buffer&&(xe.disableVertexAttribArray(No),jn.buffer=null),(jn.x!==Hi||jn.y!==Sa||jn.z!==Qa||jn.w!==vn)&&(xe.vertexAttrib4f(No,Hi,Sa,Qa,vn),jn.x=Hi,jn.y=Sa,jn.z=Qa,jn.w=vn)),Ys=Zr.colorBuffer,Xr.buffer=Ys,qs=!1,Ns=1,Oa=0,ha=0,Vs=0,Ya=0,_n=null,Vn=0,wo=!1,Ra=5126,Xn=0,un=0,$n=0,Rr(Xr)?(qs=!0,_n=pe.createStream(34962,Xr),Ra=_n.dtype):(_n=pe.getBuffer(Xr),_n?Ra=_n.dtype:"constant"in Xr?(Ns=2,typeof Xr.constant=="number"?(Oa=Xr.constant,ha=Vs=Ya=0):(Oa=Xr.constant.length>0?Xr.constant[0]:0,ha=Xr.constant.length>1?Xr.constant[1]:0,Vs=Xr.constant.length>2?Xr.constant[2]:0,Ya=Xr.constant.length>3?Xr.constant[3]:0)):(Rr(Xr.buffer)?_n=pe.createStream(34962,Xr.buffer):_n=pe.getBuffer(Xr.buffer),Ra="type"in Xr?Ii[Xr.type]:_n.dtype,wo=!!Xr.normalized,Vn=Xr.size|0,Xn=Xr.offset|0,un=Xr.stride|0,$n=Xr.divisor|0)),Ka=h.location,qn=Pt[Ka],Ns===1?(qn.buffer||xe.enableVertexAttribArray(Ka),Eo=Vn||4,(qn.type!==Ra||qn.size!==Eo||qn.buffer!==_n||qn.normalized!==wo||qn.offset!==Xn||qn.stride!==un)&&(xe.bindBuffer(34962,_n.buffer),xe.vertexAttribPointer(Ka,Eo,Ra,wo,un,Xn),qn.type=Ra,qn.size=Eo,qn.buffer=_n,qn.normalized=wo,qn.offset=Xn,qn.stride=un),qn.divisor!==$n&&(Aa.vertexAttribDivisorANGLE(Ka,$n),qn.divisor=$n)):(qn.buffer&&(xe.disableVertexAttribArray(Ka),qn.buffer=null),(qn.x!==Oa||qn.y!==ha||qn.z!==Vs||qn.w!==Ya)&&(xe.vertexAttrib4f(Ka,Oa,ha,Vs,Ya),qn.x=Oa,qn.y=ha,qn.z=Vs,qn.w=Ya)),Ja=Zr.positionBuffer,pr.buffer=Ja,lo=!1,eo=1,sa=0,es=0,Na=0,rn=0,Pa=null,to=0,yo=!1,Jo=5126,To=0,Dn=0,_a=0,Rr(pr)?(lo=!0,Pa=pe.createStream(34962,pr),Jo=Pa.dtype):(Pa=pe.getBuffer(pr),Pa?Jo=Pa.dtype:"constant"in pr?(eo=2,typeof pr.constant=="number"?(sa=pr.constant,es=Na=rn=0):(sa=pr.constant.length>0?pr.constant[0]:0,es=pr.constant.length>1?pr.constant[1]:0,Na=pr.constant.length>2?pr.constant[2]:0,rn=pr.constant.length>3?pr.constant[3]:0)):(Rr(pr.buffer)?Pa=pe.createStream(34962,pr.buffer):Pa=pe.getBuffer(pr.buffer),Jo="type"in pr?Ii[pr.type]:Pa.dtype,yo=!!pr.normalized,to=pr.size|0,To=pr.offset|0,Dn=pr.stride|0,_a=pr.divisor|0)),Ws=d.location,Ca=Pt[Ws],eo===1?(Ca.buffer||xe.enableVertexAttribArray(Ws),Es=to||2,(Ca.type!==Jo||Ca.size!==Es||Ca.buffer!==Pa||Ca.normalized!==yo||Ca.offset!==To||Ca.stride!==Dn)&&(xe.bindBuffer(34962,Pa.buffer),xe.vertexAttribPointer(Ws,Es,Jo,yo,Dn,To),Ca.type=Jo,Ca.size=Es,Ca.buffer=Pa,Ca.normalized=yo,Ca.offset=To,Ca.stride=Dn),Ca.divisor!==_a&&(Aa.vertexAttribDivisorANGLE(Ws,_a),Ca.divisor=_a)):(Ca.buffer&&(xe.disableVertexAttribArray(Ws),Ca.buffer=null),(Ca.x!==sa||Ca.y!==es||Ca.z!==Na||Ca.w!==rn)&&(xe.vertexAttrib4f(Ws,sa,es,Na,rn),Ca.x=sa,Ca.y=es,Ca.z=Na,Ca.w=rn)),As=_.location,Ho=Pt[As],Ho.buffer||xe.enableVertexAttribArray(As),(Ho.type!==5126||Ho.size!==1||Ho.buffer!==p||Ho.normalized!==!1||Ho.offset!==0||Ho.stride!==8)&&(xe.bindBuffer(34962,p.buffer),xe.vertexAttribPointer(As,1,5126,!1,8,0),Ho.type=5126,Ho.size=1,Ho.buffer=p,Ho.normalized=!1,Ho.offset=0,Ho.stride=8),Ho.divisor!==0&&(Aa.vertexAttribDivisorANGLE(As,0),Ho.divisor=0),Wa=b.location,Ao=Pt[Wa],Ao.buffer||xe.enableVertexAttribArray(Wa),(Ao.type!==5126||Ao.size!==1||Ao.buffer!==p||Ao.normalized!==!1||Ao.offset!==4||Ao.stride!==8)&&(xe.bindBuffer(34962,p.buffer),xe.vertexAttribPointer(Wa,1,5126,!1,8,4),Ao.type=5126,Ao.size=1,Ao.buffer=p,Ao.normalized=!1,Ao.offset=4,Ao.stride=8),Ao.divisor!==0&&(Aa.vertexAttribDivisorANGLE(Wa,0),Ao.divisor=0),ts=Zr.positionBuffer,gr.buffer=ts,Wo=!1,qa=1,ln=0,Bo=0,ko=0,oo=0,za=null,ea=0,rs=!1,$s=5126,us=0,Ds=0,fl=0,Rr(gr)?(Wo=!0,za=pe.createStream(34962,gr),$s=za.dtype):(za=pe.getBuffer(gr),za?$s=za.dtype:"constant"in gr?(qa=2,typeof gr.constant=="number"?(ln=gr.constant,Bo=ko=oo=0):(ln=gr.constant.length>0?gr.constant[0]:0,Bo=gr.constant.length>1?gr.constant[1]:0,ko=gr.constant.length>2?gr.constant[2]:0,oo=gr.constant.length>3?gr.constant[3]:0)):(Rr(gr.buffer)?za=pe.createStream(34962,gr.buffer):za=pe.getBuffer(gr.buffer),$s="type"in gr?Ii[gr.type]:za.dtype,rs=!!gr.normalized,ea=gr.size|0,us=gr.offset|0,Ds=gr.stride|0,fl=gr.divisor|0)),as=v.location,Ma=Pt[as],qa===1?(Ma.buffer||xe.enableVertexAttribArray(as),Qs=ea||2,(Ma.type!==$s||Ma.size!==Qs||Ma.buffer!==za||Ma.normalized!==rs||Ma.offset!==us||Ma.stride!==Ds)&&(xe.bindBuffer(34962,za.buffer),xe.vertexAttribPointer(as,Qs,$s,rs,Ds,us),Ma.type=$s,Ma.size=Qs,Ma.buffer=za,Ma.normalized=rs,Ma.offset=us,Ma.stride=Ds),Ma.divisor!==fl&&(Aa.vertexAttribDivisorANGLE(as,fl),Ma.divisor=fl)):(Ma.buffer&&(xe.disableVertexAttribArray(as),Ma.buffer=null),(Ma.x!==ln||Ma.y!==Bo||Ma.z!==ko||Ma.w!==oo)&&(xe.vertexAttrib4f(as,ln,Bo,ko,oo),Ma.x=ln,Ma.y=Bo,Ma.z=ko,Ma.w=oo)),ho=Zr.positionBuffer,ct.buffer=ho,gs=!1,Vo=1,Do=0,Lo=0,xs=0,ks=0,Ea=null,Jn=0,Oo=!1,rl=5126,Gs=0,bs=0,zs=0,Rr(ct)?(gs=!0,Ea=pe.createStream(34962,ct),rl=Ea.dtype):(Ea=pe.getBuffer(ct),Ea?rl=Ea.dtype:"constant"in ct?(Vo=2,typeof ct.constant=="number"?(Do=ct.constant,Lo=xs=ks=0):(Do=ct.constant.length>0?ct.constant[0]:0,Lo=ct.constant.length>1?ct.constant[1]:0,xs=ct.constant.length>2?ct.constant[2]:0,ks=ct.constant.length>3?ct.constant[3]:0)):(Rr(ct.buffer)?Ea=pe.createStream(34962,ct.buffer):Ea=pe.getBuffer(ct.buffer),rl="type"in ct?Ii[ct.type]:Ea.dtype,Oo=!!ct.normalized,Jn=ct.size|0,Gs=ct.offset|0,bs=ct.stride|0,zs=ct.divisor|0)),$o=k.location,Ta=Pt[$o],Vo===1?(Ta.buffer||xe.enableVertexAttribArray($o),os=Jn||2,(Ta.type!==rl||Ta.size!==os||Ta.buffer!==Ea||Ta.normalized!==Oo||Ta.offset!==Gs||Ta.stride!==bs)&&(xe.bindBuffer(34962,Ea.buffer),xe.vertexAttribPointer($o,os,rl,Oo,bs,Gs),Ta.type=rl,Ta.size=os,Ta.buffer=Ea,Ta.normalized=Oo,Ta.offset=Gs,Ta.stride=bs),Ta.divisor!==zs&&(Aa.vertexAttribDivisorANGLE($o,zs),Ta.divisor=zs)):(Ta.buffer&&(xe.disableVertexAttribArray($o),Ta.buffer=null),(Ta.x!==Do||Ta.y!==Lo||Ta.z!==xs||Ta.w!==ks)&&(xe.vertexAttrib4f($o,Do,Lo,xs,ks),Ta.x=Do,Ta.y=Lo,Ta.z=xs,Ta.w=ks)),_l=Zr.dashLength,xe.uniform1f(E.location,_l),Ss=Zr.dashTexture,Ss&&Ss._reglType==="framebuffer"&&(Ss=Ss.color[0]),po=Ss._texture,xe.uniform1i(A.location,po.bind()),go=Zr.depth,xe.uniform1f(L.location,go),ss=Zr.miterLimit,xe.uniform1f(x.location,ss),qo=M.call(this,Oe,Zr,0),xe.uniform1f(C.location,qo),zo=Zr.opacity,xe.uniform1f(m.location,zo),io=Zr.scale,Io=io[0],Da=io[1],xe.uniform2f(P.location,Io,Da),vs=Zr.thickness,xe.uniform1f(T.location,vs),fs=Zr.translate,cl=fs[0],el=fs[1],xe.uniform2f(B.location,cl,el),Hs=U.call(this,Oe,Zr,0),Ro=Hs[0],tl=Hs[1],Fs=Hs[2],hl=Hs[3],xe.uniform4f(F.location,Ro,tl,Fs,hl),Fa=ge.elements,Fa?xe.bindBuffer(34963,Fa.buffer.buffer):zt.currentVAO&&(Fa=fe.getElements(zt.currentVAO.elements),Fa&&xe.bindBuffer(34963,Fa.buffer.buffer)),Ms=Zr.count,Ms>0?Fa?Aa.drawElementsInstancedANGLE(5,4,Fa.type,0<<(Fa.type-5121>>1),Ms):Aa.drawArraysInstancedANGLE(5,0,4,Ms):Ms<0&&(Fa?xe.drawElements(5,4,Fa.type,0<<(Fa.type-5121>>1)):xe.drawArrays(5,0,4)),ft.dirty=!0,zt.setVAO(null),Oe.viewportWidth=Ga,Oe.viewportHeight=ma,fa&&(r.cpuTime+=performance.now()-kn),uo&&pe.destroyStream(wa),Ko&&pe.destroyStream(da),qs&&pe.destroyStream(_n),lo&&pe.destroyStream(Pa),Wo&&pe.destroyStream(za),gs&&pe.destroyStream(Ea),po.unbind()},scope:function(Zr,Ti,en){var ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl,ll,il,zl,Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt,pt,Ht,nr,fr,Tr,Ir,ri,li,Ei,hn,Zn,Yn,Ua,Fo,vl,Us,ml,au,Sl,Yl,Ol,ou,Pu,nu,tu,Hu,$u,Ku,Wu,ju,sf,_f,Qu,ef,Z,se,Pe,Xe,Qe;ii=Zr.viewport,Xi=ii.x|0,aa=ii.y|0,Mn="width"in ii?ii.width|0:Oe.framebufferWidth-Xi,Un="height"in ii?ii.height|0:Oe.framebufferHeight-aa,Ga=Oe.viewportWidth,Oe.viewportWidth=Mn,ma=Oe.viewportHeight,Oe.viewportHeight=Un,oa=tn[0],tn[0]=Xi,ka=tn[1],tn[1]=aa,so=tn[2],tn[2]=Mn,Kr=tn[3],tn[3]=Un,Ia=pi[0],pi[0]=G,Yo=pi[1],pi[1]=j,fa=pi[2],pi[2]=W,kn=pi[3],pi[3]=N,Aa=Fe.blend_enable,Fe.blend_enable=H,ys=ni[0],ni[0]=re,uo=ni[1],ni[1]=ae,ls=Qi[0],Qi[0]=be,$a=Qi[1],Qi[1]=ze,fo=Qi[2],Qi[2]=Ce,mn=Qi[3],Qi[3]=de,ra=Fe.cull_enable,Fe.cull_enable=te,wa=Fe.cull_face,Fe.cull_face=ke,ws=o.call(this,Oe,Zr,en),Co=Fe.depth_enable,Fe.depth_enable=ws,Po=Zr.viewport,Wi=Po.x|0,gn=Po.y|0,Ps="width"in Po?Po.width|0:Oe.framebufferWidth-Wi,Ha="height"in Po?Po.height|0:Oe.framebufferHeight-gn,Sn=Vi[0],Vi[0]=Wi,ao=Vi[1],Vi[1]=gn,Ba=Vi[2],Vi[2]=Ps,Ko=Vi[3],Vi[3]=Ha,Qo=Fe.scissor_enable,Fe.scissor_enable=Ee,Hi=Fe.stencil_enable,Fe.stencil_enable=Me,Sa=ft.profile,Sa&&(Qa=performance.now(),r.count++),vn=ge.offset,ge.offset=Ue,da=ge.count,ge.count=De,la=Zr.count,vo=ge.instances,ge.instances=la,Ts=ge.primitive,ge.primitive=ye,ps=M.call(this,Oe,Zr,en),co=rr[qe],rr[qe]=ps,mo=Zr.miterLimit,No=rr[ce],rr[ce]=mo,jn=Zr.scale,Go=rr[Je],rr[Je]=jn,Ys=Zr.scaleFract,qs=rr[nt],rr[nt]=Ys,Ns=Zr.translateFract,Oa=rr[gt],rr[gt]=Ns,ha=Zr.translate,Vs=rr[Nt],rr[Nt]=ha,Ya=Zr.thickness,_n=rr[at],rr[at]=Ya,Vn=Zr.dashTexture,wo=rr[Ke],rr[Ke]=Vn,Ra=Zr.opacity,Xn=rr[Ct],rr[Ct]=Ra,un=Oe.pixelRatio,$n=rr[wt],rr[wt]=un,Ka=Zr.id,qn=rr[St],rr[St]=Ka,Eo=Zr.dashLength,Ja=rr[Dt],rr[Dt]=Eo,lo=U.call(this,Oe,Zr,en),eo=rr[Zt],rr[Zt]=lo,sa=Zr.depth,es=rr[Et],rr[Et]=sa,Na=Te.state,Te.state=1,rn=Te.x,Te.x=0,Pa=Te.y,Te.y=0,to=Te.z,Te.z=0,yo=Te.w,Te.w=0,Jo=Te.buffer,Te.buffer=p,To=Te.size,Te.size=0,Dn=Te.normalized,Te.normalized=!1,_a=Te.type,Te.type=5126,Ws=Te.offset,Te.offset=0,Ca=Te.stride,Te.stride=8,Es=Te.divisor,Te.divisor=0,As=ot.state,ot.state=1,Ho=ot.x,ot.x=0,Wa=ot.y,ot.y=0,Ao=ot.z,ot.z=0,ts=ot.w,ot.w=0,Wo=ot.buffer,ot.buffer=p,qa=ot.size,ot.size=0,ln=ot.normalized,ot.normalized=!1,Bo=ot.type,ot.type=5126,ko=ot.offset,ot.offset=4,oo=ot.stride,ot.stride=8,za=ot.divisor,ot.divisor=0,ea=Zr.colorBuffer,bi.buffer=ea,rs=!1,$s=1,us=0,Ds=0,fl=0,as=0,Ma=null,Qs=0,ho=!1,gs=5126,Vo=0,Do=0,Lo=0,Rr(bi)?(rs=!0,Ma=pe.createStream(34962,bi),gs=Ma.dtype):(Ma=pe.getBuffer(bi),Ma?gs=Ma.dtype:"constant"in bi?($s=2,typeof bi.constant=="number"?(us=bi.constant,Ds=fl=as=0):(us=bi.constant.length>0?bi.constant[0]:0,Ds=bi.constant.length>1?bi.constant[1]:0,fl=bi.constant.length>2?bi.constant[2]:0,as=bi.constant.length>3?bi.constant[3]:0)):(Rr(bi.buffer)?Ma=pe.createStream(34962,bi.buffer):Ma=pe.getBuffer(bi.buffer),gs="type"in bi?Ii[bi.type]:Ma.dtype,ho=!!bi.normalized,Qs=bi.size|0,Vo=bi.offset|0,Do=bi.stride|0,Lo=bi.divisor|0)),xs=Tt.state,Tt.state=$s,ks=Tt.x,Tt.x=us,Ea=Tt.y,Tt.y=Ds,Jn=Tt.z,Tt.z=fl,Oo=Tt.w,Tt.w=as,rl=Tt.buffer,Tt.buffer=Ma,Gs=Tt.size,Tt.size=Qs,bs=Tt.normalized,Tt.normalized=ho,zs=Tt.type,Tt.type=gs,$o=Tt.offset,Tt.offset=Vo,Ta=Tt.stride,Tt.stride=Do,os=Tt.divisor,Tt.divisor=Lo,_l=Zr.colorBuffer,Xr.buffer=_l,Ss=!1,po=1,go=0,ss=0,qo=0,zo=0,io=null,Io=0,Da=!1,vs=5126,fs=0,cl=0,el=0,Rr(Xr)?(Ss=!0,io=pe.createStream(34962,Xr),vs=io.dtype):(io=pe.getBuffer(Xr),io?vs=io.dtype:"constant"in Xr?(po=2,typeof Xr.constant=="number"?(go=Xr.constant,ss=qo=zo=0):(go=Xr.constant.length>0?Xr.constant[0]:0,ss=Xr.constant.length>1?Xr.constant[1]:0,qo=Xr.constant.length>2?Xr.constant[2]:0,zo=Xr.constant.length>3?Xr.constant[3]:0)):(Rr(Xr.buffer)?io=pe.createStream(34962,Xr.buffer):io=pe.getBuffer(Xr.buffer),vs="type"in Xr?Ii[Xr.type]:io.dtype,Da=!!Xr.normalized,Io=Xr.size|0,fs=Xr.offset|0,cl=Xr.stride|0,el=Xr.divisor|0)),Hs=vt.state,vt.state=po,Ro=vt.x,vt.x=go,tl=vt.y,vt.y=ss,Fs=vt.z,vt.z=qo,hl=vt.w,vt.w=zo,Fa=vt.buffer,vt.buffer=io,Ms=vt.size,vt.size=Io,jo=vt.normalized,vt.normalized=Da,Rs=vt.type,vt.type=vs,Is=vt.offset,vt.offset=fs,Bs=vt.stride,vt.stride=cl,At=vt.divisor,vt.divisor=el,Vt=Zr.positionBuffer,ct.buffer=Vt,wr=!1,mr=1,Fr=0,_i=0,Si=0,Ci=0,Ki=null,Fn=0,Pi=!1,di=5126,Li=0,Mi=0,Gn=0,Rr(ct)?(wr=!0,Ki=pe.createStream(34962,ct),di=Ki.dtype):(Ki=pe.getBuffer(ct),Ki?di=Ki.dtype:"constant"in ct?(mr=2,typeof ct.constant=="number"?(Fr=ct.constant,_i=Si=Ci=0):(Fr=ct.constant.length>0?ct.constant[0]:0,_i=ct.constant.length>1?ct.constant[1]:0,Si=ct.constant.length>2?ct.constant[2]:0,Ci=ct.constant.length>3?ct.constant[3]:0)):(Rr(ct.buffer)?Ki=pe.createStream(34962,ct.buffer):Ki=pe.getBuffer(ct.buffer),di="type"in ct?Ii[ct.type]:Ki.dtype,Pi=!!ct.normalized,Fn=ct.size|0,Li=ct.offset|0,Mi=ct.stride|0,Gn=ct.divisor|0)),ta=Ye.state,Ye.state=mr,ya=Ye.x,Ye.x=Fr,ia=Ye.y,Ye.y=_i,pa=Ye.z,Ye.z=Si,va=Ye.w,Ye.w=Ci,zn=Ye.buffer,Ye.buffer=Ki,is=Ye.size,Ye.size=Fn,Cs=Ye.normalized,Ye.normalized=Pi,Ks=Ye.type,Ye.type=di,dl=Ye.offset,Ye.offset=Li,xl=Ye.stride,Ye.stride=Mi,Bl=Ye.divisor,Ye.divisor=Gn,bl=Zr.positionBuffer,tr.buffer=bl,eu=!1,Zl=1,Ul=0,ja=0,ns=0,Js=0,cs=null,sl=0,ll=!1,il=5126,zl=0,Ml=0,Rl=0,Rr(tr)?(eu=!0,cs=pe.createStream(34962,tr),il=cs.dtype):(cs=pe.getBuffer(tr),cs?il=cs.dtype:"constant"in tr?(Zl=2,typeof tr.constant=="number"?(Ul=tr.constant,ja=ns=Js=0):(Ul=tr.constant.length>0?tr.constant[0]:0,ja=tr.constant.length>1?tr.constant[1]:0,ns=tr.constant.length>2?tr.constant[2]:0,Js=tr.constant.length>3?tr.constant[3]:0)):(Rr(tr.buffer)?cs=pe.createStream(34962,tr.buffer):cs=pe.getBuffer(tr.buffer),il="type"in tr?Ii[tr.type]:cs.dtype,ll=!!tr.normalized,sl=tr.size|0,zl=tr.offset|0,Ml=tr.stride|0,Rl=tr.divisor|0)),Tl=He.state,He.state=Zl,Ll=He.x,He.x=Ul,ms=He.y,He.y=ja,Os=He.z,He.z=ns,Xl=He.w,He.w=Js,Vl=He.buffer,He.buffer=cs,Nl=He.size,He.size=sl,le=He.normalized,He.normalized=ll,w=He.type,He.type=il,q=He.offset,He.offset=zl,Q=He.stride,He.stride=Ml,ee=He.divisor,He.divisor=Rl,ue=Zr.positionBuffer,pr.buffer=ue,Ve=!1,tt=1,mt=0,Bt=0,ir=0,or=0,kr=null,Vr=0,he=!1,Se=5126,Ne=0,Ge=0,lt=0,Rr(pr)?(Ve=!0,kr=pe.createStream(34962,pr),Se=kr.dtype):(kr=pe.getBuffer(pr),kr?Se=kr.dtype:"constant"in pr?(tt=2,typeof pr.constant=="number"?(mt=pr.constant,Bt=ir=or=0):(mt=pr.constant.length>0?pr.constant[0]:0,Bt=pr.constant.length>1?pr.constant[1]:0,ir=pr.constant.length>2?pr.constant[2]:0,or=pr.constant.length>3?pr.constant[3]:0)):(Rr(pr.buffer)?kr=pe.createStream(34962,pr.buffer):kr=pe.getBuffer(pr.buffer),Se="type"in pr?Ii[pr.type]:kr.dtype,he=!!pr.normalized,Vr=pr.size|0,Ne=pr.offset|0,Ge=pr.stride|0,lt=pr.divisor|0)),rt=it.state,it.state=tt,pt=it.x,it.x=mt,Ht=it.y,it.y=Bt,nr=it.z,it.z=ir,fr=it.w,it.w=or,Tr=it.buffer,it.buffer=kr,Ir=it.size,it.size=Vr,ri=it.normalized,it.normalized=he,li=it.type,it.type=Se,Ei=it.offset,it.offset=Ne,hn=it.stride,it.stride=Ge,Zn=it.divisor,it.divisor=lt,Yn=Zr.positionBuffer,gr.buffer=Yn,Ua=!1,Fo=1,vl=0,Us=0,ml=0,au=0,Sl=null,Yl=0,Ol=!1,ou=5126,Pu=0,nu=0,tu=0,Rr(gr)?(Ua=!0,Sl=pe.createStream(34962,gr),ou=Sl.dtype):(Sl=pe.getBuffer(gr),Sl?ou=Sl.dtype:"constant"in gr?(Fo=2,typeof gr.constant=="number"?(vl=gr.constant,Us=ml=au=0):(vl=gr.constant.length>0?gr.constant[0]:0,Us=gr.constant.length>1?gr.constant[1]:0,ml=gr.constant.length>2?gr.constant[2]:0,au=gr.constant.length>3?gr.constant[3]:0)):(Rr(gr.buffer)?Sl=pe.createStream(34962,gr.buffer):Sl=pe.getBuffer(gr.buffer),ou="type"in gr?Ii[gr.type]:Sl.dtype,Ol=!!gr.normalized,Yl=gr.size|0,Pu=gr.offset|0,nu=gr.stride|0,tu=gr.divisor|0)),Hu=et.state,et.state=Fo,$u=et.x,et.x=vl,Ku=et.y,et.y=Us,Wu=et.z,et.z=ml,ju=et.w,et.w=au,sf=et.buffer,et.buffer=Sl,_f=et.size,et.size=Yl,Qu=et.normalized,et.normalized=Ol,ef=et.type,et.type=ou,Z=et.offset,et.offset=Pu,se=et.stride,et.stride=nu,Pe=et.divisor,et.divisor=tu,Xe=dt.vert,dt.vert=It,Qe=dt.frag,dt.frag=Yt,ft.dirty=!0,Ti(Oe,Zr,en),Oe.viewportWidth=Ga,Oe.viewportHeight=ma,tn[0]=oa,tn[1]=ka,tn[2]=so,tn[3]=Kr,pi[0]=Ia,pi[1]=Yo,pi[2]=fa,pi[3]=kn,Fe.blend_enable=Aa,ni[0]=ys,ni[1]=uo,Qi[0]=ls,Qi[1]=$a,Qi[2]=fo,Qi[3]=mn,Fe.cull_enable=ra,Fe.cull_face=wa,Fe.depth_enable=Co,Vi[0]=Sn,Vi[1]=ao,Vi[2]=Ba,Vi[3]=Ko,Fe.scissor_enable=Qo,Fe.stencil_enable=Hi,Sa&&(r.cpuTime+=performance.now()-Qa),ge.offset=vn,ge.count=da,ge.instances=vo,ge.primitive=Ts,rr[qe]=co,rr[ce]=No,rr[Je]=Go,rr[nt]=qs,rr[gt]=Oa,rr[Nt]=Vs,rr[at]=_n,rr[Ke]=wo,rr[Ct]=Xn,rr[wt]=$n,rr[St]=qn,rr[Dt]=Ja,rr[Zt]=eo,rr[Et]=es,Te.state=Na,Te.x=rn,Te.y=Pa,Te.z=to,Te.w=yo,Te.buffer=Jo,Te.size=To,Te.normalized=Dn,Te.type=_a,Te.offset=Ws,Te.stride=Ca,Te.divisor=Es,ot.state=As,ot.x=Ho,ot.y=Wa,ot.z=Ao,ot.w=ts,ot.buffer=Wo,ot.size=qa,ot.normalized=ln,ot.type=Bo,ot.offset=ko,ot.stride=oo,ot.divisor=za,rs&&pe.destroyStream(Ma),Tt.state=xs,Tt.x=ks,Tt.y=Ea,Tt.z=Jn,Tt.w=Oo,Tt.buffer=rl,Tt.size=Gs,Tt.normalized=bs,Tt.type=zs,Tt.offset=$o,Tt.stride=Ta,Tt.divisor=os,Ss&&pe.destroyStream(io),vt.state=Hs,vt.x=Ro,vt.y=tl,vt.z=Fs,vt.w=hl,vt.buffer=Fa,vt.size=Ms,vt.normalized=jo,vt.type=Rs,vt.offset=Is,vt.stride=Bs,vt.divisor=At,wr&&pe.destroyStream(Ki),Ye.state=ta,Ye.x=ya,Ye.y=ia,Ye.z=pa,Ye.w=va,Ye.buffer=zn,Ye.size=is,Ye.normalized=Cs,Ye.type=Ks,Ye.offset=dl,Ye.stride=xl,Ye.divisor=Bl,eu&&pe.destroyStream(cs),He.state=Tl,He.x=Ll,He.y=ms,He.z=Os,He.w=Xl,He.buffer=Vl,He.size=Nl,He.normalized=le,He.type=w,He.offset=q,He.stride=Q,He.divisor=ee,Ve&&pe.destroyStream(kr),it.state=rt,it.x=pt,it.y=Ht,it.z=nr,it.w=fr,it.buffer=Tr,it.size=Ir,it.normalized=ri,it.type=li,it.offset=Ei,it.stride=hn,it.divisor=Zn,Ua&&pe.destroyStream(Sl),et.state=Hu,et.x=$u,et.y=Ku,et.z=Wu,et.w=ju,et.buffer=sf,et.size=_f,et.normalized=Qu,et.type=ef,et.offset=Z,et.stride=se,et.divisor=Pe,dt.vert=Xe,dt.frag=Qe,ft.dirty=!0},batch:function(Zr,Ti){var en,ii,Xi,aa,Mn,Un,Ga;if(en=Br.angle_instanced_arrays,ii=Gr.next,ii!==Gr.cur&&(ii?xe.bindFramebuffer(36160,ii.framebuffer):xe.bindFramebuffer(36160,null),Gr.cur=ii),ft.dirty){var ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo;ma=Fe.dither,ma!==ft.dither&&(ma?xe.enable(3024):xe.disable(3024),ft.dither=ma),oa=Fe.depth_func,oa!==ft.depth_func&&(xe.depthFunc(oa),ft.depth_func=oa),ka=Ai[0],so=Ai[1],(ka!==Ni[0]||so!==Ni[1])&&(xe.depthRange(ka,so),Ni[0]=ka,Ni[1]=so),Kr=Fe.depth_mask,Kr!==ft.depth_mask&&(xe.depthMask(Kr),ft.depth_mask=Kr),Ia=Rt[0],Yo=Rt[1],fa=Rt[2],kn=Rt[3],(Ia!==yt[0]||Yo!==yt[1]||fa!==yt[2]||kn!==yt[3])&&(xe.colorMask(Ia,Yo,fa,kn),yt[0]=Ia,yt[1]=Yo,yt[2]=fa,yt[3]=kn),Aa=Fe.frontFace,Aa!==ft.frontFace&&(xe.frontFace(Aa),ft.frontFace=Aa),ys=Fe.lineWidth,ys!==ft.lineWidth&&(xe.lineWidth(ys),ft.lineWidth=ys),uo=Fe.polygonOffset_enable,uo!==ft.polygonOffset_enable&&(uo?xe.enable(32823):xe.disable(32823),ft.polygonOffset_enable=uo),ls=Gt[0],$a=Gt[1],(ls!==Wt[0]||$a!==Wt[1])&&(xe.polygonOffset(ls,$a),Wt[0]=ls,Wt[1]=$a),fo=Fe.sample_alpha,fo!==ft.sample_alpha&&(fo?xe.enable(32926):xe.disable(32926),ft.sample_alpha=fo),mn=Fe.sample_enable,mn!==ft.sample_enable&&(mn?xe.enable(32928):xe.disable(32928),ft.sample_enable=mn),ra=xr[0],wa=xr[1],(ra!==Lr[0]||wa!==Lr[1])&&(xe.sampleCoverage(ra,wa),Lr[0]=ra,Lr[1]=wa),ws=Fe.stencil_mask,ws!==ft.stencil_mask&&(xe.stencilMask(ws),ft.stencil_mask=ws),Co=Nr[0],Po=Nr[1],Wi=Nr[2],(Co!==Or[0]||Po!==Or[1]||Wi!==Or[2])&&(xe.stencilFunc(Co,Po,Wi),Or[0]=Co,Or[1]=Po,Or[2]=Wi),gn=Hr[0],Ps=Hr[1],Ha=Hr[2],Sn=Hr[3],(gn!==jr[0]||Ps!==jr[1]||Ha!==jr[2]||Sn!==jr[3])&&(xe.stencilOpSeparate(gn,Ps,Ha,Sn),jr[0]=gn,jr[1]=Ps,jr[2]=Ha,jr[3]=Sn),ao=gi[0],Ba=gi[1],Ko=gi[2],Qo=gi[3],(ao!==ki[0]||Ba!==ki[1]||Ko!==ki[2]||Qo!==ki[3])&&(xe.stencilOpSeparate(ao,Ba,Ko,Qo),ki[0]=ao,ki[1]=Ba,ki[2]=Ko,ki[3]=Qo)}xe.blendColor(0,0,0,0),Di[0]=0,Di[1]=0,Di[2]=0,Di[3]=0,cr?xe.enable(3042):xe.disable(3042),ft.blend_enable=cr,xe.blendEquationSeparate(32774,32774),$i[0]=32774,$i[1]=32774,xe.blendFuncSeparate(770,771,773,1),si[0]=770,si[1]=771,si[2]=773,si[3]=1,_r?xe.enable(2884):xe.disable(2884),ft.cull_enable=_r,xe.cullFace(yr),ft.cull_face=yr,Ut?xe.enable(3089):xe.disable(3089),ft.scissor_enable=Ut,Re?xe.enable(2960):xe.disable(2960),ft.stencil_enable=Re,Xi=ft.profile,Xi&&(aa=performance.now(),r.count+=Ti),xe.useProgram(l.program),Mn=Br.angle_instanced_arrays;var Hi,Sa,Qa,vn,da;for(zt.setVAO(null),Hi=_.location,Sa=Pt[Hi],Sa.buffer||xe.enableVertexAttribArray(Hi),(Sa.type!==5126||Sa.size!==1||Sa.buffer!==p||Sa.normalized!==!1||Sa.offset!==0||Sa.stride!==8)&&(xe.bindBuffer(34962,p.buffer),xe.vertexAttribPointer(Hi,1,5126,!1,8,0),Sa.type=5126,Sa.size=1,Sa.buffer=p,Sa.normalized=!1,Sa.offset=0,Sa.stride=8),Sa.divisor!==0&&(Mn.vertexAttribDivisorANGLE(Hi,0),Sa.divisor=0),Qa=b.location,vn=Pt[Qa],vn.buffer||xe.enableVertexAttribArray(Qa),(vn.type!==5126||vn.size!==1||vn.buffer!==p||vn.normalized!==!1||vn.offset!==4||vn.stride!==8)&&(xe.bindBuffer(34962,p.buffer),xe.vertexAttribPointer(Qa,1,5126,!1,8,4),vn.type=5126,vn.size=1,vn.buffer=p,vn.normalized=!1,vn.offset=4,vn.stride=8),vn.divisor!==0&&(Mn.vertexAttribDivisorANGLE(Qa,0),vn.divisor=0),da=ge.elements,da?xe.bindBuffer(34963,da.buffer.buffer):zt.currentVAO&&(da=fe.getElements(zt.currentVAO.elements),da&&xe.bindBuffer(34963,da.buffer.buffer)),Un=0;Un0?bi.constant[0]:0,Vn=bi.constant.length>1?bi.constant[1]:0,wo=bi.constant.length>2?bi.constant[2]:0,Ra=bi.constant.length>3?bi.constant[3]:0)):(Rr(bi.buffer)?Xn=pe.createStream(34962,bi.buffer):Xn=pe.getBuffer(bi.buffer),Ka="type"in bi?Ii[bi.type]:Xn.dtype,$n=!!bi.normalized,un=bi.size|0,qn=bi.offset|0,Eo=bi.stride|0,Ja=bi.divisor|0)),lo=f.location,eo=Pt[lo],Ya===1?(eo.buffer||xe.enableVertexAttribArray(lo),sa=un||4,(eo.type!==Ka||eo.size!==sa||eo.buffer!==Xn||eo.normalized!==$n||eo.offset!==qn||eo.stride!==Eo)&&(xe.bindBuffer(34962,Xn.buffer),xe.vertexAttribPointer(lo,sa,Ka,$n,Eo,qn),eo.type=Ka,eo.size=sa,eo.buffer=Xn,eo.normalized=$n,eo.offset=qn,eo.stride=Eo),eo.divisor!==Ja&&(Mn.vertexAttribDivisorANGLE(lo,Ja),eo.divisor=Ja)):(eo.buffer&&(xe.disableVertexAttribArray(lo),eo.buffer=null),(eo.x!==_n||eo.y!==Vn||eo.z!==wo||eo.w!==Ra)&&(xe.vertexAttrib4f(lo,_n,Vn,wo,Ra),eo.x=_n,eo.y=Vn,eo.z=wo,eo.w=Ra)),es=Ga.positionBuffer,tr.buffer=es,Na=!1,rn=1,Pa=0,to=0,yo=0,Jo=0,To=null,Dn=0,_a=!1,Ws=5126,Ca=0,Es=0,As=0,Rr(tr)?(Na=!0,To=pe.createStream(34962,tr),Ws=To.dtype):(To=pe.getBuffer(tr),To?Ws=To.dtype:"constant"in tr?(rn=2,typeof tr.constant=="number"?(Pa=tr.constant,to=yo=Jo=0):(Pa=tr.constant.length>0?tr.constant[0]:0,to=tr.constant.length>1?tr.constant[1]:0,yo=tr.constant.length>2?tr.constant[2]:0,Jo=tr.constant.length>3?tr.constant[3]:0)):(Rr(tr.buffer)?To=pe.createStream(34962,tr.buffer):To=pe.getBuffer(tr.buffer),Ws="type"in tr?Ii[tr.type]:To.dtype,_a=!!tr.normalized,Dn=tr.size|0,Ca=tr.offset|0,Es=tr.stride|0,As=tr.divisor|0)),Ho=c.location,Wa=Pt[Ho],rn===1?(Wa.buffer||xe.enableVertexAttribArray(Ho),Ao=Dn||2,(Wa.type!==Ws||Wa.size!==Ao||Wa.buffer!==To||Wa.normalized!==_a||Wa.offset!==Ca||Wa.stride!==Es)&&(xe.bindBuffer(34962,To.buffer),xe.vertexAttribPointer(Ho,Ao,Ws,_a,Es,Ca),Wa.type=Ws,Wa.size=Ao,Wa.buffer=To,Wa.normalized=_a,Wa.offset=Ca,Wa.stride=Es),Wa.divisor!==As&&(Mn.vertexAttribDivisorANGLE(Ho,As),Wa.divisor=As)):(Wa.buffer&&(xe.disableVertexAttribArray(Ho),Wa.buffer=null),(Wa.x!==Pa||Wa.y!==to||Wa.z!==yo||Wa.w!==Jo)&&(xe.vertexAttrib4f(Ho,Pa,to,yo,Jo),Wa.x=Pa,Wa.y=to,Wa.z=yo,Wa.w=Jo)),ts=Ga.colorBuffer,Xr.buffer=ts,Wo=!1,qa=1,ln=0,Bo=0,ko=0,oo=0,za=null,ea=0,rs=!1,$s=5126,us=0,Ds=0,fl=0,Rr(Xr)?(Wo=!0,za=pe.createStream(34962,Xr),$s=za.dtype):(za=pe.getBuffer(Xr),za?$s=za.dtype:"constant"in Xr?(qa=2,typeof Xr.constant=="number"?(ln=Xr.constant,Bo=ko=oo=0):(ln=Xr.constant.length>0?Xr.constant[0]:0,Bo=Xr.constant.length>1?Xr.constant[1]:0,ko=Xr.constant.length>2?Xr.constant[2]:0,oo=Xr.constant.length>3?Xr.constant[3]:0)):(Rr(Xr.buffer)?za=pe.createStream(34962,Xr.buffer):za=pe.getBuffer(Xr.buffer),$s="type"in Xr?Ii[Xr.type]:za.dtype,rs=!!Xr.normalized,ea=Xr.size|0,us=Xr.offset|0,Ds=Xr.stride|0,fl=Xr.divisor|0)),as=h.location,Ma=Pt[as],qa===1?(Ma.buffer||xe.enableVertexAttribArray(as),Qs=ea||4,(Ma.type!==$s||Ma.size!==Qs||Ma.buffer!==za||Ma.normalized!==rs||Ma.offset!==us||Ma.stride!==Ds)&&(xe.bindBuffer(34962,za.buffer),xe.vertexAttribPointer(as,Qs,$s,rs,Ds,us),Ma.type=$s,Ma.size=Qs,Ma.buffer=za,Ma.normalized=rs,Ma.offset=us,Ma.stride=Ds),Ma.divisor!==fl&&(Mn.vertexAttribDivisorANGLE(as,fl),Ma.divisor=fl)):(Ma.buffer&&(xe.disableVertexAttribArray(as),Ma.buffer=null),(Ma.x!==ln||Ma.y!==Bo||Ma.z!==ko||Ma.w!==oo)&&(xe.vertexAttrib4f(as,ln,Bo,ko,oo),Ma.x=ln,Ma.y=Bo,Ma.z=ko,Ma.w=oo)),ho=Ga.positionBuffer,pr.buffer=ho,gs=!1,Vo=1,Do=0,Lo=0,xs=0,ks=0,Ea=null,Jn=0,Oo=!1,rl=5126,Gs=0,bs=0,zs=0,Rr(pr)?(gs=!0,Ea=pe.createStream(34962,pr),rl=Ea.dtype):(Ea=pe.getBuffer(pr),Ea?rl=Ea.dtype:"constant"in pr?(Vo=2,typeof pr.constant=="number"?(Do=pr.constant,Lo=xs=ks=0):(Do=pr.constant.length>0?pr.constant[0]:0,Lo=pr.constant.length>1?pr.constant[1]:0,xs=pr.constant.length>2?pr.constant[2]:0,ks=pr.constant.length>3?pr.constant[3]:0)):(Rr(pr.buffer)?Ea=pe.createStream(34962,pr.buffer):Ea=pe.getBuffer(pr.buffer),rl="type"in pr?Ii[pr.type]:Ea.dtype,Oo=!!pr.normalized,Jn=pr.size|0,Gs=pr.offset|0,bs=pr.stride|0,zs=pr.divisor|0)),$o=d.location,Ta=Pt[$o],Vo===1?(Ta.buffer||xe.enableVertexAttribArray($o),os=Jn||2,(Ta.type!==rl||Ta.size!==os||Ta.buffer!==Ea||Ta.normalized!==Oo||Ta.offset!==Gs||Ta.stride!==bs)&&(xe.bindBuffer(34962,Ea.buffer),xe.vertexAttribPointer($o,os,rl,Oo,bs,Gs),Ta.type=rl,Ta.size=os,Ta.buffer=Ea,Ta.normalized=Oo,Ta.offset=Gs,Ta.stride=bs),Ta.divisor!==zs&&(Mn.vertexAttribDivisorANGLE($o,zs),Ta.divisor=zs)):(Ta.buffer&&(xe.disableVertexAttribArray($o),Ta.buffer=null),(Ta.x!==Do||Ta.y!==Lo||Ta.z!==xs||Ta.w!==ks)&&(xe.vertexAttrib4f($o,Do,Lo,xs,ks),Ta.x=Do,Ta.y=Lo,Ta.z=xs,Ta.w=ks)),_l=Ga.positionBuffer,gr.buffer=_l,Ss=!1,po=1,go=0,ss=0,qo=0,zo=0,io=null,Io=0,Da=!1,vs=5126,fs=0,cl=0,el=0,Rr(gr)?(Ss=!0,io=pe.createStream(34962,gr),vs=io.dtype):(io=pe.getBuffer(gr),io?vs=io.dtype:"constant"in gr?(po=2,typeof gr.constant=="number"?(go=gr.constant,ss=qo=zo=0):(go=gr.constant.length>0?gr.constant[0]:0,ss=gr.constant.length>1?gr.constant[1]:0,qo=gr.constant.length>2?gr.constant[2]:0,zo=gr.constant.length>3?gr.constant[3]:0)):(Rr(gr.buffer)?io=pe.createStream(34962,gr.buffer):io=pe.getBuffer(gr.buffer),vs="type"in gr?Ii[gr.type]:io.dtype,Da=!!gr.normalized,Io=gr.size|0,fs=gr.offset|0,cl=gr.stride|0,el=gr.divisor|0)),Hs=v.location,Ro=Pt[Hs],po===1?(Ro.buffer||xe.enableVertexAttribArray(Hs),tl=Io||2,(Ro.type!==vs||Ro.size!==tl||Ro.buffer!==io||Ro.normalized!==Da||Ro.offset!==fs||Ro.stride!==cl)&&(xe.bindBuffer(34962,io.buffer),xe.vertexAttribPointer(Hs,tl,vs,Da,cl,fs),Ro.type=vs,Ro.size=tl,Ro.buffer=io,Ro.normalized=Da,Ro.offset=fs,Ro.stride=cl),Ro.divisor!==el&&(Mn.vertexAttribDivisorANGLE(Hs,el),Ro.divisor=el)):(Ro.buffer&&(xe.disableVertexAttribArray(Hs),Ro.buffer=null),(Ro.x!==go||Ro.y!==ss||Ro.z!==qo||Ro.w!==zo)&&(xe.vertexAttrib4f(Hs,go,ss,qo,zo),Ro.x=go,Ro.y=ss,Ro.z=qo,Ro.w=zo)),Fs=Ga.positionBuffer,ct.buffer=Fs,hl=!1,Fa=1,Ms=0,jo=0,Rs=0,Is=0,Bs=null,At=0,Vt=!1,wr=5126,mr=0,Fr=0,_i=0,Rr(ct)?(hl=!0,Bs=pe.createStream(34962,ct),wr=Bs.dtype):(Bs=pe.getBuffer(ct),Bs?wr=Bs.dtype:"constant"in ct?(Fa=2,typeof ct.constant=="number"?(Ms=ct.constant,jo=Rs=Is=0):(Ms=ct.constant.length>0?ct.constant[0]:0,jo=ct.constant.length>1?ct.constant[1]:0,Rs=ct.constant.length>2?ct.constant[2]:0,Is=ct.constant.length>3?ct.constant[3]:0)):(Rr(ct.buffer)?Bs=pe.createStream(34962,ct.buffer):Bs=pe.getBuffer(ct.buffer),wr="type"in ct?Ii[ct.type]:Bs.dtype,Vt=!!ct.normalized,At=ct.size|0,mr=ct.offset|0,Fr=ct.stride|0,_i=ct.divisor|0)),Si=k.location,Ci=Pt[Si],Fa===1?(Ci.buffer||xe.enableVertexAttribArray(Si),Ki=At||2,(Ci.type!==wr||Ci.size!==Ki||Ci.buffer!==Bs||Ci.normalized!==Vt||Ci.offset!==mr||Ci.stride!==Fr)&&(xe.bindBuffer(34962,Bs.buffer),xe.vertexAttribPointer(Si,Ki,wr,Vt,Fr,mr),Ci.type=wr,Ci.size=Ki,Ci.buffer=Bs,Ci.normalized=Vt,Ci.offset=mr,Ci.stride=Fr),Ci.divisor!==_i&&(Mn.vertexAttribDivisorANGLE(Si,_i),Ci.divisor=_i)):(Ci.buffer&&(xe.disableVertexAttribArray(Si),Ci.buffer=null),(Ci.x!==Ms||Ci.y!==jo||Ci.z!==Rs||Ci.w!==Is)&&(xe.vertexAttrib4f(Si,Ms,jo,Rs,Is),Ci.x=Ms,Ci.y=jo,Ci.z=Rs,Ci.w=Is)),Fn=Ga.dashLength,(!Un||Pi!==Fn)&&(Pi=Fn,xe.uniform1f(E.location,Fn)),di=Ga.dashTexture,di&&di._reglType==="framebuffer"&&(di=di.color[0]),Li=di._texture,xe.uniform1i(A.location,Li.bind()),Mi=Ga.depth,(!Un||Gn!==Mi)&&(Gn=Mi,xe.uniform1f(L.location,Mi)),ta=Ga.miterLimit,(!Un||ya!==ta)&&(ya=ta,xe.uniform1f(x.location,ta)),ia=M.call(this,Oe,Ga,Un),(!Un||pa!==ia)&&(pa=ia,xe.uniform1f(C.location,ia)),va=Ga.opacity,(!Un||zn!==va)&&(zn=va,xe.uniform1f(m.location,va)),is=Ga.scale,Cs=is[0],dl=is[1],(!Un||Ks!==Cs||xl!==dl)&&(Ks=Cs,xl=dl,xe.uniform2f(P.location,Cs,dl)),Bl=Ga.thickness,(!Un||bl!==Bl)&&(bl=Bl,xe.uniform1f(T.location,Bl)),eu=Ga.translate,Zl=eu[0],ja=eu[1],(!Un||Ul!==Zl||ns!==ja)&&(Ul=Zl,ns=ja,xe.uniform2f(B.location,Zl,ja)),Js=U.call(this,Oe,Ga,Un),cs=Js[0],ll=Js[1],zl=Js[2],Rl=Js[3],(!Un||sl!==cs||il!==ll||Ml!==zl||Tl!==Rl)&&(sl=cs,il=ll,Ml=zl,Tl=Rl,xe.uniform4f(F.location,cs,ll,zl,Rl)),Ll=Ga.count,Ll>0?da?Mn.drawElementsInstancedANGLE(5,4,da.type,0<<(da.type-5121>>1),Ll):Mn.drawArraysInstancedANGLE(5,0,4,Ll):Ll<0&&(da?xe.drawElements(5,4,da.type,0<<(da.type-5121>>1)):xe.drawArrays(5,0,4)),Oe.viewportWidth=mo,Oe.viewportHeight=No,Vs&&pe.destroyStream(Xn),Na&&pe.destroyStream(To),Wo&&pe.destroyStream(za),gs&&pe.destroyStream(Ea),Ss&&pe.destroyStream(io),hl&&pe.destroyStream(Bs),Li.unbind()}ft.dirty=!0,zt.setVAO(null),Xi&&(r.cpuTime+=performance.now()-aa)}}}});var z8=Ae((Hxr,$Ne)=>{$Ne.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je){"use strict";var nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai;return nt=t.gl,gt=t.context,Nt=t.strings,at=t.next,Ke=t.current,Ct=t.draw,wt=t.elements,St=t.buffer,Dt=t.shader,Zt=t.attributes,Et=t.vao,Te=t.uniforms,ot=t.framebuffer,Tt=t.extensions,vt=t.timer,Ye=t.isBufferArgs,He=at.blend_color,it=Ke.blend_color,et=at.blend_equation,It=Ke.blend_equation,Yt=at.blend_func,cr=Ke.blend_func,_r=at.depth_range,yr=Ke.depth_range,Ut=at.colorMask,Re=Ke.colorMask,xe=at.polygonOffset_offset,Oe=Ke.polygonOffset_offset,Ie=at.sample_coverage,Fe=Ke.sample_coverage,ft=at.stencil_func,ge=Ke.stencil_func,fe=at.stencil_opFront,pe=Ke.stencil_opFront,dt=at.stencil_opBack,Pt=Ke.stencil_opBack,zt=at.scissor_box,rr=Ke.scissor_box,Gr=at.viewport,Br=Ke.viewport,Er={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Rr={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},pi={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Di={add:32774,subtract:32778,"reverse subtract":32779},ni={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},$i={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Qi={cw:2304,ccw:2305},si={},si.stride=8,si.offset=8,Ai={},Ai.stride=8,Ai.offset=8,{draw:function(Ni){var Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo;if(Rt=Tt.angle_instanced_arrays,yt=ot.next,yt!==ot.cur&&(yt?nt.bindFramebuffer(36160,yt.framebuffer):nt.bindFramebuffer(36160,null),ot.cur=yt),Ke.dirty){var Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa;Ts=at.dither,Ts!==Ke.dither&&(Ts?nt.enable(3024):nt.disable(3024),Ke.dither=Ts),ps=at.depth_func,ps!==Ke.depth_func&&(nt.depthFunc(ps),Ke.depth_func=ps),co=_r[0],mo=_r[1],(co!==yr[0]||mo!==yr[1])&&(nt.depthRange(co,mo),yr[0]=co,yr[1]=mo),No=at.depth_mask,No!==Ke.depth_mask&&(nt.depthMask(No),Ke.depth_mask=No),jn=Ut[0],Go=Ut[1],Ys=Ut[2],qs=Ut[3],(jn!==Re[0]||Go!==Re[1]||Ys!==Re[2]||qs!==Re[3])&&(nt.colorMask(jn,Go,Ys,qs),Re[0]=jn,Re[1]=Go,Re[2]=Ys,Re[3]=qs),Ns=at.cull_enable,Ns!==Ke.cull_enable&&(Ns?nt.enable(2884):nt.disable(2884),Ke.cull_enable=Ns),Oa=at.cull_face,Oa!==Ke.cull_face&&(nt.cullFace(Oa),Ke.cull_face=Oa),ha=at.frontFace,ha!==Ke.frontFace&&(nt.frontFace(ha),Ke.frontFace=ha),Vs=at.lineWidth,Vs!==Ke.lineWidth&&(nt.lineWidth(Vs),Ke.lineWidth=Vs),Ya=at.polygonOffset_enable,Ya!==Ke.polygonOffset_enable&&(Ya?nt.enable(32823):nt.disable(32823),Ke.polygonOffset_enable=Ya),_n=xe[0],Vn=xe[1],(_n!==Oe[0]||Vn!==Oe[1])&&(nt.polygonOffset(_n,Vn),Oe[0]=_n,Oe[1]=Vn),wo=at.sample_alpha,wo!==Ke.sample_alpha&&(wo?nt.enable(32926):nt.disable(32926),Ke.sample_alpha=wo),Ra=at.sample_enable,Ra!==Ke.sample_enable&&(Ra?nt.enable(32928):nt.disable(32928),Ke.sample_enable=Ra),Xn=Ie[0],un=Ie[1],(Xn!==Fe[0]||un!==Fe[1])&&(nt.sampleCoverage(Xn,un),Fe[0]=Xn,Fe[1]=un),$n=at.stencil_mask,$n!==Ke.stencil_mask&&(nt.stencilMask($n),Ke.stencil_mask=$n),Ka=ft[0],qn=ft[1],Eo=ft[2],(Ka!==ge[0]||qn!==ge[1]||Eo!==ge[2])&&(nt.stencilFunc(Ka,qn,Eo),ge[0]=Ka,ge[1]=qn,ge[2]=Eo),Ja=fe[0],lo=fe[1],eo=fe[2],sa=fe[3],(Ja!==pe[0]||lo!==pe[1]||eo!==pe[2]||sa!==pe[3])&&(nt.stencilOpSeparate(Ja,lo,eo,sa),pe[0]=Ja,pe[1]=lo,pe[2]=eo,pe[3]=sa),es=dt[0],Na=dt[1],rn=dt[2],Pa=dt[3],(es!==Pt[0]||Na!==Pt[1]||rn!==Pt[2]||Pa!==Pt[3])&&(nt.stencilOpSeparate(es,Na,rn,Pa),Pt[0]=es,Pt[1]=Na,Pt[2]=rn,Pt[3]=Pa)}Gt=Ni.viewport,Wt=Gt.x|0,xr=Gt.y|0,Lr="width"in Gt?Gt.width|0:gt.framebufferWidth-Wt,Nr="height"in Gt?Gt.height|0:gt.framebufferHeight-xr,Or=gt.viewportWidth,gt.viewportWidth=Lr,Hr=gt.viewportHeight,gt.viewportHeight=Nr,nt.viewport(Wt,xr,Lr,Nr),Br[0]=Wt,Br[1]=xr,Br[2]=Lr,Br[3]=Nr,nt.blendColor(0,0,0,0),it[0]=0,it[1]=0,it[2]=0,it[3]=0,n?nt.enable(3042):nt.disable(3042),Ke.blend_enable=n,nt.blendEquationSeparate(32774,32774),It[0]=32774,It[1]=32774,nt.blendFuncSeparate(770,771,773,1),cr[0]=770,cr[1]=771,cr[2]=773,cr[3]=1,i?nt.enable(2929):nt.disable(2929),Ke.depth_enable=i,jr=Ni.viewport,gi=jr.x|0,ki=jr.y|0,Vi="width"in jr?jr.width|0:gt.framebufferWidth-gi,ti="height"in jr?jr.height|0:gt.framebufferHeight-ki,nt.scissor(gi,ki,Vi,ti),rr[0]=gi,rr[1]=ki,rr[2]=Vi,rr[3]=ti,a?nt.enable(3089):nt.disable(3089),Ke.scissor_enable=a,o?nt.enable(2960):nt.disable(2960),Ke.stencil_enable=o,tn=Ke.profile,tn&&(Yr=performance.now(),r.count++),nt.useProgram(s.program),oi=Tt.angle_instanced_arrays,Et.setVAO(null),Fi=Ni.positionBuffer,si.buffer=Fi,an=!1,nn=1,Ri=0,Ii=0,xn=0,bi=0,Xr=null,ct=0,tr=!1,pr=5126,gr=0,Zr=0,Ti=0,Ye(si)?(an=!0,Xr=St.createStream(34962,si),pr=Xr.dtype):(Xr=St.getBuffer(si),Xr?pr=Xr.dtype:"constant"in si?(nn=2,typeof si.constant=="number"?(Ri=si.constant,Ii=xn=bi=0):(Ri=si.constant.length>0?si.constant[0]:0,Ii=si.constant.length>1?si.constant[1]:0,xn=si.constant.length>2?si.constant[2]:0,bi=si.constant.length>3?si.constant[3]:0)):(Ye(si.buffer)?Xr=St.createStream(34962,si.buffer):Xr=St.getBuffer(si.buffer),pr="type"in si?$i[si.type]:Xr.dtype,tr=!!si.normalized,ct=si.size|0,gr=si.offset|0,Zr=si.stride|0,Ti=si.divisor|0)),en=u.location,ii=Zt[en],nn===1?(ii.buffer||nt.enableVertexAttribArray(en),Xi=ct||2,(ii.type!==pr||ii.size!==Xi||ii.buffer!==Xr||ii.normalized!==tr||ii.offset!==gr||ii.stride!==Zr)&&(nt.bindBuffer(34962,Xr.buffer),nt.vertexAttribPointer(en,Xi,pr,tr,Zr,gr),ii.type=pr,ii.size=Xi,ii.buffer=Xr,ii.normalized=tr,ii.offset=gr,ii.stride=Zr),ii.divisor!==Ti&&(oi.vertexAttribDivisorANGLE(en,Ti),ii.divisor=Ti)):(ii.buffer&&(nt.disableVertexAttribArray(en),ii.buffer=null),(ii.x!==Ri||ii.y!==Ii||ii.z!==xn||ii.w!==bi)&&(nt.vertexAttrib4f(en,Ri,Ii,xn,bi),ii.x=Ri,ii.y=Ii,ii.z=xn,ii.w=bi)),aa=Ni.positionFractBuffer,Ai.buffer=aa,Mn=!1,Un=1,Ga=0,ma=0,oa=0,ka=0,so=null,Kr=0,Ia=!1,Yo=5126,fa=0,kn=0,Aa=0,Ye(Ai)?(Mn=!0,so=St.createStream(34962,Ai),Yo=so.dtype):(so=St.getBuffer(Ai),so?Yo=so.dtype:"constant"in Ai?(Un=2,typeof Ai.constant=="number"?(Ga=Ai.constant,ma=oa=ka=0):(Ga=Ai.constant.length>0?Ai.constant[0]:0,ma=Ai.constant.length>1?Ai.constant[1]:0,oa=Ai.constant.length>2?Ai.constant[2]:0,ka=Ai.constant.length>3?Ai.constant[3]:0)):(Ye(Ai.buffer)?so=St.createStream(34962,Ai.buffer):so=St.getBuffer(Ai.buffer),Yo="type"in Ai?$i[Ai.type]:so.dtype,Ia=!!Ai.normalized,Kr=Ai.size|0,fa=Ai.offset|0,kn=Ai.stride|0,Aa=Ai.divisor|0)),ys=l.location,uo=Zt[ys],Un===1?(uo.buffer||nt.enableVertexAttribArray(ys),ls=Kr||2,(uo.type!==Yo||uo.size!==ls||uo.buffer!==so||uo.normalized!==Ia||uo.offset!==fa||uo.stride!==kn)&&(nt.bindBuffer(34962,so.buffer),nt.vertexAttribPointer(ys,ls,Yo,Ia,kn,fa),uo.type=Yo,uo.size=ls,uo.buffer=so,uo.normalized=Ia,uo.offset=fa,uo.stride=kn),uo.divisor!==Aa&&(oi.vertexAttribDivisorANGLE(ys,Aa),uo.divisor=Aa)):(uo.buffer&&(nt.disableVertexAttribArray(ys),uo.buffer=null),(uo.x!==Ga||uo.y!==ma||uo.z!==oa||uo.w!==ka)&&(nt.vertexAttrib4f(ys,Ga,ma,oa,ka),uo.x=Ga,uo.y=ma,uo.z=oa,uo.w=ka)),$a=Ni.fill,fo=$a[0],mn=$a[1],ra=$a[2],wa=$a[3],nt.uniform4f(f.location,fo,mn,ra,wa),ws=Ni.id,nt.uniform1f(c.location,ws),Co=Ni.opacity,nt.uniform1f(h.location,Co),Po=Ni.scale,Wi=Po[0],gn=Po[1],nt.uniform2f(d.location,Wi,gn),Ps=Ni.scaleFract,Ha=Ps[0],Sn=Ps[1],nt.uniform2f(p.location,Ha,Sn),ao=Ni.translate,Ba=ao[0],Ko=ao[1],nt.uniform2f(_.location,Ba,Ko),Qo=Ni.translateFract,Hi=Qo[0],Sa=Qo[1],nt.uniform2f(b.location,Hi,Sa),Qa=v.call(this,gt,Ni,0),vn=null,da=Ye(Qa),da?vn=wt.createStream(Qa):vn=wt.getElements(Qa),vn&&nt.bindBuffer(34963,vn.buffer.buffer),la=vn?vn.vertCount:-1,la&&(vo=Ct.instances,vo>0?vn?oi.drawElementsInstancedANGLE(4,la,vn.type,0<<(vn.type-5121>>1),vo):oi.drawArraysInstancedANGLE(4,0,la,vo):vo<0&&(vn?nt.drawElements(4,la,vn.type,0<<(vn.type-5121>>1)):nt.drawArrays(4,0,la)),Ke.dirty=!0,Et.setVAO(null),gt.viewportWidth=Or,gt.viewportHeight=Hr,tn&&(r.cpuTime+=performance.now()-Yr),an&&St.destroyStream(Xr),Mn&&St.destroyStream(so),da&&wt.destroyStream(vn))},scope:function(Ni,Rt,yt){var Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho;Gt=Ni.viewport,Wt=Gt.x|0,xr=Gt.y|0,Lr="width"in Gt?Gt.width|0:gt.framebufferWidth-Wt,Nr="height"in Gt?Gt.height|0:gt.framebufferHeight-xr,Or=gt.viewportWidth,gt.viewportWidth=Lr,Hr=gt.viewportHeight,gt.viewportHeight=Nr,jr=Gr[0],Gr[0]=Wt,gi=Gr[1],Gr[1]=xr,ki=Gr[2],Gr[2]=Lr,Vi=Gr[3],Gr[3]=Nr,ti=He[0],He[0]=k,tn=He[1],He[1]=E,Yr=He[2],He[2]=A,oi=He[3],He[3]=L,Fi=at.blend_enable,at.blend_enable=x,an=et[0],et[0]=C,nn=et[1],et[1]=M,Ri=Yt[0],Yt[0]=m,Ii=Yt[1],Yt[1]=P,xn=Yt[2],Yt[2]=T,bi=Yt[3],Yt[3]=B,Xr=at.depth_enable,at.depth_enable=F,ct=Ni.viewport,tr=ct.x|0,pr=ct.y|0,gr="width"in ct?ct.width|0:gt.framebufferWidth-tr,Zr="height"in ct?ct.height|0:gt.framebufferHeight-pr,Ti=zt[0],zt[0]=tr,en=zt[1],zt[1]=pr,ii=zt[2],zt[2]=gr,Xi=zt[3],zt[3]=Zr,aa=at.scissor_enable,at.scissor_enable=U,Mn=at.stencil_enable,at.stencil_enable=G,Un=Ke.profile,Un&&(Ga=performance.now(),r.count++),ma=v.call(this,gt,Ni,yt),oa=null,ka=Ye(ma),ka?oa=wt.createStream(ma):oa=wt.getElements(ma),so=Ct.elements,Ct.elements=oa,Kr=Ct.offset,Ct.offset=j,Ia=oa?oa.vertCount:-1,Yo=Ct.count,Ct.count=Ia,fa=Ct.primitive,Ct.primitive=W,kn=Ni.scale,Aa=Te[N],Te[N]=kn,ys=Ni.fill,uo=Te[H],Te[H]=ys,ls=Ni.scaleFract,$a=Te[re],Te[re]=ls,fo=Ni.translateFract,mn=Te[ae],Te[ae]=fo,ra=Ni.translate,wa=Te[be],Te[be]=ra,ws=Ni.opacity,Co=Te[ze],Te[ze]=ws,Po=gt.pixelRatio,Wi=Te[Ce],Te[Ce]=Po,gn=Ni.id,Ps=Te[de],Te[de]=gn,Ha=te.call(this,gt,Ni,yt),Sn=Te[ke],Te[ke]=Ha,ao=Ni.positionBuffer,si.buffer=ao,Ba=!1,Ko=1,Qo=0,Hi=0,Sa=0,Qa=0,vn=null,da=0,la=!1,vo=5126,Ts=0,ps=0,co=0,Ye(si)?(Ba=!0,vn=St.createStream(34962,si),vo=vn.dtype):(vn=St.getBuffer(si),vn?vo=vn.dtype:"constant"in si?(Ko=2,typeof si.constant=="number"?(Qo=si.constant,Hi=Sa=Qa=0):(Qo=si.constant.length>0?si.constant[0]:0,Hi=si.constant.length>1?si.constant[1]:0,Sa=si.constant.length>2?si.constant[2]:0,Qa=si.constant.length>3?si.constant[3]:0)):(Ye(si.buffer)?vn=St.createStream(34962,si.buffer):vn=St.getBuffer(si.buffer),vo="type"in si?$i[si.type]:vn.dtype,la=!!si.normalized,da=si.size|0,Ts=si.offset|0,ps=si.stride|0,co=si.divisor|0)),mo=Ee.state,Ee.state=Ko,No=Ee.x,Ee.x=Qo,jn=Ee.y,Ee.y=Hi,Go=Ee.z,Ee.z=Sa,Ys=Ee.w,Ee.w=Qa,qs=Ee.buffer,Ee.buffer=vn,Ns=Ee.size,Ee.size=da,Oa=Ee.normalized,Ee.normalized=la,ha=Ee.type,Ee.type=vo,Vs=Ee.offset,Ee.offset=Ts,Ya=Ee.stride,Ee.stride=ps,_n=Ee.divisor,Ee.divisor=co,Vn=Ni.positionFractBuffer,Ai.buffer=Vn,wo=!1,Ra=1,Xn=0,un=0,$n=0,Ka=0,qn=null,Eo=0,Ja=!1,lo=5126,eo=0,sa=0,es=0,Ye(Ai)?(wo=!0,qn=St.createStream(34962,Ai),lo=qn.dtype):(qn=St.getBuffer(Ai),qn?lo=qn.dtype:"constant"in Ai?(Ra=2,typeof Ai.constant=="number"?(Xn=Ai.constant,un=$n=Ka=0):(Xn=Ai.constant.length>0?Ai.constant[0]:0,un=Ai.constant.length>1?Ai.constant[1]:0,$n=Ai.constant.length>2?Ai.constant[2]:0,Ka=Ai.constant.length>3?Ai.constant[3]:0)):(Ye(Ai.buffer)?qn=St.createStream(34962,Ai.buffer):qn=St.getBuffer(Ai.buffer),lo="type"in Ai?$i[Ai.type]:qn.dtype,Ja=!!Ai.normalized,Eo=Ai.size|0,eo=Ai.offset|0,sa=Ai.stride|0,es=Ai.divisor|0)),Na=Me.state,Me.state=Ra,rn=Me.x,Me.x=Xn,Pa=Me.y,Me.y=un,to=Me.z,Me.z=$n,yo=Me.w,Me.w=Ka,Jo=Me.buffer,Me.buffer=qn,To=Me.size,Me.size=Eo,Dn=Me.normalized,Me.normalized=Ja,_a=Me.type,Me.type=lo,Ws=Me.offset,Me.offset=eo,Ca=Me.stride,Me.stride=sa,Es=Me.divisor,Me.divisor=es,As=Dt.vert,Dt.vert=Ue,Ho=Dt.frag,Dt.frag=De,Ke.dirty=!0,Rt(gt,Ni,yt),gt.viewportWidth=Or,gt.viewportHeight=Hr,Gr[0]=jr,Gr[1]=gi,Gr[2]=ki,Gr[3]=Vi,He[0]=ti,He[1]=tn,He[2]=Yr,He[3]=oi,at.blend_enable=Fi,et[0]=an,et[1]=nn,Yt[0]=Ri,Yt[1]=Ii,Yt[2]=xn,Yt[3]=bi,at.depth_enable=Xr,zt[0]=Ti,zt[1]=en,zt[2]=ii,zt[3]=Xi,at.scissor_enable=aa,at.stencil_enable=Mn,Un&&(r.cpuTime+=performance.now()-Ga),ka&&wt.destroyStream(oa),Ct.elements=so,Ct.offset=Kr,Ct.count=Yo,Ct.primitive=fa,Te[N]=Aa,Te[H]=uo,Te[re]=$a,Te[ae]=mn,Te[be]=wa,Te[ze]=Co,Te[Ce]=Wi,Te[de]=Ps,Te[ke]=Sn,Ba&&St.destroyStream(vn),Ee.state=mo,Ee.x=No,Ee.y=jn,Ee.z=Go,Ee.w=Ys,Ee.buffer=qs,Ee.size=Ns,Ee.normalized=Oa,Ee.type=ha,Ee.offset=Vs,Ee.stride=Ya,Ee.divisor=_n,wo&&St.destroyStream(qn),Me.state=Na,Me.x=rn,Me.y=Pa,Me.z=to,Me.w=yo,Me.buffer=Jo,Me.size=To,Me.normalized=Dn,Me.type=_a,Me.offset=Ws,Me.stride=Ca,Me.divisor=Es,Dt.vert=As,Dt.frag=Ho,Ke.dirty=!0},batch:function(Ni,Rt){var yt,Gt,Wt,xr,Lr,Nr,Or;if(yt=Tt.angle_instanced_arrays,Gt=ot.next,Gt!==ot.cur&&(Gt?nt.bindFramebuffer(36160,Gt.framebuffer):nt.bindFramebuffer(36160,null),ot.cur=Gt),Ke.dirty){var Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa;Hr=at.dither,Hr!==Ke.dither&&(Hr?nt.enable(3024):nt.disable(3024),Ke.dither=Hr),jr=at.depth_func,jr!==Ke.depth_func&&(nt.depthFunc(jr),Ke.depth_func=jr),gi=_r[0],ki=_r[1],(gi!==yr[0]||ki!==yr[1])&&(nt.depthRange(gi,ki),yr[0]=gi,yr[1]=ki),Vi=at.depth_mask,Vi!==Ke.depth_mask&&(nt.depthMask(Vi),Ke.depth_mask=Vi),ti=Ut[0],tn=Ut[1],Yr=Ut[2],oi=Ut[3],(ti!==Re[0]||tn!==Re[1]||Yr!==Re[2]||oi!==Re[3])&&(nt.colorMask(ti,tn,Yr,oi),Re[0]=ti,Re[1]=tn,Re[2]=Yr,Re[3]=oi),Fi=at.cull_enable,Fi!==Ke.cull_enable&&(Fi?nt.enable(2884):nt.disable(2884),Ke.cull_enable=Fi),an=at.cull_face,an!==Ke.cull_face&&(nt.cullFace(an),Ke.cull_face=an),nn=at.frontFace,nn!==Ke.frontFace&&(nt.frontFace(nn),Ke.frontFace=nn),Ri=at.lineWidth,Ri!==Ke.lineWidth&&(nt.lineWidth(Ri),Ke.lineWidth=Ri),Ii=at.polygonOffset_enable,Ii!==Ke.polygonOffset_enable&&(Ii?nt.enable(32823):nt.disable(32823),Ke.polygonOffset_enable=Ii),xn=xe[0],bi=xe[1],(xn!==Oe[0]||bi!==Oe[1])&&(nt.polygonOffset(xn,bi),Oe[0]=xn,Oe[1]=bi),Xr=at.sample_alpha,Xr!==Ke.sample_alpha&&(Xr?nt.enable(32926):nt.disable(32926),Ke.sample_alpha=Xr),ct=at.sample_enable,ct!==Ke.sample_enable&&(ct?nt.enable(32928):nt.disable(32928),Ke.sample_enable=ct),tr=Ie[0],pr=Ie[1],(tr!==Fe[0]||pr!==Fe[1])&&(nt.sampleCoverage(tr,pr),Fe[0]=tr,Fe[1]=pr),gr=at.stencil_mask,gr!==Ke.stencil_mask&&(nt.stencilMask(gr),Ke.stencil_mask=gr),Zr=ft[0],Ti=ft[1],en=ft[2],(Zr!==ge[0]||Ti!==ge[1]||en!==ge[2])&&(nt.stencilFunc(Zr,Ti,en),ge[0]=Zr,ge[1]=Ti,ge[2]=en),ii=fe[0],Xi=fe[1],aa=fe[2],Mn=fe[3],(ii!==pe[0]||Xi!==pe[1]||aa!==pe[2]||Mn!==pe[3])&&(nt.stencilOpSeparate(ii,Xi,aa,Mn),pe[0]=ii,pe[1]=Xi,pe[2]=aa,pe[3]=Mn),Un=dt[0],Ga=dt[1],ma=dt[2],oa=dt[3],(Un!==Pt[0]||Ga!==Pt[1]||ma!==Pt[2]||oa!==Pt[3])&&(nt.stencilOpSeparate(Un,Ga,ma,oa),Pt[0]=Un,Pt[1]=Ga,Pt[2]=ma,Pt[3]=oa)}nt.blendColor(0,0,0,0),it[0]=0,it[1]=0,it[2]=0,it[3]=0,ye?nt.enable(3042):nt.disable(3042),Ke.blend_enable=ye,nt.blendEquationSeparate(32774,32774),It[0]=32774,It[1]=32774,nt.blendFuncSeparate(770,771,773,1),cr[0]=770,cr[1]=771,cr[2]=773,cr[3]=1,qe?nt.enable(2929):nt.disable(2929),Ke.depth_enable=qe,ce?nt.enable(3089):nt.disable(3089),Ke.scissor_enable=ce,Je?nt.enable(2960):nt.disable(2960),Ke.stencil_enable=Je,Wt=Ke.profile,Wt&&(xr=performance.now(),r.count+=Rt),nt.useProgram(s.program),Lr=Tt.angle_instanced_arrays;var ka;for(Et.setVAO(null),ka=Ct.instances,Nr=0;Nr0?si.constant[0]:0,Co=si.constant.length>1?si.constant[1]:0,Po=si.constant.length>2?si.constant[2]:0,Wi=si.constant.length>3?si.constant[3]:0)):(Ye(si.buffer)?gn=St.createStream(34962,si.buffer):gn=St.getBuffer(si.buffer),Sn="type"in si?$i[si.type]:gn.dtype,Ha=!!si.normalized,Ps=si.size|0,ao=si.offset|0,Ba=si.stride|0,Ko=si.divisor|0)),Qo=u.location,Hi=Zt[Qo],wa===1?(Hi.buffer||nt.enableVertexAttribArray(Qo),Sa=Ps||2,(Hi.type!==Sn||Hi.size!==Sa||Hi.buffer!==gn||Hi.normalized!==Ha||Hi.offset!==ao||Hi.stride!==Ba)&&(nt.bindBuffer(34962,gn.buffer),nt.vertexAttribPointer(Qo,Sa,Sn,Ha,Ba,ao),Hi.type=Sn,Hi.size=Sa,Hi.buffer=gn,Hi.normalized=Ha,Hi.offset=ao,Hi.stride=Ba),Hi.divisor!==Ko&&(Lr.vertexAttribDivisorANGLE(Qo,Ko),Hi.divisor=Ko)):(Hi.buffer&&(nt.disableVertexAttribArray(Qo),Hi.buffer=null),(Hi.x!==ws||Hi.y!==Co||Hi.z!==Po||Hi.w!==Wi)&&(nt.vertexAttrib4f(Qo,ws,Co,Po,Wi),Hi.x=ws,Hi.y=Co,Hi.z=Po,Hi.w=Wi)),Qa=Or.positionFractBuffer,Ai.buffer=Qa,vn=!1,da=1,la=0,vo=0,Ts=0,ps=0,co=null,mo=0,No=!1,jn=5126,Go=0,Ys=0,qs=0,Ye(Ai)?(vn=!0,co=St.createStream(34962,Ai),jn=co.dtype):(co=St.getBuffer(Ai),co?jn=co.dtype:"constant"in Ai?(da=2,typeof Ai.constant=="number"?(la=Ai.constant,vo=Ts=ps=0):(la=Ai.constant.length>0?Ai.constant[0]:0,vo=Ai.constant.length>1?Ai.constant[1]:0,Ts=Ai.constant.length>2?Ai.constant[2]:0,ps=Ai.constant.length>3?Ai.constant[3]:0)):(Ye(Ai.buffer)?co=St.createStream(34962,Ai.buffer):co=St.getBuffer(Ai.buffer),jn="type"in Ai?$i[Ai.type]:co.dtype,No=!!Ai.normalized,mo=Ai.size|0,Go=Ai.offset|0,Ys=Ai.stride|0,qs=Ai.divisor|0)),Ns=l.location,Oa=Zt[Ns],da===1?(Oa.buffer||nt.enableVertexAttribArray(Ns),ha=mo||2,(Oa.type!==jn||Oa.size!==ha||Oa.buffer!==co||Oa.normalized!==No||Oa.offset!==Go||Oa.stride!==Ys)&&(nt.bindBuffer(34962,co.buffer),nt.vertexAttribPointer(Ns,ha,jn,No,Ys,Go),Oa.type=jn,Oa.size=ha,Oa.buffer=co,Oa.normalized=No,Oa.offset=Go,Oa.stride=Ys),Oa.divisor!==qs&&(Lr.vertexAttribDivisorANGLE(Ns,qs),Oa.divisor=qs)):(Oa.buffer&&(nt.disableVertexAttribArray(Ns),Oa.buffer=null),(Oa.x!==la||Oa.y!==vo||Oa.z!==Ts||Oa.w!==ps)&&(nt.vertexAttrib4f(Ns,la,vo,Ts,ps),Oa.x=la,Oa.y=vo,Oa.z=Ts,Oa.w=ps)),Vs=Or.fill,Ya=Vs[0],Vn=Vs[1],Ra=Vs[2],un=Vs[3],(!Nr||_n!==Ya||wo!==Vn||Xn!==Ra||$n!==un)&&(_n=Ya,wo=Vn,Xn=Ra,$n=un,nt.uniform4f(f.location,Ya,Vn,Ra,un)),Ka=Or.id,(!Nr||qn!==Ka)&&(qn=Ka,nt.uniform1f(c.location,Ka)),Eo=Or.opacity,(!Nr||Ja!==Eo)&&(Ja=Eo,nt.uniform1f(h.location,Eo)),lo=Or.scale,eo=lo[0],es=lo[1],(!Nr||sa!==eo||Na!==es)&&(sa=eo,Na=es,nt.uniform2f(d.location,eo,es)),rn=Or.scaleFract,Pa=rn[0],yo=rn[1],(!Nr||to!==Pa||Jo!==yo)&&(to=Pa,Jo=yo,nt.uniform2f(p.location,Pa,yo)),To=Or.translate,Dn=To[0],Ws=To[1],(!Nr||_a!==Dn||Ca!==Ws)&&(_a=Dn,Ca=Ws,nt.uniform2f(_.location,Dn,Ws)),Es=Or.translateFract,As=Es[0],Wa=Es[1],(!Nr||Ho!==As||Ao!==Wa)&&(Ho=As,Ao=Wa,nt.uniform2f(b.location,As,Wa)),ts=v.call(this,gt,Or,Nr),Wo=null,qa=Ye(ts),qa?Wo=wt.createStream(ts):Wo=wt.getElements(ts),Wo&&nt.bindBuffer(34963,Wo.buffer.buffer),ln=Wo?Wo.vertCount:-1,ln&&(ka>0?Wo?Lr.drawElementsInstancedANGLE(4,ln,Wo.type,0<<(Wo.type-5121>>1),ka):Lr.drawArraysInstancedANGLE(4,0,ln,ka):ka<0&&(Wo?nt.drawElements(4,ln,Wo.type,0<<(Wo.type-5121>>1)):nt.drawArrays(4,0,ln)),gt.viewportWidth=kn,gt.viewportHeight=Aa,ra&&St.destroyStream(gn),vn&&St.destroyStream(co),qa&&wt.destroyStream(Wo))}Ke.dirty=!0,Et.setVAO(null),Wt&&(r.cpuTime+=performance.now()-xr)}}}});var I8=Ae((Wxr,QNe)=>{QNe.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut){"use strict";var Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii;return Re=t.gl,xe=t.context,Oe=t.strings,Ie=t.next,Fe=t.current,ft=t.draw,ge=t.elements,fe=t.buffer,pe=t.shader,dt=t.attributes,Pt=t.vao,zt=t.uniforms,rr=t.framebuffer,Gr=t.extensions,Br=t.timer,Er=t.isBufferArgs,Rr=Ie.blend_color,pi=Fe.blend_color,Di=Ie.blend_equation,ni=Fe.blend_equation,$i=Ie.blend_func,Qi=Fe.blend_func,si=Ie.depth_range,Ai=Fe.depth_range,Ni=Ie.colorMask,Rt=Fe.colorMask,yt=Ie.polygonOffset_offset,Gt=Fe.polygonOffset_offset,Wt=Ie.sample_coverage,xr=Fe.sample_coverage,Lr=Ie.stencil_func,Nr=Fe.stencil_func,Or=Ie.stencil_opFront,Hr=Fe.stencil_opFront,jr=Ie.stencil_opBack,gi=Fe.stencil_opBack,ki=Ie.scissor_box,Vi=Fe.scissor_box,ti=Ie.viewport,tn=Fe.viewport,Yr={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},oi={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Fi={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},an={add:32774,subtract:32778,"reverse subtract":32779},nn={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Ri={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Ii={cw:2304,ccw:2305},{draw:function(xn){var bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl,ll,il,zl;if(bi=Gr.angle_instanced_arrays,Xr=rr.next,Xr!==rr.cur&&(Xr?Re.bindFramebuffer(36160,Xr.framebuffer):Re.bindFramebuffer(36160,null),rr.cur=Xr),Fe.dirty){var Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt,pt,Ht,nr,fr,Tr;Ml=Ie.dither,Ml!==Fe.dither&&(Ml?Re.enable(3024):Re.disable(3024),Fe.dither=Ml),Rl=Di[0],Tl=Di[1],(Rl!==ni[0]||Tl!==ni[1])&&(Re.blendEquationSeparate(Rl,Tl),ni[0]=Rl,ni[1]=Tl),Ll=Ie.depth_func,Ll!==Fe.depth_func&&(Re.depthFunc(Ll),Fe.depth_func=Ll),ms=si[0],Os=si[1],(ms!==Ai[0]||Os!==Ai[1])&&(Re.depthRange(ms,Os),Ai[0]=ms,Ai[1]=Os),Xl=Ie.depth_mask,Xl!==Fe.depth_mask&&(Re.depthMask(Xl),Fe.depth_mask=Xl),Vl=Ni[0],Nl=Ni[1],le=Ni[2],w=Ni[3],(Vl!==Rt[0]||Nl!==Rt[1]||le!==Rt[2]||w!==Rt[3])&&(Re.colorMask(Vl,Nl,le,w),Rt[0]=Vl,Rt[1]=Nl,Rt[2]=le,Rt[3]=w),q=Ie.cull_enable,q!==Fe.cull_enable&&(q?Re.enable(2884):Re.disable(2884),Fe.cull_enable=q),Q=Ie.cull_face,Q!==Fe.cull_face&&(Re.cullFace(Q),Fe.cull_face=Q),ee=Ie.frontFace,ee!==Fe.frontFace&&(Re.frontFace(ee),Fe.frontFace=ee),ue=Ie.lineWidth,ue!==Fe.lineWidth&&(Re.lineWidth(ue),Fe.lineWidth=ue),Ve=Ie.polygonOffset_enable,Ve!==Fe.polygonOffset_enable&&(Ve?Re.enable(32823):Re.disable(32823),Fe.polygonOffset_enable=Ve),tt=yt[0],mt=yt[1],(tt!==Gt[0]||mt!==Gt[1])&&(Re.polygonOffset(tt,mt),Gt[0]=tt,Gt[1]=mt),Bt=Ie.sample_alpha,Bt!==Fe.sample_alpha&&(Bt?Re.enable(32926):Re.disable(32926),Fe.sample_alpha=Bt),ir=Ie.sample_enable,ir!==Fe.sample_enable&&(ir?Re.enable(32928):Re.disable(32928),Fe.sample_enable=ir),or=Wt[0],kr=Wt[1],(or!==xr[0]||kr!==xr[1])&&(Re.sampleCoverage(or,kr),xr[0]=or,xr[1]=kr),Vr=Ie.stencil_mask,Vr!==Fe.stencil_mask&&(Re.stencilMask(Vr),Fe.stencil_mask=Vr),he=Lr[0],Se=Lr[1],Ne=Lr[2],(he!==Nr[0]||Se!==Nr[1]||Ne!==Nr[2])&&(Re.stencilFunc(he,Se,Ne),Nr[0]=he,Nr[1]=Se,Nr[2]=Ne),Ge=Or[0],lt=Or[1],rt=Or[2],pt=Or[3],(Ge!==Hr[0]||lt!==Hr[1]||rt!==Hr[2]||pt!==Hr[3])&&(Re.stencilOpSeparate(Ge,lt,rt,pt),Hr[0]=Ge,Hr[1]=lt,Hr[2]=rt,Hr[3]=pt),Ht=jr[0],nr=jr[1],fr=jr[2],Tr=jr[3],(Ht!==gi[0]||nr!==gi[1]||fr!==gi[2]||Tr!==gi[3])&&(Re.stencilOpSeparate(Ht,nr,fr,Tr),gi[0]=Ht,gi[1]=nr,gi[2]=fr,gi[3]=Tr)}ct=xn.viewport,tr=ct.x|0,pr=ct.y|0,gr="width"in ct?ct.width|0:xe.framebufferWidth-tr,Zr="height"in ct?ct.height|0:xe.framebufferHeight-pr,Ti=xe.viewportWidth,xe.viewportWidth=gr,en=xe.viewportHeight,xe.viewportHeight=Zr,Re.viewport(tr,pr,gr,Zr),tn[0]=tr,tn[1]=pr,tn[2]=gr,tn[3]=Zr,Re.blendColor(0,0,0,1),pi[0]=0,pi[1]=0,pi[2]=0,pi[3]=1,n?Re.enable(3042):Re.disable(3042),Fe.blend_enable=n,Re.blendFuncSeparate(770,771,773,1),Qi[0]=770,Qi[1]=771,Qi[2]=773,Qi[3]=1,i?Re.enable(2929):Re.disable(2929),Fe.depth_enable=i,ii=xn.viewport,Xi=ii.x|0,aa=ii.y|0,Mn="width"in ii?ii.width|0:xe.framebufferWidth-Xi,Un="height"in ii?ii.height|0:xe.framebufferHeight-aa,Re.scissor(Xi,aa,Mn,Un),Vi[0]=Xi,Vi[1]=aa,Vi[2]=Mn,Vi[3]=Un,a?Re.enable(3089):Re.disable(3089),Fe.scissor_enable=a,o?Re.enable(2960):Re.disable(2960),Fe.stencil_enable=o,Ga=Fe.profile,Ga&&(ma=performance.now(),r.count++),Re.useProgram(s.program),oa=Gr.angle_instanced_arrays,Pt.setVAO(null),ka=u.call(this,xe,xn,0),so=!1,Kr=1,Ia=0,Yo=0,fa=0,kn=0,Aa=null,ys=0,uo=!1,ls=5126,$a=0,fo=0,mn=0,Er(ka)?(so=!0,Aa=fe.createStream(34962,ka),ls=Aa.dtype):(Aa=fe.getBuffer(ka),Aa?ls=Aa.dtype:"constant"in ka?(Kr=2,typeof ka.constant=="number"?(Ia=ka.constant,Yo=fa=kn=0):(Ia=ka.constant.length>0?ka.constant[0]:0,Yo=ka.constant.length>1?ka.constant[1]:0,fa=ka.constant.length>2?ka.constant[2]:0,kn=ka.constant.length>3?ka.constant[3]:0)):(Er(ka.buffer)?Aa=fe.createStream(34962,ka.buffer):Aa=fe.getBuffer(ka.buffer),ls="type"in ka?Ri[ka.type]:Aa.dtype,uo=!!ka.normalized,ys=ka.size|0,$a=ka.offset|0,fo=ka.stride|0,mn=ka.divisor|0)),ra=l.location,wa=dt[ra],Kr===1?(wa.buffer||Re.enableVertexAttribArray(ra),ws=ys||4,(wa.type!==ls||wa.size!==ws||wa.buffer!==Aa||wa.normalized!==uo||wa.offset!==$a||wa.stride!==fo)&&(Re.bindBuffer(34962,Aa.buffer),Re.vertexAttribPointer(ra,ws,ls,uo,fo,$a),wa.type=ls,wa.size=ws,wa.buffer=Aa,wa.normalized=uo,wa.offset=$a,wa.stride=fo),wa.divisor!==mn&&(oa.vertexAttribDivisorANGLE(ra,mn),wa.divisor=mn)):(wa.buffer&&(Re.disableVertexAttribArray(ra),wa.buffer=null),(wa.x!==Ia||wa.y!==Yo||wa.z!==fa||wa.w!==kn)&&(Re.vertexAttrib4f(ra,Ia,Yo,fa,kn),wa.x=Ia,wa.y=Yo,wa.z=fa,wa.w=kn)),Co=f.call(this,xe,xn,0),Po=!1,Wi=1,gn=0,Ps=0,Ha=0,Sn=0,ao=null,Ba=0,Ko=!1,Qo=5126,Hi=0,Sa=0,Qa=0,Er(Co)?(Po=!0,ao=fe.createStream(34962,Co),Qo=ao.dtype):(ao=fe.getBuffer(Co),ao?Qo=ao.dtype:"constant"in Co?(Wi=2,typeof Co.constant=="number"?(gn=Co.constant,Ps=Ha=Sn=0):(gn=Co.constant.length>0?Co.constant[0]:0,Ps=Co.constant.length>1?Co.constant[1]:0,Ha=Co.constant.length>2?Co.constant[2]:0,Sn=Co.constant.length>3?Co.constant[3]:0)):(Er(Co.buffer)?ao=fe.createStream(34962,Co.buffer):ao=fe.getBuffer(Co.buffer),Qo="type"in Co?Ri[Co.type]:ao.dtype,Ko=!!Co.normalized,Ba=Co.size|0,Hi=Co.offset|0,Sa=Co.stride|0,Qa=Co.divisor|0)),vn=c.location,da=dt[vn],Wi===1?(da.buffer||Re.enableVertexAttribArray(vn),la=Ba||1,(da.type!==Qo||da.size!==la||da.buffer!==ao||da.normalized!==Ko||da.offset!==Hi||da.stride!==Sa)&&(Re.bindBuffer(34962,ao.buffer),Re.vertexAttribPointer(vn,la,Qo,Ko,Sa,Hi),da.type=Qo,da.size=la,da.buffer=ao,da.normalized=Ko,da.offset=Hi,da.stride=Sa),da.divisor!==Qa&&(oa.vertexAttribDivisorANGLE(vn,Qa),da.divisor=Qa)):(da.buffer&&(Re.disableVertexAttribArray(vn),da.buffer=null),(da.x!==gn||da.y!==Ps||da.z!==Ha||da.w!==Sn)&&(Re.vertexAttrib4f(vn,gn,Ps,Ha,Sn),da.x=gn,da.y=Ps,da.z=Ha,da.w=Sn)),vo=h.call(this,xe,xn,0),Ts=!1,ps=1,co=0,mo=0,No=0,jn=0,Go=null,Ys=0,qs=!1,Ns=5126,Oa=0,ha=0,Vs=0,Er(vo)?(Ts=!0,Go=fe.createStream(34962,vo),Ns=Go.dtype):(Go=fe.getBuffer(vo),Go?Ns=Go.dtype:"constant"in vo?(ps=2,typeof vo.constant=="number"?(co=vo.constant,mo=No=jn=0):(co=vo.constant.length>0?vo.constant[0]:0,mo=vo.constant.length>1?vo.constant[1]:0,No=vo.constant.length>2?vo.constant[2]:0,jn=vo.constant.length>3?vo.constant[3]:0)):(Er(vo.buffer)?Go=fe.createStream(34962,vo.buffer):Go=fe.getBuffer(vo.buffer),Ns="type"in vo?Ri[vo.type]:Go.dtype,qs=!!vo.normalized,Ys=vo.size|0,Oa=vo.offset|0,ha=vo.stride|0,Vs=vo.divisor|0)),Ya=d.location,_n=dt[Ya],ps===1?(_n.buffer||Re.enableVertexAttribArray(Ya),Vn=Ys||4,(_n.type!==Ns||_n.size!==Vn||_n.buffer!==Go||_n.normalized!==qs||_n.offset!==Oa||_n.stride!==ha)&&(Re.bindBuffer(34962,Go.buffer),Re.vertexAttribPointer(Ya,Vn,Ns,qs,ha,Oa),_n.type=Ns,_n.size=Vn,_n.buffer=Go,_n.normalized=qs,_n.offset=Oa,_n.stride=ha),_n.divisor!==Vs&&(oa.vertexAttribDivisorANGLE(Ya,Vs),_n.divisor=Vs)):(_n.buffer&&(Re.disableVertexAttribArray(Ya),_n.buffer=null),(_n.x!==co||_n.y!==mo||_n.z!==No||_n.w!==jn)&&(Re.vertexAttrib4f(Ya,co,mo,No,jn),_n.x=co,_n.y=mo,_n.z=No,_n.w=jn)),wo=p.call(this,xe,xn,0),Ra=!1,Xn=1,un=0,$n=0,Ka=0,qn=0,Eo=null,Ja=0,lo=!1,eo=5126,sa=0,es=0,Na=0,Er(wo)?(Ra=!0,Eo=fe.createStream(34962,wo),eo=Eo.dtype):(Eo=fe.getBuffer(wo),Eo?eo=Eo.dtype:"constant"in wo?(Xn=2,typeof wo.constant=="number"?(un=wo.constant,$n=Ka=qn=0):(un=wo.constant.length>0?wo.constant[0]:0,$n=wo.constant.length>1?wo.constant[1]:0,Ka=wo.constant.length>2?wo.constant[2]:0,qn=wo.constant.length>3?wo.constant[3]:0)):(Er(wo.buffer)?Eo=fe.createStream(34962,wo.buffer):Eo=fe.getBuffer(wo.buffer),eo="type"in wo?Ri[wo.type]:Eo.dtype,lo=!!wo.normalized,Ja=wo.size|0,sa=wo.offset|0,es=wo.stride|0,Na=wo.divisor|0)),rn=_.location,Pa=dt[rn],Xn===1?(Pa.buffer||Re.enableVertexAttribArray(rn),to=Ja||1,(Pa.type!==eo||Pa.size!==to||Pa.buffer!==Eo||Pa.normalized!==lo||Pa.offset!==sa||Pa.stride!==es)&&(Re.bindBuffer(34962,Eo.buffer),Re.vertexAttribPointer(rn,to,eo,lo,es,sa),Pa.type=eo,Pa.size=to,Pa.buffer=Eo,Pa.normalized=lo,Pa.offset=sa,Pa.stride=es),Pa.divisor!==Na&&(oa.vertexAttribDivisorANGLE(rn,Na),Pa.divisor=Na)):(Pa.buffer&&(Re.disableVertexAttribArray(rn),Pa.buffer=null),(Pa.x!==un||Pa.y!==$n||Pa.z!==Ka||Pa.w!==qn)&&(Re.vertexAttrib4f(rn,un,$n,Ka,qn),Pa.x=un,Pa.y=$n,Pa.z=Ka,Pa.w=qn)),yo=b.call(this,xe,xn,0),Jo=!1,To=1,Dn=0,_a=0,Ws=0,Ca=0,Es=null,As=0,Ho=!1,Wa=5126,Ao=0,ts=0,Wo=0,Er(yo)?(Jo=!0,Es=fe.createStream(34962,yo),Wa=Es.dtype):(Es=fe.getBuffer(yo),Es?Wa=Es.dtype:"constant"in yo?(To=2,typeof yo.constant=="number"?(Dn=yo.constant,_a=Ws=Ca=0):(Dn=yo.constant.length>0?yo.constant[0]:0,_a=yo.constant.length>1?yo.constant[1]:0,Ws=yo.constant.length>2?yo.constant[2]:0,Ca=yo.constant.length>3?yo.constant[3]:0)):(Er(yo.buffer)?Es=fe.createStream(34962,yo.buffer):Es=fe.getBuffer(yo.buffer),Wa="type"in yo?Ri[yo.type]:Es.dtype,Ho=!!yo.normalized,As=yo.size|0,Ao=yo.offset|0,ts=yo.stride|0,Wo=yo.divisor|0)),qa=v.location,ln=dt[qa],To===1?(ln.buffer||Re.enableVertexAttribArray(qa),Bo=As||1,(ln.type!==Wa||ln.size!==Bo||ln.buffer!==Es||ln.normalized!==Ho||ln.offset!==Ao||ln.stride!==ts)&&(Re.bindBuffer(34962,Es.buffer),Re.vertexAttribPointer(qa,Bo,Wa,Ho,ts,Ao),ln.type=Wa,ln.size=Bo,ln.buffer=Es,ln.normalized=Ho,ln.offset=Ao,ln.stride=ts),ln.divisor!==Wo&&(oa.vertexAttribDivisorANGLE(qa,Wo),ln.divisor=Wo)):(ln.buffer&&(Re.disableVertexAttribArray(qa),ln.buffer=null),(ln.x!==Dn||ln.y!==_a||ln.z!==Ws||ln.w!==Ca)&&(Re.vertexAttrib4f(qa,Dn,_a,Ws,Ca),ln.x=Dn,ln.y=_a,ln.z=Ws,ln.w=Ca)),ko=k.call(this,xe,xn,0),oo=!1,za=1,ea=0,rs=0,$s=0,us=0,Ds=null,fl=0,as=!1,Ma=5126,Qs=0,ho=0,gs=0,Er(ko)?(oo=!0,Ds=fe.createStream(34962,ko),Ma=Ds.dtype):(Ds=fe.getBuffer(ko),Ds?Ma=Ds.dtype:"constant"in ko?(za=2,typeof ko.constant=="number"?(ea=ko.constant,rs=$s=us=0):(ea=ko.constant.length>0?ko.constant[0]:0,rs=ko.constant.length>1?ko.constant[1]:0,$s=ko.constant.length>2?ko.constant[2]:0,us=ko.constant.length>3?ko.constant[3]:0)):(Er(ko.buffer)?Ds=fe.createStream(34962,ko.buffer):Ds=fe.getBuffer(ko.buffer),Ma="type"in ko?Ri[ko.type]:Ds.dtype,as=!!ko.normalized,fl=ko.size|0,Qs=ko.offset|0,ho=ko.stride|0,gs=ko.divisor|0)),Vo=E.location,Do=dt[Vo],za===1?(Do.buffer||Re.enableVertexAttribArray(Vo),Lo=fl||1,(Do.type!==Ma||Do.size!==Lo||Do.buffer!==Ds||Do.normalized!==as||Do.offset!==Qs||Do.stride!==ho)&&(Re.bindBuffer(34962,Ds.buffer),Re.vertexAttribPointer(Vo,Lo,Ma,as,ho,Qs),Do.type=Ma,Do.size=Lo,Do.buffer=Ds,Do.normalized=as,Do.offset=Qs,Do.stride=ho),Do.divisor!==gs&&(oa.vertexAttribDivisorANGLE(Vo,gs),Do.divisor=gs)):(Do.buffer&&(Re.disableVertexAttribArray(Vo),Do.buffer=null),(Do.x!==ea||Do.y!==rs||Do.z!==$s||Do.w!==us)&&(Re.vertexAttrib4f(Vo,ea,rs,$s,us),Do.x=ea,Do.y=rs,Do.z=$s,Do.w=us)),xs=A.call(this,xe,xn,0),ks=!1,Ea=1,Jn=0,Oo=0,rl=0,Gs=0,bs=null,zs=0,$o=!1,Ta=5126,os=0,_l=0,Ss=0,Er(xs)?(ks=!0,bs=fe.createStream(34962,xs),Ta=bs.dtype):(bs=fe.getBuffer(xs),bs?Ta=bs.dtype:"constant"in xs?(Ea=2,typeof xs.constant=="number"?(Jn=xs.constant,Oo=rl=Gs=0):(Jn=xs.constant.length>0?xs.constant[0]:0,Oo=xs.constant.length>1?xs.constant[1]:0,rl=xs.constant.length>2?xs.constant[2]:0,Gs=xs.constant.length>3?xs.constant[3]:0)):(Er(xs.buffer)?bs=fe.createStream(34962,xs.buffer):bs=fe.getBuffer(xs.buffer),Ta="type"in xs?Ri[xs.type]:bs.dtype,$o=!!xs.normalized,zs=xs.size|0,os=xs.offset|0,_l=xs.stride|0,Ss=xs.divisor|0)),po=L.location,go=dt[po],Ea===1?(go.buffer||Re.enableVertexAttribArray(po),ss=zs||1,(go.type!==Ta||go.size!==ss||go.buffer!==bs||go.normalized!==$o||go.offset!==os||go.stride!==_l)&&(Re.bindBuffer(34962,bs.buffer),Re.vertexAttribPointer(po,ss,Ta,$o,_l,os),go.type=Ta,go.size=ss,go.buffer=bs,go.normalized=$o,go.offset=os,go.stride=_l),go.divisor!==Ss&&(oa.vertexAttribDivisorANGLE(po,Ss),go.divisor=Ss)):(go.buffer&&(Re.disableVertexAttribArray(po),go.buffer=null),(go.x!==Jn||go.y!==Oo||go.z!==rl||go.w!==Gs)&&(Re.vertexAttrib4f(po,Jn,Oo,rl,Gs),go.x=Jn,go.y=Oo,go.z=rl,go.w=Gs)),qo=x.call(this,xe,xn,0),zo=!1,io=1,Io=0,Da=0,vs=0,fs=0,cl=null,el=0,Hs=!1,Ro=5126,tl=0,Fs=0,hl=0,Er(qo)?(zo=!0,cl=fe.createStream(34962,qo),Ro=cl.dtype):(cl=fe.getBuffer(qo),cl?Ro=cl.dtype:"constant"in qo?(io=2,typeof qo.constant=="number"?(Io=qo.constant,Da=vs=fs=0):(Io=qo.constant.length>0?qo.constant[0]:0,Da=qo.constant.length>1?qo.constant[1]:0,vs=qo.constant.length>2?qo.constant[2]:0,fs=qo.constant.length>3?qo.constant[3]:0)):(Er(qo.buffer)?cl=fe.createStream(34962,qo.buffer):cl=fe.getBuffer(qo.buffer),Ro="type"in qo?Ri[qo.type]:cl.dtype,Hs=!!qo.normalized,el=qo.size|0,tl=qo.offset|0,Fs=qo.stride|0,hl=qo.divisor|0)),Fa=C.location,Ms=dt[Fa],io===1?(Ms.buffer||Re.enableVertexAttribArray(Fa),jo=el||1,(Ms.type!==Ro||Ms.size!==jo||Ms.buffer!==cl||Ms.normalized!==Hs||Ms.offset!==tl||Ms.stride!==Fs)&&(Re.bindBuffer(34962,cl.buffer),Re.vertexAttribPointer(Fa,jo,Ro,Hs,Fs,tl),Ms.type=Ro,Ms.size=jo,Ms.buffer=cl,Ms.normalized=Hs,Ms.offset=tl,Ms.stride=Fs),Ms.divisor!==hl&&(oa.vertexAttribDivisorANGLE(Fa,hl),Ms.divisor=hl)):(Ms.buffer&&(Re.disableVertexAttribArray(Fa),Ms.buffer=null),(Ms.x!==Io||Ms.y!==Da||Ms.z!==vs||Ms.w!==fs)&&(Re.vertexAttrib4f(Fa,Io,Da,vs,fs),Ms.x=Io,Ms.y=Da,Ms.z=vs,Ms.w=fs)),Rs=M.call(this,xe,xn,0),Is=!1,Bs=1,At=0,Vt=0,wr=0,mr=0,Fr=null,_i=0,Si=!1,Ci=5126,Ki=0,Fn=0,Pi=0,Er(Rs)?(Is=!0,Fr=fe.createStream(34962,Rs),Ci=Fr.dtype):(Fr=fe.getBuffer(Rs),Fr?Ci=Fr.dtype:"constant"in Rs?(Bs=2,typeof Rs.constant=="number"?(At=Rs.constant,Vt=wr=mr=0):(At=Rs.constant.length>0?Rs.constant[0]:0,Vt=Rs.constant.length>1?Rs.constant[1]:0,wr=Rs.constant.length>2?Rs.constant[2]:0,mr=Rs.constant.length>3?Rs.constant[3]:0)):(Er(Rs.buffer)?Fr=fe.createStream(34962,Rs.buffer):Fr=fe.getBuffer(Rs.buffer),Ci="type"in Rs?Ri[Rs.type]:Fr.dtype,Si=!!Rs.normalized,_i=Rs.size|0,Ki=Rs.offset|0,Fn=Rs.stride|0,Pi=Rs.divisor|0)),di=m.location,Li=dt[di],Bs===1?(Li.buffer||Re.enableVertexAttribArray(di),Mi=_i||1,(Li.type!==Ci||Li.size!==Mi||Li.buffer!==Fr||Li.normalized!==Si||Li.offset!==Ki||Li.stride!==Fn)&&(Re.bindBuffer(34962,Fr.buffer),Re.vertexAttribPointer(di,Mi,Ci,Si,Fn,Ki),Li.type=Ci,Li.size=Mi,Li.buffer=Fr,Li.normalized=Si,Li.offset=Ki,Li.stride=Fn),Li.divisor!==Pi&&(oa.vertexAttribDivisorANGLE(di,Pi),Li.divisor=Pi)):(Li.buffer&&(Re.disableVertexAttribArray(di),Li.buffer=null),(Li.x!==At||Li.y!==Vt||Li.z!==wr||Li.w!==mr)&&(Re.vertexAttrib4f(di,At,Vt,wr,mr),Li.x=At,Li.y=Vt,Li.z=wr,Li.w=mr)),Re.uniform1i(P.location,!1),Gn=xn.markerTexture,Gn&&Gn._reglType==="framebuffer"&&(Gn=Gn.color[0]),ta=Gn._texture,Re.uniform1i(T.location,ta.bind()),ya=xn.opacity,Re.uniform1f(B.location,ya),ia=U.call(this,xe,xn,0),pa=ia[0],va=ia[1],Re.uniform2f(F.location,pa,va),Re.uniform1i(G.location,j.bind()),zn=xe.pixelRatio,Re.uniform1f(W.location,zn),is=xn.scale,Cs=is[0],Ks=is[1],Re.uniform2f(N.location,Cs,Ks),dl=xn.scaleFract,xl=dl[0],Bl=dl[1],Re.uniform2f(H.location,xl,Bl),bl=xn.translate,eu=bl[0],Zl=bl[1],Re.uniform2f(re.location,eu,Zl),Ul=xn.translateFract,ja=Ul[0],ns=Ul[1],Re.uniform2f(ae.location,ja,ns),Js=xn.elements,cs=null,sl=Er(Js),sl?cs=ge.createStream(Js):cs=ge.getElements(Js),cs&&Re.bindBuffer(34963,cs.buffer.buffer),ll=xn.offset,il=xn.count,il&&(zl=ft.instances,zl>0?cs?oa.drawElementsInstancedANGLE(0,il,cs.type,ll<<(cs.type-5121>>1),zl):oa.drawArraysInstancedANGLE(0,ll,il,zl):zl<0&&(cs?Re.drawElements(0,il,cs.type,ll<<(cs.type-5121>>1)):Re.drawArrays(0,ll,il)),Fe.dirty=!0,Pt.setVAO(null),xe.viewportWidth=Ti,xe.viewportHeight=en,Ga&&(r.cpuTime+=performance.now()-ma),so&&fe.destroyStream(Aa),Po&&fe.destroyStream(ao),Ts&&fe.destroyStream(Go),Ra&&fe.destroyStream(Eo),Jo&&fe.destroyStream(Es),oo&&fe.destroyStream(Ds),ks&&fe.destroyStream(bs),zo&&fe.destroyStream(cl),Is&&fe.destroyStream(Fr),ta.unbind(),j.unbind(),sl&&ge.destroyStream(cs))},scope:function(xn,bi,Xr){var ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl,ll,il,zl,Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt,pt,Ht,nr,fr,Tr,Ir,ri,li,Ei,hn,Zn,Yn,Ua,Fo,vl,Us,ml,au,Sl,Yl,Ol,ou,Pu,nu,tu,Hu,$u,Ku,Wu,ju,sf,_f,Qu,ef,Z,se,Pe,Xe,Qe,st,jt,_t,hr,Cr,zr,fi,$r,Bi,fn,mi,zi,ji,pn,sn,wi,xo,no,Xo,js,El,Pl,pu,Il,fu,Xu,Vu,tf,ds,Wl,Tu,Au,lf,hf,Mf,pf;ct=xn.viewport,tr=ct.x|0,pr=ct.y|0,gr="width"in ct?ct.width|0:xe.framebufferWidth-tr,Zr="height"in ct?ct.height|0:xe.framebufferHeight-pr,Ti=xe.viewportWidth,xe.viewportWidth=gr,en=xe.viewportHeight,xe.viewportHeight=Zr,ii=ti[0],ti[0]=tr,Xi=ti[1],ti[1]=pr,aa=ti[2],ti[2]=gr,Mn=ti[3],ti[3]=Zr,Un=Rr[0],Rr[0]=be,Ga=Rr[1],Rr[1]=ze,ma=Rr[2],Rr[2]=Ce,oa=Rr[3],Rr[3]=de,ka=Ie.blend_enable,Ie.blend_enable=te,so=$i[0],$i[0]=ke,Kr=$i[1],$i[1]=Ee,Ia=$i[2],$i[2]=Me,Yo=$i[3],$i[3]=Ue,fa=Ie.depth_enable,Ie.depth_enable=De,kn=xn.viewport,Aa=kn.x|0,ys=kn.y|0,uo="width"in kn?kn.width|0:xe.framebufferWidth-Aa,ls="height"in kn?kn.height|0:xe.framebufferHeight-ys,$a=ki[0],ki[0]=Aa,fo=ki[1],ki[1]=ys,mn=ki[2],ki[2]=uo,ra=ki[3],ki[3]=ls,wa=Ie.scissor_enable,Ie.scissor_enable=ye,ws=Ie.stencil_enable,Ie.stencil_enable=qe,Co=Fe.profile,Co&&(Po=performance.now(),r.count++),Wi=xn.elements,gn=null,Ps=Er(Wi),Ps?gn=ge.createStream(Wi):gn=ge.getElements(Wi),Ha=ft.elements,ft.elements=gn,Sn=xn.offset,ao=ft.offset,ft.offset=Sn,Ba=xn.count,Ko=ft.count,ft.count=Ba,Qo=ft.primitive,ft.primitive=ce,Hi=zt[Je],zt[Je]=!1,Sa=zt[gt],zt[gt]=nt,Qa=xn.opacity,vn=zt[Nt],zt[Nt]=Qa,da=U.call(this,xe,xn,Xr),la=zt[at],zt[at]=da,vo=xe.pixelRatio,Ts=zt[Ke],zt[Ke]=vo,ps=xn.scale,co=zt[Ct],zt[Ct]=ps,mo=xn.scaleFract,No=zt[wt],zt[wt]=mo,jn=xn.translate,Go=zt[St],zt[St]=jn,Ys=xn.translateFract,qs=zt[Dt],zt[Dt]=Ys,Ns=xn.markerTexture,Oa=zt[Zt],zt[Zt]=Ns,ha=k.call(this,xe,xn,Xr),Vs=!1,Ya=1,_n=0,Vn=0,wo=0,Ra=0,Xn=null,un=0,$n=!1,Ka=5126,qn=0,Eo=0,Ja=0,Er(ha)?(Vs=!0,Xn=fe.createStream(34962,ha),Ka=Xn.dtype):(Xn=fe.getBuffer(ha),Xn?Ka=Xn.dtype:"constant"in ha?(Ya=2,typeof ha.constant=="number"?(_n=ha.constant,Vn=wo=Ra=0):(_n=ha.constant.length>0?ha.constant[0]:0,Vn=ha.constant.length>1?ha.constant[1]:0,wo=ha.constant.length>2?ha.constant[2]:0,Ra=ha.constant.length>3?ha.constant[3]:0)):(Er(ha.buffer)?Xn=fe.createStream(34962,ha.buffer):Xn=fe.getBuffer(ha.buffer),Ka="type"in ha?Ri[ha.type]:Xn.dtype,$n=!!ha.normalized,un=ha.size|0,qn=ha.offset|0,Eo=ha.stride|0,Ja=ha.divisor|0)),lo=Et.state,Et.state=Ya,eo=Et.x,Et.x=_n,sa=Et.y,Et.y=Vn,es=Et.z,Et.z=wo,Na=Et.w,Et.w=Ra,rn=Et.buffer,Et.buffer=Xn,Pa=Et.size,Et.size=un,to=Et.normalized,Et.normalized=$n,yo=Et.type,Et.type=Ka,Jo=Et.offset,Et.offset=qn,To=Et.stride,Et.stride=Eo,Dn=Et.divisor,Et.divisor=Ja,_a=x.call(this,xe,xn,Xr),Ws=!1,Ca=1,Es=0,As=0,Ho=0,Wa=0,Ao=null,ts=0,Wo=!1,qa=5126,ln=0,Bo=0,ko=0,Er(_a)?(Ws=!0,Ao=fe.createStream(34962,_a),qa=Ao.dtype):(Ao=fe.getBuffer(_a),Ao?qa=Ao.dtype:"constant"in _a?(Ca=2,typeof _a.constant=="number"?(Es=_a.constant,As=Ho=Wa=0):(Es=_a.constant.length>0?_a.constant[0]:0,As=_a.constant.length>1?_a.constant[1]:0,Ho=_a.constant.length>2?_a.constant[2]:0,Wa=_a.constant.length>3?_a.constant[3]:0)):(Er(_a.buffer)?Ao=fe.createStream(34962,_a.buffer):Ao=fe.getBuffer(_a.buffer),qa="type"in _a?Ri[_a.type]:Ao.dtype,Wo=!!_a.normalized,ts=_a.size|0,ln=_a.offset|0,Bo=_a.stride|0,ko=_a.divisor|0)),oo=Te.state,Te.state=Ca,za=Te.x,Te.x=Es,ea=Te.y,Te.y=As,rs=Te.z,Te.z=Ho,$s=Te.w,Te.w=Wa,us=Te.buffer,Te.buffer=Ao,Ds=Te.size,Te.size=ts,fl=Te.normalized,Te.normalized=Wo,as=Te.type,Te.type=qa,Ma=Te.offset,Te.offset=ln,Qs=Te.stride,Te.stride=Bo,ho=Te.divisor,Te.divisor=ko,gs=A.call(this,xe,xn,Xr),Vo=!1,Do=1,Lo=0,xs=0,ks=0,Ea=0,Jn=null,Oo=0,rl=!1,Gs=5126,bs=0,zs=0,$o=0,Er(gs)?(Vo=!0,Jn=fe.createStream(34962,gs),Gs=Jn.dtype):(Jn=fe.getBuffer(gs),Jn?Gs=Jn.dtype:"constant"in gs?(Do=2,typeof gs.constant=="number"?(Lo=gs.constant,xs=ks=Ea=0):(Lo=gs.constant.length>0?gs.constant[0]:0,xs=gs.constant.length>1?gs.constant[1]:0,ks=gs.constant.length>2?gs.constant[2]:0,Ea=gs.constant.length>3?gs.constant[3]:0)):(Er(gs.buffer)?Jn=fe.createStream(34962,gs.buffer):Jn=fe.getBuffer(gs.buffer),Gs="type"in gs?Ri[gs.type]:Jn.dtype,rl=!!gs.normalized,Oo=gs.size|0,bs=gs.offset|0,zs=gs.stride|0,$o=gs.divisor|0)),Ta=ot.state,ot.state=Do,os=ot.x,ot.x=Lo,_l=ot.y,ot.y=xs,Ss=ot.z,ot.z=ks,po=ot.w,ot.w=Ea,go=ot.buffer,ot.buffer=Jn,ss=ot.size,ot.size=Oo,qo=ot.normalized,ot.normalized=rl,zo=ot.type,ot.type=Gs,io=ot.offset,ot.offset=bs,Io=ot.stride,ot.stride=zs,Da=ot.divisor,ot.divisor=$o,vs=M.call(this,xe,xn,Xr),fs=!1,cl=1,el=0,Hs=0,Ro=0,tl=0,Fs=null,hl=0,Fa=!1,Ms=5126,jo=0,Rs=0,Is=0,Er(vs)?(fs=!0,Fs=fe.createStream(34962,vs),Ms=Fs.dtype):(Fs=fe.getBuffer(vs),Fs?Ms=Fs.dtype:"constant"in vs?(cl=2,typeof vs.constant=="number"?(el=vs.constant,Hs=Ro=tl=0):(el=vs.constant.length>0?vs.constant[0]:0,Hs=vs.constant.length>1?vs.constant[1]:0,Ro=vs.constant.length>2?vs.constant[2]:0,tl=vs.constant.length>3?vs.constant[3]:0)):(Er(vs.buffer)?Fs=fe.createStream(34962,vs.buffer):Fs=fe.getBuffer(vs.buffer),Ms="type"in vs?Ri[vs.type]:Fs.dtype,Fa=!!vs.normalized,hl=vs.size|0,jo=vs.offset|0,Rs=vs.stride|0,Is=vs.divisor|0)),Bs=Tt.state,Tt.state=cl,At=Tt.x,Tt.x=el,Vt=Tt.y,Tt.y=Hs,wr=Tt.z,Tt.z=Ro,mr=Tt.w,Tt.w=tl,Fr=Tt.buffer,Tt.buffer=Fs,_i=Tt.size,Tt.size=hl,Si=Tt.normalized,Tt.normalized=Fa,Ci=Tt.type,Tt.type=Ms,Ki=Tt.offset,Tt.offset=jo,Fn=Tt.stride,Tt.stride=Rs,Pi=Tt.divisor,Tt.divisor=Is,di=b.call(this,xe,xn,Xr),Li=!1,Mi=1,Gn=0,ta=0,ya=0,ia=0,pa=null,va=0,zn=!1,is=5126,Cs=0,Ks=0,dl=0,Er(di)?(Li=!0,pa=fe.createStream(34962,di),is=pa.dtype):(pa=fe.getBuffer(di),pa?is=pa.dtype:"constant"in di?(Mi=2,typeof di.constant=="number"?(Gn=di.constant,ta=ya=ia=0):(Gn=di.constant.length>0?di.constant[0]:0,ta=di.constant.length>1?di.constant[1]:0,ya=di.constant.length>2?di.constant[2]:0,ia=di.constant.length>3?di.constant[3]:0)):(Er(di.buffer)?pa=fe.createStream(34962,di.buffer):pa=fe.getBuffer(di.buffer),is="type"in di?Ri[di.type]:pa.dtype,zn=!!di.normalized,va=di.size|0,Cs=di.offset|0,Ks=di.stride|0,dl=di.divisor|0)),xl=vt.state,vt.state=Mi,Bl=vt.x,vt.x=Gn,bl=vt.y,vt.y=ta,eu=vt.z,vt.z=ya,Zl=vt.w,vt.w=ia,Ul=vt.buffer,vt.buffer=pa,ja=vt.size,vt.size=va,ns=vt.normalized,vt.normalized=zn,Js=vt.type,vt.type=is,cs=vt.offset,vt.offset=Cs,sl=vt.stride,vt.stride=Ks,ll=vt.divisor,vt.divisor=dl,il=f.call(this,xe,xn,Xr),zl=!1,Ml=1,Rl=0,Tl=0,Ll=0,ms=0,Os=null,Xl=0,Vl=!1,Nl=5126,le=0,w=0,q=0,Er(il)?(zl=!0,Os=fe.createStream(34962,il),Nl=Os.dtype):(Os=fe.getBuffer(il),Os?Nl=Os.dtype:"constant"in il?(Ml=2,typeof il.constant=="number"?(Rl=il.constant,Tl=Ll=ms=0):(Rl=il.constant.length>0?il.constant[0]:0,Tl=il.constant.length>1?il.constant[1]:0,Ll=il.constant.length>2?il.constant[2]:0,ms=il.constant.length>3?il.constant[3]:0)):(Er(il.buffer)?Os=fe.createStream(34962,il.buffer):Os=fe.getBuffer(il.buffer),Nl="type"in il?Ri[il.type]:Os.dtype,Vl=!!il.normalized,Xl=il.size|0,le=il.offset|0,w=il.stride|0,q=il.divisor|0)),Q=Ye.state,Ye.state=Ml,ee=Ye.x,Ye.x=Rl,ue=Ye.y,Ye.y=Tl,Ve=Ye.z,Ye.z=Ll,tt=Ye.w,Ye.w=ms,mt=Ye.buffer,Ye.buffer=Os,Bt=Ye.size,Ye.size=Xl,ir=Ye.normalized,Ye.normalized=Vl,or=Ye.type,Ye.type=Nl,kr=Ye.offset,Ye.offset=le,Vr=Ye.stride,Ye.stride=w,he=Ye.divisor,Ye.divisor=q,Se=h.call(this,xe,xn,Xr),Ne=!1,Ge=1,lt=0,rt=0,pt=0,Ht=0,nr=null,fr=0,Tr=!1,Ir=5126,ri=0,li=0,Ei=0,Er(Se)?(Ne=!0,nr=fe.createStream(34962,Se),Ir=nr.dtype):(nr=fe.getBuffer(Se),nr?Ir=nr.dtype:"constant"in Se?(Ge=2,typeof Se.constant=="number"?(lt=Se.constant,rt=pt=Ht=0):(lt=Se.constant.length>0?Se.constant[0]:0,rt=Se.constant.length>1?Se.constant[1]:0,pt=Se.constant.length>2?Se.constant[2]:0,Ht=Se.constant.length>3?Se.constant[3]:0)):(Er(Se.buffer)?nr=fe.createStream(34962,Se.buffer):nr=fe.getBuffer(Se.buffer),Ir="type"in Se?Ri[Se.type]:nr.dtype,Tr=!!Se.normalized,fr=Se.size|0,ri=Se.offset|0,li=Se.stride|0,Ei=Se.divisor|0)),hn=He.state,He.state=Ge,Zn=He.x,He.x=lt,Yn=He.y,He.y=rt,Ua=He.z,He.z=pt,Fo=He.w,He.w=Ht,vl=He.buffer,He.buffer=nr,Us=He.size,He.size=fr,ml=He.normalized,He.normalized=Tr,au=He.type,He.type=Ir,Sl=He.offset,He.offset=ri,Yl=He.stride,He.stride=li,Ol=He.divisor,He.divisor=Ei,ou=u.call(this,xe,xn,Xr),Pu=!1,nu=1,tu=0,Hu=0,$u=0,Ku=0,Wu=null,ju=0,sf=!1,_f=5126,Qu=0,ef=0,Z=0,Er(ou)?(Pu=!0,Wu=fe.createStream(34962,ou),_f=Wu.dtype):(Wu=fe.getBuffer(ou),Wu?_f=Wu.dtype:"constant"in ou?(nu=2,typeof ou.constant=="number"?(tu=ou.constant,Hu=$u=Ku=0):(tu=ou.constant.length>0?ou.constant[0]:0,Hu=ou.constant.length>1?ou.constant[1]:0,$u=ou.constant.length>2?ou.constant[2]:0,Ku=ou.constant.length>3?ou.constant[3]:0)):(Er(ou.buffer)?Wu=fe.createStream(34962,ou.buffer):Wu=fe.getBuffer(ou.buffer),_f="type"in ou?Ri[ou.type]:Wu.dtype,sf=!!ou.normalized,ju=ou.size|0,Qu=ou.offset|0,ef=ou.stride|0,Z=ou.divisor|0)),se=it.state,it.state=nu,Pe=it.x,it.x=tu,Xe=it.y,it.y=Hu,Qe=it.z,it.z=$u,st=it.w,it.w=Ku,jt=it.buffer,it.buffer=Wu,_t=it.size,it.size=ju,hr=it.normalized,it.normalized=sf,Cr=it.type,it.type=_f,zr=it.offset,it.offset=Qu,fi=it.stride,it.stride=ef,$r=it.divisor,it.divisor=Z,Bi=p.call(this,xe,xn,Xr),fn=!1,mi=1,zi=0,ji=0,pn=0,sn=0,wi=null,xo=0,no=!1,Xo=5126,js=0,El=0,Pl=0,Er(Bi)?(fn=!0,wi=fe.createStream(34962,Bi),Xo=wi.dtype):(wi=fe.getBuffer(Bi),wi?Xo=wi.dtype:"constant"in Bi?(mi=2,typeof Bi.constant=="number"?(zi=Bi.constant,ji=pn=sn=0):(zi=Bi.constant.length>0?Bi.constant[0]:0,ji=Bi.constant.length>1?Bi.constant[1]:0,pn=Bi.constant.length>2?Bi.constant[2]:0,sn=Bi.constant.length>3?Bi.constant[3]:0)):(Er(Bi.buffer)?wi=fe.createStream(34962,Bi.buffer):wi=fe.getBuffer(Bi.buffer),Xo="type"in Bi?Ri[Bi.type]:wi.dtype,no=!!Bi.normalized,xo=Bi.size|0,js=Bi.offset|0,El=Bi.stride|0,Pl=Bi.divisor|0)),pu=et.state,et.state=mi,Il=et.x,et.x=zi,fu=et.y,et.y=ji,Xu=et.z,et.z=pn,Vu=et.w,et.w=sn,tf=et.buffer,et.buffer=wi,ds=et.size,et.size=xo,Wl=et.normalized,et.normalized=no,Tu=et.type,et.type=Xo,Au=et.offset,et.offset=js,lf=et.stride,et.stride=El,hf=et.divisor,et.divisor=Pl,Mf=pe.vert,pe.vert=It,pf=pe.frag,pe.frag=Yt,Fe.dirty=!0,bi(xe,xn,Xr),xe.viewportWidth=Ti,xe.viewportHeight=en,ti[0]=ii,ti[1]=Xi,ti[2]=aa,ti[3]=Mn,Rr[0]=Un,Rr[1]=Ga,Rr[2]=ma,Rr[3]=oa,Ie.blend_enable=ka,$i[0]=so,$i[1]=Kr,$i[2]=Ia,$i[3]=Yo,Ie.depth_enable=fa,ki[0]=$a,ki[1]=fo,ki[2]=mn,ki[3]=ra,Ie.scissor_enable=wa,Ie.stencil_enable=ws,Co&&(r.cpuTime+=performance.now()-Po),Ps&&ge.destroyStream(gn),ft.elements=Ha,ft.offset=ao,ft.count=Ko,ft.primitive=Qo,zt[Je]=Hi,zt[gt]=Sa,zt[Nt]=vn,zt[at]=la,zt[Ke]=Ts,zt[Ct]=co,zt[wt]=No,zt[St]=Go,zt[Dt]=qs,zt[Zt]=Oa,Vs&&fe.destroyStream(Xn),Et.state=lo,Et.x=eo,Et.y=sa,Et.z=es,Et.w=Na,Et.buffer=rn,Et.size=Pa,Et.normalized=to,Et.type=yo,Et.offset=Jo,Et.stride=To,Et.divisor=Dn,Ws&&fe.destroyStream(Ao),Te.state=oo,Te.x=za,Te.y=ea,Te.z=rs,Te.w=$s,Te.buffer=us,Te.size=Ds,Te.normalized=fl,Te.type=as,Te.offset=Ma,Te.stride=Qs,Te.divisor=ho,Vo&&fe.destroyStream(Jn),ot.state=Ta,ot.x=os,ot.y=_l,ot.z=Ss,ot.w=po,ot.buffer=go,ot.size=ss,ot.normalized=qo,ot.type=zo,ot.offset=io,ot.stride=Io,ot.divisor=Da,fs&&fe.destroyStream(Fs),Tt.state=Bs,Tt.x=At,Tt.y=Vt,Tt.z=wr,Tt.w=mr,Tt.buffer=Fr,Tt.size=_i,Tt.normalized=Si,Tt.type=Ci,Tt.offset=Ki,Tt.stride=Fn,Tt.divisor=Pi,Li&&fe.destroyStream(pa),vt.state=xl,vt.x=Bl,vt.y=bl,vt.z=eu,vt.w=Zl,vt.buffer=Ul,vt.size=ja,vt.normalized=ns,vt.type=Js,vt.offset=cs,vt.stride=sl,vt.divisor=ll,zl&&fe.destroyStream(Os),Ye.state=Q,Ye.x=ee,Ye.y=ue,Ye.z=Ve,Ye.w=tt,Ye.buffer=mt,Ye.size=Bt,Ye.normalized=ir,Ye.type=or,Ye.offset=kr,Ye.stride=Vr,Ye.divisor=he,Ne&&fe.destroyStream(nr),He.state=hn,He.x=Zn,He.y=Yn,He.z=Ua,He.w=Fo,He.buffer=vl,He.size=Us,He.normalized=ml,He.type=au,He.offset=Sl,He.stride=Yl,He.divisor=Ol,Pu&&fe.destroyStream(Wu),it.state=se,it.x=Pe,it.y=Xe,it.z=Qe,it.w=st,it.buffer=jt,it.size=_t,it.normalized=hr,it.type=Cr,it.offset=zr,it.stride=fi,it.divisor=$r,fn&&fe.destroyStream(wi),et.state=pu,et.x=Il,et.y=fu,et.z=Xu,et.w=Vu,et.buffer=tf,et.size=ds,et.normalized=Wl,et.type=Tu,et.offset=Au,et.stride=lf,et.divisor=hf,pe.vert=Mf,pe.frag=pf,Fe.dirty=!0},batch:function(xn,bi){var Xr,ct,tr,pr,gr,Zr,Ti;if(Xr=Gr.angle_instanced_arrays,ct=rr.next,ct!==rr.cur&&(ct?Re.bindFramebuffer(36160,ct.framebuffer):Re.bindFramebuffer(36160,null),rr.cur=ct),Fe.dirty){var en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao;en=Ie.dither,en!==Fe.dither&&(en?Re.enable(3024):Re.disable(3024),Fe.dither=en),ii=Di[0],Xi=Di[1],(ii!==ni[0]||Xi!==ni[1])&&(Re.blendEquationSeparate(ii,Xi),ni[0]=ii,ni[1]=Xi),aa=Ie.depth_func,aa!==Fe.depth_func&&(Re.depthFunc(aa),Fe.depth_func=aa),Mn=si[0],Un=si[1],(Mn!==Ai[0]||Un!==Ai[1])&&(Re.depthRange(Mn,Un),Ai[0]=Mn,Ai[1]=Un),Ga=Ie.depth_mask,Ga!==Fe.depth_mask&&(Re.depthMask(Ga),Fe.depth_mask=Ga),ma=Ni[0],oa=Ni[1],ka=Ni[2],so=Ni[3],(ma!==Rt[0]||oa!==Rt[1]||ka!==Rt[2]||so!==Rt[3])&&(Re.colorMask(ma,oa,ka,so),Rt[0]=ma,Rt[1]=oa,Rt[2]=ka,Rt[3]=so),Kr=Ie.cull_enable,Kr!==Fe.cull_enable&&(Kr?Re.enable(2884):Re.disable(2884),Fe.cull_enable=Kr),Ia=Ie.cull_face,Ia!==Fe.cull_face&&(Re.cullFace(Ia),Fe.cull_face=Ia),Yo=Ie.frontFace,Yo!==Fe.frontFace&&(Re.frontFace(Yo),Fe.frontFace=Yo),fa=Ie.lineWidth,fa!==Fe.lineWidth&&(Re.lineWidth(fa),Fe.lineWidth=fa),kn=Ie.polygonOffset_enable,kn!==Fe.polygonOffset_enable&&(kn?Re.enable(32823):Re.disable(32823),Fe.polygonOffset_enable=kn),Aa=yt[0],ys=yt[1],(Aa!==Gt[0]||ys!==Gt[1])&&(Re.polygonOffset(Aa,ys),Gt[0]=Aa,Gt[1]=ys),uo=Ie.sample_alpha,uo!==Fe.sample_alpha&&(uo?Re.enable(32926):Re.disable(32926),Fe.sample_alpha=uo),ls=Ie.sample_enable,ls!==Fe.sample_enable&&(ls?Re.enable(32928):Re.disable(32928),Fe.sample_enable=ls),$a=Wt[0],fo=Wt[1],($a!==xr[0]||fo!==xr[1])&&(Re.sampleCoverage($a,fo),xr[0]=$a,xr[1]=fo),mn=Ie.stencil_mask,mn!==Fe.stencil_mask&&(Re.stencilMask(mn),Fe.stencil_mask=mn),ra=Lr[0],wa=Lr[1],ws=Lr[2],(ra!==Nr[0]||wa!==Nr[1]||ws!==Nr[2])&&(Re.stencilFunc(ra,wa,ws),Nr[0]=ra,Nr[1]=wa,Nr[2]=ws),Co=Or[0],Po=Or[1],Wi=Or[2],gn=Or[3],(Co!==Hr[0]||Po!==Hr[1]||Wi!==Hr[2]||gn!==Hr[3])&&(Re.stencilOpSeparate(Co,Po,Wi,gn),Hr[0]=Co,Hr[1]=Po,Hr[2]=Wi,Hr[3]=gn),Ps=jr[0],Ha=jr[1],Sn=jr[2],ao=jr[3],(Ps!==gi[0]||Ha!==gi[1]||Sn!==gi[2]||ao!==gi[3])&&(Re.stencilOpSeparate(Ps,Ha,Sn,ao),gi[0]=Ps,gi[1]=Ha,gi[2]=Sn,gi[3]=ao)}Re.blendColor(0,0,0,1),pi[0]=0,pi[1]=0,pi[2]=0,pi[3]=1,cr?Re.enable(3042):Re.disable(3042),Fe.blend_enable=cr,Re.blendFuncSeparate(770,771,773,1),Qi[0]=770,Qi[1]=771,Qi[2]=773,Qi[3]=1,_r?Re.enable(2929):Re.disable(2929),Fe.depth_enable=_r,yr?Re.enable(3089):Re.disable(3089),Fe.scissor_enable=yr,Ut?Re.enable(2960):Re.disable(2960),Fe.stencil_enable=Ut,tr=Fe.profile,tr&&(pr=performance.now(),r.count+=bi),Re.useProgram(s.program),gr=Gr.angle_instanced_arrays;var Ba;for(Pt.setVAO(null),Re.uniform1i(P.location,!1),Re.uniform1i(G.location,j.bind()),Ba=ft.instances,Zr=0;Zr0?mo.constant[0]:0,Ys=mo.constant.length>1?mo.constant[1]:0,qs=mo.constant.length>2?mo.constant[2]:0,Ns=mo.constant.length>3?mo.constant[3]:0)):(Er(mo.buffer)?Oa=fe.createStream(34962,mo.buffer):Oa=fe.getBuffer(mo.buffer),Ya="type"in mo?Ri[mo.type]:Oa.dtype,Vs=!!mo.normalized,ha=mo.size|0,_n=mo.offset|0,Vn=mo.stride|0,wo=mo.divisor|0)),Ra=l.location,Xn=dt[Ra],jn===1?(Xn.buffer||Re.enableVertexAttribArray(Ra),un=ha||4,(Xn.type!==Ya||Xn.size!==un||Xn.buffer!==Oa||Xn.normalized!==Vs||Xn.offset!==_n||Xn.stride!==Vn)&&(Re.bindBuffer(34962,Oa.buffer),Re.vertexAttribPointer(Ra,un,Ya,Vs,Vn,_n),Xn.type=Ya,Xn.size=un,Xn.buffer=Oa,Xn.normalized=Vs,Xn.offset=_n,Xn.stride=Vn),Xn.divisor!==wo&&(gr.vertexAttribDivisorANGLE(Ra,wo),Xn.divisor=wo)):(Xn.buffer&&(Re.disableVertexAttribArray(Ra),Xn.buffer=null),(Xn.x!==Go||Xn.y!==Ys||Xn.z!==qs||Xn.w!==Ns)&&(Re.vertexAttrib4f(Ra,Go,Ys,qs,Ns),Xn.x=Go,Xn.y=Ys,Xn.z=qs,Xn.w=Ns)),$n=f.call(this,xe,Ti,Zr),Ka=!1,qn=1,Eo=0,Ja=0,lo=0,eo=0,sa=null,es=0,Na=!1,rn=5126,Pa=0,to=0,yo=0,Er($n)?(Ka=!0,sa=fe.createStream(34962,$n),rn=sa.dtype):(sa=fe.getBuffer($n),sa?rn=sa.dtype:"constant"in $n?(qn=2,typeof $n.constant=="number"?(Eo=$n.constant,Ja=lo=eo=0):(Eo=$n.constant.length>0?$n.constant[0]:0,Ja=$n.constant.length>1?$n.constant[1]:0,lo=$n.constant.length>2?$n.constant[2]:0,eo=$n.constant.length>3?$n.constant[3]:0)):(Er($n.buffer)?sa=fe.createStream(34962,$n.buffer):sa=fe.getBuffer($n.buffer),rn="type"in $n?Ri[$n.type]:sa.dtype,Na=!!$n.normalized,es=$n.size|0,Pa=$n.offset|0,to=$n.stride|0,yo=$n.divisor|0)),Jo=c.location,To=dt[Jo],qn===1?(To.buffer||Re.enableVertexAttribArray(Jo),Dn=es||1,(To.type!==rn||To.size!==Dn||To.buffer!==sa||To.normalized!==Na||To.offset!==Pa||To.stride!==to)&&(Re.bindBuffer(34962,sa.buffer),Re.vertexAttribPointer(Jo,Dn,rn,Na,to,Pa),To.type=rn,To.size=Dn,To.buffer=sa,To.normalized=Na,To.offset=Pa,To.stride=to),To.divisor!==yo&&(gr.vertexAttribDivisorANGLE(Jo,yo),To.divisor=yo)):(To.buffer&&(Re.disableVertexAttribArray(Jo),To.buffer=null),(To.x!==Eo||To.y!==Ja||To.z!==lo||To.w!==eo)&&(Re.vertexAttrib4f(Jo,Eo,Ja,lo,eo),To.x=Eo,To.y=Ja,To.z=lo,To.w=eo)),_a=h.call(this,xe,Ti,Zr),Ws=!1,Ca=1,Es=0,As=0,Ho=0,Wa=0,Ao=null,ts=0,Wo=!1,qa=5126,ln=0,Bo=0,ko=0,Er(_a)?(Ws=!0,Ao=fe.createStream(34962,_a),qa=Ao.dtype):(Ao=fe.getBuffer(_a),Ao?qa=Ao.dtype:"constant"in _a?(Ca=2,typeof _a.constant=="number"?(Es=_a.constant,As=Ho=Wa=0):(Es=_a.constant.length>0?_a.constant[0]:0,As=_a.constant.length>1?_a.constant[1]:0,Ho=_a.constant.length>2?_a.constant[2]:0,Wa=_a.constant.length>3?_a.constant[3]:0)):(Er(_a.buffer)?Ao=fe.createStream(34962,_a.buffer):Ao=fe.getBuffer(_a.buffer),qa="type"in _a?Ri[_a.type]:Ao.dtype,Wo=!!_a.normalized,ts=_a.size|0,ln=_a.offset|0,Bo=_a.stride|0,ko=_a.divisor|0)),oo=d.location,za=dt[oo],Ca===1?(za.buffer||Re.enableVertexAttribArray(oo),ea=ts||4,(za.type!==qa||za.size!==ea||za.buffer!==Ao||za.normalized!==Wo||za.offset!==ln||za.stride!==Bo)&&(Re.bindBuffer(34962,Ao.buffer),Re.vertexAttribPointer(oo,ea,qa,Wo,Bo,ln),za.type=qa,za.size=ea,za.buffer=Ao,za.normalized=Wo,za.offset=ln,za.stride=Bo),za.divisor!==ko&&(gr.vertexAttribDivisorANGLE(oo,ko),za.divisor=ko)):(za.buffer&&(Re.disableVertexAttribArray(oo),za.buffer=null),(za.x!==Es||za.y!==As||za.z!==Ho||za.w!==Wa)&&(Re.vertexAttrib4f(oo,Es,As,Ho,Wa),za.x=Es,za.y=As,za.z=Ho,za.w=Wa)),rs=p.call(this,xe,Ti,Zr),$s=!1,us=1,Ds=0,fl=0,as=0,Ma=0,Qs=null,ho=0,gs=!1,Vo=5126,Do=0,Lo=0,xs=0,Er(rs)?($s=!0,Qs=fe.createStream(34962,rs),Vo=Qs.dtype):(Qs=fe.getBuffer(rs),Qs?Vo=Qs.dtype:"constant"in rs?(us=2,typeof rs.constant=="number"?(Ds=rs.constant,fl=as=Ma=0):(Ds=rs.constant.length>0?rs.constant[0]:0,fl=rs.constant.length>1?rs.constant[1]:0,as=rs.constant.length>2?rs.constant[2]:0,Ma=rs.constant.length>3?rs.constant[3]:0)):(Er(rs.buffer)?Qs=fe.createStream(34962,rs.buffer):Qs=fe.getBuffer(rs.buffer),Vo="type"in rs?Ri[rs.type]:Qs.dtype,gs=!!rs.normalized,ho=rs.size|0,Do=rs.offset|0,Lo=rs.stride|0,xs=rs.divisor|0)),ks=_.location,Ea=dt[ks],us===1?(Ea.buffer||Re.enableVertexAttribArray(ks),Jn=ho||1,(Ea.type!==Vo||Ea.size!==Jn||Ea.buffer!==Qs||Ea.normalized!==gs||Ea.offset!==Do||Ea.stride!==Lo)&&(Re.bindBuffer(34962,Qs.buffer),Re.vertexAttribPointer(ks,Jn,Vo,gs,Lo,Do),Ea.type=Vo,Ea.size=Jn,Ea.buffer=Qs,Ea.normalized=gs,Ea.offset=Do,Ea.stride=Lo),Ea.divisor!==xs&&(gr.vertexAttribDivisorANGLE(ks,xs),Ea.divisor=xs)):(Ea.buffer&&(Re.disableVertexAttribArray(ks),Ea.buffer=null),(Ea.x!==Ds||Ea.y!==fl||Ea.z!==as||Ea.w!==Ma)&&(Re.vertexAttrib4f(ks,Ds,fl,as,Ma),Ea.x=Ds,Ea.y=fl,Ea.z=as,Ea.w=Ma)),Oo=b.call(this,xe,Ti,Zr),rl=!1,Gs=1,bs=0,zs=0,$o=0,Ta=0,os=null,_l=0,Ss=!1,po=5126,go=0,ss=0,qo=0,Er(Oo)?(rl=!0,os=fe.createStream(34962,Oo),po=os.dtype):(os=fe.getBuffer(Oo),os?po=os.dtype:"constant"in Oo?(Gs=2,typeof Oo.constant=="number"?(bs=Oo.constant,zs=$o=Ta=0):(bs=Oo.constant.length>0?Oo.constant[0]:0,zs=Oo.constant.length>1?Oo.constant[1]:0,$o=Oo.constant.length>2?Oo.constant[2]:0,Ta=Oo.constant.length>3?Oo.constant[3]:0)):(Er(Oo.buffer)?os=fe.createStream(34962,Oo.buffer):os=fe.getBuffer(Oo.buffer),po="type"in Oo?Ri[Oo.type]:os.dtype,Ss=!!Oo.normalized,_l=Oo.size|0,go=Oo.offset|0,ss=Oo.stride|0,qo=Oo.divisor|0)),zo=v.location,io=dt[zo],Gs===1?(io.buffer||Re.enableVertexAttribArray(zo),Io=_l||1,(io.type!==po||io.size!==Io||io.buffer!==os||io.normalized!==Ss||io.offset!==go||io.stride!==ss)&&(Re.bindBuffer(34962,os.buffer),Re.vertexAttribPointer(zo,Io,po,Ss,ss,go),io.type=po,io.size=Io,io.buffer=os,io.normalized=Ss,io.offset=go,io.stride=ss),io.divisor!==qo&&(gr.vertexAttribDivisorANGLE(zo,qo),io.divisor=qo)):(io.buffer&&(Re.disableVertexAttribArray(zo),io.buffer=null),(io.x!==bs||io.y!==zs||io.z!==$o||io.w!==Ta)&&(Re.vertexAttrib4f(zo,bs,zs,$o,Ta),io.x=bs,io.y=zs,io.z=$o,io.w=Ta)),Da=k.call(this,xe,Ti,Zr),vs=!1,fs=1,cl=0,el=0,Hs=0,Ro=0,tl=null,Fs=0,hl=!1,Fa=5126,Ms=0,jo=0,Rs=0,Er(Da)?(vs=!0,tl=fe.createStream(34962,Da),Fa=tl.dtype):(tl=fe.getBuffer(Da),tl?Fa=tl.dtype:"constant"in Da?(fs=2,typeof Da.constant=="number"?(cl=Da.constant,el=Hs=Ro=0):(cl=Da.constant.length>0?Da.constant[0]:0,el=Da.constant.length>1?Da.constant[1]:0,Hs=Da.constant.length>2?Da.constant[2]:0,Ro=Da.constant.length>3?Da.constant[3]:0)):(Er(Da.buffer)?tl=fe.createStream(34962,Da.buffer):tl=fe.getBuffer(Da.buffer),Fa="type"in Da?Ri[Da.type]:tl.dtype,hl=!!Da.normalized,Fs=Da.size|0,Ms=Da.offset|0,jo=Da.stride|0,Rs=Da.divisor|0)),Is=E.location,Bs=dt[Is],fs===1?(Bs.buffer||Re.enableVertexAttribArray(Is),At=Fs||1,(Bs.type!==Fa||Bs.size!==At||Bs.buffer!==tl||Bs.normalized!==hl||Bs.offset!==Ms||Bs.stride!==jo)&&(Re.bindBuffer(34962,tl.buffer),Re.vertexAttribPointer(Is,At,Fa,hl,jo,Ms),Bs.type=Fa,Bs.size=At,Bs.buffer=tl,Bs.normalized=hl,Bs.offset=Ms,Bs.stride=jo),Bs.divisor!==Rs&&(gr.vertexAttribDivisorANGLE(Is,Rs),Bs.divisor=Rs)):(Bs.buffer&&(Re.disableVertexAttribArray(Is),Bs.buffer=null),(Bs.x!==cl||Bs.y!==el||Bs.z!==Hs||Bs.w!==Ro)&&(Re.vertexAttrib4f(Is,cl,el,Hs,Ro),Bs.x=cl,Bs.y=el,Bs.z=Hs,Bs.w=Ro)),Vt=A.call(this,xe,Ti,Zr),wr=!1,mr=1,Fr=0,_i=0,Si=0,Ci=0,Ki=null,Fn=0,Pi=!1,di=5126,Li=0,Mi=0,Gn=0,Er(Vt)?(wr=!0,Ki=fe.createStream(34962,Vt),di=Ki.dtype):(Ki=fe.getBuffer(Vt),Ki?di=Ki.dtype:"constant"in Vt?(mr=2,typeof Vt.constant=="number"?(Fr=Vt.constant,_i=Si=Ci=0):(Fr=Vt.constant.length>0?Vt.constant[0]:0,_i=Vt.constant.length>1?Vt.constant[1]:0,Si=Vt.constant.length>2?Vt.constant[2]:0,Ci=Vt.constant.length>3?Vt.constant[3]:0)):(Er(Vt.buffer)?Ki=fe.createStream(34962,Vt.buffer):Ki=fe.getBuffer(Vt.buffer),di="type"in Vt?Ri[Vt.type]:Ki.dtype,Pi=!!Vt.normalized,Fn=Vt.size|0,Li=Vt.offset|0,Mi=Vt.stride|0,Gn=Vt.divisor|0)),ta=L.location,ya=dt[ta],mr===1?(ya.buffer||Re.enableVertexAttribArray(ta),ia=Fn||1,(ya.type!==di||ya.size!==ia||ya.buffer!==Ki||ya.normalized!==Pi||ya.offset!==Li||ya.stride!==Mi)&&(Re.bindBuffer(34962,Ki.buffer),Re.vertexAttribPointer(ta,ia,di,Pi,Mi,Li),ya.type=di,ya.size=ia,ya.buffer=Ki,ya.normalized=Pi,ya.offset=Li,ya.stride=Mi),ya.divisor!==Gn&&(gr.vertexAttribDivisorANGLE(ta,Gn),ya.divisor=Gn)):(ya.buffer&&(Re.disableVertexAttribArray(ta),ya.buffer=null),(ya.x!==Fr||ya.y!==_i||ya.z!==Si||ya.w!==Ci)&&(Re.vertexAttrib4f(ta,Fr,_i,Si,Ci),ya.x=Fr,ya.y=_i,ya.z=Si,ya.w=Ci)),pa=x.call(this,xe,Ti,Zr),va=!1,zn=1,is=0,Cs=0,Ks=0,dl=0,xl=null,Bl=0,bl=!1,eu=5126,Zl=0,Ul=0,ja=0,Er(pa)?(va=!0,xl=fe.createStream(34962,pa),eu=xl.dtype):(xl=fe.getBuffer(pa),xl?eu=xl.dtype:"constant"in pa?(zn=2,typeof pa.constant=="number"?(is=pa.constant,Cs=Ks=dl=0):(is=pa.constant.length>0?pa.constant[0]:0,Cs=pa.constant.length>1?pa.constant[1]:0,Ks=pa.constant.length>2?pa.constant[2]:0,dl=pa.constant.length>3?pa.constant[3]:0)):(Er(pa.buffer)?xl=fe.createStream(34962,pa.buffer):xl=fe.getBuffer(pa.buffer),eu="type"in pa?Ri[pa.type]:xl.dtype,bl=!!pa.normalized,Bl=pa.size|0,Zl=pa.offset|0,Ul=pa.stride|0,ja=pa.divisor|0)),ns=C.location,Js=dt[ns],zn===1?(Js.buffer||Re.enableVertexAttribArray(ns),cs=Bl||1,(Js.type!==eu||Js.size!==cs||Js.buffer!==xl||Js.normalized!==bl||Js.offset!==Zl||Js.stride!==Ul)&&(Re.bindBuffer(34962,xl.buffer),Re.vertexAttribPointer(ns,cs,eu,bl,Ul,Zl),Js.type=eu,Js.size=cs,Js.buffer=xl,Js.normalized=bl,Js.offset=Zl,Js.stride=Ul),Js.divisor!==ja&&(gr.vertexAttribDivisorANGLE(ns,ja),Js.divisor=ja)):(Js.buffer&&(Re.disableVertexAttribArray(ns),Js.buffer=null),(Js.x!==is||Js.y!==Cs||Js.z!==Ks||Js.w!==dl)&&(Re.vertexAttrib4f(ns,is,Cs,Ks,dl),Js.x=is,Js.y=Cs,Js.z=Ks,Js.w=dl)),sl=M.call(this,xe,Ti,Zr),ll=!1,il=1,zl=0,Ml=0,Rl=0,Tl=0,Ll=null,ms=0,Os=!1,Xl=5126,Vl=0,Nl=0,le=0,Er(sl)?(ll=!0,Ll=fe.createStream(34962,sl),Xl=Ll.dtype):(Ll=fe.getBuffer(sl),Ll?Xl=Ll.dtype:"constant"in sl?(il=2,typeof sl.constant=="number"?(zl=sl.constant,Ml=Rl=Tl=0):(zl=sl.constant.length>0?sl.constant[0]:0,Ml=sl.constant.length>1?sl.constant[1]:0,Rl=sl.constant.length>2?sl.constant[2]:0,Tl=sl.constant.length>3?sl.constant[3]:0)):(Er(sl.buffer)?Ll=fe.createStream(34962,sl.buffer):Ll=fe.getBuffer(sl.buffer),Xl="type"in sl?Ri[sl.type]:Ll.dtype,Os=!!sl.normalized,ms=sl.size|0,Vl=sl.offset|0,Nl=sl.stride|0,le=sl.divisor|0)),w=m.location,q=dt[w],il===1?(q.buffer||Re.enableVertexAttribArray(w),Q=ms||1,(q.type!==Xl||q.size!==Q||q.buffer!==Ll||q.normalized!==Os||q.offset!==Vl||q.stride!==Nl)&&(Re.bindBuffer(34962,Ll.buffer),Re.vertexAttribPointer(w,Q,Xl,Os,Nl,Vl),q.type=Xl,q.size=Q,q.buffer=Ll,q.normalized=Os,q.offset=Vl,q.stride=Nl),q.divisor!==le&&(gr.vertexAttribDivisorANGLE(w,le),q.divisor=le)):(q.buffer&&(Re.disableVertexAttribArray(w),q.buffer=null),(q.x!==zl||q.y!==Ml||q.z!==Rl||q.w!==Tl)&&(Re.vertexAttrib4f(w,zl,Ml,Rl,Tl),q.x=zl,q.y=Ml,q.z=Rl,q.w=Tl)),ee=Ti.markerTexture,ee&&ee._reglType==="framebuffer"&&(ee=ee.color[0]),ue=ee._texture,Re.uniform1i(T.location,ue.bind()),Ve=Ti.opacity,(!Zr||tt!==Ve)&&(tt=Ve,Re.uniform1f(B.location,Ve)),mt=U.call(this,xe,Ti,Zr),Bt=mt[0],or=mt[1],(!Zr||ir!==Bt||kr!==or)&&(ir=Bt,kr=or,Re.uniform2f(F.location,Bt,or)),Vr=xe.pixelRatio,(!Zr||he!==Vr)&&(he=Vr,Re.uniform1f(W.location,Vr)),Se=Ti.scale,Ne=Se[0],lt=Se[1],(!Zr||Ge!==Ne||rt!==lt)&&(Ge=Ne,rt=lt,Re.uniform2f(N.location,Ne,lt)),pt=Ti.scaleFract,Ht=pt[0],fr=pt[1],(!Zr||nr!==Ht||Tr!==fr)&&(nr=Ht,Tr=fr,Re.uniform2f(H.location,Ht,fr)),Ir=Ti.translate,ri=Ir[0],Ei=Ir[1],(!Zr||li!==ri||hn!==Ei)&&(li=ri,hn=Ei,Re.uniform2f(re.location,ri,Ei)),Zn=Ti.translateFract,Yn=Zn[0],Fo=Zn[1],(!Zr||Ua!==Yn||vl!==Fo)&&(Ua=Yn,vl=Fo,Re.uniform2f(ae.location,Yn,Fo)),Us=Ti.elements,ml=null,au=Er(Us),au?ml=ge.createStream(Us):ml=ge.getElements(Us),ml&&Re.bindBuffer(34963,ml.buffer.buffer),Sl=Ti.offset,Yl=Ti.count,Yl&&(Ba>0?ml?gr.drawElementsInstancedANGLE(0,Yl,ml.type,Sl<<(ml.type-5121>>1),Ba):gr.drawArraysInstancedANGLE(0,Sl,Yl,Ba):Ba<0&&(ml?Re.drawElements(0,Yl,ml.type,Sl<<(ml.type-5121>>1)):Re.drawArrays(0,Sl,Yl)),xe.viewportWidth=vn,xe.viewportHeight=da,No&&fe.destroyStream(Oa),Ka&&fe.destroyStream(sa),Ws&&fe.destroyStream(Ao),$s&&fe.destroyStream(Qs),rl&&fe.destroyStream(os),vs&&fe.destroyStream(tl),wr&&fe.destroyStream(Ki),va&&fe.destroyStream(xl),ll&&fe.destroyStream(Ll),ue.unbind(),au&&ge.destroyStream(ml))}j.unbind(),Fe.dirty=!0,Pt.setVAO(null),tr&&(r.cpuTime+=performance.now()-pr)}}}});var R8=Ae((jxr,e7e)=>{e7e.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr){"use strict";var Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri;return Ut=t.gl,Re=t.context,xe=t.strings,Oe=t.next,Ie=t.current,Fe=t.draw,ft=t.elements,ge=t.buffer,fe=t.shader,pe=t.attributes,dt=t.vao,Pt=t.uniforms,zt=t.framebuffer,rr=t.extensions,Gr=t.timer,Br=t.isBufferArgs,Er=Oe.blend_color,Rr=Ie.blend_color,pi=Oe.blend_equation,Di=Ie.blend_equation,ni=Oe.blend_func,$i=Ie.blend_func,Qi=Oe.depth_range,si=Ie.depth_range,Ai=Oe.colorMask,Ni=Ie.colorMask,Rt=Oe.polygonOffset_offset,yt=Ie.polygonOffset_offset,Gt=Oe.sample_coverage,Wt=Ie.sample_coverage,xr=Oe.stencil_func,Lr=Ie.stencil_func,Nr=Oe.stencil_opFront,Or=Ie.stencil_opFront,Hr=Oe.stencil_opBack,jr=Ie.stencil_opBack,gi=Oe.scissor_box,ki=Ie.scissor_box,Vi=Oe.viewport,ti=Ie.viewport,tn={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Yr={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},oi={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Fi={add:32774,subtract:32778,"reverse subtract":32779},an={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},nn={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Ri={cw:2304,ccw:2305},{draw:function(Ii){var xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl;if(xn=rr.angle_instanced_arrays,bi=zt.next,bi!==zt.cur&&(bi?Ut.bindFramebuffer(36160,bi.framebuffer):Ut.bindFramebuffer(36160,null),zt.cur=bi),Ie.dirty){var ll,il,zl,Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt,pt,Ht;ll=Oe.dither,ll!==Ie.dither&&(ll?Ut.enable(3024):Ut.disable(3024),Ie.dither=ll),il=pi[0],zl=pi[1],(il!==Di[0]||zl!==Di[1])&&(Ut.blendEquationSeparate(il,zl),Di[0]=il,Di[1]=zl),Ml=Oe.depth_func,Ml!==Ie.depth_func&&(Ut.depthFunc(Ml),Ie.depth_func=Ml),Rl=Qi[0],Tl=Qi[1],(Rl!==si[0]||Tl!==si[1])&&(Ut.depthRange(Rl,Tl),si[0]=Rl,si[1]=Tl),Ll=Oe.depth_mask,Ll!==Ie.depth_mask&&(Ut.depthMask(Ll),Ie.depth_mask=Ll),ms=Ai[0],Os=Ai[1],Xl=Ai[2],Vl=Ai[3],(ms!==Ni[0]||Os!==Ni[1]||Xl!==Ni[2]||Vl!==Ni[3])&&(Ut.colorMask(ms,Os,Xl,Vl),Ni[0]=ms,Ni[1]=Os,Ni[2]=Xl,Ni[3]=Vl),Nl=Oe.cull_enable,Nl!==Ie.cull_enable&&(Nl?Ut.enable(2884):Ut.disable(2884),Ie.cull_enable=Nl),le=Oe.cull_face,le!==Ie.cull_face&&(Ut.cullFace(le),Ie.cull_face=le),w=Oe.frontFace,w!==Ie.frontFace&&(Ut.frontFace(w),Ie.frontFace=w),q=Oe.lineWidth,q!==Ie.lineWidth&&(Ut.lineWidth(q),Ie.lineWidth=q),Q=Oe.polygonOffset_enable,Q!==Ie.polygonOffset_enable&&(Q?Ut.enable(32823):Ut.disable(32823),Ie.polygonOffset_enable=Q),ee=Rt[0],ue=Rt[1],(ee!==yt[0]||ue!==yt[1])&&(Ut.polygonOffset(ee,ue),yt[0]=ee,yt[1]=ue),Ve=Oe.sample_alpha,Ve!==Ie.sample_alpha&&(Ve?Ut.enable(32926):Ut.disable(32926),Ie.sample_alpha=Ve),tt=Oe.sample_enable,tt!==Ie.sample_enable&&(tt?Ut.enable(32928):Ut.disable(32928),Ie.sample_enable=tt),mt=Gt[0],Bt=Gt[1],(mt!==Wt[0]||Bt!==Wt[1])&&(Ut.sampleCoverage(mt,Bt),Wt[0]=mt,Wt[1]=Bt),ir=Oe.stencil_mask,ir!==Ie.stencil_mask&&(Ut.stencilMask(ir),Ie.stencil_mask=ir),or=xr[0],kr=xr[1],Vr=xr[2],(or!==Lr[0]||kr!==Lr[1]||Vr!==Lr[2])&&(Ut.stencilFunc(or,kr,Vr),Lr[0]=or,Lr[1]=kr,Lr[2]=Vr),he=Nr[0],Se=Nr[1],Ne=Nr[2],Ge=Nr[3],(he!==Or[0]||Se!==Or[1]||Ne!==Or[2]||Ge!==Or[3])&&(Ut.stencilOpSeparate(he,Se,Ne,Ge),Or[0]=he,Or[1]=Se,Or[2]=Ne,Or[3]=Ge),lt=Hr[0],rt=Hr[1],pt=Hr[2],Ht=Hr[3],(lt!==jr[0]||rt!==jr[1]||pt!==jr[2]||Ht!==jr[3])&&(Ut.stencilOpSeparate(lt,rt,pt,Ht),jr[0]=lt,jr[1]=rt,jr[2]=pt,jr[3]=Ht)}Xr=Ii.viewport,ct=Xr.x|0,tr=Xr.y|0,pr="width"in Xr?Xr.width|0:Re.framebufferWidth-ct,gr="height"in Xr?Xr.height|0:Re.framebufferHeight-tr,Zr=Re.viewportWidth,Re.viewportWidth=pr,Ti=Re.viewportHeight,Re.viewportHeight=gr,Ut.viewport(ct,tr,pr,gr),ti[0]=ct,ti[1]=tr,ti[2]=pr,ti[3]=gr,Ut.blendColor(0,0,0,1),Rr[0]=0,Rr[1]=0,Rr[2]=0,Rr[3]=1,n?Ut.enable(3042):Ut.disable(3042),Ie.blend_enable=n,Ut.blendFuncSeparate(770,771,773,1),$i[0]=770,$i[1]=771,$i[2]=773,$i[3]=1,i?Ut.enable(2929):Ut.disable(2929),Ie.depth_enable=i,en=Ii.viewport,ii=en.x|0,Xi=en.y|0,aa="width"in en?en.width|0:Re.framebufferWidth-ii,Mn="height"in en?en.height|0:Re.framebufferHeight-Xi,Ut.scissor(ii,Xi,aa,Mn),ki[0]=ii,ki[1]=Xi,ki[2]=aa,ki[3]=Mn,a?Ut.enable(3089):Ut.disable(3089),Ie.scissor_enable=a,o?Ut.enable(2960):Ut.disable(2960),Ie.stencil_enable=o,Un=Ie.profile,Un&&(Ga=performance.now(),r.count++),Ut.useProgram(s.program),ma=rr.angle_instanced_arrays,dt.setVAO(null),oa=u.call(this,Re,Ii,0),ka=!1,so=1,Kr=0,Ia=0,Yo=0,fa=0,kn=null,Aa=0,ys=!1,uo=5126,ls=0,$a=0,fo=0,Br(oa)?(ka=!0,kn=ge.createStream(34962,oa),uo=kn.dtype):(kn=ge.getBuffer(oa),kn?uo=kn.dtype:"constant"in oa?(so=2,typeof oa.constant=="number"?(Kr=oa.constant,Ia=Yo=fa=0):(Kr=oa.constant.length>0?oa.constant[0]:0,Ia=oa.constant.length>1?oa.constant[1]:0,Yo=oa.constant.length>2?oa.constant[2]:0,fa=oa.constant.length>3?oa.constant[3]:0)):(Br(oa.buffer)?kn=ge.createStream(34962,oa.buffer):kn=ge.getBuffer(oa.buffer),uo="type"in oa?nn[oa.type]:kn.dtype,ys=!!oa.normalized,Aa=oa.size|0,ls=oa.offset|0,$a=oa.stride|0,fo=oa.divisor|0)),mn=l.location,ra=pe[mn],so===1?(ra.buffer||Ut.enableVertexAttribArray(mn),wa=Aa||4,(ra.type!==uo||ra.size!==wa||ra.buffer!==kn||ra.normalized!==ys||ra.offset!==ls||ra.stride!==$a)&&(Ut.bindBuffer(34962,kn.buffer),Ut.vertexAttribPointer(mn,wa,uo,ys,$a,ls),ra.type=uo,ra.size=wa,ra.buffer=kn,ra.normalized=ys,ra.offset=ls,ra.stride=$a),ra.divisor!==fo&&(ma.vertexAttribDivisorANGLE(mn,fo),ra.divisor=fo)):(ra.buffer&&(Ut.disableVertexAttribArray(mn),ra.buffer=null),(ra.x!==Kr||ra.y!==Ia||ra.z!==Yo||ra.w!==fa)&&(Ut.vertexAttrib4f(mn,Kr,Ia,Yo,fa),ra.x=Kr,ra.y=Ia,ra.z=Yo,ra.w=fa)),ws=f.call(this,Re,Ii,0),Co=!1,Po=1,Wi=0,gn=0,Ps=0,Ha=0,Sn=null,ao=0,Ba=!1,Ko=5126,Qo=0,Hi=0,Sa=0,Br(ws)?(Co=!0,Sn=ge.createStream(34962,ws),Ko=Sn.dtype):(Sn=ge.getBuffer(ws),Sn?Ko=Sn.dtype:"constant"in ws?(Po=2,typeof ws.constant=="number"?(Wi=ws.constant,gn=Ps=Ha=0):(Wi=ws.constant.length>0?ws.constant[0]:0,gn=ws.constant.length>1?ws.constant[1]:0,Ps=ws.constant.length>2?ws.constant[2]:0,Ha=ws.constant.length>3?ws.constant[3]:0)):(Br(ws.buffer)?Sn=ge.createStream(34962,ws.buffer):Sn=ge.getBuffer(ws.buffer),Ko="type"in ws?nn[ws.type]:Sn.dtype,Ba=!!ws.normalized,ao=ws.size|0,Qo=ws.offset|0,Hi=ws.stride|0,Sa=ws.divisor|0)),Qa=c.location,vn=pe[Qa],Po===1?(vn.buffer||Ut.enableVertexAttribArray(Qa),da=ao||1,(vn.type!==Ko||vn.size!==da||vn.buffer!==Sn||vn.normalized!==Ba||vn.offset!==Qo||vn.stride!==Hi)&&(Ut.bindBuffer(34962,Sn.buffer),Ut.vertexAttribPointer(Qa,da,Ko,Ba,Hi,Qo),vn.type=Ko,vn.size=da,vn.buffer=Sn,vn.normalized=Ba,vn.offset=Qo,vn.stride=Hi),vn.divisor!==Sa&&(ma.vertexAttribDivisorANGLE(Qa,Sa),vn.divisor=Sa)):(vn.buffer&&(Ut.disableVertexAttribArray(Qa),vn.buffer=null),(vn.x!==Wi||vn.y!==gn||vn.z!==Ps||vn.w!==Ha)&&(Ut.vertexAttrib4f(Qa,Wi,gn,Ps,Ha),vn.x=Wi,vn.y=gn,vn.z=Ps,vn.w=Ha)),la=h.call(this,Re,Ii,0),vo=!1,Ts=1,ps=0,co=0,mo=0,No=0,jn=null,Go=0,Ys=!1,qs=5126,Ns=0,Oa=0,ha=0,Br(la)?(vo=!0,jn=ge.createStream(34962,la),qs=jn.dtype):(jn=ge.getBuffer(la),jn?qs=jn.dtype:"constant"in la?(Ts=2,typeof la.constant=="number"?(ps=la.constant,co=mo=No=0):(ps=la.constant.length>0?la.constant[0]:0,co=la.constant.length>1?la.constant[1]:0,mo=la.constant.length>2?la.constant[2]:0,No=la.constant.length>3?la.constant[3]:0)):(Br(la.buffer)?jn=ge.createStream(34962,la.buffer):jn=ge.getBuffer(la.buffer),qs="type"in la?nn[la.type]:jn.dtype,Ys=!!la.normalized,Go=la.size|0,Ns=la.offset|0,Oa=la.stride|0,ha=la.divisor|0)),Vs=d.location,Ya=pe[Vs],Ts===1?(Ya.buffer||Ut.enableVertexAttribArray(Vs),_n=Go||4,(Ya.type!==qs||Ya.size!==_n||Ya.buffer!==jn||Ya.normalized!==Ys||Ya.offset!==Ns||Ya.stride!==Oa)&&(Ut.bindBuffer(34962,jn.buffer),Ut.vertexAttribPointer(Vs,_n,qs,Ys,Oa,Ns),Ya.type=qs,Ya.size=_n,Ya.buffer=jn,Ya.normalized=Ys,Ya.offset=Ns,Ya.stride=Oa),Ya.divisor!==ha&&(ma.vertexAttribDivisorANGLE(Vs,ha),Ya.divisor=ha)):(Ya.buffer&&(Ut.disableVertexAttribArray(Vs),Ya.buffer=null),(Ya.x!==ps||Ya.y!==co||Ya.z!==mo||Ya.w!==No)&&(Ut.vertexAttrib4f(Vs,ps,co,mo,No),Ya.x=ps,Ya.y=co,Ya.z=mo,Ya.w=No)),Vn=p.call(this,Re,Ii,0),wo=!1,Ra=1,Xn=0,un=0,$n=0,Ka=0,qn=null,Eo=0,Ja=!1,lo=5126,eo=0,sa=0,es=0,Br(Vn)?(wo=!0,qn=ge.createStream(34962,Vn),lo=qn.dtype):(qn=ge.getBuffer(Vn),qn?lo=qn.dtype:"constant"in Vn?(Ra=2,typeof Vn.constant=="number"?(Xn=Vn.constant,un=$n=Ka=0):(Xn=Vn.constant.length>0?Vn.constant[0]:0,un=Vn.constant.length>1?Vn.constant[1]:0,$n=Vn.constant.length>2?Vn.constant[2]:0,Ka=Vn.constant.length>3?Vn.constant[3]:0)):(Br(Vn.buffer)?qn=ge.createStream(34962,Vn.buffer):qn=ge.getBuffer(Vn.buffer),lo="type"in Vn?nn[Vn.type]:qn.dtype,Ja=!!Vn.normalized,Eo=Vn.size|0,eo=Vn.offset|0,sa=Vn.stride|0,es=Vn.divisor|0)),Na=_.location,rn=pe[Na],Ra===1?(rn.buffer||Ut.enableVertexAttribArray(Na),Pa=Eo||1,(rn.type!==lo||rn.size!==Pa||rn.buffer!==qn||rn.normalized!==Ja||rn.offset!==eo||rn.stride!==sa)&&(Ut.bindBuffer(34962,qn.buffer),Ut.vertexAttribPointer(Na,Pa,lo,Ja,sa,eo),rn.type=lo,rn.size=Pa,rn.buffer=qn,rn.normalized=Ja,rn.offset=eo,rn.stride=sa),rn.divisor!==es&&(ma.vertexAttribDivisorANGLE(Na,es),rn.divisor=es)):(rn.buffer&&(Ut.disableVertexAttribArray(Na),rn.buffer=null),(rn.x!==Xn||rn.y!==un||rn.z!==$n||rn.w!==Ka)&&(Ut.vertexAttrib4f(Na,Xn,un,$n,Ka),rn.x=Xn,rn.y=un,rn.z=$n,rn.w=Ka)),to=b.call(this,Re,Ii,0),yo=!1,Jo=1,To=0,Dn=0,_a=0,Ws=0,Ca=null,Es=0,As=!1,Ho=5126,Wa=0,Ao=0,ts=0,Br(to)?(yo=!0,Ca=ge.createStream(34962,to),Ho=Ca.dtype):(Ca=ge.getBuffer(to),Ca?Ho=Ca.dtype:"constant"in to?(Jo=2,typeof to.constant=="number"?(To=to.constant,Dn=_a=Ws=0):(To=to.constant.length>0?to.constant[0]:0,Dn=to.constant.length>1?to.constant[1]:0,_a=to.constant.length>2?to.constant[2]:0,Ws=to.constant.length>3?to.constant[3]:0)):(Br(to.buffer)?Ca=ge.createStream(34962,to.buffer):Ca=ge.getBuffer(to.buffer),Ho="type"in to?nn[to.type]:Ca.dtype,As=!!to.normalized,Es=to.size|0,Wa=to.offset|0,Ao=to.stride|0,ts=to.divisor|0)),Wo=v.location,qa=pe[Wo],Jo===1?(qa.buffer||Ut.enableVertexAttribArray(Wo),ln=Es||1,(qa.type!==Ho||qa.size!==ln||qa.buffer!==Ca||qa.normalized!==As||qa.offset!==Wa||qa.stride!==Ao)&&(Ut.bindBuffer(34962,Ca.buffer),Ut.vertexAttribPointer(Wo,ln,Ho,As,Ao,Wa),qa.type=Ho,qa.size=ln,qa.buffer=Ca,qa.normalized=As,qa.offset=Wa,qa.stride=Ao),qa.divisor!==ts&&(ma.vertexAttribDivisorANGLE(Wo,ts),qa.divisor=ts)):(qa.buffer&&(Ut.disableVertexAttribArray(Wo),qa.buffer=null),(qa.x!==To||qa.y!==Dn||qa.z!==_a||qa.w!==Ws)&&(Ut.vertexAttrib4f(Wo,To,Dn,_a,Ws),qa.x=To,qa.y=Dn,qa.z=_a,qa.w=Ws)),Bo=k.call(this,Re,Ii,0),ko=!1,oo=1,za=0,ea=0,rs=0,$s=0,us=null,Ds=0,fl=!1,as=5126,Ma=0,Qs=0,ho=0,Br(Bo)?(ko=!0,us=ge.createStream(34962,Bo),as=us.dtype):(us=ge.getBuffer(Bo),us?as=us.dtype:"constant"in Bo?(oo=2,typeof Bo.constant=="number"?(za=Bo.constant,ea=rs=$s=0):(za=Bo.constant.length>0?Bo.constant[0]:0,ea=Bo.constant.length>1?Bo.constant[1]:0,rs=Bo.constant.length>2?Bo.constant[2]:0,$s=Bo.constant.length>3?Bo.constant[3]:0)):(Br(Bo.buffer)?us=ge.createStream(34962,Bo.buffer):us=ge.getBuffer(Bo.buffer),as="type"in Bo?nn[Bo.type]:us.dtype,fl=!!Bo.normalized,Ds=Bo.size|0,Ma=Bo.offset|0,Qs=Bo.stride|0,ho=Bo.divisor|0)),gs=E.location,Vo=pe[gs],oo===1?(Vo.buffer||Ut.enableVertexAttribArray(gs),Do=Ds||1,(Vo.type!==as||Vo.size!==Do||Vo.buffer!==us||Vo.normalized!==fl||Vo.offset!==Ma||Vo.stride!==Qs)&&(Ut.bindBuffer(34962,us.buffer),Ut.vertexAttribPointer(gs,Do,as,fl,Qs,Ma),Vo.type=as,Vo.size=Do,Vo.buffer=us,Vo.normalized=fl,Vo.offset=Ma,Vo.stride=Qs),Vo.divisor!==ho&&(ma.vertexAttribDivisorANGLE(gs,ho),Vo.divisor=ho)):(Vo.buffer&&(Ut.disableVertexAttribArray(gs),Vo.buffer=null),(Vo.x!==za||Vo.y!==ea||Vo.z!==rs||Vo.w!==$s)&&(Ut.vertexAttrib4f(gs,za,ea,rs,$s),Vo.x=za,Vo.y=ea,Vo.z=rs,Vo.w=$s)),Lo=A.call(this,Re,Ii,0),xs=!1,ks=1,Ea=0,Jn=0,Oo=0,rl=0,Gs=null,bs=0,zs=!1,$o=5126,Ta=0,os=0,_l=0,Br(Lo)?(xs=!0,Gs=ge.createStream(34962,Lo),$o=Gs.dtype):(Gs=ge.getBuffer(Lo),Gs?$o=Gs.dtype:"constant"in Lo?(ks=2,typeof Lo.constant=="number"?(Ea=Lo.constant,Jn=Oo=rl=0):(Ea=Lo.constant.length>0?Lo.constant[0]:0,Jn=Lo.constant.length>1?Lo.constant[1]:0,Oo=Lo.constant.length>2?Lo.constant[2]:0,rl=Lo.constant.length>3?Lo.constant[3]:0)):(Br(Lo.buffer)?Gs=ge.createStream(34962,Lo.buffer):Gs=ge.getBuffer(Lo.buffer),$o="type"in Lo?nn[Lo.type]:Gs.dtype,zs=!!Lo.normalized,bs=Lo.size|0,Ta=Lo.offset|0,os=Lo.stride|0,_l=Lo.divisor|0)),Ss=L.location,po=pe[Ss],ks===1?(po.buffer||Ut.enableVertexAttribArray(Ss),go=bs||1,(po.type!==$o||po.size!==go||po.buffer!==Gs||po.normalized!==zs||po.offset!==Ta||po.stride!==os)&&(Ut.bindBuffer(34962,Gs.buffer),Ut.vertexAttribPointer(Ss,go,$o,zs,os,Ta),po.type=$o,po.size=go,po.buffer=Gs,po.normalized=zs,po.offset=Ta,po.stride=os),po.divisor!==_l&&(ma.vertexAttribDivisorANGLE(Ss,_l),po.divisor=_l)):(po.buffer&&(Ut.disableVertexAttribArray(Ss),po.buffer=null),(po.x!==Ea||po.y!==Jn||po.z!==Oo||po.w!==rl)&&(Ut.vertexAttrib4f(Ss,Ea,Jn,Oo,rl),po.x=Ea,po.y=Jn,po.z=Oo,po.w=rl)),ss=x.call(this,Re,Ii,0),qo=!1,zo=1,io=0,Io=0,Da=0,vs=0,fs=null,cl=0,el=!1,Hs=5126,Ro=0,tl=0,Fs=0,Br(ss)?(qo=!0,fs=ge.createStream(34962,ss),Hs=fs.dtype):(fs=ge.getBuffer(ss),fs?Hs=fs.dtype:"constant"in ss?(zo=2,typeof ss.constant=="number"?(io=ss.constant,Io=Da=vs=0):(io=ss.constant.length>0?ss.constant[0]:0,Io=ss.constant.length>1?ss.constant[1]:0,Da=ss.constant.length>2?ss.constant[2]:0,vs=ss.constant.length>3?ss.constant[3]:0)):(Br(ss.buffer)?fs=ge.createStream(34962,ss.buffer):fs=ge.getBuffer(ss.buffer),Hs="type"in ss?nn[ss.type]:fs.dtype,el=!!ss.normalized,cl=ss.size|0,Ro=ss.offset|0,tl=ss.stride|0,Fs=ss.divisor|0)),hl=C.location,Fa=pe[hl],zo===1?(Fa.buffer||Ut.enableVertexAttribArray(hl),Ms=cl||1,(Fa.type!==Hs||Fa.size!==Ms||Fa.buffer!==fs||Fa.normalized!==el||Fa.offset!==Ro||Fa.stride!==tl)&&(Ut.bindBuffer(34962,fs.buffer),Ut.vertexAttribPointer(hl,Ms,Hs,el,tl,Ro),Fa.type=Hs,Fa.size=Ms,Fa.buffer=fs,Fa.normalized=el,Fa.offset=Ro,Fa.stride=tl),Fa.divisor!==Fs&&(ma.vertexAttribDivisorANGLE(hl,Fs),Fa.divisor=Fs)):(Fa.buffer&&(Ut.disableVertexAttribArray(hl),Fa.buffer=null),(Fa.x!==io||Fa.y!==Io||Fa.z!==Da||Fa.w!==vs)&&(Ut.vertexAttrib4f(hl,io,Io,Da,vs),Fa.x=io,Fa.y=Io,Fa.z=Da,Fa.w=vs)),jo=M.call(this,Re,Ii,0),Rs=!1,Is=1,Bs=0,At=0,Vt=0,wr=0,mr=null,Fr=0,_i=!1,Si=5126,Ci=0,Ki=0,Fn=0,Br(jo)?(Rs=!0,mr=ge.createStream(34962,jo),Si=mr.dtype):(mr=ge.getBuffer(jo),mr?Si=mr.dtype:"constant"in jo?(Is=2,typeof jo.constant=="number"?(Bs=jo.constant,At=Vt=wr=0):(Bs=jo.constant.length>0?jo.constant[0]:0,At=jo.constant.length>1?jo.constant[1]:0,Vt=jo.constant.length>2?jo.constant[2]:0,wr=jo.constant.length>3?jo.constant[3]:0)):(Br(jo.buffer)?mr=ge.createStream(34962,jo.buffer):mr=ge.getBuffer(jo.buffer),Si="type"in jo?nn[jo.type]:mr.dtype,_i=!!jo.normalized,Fr=jo.size|0,Ci=jo.offset|0,Ki=jo.stride|0,Fn=jo.divisor|0)),Pi=m.location,di=pe[Pi],Is===1?(di.buffer||Ut.enableVertexAttribArray(Pi),Li=Fr||1,(di.type!==Si||di.size!==Li||di.buffer!==mr||di.normalized!==_i||di.offset!==Ci||di.stride!==Ki)&&(Ut.bindBuffer(34962,mr.buffer),Ut.vertexAttribPointer(Pi,Li,Si,_i,Ki,Ci),di.type=Si,di.size=Li,di.buffer=mr,di.normalized=_i,di.offset=Ci,di.stride=Ki),di.divisor!==Fn&&(ma.vertexAttribDivisorANGLE(Pi,Fn),di.divisor=Fn)):(di.buffer&&(Ut.disableVertexAttribArray(Pi),di.buffer=null),(di.x!==Bs||di.y!==At||di.z!==Vt||di.w!==wr)&&(Ut.vertexAttrib4f(Pi,Bs,At,Vt,wr),di.x=Bs,di.y=At,di.z=Vt,di.w=wr)),Ut.uniform1i(P.location,!1),Mi=Ii.opacity,Ut.uniform1f(T.location,Mi),Gn=F.call(this,Re,Ii,0),ta=Gn[0],ya=Gn[1],Ut.uniform2f(B.location,ta,ya),Ut.uniform1i(U.location,G.bind()),ia=Re.pixelRatio,Ut.uniform1f(j.location,ia),pa=Ii.scale,va=pa[0],zn=pa[1],Ut.uniform2f(W.location,va,zn),is=Ii.scaleFract,Cs=is[0],Ks=is[1],Ut.uniform2f(N.location,Cs,Ks),dl=Ii.translate,xl=dl[0],Bl=dl[1],Ut.uniform2f(H.location,xl,Bl),bl=Ii.translateFract,eu=bl[0],Zl=bl[1],Ut.uniform2f(re.location,eu,Zl),Ul=Ii.elements,ja=null,ns=Br(Ul),ns?ja=ft.createStream(Ul):ja=ft.getElements(Ul),ja&&Ut.bindBuffer(34963,ja.buffer.buffer),Js=Ii.offset,cs=Ii.count,cs&&(sl=Fe.instances,sl>0?ja?ma.drawElementsInstancedANGLE(0,cs,ja.type,Js<<(ja.type-5121>>1),sl):ma.drawArraysInstancedANGLE(0,Js,cs,sl):sl<0&&(ja?Ut.drawElements(0,cs,ja.type,Js<<(ja.type-5121>>1)):Ut.drawArrays(0,Js,cs)),Ie.dirty=!0,dt.setVAO(null),Re.viewportWidth=Zr,Re.viewportHeight=Ti,Un&&(r.cpuTime+=performance.now()-Ga),ka&&ge.destroyStream(kn),Co&&ge.destroyStream(Sn),vo&&ge.destroyStream(jn),wo&&ge.destroyStream(qn),yo&&ge.destroyStream(Ca),ko&&ge.destroyStream(us),xs&&ge.destroyStream(Gs),qo&&ge.destroyStream(fs),Rs&&ge.destroyStream(mr),G.unbind(),ns&&ft.destroyStream(ja))},scope:function(Ii,xn,bi){var Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl,ll,il,zl,Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt,pt,Ht,nr,fr,Tr,Ir,ri,li,Ei,hn,Zn,Yn,Ua,Fo,vl,Us,ml,au,Sl,Yl,Ol,ou,Pu,nu,tu,Hu,$u,Ku,Wu,ju,sf,_f,Qu,ef,Z,se,Pe,Xe,Qe,st,jt,_t,hr,Cr,zr,fi,$r,Bi,fn,mi,zi,ji,pn,sn,wi,xo,no,Xo,js,El,Pl,pu,Il,fu,Xu,Vu,tf,ds,Wl,Tu,Au,lf,hf,Mf;Xr=Ii.viewport,ct=Xr.x|0,tr=Xr.y|0,pr="width"in Xr?Xr.width|0:Re.framebufferWidth-ct,gr="height"in Xr?Xr.height|0:Re.framebufferHeight-tr,Zr=Re.viewportWidth,Re.viewportWidth=pr,Ti=Re.viewportHeight,Re.viewportHeight=gr,en=Vi[0],Vi[0]=ct,ii=Vi[1],Vi[1]=tr,Xi=Vi[2],Vi[2]=pr,aa=Vi[3],Vi[3]=gr,Mn=Er[0],Er[0]=ae,Un=Er[1],Er[1]=be,Ga=Er[2],Er[2]=ze,ma=Er[3],Er[3]=Ce,oa=Oe.blend_enable,Oe.blend_enable=de,ka=ni[0],ni[0]=te,so=ni[1],ni[1]=ke,Kr=ni[2],ni[2]=Ee,Ia=ni[3],ni[3]=Me,Yo=Oe.depth_enable,Oe.depth_enable=Ue,fa=Ii.viewport,kn=fa.x|0,Aa=fa.y|0,ys="width"in fa?fa.width|0:Re.framebufferWidth-kn,uo="height"in fa?fa.height|0:Re.framebufferHeight-Aa,ls=gi[0],gi[0]=kn,$a=gi[1],gi[1]=Aa,fo=gi[2],gi[2]=ys,mn=gi[3],gi[3]=uo,ra=Oe.scissor_enable,Oe.scissor_enable=De,wa=Oe.stencil_enable,Oe.stencil_enable=ye,ws=Ie.profile,ws&&(Co=performance.now(),r.count++),Po=Ii.elements,Wi=null,gn=Br(Po),gn?Wi=ft.createStream(Po):Wi=ft.getElements(Po),Ps=Fe.elements,Fe.elements=Wi,Ha=Ii.offset,Sn=Fe.offset,Fe.offset=Ha,ao=Ii.count,Ba=Fe.count,Fe.count=ao,Ko=Fe.primitive,Fe.primitive=qe,Qo=Pt[ce],Pt[ce]=!1,Hi=Pt[nt],Pt[nt]=Je,Sa=Ii.opacity,Qa=Pt[gt],Pt[gt]=Sa,vn=F.call(this,Re,Ii,bi),da=Pt[Nt],Pt[Nt]=vn,la=Re.pixelRatio,vo=Pt[at],Pt[at]=la,Ts=Ii.scale,ps=Pt[Ke],Pt[Ke]=Ts,co=Ii.scaleFract,mo=Pt[Ct],Pt[Ct]=co,No=Ii.translate,jn=Pt[wt],Pt[wt]=No,Go=Ii.translateFract,Ys=Pt[St],Pt[St]=Go,qs=Ii.markerTexture,Ns=Pt[Dt],Pt[Dt]=qs,Oa=k.call(this,Re,Ii,bi),ha=!1,Vs=1,Ya=0,_n=0,Vn=0,wo=0,Ra=null,Xn=0,un=!1,$n=5126,Ka=0,qn=0,Eo=0,Br(Oa)?(ha=!0,Ra=ge.createStream(34962,Oa),$n=Ra.dtype):(Ra=ge.getBuffer(Oa),Ra?$n=Ra.dtype:"constant"in Oa?(Vs=2,typeof Oa.constant=="number"?(Ya=Oa.constant,_n=Vn=wo=0):(Ya=Oa.constant.length>0?Oa.constant[0]:0,_n=Oa.constant.length>1?Oa.constant[1]:0,Vn=Oa.constant.length>2?Oa.constant[2]:0,wo=Oa.constant.length>3?Oa.constant[3]:0)):(Br(Oa.buffer)?Ra=ge.createStream(34962,Oa.buffer):Ra=ge.getBuffer(Oa.buffer),$n="type"in Oa?nn[Oa.type]:Ra.dtype,un=!!Oa.normalized,Xn=Oa.size|0,Ka=Oa.offset|0,qn=Oa.stride|0,Eo=Oa.divisor|0)),Ja=Zt.state,Zt.state=Vs,lo=Zt.x,Zt.x=Ya,eo=Zt.y,Zt.y=_n,sa=Zt.z,Zt.z=Vn,es=Zt.w,Zt.w=wo,Na=Zt.buffer,Zt.buffer=Ra,rn=Zt.size,Zt.size=Xn,Pa=Zt.normalized,Zt.normalized=un,to=Zt.type,Zt.type=$n,yo=Zt.offset,Zt.offset=Ka,Jo=Zt.stride,Zt.stride=qn,To=Zt.divisor,Zt.divisor=Eo,Dn=x.call(this,Re,Ii,bi),_a=!1,Ws=1,Ca=0,Es=0,As=0,Ho=0,Wa=null,Ao=0,ts=!1,Wo=5126,qa=0,ln=0,Bo=0,Br(Dn)?(_a=!0,Wa=ge.createStream(34962,Dn),Wo=Wa.dtype):(Wa=ge.getBuffer(Dn),Wa?Wo=Wa.dtype:"constant"in Dn?(Ws=2,typeof Dn.constant=="number"?(Ca=Dn.constant,Es=As=Ho=0):(Ca=Dn.constant.length>0?Dn.constant[0]:0,Es=Dn.constant.length>1?Dn.constant[1]:0,As=Dn.constant.length>2?Dn.constant[2]:0,Ho=Dn.constant.length>3?Dn.constant[3]:0)):(Br(Dn.buffer)?Wa=ge.createStream(34962,Dn.buffer):Wa=ge.getBuffer(Dn.buffer),Wo="type"in Dn?nn[Dn.type]:Wa.dtype,ts=!!Dn.normalized,Ao=Dn.size|0,qa=Dn.offset|0,ln=Dn.stride|0,Bo=Dn.divisor|0)),ko=Et.state,Et.state=Ws,oo=Et.x,Et.x=Ca,za=Et.y,Et.y=Es,ea=Et.z,Et.z=As,rs=Et.w,Et.w=Ho,$s=Et.buffer,Et.buffer=Wa,us=Et.size,Et.size=Ao,Ds=Et.normalized,Et.normalized=ts,fl=Et.type,Et.type=Wo,as=Et.offset,Et.offset=qa,Ma=Et.stride,Et.stride=ln,Qs=Et.divisor,Et.divisor=Bo,ho=A.call(this,Re,Ii,bi),gs=!1,Vo=1,Do=0,Lo=0,xs=0,ks=0,Ea=null,Jn=0,Oo=!1,rl=5126,Gs=0,bs=0,zs=0,Br(ho)?(gs=!0,Ea=ge.createStream(34962,ho),rl=Ea.dtype):(Ea=ge.getBuffer(ho),Ea?rl=Ea.dtype:"constant"in ho?(Vo=2,typeof ho.constant=="number"?(Do=ho.constant,Lo=xs=ks=0):(Do=ho.constant.length>0?ho.constant[0]:0,Lo=ho.constant.length>1?ho.constant[1]:0,xs=ho.constant.length>2?ho.constant[2]:0,ks=ho.constant.length>3?ho.constant[3]:0)):(Br(ho.buffer)?Ea=ge.createStream(34962,ho.buffer):Ea=ge.getBuffer(ho.buffer),rl="type"in ho?nn[ho.type]:Ea.dtype,Oo=!!ho.normalized,Jn=ho.size|0,Gs=ho.offset|0,bs=ho.stride|0,zs=ho.divisor|0)),$o=Te.state,Te.state=Vo,Ta=Te.x,Te.x=Do,os=Te.y,Te.y=Lo,_l=Te.z,Te.z=xs,Ss=Te.w,Te.w=ks,po=Te.buffer,Te.buffer=Ea,go=Te.size,Te.size=Jn,ss=Te.normalized,Te.normalized=Oo,qo=Te.type,Te.type=rl,zo=Te.offset,Te.offset=Gs,io=Te.stride,Te.stride=bs,Io=Te.divisor,Te.divisor=zs,Da=M.call(this,Re,Ii,bi),vs=!1,fs=1,cl=0,el=0,Hs=0,Ro=0,tl=null,Fs=0,hl=!1,Fa=5126,Ms=0,jo=0,Rs=0,Br(Da)?(vs=!0,tl=ge.createStream(34962,Da),Fa=tl.dtype):(tl=ge.getBuffer(Da),tl?Fa=tl.dtype:"constant"in Da?(fs=2,typeof Da.constant=="number"?(cl=Da.constant,el=Hs=Ro=0):(cl=Da.constant.length>0?Da.constant[0]:0,el=Da.constant.length>1?Da.constant[1]:0,Hs=Da.constant.length>2?Da.constant[2]:0,Ro=Da.constant.length>3?Da.constant[3]:0)):(Br(Da.buffer)?tl=ge.createStream(34962,Da.buffer):tl=ge.getBuffer(Da.buffer),Fa="type"in Da?nn[Da.type]:tl.dtype,hl=!!Da.normalized,Fs=Da.size|0,Ms=Da.offset|0,jo=Da.stride|0,Rs=Da.divisor|0)),Is=ot.state,ot.state=fs,Bs=ot.x,ot.x=cl,At=ot.y,ot.y=el,Vt=ot.z,ot.z=Hs,wr=ot.w,ot.w=Ro,mr=ot.buffer,ot.buffer=tl,Fr=ot.size,ot.size=Fs,_i=ot.normalized,ot.normalized=hl,Si=ot.type,ot.type=Fa,Ci=ot.offset,ot.offset=Ms,Ki=ot.stride,ot.stride=jo,Fn=ot.divisor,ot.divisor=Rs,Pi=b.call(this,Re,Ii,bi),di=!1,Li=1,Mi=0,Gn=0,ta=0,ya=0,ia=null,pa=0,va=!1,zn=5126,is=0,Cs=0,Ks=0,Br(Pi)?(di=!0,ia=ge.createStream(34962,Pi),zn=ia.dtype):(ia=ge.getBuffer(Pi),ia?zn=ia.dtype:"constant"in Pi?(Li=2,typeof Pi.constant=="number"?(Mi=Pi.constant,Gn=ta=ya=0):(Mi=Pi.constant.length>0?Pi.constant[0]:0,Gn=Pi.constant.length>1?Pi.constant[1]:0,ta=Pi.constant.length>2?Pi.constant[2]:0,ya=Pi.constant.length>3?Pi.constant[3]:0)):(Br(Pi.buffer)?ia=ge.createStream(34962,Pi.buffer):ia=ge.getBuffer(Pi.buffer),zn="type"in Pi?nn[Pi.type]:ia.dtype,va=!!Pi.normalized,pa=Pi.size|0,is=Pi.offset|0,Cs=Pi.stride|0,Ks=Pi.divisor|0)),dl=Tt.state,Tt.state=Li,xl=Tt.x,Tt.x=Mi,Bl=Tt.y,Tt.y=Gn,bl=Tt.z,Tt.z=ta,eu=Tt.w,Tt.w=ya,Zl=Tt.buffer,Tt.buffer=ia,Ul=Tt.size,Tt.size=pa,ja=Tt.normalized,Tt.normalized=va,ns=Tt.type,Tt.type=zn,Js=Tt.offset,Tt.offset=is,cs=Tt.stride,Tt.stride=Cs,sl=Tt.divisor,Tt.divisor=Ks,ll=f.call(this,Re,Ii,bi),il=!1,zl=1,Ml=0,Rl=0,Tl=0,Ll=0,ms=null,Os=0,Xl=!1,Vl=5126,Nl=0,le=0,w=0,Br(ll)?(il=!0,ms=ge.createStream(34962,ll),Vl=ms.dtype):(ms=ge.getBuffer(ll),ms?Vl=ms.dtype:"constant"in ll?(zl=2,typeof ll.constant=="number"?(Ml=ll.constant,Rl=Tl=Ll=0):(Ml=ll.constant.length>0?ll.constant[0]:0,Rl=ll.constant.length>1?ll.constant[1]:0,Tl=ll.constant.length>2?ll.constant[2]:0,Ll=ll.constant.length>3?ll.constant[3]:0)):(Br(ll.buffer)?ms=ge.createStream(34962,ll.buffer):ms=ge.getBuffer(ll.buffer),Vl="type"in ll?nn[ll.type]:ms.dtype,Xl=!!ll.normalized,Os=ll.size|0,Nl=ll.offset|0,le=ll.stride|0,w=ll.divisor|0)),q=vt.state,vt.state=zl,Q=vt.x,vt.x=Ml,ee=vt.y,vt.y=Rl,ue=vt.z,vt.z=Tl,Ve=vt.w,vt.w=Ll,tt=vt.buffer,vt.buffer=ms,mt=vt.size,vt.size=Os,Bt=vt.normalized,vt.normalized=Xl,ir=vt.type,vt.type=Vl,or=vt.offset,vt.offset=Nl,kr=vt.stride,vt.stride=le,Vr=vt.divisor,vt.divisor=w,he=h.call(this,Re,Ii,bi),Se=!1,Ne=1,Ge=0,lt=0,rt=0,pt=0,Ht=null,nr=0,fr=!1,Tr=5126,Ir=0,ri=0,li=0,Br(he)?(Se=!0,Ht=ge.createStream(34962,he),Tr=Ht.dtype):(Ht=ge.getBuffer(he),Ht?Tr=Ht.dtype:"constant"in he?(Ne=2,typeof he.constant=="number"?(Ge=he.constant,lt=rt=pt=0):(Ge=he.constant.length>0?he.constant[0]:0,lt=he.constant.length>1?he.constant[1]:0,rt=he.constant.length>2?he.constant[2]:0,pt=he.constant.length>3?he.constant[3]:0)):(Br(he.buffer)?Ht=ge.createStream(34962,he.buffer):Ht=ge.getBuffer(he.buffer),Tr="type"in he?nn[he.type]:Ht.dtype,fr=!!he.normalized,nr=he.size|0,Ir=he.offset|0,ri=he.stride|0,li=he.divisor|0)),Ei=Ye.state,Ye.state=Ne,hn=Ye.x,Ye.x=Ge,Zn=Ye.y,Ye.y=lt,Yn=Ye.z,Ye.z=rt,Ua=Ye.w,Ye.w=pt,Fo=Ye.buffer,Ye.buffer=Ht,vl=Ye.size,Ye.size=nr,Us=Ye.normalized,Ye.normalized=fr,ml=Ye.type,Ye.type=Tr,au=Ye.offset,Ye.offset=Ir,Sl=Ye.stride,Ye.stride=ri,Yl=Ye.divisor,Ye.divisor=li,Ol=u.call(this,Re,Ii,bi),ou=!1,Pu=1,nu=0,tu=0,Hu=0,$u=0,Ku=null,Wu=0,ju=!1,sf=5126,_f=0,Qu=0,ef=0,Br(Ol)?(ou=!0,Ku=ge.createStream(34962,Ol),sf=Ku.dtype):(Ku=ge.getBuffer(Ol),Ku?sf=Ku.dtype:"constant"in Ol?(Pu=2,typeof Ol.constant=="number"?(nu=Ol.constant,tu=Hu=$u=0):(nu=Ol.constant.length>0?Ol.constant[0]:0,tu=Ol.constant.length>1?Ol.constant[1]:0,Hu=Ol.constant.length>2?Ol.constant[2]:0,$u=Ol.constant.length>3?Ol.constant[3]:0)):(Br(Ol.buffer)?Ku=ge.createStream(34962,Ol.buffer):Ku=ge.getBuffer(Ol.buffer),sf="type"in Ol?nn[Ol.type]:Ku.dtype,ju=!!Ol.normalized,Wu=Ol.size|0,_f=Ol.offset|0,Qu=Ol.stride|0,ef=Ol.divisor|0)),Z=He.state,He.state=Pu,se=He.x,He.x=nu,Pe=He.y,He.y=tu,Xe=He.z,He.z=Hu,Qe=He.w,He.w=$u,st=He.buffer,He.buffer=Ku,jt=He.size,He.size=Wu,_t=He.normalized,He.normalized=ju,hr=He.type,He.type=sf,Cr=He.offset,He.offset=_f,zr=He.stride,He.stride=Qu,fi=He.divisor,He.divisor=ef,$r=p.call(this,Re,Ii,bi),Bi=!1,fn=1,mi=0,zi=0,ji=0,pn=0,sn=null,wi=0,xo=!1,no=5126,Xo=0,js=0,El=0,Br($r)?(Bi=!0,sn=ge.createStream(34962,$r),no=sn.dtype):(sn=ge.getBuffer($r),sn?no=sn.dtype:"constant"in $r?(fn=2,typeof $r.constant=="number"?(mi=$r.constant,zi=ji=pn=0):(mi=$r.constant.length>0?$r.constant[0]:0,zi=$r.constant.length>1?$r.constant[1]:0,ji=$r.constant.length>2?$r.constant[2]:0,pn=$r.constant.length>3?$r.constant[3]:0)):(Br($r.buffer)?sn=ge.createStream(34962,$r.buffer):sn=ge.getBuffer($r.buffer),no="type"in $r?nn[$r.type]:sn.dtype,xo=!!$r.normalized,wi=$r.size|0,Xo=$r.offset|0,js=$r.stride|0,El=$r.divisor|0)),Pl=it.state,it.state=fn,pu=it.x,it.x=mi,Il=it.y,it.y=zi,fu=it.z,it.z=ji,Xu=it.w,it.w=pn,Vu=it.buffer,it.buffer=sn,tf=it.size,it.size=wi,ds=it.normalized,it.normalized=xo,Wl=it.type,it.type=no,Tu=it.offset,it.offset=Xo,Au=it.stride,it.stride=js,lf=it.divisor,it.divisor=El,hf=fe.vert,fe.vert=et,Mf=fe.frag,fe.frag=It,Ie.dirty=!0,xn(Re,Ii,bi),Re.viewportWidth=Zr,Re.viewportHeight=Ti,Vi[0]=en,Vi[1]=ii,Vi[2]=Xi,Vi[3]=aa,Er[0]=Mn,Er[1]=Un,Er[2]=Ga,Er[3]=ma,Oe.blend_enable=oa,ni[0]=ka,ni[1]=so,ni[2]=Kr,ni[3]=Ia,Oe.depth_enable=Yo,gi[0]=ls,gi[1]=$a,gi[2]=fo,gi[3]=mn,Oe.scissor_enable=ra,Oe.stencil_enable=wa,ws&&(r.cpuTime+=performance.now()-Co),gn&&ft.destroyStream(Wi),Fe.elements=Ps,Fe.offset=Sn,Fe.count=Ba,Fe.primitive=Ko,Pt[ce]=Qo,Pt[nt]=Hi,Pt[gt]=Qa,Pt[Nt]=da,Pt[at]=vo,Pt[Ke]=ps,Pt[Ct]=mo,Pt[wt]=jn,Pt[St]=Ys,Pt[Dt]=Ns,ha&&ge.destroyStream(Ra),Zt.state=Ja,Zt.x=lo,Zt.y=eo,Zt.z=sa,Zt.w=es,Zt.buffer=Na,Zt.size=rn,Zt.normalized=Pa,Zt.type=to,Zt.offset=yo,Zt.stride=Jo,Zt.divisor=To,_a&&ge.destroyStream(Wa),Et.state=ko,Et.x=oo,Et.y=za,Et.z=ea,Et.w=rs,Et.buffer=$s,Et.size=us,Et.normalized=Ds,Et.type=fl,Et.offset=as,Et.stride=Ma,Et.divisor=Qs,gs&&ge.destroyStream(Ea),Te.state=$o,Te.x=Ta,Te.y=os,Te.z=_l,Te.w=Ss,Te.buffer=po,Te.size=go,Te.normalized=ss,Te.type=qo,Te.offset=zo,Te.stride=io,Te.divisor=Io,vs&&ge.destroyStream(tl),ot.state=Is,ot.x=Bs,ot.y=At,ot.z=Vt,ot.w=wr,ot.buffer=mr,ot.size=Fr,ot.normalized=_i,ot.type=Si,ot.offset=Ci,ot.stride=Ki,ot.divisor=Fn,di&&ge.destroyStream(ia),Tt.state=dl,Tt.x=xl,Tt.y=Bl,Tt.z=bl,Tt.w=eu,Tt.buffer=Zl,Tt.size=Ul,Tt.normalized=ja,Tt.type=ns,Tt.offset=Js,Tt.stride=cs,Tt.divisor=sl,il&&ge.destroyStream(ms),vt.state=q,vt.x=Q,vt.y=ee,vt.z=ue,vt.w=Ve,vt.buffer=tt,vt.size=mt,vt.normalized=Bt,vt.type=ir,vt.offset=or,vt.stride=kr,vt.divisor=Vr,Se&&ge.destroyStream(Ht),Ye.state=Ei,Ye.x=hn,Ye.y=Zn,Ye.z=Yn,Ye.w=Ua,Ye.buffer=Fo,Ye.size=vl,Ye.normalized=Us,Ye.type=ml,Ye.offset=au,Ye.stride=Sl,Ye.divisor=Yl,ou&&ge.destroyStream(Ku),He.state=Z,He.x=se,He.y=Pe,He.z=Xe,He.w=Qe,He.buffer=st,He.size=jt,He.normalized=_t,He.type=hr,He.offset=Cr,He.stride=zr,He.divisor=fi,Bi&&ge.destroyStream(sn),it.state=Pl,it.x=pu,it.y=Il,it.z=fu,it.w=Xu,it.buffer=Vu,it.size=tf,it.normalized=ds,it.type=Wl,it.offset=Tu,it.stride=Au,it.divisor=lf,fe.vert=hf,fe.frag=Mf,Ie.dirty=!0},batch:function(Ii,xn){var bi,Xr,ct,tr,pr,gr,Zr;if(bi=rr.angle_instanced_arrays,Xr=zt.next,Xr!==zt.cur&&(Xr?Ut.bindFramebuffer(36160,Xr.framebuffer):Ut.bindFramebuffer(36160,null),zt.cur=Xr),Ie.dirty){var Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn;Ti=Oe.dither,Ti!==Ie.dither&&(Ti?Ut.enable(3024):Ut.disable(3024),Ie.dither=Ti),en=pi[0],ii=pi[1],(en!==Di[0]||ii!==Di[1])&&(Ut.blendEquationSeparate(en,ii),Di[0]=en,Di[1]=ii),Xi=Oe.depth_func,Xi!==Ie.depth_func&&(Ut.depthFunc(Xi),Ie.depth_func=Xi),aa=Qi[0],Mn=Qi[1],(aa!==si[0]||Mn!==si[1])&&(Ut.depthRange(aa,Mn),si[0]=aa,si[1]=Mn),Un=Oe.depth_mask,Un!==Ie.depth_mask&&(Ut.depthMask(Un),Ie.depth_mask=Un),Ga=Ai[0],ma=Ai[1],oa=Ai[2],ka=Ai[3],(Ga!==Ni[0]||ma!==Ni[1]||oa!==Ni[2]||ka!==Ni[3])&&(Ut.colorMask(Ga,ma,oa,ka),Ni[0]=Ga,Ni[1]=ma,Ni[2]=oa,Ni[3]=ka),so=Oe.cull_enable,so!==Ie.cull_enable&&(so?Ut.enable(2884):Ut.disable(2884),Ie.cull_enable=so),Kr=Oe.cull_face,Kr!==Ie.cull_face&&(Ut.cullFace(Kr),Ie.cull_face=Kr),Ia=Oe.frontFace,Ia!==Ie.frontFace&&(Ut.frontFace(Ia),Ie.frontFace=Ia),Yo=Oe.lineWidth,Yo!==Ie.lineWidth&&(Ut.lineWidth(Yo),Ie.lineWidth=Yo),fa=Oe.polygonOffset_enable,fa!==Ie.polygonOffset_enable&&(fa?Ut.enable(32823):Ut.disable(32823),Ie.polygonOffset_enable=fa),kn=Rt[0],Aa=Rt[1],(kn!==yt[0]||Aa!==yt[1])&&(Ut.polygonOffset(kn,Aa),yt[0]=kn,yt[1]=Aa),ys=Oe.sample_alpha,ys!==Ie.sample_alpha&&(ys?Ut.enable(32926):Ut.disable(32926),Ie.sample_alpha=ys),uo=Oe.sample_enable,uo!==Ie.sample_enable&&(uo?Ut.enable(32928):Ut.disable(32928),Ie.sample_enable=uo),ls=Gt[0],$a=Gt[1],(ls!==Wt[0]||$a!==Wt[1])&&(Ut.sampleCoverage(ls,$a),Wt[0]=ls,Wt[1]=$a),fo=Oe.stencil_mask,fo!==Ie.stencil_mask&&(Ut.stencilMask(fo),Ie.stencil_mask=fo),mn=xr[0],ra=xr[1],wa=xr[2],(mn!==Lr[0]||ra!==Lr[1]||wa!==Lr[2])&&(Ut.stencilFunc(mn,ra,wa),Lr[0]=mn,Lr[1]=ra,Lr[2]=wa),ws=Nr[0],Co=Nr[1],Po=Nr[2],Wi=Nr[3],(ws!==Or[0]||Co!==Or[1]||Po!==Or[2]||Wi!==Or[3])&&(Ut.stencilOpSeparate(ws,Co,Po,Wi),Or[0]=ws,Or[1]=Co,Or[2]=Po,Or[3]=Wi),gn=Hr[0],Ps=Hr[1],Ha=Hr[2],Sn=Hr[3],(gn!==jr[0]||Ps!==jr[1]||Ha!==jr[2]||Sn!==jr[3])&&(Ut.stencilOpSeparate(gn,Ps,Ha,Sn),jr[0]=gn,jr[1]=Ps,jr[2]=Ha,jr[3]=Sn)}Ut.blendColor(0,0,0,1),Rr[0]=0,Rr[1]=0,Rr[2]=0,Rr[3]=1,Yt?Ut.enable(3042):Ut.disable(3042),Ie.blend_enable=Yt,Ut.blendFuncSeparate(770,771,773,1),$i[0]=770,$i[1]=771,$i[2]=773,$i[3]=1,cr?Ut.enable(2929):Ut.disable(2929),Ie.depth_enable=cr,_r?Ut.enable(3089):Ut.disable(3089),Ie.scissor_enable=_r,yr?Ut.enable(2960):Ut.disable(2960),Ie.stencil_enable=yr,ct=Ie.profile,ct&&(tr=performance.now(),r.count+=xn),Ut.useProgram(s.program),pr=rr.angle_instanced_arrays;var ao;for(dt.setVAO(null),Ut.uniform1i(P.location,!1),Ut.uniform1i(U.location,G.bind()),ao=Fe.instances,gr=0;gr0?co.constant[0]:0,Go=co.constant.length>1?co.constant[1]:0,Ys=co.constant.length>2?co.constant[2]:0,qs=co.constant.length>3?co.constant[3]:0)):(Br(co.buffer)?Ns=ge.createStream(34962,co.buffer):Ns=ge.getBuffer(co.buffer),Vs="type"in co?nn[co.type]:Ns.dtype,ha=!!co.normalized,Oa=co.size|0,Ya=co.offset|0,_n=co.stride|0,Vn=co.divisor|0)),wo=l.location,Ra=pe[wo],No===1?(Ra.buffer||Ut.enableVertexAttribArray(wo),Xn=Oa||4,(Ra.type!==Vs||Ra.size!==Xn||Ra.buffer!==Ns||Ra.normalized!==ha||Ra.offset!==Ya||Ra.stride!==_n)&&(Ut.bindBuffer(34962,Ns.buffer),Ut.vertexAttribPointer(wo,Xn,Vs,ha,_n,Ya),Ra.type=Vs,Ra.size=Xn,Ra.buffer=Ns,Ra.normalized=ha,Ra.offset=Ya,Ra.stride=_n),Ra.divisor!==Vn&&(pr.vertexAttribDivisorANGLE(wo,Vn),Ra.divisor=Vn)):(Ra.buffer&&(Ut.disableVertexAttribArray(wo),Ra.buffer=null),(Ra.x!==jn||Ra.y!==Go||Ra.z!==Ys||Ra.w!==qs)&&(Ut.vertexAttrib4f(wo,jn,Go,Ys,qs),Ra.x=jn,Ra.y=Go,Ra.z=Ys,Ra.w=qs)),un=f.call(this,Re,Zr,gr),$n=!1,Ka=1,qn=0,Eo=0,Ja=0,lo=0,eo=null,sa=0,es=!1,Na=5126,rn=0,Pa=0,to=0,Br(un)?($n=!0,eo=ge.createStream(34962,un),Na=eo.dtype):(eo=ge.getBuffer(un),eo?Na=eo.dtype:"constant"in un?(Ka=2,typeof un.constant=="number"?(qn=un.constant,Eo=Ja=lo=0):(qn=un.constant.length>0?un.constant[0]:0,Eo=un.constant.length>1?un.constant[1]:0,Ja=un.constant.length>2?un.constant[2]:0,lo=un.constant.length>3?un.constant[3]:0)):(Br(un.buffer)?eo=ge.createStream(34962,un.buffer):eo=ge.getBuffer(un.buffer),Na="type"in un?nn[un.type]:eo.dtype,es=!!un.normalized,sa=un.size|0,rn=un.offset|0,Pa=un.stride|0,to=un.divisor|0)),yo=c.location,Jo=pe[yo],Ka===1?(Jo.buffer||Ut.enableVertexAttribArray(yo),To=sa||1,(Jo.type!==Na||Jo.size!==To||Jo.buffer!==eo||Jo.normalized!==es||Jo.offset!==rn||Jo.stride!==Pa)&&(Ut.bindBuffer(34962,eo.buffer),Ut.vertexAttribPointer(yo,To,Na,es,Pa,rn),Jo.type=Na,Jo.size=To,Jo.buffer=eo,Jo.normalized=es,Jo.offset=rn,Jo.stride=Pa),Jo.divisor!==to&&(pr.vertexAttribDivisorANGLE(yo,to),Jo.divisor=to)):(Jo.buffer&&(Ut.disableVertexAttribArray(yo),Jo.buffer=null),(Jo.x!==qn||Jo.y!==Eo||Jo.z!==Ja||Jo.w!==lo)&&(Ut.vertexAttrib4f(yo,qn,Eo,Ja,lo),Jo.x=qn,Jo.y=Eo,Jo.z=Ja,Jo.w=lo)),Dn=h.call(this,Re,Zr,gr),_a=!1,Ws=1,Ca=0,Es=0,As=0,Ho=0,Wa=null,Ao=0,ts=!1,Wo=5126,qa=0,ln=0,Bo=0,Br(Dn)?(_a=!0,Wa=ge.createStream(34962,Dn),Wo=Wa.dtype):(Wa=ge.getBuffer(Dn),Wa?Wo=Wa.dtype:"constant"in Dn?(Ws=2,typeof Dn.constant=="number"?(Ca=Dn.constant,Es=As=Ho=0):(Ca=Dn.constant.length>0?Dn.constant[0]:0,Es=Dn.constant.length>1?Dn.constant[1]:0,As=Dn.constant.length>2?Dn.constant[2]:0,Ho=Dn.constant.length>3?Dn.constant[3]:0)):(Br(Dn.buffer)?Wa=ge.createStream(34962,Dn.buffer):Wa=ge.getBuffer(Dn.buffer),Wo="type"in Dn?nn[Dn.type]:Wa.dtype,ts=!!Dn.normalized,Ao=Dn.size|0,qa=Dn.offset|0,ln=Dn.stride|0,Bo=Dn.divisor|0)),ko=d.location,oo=pe[ko],Ws===1?(oo.buffer||Ut.enableVertexAttribArray(ko),za=Ao||4,(oo.type!==Wo||oo.size!==za||oo.buffer!==Wa||oo.normalized!==ts||oo.offset!==qa||oo.stride!==ln)&&(Ut.bindBuffer(34962,Wa.buffer),Ut.vertexAttribPointer(ko,za,Wo,ts,ln,qa),oo.type=Wo,oo.size=za,oo.buffer=Wa,oo.normalized=ts,oo.offset=qa,oo.stride=ln),oo.divisor!==Bo&&(pr.vertexAttribDivisorANGLE(ko,Bo),oo.divisor=Bo)):(oo.buffer&&(Ut.disableVertexAttribArray(ko),oo.buffer=null),(oo.x!==Ca||oo.y!==Es||oo.z!==As||oo.w!==Ho)&&(Ut.vertexAttrib4f(ko,Ca,Es,As,Ho),oo.x=Ca,oo.y=Es,oo.z=As,oo.w=Ho)),ea=p.call(this,Re,Zr,gr),rs=!1,$s=1,us=0,Ds=0,fl=0,as=0,Ma=null,Qs=0,ho=!1,gs=5126,Vo=0,Do=0,Lo=0,Br(ea)?(rs=!0,Ma=ge.createStream(34962,ea),gs=Ma.dtype):(Ma=ge.getBuffer(ea),Ma?gs=Ma.dtype:"constant"in ea?($s=2,typeof ea.constant=="number"?(us=ea.constant,Ds=fl=as=0):(us=ea.constant.length>0?ea.constant[0]:0,Ds=ea.constant.length>1?ea.constant[1]:0,fl=ea.constant.length>2?ea.constant[2]:0,as=ea.constant.length>3?ea.constant[3]:0)):(Br(ea.buffer)?Ma=ge.createStream(34962,ea.buffer):Ma=ge.getBuffer(ea.buffer),gs="type"in ea?nn[ea.type]:Ma.dtype,ho=!!ea.normalized,Qs=ea.size|0,Vo=ea.offset|0,Do=ea.stride|0,Lo=ea.divisor|0)),xs=_.location,ks=pe[xs],$s===1?(ks.buffer||Ut.enableVertexAttribArray(xs),Ea=Qs||1,(ks.type!==gs||ks.size!==Ea||ks.buffer!==Ma||ks.normalized!==ho||ks.offset!==Vo||ks.stride!==Do)&&(Ut.bindBuffer(34962,Ma.buffer),Ut.vertexAttribPointer(xs,Ea,gs,ho,Do,Vo),ks.type=gs,ks.size=Ea,ks.buffer=Ma,ks.normalized=ho,ks.offset=Vo,ks.stride=Do),ks.divisor!==Lo&&(pr.vertexAttribDivisorANGLE(xs,Lo),ks.divisor=Lo)):(ks.buffer&&(Ut.disableVertexAttribArray(xs),ks.buffer=null),(ks.x!==us||ks.y!==Ds||ks.z!==fl||ks.w!==as)&&(Ut.vertexAttrib4f(xs,us,Ds,fl,as),ks.x=us,ks.y=Ds,ks.z=fl,ks.w=as)),Jn=b.call(this,Re,Zr,gr),Oo=!1,rl=1,Gs=0,bs=0,zs=0,$o=0,Ta=null,os=0,_l=!1,Ss=5126,po=0,go=0,ss=0,Br(Jn)?(Oo=!0,Ta=ge.createStream(34962,Jn),Ss=Ta.dtype):(Ta=ge.getBuffer(Jn),Ta?Ss=Ta.dtype:"constant"in Jn?(rl=2,typeof Jn.constant=="number"?(Gs=Jn.constant,bs=zs=$o=0):(Gs=Jn.constant.length>0?Jn.constant[0]:0,bs=Jn.constant.length>1?Jn.constant[1]:0,zs=Jn.constant.length>2?Jn.constant[2]:0,$o=Jn.constant.length>3?Jn.constant[3]:0)):(Br(Jn.buffer)?Ta=ge.createStream(34962,Jn.buffer):Ta=ge.getBuffer(Jn.buffer),Ss="type"in Jn?nn[Jn.type]:Ta.dtype,_l=!!Jn.normalized,os=Jn.size|0,po=Jn.offset|0,go=Jn.stride|0,ss=Jn.divisor|0)),qo=v.location,zo=pe[qo],rl===1?(zo.buffer||Ut.enableVertexAttribArray(qo),io=os||1,(zo.type!==Ss||zo.size!==io||zo.buffer!==Ta||zo.normalized!==_l||zo.offset!==po||zo.stride!==go)&&(Ut.bindBuffer(34962,Ta.buffer),Ut.vertexAttribPointer(qo,io,Ss,_l,go,po),zo.type=Ss,zo.size=io,zo.buffer=Ta,zo.normalized=_l,zo.offset=po,zo.stride=go),zo.divisor!==ss&&(pr.vertexAttribDivisorANGLE(qo,ss),zo.divisor=ss)):(zo.buffer&&(Ut.disableVertexAttribArray(qo),zo.buffer=null),(zo.x!==Gs||zo.y!==bs||zo.z!==zs||zo.w!==$o)&&(Ut.vertexAttrib4f(qo,Gs,bs,zs,$o),zo.x=Gs,zo.y=bs,zo.z=zs,zo.w=$o)),Io=k.call(this,Re,Zr,gr),Da=!1,vs=1,fs=0,cl=0,el=0,Hs=0,Ro=null,tl=0,Fs=!1,hl=5126,Fa=0,Ms=0,jo=0,Br(Io)?(Da=!0,Ro=ge.createStream(34962,Io),hl=Ro.dtype):(Ro=ge.getBuffer(Io),Ro?hl=Ro.dtype:"constant"in Io?(vs=2,typeof Io.constant=="number"?(fs=Io.constant,cl=el=Hs=0):(fs=Io.constant.length>0?Io.constant[0]:0,cl=Io.constant.length>1?Io.constant[1]:0,el=Io.constant.length>2?Io.constant[2]:0,Hs=Io.constant.length>3?Io.constant[3]:0)):(Br(Io.buffer)?Ro=ge.createStream(34962,Io.buffer):Ro=ge.getBuffer(Io.buffer),hl="type"in Io?nn[Io.type]:Ro.dtype,Fs=!!Io.normalized,tl=Io.size|0,Fa=Io.offset|0,Ms=Io.stride|0,jo=Io.divisor|0)),Rs=E.location,Is=pe[Rs],vs===1?(Is.buffer||Ut.enableVertexAttribArray(Rs),Bs=tl||1,(Is.type!==hl||Is.size!==Bs||Is.buffer!==Ro||Is.normalized!==Fs||Is.offset!==Fa||Is.stride!==Ms)&&(Ut.bindBuffer(34962,Ro.buffer),Ut.vertexAttribPointer(Rs,Bs,hl,Fs,Ms,Fa),Is.type=hl,Is.size=Bs,Is.buffer=Ro,Is.normalized=Fs,Is.offset=Fa,Is.stride=Ms),Is.divisor!==jo&&(pr.vertexAttribDivisorANGLE(Rs,jo),Is.divisor=jo)):(Is.buffer&&(Ut.disableVertexAttribArray(Rs),Is.buffer=null),(Is.x!==fs||Is.y!==cl||Is.z!==el||Is.w!==Hs)&&(Ut.vertexAttrib4f(Rs,fs,cl,el,Hs),Is.x=fs,Is.y=cl,Is.z=el,Is.w=Hs)),At=A.call(this,Re,Zr,gr),Vt=!1,wr=1,mr=0,Fr=0,_i=0,Si=0,Ci=null,Ki=0,Fn=!1,Pi=5126,di=0,Li=0,Mi=0,Br(At)?(Vt=!0,Ci=ge.createStream(34962,At),Pi=Ci.dtype):(Ci=ge.getBuffer(At),Ci?Pi=Ci.dtype:"constant"in At?(wr=2,typeof At.constant=="number"?(mr=At.constant,Fr=_i=Si=0):(mr=At.constant.length>0?At.constant[0]:0,Fr=At.constant.length>1?At.constant[1]:0,_i=At.constant.length>2?At.constant[2]:0,Si=At.constant.length>3?At.constant[3]:0)):(Br(At.buffer)?Ci=ge.createStream(34962,At.buffer):Ci=ge.getBuffer(At.buffer),Pi="type"in At?nn[At.type]:Ci.dtype,Fn=!!At.normalized,Ki=At.size|0,di=At.offset|0,Li=At.stride|0,Mi=At.divisor|0)),Gn=L.location,ta=pe[Gn],wr===1?(ta.buffer||Ut.enableVertexAttribArray(Gn),ya=Ki||1,(ta.type!==Pi||ta.size!==ya||ta.buffer!==Ci||ta.normalized!==Fn||ta.offset!==di||ta.stride!==Li)&&(Ut.bindBuffer(34962,Ci.buffer),Ut.vertexAttribPointer(Gn,ya,Pi,Fn,Li,di),ta.type=Pi,ta.size=ya,ta.buffer=Ci,ta.normalized=Fn,ta.offset=di,ta.stride=Li),ta.divisor!==Mi&&(pr.vertexAttribDivisorANGLE(Gn,Mi),ta.divisor=Mi)):(ta.buffer&&(Ut.disableVertexAttribArray(Gn),ta.buffer=null),(ta.x!==mr||ta.y!==Fr||ta.z!==_i||ta.w!==Si)&&(Ut.vertexAttrib4f(Gn,mr,Fr,_i,Si),ta.x=mr,ta.y=Fr,ta.z=_i,ta.w=Si)),ia=x.call(this,Re,Zr,gr),pa=!1,va=1,zn=0,is=0,Cs=0,Ks=0,dl=null,xl=0,Bl=!1,bl=5126,eu=0,Zl=0,Ul=0,Br(ia)?(pa=!0,dl=ge.createStream(34962,ia),bl=dl.dtype):(dl=ge.getBuffer(ia),dl?bl=dl.dtype:"constant"in ia?(va=2,typeof ia.constant=="number"?(zn=ia.constant,is=Cs=Ks=0):(zn=ia.constant.length>0?ia.constant[0]:0,is=ia.constant.length>1?ia.constant[1]:0,Cs=ia.constant.length>2?ia.constant[2]:0,Ks=ia.constant.length>3?ia.constant[3]:0)):(Br(ia.buffer)?dl=ge.createStream(34962,ia.buffer):dl=ge.getBuffer(ia.buffer),bl="type"in ia?nn[ia.type]:dl.dtype,Bl=!!ia.normalized,xl=ia.size|0,eu=ia.offset|0,Zl=ia.stride|0,Ul=ia.divisor|0)),ja=C.location,ns=pe[ja],va===1?(ns.buffer||Ut.enableVertexAttribArray(ja),Js=xl||1,(ns.type!==bl||ns.size!==Js||ns.buffer!==dl||ns.normalized!==Bl||ns.offset!==eu||ns.stride!==Zl)&&(Ut.bindBuffer(34962,dl.buffer),Ut.vertexAttribPointer(ja,Js,bl,Bl,Zl,eu),ns.type=bl,ns.size=Js,ns.buffer=dl,ns.normalized=Bl,ns.offset=eu,ns.stride=Zl),ns.divisor!==Ul&&(pr.vertexAttribDivisorANGLE(ja,Ul),ns.divisor=Ul)):(ns.buffer&&(Ut.disableVertexAttribArray(ja),ns.buffer=null),(ns.x!==zn||ns.y!==is||ns.z!==Cs||ns.w!==Ks)&&(Ut.vertexAttrib4f(ja,zn,is,Cs,Ks),ns.x=zn,ns.y=is,ns.z=Cs,ns.w=Ks)),cs=M.call(this,Re,Zr,gr),sl=!1,ll=1,il=0,zl=0,Ml=0,Rl=0,Tl=null,Ll=0,ms=!1,Os=5126,Xl=0,Vl=0,Nl=0,Br(cs)?(sl=!0,Tl=ge.createStream(34962,cs),Os=Tl.dtype):(Tl=ge.getBuffer(cs),Tl?Os=Tl.dtype:"constant"in cs?(ll=2,typeof cs.constant=="number"?(il=cs.constant,zl=Ml=Rl=0):(il=cs.constant.length>0?cs.constant[0]:0,zl=cs.constant.length>1?cs.constant[1]:0,Ml=cs.constant.length>2?cs.constant[2]:0,Rl=cs.constant.length>3?cs.constant[3]:0)):(Br(cs.buffer)?Tl=ge.createStream(34962,cs.buffer):Tl=ge.getBuffer(cs.buffer),Os="type"in cs?nn[cs.type]:Tl.dtype,ms=!!cs.normalized,Ll=cs.size|0,Xl=cs.offset|0,Vl=cs.stride|0,Nl=cs.divisor|0)),le=m.location,w=pe[le],ll===1?(w.buffer||Ut.enableVertexAttribArray(le),q=Ll||1,(w.type!==Os||w.size!==q||w.buffer!==Tl||w.normalized!==ms||w.offset!==Xl||w.stride!==Vl)&&(Ut.bindBuffer(34962,Tl.buffer),Ut.vertexAttribPointer(le,q,Os,ms,Vl,Xl),w.type=Os,w.size=q,w.buffer=Tl,w.normalized=ms,w.offset=Xl,w.stride=Vl),w.divisor!==Nl&&(pr.vertexAttribDivisorANGLE(le,Nl),w.divisor=Nl)):(w.buffer&&(Ut.disableVertexAttribArray(le),w.buffer=null),(w.x!==il||w.y!==zl||w.z!==Ml||w.w!==Rl)&&(Ut.vertexAttrib4f(le,il,zl,Ml,Rl),w.x=il,w.y=zl,w.z=Ml,w.w=Rl)),Q=Zr.opacity,(!gr||ee!==Q)&&(ee=Q,Ut.uniform1f(T.location,Q)),ue=F.call(this,Re,Zr,gr),Ve=ue[0],mt=ue[1],(!gr||tt!==Ve||Bt!==mt)&&(tt=Ve,Bt=mt,Ut.uniform2f(B.location,Ve,mt)),ir=Re.pixelRatio,(!gr||or!==ir)&&(or=ir,Ut.uniform1f(j.location,ir)),kr=Zr.scale,Vr=kr[0],Se=kr[1],(!gr||he!==Vr||Ne!==Se)&&(he=Vr,Ne=Se,Ut.uniform2f(W.location,Vr,Se)),Ge=Zr.scaleFract,lt=Ge[0],pt=Ge[1],(!gr||rt!==lt||Ht!==pt)&&(rt=lt,Ht=pt,Ut.uniform2f(N.location,lt,pt)),nr=Zr.translate,fr=nr[0],Ir=nr[1],(!gr||Tr!==fr||ri!==Ir)&&(Tr=fr,ri=Ir,Ut.uniform2f(H.location,fr,Ir)),li=Zr.translateFract,Ei=li[0],Zn=li[1],(!gr||hn!==Ei||Yn!==Zn)&&(hn=Ei,Yn=Zn,Ut.uniform2f(re.location,Ei,Zn)),Ua=Zr.elements,Fo=null,vl=Br(Ua),vl?Fo=ft.createStream(Ua):Fo=ft.getElements(Ua),Fo&&Ut.bindBuffer(34963,Fo.buffer.buffer),Us=Zr.offset,ml=Zr.count,ml&&(ao>0?Fo?pr.drawElementsInstancedANGLE(0,ml,Fo.type,Us<<(Fo.type-5121>>1),ao):pr.drawArraysInstancedANGLE(0,Us,ml,ao):ao<0&&(Fo?Ut.drawElements(0,ml,Fo.type,Us<<(Fo.type-5121>>1)):Ut.drawArrays(0,Us,ml)),Re.viewportWidth=Qa,Re.viewportHeight=vn,mo&&ge.destroyStream(Ns),$n&&ge.destroyStream(eo),_a&&ge.destroyStream(Wa),rs&&ge.destroyStream(Ma),Oo&&ge.destroyStream(Ta),Da&&ge.destroyStream(Ro),Vt&&ge.destroyStream(Ci),pa&&ge.destroyStream(dl),sl&&ge.destroyStream(Tl),vl&&ft.destroyStream(Fo))}G.unbind(),Ie.dirty=!0,dt.setVAO(null),ct&&(r.cpuTime+=performance.now()-tr)}}}});var D8=Ae((Xxr,t7e)=>{t7e.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye){"use strict";var He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi;return He=t.gl,it=t.context,et=t.strings,It=t.next,Yt=t.current,cr=t.draw,_r=t.elements,yr=t.buffer,Ut=t.shader,Re=t.attributes,xe=t.vao,Oe=t.uniforms,Ie=t.framebuffer,Fe=t.extensions,ft=t.timer,ge=t.isBufferArgs,fe=It.blend_color,pe=Yt.blend_color,dt=It.blend_equation,Pt=Yt.blend_equation,zt=It.blend_func,rr=Yt.blend_func,Gr=It.depth_range,Br=Yt.depth_range,Er=It.colorMask,Rr=Yt.colorMask,pi=It.polygonOffset_offset,Di=Yt.polygonOffset_offset,ni=It.sample_coverage,$i=Yt.sample_coverage,Qi=It.stencil_func,si=Yt.stencil_func,Ai=It.stencil_opFront,Ni=Yt.stencil_opFront,Rt=It.stencil_opBack,yt=Yt.stencil_opBack,Gt=It.scissor_box,Wt=Yt.scissor_box,xr=It.viewport,Lr=Yt.viewport,Nr={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Or={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Hr={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},jr={add:32774,subtract:32778,"reverse subtract":32779},gi={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ki={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Vi={cw:2304,ccw:2305},ti={},ti.buffer=n,ti.divisor=1,tn={},tn.buffer=i,tn.divisor=1,Yr={},Yr.buffer=a,Yr.divisor=1,oi={},oi.buffer=o,oi.divisor=1,{draw:function(Fi){var an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us;if(an=Fe.angle_instanced_arrays,nn=Ie.next,nn!==Ie.cur&&(nn?He.bindFramebuffer(36160,nn.framebuffer):He.bindFramebuffer(36160,null),Ie.cur=nn),Yt.dirty){var Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs;Ds=It.dither,Ds!==Yt.dither&&(Ds?He.enable(3024):He.disable(3024),Yt.dither=Ds),fl=It.depth_func,fl!==Yt.depth_func&&(He.depthFunc(fl),Yt.depth_func=fl),as=Gr[0],Ma=Gr[1],(as!==Br[0]||Ma!==Br[1])&&(He.depthRange(as,Ma),Br[0]=as,Br[1]=Ma),Qs=It.depth_mask,Qs!==Yt.depth_mask&&(He.depthMask(Qs),Yt.depth_mask=Qs),ho=Er[0],gs=Er[1],Vo=Er[2],Do=Er[3],(ho!==Rr[0]||gs!==Rr[1]||Vo!==Rr[2]||Do!==Rr[3])&&(He.colorMask(ho,gs,Vo,Do),Rr[0]=ho,Rr[1]=gs,Rr[2]=Vo,Rr[3]=Do),Lo=It.cull_enable,Lo!==Yt.cull_enable&&(Lo?He.enable(2884):He.disable(2884),Yt.cull_enable=Lo),xs=It.cull_face,xs!==Yt.cull_face&&(He.cullFace(xs),Yt.cull_face=xs),ks=It.frontFace,ks!==Yt.frontFace&&(He.frontFace(ks),Yt.frontFace=ks),Ea=It.lineWidth,Ea!==Yt.lineWidth&&(He.lineWidth(Ea),Yt.lineWidth=Ea),Jn=It.polygonOffset_enable,Jn!==Yt.polygonOffset_enable&&(Jn?He.enable(32823):He.disable(32823),Yt.polygonOffset_enable=Jn),Oo=pi[0],rl=pi[1],(Oo!==Di[0]||rl!==Di[1])&&(He.polygonOffset(Oo,rl),Di[0]=Oo,Di[1]=rl),Gs=It.sample_alpha,Gs!==Yt.sample_alpha&&(Gs?He.enable(32926):He.disable(32926),Yt.sample_alpha=Gs),bs=It.sample_enable,bs!==Yt.sample_enable&&(bs?He.enable(32928):He.disable(32928),Yt.sample_enable=bs),zs=ni[0],$o=ni[1],(zs!==$i[0]||$o!==$i[1])&&(He.sampleCoverage(zs,$o),$i[0]=zs,$i[1]=$o),Ta=It.stencil_enable,Ta!==Yt.stencil_enable&&(Ta?He.enable(2960):He.disable(2960),Yt.stencil_enable=Ta),os=It.stencil_mask,os!==Yt.stencil_mask&&(He.stencilMask(os),Yt.stencil_mask=os),_l=Qi[0],Ss=Qi[1],po=Qi[2],(_l!==si[0]||Ss!==si[1]||po!==si[2])&&(He.stencilFunc(_l,Ss,po),si[0]=_l,si[1]=Ss,si[2]=po),go=Ai[0],ss=Ai[1],qo=Ai[2],zo=Ai[3],(go!==Ni[0]||ss!==Ni[1]||qo!==Ni[2]||zo!==Ni[3])&&(He.stencilOpSeparate(go,ss,qo,zo),Ni[0]=go,Ni[1]=ss,Ni[2]=qo,Ni[3]=zo),io=Rt[0],Io=Rt[1],Da=Rt[2],vs=Rt[3],(io!==yt[0]||Io!==yt[1]||Da!==yt[2]||vs!==yt[3])&&(He.stencilOpSeparate(io,Io,Da,vs),yt[0]=io,yt[1]=Io,yt[2]=Da,yt[3]=vs)}Ri=Fi.viewport,Ii=Ri.x|0,xn=Ri.y|0,bi="width"in Ri?Ri.width|0:it.framebufferWidth-Ii,Xr="height"in Ri?Ri.height|0:it.framebufferHeight-xn,ct=it.viewportWidth,it.viewportWidth=bi,tr=it.viewportHeight,it.viewportHeight=Xr,He.viewport(Ii,xn,bi,Xr),Lr[0]=Ii,Lr[1]=xn,Lr[2]=bi,Lr[3]=Xr,He.blendColor(0,0,0,0),pe[0]=0,pe[1]=0,pe[2]=0,pe[3]=0,s?He.enable(3042):He.disable(3042),Yt.blend_enable=s,He.blendEquationSeparate(32774,32774),Pt[0]=32774,Pt[1]=32774,He.blendFuncSeparate(770,771,773,1),rr[0]=770,rr[1]=771,rr[2]=773,rr[3]=1,u?He.enable(2929):He.disable(2929),Yt.depth_enable=u,pr=Fi.viewport,gr=pr.x|0,Zr=pr.y|0,Ti="width"in pr?pr.width|0:it.framebufferWidth-gr,en="height"in pr?pr.height|0:it.framebufferHeight-Zr,He.scissor(gr,Zr,Ti,en),Wt[0]=gr,Wt[1]=Zr,Wt[2]=Ti,Wt[3]=en,l?He.enable(3089):He.disable(3089),Yt.scissor_enable=l,ii=Yt.profile,ii&&(Xi=performance.now(),r.count++),He.useProgram(f.program),aa=Fe.angle_instanced_arrays,xe.setVAO(null),Mn=h.location,Un=Re[Mn],Un.buffer||He.enableVertexAttribArray(Mn),(Un.type!==5126||Un.size!==2||Un.buffer!==c||Un.normalized!==!1||Un.offset!==16||Un.stride!==24)&&(He.bindBuffer(34962,c.buffer),He.vertexAttribPointer(Mn,2,5126,!1,24,16),Un.type=5126,Un.size=2,Un.buffer=c,Un.normalized=!1,Un.offset=16,Un.stride=24),Un.divisor!==0&&(aa.vertexAttribDivisorANGLE(Mn,0),Un.divisor=0),Ga=d.call(this,it,Fi,0),ti.offset=Ga,ma=!1,oa=1,ka=0,so=0,Kr=0,Ia=0,Yo=null,fa=0,kn=!1,Aa=5126,ys=0,uo=0,ls=0,ge(ti)?(ma=!0,Yo=yr.createStream(34962,ti),Aa=Yo.dtype):(Yo=yr.getBuffer(ti),Yo?Aa=Yo.dtype:"constant"in ti?(oa=2,typeof ti.constant=="number"?(ka=ti.constant,so=Kr=Ia=0):(ka=ti.constant.length>0?ti.constant[0]:0,so=ti.constant.length>1?ti.constant[1]:0,Kr=ti.constant.length>2?ti.constant[2]:0,Ia=ti.constant.length>3?ti.constant[3]:0)):(ge(ti.buffer)?Yo=yr.createStream(34962,ti.buffer):Yo=yr.getBuffer(ti.buffer),Aa="type"in ti?ki[ti.type]:Yo.dtype,kn=!!ti.normalized,fa=ti.size|0,ys=ti.offset|0,uo=ti.stride|0,ls=ti.divisor|0)),$a=p.location,fo=Re[$a],oa===1?(fo.buffer||He.enableVertexAttribArray($a),mn=fa||4,(fo.type!==Aa||fo.size!==mn||fo.buffer!==Yo||fo.normalized!==kn||fo.offset!==ys||fo.stride!==uo)&&(He.bindBuffer(34962,Yo.buffer),He.vertexAttribPointer($a,mn,Aa,kn,uo,ys),fo.type=Aa,fo.size=mn,fo.buffer=Yo,fo.normalized=kn,fo.offset=ys,fo.stride=uo),fo.divisor!==ls&&(aa.vertexAttribDivisorANGLE($a,ls),fo.divisor=ls)):(fo.buffer&&(He.disableVertexAttribArray($a),fo.buffer=null),(fo.x!==ka||fo.y!==so||fo.z!==Kr||fo.w!==Ia)&&(He.vertexAttrib4f($a,ka,so,Kr,Ia),fo.x=ka,fo.y=so,fo.z=Kr,fo.w=Ia)),ra=_.location,wa=Re[ra],wa.buffer||He.enableVertexAttribArray(ra),(wa.type!==5126||wa.size!==2||wa.buffer!==c||wa.normalized!==!1||wa.offset!==0||wa.stride!==24)&&(He.bindBuffer(34962,c.buffer),He.vertexAttribPointer(ra,2,5126,!1,24,0),wa.type=5126,wa.size=2,wa.buffer=c,wa.normalized=!1,wa.offset=0,wa.stride=24),wa.divisor!==0&&(aa.vertexAttribDivisorANGLE(ra,0),wa.divisor=0),ws=b.call(this,it,Fi,0),oi.offset=ws,Co=!1,Po=1,Wi=0,gn=0,Ps=0,Ha=0,Sn=null,ao=0,Ba=!1,Ko=5126,Qo=0,Hi=0,Sa=0,ge(oi)?(Co=!0,Sn=yr.createStream(34962,oi),Ko=Sn.dtype):(Sn=yr.getBuffer(oi),Sn?Ko=Sn.dtype:"constant"in oi?(Po=2,typeof oi.constant=="number"?(Wi=oi.constant,gn=Ps=Ha=0):(Wi=oi.constant.length>0?oi.constant[0]:0,gn=oi.constant.length>1?oi.constant[1]:0,Ps=oi.constant.length>2?oi.constant[2]:0,Ha=oi.constant.length>3?oi.constant[3]:0)):(ge(oi.buffer)?Sn=yr.createStream(34962,oi.buffer):Sn=yr.getBuffer(oi.buffer),Ko="type"in oi?ki[oi.type]:Sn.dtype,Ba=!!oi.normalized,ao=oi.size|0,Qo=oi.offset|0,Hi=oi.stride|0,Sa=oi.divisor|0)),Qa=v.location,vn=Re[Qa],Po===1?(vn.buffer||He.enableVertexAttribArray(Qa),da=ao||4,(vn.type!==Ko||vn.size!==da||vn.buffer!==Sn||vn.normalized!==Ba||vn.offset!==Qo||vn.stride!==Hi)&&(He.bindBuffer(34962,Sn.buffer),He.vertexAttribPointer(Qa,da,Ko,Ba,Hi,Qo),vn.type=Ko,vn.size=da,vn.buffer=Sn,vn.normalized=Ba,vn.offset=Qo,vn.stride=Hi),vn.divisor!==Sa&&(aa.vertexAttribDivisorANGLE(Qa,Sa),vn.divisor=Sa)):(vn.buffer&&(He.disableVertexAttribArray(Qa),vn.buffer=null),(vn.x!==Wi||vn.y!==gn||vn.z!==Ps||vn.w!==Ha)&&(He.vertexAttrib4f(Qa,Wi,gn,Ps,Ha),vn.x=Wi,vn.y=gn,vn.z=Ps,vn.w=Ha)),la=k.location,vo=Re[la],vo.buffer||He.enableVertexAttribArray(la),(vo.type!==5126||vo.size!==2||vo.buffer!==c||vo.normalized!==!1||vo.offset!==8||vo.stride!==24)&&(He.bindBuffer(34962,c.buffer),He.vertexAttribPointer(la,2,5126,!1,24,8),vo.type=5126,vo.size=2,vo.buffer=c,vo.normalized=!1,vo.offset=8,vo.stride=24),vo.divisor!==0&&(aa.vertexAttribDivisorANGLE(la,0),vo.divisor=0),Ts=E.call(this,it,Fi,0),tn.offset=Ts,ps=!1,co=1,mo=0,No=0,jn=0,Go=0,Ys=null,qs=0,Ns=!1,Oa=5126,ha=0,Vs=0,Ya=0,ge(tn)?(ps=!0,Ys=yr.createStream(34962,tn),Oa=Ys.dtype):(Ys=yr.getBuffer(tn),Ys?Oa=Ys.dtype:"constant"in tn?(co=2,typeof tn.constant=="number"?(mo=tn.constant,No=jn=Go=0):(mo=tn.constant.length>0?tn.constant[0]:0,No=tn.constant.length>1?tn.constant[1]:0,jn=tn.constant.length>2?tn.constant[2]:0,Go=tn.constant.length>3?tn.constant[3]:0)):(ge(tn.buffer)?Ys=yr.createStream(34962,tn.buffer):Ys=yr.getBuffer(tn.buffer),Oa="type"in tn?ki[tn.type]:Ys.dtype,Ns=!!tn.normalized,qs=tn.size|0,ha=tn.offset|0,Vs=tn.stride|0,Ya=tn.divisor|0)),_n=A.location,Vn=Re[_n],co===1?(Vn.buffer||He.enableVertexAttribArray(_n),wo=qs||2,(Vn.type!==Oa||Vn.size!==wo||Vn.buffer!==Ys||Vn.normalized!==Ns||Vn.offset!==ha||Vn.stride!==Vs)&&(He.bindBuffer(34962,Ys.buffer),He.vertexAttribPointer(_n,wo,Oa,Ns,Vs,ha),Vn.type=Oa,Vn.size=wo,Vn.buffer=Ys,Vn.normalized=Ns,Vn.offset=ha,Vn.stride=Vs),Vn.divisor!==Ya&&(aa.vertexAttribDivisorANGLE(_n,Ya),Vn.divisor=Ya)):(Vn.buffer&&(He.disableVertexAttribArray(_n),Vn.buffer=null),(Vn.x!==mo||Vn.y!==No||Vn.z!==jn||Vn.w!==Go)&&(He.vertexAttrib4f(_n,mo,No,jn,Go),Vn.x=mo,Vn.y=No,Vn.z=jn,Vn.w=Go)),Ra=L.call(this,it,Fi,0),Yr.offset=Ra,Xn=!1,un=1,$n=0,Ka=0,qn=0,Eo=0,Ja=null,lo=0,eo=!1,sa=5126,es=0,Na=0,rn=0,ge(Yr)?(Xn=!0,Ja=yr.createStream(34962,Yr),sa=Ja.dtype):(Ja=yr.getBuffer(Yr),Ja?sa=Ja.dtype:"constant"in Yr?(un=2,typeof Yr.constant=="number"?($n=Yr.constant,Ka=qn=Eo=0):($n=Yr.constant.length>0?Yr.constant[0]:0,Ka=Yr.constant.length>1?Yr.constant[1]:0,qn=Yr.constant.length>2?Yr.constant[2]:0,Eo=Yr.constant.length>3?Yr.constant[3]:0)):(ge(Yr.buffer)?Ja=yr.createStream(34962,Yr.buffer):Ja=yr.getBuffer(Yr.buffer),sa="type"in Yr?ki[Yr.type]:Ja.dtype,eo=!!Yr.normalized,lo=Yr.size|0,es=Yr.offset|0,Na=Yr.stride|0,rn=Yr.divisor|0)),Pa=x.location,to=Re[Pa],un===1?(to.buffer||He.enableVertexAttribArray(Pa),yo=lo||2,(to.type!==sa||to.size!==yo||to.buffer!==Ja||to.normalized!==eo||to.offset!==es||to.stride!==Na)&&(He.bindBuffer(34962,Ja.buffer),He.vertexAttribPointer(Pa,yo,sa,eo,Na,es),to.type=sa,to.size=yo,to.buffer=Ja,to.normalized=eo,to.offset=es,to.stride=Na),to.divisor!==rn&&(aa.vertexAttribDivisorANGLE(Pa,rn),to.divisor=rn)):(to.buffer&&(He.disableVertexAttribArray(Pa),to.buffer=null),(to.x!==$n||to.y!==Ka||to.z!==qn||to.w!==Eo)&&(He.vertexAttrib4f(Pa,$n,Ka,qn,Eo),to.x=$n,to.y=Ka,to.z=qn,to.w=Eo)),Jo=Fi.capSize,He.uniform1f(C.location,Jo),To=Fi.lineWidth,He.uniform1f(M.location,To),Dn=Fi.opacity,He.uniform1f(m.location,Dn),_a=Fi.scale,Ws=_a[0],Ca=_a[1],He.uniform2f(P.location,Ws,Ca),Es=Fi.scaleFract,As=Es[0],Ho=Es[1],He.uniform2f(T.location,As,Ho),Wa=Fi.translate,Ao=Wa[0],ts=Wa[1],He.uniform2f(B.location,Ao,ts),Wo=Fi.translateFract,qa=Wo[0],ln=Wo[1],He.uniform2f(F.location,qa,ln),Bo=G.call(this,it,Fi,0),ko=Bo[0],oo=Bo[1],za=Bo[2],ea=Bo[3],He.uniform4f(U.location,ko,oo,za,ea),rs=cr.elements,rs?He.bindBuffer(34963,rs.buffer.buffer):xe.currentVAO&&(rs=_r.getElements(xe.currentVAO.elements),rs&&He.bindBuffer(34963,rs.buffer.buffer)),$s=cr.offset,us=Fi.count,us>0?rs?aa.drawElementsInstancedANGLE(4,36,rs.type,$s<<(rs.type-5121>>1),us):aa.drawArraysInstancedANGLE(4,$s,36,us):us<0&&(rs?He.drawElements(4,36,rs.type,$s<<(rs.type-5121>>1)):He.drawArrays(4,$s,36)),Yt.dirty=!0,xe.setVAO(null),it.viewportWidth=ct,it.viewportHeight=tr,ii&&(r.cpuTime+=performance.now()-Xi),ma&&yr.destroyStream(Yo),Co&&yr.destroyStream(Sn),ps&&yr.destroyStream(Ys),Xn&&yr.destroyStream(Ja)},scope:function(Fi,an,nn){var Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl,ll,il,zl,Ml;Ri=Fi.viewport,Ii=Ri.x|0,xn=Ri.y|0,bi="width"in Ri?Ri.width|0:it.framebufferWidth-Ii,Xr="height"in Ri?Ri.height|0:it.framebufferHeight-xn,ct=it.viewportWidth,it.viewportWidth=bi,tr=it.viewportHeight,it.viewportHeight=Xr,pr=xr[0],xr[0]=Ii,gr=xr[1],xr[1]=xn,Zr=xr[2],xr[2]=bi,Ti=xr[3],xr[3]=Xr,en=fe[0],fe[0]=j,ii=fe[1],fe[1]=W,Xi=fe[2],fe[2]=N,aa=fe[3],fe[3]=H,Mn=It.blend_enable,It.blend_enable=re,Un=dt[0],dt[0]=ae,Ga=dt[1],dt[1]=be,ma=zt[0],zt[0]=ze,oa=zt[1],zt[1]=Ce,ka=zt[2],zt[2]=de,so=zt[3],zt[3]=te,Kr=It.depth_enable,It.depth_enable=ke,Ia=Fi.viewport,Yo=Ia.x|0,fa=Ia.y|0,kn="width"in Ia?Ia.width|0:it.framebufferWidth-Yo,Aa="height"in Ia?Ia.height|0:it.framebufferHeight-fa,ys=Gt[0],Gt[0]=Yo,uo=Gt[1],Gt[1]=fa,ls=Gt[2],Gt[2]=kn,$a=Gt[3],Gt[3]=Aa,fo=It.scissor_enable,It.scissor_enable=Ee,mn=Yt.profile,mn&&(ra=performance.now(),r.count++),wa=cr.count,cr.count=Me,ws=Fi.count,Co=cr.instances,cr.instances=ws,Po=cr.primitive,cr.primitive=Ue,Wi=Fi.range,gn=Oe[De],Oe[De]=Wi,Ps=Fi.lineWidth,Ha=Oe[ye],Oe[ye]=Ps,Sn=Fi.capSize,ao=Oe[qe],Oe[qe]=Sn,Ba=Fi.opacity,Ko=Oe[ce],Oe[ce]=Ba,Qo=Fi.scale,Hi=Oe[Je],Oe[Je]=Qo,Sa=Fi.translate,Qa=Oe[nt],Oe[nt]=Sa,vn=Fi.scaleFract,da=Oe[gt],Oe[gt]=vn,la=Fi.translateFract,vo=Oe[Nt],Oe[Nt]=la,Ts=G.call(this,it,Fi,nn),ps=Oe[at],Oe[at]=Ts,co=Ke.state,Ke.state=1,mo=Ke.x,Ke.x=0,No=Ke.y,Ke.y=0,jn=Ke.z,Ke.z=0,Go=Ke.w,Ke.w=0,Ys=Ke.buffer,Ke.buffer=c,qs=Ke.size,Ke.size=0,Ns=Ke.normalized,Ke.normalized=!1,Oa=Ke.type,Ke.type=5126,ha=Ke.offset,Ke.offset=0,Vs=Ke.stride,Ke.stride=24,Ya=Ke.divisor,Ke.divisor=0,_n=Ct.state,Ct.state=1,Vn=Ct.x,Ct.x=0,wo=Ct.y,Ct.y=0,Ra=Ct.z,Ct.z=0,Xn=Ct.w,Ct.w=0,un=Ct.buffer,Ct.buffer=c,$n=Ct.size,Ct.size=0,Ka=Ct.normalized,Ct.normalized=!1,qn=Ct.type,Ct.type=5126,Eo=Ct.offset,Ct.offset=8,Ja=Ct.stride,Ct.stride=24,lo=Ct.divisor,Ct.divisor=0,eo=wt.state,wt.state=1,sa=wt.x,wt.x=0,es=wt.y,wt.y=0,Na=wt.z,wt.z=0,rn=wt.w,wt.w=0,Pa=wt.buffer,wt.buffer=c,to=wt.size,wt.size=0,yo=wt.normalized,wt.normalized=!1,Jo=wt.type,wt.type=5126,To=wt.offset,wt.offset=16,Dn=wt.stride,wt.stride=24,_a=wt.divisor,wt.divisor=0,Ws=d.call(this,it,Fi,nn),ti.offset=Ws,Ca=!1,Es=1,As=0,Ho=0,Wa=0,Ao=0,ts=null,Wo=0,qa=!1,ln=5126,Bo=0,ko=0,oo=0,ge(ti)?(Ca=!0,ts=yr.createStream(34962,ti),ln=ts.dtype):(ts=yr.getBuffer(ti),ts?ln=ts.dtype:"constant"in ti?(Es=2,typeof ti.constant=="number"?(As=ti.constant,Ho=Wa=Ao=0):(As=ti.constant.length>0?ti.constant[0]:0,Ho=ti.constant.length>1?ti.constant[1]:0,Wa=ti.constant.length>2?ti.constant[2]:0,Ao=ti.constant.length>3?ti.constant[3]:0)):(ge(ti.buffer)?ts=yr.createStream(34962,ti.buffer):ts=yr.getBuffer(ti.buffer),ln="type"in ti?ki[ti.type]:ts.dtype,qa=!!ti.normalized,Wo=ti.size|0,Bo=ti.offset|0,ko=ti.stride|0,oo=ti.divisor|0)),za=St.state,St.state=Es,ea=St.x,St.x=As,rs=St.y,St.y=Ho,$s=St.z,St.z=Wa,us=St.w,St.w=Ao,Ds=St.buffer,St.buffer=ts,fl=St.size,St.size=Wo,as=St.normalized,St.normalized=qa,Ma=St.type,St.type=ln,Qs=St.offset,St.offset=Bo,ho=St.stride,St.stride=ko,gs=St.divisor,St.divisor=oo,Vo=E.call(this,it,Fi,nn),tn.offset=Vo,Do=!1,Lo=1,xs=0,ks=0,Ea=0,Jn=0,Oo=null,rl=0,Gs=!1,bs=5126,zs=0,$o=0,Ta=0,ge(tn)?(Do=!0,Oo=yr.createStream(34962,tn),bs=Oo.dtype):(Oo=yr.getBuffer(tn),Oo?bs=Oo.dtype:"constant"in tn?(Lo=2,typeof tn.constant=="number"?(xs=tn.constant,ks=Ea=Jn=0):(xs=tn.constant.length>0?tn.constant[0]:0,ks=tn.constant.length>1?tn.constant[1]:0,Ea=tn.constant.length>2?tn.constant[2]:0,Jn=tn.constant.length>3?tn.constant[3]:0)):(ge(tn.buffer)?Oo=yr.createStream(34962,tn.buffer):Oo=yr.getBuffer(tn.buffer),bs="type"in tn?ki[tn.type]:Oo.dtype,Gs=!!tn.normalized,rl=tn.size|0,zs=tn.offset|0,$o=tn.stride|0,Ta=tn.divisor|0)),os=Dt.state,Dt.state=Lo,_l=Dt.x,Dt.x=xs,Ss=Dt.y,Dt.y=ks,po=Dt.z,Dt.z=Ea,go=Dt.w,Dt.w=Jn,ss=Dt.buffer,Dt.buffer=Oo,qo=Dt.size,Dt.size=rl,zo=Dt.normalized,Dt.normalized=Gs,io=Dt.type,Dt.type=bs,Io=Dt.offset,Dt.offset=zs,Da=Dt.stride,Dt.stride=$o,vs=Dt.divisor,Dt.divisor=Ta,fs=L.call(this,it,Fi,nn),Yr.offset=fs,cl=!1,el=1,Hs=0,Ro=0,tl=0,Fs=0,hl=null,Fa=0,Ms=!1,jo=5126,Rs=0,Is=0,Bs=0,ge(Yr)?(cl=!0,hl=yr.createStream(34962,Yr),jo=hl.dtype):(hl=yr.getBuffer(Yr),hl?jo=hl.dtype:"constant"in Yr?(el=2,typeof Yr.constant=="number"?(Hs=Yr.constant,Ro=tl=Fs=0):(Hs=Yr.constant.length>0?Yr.constant[0]:0,Ro=Yr.constant.length>1?Yr.constant[1]:0,tl=Yr.constant.length>2?Yr.constant[2]:0,Fs=Yr.constant.length>3?Yr.constant[3]:0)):(ge(Yr.buffer)?hl=yr.createStream(34962,Yr.buffer):hl=yr.getBuffer(Yr.buffer),jo="type"in Yr?ki[Yr.type]:hl.dtype,Ms=!!Yr.normalized,Fa=Yr.size|0,Rs=Yr.offset|0,Is=Yr.stride|0,Bs=Yr.divisor|0)),At=Zt.state,Zt.state=el,Vt=Zt.x,Zt.x=Hs,wr=Zt.y,Zt.y=Ro,mr=Zt.z,Zt.z=tl,Fr=Zt.w,Zt.w=Fs,_i=Zt.buffer,Zt.buffer=hl,Si=Zt.size,Zt.size=Fa,Ci=Zt.normalized,Zt.normalized=Ms,Ki=Zt.type,Zt.type=jo,Fn=Zt.offset,Zt.offset=Rs,Pi=Zt.stride,Zt.stride=Is,di=Zt.divisor,Zt.divisor=Bs,Li=b.call(this,it,Fi,nn),oi.offset=Li,Mi=!1,Gn=1,ta=0,ya=0,ia=0,pa=0,va=null,zn=0,is=!1,Cs=5126,Ks=0,dl=0,xl=0,ge(oi)?(Mi=!0,va=yr.createStream(34962,oi),Cs=va.dtype):(va=yr.getBuffer(oi),va?Cs=va.dtype:"constant"in oi?(Gn=2,typeof oi.constant=="number"?(ta=oi.constant,ya=ia=pa=0):(ta=oi.constant.length>0?oi.constant[0]:0,ya=oi.constant.length>1?oi.constant[1]:0,ia=oi.constant.length>2?oi.constant[2]:0,pa=oi.constant.length>3?oi.constant[3]:0)):(ge(oi.buffer)?va=yr.createStream(34962,oi.buffer):va=yr.getBuffer(oi.buffer),Cs="type"in oi?ki[oi.type]:va.dtype,is=!!oi.normalized,zn=oi.size|0,Ks=oi.offset|0,dl=oi.stride|0,xl=oi.divisor|0)),Bl=Et.state,Et.state=Gn,bl=Et.x,Et.x=ta,eu=Et.y,Et.y=ya,Zl=Et.z,Et.z=ia,Ul=Et.w,Et.w=pa,ja=Et.buffer,Et.buffer=va,ns=Et.size,Et.size=zn,Js=Et.normalized,Et.normalized=is,cs=Et.type,Et.type=Cs,sl=Et.offset,Et.offset=Ks,ll=Et.stride,Et.stride=dl,il=Et.divisor,Et.divisor=xl,zl=Ut.vert,Ut.vert=Te,Ml=Ut.frag,Ut.frag=ot,Yt.dirty=!0,an(it,Fi,nn),it.viewportWidth=ct,it.viewportHeight=tr,xr[0]=pr,xr[1]=gr,xr[2]=Zr,xr[3]=Ti,fe[0]=en,fe[1]=ii,fe[2]=Xi,fe[3]=aa,It.blend_enable=Mn,dt[0]=Un,dt[1]=Ga,zt[0]=ma,zt[1]=oa,zt[2]=ka,zt[3]=so,It.depth_enable=Kr,Gt[0]=ys,Gt[1]=uo,Gt[2]=ls,Gt[3]=$a,It.scissor_enable=fo,mn&&(r.cpuTime+=performance.now()-ra),cr.count=wa,cr.instances=Co,cr.primitive=Po,Oe[De]=gn,Oe[ye]=Ha,Oe[qe]=ao,Oe[ce]=Ko,Oe[Je]=Hi,Oe[nt]=Qa,Oe[gt]=da,Oe[Nt]=vo,Oe[at]=ps,Ke.state=co,Ke.x=mo,Ke.y=No,Ke.z=jn,Ke.w=Go,Ke.buffer=Ys,Ke.size=qs,Ke.normalized=Ns,Ke.type=Oa,Ke.offset=ha,Ke.stride=Vs,Ke.divisor=Ya,Ct.state=_n,Ct.x=Vn,Ct.y=wo,Ct.z=Ra,Ct.w=Xn,Ct.buffer=un,Ct.size=$n,Ct.normalized=Ka,Ct.type=qn,Ct.offset=Eo,Ct.stride=Ja,Ct.divisor=lo,wt.state=eo,wt.x=sa,wt.y=es,wt.z=Na,wt.w=rn,wt.buffer=Pa,wt.size=to,wt.normalized=yo,wt.type=Jo,wt.offset=To,wt.stride=Dn,wt.divisor=_a,Ca&&yr.destroyStream(ts),St.state=za,St.x=ea,St.y=rs,St.z=$s,St.w=us,St.buffer=Ds,St.size=fl,St.normalized=as,St.type=Ma,St.offset=Qs,St.stride=ho,St.divisor=gs,Do&&yr.destroyStream(Oo),Dt.state=os,Dt.x=_l,Dt.y=Ss,Dt.z=po,Dt.w=go,Dt.buffer=ss,Dt.size=qo,Dt.normalized=zo,Dt.type=io,Dt.offset=Io,Dt.stride=Da,Dt.divisor=vs,cl&&yr.destroyStream(hl),Zt.state=At,Zt.x=Vt,Zt.y=wr,Zt.z=mr,Zt.w=Fr,Zt.buffer=_i,Zt.size=Si,Zt.normalized=Ci,Zt.type=Ki,Zt.offset=Fn,Zt.stride=Pi,Zt.divisor=di,Mi&&yr.destroyStream(va),Et.state=Bl,Et.x=bl,Et.y=eu,Et.z=Zl,Et.w=Ul,Et.buffer=ja,Et.size=ns,Et.normalized=Js,Et.type=cs,Et.offset=sl,Et.stride=ll,Et.divisor=il,Ut.vert=zl,Ut.frag=Ml,Yt.dirty=!0},batch:function(Fi,an){var nn,Ri,Ii,xn,bi,Xr,ct;if(nn=Fe.angle_instanced_arrays,Ri=Ie.next,Ri!==Ie.cur&&(Ri?He.bindFramebuffer(36160,Ri.framebuffer):He.bindFramebuffer(36160,null),Ie.cur=Ri),Yt.dirty){var tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po;tr=It.dither,tr!==Yt.dither&&(tr?He.enable(3024):He.disable(3024),Yt.dither=tr),pr=It.depth_func,pr!==Yt.depth_func&&(He.depthFunc(pr),Yt.depth_func=pr),gr=Gr[0],Zr=Gr[1],(gr!==Br[0]||Zr!==Br[1])&&(He.depthRange(gr,Zr),Br[0]=gr,Br[1]=Zr),Ti=It.depth_mask,Ti!==Yt.depth_mask&&(He.depthMask(Ti),Yt.depth_mask=Ti),en=Er[0],ii=Er[1],Xi=Er[2],aa=Er[3],(en!==Rr[0]||ii!==Rr[1]||Xi!==Rr[2]||aa!==Rr[3])&&(He.colorMask(en,ii,Xi,aa),Rr[0]=en,Rr[1]=ii,Rr[2]=Xi,Rr[3]=aa),Mn=It.cull_enable,Mn!==Yt.cull_enable&&(Mn?He.enable(2884):He.disable(2884),Yt.cull_enable=Mn),Un=It.cull_face,Un!==Yt.cull_face&&(He.cullFace(Un),Yt.cull_face=Un),Ga=It.frontFace,Ga!==Yt.frontFace&&(He.frontFace(Ga),Yt.frontFace=Ga),ma=It.lineWidth,ma!==Yt.lineWidth&&(He.lineWidth(ma),Yt.lineWidth=ma),oa=It.polygonOffset_enable,oa!==Yt.polygonOffset_enable&&(oa?He.enable(32823):He.disable(32823),Yt.polygonOffset_enable=oa),ka=pi[0],so=pi[1],(ka!==Di[0]||so!==Di[1])&&(He.polygonOffset(ka,so),Di[0]=ka,Di[1]=so),Kr=It.sample_alpha,Kr!==Yt.sample_alpha&&(Kr?He.enable(32926):He.disable(32926),Yt.sample_alpha=Kr),Ia=It.sample_enable,Ia!==Yt.sample_enable&&(Ia?He.enable(32928):He.disable(32928),Yt.sample_enable=Ia),Yo=ni[0],fa=ni[1],(Yo!==$i[0]||fa!==$i[1])&&(He.sampleCoverage(Yo,fa),$i[0]=Yo,$i[1]=fa),kn=It.stencil_enable,kn!==Yt.stencil_enable&&(kn?He.enable(2960):He.disable(2960),Yt.stencil_enable=kn),Aa=It.stencil_mask,Aa!==Yt.stencil_mask&&(He.stencilMask(Aa),Yt.stencil_mask=Aa),ys=Qi[0],uo=Qi[1],ls=Qi[2],(ys!==si[0]||uo!==si[1]||ls!==si[2])&&(He.stencilFunc(ys,uo,ls),si[0]=ys,si[1]=uo,si[2]=ls),$a=Ai[0],fo=Ai[1],mn=Ai[2],ra=Ai[3],($a!==Ni[0]||fo!==Ni[1]||mn!==Ni[2]||ra!==Ni[3])&&(He.stencilOpSeparate($a,fo,mn,ra),Ni[0]=$a,Ni[1]=fo,Ni[2]=mn,Ni[3]=ra),wa=Rt[0],ws=Rt[1],Co=Rt[2],Po=Rt[3],(wa!==yt[0]||ws!==yt[1]||Co!==yt[2]||Po!==yt[3])&&(He.stencilOpSeparate(wa,ws,Co,Po),yt[0]=wa,yt[1]=ws,yt[2]=Co,yt[3]=Po)}He.blendColor(0,0,0,0),pe[0]=0,pe[1]=0,pe[2]=0,pe[3]=0,Tt?He.enable(3042):He.disable(3042),Yt.blend_enable=Tt,He.blendEquationSeparate(32774,32774),Pt[0]=32774,Pt[1]=32774,He.blendFuncSeparate(770,771,773,1),rr[0]=770,rr[1]=771,rr[2]=773,rr[3]=1,vt?He.enable(2929):He.disable(2929),Yt.depth_enable=vt,Ye?He.enable(3089):He.disable(3089),Yt.scissor_enable=Ye,Ii=Yt.profile,Ii&&(xn=performance.now(),r.count+=an),He.useProgram(f.program),bi=Fe.angle_instanced_arrays;var Wi,gn,Ps,Ha,Sn,ao,Ba,Ko;for(xe.setVAO(null),Wi=h.location,gn=Re[Wi],gn.buffer||He.enableVertexAttribArray(Wi),(gn.type!==5126||gn.size!==2||gn.buffer!==c||gn.normalized!==!1||gn.offset!==16||gn.stride!==24)&&(He.bindBuffer(34962,c.buffer),He.vertexAttribPointer(Wi,2,5126,!1,24,16),gn.type=5126,gn.size=2,gn.buffer=c,gn.normalized=!1,gn.offset=16,gn.stride=24),gn.divisor!==0&&(bi.vertexAttribDivisorANGLE(Wi,0),gn.divisor=0),Ps=_.location,Ha=Re[Ps],Ha.buffer||He.enableVertexAttribArray(Ps),(Ha.type!==5126||Ha.size!==2||Ha.buffer!==c||Ha.normalized!==!1||Ha.offset!==0||Ha.stride!==24)&&(He.bindBuffer(34962,c.buffer),He.vertexAttribPointer(Ps,2,5126,!1,24,0),Ha.type=5126,Ha.size=2,Ha.buffer=c,Ha.normalized=!1,Ha.offset=0,Ha.stride=24),Ha.divisor!==0&&(bi.vertexAttribDivisorANGLE(Ps,0),Ha.divisor=0),Sn=k.location,ao=Re[Sn],ao.buffer||He.enableVertexAttribArray(Sn),(ao.type!==5126||ao.size!==2||ao.buffer!==c||ao.normalized!==!1||ao.offset!==8||ao.stride!==24)&&(He.bindBuffer(34962,c.buffer),He.vertexAttribPointer(Sn,2,5126,!1,24,8),ao.type=5126,ao.size=2,ao.buffer=c,ao.normalized=!1,ao.offset=8,ao.stride=24),ao.divisor!==0&&(bi.vertexAttribDivisorANGLE(Sn,0),ao.divisor=0),Ba=cr.elements,Ba?He.bindBuffer(34963,Ba.buffer.buffer):xe.currentVAO&&(Ba=_r.getElements(xe.currentVAO.elements),Ba&&He.bindBuffer(34963,Ba.buffer.buffer)),Ko=cr.offset,Xr=0;Xr0?ti.constant[0]:0,qs=ti.constant.length>1?ti.constant[1]:0,Ns=ti.constant.length>2?ti.constant[2]:0,Oa=ti.constant.length>3?ti.constant[3]:0)):(ge(ti.buffer)?ha=yr.createStream(34962,ti.buffer):ha=yr.getBuffer(ti.buffer),_n="type"in ti?ki[ti.type]:ha.dtype,Ya=!!ti.normalized,Vs=ti.size|0,Vn=ti.offset|0,wo=ti.stride|0,Ra=ti.divisor|0)),Xn=p.location,un=Re[Xn],Go===1?(un.buffer||He.enableVertexAttribArray(Xn),$n=Vs||4,(un.type!==_n||un.size!==$n||un.buffer!==ha||un.normalized!==Ya||un.offset!==Vn||un.stride!==wo)&&(He.bindBuffer(34962,ha.buffer),He.vertexAttribPointer(Xn,$n,_n,Ya,wo,Vn),un.type=_n,un.size=$n,un.buffer=ha,un.normalized=Ya,un.offset=Vn,un.stride=wo),un.divisor!==Ra&&(bi.vertexAttribDivisorANGLE(Xn,Ra),un.divisor=Ra)):(un.buffer&&(He.disableVertexAttribArray(Xn),un.buffer=null),(un.x!==Ys||un.y!==qs||un.z!==Ns||un.w!==Oa)&&(He.vertexAttrib4f(Xn,Ys,qs,Ns,Oa),un.x=Ys,un.y=qs,un.z=Ns,un.w=Oa)),Ka=b.call(this,it,ct,Xr),oi.offset=Ka,qn=!1,Eo=1,Ja=0,lo=0,eo=0,sa=0,es=null,Na=0,rn=!1,Pa=5126,to=0,yo=0,Jo=0,ge(oi)?(qn=!0,es=yr.createStream(34962,oi),Pa=es.dtype):(es=yr.getBuffer(oi),es?Pa=es.dtype:"constant"in oi?(Eo=2,typeof oi.constant=="number"?(Ja=oi.constant,lo=eo=sa=0):(Ja=oi.constant.length>0?oi.constant[0]:0,lo=oi.constant.length>1?oi.constant[1]:0,eo=oi.constant.length>2?oi.constant[2]:0,sa=oi.constant.length>3?oi.constant[3]:0)):(ge(oi.buffer)?es=yr.createStream(34962,oi.buffer):es=yr.getBuffer(oi.buffer),Pa="type"in oi?ki[oi.type]:es.dtype,rn=!!oi.normalized,Na=oi.size|0,to=oi.offset|0,yo=oi.stride|0,Jo=oi.divisor|0)),To=v.location,Dn=Re[To],Eo===1?(Dn.buffer||He.enableVertexAttribArray(To),_a=Na||4,(Dn.type!==Pa||Dn.size!==_a||Dn.buffer!==es||Dn.normalized!==rn||Dn.offset!==to||Dn.stride!==yo)&&(He.bindBuffer(34962,es.buffer),He.vertexAttribPointer(To,_a,Pa,rn,yo,to),Dn.type=Pa,Dn.size=_a,Dn.buffer=es,Dn.normalized=rn,Dn.offset=to,Dn.stride=yo),Dn.divisor!==Jo&&(bi.vertexAttribDivisorANGLE(To,Jo),Dn.divisor=Jo)):(Dn.buffer&&(He.disableVertexAttribArray(To),Dn.buffer=null),(Dn.x!==Ja||Dn.y!==lo||Dn.z!==eo||Dn.w!==sa)&&(He.vertexAttrib4f(To,Ja,lo,eo,sa),Dn.x=Ja,Dn.y=lo,Dn.z=eo,Dn.w=sa)),Ws=E.call(this,it,ct,Xr),tn.offset=Ws,Ca=!1,Es=1,As=0,Ho=0,Wa=0,Ao=0,ts=null,Wo=0,qa=!1,ln=5126,Bo=0,ko=0,oo=0,ge(tn)?(Ca=!0,ts=yr.createStream(34962,tn),ln=ts.dtype):(ts=yr.getBuffer(tn),ts?ln=ts.dtype:"constant"in tn?(Es=2,typeof tn.constant=="number"?(As=tn.constant,Ho=Wa=Ao=0):(As=tn.constant.length>0?tn.constant[0]:0,Ho=tn.constant.length>1?tn.constant[1]:0,Wa=tn.constant.length>2?tn.constant[2]:0,Ao=tn.constant.length>3?tn.constant[3]:0)):(ge(tn.buffer)?ts=yr.createStream(34962,tn.buffer):ts=yr.getBuffer(tn.buffer),ln="type"in tn?ki[tn.type]:ts.dtype,qa=!!tn.normalized,Wo=tn.size|0,Bo=tn.offset|0,ko=tn.stride|0,oo=tn.divisor|0)),za=A.location,ea=Re[za],Es===1?(ea.buffer||He.enableVertexAttribArray(za),rs=Wo||2,(ea.type!==ln||ea.size!==rs||ea.buffer!==ts||ea.normalized!==qa||ea.offset!==Bo||ea.stride!==ko)&&(He.bindBuffer(34962,ts.buffer),He.vertexAttribPointer(za,rs,ln,qa,ko,Bo),ea.type=ln,ea.size=rs,ea.buffer=ts,ea.normalized=qa,ea.offset=Bo,ea.stride=ko),ea.divisor!==oo&&(bi.vertexAttribDivisorANGLE(za,oo),ea.divisor=oo)):(ea.buffer&&(He.disableVertexAttribArray(za),ea.buffer=null),(ea.x!==As||ea.y!==Ho||ea.z!==Wa||ea.w!==Ao)&&(He.vertexAttrib4f(za,As,Ho,Wa,Ao),ea.x=As,ea.y=Ho,ea.z=Wa,ea.w=Ao)),$s=L.call(this,it,ct,Xr),Yr.offset=$s,us=!1,Ds=1,fl=0,as=0,Ma=0,Qs=0,ho=null,gs=0,Vo=!1,Do=5126,Lo=0,xs=0,ks=0,ge(Yr)?(us=!0,ho=yr.createStream(34962,Yr),Do=ho.dtype):(ho=yr.getBuffer(Yr),ho?Do=ho.dtype:"constant"in Yr?(Ds=2,typeof Yr.constant=="number"?(fl=Yr.constant,as=Ma=Qs=0):(fl=Yr.constant.length>0?Yr.constant[0]:0,as=Yr.constant.length>1?Yr.constant[1]:0,Ma=Yr.constant.length>2?Yr.constant[2]:0,Qs=Yr.constant.length>3?Yr.constant[3]:0)):(ge(Yr.buffer)?ho=yr.createStream(34962,Yr.buffer):ho=yr.getBuffer(Yr.buffer),Do="type"in Yr?ki[Yr.type]:ho.dtype,Vo=!!Yr.normalized,gs=Yr.size|0,Lo=Yr.offset|0,xs=Yr.stride|0,ks=Yr.divisor|0)),Ea=x.location,Jn=Re[Ea],Ds===1?(Jn.buffer||He.enableVertexAttribArray(Ea),Oo=gs||2,(Jn.type!==Do||Jn.size!==Oo||Jn.buffer!==ho||Jn.normalized!==Vo||Jn.offset!==Lo||Jn.stride!==xs)&&(He.bindBuffer(34962,ho.buffer),He.vertexAttribPointer(Ea,Oo,Do,Vo,xs,Lo),Jn.type=Do,Jn.size=Oo,Jn.buffer=ho,Jn.normalized=Vo,Jn.offset=Lo,Jn.stride=xs),Jn.divisor!==ks&&(bi.vertexAttribDivisorANGLE(Ea,ks),Jn.divisor=ks)):(Jn.buffer&&(He.disableVertexAttribArray(Ea),Jn.buffer=null),(Jn.x!==fl||Jn.y!==as||Jn.z!==Ma||Jn.w!==Qs)&&(He.vertexAttrib4f(Ea,fl,as,Ma,Qs),Jn.x=fl,Jn.y=as,Jn.z=Ma,Jn.w=Qs)),rl=ct.capSize,(!Xr||Gs!==rl)&&(Gs=rl,He.uniform1f(C.location,rl)),bs=ct.lineWidth,(!Xr||zs!==bs)&&(zs=bs,He.uniform1f(M.location,bs)),$o=ct.opacity,(!Xr||Ta!==$o)&&(Ta=$o,He.uniform1f(m.location,$o)),os=ct.scale,_l=os[0],po=os[1],(!Xr||Ss!==_l||go!==po)&&(Ss=_l,go=po,He.uniform2f(P.location,_l,po)),ss=ct.scaleFract,qo=ss[0],io=ss[1],(!Xr||zo!==qo||Io!==io)&&(zo=qo,Io=io,He.uniform2f(T.location,qo,io)),Da=ct.translate,vs=Da[0],cl=Da[1],(!Xr||fs!==vs||el!==cl)&&(fs=vs,el=cl,He.uniform2f(B.location,vs,cl)),Hs=ct.translateFract,Ro=Hs[0],Fs=Hs[1],(!Xr||tl!==Ro||hl!==Fs)&&(tl=Ro,hl=Fs,He.uniform2f(F.location,Ro,Fs)),Fa=G.call(this,it,ct,Xr),Ms=Fa[0],Rs=Fa[1],Bs=Fa[2],Vt=Fa[3],(!Xr||jo!==Ms||Is!==Rs||At!==Bs||wr!==Vt)&&(jo=Ms,Is=Rs,At=Bs,wr=Vt,He.uniform4f(U.location,Ms,Rs,Bs,Vt)),mr=ct.count,mr>0?Ba?bi.drawElementsInstancedANGLE(4,36,Ba.type,Ko<<(Ba.type-5121>>1),mr):bi.drawArraysInstancedANGLE(4,Ko,36,mr):mr<0&&(Ba?He.drawElements(4,36,Ba.type,Ko<<(Ba.type-5121>>1)):He.drawArrays(4,Ko,36)),it.viewportWidth=da,it.viewportHeight=la,jn&&yr.destroyStream(ha),qn&&yr.destroyStream(es),Ca&&yr.destroyStream(ts),us&&yr.destroyStream(ho)}Yt.dirty=!0,xe.setVAO(null),Ii&&(r.cpuTime+=performance.now()-xn)}}}});var F8=Ae((Zxr,r7e)=>{r7e.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et){"use strict";var Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr;return Te=t.gl,ot=t.context,Tt=t.strings,vt=t.next,Ye=t.current,He=t.draw,it=t.elements,et=t.buffer,It=t.shader,Yt=t.attributes,cr=t.vao,_r=t.uniforms,yr=t.framebuffer,Ut=t.extensions,Re=t.timer,xe=t.isBufferArgs,Oe=vt.blend_color,Ie=Ye.blend_color,Fe=vt.blend_equation,ft=Ye.blend_equation,ge=vt.blend_func,fe=Ye.blend_func,pe=vt.depth_range,dt=Ye.depth_range,Pt=vt.colorMask,zt=Ye.colorMask,rr=vt.polygonOffset_offset,Gr=Ye.polygonOffset_offset,Br=vt.sample_coverage,Er=Ye.sample_coverage,Rr=vt.stencil_func,pi=Ye.stencil_func,Di=vt.stencil_opFront,ni=Ye.stencil_opFront,$i=vt.stencil_opBack,Qi=Ye.stencil_opBack,si=vt.scissor_box,Ai=Ye.scissor_box,Ni=vt.viewport,Rt=Ye.viewport,yt={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Gt={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Wt={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},xr={add:32774,subtract:32778,"reverse subtract":32779},Lr={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Nr={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Or={cw:2304,ccw:2305},Hr={},Hr.offset=4,Hr.stride=8,jr={},jr.offset=0,jr.stride=8,{draw:function(gi){var ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo;if(ki=Ut.angle_instanced_arrays,Vi=yr.next,Vi!==yr.cur&&(Vi?Te.bindFramebuffer(36160,Vi.framebuffer):Te.bindFramebuffer(36160,null),yr.cur=Vi),Ye.dirty){var za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs;za=vt.dither,za!==Ye.dither&&(za?Te.enable(3024):Te.disable(3024),Ye.dither=za),ea=Fe[0],rs=Fe[1],(ea!==ft[0]||rs!==ft[1])&&(Te.blendEquationSeparate(ea,rs),ft[0]=ea,ft[1]=rs),$s=vt.depth_func,$s!==Ye.depth_func&&(Te.depthFunc($s),Ye.depth_func=$s),us=pe[0],Ds=pe[1],(us!==dt[0]||Ds!==dt[1])&&(Te.depthRange(us,Ds),dt[0]=us,dt[1]=Ds),fl=vt.depth_mask,fl!==Ye.depth_mask&&(Te.depthMask(fl),Ye.depth_mask=fl),as=Pt[0],Ma=Pt[1],Qs=Pt[2],ho=Pt[3],(as!==zt[0]||Ma!==zt[1]||Qs!==zt[2]||ho!==zt[3])&&(Te.colorMask(as,Ma,Qs,ho),zt[0]=as,zt[1]=Ma,zt[2]=Qs,zt[3]=ho),gs=vt.cull_enable,gs!==Ye.cull_enable&&(gs?Te.enable(2884):Te.disable(2884),Ye.cull_enable=gs),Vo=vt.cull_face,Vo!==Ye.cull_face&&(Te.cullFace(Vo),Ye.cull_face=Vo),Do=vt.frontFace,Do!==Ye.frontFace&&(Te.frontFace(Do),Ye.frontFace=Do),Lo=vt.lineWidth,Lo!==Ye.lineWidth&&(Te.lineWidth(Lo),Ye.lineWidth=Lo),xs=vt.polygonOffset_enable,xs!==Ye.polygonOffset_enable&&(xs?Te.enable(32823):Te.disable(32823),Ye.polygonOffset_enable=xs),ks=rr[0],Ea=rr[1],(ks!==Gr[0]||Ea!==Gr[1])&&(Te.polygonOffset(ks,Ea),Gr[0]=ks,Gr[1]=Ea),Jn=vt.sample_alpha,Jn!==Ye.sample_alpha&&(Jn?Te.enable(32926):Te.disable(32926),Ye.sample_alpha=Jn),Oo=vt.sample_enable,Oo!==Ye.sample_enable&&(Oo?Te.enable(32928):Te.disable(32928),Ye.sample_enable=Oo),rl=Br[0],Gs=Br[1],(rl!==Er[0]||Gs!==Er[1])&&(Te.sampleCoverage(rl,Gs),Er[0]=rl,Er[1]=Gs),bs=vt.stencil_mask,bs!==Ye.stencil_mask&&(Te.stencilMask(bs),Ye.stencil_mask=bs),zs=Rr[0],$o=Rr[1],Ta=Rr[2],(zs!==pi[0]||$o!==pi[1]||Ta!==pi[2])&&(Te.stencilFunc(zs,$o,Ta),pi[0]=zs,pi[1]=$o,pi[2]=Ta),os=Di[0],_l=Di[1],Ss=Di[2],po=Di[3],(os!==ni[0]||_l!==ni[1]||Ss!==ni[2]||po!==ni[3])&&(Te.stencilOpSeparate(os,_l,Ss,po),ni[0]=os,ni[1]=_l,ni[2]=Ss,ni[3]=po),go=$i[0],ss=$i[1],qo=$i[2],zo=$i[3],(go!==Qi[0]||ss!==Qi[1]||qo!==Qi[2]||zo!==Qi[3])&&(Te.stencilOpSeparate(go,ss,qo,zo),Qi[0]=go,Qi[1]=ss,Qi[2]=qo,Qi[3]=zo),io=vt.scissor_enable,io!==Ye.scissor_enable&&(io?Te.enable(3089):Te.disable(3089),Ye.scissor_enable=io),Io=si[0],Da=si[1],vs=si[2],fs=si[3],(Io!==Ai[0]||Da!==Ai[1]||vs!==Ai[2]||fs!==Ai[3])&&(Te.scissor(Io,Da,vs,fs),Ai[0]=Io,Ai[1]=Da,Ai[2]=vs,Ai[3]=fs)}ti=this.viewport,tn=ti.x|0,Yr=ti.y|0,oi="width"in ti?ti.width|0:ot.framebufferWidth-tn,Fi="height"in ti?ti.height|0:ot.framebufferHeight-Yr,an=ot.viewportWidth,ot.viewportWidth=oi,nn=ot.viewportHeight,ot.viewportHeight=Fi,Te.viewport(tn,Yr,oi,Fi),Rt[0]=tn,Rt[1]=Yr,Rt[2]=oi,Rt[3]=Fi,Te.blendColor(0,0,0,1),Ie[0]=0,Ie[1]=0,Ie[2]=0,Ie[3]=1,n?Te.enable(3042):Te.disable(3042),Ye.blend_enable=n,Te.blendFuncSeparate(770,771,773,1),fe[0]=770,fe[1]=771,fe[2]=773,fe[3]=1,i?Te.enable(2929):Te.disable(2929),Ye.depth_enable=i,a?Te.enable(2960):Te.disable(2960),Ye.stencil_enable=a,Ri=Ye.profile,Ri&&(Ii=performance.now(),r.count++),Te.useProgram(o.program),xn=Ut.angle_instanced_arrays,cr.setVAO(null),bi=this.charBuffer,Xr=!1,ct=1,tr=0,pr=0,gr=0,Zr=0,Ti=null,en=0,ii=!1,Xi=5126,aa=0,Mn=0,Un=0,xe(bi)?(Xr=!0,Ti=et.createStream(34962,bi),Xi=Ti.dtype):(Ti=et.getBuffer(bi),Ti?Xi=Ti.dtype:"constant"in bi?(ct=2,typeof bi.constant=="number"?(tr=bi.constant,pr=gr=Zr=0):(tr=bi.constant.length>0?bi.constant[0]:0,pr=bi.constant.length>1?bi.constant[1]:0,gr=bi.constant.length>2?bi.constant[2]:0,Zr=bi.constant.length>3?bi.constant[3]:0)):(xe(bi.buffer)?Ti=et.createStream(34962,bi.buffer):Ti=et.getBuffer(bi.buffer),Xi="type"in bi?Nr[bi.type]:Ti.dtype,ii=!!bi.normalized,en=bi.size|0,aa=bi.offset|0,Mn=bi.stride|0,Un=bi.divisor|0)),Ga=s.location,ma=Yt[Ga],ct===1?(ma.buffer||Te.enableVertexAttribArray(Ga),oa=en||1,(ma.type!==Xi||ma.size!==oa||ma.buffer!==Ti||ma.normalized!==ii||ma.offset!==aa||ma.stride!==Mn)&&(Te.bindBuffer(34962,Ti.buffer),Te.vertexAttribPointer(Ga,oa,Xi,ii,Mn,aa),ma.type=Xi,ma.size=oa,ma.buffer=Ti,ma.normalized=ii,ma.offset=aa,ma.stride=Mn),ma.divisor!==Un&&(xn.vertexAttribDivisorANGLE(Ga,Un),ma.divisor=Un)):(ma.buffer&&(Te.disableVertexAttribArray(Ga),ma.buffer=null),(ma.x!==tr||ma.y!==pr||ma.z!==gr||ma.w!==Zr)&&(Te.vertexAttrib4f(Ga,tr,pr,gr,Zr),ma.x=tr,ma.y=pr,ma.z=gr,ma.w=Zr)),ka=this.sizeBuffer,Hr.buffer=ka,so=!1,Kr=1,Ia=0,Yo=0,fa=0,kn=0,Aa=null,ys=0,uo=!1,ls=5126,$a=0,fo=0,mn=0,xe(Hr)?(so=!0,Aa=et.createStream(34962,Hr),ls=Aa.dtype):(Aa=et.getBuffer(Hr),Aa?ls=Aa.dtype:"constant"in Hr?(Kr=2,typeof Hr.constant=="number"?(Ia=Hr.constant,Yo=fa=kn=0):(Ia=Hr.constant.length>0?Hr.constant[0]:0,Yo=Hr.constant.length>1?Hr.constant[1]:0,fa=Hr.constant.length>2?Hr.constant[2]:0,kn=Hr.constant.length>3?Hr.constant[3]:0)):(xe(Hr.buffer)?Aa=et.createStream(34962,Hr.buffer):Aa=et.getBuffer(Hr.buffer),ls="type"in Hr?Nr[Hr.type]:Aa.dtype,uo=!!Hr.normalized,ys=Hr.size|0,$a=Hr.offset|0,fo=Hr.stride|0,mn=Hr.divisor|0)),ra=u.location,wa=Yt[ra],Kr===1?(wa.buffer||Te.enableVertexAttribArray(ra),ws=ys||1,(wa.type!==ls||wa.size!==ws||wa.buffer!==Aa||wa.normalized!==uo||wa.offset!==$a||wa.stride!==fo)&&(Te.bindBuffer(34962,Aa.buffer),Te.vertexAttribPointer(ra,ws,ls,uo,fo,$a),wa.type=ls,wa.size=ws,wa.buffer=Aa,wa.normalized=uo,wa.offset=$a,wa.stride=fo),wa.divisor!==mn&&(xn.vertexAttribDivisorANGLE(ra,mn),wa.divisor=mn)):(wa.buffer&&(Te.disableVertexAttribArray(ra),wa.buffer=null),(wa.x!==Ia||wa.y!==Yo||wa.z!==fa||wa.w!==kn)&&(Te.vertexAttrib4f(ra,Ia,Yo,fa,kn),wa.x=Ia,wa.y=Yo,wa.z=fa,wa.w=kn)),Co=this.position,Po=!1,Wi=1,gn=0,Ps=0,Ha=0,Sn=0,ao=null,Ba=0,Ko=!1,Qo=5126,Hi=0,Sa=0,Qa=0,xe(Co)?(Po=!0,ao=et.createStream(34962,Co),Qo=ao.dtype):(ao=et.getBuffer(Co),ao?Qo=ao.dtype:"constant"in Co?(Wi=2,typeof Co.constant=="number"?(gn=Co.constant,Ps=Ha=Sn=0):(gn=Co.constant.length>0?Co.constant[0]:0,Ps=Co.constant.length>1?Co.constant[1]:0,Ha=Co.constant.length>2?Co.constant[2]:0,Sn=Co.constant.length>3?Co.constant[3]:0)):(xe(Co.buffer)?ao=et.createStream(34962,Co.buffer):ao=et.getBuffer(Co.buffer),Qo="type"in Co?Nr[Co.type]:ao.dtype,Ko=!!Co.normalized,Ba=Co.size|0,Hi=Co.offset|0,Sa=Co.stride|0,Qa=Co.divisor|0)),vn=l.location,da=Yt[vn],Wi===1?(da.buffer||Te.enableVertexAttribArray(vn),la=Ba||2,(da.type!==Qo||da.size!==la||da.buffer!==ao||da.normalized!==Ko||da.offset!==Hi||da.stride!==Sa)&&(Te.bindBuffer(34962,ao.buffer),Te.vertexAttribPointer(vn,la,Qo,Ko,Sa,Hi),da.type=Qo,da.size=la,da.buffer=ao,da.normalized=Ko,da.offset=Hi,da.stride=Sa),da.divisor!==Qa&&(xn.vertexAttribDivisorANGLE(vn,Qa),da.divisor=Qa)):(da.buffer&&(Te.disableVertexAttribArray(vn),da.buffer=null),(da.x!==gn||da.y!==Ps||da.z!==Ha||da.w!==Sn)&&(Te.vertexAttrib4f(vn,gn,Ps,Ha,Sn),da.x=gn,da.y=Ps,da.z=Ha,da.w=Sn)),vo=this.sizeBuffer,jr.buffer=vo,Ts=!1,ps=1,co=0,mo=0,No=0,jn=0,Go=null,Ys=0,qs=!1,Ns=5126,Oa=0,ha=0,Vs=0,xe(jr)?(Ts=!0,Go=et.createStream(34962,jr),Ns=Go.dtype):(Go=et.getBuffer(jr),Go?Ns=Go.dtype:"constant"in jr?(ps=2,typeof jr.constant=="number"?(co=jr.constant,mo=No=jn=0):(co=jr.constant.length>0?jr.constant[0]:0,mo=jr.constant.length>1?jr.constant[1]:0,No=jr.constant.length>2?jr.constant[2]:0,jn=jr.constant.length>3?jr.constant[3]:0)):(xe(jr.buffer)?Go=et.createStream(34962,jr.buffer):Go=et.getBuffer(jr.buffer),Ns="type"in jr?Nr[jr.type]:Go.dtype,qs=!!jr.normalized,Ys=jr.size|0,Oa=jr.offset|0,ha=jr.stride|0,Vs=jr.divisor|0)),Ya=f.location,_n=Yt[Ya],ps===1?(_n.buffer||Te.enableVertexAttribArray(Ya),Vn=Ys||1,(_n.type!==Ns||_n.size!==Vn||_n.buffer!==Go||_n.normalized!==qs||_n.offset!==Oa||_n.stride!==ha)&&(Te.bindBuffer(34962,Go.buffer),Te.vertexAttribPointer(Ya,Vn,Ns,qs,ha,Oa),_n.type=Ns,_n.size=Vn,_n.buffer=Go,_n.normalized=qs,_n.offset=Oa,_n.stride=ha),_n.divisor!==Vs&&(xn.vertexAttribDivisorANGLE(Ya,Vs),_n.divisor=Vs)):(_n.buffer&&(Te.disableVertexAttribArray(Ya),_n.buffer=null),(_n.x!==co||_n.y!==mo||_n.z!==No||_n.w!==jn)&&(Te.vertexAttrib4f(Ya,co,mo,No,jn),_n.x=co,_n.y=mo,_n.z=No,_n.w=jn)),wo=gi.align,Te.uniform1f(c.location,wo),Ra=d.call(this,ot,gi,0),Ra&&Ra._reglType==="framebuffer"&&(Ra=Ra.color[0]),Xn=Ra._texture,Te.uniform1i(h.location,Xn.bind()),un=_.call(this,ot,gi,0),$n=un[0],Ka=un[1],Te.uniform2f(p.location,$n,Ka),qn=v.call(this,ot,gi,0),Eo=qn[0],Ja=qn[1],Te.uniform2f(b.location,Eo,Ja),lo=gi.baseline,Te.uniform1f(k.location,lo),eo=A.call(this,ot,gi,0),Te.uniform1f(E.location,eo),sa=gi.color,es=sa[0],Na=sa[1],rn=sa[2],Pa=sa[3],Te.uniform4f(L.location,es,Na,rn,Pa),to=C.call(this,ot,gi,0),Te.uniform1f(x.location,to),yo=gi.opacity,Te.uniform1f(M.location,yo),Jo=gi.positionOffset,To=Jo[0],Dn=Jo[1],Te.uniform2f(m.location,To,Dn),_a=this.scale,Ws=_a[0],Ca=_a[1],Te.uniform2f(P.location,Ws,Ca),Es=this.translate,As=Es[0],Ho=Es[1],Te.uniform2f(T.location,As,Ho),Wa=this.viewportArray,Ao=Wa[0],ts=Wa[1],Wo=Wa[2],qa=Wa[3],Te.uniform4f(B.location,Ao,ts,Wo,qa),ln=He.elements,ln?Te.bindBuffer(34963,ln.buffer.buffer):cr.currentVAO&&(ln=it.getElements(cr.currentVAO.elements),ln&&Te.bindBuffer(34963,ln.buffer.buffer)),Bo=gi.offset,ko=gi.count,ko&&(oo=He.instances,oo>0?ln?xn.drawElementsInstancedANGLE(0,ko,ln.type,Bo<<(ln.type-5121>>1),oo):xn.drawArraysInstancedANGLE(0,Bo,ko,oo):oo<0&&(ln?Te.drawElements(0,ko,ln.type,Bo<<(ln.type-5121>>1)):Te.drawArrays(0,Bo,ko)),Ye.dirty=!0,cr.setVAO(null),ot.viewportWidth=an,ot.viewportHeight=nn,Ri&&(r.cpuTime+=performance.now()-Ii),Xr&&et.destroyStream(Ti),so&&et.destroyStream(Aa),Po&&et.destroyStream(ao),Ts&&et.destroyStream(Go),Xn.unbind())},scope:function(gi,ki,Vi){var ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa;ti=this.viewport,tn=ti.x|0,Yr=ti.y|0,oi="width"in ti?ti.width|0:ot.framebufferWidth-tn,Fi="height"in ti?ti.height|0:ot.framebufferHeight-Yr,an=ot.viewportWidth,ot.viewportWidth=oi,nn=ot.viewportHeight,ot.viewportHeight=Fi,Ri=Ni[0],Ni[0]=tn,Ii=Ni[1],Ni[1]=Yr,xn=Ni[2],Ni[2]=oi,bi=Ni[3],Ni[3]=Fi,Xr=Oe[0],Oe[0]=F,ct=Oe[1],Oe[1]=U,tr=Oe[2],Oe[2]=G,pr=Oe[3],Oe[3]=j,gr=vt.blend_enable,vt.blend_enable=W,Zr=ge[0],ge[0]=N,Ti=ge[1],ge[1]=H,en=ge[2],ge[2]=re,ii=ge[3],ge[3]=ae,Xi=vt.depth_enable,vt.depth_enable=be,aa=vt.stencil_enable,vt.stencil_enable=ze,Mn=Ye.profile,Mn&&(Un=performance.now(),r.count++),Ga=gi.offset,ma=He.offset,He.offset=Ga,oa=gi.count,ka=He.count,He.count=oa,so=He.primitive,He.primitive=Ce,Kr=v.call(this,ot,gi,Vi),Ia=_r[de],_r[de]=Kr,Yo=_.call(this,ot,gi,Vi),fa=_r[te],_r[te]=Yo,kn=d.call(this,ot,gi,Vi),Aa=_r[ke],_r[ke]=kn,ys=A.call(this,ot,gi,Vi),uo=_r[Ee],_r[Ee]=ys,ls=C.call(this,ot,gi,Vi),$a=_r[Me],_r[Me]=ls,fo=gi.color,mn=_r[Ue],_r[Ue]=fo,ra=gi.opacity,wa=_r[De],_r[De]=ra,ws=this.viewportArray,Co=_r[ye],_r[ye]=ws,Po=this.scale,Wi=_r[qe],_r[qe]=Po,gn=gi.align,Ps=_r[ce],_r[ce]=gn,Ha=gi.baseline,Sn=_r[Je],_r[Je]=Ha,ao=this.translate,Ba=_r[nt],_r[nt]=ao,Ko=gi.positionOffset,Qo=_r[gt],_r[gt]=Ko,Hi=this.charBuffer,Sa=!1,Qa=1,vn=0,da=0,la=0,vo=0,Ts=null,ps=0,co=!1,mo=5126,No=0,jn=0,Go=0,xe(Hi)?(Sa=!0,Ts=et.createStream(34962,Hi),mo=Ts.dtype):(Ts=et.getBuffer(Hi),Ts?mo=Ts.dtype:"constant"in Hi?(Qa=2,typeof Hi.constant=="number"?(vn=Hi.constant,da=la=vo=0):(vn=Hi.constant.length>0?Hi.constant[0]:0,da=Hi.constant.length>1?Hi.constant[1]:0,la=Hi.constant.length>2?Hi.constant[2]:0,vo=Hi.constant.length>3?Hi.constant[3]:0)):(xe(Hi.buffer)?Ts=et.createStream(34962,Hi.buffer):Ts=et.getBuffer(Hi.buffer),mo="type"in Hi?Nr[Hi.type]:Ts.dtype,co=!!Hi.normalized,ps=Hi.size|0,No=Hi.offset|0,jn=Hi.stride|0,Go=Hi.divisor|0)),Ys=Nt.state,Nt.state=Qa,qs=Nt.x,Nt.x=vn,Ns=Nt.y,Nt.y=da,Oa=Nt.z,Nt.z=la,ha=Nt.w,Nt.w=vo,Vs=Nt.buffer,Nt.buffer=Ts,Ya=Nt.size,Nt.size=ps,_n=Nt.normalized,Nt.normalized=co,Vn=Nt.type,Nt.type=mo,wo=Nt.offset,Nt.offset=No,Ra=Nt.stride,Nt.stride=jn,Xn=Nt.divisor,Nt.divisor=Go,un=this.position,$n=!1,Ka=1,qn=0,Eo=0,Ja=0,lo=0,eo=null,sa=0,es=!1,Na=5126,rn=0,Pa=0,to=0,xe(un)?($n=!0,eo=et.createStream(34962,un),Na=eo.dtype):(eo=et.getBuffer(un),eo?Na=eo.dtype:"constant"in un?(Ka=2,typeof un.constant=="number"?(qn=un.constant,Eo=Ja=lo=0):(qn=un.constant.length>0?un.constant[0]:0,Eo=un.constant.length>1?un.constant[1]:0,Ja=un.constant.length>2?un.constant[2]:0,lo=un.constant.length>3?un.constant[3]:0)):(xe(un.buffer)?eo=et.createStream(34962,un.buffer):eo=et.getBuffer(un.buffer),Na="type"in un?Nr[un.type]:eo.dtype,es=!!un.normalized,sa=un.size|0,rn=un.offset|0,Pa=un.stride|0,to=un.divisor|0)),yo=at.state,at.state=Ka,Jo=at.x,at.x=qn,To=at.y,at.y=Eo,Dn=at.z,at.z=Ja,_a=at.w,at.w=lo,Ws=at.buffer,at.buffer=eo,Ca=at.size,at.size=sa,Es=at.normalized,at.normalized=es,As=at.type,at.type=Na,Ho=at.offset,at.offset=rn,Wa=at.stride,at.stride=Pa,Ao=at.divisor,at.divisor=to,ts=this.sizeBuffer,Hr.buffer=ts,Wo=!1,qa=1,ln=0,Bo=0,ko=0,oo=0,za=null,ea=0,rs=!1,$s=5126,us=0,Ds=0,fl=0,xe(Hr)?(Wo=!0,za=et.createStream(34962,Hr),$s=za.dtype):(za=et.getBuffer(Hr),za?$s=za.dtype:"constant"in Hr?(qa=2,typeof Hr.constant=="number"?(ln=Hr.constant,Bo=ko=oo=0):(ln=Hr.constant.length>0?Hr.constant[0]:0,Bo=Hr.constant.length>1?Hr.constant[1]:0,ko=Hr.constant.length>2?Hr.constant[2]:0,oo=Hr.constant.length>3?Hr.constant[3]:0)):(xe(Hr.buffer)?za=et.createStream(34962,Hr.buffer):za=et.getBuffer(Hr.buffer),$s="type"in Hr?Nr[Hr.type]:za.dtype,rs=!!Hr.normalized,ea=Hr.size|0,us=Hr.offset|0,Ds=Hr.stride|0,fl=Hr.divisor|0)),as=Ke.state,Ke.state=qa,Ma=Ke.x,Ke.x=ln,Qs=Ke.y,Ke.y=Bo,ho=Ke.z,Ke.z=ko,gs=Ke.w,Ke.w=oo,Vo=Ke.buffer,Ke.buffer=za,Do=Ke.size,Ke.size=ea,Lo=Ke.normalized,Ke.normalized=rs,xs=Ke.type,Ke.type=$s,ks=Ke.offset,Ke.offset=us,Ea=Ke.stride,Ke.stride=Ds,Jn=Ke.divisor,Ke.divisor=fl,Oo=this.sizeBuffer,jr.buffer=Oo,rl=!1,Gs=1,bs=0,zs=0,$o=0,Ta=0,os=null,_l=0,Ss=!1,po=5126,go=0,ss=0,qo=0,xe(jr)?(rl=!0,os=et.createStream(34962,jr),po=os.dtype):(os=et.getBuffer(jr),os?po=os.dtype:"constant"in jr?(Gs=2,typeof jr.constant=="number"?(bs=jr.constant,zs=$o=Ta=0):(bs=jr.constant.length>0?jr.constant[0]:0,zs=jr.constant.length>1?jr.constant[1]:0,$o=jr.constant.length>2?jr.constant[2]:0,Ta=jr.constant.length>3?jr.constant[3]:0)):(xe(jr.buffer)?os=et.createStream(34962,jr.buffer):os=et.getBuffer(jr.buffer),po="type"in jr?Nr[jr.type]:os.dtype,Ss=!!jr.normalized,_l=jr.size|0,go=jr.offset|0,ss=jr.stride|0,qo=jr.divisor|0)),zo=Ct.state,Ct.state=Gs,io=Ct.x,Ct.x=bs,Io=Ct.y,Ct.y=zs,Da=Ct.z,Ct.z=$o,vs=Ct.w,Ct.w=Ta,fs=Ct.buffer,Ct.buffer=os,cl=Ct.size,Ct.size=_l,el=Ct.normalized,Ct.normalized=Ss,Hs=Ct.type,Ct.type=po,Ro=Ct.offset,Ct.offset=go,tl=Ct.stride,Ct.stride=ss,Fs=Ct.divisor,Ct.divisor=qo,hl=It.vert,It.vert=wt,Fa=It.frag,It.frag=St,Ye.dirty=!0,ki(ot,gi,Vi),ot.viewportWidth=an,ot.viewportHeight=nn,Ni[0]=Ri,Ni[1]=Ii,Ni[2]=xn,Ni[3]=bi,Oe[0]=Xr,Oe[1]=ct,Oe[2]=tr,Oe[3]=pr,vt.blend_enable=gr,ge[0]=Zr,ge[1]=Ti,ge[2]=en,ge[3]=ii,vt.depth_enable=Xi,vt.stencil_enable=aa,Mn&&(r.cpuTime+=performance.now()-Un),He.offset=ma,He.count=ka,He.primitive=so,_r[de]=Ia,_r[te]=fa,_r[ke]=Aa,_r[Ee]=uo,_r[Me]=$a,_r[Ue]=mn,_r[De]=wa,_r[ye]=Co,_r[qe]=Wi,_r[ce]=Ps,_r[Je]=Sn,_r[nt]=Ba,_r[gt]=Qo,Sa&&et.destroyStream(Ts),Nt.state=Ys,Nt.x=qs,Nt.y=Ns,Nt.z=Oa,Nt.w=ha,Nt.buffer=Vs,Nt.size=Ya,Nt.normalized=_n,Nt.type=Vn,Nt.offset=wo,Nt.stride=Ra,Nt.divisor=Xn,$n&&et.destroyStream(eo),at.state=yo,at.x=Jo,at.y=To,at.z=Dn,at.w=_a,at.buffer=Ws,at.size=Ca,at.normalized=Es,at.type=As,at.offset=Ho,at.stride=Wa,at.divisor=Ao,Wo&&et.destroyStream(za),Ke.state=as,Ke.x=Ma,Ke.y=Qs,Ke.z=ho,Ke.w=gs,Ke.buffer=Vo,Ke.size=Do,Ke.normalized=Lo,Ke.type=xs,Ke.offset=ks,Ke.stride=Ea,Ke.divisor=Jn,rl&&et.destroyStream(os),Ct.state=zo,Ct.x=io,Ct.y=Io,Ct.z=Da,Ct.w=vs,Ct.buffer=fs,Ct.size=cl,Ct.normalized=el,Ct.type=Hs,Ct.offset=Ro,Ct.stride=tl,Ct.divisor=Fs,It.vert=hl,It.frag=Fa,Ye.dirty=!0},batch:function(gi,ki){var Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct;if(Vi=Ut.angle_instanced_arrays,ti=yr.next,ti!==yr.cur&&(ti?Te.bindFramebuffer(36160,ti.framebuffer):Te.bindFramebuffer(36160,null),yr.cur=ti),Ye.dirty){var tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so,Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao;tr=vt.dither,tr!==Ye.dither&&(tr?Te.enable(3024):Te.disable(3024),Ye.dither=tr),pr=Fe[0],gr=Fe[1],(pr!==ft[0]||gr!==ft[1])&&(Te.blendEquationSeparate(pr,gr),ft[0]=pr,ft[1]=gr),Zr=vt.depth_func,Zr!==Ye.depth_func&&(Te.depthFunc(Zr),Ye.depth_func=Zr),Ti=pe[0],en=pe[1],(Ti!==dt[0]||en!==dt[1])&&(Te.depthRange(Ti,en),dt[0]=Ti,dt[1]=en),ii=vt.depth_mask,ii!==Ye.depth_mask&&(Te.depthMask(ii),Ye.depth_mask=ii),Xi=Pt[0],aa=Pt[1],Mn=Pt[2],Un=Pt[3],(Xi!==zt[0]||aa!==zt[1]||Mn!==zt[2]||Un!==zt[3])&&(Te.colorMask(Xi,aa,Mn,Un),zt[0]=Xi,zt[1]=aa,zt[2]=Mn,zt[3]=Un),Ga=vt.cull_enable,Ga!==Ye.cull_enable&&(Ga?Te.enable(2884):Te.disable(2884),Ye.cull_enable=Ga),ma=vt.cull_face,ma!==Ye.cull_face&&(Te.cullFace(ma),Ye.cull_face=ma),oa=vt.frontFace,oa!==Ye.frontFace&&(Te.frontFace(oa),Ye.frontFace=oa),ka=vt.lineWidth,ka!==Ye.lineWidth&&(Te.lineWidth(ka),Ye.lineWidth=ka),so=vt.polygonOffset_enable,so!==Ye.polygonOffset_enable&&(so?Te.enable(32823):Te.disable(32823),Ye.polygonOffset_enable=so),Kr=rr[0],Ia=rr[1],(Kr!==Gr[0]||Ia!==Gr[1])&&(Te.polygonOffset(Kr,Ia),Gr[0]=Kr,Gr[1]=Ia),Yo=vt.sample_alpha,Yo!==Ye.sample_alpha&&(Yo?Te.enable(32926):Te.disable(32926),Ye.sample_alpha=Yo),fa=vt.sample_enable,fa!==Ye.sample_enable&&(fa?Te.enable(32928):Te.disable(32928),Ye.sample_enable=fa),kn=Br[0],Aa=Br[1],(kn!==Er[0]||Aa!==Er[1])&&(Te.sampleCoverage(kn,Aa),Er[0]=kn,Er[1]=Aa),ys=vt.stencil_mask,ys!==Ye.stencil_mask&&(Te.stencilMask(ys),Ye.stencil_mask=ys),uo=Rr[0],ls=Rr[1],$a=Rr[2],(uo!==pi[0]||ls!==pi[1]||$a!==pi[2])&&(Te.stencilFunc(uo,ls,$a),pi[0]=uo,pi[1]=ls,pi[2]=$a),fo=Di[0],mn=Di[1],ra=Di[2],wa=Di[3],(fo!==ni[0]||mn!==ni[1]||ra!==ni[2]||wa!==ni[3])&&(Te.stencilOpSeparate(fo,mn,ra,wa),ni[0]=fo,ni[1]=mn,ni[2]=ra,ni[3]=wa),ws=$i[0],Co=$i[1],Po=$i[2],Wi=$i[3],(ws!==Qi[0]||Co!==Qi[1]||Po!==Qi[2]||Wi!==Qi[3])&&(Te.stencilOpSeparate(ws,Co,Po,Wi),Qi[0]=ws,Qi[1]=Co,Qi[2]=Po,Qi[3]=Wi),gn=vt.scissor_enable,gn!==Ye.scissor_enable&&(gn?Te.enable(3089):Te.disable(3089),Ye.scissor_enable=gn),Ps=si[0],Ha=si[1],Sn=si[2],ao=si[3],(Ps!==Ai[0]||Ha!==Ai[1]||Sn!==Ai[2]||ao!==Ai[3])&&(Te.scissor(Ps,Ha,Sn,ao),Ai[0]=Ps,Ai[1]=Ha,Ai[2]=Sn,Ai[3]=ao)}tn=this.viewport,Yr=tn.x|0,oi=tn.y|0,Fi="width"in tn?tn.width|0:ot.framebufferWidth-Yr,an="height"in tn?tn.height|0:ot.framebufferHeight-oi,nn=ot.viewportWidth,ot.viewportWidth=Fi,Ri=ot.viewportHeight,ot.viewportHeight=an,Te.viewport(Yr,oi,Fi,an),Rt[0]=Yr,Rt[1]=oi,Rt[2]=Fi,Rt[3]=an,Te.blendColor(0,0,0,1),Ie[0]=0,Ie[1]=0,Ie[2]=0,Ie[3]=1,Dt?Te.enable(3042):Te.disable(3042),Ye.blend_enable=Dt,Te.blendFuncSeparate(770,771,773,1),fe[0]=770,fe[1]=771,fe[2]=773,fe[3]=1,Zt?Te.enable(2929):Te.disable(2929),Ye.depth_enable=Zt,Et?Te.enable(2960):Te.disable(2960),Ye.stencil_enable=Et,Ii=Ye.profile,Ii&&(xn=performance.now(),r.count+=ki),Te.useProgram(o.program),bi=Ut.angle_instanced_arrays;var Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa,ln,Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn;for(cr.setVAO(null),Ba=this.charBuffer,Ko=!1,Qo=1,Hi=0,Sa=0,Qa=0,vn=0,da=null,la=0,vo=!1,Ts=5126,ps=0,co=0,mo=0,xe(Ba)?(Ko=!0,da=et.createStream(34962,Ba),Ts=da.dtype):(da=et.getBuffer(Ba),da?Ts=da.dtype:"constant"in Ba?(Qo=2,typeof Ba.constant=="number"?(Hi=Ba.constant,Sa=Qa=vn=0):(Hi=Ba.constant.length>0?Ba.constant[0]:0,Sa=Ba.constant.length>1?Ba.constant[1]:0,Qa=Ba.constant.length>2?Ba.constant[2]:0,vn=Ba.constant.length>3?Ba.constant[3]:0)):(xe(Ba.buffer)?da=et.createStream(34962,Ba.buffer):da=et.getBuffer(Ba.buffer),Ts="type"in Ba?Nr[Ba.type]:da.dtype,vo=!!Ba.normalized,la=Ba.size|0,ps=Ba.offset|0,co=Ba.stride|0,mo=Ba.divisor|0)),No=s.location,jn=Yt[No],Qo===1?(jn.buffer||Te.enableVertexAttribArray(No),Go=la||1,(jn.type!==Ts||jn.size!==Go||jn.buffer!==da||jn.normalized!==vo||jn.offset!==ps||jn.stride!==co)&&(Te.bindBuffer(34962,da.buffer),Te.vertexAttribPointer(No,Go,Ts,vo,co,ps),jn.type=Ts,jn.size=Go,jn.buffer=da,jn.normalized=vo,jn.offset=ps,jn.stride=co),jn.divisor!==mo&&(bi.vertexAttribDivisorANGLE(No,mo),jn.divisor=mo)):(jn.buffer&&(Te.disableVertexAttribArray(No),jn.buffer=null),(jn.x!==Hi||jn.y!==Sa||jn.z!==Qa||jn.w!==vn)&&(Te.vertexAttrib4f(No,Hi,Sa,Qa,vn),jn.x=Hi,jn.y=Sa,jn.z=Qa,jn.w=vn)),Ys=this.sizeBuffer,Hr.buffer=Ys,qs=!1,Ns=1,Oa=0,ha=0,Vs=0,Ya=0,_n=null,Vn=0,wo=!1,Ra=5126,Xn=0,un=0,$n=0,xe(Hr)?(qs=!0,_n=et.createStream(34962,Hr),Ra=_n.dtype):(_n=et.getBuffer(Hr),_n?Ra=_n.dtype:"constant"in Hr?(Ns=2,typeof Hr.constant=="number"?(Oa=Hr.constant,ha=Vs=Ya=0):(Oa=Hr.constant.length>0?Hr.constant[0]:0,ha=Hr.constant.length>1?Hr.constant[1]:0,Vs=Hr.constant.length>2?Hr.constant[2]:0,Ya=Hr.constant.length>3?Hr.constant[3]:0)):(xe(Hr.buffer)?_n=et.createStream(34962,Hr.buffer):_n=et.getBuffer(Hr.buffer),Ra="type"in Hr?Nr[Hr.type]:_n.dtype,wo=!!Hr.normalized,Vn=Hr.size|0,Xn=Hr.offset|0,un=Hr.stride|0,$n=Hr.divisor|0)),Ka=u.location,qn=Yt[Ka],Ns===1?(qn.buffer||Te.enableVertexAttribArray(Ka),Eo=Vn||1,(qn.type!==Ra||qn.size!==Eo||qn.buffer!==_n||qn.normalized!==wo||qn.offset!==Xn||qn.stride!==un)&&(Te.bindBuffer(34962,_n.buffer),Te.vertexAttribPointer(Ka,Eo,Ra,wo,un,Xn),qn.type=Ra,qn.size=Eo,qn.buffer=_n,qn.normalized=wo,qn.offset=Xn,qn.stride=un),qn.divisor!==$n&&(bi.vertexAttribDivisorANGLE(Ka,$n),qn.divisor=$n)):(qn.buffer&&(Te.disableVertexAttribArray(Ka),qn.buffer=null),(qn.x!==Oa||qn.y!==ha||qn.z!==Vs||qn.w!==Ya)&&(Te.vertexAttrib4f(Ka,Oa,ha,Vs,Ya),qn.x=Oa,qn.y=ha,qn.z=Vs,qn.w=Ya)),Ja=this.position,lo=!1,eo=1,sa=0,es=0,Na=0,rn=0,Pa=null,to=0,yo=!1,Jo=5126,To=0,Dn=0,_a=0,xe(Ja)?(lo=!0,Pa=et.createStream(34962,Ja),Jo=Pa.dtype):(Pa=et.getBuffer(Ja),Pa?Jo=Pa.dtype:"constant"in Ja?(eo=2,typeof Ja.constant=="number"?(sa=Ja.constant,es=Na=rn=0):(sa=Ja.constant.length>0?Ja.constant[0]:0,es=Ja.constant.length>1?Ja.constant[1]:0,Na=Ja.constant.length>2?Ja.constant[2]:0,rn=Ja.constant.length>3?Ja.constant[3]:0)):(xe(Ja.buffer)?Pa=et.createStream(34962,Ja.buffer):Pa=et.getBuffer(Ja.buffer),Jo="type"in Ja?Nr[Ja.type]:Pa.dtype,yo=!!Ja.normalized,to=Ja.size|0,To=Ja.offset|0,Dn=Ja.stride|0,_a=Ja.divisor|0)),Ws=l.location,Ca=Yt[Ws],eo===1?(Ca.buffer||Te.enableVertexAttribArray(Ws),Es=to||2,(Ca.type!==Jo||Ca.size!==Es||Ca.buffer!==Pa||Ca.normalized!==yo||Ca.offset!==To||Ca.stride!==Dn)&&(Te.bindBuffer(34962,Pa.buffer),Te.vertexAttribPointer(Ws,Es,Jo,yo,Dn,To),Ca.type=Jo,Ca.size=Es,Ca.buffer=Pa,Ca.normalized=yo,Ca.offset=To,Ca.stride=Dn),Ca.divisor!==_a&&(bi.vertexAttribDivisorANGLE(Ws,_a),Ca.divisor=_a)):(Ca.buffer&&(Te.disableVertexAttribArray(Ws),Ca.buffer=null),(Ca.x!==sa||Ca.y!==es||Ca.z!==Na||Ca.w!==rn)&&(Te.vertexAttrib4f(Ws,sa,es,Na,rn),Ca.x=sa,Ca.y=es,Ca.z=Na,Ca.w=rn)),As=this.sizeBuffer,jr.buffer=As,Ho=!1,Wa=1,Ao=0,ts=0,Wo=0,qa=0,ln=null,Bo=0,ko=!1,oo=5126,za=0,ea=0,rs=0,xe(jr)?(Ho=!0,ln=et.createStream(34962,jr),oo=ln.dtype):(ln=et.getBuffer(jr),ln?oo=ln.dtype:"constant"in jr?(Wa=2,typeof jr.constant=="number"?(Ao=jr.constant,ts=Wo=qa=0):(Ao=jr.constant.length>0?jr.constant[0]:0,ts=jr.constant.length>1?jr.constant[1]:0,Wo=jr.constant.length>2?jr.constant[2]:0,qa=jr.constant.length>3?jr.constant[3]:0)):(xe(jr.buffer)?ln=et.createStream(34962,jr.buffer):ln=et.getBuffer(jr.buffer),oo="type"in jr?Nr[jr.type]:ln.dtype,ko=!!jr.normalized,Bo=jr.size|0,za=jr.offset|0,ea=jr.stride|0,rs=jr.divisor|0)),$s=f.location,us=Yt[$s],Wa===1?(us.buffer||Te.enableVertexAttribArray($s),Ds=Bo||1,(us.type!==oo||us.size!==Ds||us.buffer!==ln||us.normalized!==ko||us.offset!==za||us.stride!==ea)&&(Te.bindBuffer(34962,ln.buffer),Te.vertexAttribPointer($s,Ds,oo,ko,ea,za),us.type=oo,us.size=Ds,us.buffer=ln,us.normalized=ko,us.offset=za,us.stride=ea),us.divisor!==rs&&(bi.vertexAttribDivisorANGLE($s,rs),us.divisor=rs)):(us.buffer&&(Te.disableVertexAttribArray($s),us.buffer=null),(us.x!==Ao||us.y!==ts||us.z!==Wo||us.w!==qa)&&(Te.vertexAttrib4f($s,Ao,ts,Wo,qa),us.x=Ao,us.y=ts,us.z=Wo,us.w=qa)),fl=this.scale,as=fl[0],Ma=fl[1],Te.uniform2f(P.location,as,Ma),Qs=this.translate,ho=Qs[0],gs=Qs[1],Te.uniform2f(T.location,ho,gs),Vo=this.viewportArray,Do=Vo[0],Lo=Vo[1],xs=Vo[2],ks=Vo[3],Te.uniform4f(B.location,Do,Lo,xs,ks),Ea=He.elements,Ea?Te.bindBuffer(34963,Ea.buffer.buffer):cr.currentVAO&&(Ea=it.getElements(cr.currentVAO.elements),Ea&&Te.bindBuffer(34963,Ea.buffer.buffer)),Jn=He.instances,Xr=0;Xr0?Ea?bi.drawElementsInstancedANGLE(0,Fr,Ea.type,mr<<(Ea.type-5121>>1),Jn):bi.drawArraysInstancedANGLE(0,mr,Fr,Jn):Jn<0&&(Ea?Te.drawElements(0,Fr,Ea.type,mr<<(Ea.type-5121>>1)):Te.drawArrays(0,mr,Fr)),bs.unbind())}Ko&&et.destroyStream(da),qs&&et.destroyStream(_n),lo&&et.destroyStream(Pa),Ho&&et.destroyStream(ln),Ye.dirty=!0,cr.setVAO(null),ot.viewportWidth=nn,ot.viewportHeight=Ri,Ii&&(r.cpuTime+=performance.now()-xn)}}}});var AK=Ae((Yxr,i7e)=>{"use strict";var LVt=E8(),PVt=k8(),zVt=C8(),IVt=L8(),RVt=P8(),DVt=z8(),FVt=I8(),BVt=R8(),OVt=D8(),qVt=F8();i7e.exports={"3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b":LVt,cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81:PVt,"8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623":zVt,fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7:IVt,db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d:RVt,"49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210":DVt,dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5:FVt,bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019:BVt,"6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923":OVt,"8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034":qVt}});var o7e=Ae((Kxr,a7e)=>{"use strict";var n7e=TK(),NVt=AK();Object.assign(n7e.reglPrecompiled,NVt);a7e.exports=n7e});var u7e=Ae((Jxr,l7e)=>{"use strict";var s7e=cBe();s7e.plot=o7e();l7e.exports=s7e});var SK=Ae(($xr,d7e)=>{"use strict";var UVt=Zc(),h7e=nc(),f7e=jc().axisHoverFormat,{hovertemplateAttrs:VVt,templatefallbackAttrs:GVt}=Ff(),kk=lk(),HVt=dd().idRegex,WVt=Lf().templatedArray,mS=Su().extendFlat,o1=UVt.marker,jVt=o1.line,XVt=mS(h7e("marker.line",{editTypeOverride:"calc"}),{width:mS({},jVt.width,{editType:"calc"}),editType:"calc"}),B8=mS(h7e("marker"),{symbol:o1.symbol,angle:o1.angle,size:mS({},o1.size,{editType:"markerSize"}),sizeref:o1.sizeref,sizemin:o1.sizemin,sizemode:o1.sizemode,opacity:o1.opacity,colorbar:o1.colorbar,line:XVt,editType:"calc"});B8.color.editType=B8.cmin.editType=B8.cmax.editType="style";function c7e(e){return{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"subplotid",regex:HVt[e],editType:"plot"}}}d7e.exports={dimensions:WVt("dimension",{visible:{valType:"boolean",dflt:!0,editType:"calc"},label:{valType:"string",editType:"calc"},values:{valType:"data_array",editType:"calc+clearAxisTypes"},axis:{type:{valType:"enumerated",values:["linear","log","date","category"],editType:"calc+clearAxisTypes"},matches:{valType:"boolean",dflt:!1,editType:"calc"},editType:"calc+clearAxisTypes"},editType:"calc+clearAxisTypes"}),text:mS({},kk.text,{}),hovertext:mS({},kk.hovertext,{}),hovertemplate:VVt(),hovertemplatefallback:GVt(),xhoverformat:f7e("x"),yhoverformat:f7e("y"),marker:B8,xaxes:c7e("x"),yaxes:c7e("y"),diagonal:{visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"},showupperhalf:{valType:"boolean",dflt:!0,editType:"calc"},showlowerhalf:{valType:"boolean",dflt:!0,editType:"calc"},selected:{marker:kk.selected.marker,editType:"calc"},unselected:{marker:kk.unselected.marker,editType:"calc"},opacity:kk.opacity}});var O8=Ae((Qxr,p7e)=>{"use strict";p7e.exports=function(e,t,r,n){n||(n=1/0);var i,a;for(i=0;i{"use strict";var MK=ei(),ZVt=Jd(),v7e=SK(),YVt=lc(),KVt=$v(),JVt=O8(),$Vt=VF().isOpenSymbol;m7e.exports=function(t,r,n,i){function a(d,p){return MK.coerce(t,r,v7e,d,p)}var o=ZVt(t,r,{name:"dimensions",handleItemDefaults:QVt}),s=a("diagonal.visible"),u=a("showupperhalf"),l=a("showlowerhalf"),f=JVt(r,o,"values");if(!f||!s&&!u&&!l){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),KVt(t,r,n,i,a,{noAngleRef:!0,noStandOff:!0});var c=$Vt(r.marker.symbol),h=YVt.isBubble(r);a("marker.line.width",c||h?1:0),eGt(t,r,i,a),MK.coerceSelectionMarkerOpacity(r,a)};function QVt(e,t){function r(i,a){return MK.coerce(e,t,v7e.dimensions,i,a)}r("label");var n=r("values");n&&n.length?r("visible"):t.visible=!1,r("axis.type"),r("axis.matches")}function eGt(e,t,r,n){var i=t.dimensions,a=i.length,o=t.showupperhalf,s=t.showlowerhalf,u=t.diagonal.visible,l,f,c=new Array(a),h=new Array(a);for(l=0;lf&&o||l{"use strict";var g7e=ei();_7e.exports=function(t,r){var n=t._fullLayout,i=r.uid,a=n._splomScenes;a||(a=n._splomScenes={});var o={dirty:!0,selectBatch:[],unselectBatch:[]},s={matrix:!1,selectBatch:[],unselectBatch:[]},u=a[r.uid];return u||(u=a[i]=g7e.extendFlat({},o,s),u.draw=function(){u.matrix&&u.matrix.draw&&(u.selectBatch.length||u.unselectBatch.length?u.matrix.draw(u.unselectBatch,u.selectBatch):u.matrix.draw()),u.dirty=!1},u.destroy=function(){u.matrix&&u.matrix.destroy&&u.matrix.destroy(),u.matrixOptions=null,u.selectBatch=null,u.unselectBatch=null,u=null}),u.dirty||g7e.extendFlat(u,o),u}});var T7e=Ae((rbr,w7e)=>{"use strict";var EK=ei(),q8=Wc(),tGt=B0().calcMarkerSize,rGt=B0().calcAxisExpansion,iGt=D0(),b7e=J2().markerSelection,nGt=J2().markerStyle,aGt=x7e(),oGt=rf().BADNUM,sGt=ox().TOO_MANY_POINTS;w7e.exports=function(t,r){var n=r.dimensions,i=r._length,a={},o=a.cdata=[],s=a.data=[],u=r._visibleDims=[],l,f,c,h,d;function p(E,A){for(var L=E.makeCalcdata({v:A.values,vcalendar:r.calendar},"v"),x=0;xsGt,v;for(b?v=a.sizeAvg||Math.max(a.size,3):v=tGt(r,i),f=0;f{(function(){var e,t,r,n,i,a;typeof performance!="undefined"&&performance!==null&&performance.now?Ck.exports=function(){return performance.now()}:typeof process!="undefined"&&process!==null&&process.hrtime?(Ck.exports=function(){return(e()-i)/1e6},t=process.hrtime,e=function(){var o;return o=t(),o[0]*1e9+o[1]},n=e(),a=process.uptime()*1e9,i=n-a):Date.now?(Ck.exports=function(){return Date.now()-r},r=Date.now()):(Ck.exports=function(){return new Date().getTime()-r},r=new Date().getTime())}).call(A7e)});var E7e=Ae((ibr,V8)=>{var lGt=S7e(),s1=window,N8=["moz","webkit"],gS="AnimationFrame",_S=s1["request"+gS],Lk=s1["cancel"+gS]||s1["cancelRequest"+gS];for(yS=0;!_S&&yS{k7e.exports=function(t,r){var n=typeof t=="number",i=typeof r=="number";n&&!i?(r=t,t=0):!n&&!i&&(t=0,r=0),t=t|0,r=r|0;var a=r-t;if(a<0)throw new Error("array length must be positive");for(var o=new Array(a),s=0,u=t;s{"use strict";var uGt=wY(),fGt=Zy(),cGt=X2(),L7e=E7e(),hGt=C7e(),CK=iS(),dGt=Z2();z7e.exports=vx;function vx(e,t){if(!(this instanceof vx))return new vx(e,t);this.traces=[],this.passes={},this.regl=e,this.scatter=uGt(e),this.canvas=this.scatter.canvas}vx.prototype.render=function(...e){return e.length&&this.update(...e),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?this.planned==null&&(this.planned=L7e(()=>{this.draw(),this.dirty=!0,this.planned=null})):(this.draw(),this.dirty=!0,L7e(()=>{this.dirty=!1})),this)};vx.prototype.update=function(...e){if(!e.length)return;for(let n=0;nb||!i.lower&&_{t[a+s]=n})}this.scatter.draw(...t)}return this};vx.prototype.destroy=function(){return this.traces.forEach(e=>{e.buffer&&e.buffer.destroy&&e.buffer.destroy()}),this.traces=null,this.passes=null,this.scatter.destroy(),this};function pGt(e,t,r){let n=e.id!=null?e.id:e,i=t,a=r;return n<<16|(i&255)<<8|a&255}function G8(e,t,r){let n,i,a,o,s,u,l,f,c=e[t],h=e[r];return c.length>2?(n=c[0],a=c[2],i=c[1],o=c[3]):c.length?(n=i=c[0],a=o=c[1]):(n=c.x,i=c.y,a=c.x+c.width,o=c.y+c.height),h.length>2?(s=h[0],l=h[2],u=h[1],f=h[3]):h.length?(s=u=h[0],l=f=h[1]):(s=h.x,u=h.y,l=h.x+h.width,f=h.y+h.height),[s,i,l,o]}function P7e(e){if(typeof e=="number")return[e,e,e,e];if(e.length===2)return[e[0],e[1],e[0],e[1]];{let t=CK(e);return[t.x,t.y,t.x+t.width,t.y+t.height]}}});var D7e=Ae((obr,R7e)=>{"use strict";var vGt=I7e(),LK=ei(),H8=Wc(),mGt=Em().selectMode;R7e.exports=function(t,r,n){if(n.length)for(var i=0;i-1,T=mGt(f)||!!i.selectedpoints||P,B=!0;if(T){var F=i._length;if(i.selectedpoints){o.selectBatch=i.selectedpoints;var U=i.selectedpoints,G={};for(d=0;d{"use strict";F7e.getDimIndex=function(t,r){for(var n=r._id,i=n.charAt(0),a={x:0,y:1}[i],o=t._visibleDims,s=0;s{"use strict";var B7e=PK(),gGt=UF().calcHover,O7e=wu().getFromId,_Gt=Su().extendFlat;function xGt(e,t,r,n,i){i||(i={});var a=(n||"").charAt(0)==="x",o=(n||"").charAt(0)==="y",s=q7e(e,t,r);if((a||o)&&i.hoversubplots==="axis"&&s[0])for(var u=(a?e.xa:e.ya)._subplotsWith,l=i.gd,f=_Gt({},e),c=0;c{"use strict";var W7e=ei(),V7e=W7e.pushUnique,G7e=lc(),H7e=PK();j7e.exports=function(t,r){var n=t.cd,i=n[0].trace,a=n[0].t,o=t.scene,s=o.matrixOptions.cdata,u=t.xaxis,l=t.yaxis,f=[];if(!o)return f;var c=!G7e.hasMarkers(i)&&!G7e.hasText(i);if(i.visible!==!0||c)return f;var h=H7e.getDimIndex(i,u),d=H7e.getDimIndex(i,l);if(h===!1||d===!1)return f;var p=a.xpx[h],_=a.ypx[d],b=s[h],v=s[d],k=(t.scene.selectBatch||[]).slice(),E=[];if(r!==!1&&!r.degenerate)for(var A=0;A{"use strict";var Z7e=ei(),bGt=D0(),wGt=J2().markerStyle;Y7e.exports=function(t,r){var n=r.trace,i=t._fullLayout._splomScenes[n.uid];if(i){bGt(t,n),Z7e.extendFlat(i.matrixOptions,wGt(t,n));var a=Z7e.extendFlat({},i.matrixOptions,i.viewOpts);i.matrix.update(a,null)}}});var $7e=Ae((cbr,J7e)=>{"use strict";var TGt=$l(),AGt=bV();J7e.exports={moduleType:"trace",name:"splom",categories:["gl","regl","cartesian","symbols","showLegend","scatter-like"],attributes:SK(),supplyDefaults:y7e(),colorbar:ep(),calc:T7e(),plot:D7e(),hoverPoints:U7e().hoverPoints,selectPoints:X7e(),editStyle:K7e(),meta:{}};TGt.register(AGt)});var nUe=Ae((hbr,iUe)=>{"use strict";var SGt=QY(),MGt=$l(),EGt=M8(),kGt=Rd().getModuleCalcData,mx=Ah(),Q7e=Wc().getFromId,eUe=wu().shouldShowZeroLine,tUe="splom",rUe={};function CGt(e){var t=e._fullLayout,r=MGt.getModule(tUe),n=kGt(e.calcdata,r)[0],i=EGt(e,["ANGLE_instanced_arrays","OES_element_index_uint"],rUe);i&&(t._hasOnlyLargeSploms&&zK(e),r.plot(e,{},n))}function LGt(e){var t=e.calcdata,r=e._fullLayout;r._hasOnlyLargeSploms&&zK(e);for(var n=0;n{"use strict";var RGt=E8(),DGt=k8(),FGt=C8(),BGt=I8(),OGt=R8(),qGt=L8(),NGt=P8(),UGt=z8(),VGt=D8(),GGt=F8();aUe.exports={"3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b":RGt,cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81:DGt,"8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623":FGt,dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5:BGt,bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019:OGt,fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7:qGt,db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d:NGt,"49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210":UGt,"6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923":VGt,"8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034":GGt}});var uUe=Ae((pbr,lUe)=>{"use strict";var sUe=nUe(),HGt=oUe();Object.assign(sUe.reglPrecompiled,HGt);lUe.exports=sUe});var hUe=Ae((vbr,cUe)=>{"use strict";var fUe=$7e();fUe.basePlotModule=uUe(),cUe.exports=fUe});var DK=Ae((mbr,dUe)=>{"use strict";var WGt=nc(),IK=Dd(),RK=gc(),jGt=zc().attributes,W8=Su().extendFlat,XGt=Lf().templatedArray;dUe.exports={domain:jGt({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:RK({editType:"plot"}),tickfont:RK({autoShadowDflt:!0,editType:"plot"}),rangefont:RK({editType:"plot"}),dimensions:XGt("dimension",{label:{valType:"string",editType:"plot"},tickvals:W8({},IK.tickvals,{editType:"plot"}),ticktext:W8({},IK.ticktext,{editType:"plot"}),tickformat:W8({},IK.tickformat,{editType:"plot"}),visible:{valType:"boolean",dflt:!0,editType:"plot"},range:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},constraintrange:{valType:"info_array",freeLength:!0,dimensions:"1-2",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},multiselect:{valType:"boolean",dflt:!0,editType:"plot"},values:{valType:"data_array",editType:"calc"},editType:"calc"}),line:W8({editType:"calc"},WGt("line",{colorscaleDflt:"Viridis",autoColorDflt:!1,editTypeOverride:"calc"})),unselected:{line:{color:{valType:"color",dflt:"#7f7f7f",editType:"plot"},opacity:{valType:"number",min:0,max:1,dflt:"auto",editType:"plot"},editType:"plot"},editType:"plot"}}});var Pk=Ae((ybr,pUe)=>{"use strict";pUe.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:["contextLineLayer","focusLineLayer","pickLineLayer"],axisTitleOffset:28,axisExtentOffset:10,bar:{width:4,captureWidth:10,fillColor:"magenta",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeOpacity:1,strokeWidth:1,handleHeight:8,handleOpacity:1,handleOverlap:0},cn:{axisExtentText:"axis-extent-text",parcoordsLineLayers:"parcoords-line-layers",parcoordsLineLayer:"parcoords-lines",parcoords:"parcoords",parcoordsControlView:"parcoords-control-view",yAxis:"y-axis",axisOverlays:"axis-overlays",axis:"axis",axisHeading:"axis-heading",axisTitle:"axis-title",axisExtent:"axis-extent",axisExtentTop:"axis-extent-top",axisExtentTopText:"axis-extent-top-text",axisExtentBottom:"axis-extent-bottom",axisExtentBottomText:"axis-extent-bottom-text",axisBrush:"axis-brush"},id:{filterBarPattern:"filter-bar-pattern"}}});var Jy=Ae((gbr,mUe)=>{"use strict";var ZGt=HM();function vUe(e){return[e]}mUe.exports={keyFun:function(e){return e.key},repeat:vUe,descend:ZGt,wrap:vUe,unwrap:function(e){return e[0]}}});var OK=Ae((_br,EUe)=>{"use strict";var Lh=Pk(),ty=Jl(),YGt=Jy().keyFun,j8=Jy().repeat,xS=ei().sorterAsc,KGt=ei().strTranslate,yUe=Lh.bar.snapRatio;function gUe(e,t){return e*(1-yUe)+t*yUe}var _Ue=Lh.bar.snapClose;function JGt(e,t){return e*(1-_Ue)+t*_Ue}function Z8(e,t,r,n){if($Gt(r,n))return r;var i=e?-1:1,a=0,o=t.length-1;if(i<0){var s=a;a=o,o=s}for(var u=t[a],l=u,f=a;i*f=t[r][0]&&e<=t[r][1])return!0;return!1}function QGt(e){e.attr("x",-Lh.bar.captureWidth/2).attr("width",Lh.bar.captureWidth)}function eHt(e){e.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function tHt(e){if(!e.brush.filterSpecified)return"0,"+e.height;for(var t=xUe(e.brush.filter.getConsolidated(),e.height),r=[0],n,i,a,o=t.length?t[0][0]:null,s=0;se[1]+r||t=.9*e[1]+.1*e[0]?"n":t<=.9*e[0]+.1*e[1]?"s":"ns"}function bUe(){ty.select(document.body).style("cursor",null)}function BK(e){e.attr("stroke-dasharray",tHt)}function X8(e,t){var r=ty.select(e).selectAll(".highlight, .highlight-shadow"),n=t?r.transition().duration(Lh.bar.snapDuration).each("end",t):r;BK(n)}function wUe(e,t){var r=e.brush,n=r.filterSpecified,i=NaN,a={},o;if(n){var s=e.height,u=r.filter.getConsolidated(),l=xUe(u,s),f=NaN,c=NaN,h=NaN;for(o=0;o<=l.length;o++){var d=l[o];if(d&&d[0]<=t&&t<=d[1]){f=o;break}else if(c=o?o-1:NaN,d&&d[0]>t){h=o;break}}if(i=f,isNaN(i)&&(isNaN(c)||isNaN(h)?i=isNaN(c)?h:c:i=t-l[c][1]=k[0]&&v<=k[1]){a.clickableOrdinalRange=k;break}}}return a}function iHt(e,t){ty.event.sourceEvent.stopPropagation();var r=t.height-ty.mouse(e)[1]-2*Lh.verticalPadding,n=t.unitToPaddedPx.invert(r),i=t.brush,a=wUe(t,r),o=a.interval,s=i.svgBrush;if(s.wasDragged=!1,s.grabbingBar=a.region==="ns",s.grabbingBar){var u=o.map(t.unitToPaddedPx);s.grabPoint=r-u[0]-Lh.verticalPadding,s.barLength=u[1]-u[0]}s.clickableOrdinalRange=a.clickableOrdinalRange,s.stayingIntervals=t.multiselect&&i.filterSpecified?i.filter.getConsolidated():[],o&&(s.stayingIntervals=s.stayingIntervals.filter(function(l){return l[0]!==o[0]&&l[1]!==o[1]})),s.startExtent=a.region?o[a.region==="s"?1:0]:n,t.parent.inBrushDrag=!0,s.brushStartCallback()}function TUe(e,t){ty.event.sourceEvent.stopPropagation();var r=t.height-ty.mouse(e)[1]-2*Lh.verticalPadding,n=t.brush.svgBrush;n.wasDragged=!0,n._dragging=!0,n.grabbingBar?n.newExtent=[r-n.grabPoint,r+n.barLength-n.grabPoint].map(t.unitToPaddedPx.invert):n.newExtent=[n.startExtent,t.unitToPaddedPx.invert(r)].sort(xS),t.brush.filterSpecified=!0,n.extent=n.stayingIntervals.concat([n.newExtent]),n.brushCallback(t),X8(e.parentNode)}function nHt(e,t){var r=t.brush,n=r.filter,i=r.svgBrush;i._dragging||(AUe(e,t),TUe(e,t),t.brush.svgBrush.wasDragged=!1),i._dragging=!1;var a=ty.event;a.sourceEvent.stopPropagation();var o=i.grabbingBar;if(i.grabbingBar=!1,i.grabLocation=void 0,t.parent.inBrushDrag=!1,bUe(),!i.wasDragged){i.wasDragged=void 0,i.clickableOrdinalRange?r.filterSpecified&&t.multiselect?i.extent.push(i.clickableOrdinalRange):(i.extent=[i.clickableOrdinalRange],r.filterSpecified=!0):o?(i.extent=i.stayingIntervals,i.extent.length===0&&FK(r)):FK(r),i.brushCallback(t),X8(e.parentNode),i.brushEndCallback(r.filterSpecified?n.getConsolidated():[]);return}var s=function(){n.set(n.getConsolidated())};if(t.ordinal){var u=t.unitTickvals;u[u.length-1]i.newExtent[0];i.extent=i.stayingIntervals.concat(l?[i.newExtent]:[]),i.extent.length||FK(r),i.brushCallback(t),l?X8(e.parentNode,s):(s(),X8(e.parentNode))}else s();i.brushEndCallback(r.filterSpecified?n.getConsolidated():[])}function AUe(e,t){var r=t.height-ty.mouse(e)[1]-2*Lh.verticalPadding,n=wUe(t,r),i="crosshair";n.clickableOrdinalRange?i="pointer":n.region&&(i=n.region+"-resize"),ty.select(document.body).style("cursor",i)}function aHt(e){e.on("mousemove",function(t){ty.event.preventDefault(),t.parent.inBrushDrag||AUe(this,t)}).on("mouseleave",function(t){t.parent.inBrushDrag||bUe()}).call(ty.behavior.drag().on("dragstart",function(t){iHt(this,t)}).on("drag",function(t){TUe(this,t)}).on("dragend",function(t){nHt(this,t)}))}function SUe(e,t){return e[0]-t[0]}function oHt(e,t,r){var n=r._context.staticPlot,i=e.selectAll(".background").data(j8);i.enter().append("rect").classed("background",!0).call(QGt).call(eHt).style("pointer-events",n?"none":"auto").attr("transform",KGt(0,Lh.verticalPadding)),i.call(aHt).attr("height",function(s){return s.height-Lh.verticalPadding});var a=e.selectAll(".highlight-shadow").data(j8);a.enter().append("line").classed("highlight-shadow",!0).attr("x",-Lh.bar.width/2).attr("stroke-width",Lh.bar.width+Lh.bar.strokeWidth).attr("stroke",t).attr("opacity",Lh.bar.strokeOpacity).attr("stroke-linecap","butt"),a.attr("y1",function(s){return s.height}).call(BK);var o=e.selectAll(".highlight").data(j8);o.enter().append("line").classed("highlight",!0).attr("x",-Lh.bar.width/2).attr("stroke-width",Lh.bar.width-Lh.bar.strokeWidth).attr("stroke",Lh.bar.fillColor).attr("opacity",Lh.bar.fillOpacity).attr("stroke-linecap","butt"),o.attr("y1",function(s){return s.height}).call(BK)}function sHt(e,t,r){var n=e.selectAll("."+Lh.cn.axisBrush).data(j8,YGt);n.enter().append("g").classed(Lh.cn.axisBrush,!0),oHt(n,t,r)}function lHt(e){return e.svgBrush.extent.map(function(t){return t.slice()})}function FK(e){e.filterSpecified=!1,e.svgBrush.extent=[[-1/0,1/0]]}function uHt(e){return function(r){var n=r.brush,i=lHt(n),a=i.slice();n.filter.set(a),e()}}function MUe(e){for(var t=e.slice(),r=[],n,i=t.shift();i;){for(n=i.slice();(i=t.shift())&&i[0]<=n[1];)n[1]=Math.max(n[1],i[1]);r.push(n)}return r.length===1&&r[0][0]>r[0][1]&&(r=[]),r}function fHt(){var e=[],t,r;return{set:function(n){e=n.map(function(i){return i.slice().sort(xS)}).sort(SUe),e.length===1&&e[0][0]===-1/0&&e[0][1]===1/0&&(e=[[0,-1]]),t=MUe(e),r=e.reduce(function(i,a){return[Math.min(i[0],a[0]),Math.max(i[1],a[1])]},[1/0,-1/0])},get:function(){return e.slice()},getConsolidated:function(){return t},getBounds:function(){return r}}}function cHt(e,t,r,n,i,a){var o=fHt();return o.set(r),{filter:o,filterSpecified:t,svgBrush:{extent:[],brushStartCallback:n,brushCallback:uHt(i),brushEndCallback:a}}}function hHt(e,t){if(Array.isArray(e[0])?(e=e.map(function(n){return n.sort(xS)}),t.multiselect?e=MUe(e.sort(SUe)):e=[e[0]]):e=[e.sort(xS)],t.tickvals){var r=t.tickvals.slice().sort(xS);if(e=e.map(function(n){var i=[Z8(0,r,n[0],[]),Z8(1,r,n[1],[])];if(i[1]>i[0])return i}).filter(function(n){return n}),!e.length)return}return e.length>1?e:e[0]}EUe.exports={makeBrush:cHt,ensureAxisBrush:sHt,cleanRanges:hHt}});var LUe=Ae((xbr,CUe)=>{"use strict";var yx=ei(),dHt=yp().hasColorscale,pHt=rd(),vHt=zc().defaults,mHt=Jd(),yHt=wu(),kUe=DK(),gHt=OK(),qK=Pk().maxDimensionCount,_Ht=O8();function xHt(e,t,r,n,i){var a=i("line.color",r);if(dHt(e,"line")&&yx.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),pHt(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function bHt(e,t,r,n){function i(l,f){return yx.coerce(e,t,kUe.dimensions,l,f)}var a=i("values"),o=i("visible");if(a&&a.length||(o=t.visible=!1),o){i("label"),i("tickvals"),i("ticktext"),i("tickformat");var s=i("range");t._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:s},yHt.setConvert(t._ax,n.layout),i("multiselect");var u=i("constraintrange");u&&(t.constraintrange=gHt.cleanRanges(u,t))}}CUe.exports=function(t,r,n,i){function a(f,c){return yx.coerce(t,r,kUe,f,c)}var o=t.dimensions;Array.isArray(o)&&o.length>qK&&(yx.log("parcoords traces support up to "+qK+" dimensions at the moment"),o.splice(qK));var s=mHt(t,r,{name:"dimensions",layout:i,handleItemDefaults:bHt}),u=xHt(t,r,n,i,a);vHt(r,i,a),(!Array.isArray(s)||!s.length)&&(r.visible=!1),_Ht(r,s,"values",u);var l=yx.extendFlat({},i.font,{size:Math.round(i.font.size/1.2)});yx.coerceFont(a,"labelfont",l),yx.coerceFont(a,"tickfont",l,{autoShadowDflt:!0}),yx.coerceFont(a,"rangefont",l),a("labelangle"),a("labelside"),a("unselected.line.color"),a("unselected.line.opacity")}});var zUe=Ae((bbr,PUe)=>{"use strict";var wHt=ei().isArrayOrTypedArray,NK=_c(),THt=Jy().wrap;PUe.exports=function(t,r){var n,i;return NK.hasColorscale(r,"line")&&wHt(r.line.color)?(n=r.line.color,i=NK.extractOpts(r.line).colorscale,NK.calc(t,r,{vals:n,containerStr:"line",cLetter:"c"})):(n=AHt(r._length),i=[[0,r.line.color],[1,r.line.color]]),THt({lineColor:n,cscale:i})};function AHt(e){for(var t=new Array(e),r=0;r>>16,(e&65280)>>>8,e&255],alpha:1};if(typeof e=="number")return{space:"rgb",values:[e>>>16,(e&65280)>>>8,e&255],alpha:1};if(e=String(e).toLowerCase(),UK.default[e])r=UK.default[e].slice(),i="rgb";else if(e==="transparent")n=0,i="rgb",r=[0,0,0];else if(e[0]==="#"){var a=e.slice(1),o=a.length,s=o<=4;n=1,s?(r=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],o===4&&(n=parseInt(a[3]+a[3],16)/255)):(r=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],o===8&&(n=parseInt(a[6]+a[7],16)/255)),r[0]||(r[0]=0),r[1]||(r[1]=0),r[2]||(r[2]=0),i="rgb"}else if(t=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(e)){var u=t[1];i=u.replace(/a$/,"");var l=i==="cmyk"?4:i==="gray"?1:3;r=t[2].trim().split(/\s*[,\/]\s*|\s+/),i==="color"&&(i=r.shift()),r=r.map(function(h,d){if(h[h.length-1]==="%")return h=parseFloat(h)/100,d===3?h:i==="rgb"?h*255:i[0]==="h"||i[0]==="l"&&!d?h*100:i==="lab"?h*125:i==="lch"?d<2?h*150:h*360:i[0]==="o"&&!d?h:i==="oklab"?h*.4:i==="oklch"?d<2?h*.4:h*360:h;if(i[d]==="h"||d===2&&i[i.length-1]==="h"){if(IUe[h]!==void 0)return IUe[h];if(h.endsWith("deg"))return parseFloat(h);if(h.endsWith("turn"))return parseFloat(h)*360;if(h.endsWith("grad"))return parseFloat(h)*360/400;if(h.endsWith("rad"))return parseFloat(h)*180/Math.PI}return h==="none"?0:parseFloat(h)}),n=r.length>l?r.pop():1}else/[0-9](?:\s|\/|,)/.test(e)&&(r=e.match(/([0-9]+)/g).map(function(h){return parseFloat(h)}),i=((c=(f=e.match(/([a-z])/ig))==null?void 0:f.join(""))==null?void 0:c.toLowerCase())||"rgb");return{space:i,values:r,alpha:n}}var UK,RUe,IUe,DUe=tc(()=>{UK=rrt(MX(),1),RUe=SHt,IUe={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}});var zk,VK=tc(()=>{zk={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}});var Y8,FUe=tc(()=>{VK();Y8={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a,o,s,u,l=0;if(r===0)return u=n*255,[u,u,u];for(a=n<.5?n*(1+r):n+r-n*r,i=2*n-a,s=[0,0,0];l<3;)o=t+1/3*-(l-1),o<0?o++:o>1&&o--,u=6*o<1?i+(a-i)*6*o:2*o<1?a:3*o<2?i+(a-i)*(2/3-o)*6:i,s[l++]=u*255;return s}};zk.hsl=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=a-i,s,u,l;return a===i?s=0:t===a?s=(r-n)/o:r===a?s=2+(n-t)/o:n===a&&(s=4+(t-r)/o),s=Math.min(s*60,360),s<0&&(s+=360),l=(i+a)/2,a===i?u=0:l<=.5?u=o/(a+i):u=o/(2-a-i),[s,u*100,l*100]}});var OUe={};wee(OUe,{default:()=>BUe});function BUe(e){Array.isArray(e)&&e.raw&&(e=String.raw(...arguments)),e instanceof Number&&(e=+e);var t,r,n,i=RUe(e);if(!i.space)return[];let a=i.space[0]==="h"?Y8.min:zk.min,o=i.space[0]==="h"?Y8.max:zk.max;return t=Array(3),t[0]=Math.min(Math.max(i.values[0],a[0]),o[0]),t[1]=Math.min(Math.max(i.values[1],a[1]),o[1]),t[2]=Math.min(Math.max(i.values[2],a[2]),o[2]),i.space[0]==="h"&&(t=Y8.rgb(t)),t.push(Math.min(Math.max(i.alpha,0),1)),t}var qUe=tc(()=>{DUe();VK();FUe()});var GK=Ae(K8=>{"use strict";var MHt=ei().isTypedArray;K8.convertTypedArray=function(e){return MHt(e)?Array.prototype.slice.call(e):e};K8.isOrdinal=function(e){return!!e.tickvals};K8.isVisible=function(e){return e.visible||!("visible"in e)}});var YUe=Ae((Lbr,ZUe)=>{"use strict";var EHt=["precision highp float;","","varying vec4 fragColor;","","attribute vec4 p01_04, p05_08, p09_12, p13_16,"," p17_20, p21_24, p25_28, p29_32,"," p33_36, p37_40, p41_44, p45_48,"," p49_52, p53_56, p57_60, colors;","","uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,"," loA, hiA, loB, hiB, loC, hiC, loD, hiD;","","uniform vec2 resolution, viewBoxPos, viewBoxSize;","uniform float maskHeight;","uniform float drwLayer; // 0: context, 1: focus, 2: pick","uniform vec4 contextColor;","uniform sampler2D maskTexture, palette;","","bool isPick = (drwLayer > 1.5);","bool isContext = (drwLayer < 0.5);","","const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);","const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);","","float val(mat4 p, mat4 v) {"," return dot(matrixCompMult(p, v) * UNITS, UNITS);","}","","float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {"," float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);"," float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);"," return y1 * (1.0 - ratio) + y2 * ratio;","}","","int iMod(int a, int b) {"," return a - b * (a / b);","}","","bool fOutside(float p, float lo, float hi) {"," return (lo < hi) && (lo > p || p > hi);","}","","bool vOutside(vec4 p, vec4 lo, vec4 hi) {"," return ("," fOutside(p[0], lo[0], hi[0]) ||"," fOutside(p[1], lo[1], hi[1]) ||"," fOutside(p[2], lo[2], hi[2]) ||"," fOutside(p[3], lo[3], hi[3])"," );","}","","bool mOutside(mat4 p, mat4 lo, mat4 hi) {"," return ("," vOutside(p[0], lo[0], hi[0]) ||"," vOutside(p[1], lo[1], hi[1]) ||"," vOutside(p[2], lo[2], hi[2]) ||"," vOutside(p[3], lo[3], hi[3])"," );","}","","bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {"," return mOutside(A, loA, hiA) ||"," mOutside(B, loB, hiB) ||"," mOutside(C, loC, hiC) ||"," mOutside(D, loD, hiD);","}","","bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {"," mat4 pnts[4];"," pnts[0] = A;"," pnts[1] = B;"," pnts[2] = C;"," pnts[3] = D;",""," for(int i = 0; i < 4; ++i) {"," for(int j = 0; j < 4; ++j) {"," for(int k = 0; k < 4; ++k) {"," if(0 == iMod("," int(255.0 * texture2D(maskTexture,"," vec2("," (float(i * 2 + j / 2) + 0.5) / 8.0,"," (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight"," ))[3]"," ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),"," 2"," )) return true;"," }"," }"," }"," return false;","}","","vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {"," float x = 0.5 * sign(v) + 0.5;"," float y = axisY(x, A, B, C, D);"," float z = 1.0 - abs(v);",""," z += isContext ? 0.0 : 2.0 * float("," outsideBoundingBox(A, B, C, D) ||"," outsideRasterMask(A, B, C, D)"," );",""," return vec4("," 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,"," z,"," 1.0"," );","}","","void main() {"," mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);"," mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);"," mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);"," mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);",""," float v = colors[3];",""," gl_Position = position(isContext, v, A, B, C, D);",""," fragColor ="," isContext ? vec4(contextColor) :"," isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));","}"].join(` `),kHt=["precision highp float;","","varying vec4 fragColor;","","void main() {"," gl_FragColor = fragColor;","}"].join(` -`),Ik=Pk().maxDimensionCount,HUe=ei(),qUe=1e-6,K8=2048,CHt=new Uint8Array(4),NUe=new Uint8Array(4),UUe={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function LHt(e){e.read({x:0,y:0,width:1,height:1,data:CHt})}function WUe(e,t,r,n,i){var a=e._gl;a.enable(a.SCISSOR_TEST),a.scissor(t,r,n,i),e.clear({color:[0,0,0,0],depth:1})}function PHt(e,t,r,n,i,a){var o=a.key;function s(u){var l=Math.min(n,i-u*n);u===0&&(window.cancelAnimationFrame(r.currentRafs[o]),delete r.currentRafs[o],WUe(e,a.scissorX,a.scissorY,a.scissorWidth,a.viewBoxSize[1])),!r.clearOnly&&(a.count=2*l,a.offset=2*u*n,t(a),u*n+l>>8*t)%256/255}function RHt(e,t,r){for(var n=new Array(e*(Ik+4)),i=0,a=0;aj&&(j=M[B].dim1.canvasX,U=B);T===0&&WUe(i,0,0,l.canvasWidth,l.canvasHeight);var H=E(r);for(B=0;B{"use strict";var Ud=Jl(),l1=ei(),HK=l1.isArrayOrTypedArray,eVe=l1.numberFormat,tVe=(OUe(),ob(BUe)).default,rVe=wu(),qHt=l1.strRotate,$y=l1.strTranslate,NHt=Xf(),J8=Mu(),YUe=_c(),XK=Jy(),tm=XK.keyFun,Qy=XK.repeat,iVe=XK.unwrap,xS=VK(),Nf=Pk(),nVe=BK(),UHt=ZUe();function KUe(e,t,r){return l1.aggNums(e,null,t,r)}function aVe(e,t){return ZK(KUe(Math.min,e,t),KUe(Math.max,e,t))}function $8(e){var t=e.range;return t?ZK(t[0],t[1]):aVe(e.values,e._length)}function ZK(e,t){return(isNaN(e)||!isFinite(e))&&(e=0),(isNaN(t)||!isFinite(t))&&(t=0),e===t&&(e===0?(e-=1,t+=1):(e*=.9,t*=1.1)),[e,t]}function VHt(e,t){return t?function(r,n){var i=t[n];return i==null?e(r):i}:e}function GHt(e,t,r,n,i){var a=$8(r);return n?Ud.scale.ordinal().domain(n.map(VHt(eVe(r.tickformat),i))).range(n.map(function(o){var s=(o-a[0])/(a[1]-a[0]);return e-t+s*(2*t-e)})):Ud.scale.linear().domain(a).range([e-t,t])}function HHt(e,t){return Ud.scale.linear().range([t,e-t])}function WHt(e,t){return Ud.scale.linear().domain($8(e)).range([t,1-t])}function jHt(e){if(e.tickvals){var t=$8(e);return Ud.scale.ordinal().domain(e.tickvals).range(e.tickvals.map(function(r){return(r-t[0])/(t[1]-t[0])}))}}function XHt(e){var t=e.map(function(a){return a[0]}),r=e.map(function(a){var o=tVe(a[1]);return Ud.rgb("rgb("+o[0]+","+o[1]+","+o[2]+")")}),n=function(a){return function(o){return o[a]}},i="rgb".split("").map(function(a){return Ud.scale.linear().clamp(!0).domain(t).range(r.map(n(a)))});return function(a){return i.map(function(o){return o(a)})}}function jK(e){return e.dimensions.some(function(t){return t.brush.filterSpecified})}function ZHt(e,t,r){var n=iVe(t),i=n.trace,a=xS.convertTypedArray(n.lineColor),o=i.line,s={color:tVe(i.unselected.line.color),opacity:i.unselected.line.opacity},u=YUe.extractOpts(o),l=u.reversescale?YUe.flipScale(n.cscale):n.cscale,f=i.domain,c=i.dimensions,h=e.width,d=i.labelangle,p=i.labelside,_=i.labelfont,b=i.tickfont,v=i.rangefont,k=l1.extendDeepNoArrays({},o,{color:a.map(Ud.scale.linear().domain($8({values:a,range:[u.min,u.max],_length:i._length}))),blockLineCount:Nf.blockLineCount,canvasOverdrag:Nf.overdrag*Nf.canvasPixelRatio}),E=Math.floor(h*(f.x[1]-f.x[0])),A=Math.floor(e.height*(f.y[1]-f.y[0])),L=e.margin||{l:80,r:80,t:100,b:80},x=E,C=A;return{key:r,colCount:c.filter(xS.isVisible).length,dimensions:c,tickDistance:Nf.tickDistance,unitToColor:XHt(l),lines:k,deselectedLines:s,labelAngle:d,labelSide:p,labelFont:_,tickFont:b,rangeFont:v,layoutWidth:h,layoutHeight:e.height,domain:f,translateX:f.x[0]*h,translateY:e.height-f.y[1]*e.height,pad:L,canvasWidth:x*Nf.canvasPixelRatio+2*k.canvasOverdrag,canvasHeight:C*Nf.canvasPixelRatio,width:x,height:C,canvasPixelRatio:Nf.canvasPixelRatio}}function YHt(e,t,r){var n=r.width,i=r.height,a=r.dimensions,o=r.canvasPixelRatio,s=function(h){return n*h/Math.max(1,r.colCount-1)},u=Nf.verticalPadding/i,l=HHt(i,Nf.verticalPadding),f={key:r.key,xScale:s,model:r,inBrushDrag:!1},c={};return f.dimensions=a.filter(xS.isVisible).map(function(h,d){var p=WHt(h,u),_=c[h.label];c[h.label]=(_||0)+1;var b=h.label+(_?"__"+_:""),v=h.constraintrange,k=v&&v.length;k&&!HK(v[0])&&(v=[v]);var E=k?v.map(function(F){return F.map(p)}):[[-1/0,1/0]],A=function(){var F=f;F.focusLayer&&F.focusLayer.render(F.panels,!0);var U=jK(F);!e.contextShown()&&U?(F.contextLayer&&F.contextLayer.render(F.panels,!0),e.contextShown(!0)):e.contextShown()&&!U&&(F.contextLayer&&F.contextLayer.render(F.panels,!0,!0),e.contextShown(!1))},L=h.values;L.length>h._length&&(L=L.slice(0,h._length));var x=h.tickvals,C;function M(F,U){return{val:F,text:C[U]}}function m(F,U){return F.val-U.val}if(HK(x)&&x.length){l1.isTypedArray(x)&&(x=Array.from(x)),C=h.ticktext,!HK(C)||!C.length?C=x.map(eVe(h.tickformat)):C.length>x.length?C=C.slice(0,x.length):x.length>C.length&&(x=x.slice(0,C.length));for(var P=1;P=U||N>=G)return;var W=B.lineLayer.readPixel(H,G-1-N),re=W[3]!==0,ae=re?W[2]+256*(W[1]+256*W[0]):null,be={x:H,y:N,clientX:F.clientX,clientY:F.clientY,dataIndex:B.model.key,curveNumber:ae};ae!==p&&(re?i.hover(be):i.unhover&&i.unhover(be),p=ae)}}),d.style("opacity",function(B){return B.pick?0:1}),s.style("background","rgba(255, 255, 255, 0)");var b=s.selectAll("."+Nf.cn.parcoords).data(h,tm);b.exit().remove(),b.enter().append("g").classed(Nf.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),b.attr("transform",function(B){return $y(B.model.translateX,B.model.translateY)});var v=b.selectAll("."+Nf.cn.parcoordsControlView).data(Qy,tm);v.enter().append("g").classed(Nf.cn.parcoordsControlView,!0),v.attr("transform",function(B){return $y(B.model.pad.l,B.model.pad.t)});var k=v.selectAll("."+Nf.cn.yAxis).data(function(B){return B.dimensions},tm);k.enter().append("g").classed(Nf.cn.yAxis,!0),v.each(function(B){WK(k,B,l)}),d.each(function(B){if(B.viewModel){!B.lineLayer||i?B.lineLayer=UHt(this,B):B.lineLayer.update(B),(B.key||B.key===0)&&(B.viewModel[B.key]=B.lineLayer);var F=!B.context||i;B.lineLayer.render(B.viewModel.panels,F)}}),k.attr("transform",function(B){return $y(B.xScale(B.xIndex),0)}),k.call(Ud.behavior.drag().origin(function(B){return B}).on("drag",function(B){var F=B.parent;c.linePickActive(!1),B.x=Math.max(-Nf.overdrag,Math.min(B.model.width+Nf.overdrag,Ud.event.x)),B.canvasX=B.x*B.model.canvasPixelRatio,k.sort(function(U,G){return U.x-G.x}).each(function(U,G){U.xIndex=G,U.x=B===U?U.x:U.xScale(U.xIndex),U.canvasX=U.x*U.model.canvasPixelRatio}),WK(k,F,l),k.filter(function(U){return Math.abs(B.xIndex-U.xIndex)!==0}).attr("transform",function(U){return $y(U.xScale(U.xIndex),0)}),Ud.select(this).attr("transform",$y(B.x,0)),k.each(function(U,G,j){j===B.parent.key&&(F.dimensions[G]=U)}),F.contextLayer&&F.contextLayer.render(F.panels,!1,!jK(F)),F.focusLayer.render&&F.focusLayer.render(F.panels)}).on("dragend",function(B){var F=B.parent;B.x=B.xScale(B.xIndex),B.canvasX=B.x*B.model.canvasPixelRatio,WK(k,F,l),Ud.select(this).attr("transform",function(U){return $y(U.x,0)}),F.contextLayer&&F.contextLayer.render(F.panels,!1,!jK(F)),F.focusLayer&&F.focusLayer.render(F.panels),F.pickLayer&&F.pickLayer.render(F.panels,!0),c.linePickActive(!0),i&&i.axesMoved&&i.axesMoved(F.key,F.dimensions.map(function(U){return U.crossfilterDimensionIndex}))})),k.exit().remove();var E=k.selectAll("."+Nf.cn.axisOverlays).data(Qy,tm);E.enter().append("g").classed(Nf.cn.axisOverlays,!0),E.selectAll("."+Nf.cn.axis).remove();var A=E.selectAll("."+Nf.cn.axis).data(Qy,tm);A.enter().append("g").classed(Nf.cn.axis,!0),A.each(function(B){var F=B.model.height/B.model.tickDistance,U=B.domainScale,G=U.domain();Ud.select(this).call(Ud.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(F,B.tickFormat).tickValues(B.ordinal?G:null).tickFormat(function(j){return xS.isOrdinal(B)?j:oVe(B.model.dimensions[B.visibleIndex],j)}).scale(U)),J8.font(A.selectAll("text"),B.model.tickFont)}),A.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),A.selectAll("text").style("cursor","default");var L=E.selectAll("."+Nf.cn.axisHeading).data(Qy,tm);L.enter().append("g").classed(Nf.cn.axisHeading,!0);var x=L.selectAll("."+Nf.cn.axisTitle).data(Qy,tm);x.enter().append("text").classed(Nf.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",a?"none":"auto"),x.text(function(B){return B.label}).each(function(B){var F=Ud.select(this);J8.font(F,B.model.labelFont),NHt.convertToTspans(F,t)}).attr("transform",function(B){var F=$Ue(B.model.labelAngle,B.model.labelSide),U=Nf.axisTitleOffset;return(F.dir>0?"":$y(0,2*U+B.model.height))+qHt(F.degrees)+$y(-U*F.dx,-U*F.dy)}).attr("text-anchor",function(B){var F=$Ue(B.model.labelAngle,B.model.labelSide),U=Math.abs(F.dx),G=Math.abs(F.dy);return 2*U>G?F.dir*F.dx<0?"start":"end":"middle"});var C=E.selectAll("."+Nf.cn.axisExtent).data(Qy,tm);C.enter().append("g").classed(Nf.cn.axisExtent,!0);var M=C.selectAll("."+Nf.cn.axisExtentTop).data(Qy,tm);M.enter().append("g").classed(Nf.cn.axisExtentTop,!0),M.attr("transform",$y(0,-Nf.axisExtentOffset));var m=M.selectAll("."+Nf.cn.axisExtentTopText).data(Qy,tm);m.enter().append("text").classed(Nf.cn.axisExtentTopText,!0).call(JUe),m.text(function(B){return QUe(B,!0)}).each(function(B){J8.font(Ud.select(this),B.model.rangeFont)});var P=C.selectAll("."+Nf.cn.axisExtentBottom).data(Qy,tm);P.enter().append("g").classed(Nf.cn.axisExtentBottom,!0),P.attr("transform",function(B){return $y(0,B.model.height+Nf.axisExtentOffset)});var T=P.selectAll("."+Nf.cn.axisExtentBottomText).data(Qy,tm);T.enter().append("text").classed(Nf.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(JUe),T.text(function(B){return QUe(B,!1)}).each(function(B){J8.font(Ud.select(this),B.model.rangeFont)}),nVe.ensureAxisBrush(E,f,t)}});var KK=Ae((YK,hVe)=>{"use strict";var $Ht=lVe(),QHt=S8(),uVe=VK().isVisible,cVe={};function fVe(e,t,r){var n=t.indexOf(r),i=e.indexOf(n);return i===-1&&(i+=t.length),i}function eWt(e,t){return function(n,i){return fVe(e,t,n)-fVe(e,t,i)}}var YK=hVe.exports=function(t,r){var n=t._fullLayout,i=QHt(t,[],cVe);if(i){var a={},o={},s={},u={},l=n._size;r.forEach(function(p,_){var b=p[0].trace;s[_]=b.index;var v=u[_]=b.index;a[_]=t.data[v].dimensions,o[_]=t.data[v].dimensions.slice()});var f=function(p,_,b){var v=o[p][_],k=b.map(function(M){return M.slice()}),E="dimensions["+_+"].constraintrange",A=n._tracePreGUI[t._fullData[s[p]]._fullInput.uid];if(A[E]===void 0){var L=v.constraintrange;A[E]=L||null}var x=t._fullData[s[p]].dimensions[_];k.length?(k.length===1&&(k=k[0]),v.constraintrange=k,x.constraintrange=k.slice(),k=[k]):(delete v.constraintrange,delete x.constraintrange,k=null);var C={};C[E]=k,t.emit("plotly_restyle",[C,[u[p]]])},c=function(p){t.emit("plotly_hover",p)},h=function(p){t.emit("plotly_unhover",p)},d=function(p,_){var b=eWt(_,o[p].filter(uVe));a[p].sort(b),o[p].filter(function(v){return!uVe(v)}).sort(function(v){return o[p].indexOf(v)}).forEach(function(v){a[p].splice(a[p].indexOf(v),1),a[p].splice(o[p].indexOf(v),0,v)}),t.emit("plotly_restyle",[{dimensions:[a[p]]},[u[p]]])};$Ht(t,r,{width:l.w,height:l.h,margin:{t:l.t,r:l.r,b:l.b,l:l.l}},{filterChanged:f,hover:c,unhover:h,axesMoved:d})}};YK.reglPrecompiled=cVe});var pVe=Ae(Rk=>{"use strict";var dVe=Jl(),tWt=Rd().getModuleCalcData,rWt=KK(),iWt=jv();Rk.name="parcoords";Rk.plot=function(e){var t=tWt(e.calcdata,"parcoords")[0];t.length&&rWt(e,t)};Rk.clean=function(e,t,r,n){var i=n._has&&n._has("parcoords"),a=t._has&&t._has("parcoords");i&&!a&&(n._paperdiv.selectAll(".parcoords").remove(),n._glimages.selectAll("*").remove())};Rk.toSVG=function(e){var t=e._fullLayout._glimages,r=dVe.select(e).selectAll(".svg-container"),n=r.filter(function(a,o){return o===r.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function i(){var a=this,o=a.toDataURL("image/png"),s=t.append("svg:image");s.attr({xmlns:iWt.svg,"xlink:href":o,preserveAspectRatio:"none",x:0,y:0,width:a.style.width,height:a.style.height})}n.each(i),window.setTimeout(function(){dVe.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}});var mVe=Ae((Ibr,vVe)=>{"use strict";vVe.exports={attributes:RK(),supplyDefaults:CUe(),calc:PUe(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:pVe(),categories:["gl","regl","noOpacity","noHover"],meta:{}}});var gVe=Ae((Rbr,yVe)=>{yVe.exports=function(t,r){"use strict";var n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr;return n=t.gl,i=t.context,a=t.strings,o=t.next,s=t.current,u=t.draw,l=t.elements,f=t.buffer,c=t.shader,h=t.attributes,d=t.vao,p=t.uniforms,_=t.framebuffer,b=t.extensions,v=t.timer,k=t.isBufferArgs,E=o.blend_color,A=s.blend_color,L=o.blend_equation,x=s.blend_equation,C=o.blend_func,M=s.blend_func,m=o.depth_range,P=s.depth_range,T=o.colorMask,B=s.colorMask,F=o.polygonOffset_offset,U=s.polygonOffset_offset,G=o.sample_coverage,j=s.sample_coverage,H=o.stencil_func,N=s.stencil_func,W=o.stencil_opFront,re=s.stencil_opFront,ae=o.stencil_opBack,be=s.stencil_opBack,ze=o.scissor_box,Ce=s.scissor_box,de=o.viewport,te=s.viewport,ke={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ee={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Me={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Ue={add:32774,subtract:32778,"reverse subtract":32779},De={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ye={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},qe={cw:2304,ccw:2305},ce=o.blend_color,Je=s.blend_color,nt=o.blend_equation,gt=s.blend_equation,Nt=o.blend_func,at=s.blend_func,Ke=o.depth_range,Ct=s.depth_range,wt=o.colorMask,St=s.colorMask,Dt=o.polygonOffset_offset,Zt=s.polygonOffset_offset,Et=o.sample_coverage,Te=s.sample_coverage,ot=o.stencil_func,Tt=s.stencil_func,vt=o.stencil_opFront,Ye=s.stencil_opFront,He=o.stencil_opBack,it=s.stencil_opBack,et=o.scissor_box,It=s.scissor_box,Yt=o.viewport,cr=s.viewport,{poll:function(){var _r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di;s.dirty=!1,yr=o.dither,Ut=o.blend_enable,Re=o.depth_enable,xe=o.cull_enable,Oe=o.polygonOffset_enable,Ie=o.sample_alpha,Fe=o.sample_enable,ft=o.stencil_enable,ge=o.scissor_enable,fe=o.depth_func,pe=s.depth_func,dt=o.depth_mask,Pt=s.depth_mask,zt=o.cull_face,rr=s.cull_face,Gr=o.frontFace,Br=s.frontFace,Er=o.lineWidth,Rr=s.lineWidth,pi=o.stencil_mask,Di=s.stencil_mask,_r=_.next,_r!==_.cur&&(_r?n.bindFramebuffer(36160,_r.framebuffer):n.bindFramebuffer(36160,null),_.cur=_r),yr!==s.dither&&(yr?n.enable(3024):n.disable(3024),s.dither=yr),Ut!==s.blend_enable&&(Ut?n.enable(3042):n.disable(3042),s.blend_enable=Ut),Re!==s.depth_enable&&(Re?n.enable(2929):n.disable(2929),s.depth_enable=Re),xe!==s.cull_enable&&(xe?n.enable(2884):n.disable(2884),s.cull_enable=xe),Oe!==s.polygonOffset_enable&&(Oe?n.enable(32823):n.disable(32823),s.polygonOffset_enable=Oe),Ie!==s.sample_alpha&&(Ie?n.enable(32926):n.disable(32926),s.sample_alpha=Ie),Fe!==s.sample_enable&&(Fe?n.enable(32928):n.disable(32928),s.sample_enable=Fe),ft!==s.stencil_enable&&(ft?n.enable(2960):n.disable(2960),s.stencil_enable=ft),ge!==s.scissor_enable&&(ge?n.enable(3089):n.disable(3089),s.scissor_enable=ge),(ce[0]!==Je[0]||ce[1]!==Je[1]||ce[2]!==Je[2]||ce[3]!==Je[3])&&(n.blendColor(ce[0],ce[1],ce[2],ce[3]),Je[0]=ce[0],Je[1]=ce[1],Je[2]=ce[2],Je[3]=ce[3]),(nt[0]!==gt[0]||nt[1]!==gt[1])&&(n.blendEquationSeparate(nt[0],nt[1]),gt[0]=nt[0],gt[1]=nt[1]),(Nt[0]!==at[0]||Nt[1]!==at[1]||Nt[2]!==at[2]||Nt[3]!==at[3])&&(n.blendFuncSeparate(Nt[0],Nt[1],Nt[2],Nt[3]),at[0]=Nt[0],at[1]=Nt[1],at[2]=Nt[2],at[3]=Nt[3]),fe!==pe&&(n.depthFunc(fe),s.depth_func=fe),(Ke[0]!==Ct[0]||Ke[1]!==Ct[1])&&(n.depthRange(Ke[0],Ke[1]),Ct[0]=Ke[0],Ct[1]=Ke[1]),dt!==Pt&&(n.depthMask(dt),s.depth_mask=dt),(wt[0]!==St[0]||wt[1]!==St[1]||wt[2]!==St[2]||wt[3]!==St[3])&&(n.colorMask(wt[0],wt[1],wt[2],wt[3]),St[0]=wt[0],St[1]=wt[1],St[2]=wt[2],St[3]=wt[3]),zt!==rr&&(n.cullFace(zt),s.cull_face=zt),Gr!==Br&&(n.frontFace(Gr),s.frontFace=Gr),Er!==Rr&&(n.lineWidth(Er),s.lineWidth=Er),(Dt[0]!==Zt[0]||Dt[1]!==Zt[1])&&(n.polygonOffset(Dt[0],Dt[1]),Zt[0]=Dt[0],Zt[1]=Dt[1]),(Et[0]!==Te[0]||Et[1]!==Te[1])&&(n.sampleCoverage(Et[0],Et[1]),Te[0]=Et[0],Te[1]=Et[1]),pi!==Di&&(n.stencilMask(pi),s.stencil_mask=pi),(ot[0]!==Tt[0]||ot[1]!==Tt[1]||ot[2]!==Tt[2])&&(n.stencilFunc(ot[0],ot[1],ot[2]),Tt[0]=ot[0],Tt[1]=ot[1],Tt[2]=ot[2]),(vt[0]!==Ye[0]||vt[1]!==Ye[1]||vt[2]!==Ye[2]||vt[3]!==Ye[3])&&(n.stencilOpSeparate(vt[0],vt[1],vt[2],vt[3]),Ye[0]=vt[0],Ye[1]=vt[1],Ye[2]=vt[2],Ye[3]=vt[3]),(He[0]!==it[0]||He[1]!==it[1]||He[2]!==it[2]||He[3]!==it[3])&&(n.stencilOpSeparate(He[0],He[1],He[2],He[3]),it[0]=He[0],it[1]=He[1],it[2]=He[2],it[3]=He[3]),(et[0]!==It[0]||et[1]!==It[1]||et[2]!==It[2]||et[3]!==It[3])&&(n.scissor(et[0],et[1],et[2],et[3]),It[0]=et[0],It[1]=et[1],It[2]=et[2],It[3]=et[3]),(Yt[0]!==cr[0]||Yt[1]!==cr[1]||Yt[2]!==cr[2]||Yt[3]!==cr[3])&&(n.viewport(Yt[0],Yt[1],Yt[2],Yt[3]),cr[0]=Yt[0],cr[1]=Yt[1],cr[2]=Yt[2],cr[3]=Yt[3])},refresh:function(){var _r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i;s.dirty=!1,Re=o.dither,xe=o.blend_enable,Oe=o.depth_enable,Ie=o.cull_enable,Fe=o.polygonOffset_enable,ft=o.sample_alpha,ge=o.sample_enable,fe=o.stencil_enable,pe=o.scissor_enable,dt=o.depth_func,Pt=s.depth_func,zt=o.depth_mask,rr=s.depth_mask,Gr=o.cull_face,Br=s.cull_face,Er=o.frontFace,Rr=s.frontFace,pi=o.lineWidth,Di=s.lineWidth,ni=o.stencil_mask,$i=s.stencil_mask,_r=_.next,_r?n.bindFramebuffer(36160,_r.framebuffer):n.bindFramebuffer(36160,null),_.cur=_r,yr=h,Ut=0;for(var Qi=0;Qi{_Ve.exports=function(t,r,n,i,a,o,s,u){"use strict";var l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct;return l=t.gl,f=t.context,c=t.strings,h=t.next,d=t.current,p=t.draw,_=t.elements,b=t.buffer,v=t.shader,k=t.attributes,E=t.vao,A=t.uniforms,L=t.framebuffer,x=t.extensions,C=t.timer,M=t.isBufferArgs,m=h.blend_color,P=d.blend_color,T=h.blend_equation,B=d.blend_equation,F=h.blend_func,U=d.blend_func,G=h.depth_range,j=d.depth_range,H=h.colorMask,N=d.colorMask,W=h.polygonOffset_offset,re=d.polygonOffset_offset,ae=h.sample_coverage,be=d.sample_coverage,ze=h.stencil_func,Ce=d.stencil_func,de=h.stencil_opFront,te=d.stencil_opFront,ke=h.stencil_opBack,Ee=d.stencil_opBack,Me=h.scissor_box,Ue=d.scissor_box,De=h.viewport,ye=d.viewport,qe={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},ce={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Je={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},nt={add:32774,subtract:32778,"reverse subtract":32779},gt={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Nt={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},at={cw:2304,ccw:2305},Ke={},Ct={},{draw:function(wt){var St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut;if(St=wt.framebuffer,Dt=L.getFramebuffer(St),Zt=L.next,L.next=Dt,Et=f.framebufferWidth,f.framebufferWidth=Dt?Dt.width:f.drawingBufferWidth,Te=f.framebufferHeight,f.framebufferHeight=Dt?Dt.height:f.drawingBufferHeight,Dt!==L.cur&&(Dt?l.bindFramebuffer(36160,Dt.framebuffer):l.bindFramebuffer(36160,null),L.cur=Dt),d.dirty){var Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri;Re=h.dither,Re!==d.dither&&(Re?l.enable(3024):l.disable(3024),d.dither=Re),xe=h.blend_enable,xe!==d.blend_enable&&(xe?l.enable(3042):l.disable(3042),d.blend_enable=xe),Oe=m[0],Ie=m[1],Fe=m[2],ft=m[3],(Oe!==P[0]||Ie!==P[1]||Fe!==P[2]||ft!==P[3])&&(l.blendColor(Oe,Ie,Fe,ft),P[0]=Oe,P[1]=Ie,P[2]=Fe,P[3]=ft),ge=T[0],fe=T[1],(ge!==B[0]||fe!==B[1])&&(l.blendEquationSeparate(ge,fe),B[0]=ge,B[1]=fe),pe=F[0],dt=F[1],Pt=F[2],zt=F[3],(pe!==U[0]||dt!==U[1]||Pt!==U[2]||zt!==U[3])&&(l.blendFuncSeparate(pe,dt,Pt,zt),U[0]=pe,U[1]=dt,U[2]=Pt,U[3]=zt),rr=h.depth_enable,rr!==d.depth_enable&&(rr?l.enable(2929):l.disable(2929),d.depth_enable=rr),Gr=h.depth_func,Gr!==d.depth_func&&(l.depthFunc(Gr),d.depth_func=Gr),Br=G[0],Er=G[1],(Br!==j[0]||Er!==j[1])&&(l.depthRange(Br,Er),j[0]=Br,j[1]=Er),Rr=h.depth_mask,Rr!==d.depth_mask&&(l.depthMask(Rr),d.depth_mask=Rr),pi=H[0],Di=H[1],ni=H[2],$i=H[3],(pi!==N[0]||Di!==N[1]||ni!==N[2]||$i!==N[3])&&(l.colorMask(pi,Di,ni,$i),N[0]=pi,N[1]=Di,N[2]=ni,N[3]=$i),Qi=h.cull_enable,Qi!==d.cull_enable&&(Qi?l.enable(2884):l.disable(2884),d.cull_enable=Qi),si=h.cull_face,si!==d.cull_face&&(l.cullFace(si),d.cull_face=si),Ai=h.frontFace,Ai!==d.frontFace&&(l.frontFace(Ai),d.frontFace=Ai),Ni=h.lineWidth,Ni!==d.lineWidth&&(l.lineWidth(Ni),d.lineWidth=Ni),Rt=h.polygonOffset_enable,Rt!==d.polygonOffset_enable&&(Rt?l.enable(32823):l.disable(32823),d.polygonOffset_enable=Rt),yt=W[0],Gt=W[1],(yt!==re[0]||Gt!==re[1])&&(l.polygonOffset(yt,Gt),re[0]=yt,re[1]=Gt),Wt=h.sample_alpha,Wt!==d.sample_alpha&&(Wt?l.enable(32926):l.disable(32926),d.sample_alpha=Wt),xr=h.sample_enable,xr!==d.sample_enable&&(xr?l.enable(32928):l.disable(32928),d.sample_enable=xr),Lr=ae[0],Nr=ae[1],(Lr!==be[0]||Nr!==be[1])&&(l.sampleCoverage(Lr,Nr),be[0]=Lr,be[1]=Nr),Or=h.stencil_enable,Or!==d.stencil_enable&&(Or?l.enable(2960):l.disable(2960),d.stencil_enable=Or),Hr=h.stencil_mask,Hr!==d.stencil_mask&&(l.stencilMask(Hr),d.stencil_mask=Hr),jr=ze[0],gi=ze[1],ki=ze[2],(jr!==Ce[0]||gi!==Ce[1]||ki!==Ce[2])&&(l.stencilFunc(jr,gi,ki),Ce[0]=jr,Ce[1]=gi,Ce[2]=ki),Vi=de[0],ti=de[1],tn=de[2],Yr=de[3],(Vi!==te[0]||ti!==te[1]||tn!==te[2]||Yr!==te[3])&&(l.stencilOpSeparate(Vi,ti,tn,Yr),te[0]=Vi,te[1]=ti,te[2]=tn,te[3]=Yr),oi=ke[0],Fi=ke[1],an=ke[2],nn=ke[3],(oi!==Ee[0]||Fi!==Ee[1]||an!==Ee[2]||nn!==Ee[3])&&(l.stencilOpSeparate(oi,Fi,an,nn),Ee[0]=oi,Ee[1]=Fi,Ee[2]=an,Ee[3]=nn),Ri=h.scissor_enable,Ri!==d.scissor_enable&&(Ri?l.enable(3089):l.disable(3089),d.scissor_enable=Ri)}ot=f.framebufferWidth,Tt=f.framebufferHeight,vt=f.viewportWidth,f.viewportWidth=ot,Ye=f.viewportHeight,f.viewportHeight=Tt,l.viewport(0,0,ot,Tt),ye[0]=0,ye[1]=0,ye[2]=ot,ye[3]=Tt,He=f.framebufferWidth,it=f.framebufferHeight,l.scissor(0,0,He,it),Ue[0]=0,Ue[1]=0,Ue[2]=He,Ue[3]=it,et=d.profile,et&&(It=performance.now(),r.count++),Yt=v.frag,cr=v.vert,_r=v.program(cr,Yt),l.useProgram(_r.program),E.setVAO(null),yr=_r.id,Ut=Ke[yr],Ut?Ut.call(this,wt):(Ut=Ke[yr]=n(_r),Ut.call(this,wt)),d.dirty=!0,E.setVAO(null),L.next=Zt,f.framebufferWidth=Et,f.framebufferHeight=Te,f.viewportWidth=vt,f.viewportHeight=Ye,et&&(r.cpuTime+=performance.now()-It)},scope:function(wt,St,Dt){var Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe;Zt=wt.framebuffer,Et=L.getFramebuffer(Zt),Te=L.next,L.next=Et,ot=f.framebufferWidth,f.framebufferWidth=Et?Et.width:f.drawingBufferWidth,Tt=f.framebufferHeight,f.framebufferHeight=Et?Et.height:f.drawingBufferHeight,vt=f.framebufferWidth,Ye=f.framebufferHeight,He=f.viewportWidth,f.viewportWidth=vt,it=f.viewportHeight,f.viewportHeight=Ye,et=De[0],De[0]=i,It=De[1],De[1]=a,Yt=De[2],De[2]=vt,cr=De[3],De[3]=Ye,_r=f.framebufferWidth,yr=f.framebufferHeight,Ut=Me[0],Me[0]=o,Re=Me[1],Me[1]=s,xe=Me[2],Me[2]=_r,Oe=Me[3],Me[3]=yr,Ie=d.profile,Ie&&(Fe=performance.now(),r.count++),d.dirty=!0,St(f,wt,Dt),L.next=Te,f.framebufferWidth=ot,f.framebufferHeight=Tt,f.viewportWidth=He,f.viewportHeight=it,De[0]=et,De[1]=It,De[2]=Yt,De[3]=cr,Me[0]=Ut,Me[1]=Re,Me[2]=xe,Me[3]=Oe,Ie&&(r.cpuTime+=performance.now()-Fe),d.dirty=!0},batch:function(wt,St){var Dt,Zt,Et,Te,ot,Tt,vt;if(d.dirty){var Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi;Ye=h.dither,Ye!==d.dither&&(Ye?l.enable(3024):l.disable(3024),d.dither=Ye),He=h.blend_enable,He!==d.blend_enable&&(He?l.enable(3042):l.disable(3042),d.blend_enable=He),it=m[0],et=m[1],It=m[2],Yt=m[3],(it!==P[0]||et!==P[1]||It!==P[2]||Yt!==P[3])&&(l.blendColor(it,et,It,Yt),P[0]=it,P[1]=et,P[2]=It,P[3]=Yt),cr=T[0],_r=T[1],(cr!==B[0]||_r!==B[1])&&(l.blendEquationSeparate(cr,_r),B[0]=cr,B[1]=_r),yr=F[0],Ut=F[1],Re=F[2],xe=F[3],(yr!==U[0]||Ut!==U[1]||Re!==U[2]||xe!==U[3])&&(l.blendFuncSeparate(yr,Ut,Re,xe),U[0]=yr,U[1]=Ut,U[2]=Re,U[3]=xe),Oe=h.depth_enable,Oe!==d.depth_enable&&(Oe?l.enable(2929):l.disable(2929),d.depth_enable=Oe),Ie=h.depth_func,Ie!==d.depth_func&&(l.depthFunc(Ie),d.depth_func=Ie),Fe=G[0],ft=G[1],(Fe!==j[0]||ft!==j[1])&&(l.depthRange(Fe,ft),j[0]=Fe,j[1]=ft),ge=h.depth_mask,ge!==d.depth_mask&&(l.depthMask(ge),d.depth_mask=ge),fe=H[0],pe=H[1],dt=H[2],Pt=H[3],(fe!==N[0]||pe!==N[1]||dt!==N[2]||Pt!==N[3])&&(l.colorMask(fe,pe,dt,Pt),N[0]=fe,N[1]=pe,N[2]=dt,N[3]=Pt),zt=h.cull_enable,zt!==d.cull_enable&&(zt?l.enable(2884):l.disable(2884),d.cull_enable=zt),rr=h.cull_face,rr!==d.cull_face&&(l.cullFace(rr),d.cull_face=rr),Gr=h.frontFace,Gr!==d.frontFace&&(l.frontFace(Gr),d.frontFace=Gr),Br=h.lineWidth,Br!==d.lineWidth&&(l.lineWidth(Br),d.lineWidth=Br),Er=h.polygonOffset_enable,Er!==d.polygonOffset_enable&&(Er?l.enable(32823):l.disable(32823),d.polygonOffset_enable=Er),Rr=W[0],pi=W[1],(Rr!==re[0]||pi!==re[1])&&(l.polygonOffset(Rr,pi),re[0]=Rr,re[1]=pi),Di=h.sample_alpha,Di!==d.sample_alpha&&(Di?l.enable(32926):l.disable(32926),d.sample_alpha=Di),ni=h.sample_enable,ni!==d.sample_enable&&(ni?l.enable(32928):l.disable(32928),d.sample_enable=ni),$i=ae[0],Qi=ae[1],($i!==be[0]||Qi!==be[1])&&(l.sampleCoverage($i,Qi),be[0]=$i,be[1]=Qi),si=h.stencil_enable,si!==d.stencil_enable&&(si?l.enable(2960):l.disable(2960),d.stencil_enable=si),Ai=h.stencil_mask,Ai!==d.stencil_mask&&(l.stencilMask(Ai),d.stencil_mask=Ai),Ni=ze[0],Rt=ze[1],yt=ze[2],(Ni!==Ce[0]||Rt!==Ce[1]||yt!==Ce[2])&&(l.stencilFunc(Ni,Rt,yt),Ce[0]=Ni,Ce[1]=Rt,Ce[2]=yt),Gt=de[0],Wt=de[1],xr=de[2],Lr=de[3],(Gt!==te[0]||Wt!==te[1]||xr!==te[2]||Lr!==te[3])&&(l.stencilOpSeparate(Gt,Wt,xr,Lr),te[0]=Gt,te[1]=Wt,te[2]=xr,te[3]=Lr),Nr=ke[0],Or=ke[1],Hr=ke[2],jr=ke[3],(Nr!==Ee[0]||Or!==Ee[1]||Hr!==Ee[2]||jr!==Ee[3])&&(l.stencilOpSeparate(Nr,Or,Hr,jr),Ee[0]=Nr,Ee[1]=Or,Ee[2]=Hr,Ee[3]=jr),gi=h.scissor_enable,gi!==d.scissor_enable&&(gi?l.enable(3089):l.disable(3089),d.scissor_enable=gi)}Dt=d.profile,Dt&&(Zt=performance.now(),r.count+=St),Et=v.frag,Te=v.vert,ot=v.program(Te,Et),l.useProgram(ot.program),E.setVAO(null),Tt=ot.id,vt=Ct[Tt],vt?vt.call(this,wt,St):(vt=Ct[Tt]=u(ot),vt.call(this,wt,St)),d.dirty=!0,E.setVAO(null),Dt&&(r.cpuTime+=performance.now()-Zt)}}}});var wVe=Ae((Fbr,bVe)=>{bVe.exports=function(t,r,n,i){"use strict";var a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt;return a=t.gl,o=t.context,s=t.strings,u=t.next,l=t.current,f=t.draw,c=t.elements,h=t.buffer,d=t.shader,p=t.attributes,_=t.vao,b=t.uniforms,v=t.framebuffer,k=t.extensions,E=t.timer,A=t.isBufferArgs,L=u.blend_color,x=l.blend_color,C=u.blend_equation,M=l.blend_equation,m=u.blend_func,P=l.blend_func,T=u.depth_range,B=l.depth_range,F=u.colorMask,U=l.colorMask,G=u.polygonOffset_offset,j=l.polygonOffset_offset,H=u.sample_coverage,N=l.sample_coverage,W=u.stencil_func,re=l.stencil_func,ae=u.stencil_opFront,be=l.stencil_opFront,ze=u.stencil_opBack,Ce=l.stencil_opBack,de=u.scissor_box,te=l.scissor_box,ke=u.viewport,Ee=l.viewport,Me={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ue={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},De={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},ye={add:32774,subtract:32778,"reverse subtract":32779},qe={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ce={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Je={cw:2304,ccw:2305},nt={},gt={},{draw:function(Nt){var at,Ke,Ct,wt,St,Dt,Zt,Et;if(at=v.next,at!==v.cur&&(at?a.bindFramebuffer(36160,at.framebuffer):a.bindFramebuffer(36160,null),v.cur=at),l.dirty){var Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn;Te=u.dither,Te!==l.dither&&(Te?a.enable(3024):a.disable(3024),l.dither=Te),ot=u.blend_enable,ot!==l.blend_enable&&(ot?a.enable(3042):a.disable(3042),l.blend_enable=ot),Tt=L[0],vt=L[1],Ye=L[2],He=L[3],(Tt!==x[0]||vt!==x[1]||Ye!==x[2]||He!==x[3])&&(a.blendColor(Tt,vt,Ye,He),x[0]=Tt,x[1]=vt,x[2]=Ye,x[3]=He),it=C[0],et=C[1],(it!==M[0]||et!==M[1])&&(a.blendEquationSeparate(it,et),M[0]=it,M[1]=et),It=m[0],Yt=m[1],cr=m[2],_r=m[3],(It!==P[0]||Yt!==P[1]||cr!==P[2]||_r!==P[3])&&(a.blendFuncSeparate(It,Yt,cr,_r),P[0]=It,P[1]=Yt,P[2]=cr,P[3]=_r),yr=u.depth_enable,yr!==l.depth_enable&&(yr?a.enable(2929):a.disable(2929),l.depth_enable=yr),Ut=u.depth_func,Ut!==l.depth_func&&(a.depthFunc(Ut),l.depth_func=Ut),Re=T[0],xe=T[1],(Re!==B[0]||xe!==B[1])&&(a.depthRange(Re,xe),B[0]=Re,B[1]=xe),Oe=u.depth_mask,Oe!==l.depth_mask&&(a.depthMask(Oe),l.depth_mask=Oe),Ie=F[0],Fe=F[1],ft=F[2],ge=F[3],(Ie!==U[0]||Fe!==U[1]||ft!==U[2]||ge!==U[3])&&(a.colorMask(Ie,Fe,ft,ge),U[0]=Ie,U[1]=Fe,U[2]=ft,U[3]=ge),fe=u.cull_enable,fe!==l.cull_enable&&(fe?a.enable(2884):a.disable(2884),l.cull_enable=fe),pe=u.cull_face,pe!==l.cull_face&&(a.cullFace(pe),l.cull_face=pe),dt=u.frontFace,dt!==l.frontFace&&(a.frontFace(dt),l.frontFace=dt),Pt=u.lineWidth,Pt!==l.lineWidth&&(a.lineWidth(Pt),l.lineWidth=Pt),zt=u.polygonOffset_enable,zt!==l.polygonOffset_enable&&(zt?a.enable(32823):a.disable(32823),l.polygonOffset_enable=zt),rr=G[0],Gr=G[1],(rr!==j[0]||Gr!==j[1])&&(a.polygonOffset(rr,Gr),j[0]=rr,j[1]=Gr),Br=u.sample_alpha,Br!==l.sample_alpha&&(Br?a.enable(32926):a.disable(32926),l.sample_alpha=Br),Er=u.sample_enable,Er!==l.sample_enable&&(Er?a.enable(32928):a.disable(32928),l.sample_enable=Er),Rr=H[0],pi=H[1],(Rr!==N[0]||pi!==N[1])&&(a.sampleCoverage(Rr,pi),N[0]=Rr,N[1]=pi),Di=u.stencil_enable,Di!==l.stencil_enable&&(Di?a.enable(2960):a.disable(2960),l.stencil_enable=Di),ni=u.stencil_mask,ni!==l.stencil_mask&&(a.stencilMask(ni),l.stencil_mask=ni),$i=W[0],Qi=W[1],si=W[2],($i!==re[0]||Qi!==re[1]||si!==re[2])&&(a.stencilFunc($i,Qi,si),re[0]=$i,re[1]=Qi,re[2]=si),Ai=ae[0],Ni=ae[1],Rt=ae[2],yt=ae[3],(Ai!==be[0]||Ni!==be[1]||Rt!==be[2]||yt!==be[3])&&(a.stencilOpSeparate(Ai,Ni,Rt,yt),be[0]=Ai,be[1]=Ni,be[2]=Rt,be[3]=yt),Gt=ze[0],Wt=ze[1],xr=ze[2],Lr=ze[3],(Gt!==Ce[0]||Wt!==Ce[1]||xr!==Ce[2]||Lr!==Ce[3])&&(a.stencilOpSeparate(Gt,Wt,xr,Lr),Ce[0]=Gt,Ce[1]=Wt,Ce[2]=xr,Ce[3]=Lr),Nr=u.scissor_enable,Nr!==l.scissor_enable&&(Nr?a.enable(3089):a.disable(3089),l.scissor_enable=Nr),Or=de[0],Hr=de[1],jr=de[2],gi=de[3],(Or!==te[0]||Hr!==te[1]||jr!==te[2]||gi!==te[3])&&(a.scissor(Or,Hr,jr,gi),te[0]=Or,te[1]=Hr,te[2]=jr,te[3]=gi),ki=ke[0],Vi=ke[1],ti=ke[2],tn=ke[3],(ki!==Ee[0]||Vi!==Ee[1]||ti!==Ee[2]||tn!==Ee[3])&&(a.viewport(ki,Vi,ti,tn),Ee[0]=ki,Ee[1]=Vi,Ee[2]=ti,Ee[3]=tn),l.dirty=!1}Ke=l.profile,Ke&&(Ct=performance.now(),r.count++),wt=d.frag,St=d.vert,Dt=d.program(St,wt),a.useProgram(Dt.program),_.setVAO(null),Zt=Dt.id,Et=nt[Zt],Et?Et.call(this,Nt):(Et=nt[Zt]=n(Dt),Et.call(this,Nt)),_.setVAO(null),Ke&&(r.cpuTime+=performance.now()-Ct)},scope:function(Nt,at,Ke){var Ct,wt;Ct=l.profile,Ct&&(wt=performance.now(),r.count++),at(o,Nt,Ke),Ct&&(r.cpuTime+=performance.now()-wt)},batch:function(Nt,at){var Ke,Ct,wt,St,Dt,Zt,Et,Te;if(Ke=v.next,Ke!==v.cur&&(Ke?a.bindFramebuffer(36160,Ke.framebuffer):a.bindFramebuffer(36160,null),v.cur=Ke),l.dirty){var ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr;ot=u.dither,ot!==l.dither&&(ot?a.enable(3024):a.disable(3024),l.dither=ot),Tt=u.blend_enable,Tt!==l.blend_enable&&(Tt?a.enable(3042):a.disable(3042),l.blend_enable=Tt),vt=L[0],Ye=L[1],He=L[2],it=L[3],(vt!==x[0]||Ye!==x[1]||He!==x[2]||it!==x[3])&&(a.blendColor(vt,Ye,He,it),x[0]=vt,x[1]=Ye,x[2]=He,x[3]=it),et=C[0],It=C[1],(et!==M[0]||It!==M[1])&&(a.blendEquationSeparate(et,It),M[0]=et,M[1]=It),Yt=m[0],cr=m[1],_r=m[2],yr=m[3],(Yt!==P[0]||cr!==P[1]||_r!==P[2]||yr!==P[3])&&(a.blendFuncSeparate(Yt,cr,_r,yr),P[0]=Yt,P[1]=cr,P[2]=_r,P[3]=yr),Ut=u.depth_enable,Ut!==l.depth_enable&&(Ut?a.enable(2929):a.disable(2929),l.depth_enable=Ut),Re=u.depth_func,Re!==l.depth_func&&(a.depthFunc(Re),l.depth_func=Re),xe=T[0],Oe=T[1],(xe!==B[0]||Oe!==B[1])&&(a.depthRange(xe,Oe),B[0]=xe,B[1]=Oe),Ie=u.depth_mask,Ie!==l.depth_mask&&(a.depthMask(Ie),l.depth_mask=Ie),Fe=F[0],ft=F[1],ge=F[2],fe=F[3],(Fe!==U[0]||ft!==U[1]||ge!==U[2]||fe!==U[3])&&(a.colorMask(Fe,ft,ge,fe),U[0]=Fe,U[1]=ft,U[2]=ge,U[3]=fe),pe=u.cull_enable,pe!==l.cull_enable&&(pe?a.enable(2884):a.disable(2884),l.cull_enable=pe),dt=u.cull_face,dt!==l.cull_face&&(a.cullFace(dt),l.cull_face=dt),Pt=u.frontFace,Pt!==l.frontFace&&(a.frontFace(Pt),l.frontFace=Pt),zt=u.lineWidth,zt!==l.lineWidth&&(a.lineWidth(zt),l.lineWidth=zt),rr=u.polygonOffset_enable,rr!==l.polygonOffset_enable&&(rr?a.enable(32823):a.disable(32823),l.polygonOffset_enable=rr),Gr=G[0],Br=G[1],(Gr!==j[0]||Br!==j[1])&&(a.polygonOffset(Gr,Br),j[0]=Gr,j[1]=Br),Er=u.sample_alpha,Er!==l.sample_alpha&&(Er?a.enable(32926):a.disable(32926),l.sample_alpha=Er),Rr=u.sample_enable,Rr!==l.sample_enable&&(Rr?a.enable(32928):a.disable(32928),l.sample_enable=Rr),pi=H[0],Di=H[1],(pi!==N[0]||Di!==N[1])&&(a.sampleCoverage(pi,Di),N[0]=pi,N[1]=Di),ni=u.stencil_enable,ni!==l.stencil_enable&&(ni?a.enable(2960):a.disable(2960),l.stencil_enable=ni),$i=u.stencil_mask,$i!==l.stencil_mask&&(a.stencilMask($i),l.stencil_mask=$i),Qi=W[0],si=W[1],Ai=W[2],(Qi!==re[0]||si!==re[1]||Ai!==re[2])&&(a.stencilFunc(Qi,si,Ai),re[0]=Qi,re[1]=si,re[2]=Ai),Ni=ae[0],Rt=ae[1],yt=ae[2],Gt=ae[3],(Ni!==be[0]||Rt!==be[1]||yt!==be[2]||Gt!==be[3])&&(a.stencilOpSeparate(Ni,Rt,yt,Gt),be[0]=Ni,be[1]=Rt,be[2]=yt,be[3]=Gt),Wt=ze[0],xr=ze[1],Lr=ze[2],Nr=ze[3],(Wt!==Ce[0]||xr!==Ce[1]||Lr!==Ce[2]||Nr!==Ce[3])&&(a.stencilOpSeparate(Wt,xr,Lr,Nr),Ce[0]=Wt,Ce[1]=xr,Ce[2]=Lr,Ce[3]=Nr),Or=u.scissor_enable,Or!==l.scissor_enable&&(Or?a.enable(3089):a.disable(3089),l.scissor_enable=Or),Hr=de[0],jr=de[1],gi=de[2],ki=de[3],(Hr!==te[0]||jr!==te[1]||gi!==te[2]||ki!==te[3])&&(a.scissor(Hr,jr,gi,ki),te[0]=Hr,te[1]=jr,te[2]=gi,te[3]=ki),Vi=ke[0],ti=ke[1],tn=ke[2],Yr=ke[3],(Vi!==Ee[0]||ti!==Ee[1]||tn!==Ee[2]||Yr!==Ee[3])&&(a.viewport(Vi,ti,tn,Yr),Ee[0]=Vi,Ee[1]=ti,Ee[2]=tn,Ee[3]=Yr),l.dirty=!1}Ct=l.profile,Ct&&(wt=performance.now(),r.count+=at),St=d.frag,Dt=d.vert,Zt=d.program(Dt,St),a.useProgram(Zt.program),_.setVAO(null),Et=Zt.id,Te=gt[Et],Te?Te.call(this,Nt,at):(Te=gt[Et]=i(Zt),Te.call(this,Nt,at)),_.setVAO(null),Ct&&(r.cpuTime+=performance.now()-wt)}}}});var AVe=Ae((Bbr,TVe)=>{TVe.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,H,N,W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so){"use strict";var Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa;return Kr=t.gl,Ia=t.context,Yo=t.strings,fa=t.next,kn=t.current,Aa=t.draw,ys=t.elements,uo=t.buffer,ls=t.shader,$a=t.attributes,fo=t.vao,mn=t.uniforms,ra=t.framebuffer,wa=t.extensions,ws=t.timer,Co=t.isBufferArgs,Po=fa.blend_color,Wi=kn.blend_color,gn=fa.blend_equation,Ps=kn.blend_equation,Ha=fa.blend_func,Sn=kn.blend_func,ao=fa.depth_range,Ba=kn.depth_range,Ko=fa.colorMask,Qo=kn.colorMask,Hi=fa.polygonOffset_offset,Sa=kn.polygonOffset_offset,Qa=fa.sample_coverage,vn=kn.sample_coverage,da=fa.stencil_func,la=kn.stencil_func,vo=fa.stencil_opFront,Ts=kn.stencil_opFront,ps=fa.stencil_opBack,co=kn.stencil_opBack,mo=fa.scissor_box,No=kn.scissor_box,jn=fa.viewport,Go=kn.viewport,Ys={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},qs={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Ns={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Oa={add:32774,subtract:32778,"reverse subtract":32779},ha={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Vs={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Ya={cw:2304,ccw:2305},_n={},Vn={},wo=new Float32Array(16),Ra=new Float32Array(16),Xn=new Float32Array(16),un=new Float32Array(16),$n=new Float32Array(16),Ka=new Float32Array(16),qn=new Float32Array(16),Eo=new Float32Array(16),Ja=new Float32Array(16),lo=new Float32Array(16),eo=new Float32Array(16),sa=new Float32Array(16),es=new Float32Array(16),Na=new Float32Array(16),rn=new Float32Array(16),Pa=new Float32Array(16),to=new Float32Array(16),yo=new Float32Array(16),Jo=new Float32Array(16),To=new Float32Array(16),Dn=new Float32Array(16),_a=new Float32Array(16),Ws=new Float32Array(16),Ca=new Float32Array(16),Es=new Float32Array(16),As=new Float32Array(16),Ho=new Float32Array(16),Wa=new Float32Array(16),Ao=new Float32Array(16),ts=new Float32Array(16),Wo=new Float32Array(16),qa=new Float32Array(16),{draw:function(ln){var Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js;if(Bo=ra.next,Bo!==ra.cur&&(Bo?Kr.bindFramebuffer(36160,Bo.framebuffer):Kr.bindFramebuffer(36160,null),ra.cur=Bo),kn.dirty){var cs,sl,ll,il,zl,Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir;cs=Ko[0],sl=Ko[1],ll=Ko[2],il=Ko[3],(cs!==Qo[0]||sl!==Qo[1]||ll!==Qo[2]||il!==Qo[3])&&(Kr.colorMask(cs,sl,ll,il),Qo[0]=cs,Qo[1]=sl,Qo[2]=ll,Qo[3]=il),zl=fa.frontFace,zl!==kn.frontFace&&(Kr.frontFace(zl),kn.frontFace=zl),Ml=fa.polygonOffset_enable,Ml!==kn.polygonOffset_enable&&(Ml?Kr.enable(32823):Kr.disable(32823),kn.polygonOffset_enable=Ml),Rl=Hi[0],Tl=Hi[1],(Rl!==Sa[0]||Tl!==Sa[1])&&(Kr.polygonOffset(Rl,Tl),Sa[0]=Rl,Sa[1]=Tl),Ll=fa.sample_alpha,Ll!==kn.sample_alpha&&(Ll?Kr.enable(32926):Kr.disable(32926),kn.sample_alpha=Ll),ms=fa.sample_enable,ms!==kn.sample_enable&&(ms?Kr.enable(32928):Kr.disable(32928),kn.sample_enable=ms),Os=Qa[0],Xl=Qa[1],(Os!==vn[0]||Xl!==vn[1])&&(Kr.sampleCoverage(Os,Xl),vn[0]=Os,vn[1]=Xl),Vl=fa.stencil_enable,Vl!==kn.stencil_enable&&(Vl?Kr.enable(2960):Kr.disable(2960),kn.stencil_enable=Vl),Nl=fa.stencil_mask,Nl!==kn.stencil_mask&&(Kr.stencilMask(Nl),kn.stencil_mask=Nl),le=da[0],w=da[1],q=da[2],(le!==la[0]||w!==la[1]||q!==la[2])&&(Kr.stencilFunc(le,w,q),la[0]=le,la[1]=w,la[2]=q),Q=vo[0],ee=vo[1],ue=vo[2],Ve=vo[3],(Q!==Ts[0]||ee!==Ts[1]||ue!==Ts[2]||Ve!==Ts[3])&&(Kr.stencilOpSeparate(Q,ee,ue,Ve),Ts[0]=Q,Ts[1]=ee,Ts[2]=ue,Ts[3]=Ve),tt=ps[0],mt=ps[1],Bt=ps[2],ir=ps[3],(tt!==co[0]||mt!==co[1]||Bt!==co[2]||ir!==co[3])&&(Kr.stencilOpSeparate(tt,mt,Bt,ir),co[0]=tt,co[1]=mt,co[2]=Bt,co[3]=ir)}ko=ln.viewportX,_n.x=ko,oo=ln.viewportY,_n.y=oo,za=ln.viewportWidth,_n.width=za,ea=ln.viewportHeight,_n.height=ea,rs=_n.x|0,$s=_n.y|0,us="width"in _n?_n.width|0:Ia.framebufferWidth-rs,Ds="height"in _n?_n.height|0:Ia.framebufferHeight-$s,fl=Ia.viewportWidth,Ia.viewportWidth=us,as=Ia.viewportHeight,Ia.viewportHeight=Ds,Kr.viewport(rs,$s,us,Ds),Go[0]=rs,Go[1]=$s,Go[2]=us,Go[3]=Ds,Kr.blendColor(0,0,0,0),Wi[0]=0,Wi[1]=0,Wi[2]=0,Wi[3]=0,n?Kr.enable(3042):Kr.disable(3042),kn.blend_enable=n,Kr.blendEquationSeparate(32774,32774),Ps[0]=32774,Ps[1]=32774,Kr.blendFuncSeparate(770,771,1,1),Sn[0]=770,Sn[1]=771,Sn[2]=1,Sn[3]=1,i?Kr.enable(2884):Kr.disable(2884),kn.cull_enable=i,Kr.cullFace(a),kn.cull_face=a,o?Kr.enable(2929):Kr.disable(2929),kn.depth_enable=o,Kr.depthFunc(s),kn.depth_func=s,Kr.depthMask(u),kn.depth_mask=u,Kr.depthRange(0,1),Ba[0]=0,Ba[1]=1,l?Kr.enable(3024):Kr.disable(3024),kn.dither=l,Kr.lineWidth(f),kn.lineWidth=f,Ma=ln.scissorX,Vn.x=Ma,Qs=ln.scissorY,Vn.y=Qs,ho=ln.scissorWidth,Vn.width=ho,gs=ln.scissorHeight,Vn.height=gs,Vo=Vn.x|0,Do=Vn.y|0,Lo="width"in Vn?Vn.width|0:Ia.framebufferWidth-Vo,xs="height"in Vn?Vn.height|0:Ia.framebufferHeight-Do,Kr.scissor(Vo,Do,Lo,xs),No[0]=Vo,No[1]=Do,No[2]=Lo,No[3]=xs,c?Kr.enable(3089):Kr.disable(3089),kn.scissor_enable=c,ks=kn.profile,kn.profile=!1,Kr.useProgram(h.program),fo.setVAO(null),Ea=p.location,Jn=$a[Ea],Jn.buffer||Kr.enableVertexAttribArray(Ea),(Jn.type!==d.dtype||Jn.size!==4||Jn.buffer!==d||Jn.normalized!==!1||Jn.offset!==0||Jn.stride!==0)&&(Kr.bindBuffer(34962,d.buffer),Kr.vertexAttribPointer(Ea,4,d.dtype,!1,0,0),Jn.type=d.dtype,Jn.size=4,Jn.buffer=d,Jn.normalized=!1,Jn.offset=0,Jn.stride=0),Oo=b.location,rl=$a[Oo],rl.buffer||Kr.enableVertexAttribArray(Oo),(rl.type!==_.dtype||rl.size!==4||rl.buffer!==_||rl.normalized!==!1||rl.offset!==0||rl.stride!==0)&&(Kr.bindBuffer(34962,_.buffer),Kr.vertexAttribPointer(Oo,4,_.dtype,!1,0,0),rl.type=_.dtype,rl.size=4,rl.buffer=_,rl.normalized=!1,rl.offset=0,rl.stride=0),Gs=k.location,bs=$a[Gs],bs.buffer||Kr.enableVertexAttribArray(Gs),(bs.type!==v.dtype||bs.size!==4||bs.buffer!==v||bs.normalized!==!1||bs.offset!==0||bs.stride!==0)&&(Kr.bindBuffer(34962,v.buffer),Kr.vertexAttribPointer(Gs,4,v.dtype,!1,0,0),bs.type=v.dtype,bs.size=4,bs.buffer=v,bs.normalized=!1,bs.offset=0,bs.stride=0),zs=A.location,$o=$a[zs],$o.buffer||Kr.enableVertexAttribArray(zs),($o.type!==E.dtype||$o.size!==4||$o.buffer!==E||$o.normalized!==!1||$o.offset!==0||$o.stride!==0)&&(Kr.bindBuffer(34962,E.buffer),Kr.vertexAttribPointer(zs,4,E.dtype,!1,0,0),$o.type=E.dtype,$o.size=4,$o.buffer=E,$o.normalized=!1,$o.offset=0,$o.stride=0),Ta=x.location,os=$a[Ta],os.buffer||Kr.enableVertexAttribArray(Ta),(os.type!==L.dtype||os.size!==4||os.buffer!==L||os.normalized!==!1||os.offset!==0||os.stride!==0)&&(Kr.bindBuffer(34962,L.buffer),Kr.vertexAttribPointer(Ta,4,L.dtype,!1,0,0),os.type=L.dtype,os.size=4,os.buffer=L,os.normalized=!1,os.offset=0,os.stride=0),_l=M.location,Ss=$a[_l],Ss.buffer||Kr.enableVertexAttribArray(_l),(Ss.type!==C.dtype||Ss.size!==4||Ss.buffer!==C||Ss.normalized!==!1||Ss.offset!==0||Ss.stride!==0)&&(Kr.bindBuffer(34962,C.buffer),Kr.vertexAttribPointer(_l,4,C.dtype,!1,0,0),Ss.type=C.dtype,Ss.size=4,Ss.buffer=C,Ss.normalized=!1,Ss.offset=0,Ss.stride=0),po=P.location,go=$a[po],go.buffer||Kr.enableVertexAttribArray(po),(go.type!==m.dtype||go.size!==4||go.buffer!==m||go.normalized!==!1||go.offset!==0||go.stride!==0)&&(Kr.bindBuffer(34962,m.buffer),Kr.vertexAttribPointer(po,4,m.dtype,!1,0,0),go.type=m.dtype,go.size=4,go.buffer=m,go.normalized=!1,go.offset=0,go.stride=0),ss=B.location,qo=$a[ss],qo.buffer||Kr.enableVertexAttribArray(ss),(qo.type!==T.dtype||qo.size!==4||qo.buffer!==T||qo.normalized!==!1||qo.offset!==0||qo.stride!==0)&&(Kr.bindBuffer(34962,T.buffer),Kr.vertexAttribPointer(ss,4,T.dtype,!1,0,0),qo.type=T.dtype,qo.size=4,qo.buffer=T,qo.normalized=!1,qo.offset=0,qo.stride=0),zo=U.location,io=$a[zo],io.buffer||Kr.enableVertexAttribArray(zo),(io.type!==F.dtype||io.size!==4||io.buffer!==F||io.normalized!==!1||io.offset!==0||io.stride!==0)&&(Kr.bindBuffer(34962,F.buffer),Kr.vertexAttribPointer(zo,4,F.dtype,!1,0,0),io.type=F.dtype,io.size=4,io.buffer=F,io.normalized=!1,io.offset=0,io.stride=0),Io=j.location,Da=$a[Io],Da.buffer||Kr.enableVertexAttribArray(Io),(Da.type!==G.dtype||Da.size!==4||Da.buffer!==G||Da.normalized!==!1||Da.offset!==0||Da.stride!==0)&&(Kr.bindBuffer(34962,G.buffer),Kr.vertexAttribPointer(Io,4,G.dtype,!1,0,0),Da.type=G.dtype,Da.size=4,Da.buffer=G,Da.normalized=!1,Da.offset=0,Da.stride=0),vs=N.location,fs=$a[vs],fs.buffer||Kr.enableVertexAttribArray(vs),(fs.type!==H.dtype||fs.size!==4||fs.buffer!==H||fs.normalized!==!1||fs.offset!==0||fs.stride!==0)&&(Kr.bindBuffer(34962,H.buffer),Kr.vertexAttribPointer(vs,4,H.dtype,!1,0,0),fs.type=H.dtype,fs.size=4,fs.buffer=H,fs.normalized=!1,fs.offset=0,fs.stride=0),cl=re.location,el=$a[cl],el.buffer||Kr.enableVertexAttribArray(cl),(el.type!==W.dtype||el.size!==4||el.buffer!==W||el.normalized!==!1||el.offset!==0||el.stride!==0)&&(Kr.bindBuffer(34962,W.buffer),Kr.vertexAttribPointer(cl,4,W.dtype,!1,0,0),el.type=W.dtype,el.size=4,el.buffer=W,el.normalized=!1,el.offset=0,el.stride=0),Hs=be.location,Ro=$a[Hs],Ro.buffer||Kr.enableVertexAttribArray(Hs),(Ro.type!==ae.dtype||Ro.size!==4||Ro.buffer!==ae||Ro.normalized!==!1||Ro.offset!==0||Ro.stride!==0)&&(Kr.bindBuffer(34962,ae.buffer),Kr.vertexAttribPointer(Hs,4,ae.dtype,!1,0,0),Ro.type=ae.dtype,Ro.size=4,Ro.buffer=ae,Ro.normalized=!1,Ro.offset=0,Ro.stride=0),tl=Ce.location,Fs=$a[tl],Fs.buffer||Kr.enableVertexAttribArray(tl),(Fs.type!==ze.dtype||Fs.size!==4||Fs.buffer!==ze||Fs.normalized!==!1||Fs.offset!==0||Fs.stride!==0)&&(Kr.bindBuffer(34962,ze.buffer),Kr.vertexAttribPointer(tl,4,ze.dtype,!1,0,0),Fs.type=ze.dtype,Fs.size=4,Fs.buffer=ze,Fs.normalized=!1,Fs.offset=0,Fs.stride=0),hl=te.location,Fa=$a[hl],Fa.buffer||Kr.enableVertexAttribArray(hl),(Fa.type!==de.dtype||Fa.size!==4||Fa.buffer!==de||Fa.normalized!==!1||Fa.offset!==0||Fa.stride!==0)&&(Kr.bindBuffer(34962,de.buffer),Kr.vertexAttribPointer(hl,4,de.dtype,!1,0,0),Fa.type=de.dtype,Fa.size=4,Fa.buffer=de,Fa.normalized=!1,Fa.offset=0,Fa.stride=0),Ms=Ee.location,jo=$a[Ms],jo.buffer||Kr.enableVertexAttribArray(Ms),(jo.type!==ke.dtype||jo.size!==4||jo.buffer!==ke||jo.normalized!==!1||jo.offset!==0||jo.stride!==0)&&(Kr.bindBuffer(34962,ke.buffer),Kr.vertexAttribPointer(Ms,4,ke.dtype,!1,0,0),jo.type=ke.dtype,jo.size=4,jo.buffer=ke,jo.normalized=!1,jo.offset=0,jo.stride=0),Rs=ln.contextColor,Is=Rs[0],Bs=Rs[1],At=Rs[2],Vt=Rs[3],Kr.uniform4f(Me.location,Is,Bs,At,Vt),wr=ln.dim0A,Kr.uniformMatrix4fv(Ue.location,!1,Array.isArray(wr)||wr instanceof Float32Array?wr:(wo[0]=wr[0],wo[1]=wr[1],wo[2]=wr[2],wo[3]=wr[3],wo[4]=wr[4],wo[5]=wr[5],wo[6]=wr[6],wo[7]=wr[7],wo[8]=wr[8],wo[9]=wr[9],wo[10]=wr[10],wo[11]=wr[11],wo[12]=wr[12],wo[13]=wr[13],wo[14]=wr[14],wo[15]=wr[15],wo)),mr=ln.dim0B,Kr.uniformMatrix4fv(De.location,!1,Array.isArray(mr)||mr instanceof Float32Array?mr:(Ra[0]=mr[0],Ra[1]=mr[1],Ra[2]=mr[2],Ra[3]=mr[3],Ra[4]=mr[4],Ra[5]=mr[5],Ra[6]=mr[6],Ra[7]=mr[7],Ra[8]=mr[8],Ra[9]=mr[9],Ra[10]=mr[10],Ra[11]=mr[11],Ra[12]=mr[12],Ra[13]=mr[13],Ra[14]=mr[14],Ra[15]=mr[15],Ra)),Fr=ln.dim0C,Kr.uniformMatrix4fv(ye.location,!1,Array.isArray(Fr)||Fr instanceof Float32Array?Fr:(Xn[0]=Fr[0],Xn[1]=Fr[1],Xn[2]=Fr[2],Xn[3]=Fr[3],Xn[4]=Fr[4],Xn[5]=Fr[5],Xn[6]=Fr[6],Xn[7]=Fr[7],Xn[8]=Fr[8],Xn[9]=Fr[9],Xn[10]=Fr[10],Xn[11]=Fr[11],Xn[12]=Fr[12],Xn[13]=Fr[13],Xn[14]=Fr[14],Xn[15]=Fr[15],Xn)),_i=ln.dim0D,Kr.uniformMatrix4fv(qe.location,!1,Array.isArray(_i)||_i instanceof Float32Array?_i:(un[0]=_i[0],un[1]=_i[1],un[2]=_i[2],un[3]=_i[3],un[4]=_i[4],un[5]=_i[5],un[6]=_i[6],un[7]=_i[7],un[8]=_i[8],un[9]=_i[9],un[10]=_i[10],un[11]=_i[11],un[12]=_i[12],un[13]=_i[13],un[14]=_i[14],un[15]=_i[15],un)),Si=ln.dim1A,Kr.uniformMatrix4fv(ce.location,!1,Array.isArray(Si)||Si instanceof Float32Array?Si:($n[0]=Si[0],$n[1]=Si[1],$n[2]=Si[2],$n[3]=Si[3],$n[4]=Si[4],$n[5]=Si[5],$n[6]=Si[6],$n[7]=Si[7],$n[8]=Si[8],$n[9]=Si[9],$n[10]=Si[10],$n[11]=Si[11],$n[12]=Si[12],$n[13]=Si[13],$n[14]=Si[14],$n[15]=Si[15],$n)),Ci=ln.dim1B,Kr.uniformMatrix4fv(Je.location,!1,Array.isArray(Ci)||Ci instanceof Float32Array?Ci:(Ka[0]=Ci[0],Ka[1]=Ci[1],Ka[2]=Ci[2],Ka[3]=Ci[3],Ka[4]=Ci[4],Ka[5]=Ci[5],Ka[6]=Ci[6],Ka[7]=Ci[7],Ka[8]=Ci[8],Ka[9]=Ci[9],Ka[10]=Ci[10],Ka[11]=Ci[11],Ka[12]=Ci[12],Ka[13]=Ci[13],Ka[14]=Ci[14],Ka[15]=Ci[15],Ka)),Ki=ln.dim1C,Kr.uniformMatrix4fv(nt.location,!1,Array.isArray(Ki)||Ki instanceof Float32Array?Ki:(qn[0]=Ki[0],qn[1]=Ki[1],qn[2]=Ki[2],qn[3]=Ki[3],qn[4]=Ki[4],qn[5]=Ki[5],qn[6]=Ki[6],qn[7]=Ki[7],qn[8]=Ki[8],qn[9]=Ki[9],qn[10]=Ki[10],qn[11]=Ki[11],qn[12]=Ki[12],qn[13]=Ki[13],qn[14]=Ki[14],qn[15]=Ki[15],qn)),Fn=ln.dim1D,Kr.uniformMatrix4fv(gt.location,!1,Array.isArray(Fn)||Fn instanceof Float32Array?Fn:(Eo[0]=Fn[0],Eo[1]=Fn[1],Eo[2]=Fn[2],Eo[3]=Fn[3],Eo[4]=Fn[4],Eo[5]=Fn[5],Eo[6]=Fn[6],Eo[7]=Fn[7],Eo[8]=Fn[8],Eo[9]=Fn[9],Eo[10]=Fn[10],Eo[11]=Fn[11],Eo[12]=Fn[12],Eo[13]=Fn[13],Eo[14]=Fn[14],Eo[15]=Fn[15],Eo)),Pi=ln.drwLayer,Kr.uniform1f(Nt.location,Pi),di=ln.hiA,Kr.uniformMatrix4fv(at.location,!1,Array.isArray(di)||di instanceof Float32Array?di:(Ja[0]=di[0],Ja[1]=di[1],Ja[2]=di[2],Ja[3]=di[3],Ja[4]=di[4],Ja[5]=di[5],Ja[6]=di[6],Ja[7]=di[7],Ja[8]=di[8],Ja[9]=di[9],Ja[10]=di[10],Ja[11]=di[11],Ja[12]=di[12],Ja[13]=di[13],Ja[14]=di[14],Ja[15]=di[15],Ja)),Li=ln.hiB,Kr.uniformMatrix4fv(Ke.location,!1,Array.isArray(Li)||Li instanceof Float32Array?Li:(lo[0]=Li[0],lo[1]=Li[1],lo[2]=Li[2],lo[3]=Li[3],lo[4]=Li[4],lo[5]=Li[5],lo[6]=Li[6],lo[7]=Li[7],lo[8]=Li[8],lo[9]=Li[9],lo[10]=Li[10],lo[11]=Li[11],lo[12]=Li[12],lo[13]=Li[13],lo[14]=Li[14],lo[15]=Li[15],lo)),Mi=ln.hiC,Kr.uniformMatrix4fv(Ct.location,!1,Array.isArray(Mi)||Mi instanceof Float32Array?Mi:(eo[0]=Mi[0],eo[1]=Mi[1],eo[2]=Mi[2],eo[3]=Mi[3],eo[4]=Mi[4],eo[5]=Mi[5],eo[6]=Mi[6],eo[7]=Mi[7],eo[8]=Mi[8],eo[9]=Mi[9],eo[10]=Mi[10],eo[11]=Mi[11],eo[12]=Mi[12],eo[13]=Mi[13],eo[14]=Mi[14],eo[15]=Mi[15],eo)),Gn=ln.hiD,Kr.uniformMatrix4fv(wt.location,!1,Array.isArray(Gn)||Gn instanceof Float32Array?Gn:(sa[0]=Gn[0],sa[1]=Gn[1],sa[2]=Gn[2],sa[3]=Gn[3],sa[4]=Gn[4],sa[5]=Gn[5],sa[6]=Gn[6],sa[7]=Gn[7],sa[8]=Gn[8],sa[9]=Gn[9],sa[10]=Gn[10],sa[11]=Gn[11],sa[12]=Gn[12],sa[13]=Gn[13],sa[14]=Gn[14],sa[15]=Gn[15],sa)),ta=ln.loA,Kr.uniformMatrix4fv(St.location,!1,Array.isArray(ta)||ta instanceof Float32Array?ta:(es[0]=ta[0],es[1]=ta[1],es[2]=ta[2],es[3]=ta[3],es[4]=ta[4],es[5]=ta[5],es[6]=ta[6],es[7]=ta[7],es[8]=ta[8],es[9]=ta[9],es[10]=ta[10],es[11]=ta[11],es[12]=ta[12],es[13]=ta[13],es[14]=ta[14],es[15]=ta[15],es)),ya=ln.loB,Kr.uniformMatrix4fv(Dt.location,!1,Array.isArray(ya)||ya instanceof Float32Array?ya:(Na[0]=ya[0],Na[1]=ya[1],Na[2]=ya[2],Na[3]=ya[3],Na[4]=ya[4],Na[5]=ya[5],Na[6]=ya[6],Na[7]=ya[7],Na[8]=ya[8],Na[9]=ya[9],Na[10]=ya[10],Na[11]=ya[11],Na[12]=ya[12],Na[13]=ya[13],Na[14]=ya[14],Na[15]=ya[15],Na)),ia=ln.loC,Kr.uniformMatrix4fv(Zt.location,!1,Array.isArray(ia)||ia instanceof Float32Array?ia:(rn[0]=ia[0],rn[1]=ia[1],rn[2]=ia[2],rn[3]=ia[3],rn[4]=ia[4],rn[5]=ia[5],rn[6]=ia[6],rn[7]=ia[7],rn[8]=ia[8],rn[9]=ia[9],rn[10]=ia[10],rn[11]=ia[11],rn[12]=ia[12],rn[13]=ia[13],rn[14]=ia[14],rn[15]=ia[15],rn)),pa=ln.loD,Kr.uniformMatrix4fv(Et.location,!1,Array.isArray(pa)||pa instanceof Float32Array?pa:(Pa[0]=pa[0],Pa[1]=pa[1],Pa[2]=pa[2],Pa[3]=pa[3],Pa[4]=pa[4],Pa[5]=pa[5],Pa[6]=pa[6],Pa[7]=pa[7],Pa[8]=pa[8],Pa[9]=pa[9],Pa[10]=pa[10],Pa[11]=pa[11],Pa[12]=pa[12],Pa[13]=pa[13],Pa[14]=pa[14],Pa[15]=pa[15],Pa)),va=ln.maskHeight,Kr.uniform1f(Te.location,va),zn=ln.maskTexture,zn&&zn._reglType==="framebuffer"&&(zn=zn.color[0]),is=zn._texture,Kr.uniform1i(ot.location,is.bind()),Kr.uniform1i(Tt.location,vt.bind()),Cs=ln.resolution,Ks=Cs[0],dl=Cs[1],Kr.uniform2f(Ye.location,Ks,dl),xl=ln.viewBoxPos,Bl=xl[0],bl=xl[1],Kr.uniform2f(He.location,Bl,bl),eu=ln.viewBoxSize,Zl=eu[0],Ul=eu[1],Kr.uniform2f(it.location,Zl,Ul),ja=Aa.elements,ja?Kr.bindBuffer(34963,ja.buffer.buffer):fo.currentVAO&&(ja=ys.getElements(fo.currentVAO.elements),ja&&Kr.bindBuffer(34963,ja.buffer.buffer)),ns=ln.offset,Js=ln.count,Js&&(ja?Kr.drawElements(1,Js,ja.type,ns<<(ja.type-5121>>1)):Kr.drawArrays(1,ns,Js),kn.dirty=!0,fo.setVAO(null),Ia.viewportWidth=fl,Ia.viewportHeight=as,kn.profile=ks,is.unbind(),vt.unbind())},scope:function(ln,Bo,ko){var oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl,ll,il,zl,Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt,pt,Ht,nr,fr,Tr,Ir,ri,li,Ei,hn,Zn,Yn,Ua,Fo,vl,Us,ml,au,Sl,Yl,Ol,ou,Pu,iu,tu,Hu,$u,Ku,Wu,ju,sf,_f,Qu,ef,Z,se,Pe,Xe,Qe,st,jt,_t,hr,Cr,zr,fi,$r,Bi,fn,mi,zi,ji,pn,sn,wi,xo,no,Xo,js,El,Pl,pu,Il,fu,Xu,Vu,tf,ds,Wl,Tu,Au,lf,hf,Mf,pf,fc,Be,qt,ar,Qr,yi,ci,vi,on,Bn,Ln,wn,Ls,ua,Hn,qi,Wr,xi,dn,En,Zi,ga,Kn,hs,Ji,Ui,ro,na,On,In,Va,_s,ul,Qn,Mo,nl,pl,Dl,Fu,vf,Ql,Ef,Cu,gf,xf,Cf,Gu,cf,mf,Fl,bf,cu,Y,R,J,O,K,_e,ne,Le,Ze,kt,dr,Mr,lr,$e,ht,bt,Kt,sr,Qt,ur,er,Ot,Jt,Lt,Ar,Ur,hi,Cn,Yi,yn,Xa,ca,An,Pn,Nn,xa,Zo,ru,yu,Du,vu,zu,Ju,Vf,wd,Td;oo=ln.viewportX,_n.x=oo,za=ln.viewportY,_n.y=za,ea=ln.viewportWidth,_n.width=ea,rs=ln.viewportHeight,_n.height=rs,$s=_n.x|0,us=_n.y|0,Ds="width"in _n?_n.width|0:Ia.framebufferWidth-$s,fl="height"in _n?_n.height|0:Ia.framebufferHeight-us,as=Ia.viewportWidth,Ia.viewportWidth=Ds,Ma=Ia.viewportHeight,Ia.viewportHeight=fl,Qs=jn[0],jn[0]=$s,ho=jn[1],jn[1]=us,gs=jn[2],jn[2]=Ds,Vo=jn[3],jn[3]=fl,Do=Po[0],Po[0]=et,Lo=Po[1],Po[1]=It,xs=Po[2],Po[2]=Yt,ks=Po[3],Po[3]=cr,Ea=fa.blend_enable,fa.blend_enable=_r,Jn=gn[0],gn[0]=yr,Oo=gn[1],gn[1]=Ut,rl=Ha[0],Ha[0]=Re,Gs=Ha[1],Ha[1]=xe,bs=Ha[2],Ha[2]=Oe,zs=Ha[3],Ha[3]=Ie,$o=fa.cull_enable,fa.cull_enable=Fe,Ta=fa.cull_face,fa.cull_face=ft,os=fa.depth_enable,fa.depth_enable=ge,_l=fa.depth_func,fa.depth_func=fe,Ss=fa.depth_mask,fa.depth_mask=pe,po=ao[0],ao[0]=dt,go=ao[1],ao[1]=Pt,ss=fa.dither,fa.dither=zt,qo=fa.lineWidth,fa.lineWidth=rr,zo=ln.scissorX,Vn.x=zo,io=ln.scissorY,Vn.y=io,Io=ln.scissorWidth,Vn.width=Io,Da=ln.scissorHeight,Vn.height=Da,vs=Vn.x|0,fs=Vn.y|0,cl="width"in Vn?Vn.width|0:Ia.framebufferWidth-vs,el="height"in Vn?Vn.height|0:Ia.framebufferHeight-fs,Hs=mo[0],mo[0]=vs,Ro=mo[1],mo[1]=fs,tl=mo[2],mo[2]=cl,Fs=mo[3],mo[3]=el,hl=fa.scissor_enable,fa.scissor_enable=Gr,Fa=kn.profile,kn.profile=!1,Ms=ln.offset,jo=Aa.offset,Aa.offset=Ms,Rs=ln.count,Is=Aa.count,Aa.count=Rs,Bs=Aa.primitive,Aa.primitive=Br,At=mn[Rr],mn[Rr]=Er,Vt=ln.resolution,wr=mn[pi],mn[pi]=Vt,mr=ln.viewBoxPos,Fr=mn[Di],mn[Di]=mr,_i=ln.viewBoxSize,Si=mn[ni],mn[ni]=_i,Ci=ln.dim0A,Ki=mn[$i],mn[$i]=Ci,Fn=ln.dim1A,Pi=mn[Qi],mn[Qi]=Fn,di=ln.dim0B,Li=mn[si],mn[si]=di,Mi=ln.dim1B,Gn=mn[Ai],mn[Ai]=Mi,ta=ln.dim0C,ya=mn[Ni],mn[Ni]=ta,ia=ln.dim1C,pa=mn[Rt],mn[Rt]=ia,va=ln.dim0D,zn=mn[yt],mn[yt]=va,is=ln.dim1D,Cs=mn[Gt],mn[Gt]=is,Ks=ln.loA,dl=mn[Wt],mn[Wt]=Ks,xl=ln.hiA,Bl=mn[xr],mn[xr]=xl,bl=ln.loB,eu=mn[Lr],mn[Lr]=bl,Zl=ln.hiB,Ul=mn[Nr],mn[Nr]=Zl,ja=ln.loC,ns=mn[Or],mn[Or]=ja,Js=ln.hiC,cs=mn[Hr],mn[Hr]=Js,sl=ln.loD,ll=mn[jr],mn[jr]=sl,il=ln.hiD,zl=mn[gi],mn[gi]=il,Ml=ln.contextColor,Rl=mn[ki],mn[ki]=Ml,Tl=ln.maskTexture,Ll=mn[Vi],mn[Vi]=Tl,ms=ln.drwLayer,Os=mn[ti],mn[ti]=ms,Xl=ln.maskHeight,Vl=mn[tn],mn[tn]=Xl,Nl=Yr.state,Yr.state=1,le=Yr.x,Yr.x=0,w=Yr.y,Yr.y=0,q=Yr.z,Yr.z=0,Q=Yr.w,Yr.w=0,ee=Yr.buffer,Yr.buffer=_,ue=Yr.size,Yr.size=0,Ve=Yr.normalized,Yr.normalized=!1,tt=Yr.type,Yr.type=_.dtype,mt=Yr.offset,Yr.offset=0,Bt=Yr.stride,Yr.stride=0,ir=Yr.divisor,Yr.divisor=0,or=oi.state,oi.state=1,kr=oi.x,oi.x=0,Vr=oi.y,oi.y=0,he=oi.z,oi.z=0,Se=oi.w,oi.w=0,Ne=oi.buffer,oi.buffer=v,Ge=oi.size,oi.size=0,lt=oi.normalized,oi.normalized=!1,rt=oi.type,oi.type=v.dtype,pt=oi.offset,oi.offset=0,Ht=oi.stride,oi.stride=0,nr=oi.divisor,oi.divisor=0,fr=Fi.state,Fi.state=1,Tr=Fi.x,Fi.x=0,Ir=Fi.y,Fi.y=0,ri=Fi.z,Fi.z=0,li=Fi.w,Fi.w=0,Ei=Fi.buffer,Fi.buffer=E,hn=Fi.size,Fi.size=0,Zn=Fi.normalized,Fi.normalized=!1,Yn=Fi.type,Fi.type=E.dtype,Ua=Fi.offset,Fi.offset=0,Fo=Fi.stride,Fi.stride=0,vl=Fi.divisor,Fi.divisor=0,Us=an.state,an.state=1,ml=an.x,an.x=0,au=an.y,an.y=0,Sl=an.z,an.z=0,Yl=an.w,an.w=0,Ol=an.buffer,an.buffer=L,ou=an.size,an.size=0,Pu=an.normalized,an.normalized=!1,iu=an.type,an.type=L.dtype,tu=an.offset,an.offset=0,Hu=an.stride,an.stride=0,$u=an.divisor,an.divisor=0,Ku=nn.state,nn.state=1,Wu=nn.x,nn.x=0,ju=nn.y,nn.y=0,sf=nn.z,nn.z=0,_f=nn.w,nn.w=0,Qu=nn.buffer,nn.buffer=C,ef=nn.size,nn.size=0,Z=nn.normalized,nn.normalized=!1,se=nn.type,nn.type=C.dtype,Pe=nn.offset,nn.offset=0,Xe=nn.stride,nn.stride=0,Qe=nn.divisor,nn.divisor=0,st=Ri.state,Ri.state=1,jt=Ri.x,Ri.x=0,_t=Ri.y,Ri.y=0,hr=Ri.z,Ri.z=0,Cr=Ri.w,Ri.w=0,zr=Ri.buffer,Ri.buffer=m,fi=Ri.size,Ri.size=0,$r=Ri.normalized,Ri.normalized=!1,Bi=Ri.type,Ri.type=m.dtype,fn=Ri.offset,Ri.offset=0,mi=Ri.stride,Ri.stride=0,zi=Ri.divisor,Ri.divisor=0,ji=Ii.state,Ii.state=1,pn=Ii.x,Ii.x=0,sn=Ii.y,Ii.y=0,wi=Ii.z,Ii.z=0,xo=Ii.w,Ii.w=0,no=Ii.buffer,Ii.buffer=T,Xo=Ii.size,Ii.size=0,js=Ii.normalized,Ii.normalized=!1,El=Ii.type,Ii.type=T.dtype,Pl=Ii.offset,Ii.offset=0,pu=Ii.stride,Ii.stride=0,Il=Ii.divisor,Ii.divisor=0,fu=xn.state,xn.state=1,Xu=xn.x,xn.x=0,Vu=xn.y,xn.y=0,tf=xn.z,xn.z=0,ds=xn.w,xn.w=0,Wl=xn.buffer,xn.buffer=F,Tu=xn.size,xn.size=0,Au=xn.normalized,xn.normalized=!1,lf=xn.type,xn.type=F.dtype,hf=xn.offset,xn.offset=0,Mf=xn.stride,xn.stride=0,pf=xn.divisor,xn.divisor=0,fc=bi.state,bi.state=1,Be=bi.x,bi.x=0,qt=bi.y,bi.y=0,ar=bi.z,bi.z=0,Qr=bi.w,bi.w=0,yi=bi.buffer,bi.buffer=G,ci=bi.size,bi.size=0,vi=bi.normalized,bi.normalized=!1,on=bi.type,bi.type=G.dtype,Bn=bi.offset,bi.offset=0,Ln=bi.stride,bi.stride=0,wn=bi.divisor,bi.divisor=0,Ls=Xr.state,Xr.state=1,ua=Xr.x,Xr.x=0,Hn=Xr.y,Xr.y=0,qi=Xr.z,Xr.z=0,Wr=Xr.w,Xr.w=0,xi=Xr.buffer,Xr.buffer=H,dn=Xr.size,Xr.size=0,En=Xr.normalized,Xr.normalized=!1,Zi=Xr.type,Xr.type=H.dtype,ga=Xr.offset,Xr.offset=0,Kn=Xr.stride,Xr.stride=0,hs=Xr.divisor,Xr.divisor=0,Ji=ct.state,ct.state=1,Ui=ct.x,ct.x=0,ro=ct.y,ct.y=0,na=ct.z,ct.z=0,On=ct.w,ct.w=0,In=ct.buffer,ct.buffer=W,Va=ct.size,ct.size=0,_s=ct.normalized,ct.normalized=!1,ul=ct.type,ct.type=W.dtype,Qn=ct.offset,ct.offset=0,Mo=ct.stride,ct.stride=0,nl=ct.divisor,ct.divisor=0,pl=tr.state,tr.state=1,Dl=tr.x,tr.x=0,Fu=tr.y,tr.y=0,vf=tr.z,tr.z=0,Ql=tr.w,tr.w=0,Ef=tr.buffer,tr.buffer=ae,Cu=tr.size,tr.size=0,gf=tr.normalized,tr.normalized=!1,xf=tr.type,tr.type=ae.dtype,Cf=tr.offset,tr.offset=0,Gu=tr.stride,tr.stride=0,cf=tr.divisor,tr.divisor=0,mf=pr.state,pr.state=1,Fl=pr.x,pr.x=0,bf=pr.y,pr.y=0,cu=pr.z,pr.z=0,Y=pr.w,pr.w=0,R=pr.buffer,pr.buffer=ze,J=pr.size,pr.size=0,O=pr.normalized,pr.normalized=!1,K=pr.type,pr.type=ze.dtype,_e=pr.offset,pr.offset=0,ne=pr.stride,pr.stride=0,Le=pr.divisor,pr.divisor=0,Ze=gr.state,gr.state=1,kt=gr.x,gr.x=0,dr=gr.y,gr.y=0,Mr=gr.z,gr.z=0,lr=gr.w,gr.w=0,$e=gr.buffer,gr.buffer=de,ht=gr.size,gr.size=0,bt=gr.normalized,gr.normalized=!1,Kt=gr.type,gr.type=de.dtype,sr=gr.offset,gr.offset=0,Qt=gr.stride,gr.stride=0,ur=gr.divisor,gr.divisor=0,er=Zr.state,Zr.state=1,Ot=Zr.x,Zr.x=0,Jt=Zr.y,Zr.y=0,Lt=Zr.z,Zr.z=0,Ar=Zr.w,Zr.w=0,Ur=Zr.buffer,Zr.buffer=ke,hi=Zr.size,Zr.size=0,Cn=Zr.normalized,Zr.normalized=!1,Yi=Zr.type,Zr.type=ke.dtype,yn=Zr.offset,Zr.offset=0,Xa=Zr.stride,Zr.stride=0,ca=Zr.divisor,Zr.divisor=0,An=Ti.state,Ti.state=1,Pn=Ti.x,Ti.x=0,Nn=Ti.y,Ti.y=0,xa=Ti.z,Ti.z=0,Zo=Ti.w,Ti.w=0,ru=Ti.buffer,Ti.buffer=d,yu=Ti.size,Ti.size=0,Du=Ti.normalized,Ti.normalized=!1,vu=Ti.type,Ti.type=d.dtype,zu=Ti.offset,Ti.offset=0,Ju=Ti.stride,Ti.stride=0,Vf=Ti.divisor,Ti.divisor=0,wd=ls.vert,ls.vert=en,Td=ls.frag,ls.frag=ii,kn.dirty=!0,Bo(Ia,ln,ko),Ia.viewportWidth=as,Ia.viewportHeight=Ma,jn[0]=Qs,jn[1]=ho,jn[2]=gs,jn[3]=Vo,Po[0]=Do,Po[1]=Lo,Po[2]=xs,Po[3]=ks,fa.blend_enable=Ea,gn[0]=Jn,gn[1]=Oo,Ha[0]=rl,Ha[1]=Gs,Ha[2]=bs,Ha[3]=zs,fa.cull_enable=$o,fa.cull_face=Ta,fa.depth_enable=os,fa.depth_func=_l,fa.depth_mask=Ss,ao[0]=po,ao[1]=go,fa.dither=ss,fa.lineWidth=qo,mo[0]=Hs,mo[1]=Ro,mo[2]=tl,mo[3]=Fs,fa.scissor_enable=hl,kn.profile=Fa,Aa.offset=jo,Aa.count=Is,Aa.primitive=Bs,mn[Rr]=At,mn[pi]=wr,mn[Di]=Fr,mn[ni]=Si,mn[$i]=Ki,mn[Qi]=Pi,mn[si]=Li,mn[Ai]=Gn,mn[Ni]=ya,mn[Rt]=pa,mn[yt]=zn,mn[Gt]=Cs,mn[Wt]=dl,mn[xr]=Bl,mn[Lr]=eu,mn[Nr]=Ul,mn[Or]=ns,mn[Hr]=cs,mn[jr]=ll,mn[gi]=zl,mn[ki]=Rl,mn[Vi]=Ll,mn[ti]=Os,mn[tn]=Vl,Yr.state=Nl,Yr.x=le,Yr.y=w,Yr.z=q,Yr.w=Q,Yr.buffer=ee,Yr.size=ue,Yr.normalized=Ve,Yr.type=tt,Yr.offset=mt,Yr.stride=Bt,Yr.divisor=ir,oi.state=or,oi.x=kr,oi.y=Vr,oi.z=he,oi.w=Se,oi.buffer=Ne,oi.size=Ge,oi.normalized=lt,oi.type=rt,oi.offset=pt,oi.stride=Ht,oi.divisor=nr,Fi.state=fr,Fi.x=Tr,Fi.y=Ir,Fi.z=ri,Fi.w=li,Fi.buffer=Ei,Fi.size=hn,Fi.normalized=Zn,Fi.type=Yn,Fi.offset=Ua,Fi.stride=Fo,Fi.divisor=vl,an.state=Us,an.x=ml,an.y=au,an.z=Sl,an.w=Yl,an.buffer=Ol,an.size=ou,an.normalized=Pu,an.type=iu,an.offset=tu,an.stride=Hu,an.divisor=$u,nn.state=Ku,nn.x=Wu,nn.y=ju,nn.z=sf,nn.w=_f,nn.buffer=Qu,nn.size=ef,nn.normalized=Z,nn.type=se,nn.offset=Pe,nn.stride=Xe,nn.divisor=Qe,Ri.state=st,Ri.x=jt,Ri.y=_t,Ri.z=hr,Ri.w=Cr,Ri.buffer=zr,Ri.size=fi,Ri.normalized=$r,Ri.type=Bi,Ri.offset=fn,Ri.stride=mi,Ri.divisor=zi,Ii.state=ji,Ii.x=pn,Ii.y=sn,Ii.z=wi,Ii.w=xo,Ii.buffer=no,Ii.size=Xo,Ii.normalized=js,Ii.type=El,Ii.offset=Pl,Ii.stride=pu,Ii.divisor=Il,xn.state=fu,xn.x=Xu,xn.y=Vu,xn.z=tf,xn.w=ds,xn.buffer=Wl,xn.size=Tu,xn.normalized=Au,xn.type=lf,xn.offset=hf,xn.stride=Mf,xn.divisor=pf,bi.state=fc,bi.x=Be,bi.y=qt,bi.z=ar,bi.w=Qr,bi.buffer=yi,bi.size=ci,bi.normalized=vi,bi.type=on,bi.offset=Bn,bi.stride=Ln,bi.divisor=wn,Xr.state=Ls,Xr.x=ua,Xr.y=Hn,Xr.z=qi,Xr.w=Wr,Xr.buffer=xi,Xr.size=dn,Xr.normalized=En,Xr.type=Zi,Xr.offset=ga,Xr.stride=Kn,Xr.divisor=hs,ct.state=Ji,ct.x=Ui,ct.y=ro,ct.z=na,ct.w=On,ct.buffer=In,ct.size=Va,ct.normalized=_s,ct.type=ul,ct.offset=Qn,ct.stride=Mo,ct.divisor=nl,tr.state=pl,tr.x=Dl,tr.y=Fu,tr.z=vf,tr.w=Ql,tr.buffer=Ef,tr.size=Cu,tr.normalized=gf,tr.type=xf,tr.offset=Cf,tr.stride=Gu,tr.divisor=cf,pr.state=mf,pr.x=Fl,pr.y=bf,pr.z=cu,pr.w=Y,pr.buffer=R,pr.size=J,pr.normalized=O,pr.type=K,pr.offset=_e,pr.stride=ne,pr.divisor=Le,gr.state=Ze,gr.x=kt,gr.y=dr,gr.z=Mr,gr.w=lr,gr.buffer=$e,gr.size=ht,gr.normalized=bt,gr.type=Kt,gr.offset=sr,gr.stride=Qt,gr.divisor=ur,Zr.state=er,Zr.x=Ot,Zr.y=Jt,Zr.z=Lt,Zr.w=Ar,Zr.buffer=Ur,Zr.size=hi,Zr.normalized=Cn,Zr.type=Yi,Zr.offset=yn,Zr.stride=Xa,Zr.divisor=ca,Ti.state=An,Ti.x=Pn,Ti.y=Nn,Ti.z=xa,Ti.w=Zo,Ti.buffer=ru,Ti.size=yu,Ti.normalized=Du,Ti.type=vu,Ti.offset=zu,Ti.stride=Ju,Ti.divisor=Vf,ls.vert=wd,ls.frag=Td,kn.dirty=!0},batch:function(ln,Bo){var ko,oo,za,ea;if(ko=ra.next,ko!==ra.cur&&(ko?Kr.bindFramebuffer(36160,ko.framebuffer):Kr.bindFramebuffer(36160,null),ra.cur=ko),kn.dirty){var rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os;rs=Ko[0],$s=Ko[1],us=Ko[2],Ds=Ko[3],(rs!==Qo[0]||$s!==Qo[1]||us!==Qo[2]||Ds!==Qo[3])&&(Kr.colorMask(rs,$s,us,Ds),Qo[0]=rs,Qo[1]=$s,Qo[2]=us,Qo[3]=Ds),fl=fa.frontFace,fl!==kn.frontFace&&(Kr.frontFace(fl),kn.frontFace=fl),as=fa.polygonOffset_enable,as!==kn.polygonOffset_enable&&(as?Kr.enable(32823):Kr.disable(32823),kn.polygonOffset_enable=as),Ma=Hi[0],Qs=Hi[1],(Ma!==Sa[0]||Qs!==Sa[1])&&(Kr.polygonOffset(Ma,Qs),Sa[0]=Ma,Sa[1]=Qs),ho=fa.sample_alpha,ho!==kn.sample_alpha&&(ho?Kr.enable(32926):Kr.disable(32926),kn.sample_alpha=ho),gs=fa.sample_enable,gs!==kn.sample_enable&&(gs?Kr.enable(32928):Kr.disable(32928),kn.sample_enable=gs),Vo=Qa[0],Do=Qa[1],(Vo!==vn[0]||Do!==vn[1])&&(Kr.sampleCoverage(Vo,Do),vn[0]=Vo,vn[1]=Do),Lo=fa.stencil_enable,Lo!==kn.stencil_enable&&(Lo?Kr.enable(2960):Kr.disable(2960),kn.stencil_enable=Lo),xs=fa.stencil_mask,xs!==kn.stencil_mask&&(Kr.stencilMask(xs),kn.stencil_mask=xs),ks=da[0],Ea=da[1],Jn=da[2],(ks!==la[0]||Ea!==la[1]||Jn!==la[2])&&(Kr.stencilFunc(ks,Ea,Jn),la[0]=ks,la[1]=Ea,la[2]=Jn),Oo=vo[0],rl=vo[1],Gs=vo[2],bs=vo[3],(Oo!==Ts[0]||rl!==Ts[1]||Gs!==Ts[2]||bs!==Ts[3])&&(Kr.stencilOpSeparate(Oo,rl,Gs,bs),Ts[0]=Oo,Ts[1]=rl,Ts[2]=Gs,Ts[3]=bs),zs=ps[0],$o=ps[1],Ta=ps[2],os=ps[3],(zs!==co[0]||$o!==co[1]||Ta!==co[2]||os!==co[3])&&(Kr.stencilOpSeparate(zs,$o,Ta,os),co[0]=zs,co[1]=$o,co[2]=Ta,co[3]=os)}Kr.blendColor(0,0,0,0),Wi[0]=0,Wi[1]=0,Wi[2]=0,Wi[3]=0,Xi?Kr.enable(3042):Kr.disable(3042),kn.blend_enable=Xi,Kr.blendEquationSeparate(32774,32774),Ps[0]=32774,Ps[1]=32774,Kr.blendFuncSeparate(770,771,1,1),Sn[0]=770,Sn[1]=771,Sn[2]=1,Sn[3]=1,aa?Kr.enable(2884):Kr.disable(2884),kn.cull_enable=aa,Kr.cullFace(Mn),kn.cull_face=Mn,Un?Kr.enable(2929):Kr.disable(2929),kn.depth_enable=Un,Kr.depthFunc(Ga),kn.depth_func=Ga,Kr.depthMask(ma),kn.depth_mask=ma,Kr.depthRange(0,1),Ba[0]=0,Ba[1]=1,oa?Kr.enable(3024):Kr.disable(3024),kn.dither=oa,Kr.lineWidth(ka),kn.lineWidth=ka,so?Kr.enable(3089):Kr.disable(3089),kn.scissor_enable=so,oo=kn.profile,kn.profile=!1,Kr.useProgram(h.program);var _l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci;for(fo.setVAO(null),_l=p.location,Ss=$a[_l],Ss.buffer||Kr.enableVertexAttribArray(_l),(Ss.type!==d.dtype||Ss.size!==4||Ss.buffer!==d||Ss.normalized!==!1||Ss.offset!==0||Ss.stride!==0)&&(Kr.bindBuffer(34962,d.buffer),Kr.vertexAttribPointer(_l,4,d.dtype,!1,0,0),Ss.type=d.dtype,Ss.size=4,Ss.buffer=d,Ss.normalized=!1,Ss.offset=0,Ss.stride=0),po=b.location,go=$a[po],go.buffer||Kr.enableVertexAttribArray(po),(go.type!==_.dtype||go.size!==4||go.buffer!==_||go.normalized!==!1||go.offset!==0||go.stride!==0)&&(Kr.bindBuffer(34962,_.buffer),Kr.vertexAttribPointer(po,4,_.dtype,!1,0,0),go.type=_.dtype,go.size=4,go.buffer=_,go.normalized=!1,go.offset=0,go.stride=0),ss=k.location,qo=$a[ss],qo.buffer||Kr.enableVertexAttribArray(ss),(qo.type!==v.dtype||qo.size!==4||qo.buffer!==v||qo.normalized!==!1||qo.offset!==0||qo.stride!==0)&&(Kr.bindBuffer(34962,v.buffer),Kr.vertexAttribPointer(ss,4,v.dtype,!1,0,0),qo.type=v.dtype,qo.size=4,qo.buffer=v,qo.normalized=!1,qo.offset=0,qo.stride=0),zo=A.location,io=$a[zo],io.buffer||Kr.enableVertexAttribArray(zo),(io.type!==E.dtype||io.size!==4||io.buffer!==E||io.normalized!==!1||io.offset!==0||io.stride!==0)&&(Kr.bindBuffer(34962,E.buffer),Kr.vertexAttribPointer(zo,4,E.dtype,!1,0,0),io.type=E.dtype,io.size=4,io.buffer=E,io.normalized=!1,io.offset=0,io.stride=0),Io=x.location,Da=$a[Io],Da.buffer||Kr.enableVertexAttribArray(Io),(Da.type!==L.dtype||Da.size!==4||Da.buffer!==L||Da.normalized!==!1||Da.offset!==0||Da.stride!==0)&&(Kr.bindBuffer(34962,L.buffer),Kr.vertexAttribPointer(Io,4,L.dtype,!1,0,0),Da.type=L.dtype,Da.size=4,Da.buffer=L,Da.normalized=!1,Da.offset=0,Da.stride=0),vs=M.location,fs=$a[vs],fs.buffer||Kr.enableVertexAttribArray(vs),(fs.type!==C.dtype||fs.size!==4||fs.buffer!==C||fs.normalized!==!1||fs.offset!==0||fs.stride!==0)&&(Kr.bindBuffer(34962,C.buffer),Kr.vertexAttribPointer(vs,4,C.dtype,!1,0,0),fs.type=C.dtype,fs.size=4,fs.buffer=C,fs.normalized=!1,fs.offset=0,fs.stride=0),cl=P.location,el=$a[cl],el.buffer||Kr.enableVertexAttribArray(cl),(el.type!==m.dtype||el.size!==4||el.buffer!==m||el.normalized!==!1||el.offset!==0||el.stride!==0)&&(Kr.bindBuffer(34962,m.buffer),Kr.vertexAttribPointer(cl,4,m.dtype,!1,0,0),el.type=m.dtype,el.size=4,el.buffer=m,el.normalized=!1,el.offset=0,el.stride=0),Hs=B.location,Ro=$a[Hs],Ro.buffer||Kr.enableVertexAttribArray(Hs),(Ro.type!==T.dtype||Ro.size!==4||Ro.buffer!==T||Ro.normalized!==!1||Ro.offset!==0||Ro.stride!==0)&&(Kr.bindBuffer(34962,T.buffer),Kr.vertexAttribPointer(Hs,4,T.dtype,!1,0,0),Ro.type=T.dtype,Ro.size=4,Ro.buffer=T,Ro.normalized=!1,Ro.offset=0,Ro.stride=0),tl=U.location,Fs=$a[tl],Fs.buffer||Kr.enableVertexAttribArray(tl),(Fs.type!==F.dtype||Fs.size!==4||Fs.buffer!==F||Fs.normalized!==!1||Fs.offset!==0||Fs.stride!==0)&&(Kr.bindBuffer(34962,F.buffer),Kr.vertexAttribPointer(tl,4,F.dtype,!1,0,0),Fs.type=F.dtype,Fs.size=4,Fs.buffer=F,Fs.normalized=!1,Fs.offset=0,Fs.stride=0),hl=j.location,Fa=$a[hl],Fa.buffer||Kr.enableVertexAttribArray(hl),(Fa.type!==G.dtype||Fa.size!==4||Fa.buffer!==G||Fa.normalized!==!1||Fa.offset!==0||Fa.stride!==0)&&(Kr.bindBuffer(34962,G.buffer),Kr.vertexAttribPointer(hl,4,G.dtype,!1,0,0),Fa.type=G.dtype,Fa.size=4,Fa.buffer=G,Fa.normalized=!1,Fa.offset=0,Fa.stride=0),Ms=N.location,jo=$a[Ms],jo.buffer||Kr.enableVertexAttribArray(Ms),(jo.type!==H.dtype||jo.size!==4||jo.buffer!==H||jo.normalized!==!1||jo.offset!==0||jo.stride!==0)&&(Kr.bindBuffer(34962,H.buffer),Kr.vertexAttribPointer(Ms,4,H.dtype,!1,0,0),jo.type=H.dtype,jo.size=4,jo.buffer=H,jo.normalized=!1,jo.offset=0,jo.stride=0),Rs=re.location,Is=$a[Rs],Is.buffer||Kr.enableVertexAttribArray(Rs),(Is.type!==W.dtype||Is.size!==4||Is.buffer!==W||Is.normalized!==!1||Is.offset!==0||Is.stride!==0)&&(Kr.bindBuffer(34962,W.buffer),Kr.vertexAttribPointer(Rs,4,W.dtype,!1,0,0),Is.type=W.dtype,Is.size=4,Is.buffer=W,Is.normalized=!1,Is.offset=0,Is.stride=0),Bs=be.location,At=$a[Bs],At.buffer||Kr.enableVertexAttribArray(Bs),(At.type!==ae.dtype||At.size!==4||At.buffer!==ae||At.normalized!==!1||At.offset!==0||At.stride!==0)&&(Kr.bindBuffer(34962,ae.buffer),Kr.vertexAttribPointer(Bs,4,ae.dtype,!1,0,0),At.type=ae.dtype,At.size=4,At.buffer=ae,At.normalized=!1,At.offset=0,At.stride=0),Vt=Ce.location,wr=$a[Vt],wr.buffer||Kr.enableVertexAttribArray(Vt),(wr.type!==ze.dtype||wr.size!==4||wr.buffer!==ze||wr.normalized!==!1||wr.offset!==0||wr.stride!==0)&&(Kr.bindBuffer(34962,ze.buffer),Kr.vertexAttribPointer(Vt,4,ze.dtype,!1,0,0),wr.type=ze.dtype,wr.size=4,wr.buffer=ze,wr.normalized=!1,wr.offset=0,wr.stride=0),mr=te.location,Fr=$a[mr],Fr.buffer||Kr.enableVertexAttribArray(mr),(Fr.type!==de.dtype||Fr.size!==4||Fr.buffer!==de||Fr.normalized!==!1||Fr.offset!==0||Fr.stride!==0)&&(Kr.bindBuffer(34962,de.buffer),Kr.vertexAttribPointer(mr,4,de.dtype,!1,0,0),Fr.type=de.dtype,Fr.size=4,Fr.buffer=de,Fr.normalized=!1,Fr.offset=0,Fr.stride=0),_i=Ee.location,Si=$a[_i],Si.buffer||Kr.enableVertexAttribArray(_i),(Si.type!==ke.dtype||Si.size!==4||Si.buffer!==ke||Si.normalized!==!1||Si.offset!==0||Si.stride!==0)&&(Kr.bindBuffer(34962,ke.buffer),Kr.vertexAttribPointer(_i,4,ke.dtype,!1,0,0),Si.type=ke.dtype,Si.size=4,Si.buffer=ke,Si.normalized=!1,Si.offset=0,Si.stride=0),Kr.uniform1i(Tt.location,vt.bind()),Ci=Aa.elements,Ci?Kr.bindBuffer(34963,Ci.buffer.buffer):fo.currentVAO&&(Ci=ys.getElements(fo.currentVAO.elements),Ci&&Kr.bindBuffer(34963,Ci.buffer.buffer)),za=0;za>1)):Kr.drawArrays(1,Tr,Ir),Ia.viewportWidth=ya,Ia.viewportHeight=ia,mt.unbind())}vt.unbind(),kn.dirty=!0,fo.setVAO(null),kn.profile=oo}}}});var MVe=Ae((Obr,SVe)=>{"use strict";var nWt=gVe(),aWt=xVe(),oWt=wVe(),sWt=AVe();SVe.exports={"453a70fefa48db31713162aeb1ac438cb8579f54504f3b23acf32128df3dfd45":nWt,"30680f8f6712ef1af5cf7547e0af35b036fb300c67b07967cf448492ff4de4d0":aWt,a3970baf1d8cac9305ee830c7026550387343d4dde2353dd86a4d082c97d3470:oWt,"3fd666968f3ce90d1c048b7a9aab515f3ce387a5401a10f8b66121c9469d1c0d":sWt}});var CVe=Ae((qbr,kVe)=>{"use strict";var EVe=KK(),lWt=MVe();Object.assign(EVe.reglPrecompiled,lWt);kVe.exports=EVe});var zVe=Ae((Nbr,PVe)=>{"use strict";var LVe=mVe();LVe.plot=CVe();PVe.exports=LVe});var JK=Ae((Ubr,BVe)=>{"use strict";var RVe=Su().extendFlat,uWt=Gf(),IVe=gc(),fWt=nc(),{hovertemplateAttrs:DVe,templatefallbackAttrs:FVe}=Ff(),cWt=zc().attributes,hWt=RVe({editType:"calc"},fWt("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:DVe({editType:"plot",arrayOk:!1},{keys:["count","probability"]}),hovertemplatefallback:FVe({editType:"plot"})});BVe.exports={domain:cWt({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:RVe({},uWt.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:DVe({editType:"plot",arrayOk:!1},{keys:["count","probability","category","categorycount","colorcount","bandcolorcount"]}),hovertemplatefallback:FVe({editType:"plot"}),arrangement:{valType:"enumerated",values:["perpendicular","freeform","fixed"],dflt:"perpendicular",editType:"plot"},bundlecolors:{valType:"boolean",dflt:!0,editType:"plot"},sortpaths:{valType:"enumerated",values:["forward","backward"],dflt:"forward",editType:"plot"},labelfont:IVe({editType:"calc"}),tickfont:IVe({autoShadowDflt:!0,editType:"calc"}),dimensions:{_isLinkedToArray:"dimension",label:{valType:"string",editType:"calc"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},values:{valType:"data_array",dflt:[],editType:"calc"},displayindex:{valType:"integer",editType:"calc"},editType:"calc",visible:{valType:"boolean",dflt:!0,editType:"calc"}},line:hWt,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc"},customdata:void 0,hoverlabel:void 0,ids:void 0,legend:void 0,legendgroup:void 0,legendrank:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}});var NVe=Ae((Vbr,qVe)=>{"use strict";var bS=ei(),dWt=yp().hasColorscale,pWt=rd(),vWt=zc().defaults,mWt=Jd(),OVe=JK(),yWt=B8(),gWt=mp().isTypedArraySpec;function _Wt(e,t,r,n,i){i("line.shape"),i("line.hovertemplate"),i("line.hovertemplatefallback");var a=i("line.color",n.colorway[0]);if(dWt(e,"line")&&bS.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),pWt(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function xWt(e,t){function r(l,f){return bS.coerce(e,t,OVe.dimensions,l,f)}var n=r("values"),i=r("visible");if(n&&n.length||(i=t.visible=!1),i){r("label"),r("displayindex",t._index);var a=e.categoryarray,o=bS.isArrayOrTypedArray(a)&&a.length>0||gWt(a),s;o&&(s="array");var u=r("categoryorder",s);u==="array"?(r("categoryarray"),r("ticktext")):(delete e.categoryarray,delete e.ticktext),!o&&u==="array"&&(t.categoryorder="trace")}}qVe.exports=function(t,r,n,i){function a(l,f){return bS.coerce(t,r,OVe,l,f)}var o=mWt(t,r,{name:"dimensions",handleItemDefaults:xWt}),s=_Wt(t,r,n,i,a);vWt(r,i,a),(!Array.isArray(o)||!o.length)&&(r.visible=!1),yWt(r,o,"values",s),a("hoveron"),a("hovertemplate"),a("hovertemplatefallback"),a("arrangement"),a("bundlecolors"),a("sortpaths"),a("counts");var u=i.font;bS.coerceFont(a,"labelfont",u,{overrideDflt:{size:Math.round(u.size)}}),bS.coerceFont(a,"tickfont",u,{autoShadowDflt:!0,overrideDflt:{size:Math.round(u.size/1.2)}})}});var VVe=Ae((Gbr,UVe)=>{"use strict";var bWt=Jy().wrap,wWt=yp().hasColorscale,TWt=gp(),AWt=oq(),SWt=Mu(),Dk=ei(),MWt=ku();UVe.exports=function(t,r){var n=Dk.filterVisible(r.dimensions);if(n.length===0)return[];var i=n.map(function(m){var P;if(m.categoryorder==="trace")P=null;else if(m.categoryorder==="array")P=m.categoryarray;else{P=AWt(m.values);for(var T=!0,B=0;B=e.length||t[e[r]]!==void 0)return!1;t[e[r]]=!0}return!0}});var JVe=Ae((Hbr,KVe)=>{"use strict";var Uf=Jl(),BWt=(R2(),ob(I2)).interpolateNumber,OWt=Gz(),Ok=Xc(),gx=ei(),Fk=gx.strTranslate,GVe=Mu(),$K=cd(),qWt=Xf();function NWt(e,t,r,n){var i=t._context.staticPlot,a=e.map(tjt.bind(0,t,r)),o=n.selectAll("g.parcatslayer").data([null]);o.enter().append("g").attr("class","parcatslayer").style("pointer-events",i?"none":"all");var s=o.selectAll("g.trace.parcats").data(a,u1),u=s.enter().append("g").attr("class","trace parcats");s.attr("transform",function(k){return Fk(k.x,k.y)}),u.append("g").attr("class","paths");var l=s.select("g.paths"),f=l.selectAll("path.path").data(function(k){return k.paths},u1);f.attr("fill",function(k){return k.model.color});var c=f.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",function(k){return k.model.color}).attr("fill-opacity",0);tJ(c),f.attr("d",function(k){return k.svgD}),c.empty()||f.sort(QK),f.exit().remove(),f.on("mouseover",UWt).on("mouseout",VWt).on("click",GWt),u.append("g").attr("class","dimensions");var h=s.select("g.dimensions"),d=h.selectAll("g.dimension").data(function(k){return k.dimensions},u1);d.enter().append("g").attr("class","dimension"),d.attr("transform",function(k){return Fk(k.x,0)}),d.exit().remove();var p=d.selectAll("g.category").data(function(k){return k.categories},u1),_=p.enter().append("g").attr("class","category");p.attr("transform",function(k){return Fk(0,k.y)}),_.append("rect").attr("class","catrect").attr("pointer-events","none"),p.select("rect.catrect").attr("fill","none").attr("width",function(k){return k.width}).attr("height",function(k){return k.height}),WVe(_);var b=p.selectAll("rect.bandrect").data(function(k){return k.bands},u1);b.each(function(){gx.raiseToTop(this)}),b.attr("fill",function(k){return k.color});var v=b.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",function(k){return k.color}).attr("fill-opacity",0);b.attr("fill",function(k){return k.color}).attr("width",function(k){return k.width}).attr("height",function(k){return k.height}).attr("y",function(k){return k.y}).attr("cursor",function(k){return k.parcatsViewModel.arrangement==="fixed"?"default":k.parcatsViewModel.arrangement==="perpendicular"?"ns-resize":"move"}),iJ(v),b.exit().remove(),_.append("text").attr("class","catlabel").attr("pointer-events","none"),p.select("text.catlabel").attr("text-anchor",function(k){return Bk(k)?"start":"end"}).attr("alignment-baseline","middle").style("fill","rgb(0, 0, 0)").attr("x",function(k){return Bk(k)?k.width+5:-5}).attr("y",function(k){return k.height/2}).text(function(k){return k.model.categoryLabel}).each(function(k){GVe.font(Uf.select(this),k.parcatsViewModel.categorylabelfont),qWt.convertToTspans(Uf.select(this),t)}),_.append("text").attr("class","dimlabel"),p.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",function(k){return k.parcatsViewModel.arrangement==="fixed"?"default":"ew-resize"}).attr("x",function(k){return k.width/2}).attr("y",-5).text(function(k,E){return E===0?k.parcatsViewModel.model.dimensions[k.model.dimensionInd].dimensionLabel:null}).each(function(k){GVe.font(Uf.select(this),k.parcatsViewModel.labelfont)}),p.selectAll("rect.bandrect").on("mouseover",KWt).on("mouseout",JWt),p.exit().remove(),d.call(Uf.behavior.drag().origin(function(k){return{x:k.x,y:0}}).on("dragstart",$Wt).on("drag",QWt).on("dragend",ejt)),s.each(function(k){k.traceSelection=Uf.select(this),k.pathSelection=Uf.select(this).selectAll("g.paths").selectAll("path.path"),k.dimensionSelection=Uf.select(this).selectAll("g.dimensions").selectAll("g.dimension")}),s.exit().remove()}KVe.exports=function(e,t,r,n){NWt(r,e,n,t)};function u1(e){return e.key}function Bk(e){var t=e.parcatsViewModel.dimensions.length,r=e.parcatsViewModel.dimensions[t-1].model.dimensionInd;return e.model.dimensionInd===r}function QK(e,t){return e.model.rawColor>t.model.rawColor?1:e.model.rawColor"),x=Uf.mouse(i)[0];Ok.loneHover({trace:a,x:p-s.left+u.left,y:_-s.top+u.top,text:L,color:e.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:b,idealAlign:x1&&l.displayInd===u.dimensions.length-1?(h=o.left,d="left"):(h=o.left+o.width,d="right");var p=s.model.count,_=s.model.categoryLabel,b=p/s.parcatsViewModel.model.count,v={countLabel:p,categoryLabel:_,probabilityLabel:b.toFixed(3)},k=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&k.push(["Count:",v.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&k.push(["P("+v.categoryLabel+"):",v.probabilityLabel].join(" "));var E=k.join("
");return{trace:f,x:n*(h-t.left),y:i*(c-t.top),text:E,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:d,hovertemplate:f.hovertemplate,hovertemplateLabels:v,eventData:[{data:f._input,fullData:f,count:p,category:_,probability:b}]}}function ZWt(e,t,r){var n=[];return Uf.select(r.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each(function(){var i=this;n.push(jVe(e,t,i))}),n}function YWt(e,t,r){e._fullLayout._calcInverseTransform(e);var n=e._fullLayout._invScaleX,i=e._fullLayout._invScaleY,a=r.getBoundingClientRect(),o=Uf.select(r).datum(),s=o.categoryViewModel,u=s.parcatsViewModel,l=u.model.dimensions[s.model.dimensionInd],f=u.trace,c=a.y+a.height/2,h,d;u.dimensions.length>1&&l.displayInd===u.dimensions.length-1?(h=a.left,d="left"):(h=a.left+a.width,d="right");var p=s.model.categoryLabel,_=o.parcatsViewModel.model.count,b=0;o.categoryViewModel.bands.forEach(function(P){P.color===o.color&&(b+=P.count)});var v=s.model.count,k=0;u.pathSelection.each(function(P){P.model.color===o.color&&(k+=P.model.count)});var E=b/_,A=b/k,L=b/v,x={countLabel:b,categoryLabel:p,probabilityLabel:E.toFixed(3)},C=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&C.push(["Count:",x.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&(C.push("P(color \u2229 "+p+"): "+x.probabilityLabel),C.push("P("+p+" | color): "+A.toFixed(3)),C.push("P(color | "+p+"): "+L.toFixed(3)));var M=C.join("
"),m=$K.mostReadable(o.color,["black","white"]);return{trace:f,x:n*(h-t.left),y:i*(c-t.top),text:M,color:o.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:m,fontSize:10,idealAlign:d,hovertemplate:f.hovertemplate,hovertemplateLabels:x,eventData:[{data:f._input,fullData:f,category:p,count:_,probability:E,categorycount:v,colorcount:k,bandcolorcount:b}]}}function KWt(e){if(!e.parcatsViewModel.dragDimension&&e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var t=Uf.mouse(this)[1];if(t<-1)return;var r=e.parcatsViewModel.graphDiv,n=r._fullLayout,i=n._paperdiv.node().getBoundingClientRect(),a=e.parcatsViewModel.hoveron,o=this;if(a==="color"?(XWt(o),aJ(o,"plotly_hover",Uf.event)):(jWt(o),nJ(o,"plotly_hover",Uf.event)),e.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var s;a==="category"?s=jVe(r,i,o):a==="color"?s=YWt(r,i,o):a==="dimension"&&(s=ZWt(r,i,o)),s&&Ok.loneHover(s,{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:r})}}}function JWt(e){var t=e.parcatsViewModel;if(!t.dragDimension&&(tJ(t.pathSelection),WVe(t.dimensionSelection.selectAll("g.category")),iJ(t.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),Ok.loneUnhover(t.graphDiv._fullLayout._hoverlayer.node()),t.pathSelection.sort(QK),t.hoverinfoItems.indexOf("skip")===-1)){var r=e.parcatsViewModel.hoveron,n=this;r==="color"?aJ(n,"plotly_unhover",Uf.event):nJ(n,"plotly_unhover",Uf.event)}}function $Wt(e){e.parcatsViewModel.arrangement!=="fixed"&&(e.dragDimensionDisplayInd=e.model.displayInd,e.initialDragDimensionDisplayInds=e.parcatsViewModel.model.dimensions.map(function(t){return t.displayInd}),e.dragHasMoved=!1,e.dragCategoryDisplayInd=null,Uf.select(this).selectAll("g.category").select("rect.catrect").each(function(t){var r=Uf.mouse(this)[0],n=Uf.mouse(this)[1];-2<=r&&r<=t.width+2&&-2<=n&&n<=t.height+2&&(e.dragCategoryDisplayInd=t.model.displayInd,e.initialDragCategoryDisplayInds=e.model.categories.map(function(i){return i.displayInd}),t.model.dragY=t.y,gx.raiseToTop(this.parentNode),Uf.select(this.parentNode).selectAll("rect.bandrect").each(function(i){i.yf.y+f.height/2&&(a.model.displayInd=f.model.displayInd,f.model.displayInd=s),e.dragCategoryDisplayInd=a.model.displayInd}if(e.dragCategoryDisplayInd===null||e.parcatsViewModel.arrangement==="freeform"){i.model.dragX=Uf.event.x;var c=e.parcatsViewModel.dimensions[r],h=e.parcatsViewModel.dimensions[n];c!==void 0&&i.model.dragXh.x&&(i.model.displayInd=h.model.displayInd,h.model.displayInd=e.dragDimensionDisplayInd),e.dragDimensionDisplayInd=i.model.displayInd}sJ(e.parcatsViewModel),oJ(e.parcatsViewModel),YVe(e.parcatsViewModel),ZVe(e.parcatsViewModel)}}function ejt(e){if(e.parcatsViewModel.arrangement!=="fixed"&&e.dragDimensionDisplayInd!==null){Uf.select(this).selectAll("text").attr("font-weight","normal");var t={},r=XVe(e.parcatsViewModel),n=e.parcatsViewModel.model.dimensions.map(function(h){return h.displayInd}),i=e.initialDragDimensionDisplayInds.some(function(h,d){return h!==n[d]});i&&n.forEach(function(h,d){var p=e.parcatsViewModel.model.dimensions[d].containerInd;t["dimensions["+p+"].displayindex"]=h});var a=!1;if(e.dragCategoryDisplayInd!==null){var o=e.model.categories.map(function(h){return h.displayInd});if(a=e.initialDragCategoryDisplayInds.some(function(h,d){return h!==o[d]}),a){var s=e.model.categories.slice().sort(function(h,d){return h.displayInd-d.displayInd}),u=s.map(function(h){return h.categoryValue}),l=s.map(function(h){return h.categoryLabel});t["dimensions["+e.model.containerInd+"].categoryarray"]=[u],t["dimensions["+e.model.containerInd+"].ticktext"]=[l],t["dimensions["+e.model.containerInd+"].categoryorder"]="array"}}if(e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1&&!e.dragHasMoved&&e.potentialClickBand&&(e.parcatsViewModel.hoveron==="color"?aJ(e.potentialClickBand,"plotly_click",Uf.event.sourceEvent):nJ(e.potentialClickBand,"plotly_click",Uf.event.sourceEvent)),e.model.dragX=null,e.dragCategoryDisplayInd!==null){var f=e.parcatsViewModel.dimensions[e.dragDimensionDisplayInd].categories[e.dragCategoryDisplayInd];f.model.dragY=null,e.dragCategoryDisplayInd=null}e.dragDimensionDisplayInd=null,e.parcatsViewModel.dragDimension=null,e.dragHasMoved=null,e.potentialClickBand=null,sJ(e.parcatsViewModel),oJ(e.parcatsViewModel);var c=Uf.transition().duration(300).ease("cubic-in-out");c.each(function(){YVe(e.parcatsViewModel,!0),ZVe(e.parcatsViewModel,!0)}).each("end",function(){(i||a)&&OWt.restyle(e.parcatsViewModel.graphDiv,t,[r])})}}function XVe(e){for(var t,r=e.graphDiv._fullData,n=0;n=0;u--)l+="C"+o[u]+","+(t[u+1]+n)+" "+a[u]+","+(t[u]+n)+" "+(e[u]+r[u])+","+(t[u]+n),l+="l-"+r[u]+",0 ";return l+="Z",l}function oJ(e){var t=e.dimensions,r=e.model,n=t.map(function(F){return F.categories.map(function(U){return U.y})}),i=e.model.dimensions.map(function(F){return F.categories.map(function(U){return U.displayInd})}),a=e.model.dimensions.map(function(F){return F.displayInd}),o=e.dimensions.map(function(F){return F.model.dimensionInd}),s=t.map(function(F){return F.x}),u=t.map(function(F){return F.width}),l=[];for(var f in r.paths)r.paths.hasOwnProperty(f)&&l.push(r.paths[f]);function c(F){var U=F.categoryInds.map(function(j,H){return i[H][j]}),G=o.map(function(j){return U[j]});return G}l.sort(function(F,U){var G=c(F),j=c(U);return e.sortpaths==="backward"&&(G.reverse(),j.reverse()),G.push(F.valueInds[0]),j.push(U.valueInds[0]),e.bundlecolors&&(G.unshift(F.rawColor),j.unshift(U.rawColor)),Gj?1:0});for(var h=new Array(l.length),d=t[0].model.count,p=t[0].categories.map(function(F){return F.height}).reduce(function(F,U){return F+U}),_=0;_0?v=p*(b.count/d):v=0;for(var k=new Array(n.length),E=0;E1?o=(e.width-2*r-n)/(i-1):o=0,s=r,u=s+o*a;var l=[],f=e.model.maxCats,c=t.categories.length,h=8,d=t.count,p=e.height-h*(f-1),_,b,v,k,E,A=(f-c)*h/2,L=t.categories.map(function(x){return{displayInd:x.displayInd,categoryInd:x.categoryInd}});for(L.sort(function(x,C){return x.displayInd-C.displayInd}),E=0;E0?_=b.count/d*p:_=0,v={key:b.valueInds[0],model:b,width:n,height:_,y:b.dragY!==null?b.dragY:A,bands:[],parcatsViewModel:e},A=A+_+h,l.push(v);return{key:t.dimensionInd,x:t.dragX!==null?t.dragX:u,y:0,width:n,model:t,categories:l,parcatsViewModel:e,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}});var lJ=Ae((Wbr,$Ve)=>{"use strict";var ijt=JVe();$Ve.exports=function(t,r,n,i){var a=t._fullLayout,o=a._paper,s=a._size;ijt(t,o,r,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},n,i)}});var eGe=Ae(eB=>{"use strict";var njt=Rd().getModuleCalcData,ajt=lJ(),QVe="parcats";eB.name=QVe;eB.plot=function(e,t,r,n){var i=njt(e.calcdata,QVe);if(i.length){var a=i[0];ajt(e,a,r,n)}};eB.clean=function(e,t,r,n){var i=n._has&&n._has("parcats"),a=t._has&&t._has("parcats");i&&!a&&n._paperdiv.selectAll(".parcats").remove()}});var rGe=Ae((Xbr,tGe)=>{"use strict";tGe.exports={attributes:JK(),supplyDefaults:NVe(),calc:VVe(),plot:lJ(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:eGe(),categories:["noOpacity"],meta:{}}});var nGe=Ae((Zbr,iGe)=>{"use strict";iGe.exports=rGe()});var f1=Ae((Ybr,cGe)=>{"use strict";var ojt=Z1(),aGe="1.13.4",uGe='\xA9 OpenStreetMap contributors',oGe=['\xA9 Carto',uGe].join(" "),sGe=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under ODbL'].join(" "),sjt=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under CC BY SA'].join(" "),fGe={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:uGe,tiles:["https://a.tile.openstreetmap.org/{z}/{x}/{y}.png","https://b.tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:oGe,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:oGe,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:sGe,tiles:["https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:sGe,tiles:["https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:sjt,tiles:["https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"}},lGe=ojt(fGe);cGe.exports={requiredVersion:aGe,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:fGe,styleValuesNonMapbox:lGe,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install @plotly/mapbox-gl@"+aGe+"."].join(` +`),Ik=Pk().maxDimensionCount,WUe=ei(),NUe=1e-6,J8=2048,CHt=new Uint8Array(4),UUe=new Uint8Array(4),VUe={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function LHt(e){e.read({x:0,y:0,width:1,height:1,data:CHt})}function jUe(e,t,r,n,i){var a=e._gl;a.enable(a.SCISSOR_TEST),a.scissor(t,r,n,i),e.clear({color:[0,0,0,0],depth:1})}function PHt(e,t,r,n,i,a){var o=a.key;function s(u){var l=Math.min(n,i-u*n);u===0&&(window.cancelAnimationFrame(r.currentRafs[o]),delete r.currentRafs[o],jUe(e,a.scissorX,a.scissorY,a.scissorWidth,a.viewBoxSize[1])),!r.clearOnly&&(a.count=2*l,a.offset=2*u*n,t(a),u*n+l>>8*t)%256/255}function RHt(e,t,r){for(var n=new Array(e*(Ik+4)),i=0,a=0;aj&&(j=M[B].dim1.canvasX,U=B);T===0&&jUe(i,0,0,l.canvasWidth,l.canvasHeight);var W=E(r);for(B=0;B{"use strict";var Ud=Jl(),l1=ei(),WK=l1.isArrayOrTypedArray,tVe=l1.numberFormat,rVe=(qUe(),ob(OUe)).default,iVe=wu(),qHt=l1.strRotate,$y=l1.strTranslate,NHt=Xf(),$8=Mu(),KUe=_c(),ZK=Jy(),tm=ZK.keyFun,Qy=ZK.repeat,nVe=ZK.unwrap,bS=GK(),Nf=Pk(),aVe=OK(),UHt=YUe();function JUe(e,t,r){return l1.aggNums(e,null,t,r)}function oVe(e,t){return YK(JUe(Math.min,e,t),JUe(Math.max,e,t))}function Q8(e){var t=e.range;return t?YK(t[0],t[1]):oVe(e.values,e._length)}function YK(e,t){return(isNaN(e)||!isFinite(e))&&(e=0),(isNaN(t)||!isFinite(t))&&(t=0),e===t&&(e===0?(e-=1,t+=1):(e*=.9,t*=1.1)),[e,t]}function VHt(e,t){return t?function(r,n){var i=t[n];return i==null?e(r):i}:e}function GHt(e,t,r,n,i){var a=Q8(r);return n?Ud.scale.ordinal().domain(n.map(VHt(tVe(r.tickformat),i))).range(n.map(function(o){var s=(o-a[0])/(a[1]-a[0]);return e-t+s*(2*t-e)})):Ud.scale.linear().domain(a).range([e-t,t])}function HHt(e,t){return Ud.scale.linear().range([t,e-t])}function WHt(e,t){return Ud.scale.linear().domain(Q8(e)).range([t,1-t])}function jHt(e){if(e.tickvals){var t=Q8(e);return Ud.scale.ordinal().domain(e.tickvals).range(e.tickvals.map(function(r){return(r-t[0])/(t[1]-t[0])}))}}function XHt(e){var t=e.map(function(a){return a[0]}),r=e.map(function(a){var o=rVe(a[1]);return Ud.rgb("rgb("+o[0]+","+o[1]+","+o[2]+")")}),n=function(a){return function(o){return o[a]}},i="rgb".split("").map(function(a){return Ud.scale.linear().clamp(!0).domain(t).range(r.map(n(a)))});return function(a){return i.map(function(o){return o(a)})}}function XK(e){return e.dimensions.some(function(t){return t.brush.filterSpecified})}function ZHt(e,t,r){var n=nVe(t),i=n.trace,a=bS.convertTypedArray(n.lineColor),o=i.line,s={color:rVe(i.unselected.line.color),opacity:i.unselected.line.opacity},u=KUe.extractOpts(o),l=u.reversescale?KUe.flipScale(n.cscale):n.cscale,f=i.domain,c=i.dimensions,h=e.width,d=i.labelangle,p=i.labelside,_=i.labelfont,b=i.tickfont,v=i.rangefont,k=l1.extendDeepNoArrays({},o,{color:a.map(Ud.scale.linear().domain(Q8({values:a,range:[u.min,u.max],_length:i._length}))),blockLineCount:Nf.blockLineCount,canvasOverdrag:Nf.overdrag*Nf.canvasPixelRatio}),E=Math.floor(h*(f.x[1]-f.x[0])),A=Math.floor(e.height*(f.y[1]-f.y[0])),L=e.margin||{l:80,r:80,t:100,b:80},x=E,C=A;return{key:r,colCount:c.filter(bS.isVisible).length,dimensions:c,tickDistance:Nf.tickDistance,unitToColor:XHt(l),lines:k,deselectedLines:s,labelAngle:d,labelSide:p,labelFont:_,tickFont:b,rangeFont:v,layoutWidth:h,layoutHeight:e.height,domain:f,translateX:f.x[0]*h,translateY:e.height-f.y[1]*e.height,pad:L,canvasWidth:x*Nf.canvasPixelRatio+2*k.canvasOverdrag,canvasHeight:C*Nf.canvasPixelRatio,width:x,height:C,canvasPixelRatio:Nf.canvasPixelRatio}}function YHt(e,t,r){var n=r.width,i=r.height,a=r.dimensions,o=r.canvasPixelRatio,s=function(h){return n*h/Math.max(1,r.colCount-1)},u=Nf.verticalPadding/i,l=HHt(i,Nf.verticalPadding),f={key:r.key,xScale:s,model:r,inBrushDrag:!1},c={};return f.dimensions=a.filter(bS.isVisible).map(function(h,d){var p=WHt(h,u),_=c[h.label];c[h.label]=(_||0)+1;var b=h.label+(_?"__"+_:""),v=h.constraintrange,k=v&&v.length;k&&!WK(v[0])&&(v=[v]);var E=k?v.map(function(F){return F.map(p)}):[[-1/0,1/0]],A=function(){var F=f;F.focusLayer&&F.focusLayer.render(F.panels,!0);var U=XK(F);!e.contextShown()&&U?(F.contextLayer&&F.contextLayer.render(F.panels,!0),e.contextShown(!0)):e.contextShown()&&!U&&(F.contextLayer&&F.contextLayer.render(F.panels,!0,!0),e.contextShown(!1))},L=h.values;L.length>h._length&&(L=L.slice(0,h._length));var x=h.tickvals,C;function M(F,U){return{val:F,text:C[U]}}function m(F,U){return F.val-U.val}if(WK(x)&&x.length){l1.isTypedArray(x)&&(x=Array.from(x)),C=h.ticktext,!WK(C)||!C.length?C=x.map(tVe(h.tickformat)):C.length>x.length?C=C.slice(0,x.length):x.length>C.length&&(x=x.slice(0,C.length));for(var P=1;P=U||N>=G)return;var H=B.lineLayer.readPixel(W,G-1-N),re=H[3]!==0,ae=re?H[2]+256*(H[1]+256*H[0]):null,be={x:W,y:N,clientX:F.clientX,clientY:F.clientY,dataIndex:B.model.key,curveNumber:ae};ae!==p&&(re?i.hover(be):i.unhover&&i.unhover(be),p=ae)}}),d.style("opacity",function(B){return B.pick?0:1}),s.style("background","rgba(255, 255, 255, 0)");var b=s.selectAll("."+Nf.cn.parcoords).data(h,tm);b.exit().remove(),b.enter().append("g").classed(Nf.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),b.attr("transform",function(B){return $y(B.model.translateX,B.model.translateY)});var v=b.selectAll("."+Nf.cn.parcoordsControlView).data(Qy,tm);v.enter().append("g").classed(Nf.cn.parcoordsControlView,!0),v.attr("transform",function(B){return $y(B.model.pad.l,B.model.pad.t)});var k=v.selectAll("."+Nf.cn.yAxis).data(function(B){return B.dimensions},tm);k.enter().append("g").classed(Nf.cn.yAxis,!0),v.each(function(B){jK(k,B,l)}),d.each(function(B){if(B.viewModel){!B.lineLayer||i?B.lineLayer=UHt(this,B):B.lineLayer.update(B),(B.key||B.key===0)&&(B.viewModel[B.key]=B.lineLayer);var F=!B.context||i;B.lineLayer.render(B.viewModel.panels,F)}}),k.attr("transform",function(B){return $y(B.xScale(B.xIndex),0)}),k.call(Ud.behavior.drag().origin(function(B){return B}).on("drag",function(B){var F=B.parent;c.linePickActive(!1),B.x=Math.max(-Nf.overdrag,Math.min(B.model.width+Nf.overdrag,Ud.event.x)),B.canvasX=B.x*B.model.canvasPixelRatio,k.sort(function(U,G){return U.x-G.x}).each(function(U,G){U.xIndex=G,U.x=B===U?U.x:U.xScale(U.xIndex),U.canvasX=U.x*U.model.canvasPixelRatio}),jK(k,F,l),k.filter(function(U){return Math.abs(B.xIndex-U.xIndex)!==0}).attr("transform",function(U){return $y(U.xScale(U.xIndex),0)}),Ud.select(this).attr("transform",$y(B.x,0)),k.each(function(U,G,j){j===B.parent.key&&(F.dimensions[G]=U)}),F.contextLayer&&F.contextLayer.render(F.panels,!1,!XK(F)),F.focusLayer.render&&F.focusLayer.render(F.panels)}).on("dragend",function(B){var F=B.parent;B.x=B.xScale(B.xIndex),B.canvasX=B.x*B.model.canvasPixelRatio,jK(k,F,l),Ud.select(this).attr("transform",function(U){return $y(U.x,0)}),F.contextLayer&&F.contextLayer.render(F.panels,!1,!XK(F)),F.focusLayer&&F.focusLayer.render(F.panels),F.pickLayer&&F.pickLayer.render(F.panels,!0),c.linePickActive(!0),i&&i.axesMoved&&i.axesMoved(F.key,F.dimensions.map(function(U){return U.crossfilterDimensionIndex}))})),k.exit().remove();var E=k.selectAll("."+Nf.cn.axisOverlays).data(Qy,tm);E.enter().append("g").classed(Nf.cn.axisOverlays,!0),E.selectAll("."+Nf.cn.axis).remove();var A=E.selectAll("."+Nf.cn.axis).data(Qy,tm);A.enter().append("g").classed(Nf.cn.axis,!0),A.each(function(B){var F=B.model.height/B.model.tickDistance,U=B.domainScale,G=U.domain();Ud.select(this).call(Ud.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(F,B.tickFormat).tickValues(B.ordinal?G:null).tickFormat(function(j){return bS.isOrdinal(B)?j:sVe(B.model.dimensions[B.visibleIndex],j)}).scale(U)),$8.font(A.selectAll("text"),B.model.tickFont)}),A.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),A.selectAll("text").style("cursor","default");var L=E.selectAll("."+Nf.cn.axisHeading).data(Qy,tm);L.enter().append("g").classed(Nf.cn.axisHeading,!0);var x=L.selectAll("."+Nf.cn.axisTitle).data(Qy,tm);x.enter().append("text").classed(Nf.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",a?"none":"auto"),x.text(function(B){return B.label}).each(function(B){var F=Ud.select(this);$8.font(F,B.model.labelFont),NHt.convertToTspans(F,t)}).attr("transform",function(B){var F=QUe(B.model.labelAngle,B.model.labelSide),U=Nf.axisTitleOffset;return(F.dir>0?"":$y(0,2*U+B.model.height))+qHt(F.degrees)+$y(-U*F.dx,-U*F.dy)}).attr("text-anchor",function(B){var F=QUe(B.model.labelAngle,B.model.labelSide),U=Math.abs(F.dx),G=Math.abs(F.dy);return 2*U>G?F.dir*F.dx<0?"start":"end":"middle"});var C=E.selectAll("."+Nf.cn.axisExtent).data(Qy,tm);C.enter().append("g").classed(Nf.cn.axisExtent,!0);var M=C.selectAll("."+Nf.cn.axisExtentTop).data(Qy,tm);M.enter().append("g").classed(Nf.cn.axisExtentTop,!0),M.attr("transform",$y(0,-Nf.axisExtentOffset));var m=M.selectAll("."+Nf.cn.axisExtentTopText).data(Qy,tm);m.enter().append("text").classed(Nf.cn.axisExtentTopText,!0).call($Ue),m.text(function(B){return eVe(B,!0)}).each(function(B){$8.font(Ud.select(this),B.model.rangeFont)});var P=C.selectAll("."+Nf.cn.axisExtentBottom).data(Qy,tm);P.enter().append("g").classed(Nf.cn.axisExtentBottom,!0),P.attr("transform",function(B){return $y(0,B.model.height+Nf.axisExtentOffset)});var T=P.selectAll("."+Nf.cn.axisExtentBottomText).data(Qy,tm);T.enter().append("text").classed(Nf.cn.axisExtentBottomText,!0).attr("dy","0.75em").call($Ue),T.text(function(B){return eVe(B,!1)}).each(function(B){$8.font(Ud.select(this),B.model.rangeFont)}),aVe.ensureAxisBrush(E,f,t)}});var JK=Ae((KK,dVe)=>{"use strict";var $Ht=uVe(),QHt=M8(),fVe=GK().isVisible,hVe={};function cVe(e,t,r){var n=t.indexOf(r),i=e.indexOf(n);return i===-1&&(i+=t.length),i}function eWt(e,t){return function(n,i){return cVe(e,t,n)-cVe(e,t,i)}}var KK=dVe.exports=function(t,r){var n=t._fullLayout,i=QHt(t,[],hVe);if(i){var a={},o={},s={},u={},l=n._size;r.forEach(function(p,_){var b=p[0].trace;s[_]=b.index;var v=u[_]=b.index;a[_]=t.data[v].dimensions,o[_]=t.data[v].dimensions.slice()});var f=function(p,_,b){var v=o[p][_],k=b.map(function(M){return M.slice()}),E="dimensions["+_+"].constraintrange",A=n._tracePreGUI[t._fullData[s[p]]._fullInput.uid];if(A[E]===void 0){var L=v.constraintrange;A[E]=L||null}var x=t._fullData[s[p]].dimensions[_];k.length?(k.length===1&&(k=k[0]),v.constraintrange=k,x.constraintrange=k.slice(),k=[k]):(delete v.constraintrange,delete x.constraintrange,k=null);var C={};C[E]=k,t.emit("plotly_restyle",[C,[u[p]]])},c=function(p){t.emit("plotly_hover",p)},h=function(p){t.emit("plotly_unhover",p)},d=function(p,_){var b=eWt(_,o[p].filter(fVe));a[p].sort(b),o[p].filter(function(v){return!fVe(v)}).sort(function(v){return o[p].indexOf(v)}).forEach(function(v){a[p].splice(a[p].indexOf(v),1),a[p].splice(o[p].indexOf(v),0,v)}),t.emit("plotly_restyle",[{dimensions:[a[p]]},[u[p]]])};$Ht(t,r,{width:l.w,height:l.h,margin:{t:l.t,r:l.r,b:l.b,l:l.l}},{filterChanged:f,hover:c,unhover:h,axesMoved:d})}};KK.reglPrecompiled=hVe});var vVe=Ae(Rk=>{"use strict";var pVe=Jl(),tWt=Rd().getModuleCalcData,rWt=JK(),iWt=jv();Rk.name="parcoords";Rk.plot=function(e){var t=tWt(e.calcdata,"parcoords")[0];t.length&&rWt(e,t)};Rk.clean=function(e,t,r,n){var i=n._has&&n._has("parcoords"),a=t._has&&t._has("parcoords");i&&!a&&(n._paperdiv.selectAll(".parcoords").remove(),n._glimages.selectAll("*").remove())};Rk.toSVG=function(e){var t=e._fullLayout._glimages,r=pVe.select(e).selectAll(".svg-container"),n=r.filter(function(a,o){return o===r.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function i(){var a=this,o=a.toDataURL("image/png"),s=t.append("svg:image");s.attr({xmlns:iWt.svg,"xlink:href":o,preserveAspectRatio:"none",x:0,y:0,width:a.style.width,height:a.style.height})}n.each(i),window.setTimeout(function(){pVe.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}});var yVe=Ae((Ibr,mVe)=>{"use strict";mVe.exports={attributes:DK(),supplyDefaults:LUe(),calc:zUe(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:vVe(),categories:["gl","regl","noOpacity","noHover"],meta:{}}});var _Ve=Ae((Rbr,gVe)=>{gVe.exports=function(t,r){"use strict";var n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr;return n=t.gl,i=t.context,a=t.strings,o=t.next,s=t.current,u=t.draw,l=t.elements,f=t.buffer,c=t.shader,h=t.attributes,d=t.vao,p=t.uniforms,_=t.framebuffer,b=t.extensions,v=t.timer,k=t.isBufferArgs,E=o.blend_color,A=s.blend_color,L=o.blend_equation,x=s.blend_equation,C=o.blend_func,M=s.blend_func,m=o.depth_range,P=s.depth_range,T=o.colorMask,B=s.colorMask,F=o.polygonOffset_offset,U=s.polygonOffset_offset,G=o.sample_coverage,j=s.sample_coverage,W=o.stencil_func,N=s.stencil_func,H=o.stencil_opFront,re=s.stencil_opFront,ae=o.stencil_opBack,be=s.stencil_opBack,ze=o.scissor_box,Ce=s.scissor_box,de=o.viewport,te=s.viewport,ke={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ee={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Me={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Ue={add:32774,subtract:32778,"reverse subtract":32779},De={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ye={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},qe={cw:2304,ccw:2305},ce=o.blend_color,Je=s.blend_color,nt=o.blend_equation,gt=s.blend_equation,Nt=o.blend_func,at=s.blend_func,Ke=o.depth_range,Ct=s.depth_range,wt=o.colorMask,St=s.colorMask,Dt=o.polygonOffset_offset,Zt=s.polygonOffset_offset,Et=o.sample_coverage,Te=s.sample_coverage,ot=o.stencil_func,Tt=s.stencil_func,vt=o.stencil_opFront,Ye=s.stencil_opFront,He=o.stencil_opBack,it=s.stencil_opBack,et=o.scissor_box,It=s.scissor_box,Yt=o.viewport,cr=s.viewport,{poll:function(){var _r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di;s.dirty=!1,yr=o.dither,Ut=o.blend_enable,Re=o.depth_enable,xe=o.cull_enable,Oe=o.polygonOffset_enable,Ie=o.sample_alpha,Fe=o.sample_enable,ft=o.stencil_enable,ge=o.scissor_enable,fe=o.depth_func,pe=s.depth_func,dt=o.depth_mask,Pt=s.depth_mask,zt=o.cull_face,rr=s.cull_face,Gr=o.frontFace,Br=s.frontFace,Er=o.lineWidth,Rr=s.lineWidth,pi=o.stencil_mask,Di=s.stencil_mask,_r=_.next,_r!==_.cur&&(_r?n.bindFramebuffer(36160,_r.framebuffer):n.bindFramebuffer(36160,null),_.cur=_r),yr!==s.dither&&(yr?n.enable(3024):n.disable(3024),s.dither=yr),Ut!==s.blend_enable&&(Ut?n.enable(3042):n.disable(3042),s.blend_enable=Ut),Re!==s.depth_enable&&(Re?n.enable(2929):n.disable(2929),s.depth_enable=Re),xe!==s.cull_enable&&(xe?n.enable(2884):n.disable(2884),s.cull_enable=xe),Oe!==s.polygonOffset_enable&&(Oe?n.enable(32823):n.disable(32823),s.polygonOffset_enable=Oe),Ie!==s.sample_alpha&&(Ie?n.enable(32926):n.disable(32926),s.sample_alpha=Ie),Fe!==s.sample_enable&&(Fe?n.enable(32928):n.disable(32928),s.sample_enable=Fe),ft!==s.stencil_enable&&(ft?n.enable(2960):n.disable(2960),s.stencil_enable=ft),ge!==s.scissor_enable&&(ge?n.enable(3089):n.disable(3089),s.scissor_enable=ge),(ce[0]!==Je[0]||ce[1]!==Je[1]||ce[2]!==Je[2]||ce[3]!==Je[3])&&(n.blendColor(ce[0],ce[1],ce[2],ce[3]),Je[0]=ce[0],Je[1]=ce[1],Je[2]=ce[2],Je[3]=ce[3]),(nt[0]!==gt[0]||nt[1]!==gt[1])&&(n.blendEquationSeparate(nt[0],nt[1]),gt[0]=nt[0],gt[1]=nt[1]),(Nt[0]!==at[0]||Nt[1]!==at[1]||Nt[2]!==at[2]||Nt[3]!==at[3])&&(n.blendFuncSeparate(Nt[0],Nt[1],Nt[2],Nt[3]),at[0]=Nt[0],at[1]=Nt[1],at[2]=Nt[2],at[3]=Nt[3]),fe!==pe&&(n.depthFunc(fe),s.depth_func=fe),(Ke[0]!==Ct[0]||Ke[1]!==Ct[1])&&(n.depthRange(Ke[0],Ke[1]),Ct[0]=Ke[0],Ct[1]=Ke[1]),dt!==Pt&&(n.depthMask(dt),s.depth_mask=dt),(wt[0]!==St[0]||wt[1]!==St[1]||wt[2]!==St[2]||wt[3]!==St[3])&&(n.colorMask(wt[0],wt[1],wt[2],wt[3]),St[0]=wt[0],St[1]=wt[1],St[2]=wt[2],St[3]=wt[3]),zt!==rr&&(n.cullFace(zt),s.cull_face=zt),Gr!==Br&&(n.frontFace(Gr),s.frontFace=Gr),Er!==Rr&&(n.lineWidth(Er),s.lineWidth=Er),(Dt[0]!==Zt[0]||Dt[1]!==Zt[1])&&(n.polygonOffset(Dt[0],Dt[1]),Zt[0]=Dt[0],Zt[1]=Dt[1]),(Et[0]!==Te[0]||Et[1]!==Te[1])&&(n.sampleCoverage(Et[0],Et[1]),Te[0]=Et[0],Te[1]=Et[1]),pi!==Di&&(n.stencilMask(pi),s.stencil_mask=pi),(ot[0]!==Tt[0]||ot[1]!==Tt[1]||ot[2]!==Tt[2])&&(n.stencilFunc(ot[0],ot[1],ot[2]),Tt[0]=ot[0],Tt[1]=ot[1],Tt[2]=ot[2]),(vt[0]!==Ye[0]||vt[1]!==Ye[1]||vt[2]!==Ye[2]||vt[3]!==Ye[3])&&(n.stencilOpSeparate(vt[0],vt[1],vt[2],vt[3]),Ye[0]=vt[0],Ye[1]=vt[1],Ye[2]=vt[2],Ye[3]=vt[3]),(He[0]!==it[0]||He[1]!==it[1]||He[2]!==it[2]||He[3]!==it[3])&&(n.stencilOpSeparate(He[0],He[1],He[2],He[3]),it[0]=He[0],it[1]=He[1],it[2]=He[2],it[3]=He[3]),(et[0]!==It[0]||et[1]!==It[1]||et[2]!==It[2]||et[3]!==It[3])&&(n.scissor(et[0],et[1],et[2],et[3]),It[0]=et[0],It[1]=et[1],It[2]=et[2],It[3]=et[3]),(Yt[0]!==cr[0]||Yt[1]!==cr[1]||Yt[2]!==cr[2]||Yt[3]!==cr[3])&&(n.viewport(Yt[0],Yt[1],Yt[2],Yt[3]),cr[0]=Yt[0],cr[1]=Yt[1],cr[2]=Yt[2],cr[3]=Yt[3])},refresh:function(){var _r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i;s.dirty=!1,Re=o.dither,xe=o.blend_enable,Oe=o.depth_enable,Ie=o.cull_enable,Fe=o.polygonOffset_enable,ft=o.sample_alpha,ge=o.sample_enable,fe=o.stencil_enable,pe=o.scissor_enable,dt=o.depth_func,Pt=s.depth_func,zt=o.depth_mask,rr=s.depth_mask,Gr=o.cull_face,Br=s.cull_face,Er=o.frontFace,Rr=s.frontFace,pi=o.lineWidth,Di=s.lineWidth,ni=o.stencil_mask,$i=s.stencil_mask,_r=_.next,_r?n.bindFramebuffer(36160,_r.framebuffer):n.bindFramebuffer(36160,null),_.cur=_r,yr=h,Ut=0;for(var Qi=0;Qi{xVe.exports=function(t,r,n,i,a,o,s,u){"use strict";var l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct;return l=t.gl,f=t.context,c=t.strings,h=t.next,d=t.current,p=t.draw,_=t.elements,b=t.buffer,v=t.shader,k=t.attributes,E=t.vao,A=t.uniforms,L=t.framebuffer,x=t.extensions,C=t.timer,M=t.isBufferArgs,m=h.blend_color,P=d.blend_color,T=h.blend_equation,B=d.blend_equation,F=h.blend_func,U=d.blend_func,G=h.depth_range,j=d.depth_range,W=h.colorMask,N=d.colorMask,H=h.polygonOffset_offset,re=d.polygonOffset_offset,ae=h.sample_coverage,be=d.sample_coverage,ze=h.stencil_func,Ce=d.stencil_func,de=h.stencil_opFront,te=d.stencil_opFront,ke=h.stencil_opBack,Ee=d.stencil_opBack,Me=h.scissor_box,Ue=d.scissor_box,De=h.viewport,ye=d.viewport,qe={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},ce={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Je={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},nt={add:32774,subtract:32778,"reverse subtract":32779},gt={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Nt={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},at={cw:2304,ccw:2305},Ke={},Ct={},{draw:function(wt){var St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut;if(St=wt.framebuffer,Dt=L.getFramebuffer(St),Zt=L.next,L.next=Dt,Et=f.framebufferWidth,f.framebufferWidth=Dt?Dt.width:f.drawingBufferWidth,Te=f.framebufferHeight,f.framebufferHeight=Dt?Dt.height:f.drawingBufferHeight,Dt!==L.cur&&(Dt?l.bindFramebuffer(36160,Dt.framebuffer):l.bindFramebuffer(36160,null),L.cur=Dt),d.dirty){var Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri;Re=h.dither,Re!==d.dither&&(Re?l.enable(3024):l.disable(3024),d.dither=Re),xe=h.blend_enable,xe!==d.blend_enable&&(xe?l.enable(3042):l.disable(3042),d.blend_enable=xe),Oe=m[0],Ie=m[1],Fe=m[2],ft=m[3],(Oe!==P[0]||Ie!==P[1]||Fe!==P[2]||ft!==P[3])&&(l.blendColor(Oe,Ie,Fe,ft),P[0]=Oe,P[1]=Ie,P[2]=Fe,P[3]=ft),ge=T[0],fe=T[1],(ge!==B[0]||fe!==B[1])&&(l.blendEquationSeparate(ge,fe),B[0]=ge,B[1]=fe),pe=F[0],dt=F[1],Pt=F[2],zt=F[3],(pe!==U[0]||dt!==U[1]||Pt!==U[2]||zt!==U[3])&&(l.blendFuncSeparate(pe,dt,Pt,zt),U[0]=pe,U[1]=dt,U[2]=Pt,U[3]=zt),rr=h.depth_enable,rr!==d.depth_enable&&(rr?l.enable(2929):l.disable(2929),d.depth_enable=rr),Gr=h.depth_func,Gr!==d.depth_func&&(l.depthFunc(Gr),d.depth_func=Gr),Br=G[0],Er=G[1],(Br!==j[0]||Er!==j[1])&&(l.depthRange(Br,Er),j[0]=Br,j[1]=Er),Rr=h.depth_mask,Rr!==d.depth_mask&&(l.depthMask(Rr),d.depth_mask=Rr),pi=W[0],Di=W[1],ni=W[2],$i=W[3],(pi!==N[0]||Di!==N[1]||ni!==N[2]||$i!==N[3])&&(l.colorMask(pi,Di,ni,$i),N[0]=pi,N[1]=Di,N[2]=ni,N[3]=$i),Qi=h.cull_enable,Qi!==d.cull_enable&&(Qi?l.enable(2884):l.disable(2884),d.cull_enable=Qi),si=h.cull_face,si!==d.cull_face&&(l.cullFace(si),d.cull_face=si),Ai=h.frontFace,Ai!==d.frontFace&&(l.frontFace(Ai),d.frontFace=Ai),Ni=h.lineWidth,Ni!==d.lineWidth&&(l.lineWidth(Ni),d.lineWidth=Ni),Rt=h.polygonOffset_enable,Rt!==d.polygonOffset_enable&&(Rt?l.enable(32823):l.disable(32823),d.polygonOffset_enable=Rt),yt=H[0],Gt=H[1],(yt!==re[0]||Gt!==re[1])&&(l.polygonOffset(yt,Gt),re[0]=yt,re[1]=Gt),Wt=h.sample_alpha,Wt!==d.sample_alpha&&(Wt?l.enable(32926):l.disable(32926),d.sample_alpha=Wt),xr=h.sample_enable,xr!==d.sample_enable&&(xr?l.enable(32928):l.disable(32928),d.sample_enable=xr),Lr=ae[0],Nr=ae[1],(Lr!==be[0]||Nr!==be[1])&&(l.sampleCoverage(Lr,Nr),be[0]=Lr,be[1]=Nr),Or=h.stencil_enable,Or!==d.stencil_enable&&(Or?l.enable(2960):l.disable(2960),d.stencil_enable=Or),Hr=h.stencil_mask,Hr!==d.stencil_mask&&(l.stencilMask(Hr),d.stencil_mask=Hr),jr=ze[0],gi=ze[1],ki=ze[2],(jr!==Ce[0]||gi!==Ce[1]||ki!==Ce[2])&&(l.stencilFunc(jr,gi,ki),Ce[0]=jr,Ce[1]=gi,Ce[2]=ki),Vi=de[0],ti=de[1],tn=de[2],Yr=de[3],(Vi!==te[0]||ti!==te[1]||tn!==te[2]||Yr!==te[3])&&(l.stencilOpSeparate(Vi,ti,tn,Yr),te[0]=Vi,te[1]=ti,te[2]=tn,te[3]=Yr),oi=ke[0],Fi=ke[1],an=ke[2],nn=ke[3],(oi!==Ee[0]||Fi!==Ee[1]||an!==Ee[2]||nn!==Ee[3])&&(l.stencilOpSeparate(oi,Fi,an,nn),Ee[0]=oi,Ee[1]=Fi,Ee[2]=an,Ee[3]=nn),Ri=h.scissor_enable,Ri!==d.scissor_enable&&(Ri?l.enable(3089):l.disable(3089),d.scissor_enable=Ri)}ot=f.framebufferWidth,Tt=f.framebufferHeight,vt=f.viewportWidth,f.viewportWidth=ot,Ye=f.viewportHeight,f.viewportHeight=Tt,l.viewport(0,0,ot,Tt),ye[0]=0,ye[1]=0,ye[2]=ot,ye[3]=Tt,He=f.framebufferWidth,it=f.framebufferHeight,l.scissor(0,0,He,it),Ue[0]=0,Ue[1]=0,Ue[2]=He,Ue[3]=it,et=d.profile,et&&(It=performance.now(),r.count++),Yt=v.frag,cr=v.vert,_r=v.program(cr,Yt),l.useProgram(_r.program),E.setVAO(null),yr=_r.id,Ut=Ke[yr],Ut?Ut.call(this,wt):(Ut=Ke[yr]=n(_r),Ut.call(this,wt)),d.dirty=!0,E.setVAO(null),L.next=Zt,f.framebufferWidth=Et,f.framebufferHeight=Te,f.viewportWidth=vt,f.viewportHeight=Ye,et&&(r.cpuTime+=performance.now()-It)},scope:function(wt,St,Dt){var Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe;Zt=wt.framebuffer,Et=L.getFramebuffer(Zt),Te=L.next,L.next=Et,ot=f.framebufferWidth,f.framebufferWidth=Et?Et.width:f.drawingBufferWidth,Tt=f.framebufferHeight,f.framebufferHeight=Et?Et.height:f.drawingBufferHeight,vt=f.framebufferWidth,Ye=f.framebufferHeight,He=f.viewportWidth,f.viewportWidth=vt,it=f.viewportHeight,f.viewportHeight=Ye,et=De[0],De[0]=i,It=De[1],De[1]=a,Yt=De[2],De[2]=vt,cr=De[3],De[3]=Ye,_r=f.framebufferWidth,yr=f.framebufferHeight,Ut=Me[0],Me[0]=o,Re=Me[1],Me[1]=s,xe=Me[2],Me[2]=_r,Oe=Me[3],Me[3]=yr,Ie=d.profile,Ie&&(Fe=performance.now(),r.count++),d.dirty=!0,St(f,wt,Dt),L.next=Te,f.framebufferWidth=ot,f.framebufferHeight=Tt,f.viewportWidth=He,f.viewportHeight=it,De[0]=et,De[1]=It,De[2]=Yt,De[3]=cr,Me[0]=Ut,Me[1]=Re,Me[2]=xe,Me[3]=Oe,Ie&&(r.cpuTime+=performance.now()-Fe),d.dirty=!0},batch:function(wt,St){var Dt,Zt,Et,Te,ot,Tt,vt;if(d.dirty){var Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi;Ye=h.dither,Ye!==d.dither&&(Ye?l.enable(3024):l.disable(3024),d.dither=Ye),He=h.blend_enable,He!==d.blend_enable&&(He?l.enable(3042):l.disable(3042),d.blend_enable=He),it=m[0],et=m[1],It=m[2],Yt=m[3],(it!==P[0]||et!==P[1]||It!==P[2]||Yt!==P[3])&&(l.blendColor(it,et,It,Yt),P[0]=it,P[1]=et,P[2]=It,P[3]=Yt),cr=T[0],_r=T[1],(cr!==B[0]||_r!==B[1])&&(l.blendEquationSeparate(cr,_r),B[0]=cr,B[1]=_r),yr=F[0],Ut=F[1],Re=F[2],xe=F[3],(yr!==U[0]||Ut!==U[1]||Re!==U[2]||xe!==U[3])&&(l.blendFuncSeparate(yr,Ut,Re,xe),U[0]=yr,U[1]=Ut,U[2]=Re,U[3]=xe),Oe=h.depth_enable,Oe!==d.depth_enable&&(Oe?l.enable(2929):l.disable(2929),d.depth_enable=Oe),Ie=h.depth_func,Ie!==d.depth_func&&(l.depthFunc(Ie),d.depth_func=Ie),Fe=G[0],ft=G[1],(Fe!==j[0]||ft!==j[1])&&(l.depthRange(Fe,ft),j[0]=Fe,j[1]=ft),ge=h.depth_mask,ge!==d.depth_mask&&(l.depthMask(ge),d.depth_mask=ge),fe=W[0],pe=W[1],dt=W[2],Pt=W[3],(fe!==N[0]||pe!==N[1]||dt!==N[2]||Pt!==N[3])&&(l.colorMask(fe,pe,dt,Pt),N[0]=fe,N[1]=pe,N[2]=dt,N[3]=Pt),zt=h.cull_enable,zt!==d.cull_enable&&(zt?l.enable(2884):l.disable(2884),d.cull_enable=zt),rr=h.cull_face,rr!==d.cull_face&&(l.cullFace(rr),d.cull_face=rr),Gr=h.frontFace,Gr!==d.frontFace&&(l.frontFace(Gr),d.frontFace=Gr),Br=h.lineWidth,Br!==d.lineWidth&&(l.lineWidth(Br),d.lineWidth=Br),Er=h.polygonOffset_enable,Er!==d.polygonOffset_enable&&(Er?l.enable(32823):l.disable(32823),d.polygonOffset_enable=Er),Rr=H[0],pi=H[1],(Rr!==re[0]||pi!==re[1])&&(l.polygonOffset(Rr,pi),re[0]=Rr,re[1]=pi),Di=h.sample_alpha,Di!==d.sample_alpha&&(Di?l.enable(32926):l.disable(32926),d.sample_alpha=Di),ni=h.sample_enable,ni!==d.sample_enable&&(ni?l.enable(32928):l.disable(32928),d.sample_enable=ni),$i=ae[0],Qi=ae[1],($i!==be[0]||Qi!==be[1])&&(l.sampleCoverage($i,Qi),be[0]=$i,be[1]=Qi),si=h.stencil_enable,si!==d.stencil_enable&&(si?l.enable(2960):l.disable(2960),d.stencil_enable=si),Ai=h.stencil_mask,Ai!==d.stencil_mask&&(l.stencilMask(Ai),d.stencil_mask=Ai),Ni=ze[0],Rt=ze[1],yt=ze[2],(Ni!==Ce[0]||Rt!==Ce[1]||yt!==Ce[2])&&(l.stencilFunc(Ni,Rt,yt),Ce[0]=Ni,Ce[1]=Rt,Ce[2]=yt),Gt=de[0],Wt=de[1],xr=de[2],Lr=de[3],(Gt!==te[0]||Wt!==te[1]||xr!==te[2]||Lr!==te[3])&&(l.stencilOpSeparate(Gt,Wt,xr,Lr),te[0]=Gt,te[1]=Wt,te[2]=xr,te[3]=Lr),Nr=ke[0],Or=ke[1],Hr=ke[2],jr=ke[3],(Nr!==Ee[0]||Or!==Ee[1]||Hr!==Ee[2]||jr!==Ee[3])&&(l.stencilOpSeparate(Nr,Or,Hr,jr),Ee[0]=Nr,Ee[1]=Or,Ee[2]=Hr,Ee[3]=jr),gi=h.scissor_enable,gi!==d.scissor_enable&&(gi?l.enable(3089):l.disable(3089),d.scissor_enable=gi)}Dt=d.profile,Dt&&(Zt=performance.now(),r.count+=St),Et=v.frag,Te=v.vert,ot=v.program(Te,Et),l.useProgram(ot.program),E.setVAO(null),Tt=ot.id,vt=Ct[Tt],vt?vt.call(this,wt,St):(vt=Ct[Tt]=u(ot),vt.call(this,wt,St)),d.dirty=!0,E.setVAO(null),Dt&&(r.cpuTime+=performance.now()-Zt)}}}});var TVe=Ae((Fbr,wVe)=>{wVe.exports=function(t,r,n,i){"use strict";var a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt;return a=t.gl,o=t.context,s=t.strings,u=t.next,l=t.current,f=t.draw,c=t.elements,h=t.buffer,d=t.shader,p=t.attributes,_=t.vao,b=t.uniforms,v=t.framebuffer,k=t.extensions,E=t.timer,A=t.isBufferArgs,L=u.blend_color,x=l.blend_color,C=u.blend_equation,M=l.blend_equation,m=u.blend_func,P=l.blend_func,T=u.depth_range,B=l.depth_range,F=u.colorMask,U=l.colorMask,G=u.polygonOffset_offset,j=l.polygonOffset_offset,W=u.sample_coverage,N=l.sample_coverage,H=u.stencil_func,re=l.stencil_func,ae=u.stencil_opFront,be=l.stencil_opFront,ze=u.stencil_opBack,Ce=l.stencil_opBack,de=u.scissor_box,te=l.scissor_box,ke=u.viewport,Ee=l.viewport,Me={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ue={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},De={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},ye={add:32774,subtract:32778,"reverse subtract":32779},qe={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ce={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Je={cw:2304,ccw:2305},nt={},gt={},{draw:function(Nt){var at,Ke,Ct,wt,St,Dt,Zt,Et;if(at=v.next,at!==v.cur&&(at?a.bindFramebuffer(36160,at.framebuffer):a.bindFramebuffer(36160,null),v.cur=at),l.dirty){var Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn;Te=u.dither,Te!==l.dither&&(Te?a.enable(3024):a.disable(3024),l.dither=Te),ot=u.blend_enable,ot!==l.blend_enable&&(ot?a.enable(3042):a.disable(3042),l.blend_enable=ot),Tt=L[0],vt=L[1],Ye=L[2],He=L[3],(Tt!==x[0]||vt!==x[1]||Ye!==x[2]||He!==x[3])&&(a.blendColor(Tt,vt,Ye,He),x[0]=Tt,x[1]=vt,x[2]=Ye,x[3]=He),it=C[0],et=C[1],(it!==M[0]||et!==M[1])&&(a.blendEquationSeparate(it,et),M[0]=it,M[1]=et),It=m[0],Yt=m[1],cr=m[2],_r=m[3],(It!==P[0]||Yt!==P[1]||cr!==P[2]||_r!==P[3])&&(a.blendFuncSeparate(It,Yt,cr,_r),P[0]=It,P[1]=Yt,P[2]=cr,P[3]=_r),yr=u.depth_enable,yr!==l.depth_enable&&(yr?a.enable(2929):a.disable(2929),l.depth_enable=yr),Ut=u.depth_func,Ut!==l.depth_func&&(a.depthFunc(Ut),l.depth_func=Ut),Re=T[0],xe=T[1],(Re!==B[0]||xe!==B[1])&&(a.depthRange(Re,xe),B[0]=Re,B[1]=xe),Oe=u.depth_mask,Oe!==l.depth_mask&&(a.depthMask(Oe),l.depth_mask=Oe),Ie=F[0],Fe=F[1],ft=F[2],ge=F[3],(Ie!==U[0]||Fe!==U[1]||ft!==U[2]||ge!==U[3])&&(a.colorMask(Ie,Fe,ft,ge),U[0]=Ie,U[1]=Fe,U[2]=ft,U[3]=ge),fe=u.cull_enable,fe!==l.cull_enable&&(fe?a.enable(2884):a.disable(2884),l.cull_enable=fe),pe=u.cull_face,pe!==l.cull_face&&(a.cullFace(pe),l.cull_face=pe),dt=u.frontFace,dt!==l.frontFace&&(a.frontFace(dt),l.frontFace=dt),Pt=u.lineWidth,Pt!==l.lineWidth&&(a.lineWidth(Pt),l.lineWidth=Pt),zt=u.polygonOffset_enable,zt!==l.polygonOffset_enable&&(zt?a.enable(32823):a.disable(32823),l.polygonOffset_enable=zt),rr=G[0],Gr=G[1],(rr!==j[0]||Gr!==j[1])&&(a.polygonOffset(rr,Gr),j[0]=rr,j[1]=Gr),Br=u.sample_alpha,Br!==l.sample_alpha&&(Br?a.enable(32926):a.disable(32926),l.sample_alpha=Br),Er=u.sample_enable,Er!==l.sample_enable&&(Er?a.enable(32928):a.disable(32928),l.sample_enable=Er),Rr=W[0],pi=W[1],(Rr!==N[0]||pi!==N[1])&&(a.sampleCoverage(Rr,pi),N[0]=Rr,N[1]=pi),Di=u.stencil_enable,Di!==l.stencil_enable&&(Di?a.enable(2960):a.disable(2960),l.stencil_enable=Di),ni=u.stencil_mask,ni!==l.stencil_mask&&(a.stencilMask(ni),l.stencil_mask=ni),$i=H[0],Qi=H[1],si=H[2],($i!==re[0]||Qi!==re[1]||si!==re[2])&&(a.stencilFunc($i,Qi,si),re[0]=$i,re[1]=Qi,re[2]=si),Ai=ae[0],Ni=ae[1],Rt=ae[2],yt=ae[3],(Ai!==be[0]||Ni!==be[1]||Rt!==be[2]||yt!==be[3])&&(a.stencilOpSeparate(Ai,Ni,Rt,yt),be[0]=Ai,be[1]=Ni,be[2]=Rt,be[3]=yt),Gt=ze[0],Wt=ze[1],xr=ze[2],Lr=ze[3],(Gt!==Ce[0]||Wt!==Ce[1]||xr!==Ce[2]||Lr!==Ce[3])&&(a.stencilOpSeparate(Gt,Wt,xr,Lr),Ce[0]=Gt,Ce[1]=Wt,Ce[2]=xr,Ce[3]=Lr),Nr=u.scissor_enable,Nr!==l.scissor_enable&&(Nr?a.enable(3089):a.disable(3089),l.scissor_enable=Nr),Or=de[0],Hr=de[1],jr=de[2],gi=de[3],(Or!==te[0]||Hr!==te[1]||jr!==te[2]||gi!==te[3])&&(a.scissor(Or,Hr,jr,gi),te[0]=Or,te[1]=Hr,te[2]=jr,te[3]=gi),ki=ke[0],Vi=ke[1],ti=ke[2],tn=ke[3],(ki!==Ee[0]||Vi!==Ee[1]||ti!==Ee[2]||tn!==Ee[3])&&(a.viewport(ki,Vi,ti,tn),Ee[0]=ki,Ee[1]=Vi,Ee[2]=ti,Ee[3]=tn),l.dirty=!1}Ke=l.profile,Ke&&(Ct=performance.now(),r.count++),wt=d.frag,St=d.vert,Dt=d.program(St,wt),a.useProgram(Dt.program),_.setVAO(null),Zt=Dt.id,Et=nt[Zt],Et?Et.call(this,Nt):(Et=nt[Zt]=n(Dt),Et.call(this,Nt)),_.setVAO(null),Ke&&(r.cpuTime+=performance.now()-Ct)},scope:function(Nt,at,Ke){var Ct,wt;Ct=l.profile,Ct&&(wt=performance.now(),r.count++),at(o,Nt,Ke),Ct&&(r.cpuTime+=performance.now()-wt)},batch:function(Nt,at){var Ke,Ct,wt,St,Dt,Zt,Et,Te;if(Ke=v.next,Ke!==v.cur&&(Ke?a.bindFramebuffer(36160,Ke.framebuffer):a.bindFramebuffer(36160,null),v.cur=Ke),l.dirty){var ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr;ot=u.dither,ot!==l.dither&&(ot?a.enable(3024):a.disable(3024),l.dither=ot),Tt=u.blend_enable,Tt!==l.blend_enable&&(Tt?a.enable(3042):a.disable(3042),l.blend_enable=Tt),vt=L[0],Ye=L[1],He=L[2],it=L[3],(vt!==x[0]||Ye!==x[1]||He!==x[2]||it!==x[3])&&(a.blendColor(vt,Ye,He,it),x[0]=vt,x[1]=Ye,x[2]=He,x[3]=it),et=C[0],It=C[1],(et!==M[0]||It!==M[1])&&(a.blendEquationSeparate(et,It),M[0]=et,M[1]=It),Yt=m[0],cr=m[1],_r=m[2],yr=m[3],(Yt!==P[0]||cr!==P[1]||_r!==P[2]||yr!==P[3])&&(a.blendFuncSeparate(Yt,cr,_r,yr),P[0]=Yt,P[1]=cr,P[2]=_r,P[3]=yr),Ut=u.depth_enable,Ut!==l.depth_enable&&(Ut?a.enable(2929):a.disable(2929),l.depth_enable=Ut),Re=u.depth_func,Re!==l.depth_func&&(a.depthFunc(Re),l.depth_func=Re),xe=T[0],Oe=T[1],(xe!==B[0]||Oe!==B[1])&&(a.depthRange(xe,Oe),B[0]=xe,B[1]=Oe),Ie=u.depth_mask,Ie!==l.depth_mask&&(a.depthMask(Ie),l.depth_mask=Ie),Fe=F[0],ft=F[1],ge=F[2],fe=F[3],(Fe!==U[0]||ft!==U[1]||ge!==U[2]||fe!==U[3])&&(a.colorMask(Fe,ft,ge,fe),U[0]=Fe,U[1]=ft,U[2]=ge,U[3]=fe),pe=u.cull_enable,pe!==l.cull_enable&&(pe?a.enable(2884):a.disable(2884),l.cull_enable=pe),dt=u.cull_face,dt!==l.cull_face&&(a.cullFace(dt),l.cull_face=dt),Pt=u.frontFace,Pt!==l.frontFace&&(a.frontFace(Pt),l.frontFace=Pt),zt=u.lineWidth,zt!==l.lineWidth&&(a.lineWidth(zt),l.lineWidth=zt),rr=u.polygonOffset_enable,rr!==l.polygonOffset_enable&&(rr?a.enable(32823):a.disable(32823),l.polygonOffset_enable=rr),Gr=G[0],Br=G[1],(Gr!==j[0]||Br!==j[1])&&(a.polygonOffset(Gr,Br),j[0]=Gr,j[1]=Br),Er=u.sample_alpha,Er!==l.sample_alpha&&(Er?a.enable(32926):a.disable(32926),l.sample_alpha=Er),Rr=u.sample_enable,Rr!==l.sample_enable&&(Rr?a.enable(32928):a.disable(32928),l.sample_enable=Rr),pi=W[0],Di=W[1],(pi!==N[0]||Di!==N[1])&&(a.sampleCoverage(pi,Di),N[0]=pi,N[1]=Di),ni=u.stencil_enable,ni!==l.stencil_enable&&(ni?a.enable(2960):a.disable(2960),l.stencil_enable=ni),$i=u.stencil_mask,$i!==l.stencil_mask&&(a.stencilMask($i),l.stencil_mask=$i),Qi=H[0],si=H[1],Ai=H[2],(Qi!==re[0]||si!==re[1]||Ai!==re[2])&&(a.stencilFunc(Qi,si,Ai),re[0]=Qi,re[1]=si,re[2]=Ai),Ni=ae[0],Rt=ae[1],yt=ae[2],Gt=ae[3],(Ni!==be[0]||Rt!==be[1]||yt!==be[2]||Gt!==be[3])&&(a.stencilOpSeparate(Ni,Rt,yt,Gt),be[0]=Ni,be[1]=Rt,be[2]=yt,be[3]=Gt),Wt=ze[0],xr=ze[1],Lr=ze[2],Nr=ze[3],(Wt!==Ce[0]||xr!==Ce[1]||Lr!==Ce[2]||Nr!==Ce[3])&&(a.stencilOpSeparate(Wt,xr,Lr,Nr),Ce[0]=Wt,Ce[1]=xr,Ce[2]=Lr,Ce[3]=Nr),Or=u.scissor_enable,Or!==l.scissor_enable&&(Or?a.enable(3089):a.disable(3089),l.scissor_enable=Or),Hr=de[0],jr=de[1],gi=de[2],ki=de[3],(Hr!==te[0]||jr!==te[1]||gi!==te[2]||ki!==te[3])&&(a.scissor(Hr,jr,gi,ki),te[0]=Hr,te[1]=jr,te[2]=gi,te[3]=ki),Vi=ke[0],ti=ke[1],tn=ke[2],Yr=ke[3],(Vi!==Ee[0]||ti!==Ee[1]||tn!==Ee[2]||Yr!==Ee[3])&&(a.viewport(Vi,ti,tn,Yr),Ee[0]=Vi,Ee[1]=ti,Ee[2]=tn,Ee[3]=Yr),l.dirty=!1}Ct=l.profile,Ct&&(wt=performance.now(),r.count+=at),St=d.frag,Dt=d.vert,Zt=d.program(Dt,St),a.useProgram(Zt.program),_.setVAO(null),Et=Zt.id,Te=gt[Et],Te?Te.call(this,Nt,at):(Te=gt[Et]=i(Zt),Te.call(this,Nt,at)),_.setVAO(null),Ct&&(r.cpuTime+=performance.now()-wt)}}}});var SVe=Ae((Bbr,AVe)=>{AVe.exports=function(t,r,n,i,a,o,s,u,l,f,c,h,d,p,_,b,v,k,E,A,L,x,C,M,m,P,T,B,F,U,G,j,W,N,H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De,ye,qe,ce,Je,nt,gt,Nt,at,Ke,Ct,wt,St,Dt,Zt,Et,Te,ot,Tt,vt,Ye,He,it,et,It,Yt,cr,_r,yr,Ut,Re,xe,Oe,Ie,Fe,ft,ge,fe,pe,dt,Pt,zt,rr,Gr,Br,Er,Rr,pi,Di,ni,$i,Qi,si,Ai,Ni,Rt,yt,Gt,Wt,xr,Lr,Nr,Or,Hr,jr,gi,ki,Vi,ti,tn,Yr,oi,Fi,an,nn,Ri,Ii,xn,bi,Xr,ct,tr,pr,gr,Zr,Ti,en,ii,Xi,aa,Mn,Un,Ga,ma,oa,ka,so){"use strict";var Kr,Ia,Yo,fa,kn,Aa,ys,uo,ls,$a,fo,mn,ra,wa,ws,Co,Po,Wi,gn,Ps,Ha,Sn,ao,Ba,Ko,Qo,Hi,Sa,Qa,vn,da,la,vo,Ts,ps,co,mo,No,jn,Go,Ys,qs,Ns,Oa,ha,Vs,Ya,_n,Vn,wo,Ra,Xn,un,$n,Ka,qn,Eo,Ja,lo,eo,sa,es,Na,rn,Pa,to,yo,Jo,To,Dn,_a,Ws,Ca,Es,As,Ho,Wa,Ao,ts,Wo,qa;return Kr=t.gl,Ia=t.context,Yo=t.strings,fa=t.next,kn=t.current,Aa=t.draw,ys=t.elements,uo=t.buffer,ls=t.shader,$a=t.attributes,fo=t.vao,mn=t.uniforms,ra=t.framebuffer,wa=t.extensions,ws=t.timer,Co=t.isBufferArgs,Po=fa.blend_color,Wi=kn.blend_color,gn=fa.blend_equation,Ps=kn.blend_equation,Ha=fa.blend_func,Sn=kn.blend_func,ao=fa.depth_range,Ba=kn.depth_range,Ko=fa.colorMask,Qo=kn.colorMask,Hi=fa.polygonOffset_offset,Sa=kn.polygonOffset_offset,Qa=fa.sample_coverage,vn=kn.sample_coverage,da=fa.stencil_func,la=kn.stencil_func,vo=fa.stencil_opFront,Ts=kn.stencil_opFront,ps=fa.stencil_opBack,co=kn.stencil_opBack,mo=fa.scissor_box,No=kn.scissor_box,jn=fa.viewport,Go=kn.viewport,Ys={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},qs={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Ns={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Oa={add:32774,subtract:32778,"reverse subtract":32779},ha={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Vs={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Ya={cw:2304,ccw:2305},_n={},Vn={},wo=new Float32Array(16),Ra=new Float32Array(16),Xn=new Float32Array(16),un=new Float32Array(16),$n=new Float32Array(16),Ka=new Float32Array(16),qn=new Float32Array(16),Eo=new Float32Array(16),Ja=new Float32Array(16),lo=new Float32Array(16),eo=new Float32Array(16),sa=new Float32Array(16),es=new Float32Array(16),Na=new Float32Array(16),rn=new Float32Array(16),Pa=new Float32Array(16),to=new Float32Array(16),yo=new Float32Array(16),Jo=new Float32Array(16),To=new Float32Array(16),Dn=new Float32Array(16),_a=new Float32Array(16),Ws=new Float32Array(16),Ca=new Float32Array(16),Es=new Float32Array(16),As=new Float32Array(16),Ho=new Float32Array(16),Wa=new Float32Array(16),Ao=new Float32Array(16),ts=new Float32Array(16),Wo=new Float32Array(16),qa=new Float32Array(16),{draw:function(ln){var Bo,ko,oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js;if(Bo=ra.next,Bo!==ra.cur&&(Bo?Kr.bindFramebuffer(36160,Bo.framebuffer):Kr.bindFramebuffer(36160,null),ra.cur=Bo),kn.dirty){var cs,sl,ll,il,zl,Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir;cs=Ko[0],sl=Ko[1],ll=Ko[2],il=Ko[3],(cs!==Qo[0]||sl!==Qo[1]||ll!==Qo[2]||il!==Qo[3])&&(Kr.colorMask(cs,sl,ll,il),Qo[0]=cs,Qo[1]=sl,Qo[2]=ll,Qo[3]=il),zl=fa.frontFace,zl!==kn.frontFace&&(Kr.frontFace(zl),kn.frontFace=zl),Ml=fa.polygonOffset_enable,Ml!==kn.polygonOffset_enable&&(Ml?Kr.enable(32823):Kr.disable(32823),kn.polygonOffset_enable=Ml),Rl=Hi[0],Tl=Hi[1],(Rl!==Sa[0]||Tl!==Sa[1])&&(Kr.polygonOffset(Rl,Tl),Sa[0]=Rl,Sa[1]=Tl),Ll=fa.sample_alpha,Ll!==kn.sample_alpha&&(Ll?Kr.enable(32926):Kr.disable(32926),kn.sample_alpha=Ll),ms=fa.sample_enable,ms!==kn.sample_enable&&(ms?Kr.enable(32928):Kr.disable(32928),kn.sample_enable=ms),Os=Qa[0],Xl=Qa[1],(Os!==vn[0]||Xl!==vn[1])&&(Kr.sampleCoverage(Os,Xl),vn[0]=Os,vn[1]=Xl),Vl=fa.stencil_enable,Vl!==kn.stencil_enable&&(Vl?Kr.enable(2960):Kr.disable(2960),kn.stencil_enable=Vl),Nl=fa.stencil_mask,Nl!==kn.stencil_mask&&(Kr.stencilMask(Nl),kn.stencil_mask=Nl),le=da[0],w=da[1],q=da[2],(le!==la[0]||w!==la[1]||q!==la[2])&&(Kr.stencilFunc(le,w,q),la[0]=le,la[1]=w,la[2]=q),Q=vo[0],ee=vo[1],ue=vo[2],Ve=vo[3],(Q!==Ts[0]||ee!==Ts[1]||ue!==Ts[2]||Ve!==Ts[3])&&(Kr.stencilOpSeparate(Q,ee,ue,Ve),Ts[0]=Q,Ts[1]=ee,Ts[2]=ue,Ts[3]=Ve),tt=ps[0],mt=ps[1],Bt=ps[2],ir=ps[3],(tt!==co[0]||mt!==co[1]||Bt!==co[2]||ir!==co[3])&&(Kr.stencilOpSeparate(tt,mt,Bt,ir),co[0]=tt,co[1]=mt,co[2]=Bt,co[3]=ir)}ko=ln.viewportX,_n.x=ko,oo=ln.viewportY,_n.y=oo,za=ln.viewportWidth,_n.width=za,ea=ln.viewportHeight,_n.height=ea,rs=_n.x|0,$s=_n.y|0,us="width"in _n?_n.width|0:Ia.framebufferWidth-rs,Ds="height"in _n?_n.height|0:Ia.framebufferHeight-$s,fl=Ia.viewportWidth,Ia.viewportWidth=us,as=Ia.viewportHeight,Ia.viewportHeight=Ds,Kr.viewport(rs,$s,us,Ds),Go[0]=rs,Go[1]=$s,Go[2]=us,Go[3]=Ds,Kr.blendColor(0,0,0,0),Wi[0]=0,Wi[1]=0,Wi[2]=0,Wi[3]=0,n?Kr.enable(3042):Kr.disable(3042),kn.blend_enable=n,Kr.blendEquationSeparate(32774,32774),Ps[0]=32774,Ps[1]=32774,Kr.blendFuncSeparate(770,771,1,1),Sn[0]=770,Sn[1]=771,Sn[2]=1,Sn[3]=1,i?Kr.enable(2884):Kr.disable(2884),kn.cull_enable=i,Kr.cullFace(a),kn.cull_face=a,o?Kr.enable(2929):Kr.disable(2929),kn.depth_enable=o,Kr.depthFunc(s),kn.depth_func=s,Kr.depthMask(u),kn.depth_mask=u,Kr.depthRange(0,1),Ba[0]=0,Ba[1]=1,l?Kr.enable(3024):Kr.disable(3024),kn.dither=l,Kr.lineWidth(f),kn.lineWidth=f,Ma=ln.scissorX,Vn.x=Ma,Qs=ln.scissorY,Vn.y=Qs,ho=ln.scissorWidth,Vn.width=ho,gs=ln.scissorHeight,Vn.height=gs,Vo=Vn.x|0,Do=Vn.y|0,Lo="width"in Vn?Vn.width|0:Ia.framebufferWidth-Vo,xs="height"in Vn?Vn.height|0:Ia.framebufferHeight-Do,Kr.scissor(Vo,Do,Lo,xs),No[0]=Vo,No[1]=Do,No[2]=Lo,No[3]=xs,c?Kr.enable(3089):Kr.disable(3089),kn.scissor_enable=c,ks=kn.profile,kn.profile=!1,Kr.useProgram(h.program),fo.setVAO(null),Ea=p.location,Jn=$a[Ea],Jn.buffer||Kr.enableVertexAttribArray(Ea),(Jn.type!==d.dtype||Jn.size!==4||Jn.buffer!==d||Jn.normalized!==!1||Jn.offset!==0||Jn.stride!==0)&&(Kr.bindBuffer(34962,d.buffer),Kr.vertexAttribPointer(Ea,4,d.dtype,!1,0,0),Jn.type=d.dtype,Jn.size=4,Jn.buffer=d,Jn.normalized=!1,Jn.offset=0,Jn.stride=0),Oo=b.location,rl=$a[Oo],rl.buffer||Kr.enableVertexAttribArray(Oo),(rl.type!==_.dtype||rl.size!==4||rl.buffer!==_||rl.normalized!==!1||rl.offset!==0||rl.stride!==0)&&(Kr.bindBuffer(34962,_.buffer),Kr.vertexAttribPointer(Oo,4,_.dtype,!1,0,0),rl.type=_.dtype,rl.size=4,rl.buffer=_,rl.normalized=!1,rl.offset=0,rl.stride=0),Gs=k.location,bs=$a[Gs],bs.buffer||Kr.enableVertexAttribArray(Gs),(bs.type!==v.dtype||bs.size!==4||bs.buffer!==v||bs.normalized!==!1||bs.offset!==0||bs.stride!==0)&&(Kr.bindBuffer(34962,v.buffer),Kr.vertexAttribPointer(Gs,4,v.dtype,!1,0,0),bs.type=v.dtype,bs.size=4,bs.buffer=v,bs.normalized=!1,bs.offset=0,bs.stride=0),zs=A.location,$o=$a[zs],$o.buffer||Kr.enableVertexAttribArray(zs),($o.type!==E.dtype||$o.size!==4||$o.buffer!==E||$o.normalized!==!1||$o.offset!==0||$o.stride!==0)&&(Kr.bindBuffer(34962,E.buffer),Kr.vertexAttribPointer(zs,4,E.dtype,!1,0,0),$o.type=E.dtype,$o.size=4,$o.buffer=E,$o.normalized=!1,$o.offset=0,$o.stride=0),Ta=x.location,os=$a[Ta],os.buffer||Kr.enableVertexAttribArray(Ta),(os.type!==L.dtype||os.size!==4||os.buffer!==L||os.normalized!==!1||os.offset!==0||os.stride!==0)&&(Kr.bindBuffer(34962,L.buffer),Kr.vertexAttribPointer(Ta,4,L.dtype,!1,0,0),os.type=L.dtype,os.size=4,os.buffer=L,os.normalized=!1,os.offset=0,os.stride=0),_l=M.location,Ss=$a[_l],Ss.buffer||Kr.enableVertexAttribArray(_l),(Ss.type!==C.dtype||Ss.size!==4||Ss.buffer!==C||Ss.normalized!==!1||Ss.offset!==0||Ss.stride!==0)&&(Kr.bindBuffer(34962,C.buffer),Kr.vertexAttribPointer(_l,4,C.dtype,!1,0,0),Ss.type=C.dtype,Ss.size=4,Ss.buffer=C,Ss.normalized=!1,Ss.offset=0,Ss.stride=0),po=P.location,go=$a[po],go.buffer||Kr.enableVertexAttribArray(po),(go.type!==m.dtype||go.size!==4||go.buffer!==m||go.normalized!==!1||go.offset!==0||go.stride!==0)&&(Kr.bindBuffer(34962,m.buffer),Kr.vertexAttribPointer(po,4,m.dtype,!1,0,0),go.type=m.dtype,go.size=4,go.buffer=m,go.normalized=!1,go.offset=0,go.stride=0),ss=B.location,qo=$a[ss],qo.buffer||Kr.enableVertexAttribArray(ss),(qo.type!==T.dtype||qo.size!==4||qo.buffer!==T||qo.normalized!==!1||qo.offset!==0||qo.stride!==0)&&(Kr.bindBuffer(34962,T.buffer),Kr.vertexAttribPointer(ss,4,T.dtype,!1,0,0),qo.type=T.dtype,qo.size=4,qo.buffer=T,qo.normalized=!1,qo.offset=0,qo.stride=0),zo=U.location,io=$a[zo],io.buffer||Kr.enableVertexAttribArray(zo),(io.type!==F.dtype||io.size!==4||io.buffer!==F||io.normalized!==!1||io.offset!==0||io.stride!==0)&&(Kr.bindBuffer(34962,F.buffer),Kr.vertexAttribPointer(zo,4,F.dtype,!1,0,0),io.type=F.dtype,io.size=4,io.buffer=F,io.normalized=!1,io.offset=0,io.stride=0),Io=j.location,Da=$a[Io],Da.buffer||Kr.enableVertexAttribArray(Io),(Da.type!==G.dtype||Da.size!==4||Da.buffer!==G||Da.normalized!==!1||Da.offset!==0||Da.stride!==0)&&(Kr.bindBuffer(34962,G.buffer),Kr.vertexAttribPointer(Io,4,G.dtype,!1,0,0),Da.type=G.dtype,Da.size=4,Da.buffer=G,Da.normalized=!1,Da.offset=0,Da.stride=0),vs=N.location,fs=$a[vs],fs.buffer||Kr.enableVertexAttribArray(vs),(fs.type!==W.dtype||fs.size!==4||fs.buffer!==W||fs.normalized!==!1||fs.offset!==0||fs.stride!==0)&&(Kr.bindBuffer(34962,W.buffer),Kr.vertexAttribPointer(vs,4,W.dtype,!1,0,0),fs.type=W.dtype,fs.size=4,fs.buffer=W,fs.normalized=!1,fs.offset=0,fs.stride=0),cl=re.location,el=$a[cl],el.buffer||Kr.enableVertexAttribArray(cl),(el.type!==H.dtype||el.size!==4||el.buffer!==H||el.normalized!==!1||el.offset!==0||el.stride!==0)&&(Kr.bindBuffer(34962,H.buffer),Kr.vertexAttribPointer(cl,4,H.dtype,!1,0,0),el.type=H.dtype,el.size=4,el.buffer=H,el.normalized=!1,el.offset=0,el.stride=0),Hs=be.location,Ro=$a[Hs],Ro.buffer||Kr.enableVertexAttribArray(Hs),(Ro.type!==ae.dtype||Ro.size!==4||Ro.buffer!==ae||Ro.normalized!==!1||Ro.offset!==0||Ro.stride!==0)&&(Kr.bindBuffer(34962,ae.buffer),Kr.vertexAttribPointer(Hs,4,ae.dtype,!1,0,0),Ro.type=ae.dtype,Ro.size=4,Ro.buffer=ae,Ro.normalized=!1,Ro.offset=0,Ro.stride=0),tl=Ce.location,Fs=$a[tl],Fs.buffer||Kr.enableVertexAttribArray(tl),(Fs.type!==ze.dtype||Fs.size!==4||Fs.buffer!==ze||Fs.normalized!==!1||Fs.offset!==0||Fs.stride!==0)&&(Kr.bindBuffer(34962,ze.buffer),Kr.vertexAttribPointer(tl,4,ze.dtype,!1,0,0),Fs.type=ze.dtype,Fs.size=4,Fs.buffer=ze,Fs.normalized=!1,Fs.offset=0,Fs.stride=0),hl=te.location,Fa=$a[hl],Fa.buffer||Kr.enableVertexAttribArray(hl),(Fa.type!==de.dtype||Fa.size!==4||Fa.buffer!==de||Fa.normalized!==!1||Fa.offset!==0||Fa.stride!==0)&&(Kr.bindBuffer(34962,de.buffer),Kr.vertexAttribPointer(hl,4,de.dtype,!1,0,0),Fa.type=de.dtype,Fa.size=4,Fa.buffer=de,Fa.normalized=!1,Fa.offset=0,Fa.stride=0),Ms=Ee.location,jo=$a[Ms],jo.buffer||Kr.enableVertexAttribArray(Ms),(jo.type!==ke.dtype||jo.size!==4||jo.buffer!==ke||jo.normalized!==!1||jo.offset!==0||jo.stride!==0)&&(Kr.bindBuffer(34962,ke.buffer),Kr.vertexAttribPointer(Ms,4,ke.dtype,!1,0,0),jo.type=ke.dtype,jo.size=4,jo.buffer=ke,jo.normalized=!1,jo.offset=0,jo.stride=0),Rs=ln.contextColor,Is=Rs[0],Bs=Rs[1],At=Rs[2],Vt=Rs[3],Kr.uniform4f(Me.location,Is,Bs,At,Vt),wr=ln.dim0A,Kr.uniformMatrix4fv(Ue.location,!1,Array.isArray(wr)||wr instanceof Float32Array?wr:(wo[0]=wr[0],wo[1]=wr[1],wo[2]=wr[2],wo[3]=wr[3],wo[4]=wr[4],wo[5]=wr[5],wo[6]=wr[6],wo[7]=wr[7],wo[8]=wr[8],wo[9]=wr[9],wo[10]=wr[10],wo[11]=wr[11],wo[12]=wr[12],wo[13]=wr[13],wo[14]=wr[14],wo[15]=wr[15],wo)),mr=ln.dim0B,Kr.uniformMatrix4fv(De.location,!1,Array.isArray(mr)||mr instanceof Float32Array?mr:(Ra[0]=mr[0],Ra[1]=mr[1],Ra[2]=mr[2],Ra[3]=mr[3],Ra[4]=mr[4],Ra[5]=mr[5],Ra[6]=mr[6],Ra[7]=mr[7],Ra[8]=mr[8],Ra[9]=mr[9],Ra[10]=mr[10],Ra[11]=mr[11],Ra[12]=mr[12],Ra[13]=mr[13],Ra[14]=mr[14],Ra[15]=mr[15],Ra)),Fr=ln.dim0C,Kr.uniformMatrix4fv(ye.location,!1,Array.isArray(Fr)||Fr instanceof Float32Array?Fr:(Xn[0]=Fr[0],Xn[1]=Fr[1],Xn[2]=Fr[2],Xn[3]=Fr[3],Xn[4]=Fr[4],Xn[5]=Fr[5],Xn[6]=Fr[6],Xn[7]=Fr[7],Xn[8]=Fr[8],Xn[9]=Fr[9],Xn[10]=Fr[10],Xn[11]=Fr[11],Xn[12]=Fr[12],Xn[13]=Fr[13],Xn[14]=Fr[14],Xn[15]=Fr[15],Xn)),_i=ln.dim0D,Kr.uniformMatrix4fv(qe.location,!1,Array.isArray(_i)||_i instanceof Float32Array?_i:(un[0]=_i[0],un[1]=_i[1],un[2]=_i[2],un[3]=_i[3],un[4]=_i[4],un[5]=_i[5],un[6]=_i[6],un[7]=_i[7],un[8]=_i[8],un[9]=_i[9],un[10]=_i[10],un[11]=_i[11],un[12]=_i[12],un[13]=_i[13],un[14]=_i[14],un[15]=_i[15],un)),Si=ln.dim1A,Kr.uniformMatrix4fv(ce.location,!1,Array.isArray(Si)||Si instanceof Float32Array?Si:($n[0]=Si[0],$n[1]=Si[1],$n[2]=Si[2],$n[3]=Si[3],$n[4]=Si[4],$n[5]=Si[5],$n[6]=Si[6],$n[7]=Si[7],$n[8]=Si[8],$n[9]=Si[9],$n[10]=Si[10],$n[11]=Si[11],$n[12]=Si[12],$n[13]=Si[13],$n[14]=Si[14],$n[15]=Si[15],$n)),Ci=ln.dim1B,Kr.uniformMatrix4fv(Je.location,!1,Array.isArray(Ci)||Ci instanceof Float32Array?Ci:(Ka[0]=Ci[0],Ka[1]=Ci[1],Ka[2]=Ci[2],Ka[3]=Ci[3],Ka[4]=Ci[4],Ka[5]=Ci[5],Ka[6]=Ci[6],Ka[7]=Ci[7],Ka[8]=Ci[8],Ka[9]=Ci[9],Ka[10]=Ci[10],Ka[11]=Ci[11],Ka[12]=Ci[12],Ka[13]=Ci[13],Ka[14]=Ci[14],Ka[15]=Ci[15],Ka)),Ki=ln.dim1C,Kr.uniformMatrix4fv(nt.location,!1,Array.isArray(Ki)||Ki instanceof Float32Array?Ki:(qn[0]=Ki[0],qn[1]=Ki[1],qn[2]=Ki[2],qn[3]=Ki[3],qn[4]=Ki[4],qn[5]=Ki[5],qn[6]=Ki[6],qn[7]=Ki[7],qn[8]=Ki[8],qn[9]=Ki[9],qn[10]=Ki[10],qn[11]=Ki[11],qn[12]=Ki[12],qn[13]=Ki[13],qn[14]=Ki[14],qn[15]=Ki[15],qn)),Fn=ln.dim1D,Kr.uniformMatrix4fv(gt.location,!1,Array.isArray(Fn)||Fn instanceof Float32Array?Fn:(Eo[0]=Fn[0],Eo[1]=Fn[1],Eo[2]=Fn[2],Eo[3]=Fn[3],Eo[4]=Fn[4],Eo[5]=Fn[5],Eo[6]=Fn[6],Eo[7]=Fn[7],Eo[8]=Fn[8],Eo[9]=Fn[9],Eo[10]=Fn[10],Eo[11]=Fn[11],Eo[12]=Fn[12],Eo[13]=Fn[13],Eo[14]=Fn[14],Eo[15]=Fn[15],Eo)),Pi=ln.drwLayer,Kr.uniform1f(Nt.location,Pi),di=ln.hiA,Kr.uniformMatrix4fv(at.location,!1,Array.isArray(di)||di instanceof Float32Array?di:(Ja[0]=di[0],Ja[1]=di[1],Ja[2]=di[2],Ja[3]=di[3],Ja[4]=di[4],Ja[5]=di[5],Ja[6]=di[6],Ja[7]=di[7],Ja[8]=di[8],Ja[9]=di[9],Ja[10]=di[10],Ja[11]=di[11],Ja[12]=di[12],Ja[13]=di[13],Ja[14]=di[14],Ja[15]=di[15],Ja)),Li=ln.hiB,Kr.uniformMatrix4fv(Ke.location,!1,Array.isArray(Li)||Li instanceof Float32Array?Li:(lo[0]=Li[0],lo[1]=Li[1],lo[2]=Li[2],lo[3]=Li[3],lo[4]=Li[4],lo[5]=Li[5],lo[6]=Li[6],lo[7]=Li[7],lo[8]=Li[8],lo[9]=Li[9],lo[10]=Li[10],lo[11]=Li[11],lo[12]=Li[12],lo[13]=Li[13],lo[14]=Li[14],lo[15]=Li[15],lo)),Mi=ln.hiC,Kr.uniformMatrix4fv(Ct.location,!1,Array.isArray(Mi)||Mi instanceof Float32Array?Mi:(eo[0]=Mi[0],eo[1]=Mi[1],eo[2]=Mi[2],eo[3]=Mi[3],eo[4]=Mi[4],eo[5]=Mi[5],eo[6]=Mi[6],eo[7]=Mi[7],eo[8]=Mi[8],eo[9]=Mi[9],eo[10]=Mi[10],eo[11]=Mi[11],eo[12]=Mi[12],eo[13]=Mi[13],eo[14]=Mi[14],eo[15]=Mi[15],eo)),Gn=ln.hiD,Kr.uniformMatrix4fv(wt.location,!1,Array.isArray(Gn)||Gn instanceof Float32Array?Gn:(sa[0]=Gn[0],sa[1]=Gn[1],sa[2]=Gn[2],sa[3]=Gn[3],sa[4]=Gn[4],sa[5]=Gn[5],sa[6]=Gn[6],sa[7]=Gn[7],sa[8]=Gn[8],sa[9]=Gn[9],sa[10]=Gn[10],sa[11]=Gn[11],sa[12]=Gn[12],sa[13]=Gn[13],sa[14]=Gn[14],sa[15]=Gn[15],sa)),ta=ln.loA,Kr.uniformMatrix4fv(St.location,!1,Array.isArray(ta)||ta instanceof Float32Array?ta:(es[0]=ta[0],es[1]=ta[1],es[2]=ta[2],es[3]=ta[3],es[4]=ta[4],es[5]=ta[5],es[6]=ta[6],es[7]=ta[7],es[8]=ta[8],es[9]=ta[9],es[10]=ta[10],es[11]=ta[11],es[12]=ta[12],es[13]=ta[13],es[14]=ta[14],es[15]=ta[15],es)),ya=ln.loB,Kr.uniformMatrix4fv(Dt.location,!1,Array.isArray(ya)||ya instanceof Float32Array?ya:(Na[0]=ya[0],Na[1]=ya[1],Na[2]=ya[2],Na[3]=ya[3],Na[4]=ya[4],Na[5]=ya[5],Na[6]=ya[6],Na[7]=ya[7],Na[8]=ya[8],Na[9]=ya[9],Na[10]=ya[10],Na[11]=ya[11],Na[12]=ya[12],Na[13]=ya[13],Na[14]=ya[14],Na[15]=ya[15],Na)),ia=ln.loC,Kr.uniformMatrix4fv(Zt.location,!1,Array.isArray(ia)||ia instanceof Float32Array?ia:(rn[0]=ia[0],rn[1]=ia[1],rn[2]=ia[2],rn[3]=ia[3],rn[4]=ia[4],rn[5]=ia[5],rn[6]=ia[6],rn[7]=ia[7],rn[8]=ia[8],rn[9]=ia[9],rn[10]=ia[10],rn[11]=ia[11],rn[12]=ia[12],rn[13]=ia[13],rn[14]=ia[14],rn[15]=ia[15],rn)),pa=ln.loD,Kr.uniformMatrix4fv(Et.location,!1,Array.isArray(pa)||pa instanceof Float32Array?pa:(Pa[0]=pa[0],Pa[1]=pa[1],Pa[2]=pa[2],Pa[3]=pa[3],Pa[4]=pa[4],Pa[5]=pa[5],Pa[6]=pa[6],Pa[7]=pa[7],Pa[8]=pa[8],Pa[9]=pa[9],Pa[10]=pa[10],Pa[11]=pa[11],Pa[12]=pa[12],Pa[13]=pa[13],Pa[14]=pa[14],Pa[15]=pa[15],Pa)),va=ln.maskHeight,Kr.uniform1f(Te.location,va),zn=ln.maskTexture,zn&&zn._reglType==="framebuffer"&&(zn=zn.color[0]),is=zn._texture,Kr.uniform1i(ot.location,is.bind()),Kr.uniform1i(Tt.location,vt.bind()),Cs=ln.resolution,Ks=Cs[0],dl=Cs[1],Kr.uniform2f(Ye.location,Ks,dl),xl=ln.viewBoxPos,Bl=xl[0],bl=xl[1],Kr.uniform2f(He.location,Bl,bl),eu=ln.viewBoxSize,Zl=eu[0],Ul=eu[1],Kr.uniform2f(it.location,Zl,Ul),ja=Aa.elements,ja?Kr.bindBuffer(34963,ja.buffer.buffer):fo.currentVAO&&(ja=ys.getElements(fo.currentVAO.elements),ja&&Kr.bindBuffer(34963,ja.buffer.buffer)),ns=ln.offset,Js=ln.count,Js&&(ja?Kr.drawElements(1,Js,ja.type,ns<<(ja.type-5121>>1)):Kr.drawArrays(1,ns,Js),kn.dirty=!0,fo.setVAO(null),Ia.viewportWidth=fl,Ia.viewportHeight=as,kn.profile=ks,is.unbind(),vt.unbind())},scope:function(ln,Bo,ko){var oo,za,ea,rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os,_l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci,Ki,Fn,Pi,di,Li,Mi,Gn,ta,ya,ia,pa,va,zn,is,Cs,Ks,dl,xl,Bl,bl,eu,Zl,Ul,ja,ns,Js,cs,sl,ll,il,zl,Ml,Rl,Tl,Ll,ms,Os,Xl,Vl,Nl,le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt,pt,Ht,nr,fr,Tr,Ir,ri,li,Ei,hn,Zn,Yn,Ua,Fo,vl,Us,ml,au,Sl,Yl,Ol,ou,Pu,nu,tu,Hu,$u,Ku,Wu,ju,sf,_f,Qu,ef,Z,se,Pe,Xe,Qe,st,jt,_t,hr,Cr,zr,fi,$r,Bi,fn,mi,zi,ji,pn,sn,wi,xo,no,Xo,js,El,Pl,pu,Il,fu,Xu,Vu,tf,ds,Wl,Tu,Au,lf,hf,Mf,pf,fc,Be,qt,ar,Qr,yi,ci,vi,on,Bn,Ln,wn,Ls,ua,Hn,qi,Wr,xi,dn,En,Zi,ga,Kn,hs,Ji,Ui,ro,na,On,In,Va,_s,ul,Qn,Mo,nl,pl,Dl,Fu,vf,Ql,Ef,Cu,gf,xf,Cf,Gu,cf,mf,Fl,bf,cu,Y,R,J,O,K,_e,ne,Le,Ze,kt,dr,Mr,lr,$e,ht,bt,Kt,sr,Qt,ur,er,Ot,Jt,Lt,Ar,Ur,hi,Cn,Yi,yn,Xa,ca,An,Pn,Nn,xa,Zo,ru,yu,Du,vu,zu,Ju,Vf,wd,Td;oo=ln.viewportX,_n.x=oo,za=ln.viewportY,_n.y=za,ea=ln.viewportWidth,_n.width=ea,rs=ln.viewportHeight,_n.height=rs,$s=_n.x|0,us=_n.y|0,Ds="width"in _n?_n.width|0:Ia.framebufferWidth-$s,fl="height"in _n?_n.height|0:Ia.framebufferHeight-us,as=Ia.viewportWidth,Ia.viewportWidth=Ds,Ma=Ia.viewportHeight,Ia.viewportHeight=fl,Qs=jn[0],jn[0]=$s,ho=jn[1],jn[1]=us,gs=jn[2],jn[2]=Ds,Vo=jn[3],jn[3]=fl,Do=Po[0],Po[0]=et,Lo=Po[1],Po[1]=It,xs=Po[2],Po[2]=Yt,ks=Po[3],Po[3]=cr,Ea=fa.blend_enable,fa.blend_enable=_r,Jn=gn[0],gn[0]=yr,Oo=gn[1],gn[1]=Ut,rl=Ha[0],Ha[0]=Re,Gs=Ha[1],Ha[1]=xe,bs=Ha[2],Ha[2]=Oe,zs=Ha[3],Ha[3]=Ie,$o=fa.cull_enable,fa.cull_enable=Fe,Ta=fa.cull_face,fa.cull_face=ft,os=fa.depth_enable,fa.depth_enable=ge,_l=fa.depth_func,fa.depth_func=fe,Ss=fa.depth_mask,fa.depth_mask=pe,po=ao[0],ao[0]=dt,go=ao[1],ao[1]=Pt,ss=fa.dither,fa.dither=zt,qo=fa.lineWidth,fa.lineWidth=rr,zo=ln.scissorX,Vn.x=zo,io=ln.scissorY,Vn.y=io,Io=ln.scissorWidth,Vn.width=Io,Da=ln.scissorHeight,Vn.height=Da,vs=Vn.x|0,fs=Vn.y|0,cl="width"in Vn?Vn.width|0:Ia.framebufferWidth-vs,el="height"in Vn?Vn.height|0:Ia.framebufferHeight-fs,Hs=mo[0],mo[0]=vs,Ro=mo[1],mo[1]=fs,tl=mo[2],mo[2]=cl,Fs=mo[3],mo[3]=el,hl=fa.scissor_enable,fa.scissor_enable=Gr,Fa=kn.profile,kn.profile=!1,Ms=ln.offset,jo=Aa.offset,Aa.offset=Ms,Rs=ln.count,Is=Aa.count,Aa.count=Rs,Bs=Aa.primitive,Aa.primitive=Br,At=mn[Rr],mn[Rr]=Er,Vt=ln.resolution,wr=mn[pi],mn[pi]=Vt,mr=ln.viewBoxPos,Fr=mn[Di],mn[Di]=mr,_i=ln.viewBoxSize,Si=mn[ni],mn[ni]=_i,Ci=ln.dim0A,Ki=mn[$i],mn[$i]=Ci,Fn=ln.dim1A,Pi=mn[Qi],mn[Qi]=Fn,di=ln.dim0B,Li=mn[si],mn[si]=di,Mi=ln.dim1B,Gn=mn[Ai],mn[Ai]=Mi,ta=ln.dim0C,ya=mn[Ni],mn[Ni]=ta,ia=ln.dim1C,pa=mn[Rt],mn[Rt]=ia,va=ln.dim0D,zn=mn[yt],mn[yt]=va,is=ln.dim1D,Cs=mn[Gt],mn[Gt]=is,Ks=ln.loA,dl=mn[Wt],mn[Wt]=Ks,xl=ln.hiA,Bl=mn[xr],mn[xr]=xl,bl=ln.loB,eu=mn[Lr],mn[Lr]=bl,Zl=ln.hiB,Ul=mn[Nr],mn[Nr]=Zl,ja=ln.loC,ns=mn[Or],mn[Or]=ja,Js=ln.hiC,cs=mn[Hr],mn[Hr]=Js,sl=ln.loD,ll=mn[jr],mn[jr]=sl,il=ln.hiD,zl=mn[gi],mn[gi]=il,Ml=ln.contextColor,Rl=mn[ki],mn[ki]=Ml,Tl=ln.maskTexture,Ll=mn[Vi],mn[Vi]=Tl,ms=ln.drwLayer,Os=mn[ti],mn[ti]=ms,Xl=ln.maskHeight,Vl=mn[tn],mn[tn]=Xl,Nl=Yr.state,Yr.state=1,le=Yr.x,Yr.x=0,w=Yr.y,Yr.y=0,q=Yr.z,Yr.z=0,Q=Yr.w,Yr.w=0,ee=Yr.buffer,Yr.buffer=_,ue=Yr.size,Yr.size=0,Ve=Yr.normalized,Yr.normalized=!1,tt=Yr.type,Yr.type=_.dtype,mt=Yr.offset,Yr.offset=0,Bt=Yr.stride,Yr.stride=0,ir=Yr.divisor,Yr.divisor=0,or=oi.state,oi.state=1,kr=oi.x,oi.x=0,Vr=oi.y,oi.y=0,he=oi.z,oi.z=0,Se=oi.w,oi.w=0,Ne=oi.buffer,oi.buffer=v,Ge=oi.size,oi.size=0,lt=oi.normalized,oi.normalized=!1,rt=oi.type,oi.type=v.dtype,pt=oi.offset,oi.offset=0,Ht=oi.stride,oi.stride=0,nr=oi.divisor,oi.divisor=0,fr=Fi.state,Fi.state=1,Tr=Fi.x,Fi.x=0,Ir=Fi.y,Fi.y=0,ri=Fi.z,Fi.z=0,li=Fi.w,Fi.w=0,Ei=Fi.buffer,Fi.buffer=E,hn=Fi.size,Fi.size=0,Zn=Fi.normalized,Fi.normalized=!1,Yn=Fi.type,Fi.type=E.dtype,Ua=Fi.offset,Fi.offset=0,Fo=Fi.stride,Fi.stride=0,vl=Fi.divisor,Fi.divisor=0,Us=an.state,an.state=1,ml=an.x,an.x=0,au=an.y,an.y=0,Sl=an.z,an.z=0,Yl=an.w,an.w=0,Ol=an.buffer,an.buffer=L,ou=an.size,an.size=0,Pu=an.normalized,an.normalized=!1,nu=an.type,an.type=L.dtype,tu=an.offset,an.offset=0,Hu=an.stride,an.stride=0,$u=an.divisor,an.divisor=0,Ku=nn.state,nn.state=1,Wu=nn.x,nn.x=0,ju=nn.y,nn.y=0,sf=nn.z,nn.z=0,_f=nn.w,nn.w=0,Qu=nn.buffer,nn.buffer=C,ef=nn.size,nn.size=0,Z=nn.normalized,nn.normalized=!1,se=nn.type,nn.type=C.dtype,Pe=nn.offset,nn.offset=0,Xe=nn.stride,nn.stride=0,Qe=nn.divisor,nn.divisor=0,st=Ri.state,Ri.state=1,jt=Ri.x,Ri.x=0,_t=Ri.y,Ri.y=0,hr=Ri.z,Ri.z=0,Cr=Ri.w,Ri.w=0,zr=Ri.buffer,Ri.buffer=m,fi=Ri.size,Ri.size=0,$r=Ri.normalized,Ri.normalized=!1,Bi=Ri.type,Ri.type=m.dtype,fn=Ri.offset,Ri.offset=0,mi=Ri.stride,Ri.stride=0,zi=Ri.divisor,Ri.divisor=0,ji=Ii.state,Ii.state=1,pn=Ii.x,Ii.x=0,sn=Ii.y,Ii.y=0,wi=Ii.z,Ii.z=0,xo=Ii.w,Ii.w=0,no=Ii.buffer,Ii.buffer=T,Xo=Ii.size,Ii.size=0,js=Ii.normalized,Ii.normalized=!1,El=Ii.type,Ii.type=T.dtype,Pl=Ii.offset,Ii.offset=0,pu=Ii.stride,Ii.stride=0,Il=Ii.divisor,Ii.divisor=0,fu=xn.state,xn.state=1,Xu=xn.x,xn.x=0,Vu=xn.y,xn.y=0,tf=xn.z,xn.z=0,ds=xn.w,xn.w=0,Wl=xn.buffer,xn.buffer=F,Tu=xn.size,xn.size=0,Au=xn.normalized,xn.normalized=!1,lf=xn.type,xn.type=F.dtype,hf=xn.offset,xn.offset=0,Mf=xn.stride,xn.stride=0,pf=xn.divisor,xn.divisor=0,fc=bi.state,bi.state=1,Be=bi.x,bi.x=0,qt=bi.y,bi.y=0,ar=bi.z,bi.z=0,Qr=bi.w,bi.w=0,yi=bi.buffer,bi.buffer=G,ci=bi.size,bi.size=0,vi=bi.normalized,bi.normalized=!1,on=bi.type,bi.type=G.dtype,Bn=bi.offset,bi.offset=0,Ln=bi.stride,bi.stride=0,wn=bi.divisor,bi.divisor=0,Ls=Xr.state,Xr.state=1,ua=Xr.x,Xr.x=0,Hn=Xr.y,Xr.y=0,qi=Xr.z,Xr.z=0,Wr=Xr.w,Xr.w=0,xi=Xr.buffer,Xr.buffer=W,dn=Xr.size,Xr.size=0,En=Xr.normalized,Xr.normalized=!1,Zi=Xr.type,Xr.type=W.dtype,ga=Xr.offset,Xr.offset=0,Kn=Xr.stride,Xr.stride=0,hs=Xr.divisor,Xr.divisor=0,Ji=ct.state,ct.state=1,Ui=ct.x,ct.x=0,ro=ct.y,ct.y=0,na=ct.z,ct.z=0,On=ct.w,ct.w=0,In=ct.buffer,ct.buffer=H,Va=ct.size,ct.size=0,_s=ct.normalized,ct.normalized=!1,ul=ct.type,ct.type=H.dtype,Qn=ct.offset,ct.offset=0,Mo=ct.stride,ct.stride=0,nl=ct.divisor,ct.divisor=0,pl=tr.state,tr.state=1,Dl=tr.x,tr.x=0,Fu=tr.y,tr.y=0,vf=tr.z,tr.z=0,Ql=tr.w,tr.w=0,Ef=tr.buffer,tr.buffer=ae,Cu=tr.size,tr.size=0,gf=tr.normalized,tr.normalized=!1,xf=tr.type,tr.type=ae.dtype,Cf=tr.offset,tr.offset=0,Gu=tr.stride,tr.stride=0,cf=tr.divisor,tr.divisor=0,mf=pr.state,pr.state=1,Fl=pr.x,pr.x=0,bf=pr.y,pr.y=0,cu=pr.z,pr.z=0,Y=pr.w,pr.w=0,R=pr.buffer,pr.buffer=ze,J=pr.size,pr.size=0,O=pr.normalized,pr.normalized=!1,K=pr.type,pr.type=ze.dtype,_e=pr.offset,pr.offset=0,ne=pr.stride,pr.stride=0,Le=pr.divisor,pr.divisor=0,Ze=gr.state,gr.state=1,kt=gr.x,gr.x=0,dr=gr.y,gr.y=0,Mr=gr.z,gr.z=0,lr=gr.w,gr.w=0,$e=gr.buffer,gr.buffer=de,ht=gr.size,gr.size=0,bt=gr.normalized,gr.normalized=!1,Kt=gr.type,gr.type=de.dtype,sr=gr.offset,gr.offset=0,Qt=gr.stride,gr.stride=0,ur=gr.divisor,gr.divisor=0,er=Zr.state,Zr.state=1,Ot=Zr.x,Zr.x=0,Jt=Zr.y,Zr.y=0,Lt=Zr.z,Zr.z=0,Ar=Zr.w,Zr.w=0,Ur=Zr.buffer,Zr.buffer=ke,hi=Zr.size,Zr.size=0,Cn=Zr.normalized,Zr.normalized=!1,Yi=Zr.type,Zr.type=ke.dtype,yn=Zr.offset,Zr.offset=0,Xa=Zr.stride,Zr.stride=0,ca=Zr.divisor,Zr.divisor=0,An=Ti.state,Ti.state=1,Pn=Ti.x,Ti.x=0,Nn=Ti.y,Ti.y=0,xa=Ti.z,Ti.z=0,Zo=Ti.w,Ti.w=0,ru=Ti.buffer,Ti.buffer=d,yu=Ti.size,Ti.size=0,Du=Ti.normalized,Ti.normalized=!1,vu=Ti.type,Ti.type=d.dtype,zu=Ti.offset,Ti.offset=0,Ju=Ti.stride,Ti.stride=0,Vf=Ti.divisor,Ti.divisor=0,wd=ls.vert,ls.vert=en,Td=ls.frag,ls.frag=ii,kn.dirty=!0,Bo(Ia,ln,ko),Ia.viewportWidth=as,Ia.viewportHeight=Ma,jn[0]=Qs,jn[1]=ho,jn[2]=gs,jn[3]=Vo,Po[0]=Do,Po[1]=Lo,Po[2]=xs,Po[3]=ks,fa.blend_enable=Ea,gn[0]=Jn,gn[1]=Oo,Ha[0]=rl,Ha[1]=Gs,Ha[2]=bs,Ha[3]=zs,fa.cull_enable=$o,fa.cull_face=Ta,fa.depth_enable=os,fa.depth_func=_l,fa.depth_mask=Ss,ao[0]=po,ao[1]=go,fa.dither=ss,fa.lineWidth=qo,mo[0]=Hs,mo[1]=Ro,mo[2]=tl,mo[3]=Fs,fa.scissor_enable=hl,kn.profile=Fa,Aa.offset=jo,Aa.count=Is,Aa.primitive=Bs,mn[Rr]=At,mn[pi]=wr,mn[Di]=Fr,mn[ni]=Si,mn[$i]=Ki,mn[Qi]=Pi,mn[si]=Li,mn[Ai]=Gn,mn[Ni]=ya,mn[Rt]=pa,mn[yt]=zn,mn[Gt]=Cs,mn[Wt]=dl,mn[xr]=Bl,mn[Lr]=eu,mn[Nr]=Ul,mn[Or]=ns,mn[Hr]=cs,mn[jr]=ll,mn[gi]=zl,mn[ki]=Rl,mn[Vi]=Ll,mn[ti]=Os,mn[tn]=Vl,Yr.state=Nl,Yr.x=le,Yr.y=w,Yr.z=q,Yr.w=Q,Yr.buffer=ee,Yr.size=ue,Yr.normalized=Ve,Yr.type=tt,Yr.offset=mt,Yr.stride=Bt,Yr.divisor=ir,oi.state=or,oi.x=kr,oi.y=Vr,oi.z=he,oi.w=Se,oi.buffer=Ne,oi.size=Ge,oi.normalized=lt,oi.type=rt,oi.offset=pt,oi.stride=Ht,oi.divisor=nr,Fi.state=fr,Fi.x=Tr,Fi.y=Ir,Fi.z=ri,Fi.w=li,Fi.buffer=Ei,Fi.size=hn,Fi.normalized=Zn,Fi.type=Yn,Fi.offset=Ua,Fi.stride=Fo,Fi.divisor=vl,an.state=Us,an.x=ml,an.y=au,an.z=Sl,an.w=Yl,an.buffer=Ol,an.size=ou,an.normalized=Pu,an.type=nu,an.offset=tu,an.stride=Hu,an.divisor=$u,nn.state=Ku,nn.x=Wu,nn.y=ju,nn.z=sf,nn.w=_f,nn.buffer=Qu,nn.size=ef,nn.normalized=Z,nn.type=se,nn.offset=Pe,nn.stride=Xe,nn.divisor=Qe,Ri.state=st,Ri.x=jt,Ri.y=_t,Ri.z=hr,Ri.w=Cr,Ri.buffer=zr,Ri.size=fi,Ri.normalized=$r,Ri.type=Bi,Ri.offset=fn,Ri.stride=mi,Ri.divisor=zi,Ii.state=ji,Ii.x=pn,Ii.y=sn,Ii.z=wi,Ii.w=xo,Ii.buffer=no,Ii.size=Xo,Ii.normalized=js,Ii.type=El,Ii.offset=Pl,Ii.stride=pu,Ii.divisor=Il,xn.state=fu,xn.x=Xu,xn.y=Vu,xn.z=tf,xn.w=ds,xn.buffer=Wl,xn.size=Tu,xn.normalized=Au,xn.type=lf,xn.offset=hf,xn.stride=Mf,xn.divisor=pf,bi.state=fc,bi.x=Be,bi.y=qt,bi.z=ar,bi.w=Qr,bi.buffer=yi,bi.size=ci,bi.normalized=vi,bi.type=on,bi.offset=Bn,bi.stride=Ln,bi.divisor=wn,Xr.state=Ls,Xr.x=ua,Xr.y=Hn,Xr.z=qi,Xr.w=Wr,Xr.buffer=xi,Xr.size=dn,Xr.normalized=En,Xr.type=Zi,Xr.offset=ga,Xr.stride=Kn,Xr.divisor=hs,ct.state=Ji,ct.x=Ui,ct.y=ro,ct.z=na,ct.w=On,ct.buffer=In,ct.size=Va,ct.normalized=_s,ct.type=ul,ct.offset=Qn,ct.stride=Mo,ct.divisor=nl,tr.state=pl,tr.x=Dl,tr.y=Fu,tr.z=vf,tr.w=Ql,tr.buffer=Ef,tr.size=Cu,tr.normalized=gf,tr.type=xf,tr.offset=Cf,tr.stride=Gu,tr.divisor=cf,pr.state=mf,pr.x=Fl,pr.y=bf,pr.z=cu,pr.w=Y,pr.buffer=R,pr.size=J,pr.normalized=O,pr.type=K,pr.offset=_e,pr.stride=ne,pr.divisor=Le,gr.state=Ze,gr.x=kt,gr.y=dr,gr.z=Mr,gr.w=lr,gr.buffer=$e,gr.size=ht,gr.normalized=bt,gr.type=Kt,gr.offset=sr,gr.stride=Qt,gr.divisor=ur,Zr.state=er,Zr.x=Ot,Zr.y=Jt,Zr.z=Lt,Zr.w=Ar,Zr.buffer=Ur,Zr.size=hi,Zr.normalized=Cn,Zr.type=Yi,Zr.offset=yn,Zr.stride=Xa,Zr.divisor=ca,Ti.state=An,Ti.x=Pn,Ti.y=Nn,Ti.z=xa,Ti.w=Zo,Ti.buffer=ru,Ti.size=yu,Ti.normalized=Du,Ti.type=vu,Ti.offset=zu,Ti.stride=Ju,Ti.divisor=Vf,ls.vert=wd,ls.frag=Td,kn.dirty=!0},batch:function(ln,Bo){var ko,oo,za,ea;if(ko=ra.next,ko!==ra.cur&&(ko?Kr.bindFramebuffer(36160,ko.framebuffer):Kr.bindFramebuffer(36160,null),ra.cur=ko),kn.dirty){var rs,$s,us,Ds,fl,as,Ma,Qs,ho,gs,Vo,Do,Lo,xs,ks,Ea,Jn,Oo,rl,Gs,bs,zs,$o,Ta,os;rs=Ko[0],$s=Ko[1],us=Ko[2],Ds=Ko[3],(rs!==Qo[0]||$s!==Qo[1]||us!==Qo[2]||Ds!==Qo[3])&&(Kr.colorMask(rs,$s,us,Ds),Qo[0]=rs,Qo[1]=$s,Qo[2]=us,Qo[3]=Ds),fl=fa.frontFace,fl!==kn.frontFace&&(Kr.frontFace(fl),kn.frontFace=fl),as=fa.polygonOffset_enable,as!==kn.polygonOffset_enable&&(as?Kr.enable(32823):Kr.disable(32823),kn.polygonOffset_enable=as),Ma=Hi[0],Qs=Hi[1],(Ma!==Sa[0]||Qs!==Sa[1])&&(Kr.polygonOffset(Ma,Qs),Sa[0]=Ma,Sa[1]=Qs),ho=fa.sample_alpha,ho!==kn.sample_alpha&&(ho?Kr.enable(32926):Kr.disable(32926),kn.sample_alpha=ho),gs=fa.sample_enable,gs!==kn.sample_enable&&(gs?Kr.enable(32928):Kr.disable(32928),kn.sample_enable=gs),Vo=Qa[0],Do=Qa[1],(Vo!==vn[0]||Do!==vn[1])&&(Kr.sampleCoverage(Vo,Do),vn[0]=Vo,vn[1]=Do),Lo=fa.stencil_enable,Lo!==kn.stencil_enable&&(Lo?Kr.enable(2960):Kr.disable(2960),kn.stencil_enable=Lo),xs=fa.stencil_mask,xs!==kn.stencil_mask&&(Kr.stencilMask(xs),kn.stencil_mask=xs),ks=da[0],Ea=da[1],Jn=da[2],(ks!==la[0]||Ea!==la[1]||Jn!==la[2])&&(Kr.stencilFunc(ks,Ea,Jn),la[0]=ks,la[1]=Ea,la[2]=Jn),Oo=vo[0],rl=vo[1],Gs=vo[2],bs=vo[3],(Oo!==Ts[0]||rl!==Ts[1]||Gs!==Ts[2]||bs!==Ts[3])&&(Kr.stencilOpSeparate(Oo,rl,Gs,bs),Ts[0]=Oo,Ts[1]=rl,Ts[2]=Gs,Ts[3]=bs),zs=ps[0],$o=ps[1],Ta=ps[2],os=ps[3],(zs!==co[0]||$o!==co[1]||Ta!==co[2]||os!==co[3])&&(Kr.stencilOpSeparate(zs,$o,Ta,os),co[0]=zs,co[1]=$o,co[2]=Ta,co[3]=os)}Kr.blendColor(0,0,0,0),Wi[0]=0,Wi[1]=0,Wi[2]=0,Wi[3]=0,Xi?Kr.enable(3042):Kr.disable(3042),kn.blend_enable=Xi,Kr.blendEquationSeparate(32774,32774),Ps[0]=32774,Ps[1]=32774,Kr.blendFuncSeparate(770,771,1,1),Sn[0]=770,Sn[1]=771,Sn[2]=1,Sn[3]=1,aa?Kr.enable(2884):Kr.disable(2884),kn.cull_enable=aa,Kr.cullFace(Mn),kn.cull_face=Mn,Un?Kr.enable(2929):Kr.disable(2929),kn.depth_enable=Un,Kr.depthFunc(Ga),kn.depth_func=Ga,Kr.depthMask(ma),kn.depth_mask=ma,Kr.depthRange(0,1),Ba[0]=0,Ba[1]=1,oa?Kr.enable(3024):Kr.disable(3024),kn.dither=oa,Kr.lineWidth(ka),kn.lineWidth=ka,so?Kr.enable(3089):Kr.disable(3089),kn.scissor_enable=so,oo=kn.profile,kn.profile=!1,Kr.useProgram(h.program);var _l,Ss,po,go,ss,qo,zo,io,Io,Da,vs,fs,cl,el,Hs,Ro,tl,Fs,hl,Fa,Ms,jo,Rs,Is,Bs,At,Vt,wr,mr,Fr,_i,Si,Ci;for(fo.setVAO(null),_l=p.location,Ss=$a[_l],Ss.buffer||Kr.enableVertexAttribArray(_l),(Ss.type!==d.dtype||Ss.size!==4||Ss.buffer!==d||Ss.normalized!==!1||Ss.offset!==0||Ss.stride!==0)&&(Kr.bindBuffer(34962,d.buffer),Kr.vertexAttribPointer(_l,4,d.dtype,!1,0,0),Ss.type=d.dtype,Ss.size=4,Ss.buffer=d,Ss.normalized=!1,Ss.offset=0,Ss.stride=0),po=b.location,go=$a[po],go.buffer||Kr.enableVertexAttribArray(po),(go.type!==_.dtype||go.size!==4||go.buffer!==_||go.normalized!==!1||go.offset!==0||go.stride!==0)&&(Kr.bindBuffer(34962,_.buffer),Kr.vertexAttribPointer(po,4,_.dtype,!1,0,0),go.type=_.dtype,go.size=4,go.buffer=_,go.normalized=!1,go.offset=0,go.stride=0),ss=k.location,qo=$a[ss],qo.buffer||Kr.enableVertexAttribArray(ss),(qo.type!==v.dtype||qo.size!==4||qo.buffer!==v||qo.normalized!==!1||qo.offset!==0||qo.stride!==0)&&(Kr.bindBuffer(34962,v.buffer),Kr.vertexAttribPointer(ss,4,v.dtype,!1,0,0),qo.type=v.dtype,qo.size=4,qo.buffer=v,qo.normalized=!1,qo.offset=0,qo.stride=0),zo=A.location,io=$a[zo],io.buffer||Kr.enableVertexAttribArray(zo),(io.type!==E.dtype||io.size!==4||io.buffer!==E||io.normalized!==!1||io.offset!==0||io.stride!==0)&&(Kr.bindBuffer(34962,E.buffer),Kr.vertexAttribPointer(zo,4,E.dtype,!1,0,0),io.type=E.dtype,io.size=4,io.buffer=E,io.normalized=!1,io.offset=0,io.stride=0),Io=x.location,Da=$a[Io],Da.buffer||Kr.enableVertexAttribArray(Io),(Da.type!==L.dtype||Da.size!==4||Da.buffer!==L||Da.normalized!==!1||Da.offset!==0||Da.stride!==0)&&(Kr.bindBuffer(34962,L.buffer),Kr.vertexAttribPointer(Io,4,L.dtype,!1,0,0),Da.type=L.dtype,Da.size=4,Da.buffer=L,Da.normalized=!1,Da.offset=0,Da.stride=0),vs=M.location,fs=$a[vs],fs.buffer||Kr.enableVertexAttribArray(vs),(fs.type!==C.dtype||fs.size!==4||fs.buffer!==C||fs.normalized!==!1||fs.offset!==0||fs.stride!==0)&&(Kr.bindBuffer(34962,C.buffer),Kr.vertexAttribPointer(vs,4,C.dtype,!1,0,0),fs.type=C.dtype,fs.size=4,fs.buffer=C,fs.normalized=!1,fs.offset=0,fs.stride=0),cl=P.location,el=$a[cl],el.buffer||Kr.enableVertexAttribArray(cl),(el.type!==m.dtype||el.size!==4||el.buffer!==m||el.normalized!==!1||el.offset!==0||el.stride!==0)&&(Kr.bindBuffer(34962,m.buffer),Kr.vertexAttribPointer(cl,4,m.dtype,!1,0,0),el.type=m.dtype,el.size=4,el.buffer=m,el.normalized=!1,el.offset=0,el.stride=0),Hs=B.location,Ro=$a[Hs],Ro.buffer||Kr.enableVertexAttribArray(Hs),(Ro.type!==T.dtype||Ro.size!==4||Ro.buffer!==T||Ro.normalized!==!1||Ro.offset!==0||Ro.stride!==0)&&(Kr.bindBuffer(34962,T.buffer),Kr.vertexAttribPointer(Hs,4,T.dtype,!1,0,0),Ro.type=T.dtype,Ro.size=4,Ro.buffer=T,Ro.normalized=!1,Ro.offset=0,Ro.stride=0),tl=U.location,Fs=$a[tl],Fs.buffer||Kr.enableVertexAttribArray(tl),(Fs.type!==F.dtype||Fs.size!==4||Fs.buffer!==F||Fs.normalized!==!1||Fs.offset!==0||Fs.stride!==0)&&(Kr.bindBuffer(34962,F.buffer),Kr.vertexAttribPointer(tl,4,F.dtype,!1,0,0),Fs.type=F.dtype,Fs.size=4,Fs.buffer=F,Fs.normalized=!1,Fs.offset=0,Fs.stride=0),hl=j.location,Fa=$a[hl],Fa.buffer||Kr.enableVertexAttribArray(hl),(Fa.type!==G.dtype||Fa.size!==4||Fa.buffer!==G||Fa.normalized!==!1||Fa.offset!==0||Fa.stride!==0)&&(Kr.bindBuffer(34962,G.buffer),Kr.vertexAttribPointer(hl,4,G.dtype,!1,0,0),Fa.type=G.dtype,Fa.size=4,Fa.buffer=G,Fa.normalized=!1,Fa.offset=0,Fa.stride=0),Ms=N.location,jo=$a[Ms],jo.buffer||Kr.enableVertexAttribArray(Ms),(jo.type!==W.dtype||jo.size!==4||jo.buffer!==W||jo.normalized!==!1||jo.offset!==0||jo.stride!==0)&&(Kr.bindBuffer(34962,W.buffer),Kr.vertexAttribPointer(Ms,4,W.dtype,!1,0,0),jo.type=W.dtype,jo.size=4,jo.buffer=W,jo.normalized=!1,jo.offset=0,jo.stride=0),Rs=re.location,Is=$a[Rs],Is.buffer||Kr.enableVertexAttribArray(Rs),(Is.type!==H.dtype||Is.size!==4||Is.buffer!==H||Is.normalized!==!1||Is.offset!==0||Is.stride!==0)&&(Kr.bindBuffer(34962,H.buffer),Kr.vertexAttribPointer(Rs,4,H.dtype,!1,0,0),Is.type=H.dtype,Is.size=4,Is.buffer=H,Is.normalized=!1,Is.offset=0,Is.stride=0),Bs=be.location,At=$a[Bs],At.buffer||Kr.enableVertexAttribArray(Bs),(At.type!==ae.dtype||At.size!==4||At.buffer!==ae||At.normalized!==!1||At.offset!==0||At.stride!==0)&&(Kr.bindBuffer(34962,ae.buffer),Kr.vertexAttribPointer(Bs,4,ae.dtype,!1,0,0),At.type=ae.dtype,At.size=4,At.buffer=ae,At.normalized=!1,At.offset=0,At.stride=0),Vt=Ce.location,wr=$a[Vt],wr.buffer||Kr.enableVertexAttribArray(Vt),(wr.type!==ze.dtype||wr.size!==4||wr.buffer!==ze||wr.normalized!==!1||wr.offset!==0||wr.stride!==0)&&(Kr.bindBuffer(34962,ze.buffer),Kr.vertexAttribPointer(Vt,4,ze.dtype,!1,0,0),wr.type=ze.dtype,wr.size=4,wr.buffer=ze,wr.normalized=!1,wr.offset=0,wr.stride=0),mr=te.location,Fr=$a[mr],Fr.buffer||Kr.enableVertexAttribArray(mr),(Fr.type!==de.dtype||Fr.size!==4||Fr.buffer!==de||Fr.normalized!==!1||Fr.offset!==0||Fr.stride!==0)&&(Kr.bindBuffer(34962,de.buffer),Kr.vertexAttribPointer(mr,4,de.dtype,!1,0,0),Fr.type=de.dtype,Fr.size=4,Fr.buffer=de,Fr.normalized=!1,Fr.offset=0,Fr.stride=0),_i=Ee.location,Si=$a[_i],Si.buffer||Kr.enableVertexAttribArray(_i),(Si.type!==ke.dtype||Si.size!==4||Si.buffer!==ke||Si.normalized!==!1||Si.offset!==0||Si.stride!==0)&&(Kr.bindBuffer(34962,ke.buffer),Kr.vertexAttribPointer(_i,4,ke.dtype,!1,0,0),Si.type=ke.dtype,Si.size=4,Si.buffer=ke,Si.normalized=!1,Si.offset=0,Si.stride=0),Kr.uniform1i(Tt.location,vt.bind()),Ci=Aa.elements,Ci?Kr.bindBuffer(34963,Ci.buffer.buffer):fo.currentVAO&&(Ci=ys.getElements(fo.currentVAO.elements),Ci&&Kr.bindBuffer(34963,Ci.buffer.buffer)),za=0;za>1)):Kr.drawArrays(1,Tr,Ir),Ia.viewportWidth=ya,Ia.viewportHeight=ia,mt.unbind())}vt.unbind(),kn.dirty=!0,fo.setVAO(null),kn.profile=oo}}}});var EVe=Ae((Obr,MVe)=>{"use strict";var nWt=_Ve(),aWt=bVe(),oWt=TVe(),sWt=SVe();MVe.exports={"453a70fefa48db31713162aeb1ac438cb8579f54504f3b23acf32128df3dfd45":nWt,"30680f8f6712ef1af5cf7547e0af35b036fb300c67b07967cf448492ff4de4d0":aWt,a3970baf1d8cac9305ee830c7026550387343d4dde2353dd86a4d082c97d3470:oWt,"3fd666968f3ce90d1c048b7a9aab515f3ce387a5401a10f8b66121c9469d1c0d":sWt}});var LVe=Ae((qbr,CVe)=>{"use strict";var kVe=JK(),lWt=EVe();Object.assign(kVe.reglPrecompiled,lWt);CVe.exports=kVe});var IVe=Ae((Nbr,zVe)=>{"use strict";var PVe=yVe();PVe.plot=LVe();zVe.exports=PVe});var $K=Ae((Ubr,OVe)=>{"use strict";var DVe=Su().extendFlat,uWt=Gf(),RVe=gc(),fWt=nc(),{hovertemplateAttrs:FVe,templatefallbackAttrs:BVe}=Ff(),cWt=zc().attributes,hWt=DVe({editType:"calc"},fWt("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:FVe({editType:"plot",arrayOk:!1},{keys:["count","probability"]}),hovertemplatefallback:BVe({editType:"plot"})});OVe.exports={domain:cWt({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:DVe({},uWt.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:FVe({editType:"plot",arrayOk:!1},{keys:["count","probability","category","categorycount","colorcount","bandcolorcount"]}),hovertemplatefallback:BVe({editType:"plot"}),arrangement:{valType:"enumerated",values:["perpendicular","freeform","fixed"],dflt:"perpendicular",editType:"plot"},bundlecolors:{valType:"boolean",dflt:!0,editType:"plot"},sortpaths:{valType:"enumerated",values:["forward","backward"],dflt:"forward",editType:"plot"},labelfont:RVe({editType:"calc"}),tickfont:RVe({autoShadowDflt:!0,editType:"calc"}),dimensions:{_isLinkedToArray:"dimension",label:{valType:"string",editType:"calc"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},values:{valType:"data_array",dflt:[],editType:"calc"},displayindex:{valType:"integer",editType:"calc"},editType:"calc",visible:{valType:"boolean",dflt:!0,editType:"calc"}},line:hWt,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc"},customdata:void 0,hoverlabel:void 0,ids:void 0,legend:void 0,legendgroup:void 0,legendrank:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}});var UVe=Ae((Vbr,NVe)=>{"use strict";var wS=ei(),dWt=yp().hasColorscale,pWt=rd(),vWt=zc().defaults,mWt=Jd(),qVe=$K(),yWt=O8(),gWt=mp().isTypedArraySpec;function _Wt(e,t,r,n,i){i("line.shape"),i("line.hovertemplate"),i("line.hovertemplatefallback");var a=i("line.color",n.colorway[0]);if(dWt(e,"line")&&wS.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),pWt(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function xWt(e,t){function r(l,f){return wS.coerce(e,t,qVe.dimensions,l,f)}var n=r("values"),i=r("visible");if(n&&n.length||(i=t.visible=!1),i){r("label"),r("displayindex",t._index);var a=e.categoryarray,o=wS.isArrayOrTypedArray(a)&&a.length>0||gWt(a),s;o&&(s="array");var u=r("categoryorder",s);u==="array"?(r("categoryarray"),r("ticktext")):(delete e.categoryarray,delete e.ticktext),!o&&u==="array"&&(t.categoryorder="trace")}}NVe.exports=function(t,r,n,i){function a(l,f){return wS.coerce(t,r,qVe,l,f)}var o=mWt(t,r,{name:"dimensions",handleItemDefaults:xWt}),s=_Wt(t,r,n,i,a);vWt(r,i,a),(!Array.isArray(o)||!o.length)&&(r.visible=!1),yWt(r,o,"values",s),a("hoveron"),a("hovertemplate"),a("hovertemplatefallback"),a("arrangement"),a("bundlecolors"),a("sortpaths"),a("counts");var u=i.font;wS.coerceFont(a,"labelfont",u,{overrideDflt:{size:Math.round(u.size)}}),wS.coerceFont(a,"tickfont",u,{autoShadowDflt:!0,overrideDflt:{size:Math.round(u.size/1.2)}})}});var GVe=Ae((Gbr,VVe)=>{"use strict";var bWt=Jy().wrap,wWt=yp().hasColorscale,TWt=gp(),AWt=sq(),SWt=Mu(),Dk=ei(),MWt=ku();VVe.exports=function(t,r){var n=Dk.filterVisible(r.dimensions);if(n.length===0)return[];var i=n.map(function(m){var P;if(m.categoryorder==="trace")P=null;else if(m.categoryorder==="array")P=m.categoryarray;else{P=AWt(m.values);for(var T=!0,B=0;B=e.length||t[e[r]]!==void 0)return!1;t[e[r]]=!0}return!0}});var $Ve=Ae((Hbr,JVe)=>{"use strict";var Uf=Jl(),BWt=(D2(),ob(R2)).interpolateNumber,OWt=Hz(),Ok=Xc(),gx=ei(),Fk=gx.strTranslate,HVe=Mu(),QK=cd(),qWt=Xf();function NWt(e,t,r,n){var i=t._context.staticPlot,a=e.map(tjt.bind(0,t,r)),o=n.selectAll("g.parcatslayer").data([null]);o.enter().append("g").attr("class","parcatslayer").style("pointer-events",i?"none":"all");var s=o.selectAll("g.trace.parcats").data(a,u1),u=s.enter().append("g").attr("class","trace parcats");s.attr("transform",function(k){return Fk(k.x,k.y)}),u.append("g").attr("class","paths");var l=s.select("g.paths"),f=l.selectAll("path.path").data(function(k){return k.paths},u1);f.attr("fill",function(k){return k.model.color});var c=f.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",function(k){return k.model.color}).attr("fill-opacity",0);rJ(c),f.attr("d",function(k){return k.svgD}),c.empty()||f.sort(eJ),f.exit().remove(),f.on("mouseover",UWt).on("mouseout",VWt).on("click",GWt),u.append("g").attr("class","dimensions");var h=s.select("g.dimensions"),d=h.selectAll("g.dimension").data(function(k){return k.dimensions},u1);d.enter().append("g").attr("class","dimension"),d.attr("transform",function(k){return Fk(k.x,0)}),d.exit().remove();var p=d.selectAll("g.category").data(function(k){return k.categories},u1),_=p.enter().append("g").attr("class","category");p.attr("transform",function(k){return Fk(0,k.y)}),_.append("rect").attr("class","catrect").attr("pointer-events","none"),p.select("rect.catrect").attr("fill","none").attr("width",function(k){return k.width}).attr("height",function(k){return k.height}),jVe(_);var b=p.selectAll("rect.bandrect").data(function(k){return k.bands},u1);b.each(function(){gx.raiseToTop(this)}),b.attr("fill",function(k){return k.color});var v=b.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",function(k){return k.color}).attr("fill-opacity",0);b.attr("fill",function(k){return k.color}).attr("width",function(k){return k.width}).attr("height",function(k){return k.height}).attr("y",function(k){return k.y}).attr("cursor",function(k){return k.parcatsViewModel.arrangement==="fixed"?"default":k.parcatsViewModel.arrangement==="perpendicular"?"ns-resize":"move"}),nJ(v),b.exit().remove(),_.append("text").attr("class","catlabel").attr("pointer-events","none"),p.select("text.catlabel").attr("text-anchor",function(k){return Bk(k)?"start":"end"}).attr("alignment-baseline","middle").style("fill","rgb(0, 0, 0)").attr("x",function(k){return Bk(k)?k.width+5:-5}).attr("y",function(k){return k.height/2}).text(function(k){return k.model.categoryLabel}).each(function(k){HVe.font(Uf.select(this),k.parcatsViewModel.categorylabelfont),qWt.convertToTspans(Uf.select(this),t)}),_.append("text").attr("class","dimlabel"),p.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",function(k){return k.parcatsViewModel.arrangement==="fixed"?"default":"ew-resize"}).attr("x",function(k){return k.width/2}).attr("y",-5).text(function(k,E){return E===0?k.parcatsViewModel.model.dimensions[k.model.dimensionInd].dimensionLabel:null}).each(function(k){HVe.font(Uf.select(this),k.parcatsViewModel.labelfont)}),p.selectAll("rect.bandrect").on("mouseover",KWt).on("mouseout",JWt),p.exit().remove(),d.call(Uf.behavior.drag().origin(function(k){return{x:k.x,y:0}}).on("dragstart",$Wt).on("drag",QWt).on("dragend",ejt)),s.each(function(k){k.traceSelection=Uf.select(this),k.pathSelection=Uf.select(this).selectAll("g.paths").selectAll("path.path"),k.dimensionSelection=Uf.select(this).selectAll("g.dimensions").selectAll("g.dimension")}),s.exit().remove()}JVe.exports=function(e,t,r,n){NWt(r,e,n,t)};function u1(e){return e.key}function Bk(e){var t=e.parcatsViewModel.dimensions.length,r=e.parcatsViewModel.dimensions[t-1].model.dimensionInd;return e.model.dimensionInd===r}function eJ(e,t){return e.model.rawColor>t.model.rawColor?1:e.model.rawColor"),x=Uf.mouse(i)[0];Ok.loneHover({trace:a,x:p-s.left+u.left,y:_-s.top+u.top,text:L,color:e.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:b,idealAlign:x1&&l.displayInd===u.dimensions.length-1?(h=o.left,d="left"):(h=o.left+o.width,d="right");var p=s.model.count,_=s.model.categoryLabel,b=p/s.parcatsViewModel.model.count,v={countLabel:p,categoryLabel:_,probabilityLabel:b.toFixed(3)},k=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&k.push(["Count:",v.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&k.push(["P("+v.categoryLabel+"):",v.probabilityLabel].join(" "));var E=k.join("
");return{trace:f,x:n*(h-t.left),y:i*(c-t.top),text:E,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:d,hovertemplate:f.hovertemplate,hovertemplateLabels:v,eventData:[{data:f._input,fullData:f,count:p,category:_,probability:b}]}}function ZWt(e,t,r){var n=[];return Uf.select(r.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each(function(){var i=this;n.push(XVe(e,t,i))}),n}function YWt(e,t,r){e._fullLayout._calcInverseTransform(e);var n=e._fullLayout._invScaleX,i=e._fullLayout._invScaleY,a=r.getBoundingClientRect(),o=Uf.select(r).datum(),s=o.categoryViewModel,u=s.parcatsViewModel,l=u.model.dimensions[s.model.dimensionInd],f=u.trace,c=a.y+a.height/2,h,d;u.dimensions.length>1&&l.displayInd===u.dimensions.length-1?(h=a.left,d="left"):(h=a.left+a.width,d="right");var p=s.model.categoryLabel,_=o.parcatsViewModel.model.count,b=0;o.categoryViewModel.bands.forEach(function(P){P.color===o.color&&(b+=P.count)});var v=s.model.count,k=0;u.pathSelection.each(function(P){P.model.color===o.color&&(k+=P.model.count)});var E=b/_,A=b/k,L=b/v,x={countLabel:b,categoryLabel:p,probabilityLabel:E.toFixed(3)},C=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&C.push(["Count:",x.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&(C.push("P(color \u2229 "+p+"): "+x.probabilityLabel),C.push("P("+p+" | color): "+A.toFixed(3)),C.push("P(color | "+p+"): "+L.toFixed(3)));var M=C.join("
"),m=QK.mostReadable(o.color,["black","white"]);return{trace:f,x:n*(h-t.left),y:i*(c-t.top),text:M,color:o.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:m,fontSize:10,idealAlign:d,hovertemplate:f.hovertemplate,hovertemplateLabels:x,eventData:[{data:f._input,fullData:f,category:p,count:_,probability:E,categorycount:v,colorcount:k,bandcolorcount:b}]}}function KWt(e){if(!e.parcatsViewModel.dragDimension&&e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var t=Uf.mouse(this)[1];if(t<-1)return;var r=e.parcatsViewModel.graphDiv,n=r._fullLayout,i=n._paperdiv.node().getBoundingClientRect(),a=e.parcatsViewModel.hoveron,o=this;if(a==="color"?(XWt(o),oJ(o,"plotly_hover",Uf.event)):(jWt(o),aJ(o,"plotly_hover",Uf.event)),e.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var s;a==="category"?s=XVe(r,i,o):a==="color"?s=YWt(r,i,o):a==="dimension"&&(s=ZWt(r,i,o)),s&&Ok.loneHover(s,{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:r})}}}function JWt(e){var t=e.parcatsViewModel;if(!t.dragDimension&&(rJ(t.pathSelection),jVe(t.dimensionSelection.selectAll("g.category")),nJ(t.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),Ok.loneUnhover(t.graphDiv._fullLayout._hoverlayer.node()),t.pathSelection.sort(eJ),t.hoverinfoItems.indexOf("skip")===-1)){var r=e.parcatsViewModel.hoveron,n=this;r==="color"?oJ(n,"plotly_unhover",Uf.event):aJ(n,"plotly_unhover",Uf.event)}}function $Wt(e){e.parcatsViewModel.arrangement!=="fixed"&&(e.dragDimensionDisplayInd=e.model.displayInd,e.initialDragDimensionDisplayInds=e.parcatsViewModel.model.dimensions.map(function(t){return t.displayInd}),e.dragHasMoved=!1,e.dragCategoryDisplayInd=null,Uf.select(this).selectAll("g.category").select("rect.catrect").each(function(t){var r=Uf.mouse(this)[0],n=Uf.mouse(this)[1];-2<=r&&r<=t.width+2&&-2<=n&&n<=t.height+2&&(e.dragCategoryDisplayInd=t.model.displayInd,e.initialDragCategoryDisplayInds=e.model.categories.map(function(i){return i.displayInd}),t.model.dragY=t.y,gx.raiseToTop(this.parentNode),Uf.select(this.parentNode).selectAll("rect.bandrect").each(function(i){i.yf.y+f.height/2&&(a.model.displayInd=f.model.displayInd,f.model.displayInd=s),e.dragCategoryDisplayInd=a.model.displayInd}if(e.dragCategoryDisplayInd===null||e.parcatsViewModel.arrangement==="freeform"){i.model.dragX=Uf.event.x;var c=e.parcatsViewModel.dimensions[r],h=e.parcatsViewModel.dimensions[n];c!==void 0&&i.model.dragXh.x&&(i.model.displayInd=h.model.displayInd,h.model.displayInd=e.dragDimensionDisplayInd),e.dragDimensionDisplayInd=i.model.displayInd}lJ(e.parcatsViewModel),sJ(e.parcatsViewModel),KVe(e.parcatsViewModel),YVe(e.parcatsViewModel)}}function ejt(e){if(e.parcatsViewModel.arrangement!=="fixed"&&e.dragDimensionDisplayInd!==null){Uf.select(this).selectAll("text").attr("font-weight","normal");var t={},r=ZVe(e.parcatsViewModel),n=e.parcatsViewModel.model.dimensions.map(function(h){return h.displayInd}),i=e.initialDragDimensionDisplayInds.some(function(h,d){return h!==n[d]});i&&n.forEach(function(h,d){var p=e.parcatsViewModel.model.dimensions[d].containerInd;t["dimensions["+p+"].displayindex"]=h});var a=!1;if(e.dragCategoryDisplayInd!==null){var o=e.model.categories.map(function(h){return h.displayInd});if(a=e.initialDragCategoryDisplayInds.some(function(h,d){return h!==o[d]}),a){var s=e.model.categories.slice().sort(function(h,d){return h.displayInd-d.displayInd}),u=s.map(function(h){return h.categoryValue}),l=s.map(function(h){return h.categoryLabel});t["dimensions["+e.model.containerInd+"].categoryarray"]=[u],t["dimensions["+e.model.containerInd+"].ticktext"]=[l],t["dimensions["+e.model.containerInd+"].categoryorder"]="array"}}if(e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1&&!e.dragHasMoved&&e.potentialClickBand&&(e.parcatsViewModel.hoveron==="color"?oJ(e.potentialClickBand,"plotly_click",Uf.event.sourceEvent):aJ(e.potentialClickBand,"plotly_click",Uf.event.sourceEvent)),e.model.dragX=null,e.dragCategoryDisplayInd!==null){var f=e.parcatsViewModel.dimensions[e.dragDimensionDisplayInd].categories[e.dragCategoryDisplayInd];f.model.dragY=null,e.dragCategoryDisplayInd=null}e.dragDimensionDisplayInd=null,e.parcatsViewModel.dragDimension=null,e.dragHasMoved=null,e.potentialClickBand=null,lJ(e.parcatsViewModel),sJ(e.parcatsViewModel);var c=Uf.transition().duration(300).ease("cubic-in-out");c.each(function(){KVe(e.parcatsViewModel,!0),YVe(e.parcatsViewModel,!0)}).each("end",function(){(i||a)&&OWt.restyle(e.parcatsViewModel.graphDiv,t,[r])})}}function ZVe(e){for(var t,r=e.graphDiv._fullData,n=0;n=0;u--)l+="C"+o[u]+","+(t[u+1]+n)+" "+a[u]+","+(t[u]+n)+" "+(e[u]+r[u])+","+(t[u]+n),l+="l-"+r[u]+",0 ";return l+="Z",l}function sJ(e){var t=e.dimensions,r=e.model,n=t.map(function(F){return F.categories.map(function(U){return U.y})}),i=e.model.dimensions.map(function(F){return F.categories.map(function(U){return U.displayInd})}),a=e.model.dimensions.map(function(F){return F.displayInd}),o=e.dimensions.map(function(F){return F.model.dimensionInd}),s=t.map(function(F){return F.x}),u=t.map(function(F){return F.width}),l=[];for(var f in r.paths)r.paths.hasOwnProperty(f)&&l.push(r.paths[f]);function c(F){var U=F.categoryInds.map(function(j,W){return i[W][j]}),G=o.map(function(j){return U[j]});return G}l.sort(function(F,U){var G=c(F),j=c(U);return e.sortpaths==="backward"&&(G.reverse(),j.reverse()),G.push(F.valueInds[0]),j.push(U.valueInds[0]),e.bundlecolors&&(G.unshift(F.rawColor),j.unshift(U.rawColor)),Gj?1:0});for(var h=new Array(l.length),d=t[0].model.count,p=t[0].categories.map(function(F){return F.height}).reduce(function(F,U){return F+U}),_=0;_0?v=p*(b.count/d):v=0;for(var k=new Array(n.length),E=0;E1?o=(e.width-2*r-n)/(i-1):o=0,s=r,u=s+o*a;var l=[],f=e.model.maxCats,c=t.categories.length,h=8,d=t.count,p=e.height-h*(f-1),_,b,v,k,E,A=(f-c)*h/2,L=t.categories.map(function(x){return{displayInd:x.displayInd,categoryInd:x.categoryInd}});for(L.sort(function(x,C){return x.displayInd-C.displayInd}),E=0;E0?_=b.count/d*p:_=0,v={key:b.valueInds[0],model:b,width:n,height:_,y:b.dragY!==null?b.dragY:A,bands:[],parcatsViewModel:e},A=A+_+h,l.push(v);return{key:t.dimensionInd,x:t.dragX!==null?t.dragX:u,y:0,width:n,model:t,categories:l,parcatsViewModel:e,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}});var uJ=Ae((Wbr,QVe)=>{"use strict";var ijt=$Ve();QVe.exports=function(t,r,n,i){var a=t._fullLayout,o=a._paper,s=a._size;ijt(t,o,r,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},n,i)}});var tGe=Ae(tB=>{"use strict";var njt=Rd().getModuleCalcData,ajt=uJ(),eGe="parcats";tB.name=eGe;tB.plot=function(e,t,r,n){var i=njt(e.calcdata,eGe);if(i.length){var a=i[0];ajt(e,a,r,n)}};tB.clean=function(e,t,r,n){var i=n._has&&n._has("parcats"),a=t._has&&t._has("parcats");i&&!a&&n._paperdiv.selectAll(".parcats").remove()}});var iGe=Ae((Xbr,rGe)=>{"use strict";rGe.exports={attributes:$K(),supplyDefaults:UVe(),calc:GVe(),plot:uJ(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:tGe(),categories:["noOpacity"],meta:{}}});var aGe=Ae((Zbr,nGe)=>{"use strict";nGe.exports=iGe()});var f1=Ae((Ybr,hGe)=>{"use strict";var ojt=Z1(),oGe="1.13.4",fGe='\xA9 OpenStreetMap contributors',sGe=['\xA9 Carto',fGe].join(" "),lGe=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under ODbL'].join(" "),sjt=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under CC BY SA'].join(" "),cGe={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:fGe,tiles:["https://a.tile.openstreetmap.org/{z}/{x}/{y}.png","https://b.tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:sGe,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:sGe,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:lGe,tiles:["https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:lGe,tiles:["https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:sjt,tiles:["https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"}},uGe=ojt(cGe);hGe.exports={requiredVersion:oGe,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:cGe,styleValuesNonMapbox:uGe,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install @plotly/mapbox-gl@"+oGe+"."].join(` `),noAccessTokenErrorMsg:["Missing Mapbox access token.","Mapbox trace type require a Mapbox access token to be registered.","For example:"," Plotly.newPlot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });","More info here: https://www.mapbox.com/help/define-access-token/"].join(` -`),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",lGe.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join(` +`),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",uGe.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join(` `),multipleTokensErrorMsg:["Set multiple mapbox access token across different mapbox subplot,","using first token found as mapbox-gl does not allow multipleaccess tokens on the same page."].join(` -`),mapOnErrorMsg:"Mapbox error.",mapboxLogo:{path0:"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z",path1:"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z",path2:"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z",polygon:"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34"},styleRules:{map:"overflow:hidden;position:relative;","missing-css":"display:none;",canary:"background-color:salmon;","ctrl-bottom-left":"position: absolute; pointer-events: none; z-index: 2; bottom: 0; left: 0;","ctrl-bottom-right":"position: absolute; pointer-events: none; z-index: 2; right: 0; bottom: 0;",ctrl:"clear: both; pointer-events: auto; transform: translate(0, 0);","ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner":"display: none;","ctrl-attrib.mapboxgl-compact:hover .mapboxgl-ctrl-attrib-inner":"display: block; margin-top:2px","ctrl-attrib.mapboxgl-compact:hover":"padding: 2px 24px 2px 4px; visibility: visible; margin-top: 6px;","ctrl-attrib.mapboxgl-compact::after":`content: ""; cursor: pointer; position: absolute; background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"%3E %3Cpath fill="%23333333" fill-rule="evenodd" d="M4,10a6,6 0 1,0 12,0a6,6 0 1,0 -12,0 M9,7a1,1 0 1,0 2,0a1,1 0 1,0 -2,0 M9,10a1,1 0 1,1 2,0l0,3a1,1 0 1,1 -2,0"/%3E %3C/svg%3E'); background-color: rgba(255, 255, 255, 0.5); width: 24px; height: 24px; box-sizing: border-box; border-radius: 12px;`,"ctrl-attrib.mapboxgl-compact":"min-height: 20px; padding: 0; margin: 10px; position: relative; background-color: #fff; border-radius: 3px 12px 12px 3px;","ctrl-bottom-right > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":`display:block; width: 21px; height: 21px; background-image: url('data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E')`}}});var Nk=Ae((Kbr,vGe)=>{"use strict";var hGe=ei(),dGe=jl().defaultLine,ljt=zc().attributes,ujt=gc(),fjt=Zc().textposition,cjt=Sc().overrideAll,hjt=Lf().templatedArray,uJ=f1(),pGe=ujt({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});pGe.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var djt=vGe.exports=cjt({_arrayAttrRegexps:[hGe.counterRegex("mapbox",".layers",!0)],domain:ljt({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:uJ.styleValuesMapbox.concat(uJ.styleValuesNonMapbox),dflt:uJ.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:hjt("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:dGe},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:dGe}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:pGe,textposition:hGe.extendFlat({},fjt,{arrayOk:!1})}})},"plot","from-root");djt.uirevision={valType:"any",editType:"none"}});var tB=Ae((Jbr,_Ge)=>{"use strict";var{hovertemplateAttrs:pjt,texttemplateAttrs:vjt,templatefallbackAttrs:mGe}=Ff(),mjt=km(),Uk=H2(),wS=Zc(),yGe=Nk(),yjt=Gf(),gjt=nc(),tw=Su().extendFlat,_jt=Sc().overrideAll,xjt=Nk(),gGe=Uk.line,TS=Uk.marker;_Ge.exports=_jt({lon:Uk.lon,lat:Uk.lat,cluster:{enabled:{valType:"boolean"},maxzoom:tw({},xjt.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:tw({},TS.opacity,{dflt:1})},mode:tw({},wS.mode,{dflt:"markers"}),text:tw({},wS.text,{}),texttemplate:vjt({editType:"plot"},{keys:["lat","lon","text"]}),texttemplatefallback:mGe({editType:"plot"}),hovertext:tw({},wS.hovertext,{}),line:{color:gGe.color,width:gGe.width},connectgaps:wS.connectgaps,marker:tw({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:TS.opacity,size:TS.size,sizeref:TS.sizeref,sizemin:TS.sizemin,sizemode:TS.sizemode},gjt("marker")),fill:Uk.fill,fillcolor:mjt(),textfont:yGe.layers.symbol.textfont,textposition:yGe.layers.symbol.textposition,below:{valType:"string"},selected:{marker:wS.selected.marker},unselected:{marker:wS.unselected.marker},hoverinfo:tw({},yjt.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:pjt(),hovertemplatefallback:mGe()},"calc","nested")});var fJ=Ae(($br,xGe)=>{"use strict";var bjt=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];xGe.exports={isSupportedFont:function(e){return bjt.indexOf(e)!==-1}}});var TGe=Ae((Qbr,wGe)=>{"use strict";var Vk=ei(),cJ=lc(),wjt=$v(),Tjt=I0(),Ajt=R0(),Sjt=zm(),bGe=tB(),Mjt=fJ().isSupportedFont;wGe.exports=function(t,r,n,i){function a(v,k){return Vk.coerce(t,r,bGe,v,k)}function o(v,k){return Vk.coerce2(t,r,bGe,v,k)}var s=Ejt(t,r,a);if(!s){r.visible=!1;return}if(a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),a("below"),cJ.hasMarkers(r)){wjt(t,r,n,i,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var u=r.marker;u.symbol!=="circle"&&(Vk.isArrayOrTypedArray(u.size)&&(u.size=u.size[0]),Vk.isArrayOrTypedArray(u.color)&&(u.color=u.color[0]))}cJ.hasLines(r)&&(Tjt(t,r,n,i,a,{noDash:!0}),a("connectgaps"));var l=o("cluster.maxzoom"),f=o("cluster.step"),c=o("cluster.color",r.marker&&r.marker.color||n),h=o("cluster.size"),d=o("cluster.opacity"),p=l!==!1||f!==!1||c!==!1||h!==!1||d!==!1,_=a("cluster.enabled",p);if(_||cJ.hasText(r)){var b=i.font.family;Ajt(t,r,i,a,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:Mjt(b)?b:"Open Sans Regular",weight:i.font.weight,style:i.font.style,size:i.font.size,color:i.font.color}})}a("fill"),r.fill!=="none"&&Sjt(t,r,n,a),Vk.coerceSelectionMarkerOpacity(r,a)};function Ejt(e,t,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return t._length=a,a}});var hJ=Ae((e2r,SGe)=>{"use strict";var AGe=wu();SGe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=AGe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=AGe.tickText(o,o.c2l(s[1]),!0).text,i}});var dJ=Ae((t2r,EGe)=>{"use strict";var MGe=ei();EGe.exports=function(t,r){var n=t.split(" "),i=n[0],a=n[1],o=MGe.isArrayOrTypedArray(r)?MGe.mean(r):r,s=.5+o/100,u=1.5+o/100,l=["",""],f=[0,0];switch(i){case"top":l[0]="top",f[1]=-u;break;case"bottom":l[0]="bottom",f[1]=u;break}switch(a){case"left":l[1]="right",f[0]=-s;break;case"right":l[1]="left",f[0]=s;break}var c;return l[0]&&l[1]?c=l.join("-"):l[0]?c=l[0]:l[1]?c=l[1]:c="center",{anchor:c,offset:f}}});var IGe=Ae((r2r,zGe)=>{"use strict";var LGe=ku(),sp=ei(),kjt=rf().BADNUM,iB=tx(),kGe=_c(),Cjt=Mu(),Ljt=E3(),nB=lc(),Pjt=fJ().isSupportedFont,zjt=dJ(),Ijt=iv().appendArrayPointValue,Rjt=Xf().NEWLINES,Djt=Xf().BR_TAG_ALL;zGe.exports=function(t,r){var n=r[0].trace,i=n.visible===!0&&n._length!==0,a=n.fill!=="none",o=nB.hasLines(n),s=nB.hasMarkers(n),u=nB.hasText(n),l=s&&n.marker.symbol==="circle",f=s&&n.marker.symbol!=="circle",c=n.cluster&&n.cluster.enabled,h=rB("fill"),d=rB("line"),p=rB("circle"),_=rB("symbol"),b={fill:h,line:d,circle:p,symbol:_};if(!i)return b;var v;if((a||o)&&(v=iB.calcTraceToLineCoords(r)),a&&(h.geojson=iB.makePolygon(v),h.layout.visibility="visible",sp.extendFlat(h.paint,{"fill-color":n.fillcolor})),o&&(d.geojson=iB.makeLine(v),d.layout.visibility="visible",sp.extendFlat(d.paint,{"line-width":n.line.width,"line-color":n.line.color,"line-opacity":n.opacity})),l){var k=Fjt(r);p.geojson=k.geojson,p.layout.visibility="visible",c&&(p.filter=["!",["has","point_count"]],b.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":vJ(n.cluster.color,n.cluster.step),"circle-radius":vJ(n.cluster.size,n.cluster.step),"circle-opacity":vJ(n.cluster.opacity,n.cluster.step)}},b.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":CGe(n),"text-size":12}}),sp.extendFlat(p.paint,{"circle-color":k.mcc,"circle-radius":k.mrc,"circle-opacity":k.mo})}if(l&&c&&(p.filter=["!",["has","point_count"]]),(f||u)&&(_.geojson=Bjt(r,t),sp.extendFlat(_.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),f&&(sp.extendFlat(_.layout,{"icon-size":n.marker.size/10}),"angle"in n.marker&&n.marker.angle!=="auto"&&sp.extendFlat(_.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),_.layout["icon-allow-overlap"]=n.marker.allowoverlap,sp.extendFlat(_.paint,{"icon-opacity":n.opacity*n.marker.opacity,"icon-color":n.marker.color})),u)){var E=(n.marker||{}).size,A=zjt(n.textposition,E);sp.extendFlat(_.layout,{"text-size":n.textfont.size,"text-anchor":A.anchor,"text-offset":A.offset,"text-font":CGe(n)}),sp.extendFlat(_.paint,{"text-color":n.textfont.color,"text-opacity":n.opacity})}return b};function rB(e){return{type:e,geojson:iB.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function Fjt(e){var t=e[0].trace,r=t.marker,n=t.selectedpoints,i=sp.isArrayOrTypedArray(r.color),a=sp.isArrayOrTypedArray(r.size),o=sp.isArrayOrTypedArray(r.opacity),s;function u(E){return t.opacity*E}function l(E){return E/2}var f;i&&(kGe.hasColorscale(t,"marker")?f=kGe.makeColorScaleFuncFromTrace(r):f=sp.identity);var c;a&&(c=Ljt(t));var h;o&&(h=function(E){var A=LGe(E)?+sp.constrain(E,0,1):0;return u(A)});var d=[];for(s=0;s850?s+=" Black":i>750?s+=" Extra Bold":i>650?s+=" Bold":i>550?s+=" Semi Bold":i>450?s+=" Medium":i>350?s+=" Regular":i>250?s+=" Light":i>150?s+=" Extra Light":s+=" Thin"):a.slice(0,2).join(" ")==="Open Sans"?(s="Open Sans",i>750?s+=" Extrabold":i>650?s+=" Bold":i>550?s+=" Semibold":i>350?s+=" Regular":s+=" Light"):a.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(s="Klokantech Noto Sans",a[3]==="CJK"&&(s+=" CJK"),s+=i>500?" Bold":" Regular")),o&&(s+=" Italic"),s==="Open Sans Regular Italic"?s="Open Sans Italic":s==="Open Sans Regular Bold"?s="Open Sans Bold":s==="Open Sans Regular Bold Italic"?s="Open Sans Bold Italic":s==="Klokantech Noto Sans Regular Italic"&&(s="Klokantech Noto Sans Italic"),Pjt(s)||(s=r);var u=s.split(", ");return u}});var BGe=Ae((i2r,FGe)=>{"use strict";var Ojt=ei(),RGe=IGe(),AS=f1().traceLayerPrefix,rm={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function DGe(e,t,r,n){this.type="scattermapbox",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:AS+t+"-fill",line:AS+t+"-line",circle:AS+t+"-circle",symbol:AS+t+"-symbol",cluster:AS+t+"-cluster",clusterCount:AS+t+"-cluster-count"},this.below=null}var Gk=DGe.prototype;Gk.addSource=function(e,t,r){var n={type:"geojson",data:t.geojson};r&&r.enabled&&Ojt.extendFlat(n,{cluster:!0,clusterMaxZoom:r.maxzoom});var i=this.subplot.map.getSource(this.sourceIds[e]);i?i.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],n)};Gk.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};Gk.addLayer=function(e,t,r){var n={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(n.filter=t.filter);for(var i=this.layerIds[e],a,o=this.subplot.getMapLayers(),s=0;s=0;L--){var x=A[L];i.removeLayer(l.layerIds[x])}E||i.removeSource(l.sourceIds.circle)}function h(E){for(var A=rm.nonCluster,L=0;L=0;L--){var x=A[L];i.removeLayer(l.layerIds[x]),E||i.removeSource(l.sourceIds[x])}}function p(E){u?c(E):d(E)}function _(E){s?f(E):h(E)}function b(){for(var E=s?rm.cluster:rm.nonCluster,A=0;A=0;n--){var i=r[n];t.removeLayer(this.layerIds[i]),t.removeSource(this.sourceIds[i])}};FGe.exports=function(t,r){var n=r[0].trace,i=n.cluster&&n.cluster.enabled,a=n.visible!==!0,o=new DGe(t,n.uid,i,a),s=RGe(t.gd,r),u=o.below=t.belowLookup["trace-"+n.uid],l,f,c;if(i)for(o.addSource("circle",s.circle,n.cluster),l=0;l{"use strict";var qjt=Xc(),mJ=ei(),Njt=uT(),Ujt=mJ.fillText,Vjt=rf().BADNUM,Gjt=f1().traceLayerPrefix;function Hjt(e,t,r){var n=e.cd,i=n[0].trace,a=e.xa,o=e.ya,s=e.subplot,u=[],l=Gjt+i.uid+"-circle",f=i.cluster&&i.cluster.enabled;if(f){var c=s.map.queryRenderedFeatures(null,{layers:[l]});u=c.map(function(M){return M.id})}var h=t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360),d=h*360,p=t-d;function _(M){var m=M.lonlat;if(m[0]===Vjt||f&&u.indexOf(M.i+1)===-1)return 1/0;var P=mJ.modHalf(m[0],360),T=m[1],B=s.project([P,T]),F=B.x-a.c2p([p,T]),U=B.y-o.c2p([P,r]),G=Math.max(3,M.mrc||0);return Math.max(Math.sqrt(F*F+U*U)-G,1-3/G)}if(qjt.getClosest(n,_,e),e.index!==!1){var b=n[e.index],v=b.lonlat,k=[mJ.modHalf(v[0],360)+d,v[1]],E=a.c2p(k),A=o.c2p(k),L=b.mrc||1;e.x0=E-L,e.x1=E+L,e.y0=A-L,e.y1=A+L;var x={};x[i.subplot]={_subplot:s};var C=i._module.formatLabels(b,i,x);return e.lonLabel=C.lonLabel,e.latLabel=C.latLabel,e.color=Njt(i,b),e.extraText=OGe(i,b,n[0].t.labels),e.hovertemplate=i.hovertemplate,[e]}}function OGe(e,t,r){if(e.hovertemplate)return;var n=t.hi||e.hoverinfo,i=n.split("+"),a=i.indexOf("all")!==-1,o=i.indexOf("lon")!==-1,s=i.indexOf("lat")!==-1,u=t.lonlat,l=[];function f(c){return c+"\xB0"}return a||o&&s?l.push("("+f(u[1])+", "+f(u[0])+")"):o?l.push(r.lon+f(u[0])):s&&l.push(r.lat+f(u[1])),(a||i.indexOf("text")!==-1)&&Ujt(t,e,l),l.join("
")}qGe.exports={hoverPoints:Hjt,getExtraText:OGe}});var UGe=Ae((a2r,NGe)=>{"use strict";NGe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var GGe=Ae((o2r,VGe)=>{"use strict";var Wjt=ei(),jjt=lc(),Xjt=rf().BADNUM;VGe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,u;if(!jjt.hasMarkers(s))return[];if(r===!1)for(u=0;u{(function(e,t){typeof yJ=="object"&&typeof gJ!="undefined"?gJ.exports=t():(e=e||self,e.mapboxgl=t())})(yJ,function(){"use strict";var e,t,r;function n(i,a){if(!e)e=a;else if(!t)t=a;else{var o="var sharedChunk = {}; ("+e+")(sharedChunk); ("+t+")(sharedChunk);",s={};e(s),r=a(s),typeof window!="undefined"&&(r.workerUrl=window.URL.createObjectURL(new Blob([o],{type:"text/javascript"})))}}return n(["exports"],function(i){"use strict";function a(y,g){return g={exports:{}},y(g,g.exports),g.exports}var o="1.13.4",s=u;function u(y,g,z,V){this.cx=3*y,this.bx=3*(z-y)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*g,this.by=3*(V-g)-this.cy,this.ay=1-this.cy-this.by,this.p1x=y,this.p1y=V,this.p2x=z,this.p2y=V}u.prototype.sampleCurveX=function(y){return((this.ax*y+this.bx)*y+this.cx)*y},u.prototype.sampleCurveY=function(y){return((this.ay*y+this.by)*y+this.cy)*y},u.prototype.sampleCurveDerivativeX=function(y){return(3*this.ax*y+2*this.bx)*y+this.cx},u.prototype.solveCurveX=function(y,g){typeof g=="undefined"&&(g=1e-6);var z,V,$,oe,me;for($=y,me=0;me<8;me++){if(oe=this.sampleCurveX($)-y,Math.abs(oe)V)return V;for(;zoe?z=$:V=$,$=(V-z)*.5+z}return $},u.prototype.solve=function(y,g){return this.sampleCurveY(this.solveCurveX(y,g))};var l=f;function f(y,g){this.x=y,this.y=g}f.prototype={clone:function(){return new f(this.x,this.y)},add:function(y){return this.clone()._add(y)},sub:function(y){return this.clone()._sub(y)},multByPoint:function(y){return this.clone()._multByPoint(y)},divByPoint:function(y){return this.clone()._divByPoint(y)},mult:function(y){return this.clone()._mult(y)},div:function(y){return this.clone()._div(y)},rotate:function(y){return this.clone()._rotate(y)},rotateAround:function(y,g){return this.clone()._rotateAround(y,g)},matMult:function(y){return this.clone()._matMult(y)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(y){return this.x===y.x&&this.y===y.y},dist:function(y){return Math.sqrt(this.distSqr(y))},distSqr:function(y){var g=y.x-this.x,z=y.y-this.y;return g*g+z*z},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(y){return Math.atan2(this.y-y.y,this.x-y.x)},angleWith:function(y){return this.angleWithSep(y.x,y.y)},angleWithSep:function(y,g){return Math.atan2(this.x*g-this.y*y,this.x*y+this.y*g)},_matMult:function(y){var g=y[0]*this.x+y[1]*this.y,z=y[2]*this.x+y[3]*this.y;return this.x=g,this.y=z,this},_add:function(y){return this.x+=y.x,this.y+=y.y,this},_sub:function(y){return this.x-=y.x,this.y-=y.y,this},_mult:function(y){return this.x*=y,this.y*=y,this},_div:function(y){return this.x/=y,this.y/=y,this},_multByPoint:function(y){return this.x*=y.x,this.y*=y.y,this},_divByPoint:function(y){return this.x/=y.x,this.y/=y.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var y=this.y;return this.y=this.x,this.x=-y,this},_rotate:function(y){var g=Math.cos(y),z=Math.sin(y),V=g*this.x-z*this.y,$=z*this.x+g*this.y;return this.x=V,this.y=$,this},_rotateAround:function(y,g){var z=Math.cos(y),V=Math.sin(y),$=g.x+z*(this.x-g.x)-V*(this.y-g.y),oe=g.y+V*(this.x-g.x)+z*(this.y-g.y);return this.x=$,this.y=oe,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},f.convert=function(y){return y instanceof f?y:Array.isArray(y)?new f(y[0],y[1]):y};var c=typeof self!="undefined"?self:{};function h(y,g){if(Array.isArray(y)){if(!Array.isArray(g)||y.length!==g.length)return!1;for(var z=0;z=1)return 1;var g=y*y,z=g*y;return 4*(y<.5?z:3*(y-g)+z-.75)}function _(y,g,z,V){var $=new s(y,g,z,V);return function(oe){return $.solve(oe)}}var b=_(.25,.1,.25,1);function v(y,g,z){return Math.min(z,Math.max(g,y))}function k(y,g,z){var V=z-g,$=((y-g)%V+V)%V+g;return $===g?z:$}function E(y,g,z){if(!y.length)return z(null,[]);var V=y.length,$=new Array(y.length),oe=null;y.forEach(function(me,je){g(me,function(xt,Ft){xt&&(oe=xt),$[je]=Ft,--V===0&&z(oe,$)})})}function A(y){var g=[];for(var z in y)g.push(y[z]);return g}function L(y,g){var z=[];for(var V in y)V in g||z.push(V);return z}function x(y){for(var g=[],z=arguments.length-1;z-- >0;)g[z]=arguments[z+1];for(var V=0,$=g;V<$.length;V+=1){var oe=$[V];for(var me in oe)y[me]=oe[me]}return y}function C(y,g){for(var z={},V=0;V>g/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,y)}return y()}function T(y){return y<=1?1:Math.pow(2,Math.ceil(Math.log(y)/Math.LN2))}function B(y){return y?/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(y):!1}function F(y,g){y.forEach(function(z){g[z]&&(g[z]=g[z].bind(g))})}function U(y,g){return y.indexOf(g,y.length-g.length)!==-1}function G(y,g,z){var V={};for(var $ in y)V[$]=g.call(z||this,y[$],$,y);return V}function j(y,g,z){var V={};for(var $ in y)g.call(z||this,y[$],$,y)&&(V[$]=y[$]);return V}function H(y){return Array.isArray(y)?y.map(H):typeof y=="object"&&y?G(y,H):y}function N(y,g){for(var z=0;z=0)return!0;return!1}var W={};function re(y){W[y]||(typeof console!="undefined"&&console.warn(y),W[y]=!0)}function ae(y,g,z){return(z.y-y.y)*(g.x-y.x)>(g.y-y.y)*(z.x-y.x)}function be(y){for(var g=0,z=0,V=y.length,$=V-1,oe=void 0,me=void 0;z@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,z={};if(y.replace(g,function($,oe,me,je){var xt=me||je;return z[oe]=xt?xt.toLowerCase():!0,""}),z["max-age"]){var V=parseInt(z["max-age"],10);isNaN(V)?delete z["max-age"]:z["max-age"]=V}return z}var te=null;function ke(y){if(te==null){var g=y.navigator?y.navigator.userAgent:null;te=!!y.safari||!!(g&&(/\b(iPad|iPhone|iPod)\b/.test(g)||g.match("Safari")&&!g.match("Chrome")))}return te}function Ee(y){try{var g=c[y];return g.setItem("_mapbox_test_",1),g.removeItem("_mapbox_test_"),!0}catch(z){return!1}}function Me(y){return c.btoa(encodeURIComponent(y).replace(/%([0-9A-F]{2})/g,function(g,z){return String.fromCharCode(+("0x"+z))}))}function Ue(y){return decodeURIComponent(c.atob(y).split("").map(function(g){return"%"+("00"+g.charCodeAt(0).toString(16)).slice(-2)}).join(""))}var De=c.performance&&c.performance.now?c.performance.now.bind(c.performance):Date.now.bind(Date),ye=c.requestAnimationFrame||c.mozRequestAnimationFrame||c.webkitRequestAnimationFrame||c.msRequestAnimationFrame,qe=c.cancelAnimationFrame||c.mozCancelAnimationFrame||c.webkitCancelAnimationFrame||c.msCancelAnimationFrame,ce,Je,nt={now:De,frame:function(g){var z=ye(g);return{cancel:function(){return qe(z)}}},getImageData:function(g,z){z===void 0&&(z=0);var V=c.document.createElement("canvas"),$=V.getContext("2d");if(!$)throw new Error("failed to create canvas 2d context");return V.width=g.width,V.height=g.height,$.drawImage(g,0,0,g.width,g.height),$.getImageData(-z,-z,g.width+2*z,g.height+2*z)},resolveURL:function(g){return ce||(ce=c.document.createElement("a")),ce.href=g,ce.href},hardwareConcurrency:c.navigator&&c.navigator.hardwareConcurrency||4,get devicePixelRatio(){return c.devicePixelRatio},get prefersReducedMotion(){return c.matchMedia?(Je==null&&(Je=c.matchMedia("(prefers-reduced-motion: reduce)")),Je.matches):!1}},gt={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},Nt={supported:!1,testSupport:St},at,Ke=!1,Ct,wt=!1;c.document&&(Ct=c.document.createElement("img"),Ct.onload=function(){at&&Dt(at),at=null,wt=!0},Ct.onerror=function(){Ke=!0,at=null},Ct.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");function St(y){Ke||!Ct||(wt?Dt(y):at=y)}function Dt(y){var g=y.createTexture();y.bindTexture(y.TEXTURE_2D,g);try{if(y.texImage2D(y.TEXTURE_2D,0,y.RGBA,y.RGBA,y.UNSIGNED_BYTE,Ct),y.isContextLost())return;Nt.supported=!0}catch(z){}y.deleteTexture(g),Ke=!0}var Zt="01";function Et(){for(var y="1",g="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",z="",V=0;V<10;V++)z+=g[Math.floor(Math.random()*62)];var $=12*60*60*1e3,oe=[y,Zt,z].join(""),me=Date.now()+$;return{token:oe,tokenExpiresAt:me}}var Te=function(g,z){this._transformRequestFn=g,this._customAccessToken=z,this._createSkuToken()};Te.prototype._createSkuToken=function(){var g=Et();this._skuToken=g.token,this._skuTokenExpiresAt=g.tokenExpiresAt},Te.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},Te.prototype.transformRequest=function(g,z){return this._transformRequestFn?this._transformRequestFn(g,z)||{url:g}:{url:g}},Te.prototype.normalizeStyleURL=function(g,z){if(!ot(g))return g;var V=et(g);return V.path="/styles/v1"+V.path,this._makeAPIURL(V,this._customAccessToken||z)},Te.prototype.normalizeGlyphsURL=function(g,z){if(!ot(g))return g;var V=et(g);return V.path="/fonts/v1"+V.path,this._makeAPIURL(V,this._customAccessToken||z)},Te.prototype.normalizeSourceURL=function(g,z){if(!ot(g))return g;var V=et(g);return V.path="/v4/"+V.authority+".json",V.params.push("secure"),this._makeAPIURL(V,this._customAccessToken||z)},Te.prototype.normalizeSpriteURL=function(g,z,V,$){var oe=et(g);return ot(g)?(oe.path="/styles/v1"+oe.path+"/sprite"+z+V,this._makeAPIURL(oe,this._customAccessToken||$)):(oe.path+=""+z+V,It(oe))},Te.prototype.normalizeTileURL=function(g,z){if(this._isSkuTokenExpired()&&this._createSkuToken(),g&&!ot(g))return g;var V=et(g),$=/(\.(png|jpg)\d*)(?=$)/,oe=/^.+\/v4\//,me=nt.devicePixelRatio>=2||z===512?"@2x":"",je=Nt.supported?".webp":"$1";V.path=V.path.replace($,""+me+je),V.path=V.path.replace(oe,"/"),V.path="/v4"+V.path;var xt=this._customAccessToken||He(V.params)||gt.ACCESS_TOKEN;return gt.REQUIRE_ACCESS_TOKEN&&xt&&this._skuToken&&V.params.push("sku="+this._skuToken),this._makeAPIURL(V,xt)},Te.prototype.canonicalizeTileURL=function(g,z){var V="/v4/",$=/\.[\w]+$/,oe=et(g);if(!oe.path.match(/(^\/v4\/)/)||!oe.path.match($))return g;var me="mapbox://tiles/";me+=oe.path.replace(V,"");var je=oe.params;return z&&(je=je.filter(function(xt){return!xt.match(/^access_token=/)})),je.length&&(me+="?"+je.join("&")),me},Te.prototype.canonicalizeTileset=function(g,z){for(var V=z?ot(z):!1,$=[],oe=0,me=g.tiles||[];oe=0&&g.params.splice(oe,1)}if($.path!=="/"&&(g.path=""+$.path+g.path),!gt.REQUIRE_ACCESS_TOKEN)return It(g);if(z=z||gt.ACCESS_TOKEN,!z)throw new Error("An API access token is required to use Mapbox GL. "+V);if(z[0]==="s")throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+V);return g.params=g.params.filter(function(me){return me.indexOf("access_token")===-1}),g.params.push("access_token="+z),It(g)};function ot(y){return y.indexOf("mapbox:")===0}var Tt=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function vt(y){return Tt.test(y)}function Ye(y){return y.indexOf("sku=")>0&&vt(y)}function He(y){for(var g=0,z=y;g=1&&c.localStorage.setItem(z,JSON.stringify(this.eventData))}catch($){re("Unable to write to LocalStorage")}},_r.prototype.processRequests=function(g){},_r.prototype.postEvent=function(g,z,V,$){var oe=this;if(gt.EVENTS_URL){var me=et(gt.EVENTS_URL);me.params.push("access_token="+($||gt.ACCESS_TOKEN||""));var je={event:this.type,created:new Date(g).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:o,skuId:Zt,userId:this.anonId},xt=z?x(je,z):je,Ft={url:It(me),headers:{"Content-Type":"text/plain"},body:JSON.stringify([xt])};this.pendingRequest=Or(Ft,function(Xt){oe.pendingRequest=null,V(Xt),oe.saveEventData(),oe.processRequests($)})}},_r.prototype.queueRequest=function(g,z){this.queue.push(g),this.processRequests(z)};var yr=function(y){function g(){y.call(this,"map.load"),this.success={},this.skuToken=""}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.postMapLoadEvent=function(V,$,oe,me){this.skuToken=oe,(gt.EVENTS_URL&&me||gt.ACCESS_TOKEN&&Array.isArray(V)&&V.some(function(je){return ot(je)||vt(je)}))&&this.queueRequest({id:$,timestamp:Date.now()},me)},g.prototype.processRequests=function(V){var $=this;if(!(this.pendingRequest||this.queue.length===0)){var oe=this.queue.shift(),me=oe.id,je=oe.timestamp;me&&this.success[me]||(this.anonId||this.fetchEventData(),B(this.anonId)||(this.anonId=P()),this.postEvent(je,{skuToken:this.skuToken},function(xt){xt||me&&($.success[me]=!0)},V))}},g}(_r),Ut=function(y){function g(z){y.call(this,"appUserTurnstile"),this._customAccessToken=z}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.postTurnstileEvent=function(V,$){gt.EVENTS_URL&>.ACCESS_TOKEN&&Array.isArray(V)&&V.some(function(oe){return ot(oe)||vt(oe)})&&this.queueRequest(Date.now(),$)},g.prototype.processRequests=function(V){var $=this;if(!(this.pendingRequest||this.queue.length===0)){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var oe=cr(gt.ACCESS_TOKEN),me=oe?oe.u:gt.ACCESS_TOKEN,je=me!==this.eventData.tokenU;B(this.anonId)||(this.anonId=P(),je=!0);var xt=this.queue.shift();if(this.eventData.lastSuccess){var Ft=new Date(this.eventData.lastSuccess),Xt=new Date(xt),br=(xt-this.eventData.lastSuccess)/(24*60*60*1e3);je=je||br>=1||br<-1||Ft.getDate()!==Xt.getDate()}else je=!0;if(!je)return this.processRequests();this.postEvent(xt,{"enabled.telemetry":!1},function(qr){qr||($.eventData.lastSuccess=xt,$.eventData.tokenU=me)},V)}},g}(_r),Re=new Ut,xe=Re.postTurnstileEvent.bind(Re),Oe=new yr,Ie=Oe.postMapLoadEvent.bind(Oe),Fe="mapbox-tiles",ft=500,ge=50,fe=1e3*60*7,pe;function dt(){c.caches&&!pe&&(pe=c.caches.open(Fe))}var Pt;function zt(y,g){if(Pt===void 0)try{new Response(new ReadableStream),Pt=!0}catch(z){Pt=!1}Pt?g(y.body):y.blob().then(g)}function rr(y,g,z){if(dt(),!!pe){var V={status:g.status,statusText:g.statusText,headers:new c.Headers};g.headers.forEach(function(me,je){return V.headers.set(je,me)});var $=de(g.headers.get("Cache-Control")||"");if(!$["no-store"]){$["max-age"]&&V.headers.set("Expires",new Date(z+$["max-age"]*1e3).toUTCString());var oe=new Date(V.headers.get("Expires")).getTime()-z;oeDate.now()&&!z["no-cache"]}var Rr=1/0;function pi(y){Rr++,Rr>ge&&(y.getActor().send("enforceCacheSizeLimit",ft),Rr=0)}function Di(y){dt(),pe&&pe.then(function(g){g.keys().then(function(z){for(var V=0;V=200&&z.status<300||z.status===0)&&z.response!==null){var $=z.response;if(y.type==="json")try{$=JSON.parse(z.response)}catch(oe){return g(oe)}g(null,$,z.getResponseHeader("Cache-Control"),z.getResponseHeader("Expires"))}else g(new Ni(z.statusText,z.status,y.url))},z.send(y.body),{cancel:function(){return z.abort()}}}var xr=function(y,g){if(!yt(y.url)){if(c.fetch&&c.Request&&c.AbortController&&c.Request.prototype.hasOwnProperty("signal"))return Gt(y,g);if(Ce()&&self.worker&&self.worker.actor){var z=!0;return self.worker.actor.send("getResource",y,g,void 0,z)}}return Wt(y,g)},Lr=function(y,g){return xr(x(y,{type:"json"}),g)},Nr=function(y,g){return xr(x(y,{type:"arrayBuffer"}),g)},Or=function(y,g){return xr(x(y,{method:"POST"}),g)};function Hr(y){var g=c.document.createElement("a");return g.href=y,g.protocol===c.document.location.protocol&&g.host===c.document.location.host}var jr="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function gi(y,g,z,V){var $=new c.Image,oe=c.URL;$.onload=function(){g(null,$),oe.revokeObjectURL($.src),$.onload=null,c.requestAnimationFrame(function(){$.src=jr})},$.onerror=function(){return g(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var me=new c.Blob([new Uint8Array(y)],{type:"image/png"});$.cacheControl=z,$.expires=V,$.src=y.byteLength?oe.createObjectURL(me):jr}function ki(y,g){var z=new c.Blob([new Uint8Array(y)],{type:"image/png"});c.createImageBitmap(z).then(function(V){g(null,V)}).catch(function(V){g(new Error("Could not load image because of "+V.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}var Vi,ti,tn=function(){Vi=[],ti=0};tn();var Yr=function(y,g){if(Nt.supported&&(y.headers||(y.headers={}),y.headers.accept="image/webp,*/*"),ti>=gt.MAX_PARALLEL_IMAGE_REQUESTS){var z={requestParameters:y,callback:g,cancelled:!1,cancel:function(){this.cancelled=!0}};return Vi.push(z),z}ti++;var V=!1,$=function(){if(!V)for(V=!0,ti--;Vi.length&&ti0||this._oneTimeListeners&&this._oneTimeListeners[g]&&this._oneTimeListeners[g].length>0||this._eventedParent&&this._eventedParent.listens(g)},Ii.prototype.setEventedParent=function(g,z){return this._eventedParent=g,this._eventedParentData=z,this};var xn=8,bi={version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},Xr={"*":{type:"source"}},ct=["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],tr={type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},pr={type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},gr={type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},Zr={type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},Ti={type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},en={type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},ii={id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},Xi=["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],aa={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Mn={"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Un={"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Ga={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},ma={"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},oa={"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},ka={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},so={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Kr={type:"array",value:"*"},Ia={type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},Yo={type:"enum",values:{Point:{},LineString:{},Polygon:{}}},fa={type:"array",minimum:0,maximum:24,value:["number","color"],length:2},kn={type:"array",value:"*",minimum:1},Aa={anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},ys=["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],uo={"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},ls={"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},$a={"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},fo={"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},mn={"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},ra={"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},wa={"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},ws={"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Co={duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},Po={"*":{type:"string"}},Wi={$version:xn,$root:bi,sources:Xr,source:ct,source_vector:tr,source_raster:pr,source_raster_dem:gr,source_geojson:Zr,source_video:Ti,source_image:en,layer:ii,layout:Xi,layout_background:aa,layout_fill:Mn,layout_circle:Un,layout_heatmap:Ga,"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:ma,layout_symbol:oa,layout_raster:ka,layout_hillshade:so,filter:Kr,filter_operator:Ia,geometry_type:Yo,function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:fa,expression:kn,light:Aa,paint:ys,paint_fill:uo,"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:ls,paint_circle:$a,paint_heatmap:fo,paint_symbol:mn,paint_raster:ra,paint_hillshade:wa,paint_background:ws,transition:Co,"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:Po},gn=function(g,z,V,$){this.message=(g?g+": ":"")+V,$&&(this.identifier=$),z!=null&&z.__line__&&(this.line=z.__line__)};function Ps(y){var g=y.key,z=y.value;return z?[new gn(g,z,"constants have been deprecated as of v8")]:[]}function Ha(y){for(var g=[],z=arguments.length-1;z-- >0;)g[z]=arguments[z+1];for(var V=0,$=g;V<$.length;V+=1){var oe=$[V];for(var me in oe)y[me]=oe[me]}return y}function Sn(y){return y instanceof Number||y instanceof String||y instanceof Boolean?y.valueOf():y}function ao(y){if(Array.isArray(y))return y.map(ao);if(y instanceof Object&&!(y instanceof Number||y instanceof String||y instanceof Boolean)){var g={};for(var z in y)g[z]=ao(y[z]);return g}return Sn(y)}var Ba=function(y){function g(z,V){y.call(this,V),this.message=V,this.key=z}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g}(Error),Ko=function(g,z){z===void 0&&(z=[]),this.parent=g,this.bindings={};for(var V=0,$=z;V<$.length;V+=1){var oe=$[V],me=oe[0],je=oe[1];this.bindings[me]=je}};Ko.prototype.concat=function(g){return new Ko(this,g)},Ko.prototype.get=function(g){if(this.bindings[g])return this.bindings[g];if(this.parent)return this.parent.get(g);throw new Error(g+" not found in scope.")},Ko.prototype.has=function(g){return this.bindings[g]?!0:this.parent?this.parent.has(g):!1};var Qo={kind:"null"},Hi={kind:"number"},Sa={kind:"string"},Qa={kind:"boolean"},vn={kind:"color"},da={kind:"object"},la={kind:"value"},vo={kind:"error"},Ts={kind:"collator"},ps={kind:"formatted"},co={kind:"resolvedImage"};function mo(y,g){return{kind:"array",itemType:y,N:g}}function No(y){if(y.kind==="array"){var g=No(y.itemType);return typeof y.N=="number"?"array<"+g+", "+y.N+">":y.itemType.kind==="value"?"array":"array<"+g+">"}else return y.kind}var jn=[Qo,Hi,Sa,Qa,vn,ps,da,mo(la),co];function Go(y,g){if(g.kind==="error")return null;if(y.kind==="array"){if(g.kind==="array"&&(g.N===0&&g.itemType.kind==="value"||!Go(y.itemType,g.itemType))&&(typeof y.N!="number"||y.N===g.N))return null}else{if(y.kind===g.kind)return null;if(y.kind==="value")for(var z=0,V=jn;z255?255:Ft}function $(Ft){return Ft<0?0:Ft>1?1:Ft}function oe(Ft){return Ft[Ft.length-1]==="%"?V(parseFloat(Ft)/100*255):V(parseInt(Ft))}function me(Ft){return Ft[Ft.length-1]==="%"?$(parseFloat(Ft)/100):$(parseFloat(Ft))}function je(Ft,Xt,br){return br<0?br+=1:br>1&&(br-=1),br*6<1?Ft+(Xt-Ft)*br*6:br*2<1?Xt:br*3<2?Ft+(Xt-Ft)*(2/3-br)*6:Ft}function xt(Ft){var Xt=Ft.replace(/ /g,"").toLowerCase();if(Xt in z)return z[Xt].slice();if(Xt[0]==="#"){if(Xt.length===4){var br=parseInt(Xt.substr(1),16);return br>=0&&br<=4095?[(br&3840)>>4|(br&3840)>>8,br&240|(br&240)>>4,br&15|(br&15)<<4,1]:null}else if(Xt.length===7){var br=parseInt(Xt.substr(1),16);return br>=0&&br<=16777215?[(br&16711680)>>16,(br&65280)>>8,br&255,1]:null}return null}var qr=Xt.indexOf("("),Pr=Xt.indexOf(")");if(qr!==-1&&Pr+1===Xt.length){var ai=Xt.substr(0,qr),Oi=Xt.substr(qr+1,Pr-(qr+1)).split(","),Wn=1;switch(ai){case"rgba":if(Oi.length!==4)return null;Wn=me(Oi.pop());case"rgb":return Oi.length!==3?null:[oe(Oi[0]),oe(Oi[1]),oe(Oi[2]),Wn];case"hsla":if(Oi.length!==4)return null;Wn=me(Oi.pop());case"hsl":if(Oi.length!==3)return null;var bn=(parseFloat(Oi[0])%360+360)%360/360,bo=me(Oi[1]),ba=me(Oi[2]),_o=ba<=.5?ba*(bo+1):ba+bo-ba*bo,Uo=ba*2-_o;return[V(je(Uo,_o,bn+1/3)*255),V(je(Uo,_o,bn)*255),V(je(Uo,_o,bn-1/3)*255),Wn];default:return null}}return null}try{g.parseCSSColor=xt}catch(Ft){}}),Oa=Ns.parseCSSColor,ha=function(g,z,V,$){$===void 0&&($=1),this.r=g,this.g=z,this.b=V,this.a=$};ha.parse=function(g){if(g){if(g instanceof ha)return g;if(typeof g=="string"){var z=Oa(g);if(z)return new ha(z[0]/255*z[3],z[1]/255*z[3],z[2]/255*z[3],z[3])}}},ha.prototype.toString=function(){var g=this.toArray(),z=g[0],V=g[1],$=g[2],oe=g[3];return"rgba("+Math.round(z)+","+Math.round(V)+","+Math.round($)+","+oe+")"},ha.prototype.toArray=function(){var g=this,z=g.r,V=g.g,$=g.b,oe=g.a;return oe===0?[0,0,0,0]:[z*255/oe,V*255/oe,$*255/oe,oe]},ha.black=new ha(0,0,0,1),ha.white=new ha(1,1,1,1),ha.transparent=new ha(0,0,0,0),ha.red=new ha(1,0,0,1);var Vs=function(g,z,V){g?this.sensitivity=z?"variant":"case":this.sensitivity=z?"accent":"base",this.locale=V,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};Vs.prototype.compare=function(g,z){return this.collator.compare(g,z)},Vs.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var Ya=function(g,z,V,$,oe){this.text=g,this.image=z,this.scale=V,this.fontStack=$,this.textColor=oe},_n=function(g){this.sections=g};_n.fromString=function(g){return new _n([new Ya(g,null,null,null,null)])},_n.prototype.isEmpty=function(){return this.sections.length===0?!0:!this.sections.some(function(g){return g.text.length!==0||g.image&&g.image.name.length!==0})},_n.factory=function(g){return g instanceof _n?g:_n.fromString(g)},_n.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(g){return g.text}).join("")},_n.prototype.serialize=function(){for(var g=["format"],z=0,V=this.sections;z=0&&y<=255&&typeof g=="number"&&g>=0&&g<=255&&typeof z=="number"&&z>=0&&z<=255)){var $=typeof V=="number"?[y,g,z,V]:[y,g,z];return"Invalid rgba value ["+$.join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}return typeof V=="undefined"||typeof V=="number"&&V>=0&&V<=1?null:"Invalid rgba value ["+[y,g,z,V].join(", ")+"]: 'a' must be between 0 and 1."}function Ra(y){if(y===null)return!0;if(typeof y=="string")return!0;if(typeof y=="boolean")return!0;if(typeof y=="number")return!0;if(y instanceof ha)return!0;if(y instanceof Vs)return!0;if(y instanceof _n)return!0;if(y instanceof Vn)return!0;if(Array.isArray(y)){for(var g=0,z=y;g2){var je=g[1];if(typeof je!="string"||!(je in qn)||je==="object")return z.error('The item type argument of "array" must be one of string, number, boolean',1);me=qn[je],V++}else me=la;var xt;if(g.length>3){if(g[2]!==null&&(typeof g[2]!="number"||g[2]<0||g[2]!==Math.floor(g[2])))return z.error('The length argument to "array" must be a positive integer literal',2);xt=g[2],V++}$=mo(me,xt)}else $=qn[oe];for(var Ft=[];V1)&&z.push($)}}return z.concat(this.args.map(function(oe){return oe.serialize()}))};var Ja=function(g){this.type=ps,this.sections=g};Ja.parse=function(g,z){if(g.length<2)return z.error("Expected at least one argument.");var V=g[1];if(!Array.isArray(V)&&typeof V=="object")return z.error("First argument must be an image or text section.");for(var $=[],oe=!1,me=1;me<=g.length-1;++me){var je=g[me];if(oe&&typeof je=="object"&&!Array.isArray(je)){oe=!1;var xt=null;if(je["font-scale"]&&(xt=z.parse(je["font-scale"],1,Hi),!xt))return null;var Ft=null;if(je["text-font"]&&(Ft=z.parse(je["text-font"],1,mo(Sa)),!Ft))return null;var Xt=null;if(je["text-color"]&&(Xt=z.parse(je["text-color"],1,vn),!Xt))return null;var br=$[$.length-1];br.scale=xt,br.font=Ft,br.textColor=Xt}else{var qr=z.parse(g[me],1,la);if(!qr)return null;var Pr=qr.type.kind;if(Pr!=="string"&&Pr!=="value"&&Pr!=="null"&&Pr!=="resolvedImage")return z.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");oe=!0,$.push({content:qr,scale:null,font:null,textColor:null})}}return new Ja($)},Ja.prototype.evaluate=function(g){var z=function(V){var $=V.content.evaluate(g);return Xn($)===co?new Ya("",$,null,null,null):new Ya(un($),null,V.scale?V.scale.evaluate(g):null,V.font?V.font.evaluate(g).join(","):null,V.textColor?V.textColor.evaluate(g):null)};return new _n(this.sections.map(z))},Ja.prototype.eachChild=function(g){for(var z=0,V=this.sections;z-1),V},lo.prototype.eachChild=function(g){g(this.input)},lo.prototype.outputDefined=function(){return!1},lo.prototype.serialize=function(){return["image",this.input.serialize()]};var eo={"to-boolean":Qa,"to-color":vn,"to-number":Hi,"to-string":Sa},sa=function(g,z){this.type=g,this.args=z};sa.parse=function(g,z){if(g.length<2)return z.error("Expected at least one argument.");var V=g[0];if((V==="to-boolean"||V==="to-string")&&g.length!==2)return z.error("Expected one argument.");for(var $=eo[V],oe=[],me=1;me4?V="Invalid rbga value "+JSON.stringify(z)+": expected an array containing either three or four numeric values.":V=wo(z[0],z[1],z[2],z[3]),!V))return new ha(z[0]/255,z[1]/255,z[2]/255,z[3])}throw new Ka(V||"Could not parse color from value '"+(typeof z=="string"?z:String(JSON.stringify(z)))+"'")}else if(this.type.kind==="number"){for(var xt=null,Ft=0,Xt=this.args;Ft=g[2]||y[1]<=g[1]||y[3]>=g[3])}function Ws(y,g){var z=To(y[0]),V=Dn(y[1]),$=Math.pow(2,g.z);return[Math.round(z*$*yo),Math.round(V*$*yo)]}function Ca(y,g,z){var V=y[0]-g[0],$=y[1]-g[1],oe=y[0]-z[0],me=y[1]-z[1];return V*me-oe*$===0&&V*oe<=0&&$*me<=0}function Es(y,g,z){return g[1]>y[1]!=z[1]>y[1]&&y[0]<(z[0]-g[0])*(y[1]-g[1])/(z[1]-g[1])+g[0]}function As(y,g){for(var z=!1,V=0,$=g.length;V<$;V++)for(var oe=g[V],me=0,je=oe.length;me0&&br<0||Xt<0&&br>0}function ts(y,g,z,V){var $=[g[0]-y[0],g[1]-y[1]],oe=[V[0]-z[0],V[1]-z[1]];return Wa(oe,$)===0?!1:!!(Ao(y,g,z,V)&&Ao(z,V,y,g))}function Wo(y,g,z){for(var V=0,$=z;V<$.length;V+=1)for(var oe=$[V],me=0;mez[2]){var $=V*.5,oe=y[0]-z[0]>$?-V:z[0]-y[0]>$?V:0;oe===0&&(oe=y[0]-z[2]>$?-V:z[2]-y[0]>$?V:0),y[0]+=oe}Jo(g,y)}function za(y){y[0]=y[1]=1/0,y[2]=y[3]=-1/0}function ea(y,g,z,V){for(var $=Math.pow(2,V.z)*yo,oe=[V.x*yo,V.y*yo],me=[],je=0,xt=y;je=0)return!1;var z=!0;return y.eachChild(function(V){z&&!Ma(V,g)&&(z=!1)}),z}var Qs=function(g,z){this.type=z.type,this.name=g,this.boundExpression=z};Qs.parse=function(g,z){if(g.length!==2||typeof g[1]!="string")return z.error("'var' expression requires exactly one string literal argument.");var V=g[1];return z.scope.has(V)?new Qs(V,z.scope.get(V)):z.error('Unknown variable "'+V+'". Make sure "'+V+'" has been bound in an enclosing "let" expression before using it.',1)},Qs.prototype.evaluate=function(g){return this.boundExpression.evaluate(g)},Qs.prototype.eachChild=function(){},Qs.prototype.outputDefined=function(){return!1},Qs.prototype.serialize=function(){return["var",this.name]};var ho=function(g,z,V,$,oe){z===void 0&&(z=[]),$===void 0&&($=new Ko),oe===void 0&&(oe=[]),this.registry=g,this.path=z,this.key=z.map(function(me){return"["+me+"]"}).join(""),this.scope=$,this.errors=oe,this.expectedType=V};ho.prototype.parse=function(g,z,V,$,oe){return oe===void 0&&(oe={}),z?this.concat(z,V,$)._parse(g,oe):this._parse(g,oe)},ho.prototype._parse=function(g,z){(g===null||typeof g=="string"||typeof g=="boolean"||typeof g=="number")&&(g=["literal",g]);function V(Xt,br,qr){return qr==="assert"?new Eo(br,[Xt]):qr==="coerce"?new sa(br,[Xt]):Xt}if(Array.isArray(g)){if(g.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var $=g[0];if(typeof $!="string")return this.error("Expression name must be a string, but found "+typeof $+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var oe=this.registry[$];if(oe){var me=oe.parse(g,this);if(!me)return null;if(this.expectedType){var je=this.expectedType,xt=me.type;if((je.kind==="string"||je.kind==="number"||je.kind==="boolean"||je.kind==="object"||je.kind==="array")&&xt.kind==="value")me=V(me,je,z.typeAnnotation||"assert");else if((je.kind==="color"||je.kind==="formatted"||je.kind==="resolvedImage")&&(xt.kind==="value"||xt.kind==="string"))me=V(me,je,z.typeAnnotation||"coerce");else if(this.checkSubtype(je,xt))return null}if(!(me instanceof $n)&&me.type.kind!=="resolvedImage"&&gs(me)){var Ft=new Na;try{me=new $n(me.type,me.evaluate(Ft))}catch(Xt){return this.error(Xt.message),null}}return me}return this.error('Unknown expression "'+$+'". If you wanted a literal array, use ["literal", [...]].',0)}else return typeof g=="undefined"?this.error("'undefined' value invalid. Use null instead."):typeof g=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof g+" instead.")},ho.prototype.concat=function(g,z,V){var $=typeof g=="number"?this.path.concat(g):this.path,oe=V?this.scope.concat(V):this.scope;return new ho(this.registry,$,z||null,oe,this.errors)},ho.prototype.error=function(g){for(var z=[],V=arguments.length-1;V-- >0;)z[V]=arguments[V+1];var $=""+this.key+z.map(function(oe){return"["+oe+"]"}).join("");this.errors.push(new Ba($,g))},ho.prototype.checkSubtype=function(g,z){var V=Go(g,z);return V&&this.error(V),V};function gs(y){if(y instanceof Qs)return gs(y.boundExpression);if(y instanceof rn&&y.name==="error")return!1;if(y instanceof to)return!1;if(y instanceof Ds)return!1;var g=y instanceof sa||y instanceof Eo,z=!0;return y.eachChild(function(V){g?z=z&&gs(V):z=z&&V instanceof $n}),z?fl(y)&&Ma(y,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"]):!1}function Vo(y,g){for(var z=y.length-1,V=0,$=z,oe=0,me,je;V<=$;)if(oe=Math.floor((V+$)/2),me=y[oe],je=y[oe+1],me<=g){if(oe===z||gg)$=oe-1;else throw new Ka("Input is not a number.");return 0}var Do=function(g,z,V){this.type=g,this.input=z,this.labels=[],this.outputs=[];for(var $=0,oe=V;$=je)return z.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',Ft);var br=z.parse(xt,Xt,oe);if(!br)return null;oe=oe||br.type,$.push([je,br])}return new Do(oe,V,$)},Do.prototype.evaluate=function(g){var z=this.labels,V=this.outputs;if(z.length===1)return V[0].evaluate(g);var $=this.input.evaluate(g);if($<=z[0])return V[0].evaluate(g);var oe=z.length;if($>=z[oe-1])return V[oe-1].evaluate(g);var me=Vo(z,$);return V[me].evaluate(g)},Do.prototype.eachChild=function(g){g(this.input);for(var z=0,V=this.outputs;z0&&g.push(this.labels[z]),g.push(this.outputs[z].serialize());return g};function Lo(y,g,z){return y*(1-z)+g*z}function xs(y,g,z){return new ha(Lo(y.r,g.r,z),Lo(y.g,g.g,z),Lo(y.b,g.b,z),Lo(y.a,g.a,z))}function ks(y,g,z){return y.map(function(V,$){return Lo(V,g[$],z)})}var Ea=Object.freeze({__proto__:null,number:Lo,color:xs,array:ks}),Jn=.95047,Oo=1,rl=1.08883,Gs=4/29,bs=6/29,zs=3*bs*bs,$o=bs*bs*bs,Ta=Math.PI/180,os=180/Math.PI;function _l(y){return y>$o?Math.pow(y,1/3):y/zs+Gs}function Ss(y){return y>bs?y*y*y:zs*(y-Gs)}function po(y){return 255*(y<=.0031308?12.92*y:1.055*Math.pow(y,1/2.4)-.055)}function go(y){return y/=255,y<=.04045?y/12.92:Math.pow((y+.055)/1.055,2.4)}function ss(y){var g=go(y.r),z=go(y.g),V=go(y.b),$=_l((.4124564*g+.3575761*z+.1804375*V)/Jn),oe=_l((.2126729*g+.7151522*z+.072175*V)/Oo),me=_l((.0193339*g+.119192*z+.9503041*V)/rl);return{l:116*oe-16,a:500*($-oe),b:200*(oe-me),alpha:y.a}}function qo(y){var g=(y.l+16)/116,z=isNaN(y.a)?g:g+y.a/500,V=isNaN(y.b)?g:g-y.b/200;return g=Oo*Ss(g),z=Jn*Ss(z),V=rl*Ss(V),new ha(po(3.2404542*z-1.5371385*g-.4985314*V),po(-.969266*z+1.8760108*g+.041556*V),po(.0556434*z-.2040259*g+1.0572252*V),y.alpha)}function zo(y,g,z){return{l:Lo(y.l,g.l,z),a:Lo(y.a,g.a,z),b:Lo(y.b,g.b,z),alpha:Lo(y.alpha,g.alpha,z)}}function io(y){var g=ss(y),z=g.l,V=g.a,$=g.b,oe=Math.atan2($,V)*os;return{h:oe<0?oe+360:oe,c:Math.sqrt(V*V+$*$),l:z,alpha:y.a}}function Io(y){var g=y.h*Ta,z=y.c,V=y.l;return qo({l:V,a:Math.cos(g)*z,b:Math.sin(g)*z,alpha:y.alpha})}function Da(y,g,z){var V=g-y;return y+z*(V>180||V<-180?V-360*Math.round(V/360):V)}function vs(y,g,z){return{h:Da(y.h,g.h,z),c:Lo(y.c,g.c,z),l:Lo(y.l,g.l,z),alpha:Lo(y.alpha,g.alpha,z)}}var fs={forward:ss,reverse:qo,interpolate:zo},cl={forward:io,reverse:Io,interpolate:vs},el=Object.freeze({__proto__:null,lab:fs,hcl:cl}),Hs=function(g,z,V,$,oe){this.type=g,this.operator=z,this.interpolation=V,this.input=$,this.labels=[],this.outputs=[];for(var me=0,je=oe;me1}))return z.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);$={name:"cubic-bezier",controlPoints:xt}}else return z.error("Unknown interpolation type "+String($[0]),1,0);if(g.length-1<4)return z.error("Expected at least 4 arguments, but found only "+(g.length-1)+".");if((g.length-1)%2!==0)return z.error("Expected an even number of arguments.");if(oe=z.parse(oe,2,Hi),!oe)return null;var Ft=[],Xt=null;V==="interpolate-hcl"||V==="interpolate-lab"?Xt=vn:z.expectedType&&z.expectedType.kind!=="value"&&(Xt=z.expectedType);for(var br=0;br=qr)return z.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',ai);var Wn=z.parse(Pr,Oi,Xt);if(!Wn)return null;Xt=Xt||Wn.type,Ft.push([qr,Wn])}return Xt.kind!=="number"&&Xt.kind!=="color"&&!(Xt.kind==="array"&&Xt.itemType.kind==="number"&&typeof Xt.N=="number")?z.error("Type "+No(Xt)+" is not interpolatable."):new Hs(Xt,V,$,oe,Ft)},Hs.prototype.evaluate=function(g){var z=this.labels,V=this.outputs;if(z.length===1)return V[0].evaluate(g);var $=this.input.evaluate(g);if($<=z[0])return V[0].evaluate(g);var oe=z.length;if($>=z[oe-1])return V[oe-1].evaluate(g);var me=Vo(z,$),je=z[me],xt=z[me+1],Ft=Hs.interpolationFactor(this.interpolation,$,je,xt),Xt=V[me].evaluate(g),br=V[me+1].evaluate(g);return this.operator==="interpolate"?Ea[this.type.kind.toLowerCase()](Xt,br,Ft):this.operator==="interpolate-hcl"?cl.reverse(cl.interpolate(cl.forward(Xt),cl.forward(br),Ft)):fs.reverse(fs.interpolate(fs.forward(Xt),fs.forward(br),Ft))},Hs.prototype.eachChild=function(g){g(this.input);for(var z=0,V=this.outputs;z=V.length)throw new Ka("Array index out of bounds: "+z+" > "+(V.length-1)+".");if(z!==Math.floor(z))throw new Ka("Array index must be an integer, but found "+z+" instead.");return V[z]},hl.prototype.eachChild=function(g){g(this.index),g(this.input)},hl.prototype.outputDefined=function(){return!1},hl.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var Fa=function(g,z){this.type=Qa,this.needle=g,this.haystack=z};Fa.parse=function(g,z){if(g.length!==3)return z.error("Expected 2 arguments, but found "+(g.length-1)+" instead.");var V=z.parse(g[1],1,la),$=z.parse(g[2],2,la);return!V||!$?null:Ys(V.type,[Qa,Sa,Hi,Qo,la])?new Fa(V,$):z.error("Expected first argument to be of type boolean, string, number or null, but found "+No(V.type)+" instead")},Fa.prototype.evaluate=function(g){var z=this.needle.evaluate(g),V=this.haystack.evaluate(g);if(!V)return!1;if(!qs(z,["boolean","string","number","null"]))throw new Ka("Expected first argument to be of type boolean, string, number or null, but found "+No(Xn(z))+" instead.");if(!qs(V,["string","array"]))throw new Ka("Expected second argument to be of type array or string, but found "+No(Xn(V))+" instead.");return V.indexOf(z)>=0},Fa.prototype.eachChild=function(g){g(this.needle),g(this.haystack)},Fa.prototype.outputDefined=function(){return!0},Fa.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var Ms=function(g,z,V){this.type=Hi,this.needle=g,this.haystack=z,this.fromIndex=V};Ms.parse=function(g,z){if(g.length<=2||g.length>=5)return z.error("Expected 3 or 4 arguments, but found "+(g.length-1)+" instead.");var V=z.parse(g[1],1,la),$=z.parse(g[2],2,la);if(!V||!$)return null;if(!Ys(V.type,[Qa,Sa,Hi,Qo,la]))return z.error("Expected first argument to be of type boolean, string, number or null, but found "+No(V.type)+" instead");if(g.length===4){var oe=z.parse(g[3],3,Hi);return oe?new Ms(V,$,oe):null}else return new Ms(V,$)},Ms.prototype.evaluate=function(g){var z=this.needle.evaluate(g),V=this.haystack.evaluate(g);if(!qs(z,["boolean","string","number","null"]))throw new Ka("Expected first argument to be of type boolean, string, number or null, but found "+No(Xn(z))+" instead.");if(!qs(V,["string","array"]))throw new Ka("Expected second argument to be of type array or string, but found "+No(Xn(V))+" instead.");if(this.fromIndex){var $=this.fromIndex.evaluate(g);return V.indexOf(z,$)}return V.indexOf(z)},Ms.prototype.eachChild=function(g){g(this.needle),g(this.haystack),this.fromIndex&&g(this.fromIndex)},Ms.prototype.outputDefined=function(){return!1},Ms.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var g=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),g]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var jo=function(g,z,V,$,oe,me){this.inputType=g,this.type=z,this.input=V,this.cases=$,this.outputs=oe,this.otherwise=me};jo.parse=function(g,z){if(g.length<5)return z.error("Expected at least 4 arguments, but found only "+(g.length-1)+".");if(g.length%2!==1)return z.error("Expected an even number of arguments.");var V,$;z.expectedType&&z.expectedType.kind!=="value"&&($=z.expectedType);for(var oe={},me=[],je=2;jeNumber.MAX_SAFE_INTEGER)return Xt.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof Pr=="number"&&Math.floor(Pr)!==Pr)return Xt.error("Numeric branch labels must be integer values.");if(!V)V=Xn(Pr);else if(Xt.checkSubtype(V,Xn(Pr)))return null;if(typeof oe[String(Pr)]!="undefined")return Xt.error("Branch labels must be unique.");oe[String(Pr)]=me.length}var ai=z.parse(Ft,je,$);if(!ai)return null;$=$||ai.type,me.push(ai)}var Oi=z.parse(g[1],1,la);if(!Oi)return null;var Wn=z.parse(g[g.length-1],g.length-1,$);return!Wn||Oi.type.kind!=="value"&&z.concat(1).checkSubtype(V,Oi.type)?null:new jo(V,$,Oi,oe,me,Wn)},jo.prototype.evaluate=function(g){var z=this.input.evaluate(g),V=Xn(z)===this.inputType&&this.outputs[this.cases[z]]||this.otherwise;return V.evaluate(g)},jo.prototype.eachChild=function(g){g(this.input),this.outputs.forEach(g),g(this.otherwise)},jo.prototype.outputDefined=function(){return this.outputs.every(function(g){return g.outputDefined()})&&this.otherwise.outputDefined()},jo.prototype.serialize=function(){for(var g=this,z=["match",this.input.serialize()],V=Object.keys(this.cases).sort(),$=[],oe={},me=0,je=V;me=5)return z.error("Expected 3 or 4 arguments, but found "+(g.length-1)+" instead.");var V=z.parse(g[1],1,la),$=z.parse(g[2],2,Hi);if(!V||!$)return null;if(!Ys(V.type,[mo(la),Sa,la]))return z.error("Expected first argument to be of type array or string, but found "+No(V.type)+" instead");if(g.length===4){var oe=z.parse(g[3],3,Hi);return oe?new Is(V.type,V,$,oe):null}else return new Is(V.type,V,$)},Is.prototype.evaluate=function(g){var z=this.input.evaluate(g),V=this.beginIndex.evaluate(g);if(!qs(z,["string","array"]))throw new Ka("Expected first argument to be of type array or string, but found "+No(Xn(z))+" instead.");if(this.endIndex){var $=this.endIndex.evaluate(g);return z.slice(V,$)}return z.slice(V)},Is.prototype.eachChild=function(g){g(this.input),g(this.beginIndex),this.endIndex&&g(this.endIndex)},Is.prototype.outputDefined=function(){return!1},Is.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var g=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),g]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};function Bs(y,g){return y==="=="||y==="!="?g.kind==="boolean"||g.kind==="string"||g.kind==="number"||g.kind==="null"||g.kind==="value":g.kind==="string"||g.kind==="number"||g.kind==="value"}function At(y,g,z){return g===z}function Vt(y,g,z){return g!==z}function wr(y,g,z){return gz}function Fr(y,g,z){return g<=z}function _i(y,g,z){return g>=z}function Si(y,g,z,V){return V.compare(g,z)===0}function Ci(y,g,z,V){return!Si(y,g,z,V)}function Ki(y,g,z,V){return V.compare(g,z)<0}function Fn(y,g,z,V){return V.compare(g,z)>0}function Pi(y,g,z,V){return V.compare(g,z)<=0}function di(y,g,z,V){return V.compare(g,z)>=0}function Li(y,g,z){var V=y!=="=="&&y!=="!=";return function(){function $(oe,me,je){this.type=Qa,this.lhs=oe,this.rhs=me,this.collator=je,this.hasUntypedArgument=oe.type.kind==="value"||me.type.kind==="value"}return $.parse=function(me,je){if(me.length!==3&&me.length!==4)return je.error("Expected two or three arguments.");var xt=me[0],Ft=je.parse(me[1],1,la);if(!Ft)return null;if(!Bs(xt,Ft.type))return je.concat(1).error('"'+xt+`" comparisons are not supported for type '`+No(Ft.type)+"'.");var Xt=je.parse(me[2],2,la);if(!Xt)return null;if(!Bs(xt,Xt.type))return je.concat(2).error('"'+xt+`" comparisons are not supported for type '`+No(Xt.type)+"'.");if(Ft.type.kind!==Xt.type.kind&&Ft.type.kind!=="value"&&Xt.type.kind!=="value")return je.error("Cannot compare types '"+No(Ft.type)+"' and '"+No(Xt.type)+"'.");V&&(Ft.type.kind==="value"&&Xt.type.kind!=="value"?Ft=new Eo(Xt.type,[Ft]):Ft.type.kind!=="value"&&Xt.type.kind==="value"&&(Xt=new Eo(Ft.type,[Xt])));var br=null;if(me.length===4){if(Ft.type.kind!=="string"&&Xt.type.kind!=="string"&&Ft.type.kind!=="value"&&Xt.type.kind!=="value")return je.error("Cannot use collator to compare non-string types.");if(br=je.parse(me[3],3,Ts),!br)return null}return new $(Ft,Xt,br)},$.prototype.evaluate=function(me){var je=this.lhs.evaluate(me),xt=this.rhs.evaluate(me);if(V&&this.hasUntypedArgument){var Ft=Xn(je),Xt=Xn(xt);if(Ft.kind!==Xt.kind||!(Ft.kind==="string"||Ft.kind==="number"))throw new Ka('Expected arguments for "'+y+'" to be (string, string) or (number, number), but found ('+Ft.kind+", "+Xt.kind+") instead.")}if(this.collator&&!V&&this.hasUntypedArgument){var br=Xn(je),qr=Xn(xt);if(br.kind!=="string"||qr.kind!=="string")return g(me,je,xt)}return this.collator?z(me,je,xt,this.collator.evaluate(me)):g(me,je,xt)},$.prototype.eachChild=function(me){me(this.lhs),me(this.rhs),this.collator&&me(this.collator)},$.prototype.outputDefined=function(){return!0},$.prototype.serialize=function(){var me=[y];return this.eachChild(function(je){me.push(je.serialize())}),me},$}()}var Mi=Li("==",At,Si),Gn=Li("!=",Vt,Ci),ta=Li("<",wr,Ki),ya=Li(">",mr,Fn),ia=Li("<=",Fr,Pi),pa=Li(">=",_i,di),va=function(g,z,V,$,oe){this.type=Sa,this.number=g,this.locale=z,this.currency=V,this.minFractionDigits=$,this.maxFractionDigits=oe};va.parse=function(g,z){if(g.length!==3)return z.error("Expected two arguments.");var V=z.parse(g[1],1,Hi);if(!V)return null;var $=g[2];if(typeof $!="object"||Array.isArray($))return z.error("NumberFormat options argument must be an object.");var oe=null;if($.locale&&(oe=z.parse($.locale,1,Sa),!oe))return null;var me=null;if($.currency&&(me=z.parse($.currency,1,Sa),!me))return null;var je=null;if($["min-fraction-digits"]&&(je=z.parse($["min-fraction-digits"],1,Hi),!je))return null;var xt=null;return $["max-fraction-digits"]&&(xt=z.parse($["max-fraction-digits"],1,Hi),!xt)?null:new va(V,oe,me,je,xt)},va.prototype.evaluate=function(g){return new Intl.NumberFormat(this.locale?this.locale.evaluate(g):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(g):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(g):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(g):void 0}).format(this.number.evaluate(g))},va.prototype.eachChild=function(g){g(this.number),this.locale&&g(this.locale),this.currency&&g(this.currency),this.minFractionDigits&&g(this.minFractionDigits),this.maxFractionDigits&&g(this.maxFractionDigits)},va.prototype.outputDefined=function(){return!1},va.prototype.serialize=function(){var g={};return this.locale&&(g.locale=this.locale.serialize()),this.currency&&(g.currency=this.currency.serialize()),this.minFractionDigits&&(g["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(g["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),g]};var zn=function(g){this.type=Hi,this.input=g};zn.parse=function(g,z){if(g.length!==2)return z.error("Expected 1 argument, but found "+(g.length-1)+" instead.");var V=z.parse(g[1],1);return V?V.type.kind!=="array"&&V.type.kind!=="string"&&V.type.kind!=="value"?z.error("Expected argument of type string or array, but found "+No(V.type)+" instead."):new zn(V):null},zn.prototype.evaluate=function(g){var z=this.input.evaluate(g);if(typeof z=="string")return z.length;if(Array.isArray(z))return z.length;throw new Ka("Expected value to be of type string or array, but found "+No(Xn(z))+" instead.")},zn.prototype.eachChild=function(g){g(this.input)},zn.prototype.outputDefined=function(){return!1},zn.prototype.serialize=function(){var g=["length"];return this.eachChild(function(z){g.push(z.serialize())}),g};var is={"==":Mi,"!=":Gn,">":ya,"<":ta,">=":pa,"<=":ia,array:Eo,at:hl,boolean:Eo,case:Rs,coalesce:tl,collator:to,format:Ja,image:lo,in:Fa,"index-of":Ms,interpolate:Hs,"interpolate-hcl":Hs,"interpolate-lab":Hs,length:zn,let:Fs,literal:$n,match:jo,number:Eo,"number-format":va,object:Eo,slice:Is,step:Do,string:Eo,"to-boolean":sa,"to-color":sa,"to-number":sa,"to-string":sa,var:Qs,within:Ds};function Cs(y,g){var z=g[0],V=g[1],$=g[2],oe=g[3];z=z.evaluate(y),V=V.evaluate(y),$=$.evaluate(y);var me=oe?oe.evaluate(y):1,je=wo(z,V,$,me);if(je)throw new Ka(je);return new ha(z/255*me,V/255*me,$/255*me,me)}function Ks(y,g){return y in g}function dl(y,g){var z=g[y];return typeof z=="undefined"?null:z}function xl(y,g,z,V){for(;z<=V;){var $=z+V>>1;if(g[$]===y)return!0;g[$]>y?V=$-1:z=$+1}return!1}function Bl(y){return{type:y}}rn.register(is,{error:[vo,[Sa],function(y,g){var z=g[0];throw new Ka(z.evaluate(y))}],typeof:[Sa,[la],function(y,g){var z=g[0];return No(Xn(z.evaluate(y)))}],"to-rgba":[mo(Hi,4),[vn],function(y,g){var z=g[0];return z.evaluate(y).toArray()}],rgb:[vn,[Hi,Hi,Hi],Cs],rgba:[vn,[Hi,Hi,Hi,Hi],Cs],has:{type:Qa,overloads:[[[Sa],function(y,g){var z=g[0];return Ks(z.evaluate(y),y.properties())}],[[Sa,da],function(y,g){var z=g[0],V=g[1];return Ks(z.evaluate(y),V.evaluate(y))}]]},get:{type:la,overloads:[[[Sa],function(y,g){var z=g[0];return dl(z.evaluate(y),y.properties())}],[[Sa,da],function(y,g){var z=g[0],V=g[1];return dl(z.evaluate(y),V.evaluate(y))}]]},"feature-state":[la,[Sa],function(y,g){var z=g[0];return dl(z.evaluate(y),y.featureState||{})}],properties:[da,[],function(y){return y.properties()}],"geometry-type":[Sa,[],function(y){return y.geometryType()}],id:[la,[],function(y){return y.id()}],zoom:[Hi,[],function(y){return y.globals.zoom}],"heatmap-density":[Hi,[],function(y){return y.globals.heatmapDensity||0}],"line-progress":[Hi,[],function(y){return y.globals.lineProgress||0}],accumulated:[la,[],function(y){return y.globals.accumulated===void 0?null:y.globals.accumulated}],"+":[Hi,Bl(Hi),function(y,g){for(var z=0,V=0,$=g;V<$.length;V+=1){var oe=$[V];z+=oe.evaluate(y)}return z}],"*":[Hi,Bl(Hi),function(y,g){for(var z=1,V=0,$=g;V<$.length;V+=1){var oe=$[V];z*=oe.evaluate(y)}return z}],"-":{type:Hi,overloads:[[[Hi,Hi],function(y,g){var z=g[0],V=g[1];return z.evaluate(y)-V.evaluate(y)}],[[Hi],function(y,g){var z=g[0];return-z.evaluate(y)}]]},"/":[Hi,[Hi,Hi],function(y,g){var z=g[0],V=g[1];return z.evaluate(y)/V.evaluate(y)}],"%":[Hi,[Hi,Hi],function(y,g){var z=g[0],V=g[1];return z.evaluate(y)%V.evaluate(y)}],ln2:[Hi,[],function(){return Math.LN2}],pi:[Hi,[],function(){return Math.PI}],e:[Hi,[],function(){return Math.E}],"^":[Hi,[Hi,Hi],function(y,g){var z=g[0],V=g[1];return Math.pow(z.evaluate(y),V.evaluate(y))}],sqrt:[Hi,[Hi],function(y,g){var z=g[0];return Math.sqrt(z.evaluate(y))}],log10:[Hi,[Hi],function(y,g){var z=g[0];return Math.log(z.evaluate(y))/Math.LN10}],ln:[Hi,[Hi],function(y,g){var z=g[0];return Math.log(z.evaluate(y))}],log2:[Hi,[Hi],function(y,g){var z=g[0];return Math.log(z.evaluate(y))/Math.LN2}],sin:[Hi,[Hi],function(y,g){var z=g[0];return Math.sin(z.evaluate(y))}],cos:[Hi,[Hi],function(y,g){var z=g[0];return Math.cos(z.evaluate(y))}],tan:[Hi,[Hi],function(y,g){var z=g[0];return Math.tan(z.evaluate(y))}],asin:[Hi,[Hi],function(y,g){var z=g[0];return Math.asin(z.evaluate(y))}],acos:[Hi,[Hi],function(y,g){var z=g[0];return Math.acos(z.evaluate(y))}],atan:[Hi,[Hi],function(y,g){var z=g[0];return Math.atan(z.evaluate(y))}],min:[Hi,Bl(Hi),function(y,g){return Math.min.apply(Math,g.map(function(z){return z.evaluate(y)}))}],max:[Hi,Bl(Hi),function(y,g){return Math.max.apply(Math,g.map(function(z){return z.evaluate(y)}))}],abs:[Hi,[Hi],function(y,g){var z=g[0];return Math.abs(z.evaluate(y))}],round:[Hi,[Hi],function(y,g){var z=g[0],V=z.evaluate(y);return V<0?-Math.round(-V):Math.round(V)}],floor:[Hi,[Hi],function(y,g){var z=g[0];return Math.floor(z.evaluate(y))}],ceil:[Hi,[Hi],function(y,g){var z=g[0];return Math.ceil(z.evaluate(y))}],"filter-==":[Qa,[Sa,la],function(y,g){var z=g[0],V=g[1];return y.properties()[z.value]===V.value}],"filter-id-==":[Qa,[la],function(y,g){var z=g[0];return y.id()===z.value}],"filter-type-==":[Qa,[Sa],function(y,g){var z=g[0];return y.geometryType()===z.value}],"filter-<":[Qa,[Sa,la],function(y,g){var z=g[0],V=g[1],$=y.properties()[z.value],oe=V.value;return typeof $==typeof oe&&$":[Qa,[Sa,la],function(y,g){var z=g[0],V=g[1],$=y.properties()[z.value],oe=V.value;return typeof $==typeof oe&&$>oe}],"filter-id->":[Qa,[la],function(y,g){var z=g[0],V=y.id(),$=z.value;return typeof V==typeof $&&V>$}],"filter-<=":[Qa,[Sa,la],function(y,g){var z=g[0],V=g[1],$=y.properties()[z.value],oe=V.value;return typeof $==typeof oe&&$<=oe}],"filter-id-<=":[Qa,[la],function(y,g){var z=g[0],V=y.id(),$=z.value;return typeof V==typeof $&&V<=$}],"filter->=":[Qa,[Sa,la],function(y,g){var z=g[0],V=g[1],$=y.properties()[z.value],oe=V.value;return typeof $==typeof oe&&$>=oe}],"filter-id->=":[Qa,[la],function(y,g){var z=g[0],V=y.id(),$=z.value;return typeof V==typeof $&&V>=$}],"filter-has":[Qa,[la],function(y,g){var z=g[0];return z.value in y.properties()}],"filter-has-id":[Qa,[],function(y){return y.id()!==null&&y.id()!==void 0}],"filter-type-in":[Qa,[mo(Sa)],function(y,g){var z=g[0];return z.value.indexOf(y.geometryType())>=0}],"filter-id-in":[Qa,[mo(la)],function(y,g){var z=g[0];return z.value.indexOf(y.id())>=0}],"filter-in-small":[Qa,[Sa,mo(la)],function(y,g){var z=g[0],V=g[1];return V.value.indexOf(y.properties()[z.value])>=0}],"filter-in-large":[Qa,[Sa,mo(la)],function(y,g){var z=g[0],V=g[1];return xl(y.properties()[z.value],V.value,0,V.value.length-1)}],all:{type:Qa,overloads:[[[Qa,Qa],function(y,g){var z=g[0],V=g[1];return z.evaluate(y)&&V.evaluate(y)}],[Bl(Qa),function(y,g){for(var z=0,V=g;z-1}function ja(y){return!!y.expression&&y.expression.interpolated}function ns(y){return y instanceof Number?"number":y instanceof String?"string":y instanceof Boolean?"boolean":Array.isArray(y)?"array":y===null?"null":typeof y}function Js(y){return typeof y=="object"&&y!==null&&!Array.isArray(y)}function cs(y){return y}function sl(y,g){var z=g.type==="color",V=y.stops&&typeof y.stops[0][0]=="object",$=V||y.property!==void 0,oe=V||!$,me=y.type||(ja(g)?"exponential":"interval");if(z&&(y=Ha({},y),y.stops&&(y.stops=y.stops.map(function(Al){return[Al[0],ha.parse(Al[1])]})),y.default?y.default=ha.parse(y.default):y.default=ha.parse(g.default)),y.colorSpace&&y.colorSpace!=="rgb"&&!el[y.colorSpace])throw new Error("Unknown color space: "+y.colorSpace);var je,xt,Ft;if(me==="exponential")je=Ml;else if(me==="interval")je=zl;else if(me==="categorical"){je=il,xt=Object.create(null);for(var Xt=0,br=y.stops;Xt=y.stops[V-1][0])return y.stops[V-1][1];var $=Vo(y.stops.map(function(oe){return oe[0]}),z);return y.stops[$][1]}function Ml(y,g,z){var V=y.base!==void 0?y.base:1;if(ns(z)!=="number")return ll(y.default,g.default);var $=y.stops.length;if($===1||z<=y.stops[0][0])return y.stops[0][1];if(z>=y.stops[$-1][0])return y.stops[$-1][1];var oe=Vo(y.stops.map(function(br){return br[0]}),z),me=Tl(z,V,y.stops[oe][0],y.stops[oe+1][0]),je=y.stops[oe][1],xt=y.stops[oe+1][1],Ft=Ea[g.type]||cs;if(y.colorSpace&&y.colorSpace!=="rgb"){var Xt=el[y.colorSpace];Ft=function(br,qr){return Xt.reverse(Xt.interpolate(Xt.forward(br),Xt.forward(qr),me))}}return typeof je.evaluate=="function"?{evaluate:function(){for(var qr=[],Pr=arguments.length;Pr--;)qr[Pr]=arguments[Pr];var ai=je.evaluate.apply(void 0,qr),Oi=xt.evaluate.apply(void 0,qr);if(!(ai===void 0||Oi===void 0))return Ft(ai,Oi,me)}}:Ft(je,xt,me)}function Rl(y,g,z){return g.type==="color"?z=ha.parse(z):g.type==="formatted"?z=_n.fromString(z.toString()):g.type==="resolvedImage"?z=Vn.fromString(z.toString()):ns(z)!==g.type&&(g.type!=="enum"||!g.values[z])&&(z=void 0),ll(z,y.default,g.default)}function Tl(y,g,z,V){var $=V-z,oe=y-z;return $===0?0:g===1?oe/$:(Math.pow(g,oe)-1)/(Math.pow(g,$)-1)}var Ll=function(g,z){this.expression=g,this._warningHistory={},this._evaluator=new Na,this._defaultValue=z?ee(z):null,this._enumValues=z&&z.type==="enum"?z.values:null};Ll.prototype.evaluateWithoutErrorHandling=function(g,z,V,$,oe,me){return this._evaluator.globals=g,this._evaluator.feature=z,this._evaluator.featureState=V,this._evaluator.canonical=$,this._evaluator.availableImages=oe||null,this._evaluator.formattedSection=me,this.expression.evaluate(this._evaluator)},Ll.prototype.evaluate=function(g,z,V,$,oe,me){this._evaluator.globals=g,this._evaluator.feature=z||null,this._evaluator.featureState=V||null,this._evaluator.canonical=$,this._evaluator.availableImages=oe||null,this._evaluator.formattedSection=me||null;try{var je=this.expression.evaluate(this._evaluator);if(je==null||typeof je=="number"&&je!==je)return this._defaultValue;if(this._enumValues&&!(je in this._enumValues))throw new Ka("Expected value to be one of "+Object.keys(this._enumValues).map(function(xt){return JSON.stringify(xt)}).join(", ")+", but found "+JSON.stringify(je)+" instead.");return je}catch(xt){return this._warningHistory[xt.message]||(this._warningHistory[xt.message]=!0,typeof console!="undefined"&&console.warn(xt.message)),this._defaultValue}};function ms(y){return Array.isArray(y)&&y.length>0&&typeof y[0]=="string"&&y[0]in is}function Os(y,g){var z=new ho(is,[],g?Q(g):void 0),V=z.parse(y,void 0,void 0,void 0,g&&g.type==="string"?{typeAnnotation:"coerce"}:void 0);return V?bl(new Ll(V,g)):eu(z.errors)}var Xl=function(g,z){this.kind=g,this._styleExpression=z,this.isStateDependent=g!=="constant"&&!as(z.expression)};Xl.prototype.evaluateWithoutErrorHandling=function(g,z,V,$,oe,me){return this._styleExpression.evaluateWithoutErrorHandling(g,z,V,$,oe,me)},Xl.prototype.evaluate=function(g,z,V,$,oe,me){return this._styleExpression.evaluate(g,z,V,$,oe,me)};var Vl=function(g,z,V,$){this.kind=g,this.zoomStops=V,this._styleExpression=z,this.isStateDependent=g!=="camera"&&!as(z.expression),this.interpolationType=$};Vl.prototype.evaluateWithoutErrorHandling=function(g,z,V,$,oe,me){return this._styleExpression.evaluateWithoutErrorHandling(g,z,V,$,oe,me)},Vl.prototype.evaluate=function(g,z,V,$,oe,me){return this._styleExpression.evaluate(g,z,V,$,oe,me)},Vl.prototype.interpolationFactor=function(g,z,V){return this.interpolationType?Hs.interpolationFactor(this.interpolationType,g,z,V):0};function Nl(y,g){if(y=Os(y,g),y.result==="error")return y;var z=y.value.expression,V=fl(z);if(!V&&!Zl(g))return eu([new Ba("","data expressions not supported")]);var $=Ma(z,["zoom"]);if(!$&&!Ul(g))return eu([new Ba("","zoom expressions not supported")]);var oe=q(z);if(!oe&&!$)return eu([new Ba("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(oe instanceof Ba)return eu([oe]);if(oe instanceof Hs&&!ja(g))return eu([new Ba("",'"interpolate" expressions cannot be used with this property')]);if(!oe)return bl(V?new Xl("constant",y.value):new Xl("source",y.value));var me=oe instanceof Hs?oe.interpolation:void 0;return bl(V?new Vl("camera",y.value,oe.labels,me):new Vl("composite",y.value,oe.labels,me))}var le=function(g,z){this._parameters=g,this._specification=z,Ha(this,sl(this._parameters,this._specification))};le.deserialize=function(g){return new le(g._parameters,g._specification)},le.serialize=function(g){return{_parameters:g._parameters,_specification:g._specification}};function w(y,g){if(Js(y))return new le(y,g);if(ms(y)){var z=Nl(y,g);if(z.result==="error")throw new Error(z.value.map(function($){return $.key+": "+$.message}).join(", "));return z.value}else{var V=y;return typeof y=="string"&&g.type==="color"&&(V=ha.parse(y)),{kind:"constant",evaluate:function(){return V}}}}function q(y){var g=null;if(y instanceof Fs)g=q(y.result);else if(y instanceof tl)for(var z=0,V=y.args;zV.maximum?[new gn(g,z,z+" is greater than the maximum value "+V.maximum)]:[]}function mt(y){var g=y.valueSpec,z=Sn(y.value.type),V,$={},oe,me,je=z!=="categorical"&&y.value.property===void 0,xt=!je,Ft=ns(y.value.stops)==="array"&&ns(y.value.stops[0])==="array"&&ns(y.value.stops[0][0])==="object",Xt=ue({key:y.key,value:y.value,valueSpec:y.styleSpec.function,style:y.style,styleSpec:y.styleSpec,objectElementValidators:{stops:br,default:ai}});return z==="identity"&&je&&Xt.push(new gn(y.key,y.value,'missing required property "property"')),z!=="identity"&&!y.value.stops&&Xt.push(new gn(y.key,y.value,'missing required property "stops"')),z==="exponential"&&y.valueSpec.expression&&!ja(y.valueSpec)&&Xt.push(new gn(y.key,y.value,"exponential functions not supported")),y.styleSpec.$version>=8&&(xt&&!Zl(y.valueSpec)?Xt.push(new gn(y.key,y.value,"property functions not supported")):je&&!Ul(y.valueSpec)&&Xt.push(new gn(y.key,y.value,"zoom functions not supported"))),(z==="categorical"||Ft)&&y.value.property===void 0&&Xt.push(new gn(y.key,y.value,'"property" property is required')),Xt;function br(Oi){if(z==="identity")return[new gn(Oi.key,Oi.value,'identity function may not have a "stops" property')];var Wn=[],bn=Oi.value;return Wn=Wn.concat(Ve({key:Oi.key,value:bn,valueSpec:Oi.valueSpec,style:Oi.style,styleSpec:Oi.styleSpec,arrayElementValidator:qr})),ns(bn)==="array"&&bn.length===0&&Wn.push(new gn(Oi.key,bn,"array must have at least one stop")),Wn}function qr(Oi){var Wn=[],bn=Oi.value,bo=Oi.key;if(ns(bn)!=="array")return[new gn(bo,bn,"array expected, "+ns(bn)+" found")];if(bn.length!==2)return[new gn(bo,bn,"array length 2 expected, length "+bn.length+" found")];if(Ft){if(ns(bn[0])!=="object")return[new gn(bo,bn,"object expected, "+ns(bn[0])+" found")];if(bn[0].zoom===void 0)return[new gn(bo,bn,"object stop key must have zoom")];if(bn[0].value===void 0)return[new gn(bo,bn,"object stop key must have value")];if(me&&me>Sn(bn[0].zoom))return[new gn(bo,bn[0].zoom,"stop zoom values must appear in ascending order")];Sn(bn[0].zoom)!==me&&(me=Sn(bn[0].zoom),oe=void 0,$={}),Wn=Wn.concat(ue({key:bo+"[0]",value:bn[0],valueSpec:{zoom:{}},style:Oi.style,styleSpec:Oi.styleSpec,objectElementValidators:{zoom:tt,value:Pr}}))}else Wn=Wn.concat(Pr({key:bo+"[0]",value:bn[0],valueSpec:{},style:Oi.style,styleSpec:Oi.styleSpec},bn));return ms(ao(bn[1]))?Wn.concat([new gn(bo+"[1]",bn[1],"expressions are not allowed in function stops.")]):Wn.concat(Sl({key:bo+"[1]",value:bn[1],valueSpec:g,style:Oi.style,styleSpec:Oi.styleSpec}))}function Pr(Oi,Wn){var bn=ns(Oi.value),bo=Sn(Oi.value),ba=Oi.value!==null?Oi.value:Wn;if(!V)V=bn;else if(bn!==V)return[new gn(Oi.key,ba,bn+" stop domain type must match previous stop domain type "+V)];if(bn!=="number"&&bn!=="string"&&bn!=="boolean")return[new gn(Oi.key,ba,"stop domain value must be a number, string, or boolean")];if(bn!=="number"&&z!=="categorical"){var _o="number expected, "+bn+" found";return Zl(g)&&z===void 0&&(_o+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new gn(Oi.key,ba,_o)]}return z==="categorical"&&bn==="number"&&(!isFinite(bo)||Math.floor(bo)!==bo)?[new gn(Oi.key,ba,"integer expected, found "+bo)]:z!=="categorical"&&bn==="number"&&oe!==void 0&&bo=2&&y[1]!=="$id"&&y[1]!=="$type";case"in":return y.length>=3&&(typeof y[1]!="string"||Array.isArray(y[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return y.length!==3||Array.isArray(y[1])||Array.isArray(y[2]);case"any":case"all":for(var g=0,z=y.slice(1);gg?1:0}function Ge(y){if(!Array.isArray(y))return!1;if(y[0]==="within")return!0;for(var g=1;g"||g==="<="||g===">="?rt(y[1],y[2],g):g==="any"?pt(y.slice(1)):g==="all"?["all"].concat(y.slice(1).map(lt)):g==="none"?["all"].concat(y.slice(1).map(lt).map(fr)):g==="in"?Ht(y[1],y.slice(2)):g==="!in"?fr(Ht(y[1],y.slice(2))):g==="has"?nr(y[1]):g==="!has"?fr(nr(y[1])):g==="within"?y:!0;return z}function rt(y,g,z){switch(y){case"$type":return["filter-type-"+z,g];case"$id":return["filter-id-"+z,g];default:return["filter-"+z,y,g]}}function pt(y){return["any"].concat(y.map(lt))}function Ht(y,g){if(g.length===0)return!1;switch(y){case"$type":return["filter-type-in",["literal",g]];case"$id":return["filter-id-in",["literal",g]];default:return g.length>200&&!g.some(function(z){return typeof z!=typeof g[0]})?["filter-in-large",y,["literal",g.sort(Ne)]]:["filter-in-small",y,["literal",g]]}}function nr(y){switch(y){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",y]}}function fr(y){return["!",y]}function Tr(y){return Vr(ao(y.value))?Bt(Ha({},y,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Ir(y)}function Ir(y){var g=y.value,z=y.key;if(ns(g)!=="array")return[new gn(z,g,"array expected, "+ns(g)+" found")];var V=y.styleSpec,$,oe=[];if(g.length<1)return[new gn(z,g,"filter array must have at least 1 element")];switch(oe=oe.concat(kr({key:z+"[0]",value:g[0],valueSpec:V.filter_operator,style:y.style,styleSpec:y.styleSpec})),Sn(g[0])){case"<":case"<=":case">":case">=":g.length>=2&&Sn(g[1])==="$type"&&oe.push(new gn(z,g,'"$type" cannot be use with operator "'+g[0]+'"'));case"==":case"!=":g.length!==3&&oe.push(new gn(z,g,'filter array for operator "'+g[0]+'" must have 3 elements'));case"in":case"!in":g.length>=2&&($=ns(g[1]),$!=="string"&&oe.push(new gn(z+"[1]",g[1],"string expected, "+$+" found")));for(var me=2;me=Xt[Pr+0]&&V>=Xt[Pr+1])?(me[qr]=!0,oe.push(Ft[qr])):me[qr]=!1}}},sf.prototype._forEachCell=function(y,g,z,V,$,oe,me,je){for(var xt=this._convertToCellCoord(y),Ft=this._convertToCellCoord(g),Xt=this._convertToCellCoord(z),br=this._convertToCellCoord(V),qr=xt;qr<=Xt;qr++)for(var Pr=Ft;Pr<=br;Pr++){var ai=this.d*Pr+qr;if(!(je&&!je(this._convertFromCellCoord(qr),this._convertFromCellCoord(Pr),this._convertFromCellCoord(qr+1),this._convertFromCellCoord(Pr+1)))&&$.call(this,y,g,z,V,ai,oe,me,je))return}},sf.prototype._convertFromCellCoord=function(y){return(y-this.padding)/this.scale},sf.prototype._convertToCellCoord=function(y){return Math.max(0,Math.min(this.d-1,Math.floor(y*this.scale)+this.padding))},sf.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var y=this.cells,g=ju+this.cells.length+1+1,z=0,V=0;V=0)){var br=y[Xt];Ft[Xt]=ef[xt].shallow.indexOf(Xt)>=0?br:Qe(br,g)}y instanceof Error&&(Ft.message=y.message)}if(Ft.$name)throw new Error("$name property is reserved for worker serialization logic.");return xt!=="Object"&&(Ft.$name=xt),Ft}throw new Error("can't serialize object of type "+typeof y)}function st(y){if(y==null||typeof y=="boolean"||typeof y=="number"||typeof y=="string"||y instanceof Boolean||y instanceof Number||y instanceof String||y instanceof Date||y instanceof RegExp||Pe(y)||Xe(y)||ArrayBuffer.isView(y)||y instanceof _f)return y;if(Array.isArray(y))return y.map(st);if(typeof y=="object"){var g=y.$name||"Object",z=ef[g],V=z.klass;if(!V)throw new Error("can't deserialize unregistered class "+g);if(V.deserialize)return V.deserialize(y);for(var $=Object.create(V.prototype),oe=0,me=Object.keys(y);oe=0?xt:st(xt)}}return $}throw new Error("can't deserialize object of type "+typeof y)}var jt=function(){this.first=!0};jt.prototype.update=function(g,z){var V=Math.floor(g);return this.first?(this.first=!1,this.lastIntegerZoom=V,this.lastIntegerZoomTime=0,this.lastZoom=g,this.lastFloorZoom=V,!0):(this.lastFloorZoom>V?(this.lastIntegerZoom=V+1,this.lastIntegerZoomTime=z):this.lastFloorZoom=128&&y<=255},Arabic:function(y){return y>=1536&&y<=1791},"Arabic Supplement":function(y){return y>=1872&&y<=1919},"Arabic Extended-A":function(y){return y>=2208&&y<=2303},"Hangul Jamo":function(y){return y>=4352&&y<=4607},"Unified Canadian Aboriginal Syllabics":function(y){return y>=5120&&y<=5759},Khmer:function(y){return y>=6016&&y<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(y){return y>=6320&&y<=6399},"General Punctuation":function(y){return y>=8192&&y<=8303},"Letterlike Symbols":function(y){return y>=8448&&y<=8527},"Number Forms":function(y){return y>=8528&&y<=8591},"Miscellaneous Technical":function(y){return y>=8960&&y<=9215},"Control Pictures":function(y){return y>=9216&&y<=9279},"Optical Character Recognition":function(y){return y>=9280&&y<=9311},"Enclosed Alphanumerics":function(y){return y>=9312&&y<=9471},"Geometric Shapes":function(y){return y>=9632&&y<=9727},"Miscellaneous Symbols":function(y){return y>=9728&&y<=9983},"Miscellaneous Symbols and Arrows":function(y){return y>=11008&&y<=11263},"CJK Radicals Supplement":function(y){return y>=11904&&y<=12031},"Kangxi Radicals":function(y){return y>=12032&&y<=12255},"Ideographic Description Characters":function(y){return y>=12272&&y<=12287},"CJK Symbols and Punctuation":function(y){return y>=12288&&y<=12351},Hiragana:function(y){return y>=12352&&y<=12447},Katakana:function(y){return y>=12448&&y<=12543},Bopomofo:function(y){return y>=12544&&y<=12591},"Hangul Compatibility Jamo":function(y){return y>=12592&&y<=12687},Kanbun:function(y){return y>=12688&&y<=12703},"Bopomofo Extended":function(y){return y>=12704&&y<=12735},"CJK Strokes":function(y){return y>=12736&&y<=12783},"Katakana Phonetic Extensions":function(y){return y>=12784&&y<=12799},"Enclosed CJK Letters and Months":function(y){return y>=12800&&y<=13055},"CJK Compatibility":function(y){return y>=13056&&y<=13311},"CJK Unified Ideographs Extension A":function(y){return y>=13312&&y<=19903},"Yijing Hexagram Symbols":function(y){return y>=19904&&y<=19967},"CJK Unified Ideographs":function(y){return y>=19968&&y<=40959},"Yi Syllables":function(y){return y>=40960&&y<=42127},"Yi Radicals":function(y){return y>=42128&&y<=42191},"Hangul Jamo Extended-A":function(y){return y>=43360&&y<=43391},"Hangul Syllables":function(y){return y>=44032&&y<=55215},"Hangul Jamo Extended-B":function(y){return y>=55216&&y<=55295},"Private Use Area":function(y){return y>=57344&&y<=63743},"CJK Compatibility Ideographs":function(y){return y>=63744&&y<=64255},"Arabic Presentation Forms-A":function(y){return y>=64336&&y<=65023},"Vertical Forms":function(y){return y>=65040&&y<=65055},"CJK Compatibility Forms":function(y){return y>=65072&&y<=65103},"Small Form Variants":function(y){return y>=65104&&y<=65135},"Arabic Presentation Forms-B":function(y){return y>=65136&&y<=65279},"Halfwidth and Fullwidth Forms":function(y){return y>=65280&&y<=65519}};function hr(y){for(var g=0,z=y;g=65097&&y<=65103)||_t["CJK Compatibility Ideographs"](y)||_t["CJK Compatibility"](y)||_t["CJK Radicals Supplement"](y)||_t["CJK Strokes"](y)||_t["CJK Symbols and Punctuation"](y)&&!(y>=12296&&y<=12305)&&!(y>=12308&&y<=12319)&&y!==12336||_t["CJK Unified Ideographs Extension A"](y)||_t["CJK Unified Ideographs"](y)||_t["Enclosed CJK Letters and Months"](y)||_t["Hangul Compatibility Jamo"](y)||_t["Hangul Jamo Extended-A"](y)||_t["Hangul Jamo Extended-B"](y)||_t["Hangul Jamo"](y)||_t["Hangul Syllables"](y)||_t.Hiragana(y)||_t["Ideographic Description Characters"](y)||_t.Kanbun(y)||_t["Kangxi Radicals"](y)||_t["Katakana Phonetic Extensions"](y)||_t.Katakana(y)&&y!==12540||_t["Halfwidth and Fullwidth Forms"](y)&&y!==65288&&y!==65289&&y!==65293&&!(y>=65306&&y<=65310)&&y!==65339&&y!==65341&&y!==65343&&!(y>=65371&&y<=65503)&&y!==65507&&!(y>=65512&&y<=65519)||_t["Small Form Variants"](y)&&!(y>=65112&&y<=65118)&&!(y>=65123&&y<=65126)||_t["Unified Canadian Aboriginal Syllabics"](y)||_t["Unified Canadian Aboriginal Syllabics Extended"](y)||_t["Vertical Forms"](y)||_t["Yijing Hexagram Symbols"](y)||_t["Yi Syllables"](y)||_t["Yi Radicals"](y))}function Bi(y){return!!(_t["Latin-1 Supplement"](y)&&(y===167||y===169||y===174||y===177||y===188||y===189||y===190||y===215||y===247)||_t["General Punctuation"](y)&&(y===8214||y===8224||y===8225||y===8240||y===8241||y===8251||y===8252||y===8258||y===8263||y===8264||y===8265||y===8273)||_t["Letterlike Symbols"](y)||_t["Number Forms"](y)||_t["Miscellaneous Technical"](y)&&(y>=8960&&y<=8967||y>=8972&&y<=8991||y>=8996&&y<=9e3||y===9003||y>=9085&&y<=9114||y>=9150&&y<=9165||y===9167||y>=9169&&y<=9179||y>=9186&&y<=9215)||_t["Control Pictures"](y)&&y!==9251||_t["Optical Character Recognition"](y)||_t["Enclosed Alphanumerics"](y)||_t["Geometric Shapes"](y)||_t["Miscellaneous Symbols"](y)&&!(y>=9754&&y<=9759)||_t["Miscellaneous Symbols and Arrows"](y)&&(y>=11026&&y<=11055||y>=11088&&y<=11097||y>=11192&&y<=11243)||_t["CJK Symbols and Punctuation"](y)||_t.Katakana(y)||_t["Private Use Area"](y)||_t["CJK Compatibility Forms"](y)||_t["Small Form Variants"](y)||_t["Halfwidth and Fullwidth Forms"](y)||y===8734||y===8756||y===8757||y>=9984&&y<=10087||y>=10102&&y<=10131||y===65532||y===65533)}function fn(y){return!($r(y)||Bi(y))}function mi(y){return _t.Arabic(y)||_t["Arabic Supplement"](y)||_t["Arabic Extended-A"](y)||_t["Arabic Presentation Forms-A"](y)||_t["Arabic Presentation Forms-B"](y)}function zi(y){return y>=1424&&y<=2303||_t["Arabic Presentation Forms-A"](y)||_t["Arabic Presentation Forms-B"](y)}function ji(y,g){return!(!g&&zi(y)||y>=2304&&y<=3583||y>=3840&&y<=4255||_t.Khmer(y))}function pn(y){for(var g=0,z=y;g-1&&(no=wi.error),xo&&xo(y)};function El(){Pl.fire(new nn("pluginStateChange",{pluginStatus:no,pluginURL:Xo}))}var Pl=new Ii,pu=function(){return no},Il=function(y){return y({pluginStatus:no,pluginURL:Xo}),Pl.on("pluginStateChange",y),y},fu=function(y,g,z){if(z===void 0&&(z=!1),no===wi.deferred||no===wi.loading||no===wi.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");Xo=nt.resolveURL(y),no=wi.deferred,xo=g,El(),z||Xu()},Xu=function(){if(no!==wi.deferred||!Xo)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");no=wi.loading,El(),Xo&&Nr({url:Xo},function(y){y?js(y):(no=wi.loaded,El())})},Vu={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return no===wi.loaded||Vu.applyArabicShaping!=null},isLoading:function(){return no===wi.loading},setState:function(g){no=g.pluginStatus,Xo=g.pluginURL},isParsed:function(){return Vu.applyArabicShaping!=null&&Vu.processBidirectionalText!=null&&Vu.processStyledBidirectionalText!=null},getPluginURL:function(){return Xo}},tf=function(){!Vu.isLoading()&&!Vu.isLoaded()&&pu()==="deferred"&&Xu()},ds=function(g,z){this.zoom=g,z?(this.now=z.now,this.fadeDuration=z.fadeDuration,this.zoomHistory=z.zoomHistory,this.transition=z.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new jt,this.transition={})};ds.prototype.isSupportedScript=function(g){return sn(g,Vu.isLoaded())},ds.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},ds.prototype.getCrossfadeParameters=function(){var g=this.zoom,z=g-Math.floor(g),V=this.crossFadingFactor();return g>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:z+(1-z)*V}:{fromScale:.5,toScale:1,t:1-(1-V)*z}};var Wl=function(g,z){this.property=g,this.value=z,this.expression=w(z===void 0?g.specification.default:z,g.specification)};Wl.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},Wl.prototype.possiblyEvaluate=function(g,z,V){return this.property.possiblyEvaluate(this,g,z,V)};var Tu=function(g){this.property=g,this.value=new Wl(g,void 0)};Tu.prototype.transitioned=function(g,z){return new lf(this.property,this.value,z,x({},g.transition,this.transition),g.now)},Tu.prototype.untransitioned=function(){return new lf(this.property,this.value,null,{},0)};var Au=function(g){this._properties=g,this._values=Object.create(g.defaultTransitionablePropertyValues)};Au.prototype.getValue=function(g){return H(this._values[g].value.value)},Au.prototype.setValue=function(g,z){this._values.hasOwnProperty(g)||(this._values[g]=new Tu(this._values[g].property)),this._values[g].value=new Wl(this._values[g].property,z===null?void 0:H(z))},Au.prototype.getTransition=function(g){return H(this._values[g].transition)},Au.prototype.setTransition=function(g,z){this._values.hasOwnProperty(g)||(this._values[g]=new Tu(this._values[g].property)),this._values[g].transition=H(z)||void 0},Au.prototype.serialize=function(){for(var g={},z=0,V=Object.keys(this._values);zthis.end)return this.prior=null,oe;if(this.value.isDataDriven())return this.prior=null,oe;if($me.zoomHistory.lastIntegerZoom?{from:V,to:$}:{from:oe,to:$}},g.prototype.interpolate=function(V){return V},g}(qt),Qr=function(g){this.specification=g};Qr.prototype.possiblyEvaluate=function(g,z,V,$){if(g.value!==void 0)if(g.expression.kind==="constant"){var oe=g.expression.evaluate(z,null,{},V,$);return this._calculate(oe,oe,oe,z)}else return this._calculate(g.expression.evaluate(new ds(Math.floor(z.zoom-1),z)),g.expression.evaluate(new ds(Math.floor(z.zoom),z)),g.expression.evaluate(new ds(Math.floor(z.zoom+1),z)),z)},Qr.prototype._calculate=function(g,z,V,$){var oe=$.zoom;return oe>$.zoomHistory.lastIntegerZoom?{from:g,to:z}:{from:V,to:z}},Qr.prototype.interpolate=function(g){return g};var yi=function(g){this.specification=g};yi.prototype.possiblyEvaluate=function(g,z,V,$){return!!g.expression.evaluate(z,null,{},V,$)},yi.prototype.interpolate=function(){return!1};var ci=function(g){this.properties=g,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(var z in g){var V=g[z];V.specification.overridable&&this.overridableProperties.push(z);var $=this.defaultPropertyValues[z]=new Wl(V,void 0),oe=this.defaultTransitionablePropertyValues[z]=new Tu(V);this.defaultTransitioningPropertyValues[z]=oe.untransitioned(),this.defaultPossiblyEvaluatedValues[z]=$.possiblyEvaluate({})}};Z("DataDrivenProperty",qt),Z("DataConstantProperty",Be),Z("CrossFadedDataDrivenProperty",ar),Z("CrossFadedProperty",Qr),Z("ColorRampProperty",yi);var vi="-transition",on=function(y){function g(z,V){if(y.call(this),this.id=z.id,this.type=z.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},z.type!=="custom"&&(z=z,this.metadata=z.metadata,this.minzoom=z.minzoom,this.maxzoom=z.maxzoom,z.type!=="background"&&(this.source=z.source,this.sourceLayer=z["source-layer"],this.filter=z.filter),V.layout&&(this._unevaluatedLayout=new Mf(V.layout)),V.paint)){this._transitionablePaint=new Au(V.paint);for(var $ in z.paint)this.setPaintProperty($,z.paint[$],{validate:!1});for(var oe in z.layout)this.setLayoutProperty(oe,z.layout[oe],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new fc(V.paint)}}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},g.prototype.getLayoutProperty=function(V){return V==="visibility"?this.visibility:this._unevaluatedLayout.getValue(V)},g.prototype.setLayoutProperty=function(V,$,oe){if(oe===void 0&&(oe={}),$!=null){var me="layers."+this.id+".layout."+V;if(this._validate($u,me,V,$,oe))return}if(V==="visibility"){this.visibility=$;return}this._unevaluatedLayout.setValue(V,$)},g.prototype.getPaintProperty=function(V){return U(V,vi)?this._transitionablePaint.getTransition(V.slice(0,-vi.length)):this._transitionablePaint.getValue(V)},g.prototype.setPaintProperty=function(V,$,oe){if(oe===void 0&&(oe={}),$!=null){var me="layers."+this.id+".paint."+V;if(this._validate(Hu,me,V,$,oe))return!1}if(U(V,vi))return this._transitionablePaint.setTransition(V.slice(0,-vi.length),$||void 0),!1;var je=this._transitionablePaint._values[V],xt=je.property.specification["property-type"]==="cross-faded-data-driven",Ft=je.value.isDataDriven(),Xt=je.value;this._transitionablePaint.setValue(V,$),this._handleSpecialPaintPropertyUpdate(V);var br=this._transitionablePaint._values[V].value,qr=br.isDataDriven();return qr||Ft||xt||this._handleOverridablePaintPropertyUpdate(V,Xt,br)},g.prototype._handleSpecialPaintPropertyUpdate=function(V){},g.prototype._handleOverridablePaintPropertyUpdate=function(V,$,oe){return!1},g.prototype.isHidden=function(V){return this.minzoom&&V=this.maxzoom?!0:this.visibility==="none"},g.prototype.updateTransitions=function(V){this._transitioningPaint=this._transitionablePaint.transitioned(V,this._transitioningPaint)},g.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},g.prototype.recalculate=function(V,$){V.getCrossfadeParameters&&(this._crossfadeParameters=V.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(V,void 0,$)),this.paint=this._transitioningPaint.possiblyEvaluate(V,void 0,$)},g.prototype.serialize=function(){var V={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(V.layout=V.layout||{},V.layout.visibility=this.visibility),j(V,function($,oe){return $!==void 0&&!(oe==="layout"&&!Object.keys($).length)&&!(oe==="paint"&&!Object.keys($).length)})},g.prototype._validate=function(V,$,oe,me,je){return je===void 0&&(je={}),je&&je.validate===!1?!1:Ku(this,V.call(iu,{key:$,layerType:this.type,objectKey:oe,value:me,styleSpec:Wi,style:{glyphs:!0,sprite:!0}}))},g.prototype.is3D=function(){return!1},g.prototype.isTileClipped=function(){return!1},g.prototype.hasOffscreenPass=function(){return!1},g.prototype.resize=function(){},g.prototype.isStateDependent=function(){for(var V in this.paint._values){var $=this.paint.get(V);if(!(!($ instanceof pf)||!Zl($.property.specification))&&($.value.kind==="source"||$.value.kind==="composite")&&$.value.isStateDependent)return!0}return!1},g}(Ii),Bn={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},Ln=function(g,z){this._structArray=g,this._pos1=z*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},wn=128,Ls=5,ua=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};ua.serialize=function(g,z){return g._trim(),z&&(g.isTransferred=!0,z.push(g.arrayBuffer)),{length:g.length,arrayBuffer:g.arrayBuffer}},ua.deserialize=function(g){var z=Object.create(this.prototype);return z.arrayBuffer=g.arrayBuffer,z.length=g.length,z.capacity=g.arrayBuffer.byteLength/z.bytesPerElement,z._refreshViews(),z},ua.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},ua.prototype.clear=function(){this.length=0},ua.prototype.resize=function(g){this.reserve(g),this.length=g},ua.prototype.reserve=function(g){if(g>this.capacity){this.capacity=Math.max(g,Math.floor(this.capacity*Ls),wn),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var z=this.uint8;this._refreshViews(),z&&this.uint8.set(z)}},ua.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};function Hn(y,g){g===void 0&&(g=1);var z=0,V=0,$=y.map(function(me){var je=qi(me.type),xt=z=Wr(z,Math.max(g,je)),Ft=me.components||1;return V=Math.max(V,je),z+=je*Ft,{name:me.name,type:me.type,components:Ft,offset:xt}}),oe=Wr(z,Math.max(V,g));return{members:$,size:oe,alignment:g}}function qi(y){return Bn[y].BYTES_PER_ELEMENT}function Wr(y,g){return Math.ceil(y/g)*g}var xi=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$){var oe=this.length;return this.resize(oe+1),this.emplace(oe,V,$)},g.prototype.emplace=function(V,$,oe){var me=V*2;return this.int16[me+0]=$,this.int16[me+1]=oe,V},g}(ua);xi.prototype.bytesPerElement=4,Z("StructArrayLayout2i4",xi);var dn=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me){var je=this.length;return this.resize(je+1),this.emplace(je,V,$,oe,me)},g.prototype.emplace=function(V,$,oe,me,je){var xt=V*4;return this.int16[xt+0]=$,this.int16[xt+1]=oe,this.int16[xt+2]=me,this.int16[xt+3]=je,V},g}(ua);dn.prototype.bytesPerElement=8,Z("StructArrayLayout4i8",dn);var En=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt){var Ft=this.length;return this.resize(Ft+1),this.emplace(Ft,V,$,oe,me,je,xt)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft){var Xt=V*6;return this.int16[Xt+0]=$,this.int16[Xt+1]=oe,this.int16[Xt+2]=me,this.int16[Xt+3]=je,this.int16[Xt+4]=xt,this.int16[Xt+5]=Ft,V},g}(ua);En.prototype.bytesPerElement=12,Z("StructArrayLayout2i4i12",En);var Zi=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt){var Ft=this.length;return this.resize(Ft+1),this.emplace(Ft,V,$,oe,me,je,xt)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft){var Xt=V*4,br=V*8;return this.int16[Xt+0]=$,this.int16[Xt+1]=oe,this.uint8[br+4]=me,this.uint8[br+5]=je,this.uint8[br+6]=xt,this.uint8[br+7]=Ft,V},g}(ua);Zi.prototype.bytesPerElement=8,Z("StructArrayLayout2i4ub8",Zi);var ga=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$){var oe=this.length;return this.resize(oe+1),this.emplace(oe,V,$)},g.prototype.emplace=function(V,$,oe){var me=V*2;return this.float32[me+0]=$,this.float32[me+1]=oe,V},g}(ua);ga.prototype.bytesPerElement=8,Z("StructArrayLayout2f8",ga);var Kn=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt,Ft,Xt,br,qr){var Pr=this.length;return this.resize(Pr+1),this.emplace(Pr,V,$,oe,me,je,xt,Ft,Xt,br,qr)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr){var ai=V*10;return this.uint16[ai+0]=$,this.uint16[ai+1]=oe,this.uint16[ai+2]=me,this.uint16[ai+3]=je,this.uint16[ai+4]=xt,this.uint16[ai+5]=Ft,this.uint16[ai+6]=Xt,this.uint16[ai+7]=br,this.uint16[ai+8]=qr,this.uint16[ai+9]=Pr,V},g}(ua);Kn.prototype.bytesPerElement=20,Z("StructArrayLayout10ui20",Kn);var hs=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai){var Oi=this.length;return this.resize(Oi+1),this.emplace(Oi,V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai,Oi){var Wn=V*12;return this.int16[Wn+0]=$,this.int16[Wn+1]=oe,this.int16[Wn+2]=me,this.int16[Wn+3]=je,this.uint16[Wn+4]=xt,this.uint16[Wn+5]=Ft,this.uint16[Wn+6]=Xt,this.uint16[Wn+7]=br,this.int16[Wn+8]=qr,this.int16[Wn+9]=Pr,this.int16[Wn+10]=ai,this.int16[Wn+11]=Oi,V},g}(ua);hs.prototype.bytesPerElement=24,Z("StructArrayLayout4i4ui4i24",hs);var Ji=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe){var me=this.length;return this.resize(me+1),this.emplace(me,V,$,oe)},g.prototype.emplace=function(V,$,oe,me){var je=V*3;return this.float32[je+0]=$,this.float32[je+1]=oe,this.float32[je+2]=me,V},g}(ua);Ji.prototype.bytesPerElement=12,Z("StructArrayLayout3f12",Ji);var Ui=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V){var $=this.length;return this.resize($+1),this.emplace($,V)},g.prototype.emplace=function(V,$){var oe=V*1;return this.uint32[oe+0]=$,V},g}(ua);Ui.prototype.bytesPerElement=4,Z("StructArrayLayout1ul4",Ui);var ro=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt,Ft,Xt,br){var qr=this.length;return this.resize(qr+1),this.emplace(qr,V,$,oe,me,je,xt,Ft,Xt,br)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft,Xt,br,qr){var Pr=V*10,ai=V*5;return this.int16[Pr+0]=$,this.int16[Pr+1]=oe,this.int16[Pr+2]=me,this.int16[Pr+3]=je,this.int16[Pr+4]=xt,this.int16[Pr+5]=Ft,this.uint32[ai+3]=Xt,this.uint16[Pr+8]=br,this.uint16[Pr+9]=qr,V},g}(ua);ro.prototype.bytesPerElement=20,Z("StructArrayLayout6i1ul2ui20",ro);var na=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt){var Ft=this.length;return this.resize(Ft+1),this.emplace(Ft,V,$,oe,me,je,xt)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft){var Xt=V*6;return this.int16[Xt+0]=$,this.int16[Xt+1]=oe,this.int16[Xt+2]=me,this.int16[Xt+3]=je,this.int16[Xt+4]=xt,this.int16[Xt+5]=Ft,V},g}(ua);na.prototype.bytesPerElement=12,Z("StructArrayLayout2i2i2i12",na);var On=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je){var xt=this.length;return this.resize(xt+1),this.emplace(xt,V,$,oe,me,je)},g.prototype.emplace=function(V,$,oe,me,je,xt){var Ft=V*4,Xt=V*8;return this.float32[Ft+0]=$,this.float32[Ft+1]=oe,this.float32[Ft+2]=me,this.int16[Xt+6]=je,this.int16[Xt+7]=xt,V},g}(ua);On.prototype.bytesPerElement=16,Z("StructArrayLayout2f1f2i16",On);var In=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me){var je=this.length;return this.resize(je+1),this.emplace(je,V,$,oe,me)},g.prototype.emplace=function(V,$,oe,me,je){var xt=V*12,Ft=V*3;return this.uint8[xt+0]=$,this.uint8[xt+1]=oe,this.float32[Ft+1]=me,this.float32[Ft+2]=je,V},g}(ua);In.prototype.bytesPerElement=12,Z("StructArrayLayout2ub2f12",In);var Va=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe){var me=this.length;return this.resize(me+1),this.emplace(me,V,$,oe)},g.prototype.emplace=function(V,$,oe,me){var je=V*3;return this.uint16[je+0]=$,this.uint16[je+1]=oe,this.uint16[je+2]=me,V},g}(ua);Va.prototype.bytesPerElement=6,Z("StructArrayLayout3ui6",Va);var _s=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai,Oi,Wn,bn,bo,ba){var _o=this.length;return this.resize(_o+1),this.emplace(_o,V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai,Oi,Wn,bn,bo,ba)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai,Oi,Wn,bn,bo,ba,_o){var Uo=V*24,Zs=V*12,Cl=V*48;return this.int16[Uo+0]=$,this.int16[Uo+1]=oe,this.uint16[Uo+2]=me,this.uint16[Uo+3]=je,this.uint32[Zs+2]=xt,this.uint32[Zs+3]=Ft,this.uint32[Zs+4]=Xt,this.uint16[Uo+10]=br,this.uint16[Uo+11]=qr,this.uint16[Uo+12]=Pr,this.float32[Zs+7]=ai,this.float32[Zs+8]=Oi,this.uint8[Cl+36]=Wn,this.uint8[Cl+37]=bn,this.uint8[Cl+38]=bo,this.uint32[Zs+10]=ba,this.int16[Uo+22]=_o,V},g}(ua);_s.prototype.bytesPerElement=48,Z("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",_s);var ul=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai,Oi,Wn,bn,bo,ba,_o,Uo,Zs,Cl,Al,hu,Kl,lu,Bu,du,gu){var uf=this.length;return this.resize(uf+1),this.emplace(uf,V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai,Oi,Wn,bn,bo,ba,_o,Uo,Zs,Cl,Al,hu,Kl,lu,Bu,du,gu)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai,Oi,Wn,bn,bo,ba,_o,Uo,Zs,Cl,Al,hu,Kl,lu,Bu,du,gu,uf){var Ru=V*34,If=V*17;return this.int16[Ru+0]=$,this.int16[Ru+1]=oe,this.int16[Ru+2]=me,this.int16[Ru+3]=je,this.int16[Ru+4]=xt,this.int16[Ru+5]=Ft,this.int16[Ru+6]=Xt,this.int16[Ru+7]=br,this.uint16[Ru+8]=qr,this.uint16[Ru+9]=Pr,this.uint16[Ru+10]=ai,this.uint16[Ru+11]=Oi,this.uint16[Ru+12]=Wn,this.uint16[Ru+13]=bn,this.uint16[Ru+14]=bo,this.uint16[Ru+15]=ba,this.uint16[Ru+16]=_o,this.uint16[Ru+17]=Uo,this.uint16[Ru+18]=Zs,this.uint16[Ru+19]=Cl,this.uint16[Ru+20]=Al,this.uint16[Ru+21]=hu,this.uint16[Ru+22]=Kl,this.uint32[If+12]=lu,this.float32[If+13]=Bu,this.float32[If+14]=du,this.float32[If+15]=gu,this.float32[If+16]=uf,V},g}(ua);ul.prototype.bytesPerElement=68,Z("StructArrayLayout8i15ui1ul4f68",ul);var Qn=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V){var $=this.length;return this.resize($+1),this.emplace($,V)},g.prototype.emplace=function(V,$){var oe=V*1;return this.float32[oe+0]=$,V},g}(ua);Qn.prototype.bytesPerElement=4,Z("StructArrayLayout1f4",Qn);var Mo=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe){var me=this.length;return this.resize(me+1),this.emplace(me,V,$,oe)},g.prototype.emplace=function(V,$,oe,me){var je=V*3;return this.int16[je+0]=$,this.int16[je+1]=oe,this.int16[je+2]=me,V},g}(ua);Mo.prototype.bytesPerElement=6,Z("StructArrayLayout3i6",Mo);var nl=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe){var me=this.length;return this.resize(me+1),this.emplace(me,V,$,oe)},g.prototype.emplace=function(V,$,oe,me){var je=V*2,xt=V*4;return this.uint32[je+0]=$,this.uint16[xt+2]=oe,this.uint16[xt+3]=me,V},g}(ua);nl.prototype.bytesPerElement=8,Z("StructArrayLayout1ul2ui8",nl);var pl=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$){var oe=this.length;return this.resize(oe+1),this.emplace(oe,V,$)},g.prototype.emplace=function(V,$,oe){var me=V*2;return this.uint16[me+0]=$,this.uint16[me+1]=oe,V},g}(ua);pl.prototype.bytesPerElement=4,Z("StructArrayLayout2ui4",pl);var Dl=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V){var $=this.length;return this.resize($+1),this.emplace($,V)},g.prototype.emplace=function(V,$){var oe=V*1;return this.uint16[oe+0]=$,V},g}(ua);Dl.prototype.bytesPerElement=2,Z("StructArrayLayout1ui2",Dl);var Fu=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me){var je=this.length;return this.resize(je+1),this.emplace(je,V,$,oe,me)},g.prototype.emplace=function(V,$,oe,me,je){var xt=V*4;return this.float32[xt+0]=$,this.float32[xt+1]=oe,this.float32[xt+2]=me,this.float32[xt+3]=je,V},g}(ua);Fu.prototype.bytesPerElement=16,Z("StructArrayLayout4f16",Fu);var vf=function(y){function g(){y.apply(this,arguments)}y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g;var z={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return z.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},z.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},z.x1.get=function(){return this._structArray.int16[this._pos2+2]},z.y1.get=function(){return this._structArray.int16[this._pos2+3]},z.x2.get=function(){return this._structArray.int16[this._pos2+4]},z.y2.get=function(){return this._structArray.int16[this._pos2+5]},z.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},z.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},z.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},z.anchorPoint.get=function(){return new l(this.anchorPointX,this.anchorPointY)},Object.defineProperties(g.prototype,z),g}(Ln);vf.prototype.size=20;var Ql=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.get=function(V){return new vf(this,V)},g}(ro);Z("CollisionBoxArray",Ql);var Ef=function(y){function g(){y.apply(this,arguments)}y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g;var z={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return z.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},z.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},z.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},z.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},z.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},z.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},z.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},z.segment.get=function(){return this._structArray.uint16[this._pos2+10]},z.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},z.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},z.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},z.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},z.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},z.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},z.placedOrientation.set=function(V){this._structArray.uint8[this._pos1+37]=V},z.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},z.hidden.set=function(V){this._structArray.uint8[this._pos1+38]=V},z.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},z.crossTileID.set=function(V){this._structArray.uint32[this._pos4+10]=V},z.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(g.prototype,z),g}(Ln);Ef.prototype.size=48;var Cu=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.get=function(V){return new Ef(this,V)},g}(_s);Z("PlacedSymbolArray",Cu);var gf=function(y){function g(){y.apply(this,arguments)}y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g;var z={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return z.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},z.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},z.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},z.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},z.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},z.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},z.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},z.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},z.key.get=function(){return this._structArray.uint16[this._pos2+8]},z.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},z.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},z.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},z.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},z.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},z.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},z.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},z.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},z.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},z.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},z.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},z.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},z.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},z.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},z.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},z.crossTileID.set=function(V){this._structArray.uint32[this._pos4+12]=V},z.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},z.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},z.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},z.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(g.prototype,z),g}(Ln);gf.prototype.size=68;var xf=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.get=function(V){return new gf(this,V)},g}(ul);Z("SymbolInstanceArray",xf);var Cf=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.getoffsetX=function(V){return this.float32[V*1+0]},g}(Qn);Z("GlyphOffsetArray",Cf);var Gu=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.getx=function(V){return this.int16[V*3+0]},g.prototype.gety=function(V){return this.int16[V*3+1]},g.prototype.gettileUnitDistanceFromAnchor=function(V){return this.int16[V*3+2]},g}(Mo);Z("SymbolLineVertexArray",Gu);var cf=function(y){function g(){y.apply(this,arguments)}y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g;var z={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return z.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},z.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},z.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(g.prototype,z),g}(Ln);cf.prototype.size=8;var mf=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.get=function(V){return new cf(this,V)},g}(nl);Z("FeatureIndexArray",mf);var Fl=Hn([{name:"a_pos",components:2,type:"Int16"}],4),bf=Fl.members,cu=function(g){g===void 0&&(g=[]),this.segments=g};cu.prototype.prepareSegment=function(g,z,V,$){var oe=this.segments[this.segments.length-1];return g>cu.MAX_VERTEX_ARRAY_LENGTH&&re("Max vertices per segment is "+cu.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+g),(!oe||oe.vertexLength+g>cu.MAX_VERTEX_ARRAY_LENGTH||oe.sortKey!==$)&&(oe={vertexOffset:z.length,primitiveOffset:V.length,vertexLength:0,primitiveLength:0},$!==void 0&&(oe.sortKey=$),this.segments.push(oe)),oe},cu.prototype.get=function(){return this.segments},cu.prototype.destroy=function(){for(var g=0,z=this.segments;g>>16)*xt&65535)<<16)&4294967295,Xt=Xt<<15|Xt>>>17,Xt=(Xt&65535)*Ft+(((Xt>>>16)*Ft&65535)<<16)&4294967295,me^=Xt,me=me<<13|me>>>19,je=(me&65535)*5+(((me>>>16)*5&65535)<<16)&4294967295,me=(je&65535)+27492+(((je>>>16)+58964&65535)<<16);switch(Xt=0,$){case 3:Xt^=(z.charCodeAt(br+2)&255)<<16;case 2:Xt^=(z.charCodeAt(br+1)&255)<<8;case 1:Xt^=z.charCodeAt(br)&255,Xt=(Xt&65535)*xt+(((Xt>>>16)*xt&65535)<<16)&4294967295,Xt=Xt<<15|Xt>>>17,Xt=(Xt&65535)*Ft+(((Xt>>>16)*Ft&65535)<<16)&4294967295,me^=Xt}return me^=z.length,me^=me>>>16,me=(me&65535)*2246822507+(((me>>>16)*2246822507&65535)<<16)&4294967295,me^=me>>>13,me=(me&65535)*3266489909+(((me>>>16)*3266489909&65535)<<16)&4294967295,me^=me>>>16,me>>>0}y.exports=g}),O=a(function(y){function g(z,V){for(var $=z.length,oe=V^$,me=0,je;$>=4;)je=z.charCodeAt(me)&255|(z.charCodeAt(++me)&255)<<8|(z.charCodeAt(++me)&255)<<16|(z.charCodeAt(++me)&255)<<24,je=(je&65535)*1540483477+(((je>>>16)*1540483477&65535)<<16),je^=je>>>24,je=(je&65535)*1540483477+(((je>>>16)*1540483477&65535)<<16),oe=(oe&65535)*1540483477+(((oe>>>16)*1540483477&65535)<<16)^je,$-=4,++me;switch($){case 3:oe^=(z.charCodeAt(me+2)&255)<<16;case 2:oe^=(z.charCodeAt(me+1)&255)<<8;case 1:oe^=z.charCodeAt(me)&255,oe=(oe&65535)*1540483477+(((oe>>>16)*1540483477&65535)<<16)}return oe^=oe>>>13,oe=(oe&65535)*1540483477+(((oe>>>16)*1540483477&65535)<<16),oe^=oe>>>15,oe>>>0}y.exports=g}),K=J,_e=J,ne=O;K.murmur3=_e,K.murmur2=ne;var Le=function(){this.ids=[],this.positions=[],this.indexed=!1};Le.prototype.add=function(g,z,V,$){this.ids.push(kt(g)),this.positions.push(z,V,$)},Le.prototype.getPositions=function(g){for(var z=kt(g),V=0,$=this.ids.length-1;V<$;){var oe=V+$>>1;this.ids[oe]>=z?$=oe:V=oe+1}for(var me=[];this.ids[V]===z;){var je=this.positions[3*V],xt=this.positions[3*V+1],Ft=this.positions[3*V+2];me.push({index:je,start:xt,end:Ft}),V++}return me},Le.serialize=function(g,z){var V=new Float64Array(g.ids),$=new Uint32Array(g.positions);return dr(V,$,0,V.length-1),z&&z.push(V.buffer,$.buffer),{ids:V,positions:$}},Le.deserialize=function(g){var z=new Le;return z.ids=g.ids,z.positions=g.positions,z.indexed=!0,z};var Ze=Math.pow(2,53)-1;function kt(y){var g=+y;return!isNaN(g)&&g<=Ze?g:K(String(y))}function dr(y,g,z,V){for(;z>1],oe=z-1,me=V+1;;){do oe++;while(y[oe]<$);do me--;while(y[me]>$);if(oe>=me)break;Mr(y,oe,me),Mr(g,3*oe,3*me),Mr(g,3*oe+1,3*me+1),Mr(g,3*oe+2,3*me+2)}me-zme.x+1||xtme.y+1)&&re("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return z}function ru(y,g){return{type:y.type,id:y.id,properties:y.properties,geometry:g?Zo(y):[]}}function yu(y,g,z,V,$){y.emplaceBack(g*2+(V+1)/2,z*2+($+1)/2)}var Du=function(g){this.zoom=g.zoom,this.overscaling=g.overscaling,this.layers=g.layers,this.layerIds=this.layers.map(function(z){return z.id}),this.index=g.index,this.hasPattern=!1,this.layoutVertexArray=new xi,this.indexArray=new Va,this.segments=new cu,this.programConfigurations=new Yi(g.layers,g.zoom),this.stateDependentLayerIds=this.layers.filter(function(z){return z.isStateDependent()}).map(function(z){return z.id})};Du.prototype.populate=function(g,z,V){var $=this.layers[0],oe=[],me=null;$.type==="circle"&&(me=$.layout.get("circle-sort-key"));for(var je=0,xt=g;je=An||qr<0||qr>=An)){var Pr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,g.sortKey),ai=Pr.vertexLength;yu(this.layoutVertexArray,br,qr,-1,-1),yu(this.layoutVertexArray,br,qr,1,-1),yu(this.layoutVertexArray,br,qr,1,1),yu(this.layoutVertexArray,br,qr,-1,1),this.indexArray.emplaceBack(ai,ai+1,ai+2),this.indexArray.emplaceBack(ai,ai+3,ai+2),Pr.vertexLength+=4,Pr.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,g,V,{},$)},Z("CircleBucket",Du,{omit:["layers"]});function vu(y,g){for(var z=0;z=3){for(var oe=0;oe<$.length;oe++)if(Sd(y,$[oe]))return!0}if(wd(y,$,z))return!0}return!1}function wd(y,g,z){if(y.length>1){if(Td(y,g))return!0;for(var V=0;V1?y.distSqr(z):y.distSqr(z.sub(g)._mult($)._add(g))}function vv(y,g){for(var z=!1,V,$,oe,me=0;meg.y!=oe.y>g.y&&g.x<(oe.x-$.x)*(g.y-$.y)/(oe.y-$.y)+$.x&&(z=!z)}return z}function Sd(y,g){for(var z=!1,V=0,$=y.length-1;Vg.y!=me.y>g.y&&g.x<(me.x-oe.x)*(g.y-oe.y)/(me.y-oe.y)+oe.x&&(z=!z)}return z}function mv(y,g,z,V,$){for(var oe=0,me=y;oe=je.x&&$>=je.y)return!0}var xt=[new l(g,z),new l(g,$),new l(V,$),new l(V,z)];if(y.length>2)for(var Ft=0,Xt=xt;Ft$.x&&g.x>$.x||y.y$.y&&g.y>$.y)return!1;var oe=ae(y,g,z[0]);return oe!==ae(y,g,z[1])||oe!==ae(y,g,z[2])||oe!==ae(y,g,z[3])}function Md(y,g,z){var V=g.paint.get(y).value;return V.kind==="constant"?V.value:z.programConfigurations.get(g.id).getMaxValue(y)}function Pp(y){return Math.sqrt(y[0]*y[0]+y[1]*y[1])}function Jp(y,g,z,V,$){if(!g[0]&&!g[1])return y;var oe=l.convert(g)._mult($);z==="viewport"&&oe._rotate(-V);for(var me=[],je=0;je0&&(oe=1/Math.sqrt(oe)),y[0]=g[0]*oe,y[1]=g[1]*oe,y[2]=g[2]*oe,y}function XO(y,g){return y[0]*g[0]+y[1]*g[1]+y[2]*g[2]}function ZO(y,g,z){var V=g[0],$=g[1],oe=g[2],me=z[0],je=z[1],xt=z[2];return y[0]=$*xt-oe*je,y[1]=oe*me-V*xt,y[2]=V*je-$*me,y}function YO(y,g,z){var V=g[0],$=g[1],oe=g[2];return y[0]=V*z[0]+$*z[3]+oe*z[6],y[1]=V*z[1]+$*z[4]+oe*z[7],y[2]=V*z[2]+$*z[5]+oe*z[8],y}var KO=oy,UQ=function(){var y=ay();return function(g,z,V,$,oe,me){var je,xt;for(z||(z=3),V||(V=0),$?xt=Math.min($*z+V,g.length):xt=g.length,je=V;jey.width||$.height>y.height||z.x>y.width-$.width||z.y>y.height-$.height)throw new RangeError("out of range source coordinates for image copy");if($.width>g.width||$.height>g.height||V.x>g.width-$.width||V.y>g.height-$.height)throw new RangeError("out of range destination coordinates for image copy");for(var me=y.data,je=g.data,xt=0;xt<$.height;xt++)for(var Ft=((z.y+xt)*y.width+z.x)*oe,Xt=((V.y+xt)*g.width+V.x)*oe,br=0;br<$.width*oe;br++)je[Xt+br]=me[Ft+br];return g}var Rp=function(g,z){kd(this,g,1,z)};Rp.prototype.resize=function(g){Cw(this,g,1)},Rp.prototype.clone=function(){return new Rp({width:this.width,height:this.height},new Uint8Array(this.data))},Rp.copy=function(g,z,V,$,oe){Lw(g,z,V,$,oe,1)};var Ph=function(g,z){kd(this,g,4,z)};Ph.prototype.resize=function(g){Cw(this,g,4)},Ph.prototype.replace=function(g,z){z?this.data.set(g):g instanceof Uint8ClampedArray?this.data=new Uint8Array(g.buffer):this.data=g},Ph.prototype.clone=function(){return new Ph({width:this.width,height:this.height},new Uint8Array(this.data))},Ph.copy=function(g,z,V,$,oe){Lw(g,z,V,$,oe,4)},Z("AlphaImage",Rp),Z("RGBAImage",Ph);var Gx=new ci({"heatmap-radius":new qt(Wi.paint_heatmap["heatmap-radius"]),"heatmap-weight":new qt(Wi.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Be(Wi.paint_heatmap["heatmap-intensity"]),"heatmap-color":new yi(Wi.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Be(Wi.paint_heatmap["heatmap-opacity"])}),A1={paint:Gx};function Hx(y){var g={},z=y.resolution||256,V=y.clips?y.clips.length:1,$=y.image||new Ph({width:z,height:V}),oe=function(bo,ba,_o){g[y.evaluationKey]=_o;var Uo=y.expression.evaluate(g);$.data[bo+ba+0]=Math.floor(Uo.r*255/Uo.a),$.data[bo+ba+1]=Math.floor(Uo.g*255/Uo.a),$.data[bo+ba+2]=Math.floor(Uo.b*255/Uo.a),$.data[bo+ba+3]=Math.floor(Uo.a*255)};if(y.clips)for(var Ft=0,Xt=0;Ft80*z){je=Ft=y[0],xt=Xt=y[1];for(var ai=z;ai<$;ai+=z)br=y[ai],qr=y[ai+1],brFt&&(Ft=br),qr>Xt&&(Xt=qr);Pr=Math.max(Ft-je,Xt-xt),Pr=Pr!==0?1/Pr:0}return Wx(oe,me,z,je,xt,Pr),me}function Iw(y,g,z,V,$){var oe,me;if($===hM(y,g,z,V)>0)for(oe=g;oe=g;oe-=V)me=EC(oe,y[oe],y[oe+1],me);return me&&Xx(me,me.next)&&(Kx(me),me=me.next),me}function sy(y,g){if(!y)return y;g||(g=y);var z=y,V;do if(V=!1,!z.steiner&&(Xx(z,z.next)||Jc(z.prev,z,z.next)===0)){if(Kx(z),z=g=z.prev,z===z.next)break;V=!0}else z=z.next;while(V||z!==g);return g}function Wx(y,g,z,V,$,oe,me){if(y){!me&&oe&&Rw(y,V,$,oe);for(var je=y,xt,Ft;y.prev!==y.next;){if(xt=y.prev,Ft=y.next,oe?AC(y,V,$,oe):TC(y)){g.push(xt.i/z),g.push(y.i/z),g.push(Ft.i/z),Kx(y),y=Ft.next,je=Ft.next;continue}if(y=Ft,y===je){me?me===1?(y=jx(sy(y),g,z),Wx(y,g,z,V,$,oe,2)):me===2&&d0(y,g,z,V,$,oe):Wx(sy(y),g,z,V,$,oe,1);break}}}}function TC(y){var g=y.prev,z=y,V=y.next;if(Jc(g,z,V)>=0)return!1;for(var $=y.next.next;$!==y.prev;){if(uy(g.x,g.y,z.x,z.y,V.x,V.y,$.x,$.y)&&Jc($.prev,$,$.next)>=0)return!1;$=$.next}return!0}function AC(y,g,z,V){var $=y.prev,oe=y,me=y.next;if(Jc($,oe,me)>=0)return!1;for(var je=$.xoe.x?$.x>me.x?$.x:me.x:oe.x>me.x?oe.x:me.x,Xt=$.y>oe.y?$.y>me.y?$.y:me.y:oe.y>me.y?oe.y:me.y,br=lM(je,xt,g,z,V),qr=lM(Ft,Xt,g,z,V),Pr=y.prevZ,ai=y.nextZ;Pr&&Pr.z>=br&&ai&&ai.z<=qr;){if(Pr!==y.prev&&Pr!==y.next&&uy($.x,$.y,oe.x,oe.y,me.x,me.y,Pr.x,Pr.y)&&Jc(Pr.prev,Pr,Pr.next)>=0||(Pr=Pr.prevZ,ai!==y.prev&&ai!==y.next&&uy($.x,$.y,oe.x,oe.y,me.x,me.y,ai.x,ai.y)&&Jc(ai.prev,ai,ai.next)>=0))return!1;ai=ai.nextZ}for(;Pr&&Pr.z>=br;){if(Pr!==y.prev&&Pr!==y.next&&uy($.x,$.y,oe.x,oe.y,me.x,me.y,Pr.x,Pr.y)&&Jc(Pr.prev,Pr,Pr.next)>=0)return!1;Pr=Pr.prevZ}for(;ai&&ai.z<=qr;){if(ai!==y.prev&&ai!==y.next&&uy($.x,$.y,oe.x,oe.y,me.x,me.y,ai.x,ai.y)&&Jc(ai.prev,ai,ai.next)>=0)return!1;ai=ai.nextZ}return!0}function jx(y,g,z){var V=y;do{var $=V.prev,oe=V.next.next;!Xx($,oe)&&Dw($,V,V.next,oe)&&Yx($,oe)&&Yx(oe,$)&&(g.push($.i/z),g.push(V.i/z),g.push(oe.i/z),Kx(V),Kx(V.next),V=y=oe),V=V.next}while(V!==y);return sy(V)}function d0(y,g,z,V,$,oe){var me=y;do{for(var je=me.next.next;je!==me.prev;){if(me.i!==je.i&&M1(me,je)){var xt=fM(me,je);me=sy(me,me.next),xt=sy(xt,xt.next),Wx(me,g,z,V,$,oe),Wx(xt,g,z,V,$,oe);return}je=je.next}me=me.next}while(me!==y)}function ly(y,g,z,V){var $=[],oe,me,je,xt,Ft;for(oe=0,me=g.length;oe=z.next.y&&z.next.y!==z.y){var je=z.x+($-z.y)*(z.next.x-z.x)/(z.next.y-z.y);if(je<=V&&je>oe){if(oe=je,je===V){if($===z.y)return z;if($===z.next.y)return z.next}me=z.x=z.x&&z.x>=Ft&&V!==z.x&&uy($me.x||z.x===me.x&&a9(me,z)))&&(me=z,br=qr)),z=z.next;while(z!==xt);return me}function a9(y,g){return Jc(y.prev,y,g.prev)<0&&Jc(g.next,y,y.next)<0}function Rw(y,g,z,V){var $=y;do $.z===null&&($.z=lM($.x,$.y,g,z,V)),$.prevZ=$.prev,$.nextZ=$.next,$=$.next;while($!==y);$.prevZ.nextZ=null,$.prevZ=null,sM($)}function sM(y){var g,z,V,$,oe,me,je,xt,Ft=1;do{for(z=y,y=null,oe=null,me=0;z;){for(me++,V=z,je=0,g=0;g0||xt>0&&V;)je!==0&&(xt===0||!V||z.z<=V.z)?($=z,z=z.nextZ,je--):($=V,V=V.nextZ,xt--),oe?oe.nextZ=$:y=$,$.prevZ=oe,oe=$;z=V}oe.nextZ=null,Ft*=2}while(me>1);return y}function lM(y,g,z,V,$){return y=32767*(y-z)*$,g=32767*(g-V)*$,y=(y|y<<8)&16711935,y=(y|y<<4)&252645135,y=(y|y<<2)&858993459,y=(y|y<<1)&1431655765,g=(g|g<<8)&16711935,g=(g|g<<4)&252645135,g=(g|g<<2)&858993459,g=(g|g<<1)&1431655765,y|g<<1}function uM(y){var g=y,z=y;do(g.x=0&&(y-me)*(V-je)-(z-me)*(g-je)>=0&&(z-me)*(oe-je)-($-me)*(V-je)>=0}function M1(y,g){return y.next.i!==g.i&&y.prev.i!==g.i&&!MC(y,g)&&(Yx(y,g)&&Yx(g,y)&&o9(y,g)&&(Jc(y.prev,y,g.prev)||Jc(y,g.prev,g))||Xx(y,g)&&Jc(y.prev,y,y.next)>0&&Jc(g.prev,g,g.next)>0)}function Jc(y,g,z){return(g.y-y.y)*(z.x-g.x)-(g.x-y.x)*(z.y-g.y)}function Xx(y,g){return y.x===g.x&&y.y===g.y}function Dw(y,g,z,V){var $=fg(Jc(y,g,z)),oe=fg(Jc(y,g,V)),me=fg(Jc(z,V,y)),je=fg(Jc(z,V,g));return!!($!==oe&&me!==je||$===0&&Zx(y,z,g)||oe===0&&Zx(y,V,g)||me===0&&Zx(z,y,V)||je===0&&Zx(z,g,V))}function Zx(y,g,z){return g.x<=Math.max(y.x,z.x)&&g.x>=Math.min(y.x,z.x)&&g.y<=Math.max(y.y,z.y)&&g.y>=Math.min(y.y,z.y)}function fg(y){return y>0?1:y<0?-1:0}function MC(y,g){var z=y;do{if(z.i!==y.i&&z.next.i!==y.i&&z.i!==g.i&&z.next.i!==g.i&&Dw(z,z.next,y,g))return!0;z=z.next}while(z!==y);return!1}function Yx(y,g){return Jc(y.prev,y,y.next)<0?Jc(y,g,y.next)>=0&&Jc(y,y.prev,g)>=0:Jc(y,g,y.prev)<0||Jc(y,y.next,g)<0}function o9(y,g){var z=y,V=!1,$=(y.x+g.x)/2,oe=(y.y+g.y)/2;do z.y>oe!=z.next.y>oe&&z.next.y!==z.y&&$<(z.next.x-z.x)*(oe-z.y)/(z.next.y-z.y)+z.x&&(V=!V),z=z.next;while(z!==y);return V}function fM(y,g){var z=new cM(y.i,y.x,y.y),V=new cM(g.i,g.x,g.y),$=y.next,oe=g.prev;return y.next=g,g.prev=y,z.next=$,$.prev=z,V.next=z,z.prev=V,oe.next=V,V.prev=oe,V}function EC(y,g,z,V){var $=new cM(y,g,z);return V?($.next=V.next,$.prev=V,V.next.prev=$,V.next=$):($.prev=$,$.next=$),$}function Kx(y){y.next.prev=y.prev,y.prev.next=y.next,y.prevZ&&(y.prevZ.nextZ=y.nextZ),y.nextZ&&(y.nextZ.prevZ=y.prevZ)}function cM(y,g,z){this.i=y,this.x=g,this.y=z,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}S1.deviation=function(y,g,z,V){var $=g&&g.length,oe=$?g[0]*z:y.length,me=Math.abs(hM(y,0,oe,z));if($)for(var je=0,xt=g.length;je0&&(V+=y[$-1].length,z.holes.push(V))}return z},zw.default=wC;function dM(y,g,z,V,$){dm(y,g,z||0,V||y.length-1,$||kC)}function dm(y,g,z,V,$){for(;V>z;){if(V-z>600){var oe=V-z+1,me=g-z+1,je=Math.log(oe),xt=.5*Math.exp(2*je/3),Ft=.5*Math.sqrt(je*xt*(oe-xt)/oe)*(me-oe/2<0?-1:1),Xt=Math.max(z,Math.floor(g-me*xt/oe+Ft)),br=Math.min(V,Math.floor(g+(oe-me)*xt/oe+Ft));dm(y,g,Xt,br,$)}var qr=y[g],Pr=z,ai=V;for(E1(y,z,g),$(y[V],qr)>0&&E1(y,z,V);Pr0;)ai--}$(y[z],qr)===0?E1(y,z,ai):(ai++,E1(y,ai,V)),ai<=g&&(z=ai+1),g<=ai&&(V=ai-1)}}function E1(y,g,z){var V=y[g];y[g]=y[z],y[z]=V}function kC(y,g){return yg?1:0}function Fw(y,g){var z=y.length;if(z<=1)return[y];for(var V=[],$,oe,me=0;me1)for(var xt=0;xt>3}if(V--,z===1||z===2)$+=y.readSVarint(),oe+=y.readSVarint(),z===1&&(je&&me.push(je),je=[]),je.push(new l($,oe));else if(z===7)je&&je.push(je[0].clone());else throw new Error("unknown command "+z)}return je&&me.push(je),me},cg.prototype.bbox=function(){var y=this._pbf;y.pos=this._geometry;for(var g=y.readVarint()+y.pos,z=1,V=0,$=0,oe=0,me=1/0,je=-1/0,xt=1/0,Ft=-1/0;y.pos>3}if(V--,z===1||z===2)$+=y.readSVarint(),oe+=y.readSVarint(),$je&&(je=$),oeFt&&(Ft=oe);else if(z!==7)throw new Error("unknown command "+z)}return[me,xt,je,Ft]},cg.prototype.toGeoJSON=function(y,g,z){var V=this.extent*Math.pow(2,z),$=this.extent*y,oe=this.extent*g,me=this.loadGeometry(),je=cg.types[this.type],xt,Ft;function Xt(Pr){for(var ai=0;ai>3;g=V===1?y.readString():V===2?y.readFloat():V===3?y.readDouble():V===4?y.readVarint64():V===5?y.readVarint():V===6?y.readSVarint():V===7?y.readBoolean():null}return g}mM.prototype.feature=function(y){if(y<0||y>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[y];var g=this._pbf.readVarint()+this._pbf.pos;return new vM(this._pbf,g,this.extent,this._keys,this._values)};var OC=l9;function l9(y,g){this.layers=y.readFields(u9,{},g)}function u9(y,g,z){if(y===3){var V=new pm(z,z.readVarint()+z.pos);V.length&&(g[V.name]=V)}}var qC=OC,k1=vM,NC=pm,vm={VectorTile:qC,VectorTileFeature:k1,VectorTileLayer:NC},UC=vm.VectorTileFeature.types,Ow=500,C1=Math.pow(2,13);function fy(y,g,z,V,$,oe,me,je){y.emplaceBack(g,z,Math.floor(V*C1)*2+me,$*C1*2,oe*C1*2,Math.round(je))}var Vv=function(g){this.zoom=g.zoom,this.overscaling=g.overscaling,this.layers=g.layers,this.layerIds=this.layers.map(function(z){return z.id}),this.index=g.index,this.hasPattern=!1,this.layoutVertexArray=new En,this.indexArray=new Va,this.programConfigurations=new Yi(g.layers,g.zoom),this.segments=new cu,this.stateDependentLayerIds=this.layers.filter(function(z){return z.isStateDependent()}).map(function(z){return z.id})};Vv.prototype.populate=function(g,z,V){this.features=[],this.hasPattern=Bw("fill-extrusion",this.layers,z);for(var $=0,oe=g;$=1){var _o=Wn[bo-1];if(!f9(ba,_o)){Pr.vertexLength+4>cu.MAX_VERTEX_ARRAY_LENGTH&&(Pr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var Uo=ba.sub(_o)._perp()._unit(),Zs=_o.dist(ba);bn+Zs>32768&&(bn=0),fy(this.layoutVertexArray,ba.x,ba.y,Uo.x,Uo.y,0,0,bn),fy(this.layoutVertexArray,ba.x,ba.y,Uo.x,Uo.y,0,1,bn),bn+=Zs,fy(this.layoutVertexArray,_o.x,_o.y,Uo.x,Uo.y,0,0,bn),fy(this.layoutVertexArray,_o.x,_o.y,Uo.x,Uo.y,0,1,bn);var Cl=Pr.vertexLength;this.indexArray.emplaceBack(Cl,Cl+2,Cl+1),this.indexArray.emplaceBack(Cl+1,Cl+2,Cl+3),Pr.vertexLength+=4,Pr.primitiveLength+=2}}}}if(Pr.vertexLength+Ft>cu.MAX_VERTEX_ARRAY_LENGTH&&(Pr=this.segments.prepareSegment(Ft,this.layoutVertexArray,this.indexArray)),UC[g.type]==="Polygon"){for(var Al=[],hu=[],Kl=Pr.vertexLength,lu=0,Bu=xt;luAn)||y.y===g.y&&(y.y<0||y.y>An)}function c9(y){return y.every(function(g){return g.x<0})||y.every(function(g){return g.x>An})||y.every(function(g){return g.y<0})||y.every(function(g){return g.y>An})}var L1=new ci({"fill-extrusion-opacity":new Be(Wi["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new qt(Wi["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Be(Wi["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Be(Wi["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new ar(Wi["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new qt(Wi["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new qt(Wi["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Be(Wi["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])}),ld={paint:L1},cy=function(y){function g(z){y.call(this,z,ld)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.createBucket=function(V){return new Vv(V)},g.prototype.queryRadius=function(){return Pp(this.paint.get("fill-extrusion-translate"))},g.prototype.is3D=function(){return!0},g.prototype.queryIntersectsFeature=function(V,$,oe,me,je,xt,Ft,Xt){var br=Jp(V,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),xt.angle,Ft),qr=this.paint.get("fill-extrusion-height").evaluate($,oe),Pr=this.paint.get("fill-extrusion-base").evaluate($,oe),ai=h9(br,Xt,xt,0),Oi=gM(me,Pr,qr,Xt),Wn=Oi[0],bn=Oi[1];return VC(Wn,bn,ai)},g}(on);function hg(y,g){return y.x*g.x+y.y*g.y}function yM(y,g){if(y.length===1){for(var z=0,V=g[z++],$;!$||V.equals($);)if($=g[z++],!$)return 1/0;for(;z=2&&g[Ft-1].equals(g[Ft-2]);)Ft--;for(var Xt=0;Xt0;if(Al&&bo>Xt){var Kl=Pr.dist(ai);if(Kl>2*br){var lu=Pr.sub(Pr.sub(ai)._mult(br/Kl)._round());this.updateDistance(ai,lu),this.addCurrentVertex(lu,Wn,0,0,qr),ai=lu}}var Bu=ai&&Oi,du=Bu?V:xt?"butt":$;if(Bu&&du==="round"&&(Zsoe&&(du="bevel"),du==="bevel"&&(Zs>2&&(du="flipbevel"),Zs100)ba=bn.mult(-1);else{var gu=Zs*Wn.add(bn).mag()/Wn.sub(bn).mag();ba._perp()._mult(gu*(hu?-1:1))}this.addCurrentVertex(Pr,ba,0,0,qr),this.addCurrentVertex(Pr,ba.mult(-1),0,0,qr)}else if(du==="bevel"||du==="fakeround"){var uf=-Math.sqrt(Zs*Zs-1),Ru=hu?uf:0,If=hu?0:uf;if(ai&&this.addCurrentVertex(Pr,Wn,Ru,If,qr),du==="fakeround")for(var sc=Math.round(Cl*180/Math.PI/xM),Rf=1;Rf2*br){var _h=Pr.add(Oi.sub(Pr)._mult(br/$h)._round());this.updateDistance(Pr,_h),this.addCurrentVertex(_h,bn,0,0,qr),Pr=_h}}}}},mh.prototype.addCurrentVertex=function(g,z,V,$,oe,me){me===void 0&&(me=!1);var je=z.x+z.y*V,xt=z.y-z.x*V,Ft=-z.x+z.y*$,Xt=-z.y-z.x*$;this.addHalfVertex(g,je,xt,me,!1,V,oe),this.addHalfVertex(g,Ft,Xt,me,!0,-$,oe),this.distance>tb/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(g,z,V,$,oe,me))},mh.prototype.addHalfVertex=function(g,z,V,$,oe,me,je){var xt=g.x,Ft=g.y,Xt=this.lineClips?this.scaledDistance*(tb-1):this.scaledDistance,br=Xt*Nw;if(this.layoutVertexArray.emplaceBack((xt<<1)+($?1:0),(Ft<<1)+(oe?1:0),Math.round(qw*z)+128,Math.round(qw*V)+128,(me===0?0:me<0?-1:1)+1|(br&63)<<2,br>>6),this.lineClips){var qr=this.scaledDistance-this.lineClips.start,Pr=this.lineClips.end-this.lineClips.start,ai=qr/Pr;this.layoutVertexArray2.emplaceBack(ai,this.lineClipsArray.length)}var Oi=je.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Oi),je.primitiveLength++),oe?this.e2=Oi:this.e1=Oi},mh.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},mh.prototype.updateDistance=function(g,z){this.distance+=g.dist(z),this.updateScaledDistance()},Z("LineBucket",mh,{omit:["layers","patternFeatures"]});var bM=new ci({"line-cap":new Be(Wi.layout_line["line-cap"]),"line-join":new qt(Wi.layout_line["line-join"]),"line-miter-limit":new Be(Wi.layout_line["line-miter-limit"]),"line-round-limit":new Be(Wi.layout_line["line-round-limit"]),"line-sort-key":new qt(Wi.layout_line["line-sort-key"])}),wM=new ci({"line-opacity":new qt(Wi.paint_line["line-opacity"]),"line-color":new qt(Wi.paint_line["line-color"]),"line-translate":new Be(Wi.paint_line["line-translate"]),"line-translate-anchor":new Be(Wi.paint_line["line-translate-anchor"]),"line-width":new qt(Wi.paint_line["line-width"]),"line-gap-width":new qt(Wi.paint_line["line-gap-width"]),"line-offset":new qt(Wi.paint_line["line-offset"]),"line-blur":new qt(Wi.paint_line["line-blur"]),"line-dasharray":new Qr(Wi.paint_line["line-dasharray"]),"line-pattern":new ar(Wi.paint_line["line-pattern"]),"line-gradient":new yi(Wi.paint_line["line-gradient"])}),Uw={paint:wM,layout:bM},p9=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.possiblyEvaluate=function(V,$){return $=new ds(Math.floor($.zoom),{now:$.now,fadeDuration:$.fadeDuration,zoomHistory:$.zoomHistory,transition:$.transition}),y.prototype.possiblyEvaluate.call(this,V,$)},g.prototype.evaluate=function(V,$,oe,me){return $=x({},$,{zoom:Math.floor($.zoom)}),y.prototype.evaluate.call(this,V,$,oe,me)},g}(qt),I=new p9(Uw.paint.properties["line-width"].specification);I.useIntegerZoom=!0;var S=function(y){function g(z){y.call(this,z,Uw),this.gradientVersion=0}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._handleSpecialPaintPropertyUpdate=function(V){if(V==="line-gradient"){var $=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=$._styleExpression.expression instanceof Do,this.gradientVersion=(this.gradientVersion+1)%d}},g.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},g.prototype.recalculate=function(V,$){y.prototype.recalculate.call(this,V,$),this.paint._values["line-floorwidth"]=I.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,V)},g.prototype.createBucket=function(V){return new mh(V)},g.prototype.queryRadius=function(V){var $=V,oe=D(Md("line-width",this,$),Md("line-gap-width",this,$)),me=Md("line-offset",this,$);return oe/2+Math.abs(me)+Pp(this.paint.get("line-translate"))},g.prototype.queryIntersectsFeature=function(V,$,oe,me,je,xt,Ft){var Xt=Jp(V,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),xt.angle,Ft),br=Ft/2*D(this.paint.get("line-width").evaluate($,oe),this.paint.get("line-gap-width").evaluate($,oe)),qr=this.paint.get("line-offset").evaluate($,oe);return qr&&(me=X(me,qr*Ft)),Vf(Xt,me,br)},g.prototype.isTileClipped=function(){return!0},g}(on);function D(y,g){return g>0?g+2*y:y}function X(y,g){for(var z=[],V=new l(0,0),$=0;$":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};function La(y){for(var g="",z=0;z>1,Xt=-7,br=z?$-1:0,qr=z?-1:1,Pr=y[g+br];for(br+=qr,oe=Pr&(1<<-Xt)-1,Pr>>=-Xt,Xt+=je;Xt>0;oe=oe*256+y[g+br],br+=qr,Xt-=8);for(me=oe&(1<<-Xt)-1,oe>>=-Xt,Xt+=V;Xt>0;me=me*256+y[g+br],br+=qr,Xt-=8);if(oe===0)oe=1-Ft;else{if(oe===xt)return me?NaN:(Pr?-1:1)*(1/0);me=me+Math.pow(2,V),oe=oe-Ft}return(Pr?-1:1)*me*Math.pow(2,oe-V)},mu=function(y,g,z,V,$,oe){var me,je,xt,Ft=oe*8-$-1,Xt=(1<>1,qr=$===23?Math.pow(2,-24)-Math.pow(2,-77):0,Pr=V?0:oe-1,ai=V?1:-1,Oi=g<0||g===0&&1/g<0?1:0;for(g=Math.abs(g),isNaN(g)||g===1/0?(je=isNaN(g)?1:0,me=Xt):(me=Math.floor(Math.log(g)/Math.LN2),g*(xt=Math.pow(2,-me))<1&&(me--,xt*=2),me+br>=1?g+=qr/xt:g+=qr*Math.pow(2,1-br),g*xt>=2&&(me++,xt/=2),me+br>=Xt?(je=0,me=Xt):me+br>=1?(je=(g*xt-1)*Math.pow(2,$),me=me+br):(je=g*Math.pow(2,br-1)*Math.pow(2,$),me=0));$>=8;y[z+Pr]=je&255,Pr+=ai,je/=256,$-=8);for(me=me<<$|je,Ft+=$;Ft>0;y[z+Pr]=me&255,Pr+=ai,me/=256,Ft-=8);y[z+Pr-ai]|=Oi*128},Iu={read:kl,write:mu},su=yl;function yl(y){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(y)?y:new Uint8Array(y||0),this.pos=0,this.type=0,this.length=this.buf.length}yl.Varint=0,yl.Fixed64=1,yl.Bytes=2,yl.Fixed32=5;var Eu=65536*65536,bu=1/Eu,_u=12,Xs=typeof TextDecoder=="undefined"?null:new TextDecoder("utf8");yl.prototype={destroy:function(){this.buf=null},readFields:function(y,g,z){for(z=z||this.length;this.pos>3,oe=this.pos;this.type=V&7,y($,g,this),this.pos===oe&&this.skip(V)}return g},readMessage:function(y,g){return this.readFields(y,g,this.readVarint()+this.pos)},readFixed32:function(){var y=Yh(this.buf,this.pos);return this.pos+=4,y},readSFixed32:function(){var y=Dp(this.buf,this.pos);return this.pos+=4,y},readFixed64:function(){var y=Yh(this.buf,this.pos)+Yh(this.buf,this.pos+4)*Eu;return this.pos+=8,y},readSFixed64:function(){var y=Yh(this.buf,this.pos)+Dp(this.buf,this.pos+4)*Eu;return this.pos+=8,y},readFloat:function(){var y=Iu.read(this.buf,this.pos,!0,23,4);return this.pos+=4,y},readDouble:function(){var y=Iu.read(this.buf,this.pos,!0,52,8);return this.pos+=8,y},readVarint:function(y){var g=this.buf,z,V;return V=g[this.pos++],z=V&127,V<128||(V=g[this.pos++],z|=(V&127)<<7,V<128)||(V=g[this.pos++],z|=(V&127)<<14,V<128)||(V=g[this.pos++],z|=(V&127)<<21,V<128)?z:(V=g[this.pos],z|=(V&15)<<28,Lu(z,y,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var y=this.readVarint();return y%2===1?(y+1)/-2:y/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var y=this.readVarint()+this.pos,g=this.pos;return this.pos=y,y-g>=_u&&Xs?jf(this.buf,g,y):fp(this.buf,g,y)},readBytes:function(){var y=this.readVarint()+this.pos,g=this.buf.subarray(this.pos,y);return this.pos=y,g},readPackedVarint:function(y,g){if(this.type!==yl.Bytes)return y.push(this.readVarint(g));var z=xu(this);for(y=y||[];this.pos127;);else if(g===yl.Bytes)this.pos=this.readVarint()+this.pos;else if(g===yl.Fixed32)this.pos+=4;else if(g===yl.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+g)},writeTag:function(y,g){this.writeVarint(y<<3|g)},realloc:function(y){for(var g=this.length||16;g268435455||y<0){vc(y,this);return}this.realloc(4),this.buf[this.pos++]=y&127|(y>127?128:0),!(y<=127)&&(this.buf[this.pos++]=(y>>>=7)&127|(y>127?128:0),!(y<=127)&&(this.buf[this.pos++]=(y>>>=7)&127|(y>127?128:0),!(y<=127)&&(this.buf[this.pos++]=y>>>7&127)))},writeSVarint:function(y){this.writeVarint(y<0?-y*2-1:y*2)},writeBoolean:function(y){this.writeVarint(!!y)},writeString:function(y){y=String(y),this.realloc(y.length*4),this.pos++;var g=this.pos;this.pos=Tc(this.buf,y,this.pos);var z=this.pos-g;z>=128&&Qp(g,z,this),this.pos=g-1,this.writeVarint(z),this.pos+=z},writeFloat:function(y){this.realloc(4),Iu.write(this.buf,y,this.pos,!0,23,4),this.pos+=4},writeDouble:function(y){this.realloc(8),Iu.write(this.buf,y,this.pos,!0,52,8),this.pos+=8},writeBytes:function(y){var g=y.length;this.writeVarint(g),this.realloc(g);for(var z=0;z=128&&Qp(z,V,this),this.pos=z-1,this.writeVarint(V),this.pos+=V},writeMessage:function(y,g,z){this.writeTag(y,yl.Bytes),this.writeRawMessage(g,z)},writePackedVarint:function(y,g){g.length&&this.writeMessage(y,ud,g)},writePackedSVarint:function(y,g){g.length&&this.writeMessage(y,Ih,g)},writePackedBoolean:function(y,g){g.length&&this.writeMessage(y,Xd,g)},writePackedFloat:function(y,g){g.length&&this.writeMessage(y,Wd,g)},writePackedDouble:function(y,g){g.length&&this.writeMessage(y,jd,g)},writePackedFixed32:function(y,g){g.length&&this.writeMessage(y,$c,g)},writePackedSFixed32:function(y,g){g.length&&this.writeMessage(y,Rh,g)},writePackedFixed64:function(y,g){g.length&&this.writeMessage(y,Cd,g)},writePackedSFixed64:function(y,g){g.length&&this.writeMessage(y,fd,g)},writeBytesField:function(y,g){this.writeTag(y,yl.Bytes),this.writeBytes(g)},writeFixed32Field:function(y,g){this.writeTag(y,yl.Fixed32),this.writeFixed32(g)},writeSFixed32Field:function(y,g){this.writeTag(y,yl.Fixed32),this.writeSFixed32(g)},writeFixed64Field:function(y,g){this.writeTag(y,yl.Fixed64),this.writeFixed64(g)},writeSFixed64Field:function(y,g){this.writeTag(y,yl.Fixed64),this.writeSFixed64(g)},writeVarintField:function(y,g){this.writeTag(y,yl.Varint),this.writeVarint(g)},writeSVarintField:function(y,g){this.writeTag(y,yl.Varint),this.writeSVarint(g)},writeStringField:function(y,g){this.writeTag(y,yl.Bytes),this.writeString(g)},writeFloatField:function(y,g){this.writeTag(y,yl.Fixed32),this.writeFloat(g)},writeDoubleField:function(y,g){this.writeTag(y,yl.Fixed64),this.writeDouble(g)},writeBooleanField:function(y,g){this.writeVarintField(y,!!g)}};function Lu(y,g,z){var V=z.buf,$,oe;if(oe=V[z.pos++],$=(oe&112)>>4,oe<128||(oe=V[z.pos++],$|=(oe&127)<<3,oe<128)||(oe=V[z.pos++],$|=(oe&127)<<10,oe<128)||(oe=V[z.pos++],$|=(oe&127)<<17,oe<128)||(oe=V[z.pos++],$|=(oe&127)<<24,oe<128)||(oe=V[z.pos++],$|=(oe&1)<<31,oe<128))return qu(y,$,g);throw new Error("Expected varint not more than 10 bytes")}function xu(y){return y.type===yl.Bytes?y.readVarint()+y.pos:y.pos+1}function qu(y,g,z){return z?g*4294967296+(y>>>0):(g>>>0)*4294967296+(y>>>0)}function vc(y,g){var z,V;if(y>=0?(z=y%4294967296|0,V=y/4294967296|0):(z=~(-y%4294967296),V=~(-y/4294967296),z^4294967295?z=z+1|0:(z=0,V=V+1|0)),y>=18446744073709552e3||y<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");g.realloc(10),cc(z,V,g),zh(V,g)}function cc(y,g,z){z.buf[z.pos++]=y&127|128,y>>>=7,z.buf[z.pos++]=y&127|128,y>>>=7,z.buf[z.pos++]=y&127|128,y>>>=7,z.buf[z.pos++]=y&127|128,y>>>=7,z.buf[z.pos]=y&127}function zh(y,g){var z=(y&7)<<4;g.buf[g.pos++]|=z|((y>>>=3)?128:0),y&&(g.buf[g.pos++]=y&127|((y>>>=7)?128:0),y&&(g.buf[g.pos++]=y&127|((y>>>=7)?128:0),y&&(g.buf[g.pos++]=y&127|((y>>>=7)?128:0),y&&(g.buf[g.pos++]=y&127|((y>>>=7)?128:0),y&&(g.buf[g.pos++]=y&127)))))}function Qp(y,g,z){var V=g<=16383?1:g<=2097151?2:g<=268435455?3:Math.floor(Math.log(g)/(Math.LN2*7));z.realloc(V);for(var $=z.pos-1;$>=y;$--)z.buf[$+V]=z.buf[$]}function ud(y,g){for(var z=0;z>>8,y[z+2]=g>>>16,y[z+3]=g>>>24}function Dp(y,g){return(y[g]|y[g+1]<<8|y[g+2]<<16)+(y[g+3]<<24)}function fp(y,g,z){for(var V="",$=g;$239?4:oe>223?3:oe>191?2:1;if($+je>z)break;var xt,Ft,Xt;je===1?oe<128&&(me=oe):je===2?(xt=y[$+1],(xt&192)===128&&(me=(oe&31)<<6|xt&63,me<=127&&(me=null))):je===3?(xt=y[$+1],Ft=y[$+2],(xt&192)===128&&(Ft&192)===128&&(me=(oe&15)<<12|(xt&63)<<6|Ft&63,(me<=2047||me>=55296&&me<=57343)&&(me=null))):je===4&&(xt=y[$+1],Ft=y[$+2],Xt=y[$+3],(xt&192)===128&&(Ft&192)===128&&(Xt&192)===128&&(me=(oe&15)<<18|(xt&63)<<12|(Ft&63)<<6|Xt&63,(me<=65535||me>=1114112)&&(me=null))),me===null?(me=65533,je=1):me>65535&&(me-=65536,V+=String.fromCharCode(me>>>10&1023|55296),me=56320|me&1023),V+=String.fromCharCode(me),$+=je}return V}function jf(y,g,z){return Xs.decode(y.subarray(g,z))}function Tc(y,g,z){for(var V=0,$,oe;V55295&&$<57344)if(oe)if($<56320){y[z++]=239,y[z++]=191,y[z++]=189,oe=$;continue}else $=oe-55296<<10|$-56320|65536,oe=null;else{$>56319||V+1===g.length?(y[z++]=239,y[z++]=191,y[z++]=189):oe=$;continue}else oe&&(y[z++]=239,y[z++]=191,y[z++]=189,oe=null);$<128?y[z++]=$:($<2048?y[z++]=$>>6|192:($<65536?y[z++]=$>>12|224:(y[z++]=$>>18|240,y[z++]=$>>12&63|128),y[z++]=$>>6&63|128),y[z++]=$&63|128)}return z}var mc=3;function Fp(y,g,z){y===1&&z.readMessage(Hc,g)}function Hc(y,g,z){if(y===3){var V=z.readMessage(P1,{}),$=V.id,oe=V.bitmap,me=V.width,je=V.height,xt=V.left,Ft=V.top,Xt=V.advance;g.push({id:$,bitmap:new Rp({width:me+2*mc,height:je+2*mc},oe),metrics:{width:me,height:je,left:xt,top:Ft,advance:Xt}})}}function P1(y,g,z){y===1?g.id=z.readVarint():y===2?g.bitmap=z.readBytes():y===3?g.width=z.readVarint():y===4?g.height=z.readVarint():y===5?g.left=z.readSVarint():y===6?g.top=z.readSVarint():y===7&&(g.advance=z.readVarint())}function p0(y){return new su(y).readFields(Fp,[])}var Gv=mc;function ev(y){for(var g=0,z=0,V=0,$=y;V<$.length;V+=1){var oe=$[V];g+=oe.w*oe.h,z=Math.max(z,oe.w)}y.sort(function(Wn,bn){return bn.h-Wn.h});for(var me=Math.max(Math.ceil(Math.sqrt(g/.95)),z),je=[{x:0,y:0,w:me,h:1/0}],xt=0,Ft=0,Xt=0,br=y;Xt=0;Pr--){var ai=je[Pr];if(!(qr.w>ai.w||qr.h>ai.h)){if(qr.x=ai.x,qr.y=ai.y,Ft=Math.max(Ft,qr.y+qr.h),xt=Math.max(xt,qr.x+qr.w),qr.w===ai.w&&qr.h===ai.h){var Oi=je.pop();Pr=0&&$>=g&&m0[this.text.charCodeAt($)];$--)V--;this.text=this.text.substring(g,V),this.sectionIndex=this.sectionIndex.slice(g,V)},Kh.prototype.substring=function(g,z){var V=new Kh;return V.text=this.text.substring(g,z),V.sectionIndex=this.sectionIndex.slice(g,z),V.sections=this.sections,V},Kh.prototype.toString=function(){return this.text},Kh.prototype.getMaxScale=function(){var g=this;return this.sectionIndex.reduce(function(z,V){return Math.max(z,g.sections[V].scale)},0)},Kh.prototype.addTextSection=function(g,z){this.text+=g.text,this.sections.push(dg.forText(g.scale,g.fontStack||z));for(var V=this.sections.length-1,$=0;$=v0?null:++this.imageSectionID:(this.imageSectionID=Vw,this.imageSectionID)};function v9(y,g){for(var z=[],V=y.text,$=0,oe=0,me=g;oe=0,Xt=0,br=0;br0&&_h>hu&&(hu=_h)}else{var Df=z[lu.fontStack],Pf=Df&&Df[du];if(Pf&&Pf.rect)Ru=Pf.rect,uf=Pf.metrics;else{var yc=g[lu.fontStack],Ac=yc&&yc[du];if(!Ac)continue;uf=Ac.metrics}gu=(Uo-lu.scale)*So}Rf?(y.verticalizable=!0,Al.push({glyph:du,imageName:If,x:qr,y:Pr+gu,vertical:Rf,scale:lu.scale,fontStack:lu.fontStack,sectionIndex:Bu,metrics:uf,rect:Ru}),qr+=sc*lu.scale+Ft):(Al.push({glyph:du,imageName:If,x:qr,y:Pr+gu,vertical:Rf,scale:lu.scale,fontStack:lu.fontStack,sectionIndex:Bu,metrics:uf,rect:Ru}),qr+=uf.advance*lu.scale+Ft)}if(Al.length!==0){var Yd=qr-Ft;ai=Math.max(Yd,ai),_9(Al,0,Al.length-1,Wn,hu)}qr=0;var Kd=oe*Uo+hu;Cl.lineOffset=Math.max(hu,Zs),Pr+=Kd,Oi=Math.max(Kd,Oi),++bn}var Qh=Pr-z1,dp=AM(me),pp=dp.horizontalAlign,Dh=dp.verticalAlign;Ld(y.positionedLines,Wn,pp,Dh,ai,Oi,oe,Qh,$.length),y.top+=-Dh*Qh,y.bottom=y.top+Qh,y.left+=-pp*ai,y.right=y.left+ai}function _9(y,g,z,V,$){if(!(!V&&!$))for(var oe=y[z],me=oe.metrics.advance*oe.scale,je=(y[z].x+me)*V,xt=g;xt<=z;xt++)y[xt].x-=je,y[xt].y+=$}function Ld(y,g,z,V,$,oe,me,je,xt){var Ft=(g-z)*$,Xt=0;oe!==me?Xt=-je*V-z1:Xt=(-V*xt+.5)*me;for(var br=0,qr=y;br-z/2;){if(me--,me<0)return!1;je-=y[me].dist(oe),oe=y[me]}je+=y[me].dist(y[me+1]),me++;for(var xt=[],Ft=0;jeV;)Ft-=xt.shift().angleDelta;if(Ft>$)return!1;me++,je+=br.dist(qr)}return!0}function jQ(y){for(var g=0,z=0;zFt){var ai=(Ft-xt)/Pr,Oi=Lo(br.x,qr.x,ai),Wn=Lo(br.y,qr.y,ai),bn=new Zd(Oi,Wn,qr.angleTo(br),Xt);return bn._round(),!me||WQ(y,bn,je,me,g)?bn:void 0}xt+=Pr}}function htt(y,g,z,V,$,oe,me,je,xt){var Ft=XQ(V,oe,me),Xt=ZQ(V,$),br=Xt*me,qr=y[0].x===0||y[0].x===xt||y[0].y===0||y[0].y===xt;g-br=0&&_o=0&&Uo=0&&qr+Ft<=Xt){var Zs=new Zd(_o,Uo,bo,ai);Zs._round(),(!V||WQ(y,Zs,oe,V,$))&&Pr.push(Zs)}}br+=bn}return!je&&!Pr.length&&!me&&(Pr=YQ(y,br/2,z,V,$,oe,me,!0,xt)),Pr}function KQ(y,g,z,V,$){for(var oe=[],me=0;me=V&&br.x>=V)&&(Xt.x>=V?Xt=new l(V,Xt.y+(br.y-Xt.y)*((V-Xt.x)/(br.x-Xt.x)))._round():br.x>=V&&(br=new l(V,Xt.y+(br.y-Xt.y)*((V-Xt.x)/(br.x-Xt.x)))._round()),!(Xt.y>=$&&br.y>=$)&&(Xt.y>=$?Xt=new l(Xt.x+(br.x-Xt.x)*(($-Xt.y)/(br.y-Xt.y)),$)._round():br.y>=$&&(br=new l(Xt.x+(br.x-Xt.x)*(($-Xt.y)/(br.y-Xt.y)),$)._round()),(!xt||!Xt.equals(xt[xt.length-1]))&&(xt=[Xt],oe.push(xt)),xt.push(br)))))}return oe}var Ww=Rc;function JQ(y,g,z,V){var $=[],oe=y.image,me=oe.pixelRatio,je=oe.paddedRect.w-2*Ww,xt=oe.paddedRect.h-2*Ww,Ft=y.right-y.left,Xt=y.bottom-y.top,br=oe.stretchX||[[0,je]],qr=oe.stretchY||[[0,xt]],Pr=function(Df,Pf){return Df+Pf[1]-Pf[0]},ai=br.reduce(Pr,0),Oi=qr.reduce(Pr,0),Wn=je-ai,bn=xt-Oi,bo=0,ba=ai,_o=0,Uo=Oi,Zs=0,Cl=Wn,Al=0,hu=bn;if(oe.content&&V){var Kl=oe.content;bo=KC(br,0,Kl[0]),_o=KC(qr,0,Kl[1]),ba=KC(br,Kl[0],Kl[2]),Uo=KC(qr,Kl[1],Kl[3]),Zs=Kl[0]-bo,Al=Kl[1]-_o,Cl=Kl[2]-Kl[0]-ba,hu=Kl[3]-Kl[1]-Uo}var lu=function(Df,Pf,yc,Ac){var Qc=JC(Df.stretch-bo,ba,Ft,y.left),nh=$C(Df.fixed-Zs,Cl,Df.stretch,ai),$h=JC(Pf.stretch-_o,Uo,Xt,y.top),_h=$C(Pf.fixed-Al,hu,Pf.stretch,Oi),Yd=JC(yc.stretch-bo,ba,Ft,y.left),Kd=$C(yc.fixed-Zs,Cl,yc.stretch,ai),Qh=JC(Ac.stretch-_o,Uo,Xt,y.top),dp=$C(Ac.fixed-Al,hu,Ac.stretch,Oi),pp=new l(Qc,$h),Dh=new l(Yd,$h),vp=new l(Yd,Qh),xv=new l(Qc,Qh),mg=new l(nh/me,_h/me),D1=new l(Kd/me,dp/me),F1=g*Math.PI/180;if(F1){var B1=Math.sin(F1),Qw=Math.cos(F1),y0=[Qw,-B1,B1,Qw];pp._matMult(y0),Dh._matMult(y0),xv._matMult(y0),vp._matMult(y0)}var nL=Df.stretch+Df.fixed,E9=yc.stretch+yc.fixed,aL=Pf.stretch+Pf.fixed,k9=Ac.stretch+Ac.fixed,Hv={x:oe.paddedRect.x+Ww+nL,y:oe.paddedRect.y+Ww+aL,w:E9-nL,h:k9-aL},e3=Cl/me/Ft,oL=hu/me/Xt;return{tl:pp,tr:Dh,bl:xv,br:vp,tex:Hv,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:mg,pixelOffsetBR:D1,minFontScaleX:e3,minFontScaleY:oL,isSDF:z}};if(!V||!oe.stretchX&&!oe.stretchY)$.push(lu({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:je+1},{fixed:0,stretch:xt+1}));else for(var Bu=$Q(br,Wn,ai),du=$Q(qr,bn,Oi),gu=0;gu0&&(ai=Math.max(10,ai),this.circleDiameter=ai)}else{var Oi=me.top*je-xt,Wn=me.bottom*je+xt,bn=me.left*je-xt,bo=me.right*je+xt,ba=me.collisionPadding;if(ba&&(bn-=ba[0]*je,Oi-=ba[1]*je,bo+=ba[2]*je,Wn+=ba[3]*je),Xt){var _o=new l(bn,Oi),Uo=new l(bo,Oi),Zs=new l(bn,Wn),Cl=new l(bo,Wn),Al=Xt*Math.PI/180;_o._rotate(Al),Uo._rotate(Al),Zs._rotate(Al),Cl._rotate(Al),bn=Math.min(_o.x,Uo.x,Zs.x,Cl.x),bo=Math.max(_o.x,Uo.x,Zs.x,Cl.x),Oi=Math.min(_o.y,Uo.y,Zs.y,Cl.y),Wn=Math.max(_o.y,Uo.y,Zs.y,Cl.y)}g.emplaceBack(z.x,z.y,bn,Oi,bo,Wn,V,$,oe)}this.boxEndIndex=g.length},jw=function(g,z){if(g===void 0&&(g=[]),z===void 0&&(z=ptt),this.data=g,this.length=this.data.length,this.compare=z,this.length>0)for(var V=(this.length>>1)-1;V>=0;V--)this._down(V)};jw.prototype.push=function(g){this.data.push(g),this.length++,this._up(this.length-1)},jw.prototype.pop=function(){if(this.length!==0){var g=this.data[0],z=this.data.pop();return this.length--,this.length>0&&(this.data[0]=z,this._down(0)),g}},jw.prototype.peek=function(){return this.data[0]},jw.prototype._up=function(g){for(var z=this,V=z.data,$=z.compare,oe=V[g];g>0;){var me=g-1>>1,je=V[me];if($(oe,je)>=0)break;V[g]=je,g=me}V[g]=oe},jw.prototype._down=function(g){for(var z=this,V=z.data,$=z.compare,oe=this.length>>1,me=V[g];g=0)break;V[g]=xt,g=je}V[g]=me};function ptt(y,g){return yg?1:0}function vtt(y,g,z){g===void 0&&(g=1),z===void 0&&(z=!1);for(var V=1/0,$=1/0,oe=-1/0,me=-1/0,je=y[0],xt=0;xtoe)&&(oe=Ft.x),(!xt||Ft.y>me)&&(me=Ft.y)}var Xt=oe-V,br=me-$,qr=Math.min(Xt,br),Pr=qr/2,ai=new jw([],mtt);if(qr===0)return new l(V,$);for(var Oi=V;Oibn.d||!bn.d)&&(bn=ba,z&&console.log("found best %d after %d probes",Math.round(1e4*ba.d)/1e4,bo)),!(ba.max-bn.d<=g)&&(Pr=ba.h/2,ai.push(new Xw(ba.p.x-Pr,ba.p.y-Pr,Pr,y)),ai.push(new Xw(ba.p.x+Pr,ba.p.y-Pr,Pr,y)),ai.push(new Xw(ba.p.x-Pr,ba.p.y+Pr,Pr,y)),ai.push(new Xw(ba.p.x+Pr,ba.p.y+Pr,Pr,y)),bo+=4)}return z&&(console.log("num probes: "+bo),console.log("best distance: "+bn.d)),bn.p}function mtt(y,g){return g.max-y.max}function Xw(y,g,z,V){this.p=new l(y,g),this.h=z,this.d=ytt(this.p,V),this.max=this.d+this.h*Math.SQRT2}function ytt(y,g){for(var z=!1,V=1/0,$=0;$y.y!=Xt.y>y.y&&y.x<(Xt.x-Ft.x)*(y.y-Ft.y)/(Xt.y-Ft.y)+Ft.x&&(z=!z),V=Math.min(V,fm(y,Ft,Xt))}return(z?1:-1)*Math.sqrt(V)}function gtt(y){for(var g=0,z=0,V=0,$=y[0],oe=0,me=$.length,je=me-1;oe=An||y0.y<0||y0.y>=An||btt(y,y0,Qw,z,V,$,du,y.layers[0],y.collisionBoxArray,g.index,g.sourceLayerIndex,y.index,bn,Uo,Al,xt,ba,Zs,hu,Pr,g,oe,Ft,Xt,me)};if(Kl==="line")for(var uf=0,Ru=KQ(g.geometry,0,0,An,An);uf1){var $h=ctt(nh,Cl,z.vertical||ai,V,Oi,bo);$h&&gu(nh,$h)}}else if(g.type==="Polygon")for(var _h=0,Yd=Fw(g.geometry,0);_hI1&&re(y.layerIds[0]+': Value for "text-size" is >= '+SM+'. Reduce your "text-size".')):Wn.kind==="composite"&&(bn=[Pd*Pr.compositeTextSizes[0].evaluate(me,{},ai),Pd*Pr.compositeTextSizes[1].evaluate(me,{},ai)],(bn[0]>I1||bn[1]>I1)&&re(y.layerIds[0]+': Value for "text-size" is >= '+SM+'. Reduce your "text-size".')),y.addSymbols(y.text,Oi,bn,je,oe,me,Ft,g,xt.lineStartIndex,xt.lineLength,qr,ai);for(var bo=0,ba=Xt;boI1&&re(y.layerIds[0]+': Value for "icon-size" is >= '+SM+'. Reduce your "icon-size".')):pp.kind==="composite"&&(Dh=[Pd*Uo.compositeIconSizes[0].evaluate(_o,{},Cl),Pd*Uo.compositeIconSizes[1].evaluate(_o,{},Cl)],(Dh[0]>I1||Dh[1]>I1)&&re(y.layerIds[0]+': Value for "icon-size" is >= '+SM+'. Reduce your "icon-size".')),y.addSymbols(y.icon,Qh,Dh,ba,bo,_o,!1,g,Kl.lineStartIndex,Kl.lineLength,-1,Cl),Rf=y.icon.placedSymbolArray.length-1,dp&&(Ru=dp.length*4,y.addSymbols(y.icon,dp,Dh,ba,bo,_o,cp.vertical,g,Kl.lineStartIndex,Kl.lineLength,-1,Cl),Df=y.icon.placedSymbolArray.length-1)}for(var vp in V.horizontal){var xv=V.horizontal[vp];if(!lu){yc=K(xv.text);var mg=je.layout.get("text-rotate").evaluate(_o,{},Cl);lu=new QC(xt,g,Ft,Xt,br,xv,qr,Pr,ai,mg)}var D1=xv.positionedLines.length===1;if(If+=eee(y,g,xv,oe,je,ai,_o,Oi,Kl,V.vertical?cp.horizontal:cp.horizontalOnly,D1?Object.keys(V.horizontal):[vp],Pf,Rf,Uo,Cl),D1)break}V.vertical&&(sc+=eee(y,g,V.vertical,oe,je,ai,_o,Oi,Kl,cp.vertical,["vertical"],Pf,Df,Uo,Cl));var F1=lu?lu.boxStartIndex:y.collisionBoxArray.length,B1=lu?lu.boxEndIndex:y.collisionBoxArray.length,Qw=du?du.boxStartIndex:y.collisionBoxArray.length,y0=du?du.boxEndIndex:y.collisionBoxArray.length,nL=Bu?Bu.boxStartIndex:y.collisionBoxArray.length,E9=Bu?Bu.boxEndIndex:y.collisionBoxArray.length,aL=gu?gu.boxStartIndex:y.collisionBoxArray.length,k9=gu?gu.boxEndIndex:y.collisionBoxArray.length,Hv=-1,e3=function(kM,yee){return kM&&kM.circleDiameter?Math.max(kM.circleDiameter,yee):yee};Hv=e3(lu,Hv),Hv=e3(du,Hv),Hv=e3(Bu,Hv),Hv=e3(gu,Hv);var oL=Hv>-1?1:0;oL&&(Hv*=Al/So),y.glyphOffsetArray.length>=oc.MAX_GLYPHS&&re("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),_o.sortKey!==void 0&&y.addToSortKeyRanges(y.symbolInstances.length,_o.sortKey),y.symbolInstances.emplaceBack(g.x,g.y,Pf.right>=0?Pf.right:-1,Pf.center>=0?Pf.center:-1,Pf.left>=0?Pf.left:-1,Pf.vertical||-1,Rf,Df,yc,F1,B1,Qw,y0,nL,E9,aL,k9,Ft,If,sc,uf,Ru,oL,0,qr,Ac,Qc,Hv)}function wtt(y,g,z,V){var $=y.compareText;if(!(g in $))$[g]=[];else for(var oe=$[g],me=oe.length-1;me>=0;me--)if(V.dist(oe[me])0)&&(me.value.kind!=="constant"||me.value.value.length>0),Xt=xt.value.kind!=="constant"||!!xt.value.value||Object.keys(xt.parameters).length>0,br=oe.get("symbol-sort-key");if(this.features=[],!(!Ft&&!Xt)){for(var qr=z.iconDependencies,Pr=z.glyphDependencies,ai=z.availableImages,Oi=new ds(this.zoom),Wn=0,bn=g;Wn=0;for(var sc=0,Rf=hu.sections;sc=0;xt--)me[xt]={x:z[xt].x,y:z[xt].y,tileUnitDistanceFromAnchor:oe},xt>0&&(oe+=z[xt-1].dist(z[xt]));for(var Ft=0;Ft0},oc.prototype.hasIconData=function(){return this.icon.segments.get().length>0},oc.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},oc.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},oc.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},oc.prototype.addIndicesForPlacedSymbol=function(g,z){for(var V=g.placedSymbolArray.get(z),$=V.vertexStartIndex+V.numGlyphs*4,oe=V.vertexStartIndex;oe<$;oe+=4)g.indexArray.emplaceBack(oe,oe+1,oe+2),g.indexArray.emplaceBack(oe+1,oe+2,oe+3)},oc.prototype.getSortedSymbolIndexes=function(g){if(this.sortedAngle===g&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;for(var z=Math.sin(g),V=Math.cos(g),$=[],oe=[],me=[],je=0;je1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(g),this.sortedAngle=g,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var V=0,$=this.symbolInstanceIndexes;V<$.length;V+=1){var oe=$[V],me=this.symbolInstances.get(oe);this.featureSortOrder.push(me.featureIndex),[me.rightJustifiedTextSymbolIndex,me.centerJustifiedTextSymbolIndex,me.leftJustifiedTextSymbolIndex].forEach(function(je,xt,Ft){je>=0&&Ft.indexOf(je)===xt&&z.addIndicesForPlacedSymbol(z.text,je)}),me.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,me.verticalPlacedTextSymbolIndex),me.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,me.placedIconSymbolIndex),me.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,me.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},Z("SymbolBucket",oc,{omit:["layers","collisionBoxArray","features","compareText"]}),oc.MAX_GLYPHS=65535,oc.addDynamicAttributes=w9;function Mtt(y,g){return g.replace(/{([^{}]+)}/g,function(z,V){return V in y?String(y[V]):""})}var Ett=new ci({"symbol-placement":new Be(Wi.layout_symbol["symbol-placement"]),"symbol-spacing":new Be(Wi.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Be(Wi.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new qt(Wi.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Be(Wi.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Be(Wi.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Be(Wi.layout_symbol["icon-ignore-placement"]),"icon-optional":new Be(Wi.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Be(Wi.layout_symbol["icon-rotation-alignment"]),"icon-size":new qt(Wi.layout_symbol["icon-size"]),"icon-text-fit":new Be(Wi.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Be(Wi.layout_symbol["icon-text-fit-padding"]),"icon-image":new qt(Wi.layout_symbol["icon-image"]),"icon-rotate":new qt(Wi.layout_symbol["icon-rotate"]),"icon-padding":new Be(Wi.layout_symbol["icon-padding"]),"icon-keep-upright":new Be(Wi.layout_symbol["icon-keep-upright"]),"icon-offset":new qt(Wi.layout_symbol["icon-offset"]),"icon-anchor":new qt(Wi.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Be(Wi.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Be(Wi.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Be(Wi.layout_symbol["text-rotation-alignment"]),"text-field":new qt(Wi.layout_symbol["text-field"]),"text-font":new qt(Wi.layout_symbol["text-font"]),"text-size":new qt(Wi.layout_symbol["text-size"]),"text-max-width":new qt(Wi.layout_symbol["text-max-width"]),"text-line-height":new Be(Wi.layout_symbol["text-line-height"]),"text-letter-spacing":new qt(Wi.layout_symbol["text-letter-spacing"]),"text-justify":new qt(Wi.layout_symbol["text-justify"]),"text-radial-offset":new qt(Wi.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Be(Wi.layout_symbol["text-variable-anchor"]),"text-anchor":new qt(Wi.layout_symbol["text-anchor"]),"text-max-angle":new Be(Wi.layout_symbol["text-max-angle"]),"text-writing-mode":new Be(Wi.layout_symbol["text-writing-mode"]),"text-rotate":new qt(Wi.layout_symbol["text-rotate"]),"text-padding":new Be(Wi.layout_symbol["text-padding"]),"text-keep-upright":new Be(Wi.layout_symbol["text-keep-upright"]),"text-transform":new qt(Wi.layout_symbol["text-transform"]),"text-offset":new qt(Wi.layout_symbol["text-offset"]),"text-allow-overlap":new Be(Wi.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Be(Wi.layout_symbol["text-ignore-placement"]),"text-optional":new Be(Wi.layout_symbol["text-optional"])}),ktt=new ci({"icon-opacity":new qt(Wi.paint_symbol["icon-opacity"]),"icon-color":new qt(Wi.paint_symbol["icon-color"]),"icon-halo-color":new qt(Wi.paint_symbol["icon-halo-color"]),"icon-halo-width":new qt(Wi.paint_symbol["icon-halo-width"]),"icon-halo-blur":new qt(Wi.paint_symbol["icon-halo-blur"]),"icon-translate":new Be(Wi.paint_symbol["icon-translate"]),"icon-translate-anchor":new Be(Wi.paint_symbol["icon-translate-anchor"]),"text-opacity":new qt(Wi.paint_symbol["text-opacity"]),"text-color":new qt(Wi.paint_symbol["text-color"],{runtimeType:vn,getOverride:function(y){return y.textColor},hasOverride:function(y){return!!y.textColor}}),"text-halo-color":new qt(Wi.paint_symbol["text-halo-color"]),"text-halo-width":new qt(Wi.paint_symbol["text-halo-width"]),"text-halo-blur":new qt(Wi.paint_symbol["text-halo-blur"]),"text-translate":new Be(Wi.paint_symbol["text-translate"]),"text-translate-anchor":new Be(Wi.paint_symbol["text-translate-anchor"])}),T9={paint:ktt,layout:Ett},Kw=function(g){this.type=g.property.overrides?g.property.overrides.runtimeType:Qo,this.defaultValue=g};Kw.prototype.evaluate=function(g){if(g.formattedSection){var z=this.defaultValue.property.overrides;if(z&&z.hasOverride(g.formattedSection))return z.getOverride(g.formattedSection)}return g.feature&&g.featureState?this.defaultValue.evaluate(g.feature,g.featureState):this.defaultValue.property.specification.default},Kw.prototype.eachChild=function(g){if(!this.defaultValue.isConstant()){var z=this.defaultValue.value;g(z._styleExpression.expression)}},Kw.prototype.outputDefined=function(){return!1},Kw.prototype.serialize=function(){return null},Z("FormatSectionOverride",Kw,{omit:["defaultValue"]});var Ctt=function(y){function g(z){y.call(this,z,T9)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.recalculate=function(V,$){if(y.prototype.recalculate.call(this,V,$),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var oe=this.layout.get("text-writing-mode");if(oe){for(var me=[],je=0,xt=oe;je",targetMapId:$,sourceMapId:me.mapId})}}},Jw.prototype.receive=function(g){var z=g.data,V=z.id;if(V&&!(z.targetMapId&&this.mapId!==z.targetMapId))if(z.type===""){delete this.tasks[V];var $=this.cancelCallbacks[V];delete this.cancelCallbacks[V],$&&$()}else Ce()||z.mustQueue?(this.tasks[V]=z,this.taskQueue.push(V),this.invoker.trigger()):this.processTask(V,z)},Jw.prototype.process=function(){if(this.taskQueue.length){var g=this.taskQueue.shift(),z=this.tasks[g];delete this.tasks[g],this.taskQueue.length&&this.invoker.trigger(),z&&this.processTask(g,z)}},Jw.prototype.processTask=function(g,z){var V=this;if(z.type===""){var $=this.callbacks[g];delete this.callbacks[g],$&&(z.error?$(st(z.error)):$(null,st(z.data)))}else{var oe=!1,me=ke(this.globalScope)?void 0:[],je=z.hasCallback?function(qr,Pr){oe=!0,delete V.cancelCallbacks[g],V.target.postMessage({id:g,type:"",sourceMapId:V.mapId,error:qr?Qe(qr):null,data:Qe(Pr,me)},me)}:function(qr){oe=!0},xt=null,Ft=st(z.data);if(this.parent[z.type])xt=this.parent[z.type](z.sourceMapId,Ft,je);else if(this.parent.getWorkerSource){var Xt=z.type.split("."),br=this.parent.getWorkerSource(z.sourceMapId,Xt[0],Ft.source);xt=br[Xt[1]](Ft,je)}else je(new Error("Could not find function "+z.type));!oe&&xt&&xt.cancel&&(this.cancelCallbacks[g]=xt.cancel)}},Jw.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};function Ntt(y,g,z){g=Math.pow(2,z)-g-1;var V=oee(y*256,g*256,z),$=oee((y+1)*256,(g+1)*256,z);return V[0]+","+V[1]+","+$[0]+","+$[1]}function oee(y,g,z){var V=2*Math.PI*6378137/256/Math.pow(2,z),$=y*V-2*Math.PI*6378137/2,oe=g*V-2*Math.PI*6378137/2;return[$,oe]}var yh=function(g,z){g&&(z?this.setSouthWest(g).setNorthEast(z):g.length===4?this.setSouthWest([g[0],g[1]]).setNorthEast([g[2],g[3]]):this.setSouthWest(g[0]).setNorthEast(g[1]))};yh.prototype.setNorthEast=function(g){return this._ne=g instanceof Dc?new Dc(g.lng,g.lat):Dc.convert(g),this},yh.prototype.setSouthWest=function(g){return this._sw=g instanceof Dc?new Dc(g.lng,g.lat):Dc.convert(g),this},yh.prototype.extend=function(g){var z=this._sw,V=this._ne,$,oe;if(g instanceof Dc)$=g,oe=g;else if(g instanceof yh){if($=g._sw,oe=g._ne,!$||!oe)return this}else{if(Array.isArray(g))if(g.length===4||g.every(Array.isArray)){var me=g;return this.extend(yh.convert(me))}else{var je=g;return this.extend(Dc.convert(je))}return this}return!z&&!V?(this._sw=new Dc($.lng,$.lat),this._ne=new Dc(oe.lng,oe.lat)):(z.lng=Math.min($.lng,z.lng),z.lat=Math.min($.lat,z.lat),V.lng=Math.max(oe.lng,V.lng),V.lat=Math.max(oe.lat,V.lat)),this},yh.prototype.getCenter=function(){return new Dc((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},yh.prototype.getSouthWest=function(){return this._sw},yh.prototype.getNorthEast=function(){return this._ne},yh.prototype.getNorthWest=function(){return new Dc(this.getWest(),this.getNorth())},yh.prototype.getSouthEast=function(){return new Dc(this.getEast(),this.getSouth())},yh.prototype.getWest=function(){return this._sw.lng},yh.prototype.getSouth=function(){return this._sw.lat},yh.prototype.getEast=function(){return this._ne.lng},yh.prototype.getNorth=function(){return this._ne.lat},yh.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},yh.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},yh.prototype.isEmpty=function(){return!(this._sw&&this._ne)},yh.prototype.contains=function(g){var z=Dc.convert(g),V=z.lng,$=z.lat,oe=this._sw.lat<=$&&$<=this._ne.lat,me=this._sw.lng<=V&&V<=this._ne.lng;return this._sw.lng>this._ne.lng&&(me=this._sw.lng>=V&&V>=this._ne.lng),oe&&me},yh.convert=function(g){return!g||g instanceof yh?g:new yh(g)};var see=63710088e-1,Dc=function(g,z){if(isNaN(g)||isNaN(z))throw new Error("Invalid LngLat object: ("+g+", "+z+")");if(this.lng=+g,this.lat=+z,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};Dc.prototype.wrap=function(){return new Dc(k(this.lng,-180,180),this.lat)},Dc.prototype.toArray=function(){return[this.lng,this.lat]},Dc.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},Dc.prototype.distanceTo=function(g){var z=Math.PI/180,V=this.lat*z,$=g.lat*z,oe=Math.sin(V)*Math.sin($)+Math.cos(V)*Math.cos($)*Math.cos((g.lng-this.lng)*z),me=see*Math.acos(Math.min(oe,1));return me},Dc.prototype.toBounds=function(g){g===void 0&&(g=0);var z=40075017,V=360*g/z,$=V/Math.cos(Math.PI/180*this.lat);return new yh(new Dc(this.lng-$,this.lat-V),new Dc(this.lng+$,this.lat+V))},Dc.convert=function(g){if(g instanceof Dc)return g;if(Array.isArray(g)&&(g.length===2||g.length===3))return new Dc(Number(g[0]),Number(g[1]));if(!Array.isArray(g)&&typeof g=="object"&&g!==null)return new Dc(Number("lng"in g?g.lng:g.lon),Number(g.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")};var lee=2*Math.PI*see;function uee(y){return lee*Math.cos(y*Math.PI/180)}function fee(y){return(180+y)/360}function cee(y){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+y*Math.PI/360)))/360}function hee(y,g){return y/uee(g)}function Utt(y){return y*360-180}function S9(y){var g=180-y*360;return 360/Math.PI*Math.atan(Math.exp(g*Math.PI/180))-90}function Vtt(y,g){return y*uee(S9(g))}function Gtt(y){return 1/Math.cos(y*Math.PI/180)}var nb=function(g,z,V){V===void 0&&(V=0),this.x=+g,this.y=+z,this.z=+V};nb.fromLngLat=function(g,z){z===void 0&&(z=0);var V=Dc.convert(g);return new nb(fee(V.lng),cee(V.lat),hee(z,V.lat))},nb.prototype.toLngLat=function(){return new Dc(Utt(this.x),S9(this.y))},nb.prototype.toAltitude=function(){return Vtt(this.z,this.y)},nb.prototype.meterInMercatorCoordinateUnits=function(){return 1/lee*Gtt(S9(this.y))};var ab=function(g,z,V){this.z=g,this.x=z,this.y=V,this.key=EM(0,g,g,z,V)};ab.prototype.equals=function(g){return this.z===g.z&&this.x===g.x&&this.y===g.y},ab.prototype.url=function(g,z){var V=Ntt(this.x,this.y,this.z),$=Htt(this.z,this.x,this.y);return g[(this.x+this.y)%g.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String(z==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",$).replace("{bbox-epsg-3857}",V)},ab.prototype.getTilePoint=function(g){var z=Math.pow(2,this.z);return new l((g.x*z-this.x)*An,(g.y*z-this.y)*An)},ab.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var dee=function(g,z){this.wrap=g,this.canonical=z,this.key=EM(g,z.z,z.z,z.x,z.y)},gh=function(g,z,V,$,oe){this.overscaledZ=g,this.wrap=z,this.canonical=new ab(V,+$,+oe),this.key=EM(z,g,V,$,oe)};gh.prototype.equals=function(g){return this.overscaledZ===g.overscaledZ&&this.wrap===g.wrap&&this.canonical.equals(g.canonical)},gh.prototype.scaledTo=function(g){var z=this.canonical.z-g;return g>this.canonical.z?new gh(g,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new gh(g,this.wrap,g,this.canonical.x>>z,this.canonical.y>>z)},gh.prototype.calculateScaledKey=function(g,z){var V=this.canonical.z-g;return g>this.canonical.z?EM(this.wrap*+z,g,this.canonical.z,this.canonical.x,this.canonical.y):EM(this.wrap*+z,g,g,this.canonical.x>>V,this.canonical.y>>V)},gh.prototype.isChildOf=function(g){if(g.wrap!==this.wrap)return!1;var z=this.canonical.z-g.canonical.z;return g.overscaledZ===0||g.overscaledZ>z&&g.canonical.y===this.canonical.y>>z},gh.prototype.children=function(g){if(this.overscaledZ>=g)return[new gh(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var z=this.canonical.z+1,V=this.canonical.x*2,$=this.canonical.y*2;return[new gh(z,this.wrap,z,V,$),new gh(z,this.wrap,z,V+1,$),new gh(z,this.wrap,z,V,$+1),new gh(z,this.wrap,z,V+1,$+1)]},gh.prototype.isLessThan=function(g){return this.wrapg.wrap?!1:this.overscaledZg.overscaledZ?!1:this.canonical.xg.canonical.x?!1:this.canonical.y0;oe--)$=1<=this.dim+1||z<-1||z>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(z+1)*this.stride+(g+1)},pg.prototype._unpackMapbox=function(g,z,V){return(g*256*256+z*256+V)/10-1e4},pg.prototype._unpackTerrarium=function(g,z,V){return g*256+z+V/256-32768},pg.prototype.getPixels=function(){return new Ph({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},pg.prototype.backfillBorder=function(g,z,V){if(this.dim!==g.dim)throw new Error("dem dimension mismatch");var $=z*this.dim,oe=z*this.dim+this.dim,me=V*this.dim,je=V*this.dim+this.dim;switch(z){case-1:$=oe-1;break;case 1:oe=$+1;break}switch(V){case-1:me=je-1;break;case 1:je=me+1;break}for(var xt=-z*this.dim,Ft=-V*this.dim,Xt=me;Xt=0&&br[3]>=0&&xt.insert(je,br[0],br[1],br[2],br[3])}},vg.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new vm.VectorTile(new su(this.rawTileData)).layers,this.sourceLayerCoder=new rL(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},vg.prototype.query=function(g,z,V,$){var oe=this;this.loadVTLayers();for(var me=g.params||{},je=An/g.tileSize/g.scale,xt=Se(me.filter),Ft=g.queryGeometry,Xt=g.queryPadding*je,br=vee(Ft),qr=this.grid.query(br.minX-Xt,br.minY-Xt,br.maxX+Xt,br.maxY+Xt),Pr=vee(g.cameraQueryGeometry),ai=this.grid3D.query(Pr.minX-Xt,Pr.minY-Xt,Pr.maxX+Xt,Pr.maxY+Xt,function(Zs,Cl,Al,hu){return mv(g.cameraQueryGeometry,Zs-Xt,Cl-Xt,Al+Xt,hu+Xt)}),Oi=0,Wn=ai;Oi$)oe=!1;else if(!z)oe=!0;else if(this.expirationTime=xn.maxzoom)&&xn.visibility!=="none"){h(Ii,this.zoom,Wt);var bi=jr[xn.id]=xn.createBucket({index:Hr.bucketLayerIDs.length,layers:Ii,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:tn,sourceID:this.source});bi.populate(Yr,gi,this.tileID.canonical),Hr.bucketLayerIDs.push(Ii.map(function(ii){return ii.id}))}}}}var Xr,ct,tr,pr,gr=i.mapObject(gi.glyphDependencies,function(ii){return Object.keys(ii).map(Number)});Object.keys(gr).length?xr.send("getGlyphs",{uid:this.uid,stacks:gr},function(ii,Xi){Xr||(Xr=ii,ct=Xi,en.call(Nr))}):ct={};var Zr=Object.keys(gi.iconDependencies);Zr.length?xr.send("getImages",{icons:Zr,source:this.source,tileID:this.tileID,type:"icons"},function(ii,Xi){Xr||(Xr=ii,tr=Xi,en.call(Nr))}):tr={};var Ti=Object.keys(gi.patternDependencies);Ti.length?xr.send("getImages",{icons:Ti,source:this.source,tileID:this.tileID,type:"patterns"},function(ii,Xi){Xr||(Xr=ii,pr=Xi,en.call(Nr))}):pr={},en.call(this);function en(){if(Xr)return Lr(Xr);if(ct&&tr&&pr){var ii=new f(ct),Xi=new i.ImageAtlas(tr,pr);for(var aa in jr){var Mn=jr[aa];Mn instanceof i.SymbolBucket?(h(Mn.layers,this.zoom,Wt),i.performSymbolLayout(Mn,ct,ii.positions,tr,Xi.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):Mn.hasPattern&&(Mn instanceof i.LineBucket||Mn instanceof i.FillBucket||Mn instanceof i.FillExtrusionBucket)&&(h(Mn.layers,this.zoom,Wt),Mn.addFeatures(gi,this.tileID.canonical,Xi.patternPositions))}this.status="done",Lr(null,{buckets:i.values(jr).filter(function(Un){return!Un.isEmpty()}),featureIndex:Hr,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:ii.image,imageAtlas:Xi,glyphMap:this.returnDependencies?ct:null,iconMap:this.returnDependencies?tr:null,glyphPositions:this.returnDependencies?ii.positions:null})}}};function h(Rt,yt,Gt){for(var Wt=new i.EvaluationParameters(yt),xr=0,Lr=Rt;xr=0!=!!yt&&Rt.reverse()}var L=i.vectorTile.VectorTileFeature.prototype.toGeoJSON,x=function(yt){this._feature=yt,this.extent=i.EXTENT,this.type=yt.type,this.properties=yt.tags,"id"in yt&&!isNaN(yt.id)&&(this.id=parseInt(yt.id,10))};x.prototype.loadGeometry=function(){if(this._feature.type===1){for(var yt=[],Gt=0,Wt=this._feature.geometry;Gt>31}function Ce(Rt,yt){for(var Gt=Rt.loadGeometry(),Wt=Rt.type,xr=0,Lr=0,Nr=Gt.length,Or=0;Or>1;ke(Rt,yt,Nr,Wt,xr,Lr%2),te(Rt,yt,Gt,Wt,Nr-1,Lr+1),te(Rt,yt,Gt,Nr+1,xr,Lr+1)}}function ke(Rt,yt,Gt,Wt,xr,Lr){for(;xr>Wt;){if(xr-Wt>600){var Nr=xr-Wt+1,Or=Gt-Wt+1,Hr=Math.log(Nr),jr=.5*Math.exp(2*Hr/3),gi=.5*Math.sqrt(Hr*jr*(Nr-jr)/Nr)*(Or-Nr/2<0?-1:1),ki=Math.max(Wt,Math.floor(Gt-Or*jr/Nr+gi)),Vi=Math.min(xr,Math.floor(Gt+(Nr-Or)*jr/Nr+gi));ke(Rt,yt,Gt,ki,Vi,Lr)}var ti=yt[2*Gt+Lr],tn=Wt,Yr=xr;for(Ee(Rt,yt,Wt,Gt),yt[2*xr+Lr]>ti&&Ee(Rt,yt,Wt,xr);tnti;)Yr--}yt[2*Wt+Lr]===ti?Ee(Rt,yt,Wt,Yr):(Yr++,Ee(Rt,yt,Yr,xr)),Yr<=Gt&&(Wt=Yr+1),Gt<=Yr&&(xr=Yr-1)}}function Ee(Rt,yt,Gt,Wt){Me(Rt,Gt,Wt),Me(yt,2*Gt,2*Wt),Me(yt,2*Gt+1,2*Wt+1)}function Me(Rt,yt,Gt){var Wt=Rt[yt];Rt[yt]=Rt[Gt],Rt[Gt]=Wt}function Ue(Rt,yt,Gt,Wt,xr,Lr,Nr){for(var Or=[0,Rt.length-1,0],Hr=[],jr,gi;Or.length;){var ki=Or.pop(),Vi=Or.pop(),ti=Or.pop();if(Vi-ti<=Nr){for(var tn=ti;tn<=Vi;tn++)jr=yt[2*tn],gi=yt[2*tn+1],jr>=Gt&&jr<=xr&&gi>=Wt&&gi<=Lr&&Hr.push(Rt[tn]);continue}var Yr=Math.floor((ti+Vi)/2);jr=yt[2*Yr],gi=yt[2*Yr+1],jr>=Gt&&jr<=xr&&gi>=Wt&&gi<=Lr&&Hr.push(Rt[Yr]);var oi=(ki+1)%2;(ki===0?Gt<=jr:Wt<=gi)&&(Or.push(ti),Or.push(Yr-1),Or.push(oi)),(ki===0?xr>=jr:Lr>=gi)&&(Or.push(Yr+1),Or.push(Vi),Or.push(oi))}return Hr}function De(Rt,yt,Gt,Wt,xr,Lr){for(var Nr=[0,Rt.length-1,0],Or=[],Hr=xr*xr;Nr.length;){var jr=Nr.pop(),gi=Nr.pop(),ki=Nr.pop();if(gi-ki<=Lr){for(var Vi=ki;Vi<=gi;Vi++)ye(yt[2*Vi],yt[2*Vi+1],Gt,Wt)<=Hr&&Or.push(Rt[Vi]);continue}var ti=Math.floor((ki+gi)/2),tn=yt[2*ti],Yr=yt[2*ti+1];ye(tn,Yr,Gt,Wt)<=Hr&&Or.push(Rt[ti]);var oi=(jr+1)%2;(jr===0?Gt-xr<=tn:Wt-xr<=Yr)&&(Nr.push(ki),Nr.push(ti-1),Nr.push(oi)),(jr===0?Gt+xr>=tn:Wt+xr>=Yr)&&(Nr.push(ti+1),Nr.push(gi),Nr.push(oi))}return Or}function ye(Rt,yt,Gt,Wt){var xr=Rt-Gt,Lr=yt-Wt;return xr*xr+Lr*Lr}var qe=function(Rt){return Rt[0]},ce=function(Rt){return Rt[1]},Je=function(yt,Gt,Wt,xr,Lr){Gt===void 0&&(Gt=qe),Wt===void 0&&(Wt=ce),xr===void 0&&(xr=64),Lr===void 0&&(Lr=Float64Array),this.nodeSize=xr,this.points=yt;for(var Nr=yt.length<65536?Uint16Array:Uint32Array,Or=this.ids=new Nr(yt.length),Hr=this.coords=new Lr(yt.length*2),jr=0;jr=xr;gi--){var ki=+Date.now();Hr=this._cluster(Hr,gi),this.trees[gi]=new Je(Hr,Te,ot,Nr,Float32Array),Wt&&console.log("z%d: %d clusters in %dms",gi,Hr.length,+Date.now()-ki)}return Wt&&console.timeEnd("total time"),this},gt.prototype.getClusters=function(yt,Gt){var Wt=((yt[0]+180)%360+360)%360-180,xr=Math.max(-90,Math.min(90,yt[1])),Lr=yt[2]===180?180:((yt[2]+180)%360+360)%360-180,Nr=Math.max(-90,Math.min(90,yt[3]));if(yt[2]-yt[0]>=360)Wt=-180,Lr=180;else if(Wt>Lr){var Or=this.getClusters([Wt,xr,180,Nr],Gt),Hr=this.getClusters([-180,xr,Lr,Nr],Gt);return Or.concat(Hr)}for(var jr=this.trees[this._limitZoom(Gt)],gi=jr.range(wt(Wt),St(Nr),wt(Lr),St(xr)),ki=[],Vi=0,ti=gi;ViGt&&(Yr+=nn.numPoints||1)}if(Yr>=Hr){for(var Ri=ki.x*tn,Ii=ki.y*tn,xn=Or&&tn>1?this._map(ki,!0):null,bi=(gi<<5)+(Gt+1)+this.points.length,Xr=0,ct=ti;Xr1)for(var Zr=0,Ti=ti;Zr>5},gt.prototype._getOriginZoom=function(yt){return(yt-this.points.length)%32},gt.prototype._map=function(yt,Gt){if(yt.numPoints)return Gt?Et({},yt.properties):yt.properties;var Wt=this.points[yt.index].properties,xr=this.options.map(Wt);return Gt&&xr===Wt?Et({},xr):xr};function Nt(Rt,yt,Gt,Wt,xr){return{x:Rt,y:yt,zoom:1/0,id:Gt,parentId:-1,numPoints:Wt,properties:xr}}function at(Rt,yt){var Gt=Rt.geometry.coordinates,Wt=Gt[0],xr=Gt[1];return{x:wt(Wt),y:St(xr),zoom:1/0,index:yt,parentId:-1}}function Ke(Rt){return{type:"Feature",id:Rt.id,properties:Ct(Rt),geometry:{type:"Point",coordinates:[Dt(Rt.x),Zt(Rt.y)]}}}function Ct(Rt){var yt=Rt.numPoints,Gt=yt>=1e4?Math.round(yt/1e3)+"k":yt>=1e3?Math.round(yt/100)/10+"k":yt;return Et(Et({},Rt.properties),{cluster:!0,cluster_id:Rt.id,point_count:yt,point_count_abbreviated:Gt})}function wt(Rt){return Rt/360+.5}function St(Rt){var yt=Math.sin(Rt*Math.PI/180),Gt=.5-.25*Math.log((1+yt)/(1-yt))/Math.PI;return Gt<0?0:Gt>1?1:Gt}function Dt(Rt){return(Rt-.5)*360}function Zt(Rt){var yt=(180-Rt*360)*Math.PI/180;return 360*Math.atan(Math.exp(yt))/Math.PI-90}function Et(Rt,yt){for(var Gt in yt)Rt[Gt]=yt[Gt];return Rt}function Te(Rt){return Rt.x}function ot(Rt){return Rt.y}function Tt(Rt,yt,Gt,Wt){for(var xr=Wt,Lr=Gt-yt>>1,Nr=Gt-yt,Or,Hr=Rt[yt],jr=Rt[yt+1],gi=Rt[Gt],ki=Rt[Gt+1],Vi=yt+3;Vixr)Or=Vi,xr=ti;else if(ti===xr){var tn=Math.abs(Vi-Lr);tnWt&&(Or-yt>3&&Tt(Rt,yt,Or,Wt),Rt[Or+2]=xr,Gt-Or>3&&Tt(Rt,Or,Gt,Wt))}function vt(Rt,yt,Gt,Wt,xr,Lr){var Nr=xr-Gt,Or=Lr-Wt;if(Nr!==0||Or!==0){var Hr=((Rt-Gt)*Nr+(yt-Wt)*Or)/(Nr*Nr+Or*Or);Hr>1?(Gt=xr,Wt=Lr):Hr>0&&(Gt+=Nr*Hr,Wt+=Or*Hr)}return Nr=Rt-Gt,Or=yt-Wt,Nr*Nr+Or*Or}function Ye(Rt,yt,Gt,Wt){var xr={id:typeof Rt=="undefined"?null:Rt,type:yt,geometry:Gt,tags:Wt,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return He(xr),xr}function He(Rt){var yt=Rt.geometry,Gt=Rt.type;if(Gt==="Point"||Gt==="MultiPoint"||Gt==="LineString")it(Rt,yt);else if(Gt==="Polygon"||Gt==="MultiLineString")for(var Wt=0;Wt0&&(Wt?Nr+=(xr*jr-Hr*Lr)/2:Nr+=Math.sqrt(Math.pow(Hr-xr,2)+Math.pow(jr-Lr,2))),xr=Hr,Lr=jr}var gi=yt.length-3;yt[2]=1,Tt(yt,0,gi,Gt),yt[gi+2]=1,yt.size=Math.abs(Nr),yt.start=0,yt.end=yt.size}function _r(Rt,yt,Gt,Wt){for(var xr=0;xr1?1:Gt}function Re(Rt,yt,Gt,Wt,xr,Lr,Nr,Or){if(Gt/=yt,Wt/=yt,Lr>=Gt&&Nr=Wt)return null;for(var Hr=[],jr=0;jr=Gt&&tn=Wt)continue;var Yr=[];if(Vi==="Point"||Vi==="MultiPoint")xe(ki,Yr,Gt,Wt,xr);else if(Vi==="LineString")Oe(ki,Yr,Gt,Wt,xr,!1,Or.lineMetrics);else if(Vi==="MultiLineString")Fe(ki,Yr,Gt,Wt,xr,!1);else if(Vi==="Polygon")Fe(ki,Yr,Gt,Wt,xr,!0);else if(Vi==="MultiPolygon")for(var oi=0;oi=Gt&&Nr<=Wt&&(yt.push(Rt[Lr]),yt.push(Rt[Lr+1]),yt.push(Rt[Lr+2]))}}function Oe(Rt,yt,Gt,Wt,xr,Lr,Nr){for(var Or=Ie(Rt),Hr=xr===0?ge:fe,jr=Rt.start,gi,ki,Vi=0;ViGt&&(ki=Hr(Or,ti,tn,oi,Fi,Gt),Nr&&(Or.start=jr+gi*ki)):an>Wt?nn=Gt&&(ki=Hr(Or,ti,tn,oi,Fi,Gt),Ri=!0),nn>Wt&&an<=Wt&&(ki=Hr(Or,ti,tn,oi,Fi,Wt),Ri=!0),!Lr&&Ri&&(Nr&&(Or.end=jr+gi*ki),yt.push(Or),Or=Ie(Rt)),Nr&&(jr+=gi)}var Ii=Rt.length-3;ti=Rt[Ii],tn=Rt[Ii+1],Yr=Rt[Ii+2],an=xr===0?ti:tn,an>=Gt&&an<=Wt&&ft(Or,ti,tn,Yr),Ii=Or.length-3,Lr&&Ii>=3&&(Or[Ii]!==Or[0]||Or[Ii+1]!==Or[1])&&ft(Or,Or[0],Or[1],Or[2]),Or.length&&yt.push(Or)}function Ie(Rt){var yt=[];return yt.size=Rt.size,yt.start=Rt.start,yt.end=Rt.end,yt}function Fe(Rt,yt,Gt,Wt,xr,Lr){for(var Nr=0;NrNr.maxX&&(Nr.maxX=gi),ki>Nr.maxY&&(Nr.maxY=ki)}return Nr}function Br(Rt,yt,Gt,Wt){var xr=yt.geometry,Lr=yt.type,Nr=[];if(Lr==="Point"||Lr==="MultiPoint")for(var Or=0;Or0&&yt.size<(xr?Nr:Wt)){Gt.numPoints+=yt.length/3;return}for(var Or=[],Hr=0;HrNr)&&(Gt.numSimplified++,Or.push(yt[Hr]),Or.push(yt[Hr+1])),Gt.numPoints++;xr&&Rr(Or,Lr),Rt.push(Or)}function Rr(Rt,yt){for(var Gt=0,Wt=0,xr=Rt.length,Lr=xr-2;Wt0===yt)for(Wt=0,xr=Rt.length;Wt24)throw new Error("maxZoom should be in the 0-24 range");if(yt.promoteId&&yt.generateId)throw new Error("promoteId and generateId cannot be used together.");var Wt=et(Rt,yt);this.tiles={},this.tileCoords=[],Gt&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",yt.indexMaxZoom,yt.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),Wt=pe(Wt,yt),Wt.length&&this.splitTile(Wt,0,0,0),Gt&&(Wt.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}Di.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Di.prototype.splitTile=function(Rt,yt,Gt,Wt,xr,Lr,Nr){for(var Or=[Rt,yt,Gt,Wt],Hr=this.options,jr=Hr.debug;Or.length;){Wt=Or.pop(),Gt=Or.pop(),yt=Or.pop(),Rt=Or.pop();var gi=1<1&&console.time("creation"),Vi=this.tiles[ki]=Gr(Rt,yt,Gt,Wt,Hr),this.tileCoords.push({z:yt,x:Gt,y:Wt}),jr)){jr>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",yt,Gt,Wt,Vi.numFeatures,Vi.numPoints,Vi.numSimplified),console.timeEnd("creation"));var ti="z"+yt;this.stats[ti]=(this.stats[ti]||0)+1,this.total++}if(Vi.source=Rt,xr){if(yt===Hr.maxZoom||yt===xr)continue;var tn=1<1&&console.time("clipping");var Yr=.5*Hr.buffer/Hr.extent,oi=.5-Yr,Fi=.5+Yr,an=1+Yr,nn,Ri,Ii,xn,bi,Xr;nn=Ri=Ii=xn=null,bi=Re(Rt,gi,Gt-Yr,Gt+Fi,0,Vi.minX,Vi.maxX,Hr),Xr=Re(Rt,gi,Gt+oi,Gt+an,0,Vi.minX,Vi.maxX,Hr),Rt=null,bi&&(nn=Re(bi,gi,Wt-Yr,Wt+Fi,1,Vi.minY,Vi.maxY,Hr),Ri=Re(bi,gi,Wt+oi,Wt+an,1,Vi.minY,Vi.maxY,Hr),bi=null),Xr&&(Ii=Re(Xr,gi,Wt-Yr,Wt+Fi,1,Vi.minY,Vi.maxY,Hr),xn=Re(Xr,gi,Wt+oi,Wt+an,1,Vi.minY,Vi.maxY,Hr),Xr=null),jr>1&&console.timeEnd("clipping"),Or.push(nn||[],yt+1,Gt*2,Wt*2),Or.push(Ri||[],yt+1,Gt*2,Wt*2+1),Or.push(Ii||[],yt+1,Gt*2+1,Wt*2),Or.push(xn||[],yt+1,Gt*2+1,Wt*2+1)}}},Di.prototype.getTile=function(Rt,yt,Gt){var Wt=this.options,xr=Wt.extent,Lr=Wt.debug;if(Rt<0||Rt>24)return null;var Nr=1<1&&console.log("drilling down to z%d-%d-%d",Rt,yt,Gt);for(var Hr=Rt,jr=yt,gi=Gt,ki;!ki&&Hr>0;)Hr--,jr=Math.floor(jr/2),gi=Math.floor(gi/2),ki=this.tiles[ni(Hr,jr,gi)];return!ki||!ki.source?null:(Lr>1&&console.log("found parent tile z%d-%d-%d",Hr,jr,gi),Lr>1&&console.time("drilling down"),this.splitTile(ki.source,Hr,jr,gi,Rt,yt,Gt),Lr>1&&console.timeEnd("drilling down"),this.tiles[Or]?zt(this.tiles[Or],xr):null)};function ni(Rt,yt,Gt){return((1<=0?0:Y.button},o.remove=function(Y){Y.parentNode&&Y.parentNode.removeChild(Y)};function _(Y,R,J){var O,K,_e,ne=i.browser.devicePixelRatio>1?"@2x":"",Le=i.getJSON(R.transformRequest(R.normalizeSpriteURL(Y,ne,".json"),i.ResourceType.SpriteJSON),function(dr,Mr){Le=null,_e||(_e=dr,O=Mr,kt())}),Ze=i.getImage(R.transformRequest(R.normalizeSpriteURL(Y,ne,".png"),i.ResourceType.SpriteImage),function(dr,Mr){Ze=null,_e||(_e=dr,K=Mr,kt())});function kt(){if(_e)J(_e);else if(O&&K){var dr=i.browser.getImageData(K),Mr={};for(var lr in O){var $e=O[lr],ht=$e.width,bt=$e.height,Kt=$e.x,sr=$e.y,Qt=$e.sdf,ur=$e.pixelRatio,er=$e.stretchX,Ot=$e.stretchY,Jt=$e.content,Lt=new i.RGBAImage({width:ht,height:bt});i.RGBAImage.copy(dr,Lt,{x:Kt,y:sr},{x:0,y:0},{width:ht,height:bt}),Mr[lr]={data:Lt,pixelRatio:ur,sdf:Qt,stretchX:er,stretchY:Ot,content:Jt}}J(null,Mr)}}return{cancel:function(){Le&&(Le.cancel(),Le=null),Ze&&(Ze.cancel(),Ze=null)}}}function b(Y){var R=Y.userImage;if(R&&R.render){var J=R.render();if(J)return Y.data.replace(new Uint8Array(R.data.buffer)),!0}return!1}var v=1,k=function(Y){function R(){Y.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new i.RGBAImage({width:1,height:1}),this.dirty=!0}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R.prototype.isLoaded=function(){return this.loaded},R.prototype.setLoaded=function(O){if(this.loaded!==O&&(this.loaded=O,O)){for(var K=0,_e=this.requestors;K<_e.length;K+=1){var ne=_e[K],Le=ne.ids,Ze=ne.callback;this._notify(Le,Ze)}this.requestors=[]}},R.prototype.getImage=function(O){return this.images[O]},R.prototype.addImage=function(O,K){this._validate(O,K)&&(this.images[O]=K)},R.prototype._validate=function(O,K){var _e=!0;return this._validateStretch(K.stretchX,K.data&&K.data.width)||(this.fire(new i.ErrorEvent(new Error('Image "'+O+'" has invalid "stretchX" value'))),_e=!1),this._validateStretch(K.stretchY,K.data&&K.data.height)||(this.fire(new i.ErrorEvent(new Error('Image "'+O+'" has invalid "stretchY" value'))),_e=!1),this._validateContent(K.content,K)||(this.fire(new i.ErrorEvent(new Error('Image "'+O+'" has invalid "content" value'))),_e=!1),_e},R.prototype._validateStretch=function(O,K){if(!O)return!0;for(var _e=0,ne=0,Le=O;ne=0?1.2:1))}C.prototype.draw=function(Y){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(Y,this.buffer,this.middle);for(var R=this.ctx.getImageData(0,0,this.size,this.size),J=new Uint8ClampedArray(this.size*this.size),O=0;O65535){dr(new Error("glyphs > 65535 not supported"));return}if($e.ranges[bt]){dr(null,{stack:Mr,id:lr,glyph:ht});return}var Kt=$e.requests[bt];Kt||(Kt=$e.requests[bt]=[],P.loadGlyphRange(Mr,bt,O.url,O.requestManager,function(sr,Qt){if(Qt){for(var ur in Qt)O._doesCharSupportLocalGlyph(+ur)||($e.glyphs[+ur]=Qt[+ur]);$e.ranges[bt]=!0}for(var er=0,Ot=Kt;er1&&(kt=R[++Ze]);var Mr=Math.abs(dr-kt.left),lr=Math.abs(dr-kt.right),$e=Math.min(Mr,lr),ht=void 0,bt=_e/O*(K+1);if(kt.isDash){var Kt=K-Math.abs(bt);ht=Math.sqrt($e*$e+Kt*Kt)}else ht=K-Math.sqrt($e*$e+bt*bt);this.data[Le+dr]=Math.max(0,Math.min(255,ht+128))}},G.prototype.addRegularDash=function(R){for(var J=R.length-1;J>=0;--J){var O=R[J],K=R[J+1];O.zeroLength?R.splice(J,1):K&&K.isDash===O.isDash&&(K.left=O.left,R.splice(J,1))}var _e=R[0],ne=R[R.length-1];_e.isDash===ne.isDash&&(_e.left=ne.left-this.width,ne.right=_e.right+this.width);for(var Le=this.width*this.nextRow,Ze=0,kt=R[Ze],dr=0;dr1&&(kt=R[++Ze]);var Mr=Math.abs(dr-kt.left),lr=Math.abs(dr-kt.right),$e=Math.min(Mr,lr),ht=kt.isDash?$e:-$e;this.data[Le+dr]=Math.max(0,Math.min(255,ht+128))}},G.prototype.addDash=function(R,J){var O=J?7:0,K=2*O+1;if(this.nextRow+K>this.height)return i.warnOnce("LineAtlas out of space"),null;for(var _e=0,ne=0;ne=O.minX&&R.x=O.minY&&R.y0&&(dr[new i.OverscaledTileID(O.overscaledZ,Le,K.z,ne,K.y-1).key]={backfilled:!1},dr[new i.OverscaledTileID(O.overscaledZ,O.wrap,K.z,K.x,K.y-1).key]={backfilled:!1},dr[new i.OverscaledTileID(O.overscaledZ,kt,K.z,Ze,K.y-1).key]={backfilled:!1}),K.y+1<_e&&(dr[new i.OverscaledTileID(O.overscaledZ,Le,K.z,ne,K.y+1).key]={backfilled:!1},dr[new i.OverscaledTileID(O.overscaledZ,O.wrap,K.z,K.x,K.y+1).key]={backfilled:!1},dr[new i.OverscaledTileID(O.overscaledZ,kt,K.z,Ze,K.y+1).key]={backfilled:!1}),dr},R.prototype.unloadTile=function(O){O.demTexture&&this.map.painter.saveTileTexture(O.demTexture),O.fbo&&(O.fbo.destroy(),delete O.fbo),O.dem&&delete O.dem,delete O.neighboringTiles,O.state="unloaded",O.actor&&O.actor.send("removeDEMTile",{uid:O.uid,source:this.id})},R}(re),be=function(Y){function R(J,O,K,_e){Y.call(this),this.id=J,this.type="geojson",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this._removed=!1,this._loaded=!1,this.actor=K.getActor(),this.setEventedParent(_e),this._data=O.data,this._options=i.extend({},O),this._collectResourceTiming=O.collectResourceTiming,this._resourceTiming=[],O.maxzoom!==void 0&&(this.maxzoom=O.maxzoom),O.type&&(this.type=O.type),O.attribution&&(this.attribution=O.attribution),this.promoteId=O.promoteId;var ne=i.EXTENT/this.tileSize;this.workerOptions=i.extend({source:this.id,cluster:O.cluster||!1,geojsonVtOptions:{buffer:(O.buffer!==void 0?O.buffer:128)*ne,tolerance:(O.tolerance!==void 0?O.tolerance:.375)*ne,extent:i.EXTENT,maxZoom:this.maxzoom,lineMetrics:O.lineMetrics||!1,generateId:O.generateId||!1},superclusterOptions:{maxZoom:O.clusterMaxZoom!==void 0?Math.min(O.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,minPoints:Math.max(2,O.clusterMinPoints||2),extent:i.EXTENT,radius:(O.clusterRadius||50)*ne,log:!1,generateId:O.generateId||!1},clusterProperties:O.clusterProperties,filter:O.filter},O.workerOptions)}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R.prototype.load=function(){var O=this;this.fire(new i.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(K){if(K){O.fire(new i.ErrorEvent(K));return}var _e={dataType:"source",sourceDataType:"metadata"};O._collectResourceTiming&&O._resourceTiming&&O._resourceTiming.length>0&&(_e.resourceTiming=O._resourceTiming,O._resourceTiming=[]),O.fire(new i.Event("data",_e))})},R.prototype.onAdd=function(O){this.map=O,this.load()},R.prototype.setData=function(O){var K=this;return this._data=O,this.fire(new i.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(_e){if(_e){K.fire(new i.ErrorEvent(_e));return}var ne={dataType:"source",sourceDataType:"content"};K._collectResourceTiming&&K._resourceTiming&&K._resourceTiming.length>0&&(ne.resourceTiming=K._resourceTiming,K._resourceTiming=[]),K.fire(new i.Event("data",ne))}),this},R.prototype.getClusterExpansionZoom=function(O,K){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:O,source:this.id},K),this},R.prototype.getClusterChildren=function(O,K){return this.actor.send("geojson.getClusterChildren",{clusterId:O,source:this.id},K),this},R.prototype.getClusterLeaves=function(O,K,_e,ne){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:O,limit:K,offset:_e},ne),this},R.prototype._updateWorkerData=function(O){var K=this;this._loaded=!1;var _e=i.extend({},this.workerOptions),ne=this._data;typeof ne=="string"?(_e.request=this.map._requestManager.transformRequest(i.browser.resolveURL(ne),i.ResourceType.Source),_e.request.collectResourceTiming=this._collectResourceTiming):_e.data=JSON.stringify(ne),this.actor.send(this.type+".loadData",_e,function(Le,Ze){K._removed||Ze&&Ze.abandoned||(K._loaded=!0,Ze&&Ze.resourceTiming&&Ze.resourceTiming[K.id]&&(K._resourceTiming=Ze.resourceTiming[K.id].slice(0)),K.actor.send(K.type+".coalesce",{source:_e.source},null),O(Le))})},R.prototype.loaded=function(){return this._loaded},R.prototype.loadTile=function(O,K){var _e=this,ne=O.actor?"reloadTile":"loadTile";O.actor=this.actor;var Le={type:this.type,uid:O.uid,tileID:O.tileID,zoom:O.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:i.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};O.request=this.actor.send(ne,Le,function(Ze,kt){return delete O.request,O.unloadVectorData(),O.aborted?K(null):Ze?K(Ze):(O.loadVectorData(kt,_e.map.painter,ne==="reloadTile"),K(null))})},R.prototype.abortTile=function(O){O.request&&(O.request.cancel(),delete O.request),O.aborted=!0},R.prototype.unloadTile=function(O){O.unloadVectorData(),this.actor.send("removeTile",{uid:O.uid,type:this.type,source:this.id})},R.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},R.prototype.serialize=function(){return i.extend({},this._options,{type:this.type,data:this._data})},R.prototype.hasTransition=function(){return!1},R}(i.Evented),ze=i.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),Ce=function(Y){function R(J,O,K,_e){Y.call(this),this.id=J,this.dispatcher=K,this.coordinates=O.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(_e),this.options=O}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R.prototype.load=function(O,K){var _e=this;this._loaded=!1,this.fire(new i.Event("dataloading",{dataType:"source"})),this.url=this.options.url,i.getImage(this.map._requestManager.transformRequest(this.url,i.ResourceType.Image),function(ne,Le){_e._loaded=!0,ne?_e.fire(new i.ErrorEvent(ne)):Le&&(_e.image=Le,O&&(_e.coordinates=O),K&&K(),_e._finishLoading())})},R.prototype.loaded=function(){return this._loaded},R.prototype.updateImage=function(O){var K=this;return!this.image||!O.url?this:(this.options.url=O.url,this.load(O.coordinates,function(){K.texture=null}),this)},R.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"metadata"})))},R.prototype.onAdd=function(O){this.map=O,this.load()},R.prototype.setCoordinates=function(O){var K=this;this.coordinates=O;var _e=O.map(i.MercatorCoordinate.fromLngLat);this.tileID=de(_e),this.minzoom=this.maxzoom=this.tileID.z;var ne=_e.map(function(Le){return K.tileID.getTilePoint(Le)._round()});return this._boundsArray=new i.StructArrayLayout4i8,this._boundsArray.emplaceBack(ne[0].x,ne[0].y,0,0),this._boundsArray.emplaceBack(ne[1].x,ne[1].y,i.EXTENT,0),this._boundsArray.emplaceBack(ne[3].x,ne[3].y,0,i.EXTENT),this._boundsArray.emplaceBack(ne[2].x,ne[2].y,i.EXTENT,i.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"content"})),this},R.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||!this.image)){var O=this.map.painter.context,K=O.gl;this.boundsBuffer||(this.boundsBuffer=O.createVertexBuffer(this._boundsArray,ze.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new i.Texture(O,this.image,K.RGBA),this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE));for(var _e in this.tiles){var ne=this.tiles[_e];ne.state!=="loaded"&&(ne.state="loaded",ne.texture=this.texture)}}},R.prototype.loadTile=function(O,K){this.tileID&&this.tileID.equals(O.tileID.canonical)?(this.tiles[String(O.tileID.wrap)]=O,O.buckets={},K(null)):(O.state="errored",K(null))},R.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},R.prototype.hasTransition=function(){return!1},R}(i.Evented);function de(Y){for(var R=1/0,J=1/0,O=-1/0,K=-1/0,_e=0,ne=Y;_eK.end(0)?this.fire(new i.ErrorEvent(new i.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+K.start(0)+" and "+K.end(0)+"-second mark."))):this.video.currentTime=O}},R.prototype.getVideo=function(){return this.video},R.prototype.onAdd=function(O){this.map||(this.map=O,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},R.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||this.video.readyState<2)){var O=this.map.painter.context,K=O.gl;this.boundsBuffer||(this.boundsBuffer=O.createVertexBuffer(this._boundsArray,ze.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE),K.texSubImage2D(K.TEXTURE_2D,0,0,0,K.RGBA,K.UNSIGNED_BYTE,this.video)):(this.texture=new i.Texture(O,this.video,K.RGBA),this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE));for(var _e in this.tiles){var ne=this.tiles[_e];ne.state!=="loaded"&&(ne.state="loaded",ne.texture=this.texture)}}},R.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},R.prototype.hasTransition=function(){return this.video&&!this.video.paused},R}(Ce),ke=function(Y){function R(J,O,K,_e){Y.call(this,J,O,K,_e),O.coordinates?(!Array.isArray(O.coordinates)||O.coordinates.length!==4||O.coordinates.some(function(ne){return!Array.isArray(ne)||ne.length!==2||ne.some(function(Le){return typeof Le!="number"})}))&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'missing required property "coordinates"'))),O.animate&&typeof O.animate!="boolean"&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'optional "animate" property must be a boolean value'))),O.canvas?typeof O.canvas!="string"&&!(O.canvas instanceof i.window.HTMLCanvasElement)&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'missing required property "canvas"'))),this.options=O,this.animate=O.animate!==void 0?O.animate:!0}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R.prototype.load=function(){if(this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof i.window.HTMLCanvasElement?this.options.canvas:i.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()){this.fire(new i.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero.")));return}this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading()},R.prototype.getCanvas=function(){return this.canvas},R.prototype.onAdd=function(O){this.map=O,this.load(),this.canvas&&this.animate&&this.play()},R.prototype.onRemove=function(){this.pause()},R.prototype.prepare=function(){var O=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,O=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,O=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var K=this.map.painter.context,_e=K.gl;this.boundsBuffer||(this.boundsBuffer=K.createVertexBuffer(this._boundsArray,ze.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(O||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new i.Texture(K,this.canvas,_e.RGBA,{premultiply:!0});for(var ne in this.tiles){var Le=this.tiles[ne];Le.state!=="loaded"&&(Le.state="loaded",Le.texture=this.texture)}}},R.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},R.prototype.hasTransition=function(){return this._playing},R.prototype._hasInvalidDimensions=function(){for(var O=0,K=[this.canvas.width,this.canvas.height];Othis.max){var Le=this._getAndRemoveByKey(this.order[0]);Le&&this.onRemove(Le)}return this},at.prototype.has=function(R){return R.wrapped().key in this.data},at.prototype.getAndRemove=function(R){return this.has(R)?this._getAndRemoveByKey(R.wrapped().key):null},at.prototype._getAndRemoveByKey=function(R){var J=this.data[R].shift();return J.timeout&&clearTimeout(J.timeout),this.data[R].length===0&&delete this.data[R],this.order.splice(this.order.indexOf(R),1),J.value},at.prototype.getByKey=function(R){var J=this.data[R];return J?J[0].value:null},at.prototype.get=function(R){if(!this.has(R))return null;var J=this.data[R.wrapped().key][0];return J.value},at.prototype.remove=function(R,J){if(!this.has(R))return this;var O=R.wrapped().key,K=J===void 0?0:this.data[O].indexOf(J),_e=this.data[O][K];return this.data[O].splice(K,1),_e.timeout&&clearTimeout(_e.timeout),this.data[O].length===0&&delete this.data[O],this.onRemove(_e.value),this.order.splice(this.order.indexOf(O),1),this},at.prototype.setMaxSize=function(R){for(this.max=R;this.order.length>this.max;){var J=this._getAndRemoveByKey(this.order[0]);J&&this.onRemove(J)}return this},at.prototype.filter=function(R){var J=[];for(var O in this.data)for(var K=0,_e=this.data[O];K<_e.length;K+=1){var ne=_e[K];R(ne.value)||J.push(ne)}for(var Le=0,Ze=J;Le1||(Math.abs(Mr)>1&&(Math.abs(Mr+$e)===1?Mr+=$e:Math.abs(Mr-$e)===1&&(Mr-=$e)),!(!dr.dem||!kt.dem)&&(kt.dem.backfillBorder(dr.dem,Mr,lr),kt.neighboringTiles&&kt.neighboringTiles[ht]&&(kt.neighboringTiles[ht].backfilled=!0)))}},R.prototype.getTile=function(O){return this.getTileByID(O.key)},R.prototype.getTileByID=function(O){return this._tiles[O]},R.prototype._retainLoadedChildren=function(O,K,_e,ne){for(var Le in this._tiles){var Ze=this._tiles[Le];if(!(ne[Le]||!Ze.hasData()||Ze.tileID.overscaledZ<=K||Ze.tileID.overscaledZ>_e)){for(var kt=Ze.tileID;Ze&&Ze.tileID.overscaledZ>K+1;){var dr=Ze.tileID.scaledTo(Ze.tileID.overscaledZ-1);Ze=this._tiles[dr.key],Ze&&Ze.hasData()&&(kt=dr)}for(var Mr=kt;Mr.overscaledZ>K;)if(Mr=Mr.scaledTo(Mr.overscaledZ-1),O[Mr.key]){ne[kt.key]=kt;break}}}},R.prototype.findLoadedParent=function(O,K){if(O.key in this._loadedParentTiles){var _e=this._loadedParentTiles[O.key];return _e&&_e.tileID.overscaledZ>=K?_e:null}for(var ne=O.overscaledZ-1;ne>=K;ne--){var Le=O.scaledTo(ne),Ze=this._getLoadedTile(Le);if(Ze)return Ze}},R.prototype._getLoadedTile=function(O){var K=this._tiles[O.key];if(K&&K.hasData())return K;var _e=this._cache.getByKey(O.wrapped().key);return _e},R.prototype.updateCacheSize=function(O){var K=Math.ceil(O.width/this._source.tileSize)+1,_e=Math.ceil(O.height/this._source.tileSize)+1,ne=K*_e,Le=5,Ze=Math.floor(ne*Le),kt=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Ze):Ze;this._cache.setMaxSize(kt)},R.prototype.handleWrapJump=function(O){var K=this._prevLng===void 0?O:this._prevLng,_e=O-K,ne=_e/360,Le=Math.round(ne);if(this._prevLng=O,Le){var Ze={};for(var kt in this._tiles){var dr=this._tiles[kt];dr.tileID=dr.tileID.unwrapTo(dr.tileID.wrap+Le),Ze[dr.tileID.key]=dr}this._tiles=Ze;for(var Mr in this._timers)clearTimeout(this._timers[Mr]),delete this._timers[Mr];for(var lr in this._tiles){var $e=this._tiles[lr];this._setTileReloadTimer(lr,$e)}}},R.prototype.update=function(O){var K=this;if(this.transform=O,!(!this._sourceLoaded||this._paused)){this.updateCacheSize(O),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={};var _e;this.used?this._source.tileID?_e=O.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(hi){return new i.OverscaledTileID(hi.canonical.z,hi.wrap,hi.canonical.z,hi.canonical.x,hi.canonical.y)}):(_e=O.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(_e=_e.filter(function(hi){return K._source.hasTile(hi)}))):_e=[];var ne=O.coveringZoomLevel(this._source),Le=Math.max(ne-R.maxOverzooming,this._source.minzoom),Ze=Math.max(ne+R.maxUnderzooming,this._source.minzoom),kt=this._updateRetainedTiles(_e,ne);if(Hr(this._source.type)){for(var dr={},Mr={},lr=Object.keys(kt),$e=0,ht=lr;$ethis._source.maxzoom){var Qt=Kt.children(this._source.maxzoom)[0],ur=this.getTile(Qt);if(ur&&ur.hasData()){_e[Qt.key]=Qt;continue}}else{var er=Kt.children(this._source.maxzoom);if(_e[er[0].key]&&_e[er[1].key]&&_e[er[2].key]&&_e[er[3].key])continue}for(var Ot=sr.wasRequested(),Jt=Kt.overscaledZ-1;Jt>=Le;--Jt){var Lt=Kt.scaledTo(Jt);if(ne[Lt.key]||(ne[Lt.key]=!0,sr=this.getTile(Lt),!sr&&Ot&&(sr=this._addTile(Lt)),sr&&(_e[Lt.key]=Lt,Ot=sr.wasRequested(),sr.hasData())))break}}}return _e},R.prototype._updateLoadedParentTileCache=function(){this._loadedParentTiles={};for(var O in this._tiles){for(var K=[],_e=void 0,ne=this._tiles[O].tileID;ne.overscaledZ>0;){if(ne.key in this._loadedParentTiles){_e=this._loadedParentTiles[ne.key];break}K.push(ne.key);var Le=ne.scaledTo(ne.overscaledZ-1);if(_e=this._getLoadedTile(Le),_e)break;ne=Le}for(var Ze=0,kt=K;Ze0)&&(K.hasData()&&K.state!=="reloading"?this._cache.add(K.tileID,K,K.getExpiryTimeout()):(K.aborted=!0,this._abortTile(K),this._unloadTile(K))))},R.prototype.clearTiles=function(){this._shouldReloadOnResume=!1,this._paused=!1;for(var O in this._tiles)this._removeTile(O);this._cache.reset()},R.prototype.tilesIn=function(O,K,_e){var ne=this,Le=[],Ze=this.transform;if(!Ze)return Le;for(var kt=_e?Ze.getCameraQueryGeometry(O):O,dr=O.map(function(Jt){return Ze.pointCoordinate(Jt)}),Mr=kt.map(function(Jt){return Ze.pointCoordinate(Jt)}),lr=this.getIds(),$e=1/0,ht=1/0,bt=-1/0,Kt=-1/0,sr=0,Qt=Mr;sr=0&&Cn[1].y+hi>=0){var Yi=dr.map(function(Xa){return Ar.getTilePoint(Xa)}),yn=Mr.map(function(Xa){return Ar.getTilePoint(Xa)});Le.push({tile:Lt,tileID:Ar,queryGeometry:Yi,cameraQueryGeometry:yn,scale:Ur})}}},Ot=0;Ot=i.browser.now())return!0}return!1},R.prototype.setFeatureState=function(O,K,_e){O=O||"_geojsonTileLayer",this._state.updateState(O,K,_e)},R.prototype.removeFeatureState=function(O,K,_e){O=O||"_geojsonTileLayer",this._state.removeFeatureState(O,K,_e)},R.prototype.getFeatureState=function(O,K){return O=O||"_geojsonTileLayer",this._state.getState(O,K)},R.prototype.setDependencies=function(O,K,_e){var ne=this._tiles[O];ne&&ne.setDependencies(K,_e)},R.prototype.reloadTilesForDependencies=function(O,K){for(var _e in this._tiles){var ne=this._tiles[_e];ne.hasDependency(O,K)&&this._reloadTile(_e,"reloading")}this._cache.filter(function(Le){return!Le.hasDependency(O,K)})},R}(i.Evented);Nr.maxOverzooming=10,Nr.maxUnderzooming=3;function Or(Y,R){var J=Math.abs(Y.wrap*2)-+(Y.wrap<0),O=Math.abs(R.wrap*2)-+(R.wrap<0);return Y.overscaledZ-R.overscaledZ||O-J||R.canonical.y-Y.canonical.y||R.canonical.x-Y.canonical.x}function Hr(Y){return Y==="raster"||Y==="image"||Y==="video"}function jr(){return new i.window.Worker(cu.workerUrl)}var gi="mapboxgl_preloaded_worker_pool",ki=function(){this.active={}};ki.prototype.acquire=function(R){if(!this.workers)for(this.workers=[];this.workers.length0?(K-ne)/Le:0;return this.points[_e].mult(1-Ze).add(this.points[J].mult(Ze))};var ii=function(R,J,O){var K=this.boxCells=[],_e=this.circleCells=[];this.xCellCount=Math.ceil(R/O),this.yCellCount=Math.ceil(J/O);for(var ne=0;nethis.width||K<0||J>this.height)return _e?!1:[];var Le=[];if(R<=0&&J<=0&&this.width<=O&&this.height<=K){if(_e)return!0;for(var Ze=0;Ze0:Le}},ii.prototype._queryCircle=function(R,J,O,K,_e){var ne=R-O,Le=R+O,Ze=J-O,kt=J+O;if(Le<0||ne>this.width||kt<0||Ze>this.height)return K?!1:[];var dr=[],Mr={hitTest:K,circle:{x:R,y:J,radius:O},seenUids:{box:{},circle:{}}};return this._forEachCell(ne,Ze,Le,kt,this._queryCellCircle,dr,Mr,_e),K?dr.length>0:dr},ii.prototype.query=function(R,J,O,K,_e){return this._query(R,J,O,K,!1,_e)},ii.prototype.hitTest=function(R,J,O,K,_e){return this._query(R,J,O,K,!0,_e)},ii.prototype.hitTestCircle=function(R,J,O,K){return this._queryCircle(R,J,O,!0,K)},ii.prototype._queryCell=function(R,J,O,K,_e,ne,Le,Ze){var kt=Le.seenUids,dr=this.boxCells[_e];if(dr!==null)for(var Mr=this.bboxes,lr=0,$e=dr;lr<$e.length;lr+=1){var ht=$e[lr];if(!kt.box[ht]){kt.box[ht]=!0;var bt=ht*4;if(R<=Mr[bt+2]&&J<=Mr[bt+3]&&O>=Mr[bt+0]&&K>=Mr[bt+1]&&(!Ze||Ze(this.boxKeys[ht]))){if(Le.hitTest)return ne.push(!0),!0;ne.push({key:this.boxKeys[ht],x1:Mr[bt],y1:Mr[bt+1],x2:Mr[bt+2],y2:Mr[bt+3]})}}}var Kt=this.circleCells[_e];if(Kt!==null)for(var sr=this.circles,Qt=0,ur=Kt;QtLe*Le+Ze*Ze},ii.prototype._circleAndRectCollide=function(R,J,O,K,_e,ne,Le){var Ze=(ne-K)/2,kt=Math.abs(R-(K+Ze));if(kt>Ze+O)return!1;var dr=(Le-_e)/2,Mr=Math.abs(J-(_e+dr));if(Mr>dr+O)return!1;if(kt<=Ze||Mr<=dr)return!0;var lr=kt-Ze,$e=Mr-dr;return lr*lr+$e*$e<=O*O};function Xi(Y,R,J,O,K){var _e=i.create();return R?(i.scale(_e,_e,[1/K,1/K,1]),J||i.rotateZ(_e,_e,O.angle)):i.multiply(_e,O.labelPlaneMatrix,Y),_e}function aa(Y,R,J,O,K){if(R){var _e=i.clone(Y);return i.scale(_e,_e,[K,K,1]),J||i.rotateZ(_e,_e,-O.angle),_e}else return O.glCoordMatrix}function Mn(Y,R){var J=[Y.x,Y.y,0,1];kn(J,J,R);var O=J[3];return{point:new i.Point(J[0]/O,J[1]/O),signedDistanceFromCamera:O}}function Un(Y,R){return .5+.5*(Y/R)}function Ga(Y,R){var J=Y[0]/Y[3],O=Y[1]/Y[3],K=J>=-R[0]&&J<=R[0]&&O>=-R[1]&&O<=R[1];return K}function ma(Y,R,J,O,K,_e,ne,Le){var Ze=O?Y.textSizeData:Y.iconSizeData,kt=i.evaluateSizeForZoom(Ze,J.transform.zoom),dr=[256/J.width*2+1,256/J.height*2+1],Mr=O?Y.text.dynamicLayoutVertexArray:Y.icon.dynamicLayoutVertexArray;Mr.clear();for(var lr=Y.lineVertexArray,$e=O?Y.text.placedSymbolArray:Y.icon.placedSymbolArray,ht=J.transform.width/J.transform.height,bt=!1,Kt=0;Kt<$e.length;Kt++){var sr=$e.get(Kt);if(sr.hidden||sr.writingMode===i.WritingMode.vertical&&!bt){fa(sr.numGlyphs,Mr);continue}bt=!1;var Qt=[sr.anchorX,sr.anchorY,0,1];if(i.transformMat4(Qt,Qt,R),!Ga(Qt,dr)){fa(sr.numGlyphs,Mr);continue}var ur=Qt[3],er=Un(J.transform.cameraToCenterDistance,ur),Ot=i.evaluateSizeForFeature(Ze,kt,sr),Jt=ne?Ot/er:Ot*er,Lt=new i.Point(sr.anchorX,sr.anchorY),Ar=Mn(Lt,K).point,Ur={},hi=so(sr,Jt,!1,Le,R,K,_e,Y.glyphOffsetArray,lr,Mr,Ar,Lt,Ur,ht);bt=hi.useVertical,(hi.notEnoughRoom||bt||hi.needsFlipping&&so(sr,Jt,!0,Le,R,K,_e,Y.glyphOffsetArray,lr,Mr,Ar,Lt,Ur,ht).notEnoughRoom)&&fa(sr.numGlyphs,Mr)}O?Y.text.dynamicLayoutVertexBuffer.updateData(Mr):Y.icon.dynamicLayoutVertexBuffer.updateData(Mr)}function oa(Y,R,J,O,K,_e,ne,Le,Ze,kt,dr){var Mr=Le.glyphStartIndex+Le.numGlyphs,lr=Le.lineStartIndex,$e=Le.lineStartIndex+Le.lineLength,ht=R.getoffsetX(Le.glyphStartIndex),bt=R.getoffsetX(Mr-1),Kt=Ia(Y*ht,J,O,K,_e,ne,Le.segment,lr,$e,Ze,kt,dr);if(!Kt)return null;var sr=Ia(Y*bt,J,O,K,_e,ne,Le.segment,lr,$e,Ze,kt,dr);return sr?{first:Kt,last:sr}:null}function ka(Y,R,J,O){if(Y===i.WritingMode.horizontal){var K=Math.abs(J.y-R.y),_e=Math.abs(J.x-R.x)*O;if(K>_e)return{useVertical:!0}}return(Y===i.WritingMode.vertical?R.yJ.x)?{needsFlipping:!0}:null}function so(Y,R,J,O,K,_e,ne,Le,Ze,kt,dr,Mr,lr,$e){var ht=R/24,bt=Y.lineOffsetX*ht,Kt=Y.lineOffsetY*ht,sr;if(Y.numGlyphs>1){var Qt=Y.glyphStartIndex+Y.numGlyphs,ur=Y.lineStartIndex,er=Y.lineStartIndex+Y.lineLength,Ot=oa(ht,Le,bt,Kt,J,dr,Mr,Y,Ze,_e,lr);if(!Ot)return{notEnoughRoom:!0};var Jt=Mn(Ot.first.point,ne).point,Lt=Mn(Ot.last.point,ne).point;if(O&&!J){var Ar=ka(Y.writingMode,Jt,Lt,$e);if(Ar)return Ar}sr=[Ot.first];for(var Ur=Y.glyphStartIndex+1;Ur0?yn.point:Kr(Mr,Yi,hi,1,K),ca=ka(Y.writingMode,hi,Xa,$e);if(ca)return ca}var An=Ia(ht*Le.getoffsetX(Y.glyphStartIndex),bt,Kt,J,dr,Mr,Y.segment,Y.lineStartIndex,Y.lineStartIndex+Y.lineLength,Ze,_e,lr);if(!An)return{notEnoughRoom:!0};sr=[An]}for(var Pn=0,Nn=sr;Pn0?1:-1,ht=0;O&&($e*=-1,ht=Math.PI),$e<0&&(ht+=Math.PI);for(var bt=$e>0?Le+ne:Le+ne+1,Kt=K,sr=K,Qt=0,ur=0,er=Math.abs(lr),Ot=[];Qt+ur<=er;){if(bt+=$e,bt=Ze)return null;if(sr=Kt,Ot.push(Kt),Kt=Mr[bt],Kt===void 0){var Jt=new i.Point(kt.getx(bt),kt.gety(bt)),Lt=Mn(Jt,dr);if(Lt.signedDistanceFromCamera>0)Kt=Mr[bt]=Lt.point;else{var Ar=bt-$e,Ur=Qt===0?_e:new i.Point(kt.getx(Ar),kt.gety(Ar));Kt=Kr(Ur,Jt,sr,er-Qt+1,dr)}}Qt+=ur,ur=sr.dist(Kt)}var hi=(er-Qt)/ur,Cn=Kt.sub(sr),Yi=Cn.mult(hi)._add(sr);Yi._add(Cn._unit()._perp()._mult(J*$e));var yn=ht+Math.atan2(Kt.y-sr.y,Kt.x-sr.x);return Ot.push(Yi),{point:Yi,angle:yn,path:Ot}}var Yo=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function fa(Y,R){for(var J=0;J=1;xa--)Nn.push(An.path[xa]);for(var Zo=1;Zo0){for(var vu=Nn[0].clone(),zu=Nn[0].clone(),Ju=1;Ju=yn.x&&zu.x<=Xa.x&&vu.y>=yn.y&&zu.y<=Xa.y?Du=[Nn]:zu.xXa.x||zu.yXa.y?Du=[]:Du=i.clipLine([Nn],yn.x,yn.y,Xa.x,Xa.y)}for(var Vf=0,wd=Du;Vf=this.screenRightBoundary||Kthis.screenBottomBoundary},ys.prototype.isInsideGrid=function(R,J,O,K){return O>=0&&R=0&&J0){var er;return this.prevPlacement&&this.prevPlacement.variableOffsets[lr.crossTileID]&&this.prevPlacement.placements[lr.crossTileID]&&this.prevPlacement.placements[lr.crossTileID].text&&(er=this.prevPlacement.variableOffsets[lr.crossTileID].anchor),this.variableOffsets[lr.crossTileID]={textOffset:Kt,width:O,height:K,anchor:R,textBoxScale:_e,prevAnchor:er},this.markUsedJustification($e,R,lr,ht),$e.allowVerticalPlacement&&(this.markUsedOrientation($e,ht,lr),this.placedOrientations[lr.crossTileID]=ht),{shift:sr,placedGlyphBoxes:Qt}}},Po.prototype.placeLayerBucketPart=function(R,J,O){var K=this,_e=R.parameters,ne=_e.bucket,Le=_e.layout,Ze=_e.posMatrix,kt=_e.textLabelPlaneMatrix,dr=_e.labelToScreenMatrix,Mr=_e.textPixelRatio,lr=_e.holdingForFade,$e=_e.collisionBoxArray,ht=_e.partiallyEvaluatedTextSize,bt=_e.collisionGroup,Kt=Le.get("text-optional"),sr=Le.get("icon-optional"),Qt=Le.get("text-allow-overlap"),ur=Le.get("icon-allow-overlap"),er=Le.get("text-rotation-alignment")==="map",Ot=Le.get("text-pitch-alignment")==="map",Jt=Le.get("icon-text-fit")!=="none",Lt=Le.get("symbol-z-order")==="viewport-y",Ar=Qt&&(ur||!ne.hasIconData()||sr),Ur=ur&&(Qt||!ne.hasTextData()||Kt);!ne.collisionArrays&&$e&&ne.deserializeCollisionBoxes($e);var hi=function(An,Pn){if(!J[An.crossTileID]){if(lr){K.placements[An.crossTileID]=new fo(!1,!1,!1);return}var Nn=!1,xa=!1,Zo=!0,ru=null,yu={box:null,offscreen:null},Du={box:null,offscreen:null},vu=null,zu=null,Ju=null,Vf=0,wd=0,Td=0;Pn.textFeatureIndex?Vf=Pn.textFeatureIndex:An.useRuntimeCollisionCircles&&(Vf=An.featureIndex),Pn.verticalTextFeatureIndex&&(wd=Pn.verticalTextFeatureIndex);var Ad=Pn.textBox;if(Ad){var Kp=function(wc){var Wf=i.WritingMode.horizontal;if(ne.allowVerticalPlacement&&!wc&&K.prevPlacement){var Ed=K.prevPlacement.placedOrientations[An.crossTileID];Ed&&(K.placedOrientations[An.crossTileID]=Ed,Wf=Ed,K.markUsedOrientation(ne,Wf,An))}return Wf},fm=function(wc,Wf){if(ne.allowVerticalPlacement&&An.numVerticalGlyphVertices>0&&Pn.verticalTextBox)for(var Ed=0,lg=ne.writingModes;Ed0&&(Hd=Hd.filter(function(wc){return wc!==Md.anchor}),Hd.unshift(Md.anchor))}var Pp=function(wc,Wf,Ed){for(var lg=wc.x2-wc.x1,T1=wc.y2-wc.y1,ic=An.textBoxScale,Nx=Jt&&!ur?Wf:null,ay={box:[],offscreen:!1},Ew=Qt?Hd.length*2:Hd.length,Ip=0;Ip=Hd.length,Ux=K.attemptAnchorPlacement(oy,wc,lg,T1,ic,er,Ot,Mr,Ze,bt,kw,An,ne,Ed,Nx);if(Ux&&(ay=Ux.placedGlyphBoxes,ay&&ay.box&&ay.box.length)){Nn=!0,ru=Ux.shift;break}}return ay},Jp=function(){return Pp(Ad,Pn.iconBox,i.WritingMode.horizontal)},zp=function(){var wc=Pn.verticalTextBox,Wf=yu&&yu.box&&yu.box.length;return ne.allowVerticalPlacement&&!Wf&&An.numVerticalGlyphVertices>0&&wc?Pp(wc,Pn.verticalIconBox,i.WritingMode.vertical):{box:null,offscreen:null}};fm(Jp,zp),yu&&(Nn=yu.box,Zo=yu.offscreen);var ag=Kp(yu&&yu.box);if(!Nn&&K.prevPlacement){var cm=K.prevPlacement.variableOffsets[An.crossTileID];cm&&(K.variableOffsets[An.crossTileID]=cm,K.markUsedJustification(ne,cm.anchor,An,ag))}}else{var vv=function(wc,Wf){var Ed=K.collisionIndex.placeCollisionBox(wc,Qt,Mr,Ze,bt.predicate);return Ed&&Ed.box&&Ed.box.length&&(K.markUsedOrientation(ne,Wf,An),K.placedOrientations[An.crossTileID]=Wf),Ed},Sd=function(){return vv(Ad,i.WritingMode.horizontal)},mv=function(){var wc=Pn.verticalTextBox;return ne.allowVerticalPlacement&&An.numVerticalGlyphVertices>0&&wc?vv(wc,i.WritingMode.vertical):{box:null,offscreen:null}};fm(Sd,mv),Kp(yu&&yu.box&&yu.box.length)}}if(vu=yu,Nn=vu&&vu.box&&vu.box.length>0,Zo=vu&&vu.offscreen,An.useRuntimeCollisionCircles){var vh=ne.text.placedSymbolArray.get(An.centerJustifiedTextSymbolIndex),hm=i.evaluateSizeForFeature(ne.textSizeData,ht,vh),og=Le.get("text-padding"),Zh=An.collisionCircleDiameter;zu=K.collisionIndex.placeCollisionCircles(Qt,vh,ne.lineVertexArray,ne.glyphOffsetArray,hm,Ze,kt,dr,O,Ot,bt.predicate,Zh,og),Nn=Qt||zu.circles.length>0&&!zu.collisionDetected,Zo=Zo&&zu.offscreen}if(Pn.iconFeatureIndex&&(Td=Pn.iconFeatureIndex),Pn.iconBox){var ry=function(wc){var Wf=Jt&&ru?Co(wc,ru.x,ru.y,er,Ot,K.transform.angle):wc;return K.collisionIndex.placeCollisionBox(Wf,ur,Mr,Ze,bt.predicate)};Du&&Du.box&&Du.box.length&&Pn.verticalIconBox?(Ju=ry(Pn.verticalIconBox),xa=Ju.box.length>0):(Ju=ry(Pn.iconBox),xa=Ju.box.length>0),Zo=Zo&&Ju.offscreen}var b1=Kt||An.numHorizontalGlyphVertices===0&&An.numVerticalGlyphVertices===0,w1=sr||An.numIconVertices===0;if(!b1&&!w1?xa=Nn=xa&&Nn:w1?b1||(xa=xa&&Nn):Nn=xa&&Nn,Nn&&vu&&vu.box&&(Du&&Du.box&&wd?K.collisionIndex.insertCollisionBox(vu.box,Le.get("text-ignore-placement"),ne.bucketInstanceId,wd,bt.ID):K.collisionIndex.insertCollisionBox(vu.box,Le.get("text-ignore-placement"),ne.bucketInstanceId,Vf,bt.ID)),xa&&Ju&&K.collisionIndex.insertCollisionBox(Ju.box,Le.get("icon-ignore-placement"),ne.bucketInstanceId,Td,bt.ID),zu&&(Nn&&K.collisionIndex.insertCollisionCircles(zu.circles,Le.get("text-ignore-placement"),ne.bucketInstanceId,Vf,bt.ID),O)){var sg=ne.bucketInstanceId,iy=K.collisionCircleArrays[sg];iy===void 0&&(iy=K.collisionCircleArrays[sg]=new mn);for(var ny=0;ny=0;--Yi){var yn=Cn[Yi];hi(ne.symbolInstances.get(yn),ne.collisionArrays[yn])}else for(var Xa=R.symbolInstanceStart;Xa=0&&(ne>=0&&dr!==ne?R.text.placedSymbolArray.get(dr).crossTileID=0:R.text.placedSymbolArray.get(dr).crossTileID=O.crossTileID)}},Po.prototype.markUsedOrientation=function(R,J,O){for(var K=J===i.WritingMode.horizontal||J===i.WritingMode.horizontalOnly?J:0,_e=J===i.WritingMode.vertical?J:0,ne=[O.leftJustifiedTextSymbolIndex,O.centerJustifiedTextSymbolIndex,O.rightJustifiedTextSymbolIndex],Le=0,Ze=ne;Le0||Ot>0,hi=ur.numIconVertices>0,Cn=K.placedOrientations[ur.crossTileID],Yi=Cn===i.WritingMode.vertical,yn=Cn===i.WritingMode.horizontal||Cn===i.WritingMode.horizontalOnly;if(Ur){var Xa=Qo(Ar.text),ca=Yi?Hi:Xa;ht(R.text,er,ca);var An=yn?Hi:Xa;ht(R.text,Ot,An);var Pn=Ar.text.isHidden();[ur.rightJustifiedTextSymbolIndex,ur.centerJustifiedTextSymbolIndex,ur.leftJustifiedTextSymbolIndex].forEach(function(Td){Td>=0&&(R.text.placedSymbolArray.get(Td).hidden=Pn||Yi?1:0)}),ur.verticalPlacedTextSymbolIndex>=0&&(R.text.placedSymbolArray.get(ur.verticalPlacedTextSymbolIndex).hidden=Pn||yn?1:0);var Nn=K.variableOffsets[ur.crossTileID];Nn&&K.markUsedJustification(R,Nn.anchor,ur,Cn);var xa=K.placedOrientations[ur.crossTileID];xa&&(K.markUsedJustification(R,"left",ur,xa),K.markUsedOrientation(R,xa,ur))}if(hi){var Zo=Qo(Ar.icon),ru=!(lr&&ur.verticalPlacedIconSymbolIndex&&Yi);if(ur.placedIconSymbolIndex>=0){var yu=ru?Zo:Hi;ht(R.icon,ur.numIconVertices,yu),R.icon.placedSymbolArray.get(ur.placedIconSymbolIndex).hidden=Ar.icon.isHidden()}if(ur.verticalPlacedIconSymbolIndex>=0){var Du=ru?Hi:Zo;ht(R.icon,ur.numVerticalIconVertices,Du),R.icon.placedSymbolArray.get(ur.verticalPlacedIconSymbolIndex).hidden=Ar.icon.isHidden()}}if(R.hasIconCollisionBoxData()||R.hasTextCollisionBoxData()){var vu=R.collisionArrays[Qt];if(vu){var zu=new i.Point(0,0);if(vu.textBox||vu.verticalTextBox){var Ju=!0;if(kt){var Vf=K.variableOffsets[Jt];Vf?(zu=ws(Vf.anchor,Vf.width,Vf.height,Vf.textOffset,Vf.textBoxScale),dr&&zu._rotate(Mr?K.transform.angle:-K.transform.angle)):Ju=!1}vu.textBox&&Wi(R.textCollisionBox.collisionVertexArray,Ar.text.placed,!Ju||Yi,zu.x,zu.y),vu.verticalTextBox&&Wi(R.textCollisionBox.collisionVertexArray,Ar.text.placed,!Ju||yn,zu.x,zu.y)}var wd=!!(!yn&&vu.verticalIconBox);vu.iconBox&&Wi(R.iconCollisionBox.collisionVertexArray,Ar.icon.placed,wd,lr?zu.x:0,lr?zu.y:0),vu.verticalIconBox&&Wi(R.iconCollisionBox.collisionVertexArray,Ar.icon.placed,!wd,lr?zu.x:0,lr?zu.y:0)}}},Kt=0;KtR},Po.prototype.setStale=function(){this.stale=!0};function Wi(Y,R,J,O,K){Y.emplaceBack(R?1:0,J?1:0,O||0,K||0),Y.emplaceBack(R?1:0,J?1:0,O||0,K||0),Y.emplaceBack(R?1:0,J?1:0,O||0,K||0),Y.emplaceBack(R?1:0,J?1:0,O||0,K||0)}var gn=Math.pow(2,25),Ps=Math.pow(2,24),Ha=Math.pow(2,17),Sn=Math.pow(2,16),ao=Math.pow(2,9),Ba=Math.pow(2,8),Ko=Math.pow(2,1);function Qo(Y){if(Y.opacity===0&&!Y.placed)return 0;if(Y.opacity===1&&Y.placed)return 4294967295;var R=Y.placed?1:0,J=Math.floor(Y.opacity*127);return J*gn+R*Ps+J*Ha+R*Sn+J*ao+R*Ba+J*Ko+R}var Hi=0,Sa=function(R){this._sortAcrossTiles=R.layout.get("symbol-z-order")!=="viewport-y"&&R.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};Sa.prototype.continuePlacement=function(R,J,O,K,_e){for(var ne=this._bucketParts;this._currentTileIndex2};this._currentPlacementIndex>=0;){var Le=R[this._currentPlacementIndex],Ze=J[Le],kt=this.placement.collisionIndex.transform.zoom;if(Ze.type==="symbol"&&(!Ze.minzoom||Ze.minzoom<=kt)&&(!Ze.maxzoom||Ze.maxzoom>kt)){this._inProgressLayer||(this._inProgressLayer=new Sa(Ze));var dr=this._inProgressLayer.continuePlacement(O[Ze.source],this.placement,this._showCollisionBoxes,Ze,ne);if(dr)return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},Qa.prototype.commit=function(R){return this.placement.commit(R),this.placement};var vn=512/i.EXTENT/2,da=function(R,J,O){this.tileID=R,this.indexedSymbolInstances={},this.bucketInstanceId=O;for(var K=0;KR.overscaledZ)for(var kt in Ze){var dr=Ze[kt];dr.tileID.isChildOf(R)&&dr.findMatches(J.symbolInstances,R,ne)}else{var Mr=R.scaledTo(Number(Le)),lr=Ze[Mr.key];lr&&lr.findMatches(J.symbolInstances,R,ne)}}for(var $e=0;$e0)throw new Error("Unimplemented: "+ne.map(function(Le){return Le.command}).join(", ")+".");return _e.forEach(function(Le){Le.command!=="setTransition"&&K[Le.command].apply(K,Le.args)}),this.stylesheet=O,!0},R.prototype.addImage=function(O,K){if(this.getImage(O))return this.fire(new i.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(O,K),this._afterImageUpdated(O)},R.prototype.updateImage=function(O,K){this.imageManager.updateImage(O,K)},R.prototype.getImage=function(O){return this.imageManager.getImage(O)},R.prototype.removeImage=function(O){if(!this.getImage(O))return this.fire(new i.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(O),this._afterImageUpdated(O)},R.prototype._afterImageUpdated=function(O){this._availableImages=this.imageManager.listImages(),this._changedImages[O]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new i.Event("data",{dataType:"style"}))},R.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},R.prototype.addSource=function(O,K,_e){var ne=this;if(_e===void 0&&(_e={}),this._checkLoaded(),this.sourceCaches[O]!==void 0)throw new Error("There is already a source with this ID");if(!K.type)throw new Error("The type property must be defined, but only the following properties were given: "+Object.keys(K).join(", ")+".");var Le=["vector","raster","geojson","video","image"],Ze=Le.indexOf(K.type)>=0;if(!(Ze&&this._validate(i.validateStyle.source,"sources."+O,K,null,_e))){this.map&&this.map._collectResourceTiming&&(K.collectResourceTiming=!0);var kt=this.sourceCaches[O]=new Nr(O,K,this.dispatcher);kt.style=this,kt.setEventedParent(this,function(){return{isSourceLoaded:ne.loaded(),source:kt.serialize(),sourceId:O}}),kt.onAdd(this.map),this._changed=!0}},R.prototype.removeSource=function(O){if(this._checkLoaded(),this.sourceCaches[O]===void 0)throw new Error("There is no source with this ID");for(var K in this._layers)if(this._layers[K].source===O)return this.fire(new i.ErrorEvent(new Error('Source "'+O+'" cannot be removed while layer "'+K+'" is using it.')));var _e=this.sourceCaches[O];delete this.sourceCaches[O],delete this._updatedSources[O],_e.fire(new i.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:O})),_e.setEventedParent(null),_e.clearTiles(),_e.onRemove&&_e.onRemove(this.map),this._changed=!0},R.prototype.setGeoJSONSourceData=function(O,K){this._checkLoaded();var _e=this.sourceCaches[O].getSource();_e.setData(K),this._changed=!0},R.prototype.getSource=function(O){return this.sourceCaches[O]&&this.sourceCaches[O].getSource()},R.prototype.addLayer=function(O,K,_e){_e===void 0&&(_e={}),this._checkLoaded();var ne=O.id;if(this.getLayer(ne)){this.fire(new i.ErrorEvent(new Error('Layer with id "'+ne+'" already exists on this map')));return}var Le;if(O.type==="custom"){if(ps(this,i.validateCustomStyleLayer(O)))return;Le=i.createStyleLayer(O)}else{if(typeof O.source=="object"&&(this.addSource(ne,O.source),O=i.clone$1(O),O=i.extend(O,{source:ne})),this._validate(i.validateStyle.layer,"layers."+ne,O,{arrayIndex:-1},_e))return;Le=i.createStyleLayer(O),this._validateLayer(Le),Le.setEventedParent(this,{layer:{id:ne}}),this._serializedLayers[Le.id]=Le.serialize()}var Ze=K?this._order.indexOf(K):this._order.length;if(K&&Ze===-1){this.fire(new i.ErrorEvent(new Error('Layer with id "'+K+'" does not exist on this map.')));return}if(this._order.splice(Ze,0,ne),this._layerOrderChanged=!0,this._layers[ne]=Le,this._removedLayers[ne]&&Le.source&&Le.type!=="custom"){var kt=this._removedLayers[ne];delete this._removedLayers[ne],kt.type!==Le.type?this._updatedSources[Le.source]="clear":(this._updatedSources[Le.source]="reload",this.sourceCaches[Le.source].pause())}this._updateLayer(Le),Le.onAdd&&Le.onAdd(this.map)},R.prototype.moveLayer=function(O,K){this._checkLoaded(),this._changed=!0;var _e=this._layers[O];if(!_e){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be moved.")));return}if(O!==K){var ne=this._order.indexOf(O);this._order.splice(ne,1);var Le=K?this._order.indexOf(K):this._order.length;if(K&&Le===-1){this.fire(new i.ErrorEvent(new Error('Layer with id "'+K+'" does not exist on this map.')));return}this._order.splice(Le,0,O),this._layerOrderChanged=!0}},R.prototype.removeLayer=function(O){this._checkLoaded();var K=this._layers[O];if(!K){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be removed.")));return}K.setEventedParent(null);var _e=this._order.indexOf(O);this._order.splice(_e,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[O]=K,delete this._layers[O],delete this._serializedLayers[O],delete this._updatedLayers[O],delete this._updatedPaintProps[O],K.onRemove&&K.onRemove(this.map)},R.prototype.getLayer=function(O){return this._layers[O]},R.prototype.hasLayer=function(O){return O in this._layers},R.prototype.setLayerZoomRange=function(O,K,_e){this._checkLoaded();var ne=this.getLayer(O);if(!ne){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot have zoom extent.")));return}ne.minzoom===K&&ne.maxzoom===_e||(K!=null&&(ne.minzoom=K),_e!=null&&(ne.maxzoom=_e),this._updateLayer(ne))},R.prototype.setFilter=function(O,K,_e){_e===void 0&&(_e={}),this._checkLoaded();var ne=this.getLayer(O);if(!ne){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be filtered.")));return}if(!i.deepEqual(ne.filter,K)){if(K==null){ne.filter=void 0,this._updateLayer(ne);return}this._validate(i.validateStyle.filter,"layers."+ne.id+".filter",K,null,_e)||(ne.filter=i.clone$1(K),this._updateLayer(ne))}},R.prototype.getFilter=function(O){return i.clone$1(this.getLayer(O).filter)},R.prototype.setLayoutProperty=function(O,K,_e,ne){ne===void 0&&(ne={}),this._checkLoaded();var Le=this.getLayer(O);if(!Le){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be styled.")));return}i.deepEqual(Le.getLayoutProperty(K),_e)||(Le.setLayoutProperty(K,_e,ne),this._updateLayer(Le))},R.prototype.getLayoutProperty=function(O,K){var _e=this.getLayer(O);if(!_e){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style.")));return}return _e.getLayoutProperty(K)},R.prototype.setPaintProperty=function(O,K,_e,ne){ne===void 0&&(ne={}),this._checkLoaded();var Le=this.getLayer(O);if(!Le){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be styled.")));return}if(!i.deepEqual(Le.getPaintProperty(K),_e)){var Ze=Le.setPaintProperty(K,_e,ne);Ze&&this._updateLayer(Le),this._changed=!0,this._updatedPaintProps[O]=!0}},R.prototype.getPaintProperty=function(O,K){return this.getLayer(O).getPaintProperty(K)},R.prototype.setFeatureState=function(O,K){this._checkLoaded();var _e=O.source,ne=O.sourceLayer,Le=this.sourceCaches[_e];if(Le===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+_e+"' does not exist in the map's style.")));return}var Ze=Le.getSource().type;if(Ze==="geojson"&&ne){this.fire(new i.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));return}if(Ze==="vector"&&!ne){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}O.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),Le.setFeatureState(ne,O.id,K)},R.prototype.removeFeatureState=function(O,K){this._checkLoaded();var _e=O.source,ne=this.sourceCaches[_e];if(ne===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+_e+"' does not exist in the map's style.")));return}var Le=ne.getSource().type,Ze=Le==="vector"?O.sourceLayer:void 0;if(Le==="vector"&&!Ze){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}if(K&&typeof O.id!="string"&&typeof O.id!="number"){this.fire(new i.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));return}ne.removeFeatureState(Ze,O.id,K)},R.prototype.getFeatureState=function(O){this._checkLoaded();var K=O.source,_e=O.sourceLayer,ne=this.sourceCaches[K];if(ne===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+K+"' does not exist in the map's style.")));return}var Le=ne.getSource().type;if(Le==="vector"&&!_e){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}return O.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),ne.getFeatureState(_e,O.id)},R.prototype.getTransition=function(){return i.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},R.prototype.serialize=function(){return i.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:i.mapObject(this.sourceCaches,function(O){return O.serialize()}),layers:this._serializeLayers(this._order)},function(O){return O!==void 0})},R.prototype._updateLayer=function(O){this._updatedLayers[O.id]=!0,O.source&&!this._updatedSources[O.source]&&this.sourceCaches[O.source].getSource().type!=="raster"&&(this._updatedSources[O.source]="reload",this.sourceCaches[O.source].pause()),this._changed=!0},R.prototype._flattenAndSortRenderedFeatures=function(O){for(var K=this,_e=function(yn){return K._layers[yn].type==="fill-extrusion"},ne={},Le=[],Ze=this._order.length-1;Ze>=0;Ze--){var kt=this._order[Ze];if(_e(kt)){ne[kt]=Ze;for(var dr=0,Mr=O;dr=0;Qt--){var ur=this._order[Qt];if(_e(ur))for(var er=Le.length-1;er>=0;er--){var Ot=Le[er].feature;if(ne[Ot.layer.id] .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":`display:block; width: 21px; height: 21px; background-image: url('data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E')`}}});var Nk=Ae((Kbr,mGe)=>{"use strict";var dGe=ei(),pGe=jl().defaultLine,ljt=zc().attributes,ujt=gc(),fjt=Zc().textposition,cjt=Sc().overrideAll,hjt=Lf().templatedArray,fJ=f1(),vGe=ujt({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});vGe.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var djt=mGe.exports=cjt({_arrayAttrRegexps:[dGe.counterRegex("mapbox",".layers",!0)],domain:ljt({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:fJ.styleValuesMapbox.concat(fJ.styleValuesNonMapbox),dflt:fJ.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:hjt("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:pGe},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:pGe}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:vGe,textposition:dGe.extendFlat({},fjt,{arrayOk:!1})}})},"plot","from-root");djt.uirevision={valType:"any",editType:"none"}});var rB=Ae((Jbr,xGe)=>{"use strict";var{hovertemplateAttrs:pjt,texttemplateAttrs:vjt,templatefallbackAttrs:yGe}=Ff(),mjt=Cm(),Uk=W2(),TS=Zc(),gGe=Nk(),yjt=Gf(),gjt=nc(),rw=Su().extendFlat,_jt=Sc().overrideAll,xjt=Nk(),_Ge=Uk.line,AS=Uk.marker;xGe.exports=_jt({lon:Uk.lon,lat:Uk.lat,cluster:{enabled:{valType:"boolean"},maxzoom:rw({},xjt.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:rw({},AS.opacity,{dflt:1})},mode:rw({},TS.mode,{dflt:"markers"}),text:rw({},TS.text,{}),texttemplate:vjt({editType:"plot"},{keys:["lat","lon","text"]}),texttemplatefallback:yGe({editType:"plot"}),hovertext:rw({},TS.hovertext,{}),line:{color:_Ge.color,width:_Ge.width},connectgaps:TS.connectgaps,marker:rw({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:AS.opacity,size:AS.size,sizeref:AS.sizeref,sizemin:AS.sizemin,sizemode:AS.sizemode},gjt("marker")),fill:Uk.fill,fillcolor:mjt(),textfont:gGe.layers.symbol.textfont,textposition:gGe.layers.symbol.textposition,below:{valType:"string"},selected:{marker:TS.selected.marker},unselected:{marker:TS.unselected.marker},hoverinfo:rw({},yjt.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:pjt(),hovertemplatefallback:yGe()},"calc","nested")});var cJ=Ae(($br,bGe)=>{"use strict";var bjt=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];bGe.exports={isSupportedFont:function(e){return bjt.indexOf(e)!==-1}}});var AGe=Ae((Qbr,TGe)=>{"use strict";var Vk=ei(),hJ=lc(),wjt=$v(),Tjt=I0(),Ajt=R0(),Sjt=Im(),wGe=rB(),Mjt=cJ().isSupportedFont;TGe.exports=function(t,r,n,i){function a(v,k){return Vk.coerce(t,r,wGe,v,k)}function o(v,k){return Vk.coerce2(t,r,wGe,v,k)}var s=Ejt(t,r,a);if(!s){r.visible=!1;return}if(a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),a("below"),hJ.hasMarkers(r)){wjt(t,r,n,i,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var u=r.marker;u.symbol!=="circle"&&(Vk.isArrayOrTypedArray(u.size)&&(u.size=u.size[0]),Vk.isArrayOrTypedArray(u.color)&&(u.color=u.color[0]))}hJ.hasLines(r)&&(Tjt(t,r,n,i,a,{noDash:!0}),a("connectgaps"));var l=o("cluster.maxzoom"),f=o("cluster.step"),c=o("cluster.color",r.marker&&r.marker.color||n),h=o("cluster.size"),d=o("cluster.opacity"),p=l!==!1||f!==!1||c!==!1||h!==!1||d!==!1,_=a("cluster.enabled",p);if(_||hJ.hasText(r)){var b=i.font.family;Ajt(t,r,i,a,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:Mjt(b)?b:"Open Sans Regular",weight:i.font.weight,style:i.font.style,size:i.font.size,color:i.font.color}})}a("fill"),r.fill!=="none"&&Sjt(t,r,n,a),Vk.coerceSelectionMarkerOpacity(r,a)};function Ejt(e,t,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return t._length=a,a}});var dJ=Ae((e2r,MGe)=>{"use strict";var SGe=wu();MGe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=SGe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=SGe.tickText(o,o.c2l(s[1]),!0).text,i}});var pJ=Ae((t2r,kGe)=>{"use strict";var EGe=ei();kGe.exports=function(t,r){var n=t.split(" "),i=n[0],a=n[1],o=EGe.isArrayOrTypedArray(r)?EGe.mean(r):r,s=.5+o/100,u=1.5+o/100,l=["",""],f=[0,0];switch(i){case"top":l[0]="top",f[1]=-u;break;case"bottom":l[0]="bottom",f[1]=u;break}switch(a){case"left":l[1]="right",f[0]=-s;break;case"right":l[1]="left",f[0]=s;break}var c;return l[0]&&l[1]?c=l.join("-"):l[0]?c=l[0]:l[1]?c=l[1]:c="center",{anchor:c,offset:f}}});var RGe=Ae((r2r,IGe)=>{"use strict";var PGe=ku(),sp=ei(),kjt=rf().BADNUM,nB=tx(),CGe=_c(),Cjt=Mu(),Ljt=k3(),aB=lc(),Pjt=cJ().isSupportedFont,zjt=pJ(),Ijt=iv().appendArrayPointValue,Rjt=Xf().NEWLINES,Djt=Xf().BR_TAG_ALL;IGe.exports=function(t,r){var n=r[0].trace,i=n.visible===!0&&n._length!==0,a=n.fill!=="none",o=aB.hasLines(n),s=aB.hasMarkers(n),u=aB.hasText(n),l=s&&n.marker.symbol==="circle",f=s&&n.marker.symbol!=="circle",c=n.cluster&&n.cluster.enabled,h=iB("fill"),d=iB("line"),p=iB("circle"),_=iB("symbol"),b={fill:h,line:d,circle:p,symbol:_};if(!i)return b;var v;if((a||o)&&(v=nB.calcTraceToLineCoords(r)),a&&(h.geojson=nB.makePolygon(v),h.layout.visibility="visible",sp.extendFlat(h.paint,{"fill-color":n.fillcolor})),o&&(d.geojson=nB.makeLine(v),d.layout.visibility="visible",sp.extendFlat(d.paint,{"line-width":n.line.width,"line-color":n.line.color,"line-opacity":n.opacity})),l){var k=Fjt(r);p.geojson=k.geojson,p.layout.visibility="visible",c&&(p.filter=["!",["has","point_count"]],b.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":mJ(n.cluster.color,n.cluster.step),"circle-radius":mJ(n.cluster.size,n.cluster.step),"circle-opacity":mJ(n.cluster.opacity,n.cluster.step)}},b.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":LGe(n),"text-size":12}}),sp.extendFlat(p.paint,{"circle-color":k.mcc,"circle-radius":k.mrc,"circle-opacity":k.mo})}if(l&&c&&(p.filter=["!",["has","point_count"]]),(f||u)&&(_.geojson=Bjt(r,t),sp.extendFlat(_.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),f&&(sp.extendFlat(_.layout,{"icon-size":n.marker.size/10}),"angle"in n.marker&&n.marker.angle!=="auto"&&sp.extendFlat(_.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),_.layout["icon-allow-overlap"]=n.marker.allowoverlap,sp.extendFlat(_.paint,{"icon-opacity":n.opacity*n.marker.opacity,"icon-color":n.marker.color})),u)){var E=(n.marker||{}).size,A=zjt(n.textposition,E);sp.extendFlat(_.layout,{"text-size":n.textfont.size,"text-anchor":A.anchor,"text-offset":A.offset,"text-font":LGe(n)}),sp.extendFlat(_.paint,{"text-color":n.textfont.color,"text-opacity":n.opacity})}return b};function iB(e){return{type:e,geojson:nB.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function Fjt(e){var t=e[0].trace,r=t.marker,n=t.selectedpoints,i=sp.isArrayOrTypedArray(r.color),a=sp.isArrayOrTypedArray(r.size),o=sp.isArrayOrTypedArray(r.opacity),s;function u(E){return t.opacity*E}function l(E){return E/2}var f;i&&(CGe.hasColorscale(t,"marker")?f=CGe.makeColorScaleFuncFromTrace(r):f=sp.identity);var c;a&&(c=Ljt(t));var h;o&&(h=function(E){var A=PGe(E)?+sp.constrain(E,0,1):0;return u(A)});var d=[];for(s=0;s850?s+=" Black":i>750?s+=" Extra Bold":i>650?s+=" Bold":i>550?s+=" Semi Bold":i>450?s+=" Medium":i>350?s+=" Regular":i>250?s+=" Light":i>150?s+=" Extra Light":s+=" Thin"):a.slice(0,2).join(" ")==="Open Sans"?(s="Open Sans",i>750?s+=" Extrabold":i>650?s+=" Bold":i>550?s+=" Semibold":i>350?s+=" Regular":s+=" Light"):a.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(s="Klokantech Noto Sans",a[3]==="CJK"&&(s+=" CJK"),s+=i>500?" Bold":" Regular")),o&&(s+=" Italic"),s==="Open Sans Regular Italic"?s="Open Sans Italic":s==="Open Sans Regular Bold"?s="Open Sans Bold":s==="Open Sans Regular Bold Italic"?s="Open Sans Bold Italic":s==="Klokantech Noto Sans Regular Italic"&&(s="Klokantech Noto Sans Italic"),Pjt(s)||(s=r);var u=s.split(", ");return u}});var OGe=Ae((i2r,BGe)=>{"use strict";var Ojt=ei(),DGe=RGe(),SS=f1().traceLayerPrefix,rm={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function FGe(e,t,r,n){this.type="scattermapbox",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:SS+t+"-fill",line:SS+t+"-line",circle:SS+t+"-circle",symbol:SS+t+"-symbol",cluster:SS+t+"-cluster",clusterCount:SS+t+"-cluster-count"},this.below=null}var Gk=FGe.prototype;Gk.addSource=function(e,t,r){var n={type:"geojson",data:t.geojson};r&&r.enabled&&Ojt.extendFlat(n,{cluster:!0,clusterMaxZoom:r.maxzoom});var i=this.subplot.map.getSource(this.sourceIds[e]);i?i.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],n)};Gk.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};Gk.addLayer=function(e,t,r){var n={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(n.filter=t.filter);for(var i=this.layerIds[e],a,o=this.subplot.getMapLayers(),s=0;s=0;L--){var x=A[L];i.removeLayer(l.layerIds[x])}E||i.removeSource(l.sourceIds.circle)}function h(E){for(var A=rm.nonCluster,L=0;L=0;L--){var x=A[L];i.removeLayer(l.layerIds[x]),E||i.removeSource(l.sourceIds[x])}}function p(E){u?c(E):d(E)}function _(E){s?f(E):h(E)}function b(){for(var E=s?rm.cluster:rm.nonCluster,A=0;A=0;n--){var i=r[n];t.removeLayer(this.layerIds[i]),t.removeSource(this.sourceIds[i])}};BGe.exports=function(t,r){var n=r[0].trace,i=n.cluster&&n.cluster.enabled,a=n.visible!==!0,o=new FGe(t,n.uid,i,a),s=DGe(t.gd,r),u=o.below=t.belowLookup["trace-"+n.uid],l,f,c;if(i)for(o.addSource("circle",s.circle,n.cluster),l=0;l{"use strict";var qjt=Xc(),yJ=ei(),Njt=fT(),Ujt=yJ.fillText,Vjt=rf().BADNUM,Gjt=f1().traceLayerPrefix;function Hjt(e,t,r){var n=e.cd,i=n[0].trace,a=e.xa,o=e.ya,s=e.subplot,u=[],l=Gjt+i.uid+"-circle",f=i.cluster&&i.cluster.enabled;if(f){var c=s.map.queryRenderedFeatures(null,{layers:[l]});u=c.map(function(M){return M.id})}var h=t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360),d=h*360,p=t-d;function _(M){var m=M.lonlat;if(m[0]===Vjt||f&&u.indexOf(M.i+1)===-1)return 1/0;var P=yJ.modHalf(m[0],360),T=m[1],B=s.project([P,T]),F=B.x-a.c2p([p,T]),U=B.y-o.c2p([P,r]),G=Math.max(3,M.mrc||0);return Math.max(Math.sqrt(F*F+U*U)-G,1-3/G)}if(qjt.getClosest(n,_,e),e.index!==!1){var b=n[e.index],v=b.lonlat,k=[yJ.modHalf(v[0],360)+d,v[1]],E=a.c2p(k),A=o.c2p(k),L=b.mrc||1;e.x0=E-L,e.x1=E+L,e.y0=A-L,e.y1=A+L;var x={};x[i.subplot]={_subplot:s};var C=i._module.formatLabels(b,i,x);return e.lonLabel=C.lonLabel,e.latLabel=C.latLabel,e.color=Njt(i,b),e.extraText=qGe(i,b,n[0].t.labels),e.hovertemplate=i.hovertemplate,[e]}}function qGe(e,t,r){if(e.hovertemplate)return;var n=t.hi||e.hoverinfo,i=n.split("+"),a=i.indexOf("all")!==-1,o=i.indexOf("lon")!==-1,s=i.indexOf("lat")!==-1,u=t.lonlat,l=[];function f(c){return c+"\xB0"}return a||o&&s?l.push("("+f(u[1])+", "+f(u[0])+")"):o?l.push(r.lon+f(u[0])):s&&l.push(r.lat+f(u[1])),(a||i.indexOf("text")!==-1)&&Ujt(t,e,l),l.join("
")}NGe.exports={hoverPoints:Hjt,getExtraText:qGe}});var VGe=Ae((a2r,UGe)=>{"use strict";UGe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var HGe=Ae((o2r,GGe)=>{"use strict";var Wjt=ei(),jjt=lc(),Xjt=rf().BADNUM;GGe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,u;if(!jjt.hasMarkers(s))return[];if(r===!1)for(u=0;u{(function(e,t){typeof gJ=="object"&&typeof _J!="undefined"?_J.exports=t():(e=e||self,e.mapboxgl=t())})(gJ,function(){"use strict";var e,t,r;function n(i,a){if(!e)e=a;else if(!t)t=a;else{var o="var sharedChunk = {}; ("+e+")(sharedChunk); ("+t+")(sharedChunk);",s={};e(s),r=a(s),typeof window!="undefined"&&(r.workerUrl=window.URL.createObjectURL(new Blob([o],{type:"text/javascript"})))}}return n(["exports"],function(i){"use strict";function a(y,g){return g={exports:{}},y(g,g.exports),g.exports}var o="1.13.4",s=u;function u(y,g,z,V){this.cx=3*y,this.bx=3*(z-y)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*g,this.by=3*(V-g)-this.cy,this.ay=1-this.cy-this.by,this.p1x=y,this.p1y=V,this.p2x=z,this.p2y=V}u.prototype.sampleCurveX=function(y){return((this.ax*y+this.bx)*y+this.cx)*y},u.prototype.sampleCurveY=function(y){return((this.ay*y+this.by)*y+this.cy)*y},u.prototype.sampleCurveDerivativeX=function(y){return(3*this.ax*y+2*this.bx)*y+this.cx},u.prototype.solveCurveX=function(y,g){typeof g=="undefined"&&(g=1e-6);var z,V,$,oe,me;for($=y,me=0;me<8;me++){if(oe=this.sampleCurveX($)-y,Math.abs(oe)V)return V;for(;zoe?z=$:V=$,$=(V-z)*.5+z}return $},u.prototype.solve=function(y,g){return this.sampleCurveY(this.solveCurveX(y,g))};var l=f;function f(y,g){this.x=y,this.y=g}f.prototype={clone:function(){return new f(this.x,this.y)},add:function(y){return this.clone()._add(y)},sub:function(y){return this.clone()._sub(y)},multByPoint:function(y){return this.clone()._multByPoint(y)},divByPoint:function(y){return this.clone()._divByPoint(y)},mult:function(y){return this.clone()._mult(y)},div:function(y){return this.clone()._div(y)},rotate:function(y){return this.clone()._rotate(y)},rotateAround:function(y,g){return this.clone()._rotateAround(y,g)},matMult:function(y){return this.clone()._matMult(y)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(y){return this.x===y.x&&this.y===y.y},dist:function(y){return Math.sqrt(this.distSqr(y))},distSqr:function(y){var g=y.x-this.x,z=y.y-this.y;return g*g+z*z},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(y){return Math.atan2(this.y-y.y,this.x-y.x)},angleWith:function(y){return this.angleWithSep(y.x,y.y)},angleWithSep:function(y,g){return Math.atan2(this.x*g-this.y*y,this.x*y+this.y*g)},_matMult:function(y){var g=y[0]*this.x+y[1]*this.y,z=y[2]*this.x+y[3]*this.y;return this.x=g,this.y=z,this},_add:function(y){return this.x+=y.x,this.y+=y.y,this},_sub:function(y){return this.x-=y.x,this.y-=y.y,this},_mult:function(y){return this.x*=y,this.y*=y,this},_div:function(y){return this.x/=y,this.y/=y,this},_multByPoint:function(y){return this.x*=y.x,this.y*=y.y,this},_divByPoint:function(y){return this.x/=y.x,this.y/=y.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var y=this.y;return this.y=this.x,this.x=-y,this},_rotate:function(y){var g=Math.cos(y),z=Math.sin(y),V=g*this.x-z*this.y,$=z*this.x+g*this.y;return this.x=V,this.y=$,this},_rotateAround:function(y,g){var z=Math.cos(y),V=Math.sin(y),$=g.x+z*(this.x-g.x)-V*(this.y-g.y),oe=g.y+V*(this.x-g.x)+z*(this.y-g.y);return this.x=$,this.y=oe,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},f.convert=function(y){return y instanceof f?y:Array.isArray(y)?new f(y[0],y[1]):y};var c=typeof self!="undefined"?self:{};function h(y,g){if(Array.isArray(y)){if(!Array.isArray(g)||y.length!==g.length)return!1;for(var z=0;z=1)return 1;var g=y*y,z=g*y;return 4*(y<.5?z:3*(y-g)+z-.75)}function _(y,g,z,V){var $=new s(y,g,z,V);return function(oe){return $.solve(oe)}}var b=_(.25,.1,.25,1);function v(y,g,z){return Math.min(z,Math.max(g,y))}function k(y,g,z){var V=z-g,$=((y-g)%V+V)%V+g;return $===g?z:$}function E(y,g,z){if(!y.length)return z(null,[]);var V=y.length,$=new Array(y.length),oe=null;y.forEach(function(me,je){g(me,function(xt,Ft){xt&&(oe=xt),$[je]=Ft,--V===0&&z(oe,$)})})}function A(y){var g=[];for(var z in y)g.push(y[z]);return g}function L(y,g){var z=[];for(var V in y)V in g||z.push(V);return z}function x(y){for(var g=[],z=arguments.length-1;z-- >0;)g[z]=arguments[z+1];for(var V=0,$=g;V<$.length;V+=1){var oe=$[V];for(var me in oe)y[me]=oe[me]}return y}function C(y,g){for(var z={},V=0;V>g/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,y)}return y()}function T(y){return y<=1?1:Math.pow(2,Math.ceil(Math.log(y)/Math.LN2))}function B(y){return y?/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(y):!1}function F(y,g){y.forEach(function(z){g[z]&&(g[z]=g[z].bind(g))})}function U(y,g){return y.indexOf(g,y.length-g.length)!==-1}function G(y,g,z){var V={};for(var $ in y)V[$]=g.call(z||this,y[$],$,y);return V}function j(y,g,z){var V={};for(var $ in y)g.call(z||this,y[$],$,y)&&(V[$]=y[$]);return V}function W(y){return Array.isArray(y)?y.map(W):typeof y=="object"&&y?G(y,W):y}function N(y,g){for(var z=0;z=0)return!0;return!1}var H={};function re(y){H[y]||(typeof console!="undefined"&&console.warn(y),H[y]=!0)}function ae(y,g,z){return(z.y-y.y)*(g.x-y.x)>(g.y-y.y)*(z.x-y.x)}function be(y){for(var g=0,z=0,V=y.length,$=V-1,oe=void 0,me=void 0;z@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,z={};if(y.replace(g,function($,oe,me,je){var xt=me||je;return z[oe]=xt?xt.toLowerCase():!0,""}),z["max-age"]){var V=parseInt(z["max-age"],10);isNaN(V)?delete z["max-age"]:z["max-age"]=V}return z}var te=null;function ke(y){if(te==null){var g=y.navigator?y.navigator.userAgent:null;te=!!y.safari||!!(g&&(/\b(iPad|iPhone|iPod)\b/.test(g)||g.match("Safari")&&!g.match("Chrome")))}return te}function Ee(y){try{var g=c[y];return g.setItem("_mapbox_test_",1),g.removeItem("_mapbox_test_"),!0}catch(z){return!1}}function Me(y){return c.btoa(encodeURIComponent(y).replace(/%([0-9A-F]{2})/g,function(g,z){return String.fromCharCode(+("0x"+z))}))}function Ue(y){return decodeURIComponent(c.atob(y).split("").map(function(g){return"%"+("00"+g.charCodeAt(0).toString(16)).slice(-2)}).join(""))}var De=c.performance&&c.performance.now?c.performance.now.bind(c.performance):Date.now.bind(Date),ye=c.requestAnimationFrame||c.mozRequestAnimationFrame||c.webkitRequestAnimationFrame||c.msRequestAnimationFrame,qe=c.cancelAnimationFrame||c.mozCancelAnimationFrame||c.webkitCancelAnimationFrame||c.msCancelAnimationFrame,ce,Je,nt={now:De,frame:function(g){var z=ye(g);return{cancel:function(){return qe(z)}}},getImageData:function(g,z){z===void 0&&(z=0);var V=c.document.createElement("canvas"),$=V.getContext("2d");if(!$)throw new Error("failed to create canvas 2d context");return V.width=g.width,V.height=g.height,$.drawImage(g,0,0,g.width,g.height),$.getImageData(-z,-z,g.width+2*z,g.height+2*z)},resolveURL:function(g){return ce||(ce=c.document.createElement("a")),ce.href=g,ce.href},hardwareConcurrency:c.navigator&&c.navigator.hardwareConcurrency||4,get devicePixelRatio(){return c.devicePixelRatio},get prefersReducedMotion(){return c.matchMedia?(Je==null&&(Je=c.matchMedia("(prefers-reduced-motion: reduce)")),Je.matches):!1}},gt={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},Nt={supported:!1,testSupport:St},at,Ke=!1,Ct,wt=!1;c.document&&(Ct=c.document.createElement("img"),Ct.onload=function(){at&&Dt(at),at=null,wt=!0},Ct.onerror=function(){Ke=!0,at=null},Ct.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");function St(y){Ke||!Ct||(wt?Dt(y):at=y)}function Dt(y){var g=y.createTexture();y.bindTexture(y.TEXTURE_2D,g);try{if(y.texImage2D(y.TEXTURE_2D,0,y.RGBA,y.RGBA,y.UNSIGNED_BYTE,Ct),y.isContextLost())return;Nt.supported=!0}catch(z){}y.deleteTexture(g),Ke=!0}var Zt="01";function Et(){for(var y="1",g="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",z="",V=0;V<10;V++)z+=g[Math.floor(Math.random()*62)];var $=12*60*60*1e3,oe=[y,Zt,z].join(""),me=Date.now()+$;return{token:oe,tokenExpiresAt:me}}var Te=function(g,z){this._transformRequestFn=g,this._customAccessToken=z,this._createSkuToken()};Te.prototype._createSkuToken=function(){var g=Et();this._skuToken=g.token,this._skuTokenExpiresAt=g.tokenExpiresAt},Te.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},Te.prototype.transformRequest=function(g,z){return this._transformRequestFn?this._transformRequestFn(g,z)||{url:g}:{url:g}},Te.prototype.normalizeStyleURL=function(g,z){if(!ot(g))return g;var V=et(g);return V.path="/styles/v1"+V.path,this._makeAPIURL(V,this._customAccessToken||z)},Te.prototype.normalizeGlyphsURL=function(g,z){if(!ot(g))return g;var V=et(g);return V.path="/fonts/v1"+V.path,this._makeAPIURL(V,this._customAccessToken||z)},Te.prototype.normalizeSourceURL=function(g,z){if(!ot(g))return g;var V=et(g);return V.path="/v4/"+V.authority+".json",V.params.push("secure"),this._makeAPIURL(V,this._customAccessToken||z)},Te.prototype.normalizeSpriteURL=function(g,z,V,$){var oe=et(g);return ot(g)?(oe.path="/styles/v1"+oe.path+"/sprite"+z+V,this._makeAPIURL(oe,this._customAccessToken||$)):(oe.path+=""+z+V,It(oe))},Te.prototype.normalizeTileURL=function(g,z){if(this._isSkuTokenExpired()&&this._createSkuToken(),g&&!ot(g))return g;var V=et(g),$=/(\.(png|jpg)\d*)(?=$)/,oe=/^.+\/v4\//,me=nt.devicePixelRatio>=2||z===512?"@2x":"",je=Nt.supported?".webp":"$1";V.path=V.path.replace($,""+me+je),V.path=V.path.replace(oe,"/"),V.path="/v4"+V.path;var xt=this._customAccessToken||He(V.params)||gt.ACCESS_TOKEN;return gt.REQUIRE_ACCESS_TOKEN&&xt&&this._skuToken&&V.params.push("sku="+this._skuToken),this._makeAPIURL(V,xt)},Te.prototype.canonicalizeTileURL=function(g,z){var V="/v4/",$=/\.[\w]+$/,oe=et(g);if(!oe.path.match(/(^\/v4\/)/)||!oe.path.match($))return g;var me="mapbox://tiles/";me+=oe.path.replace(V,"");var je=oe.params;return z&&(je=je.filter(function(xt){return!xt.match(/^access_token=/)})),je.length&&(me+="?"+je.join("&")),me},Te.prototype.canonicalizeTileset=function(g,z){for(var V=z?ot(z):!1,$=[],oe=0,me=g.tiles||[];oe=0&&g.params.splice(oe,1)}if($.path!=="/"&&(g.path=""+$.path+g.path),!gt.REQUIRE_ACCESS_TOKEN)return It(g);if(z=z||gt.ACCESS_TOKEN,!z)throw new Error("An API access token is required to use Mapbox GL. "+V);if(z[0]==="s")throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+V);return g.params=g.params.filter(function(me){return me.indexOf("access_token")===-1}),g.params.push("access_token="+z),It(g)};function ot(y){return y.indexOf("mapbox:")===0}var Tt=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function vt(y){return Tt.test(y)}function Ye(y){return y.indexOf("sku=")>0&&vt(y)}function He(y){for(var g=0,z=y;g=1&&c.localStorage.setItem(z,JSON.stringify(this.eventData))}catch($){re("Unable to write to LocalStorage")}},_r.prototype.processRequests=function(g){},_r.prototype.postEvent=function(g,z,V,$){var oe=this;if(gt.EVENTS_URL){var me=et(gt.EVENTS_URL);me.params.push("access_token="+($||gt.ACCESS_TOKEN||""));var je={event:this.type,created:new Date(g).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:o,skuId:Zt,userId:this.anonId},xt=z?x(je,z):je,Ft={url:It(me),headers:{"Content-Type":"text/plain"},body:JSON.stringify([xt])};this.pendingRequest=Or(Ft,function(Xt){oe.pendingRequest=null,V(Xt),oe.saveEventData(),oe.processRequests($)})}},_r.prototype.queueRequest=function(g,z){this.queue.push(g),this.processRequests(z)};var yr=function(y){function g(){y.call(this,"map.load"),this.success={},this.skuToken=""}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.postMapLoadEvent=function(V,$,oe,me){this.skuToken=oe,(gt.EVENTS_URL&&me||gt.ACCESS_TOKEN&&Array.isArray(V)&&V.some(function(je){return ot(je)||vt(je)}))&&this.queueRequest({id:$,timestamp:Date.now()},me)},g.prototype.processRequests=function(V){var $=this;if(!(this.pendingRequest||this.queue.length===0)){var oe=this.queue.shift(),me=oe.id,je=oe.timestamp;me&&this.success[me]||(this.anonId||this.fetchEventData(),B(this.anonId)||(this.anonId=P()),this.postEvent(je,{skuToken:this.skuToken},function(xt){xt||me&&($.success[me]=!0)},V))}},g}(_r),Ut=function(y){function g(z){y.call(this,"appUserTurnstile"),this._customAccessToken=z}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.postTurnstileEvent=function(V,$){gt.EVENTS_URL&>.ACCESS_TOKEN&&Array.isArray(V)&&V.some(function(oe){return ot(oe)||vt(oe)})&&this.queueRequest(Date.now(),$)},g.prototype.processRequests=function(V){var $=this;if(!(this.pendingRequest||this.queue.length===0)){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var oe=cr(gt.ACCESS_TOKEN),me=oe?oe.u:gt.ACCESS_TOKEN,je=me!==this.eventData.tokenU;B(this.anonId)||(this.anonId=P(),je=!0);var xt=this.queue.shift();if(this.eventData.lastSuccess){var Ft=new Date(this.eventData.lastSuccess),Xt=new Date(xt),br=(xt-this.eventData.lastSuccess)/(24*60*60*1e3);je=je||br>=1||br<-1||Ft.getDate()!==Xt.getDate()}else je=!0;if(!je)return this.processRequests();this.postEvent(xt,{"enabled.telemetry":!1},function(qr){qr||($.eventData.lastSuccess=xt,$.eventData.tokenU=me)},V)}},g}(_r),Re=new Ut,xe=Re.postTurnstileEvent.bind(Re),Oe=new yr,Ie=Oe.postMapLoadEvent.bind(Oe),Fe="mapbox-tiles",ft=500,ge=50,fe=1e3*60*7,pe;function dt(){c.caches&&!pe&&(pe=c.caches.open(Fe))}var Pt;function zt(y,g){if(Pt===void 0)try{new Response(new ReadableStream),Pt=!0}catch(z){Pt=!1}Pt?g(y.body):y.blob().then(g)}function rr(y,g,z){if(dt(),!!pe){var V={status:g.status,statusText:g.statusText,headers:new c.Headers};g.headers.forEach(function(me,je){return V.headers.set(je,me)});var $=de(g.headers.get("Cache-Control")||"");if(!$["no-store"]){$["max-age"]&&V.headers.set("Expires",new Date(z+$["max-age"]*1e3).toUTCString());var oe=new Date(V.headers.get("Expires")).getTime()-z;oeDate.now()&&!z["no-cache"]}var Rr=1/0;function pi(y){Rr++,Rr>ge&&(y.getActor().send("enforceCacheSizeLimit",ft),Rr=0)}function Di(y){dt(),pe&&pe.then(function(g){g.keys().then(function(z){for(var V=0;V=200&&z.status<300||z.status===0)&&z.response!==null){var $=z.response;if(y.type==="json")try{$=JSON.parse(z.response)}catch(oe){return g(oe)}g(null,$,z.getResponseHeader("Cache-Control"),z.getResponseHeader("Expires"))}else g(new Ni(z.statusText,z.status,y.url))},z.send(y.body),{cancel:function(){return z.abort()}}}var xr=function(y,g){if(!yt(y.url)){if(c.fetch&&c.Request&&c.AbortController&&c.Request.prototype.hasOwnProperty("signal"))return Gt(y,g);if(Ce()&&self.worker&&self.worker.actor){var z=!0;return self.worker.actor.send("getResource",y,g,void 0,z)}}return Wt(y,g)},Lr=function(y,g){return xr(x(y,{type:"json"}),g)},Nr=function(y,g){return xr(x(y,{type:"arrayBuffer"}),g)},Or=function(y,g){return xr(x(y,{method:"POST"}),g)};function Hr(y){var g=c.document.createElement("a");return g.href=y,g.protocol===c.document.location.protocol&&g.host===c.document.location.host}var jr="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function gi(y,g,z,V){var $=new c.Image,oe=c.URL;$.onload=function(){g(null,$),oe.revokeObjectURL($.src),$.onload=null,c.requestAnimationFrame(function(){$.src=jr})},$.onerror=function(){return g(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var me=new c.Blob([new Uint8Array(y)],{type:"image/png"});$.cacheControl=z,$.expires=V,$.src=y.byteLength?oe.createObjectURL(me):jr}function ki(y,g){var z=new c.Blob([new Uint8Array(y)],{type:"image/png"});c.createImageBitmap(z).then(function(V){g(null,V)}).catch(function(V){g(new Error("Could not load image because of "+V.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}var Vi,ti,tn=function(){Vi=[],ti=0};tn();var Yr=function(y,g){if(Nt.supported&&(y.headers||(y.headers={}),y.headers.accept="image/webp,*/*"),ti>=gt.MAX_PARALLEL_IMAGE_REQUESTS){var z={requestParameters:y,callback:g,cancelled:!1,cancel:function(){this.cancelled=!0}};return Vi.push(z),z}ti++;var V=!1,$=function(){if(!V)for(V=!0,ti--;Vi.length&&ti0||this._oneTimeListeners&&this._oneTimeListeners[g]&&this._oneTimeListeners[g].length>0||this._eventedParent&&this._eventedParent.listens(g)},Ii.prototype.setEventedParent=function(g,z){return this._eventedParent=g,this._eventedParentData=z,this};var xn=8,bi={version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},Xr={"*":{type:"source"}},ct=["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],tr={type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},pr={type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},gr={type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},Zr={type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},Ti={type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},en={type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},ii={id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},Xi=["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],aa={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Mn={"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Un={"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Ga={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},ma={"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},oa={"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},ka={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},so={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Kr={type:"array",value:"*"},Ia={type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},Yo={type:"enum",values:{Point:{},LineString:{},Polygon:{}}},fa={type:"array",minimum:0,maximum:24,value:["number","color"],length:2},kn={type:"array",value:"*",minimum:1},Aa={anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},ys=["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],uo={"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},ls={"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},$a={"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},fo={"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},mn={"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},ra={"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},wa={"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},ws={"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Co={duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},Po={"*":{type:"string"}},Wi={$version:xn,$root:bi,sources:Xr,source:ct,source_vector:tr,source_raster:pr,source_raster_dem:gr,source_geojson:Zr,source_video:Ti,source_image:en,layer:ii,layout:Xi,layout_background:aa,layout_fill:Mn,layout_circle:Un,layout_heatmap:Ga,"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:ma,layout_symbol:oa,layout_raster:ka,layout_hillshade:so,filter:Kr,filter_operator:Ia,geometry_type:Yo,function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:fa,expression:kn,light:Aa,paint:ys,paint_fill:uo,"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:ls,paint_circle:$a,paint_heatmap:fo,paint_symbol:mn,paint_raster:ra,paint_hillshade:wa,paint_background:ws,transition:Co,"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:Po},gn=function(g,z,V,$){this.message=(g?g+": ":"")+V,$&&(this.identifier=$),z!=null&&z.__line__&&(this.line=z.__line__)};function Ps(y){var g=y.key,z=y.value;return z?[new gn(g,z,"constants have been deprecated as of v8")]:[]}function Ha(y){for(var g=[],z=arguments.length-1;z-- >0;)g[z]=arguments[z+1];for(var V=0,$=g;V<$.length;V+=1){var oe=$[V];for(var me in oe)y[me]=oe[me]}return y}function Sn(y){return y instanceof Number||y instanceof String||y instanceof Boolean?y.valueOf():y}function ao(y){if(Array.isArray(y))return y.map(ao);if(y instanceof Object&&!(y instanceof Number||y instanceof String||y instanceof Boolean)){var g={};for(var z in y)g[z]=ao(y[z]);return g}return Sn(y)}var Ba=function(y){function g(z,V){y.call(this,V),this.message=V,this.key=z}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g}(Error),Ko=function(g,z){z===void 0&&(z=[]),this.parent=g,this.bindings={};for(var V=0,$=z;V<$.length;V+=1){var oe=$[V],me=oe[0],je=oe[1];this.bindings[me]=je}};Ko.prototype.concat=function(g){return new Ko(this,g)},Ko.prototype.get=function(g){if(this.bindings[g])return this.bindings[g];if(this.parent)return this.parent.get(g);throw new Error(g+" not found in scope.")},Ko.prototype.has=function(g){return this.bindings[g]?!0:this.parent?this.parent.has(g):!1};var Qo={kind:"null"},Hi={kind:"number"},Sa={kind:"string"},Qa={kind:"boolean"},vn={kind:"color"},da={kind:"object"},la={kind:"value"},vo={kind:"error"},Ts={kind:"collator"},ps={kind:"formatted"},co={kind:"resolvedImage"};function mo(y,g){return{kind:"array",itemType:y,N:g}}function No(y){if(y.kind==="array"){var g=No(y.itemType);return typeof y.N=="number"?"array<"+g+", "+y.N+">":y.itemType.kind==="value"?"array":"array<"+g+">"}else return y.kind}var jn=[Qo,Hi,Sa,Qa,vn,ps,da,mo(la),co];function Go(y,g){if(g.kind==="error")return null;if(y.kind==="array"){if(g.kind==="array"&&(g.N===0&&g.itemType.kind==="value"||!Go(y.itemType,g.itemType))&&(typeof y.N!="number"||y.N===g.N))return null}else{if(y.kind===g.kind)return null;if(y.kind==="value")for(var z=0,V=jn;z255?255:Ft}function $(Ft){return Ft<0?0:Ft>1?1:Ft}function oe(Ft){return Ft[Ft.length-1]==="%"?V(parseFloat(Ft)/100*255):V(parseInt(Ft))}function me(Ft){return Ft[Ft.length-1]==="%"?$(parseFloat(Ft)/100):$(parseFloat(Ft))}function je(Ft,Xt,br){return br<0?br+=1:br>1&&(br-=1),br*6<1?Ft+(Xt-Ft)*br*6:br*2<1?Xt:br*3<2?Ft+(Xt-Ft)*(2/3-br)*6:Ft}function xt(Ft){var Xt=Ft.replace(/ /g,"").toLowerCase();if(Xt in z)return z[Xt].slice();if(Xt[0]==="#"){if(Xt.length===4){var br=parseInt(Xt.substr(1),16);return br>=0&&br<=4095?[(br&3840)>>4|(br&3840)>>8,br&240|(br&240)>>4,br&15|(br&15)<<4,1]:null}else if(Xt.length===7){var br=parseInt(Xt.substr(1),16);return br>=0&&br<=16777215?[(br&16711680)>>16,(br&65280)>>8,br&255,1]:null}return null}var qr=Xt.indexOf("("),Pr=Xt.indexOf(")");if(qr!==-1&&Pr+1===Xt.length){var ai=Xt.substr(0,qr),Oi=Xt.substr(qr+1,Pr-(qr+1)).split(","),Wn=1;switch(ai){case"rgba":if(Oi.length!==4)return null;Wn=me(Oi.pop());case"rgb":return Oi.length!==3?null:[oe(Oi[0]),oe(Oi[1]),oe(Oi[2]),Wn];case"hsla":if(Oi.length!==4)return null;Wn=me(Oi.pop());case"hsl":if(Oi.length!==3)return null;var bn=(parseFloat(Oi[0])%360+360)%360/360,bo=me(Oi[1]),ba=me(Oi[2]),_o=ba<=.5?ba*(bo+1):ba+bo-ba*bo,Uo=ba*2-_o;return[V(je(Uo,_o,bn+1/3)*255),V(je(Uo,_o,bn)*255),V(je(Uo,_o,bn-1/3)*255),Wn];default:return null}}return null}try{g.parseCSSColor=xt}catch(Ft){}}),Oa=Ns.parseCSSColor,ha=function(g,z,V,$){$===void 0&&($=1),this.r=g,this.g=z,this.b=V,this.a=$};ha.parse=function(g){if(g){if(g instanceof ha)return g;if(typeof g=="string"){var z=Oa(g);if(z)return new ha(z[0]/255*z[3],z[1]/255*z[3],z[2]/255*z[3],z[3])}}},ha.prototype.toString=function(){var g=this.toArray(),z=g[0],V=g[1],$=g[2],oe=g[3];return"rgba("+Math.round(z)+","+Math.round(V)+","+Math.round($)+","+oe+")"},ha.prototype.toArray=function(){var g=this,z=g.r,V=g.g,$=g.b,oe=g.a;return oe===0?[0,0,0,0]:[z*255/oe,V*255/oe,$*255/oe,oe]},ha.black=new ha(0,0,0,1),ha.white=new ha(1,1,1,1),ha.transparent=new ha(0,0,0,0),ha.red=new ha(1,0,0,1);var Vs=function(g,z,V){g?this.sensitivity=z?"variant":"case":this.sensitivity=z?"accent":"base",this.locale=V,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};Vs.prototype.compare=function(g,z){return this.collator.compare(g,z)},Vs.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var Ya=function(g,z,V,$,oe){this.text=g,this.image=z,this.scale=V,this.fontStack=$,this.textColor=oe},_n=function(g){this.sections=g};_n.fromString=function(g){return new _n([new Ya(g,null,null,null,null)])},_n.prototype.isEmpty=function(){return this.sections.length===0?!0:!this.sections.some(function(g){return g.text.length!==0||g.image&&g.image.name.length!==0})},_n.factory=function(g){return g instanceof _n?g:_n.fromString(g)},_n.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(g){return g.text}).join("")},_n.prototype.serialize=function(){for(var g=["format"],z=0,V=this.sections;z=0&&y<=255&&typeof g=="number"&&g>=0&&g<=255&&typeof z=="number"&&z>=0&&z<=255)){var $=typeof V=="number"?[y,g,z,V]:[y,g,z];return"Invalid rgba value ["+$.join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}return typeof V=="undefined"||typeof V=="number"&&V>=0&&V<=1?null:"Invalid rgba value ["+[y,g,z,V].join(", ")+"]: 'a' must be between 0 and 1."}function Ra(y){if(y===null)return!0;if(typeof y=="string")return!0;if(typeof y=="boolean")return!0;if(typeof y=="number")return!0;if(y instanceof ha)return!0;if(y instanceof Vs)return!0;if(y instanceof _n)return!0;if(y instanceof Vn)return!0;if(Array.isArray(y)){for(var g=0,z=y;g2){var je=g[1];if(typeof je!="string"||!(je in qn)||je==="object")return z.error('The item type argument of "array" must be one of string, number, boolean',1);me=qn[je],V++}else me=la;var xt;if(g.length>3){if(g[2]!==null&&(typeof g[2]!="number"||g[2]<0||g[2]!==Math.floor(g[2])))return z.error('The length argument to "array" must be a positive integer literal',2);xt=g[2],V++}$=mo(me,xt)}else $=qn[oe];for(var Ft=[];V1)&&z.push($)}}return z.concat(this.args.map(function(oe){return oe.serialize()}))};var Ja=function(g){this.type=ps,this.sections=g};Ja.parse=function(g,z){if(g.length<2)return z.error("Expected at least one argument.");var V=g[1];if(!Array.isArray(V)&&typeof V=="object")return z.error("First argument must be an image or text section.");for(var $=[],oe=!1,me=1;me<=g.length-1;++me){var je=g[me];if(oe&&typeof je=="object"&&!Array.isArray(je)){oe=!1;var xt=null;if(je["font-scale"]&&(xt=z.parse(je["font-scale"],1,Hi),!xt))return null;var Ft=null;if(je["text-font"]&&(Ft=z.parse(je["text-font"],1,mo(Sa)),!Ft))return null;var Xt=null;if(je["text-color"]&&(Xt=z.parse(je["text-color"],1,vn),!Xt))return null;var br=$[$.length-1];br.scale=xt,br.font=Ft,br.textColor=Xt}else{var qr=z.parse(g[me],1,la);if(!qr)return null;var Pr=qr.type.kind;if(Pr!=="string"&&Pr!=="value"&&Pr!=="null"&&Pr!=="resolvedImage")return z.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");oe=!0,$.push({content:qr,scale:null,font:null,textColor:null})}}return new Ja($)},Ja.prototype.evaluate=function(g){var z=function(V){var $=V.content.evaluate(g);return Xn($)===co?new Ya("",$,null,null,null):new Ya(un($),null,V.scale?V.scale.evaluate(g):null,V.font?V.font.evaluate(g).join(","):null,V.textColor?V.textColor.evaluate(g):null)};return new _n(this.sections.map(z))},Ja.prototype.eachChild=function(g){for(var z=0,V=this.sections;z-1),V},lo.prototype.eachChild=function(g){g(this.input)},lo.prototype.outputDefined=function(){return!1},lo.prototype.serialize=function(){return["image",this.input.serialize()]};var eo={"to-boolean":Qa,"to-color":vn,"to-number":Hi,"to-string":Sa},sa=function(g,z){this.type=g,this.args=z};sa.parse=function(g,z){if(g.length<2)return z.error("Expected at least one argument.");var V=g[0];if((V==="to-boolean"||V==="to-string")&&g.length!==2)return z.error("Expected one argument.");for(var $=eo[V],oe=[],me=1;me4?V="Invalid rbga value "+JSON.stringify(z)+": expected an array containing either three or four numeric values.":V=wo(z[0],z[1],z[2],z[3]),!V))return new ha(z[0]/255,z[1]/255,z[2]/255,z[3])}throw new Ka(V||"Could not parse color from value '"+(typeof z=="string"?z:String(JSON.stringify(z)))+"'")}else if(this.type.kind==="number"){for(var xt=null,Ft=0,Xt=this.args;Ft=g[2]||y[1]<=g[1]||y[3]>=g[3])}function Ws(y,g){var z=To(y[0]),V=Dn(y[1]),$=Math.pow(2,g.z);return[Math.round(z*$*yo),Math.round(V*$*yo)]}function Ca(y,g,z){var V=y[0]-g[0],$=y[1]-g[1],oe=y[0]-z[0],me=y[1]-z[1];return V*me-oe*$===0&&V*oe<=0&&$*me<=0}function Es(y,g,z){return g[1]>y[1]!=z[1]>y[1]&&y[0]<(z[0]-g[0])*(y[1]-g[1])/(z[1]-g[1])+g[0]}function As(y,g){for(var z=!1,V=0,$=g.length;V<$;V++)for(var oe=g[V],me=0,je=oe.length;me0&&br<0||Xt<0&&br>0}function ts(y,g,z,V){var $=[g[0]-y[0],g[1]-y[1]],oe=[V[0]-z[0],V[1]-z[1]];return Wa(oe,$)===0?!1:!!(Ao(y,g,z,V)&&Ao(z,V,y,g))}function Wo(y,g,z){for(var V=0,$=z;V<$.length;V+=1)for(var oe=$[V],me=0;mez[2]){var $=V*.5,oe=y[0]-z[0]>$?-V:z[0]-y[0]>$?V:0;oe===0&&(oe=y[0]-z[2]>$?-V:z[2]-y[0]>$?V:0),y[0]+=oe}Jo(g,y)}function za(y){y[0]=y[1]=1/0,y[2]=y[3]=-1/0}function ea(y,g,z,V){for(var $=Math.pow(2,V.z)*yo,oe=[V.x*yo,V.y*yo],me=[],je=0,xt=y;je=0)return!1;var z=!0;return y.eachChild(function(V){z&&!Ma(V,g)&&(z=!1)}),z}var Qs=function(g,z){this.type=z.type,this.name=g,this.boundExpression=z};Qs.parse=function(g,z){if(g.length!==2||typeof g[1]!="string")return z.error("'var' expression requires exactly one string literal argument.");var V=g[1];return z.scope.has(V)?new Qs(V,z.scope.get(V)):z.error('Unknown variable "'+V+'". Make sure "'+V+'" has been bound in an enclosing "let" expression before using it.',1)},Qs.prototype.evaluate=function(g){return this.boundExpression.evaluate(g)},Qs.prototype.eachChild=function(){},Qs.prototype.outputDefined=function(){return!1},Qs.prototype.serialize=function(){return["var",this.name]};var ho=function(g,z,V,$,oe){z===void 0&&(z=[]),$===void 0&&($=new Ko),oe===void 0&&(oe=[]),this.registry=g,this.path=z,this.key=z.map(function(me){return"["+me+"]"}).join(""),this.scope=$,this.errors=oe,this.expectedType=V};ho.prototype.parse=function(g,z,V,$,oe){return oe===void 0&&(oe={}),z?this.concat(z,V,$)._parse(g,oe):this._parse(g,oe)},ho.prototype._parse=function(g,z){(g===null||typeof g=="string"||typeof g=="boolean"||typeof g=="number")&&(g=["literal",g]);function V(Xt,br,qr){return qr==="assert"?new Eo(br,[Xt]):qr==="coerce"?new sa(br,[Xt]):Xt}if(Array.isArray(g)){if(g.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var $=g[0];if(typeof $!="string")return this.error("Expression name must be a string, but found "+typeof $+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var oe=this.registry[$];if(oe){var me=oe.parse(g,this);if(!me)return null;if(this.expectedType){var je=this.expectedType,xt=me.type;if((je.kind==="string"||je.kind==="number"||je.kind==="boolean"||je.kind==="object"||je.kind==="array")&&xt.kind==="value")me=V(me,je,z.typeAnnotation||"assert");else if((je.kind==="color"||je.kind==="formatted"||je.kind==="resolvedImage")&&(xt.kind==="value"||xt.kind==="string"))me=V(me,je,z.typeAnnotation||"coerce");else if(this.checkSubtype(je,xt))return null}if(!(me instanceof $n)&&me.type.kind!=="resolvedImage"&&gs(me)){var Ft=new Na;try{me=new $n(me.type,me.evaluate(Ft))}catch(Xt){return this.error(Xt.message),null}}return me}return this.error('Unknown expression "'+$+'". If you wanted a literal array, use ["literal", [...]].',0)}else return typeof g=="undefined"?this.error("'undefined' value invalid. Use null instead."):typeof g=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof g+" instead.")},ho.prototype.concat=function(g,z,V){var $=typeof g=="number"?this.path.concat(g):this.path,oe=V?this.scope.concat(V):this.scope;return new ho(this.registry,$,z||null,oe,this.errors)},ho.prototype.error=function(g){for(var z=[],V=arguments.length-1;V-- >0;)z[V]=arguments[V+1];var $=""+this.key+z.map(function(oe){return"["+oe+"]"}).join("");this.errors.push(new Ba($,g))},ho.prototype.checkSubtype=function(g,z){var V=Go(g,z);return V&&this.error(V),V};function gs(y){if(y instanceof Qs)return gs(y.boundExpression);if(y instanceof rn&&y.name==="error")return!1;if(y instanceof to)return!1;if(y instanceof Ds)return!1;var g=y instanceof sa||y instanceof Eo,z=!0;return y.eachChild(function(V){g?z=z&&gs(V):z=z&&V instanceof $n}),z?fl(y)&&Ma(y,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"]):!1}function Vo(y,g){for(var z=y.length-1,V=0,$=z,oe=0,me,je;V<=$;)if(oe=Math.floor((V+$)/2),me=y[oe],je=y[oe+1],me<=g){if(oe===z||gg)$=oe-1;else throw new Ka("Input is not a number.");return 0}var Do=function(g,z,V){this.type=g,this.input=z,this.labels=[],this.outputs=[];for(var $=0,oe=V;$=je)return z.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',Ft);var br=z.parse(xt,Xt,oe);if(!br)return null;oe=oe||br.type,$.push([je,br])}return new Do(oe,V,$)},Do.prototype.evaluate=function(g){var z=this.labels,V=this.outputs;if(z.length===1)return V[0].evaluate(g);var $=this.input.evaluate(g);if($<=z[0])return V[0].evaluate(g);var oe=z.length;if($>=z[oe-1])return V[oe-1].evaluate(g);var me=Vo(z,$);return V[me].evaluate(g)},Do.prototype.eachChild=function(g){g(this.input);for(var z=0,V=this.outputs;z0&&g.push(this.labels[z]),g.push(this.outputs[z].serialize());return g};function Lo(y,g,z){return y*(1-z)+g*z}function xs(y,g,z){return new ha(Lo(y.r,g.r,z),Lo(y.g,g.g,z),Lo(y.b,g.b,z),Lo(y.a,g.a,z))}function ks(y,g,z){return y.map(function(V,$){return Lo(V,g[$],z)})}var Ea=Object.freeze({__proto__:null,number:Lo,color:xs,array:ks}),Jn=.95047,Oo=1,rl=1.08883,Gs=4/29,bs=6/29,zs=3*bs*bs,$o=bs*bs*bs,Ta=Math.PI/180,os=180/Math.PI;function _l(y){return y>$o?Math.pow(y,1/3):y/zs+Gs}function Ss(y){return y>bs?y*y*y:zs*(y-Gs)}function po(y){return 255*(y<=.0031308?12.92*y:1.055*Math.pow(y,1/2.4)-.055)}function go(y){return y/=255,y<=.04045?y/12.92:Math.pow((y+.055)/1.055,2.4)}function ss(y){var g=go(y.r),z=go(y.g),V=go(y.b),$=_l((.4124564*g+.3575761*z+.1804375*V)/Jn),oe=_l((.2126729*g+.7151522*z+.072175*V)/Oo),me=_l((.0193339*g+.119192*z+.9503041*V)/rl);return{l:116*oe-16,a:500*($-oe),b:200*(oe-me),alpha:y.a}}function qo(y){var g=(y.l+16)/116,z=isNaN(y.a)?g:g+y.a/500,V=isNaN(y.b)?g:g-y.b/200;return g=Oo*Ss(g),z=Jn*Ss(z),V=rl*Ss(V),new ha(po(3.2404542*z-1.5371385*g-.4985314*V),po(-.969266*z+1.8760108*g+.041556*V),po(.0556434*z-.2040259*g+1.0572252*V),y.alpha)}function zo(y,g,z){return{l:Lo(y.l,g.l,z),a:Lo(y.a,g.a,z),b:Lo(y.b,g.b,z),alpha:Lo(y.alpha,g.alpha,z)}}function io(y){var g=ss(y),z=g.l,V=g.a,$=g.b,oe=Math.atan2($,V)*os;return{h:oe<0?oe+360:oe,c:Math.sqrt(V*V+$*$),l:z,alpha:y.a}}function Io(y){var g=y.h*Ta,z=y.c,V=y.l;return qo({l:V,a:Math.cos(g)*z,b:Math.sin(g)*z,alpha:y.alpha})}function Da(y,g,z){var V=g-y;return y+z*(V>180||V<-180?V-360*Math.round(V/360):V)}function vs(y,g,z){return{h:Da(y.h,g.h,z),c:Lo(y.c,g.c,z),l:Lo(y.l,g.l,z),alpha:Lo(y.alpha,g.alpha,z)}}var fs={forward:ss,reverse:qo,interpolate:zo},cl={forward:io,reverse:Io,interpolate:vs},el=Object.freeze({__proto__:null,lab:fs,hcl:cl}),Hs=function(g,z,V,$,oe){this.type=g,this.operator=z,this.interpolation=V,this.input=$,this.labels=[],this.outputs=[];for(var me=0,je=oe;me1}))return z.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);$={name:"cubic-bezier",controlPoints:xt}}else return z.error("Unknown interpolation type "+String($[0]),1,0);if(g.length-1<4)return z.error("Expected at least 4 arguments, but found only "+(g.length-1)+".");if((g.length-1)%2!==0)return z.error("Expected an even number of arguments.");if(oe=z.parse(oe,2,Hi),!oe)return null;var Ft=[],Xt=null;V==="interpolate-hcl"||V==="interpolate-lab"?Xt=vn:z.expectedType&&z.expectedType.kind!=="value"&&(Xt=z.expectedType);for(var br=0;br=qr)return z.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',ai);var Wn=z.parse(Pr,Oi,Xt);if(!Wn)return null;Xt=Xt||Wn.type,Ft.push([qr,Wn])}return Xt.kind!=="number"&&Xt.kind!=="color"&&!(Xt.kind==="array"&&Xt.itemType.kind==="number"&&typeof Xt.N=="number")?z.error("Type "+No(Xt)+" is not interpolatable."):new Hs(Xt,V,$,oe,Ft)},Hs.prototype.evaluate=function(g){var z=this.labels,V=this.outputs;if(z.length===1)return V[0].evaluate(g);var $=this.input.evaluate(g);if($<=z[0])return V[0].evaluate(g);var oe=z.length;if($>=z[oe-1])return V[oe-1].evaluate(g);var me=Vo(z,$),je=z[me],xt=z[me+1],Ft=Hs.interpolationFactor(this.interpolation,$,je,xt),Xt=V[me].evaluate(g),br=V[me+1].evaluate(g);return this.operator==="interpolate"?Ea[this.type.kind.toLowerCase()](Xt,br,Ft):this.operator==="interpolate-hcl"?cl.reverse(cl.interpolate(cl.forward(Xt),cl.forward(br),Ft)):fs.reverse(fs.interpolate(fs.forward(Xt),fs.forward(br),Ft))},Hs.prototype.eachChild=function(g){g(this.input);for(var z=0,V=this.outputs;z=V.length)throw new Ka("Array index out of bounds: "+z+" > "+(V.length-1)+".");if(z!==Math.floor(z))throw new Ka("Array index must be an integer, but found "+z+" instead.");return V[z]},hl.prototype.eachChild=function(g){g(this.index),g(this.input)},hl.prototype.outputDefined=function(){return!1},hl.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var Fa=function(g,z){this.type=Qa,this.needle=g,this.haystack=z};Fa.parse=function(g,z){if(g.length!==3)return z.error("Expected 2 arguments, but found "+(g.length-1)+" instead.");var V=z.parse(g[1],1,la),$=z.parse(g[2],2,la);return!V||!$?null:Ys(V.type,[Qa,Sa,Hi,Qo,la])?new Fa(V,$):z.error("Expected first argument to be of type boolean, string, number or null, but found "+No(V.type)+" instead")},Fa.prototype.evaluate=function(g){var z=this.needle.evaluate(g),V=this.haystack.evaluate(g);if(!V)return!1;if(!qs(z,["boolean","string","number","null"]))throw new Ka("Expected first argument to be of type boolean, string, number or null, but found "+No(Xn(z))+" instead.");if(!qs(V,["string","array"]))throw new Ka("Expected second argument to be of type array or string, but found "+No(Xn(V))+" instead.");return V.indexOf(z)>=0},Fa.prototype.eachChild=function(g){g(this.needle),g(this.haystack)},Fa.prototype.outputDefined=function(){return!0},Fa.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var Ms=function(g,z,V){this.type=Hi,this.needle=g,this.haystack=z,this.fromIndex=V};Ms.parse=function(g,z){if(g.length<=2||g.length>=5)return z.error("Expected 3 or 4 arguments, but found "+(g.length-1)+" instead.");var V=z.parse(g[1],1,la),$=z.parse(g[2],2,la);if(!V||!$)return null;if(!Ys(V.type,[Qa,Sa,Hi,Qo,la]))return z.error("Expected first argument to be of type boolean, string, number or null, but found "+No(V.type)+" instead");if(g.length===4){var oe=z.parse(g[3],3,Hi);return oe?new Ms(V,$,oe):null}else return new Ms(V,$)},Ms.prototype.evaluate=function(g){var z=this.needle.evaluate(g),V=this.haystack.evaluate(g);if(!qs(z,["boolean","string","number","null"]))throw new Ka("Expected first argument to be of type boolean, string, number or null, but found "+No(Xn(z))+" instead.");if(!qs(V,["string","array"]))throw new Ka("Expected second argument to be of type array or string, but found "+No(Xn(V))+" instead.");if(this.fromIndex){var $=this.fromIndex.evaluate(g);return V.indexOf(z,$)}return V.indexOf(z)},Ms.prototype.eachChild=function(g){g(this.needle),g(this.haystack),this.fromIndex&&g(this.fromIndex)},Ms.prototype.outputDefined=function(){return!1},Ms.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var g=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),g]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var jo=function(g,z,V,$,oe,me){this.inputType=g,this.type=z,this.input=V,this.cases=$,this.outputs=oe,this.otherwise=me};jo.parse=function(g,z){if(g.length<5)return z.error("Expected at least 4 arguments, but found only "+(g.length-1)+".");if(g.length%2!==1)return z.error("Expected an even number of arguments.");var V,$;z.expectedType&&z.expectedType.kind!=="value"&&($=z.expectedType);for(var oe={},me=[],je=2;jeNumber.MAX_SAFE_INTEGER)return Xt.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof Pr=="number"&&Math.floor(Pr)!==Pr)return Xt.error("Numeric branch labels must be integer values.");if(!V)V=Xn(Pr);else if(Xt.checkSubtype(V,Xn(Pr)))return null;if(typeof oe[String(Pr)]!="undefined")return Xt.error("Branch labels must be unique.");oe[String(Pr)]=me.length}var ai=z.parse(Ft,je,$);if(!ai)return null;$=$||ai.type,me.push(ai)}var Oi=z.parse(g[1],1,la);if(!Oi)return null;var Wn=z.parse(g[g.length-1],g.length-1,$);return!Wn||Oi.type.kind!=="value"&&z.concat(1).checkSubtype(V,Oi.type)?null:new jo(V,$,Oi,oe,me,Wn)},jo.prototype.evaluate=function(g){var z=this.input.evaluate(g),V=Xn(z)===this.inputType&&this.outputs[this.cases[z]]||this.otherwise;return V.evaluate(g)},jo.prototype.eachChild=function(g){g(this.input),this.outputs.forEach(g),g(this.otherwise)},jo.prototype.outputDefined=function(){return this.outputs.every(function(g){return g.outputDefined()})&&this.otherwise.outputDefined()},jo.prototype.serialize=function(){for(var g=this,z=["match",this.input.serialize()],V=Object.keys(this.cases).sort(),$=[],oe={},me=0,je=V;me=5)return z.error("Expected 3 or 4 arguments, but found "+(g.length-1)+" instead.");var V=z.parse(g[1],1,la),$=z.parse(g[2],2,Hi);if(!V||!$)return null;if(!Ys(V.type,[mo(la),Sa,la]))return z.error("Expected first argument to be of type array or string, but found "+No(V.type)+" instead");if(g.length===4){var oe=z.parse(g[3],3,Hi);return oe?new Is(V.type,V,$,oe):null}else return new Is(V.type,V,$)},Is.prototype.evaluate=function(g){var z=this.input.evaluate(g),V=this.beginIndex.evaluate(g);if(!qs(z,["string","array"]))throw new Ka("Expected first argument to be of type array or string, but found "+No(Xn(z))+" instead.");if(this.endIndex){var $=this.endIndex.evaluate(g);return z.slice(V,$)}return z.slice(V)},Is.prototype.eachChild=function(g){g(this.input),g(this.beginIndex),this.endIndex&&g(this.endIndex)},Is.prototype.outputDefined=function(){return!1},Is.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var g=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),g]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};function Bs(y,g){return y==="=="||y==="!="?g.kind==="boolean"||g.kind==="string"||g.kind==="number"||g.kind==="null"||g.kind==="value":g.kind==="string"||g.kind==="number"||g.kind==="value"}function At(y,g,z){return g===z}function Vt(y,g,z){return g!==z}function wr(y,g,z){return gz}function Fr(y,g,z){return g<=z}function _i(y,g,z){return g>=z}function Si(y,g,z,V){return V.compare(g,z)===0}function Ci(y,g,z,V){return!Si(y,g,z,V)}function Ki(y,g,z,V){return V.compare(g,z)<0}function Fn(y,g,z,V){return V.compare(g,z)>0}function Pi(y,g,z,V){return V.compare(g,z)<=0}function di(y,g,z,V){return V.compare(g,z)>=0}function Li(y,g,z){var V=y!=="=="&&y!=="!=";return function(){function $(oe,me,je){this.type=Qa,this.lhs=oe,this.rhs=me,this.collator=je,this.hasUntypedArgument=oe.type.kind==="value"||me.type.kind==="value"}return $.parse=function(me,je){if(me.length!==3&&me.length!==4)return je.error("Expected two or three arguments.");var xt=me[0],Ft=je.parse(me[1],1,la);if(!Ft)return null;if(!Bs(xt,Ft.type))return je.concat(1).error('"'+xt+`" comparisons are not supported for type '`+No(Ft.type)+"'.");var Xt=je.parse(me[2],2,la);if(!Xt)return null;if(!Bs(xt,Xt.type))return je.concat(2).error('"'+xt+`" comparisons are not supported for type '`+No(Xt.type)+"'.");if(Ft.type.kind!==Xt.type.kind&&Ft.type.kind!=="value"&&Xt.type.kind!=="value")return je.error("Cannot compare types '"+No(Ft.type)+"' and '"+No(Xt.type)+"'.");V&&(Ft.type.kind==="value"&&Xt.type.kind!=="value"?Ft=new Eo(Xt.type,[Ft]):Ft.type.kind!=="value"&&Xt.type.kind==="value"&&(Xt=new Eo(Ft.type,[Xt])));var br=null;if(me.length===4){if(Ft.type.kind!=="string"&&Xt.type.kind!=="string"&&Ft.type.kind!=="value"&&Xt.type.kind!=="value")return je.error("Cannot use collator to compare non-string types.");if(br=je.parse(me[3],3,Ts),!br)return null}return new $(Ft,Xt,br)},$.prototype.evaluate=function(me){var je=this.lhs.evaluate(me),xt=this.rhs.evaluate(me);if(V&&this.hasUntypedArgument){var Ft=Xn(je),Xt=Xn(xt);if(Ft.kind!==Xt.kind||!(Ft.kind==="string"||Ft.kind==="number"))throw new Ka('Expected arguments for "'+y+'" to be (string, string) or (number, number), but found ('+Ft.kind+", "+Xt.kind+") instead.")}if(this.collator&&!V&&this.hasUntypedArgument){var br=Xn(je),qr=Xn(xt);if(br.kind!=="string"||qr.kind!=="string")return g(me,je,xt)}return this.collator?z(me,je,xt,this.collator.evaluate(me)):g(me,je,xt)},$.prototype.eachChild=function(me){me(this.lhs),me(this.rhs),this.collator&&me(this.collator)},$.prototype.outputDefined=function(){return!0},$.prototype.serialize=function(){var me=[y];return this.eachChild(function(je){me.push(je.serialize())}),me},$}()}var Mi=Li("==",At,Si),Gn=Li("!=",Vt,Ci),ta=Li("<",wr,Ki),ya=Li(">",mr,Fn),ia=Li("<=",Fr,Pi),pa=Li(">=",_i,di),va=function(g,z,V,$,oe){this.type=Sa,this.number=g,this.locale=z,this.currency=V,this.minFractionDigits=$,this.maxFractionDigits=oe};va.parse=function(g,z){if(g.length!==3)return z.error("Expected two arguments.");var V=z.parse(g[1],1,Hi);if(!V)return null;var $=g[2];if(typeof $!="object"||Array.isArray($))return z.error("NumberFormat options argument must be an object.");var oe=null;if($.locale&&(oe=z.parse($.locale,1,Sa),!oe))return null;var me=null;if($.currency&&(me=z.parse($.currency,1,Sa),!me))return null;var je=null;if($["min-fraction-digits"]&&(je=z.parse($["min-fraction-digits"],1,Hi),!je))return null;var xt=null;return $["max-fraction-digits"]&&(xt=z.parse($["max-fraction-digits"],1,Hi),!xt)?null:new va(V,oe,me,je,xt)},va.prototype.evaluate=function(g){return new Intl.NumberFormat(this.locale?this.locale.evaluate(g):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(g):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(g):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(g):void 0}).format(this.number.evaluate(g))},va.prototype.eachChild=function(g){g(this.number),this.locale&&g(this.locale),this.currency&&g(this.currency),this.minFractionDigits&&g(this.minFractionDigits),this.maxFractionDigits&&g(this.maxFractionDigits)},va.prototype.outputDefined=function(){return!1},va.prototype.serialize=function(){var g={};return this.locale&&(g.locale=this.locale.serialize()),this.currency&&(g.currency=this.currency.serialize()),this.minFractionDigits&&(g["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(g["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),g]};var zn=function(g){this.type=Hi,this.input=g};zn.parse=function(g,z){if(g.length!==2)return z.error("Expected 1 argument, but found "+(g.length-1)+" instead.");var V=z.parse(g[1],1);return V?V.type.kind!=="array"&&V.type.kind!=="string"&&V.type.kind!=="value"?z.error("Expected argument of type string or array, but found "+No(V.type)+" instead."):new zn(V):null},zn.prototype.evaluate=function(g){var z=this.input.evaluate(g);if(typeof z=="string")return z.length;if(Array.isArray(z))return z.length;throw new Ka("Expected value to be of type string or array, but found "+No(Xn(z))+" instead.")},zn.prototype.eachChild=function(g){g(this.input)},zn.prototype.outputDefined=function(){return!1},zn.prototype.serialize=function(){var g=["length"];return this.eachChild(function(z){g.push(z.serialize())}),g};var is={"==":Mi,"!=":Gn,">":ya,"<":ta,">=":pa,"<=":ia,array:Eo,at:hl,boolean:Eo,case:Rs,coalesce:tl,collator:to,format:Ja,image:lo,in:Fa,"index-of":Ms,interpolate:Hs,"interpolate-hcl":Hs,"interpolate-lab":Hs,length:zn,let:Fs,literal:$n,match:jo,number:Eo,"number-format":va,object:Eo,slice:Is,step:Do,string:Eo,"to-boolean":sa,"to-color":sa,"to-number":sa,"to-string":sa,var:Qs,within:Ds};function Cs(y,g){var z=g[0],V=g[1],$=g[2],oe=g[3];z=z.evaluate(y),V=V.evaluate(y),$=$.evaluate(y);var me=oe?oe.evaluate(y):1,je=wo(z,V,$,me);if(je)throw new Ka(je);return new ha(z/255*me,V/255*me,$/255*me,me)}function Ks(y,g){return y in g}function dl(y,g){var z=g[y];return typeof z=="undefined"?null:z}function xl(y,g,z,V){for(;z<=V;){var $=z+V>>1;if(g[$]===y)return!0;g[$]>y?V=$-1:z=$+1}return!1}function Bl(y){return{type:y}}rn.register(is,{error:[vo,[Sa],function(y,g){var z=g[0];throw new Ka(z.evaluate(y))}],typeof:[Sa,[la],function(y,g){var z=g[0];return No(Xn(z.evaluate(y)))}],"to-rgba":[mo(Hi,4),[vn],function(y,g){var z=g[0];return z.evaluate(y).toArray()}],rgb:[vn,[Hi,Hi,Hi],Cs],rgba:[vn,[Hi,Hi,Hi,Hi],Cs],has:{type:Qa,overloads:[[[Sa],function(y,g){var z=g[0];return Ks(z.evaluate(y),y.properties())}],[[Sa,da],function(y,g){var z=g[0],V=g[1];return Ks(z.evaluate(y),V.evaluate(y))}]]},get:{type:la,overloads:[[[Sa],function(y,g){var z=g[0];return dl(z.evaluate(y),y.properties())}],[[Sa,da],function(y,g){var z=g[0],V=g[1];return dl(z.evaluate(y),V.evaluate(y))}]]},"feature-state":[la,[Sa],function(y,g){var z=g[0];return dl(z.evaluate(y),y.featureState||{})}],properties:[da,[],function(y){return y.properties()}],"geometry-type":[Sa,[],function(y){return y.geometryType()}],id:[la,[],function(y){return y.id()}],zoom:[Hi,[],function(y){return y.globals.zoom}],"heatmap-density":[Hi,[],function(y){return y.globals.heatmapDensity||0}],"line-progress":[Hi,[],function(y){return y.globals.lineProgress||0}],accumulated:[la,[],function(y){return y.globals.accumulated===void 0?null:y.globals.accumulated}],"+":[Hi,Bl(Hi),function(y,g){for(var z=0,V=0,$=g;V<$.length;V+=1){var oe=$[V];z+=oe.evaluate(y)}return z}],"*":[Hi,Bl(Hi),function(y,g){for(var z=1,V=0,$=g;V<$.length;V+=1){var oe=$[V];z*=oe.evaluate(y)}return z}],"-":{type:Hi,overloads:[[[Hi,Hi],function(y,g){var z=g[0],V=g[1];return z.evaluate(y)-V.evaluate(y)}],[[Hi],function(y,g){var z=g[0];return-z.evaluate(y)}]]},"/":[Hi,[Hi,Hi],function(y,g){var z=g[0],V=g[1];return z.evaluate(y)/V.evaluate(y)}],"%":[Hi,[Hi,Hi],function(y,g){var z=g[0],V=g[1];return z.evaluate(y)%V.evaluate(y)}],ln2:[Hi,[],function(){return Math.LN2}],pi:[Hi,[],function(){return Math.PI}],e:[Hi,[],function(){return Math.E}],"^":[Hi,[Hi,Hi],function(y,g){var z=g[0],V=g[1];return Math.pow(z.evaluate(y),V.evaluate(y))}],sqrt:[Hi,[Hi],function(y,g){var z=g[0];return Math.sqrt(z.evaluate(y))}],log10:[Hi,[Hi],function(y,g){var z=g[0];return Math.log(z.evaluate(y))/Math.LN10}],ln:[Hi,[Hi],function(y,g){var z=g[0];return Math.log(z.evaluate(y))}],log2:[Hi,[Hi],function(y,g){var z=g[0];return Math.log(z.evaluate(y))/Math.LN2}],sin:[Hi,[Hi],function(y,g){var z=g[0];return Math.sin(z.evaluate(y))}],cos:[Hi,[Hi],function(y,g){var z=g[0];return Math.cos(z.evaluate(y))}],tan:[Hi,[Hi],function(y,g){var z=g[0];return Math.tan(z.evaluate(y))}],asin:[Hi,[Hi],function(y,g){var z=g[0];return Math.asin(z.evaluate(y))}],acos:[Hi,[Hi],function(y,g){var z=g[0];return Math.acos(z.evaluate(y))}],atan:[Hi,[Hi],function(y,g){var z=g[0];return Math.atan(z.evaluate(y))}],min:[Hi,Bl(Hi),function(y,g){return Math.min.apply(Math,g.map(function(z){return z.evaluate(y)}))}],max:[Hi,Bl(Hi),function(y,g){return Math.max.apply(Math,g.map(function(z){return z.evaluate(y)}))}],abs:[Hi,[Hi],function(y,g){var z=g[0];return Math.abs(z.evaluate(y))}],round:[Hi,[Hi],function(y,g){var z=g[0],V=z.evaluate(y);return V<0?-Math.round(-V):Math.round(V)}],floor:[Hi,[Hi],function(y,g){var z=g[0];return Math.floor(z.evaluate(y))}],ceil:[Hi,[Hi],function(y,g){var z=g[0];return Math.ceil(z.evaluate(y))}],"filter-==":[Qa,[Sa,la],function(y,g){var z=g[0],V=g[1];return y.properties()[z.value]===V.value}],"filter-id-==":[Qa,[la],function(y,g){var z=g[0];return y.id()===z.value}],"filter-type-==":[Qa,[Sa],function(y,g){var z=g[0];return y.geometryType()===z.value}],"filter-<":[Qa,[Sa,la],function(y,g){var z=g[0],V=g[1],$=y.properties()[z.value],oe=V.value;return typeof $==typeof oe&&$":[Qa,[Sa,la],function(y,g){var z=g[0],V=g[1],$=y.properties()[z.value],oe=V.value;return typeof $==typeof oe&&$>oe}],"filter-id->":[Qa,[la],function(y,g){var z=g[0],V=y.id(),$=z.value;return typeof V==typeof $&&V>$}],"filter-<=":[Qa,[Sa,la],function(y,g){var z=g[0],V=g[1],$=y.properties()[z.value],oe=V.value;return typeof $==typeof oe&&$<=oe}],"filter-id-<=":[Qa,[la],function(y,g){var z=g[0],V=y.id(),$=z.value;return typeof V==typeof $&&V<=$}],"filter->=":[Qa,[Sa,la],function(y,g){var z=g[0],V=g[1],$=y.properties()[z.value],oe=V.value;return typeof $==typeof oe&&$>=oe}],"filter-id->=":[Qa,[la],function(y,g){var z=g[0],V=y.id(),$=z.value;return typeof V==typeof $&&V>=$}],"filter-has":[Qa,[la],function(y,g){var z=g[0];return z.value in y.properties()}],"filter-has-id":[Qa,[],function(y){return y.id()!==null&&y.id()!==void 0}],"filter-type-in":[Qa,[mo(Sa)],function(y,g){var z=g[0];return z.value.indexOf(y.geometryType())>=0}],"filter-id-in":[Qa,[mo(la)],function(y,g){var z=g[0];return z.value.indexOf(y.id())>=0}],"filter-in-small":[Qa,[Sa,mo(la)],function(y,g){var z=g[0],V=g[1];return V.value.indexOf(y.properties()[z.value])>=0}],"filter-in-large":[Qa,[Sa,mo(la)],function(y,g){var z=g[0],V=g[1];return xl(y.properties()[z.value],V.value,0,V.value.length-1)}],all:{type:Qa,overloads:[[[Qa,Qa],function(y,g){var z=g[0],V=g[1];return z.evaluate(y)&&V.evaluate(y)}],[Bl(Qa),function(y,g){for(var z=0,V=g;z-1}function ja(y){return!!y.expression&&y.expression.interpolated}function ns(y){return y instanceof Number?"number":y instanceof String?"string":y instanceof Boolean?"boolean":Array.isArray(y)?"array":y===null?"null":typeof y}function Js(y){return typeof y=="object"&&y!==null&&!Array.isArray(y)}function cs(y){return y}function sl(y,g){var z=g.type==="color",V=y.stops&&typeof y.stops[0][0]=="object",$=V||y.property!==void 0,oe=V||!$,me=y.type||(ja(g)?"exponential":"interval");if(z&&(y=Ha({},y),y.stops&&(y.stops=y.stops.map(function(Al){return[Al[0],ha.parse(Al[1])]})),y.default?y.default=ha.parse(y.default):y.default=ha.parse(g.default)),y.colorSpace&&y.colorSpace!=="rgb"&&!el[y.colorSpace])throw new Error("Unknown color space: "+y.colorSpace);var je,xt,Ft;if(me==="exponential")je=Ml;else if(me==="interval")je=zl;else if(me==="categorical"){je=il,xt=Object.create(null);for(var Xt=0,br=y.stops;Xt=y.stops[V-1][0])return y.stops[V-1][1];var $=Vo(y.stops.map(function(oe){return oe[0]}),z);return y.stops[$][1]}function Ml(y,g,z){var V=y.base!==void 0?y.base:1;if(ns(z)!=="number")return ll(y.default,g.default);var $=y.stops.length;if($===1||z<=y.stops[0][0])return y.stops[0][1];if(z>=y.stops[$-1][0])return y.stops[$-1][1];var oe=Vo(y.stops.map(function(br){return br[0]}),z),me=Tl(z,V,y.stops[oe][0],y.stops[oe+1][0]),je=y.stops[oe][1],xt=y.stops[oe+1][1],Ft=Ea[g.type]||cs;if(y.colorSpace&&y.colorSpace!=="rgb"){var Xt=el[y.colorSpace];Ft=function(br,qr){return Xt.reverse(Xt.interpolate(Xt.forward(br),Xt.forward(qr),me))}}return typeof je.evaluate=="function"?{evaluate:function(){for(var qr=[],Pr=arguments.length;Pr--;)qr[Pr]=arguments[Pr];var ai=je.evaluate.apply(void 0,qr),Oi=xt.evaluate.apply(void 0,qr);if(!(ai===void 0||Oi===void 0))return Ft(ai,Oi,me)}}:Ft(je,xt,me)}function Rl(y,g,z){return g.type==="color"?z=ha.parse(z):g.type==="formatted"?z=_n.fromString(z.toString()):g.type==="resolvedImage"?z=Vn.fromString(z.toString()):ns(z)!==g.type&&(g.type!=="enum"||!g.values[z])&&(z=void 0),ll(z,y.default,g.default)}function Tl(y,g,z,V){var $=V-z,oe=y-z;return $===0?0:g===1?oe/$:(Math.pow(g,oe)-1)/(Math.pow(g,$)-1)}var Ll=function(g,z){this.expression=g,this._warningHistory={},this._evaluator=new Na,this._defaultValue=z?ee(z):null,this._enumValues=z&&z.type==="enum"?z.values:null};Ll.prototype.evaluateWithoutErrorHandling=function(g,z,V,$,oe,me){return this._evaluator.globals=g,this._evaluator.feature=z,this._evaluator.featureState=V,this._evaluator.canonical=$,this._evaluator.availableImages=oe||null,this._evaluator.formattedSection=me,this.expression.evaluate(this._evaluator)},Ll.prototype.evaluate=function(g,z,V,$,oe,me){this._evaluator.globals=g,this._evaluator.feature=z||null,this._evaluator.featureState=V||null,this._evaluator.canonical=$,this._evaluator.availableImages=oe||null,this._evaluator.formattedSection=me||null;try{var je=this.expression.evaluate(this._evaluator);if(je==null||typeof je=="number"&&je!==je)return this._defaultValue;if(this._enumValues&&!(je in this._enumValues))throw new Ka("Expected value to be one of "+Object.keys(this._enumValues).map(function(xt){return JSON.stringify(xt)}).join(", ")+", but found "+JSON.stringify(je)+" instead.");return je}catch(xt){return this._warningHistory[xt.message]||(this._warningHistory[xt.message]=!0,typeof console!="undefined"&&console.warn(xt.message)),this._defaultValue}};function ms(y){return Array.isArray(y)&&y.length>0&&typeof y[0]=="string"&&y[0]in is}function Os(y,g){var z=new ho(is,[],g?Q(g):void 0),V=z.parse(y,void 0,void 0,void 0,g&&g.type==="string"?{typeAnnotation:"coerce"}:void 0);return V?bl(new Ll(V,g)):eu(z.errors)}var Xl=function(g,z){this.kind=g,this._styleExpression=z,this.isStateDependent=g!=="constant"&&!as(z.expression)};Xl.prototype.evaluateWithoutErrorHandling=function(g,z,V,$,oe,me){return this._styleExpression.evaluateWithoutErrorHandling(g,z,V,$,oe,me)},Xl.prototype.evaluate=function(g,z,V,$,oe,me){return this._styleExpression.evaluate(g,z,V,$,oe,me)};var Vl=function(g,z,V,$){this.kind=g,this.zoomStops=V,this._styleExpression=z,this.isStateDependent=g!=="camera"&&!as(z.expression),this.interpolationType=$};Vl.prototype.evaluateWithoutErrorHandling=function(g,z,V,$,oe,me){return this._styleExpression.evaluateWithoutErrorHandling(g,z,V,$,oe,me)},Vl.prototype.evaluate=function(g,z,V,$,oe,me){return this._styleExpression.evaluate(g,z,V,$,oe,me)},Vl.prototype.interpolationFactor=function(g,z,V){return this.interpolationType?Hs.interpolationFactor(this.interpolationType,g,z,V):0};function Nl(y,g){if(y=Os(y,g),y.result==="error")return y;var z=y.value.expression,V=fl(z);if(!V&&!Zl(g))return eu([new Ba("","data expressions not supported")]);var $=Ma(z,["zoom"]);if(!$&&!Ul(g))return eu([new Ba("","zoom expressions not supported")]);var oe=q(z);if(!oe&&!$)return eu([new Ba("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(oe instanceof Ba)return eu([oe]);if(oe instanceof Hs&&!ja(g))return eu([new Ba("",'"interpolate" expressions cannot be used with this property')]);if(!oe)return bl(V?new Xl("constant",y.value):new Xl("source",y.value));var me=oe instanceof Hs?oe.interpolation:void 0;return bl(V?new Vl("camera",y.value,oe.labels,me):new Vl("composite",y.value,oe.labels,me))}var le=function(g,z){this._parameters=g,this._specification=z,Ha(this,sl(this._parameters,this._specification))};le.deserialize=function(g){return new le(g._parameters,g._specification)},le.serialize=function(g){return{_parameters:g._parameters,_specification:g._specification}};function w(y,g){if(Js(y))return new le(y,g);if(ms(y)){var z=Nl(y,g);if(z.result==="error")throw new Error(z.value.map(function($){return $.key+": "+$.message}).join(", "));return z.value}else{var V=y;return typeof y=="string"&&g.type==="color"&&(V=ha.parse(y)),{kind:"constant",evaluate:function(){return V}}}}function q(y){var g=null;if(y instanceof Fs)g=q(y.result);else if(y instanceof tl)for(var z=0,V=y.args;zV.maximum?[new gn(g,z,z+" is greater than the maximum value "+V.maximum)]:[]}function mt(y){var g=y.valueSpec,z=Sn(y.value.type),V,$={},oe,me,je=z!=="categorical"&&y.value.property===void 0,xt=!je,Ft=ns(y.value.stops)==="array"&&ns(y.value.stops[0])==="array"&&ns(y.value.stops[0][0])==="object",Xt=ue({key:y.key,value:y.value,valueSpec:y.styleSpec.function,style:y.style,styleSpec:y.styleSpec,objectElementValidators:{stops:br,default:ai}});return z==="identity"&&je&&Xt.push(new gn(y.key,y.value,'missing required property "property"')),z!=="identity"&&!y.value.stops&&Xt.push(new gn(y.key,y.value,'missing required property "stops"')),z==="exponential"&&y.valueSpec.expression&&!ja(y.valueSpec)&&Xt.push(new gn(y.key,y.value,"exponential functions not supported")),y.styleSpec.$version>=8&&(xt&&!Zl(y.valueSpec)?Xt.push(new gn(y.key,y.value,"property functions not supported")):je&&!Ul(y.valueSpec)&&Xt.push(new gn(y.key,y.value,"zoom functions not supported"))),(z==="categorical"||Ft)&&y.value.property===void 0&&Xt.push(new gn(y.key,y.value,'"property" property is required')),Xt;function br(Oi){if(z==="identity")return[new gn(Oi.key,Oi.value,'identity function may not have a "stops" property')];var Wn=[],bn=Oi.value;return Wn=Wn.concat(Ve({key:Oi.key,value:bn,valueSpec:Oi.valueSpec,style:Oi.style,styleSpec:Oi.styleSpec,arrayElementValidator:qr})),ns(bn)==="array"&&bn.length===0&&Wn.push(new gn(Oi.key,bn,"array must have at least one stop")),Wn}function qr(Oi){var Wn=[],bn=Oi.value,bo=Oi.key;if(ns(bn)!=="array")return[new gn(bo,bn,"array expected, "+ns(bn)+" found")];if(bn.length!==2)return[new gn(bo,bn,"array length 2 expected, length "+bn.length+" found")];if(Ft){if(ns(bn[0])!=="object")return[new gn(bo,bn,"object expected, "+ns(bn[0])+" found")];if(bn[0].zoom===void 0)return[new gn(bo,bn,"object stop key must have zoom")];if(bn[0].value===void 0)return[new gn(bo,bn,"object stop key must have value")];if(me&&me>Sn(bn[0].zoom))return[new gn(bo,bn[0].zoom,"stop zoom values must appear in ascending order")];Sn(bn[0].zoom)!==me&&(me=Sn(bn[0].zoom),oe=void 0,$={}),Wn=Wn.concat(ue({key:bo+"[0]",value:bn[0],valueSpec:{zoom:{}},style:Oi.style,styleSpec:Oi.styleSpec,objectElementValidators:{zoom:tt,value:Pr}}))}else Wn=Wn.concat(Pr({key:bo+"[0]",value:bn[0],valueSpec:{},style:Oi.style,styleSpec:Oi.styleSpec},bn));return ms(ao(bn[1]))?Wn.concat([new gn(bo+"[1]",bn[1],"expressions are not allowed in function stops.")]):Wn.concat(Sl({key:bo+"[1]",value:bn[1],valueSpec:g,style:Oi.style,styleSpec:Oi.styleSpec}))}function Pr(Oi,Wn){var bn=ns(Oi.value),bo=Sn(Oi.value),ba=Oi.value!==null?Oi.value:Wn;if(!V)V=bn;else if(bn!==V)return[new gn(Oi.key,ba,bn+" stop domain type must match previous stop domain type "+V)];if(bn!=="number"&&bn!=="string"&&bn!=="boolean")return[new gn(Oi.key,ba,"stop domain value must be a number, string, or boolean")];if(bn!=="number"&&z!=="categorical"){var _o="number expected, "+bn+" found";return Zl(g)&&z===void 0&&(_o+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new gn(Oi.key,ba,_o)]}return z==="categorical"&&bn==="number"&&(!isFinite(bo)||Math.floor(bo)!==bo)?[new gn(Oi.key,ba,"integer expected, found "+bo)]:z!=="categorical"&&bn==="number"&&oe!==void 0&&bo=2&&y[1]!=="$id"&&y[1]!=="$type";case"in":return y.length>=3&&(typeof y[1]!="string"||Array.isArray(y[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return y.length!==3||Array.isArray(y[1])||Array.isArray(y[2]);case"any":case"all":for(var g=0,z=y.slice(1);gg?1:0}function Ge(y){if(!Array.isArray(y))return!1;if(y[0]==="within")return!0;for(var g=1;g"||g==="<="||g===">="?rt(y[1],y[2],g):g==="any"?pt(y.slice(1)):g==="all"?["all"].concat(y.slice(1).map(lt)):g==="none"?["all"].concat(y.slice(1).map(lt).map(fr)):g==="in"?Ht(y[1],y.slice(2)):g==="!in"?fr(Ht(y[1],y.slice(2))):g==="has"?nr(y[1]):g==="!has"?fr(nr(y[1])):g==="within"?y:!0;return z}function rt(y,g,z){switch(y){case"$type":return["filter-type-"+z,g];case"$id":return["filter-id-"+z,g];default:return["filter-"+z,y,g]}}function pt(y){return["any"].concat(y.map(lt))}function Ht(y,g){if(g.length===0)return!1;switch(y){case"$type":return["filter-type-in",["literal",g]];case"$id":return["filter-id-in",["literal",g]];default:return g.length>200&&!g.some(function(z){return typeof z!=typeof g[0]})?["filter-in-large",y,["literal",g.sort(Ne)]]:["filter-in-small",y,["literal",g]]}}function nr(y){switch(y){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",y]}}function fr(y){return["!",y]}function Tr(y){return Vr(ao(y.value))?Bt(Ha({},y,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Ir(y)}function Ir(y){var g=y.value,z=y.key;if(ns(g)!=="array")return[new gn(z,g,"array expected, "+ns(g)+" found")];var V=y.styleSpec,$,oe=[];if(g.length<1)return[new gn(z,g,"filter array must have at least 1 element")];switch(oe=oe.concat(kr({key:z+"[0]",value:g[0],valueSpec:V.filter_operator,style:y.style,styleSpec:y.styleSpec})),Sn(g[0])){case"<":case"<=":case">":case">=":g.length>=2&&Sn(g[1])==="$type"&&oe.push(new gn(z,g,'"$type" cannot be use with operator "'+g[0]+'"'));case"==":case"!=":g.length!==3&&oe.push(new gn(z,g,'filter array for operator "'+g[0]+'" must have 3 elements'));case"in":case"!in":g.length>=2&&($=ns(g[1]),$!=="string"&&oe.push(new gn(z+"[1]",g[1],"string expected, "+$+" found")));for(var me=2;me=Xt[Pr+0]&&V>=Xt[Pr+1])?(me[qr]=!0,oe.push(Ft[qr])):me[qr]=!1}}},sf.prototype._forEachCell=function(y,g,z,V,$,oe,me,je){for(var xt=this._convertToCellCoord(y),Ft=this._convertToCellCoord(g),Xt=this._convertToCellCoord(z),br=this._convertToCellCoord(V),qr=xt;qr<=Xt;qr++)for(var Pr=Ft;Pr<=br;Pr++){var ai=this.d*Pr+qr;if(!(je&&!je(this._convertFromCellCoord(qr),this._convertFromCellCoord(Pr),this._convertFromCellCoord(qr+1),this._convertFromCellCoord(Pr+1)))&&$.call(this,y,g,z,V,ai,oe,me,je))return}},sf.prototype._convertFromCellCoord=function(y){return(y-this.padding)/this.scale},sf.prototype._convertToCellCoord=function(y){return Math.max(0,Math.min(this.d-1,Math.floor(y*this.scale)+this.padding))},sf.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var y=this.cells,g=ju+this.cells.length+1+1,z=0,V=0;V=0)){var br=y[Xt];Ft[Xt]=ef[xt].shallow.indexOf(Xt)>=0?br:Qe(br,g)}y instanceof Error&&(Ft.message=y.message)}if(Ft.$name)throw new Error("$name property is reserved for worker serialization logic.");return xt!=="Object"&&(Ft.$name=xt),Ft}throw new Error("can't serialize object of type "+typeof y)}function st(y){if(y==null||typeof y=="boolean"||typeof y=="number"||typeof y=="string"||y instanceof Boolean||y instanceof Number||y instanceof String||y instanceof Date||y instanceof RegExp||Pe(y)||Xe(y)||ArrayBuffer.isView(y)||y instanceof _f)return y;if(Array.isArray(y))return y.map(st);if(typeof y=="object"){var g=y.$name||"Object",z=ef[g],V=z.klass;if(!V)throw new Error("can't deserialize unregistered class "+g);if(V.deserialize)return V.deserialize(y);for(var $=Object.create(V.prototype),oe=0,me=Object.keys(y);oe=0?xt:st(xt)}}return $}throw new Error("can't deserialize object of type "+typeof y)}var jt=function(){this.first=!0};jt.prototype.update=function(g,z){var V=Math.floor(g);return this.first?(this.first=!1,this.lastIntegerZoom=V,this.lastIntegerZoomTime=0,this.lastZoom=g,this.lastFloorZoom=V,!0):(this.lastFloorZoom>V?(this.lastIntegerZoom=V+1,this.lastIntegerZoomTime=z):this.lastFloorZoom=128&&y<=255},Arabic:function(y){return y>=1536&&y<=1791},"Arabic Supplement":function(y){return y>=1872&&y<=1919},"Arabic Extended-A":function(y){return y>=2208&&y<=2303},"Hangul Jamo":function(y){return y>=4352&&y<=4607},"Unified Canadian Aboriginal Syllabics":function(y){return y>=5120&&y<=5759},Khmer:function(y){return y>=6016&&y<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(y){return y>=6320&&y<=6399},"General Punctuation":function(y){return y>=8192&&y<=8303},"Letterlike Symbols":function(y){return y>=8448&&y<=8527},"Number Forms":function(y){return y>=8528&&y<=8591},"Miscellaneous Technical":function(y){return y>=8960&&y<=9215},"Control Pictures":function(y){return y>=9216&&y<=9279},"Optical Character Recognition":function(y){return y>=9280&&y<=9311},"Enclosed Alphanumerics":function(y){return y>=9312&&y<=9471},"Geometric Shapes":function(y){return y>=9632&&y<=9727},"Miscellaneous Symbols":function(y){return y>=9728&&y<=9983},"Miscellaneous Symbols and Arrows":function(y){return y>=11008&&y<=11263},"CJK Radicals Supplement":function(y){return y>=11904&&y<=12031},"Kangxi Radicals":function(y){return y>=12032&&y<=12255},"Ideographic Description Characters":function(y){return y>=12272&&y<=12287},"CJK Symbols and Punctuation":function(y){return y>=12288&&y<=12351},Hiragana:function(y){return y>=12352&&y<=12447},Katakana:function(y){return y>=12448&&y<=12543},Bopomofo:function(y){return y>=12544&&y<=12591},"Hangul Compatibility Jamo":function(y){return y>=12592&&y<=12687},Kanbun:function(y){return y>=12688&&y<=12703},"Bopomofo Extended":function(y){return y>=12704&&y<=12735},"CJK Strokes":function(y){return y>=12736&&y<=12783},"Katakana Phonetic Extensions":function(y){return y>=12784&&y<=12799},"Enclosed CJK Letters and Months":function(y){return y>=12800&&y<=13055},"CJK Compatibility":function(y){return y>=13056&&y<=13311},"CJK Unified Ideographs Extension A":function(y){return y>=13312&&y<=19903},"Yijing Hexagram Symbols":function(y){return y>=19904&&y<=19967},"CJK Unified Ideographs":function(y){return y>=19968&&y<=40959},"Yi Syllables":function(y){return y>=40960&&y<=42127},"Yi Radicals":function(y){return y>=42128&&y<=42191},"Hangul Jamo Extended-A":function(y){return y>=43360&&y<=43391},"Hangul Syllables":function(y){return y>=44032&&y<=55215},"Hangul Jamo Extended-B":function(y){return y>=55216&&y<=55295},"Private Use Area":function(y){return y>=57344&&y<=63743},"CJK Compatibility Ideographs":function(y){return y>=63744&&y<=64255},"Arabic Presentation Forms-A":function(y){return y>=64336&&y<=65023},"Vertical Forms":function(y){return y>=65040&&y<=65055},"CJK Compatibility Forms":function(y){return y>=65072&&y<=65103},"Small Form Variants":function(y){return y>=65104&&y<=65135},"Arabic Presentation Forms-B":function(y){return y>=65136&&y<=65279},"Halfwidth and Fullwidth Forms":function(y){return y>=65280&&y<=65519}};function hr(y){for(var g=0,z=y;g=65097&&y<=65103)||_t["CJK Compatibility Ideographs"](y)||_t["CJK Compatibility"](y)||_t["CJK Radicals Supplement"](y)||_t["CJK Strokes"](y)||_t["CJK Symbols and Punctuation"](y)&&!(y>=12296&&y<=12305)&&!(y>=12308&&y<=12319)&&y!==12336||_t["CJK Unified Ideographs Extension A"](y)||_t["CJK Unified Ideographs"](y)||_t["Enclosed CJK Letters and Months"](y)||_t["Hangul Compatibility Jamo"](y)||_t["Hangul Jamo Extended-A"](y)||_t["Hangul Jamo Extended-B"](y)||_t["Hangul Jamo"](y)||_t["Hangul Syllables"](y)||_t.Hiragana(y)||_t["Ideographic Description Characters"](y)||_t.Kanbun(y)||_t["Kangxi Radicals"](y)||_t["Katakana Phonetic Extensions"](y)||_t.Katakana(y)&&y!==12540||_t["Halfwidth and Fullwidth Forms"](y)&&y!==65288&&y!==65289&&y!==65293&&!(y>=65306&&y<=65310)&&y!==65339&&y!==65341&&y!==65343&&!(y>=65371&&y<=65503)&&y!==65507&&!(y>=65512&&y<=65519)||_t["Small Form Variants"](y)&&!(y>=65112&&y<=65118)&&!(y>=65123&&y<=65126)||_t["Unified Canadian Aboriginal Syllabics"](y)||_t["Unified Canadian Aboriginal Syllabics Extended"](y)||_t["Vertical Forms"](y)||_t["Yijing Hexagram Symbols"](y)||_t["Yi Syllables"](y)||_t["Yi Radicals"](y))}function Bi(y){return!!(_t["Latin-1 Supplement"](y)&&(y===167||y===169||y===174||y===177||y===188||y===189||y===190||y===215||y===247)||_t["General Punctuation"](y)&&(y===8214||y===8224||y===8225||y===8240||y===8241||y===8251||y===8252||y===8258||y===8263||y===8264||y===8265||y===8273)||_t["Letterlike Symbols"](y)||_t["Number Forms"](y)||_t["Miscellaneous Technical"](y)&&(y>=8960&&y<=8967||y>=8972&&y<=8991||y>=8996&&y<=9e3||y===9003||y>=9085&&y<=9114||y>=9150&&y<=9165||y===9167||y>=9169&&y<=9179||y>=9186&&y<=9215)||_t["Control Pictures"](y)&&y!==9251||_t["Optical Character Recognition"](y)||_t["Enclosed Alphanumerics"](y)||_t["Geometric Shapes"](y)||_t["Miscellaneous Symbols"](y)&&!(y>=9754&&y<=9759)||_t["Miscellaneous Symbols and Arrows"](y)&&(y>=11026&&y<=11055||y>=11088&&y<=11097||y>=11192&&y<=11243)||_t["CJK Symbols and Punctuation"](y)||_t.Katakana(y)||_t["Private Use Area"](y)||_t["CJK Compatibility Forms"](y)||_t["Small Form Variants"](y)||_t["Halfwidth and Fullwidth Forms"](y)||y===8734||y===8756||y===8757||y>=9984&&y<=10087||y>=10102&&y<=10131||y===65532||y===65533)}function fn(y){return!($r(y)||Bi(y))}function mi(y){return _t.Arabic(y)||_t["Arabic Supplement"](y)||_t["Arabic Extended-A"](y)||_t["Arabic Presentation Forms-A"](y)||_t["Arabic Presentation Forms-B"](y)}function zi(y){return y>=1424&&y<=2303||_t["Arabic Presentation Forms-A"](y)||_t["Arabic Presentation Forms-B"](y)}function ji(y,g){return!(!g&&zi(y)||y>=2304&&y<=3583||y>=3840&&y<=4255||_t.Khmer(y))}function pn(y){for(var g=0,z=y;g-1&&(no=wi.error),xo&&xo(y)};function El(){Pl.fire(new nn("pluginStateChange",{pluginStatus:no,pluginURL:Xo}))}var Pl=new Ii,pu=function(){return no},Il=function(y){return y({pluginStatus:no,pluginURL:Xo}),Pl.on("pluginStateChange",y),y},fu=function(y,g,z){if(z===void 0&&(z=!1),no===wi.deferred||no===wi.loading||no===wi.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");Xo=nt.resolveURL(y),no=wi.deferred,xo=g,El(),z||Xu()},Xu=function(){if(no!==wi.deferred||!Xo)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");no=wi.loading,El(),Xo&&Nr({url:Xo},function(y){y?js(y):(no=wi.loaded,El())})},Vu={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return no===wi.loaded||Vu.applyArabicShaping!=null},isLoading:function(){return no===wi.loading},setState:function(g){no=g.pluginStatus,Xo=g.pluginURL},isParsed:function(){return Vu.applyArabicShaping!=null&&Vu.processBidirectionalText!=null&&Vu.processStyledBidirectionalText!=null},getPluginURL:function(){return Xo}},tf=function(){!Vu.isLoading()&&!Vu.isLoaded()&&pu()==="deferred"&&Xu()},ds=function(g,z){this.zoom=g,z?(this.now=z.now,this.fadeDuration=z.fadeDuration,this.zoomHistory=z.zoomHistory,this.transition=z.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new jt,this.transition={})};ds.prototype.isSupportedScript=function(g){return sn(g,Vu.isLoaded())},ds.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},ds.prototype.getCrossfadeParameters=function(){var g=this.zoom,z=g-Math.floor(g),V=this.crossFadingFactor();return g>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:z+(1-z)*V}:{fromScale:.5,toScale:1,t:1-(1-V)*z}};var Wl=function(g,z){this.property=g,this.value=z,this.expression=w(z===void 0?g.specification.default:z,g.specification)};Wl.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},Wl.prototype.possiblyEvaluate=function(g,z,V){return this.property.possiblyEvaluate(this,g,z,V)};var Tu=function(g){this.property=g,this.value=new Wl(g,void 0)};Tu.prototype.transitioned=function(g,z){return new lf(this.property,this.value,z,x({},g.transition,this.transition),g.now)},Tu.prototype.untransitioned=function(){return new lf(this.property,this.value,null,{},0)};var Au=function(g){this._properties=g,this._values=Object.create(g.defaultTransitionablePropertyValues)};Au.prototype.getValue=function(g){return W(this._values[g].value.value)},Au.prototype.setValue=function(g,z){this._values.hasOwnProperty(g)||(this._values[g]=new Tu(this._values[g].property)),this._values[g].value=new Wl(this._values[g].property,z===null?void 0:W(z))},Au.prototype.getTransition=function(g){return W(this._values[g].transition)},Au.prototype.setTransition=function(g,z){this._values.hasOwnProperty(g)||(this._values[g]=new Tu(this._values[g].property)),this._values[g].transition=W(z)||void 0},Au.prototype.serialize=function(){for(var g={},z=0,V=Object.keys(this._values);zthis.end)return this.prior=null,oe;if(this.value.isDataDriven())return this.prior=null,oe;if($me.zoomHistory.lastIntegerZoom?{from:V,to:$}:{from:oe,to:$}},g.prototype.interpolate=function(V){return V},g}(qt),Qr=function(g){this.specification=g};Qr.prototype.possiblyEvaluate=function(g,z,V,$){if(g.value!==void 0)if(g.expression.kind==="constant"){var oe=g.expression.evaluate(z,null,{},V,$);return this._calculate(oe,oe,oe,z)}else return this._calculate(g.expression.evaluate(new ds(Math.floor(z.zoom-1),z)),g.expression.evaluate(new ds(Math.floor(z.zoom),z)),g.expression.evaluate(new ds(Math.floor(z.zoom+1),z)),z)},Qr.prototype._calculate=function(g,z,V,$){var oe=$.zoom;return oe>$.zoomHistory.lastIntegerZoom?{from:g,to:z}:{from:V,to:z}},Qr.prototype.interpolate=function(g){return g};var yi=function(g){this.specification=g};yi.prototype.possiblyEvaluate=function(g,z,V,$){return!!g.expression.evaluate(z,null,{},V,$)},yi.prototype.interpolate=function(){return!1};var ci=function(g){this.properties=g,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(var z in g){var V=g[z];V.specification.overridable&&this.overridableProperties.push(z);var $=this.defaultPropertyValues[z]=new Wl(V,void 0),oe=this.defaultTransitionablePropertyValues[z]=new Tu(V);this.defaultTransitioningPropertyValues[z]=oe.untransitioned(),this.defaultPossiblyEvaluatedValues[z]=$.possiblyEvaluate({})}};Z("DataDrivenProperty",qt),Z("DataConstantProperty",Be),Z("CrossFadedDataDrivenProperty",ar),Z("CrossFadedProperty",Qr),Z("ColorRampProperty",yi);var vi="-transition",on=function(y){function g(z,V){if(y.call(this),this.id=z.id,this.type=z.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},z.type!=="custom"&&(z=z,this.metadata=z.metadata,this.minzoom=z.minzoom,this.maxzoom=z.maxzoom,z.type!=="background"&&(this.source=z.source,this.sourceLayer=z["source-layer"],this.filter=z.filter),V.layout&&(this._unevaluatedLayout=new Mf(V.layout)),V.paint)){this._transitionablePaint=new Au(V.paint);for(var $ in z.paint)this.setPaintProperty($,z.paint[$],{validate:!1});for(var oe in z.layout)this.setLayoutProperty(oe,z.layout[oe],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new fc(V.paint)}}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},g.prototype.getLayoutProperty=function(V){return V==="visibility"?this.visibility:this._unevaluatedLayout.getValue(V)},g.prototype.setLayoutProperty=function(V,$,oe){if(oe===void 0&&(oe={}),$!=null){var me="layers."+this.id+".layout."+V;if(this._validate($u,me,V,$,oe))return}if(V==="visibility"){this.visibility=$;return}this._unevaluatedLayout.setValue(V,$)},g.prototype.getPaintProperty=function(V){return U(V,vi)?this._transitionablePaint.getTransition(V.slice(0,-vi.length)):this._transitionablePaint.getValue(V)},g.prototype.setPaintProperty=function(V,$,oe){if(oe===void 0&&(oe={}),$!=null){var me="layers."+this.id+".paint."+V;if(this._validate(Hu,me,V,$,oe))return!1}if(U(V,vi))return this._transitionablePaint.setTransition(V.slice(0,-vi.length),$||void 0),!1;var je=this._transitionablePaint._values[V],xt=je.property.specification["property-type"]==="cross-faded-data-driven",Ft=je.value.isDataDriven(),Xt=je.value;this._transitionablePaint.setValue(V,$),this._handleSpecialPaintPropertyUpdate(V);var br=this._transitionablePaint._values[V].value,qr=br.isDataDriven();return qr||Ft||xt||this._handleOverridablePaintPropertyUpdate(V,Xt,br)},g.prototype._handleSpecialPaintPropertyUpdate=function(V){},g.prototype._handleOverridablePaintPropertyUpdate=function(V,$,oe){return!1},g.prototype.isHidden=function(V){return this.minzoom&&V=this.maxzoom?!0:this.visibility==="none"},g.prototype.updateTransitions=function(V){this._transitioningPaint=this._transitionablePaint.transitioned(V,this._transitioningPaint)},g.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},g.prototype.recalculate=function(V,$){V.getCrossfadeParameters&&(this._crossfadeParameters=V.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(V,void 0,$)),this.paint=this._transitioningPaint.possiblyEvaluate(V,void 0,$)},g.prototype.serialize=function(){var V={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(V.layout=V.layout||{},V.layout.visibility=this.visibility),j(V,function($,oe){return $!==void 0&&!(oe==="layout"&&!Object.keys($).length)&&!(oe==="paint"&&!Object.keys($).length)})},g.prototype._validate=function(V,$,oe,me,je){return je===void 0&&(je={}),je&&je.validate===!1?!1:Ku(this,V.call(nu,{key:$,layerType:this.type,objectKey:oe,value:me,styleSpec:Wi,style:{glyphs:!0,sprite:!0}}))},g.prototype.is3D=function(){return!1},g.prototype.isTileClipped=function(){return!1},g.prototype.hasOffscreenPass=function(){return!1},g.prototype.resize=function(){},g.prototype.isStateDependent=function(){for(var V in this.paint._values){var $=this.paint.get(V);if(!(!($ instanceof pf)||!Zl($.property.specification))&&($.value.kind==="source"||$.value.kind==="composite")&&$.value.isStateDependent)return!0}return!1},g}(Ii),Bn={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},Ln=function(g,z){this._structArray=g,this._pos1=z*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},wn=128,Ls=5,ua=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};ua.serialize=function(g,z){return g._trim(),z&&(g.isTransferred=!0,z.push(g.arrayBuffer)),{length:g.length,arrayBuffer:g.arrayBuffer}},ua.deserialize=function(g){var z=Object.create(this.prototype);return z.arrayBuffer=g.arrayBuffer,z.length=g.length,z.capacity=g.arrayBuffer.byteLength/z.bytesPerElement,z._refreshViews(),z},ua.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},ua.prototype.clear=function(){this.length=0},ua.prototype.resize=function(g){this.reserve(g),this.length=g},ua.prototype.reserve=function(g){if(g>this.capacity){this.capacity=Math.max(g,Math.floor(this.capacity*Ls),wn),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var z=this.uint8;this._refreshViews(),z&&this.uint8.set(z)}},ua.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};function Hn(y,g){g===void 0&&(g=1);var z=0,V=0,$=y.map(function(me){var je=qi(me.type),xt=z=Wr(z,Math.max(g,je)),Ft=me.components||1;return V=Math.max(V,je),z+=je*Ft,{name:me.name,type:me.type,components:Ft,offset:xt}}),oe=Wr(z,Math.max(V,g));return{members:$,size:oe,alignment:g}}function qi(y){return Bn[y].BYTES_PER_ELEMENT}function Wr(y,g){return Math.ceil(y/g)*g}var xi=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$){var oe=this.length;return this.resize(oe+1),this.emplace(oe,V,$)},g.prototype.emplace=function(V,$,oe){var me=V*2;return this.int16[me+0]=$,this.int16[me+1]=oe,V},g}(ua);xi.prototype.bytesPerElement=4,Z("StructArrayLayout2i4",xi);var dn=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me){var je=this.length;return this.resize(je+1),this.emplace(je,V,$,oe,me)},g.prototype.emplace=function(V,$,oe,me,je){var xt=V*4;return this.int16[xt+0]=$,this.int16[xt+1]=oe,this.int16[xt+2]=me,this.int16[xt+3]=je,V},g}(ua);dn.prototype.bytesPerElement=8,Z("StructArrayLayout4i8",dn);var En=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt){var Ft=this.length;return this.resize(Ft+1),this.emplace(Ft,V,$,oe,me,je,xt)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft){var Xt=V*6;return this.int16[Xt+0]=$,this.int16[Xt+1]=oe,this.int16[Xt+2]=me,this.int16[Xt+3]=je,this.int16[Xt+4]=xt,this.int16[Xt+5]=Ft,V},g}(ua);En.prototype.bytesPerElement=12,Z("StructArrayLayout2i4i12",En);var Zi=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt){var Ft=this.length;return this.resize(Ft+1),this.emplace(Ft,V,$,oe,me,je,xt)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft){var Xt=V*4,br=V*8;return this.int16[Xt+0]=$,this.int16[Xt+1]=oe,this.uint8[br+4]=me,this.uint8[br+5]=je,this.uint8[br+6]=xt,this.uint8[br+7]=Ft,V},g}(ua);Zi.prototype.bytesPerElement=8,Z("StructArrayLayout2i4ub8",Zi);var ga=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$){var oe=this.length;return this.resize(oe+1),this.emplace(oe,V,$)},g.prototype.emplace=function(V,$,oe){var me=V*2;return this.float32[me+0]=$,this.float32[me+1]=oe,V},g}(ua);ga.prototype.bytesPerElement=8,Z("StructArrayLayout2f8",ga);var Kn=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt,Ft,Xt,br,qr){var Pr=this.length;return this.resize(Pr+1),this.emplace(Pr,V,$,oe,me,je,xt,Ft,Xt,br,qr)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr){var ai=V*10;return this.uint16[ai+0]=$,this.uint16[ai+1]=oe,this.uint16[ai+2]=me,this.uint16[ai+3]=je,this.uint16[ai+4]=xt,this.uint16[ai+5]=Ft,this.uint16[ai+6]=Xt,this.uint16[ai+7]=br,this.uint16[ai+8]=qr,this.uint16[ai+9]=Pr,V},g}(ua);Kn.prototype.bytesPerElement=20,Z("StructArrayLayout10ui20",Kn);var hs=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai){var Oi=this.length;return this.resize(Oi+1),this.emplace(Oi,V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai,Oi){var Wn=V*12;return this.int16[Wn+0]=$,this.int16[Wn+1]=oe,this.int16[Wn+2]=me,this.int16[Wn+3]=je,this.uint16[Wn+4]=xt,this.uint16[Wn+5]=Ft,this.uint16[Wn+6]=Xt,this.uint16[Wn+7]=br,this.int16[Wn+8]=qr,this.int16[Wn+9]=Pr,this.int16[Wn+10]=ai,this.int16[Wn+11]=Oi,V},g}(ua);hs.prototype.bytesPerElement=24,Z("StructArrayLayout4i4ui4i24",hs);var Ji=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe){var me=this.length;return this.resize(me+1),this.emplace(me,V,$,oe)},g.prototype.emplace=function(V,$,oe,me){var je=V*3;return this.float32[je+0]=$,this.float32[je+1]=oe,this.float32[je+2]=me,V},g}(ua);Ji.prototype.bytesPerElement=12,Z("StructArrayLayout3f12",Ji);var Ui=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V){var $=this.length;return this.resize($+1),this.emplace($,V)},g.prototype.emplace=function(V,$){var oe=V*1;return this.uint32[oe+0]=$,V},g}(ua);Ui.prototype.bytesPerElement=4,Z("StructArrayLayout1ul4",Ui);var ro=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt,Ft,Xt,br){var qr=this.length;return this.resize(qr+1),this.emplace(qr,V,$,oe,me,je,xt,Ft,Xt,br)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft,Xt,br,qr){var Pr=V*10,ai=V*5;return this.int16[Pr+0]=$,this.int16[Pr+1]=oe,this.int16[Pr+2]=me,this.int16[Pr+3]=je,this.int16[Pr+4]=xt,this.int16[Pr+5]=Ft,this.uint32[ai+3]=Xt,this.uint16[Pr+8]=br,this.uint16[Pr+9]=qr,V},g}(ua);ro.prototype.bytesPerElement=20,Z("StructArrayLayout6i1ul2ui20",ro);var na=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt){var Ft=this.length;return this.resize(Ft+1),this.emplace(Ft,V,$,oe,me,je,xt)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft){var Xt=V*6;return this.int16[Xt+0]=$,this.int16[Xt+1]=oe,this.int16[Xt+2]=me,this.int16[Xt+3]=je,this.int16[Xt+4]=xt,this.int16[Xt+5]=Ft,V},g}(ua);na.prototype.bytesPerElement=12,Z("StructArrayLayout2i2i2i12",na);var On=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je){var xt=this.length;return this.resize(xt+1),this.emplace(xt,V,$,oe,me,je)},g.prototype.emplace=function(V,$,oe,me,je,xt){var Ft=V*4,Xt=V*8;return this.float32[Ft+0]=$,this.float32[Ft+1]=oe,this.float32[Ft+2]=me,this.int16[Xt+6]=je,this.int16[Xt+7]=xt,V},g}(ua);On.prototype.bytesPerElement=16,Z("StructArrayLayout2f1f2i16",On);var In=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me){var je=this.length;return this.resize(je+1),this.emplace(je,V,$,oe,me)},g.prototype.emplace=function(V,$,oe,me,je){var xt=V*12,Ft=V*3;return this.uint8[xt+0]=$,this.uint8[xt+1]=oe,this.float32[Ft+1]=me,this.float32[Ft+2]=je,V},g}(ua);In.prototype.bytesPerElement=12,Z("StructArrayLayout2ub2f12",In);var Va=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe){var me=this.length;return this.resize(me+1),this.emplace(me,V,$,oe)},g.prototype.emplace=function(V,$,oe,me){var je=V*3;return this.uint16[je+0]=$,this.uint16[je+1]=oe,this.uint16[je+2]=me,V},g}(ua);Va.prototype.bytesPerElement=6,Z("StructArrayLayout3ui6",Va);var _s=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai,Oi,Wn,bn,bo,ba){var _o=this.length;return this.resize(_o+1),this.emplace(_o,V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai,Oi,Wn,bn,bo,ba)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai,Oi,Wn,bn,bo,ba,_o){var Uo=V*24,Zs=V*12,Cl=V*48;return this.int16[Uo+0]=$,this.int16[Uo+1]=oe,this.uint16[Uo+2]=me,this.uint16[Uo+3]=je,this.uint32[Zs+2]=xt,this.uint32[Zs+3]=Ft,this.uint32[Zs+4]=Xt,this.uint16[Uo+10]=br,this.uint16[Uo+11]=qr,this.uint16[Uo+12]=Pr,this.float32[Zs+7]=ai,this.float32[Zs+8]=Oi,this.uint8[Cl+36]=Wn,this.uint8[Cl+37]=bn,this.uint8[Cl+38]=bo,this.uint32[Zs+10]=ba,this.int16[Uo+22]=_o,V},g}(ua);_s.prototype.bytesPerElement=48,Z("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",_s);var ul=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai,Oi,Wn,bn,bo,ba,_o,Uo,Zs,Cl,Al,hu,Kl,lu,Bu,du,gu){var uf=this.length;return this.resize(uf+1),this.emplace(uf,V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai,Oi,Wn,bn,bo,ba,_o,Uo,Zs,Cl,Al,hu,Kl,lu,Bu,du,gu)},g.prototype.emplace=function(V,$,oe,me,je,xt,Ft,Xt,br,qr,Pr,ai,Oi,Wn,bn,bo,ba,_o,Uo,Zs,Cl,Al,hu,Kl,lu,Bu,du,gu,uf){var Ru=V*34,If=V*17;return this.int16[Ru+0]=$,this.int16[Ru+1]=oe,this.int16[Ru+2]=me,this.int16[Ru+3]=je,this.int16[Ru+4]=xt,this.int16[Ru+5]=Ft,this.int16[Ru+6]=Xt,this.int16[Ru+7]=br,this.uint16[Ru+8]=qr,this.uint16[Ru+9]=Pr,this.uint16[Ru+10]=ai,this.uint16[Ru+11]=Oi,this.uint16[Ru+12]=Wn,this.uint16[Ru+13]=bn,this.uint16[Ru+14]=bo,this.uint16[Ru+15]=ba,this.uint16[Ru+16]=_o,this.uint16[Ru+17]=Uo,this.uint16[Ru+18]=Zs,this.uint16[Ru+19]=Cl,this.uint16[Ru+20]=Al,this.uint16[Ru+21]=hu,this.uint16[Ru+22]=Kl,this.uint32[If+12]=lu,this.float32[If+13]=Bu,this.float32[If+14]=du,this.float32[If+15]=gu,this.float32[If+16]=uf,V},g}(ua);ul.prototype.bytesPerElement=68,Z("StructArrayLayout8i15ui1ul4f68",ul);var Qn=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V){var $=this.length;return this.resize($+1),this.emplace($,V)},g.prototype.emplace=function(V,$){var oe=V*1;return this.float32[oe+0]=$,V},g}(ua);Qn.prototype.bytesPerElement=4,Z("StructArrayLayout1f4",Qn);var Mo=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe){var me=this.length;return this.resize(me+1),this.emplace(me,V,$,oe)},g.prototype.emplace=function(V,$,oe,me){var je=V*3;return this.int16[je+0]=$,this.int16[je+1]=oe,this.int16[je+2]=me,V},g}(ua);Mo.prototype.bytesPerElement=6,Z("StructArrayLayout3i6",Mo);var nl=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe){var me=this.length;return this.resize(me+1),this.emplace(me,V,$,oe)},g.prototype.emplace=function(V,$,oe,me){var je=V*2,xt=V*4;return this.uint32[je+0]=$,this.uint16[xt+2]=oe,this.uint16[xt+3]=me,V},g}(ua);nl.prototype.bytesPerElement=8,Z("StructArrayLayout1ul2ui8",nl);var pl=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$){var oe=this.length;return this.resize(oe+1),this.emplace(oe,V,$)},g.prototype.emplace=function(V,$,oe){var me=V*2;return this.uint16[me+0]=$,this.uint16[me+1]=oe,V},g}(ua);pl.prototype.bytesPerElement=4,Z("StructArrayLayout2ui4",pl);var Dl=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V){var $=this.length;return this.resize($+1),this.emplace($,V)},g.prototype.emplace=function(V,$){var oe=V*1;return this.uint16[oe+0]=$,V},g}(ua);Dl.prototype.bytesPerElement=2,Z("StructArrayLayout1ui2",Dl);var Fu=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},g.prototype.emplaceBack=function(V,$,oe,me){var je=this.length;return this.resize(je+1),this.emplace(je,V,$,oe,me)},g.prototype.emplace=function(V,$,oe,me,je){var xt=V*4;return this.float32[xt+0]=$,this.float32[xt+1]=oe,this.float32[xt+2]=me,this.float32[xt+3]=je,V},g}(ua);Fu.prototype.bytesPerElement=16,Z("StructArrayLayout4f16",Fu);var vf=function(y){function g(){y.apply(this,arguments)}y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g;var z={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return z.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},z.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},z.x1.get=function(){return this._structArray.int16[this._pos2+2]},z.y1.get=function(){return this._structArray.int16[this._pos2+3]},z.x2.get=function(){return this._structArray.int16[this._pos2+4]},z.y2.get=function(){return this._structArray.int16[this._pos2+5]},z.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},z.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},z.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},z.anchorPoint.get=function(){return new l(this.anchorPointX,this.anchorPointY)},Object.defineProperties(g.prototype,z),g}(Ln);vf.prototype.size=20;var Ql=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.get=function(V){return new vf(this,V)},g}(ro);Z("CollisionBoxArray",Ql);var Ef=function(y){function g(){y.apply(this,arguments)}y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g;var z={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return z.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},z.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},z.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},z.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},z.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},z.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},z.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},z.segment.get=function(){return this._structArray.uint16[this._pos2+10]},z.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},z.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},z.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},z.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},z.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},z.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},z.placedOrientation.set=function(V){this._structArray.uint8[this._pos1+37]=V},z.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},z.hidden.set=function(V){this._structArray.uint8[this._pos1+38]=V},z.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},z.crossTileID.set=function(V){this._structArray.uint32[this._pos4+10]=V},z.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(g.prototype,z),g}(Ln);Ef.prototype.size=48;var Cu=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.get=function(V){return new Ef(this,V)},g}(_s);Z("PlacedSymbolArray",Cu);var gf=function(y){function g(){y.apply(this,arguments)}y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g;var z={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return z.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},z.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},z.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},z.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},z.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},z.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},z.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},z.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},z.key.get=function(){return this._structArray.uint16[this._pos2+8]},z.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},z.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},z.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},z.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},z.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},z.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},z.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},z.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},z.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},z.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},z.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},z.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},z.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},z.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},z.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},z.crossTileID.set=function(V){this._structArray.uint32[this._pos4+12]=V},z.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},z.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},z.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},z.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(g.prototype,z),g}(Ln);gf.prototype.size=68;var xf=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.get=function(V){return new gf(this,V)},g}(ul);Z("SymbolInstanceArray",xf);var Cf=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.getoffsetX=function(V){return this.float32[V*1+0]},g}(Qn);Z("GlyphOffsetArray",Cf);var Gu=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.getx=function(V){return this.int16[V*3+0]},g.prototype.gety=function(V){return this.int16[V*3+1]},g.prototype.gettileUnitDistanceFromAnchor=function(V){return this.int16[V*3+2]},g}(Mo);Z("SymbolLineVertexArray",Gu);var cf=function(y){function g(){y.apply(this,arguments)}y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g;var z={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return z.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},z.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},z.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(g.prototype,z),g}(Ln);cf.prototype.size=8;var mf=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.get=function(V){return new cf(this,V)},g}(nl);Z("FeatureIndexArray",mf);var Fl=Hn([{name:"a_pos",components:2,type:"Int16"}],4),bf=Fl.members,cu=function(g){g===void 0&&(g=[]),this.segments=g};cu.prototype.prepareSegment=function(g,z,V,$){var oe=this.segments[this.segments.length-1];return g>cu.MAX_VERTEX_ARRAY_LENGTH&&re("Max vertices per segment is "+cu.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+g),(!oe||oe.vertexLength+g>cu.MAX_VERTEX_ARRAY_LENGTH||oe.sortKey!==$)&&(oe={vertexOffset:z.length,primitiveOffset:V.length,vertexLength:0,primitiveLength:0},$!==void 0&&(oe.sortKey=$),this.segments.push(oe)),oe},cu.prototype.get=function(){return this.segments},cu.prototype.destroy=function(){for(var g=0,z=this.segments;g>>16)*xt&65535)<<16)&4294967295,Xt=Xt<<15|Xt>>>17,Xt=(Xt&65535)*Ft+(((Xt>>>16)*Ft&65535)<<16)&4294967295,me^=Xt,me=me<<13|me>>>19,je=(me&65535)*5+(((me>>>16)*5&65535)<<16)&4294967295,me=(je&65535)+27492+(((je>>>16)+58964&65535)<<16);switch(Xt=0,$){case 3:Xt^=(z.charCodeAt(br+2)&255)<<16;case 2:Xt^=(z.charCodeAt(br+1)&255)<<8;case 1:Xt^=z.charCodeAt(br)&255,Xt=(Xt&65535)*xt+(((Xt>>>16)*xt&65535)<<16)&4294967295,Xt=Xt<<15|Xt>>>17,Xt=(Xt&65535)*Ft+(((Xt>>>16)*Ft&65535)<<16)&4294967295,me^=Xt}return me^=z.length,me^=me>>>16,me=(me&65535)*2246822507+(((me>>>16)*2246822507&65535)<<16)&4294967295,me^=me>>>13,me=(me&65535)*3266489909+(((me>>>16)*3266489909&65535)<<16)&4294967295,me^=me>>>16,me>>>0}y.exports=g}),O=a(function(y){function g(z,V){for(var $=z.length,oe=V^$,me=0,je;$>=4;)je=z.charCodeAt(me)&255|(z.charCodeAt(++me)&255)<<8|(z.charCodeAt(++me)&255)<<16|(z.charCodeAt(++me)&255)<<24,je=(je&65535)*1540483477+(((je>>>16)*1540483477&65535)<<16),je^=je>>>24,je=(je&65535)*1540483477+(((je>>>16)*1540483477&65535)<<16),oe=(oe&65535)*1540483477+(((oe>>>16)*1540483477&65535)<<16)^je,$-=4,++me;switch($){case 3:oe^=(z.charCodeAt(me+2)&255)<<16;case 2:oe^=(z.charCodeAt(me+1)&255)<<8;case 1:oe^=z.charCodeAt(me)&255,oe=(oe&65535)*1540483477+(((oe>>>16)*1540483477&65535)<<16)}return oe^=oe>>>13,oe=(oe&65535)*1540483477+(((oe>>>16)*1540483477&65535)<<16),oe^=oe>>>15,oe>>>0}y.exports=g}),K=J,_e=J,ne=O;K.murmur3=_e,K.murmur2=ne;var Le=function(){this.ids=[],this.positions=[],this.indexed=!1};Le.prototype.add=function(g,z,V,$){this.ids.push(kt(g)),this.positions.push(z,V,$)},Le.prototype.getPositions=function(g){for(var z=kt(g),V=0,$=this.ids.length-1;V<$;){var oe=V+$>>1;this.ids[oe]>=z?$=oe:V=oe+1}for(var me=[];this.ids[V]===z;){var je=this.positions[3*V],xt=this.positions[3*V+1],Ft=this.positions[3*V+2];me.push({index:je,start:xt,end:Ft}),V++}return me},Le.serialize=function(g,z){var V=new Float64Array(g.ids),$=new Uint32Array(g.positions);return dr(V,$,0,V.length-1),z&&z.push(V.buffer,$.buffer),{ids:V,positions:$}},Le.deserialize=function(g){var z=new Le;return z.ids=g.ids,z.positions=g.positions,z.indexed=!0,z};var Ze=Math.pow(2,53)-1;function kt(y){var g=+y;return!isNaN(g)&&g<=Ze?g:K(String(y))}function dr(y,g,z,V){for(;z>1],oe=z-1,me=V+1;;){do oe++;while(y[oe]<$);do me--;while(y[me]>$);if(oe>=me)break;Mr(y,oe,me),Mr(g,3*oe,3*me),Mr(g,3*oe+1,3*me+1),Mr(g,3*oe+2,3*me+2)}me-zme.x+1||xtme.y+1)&&re("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return z}function ru(y,g){return{type:y.type,id:y.id,properties:y.properties,geometry:g?Zo(y):[]}}function yu(y,g,z,V,$){y.emplaceBack(g*2+(V+1)/2,z*2+($+1)/2)}var Du=function(g){this.zoom=g.zoom,this.overscaling=g.overscaling,this.layers=g.layers,this.layerIds=this.layers.map(function(z){return z.id}),this.index=g.index,this.hasPattern=!1,this.layoutVertexArray=new xi,this.indexArray=new Va,this.segments=new cu,this.programConfigurations=new Yi(g.layers,g.zoom),this.stateDependentLayerIds=this.layers.filter(function(z){return z.isStateDependent()}).map(function(z){return z.id})};Du.prototype.populate=function(g,z,V){var $=this.layers[0],oe=[],me=null;$.type==="circle"&&(me=$.layout.get("circle-sort-key"));for(var je=0,xt=g;je=An||qr<0||qr>=An)){var Pr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,g.sortKey),ai=Pr.vertexLength;yu(this.layoutVertexArray,br,qr,-1,-1),yu(this.layoutVertexArray,br,qr,1,-1),yu(this.layoutVertexArray,br,qr,1,1),yu(this.layoutVertexArray,br,qr,-1,1),this.indexArray.emplaceBack(ai,ai+1,ai+2),this.indexArray.emplaceBack(ai,ai+3,ai+2),Pr.vertexLength+=4,Pr.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,g,V,{},$)},Z("CircleBucket",Du,{omit:["layers"]});function vu(y,g){for(var z=0;z=3){for(var oe=0;oe<$.length;oe++)if(Sd(y,$[oe]))return!0}if(wd(y,$,z))return!0}return!1}function wd(y,g,z){if(y.length>1){if(Td(y,g))return!0;for(var V=0;V1?y.distSqr(z):y.distSqr(z.sub(g)._mult($)._add(g))}function vv(y,g){for(var z=!1,V,$,oe,me=0;meg.y!=oe.y>g.y&&g.x<(oe.x-$.x)*(g.y-$.y)/(oe.y-$.y)+$.x&&(z=!z)}return z}function Sd(y,g){for(var z=!1,V=0,$=y.length-1;Vg.y!=me.y>g.y&&g.x<(me.x-oe.x)*(g.y-oe.y)/(me.y-oe.y)+oe.x&&(z=!z)}return z}function mv(y,g,z,V,$){for(var oe=0,me=y;oe=je.x&&$>=je.y)return!0}var xt=[new l(g,z),new l(g,$),new l(V,$),new l(V,z)];if(y.length>2)for(var Ft=0,Xt=xt;Ft$.x&&g.x>$.x||y.y$.y&&g.y>$.y)return!1;var oe=ae(y,g,z[0]);return oe!==ae(y,g,z[1])||oe!==ae(y,g,z[2])||oe!==ae(y,g,z[3])}function Md(y,g,z){var V=g.paint.get(y).value;return V.kind==="constant"?V.value:z.programConfigurations.get(g.id).getMaxValue(y)}function Pp(y){return Math.sqrt(y[0]*y[0]+y[1]*y[1])}function Jp(y,g,z,V,$){if(!g[0]&&!g[1])return y;var oe=l.convert(g)._mult($);z==="viewport"&&oe._rotate(-V);for(var me=[],je=0;je0&&(oe=1/Math.sqrt(oe)),y[0]=g[0]*oe,y[1]=g[1]*oe,y[2]=g[2]*oe,y}function ZO(y,g){return y[0]*g[0]+y[1]*g[1]+y[2]*g[2]}function YO(y,g,z){var V=g[0],$=g[1],oe=g[2],me=z[0],je=z[1],xt=z[2];return y[0]=$*xt-oe*je,y[1]=oe*me-V*xt,y[2]=V*je-$*me,y}function KO(y,g,z){var V=g[0],$=g[1],oe=g[2];return y[0]=V*z[0]+$*z[3]+oe*z[6],y[1]=V*z[1]+$*z[4]+oe*z[7],y[2]=V*z[2]+$*z[5]+oe*z[8],y}var JO=sy,VQ=function(){var y=oy();return function(g,z,V,$,oe,me){var je,xt;for(z||(z=3),V||(V=0),$?xt=Math.min($*z+V,g.length):xt=g.length,je=V;jey.width||$.height>y.height||z.x>y.width-$.width||z.y>y.height-$.height)throw new RangeError("out of range source coordinates for image copy");if($.width>g.width||$.height>g.height||V.x>g.width-$.width||V.y>g.height-$.height)throw new RangeError("out of range destination coordinates for image copy");for(var me=y.data,je=g.data,xt=0;xt<$.height;xt++)for(var Ft=((z.y+xt)*y.width+z.x)*oe,Xt=((V.y+xt)*g.width+V.x)*oe,br=0;br<$.width*oe;br++)je[Xt+br]=me[Ft+br];return g}var Rp=function(g,z){kd(this,g,1,z)};Rp.prototype.resize=function(g){Lw(this,g,1)},Rp.prototype.clone=function(){return new Rp({width:this.width,height:this.height},new Uint8Array(this.data))},Rp.copy=function(g,z,V,$,oe){Pw(g,z,V,$,oe,1)};var Ph=function(g,z){kd(this,g,4,z)};Ph.prototype.resize=function(g){Lw(this,g,4)},Ph.prototype.replace=function(g,z){z?this.data.set(g):g instanceof Uint8ClampedArray?this.data=new Uint8Array(g.buffer):this.data=g},Ph.prototype.clone=function(){return new Ph({width:this.width,height:this.height},new Uint8Array(this.data))},Ph.copy=function(g,z,V,$,oe){Pw(g,z,V,$,oe,4)},Z("AlphaImage",Rp),Z("RGBAImage",Ph);var Gx=new ci({"heatmap-radius":new qt(Wi.paint_heatmap["heatmap-radius"]),"heatmap-weight":new qt(Wi.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Be(Wi.paint_heatmap["heatmap-intensity"]),"heatmap-color":new yi(Wi.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Be(Wi.paint_heatmap["heatmap-opacity"])}),A1={paint:Gx};function Hx(y){var g={},z=y.resolution||256,V=y.clips?y.clips.length:1,$=y.image||new Ph({width:z,height:V}),oe=function(bo,ba,_o){g[y.evaluationKey]=_o;var Uo=y.expression.evaluate(g);$.data[bo+ba+0]=Math.floor(Uo.r*255/Uo.a),$.data[bo+ba+1]=Math.floor(Uo.g*255/Uo.a),$.data[bo+ba+2]=Math.floor(Uo.b*255/Uo.a),$.data[bo+ba+3]=Math.floor(Uo.a*255)};if(y.clips)for(var Ft=0,Xt=0;Ft80*z){je=Ft=y[0],xt=Xt=y[1];for(var ai=z;ai<$;ai+=z)br=y[ai],qr=y[ai+1],brFt&&(Ft=br),qr>Xt&&(Xt=qr);Pr=Math.max(Ft-je,Xt-xt),Pr=Pr!==0?1/Pr:0}return Wx(oe,me,z,je,xt,Pr),me}function Rw(y,g,z,V,$){var oe,me;if($===dM(y,g,z,V)>0)for(oe=g;oe=g;oe-=V)me=EC(oe,y[oe],y[oe+1],me);return me&&Xx(me,me.next)&&(Kx(me),me=me.next),me}function ly(y,g){if(!y)return y;g||(g=y);var z=y,V;do if(V=!1,!z.steiner&&(Xx(z,z.next)||Jc(z.prev,z,z.next)===0)){if(Kx(z),z=g=z.prev,z===z.next)break;V=!0}else z=z.next;while(V||z!==g);return g}function Wx(y,g,z,V,$,oe,me){if(y){!me&&oe&&Dw(y,V,$,oe);for(var je=y,xt,Ft;y.prev!==y.next;){if(xt=y.prev,Ft=y.next,oe?AC(y,V,$,oe):TC(y)){g.push(xt.i/z),g.push(y.i/z),g.push(Ft.i/z),Kx(y),y=Ft.next,je=Ft.next;continue}if(y=Ft,y===je){me?me===1?(y=jx(ly(y),g,z),Wx(y,g,z,V,$,oe,2)):me===2&&d0(y,g,z,V,$,oe):Wx(ly(y),g,z,V,$,oe,1);break}}}}function TC(y){var g=y.prev,z=y,V=y.next;if(Jc(g,z,V)>=0)return!1;for(var $=y.next.next;$!==y.prev;){if(fy(g.x,g.y,z.x,z.y,V.x,V.y,$.x,$.y)&&Jc($.prev,$,$.next)>=0)return!1;$=$.next}return!0}function AC(y,g,z,V){var $=y.prev,oe=y,me=y.next;if(Jc($,oe,me)>=0)return!1;for(var je=$.xoe.x?$.x>me.x?$.x:me.x:oe.x>me.x?oe.x:me.x,Xt=$.y>oe.y?$.y>me.y?$.y:me.y:oe.y>me.y?oe.y:me.y,br=uM(je,xt,g,z,V),qr=uM(Ft,Xt,g,z,V),Pr=y.prevZ,ai=y.nextZ;Pr&&Pr.z>=br&&ai&&ai.z<=qr;){if(Pr!==y.prev&&Pr!==y.next&&fy($.x,$.y,oe.x,oe.y,me.x,me.y,Pr.x,Pr.y)&&Jc(Pr.prev,Pr,Pr.next)>=0||(Pr=Pr.prevZ,ai!==y.prev&&ai!==y.next&&fy($.x,$.y,oe.x,oe.y,me.x,me.y,ai.x,ai.y)&&Jc(ai.prev,ai,ai.next)>=0))return!1;ai=ai.nextZ}for(;Pr&&Pr.z>=br;){if(Pr!==y.prev&&Pr!==y.next&&fy($.x,$.y,oe.x,oe.y,me.x,me.y,Pr.x,Pr.y)&&Jc(Pr.prev,Pr,Pr.next)>=0)return!1;Pr=Pr.prevZ}for(;ai&&ai.z<=qr;){if(ai!==y.prev&&ai!==y.next&&fy($.x,$.y,oe.x,oe.y,me.x,me.y,ai.x,ai.y)&&Jc(ai.prev,ai,ai.next)>=0)return!1;ai=ai.nextZ}return!0}function jx(y,g,z){var V=y;do{var $=V.prev,oe=V.next.next;!Xx($,oe)&&Fw($,V,V.next,oe)&&Yx($,oe)&&Yx(oe,$)&&(g.push($.i/z),g.push(V.i/z),g.push(oe.i/z),Kx(V),Kx(V.next),V=y=oe),V=V.next}while(V!==y);return ly(V)}function d0(y,g,z,V,$,oe){var me=y;do{for(var je=me.next.next;je!==me.prev;){if(me.i!==je.i&&M1(me,je)){var xt=cM(me,je);me=ly(me,me.next),xt=ly(xt,xt.next),Wx(me,g,z,V,$,oe),Wx(xt,g,z,V,$,oe);return}je=je.next}me=me.next}while(me!==y)}function uy(y,g,z,V){var $=[],oe,me,je,xt,Ft;for(oe=0,me=g.length;oe=z.next.y&&z.next.y!==z.y){var je=z.x+($-z.y)*(z.next.x-z.x)/(z.next.y-z.y);if(je<=V&&je>oe){if(oe=je,je===V){if($===z.y)return z;if($===z.next.y)return z.next}me=z.x=z.x&&z.x>=Ft&&V!==z.x&&fy($me.x||z.x===me.x&&o9(me,z)))&&(me=z,br=qr)),z=z.next;while(z!==xt);return me}function o9(y,g){return Jc(y.prev,y,g.prev)<0&&Jc(g.next,y,y.next)<0}function Dw(y,g,z,V){var $=y;do $.z===null&&($.z=uM($.x,$.y,g,z,V)),$.prevZ=$.prev,$.nextZ=$.next,$=$.next;while($!==y);$.prevZ.nextZ=null,$.prevZ=null,lM($)}function lM(y){var g,z,V,$,oe,me,je,xt,Ft=1;do{for(z=y,y=null,oe=null,me=0;z;){for(me++,V=z,je=0,g=0;g0||xt>0&&V;)je!==0&&(xt===0||!V||z.z<=V.z)?($=z,z=z.nextZ,je--):($=V,V=V.nextZ,xt--),oe?oe.nextZ=$:y=$,$.prevZ=oe,oe=$;z=V}oe.nextZ=null,Ft*=2}while(me>1);return y}function uM(y,g,z,V,$){return y=32767*(y-z)*$,g=32767*(g-V)*$,y=(y|y<<8)&16711935,y=(y|y<<4)&252645135,y=(y|y<<2)&858993459,y=(y|y<<1)&1431655765,g=(g|g<<8)&16711935,g=(g|g<<4)&252645135,g=(g|g<<2)&858993459,g=(g|g<<1)&1431655765,y|g<<1}function fM(y){var g=y,z=y;do(g.x=0&&(y-me)*(V-je)-(z-me)*(g-je)>=0&&(z-me)*(oe-je)-($-me)*(V-je)>=0}function M1(y,g){return y.next.i!==g.i&&y.prev.i!==g.i&&!MC(y,g)&&(Yx(y,g)&&Yx(g,y)&&s9(y,g)&&(Jc(y.prev,y,g.prev)||Jc(y,g.prev,g))||Xx(y,g)&&Jc(y.prev,y,y.next)>0&&Jc(g.prev,g,g.next)>0)}function Jc(y,g,z){return(g.y-y.y)*(z.x-g.x)-(g.x-y.x)*(z.y-g.y)}function Xx(y,g){return y.x===g.x&&y.y===g.y}function Fw(y,g,z,V){var $=fg(Jc(y,g,z)),oe=fg(Jc(y,g,V)),me=fg(Jc(z,V,y)),je=fg(Jc(z,V,g));return!!($!==oe&&me!==je||$===0&&Zx(y,z,g)||oe===0&&Zx(y,V,g)||me===0&&Zx(z,y,V)||je===0&&Zx(z,g,V))}function Zx(y,g,z){return g.x<=Math.max(y.x,z.x)&&g.x>=Math.min(y.x,z.x)&&g.y<=Math.max(y.y,z.y)&&g.y>=Math.min(y.y,z.y)}function fg(y){return y>0?1:y<0?-1:0}function MC(y,g){var z=y;do{if(z.i!==y.i&&z.next.i!==y.i&&z.i!==g.i&&z.next.i!==g.i&&Fw(z,z.next,y,g))return!0;z=z.next}while(z!==y);return!1}function Yx(y,g){return Jc(y.prev,y,y.next)<0?Jc(y,g,y.next)>=0&&Jc(y,y.prev,g)>=0:Jc(y,g,y.prev)<0||Jc(y,y.next,g)<0}function s9(y,g){var z=y,V=!1,$=(y.x+g.x)/2,oe=(y.y+g.y)/2;do z.y>oe!=z.next.y>oe&&z.next.y!==z.y&&$<(z.next.x-z.x)*(oe-z.y)/(z.next.y-z.y)+z.x&&(V=!V),z=z.next;while(z!==y);return V}function cM(y,g){var z=new hM(y.i,y.x,y.y),V=new hM(g.i,g.x,g.y),$=y.next,oe=g.prev;return y.next=g,g.prev=y,z.next=$,$.prev=z,V.next=z,z.prev=V,oe.next=V,V.prev=oe,V}function EC(y,g,z,V){var $=new hM(y,g,z);return V?($.next=V.next,$.prev=V,V.next.prev=$,V.next=$):($.prev=$,$.next=$),$}function Kx(y){y.next.prev=y.prev,y.prev.next=y.next,y.prevZ&&(y.prevZ.nextZ=y.nextZ),y.nextZ&&(y.nextZ.prevZ=y.prevZ)}function hM(y,g,z){this.i=y,this.x=g,this.y=z,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}S1.deviation=function(y,g,z,V){var $=g&&g.length,oe=$?g[0]*z:y.length,me=Math.abs(dM(y,0,oe,z));if($)for(var je=0,xt=g.length;je0&&(V+=y[$-1].length,z.holes.push(V))}return z},Iw.default=wC;function pM(y,g,z,V,$){dm(y,g,z||0,V||y.length-1,$||kC)}function dm(y,g,z,V,$){for(;V>z;){if(V-z>600){var oe=V-z+1,me=g-z+1,je=Math.log(oe),xt=.5*Math.exp(2*je/3),Ft=.5*Math.sqrt(je*xt*(oe-xt)/oe)*(me-oe/2<0?-1:1),Xt=Math.max(z,Math.floor(g-me*xt/oe+Ft)),br=Math.min(V,Math.floor(g+(oe-me)*xt/oe+Ft));dm(y,g,Xt,br,$)}var qr=y[g],Pr=z,ai=V;for(E1(y,z,g),$(y[V],qr)>0&&E1(y,z,V);Pr0;)ai--}$(y[z],qr)===0?E1(y,z,ai):(ai++,E1(y,ai,V)),ai<=g&&(z=ai+1),g<=ai&&(V=ai-1)}}function E1(y,g,z){var V=y[g];y[g]=y[z],y[z]=V}function kC(y,g){return yg?1:0}function Bw(y,g){var z=y.length;if(z<=1)return[y];for(var V=[],$,oe,me=0;me1)for(var xt=0;xt>3}if(V--,z===1||z===2)$+=y.readSVarint(),oe+=y.readSVarint(),z===1&&(je&&me.push(je),je=[]),je.push(new l($,oe));else if(z===7)je&&je.push(je[0].clone());else throw new Error("unknown command "+z)}return je&&me.push(je),me},cg.prototype.bbox=function(){var y=this._pbf;y.pos=this._geometry;for(var g=y.readVarint()+y.pos,z=1,V=0,$=0,oe=0,me=1/0,je=-1/0,xt=1/0,Ft=-1/0;y.pos>3}if(V--,z===1||z===2)$+=y.readSVarint(),oe+=y.readSVarint(),$je&&(je=$),oeFt&&(Ft=oe);else if(z!==7)throw new Error("unknown command "+z)}return[me,xt,je,Ft]},cg.prototype.toGeoJSON=function(y,g,z){var V=this.extent*Math.pow(2,z),$=this.extent*y,oe=this.extent*g,me=this.loadGeometry(),je=cg.types[this.type],xt,Ft;function Xt(Pr){for(var ai=0;ai>3;g=V===1?y.readString():V===2?y.readFloat():V===3?y.readDouble():V===4?y.readVarint64():V===5?y.readVarint():V===6?y.readSVarint():V===7?y.readBoolean():null}return g}yM.prototype.feature=function(y){if(y<0||y>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[y];var g=this._pbf.readVarint()+this._pbf.pos;return new mM(this._pbf,g,this.extent,this._keys,this._values)};var OC=u9;function u9(y,g){this.layers=y.readFields(f9,{},g)}function f9(y,g,z){if(y===3){var V=new pm(z,z.readVarint()+z.pos);V.length&&(g[V.name]=V)}}var qC=OC,k1=mM,NC=pm,vm={VectorTile:qC,VectorTileFeature:k1,VectorTileLayer:NC},UC=vm.VectorTileFeature.types,qw=500,C1=Math.pow(2,13);function cy(y,g,z,V,$,oe,me,je){y.emplaceBack(g,z,Math.floor(V*C1)*2+me,$*C1*2,oe*C1*2,Math.round(je))}var Vv=function(g){this.zoom=g.zoom,this.overscaling=g.overscaling,this.layers=g.layers,this.layerIds=this.layers.map(function(z){return z.id}),this.index=g.index,this.hasPattern=!1,this.layoutVertexArray=new En,this.indexArray=new Va,this.programConfigurations=new Yi(g.layers,g.zoom),this.segments=new cu,this.stateDependentLayerIds=this.layers.filter(function(z){return z.isStateDependent()}).map(function(z){return z.id})};Vv.prototype.populate=function(g,z,V){this.features=[],this.hasPattern=Ow("fill-extrusion",this.layers,z);for(var $=0,oe=g;$=1){var _o=Wn[bo-1];if(!c9(ba,_o)){Pr.vertexLength+4>cu.MAX_VERTEX_ARRAY_LENGTH&&(Pr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var Uo=ba.sub(_o)._perp()._unit(),Zs=_o.dist(ba);bn+Zs>32768&&(bn=0),cy(this.layoutVertexArray,ba.x,ba.y,Uo.x,Uo.y,0,0,bn),cy(this.layoutVertexArray,ba.x,ba.y,Uo.x,Uo.y,0,1,bn),bn+=Zs,cy(this.layoutVertexArray,_o.x,_o.y,Uo.x,Uo.y,0,0,bn),cy(this.layoutVertexArray,_o.x,_o.y,Uo.x,Uo.y,0,1,bn);var Cl=Pr.vertexLength;this.indexArray.emplaceBack(Cl,Cl+2,Cl+1),this.indexArray.emplaceBack(Cl+1,Cl+2,Cl+3),Pr.vertexLength+=4,Pr.primitiveLength+=2}}}}if(Pr.vertexLength+Ft>cu.MAX_VERTEX_ARRAY_LENGTH&&(Pr=this.segments.prepareSegment(Ft,this.layoutVertexArray,this.indexArray)),UC[g.type]==="Polygon"){for(var Al=[],hu=[],Kl=Pr.vertexLength,lu=0,Bu=xt;luAn)||y.y===g.y&&(y.y<0||y.y>An)}function h9(y){return y.every(function(g){return g.x<0})||y.every(function(g){return g.x>An})||y.every(function(g){return g.y<0})||y.every(function(g){return g.y>An})}var L1=new ci({"fill-extrusion-opacity":new Be(Wi["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new qt(Wi["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Be(Wi["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Be(Wi["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new ar(Wi["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new qt(Wi["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new qt(Wi["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Be(Wi["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])}),ld={paint:L1},hy=function(y){function g(z){y.call(this,z,ld)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.createBucket=function(V){return new Vv(V)},g.prototype.queryRadius=function(){return Pp(this.paint.get("fill-extrusion-translate"))},g.prototype.is3D=function(){return!0},g.prototype.queryIntersectsFeature=function(V,$,oe,me,je,xt,Ft,Xt){var br=Jp(V,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),xt.angle,Ft),qr=this.paint.get("fill-extrusion-height").evaluate($,oe),Pr=this.paint.get("fill-extrusion-base").evaluate($,oe),ai=d9(br,Xt,xt,0),Oi=_M(me,Pr,qr,Xt),Wn=Oi[0],bn=Oi[1];return VC(Wn,bn,ai)},g}(on);function hg(y,g){return y.x*g.x+y.y*g.y}function gM(y,g){if(y.length===1){for(var z=0,V=g[z++],$;!$||V.equals($);)if($=g[z++],!$)return 1/0;for(;z=2&&g[Ft-1].equals(g[Ft-2]);)Ft--;for(var Xt=0;Xt0;if(Al&&bo>Xt){var Kl=Pr.dist(ai);if(Kl>2*br){var lu=Pr.sub(Pr.sub(ai)._mult(br/Kl)._round());this.updateDistance(ai,lu),this.addCurrentVertex(lu,Wn,0,0,qr),ai=lu}}var Bu=ai&&Oi,du=Bu?V:xt?"butt":$;if(Bu&&du==="round"&&(Zsoe&&(du="bevel"),du==="bevel"&&(Zs>2&&(du="flipbevel"),Zs100)ba=bn.mult(-1);else{var gu=Zs*Wn.add(bn).mag()/Wn.sub(bn).mag();ba._perp()._mult(gu*(hu?-1:1))}this.addCurrentVertex(Pr,ba,0,0,qr),this.addCurrentVertex(Pr,ba.mult(-1),0,0,qr)}else if(du==="bevel"||du==="fakeround"){var uf=-Math.sqrt(Zs*Zs-1),Ru=hu?uf:0,If=hu?0:uf;if(ai&&this.addCurrentVertex(Pr,Wn,Ru,If,qr),du==="fakeround")for(var sc=Math.round(Cl*180/Math.PI/bM),Rf=1;Rf2*br){var _h=Pr.add(Oi.sub(Pr)._mult(br/$h)._round());this.updateDistance(Pr,_h),this.addCurrentVertex(_h,bn,0,0,qr),Pr=_h}}}}},mh.prototype.addCurrentVertex=function(g,z,V,$,oe,me){me===void 0&&(me=!1);var je=z.x+z.y*V,xt=z.y-z.x*V,Ft=-z.x+z.y*$,Xt=-z.y-z.x*$;this.addHalfVertex(g,je,xt,me,!1,V,oe),this.addHalfVertex(g,Ft,Xt,me,!0,-$,oe),this.distance>tb/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(g,z,V,$,oe,me))},mh.prototype.addHalfVertex=function(g,z,V,$,oe,me,je){var xt=g.x,Ft=g.y,Xt=this.lineClips?this.scaledDistance*(tb-1):this.scaledDistance,br=Xt*Uw;if(this.layoutVertexArray.emplaceBack((xt<<1)+($?1:0),(Ft<<1)+(oe?1:0),Math.round(Nw*z)+128,Math.round(Nw*V)+128,(me===0?0:me<0?-1:1)+1|(br&63)<<2,br>>6),this.lineClips){var qr=this.scaledDistance-this.lineClips.start,Pr=this.lineClips.end-this.lineClips.start,ai=qr/Pr;this.layoutVertexArray2.emplaceBack(ai,this.lineClipsArray.length)}var Oi=je.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Oi),je.primitiveLength++),oe?this.e2=Oi:this.e1=Oi},mh.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},mh.prototype.updateDistance=function(g,z){this.distance+=g.dist(z),this.updateScaledDistance()},Z("LineBucket",mh,{omit:["layers","patternFeatures"]});var wM=new ci({"line-cap":new Be(Wi.layout_line["line-cap"]),"line-join":new qt(Wi.layout_line["line-join"]),"line-miter-limit":new Be(Wi.layout_line["line-miter-limit"]),"line-round-limit":new Be(Wi.layout_line["line-round-limit"]),"line-sort-key":new qt(Wi.layout_line["line-sort-key"])}),TM=new ci({"line-opacity":new qt(Wi.paint_line["line-opacity"]),"line-color":new qt(Wi.paint_line["line-color"]),"line-translate":new Be(Wi.paint_line["line-translate"]),"line-translate-anchor":new Be(Wi.paint_line["line-translate-anchor"]),"line-width":new qt(Wi.paint_line["line-width"]),"line-gap-width":new qt(Wi.paint_line["line-gap-width"]),"line-offset":new qt(Wi.paint_line["line-offset"]),"line-blur":new qt(Wi.paint_line["line-blur"]),"line-dasharray":new Qr(Wi.paint_line["line-dasharray"]),"line-pattern":new ar(Wi.paint_line["line-pattern"]),"line-gradient":new yi(Wi.paint_line["line-gradient"])}),Vw={paint:TM,layout:wM},v9=function(y){function g(){y.apply(this,arguments)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.possiblyEvaluate=function(V,$){return $=new ds(Math.floor($.zoom),{now:$.now,fadeDuration:$.fadeDuration,zoomHistory:$.zoomHistory,transition:$.transition}),y.prototype.possiblyEvaluate.call(this,V,$)},g.prototype.evaluate=function(V,$,oe,me){return $=x({},$,{zoom:Math.floor($.zoom)}),y.prototype.evaluate.call(this,V,$,oe,me)},g}(qt),I=new v9(Vw.paint.properties["line-width"].specification);I.useIntegerZoom=!0;var S=function(y){function g(z){y.call(this,z,Vw),this.gradientVersion=0}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype._handleSpecialPaintPropertyUpdate=function(V){if(V==="line-gradient"){var $=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=$._styleExpression.expression instanceof Do,this.gradientVersion=(this.gradientVersion+1)%d}},g.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},g.prototype.recalculate=function(V,$){y.prototype.recalculate.call(this,V,$),this.paint._values["line-floorwidth"]=I.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,V)},g.prototype.createBucket=function(V){return new mh(V)},g.prototype.queryRadius=function(V){var $=V,oe=D(Md("line-width",this,$),Md("line-gap-width",this,$)),me=Md("line-offset",this,$);return oe/2+Math.abs(me)+Pp(this.paint.get("line-translate"))},g.prototype.queryIntersectsFeature=function(V,$,oe,me,je,xt,Ft){var Xt=Jp(V,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),xt.angle,Ft),br=Ft/2*D(this.paint.get("line-width").evaluate($,oe),this.paint.get("line-gap-width").evaluate($,oe)),qr=this.paint.get("line-offset").evaluate($,oe);return qr&&(me=X(me,qr*Ft)),Vf(Xt,me,br)},g.prototype.isTileClipped=function(){return!0},g}(on);function D(y,g){return g>0?g+2*y:y}function X(y,g){for(var z=[],V=new l(0,0),$=0;$":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};function La(y){for(var g="",z=0;z>1,Xt=-7,br=z?$-1:0,qr=z?-1:1,Pr=y[g+br];for(br+=qr,oe=Pr&(1<<-Xt)-1,Pr>>=-Xt,Xt+=je;Xt>0;oe=oe*256+y[g+br],br+=qr,Xt-=8);for(me=oe&(1<<-Xt)-1,oe>>=-Xt,Xt+=V;Xt>0;me=me*256+y[g+br],br+=qr,Xt-=8);if(oe===0)oe=1-Ft;else{if(oe===xt)return me?NaN:(Pr?-1:1)*(1/0);me=me+Math.pow(2,V),oe=oe-Ft}return(Pr?-1:1)*me*Math.pow(2,oe-V)},mu=function(y,g,z,V,$,oe){var me,je,xt,Ft=oe*8-$-1,Xt=(1<>1,qr=$===23?Math.pow(2,-24)-Math.pow(2,-77):0,Pr=V?0:oe-1,ai=V?1:-1,Oi=g<0||g===0&&1/g<0?1:0;for(g=Math.abs(g),isNaN(g)||g===1/0?(je=isNaN(g)?1:0,me=Xt):(me=Math.floor(Math.log(g)/Math.LN2),g*(xt=Math.pow(2,-me))<1&&(me--,xt*=2),me+br>=1?g+=qr/xt:g+=qr*Math.pow(2,1-br),g*xt>=2&&(me++,xt/=2),me+br>=Xt?(je=0,me=Xt):me+br>=1?(je=(g*xt-1)*Math.pow(2,$),me=me+br):(je=g*Math.pow(2,br-1)*Math.pow(2,$),me=0));$>=8;y[z+Pr]=je&255,Pr+=ai,je/=256,$-=8);for(me=me<<$|je,Ft+=$;Ft>0;y[z+Pr]=me&255,Pr+=ai,me/=256,Ft-=8);y[z+Pr-ai]|=Oi*128},Iu={read:kl,write:mu},su=yl;function yl(y){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(y)?y:new Uint8Array(y||0),this.pos=0,this.type=0,this.length=this.buf.length}yl.Varint=0,yl.Fixed64=1,yl.Bytes=2,yl.Fixed32=5;var Eu=65536*65536,bu=1/Eu,_u=12,Xs=typeof TextDecoder=="undefined"?null:new TextDecoder("utf8");yl.prototype={destroy:function(){this.buf=null},readFields:function(y,g,z){for(z=z||this.length;this.pos>3,oe=this.pos;this.type=V&7,y($,g,this),this.pos===oe&&this.skip(V)}return g},readMessage:function(y,g){return this.readFields(y,g,this.readVarint()+this.pos)},readFixed32:function(){var y=Yh(this.buf,this.pos);return this.pos+=4,y},readSFixed32:function(){var y=Dp(this.buf,this.pos);return this.pos+=4,y},readFixed64:function(){var y=Yh(this.buf,this.pos)+Yh(this.buf,this.pos+4)*Eu;return this.pos+=8,y},readSFixed64:function(){var y=Yh(this.buf,this.pos)+Dp(this.buf,this.pos+4)*Eu;return this.pos+=8,y},readFloat:function(){var y=Iu.read(this.buf,this.pos,!0,23,4);return this.pos+=4,y},readDouble:function(){var y=Iu.read(this.buf,this.pos,!0,52,8);return this.pos+=8,y},readVarint:function(y){var g=this.buf,z,V;return V=g[this.pos++],z=V&127,V<128||(V=g[this.pos++],z|=(V&127)<<7,V<128)||(V=g[this.pos++],z|=(V&127)<<14,V<128)||(V=g[this.pos++],z|=(V&127)<<21,V<128)?z:(V=g[this.pos],z|=(V&15)<<28,Lu(z,y,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var y=this.readVarint();return y%2===1?(y+1)/-2:y/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var y=this.readVarint()+this.pos,g=this.pos;return this.pos=y,y-g>=_u&&Xs?jf(this.buf,g,y):fp(this.buf,g,y)},readBytes:function(){var y=this.readVarint()+this.pos,g=this.buf.subarray(this.pos,y);return this.pos=y,g},readPackedVarint:function(y,g){if(this.type!==yl.Bytes)return y.push(this.readVarint(g));var z=xu(this);for(y=y||[];this.pos127;);else if(g===yl.Bytes)this.pos=this.readVarint()+this.pos;else if(g===yl.Fixed32)this.pos+=4;else if(g===yl.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+g)},writeTag:function(y,g){this.writeVarint(y<<3|g)},realloc:function(y){for(var g=this.length||16;g268435455||y<0){vc(y,this);return}this.realloc(4),this.buf[this.pos++]=y&127|(y>127?128:0),!(y<=127)&&(this.buf[this.pos++]=(y>>>=7)&127|(y>127?128:0),!(y<=127)&&(this.buf[this.pos++]=(y>>>=7)&127|(y>127?128:0),!(y<=127)&&(this.buf[this.pos++]=y>>>7&127)))},writeSVarint:function(y){this.writeVarint(y<0?-y*2-1:y*2)},writeBoolean:function(y){this.writeVarint(!!y)},writeString:function(y){y=String(y),this.realloc(y.length*4),this.pos++;var g=this.pos;this.pos=Tc(this.buf,y,this.pos);var z=this.pos-g;z>=128&&Qp(g,z,this),this.pos=g-1,this.writeVarint(z),this.pos+=z},writeFloat:function(y){this.realloc(4),Iu.write(this.buf,y,this.pos,!0,23,4),this.pos+=4},writeDouble:function(y){this.realloc(8),Iu.write(this.buf,y,this.pos,!0,52,8),this.pos+=8},writeBytes:function(y){var g=y.length;this.writeVarint(g),this.realloc(g);for(var z=0;z=128&&Qp(z,V,this),this.pos=z-1,this.writeVarint(V),this.pos+=V},writeMessage:function(y,g,z){this.writeTag(y,yl.Bytes),this.writeRawMessage(g,z)},writePackedVarint:function(y,g){g.length&&this.writeMessage(y,ud,g)},writePackedSVarint:function(y,g){g.length&&this.writeMessage(y,Ih,g)},writePackedBoolean:function(y,g){g.length&&this.writeMessage(y,Xd,g)},writePackedFloat:function(y,g){g.length&&this.writeMessage(y,Wd,g)},writePackedDouble:function(y,g){g.length&&this.writeMessage(y,jd,g)},writePackedFixed32:function(y,g){g.length&&this.writeMessage(y,$c,g)},writePackedSFixed32:function(y,g){g.length&&this.writeMessage(y,Rh,g)},writePackedFixed64:function(y,g){g.length&&this.writeMessage(y,Cd,g)},writePackedSFixed64:function(y,g){g.length&&this.writeMessage(y,fd,g)},writeBytesField:function(y,g){this.writeTag(y,yl.Bytes),this.writeBytes(g)},writeFixed32Field:function(y,g){this.writeTag(y,yl.Fixed32),this.writeFixed32(g)},writeSFixed32Field:function(y,g){this.writeTag(y,yl.Fixed32),this.writeSFixed32(g)},writeFixed64Field:function(y,g){this.writeTag(y,yl.Fixed64),this.writeFixed64(g)},writeSFixed64Field:function(y,g){this.writeTag(y,yl.Fixed64),this.writeSFixed64(g)},writeVarintField:function(y,g){this.writeTag(y,yl.Varint),this.writeVarint(g)},writeSVarintField:function(y,g){this.writeTag(y,yl.Varint),this.writeSVarint(g)},writeStringField:function(y,g){this.writeTag(y,yl.Bytes),this.writeString(g)},writeFloatField:function(y,g){this.writeTag(y,yl.Fixed32),this.writeFloat(g)},writeDoubleField:function(y,g){this.writeTag(y,yl.Fixed64),this.writeDouble(g)},writeBooleanField:function(y,g){this.writeVarintField(y,!!g)}};function Lu(y,g,z){var V=z.buf,$,oe;if(oe=V[z.pos++],$=(oe&112)>>4,oe<128||(oe=V[z.pos++],$|=(oe&127)<<3,oe<128)||(oe=V[z.pos++],$|=(oe&127)<<10,oe<128)||(oe=V[z.pos++],$|=(oe&127)<<17,oe<128)||(oe=V[z.pos++],$|=(oe&127)<<24,oe<128)||(oe=V[z.pos++],$|=(oe&1)<<31,oe<128))return qu(y,$,g);throw new Error("Expected varint not more than 10 bytes")}function xu(y){return y.type===yl.Bytes?y.readVarint()+y.pos:y.pos+1}function qu(y,g,z){return z?g*4294967296+(y>>>0):(g>>>0)*4294967296+(y>>>0)}function vc(y,g){var z,V;if(y>=0?(z=y%4294967296|0,V=y/4294967296|0):(z=~(-y%4294967296),V=~(-y/4294967296),z^4294967295?z=z+1|0:(z=0,V=V+1|0)),y>=18446744073709552e3||y<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");g.realloc(10),cc(z,V,g),zh(V,g)}function cc(y,g,z){z.buf[z.pos++]=y&127|128,y>>>=7,z.buf[z.pos++]=y&127|128,y>>>=7,z.buf[z.pos++]=y&127|128,y>>>=7,z.buf[z.pos++]=y&127|128,y>>>=7,z.buf[z.pos]=y&127}function zh(y,g){var z=(y&7)<<4;g.buf[g.pos++]|=z|((y>>>=3)?128:0),y&&(g.buf[g.pos++]=y&127|((y>>>=7)?128:0),y&&(g.buf[g.pos++]=y&127|((y>>>=7)?128:0),y&&(g.buf[g.pos++]=y&127|((y>>>=7)?128:0),y&&(g.buf[g.pos++]=y&127|((y>>>=7)?128:0),y&&(g.buf[g.pos++]=y&127)))))}function Qp(y,g,z){var V=g<=16383?1:g<=2097151?2:g<=268435455?3:Math.floor(Math.log(g)/(Math.LN2*7));z.realloc(V);for(var $=z.pos-1;$>=y;$--)z.buf[$+V]=z.buf[$]}function ud(y,g){for(var z=0;z>>8,y[z+2]=g>>>16,y[z+3]=g>>>24}function Dp(y,g){return(y[g]|y[g+1]<<8|y[g+2]<<16)+(y[g+3]<<24)}function fp(y,g,z){for(var V="",$=g;$239?4:oe>223?3:oe>191?2:1;if($+je>z)break;var xt,Ft,Xt;je===1?oe<128&&(me=oe):je===2?(xt=y[$+1],(xt&192)===128&&(me=(oe&31)<<6|xt&63,me<=127&&(me=null))):je===3?(xt=y[$+1],Ft=y[$+2],(xt&192)===128&&(Ft&192)===128&&(me=(oe&15)<<12|(xt&63)<<6|Ft&63,(me<=2047||me>=55296&&me<=57343)&&(me=null))):je===4&&(xt=y[$+1],Ft=y[$+2],Xt=y[$+3],(xt&192)===128&&(Ft&192)===128&&(Xt&192)===128&&(me=(oe&15)<<18|(xt&63)<<12|(Ft&63)<<6|Xt&63,(me<=65535||me>=1114112)&&(me=null))),me===null?(me=65533,je=1):me>65535&&(me-=65536,V+=String.fromCharCode(me>>>10&1023|55296),me=56320|me&1023),V+=String.fromCharCode(me),$+=je}return V}function jf(y,g,z){return Xs.decode(y.subarray(g,z))}function Tc(y,g,z){for(var V=0,$,oe;V55295&&$<57344)if(oe)if($<56320){y[z++]=239,y[z++]=191,y[z++]=189,oe=$;continue}else $=oe-55296<<10|$-56320|65536,oe=null;else{$>56319||V+1===g.length?(y[z++]=239,y[z++]=191,y[z++]=189):oe=$;continue}else oe&&(y[z++]=239,y[z++]=191,y[z++]=189,oe=null);$<128?y[z++]=$:($<2048?y[z++]=$>>6|192:($<65536?y[z++]=$>>12|224:(y[z++]=$>>18|240,y[z++]=$>>12&63|128),y[z++]=$>>6&63|128),y[z++]=$&63|128)}return z}var mc=3;function Fp(y,g,z){y===1&&z.readMessage(Hc,g)}function Hc(y,g,z){if(y===3){var V=z.readMessage(P1,{}),$=V.id,oe=V.bitmap,me=V.width,je=V.height,xt=V.left,Ft=V.top,Xt=V.advance;g.push({id:$,bitmap:new Rp({width:me+2*mc,height:je+2*mc},oe),metrics:{width:me,height:je,left:xt,top:Ft,advance:Xt}})}}function P1(y,g,z){y===1?g.id=z.readVarint():y===2?g.bitmap=z.readBytes():y===3?g.width=z.readVarint():y===4?g.height=z.readVarint():y===5?g.left=z.readSVarint():y===6?g.top=z.readSVarint():y===7&&(g.advance=z.readVarint())}function p0(y){return new su(y).readFields(Fp,[])}var Gv=mc;function ev(y){for(var g=0,z=0,V=0,$=y;V<$.length;V+=1){var oe=$[V];g+=oe.w*oe.h,z=Math.max(z,oe.w)}y.sort(function(Wn,bn){return bn.h-Wn.h});for(var me=Math.max(Math.ceil(Math.sqrt(g/.95)),z),je=[{x:0,y:0,w:me,h:1/0}],xt=0,Ft=0,Xt=0,br=y;Xt=0;Pr--){var ai=je[Pr];if(!(qr.w>ai.w||qr.h>ai.h)){if(qr.x=ai.x,qr.y=ai.y,Ft=Math.max(Ft,qr.y+qr.h),xt=Math.max(xt,qr.x+qr.w),qr.w===ai.w&&qr.h===ai.h){var Oi=je.pop();Pr=0&&$>=g&&m0[this.text.charCodeAt($)];$--)V--;this.text=this.text.substring(g,V),this.sectionIndex=this.sectionIndex.slice(g,V)},Kh.prototype.substring=function(g,z){var V=new Kh;return V.text=this.text.substring(g,z),V.sectionIndex=this.sectionIndex.slice(g,z),V.sections=this.sections,V},Kh.prototype.toString=function(){return this.text},Kh.prototype.getMaxScale=function(){var g=this;return this.sectionIndex.reduce(function(z,V){return Math.max(z,g.sections[V].scale)},0)},Kh.prototype.addTextSection=function(g,z){this.text+=g.text,this.sections.push(dg.forText(g.scale,g.fontStack||z));for(var V=this.sections.length-1,$=0;$=v0?null:++this.imageSectionID:(this.imageSectionID=Gw,this.imageSectionID)};function m9(y,g){for(var z=[],V=y.text,$=0,oe=0,me=g;oe=0,Xt=0,br=0;br0&&_h>hu&&(hu=_h)}else{var Df=z[lu.fontStack],Pf=Df&&Df[du];if(Pf&&Pf.rect)Ru=Pf.rect,uf=Pf.metrics;else{var yc=g[lu.fontStack],Ac=yc&&yc[du];if(!Ac)continue;uf=Ac.metrics}gu=(Uo-lu.scale)*So}Rf?(y.verticalizable=!0,Al.push({glyph:du,imageName:If,x:qr,y:Pr+gu,vertical:Rf,scale:lu.scale,fontStack:lu.fontStack,sectionIndex:Bu,metrics:uf,rect:Ru}),qr+=sc*lu.scale+Ft):(Al.push({glyph:du,imageName:If,x:qr,y:Pr+gu,vertical:Rf,scale:lu.scale,fontStack:lu.fontStack,sectionIndex:Bu,metrics:uf,rect:Ru}),qr+=uf.advance*lu.scale+Ft)}if(Al.length!==0){var Yd=qr-Ft;ai=Math.max(Yd,ai),x9(Al,0,Al.length-1,Wn,hu)}qr=0;var Kd=oe*Uo+hu;Cl.lineOffset=Math.max(hu,Zs),Pr+=Kd,Oi=Math.max(Kd,Oi),++bn}var Qh=Pr-z1,dp=SM(me),pp=dp.horizontalAlign,Dh=dp.verticalAlign;Ld(y.positionedLines,Wn,pp,Dh,ai,Oi,oe,Qh,$.length),y.top+=-Dh*Qh,y.bottom=y.top+Qh,y.left+=-pp*ai,y.right=y.left+ai}function x9(y,g,z,V,$){if(!(!V&&!$))for(var oe=y[z],me=oe.metrics.advance*oe.scale,je=(y[z].x+me)*V,xt=g;xt<=z;xt++)y[xt].x-=je,y[xt].y+=$}function Ld(y,g,z,V,$,oe,me,je,xt){var Ft=(g-z)*$,Xt=0;oe!==me?Xt=-je*V-z1:Xt=(-V*xt+.5)*me;for(var br=0,qr=y;br-z/2;){if(me--,me<0)return!1;je-=y[me].dist(oe),oe=y[me]}je+=y[me].dist(y[me+1]),me++;for(var xt=[],Ft=0;jeV;)Ft-=xt.shift().angleDelta;if(Ft>$)return!1;me++,je+=br.dist(qr)}return!0}function XQ(y){for(var g=0,z=0;zFt){var ai=(Ft-xt)/Pr,Oi=Lo(br.x,qr.x,ai),Wn=Lo(br.y,qr.y,ai),bn=new Zd(Oi,Wn,qr.angleTo(br),Xt);return bn._round(),!me||jQ(y,bn,je,me,g)?bn:void 0}xt+=Pr}}function dtt(y,g,z,V,$,oe,me,je,xt){var Ft=ZQ(V,oe,me),Xt=YQ(V,$),br=Xt*me,qr=y[0].x===0||y[0].x===xt||y[0].y===0||y[0].y===xt;g-br=0&&_o=0&&Uo=0&&qr+Ft<=Xt){var Zs=new Zd(_o,Uo,bo,ai);Zs._round(),(!V||jQ(y,Zs,oe,V,$))&&Pr.push(Zs)}}br+=bn}return!je&&!Pr.length&&!me&&(Pr=KQ(y,br/2,z,V,$,oe,me,!0,xt)),Pr}function JQ(y,g,z,V,$){for(var oe=[],me=0;me=V&&br.x>=V)&&(Xt.x>=V?Xt=new l(V,Xt.y+(br.y-Xt.y)*((V-Xt.x)/(br.x-Xt.x)))._round():br.x>=V&&(br=new l(V,Xt.y+(br.y-Xt.y)*((V-Xt.x)/(br.x-Xt.x)))._round()),!(Xt.y>=$&&br.y>=$)&&(Xt.y>=$?Xt=new l(Xt.x+(br.x-Xt.x)*(($-Xt.y)/(br.y-Xt.y)),$)._round():br.y>=$&&(br=new l(Xt.x+(br.x-Xt.x)*(($-Xt.y)/(br.y-Xt.y)),$)._round()),(!xt||!Xt.equals(xt[xt.length-1]))&&(xt=[Xt],oe.push(xt)),xt.push(br)))))}return oe}var jw=Rc;function $Q(y,g,z,V){var $=[],oe=y.image,me=oe.pixelRatio,je=oe.paddedRect.w-2*jw,xt=oe.paddedRect.h-2*jw,Ft=y.right-y.left,Xt=y.bottom-y.top,br=oe.stretchX||[[0,je]],qr=oe.stretchY||[[0,xt]],Pr=function(Df,Pf){return Df+Pf[1]-Pf[0]},ai=br.reduce(Pr,0),Oi=qr.reduce(Pr,0),Wn=je-ai,bn=xt-Oi,bo=0,ba=ai,_o=0,Uo=Oi,Zs=0,Cl=Wn,Al=0,hu=bn;if(oe.content&&V){var Kl=oe.content;bo=KC(br,0,Kl[0]),_o=KC(qr,0,Kl[1]),ba=KC(br,Kl[0],Kl[2]),Uo=KC(qr,Kl[1],Kl[3]),Zs=Kl[0]-bo,Al=Kl[1]-_o,Cl=Kl[2]-Kl[0]-ba,hu=Kl[3]-Kl[1]-Uo}var lu=function(Df,Pf,yc,Ac){var Qc=JC(Df.stretch-bo,ba,Ft,y.left),nh=$C(Df.fixed-Zs,Cl,Df.stretch,ai),$h=JC(Pf.stretch-_o,Uo,Xt,y.top),_h=$C(Pf.fixed-Al,hu,Pf.stretch,Oi),Yd=JC(yc.stretch-bo,ba,Ft,y.left),Kd=$C(yc.fixed-Zs,Cl,yc.stretch,ai),Qh=JC(Ac.stretch-_o,Uo,Xt,y.top),dp=$C(Ac.fixed-Al,hu,Ac.stretch,Oi),pp=new l(Qc,$h),Dh=new l(Yd,$h),vp=new l(Yd,Qh),xv=new l(Qc,Qh),mg=new l(nh/me,_h/me),D1=new l(Kd/me,dp/me),F1=g*Math.PI/180;if(F1){var B1=Math.sin(F1),e3=Math.cos(F1),y0=[e3,-B1,B1,e3];pp._matMult(y0),Dh._matMult(y0),xv._matMult(y0),vp._matMult(y0)}var nL=Df.stretch+Df.fixed,k9=yc.stretch+yc.fixed,aL=Pf.stretch+Pf.fixed,C9=Ac.stretch+Ac.fixed,Hv={x:oe.paddedRect.x+jw+nL,y:oe.paddedRect.y+jw+aL,w:k9-nL,h:C9-aL},t3=Cl/me/Ft,oL=hu/me/Xt;return{tl:pp,tr:Dh,bl:xv,br:vp,tex:Hv,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:mg,pixelOffsetBR:D1,minFontScaleX:t3,minFontScaleY:oL,isSDF:z}};if(!V||!oe.stretchX&&!oe.stretchY)$.push(lu({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:je+1},{fixed:0,stretch:xt+1}));else for(var Bu=QQ(br,Wn,ai),du=QQ(qr,bn,Oi),gu=0;gu0&&(ai=Math.max(10,ai),this.circleDiameter=ai)}else{var Oi=me.top*je-xt,Wn=me.bottom*je+xt,bn=me.left*je-xt,bo=me.right*je+xt,ba=me.collisionPadding;if(ba&&(bn-=ba[0]*je,Oi-=ba[1]*je,bo+=ba[2]*je,Wn+=ba[3]*je),Xt){var _o=new l(bn,Oi),Uo=new l(bo,Oi),Zs=new l(bn,Wn),Cl=new l(bo,Wn),Al=Xt*Math.PI/180;_o._rotate(Al),Uo._rotate(Al),Zs._rotate(Al),Cl._rotate(Al),bn=Math.min(_o.x,Uo.x,Zs.x,Cl.x),bo=Math.max(_o.x,Uo.x,Zs.x,Cl.x),Oi=Math.min(_o.y,Uo.y,Zs.y,Cl.y),Wn=Math.max(_o.y,Uo.y,Zs.y,Cl.y)}g.emplaceBack(z.x,z.y,bn,Oi,bo,Wn,V,$,oe)}this.boxEndIndex=g.length},Xw=function(g,z){if(g===void 0&&(g=[]),z===void 0&&(z=vtt),this.data=g,this.length=this.data.length,this.compare=z,this.length>0)for(var V=(this.length>>1)-1;V>=0;V--)this._down(V)};Xw.prototype.push=function(g){this.data.push(g),this.length++,this._up(this.length-1)},Xw.prototype.pop=function(){if(this.length!==0){var g=this.data[0],z=this.data.pop();return this.length--,this.length>0&&(this.data[0]=z,this._down(0)),g}},Xw.prototype.peek=function(){return this.data[0]},Xw.prototype._up=function(g){for(var z=this,V=z.data,$=z.compare,oe=V[g];g>0;){var me=g-1>>1,je=V[me];if($(oe,je)>=0)break;V[g]=je,g=me}V[g]=oe},Xw.prototype._down=function(g){for(var z=this,V=z.data,$=z.compare,oe=this.length>>1,me=V[g];g=0)break;V[g]=xt,g=je}V[g]=me};function vtt(y,g){return yg?1:0}function mtt(y,g,z){g===void 0&&(g=1),z===void 0&&(z=!1);for(var V=1/0,$=1/0,oe=-1/0,me=-1/0,je=y[0],xt=0;xtoe)&&(oe=Ft.x),(!xt||Ft.y>me)&&(me=Ft.y)}var Xt=oe-V,br=me-$,qr=Math.min(Xt,br),Pr=qr/2,ai=new Xw([],ytt);if(qr===0)return new l(V,$);for(var Oi=V;Oibn.d||!bn.d)&&(bn=ba,z&&console.log("found best %d after %d probes",Math.round(1e4*ba.d)/1e4,bo)),!(ba.max-bn.d<=g)&&(Pr=ba.h/2,ai.push(new Zw(ba.p.x-Pr,ba.p.y-Pr,Pr,y)),ai.push(new Zw(ba.p.x+Pr,ba.p.y-Pr,Pr,y)),ai.push(new Zw(ba.p.x-Pr,ba.p.y+Pr,Pr,y)),ai.push(new Zw(ba.p.x+Pr,ba.p.y+Pr,Pr,y)),bo+=4)}return z&&(console.log("num probes: "+bo),console.log("best distance: "+bn.d)),bn.p}function ytt(y,g){return g.max-y.max}function Zw(y,g,z,V){this.p=new l(y,g),this.h=z,this.d=gtt(this.p,V),this.max=this.d+this.h*Math.SQRT2}function gtt(y,g){for(var z=!1,V=1/0,$=0;$y.y!=Xt.y>y.y&&y.x<(Xt.x-Ft.x)*(y.y-Ft.y)/(Xt.y-Ft.y)+Ft.x&&(z=!z),V=Math.min(V,fm(y,Ft,Xt))}return(z?1:-1)*Math.sqrt(V)}function _tt(y){for(var g=0,z=0,V=0,$=y[0],oe=0,me=$.length,je=me-1;oe=An||y0.y<0||y0.y>=An||wtt(y,y0,e3,z,V,$,du,y.layers[0],y.collisionBoxArray,g.index,g.sourceLayerIndex,y.index,bn,Uo,Al,xt,ba,Zs,hu,Pr,g,oe,Ft,Xt,me)};if(Kl==="line")for(var uf=0,Ru=JQ(g.geometry,0,0,An,An);uf1){var $h=htt(nh,Cl,z.vertical||ai,V,Oi,bo);$h&&gu(nh,$h)}}else if(g.type==="Polygon")for(var _h=0,Yd=Bw(g.geometry,0);_hI1&&re(y.layerIds[0]+': Value for "text-size" is >= '+MM+'. Reduce your "text-size".')):Wn.kind==="composite"&&(bn=[Pd*Pr.compositeTextSizes[0].evaluate(me,{},ai),Pd*Pr.compositeTextSizes[1].evaluate(me,{},ai)],(bn[0]>I1||bn[1]>I1)&&re(y.layerIds[0]+': Value for "text-size" is >= '+MM+'. Reduce your "text-size".')),y.addSymbols(y.text,Oi,bn,je,oe,me,Ft,g,xt.lineStartIndex,xt.lineLength,qr,ai);for(var bo=0,ba=Xt;boI1&&re(y.layerIds[0]+': Value for "icon-size" is >= '+MM+'. Reduce your "icon-size".')):pp.kind==="composite"&&(Dh=[Pd*Uo.compositeIconSizes[0].evaluate(_o,{},Cl),Pd*Uo.compositeIconSizes[1].evaluate(_o,{},Cl)],(Dh[0]>I1||Dh[1]>I1)&&re(y.layerIds[0]+': Value for "icon-size" is >= '+MM+'. Reduce your "icon-size".')),y.addSymbols(y.icon,Qh,Dh,ba,bo,_o,!1,g,Kl.lineStartIndex,Kl.lineLength,-1,Cl),Rf=y.icon.placedSymbolArray.length-1,dp&&(Ru=dp.length*4,y.addSymbols(y.icon,dp,Dh,ba,bo,_o,cp.vertical,g,Kl.lineStartIndex,Kl.lineLength,-1,Cl),Df=y.icon.placedSymbolArray.length-1)}for(var vp in V.horizontal){var xv=V.horizontal[vp];if(!lu){yc=K(xv.text);var mg=je.layout.get("text-rotate").evaluate(_o,{},Cl);lu=new QC(xt,g,Ft,Xt,br,xv,qr,Pr,ai,mg)}var D1=xv.positionedLines.length===1;if(If+=tee(y,g,xv,oe,je,ai,_o,Oi,Kl,V.vertical?cp.horizontal:cp.horizontalOnly,D1?Object.keys(V.horizontal):[vp],Pf,Rf,Uo,Cl),D1)break}V.vertical&&(sc+=tee(y,g,V.vertical,oe,je,ai,_o,Oi,Kl,cp.vertical,["vertical"],Pf,Df,Uo,Cl));var F1=lu?lu.boxStartIndex:y.collisionBoxArray.length,B1=lu?lu.boxEndIndex:y.collisionBoxArray.length,e3=du?du.boxStartIndex:y.collisionBoxArray.length,y0=du?du.boxEndIndex:y.collisionBoxArray.length,nL=Bu?Bu.boxStartIndex:y.collisionBoxArray.length,k9=Bu?Bu.boxEndIndex:y.collisionBoxArray.length,aL=gu?gu.boxStartIndex:y.collisionBoxArray.length,C9=gu?gu.boxEndIndex:y.collisionBoxArray.length,Hv=-1,t3=function(CM,gee){return CM&&CM.circleDiameter?Math.max(CM.circleDiameter,gee):gee};Hv=t3(lu,Hv),Hv=t3(du,Hv),Hv=t3(Bu,Hv),Hv=t3(gu,Hv);var oL=Hv>-1?1:0;oL&&(Hv*=Al/So),y.glyphOffsetArray.length>=oc.MAX_GLYPHS&&re("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),_o.sortKey!==void 0&&y.addToSortKeyRanges(y.symbolInstances.length,_o.sortKey),y.symbolInstances.emplaceBack(g.x,g.y,Pf.right>=0?Pf.right:-1,Pf.center>=0?Pf.center:-1,Pf.left>=0?Pf.left:-1,Pf.vertical||-1,Rf,Df,yc,F1,B1,e3,y0,nL,k9,aL,C9,Ft,If,sc,uf,Ru,oL,0,qr,Ac,Qc,Hv)}function Ttt(y,g,z,V){var $=y.compareText;if(!(g in $))$[g]=[];else for(var oe=$[g],me=oe.length-1;me>=0;me--)if(V.dist(oe[me])0)&&(me.value.kind!=="constant"||me.value.value.length>0),Xt=xt.value.kind!=="constant"||!!xt.value.value||Object.keys(xt.parameters).length>0,br=oe.get("symbol-sort-key");if(this.features=[],!(!Ft&&!Xt)){for(var qr=z.iconDependencies,Pr=z.glyphDependencies,ai=z.availableImages,Oi=new ds(this.zoom),Wn=0,bn=g;Wn=0;for(var sc=0,Rf=hu.sections;sc=0;xt--)me[xt]={x:z[xt].x,y:z[xt].y,tileUnitDistanceFromAnchor:oe},xt>0&&(oe+=z[xt-1].dist(z[xt]));for(var Ft=0;Ft0},oc.prototype.hasIconData=function(){return this.icon.segments.get().length>0},oc.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},oc.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},oc.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},oc.prototype.addIndicesForPlacedSymbol=function(g,z){for(var V=g.placedSymbolArray.get(z),$=V.vertexStartIndex+V.numGlyphs*4,oe=V.vertexStartIndex;oe<$;oe+=4)g.indexArray.emplaceBack(oe,oe+1,oe+2),g.indexArray.emplaceBack(oe+1,oe+2,oe+3)},oc.prototype.getSortedSymbolIndexes=function(g){if(this.sortedAngle===g&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;for(var z=Math.sin(g),V=Math.cos(g),$=[],oe=[],me=[],je=0;je1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(g),this.sortedAngle=g,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var V=0,$=this.symbolInstanceIndexes;V<$.length;V+=1){var oe=$[V],me=this.symbolInstances.get(oe);this.featureSortOrder.push(me.featureIndex),[me.rightJustifiedTextSymbolIndex,me.centerJustifiedTextSymbolIndex,me.leftJustifiedTextSymbolIndex].forEach(function(je,xt,Ft){je>=0&&Ft.indexOf(je)===xt&&z.addIndicesForPlacedSymbol(z.text,je)}),me.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,me.verticalPlacedTextSymbolIndex),me.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,me.placedIconSymbolIndex),me.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,me.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},Z("SymbolBucket",oc,{omit:["layers","collisionBoxArray","features","compareText"]}),oc.MAX_GLYPHS=65535,oc.addDynamicAttributes=T9;function Ett(y,g){return g.replace(/{([^{}]+)}/g,function(z,V){return V in y?String(y[V]):""})}var ktt=new ci({"symbol-placement":new Be(Wi.layout_symbol["symbol-placement"]),"symbol-spacing":new Be(Wi.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Be(Wi.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new qt(Wi.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Be(Wi.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Be(Wi.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Be(Wi.layout_symbol["icon-ignore-placement"]),"icon-optional":new Be(Wi.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Be(Wi.layout_symbol["icon-rotation-alignment"]),"icon-size":new qt(Wi.layout_symbol["icon-size"]),"icon-text-fit":new Be(Wi.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Be(Wi.layout_symbol["icon-text-fit-padding"]),"icon-image":new qt(Wi.layout_symbol["icon-image"]),"icon-rotate":new qt(Wi.layout_symbol["icon-rotate"]),"icon-padding":new Be(Wi.layout_symbol["icon-padding"]),"icon-keep-upright":new Be(Wi.layout_symbol["icon-keep-upright"]),"icon-offset":new qt(Wi.layout_symbol["icon-offset"]),"icon-anchor":new qt(Wi.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Be(Wi.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Be(Wi.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Be(Wi.layout_symbol["text-rotation-alignment"]),"text-field":new qt(Wi.layout_symbol["text-field"]),"text-font":new qt(Wi.layout_symbol["text-font"]),"text-size":new qt(Wi.layout_symbol["text-size"]),"text-max-width":new qt(Wi.layout_symbol["text-max-width"]),"text-line-height":new Be(Wi.layout_symbol["text-line-height"]),"text-letter-spacing":new qt(Wi.layout_symbol["text-letter-spacing"]),"text-justify":new qt(Wi.layout_symbol["text-justify"]),"text-radial-offset":new qt(Wi.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Be(Wi.layout_symbol["text-variable-anchor"]),"text-anchor":new qt(Wi.layout_symbol["text-anchor"]),"text-max-angle":new Be(Wi.layout_symbol["text-max-angle"]),"text-writing-mode":new Be(Wi.layout_symbol["text-writing-mode"]),"text-rotate":new qt(Wi.layout_symbol["text-rotate"]),"text-padding":new Be(Wi.layout_symbol["text-padding"]),"text-keep-upright":new Be(Wi.layout_symbol["text-keep-upright"]),"text-transform":new qt(Wi.layout_symbol["text-transform"]),"text-offset":new qt(Wi.layout_symbol["text-offset"]),"text-allow-overlap":new Be(Wi.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Be(Wi.layout_symbol["text-ignore-placement"]),"text-optional":new Be(Wi.layout_symbol["text-optional"])}),Ctt=new ci({"icon-opacity":new qt(Wi.paint_symbol["icon-opacity"]),"icon-color":new qt(Wi.paint_symbol["icon-color"]),"icon-halo-color":new qt(Wi.paint_symbol["icon-halo-color"]),"icon-halo-width":new qt(Wi.paint_symbol["icon-halo-width"]),"icon-halo-blur":new qt(Wi.paint_symbol["icon-halo-blur"]),"icon-translate":new Be(Wi.paint_symbol["icon-translate"]),"icon-translate-anchor":new Be(Wi.paint_symbol["icon-translate-anchor"]),"text-opacity":new qt(Wi.paint_symbol["text-opacity"]),"text-color":new qt(Wi.paint_symbol["text-color"],{runtimeType:vn,getOverride:function(y){return y.textColor},hasOverride:function(y){return!!y.textColor}}),"text-halo-color":new qt(Wi.paint_symbol["text-halo-color"]),"text-halo-width":new qt(Wi.paint_symbol["text-halo-width"]),"text-halo-blur":new qt(Wi.paint_symbol["text-halo-blur"]),"text-translate":new Be(Wi.paint_symbol["text-translate"]),"text-translate-anchor":new Be(Wi.paint_symbol["text-translate-anchor"])}),A9={paint:Ctt,layout:ktt},Jw=function(g){this.type=g.property.overrides?g.property.overrides.runtimeType:Qo,this.defaultValue=g};Jw.prototype.evaluate=function(g){if(g.formattedSection){var z=this.defaultValue.property.overrides;if(z&&z.hasOverride(g.formattedSection))return z.getOverride(g.formattedSection)}return g.feature&&g.featureState?this.defaultValue.evaluate(g.feature,g.featureState):this.defaultValue.property.specification.default},Jw.prototype.eachChild=function(g){if(!this.defaultValue.isConstant()){var z=this.defaultValue.value;g(z._styleExpression.expression)}},Jw.prototype.outputDefined=function(){return!1},Jw.prototype.serialize=function(){return null},Z("FormatSectionOverride",Jw,{omit:["defaultValue"]});var Ltt=function(y){function g(z){y.call(this,z,A9)}return y&&(g.__proto__=y),g.prototype=Object.create(y&&y.prototype),g.prototype.constructor=g,g.prototype.recalculate=function(V,$){if(y.prototype.recalculate.call(this,V,$),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var oe=this.layout.get("text-writing-mode");if(oe){for(var me=[],je=0,xt=oe;je",targetMapId:$,sourceMapId:me.mapId})}}},$w.prototype.receive=function(g){var z=g.data,V=z.id;if(V&&!(z.targetMapId&&this.mapId!==z.targetMapId))if(z.type===""){delete this.tasks[V];var $=this.cancelCallbacks[V];delete this.cancelCallbacks[V],$&&$()}else Ce()||z.mustQueue?(this.tasks[V]=z,this.taskQueue.push(V),this.invoker.trigger()):this.processTask(V,z)},$w.prototype.process=function(){if(this.taskQueue.length){var g=this.taskQueue.shift(),z=this.tasks[g];delete this.tasks[g],this.taskQueue.length&&this.invoker.trigger(),z&&this.processTask(g,z)}},$w.prototype.processTask=function(g,z){var V=this;if(z.type===""){var $=this.callbacks[g];delete this.callbacks[g],$&&(z.error?$(st(z.error)):$(null,st(z.data)))}else{var oe=!1,me=ke(this.globalScope)?void 0:[],je=z.hasCallback?function(qr,Pr){oe=!0,delete V.cancelCallbacks[g],V.target.postMessage({id:g,type:"",sourceMapId:V.mapId,error:qr?Qe(qr):null,data:Qe(Pr,me)},me)}:function(qr){oe=!0},xt=null,Ft=st(z.data);if(this.parent[z.type])xt=this.parent[z.type](z.sourceMapId,Ft,je);else if(this.parent.getWorkerSource){var Xt=z.type.split("."),br=this.parent.getWorkerSource(z.sourceMapId,Xt[0],Ft.source);xt=br[Xt[1]](Ft,je)}else je(new Error("Could not find function "+z.type));!oe&&xt&&xt.cancel&&(this.cancelCallbacks[g]=xt.cancel)}},$w.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};function Utt(y,g,z){g=Math.pow(2,z)-g-1;var V=see(y*256,g*256,z),$=see((y+1)*256,(g+1)*256,z);return V[0]+","+V[1]+","+$[0]+","+$[1]}function see(y,g,z){var V=2*Math.PI*6378137/256/Math.pow(2,z),$=y*V-2*Math.PI*6378137/2,oe=g*V-2*Math.PI*6378137/2;return[$,oe]}var yh=function(g,z){g&&(z?this.setSouthWest(g).setNorthEast(z):g.length===4?this.setSouthWest([g[0],g[1]]).setNorthEast([g[2],g[3]]):this.setSouthWest(g[0]).setNorthEast(g[1]))};yh.prototype.setNorthEast=function(g){return this._ne=g instanceof Dc?new Dc(g.lng,g.lat):Dc.convert(g),this},yh.prototype.setSouthWest=function(g){return this._sw=g instanceof Dc?new Dc(g.lng,g.lat):Dc.convert(g),this},yh.prototype.extend=function(g){var z=this._sw,V=this._ne,$,oe;if(g instanceof Dc)$=g,oe=g;else if(g instanceof yh){if($=g._sw,oe=g._ne,!$||!oe)return this}else{if(Array.isArray(g))if(g.length===4||g.every(Array.isArray)){var me=g;return this.extend(yh.convert(me))}else{var je=g;return this.extend(Dc.convert(je))}return this}return!z&&!V?(this._sw=new Dc($.lng,$.lat),this._ne=new Dc(oe.lng,oe.lat)):(z.lng=Math.min($.lng,z.lng),z.lat=Math.min($.lat,z.lat),V.lng=Math.max(oe.lng,V.lng),V.lat=Math.max(oe.lat,V.lat)),this},yh.prototype.getCenter=function(){return new Dc((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},yh.prototype.getSouthWest=function(){return this._sw},yh.prototype.getNorthEast=function(){return this._ne},yh.prototype.getNorthWest=function(){return new Dc(this.getWest(),this.getNorth())},yh.prototype.getSouthEast=function(){return new Dc(this.getEast(),this.getSouth())},yh.prototype.getWest=function(){return this._sw.lng},yh.prototype.getSouth=function(){return this._sw.lat},yh.prototype.getEast=function(){return this._ne.lng},yh.prototype.getNorth=function(){return this._ne.lat},yh.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},yh.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},yh.prototype.isEmpty=function(){return!(this._sw&&this._ne)},yh.prototype.contains=function(g){var z=Dc.convert(g),V=z.lng,$=z.lat,oe=this._sw.lat<=$&&$<=this._ne.lat,me=this._sw.lng<=V&&V<=this._ne.lng;return this._sw.lng>this._ne.lng&&(me=this._sw.lng>=V&&V>=this._ne.lng),oe&&me},yh.convert=function(g){return!g||g instanceof yh?g:new yh(g)};var lee=63710088e-1,Dc=function(g,z){if(isNaN(g)||isNaN(z))throw new Error("Invalid LngLat object: ("+g+", "+z+")");if(this.lng=+g,this.lat=+z,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};Dc.prototype.wrap=function(){return new Dc(k(this.lng,-180,180),this.lat)},Dc.prototype.toArray=function(){return[this.lng,this.lat]},Dc.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},Dc.prototype.distanceTo=function(g){var z=Math.PI/180,V=this.lat*z,$=g.lat*z,oe=Math.sin(V)*Math.sin($)+Math.cos(V)*Math.cos($)*Math.cos((g.lng-this.lng)*z),me=lee*Math.acos(Math.min(oe,1));return me},Dc.prototype.toBounds=function(g){g===void 0&&(g=0);var z=40075017,V=360*g/z,$=V/Math.cos(Math.PI/180*this.lat);return new yh(new Dc(this.lng-$,this.lat-V),new Dc(this.lng+$,this.lat+V))},Dc.convert=function(g){if(g instanceof Dc)return g;if(Array.isArray(g)&&(g.length===2||g.length===3))return new Dc(Number(g[0]),Number(g[1]));if(!Array.isArray(g)&&typeof g=="object"&&g!==null)return new Dc(Number("lng"in g?g.lng:g.lon),Number(g.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")};var uee=2*Math.PI*lee;function fee(y){return uee*Math.cos(y*Math.PI/180)}function cee(y){return(180+y)/360}function hee(y){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+y*Math.PI/360)))/360}function dee(y,g){return y/fee(g)}function Vtt(y){return y*360-180}function M9(y){var g=180-y*360;return 360/Math.PI*Math.atan(Math.exp(g*Math.PI/180))-90}function Gtt(y,g){return y*fee(M9(g))}function Htt(y){return 1/Math.cos(y*Math.PI/180)}var nb=function(g,z,V){V===void 0&&(V=0),this.x=+g,this.y=+z,this.z=+V};nb.fromLngLat=function(g,z){z===void 0&&(z=0);var V=Dc.convert(g);return new nb(cee(V.lng),hee(V.lat),dee(z,V.lat))},nb.prototype.toLngLat=function(){return new Dc(Vtt(this.x),M9(this.y))},nb.prototype.toAltitude=function(){return Gtt(this.z,this.y)},nb.prototype.meterInMercatorCoordinateUnits=function(){return 1/uee*Htt(M9(this.y))};var ab=function(g,z,V){this.z=g,this.x=z,this.y=V,this.key=kM(0,g,g,z,V)};ab.prototype.equals=function(g){return this.z===g.z&&this.x===g.x&&this.y===g.y},ab.prototype.url=function(g,z){var V=Utt(this.x,this.y,this.z),$=Wtt(this.z,this.x,this.y);return g[(this.x+this.y)%g.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String(z==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",$).replace("{bbox-epsg-3857}",V)},ab.prototype.getTilePoint=function(g){var z=Math.pow(2,this.z);return new l((g.x*z-this.x)*An,(g.y*z-this.y)*An)},ab.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var pee=function(g,z){this.wrap=g,this.canonical=z,this.key=kM(g,z.z,z.z,z.x,z.y)},gh=function(g,z,V,$,oe){this.overscaledZ=g,this.wrap=z,this.canonical=new ab(V,+$,+oe),this.key=kM(z,g,V,$,oe)};gh.prototype.equals=function(g){return this.overscaledZ===g.overscaledZ&&this.wrap===g.wrap&&this.canonical.equals(g.canonical)},gh.prototype.scaledTo=function(g){var z=this.canonical.z-g;return g>this.canonical.z?new gh(g,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new gh(g,this.wrap,g,this.canonical.x>>z,this.canonical.y>>z)},gh.prototype.calculateScaledKey=function(g,z){var V=this.canonical.z-g;return g>this.canonical.z?kM(this.wrap*+z,g,this.canonical.z,this.canonical.x,this.canonical.y):kM(this.wrap*+z,g,g,this.canonical.x>>V,this.canonical.y>>V)},gh.prototype.isChildOf=function(g){if(g.wrap!==this.wrap)return!1;var z=this.canonical.z-g.canonical.z;return g.overscaledZ===0||g.overscaledZ>z&&g.canonical.y===this.canonical.y>>z},gh.prototype.children=function(g){if(this.overscaledZ>=g)return[new gh(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var z=this.canonical.z+1,V=this.canonical.x*2,$=this.canonical.y*2;return[new gh(z,this.wrap,z,V,$),new gh(z,this.wrap,z,V+1,$),new gh(z,this.wrap,z,V,$+1),new gh(z,this.wrap,z,V+1,$+1)]},gh.prototype.isLessThan=function(g){return this.wrapg.wrap?!1:this.overscaledZg.overscaledZ?!1:this.canonical.xg.canonical.x?!1:this.canonical.y0;oe--)$=1<=this.dim+1||z<-1||z>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(z+1)*this.stride+(g+1)},pg.prototype._unpackMapbox=function(g,z,V){return(g*256*256+z*256+V)/10-1e4},pg.prototype._unpackTerrarium=function(g,z,V){return g*256+z+V/256-32768},pg.prototype.getPixels=function(){return new Ph({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},pg.prototype.backfillBorder=function(g,z,V){if(this.dim!==g.dim)throw new Error("dem dimension mismatch");var $=z*this.dim,oe=z*this.dim+this.dim,me=V*this.dim,je=V*this.dim+this.dim;switch(z){case-1:$=oe-1;break;case 1:oe=$+1;break}switch(V){case-1:me=je-1;break;case 1:je=me+1;break}for(var xt=-z*this.dim,Ft=-V*this.dim,Xt=me;Xt=0&&br[3]>=0&&xt.insert(je,br[0],br[1],br[2],br[3])}},vg.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new vm.VectorTile(new su(this.rawTileData)).layers,this.sourceLayerCoder=new rL(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},vg.prototype.query=function(g,z,V,$){var oe=this;this.loadVTLayers();for(var me=g.params||{},je=An/g.tileSize/g.scale,xt=Se(me.filter),Ft=g.queryGeometry,Xt=g.queryPadding*je,br=mee(Ft),qr=this.grid.query(br.minX-Xt,br.minY-Xt,br.maxX+Xt,br.maxY+Xt),Pr=mee(g.cameraQueryGeometry),ai=this.grid3D.query(Pr.minX-Xt,Pr.minY-Xt,Pr.maxX+Xt,Pr.maxY+Xt,function(Zs,Cl,Al,hu){return mv(g.cameraQueryGeometry,Zs-Xt,Cl-Xt,Al+Xt,hu+Xt)}),Oi=0,Wn=ai;Oi$)oe=!1;else if(!z)oe=!0;else if(this.expirationTime=xn.maxzoom)&&xn.visibility!=="none"){h(Ii,this.zoom,Wt);var bi=jr[xn.id]=xn.createBucket({index:Hr.bucketLayerIDs.length,layers:Ii,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:tn,sourceID:this.source});bi.populate(Yr,gi,this.tileID.canonical),Hr.bucketLayerIDs.push(Ii.map(function(ii){return ii.id}))}}}}var Xr,ct,tr,pr,gr=i.mapObject(gi.glyphDependencies,function(ii){return Object.keys(ii).map(Number)});Object.keys(gr).length?xr.send("getGlyphs",{uid:this.uid,stacks:gr},function(ii,Xi){Xr||(Xr=ii,ct=Xi,en.call(Nr))}):ct={};var Zr=Object.keys(gi.iconDependencies);Zr.length?xr.send("getImages",{icons:Zr,source:this.source,tileID:this.tileID,type:"icons"},function(ii,Xi){Xr||(Xr=ii,tr=Xi,en.call(Nr))}):tr={};var Ti=Object.keys(gi.patternDependencies);Ti.length?xr.send("getImages",{icons:Ti,source:this.source,tileID:this.tileID,type:"patterns"},function(ii,Xi){Xr||(Xr=ii,pr=Xi,en.call(Nr))}):pr={},en.call(this);function en(){if(Xr)return Lr(Xr);if(ct&&tr&&pr){var ii=new f(ct),Xi=new i.ImageAtlas(tr,pr);for(var aa in jr){var Mn=jr[aa];Mn instanceof i.SymbolBucket?(h(Mn.layers,this.zoom,Wt),i.performSymbolLayout(Mn,ct,ii.positions,tr,Xi.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):Mn.hasPattern&&(Mn instanceof i.LineBucket||Mn instanceof i.FillBucket||Mn instanceof i.FillExtrusionBucket)&&(h(Mn.layers,this.zoom,Wt),Mn.addFeatures(gi,this.tileID.canonical,Xi.patternPositions))}this.status="done",Lr(null,{buckets:i.values(jr).filter(function(Un){return!Un.isEmpty()}),featureIndex:Hr,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:ii.image,imageAtlas:Xi,glyphMap:this.returnDependencies?ct:null,iconMap:this.returnDependencies?tr:null,glyphPositions:this.returnDependencies?ii.positions:null})}}};function h(Rt,yt,Gt){for(var Wt=new i.EvaluationParameters(yt),xr=0,Lr=Rt;xr=0!=!!yt&&Rt.reverse()}var L=i.vectorTile.VectorTileFeature.prototype.toGeoJSON,x=function(yt){this._feature=yt,this.extent=i.EXTENT,this.type=yt.type,this.properties=yt.tags,"id"in yt&&!isNaN(yt.id)&&(this.id=parseInt(yt.id,10))};x.prototype.loadGeometry=function(){if(this._feature.type===1){for(var yt=[],Gt=0,Wt=this._feature.geometry;Gt>31}function Ce(Rt,yt){for(var Gt=Rt.loadGeometry(),Wt=Rt.type,xr=0,Lr=0,Nr=Gt.length,Or=0;Or>1;ke(Rt,yt,Nr,Wt,xr,Lr%2),te(Rt,yt,Gt,Wt,Nr-1,Lr+1),te(Rt,yt,Gt,Nr+1,xr,Lr+1)}}function ke(Rt,yt,Gt,Wt,xr,Lr){for(;xr>Wt;){if(xr-Wt>600){var Nr=xr-Wt+1,Or=Gt-Wt+1,Hr=Math.log(Nr),jr=.5*Math.exp(2*Hr/3),gi=.5*Math.sqrt(Hr*jr*(Nr-jr)/Nr)*(Or-Nr/2<0?-1:1),ki=Math.max(Wt,Math.floor(Gt-Or*jr/Nr+gi)),Vi=Math.min(xr,Math.floor(Gt+(Nr-Or)*jr/Nr+gi));ke(Rt,yt,Gt,ki,Vi,Lr)}var ti=yt[2*Gt+Lr],tn=Wt,Yr=xr;for(Ee(Rt,yt,Wt,Gt),yt[2*xr+Lr]>ti&&Ee(Rt,yt,Wt,xr);tnti;)Yr--}yt[2*Wt+Lr]===ti?Ee(Rt,yt,Wt,Yr):(Yr++,Ee(Rt,yt,Yr,xr)),Yr<=Gt&&(Wt=Yr+1),Gt<=Yr&&(xr=Yr-1)}}function Ee(Rt,yt,Gt,Wt){Me(Rt,Gt,Wt),Me(yt,2*Gt,2*Wt),Me(yt,2*Gt+1,2*Wt+1)}function Me(Rt,yt,Gt){var Wt=Rt[yt];Rt[yt]=Rt[Gt],Rt[Gt]=Wt}function Ue(Rt,yt,Gt,Wt,xr,Lr,Nr){for(var Or=[0,Rt.length-1,0],Hr=[],jr,gi;Or.length;){var ki=Or.pop(),Vi=Or.pop(),ti=Or.pop();if(Vi-ti<=Nr){for(var tn=ti;tn<=Vi;tn++)jr=yt[2*tn],gi=yt[2*tn+1],jr>=Gt&&jr<=xr&&gi>=Wt&&gi<=Lr&&Hr.push(Rt[tn]);continue}var Yr=Math.floor((ti+Vi)/2);jr=yt[2*Yr],gi=yt[2*Yr+1],jr>=Gt&&jr<=xr&&gi>=Wt&&gi<=Lr&&Hr.push(Rt[Yr]);var oi=(ki+1)%2;(ki===0?Gt<=jr:Wt<=gi)&&(Or.push(ti),Or.push(Yr-1),Or.push(oi)),(ki===0?xr>=jr:Lr>=gi)&&(Or.push(Yr+1),Or.push(Vi),Or.push(oi))}return Hr}function De(Rt,yt,Gt,Wt,xr,Lr){for(var Nr=[0,Rt.length-1,0],Or=[],Hr=xr*xr;Nr.length;){var jr=Nr.pop(),gi=Nr.pop(),ki=Nr.pop();if(gi-ki<=Lr){for(var Vi=ki;Vi<=gi;Vi++)ye(yt[2*Vi],yt[2*Vi+1],Gt,Wt)<=Hr&&Or.push(Rt[Vi]);continue}var ti=Math.floor((ki+gi)/2),tn=yt[2*ti],Yr=yt[2*ti+1];ye(tn,Yr,Gt,Wt)<=Hr&&Or.push(Rt[ti]);var oi=(jr+1)%2;(jr===0?Gt-xr<=tn:Wt-xr<=Yr)&&(Nr.push(ki),Nr.push(ti-1),Nr.push(oi)),(jr===0?Gt+xr>=tn:Wt+xr>=Yr)&&(Nr.push(ti+1),Nr.push(gi),Nr.push(oi))}return Or}function ye(Rt,yt,Gt,Wt){var xr=Rt-Gt,Lr=yt-Wt;return xr*xr+Lr*Lr}var qe=function(Rt){return Rt[0]},ce=function(Rt){return Rt[1]},Je=function(yt,Gt,Wt,xr,Lr){Gt===void 0&&(Gt=qe),Wt===void 0&&(Wt=ce),xr===void 0&&(xr=64),Lr===void 0&&(Lr=Float64Array),this.nodeSize=xr,this.points=yt;for(var Nr=yt.length<65536?Uint16Array:Uint32Array,Or=this.ids=new Nr(yt.length),Hr=this.coords=new Lr(yt.length*2),jr=0;jr=xr;gi--){var ki=+Date.now();Hr=this._cluster(Hr,gi),this.trees[gi]=new Je(Hr,Te,ot,Nr,Float32Array),Wt&&console.log("z%d: %d clusters in %dms",gi,Hr.length,+Date.now()-ki)}return Wt&&console.timeEnd("total time"),this},gt.prototype.getClusters=function(yt,Gt){var Wt=((yt[0]+180)%360+360)%360-180,xr=Math.max(-90,Math.min(90,yt[1])),Lr=yt[2]===180?180:((yt[2]+180)%360+360)%360-180,Nr=Math.max(-90,Math.min(90,yt[3]));if(yt[2]-yt[0]>=360)Wt=-180,Lr=180;else if(Wt>Lr){var Or=this.getClusters([Wt,xr,180,Nr],Gt),Hr=this.getClusters([-180,xr,Lr,Nr],Gt);return Or.concat(Hr)}for(var jr=this.trees[this._limitZoom(Gt)],gi=jr.range(wt(Wt),St(Nr),wt(Lr),St(xr)),ki=[],Vi=0,ti=gi;ViGt&&(Yr+=nn.numPoints||1)}if(Yr>=Hr){for(var Ri=ki.x*tn,Ii=ki.y*tn,xn=Or&&tn>1?this._map(ki,!0):null,bi=(gi<<5)+(Gt+1)+this.points.length,Xr=0,ct=ti;Xr1)for(var Zr=0,Ti=ti;Zr>5},gt.prototype._getOriginZoom=function(yt){return(yt-this.points.length)%32},gt.prototype._map=function(yt,Gt){if(yt.numPoints)return Gt?Et({},yt.properties):yt.properties;var Wt=this.points[yt.index].properties,xr=this.options.map(Wt);return Gt&&xr===Wt?Et({},xr):xr};function Nt(Rt,yt,Gt,Wt,xr){return{x:Rt,y:yt,zoom:1/0,id:Gt,parentId:-1,numPoints:Wt,properties:xr}}function at(Rt,yt){var Gt=Rt.geometry.coordinates,Wt=Gt[0],xr=Gt[1];return{x:wt(Wt),y:St(xr),zoom:1/0,index:yt,parentId:-1}}function Ke(Rt){return{type:"Feature",id:Rt.id,properties:Ct(Rt),geometry:{type:"Point",coordinates:[Dt(Rt.x),Zt(Rt.y)]}}}function Ct(Rt){var yt=Rt.numPoints,Gt=yt>=1e4?Math.round(yt/1e3)+"k":yt>=1e3?Math.round(yt/100)/10+"k":yt;return Et(Et({},Rt.properties),{cluster:!0,cluster_id:Rt.id,point_count:yt,point_count_abbreviated:Gt})}function wt(Rt){return Rt/360+.5}function St(Rt){var yt=Math.sin(Rt*Math.PI/180),Gt=.5-.25*Math.log((1+yt)/(1-yt))/Math.PI;return Gt<0?0:Gt>1?1:Gt}function Dt(Rt){return(Rt-.5)*360}function Zt(Rt){var yt=(180-Rt*360)*Math.PI/180;return 360*Math.atan(Math.exp(yt))/Math.PI-90}function Et(Rt,yt){for(var Gt in yt)Rt[Gt]=yt[Gt];return Rt}function Te(Rt){return Rt.x}function ot(Rt){return Rt.y}function Tt(Rt,yt,Gt,Wt){for(var xr=Wt,Lr=Gt-yt>>1,Nr=Gt-yt,Or,Hr=Rt[yt],jr=Rt[yt+1],gi=Rt[Gt],ki=Rt[Gt+1],Vi=yt+3;Vixr)Or=Vi,xr=ti;else if(ti===xr){var tn=Math.abs(Vi-Lr);tnWt&&(Or-yt>3&&Tt(Rt,yt,Or,Wt),Rt[Or+2]=xr,Gt-Or>3&&Tt(Rt,Or,Gt,Wt))}function vt(Rt,yt,Gt,Wt,xr,Lr){var Nr=xr-Gt,Or=Lr-Wt;if(Nr!==0||Or!==0){var Hr=((Rt-Gt)*Nr+(yt-Wt)*Or)/(Nr*Nr+Or*Or);Hr>1?(Gt=xr,Wt=Lr):Hr>0&&(Gt+=Nr*Hr,Wt+=Or*Hr)}return Nr=Rt-Gt,Or=yt-Wt,Nr*Nr+Or*Or}function Ye(Rt,yt,Gt,Wt){var xr={id:typeof Rt=="undefined"?null:Rt,type:yt,geometry:Gt,tags:Wt,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return He(xr),xr}function He(Rt){var yt=Rt.geometry,Gt=Rt.type;if(Gt==="Point"||Gt==="MultiPoint"||Gt==="LineString")it(Rt,yt);else if(Gt==="Polygon"||Gt==="MultiLineString")for(var Wt=0;Wt0&&(Wt?Nr+=(xr*jr-Hr*Lr)/2:Nr+=Math.sqrt(Math.pow(Hr-xr,2)+Math.pow(jr-Lr,2))),xr=Hr,Lr=jr}var gi=yt.length-3;yt[2]=1,Tt(yt,0,gi,Gt),yt[gi+2]=1,yt.size=Math.abs(Nr),yt.start=0,yt.end=yt.size}function _r(Rt,yt,Gt,Wt){for(var xr=0;xr1?1:Gt}function Re(Rt,yt,Gt,Wt,xr,Lr,Nr,Or){if(Gt/=yt,Wt/=yt,Lr>=Gt&&Nr=Wt)return null;for(var Hr=[],jr=0;jr=Gt&&tn=Wt)continue;var Yr=[];if(Vi==="Point"||Vi==="MultiPoint")xe(ki,Yr,Gt,Wt,xr);else if(Vi==="LineString")Oe(ki,Yr,Gt,Wt,xr,!1,Or.lineMetrics);else if(Vi==="MultiLineString")Fe(ki,Yr,Gt,Wt,xr,!1);else if(Vi==="Polygon")Fe(ki,Yr,Gt,Wt,xr,!0);else if(Vi==="MultiPolygon")for(var oi=0;oi=Gt&&Nr<=Wt&&(yt.push(Rt[Lr]),yt.push(Rt[Lr+1]),yt.push(Rt[Lr+2]))}}function Oe(Rt,yt,Gt,Wt,xr,Lr,Nr){for(var Or=Ie(Rt),Hr=xr===0?ge:fe,jr=Rt.start,gi,ki,Vi=0;ViGt&&(ki=Hr(Or,ti,tn,oi,Fi,Gt),Nr&&(Or.start=jr+gi*ki)):an>Wt?nn=Gt&&(ki=Hr(Or,ti,tn,oi,Fi,Gt),Ri=!0),nn>Wt&&an<=Wt&&(ki=Hr(Or,ti,tn,oi,Fi,Wt),Ri=!0),!Lr&&Ri&&(Nr&&(Or.end=jr+gi*ki),yt.push(Or),Or=Ie(Rt)),Nr&&(jr+=gi)}var Ii=Rt.length-3;ti=Rt[Ii],tn=Rt[Ii+1],Yr=Rt[Ii+2],an=xr===0?ti:tn,an>=Gt&&an<=Wt&&ft(Or,ti,tn,Yr),Ii=Or.length-3,Lr&&Ii>=3&&(Or[Ii]!==Or[0]||Or[Ii+1]!==Or[1])&&ft(Or,Or[0],Or[1],Or[2]),Or.length&&yt.push(Or)}function Ie(Rt){var yt=[];return yt.size=Rt.size,yt.start=Rt.start,yt.end=Rt.end,yt}function Fe(Rt,yt,Gt,Wt,xr,Lr){for(var Nr=0;NrNr.maxX&&(Nr.maxX=gi),ki>Nr.maxY&&(Nr.maxY=ki)}return Nr}function Br(Rt,yt,Gt,Wt){var xr=yt.geometry,Lr=yt.type,Nr=[];if(Lr==="Point"||Lr==="MultiPoint")for(var Or=0;Or0&&yt.size<(xr?Nr:Wt)){Gt.numPoints+=yt.length/3;return}for(var Or=[],Hr=0;HrNr)&&(Gt.numSimplified++,Or.push(yt[Hr]),Or.push(yt[Hr+1])),Gt.numPoints++;xr&&Rr(Or,Lr),Rt.push(Or)}function Rr(Rt,yt){for(var Gt=0,Wt=0,xr=Rt.length,Lr=xr-2;Wt0===yt)for(Wt=0,xr=Rt.length;Wt24)throw new Error("maxZoom should be in the 0-24 range");if(yt.promoteId&&yt.generateId)throw new Error("promoteId and generateId cannot be used together.");var Wt=et(Rt,yt);this.tiles={},this.tileCoords=[],Gt&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",yt.indexMaxZoom,yt.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),Wt=pe(Wt,yt),Wt.length&&this.splitTile(Wt,0,0,0),Gt&&(Wt.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}Di.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Di.prototype.splitTile=function(Rt,yt,Gt,Wt,xr,Lr,Nr){for(var Or=[Rt,yt,Gt,Wt],Hr=this.options,jr=Hr.debug;Or.length;){Wt=Or.pop(),Gt=Or.pop(),yt=Or.pop(),Rt=Or.pop();var gi=1<1&&console.time("creation"),Vi=this.tiles[ki]=Gr(Rt,yt,Gt,Wt,Hr),this.tileCoords.push({z:yt,x:Gt,y:Wt}),jr)){jr>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",yt,Gt,Wt,Vi.numFeatures,Vi.numPoints,Vi.numSimplified),console.timeEnd("creation"));var ti="z"+yt;this.stats[ti]=(this.stats[ti]||0)+1,this.total++}if(Vi.source=Rt,xr){if(yt===Hr.maxZoom||yt===xr)continue;var tn=1<1&&console.time("clipping");var Yr=.5*Hr.buffer/Hr.extent,oi=.5-Yr,Fi=.5+Yr,an=1+Yr,nn,Ri,Ii,xn,bi,Xr;nn=Ri=Ii=xn=null,bi=Re(Rt,gi,Gt-Yr,Gt+Fi,0,Vi.minX,Vi.maxX,Hr),Xr=Re(Rt,gi,Gt+oi,Gt+an,0,Vi.minX,Vi.maxX,Hr),Rt=null,bi&&(nn=Re(bi,gi,Wt-Yr,Wt+Fi,1,Vi.minY,Vi.maxY,Hr),Ri=Re(bi,gi,Wt+oi,Wt+an,1,Vi.minY,Vi.maxY,Hr),bi=null),Xr&&(Ii=Re(Xr,gi,Wt-Yr,Wt+Fi,1,Vi.minY,Vi.maxY,Hr),xn=Re(Xr,gi,Wt+oi,Wt+an,1,Vi.minY,Vi.maxY,Hr),Xr=null),jr>1&&console.timeEnd("clipping"),Or.push(nn||[],yt+1,Gt*2,Wt*2),Or.push(Ri||[],yt+1,Gt*2,Wt*2+1),Or.push(Ii||[],yt+1,Gt*2+1,Wt*2),Or.push(xn||[],yt+1,Gt*2+1,Wt*2+1)}}},Di.prototype.getTile=function(Rt,yt,Gt){var Wt=this.options,xr=Wt.extent,Lr=Wt.debug;if(Rt<0||Rt>24)return null;var Nr=1<1&&console.log("drilling down to z%d-%d-%d",Rt,yt,Gt);for(var Hr=Rt,jr=yt,gi=Gt,ki;!ki&&Hr>0;)Hr--,jr=Math.floor(jr/2),gi=Math.floor(gi/2),ki=this.tiles[ni(Hr,jr,gi)];return!ki||!ki.source?null:(Lr>1&&console.log("found parent tile z%d-%d-%d",Hr,jr,gi),Lr>1&&console.time("drilling down"),this.splitTile(ki.source,Hr,jr,gi,Rt,yt,Gt),Lr>1&&console.timeEnd("drilling down"),this.tiles[Or]?zt(this.tiles[Or],xr):null)};function ni(Rt,yt,Gt){return((1<=0?0:Y.button},o.remove=function(Y){Y.parentNode&&Y.parentNode.removeChild(Y)};function _(Y,R,J){var O,K,_e,ne=i.browser.devicePixelRatio>1?"@2x":"",Le=i.getJSON(R.transformRequest(R.normalizeSpriteURL(Y,ne,".json"),i.ResourceType.SpriteJSON),function(dr,Mr){Le=null,_e||(_e=dr,O=Mr,kt())}),Ze=i.getImage(R.transformRequest(R.normalizeSpriteURL(Y,ne,".png"),i.ResourceType.SpriteImage),function(dr,Mr){Ze=null,_e||(_e=dr,K=Mr,kt())});function kt(){if(_e)J(_e);else if(O&&K){var dr=i.browser.getImageData(K),Mr={};for(var lr in O){var $e=O[lr],ht=$e.width,bt=$e.height,Kt=$e.x,sr=$e.y,Qt=$e.sdf,ur=$e.pixelRatio,er=$e.stretchX,Ot=$e.stretchY,Jt=$e.content,Lt=new i.RGBAImage({width:ht,height:bt});i.RGBAImage.copy(dr,Lt,{x:Kt,y:sr},{x:0,y:0},{width:ht,height:bt}),Mr[lr]={data:Lt,pixelRatio:ur,sdf:Qt,stretchX:er,stretchY:Ot,content:Jt}}J(null,Mr)}}return{cancel:function(){Le&&(Le.cancel(),Le=null),Ze&&(Ze.cancel(),Ze=null)}}}function b(Y){var R=Y.userImage;if(R&&R.render){var J=R.render();if(J)return Y.data.replace(new Uint8Array(R.data.buffer)),!0}return!1}var v=1,k=function(Y){function R(){Y.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new i.RGBAImage({width:1,height:1}),this.dirty=!0}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R.prototype.isLoaded=function(){return this.loaded},R.prototype.setLoaded=function(O){if(this.loaded!==O&&(this.loaded=O,O)){for(var K=0,_e=this.requestors;K<_e.length;K+=1){var ne=_e[K],Le=ne.ids,Ze=ne.callback;this._notify(Le,Ze)}this.requestors=[]}},R.prototype.getImage=function(O){return this.images[O]},R.prototype.addImage=function(O,K){this._validate(O,K)&&(this.images[O]=K)},R.prototype._validate=function(O,K){var _e=!0;return this._validateStretch(K.stretchX,K.data&&K.data.width)||(this.fire(new i.ErrorEvent(new Error('Image "'+O+'" has invalid "stretchX" value'))),_e=!1),this._validateStretch(K.stretchY,K.data&&K.data.height)||(this.fire(new i.ErrorEvent(new Error('Image "'+O+'" has invalid "stretchY" value'))),_e=!1),this._validateContent(K.content,K)||(this.fire(new i.ErrorEvent(new Error('Image "'+O+'" has invalid "content" value'))),_e=!1),_e},R.prototype._validateStretch=function(O,K){if(!O)return!0;for(var _e=0,ne=0,Le=O;ne=0?1.2:1))}C.prototype.draw=function(Y){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(Y,this.buffer,this.middle);for(var R=this.ctx.getImageData(0,0,this.size,this.size),J=new Uint8ClampedArray(this.size*this.size),O=0;O65535){dr(new Error("glyphs > 65535 not supported"));return}if($e.ranges[bt]){dr(null,{stack:Mr,id:lr,glyph:ht});return}var Kt=$e.requests[bt];Kt||(Kt=$e.requests[bt]=[],P.loadGlyphRange(Mr,bt,O.url,O.requestManager,function(sr,Qt){if(Qt){for(var ur in Qt)O._doesCharSupportLocalGlyph(+ur)||($e.glyphs[+ur]=Qt[+ur]);$e.ranges[bt]=!0}for(var er=0,Ot=Kt;er1&&(kt=R[++Ze]);var Mr=Math.abs(dr-kt.left),lr=Math.abs(dr-kt.right),$e=Math.min(Mr,lr),ht=void 0,bt=_e/O*(K+1);if(kt.isDash){var Kt=K-Math.abs(bt);ht=Math.sqrt($e*$e+Kt*Kt)}else ht=K-Math.sqrt($e*$e+bt*bt);this.data[Le+dr]=Math.max(0,Math.min(255,ht+128))}},G.prototype.addRegularDash=function(R){for(var J=R.length-1;J>=0;--J){var O=R[J],K=R[J+1];O.zeroLength?R.splice(J,1):K&&K.isDash===O.isDash&&(K.left=O.left,R.splice(J,1))}var _e=R[0],ne=R[R.length-1];_e.isDash===ne.isDash&&(_e.left=ne.left-this.width,ne.right=_e.right+this.width);for(var Le=this.width*this.nextRow,Ze=0,kt=R[Ze],dr=0;dr1&&(kt=R[++Ze]);var Mr=Math.abs(dr-kt.left),lr=Math.abs(dr-kt.right),$e=Math.min(Mr,lr),ht=kt.isDash?$e:-$e;this.data[Le+dr]=Math.max(0,Math.min(255,ht+128))}},G.prototype.addDash=function(R,J){var O=J?7:0,K=2*O+1;if(this.nextRow+K>this.height)return i.warnOnce("LineAtlas out of space"),null;for(var _e=0,ne=0;ne=O.minX&&R.x=O.minY&&R.y0&&(dr[new i.OverscaledTileID(O.overscaledZ,Le,K.z,ne,K.y-1).key]={backfilled:!1},dr[new i.OverscaledTileID(O.overscaledZ,O.wrap,K.z,K.x,K.y-1).key]={backfilled:!1},dr[new i.OverscaledTileID(O.overscaledZ,kt,K.z,Ze,K.y-1).key]={backfilled:!1}),K.y+1<_e&&(dr[new i.OverscaledTileID(O.overscaledZ,Le,K.z,ne,K.y+1).key]={backfilled:!1},dr[new i.OverscaledTileID(O.overscaledZ,O.wrap,K.z,K.x,K.y+1).key]={backfilled:!1},dr[new i.OverscaledTileID(O.overscaledZ,kt,K.z,Ze,K.y+1).key]={backfilled:!1}),dr},R.prototype.unloadTile=function(O){O.demTexture&&this.map.painter.saveTileTexture(O.demTexture),O.fbo&&(O.fbo.destroy(),delete O.fbo),O.dem&&delete O.dem,delete O.neighboringTiles,O.state="unloaded",O.actor&&O.actor.send("removeDEMTile",{uid:O.uid,source:this.id})},R}(re),be=function(Y){function R(J,O,K,_e){Y.call(this),this.id=J,this.type="geojson",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this._removed=!1,this._loaded=!1,this.actor=K.getActor(),this.setEventedParent(_e),this._data=O.data,this._options=i.extend({},O),this._collectResourceTiming=O.collectResourceTiming,this._resourceTiming=[],O.maxzoom!==void 0&&(this.maxzoom=O.maxzoom),O.type&&(this.type=O.type),O.attribution&&(this.attribution=O.attribution),this.promoteId=O.promoteId;var ne=i.EXTENT/this.tileSize;this.workerOptions=i.extend({source:this.id,cluster:O.cluster||!1,geojsonVtOptions:{buffer:(O.buffer!==void 0?O.buffer:128)*ne,tolerance:(O.tolerance!==void 0?O.tolerance:.375)*ne,extent:i.EXTENT,maxZoom:this.maxzoom,lineMetrics:O.lineMetrics||!1,generateId:O.generateId||!1},superclusterOptions:{maxZoom:O.clusterMaxZoom!==void 0?Math.min(O.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,minPoints:Math.max(2,O.clusterMinPoints||2),extent:i.EXTENT,radius:(O.clusterRadius||50)*ne,log:!1,generateId:O.generateId||!1},clusterProperties:O.clusterProperties,filter:O.filter},O.workerOptions)}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R.prototype.load=function(){var O=this;this.fire(new i.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(K){if(K){O.fire(new i.ErrorEvent(K));return}var _e={dataType:"source",sourceDataType:"metadata"};O._collectResourceTiming&&O._resourceTiming&&O._resourceTiming.length>0&&(_e.resourceTiming=O._resourceTiming,O._resourceTiming=[]),O.fire(new i.Event("data",_e))})},R.prototype.onAdd=function(O){this.map=O,this.load()},R.prototype.setData=function(O){var K=this;return this._data=O,this.fire(new i.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(_e){if(_e){K.fire(new i.ErrorEvent(_e));return}var ne={dataType:"source",sourceDataType:"content"};K._collectResourceTiming&&K._resourceTiming&&K._resourceTiming.length>0&&(ne.resourceTiming=K._resourceTiming,K._resourceTiming=[]),K.fire(new i.Event("data",ne))}),this},R.prototype.getClusterExpansionZoom=function(O,K){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:O,source:this.id},K),this},R.prototype.getClusterChildren=function(O,K){return this.actor.send("geojson.getClusterChildren",{clusterId:O,source:this.id},K),this},R.prototype.getClusterLeaves=function(O,K,_e,ne){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:O,limit:K,offset:_e},ne),this},R.prototype._updateWorkerData=function(O){var K=this;this._loaded=!1;var _e=i.extend({},this.workerOptions),ne=this._data;typeof ne=="string"?(_e.request=this.map._requestManager.transformRequest(i.browser.resolveURL(ne),i.ResourceType.Source),_e.request.collectResourceTiming=this._collectResourceTiming):_e.data=JSON.stringify(ne),this.actor.send(this.type+".loadData",_e,function(Le,Ze){K._removed||Ze&&Ze.abandoned||(K._loaded=!0,Ze&&Ze.resourceTiming&&Ze.resourceTiming[K.id]&&(K._resourceTiming=Ze.resourceTiming[K.id].slice(0)),K.actor.send(K.type+".coalesce",{source:_e.source},null),O(Le))})},R.prototype.loaded=function(){return this._loaded},R.prototype.loadTile=function(O,K){var _e=this,ne=O.actor?"reloadTile":"loadTile";O.actor=this.actor;var Le={type:this.type,uid:O.uid,tileID:O.tileID,zoom:O.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:i.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};O.request=this.actor.send(ne,Le,function(Ze,kt){return delete O.request,O.unloadVectorData(),O.aborted?K(null):Ze?K(Ze):(O.loadVectorData(kt,_e.map.painter,ne==="reloadTile"),K(null))})},R.prototype.abortTile=function(O){O.request&&(O.request.cancel(),delete O.request),O.aborted=!0},R.prototype.unloadTile=function(O){O.unloadVectorData(),this.actor.send("removeTile",{uid:O.uid,type:this.type,source:this.id})},R.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},R.prototype.serialize=function(){return i.extend({},this._options,{type:this.type,data:this._data})},R.prototype.hasTransition=function(){return!1},R}(i.Evented),ze=i.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),Ce=function(Y){function R(J,O,K,_e){Y.call(this),this.id=J,this.dispatcher=K,this.coordinates=O.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(_e),this.options=O}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R.prototype.load=function(O,K){var _e=this;this._loaded=!1,this.fire(new i.Event("dataloading",{dataType:"source"})),this.url=this.options.url,i.getImage(this.map._requestManager.transformRequest(this.url,i.ResourceType.Image),function(ne,Le){_e._loaded=!0,ne?_e.fire(new i.ErrorEvent(ne)):Le&&(_e.image=Le,O&&(_e.coordinates=O),K&&K(),_e._finishLoading())})},R.prototype.loaded=function(){return this._loaded},R.prototype.updateImage=function(O){var K=this;return!this.image||!O.url?this:(this.options.url=O.url,this.load(O.coordinates,function(){K.texture=null}),this)},R.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"metadata"})))},R.prototype.onAdd=function(O){this.map=O,this.load()},R.prototype.setCoordinates=function(O){var K=this;this.coordinates=O;var _e=O.map(i.MercatorCoordinate.fromLngLat);this.tileID=de(_e),this.minzoom=this.maxzoom=this.tileID.z;var ne=_e.map(function(Le){return K.tileID.getTilePoint(Le)._round()});return this._boundsArray=new i.StructArrayLayout4i8,this._boundsArray.emplaceBack(ne[0].x,ne[0].y,0,0),this._boundsArray.emplaceBack(ne[1].x,ne[1].y,i.EXTENT,0),this._boundsArray.emplaceBack(ne[3].x,ne[3].y,0,i.EXTENT),this._boundsArray.emplaceBack(ne[2].x,ne[2].y,i.EXTENT,i.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"content"})),this},R.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||!this.image)){var O=this.map.painter.context,K=O.gl;this.boundsBuffer||(this.boundsBuffer=O.createVertexBuffer(this._boundsArray,ze.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new i.Texture(O,this.image,K.RGBA),this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE));for(var _e in this.tiles){var ne=this.tiles[_e];ne.state!=="loaded"&&(ne.state="loaded",ne.texture=this.texture)}}},R.prototype.loadTile=function(O,K){this.tileID&&this.tileID.equals(O.tileID.canonical)?(this.tiles[String(O.tileID.wrap)]=O,O.buckets={},K(null)):(O.state="errored",K(null))},R.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},R.prototype.hasTransition=function(){return!1},R}(i.Evented);function de(Y){for(var R=1/0,J=1/0,O=-1/0,K=-1/0,_e=0,ne=Y;_eK.end(0)?this.fire(new i.ErrorEvent(new i.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+K.start(0)+" and "+K.end(0)+"-second mark."))):this.video.currentTime=O}},R.prototype.getVideo=function(){return this.video},R.prototype.onAdd=function(O){this.map||(this.map=O,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},R.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||this.video.readyState<2)){var O=this.map.painter.context,K=O.gl;this.boundsBuffer||(this.boundsBuffer=O.createVertexBuffer(this._boundsArray,ze.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE),K.texSubImage2D(K.TEXTURE_2D,0,0,0,K.RGBA,K.UNSIGNED_BYTE,this.video)):(this.texture=new i.Texture(O,this.video,K.RGBA),this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE));for(var _e in this.tiles){var ne=this.tiles[_e];ne.state!=="loaded"&&(ne.state="loaded",ne.texture=this.texture)}}},R.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},R.prototype.hasTransition=function(){return this.video&&!this.video.paused},R}(Ce),ke=function(Y){function R(J,O,K,_e){Y.call(this,J,O,K,_e),O.coordinates?(!Array.isArray(O.coordinates)||O.coordinates.length!==4||O.coordinates.some(function(ne){return!Array.isArray(ne)||ne.length!==2||ne.some(function(Le){return typeof Le!="number"})}))&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'missing required property "coordinates"'))),O.animate&&typeof O.animate!="boolean"&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'optional "animate" property must be a boolean value'))),O.canvas?typeof O.canvas!="string"&&!(O.canvas instanceof i.window.HTMLCanvasElement)&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'missing required property "canvas"'))),this.options=O,this.animate=O.animate!==void 0?O.animate:!0}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R.prototype.load=function(){if(this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof i.window.HTMLCanvasElement?this.options.canvas:i.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()){this.fire(new i.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero.")));return}this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading()},R.prototype.getCanvas=function(){return this.canvas},R.prototype.onAdd=function(O){this.map=O,this.load(),this.canvas&&this.animate&&this.play()},R.prototype.onRemove=function(){this.pause()},R.prototype.prepare=function(){var O=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,O=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,O=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var K=this.map.painter.context,_e=K.gl;this.boundsBuffer||(this.boundsBuffer=K.createVertexBuffer(this._boundsArray,ze.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(O||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new i.Texture(K,this.canvas,_e.RGBA,{premultiply:!0});for(var ne in this.tiles){var Le=this.tiles[ne];Le.state!=="loaded"&&(Le.state="loaded",Le.texture=this.texture)}}},R.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},R.prototype.hasTransition=function(){return this._playing},R.prototype._hasInvalidDimensions=function(){for(var O=0,K=[this.canvas.width,this.canvas.height];Othis.max){var Le=this._getAndRemoveByKey(this.order[0]);Le&&this.onRemove(Le)}return this},at.prototype.has=function(R){return R.wrapped().key in this.data},at.prototype.getAndRemove=function(R){return this.has(R)?this._getAndRemoveByKey(R.wrapped().key):null},at.prototype._getAndRemoveByKey=function(R){var J=this.data[R].shift();return J.timeout&&clearTimeout(J.timeout),this.data[R].length===0&&delete this.data[R],this.order.splice(this.order.indexOf(R),1),J.value},at.prototype.getByKey=function(R){var J=this.data[R];return J?J[0].value:null},at.prototype.get=function(R){if(!this.has(R))return null;var J=this.data[R.wrapped().key][0];return J.value},at.prototype.remove=function(R,J){if(!this.has(R))return this;var O=R.wrapped().key,K=J===void 0?0:this.data[O].indexOf(J),_e=this.data[O][K];return this.data[O].splice(K,1),_e.timeout&&clearTimeout(_e.timeout),this.data[O].length===0&&delete this.data[O],this.onRemove(_e.value),this.order.splice(this.order.indexOf(O),1),this},at.prototype.setMaxSize=function(R){for(this.max=R;this.order.length>this.max;){var J=this._getAndRemoveByKey(this.order[0]);J&&this.onRemove(J)}return this},at.prototype.filter=function(R){var J=[];for(var O in this.data)for(var K=0,_e=this.data[O];K<_e.length;K+=1){var ne=_e[K];R(ne.value)||J.push(ne)}for(var Le=0,Ze=J;Le1||(Math.abs(Mr)>1&&(Math.abs(Mr+$e)===1?Mr+=$e:Math.abs(Mr-$e)===1&&(Mr-=$e)),!(!dr.dem||!kt.dem)&&(kt.dem.backfillBorder(dr.dem,Mr,lr),kt.neighboringTiles&&kt.neighboringTiles[ht]&&(kt.neighboringTiles[ht].backfilled=!0)))}},R.prototype.getTile=function(O){return this.getTileByID(O.key)},R.prototype.getTileByID=function(O){return this._tiles[O]},R.prototype._retainLoadedChildren=function(O,K,_e,ne){for(var Le in this._tiles){var Ze=this._tiles[Le];if(!(ne[Le]||!Ze.hasData()||Ze.tileID.overscaledZ<=K||Ze.tileID.overscaledZ>_e)){for(var kt=Ze.tileID;Ze&&Ze.tileID.overscaledZ>K+1;){var dr=Ze.tileID.scaledTo(Ze.tileID.overscaledZ-1);Ze=this._tiles[dr.key],Ze&&Ze.hasData()&&(kt=dr)}for(var Mr=kt;Mr.overscaledZ>K;)if(Mr=Mr.scaledTo(Mr.overscaledZ-1),O[Mr.key]){ne[kt.key]=kt;break}}}},R.prototype.findLoadedParent=function(O,K){if(O.key in this._loadedParentTiles){var _e=this._loadedParentTiles[O.key];return _e&&_e.tileID.overscaledZ>=K?_e:null}for(var ne=O.overscaledZ-1;ne>=K;ne--){var Le=O.scaledTo(ne),Ze=this._getLoadedTile(Le);if(Ze)return Ze}},R.prototype._getLoadedTile=function(O){var K=this._tiles[O.key];if(K&&K.hasData())return K;var _e=this._cache.getByKey(O.wrapped().key);return _e},R.prototype.updateCacheSize=function(O){var K=Math.ceil(O.width/this._source.tileSize)+1,_e=Math.ceil(O.height/this._source.tileSize)+1,ne=K*_e,Le=5,Ze=Math.floor(ne*Le),kt=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Ze):Ze;this._cache.setMaxSize(kt)},R.prototype.handleWrapJump=function(O){var K=this._prevLng===void 0?O:this._prevLng,_e=O-K,ne=_e/360,Le=Math.round(ne);if(this._prevLng=O,Le){var Ze={};for(var kt in this._tiles){var dr=this._tiles[kt];dr.tileID=dr.tileID.unwrapTo(dr.tileID.wrap+Le),Ze[dr.tileID.key]=dr}this._tiles=Ze;for(var Mr in this._timers)clearTimeout(this._timers[Mr]),delete this._timers[Mr];for(var lr in this._tiles){var $e=this._tiles[lr];this._setTileReloadTimer(lr,$e)}}},R.prototype.update=function(O){var K=this;if(this.transform=O,!(!this._sourceLoaded||this._paused)){this.updateCacheSize(O),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={};var _e;this.used?this._source.tileID?_e=O.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(hi){return new i.OverscaledTileID(hi.canonical.z,hi.wrap,hi.canonical.z,hi.canonical.x,hi.canonical.y)}):(_e=O.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(_e=_e.filter(function(hi){return K._source.hasTile(hi)}))):_e=[];var ne=O.coveringZoomLevel(this._source),Le=Math.max(ne-R.maxOverzooming,this._source.minzoom),Ze=Math.max(ne+R.maxUnderzooming,this._source.minzoom),kt=this._updateRetainedTiles(_e,ne);if(Hr(this._source.type)){for(var dr={},Mr={},lr=Object.keys(kt),$e=0,ht=lr;$ethis._source.maxzoom){var Qt=Kt.children(this._source.maxzoom)[0],ur=this.getTile(Qt);if(ur&&ur.hasData()){_e[Qt.key]=Qt;continue}}else{var er=Kt.children(this._source.maxzoom);if(_e[er[0].key]&&_e[er[1].key]&&_e[er[2].key]&&_e[er[3].key])continue}for(var Ot=sr.wasRequested(),Jt=Kt.overscaledZ-1;Jt>=Le;--Jt){var Lt=Kt.scaledTo(Jt);if(ne[Lt.key]||(ne[Lt.key]=!0,sr=this.getTile(Lt),!sr&&Ot&&(sr=this._addTile(Lt)),sr&&(_e[Lt.key]=Lt,Ot=sr.wasRequested(),sr.hasData())))break}}}return _e},R.prototype._updateLoadedParentTileCache=function(){this._loadedParentTiles={};for(var O in this._tiles){for(var K=[],_e=void 0,ne=this._tiles[O].tileID;ne.overscaledZ>0;){if(ne.key in this._loadedParentTiles){_e=this._loadedParentTiles[ne.key];break}K.push(ne.key);var Le=ne.scaledTo(ne.overscaledZ-1);if(_e=this._getLoadedTile(Le),_e)break;ne=Le}for(var Ze=0,kt=K;Ze0)&&(K.hasData()&&K.state!=="reloading"?this._cache.add(K.tileID,K,K.getExpiryTimeout()):(K.aborted=!0,this._abortTile(K),this._unloadTile(K))))},R.prototype.clearTiles=function(){this._shouldReloadOnResume=!1,this._paused=!1;for(var O in this._tiles)this._removeTile(O);this._cache.reset()},R.prototype.tilesIn=function(O,K,_e){var ne=this,Le=[],Ze=this.transform;if(!Ze)return Le;for(var kt=_e?Ze.getCameraQueryGeometry(O):O,dr=O.map(function(Jt){return Ze.pointCoordinate(Jt)}),Mr=kt.map(function(Jt){return Ze.pointCoordinate(Jt)}),lr=this.getIds(),$e=1/0,ht=1/0,bt=-1/0,Kt=-1/0,sr=0,Qt=Mr;sr=0&&Cn[1].y+hi>=0){var Yi=dr.map(function(Xa){return Ar.getTilePoint(Xa)}),yn=Mr.map(function(Xa){return Ar.getTilePoint(Xa)});Le.push({tile:Lt,tileID:Ar,queryGeometry:Yi,cameraQueryGeometry:yn,scale:Ur})}}},Ot=0;Ot=i.browser.now())return!0}return!1},R.prototype.setFeatureState=function(O,K,_e){O=O||"_geojsonTileLayer",this._state.updateState(O,K,_e)},R.prototype.removeFeatureState=function(O,K,_e){O=O||"_geojsonTileLayer",this._state.removeFeatureState(O,K,_e)},R.prototype.getFeatureState=function(O,K){return O=O||"_geojsonTileLayer",this._state.getState(O,K)},R.prototype.setDependencies=function(O,K,_e){var ne=this._tiles[O];ne&&ne.setDependencies(K,_e)},R.prototype.reloadTilesForDependencies=function(O,K){for(var _e in this._tiles){var ne=this._tiles[_e];ne.hasDependency(O,K)&&this._reloadTile(_e,"reloading")}this._cache.filter(function(Le){return!Le.hasDependency(O,K)})},R}(i.Evented);Nr.maxOverzooming=10,Nr.maxUnderzooming=3;function Or(Y,R){var J=Math.abs(Y.wrap*2)-+(Y.wrap<0),O=Math.abs(R.wrap*2)-+(R.wrap<0);return Y.overscaledZ-R.overscaledZ||O-J||R.canonical.y-Y.canonical.y||R.canonical.x-Y.canonical.x}function Hr(Y){return Y==="raster"||Y==="image"||Y==="video"}function jr(){return new i.window.Worker(cu.workerUrl)}var gi="mapboxgl_preloaded_worker_pool",ki=function(){this.active={}};ki.prototype.acquire=function(R){if(!this.workers)for(this.workers=[];this.workers.length0?(K-ne)/Le:0;return this.points[_e].mult(1-Ze).add(this.points[J].mult(Ze))};var ii=function(R,J,O){var K=this.boxCells=[],_e=this.circleCells=[];this.xCellCount=Math.ceil(R/O),this.yCellCount=Math.ceil(J/O);for(var ne=0;nethis.width||K<0||J>this.height)return _e?!1:[];var Le=[];if(R<=0&&J<=0&&this.width<=O&&this.height<=K){if(_e)return!0;for(var Ze=0;Ze0:Le}},ii.prototype._queryCircle=function(R,J,O,K,_e){var ne=R-O,Le=R+O,Ze=J-O,kt=J+O;if(Le<0||ne>this.width||kt<0||Ze>this.height)return K?!1:[];var dr=[],Mr={hitTest:K,circle:{x:R,y:J,radius:O},seenUids:{box:{},circle:{}}};return this._forEachCell(ne,Ze,Le,kt,this._queryCellCircle,dr,Mr,_e),K?dr.length>0:dr},ii.prototype.query=function(R,J,O,K,_e){return this._query(R,J,O,K,!1,_e)},ii.prototype.hitTest=function(R,J,O,K,_e){return this._query(R,J,O,K,!0,_e)},ii.prototype.hitTestCircle=function(R,J,O,K){return this._queryCircle(R,J,O,!0,K)},ii.prototype._queryCell=function(R,J,O,K,_e,ne,Le,Ze){var kt=Le.seenUids,dr=this.boxCells[_e];if(dr!==null)for(var Mr=this.bboxes,lr=0,$e=dr;lr<$e.length;lr+=1){var ht=$e[lr];if(!kt.box[ht]){kt.box[ht]=!0;var bt=ht*4;if(R<=Mr[bt+2]&&J<=Mr[bt+3]&&O>=Mr[bt+0]&&K>=Mr[bt+1]&&(!Ze||Ze(this.boxKeys[ht]))){if(Le.hitTest)return ne.push(!0),!0;ne.push({key:this.boxKeys[ht],x1:Mr[bt],y1:Mr[bt+1],x2:Mr[bt+2],y2:Mr[bt+3]})}}}var Kt=this.circleCells[_e];if(Kt!==null)for(var sr=this.circles,Qt=0,ur=Kt;QtLe*Le+Ze*Ze},ii.prototype._circleAndRectCollide=function(R,J,O,K,_e,ne,Le){var Ze=(ne-K)/2,kt=Math.abs(R-(K+Ze));if(kt>Ze+O)return!1;var dr=(Le-_e)/2,Mr=Math.abs(J-(_e+dr));if(Mr>dr+O)return!1;if(kt<=Ze||Mr<=dr)return!0;var lr=kt-Ze,$e=Mr-dr;return lr*lr+$e*$e<=O*O};function Xi(Y,R,J,O,K){var _e=i.create();return R?(i.scale(_e,_e,[1/K,1/K,1]),J||i.rotateZ(_e,_e,O.angle)):i.multiply(_e,O.labelPlaneMatrix,Y),_e}function aa(Y,R,J,O,K){if(R){var _e=i.clone(Y);return i.scale(_e,_e,[K,K,1]),J||i.rotateZ(_e,_e,-O.angle),_e}else return O.glCoordMatrix}function Mn(Y,R){var J=[Y.x,Y.y,0,1];kn(J,J,R);var O=J[3];return{point:new i.Point(J[0]/O,J[1]/O),signedDistanceFromCamera:O}}function Un(Y,R){return .5+.5*(Y/R)}function Ga(Y,R){var J=Y[0]/Y[3],O=Y[1]/Y[3],K=J>=-R[0]&&J<=R[0]&&O>=-R[1]&&O<=R[1];return K}function ma(Y,R,J,O,K,_e,ne,Le){var Ze=O?Y.textSizeData:Y.iconSizeData,kt=i.evaluateSizeForZoom(Ze,J.transform.zoom),dr=[256/J.width*2+1,256/J.height*2+1],Mr=O?Y.text.dynamicLayoutVertexArray:Y.icon.dynamicLayoutVertexArray;Mr.clear();for(var lr=Y.lineVertexArray,$e=O?Y.text.placedSymbolArray:Y.icon.placedSymbolArray,ht=J.transform.width/J.transform.height,bt=!1,Kt=0;Kt<$e.length;Kt++){var sr=$e.get(Kt);if(sr.hidden||sr.writingMode===i.WritingMode.vertical&&!bt){fa(sr.numGlyphs,Mr);continue}bt=!1;var Qt=[sr.anchorX,sr.anchorY,0,1];if(i.transformMat4(Qt,Qt,R),!Ga(Qt,dr)){fa(sr.numGlyphs,Mr);continue}var ur=Qt[3],er=Un(J.transform.cameraToCenterDistance,ur),Ot=i.evaluateSizeForFeature(Ze,kt,sr),Jt=ne?Ot/er:Ot*er,Lt=new i.Point(sr.anchorX,sr.anchorY),Ar=Mn(Lt,K).point,Ur={},hi=so(sr,Jt,!1,Le,R,K,_e,Y.glyphOffsetArray,lr,Mr,Ar,Lt,Ur,ht);bt=hi.useVertical,(hi.notEnoughRoom||bt||hi.needsFlipping&&so(sr,Jt,!0,Le,R,K,_e,Y.glyphOffsetArray,lr,Mr,Ar,Lt,Ur,ht).notEnoughRoom)&&fa(sr.numGlyphs,Mr)}O?Y.text.dynamicLayoutVertexBuffer.updateData(Mr):Y.icon.dynamicLayoutVertexBuffer.updateData(Mr)}function oa(Y,R,J,O,K,_e,ne,Le,Ze,kt,dr){var Mr=Le.glyphStartIndex+Le.numGlyphs,lr=Le.lineStartIndex,$e=Le.lineStartIndex+Le.lineLength,ht=R.getoffsetX(Le.glyphStartIndex),bt=R.getoffsetX(Mr-1),Kt=Ia(Y*ht,J,O,K,_e,ne,Le.segment,lr,$e,Ze,kt,dr);if(!Kt)return null;var sr=Ia(Y*bt,J,O,K,_e,ne,Le.segment,lr,$e,Ze,kt,dr);return sr?{first:Kt,last:sr}:null}function ka(Y,R,J,O){if(Y===i.WritingMode.horizontal){var K=Math.abs(J.y-R.y),_e=Math.abs(J.x-R.x)*O;if(K>_e)return{useVertical:!0}}return(Y===i.WritingMode.vertical?R.yJ.x)?{needsFlipping:!0}:null}function so(Y,R,J,O,K,_e,ne,Le,Ze,kt,dr,Mr,lr,$e){var ht=R/24,bt=Y.lineOffsetX*ht,Kt=Y.lineOffsetY*ht,sr;if(Y.numGlyphs>1){var Qt=Y.glyphStartIndex+Y.numGlyphs,ur=Y.lineStartIndex,er=Y.lineStartIndex+Y.lineLength,Ot=oa(ht,Le,bt,Kt,J,dr,Mr,Y,Ze,_e,lr);if(!Ot)return{notEnoughRoom:!0};var Jt=Mn(Ot.first.point,ne).point,Lt=Mn(Ot.last.point,ne).point;if(O&&!J){var Ar=ka(Y.writingMode,Jt,Lt,$e);if(Ar)return Ar}sr=[Ot.first];for(var Ur=Y.glyphStartIndex+1;Ur0?yn.point:Kr(Mr,Yi,hi,1,K),ca=ka(Y.writingMode,hi,Xa,$e);if(ca)return ca}var An=Ia(ht*Le.getoffsetX(Y.glyphStartIndex),bt,Kt,J,dr,Mr,Y.segment,Y.lineStartIndex,Y.lineStartIndex+Y.lineLength,Ze,_e,lr);if(!An)return{notEnoughRoom:!0};sr=[An]}for(var Pn=0,Nn=sr;Pn0?1:-1,ht=0;O&&($e*=-1,ht=Math.PI),$e<0&&(ht+=Math.PI);for(var bt=$e>0?Le+ne:Le+ne+1,Kt=K,sr=K,Qt=0,ur=0,er=Math.abs(lr),Ot=[];Qt+ur<=er;){if(bt+=$e,bt=Ze)return null;if(sr=Kt,Ot.push(Kt),Kt=Mr[bt],Kt===void 0){var Jt=new i.Point(kt.getx(bt),kt.gety(bt)),Lt=Mn(Jt,dr);if(Lt.signedDistanceFromCamera>0)Kt=Mr[bt]=Lt.point;else{var Ar=bt-$e,Ur=Qt===0?_e:new i.Point(kt.getx(Ar),kt.gety(Ar));Kt=Kr(Ur,Jt,sr,er-Qt+1,dr)}}Qt+=ur,ur=sr.dist(Kt)}var hi=(er-Qt)/ur,Cn=Kt.sub(sr),Yi=Cn.mult(hi)._add(sr);Yi._add(Cn._unit()._perp()._mult(J*$e));var yn=ht+Math.atan2(Kt.y-sr.y,Kt.x-sr.x);return Ot.push(Yi),{point:Yi,angle:yn,path:Ot}}var Yo=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function fa(Y,R){for(var J=0;J=1;xa--)Nn.push(An.path[xa]);for(var Zo=1;Zo0){for(var vu=Nn[0].clone(),zu=Nn[0].clone(),Ju=1;Ju=yn.x&&zu.x<=Xa.x&&vu.y>=yn.y&&zu.y<=Xa.y?Du=[Nn]:zu.xXa.x||zu.yXa.y?Du=[]:Du=i.clipLine([Nn],yn.x,yn.y,Xa.x,Xa.y)}for(var Vf=0,wd=Du;Vf=this.screenRightBoundary||Kthis.screenBottomBoundary},ys.prototype.isInsideGrid=function(R,J,O,K){return O>=0&&R=0&&J0){var er;return this.prevPlacement&&this.prevPlacement.variableOffsets[lr.crossTileID]&&this.prevPlacement.placements[lr.crossTileID]&&this.prevPlacement.placements[lr.crossTileID].text&&(er=this.prevPlacement.variableOffsets[lr.crossTileID].anchor),this.variableOffsets[lr.crossTileID]={textOffset:Kt,width:O,height:K,anchor:R,textBoxScale:_e,prevAnchor:er},this.markUsedJustification($e,R,lr,ht),$e.allowVerticalPlacement&&(this.markUsedOrientation($e,ht,lr),this.placedOrientations[lr.crossTileID]=ht),{shift:sr,placedGlyphBoxes:Qt}}},Po.prototype.placeLayerBucketPart=function(R,J,O){var K=this,_e=R.parameters,ne=_e.bucket,Le=_e.layout,Ze=_e.posMatrix,kt=_e.textLabelPlaneMatrix,dr=_e.labelToScreenMatrix,Mr=_e.textPixelRatio,lr=_e.holdingForFade,$e=_e.collisionBoxArray,ht=_e.partiallyEvaluatedTextSize,bt=_e.collisionGroup,Kt=Le.get("text-optional"),sr=Le.get("icon-optional"),Qt=Le.get("text-allow-overlap"),ur=Le.get("icon-allow-overlap"),er=Le.get("text-rotation-alignment")==="map",Ot=Le.get("text-pitch-alignment")==="map",Jt=Le.get("icon-text-fit")!=="none",Lt=Le.get("symbol-z-order")==="viewport-y",Ar=Qt&&(ur||!ne.hasIconData()||sr),Ur=ur&&(Qt||!ne.hasTextData()||Kt);!ne.collisionArrays&&$e&&ne.deserializeCollisionBoxes($e);var hi=function(An,Pn){if(!J[An.crossTileID]){if(lr){K.placements[An.crossTileID]=new fo(!1,!1,!1);return}var Nn=!1,xa=!1,Zo=!0,ru=null,yu={box:null,offscreen:null},Du={box:null,offscreen:null},vu=null,zu=null,Ju=null,Vf=0,wd=0,Td=0;Pn.textFeatureIndex?Vf=Pn.textFeatureIndex:An.useRuntimeCollisionCircles&&(Vf=An.featureIndex),Pn.verticalTextFeatureIndex&&(wd=Pn.verticalTextFeatureIndex);var Ad=Pn.textBox;if(Ad){var Kp=function(wc){var Wf=i.WritingMode.horizontal;if(ne.allowVerticalPlacement&&!wc&&K.prevPlacement){var Ed=K.prevPlacement.placedOrientations[An.crossTileID];Ed&&(K.placedOrientations[An.crossTileID]=Ed,Wf=Ed,K.markUsedOrientation(ne,Wf,An))}return Wf},fm=function(wc,Wf){if(ne.allowVerticalPlacement&&An.numVerticalGlyphVertices>0&&Pn.verticalTextBox)for(var Ed=0,lg=ne.writingModes;Ed0&&(Hd=Hd.filter(function(wc){return wc!==Md.anchor}),Hd.unshift(Md.anchor))}var Pp=function(wc,Wf,Ed){for(var lg=wc.x2-wc.x1,T1=wc.y2-wc.y1,ic=An.textBoxScale,Nx=Jt&&!ur?Wf:null,oy={box:[],offscreen:!1},kw=Qt?Hd.length*2:Hd.length,Ip=0;Ip=Hd.length,Ux=K.attemptAnchorPlacement(sy,wc,lg,T1,ic,er,Ot,Mr,Ze,bt,Cw,An,ne,Ed,Nx);if(Ux&&(oy=Ux.placedGlyphBoxes,oy&&oy.box&&oy.box.length)){Nn=!0,ru=Ux.shift;break}}return oy},Jp=function(){return Pp(Ad,Pn.iconBox,i.WritingMode.horizontal)},zp=function(){var wc=Pn.verticalTextBox,Wf=yu&&yu.box&&yu.box.length;return ne.allowVerticalPlacement&&!Wf&&An.numVerticalGlyphVertices>0&&wc?Pp(wc,Pn.verticalIconBox,i.WritingMode.vertical):{box:null,offscreen:null}};fm(Jp,zp),yu&&(Nn=yu.box,Zo=yu.offscreen);var ag=Kp(yu&&yu.box);if(!Nn&&K.prevPlacement){var cm=K.prevPlacement.variableOffsets[An.crossTileID];cm&&(K.variableOffsets[An.crossTileID]=cm,K.markUsedJustification(ne,cm.anchor,An,ag))}}else{var vv=function(wc,Wf){var Ed=K.collisionIndex.placeCollisionBox(wc,Qt,Mr,Ze,bt.predicate);return Ed&&Ed.box&&Ed.box.length&&(K.markUsedOrientation(ne,Wf,An),K.placedOrientations[An.crossTileID]=Wf),Ed},Sd=function(){return vv(Ad,i.WritingMode.horizontal)},mv=function(){var wc=Pn.verticalTextBox;return ne.allowVerticalPlacement&&An.numVerticalGlyphVertices>0&&wc?vv(wc,i.WritingMode.vertical):{box:null,offscreen:null}};fm(Sd,mv),Kp(yu&&yu.box&&yu.box.length)}}if(vu=yu,Nn=vu&&vu.box&&vu.box.length>0,Zo=vu&&vu.offscreen,An.useRuntimeCollisionCircles){var vh=ne.text.placedSymbolArray.get(An.centerJustifiedTextSymbolIndex),hm=i.evaluateSizeForFeature(ne.textSizeData,ht,vh),og=Le.get("text-padding"),Zh=An.collisionCircleDiameter;zu=K.collisionIndex.placeCollisionCircles(Qt,vh,ne.lineVertexArray,ne.glyphOffsetArray,hm,Ze,kt,dr,O,Ot,bt.predicate,Zh,og),Nn=Qt||zu.circles.length>0&&!zu.collisionDetected,Zo=Zo&&zu.offscreen}if(Pn.iconFeatureIndex&&(Td=Pn.iconFeatureIndex),Pn.iconBox){var iy=function(wc){var Wf=Jt&&ru?Co(wc,ru.x,ru.y,er,Ot,K.transform.angle):wc;return K.collisionIndex.placeCollisionBox(Wf,ur,Mr,Ze,bt.predicate)};Du&&Du.box&&Du.box.length&&Pn.verticalIconBox?(Ju=iy(Pn.verticalIconBox),xa=Ju.box.length>0):(Ju=iy(Pn.iconBox),xa=Ju.box.length>0),Zo=Zo&&Ju.offscreen}var b1=Kt||An.numHorizontalGlyphVertices===0&&An.numVerticalGlyphVertices===0,w1=sr||An.numIconVertices===0;if(!b1&&!w1?xa=Nn=xa&&Nn:w1?b1||(xa=xa&&Nn):Nn=xa&&Nn,Nn&&vu&&vu.box&&(Du&&Du.box&&wd?K.collisionIndex.insertCollisionBox(vu.box,Le.get("text-ignore-placement"),ne.bucketInstanceId,wd,bt.ID):K.collisionIndex.insertCollisionBox(vu.box,Le.get("text-ignore-placement"),ne.bucketInstanceId,Vf,bt.ID)),xa&&Ju&&K.collisionIndex.insertCollisionBox(Ju.box,Le.get("icon-ignore-placement"),ne.bucketInstanceId,Td,bt.ID),zu&&(Nn&&K.collisionIndex.insertCollisionCircles(zu.circles,Le.get("text-ignore-placement"),ne.bucketInstanceId,Vf,bt.ID),O)){var sg=ne.bucketInstanceId,ny=K.collisionCircleArrays[sg];ny===void 0&&(ny=K.collisionCircleArrays[sg]=new mn);for(var ay=0;ay=0;--Yi){var yn=Cn[Yi];hi(ne.symbolInstances.get(yn),ne.collisionArrays[yn])}else for(var Xa=R.symbolInstanceStart;Xa=0&&(ne>=0&&dr!==ne?R.text.placedSymbolArray.get(dr).crossTileID=0:R.text.placedSymbolArray.get(dr).crossTileID=O.crossTileID)}},Po.prototype.markUsedOrientation=function(R,J,O){for(var K=J===i.WritingMode.horizontal||J===i.WritingMode.horizontalOnly?J:0,_e=J===i.WritingMode.vertical?J:0,ne=[O.leftJustifiedTextSymbolIndex,O.centerJustifiedTextSymbolIndex,O.rightJustifiedTextSymbolIndex],Le=0,Ze=ne;Le0||Ot>0,hi=ur.numIconVertices>0,Cn=K.placedOrientations[ur.crossTileID],Yi=Cn===i.WritingMode.vertical,yn=Cn===i.WritingMode.horizontal||Cn===i.WritingMode.horizontalOnly;if(Ur){var Xa=Qo(Ar.text),ca=Yi?Hi:Xa;ht(R.text,er,ca);var An=yn?Hi:Xa;ht(R.text,Ot,An);var Pn=Ar.text.isHidden();[ur.rightJustifiedTextSymbolIndex,ur.centerJustifiedTextSymbolIndex,ur.leftJustifiedTextSymbolIndex].forEach(function(Td){Td>=0&&(R.text.placedSymbolArray.get(Td).hidden=Pn||Yi?1:0)}),ur.verticalPlacedTextSymbolIndex>=0&&(R.text.placedSymbolArray.get(ur.verticalPlacedTextSymbolIndex).hidden=Pn||yn?1:0);var Nn=K.variableOffsets[ur.crossTileID];Nn&&K.markUsedJustification(R,Nn.anchor,ur,Cn);var xa=K.placedOrientations[ur.crossTileID];xa&&(K.markUsedJustification(R,"left",ur,xa),K.markUsedOrientation(R,xa,ur))}if(hi){var Zo=Qo(Ar.icon),ru=!(lr&&ur.verticalPlacedIconSymbolIndex&&Yi);if(ur.placedIconSymbolIndex>=0){var yu=ru?Zo:Hi;ht(R.icon,ur.numIconVertices,yu),R.icon.placedSymbolArray.get(ur.placedIconSymbolIndex).hidden=Ar.icon.isHidden()}if(ur.verticalPlacedIconSymbolIndex>=0){var Du=ru?Hi:Zo;ht(R.icon,ur.numVerticalIconVertices,Du),R.icon.placedSymbolArray.get(ur.verticalPlacedIconSymbolIndex).hidden=Ar.icon.isHidden()}}if(R.hasIconCollisionBoxData()||R.hasTextCollisionBoxData()){var vu=R.collisionArrays[Qt];if(vu){var zu=new i.Point(0,0);if(vu.textBox||vu.verticalTextBox){var Ju=!0;if(kt){var Vf=K.variableOffsets[Jt];Vf?(zu=ws(Vf.anchor,Vf.width,Vf.height,Vf.textOffset,Vf.textBoxScale),dr&&zu._rotate(Mr?K.transform.angle:-K.transform.angle)):Ju=!1}vu.textBox&&Wi(R.textCollisionBox.collisionVertexArray,Ar.text.placed,!Ju||Yi,zu.x,zu.y),vu.verticalTextBox&&Wi(R.textCollisionBox.collisionVertexArray,Ar.text.placed,!Ju||yn,zu.x,zu.y)}var wd=!!(!yn&&vu.verticalIconBox);vu.iconBox&&Wi(R.iconCollisionBox.collisionVertexArray,Ar.icon.placed,wd,lr?zu.x:0,lr?zu.y:0),vu.verticalIconBox&&Wi(R.iconCollisionBox.collisionVertexArray,Ar.icon.placed,!wd,lr?zu.x:0,lr?zu.y:0)}}},Kt=0;KtR},Po.prototype.setStale=function(){this.stale=!0};function Wi(Y,R,J,O,K){Y.emplaceBack(R?1:0,J?1:0,O||0,K||0),Y.emplaceBack(R?1:0,J?1:0,O||0,K||0),Y.emplaceBack(R?1:0,J?1:0,O||0,K||0),Y.emplaceBack(R?1:0,J?1:0,O||0,K||0)}var gn=Math.pow(2,25),Ps=Math.pow(2,24),Ha=Math.pow(2,17),Sn=Math.pow(2,16),ao=Math.pow(2,9),Ba=Math.pow(2,8),Ko=Math.pow(2,1);function Qo(Y){if(Y.opacity===0&&!Y.placed)return 0;if(Y.opacity===1&&Y.placed)return 4294967295;var R=Y.placed?1:0,J=Math.floor(Y.opacity*127);return J*gn+R*Ps+J*Ha+R*Sn+J*ao+R*Ba+J*Ko+R}var Hi=0,Sa=function(R){this._sortAcrossTiles=R.layout.get("symbol-z-order")!=="viewport-y"&&R.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};Sa.prototype.continuePlacement=function(R,J,O,K,_e){for(var ne=this._bucketParts;this._currentTileIndex2};this._currentPlacementIndex>=0;){var Le=R[this._currentPlacementIndex],Ze=J[Le],kt=this.placement.collisionIndex.transform.zoom;if(Ze.type==="symbol"&&(!Ze.minzoom||Ze.minzoom<=kt)&&(!Ze.maxzoom||Ze.maxzoom>kt)){this._inProgressLayer||(this._inProgressLayer=new Sa(Ze));var dr=this._inProgressLayer.continuePlacement(O[Ze.source],this.placement,this._showCollisionBoxes,Ze,ne);if(dr)return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},Qa.prototype.commit=function(R){return this.placement.commit(R),this.placement};var vn=512/i.EXTENT/2,da=function(R,J,O){this.tileID=R,this.indexedSymbolInstances={},this.bucketInstanceId=O;for(var K=0;KR.overscaledZ)for(var kt in Ze){var dr=Ze[kt];dr.tileID.isChildOf(R)&&dr.findMatches(J.symbolInstances,R,ne)}else{var Mr=R.scaledTo(Number(Le)),lr=Ze[Mr.key];lr&&lr.findMatches(J.symbolInstances,R,ne)}}for(var $e=0;$e0)throw new Error("Unimplemented: "+ne.map(function(Le){return Le.command}).join(", ")+".");return _e.forEach(function(Le){Le.command!=="setTransition"&&K[Le.command].apply(K,Le.args)}),this.stylesheet=O,!0},R.prototype.addImage=function(O,K){if(this.getImage(O))return this.fire(new i.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(O,K),this._afterImageUpdated(O)},R.prototype.updateImage=function(O,K){this.imageManager.updateImage(O,K)},R.prototype.getImage=function(O){return this.imageManager.getImage(O)},R.prototype.removeImage=function(O){if(!this.getImage(O))return this.fire(new i.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(O),this._afterImageUpdated(O)},R.prototype._afterImageUpdated=function(O){this._availableImages=this.imageManager.listImages(),this._changedImages[O]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new i.Event("data",{dataType:"style"}))},R.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},R.prototype.addSource=function(O,K,_e){var ne=this;if(_e===void 0&&(_e={}),this._checkLoaded(),this.sourceCaches[O]!==void 0)throw new Error("There is already a source with this ID");if(!K.type)throw new Error("The type property must be defined, but only the following properties were given: "+Object.keys(K).join(", ")+".");var Le=["vector","raster","geojson","video","image"],Ze=Le.indexOf(K.type)>=0;if(!(Ze&&this._validate(i.validateStyle.source,"sources."+O,K,null,_e))){this.map&&this.map._collectResourceTiming&&(K.collectResourceTiming=!0);var kt=this.sourceCaches[O]=new Nr(O,K,this.dispatcher);kt.style=this,kt.setEventedParent(this,function(){return{isSourceLoaded:ne.loaded(),source:kt.serialize(),sourceId:O}}),kt.onAdd(this.map),this._changed=!0}},R.prototype.removeSource=function(O){if(this._checkLoaded(),this.sourceCaches[O]===void 0)throw new Error("There is no source with this ID");for(var K in this._layers)if(this._layers[K].source===O)return this.fire(new i.ErrorEvent(new Error('Source "'+O+'" cannot be removed while layer "'+K+'" is using it.')));var _e=this.sourceCaches[O];delete this.sourceCaches[O],delete this._updatedSources[O],_e.fire(new i.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:O})),_e.setEventedParent(null),_e.clearTiles(),_e.onRemove&&_e.onRemove(this.map),this._changed=!0},R.prototype.setGeoJSONSourceData=function(O,K){this._checkLoaded();var _e=this.sourceCaches[O].getSource();_e.setData(K),this._changed=!0},R.prototype.getSource=function(O){return this.sourceCaches[O]&&this.sourceCaches[O].getSource()},R.prototype.addLayer=function(O,K,_e){_e===void 0&&(_e={}),this._checkLoaded();var ne=O.id;if(this.getLayer(ne)){this.fire(new i.ErrorEvent(new Error('Layer with id "'+ne+'" already exists on this map')));return}var Le;if(O.type==="custom"){if(ps(this,i.validateCustomStyleLayer(O)))return;Le=i.createStyleLayer(O)}else{if(typeof O.source=="object"&&(this.addSource(ne,O.source),O=i.clone$1(O),O=i.extend(O,{source:ne})),this._validate(i.validateStyle.layer,"layers."+ne,O,{arrayIndex:-1},_e))return;Le=i.createStyleLayer(O),this._validateLayer(Le),Le.setEventedParent(this,{layer:{id:ne}}),this._serializedLayers[Le.id]=Le.serialize()}var Ze=K?this._order.indexOf(K):this._order.length;if(K&&Ze===-1){this.fire(new i.ErrorEvent(new Error('Layer with id "'+K+'" does not exist on this map.')));return}if(this._order.splice(Ze,0,ne),this._layerOrderChanged=!0,this._layers[ne]=Le,this._removedLayers[ne]&&Le.source&&Le.type!=="custom"){var kt=this._removedLayers[ne];delete this._removedLayers[ne],kt.type!==Le.type?this._updatedSources[Le.source]="clear":(this._updatedSources[Le.source]="reload",this.sourceCaches[Le.source].pause())}this._updateLayer(Le),Le.onAdd&&Le.onAdd(this.map)},R.prototype.moveLayer=function(O,K){this._checkLoaded(),this._changed=!0;var _e=this._layers[O];if(!_e){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be moved.")));return}if(O!==K){var ne=this._order.indexOf(O);this._order.splice(ne,1);var Le=K?this._order.indexOf(K):this._order.length;if(K&&Le===-1){this.fire(new i.ErrorEvent(new Error('Layer with id "'+K+'" does not exist on this map.')));return}this._order.splice(Le,0,O),this._layerOrderChanged=!0}},R.prototype.removeLayer=function(O){this._checkLoaded();var K=this._layers[O];if(!K){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be removed.")));return}K.setEventedParent(null);var _e=this._order.indexOf(O);this._order.splice(_e,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[O]=K,delete this._layers[O],delete this._serializedLayers[O],delete this._updatedLayers[O],delete this._updatedPaintProps[O],K.onRemove&&K.onRemove(this.map)},R.prototype.getLayer=function(O){return this._layers[O]},R.prototype.hasLayer=function(O){return O in this._layers},R.prototype.setLayerZoomRange=function(O,K,_e){this._checkLoaded();var ne=this.getLayer(O);if(!ne){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot have zoom extent.")));return}ne.minzoom===K&&ne.maxzoom===_e||(K!=null&&(ne.minzoom=K),_e!=null&&(ne.maxzoom=_e),this._updateLayer(ne))},R.prototype.setFilter=function(O,K,_e){_e===void 0&&(_e={}),this._checkLoaded();var ne=this.getLayer(O);if(!ne){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be filtered.")));return}if(!i.deepEqual(ne.filter,K)){if(K==null){ne.filter=void 0,this._updateLayer(ne);return}this._validate(i.validateStyle.filter,"layers."+ne.id+".filter",K,null,_e)||(ne.filter=i.clone$1(K),this._updateLayer(ne))}},R.prototype.getFilter=function(O){return i.clone$1(this.getLayer(O).filter)},R.prototype.setLayoutProperty=function(O,K,_e,ne){ne===void 0&&(ne={}),this._checkLoaded();var Le=this.getLayer(O);if(!Le){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be styled.")));return}i.deepEqual(Le.getLayoutProperty(K),_e)||(Le.setLayoutProperty(K,_e,ne),this._updateLayer(Le))},R.prototype.getLayoutProperty=function(O,K){var _e=this.getLayer(O);if(!_e){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style.")));return}return _e.getLayoutProperty(K)},R.prototype.setPaintProperty=function(O,K,_e,ne){ne===void 0&&(ne={}),this._checkLoaded();var Le=this.getLayer(O);if(!Le){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be styled.")));return}if(!i.deepEqual(Le.getPaintProperty(K),_e)){var Ze=Le.setPaintProperty(K,_e,ne);Ze&&this._updateLayer(Le),this._changed=!0,this._updatedPaintProps[O]=!0}},R.prototype.getPaintProperty=function(O,K){return this.getLayer(O).getPaintProperty(K)},R.prototype.setFeatureState=function(O,K){this._checkLoaded();var _e=O.source,ne=O.sourceLayer,Le=this.sourceCaches[_e];if(Le===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+_e+"' does not exist in the map's style.")));return}var Ze=Le.getSource().type;if(Ze==="geojson"&&ne){this.fire(new i.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));return}if(Ze==="vector"&&!ne){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}O.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),Le.setFeatureState(ne,O.id,K)},R.prototype.removeFeatureState=function(O,K){this._checkLoaded();var _e=O.source,ne=this.sourceCaches[_e];if(ne===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+_e+"' does not exist in the map's style.")));return}var Le=ne.getSource().type,Ze=Le==="vector"?O.sourceLayer:void 0;if(Le==="vector"&&!Ze){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}if(K&&typeof O.id!="string"&&typeof O.id!="number"){this.fire(new i.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));return}ne.removeFeatureState(Ze,O.id,K)},R.prototype.getFeatureState=function(O){this._checkLoaded();var K=O.source,_e=O.sourceLayer,ne=this.sourceCaches[K];if(ne===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+K+"' does not exist in the map's style.")));return}var Le=ne.getSource().type;if(Le==="vector"&&!_e){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}return O.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),ne.getFeatureState(_e,O.id)},R.prototype.getTransition=function(){return i.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},R.prototype.serialize=function(){return i.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:i.mapObject(this.sourceCaches,function(O){return O.serialize()}),layers:this._serializeLayers(this._order)},function(O){return O!==void 0})},R.prototype._updateLayer=function(O){this._updatedLayers[O.id]=!0,O.source&&!this._updatedSources[O.source]&&this.sourceCaches[O.source].getSource().type!=="raster"&&(this._updatedSources[O.source]="reload",this.sourceCaches[O.source].pause()),this._changed=!0},R.prototype._flattenAndSortRenderedFeatures=function(O){for(var K=this,_e=function(yn){return K._layers[yn].type==="fill-extrusion"},ne={},Le=[],Ze=this._order.length-1;Ze>=0;Ze--){var kt=this._order[Ze];if(_e(kt)){ne[kt]=Ze;for(var dr=0,Mr=O;dr=0;Qt--){var ur=this._order[Qt];if(_e(ur))for(var er=Le.length-1;er>=0;er--){var Ot=Le[er].feature;if(ne[Ot.layer.id]>16,Le>>16],u_pixel_coord_lower:[ne&65535,Le&65535]}}function cl(Y,R,J,O){var K=J.imageManager.getPattern(Y.from.toString()),_e=J.imageManager.getPattern(Y.to.toString()),ne=J.imageManager.getPixelSize(),Le=ne.width,Ze=ne.height,kt=Math.pow(2,O.tileID.overscaledZ),dr=O.tileSize*Math.pow(2,J.transform.tileZoom)/kt,Mr=dr*(O.tileID.canonical.x+O.tileID.wrap*kt),lr=dr*O.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:K.tl,u_pattern_br_a:K.br,u_pattern_tl_b:_e.tl,u_pattern_br_b:_e.br,u_texsize:[Le,Ze],u_mix:R.t,u_pattern_size_a:K.displaySize,u_pattern_size_b:_e.displaySize,u_scale_a:R.fromScale,u_scale_b:R.toScale,u_tile_units_to_pixels:1/uo(O,1,J.transform.tileZoom),u_pixel_coord_upper:[Mr>>16,lr>>16],u_pixel_coord_lower:[Mr&65535,lr&65535]}}var el=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_lightpos:new i.Uniform3f(Y,R.u_lightpos),u_lightintensity:new i.Uniform1f(Y,R.u_lightintensity),u_lightcolor:new i.Uniform3f(Y,R.u_lightcolor),u_vertical_gradient:new i.Uniform1f(Y,R.u_vertical_gradient),u_opacity:new i.Uniform1f(Y,R.u_opacity)}},Hs=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_lightpos:new i.Uniform3f(Y,R.u_lightpos),u_lightintensity:new i.Uniform1f(Y,R.u_lightintensity),u_lightcolor:new i.Uniform3f(Y,R.u_lightcolor),u_vertical_gradient:new i.Uniform1f(Y,R.u_vertical_gradient),u_height_factor:new i.Uniform1f(Y,R.u_height_factor),u_image:new i.Uniform1i(Y,R.u_image),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,R.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,R.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,R.u_scale),u_fade:new i.Uniform1f(Y,R.u_fade),u_opacity:new i.Uniform1f(Y,R.u_opacity)}},Ro=function(Y,R,J,O){var K=R.style.light,_e=K.properties.get("position"),ne=[_e.x,_e.y,_e.z],Le=i.create$1();K.properties.get("anchor")==="viewport"&&i.fromRotation(Le,-R.transform.angle),i.transformMat3(ne,ne,Le);var Ze=K.properties.get("color");return{u_matrix:Y,u_lightpos:ne,u_lightintensity:K.properties.get("intensity"),u_lightcolor:[Ze.r,Ze.g,Ze.b],u_vertical_gradient:+J,u_opacity:O}},tl=function(Y,R,J,O,K,_e,ne){return i.extend(Ro(Y,R,J,O),fs(_e,R,ne),{u_height_factor:-Math.pow(2,K.overscaledZ)/ne.tileSize/8})},Fs=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix)}},hl=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_image:new i.Uniform1i(Y,R.u_image),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,R.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,R.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,R.u_scale),u_fade:new i.Uniform1f(Y,R.u_fade)}},Fa=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_world:new i.Uniform2f(Y,R.u_world)}},Ms=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_world:new i.Uniform2f(Y,R.u_world),u_image:new i.Uniform1i(Y,R.u_image),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,R.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,R.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,R.u_scale),u_fade:new i.Uniform1f(Y,R.u_fade)}},jo=function(Y){return{u_matrix:Y}},Rs=function(Y,R,J,O){return i.extend(jo(Y),fs(J,R,O))},Is=function(Y,R){return{u_matrix:Y,u_world:R}},Bs=function(Y,R,J,O,K){return i.extend(Rs(Y,R,J,O),{u_world:K})},At=function(Y,R){return{u_camera_to_center_distance:new i.Uniform1f(Y,R.u_camera_to_center_distance),u_scale_with_map:new i.Uniform1i(Y,R.u_scale_with_map),u_pitch_with_map:new i.Uniform1i(Y,R.u_pitch_with_map),u_extrude_scale:new i.Uniform2f(Y,R.u_extrude_scale),u_device_pixel_ratio:new i.Uniform1f(Y,R.u_device_pixel_ratio),u_matrix:new i.UniformMatrix4f(Y,R.u_matrix)}},Vt=function(Y,R,J,O){var K=Y.transform,_e,ne;if(O.paint.get("circle-pitch-alignment")==="map"){var Le=uo(J,1,K.zoom);_e=!0,ne=[Le,Le]}else _e=!1,ne=K.pixelsToGLUnits;return{u_camera_to_center_distance:K.cameraToCenterDistance,u_scale_with_map:+(O.paint.get("circle-pitch-scale")==="map"),u_matrix:Y.translatePosMatrix(R.posMatrix,J,O.paint.get("circle-translate"),O.paint.get("circle-translate-anchor")),u_pitch_with_map:+_e,u_device_pixel_ratio:i.browser.devicePixelRatio,u_extrude_scale:ne}},wr=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_camera_to_center_distance:new i.Uniform1f(Y,R.u_camera_to_center_distance),u_pixels_to_tile_units:new i.Uniform1f(Y,R.u_pixels_to_tile_units),u_extrude_scale:new i.Uniform2f(Y,R.u_extrude_scale),u_overscale_factor:new i.Uniform1f(Y,R.u_overscale_factor)}},mr=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_inv_matrix:new i.UniformMatrix4f(Y,R.u_inv_matrix),u_camera_to_center_distance:new i.Uniform1f(Y,R.u_camera_to_center_distance),u_viewport_size:new i.Uniform2f(Y,R.u_viewport_size)}},Fr=function(Y,R,J){var O=uo(J,1,R.zoom),K=Math.pow(2,R.zoom-J.tileID.overscaledZ),_e=J.tileID.overscaleFactor();return{u_matrix:Y,u_camera_to_center_distance:R.cameraToCenterDistance,u_pixels_to_tile_units:O,u_extrude_scale:[R.pixelsToGLUnits[0]/(O*K),R.pixelsToGLUnits[1]/(O*K)],u_overscale_factor:_e}},_i=function(Y,R,J){return{u_matrix:Y,u_inv_matrix:R,u_camera_to_center_distance:J.cameraToCenterDistance,u_viewport_size:[J.width,J.height]}},Si=function(Y,R){return{u_color:new i.UniformColor(Y,R.u_color),u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_overlay:new i.Uniform1i(Y,R.u_overlay),u_overlay_scale:new i.Uniform1f(Y,R.u_overlay_scale)}},Ci=function(Y,R,J){return J===void 0&&(J=1),{u_matrix:Y,u_color:R,u_overlay:0,u_overlay_scale:J}},Ki=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix)}},Fn=function(Y){return{u_matrix:Y}},Pi=function(Y,R){return{u_extrude_scale:new i.Uniform1f(Y,R.u_extrude_scale),u_intensity:new i.Uniform1f(Y,R.u_intensity),u_matrix:new i.UniformMatrix4f(Y,R.u_matrix)}},di=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_world:new i.Uniform2f(Y,R.u_world),u_image:new i.Uniform1i(Y,R.u_image),u_color_ramp:new i.Uniform1i(Y,R.u_color_ramp),u_opacity:new i.Uniform1f(Y,R.u_opacity)}},Li=function(Y,R,J,O){return{u_matrix:Y,u_extrude_scale:uo(R,1,J),u_intensity:O}},Mi=function(Y,R,J,O){var K=i.create();i.ortho(K,0,Y.width,Y.height,0,0,1);var _e=Y.context.gl;return{u_matrix:K,u_world:[_e.drawingBufferWidth,_e.drawingBufferHeight],u_image:J,u_color_ramp:O,u_opacity:R.paint.get("heatmap-opacity")}},Gn=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_image:new i.Uniform1i(Y,R.u_image),u_latrange:new i.Uniform2f(Y,R.u_latrange),u_light:new i.Uniform2f(Y,R.u_light),u_shadow:new i.UniformColor(Y,R.u_shadow),u_highlight:new i.UniformColor(Y,R.u_highlight),u_accent:new i.UniformColor(Y,R.u_accent)}},ta=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_image:new i.Uniform1i(Y,R.u_image),u_dimension:new i.Uniform2f(Y,R.u_dimension),u_zoom:new i.Uniform1f(Y,R.u_zoom),u_unpack:new i.Uniform4f(Y,R.u_unpack)}},ya=function(Y,R,J){var O=J.paint.get("hillshade-shadow-color"),K=J.paint.get("hillshade-highlight-color"),_e=J.paint.get("hillshade-accent-color"),ne=J.paint.get("hillshade-illumination-direction")*(Math.PI/180);J.paint.get("hillshade-illumination-anchor")==="viewport"&&(ne-=Y.transform.angle);var Le=!Y.options.moving;return{u_matrix:Y.transform.calculatePosMatrix(R.tileID.toUnwrapped(),Le),u_image:0,u_latrange:pa(Y,R.tileID),u_light:[J.paint.get("hillshade-exaggeration"),ne],u_shadow:O,u_highlight:K,u_accent:_e}},ia=function(Y,R){var J=R.stride,O=i.create();return i.ortho(O,0,i.EXTENT,-i.EXTENT,0,0,1),i.translate(O,O,[0,-i.EXTENT,0]),{u_matrix:O,u_image:1,u_dimension:[J,J],u_zoom:Y.overscaledZ,u_unpack:R.getUnpackVector()}};function pa(Y,R){var J=Math.pow(2,R.canonical.z),O=R.canonical.y;return[new i.MercatorCoordinate(0,O/J).toLngLat().lat,new i.MercatorCoordinate(0,(O+1)/J).toLngLat().lat]}var va=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_ratio:new i.Uniform1f(Y,R.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,R.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,R.u_units_to_pixels)}},zn=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_ratio:new i.Uniform1f(Y,R.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,R.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,R.u_units_to_pixels),u_image:new i.Uniform1i(Y,R.u_image),u_image_height:new i.Uniform1f(Y,R.u_image_height)}},is=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_ratio:new i.Uniform1f(Y,R.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,R.u_device_pixel_ratio),u_image:new i.Uniform1i(Y,R.u_image),u_units_to_pixels:new i.Uniform2f(Y,R.u_units_to_pixels),u_scale:new i.Uniform3f(Y,R.u_scale),u_fade:new i.Uniform1f(Y,R.u_fade)}},Cs=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_ratio:new i.Uniform1f(Y,R.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,R.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,R.u_units_to_pixels),u_patternscale_a:new i.Uniform2f(Y,R.u_patternscale_a),u_patternscale_b:new i.Uniform2f(Y,R.u_patternscale_b),u_sdfgamma:new i.Uniform1f(Y,R.u_sdfgamma),u_image:new i.Uniform1i(Y,R.u_image),u_tex_y_a:new i.Uniform1f(Y,R.u_tex_y_a),u_tex_y_b:new i.Uniform1f(Y,R.u_tex_y_b),u_mix:new i.Uniform1f(Y,R.u_mix)}},Ks=function(Y,R,J){var O=Y.transform;return{u_matrix:eu(Y,R,J),u_ratio:1/uo(R,1,O.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_units_to_pixels:[1/O.pixelsToGLUnits[0],1/O.pixelsToGLUnits[1]]}},dl=function(Y,R,J,O){return i.extend(Ks(Y,R,J),{u_image:0,u_image_height:O})},xl=function(Y,R,J,O){var K=Y.transform,_e=bl(R,K);return{u_matrix:eu(Y,R,J),u_texsize:R.imageAtlasTexture.size,u_ratio:1/uo(R,1,K.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_image:0,u_scale:[_e,O.fromScale,O.toScale],u_fade:O.t,u_units_to_pixels:[1/K.pixelsToGLUnits[0],1/K.pixelsToGLUnits[1]]}},Bl=function(Y,R,J,O,K){var _e=Y.transform,ne=Y.lineAtlas,Le=bl(R,_e),Ze=J.layout.get("line-cap")==="round",kt=ne.getDash(O.from,Ze),dr=ne.getDash(O.to,Ze),Mr=kt.width*K.fromScale,lr=dr.width*K.toScale;return i.extend(Ks(Y,R,J),{u_patternscale_a:[Le/Mr,-kt.height/2],u_patternscale_b:[Le/lr,-dr.height/2],u_sdfgamma:ne.width/(Math.min(Mr,lr)*256*i.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:kt.y,u_tex_y_b:dr.y,u_mix:K.t})};function bl(Y,R){return 1/uo(Y,1,R.tileZoom)}function eu(Y,R,J){return Y.translatePosMatrix(R.tileID.posMatrix,R,J.paint.get("line-translate"),J.paint.get("line-translate-anchor"))}var Zl=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_tl_parent:new i.Uniform2f(Y,R.u_tl_parent),u_scale_parent:new i.Uniform1f(Y,R.u_scale_parent),u_buffer_scale:new i.Uniform1f(Y,R.u_buffer_scale),u_fade_t:new i.Uniform1f(Y,R.u_fade_t),u_opacity:new i.Uniform1f(Y,R.u_opacity),u_image0:new i.Uniform1i(Y,R.u_image0),u_image1:new i.Uniform1i(Y,R.u_image1),u_brightness_low:new i.Uniform1f(Y,R.u_brightness_low),u_brightness_high:new i.Uniform1f(Y,R.u_brightness_high),u_saturation_factor:new i.Uniform1f(Y,R.u_saturation_factor),u_contrast_factor:new i.Uniform1f(Y,R.u_contrast_factor),u_spin_weights:new i.Uniform3f(Y,R.u_spin_weights)}},Ul=function(Y,R,J,O,K){return{u_matrix:Y,u_tl_parent:R,u_scale_parent:J,u_buffer_scale:1,u_fade_t:O.mix,u_opacity:O.opacity*K.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:K.paint.get("raster-brightness-min"),u_brightness_high:K.paint.get("raster-brightness-max"),u_saturation_factor:Js(K.paint.get("raster-saturation")),u_contrast_factor:ns(K.paint.get("raster-contrast")),u_spin_weights:ja(K.paint.get("raster-hue-rotate"))}};function ja(Y){Y*=Math.PI/180;var R=Math.sin(Y),J=Math.cos(Y);return[(2*J+1)/3,(-Math.sqrt(3)*R-J+1)/3,(Math.sqrt(3)*R-J+1)/3]}function ns(Y){return Y>0?1/(1-Y):1+Y}function Js(Y){return Y>0?1-1/(1.001-Y):-Y}var cs=function(Y,R){return{u_is_size_zoom_constant:new i.Uniform1i(Y,R.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,R.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,R.u_size_t),u_size:new i.Uniform1f(Y,R.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,R.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,R.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,R.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,R.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,R.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,R.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,R.u_coord_matrix),u_is_text:new i.Uniform1i(Y,R.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,R.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_texture:new i.Uniform1i(Y,R.u_texture)}},sl=function(Y,R){return{u_is_size_zoom_constant:new i.Uniform1i(Y,R.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,R.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,R.u_size_t),u_size:new i.Uniform1f(Y,R.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,R.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,R.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,R.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,R.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,R.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,R.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,R.u_coord_matrix),u_is_text:new i.Uniform1i(Y,R.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,R.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_texture:new i.Uniform1i(Y,R.u_texture),u_gamma_scale:new i.Uniform1f(Y,R.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(Y,R.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(Y,R.u_is_halo)}},ll=function(Y,R){return{u_is_size_zoom_constant:new i.Uniform1i(Y,R.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,R.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,R.u_size_t),u_size:new i.Uniform1f(Y,R.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,R.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,R.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,R.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,R.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,R.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,R.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,R.u_coord_matrix),u_is_text:new i.Uniform1i(Y,R.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,R.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_texsize_icon:new i.Uniform2f(Y,R.u_texsize_icon),u_texture:new i.Uniform1i(Y,R.u_texture),u_texture_icon:new i.Uniform1i(Y,R.u_texture_icon),u_gamma_scale:new i.Uniform1f(Y,R.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(Y,R.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(Y,R.u_is_halo)}},il=function(Y,R,J,O,K,_e,ne,Le,Ze,kt){var dr=K.transform;return{u_is_size_zoom_constant:+(Y==="constant"||Y==="source"),u_is_size_feature_constant:+(Y==="constant"||Y==="camera"),u_size_t:R?R.uSizeT:0,u_size:R?R.uSize:0,u_camera_to_center_distance:dr.cameraToCenterDistance,u_pitch:dr.pitch/360*2*Math.PI,u_rotate_symbol:+J,u_aspect_ratio:dr.width/dr.height,u_fade_change:K.options.fadeDuration?K.symbolFadeChange:1,u_matrix:_e,u_label_plane_matrix:ne,u_coord_matrix:Le,u_is_text:+Ze,u_pitch_with_map:+O,u_texsize:kt,u_texture:0}},zl=function(Y,R,J,O,K,_e,ne,Le,Ze,kt,dr){var Mr=K.transform;return i.extend(il(Y,R,J,O,K,_e,ne,Le,Ze,kt),{u_gamma_scale:O?Math.cos(Mr._pitch)*Mr.cameraToCenterDistance:1,u_device_pixel_ratio:i.browser.devicePixelRatio,u_is_halo:+dr})},Ml=function(Y,R,J,O,K,_e,ne,Le,Ze,kt){return i.extend(zl(Y,R,J,O,K,_e,ne,Le,!0,Ze,!0),{u_texsize_icon:kt,u_texture_icon:1})},Rl=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_opacity:new i.Uniform1f(Y,R.u_opacity),u_color:new i.UniformColor(Y,R.u_color)}},Tl=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_opacity:new i.Uniform1f(Y,R.u_opacity),u_image:new i.Uniform1i(Y,R.u_image),u_pattern_tl_a:new i.Uniform2f(Y,R.u_pattern_tl_a),u_pattern_br_a:new i.Uniform2f(Y,R.u_pattern_br_a),u_pattern_tl_b:new i.Uniform2f(Y,R.u_pattern_tl_b),u_pattern_br_b:new i.Uniform2f(Y,R.u_pattern_br_b),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_mix:new i.Uniform1f(Y,R.u_mix),u_pattern_size_a:new i.Uniform2f(Y,R.u_pattern_size_a),u_pattern_size_b:new i.Uniform2f(Y,R.u_pattern_size_b),u_scale_a:new i.Uniform1f(Y,R.u_scale_a),u_scale_b:new i.Uniform1f(Y,R.u_scale_b),u_pixel_coord_upper:new i.Uniform2f(Y,R.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,R.u_pixel_coord_lower),u_tile_units_to_pixels:new i.Uniform1f(Y,R.u_tile_units_to_pixels)}},Ll=function(Y,R,J){return{u_matrix:Y,u_opacity:R,u_color:J}},ms=function(Y,R,J,O,K,_e){return i.extend(cl(O,_e,J,K),{u_matrix:Y,u_opacity:R})},Os={fillExtrusion:el,fillExtrusionPattern:Hs,fill:Fs,fillPattern:hl,fillOutline:Fa,fillOutlinePattern:Ms,circle:At,collisionBox:wr,collisionCircle:mr,debug:Si,clippingMask:Ki,heatmap:Pi,heatmapTexture:di,hillshade:Gn,hillshadePrepare:ta,line:va,lineGradient:zn,linePattern:is,lineSDF:Cs,raster:Zl,symbolIcon:cs,symbolSDF:sl,symbolTextAndIcon:ll,background:Rl,backgroundPattern:Tl},Xl;function Vl(Y,R,J,O,K,_e,ne){for(var Le=Y.context,Ze=Le.gl,kt=Y.useProgram("collisionBox"),dr=[],Mr=0,lr=0,$e=0;$e0){var er=i.create(),Ot=sr;i.mul(er,Kt.placementInvProjMatrix,Y.transform.glCoordMatrix),i.mul(er,er,Kt.placementViewportMatrix),dr.push({circleArray:ur,circleOffset:lr,transform:Ot,invTransform:er}),Mr+=ur.length/4,lr=Mr}Qt&&kt.draw(Le,Ze.LINES,ni.disabled,si.disabled,Y.colorModeForRenderPass(),xr.disabled,Fr(sr,Y.transform,bt),J.id,Qt.layoutVertexBuffer,Qt.indexBuffer,Qt.segments,null,Y.transform.zoom,null,null,Qt.collisionVertexBuffer)}}if(!(!ne||!dr.length)){var Jt=Y.useProgram("collisionCircle"),Lt=new i.StructArrayLayout2f1f2i16;Lt.resize(Mr*4),Lt._trim();for(var Ar=0,Ur=0,hi=dr;Ur=0&&(ht[Kt.associatedIconIndex]={shiftedAnchor:yn,angle:Xa})}}if(dr){$e.clear();for(var An=Y.icon.placedSymbolArray,Pn=0;Pn0){var ne=i.browser.now(),Le=(ne-Y.timeAdded)/_e,Ze=R?(ne-R.timeAdded)/_e:-1,kt=J.getSource(),dr=K.coveringZoomLevel({tileSize:kt.tileSize,roundZoom:kt.roundZoom}),Mr=!R||Math.abs(R.tileID.overscaledZ-dr)>Math.abs(Y.tileID.overscaledZ-dr),lr=Mr&&Y.refreshedUponExpiration?1:i.clamp(Mr?Le:1-Ze,0,1);return Y.refreshedUponExpiration&&Le>=1&&(Y.refreshedUponExpiration=!1),R?{opacity:1,mix:1-lr}:{opacity:lr,mix:0}}else return{opacity:1,mix:0}}function fr(Y,R,J){var O=J.paint.get("background-color"),K=J.paint.get("background-opacity");if(K!==0){var _e=Y.context,ne=_e.gl,Le=Y.transform,Ze=Le.tileSize,kt=J.paint.get("background-pattern");if(!Y.isPatternMissing(kt)){var dr=!kt&&O.a===1&&K===1&&Y.opaquePassEnabledForLayer()?"opaque":"translucent";if(Y.renderPass===dr){var Mr=si.disabled,lr=Y.depthModeForSublayer(0,dr==="opaque"?ni.ReadWrite:ni.ReadOnly),$e=Y.colorModeForRenderPass(),ht=Y.useProgram(kt?"backgroundPattern":"background"),bt=Le.coveringTiles({tileSize:Ze});kt&&(_e.activeTexture.set(ne.TEXTURE0),Y.imageManager.bind(Y.context));for(var Kt=J.getCrossfadeParameters(),sr=0,Qt=bt;sr "+J.overscaledZ);var sr=Kt+" "+$e+"kb";ml(Y,sr),ne.draw(O,K.TRIANGLES,Le,Ze,yt.alphaBlended,xr.disabled,Ci(_e,i.Color.transparent,bt),dr,Y.debugBuffer,Y.quadTriangleIndexBuffer,Y.debugSegments)}function ml(Y,R){Y.initDebugOverlayCanvas();var J=Y.debugOverlayCanvas,O=Y.context.gl,K=Y.debugOverlayCanvas.getContext("2d");K.clearRect(0,0,J.width,J.height),K.shadowColor="white",K.shadowBlur=2,K.lineWidth=1.5,K.strokeStyle="white",K.textBaseline="top",K.font="bold 36px Open Sans, sans-serif",K.fillText(R,5,5),K.strokeText(R,5,5),Y.debugOverlayTexture.update(J),Y.debugOverlayTexture.bind(O.LINEAR,O.CLAMP_TO_EDGE)}function au(Y,R,J){var O=Y.context,K=J.implementation;if(Y.renderPass==="offscreen"){var _e=K.prerender;_e&&(Y.setCustomLayerDefaults(),O.setColorMode(Y.colorModeForRenderPass()),_e.call(K,O.gl,Y.transform.customLayerMatrix()),O.setDirty(),Y.setBaseState())}else if(Y.renderPass==="translucent"){Y.setCustomLayerDefaults(),O.setColorMode(Y.colorModeForRenderPass()),O.setStencilMode(si.disabled);var ne=K.renderingMode==="3d"?new ni(Y.context.gl.LEQUAL,ni.ReadWrite,Y.depthRangeFor3D):Y.depthModeForSublayer(0,ni.ReadOnly);O.setDepthMode(ne),K.render(O.gl,Y.transform.customLayerMatrix()),O.setDirty(),Y.setBaseState(),O.bindFramebuffer.set(null)}}var Sl={symbol:w,circle:mt,heatmap:Bt,line:Vr,fill:he,"fill-extrusion":Ne,hillshade:lt,raster:Ht,background:fr,debug:vl,custom:au},Yl=function(R,J){this.context=new Lr(R),this.transform=J,this._tileTextures={},this.setup(),this.numSublayers=Nr.maxUnderzooming+Nr.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Ts,this.gpuTimers={}};Yl.prototype.resize=function(R,J){if(this.width=R*i.browser.devicePixelRatio,this.height=J*i.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var O=0,K=this.style._order;O256&&this.clearStencil(),O.setColorMode(yt.disabled),O.setDepthMode(ni.disabled);var _e=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var ne=0,Le=J;ne256&&this.clearStencil();var R=this.nextStencilID++,J=this.context.gl;return new si({func:J.NOTEQUAL,mask:255},R,255,J.KEEP,J.KEEP,J.REPLACE)},Yl.prototype.stencilModeForClipping=function(R){var J=this.context.gl;return new si({func:J.EQUAL,mask:255},this._tileClippingMaskIDs[R.key],0,J.KEEP,J.KEEP,J.REPLACE)},Yl.prototype.stencilConfigForOverlap=function(R){var J,O=this.context.gl,K=R.sort(function(kt,dr){return dr.overscaledZ-kt.overscaledZ}),_e=K[K.length-1].overscaledZ,ne=K[0].overscaledZ-_e+1;if(ne>1){this.currentStencilSource=void 0,this.nextStencilID+ne>256&&this.clearStencil();for(var Le={},Ze=0;Ze=0;this.currentLayer--){var er=this.style._layers[K[this.currentLayer]],Ot=_e[er.source],Jt=Ze[er.source];this._renderTileClippingMasks(er,Jt),this.renderLayer(this,Ot,er,Jt)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer0?J.pop():null},Yl.prototype.isPatternMissing=function(R){if(!R)return!1;if(!R.from||!R.to)return!0;var J=this.imageManager.getPattern(R.from.toString()),O=this.imageManager.getPattern(R.to.toString());return!J||!O},Yl.prototype.useProgram=function(R,J){this.cache=this.cache||{};var O=""+R+(J?J.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[O]||(this.cache[O]=new vs(this.context,R,io[R],J,Os[R],this._showOverdrawInspector)),this.cache[O]},Yl.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},Yl.prototype.setBaseState=function(){var R=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(R.FUNC_ADD)},Yl.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=i.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var R=this.context.gl;this.debugOverlayTexture=new i.Texture(this.context,this.debugOverlayCanvas,R.RGBA)}},Yl.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var Ol=function(R,J){this.points=R,this.planes=J};Ol.fromInvProjectionMatrix=function(R,J,O){var K=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]],_e=Math.pow(2,O),ne=K.map(function(kt){return i.transformMat4([],kt,R)}).map(function(kt){return i.scale$1([],kt,1/kt[3]/J*_e)}),Le=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]],Ze=Le.map(function(kt){var dr=i.sub([],ne[kt[0]],ne[kt[1]]),Mr=i.sub([],ne[kt[2]],ne[kt[1]]),lr=i.normalize([],i.cross([],dr,Mr)),$e=-i.dot(lr,ne[kt[1]]);return lr.concat($e)});return new Ol(ne,Ze)};var ou=function(R,J){this.min=R,this.max=J,this.center=i.scale$2([],i.add([],this.min,this.max),.5)};ou.prototype.quadrant=function(R){for(var J=[R%2===0,R<2],O=i.clone$2(this.min),K=i.clone$2(this.max),_e=0;_e=0;if(ne===0)return 0;ne!==J.length&&(O=!1)}if(O)return 2;for(var Ze=0;Ze<3;Ze++){for(var kt=Number.MAX_VALUE,dr=-Number.MAX_VALUE,Mr=0;Mrthis.max[Ze]-this.min[Ze])return 0}return 1};var Pu=function(R,J,O,K){if(R===void 0&&(R=0),J===void 0&&(J=0),O===void 0&&(O=0),K===void 0&&(K=0),isNaN(R)||R<0||isNaN(J)||J<0||isNaN(O)||O<0||isNaN(K)||K<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=R,this.bottom=J,this.left=O,this.right=K};Pu.prototype.interpolate=function(R,J,O){return J.top!=null&&R.top!=null&&(this.top=i.number(R.top,J.top,O)),J.bottom!=null&&R.bottom!=null&&(this.bottom=i.number(R.bottom,J.bottom,O)),J.left!=null&&R.left!=null&&(this.left=i.number(R.left,J.left,O)),J.right!=null&&R.right!=null&&(this.right=i.number(R.right,J.right,O)),this},Pu.prototype.getCenter=function(R,J){var O=i.clamp((this.left+R-this.right)/2,0,R),K=i.clamp((this.top+J-this.bottom)/2,0,J);return new i.Point(O,K)},Pu.prototype.equals=function(R){return this.top===R.top&&this.bottom===R.bottom&&this.left===R.left&&this.right===R.right},Pu.prototype.clone=function(){return new Pu(this.top,this.bottom,this.left,this.right)},Pu.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var iu=function(R,J,O,K,_e){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=_e===void 0?!0:_e,this._minZoom=R||0,this._maxZoom=J||22,this._minPitch=O==null?0:O,this._maxPitch=K==null?60:K,this.setMaxBounds(),this.width=0,this.height=0,this._center=new i.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Pu,this._posMatrixCache={},this._alignedPosMatrixCache={}},tu={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};iu.prototype.clone=function(){var R=new iu(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return R.tileSize=this.tileSize,R.latRange=this.latRange,R.width=this.width,R.height=this.height,R._center=this._center,R.zoom=this.zoom,R.angle=this.angle,R._fov=this._fov,R._pitch=this._pitch,R._unmodified=this._unmodified,R._edgeInsets=this._edgeInsets.clone(),R._calcMatrices(),R},tu.minZoom.get=function(){return this._minZoom},tu.minZoom.set=function(Y){this._minZoom!==Y&&(this._minZoom=Y,this.zoom=Math.max(this.zoom,Y))},tu.maxZoom.get=function(){return this._maxZoom},tu.maxZoom.set=function(Y){this._maxZoom!==Y&&(this._maxZoom=Y,this.zoom=Math.min(this.zoom,Y))},tu.minPitch.get=function(){return this._minPitch},tu.minPitch.set=function(Y){this._minPitch!==Y&&(this._minPitch=Y,this.pitch=Math.max(this.pitch,Y))},tu.maxPitch.get=function(){return this._maxPitch},tu.maxPitch.set=function(Y){this._maxPitch!==Y&&(this._maxPitch=Y,this.pitch=Math.min(this.pitch,Y))},tu.renderWorldCopies.get=function(){return this._renderWorldCopies},tu.renderWorldCopies.set=function(Y){Y===void 0?Y=!0:Y===null&&(Y=!1),this._renderWorldCopies=Y},tu.worldSize.get=function(){return this.tileSize*this.scale},tu.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},tu.size.get=function(){return new i.Point(this.width,this.height)},tu.bearing.get=function(){return-this.angle/Math.PI*180},tu.bearing.set=function(Y){var R=-i.wrap(Y,-180,180)*Math.PI/180;this.angle!==R&&(this._unmodified=!1,this.angle=R,this._calcMatrices(),this.rotationMatrix=i.create$2(),i.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},tu.pitch.get=function(){return this._pitch/Math.PI*180},tu.pitch.set=function(Y){var R=i.clamp(Y,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==R&&(this._unmodified=!1,this._pitch=R,this._calcMatrices())},tu.fov.get=function(){return this._fov/Math.PI*180},tu.fov.set=function(Y){Y=Math.max(.01,Math.min(60,Y)),this._fov!==Y&&(this._unmodified=!1,this._fov=Y/180*Math.PI,this._calcMatrices())},tu.zoom.get=function(){return this._zoom},tu.zoom.set=function(Y){var R=Math.min(Math.max(Y,this.minZoom),this.maxZoom);this._zoom!==R&&(this._unmodified=!1,this._zoom=R,this.scale=this.zoomScale(R),this.tileZoom=Math.floor(R),this.zoomFraction=R-this.tileZoom,this._constrain(),this._calcMatrices())},tu.center.get=function(){return this._center},tu.center.set=function(Y){Y.lat===this._center.lat&&Y.lng===this._center.lng||(this._unmodified=!1,this._center=Y,this._constrain(),this._calcMatrices())},tu.padding.get=function(){return this._edgeInsets.toJSON()},tu.padding.set=function(Y){this._edgeInsets.equals(Y)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,Y,1),this._calcMatrices())},tu.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},iu.prototype.isPaddingEqual=function(R){return this._edgeInsets.equals(R)},iu.prototype.interpolatePadding=function(R,J,O){this._unmodified=!1,this._edgeInsets.interpolate(R,J,O),this._constrain(),this._calcMatrices()},iu.prototype.coveringZoomLevel=function(R){var J=(R.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/R.tileSize));return Math.max(0,J)},iu.prototype.getVisibleUnwrappedCoordinates=function(R){var J=[new i.UnwrappedTileID(0,R)];if(this._renderWorldCopies)for(var O=this.pointCoordinate(new i.Point(0,0)),K=this.pointCoordinate(new i.Point(this.width,0)),_e=this.pointCoordinate(new i.Point(this.width,this.height)),ne=this.pointCoordinate(new i.Point(0,this.height)),Le=Math.floor(Math.min(O.x,K.x,_e.x,ne.x)),Ze=Math.floor(Math.max(O.x,K.x,_e.x,ne.x)),kt=1,dr=Le-kt;dr<=Ze+kt;dr++)dr!==0&&J.push(new i.UnwrappedTileID(dr,R));return J},iu.prototype.coveringTiles=function(R){var J=this.coveringZoomLevel(R),O=J;if(R.minzoom!==void 0&&JR.maxzoom&&(J=R.maxzoom);var K=i.MercatorCoordinate.fromLngLat(this.center),_e=Math.pow(2,J),ne=[_e*K.x,_e*K.y,0],Le=Ol.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,J),Ze=R.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(Ze=J);var kt=3,dr=function(Yi){return{aabb:new ou([Yi*_e,0,0],[(Yi+1)*_e,_e,0]),zoom:0,x:0,y:0,wrap:Yi,fullyVisible:!1}},Mr=[],lr=[],$e=J,ht=R.reparseOverscaled?O:J;if(this._renderWorldCopies)for(var bt=1;bt<=3;bt++)Mr.push(dr(-bt)),Mr.push(dr(bt));for(Mr.push(dr(0));Mr.length>0;){var Kt=Mr.pop(),sr=Kt.x,Qt=Kt.y,ur=Kt.fullyVisible;if(!ur){var er=Kt.aabb.intersects(Le);if(er===0)continue;ur=er===2}var Ot=Kt.aabb.distanceX(ne),Jt=Kt.aabb.distanceY(ne),Lt=Math.max(Math.abs(Ot),Math.abs(Jt)),Ar=kt+(1<<$e-Kt.zoom)-2;if(Kt.zoom===$e||Lt>Ar&&Kt.zoom>=Ze){lr.push({tileID:new i.OverscaledTileID(Kt.zoom===$e?ht:Kt.zoom,Kt.wrap,Kt.zoom,sr,Qt),distanceSq:i.sqrLen([ne[0]-.5-sr,ne[1]-.5-Qt])});continue}for(var Ur=0;Ur<4;Ur++){var hi=(sr<<1)+Ur%2,Cn=(Qt<<1)+(Ur>>1);Mr.push({aabb:Kt.aabb.quadrant(Ur),zoom:Kt.zoom+1,x:hi,y:Cn,wrap:Kt.wrap,fullyVisible:ur})}}return lr.sort(function(Yi,yn){return Yi.distanceSq-yn.distanceSq}).map(function(Yi){return Yi.tileID})},iu.prototype.resize=function(R,J){this.width=R,this.height=J,this.pixelsToGLUnits=[2/R,-2/J],this._constrain(),this._calcMatrices()},tu.unmodified.get=function(){return this._unmodified},iu.prototype.zoomScale=function(R){return Math.pow(2,R)},iu.prototype.scaleZoom=function(R){return Math.log(R)/Math.LN2},iu.prototype.project=function(R){var J=i.clamp(R.lat,-this.maxValidLatitude,this.maxValidLatitude);return new i.Point(i.mercatorXfromLng(R.lng)*this.worldSize,i.mercatorYfromLat(J)*this.worldSize)},iu.prototype.unproject=function(R){return new i.MercatorCoordinate(R.x/this.worldSize,R.y/this.worldSize).toLngLat()},tu.point.get=function(){return this.project(this.center)},iu.prototype.setLocationAtPoint=function(R,J){var O=this.pointCoordinate(J),K=this.pointCoordinate(this.centerPoint),_e=this.locationCoordinate(R),ne=new i.MercatorCoordinate(_e.x-(O.x-K.x),_e.y-(O.y-K.y));this.center=this.coordinateLocation(ne),this._renderWorldCopies&&(this.center=this.center.wrap())},iu.prototype.locationPoint=function(R){return this.coordinatePoint(this.locationCoordinate(R))},iu.prototype.pointLocation=function(R){return this.coordinateLocation(this.pointCoordinate(R))},iu.prototype.locationCoordinate=function(R){return i.MercatorCoordinate.fromLngLat(R)},iu.prototype.coordinateLocation=function(R){return R.toLngLat()},iu.prototype.pointCoordinate=function(R){var J=0,O=[R.x,R.y,0,1],K=[R.x,R.y,1,1];i.transformMat4(O,O,this.pixelMatrixInverse),i.transformMat4(K,K,this.pixelMatrixInverse);var _e=O[3],ne=K[3],Le=O[0]/_e,Ze=K[0]/ne,kt=O[1]/_e,dr=K[1]/ne,Mr=O[2]/_e,lr=K[2]/ne,$e=Mr===lr?0:(J-Mr)/(lr-Mr);return new i.MercatorCoordinate(i.number(Le,Ze,$e)/this.worldSize,i.number(kt,dr,$e)/this.worldSize)},iu.prototype.coordinatePoint=function(R){var J=[R.x*this.worldSize,R.y*this.worldSize,0,1];return i.transformMat4(J,J,this.pixelMatrix),new i.Point(J[0]/J[3],J[1]/J[3])},iu.prototype.getBounds=function(){return new i.LngLatBounds().extend(this.pointLocation(new i.Point(0,0))).extend(this.pointLocation(new i.Point(this.width,0))).extend(this.pointLocation(new i.Point(this.width,this.height))).extend(this.pointLocation(new i.Point(0,this.height)))},iu.prototype.getMaxBounds=function(){return!this.latRange||this.latRange.length!==2||!this.lngRange||this.lngRange.length!==2?null:new i.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]])},iu.prototype.setMaxBounds=function(R){R?(this.lngRange=[R.getWest(),R.getEast()],this.latRange=[R.getSouth(),R.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},iu.prototype.calculatePosMatrix=function(R,J){J===void 0&&(J=!1);var O=R.key,K=J?this._alignedPosMatrixCache:this._posMatrixCache;if(K[O])return K[O];var _e=R.canonical,ne=this.worldSize/this.zoomScale(_e.z),Le=_e.x+Math.pow(2,_e.z)*R.wrap,Ze=i.identity(new Float64Array(16));return i.translate(Ze,Ze,[Le*ne,_e.y*ne,0]),i.scale(Ze,Ze,[ne/i.EXTENT,ne/i.EXTENT,1]),i.multiply(Ze,J?this.alignedProjMatrix:this.projMatrix,Ze),K[O]=new Float32Array(Ze),K[O]},iu.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},iu.prototype._constrain=function(){if(!(!this.center||!this.width||!this.height||this._constraining)){this._constraining=!0;var R=-90,J=90,O=-180,K=180,_e,ne,Le,Ze,kt=this.size,dr=this._unmodified;if(this.latRange){var Mr=this.latRange;R=i.mercatorYfromLat(Mr[1])*this.worldSize,J=i.mercatorYfromLat(Mr[0])*this.worldSize,_e=J-RJ&&(Ze=J-Kt)}if(this.lngRange){var sr=$e.x,Qt=kt.x/2;sr-QtK&&(Le=K-Qt)}(Le!==void 0||Ze!==void 0)&&(this.center=this.unproject(new i.Point(Le!==void 0?Le:$e.x,Ze!==void 0?Ze:$e.y))),this._unmodified=dr,this._constraining=!1}},iu.prototype._calcMatrices=function(){if(this.height){var R=this._fov/2,J=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(R)*this.height;var O=Math.PI/2+this._pitch,K=this._fov*(.5+J.y/this.height),_e=Math.sin(K)*this.cameraToCenterDistance/Math.sin(i.clamp(Math.PI-O-K,.01,Math.PI-.01)),ne=this.point,Le=ne.x,Ze=ne.y,kt=Math.cos(Math.PI/2-this._pitch)*_e+this.cameraToCenterDistance,dr=kt*1.01,Mr=this.height/50,lr=new Float64Array(16);i.perspective(lr,this._fov,this.width/this.height,Mr,dr),lr[8]=-J.x*2/this.width,lr[9]=J.y*2/this.height,i.scale(lr,lr,[1,-1,1]),i.translate(lr,lr,[0,0,-this.cameraToCenterDistance]),i.rotateX(lr,lr,this._pitch),i.rotateZ(lr,lr,this.angle),i.translate(lr,lr,[-Le,-Ze,0]),this.mercatorMatrix=i.scale([],lr,[this.worldSize,this.worldSize,this.worldSize]),i.scale(lr,lr,[1,1,i.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=lr,this.invProjMatrix=i.invert([],this.projMatrix);var $e=this.width%2/2,ht=this.height%2/2,bt=Math.cos(this.angle),Kt=Math.sin(this.angle),sr=Le-Math.round(Le)+bt*$e+Kt*ht,Qt=Ze-Math.round(Ze)+bt*ht+Kt*$e,ur=new Float64Array(lr);if(i.translate(ur,ur,[sr>.5?sr-1:sr,Qt>.5?Qt-1:Qt,0]),this.alignedProjMatrix=ur,lr=i.create(),i.scale(lr,lr,[this.width/2,-this.height/2,1]),i.translate(lr,lr,[1,-1,0]),this.labelPlaneMatrix=lr,lr=i.create(),i.scale(lr,lr,[1,-1,1]),i.translate(lr,lr,[-1,-1,0]),i.scale(lr,lr,[2/this.width,2/this.height,1]),this.glCoordMatrix=lr,this.pixelMatrix=i.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),lr=i.invert(new Float64Array(16),this.pixelMatrix),!lr)throw new Error("failed to invert matrix");this.pixelMatrixInverse=lr,this._posMatrixCache={},this._alignedPosMatrixCache={}}},iu.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var R=this.pointCoordinate(new i.Point(0,0)),J=[R.x*this.worldSize,R.y*this.worldSize,0,1],O=i.transformMat4(J,J,this.pixelMatrix);return O[3]/this.cameraToCenterDistance},iu.prototype.getCameraPoint=function(){var R=this._pitch,J=Math.tan(R)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new i.Point(0,J))},iu.prototype.getCameraQueryGeometry=function(R){var J=this.getCameraPoint();if(R.length===1)return[R[0],J];for(var O=J.x,K=J.y,_e=J.x,ne=J.y,Le=0,Ze=R;Le=3&&!R.some(function(O){return isNaN(O)})){var J=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(R[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+R[2],+R[1]],zoom:+R[0],bearing:J,pitch:+(R[4]||0)}),!0}return!1},$u.prototype._updateHashUnthrottled=function(){var R=i.window.location.href.replace(/(#.+)?$/,this.getHashString());try{i.window.history.replaceState(i.window.history.state,null,R)}catch(J){}};var Ku={linearity:.3,easing:i.bezier(0,0,.3,1)},Wu=i.extend({deceleration:2500,maxSpeed:1400},Ku),ju=i.extend({deceleration:20,maxSpeed:1400},Ku),sf=i.extend({deceleration:1e3,maxSpeed:360},Ku),_f=i.extend({deceleration:1e3,maxSpeed:90},Ku),Qu=function(R){this._map=R,this.clear()};Qu.prototype.clear=function(){this._inertiaBuffer=[]},Qu.prototype.record=function(R){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:i.browser.now(),settings:R})},Qu.prototype._drainInertiaBuffer=function(){for(var R=this._inertiaBuffer,J=i.browser.now(),O=160;R.length>0&&J-R[0].time>O;)R.shift()},Qu.prototype._onMoveEnd=function(R){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var J={zoom:0,bearing:0,pitch:0,pan:new i.Point(0,0),pinchAround:void 0,around:void 0},O=0,K=this._inertiaBuffer;O=this._clickTolerance||this._map.fire(new se(R.type,this._map,R))},Qe.prototype.dblclick=function(R){return this._firePreventable(new se(R.type,this._map,R))},Qe.prototype.mouseover=function(R){this._map.fire(new se(R.type,this._map,R))},Qe.prototype.mouseout=function(R){this._map.fire(new se(R.type,this._map,R))},Qe.prototype.touchstart=function(R){return this._firePreventable(new Pe(R.type,this._map,R))},Qe.prototype.touchmove=function(R){this._map.fire(new Pe(R.type,this._map,R))},Qe.prototype.touchend=function(R){this._map.fire(new Pe(R.type,this._map,R))},Qe.prototype.touchcancel=function(R){this._map.fire(new Pe(R.type,this._map,R))},Qe.prototype._firePreventable=function(R){if(this._map.fire(R),R.defaultPrevented)return{}},Qe.prototype.isEnabled=function(){return!0},Qe.prototype.isActive=function(){return!1},Qe.prototype.enable=function(){},Qe.prototype.disable=function(){};var st=function(R){this._map=R};st.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},st.prototype.mousemove=function(R){this._map.fire(new se(R.type,this._map,R))},st.prototype.mousedown=function(){this._delayContextMenu=!0},st.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new se("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},st.prototype.contextmenu=function(R){this._delayContextMenu?this._contextMenuEvent=R:this._map.fire(new se(R.type,this._map,R)),this._map.listens("contextmenu")&&R.preventDefault()},st.prototype.isEnabled=function(){return!0},st.prototype.isActive=function(){return!1},st.prototype.enable=function(){},st.prototype.disable=function(){};var jt=function(R,J){this._map=R,this._el=R.getCanvasContainer(),this._container=R.getContainer(),this._clickTolerance=J.clickTolerance||1};jt.prototype.isEnabled=function(){return!!this._enabled},jt.prototype.isActive=function(){return!!this._active},jt.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},jt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},jt.prototype.mousedown=function(R,J){this.isEnabled()&&R.shiftKey&&R.button===0&&(o.disableDrag(),this._startPos=this._lastPos=J,this._active=!0)},jt.prototype.mousemoveWindow=function(R,J){if(this._active){var O=J;if(!(this._lastPos.equals(O)||!this._box&&O.dist(this._startPos)this.numTouches)&&(this.aborted=!0),!this.aborted&&(this.startTime===void 0&&(this.startTime=R.timeStamp),O.length===this.numTouches&&(this.centroid=hr(J),this.touches=_t(O,J)))},$r.prototype.touchmove=function(R,J,O){if(!(this.aborted||!this.centroid)){var K=_t(O,J);for(var _e in this.touches){var ne=this.touches[_e],Le=K[_e];(!Le||Le.dist(ne)>fi)&&(this.aborted=!0)}}},$r.prototype.touchend=function(R,J,O){if((!this.centroid||R.timeStamp-this.startTime>zr)&&(this.aborted=!0),O.length===0){var K=!this.aborted&&this.centroid;if(this.reset(),K)return K}};var Bi=function(R){this.singleTap=new $r(R),this.numTaps=R.numTaps,this.reset()};Bi.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Bi.prototype.touchstart=function(R,J,O){this.singleTap.touchstart(R,J,O)},Bi.prototype.touchmove=function(R,J,O){this.singleTap.touchmove(R,J,O)},Bi.prototype.touchend=function(R,J,O){var K=this.singleTap.touchend(R,J,O);if(K){var _e=R.timeStamp-this.lastTime0&&(this._active=!0);var K=_t(O,J),_e=new i.Point(0,0),ne=new i.Point(0,0),Le=0;for(var Ze in K){var kt=K[Ze],dr=this._touches[Ze];dr&&(_e._add(kt),ne._add(kt.sub(dr)),Le++,K[Ze]=kt)}if(this._touches=K,!(LeMath.abs(Y.x)}var ds=100,Wl=function(Y){function R(){Y.apply(this,arguments)}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R.prototype.reset=function(){Y.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},R.prototype._start=function(O){this._lastPoints=O,tf(O[0].sub(O[1]))&&(this._valid=!1)},R.prototype._move=function(O,K,_e){var ne=O[0].sub(this._lastPoints[0]),Le=O[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(ne,Le,_e.timeStamp),!!this._valid){this._lastPoints=O,this._active=!0;var Ze=(ne.y+Le.y)/2,kt=-.5;return{pitchDelta:Ze*kt}}},R.prototype.gestureBeginsVertically=function(O,K,_e){if(this._valid!==void 0)return this._valid;var ne=2,Le=O.mag()>=ne,Ze=K.mag()>=ne;if(!(!Le&&!Ze)){if(!Le||!Ze)return this._firstMove===void 0&&(this._firstMove=_e),_e-this._firstMove0==K.y>0;return tf(O)&&tf(K)&&kt}},R}(js),Tu={panStep:100,bearingStep:15,pitchStep:10},Au=function(){var R=Tu;this._panStep=R.panStep,this._bearingStep=R.bearingStep,this._pitchStep=R.pitchStep,this._rotationDisabled=!1};Au.prototype.reset=function(){this._active=!1},Au.prototype.keydown=function(R){var J=this;if(!(R.altKey||R.ctrlKey||R.metaKey)){var O=0,K=0,_e=0,ne=0,Le=0;switch(R.keyCode){case 61:case 107:case 171:case 187:O=1;break;case 189:case 109:case 173:O=-1;break;case 37:R.shiftKey?K=-1:(R.preventDefault(),ne=-1);break;case 39:R.shiftKey?K=1:(R.preventDefault(),ne=1);break;case 38:R.shiftKey?_e=1:(R.preventDefault(),Le=-1);break;case 40:R.shiftKey?_e=-1:(R.preventDefault(),Le=1);break;default:return}return this._rotationDisabled&&(K=0,_e=0),{cameraAnimation:function(Ze){var kt=Ze.getZoom();Ze.easeTo({duration:300,easeId:"keyboardHandler",easing:lf,zoom:O?Math.round(kt)+O*(R.shiftKey?2:1):kt,bearing:Ze.getBearing()+K*J._bearingStep,pitch:Ze.getPitch()+_e*J._pitchStep,offset:[-ne*J._panStep,-Le*J._panStep],center:Ze.getCenter()},{originalEvent:R})}}}},Au.prototype.enable=function(){this._enabled=!0},Au.prototype.disable=function(){this._enabled=!1,this.reset()},Au.prototype.isEnabled=function(){return this._enabled},Au.prototype.isActive=function(){return this._active},Au.prototype.disableRotation=function(){this._rotationDisabled=!0},Au.prototype.enableRotation=function(){this._rotationDisabled=!1};function lf(Y){return Y*(2-Y)}var hf=4.000244140625,Mf=1/100,pf=1/450,fc=2,Be=function(R,J){this._map=R,this._el=R.getCanvasContainer(),this._handler=J,this._delta=0,this._defaultZoomRate=Mf,this._wheelZoomRate=pf,i.bindAll(["_onTimeout"],this)};Be.prototype.setZoomRate=function(R){this._defaultZoomRate=R},Be.prototype.setWheelZoomRate=function(R){this._wheelZoomRate=R},Be.prototype.isEnabled=function(){return!!this._enabled},Be.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},Be.prototype.isZooming=function(){return!!this._zooming},Be.prototype.enable=function(R){this.isEnabled()||(this._enabled=!0,this._aroundCenter=R&&R.around==="center")},Be.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Be.prototype.wheel=function(R){if(this.isEnabled()){var J=R.deltaMode===i.window.WheelEvent.DOM_DELTA_LINE?R.deltaY*40:R.deltaY,O=i.browser.now(),K=O-(this._lastWheelEventTime||0);this._lastWheelEventTime=O,J!==0&&J%hf===0?this._type="wheel":J!==0&&Math.abs(J)<4?this._type="trackpad":K>400?(this._type=null,this._lastValue=J,this._timeout=setTimeout(this._onTimeout,40,R)):this._type||(this._type=Math.abs(K*J)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,J+=this._lastValue)),R.shiftKey&&J&&(J=J/4),this._type&&(this._lastWheelEvent=R,this._delta-=J,this._active||this._start(R)),R.preventDefault()}},Be.prototype._onTimeout=function(R){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(R)},Be.prototype._start=function(R){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var J=o.mousePos(this._el,R);this._around=i.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(J)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},Be.prototype.renderFrame=function(){var R=this;if(this._frameId&&(this._frameId=null,!!this.isActive())){var J=this._map.transform;if(this._delta!==0){var O=this._type==="wheel"&&Math.abs(this._delta)>hf?this._wheelZoomRate:this._defaultZoomRate,K=fc/(1+Math.exp(-Math.abs(this._delta*O)));this._delta<0&&K!==0&&(K=1/K);var _e=typeof this._targetZoom=="number"?J.zoomScale(this._targetZoom):J.scale;this._targetZoom=Math.min(J.maxZoom,Math.max(J.minZoom,J.scaleZoom(_e*K))),this._type==="wheel"&&(this._startZoom=J.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var ne=typeof this._targetZoom=="number"?this._targetZoom:J.zoom,Le=this._startZoom,Ze=this._easing,kt=!1,dr;if(this._type==="wheel"&&Le&&Ze){var Mr=Math.min((i.browser.now()-this._lastWheelEventTime)/200,1),lr=Ze(Mr);dr=i.number(Le,ne,lr),Mr<1?this._frameId||(this._frameId=!0):kt=!0}else dr=ne,kt=!0;return this._active=!0,kt&&(this._active=!1,this._finishTimeout=setTimeout(function(){R._zooming=!1,R._handler._triggerRenderFrame(),delete R._targetZoom,delete R._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!kt,zoomDelta:dr-J.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},Be.prototype._smoothOutEasing=function(R){var J=i.ease;if(this._prevEase){var O=this._prevEase,K=(i.browser.now()-O.start)/O.duration,_e=O.easing(K+.01)-O.easing(K),ne=.27/Math.sqrt(_e*_e+1e-4)*.01,Le=Math.sqrt(.27*.27-ne*ne);J=i.bezier(ne,Le,.25,1)}return this._prevEase={start:i.browser.now(),duration:R,easing:J},J},Be.prototype.reset=function(){this._active=!1};var qt=function(R,J){this._clickZoom=R,this._tapZoom=J};qt.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},qt.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},qt.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},qt.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var ar=function(){this.reset()};ar.prototype.reset=function(){this._active=!1},ar.prototype.dblclick=function(R,J){return R.preventDefault(),{cameraAnimation:function(O){O.easeTo({duration:300,zoom:O.getZoom()+(R.shiftKey?-1:1),around:O.unproject(J)},{originalEvent:R})}}},ar.prototype.enable=function(){this._enabled=!0},ar.prototype.disable=function(){this._enabled=!1,this.reset()},ar.prototype.isEnabled=function(){return this._enabled},ar.prototype.isActive=function(){return this._active};var Qr=function(){this._tap=new Bi({numTouches:1,numTaps:1}),this.reset()};Qr.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},Qr.prototype.touchstart=function(R,J,O){this._swipePoint||(this._tapTime&&R.timeStamp-this._tapTime>Cr&&this.reset(),this._tapTime?O.length>0&&(this._swipePoint=J[0],this._swipeTouch=O[0].identifier):this._tap.touchstart(R,J,O))},Qr.prototype.touchmove=function(R,J,O){if(!this._tapTime)this._tap.touchmove(R,J,O);else if(this._swipePoint){if(O[0].identifier!==this._swipeTouch)return;var K=J[0],_e=K.y-this._swipePoint.y;return this._swipePoint=K,R.preventDefault(),this._active=!0,{zoomDelta:_e/128}}},Qr.prototype.touchend=function(R,J,O){if(this._tapTime)this._swipePoint&&O.length===0&&this.reset();else{var K=this._tap.touchend(R,J,O);K&&(this._tapTime=R.timeStamp)}},Qr.prototype.touchcancel=function(){this.reset()},Qr.prototype.enable=function(){this._enabled=!0},Qr.prototype.disable=function(){this._enabled=!1,this.reset()},Qr.prototype.isEnabled=function(){return this._enabled},Qr.prototype.isActive=function(){return this._active};var yi=function(R,J,O){this._el=R,this._mousePan=J,this._touchPan=O};yi.prototype.enable=function(R){this._inertiaOptions=R||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},yi.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},yi.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},yi.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var ci=function(R,J,O){this._pitchWithRotate=R.pitchWithRotate,this._mouseRotate=J,this._mousePitch=O};ci.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},ci.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},ci.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},ci.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var vi=function(R,J,O,K){this._el=R,this._touchZoom=J,this._touchRotate=O,this._tapDragZoom=K,this._rotationDisabled=!1,this._enabled=!0};vi.prototype.enable=function(R){this._touchZoom.enable(R),this._rotationDisabled||this._touchRotate.enable(R),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},vi.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},vi.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},vi.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},vi.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},vi.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var on=function(Y){return Y.zoom||Y.drag||Y.pitch||Y.rotate},Bn=function(Y){function R(){Y.apply(this,arguments)}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R}(i.Event);function Ln(Y){return Y.panDelta&&Y.panDelta.mag()||Y.zoomDelta||Y.bearingDelta||Y.pitchDelta}var wn=function(R,J){this._map=R,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Qu(R),this._bearingSnap=J.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(J),i.bindAll(["handleEvent","handleWindowEvent"],this);var O=this._el;this._listeners=[[O,"touchstart",{passive:!0}],[O,"touchmove",{passive:!1}],[O,"touchend",void 0],[O,"touchcancel",void 0],[O,"mousedown",void 0],[O,"mousemove",void 0],[O,"mouseup",void 0],[i.window.document,"mousemove",{capture:!0}],[i.window.document,"mouseup",void 0],[O,"mouseover",void 0],[O,"mouseout",void 0],[O,"dblclick",void 0],[O,"click",void 0],[O,"keydown",{capture:!1}],[O,"keyup",void 0],[O,"wheel",{passive:!1}],[O,"contextmenu",void 0],[i.window,"blur",void 0]];for(var K=0,_e=this._listeners;K<_e.length;K+=1){var ne=_e[K],Le=ne[0],Ze=ne[1],kt=ne[2];o.addEventListener(Le,Ze,Le===i.window.document?this.handleWindowEvent:this.handleEvent,kt)}};wn.prototype.destroy=function(){for(var R=0,J=this._listeners;RLe?Math.min(2,Ot):Math.max(.5,Ot),Yi=Math.pow(Cn,1-Ur),yn=ne.unproject(ur.add(er.mult(Ur*Yi)).mult(hi));ne.setLocationAtPoint(ne.renderWorldCopies?yn.wrap():yn,Kt)}_e._fireMoveEvents(K)},function(Ur){_e._afterEase(K,Ur)},O),this},R.prototype._prepareEase=function(O,K,_e){_e===void 0&&(_e={}),this._moving=!0,!K&&!_e.moving&&this.fire(new i.Event("movestart",O)),this._zooming&&!_e.zooming&&this.fire(new i.Event("zoomstart",O)),this._rotating&&!_e.rotating&&this.fire(new i.Event("rotatestart",O)),this._pitching&&!_e.pitching&&this.fire(new i.Event("pitchstart",O))},R.prototype._fireMoveEvents=function(O){this.fire(new i.Event("move",O)),this._zooming&&this.fire(new i.Event("zoom",O)),this._rotating&&this.fire(new i.Event("rotate",O)),this._pitching&&this.fire(new i.Event("pitch",O))},R.prototype._afterEase=function(O,K){if(!(this._easeId&&K&&this._easeId===K)){delete this._easeId;var _e=this._zooming,ne=this._rotating,Le=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,_e&&this.fire(new i.Event("zoomend",O)),ne&&this.fire(new i.Event("rotateend",O)),Le&&this.fire(new i.Event("pitchend",O)),this.fire(new i.Event("moveend",O))}},R.prototype.flyTo=function(O,K){var _e=this;if(!O.essential&&i.browser.prefersReducedMotion){var ne=i.pick(O,["center","zoom","bearing","pitch","around"]);return this.jumpTo(ne,K)}this.stop(),O=i.extend({offset:[0,0],speed:1.2,curve:1.42,easing:i.ease},O);var Le=this.transform,Ze=this.getZoom(),kt=this.getBearing(),dr=this.getPitch(),Mr=this.getPadding(),lr="zoom"in O?i.clamp(+O.zoom,Le.minZoom,Le.maxZoom):Ze,$e="bearing"in O?this._normalizeBearing(O.bearing,kt):kt,ht="pitch"in O?+O.pitch:dr,bt="padding"in O?O.padding:Le.padding,Kt=Le.zoomScale(lr-Ze),sr=i.Point.convert(O.offset),Qt=Le.centerPoint.add(sr),ur=Le.pointLocation(Qt),er=i.LngLat.convert(O.center||ur);this._normalizeCenter(er);var Ot=Le.project(ur),Jt=Le.project(er).sub(Ot),Lt=O.curve,Ar=Math.max(Le.width,Le.height),Ur=Ar/Kt,hi=Jt.mag();if("minZoom"in O){var Cn=i.clamp(Math.min(O.minZoom,Ze,lr),Le.minZoom,Le.maxZoom),Yi=Ar/Le.zoomScale(Cn-Ze);Lt=Math.sqrt(Yi/hi*2)}var yn=Lt*Lt;function Xa(vu){var zu=(Ur*Ur-Ar*Ar+(vu?-1:1)*yn*yn*hi*hi)/(2*(vu?Ur:Ar)*yn*hi);return Math.log(Math.sqrt(zu*zu+1)-zu)}function ca(vu){return(Math.exp(vu)-Math.exp(-vu))/2}function An(vu){return(Math.exp(vu)+Math.exp(-vu))/2}function Pn(vu){return ca(vu)/An(vu)}var Nn=Xa(0),xa=function(vu){return An(Nn)/An(Nn+Lt*vu)},Zo=function(vu){return Ar*((An(Nn)*Pn(Nn+Lt*vu)-ca(Nn))/yn)/hi},ru=(Xa(1)-Nn)/Lt;if(Math.abs(hi)<1e-6||!isFinite(ru)){if(Math.abs(Ar-Ur)<1e-6)return this.easeTo(O,K);var yu=UrO.maxDuration&&(O.duration=0),this._zooming=!0,this._rotating=kt!==$e,this._pitching=ht!==dr,this._padding=!Le.isPaddingEqual(bt),this._prepareEase(K,!1),this._ease(function(vu){var zu=vu*ru,Ju=1/xa(zu);Le.zoom=vu===1?lr:Ze+Le.scaleZoom(Ju),_e._rotating&&(Le.bearing=i.number(kt,$e,vu)),_e._pitching&&(Le.pitch=i.number(dr,ht,vu)),_e._padding&&(Le.interpolatePadding(Mr,bt,vu),Qt=Le.centerPoint.add(sr));var Vf=vu===1?er:Le.unproject(Ot.add(Jt.mult(Zo(zu))).mult(Ju));Le.setLocationAtPoint(Le.renderWorldCopies?Vf.wrap():Vf,Qt),_e._fireMoveEvents(K)},function(){return _e._afterEase(K)},O),this},R.prototype.isEasing=function(){return!!this._easeFrameId},R.prototype.stop=function(){return this._stop()},R.prototype._stop=function(O,K){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var _e=this._onEaseEnd;delete this._onEaseEnd,_e.call(this,K)}if(!O){var ne=this.handlers;ne&&ne.stop(!1)}return this},R.prototype._ease=function(O,K,_e){_e.animate===!1||_e.duration===0?(O(1),K()):(this._easeStart=i.browser.now(),this._easeOptions=_e,this._onEaseFrame=O,this._onEaseEnd=K,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},R.prototype._renderFrameCallback=function(){var O=Math.min((i.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(O)),O<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},R.prototype._normalizeBearing=function(O,K){O=i.wrap(O,-180,180);var _e=Math.abs(O-K);return Math.abs(O-360-K)<_e&&(O-=360),Math.abs(O+360-K)<_e&&(O+=360),O},R.prototype._normalizeCenter=function(O){var K=this.transform;if(!(!K.renderWorldCopies||K.lngRange)){var _e=O.lng-K.center.lng;O.lng+=_e>180?-360:_e<-180?360:0}},R}(i.Evented),ua=function(R){R===void 0&&(R={}),this.options=R,i.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};ua.prototype.getDefaultPosition=function(){return"bottom-right"},ua.prototype.onAdd=function(R){var J=this.options&&this.options.compact;return this._map=R,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=o.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=o.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),J&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),J===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},ua.prototype.onRemove=function(){o.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0},ua.prototype._setElementTitle=function(R,J){var O=this._map._getUIString("AttributionControl."+J);R.title=O,R.setAttribute("aria-label",O)},ua.prototype._toggleAttribution=function(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","true"))},ua.prototype._updateEditLink=function(){var R=this._editLink;R||(R=this._editLink=this._container.querySelector(".mapbox-improve-map"));var J=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||i.config.ACCESS_TOKEN}];if(R){var O=J.reduce(function(K,_e,ne){return _e.value&&(K+=_e.key+"="+_e.value+(ne=0)return!1;return!0});var Le=R.join(" | ");Le!==this._attribHTML&&(this._attribHTML=Le,R.length?(this._innerContainer.innerHTML=Le,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},ua.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var Hn=function(){i.bindAll(["_updateLogo"],this),i.bindAll(["_updateCompact"],this)};Hn.prototype.onAdd=function(R){this._map=R,this._container=o.create("div","mapboxgl-ctrl");var J=o.create("a","mapboxgl-ctrl-logo");return J.target="_blank",J.rel="noopener nofollow",J.href="https://www.mapbox.com/",J.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),J.setAttribute("rel","noopener nofollow"),this._container.appendChild(J),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},Hn.prototype.onRemove=function(){o.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},Hn.prototype.getDefaultPosition=function(){return"bottom-left"},Hn.prototype._updateLogo=function(R){(!R||R.sourceDataType==="metadata")&&(this._container.style.display=this._logoRequired()?"block":"none")},Hn.prototype._logoRequired=function(){if(this._map.style){var R=this._map.style.sourceCaches;for(var J in R){var O=R[J].getSource();if(O.mapbox_logo)return!0}return!1}},Hn.prototype._updateCompact=function(){var R=this._container.children;if(R.length){var J=R[0];this._map.getCanvasContainer().offsetWidth<250?J.classList.add("mapboxgl-compact"):J.classList.remove("mapboxgl-compact")}};var qi=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};qi.prototype.add=function(R){var J=++this._id,O=this._queue;return O.push({callback:R,id:J,cancelled:!1}),J},qi.prototype.remove=function(R){for(var J=this._currentlyRunning,O=J?this._queue.concat(J):this._queue,K=0,_e=O;K<_e.length;K+=1){var ne=_e[K];if(ne.id===R){ne.cancelled=!0;return}}},qi.prototype.run=function(R){R===void 0&&(R=0);var J=this._currentlyRunning=this._queue;this._queue=[];for(var O=0,K=J;OO.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(O.minPitch!=null&&O.maxPitch!=null&&O.minPitch>O.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(O.minPitch!=null&&O.minPitchhs)throw new Error("maxPitch must be less than or equal to "+hs);var _e=new iu(O.minZoom,O.maxZoom,O.minPitch,O.maxPitch,O.renderWorldCopies);if(Y.call(this,_e,O),this._interactive=O.interactive,this._maxTileCacheSize=O.maxTileCacheSize,this._failIfMajorPerformanceCaveat=O.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=O.preserveDrawingBuffer,this._antialias=O.antialias,this._trackResize=O.trackResize,this._bearingSnap=O.bearingSnap,this._refreshExpiredTiles=O.refreshExpiredTiles,this._fadeDuration=O.fadeDuration,this._crossSourceCollisions=O.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=O.collectResourceTiming,this._renderTaskQueue=new qi,this._controls=[],this._mapId=i.uniqueId(),this._locale=i.extend({},Wr,O.locale),this._clickTolerance=O.clickTolerance,this._requestManager=new i.RequestManager(O.transformRequest,O.accessToken),typeof O.container=="string"){if(this._container=i.window.document.getElementById(O.container),!this._container)throw new Error("Container '"+O.container+"' not found.")}else if(O.container instanceof dn)this._container=O.container;else throw new Error("Invalid type: 'container' must be a String or HTMLElement.");if(O.maxBounds&&this.setMaxBounds(O.maxBounds),i.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return K._update(!1)}),this.on("moveend",function(){return K._update(!1)}),this.on("zoom",function(){return K._update(!0)}),typeof i.window!="undefined"&&(i.window.addEventListener("online",this._onWindowOnline,!1),i.window.addEventListener("resize",this._onWindowResize,!1),i.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new wn(this,O);var ne=typeof O.hash=="string"&&O.hash||void 0;this._hash=O.hash&&new $u(ne).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:O.center,zoom:O.zoom,bearing:O.bearing,pitch:O.pitch}),O.bounds&&(this.resize(),this.fitBounds(O.bounds,i.extend({},O.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=O.localIdeographFontFamily,O.style&&this.setStyle(O.style,{localIdeographFontFamily:O.localIdeographFontFamily}),O.attributionControl&&this.addControl(new ua({customAttribution:O.customAttribution})),this.addControl(new Hn,O.logoPosition),this.on("style.load",function(){K.transform.unmodified&&K.jumpTo(K.style.stylesheet)}),this.on("data",function(Le){K._update(Le.dataType==="style"),K.fire(new i.Event(Le.dataType+"data",Le))}),this.on("dataloading",function(Le){K.fire(new i.Event(Le.dataType+"dataloading",Le))})}Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R;var J={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return R.prototype._getMapId=function(){return this._mapId},R.prototype.addControl=function(K,_e){if(_e===void 0&&(K.getDefaultPosition?_e=K.getDefaultPosition():_e="top-right"),!K||!K.onAdd)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var ne=K.onAdd(this);this._controls.push(K);var Le=this._controlPositions[_e];return _e.indexOf("bottom")!==-1?Le.insertBefore(ne,Le.firstChild):Le.appendChild(ne),this},R.prototype.removeControl=function(K){if(!K||!K.onRemove)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var _e=this._controls.indexOf(K);return _e>-1&&this._controls.splice(_e,1),K.onRemove(this),this},R.prototype.hasControl=function(K){return this._controls.indexOf(K)>-1},R.prototype.resize=function(K){var _e=this._containerDimensions(),ne=_e[0],Le=_e[1];this._resizeCanvas(ne,Le),this.transform.resize(ne,Le),this.painter.resize(ne,Le);var Ze=!this._moving;return Ze&&(this.stop(),this.fire(new i.Event("movestart",K)).fire(new i.Event("move",K))),this.fire(new i.Event("resize",K)),Ze&&this.fire(new i.Event("moveend",K)),this},R.prototype.getBounds=function(){return this.transform.getBounds()},R.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},R.prototype.setMaxBounds=function(K){return this.transform.setMaxBounds(i.LngLatBounds.convert(K)),this._update()},R.prototype.setMinZoom=function(K){if(K=K==null?Zi:K,K>=Zi&&K<=this.transform.maxZoom)return this.transform.minZoom=K,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=K,this._update(),this.getZoom()>K&&this.setZoom(K),this;throw new Error("maxZoom must be greater than the current minZoom")},R.prototype.getMaxZoom=function(){return this.transform.maxZoom},R.prototype.setMinPitch=function(K){if(K=K==null?Kn:K,K=Kn&&K<=this.transform.maxPitch)return this.transform.minPitch=K,this._update(),this.getPitch()hs)throw new Error("maxPitch must be less than or equal to "+hs);if(K>=this.transform.minPitch)return this.transform.maxPitch=K,this._update(),this.getPitch()>K&&this.setPitch(K),this;throw new Error("maxPitch must be greater than the current minPitch")},R.prototype.getMaxPitch=function(){return this.transform.maxPitch},R.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},R.prototype.setRenderWorldCopies=function(K){return this.transform.renderWorldCopies=K,this._update()},R.prototype.project=function(K){return this.transform.locationPoint(i.LngLat.convert(K))},R.prototype.unproject=function(K){return this.transform.pointLocation(i.Point.convert(K))},R.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},R.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},R.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},R.prototype._createDelegatedListener=function(K,_e,ne){var Le=this,Ze;if(K==="mouseenter"||K==="mouseover"){var kt=!1,dr=function(Kt){var sr=Le.getLayer(_e)?Le.queryRenderedFeatures(Kt.point,{layers:[_e]}):[];sr.length?kt||(kt=!0,ne.call(Le,new se(K,Le,Kt.originalEvent,{features:sr}))):kt=!1},Mr=function(){kt=!1};return{layer:_e,listener:ne,delegates:{mousemove:dr,mouseout:Mr}}}else if(K==="mouseleave"||K==="mouseout"){var lr=!1,$e=function(Kt){var sr=Le.getLayer(_e)?Le.queryRenderedFeatures(Kt.point,{layers:[_e]}):[];sr.length?lr=!0:lr&&(lr=!1,ne.call(Le,new se(K,Le,Kt.originalEvent)))},ht=function(Kt){lr&&(lr=!1,ne.call(Le,new se(K,Le,Kt.originalEvent)))};return{layer:_e,listener:ne,delegates:{mousemove:$e,mouseout:ht}}}else{var bt=function(Kt){var sr=Le.getLayer(_e)?Le.queryRenderedFeatures(Kt.point,{layers:[_e]}):[];sr.length&&(Kt.features=sr,ne.call(Le,Kt),delete Kt.features)};return{layer:_e,listener:ne,delegates:(Ze={},Ze[K]=bt,Ze)}}},R.prototype.on=function(K,_e,ne){if(ne===void 0)return Y.prototype.on.call(this,K,_e);var Le=this._createDelegatedListener(K,_e,ne);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[K]=this._delegatedListeners[K]||[],this._delegatedListeners[K].push(Le);for(var Ze in Le.delegates)this.on(Ze,Le.delegates[Ze]);return this},R.prototype.once=function(K,_e,ne){if(ne===void 0)return Y.prototype.once.call(this,K,_e);var Le=this._createDelegatedListener(K,_e,ne);for(var Ze in Le.delegates)this.once(Ze,Le.delegates[Ze]);return this},R.prototype.off=function(K,_e,ne){var Le=this;if(ne===void 0)return Y.prototype.off.call(this,K,_e);var Ze=function(kt){for(var dr=kt[K],Mr=0;Mr180;){var ne=J.locationPoint(Y);if(ne.x>=0&&ne.y>=0&&ne.x<=J.width&&ne.y<=J.height)break;Y.lng>J.center.lng?Y.lng-=360:Y.lng+=360}return Y}var _s={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function ul(Y,R,J){var O=Y.classList;for(var K in _s)O.remove("mapboxgl-"+J+"-anchor-"+K);O.add("mapboxgl-"+J+"-anchor-"+R)}var Qn=function(Y){function R(J,O){if(Y.call(this),(J instanceof i.window.HTMLElement||O)&&(J=i.extend({element:J},O)),i.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=J&&J.anchor||"center",this._color=J&&J.color||"#3FB1CE",this._scale=J&&J.scale||1,this._draggable=J&&J.draggable||!1,this._clickTolerance=J&&J.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=J&&J.rotation||0,this._rotationAlignment=J&&J.rotationAlignment||"auto",this._pitchAlignment=J&&J.pitchAlignment&&J.pitchAlignment!=="auto"?J.pitchAlignment:this._rotationAlignment,!J||!J.element){this._defaultMarker=!0,this._element=o.create("div"),this._element.setAttribute("aria-label","Map marker");var K=o.createNS("http://www.w3.org/2000/svg","svg"),_e=41,ne=27;K.setAttributeNS(null,"display","block"),K.setAttributeNS(null,"height",_e+"px"),K.setAttributeNS(null,"width",ne+"px"),K.setAttributeNS(null,"viewBox","0 0 "+ne+" "+_e);var Le=o.createNS("http://www.w3.org/2000/svg","g");Le.setAttributeNS(null,"stroke","none"),Le.setAttributeNS(null,"stroke-width","1"),Le.setAttributeNS(null,"fill","none"),Le.setAttributeNS(null,"fill-rule","evenodd");var Ze=o.createNS("http://www.w3.org/2000/svg","g");Ze.setAttributeNS(null,"fill-rule","nonzero");var kt=o.createNS("http://www.w3.org/2000/svg","g");kt.setAttributeNS(null,"transform","translate(3.0, 29.0)"),kt.setAttributeNS(null,"fill","#000000");for(var dr=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}],Mr=0,lr=dr;Mr=K}this._isDragging&&(this._pos=O.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new i.Event("dragstart"))),this.fire(new i.Event("drag")))},R.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new i.Event("dragend")),this._state="inactive"},R.prototype._addDragHandler=function(O){this._element.contains(O.originalEvent.target)&&(O.preventDefault(),this._positionDelta=O.point.sub(this._pos).add(this._offset),this._pointerdownPos=O.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},R.prototype.setDraggable=function(O){return this._draggable=!!O,this._map&&(O?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},R.prototype.isDraggable=function(){return this._draggable},R.prototype.setRotation=function(O){return this._rotation=O||0,this._update(),this},R.prototype.getRotation=function(){return this._rotation},R.prototype.setRotationAlignment=function(O){return this._rotationAlignment=O||"auto",this._update(),this},R.prototype.getRotationAlignment=function(){return this._rotationAlignment},R.prototype.setPitchAlignment=function(O){return this._pitchAlignment=O&&O!=="auto"?O:this._rotationAlignment,this._update(),this},R.prototype.getPitchAlignment=function(){return this._pitchAlignment},R}(i.Evented),Mo={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},nl;function pl(Y){nl!==void 0?Y(nl):i.window.navigator.permissions!==void 0?i.window.navigator.permissions.query({name:"geolocation"}).then(function(R){nl=R.state!=="denied",Y(nl)}):(nl=!!i.window.navigator.geolocation,Y(nl))}var Dl=0,Fu=!1,vf=function(Y){function R(J){Y.call(this),this.options=i.extend({},Mo,J),i.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R.prototype.onAdd=function(O){return this._map=O,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),pl(this._setupUI),this._container},R.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),o.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,Dl=0,Fu=!1},R.prototype._isOutOfMapMaxBounds=function(O){var K=this._map.getMaxBounds(),_e=O.coords;return K&&(_e.longitudeK.getEast()||_e.latitudeK.getNorth())},R.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break}},R.prototype._onSuccess=function(O){if(this._map){if(this._isOutOfMapMaxBounds(O)){this._setErrorState(),this.fire(new i.Event("outofmaxbounds",O)),this._updateMarker(),this._finish();return}if(this.options.trackUserLocation)switch(this._lastKnownPosition=O,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(O),(!this.options.trackUserLocation||this._watchState==="ACTIVE_LOCK")&&this._updateCamera(O),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("geolocate",O)),this._finish()}},R.prototype._updateCamera=function(O){var K=new i.LngLat(O.coords.longitude,O.coords.latitude),_e=O.coords.accuracy,ne=this._map.getBearing(),Le=i.extend({bearing:ne},this.options.fitBoundsOptions);this._map.fitBounds(K.toBounds(_e),Le,{geolocateSource:!0})},R.prototype._updateMarker=function(O){if(O){var K=new i.LngLat(O.coords.longitude,O.coords.latitude);this._accuracyCircleMarker.setLngLat(K).addTo(this._map),this._userLocationDotMarker.setLngLat(K).addTo(this._map),this._accuracy=O.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},R.prototype._updateCircleRadius=function(){var O=this._map._container.clientHeight/2,K=this._map.unproject([0,O]),_e=this._map.unproject([1,O]),ne=K.distanceTo(_e),Le=Math.ceil(2*this._accuracy/ne);this._circleElement.style.width=Le+"px",this._circleElement.style.height=Le+"px"},R.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},R.prototype._onError=function(O){if(this._map){if(this.options.trackUserLocation)if(O.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var K=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=K,this._geolocateButton.setAttribute("aria-label",K),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(O.code===3&&Fu)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("error",O)),this._finish()}},R.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},R.prototype._setupUI=function(O){var K=this;if(this._container.addEventListener("contextmenu",function(Le){return Le.preventDefault()}),this._geolocateButton=o.create("button","mapboxgl-ctrl-geolocate",this._container),o.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",O===!1){i.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var _e=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=_e,this._geolocateButton.setAttribute("aria-label",_e)}else{var ne=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=ne,this._geolocateButton.setAttribute("aria-label",ne)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=o.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new Qn(this._dotElement),this._circleElement=o.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Qn({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",function(Le){var Ze=Le.originalEvent&&Le.originalEvent.type==="resize";!Le.geolocateSource&&K._watchState==="ACTIVE_LOCK"&&!Ze&&(K._watchState="BACKGROUND",K._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),K._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),K.fire(new i.Event("trackuserlocationend")))})},R.prototype.trigger=function(){if(!this._setup)return i.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new i.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Dl--,Fu=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new i.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new i.Event("trackuserlocationstart"));break}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error");break}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),Dl++;var O;Dl>1?(O={maximumAge:6e5,timeout:0},Fu=!0):(O=this.options.positionOptions,Fu=!1),this._geolocationWatchID=i.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,O)}}else i.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},R.prototype._clearWatch=function(){i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},R}(i.Evented),Ql={maxWidth:100,unit:"metric"},Ef=function(R){this.options=i.extend({},Ql,R),i.bindAll(["_onMove","setUnit"],this)};Ef.prototype.getDefaultPosition=function(){return"bottom-left"},Ef.prototype._onMove=function(){Cu(this._map,this._container,this.options)},Ef.prototype.onAdd=function(R){return this._map=R,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",R.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},Ef.prototype.onRemove=function(){o.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},Ef.prototype.setUnit=function(R){this.options.unit=R,Cu(this._map,this._container,this.options)};function Cu(Y,R,J){var O=J&&J.maxWidth||100,K=Y._container.clientHeight/2,_e=Y.unproject([0,K]),ne=Y.unproject([O,K]),Le=_e.distanceTo(ne);if(J&&J.unit==="imperial"){var Ze=3.2808*Le;if(Ze>5280){var kt=Ze/5280;gf(R,O,kt,Y._getUIString("ScaleControl.Miles"))}else gf(R,O,Ze,Y._getUIString("ScaleControl.Feet"))}else if(J&&J.unit==="nautical"){var dr=Le/1852;gf(R,O,dr,Y._getUIString("ScaleControl.NauticalMiles"))}else Le>=1e3?gf(R,O,Le/1e3,Y._getUIString("ScaleControl.Kilometers")):gf(R,O,Le,Y._getUIString("ScaleControl.Meters"))}function gf(Y,R,J,O){var K=Cf(J),_e=K/J;Y.style.width=R*_e+"px",Y.innerHTML=K+" "+O}function xf(Y){var R=Math.pow(10,Math.ceil(-Math.log(Y)/Math.LN10));return Math.round(Y*R)/R}function Cf(Y){var R=Math.pow(10,(""+Math.floor(Y)).length-1),J=Y/R;return J=J>=10?10:J>=5?5:J>=3?3:J>=2?2:J>=1?1:xf(J),R*J}var Gu=function(R){this._fullscreen=!1,R&&R.container&&(R.container instanceof i.window.HTMLElement?this._container=R.container:i.warnOnce("Full screen control 'container' must be a DOM element.")),i.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in i.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in i.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in i.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in i.window.document&&(this._fullscreenchange="MSFullscreenChange")};Gu.prototype.onAdd=function(R){return this._map=R,this._container||(this._container=this._map.getContainer()),this._controlContainer=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",i.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},Gu.prototype.onRemove=function(){o.remove(this._controlContainer),this._map=null,i.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},Gu.prototype._checkFullscreenSupport=function(){return!!(i.window.document.fullscreenEnabled||i.window.document.mozFullScreenEnabled||i.window.document.msFullscreenEnabled||i.window.document.webkitFullscreenEnabled)},Gu.prototype._setupUI=function(){var R=this._fullscreenButton=o.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);o.create("span","mapboxgl-ctrl-icon",R).setAttribute("aria-hidden",!0),R.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),i.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},Gu.prototype._updateTitle=function(){var R=this._getTitle();this._fullscreenButton.setAttribute("aria-label",R),this._fullscreenButton.title=R},Gu.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},Gu.prototype._isFullscreen=function(){return this._fullscreen},Gu.prototype._changeIcon=function(){var R=i.window.document.fullscreenElement||i.window.document.mozFullScreenElement||i.window.document.webkitFullscreenElement||i.window.document.msFullscreenElement;R===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},Gu.prototype._onClickFullscreen=function(){this._isFullscreen()?i.window.document.exitFullscreen?i.window.document.exitFullscreen():i.window.document.mozCancelFullScreen?i.window.document.mozCancelFullScreen():i.window.document.msExitFullscreen?i.window.document.msExitFullscreen():i.window.document.webkitCancelFullScreen&&i.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var cf={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},mf=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),Fl=function(Y){function R(J){Y.call(this),this.options=i.extend(Object.create(cf),J),i.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R.prototype.addTo=function(O){return this._map&&this.remove(),this._map=O,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new i.Event("open")),this},R.prototype.isOpen=function(){return!!this._map},R.prototype.remove=function(){return this._content&&o.remove(this._content),this._container&&(o.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new i.Event("close")),this},R.prototype.getLngLat=function(){return this._lngLat},R.prototype.setLngLat=function(O){return this._lngLat=i.LngLat.convert(O),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},R.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this},R.prototype.getElement=function(){return this._container},R.prototype.setText=function(O){return this.setDOMContent(i.window.document.createTextNode(O))},R.prototype.setHTML=function(O){var K=i.window.document.createDocumentFragment(),_e=i.window.document.createElement("body"),ne;for(_e.innerHTML=O;ne=_e.firstChild,!!ne;)K.appendChild(ne);return this.setDOMContent(K)},R.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},R.prototype.setMaxWidth=function(O){return this.options.maxWidth=O,this._update(),this},R.prototype.setDOMContent=function(O){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=o.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(O),this._createCloseButton(),this._update(),this._focusFirstElement(),this},R.prototype.addClassName=function(O){this._container&&this._container.classList.add(O)},R.prototype.removeClassName=function(O){this._container&&this._container.classList.remove(O)},R.prototype.setOffset=function(O){return this.options.offset=O,this._update(),this},R.prototype.toggleClassName=function(O){if(this._container)return this._container.classList.toggle(O)},R.prototype._createCloseButton=function(){this.options.closeButton&&(this._closeButton=o.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))},R.prototype._onMouseUp=function(O){this._update(O.point)},R.prototype._onMouseMove=function(O){this._update(O.point)},R.prototype._onDrag=function(O){this._update(O.point)},R.prototype._update=function(O){var K=this,_e=this._lngLat||this._trackPointer;if(!(!this._map||!_e||!this._content)&&(this._container||(this._container=o.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=o.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function($e){return K._container.classList.add($e)}),this._trackPointer&&this._container.classList.add("mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=Va(this._lngLat,this._pos,this._map.transform)),!(this._trackPointer&&!O))){var ne=this._pos=this._trackPointer&&O?O:this._map.project(this._lngLat),Le=this.options.anchor,Ze=bf(this.options.offset);if(!Le){var kt=this._container.offsetWidth,dr=this._container.offsetHeight,Mr;ne.y+Ze.bottom.ythis._map.transform.height-dr?Mr=["bottom"]:Mr=[],ne.xthis._map.transform.width-kt/2&&Mr.push("right"),Mr.length===0?Le="bottom":Le=Mr.join("-")}var lr=ne.add(Ze[Le]).round();o.setTransform(this._container,_s[Le]+" translate("+lr.x+"px,"+lr.y+"px)"),ul(this._container,Le,"popup")}},R.prototype._focusFirstElement=function(){if(!(!this.options.focusAfterOpen||!this._container)){var O=this._container.querySelector(mf);O&&O.focus()}},R.prototype._onClose=function(){this.remove()},R}(i.Evented);function bf(Y){if(Y)if(typeof Y=="number"){var R=Math.round(Math.sqrt(.5*Math.pow(Y,2)));return{center:new i.Point(0,0),top:new i.Point(0,Y),"top-left":new i.Point(R,R),"top-right":new i.Point(-R,R),bottom:new i.Point(0,-Y),"bottom-left":new i.Point(R,-R),"bottom-right":new i.Point(-R,-R),left:new i.Point(Y,0),right:new i.Point(-Y,0)}}else if(Y instanceof i.Point||Array.isArray(Y)){var J=i.Point.convert(Y);return{center:J,top:J,"top-left":J,"top-right":J,bottom:J,"bottom-left":J,"bottom-right":J,left:J,right:J}}else return{center:i.Point.convert(Y.center||[0,0]),top:i.Point.convert(Y.top||[0,0]),"top-left":i.Point.convert(Y["top-left"]||[0,0]),"top-right":i.Point.convert(Y["top-right"]||[0,0]),bottom:i.Point.convert(Y.bottom||[0,0]),"bottom-left":i.Point.convert(Y["bottom-left"]||[0,0]),"bottom-right":i.Point.convert(Y["bottom-right"]||[0,0]),left:i.Point.convert(Y.left||[0,0]),right:i.Point.convert(Y.right||[0,0])};else return bf(new i.Point(0,0))}var cu={version:i.version,supported:a,setRTLTextPlugin:i.setRTLTextPlugin,getRTLTextPluginStatus:i.getRTLTextPluginStatus,Map:Ui,NavigationControl:On,GeolocateControl:vf,AttributionControl:ua,ScaleControl:Ef,FullscreenControl:Gu,Popup:Fl,Marker:Qn,Style:jn,LngLat:i.LngLat,LngLatBounds:i.LngLatBounds,Point:i.Point,MercatorCoordinate:i.MercatorCoordinate,Evented:i.Evented,config:i.config,prewarm:Yr,clearPrewarmedResources:oi,get accessToken(){return i.config.ACCESS_TOKEN},set accessToken(Y){i.config.ACCESS_TOKEN=Y},get baseApiUrl(){return i.config.API_URL},set baseApiUrl(Y){i.config.API_URL=Y},get workerCount(){return ki.workerCount},set workerCount(Y){ki.workerCount=Y},get maxParallelImageRequests(){return i.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(Y){i.config.MAX_PARALLEL_IMAGE_REQUESTS=Y},clearStorage:function(R){i.clearTileCache(R)},workerUrl:""};return cu}),r})});var ZGe=Ae((s2r,XGe)=>{"use strict";var rw=ei(),Zjt=Xf().sanitizeHTML,Yjt=dJ(),HGe=f1();function WGe(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=HGe.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var im=WGe.prototype;im.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=sB(t)};im.needsNewImage=function(e){var t=this.subplot.map;return t.getSource(this.idSource)&&this.sourceType==="image"&&e.sourcetype==="image"&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))};im.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type};im.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]};im.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]};im.updateImage=function(e){var t=this.subplot.map;t.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var r=this.findFollowingMapboxLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)};im.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,!!sB(e)){var r=Kjt(e);t.addSource(this.idSource,r)}};im.findFollowingMapboxLayerId=function(e){if(e==="traces")for(var t=this.subplot.getMapLayers(),r=0;r0){for(var r=0;r0}function jGe(e){var t={},r={};switch(e.type){case"circle":rw.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":rw.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":rw.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var n=e.symbol,i=Yjt(n.textposition,n.iconsize);rw.extendFlat(t,{"icon-image":n.icon+"-15","icon-size":n.iconsize/10,"text-field":n.text,"text-size":n.textfont.size,"text-anchor":i.anchor,"text-offset":i.offset,"symbol-placement":n.placement}),rw.extendFlat(r,{"icon-color":e.color,"text-color":n.textfont.color,"text-opacity":e.opacity});break;case"raster":rw.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity});break}return{layout:t,paint:r}}function Kjt(e){var t=e.sourcetype,r=e.source,n={type:t},i;return t==="geojson"?i="data":t==="vector"?i=typeof r=="string"?"url":"tiles":t==="raster"?(i="tiles",n.tileSize=256):t==="image"&&(i="url",n.coordinates=e.coordinates),n[i]=r,e.sourceattribution&&(n.attribution=Zjt(e.sourceattribution)),n}XGe.exports=function(t,r,n){var i=new WGe(t,r);return i.update(n),i}});var iHe=Ae((l2r,rHe)=>{"use strict";var xJ=_J(),bJ=ei(),$Ge=ix(),YGe=$l(),Jjt=wu(),$jt=xp(),lB=Xc(),QGe=Mm(),Qjt=QGe.drawMode,eXt=QGe.selectMode,tXt=oh().prepSelect,rXt=oh().clearOutline,iXt=oh().clearSelectionsCache,nXt=oh().selectOnClick,_x=f1(),aXt=ZGe();function eHe(e,t){this.id=t,this.gd=e;var r=e._fullLayout,n=e._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var jh=eHe.prototype;jh.plot=function(e,t,r){var n=this,i=t[n.id];n.map&&i.accesstoken!==n.accessToken&&(n.map.remove(),n.map=null,n.styleObj=null,n.traceHash={},n.layerList=[]);var a;n.map?a=new Promise(function(o,s){n.updateMap(e,t,o,s)}):a=new Promise(function(o,s){n.createMap(e,t,o,s)}),r.push(a)};jh.createMap=function(e,t,r,n){var i=this,a=t[i.id],o=i.styleObj=tHe(a.style,t);i.accessToken=a.accesstoken;var s=a.bounds,u=s?[[s.west,s.south],[s.east,s.north]]:null,l=i.map=new xJ.Map({container:i.div,style:o.style,center:wJ(a.center),zoom:a.zoom,bearing:a.bearing,pitch:a.pitch,maxBounds:u,interactive:!i.isStatic,preserveDrawingBuffer:i.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new xJ.AttributionControl({compact:!0}));l._canvas.style.left="0px",l._canvas.style.top="0px",i.rejectOnError(n),i.isStatic||i.initFx(e,t);var f=[];f.push(new Promise(function(c){l.once("load",c)})),f=f.concat($Ge.fetchTraceGeoData(e)),Promise.all(f).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};jh.updateMap=function(e,t,r,n){var i=this,a=i.map,o=t[this.id];i.rejectOnError(n);var s=[],u=tHe(o.style,t);JSON.stringify(i.styleObj)!==JSON.stringify(u)&&(i.styleObj=u,a.setStyle(u.style),i.traceHash={},s.push(new Promise(function(l){a.once("styledata",l)}))),s=s.concat($Ge.fetchTraceGeoData(e)),Promise.all(s).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};jh.fillBelowLookup=function(e,t){var r=t[this.id],n=r.layers,i,a,o=this.belowLookup={},s=!1;for(i=0;i1)for(i=0;i-1&&nXt(u.originalEvent,n,[r.xaxis],[r.yaxis],r.id,s),l.indexOf("event")>-1&&lB.click(n,u.originalEvent)}}};jh.updateFx=function(e){var t=this,r=t.map,n=t.gd;if(t.isStatic)return;function i(u){var l=t.map.unproject(u);return[l.lng,l.lat]}var a=e.dragmode,o;o=function(u,l){if(l.isRect){var f=u.range={};f[t.id]=[i([l.xmin,l.ymin]),i([l.xmax,l.ymax])]}else{var c=u.lassoPoints={};c[t.id]=l.map(i)}};var s=t.dragOptions;t.dragOptions=bJ.extendDeep(s||{},{dragmode:e.dragmode,element:t.div,gd:n,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:o},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),eXt(a)||Qjt(a)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(u,l,f){tXt(u,l,f,t.dragOptions,a)},$jt.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))};jh.updateFramework=function(e){var t=e[this.id].domain,r=e._size,n=this.div.style;n.width=r.w*(t.x[1]-t.x[0])+"px",n.height=r.h*(t.y[1]-t.y[0])+"px",n.left=r.l+t.x[0]*r.w+"px",n.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])};jh.updateLayers=function(e){var t=e[this.id],r=t.layers,n=this.layerList,i;if(r.length!==n.length){for(i=0;i{"use strict";var TJ=ei(),oXt=k_(),sXt=Jd(),nHe=Nk();aHe.exports=function(t,r,n){oXt(t,r,n,{type:"mapbox",attributes:nHe,handleDefaults:lXt,partition:"y",accessToken:r._mapboxAccessToken})};function lXt(e,t,r,n){r("accesstoken",n.accessToken),r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch");var i=r("bounds.west"),a=r("bounds.east"),o=r("bounds.south"),s=r("bounds.north");(i===void 0||a===void 0||o===void 0||s===void 0)&&delete t.bounds,sXt(e,t,{name:"layers",handleItemDefaults:uXt}),t._input=e}function uXt(e,t){function r(u,l){return TJ.coerce(e,t,nHe.layers,u,l)}var n=r("visible");if(n){var i=r("sourcetype"),a=i==="raster"||i==="image";r("source"),r("sourceattribution"),i==="vector"&&r("sourcelayer"),i==="image"&&r("coordinates");var o;a&&(o="raster");var s=r("type",o);a&&s!=="raster"&&(s=t.type="raster",TJ.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),s==="circle"&&r("circle.radius"),s==="line"&&(r("line.width"),r("line.dash")),s==="fill"&&r("fill.outlinecolor"),s==="symbol"&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),TJ.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var uB=Ae(Nv=>{"use strict";var sHe=_J(),ty=ei(),AJ=ty.strTranslate,fXt=ty.strScale,cXt=Rd().getSubplotCalcData,hXt=jv(),dXt=Jl(),lHe=Mu(),pXt=Xf(),vXt=iHe(),xx="mapbox",eg=Nv.constants=f1();Nv.name=xx;Nv.attr="subplot";Nv.idRoot=xx;Nv.idRegex=Nv.attrRegex=ty.counterRegex(xx);var mXt=["mapbox subplots and traces are deprecated!","Please consider switching to `map` subplots and traces.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");Nv.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}};Nv.layoutAttributes=Nk();Nv.supplyLayoutDefaults=oHe();var uHe=!0;Nv.plot=function(t){uHe&&(uHe=!1,ty.warn(mXt));var r=t._fullLayout,n=t.calcdata,i=r._subplots[xx];if(sHe.version!==eg.requiredVersion)throw new Error(eg.wrongVersionErrorMsg);var a=yXt(t,i);sHe.accessToken=a;for(var o=0;ov/2){var k=d.split("|").join("
");_.text(k).attr("data-unformatted",k).call(pXt.convertToTspans,e),b=lHe.bBox(_.node())}_.attr("transform",AJ(-3,-b.height+8)),p.insert("rect",".static-attribution").attr({x:-b.width-6,y:-b.height-3,width:b.width+6,height:b.height+3,fill:"rgba(255, 255, 255, 0.75)"});var E=1;b.width+6>v&&(E=v/(b.width+6));var A=[n.l+n.w*o.x[1],n.t+n.h*(1-o.y[0])];p.attr("transform",AJ(A[0],A[1])+fXt(E))}};function yXt(e,t){var r=e._fullLayout,n=e._context;if(n.mapboxAccessToken==="")return"";for(var i=[],a=[],o=!1,s=!1,u=0;u1&&ty.warn(eg.multipleTokensErrorMsg),i[0]):(a.length&&ty.log(["Listed mapbox access token(s)",a.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}function fHe(e){return typeof e=="string"&&(eg.styleValuesMapbox.indexOf(e)!==-1||e.indexOf("mapbox://")===0||e.indexOf("stamen")===0)}Nv.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[xx],n=0;n{"use strict";var c2r=["*scattermapbox* trace is deprecated!","Please consider switching to the *scattermap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");cHe.exports={attributes:tB(),supplyDefaults:TGe(),colorbar:ep(),formatLabels:hJ(),calc:pF(),plot:BGe(),hoverPoints:oB().hoverPoints,eventData:UGe(),selectPoints:GGe(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermapbox",basePlotModule:uB(),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}});var pHe=Ae((d2r,dHe)=>{"use strict";dHe.exports=hHe()});var SJ=Ae((p2r,vHe)=>{"use strict";var c1=eS(),gXt=nc(),{hovertemplateAttrs:_Xt,templatefallbackAttrs:xXt}=Ff(),bXt=Gf(),bx=Su().extendFlat;vHe.exports=bx({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:bx({},c1.featureidkey,{}),below:{valType:"string",editType:"plot"},text:c1.text,hovertext:c1.hovertext,marker:{line:{color:bx({},c1.marker.line.color,{editType:"plot"}),width:bx({},c1.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:bx({},c1.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:bx({},c1.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:bx({},c1.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:c1.hoverinfo,hovertemplate:_Xt({},{keys:["properties"]}),hovertemplatefallback:xXt(),showlegend:bx({},bXt.showlegend,{dflt:!1})},gXt("",{cLetter:"z",editTypeOverride:"calc"}))});var yHe=Ae((v2r,mHe)=>{"use strict";var Hk=ei(),wXt=rd(),TXt=SJ();mHe.exports=function(t,r,n,i){function a(f,c){return Hk.coerce(t,r,TXt,f,c)}var o=a("locations"),s=a("z"),u=a("geojson");if(!Hk.isArrayOrTypedArray(o)||!o.length||!Hk.isArrayOrTypedArray(s)||!s.length||!(typeof u=="string"&&u!==""||Hk.isPlainObject(u))){r.visible=!1;return}a("featureidkey"),r._length=Math.min(o.length,s.length),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var l=a("marker.line.width");l&&a("marker.line.color"),a("marker.opacity"),wXt(t,r,i,a,{prefix:"",cLetter:"z"}),Hk.coerceSelectionMarkerOpacity(r,a)}});var MJ=Ae((m2r,xHe)=>{"use strict";var AXt=ku(),h1=ei(),SXt=_c(),MXt=Mu(),EXt=tx().makeBlank,gHe=ix();function kXt(e){var t=e[0].trace,r=t.visible===!0&&t._length!==0,n={layout:{visibility:"none"},paint:{}},i={layout:{visibility:"none"},paint:{}},a=t._opts={fill:n,line:i,geojson:EXt()};if(!r)return a;var o=gHe.extractTraceFeature(e);if(!o)return a;var s=SXt.makeColorScaleFuncFromTrace(t),u=t.marker,l=u.line||{},f;h1.isArrayOrTypedArray(u.opacity)&&(f=function(k){var E=k.mo;return AXt(E)?+h1.constrain(E,0,1):0});var c;h1.isArrayOrTypedArray(l.color)&&(c=function(k){return k.mlc});var h;h1.isArrayOrTypedArray(l.width)&&(h=function(k){return k.mlw});for(var d=0;d{"use strict";var wHe=MJ().convert,CXt=MJ().convertOnSelect,bHe=f1().traceLayerPrefix;function THe(e,t){this.type="choroplethmapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",bHe+t+"-fill"],["line",bHe+t+"-line"]],this.below=null}var SS=THe.prototype;SS.update=function(e){this._update(wHe(e)),e[0].trace._glTrace=this};SS.updateOnSelect=function(e){this._update(CXt(e))};SS._update=function(e){var t=this.subplot,r=this.layerList,n=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(e.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(e,n),this.below=n);for(var i=0;i=0;r--)e.removeLayer(t[r][1])};SS.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};AHe.exports=function(t,r){var n=r[0].trace,i=new THe(t,n.uid),a=i.sourceId,o=wHe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),r[0].trace._glTrace=i,i}});var EHe=Ae((_2r,MHe)=>{"use strict";var g2r=["*choroplethmapbox* trace is deprecated!","Please consider switching to the *choroplethmap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");MHe.exports={attributes:SJ(),supplyDefaults:yHe(),colorbar:S_(),calc:DF(),plot:SHe(),hoverPoints:BF(),eventData:OF(),selectPoints:qF(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.updateOnSelect(t)}},getBelow:function(e,t){for(var r=t.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if(typeof i=="string"&&i.indexOf("water")===0){for(var a=n+1;a{"use strict";kHe.exports=EHe()});var kJ=Ae((b2r,PHe)=>{"use strict";var LXt=nc(),{hovertemplateAttrs:PXt,templatefallbackAttrs:zXt}=Ff(),LHe=Gf(),fB=tB(),EJ=Su().extendFlat;PHe.exports=EJ({lon:fB.lon,lat:fB.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:fB.text,hovertext:fB.hovertext,hoverinfo:EJ({},LHe.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:PXt(),hovertemplatefallback:zXt(),showlegend:EJ({},LHe.showlegend,{dflt:!1})},LXt("",{cLetter:"z",editTypeOverride:"calc"}))});var IHe=Ae((w2r,zHe)=>{"use strict";var IXt=ei(),RXt=rd(),DXt=kJ();zHe.exports=function(t,r,n,i){function a(l,f){return IXt.coerce(t,r,DXt,l,f)}var o=a("lon")||[],s=a("lat")||[],u=Math.min(o.length,s.length);if(!u){r.visible=!1;return}r._length=u,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),RXt(t,r,i,a,{prefix:"",cLetter:"z"})}});var FHe=Ae((T2r,DHe)=>{"use strict";var CJ=ku(),FXt=ei().isArrayOrTypedArray,LJ=rf().BADNUM,BXt=gp(),RHe=ei()._;DHe.exports=function(t,r){for(var n=r._length,i=new Array(n),a=r.z,o=FXt(a)&&a.length,s=0;s{"use strict";var OXt=ku(),PJ=ei(),BHe=jl(),OHe=_c(),qHe=rf().BADNUM,qXt=tx().makeBlank;NHe.exports=function(t){var r=t[0].trace,n=r.visible===!0&&r._length!==0,i={layout:{visibility:"none"},paint:{}},a=r._opts={heatmap:i,geojson:qXt()};if(!n)return a;var o=[],s,u=r.z,l=r.radius,f=PJ.isArrayOrTypedArray(u)&&u.length,c=PJ.isArrayOrTypedArray(l);for(s=0;s0?+l[s]:0),o.push({type:"Feature",geometry:{type:"Point",coordinates:d},properties:p})}}var b=OHe.extractOpts(r),v=b.reversescale?OHe.flipScale(b.colorscale):b.colorscale,k=v[0][1],E=BHe.opacity(k)<1?k:BHe.addOpacity(k,0),A=["interpolate",["linear"],["heatmap-density"],0,E];for(s=1;s{"use strict";var VHe=UHe(),NXt=f1().traceLayerPrefix;function GHe(e,t){this.type="densitymapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",NXt+t+"-heatmap"]],this.below=null}var cB=GHe.prototype;cB.update=function(e){var t=this.subplot,r=this.layerList,n=VHe(e),i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(n.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(n,i),this.below=i);for(var a=0;a=0;r--)e.removeLayer(t[r][1])};cB.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};HHe.exports=function(t,r){var n=r[0].trace,i=new GHe(t,n.uid),a=i.sourceId,o=VHe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),i}});var XHe=Ae((M2r,jHe)=>{"use strict";var UXt=wu(),VXt=oB().hoverPoints,GXt=oB().getExtraText;jHe.exports=function(t,r,n){var i=VXt(t,r,n);if(i){var a=i[0],o=a.cd,s=o[0].trace,u=o[a.index];if(delete a.color,"z"in u){var l=a.subplot.mockAxis;a.z=u.z,a.zLabel=UXt.tickText(l,l.c2l(u.z),"hover").text}return a.extraText=GXt(s,u,o[0].t.labels),[a]}}});var YHe=Ae((E2r,ZHe)=>{"use strict";ZHe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var JHe=Ae((C2r,KHe)=>{"use strict";var k2r=["*densitymapbox* trace is deprecated!","Please consider switching to the *densitymap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");KHe.exports={attributes:kJ(),supplyDefaults:IHe(),colorbar:S_(),formatLabels:hJ(),calc:FHe(),plot:WHe(),hoverPoints:XHe(),eventData:YHe(),getBelow:function(e,t){for(var r=t.getMapLayers(),n=0;n{"use strict";$He.exports=JHe()});var tWe=Ae((P2r,eWe)=>{eWe.exports={version:8,name:"orto",metadata:{"maputnik:renderer":"mlgljs"},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI © ESRI"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}},{id:"waterway_tunnel",type:"line",source:"openmaptiles","source-layer":"waterway",minzoom:14,filter:["all",["in","class","river","stream","canal"],["==","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]},"line-dasharray":[2,4]}},{id:"waterway-other",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["!in","class","canal","river","stream"],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,2]]}}},{id:"waterway-stream-canal",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["in","class","canal","stream"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]}}},{id:"waterway-river",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["==","class","river"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.2,stops:[[10,.8],[20,4]]},"line-opacity":.5}},{id:"water-offset",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",maxzoom:8,filter:["==","$type","Polygon"],layout:{visibility:"visible"},paint:{"fill-opacity":0,"fill-color":"#a0c8f0","fill-translate":{base:1,stops:[[6,[2,0]],[8,[0,0]]]}}},{id:"water",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-color":"hsl(210, 67%, 85%)","fill-opacity":0}},{id:"water-pattern",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-translate":[0,2.5],"fill-pattern":"wave","fill-opacity":1}},{id:"landcover-ice-shelf",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"landcover",filter:["==","subclass","ice_shelf"],layout:{visibility:"visible"},paint:{"fill-color":"#fff","fill-opacity":{base:1,stops:[[0,.9],[10,.3]]}}},{id:"tunnel-service-track-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[15,1],[16,4],[20,11]]}}},{id:"tunnel-minor-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,1]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"tunnel-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"tunnel-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.7}},{id:"tunnel-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"tunnel-service-track",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-width":{base:1.2,stops:[[15.5,0],[16,2],[20,7.5]]}}},{id:"tunnel-minor",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor_road"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-opacity":1,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"tunnel-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,10]]}}},{id:"tunnel-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-motorway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#ffdaa6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-railway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]},"line-dasharray":[2,2]}},{id:"ferry",type:"line",source:"openmaptiles","source-layer":"transportation",filter:["all",["in","class","ferry"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(108, 159, 182, 1)","line-width":1.1,"line-dasharray":[2,2]}},{id:"aeroway-taxiway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","taxiway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,2],[17,12]]},"line-opacity":1}},{id:"aeroway-runway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","runway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,5],[17,55]]},"line-opacity":1}},{id:"aeroway-taxiway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","taxiway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,1],[17,10]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"aeroway-runway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","runway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,4],[17,50]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"highway-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-minor-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,0]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"highway-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":.5,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"highway-primary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[7,0],[8,.6]]},"line-width":{base:1.2,stops:[[7,0],[8,.6],[9,1.5],[20,22]]}}},{id:"highway-trunk-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[5,0],[6,.5]]},"line-width":{base:1.2,stops:[[5,0],[6,.6],[7,1.5],[20,22]]}}},{id:"highway-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:4,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[4,0],[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":{stops:[[4,0],[5,.5]]}}},{id:"highway-path",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"highway-motorway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-minor",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fff","line-opacity":.5,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"highway-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[8,.5],[20,13]]},"line-opacity":.5}},{id:"highway-primary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[8.5,0],[9,.5],[20,18]]},"line-opacity":0}},{id:"highway-trunk",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"highway-motorway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"railway-transit",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-transit-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway-service",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-service-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"railway-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"bridge-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,28]]}}},{id:"bridge-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"hsl(28, 76%, 67%)","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,26]]}}},{id:"bridge-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"bridge-path-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#f8f4f0","line-width":{base:1.2,stops:[[15,1.2],[20,18]]}}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#cba","line-width":{base:1.2,stops:[[15,1.2],[20,4]]},"line-dasharray":[1.5,.75]}},{id:"bridge-motorway-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,20]]}}},{id:"bridge-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]}}},{id:"bridge-motorway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"bridge-railway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"bridge-railway-hatching",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"cablecar",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,1],[19,2.5]]}}},{id:"cablecar-dash",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,3],[19,5.5]]},"line-dasharray":[2,3]}},{id:"boundary-land-level-4",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",[">=","admin_level",4],["<=","admin_level",8],["!=","maritime",1]],layout:{"line-join":"round"},paint:{"line-color":"#9e9cab","line-dasharray":[3,1,1,1],"line-width":{base:1.4,stops:[[4,.4],[5,1],[12,3]]},"line-opacity":.6}},{id:"boundary-land-level-2",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["==","admin_level",2],["!=","maritime",1],["!=","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 66%)","line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,2]]}}},{id:"boundary-land-disputed",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["!=","maritime",1],["==","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 70%)","line-dasharray":[1,3],"line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,8]]}}},{id:"boundary-water",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["in","admin_level",2,4],["==","maritime",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"rgba(154, 189, 214, 1)","line-width":{base:1,stops:[[0,.6],[4,1],[5,1],[12,1]]},"line-opacity":{stops:[[6,0],[10,0]]}}},{id:"waterway-name",type:"symbol",source:"openmaptiles","source-layer":"waterway",minzoom:13,filter:["all",["==","$type","LineString"],["has","name"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin} {name:nonlatin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","text-letter-spacing":.2,"symbol-spacing":350},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-lakeline",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["==","$type","LineString"],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":`{name:latin} +`),Ot=Le.createShader(Le.FRAGMENT_SHADER);if(Le.isContextLost()){this.failedToCreate=!0;return}Le.shaderSource(Ot,ur),Le.compileShader(Ot),Le.attachShader(this.program,Ot);var Jt=Le.createShader(Le.VERTEX_SHADER);if(Le.isContextLost()){this.failedToCreate=!0;return}Le.shaderSource(Jt,er),Le.compileShader(Jt),Le.attachShader(this.program,Jt),this.attributes={};var Lt={};this.numAttributes=dr.length;for(var Ar=0;Ar>16,Le>>16],u_pixel_coord_lower:[ne&65535,Le&65535]}}function cl(Y,R,J,O){var K=J.imageManager.getPattern(Y.from.toString()),_e=J.imageManager.getPattern(Y.to.toString()),ne=J.imageManager.getPixelSize(),Le=ne.width,Ze=ne.height,kt=Math.pow(2,O.tileID.overscaledZ),dr=O.tileSize*Math.pow(2,J.transform.tileZoom)/kt,Mr=dr*(O.tileID.canonical.x+O.tileID.wrap*kt),lr=dr*O.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:K.tl,u_pattern_br_a:K.br,u_pattern_tl_b:_e.tl,u_pattern_br_b:_e.br,u_texsize:[Le,Ze],u_mix:R.t,u_pattern_size_a:K.displaySize,u_pattern_size_b:_e.displaySize,u_scale_a:R.fromScale,u_scale_b:R.toScale,u_tile_units_to_pixels:1/uo(O,1,J.transform.tileZoom),u_pixel_coord_upper:[Mr>>16,lr>>16],u_pixel_coord_lower:[Mr&65535,lr&65535]}}var el=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_lightpos:new i.Uniform3f(Y,R.u_lightpos),u_lightintensity:new i.Uniform1f(Y,R.u_lightintensity),u_lightcolor:new i.Uniform3f(Y,R.u_lightcolor),u_vertical_gradient:new i.Uniform1f(Y,R.u_vertical_gradient),u_opacity:new i.Uniform1f(Y,R.u_opacity)}},Hs=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_lightpos:new i.Uniform3f(Y,R.u_lightpos),u_lightintensity:new i.Uniform1f(Y,R.u_lightintensity),u_lightcolor:new i.Uniform3f(Y,R.u_lightcolor),u_vertical_gradient:new i.Uniform1f(Y,R.u_vertical_gradient),u_height_factor:new i.Uniform1f(Y,R.u_height_factor),u_image:new i.Uniform1i(Y,R.u_image),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,R.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,R.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,R.u_scale),u_fade:new i.Uniform1f(Y,R.u_fade),u_opacity:new i.Uniform1f(Y,R.u_opacity)}},Ro=function(Y,R,J,O){var K=R.style.light,_e=K.properties.get("position"),ne=[_e.x,_e.y,_e.z],Le=i.create$1();K.properties.get("anchor")==="viewport"&&i.fromRotation(Le,-R.transform.angle),i.transformMat3(ne,ne,Le);var Ze=K.properties.get("color");return{u_matrix:Y,u_lightpos:ne,u_lightintensity:K.properties.get("intensity"),u_lightcolor:[Ze.r,Ze.g,Ze.b],u_vertical_gradient:+J,u_opacity:O}},tl=function(Y,R,J,O,K,_e,ne){return i.extend(Ro(Y,R,J,O),fs(_e,R,ne),{u_height_factor:-Math.pow(2,K.overscaledZ)/ne.tileSize/8})},Fs=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix)}},hl=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_image:new i.Uniform1i(Y,R.u_image),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,R.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,R.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,R.u_scale),u_fade:new i.Uniform1f(Y,R.u_fade)}},Fa=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_world:new i.Uniform2f(Y,R.u_world)}},Ms=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_world:new i.Uniform2f(Y,R.u_world),u_image:new i.Uniform1i(Y,R.u_image),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,R.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,R.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,R.u_scale),u_fade:new i.Uniform1f(Y,R.u_fade)}},jo=function(Y){return{u_matrix:Y}},Rs=function(Y,R,J,O){return i.extend(jo(Y),fs(J,R,O))},Is=function(Y,R){return{u_matrix:Y,u_world:R}},Bs=function(Y,R,J,O,K){return i.extend(Rs(Y,R,J,O),{u_world:K})},At=function(Y,R){return{u_camera_to_center_distance:new i.Uniform1f(Y,R.u_camera_to_center_distance),u_scale_with_map:new i.Uniform1i(Y,R.u_scale_with_map),u_pitch_with_map:new i.Uniform1i(Y,R.u_pitch_with_map),u_extrude_scale:new i.Uniform2f(Y,R.u_extrude_scale),u_device_pixel_ratio:new i.Uniform1f(Y,R.u_device_pixel_ratio),u_matrix:new i.UniformMatrix4f(Y,R.u_matrix)}},Vt=function(Y,R,J,O){var K=Y.transform,_e,ne;if(O.paint.get("circle-pitch-alignment")==="map"){var Le=uo(J,1,K.zoom);_e=!0,ne=[Le,Le]}else _e=!1,ne=K.pixelsToGLUnits;return{u_camera_to_center_distance:K.cameraToCenterDistance,u_scale_with_map:+(O.paint.get("circle-pitch-scale")==="map"),u_matrix:Y.translatePosMatrix(R.posMatrix,J,O.paint.get("circle-translate"),O.paint.get("circle-translate-anchor")),u_pitch_with_map:+_e,u_device_pixel_ratio:i.browser.devicePixelRatio,u_extrude_scale:ne}},wr=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_camera_to_center_distance:new i.Uniform1f(Y,R.u_camera_to_center_distance),u_pixels_to_tile_units:new i.Uniform1f(Y,R.u_pixels_to_tile_units),u_extrude_scale:new i.Uniform2f(Y,R.u_extrude_scale),u_overscale_factor:new i.Uniform1f(Y,R.u_overscale_factor)}},mr=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_inv_matrix:new i.UniformMatrix4f(Y,R.u_inv_matrix),u_camera_to_center_distance:new i.Uniform1f(Y,R.u_camera_to_center_distance),u_viewport_size:new i.Uniform2f(Y,R.u_viewport_size)}},Fr=function(Y,R,J){var O=uo(J,1,R.zoom),K=Math.pow(2,R.zoom-J.tileID.overscaledZ),_e=J.tileID.overscaleFactor();return{u_matrix:Y,u_camera_to_center_distance:R.cameraToCenterDistance,u_pixels_to_tile_units:O,u_extrude_scale:[R.pixelsToGLUnits[0]/(O*K),R.pixelsToGLUnits[1]/(O*K)],u_overscale_factor:_e}},_i=function(Y,R,J){return{u_matrix:Y,u_inv_matrix:R,u_camera_to_center_distance:J.cameraToCenterDistance,u_viewport_size:[J.width,J.height]}},Si=function(Y,R){return{u_color:new i.UniformColor(Y,R.u_color),u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_overlay:new i.Uniform1i(Y,R.u_overlay),u_overlay_scale:new i.Uniform1f(Y,R.u_overlay_scale)}},Ci=function(Y,R,J){return J===void 0&&(J=1),{u_matrix:Y,u_color:R,u_overlay:0,u_overlay_scale:J}},Ki=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix)}},Fn=function(Y){return{u_matrix:Y}},Pi=function(Y,R){return{u_extrude_scale:new i.Uniform1f(Y,R.u_extrude_scale),u_intensity:new i.Uniform1f(Y,R.u_intensity),u_matrix:new i.UniformMatrix4f(Y,R.u_matrix)}},di=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_world:new i.Uniform2f(Y,R.u_world),u_image:new i.Uniform1i(Y,R.u_image),u_color_ramp:new i.Uniform1i(Y,R.u_color_ramp),u_opacity:new i.Uniform1f(Y,R.u_opacity)}},Li=function(Y,R,J,O){return{u_matrix:Y,u_extrude_scale:uo(R,1,J),u_intensity:O}},Mi=function(Y,R,J,O){var K=i.create();i.ortho(K,0,Y.width,Y.height,0,0,1);var _e=Y.context.gl;return{u_matrix:K,u_world:[_e.drawingBufferWidth,_e.drawingBufferHeight],u_image:J,u_color_ramp:O,u_opacity:R.paint.get("heatmap-opacity")}},Gn=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_image:new i.Uniform1i(Y,R.u_image),u_latrange:new i.Uniform2f(Y,R.u_latrange),u_light:new i.Uniform2f(Y,R.u_light),u_shadow:new i.UniformColor(Y,R.u_shadow),u_highlight:new i.UniformColor(Y,R.u_highlight),u_accent:new i.UniformColor(Y,R.u_accent)}},ta=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_image:new i.Uniform1i(Y,R.u_image),u_dimension:new i.Uniform2f(Y,R.u_dimension),u_zoom:new i.Uniform1f(Y,R.u_zoom),u_unpack:new i.Uniform4f(Y,R.u_unpack)}},ya=function(Y,R,J){var O=J.paint.get("hillshade-shadow-color"),K=J.paint.get("hillshade-highlight-color"),_e=J.paint.get("hillshade-accent-color"),ne=J.paint.get("hillshade-illumination-direction")*(Math.PI/180);J.paint.get("hillshade-illumination-anchor")==="viewport"&&(ne-=Y.transform.angle);var Le=!Y.options.moving;return{u_matrix:Y.transform.calculatePosMatrix(R.tileID.toUnwrapped(),Le),u_image:0,u_latrange:pa(Y,R.tileID),u_light:[J.paint.get("hillshade-exaggeration"),ne],u_shadow:O,u_highlight:K,u_accent:_e}},ia=function(Y,R){var J=R.stride,O=i.create();return i.ortho(O,0,i.EXTENT,-i.EXTENT,0,0,1),i.translate(O,O,[0,-i.EXTENT,0]),{u_matrix:O,u_image:1,u_dimension:[J,J],u_zoom:Y.overscaledZ,u_unpack:R.getUnpackVector()}};function pa(Y,R){var J=Math.pow(2,R.canonical.z),O=R.canonical.y;return[new i.MercatorCoordinate(0,O/J).toLngLat().lat,new i.MercatorCoordinate(0,(O+1)/J).toLngLat().lat]}var va=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_ratio:new i.Uniform1f(Y,R.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,R.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,R.u_units_to_pixels)}},zn=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_ratio:new i.Uniform1f(Y,R.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,R.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,R.u_units_to_pixels),u_image:new i.Uniform1i(Y,R.u_image),u_image_height:new i.Uniform1f(Y,R.u_image_height)}},is=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_ratio:new i.Uniform1f(Y,R.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,R.u_device_pixel_ratio),u_image:new i.Uniform1i(Y,R.u_image),u_units_to_pixels:new i.Uniform2f(Y,R.u_units_to_pixels),u_scale:new i.Uniform3f(Y,R.u_scale),u_fade:new i.Uniform1f(Y,R.u_fade)}},Cs=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_ratio:new i.Uniform1f(Y,R.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,R.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,R.u_units_to_pixels),u_patternscale_a:new i.Uniform2f(Y,R.u_patternscale_a),u_patternscale_b:new i.Uniform2f(Y,R.u_patternscale_b),u_sdfgamma:new i.Uniform1f(Y,R.u_sdfgamma),u_image:new i.Uniform1i(Y,R.u_image),u_tex_y_a:new i.Uniform1f(Y,R.u_tex_y_a),u_tex_y_b:new i.Uniform1f(Y,R.u_tex_y_b),u_mix:new i.Uniform1f(Y,R.u_mix)}},Ks=function(Y,R,J){var O=Y.transform;return{u_matrix:eu(Y,R,J),u_ratio:1/uo(R,1,O.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_units_to_pixels:[1/O.pixelsToGLUnits[0],1/O.pixelsToGLUnits[1]]}},dl=function(Y,R,J,O){return i.extend(Ks(Y,R,J),{u_image:0,u_image_height:O})},xl=function(Y,R,J,O){var K=Y.transform,_e=bl(R,K);return{u_matrix:eu(Y,R,J),u_texsize:R.imageAtlasTexture.size,u_ratio:1/uo(R,1,K.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_image:0,u_scale:[_e,O.fromScale,O.toScale],u_fade:O.t,u_units_to_pixels:[1/K.pixelsToGLUnits[0],1/K.pixelsToGLUnits[1]]}},Bl=function(Y,R,J,O,K){var _e=Y.transform,ne=Y.lineAtlas,Le=bl(R,_e),Ze=J.layout.get("line-cap")==="round",kt=ne.getDash(O.from,Ze),dr=ne.getDash(O.to,Ze),Mr=kt.width*K.fromScale,lr=dr.width*K.toScale;return i.extend(Ks(Y,R,J),{u_patternscale_a:[Le/Mr,-kt.height/2],u_patternscale_b:[Le/lr,-dr.height/2],u_sdfgamma:ne.width/(Math.min(Mr,lr)*256*i.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:kt.y,u_tex_y_b:dr.y,u_mix:K.t})};function bl(Y,R){return 1/uo(Y,1,R.tileZoom)}function eu(Y,R,J){return Y.translatePosMatrix(R.tileID.posMatrix,R,J.paint.get("line-translate"),J.paint.get("line-translate-anchor"))}var Zl=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_tl_parent:new i.Uniform2f(Y,R.u_tl_parent),u_scale_parent:new i.Uniform1f(Y,R.u_scale_parent),u_buffer_scale:new i.Uniform1f(Y,R.u_buffer_scale),u_fade_t:new i.Uniform1f(Y,R.u_fade_t),u_opacity:new i.Uniform1f(Y,R.u_opacity),u_image0:new i.Uniform1i(Y,R.u_image0),u_image1:new i.Uniform1i(Y,R.u_image1),u_brightness_low:new i.Uniform1f(Y,R.u_brightness_low),u_brightness_high:new i.Uniform1f(Y,R.u_brightness_high),u_saturation_factor:new i.Uniform1f(Y,R.u_saturation_factor),u_contrast_factor:new i.Uniform1f(Y,R.u_contrast_factor),u_spin_weights:new i.Uniform3f(Y,R.u_spin_weights)}},Ul=function(Y,R,J,O,K){return{u_matrix:Y,u_tl_parent:R,u_scale_parent:J,u_buffer_scale:1,u_fade_t:O.mix,u_opacity:O.opacity*K.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:K.paint.get("raster-brightness-min"),u_brightness_high:K.paint.get("raster-brightness-max"),u_saturation_factor:Js(K.paint.get("raster-saturation")),u_contrast_factor:ns(K.paint.get("raster-contrast")),u_spin_weights:ja(K.paint.get("raster-hue-rotate"))}};function ja(Y){Y*=Math.PI/180;var R=Math.sin(Y),J=Math.cos(Y);return[(2*J+1)/3,(-Math.sqrt(3)*R-J+1)/3,(Math.sqrt(3)*R-J+1)/3]}function ns(Y){return Y>0?1/(1-Y):1+Y}function Js(Y){return Y>0?1-1/(1.001-Y):-Y}var cs=function(Y,R){return{u_is_size_zoom_constant:new i.Uniform1i(Y,R.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,R.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,R.u_size_t),u_size:new i.Uniform1f(Y,R.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,R.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,R.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,R.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,R.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,R.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,R.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,R.u_coord_matrix),u_is_text:new i.Uniform1i(Y,R.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,R.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_texture:new i.Uniform1i(Y,R.u_texture)}},sl=function(Y,R){return{u_is_size_zoom_constant:new i.Uniform1i(Y,R.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,R.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,R.u_size_t),u_size:new i.Uniform1f(Y,R.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,R.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,R.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,R.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,R.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,R.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,R.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,R.u_coord_matrix),u_is_text:new i.Uniform1i(Y,R.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,R.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_texture:new i.Uniform1i(Y,R.u_texture),u_gamma_scale:new i.Uniform1f(Y,R.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(Y,R.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(Y,R.u_is_halo)}},ll=function(Y,R){return{u_is_size_zoom_constant:new i.Uniform1i(Y,R.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,R.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,R.u_size_t),u_size:new i.Uniform1f(Y,R.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,R.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,R.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,R.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,R.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,R.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,R.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,R.u_coord_matrix),u_is_text:new i.Uniform1i(Y,R.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,R.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_texsize_icon:new i.Uniform2f(Y,R.u_texsize_icon),u_texture:new i.Uniform1i(Y,R.u_texture),u_texture_icon:new i.Uniform1i(Y,R.u_texture_icon),u_gamma_scale:new i.Uniform1f(Y,R.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(Y,R.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(Y,R.u_is_halo)}},il=function(Y,R,J,O,K,_e,ne,Le,Ze,kt){var dr=K.transform;return{u_is_size_zoom_constant:+(Y==="constant"||Y==="source"),u_is_size_feature_constant:+(Y==="constant"||Y==="camera"),u_size_t:R?R.uSizeT:0,u_size:R?R.uSize:0,u_camera_to_center_distance:dr.cameraToCenterDistance,u_pitch:dr.pitch/360*2*Math.PI,u_rotate_symbol:+J,u_aspect_ratio:dr.width/dr.height,u_fade_change:K.options.fadeDuration?K.symbolFadeChange:1,u_matrix:_e,u_label_plane_matrix:ne,u_coord_matrix:Le,u_is_text:+Ze,u_pitch_with_map:+O,u_texsize:kt,u_texture:0}},zl=function(Y,R,J,O,K,_e,ne,Le,Ze,kt,dr){var Mr=K.transform;return i.extend(il(Y,R,J,O,K,_e,ne,Le,Ze,kt),{u_gamma_scale:O?Math.cos(Mr._pitch)*Mr.cameraToCenterDistance:1,u_device_pixel_ratio:i.browser.devicePixelRatio,u_is_halo:+dr})},Ml=function(Y,R,J,O,K,_e,ne,Le,Ze,kt){return i.extend(zl(Y,R,J,O,K,_e,ne,Le,!0,Ze,!0),{u_texsize_icon:kt,u_texture_icon:1})},Rl=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_opacity:new i.Uniform1f(Y,R.u_opacity),u_color:new i.UniformColor(Y,R.u_color)}},Tl=function(Y,R){return{u_matrix:new i.UniformMatrix4f(Y,R.u_matrix),u_opacity:new i.Uniform1f(Y,R.u_opacity),u_image:new i.Uniform1i(Y,R.u_image),u_pattern_tl_a:new i.Uniform2f(Y,R.u_pattern_tl_a),u_pattern_br_a:new i.Uniform2f(Y,R.u_pattern_br_a),u_pattern_tl_b:new i.Uniform2f(Y,R.u_pattern_tl_b),u_pattern_br_b:new i.Uniform2f(Y,R.u_pattern_br_b),u_texsize:new i.Uniform2f(Y,R.u_texsize),u_mix:new i.Uniform1f(Y,R.u_mix),u_pattern_size_a:new i.Uniform2f(Y,R.u_pattern_size_a),u_pattern_size_b:new i.Uniform2f(Y,R.u_pattern_size_b),u_scale_a:new i.Uniform1f(Y,R.u_scale_a),u_scale_b:new i.Uniform1f(Y,R.u_scale_b),u_pixel_coord_upper:new i.Uniform2f(Y,R.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,R.u_pixel_coord_lower),u_tile_units_to_pixels:new i.Uniform1f(Y,R.u_tile_units_to_pixels)}},Ll=function(Y,R,J){return{u_matrix:Y,u_opacity:R,u_color:J}},ms=function(Y,R,J,O,K,_e){return i.extend(cl(O,_e,J,K),{u_matrix:Y,u_opacity:R})},Os={fillExtrusion:el,fillExtrusionPattern:Hs,fill:Fs,fillPattern:hl,fillOutline:Fa,fillOutlinePattern:Ms,circle:At,collisionBox:wr,collisionCircle:mr,debug:Si,clippingMask:Ki,heatmap:Pi,heatmapTexture:di,hillshade:Gn,hillshadePrepare:ta,line:va,lineGradient:zn,linePattern:is,lineSDF:Cs,raster:Zl,symbolIcon:cs,symbolSDF:sl,symbolTextAndIcon:ll,background:Rl,backgroundPattern:Tl},Xl;function Vl(Y,R,J,O,K,_e,ne){for(var Le=Y.context,Ze=Le.gl,kt=Y.useProgram("collisionBox"),dr=[],Mr=0,lr=0,$e=0;$e0){var er=i.create(),Ot=sr;i.mul(er,Kt.placementInvProjMatrix,Y.transform.glCoordMatrix),i.mul(er,er,Kt.placementViewportMatrix),dr.push({circleArray:ur,circleOffset:lr,transform:Ot,invTransform:er}),Mr+=ur.length/4,lr=Mr}Qt&&kt.draw(Le,Ze.LINES,ni.disabled,si.disabled,Y.colorModeForRenderPass(),xr.disabled,Fr(sr,Y.transform,bt),J.id,Qt.layoutVertexBuffer,Qt.indexBuffer,Qt.segments,null,Y.transform.zoom,null,null,Qt.collisionVertexBuffer)}}if(!(!ne||!dr.length)){var Jt=Y.useProgram("collisionCircle"),Lt=new i.StructArrayLayout2f1f2i16;Lt.resize(Mr*4),Lt._trim();for(var Ar=0,Ur=0,hi=dr;Ur=0&&(ht[Kt.associatedIconIndex]={shiftedAnchor:yn,angle:Xa})}}if(dr){$e.clear();for(var An=Y.icon.placedSymbolArray,Pn=0;Pn0){var ne=i.browser.now(),Le=(ne-Y.timeAdded)/_e,Ze=R?(ne-R.timeAdded)/_e:-1,kt=J.getSource(),dr=K.coveringZoomLevel({tileSize:kt.tileSize,roundZoom:kt.roundZoom}),Mr=!R||Math.abs(R.tileID.overscaledZ-dr)>Math.abs(Y.tileID.overscaledZ-dr),lr=Mr&&Y.refreshedUponExpiration?1:i.clamp(Mr?Le:1-Ze,0,1);return Y.refreshedUponExpiration&&Le>=1&&(Y.refreshedUponExpiration=!1),R?{opacity:1,mix:1-lr}:{opacity:lr,mix:0}}else return{opacity:1,mix:0}}function fr(Y,R,J){var O=J.paint.get("background-color"),K=J.paint.get("background-opacity");if(K!==0){var _e=Y.context,ne=_e.gl,Le=Y.transform,Ze=Le.tileSize,kt=J.paint.get("background-pattern");if(!Y.isPatternMissing(kt)){var dr=!kt&&O.a===1&&K===1&&Y.opaquePassEnabledForLayer()?"opaque":"translucent";if(Y.renderPass===dr){var Mr=si.disabled,lr=Y.depthModeForSublayer(0,dr==="opaque"?ni.ReadWrite:ni.ReadOnly),$e=Y.colorModeForRenderPass(),ht=Y.useProgram(kt?"backgroundPattern":"background"),bt=Le.coveringTiles({tileSize:Ze});kt&&(_e.activeTexture.set(ne.TEXTURE0),Y.imageManager.bind(Y.context));for(var Kt=J.getCrossfadeParameters(),sr=0,Qt=bt;sr "+J.overscaledZ);var sr=Kt+" "+$e+"kb";ml(Y,sr),ne.draw(O,K.TRIANGLES,Le,Ze,yt.alphaBlended,xr.disabled,Ci(_e,i.Color.transparent,bt),dr,Y.debugBuffer,Y.quadTriangleIndexBuffer,Y.debugSegments)}function ml(Y,R){Y.initDebugOverlayCanvas();var J=Y.debugOverlayCanvas,O=Y.context.gl,K=Y.debugOverlayCanvas.getContext("2d");K.clearRect(0,0,J.width,J.height),K.shadowColor="white",K.shadowBlur=2,K.lineWidth=1.5,K.strokeStyle="white",K.textBaseline="top",K.font="bold 36px Open Sans, sans-serif",K.fillText(R,5,5),K.strokeText(R,5,5),Y.debugOverlayTexture.update(J),Y.debugOverlayTexture.bind(O.LINEAR,O.CLAMP_TO_EDGE)}function au(Y,R,J){var O=Y.context,K=J.implementation;if(Y.renderPass==="offscreen"){var _e=K.prerender;_e&&(Y.setCustomLayerDefaults(),O.setColorMode(Y.colorModeForRenderPass()),_e.call(K,O.gl,Y.transform.customLayerMatrix()),O.setDirty(),Y.setBaseState())}else if(Y.renderPass==="translucent"){Y.setCustomLayerDefaults(),O.setColorMode(Y.colorModeForRenderPass()),O.setStencilMode(si.disabled);var ne=K.renderingMode==="3d"?new ni(Y.context.gl.LEQUAL,ni.ReadWrite,Y.depthRangeFor3D):Y.depthModeForSublayer(0,ni.ReadOnly);O.setDepthMode(ne),K.render(O.gl,Y.transform.customLayerMatrix()),O.setDirty(),Y.setBaseState(),O.bindFramebuffer.set(null)}}var Sl={symbol:w,circle:mt,heatmap:Bt,line:Vr,fill:he,"fill-extrusion":Ne,hillshade:lt,raster:Ht,background:fr,debug:vl,custom:au},Yl=function(R,J){this.context=new Lr(R),this.transform=J,this._tileTextures={},this.setup(),this.numSublayers=Nr.maxUnderzooming+Nr.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Ts,this.gpuTimers={}};Yl.prototype.resize=function(R,J){if(this.width=R*i.browser.devicePixelRatio,this.height=J*i.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var O=0,K=this.style._order;O256&&this.clearStencil(),O.setColorMode(yt.disabled),O.setDepthMode(ni.disabled);var _e=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var ne=0,Le=J;ne256&&this.clearStencil();var R=this.nextStencilID++,J=this.context.gl;return new si({func:J.NOTEQUAL,mask:255},R,255,J.KEEP,J.KEEP,J.REPLACE)},Yl.prototype.stencilModeForClipping=function(R){var J=this.context.gl;return new si({func:J.EQUAL,mask:255},this._tileClippingMaskIDs[R.key],0,J.KEEP,J.KEEP,J.REPLACE)},Yl.prototype.stencilConfigForOverlap=function(R){var J,O=this.context.gl,K=R.sort(function(kt,dr){return dr.overscaledZ-kt.overscaledZ}),_e=K[K.length-1].overscaledZ,ne=K[0].overscaledZ-_e+1;if(ne>1){this.currentStencilSource=void 0,this.nextStencilID+ne>256&&this.clearStencil();for(var Le={},Ze=0;Ze=0;this.currentLayer--){var er=this.style._layers[K[this.currentLayer]],Ot=_e[er.source],Jt=Ze[er.source];this._renderTileClippingMasks(er,Jt),this.renderLayer(this,Ot,er,Jt)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer0?J.pop():null},Yl.prototype.isPatternMissing=function(R){if(!R)return!1;if(!R.from||!R.to)return!0;var J=this.imageManager.getPattern(R.from.toString()),O=this.imageManager.getPattern(R.to.toString());return!J||!O},Yl.prototype.useProgram=function(R,J){this.cache=this.cache||{};var O=""+R+(J?J.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[O]||(this.cache[O]=new vs(this.context,R,io[R],J,Os[R],this._showOverdrawInspector)),this.cache[O]},Yl.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},Yl.prototype.setBaseState=function(){var R=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(R.FUNC_ADD)},Yl.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=i.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var R=this.context.gl;this.debugOverlayTexture=new i.Texture(this.context,this.debugOverlayCanvas,R.RGBA)}},Yl.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var Ol=function(R,J){this.points=R,this.planes=J};Ol.fromInvProjectionMatrix=function(R,J,O){var K=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]],_e=Math.pow(2,O),ne=K.map(function(kt){return i.transformMat4([],kt,R)}).map(function(kt){return i.scale$1([],kt,1/kt[3]/J*_e)}),Le=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]],Ze=Le.map(function(kt){var dr=i.sub([],ne[kt[0]],ne[kt[1]]),Mr=i.sub([],ne[kt[2]],ne[kt[1]]),lr=i.normalize([],i.cross([],dr,Mr)),$e=-i.dot(lr,ne[kt[1]]);return lr.concat($e)});return new Ol(ne,Ze)};var ou=function(R,J){this.min=R,this.max=J,this.center=i.scale$2([],i.add([],this.min,this.max),.5)};ou.prototype.quadrant=function(R){for(var J=[R%2===0,R<2],O=i.clone$2(this.min),K=i.clone$2(this.max),_e=0;_e=0;if(ne===0)return 0;ne!==J.length&&(O=!1)}if(O)return 2;for(var Ze=0;Ze<3;Ze++){for(var kt=Number.MAX_VALUE,dr=-Number.MAX_VALUE,Mr=0;Mrthis.max[Ze]-this.min[Ze])return 0}return 1};var Pu=function(R,J,O,K){if(R===void 0&&(R=0),J===void 0&&(J=0),O===void 0&&(O=0),K===void 0&&(K=0),isNaN(R)||R<0||isNaN(J)||J<0||isNaN(O)||O<0||isNaN(K)||K<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=R,this.bottom=J,this.left=O,this.right=K};Pu.prototype.interpolate=function(R,J,O){return J.top!=null&&R.top!=null&&(this.top=i.number(R.top,J.top,O)),J.bottom!=null&&R.bottom!=null&&(this.bottom=i.number(R.bottom,J.bottom,O)),J.left!=null&&R.left!=null&&(this.left=i.number(R.left,J.left,O)),J.right!=null&&R.right!=null&&(this.right=i.number(R.right,J.right,O)),this},Pu.prototype.getCenter=function(R,J){var O=i.clamp((this.left+R-this.right)/2,0,R),K=i.clamp((this.top+J-this.bottom)/2,0,J);return new i.Point(O,K)},Pu.prototype.equals=function(R){return this.top===R.top&&this.bottom===R.bottom&&this.left===R.left&&this.right===R.right},Pu.prototype.clone=function(){return new Pu(this.top,this.bottom,this.left,this.right)},Pu.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var nu=function(R,J,O,K,_e){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=_e===void 0?!0:_e,this._minZoom=R||0,this._maxZoom=J||22,this._minPitch=O==null?0:O,this._maxPitch=K==null?60:K,this.setMaxBounds(),this.width=0,this.height=0,this._center=new i.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Pu,this._posMatrixCache={},this._alignedPosMatrixCache={}},tu={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};nu.prototype.clone=function(){var R=new nu(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return R.tileSize=this.tileSize,R.latRange=this.latRange,R.width=this.width,R.height=this.height,R._center=this._center,R.zoom=this.zoom,R.angle=this.angle,R._fov=this._fov,R._pitch=this._pitch,R._unmodified=this._unmodified,R._edgeInsets=this._edgeInsets.clone(),R._calcMatrices(),R},tu.minZoom.get=function(){return this._minZoom},tu.minZoom.set=function(Y){this._minZoom!==Y&&(this._minZoom=Y,this.zoom=Math.max(this.zoom,Y))},tu.maxZoom.get=function(){return this._maxZoom},tu.maxZoom.set=function(Y){this._maxZoom!==Y&&(this._maxZoom=Y,this.zoom=Math.min(this.zoom,Y))},tu.minPitch.get=function(){return this._minPitch},tu.minPitch.set=function(Y){this._minPitch!==Y&&(this._minPitch=Y,this.pitch=Math.max(this.pitch,Y))},tu.maxPitch.get=function(){return this._maxPitch},tu.maxPitch.set=function(Y){this._maxPitch!==Y&&(this._maxPitch=Y,this.pitch=Math.min(this.pitch,Y))},tu.renderWorldCopies.get=function(){return this._renderWorldCopies},tu.renderWorldCopies.set=function(Y){Y===void 0?Y=!0:Y===null&&(Y=!1),this._renderWorldCopies=Y},tu.worldSize.get=function(){return this.tileSize*this.scale},tu.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},tu.size.get=function(){return new i.Point(this.width,this.height)},tu.bearing.get=function(){return-this.angle/Math.PI*180},tu.bearing.set=function(Y){var R=-i.wrap(Y,-180,180)*Math.PI/180;this.angle!==R&&(this._unmodified=!1,this.angle=R,this._calcMatrices(),this.rotationMatrix=i.create$2(),i.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},tu.pitch.get=function(){return this._pitch/Math.PI*180},tu.pitch.set=function(Y){var R=i.clamp(Y,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==R&&(this._unmodified=!1,this._pitch=R,this._calcMatrices())},tu.fov.get=function(){return this._fov/Math.PI*180},tu.fov.set=function(Y){Y=Math.max(.01,Math.min(60,Y)),this._fov!==Y&&(this._unmodified=!1,this._fov=Y/180*Math.PI,this._calcMatrices())},tu.zoom.get=function(){return this._zoom},tu.zoom.set=function(Y){var R=Math.min(Math.max(Y,this.minZoom),this.maxZoom);this._zoom!==R&&(this._unmodified=!1,this._zoom=R,this.scale=this.zoomScale(R),this.tileZoom=Math.floor(R),this.zoomFraction=R-this.tileZoom,this._constrain(),this._calcMatrices())},tu.center.get=function(){return this._center},tu.center.set=function(Y){Y.lat===this._center.lat&&Y.lng===this._center.lng||(this._unmodified=!1,this._center=Y,this._constrain(),this._calcMatrices())},tu.padding.get=function(){return this._edgeInsets.toJSON()},tu.padding.set=function(Y){this._edgeInsets.equals(Y)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,Y,1),this._calcMatrices())},tu.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},nu.prototype.isPaddingEqual=function(R){return this._edgeInsets.equals(R)},nu.prototype.interpolatePadding=function(R,J,O){this._unmodified=!1,this._edgeInsets.interpolate(R,J,O),this._constrain(),this._calcMatrices()},nu.prototype.coveringZoomLevel=function(R){var J=(R.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/R.tileSize));return Math.max(0,J)},nu.prototype.getVisibleUnwrappedCoordinates=function(R){var J=[new i.UnwrappedTileID(0,R)];if(this._renderWorldCopies)for(var O=this.pointCoordinate(new i.Point(0,0)),K=this.pointCoordinate(new i.Point(this.width,0)),_e=this.pointCoordinate(new i.Point(this.width,this.height)),ne=this.pointCoordinate(new i.Point(0,this.height)),Le=Math.floor(Math.min(O.x,K.x,_e.x,ne.x)),Ze=Math.floor(Math.max(O.x,K.x,_e.x,ne.x)),kt=1,dr=Le-kt;dr<=Ze+kt;dr++)dr!==0&&J.push(new i.UnwrappedTileID(dr,R));return J},nu.prototype.coveringTiles=function(R){var J=this.coveringZoomLevel(R),O=J;if(R.minzoom!==void 0&&JR.maxzoom&&(J=R.maxzoom);var K=i.MercatorCoordinate.fromLngLat(this.center),_e=Math.pow(2,J),ne=[_e*K.x,_e*K.y,0],Le=Ol.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,J),Ze=R.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(Ze=J);var kt=3,dr=function(Yi){return{aabb:new ou([Yi*_e,0,0],[(Yi+1)*_e,_e,0]),zoom:0,x:0,y:0,wrap:Yi,fullyVisible:!1}},Mr=[],lr=[],$e=J,ht=R.reparseOverscaled?O:J;if(this._renderWorldCopies)for(var bt=1;bt<=3;bt++)Mr.push(dr(-bt)),Mr.push(dr(bt));for(Mr.push(dr(0));Mr.length>0;){var Kt=Mr.pop(),sr=Kt.x,Qt=Kt.y,ur=Kt.fullyVisible;if(!ur){var er=Kt.aabb.intersects(Le);if(er===0)continue;ur=er===2}var Ot=Kt.aabb.distanceX(ne),Jt=Kt.aabb.distanceY(ne),Lt=Math.max(Math.abs(Ot),Math.abs(Jt)),Ar=kt+(1<<$e-Kt.zoom)-2;if(Kt.zoom===$e||Lt>Ar&&Kt.zoom>=Ze){lr.push({tileID:new i.OverscaledTileID(Kt.zoom===$e?ht:Kt.zoom,Kt.wrap,Kt.zoom,sr,Qt),distanceSq:i.sqrLen([ne[0]-.5-sr,ne[1]-.5-Qt])});continue}for(var Ur=0;Ur<4;Ur++){var hi=(sr<<1)+Ur%2,Cn=(Qt<<1)+(Ur>>1);Mr.push({aabb:Kt.aabb.quadrant(Ur),zoom:Kt.zoom+1,x:hi,y:Cn,wrap:Kt.wrap,fullyVisible:ur})}}return lr.sort(function(Yi,yn){return Yi.distanceSq-yn.distanceSq}).map(function(Yi){return Yi.tileID})},nu.prototype.resize=function(R,J){this.width=R,this.height=J,this.pixelsToGLUnits=[2/R,-2/J],this._constrain(),this._calcMatrices()},tu.unmodified.get=function(){return this._unmodified},nu.prototype.zoomScale=function(R){return Math.pow(2,R)},nu.prototype.scaleZoom=function(R){return Math.log(R)/Math.LN2},nu.prototype.project=function(R){var J=i.clamp(R.lat,-this.maxValidLatitude,this.maxValidLatitude);return new i.Point(i.mercatorXfromLng(R.lng)*this.worldSize,i.mercatorYfromLat(J)*this.worldSize)},nu.prototype.unproject=function(R){return new i.MercatorCoordinate(R.x/this.worldSize,R.y/this.worldSize).toLngLat()},tu.point.get=function(){return this.project(this.center)},nu.prototype.setLocationAtPoint=function(R,J){var O=this.pointCoordinate(J),K=this.pointCoordinate(this.centerPoint),_e=this.locationCoordinate(R),ne=new i.MercatorCoordinate(_e.x-(O.x-K.x),_e.y-(O.y-K.y));this.center=this.coordinateLocation(ne),this._renderWorldCopies&&(this.center=this.center.wrap())},nu.prototype.locationPoint=function(R){return this.coordinatePoint(this.locationCoordinate(R))},nu.prototype.pointLocation=function(R){return this.coordinateLocation(this.pointCoordinate(R))},nu.prototype.locationCoordinate=function(R){return i.MercatorCoordinate.fromLngLat(R)},nu.prototype.coordinateLocation=function(R){return R.toLngLat()},nu.prototype.pointCoordinate=function(R){var J=0,O=[R.x,R.y,0,1],K=[R.x,R.y,1,1];i.transformMat4(O,O,this.pixelMatrixInverse),i.transformMat4(K,K,this.pixelMatrixInverse);var _e=O[3],ne=K[3],Le=O[0]/_e,Ze=K[0]/ne,kt=O[1]/_e,dr=K[1]/ne,Mr=O[2]/_e,lr=K[2]/ne,$e=Mr===lr?0:(J-Mr)/(lr-Mr);return new i.MercatorCoordinate(i.number(Le,Ze,$e)/this.worldSize,i.number(kt,dr,$e)/this.worldSize)},nu.prototype.coordinatePoint=function(R){var J=[R.x*this.worldSize,R.y*this.worldSize,0,1];return i.transformMat4(J,J,this.pixelMatrix),new i.Point(J[0]/J[3],J[1]/J[3])},nu.prototype.getBounds=function(){return new i.LngLatBounds().extend(this.pointLocation(new i.Point(0,0))).extend(this.pointLocation(new i.Point(this.width,0))).extend(this.pointLocation(new i.Point(this.width,this.height))).extend(this.pointLocation(new i.Point(0,this.height)))},nu.prototype.getMaxBounds=function(){return!this.latRange||this.latRange.length!==2||!this.lngRange||this.lngRange.length!==2?null:new i.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]])},nu.prototype.setMaxBounds=function(R){R?(this.lngRange=[R.getWest(),R.getEast()],this.latRange=[R.getSouth(),R.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},nu.prototype.calculatePosMatrix=function(R,J){J===void 0&&(J=!1);var O=R.key,K=J?this._alignedPosMatrixCache:this._posMatrixCache;if(K[O])return K[O];var _e=R.canonical,ne=this.worldSize/this.zoomScale(_e.z),Le=_e.x+Math.pow(2,_e.z)*R.wrap,Ze=i.identity(new Float64Array(16));return i.translate(Ze,Ze,[Le*ne,_e.y*ne,0]),i.scale(Ze,Ze,[ne/i.EXTENT,ne/i.EXTENT,1]),i.multiply(Ze,J?this.alignedProjMatrix:this.projMatrix,Ze),K[O]=new Float32Array(Ze),K[O]},nu.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},nu.prototype._constrain=function(){if(!(!this.center||!this.width||!this.height||this._constraining)){this._constraining=!0;var R=-90,J=90,O=-180,K=180,_e,ne,Le,Ze,kt=this.size,dr=this._unmodified;if(this.latRange){var Mr=this.latRange;R=i.mercatorYfromLat(Mr[1])*this.worldSize,J=i.mercatorYfromLat(Mr[0])*this.worldSize,_e=J-RJ&&(Ze=J-Kt)}if(this.lngRange){var sr=$e.x,Qt=kt.x/2;sr-QtK&&(Le=K-Qt)}(Le!==void 0||Ze!==void 0)&&(this.center=this.unproject(new i.Point(Le!==void 0?Le:$e.x,Ze!==void 0?Ze:$e.y))),this._unmodified=dr,this._constraining=!1}},nu.prototype._calcMatrices=function(){if(this.height){var R=this._fov/2,J=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(R)*this.height;var O=Math.PI/2+this._pitch,K=this._fov*(.5+J.y/this.height),_e=Math.sin(K)*this.cameraToCenterDistance/Math.sin(i.clamp(Math.PI-O-K,.01,Math.PI-.01)),ne=this.point,Le=ne.x,Ze=ne.y,kt=Math.cos(Math.PI/2-this._pitch)*_e+this.cameraToCenterDistance,dr=kt*1.01,Mr=this.height/50,lr=new Float64Array(16);i.perspective(lr,this._fov,this.width/this.height,Mr,dr),lr[8]=-J.x*2/this.width,lr[9]=J.y*2/this.height,i.scale(lr,lr,[1,-1,1]),i.translate(lr,lr,[0,0,-this.cameraToCenterDistance]),i.rotateX(lr,lr,this._pitch),i.rotateZ(lr,lr,this.angle),i.translate(lr,lr,[-Le,-Ze,0]),this.mercatorMatrix=i.scale([],lr,[this.worldSize,this.worldSize,this.worldSize]),i.scale(lr,lr,[1,1,i.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=lr,this.invProjMatrix=i.invert([],this.projMatrix);var $e=this.width%2/2,ht=this.height%2/2,bt=Math.cos(this.angle),Kt=Math.sin(this.angle),sr=Le-Math.round(Le)+bt*$e+Kt*ht,Qt=Ze-Math.round(Ze)+bt*ht+Kt*$e,ur=new Float64Array(lr);if(i.translate(ur,ur,[sr>.5?sr-1:sr,Qt>.5?Qt-1:Qt,0]),this.alignedProjMatrix=ur,lr=i.create(),i.scale(lr,lr,[this.width/2,-this.height/2,1]),i.translate(lr,lr,[1,-1,0]),this.labelPlaneMatrix=lr,lr=i.create(),i.scale(lr,lr,[1,-1,1]),i.translate(lr,lr,[-1,-1,0]),i.scale(lr,lr,[2/this.width,2/this.height,1]),this.glCoordMatrix=lr,this.pixelMatrix=i.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),lr=i.invert(new Float64Array(16),this.pixelMatrix),!lr)throw new Error("failed to invert matrix");this.pixelMatrixInverse=lr,this._posMatrixCache={},this._alignedPosMatrixCache={}}},nu.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var R=this.pointCoordinate(new i.Point(0,0)),J=[R.x*this.worldSize,R.y*this.worldSize,0,1],O=i.transformMat4(J,J,this.pixelMatrix);return O[3]/this.cameraToCenterDistance},nu.prototype.getCameraPoint=function(){var R=this._pitch,J=Math.tan(R)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new i.Point(0,J))},nu.prototype.getCameraQueryGeometry=function(R){var J=this.getCameraPoint();if(R.length===1)return[R[0],J];for(var O=J.x,K=J.y,_e=J.x,ne=J.y,Le=0,Ze=R;Le=3&&!R.some(function(O){return isNaN(O)})){var J=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(R[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+R[2],+R[1]],zoom:+R[0],bearing:J,pitch:+(R[4]||0)}),!0}return!1},$u.prototype._updateHashUnthrottled=function(){var R=i.window.location.href.replace(/(#.+)?$/,this.getHashString());try{i.window.history.replaceState(i.window.history.state,null,R)}catch(J){}};var Ku={linearity:.3,easing:i.bezier(0,0,.3,1)},Wu=i.extend({deceleration:2500,maxSpeed:1400},Ku),ju=i.extend({deceleration:20,maxSpeed:1400},Ku),sf=i.extend({deceleration:1e3,maxSpeed:360},Ku),_f=i.extend({deceleration:1e3,maxSpeed:90},Ku),Qu=function(R){this._map=R,this.clear()};Qu.prototype.clear=function(){this._inertiaBuffer=[]},Qu.prototype.record=function(R){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:i.browser.now(),settings:R})},Qu.prototype._drainInertiaBuffer=function(){for(var R=this._inertiaBuffer,J=i.browser.now(),O=160;R.length>0&&J-R[0].time>O;)R.shift()},Qu.prototype._onMoveEnd=function(R){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var J={zoom:0,bearing:0,pitch:0,pan:new i.Point(0,0),pinchAround:void 0,around:void 0},O=0,K=this._inertiaBuffer;O=this._clickTolerance||this._map.fire(new se(R.type,this._map,R))},Qe.prototype.dblclick=function(R){return this._firePreventable(new se(R.type,this._map,R))},Qe.prototype.mouseover=function(R){this._map.fire(new se(R.type,this._map,R))},Qe.prototype.mouseout=function(R){this._map.fire(new se(R.type,this._map,R))},Qe.prototype.touchstart=function(R){return this._firePreventable(new Pe(R.type,this._map,R))},Qe.prototype.touchmove=function(R){this._map.fire(new Pe(R.type,this._map,R))},Qe.prototype.touchend=function(R){this._map.fire(new Pe(R.type,this._map,R))},Qe.prototype.touchcancel=function(R){this._map.fire(new Pe(R.type,this._map,R))},Qe.prototype._firePreventable=function(R){if(this._map.fire(R),R.defaultPrevented)return{}},Qe.prototype.isEnabled=function(){return!0},Qe.prototype.isActive=function(){return!1},Qe.prototype.enable=function(){},Qe.prototype.disable=function(){};var st=function(R){this._map=R};st.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},st.prototype.mousemove=function(R){this._map.fire(new se(R.type,this._map,R))},st.prototype.mousedown=function(){this._delayContextMenu=!0},st.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new se("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},st.prototype.contextmenu=function(R){this._delayContextMenu?this._contextMenuEvent=R:this._map.fire(new se(R.type,this._map,R)),this._map.listens("contextmenu")&&R.preventDefault()},st.prototype.isEnabled=function(){return!0},st.prototype.isActive=function(){return!1},st.prototype.enable=function(){},st.prototype.disable=function(){};var jt=function(R,J){this._map=R,this._el=R.getCanvasContainer(),this._container=R.getContainer(),this._clickTolerance=J.clickTolerance||1};jt.prototype.isEnabled=function(){return!!this._enabled},jt.prototype.isActive=function(){return!!this._active},jt.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},jt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},jt.prototype.mousedown=function(R,J){this.isEnabled()&&R.shiftKey&&R.button===0&&(o.disableDrag(),this._startPos=this._lastPos=J,this._active=!0)},jt.prototype.mousemoveWindow=function(R,J){if(this._active){var O=J;if(!(this._lastPos.equals(O)||!this._box&&O.dist(this._startPos)this.numTouches)&&(this.aborted=!0),!this.aborted&&(this.startTime===void 0&&(this.startTime=R.timeStamp),O.length===this.numTouches&&(this.centroid=hr(J),this.touches=_t(O,J)))},$r.prototype.touchmove=function(R,J,O){if(!(this.aborted||!this.centroid)){var K=_t(O,J);for(var _e in this.touches){var ne=this.touches[_e],Le=K[_e];(!Le||Le.dist(ne)>fi)&&(this.aborted=!0)}}},$r.prototype.touchend=function(R,J,O){if((!this.centroid||R.timeStamp-this.startTime>zr)&&(this.aborted=!0),O.length===0){var K=!this.aborted&&this.centroid;if(this.reset(),K)return K}};var Bi=function(R){this.singleTap=new $r(R),this.numTaps=R.numTaps,this.reset()};Bi.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Bi.prototype.touchstart=function(R,J,O){this.singleTap.touchstart(R,J,O)},Bi.prototype.touchmove=function(R,J,O){this.singleTap.touchmove(R,J,O)},Bi.prototype.touchend=function(R,J,O){var K=this.singleTap.touchend(R,J,O);if(K){var _e=R.timeStamp-this.lastTime0&&(this._active=!0);var K=_t(O,J),_e=new i.Point(0,0),ne=new i.Point(0,0),Le=0;for(var Ze in K){var kt=K[Ze],dr=this._touches[Ze];dr&&(_e._add(kt),ne._add(kt.sub(dr)),Le++,K[Ze]=kt)}if(this._touches=K,!(LeMath.abs(Y.x)}var ds=100,Wl=function(Y){function R(){Y.apply(this,arguments)}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R.prototype.reset=function(){Y.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},R.prototype._start=function(O){this._lastPoints=O,tf(O[0].sub(O[1]))&&(this._valid=!1)},R.prototype._move=function(O,K,_e){var ne=O[0].sub(this._lastPoints[0]),Le=O[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(ne,Le,_e.timeStamp),!!this._valid){this._lastPoints=O,this._active=!0;var Ze=(ne.y+Le.y)/2,kt=-.5;return{pitchDelta:Ze*kt}}},R.prototype.gestureBeginsVertically=function(O,K,_e){if(this._valid!==void 0)return this._valid;var ne=2,Le=O.mag()>=ne,Ze=K.mag()>=ne;if(!(!Le&&!Ze)){if(!Le||!Ze)return this._firstMove===void 0&&(this._firstMove=_e),_e-this._firstMove0==K.y>0;return tf(O)&&tf(K)&&kt}},R}(js),Tu={panStep:100,bearingStep:15,pitchStep:10},Au=function(){var R=Tu;this._panStep=R.panStep,this._bearingStep=R.bearingStep,this._pitchStep=R.pitchStep,this._rotationDisabled=!1};Au.prototype.reset=function(){this._active=!1},Au.prototype.keydown=function(R){var J=this;if(!(R.altKey||R.ctrlKey||R.metaKey)){var O=0,K=0,_e=0,ne=0,Le=0;switch(R.keyCode){case 61:case 107:case 171:case 187:O=1;break;case 189:case 109:case 173:O=-1;break;case 37:R.shiftKey?K=-1:(R.preventDefault(),ne=-1);break;case 39:R.shiftKey?K=1:(R.preventDefault(),ne=1);break;case 38:R.shiftKey?_e=1:(R.preventDefault(),Le=-1);break;case 40:R.shiftKey?_e=-1:(R.preventDefault(),Le=1);break;default:return}return this._rotationDisabled&&(K=0,_e=0),{cameraAnimation:function(Ze){var kt=Ze.getZoom();Ze.easeTo({duration:300,easeId:"keyboardHandler",easing:lf,zoom:O?Math.round(kt)+O*(R.shiftKey?2:1):kt,bearing:Ze.getBearing()+K*J._bearingStep,pitch:Ze.getPitch()+_e*J._pitchStep,offset:[-ne*J._panStep,-Le*J._panStep],center:Ze.getCenter()},{originalEvent:R})}}}},Au.prototype.enable=function(){this._enabled=!0},Au.prototype.disable=function(){this._enabled=!1,this.reset()},Au.prototype.isEnabled=function(){return this._enabled},Au.prototype.isActive=function(){return this._active},Au.prototype.disableRotation=function(){this._rotationDisabled=!0},Au.prototype.enableRotation=function(){this._rotationDisabled=!1};function lf(Y){return Y*(2-Y)}var hf=4.000244140625,Mf=1/100,pf=1/450,fc=2,Be=function(R,J){this._map=R,this._el=R.getCanvasContainer(),this._handler=J,this._delta=0,this._defaultZoomRate=Mf,this._wheelZoomRate=pf,i.bindAll(["_onTimeout"],this)};Be.prototype.setZoomRate=function(R){this._defaultZoomRate=R},Be.prototype.setWheelZoomRate=function(R){this._wheelZoomRate=R},Be.prototype.isEnabled=function(){return!!this._enabled},Be.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},Be.prototype.isZooming=function(){return!!this._zooming},Be.prototype.enable=function(R){this.isEnabled()||(this._enabled=!0,this._aroundCenter=R&&R.around==="center")},Be.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Be.prototype.wheel=function(R){if(this.isEnabled()){var J=R.deltaMode===i.window.WheelEvent.DOM_DELTA_LINE?R.deltaY*40:R.deltaY,O=i.browser.now(),K=O-(this._lastWheelEventTime||0);this._lastWheelEventTime=O,J!==0&&J%hf===0?this._type="wheel":J!==0&&Math.abs(J)<4?this._type="trackpad":K>400?(this._type=null,this._lastValue=J,this._timeout=setTimeout(this._onTimeout,40,R)):this._type||(this._type=Math.abs(K*J)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,J+=this._lastValue)),R.shiftKey&&J&&(J=J/4),this._type&&(this._lastWheelEvent=R,this._delta-=J,this._active||this._start(R)),R.preventDefault()}},Be.prototype._onTimeout=function(R){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(R)},Be.prototype._start=function(R){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var J=o.mousePos(this._el,R);this._around=i.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(J)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},Be.prototype.renderFrame=function(){var R=this;if(this._frameId&&(this._frameId=null,!!this.isActive())){var J=this._map.transform;if(this._delta!==0){var O=this._type==="wheel"&&Math.abs(this._delta)>hf?this._wheelZoomRate:this._defaultZoomRate,K=fc/(1+Math.exp(-Math.abs(this._delta*O)));this._delta<0&&K!==0&&(K=1/K);var _e=typeof this._targetZoom=="number"?J.zoomScale(this._targetZoom):J.scale;this._targetZoom=Math.min(J.maxZoom,Math.max(J.minZoom,J.scaleZoom(_e*K))),this._type==="wheel"&&(this._startZoom=J.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var ne=typeof this._targetZoom=="number"?this._targetZoom:J.zoom,Le=this._startZoom,Ze=this._easing,kt=!1,dr;if(this._type==="wheel"&&Le&&Ze){var Mr=Math.min((i.browser.now()-this._lastWheelEventTime)/200,1),lr=Ze(Mr);dr=i.number(Le,ne,lr),Mr<1?this._frameId||(this._frameId=!0):kt=!0}else dr=ne,kt=!0;return this._active=!0,kt&&(this._active=!1,this._finishTimeout=setTimeout(function(){R._zooming=!1,R._handler._triggerRenderFrame(),delete R._targetZoom,delete R._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!kt,zoomDelta:dr-J.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},Be.prototype._smoothOutEasing=function(R){var J=i.ease;if(this._prevEase){var O=this._prevEase,K=(i.browser.now()-O.start)/O.duration,_e=O.easing(K+.01)-O.easing(K),ne=.27/Math.sqrt(_e*_e+1e-4)*.01,Le=Math.sqrt(.27*.27-ne*ne);J=i.bezier(ne,Le,.25,1)}return this._prevEase={start:i.browser.now(),duration:R,easing:J},J},Be.prototype.reset=function(){this._active=!1};var qt=function(R,J){this._clickZoom=R,this._tapZoom=J};qt.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},qt.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},qt.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},qt.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var ar=function(){this.reset()};ar.prototype.reset=function(){this._active=!1},ar.prototype.dblclick=function(R,J){return R.preventDefault(),{cameraAnimation:function(O){O.easeTo({duration:300,zoom:O.getZoom()+(R.shiftKey?-1:1),around:O.unproject(J)},{originalEvent:R})}}},ar.prototype.enable=function(){this._enabled=!0},ar.prototype.disable=function(){this._enabled=!1,this.reset()},ar.prototype.isEnabled=function(){return this._enabled},ar.prototype.isActive=function(){return this._active};var Qr=function(){this._tap=new Bi({numTouches:1,numTaps:1}),this.reset()};Qr.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},Qr.prototype.touchstart=function(R,J,O){this._swipePoint||(this._tapTime&&R.timeStamp-this._tapTime>Cr&&this.reset(),this._tapTime?O.length>0&&(this._swipePoint=J[0],this._swipeTouch=O[0].identifier):this._tap.touchstart(R,J,O))},Qr.prototype.touchmove=function(R,J,O){if(!this._tapTime)this._tap.touchmove(R,J,O);else if(this._swipePoint){if(O[0].identifier!==this._swipeTouch)return;var K=J[0],_e=K.y-this._swipePoint.y;return this._swipePoint=K,R.preventDefault(),this._active=!0,{zoomDelta:_e/128}}},Qr.prototype.touchend=function(R,J,O){if(this._tapTime)this._swipePoint&&O.length===0&&this.reset();else{var K=this._tap.touchend(R,J,O);K&&(this._tapTime=R.timeStamp)}},Qr.prototype.touchcancel=function(){this.reset()},Qr.prototype.enable=function(){this._enabled=!0},Qr.prototype.disable=function(){this._enabled=!1,this.reset()},Qr.prototype.isEnabled=function(){return this._enabled},Qr.prototype.isActive=function(){return this._active};var yi=function(R,J,O){this._el=R,this._mousePan=J,this._touchPan=O};yi.prototype.enable=function(R){this._inertiaOptions=R||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},yi.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},yi.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},yi.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var ci=function(R,J,O){this._pitchWithRotate=R.pitchWithRotate,this._mouseRotate=J,this._mousePitch=O};ci.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},ci.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},ci.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},ci.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var vi=function(R,J,O,K){this._el=R,this._touchZoom=J,this._touchRotate=O,this._tapDragZoom=K,this._rotationDisabled=!1,this._enabled=!0};vi.prototype.enable=function(R){this._touchZoom.enable(R),this._rotationDisabled||this._touchRotate.enable(R),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},vi.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},vi.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},vi.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},vi.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},vi.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var on=function(Y){return Y.zoom||Y.drag||Y.pitch||Y.rotate},Bn=function(Y){function R(){Y.apply(this,arguments)}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R}(i.Event);function Ln(Y){return Y.panDelta&&Y.panDelta.mag()||Y.zoomDelta||Y.bearingDelta||Y.pitchDelta}var wn=function(R,J){this._map=R,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Qu(R),this._bearingSnap=J.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(J),i.bindAll(["handleEvent","handleWindowEvent"],this);var O=this._el;this._listeners=[[O,"touchstart",{passive:!0}],[O,"touchmove",{passive:!1}],[O,"touchend",void 0],[O,"touchcancel",void 0],[O,"mousedown",void 0],[O,"mousemove",void 0],[O,"mouseup",void 0],[i.window.document,"mousemove",{capture:!0}],[i.window.document,"mouseup",void 0],[O,"mouseover",void 0],[O,"mouseout",void 0],[O,"dblclick",void 0],[O,"click",void 0],[O,"keydown",{capture:!1}],[O,"keyup",void 0],[O,"wheel",{passive:!1}],[O,"contextmenu",void 0],[i.window,"blur",void 0]];for(var K=0,_e=this._listeners;K<_e.length;K+=1){var ne=_e[K],Le=ne[0],Ze=ne[1],kt=ne[2];o.addEventListener(Le,Ze,Le===i.window.document?this.handleWindowEvent:this.handleEvent,kt)}};wn.prototype.destroy=function(){for(var R=0,J=this._listeners;RLe?Math.min(2,Ot):Math.max(.5,Ot),Yi=Math.pow(Cn,1-Ur),yn=ne.unproject(ur.add(er.mult(Ur*Yi)).mult(hi));ne.setLocationAtPoint(ne.renderWorldCopies?yn.wrap():yn,Kt)}_e._fireMoveEvents(K)},function(Ur){_e._afterEase(K,Ur)},O),this},R.prototype._prepareEase=function(O,K,_e){_e===void 0&&(_e={}),this._moving=!0,!K&&!_e.moving&&this.fire(new i.Event("movestart",O)),this._zooming&&!_e.zooming&&this.fire(new i.Event("zoomstart",O)),this._rotating&&!_e.rotating&&this.fire(new i.Event("rotatestart",O)),this._pitching&&!_e.pitching&&this.fire(new i.Event("pitchstart",O))},R.prototype._fireMoveEvents=function(O){this.fire(new i.Event("move",O)),this._zooming&&this.fire(new i.Event("zoom",O)),this._rotating&&this.fire(new i.Event("rotate",O)),this._pitching&&this.fire(new i.Event("pitch",O))},R.prototype._afterEase=function(O,K){if(!(this._easeId&&K&&this._easeId===K)){delete this._easeId;var _e=this._zooming,ne=this._rotating,Le=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,_e&&this.fire(new i.Event("zoomend",O)),ne&&this.fire(new i.Event("rotateend",O)),Le&&this.fire(new i.Event("pitchend",O)),this.fire(new i.Event("moveend",O))}},R.prototype.flyTo=function(O,K){var _e=this;if(!O.essential&&i.browser.prefersReducedMotion){var ne=i.pick(O,["center","zoom","bearing","pitch","around"]);return this.jumpTo(ne,K)}this.stop(),O=i.extend({offset:[0,0],speed:1.2,curve:1.42,easing:i.ease},O);var Le=this.transform,Ze=this.getZoom(),kt=this.getBearing(),dr=this.getPitch(),Mr=this.getPadding(),lr="zoom"in O?i.clamp(+O.zoom,Le.minZoom,Le.maxZoom):Ze,$e="bearing"in O?this._normalizeBearing(O.bearing,kt):kt,ht="pitch"in O?+O.pitch:dr,bt="padding"in O?O.padding:Le.padding,Kt=Le.zoomScale(lr-Ze),sr=i.Point.convert(O.offset),Qt=Le.centerPoint.add(sr),ur=Le.pointLocation(Qt),er=i.LngLat.convert(O.center||ur);this._normalizeCenter(er);var Ot=Le.project(ur),Jt=Le.project(er).sub(Ot),Lt=O.curve,Ar=Math.max(Le.width,Le.height),Ur=Ar/Kt,hi=Jt.mag();if("minZoom"in O){var Cn=i.clamp(Math.min(O.minZoom,Ze,lr),Le.minZoom,Le.maxZoom),Yi=Ar/Le.zoomScale(Cn-Ze);Lt=Math.sqrt(Yi/hi*2)}var yn=Lt*Lt;function Xa(vu){var zu=(Ur*Ur-Ar*Ar+(vu?-1:1)*yn*yn*hi*hi)/(2*(vu?Ur:Ar)*yn*hi);return Math.log(Math.sqrt(zu*zu+1)-zu)}function ca(vu){return(Math.exp(vu)-Math.exp(-vu))/2}function An(vu){return(Math.exp(vu)+Math.exp(-vu))/2}function Pn(vu){return ca(vu)/An(vu)}var Nn=Xa(0),xa=function(vu){return An(Nn)/An(Nn+Lt*vu)},Zo=function(vu){return Ar*((An(Nn)*Pn(Nn+Lt*vu)-ca(Nn))/yn)/hi},ru=(Xa(1)-Nn)/Lt;if(Math.abs(hi)<1e-6||!isFinite(ru)){if(Math.abs(Ar-Ur)<1e-6)return this.easeTo(O,K);var yu=UrO.maxDuration&&(O.duration=0),this._zooming=!0,this._rotating=kt!==$e,this._pitching=ht!==dr,this._padding=!Le.isPaddingEqual(bt),this._prepareEase(K,!1),this._ease(function(vu){var zu=vu*ru,Ju=1/xa(zu);Le.zoom=vu===1?lr:Ze+Le.scaleZoom(Ju),_e._rotating&&(Le.bearing=i.number(kt,$e,vu)),_e._pitching&&(Le.pitch=i.number(dr,ht,vu)),_e._padding&&(Le.interpolatePadding(Mr,bt,vu),Qt=Le.centerPoint.add(sr));var Vf=vu===1?er:Le.unproject(Ot.add(Jt.mult(Zo(zu))).mult(Ju));Le.setLocationAtPoint(Le.renderWorldCopies?Vf.wrap():Vf,Qt),_e._fireMoveEvents(K)},function(){return _e._afterEase(K)},O),this},R.prototype.isEasing=function(){return!!this._easeFrameId},R.prototype.stop=function(){return this._stop()},R.prototype._stop=function(O,K){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var _e=this._onEaseEnd;delete this._onEaseEnd,_e.call(this,K)}if(!O){var ne=this.handlers;ne&&ne.stop(!1)}return this},R.prototype._ease=function(O,K,_e){_e.animate===!1||_e.duration===0?(O(1),K()):(this._easeStart=i.browser.now(),this._easeOptions=_e,this._onEaseFrame=O,this._onEaseEnd=K,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},R.prototype._renderFrameCallback=function(){var O=Math.min((i.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(O)),O<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},R.prototype._normalizeBearing=function(O,K){O=i.wrap(O,-180,180);var _e=Math.abs(O-K);return Math.abs(O-360-K)<_e&&(O-=360),Math.abs(O+360-K)<_e&&(O+=360),O},R.prototype._normalizeCenter=function(O){var K=this.transform;if(!(!K.renderWorldCopies||K.lngRange)){var _e=O.lng-K.center.lng;O.lng+=_e>180?-360:_e<-180?360:0}},R}(i.Evented),ua=function(R){R===void 0&&(R={}),this.options=R,i.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};ua.prototype.getDefaultPosition=function(){return"bottom-right"},ua.prototype.onAdd=function(R){var J=this.options&&this.options.compact;return this._map=R,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=o.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=o.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),J&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),J===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},ua.prototype.onRemove=function(){o.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0},ua.prototype._setElementTitle=function(R,J){var O=this._map._getUIString("AttributionControl."+J);R.title=O,R.setAttribute("aria-label",O)},ua.prototype._toggleAttribution=function(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","true"))},ua.prototype._updateEditLink=function(){var R=this._editLink;R||(R=this._editLink=this._container.querySelector(".mapbox-improve-map"));var J=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||i.config.ACCESS_TOKEN}];if(R){var O=J.reduce(function(K,_e,ne){return _e.value&&(K+=_e.key+"="+_e.value+(ne=0)return!1;return!0});var Le=R.join(" | ");Le!==this._attribHTML&&(this._attribHTML=Le,R.length?(this._innerContainer.innerHTML=Le,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},ua.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var Hn=function(){i.bindAll(["_updateLogo"],this),i.bindAll(["_updateCompact"],this)};Hn.prototype.onAdd=function(R){this._map=R,this._container=o.create("div","mapboxgl-ctrl");var J=o.create("a","mapboxgl-ctrl-logo");return J.target="_blank",J.rel="noopener nofollow",J.href="https://www.mapbox.com/",J.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),J.setAttribute("rel","noopener nofollow"),this._container.appendChild(J),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},Hn.prototype.onRemove=function(){o.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},Hn.prototype.getDefaultPosition=function(){return"bottom-left"},Hn.prototype._updateLogo=function(R){(!R||R.sourceDataType==="metadata")&&(this._container.style.display=this._logoRequired()?"block":"none")},Hn.prototype._logoRequired=function(){if(this._map.style){var R=this._map.style.sourceCaches;for(var J in R){var O=R[J].getSource();if(O.mapbox_logo)return!0}return!1}},Hn.prototype._updateCompact=function(){var R=this._container.children;if(R.length){var J=R[0];this._map.getCanvasContainer().offsetWidth<250?J.classList.add("mapboxgl-compact"):J.classList.remove("mapboxgl-compact")}};var qi=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};qi.prototype.add=function(R){var J=++this._id,O=this._queue;return O.push({callback:R,id:J,cancelled:!1}),J},qi.prototype.remove=function(R){for(var J=this._currentlyRunning,O=J?this._queue.concat(J):this._queue,K=0,_e=O;K<_e.length;K+=1){var ne=_e[K];if(ne.id===R){ne.cancelled=!0;return}}},qi.prototype.run=function(R){R===void 0&&(R=0);var J=this._currentlyRunning=this._queue;this._queue=[];for(var O=0,K=J;OO.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(O.minPitch!=null&&O.maxPitch!=null&&O.minPitch>O.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(O.minPitch!=null&&O.minPitchhs)throw new Error("maxPitch must be less than or equal to "+hs);var _e=new nu(O.minZoom,O.maxZoom,O.minPitch,O.maxPitch,O.renderWorldCopies);if(Y.call(this,_e,O),this._interactive=O.interactive,this._maxTileCacheSize=O.maxTileCacheSize,this._failIfMajorPerformanceCaveat=O.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=O.preserveDrawingBuffer,this._antialias=O.antialias,this._trackResize=O.trackResize,this._bearingSnap=O.bearingSnap,this._refreshExpiredTiles=O.refreshExpiredTiles,this._fadeDuration=O.fadeDuration,this._crossSourceCollisions=O.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=O.collectResourceTiming,this._renderTaskQueue=new qi,this._controls=[],this._mapId=i.uniqueId(),this._locale=i.extend({},Wr,O.locale),this._clickTolerance=O.clickTolerance,this._requestManager=new i.RequestManager(O.transformRequest,O.accessToken),typeof O.container=="string"){if(this._container=i.window.document.getElementById(O.container),!this._container)throw new Error("Container '"+O.container+"' not found.")}else if(O.container instanceof dn)this._container=O.container;else throw new Error("Invalid type: 'container' must be a String or HTMLElement.");if(O.maxBounds&&this.setMaxBounds(O.maxBounds),i.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return K._update(!1)}),this.on("moveend",function(){return K._update(!1)}),this.on("zoom",function(){return K._update(!0)}),typeof i.window!="undefined"&&(i.window.addEventListener("online",this._onWindowOnline,!1),i.window.addEventListener("resize",this._onWindowResize,!1),i.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new wn(this,O);var ne=typeof O.hash=="string"&&O.hash||void 0;this._hash=O.hash&&new $u(ne).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:O.center,zoom:O.zoom,bearing:O.bearing,pitch:O.pitch}),O.bounds&&(this.resize(),this.fitBounds(O.bounds,i.extend({},O.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=O.localIdeographFontFamily,O.style&&this.setStyle(O.style,{localIdeographFontFamily:O.localIdeographFontFamily}),O.attributionControl&&this.addControl(new ua({customAttribution:O.customAttribution})),this.addControl(new Hn,O.logoPosition),this.on("style.load",function(){K.transform.unmodified&&K.jumpTo(K.style.stylesheet)}),this.on("data",function(Le){K._update(Le.dataType==="style"),K.fire(new i.Event(Le.dataType+"data",Le))}),this.on("dataloading",function(Le){K.fire(new i.Event(Le.dataType+"dataloading",Le))})}Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R;var J={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return R.prototype._getMapId=function(){return this._mapId},R.prototype.addControl=function(K,_e){if(_e===void 0&&(K.getDefaultPosition?_e=K.getDefaultPosition():_e="top-right"),!K||!K.onAdd)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var ne=K.onAdd(this);this._controls.push(K);var Le=this._controlPositions[_e];return _e.indexOf("bottom")!==-1?Le.insertBefore(ne,Le.firstChild):Le.appendChild(ne),this},R.prototype.removeControl=function(K){if(!K||!K.onRemove)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var _e=this._controls.indexOf(K);return _e>-1&&this._controls.splice(_e,1),K.onRemove(this),this},R.prototype.hasControl=function(K){return this._controls.indexOf(K)>-1},R.prototype.resize=function(K){var _e=this._containerDimensions(),ne=_e[0],Le=_e[1];this._resizeCanvas(ne,Le),this.transform.resize(ne,Le),this.painter.resize(ne,Le);var Ze=!this._moving;return Ze&&(this.stop(),this.fire(new i.Event("movestart",K)).fire(new i.Event("move",K))),this.fire(new i.Event("resize",K)),Ze&&this.fire(new i.Event("moveend",K)),this},R.prototype.getBounds=function(){return this.transform.getBounds()},R.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},R.prototype.setMaxBounds=function(K){return this.transform.setMaxBounds(i.LngLatBounds.convert(K)),this._update()},R.prototype.setMinZoom=function(K){if(K=K==null?Zi:K,K>=Zi&&K<=this.transform.maxZoom)return this.transform.minZoom=K,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=K,this._update(),this.getZoom()>K&&this.setZoom(K),this;throw new Error("maxZoom must be greater than the current minZoom")},R.prototype.getMaxZoom=function(){return this.transform.maxZoom},R.prototype.setMinPitch=function(K){if(K=K==null?Kn:K,K=Kn&&K<=this.transform.maxPitch)return this.transform.minPitch=K,this._update(),this.getPitch()hs)throw new Error("maxPitch must be less than or equal to "+hs);if(K>=this.transform.minPitch)return this.transform.maxPitch=K,this._update(),this.getPitch()>K&&this.setPitch(K),this;throw new Error("maxPitch must be greater than the current minPitch")},R.prototype.getMaxPitch=function(){return this.transform.maxPitch},R.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},R.prototype.setRenderWorldCopies=function(K){return this.transform.renderWorldCopies=K,this._update()},R.prototype.project=function(K){return this.transform.locationPoint(i.LngLat.convert(K))},R.prototype.unproject=function(K){return this.transform.pointLocation(i.Point.convert(K))},R.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},R.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},R.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},R.prototype._createDelegatedListener=function(K,_e,ne){var Le=this,Ze;if(K==="mouseenter"||K==="mouseover"){var kt=!1,dr=function(Kt){var sr=Le.getLayer(_e)?Le.queryRenderedFeatures(Kt.point,{layers:[_e]}):[];sr.length?kt||(kt=!0,ne.call(Le,new se(K,Le,Kt.originalEvent,{features:sr}))):kt=!1},Mr=function(){kt=!1};return{layer:_e,listener:ne,delegates:{mousemove:dr,mouseout:Mr}}}else if(K==="mouseleave"||K==="mouseout"){var lr=!1,$e=function(Kt){var sr=Le.getLayer(_e)?Le.queryRenderedFeatures(Kt.point,{layers:[_e]}):[];sr.length?lr=!0:lr&&(lr=!1,ne.call(Le,new se(K,Le,Kt.originalEvent)))},ht=function(Kt){lr&&(lr=!1,ne.call(Le,new se(K,Le,Kt.originalEvent)))};return{layer:_e,listener:ne,delegates:{mousemove:$e,mouseout:ht}}}else{var bt=function(Kt){var sr=Le.getLayer(_e)?Le.queryRenderedFeatures(Kt.point,{layers:[_e]}):[];sr.length&&(Kt.features=sr,ne.call(Le,Kt),delete Kt.features)};return{layer:_e,listener:ne,delegates:(Ze={},Ze[K]=bt,Ze)}}},R.prototype.on=function(K,_e,ne){if(ne===void 0)return Y.prototype.on.call(this,K,_e);var Le=this._createDelegatedListener(K,_e,ne);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[K]=this._delegatedListeners[K]||[],this._delegatedListeners[K].push(Le);for(var Ze in Le.delegates)this.on(Ze,Le.delegates[Ze]);return this},R.prototype.once=function(K,_e,ne){if(ne===void 0)return Y.prototype.once.call(this,K,_e);var Le=this._createDelegatedListener(K,_e,ne);for(var Ze in Le.delegates)this.once(Ze,Le.delegates[Ze]);return this},R.prototype.off=function(K,_e,ne){var Le=this;if(ne===void 0)return Y.prototype.off.call(this,K,_e);var Ze=function(kt){for(var dr=kt[K],Mr=0;Mr180;){var ne=J.locationPoint(Y);if(ne.x>=0&&ne.y>=0&&ne.x<=J.width&&ne.y<=J.height)break;Y.lng>J.center.lng?Y.lng-=360:Y.lng+=360}return Y}var _s={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function ul(Y,R,J){var O=Y.classList;for(var K in _s)O.remove("mapboxgl-"+J+"-anchor-"+K);O.add("mapboxgl-"+J+"-anchor-"+R)}var Qn=function(Y){function R(J,O){if(Y.call(this),(J instanceof i.window.HTMLElement||O)&&(J=i.extend({element:J},O)),i.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=J&&J.anchor||"center",this._color=J&&J.color||"#3FB1CE",this._scale=J&&J.scale||1,this._draggable=J&&J.draggable||!1,this._clickTolerance=J&&J.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=J&&J.rotation||0,this._rotationAlignment=J&&J.rotationAlignment||"auto",this._pitchAlignment=J&&J.pitchAlignment&&J.pitchAlignment!=="auto"?J.pitchAlignment:this._rotationAlignment,!J||!J.element){this._defaultMarker=!0,this._element=o.create("div"),this._element.setAttribute("aria-label","Map marker");var K=o.createNS("http://www.w3.org/2000/svg","svg"),_e=41,ne=27;K.setAttributeNS(null,"display","block"),K.setAttributeNS(null,"height",_e+"px"),K.setAttributeNS(null,"width",ne+"px"),K.setAttributeNS(null,"viewBox","0 0 "+ne+" "+_e);var Le=o.createNS("http://www.w3.org/2000/svg","g");Le.setAttributeNS(null,"stroke","none"),Le.setAttributeNS(null,"stroke-width","1"),Le.setAttributeNS(null,"fill","none"),Le.setAttributeNS(null,"fill-rule","evenodd");var Ze=o.createNS("http://www.w3.org/2000/svg","g");Ze.setAttributeNS(null,"fill-rule","nonzero");var kt=o.createNS("http://www.w3.org/2000/svg","g");kt.setAttributeNS(null,"transform","translate(3.0, 29.0)"),kt.setAttributeNS(null,"fill","#000000");for(var dr=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}],Mr=0,lr=dr;Mr=K}this._isDragging&&(this._pos=O.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new i.Event("dragstart"))),this.fire(new i.Event("drag")))},R.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new i.Event("dragend")),this._state="inactive"},R.prototype._addDragHandler=function(O){this._element.contains(O.originalEvent.target)&&(O.preventDefault(),this._positionDelta=O.point.sub(this._pos).add(this._offset),this._pointerdownPos=O.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},R.prototype.setDraggable=function(O){return this._draggable=!!O,this._map&&(O?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},R.prototype.isDraggable=function(){return this._draggable},R.prototype.setRotation=function(O){return this._rotation=O||0,this._update(),this},R.prototype.getRotation=function(){return this._rotation},R.prototype.setRotationAlignment=function(O){return this._rotationAlignment=O||"auto",this._update(),this},R.prototype.getRotationAlignment=function(){return this._rotationAlignment},R.prototype.setPitchAlignment=function(O){return this._pitchAlignment=O&&O!=="auto"?O:this._rotationAlignment,this._update(),this},R.prototype.getPitchAlignment=function(){return this._pitchAlignment},R}(i.Evented),Mo={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},nl;function pl(Y){nl!==void 0?Y(nl):i.window.navigator.permissions!==void 0?i.window.navigator.permissions.query({name:"geolocation"}).then(function(R){nl=R.state!=="denied",Y(nl)}):(nl=!!i.window.navigator.geolocation,Y(nl))}var Dl=0,Fu=!1,vf=function(Y){function R(J){Y.call(this),this.options=i.extend({},Mo,J),i.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R.prototype.onAdd=function(O){return this._map=O,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),pl(this._setupUI),this._container},R.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),o.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,Dl=0,Fu=!1},R.prototype._isOutOfMapMaxBounds=function(O){var K=this._map.getMaxBounds(),_e=O.coords;return K&&(_e.longitudeK.getEast()||_e.latitudeK.getNorth())},R.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break}},R.prototype._onSuccess=function(O){if(this._map){if(this._isOutOfMapMaxBounds(O)){this._setErrorState(),this.fire(new i.Event("outofmaxbounds",O)),this._updateMarker(),this._finish();return}if(this.options.trackUserLocation)switch(this._lastKnownPosition=O,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(O),(!this.options.trackUserLocation||this._watchState==="ACTIVE_LOCK")&&this._updateCamera(O),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("geolocate",O)),this._finish()}},R.prototype._updateCamera=function(O){var K=new i.LngLat(O.coords.longitude,O.coords.latitude),_e=O.coords.accuracy,ne=this._map.getBearing(),Le=i.extend({bearing:ne},this.options.fitBoundsOptions);this._map.fitBounds(K.toBounds(_e),Le,{geolocateSource:!0})},R.prototype._updateMarker=function(O){if(O){var K=new i.LngLat(O.coords.longitude,O.coords.latitude);this._accuracyCircleMarker.setLngLat(K).addTo(this._map),this._userLocationDotMarker.setLngLat(K).addTo(this._map),this._accuracy=O.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},R.prototype._updateCircleRadius=function(){var O=this._map._container.clientHeight/2,K=this._map.unproject([0,O]),_e=this._map.unproject([1,O]),ne=K.distanceTo(_e),Le=Math.ceil(2*this._accuracy/ne);this._circleElement.style.width=Le+"px",this._circleElement.style.height=Le+"px"},R.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},R.prototype._onError=function(O){if(this._map){if(this.options.trackUserLocation)if(O.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var K=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=K,this._geolocateButton.setAttribute("aria-label",K),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(O.code===3&&Fu)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("error",O)),this._finish()}},R.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},R.prototype._setupUI=function(O){var K=this;if(this._container.addEventListener("contextmenu",function(Le){return Le.preventDefault()}),this._geolocateButton=o.create("button","mapboxgl-ctrl-geolocate",this._container),o.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",O===!1){i.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var _e=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=_e,this._geolocateButton.setAttribute("aria-label",_e)}else{var ne=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=ne,this._geolocateButton.setAttribute("aria-label",ne)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=o.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new Qn(this._dotElement),this._circleElement=o.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Qn({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",function(Le){var Ze=Le.originalEvent&&Le.originalEvent.type==="resize";!Le.geolocateSource&&K._watchState==="ACTIVE_LOCK"&&!Ze&&(K._watchState="BACKGROUND",K._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),K._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),K.fire(new i.Event("trackuserlocationend")))})},R.prototype.trigger=function(){if(!this._setup)return i.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new i.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Dl--,Fu=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new i.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new i.Event("trackuserlocationstart"));break}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error");break}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),Dl++;var O;Dl>1?(O={maximumAge:6e5,timeout:0},Fu=!0):(O=this.options.positionOptions,Fu=!1),this._geolocationWatchID=i.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,O)}}else i.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},R.prototype._clearWatch=function(){i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},R}(i.Evented),Ql={maxWidth:100,unit:"metric"},Ef=function(R){this.options=i.extend({},Ql,R),i.bindAll(["_onMove","setUnit"],this)};Ef.prototype.getDefaultPosition=function(){return"bottom-left"},Ef.prototype._onMove=function(){Cu(this._map,this._container,this.options)},Ef.prototype.onAdd=function(R){return this._map=R,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",R.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},Ef.prototype.onRemove=function(){o.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},Ef.prototype.setUnit=function(R){this.options.unit=R,Cu(this._map,this._container,this.options)};function Cu(Y,R,J){var O=J&&J.maxWidth||100,K=Y._container.clientHeight/2,_e=Y.unproject([0,K]),ne=Y.unproject([O,K]),Le=_e.distanceTo(ne);if(J&&J.unit==="imperial"){var Ze=3.2808*Le;if(Ze>5280){var kt=Ze/5280;gf(R,O,kt,Y._getUIString("ScaleControl.Miles"))}else gf(R,O,Ze,Y._getUIString("ScaleControl.Feet"))}else if(J&&J.unit==="nautical"){var dr=Le/1852;gf(R,O,dr,Y._getUIString("ScaleControl.NauticalMiles"))}else Le>=1e3?gf(R,O,Le/1e3,Y._getUIString("ScaleControl.Kilometers")):gf(R,O,Le,Y._getUIString("ScaleControl.Meters"))}function gf(Y,R,J,O){var K=Cf(J),_e=K/J;Y.style.width=R*_e+"px",Y.innerHTML=K+" "+O}function xf(Y){var R=Math.pow(10,Math.ceil(-Math.log(Y)/Math.LN10));return Math.round(Y*R)/R}function Cf(Y){var R=Math.pow(10,(""+Math.floor(Y)).length-1),J=Y/R;return J=J>=10?10:J>=5?5:J>=3?3:J>=2?2:J>=1?1:xf(J),R*J}var Gu=function(R){this._fullscreen=!1,R&&R.container&&(R.container instanceof i.window.HTMLElement?this._container=R.container:i.warnOnce("Full screen control 'container' must be a DOM element.")),i.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in i.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in i.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in i.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in i.window.document&&(this._fullscreenchange="MSFullscreenChange")};Gu.prototype.onAdd=function(R){return this._map=R,this._container||(this._container=this._map.getContainer()),this._controlContainer=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",i.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},Gu.prototype.onRemove=function(){o.remove(this._controlContainer),this._map=null,i.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},Gu.prototype._checkFullscreenSupport=function(){return!!(i.window.document.fullscreenEnabled||i.window.document.mozFullScreenEnabled||i.window.document.msFullscreenEnabled||i.window.document.webkitFullscreenEnabled)},Gu.prototype._setupUI=function(){var R=this._fullscreenButton=o.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);o.create("span","mapboxgl-ctrl-icon",R).setAttribute("aria-hidden",!0),R.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),i.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},Gu.prototype._updateTitle=function(){var R=this._getTitle();this._fullscreenButton.setAttribute("aria-label",R),this._fullscreenButton.title=R},Gu.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},Gu.prototype._isFullscreen=function(){return this._fullscreen},Gu.prototype._changeIcon=function(){var R=i.window.document.fullscreenElement||i.window.document.mozFullScreenElement||i.window.document.webkitFullscreenElement||i.window.document.msFullscreenElement;R===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},Gu.prototype._onClickFullscreen=function(){this._isFullscreen()?i.window.document.exitFullscreen?i.window.document.exitFullscreen():i.window.document.mozCancelFullScreen?i.window.document.mozCancelFullScreen():i.window.document.msExitFullscreen?i.window.document.msExitFullscreen():i.window.document.webkitCancelFullScreen&&i.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var cf={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},mf=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),Fl=function(Y){function R(J){Y.call(this),this.options=i.extend(Object.create(cf),J),i.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return Y&&(R.__proto__=Y),R.prototype=Object.create(Y&&Y.prototype),R.prototype.constructor=R,R.prototype.addTo=function(O){return this._map&&this.remove(),this._map=O,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new i.Event("open")),this},R.prototype.isOpen=function(){return!!this._map},R.prototype.remove=function(){return this._content&&o.remove(this._content),this._container&&(o.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new i.Event("close")),this},R.prototype.getLngLat=function(){return this._lngLat},R.prototype.setLngLat=function(O){return this._lngLat=i.LngLat.convert(O),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},R.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this},R.prototype.getElement=function(){return this._container},R.prototype.setText=function(O){return this.setDOMContent(i.window.document.createTextNode(O))},R.prototype.setHTML=function(O){var K=i.window.document.createDocumentFragment(),_e=i.window.document.createElement("body"),ne;for(_e.innerHTML=O;ne=_e.firstChild,!!ne;)K.appendChild(ne);return this.setDOMContent(K)},R.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},R.prototype.setMaxWidth=function(O){return this.options.maxWidth=O,this._update(),this},R.prototype.setDOMContent=function(O){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=o.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(O),this._createCloseButton(),this._update(),this._focusFirstElement(),this},R.prototype.addClassName=function(O){this._container&&this._container.classList.add(O)},R.prototype.removeClassName=function(O){this._container&&this._container.classList.remove(O)},R.prototype.setOffset=function(O){return this.options.offset=O,this._update(),this},R.prototype.toggleClassName=function(O){if(this._container)return this._container.classList.toggle(O)},R.prototype._createCloseButton=function(){this.options.closeButton&&(this._closeButton=o.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))},R.prototype._onMouseUp=function(O){this._update(O.point)},R.prototype._onMouseMove=function(O){this._update(O.point)},R.prototype._onDrag=function(O){this._update(O.point)},R.prototype._update=function(O){var K=this,_e=this._lngLat||this._trackPointer;if(!(!this._map||!_e||!this._content)&&(this._container||(this._container=o.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=o.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function($e){return K._container.classList.add($e)}),this._trackPointer&&this._container.classList.add("mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=Va(this._lngLat,this._pos,this._map.transform)),!(this._trackPointer&&!O))){var ne=this._pos=this._trackPointer&&O?O:this._map.project(this._lngLat),Le=this.options.anchor,Ze=bf(this.options.offset);if(!Le){var kt=this._container.offsetWidth,dr=this._container.offsetHeight,Mr;ne.y+Ze.bottom.ythis._map.transform.height-dr?Mr=["bottom"]:Mr=[],ne.xthis._map.transform.width-kt/2&&Mr.push("right"),Mr.length===0?Le="bottom":Le=Mr.join("-")}var lr=ne.add(Ze[Le]).round();o.setTransform(this._container,_s[Le]+" translate("+lr.x+"px,"+lr.y+"px)"),ul(this._container,Le,"popup")}},R.prototype._focusFirstElement=function(){if(!(!this.options.focusAfterOpen||!this._container)){var O=this._container.querySelector(mf);O&&O.focus()}},R.prototype._onClose=function(){this.remove()},R}(i.Evented);function bf(Y){if(Y)if(typeof Y=="number"){var R=Math.round(Math.sqrt(.5*Math.pow(Y,2)));return{center:new i.Point(0,0),top:new i.Point(0,Y),"top-left":new i.Point(R,R),"top-right":new i.Point(-R,R),bottom:new i.Point(0,-Y),"bottom-left":new i.Point(R,-R),"bottom-right":new i.Point(-R,-R),left:new i.Point(Y,0),right:new i.Point(-Y,0)}}else if(Y instanceof i.Point||Array.isArray(Y)){var J=i.Point.convert(Y);return{center:J,top:J,"top-left":J,"top-right":J,bottom:J,"bottom-left":J,"bottom-right":J,left:J,right:J}}else return{center:i.Point.convert(Y.center||[0,0]),top:i.Point.convert(Y.top||[0,0]),"top-left":i.Point.convert(Y["top-left"]||[0,0]),"top-right":i.Point.convert(Y["top-right"]||[0,0]),bottom:i.Point.convert(Y.bottom||[0,0]),"bottom-left":i.Point.convert(Y["bottom-left"]||[0,0]),"bottom-right":i.Point.convert(Y["bottom-right"]||[0,0]),left:i.Point.convert(Y.left||[0,0]),right:i.Point.convert(Y.right||[0,0])};else return bf(new i.Point(0,0))}var cu={version:i.version,supported:a,setRTLTextPlugin:i.setRTLTextPlugin,getRTLTextPluginStatus:i.getRTLTextPluginStatus,Map:Ui,NavigationControl:On,GeolocateControl:vf,AttributionControl:ua,ScaleControl:Ef,FullscreenControl:Gu,Popup:Fl,Marker:Qn,Style:jn,LngLat:i.LngLat,LngLatBounds:i.LngLatBounds,Point:i.Point,MercatorCoordinate:i.MercatorCoordinate,Evented:i.Evented,config:i.config,prewarm:Yr,clearPrewarmedResources:oi,get accessToken(){return i.config.ACCESS_TOKEN},set accessToken(Y){i.config.ACCESS_TOKEN=Y},get baseApiUrl(){return i.config.API_URL},set baseApiUrl(Y){i.config.API_URL=Y},get workerCount(){return ki.workerCount},set workerCount(Y){ki.workerCount=Y},get maxParallelImageRequests(){return i.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(Y){i.config.MAX_PARALLEL_IMAGE_REQUESTS=Y},clearStorage:function(R){i.clearTileCache(R)},workerUrl:""};return cu}),r})});var YGe=Ae((s2r,ZGe)=>{"use strict";var iw=ei(),Zjt=Xf().sanitizeHTML,Yjt=pJ(),WGe=f1();function jGe(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=WGe.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var im=jGe.prototype;im.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=lB(t)};im.needsNewImage=function(e){var t=this.subplot.map;return t.getSource(this.idSource)&&this.sourceType==="image"&&e.sourcetype==="image"&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))};im.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type};im.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]};im.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]};im.updateImage=function(e){var t=this.subplot.map;t.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var r=this.findFollowingMapboxLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)};im.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,!!lB(e)){var r=Kjt(e);t.addSource(this.idSource,r)}};im.findFollowingMapboxLayerId=function(e){if(e==="traces")for(var t=this.subplot.getMapLayers(),r=0;r0){for(var r=0;r0}function XGe(e){var t={},r={};switch(e.type){case"circle":iw.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":iw.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":iw.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var n=e.symbol,i=Yjt(n.textposition,n.iconsize);iw.extendFlat(t,{"icon-image":n.icon+"-15","icon-size":n.iconsize/10,"text-field":n.text,"text-size":n.textfont.size,"text-anchor":i.anchor,"text-offset":i.offset,"symbol-placement":n.placement}),iw.extendFlat(r,{"icon-color":e.color,"text-color":n.textfont.color,"text-opacity":e.opacity});break;case"raster":iw.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity});break}return{layout:t,paint:r}}function Kjt(e){var t=e.sourcetype,r=e.source,n={type:t},i;return t==="geojson"?i="data":t==="vector"?i=typeof r=="string"?"url":"tiles":t==="raster"?(i="tiles",n.tileSize=256):t==="image"&&(i="url",n.coordinates=e.coordinates),n[i]=r,e.sourceattribution&&(n.attribution=Zjt(e.sourceattribution)),n}ZGe.exports=function(t,r,n){var i=new jGe(t,r);return i.update(n),i}});var nHe=Ae((l2r,iHe)=>{"use strict";var bJ=xJ(),wJ=ei(),QGe=ix(),KGe=$l(),Jjt=wu(),$jt=xp(),uB=Xc(),eHe=Em(),Qjt=eHe.drawMode,eXt=eHe.selectMode,tXt=oh().prepSelect,rXt=oh().clearOutline,iXt=oh().clearSelectionsCache,nXt=oh().selectOnClick,_x=f1(),aXt=YGe();function tHe(e,t){this.id=t,this.gd=e;var r=e._fullLayout,n=e._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var jh=tHe.prototype;jh.plot=function(e,t,r){var n=this,i=t[n.id];n.map&&i.accesstoken!==n.accessToken&&(n.map.remove(),n.map=null,n.styleObj=null,n.traceHash={},n.layerList=[]);var a;n.map?a=new Promise(function(o,s){n.updateMap(e,t,o,s)}):a=new Promise(function(o,s){n.createMap(e,t,o,s)}),r.push(a)};jh.createMap=function(e,t,r,n){var i=this,a=t[i.id],o=i.styleObj=rHe(a.style,t);i.accessToken=a.accesstoken;var s=a.bounds,u=s?[[s.west,s.south],[s.east,s.north]]:null,l=i.map=new bJ.Map({container:i.div,style:o.style,center:TJ(a.center),zoom:a.zoom,bearing:a.bearing,pitch:a.pitch,maxBounds:u,interactive:!i.isStatic,preserveDrawingBuffer:i.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new bJ.AttributionControl({compact:!0}));l._canvas.style.left="0px",l._canvas.style.top="0px",i.rejectOnError(n),i.isStatic||i.initFx(e,t);var f=[];f.push(new Promise(function(c){l.once("load",c)})),f=f.concat(QGe.fetchTraceGeoData(e)),Promise.all(f).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};jh.updateMap=function(e,t,r,n){var i=this,a=i.map,o=t[this.id];i.rejectOnError(n);var s=[],u=rHe(o.style,t);JSON.stringify(i.styleObj)!==JSON.stringify(u)&&(i.styleObj=u,a.setStyle(u.style),i.traceHash={},s.push(new Promise(function(l){a.once("styledata",l)}))),s=s.concat(QGe.fetchTraceGeoData(e)),Promise.all(s).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};jh.fillBelowLookup=function(e,t){var r=t[this.id],n=r.layers,i,a,o=this.belowLookup={},s=!1;for(i=0;i1)for(i=0;i-1&&nXt(u.originalEvent,n,[r.xaxis],[r.yaxis],r.id,s),l.indexOf("event")>-1&&uB.click(n,u.originalEvent)}}};jh.updateFx=function(e){var t=this,r=t.map,n=t.gd;if(t.isStatic)return;function i(u){var l=t.map.unproject(u);return[l.lng,l.lat]}var a=e.dragmode,o;o=function(u,l){if(l.isRect){var f=u.range={};f[t.id]=[i([l.xmin,l.ymin]),i([l.xmax,l.ymax])]}else{var c=u.lassoPoints={};c[t.id]=l.map(i)}};var s=t.dragOptions;t.dragOptions=wJ.extendDeep(s||{},{dragmode:e.dragmode,element:t.div,gd:n,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:o},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),eXt(a)||Qjt(a)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(u,l,f){tXt(u,l,f,t.dragOptions,a)},$jt.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))};jh.updateFramework=function(e){var t=e[this.id].domain,r=e._size,n=this.div.style;n.width=r.w*(t.x[1]-t.x[0])+"px",n.height=r.h*(t.y[1]-t.y[0])+"px",n.left=r.l+t.x[0]*r.w+"px",n.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])};jh.updateLayers=function(e){var t=e[this.id],r=t.layers,n=this.layerList,i;if(r.length!==n.length){for(i=0;i{"use strict";var AJ=ei(),oXt=k_(),sXt=Jd(),aHe=Nk();oHe.exports=function(t,r,n){oXt(t,r,n,{type:"mapbox",attributes:aHe,handleDefaults:lXt,partition:"y",accessToken:r._mapboxAccessToken})};function lXt(e,t,r,n){r("accesstoken",n.accessToken),r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch");var i=r("bounds.west"),a=r("bounds.east"),o=r("bounds.south"),s=r("bounds.north");(i===void 0||a===void 0||o===void 0||s===void 0)&&delete t.bounds,sXt(e,t,{name:"layers",handleItemDefaults:uXt}),t._input=e}function uXt(e,t){function r(u,l){return AJ.coerce(e,t,aHe.layers,u,l)}var n=r("visible");if(n){var i=r("sourcetype"),a=i==="raster"||i==="image";r("source"),r("sourceattribution"),i==="vector"&&r("sourcelayer"),i==="image"&&r("coordinates");var o;a&&(o="raster");var s=r("type",o);a&&s!=="raster"&&(s=t.type="raster",AJ.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),s==="circle"&&r("circle.radius"),s==="line"&&(r("line.width"),r("line.dash")),s==="fill"&&r("fill.outlinecolor"),s==="symbol"&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),AJ.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var fB=Ae(Nv=>{"use strict";var lHe=xJ(),ry=ei(),SJ=ry.strTranslate,fXt=ry.strScale,cXt=Rd().getSubplotCalcData,hXt=jv(),dXt=Jl(),uHe=Mu(),pXt=Xf(),vXt=nHe(),xx="mapbox",eg=Nv.constants=f1();Nv.name=xx;Nv.attr="subplot";Nv.idRoot=xx;Nv.idRegex=Nv.attrRegex=ry.counterRegex(xx);var mXt=["mapbox subplots and traces are deprecated!","Please consider switching to `map` subplots and traces.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");Nv.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}};Nv.layoutAttributes=Nk();Nv.supplyLayoutDefaults=sHe();var fHe=!0;Nv.plot=function(t){fHe&&(fHe=!1,ry.warn(mXt));var r=t._fullLayout,n=t.calcdata,i=r._subplots[xx];if(lHe.version!==eg.requiredVersion)throw new Error(eg.wrongVersionErrorMsg);var a=yXt(t,i);lHe.accessToken=a;for(var o=0;ov/2){var k=d.split("|").join("
");_.text(k).attr("data-unformatted",k).call(pXt.convertToTspans,e),b=uHe.bBox(_.node())}_.attr("transform",SJ(-3,-b.height+8)),p.insert("rect",".static-attribution").attr({x:-b.width-6,y:-b.height-3,width:b.width+6,height:b.height+3,fill:"rgba(255, 255, 255, 0.75)"});var E=1;b.width+6>v&&(E=v/(b.width+6));var A=[n.l+n.w*o.x[1],n.t+n.h*(1-o.y[0])];p.attr("transform",SJ(A[0],A[1])+fXt(E))}};function yXt(e,t){var r=e._fullLayout,n=e._context;if(n.mapboxAccessToken==="")return"";for(var i=[],a=[],o=!1,s=!1,u=0;u1&&ry.warn(eg.multipleTokensErrorMsg),i[0]):(a.length&&ry.log(["Listed mapbox access token(s)",a.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}function cHe(e){return typeof e=="string"&&(eg.styleValuesMapbox.indexOf(e)!==-1||e.indexOf("mapbox://")===0||e.indexOf("stamen")===0)}Nv.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[xx],n=0;n{"use strict";var c2r=["*scattermapbox* trace is deprecated!","Please consider switching to the *scattermap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");hHe.exports={attributes:rB(),supplyDefaults:AGe(),colorbar:ep(),formatLabels:dJ(),calc:vF(),plot:OGe(),hoverPoints:sB().hoverPoints,eventData:VGe(),selectPoints:HGe(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermapbox",basePlotModule:fB(),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}});var vHe=Ae((d2r,pHe)=>{"use strict";pHe.exports=dHe()});var MJ=Ae((p2r,mHe)=>{"use strict";var c1=tS(),gXt=nc(),{hovertemplateAttrs:_Xt,templatefallbackAttrs:xXt}=Ff(),bXt=Gf(),bx=Su().extendFlat;mHe.exports=bx({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:bx({},c1.featureidkey,{}),below:{valType:"string",editType:"plot"},text:c1.text,hovertext:c1.hovertext,marker:{line:{color:bx({},c1.marker.line.color,{editType:"plot"}),width:bx({},c1.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:bx({},c1.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:bx({},c1.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:bx({},c1.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:c1.hoverinfo,hovertemplate:_Xt({},{keys:["properties"]}),hovertemplatefallback:xXt(),showlegend:bx({},bXt.showlegend,{dflt:!1})},gXt("",{cLetter:"z",editTypeOverride:"calc"}))});var gHe=Ae((v2r,yHe)=>{"use strict";var Hk=ei(),wXt=rd(),TXt=MJ();yHe.exports=function(t,r,n,i){function a(f,c){return Hk.coerce(t,r,TXt,f,c)}var o=a("locations"),s=a("z"),u=a("geojson");if(!Hk.isArrayOrTypedArray(o)||!o.length||!Hk.isArrayOrTypedArray(s)||!s.length||!(typeof u=="string"&&u!==""||Hk.isPlainObject(u))){r.visible=!1;return}a("featureidkey"),r._length=Math.min(o.length,s.length),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var l=a("marker.line.width");l&&a("marker.line.color"),a("marker.opacity"),wXt(t,r,i,a,{prefix:"",cLetter:"z"}),Hk.coerceSelectionMarkerOpacity(r,a)}});var EJ=Ae((m2r,bHe)=>{"use strict";var AXt=ku(),h1=ei(),SXt=_c(),MXt=Mu(),EXt=tx().makeBlank,_He=ix();function kXt(e){var t=e[0].trace,r=t.visible===!0&&t._length!==0,n={layout:{visibility:"none"},paint:{}},i={layout:{visibility:"none"},paint:{}},a=t._opts={fill:n,line:i,geojson:EXt()};if(!r)return a;var o=_He.extractTraceFeature(e);if(!o)return a;var s=SXt.makeColorScaleFuncFromTrace(t),u=t.marker,l=u.line||{},f;h1.isArrayOrTypedArray(u.opacity)&&(f=function(k){var E=k.mo;return AXt(E)?+h1.constrain(E,0,1):0});var c;h1.isArrayOrTypedArray(l.color)&&(c=function(k){return k.mlc});var h;h1.isArrayOrTypedArray(l.width)&&(h=function(k){return k.mlw});for(var d=0;d{"use strict";var THe=EJ().convert,CXt=EJ().convertOnSelect,wHe=f1().traceLayerPrefix;function AHe(e,t){this.type="choroplethmapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",wHe+t+"-fill"],["line",wHe+t+"-line"]],this.below=null}var MS=AHe.prototype;MS.update=function(e){this._update(THe(e)),e[0].trace._glTrace=this};MS.updateOnSelect=function(e){this._update(CXt(e))};MS._update=function(e){var t=this.subplot,r=this.layerList,n=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(e.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(e,n),this.below=n);for(var i=0;i=0;r--)e.removeLayer(t[r][1])};MS.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};SHe.exports=function(t,r){var n=r[0].trace,i=new AHe(t,n.uid),a=i.sourceId,o=THe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),r[0].trace._glTrace=i,i}});var kHe=Ae((_2r,EHe)=>{"use strict";var g2r=["*choroplethmapbox* trace is deprecated!","Please consider switching to the *choroplethmap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");EHe.exports={attributes:MJ(),supplyDefaults:gHe(),colorbar:S_(),calc:FF(),plot:MHe(),hoverPoints:OF(),eventData:qF(),selectPoints:NF(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.updateOnSelect(t)}},getBelow:function(e,t){for(var r=t.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if(typeof i=="string"&&i.indexOf("water")===0){for(var a=n+1;a{"use strict";CHe.exports=kHe()});var CJ=Ae((b2r,zHe)=>{"use strict";var LXt=nc(),{hovertemplateAttrs:PXt,templatefallbackAttrs:zXt}=Ff(),PHe=Gf(),cB=rB(),kJ=Su().extendFlat;zHe.exports=kJ({lon:cB.lon,lat:cB.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:cB.text,hovertext:cB.hovertext,hoverinfo:kJ({},PHe.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:PXt(),hovertemplatefallback:zXt(),showlegend:kJ({},PHe.showlegend,{dflt:!1})},LXt("",{cLetter:"z",editTypeOverride:"calc"}))});var RHe=Ae((w2r,IHe)=>{"use strict";var IXt=ei(),RXt=rd(),DXt=CJ();IHe.exports=function(t,r,n,i){function a(l,f){return IXt.coerce(t,r,DXt,l,f)}var o=a("lon")||[],s=a("lat")||[],u=Math.min(o.length,s.length);if(!u){r.visible=!1;return}r._length=u,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),RXt(t,r,i,a,{prefix:"",cLetter:"z"})}});var BHe=Ae((T2r,FHe)=>{"use strict";var LJ=ku(),FXt=ei().isArrayOrTypedArray,PJ=rf().BADNUM,BXt=gp(),DHe=ei()._;FHe.exports=function(t,r){for(var n=r._length,i=new Array(n),a=r.z,o=FXt(a)&&a.length,s=0;s{"use strict";var OXt=ku(),zJ=ei(),OHe=jl(),qHe=_c(),NHe=rf().BADNUM,qXt=tx().makeBlank;UHe.exports=function(t){var r=t[0].trace,n=r.visible===!0&&r._length!==0,i={layout:{visibility:"none"},paint:{}},a=r._opts={heatmap:i,geojson:qXt()};if(!n)return a;var o=[],s,u=r.z,l=r.radius,f=zJ.isArrayOrTypedArray(u)&&u.length,c=zJ.isArrayOrTypedArray(l);for(s=0;s0?+l[s]:0),o.push({type:"Feature",geometry:{type:"Point",coordinates:d},properties:p})}}var b=qHe.extractOpts(r),v=b.reversescale?qHe.flipScale(b.colorscale):b.colorscale,k=v[0][1],E=OHe.opacity(k)<1?k:OHe.addOpacity(k,0),A=["interpolate",["linear"],["heatmap-density"],0,E];for(s=1;s{"use strict";var GHe=VHe(),NXt=f1().traceLayerPrefix;function HHe(e,t){this.type="densitymapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",NXt+t+"-heatmap"]],this.below=null}var hB=HHe.prototype;hB.update=function(e){var t=this.subplot,r=this.layerList,n=GHe(e),i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(n.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(n,i),this.below=i);for(var a=0;a=0;r--)e.removeLayer(t[r][1])};hB.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};WHe.exports=function(t,r){var n=r[0].trace,i=new HHe(t,n.uid),a=i.sourceId,o=GHe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),i}});var ZHe=Ae((M2r,XHe)=>{"use strict";var UXt=wu(),VXt=sB().hoverPoints,GXt=sB().getExtraText;XHe.exports=function(t,r,n){var i=VXt(t,r,n);if(i){var a=i[0],o=a.cd,s=o[0].trace,u=o[a.index];if(delete a.color,"z"in u){var l=a.subplot.mockAxis;a.z=u.z,a.zLabel=UXt.tickText(l,l.c2l(u.z),"hover").text}return a.extraText=GXt(s,u,o[0].t.labels),[a]}}});var KHe=Ae((E2r,YHe)=>{"use strict";YHe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var $He=Ae((C2r,JHe)=>{"use strict";var k2r=["*densitymapbox* trace is deprecated!","Please consider switching to the *densitymap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");JHe.exports={attributes:CJ(),supplyDefaults:RHe(),colorbar:S_(),formatLabels:dJ(),calc:BHe(),plot:jHe(),hoverPoints:ZHe(),eventData:KHe(),getBelow:function(e,t){for(var r=t.getMapLayers(),n=0;n{"use strict";QHe.exports=$He()});var rWe=Ae((P2r,tWe)=>{tWe.exports={version:8,name:"orto",metadata:{"maputnik:renderer":"mlgljs"},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI © ESRI"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}},{id:"waterway_tunnel",type:"line",source:"openmaptiles","source-layer":"waterway",minzoom:14,filter:["all",["in","class","river","stream","canal"],["==","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]},"line-dasharray":[2,4]}},{id:"waterway-other",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["!in","class","canal","river","stream"],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,2]]}}},{id:"waterway-stream-canal",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["in","class","canal","stream"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]}}},{id:"waterway-river",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["==","class","river"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.2,stops:[[10,.8],[20,4]]},"line-opacity":.5}},{id:"water-offset",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",maxzoom:8,filter:["==","$type","Polygon"],layout:{visibility:"visible"},paint:{"fill-opacity":0,"fill-color":"#a0c8f0","fill-translate":{base:1,stops:[[6,[2,0]],[8,[0,0]]]}}},{id:"water",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-color":"hsl(210, 67%, 85%)","fill-opacity":0}},{id:"water-pattern",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-translate":[0,2.5],"fill-pattern":"wave","fill-opacity":1}},{id:"landcover-ice-shelf",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"landcover",filter:["==","subclass","ice_shelf"],layout:{visibility:"visible"},paint:{"fill-color":"#fff","fill-opacity":{base:1,stops:[[0,.9],[10,.3]]}}},{id:"tunnel-service-track-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[15,1],[16,4],[20,11]]}}},{id:"tunnel-minor-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,1]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"tunnel-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"tunnel-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.7}},{id:"tunnel-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"tunnel-service-track",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-width":{base:1.2,stops:[[15.5,0],[16,2],[20,7.5]]}}},{id:"tunnel-minor",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor_road"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-opacity":1,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"tunnel-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,10]]}}},{id:"tunnel-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-motorway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#ffdaa6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-railway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]},"line-dasharray":[2,2]}},{id:"ferry",type:"line",source:"openmaptiles","source-layer":"transportation",filter:["all",["in","class","ferry"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(108, 159, 182, 1)","line-width":1.1,"line-dasharray":[2,2]}},{id:"aeroway-taxiway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","taxiway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,2],[17,12]]},"line-opacity":1}},{id:"aeroway-runway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","runway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,5],[17,55]]},"line-opacity":1}},{id:"aeroway-taxiway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","taxiway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,1],[17,10]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"aeroway-runway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","runway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,4],[17,50]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"highway-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-minor-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,0]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"highway-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":.5,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"highway-primary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[7,0],[8,.6]]},"line-width":{base:1.2,stops:[[7,0],[8,.6],[9,1.5],[20,22]]}}},{id:"highway-trunk-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[5,0],[6,.5]]},"line-width":{base:1.2,stops:[[5,0],[6,.6],[7,1.5],[20,22]]}}},{id:"highway-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:4,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[4,0],[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":{stops:[[4,0],[5,.5]]}}},{id:"highway-path",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"highway-motorway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-minor",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fff","line-opacity":.5,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"highway-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[8,.5],[20,13]]},"line-opacity":.5}},{id:"highway-primary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[8.5,0],[9,.5],[20,18]]},"line-opacity":0}},{id:"highway-trunk",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"highway-motorway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"railway-transit",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-transit-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway-service",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-service-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"railway-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"bridge-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,28]]}}},{id:"bridge-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"hsl(28, 76%, 67%)","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,26]]}}},{id:"bridge-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"bridge-path-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#f8f4f0","line-width":{base:1.2,stops:[[15,1.2],[20,18]]}}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#cba","line-width":{base:1.2,stops:[[15,1.2],[20,4]]},"line-dasharray":[1.5,.75]}},{id:"bridge-motorway-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,20]]}}},{id:"bridge-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]}}},{id:"bridge-motorway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"bridge-railway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"bridge-railway-hatching",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"cablecar",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,1],[19,2.5]]}}},{id:"cablecar-dash",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,3],[19,5.5]]},"line-dasharray":[2,3]}},{id:"boundary-land-level-4",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",[">=","admin_level",4],["<=","admin_level",8],["!=","maritime",1]],layout:{"line-join":"round"},paint:{"line-color":"#9e9cab","line-dasharray":[3,1,1,1],"line-width":{base:1.4,stops:[[4,.4],[5,1],[12,3]]},"line-opacity":.6}},{id:"boundary-land-level-2",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["==","admin_level",2],["!=","maritime",1],["!=","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 66%)","line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,2]]}}},{id:"boundary-land-disputed",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["!=","maritime",1],["==","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 70%)","line-dasharray":[1,3],"line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,8]]}}},{id:"boundary-water",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["in","admin_level",2,4],["==","maritime",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"rgba(154, 189, 214, 1)","line-width":{base:1,stops:[[0,.6],[4,1],[5,1],[12,1]]},"line-opacity":{stops:[[6,0],[10,0]]}}},{id:"waterway-name",type:"symbol",source:"openmaptiles","source-layer":"waterway",minzoom:13,filter:["all",["==","$type","LineString"],["has","name"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin} {name:nonlatin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","text-letter-spacing":.2,"symbol-spacing":350},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-lakeline",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["==","$type","LineString"],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":`{name:latin} {name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-ocean",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["==","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-other",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["!in","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":{stops:[[0,10],[6,14]]},"text-field":`{name:latin} {name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2,visibility:"visible"},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"poi-level-3",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:16,filter:["all",["==","$type","Point"],[">=","rank",25]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin} {name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-2",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:15,filter:["all",["==","$type","Point"],["<=","rank",24],[">=","rank",15]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin} @@ -3222,10 +3222,10 @@ uniform `+dr+" "+Mr+" u_"+lr+`; {name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(10, 9, 9, 0.8)"}},{id:"place-town",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["==","class","town"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,14],[15,24]]},"text-field":`{name:latin} {name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(22, 22, 22, 0.8)"}},{id:"place-city",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["!=","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin} {name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(0, 0, 0, 1)","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-city-capital",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin} -{name:nonlatin}`,"text-max-width":8,"icon-image":"star_11","text-offset":[.4,0],"icon-size":.8,"text-anchor":"left",visibility:"visible"},paint:{"text-color":"#333","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["!has","iso_a2"]],layout:{"text-font":["Noto Sans Italic"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-3",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-2",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",2],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[2,11],[5,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-1",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",1],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[1,11],[4,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-continent",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",maxzoom:1,filter:["==","class","continent"],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":14,"text-max-width":6.25,"text-transform":"uppercase",visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}}],id:"qebnlkra6"}});var iWe=Ae((z2r,rWe)=>{rWe.exports={version:8,name:"orto",metadata:{},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI © ESRI"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}}]}});var wx=Ae((I2r,lWe)=>{"use strict";var HXt=Z1(),WXt=tWe(),jXt=iWe(),XXt='\xA9 OpenStreetMap contributors',nWe="https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",aWe="https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json",hB="https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",ZXt="https://basemaps.cartocdn.com/gl/positron-nolabels-gl-style/style.json",YXt="https://basemaps.cartocdn.com/gl/dark-matter-nolabels-gl-style/style.json",KXt="https://basemaps.cartocdn.com/gl/voyager-nolabels-gl-style/style.json",sWe={basic:hB,streets:hB,outdoors:hB,light:nWe,dark:aWe,satellite:jXt,"satellite-streets":WXt,"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:XXt,tiles:["https://tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":nWe,"carto-darkmatter":aWe,"carto-voyager":hB,"carto-positron-nolabels":ZXt,"carto-darkmatter-nolabels":YXt,"carto-voyager-nolabels":KXt},oWe=HXt(sWe);lWe.exports={styleValueDflt:"basic",stylesMap:sWe,styleValuesMap:oWe,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",missingStyleErrorMsg:["No valid maplibre style found, please set `map.style` to one of:",oWe.join(", "),"or use a tile service."].join(` -`),mapOnErrorMsg:"Map error."}});var Wk=Ae((R2r,dWe)=>{"use strict";var uWe=ei(),fWe=jl().defaultLine,JXt=zc().attributes,$Xt=gc(),QXt=Zc().textposition,eZt=Sc().overrideAll,tZt=Lf().templatedArray,cWe=wx(),hWe=$Xt({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});hWe.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var rZt=dWe.exports=eZt({_arrayAttrRegexps:[uWe.counterRegex("map",".layers",!0)],domain:JXt({name:"map"}),style:{valType:"any",values:cWe.styleValuesMap,dflt:cWe.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:tZt("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:fWe},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:fWe}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:hWe,textposition:uWe.extendFlat({},QXt,{arrayOk:!1})}})},"plot","from-root");rZt.uirevision={valType:"any",editType:"none"}});var dB=Ae((D2r,yWe)=>{"use strict";var{hovertemplateAttrs:iZt,texttemplateAttrs:nZt,templatefallbackAttrs:pWe}=Ff(),aZt=km(),jk=H2(),MS=Zc(),vWe=Wk(),oZt=Gf(),sZt=nc(),iw=Su().extendFlat,lZt=Sc().overrideAll,uZt=Wk(),mWe=jk.line,ES=jk.marker;yWe.exports=lZt({lon:jk.lon,lat:jk.lat,cluster:{enabled:{valType:"boolean"},maxzoom:iw({},uZt.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:iw({},ES.opacity,{dflt:1})},mode:iw({},MS.mode,{dflt:"markers"}),text:iw({},MS.text,{}),texttemplate:nZt({editType:"plot"},{keys:["lat","lon","text"]}),texttemplatefallback:pWe({editType:"plot"}),hovertext:iw({},MS.hovertext,{}),line:{color:mWe.color,width:mWe.width},connectgaps:MS.connectgaps,marker:iw({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:ES.opacity,size:ES.size,sizeref:ES.sizeref,sizemin:ES.sizemin,sizemode:ES.sizemode},sZt("marker")),fill:jk.fill,fillcolor:aZt(),textfont:vWe.layers.symbol.textfont,textposition:vWe.layers.symbol.textposition,below:{valType:"string"},selected:{marker:MS.selected.marker},unselected:{marker:MS.unselected.marker},hoverinfo:iw({},oZt.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:iZt(),hovertemplatefallback:pWe()},"calc","nested")});var zJ=Ae((F2r,gWe)=>{"use strict";var fZt=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];gWe.exports={isSupportedFont:function(e){return fZt.indexOf(e)!==-1}}});var bWe=Ae((B2r,xWe)=>{"use strict";var Xk=ei(),IJ=lc(),cZt=$v(),hZt=I0(),dZt=R0(),pZt=zm(),_We=dB(),vZt=zJ().isSupportedFont;xWe.exports=function(t,r,n,i){function a(v,k){return Xk.coerce(t,r,_We,v,k)}function o(v,k){return Xk.coerce2(t,r,_We,v,k)}var s=mZt(t,r,a);if(!s){r.visible=!1;return}if(a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),a("below"),IJ.hasMarkers(r)){cZt(t,r,n,i,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var u=r.marker;u.symbol!=="circle"&&(Xk.isArrayOrTypedArray(u.size)&&(u.size=u.size[0]),Xk.isArrayOrTypedArray(u.color)&&(u.color=u.color[0]))}IJ.hasLines(r)&&(hZt(t,r,n,i,a,{noDash:!0}),a("connectgaps"));var l=o("cluster.maxzoom"),f=o("cluster.step"),c=o("cluster.color",r.marker&&r.marker.color||n),h=o("cluster.size"),d=o("cluster.opacity"),p=l!==!1||f!==!1||c!==!1||h!==!1||d!==!1,_=a("cluster.enabled",p);if(_||IJ.hasText(r)){var b=i.font.family;dZt(t,r,i,a,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:vZt(b)?b:"Open Sans Regular",weight:i.font.weight,style:i.font.style,size:i.font.size,color:i.font.color}})}a("fill"),r.fill!=="none"&&pZt(t,r,n,a),Xk.coerceSelectionMarkerOpacity(r,a)};function mZt(e,t,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return t._length=a,a}});var RJ=Ae((O2r,TWe)=>{"use strict";var wWe=wu();TWe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=wWe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=wWe.tickText(o,o.c2l(s[1]),!0).text,i}});var DJ=Ae((q2r,SWe)=>{"use strict";var AWe=ei();SWe.exports=function(t,r){var n=t.split(" "),i=n[0],a=n[1],o=AWe.isArrayOrTypedArray(r)?AWe.mean(r):r,s=.5+o/100,u=1.5+o/100,l=["",""],f=[0,0];switch(i){case"top":l[0]="top",f[1]=-u;break;case"bottom":l[0]="bottom",f[1]=u;break}switch(a){case"left":l[1]="right",f[0]=-s;break;case"right":l[1]="left",f[0]=s;break}var c;return l[0]&&l[1]?c=l.join("-"):l[0]?c=l[0]:l[1]?c=l[1]:c="center",{anchor:c,offset:f}}});var PWe=Ae((N2r,LWe)=>{"use strict";var kWe=ku(),lp=ei(),yZt=rf().BADNUM,vB=tx(),MWe=_c(),gZt=Mu(),_Zt=E3(),mB=lc(),xZt=zJ().isSupportedFont,bZt=DJ(),wZt=iv().appendArrayPointValue,TZt=Xf().NEWLINES,AZt=Xf().BR_TAG_ALL;LWe.exports=function(t,r){var n=r[0].trace,i=n.visible===!0&&n._length!==0,a=n.fill!=="none",o=mB.hasLines(n),s=mB.hasMarkers(n),u=mB.hasText(n),l=s&&n.marker.symbol==="circle",f=s&&n.marker.symbol!=="circle",c=n.cluster&&n.cluster.enabled,h=pB("fill"),d=pB("line"),p=pB("circle"),_=pB("symbol"),b={fill:h,line:d,circle:p,symbol:_};if(!i)return b;var v;if((a||o)&&(v=vB.calcTraceToLineCoords(r)),a&&(h.geojson=vB.makePolygon(v),h.layout.visibility="visible",lp.extendFlat(h.paint,{"fill-color":n.fillcolor})),o&&(d.geojson=vB.makeLine(v),d.layout.visibility="visible",lp.extendFlat(d.paint,{"line-width":n.line.width,"line-color":n.line.color,"line-opacity":n.opacity})),l){var k=SZt(r);p.geojson=k.geojson,p.layout.visibility="visible",c&&(p.filter=["!",["has","point_count"]],b.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":BJ(n.cluster.color,n.cluster.step),"circle-radius":BJ(n.cluster.size,n.cluster.step),"circle-opacity":BJ(n.cluster.opacity,n.cluster.step)}},b.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":EWe(n),"text-size":12}}),lp.extendFlat(p.paint,{"circle-color":k.mcc,"circle-radius":k.mrc,"circle-opacity":k.mo})}if(l&&c&&(p.filter=["!",["has","point_count"]]),(f||u)&&(_.geojson=MZt(r,t),lp.extendFlat(_.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),f&&(lp.extendFlat(_.layout,{"icon-size":n.marker.size/10}),"angle"in n.marker&&n.marker.angle!=="auto"&&lp.extendFlat(_.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),_.layout["icon-allow-overlap"]=n.marker.allowoverlap,lp.extendFlat(_.paint,{"icon-opacity":n.opacity*n.marker.opacity,"icon-color":n.marker.color})),u)){var E=(n.marker||{}).size,A=bZt(n.textposition,E);lp.extendFlat(_.layout,{"text-size":n.textfont.size,"text-anchor":A.anchor,"text-offset":A.offset,"text-font":EWe(n)}),lp.extendFlat(_.paint,{"text-color":n.textfont.color,"text-opacity":n.opacity})}return b};function pB(e){return{type:e,geojson:vB.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function SZt(e){var t=e[0].trace,r=t.marker,n=t.selectedpoints,i=lp.isArrayOrTypedArray(r.color),a=lp.isArrayOrTypedArray(r.size),o=lp.isArrayOrTypedArray(r.opacity),s;function u(E){return t.opacity*E}function l(E){return E/2}var f;i&&(MWe.hasColorscale(t,"marker")?f=MWe.makeColorScaleFuncFromTrace(r):f=lp.identity);var c;a&&(c=_Zt(t));var h;o&&(h=function(E){var A=kWe(E)?+lp.constrain(E,0,1):0;return u(A)});var d=[];for(s=0;s850?s+=" Black":i>750?s+=" Extra Bold":i>650?s+=" Bold":i>550?s+=" Semi Bold":i>450?s+=" Medium":i>350?s+=" Regular":i>250?s+=" Light":i>150?s+=" Extra Light":s+=" Thin"):a.slice(0,2).join(" ")==="Open Sans"?(s="Open Sans",i>750?s+=" Extrabold":i>650?s+=" Bold":i>550?s+=" Semibold":i>350?s+=" Regular":s+=" Light"):a.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(s="Klokantech Noto Sans",a[3]==="CJK"&&(s+=" CJK"),s+=i>500?" Bold":" Regular")),o&&(s+=" Italic"),s==="Open Sans Regular Italic"?s="Open Sans Italic":s==="Open Sans Regular Bold"?s="Open Sans Bold":s==="Open Sans Regular Bold Italic"?s="Open Sans Bold Italic":s==="Klokantech Noto Sans Regular Italic"&&(s="Klokantech Noto Sans Italic"),xZt(s)||(s=r);var u=s.split(", ");return u}});var DWe=Ae((U2r,RWe)=>{"use strict";var EZt=ei(),zWe=PWe(),kS=wx().traceLayerPrefix,nm={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function IWe(e,t,r,n){this.type="scattermap",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:kS+t+"-fill",line:kS+t+"-line",circle:kS+t+"-circle",symbol:kS+t+"-symbol",cluster:kS+t+"-cluster",clusterCount:kS+t+"-cluster-count"},this.below=null}var Zk=IWe.prototype;Zk.addSource=function(e,t,r){var n={type:"geojson",data:t.geojson};r&&r.enabled&&EZt.extendFlat(n,{cluster:!0,clusterMaxZoom:r.maxzoom});var i=this.subplot.map.getSource(this.sourceIds[e]);i?i.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],n)};Zk.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};Zk.addLayer=function(e,t,r){var n={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(n.filter=t.filter);for(var i=this.layerIds[e],a,o=this.subplot.getMapLayers(),s=0;s=0;L--){var x=A[L];i.removeLayer(l.layerIds[x])}E||i.removeSource(l.sourceIds.circle)}function h(E){for(var A=nm.nonCluster,L=0;L=0;L--){var x=A[L];i.removeLayer(l.layerIds[x]),E||i.removeSource(l.sourceIds[x])}}function p(E){u?c(E):d(E)}function _(E){s?f(E):h(E)}function b(){for(var E=s?nm.cluster:nm.nonCluster,A=0;A=0;n--){var i=r[n];t.removeLayer(this.layerIds[i]),t.removeSource(this.sourceIds[i])}};RWe.exports=function(t,r){var n=r[0].trace,i=n.cluster&&n.cluster.enabled,a=n.visible!==!0,o=new IWe(t,n.uid,i,a),s=zWe(t.gd,r),u=o.below=t.belowLookup["trace-"+n.uid],l,f,c;if(i)for(o.addSource("circle",s.circle,n.cluster),l=0;l{"use strict";var kZt=Xc(),OJ=ei(),CZt=uT(),LZt=OJ.fillText,PZt=rf().BADNUM,zZt=wx().traceLayerPrefix;function IZt(e,t,r){var n=e.cd,i=n[0].trace,a=e.xa,o=e.ya,s=e.subplot,u=[],l=zZt+i.uid+"-circle",f=i.cluster&&i.cluster.enabled;if(f){var c=s.map.queryRenderedFeatures(null,{layers:[l]});u=c.map(function(M){return M.id})}var h=t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360),d=h*360,p=t-d;function _(M){var m=M.lonlat;if(m[0]===PZt||f&&u.indexOf(M.i+1)===-1)return 1/0;var P=OJ.modHalf(m[0],360),T=m[1],B=s.project([P,T]),F=B.x-a.c2p([p,T]),U=B.y-o.c2p([P,r]),G=Math.max(3,M.mrc||0);return Math.max(Math.sqrt(F*F+U*U)-G,1-3/G)}if(kZt.getClosest(n,_,e),e.index!==!1){var b=n[e.index],v=b.lonlat,k=[OJ.modHalf(v[0],360)+d,v[1]],E=a.c2p(k),A=o.c2p(k),L=b.mrc||1;e.x0=E-L,e.x1=E+L,e.y0=A-L,e.y1=A+L;var x={};x[i.subplot]={_subplot:s};var C=i._module.formatLabels(b,i,x);return e.lonLabel=C.lonLabel,e.latLabel=C.latLabel,e.color=CZt(i,b),e.extraText=FWe(i,b,n[0].t.labels),e.hovertemplate=i.hovertemplate,[e]}}function FWe(e,t,r){if(e.hovertemplate)return;var n=t.hi||e.hoverinfo,i=n.split("+"),a=i.indexOf("all")!==-1,o=i.indexOf("lon")!==-1,s=i.indexOf("lat")!==-1,u=t.lonlat,l=[];function f(c){return c+"\xB0"}return a||o&&s?l.push("("+f(u[1])+", "+f(u[0])+")"):o?l.push(r.lon+f(u[0])):s&&l.push(r.lat+f(u[1])),(a||i.indexOf("text")!==-1)&&LZt(t,e,l),l.join("
")}BWe.exports={hoverPoints:IZt,getExtraText:FWe}});var qWe=Ae((G2r,OWe)=>{"use strict";OWe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var UWe=Ae((H2r,NWe)=>{"use strict";var RZt=ei(),DZt=lc(),FZt=rf().BADNUM;NWe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,u;if(!DZt.hasMarkers(s))return[];if(r===!1)for(u=0;u{(function(e,t){typeof qJ=="object"&&typeof NJ!="undefined"?NJ.exports=t():(e=typeof globalThis!="undefined"?globalThis:e||self,e.maplibregl=t())})(qJ,function(){"use strict";var e={},t={};function r(i,a,o){if(t[i]=o,i==="index"){var s="var sharedModule = {}; ("+t.shared+")(sharedModule); ("+t.worker+")(sharedModule);",u={};return t.shared(u),t.index(e,u),typeof window!="undefined"&&e.setWorkerUrl(window.URL.createObjectURL(new Blob([s],{type:"text/javascript"}))),e}}r("shared",["exports"],function(i){"use strict";function a(I,S,D,X){return new(D||(D=Promise))(function(ie,ve){function we(Mt){try{ut(X.next(Mt))}catch($t){ve($t)}}function We(Mt){try{ut(X.throw(Mt))}catch($t){ve($t)}}function ut(Mt){var $t;Mt.done?ie(Mt.value):($t=Mt.value,$t instanceof D?$t:new D(function(vr){vr($t)})).then(we,We)}ut((X=X.apply(I,S||[])).next())})}function o(I){return I&&I.__esModule&&Object.prototype.hasOwnProperty.call(I,"default")?I.default:I}typeof SuppressedError=="function"&&SuppressedError;var s=u;function u(I,S){this.x=I,this.y=S}u.prototype={clone:function(){return new u(this.x,this.y)},add:function(I){return this.clone()._add(I)},sub:function(I){return this.clone()._sub(I)},multByPoint:function(I){return this.clone()._multByPoint(I)},divByPoint:function(I){return this.clone()._divByPoint(I)},mult:function(I){return this.clone()._mult(I)},div:function(I){return this.clone()._div(I)},rotate:function(I){return this.clone()._rotate(I)},rotateAround:function(I,S){return this.clone()._rotateAround(I,S)},matMult:function(I){return this.clone()._matMult(I)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(I){return this.x===I.x&&this.y===I.y},dist:function(I){return Math.sqrt(this.distSqr(I))},distSqr:function(I){var S=I.x-this.x,D=I.y-this.y;return S*S+D*D},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(I){return Math.atan2(this.y-I.y,this.x-I.x)},angleWith:function(I){return this.angleWithSep(I.x,I.y)},angleWithSep:function(I,S){return Math.atan2(this.x*S-this.y*I,this.x*I+this.y*S)},_matMult:function(I){var S=I[2]*this.x+I[3]*this.y;return this.x=I[0]*this.x+I[1]*this.y,this.y=S,this},_add:function(I){return this.x+=I.x,this.y+=I.y,this},_sub:function(I){return this.x-=I.x,this.y-=I.y,this},_mult:function(I){return this.x*=I,this.y*=I,this},_div:function(I){return this.x/=I,this.y/=I,this},_multByPoint:function(I){return this.x*=I.x,this.y*=I.y,this},_divByPoint:function(I){return this.x/=I.x,this.y/=I.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var I=this.y;return this.y=this.x,this.x=-I,this},_rotate:function(I){var S=Math.cos(I),D=Math.sin(I),X=D*this.x+S*this.y;return this.x=S*this.x-D*this.y,this.y=X,this},_rotateAround:function(I,S){var D=Math.cos(I),X=Math.sin(I),ie=S.y+X*(this.x-S.x)+D*(this.y-S.y);return this.x=S.x+D*(this.x-S.x)-X*(this.y-S.y),this.y=ie,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},u.convert=function(I){return I instanceof u?I:Array.isArray(I)?new u(I[0],I[1]):I};var l=o(s),f=c;function c(I,S,D,X){this.cx=3*I,this.bx=3*(D-I)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*S,this.by=3*(X-S)-this.cy,this.ay=1-this.cy-this.by,this.p1x=I,this.p1y=S,this.p2x=D,this.p2y=X}c.prototype={sampleCurveX:function(I){return((this.ax*I+this.bx)*I+this.cx)*I},sampleCurveY:function(I){return((this.ay*I+this.by)*I+this.cy)*I},sampleCurveDerivativeX:function(I){return(3*this.ax*I+2*this.bx)*I+this.cx},solveCurveX:function(I,S){if(S===void 0&&(S=1e-6),I<0)return 0;if(I>1)return 1;for(var D=I,X=0;X<8;X++){var ie=this.sampleCurveX(D)-I;if(Math.abs(ie)ie?we=D:We=D,D=.5*(We-we)+we;return D},solve:function(I,S){return this.sampleCurveY(this.solveCurveX(I,S))}};var h=o(f);let d,p;function _(){return d==null&&(d=typeof OffscreenCanvas!="undefined"&&new OffscreenCanvas(1,1).getContext("2d")&&typeof createImageBitmap=="function"),d}function b(){if(p==null&&(p=!1,_())){let S=new OffscreenCanvas(5,5).getContext("2d",{willReadFrequently:!0});if(S){for(let X=0;X<5*5;X++){let ie=4*X;S.fillStyle=`rgb(${ie},${ie+1},${ie+2})`,S.fillRect(X%5,Math.floor(X/5),1,1)}let D=S.getImageData(0,0,5,5).data;for(let X=0;X<5*5*4;X++)if(X%4!=3&&D[X]!==X){p=!0;break}}}return p||!1}function v(I,S,D,X){let ie=new h(I,S,D,X);return ve=>ie.solve(ve)}let k=v(.25,.1,.25,1);function E(I,S,D){return Math.min(D,Math.max(S,I))}function A(I,S,D){let X=D-S,ie=((I-S)%X+X)%X+S;return ie===S?D:ie}function L(I,...S){for(let D of S)for(let X in D)I[X]=D[X];return I}let x=1;function C(I,S,D){let X={};for(let ie in I)X[ie]=S.call(this,I[ie],ie,I);return X}function M(I,S,D){let X={};for(let ie in I)S.call(this,I[ie],ie,I)&&(X[ie]=I[ie]);return X}function m(I){return Array.isArray(I)?I.map(m):typeof I=="object"&&I?C(I,m):I}let P={};function T(I){P[I]||(typeof console!="undefined"&&console.warn(I),P[I]=!0)}function B(I,S,D){return(D.y-I.y)*(S.x-I.x)>(S.y-I.y)*(D.x-I.x)}function F(I){return typeof WorkerGlobalScope!="undefined"&&I!==void 0&&I instanceof WorkerGlobalScope}let U=null;function G(I){return typeof ImageBitmap!="undefined"&&I instanceof ImageBitmap}let j="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function H(I,S,D,X,ie){return a(this,void 0,void 0,function*(){if(typeof VideoFrame=="undefined")throw new Error("VideoFrame not supported");let ve=new VideoFrame(I,{timestamp:0});try{let we=ve==null?void 0:ve.format;if(!we||!we.startsWith("BGR")&&!we.startsWith("RGB"))throw new Error(`Unrecognized format ${we}`);let We=we.startsWith("BGR"),ut=new Uint8ClampedArray(X*ie*4);if(yield ve.copyTo(ut,function(Mt,$t,vr,Sr,Dr){let Jr=4*Math.max(-$t,0),ui=(Math.max(0,vr)-vr)*Sr*4+Jr,Gi=4*Sr,cn=Math.max(0,$t),Za=Math.max(0,vr);return{rect:{x:cn,y:Za,width:Math.min(Mt.width,$t+Sr)-cn,height:Math.min(Mt.height,vr+Dr)-Za},layout:[{offset:ui,stride:Gi}]}}(I,S,D,X,ie)),We)for(let Mt=0;MtF(self)?self.worker&&self.worker.referrer:(window.location.protocol==="blob:"?window.parent:window).location.href,ke=function(I,S){if(/:\/\//.test(I.url)&&!/^https?:|^file:/.test(I.url)){let X=ze(I.url);if(X)return X(I,S);if(F(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:I,targetMapId:Ce},S)}if(!(/^file:/.test(D=I.url)||/^file:/.test(te())&&!/^\w+:/.test(D))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(X,ie){return a(this,void 0,void 0,function*(){let ve=new Request(X.url,{method:X.method||"GET",body:X.body,credentials:X.credentials,headers:X.headers,cache:X.cache,referrer:te(),signal:ie.signal});X.type!=="json"||ve.headers.has("Accept")||ve.headers.set("Accept","application/json");let we=yield fetch(ve);if(!we.ok){let Mt=yield we.blob();throw new de(we.status,we.statusText,X.url,Mt)}let We;We=X.type==="arrayBuffer"||X.type==="image"?we.arrayBuffer():X.type==="json"?we.json():we.text();let ut=yield We;if(ie.signal.aborted)throw ae();return{data:ut,cacheControl:we.headers.get("Cache-Control"),expires:we.headers.get("Expires")}})}(I,S);if(F(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:I,mustQueue:!0,targetMapId:Ce},S)}var D;return function(X,ie){return new Promise((ve,we)=>{var We;let ut=new XMLHttpRequest;ut.open(X.method||"GET",X.url,!0),X.type!=="arrayBuffer"&&X.type!=="image"||(ut.responseType="arraybuffer");for(let Mt in X.headers)ut.setRequestHeader(Mt,X.headers[Mt]);X.type==="json"&&(ut.responseType="text",!((We=X.headers)===null||We===void 0)&&We.Accept||ut.setRequestHeader("Accept","application/json")),ut.withCredentials=X.credentials==="include",ut.onerror=()=>{we(new Error(ut.statusText))},ut.onload=()=>{if(!ie.signal.aborted)if((ut.status>=200&&ut.status<300||ut.status===0)&&ut.response!==null){let Mt=ut.response;if(X.type==="json")try{Mt=JSON.parse(ut.response)}catch($t){return void we($t)}ve({data:Mt,cacheControl:ut.getResponseHeader("Cache-Control"),expires:ut.getResponseHeader("Expires")})}else{let Mt=new Blob([ut.response],{type:ut.getResponseHeader("Content-Type")});we(new de(ut.status,ut.statusText,X.url,Mt))}},ie.signal.addEventListener("abort",()=>{ut.abort(),we(ae())}),ut.send(X.body)})}(I,S)};function Ee(I){if(!I||I.indexOf("://")<=0||I.indexOf("data:image/")===0||I.indexOf("blob:")===0)return!0;let S=new URL(I),D=window.location;return S.protocol===D.protocol&&S.host===D.host}function Me(I,S,D){D[I]&&D[I].indexOf(S)!==-1||(D[I]=D[I]||[],D[I].push(S))}function Ue(I,S,D){if(D&&D[I]){let X=D[I].indexOf(S);X!==-1&&D[I].splice(X,1)}}class De{constructor(S,D={}){L(this,D),this.type=S}}class ye extends De{constructor(S,D={}){super("error",L({error:S},D))}}class qe{on(S,D){return this._listeners=this._listeners||{},Me(S,D,this._listeners),this}off(S,D){return Ue(S,D,this._listeners),Ue(S,D,this._oneTimeListeners),this}once(S,D){return D?(this._oneTimeListeners=this._oneTimeListeners||{},Me(S,D,this._oneTimeListeners),this):new Promise(X=>this.once(S,X))}fire(S,D){typeof S=="string"&&(S=new De(S,D||{}));let X=S.type;if(this.listens(X)){S.target=this;let ie=this._listeners&&this._listeners[X]?this._listeners[X].slice():[];for(let We of ie)We.call(this,S);let ve=this._oneTimeListeners&&this._oneTimeListeners[X]?this._oneTimeListeners[X].slice():[];for(let We of ve)Ue(X,We,this._oneTimeListeners),We.call(this,S);let we=this._eventedParent;we&&(L(S,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),we.fire(S))}else S instanceof ye&&console.error(S.error);return this}listens(S){return this._listeners&&this._listeners[S]&&this._listeners[S].length>0||this._oneTimeListeners&&this._oneTimeListeners[S]&&this._oneTimeListeners[S].length>0||this._eventedParent&&this._eventedParent.listens(S)}setEventedParent(S,D){return this._eventedParent=S,this._eventedParentData=D,this}}var ce={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"enum",default:"mercator",values:{mercator:{},globe:{}}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};let Je=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function nt(I,S){let D={};for(let X in I)X!=="ref"&&(D[X]=I[X]);return Je.forEach(X=>{X in S&&(D[X]=S[X])}),D}function gt(I,S){if(Array.isArray(I)){if(!Array.isArray(S)||I.length!==S.length)return!1;for(let D=0;D`:I.itemType.kind==="value"?"array":`array<${S}>`}return I.kind}let Ie=[vt,Ye,He,it,et,_r,It,xe(Yt),yr,Ut,Re];function Fe(I,S){if(S.kind==="error")return null;if(I.kind==="array"){if(S.kind==="array"&&(S.N===0&&S.itemType.kind==="value"||!Fe(I.itemType,S.itemType))&&(typeof I.N!="number"||I.N===S.N))return null}else{if(I.kind===S.kind)return null;if(I.kind==="value"){for(let D of Ie)if(!Fe(D,S))return null}}return`Expected ${Oe(I)} but found ${Oe(S)} instead.`}function ft(I,S){return S.some(D=>D.kind===I.kind)}function ge(I,S){return S.some(D=>D==="null"?I===null:D==="array"?Array.isArray(I):D==="object"?I&&!Array.isArray(I)&&typeof I=="object":D===typeof I)}function fe(I,S){return I.kind==="array"&&S.kind==="array"?I.itemType.kind===S.itemType.kind&&typeof I.N=="number":I.kind===S.kind}let pe=.96422,dt=.82521,Pt=4/29,zt=6/29,rr=3*zt*zt,Gr=zt*zt*zt,Br=Math.PI/180,Er=180/Math.PI;function Rr(I){return(I%=360)<0&&(I+=360),I}function pi([I,S,D,X]){let ie,ve,we=ni((.2225045*(I=Di(I))+.7168786*(S=Di(S))+.0606169*(D=Di(D)))/1);I===S&&S===D?ie=ve=we:(ie=ni((.4360747*I+.3850649*S+.1430804*D)/pe),ve=ni((.0139322*I+.0971045*S+.7141733*D)/dt));let We=116*we-16;return[We<0?0:We,500*(ie-we),200*(we-ve),X]}function Di(I){return I<=.04045?I/12.92:Math.pow((I+.055)/1.055,2.4)}function ni(I){return I>Gr?Math.pow(I,1/3):I/rr+Pt}function $i([I,S,D,X]){let ie=(I+16)/116,ve=isNaN(S)?ie:ie+S/500,we=isNaN(D)?ie:ie-D/200;return ie=1*si(ie),ve=pe*si(ve),we=dt*si(we),[Qi(3.1338561*ve-1.6168667*ie-.4906146*we),Qi(-.9787684*ve+1.9161415*ie+.033454*we),Qi(.0719453*ve-.2289914*ie+1.4052427*we),X]}function Qi(I){return(I=I<=.00304?12.92*I:1.055*Math.pow(I,1/2.4)-.055)<0?0:I>1?1:I}function si(I){return I>zt?I*I*I:rr*(I-Pt)}function Ai(I){return parseInt(I.padEnd(2,I),16)/255}function Ni(I,S){return Rt(S?I/100:I,0,1)}function Rt(I,S,D){return Math.min(Math.max(S,I),D)}function yt(I){return!I.some(Number.isNaN)}let Gt={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};class Wt{constructor(S,D,X,ie=1,ve=!0){this.r=S,this.g=D,this.b=X,this.a=ie,ve||(this.r*=ie,this.g*=ie,this.b*=ie,ie||this.overwriteGetter("rgb",[S,D,X,ie]))}static parse(S){if(S instanceof Wt)return S;if(typeof S!="string")return;let D=function(X){if((X=X.toLowerCase().trim())==="transparent")return[0,0,0,0];let ie=Gt[X];if(ie){let[we,We,ut]=ie;return[we/255,We/255,ut/255,1]}if(X.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(X)){let we=X.length<6?1:2,We=1;return[Ai(X.slice(We,We+=we)),Ai(X.slice(We,We+=we)),Ai(X.slice(We,We+=we)),Ai(X.slice(We,We+we)||"ff")]}if(X.startsWith("rgb")){let we=X.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(we){let[We,ut,Mt,$t,vr,Sr,Dr,Jr,ui,Gi,cn,Za]=we,Rn=[$t||" ",Dr||" ",Gi].join("");if(Rn===" "||Rn===" /"||Rn===",,"||Rn===",,,"){let La=[Mt,Sr,ui].join(""),So=La==="%%%"?100:La===""?255:0;if(So){let kl=[Rt(+ut/So,0,1),Rt(+vr/So,0,1),Rt(+Jr/So,0,1),cn?Ni(+cn,Za):1];if(yt(kl))return kl}}return}}let ve=X.match(/^hsla?\(\s*([\de.+-]+)(?:deg)?(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(ve){let[we,We,ut,Mt,$t,vr,Sr,Dr,Jr]=ve,ui=[ut||" ",$t||" ",Sr].join("");if(ui===" "||ui===" /"||ui===",,"||ui===",,,"){let Gi=[+We,Rt(+Mt,0,100),Rt(+vr,0,100),Dr?Ni(+Dr,Jr):1];if(yt(Gi))return function([cn,Za,Rn,La]){function So(kl){let mu=(kl+cn/30)%12,Iu=Za*Math.min(Rn,1-Rn);return Rn-Iu*Math.max(-1,Math.min(mu-3,9-mu,1))}return cn=Rr(cn),Za/=100,Rn/=100,[So(0),So(8),So(4),La]}(Gi)}}}(S);return D?new Wt(...D,!1):void 0}get rgb(){let{r:S,g:D,b:X,a:ie}=this,ve=ie||1/0;return this.overwriteGetter("rgb",[S/ve,D/ve,X/ve,ie])}get hcl(){return this.overwriteGetter("hcl",function(S){let[D,X,ie,ve]=pi(S),we=Math.sqrt(X*X+ie*ie);return[Math.round(1e4*we)?Rr(Math.atan2(ie,X)*Er):NaN,we,D,ve]}(this.rgb))}get lab(){return this.overwriteGetter("lab",pi(this.rgb))}overwriteGetter(S,D){return Object.defineProperty(this,S,{value:D}),D}toString(){let[S,D,X,ie]=this.rgb;return`rgba(${[S,D,X].map(ve=>Math.round(255*ve)).join(",")},${ie})`}}Wt.black=new Wt(0,0,0,1),Wt.white=new Wt(1,1,1,1),Wt.transparent=new Wt(0,0,0,0),Wt.red=new Wt(1,0,0,1);class xr{constructor(S,D,X){this.sensitivity=S?D?"variant":"case":D?"accent":"base",this.locale=X,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(S,D){return this.collator.compare(S,D)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Lr{constructor(S,D,X,ie,ve){this.text=S,this.image=D,this.scale=X,this.fontStack=ie,this.textColor=ve}}class Nr{constructor(S){this.sections=S}static fromString(S){return new Nr([new Lr(S,null,null,null,null)])}isEmpty(){return this.sections.length===0||!this.sections.some(S=>S.text.length!==0||S.image&&S.image.name.length!==0)}static factory(S){return S instanceof Nr?S:Nr.fromString(S)}toString(){return this.sections.length===0?"":this.sections.map(S=>S.text).join("")}}class Or{constructor(S){this.values=S.slice()}static parse(S){if(S instanceof Or)return S;if(typeof S=="number")return new Or([S,S,S,S]);if(Array.isArray(S)&&!(S.length<1||S.length>4)){for(let D of S)if(typeof D!="number")return;switch(S.length){case 1:S=[S[0],S[0],S[0],S[0]];break;case 2:S=[S[0],S[1],S[0],S[1]];break;case 3:S=[S[0],S[1],S[2],S[1]]}return new Or(S)}}toString(){return JSON.stringify(this.values)}}let Hr=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]);class jr{constructor(S){this.values=S.slice()}static parse(S){if(S instanceof jr)return S;if(Array.isArray(S)&&!(S.length<1)&&S.length%2==0){for(let D=0;D=0&&I<=255&&typeof S=="number"&&S>=0&&S<=255&&typeof D=="number"&&D>=0&&D<=255?X===void 0||typeof X=="number"&&X>=0&&X<=1?null:`Invalid rgba value [${[I,S,D,X].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof X=="number"?[I,S,D,X]:[I,S,D]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function Vi(I){if(I===null||typeof I=="string"||typeof I=="boolean"||typeof I=="number"||I instanceof Wt||I instanceof xr||I instanceof Nr||I instanceof Or||I instanceof jr||I instanceof gi)return!0;if(Array.isArray(I)){for(let S of I)if(!Vi(S))return!1;return!0}if(typeof I=="object"){for(let S in I)if(!Vi(I[S]))return!1;return!0}return!1}function ti(I){if(I===null)return vt;if(typeof I=="string")return He;if(typeof I=="boolean")return it;if(typeof I=="number")return Ye;if(I instanceof Wt)return et;if(I instanceof xr)return cr;if(I instanceof Nr)return _r;if(I instanceof Or)return yr;if(I instanceof jr)return Re;if(I instanceof gi)return Ut;if(Array.isArray(I)){let S=I.length,D;for(let X of I){let ie=ti(X);if(D){if(D===ie)continue;D=Yt;break}D=ie}return xe(D||Yt,S)}return It}function tn(I){let S=typeof I;return I===null?"":S==="string"||S==="number"||S==="boolean"?String(I):I instanceof Wt||I instanceof Nr||I instanceof Or||I instanceof jr||I instanceof gi?I.toString():JSON.stringify(I)}class Yr{constructor(S,D){this.type=S,this.value=D}static parse(S,D){if(S.length!==2)return D.error(`'literal' expression requires exactly one argument, but found ${S.length-1} instead.`);if(!Vi(S[1]))return D.error("invalid value");let X=S[1],ie=ti(X),ve=D.expectedType;return ie.kind!=="array"||ie.N!==0||!ve||ve.kind!=="array"||typeof ve.N=="number"&&ve.N!==0||(ie=ve),new Yr(ie,X)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class oi{constructor(S){this.name="ExpressionEvaluationError",this.message=S}toJSON(){return this.message}}let Fi={string:He,number:Ye,boolean:it,object:It};class an{constructor(S,D){this.type=S,this.args=D}static parse(S,D){if(S.length<2)return D.error("Expected at least one argument.");let X,ie=1,ve=S[0];if(ve==="array"){let We,ut;if(S.length>2){let Mt=S[1];if(typeof Mt!="string"||!(Mt in Fi)||Mt==="object")return D.error('The item type argument of "array" must be one of string, number, boolean',1);We=Fi[Mt],ie++}else We=Yt;if(S.length>3){if(S[2]!==null&&(typeof S[2]!="number"||S[2]<0||S[2]!==Math.floor(S[2])))return D.error('The length argument to "array" must be a positive integer literal',2);ut=S[2],ie++}X=xe(We,ut)}else{if(!Fi[ve])throw new Error(`Types doesn't contain name = ${ve}`);X=Fi[ve]}let we=[];for(;ieS.outputDefined())}}let nn={"to-boolean":it,"to-color":et,"to-number":Ye,"to-string":He};class Ri{constructor(S,D){this.type=S,this.args=D}static parse(S,D){if(S.length<2)return D.error("Expected at least one argument.");let X=S[0];if(!nn[X])throw new Error(`Can't parse ${X} as it is not part of the known types`);if((X==="to-boolean"||X==="to-string")&&S.length!==2)return D.error("Expected one argument.");let ie=nn[X],ve=[];for(let we=1;we4?`Invalid rbga value ${JSON.stringify(D)}: expected an array containing either three or four numeric values.`:ki(D[0],D[1],D[2],D[3]),!X))return new Wt(D[0]/255,D[1]/255,D[2]/255,D[3])}throw new oi(X||`Could not parse color from value '${typeof D=="string"?D:JSON.stringify(D)}'`)}case"padding":{let D;for(let X of this.args){D=X.evaluate(S);let ie=Or.parse(D);if(ie)return ie}throw new oi(`Could not parse padding from value '${typeof D=="string"?D:JSON.stringify(D)}'`)}case"variableAnchorOffsetCollection":{let D;for(let X of this.args){D=X.evaluate(S);let ie=jr.parse(D);if(ie)return ie}throw new oi(`Could not parse variableAnchorOffsetCollection from value '${typeof D=="string"?D:JSON.stringify(D)}'`)}case"number":{let D=null;for(let X of this.args){if(D=X.evaluate(S),D===null)return 0;let ie=Number(D);if(!isNaN(ie))return ie}throw new oi(`Could not convert ${JSON.stringify(D)} to number.`)}case"formatted":return Nr.fromString(tn(this.args[0].evaluate(S)));case"resolvedImage":return gi.fromString(tn(this.args[0].evaluate(S)));default:return tn(this.args[0].evaluate(S))}}eachChild(S){this.args.forEach(S)}outputDefined(){return this.args.every(S=>S.outputDefined())}}let Ii=["Unknown","Point","LineString","Polygon"];class xn{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?Ii[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(S){let D=this._parseColorCache[S];return D||(D=this._parseColorCache[S]=Wt.parse(S)),D}}class bi{constructor(S,D,X=[],ie,ve=new Tt,we=[]){this.registry=S,this.path=X,this.key=X.map(We=>`[${We}]`).join(""),this.scope=ve,this.errors=we,this.expectedType=ie,this._isConstant=D}parse(S,D,X,ie,ve={}){return D?this.concat(D,X,ie)._parse(S,ve):this._parse(S,ve)}_parse(S,D){function X(ie,ve,we){return we==="assert"?new an(ve,[ie]):we==="coerce"?new Ri(ve,[ie]):ie}if(S!==null&&typeof S!="string"&&typeof S!="boolean"&&typeof S!="number"||(S=["literal",S]),Array.isArray(S)){if(S.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');let ie=S[0];if(typeof ie!="string")return this.error(`Expression name must be a string, but found ${typeof ie} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;let ve=this.registry[ie];if(ve){let we=ve.parse(S,this);if(!we)return null;if(this.expectedType){let We=this.expectedType,ut=we.type;if(We.kind!=="string"&&We.kind!=="number"&&We.kind!=="boolean"&&We.kind!=="object"&&We.kind!=="array"||ut.kind!=="value")if(We.kind!=="color"&&We.kind!=="formatted"&&We.kind!=="resolvedImage"||ut.kind!=="value"&&ut.kind!=="string")if(We.kind!=="padding"||ut.kind!=="value"&&ut.kind!=="number"&&ut.kind!=="array")if(We.kind!=="variableAnchorOffsetCollection"||ut.kind!=="value"&&ut.kind!=="array"){if(this.checkSubtype(We,ut))return null}else we=X(we,We,D.typeAnnotation||"coerce");else we=X(we,We,D.typeAnnotation||"coerce");else we=X(we,We,D.typeAnnotation||"coerce");else we=X(we,We,D.typeAnnotation||"assert")}if(!(we instanceof Yr)&&we.type.kind!=="resolvedImage"&&this._isConstant(we)){let We=new xn;try{we=new Yr(we.type,we.evaluate(We))}catch(ut){return this.error(ut.message),null}}return we}return this.error(`Unknown expression "${ie}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(S===void 0?"'undefined' value invalid. Use null instead.":typeof S=="object"?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof S} instead.`)}concat(S,D,X){let ie=typeof S=="number"?this.path.concat(S):this.path,ve=X?this.scope.concat(X):this.scope;return new bi(this.registry,this._isConstant,ie,D||null,ve,this.errors)}error(S,...D){let X=`${this.key}${D.map(ie=>`[${ie}]`).join("")}`;this.errors.push(new ot(X,S))}checkSubtype(S,D){let X=Fe(S,D);return X&&this.error(X),X}}class Xr{constructor(S,D){this.type=D.type,this.bindings=[].concat(S),this.result=D}evaluate(S){return this.result.evaluate(S)}eachChild(S){for(let D of this.bindings)S(D[1]);S(this.result)}static parse(S,D){if(S.length<4)return D.error(`Expected at least 3 arguments, but found ${S.length-1} instead.`);let X=[];for(let ve=1;ve=X.length)throw new oi(`Array index out of bounds: ${D} > ${X.length-1}.`);if(D!==Math.floor(D))throw new oi(`Array index must be an integer, but found ${D} instead.`);return X[D]}eachChild(S){S(this.index),S(this.input)}outputDefined(){return!1}}class pr{constructor(S,D){this.type=it,this.needle=S,this.haystack=D}static parse(S,D){if(S.length!==3)return D.error(`Expected 2 arguments, but found ${S.length-1} instead.`);let X=D.parse(S[1],1,Yt),ie=D.parse(S[2],2,Yt);return X&&ie?ft(X.type,[it,He,Ye,vt,Yt])?new pr(X,ie):D.error(`Expected first argument to be of type boolean, string, number or null, but found ${Oe(X.type)} instead`):null}evaluate(S){let D=this.needle.evaluate(S),X=this.haystack.evaluate(S);if(!X)return!1;if(!ge(D,["boolean","string","number","null"]))throw new oi(`Expected first argument to be of type boolean, string, number or null, but found ${Oe(ti(D))} instead.`);if(!ge(X,["string","array"]))throw new oi(`Expected second argument to be of type array or string, but found ${Oe(ti(X))} instead.`);return X.indexOf(D)>=0}eachChild(S){S(this.needle),S(this.haystack)}outputDefined(){return!0}}class gr{constructor(S,D,X){this.type=Ye,this.needle=S,this.haystack=D,this.fromIndex=X}static parse(S,D){if(S.length<=2||S.length>=5)return D.error(`Expected 3 or 4 arguments, but found ${S.length-1} instead.`);let X=D.parse(S[1],1,Yt),ie=D.parse(S[2],2,Yt);if(!X||!ie)return null;if(!ft(X.type,[it,He,Ye,vt,Yt]))return D.error(`Expected first argument to be of type boolean, string, number or null, but found ${Oe(X.type)} instead`);if(S.length===4){let ve=D.parse(S[3],3,Ye);return ve?new gr(X,ie,ve):null}return new gr(X,ie)}evaluate(S){let D=this.needle.evaluate(S),X=this.haystack.evaluate(S);if(!ge(D,["boolean","string","number","null"]))throw new oi(`Expected first argument to be of type boolean, string, number or null, but found ${Oe(ti(D))} instead.`);let ie;if(this.fromIndex&&(ie=this.fromIndex.evaluate(S)),ge(X,["string"])){let ve=X.indexOf(D,ie);return ve===-1?-1:[...X.slice(0,ve)].length}if(ge(X,["array"]))return X.indexOf(D,ie);throw new oi(`Expected second argument to be of type array or string, but found ${Oe(ti(X))} instead.`)}eachChild(S){S(this.needle),S(this.haystack),this.fromIndex&&S(this.fromIndex)}outputDefined(){return!1}}class Zr{constructor(S,D,X,ie,ve,we){this.inputType=S,this.type=D,this.input=X,this.cases=ie,this.outputs=ve,this.otherwise=we}static parse(S,D){if(S.length<5)return D.error(`Expected at least 4 arguments, but found only ${S.length-1}.`);if(S.length%2!=1)return D.error("Expected an even number of arguments.");let X,ie;D.expectedType&&D.expectedType.kind!=="value"&&(ie=D.expectedType);let ve={},we=[];for(let Mt=2;MtNumber.MAX_SAFE_INTEGER)return Sr.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof Jr=="number"&&Math.floor(Jr)!==Jr)return Sr.error("Numeric branch labels must be integer values.");if(X){if(Sr.checkSubtype(X,ti(Jr)))return null}else X=ti(Jr);if(ve[String(Jr)]!==void 0)return Sr.error("Branch labels must be unique.");ve[String(Jr)]=we.length}let Dr=D.parse(vr,Mt,ie);if(!Dr)return null;ie=ie||Dr.type,we.push(Dr)}let We=D.parse(S[1],1,Yt);if(!We)return null;let ut=D.parse(S[S.length-1],S.length-1,ie);return ut?We.type.kind!=="value"&&D.concat(1).checkSubtype(X,We.type)?null:new Zr(X,ie,We,ve,we,ut):null}evaluate(S){let D=this.input.evaluate(S);return(ti(D)===this.inputType&&this.outputs[this.cases[D]]||this.otherwise).evaluate(S)}eachChild(S){S(this.input),this.outputs.forEach(S),S(this.otherwise)}outputDefined(){return this.outputs.every(S=>S.outputDefined())&&this.otherwise.outputDefined()}}class Ti{constructor(S,D,X){this.type=S,this.branches=D,this.otherwise=X}static parse(S,D){if(S.length<4)return D.error(`Expected at least 3 arguments, but found only ${S.length-1}.`);if(S.length%2!=0)return D.error("Expected an odd number of arguments.");let X;D.expectedType&&D.expectedType.kind!=="value"&&(X=D.expectedType);let ie=[];for(let we=1;weD.outputDefined())&&this.otherwise.outputDefined()}}class en{constructor(S,D,X,ie){this.type=S,this.input=D,this.beginIndex=X,this.endIndex=ie}static parse(S,D){if(S.length<=2||S.length>=5)return D.error(`Expected 3 or 4 arguments, but found ${S.length-1} instead.`);let X=D.parse(S[1],1,Yt),ie=D.parse(S[2],2,Ye);if(!X||!ie)return null;if(!ft(X.type,[xe(Yt),He,Yt]))return D.error(`Expected first argument to be of type array or string, but found ${Oe(X.type)} instead`);if(S.length===4){let ve=D.parse(S[3],3,Ye);return ve?new en(X.type,X,ie,ve):null}return new en(X.type,X,ie)}evaluate(S){let D=this.input.evaluate(S),X=this.beginIndex.evaluate(S),ie;if(this.endIndex&&(ie=this.endIndex.evaluate(S)),ge(D,["string"]))return[...D].slice(X,ie).join("");if(ge(D,["array"]))return D.slice(X,ie);throw new oi(`Expected first argument to be of type array or string, but found ${Oe(ti(D))} instead.`)}eachChild(S){S(this.input),S(this.beginIndex),this.endIndex&&S(this.endIndex)}outputDefined(){return!1}}function ii(I,S){let D=I.length-1,X,ie,ve=0,we=D,We=0;for(;ve<=we;)if(We=Math.floor((ve+we)/2),X=I[We],ie=I[We+1],X<=S){if(We===D||SS))throw new oi("Input is not a number.");we=We-1}return 0}class Xi{constructor(S,D,X){this.type=S,this.input=D,this.labels=[],this.outputs=[];for(let[ie,ve]of X)this.labels.push(ie),this.outputs.push(ve)}static parse(S,D){if(S.length-1<4)return D.error(`Expected at least 4 arguments, but found only ${S.length-1}.`);if((S.length-1)%2!=0)return D.error("Expected an even number of arguments.");let X=D.parse(S[1],1,Ye);if(!X)return null;let ie=[],ve=null;D.expectedType&&D.expectedType.kind!=="value"&&(ve=D.expectedType);for(let we=1;we=We)return D.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',Mt);let vr=D.parse(ut,$t,ve);if(!vr)return null;ve=ve||vr.type,ie.push([We,vr])}return new Xi(ve,X,ie)}evaluate(S){let D=this.labels,X=this.outputs;if(D.length===1)return X[0].evaluate(S);let ie=this.input.evaluate(S);if(ie<=D[0])return X[0].evaluate(S);let ve=D.length;return ie>=D[ve-1]?X[ve-1].evaluate(S):X[ii(D,ie)].evaluate(S)}eachChild(S){S(this.input);for(let D of this.outputs)S(D)}outputDefined(){return this.outputs.every(S=>S.outputDefined())}}function aa(I){return I&&I.__esModule&&Object.prototype.hasOwnProperty.call(I,"default")?I.default:I}var Mn=Un;function Un(I,S,D,X){this.cx=3*I,this.bx=3*(D-I)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*S,this.by=3*(X-S)-this.cy,this.ay=1-this.cy-this.by,this.p1x=I,this.p1y=S,this.p2x=D,this.p2y=X}Un.prototype={sampleCurveX:function(I){return((this.ax*I+this.bx)*I+this.cx)*I},sampleCurveY:function(I){return((this.ay*I+this.by)*I+this.cy)*I},sampleCurveDerivativeX:function(I){return(3*this.ax*I+2*this.bx)*I+this.cx},solveCurveX:function(I,S){if(S===void 0&&(S=1e-6),I<0)return 0;if(I>1)return 1;for(var D=I,X=0;X<8;X++){var ie=this.sampleCurveX(D)-I;if(Math.abs(ie)ie?we=D:We=D,D=.5*(We-we)+we;return D},solve:function(I,S){return this.sampleCurveY(this.solveCurveX(I,S))}};var Ga=aa(Mn);function ma(I,S,D){return I+D*(S-I)}function oa(I,S,D){return I.map((X,ie)=>ma(X,S[ie],D))}let ka={number:ma,color:function(I,S,D,X="rgb"){switch(X){case"rgb":{let[ie,ve,we,We]=oa(I.rgb,S.rgb,D);return new Wt(ie,ve,we,We,!1)}case"hcl":{let[ie,ve,we,We]=I.hcl,[ut,Mt,$t,vr]=S.hcl,Sr,Dr;if(isNaN(ie)||isNaN(ut))isNaN(ie)?isNaN(ut)?Sr=NaN:(Sr=ut,we!==1&&we!==0||(Dr=Mt)):(Sr=ie,$t!==1&&$t!==0||(Dr=ve));else{let Za=ut-ie;ut>ie&&Za>180?Za-=360:ut180&&(Za+=360),Sr=ie+D*Za}let[Jr,ui,Gi,cn]=function([Za,Rn,La,So]){return Za=isNaN(Za)?0:Za*Br,$i([La,Math.cos(Za)*Rn,Math.sin(Za)*Rn,So])}([Sr,Dr!=null?Dr:ma(ve,Mt,D),ma(we,$t,D),ma(We,vr,D)]);return new Wt(Jr,ui,Gi,cn,!1)}case"lab":{let[ie,ve,we,We]=$i(oa(I.lab,S.lab,D));return new Wt(ie,ve,we,We,!1)}}},array:oa,padding:function(I,S,D){return new Or(oa(I.values,S.values,D))},variableAnchorOffsetCollection:function(I,S,D){let X=I.values,ie=S.values;if(X.length!==ie.length)throw new oi(`Cannot interpolate values of different length. from: ${I.toString()}, to: ${S.toString()}`);let ve=[];for(let we=0;wetypeof $t!="number"||$t<0||$t>1))return D.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);ie={name:"cubic-bezier",controlPoints:Mt}}}if(S.length-1<4)return D.error(`Expected at least 4 arguments, but found only ${S.length-1}.`);if((S.length-1)%2!=0)return D.error("Expected an even number of arguments.");if(ve=D.parse(ve,2,Ye),!ve)return null;let We=[],ut=null;X==="interpolate-hcl"||X==="interpolate-lab"?ut=et:D.expectedType&&D.expectedType.kind!=="value"&&(ut=D.expectedType);for(let Mt=0;Mt=$t)return D.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',Sr);let Jr=D.parse(vr,Dr,ut);if(!Jr)return null;ut=ut||Jr.type,We.push([$t,Jr])}return fe(ut,Ye)||fe(ut,et)||fe(ut,yr)||fe(ut,Re)||fe(ut,xe(Ye))?new so(ut,X,ie,ve,We):D.error(`Type ${Oe(ut)} is not interpolatable.`)}evaluate(S){let D=this.labels,X=this.outputs;if(D.length===1)return X[0].evaluate(S);let ie=this.input.evaluate(S);if(ie<=D[0])return X[0].evaluate(S);let ve=D.length;if(ie>=D[ve-1])return X[ve-1].evaluate(S);let we=ii(D,ie),We=so.interpolationFactor(this.interpolation,ie,D[we],D[we+1]),ut=X[we].evaluate(S),Mt=X[we+1].evaluate(S);switch(this.operator){case"interpolate":return ka[this.type.kind](ut,Mt,We);case"interpolate-hcl":return ka.color(ut,Mt,We,"hcl");case"interpolate-lab":return ka.color(ut,Mt,We,"lab")}}eachChild(S){S(this.input);for(let D of this.outputs)S(D)}outputDefined(){return this.outputs.every(S=>S.outputDefined())}}function Kr(I,S,D,X){let ie=X-D,ve=I-D;return ie===0?0:S===1?ve/ie:(Math.pow(S,ve)-1)/(Math.pow(S,ie)-1)}class Ia{constructor(S,D){this.type=S,this.args=D}static parse(S,D){if(S.length<2)return D.error("Expectected at least one argument.");let X=null,ie=D.expectedType;ie&&ie.kind!=="value"&&(X=ie);let ve=[];for(let We of S.slice(1)){let ut=D.parse(We,1+ve.length,X,void 0,{typeAnnotation:"omit"});if(!ut)return null;X=X||ut.type,ve.push(ut)}if(!X)throw new Error("No output type");let we=ie&&ve.some(We=>Fe(ie,We.type));return new Ia(we?Yt:X,ve)}evaluate(S){let D,X=null,ie=0;for(let ve of this.args)if(ie++,X=ve.evaluate(S),X&&X instanceof gi&&!X.available&&(D||(D=X.name),X=null,ie===this.args.length&&(X=D)),X!==null)break;return X}eachChild(S){this.args.forEach(S)}outputDefined(){return this.args.every(S=>S.outputDefined())}}function Yo(I,S){return I==="=="||I==="!="?S.kind==="boolean"||S.kind==="string"||S.kind==="number"||S.kind==="null"||S.kind==="value":S.kind==="string"||S.kind==="number"||S.kind==="value"}function fa(I,S,D,X){return X.compare(S,D)===0}function kn(I,S,D){let X=I!=="=="&&I!=="!=";return class VWe{constructor(ve,we,We){this.type=it,this.lhs=ve,this.rhs=we,this.collator=We,this.hasUntypedArgument=ve.type.kind==="value"||we.type.kind==="value"}static parse(ve,we){if(ve.length!==3&&ve.length!==4)return we.error("Expected two or three arguments.");let We=ve[0],ut=we.parse(ve[1],1,Yt);if(!ut)return null;if(!Yo(We,ut.type))return we.concat(1).error(`"${We}" comparisons are not supported for type '${Oe(ut.type)}'.`);let Mt=we.parse(ve[2],2,Yt);if(!Mt)return null;if(!Yo(We,Mt.type))return we.concat(2).error(`"${We}" comparisons are not supported for type '${Oe(Mt.type)}'.`);if(ut.type.kind!==Mt.type.kind&&ut.type.kind!=="value"&&Mt.type.kind!=="value")return we.error(`Cannot compare types '${Oe(ut.type)}' and '${Oe(Mt.type)}'.`);X&&(ut.type.kind==="value"&&Mt.type.kind!=="value"?ut=new an(Mt.type,[ut]):ut.type.kind!=="value"&&Mt.type.kind==="value"&&(Mt=new an(ut.type,[Mt])));let $t=null;if(ve.length===4){if(ut.type.kind!=="string"&&Mt.type.kind!=="string"&&ut.type.kind!=="value"&&Mt.type.kind!=="value")return we.error("Cannot use collator to compare non-string types.");if($t=we.parse(ve[3],3,cr),!$t)return null}return new VWe(ut,Mt,$t)}evaluate(ve){let we=this.lhs.evaluate(ve),We=this.rhs.evaluate(ve);if(X&&this.hasUntypedArgument){let ut=ti(we),Mt=ti(We);if(ut.kind!==Mt.kind||ut.kind!=="string"&&ut.kind!=="number")throw new oi(`Expected arguments for "${I}" to be (string, string) or (number, number), but found (${ut.kind}, ${Mt.kind}) instead.`)}if(this.collator&&!X&&this.hasUntypedArgument){let ut=ti(we),Mt=ti(We);if(ut.kind!=="string"||Mt.kind!=="string")return S(ve,we,We)}return this.collator?D(ve,we,We,this.collator.evaluate(ve)):S(ve,we,We)}eachChild(ve){ve(this.lhs),ve(this.rhs),this.collator&&ve(this.collator)}outputDefined(){return!0}}}let Aa=kn("==",function(I,S,D){return S===D},fa),ys=kn("!=",function(I,S,D){return S!==D},function(I,S,D,X){return!fa(0,S,D,X)}),uo=kn("<",function(I,S,D){return S",function(I,S,D){return S>D},function(I,S,D,X){return X.compare(S,D)>0}),$a=kn("<=",function(I,S,D){return S<=D},function(I,S,D,X){return X.compare(S,D)<=0}),fo=kn(">=",function(I,S,D){return S>=D},function(I,S,D,X){return X.compare(S,D)>=0});class mn{constructor(S,D,X){this.type=cr,this.locale=X,this.caseSensitive=S,this.diacriticSensitive=D}static parse(S,D){if(S.length!==2)return D.error("Expected one argument.");let X=S[1];if(typeof X!="object"||Array.isArray(X))return D.error("Collator options argument must be an object.");let ie=D.parse(X["case-sensitive"]!==void 0&&X["case-sensitive"],1,it);if(!ie)return null;let ve=D.parse(X["diacritic-sensitive"]!==void 0&&X["diacritic-sensitive"],1,it);if(!ve)return null;let we=null;return X.locale&&(we=D.parse(X.locale,1,He),!we)?null:new mn(ie,ve,we)}evaluate(S){return new xr(this.caseSensitive.evaluate(S),this.diacriticSensitive.evaluate(S),this.locale?this.locale.evaluate(S):null)}eachChild(S){S(this.caseSensitive),S(this.diacriticSensitive),this.locale&&S(this.locale)}outputDefined(){return!1}}class ra{constructor(S,D,X,ie,ve){this.type=He,this.number=S,this.locale=D,this.currency=X,this.minFractionDigits=ie,this.maxFractionDigits=ve}static parse(S,D){if(S.length!==3)return D.error("Expected two arguments.");let X=D.parse(S[1],1,Ye);if(!X)return null;let ie=S[2];if(typeof ie!="object"||Array.isArray(ie))return D.error("NumberFormat options argument must be an object.");let ve=null;if(ie.locale&&(ve=D.parse(ie.locale,1,He),!ve))return null;let we=null;if(ie.currency&&(we=D.parse(ie.currency,1,He),!we))return null;let We=null;if(ie["min-fraction-digits"]&&(We=D.parse(ie["min-fraction-digits"],1,Ye),!We))return null;let ut=null;return ie["max-fraction-digits"]&&(ut=D.parse(ie["max-fraction-digits"],1,Ye),!ut)?null:new ra(X,ve,we,We,ut)}evaluate(S){return new Intl.NumberFormat(this.locale?this.locale.evaluate(S):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(S):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(S):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(S):void 0}).format(this.number.evaluate(S))}eachChild(S){S(this.number),this.locale&&S(this.locale),this.currency&&S(this.currency),this.minFractionDigits&&S(this.minFractionDigits),this.maxFractionDigits&&S(this.maxFractionDigits)}outputDefined(){return!1}}class wa{constructor(S){this.type=_r,this.sections=S}static parse(S,D){if(S.length<2)return D.error("Expected at least one argument.");let X=S[1];if(!Array.isArray(X)&&typeof X=="object")return D.error("First argument must be an image or text section.");let ie=[],ve=!1;for(let we=1;we<=S.length-1;++we){let We=S[we];if(ve&&typeof We=="object"&&!Array.isArray(We)){ve=!1;let ut=null;if(We["font-scale"]&&(ut=D.parse(We["font-scale"],1,Ye),!ut))return null;let Mt=null;if(We["text-font"]&&(Mt=D.parse(We["text-font"],1,xe(He)),!Mt))return null;let $t=null;if(We["text-color"]&&($t=D.parse(We["text-color"],1,et),!$t))return null;let vr=ie[ie.length-1];vr.scale=ut,vr.font=Mt,vr.textColor=$t}else{let ut=D.parse(S[we],1,Yt);if(!ut)return null;let Mt=ut.type.kind;if(Mt!=="string"&&Mt!=="value"&&Mt!=="null"&&Mt!=="resolvedImage")return D.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");ve=!0,ie.push({content:ut,scale:null,font:null,textColor:null})}}return new wa(ie)}evaluate(S){return new Nr(this.sections.map(D=>{let X=D.content.evaluate(S);return ti(X)===Ut?new Lr("",X,null,null,null):new Lr(tn(X),null,D.scale?D.scale.evaluate(S):null,D.font?D.font.evaluate(S).join(","):null,D.textColor?D.textColor.evaluate(S):null)}))}eachChild(S){for(let D of this.sections)S(D.content),D.scale&&S(D.scale),D.font&&S(D.font),D.textColor&&S(D.textColor)}outputDefined(){return!1}}class ws{constructor(S){this.type=Ut,this.input=S}static parse(S,D){if(S.length!==2)return D.error("Expected two arguments.");let X=D.parse(S[1],1,He);return X?new ws(X):D.error("No image name provided.")}evaluate(S){let D=this.input.evaluate(S),X=gi.fromString(D);return X&&S.availableImages&&(X.available=S.availableImages.indexOf(D)>-1),X}eachChild(S){S(this.input)}outputDefined(){return!1}}class Co{constructor(S){this.type=Ye,this.input=S}static parse(S,D){if(S.length!==2)return D.error(`Expected 1 argument, but found ${S.length-1} instead.`);let X=D.parse(S[1],1);return X?X.type.kind!=="array"&&X.type.kind!=="string"&&X.type.kind!=="value"?D.error(`Expected argument of type string or array, but found ${Oe(X.type)} instead.`):new Co(X):null}evaluate(S){let D=this.input.evaluate(S);if(typeof D=="string")return[...D].length;if(Array.isArray(D))return D.length;throw new oi(`Expected value to be of type string or array, but found ${Oe(ti(D))} instead.`)}eachChild(S){S(this.input)}outputDefined(){return!1}}let Po=8192;function Wi(I,S){let D=(180+I[0])/360,X=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+I[1]*Math.PI/360)))/360,ie=Math.pow(2,S.z);return[Math.round(D*ie*Po),Math.round(X*ie*Po)]}function gn(I,S){let D=Math.pow(2,S.z);return[(ie=(I[0]/Po+S.x)/D,360*ie-180),(X=(I[1]/Po+S.y)/D,360/Math.PI*Math.atan(Math.exp((180-360*X)*Math.PI/180))-90)];var X,ie}function Ps(I,S){I[0]=Math.min(I[0],S[0]),I[1]=Math.min(I[1],S[1]),I[2]=Math.max(I[2],S[0]),I[3]=Math.max(I[3],S[1])}function Ha(I,S){return!(I[0]<=S[0]||I[2]>=S[2]||I[1]<=S[1]||I[3]>=S[3])}function Sn(I,S,D){let X=I[0]-S[0],ie=I[1]-S[1],ve=I[0]-D[0],we=I[1]-D[1];return X*we-ve*ie==0&&X*ve<=0&&ie*we<=0}function ao(I,S,D,X){return(ie=[X[0]-D[0],X[1]-D[1]])[0]*(ve=[S[0]-I[0],S[1]-I[1]])[1]-ie[1]*ve[0]!=0&&!(!Qa(I,S,D,X)||!Qa(D,X,I,S));var ie,ve}function Ba(I,S,D){for(let X of D)for(let ie=0;ie(ie=I)[1]!=(we=We[ut+1])[1]>ie[1]&&ie[0]<(we[0]-ve[0])*(ie[1]-ve[1])/(we[1]-ve[1])+ve[0]&&(X=!X)}var ie,ve,we;return X}function Qo(I,S){for(let D of S)if(Ko(I,D))return!0;return!1}function Hi(I,S){for(let D of I)if(!Ko(D,S))return!1;for(let D=0;D0&&We<0||we<0&&We>0}function vn(I,S,D){let X=[];for(let ie=0;ieD[2]){let ie=.5*X,ve=I[0]-D[0]>ie?-X:D[0]-I[0]>ie?X:0;ve===0&&(ve=I[0]-D[2]>ie?-X:D[2]-I[0]>ie?X:0),I[0]+=ve}Ps(S,I)}function vo(I,S,D,X){let ie=Math.pow(2,X.z)*Po,ve=[X.x*Po,X.y*Po],we=[];for(let We of I)for(let ut of We){let Mt=[ut.x+ve[0],ut.y+ve[1]];la(Mt,S,D,ie),we.push(Mt)}return we}function Ts(I,S,D,X){let ie=Math.pow(2,X.z)*Po,ve=[X.x*Po,X.y*Po],we=[];for(let ut of I){let Mt=[];for(let $t of ut){let vr=[$t.x+ve[0],$t.y+ve[1]];Ps(S,vr),Mt.push(vr)}we.push(Mt)}if(S[2]-S[0]<=ie/2){(We=S)[0]=We[1]=1/0,We[2]=We[3]=-1/0;for(let ut of we)for(let Mt of ut)la(Mt,S,D,ie)}var We;return we}class ps{constructor(S,D){this.type=it,this.geojson=S,this.geometries=D}static parse(S,D){if(S.length!==2)return D.error(`'within' expression requires exactly one argument, but found ${S.length-1} instead.`);if(Vi(S[1])){let X=S[1];if(X.type==="FeatureCollection"){let ie=[];for(let ve of X.features){let{type:we,coordinates:We}=ve.geometry;we==="Polygon"&&ie.push(We),we==="MultiPolygon"&&ie.push(...We)}if(ie.length)return new ps(X,{type:"MultiPolygon",coordinates:ie})}else if(X.type==="Feature"){let ie=X.geometry.type;if(ie==="Polygon"||ie==="MultiPolygon")return new ps(X,X.geometry)}else if(X.type==="Polygon"||X.type==="MultiPolygon")return new ps(X,X)}return D.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(S){if(S.geometry()!=null&&S.canonicalID()!=null){if(S.geometryType()==="Point")return function(D,X){let ie=[1/0,1/0,-1/0,-1/0],ve=[1/0,1/0,-1/0,-1/0],we=D.canonicalID();if(X.type==="Polygon"){let We=vn(X.coordinates,ve,we),ut=vo(D.geometry(),ie,ve,we);if(!Ha(ie,ve))return!1;for(let Mt of ut)if(!Ko(Mt,We))return!1}if(X.type==="MultiPolygon"){let We=da(X.coordinates,ve,we),ut=vo(D.geometry(),ie,ve,we);if(!Ha(ie,ve))return!1;for(let Mt of ut)if(!Qo(Mt,We))return!1}return!0}(S,this.geometries);if(S.geometryType()==="LineString")return function(D,X){let ie=[1/0,1/0,-1/0,-1/0],ve=[1/0,1/0,-1/0,-1/0],we=D.canonicalID();if(X.type==="Polygon"){let We=vn(X.coordinates,ve,we),ut=Ts(D.geometry(),ie,ve,we);if(!Ha(ie,ve))return!1;for(let Mt of ut)if(!Hi(Mt,We))return!1}if(X.type==="MultiPolygon"){let We=da(X.coordinates,ve,we),ut=Ts(D.geometry(),ie,ve,we);if(!Ha(ie,ve))return!1;for(let Mt of ut)if(!Sa(Mt,We))return!1}return!0}(S,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}}let co=class{constructor(I=[],S=(D,X)=>DX?1:0){if(this.data=I,this.length=this.data.length,this.compare=S,this.length>0)for(let D=(this.length>>1)-1;D>=0;D--)this._down(D)}push(I){this.data.push(I),this._up(this.length++)}pop(){if(this.length===0)return;let I=this.data[0],S=this.data.pop();return--this.length>0&&(this.data[0]=S,this._down(0)),I}peek(){return this.data[0]}_up(I){let{data:S,compare:D}=this,X=S[I];for(;I>0;){let ie=I-1>>1,ve=S[ie];if(D(X,ve)>=0)break;S[I]=ve,I=ie}S[I]=X}_down(I){let{data:S,compare:D}=this,X=this.length>>1,ie=S[I];for(;I=0)break;S[I]=S[ve],I=ve}S[I]=ie}};function mo(I,S,D,X,ie){No(I,S,D,X||I.length-1,ie||Go)}function No(I,S,D,X,ie){for(;X>D;){if(X-D>600){var ve=X-D+1,we=S-D+1,We=Math.log(ve),ut=.5*Math.exp(2*We/3),Mt=.5*Math.sqrt(We*ut*(ve-ut)/ve)*(we-ve/2<0?-1:1);No(I,S,Math.max(D,Math.floor(S-we*ut/ve+Mt)),Math.min(X,Math.floor(S+(ve-we)*ut/ve+Mt)),ie)}var $t=I[S],vr=D,Sr=X;for(jn(I,D,S),ie(I[X],$t)>0&&jn(I,D,X);vr0;)Sr--}ie(I[D],$t)===0?jn(I,D,Sr):jn(I,++Sr,X),Sr<=S&&(D=Sr+1),S<=Sr&&(X=Sr-1)}}function jn(I,S,D){var X=I[S];I[S]=I[D],I[D]=X}function Go(I,S){return IS?1:0}function Ys(I,S){if(I.length<=1)return[I];let D=[],X,ie;for(let ve of I){let we=Ns(ve);we!==0&&(ve.area=Math.abs(we),ie===void 0&&(ie=we<0),ie===we<0?(X&&D.push(X),X=[ve]):X.push(ve))}if(X&&D.push(X),S>1)for(let ve=0;ve1?(Mt=S[ut+1][0],$t=S[ut+1][1]):Dr>0&&(Mt+=vr/this.kx*Dr,$t+=Sr/this.ky*Dr)),vr=this.wrap(D[0]-Mt)*this.kx,Sr=(D[1]-$t)*this.ky;let Jr=vr*vr+Sr*Sr;Jr180;)S-=360;return S}}function _n(I,S){return S[0]-I[0]}function Vn(I){return I[1]-I[0]+1}function wo(I,S){return I[1]>=I[0]&&I[1]I[1])return[null,null];let D=Vn(I);if(S){if(D===2)return[I,null];let ie=Math.floor(D/2);return[[I[0],I[0]+ie],[I[0]+ie,I[1]]]}if(D===1)return[I,null];let X=Math.floor(D/2)-1;return[[I[0],I[0]+X],[I[0]+X+1,I[1]]]}function Xn(I,S){if(!wo(S,I.length))return[1/0,1/0,-1/0,-1/0];let D=[1/0,1/0,-1/0,-1/0];for(let X=S[0];X<=S[1];++X)Ps(D,I[X]);return D}function un(I){let S=[1/0,1/0,-1/0,-1/0];for(let D of I)for(let X of D)Ps(S,X);return S}function $n(I){return I[0]!==-1/0&&I[1]!==-1/0&&I[2]!==1/0&&I[3]!==1/0}function Ka(I,S,D){if(!$n(I)||!$n(S))return NaN;let X=0,ie=0;return I[2]S[2]&&(X=I[0]-S[2]),I[1]>S[3]&&(ie=I[1]-S[3]),I[3]=X)return X;if(Ha(ie,ve)){if(es(I,S))return 0}else if(es(S,I))return 0;let we=1/0;for(let We of I)for(let ut=0,Mt=We.length,$t=Mt-1;ut0;){let ut=we.pop();if(ut[0]>=ve)continue;let Mt=ut[1],$t=S?50:100;if(Vn(Mt)<=$t){if(!wo(Mt,I.length))return NaN;if(S){let vr=sa(I,Mt,D,X);if(isNaN(vr)||vr===0)return vr;ve=Math.min(ve,vr)}else for(let vr=Mt[0];vr<=Mt[1];++vr){let Sr=eo(I[vr],D,X);if(ve=Math.min(ve,Sr),ve===0)return 0}}else{let vr=Ra(Mt,S);rn(we,ve,X,I,We,vr[0]),rn(we,ve,X,I,We,vr[1])}}return ve}function yo(I,S,D,X,ie,ve=1/0){let we=Math.min(ve,ie.distance(I[0],D[0]));if(we===0)return we;let We=new co([[0,[0,I.length-1],[0,D.length-1]]],_n);for(;We.length>0;){let ut=We.pop();if(ut[0]>=we)continue;let Mt=ut[1],$t=ut[2],vr=S?50:100,Sr=X?50:100;if(Vn(Mt)<=vr&&Vn($t)<=Sr){if(!wo(Mt,I.length)&&wo($t,D.length))return NaN;let Dr;if(S&&X)Dr=Ja(I,Mt,D,$t,ie),we=Math.min(we,Dr);else if(S&&!X){let Jr=I.slice(Mt[0],Mt[1]+1);for(let ui=$t[0];ui<=$t[1];++ui)if(Dr=qn(D[ui],Jr,ie),we=Math.min(we,Dr),we===0)return we}else if(!S&&X){let Jr=D.slice($t[0],$t[1]+1);for(let ui=Mt[0];ui<=Mt[1];++ui)if(Dr=qn(I[ui],Jr,ie),we=Math.min(we,Dr),we===0)return we}else Dr=lo(I,Mt,D,$t,ie),we=Math.min(we,Dr)}else{let Dr=Ra(Mt,S),Jr=Ra($t,X);Pa(We,we,ie,I,D,Dr[0],Jr[0]),Pa(We,we,ie,I,D,Dr[0],Jr[1]),Pa(We,we,ie,I,D,Dr[1],Jr[0]),Pa(We,we,ie,I,D,Dr[1],Jr[1])}}return we}function Jo(I){return I.type==="MultiPolygon"?I.coordinates.map(S=>({type:"Polygon",coordinates:S})):I.type==="MultiLineString"?I.coordinates.map(S=>({type:"LineString",coordinates:S})):I.type==="MultiPoint"?I.coordinates.map(S=>({type:"Point",coordinates:S})):[I]}class To{constructor(S,D){this.type=Ye,this.geojson=S,this.geometries=D}static parse(S,D){if(S.length!==2)return D.error(`'distance' expression requires exactly one argument, but found ${S.length-1} instead.`);if(Vi(S[1])){let X=S[1];if(X.type==="FeatureCollection")return new To(X,X.features.map(ie=>Jo(ie.geometry)).flat());if(X.type==="Feature")return new To(X,Jo(X.geometry));if("type"in X&&"coordinates"in X)return new To(X,Jo(X))}return D.error("'distance' expression requires valid geojson object that contains polygon geometry type.")}evaluate(S){if(S.geometry()!=null&&S.canonicalID()!=null){if(S.geometryType()==="Point")return function(D,X){let ie=D.geometry(),ve=ie.flat().map(ut=>gn([ut.x,ut.y],D.canonical));if(ie.length===0)return NaN;let we=new Ya(ve[0][1]),We=1/0;for(let ut of X){switch(ut.type){case"Point":We=Math.min(We,yo(ve,!1,[ut.coordinates],!1,we,We));break;case"LineString":We=Math.min(We,yo(ve,!1,ut.coordinates,!0,we,We));break;case"Polygon":We=Math.min(We,to(ve,!1,ut.coordinates,we,We))}if(We===0)return We}return We}(S,this.geometries);if(S.geometryType()==="LineString")return function(D,X){let ie=D.geometry(),ve=ie.flat().map(ut=>gn([ut.x,ut.y],D.canonical));if(ie.length===0)return NaN;let we=new Ya(ve[0][1]),We=1/0;for(let ut of X){switch(ut.type){case"Point":We=Math.min(We,yo(ve,!0,[ut.coordinates],!1,we,We));break;case"LineString":We=Math.min(We,yo(ve,!0,ut.coordinates,!0,we,We));break;case"Polygon":We=Math.min(We,to(ve,!0,ut.coordinates,we,We))}if(We===0)return We}return We}(S,this.geometries);if(S.geometryType()==="Polygon")return function(D,X){let ie=D.geometry();if(ie.length===0||ie[0].length===0)return NaN;let ve=Ys(ie,0).map(ut=>ut.map(Mt=>Mt.map($t=>gn([$t.x,$t.y],D.canonical)))),we=new Ya(ve[0][0][0][1]),We=1/0;for(let ut of X)for(let Mt of ve){switch(ut.type){case"Point":We=Math.min(We,to([ut.coordinates],!1,Mt,we,We));break;case"LineString":We=Math.min(We,to(ut.coordinates,!0,Mt,we,We));break;case"Polygon":We=Math.min(We,Na(Mt,ut.coordinates,we,We))}if(We===0)return We}return We}(S,this.geometries)}return NaN}eachChild(){}outputDefined(){return!0}}let Dn={"==":Aa,"!=":ys,">":ls,"<":uo,">=":fo,"<=":$a,array:an,at:tr,boolean:an,case:Ti,coalesce:Ia,collator:mn,format:wa,image:ws,in:pr,"index-of":gr,interpolate:so,"interpolate-hcl":so,"interpolate-lab":so,length:Co,let:Xr,literal:Yr,match:Zr,number:an,"number-format":ra,object:an,slice:en,step:Xi,string:an,"to-boolean":Ri,"to-color":Ri,"to-number":Ri,"to-string":Ri,var:ct,within:ps,distance:To};class _a{constructor(S,D,X,ie){this.name=S,this.type=D,this._evaluate=X,this.args=ie}evaluate(S){return this._evaluate(S,this.args)}eachChild(S){this.args.forEach(S)}outputDefined(){return!1}static parse(S,D){let X=S[0],ie=_a.definitions[X];if(!ie)return D.error(`Unknown expression "${X}". If you wanted a literal array, use ["literal", [...]].`,0);let ve=Array.isArray(ie)?ie[0]:ie.type,we=Array.isArray(ie)?[[ie[1],ie[2]]]:ie.overloads,We=we.filter(([Mt])=>!Array.isArray(Mt)||Mt.length===S.length-1),ut=null;for(let[Mt,$t]of We){ut=new bi(D.registry,Ho,D.path,null,D.scope);let vr=[],Sr=!1;for(let Dr=1;Dr{return Sr=vr,Array.isArray(Sr)?`(${Sr.map(Oe).join(", ")})`:`(${Oe(Sr.type)}...)`;var Sr}).join(" | "),$t=[];for(let vr=1;vr{D=S?D&&Ho(X):D&&X instanceof Yr}),!!D&&Wa(I)&&ts(I,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function Wa(I){if(I instanceof _a&&(I.name==="get"&&I.args.length===1||I.name==="feature-state"||I.name==="has"&&I.args.length===1||I.name==="properties"||I.name==="geometry-type"||I.name==="id"||/^filter-/.test(I.name))||I instanceof ps||I instanceof To)return!1;let S=!0;return I.eachChild(D=>{S&&!Wa(D)&&(S=!1)}),S}function Ao(I){if(I instanceof _a&&I.name==="feature-state")return!1;let S=!0;return I.eachChild(D=>{S&&!Ao(D)&&(S=!1)}),S}function ts(I,S){if(I instanceof _a&&S.indexOf(I.name)>=0)return!1;let D=!0;return I.eachChild(X=>{D&&!ts(X,S)&&(D=!1)}),D}function Wo(I){return{result:"success",value:I}}function qa(I){return{result:"error",value:I}}function ln(I){return I["property-type"]==="data-driven"||I["property-type"]==="cross-faded-data-driven"}function Bo(I){return!!I.expression&&I.expression.parameters.indexOf("zoom")>-1}function ko(I){return!!I.expression&&I.expression.interpolated}function oo(I){return I instanceof Number?"number":I instanceof String?"string":I instanceof Boolean?"boolean":Array.isArray(I)?"array":I===null?"null":typeof I}function za(I){return typeof I=="object"&&I!==null&&!Array.isArray(I)}function ea(I){return I}function rs(I,S){let D=S.type==="color",X=I.stops&&typeof I.stops[0][0]=="object",ie=X||!(X||I.property!==void 0),ve=I.type||(ko(S)?"exponential":"interval");if(D||S.type==="padding"){let $t=D?Wt.parse:Or.parse;(I=Te({},I)).stops&&(I.stops=I.stops.map(vr=>[vr[0],$t(vr[1])])),I.default=$t(I.default?I.default:S.default)}if(I.colorSpace&&(we=I.colorSpace)!=="rgb"&&we!=="hcl"&&we!=="lab")throw new Error(`Unknown color space: "${I.colorSpace}"`);var we;let We,ut,Mt;if(ve==="exponential")We=fl;else if(ve==="interval")We=Ds;else if(ve==="categorical"){We=us,ut=Object.create(null);for(let $t of I.stops)ut[$t[0]]=$t[1];Mt=typeof I.stops[0][0]}else{if(ve!=="identity")throw new Error(`Unknown function type "${ve}"`);We=as}if(X){let $t={},vr=[];for(let Jr=0;JrJr[0]),evaluate:({zoom:Jr},ui)=>fl({stops:Sr,base:I.base},S,Jr).evaluate(Jr,ui)}}if(ie){let $t=ve==="exponential"?{name:"exponential",base:I.base!==void 0?I.base:1}:null;return{kind:"camera",interpolationType:$t,interpolationFactor:so.interpolationFactor.bind(void 0,$t),zoomStops:I.stops.map(vr=>vr[0]),evaluate:({zoom:vr})=>We(I,S,vr,ut,Mt)}}return{kind:"source",evaluate($t,vr){let Sr=vr&&vr.properties?vr.properties[I.property]:void 0;return Sr===void 0?$s(I.default,S.default):We(I,S,Sr,ut,Mt)}}}function $s(I,S,D){return I!==void 0?I:S!==void 0?S:D!==void 0?D:void 0}function us(I,S,D,X,ie){return $s(typeof D===ie?X[D]:void 0,I.default,S.default)}function Ds(I,S,D){if(oo(D)!=="number")return $s(I.default,S.default);let X=I.stops.length;if(X===1||D<=I.stops[0][0])return I.stops[0][1];if(D>=I.stops[X-1][0])return I.stops[X-1][1];let ie=ii(I.stops.map(ve=>ve[0]),D);return I.stops[ie][1]}function fl(I,S,D){let X=I.base!==void 0?I.base:1;if(oo(D)!=="number")return $s(I.default,S.default);let ie=I.stops.length;if(ie===1||D<=I.stops[0][0])return I.stops[0][1];if(D>=I.stops[ie-1][0])return I.stops[ie-1][1];let ve=ii(I.stops.map($t=>$t[0]),D),we=function($t,vr,Sr,Dr){let Jr=Dr-Sr,ui=$t-Sr;return Jr===0?0:vr===1?ui/Jr:(Math.pow(vr,ui)-1)/(Math.pow(vr,Jr)-1)}(D,X,I.stops[ve][0],I.stops[ve+1][0]),We=I.stops[ve][1],ut=I.stops[ve+1][1],Mt=ka[S.type]||ea;return typeof We.evaluate=="function"?{evaluate(...$t){let vr=We.evaluate.apply(void 0,$t),Sr=ut.evaluate.apply(void 0,$t);if(vr!==void 0&&Sr!==void 0)return Mt(vr,Sr,we,I.colorSpace)}}:Mt(We,ut,we,I.colorSpace)}function as(I,S,D){switch(S.type){case"color":D=Wt.parse(D);break;case"formatted":D=Nr.fromString(D.toString());break;case"resolvedImage":D=gi.fromString(D.toString());break;case"padding":D=Or.parse(D);break;default:oo(D)===S.type||S.type==="enum"&&S.values[D]||(D=void 0)}return $s(D,I.default,S.default)}_a.register(Dn,{error:[{kind:"error"},[He],(I,[S])=>{throw new oi(S.evaluate(I))}],typeof:[He,[Yt],(I,[S])=>Oe(ti(S.evaluate(I)))],"to-rgba":[xe(Ye,4),[et],(I,[S])=>{let[D,X,ie,ve]=S.evaluate(I).rgb;return[255*D,255*X,255*ie,ve]}],rgb:[et,[Ye,Ye,Ye],Ws],rgba:[et,[Ye,Ye,Ye,Ye],Ws],has:{type:it,overloads:[[[He],(I,[S])=>Ca(S.evaluate(I),I.properties())],[[He,It],(I,[S,D])=>Ca(S.evaluate(I),D.evaluate(I))]]},get:{type:Yt,overloads:[[[He],(I,[S])=>Es(S.evaluate(I),I.properties())],[[He,It],(I,[S,D])=>Es(S.evaluate(I),D.evaluate(I))]]},"feature-state":[Yt,[He],(I,[S])=>Es(S.evaluate(I),I.featureState||{})],properties:[It,[],I=>I.properties()],"geometry-type":[He,[],I=>I.geometryType()],id:[Yt,[],I=>I.id()],zoom:[Ye,[],I=>I.globals.zoom],"heatmap-density":[Ye,[],I=>I.globals.heatmapDensity||0],"line-progress":[Ye,[],I=>I.globals.lineProgress||0],accumulated:[Yt,[],I=>I.globals.accumulated===void 0?null:I.globals.accumulated],"+":[Ye,As(Ye),(I,S)=>{let D=0;for(let X of S)D+=X.evaluate(I);return D}],"*":[Ye,As(Ye),(I,S)=>{let D=1;for(let X of S)D*=X.evaluate(I);return D}],"-":{type:Ye,overloads:[[[Ye,Ye],(I,[S,D])=>S.evaluate(I)-D.evaluate(I)],[[Ye],(I,[S])=>-S.evaluate(I)]]},"/":[Ye,[Ye,Ye],(I,[S,D])=>S.evaluate(I)/D.evaluate(I)],"%":[Ye,[Ye,Ye],(I,[S,D])=>S.evaluate(I)%D.evaluate(I)],ln2:[Ye,[],()=>Math.LN2],pi:[Ye,[],()=>Math.PI],e:[Ye,[],()=>Math.E],"^":[Ye,[Ye,Ye],(I,[S,D])=>Math.pow(S.evaluate(I),D.evaluate(I))],sqrt:[Ye,[Ye],(I,[S])=>Math.sqrt(S.evaluate(I))],log10:[Ye,[Ye],(I,[S])=>Math.log(S.evaluate(I))/Math.LN10],ln:[Ye,[Ye],(I,[S])=>Math.log(S.evaluate(I))],log2:[Ye,[Ye],(I,[S])=>Math.log(S.evaluate(I))/Math.LN2],sin:[Ye,[Ye],(I,[S])=>Math.sin(S.evaluate(I))],cos:[Ye,[Ye],(I,[S])=>Math.cos(S.evaluate(I))],tan:[Ye,[Ye],(I,[S])=>Math.tan(S.evaluate(I))],asin:[Ye,[Ye],(I,[S])=>Math.asin(S.evaluate(I))],acos:[Ye,[Ye],(I,[S])=>Math.acos(S.evaluate(I))],atan:[Ye,[Ye],(I,[S])=>Math.atan(S.evaluate(I))],min:[Ye,As(Ye),(I,S)=>Math.min(...S.map(D=>D.evaluate(I)))],max:[Ye,As(Ye),(I,S)=>Math.max(...S.map(D=>D.evaluate(I)))],abs:[Ye,[Ye],(I,[S])=>Math.abs(S.evaluate(I))],round:[Ye,[Ye],(I,[S])=>{let D=S.evaluate(I);return D<0?-Math.round(-D):Math.round(D)}],floor:[Ye,[Ye],(I,[S])=>Math.floor(S.evaluate(I))],ceil:[Ye,[Ye],(I,[S])=>Math.ceil(S.evaluate(I))],"filter-==":[it,[He,Yt],(I,[S,D])=>I.properties()[S.value]===D.value],"filter-id-==":[it,[Yt],(I,[S])=>I.id()===S.value],"filter-type-==":[it,[He],(I,[S])=>I.geometryType()===S.value],"filter-<":[it,[He,Yt],(I,[S,D])=>{let X=I.properties()[S.value],ie=D.value;return typeof X==typeof ie&&X{let D=I.id(),X=S.value;return typeof D==typeof X&&D":[it,[He,Yt],(I,[S,D])=>{let X=I.properties()[S.value],ie=D.value;return typeof X==typeof ie&&X>ie}],"filter-id->":[it,[Yt],(I,[S])=>{let D=I.id(),X=S.value;return typeof D==typeof X&&D>X}],"filter-<=":[it,[He,Yt],(I,[S,D])=>{let X=I.properties()[S.value],ie=D.value;return typeof X==typeof ie&&X<=ie}],"filter-id-<=":[it,[Yt],(I,[S])=>{let D=I.id(),X=S.value;return typeof D==typeof X&&D<=X}],"filter->=":[it,[He,Yt],(I,[S,D])=>{let X=I.properties()[S.value],ie=D.value;return typeof X==typeof ie&&X>=ie}],"filter-id->=":[it,[Yt],(I,[S])=>{let D=I.id(),X=S.value;return typeof D==typeof X&&D>=X}],"filter-has":[it,[Yt],(I,[S])=>S.value in I.properties()],"filter-has-id":[it,[],I=>I.id()!==null&&I.id()!==void 0],"filter-type-in":[it,[xe(He)],(I,[S])=>S.value.indexOf(I.geometryType())>=0],"filter-id-in":[it,[xe(Yt)],(I,[S])=>S.value.indexOf(I.id())>=0],"filter-in-small":[it,[He,xe(Yt)],(I,[S,D])=>D.value.indexOf(I.properties()[S.value])>=0],"filter-in-large":[it,[He,xe(Yt)],(I,[S,D])=>function(X,ie,ve,we){for(;ve<=we;){let We=ve+we>>1;if(ie[We]===X)return!0;ie[We]>X?we=We-1:ve=We+1}return!1}(I.properties()[S.value],D.value,0,D.value.length-1)],all:{type:it,overloads:[[[it,it],(I,[S,D])=>S.evaluate(I)&&D.evaluate(I)],[As(it),(I,S)=>{for(let D of S)if(!D.evaluate(I))return!1;return!0}]]},any:{type:it,overloads:[[[it,it],(I,[S,D])=>S.evaluate(I)||D.evaluate(I)],[As(it),(I,S)=>{for(let D of S)if(D.evaluate(I))return!0;return!1}]]},"!":[it,[it],(I,[S])=>!S.evaluate(I)],"is-supported-script":[it,[He],(I,[S])=>{let D=I.globals&&I.globals.isSupportedScript;return!D||D(S.evaluate(I))}],upcase:[He,[He],(I,[S])=>S.evaluate(I).toUpperCase()],downcase:[He,[He],(I,[S])=>S.evaluate(I).toLowerCase()],concat:[He,As(Yt),(I,S)=>S.map(D=>tn(D.evaluate(I))).join("")],"resolved-locale":[He,[cr],(I,[S])=>S.evaluate(I).resolvedLocale()]});class Ma{constructor(S,D){var X;this.expression=S,this._warningHistory={},this._evaluator=new xn,this._defaultValue=D?(X=D).type==="color"&&za(X.default)?new Wt(0,0,0,0):X.type==="color"?Wt.parse(X.default)||null:X.type==="padding"?Or.parse(X.default)||null:X.type==="variableAnchorOffsetCollection"?jr.parse(X.default)||null:X.default===void 0?null:X.default:null,this._enumValues=D&&D.type==="enum"?D.values:null}evaluateWithoutErrorHandling(S,D,X,ie,ve,we){return this._evaluator.globals=S,this._evaluator.feature=D,this._evaluator.featureState=X,this._evaluator.canonical=ie,this._evaluator.availableImages=ve||null,this._evaluator.formattedSection=we,this.expression.evaluate(this._evaluator)}evaluate(S,D,X,ie,ve,we){this._evaluator.globals=S,this._evaluator.feature=D||null,this._evaluator.featureState=X||null,this._evaluator.canonical=ie,this._evaluator.availableImages=ve||null,this._evaluator.formattedSection=we||null;try{let We=this.expression.evaluate(this._evaluator);if(We==null||typeof We=="number"&&We!=We)return this._defaultValue;if(this._enumValues&&!(We in this._enumValues))throw new oi(`Expected value to be one of ${Object.keys(this._enumValues).map(ut=>JSON.stringify(ut)).join(", ")}, but found ${JSON.stringify(We)} instead.`);return We}catch(We){return this._warningHistory[We.message]||(this._warningHistory[We.message]=!0,typeof console!="undefined"&&console.warn(We.message)),this._defaultValue}}}function Qs(I){return Array.isArray(I)&&I.length>0&&typeof I[0]=="string"&&I[0]in Dn}function ho(I,S){let D=new bi(Dn,Ho,[],S?function(ie){let ve={color:et,string:He,number:Ye,enum:He,boolean:it,formatted:_r,padding:yr,resolvedImage:Ut,variableAnchorOffsetCollection:Re};return ie.type==="array"?xe(ve[ie.value]||Yt,ie.length):ve[ie.type]}(S):void 0),X=D.parse(I,void 0,void 0,void 0,S&&S.type==="string"?{typeAnnotation:"coerce"}:void 0);return X?Wo(new Ma(X,S)):qa(D.errors)}class gs{constructor(S,D){this.kind=S,this._styleExpression=D,this.isStateDependent=S!=="constant"&&!Ao(D.expression)}evaluateWithoutErrorHandling(S,D,X,ie,ve,we){return this._styleExpression.evaluateWithoutErrorHandling(S,D,X,ie,ve,we)}evaluate(S,D,X,ie,ve,we){return this._styleExpression.evaluate(S,D,X,ie,ve,we)}}class Vo{constructor(S,D,X,ie){this.kind=S,this.zoomStops=X,this._styleExpression=D,this.isStateDependent=S!=="camera"&&!Ao(D.expression),this.interpolationType=ie}evaluateWithoutErrorHandling(S,D,X,ie,ve,we){return this._styleExpression.evaluateWithoutErrorHandling(S,D,X,ie,ve,we)}evaluate(S,D,X,ie,ve,we){return this._styleExpression.evaluate(S,D,X,ie,ve,we)}interpolationFactor(S,D,X){return this.interpolationType?so.interpolationFactor(this.interpolationType,S,D,X):0}}function Do(I,S){let D=ho(I,S);if(D.result==="error")return D;let X=D.value.expression,ie=Wa(X);if(!ie&&!ln(S))return qa([new ot("","data expressions not supported")]);let ve=ts(X,["zoom"]);if(!ve&&!Bo(S))return qa([new ot("","zoom expressions not supported")]);let we=xs(X);return we||ve?we instanceof ot?qa([we]):we instanceof so&&!ko(S)?qa([new ot("",'"interpolate" expressions cannot be used with this property')]):Wo(we?new Vo(ie?"camera":"composite",D.value,we.labels,we instanceof so?we.interpolation:void 0):new gs(ie?"constant":"source",D.value)):qa([new ot("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class Lo{constructor(S,D){this._parameters=S,this._specification=D,Te(this,rs(this._parameters,this._specification))}static deserialize(S){return new Lo(S._parameters,S._specification)}static serialize(S){return{_parameters:S._parameters,_specification:S._specification}}}function xs(I){let S=null;if(I instanceof Xr)S=xs(I.result);else if(I instanceof Ia){for(let D of I.args)if(S=xs(D),S)break}else(I instanceof Xi||I instanceof so)&&I.input instanceof _a&&I.input.name==="zoom"&&(S=I);return S instanceof ot||I.eachChild(D=>{let X=xs(D);X instanceof ot?S=X:!S&&X?S=new ot("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):S&&X&&S!==X&&(S=new ot("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),S}function ks(I){if(I===!0||I===!1)return!0;if(!Array.isArray(I)||I.length===0)return!1;switch(I[0]){case"has":return I.length>=2&&I[1]!=="$id"&&I[1]!=="$type";case"in":return I.length>=3&&(typeof I[1]!="string"||Array.isArray(I[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return I.length!==3||Array.isArray(I[1])||Array.isArray(I[2]);case"any":case"all":for(let S of I.slice(1))if(!ks(S)&&typeof S!="boolean")return!1;return!0;default:return!0}}let Ea={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function Jn(I){if(I==null)return{filter:()=>!0,needGeometry:!1};ks(I)||(I=Gs(I));let S=ho(I,Ea);if(S.result==="error")throw new Error(S.value.map(D=>`${D.key}: ${D.message}`).join(", "));return{filter:(D,X,ie)=>S.value.evaluate(D,X,{},ie),needGeometry:rl(I)}}function Oo(I,S){return IS?1:0}function rl(I){if(!Array.isArray(I))return!1;if(I[0]==="within"||I[0]==="distance")return!0;for(let S=1;S"||S==="<="||S===">="?bs(I[1],I[2],S):S==="any"?(D=I.slice(1),["any"].concat(D.map(Gs))):S==="all"?["all"].concat(I.slice(1).map(Gs)):S==="none"?["all"].concat(I.slice(1).map(Gs).map(Ta)):S==="in"?zs(I[1],I.slice(2)):S==="!in"?Ta(zs(I[1],I.slice(2))):S==="has"?$o(I[1]):S!=="!has"||Ta($o(I[1]));var D}function bs(I,S,D){switch(I){case"$type":return[`filter-type-${D}`,S];case"$id":return[`filter-id-${D}`,S];default:return[`filter-${D}`,I,S]}}function zs(I,S){if(S.length===0)return!1;switch(I){case"$type":return["filter-type-in",["literal",S]];case"$id":return["filter-id-in",["literal",S]];default:return S.length>200&&!S.some(D=>typeof D!=typeof S[0])?["filter-in-large",I,["literal",S.sort(Oo)]]:["filter-in-small",I,["literal",S]]}}function $o(I){switch(I){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",I]}}function Ta(I){return["!",I]}function os(I){let S=typeof I;if(S==="number"||S==="boolean"||S==="string"||I==null)return JSON.stringify(I);if(Array.isArray(I)){let ie="[";for(let ve of I)ie+=`${os(ve)},`;return`${ie}]`}let D=Object.keys(I).sort(),X="{";for(let ie=0;ieX.maximum?[new Et(S,D,`${D} is greater than the maximum value ${X.maximum}`)]:[]}function io(I){let S=I.valueSpec,D=po(I.value.type),X,ie,ve,we={},We=D!=="categorical"&&I.value.property===void 0,ut=!We,Mt=oo(I.value.stops)==="array"&&oo(I.value.stops[0])==="array"&&oo(I.value.stops[0][0])==="object",$t=ss({key:I.key,value:I.value,valueSpec:I.styleSpec.function,validateSpec:I.validateSpec,style:I.style,styleSpec:I.styleSpec,objectElementValidators:{stops:function(Dr){if(D==="identity")return[new Et(Dr.key,Dr.value,'identity function may not have a "stops" property')];let Jr=[],ui=Dr.value;return Jr=Jr.concat(qo({key:Dr.key,value:ui,valueSpec:Dr.valueSpec,validateSpec:Dr.validateSpec,style:Dr.style,styleSpec:Dr.styleSpec,arrayElementValidator:vr})),oo(ui)==="array"&&ui.length===0&&Jr.push(new Et(Dr.key,ui,"array must have at least one stop")),Jr},default:function(Dr){return Dr.validateSpec({key:Dr.key,value:Dr.value,valueSpec:S,validateSpec:Dr.validateSpec,style:Dr.style,styleSpec:Dr.styleSpec})}}});return D==="identity"&&We&&$t.push(new Et(I.key,I.value,'missing required property "property"')),D==="identity"||I.value.stops||$t.push(new Et(I.key,I.value,'missing required property "stops"')),D==="exponential"&&I.valueSpec.expression&&!ko(I.valueSpec)&&$t.push(new Et(I.key,I.value,"exponential functions not supported")),I.styleSpec.$version>=8&&(ut&&!ln(I.valueSpec)?$t.push(new Et(I.key,I.value,"property functions not supported")):We&&!Bo(I.valueSpec)&&$t.push(new Et(I.key,I.value,"zoom functions not supported"))),D!=="categorical"&&!Mt||I.value.property!==void 0||$t.push(new Et(I.key,I.value,'"property" property is required')),$t;function vr(Dr){let Jr=[],ui=Dr.value,Gi=Dr.key;if(oo(ui)!=="array")return[new Et(Gi,ui,`array expected, ${oo(ui)} found`)];if(ui.length!==2)return[new Et(Gi,ui,`array length 2 expected, length ${ui.length} found`)];if(Mt){if(oo(ui[0])!=="object")return[new Et(Gi,ui,`object expected, ${oo(ui[0])} found`)];if(ui[0].zoom===void 0)return[new Et(Gi,ui,"object stop key must have zoom")];if(ui[0].value===void 0)return[new Et(Gi,ui,"object stop key must have value")];if(ve&&ve>po(ui[0].zoom))return[new Et(Gi,ui[0].zoom,"stop zoom values must appear in ascending order")];po(ui[0].zoom)!==ve&&(ve=po(ui[0].zoom),ie=void 0,we={}),Jr=Jr.concat(ss({key:`${Gi}[0]`,value:ui[0],valueSpec:{zoom:{}},validateSpec:Dr.validateSpec,style:Dr.style,styleSpec:Dr.styleSpec,objectElementValidators:{zoom:zo,value:Sr}}))}else Jr=Jr.concat(Sr({key:`${Gi}[0]`,value:ui[0],valueSpec:{},validateSpec:Dr.validateSpec,style:Dr.style,styleSpec:Dr.styleSpec},ui));return Qs(go(ui[1]))?Jr.concat([new Et(`${Gi}[1]`,ui[1],"expressions are not allowed in function stops.")]):Jr.concat(Dr.validateSpec({key:`${Gi}[1]`,value:ui[1],valueSpec:S,validateSpec:Dr.validateSpec,style:Dr.style,styleSpec:Dr.styleSpec}))}function Sr(Dr,Jr){let ui=oo(Dr.value),Gi=po(Dr.value),cn=Dr.value!==null?Dr.value:Jr;if(X){if(ui!==X)return[new Et(Dr.key,cn,`${ui} stop domain type must match previous stop domain type ${X}`)]}else X=ui;if(ui!=="number"&&ui!=="string"&&ui!=="boolean")return[new Et(Dr.key,cn,"stop domain value must be a number, string, or boolean")];if(ui!=="number"&&D!=="categorical"){let Za=`number expected, ${ui} found`;return ln(S)&&D===void 0&&(Za+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new Et(Dr.key,cn,Za)]}return D!=="categorical"||ui!=="number"||isFinite(Gi)&&Math.floor(Gi)===Gi?D!=="categorical"&&ui==="number"&&ie!==void 0&&Ginew Et(`${I.key}${X.key}`,I.value,X.message));let D=S.value.expression||S.value._styleExpression.expression;if(I.expressionContext==="property"&&I.propertyKey==="text-font"&&!D.outputDefined())return[new Et(I.key,I.value,`Invalid data expression for "${I.propertyKey}". Output values must be contained as literals within the expression.`)];if(I.expressionContext==="property"&&I.propertyType==="layout"&&!Ao(D))return[new Et(I.key,I.value,'"feature-state" data expressions are not supported with layout properties.')];if(I.expressionContext==="filter"&&!Ao(D))return[new Et(I.key,I.value,'"feature-state" data expressions are not supported with filters.')];if(I.expressionContext&&I.expressionContext.indexOf("cluster")===0){if(!ts(D,["zoom","feature-state"]))return[new Et(I.key,I.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(I.expressionContext==="cluster-initial"&&!Wa(D))return[new Et(I.key,I.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function Da(I){let S=I.key,D=I.value,X=I.valueSpec,ie=[];return Array.isArray(X.values)?X.values.indexOf(po(D))===-1&&ie.push(new Et(S,D,`expected one of [${X.values.join(", ")}], ${JSON.stringify(D)} found`)):Object.keys(X.values).indexOf(po(D))===-1&&ie.push(new Et(S,D,`expected one of [${Object.keys(X.values).join(", ")}], ${JSON.stringify(D)} found`)),ie}function vs(I){return ks(go(I.value))?Io(Te({},I,{expressionContext:"filter",valueSpec:{value:"boolean"}})):fs(I)}function fs(I){let S=I.value,D=I.key;if(oo(S)!=="array")return[new Et(D,S,`array expected, ${oo(S)} found`)];let X=I.styleSpec,ie,ve=[];if(S.length<1)return[new Et(D,S,"filter array must have at least 1 element")];switch(ve=ve.concat(Da({key:`${D}[0]`,value:S[0],valueSpec:X.filter_operator,style:I.style,styleSpec:I.styleSpec})),po(S[0])){case"<":case"<=":case">":case">=":S.length>=2&&po(S[1])==="$type"&&ve.push(new Et(D,S,`"$type" cannot be use with operator "${S[0]}"`));case"==":case"!=":S.length!==3&&ve.push(new Et(D,S,`filter array for operator "${S[0]}" must have 3 elements`));case"in":case"!in":S.length>=2&&(ie=oo(S[1]),ie!=="string"&&ve.push(new Et(`${D}[1]`,S[1],`string expected, ${ie} found`)));for(let we=2;we{Mt in D&&S.push(new Et(X,D[Mt],`"${Mt}" is prohibited for ref layers`))}),ie.layers.forEach(Mt=>{po(Mt.id)===We&&(ut=Mt)}),ut?ut.ref?S.push(new Et(X,D.ref,"ref cannot reference another ref layer")):we=po(ut.type):S.push(new Et(X,D.ref,`ref layer "${We}" not found`))}else if(we!=="background")if(D.source){let ut=ie.sources&&ie.sources[D.source],Mt=ut&&po(ut.type);ut?Mt==="vector"&&we==="raster"?S.push(new Et(X,D.source,`layer "${D.id}" requires a raster source`)):Mt!=="raster-dem"&&we==="hillshade"?S.push(new Et(X,D.source,`layer "${D.id}" requires a raster-dem source`)):Mt==="raster"&&we!=="raster"?S.push(new Et(X,D.source,`layer "${D.id}" requires a vector source`)):Mt!=="vector"||D["source-layer"]?Mt==="raster-dem"&&we!=="hillshade"?S.push(new Et(X,D.source,"raster-dem source can only be used with layer type 'hillshade'.")):we!=="line"||!D.paint||!D.paint["line-gradient"]||Mt==="geojson"&&ut.lineMetrics||S.push(new Et(X,D,`layer "${D.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):S.push(new Et(X,D,`layer "${D.id}" must specify a "source-layer"`)):S.push(new Et(X,D.source,`source "${D.source}" not found`))}else S.push(new Et(X,D,'missing required property "source"'));return S=S.concat(ss({key:X,value:D,valueSpec:ve.layer,style:I.style,styleSpec:I.styleSpec,validateSpec:I.validateSpec,objectElementValidators:{"*":()=>[],type:()=>I.validateSpec({key:`${X}.type`,value:D.type,valueSpec:ve.layer.type,style:I.style,styleSpec:I.styleSpec,validateSpec:I.validateSpec,object:D,objectKey:"type"}),filter:vs,layout:ut=>ss({layer:D,key:ut.key,value:ut.value,style:ut.style,styleSpec:ut.styleSpec,validateSpec:ut.validateSpec,objectElementValidators:{"*":Mt=>Hs(Te({layerType:we},Mt))}}),paint:ut=>ss({layer:D,key:ut.key,value:ut.value,style:ut.style,styleSpec:ut.styleSpec,validateSpec:ut.validateSpec,objectElementValidators:{"*":Mt=>el(Te({layerType:we},Mt))}})}})),S}function tl(I){let S=I.value,D=I.key,X=oo(S);return X!=="string"?[new Et(D,S,`string expected, ${X} found`)]:[]}let Fs={promoteId:function({key:I,value:S}){if(oo(S)==="string")return tl({key:I,value:S});{let D=[];for(let X in S)D.push(...tl({key:`${I}.${X}`,value:S[X]}));return D}}};function hl(I){let S=I.value,D=I.key,X=I.styleSpec,ie=I.style,ve=I.validateSpec;if(!S.type)return[new Et(D,S,'"type" is required')];let we=po(S.type),We;switch(we){case"vector":case"raster":return We=ss({key:D,value:S,valueSpec:X[`source_${we.replace("-","_")}`],style:I.style,styleSpec:X,objectElementValidators:Fs,validateSpec:ve}),We;case"raster-dem":return We=function(ut){var Mt;let $t=(Mt=ut.sourceName)!==null&&Mt!==void 0?Mt:"",vr=ut.value,Sr=ut.styleSpec,Dr=Sr.source_raster_dem,Jr=ut.style,ui=[],Gi=oo(vr);if(vr===void 0)return ui;if(Gi!=="object")return ui.push(new Et("source_raster_dem",vr,`object expected, ${Gi} found`)),ui;let cn=po(vr.encoding)==="custom",Za=["redFactor","greenFactor","blueFactor","baseShift"],Rn=ut.value.encoding?`"${ut.value.encoding}"`:"Default";for(let La in vr)!cn&&Za.includes(La)?ui.push(new Et(La,vr[La],`In "${$t}": "${La}" is only valid when "encoding" is set to "custom". ${Rn} encoding found`)):Dr[La]?ui=ui.concat(ut.validateSpec({key:La,value:vr[La],valueSpec:Dr[La],validateSpec:ut.validateSpec,style:Jr,styleSpec:Sr})):ui.push(new Et(La,vr[La],`unknown property "${La}"`));return ui}({sourceName:D,value:S,style:I.style,styleSpec:X,validateSpec:ve}),We;case"geojson":if(We=ss({key:D,value:S,valueSpec:X.source_geojson,style:ie,styleSpec:X,validateSpec:ve,objectElementValidators:Fs}),S.cluster)for(let ut in S.clusterProperties){let[Mt,$t]=S.clusterProperties[ut],vr=typeof Mt=="string"?[Mt,["accumulated"],["get",ut]]:Mt;We.push(...Io({key:`${D}.${ut}.map`,value:$t,validateSpec:ve,expressionContext:"cluster-map"})),We.push(...Io({key:`${D}.${ut}.reduce`,value:vr,validateSpec:ve,expressionContext:"cluster-reduce"}))}return We;case"video":return ss({key:D,value:S,valueSpec:X.source_video,style:ie,validateSpec:ve,styleSpec:X});case"image":return ss({key:D,value:S,valueSpec:X.source_image,style:ie,validateSpec:ve,styleSpec:X});case"canvas":return[new Et(D,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return Da({key:`${D}.type`,value:S.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:ie,validateSpec:ve,styleSpec:X})}}function Fa(I){let S=I.value,D=I.styleSpec,X=D.light,ie=I.style,ve=[],we=oo(S);if(S===void 0)return ve;if(we!=="object")return ve=ve.concat([new Et("light",S,`object expected, ${we} found`)]),ve;for(let We in S){let ut=We.match(/^(.*)-transition$/);ve=ve.concat(ut&&X[ut[1]]&&X[ut[1]].transition?I.validateSpec({key:We,value:S[We],valueSpec:D.transition,validateSpec:I.validateSpec,style:ie,styleSpec:D}):X[We]?I.validateSpec({key:We,value:S[We],valueSpec:X[We],validateSpec:I.validateSpec,style:ie,styleSpec:D}):[new Et(We,S[We],`unknown property "${We}"`)])}return ve}function Ms(I){let S=I.value,D=I.styleSpec,X=D.sky,ie=I.style,ve=oo(S);if(S===void 0)return[];if(ve!=="object")return[new Et("sky",S,`object expected, ${ve} found`)];let we=[];for(let We in S)we=we.concat(X[We]?I.validateSpec({key:We,value:S[We],valueSpec:X[We],style:ie,styleSpec:D}):[new Et(We,S[We],`unknown property "${We}"`)]);return we}function jo(I){let S=I.value,D=I.styleSpec,X=D.terrain,ie=I.style,ve=[],we=oo(S);if(S===void 0)return ve;if(we!=="object")return ve=ve.concat([new Et("terrain",S,`object expected, ${we} found`)]),ve;for(let We in S)ve=ve.concat(X[We]?I.validateSpec({key:We,value:S[We],valueSpec:X[We],validateSpec:I.validateSpec,style:ie,styleSpec:D}):[new Et(We,S[We],`unknown property "${We}"`)]);return ve}function Rs(I){let S=[],D=I.value,X=I.key;if(Array.isArray(D)){let ie=[],ve=[];for(let we in D)D[we].id&&ie.includes(D[we].id)&&S.push(new Et(X,D,`all the sprites' ids must be unique, but ${D[we].id} is duplicated`)),ie.push(D[we].id),D[we].url&&ve.includes(D[we].url)&&S.push(new Et(X,D,`all the sprites' URLs must be unique, but ${D[we].url} is duplicated`)),ve.push(D[we].url),S=S.concat(ss({key:`${X}[${we}]`,value:D[we],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:I.validateSpec}));return S}return tl({key:X,value:D})}let Is={"*":()=>[],array:qo,boolean:function(I){let S=I.value,D=I.key,X=oo(S);return X!=="boolean"?[new Et(D,S,`boolean expected, ${X} found`)]:[]},number:zo,color:function(I){let S=I.key,D=I.value,X=oo(D);return X!=="string"?[new Et(S,D,`color expected, ${X} found`)]:Wt.parse(String(D))?[]:[new Et(S,D,`color expected, "${D}" found`)]},constants:Ss,enum:Da,filter:vs,function:io,layer:Ro,object:ss,source:hl,light:Fa,sky:Ms,terrain:jo,projection:function(I){let S=I.value,D=I.styleSpec,X=D.projection,ie=I.style,ve=oo(S);if(S===void 0)return[];if(ve!=="object")return[new Et("projection",S,`object expected, ${ve} found`)];let we=[];for(let We in S)we=we.concat(X[We]?I.validateSpec({key:We,value:S[We],valueSpec:X[We],style:ie,styleSpec:D}):[new Et(We,S[We],`unknown property "${We}"`)]);return we},string:tl,formatted:function(I){return tl(I).length===0?[]:Io(I)},resolvedImage:function(I){return tl(I).length===0?[]:Io(I)},padding:function(I){let S=I.key,D=I.value;if(oo(D)==="array"){if(D.length<1||D.length>4)return[new Et(S,D,`padding requires 1 to 4 values; ${D.length} values found`)];let X={type:"number"},ie=[];for(let ve=0;ve[]}})),I.constants&&(D=D.concat(Ss({key:"constants",value:I.constants,style:I,styleSpec:S,validateSpec:Bs}))),mr(D)}function wr(I){return function(S){return I(O1(ym({},S),{validateSpec:Bs}))}}function mr(I){return[].concat(I).sort((S,D)=>S.line-D.line)}function Fr(I){return function(...S){return mr(I.apply(this,S))}}Vt.source=Fr(wr(hl)),Vt.sprite=Fr(wr(Rs)),Vt.glyphs=Fr(wr(At)),Vt.light=Fr(wr(Fa)),Vt.sky=Fr(wr(Ms)),Vt.terrain=Fr(wr(jo)),Vt.layer=Fr(wr(Ro)),Vt.filter=Fr(wr(vs)),Vt.paintProperty=Fr(wr(el)),Vt.layoutProperty=Fr(wr(Hs));let _i=Vt,Si=_i.light,Ci=_i.sky,Ki=_i.paintProperty,Fn=_i.layoutProperty;function Pi(I,S){let D=!1;if(S&&S.length)for(let X of S)I.fire(new ye(new Error(X.message))),D=!0;return D}class di{constructor(S,D,X){let ie=this.cells=[];if(S instanceof ArrayBuffer){this.arrayBuffer=S;let we=new Int32Array(this.arrayBuffer);S=we[0],this.d=(D=we[1])+2*(X=we[2]);for(let ut=0;ut=vr[Jr+0]&&ie>=vr[Jr+1])?(We[Dr]=!0,we.push($t[Dr])):We[Dr]=!1}}}}_forEachCell(S,D,X,ie,ve,we,We,ut){let Mt=this._convertToCellCoord(S),$t=this._convertToCellCoord(D),vr=this._convertToCellCoord(X),Sr=this._convertToCellCoord(ie);for(let Dr=Mt;Dr<=vr;Dr++)for(let Jr=$t;Jr<=Sr;Jr++){let ui=this.d*Jr+Dr;if((!ut||ut(this._convertFromCellCoord(Dr),this._convertFromCellCoord(Jr),this._convertFromCellCoord(Dr+1),this._convertFromCellCoord(Jr+1)))&&ve.call(this,S,D,X,ie,ui,we,We,ut))return}}_convertFromCellCoord(S){return(S-this.padding)/this.scale}_convertToCellCoord(S){return Math.max(0,Math.min(this.d-1,Math.floor(S*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;let S=this.cells,D=3+this.cells.length+1+1,X=0;for(let we=0;we=0)continue;let we=I[ve];ie[ve]=Li[D].shallow.indexOf(ve)>=0?we:ia(we,S)}I instanceof Error&&(ie.message=I.message)}if(ie.$name)throw new Error("$name property is reserved for worker serialization logic.");return D!=="Object"&&(ie.$name=D),ie}function pa(I){if(ya(I))return I;if(Array.isArray(I))return I.map(pa);if(typeof I!="object")throw new Error("can't deserialize object of type "+typeof I);let S=ta(I)||"Object";if(!Li[S])throw new Error(`can't deserialize unregistered class ${S}`);let{klass:D}=Li[S];if(!D)throw new Error(`can't deserialize unregistered class ${S}`);if(D.deserialize)return D.deserialize(I);let X=Object.create(D.prototype);for(let ie of Object.keys(I)){if(ie==="$name")continue;let ve=I[ie];X[ie]=Li[S].shallow.indexOf(ie)>=0?ve:pa(ve)}return X}class va{constructor(){this.first=!0}update(S,D){let X=Math.floor(S);return this.first?(this.first=!1,this.lastIntegerZoom=X,this.lastIntegerZoomTime=0,this.lastZoom=S,this.lastFloorZoom=X,!0):(this.lastFloorZoom>X?(this.lastIntegerZoom=X+1,this.lastIntegerZoomTime=D):this.lastFloorZoomI>=128&&I<=255,"Hangul Jamo":I=>I>=4352&&I<=4607,Khmer:I=>I>=6016&&I<=6143,"General Punctuation":I=>I>=8192&&I<=8303,"Letterlike Symbols":I=>I>=8448&&I<=8527,"Number Forms":I=>I>=8528&&I<=8591,"Miscellaneous Technical":I=>I>=8960&&I<=9215,"Control Pictures":I=>I>=9216&&I<=9279,"Optical Character Recognition":I=>I>=9280&&I<=9311,"Enclosed Alphanumerics":I=>I>=9312&&I<=9471,"Geometric Shapes":I=>I>=9632&&I<=9727,"Miscellaneous Symbols":I=>I>=9728&&I<=9983,"Miscellaneous Symbols and Arrows":I=>I>=11008&&I<=11263,"Ideographic Description Characters":I=>I>=12272&&I<=12287,"CJK Symbols and Punctuation":I=>I>=12288&&I<=12351,Katakana:I=>I>=12448&&I<=12543,Kanbun:I=>I>=12688&&I<=12703,"CJK Strokes":I=>I>=12736&&I<=12783,"Enclosed CJK Letters and Months":I=>I>=12800&&I<=13055,"CJK Compatibility":I=>I>=13056&&I<=13311,"Yijing Hexagram Symbols":I=>I>=19904&&I<=19967,"Private Use Area":I=>I>=57344&&I<=63743,"Vertical Forms":I=>I>=65040&&I<=65055,"CJK Compatibility Forms":I=>I>=65072&&I<=65103,"Small Form Variants":I=>I>=65104&&I<=65135,"Halfwidth and Fullwidth Forms":I=>I>=65280&&I<=65519};function is(I){for(let S of I)if(bl(S.charCodeAt(0)))return!0;return!1}function Cs(I){for(let S of I)if(!xl(S.charCodeAt(0)))return!1;return!0}function Ks(I){let S=I.map(D=>{try{return new RegExp(`\\p{sc=${D}}`,"u").source}catch(X){return null}}).filter(D=>D);return new RegExp(S.join("|"),"u")}let dl=Ks(["Arab","Dupl","Mong","Ougr","Syrc"]);function xl(I){return!dl.test(String.fromCodePoint(I))}let Bl=Ks(["Bopo","Hani","Hira","Kana","Kits","Nshu","Tang","Yiii"]);function bl(I){return!(I!==746&&I!==747&&(I<4352||!(zn["CJK Compatibility Forms"](I)&&!(I>=65097&&I<=65103)||zn["CJK Compatibility"](I)||zn["CJK Strokes"](I)||!(!zn["CJK Symbols and Punctuation"](I)||I>=12296&&I<=12305||I>=12308&&I<=12319||I===12336)||zn["Enclosed CJK Letters and Months"](I)||zn["Ideographic Description Characters"](I)||zn.Kanbun(I)||zn.Katakana(I)&&I!==12540||!(!zn["Halfwidth and Fullwidth Forms"](I)||I===65288||I===65289||I===65293||I>=65306&&I<=65310||I===65339||I===65341||I===65343||I>=65371&&I<=65503||I===65507||I>=65512&&I<=65519)||!(!zn["Small Form Variants"](I)||I>=65112&&I<=65118||I>=65123&&I<=65126)||zn["Vertical Forms"](I)||zn["Yijing Hexagram Symbols"](I)||new RegExp("\\p{sc=Cans}","u").test(String.fromCodePoint(I))||new RegExp("\\p{sc=Hang}","u").test(String.fromCodePoint(I))||Bl.test(String.fromCodePoint(I)))))}function eu(I){return!(bl(I)||function(S){return!!(zn["Latin-1 Supplement"](S)&&(S===167||S===169||S===174||S===177||S===188||S===189||S===190||S===215||S===247)||zn["General Punctuation"](S)&&(S===8214||S===8224||S===8225||S===8240||S===8241||S===8251||S===8252||S===8258||S===8263||S===8264||S===8265||S===8273)||zn["Letterlike Symbols"](S)||zn["Number Forms"](S)||zn["Miscellaneous Technical"](S)&&(S>=8960&&S<=8967||S>=8972&&S<=8991||S>=8996&&S<=9e3||S===9003||S>=9085&&S<=9114||S>=9150&&S<=9165||S===9167||S>=9169&&S<=9179||S>=9186&&S<=9215)||zn["Control Pictures"](S)&&S!==9251||zn["Optical Character Recognition"](S)||zn["Enclosed Alphanumerics"](S)||zn["Geometric Shapes"](S)||zn["Miscellaneous Symbols"](S)&&!(S>=9754&&S<=9759)||zn["Miscellaneous Symbols and Arrows"](S)&&(S>=11026&&S<=11055||S>=11088&&S<=11097||S>=11192&&S<=11243)||zn["CJK Symbols and Punctuation"](S)||zn.Katakana(S)||zn["Private Use Area"](S)||zn["CJK Compatibility Forms"](S)||zn["Small Form Variants"](S)||zn["Halfwidth and Fullwidth Forms"](S)||S===8734||S===8756||S===8757||S>=9984&&S<=10087||S>=10102&&S<=10131||S===65532||S===65533)}(I))}let Zl=Ks(["Adlm","Arab","Armi","Avst","Chrs","Cprt","Egyp","Elym","Gara","Hatr","Hebr","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogo","Syrc","Thaa","Todr","Yezi"]);function Ul(I){return Zl.test(String.fromCodePoint(I))}function ja(I,S){return!(!S&&Ul(I)||I>=2304&&I<=3583||I>=3840&&I<=4255||zn.Khmer(I))}function ns(I){for(let S of I)if(Ul(S.charCodeAt(0)))return!0;return!1}let Js=new class{constructor(){this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus="unavailable",this.pluginURL=null}setState(I){this.pluginStatus=I.pluginStatus,this.pluginURL=I.pluginURL}getState(){return{pluginStatus:this.pluginStatus,pluginURL:this.pluginURL}}setMethods(I){this.applyArabicShaping=I.applyArabicShaping,this.processBidirectionalText=I.processBidirectionalText,this.processStyledBidirectionalText=I.processStyledBidirectionalText}isParsed(){return this.applyArabicShaping!=null&&this.processBidirectionalText!=null&&this.processStyledBidirectionalText!=null}getPluginURL(){return this.pluginURL}getRTLTextPluginStatus(){return this.pluginStatus}};class cs{constructor(S,D){this.zoom=S,D?(this.now=D.now,this.fadeDuration=D.fadeDuration,this.zoomHistory=D.zoomHistory,this.transition=D.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new va,this.transition={})}isSupportedScript(S){return function(D,X){for(let ie of D)if(!ja(ie.charCodeAt(0),X))return!1;return!0}(S,Js.getRTLTextPluginStatus()==="loaded")}crossFadingFactor(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){let S=this.zoom,D=S-Math.floor(S),X=this.crossFadingFactor();return S>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:D+(1-D)*X}:{fromScale:.5,toScale:1,t:1-(1-X)*D}}}class sl{constructor(S,D){this.property=S,this.value=D,this.expression=function(X,ie){if(za(X))return new Lo(X,ie);if(Qs(X)){let ve=Do(X,ie);if(ve.result==="error")throw new Error(ve.value.map(we=>`${we.key}: ${we.message}`).join(", "));return ve.value}{let ve=X;return ie.type==="color"&&typeof X=="string"?ve=Wt.parse(X):ie.type!=="padding"||typeof X!="number"&&!Array.isArray(X)?ie.type==="variableAnchorOffsetCollection"&&Array.isArray(X)&&(ve=jr.parse(X)):ve=Or.parse(X),{kind:"constant",evaluate:()=>ve}}}(D===void 0?S.specification.default:D,S.specification)}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite"}possiblyEvaluate(S,D,X){return this.property.possiblyEvaluate(this,S,D,X)}}class ll{constructor(S){this.property=S,this.value=new sl(S,void 0)}transitioned(S,D){return new zl(this.property,this.value,D,L({},S.transition,this.transition),S.now)}untransitioned(){return new zl(this.property,this.value,null,{},0)}}class il{constructor(S){this._properties=S,this._values=Object.create(S.defaultTransitionablePropertyValues)}getValue(S){return m(this._values[S].value.value)}setValue(S,D){Object.prototype.hasOwnProperty.call(this._values,S)||(this._values[S]=new ll(this._values[S].property)),this._values[S].value=new sl(this._values[S].property,D===null?void 0:m(D))}getTransition(S){return m(this._values[S].transition)}setTransition(S,D){Object.prototype.hasOwnProperty.call(this._values,S)||(this._values[S]=new ll(this._values[S].property)),this._values[S].transition=m(D)||void 0}serialize(){let S={};for(let D of Object.keys(this._values)){let X=this.getValue(D);X!==void 0&&(S[D]=X);let ie=this.getTransition(D);ie!==void 0&&(S[`${D}-transition`]=ie)}return S}transitioned(S,D){let X=new Ml(this._properties);for(let ie of Object.keys(this._values))X._values[ie]=this._values[ie].transitioned(S,D._values[ie]);return X}untransitioned(){let S=new Ml(this._properties);for(let D of Object.keys(this._values))S._values[D]=this._values[D].untransitioned();return S}}class zl{constructor(S,D,X,ie,ve){this.property=S,this.value=D,this.begin=ve+ie.delay||0,this.end=this.begin+ie.duration||0,S.specification.transition&&(ie.delay||ie.duration)&&(this.prior=X)}possiblyEvaluate(S,D,X){let ie=S.now||0,ve=this.value.possiblyEvaluate(S,D,X),we=this.prior;if(we){if(ie>this.end)return this.prior=null,ve;if(this.value.isDataDriven())return this.prior=null,ve;if(ie=1)return 1;let Mt=ut*ut,$t=Mt*ut;return 4*(ut<.5?$t:3*(ut-Mt)+$t-.75)}(We))}}return ve}}class Ml{constructor(S){this._properties=S,this._values=Object.create(S.defaultTransitioningPropertyValues)}possiblyEvaluate(S,D,X){let ie=new Ll(this._properties);for(let ve of Object.keys(this._values))ie._values[ve]=this._values[ve].possiblyEvaluate(S,D,X);return ie}hasTransition(){for(let S of Object.keys(this._values))if(this._values[S].prior)return!0;return!1}}class Rl{constructor(S){this._properties=S,this._values=Object.create(S.defaultPropertyValues)}hasValue(S){return this._values[S].value!==void 0}getValue(S){return m(this._values[S].value)}setValue(S,D){this._values[S]=new sl(this._values[S].property,D===null?void 0:m(D))}serialize(){let S={};for(let D of Object.keys(this._values)){let X=this.getValue(D);X!==void 0&&(S[D]=X)}return S}possiblyEvaluate(S,D,X){let ie=new Ll(this._properties);for(let ve of Object.keys(this._values))ie._values[ve]=this._values[ve].possiblyEvaluate(S,D,X);return ie}}class Tl{constructor(S,D,X){this.property=S,this.value=D,this.parameters=X}isConstant(){return this.value.kind==="constant"}constantOr(S){return this.value.kind==="constant"?this.value.value:S}evaluate(S,D,X,ie){return this.property.evaluate(this.value,this.parameters,S,D,X,ie)}}class Ll{constructor(S){this._properties=S,this._values=Object.create(S.defaultPossiblyEvaluatedValues)}get(S){return this._values[S]}}class ms{constructor(S){this.specification=S}possiblyEvaluate(S,D){if(S.isDataDriven())throw new Error("Value should not be data driven");return S.expression.evaluate(D)}interpolate(S,D,X){let ie=ka[this.specification.type];return ie?ie(S,D,X):S}}class Os{constructor(S,D){this.specification=S,this.overrides=D}possiblyEvaluate(S,D,X,ie){return new Tl(this,S.expression.kind==="constant"||S.expression.kind==="camera"?{kind:"constant",value:S.expression.evaluate(D,null,{},X,ie)}:S.expression,D)}interpolate(S,D,X){if(S.value.kind!=="constant"||D.value.kind!=="constant")return S;if(S.value.value===void 0||D.value.value===void 0)return new Tl(this,{kind:"constant",value:void 0},S.parameters);let ie=ka[this.specification.type];if(ie){let ve=ie(S.value.value,D.value.value,X);return new Tl(this,{kind:"constant",value:ve},S.parameters)}return S}evaluate(S,D,X,ie,ve,we){return S.kind==="constant"?S.value:S.evaluate(D,X,ie,ve,we)}}class Xl extends Os{possiblyEvaluate(S,D,X,ie){if(S.value===void 0)return new Tl(this,{kind:"constant",value:void 0},D);if(S.expression.kind==="constant"){let ve=S.expression.evaluate(D,null,{},X,ie),we=S.property.specification.type==="resolvedImage"&&typeof ve!="string"?ve.name:ve,We=this._calculate(we,we,we,D);return new Tl(this,{kind:"constant",value:We},D)}if(S.expression.kind==="camera"){let ve=this._calculate(S.expression.evaluate({zoom:D.zoom-1}),S.expression.evaluate({zoom:D.zoom}),S.expression.evaluate({zoom:D.zoom+1}),D);return new Tl(this,{kind:"constant",value:ve},D)}return new Tl(this,S.expression,D)}evaluate(S,D,X,ie,ve,we){if(S.kind==="source"){let We=S.evaluate(D,X,ie,ve,we);return this._calculate(We,We,We,D)}return S.kind==="composite"?this._calculate(S.evaluate({zoom:Math.floor(D.zoom)-1},X,ie),S.evaluate({zoom:Math.floor(D.zoom)},X,ie),S.evaluate({zoom:Math.floor(D.zoom)+1},X,ie),D):S.value}_calculate(S,D,X,ie){return ie.zoom>ie.zoomHistory.lastIntegerZoom?{from:S,to:D}:{from:X,to:D}}interpolate(S){return S}}class Vl{constructor(S){this.specification=S}possiblyEvaluate(S,D,X,ie){if(S.value!==void 0){if(S.expression.kind==="constant"){let ve=S.expression.evaluate(D,null,{},X,ie);return this._calculate(ve,ve,ve,D)}return this._calculate(S.expression.evaluate(new cs(Math.floor(D.zoom-1),D)),S.expression.evaluate(new cs(Math.floor(D.zoom),D)),S.expression.evaluate(new cs(Math.floor(D.zoom+1),D)),D)}}_calculate(S,D,X,ie){return ie.zoom>ie.zoomHistory.lastIntegerZoom?{from:S,to:D}:{from:X,to:D}}interpolate(S){return S}}class Nl{constructor(S){this.specification=S}possiblyEvaluate(S,D,X,ie){return!!S.expression.evaluate(D,null,{},X,ie)}interpolate(){return!1}}class le{constructor(S){this.properties=S,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(let D in S){let X=S[D];X.specification.overridable&&this.overridableProperties.push(D);let ie=this.defaultPropertyValues[D]=new sl(X,void 0),ve=this.defaultTransitionablePropertyValues[D]=new ll(X);this.defaultTransitioningPropertyValues[D]=ve.untransitioned(),this.defaultPossiblyEvaluatedValues[D]=ie.possiblyEvaluate({})}}}Mi("DataDrivenProperty",Os),Mi("DataConstantProperty",ms),Mi("CrossFadedDataDrivenProperty",Xl),Mi("CrossFadedProperty",Vl),Mi("ColorRampProperty",Nl);let w="-transition";class q extends qe{constructor(S,D){if(super(),this.id=S.id,this.type=S.type,this._featureFilter={filter:()=>!0,needGeometry:!1},S.type!=="custom"&&(this.metadata=S.metadata,this.minzoom=S.minzoom,this.maxzoom=S.maxzoom,S.type!=="background"&&(this.source=S.source,this.sourceLayer=S["source-layer"],this.filter=S.filter),D.layout&&(this._unevaluatedLayout=new Rl(D.layout)),D.paint)){this._transitionablePaint=new il(D.paint);for(let X in S.paint)this.setPaintProperty(X,S.paint[X],{validate:!1});for(let X in S.layout)this.setLayoutProperty(X,S.layout[X],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Ll(D.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(S){return S==="visibility"?this.visibility:this._unevaluatedLayout.getValue(S)}setLayoutProperty(S,D,X={}){D!=null&&this._validate(Fn,`layers.${this.id}.layout.${S}`,S,D,X)||(S!=="visibility"?this._unevaluatedLayout.setValue(S,D):this.visibility=D)}getPaintProperty(S){return S.endsWith(w)?this._transitionablePaint.getTransition(S.slice(0,-11)):this._transitionablePaint.getValue(S)}setPaintProperty(S,D,X={}){if(D!=null&&this._validate(Ki,`layers.${this.id}.paint.${S}`,S,D,X))return!1;if(S.endsWith(w))return this._transitionablePaint.setTransition(S.slice(0,-11),D||void 0),!1;{let ie=this._transitionablePaint._values[S],ve=ie.property.specification["property-type"]==="cross-faded-data-driven",we=ie.value.isDataDriven(),We=ie.value;this._transitionablePaint.setValue(S,D),this._handleSpecialPaintPropertyUpdate(S);let ut=this._transitionablePaint._values[S].value;return ut.isDataDriven()||we||ve||this._handleOverridablePaintPropertyUpdate(S,We,ut)}}_handleSpecialPaintPropertyUpdate(S){}_handleOverridablePaintPropertyUpdate(S,D,X){return!1}isHidden(S){return!!(this.minzoom&&S=this.maxzoom)||this.visibility==="none"}updateTransitions(S){this._transitioningPaint=this._transitionablePaint.transitioned(S,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(S,D){S.getCrossfadeParameters&&(this._crossfadeParameters=S.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(S,void 0,D)),this.paint=this._transitioningPaint.possiblyEvaluate(S,void 0,D)}serialize(){let S={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(S.layout=S.layout||{},S.layout.visibility=this.visibility),M(S,(D,X)=>!(D===void 0||X==="layout"&&!Object.keys(D).length||X==="paint"&&!Object.keys(D).length))}_validate(S,D,X,ie,ve={}){return(!ve||ve.validate!==!1)&&Pi(this,S.call(_i,{key:D,layerType:this.type,objectKey:X,value:ie,styleSpec:ce,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(let S in this.paint._values){let D=this.paint.get(S);if(D instanceof Tl&&ln(D.property.specification)&&(D.value.kind==="source"||D.value.kind==="composite")&&D.value.isStateDependent)return!0}return!1}}let Q={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class ee{constructor(S,D){this._structArray=S,this._pos1=D*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class ue{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(S,D){return S._trim(),D&&(S.isTransferred=!0,D.push(S.arrayBuffer)),{length:S.length,arrayBuffer:S.arrayBuffer}}static deserialize(S){let D=Object.create(this.prototype);return D.arrayBuffer=S.arrayBuffer,D.length=S.length,D.capacity=S.arrayBuffer.byteLength/D.bytesPerElement,D._refreshViews(),D}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(S){this.reserve(S),this.length=S}reserve(S){if(S>this.capacity){this.capacity=Math.max(S,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);let D=this.uint8;this._refreshViews(),D&&this.uint8.set(D)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function Ve(I,S=1){let D=0,X=0;return{members:I.map(ie=>{let ve=Q[ie.type].BYTES_PER_ELEMENT,we=D=tt(D,Math.max(S,ve)),We=ie.components||1;return X=Math.max(X,ve),D+=ve*We,{name:ie.name,type:ie.type,components:We,offset:we}}),size:tt(D,Math.max(X,S)),alignment:S}}function tt(I,S){return Math.ceil(I/S)*S}class mt extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D){let X=this.length;return this.resize(X+1),this.emplace(X,S,D)}emplace(S,D,X){let ie=2*S;return this.int16[ie+0]=D,this.int16[ie+1]=X,S}}mt.prototype.bytesPerElement=4,Mi("StructArrayLayout2i4",mt);class Bt extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,X){let ie=this.length;return this.resize(ie+1),this.emplace(ie,S,D,X)}emplace(S,D,X,ie){let ve=3*S;return this.int16[ve+0]=D,this.int16[ve+1]=X,this.int16[ve+2]=ie,S}}Bt.prototype.bytesPerElement=6,Mi("StructArrayLayout3i6",Bt);class ir extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie){let ve=this.length;return this.resize(ve+1),this.emplace(ve,S,D,X,ie)}emplace(S,D,X,ie,ve){let we=4*S;return this.int16[we+0]=D,this.int16[we+1]=X,this.int16[we+2]=ie,this.int16[we+3]=ve,S}}ir.prototype.bytesPerElement=8,Mi("StructArrayLayout4i8",ir);class or extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we){let We=this.length;return this.resize(We+1),this.emplace(We,S,D,X,ie,ve,we)}emplace(S,D,X,ie,ve,we,We){let ut=6*S;return this.int16[ut+0]=D,this.int16[ut+1]=X,this.int16[ut+2]=ie,this.int16[ut+3]=ve,this.int16[ut+4]=we,this.int16[ut+5]=We,S}}or.prototype.bytesPerElement=12,Mi("StructArrayLayout2i4i12",or);class kr extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we){let We=this.length;return this.resize(We+1),this.emplace(We,S,D,X,ie,ve,we)}emplace(S,D,X,ie,ve,we,We){let ut=4*S,Mt=8*S;return this.int16[ut+0]=D,this.int16[ut+1]=X,this.uint8[Mt+4]=ie,this.uint8[Mt+5]=ve,this.uint8[Mt+6]=we,this.uint8[Mt+7]=We,S}}kr.prototype.bytesPerElement=8,Mi("StructArrayLayout2i4ub8",kr);class Vr extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D){let X=this.length;return this.resize(X+1),this.emplace(X,S,D)}emplace(S,D,X){let ie=2*S;return this.float32[ie+0]=D,this.float32[ie+1]=X,S}}Vr.prototype.bytesPerElement=8,Mi("StructArrayLayout2f8",Vr);class he extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we,We,ut,Mt,$t){let vr=this.length;return this.resize(vr+1),this.emplace(vr,S,D,X,ie,ve,we,We,ut,Mt,$t)}emplace(S,D,X,ie,ve,we,We,ut,Mt,$t,vr){let Sr=10*S;return this.uint16[Sr+0]=D,this.uint16[Sr+1]=X,this.uint16[Sr+2]=ie,this.uint16[Sr+3]=ve,this.uint16[Sr+4]=we,this.uint16[Sr+5]=We,this.uint16[Sr+6]=ut,this.uint16[Sr+7]=Mt,this.uint16[Sr+8]=$t,this.uint16[Sr+9]=vr,S}}he.prototype.bytesPerElement=20,Mi("StructArrayLayout10ui20",he);class Se extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr){let Dr=this.length;return this.resize(Dr+1),this.emplace(Dr,S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr)}emplace(S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr){let Jr=12*S;return this.int16[Jr+0]=D,this.int16[Jr+1]=X,this.int16[Jr+2]=ie,this.int16[Jr+3]=ve,this.uint16[Jr+4]=we,this.uint16[Jr+5]=We,this.uint16[Jr+6]=ut,this.uint16[Jr+7]=Mt,this.int16[Jr+8]=$t,this.int16[Jr+9]=vr,this.int16[Jr+10]=Sr,this.int16[Jr+11]=Dr,S}}Se.prototype.bytesPerElement=24,Mi("StructArrayLayout4i4ui4i24",Se);class Ne extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,X){let ie=this.length;return this.resize(ie+1),this.emplace(ie,S,D,X)}emplace(S,D,X,ie){let ve=3*S;return this.float32[ve+0]=D,this.float32[ve+1]=X,this.float32[ve+2]=ie,S}}Ne.prototype.bytesPerElement=12,Mi("StructArrayLayout3f12",Ne);class Ge extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(S){let D=this.length;return this.resize(D+1),this.emplace(D,S)}emplace(S,D){return this.uint32[1*S+0]=D,S}}Ge.prototype.bytesPerElement=4,Mi("StructArrayLayout1ul4",Ge);class lt extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we,We,ut,Mt){let $t=this.length;return this.resize($t+1),this.emplace($t,S,D,X,ie,ve,we,We,ut,Mt)}emplace(S,D,X,ie,ve,we,We,ut,Mt,$t){let vr=10*S,Sr=5*S;return this.int16[vr+0]=D,this.int16[vr+1]=X,this.int16[vr+2]=ie,this.int16[vr+3]=ve,this.int16[vr+4]=we,this.int16[vr+5]=We,this.uint32[Sr+3]=ut,this.uint16[vr+8]=Mt,this.uint16[vr+9]=$t,S}}lt.prototype.bytesPerElement=20,Mi("StructArrayLayout6i1ul2ui20",lt);class rt extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we){let We=this.length;return this.resize(We+1),this.emplace(We,S,D,X,ie,ve,we)}emplace(S,D,X,ie,ve,we,We){let ut=6*S;return this.int16[ut+0]=D,this.int16[ut+1]=X,this.int16[ut+2]=ie,this.int16[ut+3]=ve,this.int16[ut+4]=we,this.int16[ut+5]=We,S}}rt.prototype.bytesPerElement=12,Mi("StructArrayLayout2i2i2i12",rt);class pt extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve){let we=this.length;return this.resize(we+1),this.emplace(we,S,D,X,ie,ve)}emplace(S,D,X,ie,ve,we){let We=4*S,ut=8*S;return this.float32[We+0]=D,this.float32[We+1]=X,this.float32[We+2]=ie,this.int16[ut+6]=ve,this.int16[ut+7]=we,S}}pt.prototype.bytesPerElement=16,Mi("StructArrayLayout2f1f2i16",pt);class Ht extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we){let We=this.length;return this.resize(We+1),this.emplace(We,S,D,X,ie,ve,we)}emplace(S,D,X,ie,ve,we,We){let ut=16*S,Mt=4*S,$t=8*S;return this.uint8[ut+0]=D,this.uint8[ut+1]=X,this.float32[Mt+1]=ie,this.float32[Mt+2]=ve,this.int16[$t+6]=we,this.int16[$t+7]=We,S}}Ht.prototype.bytesPerElement=16,Mi("StructArrayLayout2ub2f2i16",Ht);class nr extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,X){let ie=this.length;return this.resize(ie+1),this.emplace(ie,S,D,X)}emplace(S,D,X,ie){let ve=3*S;return this.uint16[ve+0]=D,this.uint16[ve+1]=X,this.uint16[ve+2]=ie,S}}nr.prototype.bytesPerElement=6,Mi("StructArrayLayout3ui6",nr);class fr extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr,ui,Gi,cn){let Za=this.length;return this.resize(Za+1),this.emplace(Za,S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr,ui,Gi,cn)}emplace(S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr,ui,Gi,cn,Za){let Rn=24*S,La=12*S,So=48*S;return this.int16[Rn+0]=D,this.int16[Rn+1]=X,this.uint16[Rn+2]=ie,this.uint16[Rn+3]=ve,this.uint32[La+2]=we,this.uint32[La+3]=We,this.uint32[La+4]=ut,this.uint16[Rn+10]=Mt,this.uint16[Rn+11]=$t,this.uint16[Rn+12]=vr,this.float32[La+7]=Sr,this.float32[La+8]=Dr,this.uint8[So+36]=Jr,this.uint8[So+37]=ui,this.uint8[So+38]=Gi,this.uint32[La+10]=cn,this.int16[Rn+22]=Za,S}}fr.prototype.bytesPerElement=48,Mi("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",fr);class Tr extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr,ui,Gi,cn,Za,Rn,La,So,kl,mu,Iu,su,yl,Eu,bu){let _u=this.length;return this.resize(_u+1),this.emplace(_u,S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr,ui,Gi,cn,Za,Rn,La,So,kl,mu,Iu,su,yl,Eu,bu)}emplace(S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr,ui,Gi,cn,Za,Rn,La,So,kl,mu,Iu,su,yl,Eu,bu,_u){let Xs=32*S,Lu=16*S;return this.int16[Xs+0]=D,this.int16[Xs+1]=X,this.int16[Xs+2]=ie,this.int16[Xs+3]=ve,this.int16[Xs+4]=we,this.int16[Xs+5]=We,this.int16[Xs+6]=ut,this.int16[Xs+7]=Mt,this.uint16[Xs+8]=$t,this.uint16[Xs+9]=vr,this.uint16[Xs+10]=Sr,this.uint16[Xs+11]=Dr,this.uint16[Xs+12]=Jr,this.uint16[Xs+13]=ui,this.uint16[Xs+14]=Gi,this.uint16[Xs+15]=cn,this.uint16[Xs+16]=Za,this.uint16[Xs+17]=Rn,this.uint16[Xs+18]=La,this.uint16[Xs+19]=So,this.uint16[Xs+20]=kl,this.uint16[Xs+21]=mu,this.uint16[Xs+22]=Iu,this.uint32[Lu+12]=su,this.float32[Lu+13]=yl,this.float32[Lu+14]=Eu,this.uint16[Xs+30]=bu,this.uint16[Xs+31]=_u,S}}Tr.prototype.bytesPerElement=64,Mi("StructArrayLayout8i15ui1ul2f2ui64",Tr);class Ir extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S){let D=this.length;return this.resize(D+1),this.emplace(D,S)}emplace(S,D){return this.float32[1*S+0]=D,S}}Ir.prototype.bytesPerElement=4,Mi("StructArrayLayout1f4",Ir);class ri extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,X){let ie=this.length;return this.resize(ie+1),this.emplace(ie,S,D,X)}emplace(S,D,X,ie){let ve=3*S;return this.uint16[6*S+0]=D,this.float32[ve+1]=X,this.float32[ve+2]=ie,S}}ri.prototype.bytesPerElement=12,Mi("StructArrayLayout1ui2f12",ri);class li extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,X){let ie=this.length;return this.resize(ie+1),this.emplace(ie,S,D,X)}emplace(S,D,X,ie){let ve=4*S;return this.uint32[2*S+0]=D,this.uint16[ve+2]=X,this.uint16[ve+3]=ie,S}}li.prototype.bytesPerElement=8,Mi("StructArrayLayout1ul2ui8",li);class Ei extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D){let X=this.length;return this.resize(X+1),this.emplace(X,S,D)}emplace(S,D,X){let ie=2*S;return this.uint16[ie+0]=D,this.uint16[ie+1]=X,S}}Ei.prototype.bytesPerElement=4,Mi("StructArrayLayout2ui4",Ei);class hn extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S){let D=this.length;return this.resize(D+1),this.emplace(D,S)}emplace(S,D){return this.uint16[1*S+0]=D,S}}hn.prototype.bytesPerElement=2,Mi("StructArrayLayout1ui2",hn);class Zn extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,X,ie){let ve=this.length;return this.resize(ve+1),this.emplace(ve,S,D,X,ie)}emplace(S,D,X,ie,ve){let we=4*S;return this.float32[we+0]=D,this.float32[we+1]=X,this.float32[we+2]=ie,this.float32[we+3]=ve,S}}Zn.prototype.bytesPerElement=16,Mi("StructArrayLayout4f16",Zn);class Yn extends ee{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new l(this.anchorPointX,this.anchorPointY)}}Yn.prototype.size=20;class Ua extends lt{get(S){return new Yn(this,S)}}Mi("CollisionBoxArray",Ua);class Fo extends ee{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(S){this._structArray.uint8[this._pos1+37]=S}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(S){this._structArray.uint8[this._pos1+38]=S}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(S){this._structArray.uint32[this._pos4+10]=S}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}Fo.prototype.size=48;class vl extends fr{get(S){return new Fo(this,S)}}Mi("PlacedSymbolArray",vl);class Us extends ee{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(S){this._structArray.uint32[this._pos4+12]=S}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14]}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30]}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31]}}Us.prototype.size=64;class ml extends Tr{get(S){return new Us(this,S)}}Mi("SymbolInstanceArray",ml);class au extends Ir{getoffsetX(S){return this.float32[1*S+0]}}Mi("GlyphOffsetArray",au);class Sl extends Bt{getx(S){return this.int16[3*S+0]}gety(S){return this.int16[3*S+1]}gettileUnitDistanceFromAnchor(S){return this.int16[3*S+2]}}Mi("SymbolLineVertexArray",Sl);class Yl extends ee{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}Yl.prototype.size=12;class Ol extends ri{get(S){return new Yl(this,S)}}Mi("TextAnchorOffsetArray",Ol);class ou extends ee{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}ou.prototype.size=8;class Pu extends li{get(S){return new ou(this,S)}}Mi("FeatureIndexArray",Pu);class iu extends mt{}class tu extends mt{}class Hu extends mt{}class $u extends or{}class Ku extends kr{}class Wu extends Vr{}class ju extends he{}class sf extends Se{}class _f extends Ne{}class Qu extends Ge{}class ef extends rt{}class Z extends Ht{}class se extends nr{}class Pe extends Ei{}let Xe=Ve([{name:"a_pos",components:2,type:"Int16"}],4),{members:Qe}=Xe;class st{constructor(S=[]){this.segments=S}prepareSegment(S,D,X,ie){let ve=this.segments[this.segments.length-1];return S>st.MAX_VERTEX_ARRAY_LENGTH&&T(`Max vertices per segment is ${st.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${S}`),(!ve||ve.vertexLength+S>st.MAX_VERTEX_ARRAY_LENGTH||ve.sortKey!==ie)&&(ve={vertexOffset:D.length,primitiveOffset:X.length,vertexLength:0,primitiveLength:0},ie!==void 0&&(ve.sortKey=ie),this.segments.push(ve)),ve}get(){return this.segments}destroy(){for(let S of this.segments)for(let D in S.vaos)S.vaos[D].destroy()}static simpleSegment(S,D,X,ie){return new st([{vertexOffset:S,primitiveOffset:D,vertexLength:X,primitiveLength:ie,vaos:{},sortKey:0}])}}function jt(I,S){return 256*(I=E(Math.floor(I),0,255))+E(Math.floor(S),0,255)}st.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Mi("SegmentVector",st);let _t=Ve([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var hr={exports:{}},Cr={exports:{}};Cr.exports=function(I,S){var D,X,ie,ve,we,We,ut,Mt;for(X=I.length-(D=3&I.length),ie=S,we=3432918353,We=461845907,Mt=0;Mt>>16)*we&65535)<<16)&4294967295)<<15|ut>>>17))*We+(((ut>>>16)*We&65535)<<16)&4294967295)<<13|ie>>>19))+((5*(ie>>>16)&65535)<<16)&4294967295))+((58964+(ve>>>16)&65535)<<16);switch(ut=0,D){case 3:ut^=(255&I.charCodeAt(Mt+2))<<16;case 2:ut^=(255&I.charCodeAt(Mt+1))<<8;case 1:ie^=ut=(65535&(ut=(ut=(65535&(ut^=255&I.charCodeAt(Mt)))*we+(((ut>>>16)*we&65535)<<16)&4294967295)<<15|ut>>>17))*We+(((ut>>>16)*We&65535)<<16)&4294967295}return ie^=I.length,ie=2246822507*(65535&(ie^=ie>>>16))+((2246822507*(ie>>>16)&65535)<<16)&4294967295,ie=3266489909*(65535&(ie^=ie>>>13))+((3266489909*(ie>>>16)&65535)<<16)&4294967295,(ie^=ie>>>16)>>>0};var zr=Cr.exports,fi={exports:{}};fi.exports=function(I,S){for(var D,X=I.length,ie=S^X,ve=0;X>=4;)D=1540483477*(65535&(D=255&I.charCodeAt(ve)|(255&I.charCodeAt(++ve))<<8|(255&I.charCodeAt(++ve))<<16|(255&I.charCodeAt(++ve))<<24))+((1540483477*(D>>>16)&65535)<<16),ie=1540483477*(65535&ie)+((1540483477*(ie>>>16)&65535)<<16)^(D=1540483477*(65535&(D^=D>>>24))+((1540483477*(D>>>16)&65535)<<16)),X-=4,++ve;switch(X){case 3:ie^=(255&I.charCodeAt(ve+2))<<16;case 2:ie^=(255&I.charCodeAt(ve+1))<<8;case 1:ie=1540483477*(65535&(ie^=255&I.charCodeAt(ve)))+((1540483477*(ie>>>16)&65535)<<16)}return ie=1540483477*(65535&(ie^=ie>>>13))+((1540483477*(ie>>>16)&65535)<<16),(ie^=ie>>>15)>>>0};var $r=zr,Bi=fi.exports;hr.exports=$r,hr.exports.murmur3=$r,hr.exports.murmur2=Bi;var fn=o(hr.exports);class mi{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(S,D,X,ie){this.ids.push(zi(S)),this.positions.push(D,X,ie)}getPositions(S){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");let D=zi(S),X=0,ie=this.ids.length-1;for(;X>1;this.ids[we]>=D?ie=we:X=we+1}let ve=[];for(;this.ids[X]===D;)ve.push({index:this.positions[3*X],start:this.positions[3*X+1],end:this.positions[3*X+2]}),X++;return ve}static serialize(S,D){let X=new Float64Array(S.ids),ie=new Uint32Array(S.positions);return ji(X,ie,0,X.length-1),D&&D.push(X.buffer,ie.buffer),{ids:X,positions:ie}}static deserialize(S){let D=new mi;return D.ids=S.ids,D.positions=S.positions,D.indexed=!0,D}}function zi(I){let S=+I;return!isNaN(S)&&S<=Number.MAX_SAFE_INTEGER?S:fn(String(I))}function ji(I,S,D,X){for(;D>1],ve=D-1,we=X+1;for(;;){do ve++;while(I[ve]ie);if(ve>=we)break;pn(I,ve,we),pn(S,3*ve,3*we),pn(S,3*ve+1,3*we+1),pn(S,3*ve+2,3*we+2)}we-D`u_${ie}`),this.type=X}setUniform(S,D,X){S.set(X.constantOr(this.value))}getBinding(S,D,X){return this.type==="color"?new no(S,D):new wi(S,D)}}class Pl{constructor(S,D){this.uniformNames=D.map(X=>`u_${X}`),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(S,D){this.pixelRatioFrom=D.pixelRatio,this.pixelRatioTo=S.pixelRatio,this.patternFrom=D.tlbr,this.patternTo=S.tlbr}setUniform(S,D,X,ie){let ve=ie==="u_pattern_to"?this.patternTo:ie==="u_pattern_from"?this.patternFrom:ie==="u_pixel_ratio_to"?this.pixelRatioTo:ie==="u_pixel_ratio_from"?this.pixelRatioFrom:null;ve&&S.set(ve)}getBinding(S,D,X){return X.substr(0,9)==="u_pattern"?new xo(S,D):new wi(S,D)}}class pu{constructor(S,D,X,ie){this.expression=S,this.type=X,this.maxValue=0,this.paintVertexAttributes=D.map(ve=>({name:`a_${ve}`,type:"Float32",components:X==="color"?2:1,offset:0})),this.paintVertexArray=new ie}populatePaintArray(S,D,X,ie,ve){let we=this.paintVertexArray.length,We=this.expression.evaluate(new cs(0),D,{},ie,[],ve);this.paintVertexArray.resize(S),this._setPaintValue(we,S,We)}updatePaintArray(S,D,X,ie){let ve=this.expression.evaluate({zoom:0},X,ie);this._setPaintValue(S,D,ve)}_setPaintValue(S,D,X){if(this.type==="color"){let ie=js(X);for(let ve=S;ve`u_${We}_t`),this.type=X,this.useIntegerZoom=ie,this.zoom=ve,this.maxValue=0,this.paintVertexAttributes=D.map(We=>({name:`a_${We}`,type:"Float32",components:X==="color"?4:2,offset:0})),this.paintVertexArray=new we}populatePaintArray(S,D,X,ie,ve){let we=this.expression.evaluate(new cs(this.zoom),D,{},ie,[],ve),We=this.expression.evaluate(new cs(this.zoom+1),D,{},ie,[],ve),ut=this.paintVertexArray.length;this.paintVertexArray.resize(S),this._setPaintValue(ut,S,we,We)}updatePaintArray(S,D,X,ie){let ve=this.expression.evaluate({zoom:this.zoom},X,ie),we=this.expression.evaluate({zoom:this.zoom+1},X,ie);this._setPaintValue(S,D,ve,we)}_setPaintValue(S,D,X,ie){if(this.type==="color"){let ve=js(X),we=js(ie);for(let We=S;We`#define HAS_UNIFORM_${ie}`))}return S}getBinderAttributes(){let S=[];for(let D in this.binders){let X=this.binders[D];if(X instanceof pu||X instanceof Il)for(let ie=0;ie!0){this.programConfigurations={};for(let ie of S)this.programConfigurations[ie.id]=new Xu(ie,D,X);this.needsUpload=!1,this._featureMap=new mi,this._bufferOffset=0}populatePaintArrays(S,D,X,ie,ve,we){for(let We in this.programConfigurations)this.programConfigurations[We].populatePaintArrays(S,D,ie,ve,we);D.id!==void 0&&this._featureMap.add(D.id,X,this._bufferOffset,S),this._bufferOffset=S,this.needsUpload=!0}updatePaintArrays(S,D,X,ie){for(let ve of X)this.needsUpload=this.programConfigurations[ve.id].updatePaintArrays(S,this._featureMap,D,ve,ie)||this.needsUpload}get(S){return this.programConfigurations[S]}upload(S){if(this.needsUpload){for(let D in this.programConfigurations)this.programConfigurations[D].upload(S);this.needsUpload=!1}}destroy(){for(let S in this.programConfigurations)this.programConfigurations[S].destroy()}}function tf(I,S){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[I]||[I.replace(`${S}-`,"").replace(/-/g,"_")]}function ds(I,S,D){let X={color:{source:Vr,composite:Zn},number:{source:Ir,composite:Vr}},ie=function(ve){return{"line-pattern":{source:ju,composite:ju},"fill-pattern":{source:ju,composite:ju},"fill-extrusion-pattern":{source:ju,composite:ju}}[ve]}(I);return ie&&ie[D]||X[S][D]}Mi("ConstantBinder",El),Mi("CrossFadedConstantBinder",Pl),Mi("SourceExpressionBinder",pu),Mi("CrossFadedCompositeBinder",fu),Mi("CompositeExpressionBinder",Il),Mi("ProgramConfiguration",Xu,{omit:["_buffers"]}),Mi("ProgramConfigurationSet",Vu);let Wl=8192,Tu=Math.pow(2,14)-1,Au=-Tu-1;function lf(I){let S=Wl/I.extent,D=I.loadGeometry();for(let X=0;Xwe.x+1||utwe.y+1)&&T("Geometry exceeds allowed extent, reduce your vector tile buffer size")}}return D}function hf(I,S){return{type:I.type,id:I.id,properties:I.properties,geometry:S?lf(I):[]}}function Mf(I,S,D,X,ie){I.emplaceBack(2*S+(X+1)/2,2*D+(ie+1)/2)}class pf{constructor(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(D=>D.id),this.index=S.index,this.hasPattern=!1,this.layoutVertexArray=new tu,this.indexArray=new se,this.segments=new st,this.programConfigurations=new Vu(S.layers,S.zoom),this.stateDependentLayerIds=this.layers.filter(D=>D.isStateDependent()).map(D=>D.id)}populate(S,D,X){let ie=this.layers[0],ve=[],we=null,We=!1;ie.type==="circle"&&(we=ie.layout.get("circle-sort-key"),We=!we.isConstant());for(let{feature:ut,id:Mt,index:$t,sourceLayerIndex:vr}of S){let Sr=this.layers[0]._featureFilter.needGeometry,Dr=hf(ut,Sr);if(!this.layers[0]._featureFilter.filter(new cs(this.zoom),Dr,X))continue;let Jr=We?we.evaluate(Dr,{},X):void 0,ui={id:Mt,properties:ut.properties,type:ut.type,sourceLayerIndex:vr,index:$t,geometry:Sr?Dr.geometry:lf(ut),patterns:{},sortKey:Jr};ve.push(ui)}We&&ve.sort((ut,Mt)=>ut.sortKey-Mt.sortKey);for(let ut of ve){let{geometry:Mt,index:$t,sourceLayerIndex:vr}=ut,Sr=S[$t].feature;this.addFeature(ut,Mt,$t,X),D.featureIndex.insert(Sr,Mt,$t,vr,this.index)}}update(S,D,X){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,D,this.stateDependentLayers,X)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,Qe),this.indexBuffer=S.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(S),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(S,D,X,ie){for(let ve of D)for(let we of ve){let We=we.x,ut=we.y;if(We<0||We>=Wl||ut<0||ut>=Wl)continue;let Mt=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,S.sortKey),$t=Mt.vertexLength;Mf(this.layoutVertexArray,We,ut,-1,-1),Mf(this.layoutVertexArray,We,ut,1,-1),Mf(this.layoutVertexArray,We,ut,1,1),Mf(this.layoutVertexArray,We,ut,-1,1),this.indexArray.emplaceBack($t,$t+1,$t+2),this.indexArray.emplaceBack($t,$t+3,$t+2),Mt.vertexLength+=4,Mt.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,X,{},ie)}}function fc(I,S){for(let D=0;D1){if(Qr(I,S))return!0;for(let X=0;X1?D:D.sub(S)._mult(ie)._add(S))}function on(I,S){let D,X,ie,ve=!1;for(let we=0;weS.y!=ie.y>S.y&&S.x<(ie.x-X.x)*(S.y-X.y)/(ie.y-X.y)+X.x&&(ve=!ve)}return ve}function Bn(I,S){let D=!1;for(let X=0,ie=I.length-1;XS.y!=we.y>S.y&&S.x<(we.x-ve.x)*(S.y-ve.y)/(we.y-ve.y)+ve.x&&(D=!D)}return D}function Ln(I,S,D){let X=D[0],ie=D[2];if(I.xie.x&&S.x>ie.x||I.yie.y&&S.y>ie.y)return!1;let ve=B(I,S,D[0]);return ve!==B(I,S,D[1])||ve!==B(I,S,D[2])||ve!==B(I,S,D[3])}function wn(I,S,D){let X=S.paint.get(I).value;return X.kind==="constant"?X.value:D.programConfigurations.get(S.id).getMaxValue(I)}function Ls(I){return Math.sqrt(I[0]*I[0]+I[1]*I[1])}function ua(I,S,D,X,ie){if(!S[0]&&!S[1])return I;let ve=l.convert(S)._mult(ie);D==="viewport"&&ve._rotate(-X);let we=[];for(let We=0;WeUi(Gi,ui))}(Mt,ut),Dr=vr?$t*We:$t;for(let Jr of ie)for(let ui of Jr){let Gi=vr?ui:Ui(ui,ut),cn=Dr,Za=hs([],[ui.x,ui.y,0,1],ut);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?cn*=Za[3]/we.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(cn*=we.cameraToCenterDistance/Za[3]),Be(Sr,Gi,cn))return!0}return!1}}function Ui(I,S){let D=hs([],[I.x,I.y,0,1],S);return new l(D[0]/D[3],D[1]/D[3])}class ro extends pf{}let na;Mi("HeatmapBucket",ro,{omit:["layers"]});var On={get paint(){return na=na||new le({"heatmap-radius":new Os(ce.paint_heatmap["heatmap-radius"]),"heatmap-weight":new Os(ce.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new ms(ce.paint_heatmap["heatmap-intensity"]),"heatmap-color":new Nl(ce.paint_heatmap["heatmap-color"]),"heatmap-opacity":new ms(ce.paint_heatmap["heatmap-opacity"])})}};function In(I,{width:S,height:D},X,ie){if(ie){if(ie instanceof Uint8ClampedArray)ie=new Uint8Array(ie.buffer);else if(ie.length!==S*D*X)throw new RangeError(`mismatched image size. expected: ${ie.length} but got: ${S*D*X}`)}else ie=new Uint8Array(S*D*X);return I.width=S,I.height=D,I.data=ie,I}function Va(I,{width:S,height:D},X){if(S===I.width&&D===I.height)return;let ie=In({},{width:S,height:D},X);_s(I,ie,{x:0,y:0},{x:0,y:0},{width:Math.min(I.width,S),height:Math.min(I.height,D)},X),I.width=S,I.height=D,I.data=ie.data}function _s(I,S,D,X,ie,ve){if(ie.width===0||ie.height===0)return S;if(ie.width>I.width||ie.height>I.height||D.x>I.width-ie.width||D.y>I.height-ie.height)throw new RangeError("out of range source coordinates for image copy");if(ie.width>S.width||ie.height>S.height||X.x>S.width-ie.width||X.y>S.height-ie.height)throw new RangeError("out of range destination coordinates for image copy");let we=I.data,We=S.data;if(we===We)throw new Error("srcData equals dstData, so image is already copied");for(let ut=0;ut{S[I.evaluationKey]=ut;let Mt=I.expression.evaluate(S);ie.data[we+We+0]=Math.floor(255*Mt.r/Mt.a),ie.data[we+We+1]=Math.floor(255*Mt.g/Mt.a),ie.data[we+We+2]=Math.floor(255*Mt.b/Mt.a),ie.data[we+We+3]=Math.floor(255*Mt.a)};if(I.clips)for(let we=0,We=0;we80*D){We=1/0,ut=1/0;let $t=-1/0,vr=-1/0;for(let Sr=D;Sr$t&&($t=Dr),Jr>vr&&(vr=Jr)}Mt=Math.max($t-We,vr-ut),Mt=Mt!==0?32767/Mt:0}return Cf(ve,we,D,We,ut,Mt,0),we}function gf(I,S,D,X,ie){let ve;if(ie===function(we,We,ut,Mt){let $t=0;for(let vr=We,Sr=ut-Mt;vr0)for(let we=S;we=S;we-=X)ve=lr(we/X|0,I[we],I[we+1],ve);return ve&&ne(ve,ve.next)&&($e(ve),ve=ve.next),ve}function xf(I,S){if(!I)return I;S||(S=I);let D,X=I;do if(D=!1,X.steiner||!ne(X,X.next)&&_e(X.prev,X,X.next)!==0)X=X.next;else{if($e(X),X=S=X.prev,X===X.next)break;D=!0}while(D||X!==S);return S}function Cf(I,S,D,X,ie,ve,we){if(!I)return;!we&&ve&&function(ut,Mt,$t,vr){let Sr=ut;do Sr.z===0&&(Sr.z=R(Sr.x,Sr.y,Mt,$t,vr)),Sr.prevZ=Sr.prev,Sr.nextZ=Sr.next,Sr=Sr.next;while(Sr!==ut);Sr.prevZ.nextZ=null,Sr.prevZ=null,function(Dr){let Jr,ui=1;do{let Gi,cn=Dr;Dr=null;let Za=null;for(Jr=0;cn;){Jr++;let Rn=cn,La=0;for(let kl=0;kl0||So>0&&Rn;)La!==0&&(So===0||!Rn||cn.z<=Rn.z)?(Gi=cn,cn=cn.nextZ,La--):(Gi=Rn,Rn=Rn.nextZ,So--),Za?Za.nextZ=Gi:Dr=Gi,Gi.prevZ=Za,Za=Gi;cn=Rn}Za.nextZ=null,ui*=2}while(Jr>1)}(Sr)}(I,X,ie,ve);let We=I;for(;I.prev!==I.next;){let ut=I.prev,Mt=I.next;if(ve?cf(I,X,ie,ve):Gu(I))S.push(ut.i,I.i,Mt.i),$e(I),I=Mt.next,We=Mt.next;else if((I=Mt)===We){we?we===1?Cf(I=mf(xf(I),S),S,D,X,ie,ve,2):we===2&&Fl(I,S,D,X,ie,ve):Cf(xf(I),S,D,X,ie,ve,1);break}}}function Gu(I){let S=I.prev,D=I,X=I.next;if(_e(S,D,X)>=0)return!1;let ie=S.x,ve=D.x,we=X.x,We=S.y,ut=D.y,Mt=X.y,$t=ieve?ie>we?ie:we:ve>we?ve:we,Dr=We>ut?We>Mt?We:Mt:ut>Mt?ut:Mt,Jr=X.next;for(;Jr!==S;){if(Jr.x>=$t&&Jr.x<=Sr&&Jr.y>=vr&&Jr.y<=Dr&&O(ie,We,ve,ut,we,Mt,Jr.x,Jr.y)&&_e(Jr.prev,Jr,Jr.next)>=0)return!1;Jr=Jr.next}return!0}function cf(I,S,D,X){let ie=I.prev,ve=I,we=I.next;if(_e(ie,ve,we)>=0)return!1;let We=ie.x,ut=ve.x,Mt=we.x,$t=ie.y,vr=ve.y,Sr=we.y,Dr=Weut?We>Mt?We:Mt:ut>Mt?ut:Mt,Gi=$t>vr?$t>Sr?$t:Sr:vr>Sr?vr:Sr,cn=R(Dr,Jr,S,D,X),Za=R(ui,Gi,S,D,X),Rn=I.prevZ,La=I.nextZ;for(;Rn&&Rn.z>=cn&&La&&La.z<=Za;){if(Rn.x>=Dr&&Rn.x<=ui&&Rn.y>=Jr&&Rn.y<=Gi&&Rn!==ie&&Rn!==we&&O(We,$t,ut,vr,Mt,Sr,Rn.x,Rn.y)&&_e(Rn.prev,Rn,Rn.next)>=0||(Rn=Rn.prevZ,La.x>=Dr&&La.x<=ui&&La.y>=Jr&&La.y<=Gi&&La!==ie&&La!==we&&O(We,$t,ut,vr,Mt,Sr,La.x,La.y)&&_e(La.prev,La,La.next)>=0))return!1;La=La.nextZ}for(;Rn&&Rn.z>=cn;){if(Rn.x>=Dr&&Rn.x<=ui&&Rn.y>=Jr&&Rn.y<=Gi&&Rn!==ie&&Rn!==we&&O(We,$t,ut,vr,Mt,Sr,Rn.x,Rn.y)&&_e(Rn.prev,Rn,Rn.next)>=0)return!1;Rn=Rn.prevZ}for(;La&&La.z<=Za;){if(La.x>=Dr&&La.x<=ui&&La.y>=Jr&&La.y<=Gi&&La!==ie&&La!==we&&O(We,$t,ut,vr,Mt,Sr,La.x,La.y)&&_e(La.prev,La,La.next)>=0)return!1;La=La.nextZ}return!0}function mf(I,S){let D=I;do{let X=D.prev,ie=D.next.next;!ne(X,ie)&&Le(X,D,D.next,ie)&&dr(X,ie)&&dr(ie,X)&&(S.push(X.i,D.i,ie.i),$e(D),$e(D.next),D=I=ie),D=D.next}while(D!==I);return xf(D)}function Fl(I,S,D,X,ie,ve){let we=I;do{let We=we.next.next;for(;We!==we.prev;){if(we.i!==We.i&&K(we,We)){let ut=Mr(we,We);return we=xf(we,we.next),ut=xf(ut,ut.next),Cf(we,S,D,X,ie,ve,0),void Cf(ut,S,D,X,ie,ve,0)}We=We.next}we=we.next}while(we!==I)}function bf(I,S){return I.x-S.x}function cu(I,S){let D=function(ie,ve){let we=ve,We=ie.x,ut=ie.y,Mt,$t=-1/0;do{if(ut<=we.y&&ut>=we.next.y&&we.next.y!==we.y){let ui=we.x+(ut-we.y)*(we.next.x-we.x)/(we.next.y-we.y);if(ui<=We&&ui>$t&&($t=ui,Mt=we.x=we.x&&we.x>=Sr&&We!==we.x&&O(utMt.x||we.x===Mt.x&&Y(Mt,we)))&&(Mt=we,Jr=ui)}we=we.next}while(we!==vr);return Mt}(I,S);if(!D)return S;let X=Mr(D,I);return xf(X,X.next),xf(D,D.next)}function Y(I,S){return _e(I.prev,I,S.prev)<0&&_e(S.next,I,I.next)<0}function R(I,S,D,X,ie){return(I=1431655765&((I=858993459&((I=252645135&((I=16711935&((I=(I-D)*ie|0)|I<<8))|I<<4))|I<<2))|I<<1))|(S=1431655765&((S=858993459&((S=252645135&((S=16711935&((S=(S-X)*ie|0)|S<<8))|S<<4))|S<<2))|S<<1))<<1}function J(I){let S=I,D=I;do(S.x=(I-we)*(ve-We)&&(I-we)*(X-We)>=(D-we)*(S-We)&&(D-we)*(ve-We)>=(ie-we)*(X-We)}function K(I,S){return I.next.i!==S.i&&I.prev.i!==S.i&&!function(D,X){let ie=D;do{if(ie.i!==D.i&&ie.next.i!==D.i&&ie.i!==X.i&&ie.next.i!==X.i&&Le(ie,ie.next,D,X))return!0;ie=ie.next}while(ie!==D);return!1}(I,S)&&(dr(I,S)&&dr(S,I)&&function(D,X){let ie=D,ve=!1,we=(D.x+X.x)/2,We=(D.y+X.y)/2;do ie.y>We!=ie.next.y>We&&ie.next.y!==ie.y&&we<(ie.next.x-ie.x)*(We-ie.y)/(ie.next.y-ie.y)+ie.x&&(ve=!ve),ie=ie.next;while(ie!==D);return ve}(I,S)&&(_e(I.prev,I,S.prev)||_e(I,S.prev,S))||ne(I,S)&&_e(I.prev,I,I.next)>0&&_e(S.prev,S,S.next)>0)}function _e(I,S,D){return(S.y-I.y)*(D.x-S.x)-(S.x-I.x)*(D.y-S.y)}function ne(I,S){return I.x===S.x&&I.y===S.y}function Le(I,S,D,X){let ie=kt(_e(I,S,D)),ve=kt(_e(I,S,X)),we=kt(_e(D,X,I)),We=kt(_e(D,X,S));return ie!==ve&&we!==We||!(ie!==0||!Ze(I,D,S))||!(ve!==0||!Ze(I,X,S))||!(we!==0||!Ze(D,I,X))||!(We!==0||!Ze(D,S,X))}function Ze(I,S,D){return S.x<=Math.max(I.x,D.x)&&S.x>=Math.min(I.x,D.x)&&S.y<=Math.max(I.y,D.y)&&S.y>=Math.min(I.y,D.y)}function kt(I){return I>0?1:I<0?-1:0}function dr(I,S){return _e(I.prev,I,I.next)<0?_e(I,S,I.next)>=0&&_e(I,I.prev,S)>=0:_e(I,S,I.prev)<0||_e(I,I.next,S)<0}function Mr(I,S){let D=ht(I.i,I.x,I.y),X=ht(S.i,S.x,S.y),ie=I.next,ve=S.prev;return I.next=S,S.prev=I,D.next=ie,ie.prev=D,X.next=D,D.prev=X,ve.next=X,X.prev=ve,X}function lr(I,S,D,X){let ie=ht(I,S,D);return X?(ie.next=X.next,ie.prev=X,X.next.prev=ie,X.next=ie):(ie.prev=ie,ie.next=ie),ie}function $e(I){I.next.prev=I.prev,I.prev.next=I.next,I.prevZ&&(I.prevZ.nextZ=I.nextZ),I.nextZ&&(I.nextZ.prevZ=I.prevZ)}function ht(I,S,D){return{i:I,x:S,y:D,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function bt(I,S,D){let X=D.patternDependencies,ie=!1;for(let ve of S){let we=ve.paint.get(`${I}-pattern`);we.isConstant()||(ie=!0);let We=we.constantOr(null);We&&(ie=!0,X[We.to]=!0,X[We.from]=!0)}return ie}function Kt(I,S,D,X,ie){let ve=ie.patternDependencies;for(let we of S){let We=we.paint.get(`${I}-pattern`).value;if(We.kind!=="constant"){let ut=We.evaluate({zoom:X-1},D,{},ie.availableImages),Mt=We.evaluate({zoom:X},D,{},ie.availableImages),$t=We.evaluate({zoom:X+1},D,{},ie.availableImages);ut=ut&&ut.name?ut.name:ut,Mt=Mt&&Mt.name?Mt.name:Mt,$t=$t&&$t.name?$t.name:$t,ve[ut]=!0,ve[Mt]=!0,ve[$t]=!0,D.patterns[we.id]={min:ut,mid:Mt,max:$t}}}return D}class sr{constructor(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(D=>D.id),this.index=S.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Hu,this.indexArray=new se,this.indexArray2=new Pe,this.programConfigurations=new Vu(S.layers,S.zoom),this.segments=new st,this.segments2=new st,this.stateDependentLayerIds=this.layers.filter(D=>D.isStateDependent()).map(D=>D.id)}populate(S,D,X){this.hasPattern=bt("fill",this.layers,D);let ie=this.layers[0].layout.get("fill-sort-key"),ve=!ie.isConstant(),we=[];for(let{feature:We,id:ut,index:Mt,sourceLayerIndex:$t}of S){let vr=this.layers[0]._featureFilter.needGeometry,Sr=hf(We,vr);if(!this.layers[0]._featureFilter.filter(new cs(this.zoom),Sr,X))continue;let Dr=ve?ie.evaluate(Sr,{},X,D.availableImages):void 0,Jr={id:ut,properties:We.properties,type:We.type,sourceLayerIndex:$t,index:Mt,geometry:vr?Sr.geometry:lf(We),patterns:{},sortKey:Dr};we.push(Jr)}ve&&we.sort((We,ut)=>We.sortKey-ut.sortKey);for(let We of we){let{geometry:ut,index:Mt,sourceLayerIndex:$t}=We;if(this.hasPattern){let vr=Kt("fill",this.layers,We,this.zoom,D);this.patternFeatures.push(vr)}else this.addFeature(We,ut,Mt,X,{});D.featureIndex.insert(S[Mt].feature,ut,Mt,$t,this.index)}}update(S,D,X){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,D,this.stateDependentLayers,X)}addFeatures(S,D,X){for(let ie of this.patternFeatures)this.addFeature(ie,ie.geometry,ie.index,D,X)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,Ef),this.indexBuffer=S.createIndexBuffer(this.indexArray),this.indexBuffer2=S.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(S),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(S,D,X,ie,ve){for(let we of Ys(D,500)){let We=0;for(let Dr of we)We+=Dr.length;let ut=this.segments.prepareSegment(We,this.layoutVertexArray,this.indexArray),Mt=ut.vertexLength,$t=[],vr=[];for(let Dr of we){if(Dr.length===0)continue;Dr!==we[0]&&vr.push($t.length/2);let Jr=this.segments2.prepareSegment(Dr.length,this.layoutVertexArray,this.indexArray2),ui=Jr.vertexLength;this.layoutVertexArray.emplaceBack(Dr[0].x,Dr[0].y),this.indexArray2.emplaceBack(ui+Dr.length-1,ui),$t.push(Dr[0].x),$t.push(Dr[0].y);for(let Gi=1;Gi>3}if(ie--,X===1||X===2)ve+=I.readSVarint(),we+=I.readSVarint(),X===1&&(S&&We.push(S),S=[]),S.push(new hi(ve,we));else{if(X!==7)throw new Error("unknown command "+X);S&&S.push(S[0].clone())}}return S&&We.push(S),We},Yi.prototype.bbox=function(){var I=this._pbf;I.pos=this._geometry;for(var S=I.readVarint()+I.pos,D=1,X=0,ie=0,ve=0,we=1/0,We=-1/0,ut=1/0,Mt=-1/0;I.pos>3}if(X--,D===1||D===2)(ie+=I.readSVarint())We&&(We=ie),(ve+=I.readSVarint())Mt&&(Mt=ve);else if(D!==7)throw new Error("unknown command "+D)}return[we,ut,We,Mt]},Yi.prototype.toGeoJSON=function(I,S,D){var X,ie,ve=this.extent*Math.pow(2,D),we=this.extent*I,We=this.extent*S,ut=this.loadGeometry(),Mt=Yi.types[this.type];function $t(Dr){for(var Jr=0;Jr>3;ie=we===1?X.readString():we===2?X.readFloat():we===3?X.readDouble():we===4?X.readVarint64():we===5?X.readVarint():we===6?X.readSVarint():we===7?X.readBoolean():null}return ie}(D))}Pn.prototype.feature=function(I){if(I<0||I>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[I];var S=this._pbf.readVarint()+this._pbf.pos;return new ca(this._pbf,S,this.extent,this._keys,this._values)};var xa=An;function Zo(I,S,D){if(I===3){var X=new xa(D,D.readVarint()+D.pos);X.length&&(S[X.name]=X)}}Ur.VectorTile=function(I,S){this.layers=I.readFields(Zo,{},S)},Ur.VectorTileFeature=Cn,Ur.VectorTileLayer=An;let ru=Ur.VectorTileFeature.types,yu=Math.pow(2,13);function Du(I,S,D,X,ie,ve,we,We){I.emplaceBack(S,D,2*Math.floor(X*yu)+we,ie*yu*2,ve*yu*2,Math.round(We))}class vu{constructor(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(D=>D.id),this.index=S.index,this.hasPattern=!1,this.layoutVertexArray=new $u,this.centroidVertexArray=new iu,this.indexArray=new se,this.programConfigurations=new Vu(S.layers,S.zoom),this.segments=new st,this.stateDependentLayerIds=this.layers.filter(D=>D.isStateDependent()).map(D=>D.id)}populate(S,D,X){this.features=[],this.hasPattern=bt("fill-extrusion",this.layers,D);for(let{feature:ie,id:ve,index:we,sourceLayerIndex:We}of S){let ut=this.layers[0]._featureFilter.needGeometry,Mt=hf(ie,ut);if(!this.layers[0]._featureFilter.filter(new cs(this.zoom),Mt,X))continue;let $t={id:ve,sourceLayerIndex:We,index:we,geometry:ut?Mt.geometry:lf(ie),properties:ie.properties,type:ie.type,patterns:{}};this.hasPattern?this.features.push(Kt("fill-extrusion",this.layers,$t,this.zoom,D)):this.addFeature($t,$t.geometry,we,X,{}),D.featureIndex.insert(ie,$t.geometry,we,We,this.index,!0)}}addFeatures(S,D,X){for(let ie of this.features){let{geometry:ve}=ie;this.addFeature(ie,ve,ie.index,D,X)}}update(S,D,X){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,D,this.stateDependentLayers,X)}isEmpty(){return this.layoutVertexArray.length===0&&this.centroidVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,Ar),this.centroidVertexBuffer=S.createVertexBuffer(this.centroidVertexArray,Lt.members,!0),this.indexBuffer=S.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(S),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy())}addFeature(S,D,X,ie,ve){for(let we of Ys(D,500)){let We={x:0,y:0,vertexCount:0},ut=0;for(let Jr of we)ut+=Jr.length;let Mt=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(let Jr of we){if(Jr.length===0||Ju(Jr))continue;let ui=0;for(let Gi=0;Gi=1){let Za=Jr[Gi-1];if(!zu(cn,Za)){Mt.vertexLength+4>st.MAX_VERTEX_ARRAY_LENGTH&&(Mt=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));let Rn=cn.sub(Za)._perp()._unit(),La=Za.dist(cn);ui+La>32768&&(ui=0),Du(this.layoutVertexArray,cn.x,cn.y,Rn.x,Rn.y,0,0,ui),Du(this.layoutVertexArray,cn.x,cn.y,Rn.x,Rn.y,0,1,ui),We.x+=2*cn.x,We.y+=2*cn.y,We.vertexCount+=2,ui+=La,Du(this.layoutVertexArray,Za.x,Za.y,Rn.x,Rn.y,0,0,ui),Du(this.layoutVertexArray,Za.x,Za.y,Rn.x,Rn.y,0,1,ui),We.x+=2*Za.x,We.y+=2*Za.y,We.vertexCount+=2;let So=Mt.vertexLength;this.indexArray.emplaceBack(So,So+2,So+1),this.indexArray.emplaceBack(So+1,So+2,So+3),Mt.vertexLength+=4,Mt.primitiveLength+=2}}}}if(Mt.vertexLength+ut>st.MAX_VERTEX_ARRAY_LENGTH&&(Mt=this.segments.prepareSegment(ut,this.layoutVertexArray,this.indexArray)),ru[S.type]!=="Polygon")continue;let $t=[],vr=[],Sr=Mt.vertexLength;for(let Jr of we)if(Jr.length!==0){Jr!==we[0]&&vr.push($t.length/2);for(let ui=0;uiWl)||I.y===S.y&&(I.y<0||I.y>Wl)}function Ju(I){return I.every(S=>S.x<0)||I.every(S=>S.x>Wl)||I.every(S=>S.y<0)||I.every(S=>S.y>Wl)}let Vf;Mi("FillExtrusionBucket",vu,{omit:["layers","features"]});var wd={get paint(){return Vf=Vf||new le({"fill-extrusion-opacity":new ms(ce["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new Os(ce["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new ms(ce["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new ms(ce["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Xl(ce["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new Os(ce["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new Os(ce["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new ms(ce["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})}};class Td extends q{constructor(S){super(S,wd)}createBucket(S){return new vu(S)}queryRadius(){return Ls(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}queryIntersectsFeature(S,D,X,ie,ve,we,We,ut){let Mt=ua(S,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),we.angle,We),$t=this.paint.get("fill-extrusion-height").evaluate(D,X),vr=this.paint.get("fill-extrusion-base").evaluate(D,X),Sr=function(Jr,ui,Gi,cn){let Za=[];for(let Rn of Jr){let La=[Rn.x,Rn.y,0,1];hs(La,La,ui),Za.push(new l(La[0]/La[3],La[1]/La[3]))}return Za}(Mt,ut),Dr=function(Jr,ui,Gi,cn){let Za=[],Rn=[],La=cn[8]*ui,So=cn[9]*ui,kl=cn[10]*ui,mu=cn[11]*ui,Iu=cn[8]*Gi,su=cn[9]*Gi,yl=cn[10]*Gi,Eu=cn[11]*Gi;for(let bu of Jr){let _u=[],Xs=[];for(let Lu of bu){let xu=Lu.x,qu=Lu.y,vc=cn[0]*xu+cn[4]*qu+cn[12],cc=cn[1]*xu+cn[5]*qu+cn[13],zh=cn[2]*xu+cn[6]*qu+cn[14],Qp=cn[3]*xu+cn[7]*qu+cn[15],ud=zh+kl,Ih=Qp+mu,Wd=vc+Iu,jd=cc+su,Xd=zh+yl,$c=Qp+Eu,Rh=new l((vc+La)/Ih,(cc+So)/Ih);Rh.z=ud/Ih,_u.push(Rh);let Cd=new l(Wd/$c,jd/$c);Cd.z=Xd/$c,Xs.push(Cd)}Za.push(_u),Rn.push(Xs)}return[Za,Rn]}(ie,vr,$t,ut);return function(Jr,ui,Gi){let cn=1/0;qt(Gi,ui)&&(cn=Kp(Gi,ui[0]));for(let Za=0;ZaD.id),this.index=S.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(D=>{this.gradients[D.id]={}}),this.layoutVertexArray=new Ku,this.layoutVertexArray2=new Wu,this.indexArray=new se,this.programConfigurations=new Vu(S.layers,S.zoom),this.segments=new st,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(D=>D.isStateDependent()).map(D=>D.id)}populate(S,D,X){this.hasPattern=bt("line",this.layers,D);let ie=this.layers[0].layout.get("line-sort-key"),ve=!ie.isConstant(),we=[];for(let{feature:We,id:ut,index:Mt,sourceLayerIndex:$t}of S){let vr=this.layers[0]._featureFilter.needGeometry,Sr=hf(We,vr);if(!this.layers[0]._featureFilter.filter(new cs(this.zoom),Sr,X))continue;let Dr=ve?ie.evaluate(Sr,{},X):void 0,Jr={id:ut,properties:We.properties,type:We.type,sourceLayerIndex:$t,index:Mt,geometry:vr?Sr.geometry:lf(We),patterns:{},sortKey:Dr};we.push(Jr)}ve&&we.sort((We,ut)=>We.sortKey-ut.sortKey);for(let We of we){let{geometry:ut,index:Mt,sourceLayerIndex:$t}=We;if(this.hasPattern){let vr=Kt("line",this.layers,We,this.zoom,D);this.patternFeatures.push(vr)}else this.addFeature(We,ut,Mt,X,{});D.featureIndex.insert(S[Mt].feature,ut,Mt,$t,this.index)}}update(S,D,X){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,D,this.stateDependentLayers,X)}addFeatures(S,D,X){for(let ie of this.patternFeatures)this.addFeature(ie,ie.geometry,ie.index,D,X)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=S.createVertexBuffer(this.layoutVertexArray2,mv)),this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,vv),this.indexBuffer=S.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(S),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(S){if(S.properties&&Object.prototype.hasOwnProperty.call(S.properties,"mapbox_clip_start")&&Object.prototype.hasOwnProperty.call(S.properties,"mapbox_clip_end"))return{start:+S.properties.mapbox_clip_start,end:+S.properties.mapbox_clip_end}}addFeature(S,D,X,ie,ve){let we=this.layers[0].layout,We=we.get("line-join").evaluate(S,{}),ut=we.get("line-cap"),Mt=we.get("line-miter-limit"),$t=we.get("line-round-limit");this.lineClips=this.lineFeatureClips(S);for(let vr of D)this.addLine(vr,S,We,ut,Mt,$t);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,X,ve,ie)}addLine(S,D,X,ie,ve,we){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let cn=0;cn=2&&S[ut-1].equals(S[ut-2]);)ut--;let Mt=0;for(;Mt0;if(mu&&cn>Mt){let Eu=Sr.dist(Dr);if(Eu>2*$t){let bu=Sr.sub(Sr.sub(Dr)._mult($t/Eu)._round());this.updateDistance(Dr,bu),this.addCurrentVertex(bu,ui,0,0,vr),Dr=bu}}let su=Dr&&Jr,yl=su?X:We?"butt":ie;if(su&&yl==="round"&&(Sove&&(yl="bevel"),yl==="bevel"&&(So>2&&(yl="flipbevel"),So100)Za=Gi.mult(-1);else{let Eu=So*ui.add(Gi).mag()/ui.sub(Gi).mag();Za._perp()._mult(Eu*(Iu?-1:1))}this.addCurrentVertex(Sr,Za,0,0,vr),this.addCurrentVertex(Sr,Za.mult(-1),0,0,vr)}else if(yl==="bevel"||yl==="fakeround"){let Eu=-Math.sqrt(So*So-1),bu=Iu?Eu:0,_u=Iu?0:Eu;if(Dr&&this.addCurrentVertex(Sr,ui,bu,_u,vr),yl==="fakeround"){let Xs=Math.round(180*kl/Math.PI/20);for(let Lu=1;Lu2*$t){let bu=Sr.add(Jr.sub(Sr)._mult($t/Eu)._round());this.updateDistance(Sr,bu),this.addCurrentVertex(bu,Gi,0,0,vr),Sr=bu}}}}addCurrentVertex(S,D,X,ie,ve,we=!1){let We=D.y*ie-D.x,ut=-D.y-D.x*ie;this.addHalfVertex(S,D.x+D.y*X,D.y-D.x*X,we,!1,X,ve),this.addHalfVertex(S,We,ut,we,!0,-ie,ve),this.distance>Pp/2&&this.totalDistance===0&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(S,D,X,ie,ve,we))}addHalfVertex({x:S,y:D},X,ie,ve,we,We,ut){let Mt=.5*(this.lineClips?this.scaledDistance*(Pp-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((S<<1)+(ve?1:0),(D<<1)+(we?1:0),Math.round(63*X)+128,Math.round(63*ie)+128,1+(We===0?0:We<0?-1:1)|(63&Mt)<<2,Mt>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);let $t=ut.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,$t),ut.primitiveLength++),we?this.e2=$t:this.e1=$t}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(S,D){this.distance+=S.dist(D),this.updateScaledDistance()}}let zp,ag;Mi("LineBucket",Jp,{omit:["layers","patternFeatures"]});var cm={get paint(){return ag=ag||new le({"line-opacity":new Os(ce.paint_line["line-opacity"]),"line-color":new Os(ce.paint_line["line-color"]),"line-translate":new ms(ce.paint_line["line-translate"]),"line-translate-anchor":new ms(ce.paint_line["line-translate-anchor"]),"line-width":new Os(ce.paint_line["line-width"]),"line-gap-width":new Os(ce.paint_line["line-gap-width"]),"line-offset":new Os(ce.paint_line["line-offset"]),"line-blur":new Os(ce.paint_line["line-blur"]),"line-dasharray":new Vl(ce.paint_line["line-dasharray"]),"line-pattern":new Xl(ce.paint_line["line-pattern"]),"line-gradient":new Nl(ce.paint_line["line-gradient"])})},get layout(){return zp=zp||new le({"line-cap":new ms(ce.layout_line["line-cap"]),"line-join":new Os(ce.layout_line["line-join"]),"line-miter-limit":new ms(ce.layout_line["line-miter-limit"]),"line-round-limit":new ms(ce.layout_line["line-round-limit"]),"line-sort-key":new Os(ce.layout_line["line-sort-key"])})}};class vh extends Os{possiblyEvaluate(S,D){return D=new cs(Math.floor(D.zoom),{now:D.now,fadeDuration:D.fadeDuration,zoomHistory:D.zoomHistory,transition:D.transition}),super.possiblyEvaluate(S,D)}evaluate(S,D,X,ie){return D=L({},D,{zoom:Math.floor(D.zoom)}),super.evaluate(S,D,X,ie)}}let hm;class og extends q{constructor(S){super(S,cm),this.gradientVersion=0,hm||(hm=new vh(cm.paint.properties["line-width"].specification),hm.useIntegerZoom=!0)}_handleSpecialPaintPropertyUpdate(S){if(S==="line-gradient"){let D=this.gradientExpression();this.stepInterpolant=!!function(X){return X._styleExpression!==void 0}(D)&&D._styleExpression.expression instanceof Xi,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression}recalculate(S,D){super.recalculate(S,D),this.paint._values["line-floorwidth"]=hm.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,S)}createBucket(S){return new Jp(S)}queryRadius(S){let D=S,X=Zh(wn("line-width",this,D),wn("line-gap-width",this,D)),ie=wn("line-offset",this,D);return X/2+Math.abs(ie)+Ls(this.paint.get("line-translate"))}queryIntersectsFeature(S,D,X,ie,ve,we,We){let ut=ua(S,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),we.angle,We),Mt=We/2*Zh(this.paint.get("line-width").evaluate(D,X),this.paint.get("line-gap-width").evaluate(D,X)),$t=this.paint.get("line-offset").evaluate(D,X);return $t&&(ie=function(vr,Sr){let Dr=[];for(let Jr=0;Jr=3){for(let Gi=0;Gi0?S+2*I:I}let ry=Ve([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),b1=Ve([{name:"a_projected_pos",components:3,type:"Float32"}],4);Ve([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);let w1=Ve([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"},{name:"a_box_real",components:2,type:"Int16"}]);Ve([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);let sg=Ve([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),iy=Ve([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function ny(I,S,D){return I.sections.forEach(X=>{X.text=function(ie,ve,we){let We=ve.layout.get("text-transform").evaluate(we,{});return We==="uppercase"?ie=ie.toLocaleUpperCase():We==="lowercase"&&(ie=ie.toLocaleLowerCase()),Js.applyArabicShaping&&(ie=Js.applyArabicShaping(ie)),ie}(X.text,S,D)}),I}Ve([{name:"triangle",components:3,type:"Uint16"}]),Ve([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),Ve([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"}]),Ve([{type:"Float32",name:"offsetX"}]),Ve([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),Ve([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);let wc={"!":"\uFE15","#":"\uFF03",$:"\uFF04","%":"\uFF05","&":"\uFF06","(":"\uFE35",")":"\uFE36","*":"\uFF0A","+":"\uFF0B",",":"\uFE10","-":"\uFE32",".":"\u30FB","/":"\uFF0F",":":"\uFE13",";":"\uFE14","<":"\uFE3F","=":"\uFF1D",">":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};var Wf=24,Ed=ic,lg=function(I,S,D,X,ie){var ve,we,We=8*ie-X-1,ut=(1<>1,$t=-7,vr=D?ie-1:0,Sr=D?-1:1,Dr=I[S+vr];for(vr+=Sr,ve=Dr&(1<<-$t)-1,Dr>>=-$t,$t+=We;$t>0;ve=256*ve+I[S+vr],vr+=Sr,$t-=8);for(we=ve&(1<<-$t)-1,ve>>=-$t,$t+=X;$t>0;we=256*we+I[S+vr],vr+=Sr,$t-=8);if(ve===0)ve=1-Mt;else{if(ve===ut)return we?NaN:1/0*(Dr?-1:1);we+=Math.pow(2,X),ve-=Mt}return(Dr?-1:1)*we*Math.pow(2,ve-X)},T1=function(I,S,D,X,ie,ve){var we,We,ut,Mt=8*ve-ie-1,$t=(1<>1,Sr=ie===23?Math.pow(2,-24)-Math.pow(2,-77):0,Dr=X?0:ve-1,Jr=X?1:-1,ui=S<0||S===0&&1/S<0?1:0;for(S=Math.abs(S),isNaN(S)||S===1/0?(We=isNaN(S)?1:0,we=$t):(we=Math.floor(Math.log(S)/Math.LN2),S*(ut=Math.pow(2,-we))<1&&(we--,ut*=2),(S+=we+vr>=1?Sr/ut:Sr*Math.pow(2,1-vr))*ut>=2&&(we++,ut/=2),we+vr>=$t?(We=0,we=$t):we+vr>=1?(We=(S*ut-1)*Math.pow(2,ie),we+=vr):(We=S*Math.pow(2,vr-1)*Math.pow(2,ie),we=0));ie>=8;I[D+Dr]=255&We,Dr+=Jr,We/=256,ie-=8);for(we=we<0;I[D+Dr]=255&we,Dr+=Jr,we/=256,Mt-=8);I[D+Dr-Jr]|=128*ui};function ic(I){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(I)?I:new Uint8Array(I||0),this.pos=0,this.type=0,this.length=this.buf.length}ic.Varint=0,ic.Fixed64=1,ic.Bytes=2,ic.Fixed32=5;var Nx=4294967296,ay=1/Nx,Ew=typeof TextDecoder=="undefined"?null:new TextDecoder("utf-8");function Ip(I){return I.type===ic.Bytes?I.readVarint()+I.pos:I.pos+1}function oy(I,S,D){return D?4294967296*S+(I>>>0):4294967296*(S>>>0)+(I>>>0)}function kw(I,S,D){var X=S<=16383?1:S<=2097151?2:S<=268435455?3:Math.floor(Math.log(S)/(7*Math.LN2));D.realloc(X);for(var ie=D.pos-1;ie>=I;ie--)D.buf[ie+X]=D.buf[ie]}function Ux(I,S){for(var D=0;D>>8,I[D+2]=S>>>16,I[D+3]=S>>>24}function yC(I,S){return(I[S]|I[S+1]<<8|I[S+2]<<16)+(I[S+3]<<24)}ic.prototype={destroy:function(){this.buf=null},readFields:function(I,S,D){for(D=D||this.length;this.pos>3,ve=this.pos;this.type=7&X,I(ie,S,this),this.pos===ve&&this.skip(X)}return S},readMessage:function(I,S){return this.readFields(I,S,this.readVarint()+this.pos)},readFixed32:function(){var I=ug(this.buf,this.pos);return this.pos+=4,I},readSFixed32:function(){var I=yC(this.buf,this.pos);return this.pos+=4,I},readFixed64:function(){var I=ug(this.buf,this.pos)+ug(this.buf,this.pos+4)*Nx;return this.pos+=8,I},readSFixed64:function(){var I=ug(this.buf,this.pos)+yC(this.buf,this.pos+4)*Nx;return this.pos+=8,I},readFloat:function(){var I=lg(this.buf,this.pos,!0,23,4);return this.pos+=4,I},readDouble:function(){var I=lg(this.buf,this.pos,!0,52,8);return this.pos+=8,I},readVarint:function(I){var S,D,X=this.buf;return S=127&(D=X[this.pos++]),D<128?S:(S|=(127&(D=X[this.pos++]))<<7,D<128?S:(S|=(127&(D=X[this.pos++]))<<14,D<128?S:(S|=(127&(D=X[this.pos++]))<<21,D<128?S:function(ie,ve,we){var We,ut,Mt=we.buf;if(We=(112&(ut=Mt[we.pos++]))>>4,ut<128||(We|=(127&(ut=Mt[we.pos++]))<<3,ut<128)||(We|=(127&(ut=Mt[we.pos++]))<<10,ut<128)||(We|=(127&(ut=Mt[we.pos++]))<<17,ut<128)||(We|=(127&(ut=Mt[we.pos++]))<<24,ut<128)||(We|=(1&(ut=Mt[we.pos++]))<<31,ut<128))return oy(ie,We,ve);throw new Error("Expected varint not more than 10 bytes")}(S|=(15&(D=X[this.pos]))<<28,I,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var I=this.readVarint();return I%2==1?(I+1)/-2:I/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var I=this.readVarint()+this.pos,S=this.pos;return this.pos=I,I-S>=12&&Ew?function(D,X,ie){return Ew.decode(D.subarray(X,ie))}(this.buf,S,I):function(D,X,ie){for(var ve="",we=X;we239?4:$t>223?3:$t>191?2:1;if(we+Sr>ie)break;Sr===1?$t<128&&(vr=$t):Sr===2?(192&(We=D[we+1]))==128&&(vr=(31&$t)<<6|63&We)<=127&&(vr=null):Sr===3?(ut=D[we+2],(192&(We=D[we+1]))==128&&(192&ut)==128&&((vr=(15&$t)<<12|(63&We)<<6|63&ut)<=2047||vr>=55296&&vr<=57343)&&(vr=null)):Sr===4&&(ut=D[we+2],Mt=D[we+3],(192&(We=D[we+1]))==128&&(192&ut)==128&&(192&Mt)==128&&((vr=(15&$t)<<18|(63&We)<<12|(63&ut)<<6|63&Mt)<=65535||vr>=1114112)&&(vr=null)),vr===null?(vr=65533,Sr=1):vr>65535&&(vr-=65536,ve+=String.fromCharCode(vr>>>10&1023|55296),vr=56320|1023&vr),ve+=String.fromCharCode(vr),we+=Sr}return ve}(this.buf,S,I)},readBytes:function(){var I=this.readVarint()+this.pos,S=this.buf.subarray(this.pos,I);return this.pos=I,S},readPackedVarint:function(I,S){if(this.type!==ic.Bytes)return I.push(this.readVarint(S));var D=Ip(this);for(I=I||[];this.pos127;);else if(S===ic.Bytes)this.pos=this.readVarint()+this.pos;else if(S===ic.Fixed32)this.pos+=4;else{if(S!==ic.Fixed64)throw new Error("Unimplemented type: "+S);this.pos+=8}},writeTag:function(I,S){this.writeVarint(I<<3|S)},realloc:function(I){for(var S=this.length||16;S268435455||I<0?function(S,D){var X,ie;if(S>=0?(X=S%4294967296|0,ie=S/4294967296|0):(ie=~(-S/4294967296),4294967295^(X=~(-S%4294967296))?X=X+1|0:(X=0,ie=ie+1|0)),S>=18446744073709552e3||S<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");D.realloc(10),function(ve,we,We){We.buf[We.pos++]=127&ve|128,ve>>>=7,We.buf[We.pos++]=127&ve|128,ve>>>=7,We.buf[We.pos++]=127&ve|128,ve>>>=7,We.buf[We.pos++]=127&ve|128,We.buf[We.pos]=127&(ve>>>=7)}(X,0,D),function(ve,we){var We=(7&ve)<<4;we.buf[we.pos++]|=We|((ve>>>=3)?128:0),ve&&(we.buf[we.pos++]=127&ve|((ve>>>=7)?128:0),ve&&(we.buf[we.pos++]=127&ve|((ve>>>=7)?128:0),ve&&(we.buf[we.pos++]=127&ve|((ve>>>=7)?128:0),ve&&(we.buf[we.pos++]=127&ve|((ve>>>=7)?128:0),ve&&(we.buf[we.pos++]=127&ve)))))}(ie,D)}(I,this):(this.realloc(4),this.buf[this.pos++]=127&I|(I>127?128:0),I<=127||(this.buf[this.pos++]=127&(I>>>=7)|(I>127?128:0),I<=127||(this.buf[this.pos++]=127&(I>>>=7)|(I>127?128:0),I<=127||(this.buf[this.pos++]=I>>>7&127))))},writeSVarint:function(I){this.writeVarint(I<0?2*-I-1:2*I)},writeBoolean:function(I){this.writeVarint(!!I)},writeString:function(I){I=String(I),this.realloc(4*I.length),this.pos++;var S=this.pos;this.pos=function(X,ie,ve){for(var we,We,ut=0;ut55295&&we<57344){if(!We){we>56319||ut+1===ie.length?(X[ve++]=239,X[ve++]=191,X[ve++]=189):We=we;continue}if(we<56320){X[ve++]=239,X[ve++]=191,X[ve++]=189,We=we;continue}we=We-55296<<10|we-56320|65536,We=null}else We&&(X[ve++]=239,X[ve++]=191,X[ve++]=189,We=null);we<128?X[ve++]=we:(we<2048?X[ve++]=we>>6|192:(we<65536?X[ve++]=we>>12|224:(X[ve++]=we>>18|240,X[ve++]=we>>12&63|128),X[ve++]=we>>6&63|128),X[ve++]=63&we|128)}return ve}(this.buf,I,this.pos);var D=this.pos-S;D>=128&&kw(S,D,this),this.pos=S-1,this.writeVarint(D),this.pos+=D},writeFloat:function(I){this.realloc(4),T1(this.buf,I,this.pos,!0,23,4),this.pos+=4},writeDouble:function(I){this.realloc(8),T1(this.buf,I,this.pos,!0,52,8),this.pos+=8},writeBytes:function(I){var S=I.length;this.writeVarint(S),this.realloc(S);for(var D=0;D=128&&kw(D,X,this),this.pos=D-1,this.writeVarint(X),this.pos+=X},writeMessage:function(I,S,D){this.writeTag(I,ic.Bytes),this.writeRawMessage(S,D)},writePackedVarint:function(I,S){S.length&&this.writeMessage(I,Ux,S)},writePackedSVarint:function(I,S){S.length&&this.writeMessage(I,XO,S)},writePackedBoolean:function(I,S){S.length&&this.writeMessage(I,KO,S)},writePackedFloat:function(I,S){S.length&&this.writeMessage(I,ZO,S)},writePackedDouble:function(I,S){S.length&&this.writeMessage(I,YO,S)},writePackedFixed32:function(I,S){S.length&&this.writeMessage(I,UQ,S)},writePackedSFixed32:function(I,S){S.length&&this.writeMessage(I,JO,S)},writePackedFixed64:function(I,S){S.length&&this.writeMessage(I,$O,S)},writePackedSFixed64:function(I,S){S.length&&this.writeMessage(I,QO,S)},writeBytesField:function(I,S){this.writeTag(I,ic.Bytes),this.writeBytes(S)},writeFixed32Field:function(I,S){this.writeTag(I,ic.Fixed32),this.writeFixed32(S)},writeSFixed32Field:function(I,S){this.writeTag(I,ic.Fixed32),this.writeSFixed32(S)},writeFixed64Field:function(I,S){this.writeTag(I,ic.Fixed64),this.writeFixed64(S)},writeSFixed64Field:function(I,S){this.writeTag(I,ic.Fixed64),this.writeSFixed64(S)},writeVarintField:function(I,S){this.writeTag(I,ic.Varint),this.writeVarint(S)},writeSVarintField:function(I,S){this.writeTag(I,ic.Varint),this.writeSVarint(S)},writeStringField:function(I,S){this.writeTag(I,ic.Bytes),this.writeString(S)},writeFloatField:function(I,S){this.writeTag(I,ic.Fixed32),this.writeFloat(S)},writeDoubleField:function(I,S){this.writeTag(I,ic.Fixed64),this.writeDouble(S)},writeBooleanField:function(I,S){this.writeVarintField(I,!!S)}};var iM=o(Ed);let nM=3;function VQ(I,S,D){I===1&&D.readMessage(e9,S)}function e9(I,S,D){if(I===3){let{id:X,bitmap:ie,width:ve,height:we,left:We,top:ut,advance:Mt}=D.readMessage(gC,{});S.push({id:X,bitmap:new ul({width:ve+2*nM,height:we+2*nM},ie),metrics:{width:ve,height:we,left:We,top:ut,advance:Mt}})}}function gC(I,S,D){I===1?S.id=D.readVarint():I===2?S.bitmap=D.readBytes():I===3?S.width=D.readVarint():I===4?S.height=D.readVarint():I===5?S.left=D.readSVarint():I===6?S.top=D.readSVarint():I===7&&(S.advance=D.readVarint())}let _C=nM;function aM(I){let S=0,D=0;for(let we of I)S+=we.w*we.h,D=Math.max(D,we.w);I.sort((we,We)=>We.h-we.h);let X=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(S/.95)),D),h:1/0}],ie=0,ve=0;for(let we of I)for(let We=X.length-1;We>=0;We--){let ut=X[We];if(!(we.w>ut.w||we.h>ut.h)){if(we.x=ut.x,we.y=ut.y,ve=Math.max(ve,we.y+we.h),ie=Math.max(ie,we.x+we.w),we.w===ut.w&&we.h===ut.h){let Mt=X.pop();We=0&&X>=S&&Pw[this.text.charCodeAt(X)];X--)D--;this.text=this.text.substring(S,D),this.sectionIndex=this.sectionIndex.slice(S,D)}substring(S,D){let X=new A1;return X.text=this.text.substring(S,D),X.sectionIndex=this.sectionIndex.slice(S,D),X.sections=this.sections,X}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce((S,D)=>Math.max(S,this.sections[D].scale),0)}addTextSection(S,D){this.text+=S.text,this.sections.push(Gx.forText(S.scale,S.fontStack||D));let X=this.sections.length-1;for(let ie=0;ie=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Hx(I,S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr){let ui=A1.fromFeature(I,ie),Gi;vr===i.ah.vertical&&ui.verticalizePunctuation();let{processBidirectionalText:cn,processStyledBidirectionalText:Za}=Js;if(cn&&ui.sections.length===1){Gi=[];let So=cn(ui.toString(),S1(ui,Mt,ve,S,X,Dr));for(let kl of So){let mu=new A1;mu.text=kl,mu.sections=ui.sections;for(let Iu=0;Iu0&&tv>ih&&(ih=tv)}else{let Rc=mu[jf.fontStack],fh=Rc&&Rc[mc];if(fh&&fh.rect)P1=fh.rect,Hc=fh.metrics;else{let tv=kl[jf.fontStack],mm=tv&&tv[mc];if(!mm)continue;Hc=mm.metrics}Fp=(Rh-jf.scale)*Wf}ev?(So.verticalizable=!0,Yh.push({glyph:mc,imageName:p0,x:qu,y:vc+Fp,vertical:ev,scale:jf.scale,fontStack:jf.fontStack,sectionIndex:Tc,metrics:Hc,rect:P1}),qu+=Gv*jf.scale+Xs):(Yh.push({glyph:mc,imageName:p0,x:qu,y:vc+Fp,vertical:ev,scale:jf.scale,fontStack:jf.fontStack,sectionIndex:Tc,metrics:Hc,rect:P1}),qu+=Hc.advance*jf.scale+Xs)}Yh.length!==0&&(cc=Math.max(qu-Xs,cc),sy(Yh,0,Yh.length-1,Qp,ih)),qu=0;let Dp=yl*Rh+ih;fd.lineOffset=Math.max(ih,Cd),vc+=Dp,zh=Math.max(Dp,zh),++ud}var Ih;let Wd=vc-Ph,{horizontalAlign:jd,verticalAlign:Xd}=Iw(Eu);(function($c,Rh,Cd,fd,Yh,ih,Dp,fp,jf){let Tc=(Rh-Cd)*Yh,mc=0;mc=ih!==Dp?-fp*fd-Ph:(-fd*jf+.5)*Dp;for(let Fp of $c)for(let Hc of Fp.positionedGlyphs)Hc.x+=Tc,Hc.y+=mc})(So.positionedLines,Qp,jd,Xd,cc,zh,yl,Wd,su.length),So.top+=-Xd*Wd,So.bottom=So.top+Wd,So.left+=-jd*cc,So.right=So.left+cc}(La,S,D,X,Gi,we,We,ut,vr,Mt,Sr,Jr),!function(So){for(let kl of So)if(kl.positionedGlyphs.length!==0)return!1;return!0}(Rn)&&La}let Pw={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},t9={10:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},r9={40:!0};function xC(I,S,D,X,ie,ve){if(S.imageName){let we=X[S.imageName];return we?we.displaySize[0]*S.scale*Wf/ve+ie:0}{let we=D[S.fontStack],We=we&&we[I];return We?We.metrics.advance*S.scale+ie:0}}function bC(I,S,D,X){let ie=Math.pow(I-S,2);return X?I=0,Mt=0;for(let vr=0;vrMt){let $t=Math.ceil(ve/Mt);ie*=$t/we,we=$t}return{x1:X,y1:ie,x2:X+ve,y2:ie+we}}function AC(I,S,D,X,ie,ve){let we=I.image,We;if(we.content){let Gi=we.content,cn=we.pixelRatio||1;We=[Gi[0]/cn,Gi[1]/cn,we.displaySize[0]-Gi[2]/cn,we.displaySize[1]-Gi[3]/cn]}let ut=S.left*ve,Mt=S.right*ve,$t,vr,Sr,Dr;D==="width"||D==="both"?(Dr=ie[0]+ut-X[3],vr=ie[0]+Mt+X[1]):(Dr=ie[0]+(ut+Mt-we.displaySize[0])/2,vr=Dr+we.displaySize[0]);let Jr=S.top*ve,ui=S.bottom*ve;return D==="height"||D==="both"?($t=ie[1]+Jr-X[0],Sr=ie[1]+ui+X[2]):($t=ie[1]+(Jr+ui-we.displaySize[1])/2,Sr=$t+we.displaySize[1]),{image:we,top:$t,right:vr,bottom:Sr,left:Dr,collisionPadding:We}}let jx=255,d0=128,ly=jx*d0;function SC(I,S){let{expression:D}=S;if(D.kind==="constant")return{kind:"constant",layoutSize:D.evaluate(new cs(I+1))};if(D.kind==="source")return{kind:"source"};{let{zoomStops:X,interpolationType:ie}=D,ve=0;for(;vewe.id),this.index=S.index,this.pixelRatio=S.pixelRatio,this.sourceLayerIndex=S.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=En([]),this.placementViewportMatrix=En([]);let D=this.layers[0]._unevaluatedLayout._values;this.textSizeData=SC(this.zoom,D["text-size"]),this.iconSizeData=SC(this.zoom,D["icon-size"]);let X=this.layers[0].layout,ie=X.get("symbol-sort-key"),ve=X.get("symbol-z-order");this.canOverlap=oM(X,"text-overlap","text-allow-overlap")!=="never"||oM(X,"icon-overlap","icon-allow-overlap")!=="never"||X.get("text-ignore-placement")||X.get("icon-ignore-placement"),this.sortFeaturesByKey=ve!=="viewport-y"&&!ie.isConstant(),this.sortFeaturesByY=(ve==="viewport-y"||ve==="auto"&&!this.sortFeaturesByKey)&&this.canOverlap,X.get("symbol-placement")==="point"&&(this.writingModes=X.get("text-writing-mode").map(we=>i.ah[we])),this.stateDependentLayerIds=this.layers.filter(we=>we.isStateDependent()).map(we=>we.id),this.sourceID=S.sourceID}createArrays(){this.text=new uM(new Vu(this.layers,this.zoom,S=>/^text/.test(S))),this.icon=new uM(new Vu(this.layers,this.zoom,S=>/^icon/.test(S))),this.glyphOffsetArray=new au,this.lineVertexArray=new Sl,this.symbolInstances=new ml,this.textAnchorOffsets=new Ol}calculateGlyphDependencies(S,D,X,ie,ve){for(let we=0;we0)&&(we.value.kind!=="constant"||we.value.value.length>0),$t=ut.value.kind!=="constant"||!!ut.value.value||Object.keys(ut.parameters).length>0,vr=ve.get("symbol-sort-key");if(this.features=[],!Mt&&!$t)return;let Sr=D.iconDependencies,Dr=D.glyphDependencies,Jr=D.availableImages,ui=new cs(this.zoom);for(let{feature:Gi,id:cn,index:Za,sourceLayerIndex:Rn}of S){let La=ie._featureFilter.needGeometry,So=hf(Gi,La);if(!ie._featureFilter.filter(ui,So,X))continue;let kl,mu;if(La||(So.geometry=lf(Gi)),Mt){let su=ie.getValueAndResolveTokens("text-field",So,X,Jr),yl=Nr.factory(su),Eu=this.hasRTLText=this.hasRTLText||lM(yl);(!Eu||Js.getRTLTextPluginStatus()==="unavailable"||Eu&&Js.isParsed())&&(kl=ny(yl,ie,So))}if($t){let su=ie.getValueAndResolveTokens("icon-image",So,X,Jr);mu=su instanceof gi?su:gi.fromString(su)}if(!kl&&!mu)continue;let Iu=this.sortFeaturesByKey?vr.evaluate(So,{},X):void 0;if(this.features.push({id:cn,text:kl,icon:mu,index:Za,sourceLayerIndex:Rn,geometry:So.geometry,properties:Gi.properties,type:n9[Gi.type],sortKey:Iu}),mu&&(Sr[mu.name]=!0),kl){let su=we.evaluate(So,{},X).join(","),yl=ve.get("text-rotation-alignment")!=="viewport"&&ve.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(i.ah.vertical)>=0;for(let Eu of kl.sections)if(Eu.image)Sr[Eu.image.name]=!0;else{let bu=is(kl.toString()),_u=Eu.fontStack||su,Xs=Dr[_u]=Dr[_u]||{};this.calculateGlyphDependencies(Eu.text,Xs,yl,this.allowVerticalPlacement,bu)}}}ve.get("symbol-placement")==="line"&&(this.features=function(Gi){let cn={},Za={},Rn=[],La=0;function So(su){Rn.push(Gi[su]),La++}function kl(su,yl,Eu){let bu=Za[su];return delete Za[su],Za[yl]=bu,Rn[bu].geometry[0].pop(),Rn[bu].geometry[0]=Rn[bu].geometry[0].concat(Eu[0]),bu}function mu(su,yl,Eu){let bu=cn[yl];return delete cn[yl],cn[su]=bu,Rn[bu].geometry[0].shift(),Rn[bu].geometry[0]=Eu[0].concat(Rn[bu].geometry[0]),bu}function Iu(su,yl,Eu){let bu=Eu?yl[0][yl[0].length-1]:yl[0][0];return`${su}:${bu.x}:${bu.y}`}for(let su=0;susu.geometry)}(this.features)),this.sortFeaturesByKey&&this.features.sort((Gi,cn)=>Gi.sortKey-cn.sortKey)}update(S,D,X){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(S,D,this.layers,X),this.icon.programConfigurations.updatePaintArrays(S,D,this.layers,X))}isEmpty(){return this.symbolInstances.length===0&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(S){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(S),this.iconCollisionBox.upload(S)),this.text.upload(S,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(S,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(S,D){let X=this.lineVertexArray.length;if(S.segment!==void 0){let ie=S.dist(D[S.segment+1]),ve=S.dist(D[S.segment]),we={};for(let We=S.segment+1;We=0;We--)we[We]={x:D[We].x,y:D[We].y,tileUnitDistanceFromAnchor:ve},We>0&&(ve+=D[We-1].dist(D[We]));for(let We=0;We0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(S,D){let X=S.placedSymbolArray.get(D),ie=X.vertexStartIndex+4*X.numGlyphs;for(let ve=X.vertexStartIndex;veie[We]-ie[ut]||ve[ut]-ve[We]),we}addToSortKeyRanges(S,D){let X=this.sortKeyRanges[this.sortKeyRanges.length-1];X&&X.sortKey===D?X.symbolInstanceEnd=S+1:this.sortKeyRanges.push({sortKey:D,symbolInstanceStart:S,symbolInstanceEnd:S+1})}sortFeatures(S){if(this.sortFeaturesByY&&this.sortedAngle!==S&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(S),this.sortedAngle=S,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(let D of this.symbolInstanceIndexes){let X=this.symbolInstances.get(D);this.featureSortOrder.push(X.featureIndex),[X.rightJustifiedTextSymbolIndex,X.centerJustifiedTextSymbolIndex,X.leftJustifiedTextSymbolIndex].forEach((ie,ve,we)=>{ie>=0&&we.indexOf(ie)===ve&&this.addIndicesForPlacedSymbol(this.text,ie)}),X.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,X.verticalPlacedTextSymbolIndex),X.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,X.placedIconSymbolIndex),X.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,X.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}let Jc,Xx;Mi("SymbolBucket",M1,{omit:["layers","collisionBoxArray","features","compareText"]}),M1.MAX_GLYPHS=65535,M1.addDynamicAttributes=sM;var Dw={get paint(){return Xx=Xx||new le({"icon-opacity":new Os(ce.paint_symbol["icon-opacity"]),"icon-color":new Os(ce.paint_symbol["icon-color"]),"icon-halo-color":new Os(ce.paint_symbol["icon-halo-color"]),"icon-halo-width":new Os(ce.paint_symbol["icon-halo-width"]),"icon-halo-blur":new Os(ce.paint_symbol["icon-halo-blur"]),"icon-translate":new ms(ce.paint_symbol["icon-translate"]),"icon-translate-anchor":new ms(ce.paint_symbol["icon-translate-anchor"]),"text-opacity":new Os(ce.paint_symbol["text-opacity"]),"text-color":new Os(ce.paint_symbol["text-color"],{runtimeType:et,getOverride:I=>I.textColor,hasOverride:I=>!!I.textColor}),"text-halo-color":new Os(ce.paint_symbol["text-halo-color"]),"text-halo-width":new Os(ce.paint_symbol["text-halo-width"]),"text-halo-blur":new Os(ce.paint_symbol["text-halo-blur"]),"text-translate":new ms(ce.paint_symbol["text-translate"]),"text-translate-anchor":new ms(ce.paint_symbol["text-translate-anchor"])})},get layout(){return Jc=Jc||new le({"symbol-placement":new ms(ce.layout_symbol["symbol-placement"]),"symbol-spacing":new ms(ce.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new ms(ce.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new Os(ce.layout_symbol["symbol-sort-key"]),"symbol-z-order":new ms(ce.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new ms(ce.layout_symbol["icon-allow-overlap"]),"icon-overlap":new ms(ce.layout_symbol["icon-overlap"]),"icon-ignore-placement":new ms(ce.layout_symbol["icon-ignore-placement"]),"icon-optional":new ms(ce.layout_symbol["icon-optional"]),"icon-rotation-alignment":new ms(ce.layout_symbol["icon-rotation-alignment"]),"icon-size":new Os(ce.layout_symbol["icon-size"]),"icon-text-fit":new ms(ce.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new ms(ce.layout_symbol["icon-text-fit-padding"]),"icon-image":new Os(ce.layout_symbol["icon-image"]),"icon-rotate":new Os(ce.layout_symbol["icon-rotate"]),"icon-padding":new Os(ce.layout_symbol["icon-padding"]),"icon-keep-upright":new ms(ce.layout_symbol["icon-keep-upright"]),"icon-offset":new Os(ce.layout_symbol["icon-offset"]),"icon-anchor":new Os(ce.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new ms(ce.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new ms(ce.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new ms(ce.layout_symbol["text-rotation-alignment"]),"text-field":new Os(ce.layout_symbol["text-field"]),"text-font":new Os(ce.layout_symbol["text-font"]),"text-size":new Os(ce.layout_symbol["text-size"]),"text-max-width":new Os(ce.layout_symbol["text-max-width"]),"text-line-height":new ms(ce.layout_symbol["text-line-height"]),"text-letter-spacing":new Os(ce.layout_symbol["text-letter-spacing"]),"text-justify":new Os(ce.layout_symbol["text-justify"]),"text-radial-offset":new Os(ce.layout_symbol["text-radial-offset"]),"text-variable-anchor":new ms(ce.layout_symbol["text-variable-anchor"]),"text-variable-anchor-offset":new Os(ce.layout_symbol["text-variable-anchor-offset"]),"text-anchor":new Os(ce.layout_symbol["text-anchor"]),"text-max-angle":new ms(ce.layout_symbol["text-max-angle"]),"text-writing-mode":new ms(ce.layout_symbol["text-writing-mode"]),"text-rotate":new Os(ce.layout_symbol["text-rotate"]),"text-padding":new ms(ce.layout_symbol["text-padding"]),"text-keep-upright":new ms(ce.layout_symbol["text-keep-upright"]),"text-transform":new Os(ce.layout_symbol["text-transform"]),"text-offset":new Os(ce.layout_symbol["text-offset"]),"text-allow-overlap":new ms(ce.layout_symbol["text-allow-overlap"]),"text-overlap":new ms(ce.layout_symbol["text-overlap"]),"text-ignore-placement":new ms(ce.layout_symbol["text-ignore-placement"]),"text-optional":new ms(ce.layout_symbol["text-optional"])})}};class Zx{constructor(S){if(S.property.overrides===void 0)throw new Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=S.property.overrides?S.property.overrides.runtimeType:vt,this.defaultValue=S}evaluate(S){if(S.formattedSection){let D=this.defaultValue.property.overrides;if(D&&D.hasOverride(S.formattedSection))return D.getOverride(S.formattedSection)}return S.feature&&S.featureState?this.defaultValue.evaluate(S.feature,S.featureState):this.defaultValue.property.specification.default}eachChild(S){this.defaultValue.isConstant()||S(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}Mi("FormatSectionOverride",Zx,{omit:["defaultValue"]});class fg extends q{constructor(S){super(S,Dw)}recalculate(S,D){if(super.recalculate(S,D),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout._values["icon-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout._values["text-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")==="map"?"map":"viewport"),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){let X=this.layout.get("text-writing-mode");if(X){let ie=[];for(let ve of X)ie.indexOf(ve)<0&&ie.push(ve);this.layout._values["text-writing-mode"]=ie}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()}getValueAndResolveTokens(S,D,X,ie){let ve=this.layout.get(S).evaluate(D,{},X,ie),we=this._unevaluatedLayout._values[S];return we.isDataDriven()||Qs(we.value)||!ve?ve:function(We,ut){return ut.replace(/{([^{}]+)}/g,(Mt,$t)=>We&&$t in We?String(We[$t]):"")}(D.properties,ve)}createBucket(S){return new M1(S)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error("Should take a different path in FeatureIndex")}_setPaintOverrides(){for(let S of Dw.paint.overridableProperties){if(!fg.hasPaintOverride(this.layout,S))continue;let D=this.paint.get(S),X=new Zx(D),ie=new Ma(X,D.property.specification),ve=null;ve=D.value.kind==="constant"||D.value.kind==="source"?new gs("source",ie):new Vo("composite",ie,D.value.zoomStops),this.paint._values[S]=new Tl(D.property,ve,D.parameters)}}_handleOverridablePaintPropertyUpdate(S,D,X){return!(!this.layout||D.isDataDriven()||X.isDataDriven())&&fg.hasPaintOverride(this.layout,S)}static hasPaintOverride(S,D){let X=S.get("text-field"),ie=Dw.paint.properties[D],ve=!1,we=We=>{for(let ut of We)if(ie.overrides&&ie.overrides.hasOverride(ut))return void(ve=!0)};if(X.value.kind==="constant"&&X.value.value instanceof Nr)we(X.value.value.sections);else if(X.value.kind==="source"){let We=Mt=>{ve||(Mt instanceof Yr&&ti(Mt.value)===_r?we(Mt.value.sections):Mt instanceof wa?we(Mt.sections):Mt.eachChild(We))},ut=X.value;ut._styleExpression&&We(ut._styleExpression.expression)}return ve}}let MC;var Yx={get paint(){return MC=MC||new le({"background-color":new ms(ce.paint_background["background-color"]),"background-pattern":new Vl(ce.paint_background["background-pattern"]),"background-opacity":new ms(ce.paint_background["background-opacity"])})}};class o9 extends q{constructor(S){super(S,Yx)}}let fM;var EC={get paint(){return fM=fM||new le({"raster-opacity":new ms(ce.paint_raster["raster-opacity"]),"raster-hue-rotate":new ms(ce.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new ms(ce.paint_raster["raster-brightness-min"]),"raster-brightness-max":new ms(ce.paint_raster["raster-brightness-max"]),"raster-saturation":new ms(ce.paint_raster["raster-saturation"]),"raster-contrast":new ms(ce.paint_raster["raster-contrast"]),"raster-resampling":new ms(ce.paint_raster["raster-resampling"]),"raster-fade-duration":new ms(ce.paint_raster["raster-fade-duration"])})}};class Kx extends q{constructor(S){super(S,EC)}}class cM extends q{constructor(S){super(S,{}),this.onAdd=D=>{this.implementation.onAdd&&this.implementation.onAdd(D,D.painter.context.gl)},this.onRemove=D=>{this.implementation.onRemove&&this.implementation.onRemove(D,D.painter.context.gl)},this.implementation=S}is3D(){return this.implementation.renderingMode==="3d"}hasOffscreenPass(){return this.implementation.prerender!==void 0}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){throw new Error("Custom layers cannot be serialized")}}class hM{constructor(S){this._methodToThrottle=S,this._triggered=!1,typeof MessageChannel!="undefined"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(()=>{this._triggered=!1,this._methodToThrottle()},0))}remove(){delete this._channel,this._methodToThrottle=()=>{}}}let dM=63710088e-1;class dm{constructor(S,D){if(isNaN(S)||isNaN(D))throw new Error(`Invalid LngLat object: (${S}, ${D})`);if(this.lng=+S,this.lat=+D,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new dm(A(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(S){let D=Math.PI/180,X=this.lat*D,ie=S.lat*D,ve=Math.sin(X)*Math.sin(ie)+Math.cos(X)*Math.cos(ie)*Math.cos((S.lng-this.lng)*D);return dM*Math.acos(Math.min(ve,1))}static convert(S){if(S instanceof dm)return S;if(Array.isArray(S)&&(S.length===2||S.length===3))return new dm(Number(S[0]),Number(S[1]));if(!Array.isArray(S)&&typeof S=="object"&&S!==null)return new dm(Number("lng"in S?S.lng:S.lon),Number(S.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")}}let E1=2*Math.PI*dM;function kC(I){return E1*Math.cos(I*Math.PI/180)}function Fw(I){return(180+I)/360}function CC(I){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+I*Math.PI/360)))/360}function Bw(I,S){return I/kC(S)}function Jx(I){return 360/Math.PI*Math.atan(Math.exp((180-360*I)*Math.PI/180))-90}class $x{constructor(S,D,X=0){this.x=+S,this.y=+D,this.z=+X}static fromLngLat(S,D=0){let X=dm.convert(S);return new $x(Fw(X.lng),CC(X.lat),Bw(D,X.lat))}toLngLat(){return new dm(360*this.x-180,Jx(this.y))}toAltitude(){return this.z*kC(Jx(this.y))}meterInMercatorCoordinateUnits(){return 1/E1*(S=Jx(this.y),1/Math.cos(S*Math.PI/180));var S}}function yv(I,S,D){var X=2*Math.PI*6378137/256/Math.pow(2,D);return[I*X-2*Math.PI*6378137/2,S*X-2*Math.PI*6378137/2]}class pM{constructor(S,D,X){if(!function(ie,ve,we){return!(ie<0||ie>25||we<0||we>=Math.pow(2,ie)||ve<0||ve>=Math.pow(2,ie))}(S,D,X))throw new Error(`x=${D}, y=${X}, z=${S} outside of bounds. 0<=x<${Math.pow(2,S)}, 0<=y<${Math.pow(2,S)} 0<=z<=25 `);this.z=S,this.x=D,this.y=X,this.key=Qx(0,S,S,D,X)}equals(S){return this.z===S.z&&this.x===S.x&&this.y===S.y}url(S,D,X){let ie=(we=this.y,We=this.z,ut=yv(256*(ve=this.x),256*(we=Math.pow(2,We)-we-1),We),Mt=yv(256*(ve+1),256*(we+1),We),ut[0]+","+ut[1]+","+Mt[0]+","+Mt[1]);var ve,we,We,ut,Mt;let $t=function(vr,Sr,Dr){let Jr,ui="";for(let Gi=vr;Gi>0;Gi--)Jr=1<1?"@2x":"").replace(/{quadkey}/g,$t).replace(/{bbox-epsg-3857}/g,ie)}isChildOf(S){let D=this.z-S.z;return D>0&&S.x===this.x>>D&&S.y===this.y>>D}getTilePoint(S){let D=Math.pow(2,this.z);return new l((S.x*D-this.x)*Wl,(S.y*D-this.y)*Wl)}toString(){return`${this.z}/${this.x}/${this.y}`}}class LC{constructor(S,D){this.wrap=S,this.canonical=D,this.key=Qx(S,D.z,D.z,D.x,D.y)}}class $p{constructor(S,D,X,ie,ve){if(S= z; overscaledZ = ${S}; z = ${X}`);this.overscaledZ=S,this.wrap=D,this.canonical=new pM(X,+ie,+ve),this.key=Qx(D,S,X,ie,ve)}clone(){return new $p(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(S){return this.overscaledZ===S.overscaledZ&&this.wrap===S.wrap&&this.canonical.equals(S.canonical)}scaledTo(S){if(S>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${S}; overscaledZ = ${this.overscaledZ}`);let D=this.canonical.z-S;return S>this.canonical.z?new $p(S,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new $p(S,this.wrap,S,this.canonical.x>>D,this.canonical.y>>D)}calculateScaledKey(S,D){if(S>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${S}; overscaledZ = ${this.overscaledZ}`);let X=this.canonical.z-S;return S>this.canonical.z?Qx(this.wrap*+D,S,this.canonical.z,this.canonical.x,this.canonical.y):Qx(this.wrap*+D,S,S,this.canonical.x>>X,this.canonical.y>>X)}isChildOf(S){if(S.wrap!==this.wrap)return!1;let D=this.canonical.z-S.canonical.z;return S.overscaledZ===0||S.overscaledZ>D&&S.canonical.y===this.canonical.y>>D}children(S){if(this.overscaledZ>=S)return[new $p(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];let D=this.canonical.z+1,X=2*this.canonical.x,ie=2*this.canonical.y;return[new $p(D,this.wrap,D,X,ie),new $p(D,this.wrap,D,X+1,ie),new $p(D,this.wrap,D,X,ie+1),new $p(D,this.wrap,D,X+1,ie+1)]}isLessThan(S){return this.wrapS.wrap)&&(this.overscaledZS.overscaledZ)&&(this.canonical.xS.canonical.x)&&this.canonical.ythis.max&&(this.max=vr),vr=this.dim+1||D<-1||D>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(D+1)*this.stride+(S+1)}unpack(S,D,X){return S*this.redFactor+D*this.greenFactor+X*this.blueFactor-this.baseShift}getPixels(){return new Qn({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(S,D,X){if(this.dim!==S.dim)throw new Error("dem dimension mismatch");let ie=D*this.dim,ve=D*this.dim+this.dim,we=X*this.dim,We=X*this.dim+this.dim;switch(D){case-1:ie=ve-1;break;case 1:ve=ie+1}switch(X){case-1:we=We-1;break;case 1:We=we+1}let ut=-D*this.dim,Mt=-X*this.dim;for(let $t=we;$t=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${S} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[S]}}class vM{constructor(S,D,X,ie,ve){this.type="Feature",this._vectorTileFeature=S,S._z=D,S._x=X,S._y=ie,this.properties=S.properties,this.id=ve}get geometry(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(S){this._geometry=S}toJSON(){let S={geometry:this.geometry};for(let D in this)D!=="_geometry"&&D!=="_vectorTileFeature"&&(S[D]=this[D]);return S}}class cg{constructor(S,D){this.tileID=S,this.x=S.canonical.x,this.y=S.canonical.y,this.z=S.canonical.z,this.grid=new di(Wl,16,0),this.grid3D=new di(Wl,16,0),this.featureIndexArray=new Pu,this.promoteId=D}insert(S,D,X,ie,ve,we){let We=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(X,ie,ve);let ut=we?this.grid3D:this.grid;for(let Mt=0;Mt=0&&vr[3]>=0&&ut.insert(We,vr[0],vr[1],vr[2],vr[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new Ur.VectorTile(new iM(this.rawTileData)).layers,this.sourceLayerCoder=new zC(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(S,D,X,ie){this.loadVTLayers();let ve=S.params||{},we=Wl/S.tileSize/S.scale,We=Jn(ve.filter),ut=S.queryGeometry,Mt=S.queryPadding*we,$t=RC(ut),vr=this.grid.query($t.minX-Mt,$t.minY-Mt,$t.maxX+Mt,$t.maxY+Mt),Sr=RC(S.cameraQueryGeometry),Dr=this.grid3D.query(Sr.minX-Mt,Sr.minY-Mt,Sr.maxX+Mt,Sr.maxY+Mt,(Gi,cn,Za,Rn)=>function(La,So,kl,mu,Iu){for(let yl of La)if(So<=yl.x&&kl<=yl.y&&mu>=yl.x&&Iu>=yl.y)return!0;let su=[new l(So,kl),new l(So,Iu),new l(mu,Iu),new l(mu,kl)];if(La.length>2){for(let yl of su)if(Bn(La,yl))return!0}for(let yl=0;yl(Rn||(Rn=lf(La)),So.queryIntersectsFeature(ut,La,kl,Rn,this.z,S.transform,we,S.pixelPosMatrix)))}return Jr}loadMatchingFeature(S,D,X,ie,ve,we,We,ut,Mt,$t,vr){let Sr=this.bucketLayerIDs[D];if(we&&!function(Gi,cn){for(let Za=0;Za=0)return!0;return!1}(we,Sr))return;let Dr=this.sourceLayerCoder.decode(X),Jr=this.vtLayers[Dr].feature(ie);if(ve.needGeometry){let Gi=hf(Jr,!0);if(!ve.filter(new cs(this.tileID.overscaledZ),Gi,this.tileID.canonical))return}else if(!ve.filter(new cs(this.tileID.overscaledZ),Jr))return;let ui=this.getId(Jr,Dr);for(let Gi=0;Gi{let We=S instanceof Ll?S.get(we):null;return We&&We.evaluate?We.evaluate(D,X,ie):We})}function RC(I){let S=1/0,D=1/0,X=-1/0,ie=-1/0;for(let ve of I)S=Math.min(S,ve.x),D=Math.min(D,ve.y),X=Math.max(X,ve.x),ie=Math.max(ie,ve.y);return{minX:S,minY:D,maxX:X,maxY:ie}}function s9(I,S){return S-I}function DC(I,S,D,X,ie){let ve=[];for(let we=0;we=X&&vr.x>=X||($t.x>=X?$t=new l(X,$t.y+(X-$t.x)/(vr.x-$t.x)*(vr.y-$t.y))._round():vr.x>=X&&(vr=new l(X,$t.y+(X-$t.x)/(vr.x-$t.x)*(vr.y-$t.y))._round()),$t.y>=ie&&vr.y>=ie||($t.y>=ie?$t=new l($t.x+(ie-$t.y)/(vr.y-$t.y)*(vr.x-$t.x),ie)._round():vr.y>=ie&&(vr=new l($t.x+(ie-$t.y)/(vr.y-$t.y)*(vr.x-$t.x),ie)._round()),ut&&$t.equals(ut[ut.length-1])||(ut=[$t],ve.push(ut)),ut.push(vr)))))}}return ve}Mi("FeatureIndex",cg,{omit:["rawTileData","sourceLayerCoder"]});class pm extends l{constructor(S,D,X,ie){super(S,D),this.angle=X,ie!==void 0&&(this.segment=ie)}clone(){return new pm(this.x,this.y,this.angle,this.segment)}}function mM(I,S,D,X,ie){if(S.segment===void 0||D===0)return!0;let ve=S,we=S.segment+1,We=0;for(;We>-D/2;){if(we--,we<0)return!1;We-=I[we].dist(ve),ve=I[we]}We+=I[we].dist(I[we+1]),we++;let ut=[],Mt=0;for(;WeX;)Mt-=ut.shift().angleDelta;if(Mt>ie)return!1;we++,We+=$t.dist(vr)}return!0}function FC(I){let S=0;for(let D=0;DMt){let Jr=(Mt-ut)/Dr,ui=ka.number(vr.x,Sr.x,Jr),Gi=ka.number(vr.y,Sr.y,Jr),cn=new pm(ui,Gi,Sr.angleTo(vr),$t);return cn._round(),!we||mM(I,cn,We,we,S)?cn:void 0}ut+=Dr}}function u9(I,S,D,X,ie,ve,we,We,ut){let Mt=BC(X,ve,we),$t=OC(X,ie),vr=$t*we,Sr=I[0].x===0||I[0].x===ut||I[0].y===0||I[0].y===ut;return S-vr=0&&La=0&&So=0&&Sr+Mt<=$t){let kl=new pm(La,So,Za,Jr);kl._round(),X&&!mM(I,kl,ve,X,ie)||Dr.push(kl)}}vr+=cn}return We||Dr.length||we||(Dr=qC(I,vr/2,D,X,ie,ve,we,!0,ut)),Dr}Mi("Anchor",pm);let k1=kd;function NC(I,S,D,X){let ie=[],ve=I.image,we=ve.pixelRatio,We=ve.paddedRect.w-2*k1,ut=ve.paddedRect.h-2*k1,Mt={x1:I.left,y1:I.top,x2:I.right,y2:I.bottom},$t=ve.stretchX||[[0,We]],vr=ve.stretchY||[[0,ut]],Sr=(Xs,Lu)=>Xs+Lu[1]-Lu[0],Dr=$t.reduce(Sr,0),Jr=vr.reduce(Sr,0),ui=We-Dr,Gi=ut-Jr,cn=0,Za=Dr,Rn=0,La=Jr,So=0,kl=ui,mu=0,Iu=Gi;if(ve.content&&X){let Xs=ve.content,Lu=Xs[2]-Xs[0],xu=Xs[3]-Xs[1];(ve.textFitWidth||ve.textFitHeight)&&(Mt=TC(I)),cn=vm($t,0,Xs[0]),Rn=vm(vr,0,Xs[1]),Za=vm($t,Xs[0],Xs[2]),La=vm(vr,Xs[1],Xs[3]),So=Xs[0]-cn,mu=Xs[1]-Rn,kl=Lu-Za,Iu=xu-La}let su=Mt.x1,yl=Mt.y1,Eu=Mt.x2-su,bu=Mt.y2-yl,_u=(Xs,Lu,xu,qu)=>{let vc=Ow(Xs.stretch-cn,Za,Eu,su),cc=C1(Xs.fixed-So,kl,Xs.stretch,Dr),zh=Ow(Lu.stretch-Rn,La,bu,yl),Qp=C1(Lu.fixed-mu,Iu,Lu.stretch,Jr),ud=Ow(xu.stretch-cn,Za,Eu,su),Ih=C1(xu.fixed-So,kl,xu.stretch,Dr),Wd=Ow(qu.stretch-Rn,La,bu,yl),jd=C1(qu.fixed-mu,Iu,qu.stretch,Jr),Xd=new l(vc,zh),$c=new l(ud,zh),Rh=new l(ud,Wd),Cd=new l(vc,Wd),fd=new l(cc/we,Qp/we),Yh=new l(Ih/we,jd/we),ih=S*Math.PI/180;if(ih){let jf=Math.sin(ih),Tc=Math.cos(ih),mc=[Tc,-jf,jf,Tc];Xd._matMult(mc),$c._matMult(mc),Cd._matMult(mc),Rh._matMult(mc)}let Dp=Xs.stretch+Xs.fixed,fp=Lu.stretch+Lu.fixed;return{tl:Xd,tr:$c,bl:Cd,br:Rh,tex:{x:ve.paddedRect.x+k1+Dp,y:ve.paddedRect.y+k1+fp,w:xu.stretch+xu.fixed-Dp,h:qu.stretch+qu.fixed-fp},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:fd,pixelOffsetBR:Yh,minFontScaleX:kl/we/Eu,minFontScaleY:Iu/we/bu,isSDF:D}};if(X&&(ve.stretchX||ve.stretchY)){let Xs=UC($t,ui,Dr),Lu=UC(vr,Gi,Jr);for(let xu=0;xu0&&(ui=Math.max(10,ui),this.circleDiameter=ui)}else{let Sr=!((vr=we.image)===null||vr===void 0)&&vr.content&&(we.image.textFitWidth||we.image.textFitHeight)?TC(we):{x1:we.left,y1:we.top,x2:we.right,y2:we.bottom};Sr.y1=Sr.y1*We-ut[0],Sr.y2=Sr.y2*We+ut[2],Sr.x1=Sr.x1*We-ut[3],Sr.x2=Sr.x2*We+ut[1];let Dr=we.collisionPadding;if(Dr&&(Sr.x1-=Dr[0]*We,Sr.y1-=Dr[1]*We,Sr.x2+=Dr[2]*We,Sr.y2+=Dr[3]*We),$t){let Jr=new l(Sr.x1,Sr.y1),ui=new l(Sr.x2,Sr.y1),Gi=new l(Sr.x1,Sr.y2),cn=new l(Sr.x2,Sr.y2),Za=$t*Math.PI/180;Jr._rotate(Za),ui._rotate(Za),Gi._rotate(Za),cn._rotate(Za),Sr.x1=Math.min(Jr.x,ui.x,Gi.x,cn.x),Sr.x2=Math.max(Jr.x,ui.x,Gi.x,cn.x),Sr.y1=Math.min(Jr.y,ui.y,Gi.y,cn.y),Sr.y2=Math.max(Jr.y,ui.y,Gi.y,cn.y)}S.emplaceBack(D.x,D.y,Sr.x1,Sr.y1,Sr.x2,Sr.y2,X,ie,ve)}this.boxEndIndex=S.length}}class Vv{constructor(S=[],D=(X,ie)=>Xie?1:0){if(this.data=S,this.length=this.data.length,this.compare=D,this.length>0)for(let X=(this.length>>1)-1;X>=0;X--)this._down(X)}push(S){this.data.push(S),this._up(this.length++)}pop(){if(this.length===0)return;let S=this.data[0],D=this.data.pop();return--this.length>0&&(this.data[0]=D,this._down(0)),S}peek(){return this.data[0]}_up(S){let{data:D,compare:X}=this,ie=D[S];for(;S>0;){let ve=S-1>>1,we=D[ve];if(X(ie,we)>=0)break;D[S]=we,S=ve}D[S]=ie}_down(S){let{data:D,compare:X}=this,ie=this.length>>1,ve=D[S];for(;S=0)break;D[S]=D[we],S=we}D[S]=ve}}function f9(I,S=1,D=!1){let X=1/0,ie=1/0,ve=-1/0,we=-1/0,We=I[0];for(let Dr=0;Drve)&&(ve=Jr.x),(!Dr||Jr.y>we)&&(we=Jr.y)}let ut=Math.min(ve-X,we-ie),Mt=ut/2,$t=new Vv([],c9);if(ut===0)return new l(X,ie);for(let Dr=X;Drvr.d||!vr.d)&&(vr=Dr,D&&console.log("found best %d after %d probes",Math.round(1e4*Dr.d)/1e4,Sr)),Dr.max-vr.d<=S||(Mt=Dr.h/2,$t.push(new L1(Dr.p.x-Mt,Dr.p.y-Mt,Mt,I)),$t.push(new L1(Dr.p.x+Mt,Dr.p.y-Mt,Mt,I)),$t.push(new L1(Dr.p.x-Mt,Dr.p.y+Mt,Mt,I)),$t.push(new L1(Dr.p.x+Mt,Dr.p.y+Mt,Mt,I)),Sr+=4)}return D&&(console.log(`num probes: ${Sr}`),console.log(`best distance: ${vr.d}`)),vr.p}function c9(I,S){return S.max-I.max}function L1(I,S,D,X){this.p=new l(I,S),this.h=D,this.d=function(ie,ve){let we=!1,We=1/0;for(let ut=0;utie.y!=Jr.y>ie.y&&ie.x<(Jr.x-Dr.x)*(ie.y-Dr.y)/(Jr.y-Dr.y)+Dr.x&&(we=!we),We=Math.min(We,vi(ie,Dr,Jr))}}return(we?1:-1)*Math.sqrt(We)}(this.p,X),this.max=this.d+this.h*Math.SQRT2}var ld;i.aq=void 0,(ld=i.aq||(i.aq={}))[ld.center=1]="center",ld[ld.left=2]="left",ld[ld.right=3]="right",ld[ld.top=4]="top",ld[ld.bottom=5]="bottom",ld[ld["top-left"]=6]="top-left",ld[ld["top-right"]=7]="top-right",ld[ld["bottom-left"]=8]="bottom-left",ld[ld["bottom-right"]=9]="bottom-right";let cy=7,hg=Number.POSITIVE_INFINITY;function yM(I,S){return S[1]!==hg?function(D,X,ie){let ve=0,we=0;switch(X=Math.abs(X),ie=Math.abs(ie),D){case"top-right":case"top-left":case"top":we=ie-cy;break;case"bottom-right":case"bottom-left":case"bottom":we=-ie+cy}switch(D){case"top-right":case"bottom-right":case"right":ve=-X;break;case"top-left":case"bottom-left":case"left":ve=X}return[ve,we]}(I,S[0],S[1]):function(D,X){let ie=0,ve=0;X<0&&(X=0);let we=X/Math.SQRT2;switch(D){case"top-right":case"top-left":ve=we-cy;break;case"bottom-right":case"bottom-left":ve=-we+cy;break;case"bottom":ve=-X+cy;break;case"top":ve=X-cy}switch(D){case"top-right":case"bottom-right":ie=-we;break;case"top-left":case"bottom-left":ie=we;break;case"left":ie=X;break;case"right":ie=-X}return[ie,ve]}(I,S[0])}function VC(I,S,D){var X;let ie=I.layout,ve=(X=ie.get("text-variable-anchor-offset"))===null||X===void 0?void 0:X.evaluate(S,{},D);if(ve){let We=ve.values,ut=[];for(let Mt=0;MtSr*Wf);$t.startsWith("top")?vr[1]-=cy:$t.startsWith("bottom")&&(vr[1]+=cy),ut[Mt+1]=vr}return new jr(ut)}let we=ie.get("text-variable-anchor");if(we){let We;We=I._unevaluatedLayout.getValue("text-radial-offset")!==void 0?[ie.get("text-radial-offset").evaluate(S,{},D)*Wf,hg]:ie.get("text-offset").evaluate(S,{},D).map(Mt=>Mt*Wf);let ut=[];for(let Mt of we)ut.push(Mt,yM(Mt,We));return new jr(ut)}return null}function gM(I){switch(I){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function h9(I,S,D,X,ie,ve,we,We,ut,Mt,$t){let vr=ve.textMaxSize.evaluate(S,{});vr===void 0&&(vr=we);let Sr=I.layers[0].layout,Dr=Sr.get("icon-offset").evaluate(S,{},$t),Jr=HC(D.horizontal),ui=we/24,Gi=I.tilePixelRatio*ui,cn=I.tilePixelRatio*vr/24,Za=I.tilePixelRatio*We,Rn=I.tilePixelRatio*Sr.get("symbol-spacing"),La=Sr.get("text-padding")*I.tilePixelRatio,So=function(Xs,Lu,xu,qu=1){let vc=Xs.get("icon-padding").evaluate(Lu,{},xu),cc=vc&&vc.values;return[cc[0]*qu,cc[1]*qu,cc[2]*qu,cc[3]*qu]}(Sr,S,$t,I.tilePixelRatio),kl=Sr.get("text-max-angle")/180*Math.PI,mu=Sr.get("text-rotation-alignment")!=="viewport"&&Sr.get("symbol-placement")!=="point",Iu=Sr.get("icon-rotation-alignment")==="map"&&Sr.get("symbol-placement")!=="point",su=Sr.get("symbol-placement"),yl=Rn/2,Eu=Sr.get("icon-text-fit"),bu;X&&Eu!=="none"&&(I.allowVerticalPlacement&&D.vertical&&(bu=AC(X,D.vertical,Eu,Sr.get("icon-text-fit-padding"),Dr,ui)),Jr&&(X=AC(X,Jr,Eu,Sr.get("icon-text-fit-padding"),Dr,ui)));let _u=(Xs,Lu)=>{Lu.x<0||Lu.x>=Wl||Lu.y<0||Lu.y>=Wl||function(xu,qu,vc,cc,zh,Qp,ud,Ih,Wd,jd,Xd,$c,Rh,Cd,fd,Yh,ih,Dp,fp,jf,Tc,mc,Fp,Hc,P1){let p0=xu.addToLineVertexArray(qu,vc),Gv,ev,Rc,fh,tv=0,mm=0,cp=0,z1=0,TM=-1,Vw=-1,v0={},dg=fn("");if(xu.allowVerticalPlacement&&cc.vertical){let Ld=Ih.layout.get("text-rotate").evaluate(Tc,{},Hc)+90;Rc=new fy(Wd,qu,jd,Xd,$c,cc.vertical,Rh,Cd,fd,Ld),ud&&(fh=new fy(Wd,qu,jd,Xd,$c,ud,ih,Dp,fd,Ld))}if(zh){let Ld=Ih.layout.get("icon-rotate").evaluate(Tc,{}),rv=Ih.layout.get("icon-text-fit")!=="none",hy=NC(zh,Ld,Fp,rv),Zd=ud?NC(ud,Ld,Fp,rv):void 0;ev=new fy(Wd,qu,jd,Xd,$c,zh,ih,Dp,!1,Ld),tv=4*hy.length;let Pd=xu.iconSizeData,_v=null;Pd.kind==="source"?(_v=[d0*Ih.layout.get("icon-size").evaluate(Tc,{})],_v[0]>ly&&T(`${xu.layerIds[0]}: Value for "icon-size" is >= ${jx}. Reduce your "icon-size".`)):Pd.kind==="composite"&&(_v=[d0*mc.compositeIconSizes[0].evaluate(Tc,{},Hc),d0*mc.compositeIconSizes[1].evaluate(Tc,{},Hc)],(_v[0]>ly||_v[1]>ly)&&T(`${xu.layerIds[0]}: Value for "icon-size" is >= ${jx}. Reduce your "icon-size".`)),xu.addSymbols(xu.icon,hy,_v,jf,fp,Tc,i.ah.none,qu,p0.lineStartIndex,p0.lineLength,-1,Hc),TM=xu.icon.placedSymbolArray.length-1,Zd&&(mm=4*Zd.length,xu.addSymbols(xu.icon,Zd,_v,jf,fp,Tc,i.ah.vertical,qu,p0.lineStartIndex,p0.lineLength,-1,Hc),Vw=xu.icon.placedSymbolArray.length-1)}let Kh=Object.keys(cc.horizontal);for(let Ld of Kh){let rv=cc.horizontal[Ld];if(!Gv){dg=fn(rv.text);let Zd=Ih.layout.get("text-rotate").evaluate(Tc,{},Hc);Gv=new fy(Wd,qu,jd,Xd,$c,rv,Rh,Cd,fd,Zd)}let hy=rv.positionedLines.length===1;if(cp+=GC(xu,qu,rv,Qp,Ih,fd,Tc,Yh,p0,cc.vertical?i.ah.horizontal:i.ah.horizontalOnly,hy?Kh:[Ld],v0,TM,mc,Hc),hy)break}cc.vertical&&(z1+=GC(xu,qu,cc.vertical,Qp,Ih,fd,Tc,Yh,p0,i.ah.vertical,["vertical"],v0,Vw,mc,Hc));let v9=Gv?Gv.boxStartIndex:xu.collisionBoxArray.length,Gw=Gv?Gv.boxEndIndex:xu.collisionBoxArray.length,m0=Rc?Rc.boxStartIndex:xu.collisionBoxArray.length,hp=Rc?Rc.boxEndIndex:xu.collisionBoxArray.length,ZC=ev?ev.boxStartIndex:xu.collisionBoxArray.length,m9=ev?ev.boxEndIndex:xu.collisionBoxArray.length,YC=fh?fh.boxStartIndex:xu.collisionBoxArray.length,y9=fh?fh.boxEndIndex:xu.collisionBoxArray.length,gv=-1,rb=(Ld,rv)=>Ld&&Ld.circleDiameter?Math.max(Ld.circleDiameter,rv):rv;gv=rb(Gv,gv),gv=rb(Rc,gv),gv=rb(ev,gv),gv=rb(fh,gv);let Hw=gv>-1?1:0;Hw&&(gv*=P1/Wf),xu.glyphOffsetArray.length>=M1.MAX_GLYPHS&&T("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),Tc.sortKey!==void 0&&xu.addToSortKeyRanges(xu.symbolInstances.length,Tc.sortKey);let AM=VC(Ih,Tc,Hc),[g9,_9]=function(Ld,rv){let hy=Ld.length,Zd=rv==null?void 0:rv.values;if((Zd==null?void 0:Zd.length)>0)for(let Pd=0;Pd=0?v0.right:-1,v0.center>=0?v0.center:-1,v0.left>=0?v0.left:-1,v0.vertical||-1,TM,Vw,dg,v9,Gw,m0,hp,ZC,m9,YC,y9,jd,cp,z1,tv,mm,Hw,0,Rh,gv,g9,_9)}(I,Lu,Xs,D,X,ie,bu,I.layers[0],I.collisionBoxArray,S.index,S.sourceLayerIndex,I.index,Gi,[La,La,La,La],mu,ut,Za,So,Iu,Dr,S,ve,Mt,$t,we)};if(su==="line")for(let Xs of DC(S.geometry,0,0,Wl,Wl)){let Lu=u9(Xs,Rn,kl,D.vertical||Jr,X,24,cn,I.overscaling,Wl);for(let xu of Lu)Jr&&d9(I,Jr.text,yl,xu)||_u(Xs,xu)}else if(su==="line-center"){for(let Xs of S.geometry)if(Xs.length>1){let Lu=l9(Xs,kl,D.vertical||Jr,X,24,cn);Lu&&_u(Xs,Lu)}}else if(S.type==="Polygon")for(let Xs of Ys(S.geometry,0)){let Lu=f9(Xs,16);_u(Xs[0],new pm(Lu.x,Lu.y,0))}else if(S.type==="LineString")for(let Xs of S.geometry)_u(Xs,new pm(Xs[0].x,Xs[0].y,0));else if(S.type==="Point")for(let Xs of S.geometry)for(let Lu of Xs)_u([Lu],new pm(Lu.x,Lu.y,0))}function GC(I,S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr){let ui=function(Za,Rn,La,So,kl,mu,Iu,su){let yl=So.layout.get("text-rotate").evaluate(mu,{})*Math.PI/180,Eu=[];for(let bu of Rn.positionedLines)for(let _u of bu.positionedGlyphs){if(!_u.rect)continue;let Xs=_u.rect||{},Lu=_C+1,xu=!0,qu=1,vc=0,cc=(kl||su)&&_u.vertical,zh=_u.metrics.advance*_u.scale/2;if(su&&Rn.verticalizable&&(vc=bu.lineOffset/2-(_u.imageName?-(Wf-_u.metrics.width*_u.scale)/2:(_u.scale-1)*Wf)),_u.imageName){let jf=Iu[_u.imageName];xu=jf.sdf,qu=jf.pixelRatio,Lu=kd/qu}let Qp=kl?[_u.x+zh,_u.y]:[0,0],ud=kl?[0,0]:[_u.x+zh+La[0],_u.y+La[1]-vc],Ih=[0,0];cc&&(Ih=ud,ud=[0,0]);let Wd=_u.metrics.isDoubleResolution?2:1,jd=(_u.metrics.left-Lu)*_u.scale-zh+ud[0],Xd=(-_u.metrics.top-Lu)*_u.scale+ud[1],$c=jd+Xs.w/Wd*_u.scale/qu,Rh=Xd+Xs.h/Wd*_u.scale/qu,Cd=new l(jd,Xd),fd=new l($c,Xd),Yh=new l(jd,Rh),ih=new l($c,Rh);if(cc){let jf=new l(-zh,zh-Ph),Tc=-Math.PI/2,mc=Wf/2-zh,Fp=new l(5-Ph-mc,-(_u.imageName?mc:0)),Hc=new l(...Ih);Cd._rotateAround(Tc,jf)._add(Fp)._add(Hc),fd._rotateAround(Tc,jf)._add(Fp)._add(Hc),Yh._rotateAround(Tc,jf)._add(Fp)._add(Hc),ih._rotateAround(Tc,jf)._add(Fp)._add(Hc)}if(yl){let jf=Math.sin(yl),Tc=Math.cos(yl),mc=[Tc,-jf,jf,Tc];Cd._matMult(mc),fd._matMult(mc),Yh._matMult(mc),ih._matMult(mc)}let Dp=new l(0,0),fp=new l(0,0);Eu.push({tl:Cd,tr:fd,bl:Yh,br:ih,tex:Xs,writingMode:Rn.writingMode,glyphOffset:Qp,sectionIndex:_u.sectionIndex,isSDF:xu,pixelOffsetTL:Dp,pixelOffsetBR:fp,minFontScaleX:0,minFontScaleY:0})}return Eu}(0,D,We,ie,ve,we,X,I.allowVerticalPlacement),Gi=I.textSizeData,cn=null;Gi.kind==="source"?(cn=[d0*ie.layout.get("text-size").evaluate(we,{})],cn[0]>ly&&T(`${I.layerIds[0]}: Value for "text-size" is >= ${jx}. Reduce your "text-size".`)):Gi.kind==="composite"&&(cn=[d0*Dr.compositeTextSizes[0].evaluate(we,{},Jr),d0*Dr.compositeTextSizes[1].evaluate(we,{},Jr)],(cn[0]>ly||cn[1]>ly)&&T(`${I.layerIds[0]}: Value for "text-size" is >= ${jx}. Reduce your "text-size".`)),I.addSymbols(I.text,ui,cn,We,ve,we,Mt,S,ut.lineStartIndex,ut.lineLength,Sr,Jr);for(let Za of $t)vr[Za]=I.text.placedSymbolArray.length-1;return 4*ui.length}function HC(I){for(let S in I)return I[S];return null}function d9(I,S,D,X){let ie=I.compareText;if(S in ie){let ve=ie[S];for(let we=ve.length-1;we>=0;we--)if(X.dist(ve[we])>4;if(ie!==1)throw new Error(`Got v${ie} data when expected v1.`);let ve=WC[15&X];if(!ve)throw new Error("Unrecognized array type.");let[we]=new Uint16Array(S,2,1),[We]=new Uint32Array(S,4,1);return new _M(We,we,ve,S)}constructor(S,D=64,X=Float64Array,ie){if(isNaN(S)||S<0)throw new Error(`Unpexpected numItems value: ${S}.`);this.numItems=+S,this.nodeSize=Math.min(Math.max(+D,2),65535),this.ArrayType=X,this.IndexArrayType=S<65536?Uint16Array:Uint32Array;let ve=WC.indexOf(this.ArrayType),we=2*S*this.ArrayType.BYTES_PER_ELEMENT,We=S*this.IndexArrayType.BYTES_PER_ELEMENT,ut=(8-We%8)%8;if(ve<0)throw new Error(`Unexpected typed array class: ${X}.`);ie&&ie instanceof ArrayBuffer?(this.data=ie,this.ids=new this.IndexArrayType(this.data,8,S),this.coords=new this.ArrayType(this.data,8+We+ut,2*S),this._pos=2*S,this._finished=!0):(this.data=new ArrayBuffer(8+we+We+ut),this.ids=new this.IndexArrayType(this.data,8,S),this.coords=new this.ArrayType(this.data,8+We+ut,2*S),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+ve]),new Uint16Array(this.data,2,1)[0]=D,new Uint32Array(this.data,4,1)[0]=S)}add(S,D){let X=this._pos>>1;return this.ids[X]=X,this.coords[this._pos++]=S,this.coords[this._pos++]=D,X}finish(){let S=this._pos>>1;if(S!==this.numItems)throw new Error(`Added ${S} items when expected ${this.numItems}.`);return qw(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(S,D,X,ie){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:ve,coords:we,nodeSize:We}=this,ut=[0,ve.length-1,0],Mt=[];for(;ut.length;){let $t=ut.pop()||0,vr=ut.pop()||0,Sr=ut.pop()||0;if(vr-Sr<=We){for(let Gi=Sr;Gi<=vr;Gi++){let cn=we[2*Gi],Za=we[2*Gi+1];cn>=S&&cn<=X&&Za>=D&&Za<=ie&&Mt.push(ve[Gi])}continue}let Dr=Sr+vr>>1,Jr=we[2*Dr],ui=we[2*Dr+1];Jr>=S&&Jr<=X&&ui>=D&&ui<=ie&&Mt.push(ve[Dr]),($t===0?S<=Jr:D<=ui)&&(ut.push(Sr),ut.push(Dr-1),ut.push(1-$t)),($t===0?X>=Jr:ie>=ui)&&(ut.push(Dr+1),ut.push(vr),ut.push(1-$t))}return Mt}within(S,D,X){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:ie,coords:ve,nodeSize:we}=this,We=[0,ie.length-1,0],ut=[],Mt=X*X;for(;We.length;){let $t=We.pop()||0,vr=We.pop()||0,Sr=We.pop()||0;if(vr-Sr<=we){for(let Gi=Sr;Gi<=vr;Gi++)XC(ve[2*Gi],ve[2*Gi+1],S,D)<=Mt&&ut.push(ie[Gi]);continue}let Dr=Sr+vr>>1,Jr=ve[2*Dr],ui=ve[2*Dr+1];XC(Jr,ui,S,D)<=Mt&&ut.push(ie[Dr]),($t===0?S-X<=Jr:D-X<=ui)&&(We.push(Sr),We.push(Dr-1),We.push(1-$t)),($t===0?S+X>=Jr:D+X>=ui)&&(We.push(Dr+1),We.push(vr),We.push(1-$t))}return ut}}function qw(I,S,D,X,ie,ve){if(ie-X<=D)return;let we=X+ie>>1;jC(I,S,we,X,ie,ve),qw(I,S,D,X,we-1,1-ve),qw(I,S,D,we+1,ie,1-ve)}function jC(I,S,D,X,ie,ve){for(;ie>X;){if(ie-X>600){let Mt=ie-X+1,$t=D-X+1,vr=Math.log(Mt),Sr=.5*Math.exp(2*vr/3),Dr=.5*Math.sqrt(vr*Sr*(Mt-Sr)/Mt)*($t-Mt/2<0?-1:1);jC(I,S,D,Math.max(X,Math.floor(D-$t*Sr/Mt+Dr)),Math.min(ie,Math.floor(D+(Mt-$t)*Sr/Mt+Dr)),ve)}let we=S[2*D+ve],We=X,ut=ie;for(eb(I,S,X,D),S[2*ie+ve]>we&&eb(I,S,X,ie);Wewe;)ut--}S[2*X+ve]===we?eb(I,S,X,ut):(ut++,eb(I,S,ut,ie)),ut<=D&&(X=ut+1),D<=ut&&(ie=ut-1)}}function eb(I,S,D,X){xM(I,D,X),xM(S,2*D,2*X),xM(S,2*D+1,2*X+1)}function xM(I,S,D){let X=I[S];I[S]=I[D],I[D]=X}function XC(I,S,D,X){let ie=I-D,ve=S-X;return ie*ie+ve*ve}var Nw;i.bg=void 0,(Nw=i.bg||(i.bg={})).create="create",Nw.load="load",Nw.fullLoad="fullLoad";let tb=null,mh=[],bM=1e3/60,wM="loadTime",Uw="fullLoadTime",p9={mark(I){performance.mark(I)},frame(I){let S=I;tb!=null&&mh.push(S-tb),tb=S},clearMetrics(){tb=null,mh=[],performance.clearMeasures(wM),performance.clearMeasures(Uw);for(let I in i.bg)performance.clearMarks(i.bg[I])},getPerformanceMetrics(){performance.measure(wM,i.bg.create,i.bg.load),performance.measure(Uw,i.bg.create,i.bg.fullLoad);let I=performance.getEntriesByName(wM)[0].duration,S=performance.getEntriesByName(Uw)[0].duration,D=mh.length,X=1/(mh.reduce((ve,we)=>ve+we,0)/D/1e3),ie=mh.filter(ve=>ve>bM).reduce((ve,we)=>ve+(we-bM)/bM,0);return{loadTime:I,fullLoadTime:S,fps:X,percentDroppedFrames:ie/(D+ie)*100,totalFrames:D}}};i.$=class extends ir{},i.A=dn,i.B=Ci,i.C=function(I){if(U==null){let S=I.navigator?I.navigator.userAgent:null;U=!!I.safari||!(!S||!(/\b(iPad|iPhone|iPod)\b/.test(S)||S.match("Safari")&&!S.match("Chrome")))}return U},i.D=ms,i.E=qe,i.F=class{constructor(I,S){this.target=I,this.mapId=S,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new hM(()=>this.process()),this.subscription=function(D,X,ie,ve){return D.addEventListener(X,ie,!1),{unsubscribe:()=>{D.removeEventListener(X,ie,!1)}}}(this.target,"message",D=>this.receive(D)),this.globalScope=F(self)?I:window}registerMessageHandler(I,S){this.messageHandlers[I]=S}sendAsync(I,S){return new Promise((D,X)=>{let ie=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[ie]={resolve:D,reject:X},S&&S.signal.addEventListener("abort",()=>{delete this.resolveRejects[ie];let We={id:ie,type:"",origin:location.origin,targetMapId:I.targetMapId,sourceMapId:this.mapId};this.target.postMessage(We)},{once:!0});let ve=[],we=Object.assign(Object.assign({},I),{id:ie,sourceMapId:this.mapId,origin:location.origin,data:ia(I.data,ve)});this.target.postMessage(we,{transfer:ve})})}receive(I){let S=I.data,D=S.id;if(!(S.origin!=="file://"&&location.origin!=="file://"&&S.origin!=="resource://android"&&location.origin!=="resource://android"&&S.origin!==location.origin||S.targetMapId&&this.mapId!==S.targetMapId)){if(S.type===""){delete this.tasks[D];let X=this.abortControllers[D];return delete this.abortControllers[D],void(X&&X.abort())}if(F(self)||S.mustQueue)return this.tasks[D]=S,this.taskQueue.push(D),void this.invoker.trigger();this.processTask(D,S)}}process(){if(this.taskQueue.length===0)return;let I=this.taskQueue.shift(),S=this.tasks[I];delete this.tasks[I],this.taskQueue.length>0&&this.invoker.trigger(),S&&this.processTask(I,S)}processTask(I,S){return a(this,void 0,void 0,function*(){if(S.type===""){let ie=this.resolveRejects[I];return delete this.resolveRejects[I],ie?void(S.error?ie.reject(pa(S.error)):ie.resolve(pa(S.data))):void 0}if(!this.messageHandlers[S.type])return void this.completeTask(I,new Error(`Could not find a registered handler for ${S.type}, map ID: ${this.mapId}, available handlers: ${Object.keys(this.messageHandlers).join(", ")}`));let D=pa(S.data),X=new AbortController;this.abortControllers[I]=X;try{let ie=yield this.messageHandlers[S.type](S.sourceMapId,D,X);this.completeTask(I,null,ie)}catch(ie){this.completeTask(I,ie)}})}completeTask(I,S,D){let X=[];delete this.abortControllers[I];let ie={id:I,type:"",sourceMapId:this.mapId,origin:location.origin,error:S?ia(S):null,data:ia(D,X)};this.target.postMessage(ie,{transfer:X})}remove(){this.invoker.remove(),this.subscription.unsubscribe()}},i.G=Ce,i.H=function(){var I=new dn(16);return dn!=Float32Array&&(I[1]=0,I[2]=0,I[3]=0,I[4]=0,I[6]=0,I[7]=0,I[8]=0,I[9]=0,I[11]=0,I[12]=0,I[13]=0,I[14]=0),I[0]=1,I[5]=1,I[10]=1,I[15]=1,I},i.I=Cw,i.J=function(I,S,D){var X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr,ui=D[0],Gi=D[1],cn=D[2];return S===I?(I[12]=S[0]*ui+S[4]*Gi+S[8]*cn+S[12],I[13]=S[1]*ui+S[5]*Gi+S[9]*cn+S[13],I[14]=S[2]*ui+S[6]*Gi+S[10]*cn+S[14],I[15]=S[3]*ui+S[7]*Gi+S[11]*cn+S[15]):(ie=S[1],ve=S[2],we=S[3],We=S[4],ut=S[5],Mt=S[6],$t=S[7],vr=S[8],Sr=S[9],Dr=S[10],Jr=S[11],I[0]=X=S[0],I[1]=ie,I[2]=ve,I[3]=we,I[4]=We,I[5]=ut,I[6]=Mt,I[7]=$t,I[8]=vr,I[9]=Sr,I[10]=Dr,I[11]=Jr,I[12]=X*ui+We*Gi+vr*cn+S[12],I[13]=ie*ui+ut*Gi+Sr*cn+S[13],I[14]=ve*ui+Mt*Gi+Dr*cn+S[14],I[15]=we*ui+$t*Gi+Jr*cn+S[15]),I},i.K=function(I,S,D){var X=D[0],ie=D[1],ve=D[2];return I[0]=S[0]*X,I[1]=S[1]*X,I[2]=S[2]*X,I[3]=S[3]*X,I[4]=S[4]*ie,I[5]=S[5]*ie,I[6]=S[6]*ie,I[7]=S[7]*ie,I[8]=S[8]*ve,I[9]=S[9]*ve,I[10]=S[10]*ve,I[11]=S[11]*ve,I[12]=S[12],I[13]=S[13],I[14]=S[14],I[15]=S[15],I},i.L=Zi,i.M=function(I,S){let D={};for(let X=0;X{let S=window.document.createElement("video");return S.muted=!0,new Promise(D=>{S.onloadstart=()=>{D(S)};for(let X of I){let ie=window.document.createElement("source");Ee(X)||(S.crossOrigin="Anonymous"),ie.src=X,S.appendChild(ie)}})},i.a4=function(){return x++},i.a5=Ua,i.a6=M1,i.a7=Jn,i.a8=hf,i.a9=vM,i.aA=function(I){if(I.type==="custom")return new cM(I);switch(I.type){case"background":return new o9(I);case"circle":return new Ji(I);case"fill":return new Ot(I);case"fill-extrusion":return new Td(I);case"heatmap":return new pl(I);case"hillshade":return new vf(I);case"line":return new og(I);case"raster":return new Kx(I);case"symbol":return new fg(I)}},i.aB=m,i.aC=function(I,S){if(!I)return[{command:"setStyle",args:[S]}];let D=[];try{if(!gt(I.version,S.version))return[{command:"setStyle",args:[S]}];gt(I.center,S.center)||D.push({command:"setCenter",args:[S.center]}),gt(I.zoom,S.zoom)||D.push({command:"setZoom",args:[S.zoom]}),gt(I.bearing,S.bearing)||D.push({command:"setBearing",args:[S.bearing]}),gt(I.pitch,S.pitch)||D.push({command:"setPitch",args:[S.pitch]}),gt(I.sprite,S.sprite)||D.push({command:"setSprite",args:[S.sprite]}),gt(I.glyphs,S.glyphs)||D.push({command:"setGlyphs",args:[S.glyphs]}),gt(I.transition,S.transition)||D.push({command:"setTransition",args:[S.transition]}),gt(I.light,S.light)||D.push({command:"setLight",args:[S.light]}),gt(I.terrain,S.terrain)||D.push({command:"setTerrain",args:[S.terrain]}),gt(I.sky,S.sky)||D.push({command:"setSky",args:[S.sky]}),gt(I.projection,S.projection)||D.push({command:"setProjection",args:[S.projection]});let X={},ie=[];(function(we,We,ut,Mt){let $t;for($t in We=We||{},we=we||{})Object.prototype.hasOwnProperty.call(we,$t)&&(Object.prototype.hasOwnProperty.call(We,$t)||Ke($t,ut,Mt));for($t in We)Object.prototype.hasOwnProperty.call(We,$t)&&(Object.prototype.hasOwnProperty.call(we,$t)?gt(we[$t],We[$t])||(we[$t].type==="geojson"&&We[$t].type==="geojson"&&wt(we,We,$t)?Nt(ut,{command:"setGeoJSONSourceData",args:[$t,We[$t].data]}):Ct($t,We,ut,Mt)):at($t,We,ut))})(I.sources,S.sources,ie,X);let ve=[];I.layers&&I.layers.forEach(we=>{"source"in we&&X[we.source]?D.push({command:"removeLayer",args:[we.id]}):ve.push(we)}),D=D.concat(ie),function(we,We,ut){We=We||[];let Mt=(we=we||[]).map(Dt),$t=We.map(Dt),vr=we.reduce(Zt,{}),Sr=We.reduce(Zt,{}),Dr=Mt.slice(),Jr=Object.create(null),ui,Gi,cn,Za,Rn;for(let La=0,So=0;La@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,(D,X,ie,ve)=>{let we=ie||ve;return S[X]=!we||we.toLowerCase(),""}),S["max-age"]){let D=parseInt(S["max-age"],10);isNaN(D)?delete S["max-age"]:S["max-age"]=D}return S},i.ab=function(I,S){let D=[];for(let X in I)X in S||D.push(X);return D},i.ac=E,i.ad=function(I,S,D){var X=Math.sin(D),ie=Math.cos(D),ve=S[0],we=S[1],We=S[2],ut=S[3],Mt=S[4],$t=S[5],vr=S[6],Sr=S[7];return S!==I&&(I[8]=S[8],I[9]=S[9],I[10]=S[10],I[11]=S[11],I[12]=S[12],I[13]=S[13],I[14]=S[14],I[15]=S[15]),I[0]=ve*ie+Mt*X,I[1]=we*ie+$t*X,I[2]=We*ie+vr*X,I[3]=ut*ie+Sr*X,I[4]=Mt*ie-ve*X,I[5]=$t*ie-we*X,I[6]=vr*ie-We*X,I[7]=Sr*ie-ut*X,I},i.ae=function(I){var S=new dn(16);return S[0]=I[0],S[1]=I[1],S[2]=I[2],S[3]=I[3],S[4]=I[4],S[5]=I[5],S[6]=I[6],S[7]=I[7],S[8]=I[8],S[9]=I[9],S[10]=I[10],S[11]=I[11],S[12]=I[12],S[13]=I[13],S[14]=I[14],S[15]=I[15],S},i.af=hs,i.ag=function(I,S){let D=0,X=0;if(I.kind==="constant")X=I.layoutSize;else if(I.kind!=="source"){let{interpolationType:ie,minZoom:ve,maxZoom:we}=I,We=ie?E(so.interpolationFactor(ie,S,ve,we),0,1):0;I.kind==="camera"?X=ka.number(I.minSize,I.maxSize,We):D=We}return{uSizeT:D,uSize:X}},i.ai=function(I,{uSize:S,uSizeT:D},{lowerSize:X,upperSize:ie}){return I.kind==="source"?X/d0:I.kind==="composite"?ka.number(X/d0,ie/d0,D):S},i.aj=sM,i.ak=function(I,S,D,X){let ie=S.y-I.y,ve=S.x-I.x,we=X.y-D.y,We=X.x-D.x,ut=we*ve-We*ie;if(ut===0)return null;let Mt=(We*(I.y-D.y)-we*(I.x-D.x))/ut;return new l(I.x+Mt*ve,I.y+Mt*ie)},i.al=DC,i.am=fc,i.an=En,i.ao=function(I){let S=1/0,D=1/0,X=-1/0,ie=-1/0;for(let ve of I)S=Math.min(S,ve.x),D=Math.min(D,ve.y),X=Math.max(X,ve.x),ie=Math.max(ie,ve.y);return[S,D,X,ie]},i.ap=Wf,i.ar=oM,i.as=function(I,S){var D=S[0],X=S[1],ie=S[2],ve=S[3],we=S[4],We=S[5],ut=S[6],Mt=S[7],$t=S[8],vr=S[9],Sr=S[10],Dr=S[11],Jr=S[12],ui=S[13],Gi=S[14],cn=S[15],Za=D*We-X*we,Rn=D*ut-ie*we,La=D*Mt-ve*we,So=X*ut-ie*We,kl=X*Mt-ve*We,mu=ie*Mt-ve*ut,Iu=$t*ui-vr*Jr,su=$t*Gi-Sr*Jr,yl=$t*cn-Dr*Jr,Eu=vr*Gi-Sr*ui,bu=vr*cn-Dr*ui,_u=Sr*cn-Dr*Gi,Xs=Za*_u-Rn*bu+La*Eu+So*yl-kl*su+mu*Iu;return Xs?(I[0]=(We*_u-ut*bu+Mt*Eu)*(Xs=1/Xs),I[1]=(ie*bu-X*_u-ve*Eu)*Xs,I[2]=(ui*mu-Gi*kl+cn*So)*Xs,I[3]=(Sr*kl-vr*mu-Dr*So)*Xs,I[4]=(ut*yl-we*_u-Mt*su)*Xs,I[5]=(D*_u-ie*yl+ve*su)*Xs,I[6]=(Gi*La-Jr*mu-cn*Rn)*Xs,I[7]=($t*mu-Sr*La+Dr*Rn)*Xs,I[8]=(we*bu-We*yl+Mt*Iu)*Xs,I[9]=(X*yl-D*bu-ve*Iu)*Xs,I[10]=(Jr*kl-ui*La+cn*Za)*Xs,I[11]=(vr*La-$t*kl-Dr*Za)*Xs,I[12]=(We*su-we*Eu-ut*Iu)*Xs,I[13]=(D*Eu-X*su+ie*Iu)*Xs,I[14]=(ui*Rn-Jr*So-Gi*Za)*Xs,I[15]=($t*So-vr*Rn+Sr*Za)*Xs,I):null},i.at=gM,i.au=Iw,i.av=_M,i.aw=function(){let I={},S=ce.$version;for(let D in ce.$root){let X=ce.$root[D];if(X.required){let ie=null;ie=D==="version"?S:X.type==="array"?[]:{},ie!=null&&(I[D]=ie)}}return I},i.ax=va,i.ay=te,i.az=function(I){I=I.slice();let S=Object.create(null);for(let D=0;D25||X<0||X>=1||D<0||D>=1)},i.bc=function(I,S){return I[0]=S[0],I[1]=0,I[2]=0,I[3]=0,I[4]=0,I[5]=S[1],I[6]=0,I[7]=0,I[8]=0,I[9]=0,I[10]=S[2],I[11]=0,I[12]=0,I[13]=0,I[14]=0,I[15]=1,I},i.bd=class extends Bt{},i.be=dM,i.bf=p9,i.bh=de,i.bi=function(I,S){be.REGISTERED_PROTOCOLS[I]=S},i.bj=function(I){delete be.REGISTERED_PROTOCOLS[I]},i.bk=function(I,S){let D={};for(let ie=0;ie_u*Wf)}let su=we?"center":D.get("text-justify").evaluate(Mt,{},I.canonical),yl=D.get("symbol-placement")==="point"?D.get("text-max-width").evaluate(Mt,{},I.canonical)*Wf:1/0,Eu=()=>{I.bucket.allowVerticalPlacement&&is(La)&&(Jr.vertical=Hx(ui,I.glyphMap,I.glyphPositions,I.imagePositions,$t,yl,ve,mu,"left",kl,cn,i.ah.vertical,!0,Sr,vr))};if(!we&&Iu){let bu=new Set;if(su==="auto")for(let Xs=0;Xsa(void 0,void 0,void 0,function*(){if(I.byteLength===0)return createImageBitmap(new ImageData(1,1));let S=new Blob([new Uint8Array(I)],{type:"image/png"});try{return createImageBitmap(S)}catch(D){throw new Error(`Could not load image because of ${D.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}}),i.e=L,i.f=I=>new Promise((S,D)=>{let X=new Image;X.onload=()=>{S(X),URL.revokeObjectURL(X.src),X.onload=null,window.requestAnimationFrame(()=>{X.src=j})},X.onerror=()=>D(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));let ie=new Blob([new Uint8Array(I)],{type:"image/png"});X.src=I.byteLength?URL.createObjectURL(ie):j}),i.g=ze,i.h=(I,S)=>ke(L(I,{type:"json"}),S),i.i=F,i.j=ye,i.k=De,i.l=(I,S)=>ke(L(I,{type:"arrayBuffer"}),S),i.m=ke,i.n=function(I){return new iM(I).readFields(VQ,[])},i.o=ul,i.p=aM,i.q=le,i.r=Si,i.s=Ee,i.t=Pi,i.u=_i,i.v=ce,i.w=T,i.x=function([I,S,D]){return S+=90,S*=Math.PI/180,D*=Math.PI/180,{x:I*Math.cos(S)*Math.sin(D),y:I*Math.sin(S)*Math.sin(D),z:I*Math.cos(D)}},i.y=ka,i.z=cs}),r("worker",["./shared"],function(i){"use strict";class a{constructor(xe){this.keyCache={},xe&&this.replace(xe)}replace(xe){this._layerConfigs={},this._layers={},this.update(xe,[])}update(xe,Oe){for(let Fe of xe){this._layerConfigs[Fe.id]=Fe;let ft=this._layers[Fe.id]=i.aA(Fe);ft._featureFilter=i.a7(ft.filter),this.keyCache[Fe.id]&&delete this.keyCache[Fe.id]}for(let Fe of Oe)delete this.keyCache[Fe],delete this._layerConfigs[Fe],delete this._layers[Fe];this.familiesBySource={};let Ie=i.bk(Object.values(this._layerConfigs),this.keyCache);for(let Fe of Ie){let ft=Fe.map(zt=>this._layers[zt.id]),ge=ft[0];if(ge.visibility==="none")continue;let fe=ge.source||"",pe=this.familiesBySource[fe];pe||(pe=this.familiesBySource[fe]={});let dt=ge.sourceLayer||"_geojsonTileLayer",Pt=pe[dt];Pt||(Pt=pe[dt]=[]),Pt.push(ft)}}}class o{constructor(xe){let Oe={},Ie=[];for(let fe in xe){let pe=xe[fe],dt=Oe[fe]={};for(let Pt in pe){let zt=pe[+Pt];if(!zt||zt.bitmap.width===0||zt.bitmap.height===0)continue;let rr={x:0,y:0,w:zt.bitmap.width+2,h:zt.bitmap.height+2};Ie.push(rr),dt[Pt]={rect:rr,metrics:zt.metrics}}}let{w:Fe,h:ft}=i.p(Ie),ge=new i.o({width:Fe||1,height:ft||1});for(let fe in xe){let pe=xe[fe];for(let dt in pe){let Pt=pe[+dt];if(!Pt||Pt.bitmap.width===0||Pt.bitmap.height===0)continue;let zt=Oe[fe][dt].rect;i.o.copy(Pt.bitmap,ge,{x:0,y:0},{x:zt.x+1,y:zt.y+1},Pt.bitmap)}}this.image=ge,this.positions=Oe}}i.bl("GlyphAtlas",o);class s{constructor(xe){this.tileID=new i.S(xe.tileID.overscaledZ,xe.tileID.wrap,xe.tileID.canonical.z,xe.tileID.canonical.x,xe.tileID.canonical.y),this.uid=xe.uid,this.zoom=xe.zoom,this.pixelRatio=xe.pixelRatio,this.tileSize=xe.tileSize,this.source=xe.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=xe.showCollisionBoxes,this.collectResourceTiming=!!xe.collectResourceTiming,this.returnDependencies=!!xe.returnDependencies,this.promoteId=xe.promoteId,this.inFlightDependencies=[]}parse(xe,Oe,Ie,Fe){return i._(this,void 0,void 0,function*(){this.status="parsing",this.data=xe,this.collisionBoxArray=new i.a5;let ft=new i.bm(Object.keys(xe.layers).sort()),ge=new i.bn(this.tileID,this.promoteId);ge.bucketLayerIDs=[];let fe={},pe={featureIndex:ge,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:Ie},dt=Oe.familiesBySource[this.source];for(let Qi in dt){let si=xe.layers[Qi];if(!si)continue;si.version===1&&i.w(`Vector tile source "${this.source}" layer "${Qi}" does not use vector tile spec v2 and therefore may have some rendering errors.`);let Ai=ft.encode(Qi),Ni=[];for(let Rt=0;Rt=yt.maxzoom||yt.visibility!=="none"&&(u(Rt,this.zoom,Ie),(fe[yt.id]=yt.createBucket({index:ge.bucketLayerIDs.length,layers:Rt,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:Ai,sourceID:this.source})).populate(Ni,pe,this.tileID.canonical),ge.bucketLayerIDs.push(Rt.map(Gt=>Gt.id)))}}let Pt=i.aF(pe.glyphDependencies,Qi=>Object.keys(Qi).map(Number));this.inFlightDependencies.forEach(Qi=>Qi==null?void 0:Qi.abort()),this.inFlightDependencies=[];let zt=Promise.resolve({});if(Object.keys(Pt).length){let Qi=new AbortController;this.inFlightDependencies.push(Qi),zt=Fe.sendAsync({type:"GG",data:{stacks:Pt,source:this.source,tileID:this.tileID,type:"glyphs"}},Qi)}let rr=Object.keys(pe.iconDependencies),Gr=Promise.resolve({});if(rr.length){let Qi=new AbortController;this.inFlightDependencies.push(Qi),Gr=Fe.sendAsync({type:"GI",data:{icons:rr,source:this.source,tileID:this.tileID,type:"icons"}},Qi)}let Br=Object.keys(pe.patternDependencies),Er=Promise.resolve({});if(Br.length){let Qi=new AbortController;this.inFlightDependencies.push(Qi),Er=Fe.sendAsync({type:"GI",data:{icons:Br,source:this.source,tileID:this.tileID,type:"patterns"}},Qi)}let[Rr,pi,Di]=yield Promise.all([zt,Gr,Er]),ni=new o(Rr),$i=new i.bo(pi,Di);for(let Qi in fe){let si=fe[Qi];si instanceof i.a6?(u(si.layers,this.zoom,Ie),i.bp({bucket:si,glyphMap:Rr,glyphPositions:ni.positions,imageMap:pi,imagePositions:$i.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):si.hasPattern&&(si instanceof i.bq||si instanceof i.br||si instanceof i.bs)&&(u(si.layers,this.zoom,Ie),si.addFeatures(pe,this.tileID.canonical,$i.patternPositions))}return this.status="done",{buckets:Object.values(fe).filter(Qi=>!Qi.isEmpty()),featureIndex:ge,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:ni.image,imageAtlas:$i,glyphMap:this.returnDependencies?Rr:null,iconMap:this.returnDependencies?pi:null,glyphPositions:this.returnDependencies?ni.positions:null}})}}function u(Re,xe,Oe){let Ie=new i.z(xe);for(let Fe of Re)Fe.recalculate(Ie,Oe)}class l{constructor(xe,Oe,Ie){this.actor=xe,this.layerIndex=Oe,this.availableImages=Ie,this.fetching={},this.loading={},this.loaded={}}loadVectorTile(xe,Oe){return i._(this,void 0,void 0,function*(){let Ie=yield i.l(xe.request,Oe);try{return{vectorTile:new i.bt.VectorTile(new i.bu(Ie.data)),rawData:Ie.data,cacheControl:Ie.cacheControl,expires:Ie.expires}}catch(Fe){let ft=new Uint8Array(Ie.data),ge=`Unable to parse the tile at ${xe.request.url}, `;throw ge+=ft[0]===31&&ft[1]===139?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${Fe.message}`,new Error(ge)}})}loadTile(xe){return i._(this,void 0,void 0,function*(){let Oe=xe.uid,Ie=!!(xe&&xe.request&&xe.request.collectResourceTiming)&&new i.bv(xe.request),Fe=new s(xe);this.loading[Oe]=Fe;let ft=new AbortController;Fe.abort=ft;try{let ge=yield this.loadVectorTile(xe,ft);if(delete this.loading[Oe],!ge)return null;let fe=ge.rawData,pe={};ge.expires&&(pe.expires=ge.expires),ge.cacheControl&&(pe.cacheControl=ge.cacheControl);let dt={};if(Ie){let zt=Ie.finish();zt&&(dt.resourceTiming=JSON.parse(JSON.stringify(zt)))}Fe.vectorTile=ge.vectorTile;let Pt=Fe.parse(ge.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[Oe]=Fe,this.fetching[Oe]={rawTileData:fe,cacheControl:pe,resourceTiming:dt};try{let zt=yield Pt;return i.e({rawTileData:fe.slice(0)},zt,pe,dt)}finally{delete this.fetching[Oe]}}catch(ge){throw delete this.loading[Oe],Fe.status="done",this.loaded[Oe]=Fe,ge}})}reloadTile(xe){return i._(this,void 0,void 0,function*(){let Oe=xe.uid;if(!this.loaded||!this.loaded[Oe])throw new Error("Should not be trying to reload a tile that was never loaded or has been removed");let Ie=this.loaded[Oe];if(Ie.showCollisionBoxes=xe.showCollisionBoxes,Ie.status==="parsing"){let Fe=yield Ie.parse(Ie.vectorTile,this.layerIndex,this.availableImages,this.actor),ft;if(this.fetching[Oe]){let{rawTileData:ge,cacheControl:fe,resourceTiming:pe}=this.fetching[Oe];delete this.fetching[Oe],ft=i.e({rawTileData:ge.slice(0)},Fe,fe,pe)}else ft=Fe;return ft}if(Ie.status==="done"&&Ie.vectorTile)return Ie.parse(Ie.vectorTile,this.layerIndex,this.availableImages,this.actor)})}abortTile(xe){return i._(this,void 0,void 0,function*(){let Oe=this.loading,Ie=xe.uid;Oe&&Oe[Ie]&&Oe[Ie].abort&&(Oe[Ie].abort.abort(),delete Oe[Ie])})}removeTile(xe){return i._(this,void 0,void 0,function*(){this.loaded&&this.loaded[xe.uid]&&delete this.loaded[xe.uid]})}}class f{constructor(){this.loaded={}}loadTile(xe){return i._(this,void 0,void 0,function*(){let{uid:Oe,encoding:Ie,rawImageData:Fe,redFactor:ft,greenFactor:ge,blueFactor:fe,baseShift:pe}=xe,dt=Fe.width+2,Pt=Fe.height+2,zt=i.b(Fe)?new i.R({width:dt,height:Pt},yield i.bw(Fe,-1,-1,dt,Pt)):Fe,rr=new i.bx(Oe,zt,Ie,ft,ge,fe,pe);return this.loaded=this.loaded||{},this.loaded[Oe]=rr,rr})}removeTile(xe){let Oe=this.loaded,Ie=xe.uid;Oe&&Oe[Ie]&&delete Oe[Ie]}}function c(Re,xe){if(Re.length!==0){h(Re[0],xe);for(var Oe=1;Oe=Math.abs(fe)?Oe-pe+fe:fe-pe+Oe,Oe=pe}Oe+Ie>=0!=!!xe&&Re.reverse()}var d=i.by(function Re(xe,Oe){var Ie,Fe=xe&&xe.type;if(Fe==="FeatureCollection")for(Ie=0;Ie>31}function F(Re,xe){for(var Oe=Re.loadGeometry(),Ie=Re.type,Fe=0,ft=0,ge=Oe.length,fe=0;feRe},H=Math.fround||(N=new Float32Array(1),Re=>(N[0]=+Re,N[0]));var N;let W=3,re=5,ae=6;class be{constructor(xe){this.options=Object.assign(Object.create(j),xe),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(xe){let{log:Oe,minZoom:Ie,maxZoom:Fe}=this.options;Oe&&console.time("total time");let ft=`prepare ${xe.length} points`;Oe&&console.time(ft),this.points=xe;let ge=[];for(let pe=0;pe=Ie;pe--){let dt=+Date.now();fe=this.trees[pe]=this._createTree(this._cluster(fe,pe)),Oe&&console.log("z%d: %d clusters in %dms",pe,fe.numItems,+Date.now()-dt)}return Oe&&console.timeEnd("total time"),this}getClusters(xe,Oe){let Ie=((xe[0]+180)%360+360)%360-180,Fe=Math.max(-90,Math.min(90,xe[1])),ft=xe[2]===180?180:((xe[2]+180)%360+360)%360-180,ge=Math.max(-90,Math.min(90,xe[3]));if(xe[2]-xe[0]>=360)Ie=-180,ft=180;else if(Ie>ft){let zt=this.getClusters([Ie,Fe,180,ge],Oe),rr=this.getClusters([-180,Fe,ft,ge],Oe);return zt.concat(rr)}let fe=this.trees[this._limitZoom(Oe)],pe=fe.range(de(Ie),te(ge),de(ft),te(Fe)),dt=fe.data,Pt=[];for(let zt of pe){let rr=this.stride*zt;Pt.push(dt[rr+re]>1?ze(dt,rr,this.clusterProps):this.points[dt[rr+W]])}return Pt}getChildren(xe){let Oe=this._getOriginId(xe),Ie=this._getOriginZoom(xe),Fe="No cluster with the specified id.",ft=this.trees[Ie];if(!ft)throw new Error(Fe);let ge=ft.data;if(Oe*this.stride>=ge.length)throw new Error(Fe);let fe=this.options.radius/(this.options.extent*Math.pow(2,Ie-1)),pe=ft.within(ge[Oe*this.stride],ge[Oe*this.stride+1],fe),dt=[];for(let Pt of pe){let zt=Pt*this.stride;ge[zt+4]===xe&&dt.push(ge[zt+re]>1?ze(ge,zt,this.clusterProps):this.points[ge[zt+W]])}if(dt.length===0)throw new Error(Fe);return dt}getLeaves(xe,Oe,Ie){let Fe=[];return this._appendLeaves(Fe,xe,Oe=Oe||10,Ie=Ie||0,0),Fe}getTile(xe,Oe,Ie){let Fe=this.trees[this._limitZoom(xe)],ft=Math.pow(2,xe),{extent:ge,radius:fe}=this.options,pe=fe/ge,dt=(Ie-pe)/ft,Pt=(Ie+1+pe)/ft,zt={features:[]};return this._addTileFeatures(Fe.range((Oe-pe)/ft,dt,(Oe+1+pe)/ft,Pt),Fe.data,Oe,Ie,ft,zt),Oe===0&&this._addTileFeatures(Fe.range(1-pe/ft,dt,1,Pt),Fe.data,ft,Ie,ft,zt),Oe===ft-1&&this._addTileFeatures(Fe.range(0,dt,pe/ft,Pt),Fe.data,-1,Ie,ft,zt),zt.features.length?zt:null}getClusterExpansionZoom(xe){let Oe=this._getOriginZoom(xe)-1;for(;Oe<=this.options.maxZoom;){let Ie=this.getChildren(xe);if(Oe++,Ie.length!==1)break;xe=Ie[0].properties.cluster_id}return Oe}_appendLeaves(xe,Oe,Ie,Fe,ft){let ge=this.getChildren(Oe);for(let fe of ge){let pe=fe.properties;if(pe&&pe.cluster?ft+pe.point_count<=Fe?ft+=pe.point_count:ft=this._appendLeaves(xe,pe.cluster_id,Ie,Fe,ft):ft1,Pt,zt,rr;if(dt)Pt=Ce(Oe,pe,this.clusterProps),zt=Oe[pe],rr=Oe[pe+1];else{let Er=this.points[Oe[pe+W]];Pt=Er.properties;let[Rr,pi]=Er.geometry.coordinates;zt=de(Rr),rr=te(pi)}let Gr={type:1,geometry:[[Math.round(this.options.extent*(zt*ft-Ie)),Math.round(this.options.extent*(rr*ft-Fe))]],tags:Pt},Br;Br=dt||this.options.generateId?Oe[pe+W]:this.points[Oe[pe+W]].id,Br!==void 0&&(Gr.id=Br),ge.features.push(Gr)}}_limitZoom(xe){return Math.max(this.options.minZoom,Math.min(Math.floor(+xe),this.options.maxZoom+1))}_cluster(xe,Oe){let{radius:Ie,extent:Fe,reduce:ft,minPoints:ge}=this.options,fe=Ie/(Fe*Math.pow(2,Oe)),pe=xe.data,dt=[],Pt=this.stride;for(let zt=0;ztOe&&(Rr+=pe[Di+re])}if(Rr>Er&&Rr>=ge){let pi,Di=rr*Er,ni=Gr*Er,$i=-1,Qi=((zt/Pt|0)<<5)+(Oe+1)+this.points.length;for(let si of Br){let Ai=si*Pt;if(pe[Ai+2]<=Oe)continue;pe[Ai+2]=Oe;let Ni=pe[Ai+re];Di+=pe[Ai]*Ni,ni+=pe[Ai+1]*Ni,pe[Ai+4]=Qi,ft&&(pi||(pi=this._map(pe,zt,!0),$i=this.clusterProps.length,this.clusterProps.push(pi)),ft(pi,this._map(pe,Ai)))}pe[zt+4]=Qi,dt.push(Di/Rr,ni/Rr,1/0,Qi,-1,Rr),ft&&dt.push($i)}else{for(let pi=0;pi1)for(let pi of Br){let Di=pi*Pt;if(!(pe[Di+2]<=Oe)){pe[Di+2]=Oe;for(let ni=0;ni>5}_getOriginZoom(xe){return(xe-this.points.length)%32}_map(xe,Oe,Ie){if(xe[Oe+re]>1){let ge=this.clusterProps[xe[Oe+ae]];return Ie?Object.assign({},ge):ge}let Fe=this.points[xe[Oe+W]].properties,ft=this.options.map(Fe);return Ie&&ft===Fe?Object.assign({},ft):ft}}function ze(Re,xe,Oe){return{type:"Feature",id:Re[xe+W],properties:Ce(Re,xe,Oe),geometry:{type:"Point",coordinates:[(Ie=Re[xe],360*(Ie-.5)),ke(Re[xe+1])]}};var Ie}function Ce(Re,xe,Oe){let Ie=Re[xe+re],Fe=Ie>=1e4?`${Math.round(Ie/1e3)}k`:Ie>=1e3?Math.round(Ie/100)/10+"k":Ie,ft=Re[xe+ae],ge=ft===-1?{}:Object.assign({},Oe[ft]);return Object.assign(ge,{cluster:!0,cluster_id:Re[xe+W],point_count:Ie,point_count_abbreviated:Fe})}function de(Re){return Re/360+.5}function te(Re){let xe=Math.sin(Re*Math.PI/180),Oe=.5-.25*Math.log((1+xe)/(1-xe))/Math.PI;return Oe<0?0:Oe>1?1:Oe}function ke(Re){let xe=(180-360*Re)*Math.PI/180;return 360*Math.atan(Math.exp(xe))/Math.PI-90}function Ee(Re,xe,Oe,Ie){let Fe=Ie,ft=xe+(Oe-xe>>1),ge,fe=Oe-xe,pe=Re[xe],dt=Re[xe+1],Pt=Re[Oe],zt=Re[Oe+1];for(let rr=xe+3;rrFe)ge=rr,Fe=Gr;else if(Gr===Fe){let Br=Math.abs(rr-ft);BrIe&&(ge-xe>3&&Ee(Re,xe,ge,Ie),Re[ge+2]=Fe,Oe-ge>3&&Ee(Re,ge,Oe,Ie))}function Me(Re,xe,Oe,Ie,Fe,ft){let ge=Fe-Oe,fe=ft-Ie;if(ge!==0||fe!==0){let pe=((Re-Oe)*ge+(xe-Ie)*fe)/(ge*ge+fe*fe);pe>1?(Oe=Fe,Ie=ft):pe>0&&(Oe+=ge*pe,Ie+=fe*pe)}return ge=Re-Oe,fe=xe-Ie,ge*ge+fe*fe}function Ue(Re,xe,Oe,Ie){let Fe={id:Re==null?null:Re,type:xe,geometry:Oe,tags:Ie,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if(xe==="Point"||xe==="MultiPoint"||xe==="LineString")De(Fe,Oe);else if(xe==="Polygon")De(Fe,Oe[0]);else if(xe==="MultiLineString")for(let ft of Oe)De(Fe,ft);else if(xe==="MultiPolygon")for(let ft of Oe)De(Fe,ft[0]);return Fe}function De(Re,xe){for(let Oe=0;Oe0&&(ge+=Ie?(Fe*Pt-dt*ft)/2:Math.sqrt(Math.pow(dt-Fe,2)+Math.pow(Pt-ft,2))),Fe=dt,ft=Pt}let fe=xe.length-3;xe[2]=1,Ee(xe,0,fe,Oe),xe[fe+2]=1,xe.size=Math.abs(ge),xe.start=0,xe.end=xe.size}function Je(Re,xe,Oe,Ie){for(let Fe=0;Fe1?1:Oe}function Nt(Re,xe,Oe,Ie,Fe,ft,ge,fe){if(Ie/=xe,ft>=(Oe/=xe)&&ge=Ie)return null;let pe=[];for(let dt of Re){let Pt=dt.geometry,zt=dt.type,rr=Fe===0?dt.minX:dt.minY,Gr=Fe===0?dt.maxX:dt.maxY;if(rr>=Oe&&Gr=Ie)continue;let Br=[];if(zt==="Point"||zt==="MultiPoint")at(Pt,Br,Oe,Ie,Fe);else if(zt==="LineString")Ke(Pt,Br,Oe,Ie,Fe,!1,fe.lineMetrics);else if(zt==="MultiLineString")wt(Pt,Br,Oe,Ie,Fe,!1);else if(zt==="Polygon")wt(Pt,Br,Oe,Ie,Fe,!0);else if(zt==="MultiPolygon")for(let Er of Pt){let Rr=[];wt(Er,Rr,Oe,Ie,Fe,!0),Rr.length&&Br.push(Rr)}if(Br.length){if(fe.lineMetrics&&zt==="LineString"){for(let Er of Br)pe.push(Ue(dt.id,zt,Er,dt.tags));continue}zt!=="LineString"&&zt!=="MultiLineString"||(Br.length===1?(zt="LineString",Br=Br[0]):zt="MultiLineString"),zt!=="Point"&&zt!=="MultiPoint"||(zt=Br.length===3?"Point":"MultiPoint"),pe.push(Ue(dt.id,zt,Br,dt.tags))}}return pe.length?pe:null}function at(Re,xe,Oe,Ie,Fe){for(let ft=0;ft=Oe&&ge<=Ie&&St(xe,Re[ft],Re[ft+1],Re[ft+2])}}function Ke(Re,xe,Oe,Ie,Fe,ft,ge){let fe=Ct(Re),pe=Fe===0?Dt:Zt,dt,Pt,zt=Re.start;for(let Rr=0;RrOe&&(Pt=pe(fe,pi,Di,$i,Qi,Oe),ge&&(fe.start=zt+dt*Pt)):si>Ie?Ai=Oe&&(Pt=pe(fe,pi,Di,$i,Qi,Oe),Ni=!0),Ai>Ie&&si<=Ie&&(Pt=pe(fe,pi,Di,$i,Qi,Ie),Ni=!0),!ft&&Ni&&(ge&&(fe.end=zt+dt*Pt),xe.push(fe),fe=Ct(Re)),ge&&(zt+=dt)}let rr=Re.length-3,Gr=Re[rr],Br=Re[rr+1],Er=Fe===0?Gr:Br;Er>=Oe&&Er<=Ie&&St(fe,Gr,Br,Re[rr+2]),rr=fe.length-3,ft&&rr>=3&&(fe[rr]!==fe[0]||fe[rr+1]!==fe[1])&&St(fe,fe[0],fe[1],fe[2]),fe.length&&xe.push(fe)}function Ct(Re){let xe=[];return xe.size=Re.size,xe.start=Re.start,xe.end=Re.end,xe}function wt(Re,xe,Oe,Ie,Fe,ft){for(let ge of Re)Ke(ge,xe,Oe,Ie,Fe,ft,!1)}function St(Re,xe,Oe,Ie){Re.push(xe,Oe,Ie)}function Dt(Re,xe,Oe,Ie,Fe,ft){let ge=(ft-xe)/(Ie-xe);return St(Re,ft,Oe+(Fe-Oe)*ge,1),ge}function Zt(Re,xe,Oe,Ie,Fe,ft){let ge=(ft-Oe)/(Fe-Oe);return St(Re,xe+(Ie-xe)*ge,ft,1),ge}function Et(Re,xe){let Oe=[];for(let Ie=0;Ie0&&xe.size<(Fe?ge:Ie))return void(Oe.numPoints+=xe.length/3);let fe=[];for(let pe=0;pege)&&(Oe.numSimplified++,fe.push(xe[pe],xe[pe+1])),Oe.numPoints++;Fe&&function(pe,dt){let Pt=0;for(let zt=0,rr=pe.length,Gr=rr-2;zt0===dt)for(let zt=0,rr=pe.length;zt24)throw new Error("maxZoom should be in the 0-24 range");if(Oe.promoteId&&Oe.generateId)throw new Error("promoteId and generateId cannot be used together.");let Fe=function(ft,ge){let fe=[];if(ft.type==="FeatureCollection")for(let pe=0;pe1&&console.time("creation"),Gr=this.tiles[rr]=vt(xe,Oe,Ie,Fe,dt),this.tileCoords.push({z:Oe,x:Ie,y:Fe}),Pt)){Pt>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Oe,Ie,Fe,Gr.numFeatures,Gr.numPoints,Gr.numSimplified),console.timeEnd("creation"));let Ni=`z${Oe}`;this.stats[Ni]=(this.stats[Ni]||0)+1,this.total++}if(Gr.source=xe,ft==null){if(Oe===dt.indexMaxZoom||Gr.numPoints<=dt.indexMaxPoints)continue}else{if(Oe===dt.maxZoom||Oe===ft)continue;if(ft!=null){let Ni=ft-Oe;if(Ie!==ge>>Ni||Fe!==fe>>Ni)continue}}if(Gr.source=null,xe.length===0)continue;Pt>1&&console.time("clipping");let Br=.5*dt.buffer/dt.extent,Er=.5-Br,Rr=.5+Br,pi=1+Br,Di=null,ni=null,$i=null,Qi=null,si=Nt(xe,zt,Ie-Br,Ie+Rr,0,Gr.minX,Gr.maxX,dt),Ai=Nt(xe,zt,Ie+Er,Ie+pi,0,Gr.minX,Gr.maxX,dt);xe=null,si&&(Di=Nt(si,zt,Fe-Br,Fe+Rr,1,Gr.minY,Gr.maxY,dt),ni=Nt(si,zt,Fe+Er,Fe+pi,1,Gr.minY,Gr.maxY,dt),si=null),Ai&&($i=Nt(Ai,zt,Fe-Br,Fe+Rr,1,Gr.minY,Gr.maxY,dt),Qi=Nt(Ai,zt,Fe+Er,Fe+pi,1,Gr.minY,Gr.maxY,dt),Ai=null),Pt>1&&console.timeEnd("clipping"),pe.push(Di||[],Oe+1,2*Ie,2*Fe),pe.push(ni||[],Oe+1,2*Ie,2*Fe+1),pe.push($i||[],Oe+1,2*Ie+1,2*Fe),pe.push(Qi||[],Oe+1,2*Ie+1,2*Fe+1)}}getTile(xe,Oe,Ie){xe=+xe,Oe=+Oe,Ie=+Ie;let Fe=this.options,{extent:ft,debug:ge}=Fe;if(xe<0||xe>24)return null;let fe=1<1&&console.log("drilling down to z%d-%d-%d",xe,Oe,Ie);let dt,Pt=xe,zt=Oe,rr=Ie;for(;!dt&&Pt>0;)Pt--,zt>>=1,rr>>=1,dt=this.tiles[It(Pt,zt,rr)];return dt&&dt.source?(ge>1&&(console.log("found parent tile z%d-%d-%d",Pt,zt,rr),console.time("drilling down")),this.splitTile(dt.source,Pt,zt,rr,xe,Oe,Ie),ge>1&&console.timeEnd("drilling down"),this.tiles[pe]?ot(this.tiles[pe],ft):null):null}}function It(Re,xe,Oe){return 32*((1<{zt.properties=Gr;let Br={};for(let Er of rr)Br[Er]=pe[Er].evaluate(Pt,zt);return Br},ge.reduce=(Gr,Br)=>{zt.properties=Br;for(let Er of rr)Pt.accumulated=Gr[Er],Gr[Er]=dt[Er].evaluate(Pt,zt)},ge}(xe)).load((yield this._pendingData).features):(Fe=yield this._pendingData,new et(Fe,xe.geojsonVtOptions)),this.loaded={};let ft={};if(Ie){let ge=Ie.finish();ge&&(ft.resourceTiming={},ft.resourceTiming[xe.source]=JSON.parse(JSON.stringify(ge)))}return ft}catch(ft){if(delete this._pendingRequest,i.bB(ft))return{abandoned:!0};throw ft}var Fe})}getData(){return i._(this,void 0,void 0,function*(){return this._pendingData})}reloadTile(xe){let Oe=this.loaded;return Oe&&Oe[xe.uid]?super.reloadTile(xe):this.loadTile(xe)}loadAndProcessGeoJSON(xe,Oe){return i._(this,void 0,void 0,function*(){let Ie=yield this.loadGeoJSON(xe,Oe);if(delete this._pendingRequest,typeof Ie!="object")throw new Error(`Input data given to '${xe.source}' is not a valid GeoJSON object.`);if(d(Ie,!0),xe.filter){let Fe=i.bC(xe.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(Fe.result==="error")throw new Error(Fe.value.map(ge=>`${ge.key}: ${ge.message}`).join(", "));Ie={type:"FeatureCollection",features:Ie.features.filter(ge=>Fe.value.evaluate({zoom:0},ge))}}return Ie})}loadGeoJSON(xe,Oe){return i._(this,void 0,void 0,function*(){let{promoteId:Ie}=xe;if(xe.request){let Fe=yield i.h(xe.request,Oe);return this._dataUpdateable=cr(Fe.data,Ie)?_r(Fe.data,Ie):void 0,Fe.data}if(typeof xe.data=="string")try{let Fe=JSON.parse(xe.data);return this._dataUpdateable=cr(Fe,Ie)?_r(Fe,Ie):void 0,Fe}catch(Fe){throw new Error(`Input data given to '${xe.source}' is not a valid GeoJSON object.`)}if(!xe.dataDiff)throw new Error(`Input data given to '${xe.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${xe.source}`);return function(Fe,ft,ge){var fe,pe,dt,Pt;if(ft.removeAll&&Fe.clear(),ft.remove)for(let zt of ft.remove)Fe.delete(zt);if(ft.add)for(let zt of ft.add){let rr=Yt(zt,ge);rr!=null&&Fe.set(rr,zt)}if(ft.update)for(let zt of ft.update){let rr=Fe.get(zt.id);if(rr==null)continue;let Gr=!zt.removeAllProperties&&(((fe=zt.removeProperties)===null||fe===void 0?void 0:fe.length)>0||((pe=zt.addOrUpdateProperties)===null||pe===void 0?void 0:pe.length)>0);if((zt.newGeometry||zt.removeAllProperties||Gr)&&(rr=Object.assign({},rr),Fe.set(zt.id,rr),Gr&&(rr.properties=Object.assign({},rr.properties))),zt.newGeometry&&(rr.geometry=zt.newGeometry),zt.removeAllProperties)rr.properties={};else if(((dt=zt.removeProperties)===null||dt===void 0?void 0:dt.length)>0)for(let Br of zt.removeProperties)Object.prototype.hasOwnProperty.call(rr.properties,Br)&&delete rr.properties[Br];if(((Pt=zt.addOrUpdateProperties)===null||Pt===void 0?void 0:Pt.length)>0)for(let{key:Br,value:Er}of zt.addOrUpdateProperties)rr.properties[Br]=Er}}(this._dataUpdateable,xe.dataDiff,Ie),{type:"FeatureCollection",features:Array.from(this._dataUpdateable.values())}})}removeSource(xe){return i._(this,void 0,void 0,function*(){this._pendingRequest&&this._pendingRequest.abort()})}getClusterExpansionZoom(xe){return this._geoJSONIndex.getClusterExpansionZoom(xe.clusterId)}getClusterChildren(xe){return this._geoJSONIndex.getChildren(xe.clusterId)}getClusterLeaves(xe){return this._geoJSONIndex.getLeaves(xe.clusterId,xe.limit,xe.offset)}}class Ut{constructor(xe){this.self=xe,this.actor=new i.F(xe),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(Oe,Ie)=>{if(this.externalWorkerSourceTypes[Oe])throw new Error(`Worker source with name "${Oe}" already registered.`);this.externalWorkerSourceTypes[Oe]=Ie},this.self.addProtocol=i.bi,this.self.removeProtocol=i.bj,this.self.registerRTLTextPlugin=Oe=>{if(i.bD.isParsed())throw new Error("RTL text plugin already registered.");i.bD.setMethods(Oe)},this.actor.registerMessageHandler("LDT",(Oe,Ie)=>this._getDEMWorkerSource(Oe,Ie.source).loadTile(Ie)),this.actor.registerMessageHandler("RDT",(Oe,Ie)=>i._(this,void 0,void 0,function*(){this._getDEMWorkerSource(Oe,Ie.source).removeTile(Ie)})),this.actor.registerMessageHandler("GCEZ",(Oe,Ie)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Oe,Ie.type,Ie.source).getClusterExpansionZoom(Ie)})),this.actor.registerMessageHandler("GCC",(Oe,Ie)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Oe,Ie.type,Ie.source).getClusterChildren(Ie)})),this.actor.registerMessageHandler("GCL",(Oe,Ie)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Oe,Ie.type,Ie.source).getClusterLeaves(Ie)})),this.actor.registerMessageHandler("LD",(Oe,Ie)=>this._getWorkerSource(Oe,Ie.type,Ie.source).loadData(Ie)),this.actor.registerMessageHandler("GD",(Oe,Ie)=>this._getWorkerSource(Oe,Ie.type,Ie.source).getData()),this.actor.registerMessageHandler("LT",(Oe,Ie)=>this._getWorkerSource(Oe,Ie.type,Ie.source).loadTile(Ie)),this.actor.registerMessageHandler("RT",(Oe,Ie)=>this._getWorkerSource(Oe,Ie.type,Ie.source).reloadTile(Ie)),this.actor.registerMessageHandler("AT",(Oe,Ie)=>this._getWorkerSource(Oe,Ie.type,Ie.source).abortTile(Ie)),this.actor.registerMessageHandler("RMT",(Oe,Ie)=>this._getWorkerSource(Oe,Ie.type,Ie.source).removeTile(Ie)),this.actor.registerMessageHandler("RS",(Oe,Ie)=>i._(this,void 0,void 0,function*(){if(!this.workerSources[Oe]||!this.workerSources[Oe][Ie.type]||!this.workerSources[Oe][Ie.type][Ie.source])return;let Fe=this.workerSources[Oe][Ie.type][Ie.source];delete this.workerSources[Oe][Ie.type][Ie.source],Fe.removeSource!==void 0&&Fe.removeSource(Ie)})),this.actor.registerMessageHandler("RM",Oe=>i._(this,void 0,void 0,function*(){delete this.layerIndexes[Oe],delete this.availableImages[Oe],delete this.workerSources[Oe],delete this.demWorkerSources[Oe]})),this.actor.registerMessageHandler("SR",(Oe,Ie)=>i._(this,void 0,void 0,function*(){this.referrer=Ie})),this.actor.registerMessageHandler("SRPS",(Oe,Ie)=>this._syncRTLPluginState(Oe,Ie)),this.actor.registerMessageHandler("IS",(Oe,Ie)=>i._(this,void 0,void 0,function*(){this.self.importScripts(Ie)})),this.actor.registerMessageHandler("SI",(Oe,Ie)=>this._setImages(Oe,Ie)),this.actor.registerMessageHandler("UL",(Oe,Ie)=>i._(this,void 0,void 0,function*(){this._getLayerIndex(Oe).update(Ie.layers,Ie.removedIds)})),this.actor.registerMessageHandler("SL",(Oe,Ie)=>i._(this,void 0,void 0,function*(){this._getLayerIndex(Oe).replace(Ie)}))}_setImages(xe,Oe){return i._(this,void 0,void 0,function*(){this.availableImages[xe]=Oe;for(let Ie in this.workerSources[xe]){let Fe=this.workerSources[xe][Ie];for(let ft in Fe)Fe[ft].availableImages=Oe}})}_syncRTLPluginState(xe,Oe){return i._(this,void 0,void 0,function*(){if(i.bD.isParsed())return i.bD.getState();if(Oe.pluginStatus!=="loading")return i.bD.setState(Oe),Oe;let Ie=Oe.pluginURL;if(this.self.importScripts(Ie),i.bD.isParsed()){let Fe={pluginStatus:"loaded",pluginURL:Ie};return i.bD.setState(Fe),Fe}throw i.bD.setState({pluginStatus:"error",pluginURL:""}),new Error(`RTL Text Plugin failed to import scripts from ${Ie}`)})}_getAvailableImages(xe){let Oe=this.availableImages[xe];return Oe||(Oe=[]),Oe}_getLayerIndex(xe){let Oe=this.layerIndexes[xe];return Oe||(Oe=this.layerIndexes[xe]=new a),Oe}_getWorkerSource(xe,Oe,Ie){if(this.workerSources[xe]||(this.workerSources[xe]={}),this.workerSources[xe][Oe]||(this.workerSources[xe][Oe]={}),!this.workerSources[xe][Oe][Ie]){let Fe={sendAsync:(ft,ge)=>(ft.targetMapId=xe,this.actor.sendAsync(ft,ge))};switch(Oe){case"vector":this.workerSources[xe][Oe][Ie]=new l(Fe,this._getLayerIndex(xe),this._getAvailableImages(xe));break;case"geojson":this.workerSources[xe][Oe][Ie]=new yr(Fe,this._getLayerIndex(xe),this._getAvailableImages(xe));break;default:this.workerSources[xe][Oe][Ie]=new this.externalWorkerSourceTypes[Oe](Fe,this._getLayerIndex(xe),this._getAvailableImages(xe))}}return this.workerSources[xe][Oe][Ie]}_getDEMWorkerSource(xe,Oe){return this.demWorkerSources[xe]||(this.demWorkerSources[xe]={}),this.demWorkerSources[xe][Oe]||(this.demWorkerSources[xe][Oe]=new f),this.demWorkerSources[xe][Oe]}}return i.i(self)&&(self.worker=new Ut(self)),Ut}),r("index",["exports","./shared"],function(i,a){"use strict";var o="4.7.1";let s,u,l={now:typeof performance!="undefined"&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync:le=>new Promise((w,q)=>{let Q=requestAnimationFrame(w);le.signal.addEventListener("abort",()=>{cancelAnimationFrame(Q),q(a.c())})}),getImageData(le,w=0){return this.getImageCanvasContext(le).getImageData(-w,-w,le.width+2*w,le.height+2*w)},getImageCanvasContext(le){let w=window.document.createElement("canvas"),q=w.getContext("2d",{willReadFrequently:!0});if(!q)throw new Error("failed to create canvas 2d context");return w.width=le.width,w.height=le.height,q.drawImage(le,0,0,le.width,le.height),q},resolveURL:le=>(s||(s=document.createElement("a")),s.href=le,s.href),hardwareConcurrency:typeof navigator!="undefined"&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(u==null&&(u=matchMedia("(prefers-reduced-motion: reduce)")),u.matches)}};class f{static testProp(w){if(!f.docStyle)return w[0];for(let q=0;q{window.removeEventListener("click",f.suppressClickInternal,!0)},0)}static getScale(w){let q=w.getBoundingClientRect();return{x:q.width/w.offsetWidth||1,y:q.height/w.offsetHeight||1,boundingClientRect:q}}static getPoint(w,q,Q){let ee=q.boundingClientRect;return new a.P((Q.clientX-ee.left)/q.x-w.clientLeft,(Q.clientY-ee.top)/q.y-w.clientTop)}static mousePos(w,q){let Q=f.getScale(w);return f.getPoint(w,Q,q)}static touchPos(w,q){let Q=[],ee=f.getScale(w);for(let ue=0;ue{h&&b(h),h=null,_=!0},d.onerror=()=>{p=!0,h=null},d.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="),function(le){let w,q,Q,ee;le.resetRequestQueue=()=>{w=[],q=0,Q=0,ee={}},le.addThrottleControl=mt=>{let Bt=Q++;return ee[Bt]=mt,Bt},le.removeThrottleControl=mt=>{delete ee[mt],Ve()},le.getImage=(mt,Bt,ir=!0)=>new Promise((or,kr)=>{c.supported&&(mt.headers||(mt.headers={}),mt.headers.accept="image/webp,*/*"),a.e(mt,{type:"image"}),w.push({abortController:Bt,requestParameters:mt,supportImageRefresh:ir,state:"queued",onError:Vr=>{kr(Vr)},onSuccess:Vr=>{or(Vr)}}),Ve()});let ue=mt=>a._(this,void 0,void 0,function*(){mt.state="running";let{requestParameters:Bt,supportImageRefresh:ir,onError:or,onSuccess:kr,abortController:Vr}=mt,he=ir===!1&&!a.i(self)&&!a.g(Bt.url)&&(!Bt.headers||Object.keys(Bt.headers).reduce((Ge,lt)=>Ge&<==="accept",!0));q++;let Se=he?tt(Bt,Vr):a.m(Bt,Vr);try{let Ge=yield Se;delete mt.abortController,mt.state="completed",Ge.data instanceof HTMLImageElement||a.b(Ge.data)?kr(Ge):Ge.data&&kr({data:yield(Ne=Ge.data,typeof createImageBitmap=="function"?a.d(Ne):a.f(Ne)),cacheControl:Ge.cacheControl,expires:Ge.expires})}catch(Ge){delete mt.abortController,or(Ge)}finally{q--,Ve()}var Ne}),Ve=()=>{let mt=(()=>{for(let Bt of Object.keys(ee))if(ee[Bt]())return!0;return!1})()?a.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:a.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let Bt=q;Bt0;Bt++){let ir=w.shift();ir.abortController.signal.aborted?Bt--:ue(ir)}},tt=(mt,Bt)=>new Promise((ir,or)=>{let kr=new Image,Vr=mt.url,he=mt.credentials;he&&he==="include"?kr.crossOrigin="use-credentials":(he&&he==="same-origin"||!a.s(Vr))&&(kr.crossOrigin="anonymous"),Bt.signal.addEventListener("abort",()=>{kr.src="",or(a.c())}),kr.fetchPriority="high",kr.onload=()=>{kr.onerror=kr.onload=null,ir({data:kr})},kr.onerror=()=>{kr.onerror=kr.onload=null,Bt.signal.aborted||or(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))},kr.src=Vr})}(v||(v={})),v.resetRequestQueue();class k{constructor(w){this._transformRequestFn=w}transformRequest(w,q){return this._transformRequestFn&&this._transformRequestFn(w,q)||{url:w}}setTransformRequest(w){this._transformRequestFn=w}}function E(le){var w=new a.A(3);return w[0]=le[0],w[1]=le[1],w[2]=le[2],w}var A,L=function(le,w,q){return le[0]=w[0]-q[0],le[1]=w[1]-q[1],le[2]=w[2]-q[2],le};A=new a.A(3),a.A!=Float32Array&&(A[0]=0,A[1]=0,A[2]=0);var x=function(le){var w=le[0],q=le[1];return w*w+q*q};function C(le){let w=[];if(typeof le=="string")w.push({id:"default",url:le});else if(le&&le.length>0){let q=[];for(let{id:Q,url:ee}of le){let ue=`${Q}${ee}`;q.indexOf(ue)===-1&&(q.push(ue),w.push({id:Q,url:ee}))}}return w}function M(le,w,q){let Q=le.split("?");return Q[0]+=`${w}${q}`,Q.join("?")}(function(){var le=new a.A(2);a.A!=Float32Array&&(le[0]=0,le[1]=0)})();class m{constructor(w,q,Q,ee){this.context=w,this.format=Q,this.texture=w.gl.createTexture(),this.update(q,ee)}update(w,q,Q){let{width:ee,height:ue}=w,Ve=!(this.size&&this.size[0]===ee&&this.size[1]===ue||Q),{context:tt}=this,{gl:mt}=tt;if(this.useMipmap=!!(q&&q.useMipmap),mt.bindTexture(mt.TEXTURE_2D,this.texture),tt.pixelStoreUnpackFlipY.set(!1),tt.pixelStoreUnpack.set(1),tt.pixelStoreUnpackPremultiplyAlpha.set(this.format===mt.RGBA&&(!q||q.premultiply!==!1)),Ve)this.size=[ee,ue],w instanceof HTMLImageElement||w instanceof HTMLCanvasElement||w instanceof HTMLVideoElement||w instanceof ImageData||a.b(w)?mt.texImage2D(mt.TEXTURE_2D,0,this.format,this.format,mt.UNSIGNED_BYTE,w):mt.texImage2D(mt.TEXTURE_2D,0,this.format,ee,ue,0,this.format,mt.UNSIGNED_BYTE,w.data);else{let{x:Bt,y:ir}=Q||{x:0,y:0};w instanceof HTMLImageElement||w instanceof HTMLCanvasElement||w instanceof HTMLVideoElement||w instanceof ImageData||a.b(w)?mt.texSubImage2D(mt.TEXTURE_2D,0,Bt,ir,mt.RGBA,mt.UNSIGNED_BYTE,w):mt.texSubImage2D(mt.TEXTURE_2D,0,Bt,ir,ee,ue,mt.RGBA,mt.UNSIGNED_BYTE,w.data)}this.useMipmap&&this.isSizePowerOfTwo()&&mt.generateMipmap(mt.TEXTURE_2D)}bind(w,q,Q){let{context:ee}=this,{gl:ue}=ee;ue.bindTexture(ue.TEXTURE_2D,this.texture),Q!==ue.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(Q=ue.LINEAR),w!==this.filter&&(ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_MAG_FILTER,w),ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_MIN_FILTER,Q||w),this.filter=w),q!==this.wrap&&(ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_WRAP_S,q),ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_WRAP_T,q),this.wrap=q)}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){let{gl:w}=this.context;w.deleteTexture(this.texture),this.texture=null}}function P(le){let{userImage:w}=le;return!!(w&&w.render&&w.render())&&(le.data.replace(new Uint8Array(w.data.buffer)),!0)}class T extends a.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new a.R({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(w){if(this.loaded!==w&&(this.loaded=w,w)){for(let{ids:q,promiseResolve:Q}of this.requestors)Q(this._getImagesForIds(q));this.requestors=[]}}getImage(w){let q=this.images[w];if(q&&!q.data&&q.spriteData){let Q=q.spriteData;q.data=new a.R({width:Q.width,height:Q.height},Q.context.getImageData(Q.x,Q.y,Q.width,Q.height).data),q.spriteData=null}return q}addImage(w,q){if(this.images[w])throw new Error(`Image id ${w} already exist, use updateImage instead`);this._validate(w,q)&&(this.images[w]=q)}_validate(w,q){let Q=!0,ee=q.data||q.spriteData;return this._validateStretch(q.stretchX,ee&&ee.width)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "stretchX" value`))),Q=!1),this._validateStretch(q.stretchY,ee&&ee.height)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "stretchY" value`))),Q=!1),this._validateContent(q.content,q)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "content" value`))),Q=!1),Q}_validateStretch(w,q){if(!w)return!0;let Q=0;for(let ee of w){if(ee[0]{let ee=!0;if(!this.isLoaded())for(let ue of w)this.images[ue]||(ee=!1);this.isLoaded()||ee?q(this._getImagesForIds(w)):this.requestors.push({ids:w,promiseResolve:q})})}_getImagesForIds(w){let q={};for(let Q of w){let ee=this.getImage(Q);ee||(this.fire(new a.k("styleimagemissing",{id:Q})),ee=this.getImage(Q)),ee?q[Q]={data:ee.data.clone(),pixelRatio:ee.pixelRatio,sdf:ee.sdf,version:ee.version,stretchX:ee.stretchX,stretchY:ee.stretchY,content:ee.content,textFitWidth:ee.textFitWidth,textFitHeight:ee.textFitHeight,hasRenderCallback:!!(ee.userImage&&ee.userImage.render)}:a.w(`Image "${Q}" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.`)}return q}getPixelSize(){let{width:w,height:q}=this.atlasImage;return{width:w,height:q}}getPattern(w){let q=this.patterns[w],Q=this.getImage(w);if(!Q)return null;if(q&&q.position.version===Q.version)return q.position;if(q)q.position.version=Q.version;else{let ee={w:Q.data.width+2,h:Q.data.height+2,x:0,y:0},ue=new a.I(ee,Q);this.patterns[w]={bin:ee,position:ue}}return this._updatePatternAtlas(),this.patterns[w].position}bind(w){let q=w.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new m(w,this.atlasImage,q.RGBA),this.atlasTexture.bind(q.LINEAR,q.CLAMP_TO_EDGE)}_updatePatternAtlas(){let w=[];for(let ue in this.patterns)w.push(this.patterns[ue].bin);let{w:q,h:Q}=a.p(w),ee=this.atlasImage;ee.resize({width:q||1,height:Q||1});for(let ue in this.patterns){let{bin:Ve}=this.patterns[ue],tt=Ve.x+1,mt=Ve.y+1,Bt=this.getImage(ue).data,ir=Bt.width,or=Bt.height;a.R.copy(Bt,ee,{x:0,y:0},{x:tt,y:mt},{width:ir,height:or}),a.R.copy(Bt,ee,{x:0,y:or-1},{x:tt,y:mt-1},{width:ir,height:1}),a.R.copy(Bt,ee,{x:0,y:0},{x:tt,y:mt+or},{width:ir,height:1}),a.R.copy(Bt,ee,{x:ir-1,y:0},{x:tt-1,y:mt},{width:1,height:or}),a.R.copy(Bt,ee,{x:0,y:0},{x:tt+ir,y:mt},{width:1,height:or})}this.dirty=!0}beginFrame(){this.callbackDispatchedThisFrame={}}dispatchRenderCallbacks(w){for(let q of w){if(this.callbackDispatchedThisFrame[q])continue;this.callbackDispatchedThisFrame[q]=!0;let Q=this.getImage(q);Q||a.w(`Image with ID: "${q}" was not found`),P(Q)&&this.updateImage(q,Q)}}}let B=1e20;function F(le,w,q,Q,ee,ue,Ve,tt,mt){for(let Bt=w;Bt-1);mt++,ue[mt]=tt,Ve[mt]=Bt,Ve[mt+1]=B}for(let tt=0,mt=0;tt65535)throw new Error("glyphs > 65535 not supported");if(Q.ranges[ue])return{stack:w,id:q,glyph:ee};if(!this.url)throw new Error("glyphsUrl is not set");if(!Q.requests[ue]){let tt=G.loadGlyphRange(w,ue,this.url,this.requestManager);Q.requests[ue]=tt}let Ve=yield Q.requests[ue];for(let tt in Ve)this._doesCharSupportLocalGlyph(+tt)||(Q.glyphs[+tt]=Ve[+tt]);return Q.ranges[ue]=!0,{stack:w,id:q,glyph:Ve[q]||null}})}_doesCharSupportLocalGlyph(w){return!!this.localIdeographFontFamily&&new RegExp("\\p{Ideo}|\\p{sc=Hang}|\\p{sc=Hira}|\\p{sc=Kana}","u").test(String.fromCodePoint(w))}_tinySDF(w,q,Q){let ee=this.localIdeographFontFamily;if(!ee||!this._doesCharSupportLocalGlyph(Q))return;let ue=w.tinySDF;if(!ue){let tt="400";/bold/i.test(q)?tt="900":/medium/i.test(q)?tt="500":/light/i.test(q)&&(tt="200"),ue=w.tinySDF=new G.TinySDF({fontSize:48,buffer:6,radius:16,cutoff:.25,fontFamily:ee,fontWeight:tt})}let Ve=ue.draw(String.fromCharCode(Q));return{id:Q,bitmap:new a.o({width:Ve.width||60,height:Ve.height||60},Ve.data),metrics:{width:Ve.glyphWidth/2||24,height:Ve.glyphHeight/2||24,left:Ve.glyphLeft/2+.5||0,top:Ve.glyphTop/2-27.5||-8,advance:Ve.glyphAdvance/2||24,isDoubleResolution:!0}}}}G.loadGlyphRange=function(le,w,q,Q){return a._(this,void 0,void 0,function*(){let ee=256*w,ue=ee+255,Ve=Q.transformRequest(q.replace("{fontstack}",le).replace("{range}",`${ee}-${ue}`),"Glyphs"),tt=yield a.l(Ve,new AbortController);if(!tt||!tt.data)throw new Error(`Could not load glyph range. range: ${w}, ${ee}-${ue}`);let mt={};for(let Bt of a.n(tt.data))mt[Bt.id]=Bt;return mt})},G.TinySDF=class{constructor({fontSize:le=24,buffer:w=3,radius:q=8,cutoff:Q=.25,fontFamily:ee="sans-serif",fontWeight:ue="normal",fontStyle:Ve="normal"}={}){this.buffer=w,this.cutoff=Q,this.radius=q;let tt=this.size=le+4*w,mt=this._createCanvas(tt),Bt=this.ctx=mt.getContext("2d",{willReadFrequently:!0});Bt.font=`${Ve} ${ue} ${le}px ${ee}`,Bt.textBaseline="alphabetic",Bt.textAlign="left",Bt.fillStyle="black",this.gridOuter=new Float64Array(tt*tt),this.gridInner=new Float64Array(tt*tt),this.f=new Float64Array(tt),this.z=new Float64Array(tt+1),this.v=new Uint16Array(tt)}_createCanvas(le){let w=document.createElement("canvas");return w.width=w.height=le,w}draw(le){let{width:w,actualBoundingBoxAscent:q,actualBoundingBoxDescent:Q,actualBoundingBoxLeft:ee,actualBoundingBoxRight:ue}=this.ctx.measureText(le),Ve=Math.ceil(q),tt=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(ue-ee))),mt=Math.min(this.size-this.buffer,Ve+Math.ceil(Q)),Bt=tt+2*this.buffer,ir=mt+2*this.buffer,or=Math.max(Bt*ir,0),kr=new Uint8ClampedArray(or),Vr={data:kr,width:Bt,height:ir,glyphWidth:tt,glyphHeight:mt,glyphTop:Ve,glyphLeft:0,glyphAdvance:w};if(tt===0||mt===0)return Vr;let{ctx:he,buffer:Se,gridInner:Ne,gridOuter:Ge}=this;he.clearRect(Se,Se,tt,mt),he.fillText(le,Se,Se+Ve);let lt=he.getImageData(Se,Se,tt,mt);Ge.fill(B,0,or),Ne.fill(0,0,or);for(let rt=0;rt0?fr*fr:0,Ne[nr]=fr<0?fr*fr:0}}F(Ge,0,0,Bt,ir,Bt,this.f,this.v,this.z),F(Ne,Se,Se,tt,mt,Bt,this.f,this.v,this.z);for(let rt=0;rt1&&(mt=w[++tt]);let ir=Math.abs(Bt-mt.left),or=Math.abs(Bt-mt.right),kr=Math.min(ir,or),Vr,he=ue/Q*(ee+1);if(mt.isDash){let Se=ee-Math.abs(he);Vr=Math.sqrt(kr*kr+Se*Se)}else Vr=ee-Math.sqrt(kr*kr+he*he);this.data[Ve+Bt]=Math.max(0,Math.min(255,Vr+128))}}}addRegularDash(w){for(let tt=w.length-1;tt>=0;--tt){let mt=w[tt],Bt=w[tt+1];mt.zeroLength?w.splice(tt,1):Bt&&Bt.isDash===mt.isDash&&(Bt.left=mt.left,w.splice(tt,1))}let q=w[0],Q=w[w.length-1];q.isDash===Q.isDash&&(q.left=Q.left-this.width,Q.right=q.right+this.width);let ee=this.width*this.nextRow,ue=0,Ve=w[ue];for(let tt=0;tt1&&(Ve=w[++ue]);let mt=Math.abs(tt-Ve.left),Bt=Math.abs(tt-Ve.right),ir=Math.min(mt,Bt);this.data[ee+tt]=Math.max(0,Math.min(255,(Ve.isDash?ir:-ir)+128))}}addDash(w,q){let Q=q?7:0,ee=2*Q+1;if(this.nextRow+ee>this.height)return a.w("LineAtlas out of space"),null;let ue=0;for(let tt=0;tt{q.terminate()}),this.workers=null)}isPreloaded(){return!!this.active[be]}numActive(){return Object.keys(this.active).length}}let Ce=Math.floor(l.hardwareConcurrency/2),de,te;function ke(){return de||(de=new ze),de}ze.workerCount=a.C(globalThis)?Math.max(Math.min(Ce,3),1):1;class Ee{constructor(w,q){this.workerPool=w,this.actors=[],this.currentActor=0,this.id=q;let Q=this.workerPool.acquire(q);for(let ee=0;ee{q.remove()}),this.actors=[],w&&this.workerPool.release(this.id)}registerMessageHandler(w,q){for(let Q of this.actors)Q.registerMessageHandler(w,q)}}function Me(){return te||(te=new Ee(ke(),a.G),te.registerMessageHandler("GR",(le,w,q)=>a.m(w,q))),te}function Ue(le,w){let q=a.H();return a.J(q,q,[1,1,0]),a.K(q,q,[.5*le.width,.5*le.height,1]),a.L(q,q,le.calculatePosMatrix(w.toUnwrapped()))}function De(le,w,q,Q,ee,ue){let Ve=function(or,kr,Vr){if(or)for(let he of or){let Se=kr[he];if(Se&&Se.source===Vr&&Se.type==="fill-extrusion")return!0}else for(let he in kr){let Se=kr[he];if(Se.source===Vr&&Se.type==="fill-extrusion")return!0}return!1}(ee&&ee.layers,w,le.id),tt=ue.maxPitchScaleFactor(),mt=le.tilesIn(Q,tt,Ve);mt.sort(ye);let Bt=[];for(let or of mt)Bt.push({wrappedTileID:or.tileID.wrapped().key,queryResults:or.tile.queryRenderedFeatures(w,q,le._state,or.queryGeometry,or.cameraQueryGeometry,or.scale,ee,ue,tt,Ue(le.transform,or.tileID))});let ir=function(or){let kr={},Vr={};for(let he of or){let Se=he.queryResults,Ne=he.wrappedTileID,Ge=Vr[Ne]=Vr[Ne]||{};for(let lt in Se){let rt=Se[lt],pt=Ge[lt]=Ge[lt]||{},Ht=kr[lt]=kr[lt]||[];for(let nr of rt)pt[nr.featureIndex]||(pt[nr.featureIndex]=!0,Ht.push(nr))}}return kr}(Bt);for(let or in ir)ir[or].forEach(kr=>{let Vr=kr.feature,he=le.getFeatureState(Vr.layer["source-layer"],Vr.id);Vr.source=Vr.layer.source,Vr.layer["source-layer"]&&(Vr.sourceLayer=Vr.layer["source-layer"]),Vr.state=he});return ir}function ye(le,w){let q=le.tileID,Q=w.tileID;return q.overscaledZ-Q.overscaledZ||q.canonical.y-Q.canonical.y||q.wrap-Q.wrap||q.canonical.x-Q.canonical.x}function qe(le,w,q){return a._(this,void 0,void 0,function*(){let Q=le;if(le.url?Q=(yield a.h(w.transformRequest(le.url,"Source"),q)).data:yield l.frameAsync(q),!Q)return null;let ee=a.M(a.e(Q,le),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);return"vector_layers"in Q&&Q.vector_layers&&(ee.vectorLayerIds=Q.vector_layers.map(ue=>ue.id)),ee})}class ce{constructor(w,q){w&&(q?this.setSouthWest(w).setNorthEast(q):Array.isArray(w)&&(w.length===4?this.setSouthWest([w[0],w[1]]).setNorthEast([w[2],w[3]]):this.setSouthWest(w[0]).setNorthEast(w[1])))}setNorthEast(w){return this._ne=w instanceof a.N?new a.N(w.lng,w.lat):a.N.convert(w),this}setSouthWest(w){return this._sw=w instanceof a.N?new a.N(w.lng,w.lat):a.N.convert(w),this}extend(w){let q=this._sw,Q=this._ne,ee,ue;if(w instanceof a.N)ee=w,ue=w;else{if(!(w instanceof ce))return Array.isArray(w)?w.length===4||w.every(Array.isArray)?this.extend(ce.convert(w)):this.extend(a.N.convert(w)):w&&("lng"in w||"lon"in w)&&"lat"in w?this.extend(a.N.convert(w)):this;if(ee=w._sw,ue=w._ne,!ee||!ue)return this}return q||Q?(q.lng=Math.min(ee.lng,q.lng),q.lat=Math.min(ee.lat,q.lat),Q.lng=Math.max(ue.lng,Q.lng),Q.lat=Math.max(ue.lat,Q.lat)):(this._sw=new a.N(ee.lng,ee.lat),this._ne=new a.N(ue.lng,ue.lat)),this}getCenter(){return new a.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new a.N(this.getWest(),this.getNorth())}getSouthEast(){return new a.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(w){let{lng:q,lat:Q}=a.N.convert(w),ee=this._sw.lng<=q&&q<=this._ne.lng;return this._sw.lng>this._ne.lng&&(ee=this._sw.lng>=q&&q>=this._ne.lng),this._sw.lat<=Q&&Q<=this._ne.lat&&ee}static convert(w){return w instanceof ce?w:w&&new ce(w)}static fromLngLat(w,q=0){let Q=360*q/40075017,ee=Q/Math.cos(Math.PI/180*w.lat);return new ce(new a.N(w.lng-ee,w.lat-Q),new a.N(w.lng+ee,w.lat+Q))}adjustAntiMeridian(){let w=new a.N(this._sw.lng,this._sw.lat),q=new a.N(this._ne.lng,this._ne.lat);return new ce(w,w.lng>q.lng?new a.N(q.lng+360,q.lat):q)}}class Je{constructor(w,q,Q){this.bounds=ce.convert(this.validateBounds(w)),this.minzoom=q||0,this.maxzoom=Q||24}validateBounds(w){return Array.isArray(w)&&w.length===4?[Math.max(-180,w[0]),Math.max(-90,w[1]),Math.min(180,w[2]),Math.min(90,w[3])]:[-180,-90,180,90]}contains(w){let q=Math.pow(2,w.z),Q=Math.floor(a.O(this.bounds.getWest())*q),ee=Math.floor(a.Q(this.bounds.getNorth())*q),ue=Math.ceil(a.O(this.bounds.getEast())*q),Ve=Math.ceil(a.Q(this.bounds.getSouth())*q);return w.x>=Q&&w.x=ee&&w.y{this._options.tiles=w}),this}setUrl(w){return this.setSourceProperty(()=>{this.url=w,this._options.url=w}),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}serialize(){return a.e({},this._options)}loadTile(w){return a._(this,void 0,void 0,function*(){let q=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),Q={request:this.map._requestManager.transformRequest(q,"Tile"),uid:w.uid,tileID:w.tileID,zoom:w.tileID.overscaledZ,tileSize:this.tileSize*w.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};Q.request.collectResourceTiming=this._collectResourceTiming;let ee="RT";if(w.actor&&w.state!=="expired"){if(w.state==="loading")return new Promise((ue,Ve)=>{w.reloadPromise={resolve:ue,reject:Ve}})}else w.actor=this.dispatcher.getActor(),ee="LT";w.abortController=new AbortController;try{let ue=yield w.actor.sendAsync({type:ee,data:Q},w.abortController);if(delete w.abortController,w.aborted)return;this._afterTileLoadWorkerResponse(w,ue)}catch(ue){if(delete w.abortController,w.aborted)return;if(ue&&ue.status!==404)throw ue;this._afterTileLoadWorkerResponse(w,null)}})}_afterTileLoadWorkerResponse(w,q){if(q&&q.resourceTiming&&(w.resourceTiming=q.resourceTiming),q&&this.map._refreshExpiredTiles&&w.setExpiryData(q),w.loadVectorData(q,this.map.painter),w.reloadPromise){let Q=w.reloadPromise;w.reloadPromise=null,this.loadTile(w).then(Q.resolve).catch(Q.reject)}}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController),w.actor&&(yield w.actor.sendAsync({type:"AT",data:{uid:w.uid,type:this.type,source:this.id}}))})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.unloadVectorData(),w.actor&&(yield w.actor.sendAsync({type:"RMT",data:{uid:w.uid,type:this.type,source:this.id}}))})}hasTransition(){return!1}}class gt extends a.E{constructor(w,q,Q,ee){super(),this.id=w,this.dispatcher=Q,this.setEventedParent(ee),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=a.e({type:"raster"},q),a.e(this,a.M(q,["url","scheme","tileSize"]))}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new a.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let w=yield qe(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,w&&(a.e(this,w),w.bounds&&(this.tileBounds=new Je(w.bounds,this.minzoom,this.maxzoom)),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})))}catch(w){this._tileJSONRequest=null,this.fire(new a.j(w))}})}loaded(){return this._loaded}onAdd(w){this.map=w,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}setSourceProperty(w){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),w(),this.load()}setTiles(w){return this.setSourceProperty(()=>{this._options.tiles=w}),this}setUrl(w){return this.setSourceProperty(()=>{this.url=w,this._options.url=w}),this}serialize(){return a.e({},this._options)}hasTile(w){return!this.tileBounds||this.tileBounds.contains(w.canonical)}loadTile(w){return a._(this,void 0,void 0,function*(){let q=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);w.abortController=new AbortController;try{let Q=yield v.getImage(this.map._requestManager.transformRequest(q,"Tile"),w.abortController,this.map._refreshExpiredTiles);if(delete w.abortController,w.aborted)return void(w.state="unloaded");if(Q&&Q.data){this.map._refreshExpiredTiles&&Q.cacheControl&&Q.expires&&w.setExpiryData({cacheControl:Q.cacheControl,expires:Q.expires});let ee=this.map.painter.context,ue=ee.gl,Ve=Q.data;w.texture=this.map.painter.getTileTexture(Ve.width),w.texture?w.texture.update(Ve,{useMipmap:!0}):(w.texture=new m(ee,Ve,ue.RGBA,{useMipmap:!0}),w.texture.bind(ue.LINEAR,ue.CLAMP_TO_EDGE,ue.LINEAR_MIPMAP_NEAREST)),w.state="loaded"}}catch(Q){if(delete w.abortController,w.aborted)w.state="unloaded";else if(Q)throw w.state="errored",Q}})}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController)})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.texture&&this.map.painter.saveTileTexture(w.texture)})}hasTransition(){return!1}}class Nt extends gt{constructor(w,q,Q,ee){super(w,q,Q,ee),this.type="raster-dem",this.maxzoom=22,this._options=a.e({type:"raster-dem"},q),this.encoding=q.encoding||"mapbox",this.redFactor=q.redFactor,this.greenFactor=q.greenFactor,this.blueFactor=q.blueFactor,this.baseShift=q.baseShift}loadTile(w){return a._(this,void 0,void 0,function*(){let q=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),Q=this.map._requestManager.transformRequest(q,"Tile");w.neighboringTiles=this._getNeighboringTiles(w.tileID),w.abortController=new AbortController;try{let ee=yield v.getImage(Q,w.abortController,this.map._refreshExpiredTiles);if(delete w.abortController,w.aborted)return void(w.state="unloaded");if(ee&&ee.data){let ue=ee.data;this.map._refreshExpiredTiles&&ee.cacheControl&&ee.expires&&w.setExpiryData({cacheControl:ee.cacheControl,expires:ee.expires});let Ve=a.b(ue)&&a.U()?ue:yield this.readImageNow(ue),tt={type:this.type,uid:w.uid,source:this.id,rawImageData:Ve,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!w.actor||w.state==="expired"){w.actor=this.dispatcher.getActor();let mt=yield w.actor.sendAsync({type:"LDT",data:tt});w.dem=mt,w.needsHillshadePrepare=!0,w.needsTerrainPrepare=!0,w.state="loaded"}}}catch(ee){if(delete w.abortController,w.aborted)w.state="unloaded";else if(ee)throw w.state="errored",ee}})}readImageNow(w){return a._(this,void 0,void 0,function*(){if(typeof VideoFrame!="undefined"&&a.V()){let q=w.width+2,Q=w.height+2;try{return new a.R({width:q,height:Q},yield a.W(w,-1,-1,q,Q))}catch(ee){}}return l.getImageData(w,1)})}_getNeighboringTiles(w){let q=w.canonical,Q=Math.pow(2,q.z),ee=(q.x-1+Q)%Q,ue=q.x===0?w.wrap-1:w.wrap,Ve=(q.x+1+Q)%Q,tt=q.x+1===Q?w.wrap+1:w.wrap,mt={};return mt[new a.S(w.overscaledZ,ue,q.z,ee,q.y).key]={backfilled:!1},mt[new a.S(w.overscaledZ,tt,q.z,Ve,q.y).key]={backfilled:!1},q.y>0&&(mt[new a.S(w.overscaledZ,ue,q.z,ee,q.y-1).key]={backfilled:!1},mt[new a.S(w.overscaledZ,w.wrap,q.z,q.x,q.y-1).key]={backfilled:!1},mt[new a.S(w.overscaledZ,tt,q.z,Ve,q.y-1).key]={backfilled:!1}),q.y+10&&a.e(ue,{resourceTiming:ee}),this.fire(new a.k("data",Object.assign(Object.assign({},ue),{sourceDataType:"metadata"}))),this.fire(new a.k("data",Object.assign(Object.assign({},ue),{sourceDataType:"content"})))}catch(Q){if(this._pendingLoads--,this._removed)return void this.fire(new a.k("dataabort",{dataType:"source"}));this.fire(new a.j(Q))}})}loaded(){return this._pendingLoads===0}loadTile(w){return a._(this,void 0,void 0,function*(){let q=w.actor?"RT":"LT";w.actor=this.actor;let Q={type:this.type,uid:w.uid,tileID:w.tileID,zoom:w.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};w.abortController=new AbortController;let ee=yield this.actor.sendAsync({type:q,data:Q},w.abortController);delete w.abortController,w.unloadVectorData(),w.aborted||w.loadVectorData(ee,this.map.painter,q==="RT")})}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController),w.aborted=!0})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.unloadVectorData(),yield this.actor.sendAsync({type:"RMT",data:{uid:w.uid,type:this.type,source:this.id}})})}onRemove(){this._removed=!0,this.actor.sendAsync({type:"RS",data:{type:this.type,source:this.id}})}serialize(){return a.e({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}}var Ke=a.Y([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);class Ct extends a.E{constructor(w,q,Q,ee){super(),this.id=w,this.dispatcher=Q,this.coordinates=q.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(ee),this.options=q}load(w){return a._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new a.k("dataloading",{dataType:"source"})),this.url=this.options.url,this._request=new AbortController;try{let q=yield v.getImage(this.map._requestManager.transformRequest(this.url,"Image"),this._request);this._request=null,this._loaded=!0,q&&q.data&&(this.image=q.data,w&&(this.coordinates=w),this._finishLoading())}catch(q){this._request=null,this._loaded=!0,this.fire(new a.j(q))}})}loaded(){return this._loaded}updateImage(w){return w.url?(this._request&&(this._request.abort(),this._request=null),this.options.url=w.url,this.load(w.coordinates).finally(()=>{this.texture=null}),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(w){this.map=w,this.load()}onRemove(){this._request&&(this._request.abort(),this._request=null)}setCoordinates(w){this.coordinates=w;let q=w.map(a.Z.fromLngLat);this.tileID=function(ee){let ue=1/0,Ve=1/0,tt=-1/0,mt=-1/0;for(let kr of ee)ue=Math.min(ue,kr.x),Ve=Math.min(Ve,kr.y),tt=Math.max(tt,kr.x),mt=Math.max(mt,kr.y);let Bt=Math.max(tt-ue,mt-Ve),ir=Math.max(0,Math.floor(-Math.log(Bt)/Math.LN2)),or=Math.pow(2,ir);return new a.a1(ir,Math.floor((ue+tt)/2*or),Math.floor((Ve+mt)/2*or))}(q),this.minzoom=this.maxzoom=this.tileID.z;let Q=q.map(ee=>this.tileID.getTilePoint(ee)._round());return this._boundsArray=new a.$,this._boundsArray.emplaceBack(Q[0].x,Q[0].y,0,0),this._boundsArray.emplaceBack(Q[1].x,Q[1].y,a.X,0),this._boundsArray.emplaceBack(Q[3].x,Q[3].y,0,a.X),this._boundsArray.emplaceBack(Q[2].x,Q[2].y,a.X,a.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(Object.keys(this.tiles).length===0||!this.image)return;let w=this.map.painter.context,q=w.gl;this.boundsBuffer||(this.boundsBuffer=w.createVertexBuffer(this._boundsArray,Ke.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new m(w,this.image,q.RGBA),this.texture.bind(q.LINEAR,q.CLAMP_TO_EDGE));let Q=!1;for(let ee in this.tiles){let ue=this.tiles[ee];ue.state!=="loaded"&&(ue.state="loaded",ue.texture=this.texture,Q=!0)}Q&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}loadTile(w){return a._(this,void 0,void 0,function*(){this.tileID&&this.tileID.equals(w.tileID.canonical)?(this.tiles[String(w.tileID.wrap)]=w,w.buckets={}):w.state="errored"})}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class wt extends Ct{constructor(w,q,Q,ee){super(w,q,Q,ee),this.roundZoom=!0,this.type="video",this.options=q}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1;let w=this.options;this.urls=[];for(let q of w.urls)this.urls.push(this.map._requestManager.transformRequest(q,"Source").url);try{let q=yield a.a3(this.urls);if(this._loaded=!0,!q)return;this.video=q,this.video.loop=!0,this.video.addEventListener("playing",()=>{this.map.triggerRepaint()}),this.map&&this.video.play(),this._finishLoading()}catch(q){this.fire(new a.j(q))}})}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(w){if(this.video){let q=this.video.seekable;wq.end(0)?this.fire(new a.j(new a.a2(`sources.${this.id}`,null,`Playback for this video can be set only between the ${q.start(0)} and ${q.end(0)}-second mark.`))):this.video.currentTime=w}}getVideo(){return this.video}onAdd(w){this.map||(this.map=w,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(Object.keys(this.tiles).length===0||this.video.readyState<2)return;let w=this.map.painter.context,q=w.gl;this.boundsBuffer||(this.boundsBuffer=w.createVertexBuffer(this._boundsArray,Ke.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(q.LINEAR,q.CLAMP_TO_EDGE),q.texSubImage2D(q.TEXTURE_2D,0,0,0,q.RGBA,q.UNSIGNED_BYTE,this.video)):(this.texture=new m(w,this.video,q.RGBA),this.texture.bind(q.LINEAR,q.CLAMP_TO_EDGE));let Q=!1;for(let ee in this.tiles){let ue=this.tiles[ee];ue.state!=="loaded"&&(ue.state="loaded",ue.texture=this.texture,Q=!0)}Q&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class St extends Ct{constructor(w,q,Q,ee){super(w,q,Q,ee),q.coordinates?Array.isArray(q.coordinates)&&q.coordinates.length===4&&!q.coordinates.some(ue=>!Array.isArray(ue)||ue.length!==2||ue.some(Ve=>typeof Ve!="number"))||this.fire(new a.j(new a.a2(`sources.${w}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new a.j(new a.a2(`sources.${w}`,null,'missing required property "coordinates"'))),q.animate&&typeof q.animate!="boolean"&&this.fire(new a.j(new a.a2(`sources.${w}`,null,'optional "animate" property must be a boolean value'))),q.canvas?typeof q.canvas=="string"||q.canvas instanceof HTMLCanvasElement||this.fire(new a.j(new a.a2(`sources.${w}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new a.j(new a.a2(`sources.${w}`,null,'missing required property "canvas"'))),this.options=q,this.animate=q.animate===void 0||q.animate}load(){return a._(this,void 0,void 0,function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new a.j(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())})}getCanvas(){return this.canvas}onAdd(w){this.map=w,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let w=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,w=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,w=!0),this._hasInvalidDimensions()||Object.keys(this.tiles).length===0)return;let q=this.map.painter.context,Q=q.gl;this.boundsBuffer||(this.boundsBuffer=q.createVertexBuffer(this._boundsArray,Ke.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture?(w||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new m(q,this.canvas,Q.RGBA,{premultiply:!0});let ee=!1;for(let ue in this.tiles){let Ve=this.tiles[ue];Ve.state!=="loaded"&&(Ve.state="loaded",Ve.texture=this.texture,ee=!0)}ee&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(let w of[this.canvas.width,this.canvas.height])if(isNaN(w)||w<=0)return!0;return!1}}let Dt={},Zt=le=>{switch(le){case"geojson":return at;case"image":return Ct;case"raster":return gt;case"raster-dem":return Nt;case"vector":return nt;case"video":return wt;case"canvas":return St}return Dt[le]},Et="RTLPluginLoaded";class Te extends a.E{constructor(){super(...arguments),this.status="unavailable",this.url=null,this.dispatcher=Me()}_syncState(w){return this.status=w,this.dispatcher.broadcast("SRPS",{pluginStatus:w,pluginURL:this.url}).catch(q=>{throw this.status="error",q})}getRTLTextPluginStatus(){return this.status}clearRTLTextPlugin(){this.status="unavailable",this.url=null}setRTLTextPlugin(w){return a._(this,arguments,void 0,function*(q,Q=!1){if(this.url)throw new Error("setRTLTextPlugin cannot be called multiple times.");if(this.url=l.resolveURL(q),!this.url)throw new Error(`requested url ${q} is invalid`);if(this.status==="unavailable"){if(!Q)return this._requestImport();this.status="deferred",this._syncState(this.status)}else if(this.status==="requested")return this._requestImport()})}_requestImport(){return a._(this,void 0,void 0,function*(){yield this._syncState("loading"),this.status="loaded",this.fire(new a.k(Et))})}lazyLoad(){this.status==="unavailable"?this.status="requested":this.status==="deferred"&&this._requestImport()}}let ot=null;function Tt(){return ot||(ot=new Te),ot}class vt{constructor(w,q){this.timeAdded=0,this.fadeEndTime=0,this.tileID=w,this.uid=a.a4(),this.uses=0,this.tileSize=q,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.rtt=[],this.rttCoords={},this.expiredRequestCount=0,this.state="loading"}registerFadeDuration(w){let q=w+this.timeAdded;que.getLayer(Bt)).filter(Boolean);if(mt.length!==0){tt.layers=mt,tt.stateDependentLayerIds&&(tt.stateDependentLayers=tt.stateDependentLayerIds.map(Bt=>mt.filter(ir=>ir.id===Bt)[0]));for(let Bt of mt)Ve[Bt.id]=tt}}return Ve}(w.buckets,q.style),this.hasSymbolBuckets=!1;for(let ee in this.buckets){let ue=this.buckets[ee];if(ue instanceof a.a6){if(this.hasSymbolBuckets=!0,!Q)break;ue.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(let ee in this.buckets){let ue=this.buckets[ee];if(ue instanceof a.a6&&ue.hasRTLText){this.hasRTLText=!0,Tt().lazyLoad();break}}this.queryPadding=0;for(let ee in this.buckets){let ue=this.buckets[ee];this.queryPadding=Math.max(this.queryPadding,q.style.getLayer(ee).queryRadius(ue))}w.imageAtlas&&(this.imageAtlas=w.imageAtlas),w.glyphAtlasImage&&(this.glyphAtlasImage=w.glyphAtlasImage)}else this.collisionBoxArray=new a.a5}unloadVectorData(){for(let w in this.buckets)this.buckets[w].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"}getBucket(w){return this.buckets[w.id]}upload(w){for(let Q in this.buckets){let ee=this.buckets[Q];ee.uploadPending()&&ee.upload(w)}let q=w.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new m(w,this.imageAtlas.image,q.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new m(w,this.glyphAtlasImage,q.ALPHA),this.glyphAtlasImage=null)}prepare(w){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(w,this.imageAtlasTexture)}queryRenderedFeatures(w,q,Q,ee,ue,Ve,tt,mt,Bt,ir){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:ee,cameraQueryGeometry:ue,scale:Ve,tileSize:this.tileSize,pixelPosMatrix:ir,transform:mt,params:tt,queryPadding:this.queryPadding*Bt},w,q,Q):{}}querySourceFeatures(w,q){let Q=this.latestFeatureIndex;if(!Q||!Q.rawTileData)return;let ee=Q.loadVTLayers(),ue=q&&q.sourceLayer?q.sourceLayer:"",Ve=ee._geojsonTileLayer||ee[ue];if(!Ve)return;let tt=a.a7(q&&q.filter),{z:mt,x:Bt,y:ir}=this.tileID.canonical,or={z:mt,x:Bt,y:ir};for(let kr=0;krQ)ee=!1;else if(q)if(this.expirationTime{this.remove(w,ue)},Q)),this.data[ee].push(ue),this.order.push(ee),this.order.length>this.max){let Ve=this._getAndRemoveByKey(this.order[0]);Ve&&this.onRemove(Ve)}return this}has(w){return w.wrapped().key in this.data}getAndRemove(w){return this.has(w)?this._getAndRemoveByKey(w.wrapped().key):null}_getAndRemoveByKey(w){let q=this.data[w].shift();return q.timeout&&clearTimeout(q.timeout),this.data[w].length===0&&delete this.data[w],this.order.splice(this.order.indexOf(w),1),q.value}getByKey(w){let q=this.data[w];return q?q[0].value:null}get(w){return this.has(w)?this.data[w.wrapped().key][0].value:null}remove(w,q){if(!this.has(w))return this;let Q=w.wrapped().key,ee=q===void 0?0:this.data[Q].indexOf(q),ue=this.data[Q][ee];return this.data[Q].splice(ee,1),ue.timeout&&clearTimeout(ue.timeout),this.data[Q].length===0&&delete this.data[Q],this.onRemove(ue.value),this.order.splice(this.order.indexOf(Q),1),this}setMaxSize(w){for(this.max=w;this.order.length>this.max;){let q=this._getAndRemoveByKey(this.order[0]);q&&this.onRemove(q)}return this}filter(w){let q=[];for(let Q in this.data)for(let ee of this.data[Q])w(ee.value)||q.push(ee);for(let Q of q)this.remove(Q.value.tileID,Q)}}class He{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(w,q,Q){let ee=String(q);if(this.stateChanges[w]=this.stateChanges[w]||{},this.stateChanges[w][ee]=this.stateChanges[w][ee]||{},a.e(this.stateChanges[w][ee],Q),this.deletedStates[w]===null){this.deletedStates[w]={};for(let ue in this.state[w])ue!==ee&&(this.deletedStates[w][ue]=null)}else if(this.deletedStates[w]&&this.deletedStates[w][ee]===null){this.deletedStates[w][ee]={};for(let ue in this.state[w][ee])Q[ue]||(this.deletedStates[w][ee][ue]=null)}else for(let ue in Q)this.deletedStates[w]&&this.deletedStates[w][ee]&&this.deletedStates[w][ee][ue]===null&&delete this.deletedStates[w][ee][ue]}removeFeatureState(w,q,Q){if(this.deletedStates[w]===null)return;let ee=String(q);if(this.deletedStates[w]=this.deletedStates[w]||{},Q&&q!==void 0)this.deletedStates[w][ee]!==null&&(this.deletedStates[w][ee]=this.deletedStates[w][ee]||{},this.deletedStates[w][ee][Q]=null);else if(q!==void 0)if(this.stateChanges[w]&&this.stateChanges[w][ee])for(Q in this.deletedStates[w][ee]={},this.stateChanges[w][ee])this.deletedStates[w][ee][Q]=null;else this.deletedStates[w][ee]=null;else this.deletedStates[w]=null}getState(w,q){let Q=String(q),ee=a.e({},(this.state[w]||{})[Q],(this.stateChanges[w]||{})[Q]);if(this.deletedStates[w]===null)return{};if(this.deletedStates[w]){let ue=this.deletedStates[w][q];if(ue===null)return{};for(let Ve in ue)delete ee[Ve]}return ee}initializeTileState(w,q){w.setFeatureState(this.state,q)}coalesceChanges(w,q){let Q={};for(let ee in this.stateChanges){this.state[ee]=this.state[ee]||{};let ue={};for(let Ve in this.stateChanges[ee])this.state[ee][Ve]||(this.state[ee][Ve]={}),a.e(this.state[ee][Ve],this.stateChanges[ee][Ve]),ue[Ve]=this.state[ee][Ve];Q[ee]=ue}for(let ee in this.deletedStates){this.state[ee]=this.state[ee]||{};let ue={};if(this.deletedStates[ee]===null)for(let Ve in this.state[ee])ue[Ve]={},this.state[ee][Ve]={};else for(let Ve in this.deletedStates[ee]){if(this.deletedStates[ee][Ve]===null)this.state[ee][Ve]={};else for(let tt of Object.keys(this.deletedStates[ee][Ve]))delete this.state[ee][Ve][tt];ue[Ve]=this.state[ee][Ve]}Q[ee]=Q[ee]||{},a.e(Q[ee],ue)}if(this.stateChanges={},this.deletedStates={},Object.keys(Q).length!==0)for(let ee in w)w[ee].setFeatureState(Q,q)}}class it extends a.E{constructor(w,q,Q){super(),this.id=w,this.dispatcher=Q,this.on("data",ee=>this._dataHandler(ee)),this.on("dataloading",()=>{this._sourceErrored=!1}),this.on("error",()=>{this._sourceErrored=this._source.loaded()}),this._source=((ee,ue,Ve,tt)=>{let mt=new(Zt(ue.type))(ee,ue,Ve,tt);if(mt.id!==ee)throw new Error(`Expected Source id to be ${ee} instead of ${mt.id}`);return mt})(w,q,Q,this),this._tiles={},this._cache=new Ye(0,ee=>this._unloadTile(ee)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new He,this._didEmitContent=!1,this._updated=!1}onAdd(w){this.map=w,this._maxTileCacheSize=w?w._maxTileCacheSize:null,this._maxTileCacheZoomLevels=w?w._maxTileCacheZoomLevels:null,this._source&&this._source.onAdd&&this._source.onAdd(w)}onRemove(w){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(w)}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;if(!(this.used===void 0&&this.usedForTerrain===void 0||this.used||this.usedForTerrain))return!0;if(!this._updated)return!1;for(let w in this._tiles){let q=this._tiles[w];if(q.state!=="loaded"&&q.state!=="errored")return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;let w=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,w&&this.reload(),this.transform&&this.update(this.transform,this.terrain)}_loadTile(w,q,Q){return a._(this,void 0,void 0,function*(){try{yield this._source.loadTile(w),this._tileLoaded(w,q,Q)}catch(ee){w.state="errored",ee.status!==404?this._source.fire(new a.j(ee,{tile:w})):this.update(this.transform,this.terrain)}})}_unloadTile(w){this._source.unloadTile&&this._source.unloadTile(w)}_abortTile(w){this._source.abortTile&&this._source.abortTile(w),this._source.fire(new a.k("dataabort",{tile:w,coord:w.tileID,dataType:"source"}))}serialize(){return this._source.serialize()}prepare(w){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(let q in this._tiles){let Q=this._tiles[q];Q.upload(w),Q.prepare(this.map.style.imageManager)}}getIds(){return Object.values(this._tiles).map(w=>w.tileID).sort(et).map(w=>w.key)}getRenderableIds(w){let q=[];for(let Q in this._tiles)this._isIdRenderable(Q,w)&&q.push(this._tiles[Q]);return w?q.sort((Q,ee)=>{let ue=Q.tileID,Ve=ee.tileID,tt=new a.P(ue.canonical.x,ue.canonical.y)._rotate(this.transform.angle),mt=new a.P(Ve.canonical.x,Ve.canonical.y)._rotate(this.transform.angle);return ue.overscaledZ-Ve.overscaledZ||mt.y-tt.y||mt.x-tt.x}).map(Q=>Q.tileID.key):q.map(Q=>Q.tileID).sort(et).map(Q=>Q.key)}hasRenderableParent(w){let q=this.findLoadedParent(w,0);return!!q&&this._isIdRenderable(q.tileID.key)}_isIdRenderable(w,q){return this._tiles[w]&&this._tiles[w].hasData()&&!this._coveredTiles[w]&&(q||!this._tiles[w].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(let w in this._tiles)this._tiles[w].state!=="errored"&&this._reloadTile(w,"reloading")}}_reloadTile(w,q){return a._(this,void 0,void 0,function*(){let Q=this._tiles[w];Q&&(Q.state!=="loading"&&(Q.state=q),yield this._loadTile(Q,w,q))})}_tileLoaded(w,q,Q){w.timeAdded=l.now(),Q==="expired"&&(w.refreshedUponExpiration=!0),this._setTileReloadTimer(q,w),this.getSource().type==="raster-dem"&&w.dem&&this._backfillDEM(w),this._state.initializeTileState(w,this.map?this.map.painter:null),w.aborted||this._source.fire(new a.k("data",{dataType:"source",tile:w,coord:w.tileID}))}_backfillDEM(w){let q=this.getRenderableIds();for(let ee=0;ee1||(Math.abs(Ve)>1&&(Math.abs(Ve+mt)===1?Ve+=mt:Math.abs(Ve-mt)===1&&(Ve-=mt)),ue.dem&&ee.dem&&(ee.dem.backfillBorder(ue.dem,Ve,tt),ee.neighboringTiles&&ee.neighboringTiles[Bt]&&(ee.neighboringTiles[Bt].backfilled=!0)))}}getTile(w){return this.getTileByID(w.key)}getTileByID(w){return this._tiles[w]}_retainLoadedChildren(w,q,Q,ee){for(let ue in this._tiles){let Ve=this._tiles[ue];if(ee[ue]||!Ve.hasData()||Ve.tileID.overscaledZ<=q||Ve.tileID.overscaledZ>Q)continue;let tt=Ve.tileID;for(;Ve&&Ve.tileID.overscaledZ>q+1;){let Bt=Ve.tileID.scaledTo(Ve.tileID.overscaledZ-1);Ve=this._tiles[Bt.key],Ve&&Ve.hasData()&&(tt=Bt)}let mt=tt;for(;mt.overscaledZ>q;)if(mt=mt.scaledTo(mt.overscaledZ-1),w[mt.key]){ee[tt.key]=tt;break}}}findLoadedParent(w,q){if(w.key in this._loadedParentTiles){let Q=this._loadedParentTiles[w.key];return Q&&Q.tileID.overscaledZ>=q?Q:null}for(let Q=w.overscaledZ-1;Q>=q;Q--){let ee=w.scaledTo(Q),ue=this._getLoadedTile(ee);if(ue)return ue}}findLoadedSibling(w){return this._getLoadedTile(w)}_getLoadedTile(w){let q=this._tiles[w.key];return q&&q.hasData()?q:this._cache.getByKey(w.wrapped().key)}updateCacheSize(w){let q=Math.ceil(w.width/this._source.tileSize)+1,Q=Math.ceil(w.height/this._source.tileSize)+1,ee=Math.floor(q*Q*(this._maxTileCacheZoomLevels===null?a.a.MAX_TILE_CACHE_ZOOM_LEVELS:this._maxTileCacheZoomLevels)),ue=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,ee):ee;this._cache.setMaxSize(ue)}handleWrapJump(w){let q=Math.round((w-(this._prevLng===void 0?w:this._prevLng))/360);if(this._prevLng=w,q){let Q={};for(let ee in this._tiles){let ue=this._tiles[ee];ue.tileID=ue.tileID.unwrapTo(ue.tileID.wrap+q),Q[ue.tileID.key]=ue}this._tiles=Q;for(let ee in this._timers)clearTimeout(this._timers[ee]),delete this._timers[ee];for(let ee in this._tiles)this._setTileReloadTimer(ee,this._tiles[ee])}}_updateCoveredAndRetainedTiles(w,q,Q,ee,ue,Ve){let tt={},mt={},Bt=Object.keys(w),ir=l.now();for(let or of Bt){let kr=w[or],Vr=this._tiles[or];if(!Vr||Vr.fadeEndTime!==0&&Vr.fadeEndTime<=ir)continue;let he=this.findLoadedParent(kr,q),Se=this.findLoadedSibling(kr),Ne=he||Se||null;Ne&&(this._addTile(Ne.tileID),tt[Ne.tileID.key]=Ne.tileID),mt[or]=kr}this._retainLoadedChildren(mt,ee,Q,w);for(let or in tt)w[or]||(this._coveredTiles[or]=!0,w[or]=tt[or]);if(Ve){let or={},kr={};for(let Vr of ue)this._tiles[Vr.key].hasData()?or[Vr.key]=Vr:kr[Vr.key]=Vr;for(let Vr in kr){let he=kr[Vr].children(this._source.maxzoom);this._tiles[he[0].key]&&this._tiles[he[1].key]&&this._tiles[he[2].key]&&this._tiles[he[3].key]&&(or[he[0].key]=w[he[0].key]=he[0],or[he[1].key]=w[he[1].key]=he[1],or[he[2].key]=w[he[2].key]=he[2],or[he[3].key]=w[he[3].key]=he[3],delete kr[Vr])}for(let Vr in kr){let he=kr[Vr],Se=this.findLoadedParent(he,this._source.minzoom),Ne=this.findLoadedSibling(he),Ge=Se||Ne||null;if(Ge){or[Ge.tileID.key]=w[Ge.tileID.key]=Ge.tileID;for(let lt in or)or[lt].isChildOf(Ge.tileID)&&delete or[lt]}}for(let Vr in this._tiles)or[Vr]||(this._coveredTiles[Vr]=!0)}}update(w,q){if(!this._sourceLoaded||this._paused)return;let Q;this.transform=w,this.terrain=q,this.updateCacheSize(w),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?Q=w.getVisibleUnwrappedCoordinates(this._source.tileID).map(ir=>new a.S(ir.canonical.z,ir.wrap,ir.canonical.z,ir.canonical.x,ir.canonical.y)):(Q=w.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:q}),this._source.hasTile&&(Q=Q.filter(ir=>this._source.hasTile(ir)))):Q=[];let ee=w.coveringZoomLevel(this._source),ue=Math.max(ee-it.maxOverzooming,this._source.minzoom),Ve=Math.max(ee+it.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){let ir={};for(let or of Q)if(or.canonical.z>this._source.minzoom){let kr=or.scaledTo(or.canonical.z-1);ir[kr.key]=kr;let Vr=or.scaledTo(Math.max(this._source.minzoom,Math.min(or.canonical.z,5)));ir[Vr.key]=Vr}Q=Q.concat(Object.values(ir))}let tt=Q.length===0&&!this._updated&&this._didEmitContent;this._updated=!0,tt&&this.fire(new a.k("data",{sourceDataType:"idle",dataType:"source",sourceId:this.id}));let mt=this._updateRetainedTiles(Q,ee);It(this._source.type)&&this._updateCoveredAndRetainedTiles(mt,ue,Ve,ee,Q,q);for(let ir in mt)this._tiles[ir].clearFadeHold();let Bt=a.ab(this._tiles,mt);for(let ir of Bt){let or=this._tiles[ir];or.hasSymbolBuckets&&!or.holdingForFade()?or.setHoldDuration(this.map._fadeDuration):or.hasSymbolBuckets&&!or.symbolFadeFinished()||this._removeTile(ir)}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache()}releaseSymbolFadeTiles(){for(let w in this._tiles)this._tiles[w].holdingForFade()&&this._removeTile(w)}_updateRetainedTiles(w,q){var Q;let ee={},ue={},Ve=Math.max(q-it.maxOverzooming,this._source.minzoom),tt=Math.max(q+it.maxUnderzooming,this._source.minzoom),mt={};for(let Bt of w){let ir=this._addTile(Bt);ee[Bt.key]=Bt,ir.hasData()||qthis._source.maxzoom){let kr=Bt.children(this._source.maxzoom)[0],Vr=this.getTile(kr);if(Vr&&Vr.hasData()){ee[kr.key]=kr;continue}}else{let kr=Bt.children(this._source.maxzoom);if(ee[kr[0].key]&&ee[kr[1].key]&&ee[kr[2].key]&&ee[kr[3].key])continue}let or=ir.wasRequested();for(let kr=Bt.overscaledZ-1;kr>=Ve;--kr){let Vr=Bt.scaledTo(kr);if(ue[Vr.key])break;if(ue[Vr.key]=!0,ir=this.getTile(Vr),!ir&&or&&(ir=this._addTile(Vr)),ir){let he=ir.hasData();if((he||!(!((Q=this.map)===null||Q===void 0)&&Q.cancelPendingTileRequestsWhileZooming)||or)&&(ee[Vr.key]=Vr),or=ir.wasRequested(),he)break}}}return ee}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(let w in this._tiles){let q=[],Q,ee=this._tiles[w].tileID;for(;ee.overscaledZ>0;){if(ee.key in this._loadedParentTiles){Q=this._loadedParentTiles[ee.key];break}q.push(ee.key);let ue=ee.scaledTo(ee.overscaledZ-1);if(Q=this._getLoadedTile(ue),Q)break;ee=ue}for(let ue of q)this._loadedParentTiles[ue]=Q}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(let w in this._tiles){let q=this._tiles[w].tileID,Q=this._getLoadedTile(q);this._loadedSiblingTiles[q.key]=Q}}_addTile(w){let q=this._tiles[w.key];if(q)return q;q=this._cache.getAndRemove(w),q&&(this._setTileReloadTimer(w.key,q),q.tileID=w,this._state.initializeTileState(q,this.map?this.map.painter:null),this._cacheTimers[w.key]&&(clearTimeout(this._cacheTimers[w.key]),delete this._cacheTimers[w.key],this._setTileReloadTimer(w.key,q)));let Q=q;return q||(q=new vt(w,this._source.tileSize*w.overscaleFactor()),this._loadTile(q,w.key,q.state)),q.uses++,this._tiles[w.key]=q,Q||this._source.fire(new a.k("dataloading",{tile:q,coord:q.tileID,dataType:"source"})),q}_setTileReloadTimer(w,q){w in this._timers&&(clearTimeout(this._timers[w]),delete this._timers[w]);let Q=q.getExpiryTimeout();Q&&(this._timers[w]=setTimeout(()=>{this._reloadTile(w,"expired"),delete this._timers[w]},Q))}_removeTile(w){let q=this._tiles[w];q&&(q.uses--,delete this._tiles[w],this._timers[w]&&(clearTimeout(this._timers[w]),delete this._timers[w]),q.uses>0||(q.hasData()&&q.state!=="reloading"?this._cache.add(q.tileID,q,q.getExpiryTimeout()):(q.aborted=!0,this._abortTile(q),this._unloadTile(q))))}_dataHandler(w){let q=w.sourceDataType;w.dataType==="source"&&q==="metadata"&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&w.dataType==="source"&&q==="content"&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0)}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(let w in this._tiles)this._removeTile(w);this._cache.reset()}tilesIn(w,q,Q){let ee=[],ue=this.transform;if(!ue)return ee;let Ve=Q?ue.getCameraQueryGeometry(w):w,tt=w.map(he=>ue.pointCoordinate(he,this.terrain)),mt=Ve.map(he=>ue.pointCoordinate(he,this.terrain)),Bt=this.getIds(),ir=1/0,or=1/0,kr=-1/0,Vr=-1/0;for(let he of mt)ir=Math.min(ir,he.x),or=Math.min(or,he.y),kr=Math.max(kr,he.x),Vr=Math.max(Vr,he.y);for(let he=0;he=0&&rt[1].y+lt>=0){let pt=tt.map(nr=>Ne.getTilePoint(nr)),Ht=mt.map(nr=>Ne.getTilePoint(nr));ee.push({tile:Se,tileID:Ne,queryGeometry:pt,cameraQueryGeometry:Ht,scale:Ge})}}return ee}getVisibleCoordinates(w){let q=this.getRenderableIds(w).map(Q=>this._tiles[Q].tileID);for(let Q of q)Q.posMatrix=this.transform.calculatePosMatrix(Q.toUnwrapped());return q}hasTransition(){if(this._source.hasTransition())return!0;if(It(this._source.type)){let w=l.now();for(let q in this._tiles)if(this._tiles[q].fadeEndTime>=w)return!0}return!1}setFeatureState(w,q,Q){this._state.updateState(w=w||"_geojsonTileLayer",q,Q)}removeFeatureState(w,q,Q){this._state.removeFeatureState(w=w||"_geojsonTileLayer",q,Q)}getFeatureState(w,q){return this._state.getState(w=w||"_geojsonTileLayer",q)}setDependencies(w,q,Q){let ee=this._tiles[w];ee&&ee.setDependencies(q,Q)}reloadTilesForDependencies(w,q){for(let Q in this._tiles)this._tiles[Q].hasDependency(w,q)&&this._reloadTile(Q,"reloading");this._cache.filter(Q=>!Q.hasDependency(w,q))}}function et(le,w){let q=Math.abs(2*le.wrap)-+(le.wrap<0),Q=Math.abs(2*w.wrap)-+(w.wrap<0);return le.overscaledZ-w.overscaledZ||Q-q||w.canonical.y-le.canonical.y||w.canonical.x-le.canonical.x}function It(le){return le==="raster"||le==="image"||le==="video"}it.maxOverzooming=10,it.maxUnderzooming=3;class Yt{constructor(w,q){this.reset(w,q)}reset(w,q){this.points=w||[],this._distances=[0];for(let Q=1;Q0?(ee-Ve)/tt:0;return this.points[ue].mult(1-mt).add(this.points[q].mult(mt))}}function cr(le,w){let q=!0;return le==="always"||le!=="never"&&w!=="never"||(q=!1),q}class _r{constructor(w,q,Q){let ee=this.boxCells=[],ue=this.circleCells=[];this.xCellCount=Math.ceil(w/Q),this.yCellCount=Math.ceil(q/Q);for(let Ve=0;Vethis.width||ee<0||q>this.height)return[];let mt=[];if(w<=0&&q<=0&&this.width<=Q&&this.height<=ee){if(ue)return[{key:null,x1:w,y1:q,x2:Q,y2:ee}];for(let Bt=0;Bt0}hitTestCircle(w,q,Q,ee,ue){let Ve=w-Q,tt=w+Q,mt=q-Q,Bt=q+Q;if(tt<0||Ve>this.width||Bt<0||mt>this.height)return!1;let ir=[];return this._forEachCell(Ve,mt,tt,Bt,this._queryCellCircle,ir,{hitTest:!0,overlapMode:ee,circle:{x:w,y:q,radius:Q},seenUids:{box:{},circle:{}}},ue),ir.length>0}_queryCell(w,q,Q,ee,ue,Ve,tt,mt){let{seenUids:Bt,hitTest:ir,overlapMode:or}=tt,kr=this.boxCells[ue];if(kr!==null){let he=this.bboxes;for(let Se of kr)if(!Bt.box[Se]){Bt.box[Se]=!0;let Ne=4*Se,Ge=this.boxKeys[Se];if(w<=he[Ne+2]&&q<=he[Ne+3]&&Q>=he[Ne+0]&&ee>=he[Ne+1]&&(!mt||mt(Ge))&&(!ir||!cr(or,Ge.overlapMode))&&(Ve.push({key:Ge,x1:he[Ne],y1:he[Ne+1],x2:he[Ne+2],y2:he[Ne+3]}),ir))return!0}}let Vr=this.circleCells[ue];if(Vr!==null){let he=this.circles;for(let Se of Vr)if(!Bt.circle[Se]){Bt.circle[Se]=!0;let Ne=3*Se,Ge=this.circleKeys[Se];if(this._circleAndRectCollide(he[Ne],he[Ne+1],he[Ne+2],w,q,Q,ee)&&(!mt||mt(Ge))&&(!ir||!cr(or,Ge.overlapMode))){let lt=he[Ne],rt=he[Ne+1],pt=he[Ne+2];if(Ve.push({key:Ge,x1:lt-pt,y1:rt-pt,x2:lt+pt,y2:rt+pt}),ir)return!0}}}return!1}_queryCellCircle(w,q,Q,ee,ue,Ve,tt,mt){let{circle:Bt,seenUids:ir,overlapMode:or}=tt,kr=this.boxCells[ue];if(kr!==null){let he=this.bboxes;for(let Se of kr)if(!ir.box[Se]){ir.box[Se]=!0;let Ne=4*Se,Ge=this.boxKeys[Se];if(this._circleAndRectCollide(Bt.x,Bt.y,Bt.radius,he[Ne+0],he[Ne+1],he[Ne+2],he[Ne+3])&&(!mt||mt(Ge))&&!cr(or,Ge.overlapMode))return Ve.push(!0),!0}}let Vr=this.circleCells[ue];if(Vr!==null){let he=this.circles;for(let Se of Vr)if(!ir.circle[Se]){ir.circle[Se]=!0;let Ne=3*Se,Ge=this.circleKeys[Se];if(this._circlesCollide(he[Ne],he[Ne+1],he[Ne+2],Bt.x,Bt.y,Bt.radius)&&(!mt||mt(Ge))&&!cr(or,Ge.overlapMode))return Ve.push(!0),!0}}}_forEachCell(w,q,Q,ee,ue,Ve,tt,mt){let Bt=this._convertToXCellCoord(w),ir=this._convertToYCellCoord(q),or=this._convertToXCellCoord(Q),kr=this._convertToYCellCoord(ee);for(let Vr=Bt;Vr<=or;Vr++)for(let he=ir;he<=kr;he++)if(ue.call(this,w,q,Q,ee,this.xCellCount*he+Vr,Ve,tt,mt))return}_convertToXCellCoord(w){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(w*this.xScale)))}_convertToYCellCoord(w){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(w*this.yScale)))}_circlesCollide(w,q,Q,ee,ue,Ve){let tt=ee-w,mt=ue-q,Bt=Q+Ve;return Bt*Bt>tt*tt+mt*mt}_circleAndRectCollide(w,q,Q,ee,ue,Ve,tt){let mt=(Ve-ee)/2,Bt=Math.abs(w-(ee+mt));if(Bt>mt+Q)return!1;let ir=(tt-ue)/2,or=Math.abs(q-(ue+ir));if(or>ir+Q)return!1;if(Bt<=mt||or<=ir)return!0;let kr=Bt-mt,Vr=or-ir;return kr*kr+Vr*Vr<=Q*Q}}function yr(le,w,q,Q,ee){let ue=a.H();return w?(a.K(ue,ue,[1/ee,1/ee,1]),q||a.ad(ue,ue,Q.angle)):a.L(ue,Q.labelPlaneMatrix,le),ue}function Ut(le,w,q,Q,ee){if(w){let ue=a.ae(le);return a.K(ue,ue,[ee,ee,1]),q||a.ad(ue,ue,-Q.angle),ue}return Q.glCoordMatrix}function Re(le,w,q,Q){let ee;Q?(ee=[le,w,Q(le,w),1],a.af(ee,ee,q)):(ee=[le,w,0,1],Er(ee,ee,q));let ue=ee[3];return{point:new a.P(ee[0]/ue,ee[1]/ue),signedDistanceFromCamera:ue,isOccluded:!1}}function xe(le,w){return .5+le/w*.5}function Oe(le,w){return le.x>=-w[0]&&le.x<=w[0]&&le.y>=-w[1]&&le.y<=w[1]}function Ie(le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he){let Se=Q?le.textSizeData:le.iconSizeData,Ne=a.ag(Se,q.transform.zoom),Ge=[256/q.width*2+1,256/q.height*2+1],lt=Q?le.text.dynamicLayoutVertexArray:le.icon.dynamicLayoutVertexArray;lt.clear();let rt=le.lineVertexArray,pt=Q?le.text.placedSymbolArray:le.icon.placedSymbolArray,Ht=q.transform.width/q.transform.height,nr=!1;for(let fr=0;frMath.abs(q.x-w.x)*Q?{useVertical:!0}:(le===a.ah.vertical?w.yq.x)?{needsFlipping:!0}:null}function ge(le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir){let or=q/24,kr=w.lineOffsetX*or,Vr=w.lineOffsetY*or,he;if(w.numGlyphs>1){let Se=w.glyphStartIndex+w.numGlyphs,Ne=w.lineStartIndex,Ge=w.lineStartIndex+w.lineLength,lt=Fe(or,tt,kr,Vr,Q,w,ir,le);if(!lt)return{notEnoughRoom:!0};let rt=Re(lt.first.point.x,lt.first.point.y,Ve,le.getElevation).point,pt=Re(lt.last.point.x,lt.last.point.y,Ve,le.getElevation).point;if(ee&&!Q){let Ht=ft(w.writingMode,rt,pt,Bt);if(Ht)return Ht}he=[lt.first];for(let Ht=w.glyphStartIndex+1;Ht0?rt.point:function(nr,fr,Tr,Ir,ri,li){return fe(nr,fr,Tr,1,ri,li)}(le.tileAnchorPoint,lt,Ne,0,ue,le),Ht=ft(w.writingMode,Ne,pt,Bt);if(Ht)return Ht}let Se=rr(or*tt.getoffsetX(w.glyphStartIndex),kr,Vr,Q,w.segment,w.lineStartIndex,w.lineStartIndex+w.lineLength,le,ir);if(!Se||le.projectionCache.anyProjectionOccluded)return{notEnoughRoom:!0};he=[Se]}for(let Se of he)a.aj(mt,Se.point,Se.angle);return{}}function fe(le,w,q,Q,ee,ue){let Ve=le.add(le.sub(w)._unit()),tt=ee!==void 0?Re(Ve.x,Ve.y,ee,ue.getElevation).point:dt(Ve.x,Ve.y,ue).point,mt=q.sub(tt);return q.add(mt._mult(Q/mt.mag()))}function pe(le,w,q){let Q=w.projectionCache;if(Q.projections[le])return Q.projections[le];let ee=new a.P(w.lineVertexArray.getx(le),w.lineVertexArray.gety(le)),ue=dt(ee.x,ee.y,w);if(ue.signedDistanceFromCamera>0)return Q.projections[le]=ue.point,Q.anyProjectionOccluded=Q.anyProjectionOccluded||ue.isOccluded,ue.point;let Ve=le-q.direction;return function(tt,mt,Bt,ir,or){return fe(tt,mt,Bt,ir,void 0,or)}(q.distanceFromAnchor===0?w.tileAnchorPoint:new a.P(w.lineVertexArray.getx(Ve),w.lineVertexArray.gety(Ve)),ee,q.previousVertex,q.absOffsetX-q.distanceFromAnchor+1,w)}function dt(le,w,q){let Q=le+q.translation[0],ee=w+q.translation[1],ue;return!q.pitchWithMap&&q.projection.useSpecialProjectionForSymbols?(ue=q.projection.projectTileCoordinates(Q,ee,q.unwrappedTileID,q.getElevation),ue.point.x=(.5*ue.point.x+.5)*q.width,ue.point.y=(.5*-ue.point.y+.5)*q.height):(ue=Re(Q,ee,q.labelPlaneMatrix,q.getElevation),ue.isOccluded=!1),ue}function Pt(le,w,q){return le._unit()._perp()._mult(w*q)}function zt(le,w,q,Q,ee,ue,Ve,tt,mt){if(tt.projectionCache.offsets[le])return tt.projectionCache.offsets[le];let Bt=q.add(w);if(le+mt.direction=ee)return tt.projectionCache.offsets[le]=Bt,Bt;let ir=pe(le+mt.direction,tt,mt),or=Pt(ir.sub(q),Ve,mt.direction),kr=q.add(or),Vr=ir.add(or);return tt.projectionCache.offsets[le]=a.ak(ue,Bt,kr,Vr)||Bt,tt.projectionCache.offsets[le]}function rr(le,w,q,Q,ee,ue,Ve,tt,mt){let Bt=Q?le-w:le+w,ir=Bt>0?1:-1,or=0;Q&&(ir*=-1,or=Math.PI),ir<0&&(or+=Math.PI);let kr,Vr=ir>0?ue+ee:ue+ee+1;tt.projectionCache.cachedAnchorPoint?kr=tt.projectionCache.cachedAnchorPoint:(kr=dt(tt.tileAnchorPoint.x,tt.tileAnchorPoint.y,tt).point,tt.projectionCache.cachedAnchorPoint=kr);let he,Se,Ne=kr,Ge=kr,lt=0,rt=0,pt=Math.abs(Bt),Ht=[],nr;for(;lt+rt<=pt;){if(Vr+=ir,Vr=Ve)return null;lt+=rt,Ge=Ne,Se=he;let Ir={absOffsetX:pt,direction:ir,distanceFromAnchor:lt,previousVertex:Ge};if(Ne=pe(Vr,tt,Ir),q===0)Ht.push(Ge),nr=Ne.sub(Ge);else{let ri,li=Ne.sub(Ge);ri=li.mag()===0?Pt(pe(Vr+ir,tt,Ir).sub(Ne),q,ir):Pt(li,q,ir),Se||(Se=Ge.add(ri)),he=zt(Vr,ri,Ne,ue,Ve,Se,q,tt,Ir),Ht.push(Se),nr=he.sub(Se)}rt=nr.mag()}let fr=nr._mult((pt-lt)/rt)._add(Se||Ge),Tr=or+Math.atan2(Ne.y-Ge.y,Ne.x-Ge.x);return Ht.push(fr),{point:fr,angle:mt?Tr:0,path:Ht}}let Gr=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Br(le,w){for(let q=0;q=1;Us--)Ua.push(Zn.path[Us]);for(let Us=1;Usml.signedDistanceFromCamera<=0)?[]:Us.map(ml=>ml.point)}let vl=[];if(Ua.length>0){let Us=Ua[0].clone(),ml=Ua[0].clone();for(let au=1;au=li.x&&ml.x<=Ei.x&&Us.y>=li.y&&ml.y<=Ei.y?[Ua]:ml.xEi.x||ml.yEi.y?[]:a.al([Ua],li.x,li.y,Ei.x,Ei.y)}for(let Us of vl){hn.reset(Us,.25*ri);let ml=0;ml=hn.length<=.5*ri?1:Math.ceil(hn.paddedLength/Fo)+1;for(let au=0;auRe(ee.x,ee.y,Q,q.getElevation))}queryRenderedSymbols(w){if(w.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};let q=[],Q=1/0,ee=1/0,ue=-1/0,Ve=-1/0;for(let ir of w){let or=new a.P(ir.x+Rr,ir.y+Rr);Q=Math.min(Q,or.x),ee=Math.min(ee,or.y),ue=Math.max(ue,or.x),Ve=Math.max(Ve,or.y),q.push(or)}let tt=this.grid.query(Q,ee,ue,Ve).concat(this.ignoredGrid.query(Q,ee,ue,Ve)),mt={},Bt={};for(let ir of tt){let or=ir.key;if(mt[or.bucketInstanceId]===void 0&&(mt[or.bucketInstanceId]={}),mt[or.bucketInstanceId][or.featureIndex])continue;let kr=[new a.P(ir.x1,ir.y1),new a.P(ir.x2,ir.y1),new a.P(ir.x2,ir.y2),new a.P(ir.x1,ir.y2)];a.am(q,kr)&&(mt[or.bucketInstanceId][or.featureIndex]=!0,Bt[or.bucketInstanceId]===void 0&&(Bt[or.bucketInstanceId]=[]),Bt[or.bucketInstanceId].push(or.featureIndex))}return Bt}insertCollisionBox(w,q,Q,ee,ue,Ve){(Q?this.ignoredGrid:this.grid).insert({bucketInstanceId:ee,featureIndex:ue,collisionGroupID:Ve,overlapMode:q},w[0],w[1],w[2],w[3])}insertCollisionCircles(w,q,Q,ee,ue,Ve){let tt=Q?this.ignoredGrid:this.grid,mt={bucketInstanceId:ee,featureIndex:ue,collisionGroupID:Ve,overlapMode:q};for(let Bt=0;Bt=this.screenRightBoundary||eethis.screenBottomBoundary}isInsideGrid(w,q,Q,ee){return Q>=0&&w=0&&qthis.projectAndGetPerspectiveRatio(Q,ri.x,ri.y,ee,Bt));Tr=Ir.some(ri=>!ri.isOccluded),fr=Ir.map(ri=>ri.point)}else Tr=!0;return{box:a.ao(fr),allPointsOccluded:!Tr}}}function Di(le,w,q){return w*(a.X/(le.tileSize*Math.pow(2,q-le.tileID.overscaledZ)))}class ni{constructor(w,q,Q,ee){this.opacity=w?Math.max(0,Math.min(1,w.opacity+(w.placed?q:-q))):ee&&Q?1:0,this.placed=Q}isHidden(){return this.opacity===0&&!this.placed}}class $i{constructor(w,q,Q,ee,ue){this.text=new ni(w?w.text:null,q,Q,ue),this.icon=new ni(w?w.icon:null,q,ee,ue)}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class Qi{constructor(w,q,Q){this.text=w,this.icon=q,this.skipFade=Q}}class si{constructor(){this.invProjMatrix=a.H(),this.viewportMatrix=a.H(),this.circles=[]}}class Ai{constructor(w,q,Q,ee,ue){this.bucketInstanceId=w,this.featureIndex=q,this.sourceLayerIndex=Q,this.bucketIndex=ee,this.tileID=ue}}class Ni{constructor(w){this.crossSourceCollisions=w,this.maxGroupID=0,this.collisionGroups={}}get(w){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[w]){let q=++this.maxGroupID;this.collisionGroups[w]={ID:q,predicate:Q=>Q.collisionGroupID===q}}return this.collisionGroups[w]}}function Rt(le,w,q,Q,ee){let{horizontalAlign:ue,verticalAlign:Ve}=a.au(le);return new a.P(-(ue-.5)*w+Q[0]*ee,-(Ve-.5)*q+Q[1]*ee)}class yt{constructor(w,q,Q,ee,ue,Ve){this.transform=w.clone(),this.terrain=Q,this.collisionIndex=new pi(this.transform,q),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=ee,this.retainedQueryData={},this.collisionGroups=new Ni(ue),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=Ve,Ve&&(Ve.prevPlacement=void 0),this.placedOrientations={}}_getTerrainElevationFunc(w){let q=this.terrain;return q?(Q,ee)=>q.getElevation(w,Q,ee):null}getBucketParts(w,q,Q,ee){let ue=Q.getBucket(q),Ve=Q.latestFeatureIndex;if(!ue||!Ve||q.id!==ue.layerIds[0])return;let tt=Q.collisionBoxArray,mt=ue.layers[0].layout,Bt=ue.layers[0].paint,ir=Math.pow(2,this.transform.zoom-Q.tileID.overscaledZ),or=Q.tileSize/a.X,kr=Q.tileID.toUnwrapped(),Vr=this.transform.calculatePosMatrix(kr),he=mt.get("text-pitch-alignment")==="map",Se=mt.get("text-rotation-alignment")==="map",Ne=Di(Q,1,this.transform.zoom),Ge=this.collisionIndex.mapProjection.translatePosition(this.transform,Q,Bt.get("text-translate"),Bt.get("text-translate-anchor")),lt=this.collisionIndex.mapProjection.translatePosition(this.transform,Q,Bt.get("icon-translate"),Bt.get("icon-translate-anchor")),rt=yr(Vr,he,Se,this.transform,Ne),pt=null;if(he){let nr=Ut(Vr,he,Se,this.transform,Ne);pt=a.L([],this.transform.labelPlaneMatrix,nr)}this.retainedQueryData[ue.bucketInstanceId]=new Ai(ue.bucketInstanceId,Ve,ue.sourceLayerIndex,ue.index,Q.tileID);let Ht={bucket:ue,layout:mt,translationText:Ge,translationIcon:lt,posMatrix:Vr,unwrappedTileID:kr,textLabelPlaneMatrix:rt,labelToScreenMatrix:pt,scale:ir,textPixelRatio:or,holdingForFade:Q.holdingForFade(),collisionBoxArray:tt,partiallyEvaluatedTextSize:a.ag(ue.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(ue.sourceID)};if(ee)for(let nr of ue.sortKeyRanges){let{sortKey:fr,symbolInstanceStart:Tr,symbolInstanceEnd:Ir}=nr;w.push({sortKey:fr,symbolInstanceStart:Tr,symbolInstanceEnd:Ir,parameters:Ht})}else w.push({symbolInstanceStart:0,symbolInstanceEnd:ue.symbolInstances.length,parameters:Ht})}attemptAnchorPlacement(w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt){let pt=a.aq[w.textAnchor],Ht=[w.textOffset0,w.textOffset1],nr=Rt(pt,Q,ee,Ht,ue),fr=this.collisionIndex.placeCollisionBox(q,kr,mt,Bt,ir,tt,Ve,Ne,or.predicate,rt,nr);if((!lt||this.collisionIndex.placeCollisionBox(lt,kr,mt,Bt,ir,tt,Ve,Ge,or.predicate,rt,nr).placeable)&&fr.placeable){let Tr;if(this.prevPlacement&&this.prevPlacement.variableOffsets[Vr.crossTileID]&&this.prevPlacement.placements[Vr.crossTileID]&&this.prevPlacement.placements[Vr.crossTileID].text&&(Tr=this.prevPlacement.variableOffsets[Vr.crossTileID].anchor),Vr.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[Vr.crossTileID]={textOffset:Ht,width:Q,height:ee,anchor:pt,textBoxScale:ue,prevAnchor:Tr},this.markUsedJustification(he,pt,Vr,Se),he.allowVerticalPlacement&&(this.markUsedOrientation(he,Se,Vr),this.placedOrientations[Vr.crossTileID]=Se),{shift:nr,placedGlyphBoxes:fr}}}placeLayerBucketPart(w,q,Q){let{bucket:ee,layout:ue,translationText:Ve,translationIcon:tt,posMatrix:mt,unwrappedTileID:Bt,textLabelPlaneMatrix:ir,labelToScreenMatrix:or,textPixelRatio:kr,holdingForFade:Vr,collisionBoxArray:he,partiallyEvaluatedTextSize:Se,collisionGroup:Ne}=w.parameters,Ge=ue.get("text-optional"),lt=ue.get("icon-optional"),rt=a.ar(ue,"text-overlap","text-allow-overlap"),pt=rt==="always",Ht=a.ar(ue,"icon-overlap","icon-allow-overlap"),nr=Ht==="always",fr=ue.get("text-rotation-alignment")==="map",Tr=ue.get("text-pitch-alignment")==="map",Ir=ue.get("icon-text-fit")!=="none",ri=ue.get("symbol-z-order")==="viewport-y",li=pt&&(nr||!ee.hasIconData()||lt),Ei=nr&&(pt||!ee.hasTextData()||Ge);!ee.collisionArrays&&he&&ee.deserializeCollisionBoxes(he);let hn=this._getTerrainElevationFunc(this.retainedQueryData[ee.bucketInstanceId].tileID),Zn=(Yn,Ua,Fo)=>{var vl,Us;if(q[Yn.crossTileID])return;if(Vr)return void(this.placements[Yn.crossTileID]=new Qi(!1,!1,!1));let ml=!1,au=!1,Sl=!0,Yl=null,Ol={box:null,placeable:!1,offscreen:null},ou={box:null,placeable:!1,offscreen:null},Pu=null,iu=null,tu=null,Hu=0,$u=0,Ku=0;Ua.textFeatureIndex?Hu=Ua.textFeatureIndex:Yn.useRuntimeCollisionCircles&&(Hu=Yn.featureIndex),Ua.verticalTextFeatureIndex&&($u=Ua.verticalTextFeatureIndex);let Wu=Ua.textBox;if(Wu){let Qu=Pe=>{let Xe=a.ah.horizontal;if(ee.allowVerticalPlacement&&!Pe&&this.prevPlacement){let Qe=this.prevPlacement.placedOrientations[Yn.crossTileID];Qe&&(this.placedOrientations[Yn.crossTileID]=Qe,Xe=Qe,this.markUsedOrientation(ee,Xe,Yn))}return Xe},ef=(Pe,Xe)=>{if(ee.allowVerticalPlacement&&Yn.numVerticalGlyphVertices>0&&Ua.verticalTextBox){for(let Qe of ee.writingModes)if(Qe===a.ah.vertical?(Ol=Xe(),ou=Ol):Ol=Pe(),Ol&&Ol.placeable)break}else Ol=Pe()},Z=Yn.textAnchorOffsetStartIndex,se=Yn.textAnchorOffsetEndIndex;if(se===Z){let Pe=(Xe,Qe)=>{let st=this.collisionIndex.placeCollisionBox(Xe,rt,kr,mt,Bt,Tr,fr,Ve,Ne.predicate,hn);return st&&st.placeable&&(this.markUsedOrientation(ee,Qe,Yn),this.placedOrientations[Yn.crossTileID]=Qe),st};ef(()=>Pe(Wu,a.ah.horizontal),()=>{let Xe=Ua.verticalTextBox;return ee.allowVerticalPlacement&&Yn.numVerticalGlyphVertices>0&&Xe?Pe(Xe,a.ah.vertical):{box:null,offscreen:null}}),Qu(Ol&&Ol.placeable)}else{let Pe=a.aq[(Us=(vl=this.prevPlacement)===null||vl===void 0?void 0:vl.variableOffsets[Yn.crossTileID])===null||Us===void 0?void 0:Us.anchor],Xe=(st,jt,_t)=>{let hr=st.x2-st.x1,Cr=st.y2-st.y1,zr=Yn.textBoxScale,fi=Ir&&Ht==="never"?jt:null,$r=null,Bi=rt==="never"?1:2,fn="never";Pe&&Bi++;for(let mi=0;miXe(Wu,Ua.iconBox,a.ah.horizontal),()=>{let st=Ua.verticalTextBox;return ee.allowVerticalPlacement&&(!Ol||!Ol.placeable)&&Yn.numVerticalGlyphVertices>0&&st?Xe(st,Ua.verticalIconBox,a.ah.vertical):{box:null,occluded:!0,offscreen:null}}),Ol&&(ml=Ol.placeable,Sl=Ol.offscreen);let Qe=Qu(Ol&&Ol.placeable);if(!ml&&this.prevPlacement){let st=this.prevPlacement.variableOffsets[Yn.crossTileID];st&&(this.variableOffsets[Yn.crossTileID]=st,this.markUsedJustification(ee,st.anchor,Yn,Qe))}}}if(Pu=Ol,ml=Pu&&Pu.placeable,Sl=Pu&&Pu.offscreen,Yn.useRuntimeCollisionCircles){let Qu=ee.text.placedSymbolArray.get(Yn.centerJustifiedTextSymbolIndex),ef=a.ai(ee.textSizeData,Se,Qu),Z=ue.get("text-padding");iu=this.collisionIndex.placeCollisionCircles(rt,Qu,ee.lineVertexArray,ee.glyphOffsetArray,ef,mt,Bt,ir,or,Q,Tr,Ne.predicate,Yn.collisionCircleDiameter,Z,Ve,hn),iu.circles.length&&iu.collisionDetected&&!Q&&a.w("Collisions detected, but collision boxes are not shown"),ml=pt||iu.circles.length>0&&!iu.collisionDetected,Sl=Sl&&iu.offscreen}if(Ua.iconFeatureIndex&&(Ku=Ua.iconFeatureIndex),Ua.iconBox){let Qu=ef=>this.collisionIndex.placeCollisionBox(ef,Ht,kr,mt,Bt,Tr,fr,tt,Ne.predicate,hn,Ir&&Yl?Yl:void 0);ou&&ou.placeable&&Ua.verticalIconBox?(tu=Qu(Ua.verticalIconBox),au=tu.placeable):(tu=Qu(Ua.iconBox),au=tu.placeable),Sl=Sl&&tu.offscreen}let ju=Ge||Yn.numHorizontalGlyphVertices===0&&Yn.numVerticalGlyphVertices===0,sf=lt||Yn.numIconVertices===0;ju||sf?sf?ju||(au=au&&ml):ml=au&&ml:au=ml=au&&ml;let _f=au&&tu.placeable;if(ml&&Pu.placeable&&this.collisionIndex.insertCollisionBox(Pu.box,rt,ue.get("text-ignore-placement"),ee.bucketInstanceId,ou&&ou.placeable&&$u?$u:Hu,Ne.ID),_f&&this.collisionIndex.insertCollisionBox(tu.box,Ht,ue.get("icon-ignore-placement"),ee.bucketInstanceId,Ku,Ne.ID),iu&&ml&&this.collisionIndex.insertCollisionCircles(iu.circles,rt,ue.get("text-ignore-placement"),ee.bucketInstanceId,Hu,Ne.ID),Q&&this.storeCollisionData(ee.bucketInstanceId,Fo,Ua,Pu,tu,iu),Yn.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");if(ee.bucketInstanceId===0)throw new Error("bucket.bucketInstanceId can't be 0");this.placements[Yn.crossTileID]=new Qi(ml||li,au||Ei,Sl||ee.justReloaded),q[Yn.crossTileID]=!0};if(ri){if(w.symbolInstanceStart!==0)throw new Error("bucket.bucketInstanceId should be 0");let Yn=ee.getSortedSymbolIndexes(this.transform.angle);for(let Ua=Yn.length-1;Ua>=0;--Ua){let Fo=Yn[Ua];Zn(ee.symbolInstances.get(Fo),ee.collisionArrays[Fo],Fo)}}else for(let Yn=w.symbolInstanceStart;Yn=0&&(w.text.placedSymbolArray.get(tt).crossTileID=ue>=0&&tt!==ue?0:Q.crossTileID)}markUsedOrientation(w,q,Q){let ee=q===a.ah.horizontal||q===a.ah.horizontalOnly?q:0,ue=q===a.ah.vertical?q:0,Ve=[Q.leftJustifiedTextSymbolIndex,Q.centerJustifiedTextSymbolIndex,Q.rightJustifiedTextSymbolIndex];for(let tt of Ve)w.text.placedSymbolArray.get(tt).placedOrientation=ee;Q.verticalPlacedTextSymbolIndex&&(w.text.placedSymbolArray.get(Q.verticalPlacedTextSymbolIndex).placedOrientation=ue)}commit(w){this.commitTime=w,this.zoomAtLastRecencyCheck=this.transform.zoom;let q=this.prevPlacement,Q=!1;this.prevZoomAdjustment=q?q.zoomAdjustment(this.transform.zoom):0;let ee=q?q.symbolFadeChange(w):1,ue=q?q.opacities:{},Ve=q?q.variableOffsets:{},tt=q?q.placedOrientations:{};for(let mt in this.placements){let Bt=this.placements[mt],ir=ue[mt];ir?(this.opacities[mt]=new $i(ir,ee,Bt.text,Bt.icon),Q=Q||Bt.text!==ir.text.placed||Bt.icon!==ir.icon.placed):(this.opacities[mt]=new $i(null,ee,Bt.text,Bt.icon,Bt.skipFade),Q=Q||Bt.text||Bt.icon)}for(let mt in ue){let Bt=ue[mt];if(!this.opacities[mt]){let ir=new $i(Bt,ee,!1,!1);ir.isHidden()||(this.opacities[mt]=ir,Q=Q||Bt.text.placed||Bt.icon.placed)}}for(let mt in Ve)this.variableOffsets[mt]||!this.opacities[mt]||this.opacities[mt].isHidden()||(this.variableOffsets[mt]=Ve[mt]);for(let mt in tt)this.placedOrientations[mt]||!this.opacities[mt]||this.opacities[mt].isHidden()||(this.placedOrientations[mt]=tt[mt]);if(q&&q.lastPlacementChangeTime===void 0)throw new Error("Last placement time for previous placement is not defined");Q?this.lastPlacementChangeTime=w:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=q?q.lastPlacementChangeTime:w)}updateLayerOpacities(w,q){let Q={};for(let ee of q){let ue=ee.getBucket(w);ue&&ee.latestFeatureIndex&&w.id===ue.layerIds[0]&&this.updateBucketOpacities(ue,ee.tileID,Q,ee.collisionBoxArray)}}updateBucketOpacities(w,q,Q,ee){w.hasTextData()&&(w.text.opacityVertexArray.clear(),w.text.hasVisibleVertices=!1),w.hasIconData()&&(w.icon.opacityVertexArray.clear(),w.icon.hasVisibleVertices=!1),w.hasIconCollisionBoxData()&&w.iconCollisionBox.collisionVertexArray.clear(),w.hasTextCollisionBoxData()&&w.textCollisionBox.collisionVertexArray.clear();let ue=w.layers[0],Ve=ue.layout,tt=new $i(null,0,!1,!1,!0),mt=Ve.get("text-allow-overlap"),Bt=Ve.get("icon-allow-overlap"),ir=ue._unevaluatedLayout.hasValue("text-variable-anchor")||ue._unevaluatedLayout.hasValue("text-variable-anchor-offset"),or=Ve.get("text-rotation-alignment")==="map",kr=Ve.get("text-pitch-alignment")==="map",Vr=Ve.get("icon-text-fit")!=="none",he=new $i(null,0,mt&&(Bt||!w.hasIconData()||Ve.get("icon-optional")),Bt&&(mt||!w.hasTextData()||Ve.get("text-optional")),!0);!w.collisionArrays&&ee&&(w.hasIconCollisionBoxData()||w.hasTextCollisionBoxData())&&w.deserializeCollisionBoxes(ee);let Se=(Ge,lt,rt)=>{for(let pt=0;pt0,Tr=this.placedOrientations[lt.crossTileID],Ir=Tr===a.ah.vertical,ri=Tr===a.ah.horizontal||Tr===a.ah.horizontalOnly;if(rt>0||pt>0){let Ei=gi(nr.text);Se(w.text,rt,Ir?ki:Ei),Se(w.text,pt,ri?ki:Ei);let hn=nr.text.isHidden();[lt.rightJustifiedTextSymbolIndex,lt.centerJustifiedTextSymbolIndex,lt.leftJustifiedTextSymbolIndex].forEach(Ua=>{Ua>=0&&(w.text.placedSymbolArray.get(Ua).hidden=hn||Ir?1:0)}),lt.verticalPlacedTextSymbolIndex>=0&&(w.text.placedSymbolArray.get(lt.verticalPlacedTextSymbolIndex).hidden=hn||ri?1:0);let Zn=this.variableOffsets[lt.crossTileID];Zn&&this.markUsedJustification(w,Zn.anchor,lt,Tr);let Yn=this.placedOrientations[lt.crossTileID];Yn&&(this.markUsedJustification(w,"left",lt,Yn),this.markUsedOrientation(w,Yn,lt))}if(fr){let Ei=gi(nr.icon),hn=!(Vr&<.verticalPlacedIconSymbolIndex&&Ir);lt.placedIconSymbolIndex>=0&&(Se(w.icon,lt.numIconVertices,hn?Ei:ki),w.icon.placedSymbolArray.get(lt.placedIconSymbolIndex).hidden=nr.icon.isHidden()),lt.verticalPlacedIconSymbolIndex>=0&&(Se(w.icon,lt.numVerticalIconVertices,hn?ki:Ei),w.icon.placedSymbolArray.get(lt.verticalPlacedIconSymbolIndex).hidden=nr.icon.isHidden())}let li=Ne&&Ne.has(Ge)?Ne.get(Ge):{text:null,icon:null};if(w.hasIconCollisionBoxData()||w.hasTextCollisionBoxData()){let Ei=w.collisionArrays[Ge];if(Ei){let hn=new a.P(0,0);if(Ei.textBox||Ei.verticalTextBox){let Zn=!0;if(ir){let Yn=this.variableOffsets[Ht];Yn?(hn=Rt(Yn.anchor,Yn.width,Yn.height,Yn.textOffset,Yn.textBoxScale),or&&hn._rotate(kr?this.transform.angle:-this.transform.angle)):Zn=!1}if(Ei.textBox||Ei.verticalTextBox){let Yn;Ei.textBox&&(Yn=Ir),Ei.verticalTextBox&&(Yn=ri),Gt(w.textCollisionBox.collisionVertexArray,nr.text.placed,!Zn||Yn,li.text,hn.x,hn.y)}}if(Ei.iconBox||Ei.verticalIconBox){let Zn=!!(!ri&&Ei.verticalIconBox),Yn;Ei.iconBox&&(Yn=Zn),Ei.verticalIconBox&&(Yn=!Zn),Gt(w.iconCollisionBox.collisionVertexArray,nr.icon.placed,Yn,li.icon,Vr?hn.x:0,Vr?hn.y:0)}}}}if(w.sortFeatures(this.transform.angle),this.retainedQueryData[w.bucketInstanceId]&&(this.retainedQueryData[w.bucketInstanceId].featureSortOrder=w.featureSortOrder),w.hasTextData()&&w.text.opacityVertexBuffer&&w.text.opacityVertexBuffer.updateData(w.text.opacityVertexArray),w.hasIconData()&&w.icon.opacityVertexBuffer&&w.icon.opacityVertexBuffer.updateData(w.icon.opacityVertexArray),w.hasIconCollisionBoxData()&&w.iconCollisionBox.collisionVertexBuffer&&w.iconCollisionBox.collisionVertexBuffer.updateData(w.iconCollisionBox.collisionVertexArray),w.hasTextCollisionBoxData()&&w.textCollisionBox.collisionVertexBuffer&&w.textCollisionBox.collisionVertexBuffer.updateData(w.textCollisionBox.collisionVertexArray),w.text.opacityVertexArray.length!==w.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${w.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${w.text.layoutVertexArray.length}) / 4`);if(w.icon.opacityVertexArray.length!==w.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${w.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${w.icon.layoutVertexArray.length}) / 4`);if(w.bucketInstanceId in this.collisionCircleArrays){let Ge=this.collisionCircleArrays[w.bucketInstanceId];w.placementInvProjMatrix=Ge.invProjMatrix,w.placementViewportMatrix=Ge.viewportMatrix,w.collisionCircleArray=Ge.circles,delete this.collisionCircleArrays[w.bucketInstanceId]}}symbolFadeChange(w){return this.fadeDuration===0?1:(w-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(w){return Math.max(0,(this.transform.zoom-w)/1.5)}hasTransitions(w){return this.stale||w-this.lastPlacementChangeTimew}setStale(){this.stale=!0}}function Gt(le,w,q,Q,ee,ue){Q&&Q.length!==0||(Q=[0,0,0,0]);let Ve=Q[0]-Rr,tt=Q[1]-Rr,mt=Q[2]-Rr,Bt=Q[3]-Rr;le.emplaceBack(w?1:0,q?1:0,ee||0,ue||0,Ve,tt),le.emplaceBack(w?1:0,q?1:0,ee||0,ue||0,mt,tt),le.emplaceBack(w?1:0,q?1:0,ee||0,ue||0,mt,Bt),le.emplaceBack(w?1:0,q?1:0,ee||0,ue||0,Ve,Bt)}let Wt=Math.pow(2,25),xr=Math.pow(2,24),Lr=Math.pow(2,17),Nr=Math.pow(2,16),Or=Math.pow(2,9),Hr=Math.pow(2,8),jr=Math.pow(2,1);function gi(le){if(le.opacity===0&&!le.placed)return 0;if(le.opacity===1&&le.placed)return 4294967295;let w=le.placed?1:0,q=Math.floor(127*le.opacity);return q*Wt+w*xr+q*Lr+w*Nr+q*Or+w*Hr+q*jr+w}let ki=0;function Vi(){return{isOccluded:(le,w,q)=>!1,getPitchedTextCorrection:(le,w,q)=>1,get useSpecialProjectionForSymbols(){return!1},projectTileCoordinates(le,w,q,Q){throw new Error("Not implemented.")},translatePosition:(le,w,q,Q)=>function(ee,ue,Ve,tt,mt=!1){if(!Ve[0]&&!Ve[1])return[0,0];let Bt=mt?tt==="map"?ee.angle:0:tt==="viewport"?-ee.angle:0;if(Bt){let ir=Math.sin(Bt),or=Math.cos(Bt);Ve=[Ve[0]*or-Ve[1]*ir,Ve[0]*ir+Ve[1]*or]}return[mt?Ve[0]:Di(ue,Ve[0],ee.zoom),mt?Ve[1]:Di(ue,Ve[1],ee.zoom)]}(le,w,q,Q),getCircleRadiusCorrection:le=>1}}class ti{constructor(w){this._sortAcrossTiles=w.layout.get("symbol-z-order")!=="viewport-y"&&!w.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(w,q,Q,ee,ue){let Ve=this._bucketParts;for(;this._currentTileIndextt.sortKey-mt.sortKey));this._currentPartIndex!this._forceFullPlacement&&l.now()-ee>2;for(;this._currentPlacementIndex>=0;){let Ve=q[w[this._currentPlacementIndex]],tt=this.placement.collisionIndex.transform.zoom;if(Ve.type==="symbol"&&(!Ve.minzoom||Ve.minzoom<=tt)&&(!Ve.maxzoom||Ve.maxzoom>tt)){if(this._inProgressLayer||(this._inProgressLayer=new ti(Ve)),this._inProgressLayer.continuePlacement(Q[Ve.source],this.placement,this._showCollisionBoxes,Ve,ue))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(w){return this.placement.commit(w),this.placement}}let Yr=512/a.X/2;class oi{constructor(w,q,Q){this.tileID=w,this.bucketInstanceId=Q,this._symbolsByKey={};let ee=new Map;for(let ue=0;ue({x:Math.floor(mt.anchorX*Yr),y:Math.floor(mt.anchorY*Yr)})),crossTileIDs:Ve.map(mt=>mt.crossTileID)};if(tt.positions.length>128){let mt=new a.av(tt.positions.length,16,Uint16Array);for(let{x:Bt,y:ir}of tt.positions)mt.add(Bt,ir);mt.finish(),delete tt.positions,tt.index=mt}this._symbolsByKey[ue]=tt}}getScaledCoordinates(w,q){let{x:Q,y:ee,z:ue}=this.tileID.canonical,{x:Ve,y:tt,z:mt}=q.canonical,Bt=Yr/Math.pow(2,mt-ue),ir=(tt*a.X+w.anchorY)*Bt,or=ee*a.X*Yr;return{x:Math.floor((Ve*a.X+w.anchorX)*Bt-Q*a.X*Yr),y:Math.floor(ir-or)}}findMatches(w,q,Q){let ee=this.tileID.canonical.zw)}}class Fi{constructor(){this.maxCrossTileID=0}generate(){return++this.maxCrossTileID}}class an{constructor(){this.indexes={},this.usedCrossTileIDs={},this.lng=0}handleWrapJump(w){let q=Math.round((w-this.lng)/360);if(q!==0)for(let Q in this.indexes){let ee=this.indexes[Q],ue={};for(let Ve in ee){let tt=ee[Ve];tt.tileID=tt.tileID.unwrapTo(tt.tileID.wrap+q),ue[tt.tileID.key]=tt}this.indexes[Q]=ue}this.lng=w}addBucket(w,q,Q){if(this.indexes[w.overscaledZ]&&this.indexes[w.overscaledZ][w.key]){if(this.indexes[w.overscaledZ][w.key].bucketInstanceId===q.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(w.overscaledZ,this.indexes[w.overscaledZ][w.key])}for(let ue=0;uew.overscaledZ)for(let tt in Ve){let mt=Ve[tt];mt.tileID.isChildOf(w)&&mt.findMatches(q.symbolInstances,w,ee)}else{let tt=Ve[w.scaledTo(Number(ue)).key];tt&&tt.findMatches(q.symbolInstances,w,ee)}}for(let ue=0;ue{q[Q]=!0});for(let Q in this.layerIndexes)q[Q]||delete this.layerIndexes[Q]}}let Ri=(le,w)=>a.t(le,w&&w.filter(q=>q.identifier!=="source.canvas")),Ii=a.aw();class xn extends a.E{constructor(w,q={}){super(),this._rtlPluginLoaded=()=>{for(let Q in this.sourceCaches){let ee=this.sourceCaches[Q].getSource().type;ee!=="vector"&&ee!=="geojson"||this.sourceCaches[Q].reload()}},this.map=w,this.dispatcher=new Ee(ke(),w._getMapId()),this.dispatcher.registerMessageHandler("GG",(Q,ee)=>this.getGlyphs(Q,ee)),this.dispatcher.registerMessageHandler("GI",(Q,ee)=>this.getImages(Q,ee)),this.imageManager=new T,this.imageManager.setEventedParent(this),this.glyphManager=new G(w._requestManager,q.localIdeographFontFamily),this.lineAtlas=new ae(256,512),this.crossTileSymbolIndex=new nn,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new a.ax,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("SR",a.ay()),Tt().on(Et,this._rtlPluginLoaded),this.on("data",Q=>{if(Q.dataType!=="source"||Q.sourceDataType!=="metadata")return;let ee=this.sourceCaches[Q.sourceId];if(!ee)return;let ue=ee.getSource();if(ue&&ue.vectorLayerIds)for(let Ve in this._layers){let tt=this._layers[Ve];tt.source===ue.id&&this._validateLayer(tt)}})}loadURL(w,q={},Q){this.fire(new a.k("dataloading",{dataType:"style"})),q.validate=typeof q.validate!="boolean"||q.validate;let ee=this.map._requestManager.transformRequest(w,"Style");this._loadStyleRequest=new AbortController;let ue=this._loadStyleRequest;a.h(ee,this._loadStyleRequest).then(Ve=>{this._loadStyleRequest=null,this._load(Ve.data,q,Q)}).catch(Ve=>{this._loadStyleRequest=null,Ve&&!ue.signal.aborted&&this.fire(new a.j(Ve))})}loadJSON(w,q={},Q){this.fire(new a.k("dataloading",{dataType:"style"})),this._frameRequest=new AbortController,l.frameAsync(this._frameRequest).then(()=>{this._frameRequest=null,q.validate=q.validate!==!1,this._load(w,q,Q)}).catch(()=>{})}loadEmpty(){this.fire(new a.k("dataloading",{dataType:"style"})),this._load(Ii,{validate:!1})}_load(w,q,Q){var ee;let ue=q.transformStyle?q.transformStyle(Q,w):w;if(!q.validate||!Ri(this,a.u(ue))){this._loaded=!0,this.stylesheet=ue;for(let Ve in ue.sources)this.addSource(Ve,ue.sources[Ve],{validate:!1});ue.sprite?this._loadSprite(ue.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(ue.glyphs),this._createLayers(),this.light=new N(this.stylesheet.light),this.sky=new re(this.stylesheet.sky),this.map.setTerrain((ee=this.stylesheet.terrain)!==null&&ee!==void 0?ee:null),this.fire(new a.k("data",{dataType:"style"})),this.fire(new a.k("style.load"))}}_createLayers(){let w=a.az(this.stylesheet.layers);this.dispatcher.broadcast("SL",w),this._order=w.map(q=>q.id),this._layers={},this._serializedLayers=null;for(let q of w){let Q=a.aA(q);Q.setEventedParent(this,{layer:{id:q.id}}),this._layers[q.id]=Q}}_loadSprite(w,q=!1,Q=void 0){let ee;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,function(ue,Ve,tt,mt){return a._(this,void 0,void 0,function*(){let Bt=C(ue),ir=tt>1?"@2x":"",or={},kr={};for(let{id:Vr,url:he}of Bt){let Se=Ve.transformRequest(M(he,ir,".json"),"SpriteJSON");or[Vr]=a.h(Se,mt);let Ne=Ve.transformRequest(M(he,ir,".png"),"SpriteImage");kr[Vr]=v.getImage(Ne,mt)}return yield Promise.all([...Object.values(or),...Object.values(kr)]),function(Vr,he){return a._(this,void 0,void 0,function*(){let Se={};for(let Ne in Vr){Se[Ne]={};let Ge=l.getImageCanvasContext((yield he[Ne]).data),lt=(yield Vr[Ne]).data;for(let rt in lt){let{width:pt,height:Ht,x:nr,y:fr,sdf:Tr,pixelRatio:Ir,stretchX:ri,stretchY:li,content:Ei,textFitWidth:hn,textFitHeight:Zn}=lt[rt];Se[Ne][rt]={data:null,pixelRatio:Ir,sdf:Tr,stretchX:ri,stretchY:li,content:Ei,textFitWidth:hn,textFitHeight:Zn,spriteData:{width:pt,height:Ht,x:nr,y:fr,context:Ge}}}}return Se})}(or,kr)})}(w,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then(ue=>{if(this._spriteRequest=null,ue)for(let Ve in ue){this._spritesImagesIds[Ve]=[];let tt=this._spritesImagesIds[Ve]?this._spritesImagesIds[Ve].filter(mt=>!(mt in ue)):[];for(let mt of tt)this.imageManager.removeImage(mt),this._changedImages[mt]=!0;for(let mt in ue[Ve]){let Bt=Ve==="default"?mt:`${Ve}:${mt}`;this._spritesImagesIds[Ve].push(Bt),Bt in this.imageManager.images?this.imageManager.updateImage(Bt,ue[Ve][mt],!1):this.imageManager.addImage(Bt,ue[Ve][mt]),q&&(this._changedImages[Bt]=!0)}}}).catch(ue=>{this._spriteRequest=null,ee=ue,this.fire(new a.j(ee))}).finally(()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),q&&(this._changed=!0),this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"})),Q&&Q(ee)})}_unloadSprite(){for(let w of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(w),this._changedImages[w]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}_validateLayer(w){let q=this.sourceCaches[w.source];if(!q)return;let Q=w.sourceLayer;if(!Q)return;let ee=q.getSource();(ee.type==="geojson"||ee.vectorLayerIds&&ee.vectorLayerIds.indexOf(Q)===-1)&&this.fire(new a.j(new Error(`Source layer "${Q}" does not exist on source "${ee.id}" as specified by style layer "${w.id}".`)))}loaded(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(let w in this.sourceCaches)if(!this.sourceCaches[w].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeByIds(w,q=!1){let Q=this._serializedAllLayers();if(!w||w.length===0)return Object.values(q?a.aB(Q):Q);let ee=[];for(let ue of w)if(Q[ue]){let Ve=q?a.aB(Q[ue]):Q[ue];ee.push(Ve)}return ee}_serializedAllLayers(){let w=this._serializedLayers;if(w)return w;w=this._serializedLayers={};let q=Object.keys(this._layers);for(let Q of q){let ee=this._layers[Q];ee.type!=="custom"&&(w[Q]=ee.serialize())}return w}hasTransitions(){if(this.light&&this.light.hasTransition()||this.sky&&this.sky.hasTransition())return!0;for(let w in this.sourceCaches)if(this.sourceCaches[w].hasTransition())return!0;for(let w in this._layers)if(this._layers[w].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(w){if(!this._loaded)return;let q=this._changed;if(q){let ee=Object.keys(this._updatedLayers),ue=Object.keys(this._removedLayers);(ee.length||ue.length)&&this._updateWorkerLayers(ee,ue);for(let Ve in this._updatedSources){let tt=this._updatedSources[Ve];if(tt==="reload")this._reloadSource(Ve);else{if(tt!=="clear")throw new Error(`Invalid action ${tt}`);this._clearSource(Ve)}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(let Ve in this._updatedPaintProps)this._layers[Ve].updateTransitions(w);this.light.updateTransitions(w),this.sky.updateTransitions(w),this._resetUpdates()}let Q={};for(let ee in this.sourceCaches){let ue=this.sourceCaches[ee];Q[ee]=ue.used,ue.used=!1}for(let ee of this._order){let ue=this._layers[ee];ue.recalculate(w,this._availableImages),!ue.isHidden(w.zoom)&&ue.source&&(this.sourceCaches[ue.source].used=!0)}for(let ee in Q){let ue=this.sourceCaches[ee];!!Q[ee]!=!!ue.used&&ue.fire(new a.k("data",{sourceDataType:"visibility",dataType:"source",sourceId:ee}))}this.light.recalculate(w),this.sky.recalculate(w),this.z=w.zoom,q&&this.fire(new a.k("data",{dataType:"style"}))}_updateTilesForChangedImages(){let w=Object.keys(this._changedImages);if(w.length){for(let q in this.sourceCaches)this.sourceCaches[q].reloadTilesForDependencies(["icons","patterns"],w);this._changedImages={}}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(let w in this.sourceCaches)this.sourceCaches[w].reloadTilesForDependencies(["glyphs"],[""]);this._glyphsDidChange=!1}}_updateWorkerLayers(w,q){this.dispatcher.broadcast("UL",{layers:this._serializeByIds(w,!1),removedIds:q})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1}setState(w,q={}){var Q;this._checkLoaded();let ee=this.serialize();if(w=q.transformStyle?q.transformStyle(ee,w):w,((Q=q.validate)===null||Q===void 0||Q)&&Ri(this,a.u(w)))return!1;(w=a.aB(w)).layers=a.az(w.layers);let ue=a.aC(ee,w),Ve=this._getOperationsToPerform(ue);if(Ve.unimplemented.length>0)throw new Error(`Unimplemented: ${Ve.unimplemented.join(", ")}.`);if(Ve.operations.length===0)return!1;for(let tt of Ve.operations)tt();return this.stylesheet=w,this._serializedLayers=null,!0}_getOperationsToPerform(w){let q=[],Q=[];for(let ee of w)switch(ee.command){case"setCenter":case"setZoom":case"setBearing":case"setPitch":continue;case"addLayer":q.push(()=>this.addLayer.apply(this,ee.args));break;case"removeLayer":q.push(()=>this.removeLayer.apply(this,ee.args));break;case"setPaintProperty":q.push(()=>this.setPaintProperty.apply(this,ee.args));break;case"setLayoutProperty":q.push(()=>this.setLayoutProperty.apply(this,ee.args));break;case"setFilter":q.push(()=>this.setFilter.apply(this,ee.args));break;case"addSource":q.push(()=>this.addSource.apply(this,ee.args));break;case"removeSource":q.push(()=>this.removeSource.apply(this,ee.args));break;case"setLayerZoomRange":q.push(()=>this.setLayerZoomRange.apply(this,ee.args));break;case"setLight":q.push(()=>this.setLight.apply(this,ee.args));break;case"setGeoJSONSourceData":q.push(()=>this.setGeoJSONSourceData.apply(this,ee.args));break;case"setGlyphs":q.push(()=>this.setGlyphs.apply(this,ee.args));break;case"setSprite":q.push(()=>this.setSprite.apply(this,ee.args));break;case"setSky":q.push(()=>this.setSky.apply(this,ee.args));break;case"setTerrain":q.push(()=>this.map.setTerrain.apply(this,ee.args));break;case"setTransition":q.push(()=>{});break;default:Q.push(ee.command)}return{operations:q,unimplemented:Q}}addImage(w,q){if(this.getImage(w))return this.fire(new a.j(new Error(`An image named "${w}" already exists.`)));this.imageManager.addImage(w,q),this._afterImageUpdated(w)}updateImage(w,q){this.imageManager.updateImage(w,q)}getImage(w){return this.imageManager.getImage(w)}removeImage(w){if(!this.getImage(w))return this.fire(new a.j(new Error(`An image named "${w}" does not exist.`)));this.imageManager.removeImage(w),this._afterImageUpdated(w)}_afterImageUpdated(w){this._availableImages=this.imageManager.listImages(),this._changedImages[w]=!0,this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(w,q,Q={}){if(this._checkLoaded(),this.sourceCaches[w]!==void 0)throw new Error(`Source "${w}" already exists.`);if(!q.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(q).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(q.type)>=0&&this._validate(a.u.source,`sources.${w}`,q,null,Q))return;this.map&&this.map._collectResourceTiming&&(q.collectResourceTiming=!0);let ee=this.sourceCaches[w]=new it(w,q,this.dispatcher);ee.style=this,ee.setEventedParent(this,()=>({isSourceLoaded:ee.loaded(),source:ee.serialize(),sourceId:w})),ee.onAdd(this.map),this._changed=!0}removeSource(w){if(this._checkLoaded(),this.sourceCaches[w]===void 0)throw new Error("There is no source with this ID");for(let Q in this._layers)if(this._layers[Q].source===w)return this.fire(new a.j(new Error(`Source "${w}" cannot be removed while layer "${Q}" is using it.`)));let q=this.sourceCaches[w];delete this.sourceCaches[w],delete this._updatedSources[w],q.fire(new a.k("data",{sourceDataType:"metadata",dataType:"source",sourceId:w})),q.setEventedParent(null),q.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(w,q){if(this._checkLoaded(),this.sourceCaches[w]===void 0)throw new Error(`There is no source with this ID=${w}`);let Q=this.sourceCaches[w].getSource();if(Q.type!=="geojson")throw new Error(`geojsonSource.type is ${Q.type}, which is !== 'geojson`);Q.setData(q),this._changed=!0}getSource(w){return this.sourceCaches[w]&&this.sourceCaches[w].getSource()}addLayer(w,q,Q={}){this._checkLoaded();let ee=w.id;if(this.getLayer(ee))return void this.fire(new a.j(new Error(`Layer "${ee}" already exists on this map.`)));let ue;if(w.type==="custom"){if(Ri(this,a.aD(w)))return;ue=a.aA(w)}else{if("source"in w&&typeof w.source=="object"&&(this.addSource(ee,w.source),w=a.aB(w),w=a.e(w,{source:ee})),this._validate(a.u.layer,`layers.${ee}`,w,{arrayIndex:-1},Q))return;ue=a.aA(w),this._validateLayer(ue),ue.setEventedParent(this,{layer:{id:ee}})}let Ve=q?this._order.indexOf(q):this._order.length;if(q&&Ve===-1)this.fire(new a.j(new Error(`Cannot add layer "${ee}" before non-existing layer "${q}".`)));else{if(this._order.splice(Ve,0,ee),this._layerOrderChanged=!0,this._layers[ee]=ue,this._removedLayers[ee]&&ue.source&&ue.type!=="custom"){let tt=this._removedLayers[ee];delete this._removedLayers[ee],tt.type!==ue.type?this._updatedSources[ue.source]="clear":(this._updatedSources[ue.source]="reload",this.sourceCaches[ue.source].pause())}this._updateLayer(ue),ue.onAdd&&ue.onAdd(this.map)}}moveLayer(w,q){if(this._checkLoaded(),this._changed=!0,!this._layers[w])return void this.fire(new a.j(new Error(`The layer '${w}' does not exist in the map's style and cannot be moved.`)));if(w===q)return;let Q=this._order.indexOf(w);this._order.splice(Q,1);let ee=q?this._order.indexOf(q):this._order.length;q&&ee===-1?this.fire(new a.j(new Error(`Cannot move layer "${w}" before non-existing layer "${q}".`))):(this._order.splice(ee,0,w),this._layerOrderChanged=!0)}removeLayer(w){this._checkLoaded();let q=this._layers[w];if(!q)return void this.fire(new a.j(new Error(`Cannot remove non-existing layer "${w}".`)));q.setEventedParent(null);let Q=this._order.indexOf(w);this._order.splice(Q,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[w]=q,delete this._layers[w],this._serializedLayers&&delete this._serializedLayers[w],delete this._updatedLayers[w],delete this._updatedPaintProps[w],q.onRemove&&q.onRemove(this.map)}getLayer(w){return this._layers[w]}getLayersOrder(){return[...this._order]}hasLayer(w){return w in this._layers}setLayerZoomRange(w,q,Q){this._checkLoaded();let ee=this.getLayer(w);ee?ee.minzoom===q&&ee.maxzoom===Q||(q!=null&&(ee.minzoom=q),Q!=null&&(ee.maxzoom=Q),this._updateLayer(ee)):this.fire(new a.j(new Error(`Cannot set the zoom range of non-existing layer "${w}".`)))}setFilter(w,q,Q={}){this._checkLoaded();let ee=this.getLayer(w);if(ee){if(!a.aE(ee.filter,q))return q==null?(ee.filter=void 0,void this._updateLayer(ee)):void(this._validate(a.u.filter,`layers.${ee.id}.filter`,q,null,Q)||(ee.filter=a.aB(q),this._updateLayer(ee)))}else this.fire(new a.j(new Error(`Cannot filter non-existing layer "${w}".`)))}getFilter(w){return a.aB(this.getLayer(w).filter)}setLayoutProperty(w,q,Q,ee={}){this._checkLoaded();let ue=this.getLayer(w);ue?a.aE(ue.getLayoutProperty(q),Q)||(ue.setLayoutProperty(q,Q,ee),this._updateLayer(ue)):this.fire(new a.j(new Error(`Cannot style non-existing layer "${w}".`)))}getLayoutProperty(w,q){let Q=this.getLayer(w);if(Q)return Q.getLayoutProperty(q);this.fire(new a.j(new Error(`Cannot get style of non-existing layer "${w}".`)))}setPaintProperty(w,q,Q,ee={}){this._checkLoaded();let ue=this.getLayer(w);ue?a.aE(ue.getPaintProperty(q),Q)||(ue.setPaintProperty(q,Q,ee)&&this._updateLayer(ue),this._changed=!0,this._updatedPaintProps[w]=!0,this._serializedLayers=null):this.fire(new a.j(new Error(`Cannot style non-existing layer "${w}".`)))}getPaintProperty(w,q){return this.getLayer(w).getPaintProperty(q)}setFeatureState(w,q){this._checkLoaded();let Q=w.source,ee=w.sourceLayer,ue=this.sourceCaches[Q];if(ue===void 0)return void this.fire(new a.j(new Error(`The source '${Q}' does not exist in the map's style.`)));let Ve=ue.getSource().type;Ve==="geojson"&&ee?this.fire(new a.j(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):Ve!=="vector"||ee?(w.id===void 0&&this.fire(new a.j(new Error("The feature id parameter must be provided."))),ue.setFeatureState(ee,w.id,q)):this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}removeFeatureState(w,q){this._checkLoaded();let Q=w.source,ee=this.sourceCaches[Q];if(ee===void 0)return void this.fire(new a.j(new Error(`The source '${Q}' does not exist in the map's style.`)));let ue=ee.getSource().type,Ve=ue==="vector"?w.sourceLayer:void 0;ue!=="vector"||Ve?q&&typeof w.id!="string"&&typeof w.id!="number"?this.fire(new a.j(new Error("A feature id is required to remove its specific state property."))):ee.removeFeatureState(Ve,w.id,q):this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}getFeatureState(w){this._checkLoaded();let q=w.source,Q=w.sourceLayer,ee=this.sourceCaches[q];if(ee!==void 0)return ee.getSource().type!=="vector"||Q?(w.id===void 0&&this.fire(new a.j(new Error("The feature id parameter must be provided."))),ee.getFeatureState(Q,w.id)):void this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new a.j(new Error(`The source '${q}' does not exist in the map's style.`)))}getTransition(){return a.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;let w=a.aF(this.sourceCaches,ue=>ue.serialize()),q=this._serializeByIds(this._order,!0),Q=this.map.getTerrain()||void 0,ee=this.stylesheet;return a.aG({version:ee.version,name:ee.name,metadata:ee.metadata,light:ee.light,sky:ee.sky,center:ee.center,zoom:ee.zoom,bearing:ee.bearing,pitch:ee.pitch,sprite:ee.sprite,glyphs:ee.glyphs,transition:ee.transition,sources:w,layers:q,terrain:Q},ue=>ue!==void 0)}_updateLayer(w){this._updatedLayers[w.id]=!0,w.source&&!this._updatedSources[w.source]&&this.sourceCaches[w.source].getSource().type!=="raster"&&(this._updatedSources[w.source]="reload",this.sourceCaches[w.source].pause()),this._serializedLayers=null,this._changed=!0}_flattenAndSortRenderedFeatures(w){let q=Ve=>this._layers[Ve].type==="fill-extrusion",Q={},ee=[];for(let Ve=this._order.length-1;Ve>=0;Ve--){let tt=this._order[Ve];if(q(tt)){Q[tt]=Ve;for(let mt of w){let Bt=mt[tt];if(Bt)for(let ir of Bt)ee.push(ir)}}}ee.sort((Ve,tt)=>tt.intersectionZ-Ve.intersectionZ);let ue=[];for(let Ve=this._order.length-1;Ve>=0;Ve--){let tt=this._order[Ve];if(q(tt))for(let mt=ee.length-1;mt>=0;mt--){let Bt=ee[mt].feature;if(Q[Bt.layer.id]{let Tr=Ge.featureSortOrder;if(Tr){let Ir=Tr.indexOf(nr.featureIndex);return Tr.indexOf(fr.featureIndex)-Ir}return fr.featureIndex-nr.featureIndex});for(let nr of Ht)pt.push(nr)}}for(let Ge in he)he[Ge].forEach(lt=>{let rt=lt.feature,pt=Bt[tt[Ge].source].getFeatureState(rt.layer["source-layer"],rt.id);rt.source=rt.layer.source,rt.layer["source-layer"]&&(rt.sourceLayer=rt.layer["source-layer"]),rt.state=pt});return he}(this._layers,Ve,this.sourceCaches,w,q,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(ue)}querySourceFeatures(w,q){q&&q.filter&&this._validate(a.u.filter,"querySourceFeatures.filter",q.filter,null,q);let Q=this.sourceCaches[w];return Q?function(ee,ue){let Ve=ee.getRenderableIds().map(Bt=>ee.getTileByID(Bt)),tt=[],mt={};for(let Bt=0;Btkr.getTileByID(Vr)).sort((Vr,he)=>he.tileID.overscaledZ-Vr.tileID.overscaledZ||(Vr.tileID.isLessThan(he.tileID)?-1:1))}let or=this.crossTileSymbolIndex.addLayer(ir,mt[ir.source],w.center.lng);Ve=Ve||or}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((ue=ue||this._layerOrderChanged||Q===0)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(l.now(),w.zoom))&&(this.pauseablePlacement=new tn(w,this.map.terrain,this._order,ue,q,Q,ee,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,mt),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(l.now()),tt=!0),Ve&&this.pauseablePlacement.placement.setStale()),tt||Ve)for(let Bt of this._order){let ir=this._layers[Bt];ir.type==="symbol"&&this.placement.updateLayerOpacities(ir,mt[ir.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(l.now())}_releaseSymbolFadeTiles(){for(let w in this.sourceCaches)this.sourceCaches[w].releaseSymbolFadeTiles()}getImages(w,q){return a._(this,void 0,void 0,function*(){let Q=yield this.imageManager.getImages(q.icons);this._updateTilesForChangedImages();let ee=this.sourceCaches[q.source];return ee&&ee.setDependencies(q.tileID.key,q.type,q.icons),Q})}getGlyphs(w,q){return a._(this,void 0,void 0,function*(){let Q=yield this.glyphManager.getGlyphs(q.stacks),ee=this.sourceCaches[q.source];return ee&&ee.setDependencies(q.tileID.key,q.type,[""]),Q})}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(w,q={}){this._checkLoaded(),w&&this._validate(a.u.glyphs,"glyphs",w,null,q)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=w,this.glyphManager.entries={},this.glyphManager.setURL(w))}addSprite(w,q,Q={},ee){this._checkLoaded();let ue=[{id:w,url:q}],Ve=[...C(this.stylesheet.sprite),...ue];this._validate(a.u.sprite,"sprite",Ve,null,Q)||(this.stylesheet.sprite=Ve,this._loadSprite(ue,!0,ee))}removeSprite(w){this._checkLoaded();let q=C(this.stylesheet.sprite);if(q.find(Q=>Q.id===w)){if(this._spritesImagesIds[w])for(let Q of this._spritesImagesIds[w])this.imageManager.removeImage(Q),this._changedImages[Q]=!0;q.splice(q.findIndex(Q=>Q.id===w),1),this.stylesheet.sprite=q.length>0?q:void 0,delete this._spritesImagesIds[w],this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}else this.fire(new a.j(new Error(`Sprite "${w}" doesn't exists on this map.`)))}getSprite(){return C(this.stylesheet.sprite)}setSprite(w,q={},Q){this._checkLoaded(),w&&this._validate(a.u.sprite,"sprite",w,null,q)||(this.stylesheet.sprite=w,w?this._loadSprite(w,!0,Q):(this._unloadSprite(),Q&&Q(null)))}}var bi=a.Y([{name:"a_pos",type:"Int16",components:2}]);let Xr={prelude:ct(`#ifdef GL_ES +{name:nonlatin}`,"text-max-width":8,"icon-image":"star_11","text-offset":[.4,0],"icon-size":.8,"text-anchor":"left",visibility:"visible"},paint:{"text-color":"#333","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["!has","iso_a2"]],layout:{"text-font":["Noto Sans Italic"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-3",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-2",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",2],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[2,11],[5,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-1",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",1],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[1,11],[4,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-continent",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",maxzoom:1,filter:["==","class","continent"],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":14,"text-max-width":6.25,"text-transform":"uppercase",visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}}],id:"qebnlkra6"}});var nWe=Ae((z2r,iWe)=>{iWe.exports={version:8,name:"orto",metadata:{},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI © ESRI"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}}]}});var wx=Ae((I2r,uWe)=>{"use strict";var HXt=Z1(),WXt=rWe(),jXt=nWe(),XXt='\xA9 OpenStreetMap contributors',aWe="https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",oWe="https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json",dB="https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",ZXt="https://basemaps.cartocdn.com/gl/positron-nolabels-gl-style/style.json",YXt="https://basemaps.cartocdn.com/gl/dark-matter-nolabels-gl-style/style.json",KXt="https://basemaps.cartocdn.com/gl/voyager-nolabels-gl-style/style.json",lWe={basic:dB,streets:dB,outdoors:dB,light:aWe,dark:oWe,satellite:jXt,"satellite-streets":WXt,"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:XXt,tiles:["https://tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":aWe,"carto-darkmatter":oWe,"carto-voyager":dB,"carto-positron-nolabels":ZXt,"carto-darkmatter-nolabels":YXt,"carto-voyager-nolabels":KXt},sWe=HXt(lWe);uWe.exports={styleValueDflt:"basic",stylesMap:lWe,styleValuesMap:sWe,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",missingStyleErrorMsg:["No valid maplibre style found, please set `map.style` to one of:",sWe.join(", "),"or use a tile service."].join(` +`),mapOnErrorMsg:"Map error."}});var Wk=Ae((R2r,pWe)=>{"use strict";var fWe=ei(),cWe=jl().defaultLine,JXt=zc().attributes,$Xt=gc(),QXt=Zc().textposition,eZt=Sc().overrideAll,tZt=Lf().templatedArray,hWe=wx(),dWe=$Xt({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});dWe.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var rZt=pWe.exports=eZt({_arrayAttrRegexps:[fWe.counterRegex("map",".layers",!0)],domain:JXt({name:"map"}),style:{valType:"any",values:hWe.styleValuesMap,dflt:hWe.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:tZt("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:cWe},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:cWe}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:dWe,textposition:fWe.extendFlat({},QXt,{arrayOk:!1})}})},"plot","from-root");rZt.uirevision={valType:"any",editType:"none"}});var pB=Ae((D2r,gWe)=>{"use strict";var{hovertemplateAttrs:iZt,texttemplateAttrs:nZt,templatefallbackAttrs:vWe}=Ff(),aZt=Cm(),jk=W2(),ES=Zc(),mWe=Wk(),oZt=Gf(),sZt=nc(),nw=Su().extendFlat,lZt=Sc().overrideAll,uZt=Wk(),yWe=jk.line,kS=jk.marker;gWe.exports=lZt({lon:jk.lon,lat:jk.lat,cluster:{enabled:{valType:"boolean"},maxzoom:nw({},uZt.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:nw({},kS.opacity,{dflt:1})},mode:nw({},ES.mode,{dflt:"markers"}),text:nw({},ES.text,{}),texttemplate:nZt({editType:"plot"},{keys:["lat","lon","text"]}),texttemplatefallback:vWe({editType:"plot"}),hovertext:nw({},ES.hovertext,{}),line:{color:yWe.color,width:yWe.width},connectgaps:ES.connectgaps,marker:nw({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:kS.opacity,size:kS.size,sizeref:kS.sizeref,sizemin:kS.sizemin,sizemode:kS.sizemode},sZt("marker")),fill:jk.fill,fillcolor:aZt(),textfont:mWe.layers.symbol.textfont,textposition:mWe.layers.symbol.textposition,below:{valType:"string"},selected:{marker:ES.selected.marker},unselected:{marker:ES.unselected.marker},hoverinfo:nw({},oZt.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:iZt(),hovertemplatefallback:vWe()},"calc","nested")});var IJ=Ae((F2r,_We)=>{"use strict";var fZt=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];_We.exports={isSupportedFont:function(e){return fZt.indexOf(e)!==-1}}});var wWe=Ae((B2r,bWe)=>{"use strict";var Xk=ei(),RJ=lc(),cZt=$v(),hZt=I0(),dZt=R0(),pZt=Im(),xWe=pB(),vZt=IJ().isSupportedFont;bWe.exports=function(t,r,n,i){function a(v,k){return Xk.coerce(t,r,xWe,v,k)}function o(v,k){return Xk.coerce2(t,r,xWe,v,k)}var s=mZt(t,r,a);if(!s){r.visible=!1;return}if(a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),a("below"),RJ.hasMarkers(r)){cZt(t,r,n,i,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var u=r.marker;u.symbol!=="circle"&&(Xk.isArrayOrTypedArray(u.size)&&(u.size=u.size[0]),Xk.isArrayOrTypedArray(u.color)&&(u.color=u.color[0]))}RJ.hasLines(r)&&(hZt(t,r,n,i,a,{noDash:!0}),a("connectgaps"));var l=o("cluster.maxzoom"),f=o("cluster.step"),c=o("cluster.color",r.marker&&r.marker.color||n),h=o("cluster.size"),d=o("cluster.opacity"),p=l!==!1||f!==!1||c!==!1||h!==!1||d!==!1,_=a("cluster.enabled",p);if(_||RJ.hasText(r)){var b=i.font.family;dZt(t,r,i,a,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:vZt(b)?b:"Open Sans Regular",weight:i.font.weight,style:i.font.style,size:i.font.size,color:i.font.color}})}a("fill"),r.fill!=="none"&&pZt(t,r,n,a),Xk.coerceSelectionMarkerOpacity(r,a)};function mZt(e,t,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return t._length=a,a}});var DJ=Ae((O2r,AWe)=>{"use strict";var TWe=wu();AWe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=TWe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=TWe.tickText(o,o.c2l(s[1]),!0).text,i}});var FJ=Ae((q2r,MWe)=>{"use strict";var SWe=ei();MWe.exports=function(t,r){var n=t.split(" "),i=n[0],a=n[1],o=SWe.isArrayOrTypedArray(r)?SWe.mean(r):r,s=.5+o/100,u=1.5+o/100,l=["",""],f=[0,0];switch(i){case"top":l[0]="top",f[1]=-u;break;case"bottom":l[0]="bottom",f[1]=u;break}switch(a){case"left":l[1]="right",f[0]=-s;break;case"right":l[1]="left",f[0]=s;break}var c;return l[0]&&l[1]?c=l.join("-"):l[0]?c=l[0]:l[1]?c=l[1]:c="center",{anchor:c,offset:f}}});var zWe=Ae((N2r,PWe)=>{"use strict";var CWe=ku(),lp=ei(),yZt=rf().BADNUM,mB=tx(),EWe=_c(),gZt=Mu(),_Zt=k3(),yB=lc(),xZt=IJ().isSupportedFont,bZt=FJ(),wZt=iv().appendArrayPointValue,TZt=Xf().NEWLINES,AZt=Xf().BR_TAG_ALL;PWe.exports=function(t,r){var n=r[0].trace,i=n.visible===!0&&n._length!==0,a=n.fill!=="none",o=yB.hasLines(n),s=yB.hasMarkers(n),u=yB.hasText(n),l=s&&n.marker.symbol==="circle",f=s&&n.marker.symbol!=="circle",c=n.cluster&&n.cluster.enabled,h=vB("fill"),d=vB("line"),p=vB("circle"),_=vB("symbol"),b={fill:h,line:d,circle:p,symbol:_};if(!i)return b;var v;if((a||o)&&(v=mB.calcTraceToLineCoords(r)),a&&(h.geojson=mB.makePolygon(v),h.layout.visibility="visible",lp.extendFlat(h.paint,{"fill-color":n.fillcolor})),o&&(d.geojson=mB.makeLine(v),d.layout.visibility="visible",lp.extendFlat(d.paint,{"line-width":n.line.width,"line-color":n.line.color,"line-opacity":n.opacity})),l){var k=SZt(r);p.geojson=k.geojson,p.layout.visibility="visible",c&&(p.filter=["!",["has","point_count"]],b.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":OJ(n.cluster.color,n.cluster.step),"circle-radius":OJ(n.cluster.size,n.cluster.step),"circle-opacity":OJ(n.cluster.opacity,n.cluster.step)}},b.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":kWe(n),"text-size":12}}),lp.extendFlat(p.paint,{"circle-color":k.mcc,"circle-radius":k.mrc,"circle-opacity":k.mo})}if(l&&c&&(p.filter=["!",["has","point_count"]]),(f||u)&&(_.geojson=MZt(r,t),lp.extendFlat(_.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),f&&(lp.extendFlat(_.layout,{"icon-size":n.marker.size/10}),"angle"in n.marker&&n.marker.angle!=="auto"&&lp.extendFlat(_.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),_.layout["icon-allow-overlap"]=n.marker.allowoverlap,lp.extendFlat(_.paint,{"icon-opacity":n.opacity*n.marker.opacity,"icon-color":n.marker.color})),u)){var E=(n.marker||{}).size,A=bZt(n.textposition,E);lp.extendFlat(_.layout,{"text-size":n.textfont.size,"text-anchor":A.anchor,"text-offset":A.offset,"text-font":kWe(n)}),lp.extendFlat(_.paint,{"text-color":n.textfont.color,"text-opacity":n.opacity})}return b};function vB(e){return{type:e,geojson:mB.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function SZt(e){var t=e[0].trace,r=t.marker,n=t.selectedpoints,i=lp.isArrayOrTypedArray(r.color),a=lp.isArrayOrTypedArray(r.size),o=lp.isArrayOrTypedArray(r.opacity),s;function u(E){return t.opacity*E}function l(E){return E/2}var f;i&&(EWe.hasColorscale(t,"marker")?f=EWe.makeColorScaleFuncFromTrace(r):f=lp.identity);var c;a&&(c=_Zt(t));var h;o&&(h=function(E){var A=CWe(E)?+lp.constrain(E,0,1):0;return u(A)});var d=[];for(s=0;s850?s+=" Black":i>750?s+=" Extra Bold":i>650?s+=" Bold":i>550?s+=" Semi Bold":i>450?s+=" Medium":i>350?s+=" Regular":i>250?s+=" Light":i>150?s+=" Extra Light":s+=" Thin"):a.slice(0,2).join(" ")==="Open Sans"?(s="Open Sans",i>750?s+=" Extrabold":i>650?s+=" Bold":i>550?s+=" Semibold":i>350?s+=" Regular":s+=" Light"):a.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(s="Klokantech Noto Sans",a[3]==="CJK"&&(s+=" CJK"),s+=i>500?" Bold":" Regular")),o&&(s+=" Italic"),s==="Open Sans Regular Italic"?s="Open Sans Italic":s==="Open Sans Regular Bold"?s="Open Sans Bold":s==="Open Sans Regular Bold Italic"?s="Open Sans Bold Italic":s==="Klokantech Noto Sans Regular Italic"&&(s="Klokantech Noto Sans Italic"),xZt(s)||(s=r);var u=s.split(", ");return u}});var FWe=Ae((U2r,DWe)=>{"use strict";var EZt=ei(),IWe=zWe(),CS=wx().traceLayerPrefix,nm={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function RWe(e,t,r,n){this.type="scattermap",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:CS+t+"-fill",line:CS+t+"-line",circle:CS+t+"-circle",symbol:CS+t+"-symbol",cluster:CS+t+"-cluster",clusterCount:CS+t+"-cluster-count"},this.below=null}var Zk=RWe.prototype;Zk.addSource=function(e,t,r){var n={type:"geojson",data:t.geojson};r&&r.enabled&&EZt.extendFlat(n,{cluster:!0,clusterMaxZoom:r.maxzoom});var i=this.subplot.map.getSource(this.sourceIds[e]);i?i.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],n)};Zk.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};Zk.addLayer=function(e,t,r){var n={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(n.filter=t.filter);for(var i=this.layerIds[e],a,o=this.subplot.getMapLayers(),s=0;s=0;L--){var x=A[L];i.removeLayer(l.layerIds[x])}E||i.removeSource(l.sourceIds.circle)}function h(E){for(var A=nm.nonCluster,L=0;L=0;L--){var x=A[L];i.removeLayer(l.layerIds[x]),E||i.removeSource(l.sourceIds[x])}}function p(E){u?c(E):d(E)}function _(E){s?f(E):h(E)}function b(){for(var E=s?nm.cluster:nm.nonCluster,A=0;A=0;n--){var i=r[n];t.removeLayer(this.layerIds[i]),t.removeSource(this.sourceIds[i])}};DWe.exports=function(t,r){var n=r[0].trace,i=n.cluster&&n.cluster.enabled,a=n.visible!==!0,o=new RWe(t,n.uid,i,a),s=IWe(t.gd,r),u=o.below=t.belowLookup["trace-"+n.uid],l,f,c;if(i)for(o.addSource("circle",s.circle,n.cluster),l=0;l{"use strict";var kZt=Xc(),qJ=ei(),CZt=fT(),LZt=qJ.fillText,PZt=rf().BADNUM,zZt=wx().traceLayerPrefix;function IZt(e,t,r){var n=e.cd,i=n[0].trace,a=e.xa,o=e.ya,s=e.subplot,u=[],l=zZt+i.uid+"-circle",f=i.cluster&&i.cluster.enabled;if(f){var c=s.map.queryRenderedFeatures(null,{layers:[l]});u=c.map(function(M){return M.id})}var h=t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360),d=h*360,p=t-d;function _(M){var m=M.lonlat;if(m[0]===PZt||f&&u.indexOf(M.i+1)===-1)return 1/0;var P=qJ.modHalf(m[0],360),T=m[1],B=s.project([P,T]),F=B.x-a.c2p([p,T]),U=B.y-o.c2p([P,r]),G=Math.max(3,M.mrc||0);return Math.max(Math.sqrt(F*F+U*U)-G,1-3/G)}if(kZt.getClosest(n,_,e),e.index!==!1){var b=n[e.index],v=b.lonlat,k=[qJ.modHalf(v[0],360)+d,v[1]],E=a.c2p(k),A=o.c2p(k),L=b.mrc||1;e.x0=E-L,e.x1=E+L,e.y0=A-L,e.y1=A+L;var x={};x[i.subplot]={_subplot:s};var C=i._module.formatLabels(b,i,x);return e.lonLabel=C.lonLabel,e.latLabel=C.latLabel,e.color=CZt(i,b),e.extraText=BWe(i,b,n[0].t.labels),e.hovertemplate=i.hovertemplate,[e]}}function BWe(e,t,r){if(e.hovertemplate)return;var n=t.hi||e.hoverinfo,i=n.split("+"),a=i.indexOf("all")!==-1,o=i.indexOf("lon")!==-1,s=i.indexOf("lat")!==-1,u=t.lonlat,l=[];function f(c){return c+"\xB0"}return a||o&&s?l.push("("+f(u[1])+", "+f(u[0])+")"):o?l.push(r.lon+f(u[0])):s&&l.push(r.lat+f(u[1])),(a||i.indexOf("text")!==-1)&&LZt(t,e,l),l.join("
")}OWe.exports={hoverPoints:IZt,getExtraText:BWe}});var NWe=Ae((G2r,qWe)=>{"use strict";qWe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var VWe=Ae((H2r,UWe)=>{"use strict";var RZt=ei(),DZt=lc(),FZt=rf().BADNUM;UWe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,u;if(!DZt.hasMarkers(s))return[];if(r===!1)for(u=0;u{(function(e,t){typeof NJ=="object"&&typeof UJ!="undefined"?UJ.exports=t():(e=typeof globalThis!="undefined"?globalThis:e||self,e.maplibregl=t())})(NJ,function(){"use strict";var e={},t={};function r(i,a,o){if(t[i]=o,i==="index"){var s="var sharedModule = {}; ("+t.shared+")(sharedModule); ("+t.worker+")(sharedModule);",u={};return t.shared(u),t.index(e,u),typeof window!="undefined"&&e.setWorkerUrl(window.URL.createObjectURL(new Blob([s],{type:"text/javascript"}))),e}}r("shared",["exports"],function(i){"use strict";function a(I,S,D,X){return new(D||(D=Promise))(function(ie,ve){function we(Mt){try{ut(X.next(Mt))}catch($t){ve($t)}}function We(Mt){try{ut(X.throw(Mt))}catch($t){ve($t)}}function ut(Mt){var $t;Mt.done?ie(Mt.value):($t=Mt.value,$t instanceof D?$t:new D(function(vr){vr($t)})).then(we,We)}ut((X=X.apply(I,S||[])).next())})}function o(I){return I&&I.__esModule&&Object.prototype.hasOwnProperty.call(I,"default")?I.default:I}typeof SuppressedError=="function"&&SuppressedError;var s=u;function u(I,S){this.x=I,this.y=S}u.prototype={clone:function(){return new u(this.x,this.y)},add:function(I){return this.clone()._add(I)},sub:function(I){return this.clone()._sub(I)},multByPoint:function(I){return this.clone()._multByPoint(I)},divByPoint:function(I){return this.clone()._divByPoint(I)},mult:function(I){return this.clone()._mult(I)},div:function(I){return this.clone()._div(I)},rotate:function(I){return this.clone()._rotate(I)},rotateAround:function(I,S){return this.clone()._rotateAround(I,S)},matMult:function(I){return this.clone()._matMult(I)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(I){return this.x===I.x&&this.y===I.y},dist:function(I){return Math.sqrt(this.distSqr(I))},distSqr:function(I){var S=I.x-this.x,D=I.y-this.y;return S*S+D*D},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(I){return Math.atan2(this.y-I.y,this.x-I.x)},angleWith:function(I){return this.angleWithSep(I.x,I.y)},angleWithSep:function(I,S){return Math.atan2(this.x*S-this.y*I,this.x*I+this.y*S)},_matMult:function(I){var S=I[2]*this.x+I[3]*this.y;return this.x=I[0]*this.x+I[1]*this.y,this.y=S,this},_add:function(I){return this.x+=I.x,this.y+=I.y,this},_sub:function(I){return this.x-=I.x,this.y-=I.y,this},_mult:function(I){return this.x*=I,this.y*=I,this},_div:function(I){return this.x/=I,this.y/=I,this},_multByPoint:function(I){return this.x*=I.x,this.y*=I.y,this},_divByPoint:function(I){return this.x/=I.x,this.y/=I.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var I=this.y;return this.y=this.x,this.x=-I,this},_rotate:function(I){var S=Math.cos(I),D=Math.sin(I),X=D*this.x+S*this.y;return this.x=S*this.x-D*this.y,this.y=X,this},_rotateAround:function(I,S){var D=Math.cos(I),X=Math.sin(I),ie=S.y+X*(this.x-S.x)+D*(this.y-S.y);return this.x=S.x+D*(this.x-S.x)-X*(this.y-S.y),this.y=ie,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},u.convert=function(I){return I instanceof u?I:Array.isArray(I)?new u(I[0],I[1]):I};var l=o(s),f=c;function c(I,S,D,X){this.cx=3*I,this.bx=3*(D-I)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*S,this.by=3*(X-S)-this.cy,this.ay=1-this.cy-this.by,this.p1x=I,this.p1y=S,this.p2x=D,this.p2y=X}c.prototype={sampleCurveX:function(I){return((this.ax*I+this.bx)*I+this.cx)*I},sampleCurveY:function(I){return((this.ay*I+this.by)*I+this.cy)*I},sampleCurveDerivativeX:function(I){return(3*this.ax*I+2*this.bx)*I+this.cx},solveCurveX:function(I,S){if(S===void 0&&(S=1e-6),I<0)return 0;if(I>1)return 1;for(var D=I,X=0;X<8;X++){var ie=this.sampleCurveX(D)-I;if(Math.abs(ie)ie?we=D:We=D,D=.5*(We-we)+we;return D},solve:function(I,S){return this.sampleCurveY(this.solveCurveX(I,S))}};var h=o(f);let d,p;function _(){return d==null&&(d=typeof OffscreenCanvas!="undefined"&&new OffscreenCanvas(1,1).getContext("2d")&&typeof createImageBitmap=="function"),d}function b(){if(p==null&&(p=!1,_())){let S=new OffscreenCanvas(5,5).getContext("2d",{willReadFrequently:!0});if(S){for(let X=0;X<5*5;X++){let ie=4*X;S.fillStyle=`rgb(${ie},${ie+1},${ie+2})`,S.fillRect(X%5,Math.floor(X/5),1,1)}let D=S.getImageData(0,0,5,5).data;for(let X=0;X<5*5*4;X++)if(X%4!=3&&D[X]!==X){p=!0;break}}}return p||!1}function v(I,S,D,X){let ie=new h(I,S,D,X);return ve=>ie.solve(ve)}let k=v(.25,.1,.25,1);function E(I,S,D){return Math.min(D,Math.max(S,I))}function A(I,S,D){let X=D-S,ie=((I-S)%X+X)%X+S;return ie===S?D:ie}function L(I,...S){for(let D of S)for(let X in D)I[X]=D[X];return I}let x=1;function C(I,S,D){let X={};for(let ie in I)X[ie]=S.call(this,I[ie],ie,I);return X}function M(I,S,D){let X={};for(let ie in I)S.call(this,I[ie],ie,I)&&(X[ie]=I[ie]);return X}function m(I){return Array.isArray(I)?I.map(m):typeof I=="object"&&I?C(I,m):I}let P={};function T(I){P[I]||(typeof console!="undefined"&&console.warn(I),P[I]=!0)}function B(I,S,D){return(D.y-I.y)*(S.x-I.x)>(S.y-I.y)*(D.x-I.x)}function F(I){return typeof WorkerGlobalScope!="undefined"&&I!==void 0&&I instanceof WorkerGlobalScope}let U=null;function G(I){return typeof ImageBitmap!="undefined"&&I instanceof ImageBitmap}let j="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function W(I,S,D,X,ie){return a(this,void 0,void 0,function*(){if(typeof VideoFrame=="undefined")throw new Error("VideoFrame not supported");let ve=new VideoFrame(I,{timestamp:0});try{let we=ve==null?void 0:ve.format;if(!we||!we.startsWith("BGR")&&!we.startsWith("RGB"))throw new Error(`Unrecognized format ${we}`);let We=we.startsWith("BGR"),ut=new Uint8ClampedArray(X*ie*4);if(yield ve.copyTo(ut,function(Mt,$t,vr,Sr,Dr){let Jr=4*Math.max(-$t,0),ui=(Math.max(0,vr)-vr)*Sr*4+Jr,Gi=4*Sr,cn=Math.max(0,$t),Za=Math.max(0,vr);return{rect:{x:cn,y:Za,width:Math.min(Mt.width,$t+Sr)-cn,height:Math.min(Mt.height,vr+Dr)-Za},layout:[{offset:ui,stride:Gi}]}}(I,S,D,X,ie)),We)for(let Mt=0;MtF(self)?self.worker&&self.worker.referrer:(window.location.protocol==="blob:"?window.parent:window).location.href,ke=function(I,S){if(/:\/\//.test(I.url)&&!/^https?:|^file:/.test(I.url)){let X=ze(I.url);if(X)return X(I,S);if(F(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:I,targetMapId:Ce},S)}if(!(/^file:/.test(D=I.url)||/^file:/.test(te())&&!/^\w+:/.test(D))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(X,ie){return a(this,void 0,void 0,function*(){let ve=new Request(X.url,{method:X.method||"GET",body:X.body,credentials:X.credentials,headers:X.headers,cache:X.cache,referrer:te(),signal:ie.signal});X.type!=="json"||ve.headers.has("Accept")||ve.headers.set("Accept","application/json");let we=yield fetch(ve);if(!we.ok){let Mt=yield we.blob();throw new de(we.status,we.statusText,X.url,Mt)}let We;We=X.type==="arrayBuffer"||X.type==="image"?we.arrayBuffer():X.type==="json"?we.json():we.text();let ut=yield We;if(ie.signal.aborted)throw ae();return{data:ut,cacheControl:we.headers.get("Cache-Control"),expires:we.headers.get("Expires")}})}(I,S);if(F(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:I,mustQueue:!0,targetMapId:Ce},S)}var D;return function(X,ie){return new Promise((ve,we)=>{var We;let ut=new XMLHttpRequest;ut.open(X.method||"GET",X.url,!0),X.type!=="arrayBuffer"&&X.type!=="image"||(ut.responseType="arraybuffer");for(let Mt in X.headers)ut.setRequestHeader(Mt,X.headers[Mt]);X.type==="json"&&(ut.responseType="text",!((We=X.headers)===null||We===void 0)&&We.Accept||ut.setRequestHeader("Accept","application/json")),ut.withCredentials=X.credentials==="include",ut.onerror=()=>{we(new Error(ut.statusText))},ut.onload=()=>{if(!ie.signal.aborted)if((ut.status>=200&&ut.status<300||ut.status===0)&&ut.response!==null){let Mt=ut.response;if(X.type==="json")try{Mt=JSON.parse(ut.response)}catch($t){return void we($t)}ve({data:Mt,cacheControl:ut.getResponseHeader("Cache-Control"),expires:ut.getResponseHeader("Expires")})}else{let Mt=new Blob([ut.response],{type:ut.getResponseHeader("Content-Type")});we(new de(ut.status,ut.statusText,X.url,Mt))}},ie.signal.addEventListener("abort",()=>{ut.abort(),we(ae())}),ut.send(X.body)})}(I,S)};function Ee(I){if(!I||I.indexOf("://")<=0||I.indexOf("data:image/")===0||I.indexOf("blob:")===0)return!0;let S=new URL(I),D=window.location;return S.protocol===D.protocol&&S.host===D.host}function Me(I,S,D){D[I]&&D[I].indexOf(S)!==-1||(D[I]=D[I]||[],D[I].push(S))}function Ue(I,S,D){if(D&&D[I]){let X=D[I].indexOf(S);X!==-1&&D[I].splice(X,1)}}class De{constructor(S,D={}){L(this,D),this.type=S}}class ye extends De{constructor(S,D={}){super("error",L({error:S},D))}}class qe{on(S,D){return this._listeners=this._listeners||{},Me(S,D,this._listeners),this}off(S,D){return Ue(S,D,this._listeners),Ue(S,D,this._oneTimeListeners),this}once(S,D){return D?(this._oneTimeListeners=this._oneTimeListeners||{},Me(S,D,this._oneTimeListeners),this):new Promise(X=>this.once(S,X))}fire(S,D){typeof S=="string"&&(S=new De(S,D||{}));let X=S.type;if(this.listens(X)){S.target=this;let ie=this._listeners&&this._listeners[X]?this._listeners[X].slice():[];for(let We of ie)We.call(this,S);let ve=this._oneTimeListeners&&this._oneTimeListeners[X]?this._oneTimeListeners[X].slice():[];for(let We of ve)Ue(X,We,this._oneTimeListeners),We.call(this,S);let we=this._eventedParent;we&&(L(S,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),we.fire(S))}else S instanceof ye&&console.error(S.error);return this}listens(S){return this._listeners&&this._listeners[S]&&this._listeners[S].length>0||this._oneTimeListeners&&this._oneTimeListeners[S]&&this._oneTimeListeners[S].length>0||this._eventedParent&&this._eventedParent.listens(S)}setEventedParent(S,D){return this._eventedParent=S,this._eventedParentData=D,this}}var ce={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"enum",default:"mercator",values:{mercator:{},globe:{}}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};let Je=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function nt(I,S){let D={};for(let X in I)X!=="ref"&&(D[X]=I[X]);return Je.forEach(X=>{X in S&&(D[X]=S[X])}),D}function gt(I,S){if(Array.isArray(I)){if(!Array.isArray(S)||I.length!==S.length)return!1;for(let D=0;D`:I.itemType.kind==="value"?"array":`array<${S}>`}return I.kind}let Ie=[vt,Ye,He,it,et,_r,It,xe(Yt),yr,Ut,Re];function Fe(I,S){if(S.kind==="error")return null;if(I.kind==="array"){if(S.kind==="array"&&(S.N===0&&S.itemType.kind==="value"||!Fe(I.itemType,S.itemType))&&(typeof I.N!="number"||I.N===S.N))return null}else{if(I.kind===S.kind)return null;if(I.kind==="value"){for(let D of Ie)if(!Fe(D,S))return null}}return`Expected ${Oe(I)} but found ${Oe(S)} instead.`}function ft(I,S){return S.some(D=>D.kind===I.kind)}function ge(I,S){return S.some(D=>D==="null"?I===null:D==="array"?Array.isArray(I):D==="object"?I&&!Array.isArray(I)&&typeof I=="object":D===typeof I)}function fe(I,S){return I.kind==="array"&&S.kind==="array"?I.itemType.kind===S.itemType.kind&&typeof I.N=="number":I.kind===S.kind}let pe=.96422,dt=.82521,Pt=4/29,zt=6/29,rr=3*zt*zt,Gr=zt*zt*zt,Br=Math.PI/180,Er=180/Math.PI;function Rr(I){return(I%=360)<0&&(I+=360),I}function pi([I,S,D,X]){let ie,ve,we=ni((.2225045*(I=Di(I))+.7168786*(S=Di(S))+.0606169*(D=Di(D)))/1);I===S&&S===D?ie=ve=we:(ie=ni((.4360747*I+.3850649*S+.1430804*D)/pe),ve=ni((.0139322*I+.0971045*S+.7141733*D)/dt));let We=116*we-16;return[We<0?0:We,500*(ie-we),200*(we-ve),X]}function Di(I){return I<=.04045?I/12.92:Math.pow((I+.055)/1.055,2.4)}function ni(I){return I>Gr?Math.pow(I,1/3):I/rr+Pt}function $i([I,S,D,X]){let ie=(I+16)/116,ve=isNaN(S)?ie:ie+S/500,we=isNaN(D)?ie:ie-D/200;return ie=1*si(ie),ve=pe*si(ve),we=dt*si(we),[Qi(3.1338561*ve-1.6168667*ie-.4906146*we),Qi(-.9787684*ve+1.9161415*ie+.033454*we),Qi(.0719453*ve-.2289914*ie+1.4052427*we),X]}function Qi(I){return(I=I<=.00304?12.92*I:1.055*Math.pow(I,1/2.4)-.055)<0?0:I>1?1:I}function si(I){return I>zt?I*I*I:rr*(I-Pt)}function Ai(I){return parseInt(I.padEnd(2,I),16)/255}function Ni(I,S){return Rt(S?I/100:I,0,1)}function Rt(I,S,D){return Math.min(Math.max(S,I),D)}function yt(I){return!I.some(Number.isNaN)}let Gt={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};class Wt{constructor(S,D,X,ie=1,ve=!0){this.r=S,this.g=D,this.b=X,this.a=ie,ve||(this.r*=ie,this.g*=ie,this.b*=ie,ie||this.overwriteGetter("rgb",[S,D,X,ie]))}static parse(S){if(S instanceof Wt)return S;if(typeof S!="string")return;let D=function(X){if((X=X.toLowerCase().trim())==="transparent")return[0,0,0,0];let ie=Gt[X];if(ie){let[we,We,ut]=ie;return[we/255,We/255,ut/255,1]}if(X.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(X)){let we=X.length<6?1:2,We=1;return[Ai(X.slice(We,We+=we)),Ai(X.slice(We,We+=we)),Ai(X.slice(We,We+=we)),Ai(X.slice(We,We+we)||"ff")]}if(X.startsWith("rgb")){let we=X.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(we){let[We,ut,Mt,$t,vr,Sr,Dr,Jr,ui,Gi,cn,Za]=we,Rn=[$t||" ",Dr||" ",Gi].join("");if(Rn===" "||Rn===" /"||Rn===",,"||Rn===",,,"){let La=[Mt,Sr,ui].join(""),So=La==="%%%"?100:La===""?255:0;if(So){let kl=[Rt(+ut/So,0,1),Rt(+vr/So,0,1),Rt(+Jr/So,0,1),cn?Ni(+cn,Za):1];if(yt(kl))return kl}}return}}let ve=X.match(/^hsla?\(\s*([\de.+-]+)(?:deg)?(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(ve){let[we,We,ut,Mt,$t,vr,Sr,Dr,Jr]=ve,ui=[ut||" ",$t||" ",Sr].join("");if(ui===" "||ui===" /"||ui===",,"||ui===",,,"){let Gi=[+We,Rt(+Mt,0,100),Rt(+vr,0,100),Dr?Ni(+Dr,Jr):1];if(yt(Gi))return function([cn,Za,Rn,La]){function So(kl){let mu=(kl+cn/30)%12,Iu=Za*Math.min(Rn,1-Rn);return Rn-Iu*Math.max(-1,Math.min(mu-3,9-mu,1))}return cn=Rr(cn),Za/=100,Rn/=100,[So(0),So(8),So(4),La]}(Gi)}}}(S);return D?new Wt(...D,!1):void 0}get rgb(){let{r:S,g:D,b:X,a:ie}=this,ve=ie||1/0;return this.overwriteGetter("rgb",[S/ve,D/ve,X/ve,ie])}get hcl(){return this.overwriteGetter("hcl",function(S){let[D,X,ie,ve]=pi(S),we=Math.sqrt(X*X+ie*ie);return[Math.round(1e4*we)?Rr(Math.atan2(ie,X)*Er):NaN,we,D,ve]}(this.rgb))}get lab(){return this.overwriteGetter("lab",pi(this.rgb))}overwriteGetter(S,D){return Object.defineProperty(this,S,{value:D}),D}toString(){let[S,D,X,ie]=this.rgb;return`rgba(${[S,D,X].map(ve=>Math.round(255*ve)).join(",")},${ie})`}}Wt.black=new Wt(0,0,0,1),Wt.white=new Wt(1,1,1,1),Wt.transparent=new Wt(0,0,0,0),Wt.red=new Wt(1,0,0,1);class xr{constructor(S,D,X){this.sensitivity=S?D?"variant":"case":D?"accent":"base",this.locale=X,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(S,D){return this.collator.compare(S,D)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Lr{constructor(S,D,X,ie,ve){this.text=S,this.image=D,this.scale=X,this.fontStack=ie,this.textColor=ve}}class Nr{constructor(S){this.sections=S}static fromString(S){return new Nr([new Lr(S,null,null,null,null)])}isEmpty(){return this.sections.length===0||!this.sections.some(S=>S.text.length!==0||S.image&&S.image.name.length!==0)}static factory(S){return S instanceof Nr?S:Nr.fromString(S)}toString(){return this.sections.length===0?"":this.sections.map(S=>S.text).join("")}}class Or{constructor(S){this.values=S.slice()}static parse(S){if(S instanceof Or)return S;if(typeof S=="number")return new Or([S,S,S,S]);if(Array.isArray(S)&&!(S.length<1||S.length>4)){for(let D of S)if(typeof D!="number")return;switch(S.length){case 1:S=[S[0],S[0],S[0],S[0]];break;case 2:S=[S[0],S[1],S[0],S[1]];break;case 3:S=[S[0],S[1],S[2],S[1]]}return new Or(S)}}toString(){return JSON.stringify(this.values)}}let Hr=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]);class jr{constructor(S){this.values=S.slice()}static parse(S){if(S instanceof jr)return S;if(Array.isArray(S)&&!(S.length<1)&&S.length%2==0){for(let D=0;D=0&&I<=255&&typeof S=="number"&&S>=0&&S<=255&&typeof D=="number"&&D>=0&&D<=255?X===void 0||typeof X=="number"&&X>=0&&X<=1?null:`Invalid rgba value [${[I,S,D,X].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof X=="number"?[I,S,D,X]:[I,S,D]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function Vi(I){if(I===null||typeof I=="string"||typeof I=="boolean"||typeof I=="number"||I instanceof Wt||I instanceof xr||I instanceof Nr||I instanceof Or||I instanceof jr||I instanceof gi)return!0;if(Array.isArray(I)){for(let S of I)if(!Vi(S))return!1;return!0}if(typeof I=="object"){for(let S in I)if(!Vi(I[S]))return!1;return!0}return!1}function ti(I){if(I===null)return vt;if(typeof I=="string")return He;if(typeof I=="boolean")return it;if(typeof I=="number")return Ye;if(I instanceof Wt)return et;if(I instanceof xr)return cr;if(I instanceof Nr)return _r;if(I instanceof Or)return yr;if(I instanceof jr)return Re;if(I instanceof gi)return Ut;if(Array.isArray(I)){let S=I.length,D;for(let X of I){let ie=ti(X);if(D){if(D===ie)continue;D=Yt;break}D=ie}return xe(D||Yt,S)}return It}function tn(I){let S=typeof I;return I===null?"":S==="string"||S==="number"||S==="boolean"?String(I):I instanceof Wt||I instanceof Nr||I instanceof Or||I instanceof jr||I instanceof gi?I.toString():JSON.stringify(I)}class Yr{constructor(S,D){this.type=S,this.value=D}static parse(S,D){if(S.length!==2)return D.error(`'literal' expression requires exactly one argument, but found ${S.length-1} instead.`);if(!Vi(S[1]))return D.error("invalid value");let X=S[1],ie=ti(X),ve=D.expectedType;return ie.kind!=="array"||ie.N!==0||!ve||ve.kind!=="array"||typeof ve.N=="number"&&ve.N!==0||(ie=ve),new Yr(ie,X)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class oi{constructor(S){this.name="ExpressionEvaluationError",this.message=S}toJSON(){return this.message}}let Fi={string:He,number:Ye,boolean:it,object:It};class an{constructor(S,D){this.type=S,this.args=D}static parse(S,D){if(S.length<2)return D.error("Expected at least one argument.");let X,ie=1,ve=S[0];if(ve==="array"){let We,ut;if(S.length>2){let Mt=S[1];if(typeof Mt!="string"||!(Mt in Fi)||Mt==="object")return D.error('The item type argument of "array" must be one of string, number, boolean',1);We=Fi[Mt],ie++}else We=Yt;if(S.length>3){if(S[2]!==null&&(typeof S[2]!="number"||S[2]<0||S[2]!==Math.floor(S[2])))return D.error('The length argument to "array" must be a positive integer literal',2);ut=S[2],ie++}X=xe(We,ut)}else{if(!Fi[ve])throw new Error(`Types doesn't contain name = ${ve}`);X=Fi[ve]}let we=[];for(;ieS.outputDefined())}}let nn={"to-boolean":it,"to-color":et,"to-number":Ye,"to-string":He};class Ri{constructor(S,D){this.type=S,this.args=D}static parse(S,D){if(S.length<2)return D.error("Expected at least one argument.");let X=S[0];if(!nn[X])throw new Error(`Can't parse ${X} as it is not part of the known types`);if((X==="to-boolean"||X==="to-string")&&S.length!==2)return D.error("Expected one argument.");let ie=nn[X],ve=[];for(let we=1;we4?`Invalid rbga value ${JSON.stringify(D)}: expected an array containing either three or four numeric values.`:ki(D[0],D[1],D[2],D[3]),!X))return new Wt(D[0]/255,D[1]/255,D[2]/255,D[3])}throw new oi(X||`Could not parse color from value '${typeof D=="string"?D:JSON.stringify(D)}'`)}case"padding":{let D;for(let X of this.args){D=X.evaluate(S);let ie=Or.parse(D);if(ie)return ie}throw new oi(`Could not parse padding from value '${typeof D=="string"?D:JSON.stringify(D)}'`)}case"variableAnchorOffsetCollection":{let D;for(let X of this.args){D=X.evaluate(S);let ie=jr.parse(D);if(ie)return ie}throw new oi(`Could not parse variableAnchorOffsetCollection from value '${typeof D=="string"?D:JSON.stringify(D)}'`)}case"number":{let D=null;for(let X of this.args){if(D=X.evaluate(S),D===null)return 0;let ie=Number(D);if(!isNaN(ie))return ie}throw new oi(`Could not convert ${JSON.stringify(D)} to number.`)}case"formatted":return Nr.fromString(tn(this.args[0].evaluate(S)));case"resolvedImage":return gi.fromString(tn(this.args[0].evaluate(S)));default:return tn(this.args[0].evaluate(S))}}eachChild(S){this.args.forEach(S)}outputDefined(){return this.args.every(S=>S.outputDefined())}}let Ii=["Unknown","Point","LineString","Polygon"];class xn{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?Ii[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(S){let D=this._parseColorCache[S];return D||(D=this._parseColorCache[S]=Wt.parse(S)),D}}class bi{constructor(S,D,X=[],ie,ve=new Tt,we=[]){this.registry=S,this.path=X,this.key=X.map(We=>`[${We}]`).join(""),this.scope=ve,this.errors=we,this.expectedType=ie,this._isConstant=D}parse(S,D,X,ie,ve={}){return D?this.concat(D,X,ie)._parse(S,ve):this._parse(S,ve)}_parse(S,D){function X(ie,ve,we){return we==="assert"?new an(ve,[ie]):we==="coerce"?new Ri(ve,[ie]):ie}if(S!==null&&typeof S!="string"&&typeof S!="boolean"&&typeof S!="number"||(S=["literal",S]),Array.isArray(S)){if(S.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');let ie=S[0];if(typeof ie!="string")return this.error(`Expression name must be a string, but found ${typeof ie} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;let ve=this.registry[ie];if(ve){let we=ve.parse(S,this);if(!we)return null;if(this.expectedType){let We=this.expectedType,ut=we.type;if(We.kind!=="string"&&We.kind!=="number"&&We.kind!=="boolean"&&We.kind!=="object"&&We.kind!=="array"||ut.kind!=="value")if(We.kind!=="color"&&We.kind!=="formatted"&&We.kind!=="resolvedImage"||ut.kind!=="value"&&ut.kind!=="string")if(We.kind!=="padding"||ut.kind!=="value"&&ut.kind!=="number"&&ut.kind!=="array")if(We.kind!=="variableAnchorOffsetCollection"||ut.kind!=="value"&&ut.kind!=="array"){if(this.checkSubtype(We,ut))return null}else we=X(we,We,D.typeAnnotation||"coerce");else we=X(we,We,D.typeAnnotation||"coerce");else we=X(we,We,D.typeAnnotation||"coerce");else we=X(we,We,D.typeAnnotation||"assert")}if(!(we instanceof Yr)&&we.type.kind!=="resolvedImage"&&this._isConstant(we)){let We=new xn;try{we=new Yr(we.type,we.evaluate(We))}catch(ut){return this.error(ut.message),null}}return we}return this.error(`Unknown expression "${ie}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(S===void 0?"'undefined' value invalid. Use null instead.":typeof S=="object"?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof S} instead.`)}concat(S,D,X){let ie=typeof S=="number"?this.path.concat(S):this.path,ve=X?this.scope.concat(X):this.scope;return new bi(this.registry,this._isConstant,ie,D||null,ve,this.errors)}error(S,...D){let X=`${this.key}${D.map(ie=>`[${ie}]`).join("")}`;this.errors.push(new ot(X,S))}checkSubtype(S,D){let X=Fe(S,D);return X&&this.error(X),X}}class Xr{constructor(S,D){this.type=D.type,this.bindings=[].concat(S),this.result=D}evaluate(S){return this.result.evaluate(S)}eachChild(S){for(let D of this.bindings)S(D[1]);S(this.result)}static parse(S,D){if(S.length<4)return D.error(`Expected at least 3 arguments, but found ${S.length-1} instead.`);let X=[];for(let ve=1;ve=X.length)throw new oi(`Array index out of bounds: ${D} > ${X.length-1}.`);if(D!==Math.floor(D))throw new oi(`Array index must be an integer, but found ${D} instead.`);return X[D]}eachChild(S){S(this.index),S(this.input)}outputDefined(){return!1}}class pr{constructor(S,D){this.type=it,this.needle=S,this.haystack=D}static parse(S,D){if(S.length!==3)return D.error(`Expected 2 arguments, but found ${S.length-1} instead.`);let X=D.parse(S[1],1,Yt),ie=D.parse(S[2],2,Yt);return X&&ie?ft(X.type,[it,He,Ye,vt,Yt])?new pr(X,ie):D.error(`Expected first argument to be of type boolean, string, number or null, but found ${Oe(X.type)} instead`):null}evaluate(S){let D=this.needle.evaluate(S),X=this.haystack.evaluate(S);if(!X)return!1;if(!ge(D,["boolean","string","number","null"]))throw new oi(`Expected first argument to be of type boolean, string, number or null, but found ${Oe(ti(D))} instead.`);if(!ge(X,["string","array"]))throw new oi(`Expected second argument to be of type array or string, but found ${Oe(ti(X))} instead.`);return X.indexOf(D)>=0}eachChild(S){S(this.needle),S(this.haystack)}outputDefined(){return!0}}class gr{constructor(S,D,X){this.type=Ye,this.needle=S,this.haystack=D,this.fromIndex=X}static parse(S,D){if(S.length<=2||S.length>=5)return D.error(`Expected 3 or 4 arguments, but found ${S.length-1} instead.`);let X=D.parse(S[1],1,Yt),ie=D.parse(S[2],2,Yt);if(!X||!ie)return null;if(!ft(X.type,[it,He,Ye,vt,Yt]))return D.error(`Expected first argument to be of type boolean, string, number or null, but found ${Oe(X.type)} instead`);if(S.length===4){let ve=D.parse(S[3],3,Ye);return ve?new gr(X,ie,ve):null}return new gr(X,ie)}evaluate(S){let D=this.needle.evaluate(S),X=this.haystack.evaluate(S);if(!ge(D,["boolean","string","number","null"]))throw new oi(`Expected first argument to be of type boolean, string, number or null, but found ${Oe(ti(D))} instead.`);let ie;if(this.fromIndex&&(ie=this.fromIndex.evaluate(S)),ge(X,["string"])){let ve=X.indexOf(D,ie);return ve===-1?-1:[...X.slice(0,ve)].length}if(ge(X,["array"]))return X.indexOf(D,ie);throw new oi(`Expected second argument to be of type array or string, but found ${Oe(ti(X))} instead.`)}eachChild(S){S(this.needle),S(this.haystack),this.fromIndex&&S(this.fromIndex)}outputDefined(){return!1}}class Zr{constructor(S,D,X,ie,ve,we){this.inputType=S,this.type=D,this.input=X,this.cases=ie,this.outputs=ve,this.otherwise=we}static parse(S,D){if(S.length<5)return D.error(`Expected at least 4 arguments, but found only ${S.length-1}.`);if(S.length%2!=1)return D.error("Expected an even number of arguments.");let X,ie;D.expectedType&&D.expectedType.kind!=="value"&&(ie=D.expectedType);let ve={},we=[];for(let Mt=2;MtNumber.MAX_SAFE_INTEGER)return Sr.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof Jr=="number"&&Math.floor(Jr)!==Jr)return Sr.error("Numeric branch labels must be integer values.");if(X){if(Sr.checkSubtype(X,ti(Jr)))return null}else X=ti(Jr);if(ve[String(Jr)]!==void 0)return Sr.error("Branch labels must be unique.");ve[String(Jr)]=we.length}let Dr=D.parse(vr,Mt,ie);if(!Dr)return null;ie=ie||Dr.type,we.push(Dr)}let We=D.parse(S[1],1,Yt);if(!We)return null;let ut=D.parse(S[S.length-1],S.length-1,ie);return ut?We.type.kind!=="value"&&D.concat(1).checkSubtype(X,We.type)?null:new Zr(X,ie,We,ve,we,ut):null}evaluate(S){let D=this.input.evaluate(S);return(ti(D)===this.inputType&&this.outputs[this.cases[D]]||this.otherwise).evaluate(S)}eachChild(S){S(this.input),this.outputs.forEach(S),S(this.otherwise)}outputDefined(){return this.outputs.every(S=>S.outputDefined())&&this.otherwise.outputDefined()}}class Ti{constructor(S,D,X){this.type=S,this.branches=D,this.otherwise=X}static parse(S,D){if(S.length<4)return D.error(`Expected at least 3 arguments, but found only ${S.length-1}.`);if(S.length%2!=0)return D.error("Expected an odd number of arguments.");let X;D.expectedType&&D.expectedType.kind!=="value"&&(X=D.expectedType);let ie=[];for(let we=1;weD.outputDefined())&&this.otherwise.outputDefined()}}class en{constructor(S,D,X,ie){this.type=S,this.input=D,this.beginIndex=X,this.endIndex=ie}static parse(S,D){if(S.length<=2||S.length>=5)return D.error(`Expected 3 or 4 arguments, but found ${S.length-1} instead.`);let X=D.parse(S[1],1,Yt),ie=D.parse(S[2],2,Ye);if(!X||!ie)return null;if(!ft(X.type,[xe(Yt),He,Yt]))return D.error(`Expected first argument to be of type array or string, but found ${Oe(X.type)} instead`);if(S.length===4){let ve=D.parse(S[3],3,Ye);return ve?new en(X.type,X,ie,ve):null}return new en(X.type,X,ie)}evaluate(S){let D=this.input.evaluate(S),X=this.beginIndex.evaluate(S),ie;if(this.endIndex&&(ie=this.endIndex.evaluate(S)),ge(D,["string"]))return[...D].slice(X,ie).join("");if(ge(D,["array"]))return D.slice(X,ie);throw new oi(`Expected first argument to be of type array or string, but found ${Oe(ti(D))} instead.`)}eachChild(S){S(this.input),S(this.beginIndex),this.endIndex&&S(this.endIndex)}outputDefined(){return!1}}function ii(I,S){let D=I.length-1,X,ie,ve=0,we=D,We=0;for(;ve<=we;)if(We=Math.floor((ve+we)/2),X=I[We],ie=I[We+1],X<=S){if(We===D||SS))throw new oi("Input is not a number.");we=We-1}return 0}class Xi{constructor(S,D,X){this.type=S,this.input=D,this.labels=[],this.outputs=[];for(let[ie,ve]of X)this.labels.push(ie),this.outputs.push(ve)}static parse(S,D){if(S.length-1<4)return D.error(`Expected at least 4 arguments, but found only ${S.length-1}.`);if((S.length-1)%2!=0)return D.error("Expected an even number of arguments.");let X=D.parse(S[1],1,Ye);if(!X)return null;let ie=[],ve=null;D.expectedType&&D.expectedType.kind!=="value"&&(ve=D.expectedType);for(let we=1;we=We)return D.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',Mt);let vr=D.parse(ut,$t,ve);if(!vr)return null;ve=ve||vr.type,ie.push([We,vr])}return new Xi(ve,X,ie)}evaluate(S){let D=this.labels,X=this.outputs;if(D.length===1)return X[0].evaluate(S);let ie=this.input.evaluate(S);if(ie<=D[0])return X[0].evaluate(S);let ve=D.length;return ie>=D[ve-1]?X[ve-1].evaluate(S):X[ii(D,ie)].evaluate(S)}eachChild(S){S(this.input);for(let D of this.outputs)S(D)}outputDefined(){return this.outputs.every(S=>S.outputDefined())}}function aa(I){return I&&I.__esModule&&Object.prototype.hasOwnProperty.call(I,"default")?I.default:I}var Mn=Un;function Un(I,S,D,X){this.cx=3*I,this.bx=3*(D-I)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*S,this.by=3*(X-S)-this.cy,this.ay=1-this.cy-this.by,this.p1x=I,this.p1y=S,this.p2x=D,this.p2y=X}Un.prototype={sampleCurveX:function(I){return((this.ax*I+this.bx)*I+this.cx)*I},sampleCurveY:function(I){return((this.ay*I+this.by)*I+this.cy)*I},sampleCurveDerivativeX:function(I){return(3*this.ax*I+2*this.bx)*I+this.cx},solveCurveX:function(I,S){if(S===void 0&&(S=1e-6),I<0)return 0;if(I>1)return 1;for(var D=I,X=0;X<8;X++){var ie=this.sampleCurveX(D)-I;if(Math.abs(ie)ie?we=D:We=D,D=.5*(We-we)+we;return D},solve:function(I,S){return this.sampleCurveY(this.solveCurveX(I,S))}};var Ga=aa(Mn);function ma(I,S,D){return I+D*(S-I)}function oa(I,S,D){return I.map((X,ie)=>ma(X,S[ie],D))}let ka={number:ma,color:function(I,S,D,X="rgb"){switch(X){case"rgb":{let[ie,ve,we,We]=oa(I.rgb,S.rgb,D);return new Wt(ie,ve,we,We,!1)}case"hcl":{let[ie,ve,we,We]=I.hcl,[ut,Mt,$t,vr]=S.hcl,Sr,Dr;if(isNaN(ie)||isNaN(ut))isNaN(ie)?isNaN(ut)?Sr=NaN:(Sr=ut,we!==1&&we!==0||(Dr=Mt)):(Sr=ie,$t!==1&&$t!==0||(Dr=ve));else{let Za=ut-ie;ut>ie&&Za>180?Za-=360:ut180&&(Za+=360),Sr=ie+D*Za}let[Jr,ui,Gi,cn]=function([Za,Rn,La,So]){return Za=isNaN(Za)?0:Za*Br,$i([La,Math.cos(Za)*Rn,Math.sin(Za)*Rn,So])}([Sr,Dr!=null?Dr:ma(ve,Mt,D),ma(we,$t,D),ma(We,vr,D)]);return new Wt(Jr,ui,Gi,cn,!1)}case"lab":{let[ie,ve,we,We]=$i(oa(I.lab,S.lab,D));return new Wt(ie,ve,we,We,!1)}}},array:oa,padding:function(I,S,D){return new Or(oa(I.values,S.values,D))},variableAnchorOffsetCollection:function(I,S,D){let X=I.values,ie=S.values;if(X.length!==ie.length)throw new oi(`Cannot interpolate values of different length. from: ${I.toString()}, to: ${S.toString()}`);let ve=[];for(let we=0;wetypeof $t!="number"||$t<0||$t>1))return D.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);ie={name:"cubic-bezier",controlPoints:Mt}}}if(S.length-1<4)return D.error(`Expected at least 4 arguments, but found only ${S.length-1}.`);if((S.length-1)%2!=0)return D.error("Expected an even number of arguments.");if(ve=D.parse(ve,2,Ye),!ve)return null;let We=[],ut=null;X==="interpolate-hcl"||X==="interpolate-lab"?ut=et:D.expectedType&&D.expectedType.kind!=="value"&&(ut=D.expectedType);for(let Mt=0;Mt=$t)return D.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',Sr);let Jr=D.parse(vr,Dr,ut);if(!Jr)return null;ut=ut||Jr.type,We.push([$t,Jr])}return fe(ut,Ye)||fe(ut,et)||fe(ut,yr)||fe(ut,Re)||fe(ut,xe(Ye))?new so(ut,X,ie,ve,We):D.error(`Type ${Oe(ut)} is not interpolatable.`)}evaluate(S){let D=this.labels,X=this.outputs;if(D.length===1)return X[0].evaluate(S);let ie=this.input.evaluate(S);if(ie<=D[0])return X[0].evaluate(S);let ve=D.length;if(ie>=D[ve-1])return X[ve-1].evaluate(S);let we=ii(D,ie),We=so.interpolationFactor(this.interpolation,ie,D[we],D[we+1]),ut=X[we].evaluate(S),Mt=X[we+1].evaluate(S);switch(this.operator){case"interpolate":return ka[this.type.kind](ut,Mt,We);case"interpolate-hcl":return ka.color(ut,Mt,We,"hcl");case"interpolate-lab":return ka.color(ut,Mt,We,"lab")}}eachChild(S){S(this.input);for(let D of this.outputs)S(D)}outputDefined(){return this.outputs.every(S=>S.outputDefined())}}function Kr(I,S,D,X){let ie=X-D,ve=I-D;return ie===0?0:S===1?ve/ie:(Math.pow(S,ve)-1)/(Math.pow(S,ie)-1)}class Ia{constructor(S,D){this.type=S,this.args=D}static parse(S,D){if(S.length<2)return D.error("Expectected at least one argument.");let X=null,ie=D.expectedType;ie&&ie.kind!=="value"&&(X=ie);let ve=[];for(let We of S.slice(1)){let ut=D.parse(We,1+ve.length,X,void 0,{typeAnnotation:"omit"});if(!ut)return null;X=X||ut.type,ve.push(ut)}if(!X)throw new Error("No output type");let we=ie&&ve.some(We=>Fe(ie,We.type));return new Ia(we?Yt:X,ve)}evaluate(S){let D,X=null,ie=0;for(let ve of this.args)if(ie++,X=ve.evaluate(S),X&&X instanceof gi&&!X.available&&(D||(D=X.name),X=null,ie===this.args.length&&(X=D)),X!==null)break;return X}eachChild(S){this.args.forEach(S)}outputDefined(){return this.args.every(S=>S.outputDefined())}}function Yo(I,S){return I==="=="||I==="!="?S.kind==="boolean"||S.kind==="string"||S.kind==="number"||S.kind==="null"||S.kind==="value":S.kind==="string"||S.kind==="number"||S.kind==="value"}function fa(I,S,D,X){return X.compare(S,D)===0}function kn(I,S,D){let X=I!=="=="&&I!=="!=";return class GWe{constructor(ve,we,We){this.type=it,this.lhs=ve,this.rhs=we,this.collator=We,this.hasUntypedArgument=ve.type.kind==="value"||we.type.kind==="value"}static parse(ve,we){if(ve.length!==3&&ve.length!==4)return we.error("Expected two or three arguments.");let We=ve[0],ut=we.parse(ve[1],1,Yt);if(!ut)return null;if(!Yo(We,ut.type))return we.concat(1).error(`"${We}" comparisons are not supported for type '${Oe(ut.type)}'.`);let Mt=we.parse(ve[2],2,Yt);if(!Mt)return null;if(!Yo(We,Mt.type))return we.concat(2).error(`"${We}" comparisons are not supported for type '${Oe(Mt.type)}'.`);if(ut.type.kind!==Mt.type.kind&&ut.type.kind!=="value"&&Mt.type.kind!=="value")return we.error(`Cannot compare types '${Oe(ut.type)}' and '${Oe(Mt.type)}'.`);X&&(ut.type.kind==="value"&&Mt.type.kind!=="value"?ut=new an(Mt.type,[ut]):ut.type.kind!=="value"&&Mt.type.kind==="value"&&(Mt=new an(ut.type,[Mt])));let $t=null;if(ve.length===4){if(ut.type.kind!=="string"&&Mt.type.kind!=="string"&&ut.type.kind!=="value"&&Mt.type.kind!=="value")return we.error("Cannot use collator to compare non-string types.");if($t=we.parse(ve[3],3,cr),!$t)return null}return new GWe(ut,Mt,$t)}evaluate(ve){let we=this.lhs.evaluate(ve),We=this.rhs.evaluate(ve);if(X&&this.hasUntypedArgument){let ut=ti(we),Mt=ti(We);if(ut.kind!==Mt.kind||ut.kind!=="string"&&ut.kind!=="number")throw new oi(`Expected arguments for "${I}" to be (string, string) or (number, number), but found (${ut.kind}, ${Mt.kind}) instead.`)}if(this.collator&&!X&&this.hasUntypedArgument){let ut=ti(we),Mt=ti(We);if(ut.kind!=="string"||Mt.kind!=="string")return S(ve,we,We)}return this.collator?D(ve,we,We,this.collator.evaluate(ve)):S(ve,we,We)}eachChild(ve){ve(this.lhs),ve(this.rhs),this.collator&&ve(this.collator)}outputDefined(){return!0}}}let Aa=kn("==",function(I,S,D){return S===D},fa),ys=kn("!=",function(I,S,D){return S!==D},function(I,S,D,X){return!fa(0,S,D,X)}),uo=kn("<",function(I,S,D){return S",function(I,S,D){return S>D},function(I,S,D,X){return X.compare(S,D)>0}),$a=kn("<=",function(I,S,D){return S<=D},function(I,S,D,X){return X.compare(S,D)<=0}),fo=kn(">=",function(I,S,D){return S>=D},function(I,S,D,X){return X.compare(S,D)>=0});class mn{constructor(S,D,X){this.type=cr,this.locale=X,this.caseSensitive=S,this.diacriticSensitive=D}static parse(S,D){if(S.length!==2)return D.error("Expected one argument.");let X=S[1];if(typeof X!="object"||Array.isArray(X))return D.error("Collator options argument must be an object.");let ie=D.parse(X["case-sensitive"]!==void 0&&X["case-sensitive"],1,it);if(!ie)return null;let ve=D.parse(X["diacritic-sensitive"]!==void 0&&X["diacritic-sensitive"],1,it);if(!ve)return null;let we=null;return X.locale&&(we=D.parse(X.locale,1,He),!we)?null:new mn(ie,ve,we)}evaluate(S){return new xr(this.caseSensitive.evaluate(S),this.diacriticSensitive.evaluate(S),this.locale?this.locale.evaluate(S):null)}eachChild(S){S(this.caseSensitive),S(this.diacriticSensitive),this.locale&&S(this.locale)}outputDefined(){return!1}}class ra{constructor(S,D,X,ie,ve){this.type=He,this.number=S,this.locale=D,this.currency=X,this.minFractionDigits=ie,this.maxFractionDigits=ve}static parse(S,D){if(S.length!==3)return D.error("Expected two arguments.");let X=D.parse(S[1],1,Ye);if(!X)return null;let ie=S[2];if(typeof ie!="object"||Array.isArray(ie))return D.error("NumberFormat options argument must be an object.");let ve=null;if(ie.locale&&(ve=D.parse(ie.locale,1,He),!ve))return null;let we=null;if(ie.currency&&(we=D.parse(ie.currency,1,He),!we))return null;let We=null;if(ie["min-fraction-digits"]&&(We=D.parse(ie["min-fraction-digits"],1,Ye),!We))return null;let ut=null;return ie["max-fraction-digits"]&&(ut=D.parse(ie["max-fraction-digits"],1,Ye),!ut)?null:new ra(X,ve,we,We,ut)}evaluate(S){return new Intl.NumberFormat(this.locale?this.locale.evaluate(S):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(S):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(S):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(S):void 0}).format(this.number.evaluate(S))}eachChild(S){S(this.number),this.locale&&S(this.locale),this.currency&&S(this.currency),this.minFractionDigits&&S(this.minFractionDigits),this.maxFractionDigits&&S(this.maxFractionDigits)}outputDefined(){return!1}}class wa{constructor(S){this.type=_r,this.sections=S}static parse(S,D){if(S.length<2)return D.error("Expected at least one argument.");let X=S[1];if(!Array.isArray(X)&&typeof X=="object")return D.error("First argument must be an image or text section.");let ie=[],ve=!1;for(let we=1;we<=S.length-1;++we){let We=S[we];if(ve&&typeof We=="object"&&!Array.isArray(We)){ve=!1;let ut=null;if(We["font-scale"]&&(ut=D.parse(We["font-scale"],1,Ye),!ut))return null;let Mt=null;if(We["text-font"]&&(Mt=D.parse(We["text-font"],1,xe(He)),!Mt))return null;let $t=null;if(We["text-color"]&&($t=D.parse(We["text-color"],1,et),!$t))return null;let vr=ie[ie.length-1];vr.scale=ut,vr.font=Mt,vr.textColor=$t}else{let ut=D.parse(S[we],1,Yt);if(!ut)return null;let Mt=ut.type.kind;if(Mt!=="string"&&Mt!=="value"&&Mt!=="null"&&Mt!=="resolvedImage")return D.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");ve=!0,ie.push({content:ut,scale:null,font:null,textColor:null})}}return new wa(ie)}evaluate(S){return new Nr(this.sections.map(D=>{let X=D.content.evaluate(S);return ti(X)===Ut?new Lr("",X,null,null,null):new Lr(tn(X),null,D.scale?D.scale.evaluate(S):null,D.font?D.font.evaluate(S).join(","):null,D.textColor?D.textColor.evaluate(S):null)}))}eachChild(S){for(let D of this.sections)S(D.content),D.scale&&S(D.scale),D.font&&S(D.font),D.textColor&&S(D.textColor)}outputDefined(){return!1}}class ws{constructor(S){this.type=Ut,this.input=S}static parse(S,D){if(S.length!==2)return D.error("Expected two arguments.");let X=D.parse(S[1],1,He);return X?new ws(X):D.error("No image name provided.")}evaluate(S){let D=this.input.evaluate(S),X=gi.fromString(D);return X&&S.availableImages&&(X.available=S.availableImages.indexOf(D)>-1),X}eachChild(S){S(this.input)}outputDefined(){return!1}}class Co{constructor(S){this.type=Ye,this.input=S}static parse(S,D){if(S.length!==2)return D.error(`Expected 1 argument, but found ${S.length-1} instead.`);let X=D.parse(S[1],1);return X?X.type.kind!=="array"&&X.type.kind!=="string"&&X.type.kind!=="value"?D.error(`Expected argument of type string or array, but found ${Oe(X.type)} instead.`):new Co(X):null}evaluate(S){let D=this.input.evaluate(S);if(typeof D=="string")return[...D].length;if(Array.isArray(D))return D.length;throw new oi(`Expected value to be of type string or array, but found ${Oe(ti(D))} instead.`)}eachChild(S){S(this.input)}outputDefined(){return!1}}let Po=8192;function Wi(I,S){let D=(180+I[0])/360,X=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+I[1]*Math.PI/360)))/360,ie=Math.pow(2,S.z);return[Math.round(D*ie*Po),Math.round(X*ie*Po)]}function gn(I,S){let D=Math.pow(2,S.z);return[(ie=(I[0]/Po+S.x)/D,360*ie-180),(X=(I[1]/Po+S.y)/D,360/Math.PI*Math.atan(Math.exp((180-360*X)*Math.PI/180))-90)];var X,ie}function Ps(I,S){I[0]=Math.min(I[0],S[0]),I[1]=Math.min(I[1],S[1]),I[2]=Math.max(I[2],S[0]),I[3]=Math.max(I[3],S[1])}function Ha(I,S){return!(I[0]<=S[0]||I[2]>=S[2]||I[1]<=S[1]||I[3]>=S[3])}function Sn(I,S,D){let X=I[0]-S[0],ie=I[1]-S[1],ve=I[0]-D[0],we=I[1]-D[1];return X*we-ve*ie==0&&X*ve<=0&&ie*we<=0}function ao(I,S,D,X){return(ie=[X[0]-D[0],X[1]-D[1]])[0]*(ve=[S[0]-I[0],S[1]-I[1]])[1]-ie[1]*ve[0]!=0&&!(!Qa(I,S,D,X)||!Qa(D,X,I,S));var ie,ve}function Ba(I,S,D){for(let X of D)for(let ie=0;ie(ie=I)[1]!=(we=We[ut+1])[1]>ie[1]&&ie[0]<(we[0]-ve[0])*(ie[1]-ve[1])/(we[1]-ve[1])+ve[0]&&(X=!X)}var ie,ve,we;return X}function Qo(I,S){for(let D of S)if(Ko(I,D))return!0;return!1}function Hi(I,S){for(let D of I)if(!Ko(D,S))return!1;for(let D=0;D0&&We<0||we<0&&We>0}function vn(I,S,D){let X=[];for(let ie=0;ieD[2]){let ie=.5*X,ve=I[0]-D[0]>ie?-X:D[0]-I[0]>ie?X:0;ve===0&&(ve=I[0]-D[2]>ie?-X:D[2]-I[0]>ie?X:0),I[0]+=ve}Ps(S,I)}function vo(I,S,D,X){let ie=Math.pow(2,X.z)*Po,ve=[X.x*Po,X.y*Po],we=[];for(let We of I)for(let ut of We){let Mt=[ut.x+ve[0],ut.y+ve[1]];la(Mt,S,D,ie),we.push(Mt)}return we}function Ts(I,S,D,X){let ie=Math.pow(2,X.z)*Po,ve=[X.x*Po,X.y*Po],we=[];for(let ut of I){let Mt=[];for(let $t of ut){let vr=[$t.x+ve[0],$t.y+ve[1]];Ps(S,vr),Mt.push(vr)}we.push(Mt)}if(S[2]-S[0]<=ie/2){(We=S)[0]=We[1]=1/0,We[2]=We[3]=-1/0;for(let ut of we)for(let Mt of ut)la(Mt,S,D,ie)}var We;return we}class ps{constructor(S,D){this.type=it,this.geojson=S,this.geometries=D}static parse(S,D){if(S.length!==2)return D.error(`'within' expression requires exactly one argument, but found ${S.length-1} instead.`);if(Vi(S[1])){let X=S[1];if(X.type==="FeatureCollection"){let ie=[];for(let ve of X.features){let{type:we,coordinates:We}=ve.geometry;we==="Polygon"&&ie.push(We),we==="MultiPolygon"&&ie.push(...We)}if(ie.length)return new ps(X,{type:"MultiPolygon",coordinates:ie})}else if(X.type==="Feature"){let ie=X.geometry.type;if(ie==="Polygon"||ie==="MultiPolygon")return new ps(X,X.geometry)}else if(X.type==="Polygon"||X.type==="MultiPolygon")return new ps(X,X)}return D.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(S){if(S.geometry()!=null&&S.canonicalID()!=null){if(S.geometryType()==="Point")return function(D,X){let ie=[1/0,1/0,-1/0,-1/0],ve=[1/0,1/0,-1/0,-1/0],we=D.canonicalID();if(X.type==="Polygon"){let We=vn(X.coordinates,ve,we),ut=vo(D.geometry(),ie,ve,we);if(!Ha(ie,ve))return!1;for(let Mt of ut)if(!Ko(Mt,We))return!1}if(X.type==="MultiPolygon"){let We=da(X.coordinates,ve,we),ut=vo(D.geometry(),ie,ve,we);if(!Ha(ie,ve))return!1;for(let Mt of ut)if(!Qo(Mt,We))return!1}return!0}(S,this.geometries);if(S.geometryType()==="LineString")return function(D,X){let ie=[1/0,1/0,-1/0,-1/0],ve=[1/0,1/0,-1/0,-1/0],we=D.canonicalID();if(X.type==="Polygon"){let We=vn(X.coordinates,ve,we),ut=Ts(D.geometry(),ie,ve,we);if(!Ha(ie,ve))return!1;for(let Mt of ut)if(!Hi(Mt,We))return!1}if(X.type==="MultiPolygon"){let We=da(X.coordinates,ve,we),ut=Ts(D.geometry(),ie,ve,we);if(!Ha(ie,ve))return!1;for(let Mt of ut)if(!Sa(Mt,We))return!1}return!0}(S,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}}let co=class{constructor(I=[],S=(D,X)=>DX?1:0){if(this.data=I,this.length=this.data.length,this.compare=S,this.length>0)for(let D=(this.length>>1)-1;D>=0;D--)this._down(D)}push(I){this.data.push(I),this._up(this.length++)}pop(){if(this.length===0)return;let I=this.data[0],S=this.data.pop();return--this.length>0&&(this.data[0]=S,this._down(0)),I}peek(){return this.data[0]}_up(I){let{data:S,compare:D}=this,X=S[I];for(;I>0;){let ie=I-1>>1,ve=S[ie];if(D(X,ve)>=0)break;S[I]=ve,I=ie}S[I]=X}_down(I){let{data:S,compare:D}=this,X=this.length>>1,ie=S[I];for(;I=0)break;S[I]=S[ve],I=ve}S[I]=ie}};function mo(I,S,D,X,ie){No(I,S,D,X||I.length-1,ie||Go)}function No(I,S,D,X,ie){for(;X>D;){if(X-D>600){var ve=X-D+1,we=S-D+1,We=Math.log(ve),ut=.5*Math.exp(2*We/3),Mt=.5*Math.sqrt(We*ut*(ve-ut)/ve)*(we-ve/2<0?-1:1);No(I,S,Math.max(D,Math.floor(S-we*ut/ve+Mt)),Math.min(X,Math.floor(S+(ve-we)*ut/ve+Mt)),ie)}var $t=I[S],vr=D,Sr=X;for(jn(I,D,S),ie(I[X],$t)>0&&jn(I,D,X);vr0;)Sr--}ie(I[D],$t)===0?jn(I,D,Sr):jn(I,++Sr,X),Sr<=S&&(D=Sr+1),S<=Sr&&(X=Sr-1)}}function jn(I,S,D){var X=I[S];I[S]=I[D],I[D]=X}function Go(I,S){return IS?1:0}function Ys(I,S){if(I.length<=1)return[I];let D=[],X,ie;for(let ve of I){let we=Ns(ve);we!==0&&(ve.area=Math.abs(we),ie===void 0&&(ie=we<0),ie===we<0?(X&&D.push(X),X=[ve]):X.push(ve))}if(X&&D.push(X),S>1)for(let ve=0;ve1?(Mt=S[ut+1][0],$t=S[ut+1][1]):Dr>0&&(Mt+=vr/this.kx*Dr,$t+=Sr/this.ky*Dr)),vr=this.wrap(D[0]-Mt)*this.kx,Sr=(D[1]-$t)*this.ky;let Jr=vr*vr+Sr*Sr;Jr180;)S-=360;return S}}function _n(I,S){return S[0]-I[0]}function Vn(I){return I[1]-I[0]+1}function wo(I,S){return I[1]>=I[0]&&I[1]I[1])return[null,null];let D=Vn(I);if(S){if(D===2)return[I,null];let ie=Math.floor(D/2);return[[I[0],I[0]+ie],[I[0]+ie,I[1]]]}if(D===1)return[I,null];let X=Math.floor(D/2)-1;return[[I[0],I[0]+X],[I[0]+X+1,I[1]]]}function Xn(I,S){if(!wo(S,I.length))return[1/0,1/0,-1/0,-1/0];let D=[1/0,1/0,-1/0,-1/0];for(let X=S[0];X<=S[1];++X)Ps(D,I[X]);return D}function un(I){let S=[1/0,1/0,-1/0,-1/0];for(let D of I)for(let X of D)Ps(S,X);return S}function $n(I){return I[0]!==-1/0&&I[1]!==-1/0&&I[2]!==1/0&&I[3]!==1/0}function Ka(I,S,D){if(!$n(I)||!$n(S))return NaN;let X=0,ie=0;return I[2]S[2]&&(X=I[0]-S[2]),I[1]>S[3]&&(ie=I[1]-S[3]),I[3]=X)return X;if(Ha(ie,ve)){if(es(I,S))return 0}else if(es(S,I))return 0;let we=1/0;for(let We of I)for(let ut=0,Mt=We.length,$t=Mt-1;ut0;){let ut=we.pop();if(ut[0]>=ve)continue;let Mt=ut[1],$t=S?50:100;if(Vn(Mt)<=$t){if(!wo(Mt,I.length))return NaN;if(S){let vr=sa(I,Mt,D,X);if(isNaN(vr)||vr===0)return vr;ve=Math.min(ve,vr)}else for(let vr=Mt[0];vr<=Mt[1];++vr){let Sr=eo(I[vr],D,X);if(ve=Math.min(ve,Sr),ve===0)return 0}}else{let vr=Ra(Mt,S);rn(we,ve,X,I,We,vr[0]),rn(we,ve,X,I,We,vr[1])}}return ve}function yo(I,S,D,X,ie,ve=1/0){let we=Math.min(ve,ie.distance(I[0],D[0]));if(we===0)return we;let We=new co([[0,[0,I.length-1],[0,D.length-1]]],_n);for(;We.length>0;){let ut=We.pop();if(ut[0]>=we)continue;let Mt=ut[1],$t=ut[2],vr=S?50:100,Sr=X?50:100;if(Vn(Mt)<=vr&&Vn($t)<=Sr){if(!wo(Mt,I.length)&&wo($t,D.length))return NaN;let Dr;if(S&&X)Dr=Ja(I,Mt,D,$t,ie),we=Math.min(we,Dr);else if(S&&!X){let Jr=I.slice(Mt[0],Mt[1]+1);for(let ui=$t[0];ui<=$t[1];++ui)if(Dr=qn(D[ui],Jr,ie),we=Math.min(we,Dr),we===0)return we}else if(!S&&X){let Jr=D.slice($t[0],$t[1]+1);for(let ui=Mt[0];ui<=Mt[1];++ui)if(Dr=qn(I[ui],Jr,ie),we=Math.min(we,Dr),we===0)return we}else Dr=lo(I,Mt,D,$t,ie),we=Math.min(we,Dr)}else{let Dr=Ra(Mt,S),Jr=Ra($t,X);Pa(We,we,ie,I,D,Dr[0],Jr[0]),Pa(We,we,ie,I,D,Dr[0],Jr[1]),Pa(We,we,ie,I,D,Dr[1],Jr[0]),Pa(We,we,ie,I,D,Dr[1],Jr[1])}}return we}function Jo(I){return I.type==="MultiPolygon"?I.coordinates.map(S=>({type:"Polygon",coordinates:S})):I.type==="MultiLineString"?I.coordinates.map(S=>({type:"LineString",coordinates:S})):I.type==="MultiPoint"?I.coordinates.map(S=>({type:"Point",coordinates:S})):[I]}class To{constructor(S,D){this.type=Ye,this.geojson=S,this.geometries=D}static parse(S,D){if(S.length!==2)return D.error(`'distance' expression requires exactly one argument, but found ${S.length-1} instead.`);if(Vi(S[1])){let X=S[1];if(X.type==="FeatureCollection")return new To(X,X.features.map(ie=>Jo(ie.geometry)).flat());if(X.type==="Feature")return new To(X,Jo(X.geometry));if("type"in X&&"coordinates"in X)return new To(X,Jo(X))}return D.error("'distance' expression requires valid geojson object that contains polygon geometry type.")}evaluate(S){if(S.geometry()!=null&&S.canonicalID()!=null){if(S.geometryType()==="Point")return function(D,X){let ie=D.geometry(),ve=ie.flat().map(ut=>gn([ut.x,ut.y],D.canonical));if(ie.length===0)return NaN;let we=new Ya(ve[0][1]),We=1/0;for(let ut of X){switch(ut.type){case"Point":We=Math.min(We,yo(ve,!1,[ut.coordinates],!1,we,We));break;case"LineString":We=Math.min(We,yo(ve,!1,ut.coordinates,!0,we,We));break;case"Polygon":We=Math.min(We,to(ve,!1,ut.coordinates,we,We))}if(We===0)return We}return We}(S,this.geometries);if(S.geometryType()==="LineString")return function(D,X){let ie=D.geometry(),ve=ie.flat().map(ut=>gn([ut.x,ut.y],D.canonical));if(ie.length===0)return NaN;let we=new Ya(ve[0][1]),We=1/0;for(let ut of X){switch(ut.type){case"Point":We=Math.min(We,yo(ve,!0,[ut.coordinates],!1,we,We));break;case"LineString":We=Math.min(We,yo(ve,!0,ut.coordinates,!0,we,We));break;case"Polygon":We=Math.min(We,to(ve,!0,ut.coordinates,we,We))}if(We===0)return We}return We}(S,this.geometries);if(S.geometryType()==="Polygon")return function(D,X){let ie=D.geometry();if(ie.length===0||ie[0].length===0)return NaN;let ve=Ys(ie,0).map(ut=>ut.map(Mt=>Mt.map($t=>gn([$t.x,$t.y],D.canonical)))),we=new Ya(ve[0][0][0][1]),We=1/0;for(let ut of X)for(let Mt of ve){switch(ut.type){case"Point":We=Math.min(We,to([ut.coordinates],!1,Mt,we,We));break;case"LineString":We=Math.min(We,to(ut.coordinates,!0,Mt,we,We));break;case"Polygon":We=Math.min(We,Na(Mt,ut.coordinates,we,We))}if(We===0)return We}return We}(S,this.geometries)}return NaN}eachChild(){}outputDefined(){return!0}}let Dn={"==":Aa,"!=":ys,">":ls,"<":uo,">=":fo,"<=":$a,array:an,at:tr,boolean:an,case:Ti,coalesce:Ia,collator:mn,format:wa,image:ws,in:pr,"index-of":gr,interpolate:so,"interpolate-hcl":so,"interpolate-lab":so,length:Co,let:Xr,literal:Yr,match:Zr,number:an,"number-format":ra,object:an,slice:en,step:Xi,string:an,"to-boolean":Ri,"to-color":Ri,"to-number":Ri,"to-string":Ri,var:ct,within:ps,distance:To};class _a{constructor(S,D,X,ie){this.name=S,this.type=D,this._evaluate=X,this.args=ie}evaluate(S){return this._evaluate(S,this.args)}eachChild(S){this.args.forEach(S)}outputDefined(){return!1}static parse(S,D){let X=S[0],ie=_a.definitions[X];if(!ie)return D.error(`Unknown expression "${X}". If you wanted a literal array, use ["literal", [...]].`,0);let ve=Array.isArray(ie)?ie[0]:ie.type,we=Array.isArray(ie)?[[ie[1],ie[2]]]:ie.overloads,We=we.filter(([Mt])=>!Array.isArray(Mt)||Mt.length===S.length-1),ut=null;for(let[Mt,$t]of We){ut=new bi(D.registry,Ho,D.path,null,D.scope);let vr=[],Sr=!1;for(let Dr=1;Dr{return Sr=vr,Array.isArray(Sr)?`(${Sr.map(Oe).join(", ")})`:`(${Oe(Sr.type)}...)`;var Sr}).join(" | "),$t=[];for(let vr=1;vr{D=S?D&&Ho(X):D&&X instanceof Yr}),!!D&&Wa(I)&&ts(I,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function Wa(I){if(I instanceof _a&&(I.name==="get"&&I.args.length===1||I.name==="feature-state"||I.name==="has"&&I.args.length===1||I.name==="properties"||I.name==="geometry-type"||I.name==="id"||/^filter-/.test(I.name))||I instanceof ps||I instanceof To)return!1;let S=!0;return I.eachChild(D=>{S&&!Wa(D)&&(S=!1)}),S}function Ao(I){if(I instanceof _a&&I.name==="feature-state")return!1;let S=!0;return I.eachChild(D=>{S&&!Ao(D)&&(S=!1)}),S}function ts(I,S){if(I instanceof _a&&S.indexOf(I.name)>=0)return!1;let D=!0;return I.eachChild(X=>{D&&!ts(X,S)&&(D=!1)}),D}function Wo(I){return{result:"success",value:I}}function qa(I){return{result:"error",value:I}}function ln(I){return I["property-type"]==="data-driven"||I["property-type"]==="cross-faded-data-driven"}function Bo(I){return!!I.expression&&I.expression.parameters.indexOf("zoom")>-1}function ko(I){return!!I.expression&&I.expression.interpolated}function oo(I){return I instanceof Number?"number":I instanceof String?"string":I instanceof Boolean?"boolean":Array.isArray(I)?"array":I===null?"null":typeof I}function za(I){return typeof I=="object"&&I!==null&&!Array.isArray(I)}function ea(I){return I}function rs(I,S){let D=S.type==="color",X=I.stops&&typeof I.stops[0][0]=="object",ie=X||!(X||I.property!==void 0),ve=I.type||(ko(S)?"exponential":"interval");if(D||S.type==="padding"){let $t=D?Wt.parse:Or.parse;(I=Te({},I)).stops&&(I.stops=I.stops.map(vr=>[vr[0],$t(vr[1])])),I.default=$t(I.default?I.default:S.default)}if(I.colorSpace&&(we=I.colorSpace)!=="rgb"&&we!=="hcl"&&we!=="lab")throw new Error(`Unknown color space: "${I.colorSpace}"`);var we;let We,ut,Mt;if(ve==="exponential")We=fl;else if(ve==="interval")We=Ds;else if(ve==="categorical"){We=us,ut=Object.create(null);for(let $t of I.stops)ut[$t[0]]=$t[1];Mt=typeof I.stops[0][0]}else{if(ve!=="identity")throw new Error(`Unknown function type "${ve}"`);We=as}if(X){let $t={},vr=[];for(let Jr=0;JrJr[0]),evaluate:({zoom:Jr},ui)=>fl({stops:Sr,base:I.base},S,Jr).evaluate(Jr,ui)}}if(ie){let $t=ve==="exponential"?{name:"exponential",base:I.base!==void 0?I.base:1}:null;return{kind:"camera",interpolationType:$t,interpolationFactor:so.interpolationFactor.bind(void 0,$t),zoomStops:I.stops.map(vr=>vr[0]),evaluate:({zoom:vr})=>We(I,S,vr,ut,Mt)}}return{kind:"source",evaluate($t,vr){let Sr=vr&&vr.properties?vr.properties[I.property]:void 0;return Sr===void 0?$s(I.default,S.default):We(I,S,Sr,ut,Mt)}}}function $s(I,S,D){return I!==void 0?I:S!==void 0?S:D!==void 0?D:void 0}function us(I,S,D,X,ie){return $s(typeof D===ie?X[D]:void 0,I.default,S.default)}function Ds(I,S,D){if(oo(D)!=="number")return $s(I.default,S.default);let X=I.stops.length;if(X===1||D<=I.stops[0][0])return I.stops[0][1];if(D>=I.stops[X-1][0])return I.stops[X-1][1];let ie=ii(I.stops.map(ve=>ve[0]),D);return I.stops[ie][1]}function fl(I,S,D){let X=I.base!==void 0?I.base:1;if(oo(D)!=="number")return $s(I.default,S.default);let ie=I.stops.length;if(ie===1||D<=I.stops[0][0])return I.stops[0][1];if(D>=I.stops[ie-1][0])return I.stops[ie-1][1];let ve=ii(I.stops.map($t=>$t[0]),D),we=function($t,vr,Sr,Dr){let Jr=Dr-Sr,ui=$t-Sr;return Jr===0?0:vr===1?ui/Jr:(Math.pow(vr,ui)-1)/(Math.pow(vr,Jr)-1)}(D,X,I.stops[ve][0],I.stops[ve+1][0]),We=I.stops[ve][1],ut=I.stops[ve+1][1],Mt=ka[S.type]||ea;return typeof We.evaluate=="function"?{evaluate(...$t){let vr=We.evaluate.apply(void 0,$t),Sr=ut.evaluate.apply(void 0,$t);if(vr!==void 0&&Sr!==void 0)return Mt(vr,Sr,we,I.colorSpace)}}:Mt(We,ut,we,I.colorSpace)}function as(I,S,D){switch(S.type){case"color":D=Wt.parse(D);break;case"formatted":D=Nr.fromString(D.toString());break;case"resolvedImage":D=gi.fromString(D.toString());break;case"padding":D=Or.parse(D);break;default:oo(D)===S.type||S.type==="enum"&&S.values[D]||(D=void 0)}return $s(D,I.default,S.default)}_a.register(Dn,{error:[{kind:"error"},[He],(I,[S])=>{throw new oi(S.evaluate(I))}],typeof:[He,[Yt],(I,[S])=>Oe(ti(S.evaluate(I)))],"to-rgba":[xe(Ye,4),[et],(I,[S])=>{let[D,X,ie,ve]=S.evaluate(I).rgb;return[255*D,255*X,255*ie,ve]}],rgb:[et,[Ye,Ye,Ye],Ws],rgba:[et,[Ye,Ye,Ye,Ye],Ws],has:{type:it,overloads:[[[He],(I,[S])=>Ca(S.evaluate(I),I.properties())],[[He,It],(I,[S,D])=>Ca(S.evaluate(I),D.evaluate(I))]]},get:{type:Yt,overloads:[[[He],(I,[S])=>Es(S.evaluate(I),I.properties())],[[He,It],(I,[S,D])=>Es(S.evaluate(I),D.evaluate(I))]]},"feature-state":[Yt,[He],(I,[S])=>Es(S.evaluate(I),I.featureState||{})],properties:[It,[],I=>I.properties()],"geometry-type":[He,[],I=>I.geometryType()],id:[Yt,[],I=>I.id()],zoom:[Ye,[],I=>I.globals.zoom],"heatmap-density":[Ye,[],I=>I.globals.heatmapDensity||0],"line-progress":[Ye,[],I=>I.globals.lineProgress||0],accumulated:[Yt,[],I=>I.globals.accumulated===void 0?null:I.globals.accumulated],"+":[Ye,As(Ye),(I,S)=>{let D=0;for(let X of S)D+=X.evaluate(I);return D}],"*":[Ye,As(Ye),(I,S)=>{let D=1;for(let X of S)D*=X.evaluate(I);return D}],"-":{type:Ye,overloads:[[[Ye,Ye],(I,[S,D])=>S.evaluate(I)-D.evaluate(I)],[[Ye],(I,[S])=>-S.evaluate(I)]]},"/":[Ye,[Ye,Ye],(I,[S,D])=>S.evaluate(I)/D.evaluate(I)],"%":[Ye,[Ye,Ye],(I,[S,D])=>S.evaluate(I)%D.evaluate(I)],ln2:[Ye,[],()=>Math.LN2],pi:[Ye,[],()=>Math.PI],e:[Ye,[],()=>Math.E],"^":[Ye,[Ye,Ye],(I,[S,D])=>Math.pow(S.evaluate(I),D.evaluate(I))],sqrt:[Ye,[Ye],(I,[S])=>Math.sqrt(S.evaluate(I))],log10:[Ye,[Ye],(I,[S])=>Math.log(S.evaluate(I))/Math.LN10],ln:[Ye,[Ye],(I,[S])=>Math.log(S.evaluate(I))],log2:[Ye,[Ye],(I,[S])=>Math.log(S.evaluate(I))/Math.LN2],sin:[Ye,[Ye],(I,[S])=>Math.sin(S.evaluate(I))],cos:[Ye,[Ye],(I,[S])=>Math.cos(S.evaluate(I))],tan:[Ye,[Ye],(I,[S])=>Math.tan(S.evaluate(I))],asin:[Ye,[Ye],(I,[S])=>Math.asin(S.evaluate(I))],acos:[Ye,[Ye],(I,[S])=>Math.acos(S.evaluate(I))],atan:[Ye,[Ye],(I,[S])=>Math.atan(S.evaluate(I))],min:[Ye,As(Ye),(I,S)=>Math.min(...S.map(D=>D.evaluate(I)))],max:[Ye,As(Ye),(I,S)=>Math.max(...S.map(D=>D.evaluate(I)))],abs:[Ye,[Ye],(I,[S])=>Math.abs(S.evaluate(I))],round:[Ye,[Ye],(I,[S])=>{let D=S.evaluate(I);return D<0?-Math.round(-D):Math.round(D)}],floor:[Ye,[Ye],(I,[S])=>Math.floor(S.evaluate(I))],ceil:[Ye,[Ye],(I,[S])=>Math.ceil(S.evaluate(I))],"filter-==":[it,[He,Yt],(I,[S,D])=>I.properties()[S.value]===D.value],"filter-id-==":[it,[Yt],(I,[S])=>I.id()===S.value],"filter-type-==":[it,[He],(I,[S])=>I.geometryType()===S.value],"filter-<":[it,[He,Yt],(I,[S,D])=>{let X=I.properties()[S.value],ie=D.value;return typeof X==typeof ie&&X{let D=I.id(),X=S.value;return typeof D==typeof X&&D":[it,[He,Yt],(I,[S,D])=>{let X=I.properties()[S.value],ie=D.value;return typeof X==typeof ie&&X>ie}],"filter-id->":[it,[Yt],(I,[S])=>{let D=I.id(),X=S.value;return typeof D==typeof X&&D>X}],"filter-<=":[it,[He,Yt],(I,[S,D])=>{let X=I.properties()[S.value],ie=D.value;return typeof X==typeof ie&&X<=ie}],"filter-id-<=":[it,[Yt],(I,[S])=>{let D=I.id(),X=S.value;return typeof D==typeof X&&D<=X}],"filter->=":[it,[He,Yt],(I,[S,D])=>{let X=I.properties()[S.value],ie=D.value;return typeof X==typeof ie&&X>=ie}],"filter-id->=":[it,[Yt],(I,[S])=>{let D=I.id(),X=S.value;return typeof D==typeof X&&D>=X}],"filter-has":[it,[Yt],(I,[S])=>S.value in I.properties()],"filter-has-id":[it,[],I=>I.id()!==null&&I.id()!==void 0],"filter-type-in":[it,[xe(He)],(I,[S])=>S.value.indexOf(I.geometryType())>=0],"filter-id-in":[it,[xe(Yt)],(I,[S])=>S.value.indexOf(I.id())>=0],"filter-in-small":[it,[He,xe(Yt)],(I,[S,D])=>D.value.indexOf(I.properties()[S.value])>=0],"filter-in-large":[it,[He,xe(Yt)],(I,[S,D])=>function(X,ie,ve,we){for(;ve<=we;){let We=ve+we>>1;if(ie[We]===X)return!0;ie[We]>X?we=We-1:ve=We+1}return!1}(I.properties()[S.value],D.value,0,D.value.length-1)],all:{type:it,overloads:[[[it,it],(I,[S,D])=>S.evaluate(I)&&D.evaluate(I)],[As(it),(I,S)=>{for(let D of S)if(!D.evaluate(I))return!1;return!0}]]},any:{type:it,overloads:[[[it,it],(I,[S,D])=>S.evaluate(I)||D.evaluate(I)],[As(it),(I,S)=>{for(let D of S)if(D.evaluate(I))return!0;return!1}]]},"!":[it,[it],(I,[S])=>!S.evaluate(I)],"is-supported-script":[it,[He],(I,[S])=>{let D=I.globals&&I.globals.isSupportedScript;return!D||D(S.evaluate(I))}],upcase:[He,[He],(I,[S])=>S.evaluate(I).toUpperCase()],downcase:[He,[He],(I,[S])=>S.evaluate(I).toLowerCase()],concat:[He,As(Yt),(I,S)=>S.map(D=>tn(D.evaluate(I))).join("")],"resolved-locale":[He,[cr],(I,[S])=>S.evaluate(I).resolvedLocale()]});class Ma{constructor(S,D){var X;this.expression=S,this._warningHistory={},this._evaluator=new xn,this._defaultValue=D?(X=D).type==="color"&&za(X.default)?new Wt(0,0,0,0):X.type==="color"?Wt.parse(X.default)||null:X.type==="padding"?Or.parse(X.default)||null:X.type==="variableAnchorOffsetCollection"?jr.parse(X.default)||null:X.default===void 0?null:X.default:null,this._enumValues=D&&D.type==="enum"?D.values:null}evaluateWithoutErrorHandling(S,D,X,ie,ve,we){return this._evaluator.globals=S,this._evaluator.feature=D,this._evaluator.featureState=X,this._evaluator.canonical=ie,this._evaluator.availableImages=ve||null,this._evaluator.formattedSection=we,this.expression.evaluate(this._evaluator)}evaluate(S,D,X,ie,ve,we){this._evaluator.globals=S,this._evaluator.feature=D||null,this._evaluator.featureState=X||null,this._evaluator.canonical=ie,this._evaluator.availableImages=ve||null,this._evaluator.formattedSection=we||null;try{let We=this.expression.evaluate(this._evaluator);if(We==null||typeof We=="number"&&We!=We)return this._defaultValue;if(this._enumValues&&!(We in this._enumValues))throw new oi(`Expected value to be one of ${Object.keys(this._enumValues).map(ut=>JSON.stringify(ut)).join(", ")}, but found ${JSON.stringify(We)} instead.`);return We}catch(We){return this._warningHistory[We.message]||(this._warningHistory[We.message]=!0,typeof console!="undefined"&&console.warn(We.message)),this._defaultValue}}}function Qs(I){return Array.isArray(I)&&I.length>0&&typeof I[0]=="string"&&I[0]in Dn}function ho(I,S){let D=new bi(Dn,Ho,[],S?function(ie){let ve={color:et,string:He,number:Ye,enum:He,boolean:it,formatted:_r,padding:yr,resolvedImage:Ut,variableAnchorOffsetCollection:Re};return ie.type==="array"?xe(ve[ie.value]||Yt,ie.length):ve[ie.type]}(S):void 0),X=D.parse(I,void 0,void 0,void 0,S&&S.type==="string"?{typeAnnotation:"coerce"}:void 0);return X?Wo(new Ma(X,S)):qa(D.errors)}class gs{constructor(S,D){this.kind=S,this._styleExpression=D,this.isStateDependent=S!=="constant"&&!Ao(D.expression)}evaluateWithoutErrorHandling(S,D,X,ie,ve,we){return this._styleExpression.evaluateWithoutErrorHandling(S,D,X,ie,ve,we)}evaluate(S,D,X,ie,ve,we){return this._styleExpression.evaluate(S,D,X,ie,ve,we)}}class Vo{constructor(S,D,X,ie){this.kind=S,this.zoomStops=X,this._styleExpression=D,this.isStateDependent=S!=="camera"&&!Ao(D.expression),this.interpolationType=ie}evaluateWithoutErrorHandling(S,D,X,ie,ve,we){return this._styleExpression.evaluateWithoutErrorHandling(S,D,X,ie,ve,we)}evaluate(S,D,X,ie,ve,we){return this._styleExpression.evaluate(S,D,X,ie,ve,we)}interpolationFactor(S,D,X){return this.interpolationType?so.interpolationFactor(this.interpolationType,S,D,X):0}}function Do(I,S){let D=ho(I,S);if(D.result==="error")return D;let X=D.value.expression,ie=Wa(X);if(!ie&&!ln(S))return qa([new ot("","data expressions not supported")]);let ve=ts(X,["zoom"]);if(!ve&&!Bo(S))return qa([new ot("","zoom expressions not supported")]);let we=xs(X);return we||ve?we instanceof ot?qa([we]):we instanceof so&&!ko(S)?qa([new ot("",'"interpolate" expressions cannot be used with this property')]):Wo(we?new Vo(ie?"camera":"composite",D.value,we.labels,we instanceof so?we.interpolation:void 0):new gs(ie?"constant":"source",D.value)):qa([new ot("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class Lo{constructor(S,D){this._parameters=S,this._specification=D,Te(this,rs(this._parameters,this._specification))}static deserialize(S){return new Lo(S._parameters,S._specification)}static serialize(S){return{_parameters:S._parameters,_specification:S._specification}}}function xs(I){let S=null;if(I instanceof Xr)S=xs(I.result);else if(I instanceof Ia){for(let D of I.args)if(S=xs(D),S)break}else(I instanceof Xi||I instanceof so)&&I.input instanceof _a&&I.input.name==="zoom"&&(S=I);return S instanceof ot||I.eachChild(D=>{let X=xs(D);X instanceof ot?S=X:!S&&X?S=new ot("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):S&&X&&S!==X&&(S=new ot("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),S}function ks(I){if(I===!0||I===!1)return!0;if(!Array.isArray(I)||I.length===0)return!1;switch(I[0]){case"has":return I.length>=2&&I[1]!=="$id"&&I[1]!=="$type";case"in":return I.length>=3&&(typeof I[1]!="string"||Array.isArray(I[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return I.length!==3||Array.isArray(I[1])||Array.isArray(I[2]);case"any":case"all":for(let S of I.slice(1))if(!ks(S)&&typeof S!="boolean")return!1;return!0;default:return!0}}let Ea={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function Jn(I){if(I==null)return{filter:()=>!0,needGeometry:!1};ks(I)||(I=Gs(I));let S=ho(I,Ea);if(S.result==="error")throw new Error(S.value.map(D=>`${D.key}: ${D.message}`).join(", "));return{filter:(D,X,ie)=>S.value.evaluate(D,X,{},ie),needGeometry:rl(I)}}function Oo(I,S){return IS?1:0}function rl(I){if(!Array.isArray(I))return!1;if(I[0]==="within"||I[0]==="distance")return!0;for(let S=1;S"||S==="<="||S===">="?bs(I[1],I[2],S):S==="any"?(D=I.slice(1),["any"].concat(D.map(Gs))):S==="all"?["all"].concat(I.slice(1).map(Gs)):S==="none"?["all"].concat(I.slice(1).map(Gs).map(Ta)):S==="in"?zs(I[1],I.slice(2)):S==="!in"?Ta(zs(I[1],I.slice(2))):S==="has"?$o(I[1]):S!=="!has"||Ta($o(I[1]));var D}function bs(I,S,D){switch(I){case"$type":return[`filter-type-${D}`,S];case"$id":return[`filter-id-${D}`,S];default:return[`filter-${D}`,I,S]}}function zs(I,S){if(S.length===0)return!1;switch(I){case"$type":return["filter-type-in",["literal",S]];case"$id":return["filter-id-in",["literal",S]];default:return S.length>200&&!S.some(D=>typeof D!=typeof S[0])?["filter-in-large",I,["literal",S.sort(Oo)]]:["filter-in-small",I,["literal",S]]}}function $o(I){switch(I){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",I]}}function Ta(I){return["!",I]}function os(I){let S=typeof I;if(S==="number"||S==="boolean"||S==="string"||I==null)return JSON.stringify(I);if(Array.isArray(I)){let ie="[";for(let ve of I)ie+=`${os(ve)},`;return`${ie}]`}let D=Object.keys(I).sort(),X="{";for(let ie=0;ieX.maximum?[new Et(S,D,`${D} is greater than the maximum value ${X.maximum}`)]:[]}function io(I){let S=I.valueSpec,D=po(I.value.type),X,ie,ve,we={},We=D!=="categorical"&&I.value.property===void 0,ut=!We,Mt=oo(I.value.stops)==="array"&&oo(I.value.stops[0])==="array"&&oo(I.value.stops[0][0])==="object",$t=ss({key:I.key,value:I.value,valueSpec:I.styleSpec.function,validateSpec:I.validateSpec,style:I.style,styleSpec:I.styleSpec,objectElementValidators:{stops:function(Dr){if(D==="identity")return[new Et(Dr.key,Dr.value,'identity function may not have a "stops" property')];let Jr=[],ui=Dr.value;return Jr=Jr.concat(qo({key:Dr.key,value:ui,valueSpec:Dr.valueSpec,validateSpec:Dr.validateSpec,style:Dr.style,styleSpec:Dr.styleSpec,arrayElementValidator:vr})),oo(ui)==="array"&&ui.length===0&&Jr.push(new Et(Dr.key,ui,"array must have at least one stop")),Jr},default:function(Dr){return Dr.validateSpec({key:Dr.key,value:Dr.value,valueSpec:S,validateSpec:Dr.validateSpec,style:Dr.style,styleSpec:Dr.styleSpec})}}});return D==="identity"&&We&&$t.push(new Et(I.key,I.value,'missing required property "property"')),D==="identity"||I.value.stops||$t.push(new Et(I.key,I.value,'missing required property "stops"')),D==="exponential"&&I.valueSpec.expression&&!ko(I.valueSpec)&&$t.push(new Et(I.key,I.value,"exponential functions not supported")),I.styleSpec.$version>=8&&(ut&&!ln(I.valueSpec)?$t.push(new Et(I.key,I.value,"property functions not supported")):We&&!Bo(I.valueSpec)&&$t.push(new Et(I.key,I.value,"zoom functions not supported"))),D!=="categorical"&&!Mt||I.value.property!==void 0||$t.push(new Et(I.key,I.value,'"property" property is required')),$t;function vr(Dr){let Jr=[],ui=Dr.value,Gi=Dr.key;if(oo(ui)!=="array")return[new Et(Gi,ui,`array expected, ${oo(ui)} found`)];if(ui.length!==2)return[new Et(Gi,ui,`array length 2 expected, length ${ui.length} found`)];if(Mt){if(oo(ui[0])!=="object")return[new Et(Gi,ui,`object expected, ${oo(ui[0])} found`)];if(ui[0].zoom===void 0)return[new Et(Gi,ui,"object stop key must have zoom")];if(ui[0].value===void 0)return[new Et(Gi,ui,"object stop key must have value")];if(ve&&ve>po(ui[0].zoom))return[new Et(Gi,ui[0].zoom,"stop zoom values must appear in ascending order")];po(ui[0].zoom)!==ve&&(ve=po(ui[0].zoom),ie=void 0,we={}),Jr=Jr.concat(ss({key:`${Gi}[0]`,value:ui[0],valueSpec:{zoom:{}},validateSpec:Dr.validateSpec,style:Dr.style,styleSpec:Dr.styleSpec,objectElementValidators:{zoom:zo,value:Sr}}))}else Jr=Jr.concat(Sr({key:`${Gi}[0]`,value:ui[0],valueSpec:{},validateSpec:Dr.validateSpec,style:Dr.style,styleSpec:Dr.styleSpec},ui));return Qs(go(ui[1]))?Jr.concat([new Et(`${Gi}[1]`,ui[1],"expressions are not allowed in function stops.")]):Jr.concat(Dr.validateSpec({key:`${Gi}[1]`,value:ui[1],valueSpec:S,validateSpec:Dr.validateSpec,style:Dr.style,styleSpec:Dr.styleSpec}))}function Sr(Dr,Jr){let ui=oo(Dr.value),Gi=po(Dr.value),cn=Dr.value!==null?Dr.value:Jr;if(X){if(ui!==X)return[new Et(Dr.key,cn,`${ui} stop domain type must match previous stop domain type ${X}`)]}else X=ui;if(ui!=="number"&&ui!=="string"&&ui!=="boolean")return[new Et(Dr.key,cn,"stop domain value must be a number, string, or boolean")];if(ui!=="number"&&D!=="categorical"){let Za=`number expected, ${ui} found`;return ln(S)&&D===void 0&&(Za+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new Et(Dr.key,cn,Za)]}return D!=="categorical"||ui!=="number"||isFinite(Gi)&&Math.floor(Gi)===Gi?D!=="categorical"&&ui==="number"&&ie!==void 0&&Ginew Et(`${I.key}${X.key}`,I.value,X.message));let D=S.value.expression||S.value._styleExpression.expression;if(I.expressionContext==="property"&&I.propertyKey==="text-font"&&!D.outputDefined())return[new Et(I.key,I.value,`Invalid data expression for "${I.propertyKey}". Output values must be contained as literals within the expression.`)];if(I.expressionContext==="property"&&I.propertyType==="layout"&&!Ao(D))return[new Et(I.key,I.value,'"feature-state" data expressions are not supported with layout properties.')];if(I.expressionContext==="filter"&&!Ao(D))return[new Et(I.key,I.value,'"feature-state" data expressions are not supported with filters.')];if(I.expressionContext&&I.expressionContext.indexOf("cluster")===0){if(!ts(D,["zoom","feature-state"]))return[new Et(I.key,I.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(I.expressionContext==="cluster-initial"&&!Wa(D))return[new Et(I.key,I.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function Da(I){let S=I.key,D=I.value,X=I.valueSpec,ie=[];return Array.isArray(X.values)?X.values.indexOf(po(D))===-1&&ie.push(new Et(S,D,`expected one of [${X.values.join(", ")}], ${JSON.stringify(D)} found`)):Object.keys(X.values).indexOf(po(D))===-1&&ie.push(new Et(S,D,`expected one of [${Object.keys(X.values).join(", ")}], ${JSON.stringify(D)} found`)),ie}function vs(I){return ks(go(I.value))?Io(Te({},I,{expressionContext:"filter",valueSpec:{value:"boolean"}})):fs(I)}function fs(I){let S=I.value,D=I.key;if(oo(S)!=="array")return[new Et(D,S,`array expected, ${oo(S)} found`)];let X=I.styleSpec,ie,ve=[];if(S.length<1)return[new Et(D,S,"filter array must have at least 1 element")];switch(ve=ve.concat(Da({key:`${D}[0]`,value:S[0],valueSpec:X.filter_operator,style:I.style,styleSpec:I.styleSpec})),po(S[0])){case"<":case"<=":case">":case">=":S.length>=2&&po(S[1])==="$type"&&ve.push(new Et(D,S,`"$type" cannot be use with operator "${S[0]}"`));case"==":case"!=":S.length!==3&&ve.push(new Et(D,S,`filter array for operator "${S[0]}" must have 3 elements`));case"in":case"!in":S.length>=2&&(ie=oo(S[1]),ie!=="string"&&ve.push(new Et(`${D}[1]`,S[1],`string expected, ${ie} found`)));for(let we=2;we{Mt in D&&S.push(new Et(X,D[Mt],`"${Mt}" is prohibited for ref layers`))}),ie.layers.forEach(Mt=>{po(Mt.id)===We&&(ut=Mt)}),ut?ut.ref?S.push(new Et(X,D.ref,"ref cannot reference another ref layer")):we=po(ut.type):S.push(new Et(X,D.ref,`ref layer "${We}" not found`))}else if(we!=="background")if(D.source){let ut=ie.sources&&ie.sources[D.source],Mt=ut&&po(ut.type);ut?Mt==="vector"&&we==="raster"?S.push(new Et(X,D.source,`layer "${D.id}" requires a raster source`)):Mt!=="raster-dem"&&we==="hillshade"?S.push(new Et(X,D.source,`layer "${D.id}" requires a raster-dem source`)):Mt==="raster"&&we!=="raster"?S.push(new Et(X,D.source,`layer "${D.id}" requires a vector source`)):Mt!=="vector"||D["source-layer"]?Mt==="raster-dem"&&we!=="hillshade"?S.push(new Et(X,D.source,"raster-dem source can only be used with layer type 'hillshade'.")):we!=="line"||!D.paint||!D.paint["line-gradient"]||Mt==="geojson"&&ut.lineMetrics||S.push(new Et(X,D,`layer "${D.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):S.push(new Et(X,D,`layer "${D.id}" must specify a "source-layer"`)):S.push(new Et(X,D.source,`source "${D.source}" not found`))}else S.push(new Et(X,D,'missing required property "source"'));return S=S.concat(ss({key:X,value:D,valueSpec:ve.layer,style:I.style,styleSpec:I.styleSpec,validateSpec:I.validateSpec,objectElementValidators:{"*":()=>[],type:()=>I.validateSpec({key:`${X}.type`,value:D.type,valueSpec:ve.layer.type,style:I.style,styleSpec:I.styleSpec,validateSpec:I.validateSpec,object:D,objectKey:"type"}),filter:vs,layout:ut=>ss({layer:D,key:ut.key,value:ut.value,style:ut.style,styleSpec:ut.styleSpec,validateSpec:ut.validateSpec,objectElementValidators:{"*":Mt=>Hs(Te({layerType:we},Mt))}}),paint:ut=>ss({layer:D,key:ut.key,value:ut.value,style:ut.style,styleSpec:ut.styleSpec,validateSpec:ut.validateSpec,objectElementValidators:{"*":Mt=>el(Te({layerType:we},Mt))}})}})),S}function tl(I){let S=I.value,D=I.key,X=oo(S);return X!=="string"?[new Et(D,S,`string expected, ${X} found`)]:[]}let Fs={promoteId:function({key:I,value:S}){if(oo(S)==="string")return tl({key:I,value:S});{let D=[];for(let X in S)D.push(...tl({key:`${I}.${X}`,value:S[X]}));return D}}};function hl(I){let S=I.value,D=I.key,X=I.styleSpec,ie=I.style,ve=I.validateSpec;if(!S.type)return[new Et(D,S,'"type" is required')];let we=po(S.type),We;switch(we){case"vector":case"raster":return We=ss({key:D,value:S,valueSpec:X[`source_${we.replace("-","_")}`],style:I.style,styleSpec:X,objectElementValidators:Fs,validateSpec:ve}),We;case"raster-dem":return We=function(ut){var Mt;let $t=(Mt=ut.sourceName)!==null&&Mt!==void 0?Mt:"",vr=ut.value,Sr=ut.styleSpec,Dr=Sr.source_raster_dem,Jr=ut.style,ui=[],Gi=oo(vr);if(vr===void 0)return ui;if(Gi!=="object")return ui.push(new Et("source_raster_dem",vr,`object expected, ${Gi} found`)),ui;let cn=po(vr.encoding)==="custom",Za=["redFactor","greenFactor","blueFactor","baseShift"],Rn=ut.value.encoding?`"${ut.value.encoding}"`:"Default";for(let La in vr)!cn&&Za.includes(La)?ui.push(new Et(La,vr[La],`In "${$t}": "${La}" is only valid when "encoding" is set to "custom". ${Rn} encoding found`)):Dr[La]?ui=ui.concat(ut.validateSpec({key:La,value:vr[La],valueSpec:Dr[La],validateSpec:ut.validateSpec,style:Jr,styleSpec:Sr})):ui.push(new Et(La,vr[La],`unknown property "${La}"`));return ui}({sourceName:D,value:S,style:I.style,styleSpec:X,validateSpec:ve}),We;case"geojson":if(We=ss({key:D,value:S,valueSpec:X.source_geojson,style:ie,styleSpec:X,validateSpec:ve,objectElementValidators:Fs}),S.cluster)for(let ut in S.clusterProperties){let[Mt,$t]=S.clusterProperties[ut],vr=typeof Mt=="string"?[Mt,["accumulated"],["get",ut]]:Mt;We.push(...Io({key:`${D}.${ut}.map`,value:$t,validateSpec:ve,expressionContext:"cluster-map"})),We.push(...Io({key:`${D}.${ut}.reduce`,value:vr,validateSpec:ve,expressionContext:"cluster-reduce"}))}return We;case"video":return ss({key:D,value:S,valueSpec:X.source_video,style:ie,validateSpec:ve,styleSpec:X});case"image":return ss({key:D,value:S,valueSpec:X.source_image,style:ie,validateSpec:ve,styleSpec:X});case"canvas":return[new Et(D,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return Da({key:`${D}.type`,value:S.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:ie,validateSpec:ve,styleSpec:X})}}function Fa(I){let S=I.value,D=I.styleSpec,X=D.light,ie=I.style,ve=[],we=oo(S);if(S===void 0)return ve;if(we!=="object")return ve=ve.concat([new Et("light",S,`object expected, ${we} found`)]),ve;for(let We in S){let ut=We.match(/^(.*)-transition$/);ve=ve.concat(ut&&X[ut[1]]&&X[ut[1]].transition?I.validateSpec({key:We,value:S[We],valueSpec:D.transition,validateSpec:I.validateSpec,style:ie,styleSpec:D}):X[We]?I.validateSpec({key:We,value:S[We],valueSpec:X[We],validateSpec:I.validateSpec,style:ie,styleSpec:D}):[new Et(We,S[We],`unknown property "${We}"`)])}return ve}function Ms(I){let S=I.value,D=I.styleSpec,X=D.sky,ie=I.style,ve=oo(S);if(S===void 0)return[];if(ve!=="object")return[new Et("sky",S,`object expected, ${ve} found`)];let we=[];for(let We in S)we=we.concat(X[We]?I.validateSpec({key:We,value:S[We],valueSpec:X[We],style:ie,styleSpec:D}):[new Et(We,S[We],`unknown property "${We}"`)]);return we}function jo(I){let S=I.value,D=I.styleSpec,X=D.terrain,ie=I.style,ve=[],we=oo(S);if(S===void 0)return ve;if(we!=="object")return ve=ve.concat([new Et("terrain",S,`object expected, ${we} found`)]),ve;for(let We in S)ve=ve.concat(X[We]?I.validateSpec({key:We,value:S[We],valueSpec:X[We],validateSpec:I.validateSpec,style:ie,styleSpec:D}):[new Et(We,S[We],`unknown property "${We}"`)]);return ve}function Rs(I){let S=[],D=I.value,X=I.key;if(Array.isArray(D)){let ie=[],ve=[];for(let we in D)D[we].id&&ie.includes(D[we].id)&&S.push(new Et(X,D,`all the sprites' ids must be unique, but ${D[we].id} is duplicated`)),ie.push(D[we].id),D[we].url&&ve.includes(D[we].url)&&S.push(new Et(X,D,`all the sprites' URLs must be unique, but ${D[we].url} is duplicated`)),ve.push(D[we].url),S=S.concat(ss({key:`${X}[${we}]`,value:D[we],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:I.validateSpec}));return S}return tl({key:X,value:D})}let Is={"*":()=>[],array:qo,boolean:function(I){let S=I.value,D=I.key,X=oo(S);return X!=="boolean"?[new Et(D,S,`boolean expected, ${X} found`)]:[]},number:zo,color:function(I){let S=I.key,D=I.value,X=oo(D);return X!=="string"?[new Et(S,D,`color expected, ${X} found`)]:Wt.parse(String(D))?[]:[new Et(S,D,`color expected, "${D}" found`)]},constants:Ss,enum:Da,filter:vs,function:io,layer:Ro,object:ss,source:hl,light:Fa,sky:Ms,terrain:jo,projection:function(I){let S=I.value,D=I.styleSpec,X=D.projection,ie=I.style,ve=oo(S);if(S===void 0)return[];if(ve!=="object")return[new Et("projection",S,`object expected, ${ve} found`)];let we=[];for(let We in S)we=we.concat(X[We]?I.validateSpec({key:We,value:S[We],valueSpec:X[We],style:ie,styleSpec:D}):[new Et(We,S[We],`unknown property "${We}"`)]);return we},string:tl,formatted:function(I){return tl(I).length===0?[]:Io(I)},resolvedImage:function(I){return tl(I).length===0?[]:Io(I)},padding:function(I){let S=I.key,D=I.value;if(oo(D)==="array"){if(D.length<1||D.length>4)return[new Et(S,D,`padding requires 1 to 4 values; ${D.length} values found`)];let X={type:"number"},ie=[];for(let ve=0;ve[]}})),I.constants&&(D=D.concat(Ss({key:"constants",value:I.constants,style:I,styleSpec:S,validateSpec:Bs}))),mr(D)}function wr(I){return function(S){return I(O1(ym({},S),{validateSpec:Bs}))}}function mr(I){return[].concat(I).sort((S,D)=>S.line-D.line)}function Fr(I){return function(...S){return mr(I.apply(this,S))}}Vt.source=Fr(wr(hl)),Vt.sprite=Fr(wr(Rs)),Vt.glyphs=Fr(wr(At)),Vt.light=Fr(wr(Fa)),Vt.sky=Fr(wr(Ms)),Vt.terrain=Fr(wr(jo)),Vt.layer=Fr(wr(Ro)),Vt.filter=Fr(wr(vs)),Vt.paintProperty=Fr(wr(el)),Vt.layoutProperty=Fr(wr(Hs));let _i=Vt,Si=_i.light,Ci=_i.sky,Ki=_i.paintProperty,Fn=_i.layoutProperty;function Pi(I,S){let D=!1;if(S&&S.length)for(let X of S)I.fire(new ye(new Error(X.message))),D=!0;return D}class di{constructor(S,D,X){let ie=this.cells=[];if(S instanceof ArrayBuffer){this.arrayBuffer=S;let we=new Int32Array(this.arrayBuffer);S=we[0],this.d=(D=we[1])+2*(X=we[2]);for(let ut=0;ut=vr[Jr+0]&&ie>=vr[Jr+1])?(We[Dr]=!0,we.push($t[Dr])):We[Dr]=!1}}}}_forEachCell(S,D,X,ie,ve,we,We,ut){let Mt=this._convertToCellCoord(S),$t=this._convertToCellCoord(D),vr=this._convertToCellCoord(X),Sr=this._convertToCellCoord(ie);for(let Dr=Mt;Dr<=vr;Dr++)for(let Jr=$t;Jr<=Sr;Jr++){let ui=this.d*Jr+Dr;if((!ut||ut(this._convertFromCellCoord(Dr),this._convertFromCellCoord(Jr),this._convertFromCellCoord(Dr+1),this._convertFromCellCoord(Jr+1)))&&ve.call(this,S,D,X,ie,ui,we,We,ut))return}}_convertFromCellCoord(S){return(S-this.padding)/this.scale}_convertToCellCoord(S){return Math.max(0,Math.min(this.d-1,Math.floor(S*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;let S=this.cells,D=3+this.cells.length+1+1,X=0;for(let we=0;we=0)continue;let we=I[ve];ie[ve]=Li[D].shallow.indexOf(ve)>=0?we:ia(we,S)}I instanceof Error&&(ie.message=I.message)}if(ie.$name)throw new Error("$name property is reserved for worker serialization logic.");return D!=="Object"&&(ie.$name=D),ie}function pa(I){if(ya(I))return I;if(Array.isArray(I))return I.map(pa);if(typeof I!="object")throw new Error("can't deserialize object of type "+typeof I);let S=ta(I)||"Object";if(!Li[S])throw new Error(`can't deserialize unregistered class ${S}`);let{klass:D}=Li[S];if(!D)throw new Error(`can't deserialize unregistered class ${S}`);if(D.deserialize)return D.deserialize(I);let X=Object.create(D.prototype);for(let ie of Object.keys(I)){if(ie==="$name")continue;let ve=I[ie];X[ie]=Li[S].shallow.indexOf(ie)>=0?ve:pa(ve)}return X}class va{constructor(){this.first=!0}update(S,D){let X=Math.floor(S);return this.first?(this.first=!1,this.lastIntegerZoom=X,this.lastIntegerZoomTime=0,this.lastZoom=S,this.lastFloorZoom=X,!0):(this.lastFloorZoom>X?(this.lastIntegerZoom=X+1,this.lastIntegerZoomTime=D):this.lastFloorZoomI>=128&&I<=255,"Hangul Jamo":I=>I>=4352&&I<=4607,Khmer:I=>I>=6016&&I<=6143,"General Punctuation":I=>I>=8192&&I<=8303,"Letterlike Symbols":I=>I>=8448&&I<=8527,"Number Forms":I=>I>=8528&&I<=8591,"Miscellaneous Technical":I=>I>=8960&&I<=9215,"Control Pictures":I=>I>=9216&&I<=9279,"Optical Character Recognition":I=>I>=9280&&I<=9311,"Enclosed Alphanumerics":I=>I>=9312&&I<=9471,"Geometric Shapes":I=>I>=9632&&I<=9727,"Miscellaneous Symbols":I=>I>=9728&&I<=9983,"Miscellaneous Symbols and Arrows":I=>I>=11008&&I<=11263,"Ideographic Description Characters":I=>I>=12272&&I<=12287,"CJK Symbols and Punctuation":I=>I>=12288&&I<=12351,Katakana:I=>I>=12448&&I<=12543,Kanbun:I=>I>=12688&&I<=12703,"CJK Strokes":I=>I>=12736&&I<=12783,"Enclosed CJK Letters and Months":I=>I>=12800&&I<=13055,"CJK Compatibility":I=>I>=13056&&I<=13311,"Yijing Hexagram Symbols":I=>I>=19904&&I<=19967,"Private Use Area":I=>I>=57344&&I<=63743,"Vertical Forms":I=>I>=65040&&I<=65055,"CJK Compatibility Forms":I=>I>=65072&&I<=65103,"Small Form Variants":I=>I>=65104&&I<=65135,"Halfwidth and Fullwidth Forms":I=>I>=65280&&I<=65519};function is(I){for(let S of I)if(bl(S.charCodeAt(0)))return!0;return!1}function Cs(I){for(let S of I)if(!xl(S.charCodeAt(0)))return!1;return!0}function Ks(I){let S=I.map(D=>{try{return new RegExp(`\\p{sc=${D}}`,"u").source}catch(X){return null}}).filter(D=>D);return new RegExp(S.join("|"),"u")}let dl=Ks(["Arab","Dupl","Mong","Ougr","Syrc"]);function xl(I){return!dl.test(String.fromCodePoint(I))}let Bl=Ks(["Bopo","Hani","Hira","Kana","Kits","Nshu","Tang","Yiii"]);function bl(I){return!(I!==746&&I!==747&&(I<4352||!(zn["CJK Compatibility Forms"](I)&&!(I>=65097&&I<=65103)||zn["CJK Compatibility"](I)||zn["CJK Strokes"](I)||!(!zn["CJK Symbols and Punctuation"](I)||I>=12296&&I<=12305||I>=12308&&I<=12319||I===12336)||zn["Enclosed CJK Letters and Months"](I)||zn["Ideographic Description Characters"](I)||zn.Kanbun(I)||zn.Katakana(I)&&I!==12540||!(!zn["Halfwidth and Fullwidth Forms"](I)||I===65288||I===65289||I===65293||I>=65306&&I<=65310||I===65339||I===65341||I===65343||I>=65371&&I<=65503||I===65507||I>=65512&&I<=65519)||!(!zn["Small Form Variants"](I)||I>=65112&&I<=65118||I>=65123&&I<=65126)||zn["Vertical Forms"](I)||zn["Yijing Hexagram Symbols"](I)||new RegExp("\\p{sc=Cans}","u").test(String.fromCodePoint(I))||new RegExp("\\p{sc=Hang}","u").test(String.fromCodePoint(I))||Bl.test(String.fromCodePoint(I)))))}function eu(I){return!(bl(I)||function(S){return!!(zn["Latin-1 Supplement"](S)&&(S===167||S===169||S===174||S===177||S===188||S===189||S===190||S===215||S===247)||zn["General Punctuation"](S)&&(S===8214||S===8224||S===8225||S===8240||S===8241||S===8251||S===8252||S===8258||S===8263||S===8264||S===8265||S===8273)||zn["Letterlike Symbols"](S)||zn["Number Forms"](S)||zn["Miscellaneous Technical"](S)&&(S>=8960&&S<=8967||S>=8972&&S<=8991||S>=8996&&S<=9e3||S===9003||S>=9085&&S<=9114||S>=9150&&S<=9165||S===9167||S>=9169&&S<=9179||S>=9186&&S<=9215)||zn["Control Pictures"](S)&&S!==9251||zn["Optical Character Recognition"](S)||zn["Enclosed Alphanumerics"](S)||zn["Geometric Shapes"](S)||zn["Miscellaneous Symbols"](S)&&!(S>=9754&&S<=9759)||zn["Miscellaneous Symbols and Arrows"](S)&&(S>=11026&&S<=11055||S>=11088&&S<=11097||S>=11192&&S<=11243)||zn["CJK Symbols and Punctuation"](S)||zn.Katakana(S)||zn["Private Use Area"](S)||zn["CJK Compatibility Forms"](S)||zn["Small Form Variants"](S)||zn["Halfwidth and Fullwidth Forms"](S)||S===8734||S===8756||S===8757||S>=9984&&S<=10087||S>=10102&&S<=10131||S===65532||S===65533)}(I))}let Zl=Ks(["Adlm","Arab","Armi","Avst","Chrs","Cprt","Egyp","Elym","Gara","Hatr","Hebr","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogo","Syrc","Thaa","Todr","Yezi"]);function Ul(I){return Zl.test(String.fromCodePoint(I))}function ja(I,S){return!(!S&&Ul(I)||I>=2304&&I<=3583||I>=3840&&I<=4255||zn.Khmer(I))}function ns(I){for(let S of I)if(Ul(S.charCodeAt(0)))return!0;return!1}let Js=new class{constructor(){this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus="unavailable",this.pluginURL=null}setState(I){this.pluginStatus=I.pluginStatus,this.pluginURL=I.pluginURL}getState(){return{pluginStatus:this.pluginStatus,pluginURL:this.pluginURL}}setMethods(I){this.applyArabicShaping=I.applyArabicShaping,this.processBidirectionalText=I.processBidirectionalText,this.processStyledBidirectionalText=I.processStyledBidirectionalText}isParsed(){return this.applyArabicShaping!=null&&this.processBidirectionalText!=null&&this.processStyledBidirectionalText!=null}getPluginURL(){return this.pluginURL}getRTLTextPluginStatus(){return this.pluginStatus}};class cs{constructor(S,D){this.zoom=S,D?(this.now=D.now,this.fadeDuration=D.fadeDuration,this.zoomHistory=D.zoomHistory,this.transition=D.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new va,this.transition={})}isSupportedScript(S){return function(D,X){for(let ie of D)if(!ja(ie.charCodeAt(0),X))return!1;return!0}(S,Js.getRTLTextPluginStatus()==="loaded")}crossFadingFactor(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){let S=this.zoom,D=S-Math.floor(S),X=this.crossFadingFactor();return S>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:D+(1-D)*X}:{fromScale:.5,toScale:1,t:1-(1-X)*D}}}class sl{constructor(S,D){this.property=S,this.value=D,this.expression=function(X,ie){if(za(X))return new Lo(X,ie);if(Qs(X)){let ve=Do(X,ie);if(ve.result==="error")throw new Error(ve.value.map(we=>`${we.key}: ${we.message}`).join(", "));return ve.value}{let ve=X;return ie.type==="color"&&typeof X=="string"?ve=Wt.parse(X):ie.type!=="padding"||typeof X!="number"&&!Array.isArray(X)?ie.type==="variableAnchorOffsetCollection"&&Array.isArray(X)&&(ve=jr.parse(X)):ve=Or.parse(X),{kind:"constant",evaluate:()=>ve}}}(D===void 0?S.specification.default:D,S.specification)}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite"}possiblyEvaluate(S,D,X){return this.property.possiblyEvaluate(this,S,D,X)}}class ll{constructor(S){this.property=S,this.value=new sl(S,void 0)}transitioned(S,D){return new zl(this.property,this.value,D,L({},S.transition,this.transition),S.now)}untransitioned(){return new zl(this.property,this.value,null,{},0)}}class il{constructor(S){this._properties=S,this._values=Object.create(S.defaultTransitionablePropertyValues)}getValue(S){return m(this._values[S].value.value)}setValue(S,D){Object.prototype.hasOwnProperty.call(this._values,S)||(this._values[S]=new ll(this._values[S].property)),this._values[S].value=new sl(this._values[S].property,D===null?void 0:m(D))}getTransition(S){return m(this._values[S].transition)}setTransition(S,D){Object.prototype.hasOwnProperty.call(this._values,S)||(this._values[S]=new ll(this._values[S].property)),this._values[S].transition=m(D)||void 0}serialize(){let S={};for(let D of Object.keys(this._values)){let X=this.getValue(D);X!==void 0&&(S[D]=X);let ie=this.getTransition(D);ie!==void 0&&(S[`${D}-transition`]=ie)}return S}transitioned(S,D){let X=new Ml(this._properties);for(let ie of Object.keys(this._values))X._values[ie]=this._values[ie].transitioned(S,D._values[ie]);return X}untransitioned(){let S=new Ml(this._properties);for(let D of Object.keys(this._values))S._values[D]=this._values[D].untransitioned();return S}}class zl{constructor(S,D,X,ie,ve){this.property=S,this.value=D,this.begin=ve+ie.delay||0,this.end=this.begin+ie.duration||0,S.specification.transition&&(ie.delay||ie.duration)&&(this.prior=X)}possiblyEvaluate(S,D,X){let ie=S.now||0,ve=this.value.possiblyEvaluate(S,D,X),we=this.prior;if(we){if(ie>this.end)return this.prior=null,ve;if(this.value.isDataDriven())return this.prior=null,ve;if(ie=1)return 1;let Mt=ut*ut,$t=Mt*ut;return 4*(ut<.5?$t:3*(ut-Mt)+$t-.75)}(We))}}return ve}}class Ml{constructor(S){this._properties=S,this._values=Object.create(S.defaultTransitioningPropertyValues)}possiblyEvaluate(S,D,X){let ie=new Ll(this._properties);for(let ve of Object.keys(this._values))ie._values[ve]=this._values[ve].possiblyEvaluate(S,D,X);return ie}hasTransition(){for(let S of Object.keys(this._values))if(this._values[S].prior)return!0;return!1}}class Rl{constructor(S){this._properties=S,this._values=Object.create(S.defaultPropertyValues)}hasValue(S){return this._values[S].value!==void 0}getValue(S){return m(this._values[S].value)}setValue(S,D){this._values[S]=new sl(this._values[S].property,D===null?void 0:m(D))}serialize(){let S={};for(let D of Object.keys(this._values)){let X=this.getValue(D);X!==void 0&&(S[D]=X)}return S}possiblyEvaluate(S,D,X){let ie=new Ll(this._properties);for(let ve of Object.keys(this._values))ie._values[ve]=this._values[ve].possiblyEvaluate(S,D,X);return ie}}class Tl{constructor(S,D,X){this.property=S,this.value=D,this.parameters=X}isConstant(){return this.value.kind==="constant"}constantOr(S){return this.value.kind==="constant"?this.value.value:S}evaluate(S,D,X,ie){return this.property.evaluate(this.value,this.parameters,S,D,X,ie)}}class Ll{constructor(S){this._properties=S,this._values=Object.create(S.defaultPossiblyEvaluatedValues)}get(S){return this._values[S]}}class ms{constructor(S){this.specification=S}possiblyEvaluate(S,D){if(S.isDataDriven())throw new Error("Value should not be data driven");return S.expression.evaluate(D)}interpolate(S,D,X){let ie=ka[this.specification.type];return ie?ie(S,D,X):S}}class Os{constructor(S,D){this.specification=S,this.overrides=D}possiblyEvaluate(S,D,X,ie){return new Tl(this,S.expression.kind==="constant"||S.expression.kind==="camera"?{kind:"constant",value:S.expression.evaluate(D,null,{},X,ie)}:S.expression,D)}interpolate(S,D,X){if(S.value.kind!=="constant"||D.value.kind!=="constant")return S;if(S.value.value===void 0||D.value.value===void 0)return new Tl(this,{kind:"constant",value:void 0},S.parameters);let ie=ka[this.specification.type];if(ie){let ve=ie(S.value.value,D.value.value,X);return new Tl(this,{kind:"constant",value:ve},S.parameters)}return S}evaluate(S,D,X,ie,ve,we){return S.kind==="constant"?S.value:S.evaluate(D,X,ie,ve,we)}}class Xl extends Os{possiblyEvaluate(S,D,X,ie){if(S.value===void 0)return new Tl(this,{kind:"constant",value:void 0},D);if(S.expression.kind==="constant"){let ve=S.expression.evaluate(D,null,{},X,ie),we=S.property.specification.type==="resolvedImage"&&typeof ve!="string"?ve.name:ve,We=this._calculate(we,we,we,D);return new Tl(this,{kind:"constant",value:We},D)}if(S.expression.kind==="camera"){let ve=this._calculate(S.expression.evaluate({zoom:D.zoom-1}),S.expression.evaluate({zoom:D.zoom}),S.expression.evaluate({zoom:D.zoom+1}),D);return new Tl(this,{kind:"constant",value:ve},D)}return new Tl(this,S.expression,D)}evaluate(S,D,X,ie,ve,we){if(S.kind==="source"){let We=S.evaluate(D,X,ie,ve,we);return this._calculate(We,We,We,D)}return S.kind==="composite"?this._calculate(S.evaluate({zoom:Math.floor(D.zoom)-1},X,ie),S.evaluate({zoom:Math.floor(D.zoom)},X,ie),S.evaluate({zoom:Math.floor(D.zoom)+1},X,ie),D):S.value}_calculate(S,D,X,ie){return ie.zoom>ie.zoomHistory.lastIntegerZoom?{from:S,to:D}:{from:X,to:D}}interpolate(S){return S}}class Vl{constructor(S){this.specification=S}possiblyEvaluate(S,D,X,ie){if(S.value!==void 0){if(S.expression.kind==="constant"){let ve=S.expression.evaluate(D,null,{},X,ie);return this._calculate(ve,ve,ve,D)}return this._calculate(S.expression.evaluate(new cs(Math.floor(D.zoom-1),D)),S.expression.evaluate(new cs(Math.floor(D.zoom),D)),S.expression.evaluate(new cs(Math.floor(D.zoom+1),D)),D)}}_calculate(S,D,X,ie){return ie.zoom>ie.zoomHistory.lastIntegerZoom?{from:S,to:D}:{from:X,to:D}}interpolate(S){return S}}class Nl{constructor(S){this.specification=S}possiblyEvaluate(S,D,X,ie){return!!S.expression.evaluate(D,null,{},X,ie)}interpolate(){return!1}}class le{constructor(S){this.properties=S,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(let D in S){let X=S[D];X.specification.overridable&&this.overridableProperties.push(D);let ie=this.defaultPropertyValues[D]=new sl(X,void 0),ve=this.defaultTransitionablePropertyValues[D]=new ll(X);this.defaultTransitioningPropertyValues[D]=ve.untransitioned(),this.defaultPossiblyEvaluatedValues[D]=ie.possiblyEvaluate({})}}}Mi("DataDrivenProperty",Os),Mi("DataConstantProperty",ms),Mi("CrossFadedDataDrivenProperty",Xl),Mi("CrossFadedProperty",Vl),Mi("ColorRampProperty",Nl);let w="-transition";class q extends qe{constructor(S,D){if(super(),this.id=S.id,this.type=S.type,this._featureFilter={filter:()=>!0,needGeometry:!1},S.type!=="custom"&&(this.metadata=S.metadata,this.minzoom=S.minzoom,this.maxzoom=S.maxzoom,S.type!=="background"&&(this.source=S.source,this.sourceLayer=S["source-layer"],this.filter=S.filter),D.layout&&(this._unevaluatedLayout=new Rl(D.layout)),D.paint)){this._transitionablePaint=new il(D.paint);for(let X in S.paint)this.setPaintProperty(X,S.paint[X],{validate:!1});for(let X in S.layout)this.setLayoutProperty(X,S.layout[X],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Ll(D.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(S){return S==="visibility"?this.visibility:this._unevaluatedLayout.getValue(S)}setLayoutProperty(S,D,X={}){D!=null&&this._validate(Fn,`layers.${this.id}.layout.${S}`,S,D,X)||(S!=="visibility"?this._unevaluatedLayout.setValue(S,D):this.visibility=D)}getPaintProperty(S){return S.endsWith(w)?this._transitionablePaint.getTransition(S.slice(0,-11)):this._transitionablePaint.getValue(S)}setPaintProperty(S,D,X={}){if(D!=null&&this._validate(Ki,`layers.${this.id}.paint.${S}`,S,D,X))return!1;if(S.endsWith(w))return this._transitionablePaint.setTransition(S.slice(0,-11),D||void 0),!1;{let ie=this._transitionablePaint._values[S],ve=ie.property.specification["property-type"]==="cross-faded-data-driven",we=ie.value.isDataDriven(),We=ie.value;this._transitionablePaint.setValue(S,D),this._handleSpecialPaintPropertyUpdate(S);let ut=this._transitionablePaint._values[S].value;return ut.isDataDriven()||we||ve||this._handleOverridablePaintPropertyUpdate(S,We,ut)}}_handleSpecialPaintPropertyUpdate(S){}_handleOverridablePaintPropertyUpdate(S,D,X){return!1}isHidden(S){return!!(this.minzoom&&S=this.maxzoom)||this.visibility==="none"}updateTransitions(S){this._transitioningPaint=this._transitionablePaint.transitioned(S,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(S,D){S.getCrossfadeParameters&&(this._crossfadeParameters=S.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(S,void 0,D)),this.paint=this._transitioningPaint.possiblyEvaluate(S,void 0,D)}serialize(){let S={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(S.layout=S.layout||{},S.layout.visibility=this.visibility),M(S,(D,X)=>!(D===void 0||X==="layout"&&!Object.keys(D).length||X==="paint"&&!Object.keys(D).length))}_validate(S,D,X,ie,ve={}){return(!ve||ve.validate!==!1)&&Pi(this,S.call(_i,{key:D,layerType:this.type,objectKey:X,value:ie,styleSpec:ce,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(let S in this.paint._values){let D=this.paint.get(S);if(D instanceof Tl&&ln(D.property.specification)&&(D.value.kind==="source"||D.value.kind==="composite")&&D.value.isStateDependent)return!0}return!1}}let Q={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class ee{constructor(S,D){this._structArray=S,this._pos1=D*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class ue{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(S,D){return S._trim(),D&&(S.isTransferred=!0,D.push(S.arrayBuffer)),{length:S.length,arrayBuffer:S.arrayBuffer}}static deserialize(S){let D=Object.create(this.prototype);return D.arrayBuffer=S.arrayBuffer,D.length=S.length,D.capacity=S.arrayBuffer.byteLength/D.bytesPerElement,D._refreshViews(),D}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(S){this.reserve(S),this.length=S}reserve(S){if(S>this.capacity){this.capacity=Math.max(S,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);let D=this.uint8;this._refreshViews(),D&&this.uint8.set(D)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function Ve(I,S=1){let D=0,X=0;return{members:I.map(ie=>{let ve=Q[ie.type].BYTES_PER_ELEMENT,we=D=tt(D,Math.max(S,ve)),We=ie.components||1;return X=Math.max(X,ve),D+=ve*We,{name:ie.name,type:ie.type,components:We,offset:we}}),size:tt(D,Math.max(X,S)),alignment:S}}function tt(I,S){return Math.ceil(I/S)*S}class mt extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D){let X=this.length;return this.resize(X+1),this.emplace(X,S,D)}emplace(S,D,X){let ie=2*S;return this.int16[ie+0]=D,this.int16[ie+1]=X,S}}mt.prototype.bytesPerElement=4,Mi("StructArrayLayout2i4",mt);class Bt extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,X){let ie=this.length;return this.resize(ie+1),this.emplace(ie,S,D,X)}emplace(S,D,X,ie){let ve=3*S;return this.int16[ve+0]=D,this.int16[ve+1]=X,this.int16[ve+2]=ie,S}}Bt.prototype.bytesPerElement=6,Mi("StructArrayLayout3i6",Bt);class ir extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie){let ve=this.length;return this.resize(ve+1),this.emplace(ve,S,D,X,ie)}emplace(S,D,X,ie,ve){let we=4*S;return this.int16[we+0]=D,this.int16[we+1]=X,this.int16[we+2]=ie,this.int16[we+3]=ve,S}}ir.prototype.bytesPerElement=8,Mi("StructArrayLayout4i8",ir);class or extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we){let We=this.length;return this.resize(We+1),this.emplace(We,S,D,X,ie,ve,we)}emplace(S,D,X,ie,ve,we,We){let ut=6*S;return this.int16[ut+0]=D,this.int16[ut+1]=X,this.int16[ut+2]=ie,this.int16[ut+3]=ve,this.int16[ut+4]=we,this.int16[ut+5]=We,S}}or.prototype.bytesPerElement=12,Mi("StructArrayLayout2i4i12",or);class kr extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we){let We=this.length;return this.resize(We+1),this.emplace(We,S,D,X,ie,ve,we)}emplace(S,D,X,ie,ve,we,We){let ut=4*S,Mt=8*S;return this.int16[ut+0]=D,this.int16[ut+1]=X,this.uint8[Mt+4]=ie,this.uint8[Mt+5]=ve,this.uint8[Mt+6]=we,this.uint8[Mt+7]=We,S}}kr.prototype.bytesPerElement=8,Mi("StructArrayLayout2i4ub8",kr);class Vr extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D){let X=this.length;return this.resize(X+1),this.emplace(X,S,D)}emplace(S,D,X){let ie=2*S;return this.float32[ie+0]=D,this.float32[ie+1]=X,S}}Vr.prototype.bytesPerElement=8,Mi("StructArrayLayout2f8",Vr);class he extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we,We,ut,Mt,$t){let vr=this.length;return this.resize(vr+1),this.emplace(vr,S,D,X,ie,ve,we,We,ut,Mt,$t)}emplace(S,D,X,ie,ve,we,We,ut,Mt,$t,vr){let Sr=10*S;return this.uint16[Sr+0]=D,this.uint16[Sr+1]=X,this.uint16[Sr+2]=ie,this.uint16[Sr+3]=ve,this.uint16[Sr+4]=we,this.uint16[Sr+5]=We,this.uint16[Sr+6]=ut,this.uint16[Sr+7]=Mt,this.uint16[Sr+8]=$t,this.uint16[Sr+9]=vr,S}}he.prototype.bytesPerElement=20,Mi("StructArrayLayout10ui20",he);class Se extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr){let Dr=this.length;return this.resize(Dr+1),this.emplace(Dr,S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr)}emplace(S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr){let Jr=12*S;return this.int16[Jr+0]=D,this.int16[Jr+1]=X,this.int16[Jr+2]=ie,this.int16[Jr+3]=ve,this.uint16[Jr+4]=we,this.uint16[Jr+5]=We,this.uint16[Jr+6]=ut,this.uint16[Jr+7]=Mt,this.int16[Jr+8]=$t,this.int16[Jr+9]=vr,this.int16[Jr+10]=Sr,this.int16[Jr+11]=Dr,S}}Se.prototype.bytesPerElement=24,Mi("StructArrayLayout4i4ui4i24",Se);class Ne extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,X){let ie=this.length;return this.resize(ie+1),this.emplace(ie,S,D,X)}emplace(S,D,X,ie){let ve=3*S;return this.float32[ve+0]=D,this.float32[ve+1]=X,this.float32[ve+2]=ie,S}}Ne.prototype.bytesPerElement=12,Mi("StructArrayLayout3f12",Ne);class Ge extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(S){let D=this.length;return this.resize(D+1),this.emplace(D,S)}emplace(S,D){return this.uint32[1*S+0]=D,S}}Ge.prototype.bytesPerElement=4,Mi("StructArrayLayout1ul4",Ge);class lt extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we,We,ut,Mt){let $t=this.length;return this.resize($t+1),this.emplace($t,S,D,X,ie,ve,we,We,ut,Mt)}emplace(S,D,X,ie,ve,we,We,ut,Mt,$t){let vr=10*S,Sr=5*S;return this.int16[vr+0]=D,this.int16[vr+1]=X,this.int16[vr+2]=ie,this.int16[vr+3]=ve,this.int16[vr+4]=we,this.int16[vr+5]=We,this.uint32[Sr+3]=ut,this.uint16[vr+8]=Mt,this.uint16[vr+9]=$t,S}}lt.prototype.bytesPerElement=20,Mi("StructArrayLayout6i1ul2ui20",lt);class rt extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we){let We=this.length;return this.resize(We+1),this.emplace(We,S,D,X,ie,ve,we)}emplace(S,D,X,ie,ve,we,We){let ut=6*S;return this.int16[ut+0]=D,this.int16[ut+1]=X,this.int16[ut+2]=ie,this.int16[ut+3]=ve,this.int16[ut+4]=we,this.int16[ut+5]=We,S}}rt.prototype.bytesPerElement=12,Mi("StructArrayLayout2i2i2i12",rt);class pt extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve){let we=this.length;return this.resize(we+1),this.emplace(we,S,D,X,ie,ve)}emplace(S,D,X,ie,ve,we){let We=4*S,ut=8*S;return this.float32[We+0]=D,this.float32[We+1]=X,this.float32[We+2]=ie,this.int16[ut+6]=ve,this.int16[ut+7]=we,S}}pt.prototype.bytesPerElement=16,Mi("StructArrayLayout2f1f2i16",pt);class Ht extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we){let We=this.length;return this.resize(We+1),this.emplace(We,S,D,X,ie,ve,we)}emplace(S,D,X,ie,ve,we,We){let ut=16*S,Mt=4*S,$t=8*S;return this.uint8[ut+0]=D,this.uint8[ut+1]=X,this.float32[Mt+1]=ie,this.float32[Mt+2]=ve,this.int16[$t+6]=we,this.int16[$t+7]=We,S}}Ht.prototype.bytesPerElement=16,Mi("StructArrayLayout2ub2f2i16",Ht);class nr extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,X){let ie=this.length;return this.resize(ie+1),this.emplace(ie,S,D,X)}emplace(S,D,X,ie){let ve=3*S;return this.uint16[ve+0]=D,this.uint16[ve+1]=X,this.uint16[ve+2]=ie,S}}nr.prototype.bytesPerElement=6,Mi("StructArrayLayout3ui6",nr);class fr extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr,ui,Gi,cn){let Za=this.length;return this.resize(Za+1),this.emplace(Za,S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr,ui,Gi,cn)}emplace(S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr,ui,Gi,cn,Za){let Rn=24*S,La=12*S,So=48*S;return this.int16[Rn+0]=D,this.int16[Rn+1]=X,this.uint16[Rn+2]=ie,this.uint16[Rn+3]=ve,this.uint32[La+2]=we,this.uint32[La+3]=We,this.uint32[La+4]=ut,this.uint16[Rn+10]=Mt,this.uint16[Rn+11]=$t,this.uint16[Rn+12]=vr,this.float32[La+7]=Sr,this.float32[La+8]=Dr,this.uint8[So+36]=Jr,this.uint8[So+37]=ui,this.uint8[So+38]=Gi,this.uint32[La+10]=cn,this.int16[Rn+22]=Za,S}}fr.prototype.bytesPerElement=48,Mi("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",fr);class Tr extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr,ui,Gi,cn,Za,Rn,La,So,kl,mu,Iu,su,yl,Eu,bu){let _u=this.length;return this.resize(_u+1),this.emplace(_u,S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr,ui,Gi,cn,Za,Rn,La,So,kl,mu,Iu,su,yl,Eu,bu)}emplace(S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr,ui,Gi,cn,Za,Rn,La,So,kl,mu,Iu,su,yl,Eu,bu,_u){let Xs=32*S,Lu=16*S;return this.int16[Xs+0]=D,this.int16[Xs+1]=X,this.int16[Xs+2]=ie,this.int16[Xs+3]=ve,this.int16[Xs+4]=we,this.int16[Xs+5]=We,this.int16[Xs+6]=ut,this.int16[Xs+7]=Mt,this.uint16[Xs+8]=$t,this.uint16[Xs+9]=vr,this.uint16[Xs+10]=Sr,this.uint16[Xs+11]=Dr,this.uint16[Xs+12]=Jr,this.uint16[Xs+13]=ui,this.uint16[Xs+14]=Gi,this.uint16[Xs+15]=cn,this.uint16[Xs+16]=Za,this.uint16[Xs+17]=Rn,this.uint16[Xs+18]=La,this.uint16[Xs+19]=So,this.uint16[Xs+20]=kl,this.uint16[Xs+21]=mu,this.uint16[Xs+22]=Iu,this.uint32[Lu+12]=su,this.float32[Lu+13]=yl,this.float32[Lu+14]=Eu,this.uint16[Xs+30]=bu,this.uint16[Xs+31]=_u,S}}Tr.prototype.bytesPerElement=64,Mi("StructArrayLayout8i15ui1ul2f2ui64",Tr);class Ir extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S){let D=this.length;return this.resize(D+1),this.emplace(D,S)}emplace(S,D){return this.float32[1*S+0]=D,S}}Ir.prototype.bytesPerElement=4,Mi("StructArrayLayout1f4",Ir);class ri extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,X){let ie=this.length;return this.resize(ie+1),this.emplace(ie,S,D,X)}emplace(S,D,X,ie){let ve=3*S;return this.uint16[6*S+0]=D,this.float32[ve+1]=X,this.float32[ve+2]=ie,S}}ri.prototype.bytesPerElement=12,Mi("StructArrayLayout1ui2f12",ri);class li extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,X){let ie=this.length;return this.resize(ie+1),this.emplace(ie,S,D,X)}emplace(S,D,X,ie){let ve=4*S;return this.uint32[2*S+0]=D,this.uint16[ve+2]=X,this.uint16[ve+3]=ie,S}}li.prototype.bytesPerElement=8,Mi("StructArrayLayout1ul2ui8",li);class Ei extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D){let X=this.length;return this.resize(X+1),this.emplace(X,S,D)}emplace(S,D,X){let ie=2*S;return this.uint16[ie+0]=D,this.uint16[ie+1]=X,S}}Ei.prototype.bytesPerElement=4,Mi("StructArrayLayout2ui4",Ei);class hn extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S){let D=this.length;return this.resize(D+1),this.emplace(D,S)}emplace(S,D){return this.uint16[1*S+0]=D,S}}hn.prototype.bytesPerElement=2,Mi("StructArrayLayout1ui2",hn);class Zn extends ue{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,X,ie){let ve=this.length;return this.resize(ve+1),this.emplace(ve,S,D,X,ie)}emplace(S,D,X,ie,ve){let we=4*S;return this.float32[we+0]=D,this.float32[we+1]=X,this.float32[we+2]=ie,this.float32[we+3]=ve,S}}Zn.prototype.bytesPerElement=16,Mi("StructArrayLayout4f16",Zn);class Yn extends ee{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new l(this.anchorPointX,this.anchorPointY)}}Yn.prototype.size=20;class Ua extends lt{get(S){return new Yn(this,S)}}Mi("CollisionBoxArray",Ua);class Fo extends ee{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(S){this._structArray.uint8[this._pos1+37]=S}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(S){this._structArray.uint8[this._pos1+38]=S}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(S){this._structArray.uint32[this._pos4+10]=S}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}Fo.prototype.size=48;class vl extends fr{get(S){return new Fo(this,S)}}Mi("PlacedSymbolArray",vl);class Us extends ee{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(S){this._structArray.uint32[this._pos4+12]=S}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14]}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30]}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31]}}Us.prototype.size=64;class ml extends Tr{get(S){return new Us(this,S)}}Mi("SymbolInstanceArray",ml);class au extends Ir{getoffsetX(S){return this.float32[1*S+0]}}Mi("GlyphOffsetArray",au);class Sl extends Bt{getx(S){return this.int16[3*S+0]}gety(S){return this.int16[3*S+1]}gettileUnitDistanceFromAnchor(S){return this.int16[3*S+2]}}Mi("SymbolLineVertexArray",Sl);class Yl extends ee{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}Yl.prototype.size=12;class Ol extends ri{get(S){return new Yl(this,S)}}Mi("TextAnchorOffsetArray",Ol);class ou extends ee{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}ou.prototype.size=8;class Pu extends li{get(S){return new ou(this,S)}}Mi("FeatureIndexArray",Pu);class nu extends mt{}class tu extends mt{}class Hu extends mt{}class $u extends or{}class Ku extends kr{}class Wu extends Vr{}class ju extends he{}class sf extends Se{}class _f extends Ne{}class Qu extends Ge{}class ef extends rt{}class Z extends Ht{}class se extends nr{}class Pe extends Ei{}let Xe=Ve([{name:"a_pos",components:2,type:"Int16"}],4),{members:Qe}=Xe;class st{constructor(S=[]){this.segments=S}prepareSegment(S,D,X,ie){let ve=this.segments[this.segments.length-1];return S>st.MAX_VERTEX_ARRAY_LENGTH&&T(`Max vertices per segment is ${st.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${S}`),(!ve||ve.vertexLength+S>st.MAX_VERTEX_ARRAY_LENGTH||ve.sortKey!==ie)&&(ve={vertexOffset:D.length,primitiveOffset:X.length,vertexLength:0,primitiveLength:0},ie!==void 0&&(ve.sortKey=ie),this.segments.push(ve)),ve}get(){return this.segments}destroy(){for(let S of this.segments)for(let D in S.vaos)S.vaos[D].destroy()}static simpleSegment(S,D,X,ie){return new st([{vertexOffset:S,primitiveOffset:D,vertexLength:X,primitiveLength:ie,vaos:{},sortKey:0}])}}function jt(I,S){return 256*(I=E(Math.floor(I),0,255))+E(Math.floor(S),0,255)}st.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Mi("SegmentVector",st);let _t=Ve([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var hr={exports:{}},Cr={exports:{}};Cr.exports=function(I,S){var D,X,ie,ve,we,We,ut,Mt;for(X=I.length-(D=3&I.length),ie=S,we=3432918353,We=461845907,Mt=0;Mt>>16)*we&65535)<<16)&4294967295)<<15|ut>>>17))*We+(((ut>>>16)*We&65535)<<16)&4294967295)<<13|ie>>>19))+((5*(ie>>>16)&65535)<<16)&4294967295))+((58964+(ve>>>16)&65535)<<16);switch(ut=0,D){case 3:ut^=(255&I.charCodeAt(Mt+2))<<16;case 2:ut^=(255&I.charCodeAt(Mt+1))<<8;case 1:ie^=ut=(65535&(ut=(ut=(65535&(ut^=255&I.charCodeAt(Mt)))*we+(((ut>>>16)*we&65535)<<16)&4294967295)<<15|ut>>>17))*We+(((ut>>>16)*We&65535)<<16)&4294967295}return ie^=I.length,ie=2246822507*(65535&(ie^=ie>>>16))+((2246822507*(ie>>>16)&65535)<<16)&4294967295,ie=3266489909*(65535&(ie^=ie>>>13))+((3266489909*(ie>>>16)&65535)<<16)&4294967295,(ie^=ie>>>16)>>>0};var zr=Cr.exports,fi={exports:{}};fi.exports=function(I,S){for(var D,X=I.length,ie=S^X,ve=0;X>=4;)D=1540483477*(65535&(D=255&I.charCodeAt(ve)|(255&I.charCodeAt(++ve))<<8|(255&I.charCodeAt(++ve))<<16|(255&I.charCodeAt(++ve))<<24))+((1540483477*(D>>>16)&65535)<<16),ie=1540483477*(65535&ie)+((1540483477*(ie>>>16)&65535)<<16)^(D=1540483477*(65535&(D^=D>>>24))+((1540483477*(D>>>16)&65535)<<16)),X-=4,++ve;switch(X){case 3:ie^=(255&I.charCodeAt(ve+2))<<16;case 2:ie^=(255&I.charCodeAt(ve+1))<<8;case 1:ie=1540483477*(65535&(ie^=255&I.charCodeAt(ve)))+((1540483477*(ie>>>16)&65535)<<16)}return ie=1540483477*(65535&(ie^=ie>>>13))+((1540483477*(ie>>>16)&65535)<<16),(ie^=ie>>>15)>>>0};var $r=zr,Bi=fi.exports;hr.exports=$r,hr.exports.murmur3=$r,hr.exports.murmur2=Bi;var fn=o(hr.exports);class mi{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(S,D,X,ie){this.ids.push(zi(S)),this.positions.push(D,X,ie)}getPositions(S){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");let D=zi(S),X=0,ie=this.ids.length-1;for(;X>1;this.ids[we]>=D?ie=we:X=we+1}let ve=[];for(;this.ids[X]===D;)ve.push({index:this.positions[3*X],start:this.positions[3*X+1],end:this.positions[3*X+2]}),X++;return ve}static serialize(S,D){let X=new Float64Array(S.ids),ie=new Uint32Array(S.positions);return ji(X,ie,0,X.length-1),D&&D.push(X.buffer,ie.buffer),{ids:X,positions:ie}}static deserialize(S){let D=new mi;return D.ids=S.ids,D.positions=S.positions,D.indexed=!0,D}}function zi(I){let S=+I;return!isNaN(S)&&S<=Number.MAX_SAFE_INTEGER?S:fn(String(I))}function ji(I,S,D,X){for(;D>1],ve=D-1,we=X+1;for(;;){do ve++;while(I[ve]ie);if(ve>=we)break;pn(I,ve,we),pn(S,3*ve,3*we),pn(S,3*ve+1,3*we+1),pn(S,3*ve+2,3*we+2)}we-D`u_${ie}`),this.type=X}setUniform(S,D,X){S.set(X.constantOr(this.value))}getBinding(S,D,X){return this.type==="color"?new no(S,D):new wi(S,D)}}class Pl{constructor(S,D){this.uniformNames=D.map(X=>`u_${X}`),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(S,D){this.pixelRatioFrom=D.pixelRatio,this.pixelRatioTo=S.pixelRatio,this.patternFrom=D.tlbr,this.patternTo=S.tlbr}setUniform(S,D,X,ie){let ve=ie==="u_pattern_to"?this.patternTo:ie==="u_pattern_from"?this.patternFrom:ie==="u_pixel_ratio_to"?this.pixelRatioTo:ie==="u_pixel_ratio_from"?this.pixelRatioFrom:null;ve&&S.set(ve)}getBinding(S,D,X){return X.substr(0,9)==="u_pattern"?new xo(S,D):new wi(S,D)}}class pu{constructor(S,D,X,ie){this.expression=S,this.type=X,this.maxValue=0,this.paintVertexAttributes=D.map(ve=>({name:`a_${ve}`,type:"Float32",components:X==="color"?2:1,offset:0})),this.paintVertexArray=new ie}populatePaintArray(S,D,X,ie,ve){let we=this.paintVertexArray.length,We=this.expression.evaluate(new cs(0),D,{},ie,[],ve);this.paintVertexArray.resize(S),this._setPaintValue(we,S,We)}updatePaintArray(S,D,X,ie){let ve=this.expression.evaluate({zoom:0},X,ie);this._setPaintValue(S,D,ve)}_setPaintValue(S,D,X){if(this.type==="color"){let ie=js(X);for(let ve=S;ve`u_${We}_t`),this.type=X,this.useIntegerZoom=ie,this.zoom=ve,this.maxValue=0,this.paintVertexAttributes=D.map(We=>({name:`a_${We}`,type:"Float32",components:X==="color"?4:2,offset:0})),this.paintVertexArray=new we}populatePaintArray(S,D,X,ie,ve){let we=this.expression.evaluate(new cs(this.zoom),D,{},ie,[],ve),We=this.expression.evaluate(new cs(this.zoom+1),D,{},ie,[],ve),ut=this.paintVertexArray.length;this.paintVertexArray.resize(S),this._setPaintValue(ut,S,we,We)}updatePaintArray(S,D,X,ie){let ve=this.expression.evaluate({zoom:this.zoom},X,ie),we=this.expression.evaluate({zoom:this.zoom+1},X,ie);this._setPaintValue(S,D,ve,we)}_setPaintValue(S,D,X,ie){if(this.type==="color"){let ve=js(X),we=js(ie);for(let We=S;We`#define HAS_UNIFORM_${ie}`))}return S}getBinderAttributes(){let S=[];for(let D in this.binders){let X=this.binders[D];if(X instanceof pu||X instanceof Il)for(let ie=0;ie!0){this.programConfigurations={};for(let ie of S)this.programConfigurations[ie.id]=new Xu(ie,D,X);this.needsUpload=!1,this._featureMap=new mi,this._bufferOffset=0}populatePaintArrays(S,D,X,ie,ve,we){for(let We in this.programConfigurations)this.programConfigurations[We].populatePaintArrays(S,D,ie,ve,we);D.id!==void 0&&this._featureMap.add(D.id,X,this._bufferOffset,S),this._bufferOffset=S,this.needsUpload=!0}updatePaintArrays(S,D,X,ie){for(let ve of X)this.needsUpload=this.programConfigurations[ve.id].updatePaintArrays(S,this._featureMap,D,ve,ie)||this.needsUpload}get(S){return this.programConfigurations[S]}upload(S){if(this.needsUpload){for(let D in this.programConfigurations)this.programConfigurations[D].upload(S);this.needsUpload=!1}}destroy(){for(let S in this.programConfigurations)this.programConfigurations[S].destroy()}}function tf(I,S){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[I]||[I.replace(`${S}-`,"").replace(/-/g,"_")]}function ds(I,S,D){let X={color:{source:Vr,composite:Zn},number:{source:Ir,composite:Vr}},ie=function(ve){return{"line-pattern":{source:ju,composite:ju},"fill-pattern":{source:ju,composite:ju},"fill-extrusion-pattern":{source:ju,composite:ju}}[ve]}(I);return ie&&ie[D]||X[S][D]}Mi("ConstantBinder",El),Mi("CrossFadedConstantBinder",Pl),Mi("SourceExpressionBinder",pu),Mi("CrossFadedCompositeBinder",fu),Mi("CompositeExpressionBinder",Il),Mi("ProgramConfiguration",Xu,{omit:["_buffers"]}),Mi("ProgramConfigurationSet",Vu);let Wl=8192,Tu=Math.pow(2,14)-1,Au=-Tu-1;function lf(I){let S=Wl/I.extent,D=I.loadGeometry();for(let X=0;Xwe.x+1||utwe.y+1)&&T("Geometry exceeds allowed extent, reduce your vector tile buffer size")}}return D}function hf(I,S){return{type:I.type,id:I.id,properties:I.properties,geometry:S?lf(I):[]}}function Mf(I,S,D,X,ie){I.emplaceBack(2*S+(X+1)/2,2*D+(ie+1)/2)}class pf{constructor(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(D=>D.id),this.index=S.index,this.hasPattern=!1,this.layoutVertexArray=new tu,this.indexArray=new se,this.segments=new st,this.programConfigurations=new Vu(S.layers,S.zoom),this.stateDependentLayerIds=this.layers.filter(D=>D.isStateDependent()).map(D=>D.id)}populate(S,D,X){let ie=this.layers[0],ve=[],we=null,We=!1;ie.type==="circle"&&(we=ie.layout.get("circle-sort-key"),We=!we.isConstant());for(let{feature:ut,id:Mt,index:$t,sourceLayerIndex:vr}of S){let Sr=this.layers[0]._featureFilter.needGeometry,Dr=hf(ut,Sr);if(!this.layers[0]._featureFilter.filter(new cs(this.zoom),Dr,X))continue;let Jr=We?we.evaluate(Dr,{},X):void 0,ui={id:Mt,properties:ut.properties,type:ut.type,sourceLayerIndex:vr,index:$t,geometry:Sr?Dr.geometry:lf(ut),patterns:{},sortKey:Jr};ve.push(ui)}We&&ve.sort((ut,Mt)=>ut.sortKey-Mt.sortKey);for(let ut of ve){let{geometry:Mt,index:$t,sourceLayerIndex:vr}=ut,Sr=S[$t].feature;this.addFeature(ut,Mt,$t,X),D.featureIndex.insert(Sr,Mt,$t,vr,this.index)}}update(S,D,X){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,D,this.stateDependentLayers,X)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,Qe),this.indexBuffer=S.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(S),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(S,D,X,ie){for(let ve of D)for(let we of ve){let We=we.x,ut=we.y;if(We<0||We>=Wl||ut<0||ut>=Wl)continue;let Mt=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,S.sortKey),$t=Mt.vertexLength;Mf(this.layoutVertexArray,We,ut,-1,-1),Mf(this.layoutVertexArray,We,ut,1,-1),Mf(this.layoutVertexArray,We,ut,1,1),Mf(this.layoutVertexArray,We,ut,-1,1),this.indexArray.emplaceBack($t,$t+1,$t+2),this.indexArray.emplaceBack($t,$t+3,$t+2),Mt.vertexLength+=4,Mt.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,X,{},ie)}}function fc(I,S){for(let D=0;D1){if(Qr(I,S))return!0;for(let X=0;X1?D:D.sub(S)._mult(ie)._add(S))}function on(I,S){let D,X,ie,ve=!1;for(let we=0;weS.y!=ie.y>S.y&&S.x<(ie.x-X.x)*(S.y-X.y)/(ie.y-X.y)+X.x&&(ve=!ve)}return ve}function Bn(I,S){let D=!1;for(let X=0,ie=I.length-1;XS.y!=we.y>S.y&&S.x<(we.x-ve.x)*(S.y-ve.y)/(we.y-ve.y)+ve.x&&(D=!D)}return D}function Ln(I,S,D){let X=D[0],ie=D[2];if(I.xie.x&&S.x>ie.x||I.yie.y&&S.y>ie.y)return!1;let ve=B(I,S,D[0]);return ve!==B(I,S,D[1])||ve!==B(I,S,D[2])||ve!==B(I,S,D[3])}function wn(I,S,D){let X=S.paint.get(I).value;return X.kind==="constant"?X.value:D.programConfigurations.get(S.id).getMaxValue(I)}function Ls(I){return Math.sqrt(I[0]*I[0]+I[1]*I[1])}function ua(I,S,D,X,ie){if(!S[0]&&!S[1])return I;let ve=l.convert(S)._mult(ie);D==="viewport"&&ve._rotate(-X);let we=[];for(let We=0;WeUi(Gi,ui))}(Mt,ut),Dr=vr?$t*We:$t;for(let Jr of ie)for(let ui of Jr){let Gi=vr?ui:Ui(ui,ut),cn=Dr,Za=hs([],[ui.x,ui.y,0,1],ut);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?cn*=Za[3]/we.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(cn*=we.cameraToCenterDistance/Za[3]),Be(Sr,Gi,cn))return!0}return!1}}function Ui(I,S){let D=hs([],[I.x,I.y,0,1],S);return new l(D[0]/D[3],D[1]/D[3])}class ro extends pf{}let na;Mi("HeatmapBucket",ro,{omit:["layers"]});var On={get paint(){return na=na||new le({"heatmap-radius":new Os(ce.paint_heatmap["heatmap-radius"]),"heatmap-weight":new Os(ce.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new ms(ce.paint_heatmap["heatmap-intensity"]),"heatmap-color":new Nl(ce.paint_heatmap["heatmap-color"]),"heatmap-opacity":new ms(ce.paint_heatmap["heatmap-opacity"])})}};function In(I,{width:S,height:D},X,ie){if(ie){if(ie instanceof Uint8ClampedArray)ie=new Uint8Array(ie.buffer);else if(ie.length!==S*D*X)throw new RangeError(`mismatched image size. expected: ${ie.length} but got: ${S*D*X}`)}else ie=new Uint8Array(S*D*X);return I.width=S,I.height=D,I.data=ie,I}function Va(I,{width:S,height:D},X){if(S===I.width&&D===I.height)return;let ie=In({},{width:S,height:D},X);_s(I,ie,{x:0,y:0},{x:0,y:0},{width:Math.min(I.width,S),height:Math.min(I.height,D)},X),I.width=S,I.height=D,I.data=ie.data}function _s(I,S,D,X,ie,ve){if(ie.width===0||ie.height===0)return S;if(ie.width>I.width||ie.height>I.height||D.x>I.width-ie.width||D.y>I.height-ie.height)throw new RangeError("out of range source coordinates for image copy");if(ie.width>S.width||ie.height>S.height||X.x>S.width-ie.width||X.y>S.height-ie.height)throw new RangeError("out of range destination coordinates for image copy");let we=I.data,We=S.data;if(we===We)throw new Error("srcData equals dstData, so image is already copied");for(let ut=0;ut{S[I.evaluationKey]=ut;let Mt=I.expression.evaluate(S);ie.data[we+We+0]=Math.floor(255*Mt.r/Mt.a),ie.data[we+We+1]=Math.floor(255*Mt.g/Mt.a),ie.data[we+We+2]=Math.floor(255*Mt.b/Mt.a),ie.data[we+We+3]=Math.floor(255*Mt.a)};if(I.clips)for(let we=0,We=0;we80*D){We=1/0,ut=1/0;let $t=-1/0,vr=-1/0;for(let Sr=D;Sr$t&&($t=Dr),Jr>vr&&(vr=Jr)}Mt=Math.max($t-We,vr-ut),Mt=Mt!==0?32767/Mt:0}return Cf(ve,we,D,We,ut,Mt,0),we}function gf(I,S,D,X,ie){let ve;if(ie===function(we,We,ut,Mt){let $t=0;for(let vr=We,Sr=ut-Mt;vr0)for(let we=S;we=S;we-=X)ve=lr(we/X|0,I[we],I[we+1],ve);return ve&&ne(ve,ve.next)&&($e(ve),ve=ve.next),ve}function xf(I,S){if(!I)return I;S||(S=I);let D,X=I;do if(D=!1,X.steiner||!ne(X,X.next)&&_e(X.prev,X,X.next)!==0)X=X.next;else{if($e(X),X=S=X.prev,X===X.next)break;D=!0}while(D||X!==S);return S}function Cf(I,S,D,X,ie,ve,we){if(!I)return;!we&&ve&&function(ut,Mt,$t,vr){let Sr=ut;do Sr.z===0&&(Sr.z=R(Sr.x,Sr.y,Mt,$t,vr)),Sr.prevZ=Sr.prev,Sr.nextZ=Sr.next,Sr=Sr.next;while(Sr!==ut);Sr.prevZ.nextZ=null,Sr.prevZ=null,function(Dr){let Jr,ui=1;do{let Gi,cn=Dr;Dr=null;let Za=null;for(Jr=0;cn;){Jr++;let Rn=cn,La=0;for(let kl=0;kl0||So>0&&Rn;)La!==0&&(So===0||!Rn||cn.z<=Rn.z)?(Gi=cn,cn=cn.nextZ,La--):(Gi=Rn,Rn=Rn.nextZ,So--),Za?Za.nextZ=Gi:Dr=Gi,Gi.prevZ=Za,Za=Gi;cn=Rn}Za.nextZ=null,ui*=2}while(Jr>1)}(Sr)}(I,X,ie,ve);let We=I;for(;I.prev!==I.next;){let ut=I.prev,Mt=I.next;if(ve?cf(I,X,ie,ve):Gu(I))S.push(ut.i,I.i,Mt.i),$e(I),I=Mt.next,We=Mt.next;else if((I=Mt)===We){we?we===1?Cf(I=mf(xf(I),S),S,D,X,ie,ve,2):we===2&&Fl(I,S,D,X,ie,ve):Cf(xf(I),S,D,X,ie,ve,1);break}}}function Gu(I){let S=I.prev,D=I,X=I.next;if(_e(S,D,X)>=0)return!1;let ie=S.x,ve=D.x,we=X.x,We=S.y,ut=D.y,Mt=X.y,$t=ieve?ie>we?ie:we:ve>we?ve:we,Dr=We>ut?We>Mt?We:Mt:ut>Mt?ut:Mt,Jr=X.next;for(;Jr!==S;){if(Jr.x>=$t&&Jr.x<=Sr&&Jr.y>=vr&&Jr.y<=Dr&&O(ie,We,ve,ut,we,Mt,Jr.x,Jr.y)&&_e(Jr.prev,Jr,Jr.next)>=0)return!1;Jr=Jr.next}return!0}function cf(I,S,D,X){let ie=I.prev,ve=I,we=I.next;if(_e(ie,ve,we)>=0)return!1;let We=ie.x,ut=ve.x,Mt=we.x,$t=ie.y,vr=ve.y,Sr=we.y,Dr=Weut?We>Mt?We:Mt:ut>Mt?ut:Mt,Gi=$t>vr?$t>Sr?$t:Sr:vr>Sr?vr:Sr,cn=R(Dr,Jr,S,D,X),Za=R(ui,Gi,S,D,X),Rn=I.prevZ,La=I.nextZ;for(;Rn&&Rn.z>=cn&&La&&La.z<=Za;){if(Rn.x>=Dr&&Rn.x<=ui&&Rn.y>=Jr&&Rn.y<=Gi&&Rn!==ie&&Rn!==we&&O(We,$t,ut,vr,Mt,Sr,Rn.x,Rn.y)&&_e(Rn.prev,Rn,Rn.next)>=0||(Rn=Rn.prevZ,La.x>=Dr&&La.x<=ui&&La.y>=Jr&&La.y<=Gi&&La!==ie&&La!==we&&O(We,$t,ut,vr,Mt,Sr,La.x,La.y)&&_e(La.prev,La,La.next)>=0))return!1;La=La.nextZ}for(;Rn&&Rn.z>=cn;){if(Rn.x>=Dr&&Rn.x<=ui&&Rn.y>=Jr&&Rn.y<=Gi&&Rn!==ie&&Rn!==we&&O(We,$t,ut,vr,Mt,Sr,Rn.x,Rn.y)&&_e(Rn.prev,Rn,Rn.next)>=0)return!1;Rn=Rn.prevZ}for(;La&&La.z<=Za;){if(La.x>=Dr&&La.x<=ui&&La.y>=Jr&&La.y<=Gi&&La!==ie&&La!==we&&O(We,$t,ut,vr,Mt,Sr,La.x,La.y)&&_e(La.prev,La,La.next)>=0)return!1;La=La.nextZ}return!0}function mf(I,S){let D=I;do{let X=D.prev,ie=D.next.next;!ne(X,ie)&&Le(X,D,D.next,ie)&&dr(X,ie)&&dr(ie,X)&&(S.push(X.i,D.i,ie.i),$e(D),$e(D.next),D=I=ie),D=D.next}while(D!==I);return xf(D)}function Fl(I,S,D,X,ie,ve){let we=I;do{let We=we.next.next;for(;We!==we.prev;){if(we.i!==We.i&&K(we,We)){let ut=Mr(we,We);return we=xf(we,we.next),ut=xf(ut,ut.next),Cf(we,S,D,X,ie,ve,0),void Cf(ut,S,D,X,ie,ve,0)}We=We.next}we=we.next}while(we!==I)}function bf(I,S){return I.x-S.x}function cu(I,S){let D=function(ie,ve){let we=ve,We=ie.x,ut=ie.y,Mt,$t=-1/0;do{if(ut<=we.y&&ut>=we.next.y&&we.next.y!==we.y){let ui=we.x+(ut-we.y)*(we.next.x-we.x)/(we.next.y-we.y);if(ui<=We&&ui>$t&&($t=ui,Mt=we.x=we.x&&we.x>=Sr&&We!==we.x&&O(utMt.x||we.x===Mt.x&&Y(Mt,we)))&&(Mt=we,Jr=ui)}we=we.next}while(we!==vr);return Mt}(I,S);if(!D)return S;let X=Mr(D,I);return xf(X,X.next),xf(D,D.next)}function Y(I,S){return _e(I.prev,I,S.prev)<0&&_e(S.next,I,I.next)<0}function R(I,S,D,X,ie){return(I=1431655765&((I=858993459&((I=252645135&((I=16711935&((I=(I-D)*ie|0)|I<<8))|I<<4))|I<<2))|I<<1))|(S=1431655765&((S=858993459&((S=252645135&((S=16711935&((S=(S-X)*ie|0)|S<<8))|S<<4))|S<<2))|S<<1))<<1}function J(I){let S=I,D=I;do(S.x=(I-we)*(ve-We)&&(I-we)*(X-We)>=(D-we)*(S-We)&&(D-we)*(ve-We)>=(ie-we)*(X-We)}function K(I,S){return I.next.i!==S.i&&I.prev.i!==S.i&&!function(D,X){let ie=D;do{if(ie.i!==D.i&&ie.next.i!==D.i&&ie.i!==X.i&&ie.next.i!==X.i&&Le(ie,ie.next,D,X))return!0;ie=ie.next}while(ie!==D);return!1}(I,S)&&(dr(I,S)&&dr(S,I)&&function(D,X){let ie=D,ve=!1,we=(D.x+X.x)/2,We=(D.y+X.y)/2;do ie.y>We!=ie.next.y>We&&ie.next.y!==ie.y&&we<(ie.next.x-ie.x)*(We-ie.y)/(ie.next.y-ie.y)+ie.x&&(ve=!ve),ie=ie.next;while(ie!==D);return ve}(I,S)&&(_e(I.prev,I,S.prev)||_e(I,S.prev,S))||ne(I,S)&&_e(I.prev,I,I.next)>0&&_e(S.prev,S,S.next)>0)}function _e(I,S,D){return(S.y-I.y)*(D.x-S.x)-(S.x-I.x)*(D.y-S.y)}function ne(I,S){return I.x===S.x&&I.y===S.y}function Le(I,S,D,X){let ie=kt(_e(I,S,D)),ve=kt(_e(I,S,X)),we=kt(_e(D,X,I)),We=kt(_e(D,X,S));return ie!==ve&&we!==We||!(ie!==0||!Ze(I,D,S))||!(ve!==0||!Ze(I,X,S))||!(we!==0||!Ze(D,I,X))||!(We!==0||!Ze(D,S,X))}function Ze(I,S,D){return S.x<=Math.max(I.x,D.x)&&S.x>=Math.min(I.x,D.x)&&S.y<=Math.max(I.y,D.y)&&S.y>=Math.min(I.y,D.y)}function kt(I){return I>0?1:I<0?-1:0}function dr(I,S){return _e(I.prev,I,I.next)<0?_e(I,S,I.next)>=0&&_e(I,I.prev,S)>=0:_e(I,S,I.prev)<0||_e(I,I.next,S)<0}function Mr(I,S){let D=ht(I.i,I.x,I.y),X=ht(S.i,S.x,S.y),ie=I.next,ve=S.prev;return I.next=S,S.prev=I,D.next=ie,ie.prev=D,X.next=D,D.prev=X,ve.next=X,X.prev=ve,X}function lr(I,S,D,X){let ie=ht(I,S,D);return X?(ie.next=X.next,ie.prev=X,X.next.prev=ie,X.next=ie):(ie.prev=ie,ie.next=ie),ie}function $e(I){I.next.prev=I.prev,I.prev.next=I.next,I.prevZ&&(I.prevZ.nextZ=I.nextZ),I.nextZ&&(I.nextZ.prevZ=I.prevZ)}function ht(I,S,D){return{i:I,x:S,y:D,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function bt(I,S,D){let X=D.patternDependencies,ie=!1;for(let ve of S){let we=ve.paint.get(`${I}-pattern`);we.isConstant()||(ie=!0);let We=we.constantOr(null);We&&(ie=!0,X[We.to]=!0,X[We.from]=!0)}return ie}function Kt(I,S,D,X,ie){let ve=ie.patternDependencies;for(let we of S){let We=we.paint.get(`${I}-pattern`).value;if(We.kind!=="constant"){let ut=We.evaluate({zoom:X-1},D,{},ie.availableImages),Mt=We.evaluate({zoom:X},D,{},ie.availableImages),$t=We.evaluate({zoom:X+1},D,{},ie.availableImages);ut=ut&&ut.name?ut.name:ut,Mt=Mt&&Mt.name?Mt.name:Mt,$t=$t&&$t.name?$t.name:$t,ve[ut]=!0,ve[Mt]=!0,ve[$t]=!0,D.patterns[we.id]={min:ut,mid:Mt,max:$t}}}return D}class sr{constructor(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(D=>D.id),this.index=S.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Hu,this.indexArray=new se,this.indexArray2=new Pe,this.programConfigurations=new Vu(S.layers,S.zoom),this.segments=new st,this.segments2=new st,this.stateDependentLayerIds=this.layers.filter(D=>D.isStateDependent()).map(D=>D.id)}populate(S,D,X){this.hasPattern=bt("fill",this.layers,D);let ie=this.layers[0].layout.get("fill-sort-key"),ve=!ie.isConstant(),we=[];for(let{feature:We,id:ut,index:Mt,sourceLayerIndex:$t}of S){let vr=this.layers[0]._featureFilter.needGeometry,Sr=hf(We,vr);if(!this.layers[0]._featureFilter.filter(new cs(this.zoom),Sr,X))continue;let Dr=ve?ie.evaluate(Sr,{},X,D.availableImages):void 0,Jr={id:ut,properties:We.properties,type:We.type,sourceLayerIndex:$t,index:Mt,geometry:vr?Sr.geometry:lf(We),patterns:{},sortKey:Dr};we.push(Jr)}ve&&we.sort((We,ut)=>We.sortKey-ut.sortKey);for(let We of we){let{geometry:ut,index:Mt,sourceLayerIndex:$t}=We;if(this.hasPattern){let vr=Kt("fill",this.layers,We,this.zoom,D);this.patternFeatures.push(vr)}else this.addFeature(We,ut,Mt,X,{});D.featureIndex.insert(S[Mt].feature,ut,Mt,$t,this.index)}}update(S,D,X){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,D,this.stateDependentLayers,X)}addFeatures(S,D,X){for(let ie of this.patternFeatures)this.addFeature(ie,ie.geometry,ie.index,D,X)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,Ef),this.indexBuffer=S.createIndexBuffer(this.indexArray),this.indexBuffer2=S.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(S),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(S,D,X,ie,ve){for(let we of Ys(D,500)){let We=0;for(let Dr of we)We+=Dr.length;let ut=this.segments.prepareSegment(We,this.layoutVertexArray,this.indexArray),Mt=ut.vertexLength,$t=[],vr=[];for(let Dr of we){if(Dr.length===0)continue;Dr!==we[0]&&vr.push($t.length/2);let Jr=this.segments2.prepareSegment(Dr.length,this.layoutVertexArray,this.indexArray2),ui=Jr.vertexLength;this.layoutVertexArray.emplaceBack(Dr[0].x,Dr[0].y),this.indexArray2.emplaceBack(ui+Dr.length-1,ui),$t.push(Dr[0].x),$t.push(Dr[0].y);for(let Gi=1;Gi>3}if(ie--,X===1||X===2)ve+=I.readSVarint(),we+=I.readSVarint(),X===1&&(S&&We.push(S),S=[]),S.push(new hi(ve,we));else{if(X!==7)throw new Error("unknown command "+X);S&&S.push(S[0].clone())}}return S&&We.push(S),We},Yi.prototype.bbox=function(){var I=this._pbf;I.pos=this._geometry;for(var S=I.readVarint()+I.pos,D=1,X=0,ie=0,ve=0,we=1/0,We=-1/0,ut=1/0,Mt=-1/0;I.pos>3}if(X--,D===1||D===2)(ie+=I.readSVarint())We&&(We=ie),(ve+=I.readSVarint())Mt&&(Mt=ve);else if(D!==7)throw new Error("unknown command "+D)}return[we,ut,We,Mt]},Yi.prototype.toGeoJSON=function(I,S,D){var X,ie,ve=this.extent*Math.pow(2,D),we=this.extent*I,We=this.extent*S,ut=this.loadGeometry(),Mt=Yi.types[this.type];function $t(Dr){for(var Jr=0;Jr>3;ie=we===1?X.readString():we===2?X.readFloat():we===3?X.readDouble():we===4?X.readVarint64():we===5?X.readVarint():we===6?X.readSVarint():we===7?X.readBoolean():null}return ie}(D))}Pn.prototype.feature=function(I){if(I<0||I>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[I];var S=this._pbf.readVarint()+this._pbf.pos;return new ca(this._pbf,S,this.extent,this._keys,this._values)};var xa=An;function Zo(I,S,D){if(I===3){var X=new xa(D,D.readVarint()+D.pos);X.length&&(S[X.name]=X)}}Ur.VectorTile=function(I,S){this.layers=I.readFields(Zo,{},S)},Ur.VectorTileFeature=Cn,Ur.VectorTileLayer=An;let ru=Ur.VectorTileFeature.types,yu=Math.pow(2,13);function Du(I,S,D,X,ie,ve,we,We){I.emplaceBack(S,D,2*Math.floor(X*yu)+we,ie*yu*2,ve*yu*2,Math.round(We))}class vu{constructor(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(D=>D.id),this.index=S.index,this.hasPattern=!1,this.layoutVertexArray=new $u,this.centroidVertexArray=new nu,this.indexArray=new se,this.programConfigurations=new Vu(S.layers,S.zoom),this.segments=new st,this.stateDependentLayerIds=this.layers.filter(D=>D.isStateDependent()).map(D=>D.id)}populate(S,D,X){this.features=[],this.hasPattern=bt("fill-extrusion",this.layers,D);for(let{feature:ie,id:ve,index:we,sourceLayerIndex:We}of S){let ut=this.layers[0]._featureFilter.needGeometry,Mt=hf(ie,ut);if(!this.layers[0]._featureFilter.filter(new cs(this.zoom),Mt,X))continue;let $t={id:ve,sourceLayerIndex:We,index:we,geometry:ut?Mt.geometry:lf(ie),properties:ie.properties,type:ie.type,patterns:{}};this.hasPattern?this.features.push(Kt("fill-extrusion",this.layers,$t,this.zoom,D)):this.addFeature($t,$t.geometry,we,X,{}),D.featureIndex.insert(ie,$t.geometry,we,We,this.index,!0)}}addFeatures(S,D,X){for(let ie of this.features){let{geometry:ve}=ie;this.addFeature(ie,ve,ie.index,D,X)}}update(S,D,X){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,D,this.stateDependentLayers,X)}isEmpty(){return this.layoutVertexArray.length===0&&this.centroidVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,Ar),this.centroidVertexBuffer=S.createVertexBuffer(this.centroidVertexArray,Lt.members,!0),this.indexBuffer=S.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(S),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy())}addFeature(S,D,X,ie,ve){for(let we of Ys(D,500)){let We={x:0,y:0,vertexCount:0},ut=0;for(let Jr of we)ut+=Jr.length;let Mt=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(let Jr of we){if(Jr.length===0||Ju(Jr))continue;let ui=0;for(let Gi=0;Gi=1){let Za=Jr[Gi-1];if(!zu(cn,Za)){Mt.vertexLength+4>st.MAX_VERTEX_ARRAY_LENGTH&&(Mt=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));let Rn=cn.sub(Za)._perp()._unit(),La=Za.dist(cn);ui+La>32768&&(ui=0),Du(this.layoutVertexArray,cn.x,cn.y,Rn.x,Rn.y,0,0,ui),Du(this.layoutVertexArray,cn.x,cn.y,Rn.x,Rn.y,0,1,ui),We.x+=2*cn.x,We.y+=2*cn.y,We.vertexCount+=2,ui+=La,Du(this.layoutVertexArray,Za.x,Za.y,Rn.x,Rn.y,0,0,ui),Du(this.layoutVertexArray,Za.x,Za.y,Rn.x,Rn.y,0,1,ui),We.x+=2*Za.x,We.y+=2*Za.y,We.vertexCount+=2;let So=Mt.vertexLength;this.indexArray.emplaceBack(So,So+2,So+1),this.indexArray.emplaceBack(So+1,So+2,So+3),Mt.vertexLength+=4,Mt.primitiveLength+=2}}}}if(Mt.vertexLength+ut>st.MAX_VERTEX_ARRAY_LENGTH&&(Mt=this.segments.prepareSegment(ut,this.layoutVertexArray,this.indexArray)),ru[S.type]!=="Polygon")continue;let $t=[],vr=[],Sr=Mt.vertexLength;for(let Jr of we)if(Jr.length!==0){Jr!==we[0]&&vr.push($t.length/2);for(let ui=0;uiWl)||I.y===S.y&&(I.y<0||I.y>Wl)}function Ju(I){return I.every(S=>S.x<0)||I.every(S=>S.x>Wl)||I.every(S=>S.y<0)||I.every(S=>S.y>Wl)}let Vf;Mi("FillExtrusionBucket",vu,{omit:["layers","features"]});var wd={get paint(){return Vf=Vf||new le({"fill-extrusion-opacity":new ms(ce["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new Os(ce["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new ms(ce["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new ms(ce["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Xl(ce["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new Os(ce["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new Os(ce["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new ms(ce["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})}};class Td extends q{constructor(S){super(S,wd)}createBucket(S){return new vu(S)}queryRadius(){return Ls(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}queryIntersectsFeature(S,D,X,ie,ve,we,We,ut){let Mt=ua(S,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),we.angle,We),$t=this.paint.get("fill-extrusion-height").evaluate(D,X),vr=this.paint.get("fill-extrusion-base").evaluate(D,X),Sr=function(Jr,ui,Gi,cn){let Za=[];for(let Rn of Jr){let La=[Rn.x,Rn.y,0,1];hs(La,La,ui),Za.push(new l(La[0]/La[3],La[1]/La[3]))}return Za}(Mt,ut),Dr=function(Jr,ui,Gi,cn){let Za=[],Rn=[],La=cn[8]*ui,So=cn[9]*ui,kl=cn[10]*ui,mu=cn[11]*ui,Iu=cn[8]*Gi,su=cn[9]*Gi,yl=cn[10]*Gi,Eu=cn[11]*Gi;for(let bu of Jr){let _u=[],Xs=[];for(let Lu of bu){let xu=Lu.x,qu=Lu.y,vc=cn[0]*xu+cn[4]*qu+cn[12],cc=cn[1]*xu+cn[5]*qu+cn[13],zh=cn[2]*xu+cn[6]*qu+cn[14],Qp=cn[3]*xu+cn[7]*qu+cn[15],ud=zh+kl,Ih=Qp+mu,Wd=vc+Iu,jd=cc+su,Xd=zh+yl,$c=Qp+Eu,Rh=new l((vc+La)/Ih,(cc+So)/Ih);Rh.z=ud/Ih,_u.push(Rh);let Cd=new l(Wd/$c,jd/$c);Cd.z=Xd/$c,Xs.push(Cd)}Za.push(_u),Rn.push(Xs)}return[Za,Rn]}(ie,vr,$t,ut);return function(Jr,ui,Gi){let cn=1/0;qt(Gi,ui)&&(cn=Kp(Gi,ui[0]));for(let Za=0;ZaD.id),this.index=S.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(D=>{this.gradients[D.id]={}}),this.layoutVertexArray=new Ku,this.layoutVertexArray2=new Wu,this.indexArray=new se,this.programConfigurations=new Vu(S.layers,S.zoom),this.segments=new st,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(D=>D.isStateDependent()).map(D=>D.id)}populate(S,D,X){this.hasPattern=bt("line",this.layers,D);let ie=this.layers[0].layout.get("line-sort-key"),ve=!ie.isConstant(),we=[];for(let{feature:We,id:ut,index:Mt,sourceLayerIndex:$t}of S){let vr=this.layers[0]._featureFilter.needGeometry,Sr=hf(We,vr);if(!this.layers[0]._featureFilter.filter(new cs(this.zoom),Sr,X))continue;let Dr=ve?ie.evaluate(Sr,{},X):void 0,Jr={id:ut,properties:We.properties,type:We.type,sourceLayerIndex:$t,index:Mt,geometry:vr?Sr.geometry:lf(We),patterns:{},sortKey:Dr};we.push(Jr)}ve&&we.sort((We,ut)=>We.sortKey-ut.sortKey);for(let We of we){let{geometry:ut,index:Mt,sourceLayerIndex:$t}=We;if(this.hasPattern){let vr=Kt("line",this.layers,We,this.zoom,D);this.patternFeatures.push(vr)}else this.addFeature(We,ut,Mt,X,{});D.featureIndex.insert(S[Mt].feature,ut,Mt,$t,this.index)}}update(S,D,X){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,D,this.stateDependentLayers,X)}addFeatures(S,D,X){for(let ie of this.patternFeatures)this.addFeature(ie,ie.geometry,ie.index,D,X)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=S.createVertexBuffer(this.layoutVertexArray2,mv)),this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,vv),this.indexBuffer=S.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(S),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(S){if(S.properties&&Object.prototype.hasOwnProperty.call(S.properties,"mapbox_clip_start")&&Object.prototype.hasOwnProperty.call(S.properties,"mapbox_clip_end"))return{start:+S.properties.mapbox_clip_start,end:+S.properties.mapbox_clip_end}}addFeature(S,D,X,ie,ve){let we=this.layers[0].layout,We=we.get("line-join").evaluate(S,{}),ut=we.get("line-cap"),Mt=we.get("line-miter-limit"),$t=we.get("line-round-limit");this.lineClips=this.lineFeatureClips(S);for(let vr of D)this.addLine(vr,S,We,ut,Mt,$t);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,X,ve,ie)}addLine(S,D,X,ie,ve,we){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let cn=0;cn=2&&S[ut-1].equals(S[ut-2]);)ut--;let Mt=0;for(;Mt0;if(mu&&cn>Mt){let Eu=Sr.dist(Dr);if(Eu>2*$t){let bu=Sr.sub(Sr.sub(Dr)._mult($t/Eu)._round());this.updateDistance(Dr,bu),this.addCurrentVertex(bu,ui,0,0,vr),Dr=bu}}let su=Dr&&Jr,yl=su?X:We?"butt":ie;if(su&&yl==="round"&&(Sove&&(yl="bevel"),yl==="bevel"&&(So>2&&(yl="flipbevel"),So100)Za=Gi.mult(-1);else{let Eu=So*ui.add(Gi).mag()/ui.sub(Gi).mag();Za._perp()._mult(Eu*(Iu?-1:1))}this.addCurrentVertex(Sr,Za,0,0,vr),this.addCurrentVertex(Sr,Za.mult(-1),0,0,vr)}else if(yl==="bevel"||yl==="fakeround"){let Eu=-Math.sqrt(So*So-1),bu=Iu?Eu:0,_u=Iu?0:Eu;if(Dr&&this.addCurrentVertex(Sr,ui,bu,_u,vr),yl==="fakeround"){let Xs=Math.round(180*kl/Math.PI/20);for(let Lu=1;Lu2*$t){let bu=Sr.add(Jr.sub(Sr)._mult($t/Eu)._round());this.updateDistance(Sr,bu),this.addCurrentVertex(bu,Gi,0,0,vr),Sr=bu}}}}addCurrentVertex(S,D,X,ie,ve,we=!1){let We=D.y*ie-D.x,ut=-D.y-D.x*ie;this.addHalfVertex(S,D.x+D.y*X,D.y-D.x*X,we,!1,X,ve),this.addHalfVertex(S,We,ut,we,!0,-ie,ve),this.distance>Pp/2&&this.totalDistance===0&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(S,D,X,ie,ve,we))}addHalfVertex({x:S,y:D},X,ie,ve,we,We,ut){let Mt=.5*(this.lineClips?this.scaledDistance*(Pp-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((S<<1)+(ve?1:0),(D<<1)+(we?1:0),Math.round(63*X)+128,Math.round(63*ie)+128,1+(We===0?0:We<0?-1:1)|(63&Mt)<<2,Mt>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);let $t=ut.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,$t),ut.primitiveLength++),we?this.e2=$t:this.e1=$t}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(S,D){this.distance+=S.dist(D),this.updateScaledDistance()}}let zp,ag;Mi("LineBucket",Jp,{omit:["layers","patternFeatures"]});var cm={get paint(){return ag=ag||new le({"line-opacity":new Os(ce.paint_line["line-opacity"]),"line-color":new Os(ce.paint_line["line-color"]),"line-translate":new ms(ce.paint_line["line-translate"]),"line-translate-anchor":new ms(ce.paint_line["line-translate-anchor"]),"line-width":new Os(ce.paint_line["line-width"]),"line-gap-width":new Os(ce.paint_line["line-gap-width"]),"line-offset":new Os(ce.paint_line["line-offset"]),"line-blur":new Os(ce.paint_line["line-blur"]),"line-dasharray":new Vl(ce.paint_line["line-dasharray"]),"line-pattern":new Xl(ce.paint_line["line-pattern"]),"line-gradient":new Nl(ce.paint_line["line-gradient"])})},get layout(){return zp=zp||new le({"line-cap":new ms(ce.layout_line["line-cap"]),"line-join":new Os(ce.layout_line["line-join"]),"line-miter-limit":new ms(ce.layout_line["line-miter-limit"]),"line-round-limit":new ms(ce.layout_line["line-round-limit"]),"line-sort-key":new Os(ce.layout_line["line-sort-key"])})}};class vh extends Os{possiblyEvaluate(S,D){return D=new cs(Math.floor(D.zoom),{now:D.now,fadeDuration:D.fadeDuration,zoomHistory:D.zoomHistory,transition:D.transition}),super.possiblyEvaluate(S,D)}evaluate(S,D,X,ie){return D=L({},D,{zoom:Math.floor(D.zoom)}),super.evaluate(S,D,X,ie)}}let hm;class og extends q{constructor(S){super(S,cm),this.gradientVersion=0,hm||(hm=new vh(cm.paint.properties["line-width"].specification),hm.useIntegerZoom=!0)}_handleSpecialPaintPropertyUpdate(S){if(S==="line-gradient"){let D=this.gradientExpression();this.stepInterpolant=!!function(X){return X._styleExpression!==void 0}(D)&&D._styleExpression.expression instanceof Xi,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression}recalculate(S,D){super.recalculate(S,D),this.paint._values["line-floorwidth"]=hm.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,S)}createBucket(S){return new Jp(S)}queryRadius(S){let D=S,X=Zh(wn("line-width",this,D),wn("line-gap-width",this,D)),ie=wn("line-offset",this,D);return X/2+Math.abs(ie)+Ls(this.paint.get("line-translate"))}queryIntersectsFeature(S,D,X,ie,ve,we,We){let ut=ua(S,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),we.angle,We),Mt=We/2*Zh(this.paint.get("line-width").evaluate(D,X),this.paint.get("line-gap-width").evaluate(D,X)),$t=this.paint.get("line-offset").evaluate(D,X);return $t&&(ie=function(vr,Sr){let Dr=[];for(let Jr=0;Jr=3){for(let Gi=0;Gi0?S+2*I:I}let iy=Ve([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),b1=Ve([{name:"a_projected_pos",components:3,type:"Float32"}],4);Ve([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);let w1=Ve([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"},{name:"a_box_real",components:2,type:"Int16"}]);Ve([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);let sg=Ve([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),ny=Ve([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function ay(I,S,D){return I.sections.forEach(X=>{X.text=function(ie,ve,we){let We=ve.layout.get("text-transform").evaluate(we,{});return We==="uppercase"?ie=ie.toLocaleUpperCase():We==="lowercase"&&(ie=ie.toLocaleLowerCase()),Js.applyArabicShaping&&(ie=Js.applyArabicShaping(ie)),ie}(X.text,S,D)}),I}Ve([{name:"triangle",components:3,type:"Uint16"}]),Ve([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),Ve([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"}]),Ve([{type:"Float32",name:"offsetX"}]),Ve([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),Ve([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);let wc={"!":"\uFE15","#":"\uFF03",$:"\uFF04","%":"\uFF05","&":"\uFF06","(":"\uFE35",")":"\uFE36","*":"\uFF0A","+":"\uFF0B",",":"\uFE10","-":"\uFE32",".":"\u30FB","/":"\uFF0F",":":"\uFE13",";":"\uFE14","<":"\uFE3F","=":"\uFF1D",">":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};var Wf=24,Ed=ic,lg=function(I,S,D,X,ie){var ve,we,We=8*ie-X-1,ut=(1<>1,$t=-7,vr=D?ie-1:0,Sr=D?-1:1,Dr=I[S+vr];for(vr+=Sr,ve=Dr&(1<<-$t)-1,Dr>>=-$t,$t+=We;$t>0;ve=256*ve+I[S+vr],vr+=Sr,$t-=8);for(we=ve&(1<<-$t)-1,ve>>=-$t,$t+=X;$t>0;we=256*we+I[S+vr],vr+=Sr,$t-=8);if(ve===0)ve=1-Mt;else{if(ve===ut)return we?NaN:1/0*(Dr?-1:1);we+=Math.pow(2,X),ve-=Mt}return(Dr?-1:1)*we*Math.pow(2,ve-X)},T1=function(I,S,D,X,ie,ve){var we,We,ut,Mt=8*ve-ie-1,$t=(1<>1,Sr=ie===23?Math.pow(2,-24)-Math.pow(2,-77):0,Dr=X?0:ve-1,Jr=X?1:-1,ui=S<0||S===0&&1/S<0?1:0;for(S=Math.abs(S),isNaN(S)||S===1/0?(We=isNaN(S)?1:0,we=$t):(we=Math.floor(Math.log(S)/Math.LN2),S*(ut=Math.pow(2,-we))<1&&(we--,ut*=2),(S+=we+vr>=1?Sr/ut:Sr*Math.pow(2,1-vr))*ut>=2&&(we++,ut/=2),we+vr>=$t?(We=0,we=$t):we+vr>=1?(We=(S*ut-1)*Math.pow(2,ie),we+=vr):(We=S*Math.pow(2,vr-1)*Math.pow(2,ie),we=0));ie>=8;I[D+Dr]=255&We,Dr+=Jr,We/=256,ie-=8);for(we=we<0;I[D+Dr]=255&we,Dr+=Jr,we/=256,Mt-=8);I[D+Dr-Jr]|=128*ui};function ic(I){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(I)?I:new Uint8Array(I||0),this.pos=0,this.type=0,this.length=this.buf.length}ic.Varint=0,ic.Fixed64=1,ic.Bytes=2,ic.Fixed32=5;var Nx=4294967296,oy=1/Nx,kw=typeof TextDecoder=="undefined"?null:new TextDecoder("utf-8");function Ip(I){return I.type===ic.Bytes?I.readVarint()+I.pos:I.pos+1}function sy(I,S,D){return D?4294967296*S+(I>>>0):4294967296*(S>>>0)+(I>>>0)}function Cw(I,S,D){var X=S<=16383?1:S<=2097151?2:S<=268435455?3:Math.floor(Math.log(S)/(7*Math.LN2));D.realloc(X);for(var ie=D.pos-1;ie>=I;ie--)D.buf[ie+X]=D.buf[ie]}function Ux(I,S){for(var D=0;D>>8,I[D+2]=S>>>16,I[D+3]=S>>>24}function yC(I,S){return(I[S]|I[S+1]<<8|I[S+2]<<16)+(I[S+3]<<24)}ic.prototype={destroy:function(){this.buf=null},readFields:function(I,S,D){for(D=D||this.length;this.pos>3,ve=this.pos;this.type=7&X,I(ie,S,this),this.pos===ve&&this.skip(X)}return S},readMessage:function(I,S){return this.readFields(I,S,this.readVarint()+this.pos)},readFixed32:function(){var I=ug(this.buf,this.pos);return this.pos+=4,I},readSFixed32:function(){var I=yC(this.buf,this.pos);return this.pos+=4,I},readFixed64:function(){var I=ug(this.buf,this.pos)+ug(this.buf,this.pos+4)*Nx;return this.pos+=8,I},readSFixed64:function(){var I=ug(this.buf,this.pos)+yC(this.buf,this.pos+4)*Nx;return this.pos+=8,I},readFloat:function(){var I=lg(this.buf,this.pos,!0,23,4);return this.pos+=4,I},readDouble:function(){var I=lg(this.buf,this.pos,!0,52,8);return this.pos+=8,I},readVarint:function(I){var S,D,X=this.buf;return S=127&(D=X[this.pos++]),D<128?S:(S|=(127&(D=X[this.pos++]))<<7,D<128?S:(S|=(127&(D=X[this.pos++]))<<14,D<128?S:(S|=(127&(D=X[this.pos++]))<<21,D<128?S:function(ie,ve,we){var We,ut,Mt=we.buf;if(We=(112&(ut=Mt[we.pos++]))>>4,ut<128||(We|=(127&(ut=Mt[we.pos++]))<<3,ut<128)||(We|=(127&(ut=Mt[we.pos++]))<<10,ut<128)||(We|=(127&(ut=Mt[we.pos++]))<<17,ut<128)||(We|=(127&(ut=Mt[we.pos++]))<<24,ut<128)||(We|=(1&(ut=Mt[we.pos++]))<<31,ut<128))return sy(ie,We,ve);throw new Error("Expected varint not more than 10 bytes")}(S|=(15&(D=X[this.pos]))<<28,I,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var I=this.readVarint();return I%2==1?(I+1)/-2:I/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var I=this.readVarint()+this.pos,S=this.pos;return this.pos=I,I-S>=12&&kw?function(D,X,ie){return kw.decode(D.subarray(X,ie))}(this.buf,S,I):function(D,X,ie){for(var ve="",we=X;we239?4:$t>223?3:$t>191?2:1;if(we+Sr>ie)break;Sr===1?$t<128&&(vr=$t):Sr===2?(192&(We=D[we+1]))==128&&(vr=(31&$t)<<6|63&We)<=127&&(vr=null):Sr===3?(ut=D[we+2],(192&(We=D[we+1]))==128&&(192&ut)==128&&((vr=(15&$t)<<12|(63&We)<<6|63&ut)<=2047||vr>=55296&&vr<=57343)&&(vr=null)):Sr===4&&(ut=D[we+2],Mt=D[we+3],(192&(We=D[we+1]))==128&&(192&ut)==128&&(192&Mt)==128&&((vr=(15&$t)<<18|(63&We)<<12|(63&ut)<<6|63&Mt)<=65535||vr>=1114112)&&(vr=null)),vr===null?(vr=65533,Sr=1):vr>65535&&(vr-=65536,ve+=String.fromCharCode(vr>>>10&1023|55296),vr=56320|1023&vr),ve+=String.fromCharCode(vr),we+=Sr}return ve}(this.buf,S,I)},readBytes:function(){var I=this.readVarint()+this.pos,S=this.buf.subarray(this.pos,I);return this.pos=I,S},readPackedVarint:function(I,S){if(this.type!==ic.Bytes)return I.push(this.readVarint(S));var D=Ip(this);for(I=I||[];this.pos127;);else if(S===ic.Bytes)this.pos=this.readVarint()+this.pos;else if(S===ic.Fixed32)this.pos+=4;else{if(S!==ic.Fixed64)throw new Error("Unimplemented type: "+S);this.pos+=8}},writeTag:function(I,S){this.writeVarint(I<<3|S)},realloc:function(I){for(var S=this.length||16;S268435455||I<0?function(S,D){var X,ie;if(S>=0?(X=S%4294967296|0,ie=S/4294967296|0):(ie=~(-S/4294967296),4294967295^(X=~(-S%4294967296))?X=X+1|0:(X=0,ie=ie+1|0)),S>=18446744073709552e3||S<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");D.realloc(10),function(ve,we,We){We.buf[We.pos++]=127&ve|128,ve>>>=7,We.buf[We.pos++]=127&ve|128,ve>>>=7,We.buf[We.pos++]=127&ve|128,ve>>>=7,We.buf[We.pos++]=127&ve|128,We.buf[We.pos]=127&(ve>>>=7)}(X,0,D),function(ve,we){var We=(7&ve)<<4;we.buf[we.pos++]|=We|((ve>>>=3)?128:0),ve&&(we.buf[we.pos++]=127&ve|((ve>>>=7)?128:0),ve&&(we.buf[we.pos++]=127&ve|((ve>>>=7)?128:0),ve&&(we.buf[we.pos++]=127&ve|((ve>>>=7)?128:0),ve&&(we.buf[we.pos++]=127&ve|((ve>>>=7)?128:0),ve&&(we.buf[we.pos++]=127&ve)))))}(ie,D)}(I,this):(this.realloc(4),this.buf[this.pos++]=127&I|(I>127?128:0),I<=127||(this.buf[this.pos++]=127&(I>>>=7)|(I>127?128:0),I<=127||(this.buf[this.pos++]=127&(I>>>=7)|(I>127?128:0),I<=127||(this.buf[this.pos++]=I>>>7&127))))},writeSVarint:function(I){this.writeVarint(I<0?2*-I-1:2*I)},writeBoolean:function(I){this.writeVarint(!!I)},writeString:function(I){I=String(I),this.realloc(4*I.length),this.pos++;var S=this.pos;this.pos=function(X,ie,ve){for(var we,We,ut=0;ut55295&&we<57344){if(!We){we>56319||ut+1===ie.length?(X[ve++]=239,X[ve++]=191,X[ve++]=189):We=we;continue}if(we<56320){X[ve++]=239,X[ve++]=191,X[ve++]=189,We=we;continue}we=We-55296<<10|we-56320|65536,We=null}else We&&(X[ve++]=239,X[ve++]=191,X[ve++]=189,We=null);we<128?X[ve++]=we:(we<2048?X[ve++]=we>>6|192:(we<65536?X[ve++]=we>>12|224:(X[ve++]=we>>18|240,X[ve++]=we>>12&63|128),X[ve++]=we>>6&63|128),X[ve++]=63&we|128)}return ve}(this.buf,I,this.pos);var D=this.pos-S;D>=128&&Cw(S,D,this),this.pos=S-1,this.writeVarint(D),this.pos+=D},writeFloat:function(I){this.realloc(4),T1(this.buf,I,this.pos,!0,23,4),this.pos+=4},writeDouble:function(I){this.realloc(8),T1(this.buf,I,this.pos,!0,52,8),this.pos+=8},writeBytes:function(I){var S=I.length;this.writeVarint(S),this.realloc(S);for(var D=0;D=128&&Cw(D,X,this),this.pos=D-1,this.writeVarint(X),this.pos+=X},writeMessage:function(I,S,D){this.writeTag(I,ic.Bytes),this.writeRawMessage(S,D)},writePackedVarint:function(I,S){S.length&&this.writeMessage(I,Ux,S)},writePackedSVarint:function(I,S){S.length&&this.writeMessage(I,ZO,S)},writePackedBoolean:function(I,S){S.length&&this.writeMessage(I,JO,S)},writePackedFloat:function(I,S){S.length&&this.writeMessage(I,YO,S)},writePackedDouble:function(I,S){S.length&&this.writeMessage(I,KO,S)},writePackedFixed32:function(I,S){S.length&&this.writeMessage(I,VQ,S)},writePackedSFixed32:function(I,S){S.length&&this.writeMessage(I,$O,S)},writePackedFixed64:function(I,S){S.length&&this.writeMessage(I,QO,S)},writePackedSFixed64:function(I,S){S.length&&this.writeMessage(I,e9,S)},writeBytesField:function(I,S){this.writeTag(I,ic.Bytes),this.writeBytes(S)},writeFixed32Field:function(I,S){this.writeTag(I,ic.Fixed32),this.writeFixed32(S)},writeSFixed32Field:function(I,S){this.writeTag(I,ic.Fixed32),this.writeSFixed32(S)},writeFixed64Field:function(I,S){this.writeTag(I,ic.Fixed64),this.writeFixed64(S)},writeSFixed64Field:function(I,S){this.writeTag(I,ic.Fixed64),this.writeSFixed64(S)},writeVarintField:function(I,S){this.writeTag(I,ic.Varint),this.writeVarint(S)},writeSVarintField:function(I,S){this.writeTag(I,ic.Varint),this.writeSVarint(S)},writeStringField:function(I,S){this.writeTag(I,ic.Bytes),this.writeString(S)},writeFloatField:function(I,S){this.writeTag(I,ic.Fixed32),this.writeFloat(S)},writeDoubleField:function(I,S){this.writeTag(I,ic.Fixed64),this.writeDouble(S)},writeBooleanField:function(I,S){this.writeVarintField(I,!!S)}};var nM=o(Ed);let aM=3;function GQ(I,S,D){I===1&&D.readMessage(t9,S)}function t9(I,S,D){if(I===3){let{id:X,bitmap:ie,width:ve,height:we,left:We,top:ut,advance:Mt}=D.readMessage(gC,{});S.push({id:X,bitmap:new ul({width:ve+2*aM,height:we+2*aM},ie),metrics:{width:ve,height:we,left:We,top:ut,advance:Mt}})}}function gC(I,S,D){I===1?S.id=D.readVarint():I===2?S.bitmap=D.readBytes():I===3?S.width=D.readVarint():I===4?S.height=D.readVarint():I===5?S.left=D.readSVarint():I===6?S.top=D.readSVarint():I===7&&(S.advance=D.readVarint())}let _C=aM;function oM(I){let S=0,D=0;for(let we of I)S+=we.w*we.h,D=Math.max(D,we.w);I.sort((we,We)=>We.h-we.h);let X=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(S/.95)),D),h:1/0}],ie=0,ve=0;for(let we of I)for(let We=X.length-1;We>=0;We--){let ut=X[We];if(!(we.w>ut.w||we.h>ut.h)){if(we.x=ut.x,we.y=ut.y,ve=Math.max(ve,we.y+we.h),ie=Math.max(ie,we.x+we.w),we.w===ut.w&&we.h===ut.h){let Mt=X.pop();We=0&&X>=S&&zw[this.text.charCodeAt(X)];X--)D--;this.text=this.text.substring(S,D),this.sectionIndex=this.sectionIndex.slice(S,D)}substring(S,D){let X=new A1;return X.text=this.text.substring(S,D),X.sectionIndex=this.sectionIndex.slice(S,D),X.sections=this.sections,X}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce((S,D)=>Math.max(S,this.sections[D].scale),0)}addTextSection(S,D){this.text+=S.text,this.sections.push(Gx.forText(S.scale,S.fontStack||D));let X=this.sections.length-1;for(let ie=0;ie=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Hx(I,S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr){let ui=A1.fromFeature(I,ie),Gi;vr===i.ah.vertical&&ui.verticalizePunctuation();let{processBidirectionalText:cn,processStyledBidirectionalText:Za}=Js;if(cn&&ui.sections.length===1){Gi=[];let So=cn(ui.toString(),S1(ui,Mt,ve,S,X,Dr));for(let kl of So){let mu=new A1;mu.text=kl,mu.sections=ui.sections;for(let Iu=0;Iu0&&tv>ih&&(ih=tv)}else{let Rc=mu[jf.fontStack],fh=Rc&&Rc[mc];if(fh&&fh.rect)P1=fh.rect,Hc=fh.metrics;else{let tv=kl[jf.fontStack],mm=tv&&tv[mc];if(!mm)continue;Hc=mm.metrics}Fp=(Rh-jf.scale)*Wf}ev?(So.verticalizable=!0,Yh.push({glyph:mc,imageName:p0,x:qu,y:vc+Fp,vertical:ev,scale:jf.scale,fontStack:jf.fontStack,sectionIndex:Tc,metrics:Hc,rect:P1}),qu+=Gv*jf.scale+Xs):(Yh.push({glyph:mc,imageName:p0,x:qu,y:vc+Fp,vertical:ev,scale:jf.scale,fontStack:jf.fontStack,sectionIndex:Tc,metrics:Hc,rect:P1}),qu+=Hc.advance*jf.scale+Xs)}Yh.length!==0&&(cc=Math.max(qu-Xs,cc),ly(Yh,0,Yh.length-1,Qp,ih)),qu=0;let Dp=yl*Rh+ih;fd.lineOffset=Math.max(ih,Cd),vc+=Dp,zh=Math.max(Dp,zh),++ud}var Ih;let Wd=vc-Ph,{horizontalAlign:jd,verticalAlign:Xd}=Rw(Eu);(function($c,Rh,Cd,fd,Yh,ih,Dp,fp,jf){let Tc=(Rh-Cd)*Yh,mc=0;mc=ih!==Dp?-fp*fd-Ph:(-fd*jf+.5)*Dp;for(let Fp of $c)for(let Hc of Fp.positionedGlyphs)Hc.x+=Tc,Hc.y+=mc})(So.positionedLines,Qp,jd,Xd,cc,zh,yl,Wd,su.length),So.top+=-Xd*Wd,So.bottom=So.top+Wd,So.left+=-jd*cc,So.right=So.left+cc}(La,S,D,X,Gi,we,We,ut,vr,Mt,Sr,Jr),!function(So){for(let kl of So)if(kl.positionedGlyphs.length!==0)return!1;return!0}(Rn)&&La}let zw={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},r9={10:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},i9={40:!0};function xC(I,S,D,X,ie,ve){if(S.imageName){let we=X[S.imageName];return we?we.displaySize[0]*S.scale*Wf/ve+ie:0}{let we=D[S.fontStack],We=we&&we[I];return We?We.metrics.advance*S.scale+ie:0}}function bC(I,S,D,X){let ie=Math.pow(I-S,2);return X?I=0,Mt=0;for(let vr=0;vrMt){let $t=Math.ceil(ve/Mt);ie*=$t/we,we=$t}return{x1:X,y1:ie,x2:X+ve,y2:ie+we}}function AC(I,S,D,X,ie,ve){let we=I.image,We;if(we.content){let Gi=we.content,cn=we.pixelRatio||1;We=[Gi[0]/cn,Gi[1]/cn,we.displaySize[0]-Gi[2]/cn,we.displaySize[1]-Gi[3]/cn]}let ut=S.left*ve,Mt=S.right*ve,$t,vr,Sr,Dr;D==="width"||D==="both"?(Dr=ie[0]+ut-X[3],vr=ie[0]+Mt+X[1]):(Dr=ie[0]+(ut+Mt-we.displaySize[0])/2,vr=Dr+we.displaySize[0]);let Jr=S.top*ve,ui=S.bottom*ve;return D==="height"||D==="both"?($t=ie[1]+Jr-X[0],Sr=ie[1]+ui+X[2]):($t=ie[1]+(Jr+ui-we.displaySize[1])/2,Sr=$t+we.displaySize[1]),{image:we,top:$t,right:vr,bottom:Sr,left:Dr,collisionPadding:We}}let jx=255,d0=128,uy=jx*d0;function SC(I,S){let{expression:D}=S;if(D.kind==="constant")return{kind:"constant",layoutSize:D.evaluate(new cs(I+1))};if(D.kind==="source")return{kind:"source"};{let{zoomStops:X,interpolationType:ie}=D,ve=0;for(;vewe.id),this.index=S.index,this.pixelRatio=S.pixelRatio,this.sourceLayerIndex=S.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=En([]),this.placementViewportMatrix=En([]);let D=this.layers[0]._unevaluatedLayout._values;this.textSizeData=SC(this.zoom,D["text-size"]),this.iconSizeData=SC(this.zoom,D["icon-size"]);let X=this.layers[0].layout,ie=X.get("symbol-sort-key"),ve=X.get("symbol-z-order");this.canOverlap=sM(X,"text-overlap","text-allow-overlap")!=="never"||sM(X,"icon-overlap","icon-allow-overlap")!=="never"||X.get("text-ignore-placement")||X.get("icon-ignore-placement"),this.sortFeaturesByKey=ve!=="viewport-y"&&!ie.isConstant(),this.sortFeaturesByY=(ve==="viewport-y"||ve==="auto"&&!this.sortFeaturesByKey)&&this.canOverlap,X.get("symbol-placement")==="point"&&(this.writingModes=X.get("text-writing-mode").map(we=>i.ah[we])),this.stateDependentLayerIds=this.layers.filter(we=>we.isStateDependent()).map(we=>we.id),this.sourceID=S.sourceID}createArrays(){this.text=new fM(new Vu(this.layers,this.zoom,S=>/^text/.test(S))),this.icon=new fM(new Vu(this.layers,this.zoom,S=>/^icon/.test(S))),this.glyphOffsetArray=new au,this.lineVertexArray=new Sl,this.symbolInstances=new ml,this.textAnchorOffsets=new Ol}calculateGlyphDependencies(S,D,X,ie,ve){for(let we=0;we0)&&(we.value.kind!=="constant"||we.value.value.length>0),$t=ut.value.kind!=="constant"||!!ut.value.value||Object.keys(ut.parameters).length>0,vr=ve.get("symbol-sort-key");if(this.features=[],!Mt&&!$t)return;let Sr=D.iconDependencies,Dr=D.glyphDependencies,Jr=D.availableImages,ui=new cs(this.zoom);for(let{feature:Gi,id:cn,index:Za,sourceLayerIndex:Rn}of S){let La=ie._featureFilter.needGeometry,So=hf(Gi,La);if(!ie._featureFilter.filter(ui,So,X))continue;let kl,mu;if(La||(So.geometry=lf(Gi)),Mt){let su=ie.getValueAndResolveTokens("text-field",So,X,Jr),yl=Nr.factory(su),Eu=this.hasRTLText=this.hasRTLText||uM(yl);(!Eu||Js.getRTLTextPluginStatus()==="unavailable"||Eu&&Js.isParsed())&&(kl=ay(yl,ie,So))}if($t){let su=ie.getValueAndResolveTokens("icon-image",So,X,Jr);mu=su instanceof gi?su:gi.fromString(su)}if(!kl&&!mu)continue;let Iu=this.sortFeaturesByKey?vr.evaluate(So,{},X):void 0;if(this.features.push({id:cn,text:kl,icon:mu,index:Za,sourceLayerIndex:Rn,geometry:So.geometry,properties:Gi.properties,type:a9[Gi.type],sortKey:Iu}),mu&&(Sr[mu.name]=!0),kl){let su=we.evaluate(So,{},X).join(","),yl=ve.get("text-rotation-alignment")!=="viewport"&&ve.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(i.ah.vertical)>=0;for(let Eu of kl.sections)if(Eu.image)Sr[Eu.image.name]=!0;else{let bu=is(kl.toString()),_u=Eu.fontStack||su,Xs=Dr[_u]=Dr[_u]||{};this.calculateGlyphDependencies(Eu.text,Xs,yl,this.allowVerticalPlacement,bu)}}}ve.get("symbol-placement")==="line"&&(this.features=function(Gi){let cn={},Za={},Rn=[],La=0;function So(su){Rn.push(Gi[su]),La++}function kl(su,yl,Eu){let bu=Za[su];return delete Za[su],Za[yl]=bu,Rn[bu].geometry[0].pop(),Rn[bu].geometry[0]=Rn[bu].geometry[0].concat(Eu[0]),bu}function mu(su,yl,Eu){let bu=cn[yl];return delete cn[yl],cn[su]=bu,Rn[bu].geometry[0].shift(),Rn[bu].geometry[0]=Eu[0].concat(Rn[bu].geometry[0]),bu}function Iu(su,yl,Eu){let bu=Eu?yl[0][yl[0].length-1]:yl[0][0];return`${su}:${bu.x}:${bu.y}`}for(let su=0;susu.geometry)}(this.features)),this.sortFeaturesByKey&&this.features.sort((Gi,cn)=>Gi.sortKey-cn.sortKey)}update(S,D,X){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(S,D,this.layers,X),this.icon.programConfigurations.updatePaintArrays(S,D,this.layers,X))}isEmpty(){return this.symbolInstances.length===0&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(S){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(S),this.iconCollisionBox.upload(S)),this.text.upload(S,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(S,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(S,D){let X=this.lineVertexArray.length;if(S.segment!==void 0){let ie=S.dist(D[S.segment+1]),ve=S.dist(D[S.segment]),we={};for(let We=S.segment+1;We=0;We--)we[We]={x:D[We].x,y:D[We].y,tileUnitDistanceFromAnchor:ve},We>0&&(ve+=D[We-1].dist(D[We]));for(let We=0;We0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(S,D){let X=S.placedSymbolArray.get(D),ie=X.vertexStartIndex+4*X.numGlyphs;for(let ve=X.vertexStartIndex;veie[We]-ie[ut]||ve[ut]-ve[We]),we}addToSortKeyRanges(S,D){let X=this.sortKeyRanges[this.sortKeyRanges.length-1];X&&X.sortKey===D?X.symbolInstanceEnd=S+1:this.sortKeyRanges.push({sortKey:D,symbolInstanceStart:S,symbolInstanceEnd:S+1})}sortFeatures(S){if(this.sortFeaturesByY&&this.sortedAngle!==S&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(S),this.sortedAngle=S,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(let D of this.symbolInstanceIndexes){let X=this.symbolInstances.get(D);this.featureSortOrder.push(X.featureIndex),[X.rightJustifiedTextSymbolIndex,X.centerJustifiedTextSymbolIndex,X.leftJustifiedTextSymbolIndex].forEach((ie,ve,we)=>{ie>=0&&we.indexOf(ie)===ve&&this.addIndicesForPlacedSymbol(this.text,ie)}),X.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,X.verticalPlacedTextSymbolIndex),X.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,X.placedIconSymbolIndex),X.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,X.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}let Jc,Xx;Mi("SymbolBucket",M1,{omit:["layers","collisionBoxArray","features","compareText"]}),M1.MAX_GLYPHS=65535,M1.addDynamicAttributes=lM;var Fw={get paint(){return Xx=Xx||new le({"icon-opacity":new Os(ce.paint_symbol["icon-opacity"]),"icon-color":new Os(ce.paint_symbol["icon-color"]),"icon-halo-color":new Os(ce.paint_symbol["icon-halo-color"]),"icon-halo-width":new Os(ce.paint_symbol["icon-halo-width"]),"icon-halo-blur":new Os(ce.paint_symbol["icon-halo-blur"]),"icon-translate":new ms(ce.paint_symbol["icon-translate"]),"icon-translate-anchor":new ms(ce.paint_symbol["icon-translate-anchor"]),"text-opacity":new Os(ce.paint_symbol["text-opacity"]),"text-color":new Os(ce.paint_symbol["text-color"],{runtimeType:et,getOverride:I=>I.textColor,hasOverride:I=>!!I.textColor}),"text-halo-color":new Os(ce.paint_symbol["text-halo-color"]),"text-halo-width":new Os(ce.paint_symbol["text-halo-width"]),"text-halo-blur":new Os(ce.paint_symbol["text-halo-blur"]),"text-translate":new ms(ce.paint_symbol["text-translate"]),"text-translate-anchor":new ms(ce.paint_symbol["text-translate-anchor"])})},get layout(){return Jc=Jc||new le({"symbol-placement":new ms(ce.layout_symbol["symbol-placement"]),"symbol-spacing":new ms(ce.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new ms(ce.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new Os(ce.layout_symbol["symbol-sort-key"]),"symbol-z-order":new ms(ce.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new ms(ce.layout_symbol["icon-allow-overlap"]),"icon-overlap":new ms(ce.layout_symbol["icon-overlap"]),"icon-ignore-placement":new ms(ce.layout_symbol["icon-ignore-placement"]),"icon-optional":new ms(ce.layout_symbol["icon-optional"]),"icon-rotation-alignment":new ms(ce.layout_symbol["icon-rotation-alignment"]),"icon-size":new Os(ce.layout_symbol["icon-size"]),"icon-text-fit":new ms(ce.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new ms(ce.layout_symbol["icon-text-fit-padding"]),"icon-image":new Os(ce.layout_symbol["icon-image"]),"icon-rotate":new Os(ce.layout_symbol["icon-rotate"]),"icon-padding":new Os(ce.layout_symbol["icon-padding"]),"icon-keep-upright":new ms(ce.layout_symbol["icon-keep-upright"]),"icon-offset":new Os(ce.layout_symbol["icon-offset"]),"icon-anchor":new Os(ce.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new ms(ce.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new ms(ce.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new ms(ce.layout_symbol["text-rotation-alignment"]),"text-field":new Os(ce.layout_symbol["text-field"]),"text-font":new Os(ce.layout_symbol["text-font"]),"text-size":new Os(ce.layout_symbol["text-size"]),"text-max-width":new Os(ce.layout_symbol["text-max-width"]),"text-line-height":new ms(ce.layout_symbol["text-line-height"]),"text-letter-spacing":new Os(ce.layout_symbol["text-letter-spacing"]),"text-justify":new Os(ce.layout_symbol["text-justify"]),"text-radial-offset":new Os(ce.layout_symbol["text-radial-offset"]),"text-variable-anchor":new ms(ce.layout_symbol["text-variable-anchor"]),"text-variable-anchor-offset":new Os(ce.layout_symbol["text-variable-anchor-offset"]),"text-anchor":new Os(ce.layout_symbol["text-anchor"]),"text-max-angle":new ms(ce.layout_symbol["text-max-angle"]),"text-writing-mode":new ms(ce.layout_symbol["text-writing-mode"]),"text-rotate":new Os(ce.layout_symbol["text-rotate"]),"text-padding":new ms(ce.layout_symbol["text-padding"]),"text-keep-upright":new ms(ce.layout_symbol["text-keep-upright"]),"text-transform":new Os(ce.layout_symbol["text-transform"]),"text-offset":new Os(ce.layout_symbol["text-offset"]),"text-allow-overlap":new ms(ce.layout_symbol["text-allow-overlap"]),"text-overlap":new ms(ce.layout_symbol["text-overlap"]),"text-ignore-placement":new ms(ce.layout_symbol["text-ignore-placement"]),"text-optional":new ms(ce.layout_symbol["text-optional"])})}};class Zx{constructor(S){if(S.property.overrides===void 0)throw new Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=S.property.overrides?S.property.overrides.runtimeType:vt,this.defaultValue=S}evaluate(S){if(S.formattedSection){let D=this.defaultValue.property.overrides;if(D&&D.hasOverride(S.formattedSection))return D.getOverride(S.formattedSection)}return S.feature&&S.featureState?this.defaultValue.evaluate(S.feature,S.featureState):this.defaultValue.property.specification.default}eachChild(S){this.defaultValue.isConstant()||S(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}Mi("FormatSectionOverride",Zx,{omit:["defaultValue"]});class fg extends q{constructor(S){super(S,Fw)}recalculate(S,D){if(super.recalculate(S,D),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout._values["icon-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout._values["text-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")==="map"?"map":"viewport"),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){let X=this.layout.get("text-writing-mode");if(X){let ie=[];for(let ve of X)ie.indexOf(ve)<0&&ie.push(ve);this.layout._values["text-writing-mode"]=ie}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()}getValueAndResolveTokens(S,D,X,ie){let ve=this.layout.get(S).evaluate(D,{},X,ie),we=this._unevaluatedLayout._values[S];return we.isDataDriven()||Qs(we.value)||!ve?ve:function(We,ut){return ut.replace(/{([^{}]+)}/g,(Mt,$t)=>We&&$t in We?String(We[$t]):"")}(D.properties,ve)}createBucket(S){return new M1(S)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error("Should take a different path in FeatureIndex")}_setPaintOverrides(){for(let S of Fw.paint.overridableProperties){if(!fg.hasPaintOverride(this.layout,S))continue;let D=this.paint.get(S),X=new Zx(D),ie=new Ma(X,D.property.specification),ve=null;ve=D.value.kind==="constant"||D.value.kind==="source"?new gs("source",ie):new Vo("composite",ie,D.value.zoomStops),this.paint._values[S]=new Tl(D.property,ve,D.parameters)}}_handleOverridablePaintPropertyUpdate(S,D,X){return!(!this.layout||D.isDataDriven()||X.isDataDriven())&&fg.hasPaintOverride(this.layout,S)}static hasPaintOverride(S,D){let X=S.get("text-field"),ie=Fw.paint.properties[D],ve=!1,we=We=>{for(let ut of We)if(ie.overrides&&ie.overrides.hasOverride(ut))return void(ve=!0)};if(X.value.kind==="constant"&&X.value.value instanceof Nr)we(X.value.value.sections);else if(X.value.kind==="source"){let We=Mt=>{ve||(Mt instanceof Yr&&ti(Mt.value)===_r?we(Mt.value.sections):Mt instanceof wa?we(Mt.sections):Mt.eachChild(We))},ut=X.value;ut._styleExpression&&We(ut._styleExpression.expression)}return ve}}let MC;var Yx={get paint(){return MC=MC||new le({"background-color":new ms(ce.paint_background["background-color"]),"background-pattern":new Vl(ce.paint_background["background-pattern"]),"background-opacity":new ms(ce.paint_background["background-opacity"])})}};class s9 extends q{constructor(S){super(S,Yx)}}let cM;var EC={get paint(){return cM=cM||new le({"raster-opacity":new ms(ce.paint_raster["raster-opacity"]),"raster-hue-rotate":new ms(ce.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new ms(ce.paint_raster["raster-brightness-min"]),"raster-brightness-max":new ms(ce.paint_raster["raster-brightness-max"]),"raster-saturation":new ms(ce.paint_raster["raster-saturation"]),"raster-contrast":new ms(ce.paint_raster["raster-contrast"]),"raster-resampling":new ms(ce.paint_raster["raster-resampling"]),"raster-fade-duration":new ms(ce.paint_raster["raster-fade-duration"])})}};class Kx extends q{constructor(S){super(S,EC)}}class hM extends q{constructor(S){super(S,{}),this.onAdd=D=>{this.implementation.onAdd&&this.implementation.onAdd(D,D.painter.context.gl)},this.onRemove=D=>{this.implementation.onRemove&&this.implementation.onRemove(D,D.painter.context.gl)},this.implementation=S}is3D(){return this.implementation.renderingMode==="3d"}hasOffscreenPass(){return this.implementation.prerender!==void 0}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){throw new Error("Custom layers cannot be serialized")}}class dM{constructor(S){this._methodToThrottle=S,this._triggered=!1,typeof MessageChannel!="undefined"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(()=>{this._triggered=!1,this._methodToThrottle()},0))}remove(){delete this._channel,this._methodToThrottle=()=>{}}}let pM=63710088e-1;class dm{constructor(S,D){if(isNaN(S)||isNaN(D))throw new Error(`Invalid LngLat object: (${S}, ${D})`);if(this.lng=+S,this.lat=+D,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new dm(A(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(S){let D=Math.PI/180,X=this.lat*D,ie=S.lat*D,ve=Math.sin(X)*Math.sin(ie)+Math.cos(X)*Math.cos(ie)*Math.cos((S.lng-this.lng)*D);return pM*Math.acos(Math.min(ve,1))}static convert(S){if(S instanceof dm)return S;if(Array.isArray(S)&&(S.length===2||S.length===3))return new dm(Number(S[0]),Number(S[1]));if(!Array.isArray(S)&&typeof S=="object"&&S!==null)return new dm(Number("lng"in S?S.lng:S.lon),Number(S.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")}}let E1=2*Math.PI*pM;function kC(I){return E1*Math.cos(I*Math.PI/180)}function Bw(I){return(180+I)/360}function CC(I){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+I*Math.PI/360)))/360}function Ow(I,S){return I/kC(S)}function Jx(I){return 360/Math.PI*Math.atan(Math.exp((180-360*I)*Math.PI/180))-90}class $x{constructor(S,D,X=0){this.x=+S,this.y=+D,this.z=+X}static fromLngLat(S,D=0){let X=dm.convert(S);return new $x(Bw(X.lng),CC(X.lat),Ow(D,X.lat))}toLngLat(){return new dm(360*this.x-180,Jx(this.y))}toAltitude(){return this.z*kC(Jx(this.y))}meterInMercatorCoordinateUnits(){return 1/E1*(S=Jx(this.y),1/Math.cos(S*Math.PI/180));var S}}function yv(I,S,D){var X=2*Math.PI*6378137/256/Math.pow(2,D);return[I*X-2*Math.PI*6378137/2,S*X-2*Math.PI*6378137/2]}class vM{constructor(S,D,X){if(!function(ie,ve,we){return!(ie<0||ie>25||we<0||we>=Math.pow(2,ie)||ve<0||ve>=Math.pow(2,ie))}(S,D,X))throw new Error(`x=${D}, y=${X}, z=${S} outside of bounds. 0<=x<${Math.pow(2,S)}, 0<=y<${Math.pow(2,S)} 0<=z<=25 `);this.z=S,this.x=D,this.y=X,this.key=Qx(0,S,S,D,X)}equals(S){return this.z===S.z&&this.x===S.x&&this.y===S.y}url(S,D,X){let ie=(we=this.y,We=this.z,ut=yv(256*(ve=this.x),256*(we=Math.pow(2,We)-we-1),We),Mt=yv(256*(ve+1),256*(we+1),We),ut[0]+","+ut[1]+","+Mt[0]+","+Mt[1]);var ve,we,We,ut,Mt;let $t=function(vr,Sr,Dr){let Jr,ui="";for(let Gi=vr;Gi>0;Gi--)Jr=1<1?"@2x":"").replace(/{quadkey}/g,$t).replace(/{bbox-epsg-3857}/g,ie)}isChildOf(S){let D=this.z-S.z;return D>0&&S.x===this.x>>D&&S.y===this.y>>D}getTilePoint(S){let D=Math.pow(2,this.z);return new l((S.x*D-this.x)*Wl,(S.y*D-this.y)*Wl)}toString(){return`${this.z}/${this.x}/${this.y}`}}class LC{constructor(S,D){this.wrap=S,this.canonical=D,this.key=Qx(S,D.z,D.z,D.x,D.y)}}class $p{constructor(S,D,X,ie,ve){if(S= z; overscaledZ = ${S}; z = ${X}`);this.overscaledZ=S,this.wrap=D,this.canonical=new vM(X,+ie,+ve),this.key=Qx(D,S,X,ie,ve)}clone(){return new $p(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(S){return this.overscaledZ===S.overscaledZ&&this.wrap===S.wrap&&this.canonical.equals(S.canonical)}scaledTo(S){if(S>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${S}; overscaledZ = ${this.overscaledZ}`);let D=this.canonical.z-S;return S>this.canonical.z?new $p(S,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new $p(S,this.wrap,S,this.canonical.x>>D,this.canonical.y>>D)}calculateScaledKey(S,D){if(S>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${S}; overscaledZ = ${this.overscaledZ}`);let X=this.canonical.z-S;return S>this.canonical.z?Qx(this.wrap*+D,S,this.canonical.z,this.canonical.x,this.canonical.y):Qx(this.wrap*+D,S,S,this.canonical.x>>X,this.canonical.y>>X)}isChildOf(S){if(S.wrap!==this.wrap)return!1;let D=this.canonical.z-S.canonical.z;return S.overscaledZ===0||S.overscaledZ>D&&S.canonical.y===this.canonical.y>>D}children(S){if(this.overscaledZ>=S)return[new $p(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];let D=this.canonical.z+1,X=2*this.canonical.x,ie=2*this.canonical.y;return[new $p(D,this.wrap,D,X,ie),new $p(D,this.wrap,D,X+1,ie),new $p(D,this.wrap,D,X,ie+1),new $p(D,this.wrap,D,X+1,ie+1)]}isLessThan(S){return this.wrapS.wrap)&&(this.overscaledZS.overscaledZ)&&(this.canonical.xS.canonical.x)&&this.canonical.ythis.max&&(this.max=vr),vr=this.dim+1||D<-1||D>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(D+1)*this.stride+(S+1)}unpack(S,D,X){return S*this.redFactor+D*this.greenFactor+X*this.blueFactor-this.baseShift}getPixels(){return new Qn({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(S,D,X){if(this.dim!==S.dim)throw new Error("dem dimension mismatch");let ie=D*this.dim,ve=D*this.dim+this.dim,we=X*this.dim,We=X*this.dim+this.dim;switch(D){case-1:ie=ve-1;break;case 1:ve=ie+1}switch(X){case-1:we=We-1;break;case 1:We=we+1}let ut=-D*this.dim,Mt=-X*this.dim;for(let $t=we;$t=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${S} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[S]}}class mM{constructor(S,D,X,ie,ve){this.type="Feature",this._vectorTileFeature=S,S._z=D,S._x=X,S._y=ie,this.properties=S.properties,this.id=ve}get geometry(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(S){this._geometry=S}toJSON(){let S={geometry:this.geometry};for(let D in this)D!=="_geometry"&&D!=="_vectorTileFeature"&&(S[D]=this[D]);return S}}class cg{constructor(S,D){this.tileID=S,this.x=S.canonical.x,this.y=S.canonical.y,this.z=S.canonical.z,this.grid=new di(Wl,16,0),this.grid3D=new di(Wl,16,0),this.featureIndexArray=new Pu,this.promoteId=D}insert(S,D,X,ie,ve,we){let We=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(X,ie,ve);let ut=we?this.grid3D:this.grid;for(let Mt=0;Mt=0&&vr[3]>=0&&ut.insert(We,vr[0],vr[1],vr[2],vr[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new Ur.VectorTile(new nM(this.rawTileData)).layers,this.sourceLayerCoder=new zC(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(S,D,X,ie){this.loadVTLayers();let ve=S.params||{},we=Wl/S.tileSize/S.scale,We=Jn(ve.filter),ut=S.queryGeometry,Mt=S.queryPadding*we,$t=RC(ut),vr=this.grid.query($t.minX-Mt,$t.minY-Mt,$t.maxX+Mt,$t.maxY+Mt),Sr=RC(S.cameraQueryGeometry),Dr=this.grid3D.query(Sr.minX-Mt,Sr.minY-Mt,Sr.maxX+Mt,Sr.maxY+Mt,(Gi,cn,Za,Rn)=>function(La,So,kl,mu,Iu){for(let yl of La)if(So<=yl.x&&kl<=yl.y&&mu>=yl.x&&Iu>=yl.y)return!0;let su=[new l(So,kl),new l(So,Iu),new l(mu,Iu),new l(mu,kl)];if(La.length>2){for(let yl of su)if(Bn(La,yl))return!0}for(let yl=0;yl(Rn||(Rn=lf(La)),So.queryIntersectsFeature(ut,La,kl,Rn,this.z,S.transform,we,S.pixelPosMatrix)))}return Jr}loadMatchingFeature(S,D,X,ie,ve,we,We,ut,Mt,$t,vr){let Sr=this.bucketLayerIDs[D];if(we&&!function(Gi,cn){for(let Za=0;Za=0)return!0;return!1}(we,Sr))return;let Dr=this.sourceLayerCoder.decode(X),Jr=this.vtLayers[Dr].feature(ie);if(ve.needGeometry){let Gi=hf(Jr,!0);if(!ve.filter(new cs(this.tileID.overscaledZ),Gi,this.tileID.canonical))return}else if(!ve.filter(new cs(this.tileID.overscaledZ),Jr))return;let ui=this.getId(Jr,Dr);for(let Gi=0;Gi{let We=S instanceof Ll?S.get(we):null;return We&&We.evaluate?We.evaluate(D,X,ie):We})}function RC(I){let S=1/0,D=1/0,X=-1/0,ie=-1/0;for(let ve of I)S=Math.min(S,ve.x),D=Math.min(D,ve.y),X=Math.max(X,ve.x),ie=Math.max(ie,ve.y);return{minX:S,minY:D,maxX:X,maxY:ie}}function l9(I,S){return S-I}function DC(I,S,D,X,ie){let ve=[];for(let we=0;we=X&&vr.x>=X||($t.x>=X?$t=new l(X,$t.y+(X-$t.x)/(vr.x-$t.x)*(vr.y-$t.y))._round():vr.x>=X&&(vr=new l(X,$t.y+(X-$t.x)/(vr.x-$t.x)*(vr.y-$t.y))._round()),$t.y>=ie&&vr.y>=ie||($t.y>=ie?$t=new l($t.x+(ie-$t.y)/(vr.y-$t.y)*(vr.x-$t.x),ie)._round():vr.y>=ie&&(vr=new l($t.x+(ie-$t.y)/(vr.y-$t.y)*(vr.x-$t.x),ie)._round()),ut&&$t.equals(ut[ut.length-1])||(ut=[$t],ve.push(ut)),ut.push(vr)))))}}return ve}Mi("FeatureIndex",cg,{omit:["rawTileData","sourceLayerCoder"]});class pm extends l{constructor(S,D,X,ie){super(S,D),this.angle=X,ie!==void 0&&(this.segment=ie)}clone(){return new pm(this.x,this.y,this.angle,this.segment)}}function yM(I,S,D,X,ie){if(S.segment===void 0||D===0)return!0;let ve=S,we=S.segment+1,We=0;for(;We>-D/2;){if(we--,we<0)return!1;We-=I[we].dist(ve),ve=I[we]}We+=I[we].dist(I[we+1]),we++;let ut=[],Mt=0;for(;WeX;)Mt-=ut.shift().angleDelta;if(Mt>ie)return!1;we++,We+=$t.dist(vr)}return!0}function FC(I){let S=0;for(let D=0;DMt){let Jr=(Mt-ut)/Dr,ui=ka.number(vr.x,Sr.x,Jr),Gi=ka.number(vr.y,Sr.y,Jr),cn=new pm(ui,Gi,Sr.angleTo(vr),$t);return cn._round(),!we||yM(I,cn,We,we,S)?cn:void 0}ut+=Dr}}function f9(I,S,D,X,ie,ve,we,We,ut){let Mt=BC(X,ve,we),$t=OC(X,ie),vr=$t*we,Sr=I[0].x===0||I[0].x===ut||I[0].y===0||I[0].y===ut;return S-vr=0&&La=0&&So=0&&Sr+Mt<=$t){let kl=new pm(La,So,Za,Jr);kl._round(),X&&!yM(I,kl,ve,X,ie)||Dr.push(kl)}}vr+=cn}return We||Dr.length||we||(Dr=qC(I,vr/2,D,X,ie,ve,we,!0,ut)),Dr}Mi("Anchor",pm);let k1=kd;function NC(I,S,D,X){let ie=[],ve=I.image,we=ve.pixelRatio,We=ve.paddedRect.w-2*k1,ut=ve.paddedRect.h-2*k1,Mt={x1:I.left,y1:I.top,x2:I.right,y2:I.bottom},$t=ve.stretchX||[[0,We]],vr=ve.stretchY||[[0,ut]],Sr=(Xs,Lu)=>Xs+Lu[1]-Lu[0],Dr=$t.reduce(Sr,0),Jr=vr.reduce(Sr,0),ui=We-Dr,Gi=ut-Jr,cn=0,Za=Dr,Rn=0,La=Jr,So=0,kl=ui,mu=0,Iu=Gi;if(ve.content&&X){let Xs=ve.content,Lu=Xs[2]-Xs[0],xu=Xs[3]-Xs[1];(ve.textFitWidth||ve.textFitHeight)&&(Mt=TC(I)),cn=vm($t,0,Xs[0]),Rn=vm(vr,0,Xs[1]),Za=vm($t,Xs[0],Xs[2]),La=vm(vr,Xs[1],Xs[3]),So=Xs[0]-cn,mu=Xs[1]-Rn,kl=Lu-Za,Iu=xu-La}let su=Mt.x1,yl=Mt.y1,Eu=Mt.x2-su,bu=Mt.y2-yl,_u=(Xs,Lu,xu,qu)=>{let vc=qw(Xs.stretch-cn,Za,Eu,su),cc=C1(Xs.fixed-So,kl,Xs.stretch,Dr),zh=qw(Lu.stretch-Rn,La,bu,yl),Qp=C1(Lu.fixed-mu,Iu,Lu.stretch,Jr),ud=qw(xu.stretch-cn,Za,Eu,su),Ih=C1(xu.fixed-So,kl,xu.stretch,Dr),Wd=qw(qu.stretch-Rn,La,bu,yl),jd=C1(qu.fixed-mu,Iu,qu.stretch,Jr),Xd=new l(vc,zh),$c=new l(ud,zh),Rh=new l(ud,Wd),Cd=new l(vc,Wd),fd=new l(cc/we,Qp/we),Yh=new l(Ih/we,jd/we),ih=S*Math.PI/180;if(ih){let jf=Math.sin(ih),Tc=Math.cos(ih),mc=[Tc,-jf,jf,Tc];Xd._matMult(mc),$c._matMult(mc),Cd._matMult(mc),Rh._matMult(mc)}let Dp=Xs.stretch+Xs.fixed,fp=Lu.stretch+Lu.fixed;return{tl:Xd,tr:$c,bl:Cd,br:Rh,tex:{x:ve.paddedRect.x+k1+Dp,y:ve.paddedRect.y+k1+fp,w:xu.stretch+xu.fixed-Dp,h:qu.stretch+qu.fixed-fp},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:fd,pixelOffsetBR:Yh,minFontScaleX:kl/we/Eu,minFontScaleY:Iu/we/bu,isSDF:D}};if(X&&(ve.stretchX||ve.stretchY)){let Xs=UC($t,ui,Dr),Lu=UC(vr,Gi,Jr);for(let xu=0;xu0&&(ui=Math.max(10,ui),this.circleDiameter=ui)}else{let Sr=!((vr=we.image)===null||vr===void 0)&&vr.content&&(we.image.textFitWidth||we.image.textFitHeight)?TC(we):{x1:we.left,y1:we.top,x2:we.right,y2:we.bottom};Sr.y1=Sr.y1*We-ut[0],Sr.y2=Sr.y2*We+ut[2],Sr.x1=Sr.x1*We-ut[3],Sr.x2=Sr.x2*We+ut[1];let Dr=we.collisionPadding;if(Dr&&(Sr.x1-=Dr[0]*We,Sr.y1-=Dr[1]*We,Sr.x2+=Dr[2]*We,Sr.y2+=Dr[3]*We),$t){let Jr=new l(Sr.x1,Sr.y1),ui=new l(Sr.x2,Sr.y1),Gi=new l(Sr.x1,Sr.y2),cn=new l(Sr.x2,Sr.y2),Za=$t*Math.PI/180;Jr._rotate(Za),ui._rotate(Za),Gi._rotate(Za),cn._rotate(Za),Sr.x1=Math.min(Jr.x,ui.x,Gi.x,cn.x),Sr.x2=Math.max(Jr.x,ui.x,Gi.x,cn.x),Sr.y1=Math.min(Jr.y,ui.y,Gi.y,cn.y),Sr.y2=Math.max(Jr.y,ui.y,Gi.y,cn.y)}S.emplaceBack(D.x,D.y,Sr.x1,Sr.y1,Sr.x2,Sr.y2,X,ie,ve)}this.boxEndIndex=S.length}}class Vv{constructor(S=[],D=(X,ie)=>Xie?1:0){if(this.data=S,this.length=this.data.length,this.compare=D,this.length>0)for(let X=(this.length>>1)-1;X>=0;X--)this._down(X)}push(S){this.data.push(S),this._up(this.length++)}pop(){if(this.length===0)return;let S=this.data[0],D=this.data.pop();return--this.length>0&&(this.data[0]=D,this._down(0)),S}peek(){return this.data[0]}_up(S){let{data:D,compare:X}=this,ie=D[S];for(;S>0;){let ve=S-1>>1,we=D[ve];if(X(ie,we)>=0)break;D[S]=we,S=ve}D[S]=ie}_down(S){let{data:D,compare:X}=this,ie=this.length>>1,ve=D[S];for(;S=0)break;D[S]=D[we],S=we}D[S]=ve}}function c9(I,S=1,D=!1){let X=1/0,ie=1/0,ve=-1/0,we=-1/0,We=I[0];for(let Dr=0;Drve)&&(ve=Jr.x),(!Dr||Jr.y>we)&&(we=Jr.y)}let ut=Math.min(ve-X,we-ie),Mt=ut/2,$t=new Vv([],h9);if(ut===0)return new l(X,ie);for(let Dr=X;Drvr.d||!vr.d)&&(vr=Dr,D&&console.log("found best %d after %d probes",Math.round(1e4*Dr.d)/1e4,Sr)),Dr.max-vr.d<=S||(Mt=Dr.h/2,$t.push(new L1(Dr.p.x-Mt,Dr.p.y-Mt,Mt,I)),$t.push(new L1(Dr.p.x+Mt,Dr.p.y-Mt,Mt,I)),$t.push(new L1(Dr.p.x-Mt,Dr.p.y+Mt,Mt,I)),$t.push(new L1(Dr.p.x+Mt,Dr.p.y+Mt,Mt,I)),Sr+=4)}return D&&(console.log(`num probes: ${Sr}`),console.log(`best distance: ${vr.d}`)),vr.p}function h9(I,S){return S.max-I.max}function L1(I,S,D,X){this.p=new l(I,S),this.h=D,this.d=function(ie,ve){let we=!1,We=1/0;for(let ut=0;utie.y!=Jr.y>ie.y&&ie.x<(Jr.x-Dr.x)*(ie.y-Dr.y)/(Jr.y-Dr.y)+Dr.x&&(we=!we),We=Math.min(We,vi(ie,Dr,Jr))}}return(we?1:-1)*Math.sqrt(We)}(this.p,X),this.max=this.d+this.h*Math.SQRT2}var ld;i.aq=void 0,(ld=i.aq||(i.aq={}))[ld.center=1]="center",ld[ld.left=2]="left",ld[ld.right=3]="right",ld[ld.top=4]="top",ld[ld.bottom=5]="bottom",ld[ld["top-left"]=6]="top-left",ld[ld["top-right"]=7]="top-right",ld[ld["bottom-left"]=8]="bottom-left",ld[ld["bottom-right"]=9]="bottom-right";let hy=7,hg=Number.POSITIVE_INFINITY;function gM(I,S){return S[1]!==hg?function(D,X,ie){let ve=0,we=0;switch(X=Math.abs(X),ie=Math.abs(ie),D){case"top-right":case"top-left":case"top":we=ie-hy;break;case"bottom-right":case"bottom-left":case"bottom":we=-ie+hy}switch(D){case"top-right":case"bottom-right":case"right":ve=-X;break;case"top-left":case"bottom-left":case"left":ve=X}return[ve,we]}(I,S[0],S[1]):function(D,X){let ie=0,ve=0;X<0&&(X=0);let we=X/Math.SQRT2;switch(D){case"top-right":case"top-left":ve=we-hy;break;case"bottom-right":case"bottom-left":ve=-we+hy;break;case"bottom":ve=-X+hy;break;case"top":ve=X-hy}switch(D){case"top-right":case"bottom-right":ie=-we;break;case"top-left":case"bottom-left":ie=we;break;case"left":ie=X;break;case"right":ie=-X}return[ie,ve]}(I,S[0])}function VC(I,S,D){var X;let ie=I.layout,ve=(X=ie.get("text-variable-anchor-offset"))===null||X===void 0?void 0:X.evaluate(S,{},D);if(ve){let We=ve.values,ut=[];for(let Mt=0;MtSr*Wf);$t.startsWith("top")?vr[1]-=hy:$t.startsWith("bottom")&&(vr[1]+=hy),ut[Mt+1]=vr}return new jr(ut)}let we=ie.get("text-variable-anchor");if(we){let We;We=I._unevaluatedLayout.getValue("text-radial-offset")!==void 0?[ie.get("text-radial-offset").evaluate(S,{},D)*Wf,hg]:ie.get("text-offset").evaluate(S,{},D).map(Mt=>Mt*Wf);let ut=[];for(let Mt of we)ut.push(Mt,gM(Mt,We));return new jr(ut)}return null}function _M(I){switch(I){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function d9(I,S,D,X,ie,ve,we,We,ut,Mt,$t){let vr=ve.textMaxSize.evaluate(S,{});vr===void 0&&(vr=we);let Sr=I.layers[0].layout,Dr=Sr.get("icon-offset").evaluate(S,{},$t),Jr=HC(D.horizontal),ui=we/24,Gi=I.tilePixelRatio*ui,cn=I.tilePixelRatio*vr/24,Za=I.tilePixelRatio*We,Rn=I.tilePixelRatio*Sr.get("symbol-spacing"),La=Sr.get("text-padding")*I.tilePixelRatio,So=function(Xs,Lu,xu,qu=1){let vc=Xs.get("icon-padding").evaluate(Lu,{},xu),cc=vc&&vc.values;return[cc[0]*qu,cc[1]*qu,cc[2]*qu,cc[3]*qu]}(Sr,S,$t,I.tilePixelRatio),kl=Sr.get("text-max-angle")/180*Math.PI,mu=Sr.get("text-rotation-alignment")!=="viewport"&&Sr.get("symbol-placement")!=="point",Iu=Sr.get("icon-rotation-alignment")==="map"&&Sr.get("symbol-placement")!=="point",su=Sr.get("symbol-placement"),yl=Rn/2,Eu=Sr.get("icon-text-fit"),bu;X&&Eu!=="none"&&(I.allowVerticalPlacement&&D.vertical&&(bu=AC(X,D.vertical,Eu,Sr.get("icon-text-fit-padding"),Dr,ui)),Jr&&(X=AC(X,Jr,Eu,Sr.get("icon-text-fit-padding"),Dr,ui)));let _u=(Xs,Lu)=>{Lu.x<0||Lu.x>=Wl||Lu.y<0||Lu.y>=Wl||function(xu,qu,vc,cc,zh,Qp,ud,Ih,Wd,jd,Xd,$c,Rh,Cd,fd,Yh,ih,Dp,fp,jf,Tc,mc,Fp,Hc,P1){let p0=xu.addToLineVertexArray(qu,vc),Gv,ev,Rc,fh,tv=0,mm=0,cp=0,z1=0,AM=-1,Gw=-1,v0={},dg=fn("");if(xu.allowVerticalPlacement&&cc.vertical){let Ld=Ih.layout.get("text-rotate").evaluate(Tc,{},Hc)+90;Rc=new cy(Wd,qu,jd,Xd,$c,cc.vertical,Rh,Cd,fd,Ld),ud&&(fh=new cy(Wd,qu,jd,Xd,$c,ud,ih,Dp,fd,Ld))}if(zh){let Ld=Ih.layout.get("icon-rotate").evaluate(Tc,{}),rv=Ih.layout.get("icon-text-fit")!=="none",dy=NC(zh,Ld,Fp,rv),Zd=ud?NC(ud,Ld,Fp,rv):void 0;ev=new cy(Wd,qu,jd,Xd,$c,zh,ih,Dp,!1,Ld),tv=4*dy.length;let Pd=xu.iconSizeData,_v=null;Pd.kind==="source"?(_v=[d0*Ih.layout.get("icon-size").evaluate(Tc,{})],_v[0]>uy&&T(`${xu.layerIds[0]}: Value for "icon-size" is >= ${jx}. Reduce your "icon-size".`)):Pd.kind==="composite"&&(_v=[d0*mc.compositeIconSizes[0].evaluate(Tc,{},Hc),d0*mc.compositeIconSizes[1].evaluate(Tc,{},Hc)],(_v[0]>uy||_v[1]>uy)&&T(`${xu.layerIds[0]}: Value for "icon-size" is >= ${jx}. Reduce your "icon-size".`)),xu.addSymbols(xu.icon,dy,_v,jf,fp,Tc,i.ah.none,qu,p0.lineStartIndex,p0.lineLength,-1,Hc),AM=xu.icon.placedSymbolArray.length-1,Zd&&(mm=4*Zd.length,xu.addSymbols(xu.icon,Zd,_v,jf,fp,Tc,i.ah.vertical,qu,p0.lineStartIndex,p0.lineLength,-1,Hc),Gw=xu.icon.placedSymbolArray.length-1)}let Kh=Object.keys(cc.horizontal);for(let Ld of Kh){let rv=cc.horizontal[Ld];if(!Gv){dg=fn(rv.text);let Zd=Ih.layout.get("text-rotate").evaluate(Tc,{},Hc);Gv=new cy(Wd,qu,jd,Xd,$c,rv,Rh,Cd,fd,Zd)}let dy=rv.positionedLines.length===1;if(cp+=GC(xu,qu,rv,Qp,Ih,fd,Tc,Yh,p0,cc.vertical?i.ah.horizontal:i.ah.horizontalOnly,dy?Kh:[Ld],v0,AM,mc,Hc),dy)break}cc.vertical&&(z1+=GC(xu,qu,cc.vertical,Qp,Ih,fd,Tc,Yh,p0,i.ah.vertical,["vertical"],v0,Gw,mc,Hc));let m9=Gv?Gv.boxStartIndex:xu.collisionBoxArray.length,Hw=Gv?Gv.boxEndIndex:xu.collisionBoxArray.length,m0=Rc?Rc.boxStartIndex:xu.collisionBoxArray.length,hp=Rc?Rc.boxEndIndex:xu.collisionBoxArray.length,ZC=ev?ev.boxStartIndex:xu.collisionBoxArray.length,y9=ev?ev.boxEndIndex:xu.collisionBoxArray.length,YC=fh?fh.boxStartIndex:xu.collisionBoxArray.length,g9=fh?fh.boxEndIndex:xu.collisionBoxArray.length,gv=-1,rb=(Ld,rv)=>Ld&&Ld.circleDiameter?Math.max(Ld.circleDiameter,rv):rv;gv=rb(Gv,gv),gv=rb(Rc,gv),gv=rb(ev,gv),gv=rb(fh,gv);let Ww=gv>-1?1:0;Ww&&(gv*=P1/Wf),xu.glyphOffsetArray.length>=M1.MAX_GLYPHS&&T("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),Tc.sortKey!==void 0&&xu.addToSortKeyRanges(xu.symbolInstances.length,Tc.sortKey);let SM=VC(Ih,Tc,Hc),[_9,x9]=function(Ld,rv){let dy=Ld.length,Zd=rv==null?void 0:rv.values;if((Zd==null?void 0:Zd.length)>0)for(let Pd=0;Pd=0?v0.right:-1,v0.center>=0?v0.center:-1,v0.left>=0?v0.left:-1,v0.vertical||-1,AM,Gw,dg,m9,Hw,m0,hp,ZC,y9,YC,g9,jd,cp,z1,tv,mm,Ww,0,Rh,gv,_9,x9)}(I,Lu,Xs,D,X,ie,bu,I.layers[0],I.collisionBoxArray,S.index,S.sourceLayerIndex,I.index,Gi,[La,La,La,La],mu,ut,Za,So,Iu,Dr,S,ve,Mt,$t,we)};if(su==="line")for(let Xs of DC(S.geometry,0,0,Wl,Wl)){let Lu=f9(Xs,Rn,kl,D.vertical||Jr,X,24,cn,I.overscaling,Wl);for(let xu of Lu)Jr&&p9(I,Jr.text,yl,xu)||_u(Xs,xu)}else if(su==="line-center"){for(let Xs of S.geometry)if(Xs.length>1){let Lu=u9(Xs,kl,D.vertical||Jr,X,24,cn);Lu&&_u(Xs,Lu)}}else if(S.type==="Polygon")for(let Xs of Ys(S.geometry,0)){let Lu=c9(Xs,16);_u(Xs[0],new pm(Lu.x,Lu.y,0))}else if(S.type==="LineString")for(let Xs of S.geometry)_u(Xs,new pm(Xs[0].x,Xs[0].y,0));else if(S.type==="Point")for(let Xs of S.geometry)for(let Lu of Xs)_u([Lu],new pm(Lu.x,Lu.y,0))}function GC(I,S,D,X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr){let ui=function(Za,Rn,La,So,kl,mu,Iu,su){let yl=So.layout.get("text-rotate").evaluate(mu,{})*Math.PI/180,Eu=[];for(let bu of Rn.positionedLines)for(let _u of bu.positionedGlyphs){if(!_u.rect)continue;let Xs=_u.rect||{},Lu=_C+1,xu=!0,qu=1,vc=0,cc=(kl||su)&&_u.vertical,zh=_u.metrics.advance*_u.scale/2;if(su&&Rn.verticalizable&&(vc=bu.lineOffset/2-(_u.imageName?-(Wf-_u.metrics.width*_u.scale)/2:(_u.scale-1)*Wf)),_u.imageName){let jf=Iu[_u.imageName];xu=jf.sdf,qu=jf.pixelRatio,Lu=kd/qu}let Qp=kl?[_u.x+zh,_u.y]:[0,0],ud=kl?[0,0]:[_u.x+zh+La[0],_u.y+La[1]-vc],Ih=[0,0];cc&&(Ih=ud,ud=[0,0]);let Wd=_u.metrics.isDoubleResolution?2:1,jd=(_u.metrics.left-Lu)*_u.scale-zh+ud[0],Xd=(-_u.metrics.top-Lu)*_u.scale+ud[1],$c=jd+Xs.w/Wd*_u.scale/qu,Rh=Xd+Xs.h/Wd*_u.scale/qu,Cd=new l(jd,Xd),fd=new l($c,Xd),Yh=new l(jd,Rh),ih=new l($c,Rh);if(cc){let jf=new l(-zh,zh-Ph),Tc=-Math.PI/2,mc=Wf/2-zh,Fp=new l(5-Ph-mc,-(_u.imageName?mc:0)),Hc=new l(...Ih);Cd._rotateAround(Tc,jf)._add(Fp)._add(Hc),fd._rotateAround(Tc,jf)._add(Fp)._add(Hc),Yh._rotateAround(Tc,jf)._add(Fp)._add(Hc),ih._rotateAround(Tc,jf)._add(Fp)._add(Hc)}if(yl){let jf=Math.sin(yl),Tc=Math.cos(yl),mc=[Tc,-jf,jf,Tc];Cd._matMult(mc),fd._matMult(mc),Yh._matMult(mc),ih._matMult(mc)}let Dp=new l(0,0),fp=new l(0,0);Eu.push({tl:Cd,tr:fd,bl:Yh,br:ih,tex:Xs,writingMode:Rn.writingMode,glyphOffset:Qp,sectionIndex:_u.sectionIndex,isSDF:xu,pixelOffsetTL:Dp,pixelOffsetBR:fp,minFontScaleX:0,minFontScaleY:0})}return Eu}(0,D,We,ie,ve,we,X,I.allowVerticalPlacement),Gi=I.textSizeData,cn=null;Gi.kind==="source"?(cn=[d0*ie.layout.get("text-size").evaluate(we,{})],cn[0]>uy&&T(`${I.layerIds[0]}: Value for "text-size" is >= ${jx}. Reduce your "text-size".`)):Gi.kind==="composite"&&(cn=[d0*Dr.compositeTextSizes[0].evaluate(we,{},Jr),d0*Dr.compositeTextSizes[1].evaluate(we,{},Jr)],(cn[0]>uy||cn[1]>uy)&&T(`${I.layerIds[0]}: Value for "text-size" is >= ${jx}. Reduce your "text-size".`)),I.addSymbols(I.text,ui,cn,We,ve,we,Mt,S,ut.lineStartIndex,ut.lineLength,Sr,Jr);for(let Za of $t)vr[Za]=I.text.placedSymbolArray.length-1;return 4*ui.length}function HC(I){for(let S in I)return I[S];return null}function p9(I,S,D,X){let ie=I.compareText;if(S in ie){let ve=ie[S];for(let we=ve.length-1;we>=0;we--)if(X.dist(ve[we])>4;if(ie!==1)throw new Error(`Got v${ie} data when expected v1.`);let ve=WC[15&X];if(!ve)throw new Error("Unrecognized array type.");let[we]=new Uint16Array(S,2,1),[We]=new Uint32Array(S,4,1);return new xM(We,we,ve,S)}constructor(S,D=64,X=Float64Array,ie){if(isNaN(S)||S<0)throw new Error(`Unpexpected numItems value: ${S}.`);this.numItems=+S,this.nodeSize=Math.min(Math.max(+D,2),65535),this.ArrayType=X,this.IndexArrayType=S<65536?Uint16Array:Uint32Array;let ve=WC.indexOf(this.ArrayType),we=2*S*this.ArrayType.BYTES_PER_ELEMENT,We=S*this.IndexArrayType.BYTES_PER_ELEMENT,ut=(8-We%8)%8;if(ve<0)throw new Error(`Unexpected typed array class: ${X}.`);ie&&ie instanceof ArrayBuffer?(this.data=ie,this.ids=new this.IndexArrayType(this.data,8,S),this.coords=new this.ArrayType(this.data,8+We+ut,2*S),this._pos=2*S,this._finished=!0):(this.data=new ArrayBuffer(8+we+We+ut),this.ids=new this.IndexArrayType(this.data,8,S),this.coords=new this.ArrayType(this.data,8+We+ut,2*S),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+ve]),new Uint16Array(this.data,2,1)[0]=D,new Uint32Array(this.data,4,1)[0]=S)}add(S,D){let X=this._pos>>1;return this.ids[X]=X,this.coords[this._pos++]=S,this.coords[this._pos++]=D,X}finish(){let S=this._pos>>1;if(S!==this.numItems)throw new Error(`Added ${S} items when expected ${this.numItems}.`);return Nw(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(S,D,X,ie){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:ve,coords:we,nodeSize:We}=this,ut=[0,ve.length-1,0],Mt=[];for(;ut.length;){let $t=ut.pop()||0,vr=ut.pop()||0,Sr=ut.pop()||0;if(vr-Sr<=We){for(let Gi=Sr;Gi<=vr;Gi++){let cn=we[2*Gi],Za=we[2*Gi+1];cn>=S&&cn<=X&&Za>=D&&Za<=ie&&Mt.push(ve[Gi])}continue}let Dr=Sr+vr>>1,Jr=we[2*Dr],ui=we[2*Dr+1];Jr>=S&&Jr<=X&&ui>=D&&ui<=ie&&Mt.push(ve[Dr]),($t===0?S<=Jr:D<=ui)&&(ut.push(Sr),ut.push(Dr-1),ut.push(1-$t)),($t===0?X>=Jr:ie>=ui)&&(ut.push(Dr+1),ut.push(vr),ut.push(1-$t))}return Mt}within(S,D,X){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:ie,coords:ve,nodeSize:we}=this,We=[0,ie.length-1,0],ut=[],Mt=X*X;for(;We.length;){let $t=We.pop()||0,vr=We.pop()||0,Sr=We.pop()||0;if(vr-Sr<=we){for(let Gi=Sr;Gi<=vr;Gi++)XC(ve[2*Gi],ve[2*Gi+1],S,D)<=Mt&&ut.push(ie[Gi]);continue}let Dr=Sr+vr>>1,Jr=ve[2*Dr],ui=ve[2*Dr+1];XC(Jr,ui,S,D)<=Mt&&ut.push(ie[Dr]),($t===0?S-X<=Jr:D-X<=ui)&&(We.push(Sr),We.push(Dr-1),We.push(1-$t)),($t===0?S+X>=Jr:D+X>=ui)&&(We.push(Dr+1),We.push(vr),We.push(1-$t))}return ut}}function Nw(I,S,D,X,ie,ve){if(ie-X<=D)return;let we=X+ie>>1;jC(I,S,we,X,ie,ve),Nw(I,S,D,X,we-1,1-ve),Nw(I,S,D,we+1,ie,1-ve)}function jC(I,S,D,X,ie,ve){for(;ie>X;){if(ie-X>600){let Mt=ie-X+1,$t=D-X+1,vr=Math.log(Mt),Sr=.5*Math.exp(2*vr/3),Dr=.5*Math.sqrt(vr*Sr*(Mt-Sr)/Mt)*($t-Mt/2<0?-1:1);jC(I,S,D,Math.max(X,Math.floor(D-$t*Sr/Mt+Dr)),Math.min(ie,Math.floor(D+(Mt-$t)*Sr/Mt+Dr)),ve)}let we=S[2*D+ve],We=X,ut=ie;for(eb(I,S,X,D),S[2*ie+ve]>we&&eb(I,S,X,ie);Wewe;)ut--}S[2*X+ve]===we?eb(I,S,X,ut):(ut++,eb(I,S,ut,ie)),ut<=D&&(X=ut+1),D<=ut&&(ie=ut-1)}}function eb(I,S,D,X){bM(I,D,X),bM(S,2*D,2*X),bM(S,2*D+1,2*X+1)}function bM(I,S,D){let X=I[S];I[S]=I[D],I[D]=X}function XC(I,S,D,X){let ie=I-D,ve=S-X;return ie*ie+ve*ve}var Uw;i.bg=void 0,(Uw=i.bg||(i.bg={})).create="create",Uw.load="load",Uw.fullLoad="fullLoad";let tb=null,mh=[],wM=1e3/60,TM="loadTime",Vw="fullLoadTime",v9={mark(I){performance.mark(I)},frame(I){let S=I;tb!=null&&mh.push(S-tb),tb=S},clearMetrics(){tb=null,mh=[],performance.clearMeasures(TM),performance.clearMeasures(Vw);for(let I in i.bg)performance.clearMarks(i.bg[I])},getPerformanceMetrics(){performance.measure(TM,i.bg.create,i.bg.load),performance.measure(Vw,i.bg.create,i.bg.fullLoad);let I=performance.getEntriesByName(TM)[0].duration,S=performance.getEntriesByName(Vw)[0].duration,D=mh.length,X=1/(mh.reduce((ve,we)=>ve+we,0)/D/1e3),ie=mh.filter(ve=>ve>wM).reduce((ve,we)=>ve+(we-wM)/wM,0);return{loadTime:I,fullLoadTime:S,fps:X,percentDroppedFrames:ie/(D+ie)*100,totalFrames:D}}};i.$=class extends ir{},i.A=dn,i.B=Ci,i.C=function(I){if(U==null){let S=I.navigator?I.navigator.userAgent:null;U=!!I.safari||!(!S||!(/\b(iPad|iPhone|iPod)\b/.test(S)||S.match("Safari")&&!S.match("Chrome")))}return U},i.D=ms,i.E=qe,i.F=class{constructor(I,S){this.target=I,this.mapId=S,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new dM(()=>this.process()),this.subscription=function(D,X,ie,ve){return D.addEventListener(X,ie,!1),{unsubscribe:()=>{D.removeEventListener(X,ie,!1)}}}(this.target,"message",D=>this.receive(D)),this.globalScope=F(self)?I:window}registerMessageHandler(I,S){this.messageHandlers[I]=S}sendAsync(I,S){return new Promise((D,X)=>{let ie=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[ie]={resolve:D,reject:X},S&&S.signal.addEventListener("abort",()=>{delete this.resolveRejects[ie];let We={id:ie,type:"",origin:location.origin,targetMapId:I.targetMapId,sourceMapId:this.mapId};this.target.postMessage(We)},{once:!0});let ve=[],we=Object.assign(Object.assign({},I),{id:ie,sourceMapId:this.mapId,origin:location.origin,data:ia(I.data,ve)});this.target.postMessage(we,{transfer:ve})})}receive(I){let S=I.data,D=S.id;if(!(S.origin!=="file://"&&location.origin!=="file://"&&S.origin!=="resource://android"&&location.origin!=="resource://android"&&S.origin!==location.origin||S.targetMapId&&this.mapId!==S.targetMapId)){if(S.type===""){delete this.tasks[D];let X=this.abortControllers[D];return delete this.abortControllers[D],void(X&&X.abort())}if(F(self)||S.mustQueue)return this.tasks[D]=S,this.taskQueue.push(D),void this.invoker.trigger();this.processTask(D,S)}}process(){if(this.taskQueue.length===0)return;let I=this.taskQueue.shift(),S=this.tasks[I];delete this.tasks[I],this.taskQueue.length>0&&this.invoker.trigger(),S&&this.processTask(I,S)}processTask(I,S){return a(this,void 0,void 0,function*(){if(S.type===""){let ie=this.resolveRejects[I];return delete this.resolveRejects[I],ie?void(S.error?ie.reject(pa(S.error)):ie.resolve(pa(S.data))):void 0}if(!this.messageHandlers[S.type])return void this.completeTask(I,new Error(`Could not find a registered handler for ${S.type}, map ID: ${this.mapId}, available handlers: ${Object.keys(this.messageHandlers).join(", ")}`));let D=pa(S.data),X=new AbortController;this.abortControllers[I]=X;try{let ie=yield this.messageHandlers[S.type](S.sourceMapId,D,X);this.completeTask(I,null,ie)}catch(ie){this.completeTask(I,ie)}})}completeTask(I,S,D){let X=[];delete this.abortControllers[I];let ie={id:I,type:"",sourceMapId:this.mapId,origin:location.origin,error:S?ia(S):null,data:ia(D,X)};this.target.postMessage(ie,{transfer:X})}remove(){this.invoker.remove(),this.subscription.unsubscribe()}},i.G=Ce,i.H=function(){var I=new dn(16);return dn!=Float32Array&&(I[1]=0,I[2]=0,I[3]=0,I[4]=0,I[6]=0,I[7]=0,I[8]=0,I[9]=0,I[11]=0,I[12]=0,I[13]=0,I[14]=0),I[0]=1,I[5]=1,I[10]=1,I[15]=1,I},i.I=Lw,i.J=function(I,S,D){var X,ie,ve,we,We,ut,Mt,$t,vr,Sr,Dr,Jr,ui=D[0],Gi=D[1],cn=D[2];return S===I?(I[12]=S[0]*ui+S[4]*Gi+S[8]*cn+S[12],I[13]=S[1]*ui+S[5]*Gi+S[9]*cn+S[13],I[14]=S[2]*ui+S[6]*Gi+S[10]*cn+S[14],I[15]=S[3]*ui+S[7]*Gi+S[11]*cn+S[15]):(ie=S[1],ve=S[2],we=S[3],We=S[4],ut=S[5],Mt=S[6],$t=S[7],vr=S[8],Sr=S[9],Dr=S[10],Jr=S[11],I[0]=X=S[0],I[1]=ie,I[2]=ve,I[3]=we,I[4]=We,I[5]=ut,I[6]=Mt,I[7]=$t,I[8]=vr,I[9]=Sr,I[10]=Dr,I[11]=Jr,I[12]=X*ui+We*Gi+vr*cn+S[12],I[13]=ie*ui+ut*Gi+Sr*cn+S[13],I[14]=ve*ui+Mt*Gi+Dr*cn+S[14],I[15]=we*ui+$t*Gi+Jr*cn+S[15]),I},i.K=function(I,S,D){var X=D[0],ie=D[1],ve=D[2];return I[0]=S[0]*X,I[1]=S[1]*X,I[2]=S[2]*X,I[3]=S[3]*X,I[4]=S[4]*ie,I[5]=S[5]*ie,I[6]=S[6]*ie,I[7]=S[7]*ie,I[8]=S[8]*ve,I[9]=S[9]*ve,I[10]=S[10]*ve,I[11]=S[11]*ve,I[12]=S[12],I[13]=S[13],I[14]=S[14],I[15]=S[15],I},i.L=Zi,i.M=function(I,S){let D={};for(let X=0;X{let S=window.document.createElement("video");return S.muted=!0,new Promise(D=>{S.onloadstart=()=>{D(S)};for(let X of I){let ie=window.document.createElement("source");Ee(X)||(S.crossOrigin="Anonymous"),ie.src=X,S.appendChild(ie)}})},i.a4=function(){return x++},i.a5=Ua,i.a6=M1,i.a7=Jn,i.a8=hf,i.a9=mM,i.aA=function(I){if(I.type==="custom")return new hM(I);switch(I.type){case"background":return new s9(I);case"circle":return new Ji(I);case"fill":return new Ot(I);case"fill-extrusion":return new Td(I);case"heatmap":return new pl(I);case"hillshade":return new vf(I);case"line":return new og(I);case"raster":return new Kx(I);case"symbol":return new fg(I)}},i.aB=m,i.aC=function(I,S){if(!I)return[{command:"setStyle",args:[S]}];let D=[];try{if(!gt(I.version,S.version))return[{command:"setStyle",args:[S]}];gt(I.center,S.center)||D.push({command:"setCenter",args:[S.center]}),gt(I.zoom,S.zoom)||D.push({command:"setZoom",args:[S.zoom]}),gt(I.bearing,S.bearing)||D.push({command:"setBearing",args:[S.bearing]}),gt(I.pitch,S.pitch)||D.push({command:"setPitch",args:[S.pitch]}),gt(I.sprite,S.sprite)||D.push({command:"setSprite",args:[S.sprite]}),gt(I.glyphs,S.glyphs)||D.push({command:"setGlyphs",args:[S.glyphs]}),gt(I.transition,S.transition)||D.push({command:"setTransition",args:[S.transition]}),gt(I.light,S.light)||D.push({command:"setLight",args:[S.light]}),gt(I.terrain,S.terrain)||D.push({command:"setTerrain",args:[S.terrain]}),gt(I.sky,S.sky)||D.push({command:"setSky",args:[S.sky]}),gt(I.projection,S.projection)||D.push({command:"setProjection",args:[S.projection]});let X={},ie=[];(function(we,We,ut,Mt){let $t;for($t in We=We||{},we=we||{})Object.prototype.hasOwnProperty.call(we,$t)&&(Object.prototype.hasOwnProperty.call(We,$t)||Ke($t,ut,Mt));for($t in We)Object.prototype.hasOwnProperty.call(We,$t)&&(Object.prototype.hasOwnProperty.call(we,$t)?gt(we[$t],We[$t])||(we[$t].type==="geojson"&&We[$t].type==="geojson"&&wt(we,We,$t)?Nt(ut,{command:"setGeoJSONSourceData",args:[$t,We[$t].data]}):Ct($t,We,ut,Mt)):at($t,We,ut))})(I.sources,S.sources,ie,X);let ve=[];I.layers&&I.layers.forEach(we=>{"source"in we&&X[we.source]?D.push({command:"removeLayer",args:[we.id]}):ve.push(we)}),D=D.concat(ie),function(we,We,ut){We=We||[];let Mt=(we=we||[]).map(Dt),$t=We.map(Dt),vr=we.reduce(Zt,{}),Sr=We.reduce(Zt,{}),Dr=Mt.slice(),Jr=Object.create(null),ui,Gi,cn,Za,Rn;for(let La=0,So=0;La@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,(D,X,ie,ve)=>{let we=ie||ve;return S[X]=!we||we.toLowerCase(),""}),S["max-age"]){let D=parseInt(S["max-age"],10);isNaN(D)?delete S["max-age"]:S["max-age"]=D}return S},i.ab=function(I,S){let D=[];for(let X in I)X in S||D.push(X);return D},i.ac=E,i.ad=function(I,S,D){var X=Math.sin(D),ie=Math.cos(D),ve=S[0],we=S[1],We=S[2],ut=S[3],Mt=S[4],$t=S[5],vr=S[6],Sr=S[7];return S!==I&&(I[8]=S[8],I[9]=S[9],I[10]=S[10],I[11]=S[11],I[12]=S[12],I[13]=S[13],I[14]=S[14],I[15]=S[15]),I[0]=ve*ie+Mt*X,I[1]=we*ie+$t*X,I[2]=We*ie+vr*X,I[3]=ut*ie+Sr*X,I[4]=Mt*ie-ve*X,I[5]=$t*ie-we*X,I[6]=vr*ie-We*X,I[7]=Sr*ie-ut*X,I},i.ae=function(I){var S=new dn(16);return S[0]=I[0],S[1]=I[1],S[2]=I[2],S[3]=I[3],S[4]=I[4],S[5]=I[5],S[6]=I[6],S[7]=I[7],S[8]=I[8],S[9]=I[9],S[10]=I[10],S[11]=I[11],S[12]=I[12],S[13]=I[13],S[14]=I[14],S[15]=I[15],S},i.af=hs,i.ag=function(I,S){let D=0,X=0;if(I.kind==="constant")X=I.layoutSize;else if(I.kind!=="source"){let{interpolationType:ie,minZoom:ve,maxZoom:we}=I,We=ie?E(so.interpolationFactor(ie,S,ve,we),0,1):0;I.kind==="camera"?X=ka.number(I.minSize,I.maxSize,We):D=We}return{uSizeT:D,uSize:X}},i.ai=function(I,{uSize:S,uSizeT:D},{lowerSize:X,upperSize:ie}){return I.kind==="source"?X/d0:I.kind==="composite"?ka.number(X/d0,ie/d0,D):S},i.aj=lM,i.ak=function(I,S,D,X){let ie=S.y-I.y,ve=S.x-I.x,we=X.y-D.y,We=X.x-D.x,ut=we*ve-We*ie;if(ut===0)return null;let Mt=(We*(I.y-D.y)-we*(I.x-D.x))/ut;return new l(I.x+Mt*ve,I.y+Mt*ie)},i.al=DC,i.am=fc,i.an=En,i.ao=function(I){let S=1/0,D=1/0,X=-1/0,ie=-1/0;for(let ve of I)S=Math.min(S,ve.x),D=Math.min(D,ve.y),X=Math.max(X,ve.x),ie=Math.max(ie,ve.y);return[S,D,X,ie]},i.ap=Wf,i.ar=sM,i.as=function(I,S){var D=S[0],X=S[1],ie=S[2],ve=S[3],we=S[4],We=S[5],ut=S[6],Mt=S[7],$t=S[8],vr=S[9],Sr=S[10],Dr=S[11],Jr=S[12],ui=S[13],Gi=S[14],cn=S[15],Za=D*We-X*we,Rn=D*ut-ie*we,La=D*Mt-ve*we,So=X*ut-ie*We,kl=X*Mt-ve*We,mu=ie*Mt-ve*ut,Iu=$t*ui-vr*Jr,su=$t*Gi-Sr*Jr,yl=$t*cn-Dr*Jr,Eu=vr*Gi-Sr*ui,bu=vr*cn-Dr*ui,_u=Sr*cn-Dr*Gi,Xs=Za*_u-Rn*bu+La*Eu+So*yl-kl*su+mu*Iu;return Xs?(I[0]=(We*_u-ut*bu+Mt*Eu)*(Xs=1/Xs),I[1]=(ie*bu-X*_u-ve*Eu)*Xs,I[2]=(ui*mu-Gi*kl+cn*So)*Xs,I[3]=(Sr*kl-vr*mu-Dr*So)*Xs,I[4]=(ut*yl-we*_u-Mt*su)*Xs,I[5]=(D*_u-ie*yl+ve*su)*Xs,I[6]=(Gi*La-Jr*mu-cn*Rn)*Xs,I[7]=($t*mu-Sr*La+Dr*Rn)*Xs,I[8]=(we*bu-We*yl+Mt*Iu)*Xs,I[9]=(X*yl-D*bu-ve*Iu)*Xs,I[10]=(Jr*kl-ui*La+cn*Za)*Xs,I[11]=(vr*La-$t*kl-Dr*Za)*Xs,I[12]=(We*su-we*Eu-ut*Iu)*Xs,I[13]=(D*Eu-X*su+ie*Iu)*Xs,I[14]=(ui*Rn-Jr*So-Gi*Za)*Xs,I[15]=($t*So-vr*Rn+Sr*Za)*Xs,I):null},i.at=_M,i.au=Rw,i.av=xM,i.aw=function(){let I={},S=ce.$version;for(let D in ce.$root){let X=ce.$root[D];if(X.required){let ie=null;ie=D==="version"?S:X.type==="array"?[]:{},ie!=null&&(I[D]=ie)}}return I},i.ax=va,i.ay=te,i.az=function(I){I=I.slice();let S=Object.create(null);for(let D=0;D25||X<0||X>=1||D<0||D>=1)},i.bc=function(I,S){return I[0]=S[0],I[1]=0,I[2]=0,I[3]=0,I[4]=0,I[5]=S[1],I[6]=0,I[7]=0,I[8]=0,I[9]=0,I[10]=S[2],I[11]=0,I[12]=0,I[13]=0,I[14]=0,I[15]=1,I},i.bd=class extends Bt{},i.be=pM,i.bf=v9,i.bh=de,i.bi=function(I,S){be.REGISTERED_PROTOCOLS[I]=S},i.bj=function(I){delete be.REGISTERED_PROTOCOLS[I]},i.bk=function(I,S){let D={};for(let ie=0;ie_u*Wf)}let su=we?"center":D.get("text-justify").evaluate(Mt,{},I.canonical),yl=D.get("symbol-placement")==="point"?D.get("text-max-width").evaluate(Mt,{},I.canonical)*Wf:1/0,Eu=()=>{I.bucket.allowVerticalPlacement&&is(La)&&(Jr.vertical=Hx(ui,I.glyphMap,I.glyphPositions,I.imagePositions,$t,yl,ve,mu,"left",kl,cn,i.ah.vertical,!0,Sr,vr))};if(!we&&Iu){let bu=new Set;if(su==="auto")for(let Xs=0;Xsa(void 0,void 0,void 0,function*(){if(I.byteLength===0)return createImageBitmap(new ImageData(1,1));let S=new Blob([new Uint8Array(I)],{type:"image/png"});try{return createImageBitmap(S)}catch(D){throw new Error(`Could not load image because of ${D.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}}),i.e=L,i.f=I=>new Promise((S,D)=>{let X=new Image;X.onload=()=>{S(X),URL.revokeObjectURL(X.src),X.onload=null,window.requestAnimationFrame(()=>{X.src=j})},X.onerror=()=>D(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));let ie=new Blob([new Uint8Array(I)],{type:"image/png"});X.src=I.byteLength?URL.createObjectURL(ie):j}),i.g=ze,i.h=(I,S)=>ke(L(I,{type:"json"}),S),i.i=F,i.j=ye,i.k=De,i.l=(I,S)=>ke(L(I,{type:"arrayBuffer"}),S),i.m=ke,i.n=function(I){return new nM(I).readFields(GQ,[])},i.o=ul,i.p=oM,i.q=le,i.r=Si,i.s=Ee,i.t=Pi,i.u=_i,i.v=ce,i.w=T,i.x=function([I,S,D]){return S+=90,S*=Math.PI/180,D*=Math.PI/180,{x:I*Math.cos(S)*Math.sin(D),y:I*Math.sin(S)*Math.sin(D),z:I*Math.cos(D)}},i.y=ka,i.z=cs}),r("worker",["./shared"],function(i){"use strict";class a{constructor(xe){this.keyCache={},xe&&this.replace(xe)}replace(xe){this._layerConfigs={},this._layers={},this.update(xe,[])}update(xe,Oe){for(let Fe of xe){this._layerConfigs[Fe.id]=Fe;let ft=this._layers[Fe.id]=i.aA(Fe);ft._featureFilter=i.a7(ft.filter),this.keyCache[Fe.id]&&delete this.keyCache[Fe.id]}for(let Fe of Oe)delete this.keyCache[Fe],delete this._layerConfigs[Fe],delete this._layers[Fe];this.familiesBySource={};let Ie=i.bk(Object.values(this._layerConfigs),this.keyCache);for(let Fe of Ie){let ft=Fe.map(zt=>this._layers[zt.id]),ge=ft[0];if(ge.visibility==="none")continue;let fe=ge.source||"",pe=this.familiesBySource[fe];pe||(pe=this.familiesBySource[fe]={});let dt=ge.sourceLayer||"_geojsonTileLayer",Pt=pe[dt];Pt||(Pt=pe[dt]=[]),Pt.push(ft)}}}class o{constructor(xe){let Oe={},Ie=[];for(let fe in xe){let pe=xe[fe],dt=Oe[fe]={};for(let Pt in pe){let zt=pe[+Pt];if(!zt||zt.bitmap.width===0||zt.bitmap.height===0)continue;let rr={x:0,y:0,w:zt.bitmap.width+2,h:zt.bitmap.height+2};Ie.push(rr),dt[Pt]={rect:rr,metrics:zt.metrics}}}let{w:Fe,h:ft}=i.p(Ie),ge=new i.o({width:Fe||1,height:ft||1});for(let fe in xe){let pe=xe[fe];for(let dt in pe){let Pt=pe[+dt];if(!Pt||Pt.bitmap.width===0||Pt.bitmap.height===0)continue;let zt=Oe[fe][dt].rect;i.o.copy(Pt.bitmap,ge,{x:0,y:0},{x:zt.x+1,y:zt.y+1},Pt.bitmap)}}this.image=ge,this.positions=Oe}}i.bl("GlyphAtlas",o);class s{constructor(xe){this.tileID=new i.S(xe.tileID.overscaledZ,xe.tileID.wrap,xe.tileID.canonical.z,xe.tileID.canonical.x,xe.tileID.canonical.y),this.uid=xe.uid,this.zoom=xe.zoom,this.pixelRatio=xe.pixelRatio,this.tileSize=xe.tileSize,this.source=xe.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=xe.showCollisionBoxes,this.collectResourceTiming=!!xe.collectResourceTiming,this.returnDependencies=!!xe.returnDependencies,this.promoteId=xe.promoteId,this.inFlightDependencies=[]}parse(xe,Oe,Ie,Fe){return i._(this,void 0,void 0,function*(){this.status="parsing",this.data=xe,this.collisionBoxArray=new i.a5;let ft=new i.bm(Object.keys(xe.layers).sort()),ge=new i.bn(this.tileID,this.promoteId);ge.bucketLayerIDs=[];let fe={},pe={featureIndex:ge,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:Ie},dt=Oe.familiesBySource[this.source];for(let Qi in dt){let si=xe.layers[Qi];if(!si)continue;si.version===1&&i.w(`Vector tile source "${this.source}" layer "${Qi}" does not use vector tile spec v2 and therefore may have some rendering errors.`);let Ai=ft.encode(Qi),Ni=[];for(let Rt=0;Rt=yt.maxzoom||yt.visibility!=="none"&&(u(Rt,this.zoom,Ie),(fe[yt.id]=yt.createBucket({index:ge.bucketLayerIDs.length,layers:Rt,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:Ai,sourceID:this.source})).populate(Ni,pe,this.tileID.canonical),ge.bucketLayerIDs.push(Rt.map(Gt=>Gt.id)))}}let Pt=i.aF(pe.glyphDependencies,Qi=>Object.keys(Qi).map(Number));this.inFlightDependencies.forEach(Qi=>Qi==null?void 0:Qi.abort()),this.inFlightDependencies=[];let zt=Promise.resolve({});if(Object.keys(Pt).length){let Qi=new AbortController;this.inFlightDependencies.push(Qi),zt=Fe.sendAsync({type:"GG",data:{stacks:Pt,source:this.source,tileID:this.tileID,type:"glyphs"}},Qi)}let rr=Object.keys(pe.iconDependencies),Gr=Promise.resolve({});if(rr.length){let Qi=new AbortController;this.inFlightDependencies.push(Qi),Gr=Fe.sendAsync({type:"GI",data:{icons:rr,source:this.source,tileID:this.tileID,type:"icons"}},Qi)}let Br=Object.keys(pe.patternDependencies),Er=Promise.resolve({});if(Br.length){let Qi=new AbortController;this.inFlightDependencies.push(Qi),Er=Fe.sendAsync({type:"GI",data:{icons:Br,source:this.source,tileID:this.tileID,type:"patterns"}},Qi)}let[Rr,pi,Di]=yield Promise.all([zt,Gr,Er]),ni=new o(Rr),$i=new i.bo(pi,Di);for(let Qi in fe){let si=fe[Qi];si instanceof i.a6?(u(si.layers,this.zoom,Ie),i.bp({bucket:si,glyphMap:Rr,glyphPositions:ni.positions,imageMap:pi,imagePositions:$i.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):si.hasPattern&&(si instanceof i.bq||si instanceof i.br||si instanceof i.bs)&&(u(si.layers,this.zoom,Ie),si.addFeatures(pe,this.tileID.canonical,$i.patternPositions))}return this.status="done",{buckets:Object.values(fe).filter(Qi=>!Qi.isEmpty()),featureIndex:ge,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:ni.image,imageAtlas:$i,glyphMap:this.returnDependencies?Rr:null,iconMap:this.returnDependencies?pi:null,glyphPositions:this.returnDependencies?ni.positions:null}})}}function u(Re,xe,Oe){let Ie=new i.z(xe);for(let Fe of Re)Fe.recalculate(Ie,Oe)}class l{constructor(xe,Oe,Ie){this.actor=xe,this.layerIndex=Oe,this.availableImages=Ie,this.fetching={},this.loading={},this.loaded={}}loadVectorTile(xe,Oe){return i._(this,void 0,void 0,function*(){let Ie=yield i.l(xe.request,Oe);try{return{vectorTile:new i.bt.VectorTile(new i.bu(Ie.data)),rawData:Ie.data,cacheControl:Ie.cacheControl,expires:Ie.expires}}catch(Fe){let ft=new Uint8Array(Ie.data),ge=`Unable to parse the tile at ${xe.request.url}, `;throw ge+=ft[0]===31&&ft[1]===139?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${Fe.message}`,new Error(ge)}})}loadTile(xe){return i._(this,void 0,void 0,function*(){let Oe=xe.uid,Ie=!!(xe&&xe.request&&xe.request.collectResourceTiming)&&new i.bv(xe.request),Fe=new s(xe);this.loading[Oe]=Fe;let ft=new AbortController;Fe.abort=ft;try{let ge=yield this.loadVectorTile(xe,ft);if(delete this.loading[Oe],!ge)return null;let fe=ge.rawData,pe={};ge.expires&&(pe.expires=ge.expires),ge.cacheControl&&(pe.cacheControl=ge.cacheControl);let dt={};if(Ie){let zt=Ie.finish();zt&&(dt.resourceTiming=JSON.parse(JSON.stringify(zt)))}Fe.vectorTile=ge.vectorTile;let Pt=Fe.parse(ge.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[Oe]=Fe,this.fetching[Oe]={rawTileData:fe,cacheControl:pe,resourceTiming:dt};try{let zt=yield Pt;return i.e({rawTileData:fe.slice(0)},zt,pe,dt)}finally{delete this.fetching[Oe]}}catch(ge){throw delete this.loading[Oe],Fe.status="done",this.loaded[Oe]=Fe,ge}})}reloadTile(xe){return i._(this,void 0,void 0,function*(){let Oe=xe.uid;if(!this.loaded||!this.loaded[Oe])throw new Error("Should not be trying to reload a tile that was never loaded or has been removed");let Ie=this.loaded[Oe];if(Ie.showCollisionBoxes=xe.showCollisionBoxes,Ie.status==="parsing"){let Fe=yield Ie.parse(Ie.vectorTile,this.layerIndex,this.availableImages,this.actor),ft;if(this.fetching[Oe]){let{rawTileData:ge,cacheControl:fe,resourceTiming:pe}=this.fetching[Oe];delete this.fetching[Oe],ft=i.e({rawTileData:ge.slice(0)},Fe,fe,pe)}else ft=Fe;return ft}if(Ie.status==="done"&&Ie.vectorTile)return Ie.parse(Ie.vectorTile,this.layerIndex,this.availableImages,this.actor)})}abortTile(xe){return i._(this,void 0,void 0,function*(){let Oe=this.loading,Ie=xe.uid;Oe&&Oe[Ie]&&Oe[Ie].abort&&(Oe[Ie].abort.abort(),delete Oe[Ie])})}removeTile(xe){return i._(this,void 0,void 0,function*(){this.loaded&&this.loaded[xe.uid]&&delete this.loaded[xe.uid]})}}class f{constructor(){this.loaded={}}loadTile(xe){return i._(this,void 0,void 0,function*(){let{uid:Oe,encoding:Ie,rawImageData:Fe,redFactor:ft,greenFactor:ge,blueFactor:fe,baseShift:pe}=xe,dt=Fe.width+2,Pt=Fe.height+2,zt=i.b(Fe)?new i.R({width:dt,height:Pt},yield i.bw(Fe,-1,-1,dt,Pt)):Fe,rr=new i.bx(Oe,zt,Ie,ft,ge,fe,pe);return this.loaded=this.loaded||{},this.loaded[Oe]=rr,rr})}removeTile(xe){let Oe=this.loaded,Ie=xe.uid;Oe&&Oe[Ie]&&delete Oe[Ie]}}function c(Re,xe){if(Re.length!==0){h(Re[0],xe);for(var Oe=1;Oe=Math.abs(fe)?Oe-pe+fe:fe-pe+Oe,Oe=pe}Oe+Ie>=0!=!!xe&&Re.reverse()}var d=i.by(function Re(xe,Oe){var Ie,Fe=xe&&xe.type;if(Fe==="FeatureCollection")for(Ie=0;Ie>31}function F(Re,xe){for(var Oe=Re.loadGeometry(),Ie=Re.type,Fe=0,ft=0,ge=Oe.length,fe=0;feRe},W=Math.fround||(N=new Float32Array(1),Re=>(N[0]=+Re,N[0]));var N;let H=3,re=5,ae=6;class be{constructor(xe){this.options=Object.assign(Object.create(j),xe),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(xe){let{log:Oe,minZoom:Ie,maxZoom:Fe}=this.options;Oe&&console.time("total time");let ft=`prepare ${xe.length} points`;Oe&&console.time(ft),this.points=xe;let ge=[];for(let pe=0;pe=Ie;pe--){let dt=+Date.now();fe=this.trees[pe]=this._createTree(this._cluster(fe,pe)),Oe&&console.log("z%d: %d clusters in %dms",pe,fe.numItems,+Date.now()-dt)}return Oe&&console.timeEnd("total time"),this}getClusters(xe,Oe){let Ie=((xe[0]+180)%360+360)%360-180,Fe=Math.max(-90,Math.min(90,xe[1])),ft=xe[2]===180?180:((xe[2]+180)%360+360)%360-180,ge=Math.max(-90,Math.min(90,xe[3]));if(xe[2]-xe[0]>=360)Ie=-180,ft=180;else if(Ie>ft){let zt=this.getClusters([Ie,Fe,180,ge],Oe),rr=this.getClusters([-180,Fe,ft,ge],Oe);return zt.concat(rr)}let fe=this.trees[this._limitZoom(Oe)],pe=fe.range(de(Ie),te(ge),de(ft),te(Fe)),dt=fe.data,Pt=[];for(let zt of pe){let rr=this.stride*zt;Pt.push(dt[rr+re]>1?ze(dt,rr,this.clusterProps):this.points[dt[rr+H]])}return Pt}getChildren(xe){let Oe=this._getOriginId(xe),Ie=this._getOriginZoom(xe),Fe="No cluster with the specified id.",ft=this.trees[Ie];if(!ft)throw new Error(Fe);let ge=ft.data;if(Oe*this.stride>=ge.length)throw new Error(Fe);let fe=this.options.radius/(this.options.extent*Math.pow(2,Ie-1)),pe=ft.within(ge[Oe*this.stride],ge[Oe*this.stride+1],fe),dt=[];for(let Pt of pe){let zt=Pt*this.stride;ge[zt+4]===xe&&dt.push(ge[zt+re]>1?ze(ge,zt,this.clusterProps):this.points[ge[zt+H]])}if(dt.length===0)throw new Error(Fe);return dt}getLeaves(xe,Oe,Ie){let Fe=[];return this._appendLeaves(Fe,xe,Oe=Oe||10,Ie=Ie||0,0),Fe}getTile(xe,Oe,Ie){let Fe=this.trees[this._limitZoom(xe)],ft=Math.pow(2,xe),{extent:ge,radius:fe}=this.options,pe=fe/ge,dt=(Ie-pe)/ft,Pt=(Ie+1+pe)/ft,zt={features:[]};return this._addTileFeatures(Fe.range((Oe-pe)/ft,dt,(Oe+1+pe)/ft,Pt),Fe.data,Oe,Ie,ft,zt),Oe===0&&this._addTileFeatures(Fe.range(1-pe/ft,dt,1,Pt),Fe.data,ft,Ie,ft,zt),Oe===ft-1&&this._addTileFeatures(Fe.range(0,dt,pe/ft,Pt),Fe.data,-1,Ie,ft,zt),zt.features.length?zt:null}getClusterExpansionZoom(xe){let Oe=this._getOriginZoom(xe)-1;for(;Oe<=this.options.maxZoom;){let Ie=this.getChildren(xe);if(Oe++,Ie.length!==1)break;xe=Ie[0].properties.cluster_id}return Oe}_appendLeaves(xe,Oe,Ie,Fe,ft){let ge=this.getChildren(Oe);for(let fe of ge){let pe=fe.properties;if(pe&&pe.cluster?ft+pe.point_count<=Fe?ft+=pe.point_count:ft=this._appendLeaves(xe,pe.cluster_id,Ie,Fe,ft):ft1,Pt,zt,rr;if(dt)Pt=Ce(Oe,pe,this.clusterProps),zt=Oe[pe],rr=Oe[pe+1];else{let Er=this.points[Oe[pe+H]];Pt=Er.properties;let[Rr,pi]=Er.geometry.coordinates;zt=de(Rr),rr=te(pi)}let Gr={type:1,geometry:[[Math.round(this.options.extent*(zt*ft-Ie)),Math.round(this.options.extent*(rr*ft-Fe))]],tags:Pt},Br;Br=dt||this.options.generateId?Oe[pe+H]:this.points[Oe[pe+H]].id,Br!==void 0&&(Gr.id=Br),ge.features.push(Gr)}}_limitZoom(xe){return Math.max(this.options.minZoom,Math.min(Math.floor(+xe),this.options.maxZoom+1))}_cluster(xe,Oe){let{radius:Ie,extent:Fe,reduce:ft,minPoints:ge}=this.options,fe=Ie/(Fe*Math.pow(2,Oe)),pe=xe.data,dt=[],Pt=this.stride;for(let zt=0;ztOe&&(Rr+=pe[Di+re])}if(Rr>Er&&Rr>=ge){let pi,Di=rr*Er,ni=Gr*Er,$i=-1,Qi=((zt/Pt|0)<<5)+(Oe+1)+this.points.length;for(let si of Br){let Ai=si*Pt;if(pe[Ai+2]<=Oe)continue;pe[Ai+2]=Oe;let Ni=pe[Ai+re];Di+=pe[Ai]*Ni,ni+=pe[Ai+1]*Ni,pe[Ai+4]=Qi,ft&&(pi||(pi=this._map(pe,zt,!0),$i=this.clusterProps.length,this.clusterProps.push(pi)),ft(pi,this._map(pe,Ai)))}pe[zt+4]=Qi,dt.push(Di/Rr,ni/Rr,1/0,Qi,-1,Rr),ft&&dt.push($i)}else{for(let pi=0;pi1)for(let pi of Br){let Di=pi*Pt;if(!(pe[Di+2]<=Oe)){pe[Di+2]=Oe;for(let ni=0;ni>5}_getOriginZoom(xe){return(xe-this.points.length)%32}_map(xe,Oe,Ie){if(xe[Oe+re]>1){let ge=this.clusterProps[xe[Oe+ae]];return Ie?Object.assign({},ge):ge}let Fe=this.points[xe[Oe+H]].properties,ft=this.options.map(Fe);return Ie&&ft===Fe?Object.assign({},ft):ft}}function ze(Re,xe,Oe){return{type:"Feature",id:Re[xe+H],properties:Ce(Re,xe,Oe),geometry:{type:"Point",coordinates:[(Ie=Re[xe],360*(Ie-.5)),ke(Re[xe+1])]}};var Ie}function Ce(Re,xe,Oe){let Ie=Re[xe+re],Fe=Ie>=1e4?`${Math.round(Ie/1e3)}k`:Ie>=1e3?Math.round(Ie/100)/10+"k":Ie,ft=Re[xe+ae],ge=ft===-1?{}:Object.assign({},Oe[ft]);return Object.assign(ge,{cluster:!0,cluster_id:Re[xe+H],point_count:Ie,point_count_abbreviated:Fe})}function de(Re){return Re/360+.5}function te(Re){let xe=Math.sin(Re*Math.PI/180),Oe=.5-.25*Math.log((1+xe)/(1-xe))/Math.PI;return Oe<0?0:Oe>1?1:Oe}function ke(Re){let xe=(180-360*Re)*Math.PI/180;return 360*Math.atan(Math.exp(xe))/Math.PI-90}function Ee(Re,xe,Oe,Ie){let Fe=Ie,ft=xe+(Oe-xe>>1),ge,fe=Oe-xe,pe=Re[xe],dt=Re[xe+1],Pt=Re[Oe],zt=Re[Oe+1];for(let rr=xe+3;rrFe)ge=rr,Fe=Gr;else if(Gr===Fe){let Br=Math.abs(rr-ft);BrIe&&(ge-xe>3&&Ee(Re,xe,ge,Ie),Re[ge+2]=Fe,Oe-ge>3&&Ee(Re,ge,Oe,Ie))}function Me(Re,xe,Oe,Ie,Fe,ft){let ge=Fe-Oe,fe=ft-Ie;if(ge!==0||fe!==0){let pe=((Re-Oe)*ge+(xe-Ie)*fe)/(ge*ge+fe*fe);pe>1?(Oe=Fe,Ie=ft):pe>0&&(Oe+=ge*pe,Ie+=fe*pe)}return ge=Re-Oe,fe=xe-Ie,ge*ge+fe*fe}function Ue(Re,xe,Oe,Ie){let Fe={id:Re==null?null:Re,type:xe,geometry:Oe,tags:Ie,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if(xe==="Point"||xe==="MultiPoint"||xe==="LineString")De(Fe,Oe);else if(xe==="Polygon")De(Fe,Oe[0]);else if(xe==="MultiLineString")for(let ft of Oe)De(Fe,ft);else if(xe==="MultiPolygon")for(let ft of Oe)De(Fe,ft[0]);return Fe}function De(Re,xe){for(let Oe=0;Oe0&&(ge+=Ie?(Fe*Pt-dt*ft)/2:Math.sqrt(Math.pow(dt-Fe,2)+Math.pow(Pt-ft,2))),Fe=dt,ft=Pt}let fe=xe.length-3;xe[2]=1,Ee(xe,0,fe,Oe),xe[fe+2]=1,xe.size=Math.abs(ge),xe.start=0,xe.end=xe.size}function Je(Re,xe,Oe,Ie){for(let Fe=0;Fe1?1:Oe}function Nt(Re,xe,Oe,Ie,Fe,ft,ge,fe){if(Ie/=xe,ft>=(Oe/=xe)&&ge=Ie)return null;let pe=[];for(let dt of Re){let Pt=dt.geometry,zt=dt.type,rr=Fe===0?dt.minX:dt.minY,Gr=Fe===0?dt.maxX:dt.maxY;if(rr>=Oe&&Gr=Ie)continue;let Br=[];if(zt==="Point"||zt==="MultiPoint")at(Pt,Br,Oe,Ie,Fe);else if(zt==="LineString")Ke(Pt,Br,Oe,Ie,Fe,!1,fe.lineMetrics);else if(zt==="MultiLineString")wt(Pt,Br,Oe,Ie,Fe,!1);else if(zt==="Polygon")wt(Pt,Br,Oe,Ie,Fe,!0);else if(zt==="MultiPolygon")for(let Er of Pt){let Rr=[];wt(Er,Rr,Oe,Ie,Fe,!0),Rr.length&&Br.push(Rr)}if(Br.length){if(fe.lineMetrics&&zt==="LineString"){for(let Er of Br)pe.push(Ue(dt.id,zt,Er,dt.tags));continue}zt!=="LineString"&&zt!=="MultiLineString"||(Br.length===1?(zt="LineString",Br=Br[0]):zt="MultiLineString"),zt!=="Point"&&zt!=="MultiPoint"||(zt=Br.length===3?"Point":"MultiPoint"),pe.push(Ue(dt.id,zt,Br,dt.tags))}}return pe.length?pe:null}function at(Re,xe,Oe,Ie,Fe){for(let ft=0;ft=Oe&&ge<=Ie&&St(xe,Re[ft],Re[ft+1],Re[ft+2])}}function Ke(Re,xe,Oe,Ie,Fe,ft,ge){let fe=Ct(Re),pe=Fe===0?Dt:Zt,dt,Pt,zt=Re.start;for(let Rr=0;RrOe&&(Pt=pe(fe,pi,Di,$i,Qi,Oe),ge&&(fe.start=zt+dt*Pt)):si>Ie?Ai=Oe&&(Pt=pe(fe,pi,Di,$i,Qi,Oe),Ni=!0),Ai>Ie&&si<=Ie&&(Pt=pe(fe,pi,Di,$i,Qi,Ie),Ni=!0),!ft&&Ni&&(ge&&(fe.end=zt+dt*Pt),xe.push(fe),fe=Ct(Re)),ge&&(zt+=dt)}let rr=Re.length-3,Gr=Re[rr],Br=Re[rr+1],Er=Fe===0?Gr:Br;Er>=Oe&&Er<=Ie&&St(fe,Gr,Br,Re[rr+2]),rr=fe.length-3,ft&&rr>=3&&(fe[rr]!==fe[0]||fe[rr+1]!==fe[1])&&St(fe,fe[0],fe[1],fe[2]),fe.length&&xe.push(fe)}function Ct(Re){let xe=[];return xe.size=Re.size,xe.start=Re.start,xe.end=Re.end,xe}function wt(Re,xe,Oe,Ie,Fe,ft){for(let ge of Re)Ke(ge,xe,Oe,Ie,Fe,ft,!1)}function St(Re,xe,Oe,Ie){Re.push(xe,Oe,Ie)}function Dt(Re,xe,Oe,Ie,Fe,ft){let ge=(ft-xe)/(Ie-xe);return St(Re,ft,Oe+(Fe-Oe)*ge,1),ge}function Zt(Re,xe,Oe,Ie,Fe,ft){let ge=(ft-Oe)/(Fe-Oe);return St(Re,xe+(Ie-xe)*ge,ft,1),ge}function Et(Re,xe){let Oe=[];for(let Ie=0;Ie0&&xe.size<(Fe?ge:Ie))return void(Oe.numPoints+=xe.length/3);let fe=[];for(let pe=0;pege)&&(Oe.numSimplified++,fe.push(xe[pe],xe[pe+1])),Oe.numPoints++;Fe&&function(pe,dt){let Pt=0;for(let zt=0,rr=pe.length,Gr=rr-2;zt0===dt)for(let zt=0,rr=pe.length;zt24)throw new Error("maxZoom should be in the 0-24 range");if(Oe.promoteId&&Oe.generateId)throw new Error("promoteId and generateId cannot be used together.");let Fe=function(ft,ge){let fe=[];if(ft.type==="FeatureCollection")for(let pe=0;pe1&&console.time("creation"),Gr=this.tiles[rr]=vt(xe,Oe,Ie,Fe,dt),this.tileCoords.push({z:Oe,x:Ie,y:Fe}),Pt)){Pt>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Oe,Ie,Fe,Gr.numFeatures,Gr.numPoints,Gr.numSimplified),console.timeEnd("creation"));let Ni=`z${Oe}`;this.stats[Ni]=(this.stats[Ni]||0)+1,this.total++}if(Gr.source=xe,ft==null){if(Oe===dt.indexMaxZoom||Gr.numPoints<=dt.indexMaxPoints)continue}else{if(Oe===dt.maxZoom||Oe===ft)continue;if(ft!=null){let Ni=ft-Oe;if(Ie!==ge>>Ni||Fe!==fe>>Ni)continue}}if(Gr.source=null,xe.length===0)continue;Pt>1&&console.time("clipping");let Br=.5*dt.buffer/dt.extent,Er=.5-Br,Rr=.5+Br,pi=1+Br,Di=null,ni=null,$i=null,Qi=null,si=Nt(xe,zt,Ie-Br,Ie+Rr,0,Gr.minX,Gr.maxX,dt),Ai=Nt(xe,zt,Ie+Er,Ie+pi,0,Gr.minX,Gr.maxX,dt);xe=null,si&&(Di=Nt(si,zt,Fe-Br,Fe+Rr,1,Gr.minY,Gr.maxY,dt),ni=Nt(si,zt,Fe+Er,Fe+pi,1,Gr.minY,Gr.maxY,dt),si=null),Ai&&($i=Nt(Ai,zt,Fe-Br,Fe+Rr,1,Gr.minY,Gr.maxY,dt),Qi=Nt(Ai,zt,Fe+Er,Fe+pi,1,Gr.minY,Gr.maxY,dt),Ai=null),Pt>1&&console.timeEnd("clipping"),pe.push(Di||[],Oe+1,2*Ie,2*Fe),pe.push(ni||[],Oe+1,2*Ie,2*Fe+1),pe.push($i||[],Oe+1,2*Ie+1,2*Fe),pe.push(Qi||[],Oe+1,2*Ie+1,2*Fe+1)}}getTile(xe,Oe,Ie){xe=+xe,Oe=+Oe,Ie=+Ie;let Fe=this.options,{extent:ft,debug:ge}=Fe;if(xe<0||xe>24)return null;let fe=1<1&&console.log("drilling down to z%d-%d-%d",xe,Oe,Ie);let dt,Pt=xe,zt=Oe,rr=Ie;for(;!dt&&Pt>0;)Pt--,zt>>=1,rr>>=1,dt=this.tiles[It(Pt,zt,rr)];return dt&&dt.source?(ge>1&&(console.log("found parent tile z%d-%d-%d",Pt,zt,rr),console.time("drilling down")),this.splitTile(dt.source,Pt,zt,rr,xe,Oe,Ie),ge>1&&console.timeEnd("drilling down"),this.tiles[pe]?ot(this.tiles[pe],ft):null):null}}function It(Re,xe,Oe){return 32*((1<{zt.properties=Gr;let Br={};for(let Er of rr)Br[Er]=pe[Er].evaluate(Pt,zt);return Br},ge.reduce=(Gr,Br)=>{zt.properties=Br;for(let Er of rr)Pt.accumulated=Gr[Er],Gr[Er]=dt[Er].evaluate(Pt,zt)},ge}(xe)).load((yield this._pendingData).features):(Fe=yield this._pendingData,new et(Fe,xe.geojsonVtOptions)),this.loaded={};let ft={};if(Ie){let ge=Ie.finish();ge&&(ft.resourceTiming={},ft.resourceTiming[xe.source]=JSON.parse(JSON.stringify(ge)))}return ft}catch(ft){if(delete this._pendingRequest,i.bB(ft))return{abandoned:!0};throw ft}var Fe})}getData(){return i._(this,void 0,void 0,function*(){return this._pendingData})}reloadTile(xe){let Oe=this.loaded;return Oe&&Oe[xe.uid]?super.reloadTile(xe):this.loadTile(xe)}loadAndProcessGeoJSON(xe,Oe){return i._(this,void 0,void 0,function*(){let Ie=yield this.loadGeoJSON(xe,Oe);if(delete this._pendingRequest,typeof Ie!="object")throw new Error(`Input data given to '${xe.source}' is not a valid GeoJSON object.`);if(d(Ie,!0),xe.filter){let Fe=i.bC(xe.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(Fe.result==="error")throw new Error(Fe.value.map(ge=>`${ge.key}: ${ge.message}`).join(", "));Ie={type:"FeatureCollection",features:Ie.features.filter(ge=>Fe.value.evaluate({zoom:0},ge))}}return Ie})}loadGeoJSON(xe,Oe){return i._(this,void 0,void 0,function*(){let{promoteId:Ie}=xe;if(xe.request){let Fe=yield i.h(xe.request,Oe);return this._dataUpdateable=cr(Fe.data,Ie)?_r(Fe.data,Ie):void 0,Fe.data}if(typeof xe.data=="string")try{let Fe=JSON.parse(xe.data);return this._dataUpdateable=cr(Fe,Ie)?_r(Fe,Ie):void 0,Fe}catch(Fe){throw new Error(`Input data given to '${xe.source}' is not a valid GeoJSON object.`)}if(!xe.dataDiff)throw new Error(`Input data given to '${xe.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${xe.source}`);return function(Fe,ft,ge){var fe,pe,dt,Pt;if(ft.removeAll&&Fe.clear(),ft.remove)for(let zt of ft.remove)Fe.delete(zt);if(ft.add)for(let zt of ft.add){let rr=Yt(zt,ge);rr!=null&&Fe.set(rr,zt)}if(ft.update)for(let zt of ft.update){let rr=Fe.get(zt.id);if(rr==null)continue;let Gr=!zt.removeAllProperties&&(((fe=zt.removeProperties)===null||fe===void 0?void 0:fe.length)>0||((pe=zt.addOrUpdateProperties)===null||pe===void 0?void 0:pe.length)>0);if((zt.newGeometry||zt.removeAllProperties||Gr)&&(rr=Object.assign({},rr),Fe.set(zt.id,rr),Gr&&(rr.properties=Object.assign({},rr.properties))),zt.newGeometry&&(rr.geometry=zt.newGeometry),zt.removeAllProperties)rr.properties={};else if(((dt=zt.removeProperties)===null||dt===void 0?void 0:dt.length)>0)for(let Br of zt.removeProperties)Object.prototype.hasOwnProperty.call(rr.properties,Br)&&delete rr.properties[Br];if(((Pt=zt.addOrUpdateProperties)===null||Pt===void 0?void 0:Pt.length)>0)for(let{key:Br,value:Er}of zt.addOrUpdateProperties)rr.properties[Br]=Er}}(this._dataUpdateable,xe.dataDiff,Ie),{type:"FeatureCollection",features:Array.from(this._dataUpdateable.values())}})}removeSource(xe){return i._(this,void 0,void 0,function*(){this._pendingRequest&&this._pendingRequest.abort()})}getClusterExpansionZoom(xe){return this._geoJSONIndex.getClusterExpansionZoom(xe.clusterId)}getClusterChildren(xe){return this._geoJSONIndex.getChildren(xe.clusterId)}getClusterLeaves(xe){return this._geoJSONIndex.getLeaves(xe.clusterId,xe.limit,xe.offset)}}class Ut{constructor(xe){this.self=xe,this.actor=new i.F(xe),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(Oe,Ie)=>{if(this.externalWorkerSourceTypes[Oe])throw new Error(`Worker source with name "${Oe}" already registered.`);this.externalWorkerSourceTypes[Oe]=Ie},this.self.addProtocol=i.bi,this.self.removeProtocol=i.bj,this.self.registerRTLTextPlugin=Oe=>{if(i.bD.isParsed())throw new Error("RTL text plugin already registered.");i.bD.setMethods(Oe)},this.actor.registerMessageHandler("LDT",(Oe,Ie)=>this._getDEMWorkerSource(Oe,Ie.source).loadTile(Ie)),this.actor.registerMessageHandler("RDT",(Oe,Ie)=>i._(this,void 0,void 0,function*(){this._getDEMWorkerSource(Oe,Ie.source).removeTile(Ie)})),this.actor.registerMessageHandler("GCEZ",(Oe,Ie)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Oe,Ie.type,Ie.source).getClusterExpansionZoom(Ie)})),this.actor.registerMessageHandler("GCC",(Oe,Ie)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Oe,Ie.type,Ie.source).getClusterChildren(Ie)})),this.actor.registerMessageHandler("GCL",(Oe,Ie)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Oe,Ie.type,Ie.source).getClusterLeaves(Ie)})),this.actor.registerMessageHandler("LD",(Oe,Ie)=>this._getWorkerSource(Oe,Ie.type,Ie.source).loadData(Ie)),this.actor.registerMessageHandler("GD",(Oe,Ie)=>this._getWorkerSource(Oe,Ie.type,Ie.source).getData()),this.actor.registerMessageHandler("LT",(Oe,Ie)=>this._getWorkerSource(Oe,Ie.type,Ie.source).loadTile(Ie)),this.actor.registerMessageHandler("RT",(Oe,Ie)=>this._getWorkerSource(Oe,Ie.type,Ie.source).reloadTile(Ie)),this.actor.registerMessageHandler("AT",(Oe,Ie)=>this._getWorkerSource(Oe,Ie.type,Ie.source).abortTile(Ie)),this.actor.registerMessageHandler("RMT",(Oe,Ie)=>this._getWorkerSource(Oe,Ie.type,Ie.source).removeTile(Ie)),this.actor.registerMessageHandler("RS",(Oe,Ie)=>i._(this,void 0,void 0,function*(){if(!this.workerSources[Oe]||!this.workerSources[Oe][Ie.type]||!this.workerSources[Oe][Ie.type][Ie.source])return;let Fe=this.workerSources[Oe][Ie.type][Ie.source];delete this.workerSources[Oe][Ie.type][Ie.source],Fe.removeSource!==void 0&&Fe.removeSource(Ie)})),this.actor.registerMessageHandler("RM",Oe=>i._(this,void 0,void 0,function*(){delete this.layerIndexes[Oe],delete this.availableImages[Oe],delete this.workerSources[Oe],delete this.demWorkerSources[Oe]})),this.actor.registerMessageHandler("SR",(Oe,Ie)=>i._(this,void 0,void 0,function*(){this.referrer=Ie})),this.actor.registerMessageHandler("SRPS",(Oe,Ie)=>this._syncRTLPluginState(Oe,Ie)),this.actor.registerMessageHandler("IS",(Oe,Ie)=>i._(this,void 0,void 0,function*(){this.self.importScripts(Ie)})),this.actor.registerMessageHandler("SI",(Oe,Ie)=>this._setImages(Oe,Ie)),this.actor.registerMessageHandler("UL",(Oe,Ie)=>i._(this,void 0,void 0,function*(){this._getLayerIndex(Oe).update(Ie.layers,Ie.removedIds)})),this.actor.registerMessageHandler("SL",(Oe,Ie)=>i._(this,void 0,void 0,function*(){this._getLayerIndex(Oe).replace(Ie)}))}_setImages(xe,Oe){return i._(this,void 0,void 0,function*(){this.availableImages[xe]=Oe;for(let Ie in this.workerSources[xe]){let Fe=this.workerSources[xe][Ie];for(let ft in Fe)Fe[ft].availableImages=Oe}})}_syncRTLPluginState(xe,Oe){return i._(this,void 0,void 0,function*(){if(i.bD.isParsed())return i.bD.getState();if(Oe.pluginStatus!=="loading")return i.bD.setState(Oe),Oe;let Ie=Oe.pluginURL;if(this.self.importScripts(Ie),i.bD.isParsed()){let Fe={pluginStatus:"loaded",pluginURL:Ie};return i.bD.setState(Fe),Fe}throw i.bD.setState({pluginStatus:"error",pluginURL:""}),new Error(`RTL Text Plugin failed to import scripts from ${Ie}`)})}_getAvailableImages(xe){let Oe=this.availableImages[xe];return Oe||(Oe=[]),Oe}_getLayerIndex(xe){let Oe=this.layerIndexes[xe];return Oe||(Oe=this.layerIndexes[xe]=new a),Oe}_getWorkerSource(xe,Oe,Ie){if(this.workerSources[xe]||(this.workerSources[xe]={}),this.workerSources[xe][Oe]||(this.workerSources[xe][Oe]={}),!this.workerSources[xe][Oe][Ie]){let Fe={sendAsync:(ft,ge)=>(ft.targetMapId=xe,this.actor.sendAsync(ft,ge))};switch(Oe){case"vector":this.workerSources[xe][Oe][Ie]=new l(Fe,this._getLayerIndex(xe),this._getAvailableImages(xe));break;case"geojson":this.workerSources[xe][Oe][Ie]=new yr(Fe,this._getLayerIndex(xe),this._getAvailableImages(xe));break;default:this.workerSources[xe][Oe][Ie]=new this.externalWorkerSourceTypes[Oe](Fe,this._getLayerIndex(xe),this._getAvailableImages(xe))}}return this.workerSources[xe][Oe][Ie]}_getDEMWorkerSource(xe,Oe){return this.demWorkerSources[xe]||(this.demWorkerSources[xe]={}),this.demWorkerSources[xe][Oe]||(this.demWorkerSources[xe][Oe]=new f),this.demWorkerSources[xe][Oe]}}return i.i(self)&&(self.worker=new Ut(self)),Ut}),r("index",["exports","./shared"],function(i,a){"use strict";var o="4.7.1";let s,u,l={now:typeof performance!="undefined"&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync:le=>new Promise((w,q)=>{let Q=requestAnimationFrame(w);le.signal.addEventListener("abort",()=>{cancelAnimationFrame(Q),q(a.c())})}),getImageData(le,w=0){return this.getImageCanvasContext(le).getImageData(-w,-w,le.width+2*w,le.height+2*w)},getImageCanvasContext(le){let w=window.document.createElement("canvas"),q=w.getContext("2d",{willReadFrequently:!0});if(!q)throw new Error("failed to create canvas 2d context");return w.width=le.width,w.height=le.height,q.drawImage(le,0,0,le.width,le.height),q},resolveURL:le=>(s||(s=document.createElement("a")),s.href=le,s.href),hardwareConcurrency:typeof navigator!="undefined"&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(u==null&&(u=matchMedia("(prefers-reduced-motion: reduce)")),u.matches)}};class f{static testProp(w){if(!f.docStyle)return w[0];for(let q=0;q{window.removeEventListener("click",f.suppressClickInternal,!0)},0)}static getScale(w){let q=w.getBoundingClientRect();return{x:q.width/w.offsetWidth||1,y:q.height/w.offsetHeight||1,boundingClientRect:q}}static getPoint(w,q,Q){let ee=q.boundingClientRect;return new a.P((Q.clientX-ee.left)/q.x-w.clientLeft,(Q.clientY-ee.top)/q.y-w.clientTop)}static mousePos(w,q){let Q=f.getScale(w);return f.getPoint(w,Q,q)}static touchPos(w,q){let Q=[],ee=f.getScale(w);for(let ue=0;ue{h&&b(h),h=null,_=!0},d.onerror=()=>{p=!0,h=null},d.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="),function(le){let w,q,Q,ee;le.resetRequestQueue=()=>{w=[],q=0,Q=0,ee={}},le.addThrottleControl=mt=>{let Bt=Q++;return ee[Bt]=mt,Bt},le.removeThrottleControl=mt=>{delete ee[mt],Ve()},le.getImage=(mt,Bt,ir=!0)=>new Promise((or,kr)=>{c.supported&&(mt.headers||(mt.headers={}),mt.headers.accept="image/webp,*/*"),a.e(mt,{type:"image"}),w.push({abortController:Bt,requestParameters:mt,supportImageRefresh:ir,state:"queued",onError:Vr=>{kr(Vr)},onSuccess:Vr=>{or(Vr)}}),Ve()});let ue=mt=>a._(this,void 0,void 0,function*(){mt.state="running";let{requestParameters:Bt,supportImageRefresh:ir,onError:or,onSuccess:kr,abortController:Vr}=mt,he=ir===!1&&!a.i(self)&&!a.g(Bt.url)&&(!Bt.headers||Object.keys(Bt.headers).reduce((Ge,lt)=>Ge&<==="accept",!0));q++;let Se=he?tt(Bt,Vr):a.m(Bt,Vr);try{let Ge=yield Se;delete mt.abortController,mt.state="completed",Ge.data instanceof HTMLImageElement||a.b(Ge.data)?kr(Ge):Ge.data&&kr({data:yield(Ne=Ge.data,typeof createImageBitmap=="function"?a.d(Ne):a.f(Ne)),cacheControl:Ge.cacheControl,expires:Ge.expires})}catch(Ge){delete mt.abortController,or(Ge)}finally{q--,Ve()}var Ne}),Ve=()=>{let mt=(()=>{for(let Bt of Object.keys(ee))if(ee[Bt]())return!0;return!1})()?a.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:a.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let Bt=q;Bt0;Bt++){let ir=w.shift();ir.abortController.signal.aborted?Bt--:ue(ir)}},tt=(mt,Bt)=>new Promise((ir,or)=>{let kr=new Image,Vr=mt.url,he=mt.credentials;he&&he==="include"?kr.crossOrigin="use-credentials":(he&&he==="same-origin"||!a.s(Vr))&&(kr.crossOrigin="anonymous"),Bt.signal.addEventListener("abort",()=>{kr.src="",or(a.c())}),kr.fetchPriority="high",kr.onload=()=>{kr.onerror=kr.onload=null,ir({data:kr})},kr.onerror=()=>{kr.onerror=kr.onload=null,Bt.signal.aborted||or(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))},kr.src=Vr})}(v||(v={})),v.resetRequestQueue();class k{constructor(w){this._transformRequestFn=w}transformRequest(w,q){return this._transformRequestFn&&this._transformRequestFn(w,q)||{url:w}}setTransformRequest(w){this._transformRequestFn=w}}function E(le){var w=new a.A(3);return w[0]=le[0],w[1]=le[1],w[2]=le[2],w}var A,L=function(le,w,q){return le[0]=w[0]-q[0],le[1]=w[1]-q[1],le[2]=w[2]-q[2],le};A=new a.A(3),a.A!=Float32Array&&(A[0]=0,A[1]=0,A[2]=0);var x=function(le){var w=le[0],q=le[1];return w*w+q*q};function C(le){let w=[];if(typeof le=="string")w.push({id:"default",url:le});else if(le&&le.length>0){let q=[];for(let{id:Q,url:ee}of le){let ue=`${Q}${ee}`;q.indexOf(ue)===-1&&(q.push(ue),w.push({id:Q,url:ee}))}}return w}function M(le,w,q){let Q=le.split("?");return Q[0]+=`${w}${q}`,Q.join("?")}(function(){var le=new a.A(2);a.A!=Float32Array&&(le[0]=0,le[1]=0)})();class m{constructor(w,q,Q,ee){this.context=w,this.format=Q,this.texture=w.gl.createTexture(),this.update(q,ee)}update(w,q,Q){let{width:ee,height:ue}=w,Ve=!(this.size&&this.size[0]===ee&&this.size[1]===ue||Q),{context:tt}=this,{gl:mt}=tt;if(this.useMipmap=!!(q&&q.useMipmap),mt.bindTexture(mt.TEXTURE_2D,this.texture),tt.pixelStoreUnpackFlipY.set(!1),tt.pixelStoreUnpack.set(1),tt.pixelStoreUnpackPremultiplyAlpha.set(this.format===mt.RGBA&&(!q||q.premultiply!==!1)),Ve)this.size=[ee,ue],w instanceof HTMLImageElement||w instanceof HTMLCanvasElement||w instanceof HTMLVideoElement||w instanceof ImageData||a.b(w)?mt.texImage2D(mt.TEXTURE_2D,0,this.format,this.format,mt.UNSIGNED_BYTE,w):mt.texImage2D(mt.TEXTURE_2D,0,this.format,ee,ue,0,this.format,mt.UNSIGNED_BYTE,w.data);else{let{x:Bt,y:ir}=Q||{x:0,y:0};w instanceof HTMLImageElement||w instanceof HTMLCanvasElement||w instanceof HTMLVideoElement||w instanceof ImageData||a.b(w)?mt.texSubImage2D(mt.TEXTURE_2D,0,Bt,ir,mt.RGBA,mt.UNSIGNED_BYTE,w):mt.texSubImage2D(mt.TEXTURE_2D,0,Bt,ir,ee,ue,mt.RGBA,mt.UNSIGNED_BYTE,w.data)}this.useMipmap&&this.isSizePowerOfTwo()&&mt.generateMipmap(mt.TEXTURE_2D)}bind(w,q,Q){let{context:ee}=this,{gl:ue}=ee;ue.bindTexture(ue.TEXTURE_2D,this.texture),Q!==ue.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(Q=ue.LINEAR),w!==this.filter&&(ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_MAG_FILTER,w),ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_MIN_FILTER,Q||w),this.filter=w),q!==this.wrap&&(ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_WRAP_S,q),ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_WRAP_T,q),this.wrap=q)}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){let{gl:w}=this.context;w.deleteTexture(this.texture),this.texture=null}}function P(le){let{userImage:w}=le;return!!(w&&w.render&&w.render())&&(le.data.replace(new Uint8Array(w.data.buffer)),!0)}class T extends a.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new a.R({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(w){if(this.loaded!==w&&(this.loaded=w,w)){for(let{ids:q,promiseResolve:Q}of this.requestors)Q(this._getImagesForIds(q));this.requestors=[]}}getImage(w){let q=this.images[w];if(q&&!q.data&&q.spriteData){let Q=q.spriteData;q.data=new a.R({width:Q.width,height:Q.height},Q.context.getImageData(Q.x,Q.y,Q.width,Q.height).data),q.spriteData=null}return q}addImage(w,q){if(this.images[w])throw new Error(`Image id ${w} already exist, use updateImage instead`);this._validate(w,q)&&(this.images[w]=q)}_validate(w,q){let Q=!0,ee=q.data||q.spriteData;return this._validateStretch(q.stretchX,ee&&ee.width)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "stretchX" value`))),Q=!1),this._validateStretch(q.stretchY,ee&&ee.height)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "stretchY" value`))),Q=!1),this._validateContent(q.content,q)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "content" value`))),Q=!1),Q}_validateStretch(w,q){if(!w)return!0;let Q=0;for(let ee of w){if(ee[0]{let ee=!0;if(!this.isLoaded())for(let ue of w)this.images[ue]||(ee=!1);this.isLoaded()||ee?q(this._getImagesForIds(w)):this.requestors.push({ids:w,promiseResolve:q})})}_getImagesForIds(w){let q={};for(let Q of w){let ee=this.getImage(Q);ee||(this.fire(new a.k("styleimagemissing",{id:Q})),ee=this.getImage(Q)),ee?q[Q]={data:ee.data.clone(),pixelRatio:ee.pixelRatio,sdf:ee.sdf,version:ee.version,stretchX:ee.stretchX,stretchY:ee.stretchY,content:ee.content,textFitWidth:ee.textFitWidth,textFitHeight:ee.textFitHeight,hasRenderCallback:!!(ee.userImage&&ee.userImage.render)}:a.w(`Image "${Q}" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.`)}return q}getPixelSize(){let{width:w,height:q}=this.atlasImage;return{width:w,height:q}}getPattern(w){let q=this.patterns[w],Q=this.getImage(w);if(!Q)return null;if(q&&q.position.version===Q.version)return q.position;if(q)q.position.version=Q.version;else{let ee={w:Q.data.width+2,h:Q.data.height+2,x:0,y:0},ue=new a.I(ee,Q);this.patterns[w]={bin:ee,position:ue}}return this._updatePatternAtlas(),this.patterns[w].position}bind(w){let q=w.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new m(w,this.atlasImage,q.RGBA),this.atlasTexture.bind(q.LINEAR,q.CLAMP_TO_EDGE)}_updatePatternAtlas(){let w=[];for(let ue in this.patterns)w.push(this.patterns[ue].bin);let{w:q,h:Q}=a.p(w),ee=this.atlasImage;ee.resize({width:q||1,height:Q||1});for(let ue in this.patterns){let{bin:Ve}=this.patterns[ue],tt=Ve.x+1,mt=Ve.y+1,Bt=this.getImage(ue).data,ir=Bt.width,or=Bt.height;a.R.copy(Bt,ee,{x:0,y:0},{x:tt,y:mt},{width:ir,height:or}),a.R.copy(Bt,ee,{x:0,y:or-1},{x:tt,y:mt-1},{width:ir,height:1}),a.R.copy(Bt,ee,{x:0,y:0},{x:tt,y:mt+or},{width:ir,height:1}),a.R.copy(Bt,ee,{x:ir-1,y:0},{x:tt-1,y:mt},{width:1,height:or}),a.R.copy(Bt,ee,{x:0,y:0},{x:tt+ir,y:mt},{width:1,height:or})}this.dirty=!0}beginFrame(){this.callbackDispatchedThisFrame={}}dispatchRenderCallbacks(w){for(let q of w){if(this.callbackDispatchedThisFrame[q])continue;this.callbackDispatchedThisFrame[q]=!0;let Q=this.getImage(q);Q||a.w(`Image with ID: "${q}" was not found`),P(Q)&&this.updateImage(q,Q)}}}let B=1e20;function F(le,w,q,Q,ee,ue,Ve,tt,mt){for(let Bt=w;Bt-1);mt++,ue[mt]=tt,Ve[mt]=Bt,Ve[mt+1]=B}for(let tt=0,mt=0;tt65535)throw new Error("glyphs > 65535 not supported");if(Q.ranges[ue])return{stack:w,id:q,glyph:ee};if(!this.url)throw new Error("glyphsUrl is not set");if(!Q.requests[ue]){let tt=G.loadGlyphRange(w,ue,this.url,this.requestManager);Q.requests[ue]=tt}let Ve=yield Q.requests[ue];for(let tt in Ve)this._doesCharSupportLocalGlyph(+tt)||(Q.glyphs[+tt]=Ve[+tt]);return Q.ranges[ue]=!0,{stack:w,id:q,glyph:Ve[q]||null}})}_doesCharSupportLocalGlyph(w){return!!this.localIdeographFontFamily&&new RegExp("\\p{Ideo}|\\p{sc=Hang}|\\p{sc=Hira}|\\p{sc=Kana}","u").test(String.fromCodePoint(w))}_tinySDF(w,q,Q){let ee=this.localIdeographFontFamily;if(!ee||!this._doesCharSupportLocalGlyph(Q))return;let ue=w.tinySDF;if(!ue){let tt="400";/bold/i.test(q)?tt="900":/medium/i.test(q)?tt="500":/light/i.test(q)&&(tt="200"),ue=w.tinySDF=new G.TinySDF({fontSize:48,buffer:6,radius:16,cutoff:.25,fontFamily:ee,fontWeight:tt})}let Ve=ue.draw(String.fromCharCode(Q));return{id:Q,bitmap:new a.o({width:Ve.width||60,height:Ve.height||60},Ve.data),metrics:{width:Ve.glyphWidth/2||24,height:Ve.glyphHeight/2||24,left:Ve.glyphLeft/2+.5||0,top:Ve.glyphTop/2-27.5||-8,advance:Ve.glyphAdvance/2||24,isDoubleResolution:!0}}}}G.loadGlyphRange=function(le,w,q,Q){return a._(this,void 0,void 0,function*(){let ee=256*w,ue=ee+255,Ve=Q.transformRequest(q.replace("{fontstack}",le).replace("{range}",`${ee}-${ue}`),"Glyphs"),tt=yield a.l(Ve,new AbortController);if(!tt||!tt.data)throw new Error(`Could not load glyph range. range: ${w}, ${ee}-${ue}`);let mt={};for(let Bt of a.n(tt.data))mt[Bt.id]=Bt;return mt})},G.TinySDF=class{constructor({fontSize:le=24,buffer:w=3,radius:q=8,cutoff:Q=.25,fontFamily:ee="sans-serif",fontWeight:ue="normal",fontStyle:Ve="normal"}={}){this.buffer=w,this.cutoff=Q,this.radius=q;let tt=this.size=le+4*w,mt=this._createCanvas(tt),Bt=this.ctx=mt.getContext("2d",{willReadFrequently:!0});Bt.font=`${Ve} ${ue} ${le}px ${ee}`,Bt.textBaseline="alphabetic",Bt.textAlign="left",Bt.fillStyle="black",this.gridOuter=new Float64Array(tt*tt),this.gridInner=new Float64Array(tt*tt),this.f=new Float64Array(tt),this.z=new Float64Array(tt+1),this.v=new Uint16Array(tt)}_createCanvas(le){let w=document.createElement("canvas");return w.width=w.height=le,w}draw(le){let{width:w,actualBoundingBoxAscent:q,actualBoundingBoxDescent:Q,actualBoundingBoxLeft:ee,actualBoundingBoxRight:ue}=this.ctx.measureText(le),Ve=Math.ceil(q),tt=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(ue-ee))),mt=Math.min(this.size-this.buffer,Ve+Math.ceil(Q)),Bt=tt+2*this.buffer,ir=mt+2*this.buffer,or=Math.max(Bt*ir,0),kr=new Uint8ClampedArray(or),Vr={data:kr,width:Bt,height:ir,glyphWidth:tt,glyphHeight:mt,glyphTop:Ve,glyphLeft:0,glyphAdvance:w};if(tt===0||mt===0)return Vr;let{ctx:he,buffer:Se,gridInner:Ne,gridOuter:Ge}=this;he.clearRect(Se,Se,tt,mt),he.fillText(le,Se,Se+Ve);let lt=he.getImageData(Se,Se,tt,mt);Ge.fill(B,0,or),Ne.fill(0,0,or);for(let rt=0;rt0?fr*fr:0,Ne[nr]=fr<0?fr*fr:0}}F(Ge,0,0,Bt,ir,Bt,this.f,this.v,this.z),F(Ne,Se,Se,tt,mt,Bt,this.f,this.v,this.z);for(let rt=0;rt1&&(mt=w[++tt]);let ir=Math.abs(Bt-mt.left),or=Math.abs(Bt-mt.right),kr=Math.min(ir,or),Vr,he=ue/Q*(ee+1);if(mt.isDash){let Se=ee-Math.abs(he);Vr=Math.sqrt(kr*kr+Se*Se)}else Vr=ee-Math.sqrt(kr*kr+he*he);this.data[Ve+Bt]=Math.max(0,Math.min(255,Vr+128))}}}addRegularDash(w){for(let tt=w.length-1;tt>=0;--tt){let mt=w[tt],Bt=w[tt+1];mt.zeroLength?w.splice(tt,1):Bt&&Bt.isDash===mt.isDash&&(Bt.left=mt.left,w.splice(tt,1))}let q=w[0],Q=w[w.length-1];q.isDash===Q.isDash&&(q.left=Q.left-this.width,Q.right=q.right+this.width);let ee=this.width*this.nextRow,ue=0,Ve=w[ue];for(let tt=0;tt1&&(Ve=w[++ue]);let mt=Math.abs(tt-Ve.left),Bt=Math.abs(tt-Ve.right),ir=Math.min(mt,Bt);this.data[ee+tt]=Math.max(0,Math.min(255,(Ve.isDash?ir:-ir)+128))}}addDash(w,q){let Q=q?7:0,ee=2*Q+1;if(this.nextRow+ee>this.height)return a.w("LineAtlas out of space"),null;let ue=0;for(let tt=0;tt{q.terminate()}),this.workers=null)}isPreloaded(){return!!this.active[be]}numActive(){return Object.keys(this.active).length}}let Ce=Math.floor(l.hardwareConcurrency/2),de,te;function ke(){return de||(de=new ze),de}ze.workerCount=a.C(globalThis)?Math.max(Math.min(Ce,3),1):1;class Ee{constructor(w,q){this.workerPool=w,this.actors=[],this.currentActor=0,this.id=q;let Q=this.workerPool.acquire(q);for(let ee=0;ee{q.remove()}),this.actors=[],w&&this.workerPool.release(this.id)}registerMessageHandler(w,q){for(let Q of this.actors)Q.registerMessageHandler(w,q)}}function Me(){return te||(te=new Ee(ke(),a.G),te.registerMessageHandler("GR",(le,w,q)=>a.m(w,q))),te}function Ue(le,w){let q=a.H();return a.J(q,q,[1,1,0]),a.K(q,q,[.5*le.width,.5*le.height,1]),a.L(q,q,le.calculatePosMatrix(w.toUnwrapped()))}function De(le,w,q,Q,ee,ue){let Ve=function(or,kr,Vr){if(or)for(let he of or){let Se=kr[he];if(Se&&Se.source===Vr&&Se.type==="fill-extrusion")return!0}else for(let he in kr){let Se=kr[he];if(Se.source===Vr&&Se.type==="fill-extrusion")return!0}return!1}(ee&&ee.layers,w,le.id),tt=ue.maxPitchScaleFactor(),mt=le.tilesIn(Q,tt,Ve);mt.sort(ye);let Bt=[];for(let or of mt)Bt.push({wrappedTileID:or.tileID.wrapped().key,queryResults:or.tile.queryRenderedFeatures(w,q,le._state,or.queryGeometry,or.cameraQueryGeometry,or.scale,ee,ue,tt,Ue(le.transform,or.tileID))});let ir=function(or){let kr={},Vr={};for(let he of or){let Se=he.queryResults,Ne=he.wrappedTileID,Ge=Vr[Ne]=Vr[Ne]||{};for(let lt in Se){let rt=Se[lt],pt=Ge[lt]=Ge[lt]||{},Ht=kr[lt]=kr[lt]||[];for(let nr of rt)pt[nr.featureIndex]||(pt[nr.featureIndex]=!0,Ht.push(nr))}}return kr}(Bt);for(let or in ir)ir[or].forEach(kr=>{let Vr=kr.feature,he=le.getFeatureState(Vr.layer["source-layer"],Vr.id);Vr.source=Vr.layer.source,Vr.layer["source-layer"]&&(Vr.sourceLayer=Vr.layer["source-layer"]),Vr.state=he});return ir}function ye(le,w){let q=le.tileID,Q=w.tileID;return q.overscaledZ-Q.overscaledZ||q.canonical.y-Q.canonical.y||q.wrap-Q.wrap||q.canonical.x-Q.canonical.x}function qe(le,w,q){return a._(this,void 0,void 0,function*(){let Q=le;if(le.url?Q=(yield a.h(w.transformRequest(le.url,"Source"),q)).data:yield l.frameAsync(q),!Q)return null;let ee=a.M(a.e(Q,le),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);return"vector_layers"in Q&&Q.vector_layers&&(ee.vectorLayerIds=Q.vector_layers.map(ue=>ue.id)),ee})}class ce{constructor(w,q){w&&(q?this.setSouthWest(w).setNorthEast(q):Array.isArray(w)&&(w.length===4?this.setSouthWest([w[0],w[1]]).setNorthEast([w[2],w[3]]):this.setSouthWest(w[0]).setNorthEast(w[1])))}setNorthEast(w){return this._ne=w instanceof a.N?new a.N(w.lng,w.lat):a.N.convert(w),this}setSouthWest(w){return this._sw=w instanceof a.N?new a.N(w.lng,w.lat):a.N.convert(w),this}extend(w){let q=this._sw,Q=this._ne,ee,ue;if(w instanceof a.N)ee=w,ue=w;else{if(!(w instanceof ce))return Array.isArray(w)?w.length===4||w.every(Array.isArray)?this.extend(ce.convert(w)):this.extend(a.N.convert(w)):w&&("lng"in w||"lon"in w)&&"lat"in w?this.extend(a.N.convert(w)):this;if(ee=w._sw,ue=w._ne,!ee||!ue)return this}return q||Q?(q.lng=Math.min(ee.lng,q.lng),q.lat=Math.min(ee.lat,q.lat),Q.lng=Math.max(ue.lng,Q.lng),Q.lat=Math.max(ue.lat,Q.lat)):(this._sw=new a.N(ee.lng,ee.lat),this._ne=new a.N(ue.lng,ue.lat)),this}getCenter(){return new a.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new a.N(this.getWest(),this.getNorth())}getSouthEast(){return new a.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(w){let{lng:q,lat:Q}=a.N.convert(w),ee=this._sw.lng<=q&&q<=this._ne.lng;return this._sw.lng>this._ne.lng&&(ee=this._sw.lng>=q&&q>=this._ne.lng),this._sw.lat<=Q&&Q<=this._ne.lat&&ee}static convert(w){return w instanceof ce?w:w&&new ce(w)}static fromLngLat(w,q=0){let Q=360*q/40075017,ee=Q/Math.cos(Math.PI/180*w.lat);return new ce(new a.N(w.lng-ee,w.lat-Q),new a.N(w.lng+ee,w.lat+Q))}adjustAntiMeridian(){let w=new a.N(this._sw.lng,this._sw.lat),q=new a.N(this._ne.lng,this._ne.lat);return new ce(w,w.lng>q.lng?new a.N(q.lng+360,q.lat):q)}}class Je{constructor(w,q,Q){this.bounds=ce.convert(this.validateBounds(w)),this.minzoom=q||0,this.maxzoom=Q||24}validateBounds(w){return Array.isArray(w)&&w.length===4?[Math.max(-180,w[0]),Math.max(-90,w[1]),Math.min(180,w[2]),Math.min(90,w[3])]:[-180,-90,180,90]}contains(w){let q=Math.pow(2,w.z),Q=Math.floor(a.O(this.bounds.getWest())*q),ee=Math.floor(a.Q(this.bounds.getNorth())*q),ue=Math.ceil(a.O(this.bounds.getEast())*q),Ve=Math.ceil(a.Q(this.bounds.getSouth())*q);return w.x>=Q&&w.x=ee&&w.y{this._options.tiles=w}),this}setUrl(w){return this.setSourceProperty(()=>{this.url=w,this._options.url=w}),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}serialize(){return a.e({},this._options)}loadTile(w){return a._(this,void 0,void 0,function*(){let q=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),Q={request:this.map._requestManager.transformRequest(q,"Tile"),uid:w.uid,tileID:w.tileID,zoom:w.tileID.overscaledZ,tileSize:this.tileSize*w.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};Q.request.collectResourceTiming=this._collectResourceTiming;let ee="RT";if(w.actor&&w.state!=="expired"){if(w.state==="loading")return new Promise((ue,Ve)=>{w.reloadPromise={resolve:ue,reject:Ve}})}else w.actor=this.dispatcher.getActor(),ee="LT";w.abortController=new AbortController;try{let ue=yield w.actor.sendAsync({type:ee,data:Q},w.abortController);if(delete w.abortController,w.aborted)return;this._afterTileLoadWorkerResponse(w,ue)}catch(ue){if(delete w.abortController,w.aborted)return;if(ue&&ue.status!==404)throw ue;this._afterTileLoadWorkerResponse(w,null)}})}_afterTileLoadWorkerResponse(w,q){if(q&&q.resourceTiming&&(w.resourceTiming=q.resourceTiming),q&&this.map._refreshExpiredTiles&&w.setExpiryData(q),w.loadVectorData(q,this.map.painter),w.reloadPromise){let Q=w.reloadPromise;w.reloadPromise=null,this.loadTile(w).then(Q.resolve).catch(Q.reject)}}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController),w.actor&&(yield w.actor.sendAsync({type:"AT",data:{uid:w.uid,type:this.type,source:this.id}}))})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.unloadVectorData(),w.actor&&(yield w.actor.sendAsync({type:"RMT",data:{uid:w.uid,type:this.type,source:this.id}}))})}hasTransition(){return!1}}class gt extends a.E{constructor(w,q,Q,ee){super(),this.id=w,this.dispatcher=Q,this.setEventedParent(ee),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=a.e({type:"raster"},q),a.e(this,a.M(q,["url","scheme","tileSize"]))}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new a.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let w=yield qe(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,w&&(a.e(this,w),w.bounds&&(this.tileBounds=new Je(w.bounds,this.minzoom,this.maxzoom)),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})))}catch(w){this._tileJSONRequest=null,this.fire(new a.j(w))}})}loaded(){return this._loaded}onAdd(w){this.map=w,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}setSourceProperty(w){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),w(),this.load()}setTiles(w){return this.setSourceProperty(()=>{this._options.tiles=w}),this}setUrl(w){return this.setSourceProperty(()=>{this.url=w,this._options.url=w}),this}serialize(){return a.e({},this._options)}hasTile(w){return!this.tileBounds||this.tileBounds.contains(w.canonical)}loadTile(w){return a._(this,void 0,void 0,function*(){let q=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);w.abortController=new AbortController;try{let Q=yield v.getImage(this.map._requestManager.transformRequest(q,"Tile"),w.abortController,this.map._refreshExpiredTiles);if(delete w.abortController,w.aborted)return void(w.state="unloaded");if(Q&&Q.data){this.map._refreshExpiredTiles&&Q.cacheControl&&Q.expires&&w.setExpiryData({cacheControl:Q.cacheControl,expires:Q.expires});let ee=this.map.painter.context,ue=ee.gl,Ve=Q.data;w.texture=this.map.painter.getTileTexture(Ve.width),w.texture?w.texture.update(Ve,{useMipmap:!0}):(w.texture=new m(ee,Ve,ue.RGBA,{useMipmap:!0}),w.texture.bind(ue.LINEAR,ue.CLAMP_TO_EDGE,ue.LINEAR_MIPMAP_NEAREST)),w.state="loaded"}}catch(Q){if(delete w.abortController,w.aborted)w.state="unloaded";else if(Q)throw w.state="errored",Q}})}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController)})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.texture&&this.map.painter.saveTileTexture(w.texture)})}hasTransition(){return!1}}class Nt extends gt{constructor(w,q,Q,ee){super(w,q,Q,ee),this.type="raster-dem",this.maxzoom=22,this._options=a.e({type:"raster-dem"},q),this.encoding=q.encoding||"mapbox",this.redFactor=q.redFactor,this.greenFactor=q.greenFactor,this.blueFactor=q.blueFactor,this.baseShift=q.baseShift}loadTile(w){return a._(this,void 0,void 0,function*(){let q=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),Q=this.map._requestManager.transformRequest(q,"Tile");w.neighboringTiles=this._getNeighboringTiles(w.tileID),w.abortController=new AbortController;try{let ee=yield v.getImage(Q,w.abortController,this.map._refreshExpiredTiles);if(delete w.abortController,w.aborted)return void(w.state="unloaded");if(ee&&ee.data){let ue=ee.data;this.map._refreshExpiredTiles&&ee.cacheControl&&ee.expires&&w.setExpiryData({cacheControl:ee.cacheControl,expires:ee.expires});let Ve=a.b(ue)&&a.U()?ue:yield this.readImageNow(ue),tt={type:this.type,uid:w.uid,source:this.id,rawImageData:Ve,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!w.actor||w.state==="expired"){w.actor=this.dispatcher.getActor();let mt=yield w.actor.sendAsync({type:"LDT",data:tt});w.dem=mt,w.needsHillshadePrepare=!0,w.needsTerrainPrepare=!0,w.state="loaded"}}}catch(ee){if(delete w.abortController,w.aborted)w.state="unloaded";else if(ee)throw w.state="errored",ee}})}readImageNow(w){return a._(this,void 0,void 0,function*(){if(typeof VideoFrame!="undefined"&&a.V()){let q=w.width+2,Q=w.height+2;try{return new a.R({width:q,height:Q},yield a.W(w,-1,-1,q,Q))}catch(ee){}}return l.getImageData(w,1)})}_getNeighboringTiles(w){let q=w.canonical,Q=Math.pow(2,q.z),ee=(q.x-1+Q)%Q,ue=q.x===0?w.wrap-1:w.wrap,Ve=(q.x+1+Q)%Q,tt=q.x+1===Q?w.wrap+1:w.wrap,mt={};return mt[new a.S(w.overscaledZ,ue,q.z,ee,q.y).key]={backfilled:!1},mt[new a.S(w.overscaledZ,tt,q.z,Ve,q.y).key]={backfilled:!1},q.y>0&&(mt[new a.S(w.overscaledZ,ue,q.z,ee,q.y-1).key]={backfilled:!1},mt[new a.S(w.overscaledZ,w.wrap,q.z,q.x,q.y-1).key]={backfilled:!1},mt[new a.S(w.overscaledZ,tt,q.z,Ve,q.y-1).key]={backfilled:!1}),q.y+10&&a.e(ue,{resourceTiming:ee}),this.fire(new a.k("data",Object.assign(Object.assign({},ue),{sourceDataType:"metadata"}))),this.fire(new a.k("data",Object.assign(Object.assign({},ue),{sourceDataType:"content"})))}catch(Q){if(this._pendingLoads--,this._removed)return void this.fire(new a.k("dataabort",{dataType:"source"}));this.fire(new a.j(Q))}})}loaded(){return this._pendingLoads===0}loadTile(w){return a._(this,void 0,void 0,function*(){let q=w.actor?"RT":"LT";w.actor=this.actor;let Q={type:this.type,uid:w.uid,tileID:w.tileID,zoom:w.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};w.abortController=new AbortController;let ee=yield this.actor.sendAsync({type:q,data:Q},w.abortController);delete w.abortController,w.unloadVectorData(),w.aborted||w.loadVectorData(ee,this.map.painter,q==="RT")})}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController),w.aborted=!0})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.unloadVectorData(),yield this.actor.sendAsync({type:"RMT",data:{uid:w.uid,type:this.type,source:this.id}})})}onRemove(){this._removed=!0,this.actor.sendAsync({type:"RS",data:{type:this.type,source:this.id}})}serialize(){return a.e({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}}var Ke=a.Y([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);class Ct extends a.E{constructor(w,q,Q,ee){super(),this.id=w,this.dispatcher=Q,this.coordinates=q.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(ee),this.options=q}load(w){return a._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new a.k("dataloading",{dataType:"source"})),this.url=this.options.url,this._request=new AbortController;try{let q=yield v.getImage(this.map._requestManager.transformRequest(this.url,"Image"),this._request);this._request=null,this._loaded=!0,q&&q.data&&(this.image=q.data,w&&(this.coordinates=w),this._finishLoading())}catch(q){this._request=null,this._loaded=!0,this.fire(new a.j(q))}})}loaded(){return this._loaded}updateImage(w){return w.url?(this._request&&(this._request.abort(),this._request=null),this.options.url=w.url,this.load(w.coordinates).finally(()=>{this.texture=null}),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(w){this.map=w,this.load()}onRemove(){this._request&&(this._request.abort(),this._request=null)}setCoordinates(w){this.coordinates=w;let q=w.map(a.Z.fromLngLat);this.tileID=function(ee){let ue=1/0,Ve=1/0,tt=-1/0,mt=-1/0;for(let kr of ee)ue=Math.min(ue,kr.x),Ve=Math.min(Ve,kr.y),tt=Math.max(tt,kr.x),mt=Math.max(mt,kr.y);let Bt=Math.max(tt-ue,mt-Ve),ir=Math.max(0,Math.floor(-Math.log(Bt)/Math.LN2)),or=Math.pow(2,ir);return new a.a1(ir,Math.floor((ue+tt)/2*or),Math.floor((Ve+mt)/2*or))}(q),this.minzoom=this.maxzoom=this.tileID.z;let Q=q.map(ee=>this.tileID.getTilePoint(ee)._round());return this._boundsArray=new a.$,this._boundsArray.emplaceBack(Q[0].x,Q[0].y,0,0),this._boundsArray.emplaceBack(Q[1].x,Q[1].y,a.X,0),this._boundsArray.emplaceBack(Q[3].x,Q[3].y,0,a.X),this._boundsArray.emplaceBack(Q[2].x,Q[2].y,a.X,a.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(Object.keys(this.tiles).length===0||!this.image)return;let w=this.map.painter.context,q=w.gl;this.boundsBuffer||(this.boundsBuffer=w.createVertexBuffer(this._boundsArray,Ke.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new m(w,this.image,q.RGBA),this.texture.bind(q.LINEAR,q.CLAMP_TO_EDGE));let Q=!1;for(let ee in this.tiles){let ue=this.tiles[ee];ue.state!=="loaded"&&(ue.state="loaded",ue.texture=this.texture,Q=!0)}Q&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}loadTile(w){return a._(this,void 0,void 0,function*(){this.tileID&&this.tileID.equals(w.tileID.canonical)?(this.tiles[String(w.tileID.wrap)]=w,w.buckets={}):w.state="errored"})}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class wt extends Ct{constructor(w,q,Q,ee){super(w,q,Q,ee),this.roundZoom=!0,this.type="video",this.options=q}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1;let w=this.options;this.urls=[];for(let q of w.urls)this.urls.push(this.map._requestManager.transformRequest(q,"Source").url);try{let q=yield a.a3(this.urls);if(this._loaded=!0,!q)return;this.video=q,this.video.loop=!0,this.video.addEventListener("playing",()=>{this.map.triggerRepaint()}),this.map&&this.video.play(),this._finishLoading()}catch(q){this.fire(new a.j(q))}})}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(w){if(this.video){let q=this.video.seekable;wq.end(0)?this.fire(new a.j(new a.a2(`sources.${this.id}`,null,`Playback for this video can be set only between the ${q.start(0)} and ${q.end(0)}-second mark.`))):this.video.currentTime=w}}getVideo(){return this.video}onAdd(w){this.map||(this.map=w,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(Object.keys(this.tiles).length===0||this.video.readyState<2)return;let w=this.map.painter.context,q=w.gl;this.boundsBuffer||(this.boundsBuffer=w.createVertexBuffer(this._boundsArray,Ke.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(q.LINEAR,q.CLAMP_TO_EDGE),q.texSubImage2D(q.TEXTURE_2D,0,0,0,q.RGBA,q.UNSIGNED_BYTE,this.video)):(this.texture=new m(w,this.video,q.RGBA),this.texture.bind(q.LINEAR,q.CLAMP_TO_EDGE));let Q=!1;for(let ee in this.tiles){let ue=this.tiles[ee];ue.state!=="loaded"&&(ue.state="loaded",ue.texture=this.texture,Q=!0)}Q&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class St extends Ct{constructor(w,q,Q,ee){super(w,q,Q,ee),q.coordinates?Array.isArray(q.coordinates)&&q.coordinates.length===4&&!q.coordinates.some(ue=>!Array.isArray(ue)||ue.length!==2||ue.some(Ve=>typeof Ve!="number"))||this.fire(new a.j(new a.a2(`sources.${w}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new a.j(new a.a2(`sources.${w}`,null,'missing required property "coordinates"'))),q.animate&&typeof q.animate!="boolean"&&this.fire(new a.j(new a.a2(`sources.${w}`,null,'optional "animate" property must be a boolean value'))),q.canvas?typeof q.canvas=="string"||q.canvas instanceof HTMLCanvasElement||this.fire(new a.j(new a.a2(`sources.${w}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new a.j(new a.a2(`sources.${w}`,null,'missing required property "canvas"'))),this.options=q,this.animate=q.animate===void 0||q.animate}load(){return a._(this,void 0,void 0,function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new a.j(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())})}getCanvas(){return this.canvas}onAdd(w){this.map=w,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let w=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,w=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,w=!0),this._hasInvalidDimensions()||Object.keys(this.tiles).length===0)return;let q=this.map.painter.context,Q=q.gl;this.boundsBuffer||(this.boundsBuffer=q.createVertexBuffer(this._boundsArray,Ke.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture?(w||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new m(q,this.canvas,Q.RGBA,{premultiply:!0});let ee=!1;for(let ue in this.tiles){let Ve=this.tiles[ue];Ve.state!=="loaded"&&(Ve.state="loaded",Ve.texture=this.texture,ee=!0)}ee&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(let w of[this.canvas.width,this.canvas.height])if(isNaN(w)||w<=0)return!0;return!1}}let Dt={},Zt=le=>{switch(le){case"geojson":return at;case"image":return Ct;case"raster":return gt;case"raster-dem":return Nt;case"vector":return nt;case"video":return wt;case"canvas":return St}return Dt[le]},Et="RTLPluginLoaded";class Te extends a.E{constructor(){super(...arguments),this.status="unavailable",this.url=null,this.dispatcher=Me()}_syncState(w){return this.status=w,this.dispatcher.broadcast("SRPS",{pluginStatus:w,pluginURL:this.url}).catch(q=>{throw this.status="error",q})}getRTLTextPluginStatus(){return this.status}clearRTLTextPlugin(){this.status="unavailable",this.url=null}setRTLTextPlugin(w){return a._(this,arguments,void 0,function*(q,Q=!1){if(this.url)throw new Error("setRTLTextPlugin cannot be called multiple times.");if(this.url=l.resolveURL(q),!this.url)throw new Error(`requested url ${q} is invalid`);if(this.status==="unavailable"){if(!Q)return this._requestImport();this.status="deferred",this._syncState(this.status)}else if(this.status==="requested")return this._requestImport()})}_requestImport(){return a._(this,void 0,void 0,function*(){yield this._syncState("loading"),this.status="loaded",this.fire(new a.k(Et))})}lazyLoad(){this.status==="unavailable"?this.status="requested":this.status==="deferred"&&this._requestImport()}}let ot=null;function Tt(){return ot||(ot=new Te),ot}class vt{constructor(w,q){this.timeAdded=0,this.fadeEndTime=0,this.tileID=w,this.uid=a.a4(),this.uses=0,this.tileSize=q,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.rtt=[],this.rttCoords={},this.expiredRequestCount=0,this.state="loading"}registerFadeDuration(w){let q=w+this.timeAdded;que.getLayer(Bt)).filter(Boolean);if(mt.length!==0){tt.layers=mt,tt.stateDependentLayerIds&&(tt.stateDependentLayers=tt.stateDependentLayerIds.map(Bt=>mt.filter(ir=>ir.id===Bt)[0]));for(let Bt of mt)Ve[Bt.id]=tt}}return Ve}(w.buckets,q.style),this.hasSymbolBuckets=!1;for(let ee in this.buckets){let ue=this.buckets[ee];if(ue instanceof a.a6){if(this.hasSymbolBuckets=!0,!Q)break;ue.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(let ee in this.buckets){let ue=this.buckets[ee];if(ue instanceof a.a6&&ue.hasRTLText){this.hasRTLText=!0,Tt().lazyLoad();break}}this.queryPadding=0;for(let ee in this.buckets){let ue=this.buckets[ee];this.queryPadding=Math.max(this.queryPadding,q.style.getLayer(ee).queryRadius(ue))}w.imageAtlas&&(this.imageAtlas=w.imageAtlas),w.glyphAtlasImage&&(this.glyphAtlasImage=w.glyphAtlasImage)}else this.collisionBoxArray=new a.a5}unloadVectorData(){for(let w in this.buckets)this.buckets[w].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"}getBucket(w){return this.buckets[w.id]}upload(w){for(let Q in this.buckets){let ee=this.buckets[Q];ee.uploadPending()&&ee.upload(w)}let q=w.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new m(w,this.imageAtlas.image,q.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new m(w,this.glyphAtlasImage,q.ALPHA),this.glyphAtlasImage=null)}prepare(w){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(w,this.imageAtlasTexture)}queryRenderedFeatures(w,q,Q,ee,ue,Ve,tt,mt,Bt,ir){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:ee,cameraQueryGeometry:ue,scale:Ve,tileSize:this.tileSize,pixelPosMatrix:ir,transform:mt,params:tt,queryPadding:this.queryPadding*Bt},w,q,Q):{}}querySourceFeatures(w,q){let Q=this.latestFeatureIndex;if(!Q||!Q.rawTileData)return;let ee=Q.loadVTLayers(),ue=q&&q.sourceLayer?q.sourceLayer:"",Ve=ee._geojsonTileLayer||ee[ue];if(!Ve)return;let tt=a.a7(q&&q.filter),{z:mt,x:Bt,y:ir}=this.tileID.canonical,or={z:mt,x:Bt,y:ir};for(let kr=0;krQ)ee=!1;else if(q)if(this.expirationTime{this.remove(w,ue)},Q)),this.data[ee].push(ue),this.order.push(ee),this.order.length>this.max){let Ve=this._getAndRemoveByKey(this.order[0]);Ve&&this.onRemove(Ve)}return this}has(w){return w.wrapped().key in this.data}getAndRemove(w){return this.has(w)?this._getAndRemoveByKey(w.wrapped().key):null}_getAndRemoveByKey(w){let q=this.data[w].shift();return q.timeout&&clearTimeout(q.timeout),this.data[w].length===0&&delete this.data[w],this.order.splice(this.order.indexOf(w),1),q.value}getByKey(w){let q=this.data[w];return q?q[0].value:null}get(w){return this.has(w)?this.data[w.wrapped().key][0].value:null}remove(w,q){if(!this.has(w))return this;let Q=w.wrapped().key,ee=q===void 0?0:this.data[Q].indexOf(q),ue=this.data[Q][ee];return this.data[Q].splice(ee,1),ue.timeout&&clearTimeout(ue.timeout),this.data[Q].length===0&&delete this.data[Q],this.onRemove(ue.value),this.order.splice(this.order.indexOf(Q),1),this}setMaxSize(w){for(this.max=w;this.order.length>this.max;){let q=this._getAndRemoveByKey(this.order[0]);q&&this.onRemove(q)}return this}filter(w){let q=[];for(let Q in this.data)for(let ee of this.data[Q])w(ee.value)||q.push(ee);for(let Q of q)this.remove(Q.value.tileID,Q)}}class He{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(w,q,Q){let ee=String(q);if(this.stateChanges[w]=this.stateChanges[w]||{},this.stateChanges[w][ee]=this.stateChanges[w][ee]||{},a.e(this.stateChanges[w][ee],Q),this.deletedStates[w]===null){this.deletedStates[w]={};for(let ue in this.state[w])ue!==ee&&(this.deletedStates[w][ue]=null)}else if(this.deletedStates[w]&&this.deletedStates[w][ee]===null){this.deletedStates[w][ee]={};for(let ue in this.state[w][ee])Q[ue]||(this.deletedStates[w][ee][ue]=null)}else for(let ue in Q)this.deletedStates[w]&&this.deletedStates[w][ee]&&this.deletedStates[w][ee][ue]===null&&delete this.deletedStates[w][ee][ue]}removeFeatureState(w,q,Q){if(this.deletedStates[w]===null)return;let ee=String(q);if(this.deletedStates[w]=this.deletedStates[w]||{},Q&&q!==void 0)this.deletedStates[w][ee]!==null&&(this.deletedStates[w][ee]=this.deletedStates[w][ee]||{},this.deletedStates[w][ee][Q]=null);else if(q!==void 0)if(this.stateChanges[w]&&this.stateChanges[w][ee])for(Q in this.deletedStates[w][ee]={},this.stateChanges[w][ee])this.deletedStates[w][ee][Q]=null;else this.deletedStates[w][ee]=null;else this.deletedStates[w]=null}getState(w,q){let Q=String(q),ee=a.e({},(this.state[w]||{})[Q],(this.stateChanges[w]||{})[Q]);if(this.deletedStates[w]===null)return{};if(this.deletedStates[w]){let ue=this.deletedStates[w][q];if(ue===null)return{};for(let Ve in ue)delete ee[Ve]}return ee}initializeTileState(w,q){w.setFeatureState(this.state,q)}coalesceChanges(w,q){let Q={};for(let ee in this.stateChanges){this.state[ee]=this.state[ee]||{};let ue={};for(let Ve in this.stateChanges[ee])this.state[ee][Ve]||(this.state[ee][Ve]={}),a.e(this.state[ee][Ve],this.stateChanges[ee][Ve]),ue[Ve]=this.state[ee][Ve];Q[ee]=ue}for(let ee in this.deletedStates){this.state[ee]=this.state[ee]||{};let ue={};if(this.deletedStates[ee]===null)for(let Ve in this.state[ee])ue[Ve]={},this.state[ee][Ve]={};else for(let Ve in this.deletedStates[ee]){if(this.deletedStates[ee][Ve]===null)this.state[ee][Ve]={};else for(let tt of Object.keys(this.deletedStates[ee][Ve]))delete this.state[ee][Ve][tt];ue[Ve]=this.state[ee][Ve]}Q[ee]=Q[ee]||{},a.e(Q[ee],ue)}if(this.stateChanges={},this.deletedStates={},Object.keys(Q).length!==0)for(let ee in w)w[ee].setFeatureState(Q,q)}}class it extends a.E{constructor(w,q,Q){super(),this.id=w,this.dispatcher=Q,this.on("data",ee=>this._dataHandler(ee)),this.on("dataloading",()=>{this._sourceErrored=!1}),this.on("error",()=>{this._sourceErrored=this._source.loaded()}),this._source=((ee,ue,Ve,tt)=>{let mt=new(Zt(ue.type))(ee,ue,Ve,tt);if(mt.id!==ee)throw new Error(`Expected Source id to be ${ee} instead of ${mt.id}`);return mt})(w,q,Q,this),this._tiles={},this._cache=new Ye(0,ee=>this._unloadTile(ee)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new He,this._didEmitContent=!1,this._updated=!1}onAdd(w){this.map=w,this._maxTileCacheSize=w?w._maxTileCacheSize:null,this._maxTileCacheZoomLevels=w?w._maxTileCacheZoomLevels:null,this._source&&this._source.onAdd&&this._source.onAdd(w)}onRemove(w){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(w)}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;if(!(this.used===void 0&&this.usedForTerrain===void 0||this.used||this.usedForTerrain))return!0;if(!this._updated)return!1;for(let w in this._tiles){let q=this._tiles[w];if(q.state!=="loaded"&&q.state!=="errored")return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;let w=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,w&&this.reload(),this.transform&&this.update(this.transform,this.terrain)}_loadTile(w,q,Q){return a._(this,void 0,void 0,function*(){try{yield this._source.loadTile(w),this._tileLoaded(w,q,Q)}catch(ee){w.state="errored",ee.status!==404?this._source.fire(new a.j(ee,{tile:w})):this.update(this.transform,this.terrain)}})}_unloadTile(w){this._source.unloadTile&&this._source.unloadTile(w)}_abortTile(w){this._source.abortTile&&this._source.abortTile(w),this._source.fire(new a.k("dataabort",{tile:w,coord:w.tileID,dataType:"source"}))}serialize(){return this._source.serialize()}prepare(w){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(let q in this._tiles){let Q=this._tiles[q];Q.upload(w),Q.prepare(this.map.style.imageManager)}}getIds(){return Object.values(this._tiles).map(w=>w.tileID).sort(et).map(w=>w.key)}getRenderableIds(w){let q=[];for(let Q in this._tiles)this._isIdRenderable(Q,w)&&q.push(this._tiles[Q]);return w?q.sort((Q,ee)=>{let ue=Q.tileID,Ve=ee.tileID,tt=new a.P(ue.canonical.x,ue.canonical.y)._rotate(this.transform.angle),mt=new a.P(Ve.canonical.x,Ve.canonical.y)._rotate(this.transform.angle);return ue.overscaledZ-Ve.overscaledZ||mt.y-tt.y||mt.x-tt.x}).map(Q=>Q.tileID.key):q.map(Q=>Q.tileID).sort(et).map(Q=>Q.key)}hasRenderableParent(w){let q=this.findLoadedParent(w,0);return!!q&&this._isIdRenderable(q.tileID.key)}_isIdRenderable(w,q){return this._tiles[w]&&this._tiles[w].hasData()&&!this._coveredTiles[w]&&(q||!this._tiles[w].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(let w in this._tiles)this._tiles[w].state!=="errored"&&this._reloadTile(w,"reloading")}}_reloadTile(w,q){return a._(this,void 0,void 0,function*(){let Q=this._tiles[w];Q&&(Q.state!=="loading"&&(Q.state=q),yield this._loadTile(Q,w,q))})}_tileLoaded(w,q,Q){w.timeAdded=l.now(),Q==="expired"&&(w.refreshedUponExpiration=!0),this._setTileReloadTimer(q,w),this.getSource().type==="raster-dem"&&w.dem&&this._backfillDEM(w),this._state.initializeTileState(w,this.map?this.map.painter:null),w.aborted||this._source.fire(new a.k("data",{dataType:"source",tile:w,coord:w.tileID}))}_backfillDEM(w){let q=this.getRenderableIds();for(let ee=0;ee1||(Math.abs(Ve)>1&&(Math.abs(Ve+mt)===1?Ve+=mt:Math.abs(Ve-mt)===1&&(Ve-=mt)),ue.dem&&ee.dem&&(ee.dem.backfillBorder(ue.dem,Ve,tt),ee.neighboringTiles&&ee.neighboringTiles[Bt]&&(ee.neighboringTiles[Bt].backfilled=!0)))}}getTile(w){return this.getTileByID(w.key)}getTileByID(w){return this._tiles[w]}_retainLoadedChildren(w,q,Q,ee){for(let ue in this._tiles){let Ve=this._tiles[ue];if(ee[ue]||!Ve.hasData()||Ve.tileID.overscaledZ<=q||Ve.tileID.overscaledZ>Q)continue;let tt=Ve.tileID;for(;Ve&&Ve.tileID.overscaledZ>q+1;){let Bt=Ve.tileID.scaledTo(Ve.tileID.overscaledZ-1);Ve=this._tiles[Bt.key],Ve&&Ve.hasData()&&(tt=Bt)}let mt=tt;for(;mt.overscaledZ>q;)if(mt=mt.scaledTo(mt.overscaledZ-1),w[mt.key]){ee[tt.key]=tt;break}}}findLoadedParent(w,q){if(w.key in this._loadedParentTiles){let Q=this._loadedParentTiles[w.key];return Q&&Q.tileID.overscaledZ>=q?Q:null}for(let Q=w.overscaledZ-1;Q>=q;Q--){let ee=w.scaledTo(Q),ue=this._getLoadedTile(ee);if(ue)return ue}}findLoadedSibling(w){return this._getLoadedTile(w)}_getLoadedTile(w){let q=this._tiles[w.key];return q&&q.hasData()?q:this._cache.getByKey(w.wrapped().key)}updateCacheSize(w){let q=Math.ceil(w.width/this._source.tileSize)+1,Q=Math.ceil(w.height/this._source.tileSize)+1,ee=Math.floor(q*Q*(this._maxTileCacheZoomLevels===null?a.a.MAX_TILE_CACHE_ZOOM_LEVELS:this._maxTileCacheZoomLevels)),ue=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,ee):ee;this._cache.setMaxSize(ue)}handleWrapJump(w){let q=Math.round((w-(this._prevLng===void 0?w:this._prevLng))/360);if(this._prevLng=w,q){let Q={};for(let ee in this._tiles){let ue=this._tiles[ee];ue.tileID=ue.tileID.unwrapTo(ue.tileID.wrap+q),Q[ue.tileID.key]=ue}this._tiles=Q;for(let ee in this._timers)clearTimeout(this._timers[ee]),delete this._timers[ee];for(let ee in this._tiles)this._setTileReloadTimer(ee,this._tiles[ee])}}_updateCoveredAndRetainedTiles(w,q,Q,ee,ue,Ve){let tt={},mt={},Bt=Object.keys(w),ir=l.now();for(let or of Bt){let kr=w[or],Vr=this._tiles[or];if(!Vr||Vr.fadeEndTime!==0&&Vr.fadeEndTime<=ir)continue;let he=this.findLoadedParent(kr,q),Se=this.findLoadedSibling(kr),Ne=he||Se||null;Ne&&(this._addTile(Ne.tileID),tt[Ne.tileID.key]=Ne.tileID),mt[or]=kr}this._retainLoadedChildren(mt,ee,Q,w);for(let or in tt)w[or]||(this._coveredTiles[or]=!0,w[or]=tt[or]);if(Ve){let or={},kr={};for(let Vr of ue)this._tiles[Vr.key].hasData()?or[Vr.key]=Vr:kr[Vr.key]=Vr;for(let Vr in kr){let he=kr[Vr].children(this._source.maxzoom);this._tiles[he[0].key]&&this._tiles[he[1].key]&&this._tiles[he[2].key]&&this._tiles[he[3].key]&&(or[he[0].key]=w[he[0].key]=he[0],or[he[1].key]=w[he[1].key]=he[1],or[he[2].key]=w[he[2].key]=he[2],or[he[3].key]=w[he[3].key]=he[3],delete kr[Vr])}for(let Vr in kr){let he=kr[Vr],Se=this.findLoadedParent(he,this._source.minzoom),Ne=this.findLoadedSibling(he),Ge=Se||Ne||null;if(Ge){or[Ge.tileID.key]=w[Ge.tileID.key]=Ge.tileID;for(let lt in or)or[lt].isChildOf(Ge.tileID)&&delete or[lt]}}for(let Vr in this._tiles)or[Vr]||(this._coveredTiles[Vr]=!0)}}update(w,q){if(!this._sourceLoaded||this._paused)return;let Q;this.transform=w,this.terrain=q,this.updateCacheSize(w),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?Q=w.getVisibleUnwrappedCoordinates(this._source.tileID).map(ir=>new a.S(ir.canonical.z,ir.wrap,ir.canonical.z,ir.canonical.x,ir.canonical.y)):(Q=w.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:q}),this._source.hasTile&&(Q=Q.filter(ir=>this._source.hasTile(ir)))):Q=[];let ee=w.coveringZoomLevel(this._source),ue=Math.max(ee-it.maxOverzooming,this._source.minzoom),Ve=Math.max(ee+it.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){let ir={};for(let or of Q)if(or.canonical.z>this._source.minzoom){let kr=or.scaledTo(or.canonical.z-1);ir[kr.key]=kr;let Vr=or.scaledTo(Math.max(this._source.minzoom,Math.min(or.canonical.z,5)));ir[Vr.key]=Vr}Q=Q.concat(Object.values(ir))}let tt=Q.length===0&&!this._updated&&this._didEmitContent;this._updated=!0,tt&&this.fire(new a.k("data",{sourceDataType:"idle",dataType:"source",sourceId:this.id}));let mt=this._updateRetainedTiles(Q,ee);It(this._source.type)&&this._updateCoveredAndRetainedTiles(mt,ue,Ve,ee,Q,q);for(let ir in mt)this._tiles[ir].clearFadeHold();let Bt=a.ab(this._tiles,mt);for(let ir of Bt){let or=this._tiles[ir];or.hasSymbolBuckets&&!or.holdingForFade()?or.setHoldDuration(this.map._fadeDuration):or.hasSymbolBuckets&&!or.symbolFadeFinished()||this._removeTile(ir)}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache()}releaseSymbolFadeTiles(){for(let w in this._tiles)this._tiles[w].holdingForFade()&&this._removeTile(w)}_updateRetainedTiles(w,q){var Q;let ee={},ue={},Ve=Math.max(q-it.maxOverzooming,this._source.minzoom),tt=Math.max(q+it.maxUnderzooming,this._source.minzoom),mt={};for(let Bt of w){let ir=this._addTile(Bt);ee[Bt.key]=Bt,ir.hasData()||qthis._source.maxzoom){let kr=Bt.children(this._source.maxzoom)[0],Vr=this.getTile(kr);if(Vr&&Vr.hasData()){ee[kr.key]=kr;continue}}else{let kr=Bt.children(this._source.maxzoom);if(ee[kr[0].key]&&ee[kr[1].key]&&ee[kr[2].key]&&ee[kr[3].key])continue}let or=ir.wasRequested();for(let kr=Bt.overscaledZ-1;kr>=Ve;--kr){let Vr=Bt.scaledTo(kr);if(ue[Vr.key])break;if(ue[Vr.key]=!0,ir=this.getTile(Vr),!ir&&or&&(ir=this._addTile(Vr)),ir){let he=ir.hasData();if((he||!(!((Q=this.map)===null||Q===void 0)&&Q.cancelPendingTileRequestsWhileZooming)||or)&&(ee[Vr.key]=Vr),or=ir.wasRequested(),he)break}}}return ee}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(let w in this._tiles){let q=[],Q,ee=this._tiles[w].tileID;for(;ee.overscaledZ>0;){if(ee.key in this._loadedParentTiles){Q=this._loadedParentTiles[ee.key];break}q.push(ee.key);let ue=ee.scaledTo(ee.overscaledZ-1);if(Q=this._getLoadedTile(ue),Q)break;ee=ue}for(let ue of q)this._loadedParentTiles[ue]=Q}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(let w in this._tiles){let q=this._tiles[w].tileID,Q=this._getLoadedTile(q);this._loadedSiblingTiles[q.key]=Q}}_addTile(w){let q=this._tiles[w.key];if(q)return q;q=this._cache.getAndRemove(w),q&&(this._setTileReloadTimer(w.key,q),q.tileID=w,this._state.initializeTileState(q,this.map?this.map.painter:null),this._cacheTimers[w.key]&&(clearTimeout(this._cacheTimers[w.key]),delete this._cacheTimers[w.key],this._setTileReloadTimer(w.key,q)));let Q=q;return q||(q=new vt(w,this._source.tileSize*w.overscaleFactor()),this._loadTile(q,w.key,q.state)),q.uses++,this._tiles[w.key]=q,Q||this._source.fire(new a.k("dataloading",{tile:q,coord:q.tileID,dataType:"source"})),q}_setTileReloadTimer(w,q){w in this._timers&&(clearTimeout(this._timers[w]),delete this._timers[w]);let Q=q.getExpiryTimeout();Q&&(this._timers[w]=setTimeout(()=>{this._reloadTile(w,"expired"),delete this._timers[w]},Q))}_removeTile(w){let q=this._tiles[w];q&&(q.uses--,delete this._tiles[w],this._timers[w]&&(clearTimeout(this._timers[w]),delete this._timers[w]),q.uses>0||(q.hasData()&&q.state!=="reloading"?this._cache.add(q.tileID,q,q.getExpiryTimeout()):(q.aborted=!0,this._abortTile(q),this._unloadTile(q))))}_dataHandler(w){let q=w.sourceDataType;w.dataType==="source"&&q==="metadata"&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&w.dataType==="source"&&q==="content"&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0)}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(let w in this._tiles)this._removeTile(w);this._cache.reset()}tilesIn(w,q,Q){let ee=[],ue=this.transform;if(!ue)return ee;let Ve=Q?ue.getCameraQueryGeometry(w):w,tt=w.map(he=>ue.pointCoordinate(he,this.terrain)),mt=Ve.map(he=>ue.pointCoordinate(he,this.terrain)),Bt=this.getIds(),ir=1/0,or=1/0,kr=-1/0,Vr=-1/0;for(let he of mt)ir=Math.min(ir,he.x),or=Math.min(or,he.y),kr=Math.max(kr,he.x),Vr=Math.max(Vr,he.y);for(let he=0;he=0&&rt[1].y+lt>=0){let pt=tt.map(nr=>Ne.getTilePoint(nr)),Ht=mt.map(nr=>Ne.getTilePoint(nr));ee.push({tile:Se,tileID:Ne,queryGeometry:pt,cameraQueryGeometry:Ht,scale:Ge})}}return ee}getVisibleCoordinates(w){let q=this.getRenderableIds(w).map(Q=>this._tiles[Q].tileID);for(let Q of q)Q.posMatrix=this.transform.calculatePosMatrix(Q.toUnwrapped());return q}hasTransition(){if(this._source.hasTransition())return!0;if(It(this._source.type)){let w=l.now();for(let q in this._tiles)if(this._tiles[q].fadeEndTime>=w)return!0}return!1}setFeatureState(w,q,Q){this._state.updateState(w=w||"_geojsonTileLayer",q,Q)}removeFeatureState(w,q,Q){this._state.removeFeatureState(w=w||"_geojsonTileLayer",q,Q)}getFeatureState(w,q){return this._state.getState(w=w||"_geojsonTileLayer",q)}setDependencies(w,q,Q){let ee=this._tiles[w];ee&&ee.setDependencies(q,Q)}reloadTilesForDependencies(w,q){for(let Q in this._tiles)this._tiles[Q].hasDependency(w,q)&&this._reloadTile(Q,"reloading");this._cache.filter(Q=>!Q.hasDependency(w,q))}}function et(le,w){let q=Math.abs(2*le.wrap)-+(le.wrap<0),Q=Math.abs(2*w.wrap)-+(w.wrap<0);return le.overscaledZ-w.overscaledZ||Q-q||w.canonical.y-le.canonical.y||w.canonical.x-le.canonical.x}function It(le){return le==="raster"||le==="image"||le==="video"}it.maxOverzooming=10,it.maxUnderzooming=3;class Yt{constructor(w,q){this.reset(w,q)}reset(w,q){this.points=w||[],this._distances=[0];for(let Q=1;Q0?(ee-Ve)/tt:0;return this.points[ue].mult(1-mt).add(this.points[q].mult(mt))}}function cr(le,w){let q=!0;return le==="always"||le!=="never"&&w!=="never"||(q=!1),q}class _r{constructor(w,q,Q){let ee=this.boxCells=[],ue=this.circleCells=[];this.xCellCount=Math.ceil(w/Q),this.yCellCount=Math.ceil(q/Q);for(let Ve=0;Vethis.width||ee<0||q>this.height)return[];let mt=[];if(w<=0&&q<=0&&this.width<=Q&&this.height<=ee){if(ue)return[{key:null,x1:w,y1:q,x2:Q,y2:ee}];for(let Bt=0;Bt0}hitTestCircle(w,q,Q,ee,ue){let Ve=w-Q,tt=w+Q,mt=q-Q,Bt=q+Q;if(tt<0||Ve>this.width||Bt<0||mt>this.height)return!1;let ir=[];return this._forEachCell(Ve,mt,tt,Bt,this._queryCellCircle,ir,{hitTest:!0,overlapMode:ee,circle:{x:w,y:q,radius:Q},seenUids:{box:{},circle:{}}},ue),ir.length>0}_queryCell(w,q,Q,ee,ue,Ve,tt,mt){let{seenUids:Bt,hitTest:ir,overlapMode:or}=tt,kr=this.boxCells[ue];if(kr!==null){let he=this.bboxes;for(let Se of kr)if(!Bt.box[Se]){Bt.box[Se]=!0;let Ne=4*Se,Ge=this.boxKeys[Se];if(w<=he[Ne+2]&&q<=he[Ne+3]&&Q>=he[Ne+0]&&ee>=he[Ne+1]&&(!mt||mt(Ge))&&(!ir||!cr(or,Ge.overlapMode))&&(Ve.push({key:Ge,x1:he[Ne],y1:he[Ne+1],x2:he[Ne+2],y2:he[Ne+3]}),ir))return!0}}let Vr=this.circleCells[ue];if(Vr!==null){let he=this.circles;for(let Se of Vr)if(!Bt.circle[Se]){Bt.circle[Se]=!0;let Ne=3*Se,Ge=this.circleKeys[Se];if(this._circleAndRectCollide(he[Ne],he[Ne+1],he[Ne+2],w,q,Q,ee)&&(!mt||mt(Ge))&&(!ir||!cr(or,Ge.overlapMode))){let lt=he[Ne],rt=he[Ne+1],pt=he[Ne+2];if(Ve.push({key:Ge,x1:lt-pt,y1:rt-pt,x2:lt+pt,y2:rt+pt}),ir)return!0}}}return!1}_queryCellCircle(w,q,Q,ee,ue,Ve,tt,mt){let{circle:Bt,seenUids:ir,overlapMode:or}=tt,kr=this.boxCells[ue];if(kr!==null){let he=this.bboxes;for(let Se of kr)if(!ir.box[Se]){ir.box[Se]=!0;let Ne=4*Se,Ge=this.boxKeys[Se];if(this._circleAndRectCollide(Bt.x,Bt.y,Bt.radius,he[Ne+0],he[Ne+1],he[Ne+2],he[Ne+3])&&(!mt||mt(Ge))&&!cr(or,Ge.overlapMode))return Ve.push(!0),!0}}let Vr=this.circleCells[ue];if(Vr!==null){let he=this.circles;for(let Se of Vr)if(!ir.circle[Se]){ir.circle[Se]=!0;let Ne=3*Se,Ge=this.circleKeys[Se];if(this._circlesCollide(he[Ne],he[Ne+1],he[Ne+2],Bt.x,Bt.y,Bt.radius)&&(!mt||mt(Ge))&&!cr(or,Ge.overlapMode))return Ve.push(!0),!0}}}_forEachCell(w,q,Q,ee,ue,Ve,tt,mt){let Bt=this._convertToXCellCoord(w),ir=this._convertToYCellCoord(q),or=this._convertToXCellCoord(Q),kr=this._convertToYCellCoord(ee);for(let Vr=Bt;Vr<=or;Vr++)for(let he=ir;he<=kr;he++)if(ue.call(this,w,q,Q,ee,this.xCellCount*he+Vr,Ve,tt,mt))return}_convertToXCellCoord(w){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(w*this.xScale)))}_convertToYCellCoord(w){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(w*this.yScale)))}_circlesCollide(w,q,Q,ee,ue,Ve){let tt=ee-w,mt=ue-q,Bt=Q+Ve;return Bt*Bt>tt*tt+mt*mt}_circleAndRectCollide(w,q,Q,ee,ue,Ve,tt){let mt=(Ve-ee)/2,Bt=Math.abs(w-(ee+mt));if(Bt>mt+Q)return!1;let ir=(tt-ue)/2,or=Math.abs(q-(ue+ir));if(or>ir+Q)return!1;if(Bt<=mt||or<=ir)return!0;let kr=Bt-mt,Vr=or-ir;return kr*kr+Vr*Vr<=Q*Q}}function yr(le,w,q,Q,ee){let ue=a.H();return w?(a.K(ue,ue,[1/ee,1/ee,1]),q||a.ad(ue,ue,Q.angle)):a.L(ue,Q.labelPlaneMatrix,le),ue}function Ut(le,w,q,Q,ee){if(w){let ue=a.ae(le);return a.K(ue,ue,[ee,ee,1]),q||a.ad(ue,ue,-Q.angle),ue}return Q.glCoordMatrix}function Re(le,w,q,Q){let ee;Q?(ee=[le,w,Q(le,w),1],a.af(ee,ee,q)):(ee=[le,w,0,1],Er(ee,ee,q));let ue=ee[3];return{point:new a.P(ee[0]/ue,ee[1]/ue),signedDistanceFromCamera:ue,isOccluded:!1}}function xe(le,w){return .5+le/w*.5}function Oe(le,w){return le.x>=-w[0]&&le.x<=w[0]&&le.y>=-w[1]&&le.y<=w[1]}function Ie(le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he){let Se=Q?le.textSizeData:le.iconSizeData,Ne=a.ag(Se,q.transform.zoom),Ge=[256/q.width*2+1,256/q.height*2+1],lt=Q?le.text.dynamicLayoutVertexArray:le.icon.dynamicLayoutVertexArray;lt.clear();let rt=le.lineVertexArray,pt=Q?le.text.placedSymbolArray:le.icon.placedSymbolArray,Ht=q.transform.width/q.transform.height,nr=!1;for(let fr=0;frMath.abs(q.x-w.x)*Q?{useVertical:!0}:(le===a.ah.vertical?w.yq.x)?{needsFlipping:!0}:null}function ge(le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir){let or=q/24,kr=w.lineOffsetX*or,Vr=w.lineOffsetY*or,he;if(w.numGlyphs>1){let Se=w.glyphStartIndex+w.numGlyphs,Ne=w.lineStartIndex,Ge=w.lineStartIndex+w.lineLength,lt=Fe(or,tt,kr,Vr,Q,w,ir,le);if(!lt)return{notEnoughRoom:!0};let rt=Re(lt.first.point.x,lt.first.point.y,Ve,le.getElevation).point,pt=Re(lt.last.point.x,lt.last.point.y,Ve,le.getElevation).point;if(ee&&!Q){let Ht=ft(w.writingMode,rt,pt,Bt);if(Ht)return Ht}he=[lt.first];for(let Ht=w.glyphStartIndex+1;Ht0?rt.point:function(nr,fr,Tr,Ir,ri,li){return fe(nr,fr,Tr,1,ri,li)}(le.tileAnchorPoint,lt,Ne,0,ue,le),Ht=ft(w.writingMode,Ne,pt,Bt);if(Ht)return Ht}let Se=rr(or*tt.getoffsetX(w.glyphStartIndex),kr,Vr,Q,w.segment,w.lineStartIndex,w.lineStartIndex+w.lineLength,le,ir);if(!Se||le.projectionCache.anyProjectionOccluded)return{notEnoughRoom:!0};he=[Se]}for(let Se of he)a.aj(mt,Se.point,Se.angle);return{}}function fe(le,w,q,Q,ee,ue){let Ve=le.add(le.sub(w)._unit()),tt=ee!==void 0?Re(Ve.x,Ve.y,ee,ue.getElevation).point:dt(Ve.x,Ve.y,ue).point,mt=q.sub(tt);return q.add(mt._mult(Q/mt.mag()))}function pe(le,w,q){let Q=w.projectionCache;if(Q.projections[le])return Q.projections[le];let ee=new a.P(w.lineVertexArray.getx(le),w.lineVertexArray.gety(le)),ue=dt(ee.x,ee.y,w);if(ue.signedDistanceFromCamera>0)return Q.projections[le]=ue.point,Q.anyProjectionOccluded=Q.anyProjectionOccluded||ue.isOccluded,ue.point;let Ve=le-q.direction;return function(tt,mt,Bt,ir,or){return fe(tt,mt,Bt,ir,void 0,or)}(q.distanceFromAnchor===0?w.tileAnchorPoint:new a.P(w.lineVertexArray.getx(Ve),w.lineVertexArray.gety(Ve)),ee,q.previousVertex,q.absOffsetX-q.distanceFromAnchor+1,w)}function dt(le,w,q){let Q=le+q.translation[0],ee=w+q.translation[1],ue;return!q.pitchWithMap&&q.projection.useSpecialProjectionForSymbols?(ue=q.projection.projectTileCoordinates(Q,ee,q.unwrappedTileID,q.getElevation),ue.point.x=(.5*ue.point.x+.5)*q.width,ue.point.y=(.5*-ue.point.y+.5)*q.height):(ue=Re(Q,ee,q.labelPlaneMatrix,q.getElevation),ue.isOccluded=!1),ue}function Pt(le,w,q){return le._unit()._perp()._mult(w*q)}function zt(le,w,q,Q,ee,ue,Ve,tt,mt){if(tt.projectionCache.offsets[le])return tt.projectionCache.offsets[le];let Bt=q.add(w);if(le+mt.direction=ee)return tt.projectionCache.offsets[le]=Bt,Bt;let ir=pe(le+mt.direction,tt,mt),or=Pt(ir.sub(q),Ve,mt.direction),kr=q.add(or),Vr=ir.add(or);return tt.projectionCache.offsets[le]=a.ak(ue,Bt,kr,Vr)||Bt,tt.projectionCache.offsets[le]}function rr(le,w,q,Q,ee,ue,Ve,tt,mt){let Bt=Q?le-w:le+w,ir=Bt>0?1:-1,or=0;Q&&(ir*=-1,or=Math.PI),ir<0&&(or+=Math.PI);let kr,Vr=ir>0?ue+ee:ue+ee+1;tt.projectionCache.cachedAnchorPoint?kr=tt.projectionCache.cachedAnchorPoint:(kr=dt(tt.tileAnchorPoint.x,tt.tileAnchorPoint.y,tt).point,tt.projectionCache.cachedAnchorPoint=kr);let he,Se,Ne=kr,Ge=kr,lt=0,rt=0,pt=Math.abs(Bt),Ht=[],nr;for(;lt+rt<=pt;){if(Vr+=ir,Vr=Ve)return null;lt+=rt,Ge=Ne,Se=he;let Ir={absOffsetX:pt,direction:ir,distanceFromAnchor:lt,previousVertex:Ge};if(Ne=pe(Vr,tt,Ir),q===0)Ht.push(Ge),nr=Ne.sub(Ge);else{let ri,li=Ne.sub(Ge);ri=li.mag()===0?Pt(pe(Vr+ir,tt,Ir).sub(Ne),q,ir):Pt(li,q,ir),Se||(Se=Ge.add(ri)),he=zt(Vr,ri,Ne,ue,Ve,Se,q,tt,Ir),Ht.push(Se),nr=he.sub(Se)}rt=nr.mag()}let fr=nr._mult((pt-lt)/rt)._add(Se||Ge),Tr=or+Math.atan2(Ne.y-Ge.y,Ne.x-Ge.x);return Ht.push(fr),{point:fr,angle:mt?Tr:0,path:Ht}}let Gr=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Br(le,w){for(let q=0;q=1;Us--)Ua.push(Zn.path[Us]);for(let Us=1;Usml.signedDistanceFromCamera<=0)?[]:Us.map(ml=>ml.point)}let vl=[];if(Ua.length>0){let Us=Ua[0].clone(),ml=Ua[0].clone();for(let au=1;au=li.x&&ml.x<=Ei.x&&Us.y>=li.y&&ml.y<=Ei.y?[Ua]:ml.xEi.x||ml.yEi.y?[]:a.al([Ua],li.x,li.y,Ei.x,Ei.y)}for(let Us of vl){hn.reset(Us,.25*ri);let ml=0;ml=hn.length<=.5*ri?1:Math.ceil(hn.paddedLength/Fo)+1;for(let au=0;auRe(ee.x,ee.y,Q,q.getElevation))}queryRenderedSymbols(w){if(w.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};let q=[],Q=1/0,ee=1/0,ue=-1/0,Ve=-1/0;for(let ir of w){let or=new a.P(ir.x+Rr,ir.y+Rr);Q=Math.min(Q,or.x),ee=Math.min(ee,or.y),ue=Math.max(ue,or.x),Ve=Math.max(Ve,or.y),q.push(or)}let tt=this.grid.query(Q,ee,ue,Ve).concat(this.ignoredGrid.query(Q,ee,ue,Ve)),mt={},Bt={};for(let ir of tt){let or=ir.key;if(mt[or.bucketInstanceId]===void 0&&(mt[or.bucketInstanceId]={}),mt[or.bucketInstanceId][or.featureIndex])continue;let kr=[new a.P(ir.x1,ir.y1),new a.P(ir.x2,ir.y1),new a.P(ir.x2,ir.y2),new a.P(ir.x1,ir.y2)];a.am(q,kr)&&(mt[or.bucketInstanceId][or.featureIndex]=!0,Bt[or.bucketInstanceId]===void 0&&(Bt[or.bucketInstanceId]=[]),Bt[or.bucketInstanceId].push(or.featureIndex))}return Bt}insertCollisionBox(w,q,Q,ee,ue,Ve){(Q?this.ignoredGrid:this.grid).insert({bucketInstanceId:ee,featureIndex:ue,collisionGroupID:Ve,overlapMode:q},w[0],w[1],w[2],w[3])}insertCollisionCircles(w,q,Q,ee,ue,Ve){let tt=Q?this.ignoredGrid:this.grid,mt={bucketInstanceId:ee,featureIndex:ue,collisionGroupID:Ve,overlapMode:q};for(let Bt=0;Bt=this.screenRightBoundary||eethis.screenBottomBoundary}isInsideGrid(w,q,Q,ee){return Q>=0&&w=0&&qthis.projectAndGetPerspectiveRatio(Q,ri.x,ri.y,ee,Bt));Tr=Ir.some(ri=>!ri.isOccluded),fr=Ir.map(ri=>ri.point)}else Tr=!0;return{box:a.ao(fr),allPointsOccluded:!Tr}}}function Di(le,w,q){return w*(a.X/(le.tileSize*Math.pow(2,q-le.tileID.overscaledZ)))}class ni{constructor(w,q,Q,ee){this.opacity=w?Math.max(0,Math.min(1,w.opacity+(w.placed?q:-q))):ee&&Q?1:0,this.placed=Q}isHidden(){return this.opacity===0&&!this.placed}}class $i{constructor(w,q,Q,ee,ue){this.text=new ni(w?w.text:null,q,Q,ue),this.icon=new ni(w?w.icon:null,q,ee,ue)}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class Qi{constructor(w,q,Q){this.text=w,this.icon=q,this.skipFade=Q}}class si{constructor(){this.invProjMatrix=a.H(),this.viewportMatrix=a.H(),this.circles=[]}}class Ai{constructor(w,q,Q,ee,ue){this.bucketInstanceId=w,this.featureIndex=q,this.sourceLayerIndex=Q,this.bucketIndex=ee,this.tileID=ue}}class Ni{constructor(w){this.crossSourceCollisions=w,this.maxGroupID=0,this.collisionGroups={}}get(w){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[w]){let q=++this.maxGroupID;this.collisionGroups[w]={ID:q,predicate:Q=>Q.collisionGroupID===q}}return this.collisionGroups[w]}}function Rt(le,w,q,Q,ee){let{horizontalAlign:ue,verticalAlign:Ve}=a.au(le);return new a.P(-(ue-.5)*w+Q[0]*ee,-(Ve-.5)*q+Q[1]*ee)}class yt{constructor(w,q,Q,ee,ue,Ve){this.transform=w.clone(),this.terrain=Q,this.collisionIndex=new pi(this.transform,q),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=ee,this.retainedQueryData={},this.collisionGroups=new Ni(ue),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=Ve,Ve&&(Ve.prevPlacement=void 0),this.placedOrientations={}}_getTerrainElevationFunc(w){let q=this.terrain;return q?(Q,ee)=>q.getElevation(w,Q,ee):null}getBucketParts(w,q,Q,ee){let ue=Q.getBucket(q),Ve=Q.latestFeatureIndex;if(!ue||!Ve||q.id!==ue.layerIds[0])return;let tt=Q.collisionBoxArray,mt=ue.layers[0].layout,Bt=ue.layers[0].paint,ir=Math.pow(2,this.transform.zoom-Q.tileID.overscaledZ),or=Q.tileSize/a.X,kr=Q.tileID.toUnwrapped(),Vr=this.transform.calculatePosMatrix(kr),he=mt.get("text-pitch-alignment")==="map",Se=mt.get("text-rotation-alignment")==="map",Ne=Di(Q,1,this.transform.zoom),Ge=this.collisionIndex.mapProjection.translatePosition(this.transform,Q,Bt.get("text-translate"),Bt.get("text-translate-anchor")),lt=this.collisionIndex.mapProjection.translatePosition(this.transform,Q,Bt.get("icon-translate"),Bt.get("icon-translate-anchor")),rt=yr(Vr,he,Se,this.transform,Ne),pt=null;if(he){let nr=Ut(Vr,he,Se,this.transform,Ne);pt=a.L([],this.transform.labelPlaneMatrix,nr)}this.retainedQueryData[ue.bucketInstanceId]=new Ai(ue.bucketInstanceId,Ve,ue.sourceLayerIndex,ue.index,Q.tileID);let Ht={bucket:ue,layout:mt,translationText:Ge,translationIcon:lt,posMatrix:Vr,unwrappedTileID:kr,textLabelPlaneMatrix:rt,labelToScreenMatrix:pt,scale:ir,textPixelRatio:or,holdingForFade:Q.holdingForFade(),collisionBoxArray:tt,partiallyEvaluatedTextSize:a.ag(ue.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(ue.sourceID)};if(ee)for(let nr of ue.sortKeyRanges){let{sortKey:fr,symbolInstanceStart:Tr,symbolInstanceEnd:Ir}=nr;w.push({sortKey:fr,symbolInstanceStart:Tr,symbolInstanceEnd:Ir,parameters:Ht})}else w.push({symbolInstanceStart:0,symbolInstanceEnd:ue.symbolInstances.length,parameters:Ht})}attemptAnchorPlacement(w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt,rt){let pt=a.aq[w.textAnchor],Ht=[w.textOffset0,w.textOffset1],nr=Rt(pt,Q,ee,Ht,ue),fr=this.collisionIndex.placeCollisionBox(q,kr,mt,Bt,ir,tt,Ve,Ne,or.predicate,rt,nr);if((!lt||this.collisionIndex.placeCollisionBox(lt,kr,mt,Bt,ir,tt,Ve,Ge,or.predicate,rt,nr).placeable)&&fr.placeable){let Tr;if(this.prevPlacement&&this.prevPlacement.variableOffsets[Vr.crossTileID]&&this.prevPlacement.placements[Vr.crossTileID]&&this.prevPlacement.placements[Vr.crossTileID].text&&(Tr=this.prevPlacement.variableOffsets[Vr.crossTileID].anchor),Vr.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[Vr.crossTileID]={textOffset:Ht,width:Q,height:ee,anchor:pt,textBoxScale:ue,prevAnchor:Tr},this.markUsedJustification(he,pt,Vr,Se),he.allowVerticalPlacement&&(this.markUsedOrientation(he,Se,Vr),this.placedOrientations[Vr.crossTileID]=Se),{shift:nr,placedGlyphBoxes:fr}}}placeLayerBucketPart(w,q,Q){let{bucket:ee,layout:ue,translationText:Ve,translationIcon:tt,posMatrix:mt,unwrappedTileID:Bt,textLabelPlaneMatrix:ir,labelToScreenMatrix:or,textPixelRatio:kr,holdingForFade:Vr,collisionBoxArray:he,partiallyEvaluatedTextSize:Se,collisionGroup:Ne}=w.parameters,Ge=ue.get("text-optional"),lt=ue.get("icon-optional"),rt=a.ar(ue,"text-overlap","text-allow-overlap"),pt=rt==="always",Ht=a.ar(ue,"icon-overlap","icon-allow-overlap"),nr=Ht==="always",fr=ue.get("text-rotation-alignment")==="map",Tr=ue.get("text-pitch-alignment")==="map",Ir=ue.get("icon-text-fit")!=="none",ri=ue.get("symbol-z-order")==="viewport-y",li=pt&&(nr||!ee.hasIconData()||lt),Ei=nr&&(pt||!ee.hasTextData()||Ge);!ee.collisionArrays&&he&&ee.deserializeCollisionBoxes(he);let hn=this._getTerrainElevationFunc(this.retainedQueryData[ee.bucketInstanceId].tileID),Zn=(Yn,Ua,Fo)=>{var vl,Us;if(q[Yn.crossTileID])return;if(Vr)return void(this.placements[Yn.crossTileID]=new Qi(!1,!1,!1));let ml=!1,au=!1,Sl=!0,Yl=null,Ol={box:null,placeable:!1,offscreen:null},ou={box:null,placeable:!1,offscreen:null},Pu=null,nu=null,tu=null,Hu=0,$u=0,Ku=0;Ua.textFeatureIndex?Hu=Ua.textFeatureIndex:Yn.useRuntimeCollisionCircles&&(Hu=Yn.featureIndex),Ua.verticalTextFeatureIndex&&($u=Ua.verticalTextFeatureIndex);let Wu=Ua.textBox;if(Wu){let Qu=Pe=>{let Xe=a.ah.horizontal;if(ee.allowVerticalPlacement&&!Pe&&this.prevPlacement){let Qe=this.prevPlacement.placedOrientations[Yn.crossTileID];Qe&&(this.placedOrientations[Yn.crossTileID]=Qe,Xe=Qe,this.markUsedOrientation(ee,Xe,Yn))}return Xe},ef=(Pe,Xe)=>{if(ee.allowVerticalPlacement&&Yn.numVerticalGlyphVertices>0&&Ua.verticalTextBox){for(let Qe of ee.writingModes)if(Qe===a.ah.vertical?(Ol=Xe(),ou=Ol):Ol=Pe(),Ol&&Ol.placeable)break}else Ol=Pe()},Z=Yn.textAnchorOffsetStartIndex,se=Yn.textAnchorOffsetEndIndex;if(se===Z){let Pe=(Xe,Qe)=>{let st=this.collisionIndex.placeCollisionBox(Xe,rt,kr,mt,Bt,Tr,fr,Ve,Ne.predicate,hn);return st&&st.placeable&&(this.markUsedOrientation(ee,Qe,Yn),this.placedOrientations[Yn.crossTileID]=Qe),st};ef(()=>Pe(Wu,a.ah.horizontal),()=>{let Xe=Ua.verticalTextBox;return ee.allowVerticalPlacement&&Yn.numVerticalGlyphVertices>0&&Xe?Pe(Xe,a.ah.vertical):{box:null,offscreen:null}}),Qu(Ol&&Ol.placeable)}else{let Pe=a.aq[(Us=(vl=this.prevPlacement)===null||vl===void 0?void 0:vl.variableOffsets[Yn.crossTileID])===null||Us===void 0?void 0:Us.anchor],Xe=(st,jt,_t)=>{let hr=st.x2-st.x1,Cr=st.y2-st.y1,zr=Yn.textBoxScale,fi=Ir&&Ht==="never"?jt:null,$r=null,Bi=rt==="never"?1:2,fn="never";Pe&&Bi++;for(let mi=0;miXe(Wu,Ua.iconBox,a.ah.horizontal),()=>{let st=Ua.verticalTextBox;return ee.allowVerticalPlacement&&(!Ol||!Ol.placeable)&&Yn.numVerticalGlyphVertices>0&&st?Xe(st,Ua.verticalIconBox,a.ah.vertical):{box:null,occluded:!0,offscreen:null}}),Ol&&(ml=Ol.placeable,Sl=Ol.offscreen);let Qe=Qu(Ol&&Ol.placeable);if(!ml&&this.prevPlacement){let st=this.prevPlacement.variableOffsets[Yn.crossTileID];st&&(this.variableOffsets[Yn.crossTileID]=st,this.markUsedJustification(ee,st.anchor,Yn,Qe))}}}if(Pu=Ol,ml=Pu&&Pu.placeable,Sl=Pu&&Pu.offscreen,Yn.useRuntimeCollisionCircles){let Qu=ee.text.placedSymbolArray.get(Yn.centerJustifiedTextSymbolIndex),ef=a.ai(ee.textSizeData,Se,Qu),Z=ue.get("text-padding");nu=this.collisionIndex.placeCollisionCircles(rt,Qu,ee.lineVertexArray,ee.glyphOffsetArray,ef,mt,Bt,ir,or,Q,Tr,Ne.predicate,Yn.collisionCircleDiameter,Z,Ve,hn),nu.circles.length&&nu.collisionDetected&&!Q&&a.w("Collisions detected, but collision boxes are not shown"),ml=pt||nu.circles.length>0&&!nu.collisionDetected,Sl=Sl&&nu.offscreen}if(Ua.iconFeatureIndex&&(Ku=Ua.iconFeatureIndex),Ua.iconBox){let Qu=ef=>this.collisionIndex.placeCollisionBox(ef,Ht,kr,mt,Bt,Tr,fr,tt,Ne.predicate,hn,Ir&&Yl?Yl:void 0);ou&&ou.placeable&&Ua.verticalIconBox?(tu=Qu(Ua.verticalIconBox),au=tu.placeable):(tu=Qu(Ua.iconBox),au=tu.placeable),Sl=Sl&&tu.offscreen}let ju=Ge||Yn.numHorizontalGlyphVertices===0&&Yn.numVerticalGlyphVertices===0,sf=lt||Yn.numIconVertices===0;ju||sf?sf?ju||(au=au&&ml):ml=au&&ml:au=ml=au&&ml;let _f=au&&tu.placeable;if(ml&&Pu.placeable&&this.collisionIndex.insertCollisionBox(Pu.box,rt,ue.get("text-ignore-placement"),ee.bucketInstanceId,ou&&ou.placeable&&$u?$u:Hu,Ne.ID),_f&&this.collisionIndex.insertCollisionBox(tu.box,Ht,ue.get("icon-ignore-placement"),ee.bucketInstanceId,Ku,Ne.ID),nu&&ml&&this.collisionIndex.insertCollisionCircles(nu.circles,rt,ue.get("text-ignore-placement"),ee.bucketInstanceId,Hu,Ne.ID),Q&&this.storeCollisionData(ee.bucketInstanceId,Fo,Ua,Pu,tu,nu),Yn.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");if(ee.bucketInstanceId===0)throw new Error("bucket.bucketInstanceId can't be 0");this.placements[Yn.crossTileID]=new Qi(ml||li,au||Ei,Sl||ee.justReloaded),q[Yn.crossTileID]=!0};if(ri){if(w.symbolInstanceStart!==0)throw new Error("bucket.bucketInstanceId should be 0");let Yn=ee.getSortedSymbolIndexes(this.transform.angle);for(let Ua=Yn.length-1;Ua>=0;--Ua){let Fo=Yn[Ua];Zn(ee.symbolInstances.get(Fo),ee.collisionArrays[Fo],Fo)}}else for(let Yn=w.symbolInstanceStart;Yn=0&&(w.text.placedSymbolArray.get(tt).crossTileID=ue>=0&&tt!==ue?0:Q.crossTileID)}markUsedOrientation(w,q,Q){let ee=q===a.ah.horizontal||q===a.ah.horizontalOnly?q:0,ue=q===a.ah.vertical?q:0,Ve=[Q.leftJustifiedTextSymbolIndex,Q.centerJustifiedTextSymbolIndex,Q.rightJustifiedTextSymbolIndex];for(let tt of Ve)w.text.placedSymbolArray.get(tt).placedOrientation=ee;Q.verticalPlacedTextSymbolIndex&&(w.text.placedSymbolArray.get(Q.verticalPlacedTextSymbolIndex).placedOrientation=ue)}commit(w){this.commitTime=w,this.zoomAtLastRecencyCheck=this.transform.zoom;let q=this.prevPlacement,Q=!1;this.prevZoomAdjustment=q?q.zoomAdjustment(this.transform.zoom):0;let ee=q?q.symbolFadeChange(w):1,ue=q?q.opacities:{},Ve=q?q.variableOffsets:{},tt=q?q.placedOrientations:{};for(let mt in this.placements){let Bt=this.placements[mt],ir=ue[mt];ir?(this.opacities[mt]=new $i(ir,ee,Bt.text,Bt.icon),Q=Q||Bt.text!==ir.text.placed||Bt.icon!==ir.icon.placed):(this.opacities[mt]=new $i(null,ee,Bt.text,Bt.icon,Bt.skipFade),Q=Q||Bt.text||Bt.icon)}for(let mt in ue){let Bt=ue[mt];if(!this.opacities[mt]){let ir=new $i(Bt,ee,!1,!1);ir.isHidden()||(this.opacities[mt]=ir,Q=Q||Bt.text.placed||Bt.icon.placed)}}for(let mt in Ve)this.variableOffsets[mt]||!this.opacities[mt]||this.opacities[mt].isHidden()||(this.variableOffsets[mt]=Ve[mt]);for(let mt in tt)this.placedOrientations[mt]||!this.opacities[mt]||this.opacities[mt].isHidden()||(this.placedOrientations[mt]=tt[mt]);if(q&&q.lastPlacementChangeTime===void 0)throw new Error("Last placement time for previous placement is not defined");Q?this.lastPlacementChangeTime=w:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=q?q.lastPlacementChangeTime:w)}updateLayerOpacities(w,q){let Q={};for(let ee of q){let ue=ee.getBucket(w);ue&&ee.latestFeatureIndex&&w.id===ue.layerIds[0]&&this.updateBucketOpacities(ue,ee.tileID,Q,ee.collisionBoxArray)}}updateBucketOpacities(w,q,Q,ee){w.hasTextData()&&(w.text.opacityVertexArray.clear(),w.text.hasVisibleVertices=!1),w.hasIconData()&&(w.icon.opacityVertexArray.clear(),w.icon.hasVisibleVertices=!1),w.hasIconCollisionBoxData()&&w.iconCollisionBox.collisionVertexArray.clear(),w.hasTextCollisionBoxData()&&w.textCollisionBox.collisionVertexArray.clear();let ue=w.layers[0],Ve=ue.layout,tt=new $i(null,0,!1,!1,!0),mt=Ve.get("text-allow-overlap"),Bt=Ve.get("icon-allow-overlap"),ir=ue._unevaluatedLayout.hasValue("text-variable-anchor")||ue._unevaluatedLayout.hasValue("text-variable-anchor-offset"),or=Ve.get("text-rotation-alignment")==="map",kr=Ve.get("text-pitch-alignment")==="map",Vr=Ve.get("icon-text-fit")!=="none",he=new $i(null,0,mt&&(Bt||!w.hasIconData()||Ve.get("icon-optional")),Bt&&(mt||!w.hasTextData()||Ve.get("text-optional")),!0);!w.collisionArrays&&ee&&(w.hasIconCollisionBoxData()||w.hasTextCollisionBoxData())&&w.deserializeCollisionBoxes(ee);let Se=(Ge,lt,rt)=>{for(let pt=0;pt0,Tr=this.placedOrientations[lt.crossTileID],Ir=Tr===a.ah.vertical,ri=Tr===a.ah.horizontal||Tr===a.ah.horizontalOnly;if(rt>0||pt>0){let Ei=gi(nr.text);Se(w.text,rt,Ir?ki:Ei),Se(w.text,pt,ri?ki:Ei);let hn=nr.text.isHidden();[lt.rightJustifiedTextSymbolIndex,lt.centerJustifiedTextSymbolIndex,lt.leftJustifiedTextSymbolIndex].forEach(Ua=>{Ua>=0&&(w.text.placedSymbolArray.get(Ua).hidden=hn||Ir?1:0)}),lt.verticalPlacedTextSymbolIndex>=0&&(w.text.placedSymbolArray.get(lt.verticalPlacedTextSymbolIndex).hidden=hn||ri?1:0);let Zn=this.variableOffsets[lt.crossTileID];Zn&&this.markUsedJustification(w,Zn.anchor,lt,Tr);let Yn=this.placedOrientations[lt.crossTileID];Yn&&(this.markUsedJustification(w,"left",lt,Yn),this.markUsedOrientation(w,Yn,lt))}if(fr){let Ei=gi(nr.icon),hn=!(Vr&<.verticalPlacedIconSymbolIndex&&Ir);lt.placedIconSymbolIndex>=0&&(Se(w.icon,lt.numIconVertices,hn?Ei:ki),w.icon.placedSymbolArray.get(lt.placedIconSymbolIndex).hidden=nr.icon.isHidden()),lt.verticalPlacedIconSymbolIndex>=0&&(Se(w.icon,lt.numVerticalIconVertices,hn?ki:Ei),w.icon.placedSymbolArray.get(lt.verticalPlacedIconSymbolIndex).hidden=nr.icon.isHidden())}let li=Ne&&Ne.has(Ge)?Ne.get(Ge):{text:null,icon:null};if(w.hasIconCollisionBoxData()||w.hasTextCollisionBoxData()){let Ei=w.collisionArrays[Ge];if(Ei){let hn=new a.P(0,0);if(Ei.textBox||Ei.verticalTextBox){let Zn=!0;if(ir){let Yn=this.variableOffsets[Ht];Yn?(hn=Rt(Yn.anchor,Yn.width,Yn.height,Yn.textOffset,Yn.textBoxScale),or&&hn._rotate(kr?this.transform.angle:-this.transform.angle)):Zn=!1}if(Ei.textBox||Ei.verticalTextBox){let Yn;Ei.textBox&&(Yn=Ir),Ei.verticalTextBox&&(Yn=ri),Gt(w.textCollisionBox.collisionVertexArray,nr.text.placed,!Zn||Yn,li.text,hn.x,hn.y)}}if(Ei.iconBox||Ei.verticalIconBox){let Zn=!!(!ri&&Ei.verticalIconBox),Yn;Ei.iconBox&&(Yn=Zn),Ei.verticalIconBox&&(Yn=!Zn),Gt(w.iconCollisionBox.collisionVertexArray,nr.icon.placed,Yn,li.icon,Vr?hn.x:0,Vr?hn.y:0)}}}}if(w.sortFeatures(this.transform.angle),this.retainedQueryData[w.bucketInstanceId]&&(this.retainedQueryData[w.bucketInstanceId].featureSortOrder=w.featureSortOrder),w.hasTextData()&&w.text.opacityVertexBuffer&&w.text.opacityVertexBuffer.updateData(w.text.opacityVertexArray),w.hasIconData()&&w.icon.opacityVertexBuffer&&w.icon.opacityVertexBuffer.updateData(w.icon.opacityVertexArray),w.hasIconCollisionBoxData()&&w.iconCollisionBox.collisionVertexBuffer&&w.iconCollisionBox.collisionVertexBuffer.updateData(w.iconCollisionBox.collisionVertexArray),w.hasTextCollisionBoxData()&&w.textCollisionBox.collisionVertexBuffer&&w.textCollisionBox.collisionVertexBuffer.updateData(w.textCollisionBox.collisionVertexArray),w.text.opacityVertexArray.length!==w.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${w.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${w.text.layoutVertexArray.length}) / 4`);if(w.icon.opacityVertexArray.length!==w.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${w.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${w.icon.layoutVertexArray.length}) / 4`);if(w.bucketInstanceId in this.collisionCircleArrays){let Ge=this.collisionCircleArrays[w.bucketInstanceId];w.placementInvProjMatrix=Ge.invProjMatrix,w.placementViewportMatrix=Ge.viewportMatrix,w.collisionCircleArray=Ge.circles,delete this.collisionCircleArrays[w.bucketInstanceId]}}symbolFadeChange(w){return this.fadeDuration===0?1:(w-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(w){return Math.max(0,(this.transform.zoom-w)/1.5)}hasTransitions(w){return this.stale||w-this.lastPlacementChangeTimew}setStale(){this.stale=!0}}function Gt(le,w,q,Q,ee,ue){Q&&Q.length!==0||(Q=[0,0,0,0]);let Ve=Q[0]-Rr,tt=Q[1]-Rr,mt=Q[2]-Rr,Bt=Q[3]-Rr;le.emplaceBack(w?1:0,q?1:0,ee||0,ue||0,Ve,tt),le.emplaceBack(w?1:0,q?1:0,ee||0,ue||0,mt,tt),le.emplaceBack(w?1:0,q?1:0,ee||0,ue||0,mt,Bt),le.emplaceBack(w?1:0,q?1:0,ee||0,ue||0,Ve,Bt)}let Wt=Math.pow(2,25),xr=Math.pow(2,24),Lr=Math.pow(2,17),Nr=Math.pow(2,16),Or=Math.pow(2,9),Hr=Math.pow(2,8),jr=Math.pow(2,1);function gi(le){if(le.opacity===0&&!le.placed)return 0;if(le.opacity===1&&le.placed)return 4294967295;let w=le.placed?1:0,q=Math.floor(127*le.opacity);return q*Wt+w*xr+q*Lr+w*Nr+q*Or+w*Hr+q*jr+w}let ki=0;function Vi(){return{isOccluded:(le,w,q)=>!1,getPitchedTextCorrection:(le,w,q)=>1,get useSpecialProjectionForSymbols(){return!1},projectTileCoordinates(le,w,q,Q){throw new Error("Not implemented.")},translatePosition:(le,w,q,Q)=>function(ee,ue,Ve,tt,mt=!1){if(!Ve[0]&&!Ve[1])return[0,0];let Bt=mt?tt==="map"?ee.angle:0:tt==="viewport"?-ee.angle:0;if(Bt){let ir=Math.sin(Bt),or=Math.cos(Bt);Ve=[Ve[0]*or-Ve[1]*ir,Ve[0]*ir+Ve[1]*or]}return[mt?Ve[0]:Di(ue,Ve[0],ee.zoom),mt?Ve[1]:Di(ue,Ve[1],ee.zoom)]}(le,w,q,Q),getCircleRadiusCorrection:le=>1}}class ti{constructor(w){this._sortAcrossTiles=w.layout.get("symbol-z-order")!=="viewport-y"&&!w.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(w,q,Q,ee,ue){let Ve=this._bucketParts;for(;this._currentTileIndextt.sortKey-mt.sortKey));this._currentPartIndex!this._forceFullPlacement&&l.now()-ee>2;for(;this._currentPlacementIndex>=0;){let Ve=q[w[this._currentPlacementIndex]],tt=this.placement.collisionIndex.transform.zoom;if(Ve.type==="symbol"&&(!Ve.minzoom||Ve.minzoom<=tt)&&(!Ve.maxzoom||Ve.maxzoom>tt)){if(this._inProgressLayer||(this._inProgressLayer=new ti(Ve)),this._inProgressLayer.continuePlacement(Q[Ve.source],this.placement,this._showCollisionBoxes,Ve,ue))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(w){return this.placement.commit(w),this.placement}}let Yr=512/a.X/2;class oi{constructor(w,q,Q){this.tileID=w,this.bucketInstanceId=Q,this._symbolsByKey={};let ee=new Map;for(let ue=0;ue({x:Math.floor(mt.anchorX*Yr),y:Math.floor(mt.anchorY*Yr)})),crossTileIDs:Ve.map(mt=>mt.crossTileID)};if(tt.positions.length>128){let mt=new a.av(tt.positions.length,16,Uint16Array);for(let{x:Bt,y:ir}of tt.positions)mt.add(Bt,ir);mt.finish(),delete tt.positions,tt.index=mt}this._symbolsByKey[ue]=tt}}getScaledCoordinates(w,q){let{x:Q,y:ee,z:ue}=this.tileID.canonical,{x:Ve,y:tt,z:mt}=q.canonical,Bt=Yr/Math.pow(2,mt-ue),ir=(tt*a.X+w.anchorY)*Bt,or=ee*a.X*Yr;return{x:Math.floor((Ve*a.X+w.anchorX)*Bt-Q*a.X*Yr),y:Math.floor(ir-or)}}findMatches(w,q,Q){let ee=this.tileID.canonical.zw)}}class Fi{constructor(){this.maxCrossTileID=0}generate(){return++this.maxCrossTileID}}class an{constructor(){this.indexes={},this.usedCrossTileIDs={},this.lng=0}handleWrapJump(w){let q=Math.round((w-this.lng)/360);if(q!==0)for(let Q in this.indexes){let ee=this.indexes[Q],ue={};for(let Ve in ee){let tt=ee[Ve];tt.tileID=tt.tileID.unwrapTo(tt.tileID.wrap+q),ue[tt.tileID.key]=tt}this.indexes[Q]=ue}this.lng=w}addBucket(w,q,Q){if(this.indexes[w.overscaledZ]&&this.indexes[w.overscaledZ][w.key]){if(this.indexes[w.overscaledZ][w.key].bucketInstanceId===q.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(w.overscaledZ,this.indexes[w.overscaledZ][w.key])}for(let ue=0;uew.overscaledZ)for(let tt in Ve){let mt=Ve[tt];mt.tileID.isChildOf(w)&&mt.findMatches(q.symbolInstances,w,ee)}else{let tt=Ve[w.scaledTo(Number(ue)).key];tt&&tt.findMatches(q.symbolInstances,w,ee)}}for(let ue=0;ue{q[Q]=!0});for(let Q in this.layerIndexes)q[Q]||delete this.layerIndexes[Q]}}let Ri=(le,w)=>a.t(le,w&&w.filter(q=>q.identifier!=="source.canvas")),Ii=a.aw();class xn extends a.E{constructor(w,q={}){super(),this._rtlPluginLoaded=()=>{for(let Q in this.sourceCaches){let ee=this.sourceCaches[Q].getSource().type;ee!=="vector"&&ee!=="geojson"||this.sourceCaches[Q].reload()}},this.map=w,this.dispatcher=new Ee(ke(),w._getMapId()),this.dispatcher.registerMessageHandler("GG",(Q,ee)=>this.getGlyphs(Q,ee)),this.dispatcher.registerMessageHandler("GI",(Q,ee)=>this.getImages(Q,ee)),this.imageManager=new T,this.imageManager.setEventedParent(this),this.glyphManager=new G(w._requestManager,q.localIdeographFontFamily),this.lineAtlas=new ae(256,512),this.crossTileSymbolIndex=new nn,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new a.ax,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("SR",a.ay()),Tt().on(Et,this._rtlPluginLoaded),this.on("data",Q=>{if(Q.dataType!=="source"||Q.sourceDataType!=="metadata")return;let ee=this.sourceCaches[Q.sourceId];if(!ee)return;let ue=ee.getSource();if(ue&&ue.vectorLayerIds)for(let Ve in this._layers){let tt=this._layers[Ve];tt.source===ue.id&&this._validateLayer(tt)}})}loadURL(w,q={},Q){this.fire(new a.k("dataloading",{dataType:"style"})),q.validate=typeof q.validate!="boolean"||q.validate;let ee=this.map._requestManager.transformRequest(w,"Style");this._loadStyleRequest=new AbortController;let ue=this._loadStyleRequest;a.h(ee,this._loadStyleRequest).then(Ve=>{this._loadStyleRequest=null,this._load(Ve.data,q,Q)}).catch(Ve=>{this._loadStyleRequest=null,Ve&&!ue.signal.aborted&&this.fire(new a.j(Ve))})}loadJSON(w,q={},Q){this.fire(new a.k("dataloading",{dataType:"style"})),this._frameRequest=new AbortController,l.frameAsync(this._frameRequest).then(()=>{this._frameRequest=null,q.validate=q.validate!==!1,this._load(w,q,Q)}).catch(()=>{})}loadEmpty(){this.fire(new a.k("dataloading",{dataType:"style"})),this._load(Ii,{validate:!1})}_load(w,q,Q){var ee;let ue=q.transformStyle?q.transformStyle(Q,w):w;if(!q.validate||!Ri(this,a.u(ue))){this._loaded=!0,this.stylesheet=ue;for(let Ve in ue.sources)this.addSource(Ve,ue.sources[Ve],{validate:!1});ue.sprite?this._loadSprite(ue.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(ue.glyphs),this._createLayers(),this.light=new N(this.stylesheet.light),this.sky=new re(this.stylesheet.sky),this.map.setTerrain((ee=this.stylesheet.terrain)!==null&&ee!==void 0?ee:null),this.fire(new a.k("data",{dataType:"style"})),this.fire(new a.k("style.load"))}}_createLayers(){let w=a.az(this.stylesheet.layers);this.dispatcher.broadcast("SL",w),this._order=w.map(q=>q.id),this._layers={},this._serializedLayers=null;for(let q of w){let Q=a.aA(q);Q.setEventedParent(this,{layer:{id:q.id}}),this._layers[q.id]=Q}}_loadSprite(w,q=!1,Q=void 0){let ee;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,function(ue,Ve,tt,mt){return a._(this,void 0,void 0,function*(){let Bt=C(ue),ir=tt>1?"@2x":"",or={},kr={};for(let{id:Vr,url:he}of Bt){let Se=Ve.transformRequest(M(he,ir,".json"),"SpriteJSON");or[Vr]=a.h(Se,mt);let Ne=Ve.transformRequest(M(he,ir,".png"),"SpriteImage");kr[Vr]=v.getImage(Ne,mt)}return yield Promise.all([...Object.values(or),...Object.values(kr)]),function(Vr,he){return a._(this,void 0,void 0,function*(){let Se={};for(let Ne in Vr){Se[Ne]={};let Ge=l.getImageCanvasContext((yield he[Ne]).data),lt=(yield Vr[Ne]).data;for(let rt in lt){let{width:pt,height:Ht,x:nr,y:fr,sdf:Tr,pixelRatio:Ir,stretchX:ri,stretchY:li,content:Ei,textFitWidth:hn,textFitHeight:Zn}=lt[rt];Se[Ne][rt]={data:null,pixelRatio:Ir,sdf:Tr,stretchX:ri,stretchY:li,content:Ei,textFitWidth:hn,textFitHeight:Zn,spriteData:{width:pt,height:Ht,x:nr,y:fr,context:Ge}}}}return Se})}(or,kr)})}(w,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then(ue=>{if(this._spriteRequest=null,ue)for(let Ve in ue){this._spritesImagesIds[Ve]=[];let tt=this._spritesImagesIds[Ve]?this._spritesImagesIds[Ve].filter(mt=>!(mt in ue)):[];for(let mt of tt)this.imageManager.removeImage(mt),this._changedImages[mt]=!0;for(let mt in ue[Ve]){let Bt=Ve==="default"?mt:`${Ve}:${mt}`;this._spritesImagesIds[Ve].push(Bt),Bt in this.imageManager.images?this.imageManager.updateImage(Bt,ue[Ve][mt],!1):this.imageManager.addImage(Bt,ue[Ve][mt]),q&&(this._changedImages[Bt]=!0)}}}).catch(ue=>{this._spriteRequest=null,ee=ue,this.fire(new a.j(ee))}).finally(()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),q&&(this._changed=!0),this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"})),Q&&Q(ee)})}_unloadSprite(){for(let w of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(w),this._changedImages[w]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}_validateLayer(w){let q=this.sourceCaches[w.source];if(!q)return;let Q=w.sourceLayer;if(!Q)return;let ee=q.getSource();(ee.type==="geojson"||ee.vectorLayerIds&&ee.vectorLayerIds.indexOf(Q)===-1)&&this.fire(new a.j(new Error(`Source layer "${Q}" does not exist on source "${ee.id}" as specified by style layer "${w.id}".`)))}loaded(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(let w in this.sourceCaches)if(!this.sourceCaches[w].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeByIds(w,q=!1){let Q=this._serializedAllLayers();if(!w||w.length===0)return Object.values(q?a.aB(Q):Q);let ee=[];for(let ue of w)if(Q[ue]){let Ve=q?a.aB(Q[ue]):Q[ue];ee.push(Ve)}return ee}_serializedAllLayers(){let w=this._serializedLayers;if(w)return w;w=this._serializedLayers={};let q=Object.keys(this._layers);for(let Q of q){let ee=this._layers[Q];ee.type!=="custom"&&(w[Q]=ee.serialize())}return w}hasTransitions(){if(this.light&&this.light.hasTransition()||this.sky&&this.sky.hasTransition())return!0;for(let w in this.sourceCaches)if(this.sourceCaches[w].hasTransition())return!0;for(let w in this._layers)if(this._layers[w].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(w){if(!this._loaded)return;let q=this._changed;if(q){let ee=Object.keys(this._updatedLayers),ue=Object.keys(this._removedLayers);(ee.length||ue.length)&&this._updateWorkerLayers(ee,ue);for(let Ve in this._updatedSources){let tt=this._updatedSources[Ve];if(tt==="reload")this._reloadSource(Ve);else{if(tt!=="clear")throw new Error(`Invalid action ${tt}`);this._clearSource(Ve)}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(let Ve in this._updatedPaintProps)this._layers[Ve].updateTransitions(w);this.light.updateTransitions(w),this.sky.updateTransitions(w),this._resetUpdates()}let Q={};for(let ee in this.sourceCaches){let ue=this.sourceCaches[ee];Q[ee]=ue.used,ue.used=!1}for(let ee of this._order){let ue=this._layers[ee];ue.recalculate(w,this._availableImages),!ue.isHidden(w.zoom)&&ue.source&&(this.sourceCaches[ue.source].used=!0)}for(let ee in Q){let ue=this.sourceCaches[ee];!!Q[ee]!=!!ue.used&&ue.fire(new a.k("data",{sourceDataType:"visibility",dataType:"source",sourceId:ee}))}this.light.recalculate(w),this.sky.recalculate(w),this.z=w.zoom,q&&this.fire(new a.k("data",{dataType:"style"}))}_updateTilesForChangedImages(){let w=Object.keys(this._changedImages);if(w.length){for(let q in this.sourceCaches)this.sourceCaches[q].reloadTilesForDependencies(["icons","patterns"],w);this._changedImages={}}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(let w in this.sourceCaches)this.sourceCaches[w].reloadTilesForDependencies(["glyphs"],[""]);this._glyphsDidChange=!1}}_updateWorkerLayers(w,q){this.dispatcher.broadcast("UL",{layers:this._serializeByIds(w,!1),removedIds:q})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1}setState(w,q={}){var Q;this._checkLoaded();let ee=this.serialize();if(w=q.transformStyle?q.transformStyle(ee,w):w,((Q=q.validate)===null||Q===void 0||Q)&&Ri(this,a.u(w)))return!1;(w=a.aB(w)).layers=a.az(w.layers);let ue=a.aC(ee,w),Ve=this._getOperationsToPerform(ue);if(Ve.unimplemented.length>0)throw new Error(`Unimplemented: ${Ve.unimplemented.join(", ")}.`);if(Ve.operations.length===0)return!1;for(let tt of Ve.operations)tt();return this.stylesheet=w,this._serializedLayers=null,!0}_getOperationsToPerform(w){let q=[],Q=[];for(let ee of w)switch(ee.command){case"setCenter":case"setZoom":case"setBearing":case"setPitch":continue;case"addLayer":q.push(()=>this.addLayer.apply(this,ee.args));break;case"removeLayer":q.push(()=>this.removeLayer.apply(this,ee.args));break;case"setPaintProperty":q.push(()=>this.setPaintProperty.apply(this,ee.args));break;case"setLayoutProperty":q.push(()=>this.setLayoutProperty.apply(this,ee.args));break;case"setFilter":q.push(()=>this.setFilter.apply(this,ee.args));break;case"addSource":q.push(()=>this.addSource.apply(this,ee.args));break;case"removeSource":q.push(()=>this.removeSource.apply(this,ee.args));break;case"setLayerZoomRange":q.push(()=>this.setLayerZoomRange.apply(this,ee.args));break;case"setLight":q.push(()=>this.setLight.apply(this,ee.args));break;case"setGeoJSONSourceData":q.push(()=>this.setGeoJSONSourceData.apply(this,ee.args));break;case"setGlyphs":q.push(()=>this.setGlyphs.apply(this,ee.args));break;case"setSprite":q.push(()=>this.setSprite.apply(this,ee.args));break;case"setSky":q.push(()=>this.setSky.apply(this,ee.args));break;case"setTerrain":q.push(()=>this.map.setTerrain.apply(this,ee.args));break;case"setTransition":q.push(()=>{});break;default:Q.push(ee.command)}return{operations:q,unimplemented:Q}}addImage(w,q){if(this.getImage(w))return this.fire(new a.j(new Error(`An image named "${w}" already exists.`)));this.imageManager.addImage(w,q),this._afterImageUpdated(w)}updateImage(w,q){this.imageManager.updateImage(w,q)}getImage(w){return this.imageManager.getImage(w)}removeImage(w){if(!this.getImage(w))return this.fire(new a.j(new Error(`An image named "${w}" does not exist.`)));this.imageManager.removeImage(w),this._afterImageUpdated(w)}_afterImageUpdated(w){this._availableImages=this.imageManager.listImages(),this._changedImages[w]=!0,this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(w,q,Q={}){if(this._checkLoaded(),this.sourceCaches[w]!==void 0)throw new Error(`Source "${w}" already exists.`);if(!q.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(q).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(q.type)>=0&&this._validate(a.u.source,`sources.${w}`,q,null,Q))return;this.map&&this.map._collectResourceTiming&&(q.collectResourceTiming=!0);let ee=this.sourceCaches[w]=new it(w,q,this.dispatcher);ee.style=this,ee.setEventedParent(this,()=>({isSourceLoaded:ee.loaded(),source:ee.serialize(),sourceId:w})),ee.onAdd(this.map),this._changed=!0}removeSource(w){if(this._checkLoaded(),this.sourceCaches[w]===void 0)throw new Error("There is no source with this ID");for(let Q in this._layers)if(this._layers[Q].source===w)return this.fire(new a.j(new Error(`Source "${w}" cannot be removed while layer "${Q}" is using it.`)));let q=this.sourceCaches[w];delete this.sourceCaches[w],delete this._updatedSources[w],q.fire(new a.k("data",{sourceDataType:"metadata",dataType:"source",sourceId:w})),q.setEventedParent(null),q.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(w,q){if(this._checkLoaded(),this.sourceCaches[w]===void 0)throw new Error(`There is no source with this ID=${w}`);let Q=this.sourceCaches[w].getSource();if(Q.type!=="geojson")throw new Error(`geojsonSource.type is ${Q.type}, which is !== 'geojson`);Q.setData(q),this._changed=!0}getSource(w){return this.sourceCaches[w]&&this.sourceCaches[w].getSource()}addLayer(w,q,Q={}){this._checkLoaded();let ee=w.id;if(this.getLayer(ee))return void this.fire(new a.j(new Error(`Layer "${ee}" already exists on this map.`)));let ue;if(w.type==="custom"){if(Ri(this,a.aD(w)))return;ue=a.aA(w)}else{if("source"in w&&typeof w.source=="object"&&(this.addSource(ee,w.source),w=a.aB(w),w=a.e(w,{source:ee})),this._validate(a.u.layer,`layers.${ee}`,w,{arrayIndex:-1},Q))return;ue=a.aA(w),this._validateLayer(ue),ue.setEventedParent(this,{layer:{id:ee}})}let Ve=q?this._order.indexOf(q):this._order.length;if(q&&Ve===-1)this.fire(new a.j(new Error(`Cannot add layer "${ee}" before non-existing layer "${q}".`)));else{if(this._order.splice(Ve,0,ee),this._layerOrderChanged=!0,this._layers[ee]=ue,this._removedLayers[ee]&&ue.source&&ue.type!=="custom"){let tt=this._removedLayers[ee];delete this._removedLayers[ee],tt.type!==ue.type?this._updatedSources[ue.source]="clear":(this._updatedSources[ue.source]="reload",this.sourceCaches[ue.source].pause())}this._updateLayer(ue),ue.onAdd&&ue.onAdd(this.map)}}moveLayer(w,q){if(this._checkLoaded(),this._changed=!0,!this._layers[w])return void this.fire(new a.j(new Error(`The layer '${w}' does not exist in the map's style and cannot be moved.`)));if(w===q)return;let Q=this._order.indexOf(w);this._order.splice(Q,1);let ee=q?this._order.indexOf(q):this._order.length;q&&ee===-1?this.fire(new a.j(new Error(`Cannot move layer "${w}" before non-existing layer "${q}".`))):(this._order.splice(ee,0,w),this._layerOrderChanged=!0)}removeLayer(w){this._checkLoaded();let q=this._layers[w];if(!q)return void this.fire(new a.j(new Error(`Cannot remove non-existing layer "${w}".`)));q.setEventedParent(null);let Q=this._order.indexOf(w);this._order.splice(Q,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[w]=q,delete this._layers[w],this._serializedLayers&&delete this._serializedLayers[w],delete this._updatedLayers[w],delete this._updatedPaintProps[w],q.onRemove&&q.onRemove(this.map)}getLayer(w){return this._layers[w]}getLayersOrder(){return[...this._order]}hasLayer(w){return w in this._layers}setLayerZoomRange(w,q,Q){this._checkLoaded();let ee=this.getLayer(w);ee?ee.minzoom===q&&ee.maxzoom===Q||(q!=null&&(ee.minzoom=q),Q!=null&&(ee.maxzoom=Q),this._updateLayer(ee)):this.fire(new a.j(new Error(`Cannot set the zoom range of non-existing layer "${w}".`)))}setFilter(w,q,Q={}){this._checkLoaded();let ee=this.getLayer(w);if(ee){if(!a.aE(ee.filter,q))return q==null?(ee.filter=void 0,void this._updateLayer(ee)):void(this._validate(a.u.filter,`layers.${ee.id}.filter`,q,null,Q)||(ee.filter=a.aB(q),this._updateLayer(ee)))}else this.fire(new a.j(new Error(`Cannot filter non-existing layer "${w}".`)))}getFilter(w){return a.aB(this.getLayer(w).filter)}setLayoutProperty(w,q,Q,ee={}){this._checkLoaded();let ue=this.getLayer(w);ue?a.aE(ue.getLayoutProperty(q),Q)||(ue.setLayoutProperty(q,Q,ee),this._updateLayer(ue)):this.fire(new a.j(new Error(`Cannot style non-existing layer "${w}".`)))}getLayoutProperty(w,q){let Q=this.getLayer(w);if(Q)return Q.getLayoutProperty(q);this.fire(new a.j(new Error(`Cannot get style of non-existing layer "${w}".`)))}setPaintProperty(w,q,Q,ee={}){this._checkLoaded();let ue=this.getLayer(w);ue?a.aE(ue.getPaintProperty(q),Q)||(ue.setPaintProperty(q,Q,ee)&&this._updateLayer(ue),this._changed=!0,this._updatedPaintProps[w]=!0,this._serializedLayers=null):this.fire(new a.j(new Error(`Cannot style non-existing layer "${w}".`)))}getPaintProperty(w,q){return this.getLayer(w).getPaintProperty(q)}setFeatureState(w,q){this._checkLoaded();let Q=w.source,ee=w.sourceLayer,ue=this.sourceCaches[Q];if(ue===void 0)return void this.fire(new a.j(new Error(`The source '${Q}' does not exist in the map's style.`)));let Ve=ue.getSource().type;Ve==="geojson"&&ee?this.fire(new a.j(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):Ve!=="vector"||ee?(w.id===void 0&&this.fire(new a.j(new Error("The feature id parameter must be provided."))),ue.setFeatureState(ee,w.id,q)):this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}removeFeatureState(w,q){this._checkLoaded();let Q=w.source,ee=this.sourceCaches[Q];if(ee===void 0)return void this.fire(new a.j(new Error(`The source '${Q}' does not exist in the map's style.`)));let ue=ee.getSource().type,Ve=ue==="vector"?w.sourceLayer:void 0;ue!=="vector"||Ve?q&&typeof w.id!="string"&&typeof w.id!="number"?this.fire(new a.j(new Error("A feature id is required to remove its specific state property."))):ee.removeFeatureState(Ve,w.id,q):this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}getFeatureState(w){this._checkLoaded();let q=w.source,Q=w.sourceLayer,ee=this.sourceCaches[q];if(ee!==void 0)return ee.getSource().type!=="vector"||Q?(w.id===void 0&&this.fire(new a.j(new Error("The feature id parameter must be provided."))),ee.getFeatureState(Q,w.id)):void this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new a.j(new Error(`The source '${q}' does not exist in the map's style.`)))}getTransition(){return a.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;let w=a.aF(this.sourceCaches,ue=>ue.serialize()),q=this._serializeByIds(this._order,!0),Q=this.map.getTerrain()||void 0,ee=this.stylesheet;return a.aG({version:ee.version,name:ee.name,metadata:ee.metadata,light:ee.light,sky:ee.sky,center:ee.center,zoom:ee.zoom,bearing:ee.bearing,pitch:ee.pitch,sprite:ee.sprite,glyphs:ee.glyphs,transition:ee.transition,sources:w,layers:q,terrain:Q},ue=>ue!==void 0)}_updateLayer(w){this._updatedLayers[w.id]=!0,w.source&&!this._updatedSources[w.source]&&this.sourceCaches[w.source].getSource().type!=="raster"&&(this._updatedSources[w.source]="reload",this.sourceCaches[w.source].pause()),this._serializedLayers=null,this._changed=!0}_flattenAndSortRenderedFeatures(w){let q=Ve=>this._layers[Ve].type==="fill-extrusion",Q={},ee=[];for(let Ve=this._order.length-1;Ve>=0;Ve--){let tt=this._order[Ve];if(q(tt)){Q[tt]=Ve;for(let mt of w){let Bt=mt[tt];if(Bt)for(let ir of Bt)ee.push(ir)}}}ee.sort((Ve,tt)=>tt.intersectionZ-Ve.intersectionZ);let ue=[];for(let Ve=this._order.length-1;Ve>=0;Ve--){let tt=this._order[Ve];if(q(tt))for(let mt=ee.length-1;mt>=0;mt--){let Bt=ee[mt].feature;if(Q[Bt.layer.id]{let Tr=Ge.featureSortOrder;if(Tr){let Ir=Tr.indexOf(nr.featureIndex);return Tr.indexOf(fr.featureIndex)-Ir}return fr.featureIndex-nr.featureIndex});for(let nr of Ht)pt.push(nr)}}for(let Ge in he)he[Ge].forEach(lt=>{let rt=lt.feature,pt=Bt[tt[Ge].source].getFeatureState(rt.layer["source-layer"],rt.id);rt.source=rt.layer.source,rt.layer["source-layer"]&&(rt.sourceLayer=rt.layer["source-layer"]),rt.state=pt});return he}(this._layers,Ve,this.sourceCaches,w,q,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(ue)}querySourceFeatures(w,q){q&&q.filter&&this._validate(a.u.filter,"querySourceFeatures.filter",q.filter,null,q);let Q=this.sourceCaches[w];return Q?function(ee,ue){let Ve=ee.getRenderableIds().map(Bt=>ee.getTileByID(Bt)),tt=[],mt={};for(let Bt=0;Btkr.getTileByID(Vr)).sort((Vr,he)=>he.tileID.overscaledZ-Vr.tileID.overscaledZ||(Vr.tileID.isLessThan(he.tileID)?-1:1))}let or=this.crossTileSymbolIndex.addLayer(ir,mt[ir.source],w.center.lng);Ve=Ve||or}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((ue=ue||this._layerOrderChanged||Q===0)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(l.now(),w.zoom))&&(this.pauseablePlacement=new tn(w,this.map.terrain,this._order,ue,q,Q,ee,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,mt),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(l.now()),tt=!0),Ve&&this.pauseablePlacement.placement.setStale()),tt||Ve)for(let Bt of this._order){let ir=this._layers[Bt];ir.type==="symbol"&&this.placement.updateLayerOpacities(ir,mt[ir.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(l.now())}_releaseSymbolFadeTiles(){for(let w in this.sourceCaches)this.sourceCaches[w].releaseSymbolFadeTiles()}getImages(w,q){return a._(this,void 0,void 0,function*(){let Q=yield this.imageManager.getImages(q.icons);this._updateTilesForChangedImages();let ee=this.sourceCaches[q.source];return ee&&ee.setDependencies(q.tileID.key,q.type,q.icons),Q})}getGlyphs(w,q){return a._(this,void 0,void 0,function*(){let Q=yield this.glyphManager.getGlyphs(q.stacks),ee=this.sourceCaches[q.source];return ee&&ee.setDependencies(q.tileID.key,q.type,[""]),Q})}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(w,q={}){this._checkLoaded(),w&&this._validate(a.u.glyphs,"glyphs",w,null,q)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=w,this.glyphManager.entries={},this.glyphManager.setURL(w))}addSprite(w,q,Q={},ee){this._checkLoaded();let ue=[{id:w,url:q}],Ve=[...C(this.stylesheet.sprite),...ue];this._validate(a.u.sprite,"sprite",Ve,null,Q)||(this.stylesheet.sprite=Ve,this._loadSprite(ue,!0,ee))}removeSprite(w){this._checkLoaded();let q=C(this.stylesheet.sprite);if(q.find(Q=>Q.id===w)){if(this._spritesImagesIds[w])for(let Q of this._spritesImagesIds[w])this.imageManager.removeImage(Q),this._changedImages[Q]=!0;q.splice(q.findIndex(Q=>Q.id===w),1),this.stylesheet.sprite=q.length>0?q:void 0,delete this._spritesImagesIds[w],this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}else this.fire(new a.j(new Error(`Sprite "${w}" doesn't exists on this map.`)))}getSprite(){return C(this.stylesheet.sprite)}setSprite(w,q={},Q){this._checkLoaded(),w&&this._validate(a.u.sprite,"sprite",w,null,q)||(this.stylesheet.sprite=w,w?this._loadSprite(w,!0,Q):(this._unloadSprite(),Q&&Q(null)))}}var bi=a.Y([{name:"a_pos",type:"Int16",components:2}]);let Xr={prelude:ct(`#ifdef GL_ES precision mediump float; #else #if !defined(lowp) @@ -3800,7 +3800,7 @@ uniform ${ir} ${or} u_${kr}; #endif `}),staticAttributes:Q,staticUniforms:Ve}}class tr{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(w,q,Q,ee,ue,Ve,tt,mt,Bt){this.context=w;let ir=this.boundPaintVertexBuffers.length!==ee.length;for(let or=0;!ir&&or({u_matrix:le,u_texture:0,u_ele_delta:w,u_fog_matrix:q,u_fog_color:Q?Q.properties.get("fog-color"):a.aM.white,u_fog_ground_blend:Q?Q.properties.get("fog-ground-blend"):1,u_fog_ground_blend_opacity:Q?Q.calculateFogBlendOpacity(ee):0,u_horizon_color:Q?Q.properties.get("horizon-color"):a.aM.white,u_horizon_fog_blend:Q?Q.properties.get("horizon-fog-blend"):1});function gr(le){let w=[];for(let q=0;q({u_depth:new a.aH(nr,fr.u_depth),u_terrain:new a.aH(nr,fr.u_terrain),u_terrain_dim:new a.aI(nr,fr.u_terrain_dim),u_terrain_matrix:new a.aJ(nr,fr.u_terrain_matrix),u_terrain_unpack:new a.aK(nr,fr.u_terrain_unpack),u_terrain_exaggeration:new a.aI(nr,fr.u_terrain_exaggeration)}))(w,Ht),this.binderUniforms=Q?Q.getUniforms(w,Ht):[]}draw(w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt){let rt=w.gl;if(this.failedToCreate)return;if(w.program.set(this.program),w.setDepthMode(Q),w.setStencilMode(ee),w.setColorMode(ue),w.setCullFace(Ve),mt){w.activeTexture.set(rt.TEXTURE2),rt.bindTexture(rt.TEXTURE_2D,mt.depthTexture),w.activeTexture.set(rt.TEXTURE3),rt.bindTexture(rt.TEXTURE_2D,mt.texture);for(let Ht in this.terrainUniforms)this.terrainUniforms[Ht].set(mt[Ht])}for(let Ht in this.fixedUniforms)this.fixedUniforms[Ht].set(tt[Ht]);Se&&Se.setUniforms(w,this.binderUniforms,Vr,{zoom:he});let pt=0;switch(q){case rt.LINES:pt=2;break;case rt.TRIANGLES:pt=3;break;case rt.LINE_STRIP:pt=1}for(let Ht of kr.get()){let nr=Ht.vaos||(Ht.vaos={});(nr[Bt]||(nr[Bt]=new tr)).bind(w,this,ir,Se?Se.getPaintVertexBuffers():[],or,Ht.vertexOffset,Ne,Ge,lt),rt.drawElements(q,Ht.primitiveLength*pt,rt.UNSIGNED_SHORT,Ht.primitiveOffset*pt*2)}}}function Ti(le,w,q){let Q=1/Di(q,1,w.transform.tileZoom),ee=Math.pow(2,q.tileID.overscaledZ),ue=q.tileSize*Math.pow(2,w.transform.tileZoom)/ee,Ve=ue*(q.tileID.canonical.x+q.tileID.wrap*ee),tt=ue*q.tileID.canonical.y;return{u_image:0,u_texsize:q.imageAtlasTexture.size,u_scale:[Q,le.fromScale,le.toScale],u_fade:le.t,u_pixel_coord_upper:[Ve>>16,tt>>16],u_pixel_coord_lower:[65535&Ve,65535&tt]}}let en=(le,w,q,Q)=>{let ee=w.style.light,ue=ee.properties.get("position"),Ve=[ue.x,ue.y,ue.z],tt=function(){var Bt=new a.A(9);return a.A!=Float32Array&&(Bt[1]=0,Bt[2]=0,Bt[3]=0,Bt[5]=0,Bt[6]=0,Bt[7]=0),Bt[0]=1,Bt[4]=1,Bt[8]=1,Bt}();ee.properties.get("anchor")==="viewport"&&function(Bt,ir){var or=Math.sin(ir),kr=Math.cos(ir);Bt[0]=kr,Bt[1]=or,Bt[2]=0,Bt[3]=-or,Bt[4]=kr,Bt[5]=0,Bt[6]=0,Bt[7]=0,Bt[8]=1}(tt,-w.transform.angle),function(Bt,ir,or){var kr=ir[0],Vr=ir[1],he=ir[2];Bt[0]=kr*or[0]+Vr*or[3]+he*or[6],Bt[1]=kr*or[1]+Vr*or[4]+he*or[7],Bt[2]=kr*or[2]+Vr*or[5]+he*or[8]}(Ve,Ve,tt);let mt=ee.properties.get("color");return{u_matrix:le,u_lightpos:Ve,u_lightintensity:ee.properties.get("intensity"),u_lightcolor:[mt.r,mt.g,mt.b],u_vertical_gradient:+q,u_opacity:Q}},ii=(le,w,q,Q,ee,ue,Ve)=>a.e(en(le,w,q,Q),Ti(ue,w,Ve),{u_height_factor:-Math.pow(2,ee.overscaledZ)/Ve.tileSize/8}),Xi=le=>({u_matrix:le}),aa=(le,w,q,Q)=>a.e(Xi(le),Ti(q,w,Q)),Mn=(le,w)=>({u_matrix:le,u_world:w}),Un=(le,w,q,Q,ee)=>a.e(aa(le,w,q,Q),{u_world:ee}),Ga=(le,w,q,Q)=>{let ee=le.transform,ue,Ve;if(Q.paint.get("circle-pitch-alignment")==="map"){let tt=Di(q,1,ee.zoom);ue=!0,Ve=[tt,tt]}else ue=!1,Ve=ee.pixelsToGLUnits;return{u_camera_to_center_distance:ee.cameraToCenterDistance,u_scale_with_map:+(Q.paint.get("circle-pitch-scale")==="map"),u_matrix:le.translatePosMatrix(w.posMatrix,q,Q.paint.get("circle-translate"),Q.paint.get("circle-translate-anchor")),u_pitch_with_map:+ue,u_device_pixel_ratio:le.pixelRatio,u_extrude_scale:Ve}},ma=(le,w,q)=>({u_matrix:le,u_inv_matrix:w,u_camera_to_center_distance:q.cameraToCenterDistance,u_viewport_size:[q.width,q.height]}),oa=(le,w,q=1)=>({u_matrix:le,u_color:w,u_overlay:0,u_overlay_scale:q}),ka=le=>({u_matrix:le}),so=(le,w,q,Q)=>({u_matrix:le,u_extrude_scale:Di(w,1,q),u_intensity:Q}),Kr=(le,w,q,Q)=>{let ee=a.H();a.aP(ee,0,le.width,le.height,0,0,1);let ue=le.context.gl;return{u_matrix:ee,u_world:[ue.drawingBufferWidth,ue.drawingBufferHeight],u_image:q,u_color_ramp:Q,u_opacity:w.paint.get("heatmap-opacity")}};function Ia(le,w){let q=Math.pow(2,w.canonical.z),Q=w.canonical.y;return[new a.Z(0,Q/q).toLngLat().lat,new a.Z(0,(Q+1)/q).toLngLat().lat]}let Yo=(le,w,q,Q)=>{let ee=le.transform;return{u_matrix:uo(le,w,q,Q),u_ratio:1/Di(w,1,ee.zoom),u_device_pixel_ratio:le.pixelRatio,u_units_to_pixels:[1/ee.pixelsToGLUnits[0],1/ee.pixelsToGLUnits[1]]}},fa=(le,w,q,Q,ee)=>a.e(Yo(le,w,q,ee),{u_image:0,u_image_height:Q}),kn=(le,w,q,Q,ee)=>{let ue=le.transform,Ve=ys(w,ue);return{u_matrix:uo(le,w,q,ee),u_texsize:w.imageAtlasTexture.size,u_ratio:1/Di(w,1,ue.zoom),u_device_pixel_ratio:le.pixelRatio,u_image:0,u_scale:[Ve,Q.fromScale,Q.toScale],u_fade:Q.t,u_units_to_pixels:[1/ue.pixelsToGLUnits[0],1/ue.pixelsToGLUnits[1]]}},Aa=(le,w,q,Q,ee,ue)=>{let Ve=le.lineAtlas,tt=ys(w,le.transform),mt=q.layout.get("line-cap")==="round",Bt=Ve.getDash(Q.from,mt),ir=Ve.getDash(Q.to,mt),or=Bt.width*ee.fromScale,kr=ir.width*ee.toScale;return a.e(Yo(le,w,q,ue),{u_patternscale_a:[tt/or,-Bt.height/2],u_patternscale_b:[tt/kr,-ir.height/2],u_sdfgamma:Ve.width/(256*Math.min(or,kr)*le.pixelRatio)/2,u_image:0,u_tex_y_a:Bt.y,u_tex_y_b:ir.y,u_mix:ee.t})};function ys(le,w){return 1/Di(le,1,w.tileZoom)}function uo(le,w,q,Q){return le.translatePosMatrix(Q?Q.posMatrix:w.tileID.posMatrix,w,q.paint.get("line-translate"),q.paint.get("line-translate-anchor"))}let ls=(le,w,q,Q,ee)=>{return{u_matrix:le,u_tl_parent:w,u_scale_parent:q,u_buffer_scale:1,u_fade_t:Q.mix,u_opacity:Q.opacity*ee.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:ee.paint.get("raster-brightness-min"),u_brightness_high:ee.paint.get("raster-brightness-max"),u_saturation_factor:(Ve=ee.paint.get("raster-saturation"),Ve>0?1-1/(1.001-Ve):-Ve),u_contrast_factor:(ue=ee.paint.get("raster-contrast"),ue>0?1/(1-ue):1+ue),u_spin_weights:$a(ee.paint.get("raster-hue-rotate"))};var ue,Ve};function $a(le){le*=Math.PI/180;let w=Math.sin(le),q=Math.cos(le);return[(2*q+1)/3,(-Math.sqrt(3)*w-q+1)/3,(Math.sqrt(3)*w-q+1)/3]}let fo=(le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr)=>{let he=Ve.transform;return{u_is_size_zoom_constant:+(le==="constant"||le==="source"),u_is_size_feature_constant:+(le==="constant"||le==="camera"),u_size_t:w?w.uSizeT:0,u_size:w?w.uSize:0,u_camera_to_center_distance:he.cameraToCenterDistance,u_pitch:he.pitch/360*2*Math.PI,u_rotate_symbol:+q,u_aspect_ratio:he.width/he.height,u_fade_change:Ve.options.fadeDuration?Ve.symbolFadeChange:1,u_matrix:tt,u_label_plane_matrix:mt,u_coord_matrix:Bt,u_is_text:+or,u_pitch_with_map:+Q,u_is_along_line:ee,u_is_variable_anchor:ue,u_texsize:kr,u_texture:0,u_translation:ir,u_pitched_scale:Vr}},mn=(le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he)=>{let Se=Ve.transform;return a.e(fo(le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,he),{u_gamma_scale:Q?Math.cos(Se._pitch)*Se.cameraToCenterDistance:1,u_device_pixel_ratio:Ve.pixelRatio,u_is_halo:+Vr})},ra=(le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr)=>a.e(mn(le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,!0,or,!0,Vr),{u_texsize_icon:kr,u_texture_icon:1}),wa=(le,w,q)=>({u_matrix:le,u_opacity:w,u_color:q}),ws=(le,w,q,Q,ee,ue)=>a.e(function(Ve,tt,mt,Bt){let ir=mt.imageManager.getPattern(Ve.from.toString()),or=mt.imageManager.getPattern(Ve.to.toString()),{width:kr,height:Vr}=mt.imageManager.getPixelSize(),he=Math.pow(2,Bt.tileID.overscaledZ),Se=Bt.tileSize*Math.pow(2,mt.transform.tileZoom)/he,Ne=Se*(Bt.tileID.canonical.x+Bt.tileID.wrap*he),Ge=Se*Bt.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:ir.tl,u_pattern_br_a:ir.br,u_pattern_tl_b:or.tl,u_pattern_br_b:or.br,u_texsize:[kr,Vr],u_mix:tt.t,u_pattern_size_a:ir.displaySize,u_pattern_size_b:or.displaySize,u_scale_a:tt.fromScale,u_scale_b:tt.toScale,u_tile_units_to_pixels:1/Di(Bt,1,mt.transform.tileZoom),u_pixel_coord_upper:[Ne>>16,Ge>>16],u_pixel_coord_lower:[65535&Ne,65535&Ge]}}(Q,ue,q,ee),{u_matrix:le,u_opacity:w}),Co={fillExtrusion:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_lightpos:new a.aN(le,w.u_lightpos),u_lightintensity:new a.aI(le,w.u_lightintensity),u_lightcolor:new a.aN(le,w.u_lightcolor),u_vertical_gradient:new a.aI(le,w.u_vertical_gradient),u_opacity:new a.aI(le,w.u_opacity)}),fillExtrusionPattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_lightpos:new a.aN(le,w.u_lightpos),u_lightintensity:new a.aI(le,w.u_lightintensity),u_lightcolor:new a.aN(le,w.u_lightcolor),u_vertical_gradient:new a.aI(le,w.u_vertical_gradient),u_height_factor:new a.aI(le,w.u_height_factor),u_image:new a.aH(le,w.u_image),u_texsize:new a.aO(le,w.u_texsize),u_pixel_coord_upper:new a.aO(le,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(le,w.u_pixel_coord_lower),u_scale:new a.aN(le,w.u_scale),u_fade:new a.aI(le,w.u_fade),u_opacity:new a.aI(le,w.u_opacity)}),fill:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix)}),fillPattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_image:new a.aH(le,w.u_image),u_texsize:new a.aO(le,w.u_texsize),u_pixel_coord_upper:new a.aO(le,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(le,w.u_pixel_coord_lower),u_scale:new a.aN(le,w.u_scale),u_fade:new a.aI(le,w.u_fade)}),fillOutline:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_world:new a.aO(le,w.u_world)}),fillOutlinePattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_world:new a.aO(le,w.u_world),u_image:new a.aH(le,w.u_image),u_texsize:new a.aO(le,w.u_texsize),u_pixel_coord_upper:new a.aO(le,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(le,w.u_pixel_coord_lower),u_scale:new a.aN(le,w.u_scale),u_fade:new a.aI(le,w.u_fade)}),circle:(le,w)=>({u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_scale_with_map:new a.aH(le,w.u_scale_with_map),u_pitch_with_map:new a.aH(le,w.u_pitch_with_map),u_extrude_scale:new a.aO(le,w.u_extrude_scale),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_matrix:new a.aJ(le,w.u_matrix)}),collisionBox:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_pixel_extrude_scale:new a.aO(le,w.u_pixel_extrude_scale)}),collisionCircle:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_inv_matrix:new a.aJ(le,w.u_inv_matrix),u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_viewport_size:new a.aO(le,w.u_viewport_size)}),debug:(le,w)=>({u_color:new a.aL(le,w.u_color),u_matrix:new a.aJ(le,w.u_matrix),u_overlay:new a.aH(le,w.u_overlay),u_overlay_scale:new a.aI(le,w.u_overlay_scale)}),clippingMask:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix)}),heatmap:(le,w)=>({u_extrude_scale:new a.aI(le,w.u_extrude_scale),u_intensity:new a.aI(le,w.u_intensity),u_matrix:new a.aJ(le,w.u_matrix)}),heatmapTexture:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_world:new a.aO(le,w.u_world),u_image:new a.aH(le,w.u_image),u_color_ramp:new a.aH(le,w.u_color_ramp),u_opacity:new a.aI(le,w.u_opacity)}),hillshade:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_image:new a.aH(le,w.u_image),u_latrange:new a.aO(le,w.u_latrange),u_light:new a.aO(le,w.u_light),u_shadow:new a.aL(le,w.u_shadow),u_highlight:new a.aL(le,w.u_highlight),u_accent:new a.aL(le,w.u_accent)}),hillshadePrepare:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_image:new a.aH(le,w.u_image),u_dimension:new a.aO(le,w.u_dimension),u_zoom:new a.aI(le,w.u_zoom),u_unpack:new a.aK(le,w.u_unpack)}),line:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_ratio:new a.aI(le,w.u_ratio),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(le,w.u_units_to_pixels)}),lineGradient:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_ratio:new a.aI(le,w.u_ratio),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(le,w.u_units_to_pixels),u_image:new a.aH(le,w.u_image),u_image_height:new a.aI(le,w.u_image_height)}),linePattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_texsize:new a.aO(le,w.u_texsize),u_ratio:new a.aI(le,w.u_ratio),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_image:new a.aH(le,w.u_image),u_units_to_pixels:new a.aO(le,w.u_units_to_pixels),u_scale:new a.aN(le,w.u_scale),u_fade:new a.aI(le,w.u_fade)}),lineSDF:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_ratio:new a.aI(le,w.u_ratio),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(le,w.u_units_to_pixels),u_patternscale_a:new a.aO(le,w.u_patternscale_a),u_patternscale_b:new a.aO(le,w.u_patternscale_b),u_sdfgamma:new a.aI(le,w.u_sdfgamma),u_image:new a.aH(le,w.u_image),u_tex_y_a:new a.aI(le,w.u_tex_y_a),u_tex_y_b:new a.aI(le,w.u_tex_y_b),u_mix:new a.aI(le,w.u_mix)}),raster:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_tl_parent:new a.aO(le,w.u_tl_parent),u_scale_parent:new a.aI(le,w.u_scale_parent),u_buffer_scale:new a.aI(le,w.u_buffer_scale),u_fade_t:new a.aI(le,w.u_fade_t),u_opacity:new a.aI(le,w.u_opacity),u_image0:new a.aH(le,w.u_image0),u_image1:new a.aH(le,w.u_image1),u_brightness_low:new a.aI(le,w.u_brightness_low),u_brightness_high:new a.aI(le,w.u_brightness_high),u_saturation_factor:new a.aI(le,w.u_saturation_factor),u_contrast_factor:new a.aI(le,w.u_contrast_factor),u_spin_weights:new a.aN(le,w.u_spin_weights)}),symbolIcon:(le,w)=>({u_is_size_zoom_constant:new a.aH(le,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(le,w.u_is_size_feature_constant),u_size_t:new a.aI(le,w.u_size_t),u_size:new a.aI(le,w.u_size),u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_pitch:new a.aI(le,w.u_pitch),u_rotate_symbol:new a.aH(le,w.u_rotate_symbol),u_aspect_ratio:new a.aI(le,w.u_aspect_ratio),u_fade_change:new a.aI(le,w.u_fade_change),u_matrix:new a.aJ(le,w.u_matrix),u_label_plane_matrix:new a.aJ(le,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(le,w.u_coord_matrix),u_is_text:new a.aH(le,w.u_is_text),u_pitch_with_map:new a.aH(le,w.u_pitch_with_map),u_is_along_line:new a.aH(le,w.u_is_along_line),u_is_variable_anchor:new a.aH(le,w.u_is_variable_anchor),u_texsize:new a.aO(le,w.u_texsize),u_texture:new a.aH(le,w.u_texture),u_translation:new a.aO(le,w.u_translation),u_pitched_scale:new a.aI(le,w.u_pitched_scale)}),symbolSDF:(le,w)=>({u_is_size_zoom_constant:new a.aH(le,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(le,w.u_is_size_feature_constant),u_size_t:new a.aI(le,w.u_size_t),u_size:new a.aI(le,w.u_size),u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_pitch:new a.aI(le,w.u_pitch),u_rotate_symbol:new a.aH(le,w.u_rotate_symbol),u_aspect_ratio:new a.aI(le,w.u_aspect_ratio),u_fade_change:new a.aI(le,w.u_fade_change),u_matrix:new a.aJ(le,w.u_matrix),u_label_plane_matrix:new a.aJ(le,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(le,w.u_coord_matrix),u_is_text:new a.aH(le,w.u_is_text),u_pitch_with_map:new a.aH(le,w.u_pitch_with_map),u_is_along_line:new a.aH(le,w.u_is_along_line),u_is_variable_anchor:new a.aH(le,w.u_is_variable_anchor),u_texsize:new a.aO(le,w.u_texsize),u_texture:new a.aH(le,w.u_texture),u_gamma_scale:new a.aI(le,w.u_gamma_scale),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_is_halo:new a.aH(le,w.u_is_halo),u_translation:new a.aO(le,w.u_translation),u_pitched_scale:new a.aI(le,w.u_pitched_scale)}),symbolTextAndIcon:(le,w)=>({u_is_size_zoom_constant:new a.aH(le,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(le,w.u_is_size_feature_constant),u_size_t:new a.aI(le,w.u_size_t),u_size:new a.aI(le,w.u_size),u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_pitch:new a.aI(le,w.u_pitch),u_rotate_symbol:new a.aH(le,w.u_rotate_symbol),u_aspect_ratio:new a.aI(le,w.u_aspect_ratio),u_fade_change:new a.aI(le,w.u_fade_change),u_matrix:new a.aJ(le,w.u_matrix),u_label_plane_matrix:new a.aJ(le,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(le,w.u_coord_matrix),u_is_text:new a.aH(le,w.u_is_text),u_pitch_with_map:new a.aH(le,w.u_pitch_with_map),u_is_along_line:new a.aH(le,w.u_is_along_line),u_is_variable_anchor:new a.aH(le,w.u_is_variable_anchor),u_texsize:new a.aO(le,w.u_texsize),u_texsize_icon:new a.aO(le,w.u_texsize_icon),u_texture:new a.aH(le,w.u_texture),u_texture_icon:new a.aH(le,w.u_texture_icon),u_gamma_scale:new a.aI(le,w.u_gamma_scale),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_is_halo:new a.aH(le,w.u_is_halo),u_translation:new a.aO(le,w.u_translation),u_pitched_scale:new a.aI(le,w.u_pitched_scale)}),background:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_opacity:new a.aI(le,w.u_opacity),u_color:new a.aL(le,w.u_color)}),backgroundPattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_opacity:new a.aI(le,w.u_opacity),u_image:new a.aH(le,w.u_image),u_pattern_tl_a:new a.aO(le,w.u_pattern_tl_a),u_pattern_br_a:new a.aO(le,w.u_pattern_br_a),u_pattern_tl_b:new a.aO(le,w.u_pattern_tl_b),u_pattern_br_b:new a.aO(le,w.u_pattern_br_b),u_texsize:new a.aO(le,w.u_texsize),u_mix:new a.aI(le,w.u_mix),u_pattern_size_a:new a.aO(le,w.u_pattern_size_a),u_pattern_size_b:new a.aO(le,w.u_pattern_size_b),u_scale_a:new a.aI(le,w.u_scale_a),u_scale_b:new a.aI(le,w.u_scale_b),u_pixel_coord_upper:new a.aO(le,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(le,w.u_pixel_coord_lower),u_tile_units_to_pixels:new a.aI(le,w.u_tile_units_to_pixels)}),terrain:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_texture:new a.aH(le,w.u_texture),u_ele_delta:new a.aI(le,w.u_ele_delta),u_fog_matrix:new a.aJ(le,w.u_fog_matrix),u_fog_color:new a.aL(le,w.u_fog_color),u_fog_ground_blend:new a.aI(le,w.u_fog_ground_blend),u_fog_ground_blend_opacity:new a.aI(le,w.u_fog_ground_blend_opacity),u_horizon_color:new a.aL(le,w.u_horizon_color),u_horizon_fog_blend:new a.aI(le,w.u_horizon_fog_blend)}),terrainDepth:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_ele_delta:new a.aI(le,w.u_ele_delta)}),terrainCoords:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_texture:new a.aH(le,w.u_texture),u_terrain_coords_id:new a.aI(le,w.u_terrain_coords_id),u_ele_delta:new a.aI(le,w.u_ele_delta)}),sky:(le,w)=>({u_sky_color:new a.aL(le,w.u_sky_color),u_horizon_color:new a.aL(le,w.u_horizon_color),u_horizon:new a.aI(le,w.u_horizon),u_sky_horizon_blend:new a.aI(le,w.u_sky_horizon_blend)})};class Po{constructor(w,q,Q){this.context=w;let ee=w.gl;this.buffer=ee.createBuffer(),this.dynamicDraw=!!Q,this.context.unbindVAO(),w.bindElementBuffer.set(this.buffer),ee.bufferData(ee.ELEMENT_ARRAY_BUFFER,q.arrayBuffer,this.dynamicDraw?ee.DYNAMIC_DRAW:ee.STATIC_DRAW),this.dynamicDraw||delete q.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(w){let q=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),q.bufferSubData(q.ELEMENT_ARRAY_BUFFER,0,w.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let Wi={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class gn{constructor(w,q,Q,ee){this.length=q.length,this.attributes=Q,this.itemSize=q.bytesPerElement,this.dynamicDraw=ee,this.context=w;let ue=w.gl;this.buffer=ue.createBuffer(),w.bindVertexBuffer.set(this.buffer),ue.bufferData(ue.ARRAY_BUFFER,q.arrayBuffer,this.dynamicDraw?ue.DYNAMIC_DRAW:ue.STATIC_DRAW),this.dynamicDraw||delete q.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(w){if(w.length!==this.length)throw new Error(`Length of new data is ${w.length}, which doesn't match current length of ${this.length}`);let q=this.context.gl;this.bind(),q.bufferSubData(q.ARRAY_BUFFER,0,w.arrayBuffer)}enableAttributes(w,q){for(let Q=0;Q0){let nr=a.H();a.aQ(nr,rt.placementInvProjMatrix,le.transform.glCoordMatrix),a.aQ(nr,nr,rt.placementViewportMatrix),mt.push({circleArray:Ht,circleOffset:ir,transform:lt.posMatrix,invTransform:nr,coord:lt}),Bt+=Ht.length/4,ir=Bt}pt&&tt.draw(ue,Ve.LINES,sa.disabled,Na.disabled,le.colorModeForRenderPass(),rn.disabled,{u_matrix:lt.posMatrix,u_pixel_extrude_scale:[1/(or=le.transform).width,1/or.height]},le.style.map.terrain&&le.style.map.terrain.getTerrainData(lt),q.id,pt.layoutVertexBuffer,pt.indexBuffer,pt.segments,null,le.transform.zoom,null,null,pt.collisionVertexBuffer)}var or;if(!ee||!mt.length)return;let kr=le.useProgram("collisionCircle"),Vr=new a.aR;Vr.resize(4*Bt),Vr._trim();let he=0;for(let Ge of mt)for(let lt=0;lt=0&&(Ge[rt.associatedIconIndex]={shiftedAnchor:Fo,angle:vl})}else Br(rt.numGlyphs,Se)}if(Bt){Ne.clear();let lt=le.icon.placedSymbolArray;for(let rt=0;rtle.style.map.terrain.getElevation(li,_t,hr):null,jt=q.layout.get("text-rotation-alignment")==="map";Ie(hn,li.posMatrix,le,ee,$u,Wu,Ge,Bt,jt,Se,li.toUnwrapped(),he.width,he.height,ju,st)}let Qu=li.posMatrix,ef=ee&&Tr||_f,Z=lt||ef?yo:$u,se=Ku,Pe=Ua&&q.paint.get(ee?"text-halo-width":"icon-halo-width").constantOr(1)!==0,Xe;Xe=Ua?hn.iconsInText?ra(Fo.kind,ml,rt,Ge,lt,ef,le,Qu,Z,se,ju,Sl,Pu,ri):mn(Fo.kind,ml,rt,Ge,lt,ef,le,Qu,Z,se,ju,ee,Sl,!0,ri):fo(Fo.kind,ml,rt,Ge,lt,ef,le,Qu,Z,se,ju,ee,Sl,ri);let Qe={program:Us,buffers:Zn,uniformValues:Xe,atlasTexture:Yl,atlasTextureIcon:iu,atlasInterpolation:Ol,atlasInterpolationIcon:ou,isSDF:Ua,hasHalo:Pe};if(Ht&&hn.canOverlap){nr=!0;let st=Zn.segments.get();for(let jt of st)Ir.push({segments:new a.a0([jt]),sortKey:jt.sortKey,state:Qe,terrainData:au})}else Ir.push({segments:Zn.segments,sortKey:0,state:Qe,terrainData:au})}nr&&Ir.sort((li,Ei)=>li.sortKey-Ei.sortKey);for(let li of Ir){let Ei=li.state;if(kr.activeTexture.set(Vr.TEXTURE0),Ei.atlasTexture.bind(Ei.atlasInterpolation,Vr.CLAMP_TO_EDGE),Ei.atlasTextureIcon&&(kr.activeTexture.set(Vr.TEXTURE1),Ei.atlasTextureIcon&&Ei.atlasTextureIcon.bind(Ei.atlasInterpolationIcon,Vr.CLAMP_TO_EDGE)),Ei.isSDF){let hn=Ei.uniformValues;Ei.hasHalo&&(hn.u_is_halo=1,Ca(Ei.buffers,li.segments,q,le,Ei.program,fr,ir,or,hn,li.terrainData)),hn.u_is_halo=0}Ca(Ei.buffers,li.segments,q,le,Ei.program,fr,ir,or,Ei.uniformValues,li.terrainData)}}function Ca(le,w,q,Q,ee,ue,Ve,tt,mt,Bt){let ir=Q.context;ee.draw(ir,ir.gl.TRIANGLES,ue,Ve,tt,rn.disabled,mt,Bt,q.id,le.layoutVertexBuffer,le.indexBuffer,w,q.paint,Q.transform.zoom,le.programConfigurations.get(q.id),le.dynamicLayoutVertexBuffer,le.opacityVertexBuffer)}function Es(le,w,q,Q){let ee=le.context,ue=ee.gl,Ve=Na.disabled,tt=new lo([ue.ONE,ue.ONE],a.aM.transparent,[!0,!0,!0,!0]),mt=w.getBucket(q);if(!mt)return;let Bt=Q.key,ir=q.heatmapFbos.get(Bt);ir||(ir=Ho(ee,w.tileSize,w.tileSize),q.heatmapFbos.set(Bt,ir)),ee.bindFramebuffer.set(ir.framebuffer),ee.viewport.set([0,0,w.tileSize,w.tileSize]),ee.clear({color:a.aM.transparent});let or=mt.programConfigurations.get(q.id),kr=le.useProgram("heatmap",or),Vr=le.style.map.terrain.getTerrainData(Q);kr.draw(ee,ue.TRIANGLES,sa.disabled,Ve,tt,rn.disabled,so(Q.posMatrix,w,le.transform.zoom,q.paint.get("heatmap-intensity")),Vr,q.id,mt.layoutVertexBuffer,mt.indexBuffer,mt.segments,q.paint,le.transform.zoom,or)}function As(le,w,q){let Q=le.context,ee=Q.gl;Q.setColorMode(le.colorModeForRenderPass());let ue=Wa(Q,w),Ve=q.key,tt=w.heatmapFbos.get(Ve);tt&&(Q.activeTexture.set(ee.TEXTURE0),ee.bindTexture(ee.TEXTURE_2D,tt.colorAttachment.get()),Q.activeTexture.set(ee.TEXTURE1),ue.bind(ee.LINEAR,ee.CLAMP_TO_EDGE),le.useProgram("heatmapTexture").draw(Q,ee.TRIANGLES,sa.disabled,Na.disabled,le.colorModeForRenderPass(),rn.disabled,Kr(le,w,0,1),null,w.id,le.rasterBoundsBuffer,le.quadTriangleIndexBuffer,le.rasterBoundsSegments,w.paint,le.transform.zoom),tt.destroy(),w.heatmapFbos.delete(Ve))}function Ho(le,w,q){var Q,ee;let ue=le.gl,Ve=ue.createTexture();ue.bindTexture(ue.TEXTURE_2D,Ve),ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_WRAP_S,ue.CLAMP_TO_EDGE),ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_WRAP_T,ue.CLAMP_TO_EDGE),ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_MIN_FILTER,ue.LINEAR),ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_MAG_FILTER,ue.LINEAR);let tt=(Q=le.HALF_FLOAT)!==null&&Q!==void 0?Q:ue.UNSIGNED_BYTE,mt=(ee=le.RGBA16F)!==null&&ee!==void 0?ee:ue.RGBA;ue.texImage2D(ue.TEXTURE_2D,0,mt,w,q,0,ue.RGBA,tt,null);let Bt=le.createFramebuffer(w,q,!1,!1);return Bt.colorAttachment.set(Ve),Bt}function Wa(le,w){return w.colorRampTexture||(w.colorRampTexture=new m(le,w.colorRamp,le.gl.RGBA)),w.colorRampTexture}function Ao(le,w,q,Q,ee){if(!q||!Q||!Q.imageAtlas)return;let ue=Q.imageAtlas.patternPositions,Ve=ue[q.to.toString()],tt=ue[q.from.toString()];if(!Ve&&tt&&(Ve=tt),!tt&&Ve&&(tt=Ve),!Ve||!tt){let mt=ee.getPaintProperty(w);Ve=ue[mt],tt=ue[mt]}Ve&&tt&&le.setConstantPatternPositions(Ve,tt)}function ts(le,w,q,Q,ee,ue,Ve){let tt=le.context.gl,mt="fill-pattern",Bt=q.paint.get(mt),ir=Bt&&Bt.constantOr(1),or=q.getCrossfadeParameters(),kr,Vr,he,Se,Ne;Ve?(Vr=ir&&!q.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",kr=tt.LINES):(Vr=ir?"fillPattern":"fill",kr=tt.TRIANGLES);let Ge=Bt.constantOr(null);for(let lt of Q){let rt=w.getTile(lt);if(ir&&!rt.patternsLoaded())continue;let pt=rt.getBucket(q);if(!pt)continue;let Ht=pt.programConfigurations.get(q.id),nr=le.useProgram(Vr,Ht),fr=le.style.map.terrain&&le.style.map.terrain.getTerrainData(lt);ir&&(le.context.activeTexture.set(tt.TEXTURE0),rt.imageAtlasTexture.bind(tt.LINEAR,tt.CLAMP_TO_EDGE),Ht.updatePaintBuffers(or)),Ao(Ht,mt,Ge,rt,q);let Tr=fr?lt:null,Ir=le.translatePosMatrix(Tr?Tr.posMatrix:lt.posMatrix,rt,q.paint.get("fill-translate"),q.paint.get("fill-translate-anchor"));if(Ve){Se=pt.indexBuffer2,Ne=pt.segments2;let ri=[tt.drawingBufferWidth,tt.drawingBufferHeight];he=Vr==="fillOutlinePattern"&&ir?Un(Ir,le,or,rt,ri):Mn(Ir,ri)}else Se=pt.indexBuffer,Ne=pt.segments,he=ir?aa(Ir,le,or,rt):Xi(Ir);nr.draw(le.context,kr,ee,le.stencilModeForClipping(lt),ue,rn.disabled,he,fr,q.id,pt.layoutVertexBuffer,Se,Ne,q.paint,le.transform.zoom,Ht)}}function Wo(le,w,q,Q,ee,ue,Ve){let tt=le.context,mt=tt.gl,Bt="fill-extrusion-pattern",ir=q.paint.get(Bt),or=ir.constantOr(1),kr=q.getCrossfadeParameters(),Vr=q.paint.get("fill-extrusion-opacity"),he=ir.constantOr(null);for(let Se of Q){let Ne=w.getTile(Se),Ge=Ne.getBucket(q);if(!Ge)continue;let lt=le.style.map.terrain&&le.style.map.terrain.getTerrainData(Se),rt=Ge.programConfigurations.get(q.id),pt=le.useProgram(or?"fillExtrusionPattern":"fillExtrusion",rt);or&&(le.context.activeTexture.set(mt.TEXTURE0),Ne.imageAtlasTexture.bind(mt.LINEAR,mt.CLAMP_TO_EDGE),rt.updatePaintBuffers(kr)),Ao(rt,Bt,he,Ne,q);let Ht=le.translatePosMatrix(Se.posMatrix,Ne,q.paint.get("fill-extrusion-translate"),q.paint.get("fill-extrusion-translate-anchor")),nr=q.paint.get("fill-extrusion-vertical-gradient"),fr=or?ii(Ht,le,nr,Vr,Se,kr,Ne):en(Ht,le,nr,Vr);pt.draw(tt,tt.gl.TRIANGLES,ee,ue,Ve,rn.backCCW,fr,lt,q.id,Ge.layoutVertexBuffer,Ge.indexBuffer,Ge.segments,q.paint,le.transform.zoom,rt,le.style.map.terrain&&Ge.centroidVertexBuffer)}}function qa(le,w,q,Q,ee,ue,Ve){let tt=le.context,mt=tt.gl,Bt=q.fbo;if(!Bt)return;let ir=le.useProgram("hillshade"),or=le.style.map.terrain&&le.style.map.terrain.getTerrainData(w);tt.activeTexture.set(mt.TEXTURE0),mt.bindTexture(mt.TEXTURE_2D,Bt.colorAttachment.get()),ir.draw(tt,mt.TRIANGLES,ee,ue,Ve,rn.disabled,((kr,Vr,he,Se)=>{let Ne=he.paint.get("hillshade-shadow-color"),Ge=he.paint.get("hillshade-highlight-color"),lt=he.paint.get("hillshade-accent-color"),rt=he.paint.get("hillshade-illumination-direction")*(Math.PI/180);he.paint.get("hillshade-illumination-anchor")==="viewport"&&(rt-=kr.transform.angle);let pt=!kr.options.moving;return{u_matrix:Se?Se.posMatrix:kr.transform.calculatePosMatrix(Vr.tileID.toUnwrapped(),pt),u_image:0,u_latrange:Ia(0,Vr.tileID),u_light:[he.paint.get("hillshade-exaggeration"),rt],u_shadow:Ne,u_highlight:Ge,u_accent:lt}})(le,q,Q,or?w:null),or,Q.id,le.rasterBoundsBuffer,le.quadTriangleIndexBuffer,le.rasterBoundsSegments)}function ln(le,w,q,Q,ee,ue){let Ve=le.context,tt=Ve.gl,mt=w.dem;if(mt&&mt.data){let Bt=mt.dim,ir=mt.stride,or=mt.getPixels();if(Ve.activeTexture.set(tt.TEXTURE1),Ve.pixelStoreUnpackPremultiplyAlpha.set(!1),w.demTexture=w.demTexture||le.getTileTexture(ir),w.demTexture){let Vr=w.demTexture;Vr.update(or,{premultiply:!1}),Vr.bind(tt.NEAREST,tt.CLAMP_TO_EDGE)}else w.demTexture=new m(Ve,or,tt.RGBA,{premultiply:!1}),w.demTexture.bind(tt.NEAREST,tt.CLAMP_TO_EDGE);Ve.activeTexture.set(tt.TEXTURE0);let kr=w.fbo;if(!kr){let Vr=new m(Ve,{width:Bt,height:Bt,data:null},tt.RGBA);Vr.bind(tt.LINEAR,tt.CLAMP_TO_EDGE),kr=w.fbo=Ve.createFramebuffer(Bt,Bt,!0,!1),kr.colorAttachment.set(Vr.texture)}Ve.bindFramebuffer.set(kr.framebuffer),Ve.viewport.set([0,0,Bt,Bt]),le.useProgram("hillshadePrepare").draw(Ve,tt.TRIANGLES,Q,ee,ue,rn.disabled,((Vr,he)=>{let Se=he.stride,Ne=a.H();return a.aP(Ne,0,a.X,-a.X,0,0,1),a.J(Ne,Ne,[0,-a.X,0]),{u_matrix:Ne,u_image:1,u_dimension:[Se,Se],u_zoom:Vr.overscaledZ,u_unpack:he.getUnpackVector()}})(w.tileID,mt),null,q.id,le.rasterBoundsBuffer,le.quadTriangleIndexBuffer,le.rasterBoundsSegments),w.needsHillshadePrepare=!1}}function Bo(le,w,q,Q,ee,ue){let Ve=Q.paint.get("raster-fade-duration");if(!ue&&Ve>0){let tt=l.now(),mt=(tt-le.timeAdded)/Ve,Bt=w?(tt-w.timeAdded)/Ve:-1,ir=q.getSource(),or=ee.coveringZoomLevel({tileSize:ir.tileSize,roundZoom:ir.roundZoom}),kr=!w||Math.abs(w.tileID.overscaledZ-or)>Math.abs(le.tileID.overscaledZ-or),Vr=kr&&le.refreshedUponExpiration?1:a.ac(kr?mt:1-Bt,0,1);return le.refreshedUponExpiration&&mt>=1&&(le.refreshedUponExpiration=!1),w?{opacity:1,mix:1-Vr}:{opacity:Vr,mix:0}}return{opacity:1,mix:0}}let ko=new a.aM(1,0,0,1),oo=new a.aM(0,1,0,1),za=new a.aM(0,0,1,1),ea=new a.aM(1,0,1,1),rs=new a.aM(0,1,1,1);function $s(le,w,q,Q){Ds(le,0,w+q/2,le.transform.width,q,Q)}function us(le,w,q,Q){Ds(le,w-q/2,0,q,le.transform.height,Q)}function Ds(le,w,q,Q,ee,ue){let Ve=le.context,tt=Ve.gl;tt.enable(tt.SCISSOR_TEST),tt.scissor(w*le.pixelRatio,q*le.pixelRatio,Q*le.pixelRatio,ee*le.pixelRatio),Ve.clear({color:ue}),tt.disable(tt.SCISSOR_TEST)}function fl(le,w,q){let Q=le.context,ee=Q.gl,ue=q.posMatrix,Ve=le.useProgram("debug"),tt=sa.disabled,mt=Na.disabled,Bt=le.colorModeForRenderPass(),ir="$debug",or=le.style.map.terrain&&le.style.map.terrain.getTerrainData(q);Q.activeTexture.set(ee.TEXTURE0);let kr=w.getTileByID(q.key).latestRawTileData,Vr=Math.floor((kr&&kr.byteLength||0)/1024),he=w.getTile(q).tileSize,Se=512/Math.min(he,512)*(q.overscaledZ/le.transform.zoom)*.5,Ne=q.canonical.toString();q.overscaledZ!==q.canonical.z&&(Ne+=` => ${q.overscaledZ}`),function(Ge,lt){Ge.initDebugOverlayCanvas();let rt=Ge.debugOverlayCanvas,pt=Ge.context.gl,Ht=Ge.debugOverlayCanvas.getContext("2d");Ht.clearRect(0,0,rt.width,rt.height),Ht.shadowColor="white",Ht.shadowBlur=2,Ht.lineWidth=1.5,Ht.strokeStyle="white",Ht.textBaseline="top",Ht.font="bold 36px Open Sans, sans-serif",Ht.fillText(lt,5,5),Ht.strokeText(lt,5,5),Ge.debugOverlayTexture.update(rt),Ge.debugOverlayTexture.bind(pt.LINEAR,pt.CLAMP_TO_EDGE)}(le,`${Ne} ${Vr}kB`),Ve.draw(Q,ee.TRIANGLES,tt,mt,lo.alphaBlended,rn.disabled,oa(ue,a.aM.transparent,Se),null,ir,le.debugBuffer,le.quadTriangleIndexBuffer,le.debugSegments),Ve.draw(Q,ee.LINE_STRIP,tt,mt,Bt,rn.disabled,oa(ue,a.aM.red),or,ir,le.debugBuffer,le.tileBorderIndexBuffer,le.debugSegments)}function as(le,w,q){let Q=le.context,ee=Q.gl,ue=le.colorModeForRenderPass(),Ve=new sa(ee.LEQUAL,sa.ReadWrite,le.depthRangeFor3D),tt=le.useProgram("terrain"),mt=w.getTerrainMesh();Q.bindFramebuffer.set(null),Q.viewport.set([0,0,le.width,le.height]);for(let Bt of q){let ir=le.renderToTexture.getTexture(Bt),or=w.getTerrainData(Bt.tileID);Q.activeTexture.set(ee.TEXTURE0),ee.bindTexture(ee.TEXTURE_2D,ir.texture);let kr=le.transform.calculatePosMatrix(Bt.tileID.toUnwrapped()),Vr=w.getMeshFrameDelta(le.transform.zoom),he=le.transform.calculateFogMatrix(Bt.tileID.toUnwrapped()),Se=pr(kr,Vr,he,le.style.sky,le.transform.pitch);tt.draw(Q,ee.TRIANGLES,Ve,Na.disabled,ue,rn.backCCW,Se,or,"terrain",mt.vertexBuffer,mt.indexBuffer,mt.segments)}}class Ma{constructor(w,q,Q){this.vertexBuffer=w,this.indexBuffer=q,this.segments=Q}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class Qs{constructor(w,q){this.context=new eo(w),this.transform=q,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:a.an(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=it.maxUnderzooming+it.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new nn}resize(w,q,Q){if(this.width=Math.floor(w*Q),this.height=Math.floor(q*Q),this.pixelRatio=Q,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(let ee of this.style._order)this.style._layers[ee].resize()}setup(){let w=this.context,q=new a.aX;q.emplaceBack(0,0),q.emplaceBack(a.X,0),q.emplaceBack(0,a.X),q.emplaceBack(a.X,a.X),this.tileExtentBuffer=w.createVertexBuffer(q,bi.members),this.tileExtentSegments=a.a0.simpleSegment(0,0,4,2);let Q=new a.aX;Q.emplaceBack(0,0),Q.emplaceBack(a.X,0),Q.emplaceBack(0,a.X),Q.emplaceBack(a.X,a.X),this.debugBuffer=w.createVertexBuffer(Q,bi.members),this.debugSegments=a.a0.simpleSegment(0,0,4,5);let ee=new a.$;ee.emplaceBack(0,0,0,0),ee.emplaceBack(a.X,0,a.X,0),ee.emplaceBack(0,a.X,0,a.X),ee.emplaceBack(a.X,a.X,a.X,a.X),this.rasterBoundsBuffer=w.createVertexBuffer(ee,Ke.members),this.rasterBoundsSegments=a.a0.simpleSegment(0,0,4,2);let ue=new a.aX;ue.emplaceBack(0,0),ue.emplaceBack(1,0),ue.emplaceBack(0,1),ue.emplaceBack(1,1),this.viewportBuffer=w.createVertexBuffer(ue,bi.members),this.viewportSegments=a.a0.simpleSegment(0,0,4,2);let Ve=new a.aZ;Ve.emplaceBack(0),Ve.emplaceBack(1),Ve.emplaceBack(3),Ve.emplaceBack(2),Ve.emplaceBack(0),this.tileBorderIndexBuffer=w.createIndexBuffer(Ve);let tt=new a.aY;tt.emplaceBack(0,1,2),tt.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=w.createIndexBuffer(tt);let mt=this.context.gl;this.stencilClearMode=new Na({func:mt.ALWAYS,mask:0},0,255,mt.ZERO,mt.ZERO,mt.ZERO)}clearStencil(){let w=this.context,q=w.gl;this.nextStencilID=1,this.currentStencilSource=void 0;let Q=a.H();a.aP(Q,0,this.width,this.height,0,0,1),a.K(Q,Q,[q.drawingBufferWidth,q.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(w,q.TRIANGLES,sa.disabled,this.stencilClearMode,lo.disabled,rn.disabled,ka(Q),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(w,q){if(this.currentStencilSource===w.source||!w.isTileClipped()||!q||!q.length)return;this.currentStencilSource=w.source;let Q=this.context,ee=Q.gl;this.nextStencilID+q.length>256&&this.clearStencil(),Q.setColorMode(lo.disabled),Q.setDepthMode(sa.disabled);let ue=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(let Ve of q){let tt=this._tileClippingMaskIDs[Ve.key]=this.nextStencilID++,mt=this.style.map.terrain&&this.style.map.terrain.getTerrainData(Ve);ue.draw(Q,ee.TRIANGLES,sa.disabled,new Na({func:ee.ALWAYS,mask:0},tt,255,ee.KEEP,ee.KEEP,ee.REPLACE),lo.disabled,rn.disabled,ka(Ve.posMatrix),mt,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();let w=this.nextStencilID++,q=this.context.gl;return new Na({func:q.NOTEQUAL,mask:255},w,255,q.KEEP,q.KEEP,q.REPLACE)}stencilModeForClipping(w){let q=this.context.gl;return new Na({func:q.EQUAL,mask:255},this._tileClippingMaskIDs[w.key],0,q.KEEP,q.KEEP,q.REPLACE)}stencilConfigForOverlap(w){let q=this.context.gl,Q=w.sort((Ve,tt)=>tt.overscaledZ-Ve.overscaledZ),ee=Q[Q.length-1].overscaledZ,ue=Q[0].overscaledZ-ee+1;if(ue>1){this.currentStencilSource=void 0,this.nextStencilID+ue>256&&this.clearStencil();let Ve={};for(let tt=0;tt({u_sky_color:Ge.properties.get("sky-color"),u_horizon_color:Ge.properties.get("horizon-color"),u_horizon:(lt.height/2+lt.getHorizon())*rt,u_sky_horizon_blend:Ge.properties.get("sky-horizon-blend")*lt.height/2*rt}))(Bt,mt.style.map.transform,mt.pixelRatio),Vr=new sa(or.LEQUAL,sa.ReadWrite,[0,1]),he=Na.disabled,Se=mt.colorModeForRenderPass(),Ne=mt.useProgram("sky");if(!Bt.mesh){let Ge=new a.aX;Ge.emplaceBack(-1,-1),Ge.emplaceBack(1,-1),Ge.emplaceBack(1,1),Ge.emplaceBack(-1,1);let lt=new a.aY;lt.emplaceBack(0,1,2),lt.emplaceBack(0,2,3),Bt.mesh=new Ma(ir.createVertexBuffer(Ge,bi.members),ir.createIndexBuffer(lt),a.a0.simpleSegment(0,0,Ge.length,lt.length))}Ne.draw(ir,or.TRIANGLES,Vr,he,Se,rn.disabled,kr,void 0,"sky",Bt.mesh.vertexBuffer,Bt.mesh.indexBuffer,Bt.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=q.showOverdrawInspector,this.depthRangeFor3D=[0,1-(w._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=Q.length-1;this.currentLayer>=0;this.currentLayer--){let mt=this.style._layers[Q[this.currentLayer]],Bt=ee[mt.source],ir=ue[mt.source];this._renderTileClippingMasks(mt,ir),this.renderLayer(this,Bt,mt,ir)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayerNe.source&&!Ne.isHidden(ir)?[Bt.sourceCaches[Ne.source]]:[]),Vr=kr.filter(Ne=>Ne.getSource().type==="vector"),he=kr.filter(Ne=>Ne.getSource().type!=="vector"),Se=Ne=>{(!or||or.getSource().maxzoomSe(Ne)),or||he.forEach(Ne=>Se(Ne)),or}(this.style,this.transform.zoom);mt&&function(Bt,ir,or){for(let kr=0;kr0),ee&&(a.b0(q,Q),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(ue,Ve){let tt=ue.context,mt=tt.gl,Bt=lo.unblended,ir=new sa(mt.LEQUAL,sa.ReadWrite,[0,1]),or=Ve.getTerrainMesh(),kr=Ve.sourceCache.getRenderableTiles(),Vr=ue.useProgram("terrainDepth");tt.bindFramebuffer.set(Ve.getFramebuffer("depth").framebuffer),tt.viewport.set([0,0,ue.width/devicePixelRatio,ue.height/devicePixelRatio]),tt.clear({color:a.aM.transparent,depth:1});for(let he of kr){let Se=Ve.getTerrainData(he.tileID),Ne={u_matrix:ue.transform.calculatePosMatrix(he.tileID.toUnwrapped()),u_ele_delta:Ve.getMeshFrameDelta(ue.transform.zoom)};Vr.draw(tt,mt.TRIANGLES,ir,Na.disabled,Bt,rn.backCCW,Ne,Se,"terrain",or.vertexBuffer,or.indexBuffer,or.segments)}tt.bindFramebuffer.set(null),tt.viewport.set([0,0,ue.width,ue.height])}(this,this.style.map.terrain),function(ue,Ve){let tt=ue.context,mt=tt.gl,Bt=lo.unblended,ir=new sa(mt.LEQUAL,sa.ReadWrite,[0,1]),or=Ve.getTerrainMesh(),kr=Ve.getCoordsTexture(),Vr=Ve.sourceCache.getRenderableTiles(),he=ue.useProgram("terrainCoords");tt.bindFramebuffer.set(Ve.getFramebuffer("coords").framebuffer),tt.viewport.set([0,0,ue.width/devicePixelRatio,ue.height/devicePixelRatio]),tt.clear({color:a.aM.transparent,depth:1}),Ve.coordsIndex=[];for(let Se of Vr){let Ne=Ve.getTerrainData(Se.tileID);tt.activeTexture.set(mt.TEXTURE0),mt.bindTexture(mt.TEXTURE_2D,kr.texture);let Ge={u_matrix:ue.transform.calculatePosMatrix(Se.tileID.toUnwrapped()),u_terrain_coords_id:(255-Ve.coordsIndex.length)/255,u_texture:0,u_ele_delta:Ve.getMeshFrameDelta(ue.transform.zoom)};he.draw(tt,mt.TRIANGLES,ir,Na.disabled,Bt,rn.backCCW,Ge,Ne,"terrain",or.vertexBuffer,or.indexBuffer,or.segments),Ve.coordsIndex.push(Se.tileID.key)}tt.bindFramebuffer.set(null),tt.viewport.set([0,0,ue.width,ue.height])}(this,this.style.map.terrain))}renderLayer(w,q,Q,ee){if(!Q.isHidden(this.transform.zoom)&&(Q.type==="background"||Q.type==="custom"||(ee||[]).length))switch(this.id=Q.id,Q.type){case"symbol":(function(ue,Ve,tt,mt,Bt){if(ue.renderPass!=="translucent")return;let ir=Na.disabled,or=ue.colorModeForRenderPass();(tt._unevaluatedLayout.hasValue("text-variable-anchor")||tt._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function(kr,Vr,he,Se,Ne,Ge,lt,rt,pt){let Ht=Vr.transform,nr=Vi(),fr=Ne==="map",Tr=Ge==="map";for(let Ir of kr){let ri=Se.getTile(Ir),li=ri.getBucket(he);if(!li||!li.text||!li.text.segments.get().length)continue;let Ei=a.ag(li.textSizeData,Ht.zoom),hn=Di(ri,1,Vr.transform.zoom),Zn=yr(Ir.posMatrix,Tr,fr,Vr.transform,hn),Yn=he.layout.get("icon-text-fit")!=="none"&&li.hasIconData();if(Ei){let Ua=Math.pow(2,Ht.zoom-ri.tileID.overscaledZ),Fo=Vr.style.map.terrain?(Us,ml)=>Vr.style.map.terrain.getElevation(Ir,Us,ml):null,vl=nr.translatePosition(Ht,ri,lt,rt);Dn(li,fr,Tr,pt,Ht,Zn,Ir.posMatrix,Ua,Ei,Yn,nr,vl,Ir.toUnwrapped(),Fo)}}}(mt,ue,tt,Ve,tt.layout.get("text-rotation-alignment"),tt.layout.get("text-pitch-alignment"),tt.paint.get("text-translate"),tt.paint.get("text-translate-anchor"),Bt),tt.paint.get("icon-opacity").constantOr(1)!==0&&Ws(ue,Ve,tt,mt,!1,tt.paint.get("icon-translate"),tt.paint.get("icon-translate-anchor"),tt.layout.get("icon-rotation-alignment"),tt.layout.get("icon-pitch-alignment"),tt.layout.get("icon-keep-upright"),ir,or),tt.paint.get("text-opacity").constantOr(1)!==0&&Ws(ue,Ve,tt,mt,!0,tt.paint.get("text-translate"),tt.paint.get("text-translate-anchor"),tt.layout.get("text-rotation-alignment"),tt.layout.get("text-pitch-alignment"),tt.layout.get("text-keep-upright"),ir,or),Ve.map.showCollisionBoxes&&(to(ue,Ve,tt,mt,!0),to(ue,Ve,tt,mt,!1))})(w,q,Q,ee,this.style.placement.variableOffsets);break;case"circle":(function(ue,Ve,tt,mt){if(ue.renderPass!=="translucent")return;let Bt=tt.paint.get("circle-opacity"),ir=tt.paint.get("circle-stroke-width"),or=tt.paint.get("circle-stroke-opacity"),kr=!tt.layout.get("circle-sort-key").isConstant();if(Bt.constantOr(1)===0&&(ir.constantOr(1)===0||or.constantOr(1)===0))return;let Vr=ue.context,he=Vr.gl,Se=ue.depthModeForSublayer(0,sa.ReadOnly),Ne=Na.disabled,Ge=ue.colorModeForRenderPass(),lt=[];for(let rt=0;rtrt.sortKey-pt.sortKey);for(let rt of lt){let{programConfiguration:pt,program:Ht,layoutVertexBuffer:nr,indexBuffer:fr,uniformValues:Tr,terrainData:Ir}=rt.state;Ht.draw(Vr,he.TRIANGLES,Se,Ne,Ge,rn.disabled,Tr,Ir,tt.id,nr,fr,rt.segments,tt.paint,ue.transform.zoom,pt)}})(w,q,Q,ee);break;case"heatmap":(function(ue,Ve,tt,mt){if(tt.paint.get("heatmap-opacity")===0)return;let Bt=ue.context;if(ue.style.map.terrain){for(let ir of mt){let or=Ve.getTile(ir);Ve.hasRenderableParent(ir)||(ue.renderPass==="offscreen"?Es(ue,or,tt,ir):ue.renderPass==="translucent"&&As(ue,tt,ir))}Bt.viewport.set([0,0,ue.width,ue.height])}else ue.renderPass==="offscreen"?function(ir,or,kr,Vr){let he=ir.context,Se=he.gl,Ne=Na.disabled,Ge=new lo([Se.ONE,Se.ONE],a.aM.transparent,[!0,!0,!0,!0]);(function(lt,rt,pt){let Ht=lt.gl;lt.activeTexture.set(Ht.TEXTURE1),lt.viewport.set([0,0,rt.width/4,rt.height/4]);let nr=pt.heatmapFbos.get(a.aU);nr?(Ht.bindTexture(Ht.TEXTURE_2D,nr.colorAttachment.get()),lt.bindFramebuffer.set(nr.framebuffer)):(nr=Ho(lt,rt.width/4,rt.height/4),pt.heatmapFbos.set(a.aU,nr))})(he,ir,kr),he.clear({color:a.aM.transparent});for(let lt=0;lt20&&ir.texParameterf(ir.TEXTURE_2D,Bt.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,Bt.extTextureFilterAnisotropicMax);let li=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(lt),Ei=li?lt:null,hn=Ei?Ei.posMatrix:ue.transform.calculatePosMatrix(lt.toUnwrapped(),Ge),Zn=ls(hn,Ir||[0,0],Tr||1,fr,tt);or instanceof Ct?kr.draw(Bt,ir.TRIANGLES,rt,Na.disabled,Vr,rn.disabled,Zn,li,tt.id,or.boundsBuffer,ue.quadTriangleIndexBuffer,or.boundsSegments):kr.draw(Bt,ir.TRIANGLES,rt,he[lt.overscaledZ],Vr,rn.disabled,Zn,li,tt.id,ue.rasterBoundsBuffer,ue.quadTriangleIndexBuffer,ue.rasterBoundsSegments)}})(w,q,Q,ee);break;case"background":(function(ue,Ve,tt,mt){let Bt=tt.paint.get("background-color"),ir=tt.paint.get("background-opacity");if(ir===0)return;let or=ue.context,kr=or.gl,Vr=ue.transform,he=Vr.tileSize,Se=tt.paint.get("background-pattern");if(ue.isPatternMissing(Se))return;let Ne=!Se&&Bt.a===1&&ir===1&&ue.opaquePassEnabledForLayer()?"opaque":"translucent";if(ue.renderPass!==Ne)return;let Ge=Na.disabled,lt=ue.depthModeForSublayer(0,Ne==="opaque"?sa.ReadWrite:sa.ReadOnly),rt=ue.colorModeForRenderPass(),pt=ue.useProgram(Se?"backgroundPattern":"background"),Ht=mt||Vr.coveringTiles({tileSize:he,terrain:ue.style.map.terrain});Se&&(or.activeTexture.set(kr.TEXTURE0),ue.imageManager.bind(ue.context));let nr=tt.getCrossfadeParameters();for(let fr of Ht){let Tr=mt?fr.posMatrix:ue.transform.calculatePosMatrix(fr.toUnwrapped()),Ir=Se?ws(Tr,ir,ue,Se,{tileID:fr,tileSize:he},nr):wa(Tr,ir,Bt),ri=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(fr);pt.draw(or,kr.TRIANGLES,lt,Ge,rt,rn.disabled,Ir,ri,tt.id,ue.tileExtentBuffer,ue.quadTriangleIndexBuffer,ue.tileExtentSegments)}})(w,0,Q,ee);break;case"custom":(function(ue,Ve,tt){let mt=ue.context,Bt=tt.implementation;if(ue.renderPass==="offscreen"){let ir=Bt.prerender;ir&&(ue.setCustomLayerDefaults(),mt.setColorMode(ue.colorModeForRenderPass()),ir.call(Bt,mt.gl,ue.transform.customLayerMatrix()),mt.setDirty(),ue.setBaseState())}else if(ue.renderPass==="translucent"){ue.setCustomLayerDefaults(),mt.setColorMode(ue.colorModeForRenderPass()),mt.setStencilMode(Na.disabled);let ir=Bt.renderingMode==="3d"?new sa(ue.context.gl.LEQUAL,sa.ReadWrite,ue.depthRangeFor3D):ue.depthModeForSublayer(0,sa.ReadOnly);mt.setDepthMode(ir),Bt.render(mt.gl,ue.transform.customLayerMatrix(),{farZ:ue.transform.farZ,nearZ:ue.transform.nearZ,fov:ue.transform._fov,modelViewProjectionMatrix:ue.transform.modelViewProjectionMatrix,projectionMatrix:ue.transform.projectionMatrix}),mt.setDirty(),ue.setBaseState(),mt.bindFramebuffer.set(null)}})(w,0,Q)}}translatePosMatrix(w,q,Q,ee,ue){if(!Q[0]&&!Q[1])return w;let Ve=ue?ee==="map"?this.transform.angle:0:ee==="viewport"?-this.transform.angle:0;if(Ve){let Bt=Math.sin(Ve),ir=Math.cos(Ve);Q=[Q[0]*ir-Q[1]*Bt,Q[0]*Bt+Q[1]*ir]}let tt=[ue?Q[0]:Di(q,Q[0],this.transform.zoom),ue?Q[1]:Di(q,Q[1],this.transform.zoom),0],mt=new Float32Array(16);return a.J(mt,w,tt),mt}saveTileTexture(w){let q=this._tileTextures[w.size[0]];q?q.push(w):this._tileTextures[w.size[0]]=[w]}getTileTexture(w){let q=this._tileTextures[w];return q&&q.length>0?q.pop():null}isPatternMissing(w){if(!w)return!1;if(!w.from||!w.to)return!0;let q=this.imageManager.getPattern(w.from.toString()),Q=this.imageManager.getPattern(w.to.toString());return!q||!Q}useProgram(w,q){this.cache=this.cache||{};let Q=w+(q?q.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[Q]||(this.cache[Q]=new Zr(this.context,Xr[w],q,Co[w],this._showOverdrawInspector,this.style.map.terrain)),this.cache[Q]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){let w=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(w.FUNC_ADD)}initDebugOverlayCanvas(){this.debugOverlayCanvas==null&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new m(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){let{drawingBufferWidth:w,drawingBufferHeight:q}=this.context.gl;return this.width!==w||this.height!==q}}class ho{constructor(w,q){this.points=w,this.planes=q}static fromInvProjectionMatrix(w,q,Q){let ee=Math.pow(2,Q),ue=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map(tt=>{let mt=1/(tt=a.af([],tt,w))[3]/q*ee;return a.b1(tt,tt,[mt,mt,1/tt[3],mt])}),Ve=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(tt=>{let mt=function(kr,Vr){var he=Vr[0],Se=Vr[1],Ne=Vr[2],Ge=he*he+Se*Se+Ne*Ne;return Ge>0&&(Ge=1/Math.sqrt(Ge)),kr[0]=Vr[0]*Ge,kr[1]=Vr[1]*Ge,kr[2]=Vr[2]*Ge,kr}([],function(kr,Vr,he){var Se=Vr[0],Ne=Vr[1],Ge=Vr[2],lt=he[0],rt=he[1],pt=he[2];return kr[0]=Ne*pt-Ge*rt,kr[1]=Ge*lt-Se*pt,kr[2]=Se*rt-Ne*lt,kr}([],L([],ue[tt[0]],ue[tt[1]]),L([],ue[tt[2]],ue[tt[1]]))),Bt=-((ir=mt)[0]*(or=ue[tt[1]])[0]+ir[1]*or[1]+ir[2]*or[2]);var ir,or;return mt.concat(Bt)});return new ho(ue,Ve)}}class gs{constructor(w,q){this.min=w,this.max=q,this.center=function(Q,ee,ue){return Q[0]=.5*ee[0],Q[1]=.5*ee[1],Q[2]=.5*ee[2],Q}([],function(Q,ee,ue){return Q[0]=ee[0]+ue[0],Q[1]=ee[1]+ue[1],Q[2]=ee[2]+ue[2],Q}([],this.min,this.max))}quadrant(w){let q=[w%2==0,w<2],Q=E(this.min),ee=E(this.max);for(let ue=0;ue=0&&Ve++;if(Ve===0)return 0;Ve!==q.length&&(Q=!1)}if(Q)return 2;for(let ee=0;ee<3;ee++){let ue=Number.MAX_VALUE,Ve=-Number.MAX_VALUE;for(let tt=0;ttthis.max[ee]-this.min[ee])return 0}return 1}}class Vo{constructor(w=0,q=0,Q=0,ee=0){if(isNaN(w)||w<0||isNaN(q)||q<0||isNaN(Q)||Q<0||isNaN(ee)||ee<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=w,this.bottom=q,this.left=Q,this.right=ee}interpolate(w,q,Q){return q.top!=null&&w.top!=null&&(this.top=a.y.number(w.top,q.top,Q)),q.bottom!=null&&w.bottom!=null&&(this.bottom=a.y.number(w.bottom,q.bottom,Q)),q.left!=null&&w.left!=null&&(this.left=a.y.number(w.left,q.left,Q)),q.right!=null&&w.right!=null&&(this.right=a.y.number(w.right,q.right,Q)),this}getCenter(w,q){let Q=a.ac((this.left+w-this.right)/2,0,w),ee=a.ac((this.top+q-this.bottom)/2,0,q);return new a.P(Q,ee)}equals(w){return this.top===w.top&&this.bottom===w.bottom&&this.left===w.left&&this.right===w.right}clone(){return new Vo(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}let Do=85.051129;class Lo{constructor(w,q,Q,ee,ue){this.tileSize=512,this._renderWorldCopies=ue===void 0||!!ue,this._minZoom=w||0,this._maxZoom=q||22,this._minPitch=Q==null?0:Q,this._maxPitch=ee==null?60:ee,this.setMaxBounds(),this.width=0,this.height=0,this._center=new a.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Vo,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){let w=new Lo(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return w.apply(this),w}apply(w){this.tileSize=w.tileSize,this.latRange=w.latRange,this.lngRange=w.lngRange,this.width=w.width,this.height=w.height,this._center=w._center,this._elevation=w._elevation,this.minElevationForCurrentTile=w.minElevationForCurrentTile,this.zoom=w.zoom,this.angle=w.angle,this._fov=w._fov,this._pitch=w._pitch,this._unmodified=w._unmodified,this._edgeInsets=w._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(w){this._minZoom!==w&&(this._minZoom=w,this.zoom=Math.max(this.zoom,w))}get maxZoom(){return this._maxZoom}set maxZoom(w){this._maxZoom!==w&&(this._maxZoom=w,this.zoom=Math.min(this.zoom,w))}get minPitch(){return this._minPitch}set minPitch(w){this._minPitch!==w&&(this._minPitch=w,this.pitch=Math.max(this.pitch,w))}get maxPitch(){return this._maxPitch}set maxPitch(w){this._maxPitch!==w&&(this._maxPitch=w,this.pitch=Math.min(this.pitch,w))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(w){w===void 0?w=!0:w===null&&(w=!1),this._renderWorldCopies=w}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new a.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(w){let q=-a.b3(w,-180,180)*Math.PI/180;this.angle!==q&&(this._unmodified=!1,this.angle=q,this._calcMatrices(),this.rotationMatrix=function(){var Q=new a.A(4);return a.A!=Float32Array&&(Q[1]=0,Q[2]=0),Q[0]=1,Q[3]=1,Q}(),function(Q,ee,ue){var Ve=ee[0],tt=ee[1],mt=ee[2],Bt=ee[3],ir=Math.sin(ue),or=Math.cos(ue);Q[0]=Ve*or+mt*ir,Q[1]=tt*or+Bt*ir,Q[2]=Ve*-ir+mt*or,Q[3]=tt*-ir+Bt*or}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(w){let q=a.ac(w,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==q&&(this._unmodified=!1,this._pitch=q,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(w){w=Math.max(.01,Math.min(60,w)),this._fov!==w&&(this._unmodified=!1,this._fov=w/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(w){let q=Math.min(Math.max(w,this.minZoom),this.maxZoom);this._zoom!==q&&(this._unmodified=!1,this._zoom=q,this.tileZoom=Math.max(0,Math.floor(q)),this.scale=this.zoomScale(q),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(w){w.lat===this._center.lat&&w.lng===this._center.lng||(this._unmodified=!1,this._center=w,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(w){w!==this._elevation&&(this._elevation=w,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(w){this._edgeInsets.equals(w)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,w,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(w){return this._edgeInsets.equals(w)}interpolatePadding(w,q,Q){this._unmodified=!1,this._edgeInsets.interpolate(w,q,Q),this._constrain(),this._calcMatrices()}coveringZoomLevel(w){let q=(w.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/w.tileSize));return Math.max(0,q)}getVisibleUnwrappedCoordinates(w){let q=[new a.b4(0,w)];if(this._renderWorldCopies){let Q=this.pointCoordinate(new a.P(0,0)),ee=this.pointCoordinate(new a.P(this.width,0)),ue=this.pointCoordinate(new a.P(this.width,this.height)),Ve=this.pointCoordinate(new a.P(0,this.height)),tt=Math.floor(Math.min(Q.x,ee.x,ue.x,Ve.x)),mt=Math.floor(Math.max(Q.x,ee.x,ue.x,Ve.x)),Bt=1;for(let ir=tt-Bt;ir<=mt+Bt;ir++)ir!==0&&q.push(new a.b4(ir,w))}return q}coveringTiles(w){var q,Q;let ee=this.coveringZoomLevel(w),ue=ee;if(w.minzoom!==void 0&&eew.maxzoom&&(ee=w.maxzoom);let Ve=this.pointCoordinate(this.getCameraPoint()),tt=a.Z.fromLngLat(this.center),mt=Math.pow(2,ee),Bt=[mt*Ve.x,mt*Ve.y,0],ir=[mt*tt.x,mt*tt.y,0],or=ho.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,ee),kr=w.minzoom||0;!w.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(kr=ee);let Vr=w.terrain?2/Math.min(this.tileSize,w.tileSize)*this.tileSize:3,he=rt=>({aabb:new gs([rt*mt,0,0],[(rt+1)*mt,mt,0]),zoom:0,x:0,y:0,wrap:rt,fullyVisible:!1}),Se=[],Ne=[],Ge=ee,lt=w.reparseOverscaled?ue:ee;if(this._renderWorldCopies)for(let rt=1;rt<=3;rt++)Se.push(he(-rt)),Se.push(he(rt));for(Se.push(he(0));Se.length>0;){let rt=Se.pop(),pt=rt.x,Ht=rt.y,nr=rt.fullyVisible;if(!nr){let li=rt.aabb.intersects(or);if(li===0)continue;nr=li===2}let fr=w.terrain?Bt:ir,Tr=rt.aabb.distanceX(fr),Ir=rt.aabb.distanceY(fr),ri=Math.max(Math.abs(Tr),Math.abs(Ir));if(rt.zoom===Ge||ri>Vr+(1<=kr){let li=Ge-rt.zoom,Ei=Bt[0]-.5-(pt<>1),Zn=rt.zoom+1,Yn=rt.aabb.quadrant(li);if(w.terrain){let Ua=new a.S(Zn,rt.wrap,Zn,Ei,hn),Fo=w.terrain.getMinMaxElevation(Ua),vl=(q=Fo.minElevation)!==null&&q!==void 0?q:this.elevation,Us=(Q=Fo.maxElevation)!==null&&Q!==void 0?Q:this.elevation;Yn=new gs([Yn.min[0],Yn.min[1],vl],[Yn.max[0],Yn.max[1],Us])}Se.push({aabb:Yn,zoom:Zn,x:Ei,y:hn,wrap:rt.wrap,fullyVisible:nr})}}return Ne.sort((rt,pt)=>rt.distanceSq-pt.distanceSq).map(rt=>rt.tileID)}resize(w,q){this.width=w,this.height=q,this.pixelsToGLUnits=[2/w,-2/q],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(w){return Math.pow(2,w)}scaleZoom(w){return Math.log(w)/Math.LN2}project(w){let q=a.ac(w.lat,-85.051129,Do);return new a.P(a.O(w.lng)*this.worldSize,a.Q(q)*this.worldSize)}unproject(w){return new a.Z(w.x/this.worldSize,w.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(w){let q=this.elevation,Q=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,ee=this.pointLocation(this.centerPoint,w),ue=w.getElevationForLngLatZoom(ee,this.tileZoom);if(!(this.elevation-ue))return;let Ve=Q+q-ue,tt=Math.cos(this._pitch)*this.cameraToCenterDistance/Ve/a.b5(1,ee.lat),mt=this.scaleZoom(tt/this.tileSize);this._elevation=ue,this._center=ee,this.zoom=mt}setLocationAtPoint(w,q){let Q=this.pointCoordinate(q),ee=this.pointCoordinate(this.centerPoint),ue=this.locationCoordinate(w),Ve=new a.Z(ue.x-(Q.x-ee.x),ue.y-(Q.y-ee.y));this.center=this.coordinateLocation(Ve),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(w,q){return q?this.coordinatePoint(this.locationCoordinate(w),q.getElevationForLngLatZoom(w,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(w))}pointLocation(w,q){return this.coordinateLocation(this.pointCoordinate(w,q))}locationCoordinate(w){return a.Z.fromLngLat(w)}coordinateLocation(w){return w&&w.toLngLat()}pointCoordinate(w,q){if(q){let kr=q.pointCoordinate(w);if(kr!=null)return kr}let Q=[w.x,w.y,0,1],ee=[w.x,w.y,1,1];a.af(Q,Q,this.pixelMatrixInverse),a.af(ee,ee,this.pixelMatrixInverse);let ue=Q[3],Ve=ee[3],tt=Q[1]/ue,mt=ee[1]/Ve,Bt=Q[2]/ue,ir=ee[2]/Ve,or=Bt===ir?0:(0-Bt)/(ir-Bt);return new a.Z(a.y.number(Q[0]/ue,ee[0]/Ve,or)/this.worldSize,a.y.number(tt,mt,or)/this.worldSize)}coordinatePoint(w,q=0,Q=this.pixelMatrix){let ee=[w.x*this.worldSize,w.y*this.worldSize,q,1];return a.af(ee,ee,Q),new a.P(ee[0]/ee[3],ee[1]/ee[3])}getBounds(){let w=Math.max(0,this.height/2-this.getHorizon());return new ce().extend(this.pointLocation(new a.P(0,w))).extend(this.pointLocation(new a.P(this.width,w))).extend(this.pointLocation(new a.P(this.width,this.height))).extend(this.pointLocation(new a.P(0,this.height)))}getMaxBounds(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new ce([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(w){w?(this.lngRange=[w.getWest(),w.getEast()],this.latRange=[w.getSouth(),w.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,Do])}calculateTileMatrix(w){let q=w.canonical,Q=this.worldSize/this.zoomScale(q.z),ee=q.x+Math.pow(2,q.z)*w.wrap,ue=a.an(new Float64Array(16));return a.J(ue,ue,[ee*Q,q.y*Q,0]),a.K(ue,ue,[Q/a.X,Q/a.X,1]),ue}calculatePosMatrix(w,q=!1){let Q=w.key,ee=q?this._alignedPosMatrixCache:this._posMatrixCache;if(ee[Q])return ee[Q];let ue=this.calculateTileMatrix(w);return a.L(ue,q?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,ue),ee[Q]=new Float32Array(ue),ee[Q]}calculateFogMatrix(w){let q=w.key,Q=this._fogMatrixCache;if(Q[q])return Q[q];let ee=this.calculateTileMatrix(w);return a.L(ee,this.fogMatrix,ee),Q[q]=new Float32Array(ee),Q[q]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(w,q){q=a.ac(+q,this.minZoom,this.maxZoom);let Q={center:new a.N(w.lng,w.lat),zoom:q},ee=this.lngRange;if(!this._renderWorldCopies&&ee===null){let rt=179.9999999999;ee=[-rt,rt]}let ue=this.tileSize*this.zoomScale(Q.zoom),Ve=0,tt=ue,mt=0,Bt=ue,ir=0,or=0,{x:kr,y:Vr}=this.size;if(this.latRange){let rt=this.latRange;Ve=a.Q(rt[1])*ue,tt=a.Q(rt[0])*ue,tt-Vett&&(Ge=tt-rt)}if(ee){let rt=(mt+Bt)/2,pt=he;this._renderWorldCopies&&(pt=a.b3(he,rt-ue/2,rt+ue/2));let Ht=kr/2;pt-HtBt&&(Ne=Bt-Ht)}if(Ne!==void 0||Ge!==void 0){let rt=new a.P(Ne!=null?Ne:he,Ge!=null?Ge:Se);Q.center=this.unproject.call({worldSize:ue},rt).wrap()}return Q}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;let w=this._unmodified,{center:q,zoom:Q}=this.getConstrained(this.center,this.zoom);this.center=q,this.zoom=Q,this._unmodified=w,this._constraining=!1}_calcMatrices(){if(!this.height)return;let w=this.centerOffset,q=this.point.x,Q=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=a.b5(1,this.center.lat)*this.worldSize;let ee=a.an(new Float64Array(16));a.K(ee,ee,[this.width/2,-this.height/2,1]),a.J(ee,ee,[1,-1,0]),this.labelPlaneMatrix=ee,ee=a.an(new Float64Array(16)),a.K(ee,ee,[1,-1,1]),a.J(ee,ee,[-1,-1,0]),a.K(ee,ee,[2/this.width,2/this.height,1]),this.glCoordMatrix=ee;let ue=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),Ve=Math.min(this.elevation,this.minElevationForCurrentTile),tt=ue-Ve*this._pixelPerMeter/Math.cos(this._pitch),mt=Ve<0?tt:ue,Bt=Math.PI/2+this._pitch,ir=this._fov*(.5+w.y/this.height),or=Math.sin(ir)*mt/Math.sin(a.ac(Math.PI-Bt-ir,.01,Math.PI-.01)),kr=this.getHorizon(),Vr=2*Math.atan(kr/this.cameraToCenterDistance)*(.5+w.y/(2*kr)),he=Math.sin(Vr)*mt/Math.sin(a.ac(Math.PI-Bt-Vr,.01,Math.PI-.01)),Se=Math.min(or,he);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*Se+mt),this.nearZ=this.height/50,ee=new Float64Array(16),a.b6(ee,this._fov,this.width/this.height,this.nearZ,this.farZ),ee[8]=2*-w.x/this.width,ee[9]=2*w.y/this.height,this.projectionMatrix=a.ae(ee),a.K(ee,ee,[1,-1,1]),a.J(ee,ee,[0,0,-this.cameraToCenterDistance]),a.b7(ee,ee,this._pitch),a.ad(ee,ee,this.angle),a.J(ee,ee,[-q,-Q,0]),this.mercatorMatrix=a.K([],ee,[this.worldSize,this.worldSize,this.worldSize]),a.K(ee,ee,[1,1,this._pixelPerMeter]),this.pixelMatrix=a.L(new Float64Array(16),this.labelPlaneMatrix,ee),a.J(ee,ee,[0,0,-this.elevation]),this.modelViewProjectionMatrix=ee,this.invModelViewProjectionMatrix=a.as([],ee),this.fogMatrix=new Float64Array(16),a.b6(this.fogMatrix,this._fov,this.width/this.height,ue,this.farZ),this.fogMatrix[8]=2*-w.x/this.width,this.fogMatrix[9]=2*w.y/this.height,a.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),a.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),a.b7(this.fogMatrix,this.fogMatrix,this._pitch),a.ad(this.fogMatrix,this.fogMatrix,this.angle),a.J(this.fogMatrix,this.fogMatrix,[-q,-Q,0]),a.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),a.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=a.L(new Float64Array(16),this.labelPlaneMatrix,ee);let Ne=this.width%2/2,Ge=this.height%2/2,lt=Math.cos(this.angle),rt=Math.sin(this.angle),pt=q-Math.round(q)+lt*Ne+rt*Ge,Ht=Q-Math.round(Q)+lt*Ge+rt*Ne,nr=new Float64Array(ee);if(a.J(nr,nr,[pt>.5?pt-1:pt,Ht>.5?Ht-1:Ht,0]),this.alignedModelViewProjectionMatrix=nr,ee=a.as(new Float64Array(16),this.pixelMatrix),!ee)throw new Error("failed to invert matrix");this.pixelMatrixInverse=ee,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;let w=this.pointCoordinate(new a.P(0,0)),q=[w.x*this.worldSize,w.y*this.worldSize,0,1];return a.af(q,q,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){let w=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new a.P(0,w))}getCameraQueryGeometry(w){let q=this.getCameraPoint();if(w.length===1)return[w[0],q];{let Q=q.x,ee=q.y,ue=q.x,Ve=q.y;for(let tt of w)Q=Math.min(Q,tt.x),ee=Math.min(ee,tt.y),ue=Math.max(ue,tt.x),Ve=Math.max(Ve,tt.y);return[new a.P(Q,ee),new a.P(ue,ee),new a.P(ue,Ve),new a.P(Q,Ve),new a.P(Q,ee)]}}lngLatToCameraDepth(w,q){let Q=this.locationCoordinate(w),ee=[Q.x*this.worldSize,Q.y*this.worldSize,q,1];return a.af(ee,ee,this.modelViewProjectionMatrix),ee[2]/ee[3]}}function xs(le,w){let q,Q=!1,ee=null,ue=null,Ve=()=>{ee=null,Q&&(le.apply(ue,q),ee=setTimeout(Ve,w),Q=!1)};return(...tt)=>(Q=!0,ue=this,q=tt,ee||Ve(),ee)}class ks{constructor(w){this._getCurrentHash=()=>{let q=window.location.hash.replace("#","");if(this._hashName){let Q;return q.split("&").map(ee=>ee.split("=")).forEach(ee=>{ee[0]===this._hashName&&(Q=ee)}),(Q&&Q[1]||"").split("/")}return q.split("/")},this._onHashChange=()=>{let q=this._getCurrentHash();if(q.length>=3&&!q.some(Q=>isNaN(Q))){let Q=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(q[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+q[2],+q[1]],zoom:+q[0],bearing:Q,pitch:+(q[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{let q=window.location.href.replace(/(#.*)?$/,this.getHashString());window.history.replaceState(window.history.state,null,q)},this._removeHash=()=>{let q=this._getCurrentHash();if(q.length===0)return;let Q=q.join("/"),ee=Q;ee.split("&").length>0&&(ee=ee.split("&")[0]),this._hashName&&(ee=`${this._hashName}=${Q}`);let ue=window.location.hash.replace(ee,"");ue.startsWith("#&")?ue=ue.slice(0,1)+ue.slice(2):ue==="#"&&(ue="");let Ve=window.location.href.replace(/(#.+)?$/,ue);Ve=Ve.replace("&&","&"),window.history.replaceState(window.history.state,null,Ve)},this._updateHash=xs(this._updateHashUnthrottled,300),this._hashName=w&&encodeURIComponent(w)}addTo(w){return this._map=w,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(w){let q=this._map.getCenter(),Q=Math.round(100*this._map.getZoom())/100,ee=Math.ceil((Q*Math.LN2+Math.log(512/360/.5))/Math.LN10),ue=Math.pow(10,ee),Ve=Math.round(q.lng*ue)/ue,tt=Math.round(q.lat*ue)/ue,mt=this._map.getBearing(),Bt=this._map.getPitch(),ir="";if(ir+=w?`/${Ve}/${tt}/${Q}`:`${Q}/${tt}/${Ve}`,(mt||Bt)&&(ir+="/"+Math.round(10*mt)/10),Bt&&(ir+=`/${Math.round(Bt)}`),this._hashName){let or=this._hashName,kr=!1,Vr=window.location.hash.slice(1).split("&").map(he=>{let Se=he.split("=")[0];return Se===or?(kr=!0,`${Se}=${ir}`):he}).filter(he=>he);return kr||Vr.push(`${or}=${ir}`),`#${Vr.join("&")}`}return`#${ir}`}}let Ea={linearity:.3,easing:a.b8(0,0,.3,1)},Jn=a.e({deceleration:2500,maxSpeed:1400},Ea),Oo=a.e({deceleration:20,maxSpeed:1400},Ea),rl=a.e({deceleration:1e3,maxSpeed:360},Ea),Gs=a.e({deceleration:1e3,maxSpeed:90},Ea);class bs{constructor(w){this._map=w,this.clear()}clear(){this._inertiaBuffer=[]}record(w){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:l.now(),settings:w})}_drainInertiaBuffer(){let w=this._inertiaBuffer,q=l.now();for(;w.length>0&&q-w[0].time>160;)w.shift()}_onMoveEnd(w){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;let q={zoom:0,bearing:0,pitch:0,pan:new a.P(0,0),pinchAround:void 0,around:void 0};for(let{settings:ue}of this._inertiaBuffer)q.zoom+=ue.zoomDelta||0,q.bearing+=ue.bearingDelta||0,q.pitch+=ue.pitchDelta||0,ue.panDelta&&q.pan._add(ue.panDelta),ue.around&&(q.around=ue.around),ue.pinchAround&&(q.pinchAround=ue.pinchAround);let Q=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,ee={};if(q.pan.mag()){let ue=$o(q.pan.mag(),Q,a.e({},Jn,w||{}));ee.offset=q.pan.mult(ue.amount/q.pan.mag()),ee.center=this._map.transform.center,zs(ee,ue)}if(q.zoom){let ue=$o(q.zoom,Q,Oo);ee.zoom=this._map.transform.zoom+ue.amount,zs(ee,ue)}if(q.bearing){let ue=$o(q.bearing,Q,rl);ee.bearing=this._map.transform.bearing+a.ac(ue.amount,-179,179),zs(ee,ue)}if(q.pitch){let ue=$o(q.pitch,Q,Gs);ee.pitch=this._map.transform.pitch+ue.amount,zs(ee,ue)}if(ee.zoom||ee.bearing){let ue=q.pinchAround===void 0?q.around:q.pinchAround;ee.around=ue?this._map.unproject(ue):this._map.getCenter()}return this.clear(),a.e(ee,{noMoveStart:!0})}}function zs(le,w){(!le.duration||le.durationq.unproject(mt)),tt=ue.reduce((mt,Bt,ir,or)=>mt.add(Bt.div(or.length)),new a.P(0,0));super(w,{points:ue,point:tt,lngLats:Ve,lngLat:q.unproject(tt),originalEvent:Q}),this._defaultPrevented=!1}}class _l extends a.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(w,q,Q){super(w,{originalEvent:Q}),this._defaultPrevented=!1}}class Ss{constructor(w,q){this._map=w,this._clickTolerance=q.clickTolerance}reset(){delete this._mousedownPos}wheel(w){return this._firePreventable(new _l(w.type,this._map,w))}mousedown(w,q){return this._mousedownPos=q,this._firePreventable(new Ta(w.type,this._map,w))}mouseup(w){this._map.fire(new Ta(w.type,this._map,w))}click(w,q){this._mousedownPos&&this._mousedownPos.dist(q)>=this._clickTolerance||this._map.fire(new Ta(w.type,this._map,w))}dblclick(w){return this._firePreventable(new Ta(w.type,this._map,w))}mouseover(w){this._map.fire(new Ta(w.type,this._map,w))}mouseout(w){this._map.fire(new Ta(w.type,this._map,w))}touchstart(w){return this._firePreventable(new os(w.type,this._map,w))}touchmove(w){this._map.fire(new os(w.type,this._map,w))}touchend(w){this._map.fire(new os(w.type,this._map,w))}touchcancel(w){this._map.fire(new os(w.type,this._map,w))}_firePreventable(w){if(this._map.fire(w),w.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class po{constructor(w){this._map=w}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(w){this._map.fire(new Ta(w.type,this._map,w))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new Ta("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(w){this._delayContextMenu?this._contextMenuEvent=w:this._ignoreContextMenu||this._map.fire(new Ta(w.type,this._map,w)),this._map.listens("contextmenu")&&w.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class go{constructor(w){this._map=w}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(w){return this.transform.pointLocation(a.P.convert(w),this._map.terrain)}}class ss{constructor(w,q){this._map=w,this._tr=new go(w),this._el=w.getCanvasContainer(),this._container=w.getContainer(),this._clickTolerance=q.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(w,q){this.isEnabled()&&w.shiftKey&&w.button===0&&(f.disableDrag(),this._startPos=this._lastPos=q,this._active=!0)}mousemoveWindow(w,q){if(!this._active)return;let Q=q;if(this._lastPos.equals(Q)||!this._box&&Q.dist(this._startPos)ue.fitScreenCoordinates(Q,ee,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",w)}keydown(w){this._active&&w.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",w))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(f.remove(this._box),this._box=null),f.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(w,q){return this._map.fire(new a.k(w,{originalEvent:q}))}}function qo(le,w){if(le.length!==w.length)throw new Error(`The number of touches and points are not equal - touches ${le.length}, points ${w.length}`);let q={};for(let Q=0;Qthis.numTouches)&&(this.aborted=!0),this.aborted||(this.startTime===void 0&&(this.startTime=w.timeStamp),Q.length===this.numTouches&&(this.centroid=function(ee){let ue=new a.P(0,0);for(let Ve of ee)ue._add(Ve);return ue.div(ee.length)}(q),this.touches=qo(Q,q)))}touchmove(w,q,Q){if(this.aborted||!this.centroid)return;let ee=qo(Q,q);for(let ue in this.touches){let Ve=ee[ue];(!Ve||Ve.dist(this.touches[ue])>30)&&(this.aborted=!0)}}touchend(w,q,Q){if((!this.centroid||w.timeStamp-this.startTime>500)&&(this.aborted=!0),Q.length===0){let ee=!this.aborted&&this.centroid;if(this.reset(),ee)return ee}}}class io{constructor(w){this.singleTap=new zo(w),this.numTaps=w.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(w,q,Q){this.singleTap.touchstart(w,q,Q)}touchmove(w,q,Q){this.singleTap.touchmove(w,q,Q)}touchend(w,q,Q){let ee=this.singleTap.touchend(w,q,Q);if(ee){let ue=w.timeStamp-this.lastTime<500,Ve=!this.lastTap||this.lastTap.dist(ee)<30;if(ue&&Ve||this.reset(),this.count++,this.lastTime=w.timeStamp,this.lastTap=ee,this.count===this.numTaps)return this.reset(),ee}}}class Io{constructor(w){this._tr=new go(w),this._zoomIn=new io({numTouches:1,numTaps:2}),this._zoomOut=new io({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(w,q,Q){this._zoomIn.touchstart(w,q,Q),this._zoomOut.touchstart(w,q,Q)}touchmove(w,q,Q){this._zoomIn.touchmove(w,q,Q),this._zoomOut.touchmove(w,q,Q)}touchend(w,q,Q){let ee=this._zoomIn.touchend(w,q,Q),ue=this._zoomOut.touchend(w,q,Q),Ve=this._tr;return ee?(this._active=!0,w.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:tt=>tt.easeTo({duration:300,zoom:Ve.zoom+1,around:Ve.unproject(ee)},{originalEvent:w})}):ue?(this._active=!0,w.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:tt=>tt.easeTo({duration:300,zoom:Ve.zoom-1,around:Ve.unproject(ue)},{originalEvent:w})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Da{constructor(w){this._enabled=!!w.enable,this._moveStateManager=w.moveStateManager,this._clickTolerance=w.clickTolerance||1,this._moveFunction=w.move,this._activateOnStart=!!w.activateOnStart,w.assignEvents(this),this.reset()}reset(w){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(w)}_move(...w){let q=this._moveFunction(...w);if(q.bearingDelta||q.pitchDelta||q.around||q.panDelta)return this._active=!0,q}dragStart(w,q){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(w)&&(this._moveStateManager.startMove(w),this._lastPoint=q.length?q[0]:q,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(w,q){if(!this.isEnabled())return;let Q=this._lastPoint;if(!Q)return;if(w.preventDefault(),!this._moveStateManager.isValidMoveEvent(w))return void this.reset(w);let ee=q.length?q[0]:q;return!this._moved&&ee.dist(Q){le.mousedown=le.dragStart,le.mousemoveWindow=le.dragMove,le.mouseup=le.dragEnd,le.contextmenu=w=>{w.preventDefault()}},Hs=({enable:le,clickTolerance:w,bearingDegreesPerPixelMoved:q=.8})=>{let Q=new fs({checkCorrectEvent:ee=>f.mouseButton(ee)===0&&ee.ctrlKey||f.mouseButton(ee)===2});return new Da({clickTolerance:w,move:(ee,ue)=>({bearingDelta:(ue.x-ee.x)*q}),moveStateManager:Q,enable:le,assignEvents:el})},Ro=({enable:le,clickTolerance:w,pitchDegreesPerPixelMoved:q=-.5})=>{let Q=new fs({checkCorrectEvent:ee=>f.mouseButton(ee)===0&&ee.ctrlKey||f.mouseButton(ee)===2});return new Da({clickTolerance:w,move:(ee,ue)=>({pitchDelta:(ue.y-ee.y)*q}),moveStateManager:Q,enable:le,assignEvents:el})};class tl{constructor(w,q){this._clickTolerance=w.clickTolerance||1,this._map=q,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new a.P(0,0)}_shouldBePrevented(w){return w<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(w,q,Q){return this._calculateTransform(w,q,Q)}touchmove(w,q,Q){if(this._active){if(!this._shouldBePrevented(Q.length))return w.preventDefault(),this._calculateTransform(w,q,Q);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",w)}}touchend(w,q,Q){this._calculateTransform(w,q,Q),this._active&&this._shouldBePrevented(Q.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(w,q,Q){Q.length>0&&(this._active=!0);let ee=qo(Q,q),ue=new a.P(0,0),Ve=new a.P(0,0),tt=0;for(let Bt in ee){let ir=ee[Bt],or=this._touches[Bt];or&&(ue._add(ir),Ve._add(ir.sub(or)),tt++,ee[Bt]=ir)}if(this._touches=ee,this._shouldBePrevented(tt)||!Ve.mag())return;let mt=Ve.div(tt);return this._sum._add(mt),this._sum.mag()Math.abs(le.x)}class Bs extends Fs{constructor(w){super(),this._currentTouchCount=0,this._map=w}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(w,q,Q){super.touchstart(w,q,Q),this._currentTouchCount=Q.length}_start(w){this._lastPoints=w,Is(w[0].sub(w[1]))&&(this._valid=!1)}_move(w,q,Q){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;let ee=w[0].sub(this._lastPoints[0]),ue=w[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(ee,ue,Q.timeStamp),this._valid?(this._lastPoints=w,this._active=!0,{pitchDelta:(ee.y+ue.y)/2*-.5}):void 0}gestureBeginsVertically(w,q,Q){if(this._valid!==void 0)return this._valid;let ee=w.mag()>=2,ue=q.mag()>=2;if(!ee&&!ue)return;if(!ee||!ue)return this._firstMove===void 0&&(this._firstMove=Q),Q-this._firstMove<100&&void 0;let Ve=w.y>0==q.y>0;return Is(w)&&Is(q)&&Ve}}let At={panStep:100,bearingStep:15,pitchStep:10};class Vt{constructor(w){this._tr=new go(w);let q=At;this._panStep=q.panStep,this._bearingStep=q.bearingStep,this._pitchStep=q.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(w){if(w.altKey||w.ctrlKey||w.metaKey)return;let q=0,Q=0,ee=0,ue=0,Ve=0;switch(w.keyCode){case 61:case 107:case 171:case 187:q=1;break;case 189:case 109:case 173:q=-1;break;case 37:w.shiftKey?Q=-1:(w.preventDefault(),ue=-1);break;case 39:w.shiftKey?Q=1:(w.preventDefault(),ue=1);break;case 38:w.shiftKey?ee=1:(w.preventDefault(),Ve=-1);break;case 40:w.shiftKey?ee=-1:(w.preventDefault(),Ve=1);break;default:return}return this._rotationDisabled&&(Q=0,ee=0),{cameraAnimation:tt=>{let mt=this._tr;tt.easeTo({duration:300,easeId:"keyboardHandler",easing:wr,zoom:q?Math.round(mt.zoom)+q*(w.shiftKey?2:1):mt.zoom,bearing:mt.bearing+Q*this._bearingStep,pitch:mt.pitch+ee*this._pitchStep,offset:[-ue*this._panStep,-Ve*this._panStep],center:mt.center},{originalEvent:w})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function wr(le){return le*(2-le)}let mr=4.000244140625;class Fr{constructor(w,q){this._onTimeout=Q=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(Q)},this._map=w,this._tr=new go(w),this._triggerRenderFrame=q,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(w){this._defaultZoomRate=w}setWheelZoomRate(w){this._wheelZoomRate=w}isEnabled(){return!!this._enabled}isActive(){return!!this._active||this._finishTimeout!==void 0}isZooming(){return!!this._zooming}enable(w){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!w&&w.around==="center")}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(w){return!!this._map.cooperativeGestures.isEnabled()&&!(w.ctrlKey||this._map.cooperativeGestures.isBypassed(w))}wheel(w){if(!this.isEnabled())return;if(this._shouldBePrevented(w))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",w);let q=w.deltaMode===WheelEvent.DOM_DELTA_LINE?40*w.deltaY:w.deltaY,Q=l.now(),ee=Q-(this._lastWheelEventTime||0);this._lastWheelEventTime=Q,q!==0&&q%mr==0?this._type="wheel":q!==0&&Math.abs(q)<4?this._type="trackpad":ee>400?(this._type=null,this._lastValue=q,this._timeout=setTimeout(this._onTimeout,40,w)):this._type||(this._type=Math.abs(ee*q)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,q+=this._lastValue)),w.shiftKey&&q&&(q/=4),this._type&&(this._lastWheelEvent=w,this._delta-=q,this._active||this._start(w)),w.preventDefault()}_start(w){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);let q=f.mousePos(this._map.getCanvas(),w),Q=this._tr;this._around=q.y>Q.transform.height/2-Q.transform.getHorizon()?a.N.convert(this._aroundCenter?Q.center:Q.unproject(q)):a.N.convert(Q.center),this._aroundPoint=Q.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;let w=this._tr.transform;if(this._delta!==0){let mt=this._type==="wheel"&&Math.abs(this._delta)>mr?this._wheelZoomRate:this._defaultZoomRate,Bt=2/(1+Math.exp(-Math.abs(this._delta*mt)));this._delta<0&&Bt!==0&&(Bt=1/Bt);let ir=typeof this._targetZoom=="number"?w.zoomScale(this._targetZoom):w.scale;this._targetZoom=Math.min(w.maxZoom,Math.max(w.minZoom,w.scaleZoom(ir*Bt))),this._type==="wheel"&&(this._startZoom=w.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}let q=typeof this._targetZoom=="number"?this._targetZoom:w.zoom,Q=this._startZoom,ee=this._easing,ue,Ve=!1,tt=l.now()-this._lastWheelEventTime;if(this._type==="wheel"&&Q&&ee&&tt){let mt=Math.min(tt/200,1),Bt=ee(mt);ue=a.y.number(Q,q,Bt),mt<1?this._frameId||(this._frameId=!0):Ve=!0}else ue=q,Ve=!0;return this._active=!0,Ve&&(this._active=!1,this._finishTimeout=setTimeout(()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!Ve,zoomDelta:ue-w.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(w){let q=a.b9;if(this._prevEase){let Q=this._prevEase,ee=(l.now()-Q.start)/Q.duration,ue=Q.easing(ee+.01)-Q.easing(ee),Ve=.27/Math.sqrt(ue*ue+1e-4)*.01,tt=Math.sqrt(.0729-Ve*Ve);q=a.b8(Ve,tt,.25,1)}return this._prevEase={start:l.now(),duration:w,easing:q},q}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class _i{constructor(w,q){this._clickZoom=w,this._tapZoom=q}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class Si{constructor(w){this._tr=new go(w),this.reset()}reset(){this._active=!1}dblclick(w,q){return w.preventDefault(),{cameraAnimation:Q=>{Q.easeTo({duration:300,zoom:this._tr.zoom+(w.shiftKey?-1:1),around:this._tr.unproject(q)},{originalEvent:w})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Ci{constructor(){this._tap=new io({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(w,q,Q){if(!this._swipePoint)if(this._tapTime){let ee=q[0],ue=w.timeStamp-this._tapTime<500,Ve=this._tapPoint.dist(ee)<30;ue&&Ve?Q.length>0&&(this._swipePoint=ee,this._swipeTouch=Q[0].identifier):this.reset()}else this._tap.touchstart(w,q,Q)}touchmove(w,q,Q){if(this._tapTime){if(this._swipePoint){if(Q[0].identifier!==this._swipeTouch)return;let ee=q[0],ue=ee.y-this._swipePoint.y;return this._swipePoint=ee,w.preventDefault(),this._active=!0,{zoomDelta:ue/128}}}else this._tap.touchmove(w,q,Q)}touchend(w,q,Q){if(this._tapTime)this._swipePoint&&Q.length===0&&this.reset();else{let ee=this._tap.touchend(w,q,Q);ee&&(this._tapTime=w.timeStamp,this._tapPoint=ee)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Ki{constructor(w,q,Q){this._el=w,this._mousePan=q,this._touchPan=Q}enable(w){this._inertiaOptions=w||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class Fn{constructor(w,q,Q){this._pitchWithRotate=w.pitchWithRotate,this._mouseRotate=q,this._mousePitch=Q}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class Pi{constructor(w,q,Q,ee){this._el=w,this._touchZoom=q,this._touchRotate=Q,this._tapDragZoom=ee,this._rotationDisabled=!1,this._enabled=!0}enable(w){this._touchZoom.enable(w),this._rotationDisabled||this._touchRotate.enable(w),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}class di{constructor(w,q){this._bypassKey=navigator.userAgent.indexOf("Mac")!==-1?"metaKey":"ctrlKey",this._map=w,this._options=q,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;let w=this._map.getCanvasContainer();w.classList.add("maplibregl-cooperative-gestures"),this._container=f.create("div","maplibregl-cooperative-gesture-screen",w);let q=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");this._bypassKey==="metaKey"&&(q=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));let Q=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),ee=document.createElement("div");ee.className="maplibregl-desktop-message",ee.textContent=q,this._container.appendChild(ee);let ue=document.createElement("div");ue.className="maplibregl-mobile-message",ue.textContent=Q,this._container.appendChild(ue),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(f.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(w){return w[this._bypassKey]}notifyGestureBlocked(w,q){this._enabled&&(this._map.fire(new a.k("cooperativegestureprevented",{gestureType:w,originalEvent:q})),this._container.classList.add("maplibregl-show"),setTimeout(()=>{this._container.classList.remove("maplibregl-show")},100))}}let Li=le=>le.zoom||le.drag||le.pitch||le.rotate;class Mi extends a.k{}function Gn(le){return le.panDelta&&le.panDelta.mag()||le.zoomDelta||le.bearingDelta||le.pitchDelta}class ta{constructor(w,q){this.handleWindowEvent=ee=>{this.handleEvent(ee,`${ee.type}Window`)},this.handleEvent=(ee,ue)=>{if(ee.type==="blur")return void this.stop(!0);this._updatingCamera=!0;let Ve=ee.type==="renderFrame"?void 0:ee,tt={needsRenderFrame:!1},mt={},Bt={},ir=ee.touches,or=ir?this._getMapTouches(ir):void 0,kr=or?f.touchPos(this._map.getCanvas(),or):f.mousePos(this._map.getCanvas(),ee);for(let{handlerName:Se,handler:Ne,allowed:Ge}of this._handlers){if(!Ne.isEnabled())continue;let lt;this._blockedByActive(Bt,Ge,Se)?Ne.reset():Ne[ue||ee.type]&&(lt=Ne[ue||ee.type](ee,kr,or),this.mergeHandlerResult(tt,mt,lt,Se,Ve),lt&<.needsRenderFrame&&this._triggerRenderFrame()),(lt||Ne.isActive())&&(Bt[Se]=Ne)}let Vr={};for(let Se in this._previousActiveHandlers)Bt[Se]||(Vr[Se]=Ve);this._previousActiveHandlers=Bt,(Object.keys(Vr).length||Gn(tt))&&(this._changes.push([tt,mt,Vr]),this._triggerRenderFrame()),(Object.keys(Bt).length||Gn(tt))&&this._map._stop(!0),this._updatingCamera=!1;let{cameraAnimation:he}=tt;he&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],he(this._map))},this._map=w,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new bs(w),this._bearingSnap=q.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(q);let Q=this._el;this._listeners=[[Q,"touchstart",{passive:!0}],[Q,"touchmove",{passive:!1}],[Q,"touchend",void 0],[Q,"touchcancel",void 0],[Q,"mousedown",void 0],[Q,"mousemove",void 0],[Q,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[Q,"mouseover",void 0],[Q,"mouseout",void 0],[Q,"dblclick",void 0],[Q,"click",void 0],[Q,"keydown",{capture:!1}],[Q,"keyup",void 0],[Q,"wheel",{passive:!1}],[Q,"contextmenu",void 0],[window,"blur",void 0]];for(let[ee,ue,Ve]of this._listeners)f.addEventListener(ee,ue,ee===document?this.handleWindowEvent:this.handleEvent,Ve)}destroy(){for(let[w,q,Q]of this._listeners)f.removeEventListener(w,q,w===document?this.handleWindowEvent:this.handleEvent,Q)}_addDefaultHandlers(w){let q=this._map,Q=q.getCanvasContainer();this._add("mapEvent",new Ss(q,w));let ee=q.boxZoom=new ss(q,w);this._add("boxZoom",ee),w.interactive&&w.boxZoom&&ee.enable();let ue=q.cooperativeGestures=new di(q,w.cooperativeGestures);this._add("cooperativeGestures",ue),w.cooperativeGestures&&ue.enable();let Ve=new Io(q),tt=new Si(q);q.doubleClickZoom=new _i(tt,Ve),this._add("tapZoom",Ve),this._add("clickZoom",tt),w.interactive&&w.doubleClickZoom&&q.doubleClickZoom.enable();let mt=new Ci;this._add("tapDragZoom",mt);let Bt=q.touchPitch=new Bs(q);this._add("touchPitch",Bt),w.interactive&&w.touchPitch&&q.touchPitch.enable(w.touchPitch);let ir=Hs(w),or=Ro(w);q.dragRotate=new Fn(w,ir,or),this._add("mouseRotate",ir,["mousePitch"]),this._add("mousePitch",or,["mouseRotate"]),w.interactive&&w.dragRotate&&q.dragRotate.enable();let kr=(({enable:lt,clickTolerance:rt})=>{let pt=new fs({checkCorrectEvent:Ht=>f.mouseButton(Ht)===0&&!Ht.ctrlKey});return new Da({clickTolerance:rt,move:(Ht,nr)=>({around:nr,panDelta:nr.sub(Ht)}),activateOnStart:!0,moveStateManager:pt,enable:lt,assignEvents:el})})(w),Vr=new tl(w,q);q.dragPan=new Ki(Q,kr,Vr),this._add("mousePan",kr),this._add("touchPan",Vr,["touchZoom","touchRotate"]),w.interactive&&w.dragPan&&q.dragPan.enable(w.dragPan);let he=new Rs,Se=new Ms;q.touchZoomRotate=new Pi(Q,Se,he,mt),this._add("touchRotate",he,["touchPan","touchZoom"]),this._add("touchZoom",Se,["touchPan","touchRotate"]),w.interactive&&w.touchZoomRotate&&q.touchZoomRotate.enable(w.touchZoomRotate);let Ne=q.scrollZoom=new Fr(q,()=>this._triggerRenderFrame());this._add("scrollZoom",Ne,["mousePan"]),w.interactive&&w.scrollZoom&&q.scrollZoom.enable(w.scrollZoom);let Ge=q.keyboard=new Vt(q);this._add("keyboard",Ge),w.interactive&&w.keyboard&&q.keyboard.enable(),this._add("blockableMapEvent",new po(q))}_add(w,q,Q){this._handlers.push({handlerName:w,handler:q,allowed:Q}),this._handlersById[w]=q}stop(w){if(!this._updatingCamera){for(let{handler:q}of this._handlers)q.reset();this._inertia.clear(),this._fireEvents({},{},w),this._changes=[]}}isActive(){for(let{handler:w}of this._handlers)if(w.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!Li(this._eventsInProgress)||this.isZooming()}_blockedByActive(w,q,Q){for(let ee in w)if(ee!==Q&&(!q||q.indexOf(ee)<0))return!0;return!1}_getMapTouches(w){let q=[];for(let Q of w)this._el.contains(Q.target)&&q.push(Q);return q}mergeHandlerResult(w,q,Q,ee,ue){if(!Q)return;a.e(w,Q);let Ve={handlerName:ee,originalEvent:Q.originalEvent||ue};Q.zoomDelta!==void 0&&(q.zoom=Ve),Q.panDelta!==void 0&&(q.drag=Ve),Q.pitchDelta!==void 0&&(q.pitch=Ve),Q.bearingDelta!==void 0&&(q.rotate=Ve)}_applyChanges(){let w={},q={},Q={};for(let[ee,ue,Ve]of this._changes)ee.panDelta&&(w.panDelta=(w.panDelta||new a.P(0,0))._add(ee.panDelta)),ee.zoomDelta&&(w.zoomDelta=(w.zoomDelta||0)+ee.zoomDelta),ee.bearingDelta&&(w.bearingDelta=(w.bearingDelta||0)+ee.bearingDelta),ee.pitchDelta&&(w.pitchDelta=(w.pitchDelta||0)+ee.pitchDelta),ee.around!==void 0&&(w.around=ee.around),ee.pinchAround!==void 0&&(w.pinchAround=ee.pinchAround),ee.noInertia&&(w.noInertia=ee.noInertia),a.e(q,ue),a.e(Q,Ve);this._updateMapTransform(w,q,Q),this._changes=[]}_updateMapTransform(w,q,Q){let ee=this._map,ue=ee._getTransformForUpdate(),Ve=ee.terrain;if(!(Gn(w)||Ve&&this._terrainMovement))return this._fireEvents(q,Q,!0);let{panDelta:tt,zoomDelta:mt,bearingDelta:Bt,pitchDelta:ir,around:or,pinchAround:kr}=w;kr!==void 0&&(or=kr),ee._stop(!0),or=or||ee.transform.centerPoint;let Vr=ue.pointLocation(tt?or.sub(tt):or);Bt&&(ue.bearing+=Bt),ir&&(ue.pitch+=ir),mt&&(ue.zoom+=mt),Ve?this._terrainMovement||!q.drag&&!q.zoom?q.drag&&this._terrainMovement?ue.center=ue.pointLocation(ue.centerPoint.sub(tt)):ue.setLocationAtPoint(Vr,or):(this._terrainMovement=!0,this._map._elevationFreeze=!0,ue.setLocationAtPoint(Vr,or)):ue.setLocationAtPoint(Vr,or),ee._applyUpdatedTransform(ue),this._map._update(),w.noInertia||this._inertia.record(w),this._fireEvents(q,Q,!0)}_fireEvents(w,q,Q){let ee=Li(this._eventsInProgress),ue=Li(w),Ve={};for(let or in w){let{originalEvent:kr}=w[or];this._eventsInProgress[or]||(Ve[`${or}start`]=kr),this._eventsInProgress[or]=w[or]}!ee&&ue&&this._fireEvent("movestart",ue.originalEvent);for(let or in Ve)this._fireEvent(or,Ve[or]);ue&&this._fireEvent("move",ue.originalEvent);for(let or in w){let{originalEvent:kr}=w[or];this._fireEvent(or,kr)}let tt={},mt;for(let or in this._eventsInProgress){let{handlerName:kr,originalEvent:Vr}=this._eventsInProgress[or];this._handlersById[kr].isActive()||(delete this._eventsInProgress[or],mt=q[kr]||Vr,tt[`${or}end`]=mt)}for(let or in tt)this._fireEvent(or,tt[or]);let Bt=Li(this._eventsInProgress),ir=(ee||ue)&&!Bt;if(ir&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;let or=this._map._getTransformForUpdate();or.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(or)}if(Q&&ir){this._updatingCamera=!0;let or=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),kr=Vr=>Vr!==0&&-this._bearingSnap{delete this._frameId,this.handleEvent(new Mi("renderFrame",{timeStamp:w})),this._applyChanges()})}_triggerRenderFrame(){this._frameId===void 0&&(this._frameId=this._requestFrame())}}class ya extends a.E{constructor(w,q){super(),this._renderFrameCallback=()=>{let Q=Math.min((l.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(Q)),Q<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=w,this._bearingSnap=q.bearingSnap,this.on("moveend",()=>{delete this._requestedCameraState})}getCenter(){return new a.N(this.transform.center.lng,this.transform.center.lat)}setCenter(w,q){return this.jumpTo({center:w},q)}panBy(w,q,Q){return w=a.P.convert(w).mult(-1),this.panTo(this.transform.center,a.e({offset:w},q),Q)}panTo(w,q,Q){return this.easeTo(a.e({center:w},q),Q)}getZoom(){return this.transform.zoom}setZoom(w,q){return this.jumpTo({zoom:w},q),this}zoomTo(w,q,Q){return this.easeTo(a.e({zoom:w},q),Q)}zoomIn(w,q){return this.zoomTo(this.getZoom()+1,w,q),this}zoomOut(w,q){return this.zoomTo(this.getZoom()-1,w,q),this}getBearing(){return this.transform.bearing}setBearing(w,q){return this.jumpTo({bearing:w},q),this}getPadding(){return this.transform.padding}setPadding(w,q){return this.jumpTo({padding:w},q),this}rotateTo(w,q,Q){return this.easeTo(a.e({bearing:w},q),Q)}resetNorth(w,q){return this.rotateTo(0,a.e({duration:1e3},w),q),this}resetNorthPitch(w,q){return this.easeTo(a.e({bearing:0,pitch:0,duration:1e3},w),q),this}snapToNorth(w,q){return Math.abs(this.getBearing()){if(this._zooming&&(ee.zoom=a.y.number(ue,Ne,fr)),this._rotating&&(ee.bearing=a.y.number(Ve,Bt,fr)),this._pitching&&(ee.pitch=a.y.number(tt,ir,fr)),this._padding&&(ee.interpolatePadding(mt,or,fr),Vr=ee.centerPoint.add(kr)),this.terrain&&!w.freezeElevation&&this._updateElevation(fr),pt)ee.setLocationAtPoint(pt,Ht);else{let Tr=ee.zoomScale(ee.zoom-ue),Ir=Ne>ue?Math.min(2,rt):Math.max(.5,rt),ri=Math.pow(Ir,1-fr),li=ee.unproject(Ge.add(lt.mult(fr*ri)).mult(Tr));ee.setLocationAtPoint(ee.renderWorldCopies?li.wrap():li,Vr)}this._applyUpdatedTransform(ee),this._fireMoveEvents(q)},fr=>{this.terrain&&w.freezeElevation&&this._finalizeElevation(),this._afterEase(q,fr)},w),this}_prepareEase(w,q,Q={}){this._moving=!0,q||Q.moving||this.fire(new a.k("movestart",w)),this._zooming&&!Q.zooming&&this.fire(new a.k("zoomstart",w)),this._rotating&&!Q.rotating&&this.fire(new a.k("rotatestart",w)),this._pitching&&!Q.pitching&&this.fire(new a.k("pitchstart",w))}_prepareElevation(w){this._elevationCenter=w,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(w,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(w){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);let q=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(w<1&&q!==this._elevationTarget){let Q=this._elevationTarget-this._elevationStart;this._elevationStart+=w*(Q-(q-(Q*w+this._elevationStart))/(1-w)),this._elevationTarget=q}this.transform.elevation=a.y.number(this._elevationStart,this._elevationTarget,w)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(w){let q=w.getCameraPosition(),Q=this.terrain.getElevationForLngLatZoom(q.lngLat,w.zoom);if(q.altitudethis._elevateCameraIfInsideTerrain(ee)),this.transformCameraUpdate&&q.push(ee=>this.transformCameraUpdate(ee)),!q.length)return;let Q=w.clone();for(let ee of q){let ue=Q.clone(),{center:Ve,zoom:tt,pitch:mt,bearing:Bt,elevation:ir}=ee(ue);Ve&&(ue.center=Ve),tt!==void 0&&(ue.zoom=tt),mt!==void 0&&(ue.pitch=mt),Bt!==void 0&&(ue.bearing=Bt),ir!==void 0&&(ue.elevation=ir),Q.apply(ue)}this.transform.apply(Q)}_fireMoveEvents(w){this.fire(new a.k("move",w)),this._zooming&&this.fire(new a.k("zoom",w)),this._rotating&&this.fire(new a.k("rotate",w)),this._pitching&&this.fire(new a.k("pitch",w))}_afterEase(w,q){if(this._easeId&&q&&this._easeId===q)return;delete this._easeId;let Q=this._zooming,ee=this._rotating,ue=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,Q&&this.fire(new a.k("zoomend",w)),ee&&this.fire(new a.k("rotateend",w)),ue&&this.fire(new a.k("pitchend",w)),this.fire(new a.k("moveend",w))}flyTo(w,q){var Q;if(!w.essential&&l.prefersReducedMotion){let Ua=a.M(w,["center","zoom","bearing","pitch","around"]);return this.jumpTo(Ua,q)}this.stop(),w=a.e({offset:[0,0],speed:1.2,curve:1.42,easing:a.b9},w);let ee=this._getTransformForUpdate(),ue=ee.zoom,Ve=ee.bearing,tt=ee.pitch,mt=ee.padding,Bt="bearing"in w?this._normalizeBearing(w.bearing,Ve):Ve,ir="pitch"in w?+w.pitch:tt,or="padding"in w?w.padding:ee.padding,kr=a.P.convert(w.offset),Vr=ee.centerPoint.add(kr),he=ee.pointLocation(Vr),{center:Se,zoom:Ne}=ee.getConstrained(a.N.convert(w.center||he),(Q=w.zoom)!==null&&Q!==void 0?Q:ue);this._normalizeCenter(Se,ee);let Ge=ee.zoomScale(Ne-ue),lt=ee.project(he),rt=ee.project(Se).sub(lt),pt=w.curve,Ht=Math.max(ee.width,ee.height),nr=Ht/Ge,fr=rt.mag();if("minZoom"in w){let Ua=a.ac(Math.min(w.minZoom,ue,Ne),ee.minZoom,ee.maxZoom),Fo=Ht/ee.zoomScale(Ua-ue);pt=Math.sqrt(Fo/fr*2)}let Tr=pt*pt;function Ir(Ua){let Fo=(nr*nr-Ht*Ht+(Ua?-1:1)*Tr*Tr*fr*fr)/(2*(Ua?nr:Ht)*Tr*fr);return Math.log(Math.sqrt(Fo*Fo+1)-Fo)}function ri(Ua){return(Math.exp(Ua)-Math.exp(-Ua))/2}function li(Ua){return(Math.exp(Ua)+Math.exp(-Ua))/2}let Ei=Ir(!1),hn=function(Ua){return li(Ei)/li(Ei+pt*Ua)},Zn=function(Ua){return Ht*((li(Ei)*(ri(Fo=Ei+pt*Ua)/li(Fo))-ri(Ei))/Tr)/fr;var Fo},Yn=(Ir(!0)-Ei)/pt;if(Math.abs(fr)<1e-6||!isFinite(Yn)){if(Math.abs(Ht-nr)<1e-6)return this.easeTo(w,q);let Ua=nr0,hn=Fo=>Math.exp(Ua*pt*Fo)}return w.duration="duration"in w?+w.duration:1e3*Yn/("screenSpeed"in w?+w.screenSpeed/pt:+w.speed),w.maxDuration&&w.duration>w.maxDuration&&(w.duration=0),this._zooming=!0,this._rotating=Ve!==Bt,this._pitching=ir!==tt,this._padding=!ee.isPaddingEqual(or),this._prepareEase(q,!1),this.terrain&&this._prepareElevation(Se),this._ease(Ua=>{let Fo=Ua*Yn,vl=1/hn(Fo);ee.zoom=Ua===1?Ne:ue+ee.scaleZoom(vl),this._rotating&&(ee.bearing=a.y.number(Ve,Bt,Ua)),this._pitching&&(ee.pitch=a.y.number(tt,ir,Ua)),this._padding&&(ee.interpolatePadding(mt,or,Ua),Vr=ee.centerPoint.add(kr)),this.terrain&&!w.freezeElevation&&this._updateElevation(Ua);let Us=Ua===1?Se:ee.unproject(lt.add(rt.mult(Zn(Fo))).mult(vl));ee.setLocationAtPoint(ee.renderWorldCopies?Us.wrap():Us,Vr),this._applyUpdatedTransform(ee),this._fireMoveEvents(q)},()=>{this.terrain&&w.freezeElevation&&this._finalizeElevation(),this._afterEase(q)},w),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(w,q){var Q;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){let ee=this._onEaseEnd;delete this._onEaseEnd,ee.call(this,q)}return w||(Q=this.handlers)===null||Q===void 0||Q.stop(!1),this}_ease(w,q,Q){Q.animate===!1||Q.duration===0?(w(1),q()):(this._easeStart=l.now(),this._easeOptions=Q,this._onEaseFrame=w,this._onEaseEnd=q,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(w,q){w=a.b3(w,-180,180);let Q=Math.abs(w-q);return Math.abs(w-360-q)180?-360:Q<-180?360:0}queryTerrainElevation(w){return this.terrain?this.terrain.getElevationForLngLatZoom(a.N.convert(w),this.transform.tileZoom)-this.transform.elevation:null}}let ia={compact:!0,customAttribution:'MapLibre'};class pa{constructor(w=ia){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")))},this._updateData=q=>{!q||q.sourceDataType!=="metadata"&&q.sourceDataType!=="visibility"&&q.dataType!=="style"&&q.type!=="terrain"||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact===!1?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"))},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show")},this.options=w}getDefaultPosition(){return"bottom-right"}onAdd(w){return this._map=w,this._compact=this.options.compact,this._container=f.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=f.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=f.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){f.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(w,q){let Q=this._map._getUIString(`AttributionControl.${q}`);w.title=Q,w.setAttribute("aria-label",Q)}_updateAttributions(){if(!this._map.style)return;let w=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?w=w.concat(this.options.customAttribution.map(ee=>typeof ee!="string"?"":ee)):typeof this.options.customAttribution=="string"&&w.push(this.options.customAttribution)),this._map.style.stylesheet){let ee=this._map.style.stylesheet;this.styleOwner=ee.owner,this.styleId=ee.id}let q=this._map.style.sourceCaches;for(let ee in q){let ue=q[ee];if(ue.used||ue.usedForTerrain){let Ve=ue.getSource();Ve.attribution&&w.indexOf(Ve.attribution)<0&&w.push(Ve.attribution)}}w=w.filter(ee=>String(ee).trim()),w.sort((ee,ue)=>ee.length-ue.length),w=w.filter((ee,ue)=>{for(let Ve=ue+1;Ve=0)return!1;return!0});let Q=w.join(" | ");Q!==this._attribHTML&&(this._attribHTML=Q,w.length?(this._innerContainer.innerHTML=Q,this._container.classList.remove("maplibregl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty"),this._updateCompact(),this._editLink=null)}}class va{constructor(w={}){this._updateCompact=()=>{let q=this._container.children;if(q.length){let Q=q[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact!==!1&&Q.classList.add("maplibregl-compact"):Q.classList.remove("maplibregl-compact")}},this.options=w}getDefaultPosition(){return"bottom-left"}onAdd(w){this._map=w,this._compact=this.options&&this.options.compact,this._container=f.create("div","maplibregl-ctrl");let q=f.create("a","maplibregl-ctrl-logo");return q.target="_blank",q.rel="noopener nofollow",q.href="https://maplibre.org/",q.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),q.setAttribute("rel","noopener nofollow"),this._container.appendChild(q),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){f.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}}class zn{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(w){let q=++this._id;return this._queue.push({callback:w,id:q,cancelled:!1}),q}remove(w){let q=this._currentlyRunning,Q=q?this._queue.concat(q):this._queue;for(let ee of Q)if(ee.id===w)return void(ee.cancelled=!0)}run(w=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");let q=this._currentlyRunning=this._queue;this._queue=[];for(let Q of q)if(!Q.cancelled&&(Q.callback(w),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var is=a.Y([{name:"a_pos3d",type:"Int16",components:3}]);class Cs extends a.E{constructor(w){super(),this.sourceCache=w,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,w.usedForTerrain=!0,w.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(w,q){this.sourceCache.update(w,q),this._renderableTilesKeys=[];let Q={};for(let ee of w.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:q}))Q[ee.key]=!0,this._renderableTilesKeys.push(ee.key),this._tiles[ee.key]||(ee.posMatrix=new Float64Array(16),a.aP(ee.posMatrix,0,a.X,0,a.X,0,1),this._tiles[ee.key]=new vt(ee,this.tileSize));for(let ee in this._tiles)Q[ee]||delete this._tiles[ee]}freeRtt(w){for(let q in this._tiles){let Q=this._tiles[q];(!w||Q.tileID.equals(w)||Q.tileID.isChildOf(w)||w.isChildOf(Q.tileID))&&(Q.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map(w=>this.getTileByID(w))}getTileByID(w){return this._tiles[w]}getTerrainCoords(w){let q={};for(let Q of this._renderableTilesKeys){let ee=this._tiles[Q].tileID;if(ee.canonical.equals(w.canonical)){let ue=w.clone();ue.posMatrix=new Float64Array(16),a.aP(ue.posMatrix,0,a.X,0,a.X,0,1),q[Q]=ue}else if(ee.canonical.isChildOf(w.canonical)){let ue=w.clone();ue.posMatrix=new Float64Array(16);let Ve=ee.canonical.z-w.canonical.z,tt=ee.canonical.x-(ee.canonical.x>>Ve<>Ve<>Ve;a.aP(ue.posMatrix,0,Bt,0,Bt,0,1),a.J(ue.posMatrix,ue.posMatrix,[-tt*Bt,-mt*Bt,0]),q[Q]=ue}else if(w.canonical.isChildOf(ee.canonical)){let ue=w.clone();ue.posMatrix=new Float64Array(16);let Ve=w.canonical.z-ee.canonical.z,tt=w.canonical.x-(w.canonical.x>>Ve<>Ve<>Ve;a.aP(ue.posMatrix,0,a.X,0,a.X,0,1),a.J(ue.posMatrix,ue.posMatrix,[tt*Bt,mt*Bt,0]),a.K(ue.posMatrix,ue.posMatrix,[1/2**Ve,1/2**Ve,0]),q[Q]=ue}}return q}getSourceTile(w,q){let Q=this.sourceCache._source,ee=w.overscaledZ-this.deltaZoom;if(ee>Q.maxzoom&&(ee=Q.maxzoom),ee=Q.minzoom&&(!ue||!ue.dem);)ue=this.sourceCache.getTileByID(w.scaledTo(ee--).key);return ue}tilesAfterTime(w=Date.now()){return Object.values(this._tiles).filter(q=>q.timeAdded>=w)}}class Ks{constructor(w,q,Q){this.painter=w,this.sourceCache=new Cs(q),this.options=Q,this.exaggeration=typeof Q.exaggeration=="number"?Q.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(w,q,Q,ee=a.X){var ue;if(!(q>=0&&q=0&&Qw.canonical.z&&(w.canonical.z>=ee?ue=w.canonical.z-ee:a.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));let Ve=w.canonical.x-(w.canonical.x>>ue<>ue<>8<<4|ue>>8,q[Ve+3]=0;let Q=new a.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(q.buffer)),ee=new m(w,Q,w.gl.RGBA,{premultiply:!1});return ee.bind(w.gl.NEAREST,w.gl.CLAMP_TO_EDGE),this._coordsTexture=ee,ee}pointCoordinate(w){this.painter.maybeDrawDepthAndCoords(!0);let q=new Uint8Array(4),Q=this.painter.context,ee=Q.gl,ue=Math.round(w.x*this.painter.pixelRatio/devicePixelRatio),Ve=Math.round(w.y*this.painter.pixelRatio/devicePixelRatio),tt=Math.round(this.painter.height/devicePixelRatio);Q.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),ee.readPixels(ue,tt-Ve-1,1,1,ee.RGBA,ee.UNSIGNED_BYTE,q),Q.bindFramebuffer.set(null);let mt=q[0]+(q[2]>>4<<8),Bt=q[1]+((15&q[2])<<8),ir=this.coordsIndex[255-q[3]],or=ir&&this.sourceCache.getTileByID(ir);if(!or)return null;let kr=this._coordsTextureSize,Vr=(1<w.id!==q),this._recentlyUsed.push(w.id)}stampObject(w){w.stamp=++this._stamp}getOrCreateFreeObject(){for(let q of this._recentlyUsed)if(!this._objects[q].inUse)return this._objects[q];if(this._objects.length>=this._size)throw new Error("No free RenderPool available, call freeAllObjects() required!");let w=this._createObject(this._objects.length);return this._objects.push(w),w}freeObject(w){w.inUse=!1}freeAllObjects(){for(let w of this._objects)this.freeObject(w)}isFull(){return!(this._objects.length!w.inUse)===!1}}let xl={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class Bl{constructor(w,q){this.painter=w,this.terrain=q,this.pool=new dl(w.context,30,q.sourceCache.tileSize*q.qualityFactor)}destruct(){this.pool.destruct()}getTexture(w){return this.pool.getObjectForId(w.rtt[this._stacks.length-1].id).texture}prepareForRender(w,q){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=w._order.filter(Q=>!w._layers[Q].isHidden(q)),this._coordsDescendingInv={};for(let Q in w.sourceCaches){this._coordsDescendingInv[Q]={};let ee=w.sourceCaches[Q].getVisibleCoordinates();for(let ue of ee){let Ve=this.terrain.sourceCache.getTerrainCoords(ue);for(let tt in Ve)this._coordsDescendingInv[Q][tt]||(this._coordsDescendingInv[Q][tt]=[]),this._coordsDescendingInv[Q][tt].push(Ve[tt])}}this._coordsDescendingInvStr={};for(let Q of w._order){let ee=w._layers[Q],ue=ee.source;if(xl[ee.type]&&!this._coordsDescendingInvStr[ue]){this._coordsDescendingInvStr[ue]={};for(let Ve in this._coordsDescendingInv[ue])this._coordsDescendingInvStr[ue][Ve]=this._coordsDescendingInv[ue][Ve].map(tt=>tt.key).sort().join()}}for(let Q of this._renderableTiles)for(let ee in this._coordsDescendingInvStr){let ue=this._coordsDescendingInvStr[ee][Q.tileID.key];ue&&ue!==Q.rttCoords[ee]&&(Q.rtt=[])}}renderLayer(w){if(w.isHidden(this.painter.transform.zoom))return!1;let q=w.type,Q=this.painter,ee=this._renderableLayerIds[this._renderableLayerIds.length-1]===w.id;if(xl[q]&&(this._prevType&&xl[this._prevType]||this._stacks.push([]),this._prevType=q,this._stacks[this._stacks.length-1].push(w.id),!ee))return!0;if(xl[this._prevType]||xl[q]&&ee){this._prevType=q;let ue=this._stacks.length-1,Ve=this._stacks[ue]||[];for(let tt of this._renderableTiles){if(this.pool.isFull()&&(as(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(tt),tt.rtt[ue]){let Bt=this.pool.getObjectForId(tt.rtt[ue].id);if(Bt.stamp===tt.rtt[ue].stamp){this.pool.useObject(Bt);continue}}let mt=this.pool.getOrCreateFreeObject();this.pool.useObject(mt),this.pool.stampObject(mt),tt.rtt[ue]={id:mt.id,stamp:mt.stamp},Q.context.bindFramebuffer.set(mt.fbo.framebuffer),Q.context.clear({color:a.aM.transparent,stencil:0}),Q.currentStencilSource=void 0;for(let Bt=0;Bt{le.touchstart=le.dragStart,le.touchmoveWindow=le.dragMove,le.touchend=le.dragEnd},ja={showCompass:!0,showZoom:!0,visualizePitch:!1};class ns{constructor(w,q,Q=!1){this.mousedown=Ve=>{this.startMouse(a.e({},Ve,{ctrlKey:!0,preventDefault:()=>Ve.preventDefault()}),f.mousePos(this.element,Ve)),f.addEventListener(window,"mousemove",this.mousemove),f.addEventListener(window,"mouseup",this.mouseup)},this.mousemove=Ve=>{this.moveMouse(Ve,f.mousePos(this.element,Ve))},this.mouseup=Ve=>{this.mouseRotate.dragEnd(Ve),this.mousePitch&&this.mousePitch.dragEnd(Ve),this.offTemp()},this.touchstart=Ve=>{Ve.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=f.touchPos(this.element,Ve.targetTouches)[0],this.startTouch(Ve,this._startPos),f.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),f.addEventListener(window,"touchend",this.touchend))},this.touchmove=Ve=>{Ve.targetTouches.length!==1?this.reset():(this._lastPos=f.touchPos(this.element,Ve.targetTouches)[0],this.moveTouch(Ve,this._lastPos))},this.touchend=Ve=>{Ve.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()},this._clickTolerance=10;let ee=w.dragRotate._mouseRotate.getClickTolerance(),ue=w.dragRotate._mousePitch.getClickTolerance();this.element=q,this.mouseRotate=Hs({clickTolerance:ee,enable:!0}),this.touchRotate=(({enable:Ve,clickTolerance:tt,bearingDegreesPerPixelMoved:mt=.8})=>{let Bt=new cl;return new Da({clickTolerance:tt,move:(ir,or)=>({bearingDelta:(or.x-ir.x)*mt}),moveStateManager:Bt,enable:Ve,assignEvents:Ul})})({clickTolerance:ee,enable:!0}),this.map=w,Q&&(this.mousePitch=Ro({clickTolerance:ue,enable:!0}),this.touchPitch=(({enable:Ve,clickTolerance:tt,pitchDegreesPerPixelMoved:mt=-.5})=>{let Bt=new cl;return new Da({clickTolerance:tt,move:(ir,or)=>({pitchDelta:(or.y-ir.y)*mt}),moveStateManager:Bt,enable:Ve,assignEvents:Ul})})({clickTolerance:ue,enable:!0})),f.addEventListener(q,"mousedown",this.mousedown),f.addEventListener(q,"touchstart",this.touchstart,{passive:!1}),f.addEventListener(q,"touchcancel",this.reset)}startMouse(w,q){this.mouseRotate.dragStart(w,q),this.mousePitch&&this.mousePitch.dragStart(w,q),f.disableDrag()}startTouch(w,q){this.touchRotate.dragStart(w,q),this.touchPitch&&this.touchPitch.dragStart(w,q),f.disableDrag()}moveMouse(w,q){let Q=this.map,{bearingDelta:ee}=this.mouseRotate.dragMove(w,q)||{};if(ee&&Q.setBearing(Q.getBearing()+ee),this.mousePitch){let{pitchDelta:ue}=this.mousePitch.dragMove(w,q)||{};ue&&Q.setPitch(Q.getPitch()+ue)}}moveTouch(w,q){let Q=this.map,{bearingDelta:ee}=this.touchRotate.dragMove(w,q)||{};if(ee&&Q.setBearing(Q.getBearing()+ee),this.touchPitch){let{pitchDelta:ue}=this.touchPitch.dragMove(w,q)||{};ue&&Q.setPitch(Q.getPitch()+ue)}}off(){let w=this.element;f.removeEventListener(w,"mousedown",this.mousedown),f.removeEventListener(w,"touchstart",this.touchstart,{passive:!1}),f.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),f.removeEventListener(window,"touchend",this.touchend),f.removeEventListener(w,"touchcancel",this.reset),this.offTemp()}offTemp(){f.enableDrag(),f.removeEventListener(window,"mousemove",this.mousemove),f.removeEventListener(window,"mouseup",this.mouseup),f.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),f.removeEventListener(window,"touchend",this.touchend)}}let Js;function cs(le,w,q){let Q=new a.N(le.lng,le.lat);if(le=new a.N(le.lng,le.lat),w){let ee=new a.N(le.lng-360,le.lat),ue=new a.N(le.lng+360,le.lat),Ve=q.locationPoint(le).distSqr(w);q.locationPoint(ee).distSqr(w)180;){let ee=q.locationPoint(le);if(ee.x>=0&&ee.y>=0&&ee.x<=q.width&&ee.y<=q.height)break;le.lng>q.center.lng?le.lng-=360:le.lng+=360}return le.lng!==Q.lng&&q.locationPoint(le).y>q.height/2-q.getHorizon()?le:Q}let sl={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function ll(le,w,q){let Q=le.classList;for(let ee in sl)Q.remove(`maplibregl-${q}-anchor-${ee}`);Q.add(`maplibregl-${q}-anchor-${w}`)}class il extends a.E{constructor(w){if(super(),this._onKeyPress=q=>{let Q=q.code,ee=q.charCode||q.keyCode;Q!=="Space"&&Q!=="Enter"&&ee!==32&&ee!==13||this.togglePopup()},this._onMapClick=q=>{let Q=q.originalEvent.target,ee=this._element;this._popup&&(Q===ee||ee.contains(Q))&&this.togglePopup()},this._update=q=>{var Q;if(!this._map)return;let ee=this._map.loaded()&&!this._map.isMoving();((q==null?void 0:q.type)==="terrain"||(q==null?void 0:q.type)==="render"&&!ee)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?cs(this._lngLat,this._flatPos,this._map.transform):(Q=this._lngLat)===null||Q===void 0?void 0:Q.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let ue="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?ue=`rotateZ(${this._rotation}deg)`:this._rotationAlignment==="map"&&(ue=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let Ve="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?Ve="rotateX(0deg)":this._pitchAlignment==="map"&&(Ve=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||q&&q.type!=="moveend"||(this._pos=this._pos.round()),f.setTransform(this._element,`${sl[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${Ve} ${ue}`),l.frameAsync(new AbortController).then(()=>{this._updateOpacity(q&&q.type==="moveend")}).catch(()=>{})},this._onMove=q=>{if(!this._isDragging){let Q=this._clickTolerance||this._map._clickTolerance;this._isDragging=q.point.dist(this._pointerdownPos)>=Q}this._isDragging&&(this._pos=q.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new a.k("dragstart"))),this.fire(new a.k("drag")))},this._onUp=()=>{this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new a.k("dragend")),this._state="inactive"},this._addDragHandler=q=>{this._element.contains(q.originalEvent.target)&&(q.preventDefault(),this._positionDelta=q.point.sub(this._pos).add(this._offset),this._pointerdownPos=q.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},this._anchor=w&&w.anchor||"center",this._color=w&&w.color||"#3FB1CE",this._scale=w&&w.scale||1,this._draggable=w&&w.draggable||!1,this._clickTolerance=w&&w.clickTolerance||0,this._subpixelPositioning=w&&w.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=w&&w.rotation||0,this._rotationAlignment=w&&w.rotationAlignment||"auto",this._pitchAlignment=w&&w.pitchAlignment&&w.pitchAlignment!=="auto"?w.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(w==null?void 0:w.opacity,w==null?void 0:w.opacityWhenCovered),w&&w.element)this._element=w.element,this._offset=a.P.convert(w&&w.offset||[0,0]);else{this._defaultMarker=!0,this._element=f.create("div");let q=f.createNS("http://www.w3.org/2000/svg","svg"),Q=41,ee=27;q.setAttributeNS(null,"display","block"),q.setAttributeNS(null,"height",`${Q}px`),q.setAttributeNS(null,"width",`${ee}px`),q.setAttributeNS(null,"viewBox",`0 0 ${ee} ${Q}`);let ue=f.createNS("http://www.w3.org/2000/svg","g");ue.setAttributeNS(null,"stroke","none"),ue.setAttributeNS(null,"stroke-width","1"),ue.setAttributeNS(null,"fill","none"),ue.setAttributeNS(null,"fill-rule","evenodd");let Ve=f.createNS("http://www.w3.org/2000/svg","g");Ve.setAttributeNS(null,"fill-rule","nonzero");let tt=f.createNS("http://www.w3.org/2000/svg","g");tt.setAttributeNS(null,"transform","translate(3.0, 29.0)"),tt.setAttributeNS(null,"fill","#000000");let mt=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(let Ge of mt){let lt=f.createNS("http://www.w3.org/2000/svg","ellipse");lt.setAttributeNS(null,"opacity","0.04"),lt.setAttributeNS(null,"cx","10.5"),lt.setAttributeNS(null,"cy","5.80029008"),lt.setAttributeNS(null,"rx",Ge.rx),lt.setAttributeNS(null,"ry",Ge.ry),tt.appendChild(lt)}let Bt=f.createNS("http://www.w3.org/2000/svg","g");Bt.setAttributeNS(null,"fill",this._color);let ir=f.createNS("http://www.w3.org/2000/svg","path");ir.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),Bt.appendChild(ir);let or=f.createNS("http://www.w3.org/2000/svg","g");or.setAttributeNS(null,"opacity","0.25"),or.setAttributeNS(null,"fill","#000000");let kr=f.createNS("http://www.w3.org/2000/svg","path");kr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),or.appendChild(kr);let Vr=f.createNS("http://www.w3.org/2000/svg","g");Vr.setAttributeNS(null,"transform","translate(6.0, 7.0)"),Vr.setAttributeNS(null,"fill","#FFFFFF");let he=f.createNS("http://www.w3.org/2000/svg","g");he.setAttributeNS(null,"transform","translate(8.0, 8.0)");let Se=f.createNS("http://www.w3.org/2000/svg","circle");Se.setAttributeNS(null,"fill","#000000"),Se.setAttributeNS(null,"opacity","0.25"),Se.setAttributeNS(null,"cx","5.5"),Se.setAttributeNS(null,"cy","5.5"),Se.setAttributeNS(null,"r","5.4999962");let Ne=f.createNS("http://www.w3.org/2000/svg","circle");Ne.setAttributeNS(null,"fill","#FFFFFF"),Ne.setAttributeNS(null,"cx","5.5"),Ne.setAttributeNS(null,"cy","5.5"),Ne.setAttributeNS(null,"r","5.4999962"),he.appendChild(Se),he.appendChild(Ne),Ve.appendChild(tt),Ve.appendChild(Bt),Ve.appendChild(or),Ve.appendChild(Vr),Ve.appendChild(he),q.appendChild(Ve),q.setAttributeNS(null,"height",Q*this._scale+"px"),q.setAttributeNS(null,"width",ee*this._scale+"px"),this._element.appendChild(q),this._offset=a.P.convert(w&&w.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",q=>{q.preventDefault()}),this._element.addEventListener("mousedown",q=>{q.preventDefault()}),ll(this._element,this._anchor,"marker"),w&&w.className)for(let q of w.className.split(" "))this._element.classList.add(q);this._popup=null}addTo(w){return this.remove(),this._map=w,this._element.setAttribute("aria-label",w._getUIString("Marker.Title")),w.getCanvasContainer().appendChild(this._element),w.on("move",this._update),w.on("moveend",this._update),w.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),f.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(w){return this._lngLat=a.N.convert(w),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(w){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),w){if(!("offset"in w.options)){let ee=Math.abs(13.5)/Math.SQRT2;w.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[ee,-1*(38.1-13.5+ee)],"bottom-right":[-ee,-1*(38.1-13.5+ee)],left:[13.5,-1*(38.1-13.5)],right:[-13.5,-1*(38.1-13.5)]}:this._offset}this._popup=w,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(w){return this._subpixelPositioning=w,this}getPopup(){return this._popup}togglePopup(){let w=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:w?(w.isOpen()?w.remove():(w.setLngLat(this._lngLat),w.addTo(this._map)),this):this}_updateOpacity(w=!1){var q,Q;if(!(!((q=this._map)===null||q===void 0)&&q.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(w)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout(()=>{this._opacityTimeout=null},100)}let ee=this._map,ue=ee.terrain.depthAtPoint(this._pos),Ve=ee.terrain.getElevationForLngLatZoom(this._lngLat,ee.transform.tileZoom);if(ee.transform.lngLatToCameraDepth(this._lngLat,Ve)-ue<.006)return void(this._element.style.opacity=this._opacity);let tt=-this._offset.y/ee.transform._pixelPerMeter,mt=Math.sin(ee.getPitch()*Math.PI/180)*tt,Bt=ee.terrain.depthAtPoint(new a.P(this._pos.x,this._pos.y-this._offset.y)),ir=ee.transform.lngLatToCameraDepth(this._lngLat,Ve+mt)-Bt>.006;!((Q=this._popup)===null||Q===void 0)&&Q.isOpen()&&ir&&this._popup.remove(),this._element.style.opacity=ir?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(w){return this._offset=a.P.convert(w),this._update(),this}addClassName(w){this._element.classList.add(w)}removeClassName(w){this._element.classList.remove(w)}toggleClassName(w){return this._element.classList.toggle(w)}setDraggable(w){return this._draggable=!!w,this._map&&(w?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(w){return this._rotation=w||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(w){return this._rotationAlignment=w||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(w){return this._pitchAlignment=w&&w!=="auto"?w:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(w,q){return w===void 0&&q===void 0&&(this._opacity="1",this._opacityWhenCovered="0.2"),w!==void 0&&(this._opacity=w),q!==void 0&&(this._opacityWhenCovered=q),this._map&&this._updateOpacity(!0),this}}let zl={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},Ml=0,Rl=!1,Tl={maxWidth:100,unit:"metric"};function Ll(le,w,q){let Q=q&&q.maxWidth||100,ee=le._container.clientHeight/2,ue=le.unproject([0,ee]),Ve=le.unproject([Q,ee]),tt=ue.distanceTo(Ve);if(q&&q.unit==="imperial"){let mt=3.2808*tt;mt>5280?ms(w,Q,mt/5280,le._getUIString("ScaleControl.Miles")):ms(w,Q,mt,le._getUIString("ScaleControl.Feet"))}else q&&q.unit==="nautical"?ms(w,Q,tt/1852,le._getUIString("ScaleControl.NauticalMiles")):tt>=1e3?ms(w,Q,tt/1e3,le._getUIString("ScaleControl.Kilometers")):ms(w,Q,tt,le._getUIString("ScaleControl.Meters"))}function ms(le,w,q,Q){let ee=function(ue){let Ve=Math.pow(10,`${Math.floor(ue)}`.length-1),tt=ue/Ve;return tt=tt>=10?10:tt>=5?5:tt>=3?3:tt>=2?2:tt>=1?1:function(mt){let Bt=Math.pow(10,Math.ceil(-Math.log(mt)/Math.LN10));return Math.round(mt*Bt)/Bt}(tt),Ve*tt}(q);le.style.width=w*(ee/q)+"px",le.innerHTML=`${ee} ${Q}`}let Os={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},Xl=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function Vl(le){if(le){if(typeof le=="number"){let w=Math.round(Math.abs(le)/Math.SQRT2);return{center:new a.P(0,0),top:new a.P(0,le),"top-left":new a.P(w,w),"top-right":new a.P(-w,w),bottom:new a.P(0,-le),"bottom-left":new a.P(w,-w),"bottom-right":new a.P(-w,-w),left:new a.P(le,0),right:new a.P(-le,0)}}if(le instanceof a.P||Array.isArray(le)){let w=a.P.convert(le);return{center:w,top:w,"top-left":w,"top-right":w,bottom:w,"bottom-left":w,"bottom-right":w,left:w,right:w}}return{center:a.P.convert(le.center||[0,0]),top:a.P.convert(le.top||[0,0]),"top-left":a.P.convert(le["top-left"]||[0,0]),"top-right":a.P.convert(le["top-right"]||[0,0]),bottom:a.P.convert(le.bottom||[0,0]),"bottom-left":a.P.convert(le["bottom-left"]||[0,0]),"bottom-right":a.P.convert(le["bottom-right"]||[0,0]),left:a.P.convert(le.left||[0,0]),right:a.P.convert(le.right||[0,0])}}return Vl(new a.P(0,0))}let Nl=o;i.AJAXError=a.bh,i.Evented=a.E,i.LngLat=a.N,i.MercatorCoordinate=a.Z,i.Point=a.P,i.addProtocol=a.bi,i.config=a.a,i.removeProtocol=a.bj,i.AttributionControl=pa,i.BoxZoomHandler=ss,i.CanvasSource=St,i.CooperativeGesturesHandler=di,i.DoubleClickZoomHandler=_i,i.DragPanHandler=Ki,i.DragRotateHandler=Fn,i.EdgeInsets=Vo,i.FullscreenControl=class extends a.E{constructor(le={}){super(),this._onFullscreenChange=()=>{var w;let q=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;!((w=q==null?void 0:q.shadowRoot)===null||w===void 0)&&w.fullscreenElement;)q=q.shadowRoot.fullscreenElement;q===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,le&&le.container&&(le.container instanceof HTMLElement?this._container=le.container:a.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(le){return this._map=le,this._container||(this._container=this._map.getContainer()),this._controlContainer=f.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){f.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){let le=this._fullscreenButton=f.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);f.create("span","maplibregl-ctrl-icon",le).setAttribute("aria-hidden","true"),le.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){let le=this._getTitle();this._fullscreenButton.setAttribute("aria-label",le),this._fullscreenButton.title=le}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new a.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new a.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},i.GeoJSONSource=at,i.GeolocateControl=class extends a.E{constructor(le){super(),this._onSuccess=w=>{if(this._map){if(this._isOutOfMapMaxBounds(w))return this._setErrorState(),this.fire(new a.k("outofmaxbounds",w)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=w,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(w),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(w),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new a.k("geolocate",w)),this._finish()}},this._updateCamera=w=>{let q=new a.N(w.coords.longitude,w.coords.latitude),Q=w.coords.accuracy,ee=this._map.getBearing(),ue=a.e({bearing:ee},this.options.fitBoundsOptions),Ve=ce.fromLngLat(q,Q);this._map.fitBounds(Ve,ue,{geolocateSource:!0})},this._updateMarker=w=>{if(w){let q=new a.N(w.coords.longitude,w.coords.latitude);this._accuracyCircleMarker.setLngLat(q).addTo(this._map),this._userLocationDotMarker.setLngLat(q).addTo(this._map),this._accuracy=w.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=w=>{if(this._map){if(this.options.trackUserLocation)if(w.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;let q=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=q,this._geolocateButton.setAttribute("aria-label",q),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(w.code===3&&Rl)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new a.k("error",w)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",w=>w.preventDefault()),this._geolocateButton=f.create("button","maplibregl-ctrl-geolocate",this._container),f.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=w=>{if(this._map){if(w===!1){a.w("Geolocation support is not available so the GeolocateControl will be disabled.");let q=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=q,this._geolocateButton.setAttribute("aria-label",q)}else{let q=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=q,this._geolocateButton.setAttribute("aria-label",q)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=f.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new il({element:this._dotElement}),this._circleElement=f.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new il({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",()=>this.trigger()),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",q=>{q.geolocateSource||this._watchState!=="ACTIVE_LOCK"||q.originalEvent&&q.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new a.k("trackuserlocationend")),this.fire(new a.k("userlocationlostfocus")))})}},this.options=a.e({},zl,le)}onAdd(le){return this._map=le,this._container=f.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return a._(this,arguments,void 0,function*(w=!1){if(Js!==void 0&&!w)return Js;if(window.navigator.permissions===void 0)return Js=!!window.navigator.geolocation,Js;try{Js=(yield window.navigator.permissions.query({name:"geolocation"})).state!=="denied"}catch(q){Js=!!window.navigator.geolocation}return Js})}().then(w=>this._finishSetupUI(w)),this._container}onRemove(){this._geolocationWatchID!==void 0&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),f.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,Ml=0,Rl=!1}_isOutOfMapMaxBounds(le){let w=this._map.getMaxBounds(),q=le.coords;return w&&(q.longitudew.getEast()||q.latitudew.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){let le=this._map.getBounds(),w=le.getSouthEast(),q=le.getNorthEast(),Q=w.distanceTo(q),ee=Math.ceil(this._accuracy/(Q/this._map._container.clientHeight)*2);this._circleElement.style.width=`${ee}px`,this._circleElement.style.height=`${ee}px`}trigger(){if(!this._setup)return a.w("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new a.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Ml--,Rl=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new a.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new a.k("trackuserlocationstart")),this.fire(new a.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let le;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),Ml++,Ml>1?(le={maximumAge:6e5,timeout:0},Rl=!0):(le=this.options.positionOptions,Rl=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,le)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},i.Hash=ks,i.ImageSource=Ct,i.KeyboardHandler=Vt,i.LngLatBounds=ce,i.LogoControl=va,i.Map=class extends ya{constructor(le){a.bf.mark(a.bg.create);let w=Object.assign(Object.assign({},Zl),le);if(w.minZoom!=null&&w.maxZoom!=null&&w.minZoom>w.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(w.minPitch!=null&&w.maxPitch!=null&&w.minPitch>w.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(w.minPitch!=null&&w.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(w.maxPitch!=null&&w.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new Lo(w.minZoom,w.maxZoom,w.minPitch,w.maxPitch,w.renderWorldCopies),{bearingSnap:w.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new zn,this._controls=[],this._mapId=a.a4(),this._contextLost=q=>{q.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new a.k("webglcontextlost",{originalEvent:q}))},this._contextRestored=q=>{this._setupPainter(),this.resize(),this._update(),this.fire(new a.k("webglcontextrestored",{originalEvent:q}))},this._onMapScroll=q=>{if(q.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=w.interactive,this._maxTileCacheSize=w.maxTileCacheSize,this._maxTileCacheZoomLevels=w.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=w.failIfMajorPerformanceCaveat===!0,this._preserveDrawingBuffer=w.preserveDrawingBuffer===!0,this._antialias=w.antialias===!0,this._trackResize=w.trackResize===!0,this._bearingSnap=w.bearingSnap,this._refreshExpiredTiles=w.refreshExpiredTiles===!0,this._fadeDuration=w.fadeDuration,this._crossSourceCollisions=w.crossSourceCollisions===!0,this._collectResourceTiming=w.collectResourceTiming===!0,this._locale=Object.assign(Object.assign({},bl),w.locale),this._clickTolerance=w.clickTolerance,this._overridePixelRatio=w.pixelRatio,this._maxCanvasSize=w.maxCanvasSize,this.transformCameraUpdate=w.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=w.cancelPendingTileRequestsWhileZooming===!0,this._imageQueueHandle=v.addThrottleControl(()=>this.isMoving()),this._requestManager=new k(w.transformRequest),typeof w.container=="string"){if(this._container=document.getElementById(w.container),!this._container)throw new Error(`Container '${w.container}' not found.`)}else{if(!(w.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=w.container}if(w.maxBounds&&this.setMaxBounds(w.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",()=>this._update(!1)).on("moveend",()=>this._update(!1)).on("zoom",()=>this._update(!0)).on("terrain",()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)}).once("idle",()=>{this._idleTriggered=!0}),typeof window!="undefined"){addEventListener("online",this._onWindowOnline,!1);let q=!1,Q=xs(ee=>{this._trackResize&&!this._removed&&(this.resize(ee),this.redraw())},50);this._resizeObserver=new ResizeObserver(ee=>{q?Q(ee):q=!0}),this._resizeObserver.observe(this._container)}this.handlers=new ta(this,w),this._hash=w.hash&&new ks(typeof w.hash=="string"&&w.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:w.center,zoom:w.zoom,bearing:w.bearing,pitch:w.pitch}),w.bounds&&(this.resize(),this.fitBounds(w.bounds,a.e({},w.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=w.localIdeographFontFamily,this._validateStyle=w.validateStyle,w.style&&this.setStyle(w.style,{localIdeographFontFamily:w.localIdeographFontFamily}),w.attributionControl&&this.addControl(new pa(typeof w.attributionControl=="boolean"?void 0:w.attributionControl)),w.maplibreLogo&&this.addControl(new va,w.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",q=>{this._update(q.dataType==="style"),this.fire(new a.k(`${q.dataType}data`,q))}),this.on("dataloading",q=>{this.fire(new a.k(`${q.dataType}dataloading`,q))}),this.on("dataabort",q=>{this.fire(new a.k("sourcedataabort",q))})}_getMapId(){return this._mapId}addControl(le,w){if(w===void 0&&(w=le.getDefaultPosition?le.getDefaultPosition():"top-right"),!le||!le.onAdd)return this.fire(new a.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));let q=le.onAdd(this);this._controls.push(le);let Q=this._controlPositions[w];return w.indexOf("bottom")!==-1?Q.insertBefore(q,Q.firstChild):Q.appendChild(q),this}removeControl(le){if(!le||!le.onRemove)return this.fire(new a.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));let w=this._controls.indexOf(le);return w>-1&&this._controls.splice(w,1),le.onRemove(this),this}hasControl(le){return this._controls.indexOf(le)>-1}calculateCameraOptionsFromTo(le,w,q,Q){return Q==null&&this.terrain&&(Q=this.terrain.getElevationForLngLatZoom(q,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(le,w,q,Q)}resize(le){var w;let q=this._containerDimensions(),Q=q[0],ee=q[1],ue=this._getClampedPixelRatio(Q,ee);if(this._resizeCanvas(Q,ee,ue),this.painter.resize(Q,ee,ue),this.painter.overLimit()){let tt=this.painter.context.gl;this._maxCanvasSize=[tt.drawingBufferWidth,tt.drawingBufferHeight];let mt=this._getClampedPixelRatio(Q,ee);this._resizeCanvas(Q,ee,mt),this.painter.resize(Q,ee,mt)}this.transform.resize(Q,ee),(w=this._requestedCameraState)===null||w===void 0||w.resize(Q,ee);let Ve=!this._moving;return Ve&&(this.stop(),this.fire(new a.k("movestart",le)).fire(new a.k("move",le))),this.fire(new a.k("resize",le)),Ve&&this.fire(new a.k("moveend",le)),this}_getClampedPixelRatio(le,w){let{0:q,1:Q}=this._maxCanvasSize,ee=this.getPixelRatio(),ue=le*ee,Ve=w*ee;return Math.min(ue>q?q/ue:1,Ve>Q?Q/Ve:1)*ee}getPixelRatio(){var le;return(le=this._overridePixelRatio)!==null&&le!==void 0?le:devicePixelRatio}setPixelRatio(le){this._overridePixelRatio=le,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(le){return this.transform.setMaxBounds(ce.convert(le)),this._update()}setMinZoom(le){if((le=le==null?-2:le)>=-2&&le<=this.transform.maxZoom)return this.transform.minZoom=le,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=le,this._update(),this.getZoom()>le&&this.setZoom(le),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(le){if((le=le==null?0:le)<0)throw new Error("minPitch must be greater than or equal to 0");if(le>=0&&le<=this.transform.maxPitch)return this.transform.minPitch=le,this._update(),this.getPitch()85)throw new Error("maxPitch must be less than or equal to 85");if(le>=this.transform.minPitch)return this.transform.maxPitch=le,this._update(),this.getPitch()>le&&this.setPitch(le),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(le){return this.transform.renderWorldCopies=le,this._update()}project(le){return this.transform.locationPoint(a.N.convert(le),this.style&&this.terrain)}unproject(le){return this.transform.pointLocation(a.P.convert(le),this.terrain)}isMoving(){var le;return this._moving||((le=this.handlers)===null||le===void 0?void 0:le.isMoving())}isZooming(){var le;return this._zooming||((le=this.handlers)===null||le===void 0?void 0:le.isZooming())}isRotating(){var le;return this._rotating||((le=this.handlers)===null||le===void 0?void 0:le.isRotating())}_createDelegatedListener(le,w,q){if(le==="mouseenter"||le==="mouseover"){let Q=!1;return{layers:w,listener:q,delegates:{mousemove:ue=>{let Ve=w.filter(mt=>this.getLayer(mt)),tt=Ve.length!==0?this.queryRenderedFeatures(ue.point,{layers:Ve}):[];tt.length?Q||(Q=!0,q.call(this,new Ta(le,this,ue.originalEvent,{features:tt}))):Q=!1},mouseout:()=>{Q=!1}}}}if(le==="mouseleave"||le==="mouseout"){let Q=!1;return{layers:w,listener:q,delegates:{mousemove:Ve=>{let tt=w.filter(mt=>this.getLayer(mt));(tt.length!==0?this.queryRenderedFeatures(Ve.point,{layers:tt}):[]).length?Q=!0:Q&&(Q=!1,q.call(this,new Ta(le,this,Ve.originalEvent)))},mouseout:Ve=>{Q&&(Q=!1,q.call(this,new Ta(le,this,Ve.originalEvent)))}}}}{let Q=ee=>{let ue=w.filter(tt=>this.getLayer(tt)),Ve=ue.length!==0?this.queryRenderedFeatures(ee.point,{layers:ue}):[];Ve.length&&(ee.features=Ve,q.call(this,ee),delete ee.features)};return{layers:w,listener:q,delegates:{[le]:Q}}}}_saveDelegatedListener(le,w){this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[le]=this._delegatedListeners[le]||[],this._delegatedListeners[le].push(w)}_removeDelegatedListener(le,w,q){if(!this._delegatedListeners||!this._delegatedListeners[le])return;let Q=this._delegatedListeners[le];for(let ee=0;eew.includes(Ve))){for(let Ve in ue.delegates)this.off(Ve,ue.delegates[Ve]);return void Q.splice(ee,1)}}}on(le,w,q){if(q===void 0)return super.on(le,w);let Q=this._createDelegatedListener(le,typeof w=="string"?[w]:w,q);this._saveDelegatedListener(le,Q);for(let ee in Q.delegates)this.on(ee,Q.delegates[ee]);return this}once(le,w,q){if(q===void 0)return super.once(le,w);let Q=typeof w=="string"?[w]:w,ee=this._createDelegatedListener(le,Q,q);for(let ue in ee.delegates){let Ve=ee.delegates[ue];ee.delegates[ue]=(...tt)=>{this._removeDelegatedListener(le,Q,q),Ve(...tt)}}this._saveDelegatedListener(le,ee);for(let ue in ee.delegates)this.once(ue,ee.delegates[ue]);return this}off(le,w,q){return q===void 0?super.off(le,w):(this._removeDelegatedListener(le,typeof w=="string"?[w]:w,q),this)}queryRenderedFeatures(le,w){if(!this.style)return[];let q,Q=le instanceof a.P||Array.isArray(le),ee=Q?le:[[0,0],[this.transform.width,this.transform.height]];if(w=w||(Q?{}:le)||{},ee instanceof a.P||typeof ee[0]=="number")q=[a.P.convert(ee)];else{let ue=a.P.convert(ee[0]),Ve=a.P.convert(ee[1]);q=[ue,new a.P(Ve.x,ue.y),Ve,new a.P(ue.x,Ve.y),ue]}return this.style.queryRenderedFeatures(q,w,this.transform)}querySourceFeatures(le,w){return this.style.querySourceFeatures(le,w)}setStyle(le,w){return(w=a.e({},{localIdeographFontFamily:this._localIdeographFontFamily,validate:this._validateStyle},w)).diff!==!1&&w.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&le?(this._diffStyle(le,w),this):(this._localIdeographFontFamily=w.localIdeographFontFamily,this._updateStyle(le,w))}setTransformRequest(le){return this._requestManager.setTransformRequest(le),this}_getUIString(le){let w=this._locale[le];if(w==null)throw new Error(`Missing UI string '${le}'`);return w}_updateStyle(le,w){if(w.transformStyle&&this.style&&!this.style._loaded)return void this.style.once("style.load",()=>this._updateStyle(le,w));let q=this.style&&w.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!le)),le?(this.style=new xn(this,w||{}),this.style.setEventedParent(this,{style:this.style}),typeof le=="string"?this.style.loadURL(le,w,q):this.style.loadJSON(le,w,q),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new xn(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(le,w){if(typeof le=="string"){let q=this._requestManager.transformRequest(le,"Style");a.h(q,new AbortController).then(Q=>{this._updateDiff(Q.data,w)}).catch(Q=>{Q&&this.fire(new a.j(Q))})}else typeof le=="object"&&this._updateDiff(le,w)}_updateDiff(le,w){try{this.style.setState(le,w)&&this._update(!0)}catch(q){a.w(`Unable to perform style diff: ${q.message||q.error||q}. Rebuilding the style from scratch.`),this._updateStyle(le,w)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():a.w("There is no style added to the map.")}addSource(le,w){return this._lazyInitEmptyStyle(),this.style.addSource(le,w),this._update(!0)}isSourceLoaded(le){let w=this.style&&this.style.sourceCaches[le];if(w!==void 0)return w.loaded();this.fire(new a.j(new Error(`There is no source with ID '${le}'`)))}setTerrain(le){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),le){let w=this.style.sourceCaches[le.source];if(!w)throw new Error(`cannot load terrain, because there exists no source with ID: ${le.source}`);this.terrain===null&&w.reload();for(let q in this.style._layers){let Q=this.style._layers[q];Q.type==="hillshade"&&Q.source===le.source&&a.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new Ks(this.painter,w,le),this.painter.renderToTexture=new Bl(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=q=>{q.dataType==="style"?this.terrain.sourceCache.freeRtt():q.dataType==="source"&&q.tile&&(q.sourceId!==le.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(q.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new a.k("terrain",{terrain:le})),this}getTerrain(){var le,w;return(w=(le=this.terrain)===null||le===void 0?void 0:le.options)!==null&&w!==void 0?w:null}areTilesLoaded(){let le=this.style&&this.style.sourceCaches;for(let w in le){let q=le[w]._tiles;for(let Q in q){let ee=q[Q];if(ee.state!=="loaded"&&ee.state!=="errored")return!1}}return!0}removeSource(le){return this.style.removeSource(le),this._update(!0)}getSource(le){return this.style.getSource(le)}addImage(le,w,q={}){let{pixelRatio:Q=1,sdf:ee=!1,stretchX:ue,stretchY:Ve,content:tt,textFitWidth:mt,textFitHeight:Bt}=q;if(this._lazyInitEmptyStyle(),!(w instanceof HTMLImageElement||a.b(w))){if(w.width===void 0||w.height===void 0)return this.fire(new a.j(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{let{width:ir,height:or,data:kr}=w,Vr=w;return this.style.addImage(le,{data:new a.R({width:ir,height:or},new Uint8Array(kr)),pixelRatio:Q,stretchX:ue,stretchY:Ve,content:tt,textFitWidth:mt,textFitHeight:Bt,sdf:ee,version:0,userImage:Vr}),Vr.onAdd&&Vr.onAdd(this,le),this}}{let{width:ir,height:or,data:kr}=l.getImageData(w);this.style.addImage(le,{data:new a.R({width:ir,height:or},kr),pixelRatio:Q,stretchX:ue,stretchY:Ve,content:tt,textFitWidth:mt,textFitHeight:Bt,sdf:ee,version:0})}}updateImage(le,w){let q=this.style.getImage(le);if(!q)return this.fire(new a.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));let Q=w instanceof HTMLImageElement||a.b(w)?l.getImageData(w):w,{width:ee,height:ue,data:Ve}=Q;if(ee===void 0||ue===void 0)return this.fire(new a.j(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(ee!==q.data.width||ue!==q.data.height)return this.fire(new a.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));let tt=!(w instanceof HTMLImageElement||a.b(w));return q.data.replace(Ve,tt),this.style.updateImage(le,q),this}getImage(le){return this.style.getImage(le)}hasImage(le){return le?!!this.style.getImage(le):(this.fire(new a.j(new Error("Missing required image id"))),!1)}removeImage(le){this.style.removeImage(le)}loadImage(le){return v.getImage(this._requestManager.transformRequest(le,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(le,w){return this._lazyInitEmptyStyle(),this.style.addLayer(le,w),this._update(!0)}moveLayer(le,w){return this.style.moveLayer(le,w),this._update(!0)}removeLayer(le){return this.style.removeLayer(le),this._update(!0)}getLayer(le){return this.style.getLayer(le)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(le,w,q){return this.style.setLayerZoomRange(le,w,q),this._update(!0)}setFilter(le,w,q={}){return this.style.setFilter(le,w,q),this._update(!0)}getFilter(le){return this.style.getFilter(le)}setPaintProperty(le,w,q,Q={}){return this.style.setPaintProperty(le,w,q,Q),this._update(!0)}getPaintProperty(le,w){return this.style.getPaintProperty(le,w)}setLayoutProperty(le,w,q,Q={}){return this.style.setLayoutProperty(le,w,q,Q),this._update(!0)}getLayoutProperty(le,w){return this.style.getLayoutProperty(le,w)}setGlyphs(le,w={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(le,w),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(le,w,q={}){return this._lazyInitEmptyStyle(),this.style.addSprite(le,w,q,Q=>{Q||this._update(!0)}),this}removeSprite(le){return this._lazyInitEmptyStyle(),this.style.removeSprite(le),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(le,w={}){return this._lazyInitEmptyStyle(),this.style.setSprite(le,w,q=>{q||this._update(!0)}),this}setLight(le,w={}){return this._lazyInitEmptyStyle(),this.style.setLight(le,w),this._update(!0)}getLight(){return this.style.getLight()}setSky(le){return this._lazyInitEmptyStyle(),this.style.setSky(le),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(le,w){return this.style.setFeatureState(le,w),this._update()}removeFeatureState(le,w){return this.style.removeFeatureState(le,w),this._update()}getFeatureState(le){return this.style.getFeatureState(le)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let le=0,w=0;return this._container&&(le=this._container.clientWidth||400,w=this._container.clientHeight||300),[le,w]}_setupContainer(){let le=this._container;le.classList.add("maplibregl-map");let w=this._canvasContainer=f.create("div","maplibregl-canvas-container",le);this._interactive&&w.classList.add("maplibregl-interactive"),this._canvas=f.create("canvas","maplibregl-canvas",w),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");let q=this._containerDimensions(),Q=this._getClampedPixelRatio(q[0],q[1]);this._resizeCanvas(q[0],q[1],Q);let ee=this._controlContainer=f.create("div","maplibregl-control-container",le),ue=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(Ve=>{ue[Ve]=f.create("div",`maplibregl-ctrl-${Ve} `,ee)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(le,w,q){this._canvas.width=Math.floor(q*le),this._canvas.height=Math.floor(q*w),this._canvas.style.width=`${le}px`,this._canvas.style.height=`${w}px`}_setupPainter(){let le={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1},w=null;this._canvas.addEventListener("webglcontextcreationerror",Q=>{w={requestedAttributes:le},Q&&(w.statusMessage=Q.statusMessage,w.type=Q.type)},{once:!0});let q=this._canvas.getContext("webgl2",le)||this._canvas.getContext("webgl",le);if(!q){let Q="Failed to initialize WebGL";throw w?(w.message=Q,new Error(JSON.stringify(w))):new Error(Q)}this.painter=new Qs(q,this.transform),c.testSupport(q)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(le){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||le,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(le){return this._update(),this._renderTaskQueue.add(le)}_cancelRenderFrame(le){this._renderTaskQueue.remove(le)}_render(le){let w=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(le),this._removed)return;let q=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;let ee=this.transform.zoom,ue=l.now();this.style.zoomHistory.update(ee,ue);let Ve=new a.z(ee,{now:ue,fadeDuration:w,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),tt=Ve.crossFadingFactor();tt===1&&tt===this._crossFadingFactor||(q=!0,this._crossFadingFactor=tt),this.style.update(Ve)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,w,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:w,showPadding:this.showPadding}),this.fire(new a.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,a.bf.mark(a.bg.load),this.fire(new a.k("load"))),this.style&&(this.style.hasTransitions()||q)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();let Q=this._sourcesDirty||this._styleDirty||this._placementDirty;return Q||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new a.k("idle")),!this._loaded||this._fullyLoaded||Q||(this._fullyLoaded=!0,a.bf.mark(a.bg.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var le;this._hash&&this._hash.remove();for(let q of this._controls)q.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window!="undefined"&&removeEventListener("online",this._onWindowOnline,!1),v.removeThrottleControl(this._imageQueueHandle),(le=this._resizeObserver)===null||le===void 0||le.disconnect();let w=this.painter.context.gl.getExtension("WEBGL_lose_context");w!=null&&w.loseContext&&w.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),f.remove(this._canvasContainer),f.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),a.bf.clearMetrics(),this._removed=!0,this.fire(new a.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,l.frameAsync(this._frameRequest).then(le=>{a.bf.frame(le),this._frameRequest=null,this._render(le)}).catch(()=>{}))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(le){this._showTileBoundaries!==le&&(this._showTileBoundaries=le,this._update())}get showPadding(){return!!this._showPadding}set showPadding(le){this._showPadding!==le&&(this._showPadding=le,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(le){this._showCollisionBoxes!==le&&(this._showCollisionBoxes=le,le?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(le){this._showOverdrawInspector!==le&&(this._showOverdrawInspector=le,this._update())}get repaint(){return!!this._repaint}set repaint(le){this._repaint!==le&&(this._repaint=le,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(le){this._vertices=le,this._update()}get version(){return eu}getCameraTargetElevation(){return this.transform.elevation}},i.MapMouseEvent=Ta,i.MapTouchEvent=os,i.MapWheelEvent=_l,i.Marker=il,i.NavigationControl=class{constructor(le){this._updateZoomButtons=()=>{let w=this._map.getZoom(),q=w===this._map.getMaxZoom(),Q=w===this._map.getMinZoom();this._zoomInButton.disabled=q,this._zoomOutButton.disabled=Q,this._zoomInButton.setAttribute("aria-disabled",q.toString()),this._zoomOutButton.setAttribute("aria-disabled",Q.toString())},this._rotateCompassArrow=()=>{let w=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=w},this._setButtonTitle=(w,q)=>{let Q=this._map._getUIString(`NavigationControl.${q}`);w.title=Q,w.setAttribute("aria-label",Q)},this.options=a.e({},ja,le),this._container=f.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",w=>w.preventDefault()),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",w=>this._map.zoomIn({},{originalEvent:w})),f.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",w=>this._map.zoomOut({},{originalEvent:w})),f.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",w=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:w}):this._map.resetNorth({},{originalEvent:w})}),this._compassIcon=f.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(le){return this._map=le,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new ns(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){f.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(le,w){let q=f.create("button",le,this._container);return q.type="button",q.addEventListener("click",w),q}},i.Popup=class extends a.E{constructor(le){super(),this.remove=()=>(this._content&&f.remove(this._content),this._container&&(f.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new a.k("close"))),this),this._onMouseUp=w=>{this._update(w.point)},this._onMouseMove=w=>{this._update(w.point)},this._onDrag=w=>{this._update(w.point)},this._update=w=>{var q;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=f.create("div","maplibregl-popup",this._map.getContainer()),this._tip=f.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(let tt of this.options.className.split(" "))this._container.classList.add(tt);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?cs(this._lngLat,this._flatPos,this._map.transform):(q=this._lngLat)===null||q===void 0?void 0:q.wrap(),this._trackPointer&&!w)return;let Q=this._flatPos=this._pos=this._trackPointer&&w?w:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&w?w:this._map.transform.locationPoint(this._lngLat));let ee=this.options.anchor,ue=Vl(this.options.offset);if(!ee){let tt=this._container.offsetWidth,mt=this._container.offsetHeight,Bt;Bt=Q.y+ue.bottom.ythis._map.transform.height-mt?["bottom"]:[],Q.xthis._map.transform.width-tt/2&&Bt.push("right"),ee=Bt.length===0?"bottom":Bt.join("-")}let Ve=Q.add(ue[ee]);this.options.subpixelPositioning||(Ve=Ve.round()),f.setTransform(this._container,`${sl[ee]} translate(${Ve.x}px,${Ve.y}px)`),ll(this._container,ee,"popup")},this._onClose=()=>{this.remove()},this.options=a.e(Object.create(Os),le)}addTo(le){return this._map&&this.remove(),this._map=le,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new a.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(le){return this._lngLat=a.N.convert(le),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(le){return this.setDOMContent(document.createTextNode(le))}setHTML(le){let w=document.createDocumentFragment(),q=document.createElement("body"),Q;for(q.innerHTML=le;Q=q.firstChild,Q;)w.appendChild(Q);return this.setDOMContent(w)}getMaxWidth(){var le;return(le=this._container)===null||le===void 0?void 0:le.style.maxWidth}setMaxWidth(le){return this.options.maxWidth=le,this._update(),this}setDOMContent(le){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=f.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(le),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(le){return this._container&&this._container.classList.add(le),this}removeClassName(le){return this._container&&this._container.classList.remove(le),this}setOffset(le){return this.options.offset=le,this._update(),this}toggleClassName(le){if(this._container)return this._container.classList.toggle(le)}setSubpixelPositioning(le){this.options.subpixelPositioning=le}_createCloseButton(){this.options.closeButton&&(this._closeButton=f.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;let le=this._container.querySelector(Xl);le&&le.focus()}},i.RasterDEMTileSource=Nt,i.RasterTileSource=gt,i.ScaleControl=class{constructor(le){this._onMove=()=>{Ll(this._map,this._container,this.options)},this.setUnit=w=>{this.options.unit=w,Ll(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},Tl),le)}getDefaultPosition(){return"bottom-left"}onAdd(le){return this._map=le,this._container=f.create("div","maplibregl-ctrl maplibregl-ctrl-scale",le.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){f.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},i.ScrollZoomHandler=Fr,i.Style=xn,i.TerrainControl=class{constructor(le){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=le}onAdd(le){return this._map=le,this._container=f.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=f.create("button","maplibregl-ctrl-terrain",this._container),f.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){f.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},i.TwoFingersTouchPitchHandler=Bs,i.TwoFingersTouchRotateHandler=Rs,i.TwoFingersTouchZoomHandler=Ms,i.TwoFingersTouchZoomRotateHandler=Pi,i.VectorTileSource=nt,i.VideoSource=wt,i.addSourceType=(le,w)=>a._(void 0,void 0,void 0,function*(){if(Zt(le))throw new Error(`A source type called "${le}" already exists.`);((q,Q)=>{Dt[q]=Q})(le,w)}),i.clearPrewarmedResources=function(){let le=de;le&&(le.isPreloaded()&&le.numActive()===1?(le.release(be),de=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},i.getMaxParallelImageRequests=function(){return a.a.MAX_PARALLEL_IMAGE_REQUESTS},i.getRTLTextPluginStatus=function(){return Tt().getRTLTextPluginStatus()},i.getVersion=function(){return Nl},i.getWorkerCount=function(){return ze.workerCount},i.getWorkerUrl=function(){return a.a.WORKER_URL},i.importScriptInWorkers=function(le){return Me().broadcast("IS",le)},i.prewarm=function(){ke().acquire(be)},i.setMaxParallelImageRequests=function(le){a.a.MAX_PARALLEL_IMAGE_REQUESTS=le},i.setRTLTextPlugin=function(le,w){return Tt().setRTLTextPlugin(le,w)},i.setWorkerCount=function(le){ze.workerCount=le},i.setWorkerUrl=function(le){a.a.WORKER_URL=le}});var n=e;return n})});var ZWe=Ae((vwr,XWe)=>{"use strict";var nw=ei(),BZt=Xf().sanitizeHTML,OZt=DJ(),HWe=wx();function WWe(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=HWe.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var am=WWe.prototype;am.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=_B(t)};am.needsNewImage=function(e){var t=this.subplot.map;return t.getSource(this.idSource)&&this.sourceType==="image"&&e.sourcetype==="image"&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))};am.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type};am.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]};am.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]};am.updateImage=function(e){var t=this.subplot.map;t.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var r=this.findFollowingMapLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)};am.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,!!_B(e)){var r=qZt(e);t.addSource(this.idSource,r)}};am.findFollowingMapLayerId=function(e){if(e==="traces")for(var t=this.subplot.getMapLayers(),r=0;r0){for(var r=0;r0}function jWe(e){var t={},r={};switch(e.type){case"circle":nw.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":nw.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":nw.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var n=e.symbol,i=OZt(n.textposition,n.iconsize);nw.extendFlat(t,{"icon-image":n.icon+"-15","icon-size":n.iconsize/10,"text-field":n.text,"text-size":n.textfont.size,"text-anchor":i.anchor,"text-offset":i.offset,"symbol-placement":n.placement}),nw.extendFlat(r,{"icon-color":e.color,"text-color":n.textfont.color,"text-opacity":e.opacity});break;case"raster":nw.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity});break}return{layout:t,paint:r}}function qZt(e){var t=e.sourcetype,r=e.source,n={type:t},i;return t==="geojson"?i="data":t==="vector"?i=typeof r=="string"?"url":"tiles":t==="raster"?(i="tiles",n.tileSize=256):t==="image"&&(i="url",n.coordinates=e.coordinates),n[i]=r,e.sourceattribution&&(n.attribution=BZt(e.sourceattribution)),n}XWe.exports=function(t,r,n){var i=new WWe(t,r);return i.update(n),i}});var rje=Ae((mwr,tje)=>{"use strict";var UJ=GWe(),VJ=ei(),JWe=ix(),YWe=$l(),NZt=wu(),UZt=xp(),xB=Xc(),$We=Mm(),VZt=$We.drawMode,GZt=$We.selectMode,HZt=oh().prepSelect,WZt=oh().clearOutline,jZt=oh().clearSelectionsCache,XZt=oh().selectOnClick,aw=wx(),ZZt=ZWe();function QWe(e,t){this.id=t,this.gd=e;var r=e._fullLayout,n=e._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var Xh=QWe.prototype;Xh.plot=function(e,t,r){var n=this,i;n.map?i=new Promise(function(a,o){n.updateMap(e,t,a,o)}):i=new Promise(function(a,o){n.createMap(e,t,a,o)}),r.push(i)};Xh.createMap=function(e,t,r,n){var i=this,a=t[i.id],o=i.styleObj=eje(a.style),s=a.bounds,u=s?[[s.west,s.south],[s.east,s.north]]:null,l=i.map=new UJ.Map({container:i.div,style:o.style,center:GJ(a.center),zoom:a.zoom,bearing:a.bearing,pitch:a.pitch,maxBounds:u,interactive:!i.isStatic,preserveDrawingBuffer:i.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new UJ.AttributionControl({compact:!0})),f={};l.on("styleimagemissing",function(h){var d=h.id;if(!f[d]&&d.includes("-15")){f[d]=!0;var p=new Image(15,15);p.onload=function(){l.addImage(d,p)},p.crossOrigin="Anonymous",p.src="https://unpkg.com/maki@2.1.0/icons/"+d+".svg"}}),l.setTransformRequest(function(h){return h=h.replace("https://fonts.openmaptiles.org/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),h=h.replace("https://tiles.basemaps.cartocdn.com/fonts/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),h=h.replace("https://fonts.openmaptiles.org/Open Sans Regular,Arial Unicode MS Regular","https://fonts.openmaptiles.org/Klokantech Noto Sans Regular"),{url:h}}),l._canvas.style.left="0px",l._canvas.style.top="0px",i.rejectOnError(n),i.isStatic||i.initFx(e,t);var c=[];c.push(new Promise(function(h){l.once("load",h)})),c=c.concat(JWe.fetchTraceGeoData(e)),Promise.all(c).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Xh.updateMap=function(e,t,r,n){var i=this,a=i.map,o=t[this.id];i.rejectOnError(n);var s=[],u=eje(o.style);JSON.stringify(i.styleObj)!==JSON.stringify(u)&&(i.styleObj=u,a.setStyle(u.style),i.traceHash={},s.push(new Promise(function(l){a.once("styledata",l)}))),s=s.concat(JWe.fetchTraceGeoData(e)),Promise.all(s).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Xh.fillBelowLookup=function(e,t){var r=t[this.id],n=r.layers,i,a,o=this.belowLookup={},s=!1;for(i=0;i1)for(i=0;i-1&&XZt(u.originalEvent,n,[r.xaxis],[r.yaxis],r.id,s),l.indexOf("event")>-1&&xB.click(n,u.originalEvent)}}};Xh.updateFx=function(e){var t=this,r=t.map,n=t.gd;if(t.isStatic)return;function i(u){var l=t.map.unproject(u);return[l.lng,l.lat]}var a=e.dragmode,o;o=function(u,l){if(l.isRect){var f=u.range={};f[t.id]=[i([l.xmin,l.ymin]),i([l.xmax,l.ymax])]}else{var c=u.lassoPoints={};c[t.id]=l.map(i)}};var s=t.dragOptions;t.dragOptions=VJ.extendDeep(s||{},{dragmode:e.dragmode,element:t.div,gd:n,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:o},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),GZt(a)||VZt(a)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(u,l,f){HZt(u,l,f,t.dragOptions,a)},UZt.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))};Xh.updateFramework=function(e){var t=e[this.id].domain,r=e._size,n=this.div.style;n.width=r.w*(t.x[1]-t.x[0])+"px",n.height=r.h*(t.y[1]-t.y[0])+"px",n.left=r.l+t.x[0]*r.w+"px",n.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])};Xh.updateLayers=function(e){var t=e[this.id],r=t.layers,n=this.layerList,i;if(r.length!==n.length){for(i=0;i{"use strict";var HJ=ei(),KZt=k_(),JZt=Jd(),ije=Wk();nje.exports=function(t,r,n){KZt(t,r,n,{type:"map",attributes:ije,handleDefaults:$Zt,partition:"y"})};function $Zt(e,t,r){r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch");var n=r("bounds.west"),i=r("bounds.east"),a=r("bounds.south"),o=r("bounds.north");(n===void 0||i===void 0||a===void 0||o===void 0)&&delete t.bounds,JZt(e,t,{name:"layers",handleItemDefaults:QZt}),t._input=e}function QZt(e,t){function r(u,l){return HJ.coerce(e,t,ije.layers,u,l)}var n=r("visible");if(n){var i=r("sourcetype"),a=i==="raster"||i==="image";r("source"),r("sourceattribution"),i==="vector"&&r("sourcelayer"),i==="image"&&r("coordinates");var o;a&&(o="raster");var s=r("type",o);a&&s!=="raster"&&(s=t.type="raster",HJ.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),s==="circle"&&r("circle.radius"),s==="line"&&(r("line.width"),r("line.dash")),s==="fill"&&r("fill.outlinecolor"),s==="symbol"&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),HJ.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var wB=Ae(l0=>{"use strict";var bB=ei(),oje=bB.strTranslate,eYt=bB.strScale,tYt=Rd().getSubplotCalcData,rYt=jv(),iYt=Jl(),sje=Mu(),nYt=Xf(),aYt=rje(),Tx="map";l0.name=Tx;l0.attr="subplot";l0.idRoot=Tx;l0.idRegex=l0.attrRegex=bB.counterRegex(Tx);l0.attributes={subplot:{valType:"subplotid",dflt:"map",editType:"calc"}};l0.layoutAttributes=Wk();l0.supplyLayoutDefaults=aje();l0.plot=function(t){for(var r=t._fullLayout,n=t.calcdata,i=r._subplots[Tx],a=0;a_/2){var b=c.split("|").join("
");d.text(b).attr("data-unformatted",b).call(nYt.convertToTspans,e),p=sje.bBox(d.node())}d.attr("transform",oje(-3,-p.height+8)),h.insert("rect",".static-attribution").attr({x:-p.width-6,y:-p.height-3,width:p.width+6,height:p.height+3,fill:"rgba(255, 255, 255, 0.75)"});var v=1;p.width+6>_&&(v=_/(p.width+6));var k=[n.l+n.w*o.x[1],n.t+n.h*(1-o.y[0])];h.attr("transform",oje(k[0],k[1])+eYt(v))}};l0.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[Tx],n=0;n{"use strict";lje.exports={attributes:dB(),supplyDefaults:bWe(),colorbar:ep(),formatLabels:RJ(),calc:pF(),plot:DWe(),hoverPoints:gB().hoverPoints,eventData:qWe(),selectPoints:UWe(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermap",basePlotModule:wB(),categories:["map","gl","symbols","showLegend","scatter-like"],meta:{}}});var cje=Ae((xwr,fje)=>{"use strict";fje.exports=uje()});var WJ=Ae((bwr,hje)=>{"use strict";var d1=eS(),oYt=nc(),{hovertemplateAttrs:sYt,templatefallbackAttrs:lYt}=Ff(),uYt=Gf(),Ax=Su().extendFlat;hje.exports=Ax({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:Ax({},d1.featureidkey,{}),below:{valType:"string",editType:"plot"},text:d1.text,hovertext:d1.hovertext,marker:{line:{color:Ax({},d1.marker.line.color,{editType:"plot"}),width:Ax({},d1.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:Ax({},d1.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:Ax({},d1.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:Ax({},d1.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:d1.hoverinfo,hovertemplate:sYt({},{keys:["properties"]}),hovertemplatefallback:lYt(),showlegend:Ax({},uYt.showlegend,{dflt:!1})},oYt("",{cLetter:"z",editTypeOverride:"calc"}))});var pje=Ae((wwr,dje)=>{"use strict";var Yk=ei(),fYt=rd(),cYt=WJ();dje.exports=function(t,r,n,i){function a(f,c){return Yk.coerce(t,r,cYt,f,c)}var o=a("locations"),s=a("z"),u=a("geojson");if(!Yk.isArrayOrTypedArray(o)||!o.length||!Yk.isArrayOrTypedArray(s)||!s.length||!(typeof u=="string"&&u!==""||Yk.isPlainObject(u))){r.visible=!1;return}a("featureidkey"),r._length=Math.min(o.length,s.length),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var l=a("marker.line.width");l&&a("marker.line.color"),a("marker.opacity"),fYt(t,r,i,a,{prefix:"",cLetter:"z"}),Yk.coerceSelectionMarkerOpacity(r,a)}});var jJ=Ae((Twr,yje)=>{"use strict";var hYt=ku(),p1=ei(),dYt=_c(),pYt=Mu(),vYt=tx().makeBlank,vje=ix();function mYt(e){var t=e[0].trace,r=t.visible===!0&&t._length!==0,n={layout:{visibility:"none"},paint:{}},i={layout:{visibility:"none"},paint:{}},a=t._opts={fill:n,line:i,geojson:vYt()};if(!r)return a;var o=vje.extractTraceFeature(e);if(!o)return a;var s=dYt.makeColorScaleFuncFromTrace(t),u=t.marker,l=u.line||{},f;p1.isArrayOrTypedArray(u.opacity)&&(f=function(k){var E=k.mo;return hYt(E)?+p1.constrain(E,0,1):0});var c;p1.isArrayOrTypedArray(l.color)&&(c=function(k){return k.mlc});var h;p1.isArrayOrTypedArray(l.width)&&(h=function(k){return k.mlw});for(var d=0;d{"use strict";var _je=jJ().convert,yYt=jJ().convertOnSelect,gje=wx().traceLayerPrefix;function xje(e,t){this.type="choroplethmap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",gje+t+"-fill"],["line",gje+t+"-line"]],this.below=null}var CS=xje.prototype;CS.update=function(e){this._update(_je(e)),e[0].trace._glTrace=this};CS.updateOnSelect=function(e){this._update(yYt(e))};CS._update=function(e){var t=this.subplot,r=this.layerList,n=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(e.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(e,n),this.below=n);for(var i=0;i=0;r--)e.removeLayer(t[r][1])};CS.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};bje.exports=function(t,r){var n=r[0].trace,i=new xje(t,n.uid),a=i.sourceId,o=_je(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),r[0].trace._glTrace=i,i}});var Aje=Ae((Swr,Tje)=>{"use strict";Tje.exports={attributes:WJ(),supplyDefaults:pje(),colorbar:S_(),calc:DF(),plot:wje(),hoverPoints:BF(),eventData:OF(),selectPoints:qF(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.updateOnSelect(t)}},getBelow:function(e,t){for(var r=t.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if(typeof i=="string"&&i.indexOf("water")===0){for(var a=n+1;a{"use strict";Sje.exports=Aje()});var ZJ=Ae((Ewr,kje)=>{"use strict";var gYt=nc(),{hovertemplateAttrs:_Yt,templatefallbackAttrs:xYt}=Ff(),Eje=Gf(),TB=dB(),XJ=Su().extendFlat;kje.exports=XJ({lon:TB.lon,lat:TB.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:TB.text,hovertext:TB.hovertext,hoverinfo:XJ({},Eje.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:_Yt(),hovertemplatefallback:xYt(),showlegend:XJ({},Eje.showlegend,{dflt:!1})},gYt("",{cLetter:"z",editTypeOverride:"calc"}))});var Lje=Ae((kwr,Cje)=>{"use strict";var bYt=ei(),wYt=rd(),TYt=ZJ();Cje.exports=function(t,r,n,i){function a(l,f){return bYt.coerce(t,r,TYt,l,f)}var o=a("lon")||[],s=a("lat")||[],u=Math.min(o.length,s.length);if(!u){r.visible=!1;return}r._length=u,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),wYt(t,r,i,a,{prefix:"",cLetter:"z"})}});var Ije=Ae((Cwr,zje)=>{"use strict";var YJ=ku(),AYt=ei().isArrayOrTypedArray,KJ=rf().BADNUM,SYt=gp(),Pje=ei()._;zje.exports=function(t,r){for(var n=r._length,i=new Array(n),a=r.z,o=AYt(a)&&a.length,s=0;s{"use strict";var MYt=ku(),JJ=ei(),Rje=jl(),Dje=_c(),Fje=rf().BADNUM,EYt=tx().makeBlank;Bje.exports=function(t){var r=t[0].trace,n=r.visible===!0&&r._length!==0,i={layout:{visibility:"none"},paint:{}},a=r._opts={heatmap:i,geojson:EYt()};if(!n)return a;var o=[],s,u=r.z,l=r.radius,f=JJ.isArrayOrTypedArray(u)&&u.length,c=JJ.isArrayOrTypedArray(l);for(s=0;s0?+l[s]:0),o.push({type:"Feature",geometry:{type:"Point",coordinates:d},properties:p})}}var b=Dje.extractOpts(r),v=b.reversescale?Dje.flipScale(b.colorscale):b.colorscale,k=v[0][1],E=Rje.opacity(k)<1?k:Rje.addOpacity(k,0),A=["interpolate",["linear"],["heatmap-density"],0,E];for(s=1;s{"use strict";var qje=Oje(),kYt=wx().traceLayerPrefix;function Nje(e,t){this.type="densitymap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",kYt+t+"-heatmap"]],this.below=null}var AB=Nje.prototype;AB.update=function(e){var t=this.subplot,r=this.layerList,n=qje(e),i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(n.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(n,i),this.below=i);for(var a=0;a=0;r--)e.removeLayer(t[r][1])};AB.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};Uje.exports=function(t,r){var n=r[0].trace,i=new Nje(t,n.uid),a=i.sourceId,o=qje(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),i}});var Hje=Ae((zwr,Gje)=>{"use strict";var CYt=wu(),LYt=gB().hoverPoints,PYt=gB().getExtraText;Gje.exports=function(t,r,n){var i=LYt(t,r,n);if(i){var a=i[0],o=a.cd,s=o[0].trace,u=o[a.index];if(delete a.color,"z"in u){var l=a.subplot.mockAxis;a.z=u.z,a.zLabel=CYt.tickText(l,l.c2l(u.z),"hover").text}return a.extraText=PYt(s,u,o[0].t.labels),[a]}}});var jje=Ae((Iwr,Wje)=>{"use strict";Wje.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var Zje=Ae((Rwr,Xje)=>{"use strict";Xje.exports={attributes:ZJ(),supplyDefaults:Lje(),colorbar:S_(),formatLabels:RJ(),calc:Ije(),plot:Vje(),hoverPoints:Hje(),eventData:jje(),getBelow:function(e,t){for(var r=t.getMapLayers(),n=0;n{"use strict";Yje.exports=Zje()});var QJ=Ae((Bwr,tXe)=>{"use strict";var zYt=gc(),IYt=Gf(),Jje=Fh(),$J=n3(),RYt=zc().attributes,{hovertemplateAttrs:$je,templatefallbackAttrs:Qje}=Ff(),DYt=nc(),FYt=Lf().templatedArray,BYt=jc().descriptionOnlyNumbers,eXe=Su().extendFlat,OYt=Sc().overrideAll,Fwr=tXe.exports=OYt({hoverinfo:eXe({},IYt.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:$J.hoverlabel,domain:RYt({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h"},valueformat:{valType:"string",dflt:".3s",description:BYt("value")},valuesuffix:{valType:"string",dflt:""},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap"},textfont:zYt({autoShadowDflt:!0}),customdata:void 0,node:{label:{valType:"data_array",dflt:[]},groups:{valType:"info_array",impliedEdits:{x:[],y:[]},dimensions:2,freeLength:!0,dflt:[],items:{valType:"number",editType:"calc"}},x:{valType:"data_array",dflt:[]},y:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:Jje.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:.5,arrayOk:!0}},pad:{valType:"number",arrayOk:!1,min:0,dflt:20},thickness:{valType:"number",arrayOk:!1,min:1,dflt:20},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:$J.hoverlabel,hovertemplate:$je({},{keys:["value","label"]}),hovertemplatefallback:Qje(),align:{valType:"enumerated",values:["justify","left","right","center"],dflt:"justify"}},link:{arrowlen:{valType:"number",min:0,dflt:0},label:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},hovercolor:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:Jje.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:0,arrayOk:!0}},source:{valType:"data_array",dflt:[]},target:{valType:"data_array",dflt:[]},value:{valType:"data_array",dflt:[]},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:$J.hoverlabel,hovertemplate:$je({},{keys:["value","label"]}),hovertemplatefallback:Qje(),colorscales:FYt("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:eXe(DYt().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")});var oXe=Ae((Owr,aXe)=>{"use strict";var LS=ei(),SB=QJ(),qYt=jl(),rXe=cd(),NYt=zc().defaults,iXe=c5(),nXe=Lf(),UYt=Jd();aXe.exports=function(t,r,n,i){function a(A,L){return LS.coerce(t,r,SB,A,L)}var o=LS.extendDeep(i.hoverlabel,t.hoverlabel),s=t.node,u=nXe.newContainer(r,"node");function l(A,L){return LS.coerce(s,u,SB.node,A,L)}l("label"),l("groups"),l("x"),l("y"),l("pad"),l("thickness"),l("line.color"),l("line.width"),l("hoverinfo",t.hoverinfo),iXe(s,u,l,o),l("hovertemplate"),l("align");var f=i.colorway,c=function(A){return f[A%f.length]};l("color",u.label.map(function(A,L){return qYt.addOpacity(c(L),.8)})),l("customdata");var h=t.link||{},d=nXe.newContainer(r,"link");function p(A,L){return LS.coerce(h,d,SB.link,A,L)}p("label"),p("arrowlen"),p("source"),p("target"),p("value"),p("line.color"),p("line.width"),p("hoverinfo",t.hoverinfo),iXe(h,d,p,o),p("hovertemplate");var _=rXe(i.paper_bgcolor).getLuminance()<.333,b=_?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)",v=p("color",b);function k(A){var L=rXe(A);if(!L.isValid())return A;var x=L.getAlpha();return x<=.8?L.setAlpha(x+.2):L=_?L.brighten():L.darken(),L.toRgbString()}p("hovercolor",Array.isArray(v)?v.map(k):k(v)),p("customdata"),UYt(h,d,{name:"colorscales",handleItemDefaults:VYt}),NYt(r,i,a),a("orientation"),a("valueformat"),a("valuesuffix");var E;u.x.length&&u.y.length&&(E="freeform"),a("arrangement",E),LS.coerceFont(a,"textfont",i.font,{autoShadowDflt:!0}),r._length=null};function VYt(e,t){function r(n,i){return LS.coerce(e,t,SB.link.colorscales,n,i)}r("label"),r("cmin"),r("cmax"),r("colorscale")}});var e$=Ae((qwr,sXe)=>{"use strict";sXe.exports=GYt;function GYt(e){for(var t=e.length,r=new Array(t),n=new Array(t),i=new Array(t),a=new Array(t),o=new Array(t),s=new Array(t),u=0;u0;){b=k[k.length-1];var E=e[b];if(a[b]=0&&s[b].push(o[L])}a[b]=A}else{if(n[b]===r[b]){for(var x=[],C=[],M=0,A=v.length-1;A>=0;--A){var m=v[A];if(i[m]=!1,x.push(m),C.push(s[m]),M+=s[m].length,o[m]=f.length,m===b){v.length=A;break}}f.push(x);for(var P=new Array(M),A=0;A{"use strict";var HYt=e$(),PS=ei(),WYt=Jy().wrap,Kk=PS.isArrayOrTypedArray,lXe=PS.isIndex,uXe=_c();function jYt(e){var t=e.node,r=e.link,n=[],i=Kk(r.color),a=Kk(r.hovercolor),o=Kk(r.customdata),s={},u={},l=r.colorscales.length,f;for(f=0;fp&&(p=r.source[f]),r.target[f]>p&&(p=r.target[f]);var _=p+1;e.node._count=_;var b,v=e.node.groups,k={};for(f=0;f0&&lXe(M,_)&&lXe(m,_)&&!(k.hasOwnProperty(M)&&k.hasOwnProperty(m)&&k[M]===k[m])){k.hasOwnProperty(m)&&(m=k[m]),k.hasOwnProperty(M)&&(M=k[M]),M=+M,m=+m,s[M]=s[m]=!0;var P="";r.label&&r.label[f]&&(P=r.label[f]);var T=null;P&&u.hasOwnProperty(P)&&(T=u[P]),n.push({pointNumber:f,label:P,color:i?r.color[f]:r.color,hovercolor:a?r.hovercolor[f]:r.hovercolor,customdata:o?r.customdata[f]:r.customdata,concentrationscale:T,source:M,target:m,value:+C}),x.source.push(M),x.target.push(m)}}var B=_+v.length,F=Kk(t.color),U=Kk(t.customdata),G=[];for(f=0;f_-1,childrenNodes:[],pointNumber:f,label:j,color:F?t.color[f]:t.color,customdata:U?t.customdata[f]:t.customdata})}var H=!1;return XYt(B,x.source,x.target)&&(H=!0),{circular:H,links:n,nodes:G,groups:v,groupLookup:k}}function XYt(e,t,r){for(var n=PS.init2dArray(e,0),i=0;i1})}fXe.exports=function(t,r){var n=jYt(r);return WYt({circular:n.circular,_nodes:n.nodes,_links:n.links,_groups:n.groups,_groupLookup:n.groupLookup})}});var dXe=Ae((MB,hXe)=>{(function(e,t){typeof MB=="object"&&typeof hXe!="undefined"?t(MB):(e=e||self,t(e.d3=e.d3||{}))})(MB,function(e){"use strict";function t(C){var M=+this._x.call(null,C),m=+this._y.call(null,C);return r(this.cover(M,m),M,m,C)}function r(C,M,m,P){if(isNaN(M)||isNaN(m))return C;var T,B=C._root,F={data:P},U=C._x0,G=C._y0,j=C._x1,H=C._y1,N,W,re,ae,be,ze,Ce,de;if(!B)return C._root=F,C;for(;B.length;)if((be=M>=(N=(U+j)/2))?U=N:j=N,(ze=m>=(W=(G+H)/2))?G=W:H=W,T=B,!(B=B[Ce=ze<<1|be]))return T[Ce]=F,C;if(re=+C._x.call(null,B.data),ae=+C._y.call(null,B.data),M===re&&m===ae)return F.next=B,T?T[Ce]=F:C._root=F,C;do T=T?T[Ce]=new Array(4):C._root=new Array(4),(be=M>=(N=(U+j)/2))?U=N:j=N,(ze=m>=(W=(G+H)/2))?G=W:H=W;while((Ce=ze<<1|be)===(de=(ae>=W)<<1|re>=N));return T[de]=B,T[Ce]=F,C}function n(C){var M,m,P=C.length,T,B,F=new Array(P),U=new Array(P),G=1/0,j=1/0,H=-1/0,N=-1/0;for(m=0;mH&&(H=T),BN&&(N=B));if(G>H||j>N)return this;for(this.cover(G,j).cover(H,N),m=0;mC||C>=T||P>M||M>=B;)switch(j=(MH||(U=ae.y0)>N||(G=ae.x1)=Ce)<<1|C>=ze)&&(ae=W[W.length-1],W[W.length-1]=W[W.length-1-be],W[W.length-1-be]=ae)}else{var de=C-+this._x.call(null,re.data),te=M-+this._y.call(null,re.data),ke=de*de+te*te;if(ke=(W=(F+G)/2))?F=W:G=W,(be=N>=(re=(U+j)/2))?U=re:j=re,M=m,!(m=m[ze=be<<1|ae]))return this;if(!m.length)break;(M[ze+1&3]||M[ze+2&3]||M[ze+3&3])&&(P=M,Ce=ze)}for(;m.data!==C;)if(T=m,!(m=m.next))return this;return(B=m.next)&&delete m.next,T?(B?T.next=B:delete T.next,this):M?(B?M[ze]=B:delete M[ze],(m=M[0]||M[1]||M[2]||M[3])&&m===(M[3]||M[2]||M[1]||M[0])&&!m.length&&(P?P[Ce]=m:this._root=m),this):(this._root=B,this)}function f(C){for(var M=0,m=C.length;M{(function(e,t){t(typeof EB=="object"&&typeof pXe!="undefined"?EB:e.d3=e.d3||{})})(EB,function(e){"use strict";var t="$";function r(){}r.prototype=n.prototype={constructor:r,has:function(_){return t+_ in this},get:function(_){return this[t+_]},set:function(_,b){return this[t+_]=b,this},remove:function(_){var b=t+_;return b in this&&delete this[b]},clear:function(){for(var _ in this)_[0]===t&&delete this[_]},keys:function(){var _=[];for(var b in this)b[0]===t&&_.push(b.slice(1));return _},values:function(){var _=[];for(var b in this)b[0]===t&&_.push(this[b]);return _},entries:function(){var _=[];for(var b in this)b[0]===t&&_.push({key:b.slice(1),value:this[b]});return _},size:function(){var _=0;for(var b in this)b[0]===t&&++_;return _},empty:function(){for(var _ in this)if(_[0]===t)return!1;return!0},each:function(_){for(var b in this)b[0]===t&&_(this[b],b.slice(1),this)}};function n(_,b){var v=new r;if(_ instanceof r)_.each(function(x,C){v.set(C,x)});else if(Array.isArray(_)){var k=-1,E=_.length,A;if(b==null)for(;++k=_.length)return v!=null&&x.sort(v),k!=null?k(x):x;for(var P=-1,T=x.length,B=_[C++],F,U,G=n(),j,H=M();++P_.length)return x;var M,m=b[C-1];return k!=null&&C>=_.length?M=x.entries():(M=[],x.each(function(P,T){M.push({key:T,values:L(P,C)})})),m!=null?M.sort(function(P,T){return m(P.key,T.key)}):M}return E={object:function(x){return A(x,0,a,o)},map:function(x){return A(x,0,s,u)},entries:function(x){return L(A(x,0,s,u),0)},key:function(x){return _.push(x),E},sortKeys:function(x){return b[_.length-1]=x,E},sortValues:function(x){return v=x,E},rollup:function(x){return k=x,E}}}function a(){return{}}function o(_,b,v){_[b]=v}function s(){return n()}function u(_,b,v){_.set(b,v)}function l(){}var f=n.prototype;l.prototype=c.prototype={constructor:l,has:f.has,add:function(_){return _+="",this[t+_]=_,this},remove:f.remove,clear:f.clear,values:f.keys,size:f.size,empty:f.empty,each:f.each};function c(_,b){var v=new l;if(_ instanceof l)_.each(function(A){v.add(A)});else if(_){var k=-1,E=_.length;if(b==null)for(;++k{(function(e,t){typeof CB=="object"&&typeof vXe!="undefined"?t(CB):(e=e||self,t(e.d3=e.d3||{}))})(CB,function(e){"use strict";var t={value:function(){}};function r(){for(var s=0,u=arguments.length,l={},f;s=0&&(f=l.slice(c+1),l=l.slice(0,c)),l&&!u.hasOwnProperty(l))throw new Error("unknown type: "+l);return{type:l,name:f}})}n.prototype=r.prototype={constructor:n,on:function(s,u){var l=this._,f=i(s+"",l),c,h=-1,d=f.length;if(arguments.length<2){for(;++h0)for(var l=new Array(c),f=0,c,h;f{(function(e,t){typeof LB=="object"&&typeof yXe!="undefined"?t(LB):(e=e||self,t(e.d3=e.d3||{}))})(LB,function(e){"use strict";var t=0,r=0,n=0,i=1e3,a,o,s=0,u=0,l=0,f=typeof performance=="object"&&performance.now?performance:Date,c=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(C){setTimeout(C,17)};function h(){return u||(c(d),u=f.now()+l)}function d(){u=0}function p(){this._call=this._time=this._next=null}p.prototype=_.prototype={constructor:p,restart:function(C,M,m){if(typeof C!="function")throw new TypeError("callback is not a function");m=(m==null?h():+m)+(M==null?0:+M),!this._next&&o!==this&&(o?o._next=this:a=this,o=this),this._call=C,this._time=m,A()},stop:function(){this._call&&(this._call=null,this._time=1/0,A())}};function _(C,M,m){var P=new p;return P.restart(C,M,m),P}function b(){h(),++t;for(var C=a,M;C;)(M=u-C._time)>=0&&C._call.call(null,M),C=C._next;--t}function v(){u=(s=f.now())+l,t=r=0;try{b()}finally{t=0,E(),u=0}}function k(){var C=f.now(),M=C-s;M>i&&(l-=M,s=C)}function E(){for(var C,M=a,m,P=1/0;M;)M._call?(P>M._time&&(P=M._time),C=M,M=M._next):(m=M._next,M._next=null,M=C?C._next=m:a=m);o=C,A(P)}function A(C){if(!t){r&&(r=clearTimeout(r));var M=C-u;M>24?(C<1/0&&(r=setTimeout(v,C-f.now()-l)),n&&(n=clearInterval(n))):(n||(s=f.now(),n=setInterval(k,i)),t=1,c(v))}}function L(C,M,m){var P=new p;return M=M==null?0:+M,P.restart(function(T){P.stop(),C(T+M)},M,m),P}function x(C,M,m){var P=new p,T=M;return M==null?(P.restart(C,M,m),P):(M=+M,m=m==null?h():+m,P.restart(function B(F){F+=T,P.restart(B,T+=M,m),C(F)},M,m),P)}e.interval=x,e.now=h,e.timeout=L,e.timer=_,e.timerFlush=b,Object.defineProperty(e,"__esModule",{value:!0})})});var xXe=Ae((PB,_Xe)=>{(function(e,t){typeof PB=="object"&&typeof _Xe!="undefined"?t(PB,dXe(),kB(),mXe(),gXe()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,e.d3)})(PB,function(e,t,r,n,i){"use strict";function a(C,M){var m;C==null&&(C=0),M==null&&(M=0);function P(){var T,B=m.length,F,U=0,G=0;for(T=0;TN.index){var qe=W-Ue.x-Ue.vx,ce=re-Ue.y-Ue.vy,Je=qe*qe+ce*ce;JeW+ye||Eere+ye||MeG.r&&(G.r=G[j].r)}function U(){if(M){var G,j=M.length,H;for(m=new Array(j),G=0;G1?(be==null?U.remove(ae):U.set(ae,re(be)),M):U.get(ae)},find:function(ae,be,ze){var Ce=0,de=C.length,te,ke,Ee,Me,Ue;for(ze==null?ze=1/0:ze*=ze,Ce=0;Ce1?(j.on(ae,be),M):j.on(ae)}}}function E(){var C,M,m,P=o(-30),T,B=1,F=1/0,U=.81;function G(W){var re,ae=C.length,be=t.quadtree(C,p,_).visitAfter(H);for(m=W,re=0;re=F)return;(W.data!==M||W.next)&&(ze===0&&(ze=s(),te+=ze*ze),Ce===0&&(Ce=s(),te+=Ce*Ce),te{(function(e,t){typeof zB=="object"&&typeof bXe!="undefined"?t(zB):(e=e||self,t(e.d3=e.d3||{}))})(zB,function(e){"use strict";var t=Math.PI,r=2*t,n=1e-6,i=r-n;function a(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function o(){return new a}a.prototype=o.prototype={constructor:a,moveTo:function(s,u){this._+="M"+(this._x0=this._x1=+s)+","+(this._y0=this._y1=+u)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(s,u){this._+="L"+(this._x1=+s)+","+(this._y1=+u)},quadraticCurveTo:function(s,u,l,f){this._+="Q"+ +s+","+ +u+","+(this._x1=+l)+","+(this._y1=+f)},bezierCurveTo:function(s,u,l,f,c,h){this._+="C"+ +s+","+ +u+","+ +l+","+ +f+","+(this._x1=+c)+","+(this._y1=+h)},arcTo:function(s,u,l,f,c){s=+s,u=+u,l=+l,f=+f,c=+c;var h=this._x1,d=this._y1,p=l-s,_=f-u,b=h-s,v=d-u,k=b*b+v*v;if(c<0)throw new Error("negative radius: "+c);if(this._x1===null)this._+="M"+(this._x1=s)+","+(this._y1=u);else if(k>n)if(!(Math.abs(v*p-_*b)>n)||!c)this._+="L"+(this._x1=s)+","+(this._y1=u);else{var E=l-h,A=f-d,L=p*p+_*_,x=E*E+A*A,C=Math.sqrt(L),M=Math.sqrt(k),m=c*Math.tan((t-Math.acos((L+k-x)/(2*C*M)))/2),P=m/M,T=m/C;Math.abs(P-1)>n&&(this._+="L"+(s+P*b)+","+(u+P*v)),this._+="A"+c+","+c+",0,0,"+ +(v*E>b*A)+","+(this._x1=s+T*p)+","+(this._y1=u+T*_)}},arc:function(s,u,l,f,c,h){s=+s,u=+u,l=+l,h=!!h;var d=l*Math.cos(f),p=l*Math.sin(f),_=s+d,b=u+p,v=1^h,k=h?f-c:c-f;if(l<0)throw new Error("negative radius: "+l);this._x1===null?this._+="M"+_+","+b:(Math.abs(this._x1-_)>n||Math.abs(this._y1-b)>n)&&(this._+="L"+_+","+b),l&&(k<0&&(k=k%r+r),k>i?this._+="A"+l+","+l+",0,1,"+v+","+(s-d)+","+(u-p)+"A"+l+","+l+",0,1,"+v+","+(this._x1=_)+","+(this._y1=b):k>n&&(this._+="A"+l+","+l+",0,"+ +(k>=t)+","+v+","+(this._x1=s+l*Math.cos(c))+","+(this._y1=u+l*Math.sin(c))))},rect:function(s,u,l,f){this._+="M"+(this._x0=this._x1=+s)+","+(this._y0=this._y1=+u)+"h"+ +l+"v"+ +f+"h"+-l+"Z"},toString:function(){return this._}},e.path=o,Object.defineProperty(e,"__esModule",{value:!0})})});var t$=Ae((IB,TXe)=>{(function(e,t){typeof IB=="object"&&typeof TXe!="undefined"?t(IB,wXe()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(IB,function(e,t){"use strict";function r(ct){return function(){return ct}}var n=Math.abs,i=Math.atan2,a=Math.cos,o=Math.max,s=Math.min,u=Math.sin,l=Math.sqrt,f=1e-12,c=Math.PI,h=c/2,d=2*c;function p(ct){return ct>1?0:ct<-1?c:Math.acos(ct)}function _(ct){return ct>=1?h:ct<=-1?-h:Math.asin(ct)}function b(ct){return ct.innerRadius}function v(ct){return ct.outerRadius}function k(ct){return ct.startAngle}function E(ct){return ct.endAngle}function A(ct){return ct&&ct.padAngle}function L(ct,tr,pr,gr,Zr,Ti,en,ii){var Xi=pr-ct,aa=gr-tr,Mn=en-Zr,Un=ii-Ti,Ga=Un*Xi-Mn*aa;if(!(Ga*Gawa*wa+ws*ws&&(uo=$a,ls=fo),{cx:uo,cy:ls,x01:-Mn,y01:-Un,x11:uo*(Zr/kn-1),y11:ls*(Zr/kn-1)}}function C(){var ct=b,tr=v,pr=r(0),gr=null,Zr=k,Ti=E,en=A,ii=null;function Xi(){var aa,Mn,Un=+ct.apply(this,arguments),Ga=+tr.apply(this,arguments),ma=Zr.apply(this,arguments)-h,oa=Ti.apply(this,arguments)-h,ka=n(oa-ma),so=oa>ma;if(ii||(ii=aa=t.path()),Gaf))ii.moveTo(0,0);else if(ka>d-f)ii.moveTo(Ga*a(ma),Ga*u(ma)),ii.arc(0,0,Ga,ma,oa,!so),Un>f&&(ii.moveTo(Un*a(oa),Un*u(oa)),ii.arc(0,0,Un,oa,ma,so));else{var Kr=ma,Ia=oa,Yo=ma,fa=oa,kn=ka,Aa=ka,ys=en.apply(this,arguments)/2,uo=ys>f&&(gr?+gr.apply(this,arguments):l(Un*Un+Ga*Ga)),ls=s(n(Ga-Un)/2,+pr.apply(this,arguments)),$a=ls,fo=ls,mn,ra;if(uo>f){var wa=_(uo/Un*u(ys)),ws=_(uo/Ga*u(ys));(kn-=wa*2)>f?(wa*=so?1:-1,Yo+=wa,fa-=wa):(kn=0,Yo=fa=(ma+oa)/2),(Aa-=ws*2)>f?(ws*=so?1:-1,Kr+=ws,Ia-=ws):(Aa=0,Kr=Ia=(ma+oa)/2)}var Co=Ga*a(Kr),Po=Ga*u(Kr),Wi=Un*a(fa),gn=Un*u(fa);if(ls>f){var Ps=Ga*a(Ia),Ha=Ga*u(Ia),Sn=Un*a(Yo),ao=Un*u(Yo),Ba;if(kaf?fo>f?(mn=x(Sn,ao,Co,Po,Ga,fo,so),ra=x(Ps,Ha,Wi,gn,Ga,fo,so),ii.moveTo(mn.cx+mn.x01,mn.cy+mn.y01),fof)||!(kn>f)?ii.lineTo(Wi,gn):$a>f?(mn=x(Wi,gn,Ps,Ha,Un,-$a,so),ra=x(Co,Po,Sn,ao,Un,-$a,so),ii.lineTo(mn.cx+mn.x01,mn.cy+mn.y01),$a=Ga;--ma)ii.point(Ia[ma],Yo[ma]);ii.lineEnd(),ii.areaEnd()}so&&(Ia[Un]=+ct(ka,Un,Mn),Yo[Un]=+pr(ka,Un,Mn),ii.point(tr?+tr(ka,Un,Mn):Ia[Un],gr?+gr(ka,Un,Mn):Yo[Un]))}if(Kr)return ii=null,Kr+""||null}function aa(){return B().defined(Zr).curve(en).context(Ti)}return Xi.x=function(Mn){return arguments.length?(ct=typeof Mn=="function"?Mn:r(+Mn),tr=null,Xi):ct},Xi.x0=function(Mn){return arguments.length?(ct=typeof Mn=="function"?Mn:r(+Mn),Xi):ct},Xi.x1=function(Mn){return arguments.length?(tr=Mn==null?null:typeof Mn=="function"?Mn:r(+Mn),Xi):tr},Xi.y=function(Mn){return arguments.length?(pr=typeof Mn=="function"?Mn:r(+Mn),gr=null,Xi):pr},Xi.y0=function(Mn){return arguments.length?(pr=typeof Mn=="function"?Mn:r(+Mn),Xi):pr},Xi.y1=function(Mn){return arguments.length?(gr=Mn==null?null:typeof Mn=="function"?Mn:r(+Mn),Xi):gr},Xi.lineX0=Xi.lineY0=function(){return aa().x(ct).y(pr)},Xi.lineY1=function(){return aa().x(ct).y(gr)},Xi.lineX1=function(){return aa().x(tr).y(pr)},Xi.defined=function(Mn){return arguments.length?(Zr=typeof Mn=="function"?Mn:r(!!Mn),Xi):Zr},Xi.curve=function(Mn){return arguments.length?(en=Mn,Ti!=null&&(ii=en(Ti)),Xi):en},Xi.context=function(Mn){return arguments.length?(Mn==null?Ti=ii=null:ii=en(Ti=Mn),Xi):Ti},Xi}function U(ct,tr){return trct?1:tr>=ct?0:NaN}function G(ct){return ct}function j(){var ct=G,tr=U,pr=null,gr=r(0),Zr=r(d),Ti=r(0);function en(ii){var Xi,aa=ii.length,Mn,Un,Ga=0,ma=new Array(aa),oa=new Array(aa),ka=+gr.apply(this,arguments),so=Math.min(d,Math.max(-d,Zr.apply(this,arguments)-ka)),Kr,Ia=Math.min(Math.abs(so)/aa,Ti.apply(this,arguments)),Yo=Ia*(so<0?-1:1),fa;for(Xi=0;Xi0&&(Ga+=fa);for(tr!=null?ma.sort(function(kn,Aa){return tr(oa[kn],oa[Aa])}):pr!=null&&ma.sort(function(kn,Aa){return pr(ii[kn],ii[Aa])}),Xi=0,Un=Ga?(so-aa*Yo)/Ga:0;Xi0?fa*Un:0)+Yo,oa[Mn]={data:ii[Mn],index:Xi,value:fa,startAngle:ka,endAngle:Kr,padAngle:Ia};return oa}return en.value=function(ii){return arguments.length?(ct=typeof ii=="function"?ii:r(+ii),en):ct},en.sortValues=function(ii){return arguments.length?(tr=ii,pr=null,en):tr},en.sort=function(ii){return arguments.length?(pr=ii,tr=null,en):pr},en.startAngle=function(ii){return arguments.length?(gr=typeof ii=="function"?ii:r(+ii),en):gr},en.endAngle=function(ii){return arguments.length?(Zr=typeof ii=="function"?ii:r(+ii),en):Zr},en.padAngle=function(ii){return arguments.length?(Ti=typeof ii=="function"?ii:r(+ii),en):Ti},en}var H=W(m);function N(ct){this._curve=ct}N.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(ct,tr){this._curve.point(tr*Math.sin(ct),tr*-Math.cos(ct))}};function W(ct){function tr(pr){return new N(ct(pr))}return tr._curve=ct,tr}function re(ct){var tr=ct.curve;return ct.angle=ct.x,delete ct.x,ct.radius=ct.y,delete ct.y,ct.curve=function(pr){return arguments.length?tr(W(pr)):tr()._curve},ct}function ae(){return re(B().curve(H))}function be(){var ct=F().curve(H),tr=ct.curve,pr=ct.lineX0,gr=ct.lineX1,Zr=ct.lineY0,Ti=ct.lineY1;return ct.angle=ct.x,delete ct.x,ct.startAngle=ct.x0,delete ct.x0,ct.endAngle=ct.x1,delete ct.x1,ct.radius=ct.y,delete ct.y,ct.innerRadius=ct.y0,delete ct.y0,ct.outerRadius=ct.y1,delete ct.y1,ct.lineStartAngle=function(){return re(pr())},delete ct.lineX0,ct.lineEndAngle=function(){return re(gr())},delete ct.lineX1,ct.lineInnerRadius=function(){return re(Zr())},delete ct.lineY0,ct.lineOuterRadius=function(){return re(Ti())},delete ct.lineY1,ct.curve=function(en){return arguments.length?tr(W(en)):tr()._curve},ct}function ze(ct,tr){return[(tr=+tr)*Math.cos(ct-=Math.PI/2),tr*Math.sin(ct)]}var Ce=Array.prototype.slice;function de(ct){return ct.source}function te(ct){return ct.target}function ke(ct){var tr=de,pr=te,gr=P,Zr=T,Ti=null;function en(){var ii,Xi=Ce.call(arguments),aa=tr.apply(this,Xi),Mn=pr.apply(this,Xi);if(Ti||(Ti=ii=t.path()),ct(Ti,+gr.apply(this,(Xi[0]=aa,Xi)),+Zr.apply(this,Xi),+gr.apply(this,(Xi[0]=Mn,Xi)),+Zr.apply(this,Xi)),ii)return Ti=null,ii+""||null}return en.source=function(ii){return arguments.length?(tr=ii,en):tr},en.target=function(ii){return arguments.length?(pr=ii,en):pr},en.x=function(ii){return arguments.length?(gr=typeof ii=="function"?ii:r(+ii),en):gr},en.y=function(ii){return arguments.length?(Zr=typeof ii=="function"?ii:r(+ii),en):Zr},en.context=function(ii){return arguments.length?(Ti=ii==null?null:ii,en):Ti},en}function Ee(ct,tr,pr,gr,Zr){ct.moveTo(tr,pr),ct.bezierCurveTo(tr=(tr+gr)/2,pr,tr,Zr,gr,Zr)}function Me(ct,tr,pr,gr,Zr){ct.moveTo(tr,pr),ct.bezierCurveTo(tr,pr=(pr+Zr)/2,gr,pr,gr,Zr)}function Ue(ct,tr,pr,gr,Zr){var Ti=ze(tr,pr),en=ze(tr,pr=(pr+Zr)/2),ii=ze(gr,pr),Xi=ze(gr,Zr);ct.moveTo(Ti[0],Ti[1]),ct.bezierCurveTo(en[0],en[1],ii[0],ii[1],Xi[0],Xi[1])}function De(){return ke(Ee)}function ye(){return ke(Me)}function qe(){var ct=ke(Ue);return ct.angle=ct.x,delete ct.x,ct.radius=ct.y,delete ct.y,ct}var ce={draw:function(ct,tr){var pr=Math.sqrt(tr/c);ct.moveTo(pr,0),ct.arc(0,0,pr,0,d)}},Je={draw:function(ct,tr){var pr=Math.sqrt(tr/5)/2;ct.moveTo(-3*pr,-pr),ct.lineTo(-pr,-pr),ct.lineTo(-pr,-3*pr),ct.lineTo(pr,-3*pr),ct.lineTo(pr,-pr),ct.lineTo(3*pr,-pr),ct.lineTo(3*pr,pr),ct.lineTo(pr,pr),ct.lineTo(pr,3*pr),ct.lineTo(-pr,3*pr),ct.lineTo(-pr,pr),ct.lineTo(-3*pr,pr),ct.closePath()}},nt=Math.sqrt(1/3),gt=nt*2,Nt={draw:function(ct,tr){var pr=Math.sqrt(tr/gt),gr=pr*nt;ct.moveTo(0,-pr),ct.lineTo(gr,0),ct.lineTo(0,pr),ct.lineTo(-gr,0),ct.closePath()}},at=.8908130915292852,Ke=Math.sin(c/10)/Math.sin(7*c/10),Ct=Math.sin(d/10)*Ke,wt=-Math.cos(d/10)*Ke,St={draw:function(ct,tr){var pr=Math.sqrt(tr*at),gr=Ct*pr,Zr=wt*pr;ct.moveTo(0,-pr),ct.lineTo(gr,Zr);for(var Ti=1;Ti<5;++Ti){var en=d*Ti/5,ii=Math.cos(en),Xi=Math.sin(en);ct.lineTo(Xi*pr,-ii*pr),ct.lineTo(ii*gr-Xi*Zr,Xi*gr+ii*Zr)}ct.closePath()}},Dt={draw:function(ct,tr){var pr=Math.sqrt(tr),gr=-pr/2;ct.rect(gr,gr,pr,pr)}},Zt=Math.sqrt(3),Et={draw:function(ct,tr){var pr=-Math.sqrt(tr/(Zt*3));ct.moveTo(0,pr*2),ct.lineTo(-Zt*pr,-pr),ct.lineTo(Zt*pr,-pr),ct.closePath()}},Te=-.5,ot=Math.sqrt(3)/2,Tt=1/Math.sqrt(12),vt=(Tt/2+1)*3,Ye={draw:function(ct,tr){var pr=Math.sqrt(tr/vt),gr=pr/2,Zr=pr*Tt,Ti=gr,en=pr*Tt+pr,ii=-Ti,Xi=en;ct.moveTo(gr,Zr),ct.lineTo(Ti,en),ct.lineTo(ii,Xi),ct.lineTo(Te*gr-ot*Zr,ot*gr+Te*Zr),ct.lineTo(Te*Ti-ot*en,ot*Ti+Te*en),ct.lineTo(Te*ii-ot*Xi,ot*ii+Te*Xi),ct.lineTo(Te*gr+ot*Zr,Te*Zr-ot*gr),ct.lineTo(Te*Ti+ot*en,Te*en-ot*Ti),ct.lineTo(Te*ii+ot*Xi,Te*Xi-ot*ii),ct.closePath()}},He=[ce,Je,Nt,Dt,St,Et,Ye];function it(){var ct=r(ce),tr=r(64),pr=null;function gr(){var Zr;if(pr||(pr=Zr=t.path()),ct.apply(this,arguments).draw(pr,+tr.apply(this,arguments)),Zr)return pr=null,Zr+""||null}return gr.type=function(Zr){return arguments.length?(ct=typeof Zr=="function"?Zr:r(Zr),gr):ct},gr.size=function(Zr){return arguments.length?(tr=typeof Zr=="function"?Zr:r(+Zr),gr):tr},gr.context=function(Zr){return arguments.length?(pr=Zr==null?null:Zr,gr):pr},gr}function et(){}function It(ct,tr,pr){ct._context.bezierCurveTo((2*ct._x0+ct._x1)/3,(2*ct._y0+ct._y1)/3,(ct._x0+2*ct._x1)/3,(ct._y0+2*ct._y1)/3,(ct._x0+4*ct._x1+tr)/6,(ct._y0+4*ct._y1+pr)/6)}function Yt(ct){this._context=ct}Yt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:It(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ct,tr){switch(ct=+ct,tr=+tr,this._point){case 0:this._point=1,this._line?this._context.lineTo(ct,tr):this._context.moveTo(ct,tr);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:It(this,ct,tr);break}this._x0=this._x1,this._x1=ct,this._y0=this._y1,this._y1=tr}};function cr(ct){return new Yt(ct)}function _r(ct){this._context=ct}_r.prototype={areaStart:et,areaEnd:et,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(ct,tr){switch(ct=+ct,tr=+tr,this._point){case 0:this._point=1,this._x2=ct,this._y2=tr;break;case 1:this._point=2,this._x3=ct,this._y3=tr;break;case 2:this._point=3,this._x4=ct,this._y4=tr,this._context.moveTo((this._x0+4*this._x1+ct)/6,(this._y0+4*this._y1+tr)/6);break;default:It(this,ct,tr);break}this._x0=this._x1,this._x1=ct,this._y0=this._y1,this._y1=tr}};function yr(ct){return new _r(ct)}function Ut(ct){this._context=ct}Ut.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ct,tr){switch(ct=+ct,tr=+tr,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var pr=(this._x0+4*this._x1+ct)/6,gr=(this._y0+4*this._y1+tr)/6;this._line?this._context.lineTo(pr,gr):this._context.moveTo(pr,gr);break;case 3:this._point=4;default:It(this,ct,tr);break}this._x0=this._x1,this._x1=ct,this._y0=this._y1,this._y1=tr}};function Re(ct){return new Ut(ct)}function xe(ct,tr){this._basis=new Yt(ct),this._beta=tr}xe.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var ct=this._x,tr=this._y,pr=ct.length-1;if(pr>0)for(var gr=ct[0],Zr=tr[0],Ti=ct[pr]-gr,en=tr[pr]-Zr,ii=-1,Xi;++ii<=pr;)Xi=ii/pr,this._basis.point(this._beta*ct[ii]+(1-this._beta)*(gr+Xi*Ti),this._beta*tr[ii]+(1-this._beta)*(Zr+Xi*en));this._x=this._y=null,this._basis.lineEnd()},point:function(ct,tr){this._x.push(+ct),this._y.push(+tr)}};var Oe=function ct(tr){function pr(gr){return tr===1?new Yt(gr):new xe(gr,tr)}return pr.beta=function(gr){return ct(+gr)},pr}(.85);function Ie(ct,tr,pr){ct._context.bezierCurveTo(ct._x1+ct._k*(ct._x2-ct._x0),ct._y1+ct._k*(ct._y2-ct._y0),ct._x2+ct._k*(ct._x1-tr),ct._y2+ct._k*(ct._y1-pr),ct._x2,ct._y2)}function Fe(ct,tr){this._context=ct,this._k=(1-tr)/6}Fe.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Ie(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ct,tr){switch(ct=+ct,tr=+tr,this._point){case 0:this._point=1,this._line?this._context.lineTo(ct,tr):this._context.moveTo(ct,tr);break;case 1:this._point=2,this._x1=ct,this._y1=tr;break;case 2:this._point=3;default:Ie(this,ct,tr);break}this._x0=this._x1,this._x1=this._x2,this._x2=ct,this._y0=this._y1,this._y1=this._y2,this._y2=tr}};var ft=function ct(tr){function pr(gr){return new Fe(gr,tr)}return pr.tension=function(gr){return ct(+gr)},pr}(0);function ge(ct,tr){this._context=ct,this._k=(1-tr)/6}ge.prototype={areaStart:et,areaEnd:et,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(ct,tr){switch(ct=+ct,tr=+tr,this._point){case 0:this._point=1,this._x3=ct,this._y3=tr;break;case 1:this._point=2,this._context.moveTo(this._x4=ct,this._y4=tr);break;case 2:this._point=3,this._x5=ct,this._y5=tr;break;default:Ie(this,ct,tr);break}this._x0=this._x1,this._x1=this._x2,this._x2=ct,this._y0=this._y1,this._y1=this._y2,this._y2=tr}};var fe=function ct(tr){function pr(gr){return new ge(gr,tr)}return pr.tension=function(gr){return ct(+gr)},pr}(0);function pe(ct,tr){this._context=ct,this._k=(1-tr)/6}pe.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ct,tr){switch(ct=+ct,tr=+tr,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ie(this,ct,tr);break}this._x0=this._x1,this._x1=this._x2,this._x2=ct,this._y0=this._y1,this._y1=this._y2,this._y2=tr}};var dt=function ct(tr){function pr(gr){return new pe(gr,tr)}return pr.tension=function(gr){return ct(+gr)},pr}(0);function Pt(ct,tr,pr){var gr=ct._x1,Zr=ct._y1,Ti=ct._x2,en=ct._y2;if(ct._l01_a>f){var ii=2*ct._l01_2a+3*ct._l01_a*ct._l12_a+ct._l12_2a,Xi=3*ct._l01_a*(ct._l01_a+ct._l12_a);gr=(gr*ii-ct._x0*ct._l12_2a+ct._x2*ct._l01_2a)/Xi,Zr=(Zr*ii-ct._y0*ct._l12_2a+ct._y2*ct._l01_2a)/Xi}if(ct._l23_a>f){var aa=2*ct._l23_2a+3*ct._l23_a*ct._l12_a+ct._l12_2a,Mn=3*ct._l23_a*(ct._l23_a+ct._l12_a);Ti=(Ti*aa+ct._x1*ct._l23_2a-tr*ct._l12_2a)/Mn,en=(en*aa+ct._y1*ct._l23_2a-pr*ct._l12_2a)/Mn}ct._context.bezierCurveTo(gr,Zr,Ti,en,ct._x2,ct._y2)}function zt(ct,tr){this._context=ct,this._alpha=tr}zt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ct,tr){if(ct=+ct,tr=+tr,this._point){var pr=this._x2-ct,gr=this._y2-tr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(pr*pr+gr*gr,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(ct,tr):this._context.moveTo(ct,tr);break;case 1:this._point=2;break;case 2:this._point=3;default:Pt(this,ct,tr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ct,this._y0=this._y1,this._y1=this._y2,this._y2=tr}};var rr=function ct(tr){function pr(gr){return tr?new zt(gr,tr):new Fe(gr,0)}return pr.alpha=function(gr){return ct(+gr)},pr}(.5);function Gr(ct,tr){this._context=ct,this._alpha=tr}Gr.prototype={areaStart:et,areaEnd:et,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(ct,tr){if(ct=+ct,tr=+tr,this._point){var pr=this._x2-ct,gr=this._y2-tr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(pr*pr+gr*gr,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=ct,this._y3=tr;break;case 1:this._point=2,this._context.moveTo(this._x4=ct,this._y4=tr);break;case 2:this._point=3,this._x5=ct,this._y5=tr;break;default:Pt(this,ct,tr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ct,this._y0=this._y1,this._y1=this._y2,this._y2=tr}};var Br=function ct(tr){function pr(gr){return tr?new Gr(gr,tr):new ge(gr,0)}return pr.alpha=function(gr){return ct(+gr)},pr}(.5);function Er(ct,tr){this._context=ct,this._alpha=tr}Er.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ct,tr){if(ct=+ct,tr=+tr,this._point){var pr=this._x2-ct,gr=this._y2-tr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(pr*pr+gr*gr,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Pt(this,ct,tr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ct,this._y0=this._y1,this._y1=this._y2,this._y2=tr}};var Rr=function ct(tr){function pr(gr){return tr?new Er(gr,tr):new pe(gr,0)}return pr.alpha=function(gr){return ct(+gr)},pr}(.5);function pi(ct){this._context=ct}pi.prototype={areaStart:et,areaEnd:et,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(ct,tr){ct=+ct,tr=+tr,this._point?this._context.lineTo(ct,tr):(this._point=1,this._context.moveTo(ct,tr))}};function Di(ct){return new pi(ct)}function ni(ct){return ct<0?-1:1}function $i(ct,tr,pr){var gr=ct._x1-ct._x0,Zr=tr-ct._x1,Ti=(ct._y1-ct._y0)/(gr||Zr<0&&-0),en=(pr-ct._y1)/(Zr||gr<0&&-0),ii=(Ti*Zr+en*gr)/(gr+Zr);return(ni(Ti)+ni(en))*Math.min(Math.abs(Ti),Math.abs(en),.5*Math.abs(ii))||0}function Qi(ct,tr){var pr=ct._x1-ct._x0;return pr?(3*(ct._y1-ct._y0)/pr-tr)/2:tr}function si(ct,tr,pr){var gr=ct._x0,Zr=ct._y0,Ti=ct._x1,en=ct._y1,ii=(Ti-gr)/3;ct._context.bezierCurveTo(gr+ii,Zr+ii*tr,Ti-ii,en-ii*pr,Ti,en)}function Ai(ct){this._context=ct}Ai.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:si(this,this._t0,Qi(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ct,tr){var pr=NaN;if(ct=+ct,tr=+tr,!(ct===this._x1&&tr===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(ct,tr):this._context.moveTo(ct,tr);break;case 1:this._point=2;break;case 2:this._point=3,si(this,Qi(this,pr=$i(this,ct,tr)),pr);break;default:si(this,this._t0,pr=$i(this,ct,tr));break}this._x0=this._x1,this._x1=ct,this._y0=this._y1,this._y1=tr,this._t0=pr}}};function Ni(ct){this._context=new Rt(ct)}(Ni.prototype=Object.create(Ai.prototype)).point=function(ct,tr){Ai.prototype.point.call(this,tr,ct)};function Rt(ct){this._context=ct}Rt.prototype={moveTo:function(ct,tr){this._context.moveTo(tr,ct)},closePath:function(){this._context.closePath()},lineTo:function(ct,tr){this._context.lineTo(tr,ct)},bezierCurveTo:function(ct,tr,pr,gr,Zr,Ti){this._context.bezierCurveTo(tr,ct,gr,pr,Ti,Zr)}};function yt(ct){return new Ai(ct)}function Gt(ct){return new Ni(ct)}function Wt(ct){this._context=ct}Wt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var ct=this._x,tr=this._y,pr=ct.length;if(pr)if(this._line?this._context.lineTo(ct[0],tr[0]):this._context.moveTo(ct[0],tr[0]),pr===2)this._context.lineTo(ct[1],tr[1]);else for(var gr=xr(ct),Zr=xr(tr),Ti=0,en=1;en=0;--tr)Zr[tr]=(en[tr]-Zr[tr+1])/Ti[tr];for(Ti[pr-1]=(ct[pr]+Zr[pr-1])/2,tr=0;tr=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(ct,tr){switch(ct=+ct,tr=+tr,this._point){case 0:this._point=1,this._line?this._context.lineTo(ct,tr):this._context.moveTo(ct,tr);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,tr),this._context.lineTo(ct,tr);else{var pr=this._x*(1-this._t)+ct*this._t;this._context.lineTo(pr,this._y),this._context.lineTo(pr,tr)}break}}this._x=ct,this._y=tr}};function Or(ct){return new Nr(ct,.5)}function Hr(ct){return new Nr(ct,0)}function jr(ct){return new Nr(ct,1)}function gi(ct,tr){if((en=ct.length)>1)for(var pr=1,gr,Zr,Ti=ct[tr[0]],en,ii=Ti.length;pr=0;)pr[tr]=tr;return pr}function Vi(ct,tr){return ct[tr]}function ti(){var ct=r([]),tr=ki,pr=gi,gr=Vi;function Zr(Ti){var en=ct.apply(this,arguments),ii,Xi=Ti.length,aa=en.length,Mn=new Array(aa),Un;for(ii=0;ii0){for(var pr,gr,Zr=0,Ti=ct[0].length,en;Zr0)for(var pr,gr=0,Zr,Ti,en,ii,Xi,aa=ct[tr[0]].length;gr0?(Zr[0]=en,Zr[1]=en+=Ti):Ti<0?(Zr[1]=ii,Zr[0]=ii+=Ti):(Zr[0]=0,Zr[1]=Ti)}function oi(ct,tr){if((Zr=ct.length)>0){for(var pr=0,gr=ct[tr[0]],Zr,Ti=gr.length;pr0)||!((Ti=(Zr=ct[tr[0]]).length)>0))){for(var pr=0,gr=1,Zr,Ti,en;grTi&&(Ti=Zr,pr=tr);return pr}function Ri(ct){var tr=ct.map(Ii);return ki(ct).sort(function(pr,gr){return tr[pr]-tr[gr]})}function Ii(ct){for(var tr=0,pr=-1,gr=ct.length,Zr;++pr{(function(e,t){typeof RB=="object"&&typeof AXe!="undefined"?t(RB,nk(),kB(),t$()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3)})(RB,function(e,t,r,n){"use strict";function i(m){return m.target.depth}function a(m){return m.depth}function o(m,P){return P-1-m.height}function s(m,P){return m.sourceLinks.length?m.depth:P-1}function u(m){return m.targetLinks.length?m.depth:m.sourceLinks.length?t.min(m.sourceLinks,i)-1:0}function l(m){return function(){return m}}function f(m,P){return h(m.source,P.source)||m.index-P.index}function c(m,P){return h(m.target,P.target)||m.index-P.index}function h(m,P){return m.y0-P.y0}function d(m){return m.value}function p(m){return(m.y0+m.y1)/2}function _(m){return p(m.source)*m.value}function b(m){return p(m.target)*m.value}function v(m){return m.index}function k(m){return m.nodes}function E(m){return m.links}function A(m,P){var T=m.get(P);if(!T)throw new Error("missing: "+P);return T}var L=function(){var m=0,P=0,T=1,B=1,F=24,U=8,G=v,j=s,H=k,N=E,W=32,re=2/3;function ae(){var ke={nodes:H.apply(null,arguments),links:N.apply(null,arguments)};return be(ke),ze(ke),Ce(ke),de(ke,W),te(ke),ke}ae.update=function(ke){return te(ke),ke},ae.nodeId=function(ke){return arguments.length?(G=typeof ke=="function"?ke:l(ke),ae):G},ae.nodeAlign=function(ke){return arguments.length?(j=typeof ke=="function"?ke:l(ke),ae):j},ae.nodeWidth=function(ke){return arguments.length?(F=+ke,ae):F},ae.nodePadding=function(ke){return arguments.length?(U=+ke,ae):U},ae.nodes=function(ke){return arguments.length?(H=typeof ke=="function"?ke:l(ke),ae):H},ae.links=function(ke){return arguments.length?(N=typeof ke=="function"?ke:l(ke),ae):N},ae.size=function(ke){return arguments.length?(m=P=0,T=+ke[0],B=+ke[1],ae):[T-m,B-P]},ae.extent=function(ke){return arguments.length?(m=+ke[0][0],T=+ke[1][0],P=+ke[0][1],B=+ke[1][1],ae):[[m,P],[T,B]]},ae.iterations=function(ke){return arguments.length?(W=+ke,ae):W};function be(ke){ke.nodes.forEach(function(Me,Ue){Me.index=Ue,Me.sourceLinks=[],Me.targetLinks=[]});var Ee=r.map(ke.nodes,G);ke.links.forEach(function(Me,Ue){Me.index=Ue;var De=Me.source,ye=Me.target;typeof De!="object"&&(De=Me.source=A(Ee,De)),typeof ye!="object"&&(ye=Me.target=A(Ee,ye)),De.sourceLinks.push(Me),ye.targetLinks.push(Me)})}function ze(ke){ke.nodes.forEach(function(Ee){Ee.value=Math.max(t.sum(Ee.sourceLinks,d),t.sum(Ee.targetLinks,d))})}function Ce(ke){var Ee,Me,Ue;for(Ee=ke.nodes,Me=[],Ue=0;Ee.length;++Ue,Ee=Me,Me=[])Ee.forEach(function(ye){ye.depth=Ue,ye.sourceLinks.forEach(function(qe){Me.indexOf(qe.target)<0&&Me.push(qe.target)})});for(Ee=ke.nodes,Me=[],Ue=0;Ee.length;++Ue,Ee=Me,Me=[])Ee.forEach(function(ye){ye.height=Ue,ye.targetLinks.forEach(function(qe){Me.indexOf(qe.source)<0&&Me.push(qe.source)})});var De=(T-m-F)/(Ue-1);ke.nodes.forEach(function(ye){ye.x1=(ye.x0=m+Math.max(0,Math.min(Ue-1,Math.floor(j.call(null,ye,Ue))))*De)+F})}function de(ke){var Ee=r.nest().key(function(Je){return Je.x0}).sortKeys(t.ascending).entries(ke.nodes).map(function(Je){return Je.values});De(),ce();for(var Me=1,Ue=W;Ue>0;--Ue)qe(Me*=.99),ce(),ye(Me),ce();function De(){var Je=t.max(Ee,function(Nt){return Nt.length}),nt=re*(B-P)/(Je-1);U>nt&&(U=nt);var gt=t.min(Ee,function(Nt){return(B-P-(Nt.length-1)*U)/t.sum(Nt,d)});Ee.forEach(function(Nt){Nt.forEach(function(at,Ke){at.y1=(at.y0=Ke)+at.value*gt})}),ke.links.forEach(function(Nt){Nt.width=Nt.value*gt})}function ye(Je){Ee.forEach(function(nt){nt.forEach(function(gt){if(gt.targetLinks.length){var Nt=(t.sum(gt.targetLinks,_)/t.sum(gt.targetLinks,d)-p(gt))*Je;gt.y0+=Nt,gt.y1+=Nt}})})}function qe(Je){Ee.slice().reverse().forEach(function(nt){nt.forEach(function(gt){if(gt.sourceLinks.length){var Nt=(t.sum(gt.sourceLinks,b)/t.sum(gt.sourceLinks,d)-p(gt))*Je;gt.y0+=Nt,gt.y1+=Nt}})})}function ce(){Ee.forEach(function(Je){var nt,gt,Nt=P,at=Je.length,Ke;for(Je.sort(h),Ke=0;Ke0&&(nt.y0+=gt,nt.y1+=gt),Nt=nt.y1+U;if(gt=Nt-U-B,gt>0)for(Nt=nt.y0-=gt,nt.y1-=gt,Ke=at-2;Ke>=0;--Ke)nt=Je[Ke],gt=nt.y1+U-Nt,gt>0&&(nt.y0-=gt,nt.y1-=gt),Nt=nt.y0})}}function te(ke){ke.nodes.forEach(function(Ee){Ee.sourceLinks.sort(c),Ee.targetLinks.sort(f)}),ke.nodes.forEach(function(Ee){var Me=Ee.y0,Ue=Me;Ee.sourceLinks.forEach(function(De){De.y0=Me+De.width/2,Me+=De.width}),Ee.targetLinks.forEach(function(De){De.y1=Ue+De.width/2,Ue+=De.width})})}return ae};function x(m){return[m.source.x1,m.y0]}function C(m){return[m.target.x0,m.y1]}var M=function(){return n.linkHorizontal().source(x).target(C)};e.sankey=L,e.sankeyCenter=u,e.sankeyLeft=a,e.sankeyRight=o,e.sankeyJustify=s,e.sankeyLinkHorizontal=M,Object.defineProperty(e,"__esModule",{value:!0})})});var EXe=Ae((Uwr,MXe)=>{var ZYt=e$();MXe.exports=function(t,r){var n=[],i=[],a=[],o={},s=[],u;function l(E){a[E]=!1,o.hasOwnProperty(E)&&Object.keys(o[E]).forEach(function(A){delete o[E][A],a[A]&&l(A)})}function f(E){var A=!1;i.push(E),a[E]=!0;var L,x;for(L=0;L=E})}function d(E){h(E);for(var A=t,L=ZYt(A),x=L.components.filter(function(F){return F.length>1}),C=1/0,M,m=0;m{(function(e,t){typeof DB=="object"&&typeof kXe!="undefined"?t(DB,nk(),kB(),t$(),EXe()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,null)})(DB,function(e,t,r,n,i){"use strict";i=i&&i.hasOwnProperty("default")?i.default:i;function a(at){return at.target.depth}function o(at){return at.depth}function s(at,Ke){return Ke-1-at.height}function u(at,Ke){return at.sourceLinks.length?at.depth:Ke-1}function l(at){return at.targetLinks.length?at.depth:at.sourceLinks.length?t.min(at.sourceLinks,a)-1:0}function f(at){return function(){return at}}var c=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(at){return typeof at}:function(at){return at&&typeof Symbol=="function"&&at.constructor===Symbol&&at!==Symbol.prototype?"symbol":typeof at};function h(at,Ke){return p(at.source,Ke.source)||at.index-Ke.index}function d(at,Ke){return p(at.target,Ke.target)||at.index-Ke.index}function p(at,Ke){return at.partOfCycle===Ke.partOfCycle?at.y0-Ke.y0:at.circularLinkType==="top"||Ke.circularLinkType==="bottom"?-1:1}function _(at){return at.value}function b(at){return(at.y0+at.y1)/2}function v(at){return b(at.source)}function k(at){return b(at.target)}function E(at){return at.index}function A(at){return at.nodes}function L(at){return at.links}function x(at,Ke){var Ct=at.get(Ke);if(!Ct)throw new Error("missing: "+Ke);return Ct}function C(at,Ke){return Ke(at)}var M=25,m=10,P=.3;function T(){var at=0,Ke=0,Ct=1,wt=1,St=24,Dt,Zt=E,Et=u,Te=A,ot=L,Tt=32,vt=2,Ye,He=null;function it(){var Re={nodes:Te.apply(null,arguments),links:ot.apply(null,arguments)};et(Re),B(Re,Zt,He),It(Re),_r(Re),F(Re,Zt),yr(Re,Tt,Zt),Ut(Re);for(var xe=4,Oe=0;Oe0?xe+M+m:xe,Oe=Oe>0?Oe+M+m:Oe,Ie=Ie>0?Ie+M+m:Ie,Fe=Fe>0?Fe+M+m:Fe,{top:xe,bottom:Oe,left:Fe,right:Ie}}function cr(Re,xe){var Oe=t.max(Re.nodes,function(dt){return dt.column}),Ie=Ct-at,Fe=wt-Ke,ft=Ie+xe.right+xe.left,ge=Fe+xe.top+xe.bottom,fe=Ie/ft,pe=Fe/ge;return at=at*fe+xe.left,Ct=xe.right==0?Ct:Ct*fe,Ke=Ke*pe+xe.top,wt=wt*pe,Re.nodes.forEach(function(dt){dt.x0=at+dt.column*((Ct-at-St)/Oe),dt.x1=dt.x0+St}),pe}function _r(Re){var xe,Oe,Ie;for(xe=Re.nodes,Oe=[],Ie=0;xe.length;++Ie,xe=Oe,Oe=[])xe.forEach(function(Fe){Fe.depth=Ie,Fe.sourceLinks.forEach(function(ft){Oe.indexOf(ft.target)<0&&!ft.circular&&Oe.push(ft.target)})});for(xe=Re.nodes,Oe=[],Ie=0;xe.length;++Ie,xe=Oe,Oe=[])xe.forEach(function(Fe){Fe.height=Ie,Fe.targetLinks.forEach(function(ft){Oe.indexOf(ft.source)<0&&!ft.circular&&Oe.push(ft.source)})});Re.nodes.forEach(function(Fe){Fe.column=Math.floor(Et.call(null,Fe,Ie))})}function yr(Re,xe,Oe){var Ie=r.nest().key(function(dt){return dt.column}).sortKeys(t.ascending).entries(Re.nodes).map(function(dt){return dt.values});ge(Oe),pe();for(var Fe=1,ft=xe;ft>0;--ft)fe(Fe*=.99,Oe),pe();function ge(dt){if(Ye){var Pt=1/0;Ie.forEach(function(Br){var Er=wt*Ye/(Br.length+1);Pt=Er0))if(Br==0&&Gr==1)Rr=Er.y1-Er.y0,Er.y0=wt/2-Rr/2,Er.y1=wt/2+Rr/2;else if(Br==zt-1&&Gr==1)Rr=Er.y1-Er.y0,Er.y0=wt/2-Rr/2,Er.y1=wt/2+Rr/2;else{var pi=0,Di=t.mean(Er.sourceLinks,k),ni=t.mean(Er.targetLinks,v);Di&&ni?pi=(Di+ni)/2:pi=Di||ni;var $i=(pi-b(Er))*dt;Er.y0+=$i,Er.y1+=$i}})})}function pe(){Ie.forEach(function(dt){var Pt,zt,rr=Ke,Gr=dt.length,Br;for(dt.sort(p),Br=0;Br0&&(Pt.y0+=zt,Pt.y1+=zt),rr=Pt.y1+Dt;if(zt=rr-Dt-wt,zt>0)for(rr=Pt.y0-=zt,Pt.y1-=zt,Br=Gr-2;Br>=0;--Br)Pt=dt[Br],zt=Pt.y1+Dt-rr,zt>0&&(Pt.y0-=zt,Pt.y1-=zt),rr=Pt.y0})}}function Ut(Re){Re.nodes.forEach(function(xe){xe.sourceLinks.sort(d),xe.targetLinks.sort(h)}),Re.nodes.forEach(function(xe){var Oe=xe.y0,Ie=Oe,Fe=xe.y1,ft=Fe;xe.sourceLinks.forEach(function(ge){ge.circular?(ge.y0=Fe-ge.width/2,Fe=Fe-ge.width):(ge.y0=Oe+ge.width/2,Oe+=ge.width)}),xe.targetLinks.forEach(function(ge){ge.circular?(ge.y1=ft-ge.width/2,ft=ft-ge.width):(ge.y1=Ie+ge.width/2,Ie+=ge.width)})})}return it}function B(at,Ke,Ct){var wt=0;if(Ct===null){for(var St=[],Dt=0;DtKe.source.column)}function j(at,Ke){var Ct=0;at.sourceLinks.forEach(function(St){Ct=St.circular&&!gt(St,Ke)?Ct+1:Ct});var wt=0;return at.targetLinks.forEach(function(St){wt=St.circular&&!gt(St,Ke)?wt+1:wt}),Ct+wt}function H(at){var Ke=at.source.sourceLinks,Ct=0;Ke.forEach(function(Dt){Ct=Dt.circular?Ct+1:Ct});var wt=at.target.targetLinks,St=0;return wt.forEach(function(Dt){St=Dt.circular?St+1:St}),!(Ct>1||St>1)}function N(at,Ke,Ct){return at.sort(ae),at.forEach(function(wt,St){var Dt=0;if(gt(wt,Ct)&&H(wt))wt.circularPathData.verticalBuffer=Dt+wt.width/2;else{var Zt=0;for(Zt;ZtDt?Et:Dt}wt.circularPathData.verticalBuffer=Dt+wt.width/2}}),at}function W(at,Ke,Ct,wt){var St=5,Dt=t.min(at.links,function(Te){return Te.source.y0});at.links.forEach(function(Te){Te.circular&&(Te.circularPathData={})});var Zt=at.links.filter(function(Te){return Te.circularLinkType=="top"});N(Zt,Ke,wt);var Et=at.links.filter(function(Te){return Te.circularLinkType=="bottom"});N(Et,Ke,wt),at.links.forEach(function(Te){if(Te.circular){if(Te.circularPathData.arcRadius=Te.width+m,Te.circularPathData.leftNodeBuffer=St,Te.circularPathData.rightNodeBuffer=St,Te.circularPathData.sourceWidth=Te.source.x1-Te.source.x0,Te.circularPathData.sourceX=Te.source.x0+Te.circularPathData.sourceWidth,Te.circularPathData.targetX=Te.target.x0,Te.circularPathData.sourceY=Te.y0,Te.circularPathData.targetY=Te.y1,gt(Te,wt)&&H(Te))Te.circularPathData.leftSmallArcRadius=m+Te.width/2,Te.circularPathData.leftLargeArcRadius=m+Te.width/2,Te.circularPathData.rightSmallArcRadius=m+Te.width/2,Te.circularPathData.rightLargeArcRadius=m+Te.width/2,Te.circularLinkType=="bottom"?(Te.circularPathData.verticalFullExtent=Te.source.y1+M+Te.circularPathData.verticalBuffer,Te.circularPathData.verticalLeftInnerExtent=Te.circularPathData.verticalFullExtent-Te.circularPathData.leftLargeArcRadius,Te.circularPathData.verticalRightInnerExtent=Te.circularPathData.verticalFullExtent-Te.circularPathData.rightLargeArcRadius):(Te.circularPathData.verticalFullExtent=Te.source.y0-M-Te.circularPathData.verticalBuffer,Te.circularPathData.verticalLeftInnerExtent=Te.circularPathData.verticalFullExtent+Te.circularPathData.leftLargeArcRadius,Te.circularPathData.verticalRightInnerExtent=Te.circularPathData.verticalFullExtent+Te.circularPathData.rightLargeArcRadius);else{var ot=Te.source.column,Tt=Te.circularLinkType,vt=at.links.filter(function(it){return it.source.column==ot&&it.circularLinkType==Tt});Te.circularLinkType=="bottom"?vt.sort(ze):vt.sort(be);var Ye=0;vt.forEach(function(it,et){it.circularLinkID==Te.circularLinkID&&(Te.circularPathData.leftSmallArcRadius=m+Te.width/2+Ye,Te.circularPathData.leftLargeArcRadius=m+Te.width/2+et*Ke+Ye),Ye=Ye+it.width}),ot=Te.target.column,vt=at.links.filter(function(it){return it.target.column==ot&&it.circularLinkType==Tt}),Te.circularLinkType=="bottom"?vt.sort(de):vt.sort(Ce),Ye=0,vt.forEach(function(it,et){it.circularLinkID==Te.circularLinkID&&(Te.circularPathData.rightSmallArcRadius=m+Te.width/2+Ye,Te.circularPathData.rightLargeArcRadius=m+Te.width/2+et*Ke+Ye),Ye=Ye+it.width}),Te.circularLinkType=="bottom"?(Te.circularPathData.verticalFullExtent=Math.max(Ct,Te.source.y1,Te.target.y1)+M+Te.circularPathData.verticalBuffer,Te.circularPathData.verticalLeftInnerExtent=Te.circularPathData.verticalFullExtent-Te.circularPathData.leftLargeArcRadius,Te.circularPathData.verticalRightInnerExtent=Te.circularPathData.verticalFullExtent-Te.circularPathData.rightLargeArcRadius):(Te.circularPathData.verticalFullExtent=Dt-M-Te.circularPathData.verticalBuffer,Te.circularPathData.verticalLeftInnerExtent=Te.circularPathData.verticalFullExtent+Te.circularPathData.leftLargeArcRadius,Te.circularPathData.verticalRightInnerExtent=Te.circularPathData.verticalFullExtent+Te.circularPathData.rightLargeArcRadius)}Te.circularPathData.leftInnerExtent=Te.circularPathData.sourceX+Te.circularPathData.leftNodeBuffer,Te.circularPathData.rightInnerExtent=Te.circularPathData.targetX-Te.circularPathData.rightNodeBuffer,Te.circularPathData.leftFullExtent=Te.circularPathData.sourceX+Te.circularPathData.leftLargeArcRadius+Te.circularPathData.leftNodeBuffer,Te.circularPathData.rightFullExtent=Te.circularPathData.targetX-Te.circularPathData.rightLargeArcRadius-Te.circularPathData.rightNodeBuffer}if(Te.circular)Te.path=re(Te);else{var He=n.linkHorizontal().source(function(it){var et=it.source.x0+(it.source.x1-it.source.x0),It=it.y0;return[et,It]}).target(function(it){var et=it.target.x0,It=it.y1;return[et,It]});Te.path=He(Te)}})}function re(at){var Ke="";return at.circularLinkType=="top"?Ke="M"+at.circularPathData.sourceX+" "+at.circularPathData.sourceY+" L"+at.circularPathData.leftInnerExtent+" "+at.circularPathData.sourceY+" A"+at.circularPathData.leftLargeArcRadius+" "+at.circularPathData.leftSmallArcRadius+" 0 0 0 "+at.circularPathData.leftFullExtent+" "+(at.circularPathData.sourceY-at.circularPathData.leftSmallArcRadius)+" L"+at.circularPathData.leftFullExtent+" "+at.circularPathData.verticalLeftInnerExtent+" A"+at.circularPathData.leftLargeArcRadius+" "+at.circularPathData.leftLargeArcRadius+" 0 0 0 "+at.circularPathData.leftInnerExtent+" "+at.circularPathData.verticalFullExtent+" L"+at.circularPathData.rightInnerExtent+" "+at.circularPathData.verticalFullExtent+" A"+at.circularPathData.rightLargeArcRadius+" "+at.circularPathData.rightLargeArcRadius+" 0 0 0 "+at.circularPathData.rightFullExtent+" "+at.circularPathData.verticalRightInnerExtent+" L"+at.circularPathData.rightFullExtent+" "+(at.circularPathData.targetY-at.circularPathData.rightSmallArcRadius)+" A"+at.circularPathData.rightLargeArcRadius+" "+at.circularPathData.rightSmallArcRadius+" 0 0 0 "+at.circularPathData.rightInnerExtent+" "+at.circularPathData.targetY+" L"+at.circularPathData.targetX+" "+at.circularPathData.targetY:Ke="M"+at.circularPathData.sourceX+" "+at.circularPathData.sourceY+" L"+at.circularPathData.leftInnerExtent+" "+at.circularPathData.sourceY+" A"+at.circularPathData.leftLargeArcRadius+" "+at.circularPathData.leftSmallArcRadius+" 0 0 1 "+at.circularPathData.leftFullExtent+" "+(at.circularPathData.sourceY+at.circularPathData.leftSmallArcRadius)+" L"+at.circularPathData.leftFullExtent+" "+at.circularPathData.verticalLeftInnerExtent+" A"+at.circularPathData.leftLargeArcRadius+" "+at.circularPathData.leftLargeArcRadius+" 0 0 1 "+at.circularPathData.leftInnerExtent+" "+at.circularPathData.verticalFullExtent+" L"+at.circularPathData.rightInnerExtent+" "+at.circularPathData.verticalFullExtent+" A"+at.circularPathData.rightLargeArcRadius+" "+at.circularPathData.rightLargeArcRadius+" 0 0 1 "+at.circularPathData.rightFullExtent+" "+at.circularPathData.verticalRightInnerExtent+" L"+at.circularPathData.rightFullExtent+" "+(at.circularPathData.targetY+at.circularPathData.rightSmallArcRadius)+" A"+at.circularPathData.rightLargeArcRadius+" "+at.circularPathData.rightSmallArcRadius+" 0 0 1 "+at.circularPathData.rightInnerExtent+" "+at.circularPathData.targetY+" L"+at.circularPathData.targetX+" "+at.circularPathData.targetY,Ke}function ae(at,Ke){return te(at)==te(Ke)?at.circularLinkType=="bottom"?ze(at,Ke):be(at,Ke):te(Ke)-te(at)}function be(at,Ke){return at.y0-Ke.y0}function ze(at,Ke){return Ke.y0-at.y0}function Ce(at,Ke){return at.y1-Ke.y1}function de(at,Ke){return Ke.y1-at.y1}function te(at){return at.target.column-at.source.column}function ke(at){return at.target.x0-at.source.x1}function Ee(at,Ke){var Ct=U(at),wt=ke(Ke)/Math.tan(Ct),St=nt(at)=="up"?at.y1+wt:at.y1-wt;return St}function Me(at,Ke){var Ct=U(at),wt=ke(Ke)/Math.tan(Ct),St=nt(at)=="up"?at.y1-wt:at.y1+wt;return St}function Ue(at,Ke,Ct,wt){at.links.forEach(function(St){if(!St.circular&&St.target.column-St.source.column>1){var Dt=St.source.column+1,Zt=St.target.column-1,Et=1,Te=Zt-Dt+1;for(Et=1;Dt<=Zt;Dt++,Et++)at.nodes.forEach(function(ot){if(ot.column==Dt){var Tt=Et/(Te+1),vt=Math.pow(1-Tt,3),Ye=3*Tt*Math.pow(1-Tt,2),He=3*Math.pow(Tt,2)*(1-Tt),it=Math.pow(Tt,3),et=vt*St.y0+Ye*St.y0+He*St.y1+it*St.y1,It=et-St.width/2,Yt=et+St.width/2,cr;It>ot.y0&&Itot.y0&&Ytot.y1&&ye(_r,cr,Ke,Ct)})):Itot.y1&&(cr=Yt-ot.y0+10,ot=ye(ot,cr,Ke,Ct),at.nodes.forEach(function(_r){C(_r,wt)==C(ot,wt)||_r.column!=ot.column||_r.y0ot.y1&&ye(_r,cr,Ke,Ct)}))}})}})}function De(at,Ke){return at.y0>Ke.y0&&at.y0Ke.y0&&at.y1Ke.y1}function ye(at,Ke,Ct,wt){return at.y0+Ke>=Ct&&at.y1+Ke<=wt&&(at.y0=at.y0+Ke,at.y1=at.y1+Ke,at.targetLinks.forEach(function(St){St.y1=St.y1+Ke}),at.sourceLinks.forEach(function(St){St.y0=St.y0+Ke})),at}function qe(at,Ke,Ct,wt){at.nodes.forEach(function(St){wt&&St.y+(St.y1-St.y0)>Ke&&(St.y=St.y-(St.y+(St.y1-St.y0)-Ke));var Dt=at.links.filter(function(Te){return C(Te.source,Ct)==C(St,Ct)}),Zt=Dt.length;Zt>1&&Dt.sort(function(Te,ot){if(!Te.circular&&!ot.circular){if(Te.target.column==ot.target.column)return Te.y1-ot.y1;if(Je(Te,ot)){if(Te.target.column>ot.target.column){var Tt=Me(ot,Te);return Te.y1-Tt}if(ot.target.column>Te.target.column){var vt=Me(Te,ot);return vt-ot.y1}}else return Te.y1-ot.y1}if(Te.circular&&!ot.circular)return Te.circularLinkType=="top"?-1:1;if(ot.circular&&!Te.circular)return ot.circularLinkType=="top"?1:-1;if(Te.circular&&ot.circular)return Te.circularLinkType===ot.circularLinkType&&Te.circularLinkType=="top"?Te.target.column===ot.target.column?Te.target.y1-ot.target.y1:ot.target.column-Te.target.column:Te.circularLinkType===ot.circularLinkType&&Te.circularLinkType=="bottom"?Te.target.column===ot.target.column?ot.target.y1-Te.target.y1:Te.target.column-ot.target.column:Te.circularLinkType=="top"?-1:1});var Et=St.y0;Dt.forEach(function(Te){Te.y0=Et+Te.width/2,Et=Et+Te.width}),Dt.forEach(function(Te,ot){if(Te.circularLinkType=="bottom"){var Tt=ot+1,vt=0;for(Tt;Tt1&&St.sort(function(Et,Te){if(!Et.circular&&!Te.circular){if(Et.source.column==Te.source.column)return Et.y0-Te.y0;if(Je(Et,Te)){if(Te.source.column0?"up":"down"}function gt(at,Ke){return C(at.source,Ke)==C(at.target,Ke)}function Nt(at,Ke,Ct){var wt=at.nodes,St=at.links,Dt=!1,Zt=!1;if(St.forEach(function(Ye){Ye.circularLinkType=="top"?Dt=!0:Ye.circularLinkType=="bottom"&&(Zt=!0)}),Dt==!1||Zt==!1){var Et=t.min(wt,function(Ye){return Ye.y0}),Te=t.max(wt,function(Ye){return Ye.y1}),ot=Te-Et,Tt=Ct-Ke,vt=Tt/ot;wt.forEach(function(Ye){var He=(Ye.y1-Ye.y0)*vt;Ye.y0=(Ye.y0-Et)*vt,Ye.y1=Ye.y0+He}),St.forEach(function(Ye){Ye.y0=(Ye.y0-Et)*vt,Ye.y1=(Ye.y1-Et)*vt,Ye.width=Ye.width*vt})}}e.sankeyCircular=T,e.sankeyCenter=l,e.sankeyLeft=o,e.sankeyRight=s,e.sankeyJustify=u,Object.defineProperty(e,"__esModule",{value:!0})})});var r$=Ae((Vwr,LXe)=>{"use strict";LXe.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:"linear",cn:{sankey:"sankey",sankeyLinks:"sankey-links",sankeyLink:"sankey-link",sankeyNodeSet:"sankey-node-set",sankeyNode:"sankey-node",nodeRect:"node-rect",nodeLabel:"node-label"}}});var GXe=Ae((Gwr,VXe)=>{"use strict";var PXe=xXe(),YYt=(R2(),ob(I2)).interpolateNumber,zS=Jl(),Jk=SXe(),KYt=CXe(),dc=r$(),IS=cd(),ow=jl(),JYt=Mu(),v1=ei(),a$=v1.strTranslate,$Yt=v1.strRotate,o$=Jy(),$k=o$.keyFun,FB=o$.repeat,BXe=o$.unwrap,zXe=Xf(),QYt=$l(),OXe=td(),eKt=OXe.CAP_SHIFT,tKt=OXe.LINE_SPACING,rKt=3;function iKt(e,t,r){var n=BXe(t),i=n.trace,a=i.domain,o=i.orientation==="h",s=i.node.pad,u=i.node.thickness,l={justify:Jk.sankeyJustify,left:Jk.sankeyLeft,right:Jk.sankeyRight,center:Jk.sankeyCenter}[i.node.align],f=e.width*(a.x[1]-a.x[0]),c=e.height*(a.y[1]-a.y[0]),h=n._nodes,d=n._links,p=n.circular,_;p?_=KYt.sankeyCircular().circularLinkGap(0):_=Jk.sankey(),_.iterations(dc.sankeyIterations).size(o?[f,c]:[c,f]).nodeWidth(u).nodePadding(s).nodeId(function(U){return U.pointNumber}).nodeAlign(l).nodes(h).links(d);var b=_();_.nodePadding()=N||(H=N-j.y0,H>1e-6&&(j.y0+=H,j.y1+=H)),N=j.y1+s})}function P(U){var G=U.map(function(be,ze){return{x0:be.x0,index:ze}}).sort(function(be,ze){return be.x0-ze.x0}),j=[],H=-1,N,W=-1/0,re;for(v=0;vW+u&&(H+=1,N=ae.x0),W=ae.x0,j[H]||(j[H]=[]),j[H].push(ae),re=N-ae.x0,ae.x0+=re,ae.x1+=re}return j}if(i.node.x.length&&i.node.y.length){for(v=0;v0?" L "+i.targetX+" "+i.targetY:"")+"Z"):(r="M "+(i.targetX-t)+" "+(i.targetY-n)+" L "+(i.rightInnerExtent-t)+" "+(i.targetY-n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightSmallArcRadius+n)+" 0 0 0 "+(i.rightFullExtent-n-t)+" "+(i.targetY+i.rightSmallArcRadius)+" L "+(i.rightFullExtent-n-t)+" "+i.verticalRightInnerExtent,a&&o?r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightInnerExtent-n-t)+" "+(i.verticalFullExtent+n)+" L "+(i.rightFullExtent+n-t-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent+n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent:a?r+=" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightFullExtent-t-n-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" L "+(i.leftFullExtent+n+(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent:r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightInnerExtent-t)+" "+(i.verticalFullExtent+n)+" L "+i.leftInnerExtent+" "+(i.verticalFullExtent+n)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent,r+=" L "+(i.leftFullExtent+n)+" "+(i.sourceY+i.leftSmallArcRadius)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftSmallArcRadius+n)+" 0 0 0 "+i.leftInnerExtent+" "+(i.sourceY-n)+" L "+i.sourceX+" "+(i.sourceY-n)+" L "+i.sourceX+" "+(i.sourceY+n)+" L "+i.leftInnerExtent+" "+(i.sourceY+n)+" A "+(i.leftLargeArcRadius-n)+" "+(i.leftSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent-n)+" "+(i.sourceY+i.leftSmallArcRadius)+" L "+(i.leftFullExtent-n)+" "+i.verticalLeftInnerExtent,a&&o?r+=" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent-n-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" L "+(i.rightFullExtent+n-t+(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent:a?r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+(i.verticalFullExtent+n)+" L "+(i.rightFullExtent-t-n)+" "+(i.verticalFullExtent+n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent:r+=" A "+(i.leftLargeArcRadius-n)+" "+(i.leftLargeArcRadius-n)+" 0 0 1 "+i.leftInnerExtent+" "+(i.verticalFullExtent-n)+" L "+(i.rightInnerExtent-t)+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightLargeArcRadius-n)+" 0 0 1 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent,r+=" L "+(i.rightFullExtent+n-t)+" "+(i.targetY+i.rightSmallArcRadius)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightInnerExtent-t)+" "+(i.targetY+n)+" L "+(i.targetX-t)+" "+(i.targetY+n)+(t>0?" L "+i.targetX+" "+i.targetY:"")+"Z"),r}function s$(){var e=.5;function t(r){var n=r.linkArrowLength;if(r.link.circular)return aKt(r.link,n);var i=Math.abs((r.link.target.x0-r.link.source.x1)/2);n>i&&(n=i);var a=r.link.source.x1,o=r.link.target.x0-n,s=YYt(a,o),u=s(e),l=s(1-e),f=r.link.y0-r.link.width/2,c=r.link.y0+r.link.width/2,h=r.link.y1-r.link.width/2,d=r.link.y1+r.link.width/2,p="M"+a+","+f,_="C"+u+","+f+" "+l+","+h+" "+o+","+h,b="C"+l+","+d+" "+u+","+c+" "+a+","+c,v=n>0?"L"+(o+n)+","+(h+r.link.width/2):"";return v+="L"+o+","+d,p+_+v+b+"Z"}return t}function oKt(e,t){var r=IS(t.color),n=dc.nodePadAcross,i=e.nodePad/2;t.dx=t.x1-t.x0,t.dy=t.y1-t.y0;var a=t.dx,o=Math.max(.5,t.dy),s="node_"+t.pointNumber;return t.group&&(s=v1.randstr()),t.trace=e.trace,t.curveNumber=e.trace.index,{index:t.pointNumber,key:s,partOfGroup:t.partOfGroup||!1,group:t.group,traceId:e.key,trace:e.trace,node:t,nodePad:e.nodePad,nodeLineColor:e.nodeLineColor,nodeLineWidth:e.nodeLineWidth,textFont:e.textFont,size:e.horizontal?e.height:e.width,visibleWidth:Math.ceil(a),visibleHeight:o,zoneX:-n,zoneY:-i,zoneWidth:a+2*n,zoneHeight:o+2*i,labelY:e.horizontal?t.dy/2+1:t.dx/2+1,left:t.originalLayer===1,sizeAcross:e.width,forceLayouts:e.forceLayouts,horizontal:e.horizontal,darkBackground:r.getBrightness()<=128,tinyColorHue:ow.tinyRGB(r),tinyColorAlpha:r.getAlpha(),valueFormat:e.valueFormat,valueSuffix:e.valueSuffix,sankey:e.sankey,graph:e.graph,arrangement:e.arrangement,uniqueNodeLabelPathId:[e.guid,e.key,s].join("_"),interactionState:e.interactionState,figure:e}}function n$(e){e.attr("transform",function(t){return a$(t.node.x0.toFixed(3),t.node.y0.toFixed(3))})}function sKt(e){e.call(n$)}function qXe(e,t){e.call(sKt),t.attr("d",s$())}function IXe(e){e.attr("width",function(t){return t.node.x1-t.node.x0}).attr("height",function(t){return t.visibleHeight})}function i$(e){return e.link.width>1||e.linkLineWidth>0}function RXe(e){var t=a$(e.translateX,e.translateY);return t+(e.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function DXe(e,t,r){e.on(".basic",null).on("mouseover.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.hover(this,n,t),n.interactionState.hovered=[this,n])}).on("mousemove.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.follow(this,n),n.interactionState.hovered=[this,n])}).on("mouseout.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.unhover(this,n,t),n.interactionState.hovered=!1)}).on("click.basic",function(n){n.interactionState.hovered&&(r.unhover(this,n,t),n.interactionState.hovered=!1),!n.interactionState.dragInProgress&&!n.partOfGroup&&r.select(this,n,t)})}function lKt(e,t,r,n){var i=zS.behavior.drag().origin(function(a){return{x:a.node.x0+a.visibleWidth/2,y:a.node.y0+a.visibleHeight/2}}).on("dragstart",function(a){if(a.arrangement!=="fixed"&&(v1.ensureSingle(n._fullLayout._infolayer,"g","dragcover",function(s){n._fullLayout._dragCover=s}),v1.raiseToTop(this),a.interactionState.dragInProgress=a.node,FXe(a.node),a.interactionState.hovered&&(r.nodeEvents.unhover.apply(0,a.interactionState.hovered),a.interactionState.hovered=!1),a.arrangement==="snap")){var o=a.traceId+"|"+a.key;a.forceLayouts[o]?a.forceLayouts[o].alpha(1):uKt(e,o,a,n),fKt(e,t,a,o,n)}}).on("drag",function(a){if(a.arrangement!=="fixed"){var o=zS.event.x,s=zS.event.y;a.arrangement==="snap"?(a.node.x0=o-a.visibleWidth/2,a.node.x1=o+a.visibleWidth/2,a.node.y0=s-a.visibleHeight/2,a.node.y1=s+a.visibleHeight/2):(a.arrangement==="freeform"&&(a.node.x0=o-a.visibleWidth/2,a.node.x1=o+a.visibleWidth/2),s=Math.max(0,Math.min(a.size-a.visibleHeight/2,s)),a.node.y0=s-a.visibleHeight/2,a.node.y1=s+a.visibleHeight/2),FXe(a.node),a.arrangement!=="snap"&&(a.sankey.update(a.graph),qXe(e.filter(UXe(a)),t))}}).on("dragend",function(a){if(a.arrangement!=="fixed"){a.interactionState.dragInProgress=!1;for(var o=0;o0)window.requestAnimationFrame(a);else{var u=r.node.originalX;r.node.x0=u-r.visibleWidth/2,r.node.x1=u+r.visibleWidth/2,NXe(r,i)}})}function cKt(e,t,r,n){return function(){for(var a=0,o=0;o0&&n.forceLayouts[t].alpha(0)}}function NXe(e,t){for(var r=[],n=[],i=0;i{"use strict";var Zp=Jl(),u$=ei(),BB=u$.numberFormat,vKt=GXe(),RS=Xc(),mKt=jl(),Sx=r$().cn,Qk=u$._;function HXe(e){return e!==""}function DS(e,t){return e.filter(function(r){return r.key===t.traceId})}function WXe(e,t){Zp.select(e).select("path").style("fill-opacity",t),Zp.select(e).select("rect").style("fill-opacity",t)}function jXe(e){Zp.select(e).select("text.name").style("fill","black")}function XXe(e){return function(t){return e.node.sourceLinks.indexOf(t.link)!==-1||e.node.targetLinks.indexOf(t.link)!==-1}}function ZXe(e){return function(t){return t.node.sourceLinks.indexOf(e.link)!==-1||t.node.targetLinks.indexOf(e.link)!==-1}}function YXe(e,t,r){t&&r&&DS(r,t).selectAll("."+Sx.sankeyLink).filter(XXe(t)).call(KXe.bind(0,t,r,!1))}function l$(e,t,r){t&&r&&DS(r,t).selectAll("."+Sx.sankeyLink).filter(XXe(t)).call(JXe.bind(0,t,r,!1))}function KXe(e,t,r,n){n.style("fill",function(i){if(!i.link.concentrationscale)return i.tinyColorHoverHue}).style("fill-opacity",function(i){if(!i.link.concentrationscale)return i.tinyColorHoverAlpha}),n.each(function(i){var a=i.link.label;a!==""&&DS(t,e).selectAll("."+Sx.sankeyLink).filter(function(o){return o.link.label===a}).style("fill",function(o){if(!o.link.concentrationscale)return o.tinyColorHoverHue}).style("fill-opacity",function(o){if(!o.link.concentrationscale)return o.tinyColorHoverAlpha})}),r&&DS(t,e).selectAll("."+Sx.sankeyNode).filter(ZXe(e)).call(YXe)}function JXe(e,t,r,n){n.style("fill",function(i){return i.tinyColorHue}).style("fill-opacity",function(i){return i.tinyColorAlpha}),n.each(function(i){var a=i.link.label;a!==""&&DS(t,e).selectAll("."+Sx.sankeyLink).filter(function(o){return o.link.label===a}).style("fill",function(o){return o.tinyColorHue}).style("fill-opacity",function(o){return o.tinyColorAlpha})}),r&&DS(t,e).selectAll(Sx.sankeyNode).filter(ZXe(e)).call(l$)}function rh(e,t){var r=e.hoverlabel||{},n=u$.nestedProperty(r,t).get();return Array.isArray(n)?!1:n}$Xe.exports=function(t,r){for(var n=t._fullLayout,i=n._paper,a=n._size,o=0;o"),color:rh(C,"bgcolor")||mKt.addOpacity(B.color,1),borderColor:rh(C,"bordercolor"),fontFamily:rh(C,"font.family"),fontSize:rh(C,"font.size"),fontColor:rh(C,"font.color"),fontWeight:rh(C,"font.weight"),fontStyle:rh(C,"font.style"),fontVariant:rh(C,"font.variant"),fontTextcase:rh(C,"font.textcase"),fontLineposition:rh(C,"font.lineposition"),fontShadow:rh(C,"font.shadow"),nameLength:rh(C,"namelength"),textAlign:rh(C,"align"),idealAlign:Zp.event.x"),color:rh(C,"bgcolor")||x.tinyColorHue,borderColor:rh(C,"bordercolor"),fontFamily:rh(C,"font.family"),fontSize:rh(C,"font.size"),fontColor:rh(C,"font.color"),fontWeight:rh(C,"font.weight"),fontStyle:rh(C,"font.style"),fontVariant:rh(C,"font.variant"),fontTextcase:rh(C,"font.textcase"),fontLineposition:rh(C,"font.lineposition"),fontShadow:rh(C,"font.shadow"),nameLength:rh(C,"namelength"),textAlign:rh(C,"align"),idealAlign:"left",hovertemplate:C.hovertemplate,hovertemplateLabels:U,eventData:[x.node]},{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:t});WXe(H,.85),jXe(H)}}},A=function(L,x,C){t._fullLayout.hovermode!==!1&&(Zp.select(L).call(l$,x,C),x.node.trace.node.hoverinfo!=="skip"&&(x.node.fullData=x.node.trace,t.emit("plotly_unhover",{event:Zp.event,points:[x.node]})),RS.loneUnhover(n._hoverlayer.node()))};vKt(t,i,r,{width:a.w,height:a.h,margin:{t:a.t,r:a.r,b:a.b,l:a.l}},{linkEvents:{hover:l,follow:_,unhover:b,select:u},nodeEvents:{hover:k,follow:E,unhover:A,select:v}})}});var QXe=Ae(sw=>{"use strict";var yKt=Sc().overrideAll,gKt=Rd().getModuleCalcData,_Kt=f$(),xKt=q1(),bKt=Am(),wKt=xp(),TKt=oh().prepSelect,c$=ei(),AKt=$l(),OB="sankey";sw.name=OB;sw.baseLayoutAttrOverrides=yKt({hoverlabel:xKt.hoverlabel},"plot","nested");sw.plot=function(e){var t=gKt(e.calcdata,OB)[0];_Kt(e,t),sw.updateFx(e)};sw.clean=function(e,t,r,n){var i=n._has&&n._has(OB),a=t._has&&t._has(OB);i&&!a&&(n._paperdiv.selectAll(".sankey").remove(),n._paperdiv.selectAll(".bgsankey").remove())};sw.updateFx=function(e){for(var t=0;t{"use strict";eZe.exports=function(t,r){for(var n=t.cd,i=[],a=n[0].trace,o=a._sankey.graph.nodes,s=0;s{"use strict";rZe.exports={attributes:QJ(),supplyDefaults:oXe(),calc:cXe(),plot:f$(),moduleType:"trace",name:"sankey",basePlotModule:QXe(),selectPoints:tZe(),categories:["noOpacity"],meta:{}}});var aZe=Ae((Zwr,nZe)=>{"use strict";nZe.exports=iZe()});var sZe=Ae(FS=>{"use strict";var oZe=Cc();FS.name="indicator";FS.plot=function(e,t,r,n){oZe.plotBasePlot(FS.name,e,t,r,n)};FS.clean=function(e,t,r,n){oZe.cleanBasePlot(FS.name,e,t,r,n)}});var d$=Ae((Kwr,dZe)=>{"use strict";var Mx=Su().extendFlat,uZe=Su().extendDeep,MKt=Sc().overrideAll,fZe=gc(),cZe=Fh(),EKt=zc().attributes,lh=Dd(),kKt=Lf().templatedArray,qB=jT(),lZe=jc().descriptionOnlyNumbers,h$=fZe({editType:"plot",colorEditType:"plot"}),eC={color:{valType:"color",editType:"plot"},line:{color:{valType:"color",dflt:cZe.defaultLine,editType:"plot"},width:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},thickness:{valType:"number",min:0,max:1,dflt:1,editType:"plot"},editType:"calc"},hZe={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},CKt=kKt("step",uZe({},eC,{range:hZe}));dZe.exports={mode:{valType:"flaglist",editType:"calc",flags:["number","delta","gauge"],dflt:"number"},value:{valType:"number",editType:"calc",anim:!0},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},domain:EKt({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot"},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},font:Mx({},h$,{}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot",description:lZe("value")},font:Mx({},h$,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"plot"},delta:{reference:{valType:"number",editType:"calc"},position:{valType:"enumerated",values:["top","bottom","left","right"],dflt:"bottom",editType:"plot"},relative:{valType:"boolean",editType:"plot",dflt:!1},valueformat:{valType:"string",editType:"plot",description:lZe("value")},increasing:{symbol:{valType:"string",dflt:qB.INCREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:qB.INCREASING.COLOR,editType:"plot"},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:qB.DECREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:qB.DECREASING.COLOR,editType:"plot"},editType:"plot"},font:Mx({},h$,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"]},bar:uZe({},eC,{color:{dflt:"green"}}),bgcolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:cZe.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot"},axis:MKt({range:hZe,visible:Mx({},lh.visible,{dflt:!0}),tickmode:lh.minor.tickmode,nticks:lh.nticks,tick0:lh.tick0,dtick:lh.dtick,tickvals:lh.tickvals,ticktext:lh.ticktext,ticks:Mx({},lh.ticks,{dflt:"outside"}),ticklen:lh.ticklen,tickwidth:lh.tickwidth,tickcolor:lh.tickcolor,ticklabelstep:lh.ticklabelstep,showticklabels:lh.showticklabels,labelalias:lh.labelalias,tickfont:fZe({}),tickangle:lh.tickangle,tickformat:lh.tickformat,tickformatstops:lh.tickformatstops,tickprefix:lh.tickprefix,showtickprefix:lh.showtickprefix,ticksuffix:lh.ticksuffix,showticksuffix:lh.showticksuffix,separatethousands:lh.separatethousands,exponentformat:lh.exponentformat,minexponent:lh.minexponent,showexponent:lh.showexponent,editType:"plot"},"plot"),steps:CKt,threshold:{line:{color:Mx({},eC.line.color,{}),width:Mx({},eC.line.width,{dflt:1}),editType:"plot"},thickness:Mx({},eC.thickness,{dflt:.85}),value:{valType:"number",editType:"calc",dflt:!1},editType:"plot"},editType:"plot"}}});var p$=Ae((Jwr,pZe)=>{"use strict";pZe.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}});var yZe=Ae(($wr,mZe)=>{"use strict";var tg=ei(),UB=d$(),LKt=zc().defaults,vZe=Lf(),PKt=Jd(),NB=p$(),zKt=bb(),IKt=S3(),RKt=e_(),DKt=t_();function FKt(e,t,r,n){function i(x,C){return tg.coerce(e,t,UB,x,C)}LKt(t,n,i),i("mode"),t._hasNumber=t.mode.indexOf("number")!==-1,t._hasDelta=t.mode.indexOf("delta")!==-1,t._hasGauge=t.mode.indexOf("gauge")!==-1;var a=i("value");t._range=[0,typeof a=="number"?1.5*a:1];var o=new Array(2),s;if(t._hasNumber){i("number.valueformat");var u=tg.extendFlat({},n.font);u.size=void 0,tg.coerceFont(i,"number.font",u),t.number.font.size===void 0&&(t.number.font.size=NB.defaultNumberFontSize,o[0]=!0),i("number.prefix"),i("number.suffix"),s=t.number.font.size}var l;if(t._hasDelta){var f=tg.extendFlat({},n.font);f.size=void 0,tg.coerceFont(i,"delta.font",f),t.delta.font.size===void 0&&(t.delta.font.size=(t._hasNumber?.5:1)*(s||NB.defaultNumberFontSize),o[1]=!0),i("delta.reference",t.value),i("delta.relative"),i("delta.valueformat",t.delta.relative?"2%":""),i("delta.increasing.symbol"),i("delta.increasing.color"),i("delta.decreasing.symbol"),i("delta.decreasing.color"),i("delta.position"),i("delta.prefix"),i("delta.suffix"),l=t.delta.font.size}t._scaleNumbers=(!t._hasNumber||o[0])&&(!t._hasDelta||o[1])||!1;var c=tg.extendFlat({},n.font);c.size=.25*(s||l||NB.defaultNumberFontSize),tg.coerceFont(i,"title.font",c),i("title.text");var h,d,p,_;function b(x,C){return tg.coerce(h,d,UB.gauge,x,C)}function v(x,C){return tg.coerce(p,_,UB.gauge.axis,x,C)}if(t._hasGauge){h=e.gauge,h||(h={}),d=vZe.newContainer(t,"gauge"),b("shape");var k=t._isBullet=t.gauge.shape==="bullet";k||i("title.align","center");var E=t._isAngular=t.gauge.shape==="angular";E||i("align","center"),b("bgcolor",n.paper_bgcolor),b("borderwidth"),b("bordercolor"),b("bar.color"),b("bar.line.color"),b("bar.line.width");var A=NB.valueThickness*(t.gauge.shape==="bullet"?.5:1);b("bar.thickness",A),PKt(h,d,{name:"steps",handleItemDefaults:BKt}),b("threshold.value"),b("threshold.thickness"),b("threshold.line.width"),b("threshold.line.color"),p={},h&&(p=h.axis||{}),_=vZe.newContainer(d,"axis"),v("visible"),t._range=v("range",t._range);var L={font:n.font,noAutotickangles:!0,outerTicks:!0,noTicklabelshift:!0,noTicklabelstandoff:!0};zKt(p,_,v,"linear"),DKt(p,_,v,"linear",L),RKt(p,_,v,"linear",L),IKt(p,_,v,L)}else i("title.align","center"),i("align","center"),t._isAngular=t._isBullet=!1;t._length=null}function BKt(e,t){function r(n,i){return tg.coerce(e,t,UB.gauge.steps,n,i)}r("color"),r("line.color"),r("line.width"),r("range"),r("thickness")}mZe.exports={supplyDefaults:FKt}});var _Ze=Ae((Qwr,gZe)=>{"use strict";function OKt(e,t){var r=[],n=t.value;typeof t._lastValue!="number"&&(t._lastValue=t.value);var i=t._lastValue,a=i;return t._hasDelta&&typeof t.delta.reference=="number"&&(a=t.delta.reference),r[0]={y:n,lastY:i,delta:n-a,relativeDelta:(n-a)/a},r}gZe.exports={calc:OKt}});var SZe=Ae((e3r,AZe)=>{"use strict";var hw=Jl(),qKt=(R2(),ob(I2)).interpolate,xZe=(R2(),ob(I2)).interpolateNumber,Ex=ei(),NKt=Ex.strScale,rC=Ex.strTranslate,UKt=Ex.rad2deg,VKt=td().MID_SHIFT,cw=Mu(),lw=p$(),GB=Xf(),up=wu(),GKt=rE(),HKt=lI(),WKt=Dd(),BS=jl(),v$={left:"start",center:"middle",right:"end"},uw={left:0,center:.5,right:1},bZe=/[yzafpnµmkMGTPEZY]/;function iC(e){return e&&e.duration>0}AZe.exports=function(t,r,n,i){var a=t._fullLayout,o;iC(n)&&i&&(o=i()),Ex.makeTraceGroups(a._indicatorlayer,r,"trace").each(function(s){var u=s[0],l=u.trace,f=hw.select(this),c=l._hasGauge,h=l._isAngular,d=l._isBullet,p=l.domain,_={w:a._size.w*(p.x[1]-p.x[0]),h:a._size.h*(p.y[1]-p.y[0]),l:a._size.l+a._size.w*p.x[0],r:a._size.r+a._size.w*(1-p.x[1]),t:a._size.t+a._size.h*(1-p.y[1]),b:a._size.b+a._size.h*p.y[0]},b=_.l+_.w/2,v=_.t+_.h/2,k=Math.min(_.w/2,_.h),E=lw.innerRadius*k,A,L,x,C=l.align||"center";if(L=v,!c)A=_.l+uw[C]*_.w,x=function(H){return wZe(H,_.w,_.h)};else if(h&&(A=b,L=v+k/2,x=function(H){return KKt(H,.9*E)}),d){var M=lw.bulletPadding,m=1-lw.bulletNumberDomainSize+M;A=_.l+(m+(1-m)*uw[C])*_.w,x=function(H){return wZe(H,(lw.bulletNumberDomainSize-M)*_.w,_.h)}}ZKt(t,f,s,{numbersX:A,numbersY:L,numbersScaler:x,transitionOpts:n,onComplete:o});var P,T;c&&(P={range:l.gauge.axis.range,color:l.gauge.bgcolor,line:{color:l.gauge.bordercolor,width:0},thickness:1},T={range:l.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:l.gauge.bordercolor,width:l.gauge.borderwidth},thickness:1});var B=f.selectAll("g.angular").data(h?s:[]);B.exit().remove();var F=f.selectAll("g.angularaxis").data(h?s:[]);F.exit().remove(),h&&XKt(t,f,s,{radius:k,innerRadius:E,gauge:B,layer:F,size:_,gaugeBg:P,gaugeOutline:T,transitionOpts:n,onComplete:o});var U=f.selectAll("g.bullet").data(d?s:[]);U.exit().remove();var G=f.selectAll("g.bulletaxis").data(d?s:[]);G.exit().remove(),d&&jKt(t,f,s,{gauge:U,layer:G,size:_,gaugeBg:P,gaugeOutline:T,transitionOpts:n,onComplete:o});var j=f.selectAll("text.title").data(s);j.exit().remove(),j.enter().append("text").classed("title",!0),j.attr("text-anchor",function(){return d?v$.right:v$[l.title.align]}).text(l.title.text).call(cw.font,l.title.font).call(GB.convertToTspans,t),j.attr("transform",function(){var H=_.l+_.w*uw[l.title.align],N,W=lw.titlePadding,re=cw.bBox(j.node());if(c){if(h)if(l.gauge.axis.visible){var ae=cw.bBox(F.node());N=ae.top-W-re.bottom}else N=_.t+_.h/2-k/2-re.bottom-W;d&&(N=L-(re.top+re.bottom)/2,H=_.l-lw.bulletPadding*_.w)}else N=l._numbersTop-W-re.bottom;return rC(H,N)})})};function jKt(e,t,r,n){var i=r[0].trace,a=n.gauge,o=n.layer,s=n.gaugeBg,u=n.gaugeOutline,l=n.size,f=i.domain,c=n.transitionOpts,h=n.onComplete,d,p,_,b,v;a.enter().append("g").classed("bullet",!0),a.attr("transform",rC(l.l,l.t)),o.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),o.selectAll("g.xbulletaxistick,path,text").remove();var k=l.h,E=i.gauge.bar.thickness*k,A=f.x[0],L=f.x[0]+(f.x[1]-f.x[0])*(i._hasNumber||i._hasDelta?1-lw.bulletNumberDomainSize:1);d=tC(e,i.gauge.axis),d._id="xbulletaxis",d.domain=[A,L],d.setScale(),p=up.calcTicks(d),_=up.makeTransTickFn(d),b=up.getTickSigns(d)[2],v=l.t+l.h,d.visible&&(up.drawTicks(e,d,{vals:d.ticks==="inside"?up.clipEnds(d,p):p,layer:o,path:up.makeTickPath(d,v,b),transFn:_}),up.drawLabels(e,d,{vals:p,layer:o,transFn:_,labelFns:up.makeLabelFns(d,v)}));function x(F){F.attr("width",function(U){return Math.max(0,d.c2p(U.range[1])-d.c2p(U.range[0]))}).attr("x",function(U){return d.c2p(U.range[0])}).attr("y",function(U){return .5*(1-U.thickness)*k}).attr("height",function(U){return U.thickness*k})}var C=[s].concat(i.gauge.steps),M=a.selectAll("g.bg-bullet").data(C);M.enter().append("g").classed("bg-bullet",!0).append("rect"),M.select("rect").call(x).call(fw),M.exit().remove();var m=a.selectAll("g.value-bullet").data([i.gauge.bar]);m.enter().append("g").classed("value-bullet",!0).append("rect"),m.select("rect").attr("height",E).attr("y",(k-E)/2).call(fw),iC(c)?m.select("rect").transition().duration(c.duration).ease(c.easing).each("end",function(){h&&h()}).each("interrupt",function(){h&&h()}).attr("width",Math.max(0,d.c2p(Math.min(i.gauge.axis.range[1],r[0].y)))):m.select("rect").attr("width",typeof r[0].y=="number"?Math.max(0,d.c2p(Math.min(i.gauge.axis.range[1],r[0].y))):0),m.exit().remove();var P=r.filter(function(){return i.gauge.threshold.value||i.gauge.threshold.value===0}),T=a.selectAll("g.threshold-bullet").data(P);T.enter().append("g").classed("threshold-bullet",!0).append("line"),T.select("line").attr("x1",d.c2p(i.gauge.threshold.value)).attr("x2",d.c2p(i.gauge.threshold.value)).attr("y1",(1-i.gauge.threshold.thickness)/2*k).attr("y2",(1-(1-i.gauge.threshold.thickness)/2)*k).call(BS.stroke,i.gauge.threshold.line.color).style("stroke-width",i.gauge.threshold.line.width),T.exit().remove();var B=a.selectAll("g.gauge-outline").data([u]);B.enter().append("g").classed("gauge-outline",!0).append("rect"),B.select("rect").call(x).call(fw),B.exit().remove()}function XKt(e,t,r,n){var i=r[0].trace,a=n.size,o=n.radius,s=n.innerRadius,u=n.gaugeBg,l=n.gaugeOutline,f=[a.l+a.w/2,a.t+a.h/2+o/2],c=n.gauge,h=n.layer,d=n.transitionOpts,p=n.onComplete,_=Math.PI/2;function b(be){var ze=i.gauge.axis.range[0],Ce=i.gauge.axis.range[1],de=(be-ze)/(Ce-ze)*Math.PI-_;return de<-_?-_:de>_?_:de}function v(be){return hw.svg.arc().innerRadius((s+o)/2-be/2*(o-s)).outerRadius((s+o)/2+be/2*(o-s)).startAngle(-_)}function k(be){be.attr("d",function(ze){return v(ze.thickness).startAngle(b(ze.range[0])).endAngle(b(ze.range[1]))()})}var E,A,L,x;c.enter().append("g").classed("angular",!0),c.attr("transform",rC(f[0],f[1])),h.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),h.selectAll("g.xangularaxistick,path,text").remove(),E=tC(e,i.gauge.axis),E.type="linear",E.range=i.gauge.axis.range,E._id="xangularaxis",E.ticklabeloverflow="allow",E.setScale();var C=function(be){return(E.range[0]-be.x)/(E.range[1]-E.range[0])*Math.PI+Math.PI},M={},m=up.makeLabelFns(E,0),P=m.labelStandoff;M.xFn=function(be){var ze=C(be);return Math.cos(ze)*P},M.yFn=function(be){var ze=C(be),Ce=Math.sin(ze)>0?.2:1;return-Math.sin(ze)*(P+be.fontSize*Ce)+Math.abs(Math.cos(ze))*(be.fontSize*VKt)},M.anchorFn=function(be){var ze=C(be),Ce=Math.cos(ze);return Math.abs(Ce)<.1?"middle":Ce>0?"start":"end"},M.heightFn=function(be,ze,Ce){var de=C(be);return-.5*(1+Math.sin(de))*Ce};var T=function(be){return rC(f[0]+o*Math.cos(be),f[1]-o*Math.sin(be))};L=function(be){return T(C(be))};var B=function(be){var ze=C(be);return T(ze)+"rotate("+-UKt(ze)+")"};if(A=up.calcTicks(E),x=up.getTickSigns(E)[2],E.visible){x=E.ticks==="inside"?-1:1;var F=(E.linewidth||1)/2;up.drawTicks(e,E,{vals:A,layer:h,path:"M"+x*F+",0h"+x*E.ticklen,transFn:B}),up.drawLabels(e,E,{vals:A,layer:h,transFn:L,labelFns:M})}var U=[u].concat(i.gauge.steps),G=c.selectAll("g.bg-arc").data(U);G.enter().append("g").classed("bg-arc",!0).append("path"),G.select("path").call(k).call(fw),G.exit().remove();var j=v(i.gauge.bar.thickness),H=c.selectAll("g.value-arc").data([i.gauge.bar]);H.enter().append("g").classed("value-arc",!0).append("path");var N=H.select("path");iC(d)?(N.transition().duration(d.duration).ease(d.easing).each("end",function(){p&&p()}).each("interrupt",function(){p&&p()}).attrTween("d",YKt(j,b(r[0].lastY),b(r[0].y))),i._lastValue=r[0].y):N.attr("d",typeof r[0].y=="number"?j.endAngle(b(r[0].y)):"M0,0Z"),N.call(fw),H.exit().remove(),U=[];var W=i.gauge.threshold.value;(W||W===0)&&U.push({range:[W,W],color:i.gauge.threshold.color,line:{color:i.gauge.threshold.line.color,width:i.gauge.threshold.line.width},thickness:i.gauge.threshold.thickness});var re=c.selectAll("g.threshold-arc").data(U);re.enter().append("g").classed("threshold-arc",!0).append("path"),re.select("path").call(k).call(fw),re.exit().remove();var ae=c.selectAll("g.gauge-outline").data([l]);ae.enter().append("g").classed("gauge-outline",!0).append("path"),ae.select("path").call(k).call(fw),ae.exit().remove()}function ZKt(e,t,r,n){var i=r[0].trace,a=n.numbersX,o=n.numbersY,s=i.align||"center",u=v$[s],l=n.transitionOpts,f=n.onComplete,c=Ex.ensureSingle(t,"g","numbers"),h,d,p,_=[];i._hasNumber&&_.push("number"),i._hasDelta&&(_.push("delta"),i.delta.position==="left"&&_.reverse());var b=c.selectAll("text").data(_);b.enter().append("text"),b.attr("text-anchor",function(){return u}).attr("class",function(T){return T}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),b.exit().remove();function v(T,B,F,U){if(T.match("s")&&F>=0!=U>=0&&!B(F).slice(-1).match(bZe)&&!B(U).slice(-1).match(bZe)){var G=T.slice().replace("s","f").replace(/\d+/,function(H){return parseInt(H)-1}),j=tC(e,{tickformat:G});return function(H){return Math.abs(H)<1?up.tickText(j,H).text:B(H)}}else return B}function k(){var T=tC(e,{tickformat:i.number.valueformat},i._range);T.setScale(),up.prepTicks(T);var B=function(H){return up.tickText(T,H).text},F=i.number.suffix,U=i.number.prefix,G=c.select("text.number");function j(){var H=typeof r[0].y=="number"?U+B(r[0].y)+F:"-";G.text(H).call(cw.font,i.number.font).call(GB.convertToTspans,e)}return iC(l)?G.transition().duration(l.duration).ease(l.easing).each("end",function(){j(),f&&f()}).each("interrupt",function(){j(),f&&f()}).attrTween("text",function(){var H=hw.select(this),N=xZe(r[0].lastY,r[0].y);i._lastValue=r[0].y;var W=v(i.number.valueformat,B,r[0].lastY,r[0].y);return function(re){H.text(U+W(N(re))+F)}}):j(),h=TZe(U+B(r[0].y)+F,i.number.font,u,e),G}function E(){var T=tC(e,{tickformat:i.delta.valueformat},i._range);T.setScale(),up.prepTicks(T);var B=function(re){return up.tickText(T,re).text},F=i.delta.suffix,U=i.delta.prefix,G=function(re){var ae=i.delta.relative?re.relativeDelta:re.delta;return ae},j=function(re,ae){return re===0||typeof re!="number"||isNaN(re)?"-":(re>0?i.delta.increasing.symbol:i.delta.decreasing.symbol)+U+ae(re)+F},H=function(re){return re.delta>=0?i.delta.increasing.color:i.delta.decreasing.color};i._deltaLastValue===void 0&&(i._deltaLastValue=G(r[0]));var N=c.select("text.delta");N.call(cw.font,i.delta.font).call(BS.fill,H({delta:i._deltaLastValue}));function W(){N.text(j(G(r[0]),B)).call(BS.fill,H(r[0])).call(GB.convertToTspans,e)}return iC(l)?N.transition().duration(l.duration).ease(l.easing).tween("text",function(){var re=hw.select(this),ae=G(r[0]),be=i._deltaLastValue,ze=v(i.delta.valueformat,B,be,ae),Ce=xZe(be,ae);return i._deltaLastValue=ae,function(de){re.text(j(Ce(de),ze)),re.call(BS.fill,H({delta:Ce(de)}))}}).each("end",function(){W(),f&&f()}).each("interrupt",function(){W(),f&&f()}):W(),d=TZe(j(G(r[0]),B),i.delta.font,u,e),N}var A=i.mode+i.align,L;if(i._hasDelta&&(L=E(),A+=i.delta.position+i.delta.font.size+i.delta.font.family+i.delta.valueformat,A+=i.delta.increasing.symbol+i.delta.decreasing.symbol,p=d),i._hasNumber&&(k(),A+=i.number.font.size+i.number.font.family+i.number.valueformat+i.number.suffix+i.number.prefix,p=h),i._hasDelta&&i._hasNumber){var x=[(h.left+h.right)/2,(h.top+h.bottom)/2],C=[(d.left+d.right)/2,(d.top+d.bottom)/2],M,m,P=.75*i.delta.font.size;i.delta.position==="left"&&(M=VB(i,"deltaPos",0,-1*(h.width*uw[i.align]+d.width*(1-uw[i.align])+P),A,Math.min),m=x[1]-C[1],p={width:h.width+d.width+P,height:Math.max(h.height,d.height),left:d.left+M,right:h.right,top:Math.min(h.top,d.top+m),bottom:Math.max(h.bottom,d.bottom+m)}),i.delta.position==="right"&&(M=VB(i,"deltaPos",0,h.width*(1-uw[i.align])+d.width*uw[i.align]+P,A,Math.max),m=x[1]-C[1],p={width:h.width+d.width+P,height:Math.max(h.height,d.height),left:h.left,right:d.right+M,top:Math.min(h.top,d.top+m),bottom:Math.max(h.bottom,d.bottom+m)}),i.delta.position==="bottom"&&(M=null,m=d.height,p={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height,bottom:h.bottom+d.height}),i.delta.position==="top"&&(M=null,m=h.top,p={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height-d.height,bottom:h.bottom}),L.attr({dx:M,dy:m})}(i._hasNumber||i._hasDelta)&&c.attr("transform",function(){var T=n.numbersScaler(p);A+=T[2];var B=VB(i,"numbersScale",1,T[0],A,Math.min),F;i._scaleNumbers||(B=1),i._isAngular?F=o-B*p.bottom:F=o-B*(p.top+p.bottom)/2,i._numbersTop=B*p.top+F;var U=p[s];s==="center"&&(U=(p.left+p.right)/2);var G=a-B*U;return G=VB(i,"numbersTranslate",0,G,A,Math.max),rC(G,F)+NKt(B)})}function fw(e){e.each(function(t){BS.stroke(hw.select(this),t.line.color)}).each(function(t){BS.fill(hw.select(this),t.color)}).style("stroke-width",function(t){return t.line.width})}function YKt(e,t,r){return function(){var n=qKt(t,r);return function(i){return e.endAngle(n(i))()}}}function tC(e,t,r){var n=e._fullLayout,i=Ex.extendFlat({type:"linear",ticks:"outside",range:r,showline:!0},t),a={type:"linear",_id:"x"+t._id},o={letter:"x",font:n.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function s(u,l){return Ex.coerce(i,a,WKt,u,l)}return GKt(i,a,s,o,n),HKt(i,a,s,o),a}function wZe(e,t,r){var n=Math.min(t/e.width,r/e.height);return[n,e,t+"x"+r]}function KKt(e,t){var r=Math.sqrt(e.width/2*(e.width/2)+e.height*e.height),n=t/r;return[n,e,t]}function TZe(e,t,r,n){var i=document.createElementNS("http://www.w3.org/2000/svg","text"),a=hw.select(i);return a.text(e).attr("x",0).attr("y",0).attr("text-anchor",r).attr("data-unformatted",e).call(GB.convertToTspans,n).call(cw.font,t),cw.bBox(a.node())}function VB(e,t,r,n,i,a){var o="_cache"+t;e[o]&&e[o].key===i||(e[o]={key:i,value:r});var s=Ex.aggNums(a,null,[e[o].value,n],2);return e[o].value=s,s}});var EZe=Ae((t3r,MZe)=>{"use strict";MZe.exports={moduleType:"trace",name:"indicator",basePlotModule:sZe(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:d$(),supplyDefaults:yZe().supplyDefaults,calc:_Ze().calc,plot:SZe(),meta:{}}});var CZe=Ae((r3r,kZe)=>{"use strict";kZe.exports=EZe()});var m$=Ae((n3r,IZe)=>{"use strict";var LZe=Ub(),HB=Su().extendFlat,JKt=Sc().overrideAll,PZe=gc(),$Kt=zc().attributes,zZe=jc().descriptionOnlyNumbers,i3r=IZe.exports=JKt({domain:$Kt({name:"table",trace:!0}),columnwidth:{valType:"number",arrayOk:!0,dflt:null},columnorder:{valType:"data_array"},header:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:zZe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:HB({},LZe.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:HB({},PZe({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:zZe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:HB({},LZe.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:HB({},PZe({arrayOk:!0}))}},"calc","from-root")});var DZe=Ae((a3r,RZe)=>{"use strict";var y$=ei(),QKt=m$(),eJt=zc().defaults;function tJt(e,t){for(var r=e.columnorder||[],n=e.header.values.length,i=r.slice(0,n),a=i.slice().sort(function(u,l){return u-l}),o=i.map(function(u){return a.indexOf(u)}),s=o.length;s{"use strict";var rJt=Jy().wrap;FZe.exports=function(){return rJt({})}});var g$=Ae((s3r,OZe)=>{"use strict";OZe.exports={cellPad:8,columnExtentOffset:10,columnTitleOffset:28,emptyHeaderHeight:16,latexCheck:/^\$.*\$$/,goldenRatio:1.618,lineBreaker:"
",maxDimensionCount:60,overdrag:45,releaseTransitionDuration:120,releaseTransitionEase:"cubic-out",scrollbarCaptureWidth:18,scrollbarHideDelay:1e3,scrollbarHideDuration:1e3,scrollbarOffset:5,scrollbarWidth:8,transitionDuration:100,transitionEase:"cubic-out",uplift:5,wrapSpacer:" ",wrapSplitCharacter:" ",cn:{table:"table",tableControlView:"table-control-view",scrollBackground:"scroll-background",yColumn:"y-column",columnBlock:"column-block",scrollAreaClip:"scroll-area-clip",scrollAreaClipRect:"scroll-area-clip-rect",columnBoundary:"column-boundary",columnBoundaryClippath:"column-boundary-clippath",columnBoundaryRect:"column-boundary-rect",columnCells:"column-cells",columnCell:"column-cell",cellRect:"cell-rect",cellText:"cell-text",cellTextHolder:"cell-text-holder",scrollbarKit:"scrollbar-kit",scrollbar:"scrollbar",scrollbarSlider:"scrollbar-slider",scrollbarGlyph:"scrollbar-glyph",scrollbarCaptureZone:"scrollbar-capture-zone"}}});var XZe=Ae((l3r,jZe)=>{"use strict";var qZe=g$(),x$=Su().extendFlat,iJt=ku(),nJt=mp().isTypedArray,WB=mp().isArrayOrTypedArray;jZe.exports=function(t,r){var n=_$(r.cells.values),i=function(m){return m.slice(r.header.values.length,m.length)},a=_$(r.header.values);a.length&&!a[0].length&&(a[0]=[""],a=_$(a));var o=a.concat(i(n).map(function(){return WZe((a[0]||[""]).length)})),s=r.domain,u=Math.floor(t._fullLayout._size.w*(s.x[1]-s.x[0])),l=Math.floor(t._fullLayout._size.h*(s.y[1]-s.y[0])),f=r.header.values.length?o[0].map(function(){return r.header.height}):[qZe.emptyHeaderHeight],c=n.length?n[0].map(function(){return r.cells.height}):[],h=f.reduce(NZe,0),d=l-h,p=d+qZe.uplift,_=GZe(c,p),b=GZe(f,h),v=VZe(b,[]),k=VZe(_,v),E={},A=r._fullInput.columnorder;WB(A)&&(A=Array.from(A)),A=A.concat(i(n.map(function(m,P){return P})));var L=o.map(function(m,P){var T=WB(r.columnwidth)?r.columnwidth[Math.min(P,r.columnwidth.length-1)]:r.columnwidth;return iJt(T)?Number(T):1}),x=L.reduce(NZe,0);L=L.map(function(m){return m/x*u});var C=Math.max(b$(r.header.line.width),b$(r.cells.line.width)),M={key:r.uid+t._context.staticPlot,translateX:s.x[0]*t._fullLayout._size.w,translateY:t._fullLayout._size.h*(1-s.y[1]),size:t._fullLayout._size,width:u,maxLineWidth:C,height:l,columnOrder:A,groupHeight:l,rowBlocks:k,headerRowBlocks:v,scrollY:0,cells:x$({},r.cells,{values:n}),headerCells:x$({},r.header,{values:o}),gdColumns:o.map(function(m){return m[0]}),gdColumnsOriginalOrder:o.map(function(m){return m[0]}),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:o.map(function(m,P){var T=E[m];E[m]=(T||0)+1;var B=m+"__"+E[m];return{key:B,label:m,specIndex:P,xIndex:A[P],xScale:UZe,x:void 0,calcdata:void 0,columnWidth:L[P]}})};return M.columns.forEach(function(m){m.calcdata=M,m.x=UZe(m)}),M};function b$(e){if(WB(e)){for(var t=0,r=0;r=t||l===e.length-1)&&(r[i]=o,o.key=u++,o.firstRowIndex=s,o.lastRowIndex=l,o=HZe(),i+=a,s=l+1,a=0);return r}function HZe(){return{firstRowIndex:null,lastRowIndex:null,rows:[]}}});var ZZe=Ae(w$=>{"use strict";var jB=Su().extendFlat;w$.splitToPanels=function(e){var t=[0,0],r=jB({},e,{key:"header",type:"header",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!0,values:e.calcdata.headerCells.values[e.specIndex],rowBlocks:e.calcdata.headerRowBlocks,calcdata:jB({},e.calcdata,{cells:e.calcdata.headerCells})}),n=jB({},e,{key:"cells1",type:"cells",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks}),i=jB({},e,{key:"cells2",type:"cells",page:1,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks});return[n,i,r]};w$.splitToCells=function(e){var t=aJt(e);return(e.values||[]).slice(t[0],t[1]).map(function(r,n){var i=typeof r=="string"&&r.match(/[<$&> ]/)?"_keybuster_"+Math.random():"";return{keyWithinBlock:n+i,key:t[0]+n,column:e,calcdata:e.calcdata,page:e.page,rowBlocks:e.rowBlocks,value:r}})};function aJt(e){var t=e.rowBlocks[e.page],r=t?t.rows[0].rowIndex:0,n=t?r+t.rows.length:0;return[r,n]}});var z$=Ae((f3r,aYe)=>{"use strict";var uu=g$(),Gc=Jl(),T$=ei(),oJt=T$.numberFormat,pc=Jy(),A$=Mu(),sJt=Xf(),lJt=ei().raiseToTop,om=ei().strTranslate,uJt=ei().cancelTransition,fJt=XZe(),tYe=ZZe(),YZe=jl();aYe.exports=function(t,r){var n=!t._context.staticPlot,i=t._fullLayout._paper.selectAll("."+uu.cn.table).data(r.map(function(k){var E=pc.unwrap(k),A=E.trace;return fJt(t,A)}),pc.keyFun);i.exit().remove(),i.enter().append("g").classed(uu.cn.table,!0).attr("overflow","visible").style("box-sizing","content-box").style("position","absolute").style("left",0).style("overflow","visible").style("shape-rendering","crispEdges").style("pointer-events","all"),i.attr("width",function(k){return k.width+k.size.l+k.size.r}).attr("height",function(k){return k.height+k.size.t+k.size.b}).attr("transform",function(k){return om(k.translateX,k.translateY)});var a=i.selectAll("."+uu.cn.tableControlView).data(pc.repeat,pc.keyFun),o=a.enter().append("g").classed(uu.cn.tableControlView,!0).style("box-sizing","content-box");if(n){var s="onwheel"in document?"wheel":"mousewheel";o.on("mousemove",function(k){a.filter(function(E){return k===E}).call(nC,t)}).on(s,function(k){if(!k.scrollbarState.wheeling){k.scrollbarState.wheeling=!0;var E=k.scrollY+Gc.event.deltaY,A=ZB(t,a,null,E)(k);A||(Gc.event.stopPropagation(),Gc.event.preventDefault()),k.scrollbarState.wheeling=!1}}).call(nC,t,!0)}a.attr("transform",function(k){return om(k.size.l,k.size.t)});var u=a.selectAll("."+uu.cn.scrollBackground).data(pc.repeat,pc.keyFun);u.enter().append("rect").classed(uu.cn.scrollBackground,!0).attr("fill","none"),u.attr("width",function(k){return k.width}).attr("height",function(k){return k.height}),a.each(function(k){A$.setClipUrl(Gc.select(this),KZe(t,k),t)});var l=a.selectAll("."+uu.cn.yColumn).data(function(k){return k.columns},pc.keyFun);l.enter().append("g").classed(uu.cn.yColumn,!0),l.exit().remove(),l.attr("transform",function(k){return om(k.x,0)}),n&&l.call(Gc.behavior.drag().origin(function(k){var E=Gc.select(this);return QZe(E,k,-uu.uplift),lJt(this),k.calcdata.columnDragInProgress=!0,nC(a.filter(function(A){return k.calcdata.key===A.key}),t),k}).on("drag",function(k){var E=Gc.select(this),A=function(C){return(k===C?Gc.event.x:C.x)+C.columnWidth/2};k.x=Math.max(-uu.overdrag,Math.min(k.calcdata.width+uu.overdrag-k.columnWidth,Gc.event.x));var L=rYe(l).filter(function(C){return C.calcdata.key===k.calcdata.key}),x=L.sort(function(C,M){return A(C)-A(M)});x.forEach(function(C,M){C.xIndex=M,C.x=k===C?C.x:C.xScale(C)}),l.filter(function(C){return k!==C}).transition().ease(uu.transitionEase).duration(uu.transitionDuration).attr("transform",function(C){return om(C.x,0)}),E.call(uJt).attr("transform",om(k.x,-uu.uplift))}).on("dragend",function(k){var E=Gc.select(this),A=k.calcdata;k.x=k.xScale(k),k.calcdata.columnDragInProgress=!1,QZe(E,k,0),xJt(t,A,A.columns.map(function(L){return L.xIndex}))})),l.each(function(k){A$.setClipUrl(Gc.select(this),JZe(t,k),t)});var f=l.selectAll("."+uu.cn.columnBlock).data(tYe.splitToPanels,pc.keyFun);f.enter().append("g").classed(uu.cn.columnBlock,!0).attr("id",function(k){return k.key}),f.style("cursor",function(k){return k.dragHandle?"ew-resize":k.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"});var c=f.filter(bJt),h=f.filter(C$);n&&h.call(Gc.behavior.drag().origin(function(k){return Gc.event.stopPropagation(),k}).on("drag",ZB(t,a,-1)).on("dragend",function(){})),S$(t,a,c,f),S$(t,a,h,f);var d=a.selectAll("."+uu.cn.scrollAreaClip).data(pc.repeat,pc.keyFun);d.enter().append("clipPath").classed(uu.cn.scrollAreaClip,!0).attr("id",function(k){return KZe(t,k)});var p=d.selectAll("."+uu.cn.scrollAreaClipRect).data(pc.repeat,pc.keyFun);p.enter().append("rect").classed(uu.cn.scrollAreaClipRect,!0).attr("x",-uu.overdrag).attr("y",-uu.uplift).attr("fill","none"),p.attr("width",function(k){return k.width+2*uu.overdrag}).attr("height",function(k){return k.height+uu.uplift});var _=l.selectAll("."+uu.cn.columnBoundary).data(pc.repeat,pc.keyFun);_.enter().append("g").classed(uu.cn.columnBoundary,!0);var b=l.selectAll("."+uu.cn.columnBoundaryClippath).data(pc.repeat,pc.keyFun);b.enter().append("clipPath").classed(uu.cn.columnBoundaryClippath,!0),b.attr("id",function(k){return JZe(t,k)});var v=b.selectAll("."+uu.cn.columnBoundaryRect).data(pc.repeat,pc.keyFun);v.enter().append("rect").classed(uu.cn.columnBoundaryRect,!0).attr("fill","none"),v.attr("width",function(k){return k.columnWidth+2*XB(k)}).attr("height",function(k){return k.calcdata.height+2*XB(k)+uu.uplift}).attr("x",function(k){return-XB(k)}).attr("y",function(k){return-XB(k)}),L$(null,h,a)};function XB(e){return Math.ceil(e.calcdata.maxLineWidth/2)}function KZe(e,t){return"clip"+e._fullLayout._uid+"_scrollAreaBottomClip_"+t.key}function JZe(e,t){return"clip"+e._fullLayout._uid+"_columnBoundaryClippath_"+t.calcdata.key+"_"+t.specIndex}function rYe(e){return[].concat.apply([],e.map(function(t){return t})).map(function(t){return t.__data__})}function nC(e,t,r){function n(l){var f=l.rowBlocks;return E$(f,f.length-1)+(f.length?YB(f[f.length-1],1/0):1)}var i=e.selectAll("."+uu.cn.scrollbarKit).data(pc.repeat,pc.keyFun);i.enter().append("g").classed(uu.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),i.each(function(l){var f=l.scrollbarState;f.totalHeight=n(l),f.scrollableAreaHeight=l.groupHeight-M$(l),f.currentlyVisibleHeight=Math.min(f.totalHeight,f.scrollableAreaHeight),f.ratio=f.currentlyVisibleHeight/f.totalHeight,f.barLength=Math.max(f.ratio*f.currentlyVisibleHeight,uu.goldenRatio*uu.scrollbarWidth),f.barWiggleRoom=f.currentlyVisibleHeight-f.barLength,f.wiggleRoom=Math.max(0,f.totalHeight-f.scrollableAreaHeight),f.topY=f.barWiggleRoom===0?0:l.scrollY/f.wiggleRoom*f.barWiggleRoom,f.bottomY=f.topY+f.barLength,f.dragMultiplier=f.wiggleRoom/f.barWiggleRoom}).attr("transform",function(l){var f=l.width+uu.scrollbarWidth/2+uu.scrollbarOffset;return om(f,M$(l))});var a=i.selectAll("."+uu.cn.scrollbar).data(pc.repeat,pc.keyFun);a.enter().append("g").classed(uu.cn.scrollbar,!0);var o=a.selectAll("."+uu.cn.scrollbarSlider).data(pc.repeat,pc.keyFun);o.enter().append("g").classed(uu.cn.scrollbarSlider,!0),o.attr("transform",function(l){return om(0,l.scrollbarState.topY||0)});var s=o.selectAll("."+uu.cn.scrollbarGlyph).data(pc.repeat,pc.keyFun);s.enter().append("line").classed(uu.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",uu.scrollbarWidth).attr("stroke-linecap","round").attr("y1",uu.scrollbarWidth/2),s.attr("y2",function(l){return l.scrollbarState.barLength-uu.scrollbarWidth/2}).attr("stroke-opacity",function(l){return l.columnDragInProgress||!l.scrollbarState.barWiggleRoom||r?0:.4}),s.transition().delay(0).duration(0),s.transition().delay(uu.scrollbarHideDelay).duration(uu.scrollbarHideDuration).attr("stroke-opacity",0);var u=a.selectAll("."+uu.cn.scrollbarCaptureZone).data(pc.repeat,pc.keyFun);u.enter().append("line").classed(uu.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",uu.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",function(l){var f=Gc.event.y,c=this.getBoundingClientRect(),h=l.scrollbarState,d=f-c.top,p=Gc.scale.linear().domain([0,h.scrollableAreaHeight]).range([0,h.totalHeight]).clamp(!0);h.topY<=d&&d<=h.bottomY||ZB(t,e,null,p(d-h.barLength/2))(l)}).call(Gc.behavior.drag().origin(function(l){return Gc.event.stopPropagation(),l.scrollbarState.scrollbarScrollInProgress=!0,l}).on("drag",ZB(t,e)).on("dragend",function(){})),u.attr("y2",function(l){return l.scrollbarState.scrollableAreaHeight}),t._context.staticPlot&&(s.remove(),u.remove())}function S$(e,t,r,n){var i=cJt(r),a=hJt(i);mJt(a);var o=dJt(a);gJt(o);var s=vJt(a),u=pJt(s);yJt(u),iYe(u,t,n,e),P$(a)}function cJt(e){var t=e.selectAll("."+uu.cn.columnCells).data(pc.repeat,pc.keyFun);return t.enter().append("g").classed(uu.cn.columnCells,!0),t.exit().remove(),t}function hJt(e){var t=e.selectAll("."+uu.cn.columnCell).data(tYe.splitToCells,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(uu.cn.columnCell,!0),t.exit().remove(),t}function dJt(e){var t=e.selectAll("."+uu.cn.cellRect).data(pc.repeat,function(r){return r.keyWithinBlock});return t.enter().append("rect").classed(uu.cn.cellRect,!0),t}function pJt(e){var t=e.selectAll("."+uu.cn.cellText).data(pc.repeat,function(r){return r.keyWithinBlock});return t.enter().append("text").classed(uu.cn.cellText,!0).style("cursor",function(){return"auto"}).on("mousedown",function(){Gc.event.stopPropagation()}),t}function vJt(e){var t=e.selectAll("."+uu.cn.cellTextHolder).data(pc.repeat,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(uu.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),t}function mJt(e){e.each(function(t,r){var n=t.calcdata.cells.font,i=t.column.specIndex,a={size:Yp(n.size,i,r),color:Yp(n.color,i,r),family:Yp(n.family,i,r),weight:Yp(n.weight,i,r),style:Yp(n.style,i,r),variant:Yp(n.variant,i,r),textcase:Yp(n.textcase,i,r),lineposition:Yp(n.lineposition,i,r),shadow:Yp(n.shadow,i,r)};t.rowNumber=t.key,t.align=Yp(t.calcdata.cells.align,i,r),t.cellBorderWidth=Yp(t.calcdata.cells.line.width,i,r),t.font=a})}function yJt(e){e.each(function(t){A$.font(Gc.select(this),t.font)})}function gJt(e){e.attr("width",function(t){return t.column.columnWidth}).attr("stroke-width",function(t){return t.cellBorderWidth}).each(function(t){var r=Gc.select(this);YZe.stroke(r,Yp(t.calcdata.cells.line.color,t.column.specIndex,t.rowNumber)),YZe.fill(r,Yp(t.calcdata.cells.fill.color,t.column.specIndex,t.rowNumber))})}function iYe(e,t,r,n){e.text(function(i){var a=i.column.specIndex,o=i.rowNumber,s=i.value,u=typeof s=="string",l=u&&s.match(/
/i),f=!u||l;i.mayHaveMarkup=u&&s.match(/[<&>]/);var c=_Jt(s);i.latex=c;var h=c?"":Yp(i.calcdata.cells.prefix,a,o)||"",d=c?"":Yp(i.calcdata.cells.suffix,a,o)||"",p=c?null:Yp(i.calcdata.cells.format,a,o)||null,_=h+(p?oJt(p)(i.value):i.value)+d,b;i.wrappingNeeded=!i.wrapped&&!f&&!c&&(b=$Ze(_)),i.cellHeightMayIncrease=l||c||i.mayHaveMarkup||(b===void 0?$Ze(_):b),i.needsConvertToTspans=i.mayHaveMarkup||i.wrappingNeeded||i.latex;var v;if(i.wrappingNeeded){var k=uu.wrapSplitCharacter===" "?_.replace(/i&&n.push(a),i+=u}return n}function L$(e,t,r){var n=rYe(t)[0];if(n!==void 0){var i=n.rowBlocks,a=n.calcdata,o=E$(i,i.length),s=n.calcdata.groupHeight-M$(n),u=a.scrollY=Math.max(0,Math.min(o-s,a.scrollY)),l=wJt(i,u,s);l.length===1&&(l[0]===i.length-1?l.unshift(l[0]-1):l.push(l[0]+1)),l[0]%2&&l.reverse(),t.each(function(f,c){f.page=l[c],f.scrollY=u}),t.attr("transform",function(f){var c=E$(f.rowBlocks,f.page)-f.scrollY;return om(0,c)}),e&&(eYe(e,r,t,l,n.prevPages,n,0),eYe(e,r,t,l,n.prevPages,n,1),nC(r,e))}}function ZB(e,t,r,n){return function(a){var o=a.calcdata?a.calcdata:a,s=t.filter(function(c){return o.key===c.key}),u=r||o.scrollbarState.dragMultiplier,l=o.scrollY;o.scrollY=n===void 0?o.scrollY+u*Gc.event.dy:n;var f=s.selectAll("."+uu.cn.yColumn).selectAll("."+uu.cn.columnBlock).filter(C$);return L$(e,f,s),o.scrollY===l}}function eYe(e,t,r,n,i,a,o){var s=n[o]!==i[o];s&&(clearTimeout(a.currentRepaint[o]),a.currentRepaint[o]=setTimeout(function(){var u=r.filter(function(l,f){return f===o&&n[f]!==i[f]});S$(e,t,u,r),i[o]=n[o]}))}function TJt(e,t,r,n){return function(){var a=Gc.select(t.parentNode);a.each(function(o){var s=o.fragments;a.selectAll("tspan.line").each(function(_,b){s[b].width=this.getComputedTextLength()});var u=s[s.length-1].width,l=s.slice(0,-1),f=[],c,h,d=0,p=o.column.columnWidth-2*uu.cellPad;for(o.value="";l.length;)c=l.shift(),h=c.width+u,d+h>p&&(o.value+=f.join(uu.wrapSpacer)+uu.lineBreaker,f=[],d=0),f.push(c.text),d+=h;d&&(o.value+=f.join(uu.wrapSpacer)),o.wrapped=!0}),a.selectAll("tspan.line").remove(),iYe(a.select("."+uu.cn.cellText),r,e,n),Gc.select(t.parentNode.parentNode).call(P$)}}function AJt(e,t,r,n,i){return function(){if(!i.settledY){var o=Gc.select(t.parentNode),s=k$(i),u=i.key-s.firstRowIndex,l=s.rows[u].rowHeight,f=i.cellHeightMayIncrease?t.parentNode.getBoundingClientRect().height+2*uu.cellPad:l,c=Math.max(f,l),h=c-s.rows[u].rowHeight;h&&(s.rows[u].rowHeight=c,e.selectAll("."+uu.cn.columnCell).call(P$),L$(null,e.filter(C$),0),nC(r,n,!0)),o.attr("transform",function(){var d=this,p=d.parentNode,_=p.getBoundingClientRect(),b=Gc.select(d.parentNode).select("."+uu.cn.cellRect).node().getBoundingClientRect(),v=d.transform.baseVal.consolidate(),k=b.top-_.top+(v?v.matrix.f:uu.cellPad);return om(nYe(i,Gc.select(d.parentNode).select("."+uu.cn.cellTextHolder).node().getBoundingClientRect().width),k)}),i.settledY=!0}}}function nYe(e,t){switch(e.align){case"left":return uu.cellPad;case"right":return e.column.columnWidth-(t||0)-uu.cellPad;case"center":return(e.column.columnWidth-(t||0))/2;default:return uu.cellPad}}function P$(e){e.attr("transform",function(t){var r=t.rowBlocks[0].auxiliaryBlocks.reduce(function(o,s){return o+YB(s,1/0)},0),n=k$(t),i=YB(n,t.key),a=i+r;return om(0,a)}).selectAll("."+uu.cn.cellRect).attr("height",function(t){return MJt(k$(t),t.key).rowHeight})}function E$(e,t){for(var r=0,n=t-1;n>=0;n--)r+=SJt(e[n]);return r}function YB(e,t){for(var r=0,n=0;n{"use strict";var EJt=Rd().getModuleCalcData,kJt=z$(),KB="table";JB.name=KB;JB.plot=function(e){var t=EJt(e.calcdata,KB)[0];t.length&&kJt(e,t)};JB.clean=function(e,t,r,n){var i=n._has&&n._has(KB),a=t._has&&t._has(KB);i&&!a&&n._paperdiv.selectAll(".table").remove()}});var lYe=Ae((h3r,sYe)=>{"use strict";sYe.exports={attributes:m$(),supplyDefaults:DZe(),calc:BZe(),plot:z$(),moduleType:"trace",name:"table",basePlotModule:oYe(),categories:["noOpacity"],meta:{}}});var fYe=Ae((d3r,uYe)=>{"use strict";uYe.exports=lYe()});var vYe=Ae((p3r,pYe)=>{"use strict";var cYe=gc(),hYe=Fh(),I$=Dd(),CJt=jc().descriptionWithDates,LJt=Sc().overrideAll,dYe=Id().dash,R$=Su().extendFlat;pYe.exports={color:{valType:"color",editType:"calc"},smoothing:{valType:"number",dflt:1,min:0,max:1.3,editType:"calc"},title:{text:{valType:"string",dflt:"",editType:"calc"},font:cYe({editType:"calc"}),offset:{valType:"number",dflt:10,editType:"calc"},editType:"calc"},type:{valType:"enumerated",values:["-","linear","date","category"],dflt:"-",editType:"calc"},autotypenumbers:I$.autotypenumbers,autorange:{valType:"enumerated",values:[!0,!1,"reversed"],dflt:!0,editType:"calc"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"calc"},range:{valType:"info_array",editType:"calc",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}]},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},cheatertype:{valType:"enumerated",values:["index","value"],dflt:"value",editType:"calc"},tickmode:{valType:"enumerated",values:["linear","array"],dflt:"array",editType:"calc"},nticks:{valType:"integer",min:0,dflt:0,editType:"calc"},tickvals:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},showticklabels:{valType:"enumerated",values:["start","end","both","none"],dflt:"start",editType:"calc"},labelalias:R$({},I$.labelalias,{editType:"calc"}),tickfont:cYe({editType:"calc"}),tickangle:{valType:"angle",dflt:"auto",editType:"calc"},tickprefix:{valType:"string",dflt:"",editType:"calc"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},ticksuffix:{valType:"string",dflt:"",editType:"calc"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"calc"},minexponent:{valType:"number",dflt:3,min:0,editType:"calc"},separatethousands:{valType:"boolean",dflt:!1,editType:"calc"},tickformat:{valType:"string",dflt:"",editType:"calc",description:CJt("tick label")},tickformatstops:LJt(I$.tickformatstops,"calc","from-root"),categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},labelpadding:{valType:"integer",dflt:10,editType:"calc"},labelprefix:{valType:"string",editType:"calc"},labelsuffix:{valType:"string",dflt:"",editType:"calc"},showline:{valType:"boolean",dflt:!1,editType:"calc"},linecolor:{valType:"color",dflt:hYe.defaultLine,editType:"calc"},linewidth:{valType:"number",min:0,dflt:1,editType:"calc"},gridcolor:{valType:"color",editType:"calc"},gridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},griddash:R$({},dYe,{editType:"calc"}),showgrid:{valType:"boolean",dflt:!0,editType:"calc"},minorgridcount:{valType:"integer",min:0,dflt:0,editType:"calc"},minorgridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},minorgriddash:R$({},dYe,{editType:"calc"}),minorgridcolor:{valType:"color",dflt:hYe.lightLine,editType:"calc"},startline:{valType:"boolean",editType:"calc"},startlinecolor:{valType:"color",editType:"calc"},startlinewidth:{valType:"number",dflt:1,editType:"calc"},endline:{valType:"boolean",editType:"calc"},endlinewidth:{valType:"number",dflt:1,editType:"calc"},endlinecolor:{valType:"color",editType:"calc"},tick0:{valType:"number",min:0,dflt:0,editType:"calc"},dtick:{valType:"number",min:0,dflt:1,editType:"calc"},arraytick0:{valType:"integer",min:0,dflt:0,editType:"calc"},arraydtick:{valType:"integer",min:1,dflt:1,editType:"calc"},editType:"calc"}});var QB=Ae((v3r,gYe)=>{"use strict";var PJt=gc(),mYe=vYe(),yYe=Fh(),$B=PJt({editType:"calc"}),zJt=Zc().zorder;$B.family.dflt='"Open Sans", verdana, arial, sans-serif';$B.size.dflt=12;$B.color.dflt=yYe.defaultLine;gYe.exports={carpet:{valType:"string",editType:"calc"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},a:{valType:"data_array",editType:"calc"},a0:{valType:"number",dflt:0,editType:"calc"},da:{valType:"number",dflt:1,editType:"calc"},b:{valType:"data_array",editType:"calc"},b0:{valType:"number",dflt:0,editType:"calc"},db:{valType:"number",dflt:1,editType:"calc"},cheaterslope:{valType:"number",dflt:1,editType:"calc"},aaxis:mYe,baxis:mYe,font:$B,color:{valType:"color",dflt:yYe.defaultLine,editType:"plot"},zorder:zJt}});var bYe=Ae((m3r,xYe)=>{"use strict";var _Ye=ei().isArray1D;xYe.exports=function(t,r,n){var i=n("x"),a=i&&i.length,o=n("y"),s=o&&o.length;if(!a&&!s)return!1;if(r._cheater=!i,(!a||_Ye(i))&&(!s||_Ye(o))){var u=a?i.length:1/0;s&&(u=Math.min(u,o.length)),r.a&&r.a.length&&(u=Math.min(u,r.a.length)),r.b&&r.b.length&&(u=Math.min(u,r.b.length)),r._length=u}else r._length=null;return!0}});var AYe=Ae((y3r,TYe)=>{"use strict";var IJt=QB(),wYe=jl().addOpacity,RJt=$l(),aC=ei(),DJt=bb(),FJt=e_(),BJt=t_(),OJt=aI(),qJt=gy(),NJt=z3();TYe.exports=function(t,r,n){var i=n.letter,a=n.font||{},o=IJt[i+"axis"];function s(m,P){return aC.coerce(t,r,o,m,P)}function u(m,P){return aC.coerce2(t,r,o,m,P)}n.name&&(r._name=n.name,r._id=n.name),s("autotypenumbers",n.autotypenumbersDflt);var l=s("type");if(l==="-"&&(n.data&&UJt(r,n.data),r.type==="-"?r.type="linear":l=t.type=r.type),s("smoothing"),s("cheatertype"),s("showticklabels"),s("labelprefix",i+" = "),s("labelsuffix"),s("showtickprefix"),s("showticksuffix"),s("separatethousands"),s("tickformat"),s("exponentformat"),s("minexponent"),s("showexponent"),s("categoryorder"),s("tickmode"),s("tickvals"),s("ticktext"),s("tick0"),s("dtick"),r.tickmode==="array"&&(s("arraytick0"),s("arraydtick")),s("labelpadding"),r._hovertitle=i,l==="date"){var f=RJt.getComponentMethod("calendars","handleDefaults");f(t,r,"calendar",n.calendar)}qJt(r,n.fullLayout),r.c2p=aC.identity;var c=s("color",n.dfltColor),h=c===t.color?c:a.color,d=s("title.text");d&&(aC.coerceFont(s,"title.font",a,{overrideDflt:{size:aC.bigFont(a.size),color:h}}),s("title.offset")),s("tickangle");var p=s("autorange",!r.isValidRange(t.range));p&&s("rangemode"),s("range"),r.cleanRange(),s("fixedrange"),DJt(t,r,s,l),BJt(t,r,s,l,n),FJt(t,r,s,l,n),OJt(t,r,s,{data:n.data,dataAttr:i});var _=u("gridcolor",wYe(c,.3)),b=u("gridwidth"),v=u("griddash"),k=s("showgrid");k||(delete r.gridcolor,delete r.gridwidth,delete r.griddash);var E=u("startlinecolor",c),A=u("startlinewidth",b),L=s("startline",r.showgrid||!!E||!!A);L||(delete r.startlinecolor,delete r.startlinewidth);var x=u("endlinecolor",c),C=u("endlinewidth",b),M=s("endline",r.showgrid||!!x||!!C);return M||(delete r.endlinecolor,delete r.endlinewidth),k?(s("minorgridcount"),s("minorgridwidth",b),s("minorgriddash",v),s("minorgridcolor",wYe(_,.06)),r.minorgridcount||(delete r.minorgridwidth,delete r.minorgriddash,delete r.minorgridcolor)):(delete r.gridcolor,delete r.gridwidth,delete r.griddash),r.showticklabels==="none"&&(delete r.tickfont,delete r.tickangle,delete r.showexponent,delete r.exponentformat,delete r.minexponent,delete r.tickformat,delete r.showticksuffix,delete r.showtickprefix),r.showticksuffix||delete r.ticksuffix,r.showtickprefix||delete r.tickprefix,s("tickmode"),r};function UJt(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i=n+"calendar",a=e[i];e.type=NJt(t,a,{autotypenumbers:e.autotypenumbers})}}});var MYe=Ae((g3r,SYe)=>{"use strict";var VJt=AYe(),GJt=Lf();SYe.exports=function(t,r,n,i,a){var o=i("a");o||(i("da"),i("a0"));var s=i("b");s||(i("db"),i("b0")),HJt(t,r,n,a)};function HJt(e,t,r,n){var i=["aaxis","baxis"];i.forEach(function(a){var o=a.charAt(0),s=e[a]||{},u=GJt.newContainer(t,a),l={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,tickfont:"x",id:o+"axis",letter:o,font:t.font,name:a,data:e[o],calendar:t.calendar,dfltColor:n,bgColor:r.paper_bgcolor,autotypenumbersDflt:r.autotypenumbers,fullLayout:r};VJt(s,u,l),u._categories=u._categories||[],!e[a]&&s.type!=="-"&&(e[a]={type:s.type})})}});var CYe=Ae((_3r,kYe)=>{"use strict";var EYe=ei(),WJt=bYe(),jJt=MYe(),XJt=QB(),ZJt=Fh();kYe.exports=function(t,r,n,i){function a(u,l){return EYe.coerce(t,r,XJt,u,l)}r._clipPathId="clip"+r.uid+"carpet";var o=a("color",ZJt.defaultLine);if(EYe.coerceFont(a,"font",i.font),a("carpet"),jJt(t,r,i,a,o),!r.a||!r.b){r.visible=!1;return}r.a.length<3&&(r.aaxis.smoothing=0),r.b.length<3&&(r.baxis.smoothing=0);var s=WJt(t,r,a);s||(r.visible=!1),r._cheater&&a("cheaterslope"),a("zorder")}});var D$=Ae((x3r,LYe)=>{"use strict";var YJt=ei().isArrayOrTypedArray;LYe.exports=function(t,r,n){var i;for(YJt(t)?t.length>r.length&&(t=t.slice(0,r.length)):t=[],i=0;i{"use strict";PYe.exports=function(t,r,n){if(t.length===0)return"";var i,a=[],o=n?3:1;for(i=0;i{"use strict";zYe.exports=function(t,r,n,i,a,o){var s=a[0]*t.dpdx(r),u=a[1]*t.dpdy(n),l=1,f=1;if(o){var c=Math.sqrt(a[0]*a[0]+a[1]*a[1]),h=Math.sqrt(o[0]*o[0]+o[1]*o[1]),d=(a[0]*o[0]+a[1]*o[1])/c/h;f=Math.max(0,d)}var p=Math.atan2(u,s)*180/Math.PI;return p<-90?(p+=180,l=-l):p>90&&(p-=180,l=-l),{angle:p,flip:l,p:t.c2p(i,r,n),offsetMultplier:f}}});var UYe=Ae((T3r,NYe)=>{"use strict";var iO=Jl(),eO=Mu(),tO=D$(),FYe=F$(),oC=IYe(),B$=Xf(),Uv=ei(),BYe=Uv.strRotate,rO=Uv.strTranslate,OYe=td();NYe.exports=function(t,r,n,i){var a=t._context.staticPlot,o=r.xaxis,s=r.yaxis,u=t._fullLayout,l=u._clips;Uv.makeTraceGroups(i,n,"trace").each(function(f){var c=iO.select(this),h=f[0],d=h.trace,p=d.aaxis,_=d.baxis,b=Uv.ensureSingle(c,"g","minorlayer"),v=Uv.ensureSingle(c,"g","majorlayer"),k=Uv.ensureSingle(c,"g","boundarylayer"),E=Uv.ensureSingle(c,"g","labellayer");c.style("opacity",d.opacity),OS(o,s,v,p,"a",p._gridlines,!0,a),OS(o,s,v,_,"b",_._gridlines,!0,a),OS(o,s,b,p,"a",p._minorgridlines,!0,a),OS(o,s,b,_,"b",_._minorgridlines,!0,a),OS(o,s,k,p,"a-boundary",p._boundarylines,a),OS(o,s,k,_,"b-boundary",_._boundarylines,a);var A=RYe(t,o,s,d,h,E,p._labels,"a-label"),L=RYe(t,o,s,d,h,E,_._labels,"b-label");JJt(t,E,d,h,o,s,A,L),KJt(d,h,l,o,s)})};function KJt(e,t,r,n,i){var a,o,s,u,l=r.select("#"+e._clipPathId);l.size()||(l=r.append("clipPath").classed("carpetclip",!0));var f=Uv.ensureSingle(l,"path","carpetboundary"),c=t.clipsegments,h=[];for(u=0;u0?"start":"end","data-notex":1}).call(eO.font,c.font).text(c.text).call(B$.convertToTspans,e),v=eO.bBox(this);b.attr("transform",rO(d.p[0],d.p[1])+BYe(d.angle)+rO(c.axis.labelpadding*_,v.height*.3)),l=Math.max(l,v.width+c.axis.labelpadding)}),u.exit().remove(),f.maxExtent=l,f}function JJt(e,t,r,n,i,a,o,s){var u,l,f,c,h=Uv.aggNums(Math.min,null,r.a),d=Uv.aggNums(Math.max,null,r.a),p=Uv.aggNums(Math.min,null,r.b),_=Uv.aggNums(Math.max,null,r.b);u=.5*(h+d),l=p,f=r.ab2xy(u,l,!0),c=r.dxyda_rough(u,l),o.angle===void 0&&Uv.extendFlat(o,oC(r,i,a,f,r.dxydb_rough(u,l))),DYe(e,t,r,n,f,c,r.aaxis,i,a,o,"a-title"),u=h,l=.5*(p+_),f=r.ab2xy(u,l,!0),c=r.dxydb_rough(u,l),s.angle===void 0&&Uv.extendFlat(s,oC(r,i,a,f,r.dxyda_rough(u,l))),DYe(e,t,r,n,f,c,r.baxis,i,a,s,"b-title")}var qYe=OYe.LINE_SPACING,$Jt=(1-OYe.MID_SHIFT)/qYe+1;function DYe(e,t,r,n,i,a,o,s,u,l,f){var c=[];o.title.text&&c.push(o.title.text);var h=t.selectAll("text."+f).data(c),d=l.maxExtent;h.enter().append("text").classed(f,!0),h.each(function(){var p=oC(r,s,u,i,a);["start","both"].indexOf(o.showticklabels)===-1&&(d=0);var _=o.title.font.size;d+=_+o.title.offset;var b=l.angle+(l.flip<0?180:0),v=(b-p.angle+450)%360,k=v>90&&v<270,E=iO.select(this);E.text(o.title.text).call(B$.convertToTspans,e),k&&(d=(-B$.lineCount(E)+$Jt)*qYe*_-d),E.attr("transform",rO(p.p[0],p.p[1])+BYe(p.angle)+rO(0,d)).attr("text-anchor","middle").call(eO.font,o.title.font)}),h.exit().remove()}});var GYe=Ae((A3r,VYe)=>{"use strict";var nO=ei().isArrayOrTypedArray;VYe.exports=function(e,t,r){var n,i,a,o,s,u,l=[],f=nO(e)?e.length:e,c=nO(t)?t.length:t,h=nO(e)?e:null,d=nO(t)?t:null;h&&(a=(h.length-1)/(h[h.length-1]-h[0])/(f-1)),d&&(o=(d.length-1)/(d[d.length-1]-d[0])/(c-1));var p,_=1/0,b=-1/0;for(i=0;i{"use strict";var HYe=ei().isArrayOrTypedArray;jYe.exports=function(e){return WYe(e,0)};function WYe(e,t){if(!HYe(e)||t>=10)return null;for(var r=1/0,n=-1/0,i=e.length,a=0;a{"use strict";var QJt=wu(),kx=Su().extendFlat;ZYe.exports=function(t,r,n){var i,a,o,s,u,l,f,c,h,d,p,_,b,v,k=t["_"+r],E=t[r+"axis"],A=E._gridlines=[],L=E._minorgridlines=[],x=E._boundarylines=[],C=t["_"+n],M=t[n+"axis"];E.tickmode==="array"&&(E.tickvals=k.slice());var m=t._xctrl,P=t._yctrl,T=m[0].length,B=m.length,F=t._a.length,U=t._b.length;QJt.prepTicks(E),E.tickmode==="array"&&delete E.tickvals;var G=E.smoothing?3:1;function j(N){var W,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De=[],ye=[],qe={};if(r==="b")for(re=t.b2j(N),ae=Math.floor(Math.max(0,Math.min(U-2,re))),be=re-ae,qe.length=U,qe.crossLength=F,qe.xy=function(ce){return t.evalxy([],ce,re)},qe.dxy=function(ce,Je){return t.dxydi([],ce,ae,Je,be)},W=0;W0&&(ke=t.dxydi([],W-1,ae,0,be),De.push(ze[0]+ke[0]/3),ye.push(ze[1]+ke[1]/3),Ee=t.dxydi([],W-1,ae,1,be),De.push(te[0]-Ee[0]/3),ye.push(te[1]-Ee[1]/3)),De.push(te[0]),ye.push(te[1]),ze=te;else for(W=t.a2i(N),Ce=Math.floor(Math.max(0,Math.min(F-2,W))),de=W-Ce,qe.length=F,qe.crossLength=U,qe.xy=function(ce){return t.evalxy([],W,ce)},qe.dxy=function(ce,Je){return t.dxydj([],Ce,ce,de,Je)},re=0;re0&&(Me=t.dxydj([],Ce,re-1,de,0),De.push(ze[0]+Me[0]/3),ye.push(ze[1]+Me[1]/3),Ue=t.dxydj([],Ce,re-1,de,1),De.push(te[0]-Ue[0]/3),ye.push(te[1]-Ue[1]/3)),De.push(te[0]),ye.push(te[1]),ze=te;return qe.axisLetter=r,qe.axis=E,qe.crossAxis=M,qe.value=N,qe.constvar=n,qe.index=c,qe.x=De,qe.y=ye,qe.smoothing=M.smoothing,qe}function H(N){var W,re,ae,be,ze,Ce=[],de=[],te={};if(te.length=k.length,te.crossLength=C.length,r==="b")for(ae=Math.max(0,Math.min(U-2,N)),ze=Math.min(1,Math.max(0,N-ae)),te.xy=function(ke){return t.evalxy([],ke,N)},te.dxy=function(ke,Ee){return t.dxydi([],ke,ae,Ee,ze)},W=0;Wk.length-1)&&A.push(kx(H(a),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(c=l;ck.length-1)&&!(p<0||p>k.length-1))for(_=k[o],b=k[p],i=0;ik[k.length-1])&&L.push(kx(j(d),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash})));E.startline&&x.push(kx(H(0),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&x.push(kx(H(k.length-1),{color:E.endlinecolor,width:E.endlinewidth}))}else{for(s=5e-15,u=[Math.floor((k[k.length-1]-E.tick0)/E.dtick*(1+s)),Math.ceil((k[0]-E.tick0)/E.dtick/(1+s))].sort(function(N,W){return N-W}),l=u[0],f=u[1],c=l;c<=f;c++)h=E.tick0+E.dtick*c,A.push(kx(j(h),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(c=l-1;ck[k.length-1])&&L.push(kx(j(d),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash}));E.startline&&x.push(kx(j(k[0]),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&x.push(kx(j(k[k.length-1]),{color:E.endlinecolor,width:E.endlinewidth}))}}});var QYe=Ae((E3r,$Ye)=>{"use strict";var KYe=wu(),JYe=Su().extendFlat;$Ye.exports=function(t,r){var n,i,a,o,s,u=r._labels=[],l=r._gridlines;for(n=0;n{"use strict";eKe.exports=function(t,r,n,i){var a,o,s,u=[],l=!!n.smoothing,f=!!i.smoothing,c=t[0].length-1,h=t.length-1;for(a=0,o=[],s=[];a<=c;a++)o[a]=t[0][a],s[a]=r[0][a];for(u.push({x:o,y:s,bicubic:l}),a=0,o=[],s=[];a<=h;a++)o[a]=t[a][c],s[a]=r[a][c];for(u.push({x:o,y:s,bicubic:f}),a=c,o=[],s=[];a>=0;a--)o[c-a]=t[h][a],s[c-a]=r[h][a];for(u.push({x:o,y:s,bicubic:l}),a=h,o=[],s=[];a>=0;a--)o[h-a]=t[a][0],s[h-a]=r[a][0];return u.push({x:o,y:s,bicubic:f}),u}});var iKe=Ae((C3r,rKe)=>{"use strict";var e$t=ei();rKe.exports=function(t,r,n){var i,a,o,s=[],u=[],l=t[0].length,f=t.length;function c(ae,be){var ze=0,Ce,de=0;return ae>0&&(Ce=t[be][ae-1])!==void 0&&(de++,ze+=Ce),ae0&&(Ce=t[be-1][ae])!==void 0&&(de++,ze+=Ce),be0&&a0&&iM);return e$t.log("Smoother converged to",m,"after",T,"iterations"),t}});var aKe=Ae((L3r,nKe)=>{"use strict";nKe.exports={RELATIVE_CULL_TOLERANCE:1e-6}});var lKe=Ae((P3r,sKe)=>{"use strict";var oKe=.5;sKe.exports=function(t,r,n,i){var a=t[0]-r[0],o=t[1]-r[1],s=n[0]-r[0],u=n[1]-r[1],l=Math.pow(a*a+o*o,oKe/2),f=Math.pow(s*s+u*u,oKe/2),c=(f*f*a-l*l*s)*i,h=(f*f*o-l*l*u)*i,d=f*(l+f)*3,p=l*(l+f)*3;return[[r[0]+(d&&c/d),r[1]+(d&&h/d)],[r[0]-(p&&c/p),r[1]-(p&&h/p)]]}});var fKe=Ae((z3r,uKe)=>{"use strict";var O$=lKe(),aO=ei().ensureArray;function qS(e,t,r){var n=-.5*r[0]+1.5*t[0],i=-.5*r[1]+1.5*t[1];return[(2*n+e[0])/3,(2*i+e[1])/3]}uKe.exports=function(t,r,n,i,a,o){var s,u,l,f,c,h,d,p,_,b,v=n[0].length,k=n.length,E=a?3*v-2:v,A=o?3*k-2:k;for(t=aO(t,A),r=aO(r,A),l=0;l{"use strict";cKe.exports=function(e,t,r,n,i){var a=t-2,o=r-2;return n&&i?function(s,u,l){s||(s=[]);var f,c,h,d,p,_,b=Math.max(0,Math.min(Math.floor(u),a)),v=Math.max(0,Math.min(Math.floor(l),o)),k=Math.max(0,Math.min(1,u-b)),E=Math.max(0,Math.min(1,l-v));b*=3,v*=3;var A=k*k,L=A*k,x=1-k,C=x*x,M=C*x,m=E*E,P=m*E,T=1-E,B=T*T,F=B*T;for(_=0;_{"use strict";dKe.exports=function(e,t,r){return t&&r?function(n,i,a,o,s){n||(n=[]);var u,l,f,c,h,d;i*=3,a*=3;var p=o*o,_=1-o,b=_*_,v=_*o*2,k=-3*b,E=3*(b-v),A=3*(v-p),L=3*p,x=s*s,C=x*s,M=1-s,m=M*M,P=m*M;for(d=0;d{"use strict";vKe.exports=function(e,t,r){return t&&r?function(n,i,a,o,s){n||(n=[]);var u,l,f,c,h,d;i*=3,a*=3;var p=o*o,_=p*o,b=1-o,v=b*b,k=v*b,E=s*s,A=1-s,L=A*A,x=A*s*2,C=-3*L,M=3*(L-x),m=3*(x-E),P=3*E;for(d=0;d{"use strict";var yKe=aKe(),gKe=IL().findBin,t$t=fKe(),r$t=hKe(),i$t=pKe(),n$t=mKe();_Ke.exports=function(t){var r=t._a,n=t._b,i=r.length,a=n.length,o=t.aaxis,s=t.baxis,u=r[0],l=r[i-1],f=n[0],c=n[a-1],h=r[r.length-1]-r[0],d=n[n.length-1]-n[0],p=h*yKe.RELATIVE_CULL_TOLERANCE,_=d*yKe.RELATIVE_CULL_TOLERANCE;u-=p,l+=p,f-=_,c+=_,t.isVisible=function(b,v){return b>u&&bf&&vl||vc},t.setScale=function(){var b=t._x,v=t._y,k=t$t(t._xctrl,t._yctrl,b,v,o.smoothing,s.smoothing);t._xctrl=k[0],t._yctrl=k[1],t.evalxy=r$t([t._xctrl,t._yctrl],i,a,o.smoothing,s.smoothing),t.dxydi=i$t([t._xctrl,t._yctrl],o.smoothing,s.smoothing),t.dxydj=n$t([t._xctrl,t._yctrl],o.smoothing,s.smoothing)},t.i2a=function(b){var v=Math.max(0,Math.floor(b[0]),i-2),k=b[0]-v;return(1-k)*r[v]+k*r[v+1]},t.j2b=function(b){var v=Math.max(0,Math.floor(b[1]),i-2),k=b[1]-v;return(1-k)*n[v]+k*n[v+1]},t.ij2ab=function(b){return[t.i2a(b[0]),t.j2b(b[1])]},t.a2i=function(b){var v=Math.max(0,Math.min(gKe(b,r),i-2)),k=r[v],E=r[v+1];return Math.max(0,Math.min(i-1,v+(b-k)/(E-k)))},t.b2j=function(b){var v=Math.max(0,Math.min(gKe(b,n),a-2)),k=n[v],E=n[v+1];return Math.max(0,Math.min(a-1,v+(b-k)/(E-k)))},t.ab2ij=function(b){return[t.a2i(b[0]),t.b2j(b[1])]},t.i2c=function(b,v){return t.evalxy([],b,v)},t.ab2xy=function(b,v,k){if(!k&&(br[i-1]|vn[a-1]))return[!1,!1];var E=t.a2i(b),A=t.b2j(v),L=t.evalxy([],E,A);if(k){var x=0,C=0,M=[],m,P,T,B;br[i-1]?(m=i-2,P=1,x=(b-r[i-1])/(r[i-1]-r[i-2])):(m=Math.max(0,Math.min(i-2,Math.floor(E))),P=E-m),vn[a-1]?(T=a-2,B=1,C=(v-n[a-1])/(n[a-1]-n[a-2])):(T=Math.max(0,Math.min(a-2,Math.floor(A))),B=A-T),x&&(t.dxydi(M,m,T,P,B),L[0]+=M[0]*x,L[1]+=M[1]*x),C&&(t.dxydj(M,m,T,P,B),L[0]+=M[0]*C,L[1]+=M[1]*C)}return L},t.c2p=function(b,v,k){return[v.c2p(b[0]),k.c2p(b[1])]},t.p2x=function(b,v,k){return[v.p2c(b[0]),k.p2c(b[1])]},t.dadi=function(b){var v=Math.max(0,Math.min(r.length-2,b));return r[v+1]-r[v]},t.dbdj=function(b){var v=Math.max(0,Math.min(n.length-2,b));return n[v+1]-n[v]},t.dxyda=function(b,v,k,E){var A=t.dxydi(null,b,v,k,E),L=t.dadi(b,k);return[A[0]/L,A[1]/L]},t.dxydb=function(b,v,k,E){var A=t.dxydj(null,b,v,k,E),L=t.dbdj(v,E);return[A[0]/L,A[1]/L]},t.dxyda_rough=function(b,v,k){var E=h*(k||.1),A=t.ab2xy(b+E,v,!0),L=t.ab2xy(b-E,v,!0);return[(A[0]-L[0])*.5/E,(A[1]-L[1])*.5/E]},t.dxydb_rough=function(b,v,k){var E=d*(k||.1),A=t.ab2xy(b,v+E,!0),L=t.ab2xy(b,v-E,!0);return[(A[0]-L[0])*.5/E,(A[1]-L[1])*.5/E]},t.dpdx=function(b){return b._m},t.dpdy=function(b){return b._m}}});var kKe=Ae((B3r,EKe)=>{"use strict";var oO=wu(),bKe=ei().isArray1D,a$t=GYe(),wKe=XYe(),TKe=YYe(),AKe=QYe(),o$t=tKe(),SKe=nR(),MKe=iKe(),s$t=rR(),l$t=xKe();EKe.exports=function(t,r){var n=oO.getFromId(t,r.xaxis),i=oO.getFromId(t,r.yaxis),a=r.aaxis,o=r.baxis,s=r.x,u=r.y,l=[];s&&bKe(s)&&l.push("x"),u&&bKe(u)&&l.push("y"),l.length&&s$t(r,a,o,"a","b",l);var f=r._a=r._a||r.a,c=r._b=r._b||r.b;s=r._x||r.x,u=r._y||r.y;var h={};if(r._cheater){var d=a.cheatertype==="index"?f.length:f,p=o.cheatertype==="index"?c.length:c;s=a$t(d,p,r.cheaterslope)}r._x=s=SKe(s),r._y=u=SKe(u),MKe(s,f,c),MKe(u,f,c),l$t(r),r.setScale();var _=wKe(s),b=wKe(u),v=.5*(_[1]-_[0]),k=.5*(_[1]+_[0]),E=.5*(b[1]-b[0]),A=.5*(b[1]+b[0]),L=1.3;return _=[k-v*L,k+v*L],b=[A-E*L,A+E*L],r._extremes[n._id]=oO.findExtremes(n,_,{padded:!0}),r._extremes[i._id]=oO.findExtremes(i,b,{padded:!0}),TKe(r,"a","b"),TKe(r,"b","a"),AKe(r,a),AKe(r,o),h.clipsegments=o$t(r._xctrl,r._yctrl,a,o),h.x=s,h.y=u,h.a=f,h.b=c,[h]}});var LKe=Ae((O3r,CKe)=>{"use strict";CKe.exports={attributes:QB(),supplyDefaults:CYe(),plot:UYe(),calc:kKe(),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:Ah(),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}});var zKe=Ae((q3r,PKe)=>{"use strict";PKe.exports=LKe()});var q$=Ae((N3r,DKe)=>{"use strict";var u$t=km(),u0=Zc(),f$t=Gf(),{hovertemplateAttrs:c$t,texttemplateAttrs:h$t,templatefallbackAttrs:IKe}=Ff(),RKe=nc(),Cx=Su().extendFlat,sm=u0.marker,NS=u0.line,d$t=sm.line;DKe.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:Cx({},u0.mode,{dflt:"markers"}),text:Cx({},u0.text,{}),texttemplate:h$t({editType:"plot"},{keys:["a","b","text"]}),texttemplatefallback:IKe({editType:"plot"}),hovertext:Cx({},u0.hovertext,{}),line:{color:NS.color,width:NS.width,dash:NS.dash,backoff:NS.backoff,shape:Cx({},NS.shape,{values:["linear","spline"]}),smoothing:NS.smoothing,editType:"calc"},connectgaps:u0.connectgaps,fill:Cx({},u0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:u$t(),marker:Cx({symbol:sm.symbol,opacity:sm.opacity,maxdisplayed:sm.maxdisplayed,angle:sm.angle,angleref:sm.angleref,standoff:sm.standoff,size:sm.size,sizeref:sm.sizeref,sizemin:sm.sizemin,sizemode:sm.sizemode,line:Cx({width:d$t.width,editType:"calc"},RKe("marker.line")),gradient:sm.gradient,editType:"calc"},RKe("marker")),textfont:u0.textfont,textposition:u0.textposition,selected:u0.selected,unselected:u0.unselected,hoverinfo:Cx({},f$t.hoverinfo,{flags:["a","b","text","name"]}),hoveron:u0.hoveron,hovertemplate:c$t(),hovertemplatefallback:IKe(),zorder:u0.zorder}});var qKe=Ae((U3r,OKe)=>{"use strict";var FKe=ei(),p$t=Sy(),US=lc(),v$t=$v(),m$t=I0(),BKe=eT(),y$t=R0(),g$t=zm(),_$t=q$();OKe.exports=function(t,r,n,i){function a(h,d){return FKe.coerce(t,r,_$t,h,d)}a("carpet"),r.xaxis="x",r.yaxis="y";var o=a("a"),s=a("b"),u=Math.min(o.length,s.length);if(!u){r.visible=!1;return}r._length=u,a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext");var l=u{"use strict";NKe.exports=function(t,r){var n={},i=r._carpet,a=i.ab2ij([t.a,t.b]),o=Math.floor(a[0]),s=a[0]-o,u=Math.floor(a[1]),l=a[1]-u,f=i.evalxy([],o,u,s,l);return n.yLabel=f[1].toFixed(3),n}});var sO=Ae((G3r,VKe)=>{"use strict";VKe.exports=function(e,t){for(var r=e._fullData.length,n,i=0;i{"use strict";var GKe=ku(),x$t=D0(),b$t=ky(),w$t=F0(),T$t=B0().calcMarkerSize,A$t=sO();HKe.exports=function(t,r){var n=r._carpetTrace=A$t(t,r);if(!(!n||!n.visible||n.visible==="legendonly")){var i;r.xaxis=n.xaxis,r.yaxis=n.yaxis;var a=r._length,o=new Array(a),s,u,l=!1;for(i=0;i{"use strict";var S$t=oT(),jKe=wu(),M$t=Mu();XKe.exports=function(t,r,n,i){var a,o,s,u=n[0][0].carpet,l=jKe.getFromId(t,u.xaxis||"x"),f=jKe.getFromId(t,u.yaxis||"y"),c={xaxis:l,yaxis:f,plot:r.plot};for(a=0;a{"use strict";var E$t=fT(),k$t=ei().fillText;YKe.exports=function(t,r,n,i){var a=E$t(t,r,n,i);if(!a||a[0].index===!1)return;var o=a[0];if(o.index===void 0){var s=1-o.y0/t.ya._length,u=t.xa._length,l=u*s/2,f=u-l;return o.x0=Math.max(Math.min(o.x0,f),l),o.x1=Math.max(Math.min(o.x1,f),l),a}var c=o.cd[o.index];o.a=c.a,o.b=c.b,o.xLabelVal=void 0,o.yLabelVal=void 0;var h=o.trace,d=h._carpet,p=h._module.formatLabels(c,h);o.yLabel=p.yLabel,delete o.text;var _=[];function b(E,A){var L;E.labelprefix&&E.labelprefix.length>0?L=E.labelprefix.replace(/ = $/,""):L=E._hovertitle,_.push(L+": "+A.toFixed(3)+E.labelsuffix)}if(!h.hovertemplate){var v=c.hi||h.hoverinfo,k=v.split("+");k.indexOf("all")!==-1&&(k=["a","b","text"]),k.indexOf("a")!==-1&&b(d.aaxis,c.a),k.indexOf("b")!==-1&&b(d.baxis,c.b),_.push("y: "+o.yLabel),k.indexOf("text")!==-1&&k$t(c,h,_),o.extraText=_.join("
")}return a}});var $Ke=Ae((X3r,JKe)=>{"use strict";JKe.exports=function(t,r,n,i,a){var o=i[a];return t.a=o.a,t.b=o.b,t.y=o.y,t}});var eJe=Ae((Z3r,QKe)=>{"use strict";QKe.exports={attributes:q$(),supplyDefaults:qKe(),colorbar:ep(),formatLabels:UKe(),calc:WKe(),plot:ZKe(),style:ov().style,styleOnSelect:ov().styleOnSelect,hoverPoints:KKe(),selectPoints:cT(),eventData:$Ke(),moduleType:"trace",name:"scattercarpet",basePlotModule:Ah(),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}});var rJe=Ae((Y3r,tJe)=>{"use strict";tJe.exports=eJe()});var N$=Ae((K3r,iJe)=>{"use strict";var lm=LT(),m1=kE(),C$t=nc(),L$t=Su().extendFlat,rg=m1.contours;iJe.exports=L$t({carpet:{valType:"string",editType:"calc"},z:lm.z,a:lm.x,a0:lm.x0,da:lm.dx,b:lm.y,b0:lm.y0,db:lm.dy,text:lm.text,hovertext:lm.hovertext,transpose:lm.transpose,atype:lm.xtype,btype:lm.ytype,fillcolor:m1.fillcolor,autocontour:m1.autocontour,ncontours:m1.ncontours,contours:{type:rg.type,start:rg.start,end:rg.end,size:rg.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:rg.showlines,showlabels:rg.showlabels,labelfont:rg.labelfont,labelformat:rg.labelformat,operation:rg.operation,value:rg.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:m1.line.color,width:m1.line.width,dash:m1.line.dash,smoothing:m1.line.smoothing,editType:"plot"},zorder:m1.zorder},C$t("",{cLetter:"z",autoColorDflt:!1}))});var U$=Ae((J3r,oJe)=>{"use strict";var nJe=ei(),P$t=QI(),aJe=N$(),z$t=FG(),I$t=TR(),R$t=AR();oJe.exports=function(t,r,n,i){function a(l,f){return nJe.coerce(t,r,aJe,l,f)}function o(l){return nJe.coerce2(t,r,aJe,l)}if(a("carpet"),t.a&&t.b){var s=P$t(t,r,a,i,"a","b");if(!s){r.visible=!1;return}a("text");var u=a("contours.type")==="constraint";u?z$t(t,r,a,i,n,{hasHover:!1}):(I$t(t,r,a,o),R$t(t,r,a,i,{hasHover:!1}))}else r._defaultColor=n,r._length=null;a("zorder")}});var fJe=Ae(($3r,uJe)=>{"use strict";var D$t=gp(),sJe=ei(),F$t=rR(),B$t=nR(),O$t=aR(),q$t=oR(),lJe=aG(),N$t=U$(),U$t=sO(),V$t=AG();uJe.exports=function(t,r){var n=r._carpetTrace=U$t(t,r);if(!(!n||!n.visible||n.visible==="legendonly")){if(!r.a||!r.b){var i=t.data[n.index],a=t.data[r.index];a.a||(a.a=i.a),a.b||(a.b=i.b),N$t(a,r,r._defaultColor,t._fullLayout)}var o=G$t(t,r);return V$t(r,r._z),o}};function G$t(e,t){var r=t._carpetTrace,n=r.aaxis,i=r.baxis,a,o,s,u,l,f,c;n._minDtick=0,i._minDtick=0,sJe.isArray1D(t.z)&&F$t(t,n,i,"a","b",["z"]),a=t._a=t._a||t.a,u=t._b=t._b||t.b,a=a?n.makeCalcdata(t,"_a"):[],u=u?i.makeCalcdata(t,"_b"):[],o=t.a0||0,s=t.da||1,l=t.b0||0,f=t.db||1,c=t._z=B$t(t._z||t.z,t.transpose),t._emptypoints=q$t(c),O$t(c,t._emptypoints);var h=sJe.maxRowLength(c),d=t.xtype==="scaled"?"":a,p=lJe(t,d,o,s,h,n),_=t.ytype==="scaled"?"":u,b=lJe(t,_,l,f,c.length,i),v={a:p,b,z:c};return t.contours.type==="levels"&&t.contours.coloring!=="none"&&D$t(e,t,{vals:c,containerStr:"",cLetter:"z"}),[v]}});var hJe=Ae((Q3r,cJe)=>{"use strict";var H$t=ei().isArrayOrTypedArray;cJe.exports=function(e,t,r,n){var i,a,o,s,u,l,f,c,h,d,p,_,b,v=H$t(r)?"a":"b",k=v==="a"?e.aaxis:e.baxis,E=k.smoothing,A=v==="a"?e.a2i:e.b2j,L=v==="a"?r:n,x=v==="a"?n:r,C=v==="a"?t.a.length:t.b.length,M=v==="a"?t.b.length:t.a.length,m=Math.floor(v==="a"?e.b2j(x):e.a2i(x)),P=v==="a"?function(be){return e.evalxy([],be,m)}:function(be){return e.evalxy([],m,be)};E&&(o=Math.max(0,Math.min(M-2,m)),s=m-o,a=v==="a"?function(be,ze){return e.dxydi([],be,o,ze,s)}:function(be,ze){return e.dxydj([],o,be,s,ze)});var T=A(L[0]),B=A(L[1]),F=T0?Math.floor:Math.ceil,j=F>0?Math.ceil:Math.floor,H=F>0?Math.min:Math.max,N=F>0?Math.max:Math.min,W=G(T+U),re=j(B-U);f=P(T);var ae=[[f]];for(i=W;i*F{"use strict";var uO=Jl(),fO=D$(),yJe=F$(),sC=Mu(),y1=ei(),W$t=MG(),j$t=EG(),dw=ER(),lO=LE(),X$t=PG(),Z$t=LG(),Y$t=zG(),K$t=sO(),dJe=hJe();gJe.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;y1.makeTraceGroups(i,n,"contour").each(function(s){var u=uO.select(this),l=s[0],f=l.trace,c=f._carpetTrace=K$t(t,f),h=t.calcdata[c.index][0];if(!c.visible||c.visible==="legendonly")return;var d=l.a,p=l.b,_=f.contours,b=Z$t(_,r,l),v=_.type==="constraint",k=_._operation,E=v?k==="="?"lines":"fill":_.coloring;function A(G){var j=c.ab2xy(G[0],G[1],!0);return[a.c2p(j[0]),o.c2p(j[1])]}var L=[[d[0],p[p.length-1]],[d[d.length-1],p[p.length-1]],[d[d.length-1],p[0]],[d[0],p[0]]];W$t(b);var x=(d[d.length-1]-d[0])*1e-8,C=(p[p.length-1]-p[0])*1e-8;j$t(b,x,C);var M=b;_.type==="constraint"&&(M=X$t(b,k)),J$t(b,A);var m,P,T,B,F=[];for(B=h.clipsegments.length-1;B>=0;B--)m=h.clipsegments[B],P=fO([],m.x,a.c2p),T=fO([],m.y,o.c2p),P.reverse(),T.reverse(),F.push(yJe(P,T,m.bicubic));var U="M"+F.join("L")+"Z";eQt(u,h.clipsegments,a,o,v,E),tQt(f,u,a,o,M,L,A,c,h,E,U),$$t(u,b,t,l,_,r,c),sC.setClipUrl(u,c._clipPathId,t)})};function J$t(e,t){var r,n,i,a,o,s,u,l,f;for(r=0;rb&&(n.max=b),n.len=n.max-n.min}function pJe(e,t,r){var n=e.getPointAtLength(t),i=e.getPointAtLength(r),a=i.x-n.x,o=i.y-n.y,s=Math.sqrt(a*a+o*o);return[a/s,o/s]}function vJe(e){var t=Math.sqrt(e[0]*e[0]+e[1]*e[1]);return[e[0]/t,e[1]/t]}function mJe(e,t){var r=Math.abs(e[0]*t[0]+e[1]*t[1]),n=Math.sqrt(1-r*r);return n/r}function eQt(e,t,r,n,i,a){var o,s,u,l,f=y1.ensureSingle(e,"g","contourbg"),c=f.selectAll("path").data(a==="fill"&&!i?[0]:[]);c.enter().append("path"),c.exit().remove();var h=[];for(l=0;l=0&&(d=P,_=b):Math.abs(h[1]-d[1])=0&&(d=P,_=b):y1.log("endpt to newendpt is not vert. or horz.",h,d,P)}if(_>=0)break;l+=M(h,d),h=d}if(_===t.edgepaths.length){y1.log("unclosed perimeter path");break}u=_,c=f.indexOf(u)===-1,c&&(u=f[0],l+=M(h,d)+"Z",h=null)}for(u=0;u{"use strict";xJe.exports={attributes:N$(),supplyDefaults:U$(),colorbar:LR(),calc:fJe(),plot:_Je(),style:CR(),moduleType:"trace",name:"contourcarpet",basePlotModule:Ah(),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}});var TJe=Ae((rTr,wJe)=>{"use strict";wJe.exports=bJe()});var hO=Ae((iTr,kJe)=>{"use strict";var cO=ei().extendFlat,lC=Zc(),AJe=jc().axisHoverFormat,{hovertemplateAttrs:iQt,templatefallbackAttrs:nQt}=Ff(),MJe=Id().dash,aQt=n3(),EJe=jT(),oQt=EJe.INCREASING.COLOR,sQt=EJe.DECREASING.COLOR,V$=lC.line;function SJe(e){return{line:{color:cO({},V$.color,{dflt:e}),width:V$.width,dash:MJe,editType:"style"},editType:"style"}}kJe.exports={xperiod:lC.xperiod,xperiod0:lC.xperiod0,xperiodalignment:lC.xperiodalignment,xhoverformat:AJe("x"),yhoverformat:AJe("y"),x:{valType:"data_array",editType:"calc+clearAxisTypes"},open:{valType:"data_array",editType:"calc"},high:{valType:"data_array",editType:"calc"},low:{valType:"data_array",editType:"calc"},close:{valType:"data_array",editType:"calc"},line:{width:cO({},V$.width,{}),dash:cO({},MJe,{}),editType:"style"},increasing:SJe(oQt),decreasing:SJe(sQt),text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:iQt({},{keys:["open","high","low","close"]}),hovertemplatefallback:nQt(),tickwidth:{valType:"number",min:0,max:.5,dflt:.3,editType:"calc"},hoverlabel:cO({},aQt.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style"}}),zorder:lC.zorder}});var G$=Ae((nTr,CJe)=>{"use strict";var lQt=$l(),uQt=ei();CJe.exports=function(t,r,n,i){var a=n("x"),o=n("open"),s=n("high"),u=n("low"),l=n("close");n("hoverlabel.split");var f=lQt.getComponentMethod("calendars","handleTraceDefaults");if(f(t,r,["x"],i),!!(o&&s&&u&&l)){var c=Math.min(o.length,s.length,u.length,l.length);return a&&(c=Math.min(c,uQt.minRowLength(a))),r._length=c,c}}});var zJe=Ae((aTr,PJe)=>{"use strict";var fQt=ei(),cQt=G$(),hQt=Pm(),dQt=hO();PJe.exports=function(t,r,n,i){function a(s,u){return fQt.coerce(t,r,dQt,s,u)}var o=cQt(t,r,a,i);if(!o){r.visible=!1;return}hQt(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),a("line.dash"),LJe(t,r,a,"increasing"),LJe(t,r,a,"decreasing"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("tickwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function LJe(e,t,r,n){r(n+".line.color"),r(n+".line.width",t.line.width),r(n+".line.dash",t.line.dash)}});var H$=Ae((oTr,RJe)=>{"use strict";var VS=ei(),dO=VS._,pO=wu(),pQt=Im(),uC=rf().BADNUM;function vQt(e,t){var r=pO.getFromId(e,t.xaxis),n=pO.getFromId(e,t.yaxis),i=yQt(e,r,t),a=t._minDiff;t._minDiff=null;var o=t._origX;t._origX=null;var s=t._xcalc;t._xcalc=null;var u=IJe(e,t,o,s,n,mQt);return t._extremes[r._id]=pO.findExtremes(r,s,{vpad:a/2}),u.length?(VS.extendFlat(u[0].t,{wHover:a/2,tickLen:i}),u):[{t:{empty:!0}}]}function mQt(e,t,r,n){return{o:e,h:t,l:r,c:n}}function IJe(e,t,r,n,i,a){for(var o=i.makeCalcdata(t,"open"),s=i.makeCalcdata(t,"high"),u=i.makeCalcdata(t,"low"),l=i.makeCalcdata(t,"close"),f=VS.isArrayOrTypedArray(t.text),c=VS.isArrayOrTypedArray(t.hovertext),h=!0,d=null,p=!!t.xperiodalignment,_=[],b=0;bd):h=L>k,d=L;var x=a(k,E,A,L);x.pos=v,x.yc=(k+L)/2,x.i=b,x.dir=h?"increasing":"decreasing",x.x=x.pos,x.y=[A,E],p&&(x.orig_p=r[b]),f&&(x.tx=t.text[b]),c&&(x.htx=t.hovertext[b]),_.push(x)}else _.push({pos:v,empty:!0})}return t._extremes[i._id]=pO.findExtremes(i,VS.concat(u,s),{padded:!0}),_.length&&(_[0].t={labels:{open:dO(e,"open:")+" ",high:dO(e,"high:")+" ",low:dO(e,"low:")+" ",close:dO(e,"close:")+" "}}),_}function yQt(e,t,r){var n=r._minDiff;if(!n){var i=e._fullData,a=[];n=1/0;var o;for(o=0;o{"use strict";var gQt=Jl(),DJe=ei();FJe.exports=function(t,r,n,i){var a=r.yaxis,o=r.xaxis,s=!!o.rangebreaks;DJe.makeTraceGroups(i,n,"trace ohlc").each(function(u){var l=gQt.select(this),f=u[0],c=f.t,h=f.trace;if(h.visible!==!0||c.empty){l.remove();return}var d=c.tickLen,p=l.selectAll("path").data(DJe.identity);p.enter().append("path"),p.exit().remove(),p.attr("d",function(_){if(_.empty)return"M0,0Z";var b=o.c2p(_.pos-d,!0),v=o.c2p(_.pos+d,!0),k=s?(b+v)/2:o.c2p(_.pos,!0),E=a.c2p(_.o,!0),A=a.c2p(_.h,!0),L=a.c2p(_.l,!0),x=a.c2p(_.c,!0);return"M"+b+","+E+"H"+k+"M"+k+","+A+"V"+L+"M"+v+","+x+"H"+k})})}});var qJe=Ae((lTr,OJe)=>{"use strict";var W$=Jl(),_Qt=Mu(),xQt=jl();OJe.exports=function(t,r,n){var i=n||W$.select(t).selectAll("g.ohlclayer").selectAll("g.trace");i.style("opacity",function(a){return a[0].trace.opacity}),i.each(function(a){var o=a[0].trace;W$.select(this).selectAll("path").each(function(s){if(!s.empty){var u=o[s.dir].line;W$.select(this).style("fill","none").call(xQt.stroke,u.color).call(_Qt.dashLine,u.dash,u.width).style("opacity",o.selectedpoints&&!s.selected?.3:1)}})})}});var X$=Ae((uTr,HJe)=>{"use strict";var j$=wu(),bQt=ei(),vO=Xc(),wQt=jl(),TQt=ei().fillText,NJe=jT(),AQt={increasing:NJe.INCREASING.SYMBOL,decreasing:NJe.DECREASING.SYMBOL};function SQt(e,t,r,n){var i=e.cd,a=i[0].trace;return a.hoverlabel.split?VJe(e,t,r,n):GJe(e,t,r,n)}function UJe(e,t,r,n){var i=e.cd,a=e.xa,o=i[0].trace,s=i[0].t,u=o.type,l=u==="ohlc"?"l":"min",f=u==="ohlc"?"h":"max",c,h,d=s.bPos||0,p=function(P){return P.pos+d-t},_=s.bdPos||s.tickLen,b=s.wHover,v=Math.min(1,_/Math.abs(a.r2c(a.range[1])-a.r2c(a.range[0])));c=e.maxHoverDistance-v,h=e.maxSpikeDistance-v;function k(P){var T=p(P);return vO.inbox(T-b,T+b,c)}function E(P){var T=P[l],B=P[f];return T===B||vO.inbox(T-r,B-r,c)}function A(P){return(k(P)+E(P))/2}var L=vO.getDistanceFunction(n,k,E,A);if(vO.getClosest(i,L,e),e.index===!1)return null;var x=i[e.index];if(x.empty)return null;var C=x.dir,M=o[C],m=M.line.color;return wQt.opacity(m)&&M.line.width?e.color=m:e.color=M.fillcolor,e.x0=a.c2p(x.pos+d-_,!0),e.x1=a.c2p(x.pos+d+_,!0),e.xLabelVal=x.orig_p!==void 0?x.orig_p:x.pos,e.spikeDistance=A(x)*h/c,e.xSpike=a.c2p(x.pos,!0),e}function VJe(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,u=[],l=UJe(e,t,r,n);if(!l)return[];var f=i[l.index],c=f.hi||o.hoverinfo||"";if(c==="none"||c==="skip")return[];for(var h=["high","open","close","low"],d={},p=0;p"+s.labels[_]+j$.hoverLabelText(a,b,o.yhoverformat)):(k=bQt.extendFlat({},l),k.y0=k.y1=v,k.yLabelVal=b,k.yLabel=s.labels[_]+j$.hoverLabelText(a,b,o.yhoverformat),k.name="",u.push(k),d[b]=k)}return u}function GJe(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,u=UJe(e,t,r,n);if(!u)return[];var l=u.index,f=i[l],c=u.index=f.i,h=f.dir;function d(A){return s.labels[A]+j$.hoverLabelText(a,o[A][c],o.yhoverformat)}var p=f.hi||o.hoverinfo||"",_=p.split("+"),b=p==="all",v=b||_.indexOf("y")!==-1,k=b||_.indexOf("text")!==-1,E=v?[d("open"),d("high"),d("low"),d("close")+" "+AQt[h]]:[];return k&&TQt(f,o,E),u.extraText=E.join("
"),u.y0=u.y1=a.c2p(f.yc,!0),[u]}HJe.exports={hoverPoints:SQt,hoverSplit:VJe,hoverOnPoints:GJe}});var Z$=Ae((fTr,WJe)=>{"use strict";WJe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,u=n[0].t.bPos||0;if(r===!1)for(s=0;s{"use strict";jJe.exports={moduleType:"trace",name:"ohlc",basePlotModule:Ah(),categories:["cartesian","svg","showLegend"],meta:{},attributes:hO(),supplyDefaults:zJe(),calc:H$().calc,plot:BJe(),style:qJe(),hoverPoints:X$().hoverPoints,selectPoints:Z$()}});var YJe=Ae((hTr,ZJe)=>{"use strict";ZJe.exports=XJe()});var K$=Ae((dTr,$Je)=>{"use strict";var Y$=ei().extendFlat,KJe=jc().axisHoverFormat,dv=hO(),GS=_E();function JJe(e){return{line:{color:Y$({},GS.line.color,{dflt:e}),width:GS.line.width,editType:"style"},fillcolor:GS.fillcolor,editType:"style"}}$Je.exports={xperiod:dv.xperiod,xperiod0:dv.xperiod0,xperiodalignment:dv.xperiodalignment,xhoverformat:KJe("x"),yhoverformat:KJe("y"),x:dv.x,open:dv.open,high:dv.high,low:dv.low,close:dv.close,line:{width:Y$({},GS.line.width,{}),editType:"style"},increasing:JJe(dv.increasing.line.color.dflt),decreasing:JJe(dv.decreasing.line.color.dflt),text:dv.text,hovertext:dv.hovertext,hovertemplate:dv.hovertemplate,hovertemplatefallback:dv.hovertemplatefallback,whiskerwidth:Y$({},GS.whiskerwidth,{dflt:0}),hoverlabel:dv.hoverlabel,zorder:GS.zorder}});var t$e=Ae((pTr,e$e)=>{"use strict";var MQt=ei(),EQt=jl(),kQt=G$(),CQt=Pm(),LQt=K$();e$e.exports=function(t,r,n,i){function a(s,u){return MQt.coerce(t,r,LQt,s,u)}var o=kQt(t,r,a,i);if(!o){r.visible=!1;return}CQt(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),QJe(t,r,a,"increasing"),QJe(t,r,a,"decreasing"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("whiskerwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function QJe(e,t,r,n){var i=r(n+".line.color");r(n+".line.width",t.line.width),r(n+".fillcolor",EQt.addOpacity(i,.5))}});var a$e=Ae((vTr,n$e)=>{"use strict";var r$e=ei(),i$e=wu(),PQt=Im(),zQt=H$().calcCommon;n$e.exports=function(e,t){var r=e._fullLayout,n=i$e.getFromId(e,t.xaxis),i=i$e.getFromId(e,t.yaxis),a=n.makeCalcdata(t,"x"),o=PQt(t,n,"x",a).vals,s=zQt(e,t,a,o,i,IQt);return s.length?(r$e.extendFlat(s[0].t,{num:r._numBoxes,dPos:r$e.distinctVals(o).minDiff/2,posLetter:"x",valLetter:"y"}),r._numBoxes++,s):[{t:{empty:!0}}]};function IQt(e,t,r,n){return{min:r,q1:Math.min(e,n),med:n,q3:Math.max(e,n),max:t}}});var s$e=Ae((mTr,o$e)=>{"use strict";o$e.exports={moduleType:"trace",name:"candlestick",basePlotModule:Ah(),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{},attributes:K$(),layoutAttributes:xE(),supplyLayoutDefaults:XI().supplyLayoutDefaults,crossTraceCalc:YI().crossTraceCalc,supplyDefaults:t$e(),calc:a$e(),plot:KI().plot,layerName:"boxlayer",style:JI().style,hoverPoints:X$().hoverPoints,selectPoints:Z$()}});var u$e=Ae((yTr,l$e)=>{"use strict";l$e.exports=s$e()});var $$=Ae((gTr,f$e)=>{"use strict";var yO=ei(),RQt=gy(),mO=yO.deg2rad,J$=yO.rad2deg;f$e.exports=function(t,r,n){switch(RQt(t,n),t._id){case"x":case"radialaxis":DQt(t,r);break;case"angularaxis":OQt(t,r);break}};function DQt(e,t){var r=t._subplot;e.setGeometry=function(){var n=e._rl[0],i=e._rl[1],a=r.innerRadius,o=(r.radius-a)/(i-n),s=a/o,u=n>i?function(l){return l<=0}:function(l){return l>=0};e.c2g=function(l){var f=e.c2l(l)-n;return(u(f)?f:0)+s},e.g2c=function(l){return e.l2c(l+n-s)},e.g2p=function(l){return l*o},e.c2p=function(l){return e.g2p(e.c2g(l))}}}function FQt(e,t){return t==="degrees"?mO(e):e}function BQt(e,t){return t==="degrees"?J$(e):e}function OQt(e,t){var r=e.type;if(r==="linear"){var n=e.d2c,i=e.c2d;e.d2c=function(a,o){return FQt(n(a),o)},e.c2d=function(a,o){return i(BQt(a,o))}}e.makeCalcdata=function(a,o){var s=a[o],u=a._length,l,f,c=function(b){return e.d2c(b,a.thetaunit)};if(s)for(l=new Array(u),f=0;f{"use strict";c$e.exports={attr:"subplot",name:"polar",axisNames:["angularaxis","radialaxis"],axisName2dataArray:{angularaxis:"theta",radialaxis:"r"},layerNames:["draglayer","plotbg","backplot","angular-grid","radial-grid","frontplot","angular-line","radial-line","angular-axis","radial-axis"],radialDragBoxSize:50,angularDragBoxSize:30,cornerLen:25,cornerHalfWidth:2,MINDRAG:8,MINZOOM:20,OFFEDGE:20}});var xO=Ae((xTr,m$e)=>{"use strict";var pw=ei(),h$e=E5().tester,Q$=pw.findIndexOfMin,p$e=pw.isAngleInsideSector,qQt=pw.angleDelta,d$e=pw.angleDist;function NQt(e,t,r,n,i){if(!p$e(t,n))return!1;var a,o;r[0]0?o:1/0},n=Q$(t,r),i=pw.mod(n+1,t.length);return[t[n],t[i]]}function _O(e){return Math.abs(e)>1e-10?e:0}function eQ(e,t,r){t=t||0,r=r||0;for(var n=e.length,i=new Array(n),a=0;a{"use strict";function y$e(e){return e<0?-1:e>0?1:0}function WS(e){var t=e[0],r=e[1];if(!isFinite(t)||!isFinite(r))return[1,0];var n=(t+1)*(t+1)+r*r;return[(t*t+r*r-1)/n,2*r/n]}function jS(e,t){var r=t[0],n=t[1];return[r*e.radius+e.cx,-n*e.radius+e.cy]}function g$e(e,t){return t*e.radius}function ZQt(e,t,r,n){var i=jS(e,WS([r,t])),a=i[0],o=i[1],s=jS(e,WS([n,t])),u=s[0],l=s[1];if(t===0)return["M"+a+","+o,"L"+u+","+l].join(" ");var f=g$e(e,1/Math.abs(t));return["M"+a+","+o,"A"+f+","+f+" 0 0,"+(t<0?1:0)+" "+u+","+l].join(" ")}function YQt(e,t,r,n){var i=g$e(e,1/(t+1)),a=jS(e,WS([t,r])),o=a[0],s=a[1],u=jS(e,WS([t,n])),l=u[0],f=u[1];if(y$e(r)!==y$e(n)){var c=jS(e,WS([t,0])),h=c[0],d=c[1];return["M"+o+","+s,"A"+i+","+i+" 0 0,"+(0{"use strict";var vw=Jl(),KQt=cd(),yw=$l(),Oc=ei(),ig=Oc.strRotate,bd=Oc.strTranslate,rQ=jl(),fC=Mu(),JQt=Cc(),pv=wu(),$Qt=gy(),QQt=$$(),eer=Tm().doAutoRange,g1=K7(),TO=xp(),x$e=Xc(),ter=Eb(),rer=oh().prepSelect,ier=oh().selectOnClick,iQ=oh().clearOutline,b$e=Am(),w$e=d5(),T$e=b5().redrawReglTraces,ner=td().MID_SHIFT,Lx=gO(),_1=xO(),AO=tQ(),bO=AO.smith,aer=AO.reactanceArc,oer=AO.resistanceArc,wO=AO.smithTransform,ser=Oc._,A$e=Oc.mod,Px=Oc.deg2rad,mw=Oc.rad2deg;function S$e(e,t,r){this.isSmith=r||!1,this.id=t,this.gd=e,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var n=e._fullLayout,i="clip"+n._uid+t;this.clipIds.forTraces=i+"-for-traces",this.clipPaths.forTraces=n._clips.append("clipPath").attr("id",this.clipIds.forTraces),this.clipPaths.forTraces.append("path"),this.framework=n["_"+(r?"smith":"polar")+"layer"].append("g").attr("class",t),this.getHole=function(a){return this.isSmith?0:a.hole},this.getSector=function(a){return this.isSmith?[0,360]:a.sector},this.getRadial=function(a){return this.isSmith?a.realaxis:a.radialaxis},this.getAngular=function(a){return this.isSmith?a.imaginaryaxis:a.angularaxis},r||(this.radialTickLayout=null,this.angularTickLayout=null)}var Vd=S$e.prototype;k$e.exports=function(t,r,n){return new S$e(t,r,n)};Vd.plot=function(e,t){for(var r=this,n=t[r.id],i=!1,a=0;ab?(v=l,k=l*b,L=(f-k)/i.h/2,E=[s[0],s[1]],A=[u[0]+L,u[1]-L]):(v=f/b,k=f,L=(l-v)/i.w/2,E=[s[0]+L,s[1]-L],A=[u[0],u[1]]),r.xLength2=v,r.yLength2=k,r.xDomain2=E,r.yDomain2=A;var x=r.xOffset2=i.l+i.w*E[0],C=r.yOffset2=i.t+i.h*(1-A[1]),M=r.radius=v/d,m=r.innerRadius=r.getHole(t)*M,P=r.cx=x-M*h[0],T=r.cy=C+M*h[3],B=r.cxx=P-x,F=r.cyy=T-C,U=a.side,G;U==="counterclockwise"?(G=U,U="top"):U==="clockwise"&&(G=U,U="bottom"),r.radialAxis=r.mockAxis(e,t,a,{_id:"x",side:U,_trueSide:G,domain:[m/i.w,M/i.w]}),r.angularAxis=r.mockAxis(e,t,o,{side:"right",domain:[0,Math.PI],autorange:!1}),r.doAutoRange(e,t),r.updateAngularAxis(e,t),r.updateRadialAxis(e,t),r.updateRadialAxisTitle(e,t),r.xaxis=r.mockCartesianAxis(e,t,{_id:"x",domain:E}),r.yaxis=r.mockCartesianAxis(e,t,{_id:"y",domain:A});var j=r.pathSubplot();r.clipPaths.forTraces.select("path").attr("d",j).attr("transform",bd(B,F)),n.frontplot.attr("transform",bd(x,C)).call(fC.setClipUrl,r._hasClipOnAxisFalse?null:r.clipIds.forTraces,r.gd),n.bg.attr("d",j).attr("transform",bd(P,T)).call(rQ.fill,t.bgcolor)};Vd.mockAxis=function(e,t,r,n){var i=Oc.extendFlat({},r,n);return QQt(i,t,e),i};Vd.mockCartesianAxis=function(e,t,r){var n=this,i=n.isSmith,a=r._id,o=Oc.extendFlat({type:"linear"},r);$Qt(o,e);var s={x:[0,2],y:[1,3]};return o.setRange=function(){var u=n.sectorBBox,l=s[a],f=n.radialAxis._rl,c=(f[1]-f[0])/(1-n.getHole(t));o.range=[u[l[0]]*c,u[l[1]]*c]},o.isPtWithinRange=a==="x"&&!i?function(u){return n.isPtInside(u)}:function(){return!0},o.setRange(),o.setScale(),o};Vd.doAutoRange=function(e,t){var r=this,n=r.gd,i=r.radialAxis,a=r.getRadial(t);eer(n,i);var o=i.range;if(a.range=o.slice(),a._input.range=o.slice(),i._rl=[i.r2l(o[0],null,"gregorian"),i.r2l(o[1],null,"gregorian")],i.minallowed!==void 0){var s=i.r2l(i.minallowed);i._rl[0]>i._rl[1]?i._rl[1]=Math.max(i._rl[1],s):i._rl[0]=Math.max(i._rl[0],s)}if(i.maxallowed!==void 0){var u=i.r2l(i.maxallowed);i._rl[0]90&&f<=270&&(c.tickangle=180);var p=d?function(M){var m=wO(r,bO([M.x,0]));return bd(m[0]-s,m[1]-u)}:function(M){return bd(c.l2p(M.x)+o,0)},_=d?function(M){return oer(r,M.x,-1/0,1/0)}:function(M){return r.pathArc(c.r2p(M.x)+o)},b=M$e(l);if(r.radialTickLayout!==b&&(i["radial-axis"].selectAll(".xtick").remove(),r.radialTickLayout=b),h){c.setScale();var v=0,k=d?(c.tickvals||[]).filter(function(M){return M>=0}).map(function(M){return pv.tickText(c,M,!0,!1)}):pv.calcTicks(c),E=d?k:pv.clipEnds(c,k),A=pv.getTickSigns(c)[2];d&&((c.ticks==="top"&&c.side==="bottom"||c.ticks==="bottom"&&c.side==="top")&&(A=-A),c.ticks==="top"&&c.side==="top"&&(v=-c.ticklen),c.ticks==="bottom"&&c.side==="bottom"&&(v=c.ticklen)),pv.drawTicks(n,c,{vals:k,layer:i["radial-axis"],path:pv.makeTickPath(c,0,A),transFn:p,crisp:!1}),pv.drawGrid(n,c,{vals:E,layer:i["radial-grid"],path:_,transFn:Oc.noop,crisp:!1}),pv.drawLabels(n,c,{vals:k,layer:i["radial-axis"],transFn:p,labelFns:pv.makeLabelFns(c,v)})}var L=r.radialAxisAngle=r.vangles?mw(E$e(Px(l.angle),r.vangles)):l.angle,x=bd(s,u),C=x+ig(-L);cC(i["radial-axis"],h&&(l.showticklabels||l.ticks),{transform:C}),cC(i["radial-grid"],h&&l.showgrid,{transform:d?"":x}),cC(i["radial-line"].select("line"),h&&l.showline,{x1:d?-a:o,y1:0,x2:a,y2:0,transform:C}).attr("stroke-width",l.linewidth).call(rQ.stroke,l.linecolor)};Vd.updateRadialAxisTitle=function(e,t,r){if(!this.isSmith){var n=this,i=n.gd,a=n.radius,o=n.cx,s=n.cy,u=n.getRadial(t),l=n.id+"title",f=0;if(u.title){var c=fC.bBox(n.layers["radial-axis"].node()).height,h=u.title.font.size,d=u.side;f=d==="top"?h:d==="counterclockwise"?-(c+h*.4):c+h*.8}var p=r!==void 0?r:n.radialAxisAngle,_=Px(p),b=Math.cos(_),v=Math.sin(_),k=o+a/2*b+f*v,E=s-a/2*v+f*b;n.layers["radial-axis-title"]=ter.draw(i,l,{propContainer:u,propName:n.id+".radialaxis.title.text",placeholder:ser(i,"Click to enter radial axis title"),attributes:{x:k,y:E,"text-anchor":"middle"},transform:{rotate:-p}})}};Vd.updateAngularAxis=function(e,t){var r=this,n=r.gd,i=r.layers,a=r.radius,o=r.innerRadius,s=r.cx,u=r.cy,l=r.getAngular(t),f=r.angularAxis,c=r.isSmith;c||(r.fillViewInitialKey("angularaxis.rotation",l.rotation),f.setGeometry(),f.setScale());var h=c?function(m){var P=wO(r,bO([0,m.x]));return Math.atan2(P[0]-s,P[1]-u)-Math.PI/2}:function(m){return f.t2g(m.x)};f.type==="linear"&&f.thetaunit==="radians"&&(f.tick0=mw(f.tick0),f.dtick=mw(f.dtick));var d=function(m){return bd(s+a*Math.cos(m),u-a*Math.sin(m))},p=c?function(m){var P=wO(r,bO([0,m.x]));return bd(P[0],P[1])}:function(m){return d(h(m))},_=c?function(m){var P=wO(r,bO([0,m.x])),T=Math.atan2(P[0]-s,P[1]-u)-Math.PI/2;return bd(P[0],P[1])+ig(-mw(T))}:function(m){var P=h(m);return d(P)+ig(-mw(P))},b=c?function(m){return aer(r,m.x,0,1/0)}:function(m){var P=h(m),T=Math.cos(P),B=Math.sin(P);return"M"+[s+o*T,u-o*B]+"L"+[s+a*T,u-a*B]},v=pv.makeLabelFns(f,0),k=v.labelStandoff,E={};E.xFn=function(m){var P=h(m);return Math.cos(P)*k},E.yFn=function(m){var P=h(m),T=Math.sin(P)>0?.2:1;return-Math.sin(P)*(k+m.fontSize*T)+Math.abs(Math.cos(P))*(m.fontSize*ner)},E.anchorFn=function(m){var P=h(m),T=Math.cos(P);return Math.abs(T)<.1?"middle":T>0?"start":"end"},E.heightFn=function(m,P,T){var B=h(m);return-.5*(1+Math.sin(B))*T};var A=M$e(l);r.angularTickLayout!==A&&(i["angular-axis"].selectAll("."+f._id+"tick").remove(),r.angularTickLayout=A);var L=c?[1/0].concat(f.tickvals||[]).map(function(m){return pv.tickText(f,m,!0,!1)}):pv.calcTicks(f);c&&(L[0].text="\u221E",L[0].fontSize*=1.75);var x;if(t.gridshape==="linear"?(x=L.map(h),Oc.angleDelta(x[0],x[1])<0&&(x=x.slice().reverse())):x=null,r.vangles=x,f.type==="category"&&(L=L.filter(function(m){return Oc.isAngleInsideSector(h(m),r.sectorInRad)})),f.visible){var C=f.ticks==="inside"?-1:1,M=(f.linewidth||1)/2;pv.drawTicks(n,f,{vals:L,layer:i["angular-axis"],path:"M"+C*M+",0h"+C*f.ticklen,transFn:_,crisp:!1}),pv.drawGrid(n,f,{vals:L,layer:i["angular-grid"],path:b,transFn:Oc.noop,crisp:!1}),pv.drawLabels(n,f,{vals:L,layer:i["angular-axis"],repositionOnUpdate:!0,transFn:p,labelFns:E})}cC(i["angular-line"].select("path"),l.showline,{d:r.pathSubplot(),transform:bd(s,u)}).attr("stroke-width",l.linewidth).call(rQ.stroke,l.linecolor)};Vd.updateFx=function(e,t){if(!this.gd._context.staticPlot){var r=!this.isSmith;r&&(this.updateAngularDrag(e),this.updateRadialDrag(e,t,0),this.updateRadialDrag(e,t,1)),this.updateHoverAndMainDrag(e)}};Vd.updateHoverAndMainDrag=function(e){var t=this,r=t.isSmith,n=t.gd,i=t.layers,a=e._zoomlayer,o=Lx.MINZOOM,s=Lx.OFFEDGE,u=t.radius,l=t.innerRadius,f=t.cx,c=t.cy,h=t.cxx,d=t.cyy,p=t.sectorInRad,_=t.vangles,b=t.radialAxis,v=_1.clampTiny,k=_1.findXYatLength,E=_1.findEnclosingVertexAngles,A=Lx.cornerHalfWidth,L=Lx.cornerLen/2,x,C,M=g1.makeDragger(i,"path","maindrag",e.dragmode===!1?"none":"crosshair");vw.select(M).attr("d",t.pathSubplot()).attr("transform",bd(f,c)),M.onmousemove=function(ce){x$e.hover(n,ce,t.id),n._fullLayout._lasthover=M,n._fullLayout._hoversubplot=t.id},M.onmouseout=function(ce){n._dragging||TO.unhover(n,ce)};var m={element:M,gd:n,subplot:t.id,plotinfo:{id:t.id,xaxis:t.xaxis,yaxis:t.yaxis},xaxes:[t.xaxis],yaxes:[t.yaxis]},P,T,B,F,U,G,j,H,N;function W(ce,Je){return Math.sqrt(ce*ce+Je*Je)}function re(ce,Je){return W(ce-h,Je-d)}function ae(ce,Je){return Math.atan2(d-Je,ce-h)}function be(ce,Je){return[ce*Math.cos(Je),ce*Math.sin(-Je)]}function ze(ce,Je){if(ce===0)return t.pathSector(2*A);var nt=L/ce,gt=Je-nt,Nt=Je+nt,at=Math.max(0,Math.min(ce,u)),Ke=at-A,Ct=at+A;return"M"+be(Ke,gt)+"A"+[Ke,Ke]+" 0,0,0 "+be(Ke,Nt)+"L"+be(Ct,Nt)+"A"+[Ct,Ct]+" 0,0,1 "+be(Ct,gt)+"Z"}function Ce(ce,Je,nt){if(ce===0)return t.pathSector(2*A);var gt=be(ce,Je),Nt=be(ce,nt),at=v((gt[0]+Nt[0])/2),Ke=v((gt[1]+Nt[1])/2),Ct,wt;if(at&&Ke){var St=Ke/at,Dt=-1/St,Zt=k(A,St,at,Ke);Ct=k(L,Dt,Zt[0][0],Zt[0][1]),wt=k(L,Dt,Zt[1][0],Zt[1][1])}else{var Et,Te;Ke?(Et=L,Te=A):(Et=A,Te=L),Ct=[[at-Et,Ke-Te],[at+Et,Ke-Te]],wt=[[at-Et,Ke+Te],[at+Et,Ke+Te]]}return"M"+Ct.join("L")+"L"+wt.reverse().join("L")+"Z"}function de(){B=null,F=null,U=t.pathSubplot(),G=!1;var ce=n._fullLayout[t.id];j=KQt(ce.bgcolor).getLuminance(),H=g1.makeZoombox(a,j,f,c,U),H.attr("fill-rule","evenodd"),N=g1.makeCorners(a,f,c),iQ(n)}function te(ce,Je){return Je=Math.max(Math.min(Je,u),l),ceo?(ce-1&&ce===1&&ier(Je,n,[t.xaxis],[t.yaxis],t.id,m),nt.indexOf("event")>-1&&x$e.click(n,Je,t.id)}m.prepFn=function(ce,Je,nt){var gt=n._fullLayout.dragmode,Nt=M.getBoundingClientRect();n._fullLayout._calcInverseTransform(n);var at=n._fullLayout._invTransform;x=n._fullLayout._invScaleX,C=n._fullLayout._invScaleY;var Ke=Oc.apply3DTransform(at)(Je-Nt.left,nt-Nt.top);if(P=Ke[0],T=Ke[1],_){var Ct=_1.findPolygonOffset(u,p[0],p[1],_);P+=h+Ct[0],T+=d+Ct[1]}switch(gt){case"zoom":m.clickFn=qe,r||(_?m.moveFn=Ue:m.moveFn=Ee,m.doneFn=De,de(ce,Je,nt));break;case"select":case"lasso":rer(ce,Je,nt,m,gt);break}},TO.init(m)};Vd.updateRadialDrag=function(e,t,r){var n=this,i=n.gd,a=n.layers,o=n.radius,s=n.innerRadius,u=n.cx,l=n.cy,f=n.radialAxis,c=Lx.radialDragBoxSize,h=c/2;if(!f.visible)return;var d=Px(n.radialAxisAngle),p=f._rl,_=p[0],b=p[1],v=p[r],k=.75*(p[1]-p[0])/(1-n.getHole(t))/o,E,A,L;r?(E=u+(o+h)*Math.cos(d),A=l-(o+h)*Math.sin(d),L="radialdrag"):(E=u+(s-h)*Math.cos(d),A=l-(s-h)*Math.sin(d),L="radialdrag-inner");var x=g1.makeRectDragger(a,L,"crosshair",-h,-h,c,c),C={element:x,gd:i};e.dragmode===!1&&(C.dragmode=!1),cC(vw.select(x),f.visible&&s0!=(r?P>_:P=90||i>90&&a>=450?d=1:s<=0&&l<=0?d=0:d=Math.max(s,l),i<=180&&a>=180||i>180&&a>=540?f=-1:o>=0&&u>=0?f=0:f=Math.min(o,u),i<=270&&a>=270||i>270&&a>=630?c=-1:s>=0&&l>=0?c=0:c=Math.min(s,l),a>=360?h=1:o<=0&&u<=0?h=0:h=Math.max(o,u),[f,c,h,d]}function E$e(e,t){var r=function(i){return Oc.angleDist(e,i)},n=Oc.findIndexOfMin(t,r);return t[n]}function cC(e,t,r){return t?(e.attr("display",null),e.attr(r)):e&&e.attr("display","none"),e}});var aQ=Ae((TTr,R$e)=>{"use strict";var uer=Fh(),Yu=Dd(),fer=zc().attributes,f0=ei().extendFlat,C$e=Sc().overrideAll,L$e=C$e({color:Yu.color,showline:f0({},Yu.showline,{dflt:!0}),linecolor:Yu.linecolor,linewidth:Yu.linewidth,showgrid:f0({},Yu.showgrid,{dflt:!0}),gridcolor:Yu.gridcolor,gridwidth:Yu.gridwidth,griddash:Yu.griddash},"plot","from-root"),P$e=C$e({tickmode:Yu.minor.tickmode,nticks:Yu.nticks,tick0:Yu.tick0,dtick:Yu.dtick,tickvals:Yu.tickvals,ticktext:Yu.ticktext,ticks:Yu.ticks,ticklen:Yu.ticklen,tickwidth:Yu.tickwidth,tickcolor:Yu.tickcolor,ticklabelstep:Yu.ticklabelstep,showticklabels:Yu.showticklabels,labelalias:Yu.labelalias,minorloglabels:Yu.minorloglabels,showtickprefix:Yu.showtickprefix,tickprefix:Yu.tickprefix,showticksuffix:Yu.showticksuffix,ticksuffix:Yu.ticksuffix,showexponent:Yu.showexponent,exponentformat:Yu.exponentformat,minexponent:Yu.minexponent,separatethousands:Yu.separatethousands,tickfont:Yu.tickfont,tickangle:Yu.tickangle,tickformat:Yu.tickformat,tickformatstops:Yu.tickformatstops,layer:Yu.layer},"plot","from-root"),z$e={visible:f0({},Yu.visible,{dflt:!0}),type:f0({},Yu.type,{values:["-","linear","log","date","category"]}),autotypenumbers:Yu.autotypenumbers,autorangeoptions:{minallowed:Yu.autorangeoptions.minallowed,maxallowed:Yu.autorangeoptions.maxallowed,clipmin:Yu.autorangeoptions.clipmin,clipmax:Yu.autorangeoptions.clipmax,include:Yu.autorangeoptions.include,editType:"plot"},autorange:f0({},Yu.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc"},minallowed:f0({},Yu.minallowed,{editType:"plot"}),maxallowed:f0({},Yu.maxallowed,{editType:"plot"}),range:f0({},Yu.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:Yu.categoryorder,categoryarray:Yu.categoryarray,angle:{valType:"angle",editType:"plot"},autotickangles:Yu.autotickangles,side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot"},title:{text:f0({},Yu.title.text,{editType:"plot",dflt:""}),font:f0({},Yu.title.font,{editType:"plot"}),editType:"plot"},hoverformat:Yu.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};f0(z$e,L$e,P$e);var I$e={visible:f0({},Yu.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:Yu.autotypenumbers,categoryorder:Yu.categoryorder,categoryarray:Yu.categoryarray,thetaunit:{valType:"enumerated",values:["radians","degrees"],dflt:"degrees",editType:"calc"},period:{valType:"number",editType:"calc",min:0},direction:{valType:"enumerated",values:["counterclockwise","clockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",editType:"calc"},hoverformat:Yu.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};f0(I$e,L$e,P$e);R$e.exports={domain:fer({name:"polar",editType:"plot"}),sector:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],dflt:[0,360],editType:"plot"},hole:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},bgcolor:{valType:"color",editType:"plot",dflt:uer.background},radialaxis:z$e,angularaxis:I$e,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var O$e=Ae((ATr,B$e)=>{"use strict";var SO=ei(),cer=jl(),her=Lf(),der=k_(),per=Rd().getSubplotData,ver=bb(),mer=S3(),yer=e_(),ger=t_(),_er=aI(),xer=eE(),ber=kN(),wer=z3(),F$e=aQ(),Ter=$$(),MO=gO(),D$e=MO.axisNames;function Aer(e,t,r,n){var i=r("bgcolor");n.bgColor=cer.combine(i,n.paper_bgcolor);var a=r("sector");r("hole");var o=per(n.fullData,MO.name,n.id),s=n.layoutOut,u;function l(H,N){return r(u+"."+H,N)}for(var f=0;f{"use strict";var Mer=Rd().getSubplotCalcData,Eer=ei().counterRegex,ker=nQ(),N$e=gO(),U$e=N$e.attr,gw=N$e.name,q$e=Eer(gw),V$e={};V$e[U$e]={valType:"subplotid",dflt:gw,editType:"calc"};function Cer(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[gw],i=0;i{"use strict";var{hovertemplateAttrs:Per,texttemplateAttrs:zer,templatefallbackAttrs:H$e}=Ff(),kO=Su().extendFlat,Ier=km(),c0=Zc(),Rer=Gf(),XS=c0.line;W$e.exports={mode:c0.mode,r:{valType:"data_array",editType:"calc+clearAxisTypes"},theta:{valType:"data_array",editType:"calc+clearAxisTypes"},r0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dr:{valType:"number",dflt:1,editType:"calc"},theta0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dtheta:{valType:"number",editType:"calc"},thetaunit:{valType:"enumerated",values:["radians","degrees","gradians"],dflt:"degrees",editType:"calc+clearAxisTypes"},text:c0.text,texttemplate:zer({editType:"plot"},{keys:["r","theta","text"]}),texttemplatefallback:H$e({editType:"plot"}),hovertext:c0.hovertext,line:{color:XS.color,width:XS.width,dash:XS.dash,backoff:XS.backoff,shape:kO({},XS.shape,{values:["linear","spline"]}),smoothing:XS.smoothing,editType:"calc"},connectgaps:c0.connectgaps,marker:c0.marker,cliponaxis:kO({},c0.cliponaxis,{dflt:!1}),textposition:c0.textposition,textfont:c0.textfont,fill:kO({},c0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:Ier(),hoverinfo:kO({},Rer.hoverinfo,{flags:["r","theta","text","name"]}),hoveron:c0.hoveron,hovertemplate:Per(),hovertemplatefallback:H$e(),selected:c0.selected,unselected:c0.unselected}});var LO=Ae((ETr,Z$e)=>{"use strict";var CO=ei(),ZS=lc(),Der=$v(),Fer=I0(),j$e=eT(),Ber=R0(),Oer=zm(),qer=Sy().PTS_LINESONLY,Ner=hC();function Uer(e,t,r,n){function i(s,u){return CO.coerce(e,t,Ner,s,u)}var a=X$e(e,t,n,i);if(!a){t.visible=!1;return}i("thetaunit"),i("mode",a{"use strict";var Ver=ei(),Y$e=wu();K$e.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o,s;a?(o=a.radialAxis,s=a.angularAxis):(a=n[r.subplot],o=a.radialaxis,s=a.angularaxis);var u=o.c2l(t.r);i.rLabel=Y$e.tickText(o,u,!0).text;var l=s.thetaunit==="degrees"?Ver.rad2deg(t.theta):t.theta;return i.thetaLabel=Y$e.tickText(s,l,!0).text,i}});var Q$e=Ae((CTr,$$e)=>{"use strict";var J$e=ku(),Ger=rf().BADNUM,Her=wu(),Wer=D0(),jer=ky(),Xer=F0(),Zer=B0().calcMarkerSize;$$e.exports=function(t,r){for(var n=t._fullLayout,i=r.subplot,a=n[i].radialaxis,o=n[i].angularaxis,s=a.makeCalcdata(r,"r"),u=o.makeCalcdata(r,"theta"),l=r._length,f=new Array(l),c=0;c{"use strict";var Yer=oT(),eQe=rf().BADNUM;tQe.exports=function(t,r,n){for(var i=r.layers.frontplot.select("g.scatterlayer"),a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},u=r.radialAxis,l=r.angularAxis,f=0;f{"use strict";var Ker=fT();function Jer(e,t,r,n){var i=Ker(e,t,r,n);if(!(!i||i[0].index===!1)){var a=i[0];if(a.index===void 0)return i;var o=e.subplot,s=a.cd[a.index],u=a.trace;if(o.isPtInside(s))return a.xLabelVal=void 0,a.yLabelVal=void 0,iQe(s,u,o,a),a.hovertemplate=u.hovertemplate,i}}function iQe(e,t,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle="r",a._hovertitle="\u03B8";var o={};o[t.subplot]={_subplot:r};var s=t._module.formatLabels(e,t,o);n.rLabel=s.rLabel,n.thetaLabel=s.thetaLabel;var u=e.hi||t.hoverinfo,l=[];function f(h,d){l.push(h._hovertitle+": "+d)}if(!t.hovertemplate){var c=u.split("+");c.indexOf("all")!==-1&&(c=["r","theta","text"]),c.indexOf("r")!==-1&&f(i,n.rLabel),c.indexOf("theta")!==-1&&f(a,n.thetaLabel),c.indexOf("text")!==-1&&n.text&&(l.push(n.text),delete n.text),n.extraText=l.join("
")}}nQe.exports={hoverPoints:Jer,makeHoverPointText:iQe}});var oQe=Ae((zTr,aQe)=>{"use strict";aQe.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:EO(),categories:["polar","symbols","showLegend","scatter-like"],attributes:hC(),supplyDefaults:LO().supplyDefaults,colorbar:ep(),formatLabels:PO(),calc:Q$e(),plot:rQe(),style:ov().style,styleOnSelect:ov().styleOnSelect,hoverPoints:zO().hoverPoints,selectPoints:cT(),meta:{}}});var lQe=Ae((ITr,sQe)=>{"use strict";sQe.exports=oQe()});var oQ=Ae((FTr,fQe)=>{"use strict";var uQe=hC(),{cliponaxis:RTr,hoveron:DTr}=uQe,$er=xee(uQe,["cliponaxis","hoveron"]),{connectgaps:Qer,line:{color:etr,dash:ttr,width:rtr},fill:itr,fillcolor:ntr,marker:atr,textfont:otr,textposition:str}=lk();fQe.exports=O1(ym({},$er),{connectgaps:Qer,fill:itr,fillcolor:ntr,line:{color:etr,dash:ttr,editType:"calc",width:rtr},marker:atr,textfont:otr,textposition:str})});var dQe=Ae((OTr,hQe)=>{"use strict";var cQe=ei(),sQ=lc(),ltr=LO().handleRThetaDefaults,utr=$v(),ftr=I0(),ctr=R0(),htr=zm(),dtr=Sy().PTS_LINESONLY,ptr=oQ();hQe.exports=function(t,r,n,i){function a(s,u){return cQe.coerce(t,r,ptr,s,u)}var o=ltr(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("mode",o{"use strict";var vtr=PO();pQe.exports=function(t,r,n){var i=t.i;return"r"in t||(t.r=r._r[i]),"theta"in t||(t.theta=r._theta[i]),vtr(t,r,n)}});var yQe=Ae((NTr,mQe)=>{"use strict";var mtr=D0(),ytr=B0().calcMarkerSize,gtr=K2(),_tr=wu(),xtr=ox().TOO_MANY_POINTS;mQe.exports=function(t,r){var n=t._fullLayout,i=r.subplot,a=n[i].radialaxis,o=n[i].angularaxis,s=r._r=a.makeCalcdata(r,"r"),u=r._theta=o.makeCalcdata(r,"theta"),l=r._length,f={};l{"use strict";var btr=NF(),wtr=zO().makeHoverPointText;function Ttr(e,t,r,n){var i=e.cd,a=i[0].t,o=a.r,s=a.theta,u=btr.hoverPoints(e,t,r,n);if(!(!u||u[0].index===!1)){var l=u[0];if(l.index===void 0)return u;var f=e.subplot,c=l.cd[l.index],h=l.trace;if(c.r=o[l.index],c.theta=s[l.index],!!f.isPtInside(c))return l.xLabelVal=void 0,l.yLabelVal=void 0,wtr(c,h,f,l),u}}gQe.exports={hoverPoints:Ttr}});var bQe=Ae((VTr,xQe)=>{"use strict";xQe.exports={moduleType:"trace",name:"scatterpolargl",basePlotModule:EO(),categories:["gl","regl","polar","symbols","showLegend","scatter-like"],attributes:oQ(),supplyDefaults:dQe(),colorbar:ep(),formatLabels:vQe(),calc:yQe(),hoverPoints:_Qe().hoverPoints,selectPoints:gY(),meta:{}}});var wQe=Ae((GTr,lQ)=>{"use strict";var Atr=GF(),Str=ku(),Mtr=wK(),Etr=vY(),IO=K2(),RO=ei(),ktr=ox().TOO_MANY_POINTS,Ctr={};lQ.exports=function(t,r,n){if(n.length){var i=r.radialAxis,a=r.angularAxis,o=Etr(t,r);return n.forEach(function(s){if(!(!s||!s[0]||!s[0].trace)){var u=s[0],l=u.trace,f=u.t,c=l._length,h=f.r,d=f.theta,p=f.opts,_,b=h.slice(),v=d.slice();for(_=0;_=ktr&&(p.marker.cluster=f.tree),p.marker&&(p.markerSel.positions=p.markerUnsel.positions=p.marker.positions=k),p.line&&k.length>1&&RO.extendFlat(p.line,IO.linePositions(t,l,k)),p.text&&(RO.extendFlat(p.text,{positions:k},IO.textPosition(t,l,p.text,p.marker)),RO.extendFlat(p.textSel,{positions:k},IO.textPosition(t,l,p.text,p.markerSel)),RO.extendFlat(p.textUnsel,{positions:k},IO.textPosition(t,l,p.text,p.markerUnsel))),p.fill&&!o.fill2d&&(o.fill2d=!0),p.marker&&!o.scatter2d&&(o.scatter2d=!0),p.line&&!o.line2d&&(o.line2d=!0),p.text&&!o.glText&&(o.glText=!0),o.lineOptions.push(p.line),o.fillOptions.push(p.fill),o.markerOptions.push(p.marker),o.markerSelectedOptions.push(p.markerSel),o.markerUnselectedOptions.push(p.markerUnsel),o.textOptions.push(p.text),o.textSelectedOptions.push(p.textSel),o.textUnselectedOptions.push(p.textUnsel),o.selectBatch.push([]),o.unselectBatch.push([]),f.x=E,f.y=A,f.rawx=E,f.rawy=A,f.r=h,f.theta=d,f.positions=k,f._scene=o,f.index=o.count,o.count++}}),Mtr(t,r,n)}};lQ.exports.reglPrecompiled=Ctr});var AQe=Ae((HTr,TQe)=>{"use strict";var Ltr=M8(),Ptr=E8(),ztr=k8(),Itr=C8(),Rtr=L8(),Dtr=P8(),Ftr=z8(),Btr=I8(),Otr=R8(),qtr=D8();TQe.exports={"3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b":Ltr,cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81:Ptr,"8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623":ztr,fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7:Itr,db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d:Rtr,"49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210":Dtr,dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5:Ftr,bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019:Btr,"6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923":Otr,"8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034":qtr}});var MQe=Ae((WTr,SQe)=>{"use strict";var uQ=wQe(),Ntr=AQe(),Utr=TK();Object.assign(uQ.reglPrecompiled,Ntr);Object.assign(uQ.reglPrecompiled,Utr);SQe.exports=uQ});var CQe=Ae((jTr,kQe)=>{"use strict";var EQe=bQe();EQe.plot=MQe();kQe.exports=EQe});var fQ=Ae((XTr,LQe)=>{"use strict";var{hovertemplateAttrs:Vtr,templatefallbackAttrs:Gtr}=Ff(),YS=Su().extendFlat,zx=hC(),Ix=Ly();LQe.exports={r:zx.r,theta:zx.theta,r0:zx.r0,dr:zx.dr,theta0:zx.theta0,dtheta:zx.dtheta,thetaunit:zx.thetaunit,base:YS({},Ix.base,{}),offset:YS({},Ix.offset,{}),width:YS({},Ix.width,{}),text:YS({},Ix.text,{}),hovertext:YS({},Ix.hovertext,{}),marker:Htr(),hoverinfo:zx.hoverinfo,hovertemplate:Vtr(),hovertemplatefallback:Gtr(),selected:Ix.selected,unselected:Ix.unselected};function Htr(){var e=YS({},Ix.marker);return delete e.cornerradius,e}});var cQ=Ae((ZTr,PQe)=>{"use strict";PQe.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}});var RQe=Ae((YTr,IQe)=>{"use strict";var zQe=ei(),Wtr=LO().handleRThetaDefaults,jtr=UI(),Xtr=fQ();IQe.exports=function(t,r,n,i){function a(s,u){return zQe.coerce(t,r,Xtr,s,u)}var o=Wtr(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("base"),a("offset"),a("width"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),jtr(t,r,a,n,i),zQe.coerceSelectionMarkerOpacity(r,a)}});var FQe=Ae((KTr,DQe)=>{"use strict";var Ztr=ei(),Ytr=cQ();DQe.exports=function(e,t,r){var n={},i;function a(u,l){return Ztr.coerce(e[i]||{},t[i],Ytr,u,l)}for(var o=0;o{"use strict";var BQe=yp().hasColorscale,OQe=gp(),Ktr=ei().isArrayOrTypedArray,Jtr=vE(),$tr=Wb().setGroupPositions,Qtr=F0(),err=$l().traceIs,trr=ei().extendFlat;function rrr(e,t){for(var r=e._fullLayout,n=t.subplot,i=r[n].radialaxis,a=r[n].angularaxis,o=i.makeCalcdata(t,"r"),s=a.makeCalcdata(t,"theta"),u=t._length,l=new Array(u),f=o,c=s,h=0;h{"use strict";var NQe=Jl(),DO=ku(),KS=ei(),nrr=Mu(),dQ=xO();UQe.exports=function(t,r,n){var i=t._context.staticPlot,a=r.xaxis,o=r.yaxis,s=r.radialAxis,u=r.angularAxis,l=arr(r),f=r.layers.frontplot.select("g.barlayer");KS.makeTraceGroups(f,n,"trace bars").each(function(){var c=NQe.select(this),h=KS.ensureSingle(c,"g","points"),d=h.selectAll("g.point").data(KS.identity);d.enter().append("g").style("vector-effect",i?"none":"non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),d.exit().remove(),d.each(function(p){var _=NQe.select(this),b=p.rp0=s.c2p(p.s0),v=p.rp1=s.c2p(p.s1),k=p.thetag0=u.c2g(p.p0),E=p.thetag1=u.c2g(p.p1),A;if(!DO(b)||!DO(v)||!DO(k)||!DO(E)||b===v||k===E)A="M0,0Z";else{var L=s.c2g(p.s1),x=(k+E)/2;p.ct=[a.c2p(L*Math.cos(x)),o.c2p(L*Math.sin(x))],A=l(b,v,k,E)}KS.ensureSingle(_,"path").attr("d",A)}),nrr.setClipUrl(c,r._hasClipOnAxisFalse?r.clipIds.forTraces:null,t)})};function arr(e){var t=e.cxx,r=e.cyy;return e.vangles?function(n,i,a,o){var s,u;KS.angleDelta(a,o)>0?(s=a,u=o):(s=o,u=a);var l=dQ.findEnclosingVertexAngles(s,e.vangles)[0],f=dQ.findEnclosingVertexAngles(u,e.vangles)[1],c=[l,(s+u)/2,f];return dQ.pathPolygonAnnulus(n,i,s,u,c,t,r)}:function(n,i,a,o){return KS.pathAnnulus(n,i,a,o,t,r)}}});var HQe=Ae((QTr,GQe)=>{"use strict";var orr=Xc(),pQ=ei(),srr=MT().getTraceColor,lrr=pQ.fillText,urr=zO().makeHoverPointText,frr=xO().isPtInsidePolygon;GQe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.subplot,s=o.radialAxis,u=o.angularAxis,l=o.vangles,f=l?frr:pQ.isPtInsideSector,c=t.maxHoverDistance,h=u._period||2*Math.PI,d=Math.abs(s.g2p(Math.sqrt(r*r+n*n))),p=Math.atan2(n,r);s.range[0]>s.range[1]&&(p+=Math.PI);var _=function(E){return f(d,p,[E.rp0,E.rp1],[E.thetag0,E.thetag1],l)?c+Math.min(1,Math.abs(E.thetag1-E.thetag0)/h)-1+(E.rp1-d)/(E.rp1-E.rp0)-1:1/0};if(orr.getClosest(i,_,t),t.index!==!1){var b=t.index,v=i[b];t.x0=t.x1=v.ct[0],t.y0=t.y1=v.ct[1];var k=pQ.extendFlat({},v,{r:v.s,theta:v.p});return lrr(v,a,t),urr(k,a,o,t),t.hovertemplate=a.hovertemplate,t.color=srr(a,v),t.xLabelVal=t.yLabelVal=void 0,v.s<0&&(t.idealAlign="left"),[t]}}});var jQe=Ae((eAr,WQe)=>{"use strict";WQe.exports={moduleType:"trace",name:"barpolar",basePlotModule:EO(),categories:["polar","bar","showLegend"],attributes:fQ(),layoutAttributes:cQ(),supplyDefaults:RQe(),supplyLayoutDefaults:FQe(),calc:hQ().calc,crossTraceCalc:hQ().crossTraceCalc,plot:VQe(),colorbar:ep(),formatLabels:PO(),style:N0().style,styleOnSelect:N0().styleOnSelect,hoverPoints:HQe(),selectPoints:ET(),meta:{}}});var ZQe=Ae((tAr,XQe)=>{"use strict";XQe.exports=jQe()});var vQ=Ae((rAr,YQe)=>{"use strict";YQe.exports={attr:"subplot",name:"smith",axisNames:["realaxis","imaginaryaxis"],axisName2dataArray:{imaginaryaxis:"imag",realaxis:"real"}}});var mQ=Ae((iAr,QQe)=>{"use strict";var crr=Fh(),uh=Dd(),hrr=zc().attributes,Rx=ei().extendFlat,KQe=Sc().overrideAll,JQe=KQe({color:uh.color,showline:Rx({},uh.showline,{dflt:!0}),linecolor:uh.linecolor,linewidth:uh.linewidth,showgrid:Rx({},uh.showgrid,{dflt:!0}),gridcolor:uh.gridcolor,gridwidth:uh.gridwidth,griddash:uh.griddash},"plot","from-root"),$Qe=KQe({ticklen:uh.ticklen,tickwidth:Rx({},uh.tickwidth,{dflt:2}),tickcolor:uh.tickcolor,showticklabels:uh.showticklabels,labelalias:uh.labelalias,showtickprefix:uh.showtickprefix,tickprefix:uh.tickprefix,showticksuffix:uh.showticksuffix,ticksuffix:uh.ticksuffix,tickfont:uh.tickfont,tickformat:uh.tickformat,hoverformat:uh.hoverformat,layer:uh.layer},"plot","from-root"),drr=Rx({visible:Rx({},uh.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:"data_array",editType:"plot"},tickangle:Rx({},uh.tickangle,{dflt:90}),ticks:{valType:"enumerated",values:["top","bottom",""],editType:"ticks"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},editType:"calc"},JQe,$Qe),prr=Rx({visible:Rx({},uh.visible,{dflt:!0}),tickvals:{valType:"data_array",editType:"plot"},ticks:uh.ticks,editType:"calc"},JQe,$Qe);QQe.exports={domain:hrr({name:"smith",editType:"plot"}),bgcolor:{valType:"color",editType:"plot",dflt:crr.background},realaxis:drr,imaginaryaxis:prr,editType:"calc"}});var ret=Ae((nAr,tet)=>{"use strict";var JS=ei(),vrr=jl(),mrr=Lf(),yrr=k_(),grr=Rd().getSubplotData,_rr=t_(),xrr=e_(),brr=eE(),wrr=gy(),$S=mQ(),yQ=vQ(),eet=yQ.axisNames,Trr=Srr(function(e){return JS.isTypedArray(e)&&(e=Array.from(e)),e.slice().reverse().map(function(t){return-t}).concat([0]).concat(e)},String);function Arr(e,t,r,n){var i=r("bgcolor");n.bgColor=vrr.combine(i,n.paper_bgcolor);var a=grr(n.fullData,yQ.name,n.id),o=n.layoutOut,s;function u(L,x){return r(s+"."+L,x)}for(var l=0;l{"use strict";var Mrr=Rd().getSubplotCalcData,Err=ei().counterRegex,krr=nQ(),net=vQ(),aet=net.attr,_w=net.name,iet=Err(_w),oet={};oet[aet]={valType:"subplotid",dflt:_w,editType:"calc"};function Crr(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[_w],i=0;i{"use strict";var{hovertemplateAttrs:Prr,texttemplateAttrs:zrr,templatefallbackAttrs:fet}=Ff(),FO=Su().extendFlat,Irr=km(),h0=Zc(),Rrr=Gf(),QS=h0.line;cet.exports={mode:h0.mode,real:{valType:"data_array",editType:"calc+clearAxisTypes"},imag:{valType:"data_array",editType:"calc+clearAxisTypes"},text:h0.text,texttemplate:zrr({editType:"plot"},{keys:["real","imag","text"]}),texttemplatefallback:fet({editType:"plot"}),hovertext:h0.hovertext,line:{color:QS.color,width:QS.width,dash:QS.dash,backoff:QS.backoff,shape:FO({},QS.shape,{values:["linear","spline"]}),smoothing:QS.smoothing,editType:"calc"},connectgaps:h0.connectgaps,marker:h0.marker,cliponaxis:FO({},h0.cliponaxis,{dflt:!1}),textposition:h0.textposition,textfont:h0.textfont,fill:FO({},h0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:Irr(),hoverinfo:FO({},Rrr.hoverinfo,{flags:["real","imag","text","name"]}),hoveron:h0.hoveron,hovertemplate:Prr(),hovertemplatefallback:fet(),selected:h0.selected,unselected:h0.unselected}});var pet=Ae((sAr,det)=>{"use strict";var BO=ei(),eM=lc(),Drr=$v(),Frr=I0(),het=eT(),Brr=R0(),Orr=zm(),qrr=Sy().PTS_LINESONLY,Nrr=gQ();det.exports=function(t,r,n,i){function a(u,l){return BO.coerce(t,r,Nrr,u,l)}var o=Urr(t,r,i,a);if(!o){r.visible=!1;return}a("mode",o{"use strict";var vet=wu();met.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.realLabel=vet.tickText(a.radialAxis,t.real,!0).text,i.imagLabel=vet.tickText(a.angularAxis,t.imag,!0).text,i}});var xet=Ae((uAr,_et)=>{"use strict";var get=ku(),Vrr=rf().BADNUM,Grr=D0(),Hrr=ky(),Wrr=F0(),jrr=B0().calcMarkerSize;_et.exports=function(t,r){for(var n=t._fullLayout,i=r.subplot,a=n[i].realaxis,o=n[i].imaginaryaxis,s=a.makeCalcdata(r,"real"),u=o.makeCalcdata(r,"imag"),l=r._length,f=new Array(l),c=0;c{"use strict";var Xrr=oT(),bet=rf().BADNUM,Zrr=tQ(),Yrr=Zrr.smith;wet.exports=function(t,r,n){for(var i=r.layers.frontplot.select("g.scatterlayer"),a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},u=0;u{"use strict";var Krr=fT();function Jrr(e,t,r,n){var i=Krr(e,t,r,n);if(!(!i||i[0].index===!1)){var a=i[0];if(a.index===void 0)return i;var o=e.subplot,s=a.cd[a.index],u=a.trace;if(o.isPtInside(s))return a.xLabelVal=void 0,a.yLabelVal=void 0,Aet(s,u,o,a),a.hovertemplate=u.hovertemplate,i}}function Aet(e,t,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle="real",a._hovertitle="imag";var o={};o[t.subplot]={_subplot:r};var s=t._module.formatLabels(e,t,o);n.realLabel=s.realLabel,n.imagLabel=s.imagLabel;var u=e.hi||t.hoverinfo,l=[];function f(h,d){l.push(h._hovertitle+": "+d)}if(!t.hovertemplate){var c=u.split("+");c.indexOf("all")!==-1&&(c=["real","imag","text"]),c.indexOf("real")!==-1&&f(i,n.realLabel),c.indexOf("imag")!==-1&&f(a,n.imagLabel),c.indexOf("text")!==-1&&n.text&&(l.push(n.text),delete n.text),n.extraText=l.join("
")}}Met.exports={hoverPoints:Jrr,makeHoverPointText:Aet}});var Cet=Ae((hAr,ket)=>{"use strict";ket.exports={moduleType:"trace",name:"scattersmith",basePlotModule:uet(),categories:["smith","symbols","showLegend","scatter-like"],attributes:gQ(),supplyDefaults:pet(),colorbar:ep(),formatLabels:yet(),calc:xet(),plot:Tet(),style:ov().style,styleOnSelect:ov().styleOnSelect,hoverPoints:Eet().hoverPoints,selectPoints:cT(),meta:{}}});var Pet=Ae((dAr,Let)=>{"use strict";Let.exports=Cet()});var Lp=Ae((pAr,Iet)=>{var qO=Gh();function zet(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}qO(zet.prototype,{instance:function(e,t){e=(e||"gregorian").toLowerCase(),t=t||"";var r=this._localCals[e+"-"+t];if(!r&&this.calendars[e]&&(r=new this.calendars[e](t),this._localCals[e+"-"+t]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return r},newDate:function(e,t,r,n,i){return n=(e!=null&&e.year?e.calendar():typeof n=="string"?this.instance(n,i):n)||this.instance(),n.newDate(e,t,r)},substituteDigits:function(e){return function(t){return(t+"").replace(/[0-9]/g,function(r){return e[r]})}},substituteChineseDigits:function(e,t){return function(r){for(var n="",i=0;r>0;){var a=r%10;n=(a===0?"":e[a]+t[i])+n,i++,r=Math.floor(r/10)}return n.indexOf(e[1]+t[1])===0&&(n=n.substr(1)),n||e[0]}}});function _Q(e,t,r,n){if(this._calendar=e,this._year=t,this._month=r,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(wf.local.invalidDate||wf.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function OO(e,t){return e=""+e,"000000".substring(0,t-e.length)+e}qO(_Q.prototype,{newDate:function(e,t,r){return this._calendar.newDate(e==null?this:e,t,r)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,t,r){if(!this._calendar.isValid(e,t,r))throw(wf.local.invalidDate||wf.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=t,this._day=r,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,t){return this._calendar.add(this,e,t)},set:function(e,t){return this._calendar.set(this,e,t)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(wf.local.differentCalendars||wf.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var t=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return t===0?0:t<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+OO(Math.abs(this.year()),4)+"-"+OO(this.month(),2)+"-"+OO(this.day(),2)}});function xQ(){this.shortYearCutoff="+10"}qO(xQ.prototype,{_validateLevel:0,newDate:function(e,t,r){return e==null?this.today():(e.year&&(this._validate(e,t,r,wf.local.invalidDate||wf.regionalOptions[""].invalidDate),r=e.day(),t=e.month(),e=e.year()),new _Q(this,e,t,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var t=this._validate(e,this.minMonth,this.minDay,wf.local.invalidYear||wf.regionalOptions[""].invalidYear);return t.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,wf.local.invalidYear||wf.regionalOptions[""].invalidYear);return(t.year()<0?"-":"")+OO(Math.abs(t.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,wf.local.invalidYear||wf.regionalOptions[""].invalidYear),12},monthOfYear:function(e,t){var r=this._validate(e,t,this.minDay,wf.local.invalidMonth||wf.regionalOptions[""].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(e,t){var r=(t+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,r,this.minDay,wf.local.invalidMonth||wf.regionalOptions[""].invalidMonth),r},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,wf.local.invalidYear||wf.regionalOptions[""].invalidYear);return this.leapYear(t)?366:365},dayOfYear:function(e,t,r){var n=this._validate(e,t,r,wf.local.invalidDate||wf.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,wf.local.invalidDate||wf.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(e,t,r){return this._validate(e,t,r,wf.local.invalidDate||wf.regionalOptions[""].invalidDate),{}},add:function(e,t,r){return this._validate(e,this.minMonth,this.minDay,wf.local.invalidDate||wf.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,t,r),t,r)},_add:function(e,t,r){if(this._validateLevel++,r==="d"||r==="w"){var n=e.toJD()+t*(r==="w"?this.daysInWeek():1),i=e.calendar().fromJD(n);return this._validateLevel--,[i.year(),i.month(),i.day()]}try{var a=e.year()+(r==="y"?t:0),o=e.monthOfYear()+(r==="m"?t:0),i=e.day(),s=function(f){for(;oc-1+f.minMonth;)a++,o-=c,c=f.monthsInYear(a)};r==="y"?(e.month()!==this.fromMonthOfYear(a,o)&&(o=this.newDate(a,e.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(a)),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o)))):r==="m"&&(s(this),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o))));var u=[a,this.fromMonthOfYear(a,o),i];return this._validateLevel--,u}catch(l){throw this._validateLevel--,l}},_correctAdd:function(e,t,r,n){if(!this.hasYearZero&&(n==="y"||n==="m")&&(t[0]===0||e.year()>0!=t[0]>0)){var i={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],a=r<0?-1:1;t=this._add(e,r*i[0]+a*i[1],i[2])}return e.date(t[0],t[1],t[2])},set:function(e,t,r){this._validate(e,this.minMonth,this.minDay,wf.local.invalidDate||wf.regionalOptions[""].invalidDate);var n=r==="y"?t:e.year(),i=r==="m"?t:e.month(),a=r==="d"?t:e.day();return(r==="y"||r==="m")&&(a=Math.min(a,this.daysInMonth(n,i))),e.date(n,i,a)},isValid:function(e,t,r){this._validateLevel++;var n=this.hasYearZero||e!==0;if(n){var i=this.newDate(e,t,this.minDay);n=t>=this.minMonth&&t-this.minMonth=this.minDay&&r-this.minDay13.5?13:1),l=i-(u>2.5?4716:4715);return l<=0&&l--,this.newDate(l,u,s)},toJSDate:function(e,t,r){var n=this._validate(e,t,r,wf.local.invalidDate||wf.regionalOptions[""].invalidDate),i=new Date(n.year(),n.month()-1,n.day());return i.setHours(0),i.setMinutes(0),i.setSeconds(0),i.setMilliseconds(0),i.setHours(i.getHours()>12?i.getHours()+2:0),i},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var wf=Iet.exports=new zet;wf.cdate=_Q;wf.baseCalendar=xQ;wf.calendars.gregorian=bQ});var Ret=Ae(()=>{var wQ=Gh(),Gd=Lp();wQ(Gd.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});Gd.local=Gd.regionalOptions[""];wQ(Gd.cdate.prototype,{formatDate:function(e,t){return typeof e!="string"&&(t=e,e=""),this._calendar.formatDate(e||"",this,t)}});wQ(Gd.baseCalendar.prototype,{UNIX_EPOCH:Gd.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:Gd.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,t,r){if(typeof e!="string"&&(r=t,t=e,e=""),!t)return"";if(t.calendar()!==this)throw Gd.local.invalidFormat||Gd.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,r=r||{};for(var n=r.dayNamesShort||this.local.dayNamesShort,i=r.dayNames||this.local.dayNames,a=r.monthNumbers||this.local.monthNumbers,o=r.monthNamesShort||this.local.monthNamesShort,s=r.monthNames||this.local.monthNames,u=r.calculateWeek||this.local.calculateWeek,l=function(A,L){for(var x=1;E+x1},f=function(A,L,x,C){var M=""+L;if(l(A,C))for(;M.length1},k=function(B,F){var U=v(B,F),G=[2,3,U?4:2,U?4:2,10,11,20]["oyYJ@!".indexOf(B)+1],j=new RegExp("^-?\\d{1,"+G+"}"),H=t.substring(M).match(j);if(!H)throw(Gd.local.missingNumberAt||Gd.regionalOptions[""].missingNumberAt).replace(/\{0\}/,M);return M+=H[0].length,parseInt(H[0],10)},E=this,A=function(){if(typeof s=="function"){v("m");var B=s.call(E,t.substring(M));return M+=B.length,B}return k("m")},L=function(B,F,U,G){for(var j=v(B,G)?U:F,H=0;H-1){h=1,d=p;for(var T=this.daysInMonth(c,h);d>T;T=this.daysInMonth(c,h))h++,d-=T}return f>-1?this.fromJD(f):this.newDate(c,h,d)},determineDate:function(e,t,r,n,i){r&&typeof r!="object"&&(i=n,n=r,r=null),typeof n!="string"&&(i=n,n="");var a=this,o=function(s){try{return a.parseDate(n,s,i)}catch(c){}s=s.toLowerCase();for(var u=(s.match(/^c/)&&r?r.newDate():null)||a.today(),l=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,f=l.exec(s);f;)u.add(parseInt(f[1],10),f[2]||"d"),f=l.exec(s);return u};return t=t?t.newDate():null,e=e==null?t:typeof e=="string"?o(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?t:a.today().add(e,"d"):a.newDate(e),e}})});var Det=Ae(()=>{var Dx=Lp(),$rr=Gh(),TQ=Dx.instance();function NO(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}NO.prototype=new Dx.baseCalendar;$rr(NO.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,t){if(typeof e=="string"){var r=e.match(eir);return r?r[0]:""}var n=this._validateYear(e),i=e.month(),a=""+this.toChineseMonth(n,i);return t&&a.length<2&&(a="0"+a),this.isIntercalaryMonth(n,i)&&(a+="i"),a},monthNames:function(e){if(typeof e=="string"){var t=e.match(tir);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},monthNamesShort:function(e){if(typeof e=="string"){var t=e.match(rir);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},parseMonth:function(e,t){e=this._validateYear(e);var r=parseInt(t),n;if(isNaN(r))t[0]==="\u95F0"&&(n=!0,t=t.substring(1)),t[t.length-1]==="\u6708"&&(t=t.substring(0,t.length-1)),r=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(t);else{var i=t[t.length-1];n=i==="i"||i==="I"}var a=this.toMonthIndex(e,r,n);return a},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,t){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw t.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,t,r){var n=this.intercalaryMonth(e),i=r&&t!==n;if(i||t<1||t>12)throw Dx.local.invalidMonth.replace(/\{0\}/,this.local.name);var a;return n?!r&&t<=n?a=t-1:a=t:a=t-1,a},toChineseMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e),n=r?12:11;if(t<0||t>n)throw Dx.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return r?t>13;return r},isIntercalaryMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e);return!!r&&r===t},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,t,r){var n=this._validateYear(e,Dx.local.invalidyear),i=Bx[n-Bx[0]],a=i>>9&4095,o=i>>5&15,s=i&31,u;u=TQ.newDate(a,o,s),u.add(4-(u.dayOfWeek()||7),"d");var l=this.toJD(e,t,r)-u.toJD();return 1+Math.floor(l/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,t){e.year&&(t=e.month(),e=e.year()),e=this._validateYear(e);var r=Fx[e-Fx[0]],n=r>>13,i=n?12:11;if(t>i)throw Dx.local.invalidMonth.replace(/\{0\}/,this.local.name);var a=r&1<<12-t?30:29;return a},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,a,r,Dx.local.invalidDate);e=this._validateYear(n.year()),t=n.month(),r=n.day();var i=this.isIntercalaryMonth(e,t),a=this.toChineseMonth(e,t),o=nir(e,a,r,i);return TQ.toJD(o.year,o.month,o.day)},fromJD:function(e){var t=TQ.fromJD(e),r=iir(t.year(),t.month(),t.day()),n=this.toMonthIndex(r.year,r.month,r.isIntercalary);return this.newDate(r.year,n,r.day)},fromString:function(e){var t=e.match(Qrr),r=this._validateYear(+t[1]),n=+t[2],i=!!t[3],a=this.toMonthIndex(r,n,i),o=+t[4];return this.newDate(r,a,o)},add:function(e,t,r){var n=e.year(),i=e.month(),a=this.isIntercalaryMonth(n,i),o=this.toChineseMonth(n,i),s=Object.getPrototypeOf(NO.prototype).add.call(this,e,t,r);if(r==="y"){var u=s.year(),l=s.month(),f=this.isIntercalaryMonth(u,o),c=a&&f?this.toMonthIndex(u,o,!0):this.toMonthIndex(u,o,!1);c!==l&&s.month(c)}return s}});var Qrr=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,eir=/^\d?\d[iI]?/m,tir=/^闰?十?[一二三四五六七八九]?月/m,rir=/^闰?十?[一二三四五六七八九]?/m;Dx.calendars.chinese=NO;var Fx=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],Bx=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function iir(e,t,r,n){var i,a;if(typeof e=="object")i=e,a=t||{};else{var o=typeof e=="number"&&e>=1888&&e<=2111;if(!o)throw new Error("Solar year outside range 1888-2111");var s=typeof t=="number"&&t>=1&&t<=12;if(!s)throw new Error("Solar month outside range 1 - 12");var u=typeof r=="number"&&r>=1&&r<=31;if(!u)throw new Error("Solar day outside range 1 - 31");i={year:e,month:t,day:r},a=n||{}}var l=Bx[i.year-Bx[0]],f=i.year<<9|i.month<<5|i.day;a.year=f>=l?i.year:i.year-1,l=Bx[a.year-Bx[0]];var c=l>>9&4095,h=l>>5&15,d=l&31,p,_=new Date(c,h-1,d),b=new Date(i.year,i.month-1,i.day);p=Math.round((b-_)/(24*3600*1e3));var v=Fx[a.year-Fx[0]],k;for(k=0;k<13;k++){var E=v&1<<12-k?30:29;if(p>13;return!A||k=1888&&e<=2111;if(!s)throw new Error("Lunar year outside range 1888-2111");var u=typeof t=="number"&&t>=1&&t<=12;if(!u)throw new Error("Lunar month outside range 1 - 12");var l=typeof r=="number"&&r>=1&&r<=30;if(!l)throw new Error("Lunar day outside range 1 - 30");var f;typeof n=="object"?(f=!1,a=n):(f=!!n,a=i||{}),o={year:e,month:t,day:r,isIntercalary:f}}var c;c=o.day-1;var h=Fx[o.year-Fx[0]],d=h>>13,p;d&&(o.month>d||o.isIntercalary)?p=o.month:p=o.month-1;for(var _=0;_>9&4095,E=v>>5&15,A=v&31,L=new Date(k,E-1,A+c);return a.year=L.getFullYear(),a.month=1+L.getMonth(),a.day=L.getDate(),a}});var Fet=Ae(()=>{var xw=Lp(),air=Gh();function AQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}AQ.prototype=new xw.baseCalendar;air(AQ.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,xw.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,xw.local.invalidYear||xw.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,xw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,xw.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-(n-1)*30+1;return this.newDate(r,n,i)}});xw.calendars.coptic=AQ});var Bet=Ae(()=>{var x1=Lp(),oir=Gh();function SQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}SQ.prototype=new x1.baseCalendar;oir(SQ.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),400},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/8)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,x1.local.invalidMonth);return this.daysPerMonth[r.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return(n.day()+1)%8},weekDay:function(e,t,r){var n=this.dayOfWeek(e,t,r);return n>=2&&n<=6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return{century:sir[Math.floor((n.year()-1)/100)+1]||""}},toJD:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return e=n.year()+(n.year()<0?1:0),t=n.month(),r=n.day(),r+(t>1?16:0)+(t>2?(t-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var t=Math.floor(e/400)+1;e-=(t-1)*400,e+=e>15?16:0;var r=Math.floor(e/32)+1,n=e-(r-1)*32+1;return this.newDate(t<=0?t-1:t,r,n)}});var sir={20:"Fruitbat",21:"Anchovy"};x1.calendars.discworld=SQ});var Oet=Ae(()=>{var bw=Lp(),lir=Gh();function MQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}MQ.prototype=new bw.baseCalendar;lir(MQ.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,bw.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,bw.local.invalidYear||bw.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,bw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,bw.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-(n-1)*30+1;return this.newDate(r,n,i)}});bw.calendars.ethiopian=MQ});var qet=Ae(()=>{var Ox=Lp(),uir=Gh();function EQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}EQ.prototype=new Ox.baseCalendar;uir(EQ.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Ox.local.invalidYear);return this._leapYear(t.year())},_leapYear:function(e){return e=e<0?e+1:e,UO(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ox.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Ox.local.invalidYear);return e=t.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,Ox.local.invalidMonth),t===12&&this.leapYear(e)||t===8&&UO(this.daysInYear(e),10)===5?30:t===9&&UO(this.daysInYear(e),10)===3?29:this.daysPerMonth[t-1]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,Ox.local.invalidDate);return{yearType:(this.leapYear(n)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(n)%10-3]}},toJD:function(e,t,r){var n=this._validate(e,t,r,Ox.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=e<=0?e+1:e,a=this.jdEpoch+this._delay1(i)+this._delay2(i)+r+1;if(t<7){for(var o=7;o<=this.monthsInYear(e);o++)a+=this.daysInMonth(e,o);for(var o=1;o=this.toJD(t===-1?1:t+1,7,1);)t++;for(var r=ethis.toJD(t,r,this.daysInMonth(t,r));)r++;var n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}});function UO(e,t){return e-t*Math.floor(e/t)}Ox.calendars.hebrew=EQ});var Net=Ae(()=>{var dC=Lp(),fir=Gh();function kQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}kQ.prototype=new dC.baseCalendar;fir(kQ.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,dC.local.invalidYear);return(t.year()*11+14)%30<11},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,dC.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,dC.local.invalidDate);return e=n.year(),t=n.month(),r=n.day(),e=e<=0?e+1:e,r+Math.ceil(29.5*(t-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=Math.floor((30*(e-this.jdEpoch)+10646)/10631);t=t<=0?t-1:t;var r=Math.min(12,Math.ceil((e-29-this.toJD(t,1,1))/29.5)+1),n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}});dC.calendars.islamic=kQ});var Uet=Ae(()=>{var pC=Lp(),cir=Gh();function CQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}CQ.prototype=new pC.baseCalendar;cir(CQ.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,pC.local.invalidYear),r=t.year()<0?t.year()+1:t.year();return r%4===0},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,pC.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,pC.local.invalidDate);return e=n.year(),t=n.month(),r=n.day(),e<0&&e++,t<=2&&(e--,t+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(t+1))+r-1524.5},fromJD:function(e){var t=Math.floor(e+.5),r=t+1524,n=Math.floor((r-122.1)/365.25),i=Math.floor(365.25*n),a=Math.floor((r-i)/30.6001),o=a-Math.floor(a<14?1:13),s=n-Math.floor(o>2?4716:4715),u=r-i-Math.floor(30.6001*a);return s<=0&&s--,this.newDate(s,o,u)}});pC.calendars.julian=CQ});var Get=Ae(()=>{var um=Lp(),hir=Gh();function PQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}PQ.prototype=new um.baseCalendar;hir(PQ.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,um.local.invalidYear),!1},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,um.local.invalidYear);e=t.year();var r=Math.floor(e/400);e=e%400,e+=e<0?400:0;var n=Math.floor(e/20);return r+"."+n+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var t=0,r=0;r19||r>0&&n<0)throw"Invalid Mayan year";t=t*20+n}return t},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,um.local.invalidYear),18},weekOfYear:function(e,t,r){return this._validate(e,t,r,um.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,um.local.invalidYear),360},daysInMonth:function(e,t){return this._validate(e,t,this.minDay,um.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,um.local.invalidDate);return n.day()},weekDay:function(e,t,r){return this._validate(e,t,r,um.local.invalidDate),!0},extraInfo:function(e,t,r){var n=this._validate(e,t,r,um.local.invalidDate),i=n.toJD(),a=this._toHaab(i),o=this._toTzolkin(i);return{haabMonthName:this.local.haabMonths[a[0]-1],haabMonth:a[0],haabDay:a[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(e){e-=this.jdEpoch;var t=LQ(e+8+17*20,365);return[Math.floor(t/20)+1,LQ(t,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[Vet(e+20,20),Vet(e+4,13)]},toJD:function(e,t,r){var n=this._validate(e,t,r,um.local.invalidDate);return n.day()+n.month()*20+n.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var t=Math.floor(e/360);e=e%360,e+=e<0?360:0;var r=Math.floor(e/20),n=e%20;return this.newDate(t,r,n)}});function LQ(e,t){return e-t*Math.floor(e/t)}function Vet(e,t){return LQ(e-1,t)+1}um.calendars.mayan=PQ});var Wet=Ae(()=>{var ww=Lp(),dir=Gh();function zQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}zQ.prototype=new ww.baseCalendar;var Het=ww.instance("gregorian");dir(zQ.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,ww.local.invalidYear||ww.regionalOptions[""].invalidYear);return Het.leapYear(t.year()+(t.year()<1?1:0)+1469)},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,ww.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,ww.local.invalidMonth),i=n.year();i<0&&i++;for(var a=n.day(),o=1;o=this.toJD(t+1,1,1);)t++;for(var r=e-Math.floor(this.toJD(t,1,1)+.5)+1,n=1;r>this.daysInMonth(t,n);)r-=this.daysInMonth(t,n),n++;return this.newDate(t,n,r)}});ww.calendars.nanakshahi=zQ});var jet=Ae(()=>{var Tw=Lp(),pir=Gh();function IQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}IQ.prototype=new Tw.baseCalendar;pir(IQ.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Tw.local.invalidYear);if(e=t.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var r=0,n=this.minMonth;n<=12;n++)r+=this.NEPALI_CALENDAR_DATA[e][n];return r},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,Tw.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[t-1]:this.NEPALI_CALENDAR_DATA[e][t]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},toJD:function(e,t,r){var n=this._validate(e,t,r,Tw.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=Tw.instance(),a=0,o=t,s=e;this._createMissingCalendarData(e);var u=e-(o>9||o===9&&r>=this.NEPALI_CALENDAR_DATA[s][0]?56:57);for(t!==9&&(a=r,o--);o!==9;)o<=0&&(o=12,s--),a+=this.NEPALI_CALENDAR_DATA[s][o],o--;return t===9?(a+=r-this.NEPALI_CALENDAR_DATA[s][0],a<0&&(a+=i.daysInYear(u))):a+=this.NEPALI_CALENDAR_DATA[s][9]-this.NEPALI_CALENDAR_DATA[s][0],i.newDate(u,1,1).add(a,"d").toJD()},fromJD:function(e){var t=Tw.instance(),r=t.fromJD(e),n=r.year(),i=r.dayOfYear(),a=n+56;this._createMissingCalendarData(a);for(var o=9,s=this.NEPALI_CALENDAR_DATA[a][0],u=this.NEPALI_CALENDAR_DATA[a][o]-s+1;i>u;)o++,o>12&&(o=1,a++),u+=this.NEPALI_CALENDAR_DATA[a][o];var l=this.NEPALI_CALENDAR_DATA[a][o]-(u-i);return this.newDate(a,o,l)},_createMissingCalendarData:function(e){var t=this.daysPerMonth.slice(0);t.unshift(17);for(var r=e-1;r{var tM=Lp(),vir=Gh();function GO(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function VO(e){var t=e-475;e<0&&t++;var r=.242197,n=r*t,i=r*(t+1),a=n-Math.floor(n),o=i-Math.floor(i);return a>o}GO.prototype=new tM.baseCalendar;vir(GO.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,tM.local.invalidYear);return VO(t.year())},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-((n.dayOfWeek()+1)%7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,tM.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,tM.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=0;if(e>0)for(var a=1;a0?e-1:e)*365+i+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=475+(e-this.toJD(475,1,1))/365.242197,r=Math.floor(t);r<=0&&r--,e>this.toJD(r,12,VO(r)?30:29)&&(r++,r===0&&r++);var n=e-this.toJD(r,1,1)+1,i=n<=186?Math.ceil(n/31):Math.ceil((n-6)/30),a=e-this.toJD(r,i,1)+1;return this.newDate(r,i,a)}});tM.calendars.persian=GO;tM.calendars.jalali=GO});var Zet=Ae(()=>{var Aw=Lp(),mir=Gh(),HO=Aw.instance();function RQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}RQ.prototype=new Aw.baseCalendar;mir(RQ.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Aw.local.invalidYear),r=this._t2gYear(t.year());return HO.leapYear(r)},weekOfYear:function(i,t,r){var n=this._validate(i,this.minMonth,this.minDay,Aw.local.invalidYear),i=this._t2gYear(n.year());return HO.weekOfYear(i,n.month(),n.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Aw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Aw.local.invalidDate),i=this._t2gYear(n.year());return HO.toJD(i,n.month(),n.day())},fromJD:function(e){var t=HO.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Aw.calendars.taiwan=RQ});var Yet=Ae(()=>{var Sw=Lp(),yir=Gh(),WO=Sw.instance();function DQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}DQ.prototype=new Sw.baseCalendar;yir(DQ.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Sw.local.invalidYear),r=this._t2gYear(t.year());return WO.leapYear(r)},weekOfYear:function(i,t,r){var n=this._validate(i,this.minMonth,this.minDay,Sw.local.invalidYear),i=this._t2gYear(n.year());return WO.weekOfYear(i,n.month(),n.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Sw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Sw.local.invalidDate),i=this._t2gYear(n.year());return WO.toJD(i,n.month(),n.day())},fromJD:function(e){var t=WO.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});Sw.calendars.thai=DQ});var Ket=Ae(()=>{var Mw=Lp(),gir=Gh();function FQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}FQ.prototype=new Mw.baseCalendar;gir(FQ.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Mw.local.invalidYear);return this.daysInYear(t.year())===355},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var t=0,r=1;r<=12;r++)t+=this.daysInMonth(e,r);return t},daysInMonth:function(e,t){for(var r=this._validate(e,t,this.minDay,Mw.local.invalidMonth),n=r.toJD()-24e5+.5,i=0,a=0;an)return qx[i]-qx[i-1];i++}return 30},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,Mw.local.invalidDate),i=12*(n.year()-1)+n.month()-15292,a=n.day()+qx[i-1]-1;return a+24e5-.5},fromJD:function(e){for(var t=e-24e5+.5,r=0,n=0;nt);n++)r++;var i=r+15292,a=Math.floor((i-1)/12),o=a+1,s=i-12*a,u=t-qx[r-1]+1;return this.newDate(o,s,u)},isValid:function(e,t,r){var n=Mw.baseCalendar.prototype.isValid.apply(this,arguments);return n&&(e=e.year!=null?e.year:e,n=e>=1276&&e<=1500),n},_validate:function(e,t,r,n){var i=Mw.baseCalendar.prototype._validate.apply(this,arguments);if(i.year<1276||i.year>1500)throw n.replace(/\{0\}/,this.local.name);return i}});Mw.calendars.ummalqura=FQ;var qx=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var $et=Ae((WAr,Jet)=>{"use strict";Jet.exports=Lp();Ret();Det();Fet();Bet();Oet();qet();Net();Uet();Get();Wet();jet();Xet();Zet();Yet();Ket()});var att=Ae((jAr,ntt)=>{"use strict";var ett=$et(),vC=ei(),ttt=rf(),_ir=ttt.EPOCHJD,xir=ttt.ONEDAY,qQ={valType:"enumerated",values:vC.sortObjectKeys(ett.calendars),editType:"calc",dflt:"gregorian"},rtt=function(e,t,r,n){var i={};return i[r]=qQ,vC.coerce(e,t,i,r,n)},bir=function(e,t,r,n){for(var i=0;i{"use strict";ott.exports=att()});var Eir=Ae((ZAr,utt)=>{var ltt=pge();ltt.register([y1e(),n_e(),gxe(),qxe(),Qxe(),Ybe(),l2e(),Y2e(),Awe(),o3e(),X3e(),ake(),Zke(),qLe(),EPe(),nze(),kze(),QIe(),gRe(),FRe(),ZRe(),lDe(),TDe(),qDe(),dFe(),IFe(),l7e(),cUe(),zVe(),nGe(),pHe(),CHe(),QHe(),cje(),Mje(),Kje(),aZe(),CZe(),fYe(),zKe(),rJe(),TJe(),YJe(),u$e(),lQe(),CQe(),ZQe(),Pet(),stt()]);utt.exports=ltt});return Eir();})(); +`),rt=tt.createShader(tt.FRAGMENT_SHADER);if(tt.isContextLost())return void(this.failedToCreate=!0);if(tt.shaderSource(rt,Ge),tt.compileShader(rt),!tt.getShaderParameter(rt,tt.COMPILE_STATUS))throw new Error(`Could not compile fragment shader: ${tt.getShaderInfoLog(rt)}`);tt.attachShader(this.program,rt);let pt=tt.createShader(tt.VERTEX_SHADER);if(tt.isContextLost())return void(this.failedToCreate=!0);if(tt.shaderSource(pt,lt),tt.compileShader(pt),!tt.getShaderParameter(pt,tt.COMPILE_STATUS))throw new Error(`Could not compile vertex shader: ${tt.getShaderInfoLog(pt)}`);tt.attachShader(this.program,pt),this.attributes={};let Ht={};this.numAttributes=ir.length;for(let nr=0;nr({u_depth:new a.aH(nr,fr.u_depth),u_terrain:new a.aH(nr,fr.u_terrain),u_terrain_dim:new a.aI(nr,fr.u_terrain_dim),u_terrain_matrix:new a.aJ(nr,fr.u_terrain_matrix),u_terrain_unpack:new a.aK(nr,fr.u_terrain_unpack),u_terrain_exaggeration:new a.aI(nr,fr.u_terrain_exaggeration)}))(w,Ht),this.binderUniforms=Q?Q.getUniforms(w,Ht):[]}draw(w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he,Se,Ne,Ge,lt){let rt=w.gl;if(this.failedToCreate)return;if(w.program.set(this.program),w.setDepthMode(Q),w.setStencilMode(ee),w.setColorMode(ue),w.setCullFace(Ve),mt){w.activeTexture.set(rt.TEXTURE2),rt.bindTexture(rt.TEXTURE_2D,mt.depthTexture),w.activeTexture.set(rt.TEXTURE3),rt.bindTexture(rt.TEXTURE_2D,mt.texture);for(let Ht in this.terrainUniforms)this.terrainUniforms[Ht].set(mt[Ht])}for(let Ht in this.fixedUniforms)this.fixedUniforms[Ht].set(tt[Ht]);Se&&Se.setUniforms(w,this.binderUniforms,Vr,{zoom:he});let pt=0;switch(q){case rt.LINES:pt=2;break;case rt.TRIANGLES:pt=3;break;case rt.LINE_STRIP:pt=1}for(let Ht of kr.get()){let nr=Ht.vaos||(Ht.vaos={});(nr[Bt]||(nr[Bt]=new tr)).bind(w,this,ir,Se?Se.getPaintVertexBuffers():[],or,Ht.vertexOffset,Ne,Ge,lt),rt.drawElements(q,Ht.primitiveLength*pt,rt.UNSIGNED_SHORT,Ht.primitiveOffset*pt*2)}}}function Ti(le,w,q){let Q=1/Di(q,1,w.transform.tileZoom),ee=Math.pow(2,q.tileID.overscaledZ),ue=q.tileSize*Math.pow(2,w.transform.tileZoom)/ee,Ve=ue*(q.tileID.canonical.x+q.tileID.wrap*ee),tt=ue*q.tileID.canonical.y;return{u_image:0,u_texsize:q.imageAtlasTexture.size,u_scale:[Q,le.fromScale,le.toScale],u_fade:le.t,u_pixel_coord_upper:[Ve>>16,tt>>16],u_pixel_coord_lower:[65535&Ve,65535&tt]}}let en=(le,w,q,Q)=>{let ee=w.style.light,ue=ee.properties.get("position"),Ve=[ue.x,ue.y,ue.z],tt=function(){var Bt=new a.A(9);return a.A!=Float32Array&&(Bt[1]=0,Bt[2]=0,Bt[3]=0,Bt[5]=0,Bt[6]=0,Bt[7]=0),Bt[0]=1,Bt[4]=1,Bt[8]=1,Bt}();ee.properties.get("anchor")==="viewport"&&function(Bt,ir){var or=Math.sin(ir),kr=Math.cos(ir);Bt[0]=kr,Bt[1]=or,Bt[2]=0,Bt[3]=-or,Bt[4]=kr,Bt[5]=0,Bt[6]=0,Bt[7]=0,Bt[8]=1}(tt,-w.transform.angle),function(Bt,ir,or){var kr=ir[0],Vr=ir[1],he=ir[2];Bt[0]=kr*or[0]+Vr*or[3]+he*or[6],Bt[1]=kr*or[1]+Vr*or[4]+he*or[7],Bt[2]=kr*or[2]+Vr*or[5]+he*or[8]}(Ve,Ve,tt);let mt=ee.properties.get("color");return{u_matrix:le,u_lightpos:Ve,u_lightintensity:ee.properties.get("intensity"),u_lightcolor:[mt.r,mt.g,mt.b],u_vertical_gradient:+q,u_opacity:Q}},ii=(le,w,q,Q,ee,ue,Ve)=>a.e(en(le,w,q,Q),Ti(ue,w,Ve),{u_height_factor:-Math.pow(2,ee.overscaledZ)/Ve.tileSize/8}),Xi=le=>({u_matrix:le}),aa=(le,w,q,Q)=>a.e(Xi(le),Ti(q,w,Q)),Mn=(le,w)=>({u_matrix:le,u_world:w}),Un=(le,w,q,Q,ee)=>a.e(aa(le,w,q,Q),{u_world:ee}),Ga=(le,w,q,Q)=>{let ee=le.transform,ue,Ve;if(Q.paint.get("circle-pitch-alignment")==="map"){let tt=Di(q,1,ee.zoom);ue=!0,Ve=[tt,tt]}else ue=!1,Ve=ee.pixelsToGLUnits;return{u_camera_to_center_distance:ee.cameraToCenterDistance,u_scale_with_map:+(Q.paint.get("circle-pitch-scale")==="map"),u_matrix:le.translatePosMatrix(w.posMatrix,q,Q.paint.get("circle-translate"),Q.paint.get("circle-translate-anchor")),u_pitch_with_map:+ue,u_device_pixel_ratio:le.pixelRatio,u_extrude_scale:Ve}},ma=(le,w,q)=>({u_matrix:le,u_inv_matrix:w,u_camera_to_center_distance:q.cameraToCenterDistance,u_viewport_size:[q.width,q.height]}),oa=(le,w,q=1)=>({u_matrix:le,u_color:w,u_overlay:0,u_overlay_scale:q}),ka=le=>({u_matrix:le}),so=(le,w,q,Q)=>({u_matrix:le,u_extrude_scale:Di(w,1,q),u_intensity:Q}),Kr=(le,w,q,Q)=>{let ee=a.H();a.aP(ee,0,le.width,le.height,0,0,1);let ue=le.context.gl;return{u_matrix:ee,u_world:[ue.drawingBufferWidth,ue.drawingBufferHeight],u_image:q,u_color_ramp:Q,u_opacity:w.paint.get("heatmap-opacity")}};function Ia(le,w){let q=Math.pow(2,w.canonical.z),Q=w.canonical.y;return[new a.Z(0,Q/q).toLngLat().lat,new a.Z(0,(Q+1)/q).toLngLat().lat]}let Yo=(le,w,q,Q)=>{let ee=le.transform;return{u_matrix:uo(le,w,q,Q),u_ratio:1/Di(w,1,ee.zoom),u_device_pixel_ratio:le.pixelRatio,u_units_to_pixels:[1/ee.pixelsToGLUnits[0],1/ee.pixelsToGLUnits[1]]}},fa=(le,w,q,Q,ee)=>a.e(Yo(le,w,q,ee),{u_image:0,u_image_height:Q}),kn=(le,w,q,Q,ee)=>{let ue=le.transform,Ve=ys(w,ue);return{u_matrix:uo(le,w,q,ee),u_texsize:w.imageAtlasTexture.size,u_ratio:1/Di(w,1,ue.zoom),u_device_pixel_ratio:le.pixelRatio,u_image:0,u_scale:[Ve,Q.fromScale,Q.toScale],u_fade:Q.t,u_units_to_pixels:[1/ue.pixelsToGLUnits[0],1/ue.pixelsToGLUnits[1]]}},Aa=(le,w,q,Q,ee,ue)=>{let Ve=le.lineAtlas,tt=ys(w,le.transform),mt=q.layout.get("line-cap")==="round",Bt=Ve.getDash(Q.from,mt),ir=Ve.getDash(Q.to,mt),or=Bt.width*ee.fromScale,kr=ir.width*ee.toScale;return a.e(Yo(le,w,q,ue),{u_patternscale_a:[tt/or,-Bt.height/2],u_patternscale_b:[tt/kr,-ir.height/2],u_sdfgamma:Ve.width/(256*Math.min(or,kr)*le.pixelRatio)/2,u_image:0,u_tex_y_a:Bt.y,u_tex_y_b:ir.y,u_mix:ee.t})};function ys(le,w){return 1/Di(le,1,w.tileZoom)}function uo(le,w,q,Q){return le.translatePosMatrix(Q?Q.posMatrix:w.tileID.posMatrix,w,q.paint.get("line-translate"),q.paint.get("line-translate-anchor"))}let ls=(le,w,q,Q,ee)=>{return{u_matrix:le,u_tl_parent:w,u_scale_parent:q,u_buffer_scale:1,u_fade_t:Q.mix,u_opacity:Q.opacity*ee.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:ee.paint.get("raster-brightness-min"),u_brightness_high:ee.paint.get("raster-brightness-max"),u_saturation_factor:(Ve=ee.paint.get("raster-saturation"),Ve>0?1-1/(1.001-Ve):-Ve),u_contrast_factor:(ue=ee.paint.get("raster-contrast"),ue>0?1/(1-ue):1+ue),u_spin_weights:$a(ee.paint.get("raster-hue-rotate"))};var ue,Ve};function $a(le){le*=Math.PI/180;let w=Math.sin(le),q=Math.cos(le);return[(2*q+1)/3,(-Math.sqrt(3)*w-q+1)/3,(Math.sqrt(3)*w-q+1)/3]}let fo=(le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr)=>{let he=Ve.transform;return{u_is_size_zoom_constant:+(le==="constant"||le==="source"),u_is_size_feature_constant:+(le==="constant"||le==="camera"),u_size_t:w?w.uSizeT:0,u_size:w?w.uSize:0,u_camera_to_center_distance:he.cameraToCenterDistance,u_pitch:he.pitch/360*2*Math.PI,u_rotate_symbol:+q,u_aspect_ratio:he.width/he.height,u_fade_change:Ve.options.fadeDuration?Ve.symbolFadeChange:1,u_matrix:tt,u_label_plane_matrix:mt,u_coord_matrix:Bt,u_is_text:+or,u_pitch_with_map:+Q,u_is_along_line:ee,u_is_variable_anchor:ue,u_texsize:kr,u_texture:0,u_translation:ir,u_pitched_scale:Vr}},mn=(le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr,he)=>{let Se=Ve.transform;return a.e(fo(le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,he),{u_gamma_scale:Q?Math.cos(Se._pitch)*Se.cameraToCenterDistance:1,u_device_pixel_ratio:Ve.pixelRatio,u_is_halo:+Vr})},ra=(le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,or,kr,Vr)=>a.e(mn(le,w,q,Q,ee,ue,Ve,tt,mt,Bt,ir,!0,or,!0,Vr),{u_texsize_icon:kr,u_texture_icon:1}),wa=(le,w,q)=>({u_matrix:le,u_opacity:w,u_color:q}),ws=(le,w,q,Q,ee,ue)=>a.e(function(Ve,tt,mt,Bt){let ir=mt.imageManager.getPattern(Ve.from.toString()),or=mt.imageManager.getPattern(Ve.to.toString()),{width:kr,height:Vr}=mt.imageManager.getPixelSize(),he=Math.pow(2,Bt.tileID.overscaledZ),Se=Bt.tileSize*Math.pow(2,mt.transform.tileZoom)/he,Ne=Se*(Bt.tileID.canonical.x+Bt.tileID.wrap*he),Ge=Se*Bt.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:ir.tl,u_pattern_br_a:ir.br,u_pattern_tl_b:or.tl,u_pattern_br_b:or.br,u_texsize:[kr,Vr],u_mix:tt.t,u_pattern_size_a:ir.displaySize,u_pattern_size_b:or.displaySize,u_scale_a:tt.fromScale,u_scale_b:tt.toScale,u_tile_units_to_pixels:1/Di(Bt,1,mt.transform.tileZoom),u_pixel_coord_upper:[Ne>>16,Ge>>16],u_pixel_coord_lower:[65535&Ne,65535&Ge]}}(Q,ue,q,ee),{u_matrix:le,u_opacity:w}),Co={fillExtrusion:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_lightpos:new a.aN(le,w.u_lightpos),u_lightintensity:new a.aI(le,w.u_lightintensity),u_lightcolor:new a.aN(le,w.u_lightcolor),u_vertical_gradient:new a.aI(le,w.u_vertical_gradient),u_opacity:new a.aI(le,w.u_opacity)}),fillExtrusionPattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_lightpos:new a.aN(le,w.u_lightpos),u_lightintensity:new a.aI(le,w.u_lightintensity),u_lightcolor:new a.aN(le,w.u_lightcolor),u_vertical_gradient:new a.aI(le,w.u_vertical_gradient),u_height_factor:new a.aI(le,w.u_height_factor),u_image:new a.aH(le,w.u_image),u_texsize:new a.aO(le,w.u_texsize),u_pixel_coord_upper:new a.aO(le,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(le,w.u_pixel_coord_lower),u_scale:new a.aN(le,w.u_scale),u_fade:new a.aI(le,w.u_fade),u_opacity:new a.aI(le,w.u_opacity)}),fill:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix)}),fillPattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_image:new a.aH(le,w.u_image),u_texsize:new a.aO(le,w.u_texsize),u_pixel_coord_upper:new a.aO(le,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(le,w.u_pixel_coord_lower),u_scale:new a.aN(le,w.u_scale),u_fade:new a.aI(le,w.u_fade)}),fillOutline:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_world:new a.aO(le,w.u_world)}),fillOutlinePattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_world:new a.aO(le,w.u_world),u_image:new a.aH(le,w.u_image),u_texsize:new a.aO(le,w.u_texsize),u_pixel_coord_upper:new a.aO(le,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(le,w.u_pixel_coord_lower),u_scale:new a.aN(le,w.u_scale),u_fade:new a.aI(le,w.u_fade)}),circle:(le,w)=>({u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_scale_with_map:new a.aH(le,w.u_scale_with_map),u_pitch_with_map:new a.aH(le,w.u_pitch_with_map),u_extrude_scale:new a.aO(le,w.u_extrude_scale),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_matrix:new a.aJ(le,w.u_matrix)}),collisionBox:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_pixel_extrude_scale:new a.aO(le,w.u_pixel_extrude_scale)}),collisionCircle:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_inv_matrix:new a.aJ(le,w.u_inv_matrix),u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_viewport_size:new a.aO(le,w.u_viewport_size)}),debug:(le,w)=>({u_color:new a.aL(le,w.u_color),u_matrix:new a.aJ(le,w.u_matrix),u_overlay:new a.aH(le,w.u_overlay),u_overlay_scale:new a.aI(le,w.u_overlay_scale)}),clippingMask:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix)}),heatmap:(le,w)=>({u_extrude_scale:new a.aI(le,w.u_extrude_scale),u_intensity:new a.aI(le,w.u_intensity),u_matrix:new a.aJ(le,w.u_matrix)}),heatmapTexture:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_world:new a.aO(le,w.u_world),u_image:new a.aH(le,w.u_image),u_color_ramp:new a.aH(le,w.u_color_ramp),u_opacity:new a.aI(le,w.u_opacity)}),hillshade:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_image:new a.aH(le,w.u_image),u_latrange:new a.aO(le,w.u_latrange),u_light:new a.aO(le,w.u_light),u_shadow:new a.aL(le,w.u_shadow),u_highlight:new a.aL(le,w.u_highlight),u_accent:new a.aL(le,w.u_accent)}),hillshadePrepare:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_image:new a.aH(le,w.u_image),u_dimension:new a.aO(le,w.u_dimension),u_zoom:new a.aI(le,w.u_zoom),u_unpack:new a.aK(le,w.u_unpack)}),line:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_ratio:new a.aI(le,w.u_ratio),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(le,w.u_units_to_pixels)}),lineGradient:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_ratio:new a.aI(le,w.u_ratio),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(le,w.u_units_to_pixels),u_image:new a.aH(le,w.u_image),u_image_height:new a.aI(le,w.u_image_height)}),linePattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_texsize:new a.aO(le,w.u_texsize),u_ratio:new a.aI(le,w.u_ratio),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_image:new a.aH(le,w.u_image),u_units_to_pixels:new a.aO(le,w.u_units_to_pixels),u_scale:new a.aN(le,w.u_scale),u_fade:new a.aI(le,w.u_fade)}),lineSDF:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_ratio:new a.aI(le,w.u_ratio),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(le,w.u_units_to_pixels),u_patternscale_a:new a.aO(le,w.u_patternscale_a),u_patternscale_b:new a.aO(le,w.u_patternscale_b),u_sdfgamma:new a.aI(le,w.u_sdfgamma),u_image:new a.aH(le,w.u_image),u_tex_y_a:new a.aI(le,w.u_tex_y_a),u_tex_y_b:new a.aI(le,w.u_tex_y_b),u_mix:new a.aI(le,w.u_mix)}),raster:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_tl_parent:new a.aO(le,w.u_tl_parent),u_scale_parent:new a.aI(le,w.u_scale_parent),u_buffer_scale:new a.aI(le,w.u_buffer_scale),u_fade_t:new a.aI(le,w.u_fade_t),u_opacity:new a.aI(le,w.u_opacity),u_image0:new a.aH(le,w.u_image0),u_image1:new a.aH(le,w.u_image1),u_brightness_low:new a.aI(le,w.u_brightness_low),u_brightness_high:new a.aI(le,w.u_brightness_high),u_saturation_factor:new a.aI(le,w.u_saturation_factor),u_contrast_factor:new a.aI(le,w.u_contrast_factor),u_spin_weights:new a.aN(le,w.u_spin_weights)}),symbolIcon:(le,w)=>({u_is_size_zoom_constant:new a.aH(le,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(le,w.u_is_size_feature_constant),u_size_t:new a.aI(le,w.u_size_t),u_size:new a.aI(le,w.u_size),u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_pitch:new a.aI(le,w.u_pitch),u_rotate_symbol:new a.aH(le,w.u_rotate_symbol),u_aspect_ratio:new a.aI(le,w.u_aspect_ratio),u_fade_change:new a.aI(le,w.u_fade_change),u_matrix:new a.aJ(le,w.u_matrix),u_label_plane_matrix:new a.aJ(le,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(le,w.u_coord_matrix),u_is_text:new a.aH(le,w.u_is_text),u_pitch_with_map:new a.aH(le,w.u_pitch_with_map),u_is_along_line:new a.aH(le,w.u_is_along_line),u_is_variable_anchor:new a.aH(le,w.u_is_variable_anchor),u_texsize:new a.aO(le,w.u_texsize),u_texture:new a.aH(le,w.u_texture),u_translation:new a.aO(le,w.u_translation),u_pitched_scale:new a.aI(le,w.u_pitched_scale)}),symbolSDF:(le,w)=>({u_is_size_zoom_constant:new a.aH(le,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(le,w.u_is_size_feature_constant),u_size_t:new a.aI(le,w.u_size_t),u_size:new a.aI(le,w.u_size),u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_pitch:new a.aI(le,w.u_pitch),u_rotate_symbol:new a.aH(le,w.u_rotate_symbol),u_aspect_ratio:new a.aI(le,w.u_aspect_ratio),u_fade_change:new a.aI(le,w.u_fade_change),u_matrix:new a.aJ(le,w.u_matrix),u_label_plane_matrix:new a.aJ(le,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(le,w.u_coord_matrix),u_is_text:new a.aH(le,w.u_is_text),u_pitch_with_map:new a.aH(le,w.u_pitch_with_map),u_is_along_line:new a.aH(le,w.u_is_along_line),u_is_variable_anchor:new a.aH(le,w.u_is_variable_anchor),u_texsize:new a.aO(le,w.u_texsize),u_texture:new a.aH(le,w.u_texture),u_gamma_scale:new a.aI(le,w.u_gamma_scale),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_is_halo:new a.aH(le,w.u_is_halo),u_translation:new a.aO(le,w.u_translation),u_pitched_scale:new a.aI(le,w.u_pitched_scale)}),symbolTextAndIcon:(le,w)=>({u_is_size_zoom_constant:new a.aH(le,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(le,w.u_is_size_feature_constant),u_size_t:new a.aI(le,w.u_size_t),u_size:new a.aI(le,w.u_size),u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_pitch:new a.aI(le,w.u_pitch),u_rotate_symbol:new a.aH(le,w.u_rotate_symbol),u_aspect_ratio:new a.aI(le,w.u_aspect_ratio),u_fade_change:new a.aI(le,w.u_fade_change),u_matrix:new a.aJ(le,w.u_matrix),u_label_plane_matrix:new a.aJ(le,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(le,w.u_coord_matrix),u_is_text:new a.aH(le,w.u_is_text),u_pitch_with_map:new a.aH(le,w.u_pitch_with_map),u_is_along_line:new a.aH(le,w.u_is_along_line),u_is_variable_anchor:new a.aH(le,w.u_is_variable_anchor),u_texsize:new a.aO(le,w.u_texsize),u_texsize_icon:new a.aO(le,w.u_texsize_icon),u_texture:new a.aH(le,w.u_texture),u_texture_icon:new a.aH(le,w.u_texture_icon),u_gamma_scale:new a.aI(le,w.u_gamma_scale),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_is_halo:new a.aH(le,w.u_is_halo),u_translation:new a.aO(le,w.u_translation),u_pitched_scale:new a.aI(le,w.u_pitched_scale)}),background:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_opacity:new a.aI(le,w.u_opacity),u_color:new a.aL(le,w.u_color)}),backgroundPattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_opacity:new a.aI(le,w.u_opacity),u_image:new a.aH(le,w.u_image),u_pattern_tl_a:new a.aO(le,w.u_pattern_tl_a),u_pattern_br_a:new a.aO(le,w.u_pattern_br_a),u_pattern_tl_b:new a.aO(le,w.u_pattern_tl_b),u_pattern_br_b:new a.aO(le,w.u_pattern_br_b),u_texsize:new a.aO(le,w.u_texsize),u_mix:new a.aI(le,w.u_mix),u_pattern_size_a:new a.aO(le,w.u_pattern_size_a),u_pattern_size_b:new a.aO(le,w.u_pattern_size_b),u_scale_a:new a.aI(le,w.u_scale_a),u_scale_b:new a.aI(le,w.u_scale_b),u_pixel_coord_upper:new a.aO(le,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(le,w.u_pixel_coord_lower),u_tile_units_to_pixels:new a.aI(le,w.u_tile_units_to_pixels)}),terrain:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_texture:new a.aH(le,w.u_texture),u_ele_delta:new a.aI(le,w.u_ele_delta),u_fog_matrix:new a.aJ(le,w.u_fog_matrix),u_fog_color:new a.aL(le,w.u_fog_color),u_fog_ground_blend:new a.aI(le,w.u_fog_ground_blend),u_fog_ground_blend_opacity:new a.aI(le,w.u_fog_ground_blend_opacity),u_horizon_color:new a.aL(le,w.u_horizon_color),u_horizon_fog_blend:new a.aI(le,w.u_horizon_fog_blend)}),terrainDepth:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_ele_delta:new a.aI(le,w.u_ele_delta)}),terrainCoords:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_texture:new a.aH(le,w.u_texture),u_terrain_coords_id:new a.aI(le,w.u_terrain_coords_id),u_ele_delta:new a.aI(le,w.u_ele_delta)}),sky:(le,w)=>({u_sky_color:new a.aL(le,w.u_sky_color),u_horizon_color:new a.aL(le,w.u_horizon_color),u_horizon:new a.aI(le,w.u_horizon),u_sky_horizon_blend:new a.aI(le,w.u_sky_horizon_blend)})};class Po{constructor(w,q,Q){this.context=w;let ee=w.gl;this.buffer=ee.createBuffer(),this.dynamicDraw=!!Q,this.context.unbindVAO(),w.bindElementBuffer.set(this.buffer),ee.bufferData(ee.ELEMENT_ARRAY_BUFFER,q.arrayBuffer,this.dynamicDraw?ee.DYNAMIC_DRAW:ee.STATIC_DRAW),this.dynamicDraw||delete q.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(w){let q=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),q.bufferSubData(q.ELEMENT_ARRAY_BUFFER,0,w.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let Wi={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class gn{constructor(w,q,Q,ee){this.length=q.length,this.attributes=Q,this.itemSize=q.bytesPerElement,this.dynamicDraw=ee,this.context=w;let ue=w.gl;this.buffer=ue.createBuffer(),w.bindVertexBuffer.set(this.buffer),ue.bufferData(ue.ARRAY_BUFFER,q.arrayBuffer,this.dynamicDraw?ue.DYNAMIC_DRAW:ue.STATIC_DRAW),this.dynamicDraw||delete q.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(w){if(w.length!==this.length)throw new Error(`Length of new data is ${w.length}, which doesn't match current length of ${this.length}`);let q=this.context.gl;this.bind(),q.bufferSubData(q.ARRAY_BUFFER,0,w.arrayBuffer)}enableAttributes(w,q){for(let Q=0;Q0){let nr=a.H();a.aQ(nr,rt.placementInvProjMatrix,le.transform.glCoordMatrix),a.aQ(nr,nr,rt.placementViewportMatrix),mt.push({circleArray:Ht,circleOffset:ir,transform:lt.posMatrix,invTransform:nr,coord:lt}),Bt+=Ht.length/4,ir=Bt}pt&&tt.draw(ue,Ve.LINES,sa.disabled,Na.disabled,le.colorModeForRenderPass(),rn.disabled,{u_matrix:lt.posMatrix,u_pixel_extrude_scale:[1/(or=le.transform).width,1/or.height]},le.style.map.terrain&&le.style.map.terrain.getTerrainData(lt),q.id,pt.layoutVertexBuffer,pt.indexBuffer,pt.segments,null,le.transform.zoom,null,null,pt.collisionVertexBuffer)}var or;if(!ee||!mt.length)return;let kr=le.useProgram("collisionCircle"),Vr=new a.aR;Vr.resize(4*Bt),Vr._trim();let he=0;for(let Ge of mt)for(let lt=0;lt=0&&(Ge[rt.associatedIconIndex]={shiftedAnchor:Fo,angle:vl})}else Br(rt.numGlyphs,Se)}if(Bt){Ne.clear();let lt=le.icon.placedSymbolArray;for(let rt=0;rtle.style.map.terrain.getElevation(li,_t,hr):null,jt=q.layout.get("text-rotation-alignment")==="map";Ie(hn,li.posMatrix,le,ee,$u,Wu,Ge,Bt,jt,Se,li.toUnwrapped(),he.width,he.height,ju,st)}let Qu=li.posMatrix,ef=ee&&Tr||_f,Z=lt||ef?yo:$u,se=Ku,Pe=Ua&&q.paint.get(ee?"text-halo-width":"icon-halo-width").constantOr(1)!==0,Xe;Xe=Ua?hn.iconsInText?ra(Fo.kind,ml,rt,Ge,lt,ef,le,Qu,Z,se,ju,Sl,Pu,ri):mn(Fo.kind,ml,rt,Ge,lt,ef,le,Qu,Z,se,ju,ee,Sl,!0,ri):fo(Fo.kind,ml,rt,Ge,lt,ef,le,Qu,Z,se,ju,ee,Sl,ri);let Qe={program:Us,buffers:Zn,uniformValues:Xe,atlasTexture:Yl,atlasTextureIcon:nu,atlasInterpolation:Ol,atlasInterpolationIcon:ou,isSDF:Ua,hasHalo:Pe};if(Ht&&hn.canOverlap){nr=!0;let st=Zn.segments.get();for(let jt of st)Ir.push({segments:new a.a0([jt]),sortKey:jt.sortKey,state:Qe,terrainData:au})}else Ir.push({segments:Zn.segments,sortKey:0,state:Qe,terrainData:au})}nr&&Ir.sort((li,Ei)=>li.sortKey-Ei.sortKey);for(let li of Ir){let Ei=li.state;if(kr.activeTexture.set(Vr.TEXTURE0),Ei.atlasTexture.bind(Ei.atlasInterpolation,Vr.CLAMP_TO_EDGE),Ei.atlasTextureIcon&&(kr.activeTexture.set(Vr.TEXTURE1),Ei.atlasTextureIcon&&Ei.atlasTextureIcon.bind(Ei.atlasInterpolationIcon,Vr.CLAMP_TO_EDGE)),Ei.isSDF){let hn=Ei.uniformValues;Ei.hasHalo&&(hn.u_is_halo=1,Ca(Ei.buffers,li.segments,q,le,Ei.program,fr,ir,or,hn,li.terrainData)),hn.u_is_halo=0}Ca(Ei.buffers,li.segments,q,le,Ei.program,fr,ir,or,Ei.uniformValues,li.terrainData)}}function Ca(le,w,q,Q,ee,ue,Ve,tt,mt,Bt){let ir=Q.context;ee.draw(ir,ir.gl.TRIANGLES,ue,Ve,tt,rn.disabled,mt,Bt,q.id,le.layoutVertexBuffer,le.indexBuffer,w,q.paint,Q.transform.zoom,le.programConfigurations.get(q.id),le.dynamicLayoutVertexBuffer,le.opacityVertexBuffer)}function Es(le,w,q,Q){let ee=le.context,ue=ee.gl,Ve=Na.disabled,tt=new lo([ue.ONE,ue.ONE],a.aM.transparent,[!0,!0,!0,!0]),mt=w.getBucket(q);if(!mt)return;let Bt=Q.key,ir=q.heatmapFbos.get(Bt);ir||(ir=Ho(ee,w.tileSize,w.tileSize),q.heatmapFbos.set(Bt,ir)),ee.bindFramebuffer.set(ir.framebuffer),ee.viewport.set([0,0,w.tileSize,w.tileSize]),ee.clear({color:a.aM.transparent});let or=mt.programConfigurations.get(q.id),kr=le.useProgram("heatmap",or),Vr=le.style.map.terrain.getTerrainData(Q);kr.draw(ee,ue.TRIANGLES,sa.disabled,Ve,tt,rn.disabled,so(Q.posMatrix,w,le.transform.zoom,q.paint.get("heatmap-intensity")),Vr,q.id,mt.layoutVertexBuffer,mt.indexBuffer,mt.segments,q.paint,le.transform.zoom,or)}function As(le,w,q){let Q=le.context,ee=Q.gl;Q.setColorMode(le.colorModeForRenderPass());let ue=Wa(Q,w),Ve=q.key,tt=w.heatmapFbos.get(Ve);tt&&(Q.activeTexture.set(ee.TEXTURE0),ee.bindTexture(ee.TEXTURE_2D,tt.colorAttachment.get()),Q.activeTexture.set(ee.TEXTURE1),ue.bind(ee.LINEAR,ee.CLAMP_TO_EDGE),le.useProgram("heatmapTexture").draw(Q,ee.TRIANGLES,sa.disabled,Na.disabled,le.colorModeForRenderPass(),rn.disabled,Kr(le,w,0,1),null,w.id,le.rasterBoundsBuffer,le.quadTriangleIndexBuffer,le.rasterBoundsSegments,w.paint,le.transform.zoom),tt.destroy(),w.heatmapFbos.delete(Ve))}function Ho(le,w,q){var Q,ee;let ue=le.gl,Ve=ue.createTexture();ue.bindTexture(ue.TEXTURE_2D,Ve),ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_WRAP_S,ue.CLAMP_TO_EDGE),ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_WRAP_T,ue.CLAMP_TO_EDGE),ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_MIN_FILTER,ue.LINEAR),ue.texParameteri(ue.TEXTURE_2D,ue.TEXTURE_MAG_FILTER,ue.LINEAR);let tt=(Q=le.HALF_FLOAT)!==null&&Q!==void 0?Q:ue.UNSIGNED_BYTE,mt=(ee=le.RGBA16F)!==null&&ee!==void 0?ee:ue.RGBA;ue.texImage2D(ue.TEXTURE_2D,0,mt,w,q,0,ue.RGBA,tt,null);let Bt=le.createFramebuffer(w,q,!1,!1);return Bt.colorAttachment.set(Ve),Bt}function Wa(le,w){return w.colorRampTexture||(w.colorRampTexture=new m(le,w.colorRamp,le.gl.RGBA)),w.colorRampTexture}function Ao(le,w,q,Q,ee){if(!q||!Q||!Q.imageAtlas)return;let ue=Q.imageAtlas.patternPositions,Ve=ue[q.to.toString()],tt=ue[q.from.toString()];if(!Ve&&tt&&(Ve=tt),!tt&&Ve&&(tt=Ve),!Ve||!tt){let mt=ee.getPaintProperty(w);Ve=ue[mt],tt=ue[mt]}Ve&&tt&&le.setConstantPatternPositions(Ve,tt)}function ts(le,w,q,Q,ee,ue,Ve){let tt=le.context.gl,mt="fill-pattern",Bt=q.paint.get(mt),ir=Bt&&Bt.constantOr(1),or=q.getCrossfadeParameters(),kr,Vr,he,Se,Ne;Ve?(Vr=ir&&!q.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",kr=tt.LINES):(Vr=ir?"fillPattern":"fill",kr=tt.TRIANGLES);let Ge=Bt.constantOr(null);for(let lt of Q){let rt=w.getTile(lt);if(ir&&!rt.patternsLoaded())continue;let pt=rt.getBucket(q);if(!pt)continue;let Ht=pt.programConfigurations.get(q.id),nr=le.useProgram(Vr,Ht),fr=le.style.map.terrain&&le.style.map.terrain.getTerrainData(lt);ir&&(le.context.activeTexture.set(tt.TEXTURE0),rt.imageAtlasTexture.bind(tt.LINEAR,tt.CLAMP_TO_EDGE),Ht.updatePaintBuffers(or)),Ao(Ht,mt,Ge,rt,q);let Tr=fr?lt:null,Ir=le.translatePosMatrix(Tr?Tr.posMatrix:lt.posMatrix,rt,q.paint.get("fill-translate"),q.paint.get("fill-translate-anchor"));if(Ve){Se=pt.indexBuffer2,Ne=pt.segments2;let ri=[tt.drawingBufferWidth,tt.drawingBufferHeight];he=Vr==="fillOutlinePattern"&&ir?Un(Ir,le,or,rt,ri):Mn(Ir,ri)}else Se=pt.indexBuffer,Ne=pt.segments,he=ir?aa(Ir,le,or,rt):Xi(Ir);nr.draw(le.context,kr,ee,le.stencilModeForClipping(lt),ue,rn.disabled,he,fr,q.id,pt.layoutVertexBuffer,Se,Ne,q.paint,le.transform.zoom,Ht)}}function Wo(le,w,q,Q,ee,ue,Ve){let tt=le.context,mt=tt.gl,Bt="fill-extrusion-pattern",ir=q.paint.get(Bt),or=ir.constantOr(1),kr=q.getCrossfadeParameters(),Vr=q.paint.get("fill-extrusion-opacity"),he=ir.constantOr(null);for(let Se of Q){let Ne=w.getTile(Se),Ge=Ne.getBucket(q);if(!Ge)continue;let lt=le.style.map.terrain&&le.style.map.terrain.getTerrainData(Se),rt=Ge.programConfigurations.get(q.id),pt=le.useProgram(or?"fillExtrusionPattern":"fillExtrusion",rt);or&&(le.context.activeTexture.set(mt.TEXTURE0),Ne.imageAtlasTexture.bind(mt.LINEAR,mt.CLAMP_TO_EDGE),rt.updatePaintBuffers(kr)),Ao(rt,Bt,he,Ne,q);let Ht=le.translatePosMatrix(Se.posMatrix,Ne,q.paint.get("fill-extrusion-translate"),q.paint.get("fill-extrusion-translate-anchor")),nr=q.paint.get("fill-extrusion-vertical-gradient"),fr=or?ii(Ht,le,nr,Vr,Se,kr,Ne):en(Ht,le,nr,Vr);pt.draw(tt,tt.gl.TRIANGLES,ee,ue,Ve,rn.backCCW,fr,lt,q.id,Ge.layoutVertexBuffer,Ge.indexBuffer,Ge.segments,q.paint,le.transform.zoom,rt,le.style.map.terrain&&Ge.centroidVertexBuffer)}}function qa(le,w,q,Q,ee,ue,Ve){let tt=le.context,mt=tt.gl,Bt=q.fbo;if(!Bt)return;let ir=le.useProgram("hillshade"),or=le.style.map.terrain&&le.style.map.terrain.getTerrainData(w);tt.activeTexture.set(mt.TEXTURE0),mt.bindTexture(mt.TEXTURE_2D,Bt.colorAttachment.get()),ir.draw(tt,mt.TRIANGLES,ee,ue,Ve,rn.disabled,((kr,Vr,he,Se)=>{let Ne=he.paint.get("hillshade-shadow-color"),Ge=he.paint.get("hillshade-highlight-color"),lt=he.paint.get("hillshade-accent-color"),rt=he.paint.get("hillshade-illumination-direction")*(Math.PI/180);he.paint.get("hillshade-illumination-anchor")==="viewport"&&(rt-=kr.transform.angle);let pt=!kr.options.moving;return{u_matrix:Se?Se.posMatrix:kr.transform.calculatePosMatrix(Vr.tileID.toUnwrapped(),pt),u_image:0,u_latrange:Ia(0,Vr.tileID),u_light:[he.paint.get("hillshade-exaggeration"),rt],u_shadow:Ne,u_highlight:Ge,u_accent:lt}})(le,q,Q,or?w:null),or,Q.id,le.rasterBoundsBuffer,le.quadTriangleIndexBuffer,le.rasterBoundsSegments)}function ln(le,w,q,Q,ee,ue){let Ve=le.context,tt=Ve.gl,mt=w.dem;if(mt&&mt.data){let Bt=mt.dim,ir=mt.stride,or=mt.getPixels();if(Ve.activeTexture.set(tt.TEXTURE1),Ve.pixelStoreUnpackPremultiplyAlpha.set(!1),w.demTexture=w.demTexture||le.getTileTexture(ir),w.demTexture){let Vr=w.demTexture;Vr.update(or,{premultiply:!1}),Vr.bind(tt.NEAREST,tt.CLAMP_TO_EDGE)}else w.demTexture=new m(Ve,or,tt.RGBA,{premultiply:!1}),w.demTexture.bind(tt.NEAREST,tt.CLAMP_TO_EDGE);Ve.activeTexture.set(tt.TEXTURE0);let kr=w.fbo;if(!kr){let Vr=new m(Ve,{width:Bt,height:Bt,data:null},tt.RGBA);Vr.bind(tt.LINEAR,tt.CLAMP_TO_EDGE),kr=w.fbo=Ve.createFramebuffer(Bt,Bt,!0,!1),kr.colorAttachment.set(Vr.texture)}Ve.bindFramebuffer.set(kr.framebuffer),Ve.viewport.set([0,0,Bt,Bt]),le.useProgram("hillshadePrepare").draw(Ve,tt.TRIANGLES,Q,ee,ue,rn.disabled,((Vr,he)=>{let Se=he.stride,Ne=a.H();return a.aP(Ne,0,a.X,-a.X,0,0,1),a.J(Ne,Ne,[0,-a.X,0]),{u_matrix:Ne,u_image:1,u_dimension:[Se,Se],u_zoom:Vr.overscaledZ,u_unpack:he.getUnpackVector()}})(w.tileID,mt),null,q.id,le.rasterBoundsBuffer,le.quadTriangleIndexBuffer,le.rasterBoundsSegments),w.needsHillshadePrepare=!1}}function Bo(le,w,q,Q,ee,ue){let Ve=Q.paint.get("raster-fade-duration");if(!ue&&Ve>0){let tt=l.now(),mt=(tt-le.timeAdded)/Ve,Bt=w?(tt-w.timeAdded)/Ve:-1,ir=q.getSource(),or=ee.coveringZoomLevel({tileSize:ir.tileSize,roundZoom:ir.roundZoom}),kr=!w||Math.abs(w.tileID.overscaledZ-or)>Math.abs(le.tileID.overscaledZ-or),Vr=kr&&le.refreshedUponExpiration?1:a.ac(kr?mt:1-Bt,0,1);return le.refreshedUponExpiration&&mt>=1&&(le.refreshedUponExpiration=!1),w?{opacity:1,mix:1-Vr}:{opacity:Vr,mix:0}}return{opacity:1,mix:0}}let ko=new a.aM(1,0,0,1),oo=new a.aM(0,1,0,1),za=new a.aM(0,0,1,1),ea=new a.aM(1,0,1,1),rs=new a.aM(0,1,1,1);function $s(le,w,q,Q){Ds(le,0,w+q/2,le.transform.width,q,Q)}function us(le,w,q,Q){Ds(le,w-q/2,0,q,le.transform.height,Q)}function Ds(le,w,q,Q,ee,ue){let Ve=le.context,tt=Ve.gl;tt.enable(tt.SCISSOR_TEST),tt.scissor(w*le.pixelRatio,q*le.pixelRatio,Q*le.pixelRatio,ee*le.pixelRatio),Ve.clear({color:ue}),tt.disable(tt.SCISSOR_TEST)}function fl(le,w,q){let Q=le.context,ee=Q.gl,ue=q.posMatrix,Ve=le.useProgram("debug"),tt=sa.disabled,mt=Na.disabled,Bt=le.colorModeForRenderPass(),ir="$debug",or=le.style.map.terrain&&le.style.map.terrain.getTerrainData(q);Q.activeTexture.set(ee.TEXTURE0);let kr=w.getTileByID(q.key).latestRawTileData,Vr=Math.floor((kr&&kr.byteLength||0)/1024),he=w.getTile(q).tileSize,Se=512/Math.min(he,512)*(q.overscaledZ/le.transform.zoom)*.5,Ne=q.canonical.toString();q.overscaledZ!==q.canonical.z&&(Ne+=` => ${q.overscaledZ}`),function(Ge,lt){Ge.initDebugOverlayCanvas();let rt=Ge.debugOverlayCanvas,pt=Ge.context.gl,Ht=Ge.debugOverlayCanvas.getContext("2d");Ht.clearRect(0,0,rt.width,rt.height),Ht.shadowColor="white",Ht.shadowBlur=2,Ht.lineWidth=1.5,Ht.strokeStyle="white",Ht.textBaseline="top",Ht.font="bold 36px Open Sans, sans-serif",Ht.fillText(lt,5,5),Ht.strokeText(lt,5,5),Ge.debugOverlayTexture.update(rt),Ge.debugOverlayTexture.bind(pt.LINEAR,pt.CLAMP_TO_EDGE)}(le,`${Ne} ${Vr}kB`),Ve.draw(Q,ee.TRIANGLES,tt,mt,lo.alphaBlended,rn.disabled,oa(ue,a.aM.transparent,Se),null,ir,le.debugBuffer,le.quadTriangleIndexBuffer,le.debugSegments),Ve.draw(Q,ee.LINE_STRIP,tt,mt,Bt,rn.disabled,oa(ue,a.aM.red),or,ir,le.debugBuffer,le.tileBorderIndexBuffer,le.debugSegments)}function as(le,w,q){let Q=le.context,ee=Q.gl,ue=le.colorModeForRenderPass(),Ve=new sa(ee.LEQUAL,sa.ReadWrite,le.depthRangeFor3D),tt=le.useProgram("terrain"),mt=w.getTerrainMesh();Q.bindFramebuffer.set(null),Q.viewport.set([0,0,le.width,le.height]);for(let Bt of q){let ir=le.renderToTexture.getTexture(Bt),or=w.getTerrainData(Bt.tileID);Q.activeTexture.set(ee.TEXTURE0),ee.bindTexture(ee.TEXTURE_2D,ir.texture);let kr=le.transform.calculatePosMatrix(Bt.tileID.toUnwrapped()),Vr=w.getMeshFrameDelta(le.transform.zoom),he=le.transform.calculateFogMatrix(Bt.tileID.toUnwrapped()),Se=pr(kr,Vr,he,le.style.sky,le.transform.pitch);tt.draw(Q,ee.TRIANGLES,Ve,Na.disabled,ue,rn.backCCW,Se,or,"terrain",mt.vertexBuffer,mt.indexBuffer,mt.segments)}}class Ma{constructor(w,q,Q){this.vertexBuffer=w,this.indexBuffer=q,this.segments=Q}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class Qs{constructor(w,q){this.context=new eo(w),this.transform=q,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:a.an(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=it.maxUnderzooming+it.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new nn}resize(w,q,Q){if(this.width=Math.floor(w*Q),this.height=Math.floor(q*Q),this.pixelRatio=Q,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(let ee of this.style._order)this.style._layers[ee].resize()}setup(){let w=this.context,q=new a.aX;q.emplaceBack(0,0),q.emplaceBack(a.X,0),q.emplaceBack(0,a.X),q.emplaceBack(a.X,a.X),this.tileExtentBuffer=w.createVertexBuffer(q,bi.members),this.tileExtentSegments=a.a0.simpleSegment(0,0,4,2);let Q=new a.aX;Q.emplaceBack(0,0),Q.emplaceBack(a.X,0),Q.emplaceBack(0,a.X),Q.emplaceBack(a.X,a.X),this.debugBuffer=w.createVertexBuffer(Q,bi.members),this.debugSegments=a.a0.simpleSegment(0,0,4,5);let ee=new a.$;ee.emplaceBack(0,0,0,0),ee.emplaceBack(a.X,0,a.X,0),ee.emplaceBack(0,a.X,0,a.X),ee.emplaceBack(a.X,a.X,a.X,a.X),this.rasterBoundsBuffer=w.createVertexBuffer(ee,Ke.members),this.rasterBoundsSegments=a.a0.simpleSegment(0,0,4,2);let ue=new a.aX;ue.emplaceBack(0,0),ue.emplaceBack(1,0),ue.emplaceBack(0,1),ue.emplaceBack(1,1),this.viewportBuffer=w.createVertexBuffer(ue,bi.members),this.viewportSegments=a.a0.simpleSegment(0,0,4,2);let Ve=new a.aZ;Ve.emplaceBack(0),Ve.emplaceBack(1),Ve.emplaceBack(3),Ve.emplaceBack(2),Ve.emplaceBack(0),this.tileBorderIndexBuffer=w.createIndexBuffer(Ve);let tt=new a.aY;tt.emplaceBack(0,1,2),tt.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=w.createIndexBuffer(tt);let mt=this.context.gl;this.stencilClearMode=new Na({func:mt.ALWAYS,mask:0},0,255,mt.ZERO,mt.ZERO,mt.ZERO)}clearStencil(){let w=this.context,q=w.gl;this.nextStencilID=1,this.currentStencilSource=void 0;let Q=a.H();a.aP(Q,0,this.width,this.height,0,0,1),a.K(Q,Q,[q.drawingBufferWidth,q.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(w,q.TRIANGLES,sa.disabled,this.stencilClearMode,lo.disabled,rn.disabled,ka(Q),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(w,q){if(this.currentStencilSource===w.source||!w.isTileClipped()||!q||!q.length)return;this.currentStencilSource=w.source;let Q=this.context,ee=Q.gl;this.nextStencilID+q.length>256&&this.clearStencil(),Q.setColorMode(lo.disabled),Q.setDepthMode(sa.disabled);let ue=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(let Ve of q){let tt=this._tileClippingMaskIDs[Ve.key]=this.nextStencilID++,mt=this.style.map.terrain&&this.style.map.terrain.getTerrainData(Ve);ue.draw(Q,ee.TRIANGLES,sa.disabled,new Na({func:ee.ALWAYS,mask:0},tt,255,ee.KEEP,ee.KEEP,ee.REPLACE),lo.disabled,rn.disabled,ka(Ve.posMatrix),mt,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();let w=this.nextStencilID++,q=this.context.gl;return new Na({func:q.NOTEQUAL,mask:255},w,255,q.KEEP,q.KEEP,q.REPLACE)}stencilModeForClipping(w){let q=this.context.gl;return new Na({func:q.EQUAL,mask:255},this._tileClippingMaskIDs[w.key],0,q.KEEP,q.KEEP,q.REPLACE)}stencilConfigForOverlap(w){let q=this.context.gl,Q=w.sort((Ve,tt)=>tt.overscaledZ-Ve.overscaledZ),ee=Q[Q.length-1].overscaledZ,ue=Q[0].overscaledZ-ee+1;if(ue>1){this.currentStencilSource=void 0,this.nextStencilID+ue>256&&this.clearStencil();let Ve={};for(let tt=0;tt({u_sky_color:Ge.properties.get("sky-color"),u_horizon_color:Ge.properties.get("horizon-color"),u_horizon:(lt.height/2+lt.getHorizon())*rt,u_sky_horizon_blend:Ge.properties.get("sky-horizon-blend")*lt.height/2*rt}))(Bt,mt.style.map.transform,mt.pixelRatio),Vr=new sa(or.LEQUAL,sa.ReadWrite,[0,1]),he=Na.disabled,Se=mt.colorModeForRenderPass(),Ne=mt.useProgram("sky");if(!Bt.mesh){let Ge=new a.aX;Ge.emplaceBack(-1,-1),Ge.emplaceBack(1,-1),Ge.emplaceBack(1,1),Ge.emplaceBack(-1,1);let lt=new a.aY;lt.emplaceBack(0,1,2),lt.emplaceBack(0,2,3),Bt.mesh=new Ma(ir.createVertexBuffer(Ge,bi.members),ir.createIndexBuffer(lt),a.a0.simpleSegment(0,0,Ge.length,lt.length))}Ne.draw(ir,or.TRIANGLES,Vr,he,Se,rn.disabled,kr,void 0,"sky",Bt.mesh.vertexBuffer,Bt.mesh.indexBuffer,Bt.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=q.showOverdrawInspector,this.depthRangeFor3D=[0,1-(w._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=Q.length-1;this.currentLayer>=0;this.currentLayer--){let mt=this.style._layers[Q[this.currentLayer]],Bt=ee[mt.source],ir=ue[mt.source];this._renderTileClippingMasks(mt,ir),this.renderLayer(this,Bt,mt,ir)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayerNe.source&&!Ne.isHidden(ir)?[Bt.sourceCaches[Ne.source]]:[]),Vr=kr.filter(Ne=>Ne.getSource().type==="vector"),he=kr.filter(Ne=>Ne.getSource().type!=="vector"),Se=Ne=>{(!or||or.getSource().maxzoomSe(Ne)),or||he.forEach(Ne=>Se(Ne)),or}(this.style,this.transform.zoom);mt&&function(Bt,ir,or){for(let kr=0;kr0),ee&&(a.b0(q,Q),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(ue,Ve){let tt=ue.context,mt=tt.gl,Bt=lo.unblended,ir=new sa(mt.LEQUAL,sa.ReadWrite,[0,1]),or=Ve.getTerrainMesh(),kr=Ve.sourceCache.getRenderableTiles(),Vr=ue.useProgram("terrainDepth");tt.bindFramebuffer.set(Ve.getFramebuffer("depth").framebuffer),tt.viewport.set([0,0,ue.width/devicePixelRatio,ue.height/devicePixelRatio]),tt.clear({color:a.aM.transparent,depth:1});for(let he of kr){let Se=Ve.getTerrainData(he.tileID),Ne={u_matrix:ue.transform.calculatePosMatrix(he.tileID.toUnwrapped()),u_ele_delta:Ve.getMeshFrameDelta(ue.transform.zoom)};Vr.draw(tt,mt.TRIANGLES,ir,Na.disabled,Bt,rn.backCCW,Ne,Se,"terrain",or.vertexBuffer,or.indexBuffer,or.segments)}tt.bindFramebuffer.set(null),tt.viewport.set([0,0,ue.width,ue.height])}(this,this.style.map.terrain),function(ue,Ve){let tt=ue.context,mt=tt.gl,Bt=lo.unblended,ir=new sa(mt.LEQUAL,sa.ReadWrite,[0,1]),or=Ve.getTerrainMesh(),kr=Ve.getCoordsTexture(),Vr=Ve.sourceCache.getRenderableTiles(),he=ue.useProgram("terrainCoords");tt.bindFramebuffer.set(Ve.getFramebuffer("coords").framebuffer),tt.viewport.set([0,0,ue.width/devicePixelRatio,ue.height/devicePixelRatio]),tt.clear({color:a.aM.transparent,depth:1}),Ve.coordsIndex=[];for(let Se of Vr){let Ne=Ve.getTerrainData(Se.tileID);tt.activeTexture.set(mt.TEXTURE0),mt.bindTexture(mt.TEXTURE_2D,kr.texture);let Ge={u_matrix:ue.transform.calculatePosMatrix(Se.tileID.toUnwrapped()),u_terrain_coords_id:(255-Ve.coordsIndex.length)/255,u_texture:0,u_ele_delta:Ve.getMeshFrameDelta(ue.transform.zoom)};he.draw(tt,mt.TRIANGLES,ir,Na.disabled,Bt,rn.backCCW,Ge,Ne,"terrain",or.vertexBuffer,or.indexBuffer,or.segments),Ve.coordsIndex.push(Se.tileID.key)}tt.bindFramebuffer.set(null),tt.viewport.set([0,0,ue.width,ue.height])}(this,this.style.map.terrain))}renderLayer(w,q,Q,ee){if(!Q.isHidden(this.transform.zoom)&&(Q.type==="background"||Q.type==="custom"||(ee||[]).length))switch(this.id=Q.id,Q.type){case"symbol":(function(ue,Ve,tt,mt,Bt){if(ue.renderPass!=="translucent")return;let ir=Na.disabled,or=ue.colorModeForRenderPass();(tt._unevaluatedLayout.hasValue("text-variable-anchor")||tt._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function(kr,Vr,he,Se,Ne,Ge,lt,rt,pt){let Ht=Vr.transform,nr=Vi(),fr=Ne==="map",Tr=Ge==="map";for(let Ir of kr){let ri=Se.getTile(Ir),li=ri.getBucket(he);if(!li||!li.text||!li.text.segments.get().length)continue;let Ei=a.ag(li.textSizeData,Ht.zoom),hn=Di(ri,1,Vr.transform.zoom),Zn=yr(Ir.posMatrix,Tr,fr,Vr.transform,hn),Yn=he.layout.get("icon-text-fit")!=="none"&&li.hasIconData();if(Ei){let Ua=Math.pow(2,Ht.zoom-ri.tileID.overscaledZ),Fo=Vr.style.map.terrain?(Us,ml)=>Vr.style.map.terrain.getElevation(Ir,Us,ml):null,vl=nr.translatePosition(Ht,ri,lt,rt);Dn(li,fr,Tr,pt,Ht,Zn,Ir.posMatrix,Ua,Ei,Yn,nr,vl,Ir.toUnwrapped(),Fo)}}}(mt,ue,tt,Ve,tt.layout.get("text-rotation-alignment"),tt.layout.get("text-pitch-alignment"),tt.paint.get("text-translate"),tt.paint.get("text-translate-anchor"),Bt),tt.paint.get("icon-opacity").constantOr(1)!==0&&Ws(ue,Ve,tt,mt,!1,tt.paint.get("icon-translate"),tt.paint.get("icon-translate-anchor"),tt.layout.get("icon-rotation-alignment"),tt.layout.get("icon-pitch-alignment"),tt.layout.get("icon-keep-upright"),ir,or),tt.paint.get("text-opacity").constantOr(1)!==0&&Ws(ue,Ve,tt,mt,!0,tt.paint.get("text-translate"),tt.paint.get("text-translate-anchor"),tt.layout.get("text-rotation-alignment"),tt.layout.get("text-pitch-alignment"),tt.layout.get("text-keep-upright"),ir,or),Ve.map.showCollisionBoxes&&(to(ue,Ve,tt,mt,!0),to(ue,Ve,tt,mt,!1))})(w,q,Q,ee,this.style.placement.variableOffsets);break;case"circle":(function(ue,Ve,tt,mt){if(ue.renderPass!=="translucent")return;let Bt=tt.paint.get("circle-opacity"),ir=tt.paint.get("circle-stroke-width"),or=tt.paint.get("circle-stroke-opacity"),kr=!tt.layout.get("circle-sort-key").isConstant();if(Bt.constantOr(1)===0&&(ir.constantOr(1)===0||or.constantOr(1)===0))return;let Vr=ue.context,he=Vr.gl,Se=ue.depthModeForSublayer(0,sa.ReadOnly),Ne=Na.disabled,Ge=ue.colorModeForRenderPass(),lt=[];for(let rt=0;rtrt.sortKey-pt.sortKey);for(let rt of lt){let{programConfiguration:pt,program:Ht,layoutVertexBuffer:nr,indexBuffer:fr,uniformValues:Tr,terrainData:Ir}=rt.state;Ht.draw(Vr,he.TRIANGLES,Se,Ne,Ge,rn.disabled,Tr,Ir,tt.id,nr,fr,rt.segments,tt.paint,ue.transform.zoom,pt)}})(w,q,Q,ee);break;case"heatmap":(function(ue,Ve,tt,mt){if(tt.paint.get("heatmap-opacity")===0)return;let Bt=ue.context;if(ue.style.map.terrain){for(let ir of mt){let or=Ve.getTile(ir);Ve.hasRenderableParent(ir)||(ue.renderPass==="offscreen"?Es(ue,or,tt,ir):ue.renderPass==="translucent"&&As(ue,tt,ir))}Bt.viewport.set([0,0,ue.width,ue.height])}else ue.renderPass==="offscreen"?function(ir,or,kr,Vr){let he=ir.context,Se=he.gl,Ne=Na.disabled,Ge=new lo([Se.ONE,Se.ONE],a.aM.transparent,[!0,!0,!0,!0]);(function(lt,rt,pt){let Ht=lt.gl;lt.activeTexture.set(Ht.TEXTURE1),lt.viewport.set([0,0,rt.width/4,rt.height/4]);let nr=pt.heatmapFbos.get(a.aU);nr?(Ht.bindTexture(Ht.TEXTURE_2D,nr.colorAttachment.get()),lt.bindFramebuffer.set(nr.framebuffer)):(nr=Ho(lt,rt.width/4,rt.height/4),pt.heatmapFbos.set(a.aU,nr))})(he,ir,kr),he.clear({color:a.aM.transparent});for(let lt=0;lt20&&ir.texParameterf(ir.TEXTURE_2D,Bt.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,Bt.extTextureFilterAnisotropicMax);let li=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(lt),Ei=li?lt:null,hn=Ei?Ei.posMatrix:ue.transform.calculatePosMatrix(lt.toUnwrapped(),Ge),Zn=ls(hn,Ir||[0,0],Tr||1,fr,tt);or instanceof Ct?kr.draw(Bt,ir.TRIANGLES,rt,Na.disabled,Vr,rn.disabled,Zn,li,tt.id,or.boundsBuffer,ue.quadTriangleIndexBuffer,or.boundsSegments):kr.draw(Bt,ir.TRIANGLES,rt,he[lt.overscaledZ],Vr,rn.disabled,Zn,li,tt.id,ue.rasterBoundsBuffer,ue.quadTriangleIndexBuffer,ue.rasterBoundsSegments)}})(w,q,Q,ee);break;case"background":(function(ue,Ve,tt,mt){let Bt=tt.paint.get("background-color"),ir=tt.paint.get("background-opacity");if(ir===0)return;let or=ue.context,kr=or.gl,Vr=ue.transform,he=Vr.tileSize,Se=tt.paint.get("background-pattern");if(ue.isPatternMissing(Se))return;let Ne=!Se&&Bt.a===1&&ir===1&&ue.opaquePassEnabledForLayer()?"opaque":"translucent";if(ue.renderPass!==Ne)return;let Ge=Na.disabled,lt=ue.depthModeForSublayer(0,Ne==="opaque"?sa.ReadWrite:sa.ReadOnly),rt=ue.colorModeForRenderPass(),pt=ue.useProgram(Se?"backgroundPattern":"background"),Ht=mt||Vr.coveringTiles({tileSize:he,terrain:ue.style.map.terrain});Se&&(or.activeTexture.set(kr.TEXTURE0),ue.imageManager.bind(ue.context));let nr=tt.getCrossfadeParameters();for(let fr of Ht){let Tr=mt?fr.posMatrix:ue.transform.calculatePosMatrix(fr.toUnwrapped()),Ir=Se?ws(Tr,ir,ue,Se,{tileID:fr,tileSize:he},nr):wa(Tr,ir,Bt),ri=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(fr);pt.draw(or,kr.TRIANGLES,lt,Ge,rt,rn.disabled,Ir,ri,tt.id,ue.tileExtentBuffer,ue.quadTriangleIndexBuffer,ue.tileExtentSegments)}})(w,0,Q,ee);break;case"custom":(function(ue,Ve,tt){let mt=ue.context,Bt=tt.implementation;if(ue.renderPass==="offscreen"){let ir=Bt.prerender;ir&&(ue.setCustomLayerDefaults(),mt.setColorMode(ue.colorModeForRenderPass()),ir.call(Bt,mt.gl,ue.transform.customLayerMatrix()),mt.setDirty(),ue.setBaseState())}else if(ue.renderPass==="translucent"){ue.setCustomLayerDefaults(),mt.setColorMode(ue.colorModeForRenderPass()),mt.setStencilMode(Na.disabled);let ir=Bt.renderingMode==="3d"?new sa(ue.context.gl.LEQUAL,sa.ReadWrite,ue.depthRangeFor3D):ue.depthModeForSublayer(0,sa.ReadOnly);mt.setDepthMode(ir),Bt.render(mt.gl,ue.transform.customLayerMatrix(),{farZ:ue.transform.farZ,nearZ:ue.transform.nearZ,fov:ue.transform._fov,modelViewProjectionMatrix:ue.transform.modelViewProjectionMatrix,projectionMatrix:ue.transform.projectionMatrix}),mt.setDirty(),ue.setBaseState(),mt.bindFramebuffer.set(null)}})(w,0,Q)}}translatePosMatrix(w,q,Q,ee,ue){if(!Q[0]&&!Q[1])return w;let Ve=ue?ee==="map"?this.transform.angle:0:ee==="viewport"?-this.transform.angle:0;if(Ve){let Bt=Math.sin(Ve),ir=Math.cos(Ve);Q=[Q[0]*ir-Q[1]*Bt,Q[0]*Bt+Q[1]*ir]}let tt=[ue?Q[0]:Di(q,Q[0],this.transform.zoom),ue?Q[1]:Di(q,Q[1],this.transform.zoom),0],mt=new Float32Array(16);return a.J(mt,w,tt),mt}saveTileTexture(w){let q=this._tileTextures[w.size[0]];q?q.push(w):this._tileTextures[w.size[0]]=[w]}getTileTexture(w){let q=this._tileTextures[w];return q&&q.length>0?q.pop():null}isPatternMissing(w){if(!w)return!1;if(!w.from||!w.to)return!0;let q=this.imageManager.getPattern(w.from.toString()),Q=this.imageManager.getPattern(w.to.toString());return!q||!Q}useProgram(w,q){this.cache=this.cache||{};let Q=w+(q?q.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[Q]||(this.cache[Q]=new Zr(this.context,Xr[w],q,Co[w],this._showOverdrawInspector,this.style.map.terrain)),this.cache[Q]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){let w=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(w.FUNC_ADD)}initDebugOverlayCanvas(){this.debugOverlayCanvas==null&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new m(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){let{drawingBufferWidth:w,drawingBufferHeight:q}=this.context.gl;return this.width!==w||this.height!==q}}class ho{constructor(w,q){this.points=w,this.planes=q}static fromInvProjectionMatrix(w,q,Q){let ee=Math.pow(2,Q),ue=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map(tt=>{let mt=1/(tt=a.af([],tt,w))[3]/q*ee;return a.b1(tt,tt,[mt,mt,1/tt[3],mt])}),Ve=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(tt=>{let mt=function(kr,Vr){var he=Vr[0],Se=Vr[1],Ne=Vr[2],Ge=he*he+Se*Se+Ne*Ne;return Ge>0&&(Ge=1/Math.sqrt(Ge)),kr[0]=Vr[0]*Ge,kr[1]=Vr[1]*Ge,kr[2]=Vr[2]*Ge,kr}([],function(kr,Vr,he){var Se=Vr[0],Ne=Vr[1],Ge=Vr[2],lt=he[0],rt=he[1],pt=he[2];return kr[0]=Ne*pt-Ge*rt,kr[1]=Ge*lt-Se*pt,kr[2]=Se*rt-Ne*lt,kr}([],L([],ue[tt[0]],ue[tt[1]]),L([],ue[tt[2]],ue[tt[1]]))),Bt=-((ir=mt)[0]*(or=ue[tt[1]])[0]+ir[1]*or[1]+ir[2]*or[2]);var ir,or;return mt.concat(Bt)});return new ho(ue,Ve)}}class gs{constructor(w,q){this.min=w,this.max=q,this.center=function(Q,ee,ue){return Q[0]=.5*ee[0],Q[1]=.5*ee[1],Q[2]=.5*ee[2],Q}([],function(Q,ee,ue){return Q[0]=ee[0]+ue[0],Q[1]=ee[1]+ue[1],Q[2]=ee[2]+ue[2],Q}([],this.min,this.max))}quadrant(w){let q=[w%2==0,w<2],Q=E(this.min),ee=E(this.max);for(let ue=0;ue=0&&Ve++;if(Ve===0)return 0;Ve!==q.length&&(Q=!1)}if(Q)return 2;for(let ee=0;ee<3;ee++){let ue=Number.MAX_VALUE,Ve=-Number.MAX_VALUE;for(let tt=0;ttthis.max[ee]-this.min[ee])return 0}return 1}}class Vo{constructor(w=0,q=0,Q=0,ee=0){if(isNaN(w)||w<0||isNaN(q)||q<0||isNaN(Q)||Q<0||isNaN(ee)||ee<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=w,this.bottom=q,this.left=Q,this.right=ee}interpolate(w,q,Q){return q.top!=null&&w.top!=null&&(this.top=a.y.number(w.top,q.top,Q)),q.bottom!=null&&w.bottom!=null&&(this.bottom=a.y.number(w.bottom,q.bottom,Q)),q.left!=null&&w.left!=null&&(this.left=a.y.number(w.left,q.left,Q)),q.right!=null&&w.right!=null&&(this.right=a.y.number(w.right,q.right,Q)),this}getCenter(w,q){let Q=a.ac((this.left+w-this.right)/2,0,w),ee=a.ac((this.top+q-this.bottom)/2,0,q);return new a.P(Q,ee)}equals(w){return this.top===w.top&&this.bottom===w.bottom&&this.left===w.left&&this.right===w.right}clone(){return new Vo(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}let Do=85.051129;class Lo{constructor(w,q,Q,ee,ue){this.tileSize=512,this._renderWorldCopies=ue===void 0||!!ue,this._minZoom=w||0,this._maxZoom=q||22,this._minPitch=Q==null?0:Q,this._maxPitch=ee==null?60:ee,this.setMaxBounds(),this.width=0,this.height=0,this._center=new a.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Vo,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){let w=new Lo(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return w.apply(this),w}apply(w){this.tileSize=w.tileSize,this.latRange=w.latRange,this.lngRange=w.lngRange,this.width=w.width,this.height=w.height,this._center=w._center,this._elevation=w._elevation,this.minElevationForCurrentTile=w.minElevationForCurrentTile,this.zoom=w.zoom,this.angle=w.angle,this._fov=w._fov,this._pitch=w._pitch,this._unmodified=w._unmodified,this._edgeInsets=w._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(w){this._minZoom!==w&&(this._minZoom=w,this.zoom=Math.max(this.zoom,w))}get maxZoom(){return this._maxZoom}set maxZoom(w){this._maxZoom!==w&&(this._maxZoom=w,this.zoom=Math.min(this.zoom,w))}get minPitch(){return this._minPitch}set minPitch(w){this._minPitch!==w&&(this._minPitch=w,this.pitch=Math.max(this.pitch,w))}get maxPitch(){return this._maxPitch}set maxPitch(w){this._maxPitch!==w&&(this._maxPitch=w,this.pitch=Math.min(this.pitch,w))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(w){w===void 0?w=!0:w===null&&(w=!1),this._renderWorldCopies=w}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new a.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(w){let q=-a.b3(w,-180,180)*Math.PI/180;this.angle!==q&&(this._unmodified=!1,this.angle=q,this._calcMatrices(),this.rotationMatrix=function(){var Q=new a.A(4);return a.A!=Float32Array&&(Q[1]=0,Q[2]=0),Q[0]=1,Q[3]=1,Q}(),function(Q,ee,ue){var Ve=ee[0],tt=ee[1],mt=ee[2],Bt=ee[3],ir=Math.sin(ue),or=Math.cos(ue);Q[0]=Ve*or+mt*ir,Q[1]=tt*or+Bt*ir,Q[2]=Ve*-ir+mt*or,Q[3]=tt*-ir+Bt*or}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(w){let q=a.ac(w,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==q&&(this._unmodified=!1,this._pitch=q,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(w){w=Math.max(.01,Math.min(60,w)),this._fov!==w&&(this._unmodified=!1,this._fov=w/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(w){let q=Math.min(Math.max(w,this.minZoom),this.maxZoom);this._zoom!==q&&(this._unmodified=!1,this._zoom=q,this.tileZoom=Math.max(0,Math.floor(q)),this.scale=this.zoomScale(q),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(w){w.lat===this._center.lat&&w.lng===this._center.lng||(this._unmodified=!1,this._center=w,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(w){w!==this._elevation&&(this._elevation=w,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(w){this._edgeInsets.equals(w)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,w,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(w){return this._edgeInsets.equals(w)}interpolatePadding(w,q,Q){this._unmodified=!1,this._edgeInsets.interpolate(w,q,Q),this._constrain(),this._calcMatrices()}coveringZoomLevel(w){let q=(w.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/w.tileSize));return Math.max(0,q)}getVisibleUnwrappedCoordinates(w){let q=[new a.b4(0,w)];if(this._renderWorldCopies){let Q=this.pointCoordinate(new a.P(0,0)),ee=this.pointCoordinate(new a.P(this.width,0)),ue=this.pointCoordinate(new a.P(this.width,this.height)),Ve=this.pointCoordinate(new a.P(0,this.height)),tt=Math.floor(Math.min(Q.x,ee.x,ue.x,Ve.x)),mt=Math.floor(Math.max(Q.x,ee.x,ue.x,Ve.x)),Bt=1;for(let ir=tt-Bt;ir<=mt+Bt;ir++)ir!==0&&q.push(new a.b4(ir,w))}return q}coveringTiles(w){var q,Q;let ee=this.coveringZoomLevel(w),ue=ee;if(w.minzoom!==void 0&&eew.maxzoom&&(ee=w.maxzoom);let Ve=this.pointCoordinate(this.getCameraPoint()),tt=a.Z.fromLngLat(this.center),mt=Math.pow(2,ee),Bt=[mt*Ve.x,mt*Ve.y,0],ir=[mt*tt.x,mt*tt.y,0],or=ho.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,ee),kr=w.minzoom||0;!w.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(kr=ee);let Vr=w.terrain?2/Math.min(this.tileSize,w.tileSize)*this.tileSize:3,he=rt=>({aabb:new gs([rt*mt,0,0],[(rt+1)*mt,mt,0]),zoom:0,x:0,y:0,wrap:rt,fullyVisible:!1}),Se=[],Ne=[],Ge=ee,lt=w.reparseOverscaled?ue:ee;if(this._renderWorldCopies)for(let rt=1;rt<=3;rt++)Se.push(he(-rt)),Se.push(he(rt));for(Se.push(he(0));Se.length>0;){let rt=Se.pop(),pt=rt.x,Ht=rt.y,nr=rt.fullyVisible;if(!nr){let li=rt.aabb.intersects(or);if(li===0)continue;nr=li===2}let fr=w.terrain?Bt:ir,Tr=rt.aabb.distanceX(fr),Ir=rt.aabb.distanceY(fr),ri=Math.max(Math.abs(Tr),Math.abs(Ir));if(rt.zoom===Ge||ri>Vr+(1<=kr){let li=Ge-rt.zoom,Ei=Bt[0]-.5-(pt<>1),Zn=rt.zoom+1,Yn=rt.aabb.quadrant(li);if(w.terrain){let Ua=new a.S(Zn,rt.wrap,Zn,Ei,hn),Fo=w.terrain.getMinMaxElevation(Ua),vl=(q=Fo.minElevation)!==null&&q!==void 0?q:this.elevation,Us=(Q=Fo.maxElevation)!==null&&Q!==void 0?Q:this.elevation;Yn=new gs([Yn.min[0],Yn.min[1],vl],[Yn.max[0],Yn.max[1],Us])}Se.push({aabb:Yn,zoom:Zn,x:Ei,y:hn,wrap:rt.wrap,fullyVisible:nr})}}return Ne.sort((rt,pt)=>rt.distanceSq-pt.distanceSq).map(rt=>rt.tileID)}resize(w,q){this.width=w,this.height=q,this.pixelsToGLUnits=[2/w,-2/q],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(w){return Math.pow(2,w)}scaleZoom(w){return Math.log(w)/Math.LN2}project(w){let q=a.ac(w.lat,-85.051129,Do);return new a.P(a.O(w.lng)*this.worldSize,a.Q(q)*this.worldSize)}unproject(w){return new a.Z(w.x/this.worldSize,w.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(w){let q=this.elevation,Q=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,ee=this.pointLocation(this.centerPoint,w),ue=w.getElevationForLngLatZoom(ee,this.tileZoom);if(!(this.elevation-ue))return;let Ve=Q+q-ue,tt=Math.cos(this._pitch)*this.cameraToCenterDistance/Ve/a.b5(1,ee.lat),mt=this.scaleZoom(tt/this.tileSize);this._elevation=ue,this._center=ee,this.zoom=mt}setLocationAtPoint(w,q){let Q=this.pointCoordinate(q),ee=this.pointCoordinate(this.centerPoint),ue=this.locationCoordinate(w),Ve=new a.Z(ue.x-(Q.x-ee.x),ue.y-(Q.y-ee.y));this.center=this.coordinateLocation(Ve),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(w,q){return q?this.coordinatePoint(this.locationCoordinate(w),q.getElevationForLngLatZoom(w,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(w))}pointLocation(w,q){return this.coordinateLocation(this.pointCoordinate(w,q))}locationCoordinate(w){return a.Z.fromLngLat(w)}coordinateLocation(w){return w&&w.toLngLat()}pointCoordinate(w,q){if(q){let kr=q.pointCoordinate(w);if(kr!=null)return kr}let Q=[w.x,w.y,0,1],ee=[w.x,w.y,1,1];a.af(Q,Q,this.pixelMatrixInverse),a.af(ee,ee,this.pixelMatrixInverse);let ue=Q[3],Ve=ee[3],tt=Q[1]/ue,mt=ee[1]/Ve,Bt=Q[2]/ue,ir=ee[2]/Ve,or=Bt===ir?0:(0-Bt)/(ir-Bt);return new a.Z(a.y.number(Q[0]/ue,ee[0]/Ve,or)/this.worldSize,a.y.number(tt,mt,or)/this.worldSize)}coordinatePoint(w,q=0,Q=this.pixelMatrix){let ee=[w.x*this.worldSize,w.y*this.worldSize,q,1];return a.af(ee,ee,Q),new a.P(ee[0]/ee[3],ee[1]/ee[3])}getBounds(){let w=Math.max(0,this.height/2-this.getHorizon());return new ce().extend(this.pointLocation(new a.P(0,w))).extend(this.pointLocation(new a.P(this.width,w))).extend(this.pointLocation(new a.P(this.width,this.height))).extend(this.pointLocation(new a.P(0,this.height)))}getMaxBounds(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new ce([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(w){w?(this.lngRange=[w.getWest(),w.getEast()],this.latRange=[w.getSouth(),w.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,Do])}calculateTileMatrix(w){let q=w.canonical,Q=this.worldSize/this.zoomScale(q.z),ee=q.x+Math.pow(2,q.z)*w.wrap,ue=a.an(new Float64Array(16));return a.J(ue,ue,[ee*Q,q.y*Q,0]),a.K(ue,ue,[Q/a.X,Q/a.X,1]),ue}calculatePosMatrix(w,q=!1){let Q=w.key,ee=q?this._alignedPosMatrixCache:this._posMatrixCache;if(ee[Q])return ee[Q];let ue=this.calculateTileMatrix(w);return a.L(ue,q?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,ue),ee[Q]=new Float32Array(ue),ee[Q]}calculateFogMatrix(w){let q=w.key,Q=this._fogMatrixCache;if(Q[q])return Q[q];let ee=this.calculateTileMatrix(w);return a.L(ee,this.fogMatrix,ee),Q[q]=new Float32Array(ee),Q[q]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(w,q){q=a.ac(+q,this.minZoom,this.maxZoom);let Q={center:new a.N(w.lng,w.lat),zoom:q},ee=this.lngRange;if(!this._renderWorldCopies&&ee===null){let rt=179.9999999999;ee=[-rt,rt]}let ue=this.tileSize*this.zoomScale(Q.zoom),Ve=0,tt=ue,mt=0,Bt=ue,ir=0,or=0,{x:kr,y:Vr}=this.size;if(this.latRange){let rt=this.latRange;Ve=a.Q(rt[1])*ue,tt=a.Q(rt[0])*ue,tt-Vett&&(Ge=tt-rt)}if(ee){let rt=(mt+Bt)/2,pt=he;this._renderWorldCopies&&(pt=a.b3(he,rt-ue/2,rt+ue/2));let Ht=kr/2;pt-HtBt&&(Ne=Bt-Ht)}if(Ne!==void 0||Ge!==void 0){let rt=new a.P(Ne!=null?Ne:he,Ge!=null?Ge:Se);Q.center=this.unproject.call({worldSize:ue},rt).wrap()}return Q}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;let w=this._unmodified,{center:q,zoom:Q}=this.getConstrained(this.center,this.zoom);this.center=q,this.zoom=Q,this._unmodified=w,this._constraining=!1}_calcMatrices(){if(!this.height)return;let w=this.centerOffset,q=this.point.x,Q=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=a.b5(1,this.center.lat)*this.worldSize;let ee=a.an(new Float64Array(16));a.K(ee,ee,[this.width/2,-this.height/2,1]),a.J(ee,ee,[1,-1,0]),this.labelPlaneMatrix=ee,ee=a.an(new Float64Array(16)),a.K(ee,ee,[1,-1,1]),a.J(ee,ee,[-1,-1,0]),a.K(ee,ee,[2/this.width,2/this.height,1]),this.glCoordMatrix=ee;let ue=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),Ve=Math.min(this.elevation,this.minElevationForCurrentTile),tt=ue-Ve*this._pixelPerMeter/Math.cos(this._pitch),mt=Ve<0?tt:ue,Bt=Math.PI/2+this._pitch,ir=this._fov*(.5+w.y/this.height),or=Math.sin(ir)*mt/Math.sin(a.ac(Math.PI-Bt-ir,.01,Math.PI-.01)),kr=this.getHorizon(),Vr=2*Math.atan(kr/this.cameraToCenterDistance)*(.5+w.y/(2*kr)),he=Math.sin(Vr)*mt/Math.sin(a.ac(Math.PI-Bt-Vr,.01,Math.PI-.01)),Se=Math.min(or,he);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*Se+mt),this.nearZ=this.height/50,ee=new Float64Array(16),a.b6(ee,this._fov,this.width/this.height,this.nearZ,this.farZ),ee[8]=2*-w.x/this.width,ee[9]=2*w.y/this.height,this.projectionMatrix=a.ae(ee),a.K(ee,ee,[1,-1,1]),a.J(ee,ee,[0,0,-this.cameraToCenterDistance]),a.b7(ee,ee,this._pitch),a.ad(ee,ee,this.angle),a.J(ee,ee,[-q,-Q,0]),this.mercatorMatrix=a.K([],ee,[this.worldSize,this.worldSize,this.worldSize]),a.K(ee,ee,[1,1,this._pixelPerMeter]),this.pixelMatrix=a.L(new Float64Array(16),this.labelPlaneMatrix,ee),a.J(ee,ee,[0,0,-this.elevation]),this.modelViewProjectionMatrix=ee,this.invModelViewProjectionMatrix=a.as([],ee),this.fogMatrix=new Float64Array(16),a.b6(this.fogMatrix,this._fov,this.width/this.height,ue,this.farZ),this.fogMatrix[8]=2*-w.x/this.width,this.fogMatrix[9]=2*w.y/this.height,a.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),a.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),a.b7(this.fogMatrix,this.fogMatrix,this._pitch),a.ad(this.fogMatrix,this.fogMatrix,this.angle),a.J(this.fogMatrix,this.fogMatrix,[-q,-Q,0]),a.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),a.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=a.L(new Float64Array(16),this.labelPlaneMatrix,ee);let Ne=this.width%2/2,Ge=this.height%2/2,lt=Math.cos(this.angle),rt=Math.sin(this.angle),pt=q-Math.round(q)+lt*Ne+rt*Ge,Ht=Q-Math.round(Q)+lt*Ge+rt*Ne,nr=new Float64Array(ee);if(a.J(nr,nr,[pt>.5?pt-1:pt,Ht>.5?Ht-1:Ht,0]),this.alignedModelViewProjectionMatrix=nr,ee=a.as(new Float64Array(16),this.pixelMatrix),!ee)throw new Error("failed to invert matrix");this.pixelMatrixInverse=ee,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;let w=this.pointCoordinate(new a.P(0,0)),q=[w.x*this.worldSize,w.y*this.worldSize,0,1];return a.af(q,q,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){let w=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new a.P(0,w))}getCameraQueryGeometry(w){let q=this.getCameraPoint();if(w.length===1)return[w[0],q];{let Q=q.x,ee=q.y,ue=q.x,Ve=q.y;for(let tt of w)Q=Math.min(Q,tt.x),ee=Math.min(ee,tt.y),ue=Math.max(ue,tt.x),Ve=Math.max(Ve,tt.y);return[new a.P(Q,ee),new a.P(ue,ee),new a.P(ue,Ve),new a.P(Q,Ve),new a.P(Q,ee)]}}lngLatToCameraDepth(w,q){let Q=this.locationCoordinate(w),ee=[Q.x*this.worldSize,Q.y*this.worldSize,q,1];return a.af(ee,ee,this.modelViewProjectionMatrix),ee[2]/ee[3]}}function xs(le,w){let q,Q=!1,ee=null,ue=null,Ve=()=>{ee=null,Q&&(le.apply(ue,q),ee=setTimeout(Ve,w),Q=!1)};return(...tt)=>(Q=!0,ue=this,q=tt,ee||Ve(),ee)}class ks{constructor(w){this._getCurrentHash=()=>{let q=window.location.hash.replace("#","");if(this._hashName){let Q;return q.split("&").map(ee=>ee.split("=")).forEach(ee=>{ee[0]===this._hashName&&(Q=ee)}),(Q&&Q[1]||"").split("/")}return q.split("/")},this._onHashChange=()=>{let q=this._getCurrentHash();if(q.length>=3&&!q.some(Q=>isNaN(Q))){let Q=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(q[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+q[2],+q[1]],zoom:+q[0],bearing:Q,pitch:+(q[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{let q=window.location.href.replace(/(#.*)?$/,this.getHashString());window.history.replaceState(window.history.state,null,q)},this._removeHash=()=>{let q=this._getCurrentHash();if(q.length===0)return;let Q=q.join("/"),ee=Q;ee.split("&").length>0&&(ee=ee.split("&")[0]),this._hashName&&(ee=`${this._hashName}=${Q}`);let ue=window.location.hash.replace(ee,"");ue.startsWith("#&")?ue=ue.slice(0,1)+ue.slice(2):ue==="#"&&(ue="");let Ve=window.location.href.replace(/(#.+)?$/,ue);Ve=Ve.replace("&&","&"),window.history.replaceState(window.history.state,null,Ve)},this._updateHash=xs(this._updateHashUnthrottled,300),this._hashName=w&&encodeURIComponent(w)}addTo(w){return this._map=w,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(w){let q=this._map.getCenter(),Q=Math.round(100*this._map.getZoom())/100,ee=Math.ceil((Q*Math.LN2+Math.log(512/360/.5))/Math.LN10),ue=Math.pow(10,ee),Ve=Math.round(q.lng*ue)/ue,tt=Math.round(q.lat*ue)/ue,mt=this._map.getBearing(),Bt=this._map.getPitch(),ir="";if(ir+=w?`/${Ve}/${tt}/${Q}`:`${Q}/${tt}/${Ve}`,(mt||Bt)&&(ir+="/"+Math.round(10*mt)/10),Bt&&(ir+=`/${Math.round(Bt)}`),this._hashName){let or=this._hashName,kr=!1,Vr=window.location.hash.slice(1).split("&").map(he=>{let Se=he.split("=")[0];return Se===or?(kr=!0,`${Se}=${ir}`):he}).filter(he=>he);return kr||Vr.push(`${or}=${ir}`),`#${Vr.join("&")}`}return`#${ir}`}}let Ea={linearity:.3,easing:a.b8(0,0,.3,1)},Jn=a.e({deceleration:2500,maxSpeed:1400},Ea),Oo=a.e({deceleration:20,maxSpeed:1400},Ea),rl=a.e({deceleration:1e3,maxSpeed:360},Ea),Gs=a.e({deceleration:1e3,maxSpeed:90},Ea);class bs{constructor(w){this._map=w,this.clear()}clear(){this._inertiaBuffer=[]}record(w){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:l.now(),settings:w})}_drainInertiaBuffer(){let w=this._inertiaBuffer,q=l.now();for(;w.length>0&&q-w[0].time>160;)w.shift()}_onMoveEnd(w){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;let q={zoom:0,bearing:0,pitch:0,pan:new a.P(0,0),pinchAround:void 0,around:void 0};for(let{settings:ue}of this._inertiaBuffer)q.zoom+=ue.zoomDelta||0,q.bearing+=ue.bearingDelta||0,q.pitch+=ue.pitchDelta||0,ue.panDelta&&q.pan._add(ue.panDelta),ue.around&&(q.around=ue.around),ue.pinchAround&&(q.pinchAround=ue.pinchAround);let Q=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,ee={};if(q.pan.mag()){let ue=$o(q.pan.mag(),Q,a.e({},Jn,w||{}));ee.offset=q.pan.mult(ue.amount/q.pan.mag()),ee.center=this._map.transform.center,zs(ee,ue)}if(q.zoom){let ue=$o(q.zoom,Q,Oo);ee.zoom=this._map.transform.zoom+ue.amount,zs(ee,ue)}if(q.bearing){let ue=$o(q.bearing,Q,rl);ee.bearing=this._map.transform.bearing+a.ac(ue.amount,-179,179),zs(ee,ue)}if(q.pitch){let ue=$o(q.pitch,Q,Gs);ee.pitch=this._map.transform.pitch+ue.amount,zs(ee,ue)}if(ee.zoom||ee.bearing){let ue=q.pinchAround===void 0?q.around:q.pinchAround;ee.around=ue?this._map.unproject(ue):this._map.getCenter()}return this.clear(),a.e(ee,{noMoveStart:!0})}}function zs(le,w){(!le.duration||le.durationq.unproject(mt)),tt=ue.reduce((mt,Bt,ir,or)=>mt.add(Bt.div(or.length)),new a.P(0,0));super(w,{points:ue,point:tt,lngLats:Ve,lngLat:q.unproject(tt),originalEvent:Q}),this._defaultPrevented=!1}}class _l extends a.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(w,q,Q){super(w,{originalEvent:Q}),this._defaultPrevented=!1}}class Ss{constructor(w,q){this._map=w,this._clickTolerance=q.clickTolerance}reset(){delete this._mousedownPos}wheel(w){return this._firePreventable(new _l(w.type,this._map,w))}mousedown(w,q){return this._mousedownPos=q,this._firePreventable(new Ta(w.type,this._map,w))}mouseup(w){this._map.fire(new Ta(w.type,this._map,w))}click(w,q){this._mousedownPos&&this._mousedownPos.dist(q)>=this._clickTolerance||this._map.fire(new Ta(w.type,this._map,w))}dblclick(w){return this._firePreventable(new Ta(w.type,this._map,w))}mouseover(w){this._map.fire(new Ta(w.type,this._map,w))}mouseout(w){this._map.fire(new Ta(w.type,this._map,w))}touchstart(w){return this._firePreventable(new os(w.type,this._map,w))}touchmove(w){this._map.fire(new os(w.type,this._map,w))}touchend(w){this._map.fire(new os(w.type,this._map,w))}touchcancel(w){this._map.fire(new os(w.type,this._map,w))}_firePreventable(w){if(this._map.fire(w),w.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class po{constructor(w){this._map=w}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(w){this._map.fire(new Ta(w.type,this._map,w))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new Ta("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(w){this._delayContextMenu?this._contextMenuEvent=w:this._ignoreContextMenu||this._map.fire(new Ta(w.type,this._map,w)),this._map.listens("contextmenu")&&w.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class go{constructor(w){this._map=w}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(w){return this.transform.pointLocation(a.P.convert(w),this._map.terrain)}}class ss{constructor(w,q){this._map=w,this._tr=new go(w),this._el=w.getCanvasContainer(),this._container=w.getContainer(),this._clickTolerance=q.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(w,q){this.isEnabled()&&w.shiftKey&&w.button===0&&(f.disableDrag(),this._startPos=this._lastPos=q,this._active=!0)}mousemoveWindow(w,q){if(!this._active)return;let Q=q;if(this._lastPos.equals(Q)||!this._box&&Q.dist(this._startPos)ue.fitScreenCoordinates(Q,ee,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",w)}keydown(w){this._active&&w.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",w))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(f.remove(this._box),this._box=null),f.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(w,q){return this._map.fire(new a.k(w,{originalEvent:q}))}}function qo(le,w){if(le.length!==w.length)throw new Error(`The number of touches and points are not equal - touches ${le.length}, points ${w.length}`);let q={};for(let Q=0;Qthis.numTouches)&&(this.aborted=!0),this.aborted||(this.startTime===void 0&&(this.startTime=w.timeStamp),Q.length===this.numTouches&&(this.centroid=function(ee){let ue=new a.P(0,0);for(let Ve of ee)ue._add(Ve);return ue.div(ee.length)}(q),this.touches=qo(Q,q)))}touchmove(w,q,Q){if(this.aborted||!this.centroid)return;let ee=qo(Q,q);for(let ue in this.touches){let Ve=ee[ue];(!Ve||Ve.dist(this.touches[ue])>30)&&(this.aborted=!0)}}touchend(w,q,Q){if((!this.centroid||w.timeStamp-this.startTime>500)&&(this.aborted=!0),Q.length===0){let ee=!this.aborted&&this.centroid;if(this.reset(),ee)return ee}}}class io{constructor(w){this.singleTap=new zo(w),this.numTaps=w.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(w,q,Q){this.singleTap.touchstart(w,q,Q)}touchmove(w,q,Q){this.singleTap.touchmove(w,q,Q)}touchend(w,q,Q){let ee=this.singleTap.touchend(w,q,Q);if(ee){let ue=w.timeStamp-this.lastTime<500,Ve=!this.lastTap||this.lastTap.dist(ee)<30;if(ue&&Ve||this.reset(),this.count++,this.lastTime=w.timeStamp,this.lastTap=ee,this.count===this.numTaps)return this.reset(),ee}}}class Io{constructor(w){this._tr=new go(w),this._zoomIn=new io({numTouches:1,numTaps:2}),this._zoomOut=new io({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(w,q,Q){this._zoomIn.touchstart(w,q,Q),this._zoomOut.touchstart(w,q,Q)}touchmove(w,q,Q){this._zoomIn.touchmove(w,q,Q),this._zoomOut.touchmove(w,q,Q)}touchend(w,q,Q){let ee=this._zoomIn.touchend(w,q,Q),ue=this._zoomOut.touchend(w,q,Q),Ve=this._tr;return ee?(this._active=!0,w.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:tt=>tt.easeTo({duration:300,zoom:Ve.zoom+1,around:Ve.unproject(ee)},{originalEvent:w})}):ue?(this._active=!0,w.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:tt=>tt.easeTo({duration:300,zoom:Ve.zoom-1,around:Ve.unproject(ue)},{originalEvent:w})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Da{constructor(w){this._enabled=!!w.enable,this._moveStateManager=w.moveStateManager,this._clickTolerance=w.clickTolerance||1,this._moveFunction=w.move,this._activateOnStart=!!w.activateOnStart,w.assignEvents(this),this.reset()}reset(w){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(w)}_move(...w){let q=this._moveFunction(...w);if(q.bearingDelta||q.pitchDelta||q.around||q.panDelta)return this._active=!0,q}dragStart(w,q){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(w)&&(this._moveStateManager.startMove(w),this._lastPoint=q.length?q[0]:q,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(w,q){if(!this.isEnabled())return;let Q=this._lastPoint;if(!Q)return;if(w.preventDefault(),!this._moveStateManager.isValidMoveEvent(w))return void this.reset(w);let ee=q.length?q[0]:q;return!this._moved&&ee.dist(Q){le.mousedown=le.dragStart,le.mousemoveWindow=le.dragMove,le.mouseup=le.dragEnd,le.contextmenu=w=>{w.preventDefault()}},Hs=({enable:le,clickTolerance:w,bearingDegreesPerPixelMoved:q=.8})=>{let Q=new fs({checkCorrectEvent:ee=>f.mouseButton(ee)===0&&ee.ctrlKey||f.mouseButton(ee)===2});return new Da({clickTolerance:w,move:(ee,ue)=>({bearingDelta:(ue.x-ee.x)*q}),moveStateManager:Q,enable:le,assignEvents:el})},Ro=({enable:le,clickTolerance:w,pitchDegreesPerPixelMoved:q=-.5})=>{let Q=new fs({checkCorrectEvent:ee=>f.mouseButton(ee)===0&&ee.ctrlKey||f.mouseButton(ee)===2});return new Da({clickTolerance:w,move:(ee,ue)=>({pitchDelta:(ue.y-ee.y)*q}),moveStateManager:Q,enable:le,assignEvents:el})};class tl{constructor(w,q){this._clickTolerance=w.clickTolerance||1,this._map=q,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new a.P(0,0)}_shouldBePrevented(w){return w<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(w,q,Q){return this._calculateTransform(w,q,Q)}touchmove(w,q,Q){if(this._active){if(!this._shouldBePrevented(Q.length))return w.preventDefault(),this._calculateTransform(w,q,Q);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",w)}}touchend(w,q,Q){this._calculateTransform(w,q,Q),this._active&&this._shouldBePrevented(Q.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(w,q,Q){Q.length>0&&(this._active=!0);let ee=qo(Q,q),ue=new a.P(0,0),Ve=new a.P(0,0),tt=0;for(let Bt in ee){let ir=ee[Bt],or=this._touches[Bt];or&&(ue._add(ir),Ve._add(ir.sub(or)),tt++,ee[Bt]=ir)}if(this._touches=ee,this._shouldBePrevented(tt)||!Ve.mag())return;let mt=Ve.div(tt);return this._sum._add(mt),this._sum.mag()Math.abs(le.x)}class Bs extends Fs{constructor(w){super(),this._currentTouchCount=0,this._map=w}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(w,q,Q){super.touchstart(w,q,Q),this._currentTouchCount=Q.length}_start(w){this._lastPoints=w,Is(w[0].sub(w[1]))&&(this._valid=!1)}_move(w,q,Q){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;let ee=w[0].sub(this._lastPoints[0]),ue=w[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(ee,ue,Q.timeStamp),this._valid?(this._lastPoints=w,this._active=!0,{pitchDelta:(ee.y+ue.y)/2*-.5}):void 0}gestureBeginsVertically(w,q,Q){if(this._valid!==void 0)return this._valid;let ee=w.mag()>=2,ue=q.mag()>=2;if(!ee&&!ue)return;if(!ee||!ue)return this._firstMove===void 0&&(this._firstMove=Q),Q-this._firstMove<100&&void 0;let Ve=w.y>0==q.y>0;return Is(w)&&Is(q)&&Ve}}let At={panStep:100,bearingStep:15,pitchStep:10};class Vt{constructor(w){this._tr=new go(w);let q=At;this._panStep=q.panStep,this._bearingStep=q.bearingStep,this._pitchStep=q.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(w){if(w.altKey||w.ctrlKey||w.metaKey)return;let q=0,Q=0,ee=0,ue=0,Ve=0;switch(w.keyCode){case 61:case 107:case 171:case 187:q=1;break;case 189:case 109:case 173:q=-1;break;case 37:w.shiftKey?Q=-1:(w.preventDefault(),ue=-1);break;case 39:w.shiftKey?Q=1:(w.preventDefault(),ue=1);break;case 38:w.shiftKey?ee=1:(w.preventDefault(),Ve=-1);break;case 40:w.shiftKey?ee=-1:(w.preventDefault(),Ve=1);break;default:return}return this._rotationDisabled&&(Q=0,ee=0),{cameraAnimation:tt=>{let mt=this._tr;tt.easeTo({duration:300,easeId:"keyboardHandler",easing:wr,zoom:q?Math.round(mt.zoom)+q*(w.shiftKey?2:1):mt.zoom,bearing:mt.bearing+Q*this._bearingStep,pitch:mt.pitch+ee*this._pitchStep,offset:[-ue*this._panStep,-Ve*this._panStep],center:mt.center},{originalEvent:w})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function wr(le){return le*(2-le)}let mr=4.000244140625;class Fr{constructor(w,q){this._onTimeout=Q=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(Q)},this._map=w,this._tr=new go(w),this._triggerRenderFrame=q,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(w){this._defaultZoomRate=w}setWheelZoomRate(w){this._wheelZoomRate=w}isEnabled(){return!!this._enabled}isActive(){return!!this._active||this._finishTimeout!==void 0}isZooming(){return!!this._zooming}enable(w){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!w&&w.around==="center")}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(w){return!!this._map.cooperativeGestures.isEnabled()&&!(w.ctrlKey||this._map.cooperativeGestures.isBypassed(w))}wheel(w){if(!this.isEnabled())return;if(this._shouldBePrevented(w))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",w);let q=w.deltaMode===WheelEvent.DOM_DELTA_LINE?40*w.deltaY:w.deltaY,Q=l.now(),ee=Q-(this._lastWheelEventTime||0);this._lastWheelEventTime=Q,q!==0&&q%mr==0?this._type="wheel":q!==0&&Math.abs(q)<4?this._type="trackpad":ee>400?(this._type=null,this._lastValue=q,this._timeout=setTimeout(this._onTimeout,40,w)):this._type||(this._type=Math.abs(ee*q)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,q+=this._lastValue)),w.shiftKey&&q&&(q/=4),this._type&&(this._lastWheelEvent=w,this._delta-=q,this._active||this._start(w)),w.preventDefault()}_start(w){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);let q=f.mousePos(this._map.getCanvas(),w),Q=this._tr;this._around=q.y>Q.transform.height/2-Q.transform.getHorizon()?a.N.convert(this._aroundCenter?Q.center:Q.unproject(q)):a.N.convert(Q.center),this._aroundPoint=Q.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;let w=this._tr.transform;if(this._delta!==0){let mt=this._type==="wheel"&&Math.abs(this._delta)>mr?this._wheelZoomRate:this._defaultZoomRate,Bt=2/(1+Math.exp(-Math.abs(this._delta*mt)));this._delta<0&&Bt!==0&&(Bt=1/Bt);let ir=typeof this._targetZoom=="number"?w.zoomScale(this._targetZoom):w.scale;this._targetZoom=Math.min(w.maxZoom,Math.max(w.minZoom,w.scaleZoom(ir*Bt))),this._type==="wheel"&&(this._startZoom=w.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}let q=typeof this._targetZoom=="number"?this._targetZoom:w.zoom,Q=this._startZoom,ee=this._easing,ue,Ve=!1,tt=l.now()-this._lastWheelEventTime;if(this._type==="wheel"&&Q&&ee&&tt){let mt=Math.min(tt/200,1),Bt=ee(mt);ue=a.y.number(Q,q,Bt),mt<1?this._frameId||(this._frameId=!0):Ve=!0}else ue=q,Ve=!0;return this._active=!0,Ve&&(this._active=!1,this._finishTimeout=setTimeout(()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!Ve,zoomDelta:ue-w.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(w){let q=a.b9;if(this._prevEase){let Q=this._prevEase,ee=(l.now()-Q.start)/Q.duration,ue=Q.easing(ee+.01)-Q.easing(ee),Ve=.27/Math.sqrt(ue*ue+1e-4)*.01,tt=Math.sqrt(.0729-Ve*Ve);q=a.b8(Ve,tt,.25,1)}return this._prevEase={start:l.now(),duration:w,easing:q},q}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class _i{constructor(w,q){this._clickZoom=w,this._tapZoom=q}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class Si{constructor(w){this._tr=new go(w),this.reset()}reset(){this._active=!1}dblclick(w,q){return w.preventDefault(),{cameraAnimation:Q=>{Q.easeTo({duration:300,zoom:this._tr.zoom+(w.shiftKey?-1:1),around:this._tr.unproject(q)},{originalEvent:w})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Ci{constructor(){this._tap=new io({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(w,q,Q){if(!this._swipePoint)if(this._tapTime){let ee=q[0],ue=w.timeStamp-this._tapTime<500,Ve=this._tapPoint.dist(ee)<30;ue&&Ve?Q.length>0&&(this._swipePoint=ee,this._swipeTouch=Q[0].identifier):this.reset()}else this._tap.touchstart(w,q,Q)}touchmove(w,q,Q){if(this._tapTime){if(this._swipePoint){if(Q[0].identifier!==this._swipeTouch)return;let ee=q[0],ue=ee.y-this._swipePoint.y;return this._swipePoint=ee,w.preventDefault(),this._active=!0,{zoomDelta:ue/128}}}else this._tap.touchmove(w,q,Q)}touchend(w,q,Q){if(this._tapTime)this._swipePoint&&Q.length===0&&this.reset();else{let ee=this._tap.touchend(w,q,Q);ee&&(this._tapTime=w.timeStamp,this._tapPoint=ee)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Ki{constructor(w,q,Q){this._el=w,this._mousePan=q,this._touchPan=Q}enable(w){this._inertiaOptions=w||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class Fn{constructor(w,q,Q){this._pitchWithRotate=w.pitchWithRotate,this._mouseRotate=q,this._mousePitch=Q}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class Pi{constructor(w,q,Q,ee){this._el=w,this._touchZoom=q,this._touchRotate=Q,this._tapDragZoom=ee,this._rotationDisabled=!1,this._enabled=!0}enable(w){this._touchZoom.enable(w),this._rotationDisabled||this._touchRotate.enable(w),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}class di{constructor(w,q){this._bypassKey=navigator.userAgent.indexOf("Mac")!==-1?"metaKey":"ctrlKey",this._map=w,this._options=q,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;let w=this._map.getCanvasContainer();w.classList.add("maplibregl-cooperative-gestures"),this._container=f.create("div","maplibregl-cooperative-gesture-screen",w);let q=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");this._bypassKey==="metaKey"&&(q=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));let Q=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),ee=document.createElement("div");ee.className="maplibregl-desktop-message",ee.textContent=q,this._container.appendChild(ee);let ue=document.createElement("div");ue.className="maplibregl-mobile-message",ue.textContent=Q,this._container.appendChild(ue),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(f.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(w){return w[this._bypassKey]}notifyGestureBlocked(w,q){this._enabled&&(this._map.fire(new a.k("cooperativegestureprevented",{gestureType:w,originalEvent:q})),this._container.classList.add("maplibregl-show"),setTimeout(()=>{this._container.classList.remove("maplibregl-show")},100))}}let Li=le=>le.zoom||le.drag||le.pitch||le.rotate;class Mi extends a.k{}function Gn(le){return le.panDelta&&le.panDelta.mag()||le.zoomDelta||le.bearingDelta||le.pitchDelta}class ta{constructor(w,q){this.handleWindowEvent=ee=>{this.handleEvent(ee,`${ee.type}Window`)},this.handleEvent=(ee,ue)=>{if(ee.type==="blur")return void this.stop(!0);this._updatingCamera=!0;let Ve=ee.type==="renderFrame"?void 0:ee,tt={needsRenderFrame:!1},mt={},Bt={},ir=ee.touches,or=ir?this._getMapTouches(ir):void 0,kr=or?f.touchPos(this._map.getCanvas(),or):f.mousePos(this._map.getCanvas(),ee);for(let{handlerName:Se,handler:Ne,allowed:Ge}of this._handlers){if(!Ne.isEnabled())continue;let lt;this._blockedByActive(Bt,Ge,Se)?Ne.reset():Ne[ue||ee.type]&&(lt=Ne[ue||ee.type](ee,kr,or),this.mergeHandlerResult(tt,mt,lt,Se,Ve),lt&<.needsRenderFrame&&this._triggerRenderFrame()),(lt||Ne.isActive())&&(Bt[Se]=Ne)}let Vr={};for(let Se in this._previousActiveHandlers)Bt[Se]||(Vr[Se]=Ve);this._previousActiveHandlers=Bt,(Object.keys(Vr).length||Gn(tt))&&(this._changes.push([tt,mt,Vr]),this._triggerRenderFrame()),(Object.keys(Bt).length||Gn(tt))&&this._map._stop(!0),this._updatingCamera=!1;let{cameraAnimation:he}=tt;he&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],he(this._map))},this._map=w,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new bs(w),this._bearingSnap=q.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(q);let Q=this._el;this._listeners=[[Q,"touchstart",{passive:!0}],[Q,"touchmove",{passive:!1}],[Q,"touchend",void 0],[Q,"touchcancel",void 0],[Q,"mousedown",void 0],[Q,"mousemove",void 0],[Q,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[Q,"mouseover",void 0],[Q,"mouseout",void 0],[Q,"dblclick",void 0],[Q,"click",void 0],[Q,"keydown",{capture:!1}],[Q,"keyup",void 0],[Q,"wheel",{passive:!1}],[Q,"contextmenu",void 0],[window,"blur",void 0]];for(let[ee,ue,Ve]of this._listeners)f.addEventListener(ee,ue,ee===document?this.handleWindowEvent:this.handleEvent,Ve)}destroy(){for(let[w,q,Q]of this._listeners)f.removeEventListener(w,q,w===document?this.handleWindowEvent:this.handleEvent,Q)}_addDefaultHandlers(w){let q=this._map,Q=q.getCanvasContainer();this._add("mapEvent",new Ss(q,w));let ee=q.boxZoom=new ss(q,w);this._add("boxZoom",ee),w.interactive&&w.boxZoom&&ee.enable();let ue=q.cooperativeGestures=new di(q,w.cooperativeGestures);this._add("cooperativeGestures",ue),w.cooperativeGestures&&ue.enable();let Ve=new Io(q),tt=new Si(q);q.doubleClickZoom=new _i(tt,Ve),this._add("tapZoom",Ve),this._add("clickZoom",tt),w.interactive&&w.doubleClickZoom&&q.doubleClickZoom.enable();let mt=new Ci;this._add("tapDragZoom",mt);let Bt=q.touchPitch=new Bs(q);this._add("touchPitch",Bt),w.interactive&&w.touchPitch&&q.touchPitch.enable(w.touchPitch);let ir=Hs(w),or=Ro(w);q.dragRotate=new Fn(w,ir,or),this._add("mouseRotate",ir,["mousePitch"]),this._add("mousePitch",or,["mouseRotate"]),w.interactive&&w.dragRotate&&q.dragRotate.enable();let kr=(({enable:lt,clickTolerance:rt})=>{let pt=new fs({checkCorrectEvent:Ht=>f.mouseButton(Ht)===0&&!Ht.ctrlKey});return new Da({clickTolerance:rt,move:(Ht,nr)=>({around:nr,panDelta:nr.sub(Ht)}),activateOnStart:!0,moveStateManager:pt,enable:lt,assignEvents:el})})(w),Vr=new tl(w,q);q.dragPan=new Ki(Q,kr,Vr),this._add("mousePan",kr),this._add("touchPan",Vr,["touchZoom","touchRotate"]),w.interactive&&w.dragPan&&q.dragPan.enable(w.dragPan);let he=new Rs,Se=new Ms;q.touchZoomRotate=new Pi(Q,Se,he,mt),this._add("touchRotate",he,["touchPan","touchZoom"]),this._add("touchZoom",Se,["touchPan","touchRotate"]),w.interactive&&w.touchZoomRotate&&q.touchZoomRotate.enable(w.touchZoomRotate);let Ne=q.scrollZoom=new Fr(q,()=>this._triggerRenderFrame());this._add("scrollZoom",Ne,["mousePan"]),w.interactive&&w.scrollZoom&&q.scrollZoom.enable(w.scrollZoom);let Ge=q.keyboard=new Vt(q);this._add("keyboard",Ge),w.interactive&&w.keyboard&&q.keyboard.enable(),this._add("blockableMapEvent",new po(q))}_add(w,q,Q){this._handlers.push({handlerName:w,handler:q,allowed:Q}),this._handlersById[w]=q}stop(w){if(!this._updatingCamera){for(let{handler:q}of this._handlers)q.reset();this._inertia.clear(),this._fireEvents({},{},w),this._changes=[]}}isActive(){for(let{handler:w}of this._handlers)if(w.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!Li(this._eventsInProgress)||this.isZooming()}_blockedByActive(w,q,Q){for(let ee in w)if(ee!==Q&&(!q||q.indexOf(ee)<0))return!0;return!1}_getMapTouches(w){let q=[];for(let Q of w)this._el.contains(Q.target)&&q.push(Q);return q}mergeHandlerResult(w,q,Q,ee,ue){if(!Q)return;a.e(w,Q);let Ve={handlerName:ee,originalEvent:Q.originalEvent||ue};Q.zoomDelta!==void 0&&(q.zoom=Ve),Q.panDelta!==void 0&&(q.drag=Ve),Q.pitchDelta!==void 0&&(q.pitch=Ve),Q.bearingDelta!==void 0&&(q.rotate=Ve)}_applyChanges(){let w={},q={},Q={};for(let[ee,ue,Ve]of this._changes)ee.panDelta&&(w.panDelta=(w.panDelta||new a.P(0,0))._add(ee.panDelta)),ee.zoomDelta&&(w.zoomDelta=(w.zoomDelta||0)+ee.zoomDelta),ee.bearingDelta&&(w.bearingDelta=(w.bearingDelta||0)+ee.bearingDelta),ee.pitchDelta&&(w.pitchDelta=(w.pitchDelta||0)+ee.pitchDelta),ee.around!==void 0&&(w.around=ee.around),ee.pinchAround!==void 0&&(w.pinchAround=ee.pinchAround),ee.noInertia&&(w.noInertia=ee.noInertia),a.e(q,ue),a.e(Q,Ve);this._updateMapTransform(w,q,Q),this._changes=[]}_updateMapTransform(w,q,Q){let ee=this._map,ue=ee._getTransformForUpdate(),Ve=ee.terrain;if(!(Gn(w)||Ve&&this._terrainMovement))return this._fireEvents(q,Q,!0);let{panDelta:tt,zoomDelta:mt,bearingDelta:Bt,pitchDelta:ir,around:or,pinchAround:kr}=w;kr!==void 0&&(or=kr),ee._stop(!0),or=or||ee.transform.centerPoint;let Vr=ue.pointLocation(tt?or.sub(tt):or);Bt&&(ue.bearing+=Bt),ir&&(ue.pitch+=ir),mt&&(ue.zoom+=mt),Ve?this._terrainMovement||!q.drag&&!q.zoom?q.drag&&this._terrainMovement?ue.center=ue.pointLocation(ue.centerPoint.sub(tt)):ue.setLocationAtPoint(Vr,or):(this._terrainMovement=!0,this._map._elevationFreeze=!0,ue.setLocationAtPoint(Vr,or)):ue.setLocationAtPoint(Vr,or),ee._applyUpdatedTransform(ue),this._map._update(),w.noInertia||this._inertia.record(w),this._fireEvents(q,Q,!0)}_fireEvents(w,q,Q){let ee=Li(this._eventsInProgress),ue=Li(w),Ve={};for(let or in w){let{originalEvent:kr}=w[or];this._eventsInProgress[or]||(Ve[`${or}start`]=kr),this._eventsInProgress[or]=w[or]}!ee&&ue&&this._fireEvent("movestart",ue.originalEvent);for(let or in Ve)this._fireEvent(or,Ve[or]);ue&&this._fireEvent("move",ue.originalEvent);for(let or in w){let{originalEvent:kr}=w[or];this._fireEvent(or,kr)}let tt={},mt;for(let or in this._eventsInProgress){let{handlerName:kr,originalEvent:Vr}=this._eventsInProgress[or];this._handlersById[kr].isActive()||(delete this._eventsInProgress[or],mt=q[kr]||Vr,tt[`${or}end`]=mt)}for(let or in tt)this._fireEvent(or,tt[or]);let Bt=Li(this._eventsInProgress),ir=(ee||ue)&&!Bt;if(ir&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;let or=this._map._getTransformForUpdate();or.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(or)}if(Q&&ir){this._updatingCamera=!0;let or=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),kr=Vr=>Vr!==0&&-this._bearingSnap{delete this._frameId,this.handleEvent(new Mi("renderFrame",{timeStamp:w})),this._applyChanges()})}_triggerRenderFrame(){this._frameId===void 0&&(this._frameId=this._requestFrame())}}class ya extends a.E{constructor(w,q){super(),this._renderFrameCallback=()=>{let Q=Math.min((l.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(Q)),Q<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=w,this._bearingSnap=q.bearingSnap,this.on("moveend",()=>{delete this._requestedCameraState})}getCenter(){return new a.N(this.transform.center.lng,this.transform.center.lat)}setCenter(w,q){return this.jumpTo({center:w},q)}panBy(w,q,Q){return w=a.P.convert(w).mult(-1),this.panTo(this.transform.center,a.e({offset:w},q),Q)}panTo(w,q,Q){return this.easeTo(a.e({center:w},q),Q)}getZoom(){return this.transform.zoom}setZoom(w,q){return this.jumpTo({zoom:w},q),this}zoomTo(w,q,Q){return this.easeTo(a.e({zoom:w},q),Q)}zoomIn(w,q){return this.zoomTo(this.getZoom()+1,w,q),this}zoomOut(w,q){return this.zoomTo(this.getZoom()-1,w,q),this}getBearing(){return this.transform.bearing}setBearing(w,q){return this.jumpTo({bearing:w},q),this}getPadding(){return this.transform.padding}setPadding(w,q){return this.jumpTo({padding:w},q),this}rotateTo(w,q,Q){return this.easeTo(a.e({bearing:w},q),Q)}resetNorth(w,q){return this.rotateTo(0,a.e({duration:1e3},w),q),this}resetNorthPitch(w,q){return this.easeTo(a.e({bearing:0,pitch:0,duration:1e3},w),q),this}snapToNorth(w,q){return Math.abs(this.getBearing()){if(this._zooming&&(ee.zoom=a.y.number(ue,Ne,fr)),this._rotating&&(ee.bearing=a.y.number(Ve,Bt,fr)),this._pitching&&(ee.pitch=a.y.number(tt,ir,fr)),this._padding&&(ee.interpolatePadding(mt,or,fr),Vr=ee.centerPoint.add(kr)),this.terrain&&!w.freezeElevation&&this._updateElevation(fr),pt)ee.setLocationAtPoint(pt,Ht);else{let Tr=ee.zoomScale(ee.zoom-ue),Ir=Ne>ue?Math.min(2,rt):Math.max(.5,rt),ri=Math.pow(Ir,1-fr),li=ee.unproject(Ge.add(lt.mult(fr*ri)).mult(Tr));ee.setLocationAtPoint(ee.renderWorldCopies?li.wrap():li,Vr)}this._applyUpdatedTransform(ee),this._fireMoveEvents(q)},fr=>{this.terrain&&w.freezeElevation&&this._finalizeElevation(),this._afterEase(q,fr)},w),this}_prepareEase(w,q,Q={}){this._moving=!0,q||Q.moving||this.fire(new a.k("movestart",w)),this._zooming&&!Q.zooming&&this.fire(new a.k("zoomstart",w)),this._rotating&&!Q.rotating&&this.fire(new a.k("rotatestart",w)),this._pitching&&!Q.pitching&&this.fire(new a.k("pitchstart",w))}_prepareElevation(w){this._elevationCenter=w,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(w,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(w){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);let q=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(w<1&&q!==this._elevationTarget){let Q=this._elevationTarget-this._elevationStart;this._elevationStart+=w*(Q-(q-(Q*w+this._elevationStart))/(1-w)),this._elevationTarget=q}this.transform.elevation=a.y.number(this._elevationStart,this._elevationTarget,w)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(w){let q=w.getCameraPosition(),Q=this.terrain.getElevationForLngLatZoom(q.lngLat,w.zoom);if(q.altitudethis._elevateCameraIfInsideTerrain(ee)),this.transformCameraUpdate&&q.push(ee=>this.transformCameraUpdate(ee)),!q.length)return;let Q=w.clone();for(let ee of q){let ue=Q.clone(),{center:Ve,zoom:tt,pitch:mt,bearing:Bt,elevation:ir}=ee(ue);Ve&&(ue.center=Ve),tt!==void 0&&(ue.zoom=tt),mt!==void 0&&(ue.pitch=mt),Bt!==void 0&&(ue.bearing=Bt),ir!==void 0&&(ue.elevation=ir),Q.apply(ue)}this.transform.apply(Q)}_fireMoveEvents(w){this.fire(new a.k("move",w)),this._zooming&&this.fire(new a.k("zoom",w)),this._rotating&&this.fire(new a.k("rotate",w)),this._pitching&&this.fire(new a.k("pitch",w))}_afterEase(w,q){if(this._easeId&&q&&this._easeId===q)return;delete this._easeId;let Q=this._zooming,ee=this._rotating,ue=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,Q&&this.fire(new a.k("zoomend",w)),ee&&this.fire(new a.k("rotateend",w)),ue&&this.fire(new a.k("pitchend",w)),this.fire(new a.k("moveend",w))}flyTo(w,q){var Q;if(!w.essential&&l.prefersReducedMotion){let Ua=a.M(w,["center","zoom","bearing","pitch","around"]);return this.jumpTo(Ua,q)}this.stop(),w=a.e({offset:[0,0],speed:1.2,curve:1.42,easing:a.b9},w);let ee=this._getTransformForUpdate(),ue=ee.zoom,Ve=ee.bearing,tt=ee.pitch,mt=ee.padding,Bt="bearing"in w?this._normalizeBearing(w.bearing,Ve):Ve,ir="pitch"in w?+w.pitch:tt,or="padding"in w?w.padding:ee.padding,kr=a.P.convert(w.offset),Vr=ee.centerPoint.add(kr),he=ee.pointLocation(Vr),{center:Se,zoom:Ne}=ee.getConstrained(a.N.convert(w.center||he),(Q=w.zoom)!==null&&Q!==void 0?Q:ue);this._normalizeCenter(Se,ee);let Ge=ee.zoomScale(Ne-ue),lt=ee.project(he),rt=ee.project(Se).sub(lt),pt=w.curve,Ht=Math.max(ee.width,ee.height),nr=Ht/Ge,fr=rt.mag();if("minZoom"in w){let Ua=a.ac(Math.min(w.minZoom,ue,Ne),ee.minZoom,ee.maxZoom),Fo=Ht/ee.zoomScale(Ua-ue);pt=Math.sqrt(Fo/fr*2)}let Tr=pt*pt;function Ir(Ua){let Fo=(nr*nr-Ht*Ht+(Ua?-1:1)*Tr*Tr*fr*fr)/(2*(Ua?nr:Ht)*Tr*fr);return Math.log(Math.sqrt(Fo*Fo+1)-Fo)}function ri(Ua){return(Math.exp(Ua)-Math.exp(-Ua))/2}function li(Ua){return(Math.exp(Ua)+Math.exp(-Ua))/2}let Ei=Ir(!1),hn=function(Ua){return li(Ei)/li(Ei+pt*Ua)},Zn=function(Ua){return Ht*((li(Ei)*(ri(Fo=Ei+pt*Ua)/li(Fo))-ri(Ei))/Tr)/fr;var Fo},Yn=(Ir(!0)-Ei)/pt;if(Math.abs(fr)<1e-6||!isFinite(Yn)){if(Math.abs(Ht-nr)<1e-6)return this.easeTo(w,q);let Ua=nr0,hn=Fo=>Math.exp(Ua*pt*Fo)}return w.duration="duration"in w?+w.duration:1e3*Yn/("screenSpeed"in w?+w.screenSpeed/pt:+w.speed),w.maxDuration&&w.duration>w.maxDuration&&(w.duration=0),this._zooming=!0,this._rotating=Ve!==Bt,this._pitching=ir!==tt,this._padding=!ee.isPaddingEqual(or),this._prepareEase(q,!1),this.terrain&&this._prepareElevation(Se),this._ease(Ua=>{let Fo=Ua*Yn,vl=1/hn(Fo);ee.zoom=Ua===1?Ne:ue+ee.scaleZoom(vl),this._rotating&&(ee.bearing=a.y.number(Ve,Bt,Ua)),this._pitching&&(ee.pitch=a.y.number(tt,ir,Ua)),this._padding&&(ee.interpolatePadding(mt,or,Ua),Vr=ee.centerPoint.add(kr)),this.terrain&&!w.freezeElevation&&this._updateElevation(Ua);let Us=Ua===1?Se:ee.unproject(lt.add(rt.mult(Zn(Fo))).mult(vl));ee.setLocationAtPoint(ee.renderWorldCopies?Us.wrap():Us,Vr),this._applyUpdatedTransform(ee),this._fireMoveEvents(q)},()=>{this.terrain&&w.freezeElevation&&this._finalizeElevation(),this._afterEase(q)},w),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(w,q){var Q;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){let ee=this._onEaseEnd;delete this._onEaseEnd,ee.call(this,q)}return w||(Q=this.handlers)===null||Q===void 0||Q.stop(!1),this}_ease(w,q,Q){Q.animate===!1||Q.duration===0?(w(1),q()):(this._easeStart=l.now(),this._easeOptions=Q,this._onEaseFrame=w,this._onEaseEnd=q,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(w,q){w=a.b3(w,-180,180);let Q=Math.abs(w-q);return Math.abs(w-360-q)180?-360:Q<-180?360:0}queryTerrainElevation(w){return this.terrain?this.terrain.getElevationForLngLatZoom(a.N.convert(w),this.transform.tileZoom)-this.transform.elevation:null}}let ia={compact:!0,customAttribution:'
MapLibre'};class pa{constructor(w=ia){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")))},this._updateData=q=>{!q||q.sourceDataType!=="metadata"&&q.sourceDataType!=="visibility"&&q.dataType!=="style"&&q.type!=="terrain"||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact===!1?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"))},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show")},this.options=w}getDefaultPosition(){return"bottom-right"}onAdd(w){return this._map=w,this._compact=this.options.compact,this._container=f.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=f.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=f.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){f.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(w,q){let Q=this._map._getUIString(`AttributionControl.${q}`);w.title=Q,w.setAttribute("aria-label",Q)}_updateAttributions(){if(!this._map.style)return;let w=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?w=w.concat(this.options.customAttribution.map(ee=>typeof ee!="string"?"":ee)):typeof this.options.customAttribution=="string"&&w.push(this.options.customAttribution)),this._map.style.stylesheet){let ee=this._map.style.stylesheet;this.styleOwner=ee.owner,this.styleId=ee.id}let q=this._map.style.sourceCaches;for(let ee in q){let ue=q[ee];if(ue.used||ue.usedForTerrain){let Ve=ue.getSource();Ve.attribution&&w.indexOf(Ve.attribution)<0&&w.push(Ve.attribution)}}w=w.filter(ee=>String(ee).trim()),w.sort((ee,ue)=>ee.length-ue.length),w=w.filter((ee,ue)=>{for(let Ve=ue+1;Ve=0)return!1;return!0});let Q=w.join(" | ");Q!==this._attribHTML&&(this._attribHTML=Q,w.length?(this._innerContainer.innerHTML=Q,this._container.classList.remove("maplibregl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty"),this._updateCompact(),this._editLink=null)}}class va{constructor(w={}){this._updateCompact=()=>{let q=this._container.children;if(q.length){let Q=q[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact!==!1&&Q.classList.add("maplibregl-compact"):Q.classList.remove("maplibregl-compact")}},this.options=w}getDefaultPosition(){return"bottom-left"}onAdd(w){this._map=w,this._compact=this.options&&this.options.compact,this._container=f.create("div","maplibregl-ctrl");let q=f.create("a","maplibregl-ctrl-logo");return q.target="_blank",q.rel="noopener nofollow",q.href="https://maplibre.org/",q.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),q.setAttribute("rel","noopener nofollow"),this._container.appendChild(q),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){f.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}}class zn{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(w){let q=++this._id;return this._queue.push({callback:w,id:q,cancelled:!1}),q}remove(w){let q=this._currentlyRunning,Q=q?this._queue.concat(q):this._queue;for(let ee of Q)if(ee.id===w)return void(ee.cancelled=!0)}run(w=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");let q=this._currentlyRunning=this._queue;this._queue=[];for(let Q of q)if(!Q.cancelled&&(Q.callback(w),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var is=a.Y([{name:"a_pos3d",type:"Int16",components:3}]);class Cs extends a.E{constructor(w){super(),this.sourceCache=w,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,w.usedForTerrain=!0,w.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(w,q){this.sourceCache.update(w,q),this._renderableTilesKeys=[];let Q={};for(let ee of w.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:q}))Q[ee.key]=!0,this._renderableTilesKeys.push(ee.key),this._tiles[ee.key]||(ee.posMatrix=new Float64Array(16),a.aP(ee.posMatrix,0,a.X,0,a.X,0,1),this._tiles[ee.key]=new vt(ee,this.tileSize));for(let ee in this._tiles)Q[ee]||delete this._tiles[ee]}freeRtt(w){for(let q in this._tiles){let Q=this._tiles[q];(!w||Q.tileID.equals(w)||Q.tileID.isChildOf(w)||w.isChildOf(Q.tileID))&&(Q.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map(w=>this.getTileByID(w))}getTileByID(w){return this._tiles[w]}getTerrainCoords(w){let q={};for(let Q of this._renderableTilesKeys){let ee=this._tiles[Q].tileID;if(ee.canonical.equals(w.canonical)){let ue=w.clone();ue.posMatrix=new Float64Array(16),a.aP(ue.posMatrix,0,a.X,0,a.X,0,1),q[Q]=ue}else if(ee.canonical.isChildOf(w.canonical)){let ue=w.clone();ue.posMatrix=new Float64Array(16);let Ve=ee.canonical.z-w.canonical.z,tt=ee.canonical.x-(ee.canonical.x>>Ve<>Ve<>Ve;a.aP(ue.posMatrix,0,Bt,0,Bt,0,1),a.J(ue.posMatrix,ue.posMatrix,[-tt*Bt,-mt*Bt,0]),q[Q]=ue}else if(w.canonical.isChildOf(ee.canonical)){let ue=w.clone();ue.posMatrix=new Float64Array(16);let Ve=w.canonical.z-ee.canonical.z,tt=w.canonical.x-(w.canonical.x>>Ve<>Ve<>Ve;a.aP(ue.posMatrix,0,a.X,0,a.X,0,1),a.J(ue.posMatrix,ue.posMatrix,[tt*Bt,mt*Bt,0]),a.K(ue.posMatrix,ue.posMatrix,[1/2**Ve,1/2**Ve,0]),q[Q]=ue}}return q}getSourceTile(w,q){let Q=this.sourceCache._source,ee=w.overscaledZ-this.deltaZoom;if(ee>Q.maxzoom&&(ee=Q.maxzoom),ee=Q.minzoom&&(!ue||!ue.dem);)ue=this.sourceCache.getTileByID(w.scaledTo(ee--).key);return ue}tilesAfterTime(w=Date.now()){return Object.values(this._tiles).filter(q=>q.timeAdded>=w)}}class Ks{constructor(w,q,Q){this.painter=w,this.sourceCache=new Cs(q),this.options=Q,this.exaggeration=typeof Q.exaggeration=="number"?Q.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(w,q,Q,ee=a.X){var ue;if(!(q>=0&&q=0&&Qw.canonical.z&&(w.canonical.z>=ee?ue=w.canonical.z-ee:a.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));let Ve=w.canonical.x-(w.canonical.x>>ue<>ue<>8<<4|ue>>8,q[Ve+3]=0;let Q=new a.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(q.buffer)),ee=new m(w,Q,w.gl.RGBA,{premultiply:!1});return ee.bind(w.gl.NEAREST,w.gl.CLAMP_TO_EDGE),this._coordsTexture=ee,ee}pointCoordinate(w){this.painter.maybeDrawDepthAndCoords(!0);let q=new Uint8Array(4),Q=this.painter.context,ee=Q.gl,ue=Math.round(w.x*this.painter.pixelRatio/devicePixelRatio),Ve=Math.round(w.y*this.painter.pixelRatio/devicePixelRatio),tt=Math.round(this.painter.height/devicePixelRatio);Q.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),ee.readPixels(ue,tt-Ve-1,1,1,ee.RGBA,ee.UNSIGNED_BYTE,q),Q.bindFramebuffer.set(null);let mt=q[0]+(q[2]>>4<<8),Bt=q[1]+((15&q[2])<<8),ir=this.coordsIndex[255-q[3]],or=ir&&this.sourceCache.getTileByID(ir);if(!or)return null;let kr=this._coordsTextureSize,Vr=(1<w.id!==q),this._recentlyUsed.push(w.id)}stampObject(w){w.stamp=++this._stamp}getOrCreateFreeObject(){for(let q of this._recentlyUsed)if(!this._objects[q].inUse)return this._objects[q];if(this._objects.length>=this._size)throw new Error("No free RenderPool available, call freeAllObjects() required!");let w=this._createObject(this._objects.length);return this._objects.push(w),w}freeObject(w){w.inUse=!1}freeAllObjects(){for(let w of this._objects)this.freeObject(w)}isFull(){return!(this._objects.length!w.inUse)===!1}}let xl={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class Bl{constructor(w,q){this.painter=w,this.terrain=q,this.pool=new dl(w.context,30,q.sourceCache.tileSize*q.qualityFactor)}destruct(){this.pool.destruct()}getTexture(w){return this.pool.getObjectForId(w.rtt[this._stacks.length-1].id).texture}prepareForRender(w,q){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=w._order.filter(Q=>!w._layers[Q].isHidden(q)),this._coordsDescendingInv={};for(let Q in w.sourceCaches){this._coordsDescendingInv[Q]={};let ee=w.sourceCaches[Q].getVisibleCoordinates();for(let ue of ee){let Ve=this.terrain.sourceCache.getTerrainCoords(ue);for(let tt in Ve)this._coordsDescendingInv[Q][tt]||(this._coordsDescendingInv[Q][tt]=[]),this._coordsDescendingInv[Q][tt].push(Ve[tt])}}this._coordsDescendingInvStr={};for(let Q of w._order){let ee=w._layers[Q],ue=ee.source;if(xl[ee.type]&&!this._coordsDescendingInvStr[ue]){this._coordsDescendingInvStr[ue]={};for(let Ve in this._coordsDescendingInv[ue])this._coordsDescendingInvStr[ue][Ve]=this._coordsDescendingInv[ue][Ve].map(tt=>tt.key).sort().join()}}for(let Q of this._renderableTiles)for(let ee in this._coordsDescendingInvStr){let ue=this._coordsDescendingInvStr[ee][Q.tileID.key];ue&&ue!==Q.rttCoords[ee]&&(Q.rtt=[])}}renderLayer(w){if(w.isHidden(this.painter.transform.zoom))return!1;let q=w.type,Q=this.painter,ee=this._renderableLayerIds[this._renderableLayerIds.length-1]===w.id;if(xl[q]&&(this._prevType&&xl[this._prevType]||this._stacks.push([]),this._prevType=q,this._stacks[this._stacks.length-1].push(w.id),!ee))return!0;if(xl[this._prevType]||xl[q]&&ee){this._prevType=q;let ue=this._stacks.length-1,Ve=this._stacks[ue]||[];for(let tt of this._renderableTiles){if(this.pool.isFull()&&(as(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(tt),tt.rtt[ue]){let Bt=this.pool.getObjectForId(tt.rtt[ue].id);if(Bt.stamp===tt.rtt[ue].stamp){this.pool.useObject(Bt);continue}}let mt=this.pool.getOrCreateFreeObject();this.pool.useObject(mt),this.pool.stampObject(mt),tt.rtt[ue]={id:mt.id,stamp:mt.stamp},Q.context.bindFramebuffer.set(mt.fbo.framebuffer),Q.context.clear({color:a.aM.transparent,stencil:0}),Q.currentStencilSource=void 0;for(let Bt=0;Bt{le.touchstart=le.dragStart,le.touchmoveWindow=le.dragMove,le.touchend=le.dragEnd},ja={showCompass:!0,showZoom:!0,visualizePitch:!1};class ns{constructor(w,q,Q=!1){this.mousedown=Ve=>{this.startMouse(a.e({},Ve,{ctrlKey:!0,preventDefault:()=>Ve.preventDefault()}),f.mousePos(this.element,Ve)),f.addEventListener(window,"mousemove",this.mousemove),f.addEventListener(window,"mouseup",this.mouseup)},this.mousemove=Ve=>{this.moveMouse(Ve,f.mousePos(this.element,Ve))},this.mouseup=Ve=>{this.mouseRotate.dragEnd(Ve),this.mousePitch&&this.mousePitch.dragEnd(Ve),this.offTemp()},this.touchstart=Ve=>{Ve.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=f.touchPos(this.element,Ve.targetTouches)[0],this.startTouch(Ve,this._startPos),f.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),f.addEventListener(window,"touchend",this.touchend))},this.touchmove=Ve=>{Ve.targetTouches.length!==1?this.reset():(this._lastPos=f.touchPos(this.element,Ve.targetTouches)[0],this.moveTouch(Ve,this._lastPos))},this.touchend=Ve=>{Ve.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()},this._clickTolerance=10;let ee=w.dragRotate._mouseRotate.getClickTolerance(),ue=w.dragRotate._mousePitch.getClickTolerance();this.element=q,this.mouseRotate=Hs({clickTolerance:ee,enable:!0}),this.touchRotate=(({enable:Ve,clickTolerance:tt,bearingDegreesPerPixelMoved:mt=.8})=>{let Bt=new cl;return new Da({clickTolerance:tt,move:(ir,or)=>({bearingDelta:(or.x-ir.x)*mt}),moveStateManager:Bt,enable:Ve,assignEvents:Ul})})({clickTolerance:ee,enable:!0}),this.map=w,Q&&(this.mousePitch=Ro({clickTolerance:ue,enable:!0}),this.touchPitch=(({enable:Ve,clickTolerance:tt,pitchDegreesPerPixelMoved:mt=-.5})=>{let Bt=new cl;return new Da({clickTolerance:tt,move:(ir,or)=>({pitchDelta:(or.y-ir.y)*mt}),moveStateManager:Bt,enable:Ve,assignEvents:Ul})})({clickTolerance:ue,enable:!0})),f.addEventListener(q,"mousedown",this.mousedown),f.addEventListener(q,"touchstart",this.touchstart,{passive:!1}),f.addEventListener(q,"touchcancel",this.reset)}startMouse(w,q){this.mouseRotate.dragStart(w,q),this.mousePitch&&this.mousePitch.dragStart(w,q),f.disableDrag()}startTouch(w,q){this.touchRotate.dragStart(w,q),this.touchPitch&&this.touchPitch.dragStart(w,q),f.disableDrag()}moveMouse(w,q){let Q=this.map,{bearingDelta:ee}=this.mouseRotate.dragMove(w,q)||{};if(ee&&Q.setBearing(Q.getBearing()+ee),this.mousePitch){let{pitchDelta:ue}=this.mousePitch.dragMove(w,q)||{};ue&&Q.setPitch(Q.getPitch()+ue)}}moveTouch(w,q){let Q=this.map,{bearingDelta:ee}=this.touchRotate.dragMove(w,q)||{};if(ee&&Q.setBearing(Q.getBearing()+ee),this.touchPitch){let{pitchDelta:ue}=this.touchPitch.dragMove(w,q)||{};ue&&Q.setPitch(Q.getPitch()+ue)}}off(){let w=this.element;f.removeEventListener(w,"mousedown",this.mousedown),f.removeEventListener(w,"touchstart",this.touchstart,{passive:!1}),f.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),f.removeEventListener(window,"touchend",this.touchend),f.removeEventListener(w,"touchcancel",this.reset),this.offTemp()}offTemp(){f.enableDrag(),f.removeEventListener(window,"mousemove",this.mousemove),f.removeEventListener(window,"mouseup",this.mouseup),f.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),f.removeEventListener(window,"touchend",this.touchend)}}let Js;function cs(le,w,q){let Q=new a.N(le.lng,le.lat);if(le=new a.N(le.lng,le.lat),w){let ee=new a.N(le.lng-360,le.lat),ue=new a.N(le.lng+360,le.lat),Ve=q.locationPoint(le).distSqr(w);q.locationPoint(ee).distSqr(w)180;){let ee=q.locationPoint(le);if(ee.x>=0&&ee.y>=0&&ee.x<=q.width&&ee.y<=q.height)break;le.lng>q.center.lng?le.lng-=360:le.lng+=360}return le.lng!==Q.lng&&q.locationPoint(le).y>q.height/2-q.getHorizon()?le:Q}let sl={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function ll(le,w,q){let Q=le.classList;for(let ee in sl)Q.remove(`maplibregl-${q}-anchor-${ee}`);Q.add(`maplibregl-${q}-anchor-${w}`)}class il extends a.E{constructor(w){if(super(),this._onKeyPress=q=>{let Q=q.code,ee=q.charCode||q.keyCode;Q!=="Space"&&Q!=="Enter"&&ee!==32&&ee!==13||this.togglePopup()},this._onMapClick=q=>{let Q=q.originalEvent.target,ee=this._element;this._popup&&(Q===ee||ee.contains(Q))&&this.togglePopup()},this._update=q=>{var Q;if(!this._map)return;let ee=this._map.loaded()&&!this._map.isMoving();((q==null?void 0:q.type)==="terrain"||(q==null?void 0:q.type)==="render"&&!ee)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?cs(this._lngLat,this._flatPos,this._map.transform):(Q=this._lngLat)===null||Q===void 0?void 0:Q.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let ue="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?ue=`rotateZ(${this._rotation}deg)`:this._rotationAlignment==="map"&&(ue=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let Ve="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?Ve="rotateX(0deg)":this._pitchAlignment==="map"&&(Ve=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||q&&q.type!=="moveend"||(this._pos=this._pos.round()),f.setTransform(this._element,`${sl[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${Ve} ${ue}`),l.frameAsync(new AbortController).then(()=>{this._updateOpacity(q&&q.type==="moveend")}).catch(()=>{})},this._onMove=q=>{if(!this._isDragging){let Q=this._clickTolerance||this._map._clickTolerance;this._isDragging=q.point.dist(this._pointerdownPos)>=Q}this._isDragging&&(this._pos=q.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new a.k("dragstart"))),this.fire(new a.k("drag")))},this._onUp=()=>{this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new a.k("dragend")),this._state="inactive"},this._addDragHandler=q=>{this._element.contains(q.originalEvent.target)&&(q.preventDefault(),this._positionDelta=q.point.sub(this._pos).add(this._offset),this._pointerdownPos=q.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},this._anchor=w&&w.anchor||"center",this._color=w&&w.color||"#3FB1CE",this._scale=w&&w.scale||1,this._draggable=w&&w.draggable||!1,this._clickTolerance=w&&w.clickTolerance||0,this._subpixelPositioning=w&&w.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=w&&w.rotation||0,this._rotationAlignment=w&&w.rotationAlignment||"auto",this._pitchAlignment=w&&w.pitchAlignment&&w.pitchAlignment!=="auto"?w.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(w==null?void 0:w.opacity,w==null?void 0:w.opacityWhenCovered),w&&w.element)this._element=w.element,this._offset=a.P.convert(w&&w.offset||[0,0]);else{this._defaultMarker=!0,this._element=f.create("div");let q=f.createNS("http://www.w3.org/2000/svg","svg"),Q=41,ee=27;q.setAttributeNS(null,"display","block"),q.setAttributeNS(null,"height",`${Q}px`),q.setAttributeNS(null,"width",`${ee}px`),q.setAttributeNS(null,"viewBox",`0 0 ${ee} ${Q}`);let ue=f.createNS("http://www.w3.org/2000/svg","g");ue.setAttributeNS(null,"stroke","none"),ue.setAttributeNS(null,"stroke-width","1"),ue.setAttributeNS(null,"fill","none"),ue.setAttributeNS(null,"fill-rule","evenodd");let Ve=f.createNS("http://www.w3.org/2000/svg","g");Ve.setAttributeNS(null,"fill-rule","nonzero");let tt=f.createNS("http://www.w3.org/2000/svg","g");tt.setAttributeNS(null,"transform","translate(3.0, 29.0)"),tt.setAttributeNS(null,"fill","#000000");let mt=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(let Ge of mt){let lt=f.createNS("http://www.w3.org/2000/svg","ellipse");lt.setAttributeNS(null,"opacity","0.04"),lt.setAttributeNS(null,"cx","10.5"),lt.setAttributeNS(null,"cy","5.80029008"),lt.setAttributeNS(null,"rx",Ge.rx),lt.setAttributeNS(null,"ry",Ge.ry),tt.appendChild(lt)}let Bt=f.createNS("http://www.w3.org/2000/svg","g");Bt.setAttributeNS(null,"fill",this._color);let ir=f.createNS("http://www.w3.org/2000/svg","path");ir.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),Bt.appendChild(ir);let or=f.createNS("http://www.w3.org/2000/svg","g");or.setAttributeNS(null,"opacity","0.25"),or.setAttributeNS(null,"fill","#000000");let kr=f.createNS("http://www.w3.org/2000/svg","path");kr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),or.appendChild(kr);let Vr=f.createNS("http://www.w3.org/2000/svg","g");Vr.setAttributeNS(null,"transform","translate(6.0, 7.0)"),Vr.setAttributeNS(null,"fill","#FFFFFF");let he=f.createNS("http://www.w3.org/2000/svg","g");he.setAttributeNS(null,"transform","translate(8.0, 8.0)");let Se=f.createNS("http://www.w3.org/2000/svg","circle");Se.setAttributeNS(null,"fill","#000000"),Se.setAttributeNS(null,"opacity","0.25"),Se.setAttributeNS(null,"cx","5.5"),Se.setAttributeNS(null,"cy","5.5"),Se.setAttributeNS(null,"r","5.4999962");let Ne=f.createNS("http://www.w3.org/2000/svg","circle");Ne.setAttributeNS(null,"fill","#FFFFFF"),Ne.setAttributeNS(null,"cx","5.5"),Ne.setAttributeNS(null,"cy","5.5"),Ne.setAttributeNS(null,"r","5.4999962"),he.appendChild(Se),he.appendChild(Ne),Ve.appendChild(tt),Ve.appendChild(Bt),Ve.appendChild(or),Ve.appendChild(Vr),Ve.appendChild(he),q.appendChild(Ve),q.setAttributeNS(null,"height",Q*this._scale+"px"),q.setAttributeNS(null,"width",ee*this._scale+"px"),this._element.appendChild(q),this._offset=a.P.convert(w&&w.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",q=>{q.preventDefault()}),this._element.addEventListener("mousedown",q=>{q.preventDefault()}),ll(this._element,this._anchor,"marker"),w&&w.className)for(let q of w.className.split(" "))this._element.classList.add(q);this._popup=null}addTo(w){return this.remove(),this._map=w,this._element.setAttribute("aria-label",w._getUIString("Marker.Title")),w.getCanvasContainer().appendChild(this._element),w.on("move",this._update),w.on("moveend",this._update),w.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),f.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(w){return this._lngLat=a.N.convert(w),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(w){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),w){if(!("offset"in w.options)){let ee=Math.abs(13.5)/Math.SQRT2;w.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[ee,-1*(38.1-13.5+ee)],"bottom-right":[-ee,-1*(38.1-13.5+ee)],left:[13.5,-1*(38.1-13.5)],right:[-13.5,-1*(38.1-13.5)]}:this._offset}this._popup=w,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(w){return this._subpixelPositioning=w,this}getPopup(){return this._popup}togglePopup(){let w=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:w?(w.isOpen()?w.remove():(w.setLngLat(this._lngLat),w.addTo(this._map)),this):this}_updateOpacity(w=!1){var q,Q;if(!(!((q=this._map)===null||q===void 0)&&q.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(w)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout(()=>{this._opacityTimeout=null},100)}let ee=this._map,ue=ee.terrain.depthAtPoint(this._pos),Ve=ee.terrain.getElevationForLngLatZoom(this._lngLat,ee.transform.tileZoom);if(ee.transform.lngLatToCameraDepth(this._lngLat,Ve)-ue<.006)return void(this._element.style.opacity=this._opacity);let tt=-this._offset.y/ee.transform._pixelPerMeter,mt=Math.sin(ee.getPitch()*Math.PI/180)*tt,Bt=ee.terrain.depthAtPoint(new a.P(this._pos.x,this._pos.y-this._offset.y)),ir=ee.transform.lngLatToCameraDepth(this._lngLat,Ve+mt)-Bt>.006;!((Q=this._popup)===null||Q===void 0)&&Q.isOpen()&&ir&&this._popup.remove(),this._element.style.opacity=ir?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(w){return this._offset=a.P.convert(w),this._update(),this}addClassName(w){this._element.classList.add(w)}removeClassName(w){this._element.classList.remove(w)}toggleClassName(w){return this._element.classList.toggle(w)}setDraggable(w){return this._draggable=!!w,this._map&&(w?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(w){return this._rotation=w||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(w){return this._rotationAlignment=w||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(w){return this._pitchAlignment=w&&w!=="auto"?w:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(w,q){return w===void 0&&q===void 0&&(this._opacity="1",this._opacityWhenCovered="0.2"),w!==void 0&&(this._opacity=w),q!==void 0&&(this._opacityWhenCovered=q),this._map&&this._updateOpacity(!0),this}}let zl={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},Ml=0,Rl=!1,Tl={maxWidth:100,unit:"metric"};function Ll(le,w,q){let Q=q&&q.maxWidth||100,ee=le._container.clientHeight/2,ue=le.unproject([0,ee]),Ve=le.unproject([Q,ee]),tt=ue.distanceTo(Ve);if(q&&q.unit==="imperial"){let mt=3.2808*tt;mt>5280?ms(w,Q,mt/5280,le._getUIString("ScaleControl.Miles")):ms(w,Q,mt,le._getUIString("ScaleControl.Feet"))}else q&&q.unit==="nautical"?ms(w,Q,tt/1852,le._getUIString("ScaleControl.NauticalMiles")):tt>=1e3?ms(w,Q,tt/1e3,le._getUIString("ScaleControl.Kilometers")):ms(w,Q,tt,le._getUIString("ScaleControl.Meters"))}function ms(le,w,q,Q){let ee=function(ue){let Ve=Math.pow(10,`${Math.floor(ue)}`.length-1),tt=ue/Ve;return tt=tt>=10?10:tt>=5?5:tt>=3?3:tt>=2?2:tt>=1?1:function(mt){let Bt=Math.pow(10,Math.ceil(-Math.log(mt)/Math.LN10));return Math.round(mt*Bt)/Bt}(tt),Ve*tt}(q);le.style.width=w*(ee/q)+"px",le.innerHTML=`${ee} ${Q}`}let Os={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},Xl=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function Vl(le){if(le){if(typeof le=="number"){let w=Math.round(Math.abs(le)/Math.SQRT2);return{center:new a.P(0,0),top:new a.P(0,le),"top-left":new a.P(w,w),"top-right":new a.P(-w,w),bottom:new a.P(0,-le),"bottom-left":new a.P(w,-w),"bottom-right":new a.P(-w,-w),left:new a.P(le,0),right:new a.P(-le,0)}}if(le instanceof a.P||Array.isArray(le)){let w=a.P.convert(le);return{center:w,top:w,"top-left":w,"top-right":w,bottom:w,"bottom-left":w,"bottom-right":w,left:w,right:w}}return{center:a.P.convert(le.center||[0,0]),top:a.P.convert(le.top||[0,0]),"top-left":a.P.convert(le["top-left"]||[0,0]),"top-right":a.P.convert(le["top-right"]||[0,0]),bottom:a.P.convert(le.bottom||[0,0]),"bottom-left":a.P.convert(le["bottom-left"]||[0,0]),"bottom-right":a.P.convert(le["bottom-right"]||[0,0]),left:a.P.convert(le.left||[0,0]),right:a.P.convert(le.right||[0,0])}}return Vl(new a.P(0,0))}let Nl=o;i.AJAXError=a.bh,i.Evented=a.E,i.LngLat=a.N,i.MercatorCoordinate=a.Z,i.Point=a.P,i.addProtocol=a.bi,i.config=a.a,i.removeProtocol=a.bj,i.AttributionControl=pa,i.BoxZoomHandler=ss,i.CanvasSource=St,i.CooperativeGesturesHandler=di,i.DoubleClickZoomHandler=_i,i.DragPanHandler=Ki,i.DragRotateHandler=Fn,i.EdgeInsets=Vo,i.FullscreenControl=class extends a.E{constructor(le={}){super(),this._onFullscreenChange=()=>{var w;let q=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;!((w=q==null?void 0:q.shadowRoot)===null||w===void 0)&&w.fullscreenElement;)q=q.shadowRoot.fullscreenElement;q===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,le&&le.container&&(le.container instanceof HTMLElement?this._container=le.container:a.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(le){return this._map=le,this._container||(this._container=this._map.getContainer()),this._controlContainer=f.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){f.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){let le=this._fullscreenButton=f.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);f.create("span","maplibregl-ctrl-icon",le).setAttribute("aria-hidden","true"),le.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){let le=this._getTitle();this._fullscreenButton.setAttribute("aria-label",le),this._fullscreenButton.title=le}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new a.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new a.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},i.GeoJSONSource=at,i.GeolocateControl=class extends a.E{constructor(le){super(),this._onSuccess=w=>{if(this._map){if(this._isOutOfMapMaxBounds(w))return this._setErrorState(),this.fire(new a.k("outofmaxbounds",w)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=w,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(w),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(w),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new a.k("geolocate",w)),this._finish()}},this._updateCamera=w=>{let q=new a.N(w.coords.longitude,w.coords.latitude),Q=w.coords.accuracy,ee=this._map.getBearing(),ue=a.e({bearing:ee},this.options.fitBoundsOptions),Ve=ce.fromLngLat(q,Q);this._map.fitBounds(Ve,ue,{geolocateSource:!0})},this._updateMarker=w=>{if(w){let q=new a.N(w.coords.longitude,w.coords.latitude);this._accuracyCircleMarker.setLngLat(q).addTo(this._map),this._userLocationDotMarker.setLngLat(q).addTo(this._map),this._accuracy=w.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=w=>{if(this._map){if(this.options.trackUserLocation)if(w.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;let q=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=q,this._geolocateButton.setAttribute("aria-label",q),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(w.code===3&&Rl)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new a.k("error",w)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",w=>w.preventDefault()),this._geolocateButton=f.create("button","maplibregl-ctrl-geolocate",this._container),f.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=w=>{if(this._map){if(w===!1){a.w("Geolocation support is not available so the GeolocateControl will be disabled.");let q=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=q,this._geolocateButton.setAttribute("aria-label",q)}else{let q=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=q,this._geolocateButton.setAttribute("aria-label",q)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=f.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new il({element:this._dotElement}),this._circleElement=f.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new il({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",()=>this.trigger()),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",q=>{q.geolocateSource||this._watchState!=="ACTIVE_LOCK"||q.originalEvent&&q.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new a.k("trackuserlocationend")),this.fire(new a.k("userlocationlostfocus")))})}},this.options=a.e({},zl,le)}onAdd(le){return this._map=le,this._container=f.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return a._(this,arguments,void 0,function*(w=!1){if(Js!==void 0&&!w)return Js;if(window.navigator.permissions===void 0)return Js=!!window.navigator.geolocation,Js;try{Js=(yield window.navigator.permissions.query({name:"geolocation"})).state!=="denied"}catch(q){Js=!!window.navigator.geolocation}return Js})}().then(w=>this._finishSetupUI(w)),this._container}onRemove(){this._geolocationWatchID!==void 0&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),f.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,Ml=0,Rl=!1}_isOutOfMapMaxBounds(le){let w=this._map.getMaxBounds(),q=le.coords;return w&&(q.longitudew.getEast()||q.latitudew.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){let le=this._map.getBounds(),w=le.getSouthEast(),q=le.getNorthEast(),Q=w.distanceTo(q),ee=Math.ceil(this._accuracy/(Q/this._map._container.clientHeight)*2);this._circleElement.style.width=`${ee}px`,this._circleElement.style.height=`${ee}px`}trigger(){if(!this._setup)return a.w("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new a.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Ml--,Rl=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new a.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new a.k("trackuserlocationstart")),this.fire(new a.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let le;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),Ml++,Ml>1?(le={maximumAge:6e5,timeout:0},Rl=!0):(le=this.options.positionOptions,Rl=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,le)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},i.Hash=ks,i.ImageSource=Ct,i.KeyboardHandler=Vt,i.LngLatBounds=ce,i.LogoControl=va,i.Map=class extends ya{constructor(le){a.bf.mark(a.bg.create);let w=Object.assign(Object.assign({},Zl),le);if(w.minZoom!=null&&w.maxZoom!=null&&w.minZoom>w.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(w.minPitch!=null&&w.maxPitch!=null&&w.minPitch>w.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(w.minPitch!=null&&w.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(w.maxPitch!=null&&w.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new Lo(w.minZoom,w.maxZoom,w.minPitch,w.maxPitch,w.renderWorldCopies),{bearingSnap:w.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new zn,this._controls=[],this._mapId=a.a4(),this._contextLost=q=>{q.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new a.k("webglcontextlost",{originalEvent:q}))},this._contextRestored=q=>{this._setupPainter(),this.resize(),this._update(),this.fire(new a.k("webglcontextrestored",{originalEvent:q}))},this._onMapScroll=q=>{if(q.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=w.interactive,this._maxTileCacheSize=w.maxTileCacheSize,this._maxTileCacheZoomLevels=w.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=w.failIfMajorPerformanceCaveat===!0,this._preserveDrawingBuffer=w.preserveDrawingBuffer===!0,this._antialias=w.antialias===!0,this._trackResize=w.trackResize===!0,this._bearingSnap=w.bearingSnap,this._refreshExpiredTiles=w.refreshExpiredTiles===!0,this._fadeDuration=w.fadeDuration,this._crossSourceCollisions=w.crossSourceCollisions===!0,this._collectResourceTiming=w.collectResourceTiming===!0,this._locale=Object.assign(Object.assign({},bl),w.locale),this._clickTolerance=w.clickTolerance,this._overridePixelRatio=w.pixelRatio,this._maxCanvasSize=w.maxCanvasSize,this.transformCameraUpdate=w.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=w.cancelPendingTileRequestsWhileZooming===!0,this._imageQueueHandle=v.addThrottleControl(()=>this.isMoving()),this._requestManager=new k(w.transformRequest),typeof w.container=="string"){if(this._container=document.getElementById(w.container),!this._container)throw new Error(`Container '${w.container}' not found.`)}else{if(!(w.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=w.container}if(w.maxBounds&&this.setMaxBounds(w.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",()=>this._update(!1)).on("moveend",()=>this._update(!1)).on("zoom",()=>this._update(!0)).on("terrain",()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)}).once("idle",()=>{this._idleTriggered=!0}),typeof window!="undefined"){addEventListener("online",this._onWindowOnline,!1);let q=!1,Q=xs(ee=>{this._trackResize&&!this._removed&&(this.resize(ee),this.redraw())},50);this._resizeObserver=new ResizeObserver(ee=>{q?Q(ee):q=!0}),this._resizeObserver.observe(this._container)}this.handlers=new ta(this,w),this._hash=w.hash&&new ks(typeof w.hash=="string"&&w.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:w.center,zoom:w.zoom,bearing:w.bearing,pitch:w.pitch}),w.bounds&&(this.resize(),this.fitBounds(w.bounds,a.e({},w.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=w.localIdeographFontFamily,this._validateStyle=w.validateStyle,w.style&&this.setStyle(w.style,{localIdeographFontFamily:w.localIdeographFontFamily}),w.attributionControl&&this.addControl(new pa(typeof w.attributionControl=="boolean"?void 0:w.attributionControl)),w.maplibreLogo&&this.addControl(new va,w.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",q=>{this._update(q.dataType==="style"),this.fire(new a.k(`${q.dataType}data`,q))}),this.on("dataloading",q=>{this.fire(new a.k(`${q.dataType}dataloading`,q))}),this.on("dataabort",q=>{this.fire(new a.k("sourcedataabort",q))})}_getMapId(){return this._mapId}addControl(le,w){if(w===void 0&&(w=le.getDefaultPosition?le.getDefaultPosition():"top-right"),!le||!le.onAdd)return this.fire(new a.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));let q=le.onAdd(this);this._controls.push(le);let Q=this._controlPositions[w];return w.indexOf("bottom")!==-1?Q.insertBefore(q,Q.firstChild):Q.appendChild(q),this}removeControl(le){if(!le||!le.onRemove)return this.fire(new a.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));let w=this._controls.indexOf(le);return w>-1&&this._controls.splice(w,1),le.onRemove(this),this}hasControl(le){return this._controls.indexOf(le)>-1}calculateCameraOptionsFromTo(le,w,q,Q){return Q==null&&this.terrain&&(Q=this.terrain.getElevationForLngLatZoom(q,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(le,w,q,Q)}resize(le){var w;let q=this._containerDimensions(),Q=q[0],ee=q[1],ue=this._getClampedPixelRatio(Q,ee);if(this._resizeCanvas(Q,ee,ue),this.painter.resize(Q,ee,ue),this.painter.overLimit()){let tt=this.painter.context.gl;this._maxCanvasSize=[tt.drawingBufferWidth,tt.drawingBufferHeight];let mt=this._getClampedPixelRatio(Q,ee);this._resizeCanvas(Q,ee,mt),this.painter.resize(Q,ee,mt)}this.transform.resize(Q,ee),(w=this._requestedCameraState)===null||w===void 0||w.resize(Q,ee);let Ve=!this._moving;return Ve&&(this.stop(),this.fire(new a.k("movestart",le)).fire(new a.k("move",le))),this.fire(new a.k("resize",le)),Ve&&this.fire(new a.k("moveend",le)),this}_getClampedPixelRatio(le,w){let{0:q,1:Q}=this._maxCanvasSize,ee=this.getPixelRatio(),ue=le*ee,Ve=w*ee;return Math.min(ue>q?q/ue:1,Ve>Q?Q/Ve:1)*ee}getPixelRatio(){var le;return(le=this._overridePixelRatio)!==null&&le!==void 0?le:devicePixelRatio}setPixelRatio(le){this._overridePixelRatio=le,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(le){return this.transform.setMaxBounds(ce.convert(le)),this._update()}setMinZoom(le){if((le=le==null?-2:le)>=-2&&le<=this.transform.maxZoom)return this.transform.minZoom=le,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=le,this._update(),this.getZoom()>le&&this.setZoom(le),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(le){if((le=le==null?0:le)<0)throw new Error("minPitch must be greater than or equal to 0");if(le>=0&&le<=this.transform.maxPitch)return this.transform.minPitch=le,this._update(),this.getPitch()85)throw new Error("maxPitch must be less than or equal to 85");if(le>=this.transform.minPitch)return this.transform.maxPitch=le,this._update(),this.getPitch()>le&&this.setPitch(le),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(le){return this.transform.renderWorldCopies=le,this._update()}project(le){return this.transform.locationPoint(a.N.convert(le),this.style&&this.terrain)}unproject(le){return this.transform.pointLocation(a.P.convert(le),this.terrain)}isMoving(){var le;return this._moving||((le=this.handlers)===null||le===void 0?void 0:le.isMoving())}isZooming(){var le;return this._zooming||((le=this.handlers)===null||le===void 0?void 0:le.isZooming())}isRotating(){var le;return this._rotating||((le=this.handlers)===null||le===void 0?void 0:le.isRotating())}_createDelegatedListener(le,w,q){if(le==="mouseenter"||le==="mouseover"){let Q=!1;return{layers:w,listener:q,delegates:{mousemove:ue=>{let Ve=w.filter(mt=>this.getLayer(mt)),tt=Ve.length!==0?this.queryRenderedFeatures(ue.point,{layers:Ve}):[];tt.length?Q||(Q=!0,q.call(this,new Ta(le,this,ue.originalEvent,{features:tt}))):Q=!1},mouseout:()=>{Q=!1}}}}if(le==="mouseleave"||le==="mouseout"){let Q=!1;return{layers:w,listener:q,delegates:{mousemove:Ve=>{let tt=w.filter(mt=>this.getLayer(mt));(tt.length!==0?this.queryRenderedFeatures(Ve.point,{layers:tt}):[]).length?Q=!0:Q&&(Q=!1,q.call(this,new Ta(le,this,Ve.originalEvent)))},mouseout:Ve=>{Q&&(Q=!1,q.call(this,new Ta(le,this,Ve.originalEvent)))}}}}{let Q=ee=>{let ue=w.filter(tt=>this.getLayer(tt)),Ve=ue.length!==0?this.queryRenderedFeatures(ee.point,{layers:ue}):[];Ve.length&&(ee.features=Ve,q.call(this,ee),delete ee.features)};return{layers:w,listener:q,delegates:{[le]:Q}}}}_saveDelegatedListener(le,w){this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[le]=this._delegatedListeners[le]||[],this._delegatedListeners[le].push(w)}_removeDelegatedListener(le,w,q){if(!this._delegatedListeners||!this._delegatedListeners[le])return;let Q=this._delegatedListeners[le];for(let ee=0;eew.includes(Ve))){for(let Ve in ue.delegates)this.off(Ve,ue.delegates[Ve]);return void Q.splice(ee,1)}}}on(le,w,q){if(q===void 0)return super.on(le,w);let Q=this._createDelegatedListener(le,typeof w=="string"?[w]:w,q);this._saveDelegatedListener(le,Q);for(let ee in Q.delegates)this.on(ee,Q.delegates[ee]);return this}once(le,w,q){if(q===void 0)return super.once(le,w);let Q=typeof w=="string"?[w]:w,ee=this._createDelegatedListener(le,Q,q);for(let ue in ee.delegates){let Ve=ee.delegates[ue];ee.delegates[ue]=(...tt)=>{this._removeDelegatedListener(le,Q,q),Ve(...tt)}}this._saveDelegatedListener(le,ee);for(let ue in ee.delegates)this.once(ue,ee.delegates[ue]);return this}off(le,w,q){return q===void 0?super.off(le,w):(this._removeDelegatedListener(le,typeof w=="string"?[w]:w,q),this)}queryRenderedFeatures(le,w){if(!this.style)return[];let q,Q=le instanceof a.P||Array.isArray(le),ee=Q?le:[[0,0],[this.transform.width,this.transform.height]];if(w=w||(Q?{}:le)||{},ee instanceof a.P||typeof ee[0]=="number")q=[a.P.convert(ee)];else{let ue=a.P.convert(ee[0]),Ve=a.P.convert(ee[1]);q=[ue,new a.P(Ve.x,ue.y),Ve,new a.P(ue.x,Ve.y),ue]}return this.style.queryRenderedFeatures(q,w,this.transform)}querySourceFeatures(le,w){return this.style.querySourceFeatures(le,w)}setStyle(le,w){return(w=a.e({},{localIdeographFontFamily:this._localIdeographFontFamily,validate:this._validateStyle},w)).diff!==!1&&w.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&le?(this._diffStyle(le,w),this):(this._localIdeographFontFamily=w.localIdeographFontFamily,this._updateStyle(le,w))}setTransformRequest(le){return this._requestManager.setTransformRequest(le),this}_getUIString(le){let w=this._locale[le];if(w==null)throw new Error(`Missing UI string '${le}'`);return w}_updateStyle(le,w){if(w.transformStyle&&this.style&&!this.style._loaded)return void this.style.once("style.load",()=>this._updateStyle(le,w));let q=this.style&&w.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!le)),le?(this.style=new xn(this,w||{}),this.style.setEventedParent(this,{style:this.style}),typeof le=="string"?this.style.loadURL(le,w,q):this.style.loadJSON(le,w,q),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new xn(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(le,w){if(typeof le=="string"){let q=this._requestManager.transformRequest(le,"Style");a.h(q,new AbortController).then(Q=>{this._updateDiff(Q.data,w)}).catch(Q=>{Q&&this.fire(new a.j(Q))})}else typeof le=="object"&&this._updateDiff(le,w)}_updateDiff(le,w){try{this.style.setState(le,w)&&this._update(!0)}catch(q){a.w(`Unable to perform style diff: ${q.message||q.error||q}. Rebuilding the style from scratch.`),this._updateStyle(le,w)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():a.w("There is no style added to the map.")}addSource(le,w){return this._lazyInitEmptyStyle(),this.style.addSource(le,w),this._update(!0)}isSourceLoaded(le){let w=this.style&&this.style.sourceCaches[le];if(w!==void 0)return w.loaded();this.fire(new a.j(new Error(`There is no source with ID '${le}'`)))}setTerrain(le){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),le){let w=this.style.sourceCaches[le.source];if(!w)throw new Error(`cannot load terrain, because there exists no source with ID: ${le.source}`);this.terrain===null&&w.reload();for(let q in this.style._layers){let Q=this.style._layers[q];Q.type==="hillshade"&&Q.source===le.source&&a.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new Ks(this.painter,w,le),this.painter.renderToTexture=new Bl(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=q=>{q.dataType==="style"?this.terrain.sourceCache.freeRtt():q.dataType==="source"&&q.tile&&(q.sourceId!==le.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(q.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new a.k("terrain",{terrain:le})),this}getTerrain(){var le,w;return(w=(le=this.terrain)===null||le===void 0?void 0:le.options)!==null&&w!==void 0?w:null}areTilesLoaded(){let le=this.style&&this.style.sourceCaches;for(let w in le){let q=le[w]._tiles;for(let Q in q){let ee=q[Q];if(ee.state!=="loaded"&&ee.state!=="errored")return!1}}return!0}removeSource(le){return this.style.removeSource(le),this._update(!0)}getSource(le){return this.style.getSource(le)}addImage(le,w,q={}){let{pixelRatio:Q=1,sdf:ee=!1,stretchX:ue,stretchY:Ve,content:tt,textFitWidth:mt,textFitHeight:Bt}=q;if(this._lazyInitEmptyStyle(),!(w instanceof HTMLImageElement||a.b(w))){if(w.width===void 0||w.height===void 0)return this.fire(new a.j(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{let{width:ir,height:or,data:kr}=w,Vr=w;return this.style.addImage(le,{data:new a.R({width:ir,height:or},new Uint8Array(kr)),pixelRatio:Q,stretchX:ue,stretchY:Ve,content:tt,textFitWidth:mt,textFitHeight:Bt,sdf:ee,version:0,userImage:Vr}),Vr.onAdd&&Vr.onAdd(this,le),this}}{let{width:ir,height:or,data:kr}=l.getImageData(w);this.style.addImage(le,{data:new a.R({width:ir,height:or},kr),pixelRatio:Q,stretchX:ue,stretchY:Ve,content:tt,textFitWidth:mt,textFitHeight:Bt,sdf:ee,version:0})}}updateImage(le,w){let q=this.style.getImage(le);if(!q)return this.fire(new a.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));let Q=w instanceof HTMLImageElement||a.b(w)?l.getImageData(w):w,{width:ee,height:ue,data:Ve}=Q;if(ee===void 0||ue===void 0)return this.fire(new a.j(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(ee!==q.data.width||ue!==q.data.height)return this.fire(new a.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));let tt=!(w instanceof HTMLImageElement||a.b(w));return q.data.replace(Ve,tt),this.style.updateImage(le,q),this}getImage(le){return this.style.getImage(le)}hasImage(le){return le?!!this.style.getImage(le):(this.fire(new a.j(new Error("Missing required image id"))),!1)}removeImage(le){this.style.removeImage(le)}loadImage(le){return v.getImage(this._requestManager.transformRequest(le,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(le,w){return this._lazyInitEmptyStyle(),this.style.addLayer(le,w),this._update(!0)}moveLayer(le,w){return this.style.moveLayer(le,w),this._update(!0)}removeLayer(le){return this.style.removeLayer(le),this._update(!0)}getLayer(le){return this.style.getLayer(le)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(le,w,q){return this.style.setLayerZoomRange(le,w,q),this._update(!0)}setFilter(le,w,q={}){return this.style.setFilter(le,w,q),this._update(!0)}getFilter(le){return this.style.getFilter(le)}setPaintProperty(le,w,q,Q={}){return this.style.setPaintProperty(le,w,q,Q),this._update(!0)}getPaintProperty(le,w){return this.style.getPaintProperty(le,w)}setLayoutProperty(le,w,q,Q={}){return this.style.setLayoutProperty(le,w,q,Q),this._update(!0)}getLayoutProperty(le,w){return this.style.getLayoutProperty(le,w)}setGlyphs(le,w={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(le,w),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(le,w,q={}){return this._lazyInitEmptyStyle(),this.style.addSprite(le,w,q,Q=>{Q||this._update(!0)}),this}removeSprite(le){return this._lazyInitEmptyStyle(),this.style.removeSprite(le),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(le,w={}){return this._lazyInitEmptyStyle(),this.style.setSprite(le,w,q=>{q||this._update(!0)}),this}setLight(le,w={}){return this._lazyInitEmptyStyle(),this.style.setLight(le,w),this._update(!0)}getLight(){return this.style.getLight()}setSky(le){return this._lazyInitEmptyStyle(),this.style.setSky(le),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(le,w){return this.style.setFeatureState(le,w),this._update()}removeFeatureState(le,w){return this.style.removeFeatureState(le,w),this._update()}getFeatureState(le){return this.style.getFeatureState(le)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let le=0,w=0;return this._container&&(le=this._container.clientWidth||400,w=this._container.clientHeight||300),[le,w]}_setupContainer(){let le=this._container;le.classList.add("maplibregl-map");let w=this._canvasContainer=f.create("div","maplibregl-canvas-container",le);this._interactive&&w.classList.add("maplibregl-interactive"),this._canvas=f.create("canvas","maplibregl-canvas",w),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");let q=this._containerDimensions(),Q=this._getClampedPixelRatio(q[0],q[1]);this._resizeCanvas(q[0],q[1],Q);let ee=this._controlContainer=f.create("div","maplibregl-control-container",le),ue=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(Ve=>{ue[Ve]=f.create("div",`maplibregl-ctrl-${Ve} `,ee)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(le,w,q){this._canvas.width=Math.floor(q*le),this._canvas.height=Math.floor(q*w),this._canvas.style.width=`${le}px`,this._canvas.style.height=`${w}px`}_setupPainter(){let le={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1},w=null;this._canvas.addEventListener("webglcontextcreationerror",Q=>{w={requestedAttributes:le},Q&&(w.statusMessage=Q.statusMessage,w.type=Q.type)},{once:!0});let q=this._canvas.getContext("webgl2",le)||this._canvas.getContext("webgl",le);if(!q){let Q="Failed to initialize WebGL";throw w?(w.message=Q,new Error(JSON.stringify(w))):new Error(Q)}this.painter=new Qs(q,this.transform),c.testSupport(q)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(le){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||le,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(le){return this._update(),this._renderTaskQueue.add(le)}_cancelRenderFrame(le){this._renderTaskQueue.remove(le)}_render(le){let w=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(le),this._removed)return;let q=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;let ee=this.transform.zoom,ue=l.now();this.style.zoomHistory.update(ee,ue);let Ve=new a.z(ee,{now:ue,fadeDuration:w,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),tt=Ve.crossFadingFactor();tt===1&&tt===this._crossFadingFactor||(q=!0,this._crossFadingFactor=tt),this.style.update(Ve)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,w,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:w,showPadding:this.showPadding}),this.fire(new a.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,a.bf.mark(a.bg.load),this.fire(new a.k("load"))),this.style&&(this.style.hasTransitions()||q)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();let Q=this._sourcesDirty||this._styleDirty||this._placementDirty;return Q||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new a.k("idle")),!this._loaded||this._fullyLoaded||Q||(this._fullyLoaded=!0,a.bf.mark(a.bg.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var le;this._hash&&this._hash.remove();for(let q of this._controls)q.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window!="undefined"&&removeEventListener("online",this._onWindowOnline,!1),v.removeThrottleControl(this._imageQueueHandle),(le=this._resizeObserver)===null||le===void 0||le.disconnect();let w=this.painter.context.gl.getExtension("WEBGL_lose_context");w!=null&&w.loseContext&&w.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),f.remove(this._canvasContainer),f.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),a.bf.clearMetrics(),this._removed=!0,this.fire(new a.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,l.frameAsync(this._frameRequest).then(le=>{a.bf.frame(le),this._frameRequest=null,this._render(le)}).catch(()=>{}))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(le){this._showTileBoundaries!==le&&(this._showTileBoundaries=le,this._update())}get showPadding(){return!!this._showPadding}set showPadding(le){this._showPadding!==le&&(this._showPadding=le,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(le){this._showCollisionBoxes!==le&&(this._showCollisionBoxes=le,le?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(le){this._showOverdrawInspector!==le&&(this._showOverdrawInspector=le,this._update())}get repaint(){return!!this._repaint}set repaint(le){this._repaint!==le&&(this._repaint=le,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(le){this._vertices=le,this._update()}get version(){return eu}getCameraTargetElevation(){return this.transform.elevation}},i.MapMouseEvent=Ta,i.MapTouchEvent=os,i.MapWheelEvent=_l,i.Marker=il,i.NavigationControl=class{constructor(le){this._updateZoomButtons=()=>{let w=this._map.getZoom(),q=w===this._map.getMaxZoom(),Q=w===this._map.getMinZoom();this._zoomInButton.disabled=q,this._zoomOutButton.disabled=Q,this._zoomInButton.setAttribute("aria-disabled",q.toString()),this._zoomOutButton.setAttribute("aria-disabled",Q.toString())},this._rotateCompassArrow=()=>{let w=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=w},this._setButtonTitle=(w,q)=>{let Q=this._map._getUIString(`NavigationControl.${q}`);w.title=Q,w.setAttribute("aria-label",Q)},this.options=a.e({},ja,le),this._container=f.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",w=>w.preventDefault()),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",w=>this._map.zoomIn({},{originalEvent:w})),f.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",w=>this._map.zoomOut({},{originalEvent:w})),f.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",w=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:w}):this._map.resetNorth({},{originalEvent:w})}),this._compassIcon=f.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(le){return this._map=le,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new ns(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){f.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(le,w){let q=f.create("button",le,this._container);return q.type="button",q.addEventListener("click",w),q}},i.Popup=class extends a.E{constructor(le){super(),this.remove=()=>(this._content&&f.remove(this._content),this._container&&(f.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new a.k("close"))),this),this._onMouseUp=w=>{this._update(w.point)},this._onMouseMove=w=>{this._update(w.point)},this._onDrag=w=>{this._update(w.point)},this._update=w=>{var q;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=f.create("div","maplibregl-popup",this._map.getContainer()),this._tip=f.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(let tt of this.options.className.split(" "))this._container.classList.add(tt);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?cs(this._lngLat,this._flatPos,this._map.transform):(q=this._lngLat)===null||q===void 0?void 0:q.wrap(),this._trackPointer&&!w)return;let Q=this._flatPos=this._pos=this._trackPointer&&w?w:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&w?w:this._map.transform.locationPoint(this._lngLat));let ee=this.options.anchor,ue=Vl(this.options.offset);if(!ee){let tt=this._container.offsetWidth,mt=this._container.offsetHeight,Bt;Bt=Q.y+ue.bottom.ythis._map.transform.height-mt?["bottom"]:[],Q.xthis._map.transform.width-tt/2&&Bt.push("right"),ee=Bt.length===0?"bottom":Bt.join("-")}let Ve=Q.add(ue[ee]);this.options.subpixelPositioning||(Ve=Ve.round()),f.setTransform(this._container,`${sl[ee]} translate(${Ve.x}px,${Ve.y}px)`),ll(this._container,ee,"popup")},this._onClose=()=>{this.remove()},this.options=a.e(Object.create(Os),le)}addTo(le){return this._map&&this.remove(),this._map=le,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new a.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(le){return this._lngLat=a.N.convert(le),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(le){return this.setDOMContent(document.createTextNode(le))}setHTML(le){let w=document.createDocumentFragment(),q=document.createElement("body"),Q;for(q.innerHTML=le;Q=q.firstChild,Q;)w.appendChild(Q);return this.setDOMContent(w)}getMaxWidth(){var le;return(le=this._container)===null||le===void 0?void 0:le.style.maxWidth}setMaxWidth(le){return this.options.maxWidth=le,this._update(),this}setDOMContent(le){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=f.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(le),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(le){return this._container&&this._container.classList.add(le),this}removeClassName(le){return this._container&&this._container.classList.remove(le),this}setOffset(le){return this.options.offset=le,this._update(),this}toggleClassName(le){if(this._container)return this._container.classList.toggle(le)}setSubpixelPositioning(le){this.options.subpixelPositioning=le}_createCloseButton(){this.options.closeButton&&(this._closeButton=f.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;let le=this._container.querySelector(Xl);le&&le.focus()}},i.RasterDEMTileSource=Nt,i.RasterTileSource=gt,i.ScaleControl=class{constructor(le){this._onMove=()=>{Ll(this._map,this._container,this.options)},this.setUnit=w=>{this.options.unit=w,Ll(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},Tl),le)}getDefaultPosition(){return"bottom-left"}onAdd(le){return this._map=le,this._container=f.create("div","maplibregl-ctrl maplibregl-ctrl-scale",le.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){f.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},i.ScrollZoomHandler=Fr,i.Style=xn,i.TerrainControl=class{constructor(le){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=le}onAdd(le){return this._map=le,this._container=f.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=f.create("button","maplibregl-ctrl-terrain",this._container),f.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){f.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},i.TwoFingersTouchPitchHandler=Bs,i.TwoFingersTouchRotateHandler=Rs,i.TwoFingersTouchZoomHandler=Ms,i.TwoFingersTouchZoomRotateHandler=Pi,i.VectorTileSource=nt,i.VideoSource=wt,i.addSourceType=(le,w)=>a._(void 0,void 0,void 0,function*(){if(Zt(le))throw new Error(`A source type called "${le}" already exists.`);((q,Q)=>{Dt[q]=Q})(le,w)}),i.clearPrewarmedResources=function(){let le=de;le&&(le.isPreloaded()&&le.numActive()===1?(le.release(be),de=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},i.getMaxParallelImageRequests=function(){return a.a.MAX_PARALLEL_IMAGE_REQUESTS},i.getRTLTextPluginStatus=function(){return Tt().getRTLTextPluginStatus()},i.getVersion=function(){return Nl},i.getWorkerCount=function(){return ze.workerCount},i.getWorkerUrl=function(){return a.a.WORKER_URL},i.importScriptInWorkers=function(le){return Me().broadcast("IS",le)},i.prewarm=function(){ke().acquire(be)},i.setMaxParallelImageRequests=function(le){a.a.MAX_PARALLEL_IMAGE_REQUESTS=le},i.setRTLTextPlugin=function(le,w){return Tt().setRTLTextPlugin(le,w)},i.setWorkerCount=function(le){ze.workerCount=le},i.setWorkerUrl=function(le){a.a.WORKER_URL=le}});var n=e;return n})});var YWe=Ae((vwr,ZWe)=>{"use strict";var aw=ei(),BZt=Xf().sanitizeHTML,OZt=FJ(),WWe=wx();function jWe(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=WWe.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var am=jWe.prototype;am.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=xB(t)};am.needsNewImage=function(e){var t=this.subplot.map;return t.getSource(this.idSource)&&this.sourceType==="image"&&e.sourcetype==="image"&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))};am.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type};am.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]};am.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]};am.updateImage=function(e){var t=this.subplot.map;t.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var r=this.findFollowingMapLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)};am.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,!!xB(e)){var r=qZt(e);t.addSource(this.idSource,r)}};am.findFollowingMapLayerId=function(e){if(e==="traces")for(var t=this.subplot.getMapLayers(),r=0;r0){for(var r=0;r0}function XWe(e){var t={},r={};switch(e.type){case"circle":aw.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":aw.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":aw.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var n=e.symbol,i=OZt(n.textposition,n.iconsize);aw.extendFlat(t,{"icon-image":n.icon+"-15","icon-size":n.iconsize/10,"text-field":n.text,"text-size":n.textfont.size,"text-anchor":i.anchor,"text-offset":i.offset,"symbol-placement":n.placement}),aw.extendFlat(r,{"icon-color":e.color,"text-color":n.textfont.color,"text-opacity":e.opacity});break;case"raster":aw.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity});break}return{layout:t,paint:r}}function qZt(e){var t=e.sourcetype,r=e.source,n={type:t},i;return t==="geojson"?i="data":t==="vector"?i=typeof r=="string"?"url":"tiles":t==="raster"?(i="tiles",n.tileSize=256):t==="image"&&(i="url",n.coordinates=e.coordinates),n[i]=r,e.sourceattribution&&(n.attribution=BZt(e.sourceattribution)),n}ZWe.exports=function(t,r,n){var i=new jWe(t,r);return i.update(n),i}});var ije=Ae((mwr,rje)=>{"use strict";var VJ=HWe(),GJ=ei(),$We=ix(),KWe=$l(),NZt=wu(),UZt=xp(),bB=Xc(),QWe=Em(),VZt=QWe.drawMode,GZt=QWe.selectMode,HZt=oh().prepSelect,WZt=oh().clearOutline,jZt=oh().clearSelectionsCache,XZt=oh().selectOnClick,ow=wx(),ZZt=YWe();function eje(e,t){this.id=t,this.gd=e;var r=e._fullLayout,n=e._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var Xh=eje.prototype;Xh.plot=function(e,t,r){var n=this,i;n.map?i=new Promise(function(a,o){n.updateMap(e,t,a,o)}):i=new Promise(function(a,o){n.createMap(e,t,a,o)}),r.push(i)};Xh.createMap=function(e,t,r,n){var i=this,a=t[i.id],o=i.styleObj=tje(a.style),s=a.bounds,u=s?[[s.west,s.south],[s.east,s.north]]:null,l=i.map=new VJ.Map({container:i.div,style:o.style,center:HJ(a.center),zoom:a.zoom,bearing:a.bearing,pitch:a.pitch,maxBounds:u,interactive:!i.isStatic,preserveDrawingBuffer:i.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new VJ.AttributionControl({compact:!0})),f={};l.on("styleimagemissing",function(h){var d=h.id;if(!f[d]&&d.includes("-15")){f[d]=!0;var p=new Image(15,15);p.onload=function(){l.addImage(d,p)},p.crossOrigin="Anonymous",p.src="https://unpkg.com/maki@2.1.0/icons/"+d+".svg"}}),l.setTransformRequest(function(h){return h=h.replace("https://fonts.openmaptiles.org/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),h=h.replace("https://tiles.basemaps.cartocdn.com/fonts/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),h=h.replace("https://fonts.openmaptiles.org/Open Sans Regular,Arial Unicode MS Regular","https://fonts.openmaptiles.org/Klokantech Noto Sans Regular"),{url:h}}),l._canvas.style.left="0px",l._canvas.style.top="0px",i.rejectOnError(n),i.isStatic||i.initFx(e,t);var c=[];c.push(new Promise(function(h){l.once("load",h)})),c=c.concat($We.fetchTraceGeoData(e)),Promise.all(c).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Xh.updateMap=function(e,t,r,n){var i=this,a=i.map,o=t[this.id];i.rejectOnError(n);var s=[],u=tje(o.style);JSON.stringify(i.styleObj)!==JSON.stringify(u)&&(i.styleObj=u,a.setStyle(u.style),i.traceHash={},s.push(new Promise(function(l){a.once("styledata",l)}))),s=s.concat($We.fetchTraceGeoData(e)),Promise.all(s).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Xh.fillBelowLookup=function(e,t){var r=t[this.id],n=r.layers,i,a,o=this.belowLookup={},s=!1;for(i=0;i1)for(i=0;i-1&&XZt(u.originalEvent,n,[r.xaxis],[r.yaxis],r.id,s),l.indexOf("event")>-1&&bB.click(n,u.originalEvent)}}};Xh.updateFx=function(e){var t=this,r=t.map,n=t.gd;if(t.isStatic)return;function i(u){var l=t.map.unproject(u);return[l.lng,l.lat]}var a=e.dragmode,o;o=function(u,l){if(l.isRect){var f=u.range={};f[t.id]=[i([l.xmin,l.ymin]),i([l.xmax,l.ymax])]}else{var c=u.lassoPoints={};c[t.id]=l.map(i)}};var s=t.dragOptions;t.dragOptions=GJ.extendDeep(s||{},{dragmode:e.dragmode,element:t.div,gd:n,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:o},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),GZt(a)||VZt(a)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(u,l,f){HZt(u,l,f,t.dragOptions,a)},UZt.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))};Xh.updateFramework=function(e){var t=e[this.id].domain,r=e._size,n=this.div.style;n.width=r.w*(t.x[1]-t.x[0])+"px",n.height=r.h*(t.y[1]-t.y[0])+"px",n.left=r.l+t.x[0]*r.w+"px",n.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])};Xh.updateLayers=function(e){var t=e[this.id],r=t.layers,n=this.layerList,i;if(r.length!==n.length){for(i=0;i{"use strict";var WJ=ei(),KZt=k_(),JZt=Jd(),nje=Wk();aje.exports=function(t,r,n){KZt(t,r,n,{type:"map",attributes:nje,handleDefaults:$Zt,partition:"y"})};function $Zt(e,t,r){r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch");var n=r("bounds.west"),i=r("bounds.east"),a=r("bounds.south"),o=r("bounds.north");(n===void 0||i===void 0||a===void 0||o===void 0)&&delete t.bounds,JZt(e,t,{name:"layers",handleItemDefaults:QZt}),t._input=e}function QZt(e,t){function r(u,l){return WJ.coerce(e,t,nje.layers,u,l)}var n=r("visible");if(n){var i=r("sourcetype"),a=i==="raster"||i==="image";r("source"),r("sourceattribution"),i==="vector"&&r("sourcelayer"),i==="image"&&r("coordinates");var o;a&&(o="raster");var s=r("type",o);a&&s!=="raster"&&(s=t.type="raster",WJ.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),s==="circle"&&r("circle.radius"),s==="line"&&(r("line.width"),r("line.dash")),s==="fill"&&r("fill.outlinecolor"),s==="symbol"&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),WJ.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var TB=Ae(l0=>{"use strict";var wB=ei(),sje=wB.strTranslate,eYt=wB.strScale,tYt=Rd().getSubplotCalcData,rYt=jv(),iYt=Jl(),lje=Mu(),nYt=Xf(),aYt=ije(),Tx="map";l0.name=Tx;l0.attr="subplot";l0.idRoot=Tx;l0.idRegex=l0.attrRegex=wB.counterRegex(Tx);l0.attributes={subplot:{valType:"subplotid",dflt:"map",editType:"calc"}};l0.layoutAttributes=Wk();l0.supplyLayoutDefaults=oje();l0.plot=function(t){for(var r=t._fullLayout,n=t.calcdata,i=r._subplots[Tx],a=0;a_/2){var b=c.split("|").join("
");d.text(b).attr("data-unformatted",b).call(nYt.convertToTspans,e),p=lje.bBox(d.node())}d.attr("transform",sje(-3,-p.height+8)),h.insert("rect",".static-attribution").attr({x:-p.width-6,y:-p.height-3,width:p.width+6,height:p.height+3,fill:"rgba(255, 255, 255, 0.75)"});var v=1;p.width+6>_&&(v=_/(p.width+6));var k=[n.l+n.w*o.x[1],n.t+n.h*(1-o.y[0])];h.attr("transform",sje(k[0],k[1])+eYt(v))}};l0.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[Tx],n=0;n{"use strict";uje.exports={attributes:pB(),supplyDefaults:wWe(),colorbar:ep(),formatLabels:DJ(),calc:vF(),plot:FWe(),hoverPoints:_B().hoverPoints,eventData:NWe(),selectPoints:VWe(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermap",basePlotModule:TB(),categories:["map","gl","symbols","showLegend","scatter-like"],meta:{}}});var hje=Ae((xwr,cje)=>{"use strict";cje.exports=fje()});var jJ=Ae((bwr,dje)=>{"use strict";var d1=tS(),oYt=nc(),{hovertemplateAttrs:sYt,templatefallbackAttrs:lYt}=Ff(),uYt=Gf(),Ax=Su().extendFlat;dje.exports=Ax({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:Ax({},d1.featureidkey,{}),below:{valType:"string",editType:"plot"},text:d1.text,hovertext:d1.hovertext,marker:{line:{color:Ax({},d1.marker.line.color,{editType:"plot"}),width:Ax({},d1.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:Ax({},d1.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:Ax({},d1.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:Ax({},d1.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:d1.hoverinfo,hovertemplate:sYt({},{keys:["properties"]}),hovertemplatefallback:lYt(),showlegend:Ax({},uYt.showlegend,{dflt:!1})},oYt("",{cLetter:"z",editTypeOverride:"calc"}))});var vje=Ae((wwr,pje)=>{"use strict";var Yk=ei(),fYt=rd(),cYt=jJ();pje.exports=function(t,r,n,i){function a(f,c){return Yk.coerce(t,r,cYt,f,c)}var o=a("locations"),s=a("z"),u=a("geojson");if(!Yk.isArrayOrTypedArray(o)||!o.length||!Yk.isArrayOrTypedArray(s)||!s.length||!(typeof u=="string"&&u!==""||Yk.isPlainObject(u))){r.visible=!1;return}a("featureidkey"),r._length=Math.min(o.length,s.length),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var l=a("marker.line.width");l&&a("marker.line.color"),a("marker.opacity"),fYt(t,r,i,a,{prefix:"",cLetter:"z"}),Yk.coerceSelectionMarkerOpacity(r,a)}});var XJ=Ae((Twr,gje)=>{"use strict";var hYt=ku(),p1=ei(),dYt=_c(),pYt=Mu(),vYt=tx().makeBlank,mje=ix();function mYt(e){var t=e[0].trace,r=t.visible===!0&&t._length!==0,n={layout:{visibility:"none"},paint:{}},i={layout:{visibility:"none"},paint:{}},a=t._opts={fill:n,line:i,geojson:vYt()};if(!r)return a;var o=mje.extractTraceFeature(e);if(!o)return a;var s=dYt.makeColorScaleFuncFromTrace(t),u=t.marker,l=u.line||{},f;p1.isArrayOrTypedArray(u.opacity)&&(f=function(k){var E=k.mo;return hYt(E)?+p1.constrain(E,0,1):0});var c;p1.isArrayOrTypedArray(l.color)&&(c=function(k){return k.mlc});var h;p1.isArrayOrTypedArray(l.width)&&(h=function(k){return k.mlw});for(var d=0;d{"use strict";var xje=XJ().convert,yYt=XJ().convertOnSelect,_je=wx().traceLayerPrefix;function bje(e,t){this.type="choroplethmap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",_je+t+"-fill"],["line",_je+t+"-line"]],this.below=null}var LS=bje.prototype;LS.update=function(e){this._update(xje(e)),e[0].trace._glTrace=this};LS.updateOnSelect=function(e){this._update(yYt(e))};LS._update=function(e){var t=this.subplot,r=this.layerList,n=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(e.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(e,n),this.below=n);for(var i=0;i=0;r--)e.removeLayer(t[r][1])};LS.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};wje.exports=function(t,r){var n=r[0].trace,i=new bje(t,n.uid),a=i.sourceId,o=xje(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),r[0].trace._glTrace=i,i}});var Sje=Ae((Swr,Aje)=>{"use strict";Aje.exports={attributes:jJ(),supplyDefaults:vje(),colorbar:S_(),calc:FF(),plot:Tje(),hoverPoints:OF(),eventData:qF(),selectPoints:NF(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.updateOnSelect(t)}},getBelow:function(e,t){for(var r=t.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if(typeof i=="string"&&i.indexOf("water")===0){for(var a=n+1;a{"use strict";Mje.exports=Sje()});var YJ=Ae((Ewr,Cje)=>{"use strict";var gYt=nc(),{hovertemplateAttrs:_Yt,templatefallbackAttrs:xYt}=Ff(),kje=Gf(),AB=pB(),ZJ=Su().extendFlat;Cje.exports=ZJ({lon:AB.lon,lat:AB.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:AB.text,hovertext:AB.hovertext,hoverinfo:ZJ({},kje.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:_Yt(),hovertemplatefallback:xYt(),showlegend:ZJ({},kje.showlegend,{dflt:!1})},gYt("",{cLetter:"z",editTypeOverride:"calc"}))});var Pje=Ae((kwr,Lje)=>{"use strict";var bYt=ei(),wYt=rd(),TYt=YJ();Lje.exports=function(t,r,n,i){function a(l,f){return bYt.coerce(t,r,TYt,l,f)}var o=a("lon")||[],s=a("lat")||[],u=Math.min(o.length,s.length);if(!u){r.visible=!1;return}r._length=u,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),wYt(t,r,i,a,{prefix:"",cLetter:"z"})}});var Rje=Ae((Cwr,Ije)=>{"use strict";var KJ=ku(),AYt=ei().isArrayOrTypedArray,JJ=rf().BADNUM,SYt=gp(),zje=ei()._;Ije.exports=function(t,r){for(var n=r._length,i=new Array(n),a=r.z,o=AYt(a)&&a.length,s=0;s{"use strict";var MYt=ku(),$J=ei(),Dje=jl(),Fje=_c(),Bje=rf().BADNUM,EYt=tx().makeBlank;Oje.exports=function(t){var r=t[0].trace,n=r.visible===!0&&r._length!==0,i={layout:{visibility:"none"},paint:{}},a=r._opts={heatmap:i,geojson:EYt()};if(!n)return a;var o=[],s,u=r.z,l=r.radius,f=$J.isArrayOrTypedArray(u)&&u.length,c=$J.isArrayOrTypedArray(l);for(s=0;s0?+l[s]:0),o.push({type:"Feature",geometry:{type:"Point",coordinates:d},properties:p})}}var b=Fje.extractOpts(r),v=b.reversescale?Fje.flipScale(b.colorscale):b.colorscale,k=v[0][1],E=Dje.opacity(k)<1?k:Dje.addOpacity(k,0),A=["interpolate",["linear"],["heatmap-density"],0,E];for(s=1;s{"use strict";var Nje=qje(),kYt=wx().traceLayerPrefix;function Uje(e,t){this.type="densitymap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",kYt+t+"-heatmap"]],this.below=null}var SB=Uje.prototype;SB.update=function(e){var t=this.subplot,r=this.layerList,n=Nje(e),i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(n.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(n,i),this.below=i);for(var a=0;a=0;r--)e.removeLayer(t[r][1])};SB.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};Vje.exports=function(t,r){var n=r[0].trace,i=new Uje(t,n.uid),a=i.sourceId,o=Nje(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),i}});var Wje=Ae((zwr,Hje)=>{"use strict";var CYt=wu(),LYt=_B().hoverPoints,PYt=_B().getExtraText;Hje.exports=function(t,r,n){var i=LYt(t,r,n);if(i){var a=i[0],o=a.cd,s=o[0].trace,u=o[a.index];if(delete a.color,"z"in u){var l=a.subplot.mockAxis;a.z=u.z,a.zLabel=CYt.tickText(l,l.c2l(u.z),"hover").text}return a.extraText=PYt(s,u,o[0].t.labels),[a]}}});var Xje=Ae((Iwr,jje)=>{"use strict";jje.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var Yje=Ae((Rwr,Zje)=>{"use strict";Zje.exports={attributes:YJ(),supplyDefaults:Pje(),colorbar:S_(),formatLabels:DJ(),calc:Rje(),plot:Gje(),hoverPoints:Wje(),eventData:Xje(),getBelow:function(e,t){for(var r=t.getMapLayers(),n=0;n{"use strict";Kje.exports=Yje()});var e$=Ae((Bwr,rXe)=>{"use strict";var zYt=gc(),IYt=Gf(),$je=Fh(),QJ=a3(),RYt=zc().attributes,{hovertemplateAttrs:Qje,templatefallbackAttrs:eXe}=Ff(),DYt=nc(),FYt=Lf().templatedArray,BYt=jc().descriptionOnlyNumbers,tXe=Su().extendFlat,OYt=Sc().overrideAll,Fwr=rXe.exports=OYt({hoverinfo:tXe({},IYt.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:QJ.hoverlabel,domain:RYt({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h"},valueformat:{valType:"string",dflt:".3s",description:BYt("value")},valuesuffix:{valType:"string",dflt:""},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap"},textfont:zYt({autoShadowDflt:!0}),customdata:void 0,node:{label:{valType:"data_array",dflt:[]},groups:{valType:"info_array",impliedEdits:{x:[],y:[]},dimensions:2,freeLength:!0,dflt:[],items:{valType:"number",editType:"calc"}},x:{valType:"data_array",dflt:[]},y:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:$je.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:.5,arrayOk:!0}},pad:{valType:"number",arrayOk:!1,min:0,dflt:20},thickness:{valType:"number",arrayOk:!1,min:1,dflt:20},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:QJ.hoverlabel,hovertemplate:Qje({},{keys:["value","label"]}),hovertemplatefallback:eXe(),align:{valType:"enumerated",values:["justify","left","right","center"],dflt:"justify"}},link:{arrowlen:{valType:"number",min:0,dflt:0},label:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},hovercolor:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:$je.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:0,arrayOk:!0}},source:{valType:"data_array",dflt:[]},target:{valType:"data_array",dflt:[]},value:{valType:"data_array",dflt:[]},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:QJ.hoverlabel,hovertemplate:Qje({},{keys:["value","label"]}),hovertemplatefallback:eXe(),colorscales:FYt("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:tXe(DYt().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")});var sXe=Ae((Owr,oXe)=>{"use strict";var PS=ei(),MB=e$(),qYt=jl(),iXe=cd(),NYt=zc().defaults,nXe=h5(),aXe=Lf(),UYt=Jd();oXe.exports=function(t,r,n,i){function a(A,L){return PS.coerce(t,r,MB,A,L)}var o=PS.extendDeep(i.hoverlabel,t.hoverlabel),s=t.node,u=aXe.newContainer(r,"node");function l(A,L){return PS.coerce(s,u,MB.node,A,L)}l("label"),l("groups"),l("x"),l("y"),l("pad"),l("thickness"),l("line.color"),l("line.width"),l("hoverinfo",t.hoverinfo),nXe(s,u,l,o),l("hovertemplate"),l("align");var f=i.colorway,c=function(A){return f[A%f.length]};l("color",u.label.map(function(A,L){return qYt.addOpacity(c(L),.8)})),l("customdata");var h=t.link||{},d=aXe.newContainer(r,"link");function p(A,L){return PS.coerce(h,d,MB.link,A,L)}p("label"),p("arrowlen"),p("source"),p("target"),p("value"),p("line.color"),p("line.width"),p("hoverinfo",t.hoverinfo),nXe(h,d,p,o),p("hovertemplate");var _=iXe(i.paper_bgcolor).getLuminance()<.333,b=_?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)",v=p("color",b);function k(A){var L=iXe(A);if(!L.isValid())return A;var x=L.getAlpha();return x<=.8?L.setAlpha(x+.2):L=_?L.brighten():L.darken(),L.toRgbString()}p("hovercolor",Array.isArray(v)?v.map(k):k(v)),p("customdata"),UYt(h,d,{name:"colorscales",handleItemDefaults:VYt}),NYt(r,i,a),a("orientation"),a("valueformat"),a("valuesuffix");var E;u.x.length&&u.y.length&&(E="freeform"),a("arrangement",E),PS.coerceFont(a,"textfont",i.font,{autoShadowDflt:!0}),r._length=null};function VYt(e,t){function r(n,i){return PS.coerce(e,t,MB.link.colorscales,n,i)}r("label"),r("cmin"),r("cmax"),r("colorscale")}});var t$=Ae((qwr,lXe)=>{"use strict";lXe.exports=GYt;function GYt(e){for(var t=e.length,r=new Array(t),n=new Array(t),i=new Array(t),a=new Array(t),o=new Array(t),s=new Array(t),u=0;u0;){b=k[k.length-1];var E=e[b];if(a[b]=0&&s[b].push(o[L])}a[b]=A}else{if(n[b]===r[b]){for(var x=[],C=[],M=0,A=v.length-1;A>=0;--A){var m=v[A];if(i[m]=!1,x.push(m),C.push(s[m]),M+=s[m].length,o[m]=f.length,m===b){v.length=A;break}}f.push(x);for(var P=new Array(M),A=0;A{"use strict";var HYt=t$(),zS=ei(),WYt=Jy().wrap,Kk=zS.isArrayOrTypedArray,uXe=zS.isIndex,fXe=_c();function jYt(e){var t=e.node,r=e.link,n=[],i=Kk(r.color),a=Kk(r.hovercolor),o=Kk(r.customdata),s={},u={},l=r.colorscales.length,f;for(f=0;fp&&(p=r.source[f]),r.target[f]>p&&(p=r.target[f]);var _=p+1;e.node._count=_;var b,v=e.node.groups,k={};for(f=0;f0&&uXe(M,_)&&uXe(m,_)&&!(k.hasOwnProperty(M)&&k.hasOwnProperty(m)&&k[M]===k[m])){k.hasOwnProperty(m)&&(m=k[m]),k.hasOwnProperty(M)&&(M=k[M]),M=+M,m=+m,s[M]=s[m]=!0;var P="";r.label&&r.label[f]&&(P=r.label[f]);var T=null;P&&u.hasOwnProperty(P)&&(T=u[P]),n.push({pointNumber:f,label:P,color:i?r.color[f]:r.color,hovercolor:a?r.hovercolor[f]:r.hovercolor,customdata:o?r.customdata[f]:r.customdata,concentrationscale:T,source:M,target:m,value:+C}),x.source.push(M),x.target.push(m)}}var B=_+v.length,F=Kk(t.color),U=Kk(t.customdata),G=[];for(f=0;f_-1,childrenNodes:[],pointNumber:f,label:j,color:F?t.color[f]:t.color,customdata:U?t.customdata[f]:t.customdata})}var W=!1;return XYt(B,x.source,x.target)&&(W=!0),{circular:W,links:n,nodes:G,groups:v,groupLookup:k}}function XYt(e,t,r){for(var n=zS.init2dArray(e,0),i=0;i1})}cXe.exports=function(t,r){var n=jYt(r);return WYt({circular:n.circular,_nodes:n.nodes,_links:n.links,_groups:n.groups,_groupLookup:n.groupLookup})}});var pXe=Ae((EB,dXe)=>{(function(e,t){typeof EB=="object"&&typeof dXe!="undefined"?t(EB):(e=e||self,t(e.d3=e.d3||{}))})(EB,function(e){"use strict";function t(C){var M=+this._x.call(null,C),m=+this._y.call(null,C);return r(this.cover(M,m),M,m,C)}function r(C,M,m,P){if(isNaN(M)||isNaN(m))return C;var T,B=C._root,F={data:P},U=C._x0,G=C._y0,j=C._x1,W=C._y1,N,H,re,ae,be,ze,Ce,de;if(!B)return C._root=F,C;for(;B.length;)if((be=M>=(N=(U+j)/2))?U=N:j=N,(ze=m>=(H=(G+W)/2))?G=H:W=H,T=B,!(B=B[Ce=ze<<1|be]))return T[Ce]=F,C;if(re=+C._x.call(null,B.data),ae=+C._y.call(null,B.data),M===re&&m===ae)return F.next=B,T?T[Ce]=F:C._root=F,C;do T=T?T[Ce]=new Array(4):C._root=new Array(4),(be=M>=(N=(U+j)/2))?U=N:j=N,(ze=m>=(H=(G+W)/2))?G=H:W=H;while((Ce=ze<<1|be)===(de=(ae>=H)<<1|re>=N));return T[de]=B,T[Ce]=F,C}function n(C){var M,m,P=C.length,T,B,F=new Array(P),U=new Array(P),G=1/0,j=1/0,W=-1/0,N=-1/0;for(m=0;mW&&(W=T),BN&&(N=B));if(G>W||j>N)return this;for(this.cover(G,j).cover(W,N),m=0;mC||C>=T||P>M||M>=B;)switch(j=(MW||(U=ae.y0)>N||(G=ae.x1)=Ce)<<1|C>=ze)&&(ae=H[H.length-1],H[H.length-1]=H[H.length-1-be],H[H.length-1-be]=ae)}else{var de=C-+this._x.call(null,re.data),te=M-+this._y.call(null,re.data),ke=de*de+te*te;if(ke=(H=(F+G)/2))?F=H:G=H,(be=N>=(re=(U+j)/2))?U=re:j=re,M=m,!(m=m[ze=be<<1|ae]))return this;if(!m.length)break;(M[ze+1&3]||M[ze+2&3]||M[ze+3&3])&&(P=M,Ce=ze)}for(;m.data!==C;)if(T=m,!(m=m.next))return this;return(B=m.next)&&delete m.next,T?(B?T.next=B:delete T.next,this):M?(B?M[ze]=B:delete M[ze],(m=M[0]||M[1]||M[2]||M[3])&&m===(M[3]||M[2]||M[1]||M[0])&&!m.length&&(P?P[Ce]=m:this._root=m),this):(this._root=B,this)}function f(C){for(var M=0,m=C.length;M{(function(e,t){t(typeof kB=="object"&&typeof vXe!="undefined"?kB:e.d3=e.d3||{})})(kB,function(e){"use strict";var t="$";function r(){}r.prototype=n.prototype={constructor:r,has:function(_){return t+_ in this},get:function(_){return this[t+_]},set:function(_,b){return this[t+_]=b,this},remove:function(_){var b=t+_;return b in this&&delete this[b]},clear:function(){for(var _ in this)_[0]===t&&delete this[_]},keys:function(){var _=[];for(var b in this)b[0]===t&&_.push(b.slice(1));return _},values:function(){var _=[];for(var b in this)b[0]===t&&_.push(this[b]);return _},entries:function(){var _=[];for(var b in this)b[0]===t&&_.push({key:b.slice(1),value:this[b]});return _},size:function(){var _=0;for(var b in this)b[0]===t&&++_;return _},empty:function(){for(var _ in this)if(_[0]===t)return!1;return!0},each:function(_){for(var b in this)b[0]===t&&_(this[b],b.slice(1),this)}};function n(_,b){var v=new r;if(_ instanceof r)_.each(function(x,C){v.set(C,x)});else if(Array.isArray(_)){var k=-1,E=_.length,A;if(b==null)for(;++k=_.length)return v!=null&&x.sort(v),k!=null?k(x):x;for(var P=-1,T=x.length,B=_[C++],F,U,G=n(),j,W=M();++P_.length)return x;var M,m=b[C-1];return k!=null&&C>=_.length?M=x.entries():(M=[],x.each(function(P,T){M.push({key:T,values:L(P,C)})})),m!=null?M.sort(function(P,T){return m(P.key,T.key)}):M}return E={object:function(x){return A(x,0,a,o)},map:function(x){return A(x,0,s,u)},entries:function(x){return L(A(x,0,s,u),0)},key:function(x){return _.push(x),E},sortKeys:function(x){return b[_.length-1]=x,E},sortValues:function(x){return v=x,E},rollup:function(x){return k=x,E}}}function a(){return{}}function o(_,b,v){_[b]=v}function s(){return n()}function u(_,b,v){_.set(b,v)}function l(){}var f=n.prototype;l.prototype=c.prototype={constructor:l,has:f.has,add:function(_){return _+="",this[t+_]=_,this},remove:f.remove,clear:f.clear,values:f.keys,size:f.size,empty:f.empty,each:f.each};function c(_,b){var v=new l;if(_ instanceof l)_.each(function(A){v.add(A)});else if(_){var k=-1,E=_.length;if(b==null)for(;++k{(function(e,t){typeof LB=="object"&&typeof mXe!="undefined"?t(LB):(e=e||self,t(e.d3=e.d3||{}))})(LB,function(e){"use strict";var t={value:function(){}};function r(){for(var s=0,u=arguments.length,l={},f;s=0&&(f=l.slice(c+1),l=l.slice(0,c)),l&&!u.hasOwnProperty(l))throw new Error("unknown type: "+l);return{type:l,name:f}})}n.prototype=r.prototype={constructor:n,on:function(s,u){var l=this._,f=i(s+"",l),c,h=-1,d=f.length;if(arguments.length<2){for(;++h0)for(var l=new Array(c),f=0,c,h;f{(function(e,t){typeof PB=="object"&&typeof gXe!="undefined"?t(PB):(e=e||self,t(e.d3=e.d3||{}))})(PB,function(e){"use strict";var t=0,r=0,n=0,i=1e3,a,o,s=0,u=0,l=0,f=typeof performance=="object"&&performance.now?performance:Date,c=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(C){setTimeout(C,17)};function h(){return u||(c(d),u=f.now()+l)}function d(){u=0}function p(){this._call=this._time=this._next=null}p.prototype=_.prototype={constructor:p,restart:function(C,M,m){if(typeof C!="function")throw new TypeError("callback is not a function");m=(m==null?h():+m)+(M==null?0:+M),!this._next&&o!==this&&(o?o._next=this:a=this,o=this),this._call=C,this._time=m,A()},stop:function(){this._call&&(this._call=null,this._time=1/0,A())}};function _(C,M,m){var P=new p;return P.restart(C,M,m),P}function b(){h(),++t;for(var C=a,M;C;)(M=u-C._time)>=0&&C._call.call(null,M),C=C._next;--t}function v(){u=(s=f.now())+l,t=r=0;try{b()}finally{t=0,E(),u=0}}function k(){var C=f.now(),M=C-s;M>i&&(l-=M,s=C)}function E(){for(var C,M=a,m,P=1/0;M;)M._call?(P>M._time&&(P=M._time),C=M,M=M._next):(m=M._next,M._next=null,M=C?C._next=m:a=m);o=C,A(P)}function A(C){if(!t){r&&(r=clearTimeout(r));var M=C-u;M>24?(C<1/0&&(r=setTimeout(v,C-f.now()-l)),n&&(n=clearInterval(n))):(n||(s=f.now(),n=setInterval(k,i)),t=1,c(v))}}function L(C,M,m){var P=new p;return M=M==null?0:+M,P.restart(function(T){P.stop(),C(T+M)},M,m),P}function x(C,M,m){var P=new p,T=M;return M==null?(P.restart(C,M,m),P):(M=+M,m=m==null?h():+m,P.restart(function B(F){F+=T,P.restart(B,T+=M,m),C(F)},M,m),P)}e.interval=x,e.now=h,e.timeout=L,e.timer=_,e.timerFlush=b,Object.defineProperty(e,"__esModule",{value:!0})})});var bXe=Ae((zB,xXe)=>{(function(e,t){typeof zB=="object"&&typeof xXe!="undefined"?t(zB,pXe(),CB(),yXe(),_Xe()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,e.d3)})(zB,function(e,t,r,n,i){"use strict";function a(C,M){var m;C==null&&(C=0),M==null&&(M=0);function P(){var T,B=m.length,F,U=0,G=0;for(T=0;TN.index){var qe=H-Ue.x-Ue.vx,ce=re-Ue.y-Ue.vy,Je=qe*qe+ce*ce;JeH+ye||Eere+ye||MeG.r&&(G.r=G[j].r)}function U(){if(M){var G,j=M.length,W;for(m=new Array(j),G=0;G1?(be==null?U.remove(ae):U.set(ae,re(be)),M):U.get(ae)},find:function(ae,be,ze){var Ce=0,de=C.length,te,ke,Ee,Me,Ue;for(ze==null?ze=1/0:ze*=ze,Ce=0;Ce1?(j.on(ae,be),M):j.on(ae)}}}function E(){var C,M,m,P=o(-30),T,B=1,F=1/0,U=.81;function G(H){var re,ae=C.length,be=t.quadtree(C,p,_).visitAfter(W);for(m=H,re=0;re=F)return;(H.data!==M||H.next)&&(ze===0&&(ze=s(),te+=ze*ze),Ce===0&&(Ce=s(),te+=Ce*Ce),te{(function(e,t){typeof IB=="object"&&typeof wXe!="undefined"?t(IB):(e=e||self,t(e.d3=e.d3||{}))})(IB,function(e){"use strict";var t=Math.PI,r=2*t,n=1e-6,i=r-n;function a(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function o(){return new a}a.prototype=o.prototype={constructor:a,moveTo:function(s,u){this._+="M"+(this._x0=this._x1=+s)+","+(this._y0=this._y1=+u)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(s,u){this._+="L"+(this._x1=+s)+","+(this._y1=+u)},quadraticCurveTo:function(s,u,l,f){this._+="Q"+ +s+","+ +u+","+(this._x1=+l)+","+(this._y1=+f)},bezierCurveTo:function(s,u,l,f,c,h){this._+="C"+ +s+","+ +u+","+ +l+","+ +f+","+(this._x1=+c)+","+(this._y1=+h)},arcTo:function(s,u,l,f,c){s=+s,u=+u,l=+l,f=+f,c=+c;var h=this._x1,d=this._y1,p=l-s,_=f-u,b=h-s,v=d-u,k=b*b+v*v;if(c<0)throw new Error("negative radius: "+c);if(this._x1===null)this._+="M"+(this._x1=s)+","+(this._y1=u);else if(k>n)if(!(Math.abs(v*p-_*b)>n)||!c)this._+="L"+(this._x1=s)+","+(this._y1=u);else{var E=l-h,A=f-d,L=p*p+_*_,x=E*E+A*A,C=Math.sqrt(L),M=Math.sqrt(k),m=c*Math.tan((t-Math.acos((L+k-x)/(2*C*M)))/2),P=m/M,T=m/C;Math.abs(P-1)>n&&(this._+="L"+(s+P*b)+","+(u+P*v)),this._+="A"+c+","+c+",0,0,"+ +(v*E>b*A)+","+(this._x1=s+T*p)+","+(this._y1=u+T*_)}},arc:function(s,u,l,f,c,h){s=+s,u=+u,l=+l,h=!!h;var d=l*Math.cos(f),p=l*Math.sin(f),_=s+d,b=u+p,v=1^h,k=h?f-c:c-f;if(l<0)throw new Error("negative radius: "+l);this._x1===null?this._+="M"+_+","+b:(Math.abs(this._x1-_)>n||Math.abs(this._y1-b)>n)&&(this._+="L"+_+","+b),l&&(k<0&&(k=k%r+r),k>i?this._+="A"+l+","+l+",0,1,"+v+","+(s-d)+","+(u-p)+"A"+l+","+l+",0,1,"+v+","+(this._x1=_)+","+(this._y1=b):k>n&&(this._+="A"+l+","+l+",0,"+ +(k>=t)+","+v+","+(this._x1=s+l*Math.cos(c))+","+(this._y1=u+l*Math.sin(c))))},rect:function(s,u,l,f){this._+="M"+(this._x0=this._x1=+s)+","+(this._y0=this._y1=+u)+"h"+ +l+"v"+ +f+"h"+-l+"Z"},toString:function(){return this._}},e.path=o,Object.defineProperty(e,"__esModule",{value:!0})})});var r$=Ae((RB,AXe)=>{(function(e,t){typeof RB=="object"&&typeof AXe!="undefined"?t(RB,TXe()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(RB,function(e,t){"use strict";function r(ct){return function(){return ct}}var n=Math.abs,i=Math.atan2,a=Math.cos,o=Math.max,s=Math.min,u=Math.sin,l=Math.sqrt,f=1e-12,c=Math.PI,h=c/2,d=2*c;function p(ct){return ct>1?0:ct<-1?c:Math.acos(ct)}function _(ct){return ct>=1?h:ct<=-1?-h:Math.asin(ct)}function b(ct){return ct.innerRadius}function v(ct){return ct.outerRadius}function k(ct){return ct.startAngle}function E(ct){return ct.endAngle}function A(ct){return ct&&ct.padAngle}function L(ct,tr,pr,gr,Zr,Ti,en,ii){var Xi=pr-ct,aa=gr-tr,Mn=en-Zr,Un=ii-Ti,Ga=Un*Xi-Mn*aa;if(!(Ga*Gawa*wa+ws*ws&&(uo=$a,ls=fo),{cx:uo,cy:ls,x01:-Mn,y01:-Un,x11:uo*(Zr/kn-1),y11:ls*(Zr/kn-1)}}function C(){var ct=b,tr=v,pr=r(0),gr=null,Zr=k,Ti=E,en=A,ii=null;function Xi(){var aa,Mn,Un=+ct.apply(this,arguments),Ga=+tr.apply(this,arguments),ma=Zr.apply(this,arguments)-h,oa=Ti.apply(this,arguments)-h,ka=n(oa-ma),so=oa>ma;if(ii||(ii=aa=t.path()),Gaf))ii.moveTo(0,0);else if(ka>d-f)ii.moveTo(Ga*a(ma),Ga*u(ma)),ii.arc(0,0,Ga,ma,oa,!so),Un>f&&(ii.moveTo(Un*a(oa),Un*u(oa)),ii.arc(0,0,Un,oa,ma,so));else{var Kr=ma,Ia=oa,Yo=ma,fa=oa,kn=ka,Aa=ka,ys=en.apply(this,arguments)/2,uo=ys>f&&(gr?+gr.apply(this,arguments):l(Un*Un+Ga*Ga)),ls=s(n(Ga-Un)/2,+pr.apply(this,arguments)),$a=ls,fo=ls,mn,ra;if(uo>f){var wa=_(uo/Un*u(ys)),ws=_(uo/Ga*u(ys));(kn-=wa*2)>f?(wa*=so?1:-1,Yo+=wa,fa-=wa):(kn=0,Yo=fa=(ma+oa)/2),(Aa-=ws*2)>f?(ws*=so?1:-1,Kr+=ws,Ia-=ws):(Aa=0,Kr=Ia=(ma+oa)/2)}var Co=Ga*a(Kr),Po=Ga*u(Kr),Wi=Un*a(fa),gn=Un*u(fa);if(ls>f){var Ps=Ga*a(Ia),Ha=Ga*u(Ia),Sn=Un*a(Yo),ao=Un*u(Yo),Ba;if(kaf?fo>f?(mn=x(Sn,ao,Co,Po,Ga,fo,so),ra=x(Ps,Ha,Wi,gn,Ga,fo,so),ii.moveTo(mn.cx+mn.x01,mn.cy+mn.y01),fof)||!(kn>f)?ii.lineTo(Wi,gn):$a>f?(mn=x(Wi,gn,Ps,Ha,Un,-$a,so),ra=x(Co,Po,Sn,ao,Un,-$a,so),ii.lineTo(mn.cx+mn.x01,mn.cy+mn.y01),$a=Ga;--ma)ii.point(Ia[ma],Yo[ma]);ii.lineEnd(),ii.areaEnd()}so&&(Ia[Un]=+ct(ka,Un,Mn),Yo[Un]=+pr(ka,Un,Mn),ii.point(tr?+tr(ka,Un,Mn):Ia[Un],gr?+gr(ka,Un,Mn):Yo[Un]))}if(Kr)return ii=null,Kr+""||null}function aa(){return B().defined(Zr).curve(en).context(Ti)}return Xi.x=function(Mn){return arguments.length?(ct=typeof Mn=="function"?Mn:r(+Mn),tr=null,Xi):ct},Xi.x0=function(Mn){return arguments.length?(ct=typeof Mn=="function"?Mn:r(+Mn),Xi):ct},Xi.x1=function(Mn){return arguments.length?(tr=Mn==null?null:typeof Mn=="function"?Mn:r(+Mn),Xi):tr},Xi.y=function(Mn){return arguments.length?(pr=typeof Mn=="function"?Mn:r(+Mn),gr=null,Xi):pr},Xi.y0=function(Mn){return arguments.length?(pr=typeof Mn=="function"?Mn:r(+Mn),Xi):pr},Xi.y1=function(Mn){return arguments.length?(gr=Mn==null?null:typeof Mn=="function"?Mn:r(+Mn),Xi):gr},Xi.lineX0=Xi.lineY0=function(){return aa().x(ct).y(pr)},Xi.lineY1=function(){return aa().x(ct).y(gr)},Xi.lineX1=function(){return aa().x(tr).y(pr)},Xi.defined=function(Mn){return arguments.length?(Zr=typeof Mn=="function"?Mn:r(!!Mn),Xi):Zr},Xi.curve=function(Mn){return arguments.length?(en=Mn,Ti!=null&&(ii=en(Ti)),Xi):en},Xi.context=function(Mn){return arguments.length?(Mn==null?Ti=ii=null:ii=en(Ti=Mn),Xi):Ti},Xi}function U(ct,tr){return trct?1:tr>=ct?0:NaN}function G(ct){return ct}function j(){var ct=G,tr=U,pr=null,gr=r(0),Zr=r(d),Ti=r(0);function en(ii){var Xi,aa=ii.length,Mn,Un,Ga=0,ma=new Array(aa),oa=new Array(aa),ka=+gr.apply(this,arguments),so=Math.min(d,Math.max(-d,Zr.apply(this,arguments)-ka)),Kr,Ia=Math.min(Math.abs(so)/aa,Ti.apply(this,arguments)),Yo=Ia*(so<0?-1:1),fa;for(Xi=0;Xi0&&(Ga+=fa);for(tr!=null?ma.sort(function(kn,Aa){return tr(oa[kn],oa[Aa])}):pr!=null&&ma.sort(function(kn,Aa){return pr(ii[kn],ii[Aa])}),Xi=0,Un=Ga?(so-aa*Yo)/Ga:0;Xi0?fa*Un:0)+Yo,oa[Mn]={data:ii[Mn],index:Xi,value:fa,startAngle:ka,endAngle:Kr,padAngle:Ia};return oa}return en.value=function(ii){return arguments.length?(ct=typeof ii=="function"?ii:r(+ii),en):ct},en.sortValues=function(ii){return arguments.length?(tr=ii,pr=null,en):tr},en.sort=function(ii){return arguments.length?(pr=ii,tr=null,en):pr},en.startAngle=function(ii){return arguments.length?(gr=typeof ii=="function"?ii:r(+ii),en):gr},en.endAngle=function(ii){return arguments.length?(Zr=typeof ii=="function"?ii:r(+ii),en):Zr},en.padAngle=function(ii){return arguments.length?(Ti=typeof ii=="function"?ii:r(+ii),en):Ti},en}var W=H(m);function N(ct){this._curve=ct}N.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(ct,tr){this._curve.point(tr*Math.sin(ct),tr*-Math.cos(ct))}};function H(ct){function tr(pr){return new N(ct(pr))}return tr._curve=ct,tr}function re(ct){var tr=ct.curve;return ct.angle=ct.x,delete ct.x,ct.radius=ct.y,delete ct.y,ct.curve=function(pr){return arguments.length?tr(H(pr)):tr()._curve},ct}function ae(){return re(B().curve(W))}function be(){var ct=F().curve(W),tr=ct.curve,pr=ct.lineX0,gr=ct.lineX1,Zr=ct.lineY0,Ti=ct.lineY1;return ct.angle=ct.x,delete ct.x,ct.startAngle=ct.x0,delete ct.x0,ct.endAngle=ct.x1,delete ct.x1,ct.radius=ct.y,delete ct.y,ct.innerRadius=ct.y0,delete ct.y0,ct.outerRadius=ct.y1,delete ct.y1,ct.lineStartAngle=function(){return re(pr())},delete ct.lineX0,ct.lineEndAngle=function(){return re(gr())},delete ct.lineX1,ct.lineInnerRadius=function(){return re(Zr())},delete ct.lineY0,ct.lineOuterRadius=function(){return re(Ti())},delete ct.lineY1,ct.curve=function(en){return arguments.length?tr(H(en)):tr()._curve},ct}function ze(ct,tr){return[(tr=+tr)*Math.cos(ct-=Math.PI/2),tr*Math.sin(ct)]}var Ce=Array.prototype.slice;function de(ct){return ct.source}function te(ct){return ct.target}function ke(ct){var tr=de,pr=te,gr=P,Zr=T,Ti=null;function en(){var ii,Xi=Ce.call(arguments),aa=tr.apply(this,Xi),Mn=pr.apply(this,Xi);if(Ti||(Ti=ii=t.path()),ct(Ti,+gr.apply(this,(Xi[0]=aa,Xi)),+Zr.apply(this,Xi),+gr.apply(this,(Xi[0]=Mn,Xi)),+Zr.apply(this,Xi)),ii)return Ti=null,ii+""||null}return en.source=function(ii){return arguments.length?(tr=ii,en):tr},en.target=function(ii){return arguments.length?(pr=ii,en):pr},en.x=function(ii){return arguments.length?(gr=typeof ii=="function"?ii:r(+ii),en):gr},en.y=function(ii){return arguments.length?(Zr=typeof ii=="function"?ii:r(+ii),en):Zr},en.context=function(ii){return arguments.length?(Ti=ii==null?null:ii,en):Ti},en}function Ee(ct,tr,pr,gr,Zr){ct.moveTo(tr,pr),ct.bezierCurveTo(tr=(tr+gr)/2,pr,tr,Zr,gr,Zr)}function Me(ct,tr,pr,gr,Zr){ct.moveTo(tr,pr),ct.bezierCurveTo(tr,pr=(pr+Zr)/2,gr,pr,gr,Zr)}function Ue(ct,tr,pr,gr,Zr){var Ti=ze(tr,pr),en=ze(tr,pr=(pr+Zr)/2),ii=ze(gr,pr),Xi=ze(gr,Zr);ct.moveTo(Ti[0],Ti[1]),ct.bezierCurveTo(en[0],en[1],ii[0],ii[1],Xi[0],Xi[1])}function De(){return ke(Ee)}function ye(){return ke(Me)}function qe(){var ct=ke(Ue);return ct.angle=ct.x,delete ct.x,ct.radius=ct.y,delete ct.y,ct}var ce={draw:function(ct,tr){var pr=Math.sqrt(tr/c);ct.moveTo(pr,0),ct.arc(0,0,pr,0,d)}},Je={draw:function(ct,tr){var pr=Math.sqrt(tr/5)/2;ct.moveTo(-3*pr,-pr),ct.lineTo(-pr,-pr),ct.lineTo(-pr,-3*pr),ct.lineTo(pr,-3*pr),ct.lineTo(pr,-pr),ct.lineTo(3*pr,-pr),ct.lineTo(3*pr,pr),ct.lineTo(pr,pr),ct.lineTo(pr,3*pr),ct.lineTo(-pr,3*pr),ct.lineTo(-pr,pr),ct.lineTo(-3*pr,pr),ct.closePath()}},nt=Math.sqrt(1/3),gt=nt*2,Nt={draw:function(ct,tr){var pr=Math.sqrt(tr/gt),gr=pr*nt;ct.moveTo(0,-pr),ct.lineTo(gr,0),ct.lineTo(0,pr),ct.lineTo(-gr,0),ct.closePath()}},at=.8908130915292852,Ke=Math.sin(c/10)/Math.sin(7*c/10),Ct=Math.sin(d/10)*Ke,wt=-Math.cos(d/10)*Ke,St={draw:function(ct,tr){var pr=Math.sqrt(tr*at),gr=Ct*pr,Zr=wt*pr;ct.moveTo(0,-pr),ct.lineTo(gr,Zr);for(var Ti=1;Ti<5;++Ti){var en=d*Ti/5,ii=Math.cos(en),Xi=Math.sin(en);ct.lineTo(Xi*pr,-ii*pr),ct.lineTo(ii*gr-Xi*Zr,Xi*gr+ii*Zr)}ct.closePath()}},Dt={draw:function(ct,tr){var pr=Math.sqrt(tr),gr=-pr/2;ct.rect(gr,gr,pr,pr)}},Zt=Math.sqrt(3),Et={draw:function(ct,tr){var pr=-Math.sqrt(tr/(Zt*3));ct.moveTo(0,pr*2),ct.lineTo(-Zt*pr,-pr),ct.lineTo(Zt*pr,-pr),ct.closePath()}},Te=-.5,ot=Math.sqrt(3)/2,Tt=1/Math.sqrt(12),vt=(Tt/2+1)*3,Ye={draw:function(ct,tr){var pr=Math.sqrt(tr/vt),gr=pr/2,Zr=pr*Tt,Ti=gr,en=pr*Tt+pr,ii=-Ti,Xi=en;ct.moveTo(gr,Zr),ct.lineTo(Ti,en),ct.lineTo(ii,Xi),ct.lineTo(Te*gr-ot*Zr,ot*gr+Te*Zr),ct.lineTo(Te*Ti-ot*en,ot*Ti+Te*en),ct.lineTo(Te*ii-ot*Xi,ot*ii+Te*Xi),ct.lineTo(Te*gr+ot*Zr,Te*Zr-ot*gr),ct.lineTo(Te*Ti+ot*en,Te*en-ot*Ti),ct.lineTo(Te*ii+ot*Xi,Te*Xi-ot*ii),ct.closePath()}},He=[ce,Je,Nt,Dt,St,Et,Ye];function it(){var ct=r(ce),tr=r(64),pr=null;function gr(){var Zr;if(pr||(pr=Zr=t.path()),ct.apply(this,arguments).draw(pr,+tr.apply(this,arguments)),Zr)return pr=null,Zr+""||null}return gr.type=function(Zr){return arguments.length?(ct=typeof Zr=="function"?Zr:r(Zr),gr):ct},gr.size=function(Zr){return arguments.length?(tr=typeof Zr=="function"?Zr:r(+Zr),gr):tr},gr.context=function(Zr){return arguments.length?(pr=Zr==null?null:Zr,gr):pr},gr}function et(){}function It(ct,tr,pr){ct._context.bezierCurveTo((2*ct._x0+ct._x1)/3,(2*ct._y0+ct._y1)/3,(ct._x0+2*ct._x1)/3,(ct._y0+2*ct._y1)/3,(ct._x0+4*ct._x1+tr)/6,(ct._y0+4*ct._y1+pr)/6)}function Yt(ct){this._context=ct}Yt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:It(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ct,tr){switch(ct=+ct,tr=+tr,this._point){case 0:this._point=1,this._line?this._context.lineTo(ct,tr):this._context.moveTo(ct,tr);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:It(this,ct,tr);break}this._x0=this._x1,this._x1=ct,this._y0=this._y1,this._y1=tr}};function cr(ct){return new Yt(ct)}function _r(ct){this._context=ct}_r.prototype={areaStart:et,areaEnd:et,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(ct,tr){switch(ct=+ct,tr=+tr,this._point){case 0:this._point=1,this._x2=ct,this._y2=tr;break;case 1:this._point=2,this._x3=ct,this._y3=tr;break;case 2:this._point=3,this._x4=ct,this._y4=tr,this._context.moveTo((this._x0+4*this._x1+ct)/6,(this._y0+4*this._y1+tr)/6);break;default:It(this,ct,tr);break}this._x0=this._x1,this._x1=ct,this._y0=this._y1,this._y1=tr}};function yr(ct){return new _r(ct)}function Ut(ct){this._context=ct}Ut.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ct,tr){switch(ct=+ct,tr=+tr,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var pr=(this._x0+4*this._x1+ct)/6,gr=(this._y0+4*this._y1+tr)/6;this._line?this._context.lineTo(pr,gr):this._context.moveTo(pr,gr);break;case 3:this._point=4;default:It(this,ct,tr);break}this._x0=this._x1,this._x1=ct,this._y0=this._y1,this._y1=tr}};function Re(ct){return new Ut(ct)}function xe(ct,tr){this._basis=new Yt(ct),this._beta=tr}xe.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var ct=this._x,tr=this._y,pr=ct.length-1;if(pr>0)for(var gr=ct[0],Zr=tr[0],Ti=ct[pr]-gr,en=tr[pr]-Zr,ii=-1,Xi;++ii<=pr;)Xi=ii/pr,this._basis.point(this._beta*ct[ii]+(1-this._beta)*(gr+Xi*Ti),this._beta*tr[ii]+(1-this._beta)*(Zr+Xi*en));this._x=this._y=null,this._basis.lineEnd()},point:function(ct,tr){this._x.push(+ct),this._y.push(+tr)}};var Oe=function ct(tr){function pr(gr){return tr===1?new Yt(gr):new xe(gr,tr)}return pr.beta=function(gr){return ct(+gr)},pr}(.85);function Ie(ct,tr,pr){ct._context.bezierCurveTo(ct._x1+ct._k*(ct._x2-ct._x0),ct._y1+ct._k*(ct._y2-ct._y0),ct._x2+ct._k*(ct._x1-tr),ct._y2+ct._k*(ct._y1-pr),ct._x2,ct._y2)}function Fe(ct,tr){this._context=ct,this._k=(1-tr)/6}Fe.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Ie(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ct,tr){switch(ct=+ct,tr=+tr,this._point){case 0:this._point=1,this._line?this._context.lineTo(ct,tr):this._context.moveTo(ct,tr);break;case 1:this._point=2,this._x1=ct,this._y1=tr;break;case 2:this._point=3;default:Ie(this,ct,tr);break}this._x0=this._x1,this._x1=this._x2,this._x2=ct,this._y0=this._y1,this._y1=this._y2,this._y2=tr}};var ft=function ct(tr){function pr(gr){return new Fe(gr,tr)}return pr.tension=function(gr){return ct(+gr)},pr}(0);function ge(ct,tr){this._context=ct,this._k=(1-tr)/6}ge.prototype={areaStart:et,areaEnd:et,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(ct,tr){switch(ct=+ct,tr=+tr,this._point){case 0:this._point=1,this._x3=ct,this._y3=tr;break;case 1:this._point=2,this._context.moveTo(this._x4=ct,this._y4=tr);break;case 2:this._point=3,this._x5=ct,this._y5=tr;break;default:Ie(this,ct,tr);break}this._x0=this._x1,this._x1=this._x2,this._x2=ct,this._y0=this._y1,this._y1=this._y2,this._y2=tr}};var fe=function ct(tr){function pr(gr){return new ge(gr,tr)}return pr.tension=function(gr){return ct(+gr)},pr}(0);function pe(ct,tr){this._context=ct,this._k=(1-tr)/6}pe.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ct,tr){switch(ct=+ct,tr=+tr,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ie(this,ct,tr);break}this._x0=this._x1,this._x1=this._x2,this._x2=ct,this._y0=this._y1,this._y1=this._y2,this._y2=tr}};var dt=function ct(tr){function pr(gr){return new pe(gr,tr)}return pr.tension=function(gr){return ct(+gr)},pr}(0);function Pt(ct,tr,pr){var gr=ct._x1,Zr=ct._y1,Ti=ct._x2,en=ct._y2;if(ct._l01_a>f){var ii=2*ct._l01_2a+3*ct._l01_a*ct._l12_a+ct._l12_2a,Xi=3*ct._l01_a*(ct._l01_a+ct._l12_a);gr=(gr*ii-ct._x0*ct._l12_2a+ct._x2*ct._l01_2a)/Xi,Zr=(Zr*ii-ct._y0*ct._l12_2a+ct._y2*ct._l01_2a)/Xi}if(ct._l23_a>f){var aa=2*ct._l23_2a+3*ct._l23_a*ct._l12_a+ct._l12_2a,Mn=3*ct._l23_a*(ct._l23_a+ct._l12_a);Ti=(Ti*aa+ct._x1*ct._l23_2a-tr*ct._l12_2a)/Mn,en=(en*aa+ct._y1*ct._l23_2a-pr*ct._l12_2a)/Mn}ct._context.bezierCurveTo(gr,Zr,Ti,en,ct._x2,ct._y2)}function zt(ct,tr){this._context=ct,this._alpha=tr}zt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ct,tr){if(ct=+ct,tr=+tr,this._point){var pr=this._x2-ct,gr=this._y2-tr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(pr*pr+gr*gr,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(ct,tr):this._context.moveTo(ct,tr);break;case 1:this._point=2;break;case 2:this._point=3;default:Pt(this,ct,tr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ct,this._y0=this._y1,this._y1=this._y2,this._y2=tr}};var rr=function ct(tr){function pr(gr){return tr?new zt(gr,tr):new Fe(gr,0)}return pr.alpha=function(gr){return ct(+gr)},pr}(.5);function Gr(ct,tr){this._context=ct,this._alpha=tr}Gr.prototype={areaStart:et,areaEnd:et,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(ct,tr){if(ct=+ct,tr=+tr,this._point){var pr=this._x2-ct,gr=this._y2-tr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(pr*pr+gr*gr,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=ct,this._y3=tr;break;case 1:this._point=2,this._context.moveTo(this._x4=ct,this._y4=tr);break;case 2:this._point=3,this._x5=ct,this._y5=tr;break;default:Pt(this,ct,tr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ct,this._y0=this._y1,this._y1=this._y2,this._y2=tr}};var Br=function ct(tr){function pr(gr){return tr?new Gr(gr,tr):new ge(gr,0)}return pr.alpha=function(gr){return ct(+gr)},pr}(.5);function Er(ct,tr){this._context=ct,this._alpha=tr}Er.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ct,tr){if(ct=+ct,tr=+tr,this._point){var pr=this._x2-ct,gr=this._y2-tr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(pr*pr+gr*gr,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Pt(this,ct,tr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ct,this._y0=this._y1,this._y1=this._y2,this._y2=tr}};var Rr=function ct(tr){function pr(gr){return tr?new Er(gr,tr):new pe(gr,0)}return pr.alpha=function(gr){return ct(+gr)},pr}(.5);function pi(ct){this._context=ct}pi.prototype={areaStart:et,areaEnd:et,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(ct,tr){ct=+ct,tr=+tr,this._point?this._context.lineTo(ct,tr):(this._point=1,this._context.moveTo(ct,tr))}};function Di(ct){return new pi(ct)}function ni(ct){return ct<0?-1:1}function $i(ct,tr,pr){var gr=ct._x1-ct._x0,Zr=tr-ct._x1,Ti=(ct._y1-ct._y0)/(gr||Zr<0&&-0),en=(pr-ct._y1)/(Zr||gr<0&&-0),ii=(Ti*Zr+en*gr)/(gr+Zr);return(ni(Ti)+ni(en))*Math.min(Math.abs(Ti),Math.abs(en),.5*Math.abs(ii))||0}function Qi(ct,tr){var pr=ct._x1-ct._x0;return pr?(3*(ct._y1-ct._y0)/pr-tr)/2:tr}function si(ct,tr,pr){var gr=ct._x0,Zr=ct._y0,Ti=ct._x1,en=ct._y1,ii=(Ti-gr)/3;ct._context.bezierCurveTo(gr+ii,Zr+ii*tr,Ti-ii,en-ii*pr,Ti,en)}function Ai(ct){this._context=ct}Ai.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:si(this,this._t0,Qi(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ct,tr){var pr=NaN;if(ct=+ct,tr=+tr,!(ct===this._x1&&tr===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(ct,tr):this._context.moveTo(ct,tr);break;case 1:this._point=2;break;case 2:this._point=3,si(this,Qi(this,pr=$i(this,ct,tr)),pr);break;default:si(this,this._t0,pr=$i(this,ct,tr));break}this._x0=this._x1,this._x1=ct,this._y0=this._y1,this._y1=tr,this._t0=pr}}};function Ni(ct){this._context=new Rt(ct)}(Ni.prototype=Object.create(Ai.prototype)).point=function(ct,tr){Ai.prototype.point.call(this,tr,ct)};function Rt(ct){this._context=ct}Rt.prototype={moveTo:function(ct,tr){this._context.moveTo(tr,ct)},closePath:function(){this._context.closePath()},lineTo:function(ct,tr){this._context.lineTo(tr,ct)},bezierCurveTo:function(ct,tr,pr,gr,Zr,Ti){this._context.bezierCurveTo(tr,ct,gr,pr,Ti,Zr)}};function yt(ct){return new Ai(ct)}function Gt(ct){return new Ni(ct)}function Wt(ct){this._context=ct}Wt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var ct=this._x,tr=this._y,pr=ct.length;if(pr)if(this._line?this._context.lineTo(ct[0],tr[0]):this._context.moveTo(ct[0],tr[0]),pr===2)this._context.lineTo(ct[1],tr[1]);else for(var gr=xr(ct),Zr=xr(tr),Ti=0,en=1;en=0;--tr)Zr[tr]=(en[tr]-Zr[tr+1])/Ti[tr];for(Ti[pr-1]=(ct[pr]+Zr[pr-1])/2,tr=0;tr=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(ct,tr){switch(ct=+ct,tr=+tr,this._point){case 0:this._point=1,this._line?this._context.lineTo(ct,tr):this._context.moveTo(ct,tr);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,tr),this._context.lineTo(ct,tr);else{var pr=this._x*(1-this._t)+ct*this._t;this._context.lineTo(pr,this._y),this._context.lineTo(pr,tr)}break}}this._x=ct,this._y=tr}};function Or(ct){return new Nr(ct,.5)}function Hr(ct){return new Nr(ct,0)}function jr(ct){return new Nr(ct,1)}function gi(ct,tr){if((en=ct.length)>1)for(var pr=1,gr,Zr,Ti=ct[tr[0]],en,ii=Ti.length;pr=0;)pr[tr]=tr;return pr}function Vi(ct,tr){return ct[tr]}function ti(){var ct=r([]),tr=ki,pr=gi,gr=Vi;function Zr(Ti){var en=ct.apply(this,arguments),ii,Xi=Ti.length,aa=en.length,Mn=new Array(aa),Un;for(ii=0;ii0){for(var pr,gr,Zr=0,Ti=ct[0].length,en;Zr0)for(var pr,gr=0,Zr,Ti,en,ii,Xi,aa=ct[tr[0]].length;gr0?(Zr[0]=en,Zr[1]=en+=Ti):Ti<0?(Zr[1]=ii,Zr[0]=ii+=Ti):(Zr[0]=0,Zr[1]=Ti)}function oi(ct,tr){if((Zr=ct.length)>0){for(var pr=0,gr=ct[tr[0]],Zr,Ti=gr.length;pr0)||!((Ti=(Zr=ct[tr[0]]).length)>0))){for(var pr=0,gr=1,Zr,Ti,en;grTi&&(Ti=Zr,pr=tr);return pr}function Ri(ct){var tr=ct.map(Ii);return ki(ct).sort(function(pr,gr){return tr[pr]-tr[gr]})}function Ii(ct){for(var tr=0,pr=-1,gr=ct.length,Zr;++pr{(function(e,t){typeof DB=="object"&&typeof SXe!="undefined"?t(DB,nk(),CB(),r$()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3)})(DB,function(e,t,r,n){"use strict";function i(m){return m.target.depth}function a(m){return m.depth}function o(m,P){return P-1-m.height}function s(m,P){return m.sourceLinks.length?m.depth:P-1}function u(m){return m.targetLinks.length?m.depth:m.sourceLinks.length?t.min(m.sourceLinks,i)-1:0}function l(m){return function(){return m}}function f(m,P){return h(m.source,P.source)||m.index-P.index}function c(m,P){return h(m.target,P.target)||m.index-P.index}function h(m,P){return m.y0-P.y0}function d(m){return m.value}function p(m){return(m.y0+m.y1)/2}function _(m){return p(m.source)*m.value}function b(m){return p(m.target)*m.value}function v(m){return m.index}function k(m){return m.nodes}function E(m){return m.links}function A(m,P){var T=m.get(P);if(!T)throw new Error("missing: "+P);return T}var L=function(){var m=0,P=0,T=1,B=1,F=24,U=8,G=v,j=s,W=k,N=E,H=32,re=2/3;function ae(){var ke={nodes:W.apply(null,arguments),links:N.apply(null,arguments)};return be(ke),ze(ke),Ce(ke),de(ke,H),te(ke),ke}ae.update=function(ke){return te(ke),ke},ae.nodeId=function(ke){return arguments.length?(G=typeof ke=="function"?ke:l(ke),ae):G},ae.nodeAlign=function(ke){return arguments.length?(j=typeof ke=="function"?ke:l(ke),ae):j},ae.nodeWidth=function(ke){return arguments.length?(F=+ke,ae):F},ae.nodePadding=function(ke){return arguments.length?(U=+ke,ae):U},ae.nodes=function(ke){return arguments.length?(W=typeof ke=="function"?ke:l(ke),ae):W},ae.links=function(ke){return arguments.length?(N=typeof ke=="function"?ke:l(ke),ae):N},ae.size=function(ke){return arguments.length?(m=P=0,T=+ke[0],B=+ke[1],ae):[T-m,B-P]},ae.extent=function(ke){return arguments.length?(m=+ke[0][0],T=+ke[1][0],P=+ke[0][1],B=+ke[1][1],ae):[[m,P],[T,B]]},ae.iterations=function(ke){return arguments.length?(H=+ke,ae):H};function be(ke){ke.nodes.forEach(function(Me,Ue){Me.index=Ue,Me.sourceLinks=[],Me.targetLinks=[]});var Ee=r.map(ke.nodes,G);ke.links.forEach(function(Me,Ue){Me.index=Ue;var De=Me.source,ye=Me.target;typeof De!="object"&&(De=Me.source=A(Ee,De)),typeof ye!="object"&&(ye=Me.target=A(Ee,ye)),De.sourceLinks.push(Me),ye.targetLinks.push(Me)})}function ze(ke){ke.nodes.forEach(function(Ee){Ee.value=Math.max(t.sum(Ee.sourceLinks,d),t.sum(Ee.targetLinks,d))})}function Ce(ke){var Ee,Me,Ue;for(Ee=ke.nodes,Me=[],Ue=0;Ee.length;++Ue,Ee=Me,Me=[])Ee.forEach(function(ye){ye.depth=Ue,ye.sourceLinks.forEach(function(qe){Me.indexOf(qe.target)<0&&Me.push(qe.target)})});for(Ee=ke.nodes,Me=[],Ue=0;Ee.length;++Ue,Ee=Me,Me=[])Ee.forEach(function(ye){ye.height=Ue,ye.targetLinks.forEach(function(qe){Me.indexOf(qe.source)<0&&Me.push(qe.source)})});var De=(T-m-F)/(Ue-1);ke.nodes.forEach(function(ye){ye.x1=(ye.x0=m+Math.max(0,Math.min(Ue-1,Math.floor(j.call(null,ye,Ue))))*De)+F})}function de(ke){var Ee=r.nest().key(function(Je){return Je.x0}).sortKeys(t.ascending).entries(ke.nodes).map(function(Je){return Je.values});De(),ce();for(var Me=1,Ue=H;Ue>0;--Ue)qe(Me*=.99),ce(),ye(Me),ce();function De(){var Je=t.max(Ee,function(Nt){return Nt.length}),nt=re*(B-P)/(Je-1);U>nt&&(U=nt);var gt=t.min(Ee,function(Nt){return(B-P-(Nt.length-1)*U)/t.sum(Nt,d)});Ee.forEach(function(Nt){Nt.forEach(function(at,Ke){at.y1=(at.y0=Ke)+at.value*gt})}),ke.links.forEach(function(Nt){Nt.width=Nt.value*gt})}function ye(Je){Ee.forEach(function(nt){nt.forEach(function(gt){if(gt.targetLinks.length){var Nt=(t.sum(gt.targetLinks,_)/t.sum(gt.targetLinks,d)-p(gt))*Je;gt.y0+=Nt,gt.y1+=Nt}})})}function qe(Je){Ee.slice().reverse().forEach(function(nt){nt.forEach(function(gt){if(gt.sourceLinks.length){var Nt=(t.sum(gt.sourceLinks,b)/t.sum(gt.sourceLinks,d)-p(gt))*Je;gt.y0+=Nt,gt.y1+=Nt}})})}function ce(){Ee.forEach(function(Je){var nt,gt,Nt=P,at=Je.length,Ke;for(Je.sort(h),Ke=0;Ke0&&(nt.y0+=gt,nt.y1+=gt),Nt=nt.y1+U;if(gt=Nt-U-B,gt>0)for(Nt=nt.y0-=gt,nt.y1-=gt,Ke=at-2;Ke>=0;--Ke)nt=Je[Ke],gt=nt.y1+U-Nt,gt>0&&(nt.y0-=gt,nt.y1-=gt),Nt=nt.y0})}}function te(ke){ke.nodes.forEach(function(Ee){Ee.sourceLinks.sort(c),Ee.targetLinks.sort(f)}),ke.nodes.forEach(function(Ee){var Me=Ee.y0,Ue=Me;Ee.sourceLinks.forEach(function(De){De.y0=Me+De.width/2,Me+=De.width}),Ee.targetLinks.forEach(function(De){De.y1=Ue+De.width/2,Ue+=De.width})})}return ae};function x(m){return[m.source.x1,m.y0]}function C(m){return[m.target.x0,m.y1]}var M=function(){return n.linkHorizontal().source(x).target(C)};e.sankey=L,e.sankeyCenter=u,e.sankeyLeft=a,e.sankeyRight=o,e.sankeyJustify=s,e.sankeyLinkHorizontal=M,Object.defineProperty(e,"__esModule",{value:!0})})});var kXe=Ae((Uwr,EXe)=>{var ZYt=t$();EXe.exports=function(t,r){var n=[],i=[],a=[],o={},s=[],u;function l(E){a[E]=!1,o.hasOwnProperty(E)&&Object.keys(o[E]).forEach(function(A){delete o[E][A],a[A]&&l(A)})}function f(E){var A=!1;i.push(E),a[E]=!0;var L,x;for(L=0;L=E})}function d(E){h(E);for(var A=t,L=ZYt(A),x=L.components.filter(function(F){return F.length>1}),C=1/0,M,m=0;m{(function(e,t){typeof FB=="object"&&typeof CXe!="undefined"?t(FB,nk(),CB(),r$(),kXe()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,null)})(FB,function(e,t,r,n,i){"use strict";i=i&&i.hasOwnProperty("default")?i.default:i;function a(at){return at.target.depth}function o(at){return at.depth}function s(at,Ke){return Ke-1-at.height}function u(at,Ke){return at.sourceLinks.length?at.depth:Ke-1}function l(at){return at.targetLinks.length?at.depth:at.sourceLinks.length?t.min(at.sourceLinks,a)-1:0}function f(at){return function(){return at}}var c=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(at){return typeof at}:function(at){return at&&typeof Symbol=="function"&&at.constructor===Symbol&&at!==Symbol.prototype?"symbol":typeof at};function h(at,Ke){return p(at.source,Ke.source)||at.index-Ke.index}function d(at,Ke){return p(at.target,Ke.target)||at.index-Ke.index}function p(at,Ke){return at.partOfCycle===Ke.partOfCycle?at.y0-Ke.y0:at.circularLinkType==="top"||Ke.circularLinkType==="bottom"?-1:1}function _(at){return at.value}function b(at){return(at.y0+at.y1)/2}function v(at){return b(at.source)}function k(at){return b(at.target)}function E(at){return at.index}function A(at){return at.nodes}function L(at){return at.links}function x(at,Ke){var Ct=at.get(Ke);if(!Ct)throw new Error("missing: "+Ke);return Ct}function C(at,Ke){return Ke(at)}var M=25,m=10,P=.3;function T(){var at=0,Ke=0,Ct=1,wt=1,St=24,Dt,Zt=E,Et=u,Te=A,ot=L,Tt=32,vt=2,Ye,He=null;function it(){var Re={nodes:Te.apply(null,arguments),links:ot.apply(null,arguments)};et(Re),B(Re,Zt,He),It(Re),_r(Re),F(Re,Zt),yr(Re,Tt,Zt),Ut(Re);for(var xe=4,Oe=0;Oe0?xe+M+m:xe,Oe=Oe>0?Oe+M+m:Oe,Ie=Ie>0?Ie+M+m:Ie,Fe=Fe>0?Fe+M+m:Fe,{top:xe,bottom:Oe,left:Fe,right:Ie}}function cr(Re,xe){var Oe=t.max(Re.nodes,function(dt){return dt.column}),Ie=Ct-at,Fe=wt-Ke,ft=Ie+xe.right+xe.left,ge=Fe+xe.top+xe.bottom,fe=Ie/ft,pe=Fe/ge;return at=at*fe+xe.left,Ct=xe.right==0?Ct:Ct*fe,Ke=Ke*pe+xe.top,wt=wt*pe,Re.nodes.forEach(function(dt){dt.x0=at+dt.column*((Ct-at-St)/Oe),dt.x1=dt.x0+St}),pe}function _r(Re){var xe,Oe,Ie;for(xe=Re.nodes,Oe=[],Ie=0;xe.length;++Ie,xe=Oe,Oe=[])xe.forEach(function(Fe){Fe.depth=Ie,Fe.sourceLinks.forEach(function(ft){Oe.indexOf(ft.target)<0&&!ft.circular&&Oe.push(ft.target)})});for(xe=Re.nodes,Oe=[],Ie=0;xe.length;++Ie,xe=Oe,Oe=[])xe.forEach(function(Fe){Fe.height=Ie,Fe.targetLinks.forEach(function(ft){Oe.indexOf(ft.source)<0&&!ft.circular&&Oe.push(ft.source)})});Re.nodes.forEach(function(Fe){Fe.column=Math.floor(Et.call(null,Fe,Ie))})}function yr(Re,xe,Oe){var Ie=r.nest().key(function(dt){return dt.column}).sortKeys(t.ascending).entries(Re.nodes).map(function(dt){return dt.values});ge(Oe),pe();for(var Fe=1,ft=xe;ft>0;--ft)fe(Fe*=.99,Oe),pe();function ge(dt){if(Ye){var Pt=1/0;Ie.forEach(function(Br){var Er=wt*Ye/(Br.length+1);Pt=Er0))if(Br==0&&Gr==1)Rr=Er.y1-Er.y0,Er.y0=wt/2-Rr/2,Er.y1=wt/2+Rr/2;else if(Br==zt-1&&Gr==1)Rr=Er.y1-Er.y0,Er.y0=wt/2-Rr/2,Er.y1=wt/2+Rr/2;else{var pi=0,Di=t.mean(Er.sourceLinks,k),ni=t.mean(Er.targetLinks,v);Di&&ni?pi=(Di+ni)/2:pi=Di||ni;var $i=(pi-b(Er))*dt;Er.y0+=$i,Er.y1+=$i}})})}function pe(){Ie.forEach(function(dt){var Pt,zt,rr=Ke,Gr=dt.length,Br;for(dt.sort(p),Br=0;Br0&&(Pt.y0+=zt,Pt.y1+=zt),rr=Pt.y1+Dt;if(zt=rr-Dt-wt,zt>0)for(rr=Pt.y0-=zt,Pt.y1-=zt,Br=Gr-2;Br>=0;--Br)Pt=dt[Br],zt=Pt.y1+Dt-rr,zt>0&&(Pt.y0-=zt,Pt.y1-=zt),rr=Pt.y0})}}function Ut(Re){Re.nodes.forEach(function(xe){xe.sourceLinks.sort(d),xe.targetLinks.sort(h)}),Re.nodes.forEach(function(xe){var Oe=xe.y0,Ie=Oe,Fe=xe.y1,ft=Fe;xe.sourceLinks.forEach(function(ge){ge.circular?(ge.y0=Fe-ge.width/2,Fe=Fe-ge.width):(ge.y0=Oe+ge.width/2,Oe+=ge.width)}),xe.targetLinks.forEach(function(ge){ge.circular?(ge.y1=ft-ge.width/2,ft=ft-ge.width):(ge.y1=Ie+ge.width/2,Ie+=ge.width)})})}return it}function B(at,Ke,Ct){var wt=0;if(Ct===null){for(var St=[],Dt=0;DtKe.source.column)}function j(at,Ke){var Ct=0;at.sourceLinks.forEach(function(St){Ct=St.circular&&!gt(St,Ke)?Ct+1:Ct});var wt=0;return at.targetLinks.forEach(function(St){wt=St.circular&&!gt(St,Ke)?wt+1:wt}),Ct+wt}function W(at){var Ke=at.source.sourceLinks,Ct=0;Ke.forEach(function(Dt){Ct=Dt.circular?Ct+1:Ct});var wt=at.target.targetLinks,St=0;return wt.forEach(function(Dt){St=Dt.circular?St+1:St}),!(Ct>1||St>1)}function N(at,Ke,Ct){return at.sort(ae),at.forEach(function(wt,St){var Dt=0;if(gt(wt,Ct)&&W(wt))wt.circularPathData.verticalBuffer=Dt+wt.width/2;else{var Zt=0;for(Zt;ZtDt?Et:Dt}wt.circularPathData.verticalBuffer=Dt+wt.width/2}}),at}function H(at,Ke,Ct,wt){var St=5,Dt=t.min(at.links,function(Te){return Te.source.y0});at.links.forEach(function(Te){Te.circular&&(Te.circularPathData={})});var Zt=at.links.filter(function(Te){return Te.circularLinkType=="top"});N(Zt,Ke,wt);var Et=at.links.filter(function(Te){return Te.circularLinkType=="bottom"});N(Et,Ke,wt),at.links.forEach(function(Te){if(Te.circular){if(Te.circularPathData.arcRadius=Te.width+m,Te.circularPathData.leftNodeBuffer=St,Te.circularPathData.rightNodeBuffer=St,Te.circularPathData.sourceWidth=Te.source.x1-Te.source.x0,Te.circularPathData.sourceX=Te.source.x0+Te.circularPathData.sourceWidth,Te.circularPathData.targetX=Te.target.x0,Te.circularPathData.sourceY=Te.y0,Te.circularPathData.targetY=Te.y1,gt(Te,wt)&&W(Te))Te.circularPathData.leftSmallArcRadius=m+Te.width/2,Te.circularPathData.leftLargeArcRadius=m+Te.width/2,Te.circularPathData.rightSmallArcRadius=m+Te.width/2,Te.circularPathData.rightLargeArcRadius=m+Te.width/2,Te.circularLinkType=="bottom"?(Te.circularPathData.verticalFullExtent=Te.source.y1+M+Te.circularPathData.verticalBuffer,Te.circularPathData.verticalLeftInnerExtent=Te.circularPathData.verticalFullExtent-Te.circularPathData.leftLargeArcRadius,Te.circularPathData.verticalRightInnerExtent=Te.circularPathData.verticalFullExtent-Te.circularPathData.rightLargeArcRadius):(Te.circularPathData.verticalFullExtent=Te.source.y0-M-Te.circularPathData.verticalBuffer,Te.circularPathData.verticalLeftInnerExtent=Te.circularPathData.verticalFullExtent+Te.circularPathData.leftLargeArcRadius,Te.circularPathData.verticalRightInnerExtent=Te.circularPathData.verticalFullExtent+Te.circularPathData.rightLargeArcRadius);else{var ot=Te.source.column,Tt=Te.circularLinkType,vt=at.links.filter(function(it){return it.source.column==ot&&it.circularLinkType==Tt});Te.circularLinkType=="bottom"?vt.sort(ze):vt.sort(be);var Ye=0;vt.forEach(function(it,et){it.circularLinkID==Te.circularLinkID&&(Te.circularPathData.leftSmallArcRadius=m+Te.width/2+Ye,Te.circularPathData.leftLargeArcRadius=m+Te.width/2+et*Ke+Ye),Ye=Ye+it.width}),ot=Te.target.column,vt=at.links.filter(function(it){return it.target.column==ot&&it.circularLinkType==Tt}),Te.circularLinkType=="bottom"?vt.sort(de):vt.sort(Ce),Ye=0,vt.forEach(function(it,et){it.circularLinkID==Te.circularLinkID&&(Te.circularPathData.rightSmallArcRadius=m+Te.width/2+Ye,Te.circularPathData.rightLargeArcRadius=m+Te.width/2+et*Ke+Ye),Ye=Ye+it.width}),Te.circularLinkType=="bottom"?(Te.circularPathData.verticalFullExtent=Math.max(Ct,Te.source.y1,Te.target.y1)+M+Te.circularPathData.verticalBuffer,Te.circularPathData.verticalLeftInnerExtent=Te.circularPathData.verticalFullExtent-Te.circularPathData.leftLargeArcRadius,Te.circularPathData.verticalRightInnerExtent=Te.circularPathData.verticalFullExtent-Te.circularPathData.rightLargeArcRadius):(Te.circularPathData.verticalFullExtent=Dt-M-Te.circularPathData.verticalBuffer,Te.circularPathData.verticalLeftInnerExtent=Te.circularPathData.verticalFullExtent+Te.circularPathData.leftLargeArcRadius,Te.circularPathData.verticalRightInnerExtent=Te.circularPathData.verticalFullExtent+Te.circularPathData.rightLargeArcRadius)}Te.circularPathData.leftInnerExtent=Te.circularPathData.sourceX+Te.circularPathData.leftNodeBuffer,Te.circularPathData.rightInnerExtent=Te.circularPathData.targetX-Te.circularPathData.rightNodeBuffer,Te.circularPathData.leftFullExtent=Te.circularPathData.sourceX+Te.circularPathData.leftLargeArcRadius+Te.circularPathData.leftNodeBuffer,Te.circularPathData.rightFullExtent=Te.circularPathData.targetX-Te.circularPathData.rightLargeArcRadius-Te.circularPathData.rightNodeBuffer}if(Te.circular)Te.path=re(Te);else{var He=n.linkHorizontal().source(function(it){var et=it.source.x0+(it.source.x1-it.source.x0),It=it.y0;return[et,It]}).target(function(it){var et=it.target.x0,It=it.y1;return[et,It]});Te.path=He(Te)}})}function re(at){var Ke="";return at.circularLinkType=="top"?Ke="M"+at.circularPathData.sourceX+" "+at.circularPathData.sourceY+" L"+at.circularPathData.leftInnerExtent+" "+at.circularPathData.sourceY+" A"+at.circularPathData.leftLargeArcRadius+" "+at.circularPathData.leftSmallArcRadius+" 0 0 0 "+at.circularPathData.leftFullExtent+" "+(at.circularPathData.sourceY-at.circularPathData.leftSmallArcRadius)+" L"+at.circularPathData.leftFullExtent+" "+at.circularPathData.verticalLeftInnerExtent+" A"+at.circularPathData.leftLargeArcRadius+" "+at.circularPathData.leftLargeArcRadius+" 0 0 0 "+at.circularPathData.leftInnerExtent+" "+at.circularPathData.verticalFullExtent+" L"+at.circularPathData.rightInnerExtent+" "+at.circularPathData.verticalFullExtent+" A"+at.circularPathData.rightLargeArcRadius+" "+at.circularPathData.rightLargeArcRadius+" 0 0 0 "+at.circularPathData.rightFullExtent+" "+at.circularPathData.verticalRightInnerExtent+" L"+at.circularPathData.rightFullExtent+" "+(at.circularPathData.targetY-at.circularPathData.rightSmallArcRadius)+" A"+at.circularPathData.rightLargeArcRadius+" "+at.circularPathData.rightSmallArcRadius+" 0 0 0 "+at.circularPathData.rightInnerExtent+" "+at.circularPathData.targetY+" L"+at.circularPathData.targetX+" "+at.circularPathData.targetY:Ke="M"+at.circularPathData.sourceX+" "+at.circularPathData.sourceY+" L"+at.circularPathData.leftInnerExtent+" "+at.circularPathData.sourceY+" A"+at.circularPathData.leftLargeArcRadius+" "+at.circularPathData.leftSmallArcRadius+" 0 0 1 "+at.circularPathData.leftFullExtent+" "+(at.circularPathData.sourceY+at.circularPathData.leftSmallArcRadius)+" L"+at.circularPathData.leftFullExtent+" "+at.circularPathData.verticalLeftInnerExtent+" A"+at.circularPathData.leftLargeArcRadius+" "+at.circularPathData.leftLargeArcRadius+" 0 0 1 "+at.circularPathData.leftInnerExtent+" "+at.circularPathData.verticalFullExtent+" L"+at.circularPathData.rightInnerExtent+" "+at.circularPathData.verticalFullExtent+" A"+at.circularPathData.rightLargeArcRadius+" "+at.circularPathData.rightLargeArcRadius+" 0 0 1 "+at.circularPathData.rightFullExtent+" "+at.circularPathData.verticalRightInnerExtent+" L"+at.circularPathData.rightFullExtent+" "+(at.circularPathData.targetY+at.circularPathData.rightSmallArcRadius)+" A"+at.circularPathData.rightLargeArcRadius+" "+at.circularPathData.rightSmallArcRadius+" 0 0 1 "+at.circularPathData.rightInnerExtent+" "+at.circularPathData.targetY+" L"+at.circularPathData.targetX+" "+at.circularPathData.targetY,Ke}function ae(at,Ke){return te(at)==te(Ke)?at.circularLinkType=="bottom"?ze(at,Ke):be(at,Ke):te(Ke)-te(at)}function be(at,Ke){return at.y0-Ke.y0}function ze(at,Ke){return Ke.y0-at.y0}function Ce(at,Ke){return at.y1-Ke.y1}function de(at,Ke){return Ke.y1-at.y1}function te(at){return at.target.column-at.source.column}function ke(at){return at.target.x0-at.source.x1}function Ee(at,Ke){var Ct=U(at),wt=ke(Ke)/Math.tan(Ct),St=nt(at)=="up"?at.y1+wt:at.y1-wt;return St}function Me(at,Ke){var Ct=U(at),wt=ke(Ke)/Math.tan(Ct),St=nt(at)=="up"?at.y1-wt:at.y1+wt;return St}function Ue(at,Ke,Ct,wt){at.links.forEach(function(St){if(!St.circular&&St.target.column-St.source.column>1){var Dt=St.source.column+1,Zt=St.target.column-1,Et=1,Te=Zt-Dt+1;for(Et=1;Dt<=Zt;Dt++,Et++)at.nodes.forEach(function(ot){if(ot.column==Dt){var Tt=Et/(Te+1),vt=Math.pow(1-Tt,3),Ye=3*Tt*Math.pow(1-Tt,2),He=3*Math.pow(Tt,2)*(1-Tt),it=Math.pow(Tt,3),et=vt*St.y0+Ye*St.y0+He*St.y1+it*St.y1,It=et-St.width/2,Yt=et+St.width/2,cr;It>ot.y0&&Itot.y0&&Ytot.y1&&ye(_r,cr,Ke,Ct)})):Itot.y1&&(cr=Yt-ot.y0+10,ot=ye(ot,cr,Ke,Ct),at.nodes.forEach(function(_r){C(_r,wt)==C(ot,wt)||_r.column!=ot.column||_r.y0ot.y1&&ye(_r,cr,Ke,Ct)}))}})}})}function De(at,Ke){return at.y0>Ke.y0&&at.y0Ke.y0&&at.y1Ke.y1}function ye(at,Ke,Ct,wt){return at.y0+Ke>=Ct&&at.y1+Ke<=wt&&(at.y0=at.y0+Ke,at.y1=at.y1+Ke,at.targetLinks.forEach(function(St){St.y1=St.y1+Ke}),at.sourceLinks.forEach(function(St){St.y0=St.y0+Ke})),at}function qe(at,Ke,Ct,wt){at.nodes.forEach(function(St){wt&&St.y+(St.y1-St.y0)>Ke&&(St.y=St.y-(St.y+(St.y1-St.y0)-Ke));var Dt=at.links.filter(function(Te){return C(Te.source,Ct)==C(St,Ct)}),Zt=Dt.length;Zt>1&&Dt.sort(function(Te,ot){if(!Te.circular&&!ot.circular){if(Te.target.column==ot.target.column)return Te.y1-ot.y1;if(Je(Te,ot)){if(Te.target.column>ot.target.column){var Tt=Me(ot,Te);return Te.y1-Tt}if(ot.target.column>Te.target.column){var vt=Me(Te,ot);return vt-ot.y1}}else return Te.y1-ot.y1}if(Te.circular&&!ot.circular)return Te.circularLinkType=="top"?-1:1;if(ot.circular&&!Te.circular)return ot.circularLinkType=="top"?1:-1;if(Te.circular&&ot.circular)return Te.circularLinkType===ot.circularLinkType&&Te.circularLinkType=="top"?Te.target.column===ot.target.column?Te.target.y1-ot.target.y1:ot.target.column-Te.target.column:Te.circularLinkType===ot.circularLinkType&&Te.circularLinkType=="bottom"?Te.target.column===ot.target.column?ot.target.y1-Te.target.y1:Te.target.column-ot.target.column:Te.circularLinkType=="top"?-1:1});var Et=St.y0;Dt.forEach(function(Te){Te.y0=Et+Te.width/2,Et=Et+Te.width}),Dt.forEach(function(Te,ot){if(Te.circularLinkType=="bottom"){var Tt=ot+1,vt=0;for(Tt;Tt1&&St.sort(function(Et,Te){if(!Et.circular&&!Te.circular){if(Et.source.column==Te.source.column)return Et.y0-Te.y0;if(Je(Et,Te)){if(Te.source.column0?"up":"down"}function gt(at,Ke){return C(at.source,Ke)==C(at.target,Ke)}function Nt(at,Ke,Ct){var wt=at.nodes,St=at.links,Dt=!1,Zt=!1;if(St.forEach(function(Ye){Ye.circularLinkType=="top"?Dt=!0:Ye.circularLinkType=="bottom"&&(Zt=!0)}),Dt==!1||Zt==!1){var Et=t.min(wt,function(Ye){return Ye.y0}),Te=t.max(wt,function(Ye){return Ye.y1}),ot=Te-Et,Tt=Ct-Ke,vt=Tt/ot;wt.forEach(function(Ye){var He=(Ye.y1-Ye.y0)*vt;Ye.y0=(Ye.y0-Et)*vt,Ye.y1=Ye.y0+He}),St.forEach(function(Ye){Ye.y0=(Ye.y0-Et)*vt,Ye.y1=(Ye.y1-Et)*vt,Ye.width=Ye.width*vt})}}e.sankeyCircular=T,e.sankeyCenter=l,e.sankeyLeft=o,e.sankeyRight=s,e.sankeyJustify=u,Object.defineProperty(e,"__esModule",{value:!0})})});var i$=Ae((Vwr,PXe)=>{"use strict";PXe.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:"linear",cn:{sankey:"sankey",sankeyLinks:"sankey-links",sankeyLink:"sankey-link",sankeyNodeSet:"sankey-node-set",sankeyNode:"sankey-node",nodeRect:"node-rect",nodeLabel:"node-label"}}});var HXe=Ae((Gwr,GXe)=>{"use strict";var zXe=bXe(),YYt=(D2(),ob(R2)).interpolateNumber,IS=Jl(),Jk=MXe(),KYt=LXe(),dc=i$(),RS=cd(),sw=jl(),JYt=Mu(),v1=ei(),o$=v1.strTranslate,$Yt=v1.strRotate,s$=Jy(),$k=s$.keyFun,BB=s$.repeat,OXe=s$.unwrap,IXe=Xf(),QYt=$l(),qXe=td(),eKt=qXe.CAP_SHIFT,tKt=qXe.LINE_SPACING,rKt=3;function iKt(e,t,r){var n=OXe(t),i=n.trace,a=i.domain,o=i.orientation==="h",s=i.node.pad,u=i.node.thickness,l={justify:Jk.sankeyJustify,left:Jk.sankeyLeft,right:Jk.sankeyRight,center:Jk.sankeyCenter}[i.node.align],f=e.width*(a.x[1]-a.x[0]),c=e.height*(a.y[1]-a.y[0]),h=n._nodes,d=n._links,p=n.circular,_;p?_=KYt.sankeyCircular().circularLinkGap(0):_=Jk.sankey(),_.iterations(dc.sankeyIterations).size(o?[f,c]:[c,f]).nodeWidth(u).nodePadding(s).nodeId(function(U){return U.pointNumber}).nodeAlign(l).nodes(h).links(d);var b=_();_.nodePadding()=N||(W=N-j.y0,W>1e-6&&(j.y0+=W,j.y1+=W)),N=j.y1+s})}function P(U){var G=U.map(function(be,ze){return{x0:be.x0,index:ze}}).sort(function(be,ze){return be.x0-ze.x0}),j=[],W=-1,N,H=-1/0,re;for(v=0;vH+u&&(W+=1,N=ae.x0),H=ae.x0,j[W]||(j[W]=[]),j[W].push(ae),re=N-ae.x0,ae.x0+=re,ae.x1+=re}return j}if(i.node.x.length&&i.node.y.length){for(v=0;v0?" L "+i.targetX+" "+i.targetY:"")+"Z"):(r="M "+(i.targetX-t)+" "+(i.targetY-n)+" L "+(i.rightInnerExtent-t)+" "+(i.targetY-n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightSmallArcRadius+n)+" 0 0 0 "+(i.rightFullExtent-n-t)+" "+(i.targetY+i.rightSmallArcRadius)+" L "+(i.rightFullExtent-n-t)+" "+i.verticalRightInnerExtent,a&&o?r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightInnerExtent-n-t)+" "+(i.verticalFullExtent+n)+" L "+(i.rightFullExtent+n-t-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent+n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent:a?r+=" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightFullExtent-t-n-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" L "+(i.leftFullExtent+n+(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent:r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightInnerExtent-t)+" "+(i.verticalFullExtent+n)+" L "+i.leftInnerExtent+" "+(i.verticalFullExtent+n)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent,r+=" L "+(i.leftFullExtent+n)+" "+(i.sourceY+i.leftSmallArcRadius)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftSmallArcRadius+n)+" 0 0 0 "+i.leftInnerExtent+" "+(i.sourceY-n)+" L "+i.sourceX+" "+(i.sourceY-n)+" L "+i.sourceX+" "+(i.sourceY+n)+" L "+i.leftInnerExtent+" "+(i.sourceY+n)+" A "+(i.leftLargeArcRadius-n)+" "+(i.leftSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent-n)+" "+(i.sourceY+i.leftSmallArcRadius)+" L "+(i.leftFullExtent-n)+" "+i.verticalLeftInnerExtent,a&&o?r+=" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent-n-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" L "+(i.rightFullExtent+n-t+(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent:a?r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+(i.verticalFullExtent+n)+" L "+(i.rightFullExtent-t-n)+" "+(i.verticalFullExtent+n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent:r+=" A "+(i.leftLargeArcRadius-n)+" "+(i.leftLargeArcRadius-n)+" 0 0 1 "+i.leftInnerExtent+" "+(i.verticalFullExtent-n)+" L "+(i.rightInnerExtent-t)+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightLargeArcRadius-n)+" 0 0 1 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent,r+=" L "+(i.rightFullExtent+n-t)+" "+(i.targetY+i.rightSmallArcRadius)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightInnerExtent-t)+" "+(i.targetY+n)+" L "+(i.targetX-t)+" "+(i.targetY+n)+(t>0?" L "+i.targetX+" "+i.targetY:"")+"Z"),r}function l$(){var e=.5;function t(r){var n=r.linkArrowLength;if(r.link.circular)return aKt(r.link,n);var i=Math.abs((r.link.target.x0-r.link.source.x1)/2);n>i&&(n=i);var a=r.link.source.x1,o=r.link.target.x0-n,s=YYt(a,o),u=s(e),l=s(1-e),f=r.link.y0-r.link.width/2,c=r.link.y0+r.link.width/2,h=r.link.y1-r.link.width/2,d=r.link.y1+r.link.width/2,p="M"+a+","+f,_="C"+u+","+f+" "+l+","+h+" "+o+","+h,b="C"+l+","+d+" "+u+","+c+" "+a+","+c,v=n>0?"L"+(o+n)+","+(h+r.link.width/2):"";return v+="L"+o+","+d,p+_+v+b+"Z"}return t}function oKt(e,t){var r=RS(t.color),n=dc.nodePadAcross,i=e.nodePad/2;t.dx=t.x1-t.x0,t.dy=t.y1-t.y0;var a=t.dx,o=Math.max(.5,t.dy),s="node_"+t.pointNumber;return t.group&&(s=v1.randstr()),t.trace=e.trace,t.curveNumber=e.trace.index,{index:t.pointNumber,key:s,partOfGroup:t.partOfGroup||!1,group:t.group,traceId:e.key,trace:e.trace,node:t,nodePad:e.nodePad,nodeLineColor:e.nodeLineColor,nodeLineWidth:e.nodeLineWidth,textFont:e.textFont,size:e.horizontal?e.height:e.width,visibleWidth:Math.ceil(a),visibleHeight:o,zoneX:-n,zoneY:-i,zoneWidth:a+2*n,zoneHeight:o+2*i,labelY:e.horizontal?t.dy/2+1:t.dx/2+1,left:t.originalLayer===1,sizeAcross:e.width,forceLayouts:e.forceLayouts,horizontal:e.horizontal,darkBackground:r.getBrightness()<=128,tinyColorHue:sw.tinyRGB(r),tinyColorAlpha:r.getAlpha(),valueFormat:e.valueFormat,valueSuffix:e.valueSuffix,sankey:e.sankey,graph:e.graph,arrangement:e.arrangement,uniqueNodeLabelPathId:[e.guid,e.key,s].join("_"),interactionState:e.interactionState,figure:e}}function a$(e){e.attr("transform",function(t){return o$(t.node.x0.toFixed(3),t.node.y0.toFixed(3))})}function sKt(e){e.call(a$)}function NXe(e,t){e.call(sKt),t.attr("d",l$())}function RXe(e){e.attr("width",function(t){return t.node.x1-t.node.x0}).attr("height",function(t){return t.visibleHeight})}function n$(e){return e.link.width>1||e.linkLineWidth>0}function DXe(e){var t=o$(e.translateX,e.translateY);return t+(e.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function FXe(e,t,r){e.on(".basic",null).on("mouseover.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.hover(this,n,t),n.interactionState.hovered=[this,n])}).on("mousemove.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.follow(this,n),n.interactionState.hovered=[this,n])}).on("mouseout.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.unhover(this,n,t),n.interactionState.hovered=!1)}).on("click.basic",function(n){n.interactionState.hovered&&(r.unhover(this,n,t),n.interactionState.hovered=!1),!n.interactionState.dragInProgress&&!n.partOfGroup&&r.select(this,n,t)})}function lKt(e,t,r,n){var i=IS.behavior.drag().origin(function(a){return{x:a.node.x0+a.visibleWidth/2,y:a.node.y0+a.visibleHeight/2}}).on("dragstart",function(a){if(a.arrangement!=="fixed"&&(v1.ensureSingle(n._fullLayout._infolayer,"g","dragcover",function(s){n._fullLayout._dragCover=s}),v1.raiseToTop(this),a.interactionState.dragInProgress=a.node,BXe(a.node),a.interactionState.hovered&&(r.nodeEvents.unhover.apply(0,a.interactionState.hovered),a.interactionState.hovered=!1),a.arrangement==="snap")){var o=a.traceId+"|"+a.key;a.forceLayouts[o]?a.forceLayouts[o].alpha(1):uKt(e,o,a,n),fKt(e,t,a,o,n)}}).on("drag",function(a){if(a.arrangement!=="fixed"){var o=IS.event.x,s=IS.event.y;a.arrangement==="snap"?(a.node.x0=o-a.visibleWidth/2,a.node.x1=o+a.visibleWidth/2,a.node.y0=s-a.visibleHeight/2,a.node.y1=s+a.visibleHeight/2):(a.arrangement==="freeform"&&(a.node.x0=o-a.visibleWidth/2,a.node.x1=o+a.visibleWidth/2),s=Math.max(0,Math.min(a.size-a.visibleHeight/2,s)),a.node.y0=s-a.visibleHeight/2,a.node.y1=s+a.visibleHeight/2),BXe(a.node),a.arrangement!=="snap"&&(a.sankey.update(a.graph),NXe(e.filter(VXe(a)),t))}}).on("dragend",function(a){if(a.arrangement!=="fixed"){a.interactionState.dragInProgress=!1;for(var o=0;o0)window.requestAnimationFrame(a);else{var u=r.node.originalX;r.node.x0=u-r.visibleWidth/2,r.node.x1=u+r.visibleWidth/2,UXe(r,i)}})}function cKt(e,t,r,n){return function(){for(var a=0,o=0;o0&&n.forceLayouts[t].alpha(0)}}function UXe(e,t){for(var r=[],n=[],i=0;i{"use strict";var Zp=Jl(),f$=ei(),OB=f$.numberFormat,vKt=HXe(),DS=Xc(),mKt=jl(),Sx=i$().cn,Qk=f$._;function WXe(e){return e!==""}function FS(e,t){return e.filter(function(r){return r.key===t.traceId})}function jXe(e,t){Zp.select(e).select("path").style("fill-opacity",t),Zp.select(e).select("rect").style("fill-opacity",t)}function XXe(e){Zp.select(e).select("text.name").style("fill","black")}function ZXe(e){return function(t){return e.node.sourceLinks.indexOf(t.link)!==-1||e.node.targetLinks.indexOf(t.link)!==-1}}function YXe(e){return function(t){return t.node.sourceLinks.indexOf(e.link)!==-1||t.node.targetLinks.indexOf(e.link)!==-1}}function KXe(e,t,r){t&&r&&FS(r,t).selectAll("."+Sx.sankeyLink).filter(ZXe(t)).call(JXe.bind(0,t,r,!1))}function u$(e,t,r){t&&r&&FS(r,t).selectAll("."+Sx.sankeyLink).filter(ZXe(t)).call($Xe.bind(0,t,r,!1))}function JXe(e,t,r,n){n.style("fill",function(i){if(!i.link.concentrationscale)return i.tinyColorHoverHue}).style("fill-opacity",function(i){if(!i.link.concentrationscale)return i.tinyColorHoverAlpha}),n.each(function(i){var a=i.link.label;a!==""&&FS(t,e).selectAll("."+Sx.sankeyLink).filter(function(o){return o.link.label===a}).style("fill",function(o){if(!o.link.concentrationscale)return o.tinyColorHoverHue}).style("fill-opacity",function(o){if(!o.link.concentrationscale)return o.tinyColorHoverAlpha})}),r&&FS(t,e).selectAll("."+Sx.sankeyNode).filter(YXe(e)).call(KXe)}function $Xe(e,t,r,n){n.style("fill",function(i){return i.tinyColorHue}).style("fill-opacity",function(i){return i.tinyColorAlpha}),n.each(function(i){var a=i.link.label;a!==""&&FS(t,e).selectAll("."+Sx.sankeyLink).filter(function(o){return o.link.label===a}).style("fill",function(o){return o.tinyColorHue}).style("fill-opacity",function(o){return o.tinyColorAlpha})}),r&&FS(t,e).selectAll(Sx.sankeyNode).filter(YXe(e)).call(u$)}function rh(e,t){var r=e.hoverlabel||{},n=f$.nestedProperty(r,t).get();return Array.isArray(n)?!1:n}QXe.exports=function(t,r){for(var n=t._fullLayout,i=n._paper,a=n._size,o=0;o"),color:rh(C,"bgcolor")||mKt.addOpacity(B.color,1),borderColor:rh(C,"bordercolor"),fontFamily:rh(C,"font.family"),fontSize:rh(C,"font.size"),fontColor:rh(C,"font.color"),fontWeight:rh(C,"font.weight"),fontStyle:rh(C,"font.style"),fontVariant:rh(C,"font.variant"),fontTextcase:rh(C,"font.textcase"),fontLineposition:rh(C,"font.lineposition"),fontShadow:rh(C,"font.shadow"),nameLength:rh(C,"namelength"),textAlign:rh(C,"align"),idealAlign:Zp.event.x"),color:rh(C,"bgcolor")||x.tinyColorHue,borderColor:rh(C,"bordercolor"),fontFamily:rh(C,"font.family"),fontSize:rh(C,"font.size"),fontColor:rh(C,"font.color"),fontWeight:rh(C,"font.weight"),fontStyle:rh(C,"font.style"),fontVariant:rh(C,"font.variant"),fontTextcase:rh(C,"font.textcase"),fontLineposition:rh(C,"font.lineposition"),fontShadow:rh(C,"font.shadow"),nameLength:rh(C,"namelength"),textAlign:rh(C,"align"),idealAlign:"left",hovertemplate:C.hovertemplate,hovertemplateLabels:U,eventData:[x.node]},{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:t});jXe(W,.85),XXe(W)}}},A=function(L,x,C){t._fullLayout.hovermode!==!1&&(Zp.select(L).call(u$,x,C),x.node.trace.node.hoverinfo!=="skip"&&(x.node.fullData=x.node.trace,t.emit("plotly_unhover",{event:Zp.event,points:[x.node]})),DS.loneUnhover(n._hoverlayer.node()))};vKt(t,i,r,{width:a.w,height:a.h,margin:{t:a.t,r:a.r,b:a.b,l:a.l}},{linkEvents:{hover:l,follow:_,unhover:b,select:u},nodeEvents:{hover:k,follow:E,unhover:A,select:v}})}});var eZe=Ae(lw=>{"use strict";var yKt=Sc().overrideAll,gKt=Rd().getModuleCalcData,_Kt=c$(),xKt=q1(),bKt=Sm(),wKt=xp(),TKt=oh().prepSelect,h$=ei(),AKt=$l(),qB="sankey";lw.name=qB;lw.baseLayoutAttrOverrides=yKt({hoverlabel:xKt.hoverlabel},"plot","nested");lw.plot=function(e){var t=gKt(e.calcdata,qB)[0];_Kt(e,t),lw.updateFx(e)};lw.clean=function(e,t,r,n){var i=n._has&&n._has(qB),a=t._has&&t._has(qB);i&&!a&&(n._paperdiv.selectAll(".sankey").remove(),n._paperdiv.selectAll(".bgsankey").remove())};lw.updateFx=function(e){for(var t=0;t{"use strict";tZe.exports=function(t,r){for(var n=t.cd,i=[],a=n[0].trace,o=a._sankey.graph.nodes,s=0;s{"use strict";iZe.exports={attributes:e$(),supplyDefaults:sXe(),calc:hXe(),plot:c$(),moduleType:"trace",name:"sankey",basePlotModule:eZe(),selectPoints:rZe(),categories:["noOpacity"],meta:{}}});var oZe=Ae((Zwr,aZe)=>{"use strict";aZe.exports=nZe()});var lZe=Ae(BS=>{"use strict";var sZe=Cc();BS.name="indicator";BS.plot=function(e,t,r,n){sZe.plotBasePlot(BS.name,e,t,r,n)};BS.clean=function(e,t,r,n){sZe.cleanBasePlot(BS.name,e,t,r,n)}});var p$=Ae((Kwr,pZe)=>{"use strict";var Mx=Su().extendFlat,fZe=Su().extendDeep,MKt=Sc().overrideAll,cZe=gc(),hZe=Fh(),EKt=zc().attributes,lh=Dd(),kKt=Lf().templatedArray,NB=XT(),uZe=jc().descriptionOnlyNumbers,d$=cZe({editType:"plot",colorEditType:"plot"}),eC={color:{valType:"color",editType:"plot"},line:{color:{valType:"color",dflt:hZe.defaultLine,editType:"plot"},width:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},thickness:{valType:"number",min:0,max:1,dflt:1,editType:"plot"},editType:"calc"},dZe={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},CKt=kKt("step",fZe({},eC,{range:dZe}));pZe.exports={mode:{valType:"flaglist",editType:"calc",flags:["number","delta","gauge"],dflt:"number"},value:{valType:"number",editType:"calc",anim:!0},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},domain:EKt({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot"},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},font:Mx({},d$,{}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot",description:uZe("value")},font:Mx({},d$,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"plot"},delta:{reference:{valType:"number",editType:"calc"},position:{valType:"enumerated",values:["top","bottom","left","right"],dflt:"bottom",editType:"plot"},relative:{valType:"boolean",editType:"plot",dflt:!1},valueformat:{valType:"string",editType:"plot",description:uZe("value")},increasing:{symbol:{valType:"string",dflt:NB.INCREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:NB.INCREASING.COLOR,editType:"plot"},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:NB.DECREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:NB.DECREASING.COLOR,editType:"plot"},editType:"plot"},font:Mx({},d$,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"]},bar:fZe({},eC,{color:{dflt:"green"}}),bgcolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:hZe.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot"},axis:MKt({range:dZe,visible:Mx({},lh.visible,{dflt:!0}),tickmode:lh.minor.tickmode,nticks:lh.nticks,tick0:lh.tick0,dtick:lh.dtick,tickvals:lh.tickvals,ticktext:lh.ticktext,ticks:Mx({},lh.ticks,{dflt:"outside"}),ticklen:lh.ticklen,tickwidth:lh.tickwidth,tickcolor:lh.tickcolor,ticklabelstep:lh.ticklabelstep,showticklabels:lh.showticklabels,labelalias:lh.labelalias,tickfont:cZe({}),tickangle:lh.tickangle,tickformat:lh.tickformat,tickformatstops:lh.tickformatstops,tickprefix:lh.tickprefix,showtickprefix:lh.showtickprefix,ticksuffix:lh.ticksuffix,showticksuffix:lh.showticksuffix,separatethousands:lh.separatethousands,exponentformat:lh.exponentformat,minexponent:lh.minexponent,showexponent:lh.showexponent,editType:"plot"},"plot"),steps:CKt,threshold:{line:{color:Mx({},eC.line.color,{}),width:Mx({},eC.line.width,{dflt:1}),editType:"plot"},thickness:Mx({},eC.thickness,{dflt:.85}),value:{valType:"number",editType:"calc",dflt:!1},editType:"plot"},editType:"plot"}}});var v$=Ae((Jwr,vZe)=>{"use strict";vZe.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}});var gZe=Ae(($wr,yZe)=>{"use strict";var tg=ei(),VB=p$(),LKt=zc().defaults,mZe=Lf(),PKt=Jd(),UB=v$(),zKt=bb(),IKt=M3(),RKt=e_(),DKt=t_();function FKt(e,t,r,n){function i(x,C){return tg.coerce(e,t,VB,x,C)}LKt(t,n,i),i("mode"),t._hasNumber=t.mode.indexOf("number")!==-1,t._hasDelta=t.mode.indexOf("delta")!==-1,t._hasGauge=t.mode.indexOf("gauge")!==-1;var a=i("value");t._range=[0,typeof a=="number"?1.5*a:1];var o=new Array(2),s;if(t._hasNumber){i("number.valueformat");var u=tg.extendFlat({},n.font);u.size=void 0,tg.coerceFont(i,"number.font",u),t.number.font.size===void 0&&(t.number.font.size=UB.defaultNumberFontSize,o[0]=!0),i("number.prefix"),i("number.suffix"),s=t.number.font.size}var l;if(t._hasDelta){var f=tg.extendFlat({},n.font);f.size=void 0,tg.coerceFont(i,"delta.font",f),t.delta.font.size===void 0&&(t.delta.font.size=(t._hasNumber?.5:1)*(s||UB.defaultNumberFontSize),o[1]=!0),i("delta.reference",t.value),i("delta.relative"),i("delta.valueformat",t.delta.relative?"2%":""),i("delta.increasing.symbol"),i("delta.increasing.color"),i("delta.decreasing.symbol"),i("delta.decreasing.color"),i("delta.position"),i("delta.prefix"),i("delta.suffix"),l=t.delta.font.size}t._scaleNumbers=(!t._hasNumber||o[0])&&(!t._hasDelta||o[1])||!1;var c=tg.extendFlat({},n.font);c.size=.25*(s||l||UB.defaultNumberFontSize),tg.coerceFont(i,"title.font",c),i("title.text");var h,d,p,_;function b(x,C){return tg.coerce(h,d,VB.gauge,x,C)}function v(x,C){return tg.coerce(p,_,VB.gauge.axis,x,C)}if(t._hasGauge){h=e.gauge,h||(h={}),d=mZe.newContainer(t,"gauge"),b("shape");var k=t._isBullet=t.gauge.shape==="bullet";k||i("title.align","center");var E=t._isAngular=t.gauge.shape==="angular";E||i("align","center"),b("bgcolor",n.paper_bgcolor),b("borderwidth"),b("bordercolor"),b("bar.color"),b("bar.line.color"),b("bar.line.width");var A=UB.valueThickness*(t.gauge.shape==="bullet"?.5:1);b("bar.thickness",A),PKt(h,d,{name:"steps",handleItemDefaults:BKt}),b("threshold.value"),b("threshold.thickness"),b("threshold.line.width"),b("threshold.line.color"),p={},h&&(p=h.axis||{}),_=mZe.newContainer(d,"axis"),v("visible"),t._range=v("range",t._range);var L={font:n.font,noAutotickangles:!0,outerTicks:!0,noTicklabelshift:!0,noTicklabelstandoff:!0};zKt(p,_,v,"linear"),DKt(p,_,v,"linear",L),RKt(p,_,v,"linear",L),IKt(p,_,v,L)}else i("title.align","center"),i("align","center"),t._isAngular=t._isBullet=!1;t._length=null}function BKt(e,t){function r(n,i){return tg.coerce(e,t,VB.gauge.steps,n,i)}r("color"),r("line.color"),r("line.width"),r("range"),r("thickness")}yZe.exports={supplyDefaults:FKt}});var xZe=Ae((Qwr,_Ze)=>{"use strict";function OKt(e,t){var r=[],n=t.value;typeof t._lastValue!="number"&&(t._lastValue=t.value);var i=t._lastValue,a=i;return t._hasDelta&&typeof t.delta.reference=="number"&&(a=t.delta.reference),r[0]={y:n,lastY:i,delta:n-a,relativeDelta:(n-a)/a},r}_Ze.exports={calc:OKt}});var MZe=Ae((e3r,SZe)=>{"use strict";var dw=Jl(),qKt=(D2(),ob(R2)).interpolate,bZe=(D2(),ob(R2)).interpolateNumber,Ex=ei(),NKt=Ex.strScale,rC=Ex.strTranslate,UKt=Ex.rad2deg,VKt=td().MID_SHIFT,hw=Mu(),uw=v$(),HB=Xf(),up=wu(),GKt=iE(),HKt=uI(),WKt=Dd(),OS=jl(),m$={left:"start",center:"middle",right:"end"},fw={left:0,center:.5,right:1},wZe=/[yzafpnµmkMGTPEZY]/;function iC(e){return e&&e.duration>0}SZe.exports=function(t,r,n,i){var a=t._fullLayout,o;iC(n)&&i&&(o=i()),Ex.makeTraceGroups(a._indicatorlayer,r,"trace").each(function(s){var u=s[0],l=u.trace,f=dw.select(this),c=l._hasGauge,h=l._isAngular,d=l._isBullet,p=l.domain,_={w:a._size.w*(p.x[1]-p.x[0]),h:a._size.h*(p.y[1]-p.y[0]),l:a._size.l+a._size.w*p.x[0],r:a._size.r+a._size.w*(1-p.x[1]),t:a._size.t+a._size.h*(1-p.y[1]),b:a._size.b+a._size.h*p.y[0]},b=_.l+_.w/2,v=_.t+_.h/2,k=Math.min(_.w/2,_.h),E=uw.innerRadius*k,A,L,x,C=l.align||"center";if(L=v,!c)A=_.l+fw[C]*_.w,x=function(W){return TZe(W,_.w,_.h)};else if(h&&(A=b,L=v+k/2,x=function(W){return KKt(W,.9*E)}),d){var M=uw.bulletPadding,m=1-uw.bulletNumberDomainSize+M;A=_.l+(m+(1-m)*fw[C])*_.w,x=function(W){return TZe(W,(uw.bulletNumberDomainSize-M)*_.w,_.h)}}ZKt(t,f,s,{numbersX:A,numbersY:L,numbersScaler:x,transitionOpts:n,onComplete:o});var P,T;c&&(P={range:l.gauge.axis.range,color:l.gauge.bgcolor,line:{color:l.gauge.bordercolor,width:0},thickness:1},T={range:l.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:l.gauge.bordercolor,width:l.gauge.borderwidth},thickness:1});var B=f.selectAll("g.angular").data(h?s:[]);B.exit().remove();var F=f.selectAll("g.angularaxis").data(h?s:[]);F.exit().remove(),h&&XKt(t,f,s,{radius:k,innerRadius:E,gauge:B,layer:F,size:_,gaugeBg:P,gaugeOutline:T,transitionOpts:n,onComplete:o});var U=f.selectAll("g.bullet").data(d?s:[]);U.exit().remove();var G=f.selectAll("g.bulletaxis").data(d?s:[]);G.exit().remove(),d&&jKt(t,f,s,{gauge:U,layer:G,size:_,gaugeBg:P,gaugeOutline:T,transitionOpts:n,onComplete:o});var j=f.selectAll("text.title").data(s);j.exit().remove(),j.enter().append("text").classed("title",!0),j.attr("text-anchor",function(){return d?m$.right:m$[l.title.align]}).text(l.title.text).call(hw.font,l.title.font).call(HB.convertToTspans,t),j.attr("transform",function(){var W=_.l+_.w*fw[l.title.align],N,H=uw.titlePadding,re=hw.bBox(j.node());if(c){if(h)if(l.gauge.axis.visible){var ae=hw.bBox(F.node());N=ae.top-H-re.bottom}else N=_.t+_.h/2-k/2-re.bottom-H;d&&(N=L-(re.top+re.bottom)/2,W=_.l-uw.bulletPadding*_.w)}else N=l._numbersTop-H-re.bottom;return rC(W,N)})})};function jKt(e,t,r,n){var i=r[0].trace,a=n.gauge,o=n.layer,s=n.gaugeBg,u=n.gaugeOutline,l=n.size,f=i.domain,c=n.transitionOpts,h=n.onComplete,d,p,_,b,v;a.enter().append("g").classed("bullet",!0),a.attr("transform",rC(l.l,l.t)),o.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),o.selectAll("g.xbulletaxistick,path,text").remove();var k=l.h,E=i.gauge.bar.thickness*k,A=f.x[0],L=f.x[0]+(f.x[1]-f.x[0])*(i._hasNumber||i._hasDelta?1-uw.bulletNumberDomainSize:1);d=tC(e,i.gauge.axis),d._id="xbulletaxis",d.domain=[A,L],d.setScale(),p=up.calcTicks(d),_=up.makeTransTickFn(d),b=up.getTickSigns(d)[2],v=l.t+l.h,d.visible&&(up.drawTicks(e,d,{vals:d.ticks==="inside"?up.clipEnds(d,p):p,layer:o,path:up.makeTickPath(d,v,b),transFn:_}),up.drawLabels(e,d,{vals:p,layer:o,transFn:_,labelFns:up.makeLabelFns(d,v)}));function x(F){F.attr("width",function(U){return Math.max(0,d.c2p(U.range[1])-d.c2p(U.range[0]))}).attr("x",function(U){return d.c2p(U.range[0])}).attr("y",function(U){return .5*(1-U.thickness)*k}).attr("height",function(U){return U.thickness*k})}var C=[s].concat(i.gauge.steps),M=a.selectAll("g.bg-bullet").data(C);M.enter().append("g").classed("bg-bullet",!0).append("rect"),M.select("rect").call(x).call(cw),M.exit().remove();var m=a.selectAll("g.value-bullet").data([i.gauge.bar]);m.enter().append("g").classed("value-bullet",!0).append("rect"),m.select("rect").attr("height",E).attr("y",(k-E)/2).call(cw),iC(c)?m.select("rect").transition().duration(c.duration).ease(c.easing).each("end",function(){h&&h()}).each("interrupt",function(){h&&h()}).attr("width",Math.max(0,d.c2p(Math.min(i.gauge.axis.range[1],r[0].y)))):m.select("rect").attr("width",typeof r[0].y=="number"?Math.max(0,d.c2p(Math.min(i.gauge.axis.range[1],r[0].y))):0),m.exit().remove();var P=r.filter(function(){return i.gauge.threshold.value||i.gauge.threshold.value===0}),T=a.selectAll("g.threshold-bullet").data(P);T.enter().append("g").classed("threshold-bullet",!0).append("line"),T.select("line").attr("x1",d.c2p(i.gauge.threshold.value)).attr("x2",d.c2p(i.gauge.threshold.value)).attr("y1",(1-i.gauge.threshold.thickness)/2*k).attr("y2",(1-(1-i.gauge.threshold.thickness)/2)*k).call(OS.stroke,i.gauge.threshold.line.color).style("stroke-width",i.gauge.threshold.line.width),T.exit().remove();var B=a.selectAll("g.gauge-outline").data([u]);B.enter().append("g").classed("gauge-outline",!0).append("rect"),B.select("rect").call(x).call(cw),B.exit().remove()}function XKt(e,t,r,n){var i=r[0].trace,a=n.size,o=n.radius,s=n.innerRadius,u=n.gaugeBg,l=n.gaugeOutline,f=[a.l+a.w/2,a.t+a.h/2+o/2],c=n.gauge,h=n.layer,d=n.transitionOpts,p=n.onComplete,_=Math.PI/2;function b(be){var ze=i.gauge.axis.range[0],Ce=i.gauge.axis.range[1],de=(be-ze)/(Ce-ze)*Math.PI-_;return de<-_?-_:de>_?_:de}function v(be){return dw.svg.arc().innerRadius((s+o)/2-be/2*(o-s)).outerRadius((s+o)/2+be/2*(o-s)).startAngle(-_)}function k(be){be.attr("d",function(ze){return v(ze.thickness).startAngle(b(ze.range[0])).endAngle(b(ze.range[1]))()})}var E,A,L,x;c.enter().append("g").classed("angular",!0),c.attr("transform",rC(f[0],f[1])),h.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),h.selectAll("g.xangularaxistick,path,text").remove(),E=tC(e,i.gauge.axis),E.type="linear",E.range=i.gauge.axis.range,E._id="xangularaxis",E.ticklabeloverflow="allow",E.setScale();var C=function(be){return(E.range[0]-be.x)/(E.range[1]-E.range[0])*Math.PI+Math.PI},M={},m=up.makeLabelFns(E,0),P=m.labelStandoff;M.xFn=function(be){var ze=C(be);return Math.cos(ze)*P},M.yFn=function(be){var ze=C(be),Ce=Math.sin(ze)>0?.2:1;return-Math.sin(ze)*(P+be.fontSize*Ce)+Math.abs(Math.cos(ze))*(be.fontSize*VKt)},M.anchorFn=function(be){var ze=C(be),Ce=Math.cos(ze);return Math.abs(Ce)<.1?"middle":Ce>0?"start":"end"},M.heightFn=function(be,ze,Ce){var de=C(be);return-.5*(1+Math.sin(de))*Ce};var T=function(be){return rC(f[0]+o*Math.cos(be),f[1]-o*Math.sin(be))};L=function(be){return T(C(be))};var B=function(be){var ze=C(be);return T(ze)+"rotate("+-UKt(ze)+")"};if(A=up.calcTicks(E),x=up.getTickSigns(E)[2],E.visible){x=E.ticks==="inside"?-1:1;var F=(E.linewidth||1)/2;up.drawTicks(e,E,{vals:A,layer:h,path:"M"+x*F+",0h"+x*E.ticklen,transFn:B}),up.drawLabels(e,E,{vals:A,layer:h,transFn:L,labelFns:M})}var U=[u].concat(i.gauge.steps),G=c.selectAll("g.bg-arc").data(U);G.enter().append("g").classed("bg-arc",!0).append("path"),G.select("path").call(k).call(cw),G.exit().remove();var j=v(i.gauge.bar.thickness),W=c.selectAll("g.value-arc").data([i.gauge.bar]);W.enter().append("g").classed("value-arc",!0).append("path");var N=W.select("path");iC(d)?(N.transition().duration(d.duration).ease(d.easing).each("end",function(){p&&p()}).each("interrupt",function(){p&&p()}).attrTween("d",YKt(j,b(r[0].lastY),b(r[0].y))),i._lastValue=r[0].y):N.attr("d",typeof r[0].y=="number"?j.endAngle(b(r[0].y)):"M0,0Z"),N.call(cw),W.exit().remove(),U=[];var H=i.gauge.threshold.value;(H||H===0)&&U.push({range:[H,H],color:i.gauge.threshold.color,line:{color:i.gauge.threshold.line.color,width:i.gauge.threshold.line.width},thickness:i.gauge.threshold.thickness});var re=c.selectAll("g.threshold-arc").data(U);re.enter().append("g").classed("threshold-arc",!0).append("path"),re.select("path").call(k).call(cw),re.exit().remove();var ae=c.selectAll("g.gauge-outline").data([l]);ae.enter().append("g").classed("gauge-outline",!0).append("path"),ae.select("path").call(k).call(cw),ae.exit().remove()}function ZKt(e,t,r,n){var i=r[0].trace,a=n.numbersX,o=n.numbersY,s=i.align||"center",u=m$[s],l=n.transitionOpts,f=n.onComplete,c=Ex.ensureSingle(t,"g","numbers"),h,d,p,_=[];i._hasNumber&&_.push("number"),i._hasDelta&&(_.push("delta"),i.delta.position==="left"&&_.reverse());var b=c.selectAll("text").data(_);b.enter().append("text"),b.attr("text-anchor",function(){return u}).attr("class",function(T){return T}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),b.exit().remove();function v(T,B,F,U){if(T.match("s")&&F>=0!=U>=0&&!B(F).slice(-1).match(wZe)&&!B(U).slice(-1).match(wZe)){var G=T.slice().replace("s","f").replace(/\d+/,function(W){return parseInt(W)-1}),j=tC(e,{tickformat:G});return function(W){return Math.abs(W)<1?up.tickText(j,W).text:B(W)}}else return B}function k(){var T=tC(e,{tickformat:i.number.valueformat},i._range);T.setScale(),up.prepTicks(T);var B=function(W){return up.tickText(T,W).text},F=i.number.suffix,U=i.number.prefix,G=c.select("text.number");function j(){var W=typeof r[0].y=="number"?U+B(r[0].y)+F:"-";G.text(W).call(hw.font,i.number.font).call(HB.convertToTspans,e)}return iC(l)?G.transition().duration(l.duration).ease(l.easing).each("end",function(){j(),f&&f()}).each("interrupt",function(){j(),f&&f()}).attrTween("text",function(){var W=dw.select(this),N=bZe(r[0].lastY,r[0].y);i._lastValue=r[0].y;var H=v(i.number.valueformat,B,r[0].lastY,r[0].y);return function(re){W.text(U+H(N(re))+F)}}):j(),h=AZe(U+B(r[0].y)+F,i.number.font,u,e),G}function E(){var T=tC(e,{tickformat:i.delta.valueformat},i._range);T.setScale(),up.prepTicks(T);var B=function(re){return up.tickText(T,re).text},F=i.delta.suffix,U=i.delta.prefix,G=function(re){var ae=i.delta.relative?re.relativeDelta:re.delta;return ae},j=function(re,ae){return re===0||typeof re!="number"||isNaN(re)?"-":(re>0?i.delta.increasing.symbol:i.delta.decreasing.symbol)+U+ae(re)+F},W=function(re){return re.delta>=0?i.delta.increasing.color:i.delta.decreasing.color};i._deltaLastValue===void 0&&(i._deltaLastValue=G(r[0]));var N=c.select("text.delta");N.call(hw.font,i.delta.font).call(OS.fill,W({delta:i._deltaLastValue}));function H(){N.text(j(G(r[0]),B)).call(OS.fill,W(r[0])).call(HB.convertToTspans,e)}return iC(l)?N.transition().duration(l.duration).ease(l.easing).tween("text",function(){var re=dw.select(this),ae=G(r[0]),be=i._deltaLastValue,ze=v(i.delta.valueformat,B,be,ae),Ce=bZe(be,ae);return i._deltaLastValue=ae,function(de){re.text(j(Ce(de),ze)),re.call(OS.fill,W({delta:Ce(de)}))}}).each("end",function(){H(),f&&f()}).each("interrupt",function(){H(),f&&f()}):H(),d=AZe(j(G(r[0]),B),i.delta.font,u,e),N}var A=i.mode+i.align,L;if(i._hasDelta&&(L=E(),A+=i.delta.position+i.delta.font.size+i.delta.font.family+i.delta.valueformat,A+=i.delta.increasing.symbol+i.delta.decreasing.symbol,p=d),i._hasNumber&&(k(),A+=i.number.font.size+i.number.font.family+i.number.valueformat+i.number.suffix+i.number.prefix,p=h),i._hasDelta&&i._hasNumber){var x=[(h.left+h.right)/2,(h.top+h.bottom)/2],C=[(d.left+d.right)/2,(d.top+d.bottom)/2],M,m,P=.75*i.delta.font.size;i.delta.position==="left"&&(M=GB(i,"deltaPos",0,-1*(h.width*fw[i.align]+d.width*(1-fw[i.align])+P),A,Math.min),m=x[1]-C[1],p={width:h.width+d.width+P,height:Math.max(h.height,d.height),left:d.left+M,right:h.right,top:Math.min(h.top,d.top+m),bottom:Math.max(h.bottom,d.bottom+m)}),i.delta.position==="right"&&(M=GB(i,"deltaPos",0,h.width*(1-fw[i.align])+d.width*fw[i.align]+P,A,Math.max),m=x[1]-C[1],p={width:h.width+d.width+P,height:Math.max(h.height,d.height),left:h.left,right:d.right+M,top:Math.min(h.top,d.top+m),bottom:Math.max(h.bottom,d.bottom+m)}),i.delta.position==="bottom"&&(M=null,m=d.height,p={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height,bottom:h.bottom+d.height}),i.delta.position==="top"&&(M=null,m=h.top,p={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height-d.height,bottom:h.bottom}),L.attr({dx:M,dy:m})}(i._hasNumber||i._hasDelta)&&c.attr("transform",function(){var T=n.numbersScaler(p);A+=T[2];var B=GB(i,"numbersScale",1,T[0],A,Math.min),F;i._scaleNumbers||(B=1),i._isAngular?F=o-B*p.bottom:F=o-B*(p.top+p.bottom)/2,i._numbersTop=B*p.top+F;var U=p[s];s==="center"&&(U=(p.left+p.right)/2);var G=a-B*U;return G=GB(i,"numbersTranslate",0,G,A,Math.max),rC(G,F)+NKt(B)})}function cw(e){e.each(function(t){OS.stroke(dw.select(this),t.line.color)}).each(function(t){OS.fill(dw.select(this),t.color)}).style("stroke-width",function(t){return t.line.width})}function YKt(e,t,r){return function(){var n=qKt(t,r);return function(i){return e.endAngle(n(i))()}}}function tC(e,t,r){var n=e._fullLayout,i=Ex.extendFlat({type:"linear",ticks:"outside",range:r,showline:!0},t),a={type:"linear",_id:"x"+t._id},o={letter:"x",font:n.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function s(u,l){return Ex.coerce(i,a,WKt,u,l)}return GKt(i,a,s,o,n),HKt(i,a,s,o),a}function TZe(e,t,r){var n=Math.min(t/e.width,r/e.height);return[n,e,t+"x"+r]}function KKt(e,t){var r=Math.sqrt(e.width/2*(e.width/2)+e.height*e.height),n=t/r;return[n,e,t]}function AZe(e,t,r,n){var i=document.createElementNS("http://www.w3.org/2000/svg","text"),a=dw.select(i);return a.text(e).attr("x",0).attr("y",0).attr("text-anchor",r).attr("data-unformatted",e).call(HB.convertToTspans,n).call(hw.font,t),hw.bBox(a.node())}function GB(e,t,r,n,i,a){var o="_cache"+t;e[o]&&e[o].key===i||(e[o]={key:i,value:r});var s=Ex.aggNums(a,null,[e[o].value,n],2);return e[o].value=s,s}});var kZe=Ae((t3r,EZe)=>{"use strict";EZe.exports={moduleType:"trace",name:"indicator",basePlotModule:lZe(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:p$(),supplyDefaults:gZe().supplyDefaults,calc:xZe().calc,plot:MZe(),meta:{}}});var LZe=Ae((r3r,CZe)=>{"use strict";CZe.exports=kZe()});var y$=Ae((n3r,RZe)=>{"use strict";var PZe=Ub(),WB=Su().extendFlat,JKt=Sc().overrideAll,zZe=gc(),$Kt=zc().attributes,IZe=jc().descriptionOnlyNumbers,i3r=RZe.exports=JKt({domain:$Kt({name:"table",trace:!0}),columnwidth:{valType:"number",arrayOk:!0,dflt:null},columnorder:{valType:"data_array"},header:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:IZe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:WB({},PZe.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:WB({},zZe({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:IZe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:WB({},PZe.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:WB({},zZe({arrayOk:!0}))}},"calc","from-root")});var FZe=Ae((a3r,DZe)=>{"use strict";var g$=ei(),QKt=y$(),eJt=zc().defaults;function tJt(e,t){for(var r=e.columnorder||[],n=e.header.values.length,i=r.slice(0,n),a=i.slice().sort(function(u,l){return u-l}),o=i.map(function(u){return a.indexOf(u)}),s=o.length;s{"use strict";var rJt=Jy().wrap;BZe.exports=function(){return rJt({})}});var _$=Ae((s3r,qZe)=>{"use strict";qZe.exports={cellPad:8,columnExtentOffset:10,columnTitleOffset:28,emptyHeaderHeight:16,latexCheck:/^\$.*\$$/,goldenRatio:1.618,lineBreaker:"
",maxDimensionCount:60,overdrag:45,releaseTransitionDuration:120,releaseTransitionEase:"cubic-out",scrollbarCaptureWidth:18,scrollbarHideDelay:1e3,scrollbarHideDuration:1e3,scrollbarOffset:5,scrollbarWidth:8,transitionDuration:100,transitionEase:"cubic-out",uplift:5,wrapSpacer:" ",wrapSplitCharacter:" ",cn:{table:"table",tableControlView:"table-control-view",scrollBackground:"scroll-background",yColumn:"y-column",columnBlock:"column-block",scrollAreaClip:"scroll-area-clip",scrollAreaClipRect:"scroll-area-clip-rect",columnBoundary:"column-boundary",columnBoundaryClippath:"column-boundary-clippath",columnBoundaryRect:"column-boundary-rect",columnCells:"column-cells",columnCell:"column-cell",cellRect:"cell-rect",cellText:"cell-text",cellTextHolder:"cell-text-holder",scrollbarKit:"scrollbar-kit",scrollbar:"scrollbar",scrollbarSlider:"scrollbar-slider",scrollbarGlyph:"scrollbar-glyph",scrollbarCaptureZone:"scrollbar-capture-zone"}}});var ZZe=Ae((l3r,XZe)=>{"use strict";var NZe=_$(),b$=Su().extendFlat,iJt=ku(),nJt=mp().isTypedArray,jB=mp().isArrayOrTypedArray;XZe.exports=function(t,r){var n=x$(r.cells.values),i=function(m){return m.slice(r.header.values.length,m.length)},a=x$(r.header.values);a.length&&!a[0].length&&(a[0]=[""],a=x$(a));var o=a.concat(i(n).map(function(){return jZe((a[0]||[""]).length)})),s=r.domain,u=Math.floor(t._fullLayout._size.w*(s.x[1]-s.x[0])),l=Math.floor(t._fullLayout._size.h*(s.y[1]-s.y[0])),f=r.header.values.length?o[0].map(function(){return r.header.height}):[NZe.emptyHeaderHeight],c=n.length?n[0].map(function(){return r.cells.height}):[],h=f.reduce(UZe,0),d=l-h,p=d+NZe.uplift,_=HZe(c,p),b=HZe(f,h),v=GZe(b,[]),k=GZe(_,v),E={},A=r._fullInput.columnorder;jB(A)&&(A=Array.from(A)),A=A.concat(i(n.map(function(m,P){return P})));var L=o.map(function(m,P){var T=jB(r.columnwidth)?r.columnwidth[Math.min(P,r.columnwidth.length-1)]:r.columnwidth;return iJt(T)?Number(T):1}),x=L.reduce(UZe,0);L=L.map(function(m){return m/x*u});var C=Math.max(w$(r.header.line.width),w$(r.cells.line.width)),M={key:r.uid+t._context.staticPlot,translateX:s.x[0]*t._fullLayout._size.w,translateY:t._fullLayout._size.h*(1-s.y[1]),size:t._fullLayout._size,width:u,maxLineWidth:C,height:l,columnOrder:A,groupHeight:l,rowBlocks:k,headerRowBlocks:v,scrollY:0,cells:b$({},r.cells,{values:n}),headerCells:b$({},r.header,{values:o}),gdColumns:o.map(function(m){return m[0]}),gdColumnsOriginalOrder:o.map(function(m){return m[0]}),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:o.map(function(m,P){var T=E[m];E[m]=(T||0)+1;var B=m+"__"+E[m];return{key:B,label:m,specIndex:P,xIndex:A[P],xScale:VZe,x:void 0,calcdata:void 0,columnWidth:L[P]}})};return M.columns.forEach(function(m){m.calcdata=M,m.x=VZe(m)}),M};function w$(e){if(jB(e)){for(var t=0,r=0;r=t||l===e.length-1)&&(r[i]=o,o.key=u++,o.firstRowIndex=s,o.lastRowIndex=l,o=WZe(),i+=a,s=l+1,a=0);return r}function WZe(){return{firstRowIndex:null,lastRowIndex:null,rows:[]}}});var YZe=Ae(T$=>{"use strict";var XB=Su().extendFlat;T$.splitToPanels=function(e){var t=[0,0],r=XB({},e,{key:"header",type:"header",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!0,values:e.calcdata.headerCells.values[e.specIndex],rowBlocks:e.calcdata.headerRowBlocks,calcdata:XB({},e.calcdata,{cells:e.calcdata.headerCells})}),n=XB({},e,{key:"cells1",type:"cells",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks}),i=XB({},e,{key:"cells2",type:"cells",page:1,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks});return[n,i,r]};T$.splitToCells=function(e){var t=aJt(e);return(e.values||[]).slice(t[0],t[1]).map(function(r,n){var i=typeof r=="string"&&r.match(/[<$&> ]/)?"_keybuster_"+Math.random():"";return{keyWithinBlock:n+i,key:t[0]+n,column:e,calcdata:e.calcdata,page:e.page,rowBlocks:e.rowBlocks,value:r}})};function aJt(e){var t=e.rowBlocks[e.page],r=t?t.rows[0].rowIndex:0,n=t?r+t.rows.length:0;return[r,n]}});var I$=Ae((f3r,oYe)=>{"use strict";var uu=_$(),Gc=Jl(),A$=ei(),oJt=A$.numberFormat,pc=Jy(),S$=Mu(),sJt=Xf(),lJt=ei().raiseToTop,om=ei().strTranslate,uJt=ei().cancelTransition,fJt=ZZe(),rYe=YZe(),KZe=jl();oYe.exports=function(t,r){var n=!t._context.staticPlot,i=t._fullLayout._paper.selectAll("."+uu.cn.table).data(r.map(function(k){var E=pc.unwrap(k),A=E.trace;return fJt(t,A)}),pc.keyFun);i.exit().remove(),i.enter().append("g").classed(uu.cn.table,!0).attr("overflow","visible").style("box-sizing","content-box").style("position","absolute").style("left",0).style("overflow","visible").style("shape-rendering","crispEdges").style("pointer-events","all"),i.attr("width",function(k){return k.width+k.size.l+k.size.r}).attr("height",function(k){return k.height+k.size.t+k.size.b}).attr("transform",function(k){return om(k.translateX,k.translateY)});var a=i.selectAll("."+uu.cn.tableControlView).data(pc.repeat,pc.keyFun),o=a.enter().append("g").classed(uu.cn.tableControlView,!0).style("box-sizing","content-box");if(n){var s="onwheel"in document?"wheel":"mousewheel";o.on("mousemove",function(k){a.filter(function(E){return k===E}).call(nC,t)}).on(s,function(k){if(!k.scrollbarState.wheeling){k.scrollbarState.wheeling=!0;var E=k.scrollY+Gc.event.deltaY,A=YB(t,a,null,E)(k);A||(Gc.event.stopPropagation(),Gc.event.preventDefault()),k.scrollbarState.wheeling=!1}}).call(nC,t,!0)}a.attr("transform",function(k){return om(k.size.l,k.size.t)});var u=a.selectAll("."+uu.cn.scrollBackground).data(pc.repeat,pc.keyFun);u.enter().append("rect").classed(uu.cn.scrollBackground,!0).attr("fill","none"),u.attr("width",function(k){return k.width}).attr("height",function(k){return k.height}),a.each(function(k){S$.setClipUrl(Gc.select(this),JZe(t,k),t)});var l=a.selectAll("."+uu.cn.yColumn).data(function(k){return k.columns},pc.keyFun);l.enter().append("g").classed(uu.cn.yColumn,!0),l.exit().remove(),l.attr("transform",function(k){return om(k.x,0)}),n&&l.call(Gc.behavior.drag().origin(function(k){var E=Gc.select(this);return eYe(E,k,-uu.uplift),lJt(this),k.calcdata.columnDragInProgress=!0,nC(a.filter(function(A){return k.calcdata.key===A.key}),t),k}).on("drag",function(k){var E=Gc.select(this),A=function(C){return(k===C?Gc.event.x:C.x)+C.columnWidth/2};k.x=Math.max(-uu.overdrag,Math.min(k.calcdata.width+uu.overdrag-k.columnWidth,Gc.event.x));var L=iYe(l).filter(function(C){return C.calcdata.key===k.calcdata.key}),x=L.sort(function(C,M){return A(C)-A(M)});x.forEach(function(C,M){C.xIndex=M,C.x=k===C?C.x:C.xScale(C)}),l.filter(function(C){return k!==C}).transition().ease(uu.transitionEase).duration(uu.transitionDuration).attr("transform",function(C){return om(C.x,0)}),E.call(uJt).attr("transform",om(k.x,-uu.uplift))}).on("dragend",function(k){var E=Gc.select(this),A=k.calcdata;k.x=k.xScale(k),k.calcdata.columnDragInProgress=!1,eYe(E,k,0),xJt(t,A,A.columns.map(function(L){return L.xIndex}))})),l.each(function(k){S$.setClipUrl(Gc.select(this),$Ze(t,k),t)});var f=l.selectAll("."+uu.cn.columnBlock).data(rYe.splitToPanels,pc.keyFun);f.enter().append("g").classed(uu.cn.columnBlock,!0).attr("id",function(k){return k.key}),f.style("cursor",function(k){return k.dragHandle?"ew-resize":k.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"});var c=f.filter(bJt),h=f.filter(L$);n&&h.call(Gc.behavior.drag().origin(function(k){return Gc.event.stopPropagation(),k}).on("drag",YB(t,a,-1)).on("dragend",function(){})),M$(t,a,c,f),M$(t,a,h,f);var d=a.selectAll("."+uu.cn.scrollAreaClip).data(pc.repeat,pc.keyFun);d.enter().append("clipPath").classed(uu.cn.scrollAreaClip,!0).attr("id",function(k){return JZe(t,k)});var p=d.selectAll("."+uu.cn.scrollAreaClipRect).data(pc.repeat,pc.keyFun);p.enter().append("rect").classed(uu.cn.scrollAreaClipRect,!0).attr("x",-uu.overdrag).attr("y",-uu.uplift).attr("fill","none"),p.attr("width",function(k){return k.width+2*uu.overdrag}).attr("height",function(k){return k.height+uu.uplift});var _=l.selectAll("."+uu.cn.columnBoundary).data(pc.repeat,pc.keyFun);_.enter().append("g").classed(uu.cn.columnBoundary,!0);var b=l.selectAll("."+uu.cn.columnBoundaryClippath).data(pc.repeat,pc.keyFun);b.enter().append("clipPath").classed(uu.cn.columnBoundaryClippath,!0),b.attr("id",function(k){return $Ze(t,k)});var v=b.selectAll("."+uu.cn.columnBoundaryRect).data(pc.repeat,pc.keyFun);v.enter().append("rect").classed(uu.cn.columnBoundaryRect,!0).attr("fill","none"),v.attr("width",function(k){return k.columnWidth+2*ZB(k)}).attr("height",function(k){return k.calcdata.height+2*ZB(k)+uu.uplift}).attr("x",function(k){return-ZB(k)}).attr("y",function(k){return-ZB(k)}),P$(null,h,a)};function ZB(e){return Math.ceil(e.calcdata.maxLineWidth/2)}function JZe(e,t){return"clip"+e._fullLayout._uid+"_scrollAreaBottomClip_"+t.key}function $Ze(e,t){return"clip"+e._fullLayout._uid+"_columnBoundaryClippath_"+t.calcdata.key+"_"+t.specIndex}function iYe(e){return[].concat.apply([],e.map(function(t){return t})).map(function(t){return t.__data__})}function nC(e,t,r){function n(l){var f=l.rowBlocks;return k$(f,f.length-1)+(f.length?KB(f[f.length-1],1/0):1)}var i=e.selectAll("."+uu.cn.scrollbarKit).data(pc.repeat,pc.keyFun);i.enter().append("g").classed(uu.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),i.each(function(l){var f=l.scrollbarState;f.totalHeight=n(l),f.scrollableAreaHeight=l.groupHeight-E$(l),f.currentlyVisibleHeight=Math.min(f.totalHeight,f.scrollableAreaHeight),f.ratio=f.currentlyVisibleHeight/f.totalHeight,f.barLength=Math.max(f.ratio*f.currentlyVisibleHeight,uu.goldenRatio*uu.scrollbarWidth),f.barWiggleRoom=f.currentlyVisibleHeight-f.barLength,f.wiggleRoom=Math.max(0,f.totalHeight-f.scrollableAreaHeight),f.topY=f.barWiggleRoom===0?0:l.scrollY/f.wiggleRoom*f.barWiggleRoom,f.bottomY=f.topY+f.barLength,f.dragMultiplier=f.wiggleRoom/f.barWiggleRoom}).attr("transform",function(l){var f=l.width+uu.scrollbarWidth/2+uu.scrollbarOffset;return om(f,E$(l))});var a=i.selectAll("."+uu.cn.scrollbar).data(pc.repeat,pc.keyFun);a.enter().append("g").classed(uu.cn.scrollbar,!0);var o=a.selectAll("."+uu.cn.scrollbarSlider).data(pc.repeat,pc.keyFun);o.enter().append("g").classed(uu.cn.scrollbarSlider,!0),o.attr("transform",function(l){return om(0,l.scrollbarState.topY||0)});var s=o.selectAll("."+uu.cn.scrollbarGlyph).data(pc.repeat,pc.keyFun);s.enter().append("line").classed(uu.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",uu.scrollbarWidth).attr("stroke-linecap","round").attr("y1",uu.scrollbarWidth/2),s.attr("y2",function(l){return l.scrollbarState.barLength-uu.scrollbarWidth/2}).attr("stroke-opacity",function(l){return l.columnDragInProgress||!l.scrollbarState.barWiggleRoom||r?0:.4}),s.transition().delay(0).duration(0),s.transition().delay(uu.scrollbarHideDelay).duration(uu.scrollbarHideDuration).attr("stroke-opacity",0);var u=a.selectAll("."+uu.cn.scrollbarCaptureZone).data(pc.repeat,pc.keyFun);u.enter().append("line").classed(uu.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",uu.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",function(l){var f=Gc.event.y,c=this.getBoundingClientRect(),h=l.scrollbarState,d=f-c.top,p=Gc.scale.linear().domain([0,h.scrollableAreaHeight]).range([0,h.totalHeight]).clamp(!0);h.topY<=d&&d<=h.bottomY||YB(t,e,null,p(d-h.barLength/2))(l)}).call(Gc.behavior.drag().origin(function(l){return Gc.event.stopPropagation(),l.scrollbarState.scrollbarScrollInProgress=!0,l}).on("drag",YB(t,e)).on("dragend",function(){})),u.attr("y2",function(l){return l.scrollbarState.scrollableAreaHeight}),t._context.staticPlot&&(s.remove(),u.remove())}function M$(e,t,r,n){var i=cJt(r),a=hJt(i);mJt(a);var o=dJt(a);gJt(o);var s=vJt(a),u=pJt(s);yJt(u),nYe(u,t,n,e),z$(a)}function cJt(e){var t=e.selectAll("."+uu.cn.columnCells).data(pc.repeat,pc.keyFun);return t.enter().append("g").classed(uu.cn.columnCells,!0),t.exit().remove(),t}function hJt(e){var t=e.selectAll("."+uu.cn.columnCell).data(rYe.splitToCells,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(uu.cn.columnCell,!0),t.exit().remove(),t}function dJt(e){var t=e.selectAll("."+uu.cn.cellRect).data(pc.repeat,function(r){return r.keyWithinBlock});return t.enter().append("rect").classed(uu.cn.cellRect,!0),t}function pJt(e){var t=e.selectAll("."+uu.cn.cellText).data(pc.repeat,function(r){return r.keyWithinBlock});return t.enter().append("text").classed(uu.cn.cellText,!0).style("cursor",function(){return"auto"}).on("mousedown",function(){Gc.event.stopPropagation()}),t}function vJt(e){var t=e.selectAll("."+uu.cn.cellTextHolder).data(pc.repeat,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(uu.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),t}function mJt(e){e.each(function(t,r){var n=t.calcdata.cells.font,i=t.column.specIndex,a={size:Yp(n.size,i,r),color:Yp(n.color,i,r),family:Yp(n.family,i,r),weight:Yp(n.weight,i,r),style:Yp(n.style,i,r),variant:Yp(n.variant,i,r),textcase:Yp(n.textcase,i,r),lineposition:Yp(n.lineposition,i,r),shadow:Yp(n.shadow,i,r)};t.rowNumber=t.key,t.align=Yp(t.calcdata.cells.align,i,r),t.cellBorderWidth=Yp(t.calcdata.cells.line.width,i,r),t.font=a})}function yJt(e){e.each(function(t){S$.font(Gc.select(this),t.font)})}function gJt(e){e.attr("width",function(t){return t.column.columnWidth}).attr("stroke-width",function(t){return t.cellBorderWidth}).each(function(t){var r=Gc.select(this);KZe.stroke(r,Yp(t.calcdata.cells.line.color,t.column.specIndex,t.rowNumber)),KZe.fill(r,Yp(t.calcdata.cells.fill.color,t.column.specIndex,t.rowNumber))})}function nYe(e,t,r,n){e.text(function(i){var a=i.column.specIndex,o=i.rowNumber,s=i.value,u=typeof s=="string",l=u&&s.match(/
/i),f=!u||l;i.mayHaveMarkup=u&&s.match(/[<&>]/);var c=_Jt(s);i.latex=c;var h=c?"":Yp(i.calcdata.cells.prefix,a,o)||"",d=c?"":Yp(i.calcdata.cells.suffix,a,o)||"",p=c?null:Yp(i.calcdata.cells.format,a,o)||null,_=h+(p?oJt(p)(i.value):i.value)+d,b;i.wrappingNeeded=!i.wrapped&&!f&&!c&&(b=QZe(_)),i.cellHeightMayIncrease=l||c||i.mayHaveMarkup||(b===void 0?QZe(_):b),i.needsConvertToTspans=i.mayHaveMarkup||i.wrappingNeeded||i.latex;var v;if(i.wrappingNeeded){var k=uu.wrapSplitCharacter===" "?_.replace(/i&&n.push(a),i+=u}return n}function P$(e,t,r){var n=iYe(t)[0];if(n!==void 0){var i=n.rowBlocks,a=n.calcdata,o=k$(i,i.length),s=n.calcdata.groupHeight-E$(n),u=a.scrollY=Math.max(0,Math.min(o-s,a.scrollY)),l=wJt(i,u,s);l.length===1&&(l[0]===i.length-1?l.unshift(l[0]-1):l.push(l[0]+1)),l[0]%2&&l.reverse(),t.each(function(f,c){f.page=l[c],f.scrollY=u}),t.attr("transform",function(f){var c=k$(f.rowBlocks,f.page)-f.scrollY;return om(0,c)}),e&&(tYe(e,r,t,l,n.prevPages,n,0),tYe(e,r,t,l,n.prevPages,n,1),nC(r,e))}}function YB(e,t,r,n){return function(a){var o=a.calcdata?a.calcdata:a,s=t.filter(function(c){return o.key===c.key}),u=r||o.scrollbarState.dragMultiplier,l=o.scrollY;o.scrollY=n===void 0?o.scrollY+u*Gc.event.dy:n;var f=s.selectAll("."+uu.cn.yColumn).selectAll("."+uu.cn.columnBlock).filter(L$);return P$(e,f,s),o.scrollY===l}}function tYe(e,t,r,n,i,a,o){var s=n[o]!==i[o];s&&(clearTimeout(a.currentRepaint[o]),a.currentRepaint[o]=setTimeout(function(){var u=r.filter(function(l,f){return f===o&&n[f]!==i[f]});M$(e,t,u,r),i[o]=n[o]}))}function TJt(e,t,r,n){return function(){var a=Gc.select(t.parentNode);a.each(function(o){var s=o.fragments;a.selectAll("tspan.line").each(function(_,b){s[b].width=this.getComputedTextLength()});var u=s[s.length-1].width,l=s.slice(0,-1),f=[],c,h,d=0,p=o.column.columnWidth-2*uu.cellPad;for(o.value="";l.length;)c=l.shift(),h=c.width+u,d+h>p&&(o.value+=f.join(uu.wrapSpacer)+uu.lineBreaker,f=[],d=0),f.push(c.text),d+=h;d&&(o.value+=f.join(uu.wrapSpacer)),o.wrapped=!0}),a.selectAll("tspan.line").remove(),nYe(a.select("."+uu.cn.cellText),r,e,n),Gc.select(t.parentNode.parentNode).call(z$)}}function AJt(e,t,r,n,i){return function(){if(!i.settledY){var o=Gc.select(t.parentNode),s=C$(i),u=i.key-s.firstRowIndex,l=s.rows[u].rowHeight,f=i.cellHeightMayIncrease?t.parentNode.getBoundingClientRect().height+2*uu.cellPad:l,c=Math.max(f,l),h=c-s.rows[u].rowHeight;h&&(s.rows[u].rowHeight=c,e.selectAll("."+uu.cn.columnCell).call(z$),P$(null,e.filter(L$),0),nC(r,n,!0)),o.attr("transform",function(){var d=this,p=d.parentNode,_=p.getBoundingClientRect(),b=Gc.select(d.parentNode).select("."+uu.cn.cellRect).node().getBoundingClientRect(),v=d.transform.baseVal.consolidate(),k=b.top-_.top+(v?v.matrix.f:uu.cellPad);return om(aYe(i,Gc.select(d.parentNode).select("."+uu.cn.cellTextHolder).node().getBoundingClientRect().width),k)}),i.settledY=!0}}}function aYe(e,t){switch(e.align){case"left":return uu.cellPad;case"right":return e.column.columnWidth-(t||0)-uu.cellPad;case"center":return(e.column.columnWidth-(t||0))/2;default:return uu.cellPad}}function z$(e){e.attr("transform",function(t){var r=t.rowBlocks[0].auxiliaryBlocks.reduce(function(o,s){return o+KB(s,1/0)},0),n=C$(t),i=KB(n,t.key),a=i+r;return om(0,a)}).selectAll("."+uu.cn.cellRect).attr("height",function(t){return MJt(C$(t),t.key).rowHeight})}function k$(e,t){for(var r=0,n=t-1;n>=0;n--)r+=SJt(e[n]);return r}function KB(e,t){for(var r=0,n=0;n{"use strict";var EJt=Rd().getModuleCalcData,kJt=I$(),JB="table";$B.name=JB;$B.plot=function(e){var t=EJt(e.calcdata,JB)[0];t.length&&kJt(e,t)};$B.clean=function(e,t,r,n){var i=n._has&&n._has(JB),a=t._has&&t._has(JB);i&&!a&&n._paperdiv.selectAll(".table").remove()}});var uYe=Ae((h3r,lYe)=>{"use strict";lYe.exports={attributes:y$(),supplyDefaults:FZe(),calc:OZe(),plot:I$(),moduleType:"trace",name:"table",basePlotModule:sYe(),categories:["noOpacity"],meta:{}}});var cYe=Ae((d3r,fYe)=>{"use strict";fYe.exports=uYe()});var mYe=Ae((p3r,vYe)=>{"use strict";var hYe=gc(),dYe=Fh(),R$=Dd(),CJt=jc().descriptionWithDates,LJt=Sc().overrideAll,pYe=Id().dash,D$=Su().extendFlat;vYe.exports={color:{valType:"color",editType:"calc"},smoothing:{valType:"number",dflt:1,min:0,max:1.3,editType:"calc"},title:{text:{valType:"string",dflt:"",editType:"calc"},font:hYe({editType:"calc"}),offset:{valType:"number",dflt:10,editType:"calc"},editType:"calc"},type:{valType:"enumerated",values:["-","linear","date","category"],dflt:"-",editType:"calc"},autotypenumbers:R$.autotypenumbers,autorange:{valType:"enumerated",values:[!0,!1,"reversed"],dflt:!0,editType:"calc"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"calc"},range:{valType:"info_array",editType:"calc",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}]},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},cheatertype:{valType:"enumerated",values:["index","value"],dflt:"value",editType:"calc"},tickmode:{valType:"enumerated",values:["linear","array"],dflt:"array",editType:"calc"},nticks:{valType:"integer",min:0,dflt:0,editType:"calc"},tickvals:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},showticklabels:{valType:"enumerated",values:["start","end","both","none"],dflt:"start",editType:"calc"},labelalias:D$({},R$.labelalias,{editType:"calc"}),tickfont:hYe({editType:"calc"}),tickangle:{valType:"angle",dflt:"auto",editType:"calc"},tickprefix:{valType:"string",dflt:"",editType:"calc"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},ticksuffix:{valType:"string",dflt:"",editType:"calc"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"calc"},minexponent:{valType:"number",dflt:3,min:0,editType:"calc"},separatethousands:{valType:"boolean",dflt:!1,editType:"calc"},tickformat:{valType:"string",dflt:"",editType:"calc",description:CJt("tick label")},tickformatstops:LJt(R$.tickformatstops,"calc","from-root"),categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},labelpadding:{valType:"integer",dflt:10,editType:"calc"},labelprefix:{valType:"string",editType:"calc"},labelsuffix:{valType:"string",dflt:"",editType:"calc"},showline:{valType:"boolean",dflt:!1,editType:"calc"},linecolor:{valType:"color",dflt:dYe.defaultLine,editType:"calc"},linewidth:{valType:"number",min:0,dflt:1,editType:"calc"},gridcolor:{valType:"color",editType:"calc"},gridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},griddash:D$({},pYe,{editType:"calc"}),showgrid:{valType:"boolean",dflt:!0,editType:"calc"},minorgridcount:{valType:"integer",min:0,dflt:0,editType:"calc"},minorgridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},minorgriddash:D$({},pYe,{editType:"calc"}),minorgridcolor:{valType:"color",dflt:dYe.lightLine,editType:"calc"},startline:{valType:"boolean",editType:"calc"},startlinecolor:{valType:"color",editType:"calc"},startlinewidth:{valType:"number",dflt:1,editType:"calc"},endline:{valType:"boolean",editType:"calc"},endlinewidth:{valType:"number",dflt:1,editType:"calc"},endlinecolor:{valType:"color",editType:"calc"},tick0:{valType:"number",min:0,dflt:0,editType:"calc"},dtick:{valType:"number",min:0,dflt:1,editType:"calc"},arraytick0:{valType:"integer",min:0,dflt:0,editType:"calc"},arraydtick:{valType:"integer",min:1,dflt:1,editType:"calc"},editType:"calc"}});var eO=Ae((v3r,_Ye)=>{"use strict";var PJt=gc(),yYe=mYe(),gYe=Fh(),QB=PJt({editType:"calc"}),zJt=Zc().zorder;QB.family.dflt='"Open Sans", verdana, arial, sans-serif';QB.size.dflt=12;QB.color.dflt=gYe.defaultLine;_Ye.exports={carpet:{valType:"string",editType:"calc"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},a:{valType:"data_array",editType:"calc"},a0:{valType:"number",dflt:0,editType:"calc"},da:{valType:"number",dflt:1,editType:"calc"},b:{valType:"data_array",editType:"calc"},b0:{valType:"number",dflt:0,editType:"calc"},db:{valType:"number",dflt:1,editType:"calc"},cheaterslope:{valType:"number",dflt:1,editType:"calc"},aaxis:yYe,baxis:yYe,font:QB,color:{valType:"color",dflt:gYe.defaultLine,editType:"plot"},zorder:zJt}});var wYe=Ae((m3r,bYe)=>{"use strict";var xYe=ei().isArray1D;bYe.exports=function(t,r,n){var i=n("x"),a=i&&i.length,o=n("y"),s=o&&o.length;if(!a&&!s)return!1;if(r._cheater=!i,(!a||xYe(i))&&(!s||xYe(o))){var u=a?i.length:1/0;s&&(u=Math.min(u,o.length)),r.a&&r.a.length&&(u=Math.min(u,r.a.length)),r.b&&r.b.length&&(u=Math.min(u,r.b.length)),r._length=u}else r._length=null;return!0}});var SYe=Ae((y3r,AYe)=>{"use strict";var IJt=eO(),TYe=jl().addOpacity,RJt=$l(),aC=ei(),DJt=bb(),FJt=e_(),BJt=t_(),OJt=oI(),qJt=gy(),NJt=I3();AYe.exports=function(t,r,n){var i=n.letter,a=n.font||{},o=IJt[i+"axis"];function s(m,P){return aC.coerce(t,r,o,m,P)}function u(m,P){return aC.coerce2(t,r,o,m,P)}n.name&&(r._name=n.name,r._id=n.name),s("autotypenumbers",n.autotypenumbersDflt);var l=s("type");if(l==="-"&&(n.data&&UJt(r,n.data),r.type==="-"?r.type="linear":l=t.type=r.type),s("smoothing"),s("cheatertype"),s("showticklabels"),s("labelprefix",i+" = "),s("labelsuffix"),s("showtickprefix"),s("showticksuffix"),s("separatethousands"),s("tickformat"),s("exponentformat"),s("minexponent"),s("showexponent"),s("categoryorder"),s("tickmode"),s("tickvals"),s("ticktext"),s("tick0"),s("dtick"),r.tickmode==="array"&&(s("arraytick0"),s("arraydtick")),s("labelpadding"),r._hovertitle=i,l==="date"){var f=RJt.getComponentMethod("calendars","handleDefaults");f(t,r,"calendar",n.calendar)}qJt(r,n.fullLayout),r.c2p=aC.identity;var c=s("color",n.dfltColor),h=c===t.color?c:a.color,d=s("title.text");d&&(aC.coerceFont(s,"title.font",a,{overrideDflt:{size:aC.bigFont(a.size),color:h}}),s("title.offset")),s("tickangle");var p=s("autorange",!r.isValidRange(t.range));p&&s("rangemode"),s("range"),r.cleanRange(),s("fixedrange"),DJt(t,r,s,l),BJt(t,r,s,l,n),FJt(t,r,s,l,n),OJt(t,r,s,{data:n.data,dataAttr:i});var _=u("gridcolor",TYe(c,.3)),b=u("gridwidth"),v=u("griddash"),k=s("showgrid");k||(delete r.gridcolor,delete r.gridwidth,delete r.griddash);var E=u("startlinecolor",c),A=u("startlinewidth",b),L=s("startline",r.showgrid||!!E||!!A);L||(delete r.startlinecolor,delete r.startlinewidth);var x=u("endlinecolor",c),C=u("endlinewidth",b),M=s("endline",r.showgrid||!!x||!!C);return M||(delete r.endlinecolor,delete r.endlinewidth),k?(s("minorgridcount"),s("minorgridwidth",b),s("minorgriddash",v),s("minorgridcolor",TYe(_,.06)),r.minorgridcount||(delete r.minorgridwidth,delete r.minorgriddash,delete r.minorgridcolor)):(delete r.gridcolor,delete r.gridwidth,delete r.griddash),r.showticklabels==="none"&&(delete r.tickfont,delete r.tickangle,delete r.showexponent,delete r.exponentformat,delete r.minexponent,delete r.tickformat,delete r.showticksuffix,delete r.showtickprefix),r.showticksuffix||delete r.ticksuffix,r.showtickprefix||delete r.tickprefix,s("tickmode"),r};function UJt(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i=n+"calendar",a=e[i];e.type=NJt(t,a,{autotypenumbers:e.autotypenumbers})}}});var EYe=Ae((g3r,MYe)=>{"use strict";var VJt=SYe(),GJt=Lf();MYe.exports=function(t,r,n,i,a){var o=i("a");o||(i("da"),i("a0"));var s=i("b");s||(i("db"),i("b0")),HJt(t,r,n,a)};function HJt(e,t,r,n){var i=["aaxis","baxis"];i.forEach(function(a){var o=a.charAt(0),s=e[a]||{},u=GJt.newContainer(t,a),l={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,tickfont:"x",id:o+"axis",letter:o,font:t.font,name:a,data:e[o],calendar:t.calendar,dfltColor:n,bgColor:r.paper_bgcolor,autotypenumbersDflt:r.autotypenumbers,fullLayout:r};VJt(s,u,l),u._categories=u._categories||[],!e[a]&&s.type!=="-"&&(e[a]={type:s.type})})}});var LYe=Ae((_3r,CYe)=>{"use strict";var kYe=ei(),WJt=wYe(),jJt=EYe(),XJt=eO(),ZJt=Fh();CYe.exports=function(t,r,n,i){function a(u,l){return kYe.coerce(t,r,XJt,u,l)}r._clipPathId="clip"+r.uid+"carpet";var o=a("color",ZJt.defaultLine);if(kYe.coerceFont(a,"font",i.font),a("carpet"),jJt(t,r,i,a,o),!r.a||!r.b){r.visible=!1;return}r.a.length<3&&(r.aaxis.smoothing=0),r.b.length<3&&(r.baxis.smoothing=0);var s=WJt(t,r,a);s||(r.visible=!1),r._cheater&&a("cheaterslope"),a("zorder")}});var F$=Ae((x3r,PYe)=>{"use strict";var YJt=ei().isArrayOrTypedArray;PYe.exports=function(t,r,n){var i;for(YJt(t)?t.length>r.length&&(t=t.slice(0,r.length)):t=[],i=0;i{"use strict";zYe.exports=function(t,r,n){if(t.length===0)return"";var i,a=[],o=n?3:1;for(i=0;i{"use strict";IYe.exports=function(t,r,n,i,a,o){var s=a[0]*t.dpdx(r),u=a[1]*t.dpdy(n),l=1,f=1;if(o){var c=Math.sqrt(a[0]*a[0]+a[1]*a[1]),h=Math.sqrt(o[0]*o[0]+o[1]*o[1]),d=(a[0]*o[0]+a[1]*o[1])/c/h;f=Math.max(0,d)}var p=Math.atan2(u,s)*180/Math.PI;return p<-90?(p+=180,l=-l):p>90&&(p-=180,l=-l),{angle:p,flip:l,p:t.c2p(i,r,n),offsetMultplier:f}}});var VYe=Ae((T3r,UYe)=>{"use strict";var nO=Jl(),tO=Mu(),rO=F$(),BYe=B$(),oC=RYe(),O$=Xf(),Uv=ei(),OYe=Uv.strRotate,iO=Uv.strTranslate,qYe=td();UYe.exports=function(t,r,n,i){var a=t._context.staticPlot,o=r.xaxis,s=r.yaxis,u=t._fullLayout,l=u._clips;Uv.makeTraceGroups(i,n,"trace").each(function(f){var c=nO.select(this),h=f[0],d=h.trace,p=d.aaxis,_=d.baxis,b=Uv.ensureSingle(c,"g","minorlayer"),v=Uv.ensureSingle(c,"g","majorlayer"),k=Uv.ensureSingle(c,"g","boundarylayer"),E=Uv.ensureSingle(c,"g","labellayer");c.style("opacity",d.opacity),qS(o,s,v,p,"a",p._gridlines,!0,a),qS(o,s,v,_,"b",_._gridlines,!0,a),qS(o,s,b,p,"a",p._minorgridlines,!0,a),qS(o,s,b,_,"b",_._minorgridlines,!0,a),qS(o,s,k,p,"a-boundary",p._boundarylines,a),qS(o,s,k,_,"b-boundary",_._boundarylines,a);var A=DYe(t,o,s,d,h,E,p._labels,"a-label"),L=DYe(t,o,s,d,h,E,_._labels,"b-label");JJt(t,E,d,h,o,s,A,L),KJt(d,h,l,o,s)})};function KJt(e,t,r,n,i){var a,o,s,u,l=r.select("#"+e._clipPathId);l.size()||(l=r.append("clipPath").classed("carpetclip",!0));var f=Uv.ensureSingle(l,"path","carpetboundary"),c=t.clipsegments,h=[];for(u=0;u0?"start":"end","data-notex":1}).call(tO.font,c.font).text(c.text).call(O$.convertToTspans,e),v=tO.bBox(this);b.attr("transform",iO(d.p[0],d.p[1])+OYe(d.angle)+iO(c.axis.labelpadding*_,v.height*.3)),l=Math.max(l,v.width+c.axis.labelpadding)}),u.exit().remove(),f.maxExtent=l,f}function JJt(e,t,r,n,i,a,o,s){var u,l,f,c,h=Uv.aggNums(Math.min,null,r.a),d=Uv.aggNums(Math.max,null,r.a),p=Uv.aggNums(Math.min,null,r.b),_=Uv.aggNums(Math.max,null,r.b);u=.5*(h+d),l=p,f=r.ab2xy(u,l,!0),c=r.dxyda_rough(u,l),o.angle===void 0&&Uv.extendFlat(o,oC(r,i,a,f,r.dxydb_rough(u,l))),FYe(e,t,r,n,f,c,r.aaxis,i,a,o,"a-title"),u=h,l=.5*(p+_),f=r.ab2xy(u,l,!0),c=r.dxydb_rough(u,l),s.angle===void 0&&Uv.extendFlat(s,oC(r,i,a,f,r.dxyda_rough(u,l))),FYe(e,t,r,n,f,c,r.baxis,i,a,s,"b-title")}var NYe=qYe.LINE_SPACING,$Jt=(1-qYe.MID_SHIFT)/NYe+1;function FYe(e,t,r,n,i,a,o,s,u,l,f){var c=[];o.title.text&&c.push(o.title.text);var h=t.selectAll("text."+f).data(c),d=l.maxExtent;h.enter().append("text").classed(f,!0),h.each(function(){var p=oC(r,s,u,i,a);["start","both"].indexOf(o.showticklabels)===-1&&(d=0);var _=o.title.font.size;d+=_+o.title.offset;var b=l.angle+(l.flip<0?180:0),v=(b-p.angle+450)%360,k=v>90&&v<270,E=nO.select(this);E.text(o.title.text).call(O$.convertToTspans,e),k&&(d=(-O$.lineCount(E)+$Jt)*NYe*_-d),E.attr("transform",iO(p.p[0],p.p[1])+OYe(p.angle)+iO(0,d)).attr("text-anchor","middle").call(tO.font,o.title.font)}),h.exit().remove()}});var HYe=Ae((A3r,GYe)=>{"use strict";var aO=ei().isArrayOrTypedArray;GYe.exports=function(e,t,r){var n,i,a,o,s,u,l=[],f=aO(e)?e.length:e,c=aO(t)?t.length:t,h=aO(e)?e:null,d=aO(t)?t:null;h&&(a=(h.length-1)/(h[h.length-1]-h[0])/(f-1)),d&&(o=(d.length-1)/(d[d.length-1]-d[0])/(c-1));var p,_=1/0,b=-1/0;for(i=0;i{"use strict";var WYe=ei().isArrayOrTypedArray;XYe.exports=function(e){return jYe(e,0)};function jYe(e,t){if(!WYe(e)||t>=10)return null;for(var r=1/0,n=-1/0,i=e.length,a=0;a{"use strict";var QJt=wu(),kx=Su().extendFlat;YYe.exports=function(t,r,n){var i,a,o,s,u,l,f,c,h,d,p,_,b,v,k=t["_"+r],E=t[r+"axis"],A=E._gridlines=[],L=E._minorgridlines=[],x=E._boundarylines=[],C=t["_"+n],M=t[n+"axis"];E.tickmode==="array"&&(E.tickvals=k.slice());var m=t._xctrl,P=t._yctrl,T=m[0].length,B=m.length,F=t._a.length,U=t._b.length;QJt.prepTicks(E),E.tickmode==="array"&&delete E.tickvals;var G=E.smoothing?3:1;function j(N){var H,re,ae,be,ze,Ce,de,te,ke,Ee,Me,Ue,De=[],ye=[],qe={};if(r==="b")for(re=t.b2j(N),ae=Math.floor(Math.max(0,Math.min(U-2,re))),be=re-ae,qe.length=U,qe.crossLength=F,qe.xy=function(ce){return t.evalxy([],ce,re)},qe.dxy=function(ce,Je){return t.dxydi([],ce,ae,Je,be)},H=0;H0&&(ke=t.dxydi([],H-1,ae,0,be),De.push(ze[0]+ke[0]/3),ye.push(ze[1]+ke[1]/3),Ee=t.dxydi([],H-1,ae,1,be),De.push(te[0]-Ee[0]/3),ye.push(te[1]-Ee[1]/3)),De.push(te[0]),ye.push(te[1]),ze=te;else for(H=t.a2i(N),Ce=Math.floor(Math.max(0,Math.min(F-2,H))),de=H-Ce,qe.length=F,qe.crossLength=U,qe.xy=function(ce){return t.evalxy([],H,ce)},qe.dxy=function(ce,Je){return t.dxydj([],Ce,ce,de,Je)},re=0;re0&&(Me=t.dxydj([],Ce,re-1,de,0),De.push(ze[0]+Me[0]/3),ye.push(ze[1]+Me[1]/3),Ue=t.dxydj([],Ce,re-1,de,1),De.push(te[0]-Ue[0]/3),ye.push(te[1]-Ue[1]/3)),De.push(te[0]),ye.push(te[1]),ze=te;return qe.axisLetter=r,qe.axis=E,qe.crossAxis=M,qe.value=N,qe.constvar=n,qe.index=c,qe.x=De,qe.y=ye,qe.smoothing=M.smoothing,qe}function W(N){var H,re,ae,be,ze,Ce=[],de=[],te={};if(te.length=k.length,te.crossLength=C.length,r==="b")for(ae=Math.max(0,Math.min(U-2,N)),ze=Math.min(1,Math.max(0,N-ae)),te.xy=function(ke){return t.evalxy([],ke,N)},te.dxy=function(ke,Ee){return t.dxydi([],ke,ae,Ee,ze)},H=0;Hk.length-1)&&A.push(kx(W(a),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(c=l;ck.length-1)&&!(p<0||p>k.length-1))for(_=k[o],b=k[p],i=0;ik[k.length-1])&&L.push(kx(j(d),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash})));E.startline&&x.push(kx(W(0),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&x.push(kx(W(k.length-1),{color:E.endlinecolor,width:E.endlinewidth}))}else{for(s=5e-15,u=[Math.floor((k[k.length-1]-E.tick0)/E.dtick*(1+s)),Math.ceil((k[0]-E.tick0)/E.dtick/(1+s))].sort(function(N,H){return N-H}),l=u[0],f=u[1],c=l;c<=f;c++)h=E.tick0+E.dtick*c,A.push(kx(j(h),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(c=l-1;ck[k.length-1])&&L.push(kx(j(d),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash}));E.startline&&x.push(kx(j(k[0]),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&x.push(kx(j(k[k.length-1]),{color:E.endlinecolor,width:E.endlinewidth}))}}});var eKe=Ae((E3r,QYe)=>{"use strict";var JYe=wu(),$Ye=Su().extendFlat;QYe.exports=function(t,r){var n,i,a,o,s,u=r._labels=[],l=r._gridlines;for(n=0;n{"use strict";tKe.exports=function(t,r,n,i){var a,o,s,u=[],l=!!n.smoothing,f=!!i.smoothing,c=t[0].length-1,h=t.length-1;for(a=0,o=[],s=[];a<=c;a++)o[a]=t[0][a],s[a]=r[0][a];for(u.push({x:o,y:s,bicubic:l}),a=0,o=[],s=[];a<=h;a++)o[a]=t[a][c],s[a]=r[a][c];for(u.push({x:o,y:s,bicubic:f}),a=c,o=[],s=[];a>=0;a--)o[c-a]=t[h][a],s[c-a]=r[h][a];for(u.push({x:o,y:s,bicubic:l}),a=h,o=[],s=[];a>=0;a--)o[h-a]=t[a][0],s[h-a]=r[a][0];return u.push({x:o,y:s,bicubic:f}),u}});var nKe=Ae((C3r,iKe)=>{"use strict";var e$t=ei();iKe.exports=function(t,r,n){var i,a,o,s=[],u=[],l=t[0].length,f=t.length;function c(ae,be){var ze=0,Ce,de=0;return ae>0&&(Ce=t[be][ae-1])!==void 0&&(de++,ze+=Ce),ae0&&(Ce=t[be-1][ae])!==void 0&&(de++,ze+=Ce),be0&&a0&&iM);return e$t.log("Smoother converged to",m,"after",T,"iterations"),t}});var oKe=Ae((L3r,aKe)=>{"use strict";aKe.exports={RELATIVE_CULL_TOLERANCE:1e-6}});var uKe=Ae((P3r,lKe)=>{"use strict";var sKe=.5;lKe.exports=function(t,r,n,i){var a=t[0]-r[0],o=t[1]-r[1],s=n[0]-r[0],u=n[1]-r[1],l=Math.pow(a*a+o*o,sKe/2),f=Math.pow(s*s+u*u,sKe/2),c=(f*f*a-l*l*s)*i,h=(f*f*o-l*l*u)*i,d=f*(l+f)*3,p=l*(l+f)*3;return[[r[0]+(d&&c/d),r[1]+(d&&h/d)],[r[0]-(p&&c/p),r[1]-(p&&h/p)]]}});var cKe=Ae((z3r,fKe)=>{"use strict";var q$=uKe(),oO=ei().ensureArray;function NS(e,t,r){var n=-.5*r[0]+1.5*t[0],i=-.5*r[1]+1.5*t[1];return[(2*n+e[0])/3,(2*i+e[1])/3]}fKe.exports=function(t,r,n,i,a,o){var s,u,l,f,c,h,d,p,_,b,v=n[0].length,k=n.length,E=a?3*v-2:v,A=o?3*k-2:k;for(t=oO(t,A),r=oO(r,A),l=0;l{"use strict";hKe.exports=function(e,t,r,n,i){var a=t-2,o=r-2;return n&&i?function(s,u,l){s||(s=[]);var f,c,h,d,p,_,b=Math.max(0,Math.min(Math.floor(u),a)),v=Math.max(0,Math.min(Math.floor(l),o)),k=Math.max(0,Math.min(1,u-b)),E=Math.max(0,Math.min(1,l-v));b*=3,v*=3;var A=k*k,L=A*k,x=1-k,C=x*x,M=C*x,m=E*E,P=m*E,T=1-E,B=T*T,F=B*T;for(_=0;_{"use strict";pKe.exports=function(e,t,r){return t&&r?function(n,i,a,o,s){n||(n=[]);var u,l,f,c,h,d;i*=3,a*=3;var p=o*o,_=1-o,b=_*_,v=_*o*2,k=-3*b,E=3*(b-v),A=3*(v-p),L=3*p,x=s*s,C=x*s,M=1-s,m=M*M,P=m*M;for(d=0;d{"use strict";mKe.exports=function(e,t,r){return t&&r?function(n,i,a,o,s){n||(n=[]);var u,l,f,c,h,d;i*=3,a*=3;var p=o*o,_=p*o,b=1-o,v=b*b,k=v*b,E=s*s,A=1-s,L=A*A,x=A*s*2,C=-3*L,M=3*(L-x),m=3*(x-E),P=3*E;for(d=0;d{"use strict";var gKe=oKe(),_Ke=IL().findBin,t$t=cKe(),r$t=dKe(),i$t=vKe(),n$t=yKe();xKe.exports=function(t){var r=t._a,n=t._b,i=r.length,a=n.length,o=t.aaxis,s=t.baxis,u=r[0],l=r[i-1],f=n[0],c=n[a-1],h=r[r.length-1]-r[0],d=n[n.length-1]-n[0],p=h*gKe.RELATIVE_CULL_TOLERANCE,_=d*gKe.RELATIVE_CULL_TOLERANCE;u-=p,l+=p,f-=_,c+=_,t.isVisible=function(b,v){return b>u&&bf&&vl||vc},t.setScale=function(){var b=t._x,v=t._y,k=t$t(t._xctrl,t._yctrl,b,v,o.smoothing,s.smoothing);t._xctrl=k[0],t._yctrl=k[1],t.evalxy=r$t([t._xctrl,t._yctrl],i,a,o.smoothing,s.smoothing),t.dxydi=i$t([t._xctrl,t._yctrl],o.smoothing,s.smoothing),t.dxydj=n$t([t._xctrl,t._yctrl],o.smoothing,s.smoothing)},t.i2a=function(b){var v=Math.max(0,Math.floor(b[0]),i-2),k=b[0]-v;return(1-k)*r[v]+k*r[v+1]},t.j2b=function(b){var v=Math.max(0,Math.floor(b[1]),i-2),k=b[1]-v;return(1-k)*n[v]+k*n[v+1]},t.ij2ab=function(b){return[t.i2a(b[0]),t.j2b(b[1])]},t.a2i=function(b){var v=Math.max(0,Math.min(_Ke(b,r),i-2)),k=r[v],E=r[v+1];return Math.max(0,Math.min(i-1,v+(b-k)/(E-k)))},t.b2j=function(b){var v=Math.max(0,Math.min(_Ke(b,n),a-2)),k=n[v],E=n[v+1];return Math.max(0,Math.min(a-1,v+(b-k)/(E-k)))},t.ab2ij=function(b){return[t.a2i(b[0]),t.b2j(b[1])]},t.i2c=function(b,v){return t.evalxy([],b,v)},t.ab2xy=function(b,v,k){if(!k&&(br[i-1]|vn[a-1]))return[!1,!1];var E=t.a2i(b),A=t.b2j(v),L=t.evalxy([],E,A);if(k){var x=0,C=0,M=[],m,P,T,B;br[i-1]?(m=i-2,P=1,x=(b-r[i-1])/(r[i-1]-r[i-2])):(m=Math.max(0,Math.min(i-2,Math.floor(E))),P=E-m),vn[a-1]?(T=a-2,B=1,C=(v-n[a-1])/(n[a-1]-n[a-2])):(T=Math.max(0,Math.min(a-2,Math.floor(A))),B=A-T),x&&(t.dxydi(M,m,T,P,B),L[0]+=M[0]*x,L[1]+=M[1]*x),C&&(t.dxydj(M,m,T,P,B),L[0]+=M[0]*C,L[1]+=M[1]*C)}return L},t.c2p=function(b,v,k){return[v.c2p(b[0]),k.c2p(b[1])]},t.p2x=function(b,v,k){return[v.p2c(b[0]),k.p2c(b[1])]},t.dadi=function(b){var v=Math.max(0,Math.min(r.length-2,b));return r[v+1]-r[v]},t.dbdj=function(b){var v=Math.max(0,Math.min(n.length-2,b));return n[v+1]-n[v]},t.dxyda=function(b,v,k,E){var A=t.dxydi(null,b,v,k,E),L=t.dadi(b,k);return[A[0]/L,A[1]/L]},t.dxydb=function(b,v,k,E){var A=t.dxydj(null,b,v,k,E),L=t.dbdj(v,E);return[A[0]/L,A[1]/L]},t.dxyda_rough=function(b,v,k){var E=h*(k||.1),A=t.ab2xy(b+E,v,!0),L=t.ab2xy(b-E,v,!0);return[(A[0]-L[0])*.5/E,(A[1]-L[1])*.5/E]},t.dxydb_rough=function(b,v,k){var E=d*(k||.1),A=t.ab2xy(b,v+E,!0),L=t.ab2xy(b,v-E,!0);return[(A[0]-L[0])*.5/E,(A[1]-L[1])*.5/E]},t.dpdx=function(b){return b._m},t.dpdy=function(b){return b._m}}});var CKe=Ae((B3r,kKe)=>{"use strict";var sO=wu(),wKe=ei().isArray1D,a$t=HYe(),TKe=ZYe(),AKe=KYe(),SKe=eKe(),o$t=rKe(),MKe=aR(),EKe=nKe(),s$t=iR(),l$t=bKe();kKe.exports=function(t,r){var n=sO.getFromId(t,r.xaxis),i=sO.getFromId(t,r.yaxis),a=r.aaxis,o=r.baxis,s=r.x,u=r.y,l=[];s&&wKe(s)&&l.push("x"),u&&wKe(u)&&l.push("y"),l.length&&s$t(r,a,o,"a","b",l);var f=r._a=r._a||r.a,c=r._b=r._b||r.b;s=r._x||r.x,u=r._y||r.y;var h={};if(r._cheater){var d=a.cheatertype==="index"?f.length:f,p=o.cheatertype==="index"?c.length:c;s=a$t(d,p,r.cheaterslope)}r._x=s=MKe(s),r._y=u=MKe(u),EKe(s,f,c),EKe(u,f,c),l$t(r),r.setScale();var _=TKe(s),b=TKe(u),v=.5*(_[1]-_[0]),k=.5*(_[1]+_[0]),E=.5*(b[1]-b[0]),A=.5*(b[1]+b[0]),L=1.3;return _=[k-v*L,k+v*L],b=[A-E*L,A+E*L],r._extremes[n._id]=sO.findExtremes(n,_,{padded:!0}),r._extremes[i._id]=sO.findExtremes(i,b,{padded:!0}),AKe(r,"a","b"),AKe(r,"b","a"),SKe(r,a),SKe(r,o),h.clipsegments=o$t(r._xctrl,r._yctrl,a,o),h.x=s,h.y=u,h.a=f,h.b=c,[h]}});var PKe=Ae((O3r,LKe)=>{"use strict";LKe.exports={attributes:eO(),supplyDefaults:LYe(),plot:VYe(),calc:CKe(),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:Ah(),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}});var IKe=Ae((q3r,zKe)=>{"use strict";zKe.exports=PKe()});var N$=Ae((N3r,FKe)=>{"use strict";var u$t=Cm(),u0=Zc(),f$t=Gf(),{hovertemplateAttrs:c$t,texttemplateAttrs:h$t,templatefallbackAttrs:RKe}=Ff(),DKe=nc(),Cx=Su().extendFlat,sm=u0.marker,US=u0.line,d$t=sm.line;FKe.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:Cx({},u0.mode,{dflt:"markers"}),text:Cx({},u0.text,{}),texttemplate:h$t({editType:"plot"},{keys:["a","b","text"]}),texttemplatefallback:RKe({editType:"plot"}),hovertext:Cx({},u0.hovertext,{}),line:{color:US.color,width:US.width,dash:US.dash,backoff:US.backoff,shape:Cx({},US.shape,{values:["linear","spline"]}),smoothing:US.smoothing,editType:"calc"},connectgaps:u0.connectgaps,fill:Cx({},u0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:u$t(),marker:Cx({symbol:sm.symbol,opacity:sm.opacity,maxdisplayed:sm.maxdisplayed,angle:sm.angle,angleref:sm.angleref,standoff:sm.standoff,size:sm.size,sizeref:sm.sizeref,sizemin:sm.sizemin,sizemode:sm.sizemode,line:Cx({width:d$t.width,editType:"calc"},DKe("marker.line")),gradient:sm.gradient,editType:"calc"},DKe("marker")),textfont:u0.textfont,textposition:u0.textposition,selected:u0.selected,unselected:u0.unselected,hoverinfo:Cx({},f$t.hoverinfo,{flags:["a","b","text","name"]}),hoveron:u0.hoveron,hovertemplate:c$t(),hovertemplatefallback:RKe(),zorder:u0.zorder}});var NKe=Ae((U3r,qKe)=>{"use strict";var BKe=ei(),p$t=Sy(),VS=lc(),v$t=$v(),m$t=I0(),OKe=tT(),y$t=R0(),g$t=Im(),_$t=N$();qKe.exports=function(t,r,n,i){function a(h,d){return BKe.coerce(t,r,_$t,h,d)}a("carpet"),r.xaxis="x",r.yaxis="y";var o=a("a"),s=a("b"),u=Math.min(o.length,s.length);if(!u){r.visible=!1;return}r._length=u,a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext");var l=u{"use strict";UKe.exports=function(t,r){var n={},i=r._carpet,a=i.ab2ij([t.a,t.b]),o=Math.floor(a[0]),s=a[0]-o,u=Math.floor(a[1]),l=a[1]-u,f=i.evalxy([],o,u,s,l);return n.yLabel=f[1].toFixed(3),n}});var lO=Ae((G3r,GKe)=>{"use strict";GKe.exports=function(e,t){for(var r=e._fullData.length,n,i=0;i{"use strict";var HKe=ku(),x$t=D0(),b$t=ky(),w$t=F0(),T$t=B0().calcMarkerSize,A$t=lO();WKe.exports=function(t,r){var n=r._carpetTrace=A$t(t,r);if(!(!n||!n.visible||n.visible==="legendonly")){var i;r.xaxis=n.xaxis,r.yaxis=n.yaxis;var a=r._length,o=new Array(a),s,u,l=!1;for(i=0;i{"use strict";var S$t=sT(),XKe=wu(),M$t=Mu();ZKe.exports=function(t,r,n,i){var a,o,s,u=n[0][0].carpet,l=XKe.getFromId(t,u.xaxis||"x"),f=XKe.getFromId(t,u.yaxis||"y"),c={xaxis:l,yaxis:f,plot:r.plot};for(a=0;a{"use strict";var E$t=cT(),k$t=ei().fillText;KKe.exports=function(t,r,n,i){var a=E$t(t,r,n,i);if(!a||a[0].index===!1)return;var o=a[0];if(o.index===void 0){var s=1-o.y0/t.ya._length,u=t.xa._length,l=u*s/2,f=u-l;return o.x0=Math.max(Math.min(o.x0,f),l),o.x1=Math.max(Math.min(o.x1,f),l),a}var c=o.cd[o.index];o.a=c.a,o.b=c.b,o.xLabelVal=void 0,o.yLabelVal=void 0;var h=o.trace,d=h._carpet,p=h._module.formatLabels(c,h);o.yLabel=p.yLabel,delete o.text;var _=[];function b(E,A){var L;E.labelprefix&&E.labelprefix.length>0?L=E.labelprefix.replace(/ = $/,""):L=E._hovertitle,_.push(L+": "+A.toFixed(3)+E.labelsuffix)}if(!h.hovertemplate){var v=c.hi||h.hoverinfo,k=v.split("+");k.indexOf("all")!==-1&&(k=["a","b","text"]),k.indexOf("a")!==-1&&b(d.aaxis,c.a),k.indexOf("b")!==-1&&b(d.baxis,c.b),_.push("y: "+o.yLabel),k.indexOf("text")!==-1&&k$t(c,h,_),o.extraText=_.join("
")}return a}});var QKe=Ae((X3r,$Ke)=>{"use strict";$Ke.exports=function(t,r,n,i,a){var o=i[a];return t.a=o.a,t.b=o.b,t.y=o.y,t}});var tJe=Ae((Z3r,eJe)=>{"use strict";eJe.exports={attributes:N$(),supplyDefaults:NKe(),colorbar:ep(),formatLabels:VKe(),calc:jKe(),plot:YKe(),style:ov().style,styleOnSelect:ov().styleOnSelect,hoverPoints:JKe(),selectPoints:hT(),eventData:QKe(),moduleType:"trace",name:"scattercarpet",basePlotModule:Ah(),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}});var iJe=Ae((Y3r,rJe)=>{"use strict";rJe.exports=tJe()});var U$=Ae((K3r,nJe)=>{"use strict";var lm=PT(),m1=CE(),C$t=nc(),L$t=Su().extendFlat,rg=m1.contours;nJe.exports=L$t({carpet:{valType:"string",editType:"calc"},z:lm.z,a:lm.x,a0:lm.x0,da:lm.dx,b:lm.y,b0:lm.y0,db:lm.dy,text:lm.text,hovertext:lm.hovertext,transpose:lm.transpose,atype:lm.xtype,btype:lm.ytype,fillcolor:m1.fillcolor,autocontour:m1.autocontour,ncontours:m1.ncontours,contours:{type:rg.type,start:rg.start,end:rg.end,size:rg.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:rg.showlines,showlabels:rg.showlabels,labelfont:rg.labelfont,labelformat:rg.labelformat,operation:rg.operation,value:rg.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:m1.line.color,width:m1.line.width,dash:m1.line.dash,smoothing:m1.line.smoothing,editType:"plot"},zorder:m1.zorder},C$t("",{cLetter:"z",autoColorDflt:!1}))});var V$=Ae((J3r,sJe)=>{"use strict";var aJe=ei(),P$t=eR(),oJe=U$(),z$t=FG(),I$t=AR(),R$t=SR();sJe.exports=function(t,r,n,i){function a(l,f){return aJe.coerce(t,r,oJe,l,f)}function o(l){return aJe.coerce2(t,r,oJe,l)}if(a("carpet"),t.a&&t.b){var s=P$t(t,r,a,i,"a","b");if(!s){r.visible=!1;return}a("text");var u=a("contours.type")==="constraint";u?z$t(t,r,a,i,n,{hasHover:!1}):(I$t(t,r,a,o),R$t(t,r,a,i,{hasHover:!1}))}else r._defaultColor=n,r._length=null;a("zorder")}});var cJe=Ae(($3r,fJe)=>{"use strict";var D$t=gp(),lJe=ei(),F$t=iR(),B$t=aR(),O$t=oR(),q$t=sR(),uJe=aG(),N$t=V$(),U$t=lO(),V$t=AG();fJe.exports=function(t,r){var n=r._carpetTrace=U$t(t,r);if(!(!n||!n.visible||n.visible==="legendonly")){if(!r.a||!r.b){var i=t.data[n.index],a=t.data[r.index];a.a||(a.a=i.a),a.b||(a.b=i.b),N$t(a,r,r._defaultColor,t._fullLayout)}var o=G$t(t,r);return V$t(r,r._z),o}};function G$t(e,t){var r=t._carpetTrace,n=r.aaxis,i=r.baxis,a,o,s,u,l,f,c;n._minDtick=0,i._minDtick=0,lJe.isArray1D(t.z)&&F$t(t,n,i,"a","b",["z"]),a=t._a=t._a||t.a,u=t._b=t._b||t.b,a=a?n.makeCalcdata(t,"_a"):[],u=u?i.makeCalcdata(t,"_b"):[],o=t.a0||0,s=t.da||1,l=t.b0||0,f=t.db||1,c=t._z=B$t(t._z||t.z,t.transpose),t._emptypoints=q$t(c),O$t(c,t._emptypoints);var h=lJe.maxRowLength(c),d=t.xtype==="scaled"?"":a,p=uJe(t,d,o,s,h,n),_=t.ytype==="scaled"?"":u,b=uJe(t,_,l,f,c.length,i),v={a:p,b,z:c};return t.contours.type==="levels"&&t.contours.coloring!=="none"&&D$t(e,t,{vals:c,containerStr:"",cLetter:"z"}),[v]}});var dJe=Ae((Q3r,hJe)=>{"use strict";var H$t=ei().isArrayOrTypedArray;hJe.exports=function(e,t,r,n){var i,a,o,s,u,l,f,c,h,d,p,_,b,v=H$t(r)?"a":"b",k=v==="a"?e.aaxis:e.baxis,E=k.smoothing,A=v==="a"?e.a2i:e.b2j,L=v==="a"?r:n,x=v==="a"?n:r,C=v==="a"?t.a.length:t.b.length,M=v==="a"?t.b.length:t.a.length,m=Math.floor(v==="a"?e.b2j(x):e.a2i(x)),P=v==="a"?function(be){return e.evalxy([],be,m)}:function(be){return e.evalxy([],m,be)};E&&(o=Math.max(0,Math.min(M-2,m)),s=m-o,a=v==="a"?function(be,ze){return e.dxydi([],be,o,ze,s)}:function(be,ze){return e.dxydj([],o,be,s,ze)});var T=A(L[0]),B=A(L[1]),F=T0?Math.floor:Math.ceil,j=F>0?Math.ceil:Math.floor,W=F>0?Math.min:Math.max,N=F>0?Math.max:Math.min,H=G(T+U),re=j(B-U);f=P(T);var ae=[[f]];for(i=H;i*F{"use strict";var fO=Jl(),cO=F$(),gJe=B$(),sC=Mu(),y1=ei(),W$t=MG(),j$t=EG(),pw=kR(),uO=PE(),X$t=PG(),Z$t=LG(),Y$t=zG(),K$t=lO(),pJe=dJe();_Je.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;y1.makeTraceGroups(i,n,"contour").each(function(s){var u=fO.select(this),l=s[0],f=l.trace,c=f._carpetTrace=K$t(t,f),h=t.calcdata[c.index][0];if(!c.visible||c.visible==="legendonly")return;var d=l.a,p=l.b,_=f.contours,b=Z$t(_,r,l),v=_.type==="constraint",k=_._operation,E=v?k==="="?"lines":"fill":_.coloring;function A(G){var j=c.ab2xy(G[0],G[1],!0);return[a.c2p(j[0]),o.c2p(j[1])]}var L=[[d[0],p[p.length-1]],[d[d.length-1],p[p.length-1]],[d[d.length-1],p[0]],[d[0],p[0]]];W$t(b);var x=(d[d.length-1]-d[0])*1e-8,C=(p[p.length-1]-p[0])*1e-8;j$t(b,x,C);var M=b;_.type==="constraint"&&(M=X$t(b,k)),J$t(b,A);var m,P,T,B,F=[];for(B=h.clipsegments.length-1;B>=0;B--)m=h.clipsegments[B],P=cO([],m.x,a.c2p),T=cO([],m.y,o.c2p),P.reverse(),T.reverse(),F.push(gJe(P,T,m.bicubic));var U="M"+F.join("L")+"Z";eQt(u,h.clipsegments,a,o,v,E),tQt(f,u,a,o,M,L,A,c,h,E,U),$$t(u,b,t,l,_,r,c),sC.setClipUrl(u,c._clipPathId,t)})};function J$t(e,t){var r,n,i,a,o,s,u,l,f;for(r=0;rb&&(n.max=b),n.len=n.max-n.min}function vJe(e,t,r){var n=e.getPointAtLength(t),i=e.getPointAtLength(r),a=i.x-n.x,o=i.y-n.y,s=Math.sqrt(a*a+o*o);return[a/s,o/s]}function mJe(e){var t=Math.sqrt(e[0]*e[0]+e[1]*e[1]);return[e[0]/t,e[1]/t]}function yJe(e,t){var r=Math.abs(e[0]*t[0]+e[1]*t[1]),n=Math.sqrt(1-r*r);return n/r}function eQt(e,t,r,n,i,a){var o,s,u,l,f=y1.ensureSingle(e,"g","contourbg"),c=f.selectAll("path").data(a==="fill"&&!i?[0]:[]);c.enter().append("path"),c.exit().remove();var h=[];for(l=0;l=0&&(d=P,_=b):Math.abs(h[1]-d[1])=0&&(d=P,_=b):y1.log("endpt to newendpt is not vert. or horz.",h,d,P)}if(_>=0)break;l+=M(h,d),h=d}if(_===t.edgepaths.length){y1.log("unclosed perimeter path");break}u=_,c=f.indexOf(u)===-1,c&&(u=f[0],l+=M(h,d)+"Z",h=null)}for(u=0;u{"use strict";bJe.exports={attributes:U$(),supplyDefaults:V$(),colorbar:PR(),calc:cJe(),plot:xJe(),style:LR(),moduleType:"trace",name:"contourcarpet",basePlotModule:Ah(),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}});var AJe=Ae((rTr,TJe)=>{"use strict";TJe.exports=wJe()});var dO=Ae((iTr,CJe)=>{"use strict";var hO=ei().extendFlat,lC=Zc(),SJe=jc().axisHoverFormat,{hovertemplateAttrs:iQt,templatefallbackAttrs:nQt}=Ff(),EJe=Id().dash,aQt=a3(),kJe=XT(),oQt=kJe.INCREASING.COLOR,sQt=kJe.DECREASING.COLOR,G$=lC.line;function MJe(e){return{line:{color:hO({},G$.color,{dflt:e}),width:G$.width,dash:EJe,editType:"style"},editType:"style"}}CJe.exports={xperiod:lC.xperiod,xperiod0:lC.xperiod0,xperiodalignment:lC.xperiodalignment,xhoverformat:SJe("x"),yhoverformat:SJe("y"),x:{valType:"data_array",editType:"calc+clearAxisTypes"},open:{valType:"data_array",editType:"calc"},high:{valType:"data_array",editType:"calc"},low:{valType:"data_array",editType:"calc"},close:{valType:"data_array",editType:"calc"},line:{width:hO({},G$.width,{}),dash:hO({},EJe,{}),editType:"style"},increasing:MJe(oQt),decreasing:MJe(sQt),text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:iQt({},{keys:["open","high","low","close"]}),hovertemplatefallback:nQt(),tickwidth:{valType:"number",min:0,max:.5,dflt:.3,editType:"calc"},hoverlabel:hO({},aQt.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style"}}),zorder:lC.zorder}});var H$=Ae((nTr,LJe)=>{"use strict";var lQt=$l(),uQt=ei();LJe.exports=function(t,r,n,i){var a=n("x"),o=n("open"),s=n("high"),u=n("low"),l=n("close");n("hoverlabel.split");var f=lQt.getComponentMethod("calendars","handleTraceDefaults");if(f(t,r,["x"],i),!!(o&&s&&u&&l)){var c=Math.min(o.length,s.length,u.length,l.length);return a&&(c=Math.min(c,uQt.minRowLength(a))),r._length=c,c}}});var IJe=Ae((aTr,zJe)=>{"use strict";var fQt=ei(),cQt=H$(),hQt=zm(),dQt=dO();zJe.exports=function(t,r,n,i){function a(s,u){return fQt.coerce(t,r,dQt,s,u)}var o=cQt(t,r,a,i);if(!o){r.visible=!1;return}hQt(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),a("line.dash"),PJe(t,r,a,"increasing"),PJe(t,r,a,"decreasing"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("tickwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function PJe(e,t,r,n){r(n+".line.color"),r(n+".line.width",t.line.width),r(n+".line.dash",t.line.dash)}});var W$=Ae((oTr,DJe)=>{"use strict";var GS=ei(),pO=GS._,vO=wu(),pQt=Rm(),uC=rf().BADNUM;function vQt(e,t){var r=vO.getFromId(e,t.xaxis),n=vO.getFromId(e,t.yaxis),i=yQt(e,r,t),a=t._minDiff;t._minDiff=null;var o=t._origX;t._origX=null;var s=t._xcalc;t._xcalc=null;var u=RJe(e,t,o,s,n,mQt);return t._extremes[r._id]=vO.findExtremes(r,s,{vpad:a/2}),u.length?(GS.extendFlat(u[0].t,{wHover:a/2,tickLen:i}),u):[{t:{empty:!0}}]}function mQt(e,t,r,n){return{o:e,h:t,l:r,c:n}}function RJe(e,t,r,n,i,a){for(var o=i.makeCalcdata(t,"open"),s=i.makeCalcdata(t,"high"),u=i.makeCalcdata(t,"low"),l=i.makeCalcdata(t,"close"),f=GS.isArrayOrTypedArray(t.text),c=GS.isArrayOrTypedArray(t.hovertext),h=!0,d=null,p=!!t.xperiodalignment,_=[],b=0;bd):h=L>k,d=L;var x=a(k,E,A,L);x.pos=v,x.yc=(k+L)/2,x.i=b,x.dir=h?"increasing":"decreasing",x.x=x.pos,x.y=[A,E],p&&(x.orig_p=r[b]),f&&(x.tx=t.text[b]),c&&(x.htx=t.hovertext[b]),_.push(x)}else _.push({pos:v,empty:!0})}return t._extremes[i._id]=vO.findExtremes(i,GS.concat(u,s),{padded:!0}),_.length&&(_[0].t={labels:{open:pO(e,"open:")+" ",high:pO(e,"high:")+" ",low:pO(e,"low:")+" ",close:pO(e,"close:")+" "}}),_}function yQt(e,t,r){var n=r._minDiff;if(!n){var i=e._fullData,a=[];n=1/0;var o;for(o=0;o{"use strict";var gQt=Jl(),FJe=ei();BJe.exports=function(t,r,n,i){var a=r.yaxis,o=r.xaxis,s=!!o.rangebreaks;FJe.makeTraceGroups(i,n,"trace ohlc").each(function(u){var l=gQt.select(this),f=u[0],c=f.t,h=f.trace;if(h.visible!==!0||c.empty){l.remove();return}var d=c.tickLen,p=l.selectAll("path").data(FJe.identity);p.enter().append("path"),p.exit().remove(),p.attr("d",function(_){if(_.empty)return"M0,0Z";var b=o.c2p(_.pos-d,!0),v=o.c2p(_.pos+d,!0),k=s?(b+v)/2:o.c2p(_.pos,!0),E=a.c2p(_.o,!0),A=a.c2p(_.h,!0),L=a.c2p(_.l,!0),x=a.c2p(_.c,!0);return"M"+b+","+E+"H"+k+"M"+k+","+A+"V"+L+"M"+v+","+x+"H"+k})})}});var NJe=Ae((lTr,qJe)=>{"use strict";var j$=Jl(),_Qt=Mu(),xQt=jl();qJe.exports=function(t,r,n){var i=n||j$.select(t).selectAll("g.ohlclayer").selectAll("g.trace");i.style("opacity",function(a){return a[0].trace.opacity}),i.each(function(a){var o=a[0].trace;j$.select(this).selectAll("path").each(function(s){if(!s.empty){var u=o[s.dir].line;j$.select(this).style("fill","none").call(xQt.stroke,u.color).call(_Qt.dashLine,u.dash,u.width).style("opacity",o.selectedpoints&&!s.selected?.3:1)}})})}});var Z$=Ae((uTr,WJe)=>{"use strict";var X$=wu(),bQt=ei(),mO=Xc(),wQt=jl(),TQt=ei().fillText,UJe=XT(),AQt={increasing:UJe.INCREASING.SYMBOL,decreasing:UJe.DECREASING.SYMBOL};function SQt(e,t,r,n){var i=e.cd,a=i[0].trace;return a.hoverlabel.split?GJe(e,t,r,n):HJe(e,t,r,n)}function VJe(e,t,r,n){var i=e.cd,a=e.xa,o=i[0].trace,s=i[0].t,u=o.type,l=u==="ohlc"?"l":"min",f=u==="ohlc"?"h":"max",c,h,d=s.bPos||0,p=function(P){return P.pos+d-t},_=s.bdPos||s.tickLen,b=s.wHover,v=Math.min(1,_/Math.abs(a.r2c(a.range[1])-a.r2c(a.range[0])));c=e.maxHoverDistance-v,h=e.maxSpikeDistance-v;function k(P){var T=p(P);return mO.inbox(T-b,T+b,c)}function E(P){var T=P[l],B=P[f];return T===B||mO.inbox(T-r,B-r,c)}function A(P){return(k(P)+E(P))/2}var L=mO.getDistanceFunction(n,k,E,A);if(mO.getClosest(i,L,e),e.index===!1)return null;var x=i[e.index];if(x.empty)return null;var C=x.dir,M=o[C],m=M.line.color;return wQt.opacity(m)&&M.line.width?e.color=m:e.color=M.fillcolor,e.x0=a.c2p(x.pos+d-_,!0),e.x1=a.c2p(x.pos+d+_,!0),e.xLabelVal=x.orig_p!==void 0?x.orig_p:x.pos,e.spikeDistance=A(x)*h/c,e.xSpike=a.c2p(x.pos,!0),e}function GJe(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,u=[],l=VJe(e,t,r,n);if(!l)return[];var f=i[l.index],c=f.hi||o.hoverinfo||"";if(c==="none"||c==="skip")return[];for(var h=["high","open","close","low"],d={},p=0;p"+s.labels[_]+X$.hoverLabelText(a,b,o.yhoverformat)):(k=bQt.extendFlat({},l),k.y0=k.y1=v,k.yLabelVal=b,k.yLabel=s.labels[_]+X$.hoverLabelText(a,b,o.yhoverformat),k.name="",u.push(k),d[b]=k)}return u}function HJe(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,u=VJe(e,t,r,n);if(!u)return[];var l=u.index,f=i[l],c=u.index=f.i,h=f.dir;function d(A){return s.labels[A]+X$.hoverLabelText(a,o[A][c],o.yhoverformat)}var p=f.hi||o.hoverinfo||"",_=p.split("+"),b=p==="all",v=b||_.indexOf("y")!==-1,k=b||_.indexOf("text")!==-1,E=v?[d("open"),d("high"),d("low"),d("close")+" "+AQt[h]]:[];return k&&TQt(f,o,E),u.extraText=E.join("
"),u.y0=u.y1=a.c2p(f.yc,!0),[u]}WJe.exports={hoverPoints:SQt,hoverSplit:GJe,hoverOnPoints:HJe}});var Y$=Ae((fTr,jJe)=>{"use strict";jJe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,u=n[0].t.bPos||0;if(r===!1)for(s=0;s{"use strict";XJe.exports={moduleType:"trace",name:"ohlc",basePlotModule:Ah(),categories:["cartesian","svg","showLegend"],meta:{},attributes:dO(),supplyDefaults:IJe(),calc:W$().calc,plot:OJe(),style:NJe(),hoverPoints:Z$().hoverPoints,selectPoints:Y$()}});var KJe=Ae((hTr,YJe)=>{"use strict";YJe.exports=ZJe()});var J$=Ae((dTr,QJe)=>{"use strict";var K$=ei().extendFlat,JJe=jc().axisHoverFormat,dv=dO(),HS=xE();function $Je(e){return{line:{color:K$({},HS.line.color,{dflt:e}),width:HS.line.width,editType:"style"},fillcolor:HS.fillcolor,editType:"style"}}QJe.exports={xperiod:dv.xperiod,xperiod0:dv.xperiod0,xperiodalignment:dv.xperiodalignment,xhoverformat:JJe("x"),yhoverformat:JJe("y"),x:dv.x,open:dv.open,high:dv.high,low:dv.low,close:dv.close,line:{width:K$({},HS.line.width,{}),editType:"style"},increasing:$Je(dv.increasing.line.color.dflt),decreasing:$Je(dv.decreasing.line.color.dflt),text:dv.text,hovertext:dv.hovertext,hovertemplate:dv.hovertemplate,hovertemplatefallback:dv.hovertemplatefallback,whiskerwidth:K$({},HS.whiskerwidth,{dflt:0}),hoverlabel:dv.hoverlabel,zorder:HS.zorder}});var r$e=Ae((pTr,t$e)=>{"use strict";var MQt=ei(),EQt=jl(),kQt=H$(),CQt=zm(),LQt=J$();t$e.exports=function(t,r,n,i){function a(s,u){return MQt.coerce(t,r,LQt,s,u)}var o=kQt(t,r,a,i);if(!o){r.visible=!1;return}CQt(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),e$e(t,r,a,"increasing"),e$e(t,r,a,"decreasing"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("whiskerwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function e$e(e,t,r,n){var i=r(n+".line.color");r(n+".line.width",t.line.width),r(n+".fillcolor",EQt.addOpacity(i,.5))}});var o$e=Ae((vTr,a$e)=>{"use strict";var i$e=ei(),n$e=wu(),PQt=Rm(),zQt=W$().calcCommon;a$e.exports=function(e,t){var r=e._fullLayout,n=n$e.getFromId(e,t.xaxis),i=n$e.getFromId(e,t.yaxis),a=n.makeCalcdata(t,"x"),o=PQt(t,n,"x",a).vals,s=zQt(e,t,a,o,i,IQt);return s.length?(i$e.extendFlat(s[0].t,{num:r._numBoxes,dPos:i$e.distinctVals(o).minDiff/2,posLetter:"x",valLetter:"y"}),r._numBoxes++,s):[{t:{empty:!0}}]};function IQt(e,t,r,n){return{min:r,q1:Math.min(e,n),med:n,q3:Math.max(e,n),max:t}}});var l$e=Ae((mTr,s$e)=>{"use strict";s$e.exports={moduleType:"trace",name:"candlestick",basePlotModule:Ah(),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{},attributes:J$(),layoutAttributes:bE(),supplyLayoutDefaults:ZI().supplyLayoutDefaults,crossTraceCalc:KI().crossTraceCalc,supplyDefaults:r$e(),calc:o$e(),plot:JI().plot,layerName:"boxlayer",style:$I().style,hoverPoints:Z$().hoverPoints,selectPoints:Y$()}});var f$e=Ae((yTr,u$e)=>{"use strict";u$e.exports=l$e()});var Q$=Ae((gTr,c$e)=>{"use strict";var gO=ei(),RQt=gy(),yO=gO.deg2rad,$$=gO.rad2deg;c$e.exports=function(t,r,n){switch(RQt(t,n),t._id){case"x":case"radialaxis":DQt(t,r);break;case"angularaxis":OQt(t,r);break}};function DQt(e,t){var r=t._subplot;e.setGeometry=function(){var n=e._rl[0],i=e._rl[1],a=r.innerRadius,o=(r.radius-a)/(i-n),s=a/o,u=n>i?function(l){return l<=0}:function(l){return l>=0};e.c2g=function(l){var f=e.c2l(l)-n;return(u(f)?f:0)+s},e.g2c=function(l){return e.l2c(l+n-s)},e.g2p=function(l){return l*o},e.c2p=function(l){return e.g2p(e.c2g(l))}}}function FQt(e,t){return t==="degrees"?yO(e):e}function BQt(e,t){return t==="degrees"?$$(e):e}function OQt(e,t){var r=e.type;if(r==="linear"){var n=e.d2c,i=e.c2d;e.d2c=function(a,o){return FQt(n(a),o)},e.c2d=function(a,o){return i(BQt(a,o))}}e.makeCalcdata=function(a,o){var s=a[o],u=a._length,l,f,c=function(b){return e.d2c(b,a.thetaunit)};if(s)for(l=new Array(u),f=0;f{"use strict";h$e.exports={attr:"subplot",name:"polar",axisNames:["angularaxis","radialaxis"],axisName2dataArray:{angularaxis:"theta",radialaxis:"r"},layerNames:["draglayer","plotbg","backplot","angular-grid","radial-grid","frontplot","angular-line","radial-line","angular-axis","radial-axis"],radialDragBoxSize:50,angularDragBoxSize:30,cornerLen:25,cornerHalfWidth:2,MINDRAG:8,MINZOOM:20,OFFEDGE:20}});var bO=Ae((xTr,y$e)=>{"use strict";var vw=ei(),d$e=k5().tester,eQ=vw.findIndexOfMin,v$e=vw.isAngleInsideSector,qQt=vw.angleDelta,p$e=vw.angleDist;function NQt(e,t,r,n,i){if(!v$e(t,n))return!1;var a,o;r[0]0?o:1/0},n=eQ(t,r),i=vw.mod(n+1,t.length);return[t[n],t[i]]}function xO(e){return Math.abs(e)>1e-10?e:0}function tQ(e,t,r){t=t||0,r=r||0;for(var n=e.length,i=new Array(n),a=0;a{"use strict";function g$e(e){return e<0?-1:e>0?1:0}function jS(e){var t=e[0],r=e[1];if(!isFinite(t)||!isFinite(r))return[1,0];var n=(t+1)*(t+1)+r*r;return[(t*t+r*r-1)/n,2*r/n]}function XS(e,t){var r=t[0],n=t[1];return[r*e.radius+e.cx,-n*e.radius+e.cy]}function _$e(e,t){return t*e.radius}function ZQt(e,t,r,n){var i=XS(e,jS([r,t])),a=i[0],o=i[1],s=XS(e,jS([n,t])),u=s[0],l=s[1];if(t===0)return["M"+a+","+o,"L"+u+","+l].join(" ");var f=_$e(e,1/Math.abs(t));return["M"+a+","+o,"A"+f+","+f+" 0 0,"+(t<0?1:0)+" "+u+","+l].join(" ")}function YQt(e,t,r,n){var i=_$e(e,1/(t+1)),a=XS(e,jS([t,r])),o=a[0],s=a[1],u=XS(e,jS([t,n])),l=u[0],f=u[1];if(g$e(r)!==g$e(n)){var c=XS(e,jS([t,0])),h=c[0],d=c[1];return["M"+o+","+s,"A"+i+","+i+" 0 0,"+(0{"use strict";var mw=Jl(),KQt=cd(),gw=$l(),Oc=ei(),ig=Oc.strRotate,bd=Oc.strTranslate,iQ=jl(),fC=Mu(),JQt=Cc(),pv=wu(),$Qt=gy(),QQt=Q$(),eer=Am().doAutoRange,g1=K7(),AO=xp(),b$e=Xc(),ter=Eb(),rer=oh().prepSelect,ier=oh().selectOnClick,nQ=oh().clearOutline,w$e=Sm(),T$e=p5(),A$e=w5().redrawReglTraces,ner=td().MID_SHIFT,Lx=_O(),_1=bO(),SO=rQ(),wO=SO.smith,aer=SO.reactanceArc,oer=SO.resistanceArc,TO=SO.smithTransform,ser=Oc._,S$e=Oc.mod,Px=Oc.deg2rad,yw=Oc.rad2deg;function M$e(e,t,r){this.isSmith=r||!1,this.id=t,this.gd=e,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var n=e._fullLayout,i="clip"+n._uid+t;this.clipIds.forTraces=i+"-for-traces",this.clipPaths.forTraces=n._clips.append("clipPath").attr("id",this.clipIds.forTraces),this.clipPaths.forTraces.append("path"),this.framework=n["_"+(r?"smith":"polar")+"layer"].append("g").attr("class",t),this.getHole=function(a){return this.isSmith?0:a.hole},this.getSector=function(a){return this.isSmith?[0,360]:a.sector},this.getRadial=function(a){return this.isSmith?a.realaxis:a.radialaxis},this.getAngular=function(a){return this.isSmith?a.imaginaryaxis:a.angularaxis},r||(this.radialTickLayout=null,this.angularTickLayout=null)}var Vd=M$e.prototype;C$e.exports=function(t,r,n){return new M$e(t,r,n)};Vd.plot=function(e,t){for(var r=this,n=t[r.id],i=!1,a=0;ab?(v=l,k=l*b,L=(f-k)/i.h/2,E=[s[0],s[1]],A=[u[0]+L,u[1]-L]):(v=f/b,k=f,L=(l-v)/i.w/2,E=[s[0]+L,s[1]-L],A=[u[0],u[1]]),r.xLength2=v,r.yLength2=k,r.xDomain2=E,r.yDomain2=A;var x=r.xOffset2=i.l+i.w*E[0],C=r.yOffset2=i.t+i.h*(1-A[1]),M=r.radius=v/d,m=r.innerRadius=r.getHole(t)*M,P=r.cx=x-M*h[0],T=r.cy=C+M*h[3],B=r.cxx=P-x,F=r.cyy=T-C,U=a.side,G;U==="counterclockwise"?(G=U,U="top"):U==="clockwise"&&(G=U,U="bottom"),r.radialAxis=r.mockAxis(e,t,a,{_id:"x",side:U,_trueSide:G,domain:[m/i.w,M/i.w]}),r.angularAxis=r.mockAxis(e,t,o,{side:"right",domain:[0,Math.PI],autorange:!1}),r.doAutoRange(e,t),r.updateAngularAxis(e,t),r.updateRadialAxis(e,t),r.updateRadialAxisTitle(e,t),r.xaxis=r.mockCartesianAxis(e,t,{_id:"x",domain:E}),r.yaxis=r.mockCartesianAxis(e,t,{_id:"y",domain:A});var j=r.pathSubplot();r.clipPaths.forTraces.select("path").attr("d",j).attr("transform",bd(B,F)),n.frontplot.attr("transform",bd(x,C)).call(fC.setClipUrl,r._hasClipOnAxisFalse?null:r.clipIds.forTraces,r.gd),n.bg.attr("d",j).attr("transform",bd(P,T)).call(iQ.fill,t.bgcolor)};Vd.mockAxis=function(e,t,r,n){var i=Oc.extendFlat({},r,n);return QQt(i,t,e),i};Vd.mockCartesianAxis=function(e,t,r){var n=this,i=n.isSmith,a=r._id,o=Oc.extendFlat({type:"linear"},r);$Qt(o,e);var s={x:[0,2],y:[1,3]};return o.setRange=function(){var u=n.sectorBBox,l=s[a],f=n.radialAxis._rl,c=(f[1]-f[0])/(1-n.getHole(t));o.range=[u[l[0]]*c,u[l[1]]*c]},o.isPtWithinRange=a==="x"&&!i?function(u){return n.isPtInside(u)}:function(){return!0},o.setRange(),o.setScale(),o};Vd.doAutoRange=function(e,t){var r=this,n=r.gd,i=r.radialAxis,a=r.getRadial(t);eer(n,i);var o=i.range;if(a.range=o.slice(),a._input.range=o.slice(),i._rl=[i.r2l(o[0],null,"gregorian"),i.r2l(o[1],null,"gregorian")],i.minallowed!==void 0){var s=i.r2l(i.minallowed);i._rl[0]>i._rl[1]?i._rl[1]=Math.max(i._rl[1],s):i._rl[0]=Math.max(i._rl[0],s)}if(i.maxallowed!==void 0){var u=i.r2l(i.maxallowed);i._rl[0]90&&f<=270&&(c.tickangle=180);var p=d?function(M){var m=TO(r,wO([M.x,0]));return bd(m[0]-s,m[1]-u)}:function(M){return bd(c.l2p(M.x)+o,0)},_=d?function(M){return oer(r,M.x,-1/0,1/0)}:function(M){return r.pathArc(c.r2p(M.x)+o)},b=E$e(l);if(r.radialTickLayout!==b&&(i["radial-axis"].selectAll(".xtick").remove(),r.radialTickLayout=b),h){c.setScale();var v=0,k=d?(c.tickvals||[]).filter(function(M){return M>=0}).map(function(M){return pv.tickText(c,M,!0,!1)}):pv.calcTicks(c),E=d?k:pv.clipEnds(c,k),A=pv.getTickSigns(c)[2];d&&((c.ticks==="top"&&c.side==="bottom"||c.ticks==="bottom"&&c.side==="top")&&(A=-A),c.ticks==="top"&&c.side==="top"&&(v=-c.ticklen),c.ticks==="bottom"&&c.side==="bottom"&&(v=c.ticklen)),pv.drawTicks(n,c,{vals:k,layer:i["radial-axis"],path:pv.makeTickPath(c,0,A),transFn:p,crisp:!1}),pv.drawGrid(n,c,{vals:E,layer:i["radial-grid"],path:_,transFn:Oc.noop,crisp:!1}),pv.drawLabels(n,c,{vals:k,layer:i["radial-axis"],transFn:p,labelFns:pv.makeLabelFns(c,v)})}var L=r.radialAxisAngle=r.vangles?yw(k$e(Px(l.angle),r.vangles)):l.angle,x=bd(s,u),C=x+ig(-L);cC(i["radial-axis"],h&&(l.showticklabels||l.ticks),{transform:C}),cC(i["radial-grid"],h&&l.showgrid,{transform:d?"":x}),cC(i["radial-line"].select("line"),h&&l.showline,{x1:d?-a:o,y1:0,x2:a,y2:0,transform:C}).attr("stroke-width",l.linewidth).call(iQ.stroke,l.linecolor)};Vd.updateRadialAxisTitle=function(e,t,r){if(!this.isSmith){var n=this,i=n.gd,a=n.radius,o=n.cx,s=n.cy,u=n.getRadial(t),l=n.id+"title",f=0;if(u.title){var c=fC.bBox(n.layers["radial-axis"].node()).height,h=u.title.font.size,d=u.side;f=d==="top"?h:d==="counterclockwise"?-(c+h*.4):c+h*.8}var p=r!==void 0?r:n.radialAxisAngle,_=Px(p),b=Math.cos(_),v=Math.sin(_),k=o+a/2*b+f*v,E=s-a/2*v+f*b;n.layers["radial-axis-title"]=ter.draw(i,l,{propContainer:u,propName:n.id+".radialaxis.title.text",placeholder:ser(i,"Click to enter radial axis title"),attributes:{x:k,y:E,"text-anchor":"middle"},transform:{rotate:-p}})}};Vd.updateAngularAxis=function(e,t){var r=this,n=r.gd,i=r.layers,a=r.radius,o=r.innerRadius,s=r.cx,u=r.cy,l=r.getAngular(t),f=r.angularAxis,c=r.isSmith;c||(r.fillViewInitialKey("angularaxis.rotation",l.rotation),f.setGeometry(),f.setScale());var h=c?function(m){var P=TO(r,wO([0,m.x]));return Math.atan2(P[0]-s,P[1]-u)-Math.PI/2}:function(m){return f.t2g(m.x)};f.type==="linear"&&f.thetaunit==="radians"&&(f.tick0=yw(f.tick0),f.dtick=yw(f.dtick));var d=function(m){return bd(s+a*Math.cos(m),u-a*Math.sin(m))},p=c?function(m){var P=TO(r,wO([0,m.x]));return bd(P[0],P[1])}:function(m){return d(h(m))},_=c?function(m){var P=TO(r,wO([0,m.x])),T=Math.atan2(P[0]-s,P[1]-u)-Math.PI/2;return bd(P[0],P[1])+ig(-yw(T))}:function(m){var P=h(m);return d(P)+ig(-yw(P))},b=c?function(m){return aer(r,m.x,0,1/0)}:function(m){var P=h(m),T=Math.cos(P),B=Math.sin(P);return"M"+[s+o*T,u-o*B]+"L"+[s+a*T,u-a*B]},v=pv.makeLabelFns(f,0),k=v.labelStandoff,E={};E.xFn=function(m){var P=h(m);return Math.cos(P)*k},E.yFn=function(m){var P=h(m),T=Math.sin(P)>0?.2:1;return-Math.sin(P)*(k+m.fontSize*T)+Math.abs(Math.cos(P))*(m.fontSize*ner)},E.anchorFn=function(m){var P=h(m),T=Math.cos(P);return Math.abs(T)<.1?"middle":T>0?"start":"end"},E.heightFn=function(m,P,T){var B=h(m);return-.5*(1+Math.sin(B))*T};var A=E$e(l);r.angularTickLayout!==A&&(i["angular-axis"].selectAll("."+f._id+"tick").remove(),r.angularTickLayout=A);var L=c?[1/0].concat(f.tickvals||[]).map(function(m){return pv.tickText(f,m,!0,!1)}):pv.calcTicks(f);c&&(L[0].text="\u221E",L[0].fontSize*=1.75);var x;if(t.gridshape==="linear"?(x=L.map(h),Oc.angleDelta(x[0],x[1])<0&&(x=x.slice().reverse())):x=null,r.vangles=x,f.type==="category"&&(L=L.filter(function(m){return Oc.isAngleInsideSector(h(m),r.sectorInRad)})),f.visible){var C=f.ticks==="inside"?-1:1,M=(f.linewidth||1)/2;pv.drawTicks(n,f,{vals:L,layer:i["angular-axis"],path:"M"+C*M+",0h"+C*f.ticklen,transFn:_,crisp:!1}),pv.drawGrid(n,f,{vals:L,layer:i["angular-grid"],path:b,transFn:Oc.noop,crisp:!1}),pv.drawLabels(n,f,{vals:L,layer:i["angular-axis"],repositionOnUpdate:!0,transFn:p,labelFns:E})}cC(i["angular-line"].select("path"),l.showline,{d:r.pathSubplot(),transform:bd(s,u)}).attr("stroke-width",l.linewidth).call(iQ.stroke,l.linecolor)};Vd.updateFx=function(e,t){if(!this.gd._context.staticPlot){var r=!this.isSmith;r&&(this.updateAngularDrag(e),this.updateRadialDrag(e,t,0),this.updateRadialDrag(e,t,1)),this.updateHoverAndMainDrag(e)}};Vd.updateHoverAndMainDrag=function(e){var t=this,r=t.isSmith,n=t.gd,i=t.layers,a=e._zoomlayer,o=Lx.MINZOOM,s=Lx.OFFEDGE,u=t.radius,l=t.innerRadius,f=t.cx,c=t.cy,h=t.cxx,d=t.cyy,p=t.sectorInRad,_=t.vangles,b=t.radialAxis,v=_1.clampTiny,k=_1.findXYatLength,E=_1.findEnclosingVertexAngles,A=Lx.cornerHalfWidth,L=Lx.cornerLen/2,x,C,M=g1.makeDragger(i,"path","maindrag",e.dragmode===!1?"none":"crosshair");mw.select(M).attr("d",t.pathSubplot()).attr("transform",bd(f,c)),M.onmousemove=function(ce){b$e.hover(n,ce,t.id),n._fullLayout._lasthover=M,n._fullLayout._hoversubplot=t.id},M.onmouseout=function(ce){n._dragging||AO.unhover(n,ce)};var m={element:M,gd:n,subplot:t.id,plotinfo:{id:t.id,xaxis:t.xaxis,yaxis:t.yaxis},xaxes:[t.xaxis],yaxes:[t.yaxis]},P,T,B,F,U,G,j,W,N;function H(ce,Je){return Math.sqrt(ce*ce+Je*Je)}function re(ce,Je){return H(ce-h,Je-d)}function ae(ce,Je){return Math.atan2(d-Je,ce-h)}function be(ce,Je){return[ce*Math.cos(Je),ce*Math.sin(-Je)]}function ze(ce,Je){if(ce===0)return t.pathSector(2*A);var nt=L/ce,gt=Je-nt,Nt=Je+nt,at=Math.max(0,Math.min(ce,u)),Ke=at-A,Ct=at+A;return"M"+be(Ke,gt)+"A"+[Ke,Ke]+" 0,0,0 "+be(Ke,Nt)+"L"+be(Ct,Nt)+"A"+[Ct,Ct]+" 0,0,1 "+be(Ct,gt)+"Z"}function Ce(ce,Je,nt){if(ce===0)return t.pathSector(2*A);var gt=be(ce,Je),Nt=be(ce,nt),at=v((gt[0]+Nt[0])/2),Ke=v((gt[1]+Nt[1])/2),Ct,wt;if(at&&Ke){var St=Ke/at,Dt=-1/St,Zt=k(A,St,at,Ke);Ct=k(L,Dt,Zt[0][0],Zt[0][1]),wt=k(L,Dt,Zt[1][0],Zt[1][1])}else{var Et,Te;Ke?(Et=L,Te=A):(Et=A,Te=L),Ct=[[at-Et,Ke-Te],[at+Et,Ke-Te]],wt=[[at-Et,Ke+Te],[at+Et,Ke+Te]]}return"M"+Ct.join("L")+"L"+wt.reverse().join("L")+"Z"}function de(){B=null,F=null,U=t.pathSubplot(),G=!1;var ce=n._fullLayout[t.id];j=KQt(ce.bgcolor).getLuminance(),W=g1.makeZoombox(a,j,f,c,U),W.attr("fill-rule","evenodd"),N=g1.makeCorners(a,f,c),nQ(n)}function te(ce,Je){return Je=Math.max(Math.min(Je,u),l),ceo?(ce-1&&ce===1&&ier(Je,n,[t.xaxis],[t.yaxis],t.id,m),nt.indexOf("event")>-1&&b$e.click(n,Je,t.id)}m.prepFn=function(ce,Je,nt){var gt=n._fullLayout.dragmode,Nt=M.getBoundingClientRect();n._fullLayout._calcInverseTransform(n);var at=n._fullLayout._invTransform;x=n._fullLayout._invScaleX,C=n._fullLayout._invScaleY;var Ke=Oc.apply3DTransform(at)(Je-Nt.left,nt-Nt.top);if(P=Ke[0],T=Ke[1],_){var Ct=_1.findPolygonOffset(u,p[0],p[1],_);P+=h+Ct[0],T+=d+Ct[1]}switch(gt){case"zoom":m.clickFn=qe,r||(_?m.moveFn=Ue:m.moveFn=Ee,m.doneFn=De,de(ce,Je,nt));break;case"select":case"lasso":rer(ce,Je,nt,m,gt);break}},AO.init(m)};Vd.updateRadialDrag=function(e,t,r){var n=this,i=n.gd,a=n.layers,o=n.radius,s=n.innerRadius,u=n.cx,l=n.cy,f=n.radialAxis,c=Lx.radialDragBoxSize,h=c/2;if(!f.visible)return;var d=Px(n.radialAxisAngle),p=f._rl,_=p[0],b=p[1],v=p[r],k=.75*(p[1]-p[0])/(1-n.getHole(t))/o,E,A,L;r?(E=u+(o+h)*Math.cos(d),A=l-(o+h)*Math.sin(d),L="radialdrag"):(E=u+(s-h)*Math.cos(d),A=l-(s-h)*Math.sin(d),L="radialdrag-inner");var x=g1.makeRectDragger(a,L,"crosshair",-h,-h,c,c),C={element:x,gd:i};e.dragmode===!1&&(C.dragmode=!1),cC(mw.select(x),f.visible&&s0!=(r?P>_:P=90||i>90&&a>=450?d=1:s<=0&&l<=0?d=0:d=Math.max(s,l),i<=180&&a>=180||i>180&&a>=540?f=-1:o>=0&&u>=0?f=0:f=Math.min(o,u),i<=270&&a>=270||i>270&&a>=630?c=-1:s>=0&&l>=0?c=0:c=Math.min(s,l),a>=360?h=1:o<=0&&u<=0?h=0:h=Math.max(o,u),[f,c,h,d]}function k$e(e,t){var r=function(i){return Oc.angleDist(e,i)},n=Oc.findIndexOfMin(t,r);return t[n]}function cC(e,t,r){return t?(e.attr("display",null),e.attr(r)):e&&e.attr("display","none"),e}});var oQ=Ae((TTr,D$e)=>{"use strict";var uer=Fh(),Yu=Dd(),fer=zc().attributes,f0=ei().extendFlat,L$e=Sc().overrideAll,P$e=L$e({color:Yu.color,showline:f0({},Yu.showline,{dflt:!0}),linecolor:Yu.linecolor,linewidth:Yu.linewidth,showgrid:f0({},Yu.showgrid,{dflt:!0}),gridcolor:Yu.gridcolor,gridwidth:Yu.gridwidth,griddash:Yu.griddash},"plot","from-root"),z$e=L$e({tickmode:Yu.minor.tickmode,nticks:Yu.nticks,tick0:Yu.tick0,dtick:Yu.dtick,tickvals:Yu.tickvals,ticktext:Yu.ticktext,ticks:Yu.ticks,ticklen:Yu.ticklen,tickwidth:Yu.tickwidth,tickcolor:Yu.tickcolor,ticklabelstep:Yu.ticklabelstep,showticklabels:Yu.showticklabels,labelalias:Yu.labelalias,minorloglabels:Yu.minorloglabels,showtickprefix:Yu.showtickprefix,tickprefix:Yu.tickprefix,showticksuffix:Yu.showticksuffix,ticksuffix:Yu.ticksuffix,showexponent:Yu.showexponent,exponentformat:Yu.exponentformat,minexponent:Yu.minexponent,separatethousands:Yu.separatethousands,tickfont:Yu.tickfont,tickangle:Yu.tickangle,tickformat:Yu.tickformat,tickformatstops:Yu.tickformatstops,layer:Yu.layer},"plot","from-root"),I$e={visible:f0({},Yu.visible,{dflt:!0}),type:f0({},Yu.type,{values:["-","linear","log","date","category"]}),autotypenumbers:Yu.autotypenumbers,autorangeoptions:{minallowed:Yu.autorangeoptions.minallowed,maxallowed:Yu.autorangeoptions.maxallowed,clipmin:Yu.autorangeoptions.clipmin,clipmax:Yu.autorangeoptions.clipmax,include:Yu.autorangeoptions.include,editType:"plot"},autorange:f0({},Yu.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc"},minallowed:f0({},Yu.minallowed,{editType:"plot"}),maxallowed:f0({},Yu.maxallowed,{editType:"plot"}),range:f0({},Yu.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:Yu.categoryorder,categoryarray:Yu.categoryarray,angle:{valType:"angle",editType:"plot"},autotickangles:Yu.autotickangles,side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot"},title:{text:f0({},Yu.title.text,{editType:"plot",dflt:""}),font:f0({},Yu.title.font,{editType:"plot"}),editType:"plot"},hoverformat:Yu.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};f0(I$e,P$e,z$e);var R$e={visible:f0({},Yu.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:Yu.autotypenumbers,categoryorder:Yu.categoryorder,categoryarray:Yu.categoryarray,thetaunit:{valType:"enumerated",values:["radians","degrees"],dflt:"degrees",editType:"calc"},period:{valType:"number",editType:"calc",min:0},direction:{valType:"enumerated",values:["counterclockwise","clockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",editType:"calc"},hoverformat:Yu.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};f0(R$e,P$e,z$e);D$e.exports={domain:fer({name:"polar",editType:"plot"}),sector:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],dflt:[0,360],editType:"plot"},hole:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},bgcolor:{valType:"color",editType:"plot",dflt:uer.background},radialaxis:I$e,angularaxis:R$e,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var q$e=Ae((ATr,O$e)=>{"use strict";var MO=ei(),cer=jl(),her=Lf(),der=k_(),per=Rd().getSubplotData,ver=bb(),mer=M3(),yer=e_(),ger=t_(),_er=oI(),xer=tE(),ber=CN(),wer=I3(),B$e=oQ(),Ter=Q$(),EO=_O(),F$e=EO.axisNames;function Aer(e,t,r,n){var i=r("bgcolor");n.bgColor=cer.combine(i,n.paper_bgcolor);var a=r("sector");r("hole");var o=per(n.fullData,EO.name,n.id),s=n.layoutOut,u;function l(W,N){return r(u+"."+W,N)}for(var f=0;f{"use strict";var Mer=Rd().getSubplotCalcData,Eer=ei().counterRegex,ker=aQ(),U$e=_O(),V$e=U$e.attr,_w=U$e.name,N$e=Eer(_w),G$e={};G$e[V$e]={valType:"subplotid",dflt:_w,editType:"calc"};function Cer(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[_w],i=0;i{"use strict";var{hovertemplateAttrs:Per,texttemplateAttrs:zer,templatefallbackAttrs:W$e}=Ff(),CO=Su().extendFlat,Ier=Cm(),c0=Zc(),Rer=Gf(),ZS=c0.line;j$e.exports={mode:c0.mode,r:{valType:"data_array",editType:"calc+clearAxisTypes"},theta:{valType:"data_array",editType:"calc+clearAxisTypes"},r0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dr:{valType:"number",dflt:1,editType:"calc"},theta0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dtheta:{valType:"number",editType:"calc"},thetaunit:{valType:"enumerated",values:["radians","degrees","gradians"],dflt:"degrees",editType:"calc+clearAxisTypes"},text:c0.text,texttemplate:zer({editType:"plot"},{keys:["r","theta","text"]}),texttemplatefallback:W$e({editType:"plot"}),hovertext:c0.hovertext,line:{color:ZS.color,width:ZS.width,dash:ZS.dash,backoff:ZS.backoff,shape:CO({},ZS.shape,{values:["linear","spline"]}),smoothing:ZS.smoothing,editType:"calc"},connectgaps:c0.connectgaps,marker:c0.marker,cliponaxis:CO({},c0.cliponaxis,{dflt:!1}),textposition:c0.textposition,textfont:c0.textfont,fill:CO({},c0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:Ier(),hoverinfo:CO({},Rer.hoverinfo,{flags:["r","theta","text","name"]}),hoveron:c0.hoveron,hovertemplate:Per(),hovertemplatefallback:W$e(),selected:c0.selected,unselected:c0.unselected}});var PO=Ae((ETr,Y$e)=>{"use strict";var LO=ei(),YS=lc(),Der=$v(),Fer=I0(),X$e=tT(),Ber=R0(),Oer=Im(),qer=Sy().PTS_LINESONLY,Ner=hC();function Uer(e,t,r,n){function i(s,u){return LO.coerce(e,t,Ner,s,u)}var a=Z$e(e,t,n,i);if(!a){t.visible=!1;return}i("thetaunit"),i("mode",a{"use strict";var Ver=ei(),K$e=wu();J$e.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o,s;a?(o=a.radialAxis,s=a.angularAxis):(a=n[r.subplot],o=a.radialaxis,s=a.angularaxis);var u=o.c2l(t.r);i.rLabel=K$e.tickText(o,u,!0).text;var l=s.thetaunit==="degrees"?Ver.rad2deg(t.theta):t.theta;return i.thetaLabel=K$e.tickText(s,l,!0).text,i}});var eQe=Ae((CTr,Q$e)=>{"use strict";var $$e=ku(),Ger=rf().BADNUM,Her=wu(),Wer=D0(),jer=ky(),Xer=F0(),Zer=B0().calcMarkerSize;Q$e.exports=function(t,r){for(var n=t._fullLayout,i=r.subplot,a=n[i].radialaxis,o=n[i].angularaxis,s=a.makeCalcdata(r,"r"),u=o.makeCalcdata(r,"theta"),l=r._length,f=new Array(l),c=0;c{"use strict";var Yer=sT(),tQe=rf().BADNUM;rQe.exports=function(t,r,n){for(var i=r.layers.frontplot.select("g.scatterlayer"),a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},u=r.radialAxis,l=r.angularAxis,f=0;f{"use strict";var Ker=cT();function Jer(e,t,r,n){var i=Ker(e,t,r,n);if(!(!i||i[0].index===!1)){var a=i[0];if(a.index===void 0)return i;var o=e.subplot,s=a.cd[a.index],u=a.trace;if(o.isPtInside(s))return a.xLabelVal=void 0,a.yLabelVal=void 0,nQe(s,u,o,a),a.hovertemplate=u.hovertemplate,i}}function nQe(e,t,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle="r",a._hovertitle="\u03B8";var o={};o[t.subplot]={_subplot:r};var s=t._module.formatLabels(e,t,o);n.rLabel=s.rLabel,n.thetaLabel=s.thetaLabel;var u=e.hi||t.hoverinfo,l=[];function f(h,d){l.push(h._hovertitle+": "+d)}if(!t.hovertemplate){var c=u.split("+");c.indexOf("all")!==-1&&(c=["r","theta","text"]),c.indexOf("r")!==-1&&f(i,n.rLabel),c.indexOf("theta")!==-1&&f(a,n.thetaLabel),c.indexOf("text")!==-1&&n.text&&(l.push(n.text),delete n.text),n.extraText=l.join("
")}}aQe.exports={hoverPoints:Jer,makeHoverPointText:nQe}});var sQe=Ae((zTr,oQe)=>{"use strict";oQe.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:kO(),categories:["polar","symbols","showLegend","scatter-like"],attributes:hC(),supplyDefaults:PO().supplyDefaults,colorbar:ep(),formatLabels:zO(),calc:eQe(),plot:iQe(),style:ov().style,styleOnSelect:ov().styleOnSelect,hoverPoints:IO().hoverPoints,selectPoints:hT(),meta:{}}});var uQe=Ae((ITr,lQe)=>{"use strict";lQe.exports=sQe()});var sQ=Ae((FTr,cQe)=>{"use strict";var fQe=hC(),{cliponaxis:RTr,hoveron:DTr}=fQe,$er=bee(fQe,["cliponaxis","hoveron"]),{connectgaps:Qer,line:{color:etr,dash:ttr,width:rtr},fill:itr,fillcolor:ntr,marker:atr,textfont:otr,textposition:str}=lk();cQe.exports=O1(ym({},$er),{connectgaps:Qer,fill:itr,fillcolor:ntr,line:{color:etr,dash:ttr,editType:"calc",width:rtr},marker:atr,textfont:otr,textposition:str})});var pQe=Ae((OTr,dQe)=>{"use strict";var hQe=ei(),lQ=lc(),ltr=PO().handleRThetaDefaults,utr=$v(),ftr=I0(),ctr=R0(),htr=Im(),dtr=Sy().PTS_LINESONLY,ptr=sQ();dQe.exports=function(t,r,n,i){function a(s,u){return hQe.coerce(t,r,ptr,s,u)}var o=ltr(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("mode",o{"use strict";var vtr=zO();vQe.exports=function(t,r,n){var i=t.i;return"r"in t||(t.r=r._r[i]),"theta"in t||(t.theta=r._theta[i]),vtr(t,r,n)}});var gQe=Ae((NTr,yQe)=>{"use strict";var mtr=D0(),ytr=B0().calcMarkerSize,gtr=J2(),_tr=wu(),xtr=ox().TOO_MANY_POINTS;yQe.exports=function(t,r){var n=t._fullLayout,i=r.subplot,a=n[i].radialaxis,o=n[i].angularaxis,s=r._r=a.makeCalcdata(r,"r"),u=r._theta=o.makeCalcdata(r,"theta"),l=r._length,f={};l{"use strict";var btr=UF(),wtr=IO().makeHoverPointText;function Ttr(e,t,r,n){var i=e.cd,a=i[0].t,o=a.r,s=a.theta,u=btr.hoverPoints(e,t,r,n);if(!(!u||u[0].index===!1)){var l=u[0];if(l.index===void 0)return u;var f=e.subplot,c=l.cd[l.index],h=l.trace;if(c.r=o[l.index],c.theta=s[l.index],!!f.isPtInside(c))return l.xLabelVal=void 0,l.yLabelVal=void 0,wtr(c,h,f,l),u}}_Qe.exports={hoverPoints:Ttr}});var wQe=Ae((VTr,bQe)=>{"use strict";bQe.exports={moduleType:"trace",name:"scatterpolargl",basePlotModule:kO(),categories:["gl","regl","polar","symbols","showLegend","scatter-like"],attributes:sQ(),supplyDefaults:pQe(),colorbar:ep(),formatLabels:mQe(),calc:gQe(),hoverPoints:xQe().hoverPoints,selectPoints:_Y(),meta:{}}});var TQe=Ae((GTr,uQ)=>{"use strict";var Atr=HF(),Str=ku(),Mtr=TK(),Etr=mY(),RO=J2(),DO=ei(),ktr=ox().TOO_MANY_POINTS,Ctr={};uQ.exports=function(t,r,n){if(n.length){var i=r.radialAxis,a=r.angularAxis,o=Etr(t,r);return n.forEach(function(s){if(!(!s||!s[0]||!s[0].trace)){var u=s[0],l=u.trace,f=u.t,c=l._length,h=f.r,d=f.theta,p=f.opts,_,b=h.slice(),v=d.slice();for(_=0;_=ktr&&(p.marker.cluster=f.tree),p.marker&&(p.markerSel.positions=p.markerUnsel.positions=p.marker.positions=k),p.line&&k.length>1&&DO.extendFlat(p.line,RO.linePositions(t,l,k)),p.text&&(DO.extendFlat(p.text,{positions:k},RO.textPosition(t,l,p.text,p.marker)),DO.extendFlat(p.textSel,{positions:k},RO.textPosition(t,l,p.text,p.markerSel)),DO.extendFlat(p.textUnsel,{positions:k},RO.textPosition(t,l,p.text,p.markerUnsel))),p.fill&&!o.fill2d&&(o.fill2d=!0),p.marker&&!o.scatter2d&&(o.scatter2d=!0),p.line&&!o.line2d&&(o.line2d=!0),p.text&&!o.glText&&(o.glText=!0),o.lineOptions.push(p.line),o.fillOptions.push(p.fill),o.markerOptions.push(p.marker),o.markerSelectedOptions.push(p.markerSel),o.markerUnselectedOptions.push(p.markerUnsel),o.textOptions.push(p.text),o.textSelectedOptions.push(p.textSel),o.textUnselectedOptions.push(p.textUnsel),o.selectBatch.push([]),o.unselectBatch.push([]),f.x=E,f.y=A,f.rawx=E,f.rawy=A,f.r=h,f.theta=d,f.positions=k,f._scene=o,f.index=o.count,o.count++}}),Mtr(t,r,n)}};uQ.exports.reglPrecompiled=Ctr});var SQe=Ae((HTr,AQe)=>{"use strict";var Ltr=E8(),Ptr=k8(),ztr=C8(),Itr=L8(),Rtr=P8(),Dtr=z8(),Ftr=I8(),Btr=R8(),Otr=D8(),qtr=F8();AQe.exports={"3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b":Ltr,cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81:Ptr,"8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623":ztr,fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7:Itr,db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d:Rtr,"49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210":Dtr,dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5:Ftr,bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019:Btr,"6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923":Otr,"8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034":qtr}});var EQe=Ae((WTr,MQe)=>{"use strict";var fQ=TQe(),Ntr=SQe(),Utr=AK();Object.assign(fQ.reglPrecompiled,Ntr);Object.assign(fQ.reglPrecompiled,Utr);MQe.exports=fQ});var LQe=Ae((jTr,CQe)=>{"use strict";var kQe=wQe();kQe.plot=EQe();CQe.exports=kQe});var cQ=Ae((XTr,PQe)=>{"use strict";var{hovertemplateAttrs:Vtr,templatefallbackAttrs:Gtr}=Ff(),KS=Su().extendFlat,zx=hC(),Ix=Ly();PQe.exports={r:zx.r,theta:zx.theta,r0:zx.r0,dr:zx.dr,theta0:zx.theta0,dtheta:zx.dtheta,thetaunit:zx.thetaunit,base:KS({},Ix.base,{}),offset:KS({},Ix.offset,{}),width:KS({},Ix.width,{}),text:KS({},Ix.text,{}),hovertext:KS({},Ix.hovertext,{}),marker:Htr(),hoverinfo:zx.hoverinfo,hovertemplate:Vtr(),hovertemplatefallback:Gtr(),selected:Ix.selected,unselected:Ix.unselected};function Htr(){var e=KS({},Ix.marker);return delete e.cornerradius,e}});var hQ=Ae((ZTr,zQe)=>{"use strict";zQe.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}});var DQe=Ae((YTr,RQe)=>{"use strict";var IQe=ei(),Wtr=PO().handleRThetaDefaults,jtr=VI(),Xtr=cQ();RQe.exports=function(t,r,n,i){function a(s,u){return IQe.coerce(t,r,Xtr,s,u)}var o=Wtr(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("base"),a("offset"),a("width"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),jtr(t,r,a,n,i),IQe.coerceSelectionMarkerOpacity(r,a)}});var BQe=Ae((KTr,FQe)=>{"use strict";var Ztr=ei(),Ytr=hQ();FQe.exports=function(e,t,r){var n={},i;function a(u,l){return Ztr.coerce(e[i]||{},t[i],Ytr,u,l)}for(var o=0;o{"use strict";var OQe=yp().hasColorscale,qQe=gp(),Ktr=ei().isArrayOrTypedArray,Jtr=mE(),$tr=Wb().setGroupPositions,Qtr=F0(),err=$l().traceIs,trr=ei().extendFlat;function rrr(e,t){for(var r=e._fullLayout,n=t.subplot,i=r[n].radialaxis,a=r[n].angularaxis,o=i.makeCalcdata(t,"r"),s=a.makeCalcdata(t,"theta"),u=t._length,l=new Array(u),f=o,c=s,h=0;h{"use strict";var UQe=Jl(),FO=ku(),JS=ei(),nrr=Mu(),pQ=bO();VQe.exports=function(t,r,n){var i=t._context.staticPlot,a=r.xaxis,o=r.yaxis,s=r.radialAxis,u=r.angularAxis,l=arr(r),f=r.layers.frontplot.select("g.barlayer");JS.makeTraceGroups(f,n,"trace bars").each(function(){var c=UQe.select(this),h=JS.ensureSingle(c,"g","points"),d=h.selectAll("g.point").data(JS.identity);d.enter().append("g").style("vector-effect",i?"none":"non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),d.exit().remove(),d.each(function(p){var _=UQe.select(this),b=p.rp0=s.c2p(p.s0),v=p.rp1=s.c2p(p.s1),k=p.thetag0=u.c2g(p.p0),E=p.thetag1=u.c2g(p.p1),A;if(!FO(b)||!FO(v)||!FO(k)||!FO(E)||b===v||k===E)A="M0,0Z";else{var L=s.c2g(p.s1),x=(k+E)/2;p.ct=[a.c2p(L*Math.cos(x)),o.c2p(L*Math.sin(x))],A=l(b,v,k,E)}JS.ensureSingle(_,"path").attr("d",A)}),nrr.setClipUrl(c,r._hasClipOnAxisFalse?r.clipIds.forTraces:null,t)})};function arr(e){var t=e.cxx,r=e.cyy;return e.vangles?function(n,i,a,o){var s,u;JS.angleDelta(a,o)>0?(s=a,u=o):(s=o,u=a);var l=pQ.findEnclosingVertexAngles(s,e.vangles)[0],f=pQ.findEnclosingVertexAngles(u,e.vangles)[1],c=[l,(s+u)/2,f];return pQ.pathPolygonAnnulus(n,i,s,u,c,t,r)}:function(n,i,a,o){return JS.pathAnnulus(n,i,a,o,t,r)}}});var WQe=Ae((QTr,HQe)=>{"use strict";var orr=Xc(),vQ=ei(),srr=ET().getTraceColor,lrr=vQ.fillText,urr=IO().makeHoverPointText,frr=bO().isPtInsidePolygon;HQe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.subplot,s=o.radialAxis,u=o.angularAxis,l=o.vangles,f=l?frr:vQ.isPtInsideSector,c=t.maxHoverDistance,h=u._period||2*Math.PI,d=Math.abs(s.g2p(Math.sqrt(r*r+n*n))),p=Math.atan2(n,r);s.range[0]>s.range[1]&&(p+=Math.PI);var _=function(E){return f(d,p,[E.rp0,E.rp1],[E.thetag0,E.thetag1],l)?c+Math.min(1,Math.abs(E.thetag1-E.thetag0)/h)-1+(E.rp1-d)/(E.rp1-E.rp0)-1:1/0};if(orr.getClosest(i,_,t),t.index!==!1){var b=t.index,v=i[b];t.x0=t.x1=v.ct[0],t.y0=t.y1=v.ct[1];var k=vQ.extendFlat({},v,{r:v.s,theta:v.p});return lrr(v,a,t),urr(k,a,o,t),t.hovertemplate=a.hovertemplate,t.color=srr(a,v),t.xLabelVal=t.yLabelVal=void 0,v.s<0&&(t.idealAlign="left"),[t]}}});var XQe=Ae((eAr,jQe)=>{"use strict";jQe.exports={moduleType:"trace",name:"barpolar",basePlotModule:kO(),categories:["polar","bar","showLegend"],attributes:cQ(),layoutAttributes:hQ(),supplyDefaults:DQe(),supplyLayoutDefaults:BQe(),calc:dQ().calc,crossTraceCalc:dQ().crossTraceCalc,plot:GQe(),colorbar:ep(),formatLabels:zO(),style:N0().style,styleOnSelect:N0().styleOnSelect,hoverPoints:WQe(),selectPoints:kT(),meta:{}}});var YQe=Ae((tAr,ZQe)=>{"use strict";ZQe.exports=XQe()});var mQ=Ae((rAr,KQe)=>{"use strict";KQe.exports={attr:"subplot",name:"smith",axisNames:["realaxis","imaginaryaxis"],axisName2dataArray:{imaginaryaxis:"imag",realaxis:"real"}}});var yQ=Ae((iAr,eet)=>{"use strict";var crr=Fh(),uh=Dd(),hrr=zc().attributes,Rx=ei().extendFlat,JQe=Sc().overrideAll,$Qe=JQe({color:uh.color,showline:Rx({},uh.showline,{dflt:!0}),linecolor:uh.linecolor,linewidth:uh.linewidth,showgrid:Rx({},uh.showgrid,{dflt:!0}),gridcolor:uh.gridcolor,gridwidth:uh.gridwidth,griddash:uh.griddash},"plot","from-root"),QQe=JQe({ticklen:uh.ticklen,tickwidth:Rx({},uh.tickwidth,{dflt:2}),tickcolor:uh.tickcolor,showticklabels:uh.showticklabels,labelalias:uh.labelalias,showtickprefix:uh.showtickprefix,tickprefix:uh.tickprefix,showticksuffix:uh.showticksuffix,ticksuffix:uh.ticksuffix,tickfont:uh.tickfont,tickformat:uh.tickformat,hoverformat:uh.hoverformat,layer:uh.layer},"plot","from-root"),drr=Rx({visible:Rx({},uh.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:"data_array",editType:"plot"},tickangle:Rx({},uh.tickangle,{dflt:90}),ticks:{valType:"enumerated",values:["top","bottom",""],editType:"ticks"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},editType:"calc"},$Qe,QQe),prr=Rx({visible:Rx({},uh.visible,{dflt:!0}),tickvals:{valType:"data_array",editType:"plot"},ticks:uh.ticks,editType:"calc"},$Qe,QQe);eet.exports={domain:hrr({name:"smith",editType:"plot"}),bgcolor:{valType:"color",editType:"plot",dflt:crr.background},realaxis:drr,imaginaryaxis:prr,editType:"calc"}});var iet=Ae((nAr,ret)=>{"use strict";var $S=ei(),vrr=jl(),mrr=Lf(),yrr=k_(),grr=Rd().getSubplotData,_rr=t_(),xrr=e_(),brr=tE(),wrr=gy(),QS=yQ(),gQ=mQ(),tet=gQ.axisNames,Trr=Srr(function(e){return $S.isTypedArray(e)&&(e=Array.from(e)),e.slice().reverse().map(function(t){return-t}).concat([0]).concat(e)},String);function Arr(e,t,r,n){var i=r("bgcolor");n.bgColor=vrr.combine(i,n.paper_bgcolor);var a=grr(n.fullData,gQ.name,n.id),o=n.layoutOut,s;function u(L,x){return r(s+"."+L,x)}for(var l=0;l{"use strict";var Mrr=Rd().getSubplotCalcData,Err=ei().counterRegex,krr=aQ(),aet=mQ(),oet=aet.attr,xw=aet.name,net=Err(xw),set={};set[oet]={valType:"subplotid",dflt:xw,editType:"calc"};function Crr(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[xw],i=0;i{"use strict";var{hovertemplateAttrs:Prr,texttemplateAttrs:zrr,templatefallbackAttrs:cet}=Ff(),BO=Su().extendFlat,Irr=Cm(),h0=Zc(),Rrr=Gf(),eM=h0.line;het.exports={mode:h0.mode,real:{valType:"data_array",editType:"calc+clearAxisTypes"},imag:{valType:"data_array",editType:"calc+clearAxisTypes"},text:h0.text,texttemplate:zrr({editType:"plot"},{keys:["real","imag","text"]}),texttemplatefallback:cet({editType:"plot"}),hovertext:h0.hovertext,line:{color:eM.color,width:eM.width,dash:eM.dash,backoff:eM.backoff,shape:BO({},eM.shape,{values:["linear","spline"]}),smoothing:eM.smoothing,editType:"calc"},connectgaps:h0.connectgaps,marker:h0.marker,cliponaxis:BO({},h0.cliponaxis,{dflt:!1}),textposition:h0.textposition,textfont:h0.textfont,fill:BO({},h0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:Irr(),hoverinfo:BO({},Rrr.hoverinfo,{flags:["real","imag","text","name"]}),hoveron:h0.hoveron,hovertemplate:Prr(),hovertemplatefallback:cet(),selected:h0.selected,unselected:h0.unselected}});var vet=Ae((sAr,pet)=>{"use strict";var OO=ei(),tM=lc(),Drr=$v(),Frr=I0(),det=tT(),Brr=R0(),Orr=Im(),qrr=Sy().PTS_LINESONLY,Nrr=_Q();pet.exports=function(t,r,n,i){function a(u,l){return OO.coerce(t,r,Nrr,u,l)}var o=Urr(t,r,i,a);if(!o){r.visible=!1;return}a("mode",o{"use strict";var met=wu();yet.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.realLabel=met.tickText(a.radialAxis,t.real,!0).text,i.imagLabel=met.tickText(a.angularAxis,t.imag,!0).text,i}});var bet=Ae((uAr,xet)=>{"use strict";var _et=ku(),Vrr=rf().BADNUM,Grr=D0(),Hrr=ky(),Wrr=F0(),jrr=B0().calcMarkerSize;xet.exports=function(t,r){for(var n=t._fullLayout,i=r.subplot,a=n[i].realaxis,o=n[i].imaginaryaxis,s=a.makeCalcdata(r,"real"),u=o.makeCalcdata(r,"imag"),l=r._length,f=new Array(l),c=0;c{"use strict";var Xrr=sT(),wet=rf().BADNUM,Zrr=rQ(),Yrr=Zrr.smith;Tet.exports=function(t,r,n){for(var i=r.layers.frontplot.select("g.scatterlayer"),a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},u=0;u{"use strict";var Krr=cT();function Jrr(e,t,r,n){var i=Krr(e,t,r,n);if(!(!i||i[0].index===!1)){var a=i[0];if(a.index===void 0)return i;var o=e.subplot,s=a.cd[a.index],u=a.trace;if(o.isPtInside(s))return a.xLabelVal=void 0,a.yLabelVal=void 0,Met(s,u,o,a),a.hovertemplate=u.hovertemplate,i}}function Met(e,t,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle="real",a._hovertitle="imag";var o={};o[t.subplot]={_subplot:r};var s=t._module.formatLabels(e,t,o);n.realLabel=s.realLabel,n.imagLabel=s.imagLabel;var u=e.hi||t.hoverinfo,l=[];function f(h,d){l.push(h._hovertitle+": "+d)}if(!t.hovertemplate){var c=u.split("+");c.indexOf("all")!==-1&&(c=["real","imag","text"]),c.indexOf("real")!==-1&&f(i,n.realLabel),c.indexOf("imag")!==-1&&f(a,n.imagLabel),c.indexOf("text")!==-1&&n.text&&(l.push(n.text),delete n.text),n.extraText=l.join("
")}}Eet.exports={hoverPoints:Jrr,makeHoverPointText:Met}});var Let=Ae((hAr,Cet)=>{"use strict";Cet.exports={moduleType:"trace",name:"scattersmith",basePlotModule:fet(),categories:["smith","symbols","showLegend","scatter-like"],attributes:_Q(),supplyDefaults:vet(),colorbar:ep(),formatLabels:get(),calc:bet(),plot:Aet(),style:ov().style,styleOnSelect:ov().styleOnSelect,hoverPoints:ket().hoverPoints,selectPoints:hT(),meta:{}}});var zet=Ae((dAr,Pet)=>{"use strict";Pet.exports=Let()});var Lp=Ae((pAr,Ret)=>{var NO=Gh();function Iet(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}NO(Iet.prototype,{instance:function(e,t){e=(e||"gregorian").toLowerCase(),t=t||"";var r=this._localCals[e+"-"+t];if(!r&&this.calendars[e]&&(r=new this.calendars[e](t),this._localCals[e+"-"+t]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return r},newDate:function(e,t,r,n,i){return n=(e!=null&&e.year?e.calendar():typeof n=="string"?this.instance(n,i):n)||this.instance(),n.newDate(e,t,r)},substituteDigits:function(e){return function(t){return(t+"").replace(/[0-9]/g,function(r){return e[r]})}},substituteChineseDigits:function(e,t){return function(r){for(var n="",i=0;r>0;){var a=r%10;n=(a===0?"":e[a]+t[i])+n,i++,r=Math.floor(r/10)}return n.indexOf(e[1]+t[1])===0&&(n=n.substr(1)),n||e[0]}}});function xQ(e,t,r,n){if(this._calendar=e,this._year=t,this._month=r,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(wf.local.invalidDate||wf.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function qO(e,t){return e=""+e,"000000".substring(0,t-e.length)+e}NO(xQ.prototype,{newDate:function(e,t,r){return this._calendar.newDate(e==null?this:e,t,r)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,t,r){if(!this._calendar.isValid(e,t,r))throw(wf.local.invalidDate||wf.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=t,this._day=r,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,t){return this._calendar.add(this,e,t)},set:function(e,t){return this._calendar.set(this,e,t)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(wf.local.differentCalendars||wf.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var t=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return t===0?0:t<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+qO(Math.abs(this.year()),4)+"-"+qO(this.month(),2)+"-"+qO(this.day(),2)}});function bQ(){this.shortYearCutoff="+10"}NO(bQ.prototype,{_validateLevel:0,newDate:function(e,t,r){return e==null?this.today():(e.year&&(this._validate(e,t,r,wf.local.invalidDate||wf.regionalOptions[""].invalidDate),r=e.day(),t=e.month(),e=e.year()),new xQ(this,e,t,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var t=this._validate(e,this.minMonth,this.minDay,wf.local.invalidYear||wf.regionalOptions[""].invalidYear);return t.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,wf.local.invalidYear||wf.regionalOptions[""].invalidYear);return(t.year()<0?"-":"")+qO(Math.abs(t.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,wf.local.invalidYear||wf.regionalOptions[""].invalidYear),12},monthOfYear:function(e,t){var r=this._validate(e,t,this.minDay,wf.local.invalidMonth||wf.regionalOptions[""].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(e,t){var r=(t+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,r,this.minDay,wf.local.invalidMonth||wf.regionalOptions[""].invalidMonth),r},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,wf.local.invalidYear||wf.regionalOptions[""].invalidYear);return this.leapYear(t)?366:365},dayOfYear:function(e,t,r){var n=this._validate(e,t,r,wf.local.invalidDate||wf.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,wf.local.invalidDate||wf.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(e,t,r){return this._validate(e,t,r,wf.local.invalidDate||wf.regionalOptions[""].invalidDate),{}},add:function(e,t,r){return this._validate(e,this.minMonth,this.minDay,wf.local.invalidDate||wf.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,t,r),t,r)},_add:function(e,t,r){if(this._validateLevel++,r==="d"||r==="w"){var n=e.toJD()+t*(r==="w"?this.daysInWeek():1),i=e.calendar().fromJD(n);return this._validateLevel--,[i.year(),i.month(),i.day()]}try{var a=e.year()+(r==="y"?t:0),o=e.monthOfYear()+(r==="m"?t:0),i=e.day(),s=function(f){for(;oc-1+f.minMonth;)a++,o-=c,c=f.monthsInYear(a)};r==="y"?(e.month()!==this.fromMonthOfYear(a,o)&&(o=this.newDate(a,e.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(a)),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o)))):r==="m"&&(s(this),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o))));var u=[a,this.fromMonthOfYear(a,o),i];return this._validateLevel--,u}catch(l){throw this._validateLevel--,l}},_correctAdd:function(e,t,r,n){if(!this.hasYearZero&&(n==="y"||n==="m")&&(t[0]===0||e.year()>0!=t[0]>0)){var i={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],a=r<0?-1:1;t=this._add(e,r*i[0]+a*i[1],i[2])}return e.date(t[0],t[1],t[2])},set:function(e,t,r){this._validate(e,this.minMonth,this.minDay,wf.local.invalidDate||wf.regionalOptions[""].invalidDate);var n=r==="y"?t:e.year(),i=r==="m"?t:e.month(),a=r==="d"?t:e.day();return(r==="y"||r==="m")&&(a=Math.min(a,this.daysInMonth(n,i))),e.date(n,i,a)},isValid:function(e,t,r){this._validateLevel++;var n=this.hasYearZero||e!==0;if(n){var i=this.newDate(e,t,this.minDay);n=t>=this.minMonth&&t-this.minMonth=this.minDay&&r-this.minDay13.5?13:1),l=i-(u>2.5?4716:4715);return l<=0&&l--,this.newDate(l,u,s)},toJSDate:function(e,t,r){var n=this._validate(e,t,r,wf.local.invalidDate||wf.regionalOptions[""].invalidDate),i=new Date(n.year(),n.month()-1,n.day());return i.setHours(0),i.setMinutes(0),i.setSeconds(0),i.setMilliseconds(0),i.setHours(i.getHours()>12?i.getHours()+2:0),i},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var wf=Ret.exports=new Iet;wf.cdate=xQ;wf.baseCalendar=bQ;wf.calendars.gregorian=wQ});var Det=Ae(()=>{var TQ=Gh(),Gd=Lp();TQ(Gd.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});Gd.local=Gd.regionalOptions[""];TQ(Gd.cdate.prototype,{formatDate:function(e,t){return typeof e!="string"&&(t=e,e=""),this._calendar.formatDate(e||"",this,t)}});TQ(Gd.baseCalendar.prototype,{UNIX_EPOCH:Gd.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:Gd.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,t,r){if(typeof e!="string"&&(r=t,t=e,e=""),!t)return"";if(t.calendar()!==this)throw Gd.local.invalidFormat||Gd.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,r=r||{};for(var n=r.dayNamesShort||this.local.dayNamesShort,i=r.dayNames||this.local.dayNames,a=r.monthNumbers||this.local.monthNumbers,o=r.monthNamesShort||this.local.monthNamesShort,s=r.monthNames||this.local.monthNames,u=r.calculateWeek||this.local.calculateWeek,l=function(A,L){for(var x=1;E+x1},f=function(A,L,x,C){var M=""+L;if(l(A,C))for(;M.length1},k=function(B,F){var U=v(B,F),G=[2,3,U?4:2,U?4:2,10,11,20]["oyYJ@!".indexOf(B)+1],j=new RegExp("^-?\\d{1,"+G+"}"),W=t.substring(M).match(j);if(!W)throw(Gd.local.missingNumberAt||Gd.regionalOptions[""].missingNumberAt).replace(/\{0\}/,M);return M+=W[0].length,parseInt(W[0],10)},E=this,A=function(){if(typeof s=="function"){v("m");var B=s.call(E,t.substring(M));return M+=B.length,B}return k("m")},L=function(B,F,U,G){for(var j=v(B,G)?U:F,W=0;W-1){h=1,d=p;for(var T=this.daysInMonth(c,h);d>T;T=this.daysInMonth(c,h))h++,d-=T}return f>-1?this.fromJD(f):this.newDate(c,h,d)},determineDate:function(e,t,r,n,i){r&&typeof r!="object"&&(i=n,n=r,r=null),typeof n!="string"&&(i=n,n="");var a=this,o=function(s){try{return a.parseDate(n,s,i)}catch(c){}s=s.toLowerCase();for(var u=(s.match(/^c/)&&r?r.newDate():null)||a.today(),l=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,f=l.exec(s);f;)u.add(parseInt(f[1],10),f[2]||"d"),f=l.exec(s);return u};return t=t?t.newDate():null,e=e==null?t:typeof e=="string"?o(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?t:a.today().add(e,"d"):a.newDate(e),e}})});var Fet=Ae(()=>{var Dx=Lp(),$rr=Gh(),AQ=Dx.instance();function UO(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}UO.prototype=new Dx.baseCalendar;$rr(UO.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,t){if(typeof e=="string"){var r=e.match(eir);return r?r[0]:""}var n=this._validateYear(e),i=e.month(),a=""+this.toChineseMonth(n,i);return t&&a.length<2&&(a="0"+a),this.isIntercalaryMonth(n,i)&&(a+="i"),a},monthNames:function(e){if(typeof e=="string"){var t=e.match(tir);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},monthNamesShort:function(e){if(typeof e=="string"){var t=e.match(rir);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},parseMonth:function(e,t){e=this._validateYear(e);var r=parseInt(t),n;if(isNaN(r))t[0]==="\u95F0"&&(n=!0,t=t.substring(1)),t[t.length-1]==="\u6708"&&(t=t.substring(0,t.length-1)),r=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(t);else{var i=t[t.length-1];n=i==="i"||i==="I"}var a=this.toMonthIndex(e,r,n);return a},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,t){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw t.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,t,r){var n=this.intercalaryMonth(e),i=r&&t!==n;if(i||t<1||t>12)throw Dx.local.invalidMonth.replace(/\{0\}/,this.local.name);var a;return n?!r&&t<=n?a=t-1:a=t:a=t-1,a},toChineseMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e),n=r?12:11;if(t<0||t>n)throw Dx.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return r?t>13;return r},isIntercalaryMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e);return!!r&&r===t},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,t,r){var n=this._validateYear(e,Dx.local.invalidyear),i=Bx[n-Bx[0]],a=i>>9&4095,o=i>>5&15,s=i&31,u;u=AQ.newDate(a,o,s),u.add(4-(u.dayOfWeek()||7),"d");var l=this.toJD(e,t,r)-u.toJD();return 1+Math.floor(l/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,t){e.year&&(t=e.month(),e=e.year()),e=this._validateYear(e);var r=Fx[e-Fx[0]],n=r>>13,i=n?12:11;if(t>i)throw Dx.local.invalidMonth.replace(/\{0\}/,this.local.name);var a=r&1<<12-t?30:29;return a},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,a,r,Dx.local.invalidDate);e=this._validateYear(n.year()),t=n.month(),r=n.day();var i=this.isIntercalaryMonth(e,t),a=this.toChineseMonth(e,t),o=nir(e,a,r,i);return AQ.toJD(o.year,o.month,o.day)},fromJD:function(e){var t=AQ.fromJD(e),r=iir(t.year(),t.month(),t.day()),n=this.toMonthIndex(r.year,r.month,r.isIntercalary);return this.newDate(r.year,n,r.day)},fromString:function(e){var t=e.match(Qrr),r=this._validateYear(+t[1]),n=+t[2],i=!!t[3],a=this.toMonthIndex(r,n,i),o=+t[4];return this.newDate(r,a,o)},add:function(e,t,r){var n=e.year(),i=e.month(),a=this.isIntercalaryMonth(n,i),o=this.toChineseMonth(n,i),s=Object.getPrototypeOf(UO.prototype).add.call(this,e,t,r);if(r==="y"){var u=s.year(),l=s.month(),f=this.isIntercalaryMonth(u,o),c=a&&f?this.toMonthIndex(u,o,!0):this.toMonthIndex(u,o,!1);c!==l&&s.month(c)}return s}});var Qrr=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,eir=/^\d?\d[iI]?/m,tir=/^闰?十?[一二三四五六七八九]?月/m,rir=/^闰?十?[一二三四五六七八九]?/m;Dx.calendars.chinese=UO;var Fx=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],Bx=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function iir(e,t,r,n){var i,a;if(typeof e=="object")i=e,a=t||{};else{var o=typeof e=="number"&&e>=1888&&e<=2111;if(!o)throw new Error("Solar year outside range 1888-2111");var s=typeof t=="number"&&t>=1&&t<=12;if(!s)throw new Error("Solar month outside range 1 - 12");var u=typeof r=="number"&&r>=1&&r<=31;if(!u)throw new Error("Solar day outside range 1 - 31");i={year:e,month:t,day:r},a=n||{}}var l=Bx[i.year-Bx[0]],f=i.year<<9|i.month<<5|i.day;a.year=f>=l?i.year:i.year-1,l=Bx[a.year-Bx[0]];var c=l>>9&4095,h=l>>5&15,d=l&31,p,_=new Date(c,h-1,d),b=new Date(i.year,i.month-1,i.day);p=Math.round((b-_)/(24*3600*1e3));var v=Fx[a.year-Fx[0]],k;for(k=0;k<13;k++){var E=v&1<<12-k?30:29;if(p>13;return!A||k=1888&&e<=2111;if(!s)throw new Error("Lunar year outside range 1888-2111");var u=typeof t=="number"&&t>=1&&t<=12;if(!u)throw new Error("Lunar month outside range 1 - 12");var l=typeof r=="number"&&r>=1&&r<=30;if(!l)throw new Error("Lunar day outside range 1 - 30");var f;typeof n=="object"?(f=!1,a=n):(f=!!n,a=i||{}),o={year:e,month:t,day:r,isIntercalary:f}}var c;c=o.day-1;var h=Fx[o.year-Fx[0]],d=h>>13,p;d&&(o.month>d||o.isIntercalary)?p=o.month:p=o.month-1;for(var _=0;_>9&4095,E=v>>5&15,A=v&31,L=new Date(k,E-1,A+c);return a.year=L.getFullYear(),a.month=1+L.getMonth(),a.day=L.getDate(),a}});var Bet=Ae(()=>{var bw=Lp(),air=Gh();function SQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}SQ.prototype=new bw.baseCalendar;air(SQ.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,bw.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,bw.local.invalidYear||bw.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,bw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,bw.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-(n-1)*30+1;return this.newDate(r,n,i)}});bw.calendars.coptic=SQ});var Oet=Ae(()=>{var x1=Lp(),oir=Gh();function MQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}MQ.prototype=new x1.baseCalendar;oir(MQ.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),400},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/8)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,x1.local.invalidMonth);return this.daysPerMonth[r.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return(n.day()+1)%8},weekDay:function(e,t,r){var n=this.dayOfWeek(e,t,r);return n>=2&&n<=6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return{century:sir[Math.floor((n.year()-1)/100)+1]||""}},toJD:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return e=n.year()+(n.year()<0?1:0),t=n.month(),r=n.day(),r+(t>1?16:0)+(t>2?(t-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var t=Math.floor(e/400)+1;e-=(t-1)*400,e+=e>15?16:0;var r=Math.floor(e/32)+1,n=e-(r-1)*32+1;return this.newDate(t<=0?t-1:t,r,n)}});var sir={20:"Fruitbat",21:"Anchovy"};x1.calendars.discworld=MQ});var qet=Ae(()=>{var ww=Lp(),lir=Gh();function EQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}EQ.prototype=new ww.baseCalendar;lir(EQ.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,ww.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ww.local.invalidYear||ww.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,ww.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,ww.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-(n-1)*30+1;return this.newDate(r,n,i)}});ww.calendars.ethiopian=EQ});var Net=Ae(()=>{var Ox=Lp(),uir=Gh();function kQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}kQ.prototype=new Ox.baseCalendar;uir(kQ.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Ox.local.invalidYear);return this._leapYear(t.year())},_leapYear:function(e){return e=e<0?e+1:e,VO(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ox.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Ox.local.invalidYear);return e=t.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,Ox.local.invalidMonth),t===12&&this.leapYear(e)||t===8&&VO(this.daysInYear(e),10)===5?30:t===9&&VO(this.daysInYear(e),10)===3?29:this.daysPerMonth[t-1]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,Ox.local.invalidDate);return{yearType:(this.leapYear(n)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(n)%10-3]}},toJD:function(e,t,r){var n=this._validate(e,t,r,Ox.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=e<=0?e+1:e,a=this.jdEpoch+this._delay1(i)+this._delay2(i)+r+1;if(t<7){for(var o=7;o<=this.monthsInYear(e);o++)a+=this.daysInMonth(e,o);for(var o=1;o=this.toJD(t===-1?1:t+1,7,1);)t++;for(var r=ethis.toJD(t,r,this.daysInMonth(t,r));)r++;var n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}});function VO(e,t){return e-t*Math.floor(e/t)}Ox.calendars.hebrew=kQ});var Uet=Ae(()=>{var dC=Lp(),fir=Gh();function CQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}CQ.prototype=new dC.baseCalendar;fir(CQ.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,dC.local.invalidYear);return(t.year()*11+14)%30<11},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,dC.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,dC.local.invalidDate);return e=n.year(),t=n.month(),r=n.day(),e=e<=0?e+1:e,r+Math.ceil(29.5*(t-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=Math.floor((30*(e-this.jdEpoch)+10646)/10631);t=t<=0?t-1:t;var r=Math.min(12,Math.ceil((e-29-this.toJD(t,1,1))/29.5)+1),n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}});dC.calendars.islamic=CQ});var Vet=Ae(()=>{var pC=Lp(),cir=Gh();function LQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}LQ.prototype=new pC.baseCalendar;cir(LQ.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,pC.local.invalidYear),r=t.year()<0?t.year()+1:t.year();return r%4===0},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,pC.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,pC.local.invalidDate);return e=n.year(),t=n.month(),r=n.day(),e<0&&e++,t<=2&&(e--,t+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(t+1))+r-1524.5},fromJD:function(e){var t=Math.floor(e+.5),r=t+1524,n=Math.floor((r-122.1)/365.25),i=Math.floor(365.25*n),a=Math.floor((r-i)/30.6001),o=a-Math.floor(a<14?1:13),s=n-Math.floor(o>2?4716:4715),u=r-i-Math.floor(30.6001*a);return s<=0&&s--,this.newDate(s,o,u)}});pC.calendars.julian=LQ});var Het=Ae(()=>{var um=Lp(),hir=Gh();function zQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}zQ.prototype=new um.baseCalendar;hir(zQ.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,um.local.invalidYear),!1},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,um.local.invalidYear);e=t.year();var r=Math.floor(e/400);e=e%400,e+=e<0?400:0;var n=Math.floor(e/20);return r+"."+n+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var t=0,r=0;r19||r>0&&n<0)throw"Invalid Mayan year";t=t*20+n}return t},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,um.local.invalidYear),18},weekOfYear:function(e,t,r){return this._validate(e,t,r,um.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,um.local.invalidYear),360},daysInMonth:function(e,t){return this._validate(e,t,this.minDay,um.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,um.local.invalidDate);return n.day()},weekDay:function(e,t,r){return this._validate(e,t,r,um.local.invalidDate),!0},extraInfo:function(e,t,r){var n=this._validate(e,t,r,um.local.invalidDate),i=n.toJD(),a=this._toHaab(i),o=this._toTzolkin(i);return{haabMonthName:this.local.haabMonths[a[0]-1],haabMonth:a[0],haabDay:a[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(e){e-=this.jdEpoch;var t=PQ(e+8+17*20,365);return[Math.floor(t/20)+1,PQ(t,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[Get(e+20,20),Get(e+4,13)]},toJD:function(e,t,r){var n=this._validate(e,t,r,um.local.invalidDate);return n.day()+n.month()*20+n.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var t=Math.floor(e/360);e=e%360,e+=e<0?360:0;var r=Math.floor(e/20),n=e%20;return this.newDate(t,r,n)}});function PQ(e,t){return e-t*Math.floor(e/t)}function Get(e,t){return PQ(e-1,t)+1}um.calendars.mayan=zQ});var jet=Ae(()=>{var Tw=Lp(),dir=Gh();function IQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}IQ.prototype=new Tw.baseCalendar;var Wet=Tw.instance("gregorian");dir(IQ.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Tw.local.invalidYear||Tw.regionalOptions[""].invalidYear);return Wet.leapYear(t.year()+(t.year()<1?1:0)+1469)},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Tw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Tw.local.invalidMonth),i=n.year();i<0&&i++;for(var a=n.day(),o=1;o=this.toJD(t+1,1,1);)t++;for(var r=e-Math.floor(this.toJD(t,1,1)+.5)+1,n=1;r>this.daysInMonth(t,n);)r-=this.daysInMonth(t,n),n++;return this.newDate(t,n,r)}});Tw.calendars.nanakshahi=IQ});var Xet=Ae(()=>{var Aw=Lp(),pir=Gh();function RQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}RQ.prototype=new Aw.baseCalendar;pir(RQ.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Aw.local.invalidYear);if(e=t.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var r=0,n=this.minMonth;n<=12;n++)r+=this.NEPALI_CALENDAR_DATA[e][n];return r},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,Aw.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[t-1]:this.NEPALI_CALENDAR_DATA[e][t]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},toJD:function(e,t,r){var n=this._validate(e,t,r,Aw.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=Aw.instance(),a=0,o=t,s=e;this._createMissingCalendarData(e);var u=e-(o>9||o===9&&r>=this.NEPALI_CALENDAR_DATA[s][0]?56:57);for(t!==9&&(a=r,o--);o!==9;)o<=0&&(o=12,s--),a+=this.NEPALI_CALENDAR_DATA[s][o],o--;return t===9?(a+=r-this.NEPALI_CALENDAR_DATA[s][0],a<0&&(a+=i.daysInYear(u))):a+=this.NEPALI_CALENDAR_DATA[s][9]-this.NEPALI_CALENDAR_DATA[s][0],i.newDate(u,1,1).add(a,"d").toJD()},fromJD:function(e){var t=Aw.instance(),r=t.fromJD(e),n=r.year(),i=r.dayOfYear(),a=n+56;this._createMissingCalendarData(a);for(var o=9,s=this.NEPALI_CALENDAR_DATA[a][0],u=this.NEPALI_CALENDAR_DATA[a][o]-s+1;i>u;)o++,o>12&&(o=1,a++),u+=this.NEPALI_CALENDAR_DATA[a][o];var l=this.NEPALI_CALENDAR_DATA[a][o]-(u-i);return this.newDate(a,o,l)},_createMissingCalendarData:function(e){var t=this.daysPerMonth.slice(0);t.unshift(17);for(var r=e-1;r{var rM=Lp(),vir=Gh();function HO(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function GO(e){var t=e-475;e<0&&t++;var r=.242197,n=r*t,i=r*(t+1),a=n-Math.floor(n),o=i-Math.floor(i);return a>o}HO.prototype=new rM.baseCalendar;vir(HO.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,rM.local.invalidYear);return GO(t.year())},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-((n.dayOfWeek()+1)%7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,rM.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,rM.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=0;if(e>0)for(var a=1;a0?e-1:e)*365+i+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=475+(e-this.toJD(475,1,1))/365.242197,r=Math.floor(t);r<=0&&r--,e>this.toJD(r,12,GO(r)?30:29)&&(r++,r===0&&r++);var n=e-this.toJD(r,1,1)+1,i=n<=186?Math.ceil(n/31):Math.ceil((n-6)/30),a=e-this.toJD(r,i,1)+1;return this.newDate(r,i,a)}});rM.calendars.persian=HO;rM.calendars.jalali=HO});var Yet=Ae(()=>{var Sw=Lp(),mir=Gh(),WO=Sw.instance();function DQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}DQ.prototype=new Sw.baseCalendar;mir(DQ.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Sw.local.invalidYear),r=this._t2gYear(t.year());return WO.leapYear(r)},weekOfYear:function(i,t,r){var n=this._validate(i,this.minMonth,this.minDay,Sw.local.invalidYear),i=this._t2gYear(n.year());return WO.weekOfYear(i,n.month(),n.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Sw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Sw.local.invalidDate),i=this._t2gYear(n.year());return WO.toJD(i,n.month(),n.day())},fromJD:function(e){var t=WO.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Sw.calendars.taiwan=DQ});var Ket=Ae(()=>{var Mw=Lp(),yir=Gh(),jO=Mw.instance();function FQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}FQ.prototype=new Mw.baseCalendar;yir(FQ.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Mw.local.invalidYear),r=this._t2gYear(t.year());return jO.leapYear(r)},weekOfYear:function(i,t,r){var n=this._validate(i,this.minMonth,this.minDay,Mw.local.invalidYear),i=this._t2gYear(n.year());return jO.weekOfYear(i,n.month(),n.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Mw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Mw.local.invalidDate),i=this._t2gYear(n.year());return jO.toJD(i,n.month(),n.day())},fromJD:function(e){var t=jO.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});Mw.calendars.thai=FQ});var Jet=Ae(()=>{var Ew=Lp(),gir=Gh();function BQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}BQ.prototype=new Ew.baseCalendar;gir(BQ.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Ew.local.invalidYear);return this.daysInYear(t.year())===355},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var t=0,r=1;r<=12;r++)t+=this.daysInMonth(e,r);return t},daysInMonth:function(e,t){for(var r=this._validate(e,t,this.minDay,Ew.local.invalidMonth),n=r.toJD()-24e5+.5,i=0,a=0;an)return qx[i]-qx[i-1];i++}return 30},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,Ew.local.invalidDate),i=12*(n.year()-1)+n.month()-15292,a=n.day()+qx[i-1]-1;return a+24e5-.5},fromJD:function(e){for(var t=e-24e5+.5,r=0,n=0;nt);n++)r++;var i=r+15292,a=Math.floor((i-1)/12),o=a+1,s=i-12*a,u=t-qx[r-1]+1;return this.newDate(o,s,u)},isValid:function(e,t,r){var n=Ew.baseCalendar.prototype.isValid.apply(this,arguments);return n&&(e=e.year!=null?e.year:e,n=e>=1276&&e<=1500),n},_validate:function(e,t,r,n){var i=Ew.baseCalendar.prototype._validate.apply(this,arguments);if(i.year<1276||i.year>1500)throw n.replace(/\{0\}/,this.local.name);return i}});Ew.calendars.ummalqura=BQ;var qx=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var Qet=Ae((WAr,$et)=>{"use strict";$et.exports=Lp();Det();Fet();Bet();Oet();qet();Net();Uet();Vet();Het();jet();Xet();Zet();Yet();Ket();Jet()});var ott=Ae((jAr,att)=>{"use strict";var ttt=Qet(),vC=ei(),rtt=rf(),_ir=rtt.EPOCHJD,xir=rtt.ONEDAY,NQ={valType:"enumerated",values:vC.sortObjectKeys(ttt.calendars),editType:"calc",dflt:"gregorian"},itt=function(e,t,r,n){var i={};return i[r]=NQ,vC.coerce(e,t,i,r,n)},bir=function(e,t,r,n){for(var i=0;i{"use strict";stt.exports=ott()});var Eir=Ae((ZAr,ftt)=>{var utt=vge();utt.register([g1e(),a_e(),_xe(),Nxe(),ebe(),Kbe(),u2e(),K2e(),Swe(),s3e(),Z3e(),oke(),Yke(),NLe(),kPe(),aze(),Cze(),eRe(),_Re(),BRe(),YRe(),uDe(),ADe(),NDe(),pFe(),RFe(),u7e(),hUe(),IVe(),aGe(),vHe(),LHe(),eWe(),hje(),Eje(),Jje(),oZe(),LZe(),cYe(),IKe(),iJe(),AJe(),KJe(),f$e(),uQe(),LQe(),YQe(),zet(),ltt()]);ftt.exports=utt});return Eir();})(); /*! * pad-left * diff --git a/dist/plotly-with-meta.js b/dist/plotly-with-meta.js index e49f434cbb1..5efc713096a 100644 --- a/dist/plotly-with-meta.js +++ b/dist/plotly-with-meta.js @@ -1,5 +1,5 @@ /** -* plotly.js v3.3.0 +* plotly.js v3.3.1 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -81,7 +81,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.3.0"; + exports.version = "3.3.1"; } }); @@ -8789,7 +8789,7 @@ var Plotly = (() => { var isArrayOrTypedArray = require_array().isArrayOrTypedArray; module.exports = function nestedProperty(container, propStr) { if (isNumeric(propStr)) propStr = String(propStr); - else if (typeof propStr !== "string" || propStr.substr(propStr.length - 4) === "[-1]") { + else if (typeof propStr !== "string" || propStr.slice(-4) === "[-1]") { throw "bad property string"; } var propParts = propStr.split("."); @@ -8808,7 +8808,7 @@ var Plotly = (() => { if (indexed[1]) propParts[j] = indexed[1]; else if (j === 0) propParts.splice(0, 1); else throw "bad property string"; - indices = indexed[2].substr(1, indexed[2].length - 2).split("]["); + indices = indexed[2].slice(1, -1).split("]["); for (i = 0; i < indices.length; i++) { j++; propParts.splice(j, 0, Number(indices[i])); @@ -11119,11 +11119,11 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { key = keys[i]; val = container[key]; - if (key.substr(key.length - 5) === "color") { + if (key.slice(-5) === "color") { if (Array.isArray(val)) { for (j = 0; j < val.length; j++) val[j] = cleanOne(val[j]); } else container[key] = cleanOne(val); - } else if (key.substr(key.length - 10) === "colorscale" && Array.isArray(val)) { + } else if (key.slice(-10) === "colorscale" && Array.isArray(val)) { for (j = 0; j < val.length; j++) { if (Array.isArray(val[j])) val[j][1] = cleanOne(val[j][1]); } @@ -11138,7 +11138,7 @@ var Plotly = (() => { function cleanOne(val) { if (isNumeric(val) || typeof val !== "string") return val; var valTrim = val.trim(); - if (valTrim.substr(0, 3) !== "rgb") return val; + if (valTrim.slice(0, 3) !== "rgb") return val; var match = valTrim.match(/^rgba?\s*\(([^()]*)\)$/); if (!match) return val; var parts = match[1].trim().split(/\s*[\s,]\s*/); @@ -11266,7 +11266,7 @@ var Plotly = (() => { for (var i = 0; i < values.length; i++) { var k = String(values[i]); if (k.charAt(0) === "/" && k.charAt(k.length - 1) === "/") { - var regex = new RegExp(k.substr(1, k.length - 2)); + var regex = new RegExp(k.slice(1, -1)); if (regex.test(v)) return true; } else if (v === values[i]) return true; } @@ -11276,10 +11276,14 @@ var Plotly = (() => { boolean: { description: "A boolean (true/false) value.", requiredOpts: [], - otherOpts: ["dflt"], - coerceFunction: function(v, propOut, dflt) { - if (v === true || v === false) propOut.set(v); - else propOut.set(dflt); + otherOpts: ["dflt", "arrayOk"], + coerceFunction: function(v, propOut, dflt, opts) { + const isBoolean = (value) => value === true || value === false; + if (isBoolean(v) || opts.arrayOk && Array.isArray(v) && v.length > 0 && v.every(isBoolean)) { + propOut.set(v); + } else { + propOut.set(dflt); + } } }, number: { @@ -11407,14 +11411,15 @@ var Plotly = (() => { "'geo', 'geo2', 'geo3', ..." ].join(" "), requiredOpts: ["dflt"], - otherOpts: ["regex"], + otherOpts: ["regex", "arrayOk"], coerceFunction: function(v, propOut, dflt, opts) { var regex = opts.regex || counterRegex(dflt); - if (typeof v === "string" && regex.test(v)) { + const isSubplotId = (value) => typeof value === "string" && regex.test(value); + if (isSubplotId(v) || opts.arrayOk && isArrayOrTypedArray(v) && v.length > 0 && v.every(isSubplotId)) { propOut.set(v); - return; + } else { + propOut.set(dflt); } - propOut.set(dflt); }, validateFunction: function(v, opts) { var dflt = opts.dflt; @@ -14850,9 +14855,9 @@ var Plotly = (() => { var require_maplibre_gl = __commonJS({ "node_modules/maplibre-gl/dist/maplibre-gl.css"() { (function() { - if (!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")) { + if (!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")) { var e = document.createElement("style"); - e.id = "ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe"; + e.id = "696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97"; e.textContent = `.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`; document.head.appendChild(e); } @@ -15175,10 +15180,10 @@ var Plotly = (() => { var isWorld = isWorldCalendar(calendar); var s0 = s.charAt(0); if (isWorld && (s0 === "G" || s0 === "g")) { - s = s.substr(1); + s = s.slice(1); calendar = ""; } - var isChinese = isWorld && calendar.substr(0, 7) === "chinese"; + var isChinese = isWorld && calendar.slice(0, 7) === "chinese"; var match = s.match(isChinese ? DATETIME_REGEXP_CN : DATETIME_REGEXP); if (!match) return BADNUM; var y = match[1]; @@ -15222,7 +15227,7 @@ var Plotly = (() => { return exports.dateTime2ms(s, calendar) !== BADNUM; }; function lpad(val, digits) { - return String(val + Math.pow(10, digits)).substr(1); + return String(val + Math.pow(10, digits)).slice(1); } var NINETYDAYS = 90 * ONEDAY; var THREEHOURS = 3 * ONEHOUR; @@ -15242,7 +15247,7 @@ var Plotly = (() => { dateStr = utcFormat("G%Y-%m-%d")(new Date(msRounded)); } if (dateStr.charAt(0) === "-") { - while (dateStr.length < 11) dateStr = "-0" + dateStr.substr(1); + while (dateStr.length < 11) dateStr = "-0" + dateStr.slice(1); } else { while (dateStr.length < 10) dateStr = "0" + dateStr; } @@ -15314,7 +15319,7 @@ var Plotly = (() => { function modDateFormat(fmt, x, formatter, calendar) { fmt = fmt.replace(fracMatch, function(match) { var digits = Math.min(+match.charAt(1) || 6, 6); - var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).substr(2).replace(/0+$/, "") || "0"; + var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).slice(2).replace(/0+$/, "") || "0"; return fracSecs; }); var d = new Date(Math.floor(x + 0.05)); @@ -15337,7 +15342,7 @@ var Plotly = (() => { if (tr !== "M") { if (!isNumeric(tr)) tr = 0; var sec = Math.min(mod(x / ONESEC, 60), MAXSECONDS[tr]); - var secStr = (100 + sec).toFixed(tr).substr(1); + var secStr = (100 + sec).toFixed(tr).slice(1); if (tr > 0) { secStr = secStr.replace(/0+$/, "").replace(/[\.]$/, ""); } @@ -16051,8 +16056,8 @@ var Plotly = (() => { if (part.indexOf("Safari") !== -1) { for (var k = i - 1; k > -1; k--) { var prevPart = allParts[k]; - if (prevPart.substr(0, 8) === "Version/") { - var v = prevPart.substr(8).split(".")[0]; + if (prevPart.slice(0, 8) === "Version/") { + var v = prevPart.slice(8).split(".")[0]; if (isNumeric(v)) v = +v; if (v >= 13) return true; } @@ -16519,7 +16524,7 @@ var Plotly = (() => { return finalStep && finalStep(arg); }; lib.stripTrailingSlash = function(str) { - if (str.substr(-1) === "/") return str.substr(0, str.length - 1); + if (str.slice(-1) === "/") return str.slice(0, -1); return str; }; lib.noneOrAll = function(containerIn, containerOut, attrList) { @@ -16680,7 +16685,7 @@ var Plotly = (() => { } lib.minExtend = minExtend; lib.titleCase = function(s) { - return s.charAt(0).toUpperCase() + s.substr(1); + return s.charAt(0).toUpperCase() + s.slice(1); }; lib.containsAny = function(s, fragments) { for (var i = 0; i < fragments.length; i++) { @@ -18250,7 +18255,7 @@ var Plotly = (() => { if (name2.charAt(lastChar) !== "s") { Lib.warn("bad argument to arrayDefaultKey: " + name2); } - return name2.substr(0, name2.length - 1) + "defaults"; + return name2.slice(0, -1) + "defaults"; } exports.arrayDefaultKey = arrayDefaultKey; exports.arrayEditor = function(parentIn, containerStr, itemOut) { @@ -18375,13 +18380,13 @@ var Plotly = (() => { var constants = require_constants2(); exports.id2name = function id2name(id) { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; - var axNum = id.split(" ")[0].substr(1); + var axNum = id.split(" ")[0].slice(1); if (axNum === "1") axNum = ""; return id.charAt(0) + "axis" + axNum; }; exports.name2id = function name2id(name2) { if (!name2.match(constants.AX_NAME_PATTERN)) return; - var axNum = name2.substr(5); + var axNum = name2.slice(5); if (axNum === "1") axNum = ""; return name2.charAt(0) + axNum; }; @@ -18390,7 +18395,7 @@ var Plotly = (() => { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; if (axLetter && id.charAt(0) !== axLetter) return; if (domainTest && !domainId) return; - var axNum = id.split(" ")[0].substr(1).replace(/^0+/, ""); + var axNum = id.split(" ")[0].slice(1).replace(/^0+/, ""); if (axNum === "1") axNum = ""; return id.charAt(0) + axNum + (domainTest && domainId ? " domain" : ""); }; @@ -18402,7 +18407,7 @@ var Plotly = (() => { var i; for (i = 0; i < idList.length; i++) { var idi = idList[i]; - out[i] = fullLayout[idi.charAt(0) + "axis" + idi.substr(1)]; + out[i] = fullLayout[idi.charAt(0) + "axis" + idi.slice(1)]; } if (!only2d) { var sceneIds3D = fullLayout._subplots.gl3d || []; @@ -18433,7 +18438,7 @@ var Plotly = (() => { var ax = null; if (Registry.traceIs(fullTrace, "gl3d")) { var scene = fullTrace.scene; - if (scene.substr(0, 5) === "scene") { + if (scene.slice(0, 5) === "scene") { ax = fullLayout[scene][type + "axis"]; } } else { @@ -18445,7 +18450,7 @@ var Plotly = (() => { var letter1 = id1.charAt(0); var letter2 = id2.charAt(0); if (letter1 !== letter2) return letter1 > letter2 ? 1 : -1; - return +(id1.substr(1) || 1) - +(id2.substr(1) || 1); + return +(id1.slice(1) || 1) - +(id2.slice(1) || 1); }; exports.ref2id = function(ar) { return /^[xyz]/.test(ar) ? ar.split(" ")[0] : false; @@ -19691,7 +19696,12 @@ var Plotly = (() => { _module.attributes.showlegend ? _module.attributes : plots.attributes, "showlegend" ); - coerce("legend"); + Lib.coerce( + traceIn, + traceOut, + _module.attributes.legend ? _module.attributes : plots.attributes, + "legend" + ); coerce("legendwidth"); coerce("legendgroup"); coerce("legendgrouptitle.text"); @@ -19826,7 +19836,7 @@ var Plotly = (() => { Lib.coerce(layoutIn, layoutOut, scatterAttrs, "scattermode"); }; function getComputedSize(attr) { - return typeof attr === "string" && attr.substr(attr.length - 2) === "px" && parseFloat(attr); + return typeof attr === "string" && attr.slice(-2) === "px" && parseFloat(attr); } plots.plotAutoSize = function plotAutoSize(gd, layout, fullLayout) { var context = gd._context || {}; @@ -20266,7 +20276,7 @@ var Plotly = (() => { return; } if (mode === "keepdata") { - if (v.substr(v.length - 3) === "src") { + if (v.slice(-3) === "src") { return; } } else if (mode === "keepstream") { @@ -21498,9 +21508,9 @@ var Plotly = (() => { newParts.pop(); } if (len > eLen) { - newParts.push(p.substr(0, pLen2 - eLen) + ellipsis); + newParts.push(p.slice(0, Math.max(0, pLen2 - eLen)) + ellipsis); } else { - newParts.push(p.substr(0, pLen2)); + newParts.push(p.slice(0, pLen2)); } break; } @@ -21525,7 +21535,7 @@ var Plotly = (() => { var outChar; if (innerMatch.charAt(0) === "#") { outChar = fromCodePoint( - innerMatch.charAt(1) === "x" ? parseInt(innerMatch.substr(2), 16) : parseInt(innerMatch.substr(1), 10) + innerMatch.charAt(1) === "x" ? parseInt(innerMatch.slice(2), 16) : parseInt(innerMatch.slice(1), 10) ); } else outChar = entityToUnicode[innerMatch]; return outChar || fullMatch; @@ -23900,7 +23910,7 @@ var Plotly = (() => { return dtickDflt; } var prefix = dtick.charAt(0); - var dtickNum = dtick.substr(1); + var dtickNum = dtick.slice(1); dtickNum = isNumeric(dtickNum) ? Number(dtickNum) : 0; if (dtickNum <= 0 || !// "M" gives ticks every (integer) n months (isDate && prefix === "M" && dtickNum === Math.round(dtickNum) || // "L" gives ticks linearly spaced in data (not in position) every (float) f @@ -28757,7 +28767,7 @@ var Plotly = (() => { var stats = Lib.findExactDates(data, calendar); var threshold = 0.8; if (stats.exactDays > threshold) { - var numMonths = Number(dtick.substr(1)); + var numMonths = Number(dtick.slice(1)); if (stats.exactYears > threshold && numMonths % 12 === 0) { binStart = axes.tickIncrement(binStart, "M6", "reverse") + ONEDAY * 1.5; } else if (stats.exactMonths > threshold) { @@ -29409,8 +29419,8 @@ var Plotly = (() => { var tick0str = ax.l2r(tick0ms).replace(/(^-|i)/g, ""); var tick0len = tick0str.length; if (String(dtick).charAt(0) === "M") { - if (tick0len > 10 || tick0str.substr(5) !== "01-01") ax._tickround = "d"; - else ax._tickround = +dtick.substr(1) % 12 === 0 ? "y" : "m"; + if (tick0len > 10 || tick0str.slice(5) !== "01-01") ax._tickround = "d"; + else ax._tickround = +dtick.slice(1) % 12 === 0 ? "y" : "m"; } else if (dtick >= ONEDAY && tick0len <= 10 || dtick >= ONEDAY * 15) ax._tickround = "d"; else if (dtick >= ONEMIN && tick0len <= 16 || dtick >= ONEHOUR) ax._tickround = "M"; else if (dtick >= ONESEC && tick0len <= 19 || dtick >= ONEMIN) ax._tickround = "S"; @@ -29421,7 +29431,7 @@ var Plotly = (() => { } } else if (isNumeric(dtick) || dtick.charAt(0) === "L") { var rng = ax.range.map(ax.r2d || Number); - if (!isNumeric(dtick)) dtick = Number(dtick.substr(1)); + if (!isNumeric(dtick)) dtick = Number(dtick.slice(1)); ax._tickround = 2 - Math.floor(Math.log(dtick) / Math.LN10 + 0.01); var maxend = Math.max(Math.abs(rng[0]), Math.abs(rng[1])); var rangeexp = Math.floor(Math.log(maxend) / Math.LN10 + 0.01); @@ -29439,7 +29449,7 @@ var Plotly = (() => { var axSign = axrev ? -1 : 1; if (isNumeric(dtick)) return Lib.increment(x, axSign * dtick); var tType = dtick.charAt(0); - var dtSigned = axSign * Number(dtick.substr(1)); + var dtSigned = axSign * Number(dtick.slice(1)); if (tType === "M") return Lib.incrementMonth(x, dtSigned, calendar); if (tType === "L") return Math.log(Math.pow(10, x) + dtSigned) / Math.LN10; if (tType === "D") { @@ -29466,7 +29476,7 @@ var Plotly = (() => { return tmin; } var tType = dtick.charAt(0); - var dtNum = Number(dtick.substr(1)); + var dtNum = Number(dtick.slice(1)); if (tType === "M") { var cnt = 0; var t02 = tick0; @@ -29596,8 +29606,8 @@ var Plotly = (() => { var headStr; var splitIndex = dateStr.indexOf("\n"); if (splitIndex !== -1) { - headStr = dateStr.substr(splitIndex + 1); - dateStr = dateStr.substr(0, splitIndex); + headStr = dateStr.slice(splitIndex + 1); + dateStr = dateStr.slice(0, splitIndex); } if (extraPrecision) { if (headStr !== void 0 && (dateStr === "00:00:00" || dateStr === "00:00")) { @@ -29818,12 +29828,12 @@ var Plotly = (() => { if (tickRound === 0) v = String(Math.floor(v)); else if (tickRound < 0) { v = String(Math.round(v)); - v = v.substr(0, v.length + tickRound); + v = v.slice(0, Math.max(0, v.length + tickRound)); for (var i = tickRound; i < 0; i++) v += "0"; } else { v = String(v); var dp = v.indexOf(".") + 1; - if (dp) v = v.substr(0, dp + tickRound).replace(/\.?0+$/, ""); + if (dp) v = v.slice(0, dp + tickRound).replace(/\.?0+$/, ""); } v = Lib.numSeparate(v, ax._separators, separatethousands); } @@ -29918,8 +29928,8 @@ var Plotly = (() => { var allSubplots = subplotObj.cartesian.concat(subplotObj.gl2d || []); var out = ax ? axes.findSubplotsWithAxis(allSubplots, ax) : allSubplots; out.sort(function(a, b) { - var aParts = a.substr(1).split("y"); - var bParts = b.substr(1).split("y"); + var aParts = a.slice(1).split("y"); + var bParts = b.slice(1).split("y"); if (aParts[0] === bParts[0]) return +aParts[1] - +bParts[1]; return +aParts[0] - +bParts[0]; }); @@ -31894,7 +31904,7 @@ var Plotly = (() => { for (var i = 0; i < classes.length; i++) { var cls = classes[i]; if (cls.indexOf("cursor-") === 0) { - el3.attr(STASHATTR, cls.substr(7)).classed(cls, false); + el3.attr(STASHATTR, cls.slice(7)).classed(cls, false); } } if (!el3.attr(STASHATTR)) { @@ -32268,8 +32278,33 @@ var Plotly = (() => { var shapesWithLegend = (layoutOut.shapes || []).filter(function(d) { return d.showlegend; }); + function isPieWithLegendArray(trace2) { + return Registry.traceIs(trace2, "pie-like") && trace2._length != null && (Array.isArray(trace2.legend) || Array.isArray(trace2.showlegend)); + } + ; + fullData.filter(isPieWithLegendArray).forEach(function(trace2) { + if (trace2.visible) { + legendTraceCount++; + } + for (var index = 0; index < trace2._length; index++) { + var legend = (Array.isArray(trace2.legend) ? trace2.legend[index] : trace2.legend) || "legend"; + if (legend === legendId) { + const showInLegend = Array.isArray(trace2.showlegend) ? trace2.showlegend[index] : trace2.showlegend; + if (showInLegend || trace2._dfltShowLegend) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + } + if (legendId === "legend" && trace2._length > trace2.legend.length) { + for (var idx = trace2.legend.length; idx < trace2._length; idx++) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + }); var allLegendItems = fullData.concat(shapesWithLegend).filter(function(d) { - return legendId === (d.legend || "legend"); + return !isPieWithLegendArray(trace) && legendId === (d.legend || "legend"); }); for (var i = 0; i < allLegendItems.length; i++) { trace = allLegendItems[i]; @@ -32297,7 +32332,7 @@ var Plotly = (() => { layoutOut, basePlotLayoutAttributes, "showlegend", - legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) + layoutOut.showlegend || legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) ); if (showLegend === false) layoutOut[legendId] = void 0; if (showLegend === false && !containerIn.uirevision) return; @@ -32402,7 +32437,11 @@ var Plotly = (() => { } var legends = ["legend"]; for (i = 0; i < allLegendsData.length; i++) { - Lib.pushUnique(legends, allLegendsData[i].legend); + if (Array.isArray(allLegendsData[i].legend)) { + legends = legends.concat(allLegendsData[i].legend); + } else { + Lib.pushUnique(legends, allLegendsData[i].legend); + } } layoutOut._legends = []; for (i = 0; i < legends.length; i++) { @@ -32693,8 +32732,16 @@ var Plotly = (() => { var lgroup = trace.legendgroup; if (!inHover && (!trace.visible || !trace.showlegend)) continue; if (Registry.traceIs(trace, "pie-like")) { + var legendPerSlice = Array.isArray(trace.legend); + var showlegendPerSlice = Array.isArray(trace.showlegend); if (!slicesShown[lgroup]) slicesShown[lgroup] = {}; for (j = 0; j < cd.length; j++) { + if (showlegendPerSlice && trace.showlegend[cd[j].i] === false) { + continue; + } + if (legendPerSlice) { + lid = trace.legend[cd[j].i] || "legend"; + } var labelj = cd[j].label; if (!slicesShown[lgroup][labelj]) { addOneItem(lid, lgroup, { @@ -33890,7 +33937,11 @@ var Plotly = (() => { } function computeTextDimensions(g, gd, legendObj, aTitle) { var legendItem = g.data()[0][0]; - if (!legendObj._inHover && legendItem && !legendItem.trace.showlegend) { + var showlegend = legendItem && legendItem.trace.showlegend; + if (Array.isArray(showlegend)) { + showlegend = showlegend[legendItem.i] !== false; + } + if (!legendObj._inHover && legendItem && !showlegend) { g.remove(); return; } @@ -37160,7 +37211,7 @@ var Plotly = (() => { segments.forEach(function(segment) { var relevantParamIdx = paramsToUse[segment.charAt(0)].drawn; if (relevantParamIdx === void 0) return; - var params = segment.substr(1).match(constants.paramRE); + var params = segment.slice(1).match(constants.paramRE); if (!params || params.length < relevantParamIdx) return; var str = params[relevantParamIdx]; var pos = isRaw ? str : Lib.cleanNumber(str); @@ -37351,7 +37402,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (xParams[paramNumber]) { if (xSizemode === "pixel") param = x2p(xAnchor) + Number(param); else param = x2p(param); @@ -38360,7 +38411,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (paramNumber >= nParams) return param; if (xParams[paramNumber]) param = moveX(param); else if (yParams[paramNumber]) param = moveY(param); @@ -40104,12 +40155,12 @@ var Plotly = (() => { if (typeof a === "string") { aPrefix = a.match(/^[xy]*/)[0]; aLen = aPrefix.length; - a = +a.substr(aLen); + a = +a.slice(aLen); } if (typeof b === "string") { bPrefix = b.match(/^[xy]*/)[0]; bLen = bPrefix.length; - b = +b.substr(bLen); + b = +b.slice(bLen); } var c = a * b; if (!aLen && !bLen) { @@ -40121,7 +40172,7 @@ var Plotly = (() => { if (aLen === bLen) { return c; } - return (aLen > bLen ? aPrefix.substr(bLen) : bPrefix.substr(aLen)) + c; + return (aLen > bLen ? aPrefix.slice(bLen) : bPrefix.slice(aLen)) + c; } function finalRatios(group, fullLayout) { var size = fullLayout._size; @@ -40134,7 +40185,7 @@ var Plotly = (() => { if (typeof val === "string") { var prefix = val.match(/^[xy]*/)[0]; var pLen = prefix.length; - val = +val.substr(pLen); + val = +val.slice(pLen); var mult = prefix.charAt(0) === "y" ? yRatio : 1 / yRatio; for (var j = 0; j < pLen; j++) { val *= mult; @@ -46290,7 +46341,7 @@ var Plotly = (() => { } if (!arrayStr) arrayStr = rootContainers[rootContainers.indexOf(rootPart)]; if (!arrayStr) return false; - var tail = astr.substr(arrayStr.length); + var tail = astr.slice(arrayStr.length); if (!tail) return { array: arrayStr, index: "", property: "" }; match = tail.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/); if (!match) return false; @@ -46647,7 +46698,7 @@ var Plotly = (() => { for (i = 0; i < minLen; i++) { if (name1.charAt(i) !== name2.charAt(i)) break; } - var out = name1.substr(0, i); + var out = name1.slice(0, i); return out.trim(); } function cleanTextPosition(textposition) { @@ -46728,7 +46779,7 @@ var Plotly = (() => { var ATTR_TAIL_RE = /(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/; function getParent(attr) { var tail = attr.search(ATTR_TAIL_RE); - if (tail > 0) return attr.substr(0, tail); + if (tail > 0) return attr.slice(0, tail); } exports.hasParent = function(aobj, attr) { var attrParent = getParent(attr); @@ -46745,8 +46796,8 @@ var Plotly = (() => { var ax = getFromTrace(gd, trace, AX_LETTERS[j]); if (ax && ax.type !== "log") { var axAttr = ax._name; - var sceneName = ax._id.substr(1); - if (sceneName.substr(0, 5) === "scene") { + var sceneName = ax._id.slice(1); + if (sceneName.slice(0, 5) === "scene") { if (layoutUpdate[sceneName] !== void 0) continue; axAttr = sceneName + "." + axAttr; } @@ -47628,7 +47679,7 @@ var Plotly = (() => { } if (attr in aobj || helpers.hasParent(aobj, attr)) return; var extraparam; - if (attr.substr(0, 6) === "LAYOUT") { + if (attr.slice(0, 6) === "LAYOUT") { extraparam = layoutNP(gd.layout, attr.replace("LAYOUT", "")); } else { var tracei = traces[i2]; @@ -47673,7 +47724,7 @@ var Plotly = (() => { else vi = null; } redoit[ai] = vi; - if (ai.substr(0, 6) === "LAYOUT") { + if (ai.slice(0, 6) === "LAYOUT") { param = layoutNP(gd.layout, ai.replace("LAYOUT", "")); undoit[ai] = [undefinedToNull(param.get())]; param.set(Array.isArray(vi) ? vi[0] : vi); @@ -47690,7 +47741,7 @@ var Plotly = (() => { newVal = Array.isArray(vi) ? vi[i % vi.length] : vi; if (newVal === void 0) continue; var finalPart = param.parts[param.parts.length - 1]; - var prefix = ai.substr(0, ai.length - finalPart.length - 1); + var prefix = ai.slice(0, ai.length - finalPart.length - 1); var prefixDot = prefix ? prefix + "." : ""; var innerContFull = prefix ? nestedProperty(contFull, prefix).get() : contFull; valObject = PlotSchema.getTraceValObject(contFull, param.parts); @@ -47915,7 +47966,7 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { if (keys[i].indexOf("allaxes") === 0) { for (j = 0; j < axes.length; j++) { - var scene = axes[j]._id.substr(1); + var scene = axes[j]._id.slice(1); var axisAttr = scene.indexOf("scene") !== -1 ? scene + "." : ""; var newkey = keys[i].replace("allaxes", axisAttr + axes[j]._name); if (!aobj[newkey]) aobj[newkey] = aobj[keys[i]]; @@ -48223,7 +48274,7 @@ var Plotly = (() => { var match = key.match(spec.pattern); if (match) { var head = match[1] || ""; - return { head, tail: key.substr(head.length + 1), attr: spec.attr }; + return { head, tail: key.slice(head.length + 1), attr: spec.attr }; } } } @@ -48284,7 +48335,7 @@ var Plotly = (() => { } newNP.set(undefinedToNull(nestedProperty(oldFullLayout, key).get())); continue; - } else if (tail === "autorange" || tail.substr(0, 6) === "range[") { + } else if (tail === "autorange" || tail.slice(0, 6) === "range[") { var pre0 = layoutPreGUI[head + ".range[0]"]; var pre1 = layoutPreGUI[head + ".range[1]"]; var preAuto = layoutPreGUI[head + ".autorange"]; @@ -48304,7 +48355,7 @@ var Plotly = (() => { Lib.warn("unrecognized GUI edit: " + key); } delete layoutPreGUI[key]; - if (match && match.tail.substr(0, 6) === "range[") { + if (match && match.tail.slice(0, 6) === "range[") { newRangeAccepted[match.head] = 1; } } @@ -49856,7 +49907,7 @@ var Plotly = (() => { for (var i = 0; i < path.length; i++) { var p = path[i]; if (typeof p === "number") { - astr = astr.substr(0, astr.length - 1) + "[" + p + "]"; + astr = astr.slice(0, -1) + "[" + p + "]"; } else { astr += p; } @@ -52447,7 +52498,7 @@ var Plotly = (() => { prevtrace._nexttrace = trace; } } - trace._ownfill = trace.fill && (trace.fill.substr(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.substr(0, 2) === "to" && !trace._prevtrace); + trace._ownfill = trace.fill && (trace.fill.slice(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.slice(0, 2) === "to" && !trace._prevtrace); prevtraces[group] = trace; } else { trace._prevtrace = trace._nexttrace = trace._ownfill = null; @@ -52650,8 +52701,8 @@ var Plotly = (() => { fullpath = thispath; revpath = thisrevpath; } else if (ownFillDir) { - fullpath += "L" + thispath.substr(1); - revpath = thisrevpath + ("L" + revpath.substr(1)); + fullpath += "L" + thispath.slice(1); + revpath = thisrevpath + ("L" + revpath.slice(1)); } else { fullpath += "Z" + thispath; revpath = thisrevpath + "Z" + revpath; @@ -52716,7 +52767,7 @@ var Plotly = (() => { if (pt0 && pt1) { if (ownFillDir) { pt0[fillAxisIndex] = pt1[fillAxisIndex] = fillAxisZero; - transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.substr(1)).call(Drawing.singleFillStyle, gd); + transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.slice(1)).call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(null); } else { transition(ownFillEl3).attr("d", fullpath + "Z").call(Drawing.singleFillStyle, gd); @@ -52726,13 +52777,13 @@ var Plotly = (() => { trace._polygons = thisPolygons; trace._fillElement = ownFillEl3; } else if (tonext) { - if (trace.fill.substr(0, 6) === "tonext" && fullpath && prevRevpath) { + if (trace.fill.slice(0, 6) === "tonext" && fullpath && prevRevpath) { if (trace.fill === "tonext") { transition(tonext).attr("d", fullpath + "Z" + prevRevpath + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makeSelfPolygons(); trace._polygons = thisPolygons.concat(prevPolygons); } else { - transition(tonext).attr("d", fullpath + "L" + prevRevpath.substr(1) + "Z").call(Drawing.singleFillStyle, gd); + transition(tonext).attr("d", fullpath + "L" + prevRevpath.slice(1) + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(prevFillsegments); trace._polygons = thisPolygons; } @@ -53721,7 +53772,7 @@ var Plotly = (() => { }; function indexOfDay(v) { if (typeof v !== "string") return; - return dayStrToNum[v.substr(0, 3).toLowerCase()]; + return dayStrToNum[v.slice(0, 3).toLowerCase()]; } } }); @@ -54312,10 +54363,10 @@ var Plotly = (() => { if (constants.attrRegex.test(ki)) { var axLetter = ki.charAt(0); if (axLetter === "x") { - if (!xi || +ki.substr(5) < +xi.substr(5)) { + if (!xi || +ki.slice(5) < +xi.slice(5)) { xi = ki; } - } else if (!yi || +ki.substr(5) < +yi.substr(5)) { + } else if (!yi || +ki.slice(5) < +yi.slice(5)) { yi = ki; } } @@ -56754,7 +56805,7 @@ var Plotly = (() => { segment = segments[i]; drawnParam = paramsToUse[segment.charAt(0)].drawn; if (drawnParam === void 0) continue; - params = segments[i].substr(1).match(constants.paramRE); + params = segments[i].slice(1).match(constants.paramRE); if (!params || params.length < drawnParam) continue; val = convertVal(params[drawnParam]); if (val < min) min = val; @@ -59349,9 +59400,9 @@ var Plotly = (() => { var subplots = layoutOut._subplots; if (subplots) { var yIds = subplots.cartesian.filter(function(subplotId) { - return subplotId.substr(0, subplotId.indexOf("y")) === axisIds.name2id(axName); + return subplotId.slice(0, Math.max(0, subplotId.indexOf("y"))) === axisIds.name2id(axName); }).map(function(subplotId) { - return subplotId.substr(subplotId.indexOf("y"), subplotId.length); + return subplotId.slice(subplotId.indexOf("y"), subplotId.length); }); var yNames = Lib.simpleMap(yIds, axisIds.id2name); for (var i = 0; i < yNames.length; i++) { @@ -61550,7 +61601,7 @@ var Plotly = (() => { placeholder: fullLayout._dfltTitle.colorbar, containerGroup: g.select("." + cn.cbtitle) }; - var otherClass = titleClass.charAt(0) === "h" ? titleClass.substr(1) : "h" + titleClass; + var otherClass = titleClass.charAt(0) === "h" ? titleClass.slice(1) : "h" + titleClass; g.selectAll("." + otherClass + ",." + otherClass + "-math-group").remove(); Titles.draw(gd, titleClass, extendFlat(dfltTitleOpts, titleOpts || {})); } @@ -66696,7 +66747,7 @@ var Plotly = (() => { return function(v, isRightEdge) { var dateStr = pa.c2d(v, oneYear, calendar); var dashPos = dateStr.indexOf("-", dashExclude); - if (dashPos > 0) dateStr = dateStr.substr(0, dashPos); + if (dashPos > 0) dateStr = dateStr.slice(0, dashPos); var roundedV = pa.d2c(dateStr, 0, calendar); if (roundedV < v) { var nextV = tickIncrement(roundedV, increment, false, calendar); @@ -72320,7 +72371,7 @@ var Plotly = (() => { proto.drawAxes = function(doTitles) { var _this = this; var gd = _this.graphDiv; - var titlesuffix = _this.id.substr(7) + "title"; + var titlesuffix = _this.id.slice(7) + "title"; var layers = _this.layers; var aaxis = _this.aaxis; var baxis = _this.baxis; @@ -73637,7 +73688,7 @@ var Plotly = (() => { pathNeg = makePath(pts, trace); } if (hasBothSides) { - path = pathPos + "L" + pathNeg.substr(1) + "Z"; + path = pathPos + "L" + pathNeg.slice(1) + "Z"; } else { var startPt = [posCenterPx, valAxis.c2p(density[0].t)]; var endPt = [posCenterPx, valAxis.c2p(density[len - 1].t)]; @@ -73646,9 +73697,9 @@ var Plotly = (() => { endPt.reverse(); } if (hasPositiveSide) { - path = "M" + startPt + "L" + pathPos.substr(1) + "L" + endPt; + path = "M" + startPt + "L" + pathPos.slice(1) + "L" + endPt; } else { - path = "M" + endPt + "L" + pathNeg.substr(1) + "L" + startPt; + path = "M" + endPt + "L" + pathNeg.slice(1) + "L" + startPt; } } pathSel.attr("d", path); @@ -86576,6 +86627,24 @@ var Plotly = (() => { editType: "plot", description: ["Determines whether outside text labels can push the margins."].join(" ") }, + showlegend: extendFlat({}, baseAttrs.showlegend, { + arrayOk: true, + description: [ + "Determines whether or not items corresponding to the pie slices are shown in the", + "legend. Can be an array if `values` is set. In that case, each entry specifies", + "appearance in the legend for one slice." + ].join(" ") + }), + legend: extendFlat({}, baseAttrs.legend, { + arrayOk: true, + description: [ + "Sets the reference to a legend to show the pie slices in. Can be an array if `values`", + "is set. In that case, each entry specifies the legend reference for one slice.", + "References to these legends are *legend*, *legend2*, *legend3*, etc.", + "Settings for these legends are set in the layout, under", + "`layout.legend`, `layout.legend2`, etc." + ].join(" ") + }), title: { text: { valType: "string", @@ -131102,7 +131171,7 @@ var Plotly = (() => { }; exports.cleanId = function cleanId(id) { if (!id.match(/^scene[0-9]*$/)) return; - var sceneNum = id.substr(5); + var sceneNum = id.slice(5); if (sceneNum === "1") sceneNum = ""; return SCENE + sceneNum; }; @@ -146158,7 +146227,7 @@ var Plotly = (() => { var dfltSpans = constants[axisName + "Span"]; var hSpan = (dfltSpans[projType] || dfltSpans["*"]) / 2; var rot = coerce( - "projection.rotation." + axisName.substr(0, 3), + "projection.rotation." + axisName.slice(0, 3), scopeParams.projRotate[i] ); rangeDflt = [rot - hSpan, rot + hSpan]; @@ -175816,7 +175885,7 @@ void main() { } function pad2(num) { var s = "0" + num; - return s.substr(s.length - 2); + return s.slice(-2); } function getAttrName(i) { return i < maxDim ? "p" + pad2(i + 1) + "_" + pad2(i + 4) : "colors"; @@ -272566,7 +272635,7 @@ uniform ${i3} ${a3} u_${s3}; } else { if (directiveObj === UNKNOWN) replacementPart = UNKNOWN; else replacementPart = cDate.formatDate(directiveObj[modifier]); - fmt = fmt.substr(0, i) + replacementPart + fmt.substr(i + directiveLen); + fmt = fmt.slice(0, i) + replacementPart + fmt.slice(i + directiveLen); i += replacementPart.length; } } diff --git a/dist/plotly.js b/dist/plotly.js index 78db312bd2a..73dbb06982c 100644 --- a/dist/plotly.js +++ b/dist/plotly.js @@ -1,5 +1,5 @@ /** -* plotly.js v3.3.0 +* plotly.js v3.3.1 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -81,7 +81,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.3.0"; + exports.version = "3.3.1"; } }); @@ -8789,7 +8789,7 @@ var Plotly = (() => { var isArrayOrTypedArray = require_array().isArrayOrTypedArray; module.exports = function nestedProperty(container, propStr) { if (isNumeric(propStr)) propStr = String(propStr); - else if (typeof propStr !== "string" || propStr.substr(propStr.length - 4) === "[-1]") { + else if (typeof propStr !== "string" || propStr.slice(-4) === "[-1]") { throw "bad property string"; } var propParts = propStr.split("."); @@ -8808,7 +8808,7 @@ var Plotly = (() => { if (indexed[1]) propParts[j] = indexed[1]; else if (j === 0) propParts.splice(0, 1); else throw "bad property string"; - indices = indexed[2].substr(1, indexed[2].length - 2).split("]["); + indices = indexed[2].slice(1, -1).split("]["); for (i = 0; i < indices.length; i++) { j++; propParts.splice(j, 0, Number(indices[i])); @@ -10886,11 +10886,11 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { key = keys[i]; val = container[key]; - if (key.substr(key.length - 5) === "color") { + if (key.slice(-5) === "color") { if (Array.isArray(val)) { for (j = 0; j < val.length; j++) val[j] = cleanOne(val[j]); } else container[key] = cleanOne(val); - } else if (key.substr(key.length - 10) === "colorscale" && Array.isArray(val)) { + } else if (key.slice(-10) === "colorscale" && Array.isArray(val)) { for (j = 0; j < val.length; j++) { if (Array.isArray(val[j])) val[j][1] = cleanOne(val[j][1]); } @@ -10905,7 +10905,7 @@ var Plotly = (() => { function cleanOne(val) { if (isNumeric(val) || typeof val !== "string") return val; var valTrim = val.trim(); - if (valTrim.substr(0, 3) !== "rgb") return val; + if (valTrim.slice(0, 3) !== "rgb") return val; var match = valTrim.match(/^rgba?\s*\(([^()]*)\)$/); if (!match) return val; var parts = match[1].trim().split(/\s*[\s,]\s*/); @@ -10999,7 +10999,7 @@ var Plotly = (() => { for (var i = 0; i < values.length; i++) { var k = String(values[i]); if (k.charAt(0) === "/" && k.charAt(k.length - 1) === "/") { - var regex = new RegExp(k.substr(1, k.length - 2)); + var regex = new RegExp(k.slice(1, -1)); if (regex.test(v)) return true; } else if (v === values[i]) return true; } @@ -11007,9 +11007,13 @@ var Plotly = (() => { } }, boolean: { - coerceFunction: function(v, propOut, dflt) { - if (v === true || v === false) propOut.set(v); - else propOut.set(dflt); + coerceFunction: function(v, propOut, dflt, opts) { + const isBoolean = (value) => value === true || value === false; + if (isBoolean(v) || opts.arrayOk && Array.isArray(v) && v.length > 0 && v.every(isBoolean)) { + propOut.set(v); + } else { + propOut.set(dflt); + } } }, number: { @@ -11076,11 +11080,12 @@ var Plotly = (() => { subplotid: { coerceFunction: function(v, propOut, dflt, opts) { var regex = opts.regex || counterRegex(dflt); - if (typeof v === "string" && regex.test(v)) { + const isSubplotId = (value) => typeof value === "string" && regex.test(value); + if (isSubplotId(v) || opts.arrayOk && isArrayOrTypedArray(v) && v.length > 0 && v.every(isSubplotId)) { propOut.set(v); - return; + } else { + propOut.set(dflt); } - propOut.set(dflt); }, validateFunction: function(v, opts) { var dflt = opts.dflt; @@ -13786,9 +13791,9 @@ var Plotly = (() => { var require_maplibre_gl = __commonJS({ "node_modules/maplibre-gl/dist/maplibre-gl.css"() { (function() { - if (!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")) { + if (!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")) { var e = document.createElement("style"); - e.id = "ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe"; + e.id = "696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97"; e.textContent = `.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`; document.head.appendChild(e); } @@ -14111,10 +14116,10 @@ var Plotly = (() => { var isWorld = isWorldCalendar(calendar); var s0 = s.charAt(0); if (isWorld && (s0 === "G" || s0 === "g")) { - s = s.substr(1); + s = s.slice(1); calendar = ""; } - var isChinese = isWorld && calendar.substr(0, 7) === "chinese"; + var isChinese = isWorld && calendar.slice(0, 7) === "chinese"; var match = s.match(isChinese ? DATETIME_REGEXP_CN : DATETIME_REGEXP); if (!match) return BADNUM; var y = match[1]; @@ -14158,7 +14163,7 @@ var Plotly = (() => { return exports.dateTime2ms(s, calendar) !== BADNUM; }; function lpad(val, digits) { - return String(val + Math.pow(10, digits)).substr(1); + return String(val + Math.pow(10, digits)).slice(1); } var NINETYDAYS = 90 * ONEDAY; var THREEHOURS = 3 * ONEHOUR; @@ -14178,7 +14183,7 @@ var Plotly = (() => { dateStr = utcFormat("G%Y-%m-%d")(new Date(msRounded)); } if (dateStr.charAt(0) === "-") { - while (dateStr.length < 11) dateStr = "-0" + dateStr.substr(1); + while (dateStr.length < 11) dateStr = "-0" + dateStr.slice(1); } else { while (dateStr.length < 10) dateStr = "0" + dateStr; } @@ -14250,7 +14255,7 @@ var Plotly = (() => { function modDateFormat(fmt, x, formatter, calendar) { fmt = fmt.replace(fracMatch, function(match) { var digits = Math.min(+match.charAt(1) || 6, 6); - var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).substr(2).replace(/0+$/, "") || "0"; + var fracSecs = (x / 1e3 % 1 + 2).toFixed(digits).slice(2).replace(/0+$/, "") || "0"; return fracSecs; }); var d = new Date(Math.floor(x + 0.05)); @@ -14273,7 +14278,7 @@ var Plotly = (() => { if (tr !== "M") { if (!isNumeric(tr)) tr = 0; var sec = Math.min(mod(x / ONESEC, 60), MAXSECONDS[tr]); - var secStr = (100 + sec).toFixed(tr).substr(1); + var secStr = (100 + sec).toFixed(tr).slice(1); if (tr > 0) { secStr = secStr.replace(/0+$/, "").replace(/[\.]$/, ""); } @@ -14987,8 +14992,8 @@ var Plotly = (() => { if (part.indexOf("Safari") !== -1) { for (var k = i - 1; k > -1; k--) { var prevPart = allParts[k]; - if (prevPart.substr(0, 8) === "Version/") { - var v = prevPart.substr(8).split(".")[0]; + if (prevPart.slice(0, 8) === "Version/") { + var v = prevPart.slice(8).split(".")[0]; if (isNumeric(v)) v = +v; if (v >= 13) return true; } @@ -15455,7 +15460,7 @@ var Plotly = (() => { return finalStep && finalStep(arg); }; lib.stripTrailingSlash = function(str) { - if (str.substr(-1) === "/") return str.substr(0, str.length - 1); + if (str.slice(-1) === "/") return str.slice(0, -1); return str; }; lib.noneOrAll = function(containerIn, containerOut, attrList) { @@ -15616,7 +15621,7 @@ var Plotly = (() => { } lib.minExtend = minExtend; lib.titleCase = function(s) { - return s.charAt(0).toUpperCase() + s.substr(1); + return s.charAt(0).toUpperCase() + s.slice(1); }; lib.containsAny = function(s, fragments) { for (var i = 0; i < fragments.length; i++) { @@ -17128,7 +17133,7 @@ var Plotly = (() => { if (name2.charAt(lastChar) !== "s") { Lib.warn("bad argument to arrayDefaultKey: " + name2); } - return name2.substr(0, name2.length - 1) + "defaults"; + return name2.slice(0, -1) + "defaults"; } exports.arrayDefaultKey = arrayDefaultKey; exports.arrayEditor = function(parentIn, containerStr, itemOut) { @@ -17253,13 +17258,13 @@ var Plotly = (() => { var constants = require_constants2(); exports.id2name = function id2name(id) { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; - var axNum = id.split(" ")[0].substr(1); + var axNum = id.split(" ")[0].slice(1); if (axNum === "1") axNum = ""; return id.charAt(0) + "axis" + axNum; }; exports.name2id = function name2id(name2) { if (!name2.match(constants.AX_NAME_PATTERN)) return; - var axNum = name2.substr(5); + var axNum = name2.slice(5); if (axNum === "1") axNum = ""; return name2.charAt(0) + axNum; }; @@ -17268,7 +17273,7 @@ var Plotly = (() => { if (typeof id !== "string" || !id.match(constants.AX_ID_PATTERN)) return; if (axLetter && id.charAt(0) !== axLetter) return; if (domainTest && !domainId) return; - var axNum = id.split(" ")[0].substr(1).replace(/^0+/, ""); + var axNum = id.split(" ")[0].slice(1).replace(/^0+/, ""); if (axNum === "1") axNum = ""; return id.charAt(0) + axNum + (domainTest && domainId ? " domain" : ""); }; @@ -17280,7 +17285,7 @@ var Plotly = (() => { var i; for (i = 0; i < idList.length; i++) { var idi = idList[i]; - out[i] = fullLayout[idi.charAt(0) + "axis" + idi.substr(1)]; + out[i] = fullLayout[idi.charAt(0) + "axis" + idi.slice(1)]; } if (!only2d) { var sceneIds3D = fullLayout._subplots.gl3d || []; @@ -17311,7 +17316,7 @@ var Plotly = (() => { var ax = null; if (Registry.traceIs(fullTrace, "gl3d")) { var scene = fullTrace.scene; - if (scene.substr(0, 5) === "scene") { + if (scene.slice(0, 5) === "scene") { ax = fullLayout[scene][type + "axis"]; } } else { @@ -17323,7 +17328,7 @@ var Plotly = (() => { var letter1 = id1.charAt(0); var letter2 = id2.charAt(0); if (letter1 !== letter2) return letter1 > letter2 ? 1 : -1; - return +(id1.substr(1) || 1) - +(id2.substr(1) || 1); + return +(id1.slice(1) || 1) - +(id2.slice(1) || 1); }; exports.ref2id = function(ar) { return /^[xyz]/.test(ar) ? ar.split(" ")[0] : false; @@ -18556,7 +18561,12 @@ var Plotly = (() => { _module.attributes.showlegend ? _module.attributes : plots.attributes, "showlegend" ); - coerce("legend"); + Lib.coerce( + traceIn, + traceOut, + _module.attributes.legend ? _module.attributes : plots.attributes, + "legend" + ); coerce("legendwidth"); coerce("legendgroup"); coerce("legendgrouptitle.text"); @@ -18691,7 +18701,7 @@ var Plotly = (() => { Lib.coerce(layoutIn, layoutOut, scatterAttrs, "scattermode"); }; function getComputedSize(attr) { - return typeof attr === "string" && attr.substr(attr.length - 2) === "px" && parseFloat(attr); + return typeof attr === "string" && attr.slice(-2) === "px" && parseFloat(attr); } plots.plotAutoSize = function plotAutoSize(gd, layout, fullLayout) { var context = gd._context || {}; @@ -19131,7 +19141,7 @@ var Plotly = (() => { return; } if (mode === "keepdata") { - if (v.substr(v.length - 3) === "src") { + if (v.slice(-3) === "src") { return; } } else if (mode === "keepstream") { @@ -20363,9 +20373,9 @@ var Plotly = (() => { newParts.pop(); } if (len > eLen) { - newParts.push(p.substr(0, pLen2 - eLen) + ellipsis); + newParts.push(p.slice(0, Math.max(0, pLen2 - eLen)) + ellipsis); } else { - newParts.push(p.substr(0, pLen2)); + newParts.push(p.slice(0, pLen2)); } break; } @@ -20390,7 +20400,7 @@ var Plotly = (() => { var outChar; if (innerMatch.charAt(0) === "#") { outChar = fromCodePoint( - innerMatch.charAt(1) === "x" ? parseInt(innerMatch.substr(2), 16) : parseInt(innerMatch.substr(1), 10) + innerMatch.charAt(1) === "x" ? parseInt(innerMatch.slice(2), 16) : parseInt(innerMatch.slice(1), 10) ); } else outChar = entityToUnicode[innerMatch]; return outChar || fullMatch; @@ -22022,7 +22032,7 @@ var Plotly = (() => { return dtickDflt; } var prefix = dtick.charAt(0); - var dtickNum = dtick.substr(1); + var dtickNum = dtick.slice(1); dtickNum = isNumeric(dtickNum) ? Number(dtickNum) : 0; if (dtickNum <= 0 || !// "M" gives ticks every (integer) n months (isDate && prefix === "M" && dtickNum === Math.round(dtickNum) || // "L" gives ticks linearly spaced in data (not in position) every (float) f @@ -26879,7 +26889,7 @@ var Plotly = (() => { var stats = Lib.findExactDates(data, calendar); var threshold = 0.8; if (stats.exactDays > threshold) { - var numMonths = Number(dtick.substr(1)); + var numMonths = Number(dtick.slice(1)); if (stats.exactYears > threshold && numMonths % 12 === 0) { binStart = axes.tickIncrement(binStart, "M6", "reverse") + ONEDAY * 1.5; } else if (stats.exactMonths > threshold) { @@ -27531,8 +27541,8 @@ var Plotly = (() => { var tick0str = ax.l2r(tick0ms).replace(/(^-|i)/g, ""); var tick0len = tick0str.length; if (String(dtick).charAt(0) === "M") { - if (tick0len > 10 || tick0str.substr(5) !== "01-01") ax._tickround = "d"; - else ax._tickround = +dtick.substr(1) % 12 === 0 ? "y" : "m"; + if (tick0len > 10 || tick0str.slice(5) !== "01-01") ax._tickround = "d"; + else ax._tickround = +dtick.slice(1) % 12 === 0 ? "y" : "m"; } else if (dtick >= ONEDAY && tick0len <= 10 || dtick >= ONEDAY * 15) ax._tickround = "d"; else if (dtick >= ONEMIN && tick0len <= 16 || dtick >= ONEHOUR) ax._tickround = "M"; else if (dtick >= ONESEC && tick0len <= 19 || dtick >= ONEMIN) ax._tickround = "S"; @@ -27543,7 +27553,7 @@ var Plotly = (() => { } } else if (isNumeric(dtick) || dtick.charAt(0) === "L") { var rng = ax.range.map(ax.r2d || Number); - if (!isNumeric(dtick)) dtick = Number(dtick.substr(1)); + if (!isNumeric(dtick)) dtick = Number(dtick.slice(1)); ax._tickround = 2 - Math.floor(Math.log(dtick) / Math.LN10 + 0.01); var maxend = Math.max(Math.abs(rng[0]), Math.abs(rng[1])); var rangeexp = Math.floor(Math.log(maxend) / Math.LN10 + 0.01); @@ -27561,7 +27571,7 @@ var Plotly = (() => { var axSign = axrev ? -1 : 1; if (isNumeric(dtick)) return Lib.increment(x, axSign * dtick); var tType = dtick.charAt(0); - var dtSigned = axSign * Number(dtick.substr(1)); + var dtSigned = axSign * Number(dtick.slice(1)); if (tType === "M") return Lib.incrementMonth(x, dtSigned, calendar); if (tType === "L") return Math.log(Math.pow(10, x) + dtSigned) / Math.LN10; if (tType === "D") { @@ -27588,7 +27598,7 @@ var Plotly = (() => { return tmin; } var tType = dtick.charAt(0); - var dtNum = Number(dtick.substr(1)); + var dtNum = Number(dtick.slice(1)); if (tType === "M") { var cnt = 0; var t02 = tick0; @@ -27718,8 +27728,8 @@ var Plotly = (() => { var headStr; var splitIndex = dateStr.indexOf("\n"); if (splitIndex !== -1) { - headStr = dateStr.substr(splitIndex + 1); - dateStr = dateStr.substr(0, splitIndex); + headStr = dateStr.slice(splitIndex + 1); + dateStr = dateStr.slice(0, splitIndex); } if (extraPrecision) { if (headStr !== void 0 && (dateStr === "00:00:00" || dateStr === "00:00")) { @@ -27940,12 +27950,12 @@ var Plotly = (() => { if (tickRound === 0) v = String(Math.floor(v)); else if (tickRound < 0) { v = String(Math.round(v)); - v = v.substr(0, v.length + tickRound); + v = v.slice(0, Math.max(0, v.length + tickRound)); for (var i = tickRound; i < 0; i++) v += "0"; } else { v = String(v); var dp = v.indexOf(".") + 1; - if (dp) v = v.substr(0, dp + tickRound).replace(/\.?0+$/, ""); + if (dp) v = v.slice(0, dp + tickRound).replace(/\.?0+$/, ""); } v = Lib.numSeparate(v, ax._separators, separatethousands); } @@ -28040,8 +28050,8 @@ var Plotly = (() => { var allSubplots = subplotObj.cartesian.concat(subplotObj.gl2d || []); var out = ax ? axes.findSubplotsWithAxis(allSubplots, ax) : allSubplots; out.sort(function(a, b) { - var aParts = a.substr(1).split("y"); - var bParts = b.substr(1).split("y"); + var aParts = a.slice(1).split("y"); + var bParts = b.slice(1).split("y"); if (aParts[0] === bParts[0]) return +aParts[1] - +bParts[1]; return +aParts[0] - +bParts[0]; }); @@ -30016,7 +30026,7 @@ var Plotly = (() => { for (var i = 0; i < classes.length; i++) { var cls = classes[i]; if (cls.indexOf("cursor-") === 0) { - el3.attr(STASHATTR, cls.substr(7)).classed(cls, false); + el3.attr(STASHATTR, cls.slice(7)).classed(cls, false); } } if (!el3.attr(STASHATTR)) { @@ -30258,8 +30268,33 @@ var Plotly = (() => { var shapesWithLegend = (layoutOut.shapes || []).filter(function(d) { return d.showlegend; }); + function isPieWithLegendArray(trace2) { + return Registry.traceIs(trace2, "pie-like") && trace2._length != null && (Array.isArray(trace2.legend) || Array.isArray(trace2.showlegend)); + } + ; + fullData.filter(isPieWithLegendArray).forEach(function(trace2) { + if (trace2.visible) { + legendTraceCount++; + } + for (var index = 0; index < trace2._length; index++) { + var legend = (Array.isArray(trace2.legend) ? trace2.legend[index] : trace2.legend) || "legend"; + if (legend === legendId) { + const showInLegend = Array.isArray(trace2.showlegend) ? trace2.showlegend[index] : trace2.showlegend; + if (showInLegend || trace2._dfltShowLegend) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + } + if (legendId === "legend" && trace2._length > trace2.legend.length) { + for (var idx = trace2.legend.length; idx < trace2._length; idx++) { + legendReallyHasATrace = true; + legendTraceCount++; + } + } + }); var allLegendItems = fullData.concat(shapesWithLegend).filter(function(d) { - return legendId === (d.legend || "legend"); + return !isPieWithLegendArray(trace) && legendId === (d.legend || "legend"); }); for (var i = 0; i < allLegendItems.length; i++) { trace = allLegendItems[i]; @@ -30287,7 +30322,7 @@ var Plotly = (() => { layoutOut, basePlotLayoutAttributes, "showlegend", - legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) + layoutOut.showlegend || legendReallyHasATrace && legendTraceCount > (legendId === "legend" ? 1 : 0) ); if (showLegend === false) layoutOut[legendId] = void 0; if (showLegend === false && !containerIn.uirevision) return; @@ -30392,7 +30427,11 @@ var Plotly = (() => { } var legends = ["legend"]; for (i = 0; i < allLegendsData.length; i++) { - Lib.pushUnique(legends, allLegendsData[i].legend); + if (Array.isArray(allLegendsData[i].legend)) { + legends = legends.concat(allLegendsData[i].legend); + } else { + Lib.pushUnique(legends, allLegendsData[i].legend); + } } layoutOut._legends = []; for (i = 0; i < legends.length; i++) { @@ -30683,8 +30722,16 @@ var Plotly = (() => { var lgroup = trace.legendgroup; if (!inHover && (!trace.visible || !trace.showlegend)) continue; if (Registry.traceIs(trace, "pie-like")) { + var legendPerSlice = Array.isArray(trace.legend); + var showlegendPerSlice = Array.isArray(trace.showlegend); if (!slicesShown[lgroup]) slicesShown[lgroup] = {}; for (j = 0; j < cd.length; j++) { + if (showlegendPerSlice && trace.showlegend[cd[j].i] === false) { + continue; + } + if (legendPerSlice) { + lid = trace.legend[cd[j].i] || "legend"; + } var labelj = cd[j].label; if (!slicesShown[lgroup][labelj]) { addOneItem(lid, lgroup, { @@ -31880,7 +31927,11 @@ var Plotly = (() => { } function computeTextDimensions(g, gd, legendObj, aTitle) { var legendItem = g.data()[0][0]; - if (!legendObj._inHover && legendItem && !legendItem.trace.showlegend) { + var showlegend = legendItem && legendItem.trace.showlegend; + if (Array.isArray(showlegend)) { + showlegend = showlegend[legendItem.i] !== false; + } + if (!legendObj._inHover && legendItem && !showlegend) { g.remove(); return; } @@ -35150,7 +35201,7 @@ var Plotly = (() => { segments.forEach(function(segment) { var relevantParamIdx = paramsToUse[segment.charAt(0)].drawn; if (relevantParamIdx === void 0) return; - var params = segment.substr(1).match(constants.paramRE); + var params = segment.slice(1).match(constants.paramRE); if (!params || params.length < relevantParamIdx) return; var str = params[relevantParamIdx]; var pos = isRaw ? str : Lib.cleanNumber(str); @@ -35341,7 +35392,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (xParams[paramNumber]) { if (xSizemode === "pixel") param = x2p(xAnchor) + Number(param); else param = x2p(param); @@ -36350,7 +36401,7 @@ var Plotly = (() => { var xParams = constants.paramIsX[segmentType]; var yParams = constants.paramIsY[segmentType]; var nParams = constants.numParams[segmentType]; - var paramString = segment.substr(1).replace(constants.paramRE, function(param) { + var paramString = segment.slice(1).replace(constants.paramRE, function(param) { if (paramNumber >= nParams) return param; if (xParams[paramNumber]) param = moveX(param); else if (yParams[paramNumber]) param = moveY(param); @@ -38073,12 +38124,12 @@ var Plotly = (() => { if (typeof a === "string") { aPrefix = a.match(/^[xy]*/)[0]; aLen = aPrefix.length; - a = +a.substr(aLen); + a = +a.slice(aLen); } if (typeof b === "string") { bPrefix = b.match(/^[xy]*/)[0]; bLen = bPrefix.length; - b = +b.substr(bLen); + b = +b.slice(bLen); } var c = a * b; if (!aLen && !bLen) { @@ -38090,7 +38141,7 @@ var Plotly = (() => { if (aLen === bLen) { return c; } - return (aLen > bLen ? aPrefix.substr(bLen) : bPrefix.substr(aLen)) + c; + return (aLen > bLen ? aPrefix.slice(bLen) : bPrefix.slice(aLen)) + c; } function finalRatios(group, fullLayout) { var size = fullLayout._size; @@ -38103,7 +38154,7 @@ var Plotly = (() => { if (typeof val === "string") { var prefix = val.match(/^[xy]*/)[0]; var pLen = prefix.length; - val = +val.substr(pLen); + val = +val.slice(pLen); var mult = prefix.charAt(0) === "y" ? yRatio : 1 / yRatio; for (var j = 0; j < pLen; j++) { val *= mult; @@ -43720,7 +43771,7 @@ var Plotly = (() => { } if (!arrayStr) arrayStr = rootContainers[rootContainers.indexOf(rootPart)]; if (!arrayStr) return false; - var tail = astr.substr(arrayStr.length); + var tail = astr.slice(arrayStr.length); if (!tail) return { array: arrayStr, index: "", property: "" }; match = tail.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/); if (!match) return false; @@ -44077,7 +44128,7 @@ var Plotly = (() => { for (i = 0; i < minLen; i++) { if (name1.charAt(i) !== name2.charAt(i)) break; } - var out = name1.substr(0, i); + var out = name1.slice(0, i); return out.trim(); } function cleanTextPosition(textposition) { @@ -44158,7 +44209,7 @@ var Plotly = (() => { var ATTR_TAIL_RE = /(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/; function getParent(attr) { var tail = attr.search(ATTR_TAIL_RE); - if (tail > 0) return attr.substr(0, tail); + if (tail > 0) return attr.slice(0, tail); } exports.hasParent = function(aobj, attr) { var attrParent = getParent(attr); @@ -44175,8 +44226,8 @@ var Plotly = (() => { var ax = getFromTrace(gd, trace, AX_LETTERS[j]); if (ax && ax.type !== "log") { var axAttr = ax._name; - var sceneName = ax._id.substr(1); - if (sceneName.substr(0, 5) === "scene") { + var sceneName = ax._id.slice(1); + if (sceneName.slice(0, 5) === "scene") { if (layoutUpdate[sceneName] !== void 0) continue; axAttr = sceneName + "." + axAttr; } @@ -45058,7 +45109,7 @@ var Plotly = (() => { } if (attr in aobj || helpers.hasParent(aobj, attr)) return; var extraparam; - if (attr.substr(0, 6) === "LAYOUT") { + if (attr.slice(0, 6) === "LAYOUT") { extraparam = layoutNP(gd.layout, attr.replace("LAYOUT", "")); } else { var tracei = traces[i2]; @@ -45103,7 +45154,7 @@ var Plotly = (() => { else vi = null; } redoit[ai] = vi; - if (ai.substr(0, 6) === "LAYOUT") { + if (ai.slice(0, 6) === "LAYOUT") { param = layoutNP(gd.layout, ai.replace("LAYOUT", "")); undoit[ai] = [undefinedToNull(param.get())]; param.set(Array.isArray(vi) ? vi[0] : vi); @@ -45120,7 +45171,7 @@ var Plotly = (() => { newVal = Array.isArray(vi) ? vi[i % vi.length] : vi; if (newVal === void 0) continue; var finalPart = param.parts[param.parts.length - 1]; - var prefix = ai.substr(0, ai.length - finalPart.length - 1); + var prefix = ai.slice(0, ai.length - finalPart.length - 1); var prefixDot = prefix ? prefix + "." : ""; var innerContFull = prefix ? nestedProperty(contFull, prefix).get() : contFull; valObject = PlotSchema.getTraceValObject(contFull, param.parts); @@ -45345,7 +45396,7 @@ var Plotly = (() => { for (i = 0; i < keys.length; i++) { if (keys[i].indexOf("allaxes") === 0) { for (j = 0; j < axes.length; j++) { - var scene = axes[j]._id.substr(1); + var scene = axes[j]._id.slice(1); var axisAttr = scene.indexOf("scene") !== -1 ? scene + "." : ""; var newkey = keys[i].replace("allaxes", axisAttr + axes[j]._name); if (!aobj[newkey]) aobj[newkey] = aobj[keys[i]]; @@ -45653,7 +45704,7 @@ var Plotly = (() => { var match = key.match(spec.pattern); if (match) { var head = match[1] || ""; - return { head, tail: key.substr(head.length + 1), attr: spec.attr }; + return { head, tail: key.slice(head.length + 1), attr: spec.attr }; } } } @@ -45714,7 +45765,7 @@ var Plotly = (() => { } newNP.set(undefinedToNull(nestedProperty(oldFullLayout, key).get())); continue; - } else if (tail === "autorange" || tail.substr(0, 6) === "range[") { + } else if (tail === "autorange" || tail.slice(0, 6) === "range[") { var pre0 = layoutPreGUI[head + ".range[0]"]; var pre1 = layoutPreGUI[head + ".range[1]"]; var preAuto = layoutPreGUI[head + ".autorange"]; @@ -45734,7 +45785,7 @@ var Plotly = (() => { Lib.warn("unrecognized GUI edit: " + key); } delete layoutPreGUI[key]; - if (match && match.tail.substr(0, 6) === "range[") { + if (match && match.tail.slice(0, 6) === "range[") { newRangeAccepted[match.head] = 1; } } @@ -47258,7 +47309,7 @@ var Plotly = (() => { for (var i = 0; i < path.length; i++) { var p = path[i]; if (typeof p === "number") { - astr = astr.substr(0, astr.length - 1) + "[" + p + "]"; + astr = astr.slice(0, -1) + "[" + p + "]"; } else { astr += p; } @@ -49849,7 +49900,7 @@ var Plotly = (() => { prevtrace._nexttrace = trace; } } - trace._ownfill = trace.fill && (trace.fill.substr(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.substr(0, 2) === "to" && !trace._prevtrace); + trace._ownfill = trace.fill && (trace.fill.slice(0, 6) === "tozero" || trace.fill === "toself" || trace.fill.slice(0, 2) === "to" && !trace._prevtrace); prevtraces[group] = trace; } else { trace._prevtrace = trace._nexttrace = trace._ownfill = null; @@ -50052,8 +50103,8 @@ var Plotly = (() => { fullpath = thispath; revpath = thisrevpath; } else if (ownFillDir) { - fullpath += "L" + thispath.substr(1); - revpath = thisrevpath + ("L" + revpath.substr(1)); + fullpath += "L" + thispath.slice(1); + revpath = thisrevpath + ("L" + revpath.slice(1)); } else { fullpath += "Z" + thispath; revpath = thisrevpath + "Z" + revpath; @@ -50118,7 +50169,7 @@ var Plotly = (() => { if (pt0 && pt1) { if (ownFillDir) { pt0[fillAxisIndex] = pt1[fillAxisIndex] = fillAxisZero; - transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.substr(1)).call(Drawing.singleFillStyle, gd); + transition(ownFillEl3).attr("d", "M" + pt1 + "L" + pt0 + "L" + fullpath.slice(1)).call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(null); } else { transition(ownFillEl3).attr("d", fullpath + "Z").call(Drawing.singleFillStyle, gd); @@ -50128,13 +50179,13 @@ var Plotly = (() => { trace._polygons = thisPolygons; trace._fillElement = ownFillEl3; } else if (tonext) { - if (trace.fill.substr(0, 6) === "tonext" && fullpath && prevRevpath) { + if (trace.fill.slice(0, 6) === "tonext" && fullpath && prevRevpath) { if (trace.fill === "tonext") { transition(tonext).attr("d", fullpath + "Z" + prevRevpath + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makeSelfPolygons(); trace._polygons = thisPolygons.concat(prevPolygons); } else { - transition(tonext).attr("d", fullpath + "L" + prevRevpath.substr(1) + "Z").call(Drawing.singleFillStyle, gd); + transition(tonext).attr("d", fullpath + "L" + prevRevpath.slice(1) + "Z").call(Drawing.singleFillStyle, gd); thisPolygons = makePolygonsToPrevious(prevFillsegments); trace._polygons = thisPolygons; } @@ -51109,7 +51160,7 @@ var Plotly = (() => { }; function indexOfDay(v) { if (typeof v !== "string") return; - return dayStrToNum[v.substr(0, 3).toLowerCase()]; + return dayStrToNum[v.slice(0, 3).toLowerCase()]; } } }); @@ -51700,10 +51751,10 @@ var Plotly = (() => { if (constants.attrRegex.test(ki)) { var axLetter = ki.charAt(0); if (axLetter === "x") { - if (!xi || +ki.substr(5) < +xi.substr(5)) { + if (!xi || +ki.slice(5) < +xi.slice(5)) { xi = ki; } - } else if (!yi || +ki.substr(5) < +yi.substr(5)) { + } else if (!yi || +ki.slice(5) < +yi.slice(5)) { yi = ki; } } @@ -53927,7 +53978,7 @@ var Plotly = (() => { segment = segments[i]; drawnParam = paramsToUse[segment.charAt(0)].drawn; if (drawnParam === void 0) continue; - params = segments[i].substr(1).match(constants.paramRE); + params = segments[i].slice(1).match(constants.paramRE); if (!params || params.length < drawnParam) continue; val = convertVal(params[drawnParam]); if (val < min) min = val; @@ -56278,9 +56329,9 @@ var Plotly = (() => { var subplots = layoutOut._subplots; if (subplots) { var yIds = subplots.cartesian.filter(function(subplotId) { - return subplotId.substr(0, subplotId.indexOf("y")) === axisIds.name2id(axName); + return subplotId.slice(0, Math.max(0, subplotId.indexOf("y"))) === axisIds.name2id(axName); }).map(function(subplotId) { - return subplotId.substr(subplotId.indexOf("y"), subplotId.length); + return subplotId.slice(subplotId.indexOf("y"), subplotId.length); }); var yNames = Lib.simpleMap(yIds, axisIds.id2name); for (var i = 0; i < yNames.length; i++) { @@ -58282,7 +58333,7 @@ var Plotly = (() => { placeholder: fullLayout._dfltTitle.colorbar, containerGroup: g.select("." + cn.cbtitle) }; - var otherClass = titleClass.charAt(0) === "h" ? titleClass.substr(1) : "h" + titleClass; + var otherClass = titleClass.charAt(0) === "h" ? titleClass.slice(1) : "h" + titleClass; g.selectAll("." + otherClass + ",." + otherClass + "-math-group").remove(); Titles.draw(gd, titleClass, extendFlat(dfltTitleOpts, titleOpts || {})); } @@ -63077,7 +63128,7 @@ var Plotly = (() => { return function(v, isRightEdge) { var dateStr = pa.c2d(v, oneYear, calendar); var dashPos = dateStr.indexOf("-", dashExclude); - if (dashPos > 0) dateStr = dateStr.substr(0, dashPos); + if (dashPos > 0) dateStr = dateStr.slice(0, dashPos); var roundedV = pa.d2c(dateStr, 0, calendar); if (roundedV < v) { var nextV = tickIncrement(roundedV, increment, false, calendar); @@ -68327,7 +68378,7 @@ var Plotly = (() => { proto.drawAxes = function(doTitles) { var _this = this; var gd = _this.graphDiv; - var titlesuffix = _this.id.substr(7) + "title"; + var titlesuffix = _this.id.slice(7) + "title"; var layers = _this.layers; var aaxis = _this.aaxis; var baxis = _this.baxis; @@ -69483,7 +69534,7 @@ var Plotly = (() => { pathNeg = makePath(pts, trace); } if (hasBothSides) { - path = pathPos + "L" + pathNeg.substr(1) + "Z"; + path = pathPos + "L" + pathNeg.slice(1) + "Z"; } else { var startPt = [posCenterPx, valAxis.c2p(density[0].t)]; var endPt = [posCenterPx, valAxis.c2p(density[len - 1].t)]; @@ -69492,9 +69543,9 @@ var Plotly = (() => { endPt.reverse(); } if (hasPositiveSide) { - path = "M" + startPt + "L" + pathPos.substr(1) + "L" + endPt; + path = "M" + startPt + "L" + pathPos.slice(1) + "L" + endPt; } else { - path = "M" + endPt + "L" + pathNeg.substr(1) + "L" + startPt; + path = "M" + endPt + "L" + pathNeg.slice(1) + "L" + startPt; } } pathSel.attr("d", path); @@ -82769,6 +82820,12 @@ var Plotly = (() => { dflt: false, editType: "plot" }, + showlegend: extendFlat({}, baseAttrs.showlegend, { + arrayOk: true + }), + legend: extendFlat({}, baseAttrs.legend, { + arrayOk: true + }), title: { text: { valType: "string", @@ -126906,7 +126963,7 @@ var Plotly = (() => { }; exports.cleanId = function cleanId(id) { if (!id.match(/^scene[0-9]*$/)) return; - var sceneNum = id.substr(5); + var sceneNum = id.slice(5); if (sceneNum === "1") sceneNum = ""; return SCENE + sceneNum; }; @@ -141405,7 +141462,7 @@ var Plotly = (() => { var dfltSpans = constants[axisName + "Span"]; var hSpan = (dfltSpans[projType] || dfltSpans["*"]) / 2; var rot = coerce( - "projection.rotation." + axisName.substr(0, 3), + "projection.rotation." + axisName.slice(0, 3), scopeParams.projRotate[i] ); rangeDflt = [rot - hSpan, rot + hSpan]; @@ -170907,7 +170964,7 @@ void main() { } function pad2(num) { var s = "0" + num; - return s.substr(s.length - 2); + return s.slice(-2); } function getAttrName(i) { return i < maxDim ? "p" + pad2(i + 1) + "_" + pad2(i + 4) : "colors"; @@ -266219,7 +266276,7 @@ uniform ${i3} ${a3} u_${s3}; } else { if (directiveObj === UNKNOWN) replacementPart = UNKNOWN; else replacementPart = cDate.formatDate(directiveObj[modifier]); - fmt = fmt.substr(0, i) + replacementPart + fmt.substr(i + directiveLen); + fmt = fmt.slice(0, i) + replacementPart + fmt.slice(i + directiveLen); i += replacementPart.length; } } diff --git a/dist/plotly.min.js b/dist/plotly.min.js index d94ad845ea2..7e5dcadfaa3 100644 --- a/dist/plotly.min.js +++ b/dist/plotly.min.js @@ -1,5 +1,5 @@ /** -* plotly.js v3.3.0 +* plotly.js v3.3.1 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,92 +12,92 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var utt=Object.create;var CS=Object.defineProperty,ctt=Object.defineProperties,ftt=Object.getOwnPropertyDescriptor,htt=Object.getOwnPropertyDescriptors,dtt=Object.getOwnPropertyNames,s6=Object.getOwnPropertySymbols,vtt=Object.getPrototypeOf,_O=Object.prototype.hasOwnProperty,see=Object.prototype.propertyIsEnumerable;var oee=(e,t,r)=>t in e?CS(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,mg=(e,t)=>{for(var r in t||(t={}))_O.call(t,r)&&oee(e,r,t[r]);if(s6)for(var r of s6(t))see.call(t,r)&&oee(e,r,t[r]);return e},q1=(e,t)=>ctt(e,htt(t));var lee=(e,t)=>{var r={};for(var n in e)_O.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&s6)for(var n of s6(e))t.indexOf(n)<0&&see.call(e,n)&&(r[n]=e[n]);return r};var gu=(e,t)=>()=>(e&&(t=e(e=0)),t);var ye=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),uee=(e,t)=>{for(var r in t)CS(e,r,{get:t[r],enumerable:!0})},cee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of dtt(t))!_O.call(e,i)&&i!==r&&CS(e,i,{get:()=>t[i],enumerable:!(n=ftt(t,i))||n.enumerable});return e};var ptt=(e,t,r)=>(r=e!=null?utt(vtt(e)):{},cee(t||!e||!e.__esModule?CS(r,"default",{value:e,enumerable:!0}):r,e)),ob=e=>cee(CS({},"__esModule",{value:!0}),e);var l6=ye(fee=>{"use strict";fee.version="3.3.0"});var dee=ye((hee,u6)=>{(function(t,r,n){r[t]=r[t]||n(),typeof u6!="undefined"&&u6.exports&&(u6.exports=r[t])})("Promise",typeof window!="undefined"?window:hee,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,S,L){return Object.defineProperty(k,E,{value:S,writable:!0,configurable:L!==!1})}}catch(p){t=function(E,S,L){return E[S]=L,E}}n=function(){var k,E,S;function L(x,C){this.fn=x,this.self=C,this.next=void 0}return{add:function(C,M){S=new L(C,M),E?E.next=S:k=S,E=S,S=void 0},drain:function(){var C=k;for(k=E=r=void 0;C;)C.fn.call(C.self),C=C.next}}}();function o(p,k){n.add(p,k),r||(r=a(n.drain))}function s(p){var k,E=typeof p;return p!=null&&(E=="object"||E=="function")&&(k=p.then),typeof k=="function"?k:!1}function l(){for(var p=0;p0&&o(l,E))}catch(S){f.call(new d(E),S)}}}function f(p){var k=this;k.triggered||(k.triggered=!0,k.def&&(k=k.def),k.msg=p,k.state=2,k.chain.length>0&&o(l,k))}function h(p,k,E,S){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 Te=se.length,Ne=new Array(Te);Te--;)Ne[Te]=se[Te];return Ne}}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,l=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,c=u.setProperty;o.setAttribute=function(se,Te){s.call(this,se,Te+"")},o.setAttributeNS=function(se,Te,Ne){l.call(this,se,Te,Ne+"")},u.setProperty=function(se,Te,Ne){c.call(this,se,Te+"",Ne)}}e.ascending=f;function f(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 Te=-1,Ne=X.length,He,Ye;if(arguments.length===1){for(;++Te=Ye){He=Ye;break}for(;++TeYe&&(He=Ye)}else{for(;++Te=Ye){He=Ye;break}for(;++TeYe&&(He=Ye)}return He},e.max=function(X,se){var Te=-1,Ne=X.length,He,Ye;if(arguments.length===1){for(;++Te=Ye){He=Ye;break}for(;++TeHe&&(He=Ye)}else{for(;++Te=Ye){He=Ye;break}for(;++TeHe&&(He=Ye)}return He},e.extent=function(X,se){var Te=-1,Ne=X.length,He,Ye,kt;if(arguments.length===1){for(;++Te=Ye){He=kt=Ye;break}for(;++TeYe&&(He=Ye),kt=Ye){He=kt=Ye;break}for(;++TeYe&&(He=Ye),kt1)return kt/(jt-1)},e.deviation=function(){var X=e.variance.apply(this,arguments);return X&&Math.sqrt(X)};function v(X){return{left:function(se,Te,Ne,He){for(arguments.length<3&&(Ne=0),arguments.length<4&&(He=se.length);Ne>>1;X(se[Ye],Te)<0?Ne=Ye+1:He=Ye}return Ne},right:function(se,Te,Ne,He){for(arguments.length<3&&(Ne=0),arguments.length<4&&(He=se.length);Ne>>1;X(se[Ye],Te)>0?He=Ye:Ne=Ye+1}return Ne}}}var _=v(f);e.bisectLeft=_.left,e.bisect=e.bisectRight=_.right,e.bisector=function(X){return v(X.length===1?function(se,Te){return f(X(se),Te)}:X)},e.shuffle=function(X,se,Te){(Ne=arguments.length)<3&&(Te=X.length,Ne<2&&(se=0));for(var Ne=Te-se,He,Ye;Ne;)Ye=Math.random()*Ne--|0,He=X[Ne+se],X[Ne+se]=X[Ye+se],X[Ye+se]=He;return X},e.permute=function(X,se){for(var Te=se.length,Ne=new Array(Te);Te--;)Ne[Te]=X[se[Te]];return Ne},e.pairs=function(X){for(var se=0,Te=X.length-1,Ne,He=X[0],Ye=new Array(Te<0?0:Te);se=0;)for(kt=X[se],Te=kt.length;--Te>=0;)Ye[--He]=kt[Te];return Ye};var p=Math.abs;e.range=function(X,se,Te){if(arguments.length<3&&(Te=1,arguments.length<2&&(se=X,X=0)),(se-X)/Te===1/0)throw new Error("infinite range");var Ne=[],He=k(p(Te)),Ye=-1,kt;if(X*=He,se*=He,Te*=He,Te<0)for(;(kt=X+Te*++Ye)>se;)Ne.push(kt/He);else for(;(kt=X+Te*++Ye)=se.length)return He?He.call(X,jt):Ne?jt.sort(Ne):jt;for(var yr=-1,Hr=jt.length,qr=se[gr++],_i,bi,Zr,ai=new S,gi;++yr=se.length)return nt;var gr=[],yr=Te[jt++];return nt.forEach(function(Hr,qr){gr.push({key:Hr,values:kt(qr,jt)})}),yr?gr.sort(function(Hr,qr){return yr(Hr.key,qr.key)}):gr}return X.map=function(nt,jt){return Ye(jt,nt,0)},X.entries=function(nt){return kt(Ye(e.map,nt,0),0)},X.key=function(nt){return se.push(nt),X},X.sortKeys=function(nt){return Te[se.length-1]=nt,X},X.sortValues=function(nt){return Ne=nt,X},X.rollup=function(nt){return He=nt,X},X},e.set=function(X){var se=new V;if(X)for(var Te=0,Ne=X.length;Te=0&&(Ne=X.slice(Te+1),X=X.slice(0,Te)),X)return arguments.length<2?this[X].on(Ne):this[X].on(Ne,se);if(arguments.length===2){if(se==null)for(X in this)this.hasOwnProperty(X)&&this[X].on(Ne,null);return this}};function oe(X){var se=[],Te=new S;function Ne(){for(var He=se,Ye=-1,kt=He.length,nt;++Ye=0&&(Te=X.slice(0,se))!=="xmlns"&&(X=X.slice(se+1)),Ze.hasOwnProperty(Te)?{space:Ze[Te],local:X}:X}},Pe.attr=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Te=this.node();return X=e.ns.qualify(X),X.local?Te.getAttributeNS(X.space,X.local):Te.getAttribute(X)}for(se in X)this.each(ut(se,X[se]));return this}return this.each(ut(X,se))};function ut(X,se){X=e.ns.qualify(X);function Te(){this.removeAttribute(X)}function Ne(){this.removeAttributeNS(X.space,X.local)}function He(){this.setAttribute(X,se)}function Ye(){this.setAttributeNS(X.space,X.local,se)}function kt(){var jt=se.apply(this,arguments);jt==null?this.removeAttribute(X):this.setAttribute(X,jt)}function nt(){var jt=se.apply(this,arguments);jt==null?this.removeAttributeNS(X.space,X.local):this.setAttributeNS(X.space,X.local,jt)}return se==null?X.local?Ne:Te:typeof se=="function"?X.local?nt:kt:X.local?Ye:He}function pt(X){return X.trim().replace(/\s+/g," ")}Pe.classed=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Te=this.node(),Ne=(X=st(X)).length,He=-1;if(se=Te.classList){for(;++He=0;)(Ye=Te[Ne])&&(He&&He!==Ye.nextSibling&&He.parentNode.insertBefore(Ye,He),He=Ye);return this},Pe.sort=function(X){X=St.apply(this,arguments);for(var se=-1,Te=this.length;++se=se&&(se=He+1);!(jt=kt[se])&&++se0&&(X=X.slice(0,He));var kt=er.get(X);kt&&(X=kt,Ye=Tr);function nt(){var yr=this[Ne];yr&&(this.removeEventListener(X,yr,yr.$),delete this[Ne])}function jt(){var yr=Ye(se,r(arguments));nt.call(this),this.addEventListener(X,this[Ne]=yr,yr.$=Te),yr._=se}function gr(){var yr=new RegExp("^__on([^.]+)"+e.requote(X)+"$"),Hr;for(var qr in this)if(Hr=qr.match(yr)){var _i=this[qr];this.removeEventListener(Hr[1],_i,_i.$),delete this[qr]}}return He?se?jt:nt:se?j:gr}var er=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&er.forEach(function(X){"on"+X in n&&er.remove(X)});function lr(X,se){return function(Te){var Ne=e.event;e.event=Te,se[0]=this.__data__;try{X.apply(this,se)}finally{e.event=Ne}}}function Tr(X,se){var Te=lr(X,se);return function(Ne){var He=this,Ye=Ne.relatedTarget;(!Ye||Ye!==He&&!(Ye.compareDocumentPosition(He)&8))&&Te.call(He,Ne)}}var Lr,ti=0;function Br(X){var se=".dragsuppress-"+ ++ti,Te="click"+se,Ne=e.select(a(X)).on("touchmove"+se,_e).on("dragstart"+se,_e).on("selectstart"+se,_e);if(Lr==null&&(Lr="onselectstart"in X?!1:H(X.style,"userSelect")),Lr){var He=i(X).style,Ye=He[Lr];He[Lr]="none"}return function(kt){if(Ne.on(se,null),Lr&&(He[Lr]=Ye),kt){var nt=function(){Ne.on(Te,null)};Ne.on(Te,function(){_e(),nt()},!0),setTimeout(nt,0)}}}e.mouse=function(X){return dt(X,Ee())};var Vr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function dt(X,se){se.changedTouches&&(se=se.changedTouches[0]);var Te=X.ownerSVGElement||X;if(Te.createSVGPoint){var Ne=Te.createSVGPoint();if(Vr<0){var He=a(X);if(He.scrollX||He.scrollY){Te=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var Ye=Te[0][0].getScreenCTM();Vr=!(Ye.f||Ye.e),Te.remove()}}return Vr?(Ne.x=se.pageX,Ne.y=se.pageY):(Ne.x=se.clientX,Ne.y=se.clientY),Ne=Ne.matrixTransform(X.getScreenCTM().inverse()),[Ne.x,Ne.y]}var kt=X.getBoundingClientRect();return[se.clientX-kt.left-X.clientLeft,se.clientY-kt.top-X.clientTop]}e.touch=function(X,se,Te){if(arguments.length<3&&(Te=se,se=Ee().changedTouches),se){for(var Ne=0,He=se.length,Ye;Ne0?1:X<0?-1:0}function ar(X,se,Te){return(se[0]-X[0])*(Te[1]-X[1])-(se[1]-X[1])*(Te[0]-X[0])}function vr(X){return X>1?0:X<-1?tt:Math.acos(X)}function ii(X){return X>1?xe:X<-1?-xe:Math.asin(X)}function pi(X){return((X=Math.exp(X))-1/X)/2}function $r(X){return((X=Math.exp(X))+1/X)/2}function di(X){return((X=Math.exp(2*X))-1)/(X+1)}function ji(X){return(X=Math.sin(X/2))*X}var In=Math.SQRT2,wi=2,On=4;e.interpolateZoom=function(X,se){var Te=X[0],Ne=X[1],He=X[2],Ye=se[0],kt=se[1],nt=se[2],jt=Ye-Te,gr=kt-Ne,yr=jt*jt+gr*gr,Hr,qr;if(yr0&&(Gn=Gn.transition().duration(kt)),Gn.call(Si.event)}function Ea(){ai&&ai.domain(Zr.range().map(function(Gn){return(Gn-X.x)/X.k}).map(Zr.invert)),Ii&&Ii.domain(gi.range().map(function(Gn){return(Gn-X.y)/X.k}).map(gi.invert))}function Ia(Gn){nt++||Gn({type:"zoomstart"})}function yo(Gn){Ea(),Gn({type:"zoom",scale:X.k,translate:[X.x,X.y]})}function Da(Gn){--nt||(Gn({type:"zoomend"}),Te=null)}function go(){var Gn=this,Ha=bi.of(Gn,arguments),Fo=0,Uo=e.select(a(Gn)).on(gr,bu).on(yr,dl),$s=ei(e.mouse(Gn)),Sl=Br(Gn);fa.call(Gn),Ia(Ha);function bu(){Fo=1,Un(e.mouse(Gn),$s),yo(Ha)}function dl(){Uo.on(gr,null).on(yr,null),Sl(Fo),Da(Ha)}}function Is(){var Gn=this,Ha=bi.of(Gn,arguments),Fo={},Uo=0,$s,Sl=".zoom-"+e.event.changedTouches[0].identifier,bu="touchmove"+Sl,dl="touchend"+Sl,Sc=[],Me=e.select(Gn),bt=Br(Gn);Rr(),Ia(Ha),Me.on(jt,null).on(qr,Rr);function zt(){var Gr=e.touches(Gn);return $s=X.k,Gr.forEach(function(mi){mi.identifier in Fo&&(Fo[mi.identifier]=ei(mi))}),Gr}function Rr(){var Gr=e.event.target;e.select(Gr).on(bu,jr).on(dl,Nr),Sc.push(Gr);for(var mi=e.event.changedTouches,Ui=0,qi=mi.length;Ui1){var en=Ei[0],Wi=Ei[1],si=en[0]-Wi[0],Mr=en[1]-Wi[1];Uo=si*si+Mr*Mr}}function jr(){var Gr=e.touches(Gn),mi,Ui,qi,Ei;fa.call(Gn);for(var Hn=0,en=Gr.length;Hn1?1:se,Te=Te<0?0:Te>1?1:Te,He=Te<=.5?Te*(1+se):Te+se-Te*se,Ne=2*Te-He;function Ye(nt){return nt>360?nt-=360:nt<0&&(nt+=360),nt<60?Ne+(He-Ne)*nt/60:nt<180?He:nt<240?Ne+(He-Ne)*(240-nt)/60:Ne}function kt(nt){return Math.round(Ye(nt)*255)}return new Wa(kt(X+120),kt(X),kt(X-120))}e.hcl=nr;function nr(X,se,Te){return this instanceof nr?(this.h=+X,this.c=+se,void(this.l=+Te)):arguments.length<2?X instanceof nr?new nr(X.h,X.c,X.l):X instanceof ri?Sn(X.l,X.a,X.b):Sn((X=jn((X=e.rgb(X)).r,X.g,X.b)).l,X.a,X.b):new nr(X,se,Te)}var Er=nr.prototype=new la;Er.brighter=function(X){return new nr(this.h,this.c,Math.min(100,this.l+Qr*(arguments.length?X:1)))},Er.darker=function(X){return new nr(this.h,this.c,Math.max(0,this.l-Qr*(arguments.length?X:1)))},Er.rgb=function(){return Xr(this.h,this.c,this.l).rgb()};function Xr(X,se,Te){return isNaN(X)&&(X=0),isNaN(se)&&(se=0),new ri(Te,Math.cos(X*=ke)*se,Math.sin(X)*se)}e.lab=ri;function ri(X,se,Te){return this instanceof ri?(this.l=+X,this.a=+se,void(this.b=+Te)):arguments.length<2?X instanceof ri?new ri(X.l,X.a,X.b):X instanceof nr?Xr(X.h,X.c,X.l):jn((X=Wa(X)).r,X.g,X.b):new ri(X,se,Te)}var Qr=18,Oi=.95047,$i=1,tn=1.08883,fn=ri.prototype=new la;fn.brighter=function(X){return new ri(Math.min(100,this.l+Qr*(arguments.length?X:1)),this.a,this.b)},fn.darker=function(X){return new ri(Math.max(0,this.l-Qr*(arguments.length?X:1)),this.a,this.b)},fn.rgb=function(){return yn(this.l,this.a,this.b)};function yn(X,se,Te){var Ne=(X+16)/116,He=Ne+se/500,Ye=Ne-Te/200;return He=Ba(He)*Oi,Ne=Ba(Ne)*$i,Ye=Ba(Ye)*tn,new Wa(ma(3.2404542*He-1.5371385*Ne-.4985314*Ye),ma(-.969266*He+1.8760108*Ne+.041556*Ye),ma(.0556434*He-.2040259*Ne+1.0572252*Ye))}function Sn(X,se,Te){return X>0?new nr(Math.atan2(Te,se)*vt,Math.sqrt(se*se+Te*Te),X):new nr(NaN,NaN,X)}function Ba(X){return X>.206893034?X*X*X:(X-4/29)/7.787037}function ua(X){return X>.008856?Math.pow(X,1/3):7.787037*X+4/29}function ma(X){return Math.round(255*(X<=.00304?12.92*X:1.055*Math.pow(X,1/2.4)-.055))}e.rgb=Wa;function Wa(X,se,Te){return this instanceof Wa?(this.r=~~X,this.g=~~se,void(this.b=~~Te)):arguments.length<2?X instanceof Wa?new Wa(X.r,X.g,X.b):Ga(""+X,Wa,rr):new Wa(X,se,Te)}function Fa(X){return new Wa(X>>16,X>>8&255,X&255)}function Wo(X){return Fa(X)+""}var da=Wa.prototype=new la;da.brighter=function(X){X=Math.pow(.7,arguments.length?X:1);var se=this.r,Te=this.g,Ne=this.b,He=30;return!se&&!Te&&!Ne?new Wa(He,He,He):(se&&se>4,Ne=Ne>>4|Ne,He=jt&240,He=He>>4|He,Ye=jt&15,Ye=Ye<<4|Ye):X.length===7&&(Ne=(jt&16711680)>>16,He=(jt&65280)>>8,Ye=jt&255)),se(Ne,He,Ye))}function vo(X,se,Te){var Ne=Math.min(X/=255,se/=255,Te/=255),He=Math.max(X,se,Te),Ye=He-Ne,kt,nt,jt=(He+Ne)/2;return Ye?(nt=jt<.5?Ye/(He+Ne):Ye/(2-He-Ne),X==He?kt=(se-Te)/Ye+(se0&&jt<1?0:kt),new Ut(kt,nt,jt)}function jn(X,se,Te){X=Mt(X),se=Mt(se),Te=Mt(Te);var Ne=ua((.4124564*X+.3575761*se+.1804375*Te)/Oi),He=ua((.2126729*X+.7151522*se+.072175*Te)/$i),Ye=ua((.0193339*X+.119192*se+.9503041*Te)/tn);return ri(116*He-16,500*(Ne-He),200*(He-Ye))}function Mt(X){return(X/=255)<=.04045?X/12.92:Math.pow((X+.055)/1.055,2.4)}function kr(X){var se=parseFloat(X);return X.charAt(X.length-1)==="%"?Math.round(se*2.55):se}var Jr=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});Jr.forEach(function(X,se){Jr.set(X,Fa(se))});function vi(X){return typeof X=="function"?X:function(){return X}}e.functor=vi,e.xhr=hn(G);function hn(X){return function(se,Te,Ne){return arguments.length===2&&typeof Te=="function"&&(Ne=Te,Te=null),An(se,Te,X,Ne)}}function An(X,se,Te,Ne){var He={},Ye=e.dispatch("beforesend","progress","load","error"),kt={},nt=new XMLHttpRequest,jt=null;self.XDomainRequest&&!("withCredentials"in nt)&&/^(http(s)?:)?\/\//.test(X)&&(nt=new XDomainRequest),"onload"in nt?nt.onload=nt.onerror=gr:nt.onreadystatechange=function(){nt.readyState>3&&gr()};function gr(){var yr=nt.status,Hr;if(!yr&&Li(nt)||yr>=200&&yr<300||yr===304){try{Hr=Te.call(He,nt)}catch(qr){Ye.error.call(He,qr);return}Ye.load.call(He,Hr)}else Ye.error.call(He,nt)}return nt.onprogress=function(yr){var Hr=e.event;e.event=yr;try{Ye.progress.call(He,nt)}finally{e.event=Hr}},He.header=function(yr,Hr){return yr=(yr+"").toLowerCase(),arguments.length<2?kt[yr]:(Hr==null?delete kt[yr]:kt[yr]=Hr+"",He)},He.mimeType=function(yr){return arguments.length?(se=yr==null?null:yr+"",He):se},He.responseType=function(yr){return arguments.length?(jt=yr,He):jt},He.response=function(yr){return Te=yr,He},["get","post"].forEach(function(yr){He[yr]=function(){return He.send.apply(He,[yr].concat(r(arguments)))}}),He.send=function(yr,Hr,qr){if(arguments.length===2&&typeof Hr=="function"&&(qr=Hr,Hr=null),nt.open(yr,X,!0),se!=null&&!("accept"in kt)&&(kt.accept=se+",*/*"),nt.setRequestHeader)for(var _i in kt)nt.setRequestHeader(_i,kt[_i]);return se!=null&&nt.overrideMimeType&&nt.overrideMimeType(se),jt!=null&&(nt.responseType=jt),qr!=null&&He.on("error",qr).on("load",function(bi){qr(null,bi)}),Ye.beforesend.call(He,nt),nt.send(Hr==null?null:Hr),He},He.abort=function(){return nt.abort(),He},e.rebind(He,Ye,"on"),Ne==null?He:He.get(Mn(Ne))}function Mn(X){return X.length===1?function(se,Te){X(se==null?Te:null)}:X}function Li(X){var se=X.responseType;return se&&se!=="text"?X.response:X.responseText}e.dsv=function(X,se){var Te=new RegExp('["'+X+` +"use strict";var Plotly=(()=>{var ctt=Object.create;var LS=Object.defineProperty,ftt=Object.defineProperties,htt=Object.getOwnPropertyDescriptor,dtt=Object.getOwnPropertyDescriptors,vtt=Object.getOwnPropertyNames,s6=Object.getOwnPropertySymbols,ptt=Object.getPrototypeOf,xO=Object.prototype.hasOwnProperty,lee=Object.prototype.propertyIsEnumerable;var see=(e,t,r)=>t in e?LS(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,mg=(e,t)=>{for(var r in t||(t={}))xO.call(t,r)&&see(e,r,t[r]);if(s6)for(var r of s6(t))lee.call(t,r)&&see(e,r,t[r]);return e},q1=(e,t)=>ftt(e,dtt(t));var uee=(e,t)=>{var r={};for(var n in e)xO.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&s6)for(var n of s6(e))t.indexOf(n)<0&&lee.call(e,n)&&(r[n]=e[n]);return r};var gu=(e,t)=>()=>(e&&(t=e(e=0)),t);var ye=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),cee=(e,t)=>{for(var r in t)LS(e,r,{get:t[r],enumerable:!0})},fee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of vtt(t))!xO.call(e,i)&&i!==r&&LS(e,i,{get:()=>t[i],enumerable:!(n=htt(t,i))||n.enumerable});return e};var gtt=(e,t,r)=>(r=e!=null?ctt(ptt(e)):{},fee(t||!e||!e.__esModule?LS(r,"default",{value:e,enumerable:!0}):r,e)),ob=e=>fee(LS({},"__esModule",{value:!0}),e);var l6=ye(hee=>{"use strict";hee.version="3.3.1"});var vee=ye((dee,u6)=>{(function(t,r,n){r[t]=r[t]||n(),typeof u6!="undefined"&&u6.exports&&(u6.exports=r[t])})("Promise",typeof window!="undefined"?window:dee,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,S,L){return Object.defineProperty(k,E,{value:S,writable:!0,configurable:L!==!1})}}catch(p){t=function(E,S,L){return E[S]=L,E}}n=function(){var k,E,S;function L(x,C){this.fn=x,this.self=C,this.next=void 0}return{add:function(C,M){S=new L(C,M),E?E.next=S:k=S,E=S,S=void 0},drain:function(){var C=k;for(k=E=r=void 0;C;)C.fn.call(C.self),C=C.next}}}();function o(p,k){n.add(p,k),r||(r=a(n.drain))}function s(p){var k,E=typeof p;return p!=null&&(E=="object"||E=="function")&&(k=p.then),typeof k=="function"?k:!1}function l(){for(var p=0;p0&&o(l,E))}catch(S){f.call(new d(E),S)}}}function f(p){var k=this;k.triggered||(k.triggered=!0,k.def&&(k=k.def),k.msg=p,k.state=2,k.chain.length>0&&o(l,k))}function h(p,k,E,S){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 Te=se.length,Ne=new Array(Te);Te--;)Ne[Te]=se[Te];return Ne}}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,l=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,c=u.setProperty;o.setAttribute=function(se,Te){s.call(this,se,Te+"")},o.setAttributeNS=function(se,Te,Ne){l.call(this,se,Te,Ne+"")},u.setProperty=function(se,Te,Ne){c.call(this,se,Te+"",Ne)}}e.ascending=f;function f(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 Te=-1,Ne=X.length,He,Ye;if(arguments.length===1){for(;++Te=Ye){He=Ye;break}for(;++TeYe&&(He=Ye)}else{for(;++Te=Ye){He=Ye;break}for(;++TeYe&&(He=Ye)}return He},e.max=function(X,se){var Te=-1,Ne=X.length,He,Ye;if(arguments.length===1){for(;++Te=Ye){He=Ye;break}for(;++TeHe&&(He=Ye)}else{for(;++Te=Ye){He=Ye;break}for(;++TeHe&&(He=Ye)}return He},e.extent=function(X,se){var Te=-1,Ne=X.length,He,Ye,kt;if(arguments.length===1){for(;++Te=Ye){He=kt=Ye;break}for(;++TeYe&&(He=Ye),kt=Ye){He=kt=Ye;break}for(;++TeYe&&(He=Ye),kt1)return kt/(jt-1)},e.deviation=function(){var X=e.variance.apply(this,arguments);return X&&Math.sqrt(X)};function v(X){return{left:function(se,Te,Ne,He){for(arguments.length<3&&(Ne=0),arguments.length<4&&(He=se.length);Ne>>1;X(se[Ye],Te)<0?Ne=Ye+1:He=Ye}return Ne},right:function(se,Te,Ne,He){for(arguments.length<3&&(Ne=0),arguments.length<4&&(He=se.length);Ne>>1;X(se[Ye],Te)>0?He=Ye:Ne=Ye+1}return Ne}}}var _=v(f);e.bisectLeft=_.left,e.bisect=e.bisectRight=_.right,e.bisector=function(X){return v(X.length===1?function(se,Te){return f(X(se),Te)}:X)},e.shuffle=function(X,se,Te){(Ne=arguments.length)<3&&(Te=X.length,Ne<2&&(se=0));for(var Ne=Te-se,He,Ye;Ne;)Ye=Math.random()*Ne--|0,He=X[Ne+se],X[Ne+se]=X[Ye+se],X[Ye+se]=He;return X},e.permute=function(X,se){for(var Te=se.length,Ne=new Array(Te);Te--;)Ne[Te]=X[se[Te]];return Ne},e.pairs=function(X){for(var se=0,Te=X.length-1,Ne,He=X[0],Ye=new Array(Te<0?0:Te);se=0;)for(kt=X[se],Te=kt.length;--Te>=0;)Ye[--He]=kt[Te];return Ye};var p=Math.abs;e.range=function(X,se,Te){if(arguments.length<3&&(Te=1,arguments.length<2&&(se=X,X=0)),(se-X)/Te===1/0)throw new Error("infinite range");var Ne=[],He=k(p(Te)),Ye=-1,kt;if(X*=He,se*=He,Te*=He,Te<0)for(;(kt=X+Te*++Ye)>se;)Ne.push(kt/He);else for(;(kt=X+Te*++Ye)=se.length)return He?He.call(X,jt):Ne?jt.sort(Ne):jt;for(var yr=-1,Hr=jt.length,qr=se[gr++],_i,bi,Zr,ai=new S,gi;++yr=se.length)return nt;var gr=[],yr=Te[jt++];return nt.forEach(function(Hr,qr){gr.push({key:Hr,values:kt(qr,jt)})}),yr?gr.sort(function(Hr,qr){return yr(Hr.key,qr.key)}):gr}return X.map=function(nt,jt){return Ye(jt,nt,0)},X.entries=function(nt){return kt(Ye(e.map,nt,0),0)},X.key=function(nt){return se.push(nt),X},X.sortKeys=function(nt){return Te[se.length-1]=nt,X},X.sortValues=function(nt){return Ne=nt,X},X.rollup=function(nt){return He=nt,X},X},e.set=function(X){var se=new V;if(X)for(var Te=0,Ne=X.length;Te=0&&(Ne=X.slice(Te+1),X=X.slice(0,Te)),X)return arguments.length<2?this[X].on(Ne):this[X].on(Ne,se);if(arguments.length===2){if(se==null)for(X in this)this.hasOwnProperty(X)&&this[X].on(Ne,null);return this}};function oe(X){var se=[],Te=new S;function Ne(){for(var He=se,Ye=-1,kt=He.length,nt;++Ye=0&&(Te=X.slice(0,se))!=="xmlns"&&(X=X.slice(se+1)),Ze.hasOwnProperty(Te)?{space:Ze[Te],local:X}:X}},Pe.attr=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Te=this.node();return X=e.ns.qualify(X),X.local?Te.getAttributeNS(X.space,X.local):Te.getAttribute(X)}for(se in X)this.each(ut(se,X[se]));return this}return this.each(ut(X,se))};function ut(X,se){X=e.ns.qualify(X);function Te(){this.removeAttribute(X)}function Ne(){this.removeAttributeNS(X.space,X.local)}function He(){this.setAttribute(X,se)}function Ye(){this.setAttributeNS(X.space,X.local,se)}function kt(){var jt=se.apply(this,arguments);jt==null?this.removeAttribute(X):this.setAttribute(X,jt)}function nt(){var jt=se.apply(this,arguments);jt==null?this.removeAttributeNS(X.space,X.local):this.setAttributeNS(X.space,X.local,jt)}return se==null?X.local?Ne:Te:typeof se=="function"?X.local?nt:kt:X.local?Ye:He}function pt(X){return X.trim().replace(/\s+/g," ")}Pe.classed=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Te=this.node(),Ne=(X=st(X)).length,He=-1;if(se=Te.classList){for(;++He=0;)(Ye=Te[Ne])&&(He&&He!==Ye.nextSibling&&He.parentNode.insertBefore(Ye,He),He=Ye);return this},Pe.sort=function(X){X=St.apply(this,arguments);for(var se=-1,Te=this.length;++se=se&&(se=He+1);!(jt=kt[se])&&++se0&&(X=X.slice(0,He));var kt=er.get(X);kt&&(X=kt,Ye=Tr);function nt(){var yr=this[Ne];yr&&(this.removeEventListener(X,yr,yr.$),delete this[Ne])}function jt(){var yr=Ye(se,r(arguments));nt.call(this),this.addEventListener(X,this[Ne]=yr,yr.$=Te),yr._=se}function gr(){var yr=new RegExp("^__on([^.]+)"+e.requote(X)+"$"),Hr;for(var qr in this)if(Hr=qr.match(yr)){var _i=this[qr];this.removeEventListener(Hr[1],_i,_i.$),delete this[qr]}}return He?se?jt:nt:se?H:gr}var er=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&er.forEach(function(X){"on"+X in n&&er.remove(X)});function lr(X,se){return function(Te){var Ne=e.event;e.event=Te,se[0]=this.__data__;try{X.apply(this,se)}finally{e.event=Ne}}}function Tr(X,se){var Te=lr(X,se);return function(Ne){var He=this,Ye=Ne.relatedTarget;(!Ye||Ye!==He&&!(Ye.compareDocumentPosition(He)&8))&&Te.call(He,Ne)}}var Lr,ti=0;function Br(X){var se=".dragsuppress-"+ ++ti,Te="click"+se,Ne=e.select(a(X)).on("touchmove"+se,_e).on("dragstart"+se,_e).on("selectstart"+se,_e);if(Lr==null&&(Lr="onselectstart"in X?!1:j(X.style,"userSelect")),Lr){var He=i(X).style,Ye=He[Lr];He[Lr]="none"}return function(kt){if(Ne.on(se,null),Lr&&(He[Lr]=Ye),kt){var nt=function(){Ne.on(Te,null)};Ne.on(Te,function(){_e(),nt()},!0),setTimeout(nt,0)}}}e.mouse=function(X){return dt(X,Ee())};var Vr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function dt(X,se){se.changedTouches&&(se=se.changedTouches[0]);var Te=X.ownerSVGElement||X;if(Te.createSVGPoint){var Ne=Te.createSVGPoint();if(Vr<0){var He=a(X);if(He.scrollX||He.scrollY){Te=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var Ye=Te[0][0].getScreenCTM();Vr=!(Ye.f||Ye.e),Te.remove()}}return Vr?(Ne.x=se.pageX,Ne.y=se.pageY):(Ne.x=se.clientX,Ne.y=se.clientY),Ne=Ne.matrixTransform(X.getScreenCTM().inverse()),[Ne.x,Ne.y]}var kt=X.getBoundingClientRect();return[se.clientX-kt.left-X.clientLeft,se.clientY-kt.top-X.clientTop]}e.touch=function(X,se,Te){if(arguments.length<3&&(Te=se,se=Ee().changedTouches),se){for(var Ne=0,He=se.length,Ye;Ne0?1:X<0?-1:0}function ar(X,se,Te){return(se[0]-X[0])*(Te[1]-X[1])-(se[1]-X[1])*(Te[0]-X[0])}function vr(X){return X>1?0:X<-1?tt:Math.acos(X)}function ii(X){return X>1?xe:X<-1?-xe:Math.asin(X)}function pi(X){return((X=Math.exp(X))-1/X)/2}function $r(X){return((X=Math.exp(X))+1/X)/2}function di(X){return((X=Math.exp(2*X))-1)/(X+1)}function ji(X){return(X=Math.sin(X/2))*X}var In=Math.SQRT2,wi=2,On=4;e.interpolateZoom=function(X,se){var Te=X[0],Ne=X[1],He=X[2],Ye=se[0],kt=se[1],nt=se[2],jt=Ye-Te,gr=kt-Ne,yr=jt*jt+gr*gr,Hr,qr;if(yr0&&(Gn=Gn.transition().duration(kt)),Gn.call(Si.event)}function Ea(){ai&&ai.domain(Zr.range().map(function(Gn){return(Gn-X.x)/X.k}).map(Zr.invert)),Ii&&Ii.domain(gi.range().map(function(Gn){return(Gn-X.y)/X.k}).map(gi.invert))}function Ia(Gn){nt++||Gn({type:"zoomstart"})}function yo(Gn){Ea(),Gn({type:"zoom",scale:X.k,translate:[X.x,X.y]})}function Da(Gn){--nt||(Gn({type:"zoomend"}),Te=null)}function go(){var Gn=this,ja=bi.of(Gn,arguments),Fo=0,Uo=e.select(a(Gn)).on(gr,bu).on(yr,dl),$s=ei(e.mouse(Gn)),Sl=Br(Gn);fa.call(Gn),Ia(ja);function bu(){Fo=1,Un(e.mouse(Gn),$s),yo(ja)}function dl(){Uo.on(gr,null).on(yr,null),Sl(Fo),Da(ja)}}function Is(){var Gn=this,ja=bi.of(Gn,arguments),Fo={},Uo=0,$s,Sl=".zoom-"+e.event.changedTouches[0].identifier,bu="touchmove"+Sl,dl="touchend"+Sl,Sc=[],Me=e.select(Gn),bt=Br(Gn);Rr(),Ia(ja),Me.on(jt,null).on(qr,Rr);function zt(){var Gr=e.touches(Gn);return $s=X.k,Gr.forEach(function(mi){mi.identifier in Fo&&(Fo[mi.identifier]=ei(mi))}),Gr}function Rr(){var Gr=e.event.target;e.select(Gr).on(bu,jr).on(dl,Nr),Sc.push(Gr);for(var mi=e.event.changedTouches,Ui=0,qi=mi.length;Ui1){var en=Ei[0],Wi=Ei[1],si=en[0]-Wi[0],Mr=en[1]-Wi[1];Uo=si*si+Mr*Mr}}function jr(){var Gr=e.touches(Gn),mi,Ui,qi,Ei;fa.call(Gn);for(var Hn=0,en=Gr.length;Hn1?1:se,Te=Te<0?0:Te>1?1:Te,He=Te<=.5?Te*(1+se):Te+se-Te*se,Ne=2*Te-He;function Ye(nt){return nt>360?nt-=360:nt<0&&(nt+=360),nt<60?Ne+(He-Ne)*nt/60:nt<180?He:nt<240?Ne+(He-Ne)*(240-nt)/60:Ne}function kt(nt){return Math.round(Ye(nt)*255)}return new Wa(kt(X+120),kt(X),kt(X-120))}e.hcl=nr;function nr(X,se,Te){return this instanceof nr?(this.h=+X,this.c=+se,void(this.l=+Te)):arguments.length<2?X instanceof nr?new nr(X.h,X.c,X.l):X instanceof ri?Sn(X.l,X.a,X.b):Sn((X=jn((X=e.rgb(X)).r,X.g,X.b)).l,X.a,X.b):new nr(X,se,Te)}var Er=nr.prototype=new la;Er.brighter=function(X){return new nr(this.h,this.c,Math.min(100,this.l+Qr*(arguments.length?X:1)))},Er.darker=function(X){return new nr(this.h,this.c,Math.max(0,this.l-Qr*(arguments.length?X:1)))},Er.rgb=function(){return Xr(this.h,this.c,this.l).rgb()};function Xr(X,se,Te){return isNaN(X)&&(X=0),isNaN(se)&&(se=0),new ri(Te,Math.cos(X*=ke)*se,Math.sin(X)*se)}e.lab=ri;function ri(X,se,Te){return this instanceof ri?(this.l=+X,this.a=+se,void(this.b=+Te)):arguments.length<2?X instanceof ri?new ri(X.l,X.a,X.b):X instanceof nr?Xr(X.h,X.c,X.l):jn((X=Wa(X)).r,X.g,X.b):new ri(X,se,Te)}var Qr=18,Oi=.95047,$i=1,tn=1.08883,fn=ri.prototype=new la;fn.brighter=function(X){return new ri(Math.min(100,this.l+Qr*(arguments.length?X:1)),this.a,this.b)},fn.darker=function(X){return new ri(Math.max(0,this.l-Qr*(arguments.length?X:1)),this.a,this.b)},fn.rgb=function(){return yn(this.l,this.a,this.b)};function yn(X,se,Te){var Ne=(X+16)/116,He=Ne+se/500,Ye=Ne-Te/200;return He=Ba(He)*Oi,Ne=Ba(Ne)*$i,Ye=Ba(Ye)*tn,new Wa(ma(3.2404542*He-1.5371385*Ne-.4985314*Ye),ma(-.969266*He+1.8760108*Ne+.041556*Ye),ma(.0556434*He-.2040259*Ne+1.0572252*Ye))}function Sn(X,se,Te){return X>0?new nr(Math.atan2(Te,se)*vt,Math.sqrt(se*se+Te*Te),X):new nr(NaN,NaN,X)}function Ba(X){return X>.206893034?X*X*X:(X-4/29)/7.787037}function ua(X){return X>.008856?Math.pow(X,1/3):7.787037*X+4/29}function ma(X){return Math.round(255*(X<=.00304?12.92*X:1.055*Math.pow(X,1/2.4)-.055))}e.rgb=Wa;function Wa(X,se,Te){return this instanceof Wa?(this.r=~~X,this.g=~~se,void(this.b=~~Te)):arguments.length<2?X instanceof Wa?new Wa(X.r,X.g,X.b):Ha(""+X,Wa,rr):new Wa(X,se,Te)}function Fa(X){return new Wa(X>>16,X>>8&255,X&255)}function Wo(X){return Fa(X)+""}var da=Wa.prototype=new la;da.brighter=function(X){X=Math.pow(.7,arguments.length?X:1);var se=this.r,Te=this.g,Ne=this.b,He=30;return!se&&!Te&&!Ne?new Wa(He,He,He):(se&&se>4,Ne=Ne>>4|Ne,He=jt&240,He=He>>4|He,Ye=jt&15,Ye=Ye<<4|Ye):X.length===7&&(Ne=(jt&16711680)>>16,He=(jt&65280)>>8,Ye=jt&255)),se(Ne,He,Ye))}function vo(X,se,Te){var Ne=Math.min(X/=255,se/=255,Te/=255),He=Math.max(X,se,Te),Ye=He-Ne,kt,nt,jt=(He+Ne)/2;return Ye?(nt=jt<.5?Ye/(He+Ne):Ye/(2-He-Ne),X==He?kt=(se-Te)/Ye+(se0&&jt<1?0:kt),new Ut(kt,nt,jt)}function jn(X,se,Te){X=Mt(X),se=Mt(se),Te=Mt(Te);var Ne=ua((.4124564*X+.3575761*se+.1804375*Te)/Oi),He=ua((.2126729*X+.7151522*se+.072175*Te)/$i),Ye=ua((.0193339*X+.119192*se+.9503041*Te)/tn);return ri(116*He-16,500*(Ne-He),200*(He-Ye))}function Mt(X){return(X/=255)<=.04045?X/12.92:Math.pow((X+.055)/1.055,2.4)}function kr(X){var se=parseFloat(X);return X.charAt(X.length-1)==="%"?Math.round(se*2.55):se}var Jr=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});Jr.forEach(function(X,se){Jr.set(X,Fa(se))});function vi(X){return typeof X=="function"?X:function(){return X}}e.functor=vi,e.xhr=hn(G);function hn(X){return function(se,Te,Ne){return arguments.length===2&&typeof Te=="function"&&(Ne=Te,Te=null),An(se,Te,X,Ne)}}function An(X,se,Te,Ne){var He={},Ye=e.dispatch("beforesend","progress","load","error"),kt={},nt=new XMLHttpRequest,jt=null;self.XDomainRequest&&!("withCredentials"in nt)&&/^(http(s)?:)?\/\//.test(X)&&(nt=new XDomainRequest),"onload"in nt?nt.onload=nt.onerror=gr:nt.onreadystatechange=function(){nt.readyState>3&&gr()};function gr(){var yr=nt.status,Hr;if(!yr&&Li(nt)||yr>=200&&yr<300||yr===304){try{Hr=Te.call(He,nt)}catch(qr){Ye.error.call(He,qr);return}Ye.load.call(He,Hr)}else Ye.error.call(He,nt)}return nt.onprogress=function(yr){var Hr=e.event;e.event=yr;try{Ye.progress.call(He,nt)}finally{e.event=Hr}},He.header=function(yr,Hr){return yr=(yr+"").toLowerCase(),arguments.length<2?kt[yr]:(Hr==null?delete kt[yr]:kt[yr]=Hr+"",He)},He.mimeType=function(yr){return arguments.length?(se=yr==null?null:yr+"",He):se},He.responseType=function(yr){return arguments.length?(jt=yr,He):jt},He.response=function(yr){return Te=yr,He},["get","post"].forEach(function(yr){He[yr]=function(){return He.send.apply(He,[yr].concat(r(arguments)))}}),He.send=function(yr,Hr,qr){if(arguments.length===2&&typeof Hr=="function"&&(qr=Hr,Hr=null),nt.open(yr,X,!0),se!=null&&!("accept"in kt)&&(kt.accept=se+",*/*"),nt.setRequestHeader)for(var _i in kt)nt.setRequestHeader(_i,kt[_i]);return se!=null&&nt.overrideMimeType&&nt.overrideMimeType(se),jt!=null&&(nt.responseType=jt),qr!=null&&He.on("error",qr).on("load",function(bi){qr(null,bi)}),Ye.beforesend.call(He,nt),nt.send(Hr==null?null:Hr),He},He.abort=function(){return nt.abort(),He},e.rebind(He,Ye,"on"),Ne==null?He:He.get(Mn(Ne))}function Mn(X){return X.length===1?function(se,Te){X(se==null?Te:null)}:X}function Li(X){var se=X.responseType;return se&&se!=="text"?X.response:X.responseText}e.dsv=function(X,se){var Te=new RegExp('["'+X+` ]`),Ne=X.charCodeAt(0);function He(gr,yr,Hr){arguments.length<3&&(Hr=yr,yr=null);var qr=An(gr,se,yr==null?Ye:kt(yr),Hr);return qr.row=function(_i){return arguments.length?qr.response((yr=_i)==null?Ye:kt(_i)):yr},qr}function Ye(gr){return He.parse(gr.responseText)}function kt(gr){return function(yr){return He.parse(yr.responseText,gr)}}He.parse=function(gr,yr){var Hr;return He.parseRows(gr,function(qr,_i){if(Hr)return Hr(qr,_i-1);var bi=function(Zr){for(var ai={},gi=qr.length,Ii=0;Ii=bi)return qr;if(Ii)return Ii=!1,Hr;var Ln=Zr;if(gr.charCodeAt(Ln)===34){for(var En=Ln;En++24?(isFinite(se)&&(clearTimeout(Ma),Ma=setTimeout(po,se)),Jn=0):(Jn=1,_o(po))}e.timer.flush=function(){Lo(),ko()};function Lo(){for(var X=Date.now(),se=_n;se;)X>=se.t&&se.c(X-se.t)&&(se.c=null),se=se.n;return X}function ko(){for(var X,se=_n,Te=1/0;se;)se.c?(se.t=0;--nt)Zr.push(He[gr[Hr[nt]][2]]);for(nt=+_i;nt1&&ar(X[Te[Ne-2]],X[Te[Ne-1]],X[He])<=0;)--Ne;Te[Ne++]=He}return Te.slice(0,Ne)}function ul(X,se){return X[0]-se[0]||X[1]-se[1]}e.geom.polygon=function(X){return ie(X,zl),X};var zl=e.geom.polygon.prototype=[];zl.area=function(){for(var X=-1,se=this.length,Te,Ne=this[se-1],He=0;++XJe)nt=nt.L;else if(kt=se-xo(nt,Te),kt>Je){if(!nt.R){Ne=nt;break}nt=nt.R}else{Ye>-Je?(Ne=nt.P,He=nt):kt>-Je?(Ne=nt,He=nt.N):Ne=He=nt;break}var jt=bs(X);if(zs.insert(Ne,jt),!(!Ne&&!He)){if(Ne===He){Oo(Ne),He=bs(Ne.site),zs.insert(jt,He),jt.edge=He.edge=rf(Ne.site,jt.site),aa(Ne),aa(He);return}if(!He){jt.edge=rf(Ne.site,jt.site);return}Oo(Ne),Oo(He);var gr=Ne.site,yr=gr.x,Hr=gr.y,qr=X.x-yr,_i=X.y-Hr,bi=He.site,Zr=bi.x-yr,ai=bi.y-Hr,gi=2*(qr*ai-_i*Zr),Ii=qr*qr+_i*_i,Si=Zr*Zr+ai*ai,ei={x:(ai*Ii-_i*Si)/gi+yr,y:(qr*Si-Zr*Ii)/gi+Hr};pl(He.edge,gr,bi,ei),jt.edge=rf(gr,X,null,ei),He.edge=rf(X,bi,null,ei),aa(Ne),aa(He)}}function Ol(X,se){var Te=X.site,Ne=Te.x,He=Te.y,Ye=He-se;if(!Ye)return Ne;var kt=X.P;if(!kt)return-1/0;Te=kt.site;var nt=Te.x,jt=Te.y,gr=jt-se;if(!gr)return nt;var yr=nt-Ne,Hr=1/Ye-1/gr,qr=yr/gr;return Hr?(-qr+Math.sqrt(qr*qr-2*Hr*(yr*yr/(-2*gr)-jt+gr/2+He-Ye/2)))/Hr+Ne:(Ne+nt)/2}function xo(X,se){var Te=X.N;if(Te)return Ol(Te,se);var Ne=X.site;return Ne.y===se?Ne.x:1/0}function Yl(X){this.site=X,this.edges=[]}Yl.prototype.prepare=function(){for(var X=this.edges,se=X.length,Te;se--;)Te=X[se].edge,(!Te.b||!Te.a)&&X.splice(se,1);return X.sort(Hl),X.length};function Ns(X){for(var se=X[0][0],Te=X[1][0],Ne=X[0][1],He=X[1][1],Ye,kt,nt,jt,gr=Ks,yr=gr.length,Hr,qr,_i,bi,Zr,ai;yr--;)if(Hr=gr[yr],!(!Hr||!Hr.prepare()))for(_i=Hr.edges,bi=_i.length,qr=0;qrJe||p(jt-kt)>Je)&&(_i.splice(qr,0,new Zc(Uf(Hr.site,ai,p(nt-se)Je?{x:se,y:p(Ye-se)Je?{x:p(kt-He)Je?{x:Te,y:p(Ye-Te)Je?{x:p(kt-Ne)=-je)){var qr=jt*jt+gr*gr,_i=yr*yr+ai*ai,bi=(ai*qr-gr*_i)/Hr,Zr=(jt*_i-yr*qr)/Hr,ai=Zr+nt,gi=Su.pop()||new ac;gi.arc=X,gi.site=He,gi.x=bi+kt,gi.y=ai+Math.sqrt(bi*bi+Zr*Zr),gi.cy=ai,X.circle=gi;for(var Ii=null,Si=Zl._;Si;)if(gi.y0)){if(Zr/=_i,_i<0){if(Zr0){if(Zr>qr)return;Zr>Hr&&(Hr=Zr)}if(Zr=Te-nt,!(!_i&&Zr<0)){if(Zr/=_i,_i<0){if(Zr>qr)return;Zr>Hr&&(Hr=Zr)}else if(_i>0){if(Zr0)){if(Zr/=bi,bi<0){if(Zr0){if(Zr>qr)return;Zr>Hr&&(Hr=Zr)}if(Zr=Ne-jt,!(!bi&&Zr<0)){if(Zr/=bi,bi<0){if(Zr>qr)return;Zr>Hr&&(Hr=Zr)}else if(bi>0){if(Zr0&&(He.a={x:nt+Hr*_i,y:jt+Hr*bi}),qr<1&&(He.b={x:nt+qr*_i,y:jt+qr*bi}),He}}}}}}function ql(X){for(var se=cl,Te=qo(X[0][0],X[0][1],X[1][0],X[1][1]),Ne=se.length,He;Ne--;)He=se[Ne],(!Pc(He,X)||!Te(He)||p(He.a.x-He.b.x)=Ye)return;if(yr>qr){if(!Ne)Ne={x:bi,y:kt};else if(Ne.y>=nt)return;Te={x:bi,y:nt}}else{if(!Ne)Ne={x:bi,y:nt};else if(Ne.y1)if(yr>qr){if(!Ne)Ne={x:(kt-gi)/ai,y:kt};else if(Ne.y>=nt)return;Te={x:(nt-gi)/ai,y:nt}}else{if(!Ne)Ne={x:(nt-gi)/ai,y:nt};else if(Ne.y=Ye)return;Te={x:Ye,y:ai*Ye+gi}}else{if(!Ne)Ne={x:Ye,y:ai*Ye+gi};else if(Ne.x=yr&&gi.x<=qr&&gi.y>=Hr&&gi.y<=_i?[[yr,_i],[qr,_i],[qr,Hr],[yr,Hr]]:[];Ii.point=jt[Zr]}),gr}function nt(jt){return jt.map(function(gr,yr){return{x:Math.round(Ne(gr,yr)/Je)*Je,y:Math.round(He(gr,yr)/Je)*Je,i:yr}})}return kt.links=function(jt){return sc(nt(jt)).edges.filter(function(gr){return gr.l&&gr.r}).map(function(gr){return{source:jt[gr.l.i],target:jt[gr.r.i]}})},kt.triangles=function(jt){var gr=[];return sc(nt(jt)).cells.forEach(function(yr,Hr){for(var qr=yr.site,_i=yr.edges.sort(Hl),bi=-1,Zr=_i.length,ai,gi,Ii=_i[Zr-1].edge,Si=Ii.l===qr?Ii.r:Ii.l;++biSi&&(Si=yr.x),yr.y>ei&&(ei=yr.y),_i.push(yr.x),bi.push(yr.y);else for(Zr=0;ZrSi&&(Si=Ln),En>ei&&(ei=En),_i.push(Ln),bi.push(En)}var Un=Si-gi,ia=ei-Ii;Un>ia?ei=Ii+Un:Si=gi+ia;function Ea(Da,go,Is,Ms,Xs,Gn,Ha,Fo){if(!(isNaN(Is)||isNaN(Ms)))if(Da.leaf){var Uo=Da.x,$s=Da.y;if(Uo!=null)if(p(Uo-Is)+p($s-Ms)<.01)Ia(Da,go,Is,Ms,Xs,Gn,Ha,Fo);else{var Sl=Da.point;Da.x=Da.y=Da.point=null,Ia(Da,Sl,Uo,$s,Xs,Gn,Ha,Fo),Ia(Da,go,Is,Ms,Xs,Gn,Ha,Fo)}else Da.x=Is,Da.y=Ms,Da.point=go}else Ia(Da,go,Is,Ms,Xs,Gn,Ha,Fo)}function Ia(Da,go,Is,Ms,Xs,Gn,Ha,Fo){var Uo=(Xs+Ha)*.5,$s=(Gn+Fo)*.5,Sl=Is>=Uo,bu=Ms>=$s,dl=bu<<1|Sl;Da.leaf=!1,Da=Da.nodes[dl]||(Da.nodes[dl]=Jl()),Sl?Xs=Uo:Ha=Uo,bu?Gn=$s:Fo=$s,Ea(Da,go,Is,Ms,Xs,Gn,Ha,Fo)}var yo=Jl();if(yo.add=function(Da){Ea(yo,Da,+Hr(Da,++Zr),+qr(Da,Zr),gi,Ii,Si,ei)},yo.visit=function(Da){fl(Da,yo,gi,Ii,Si,ei)},yo.find=function(Da){return lc(yo,Da[0],Da[1],gi,Ii,Si,ei)},Zr=-1,se==null){for(;++ZrYe||qr>kt||_i=Ln,ia=Te>=En,Ea=ia<<1|Un,Ia=Ea+4;EaTe&&(Ye=se.slice(Te,Ye),nt[kt]?nt[kt]+=Ye:nt[++kt]=Ye),(Ne=Ne[0])===(He=He[0])?nt[kt]?nt[kt]+=He:nt[++kt]=He:(nt[++kt]=null,jt.push({i:kt,x:Hs(Ne,He)})),Te=uc.lastIndex;return Te=0&&!(Ne=e.interpolators[Te](X,se)););return Ne}e.interpolators=[function(X,se){var Te=typeof se;return(Te==="string"?Jr.has(se.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(se)?Fu:Go:se instanceof la?Fu:Array.isArray(se)?Gu:Te==="object"&&isNaN(se)?Es:Hs)(X,se)}],e.interpolateArray=Gu;function Gu(X,se){var Te=[],Ne=[],He=X.length,Ye=se.length,kt=Math.min(X.length,se.length),nt;for(nt=0;nt=0?X.slice(0,se):X,Ne=se>=0?X.slice(se+1):"in";return Te=ad.get(Te)||qs,Ne=Po.get(Ne)||G,od(Ne(Te.apply(null,t.call(arguments,1))))};function od(X){return function(se){return se<=0?0:se>=1?1:X(se)}}function Yo(X){return function(se){return 1-X(1-se)}}function Pa(X){return function(se){return .5*(se<.5?X(2*se):2-X(2-2*se))}}function af(X){return X*X}function Hu(X){return X*X*X}function bl(X){if(X<=0)return 0;if(X>=1)return 1;var se=X*X,Te=se*X;return 4*(X<.5?Te:3*(X-se)+Te-.75)}function Gf(X){return function(se){return Math.pow(se,X)}}function Ic(X){return 1-Math.cos(X*xe)}function yf(X){return Math.pow(2,10*(X-1))}function Bl(X){return 1-Math.sqrt(1-X*X)}function wh(X,se){var Te;return arguments.length<2&&(se=.45),arguments.length?Te=se/xt*Math.asin(1/X):(X=1,Te=se/4),function(Ne){return 1+X*Math.pow(2,-10*Ne)*Math.sin((Ne-Te)*xt/se)}}function Qf(X){return X||(X=1.70158),function(se){return se*se*((X+1)*se-X)}}function _f(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=Yc;function Yc(X,se){X=e.hcl(X),se=e.hcl(se);var Te=X.h,Ne=X.c,He=X.l,Ye=se.h-Te,kt=se.c-Ne,nt=se.l-He;return isNaN(kt)&&(kt=0,Ne=isNaN(Ne)?se.c:Ne),isNaN(Ye)?(Ye=0,Te=isNaN(Te)?se.h:Te):Ye>180?Ye-=360:Ye<-180&&(Ye+=360),function(jt){return Xr(Te+Ye*jt,Ne+kt*jt,He+nt*jt)+""}}e.interpolateHsl=eh;function eh(X,se){X=e.hsl(X),se=e.hsl(se);var Te=X.h,Ne=X.s,He=X.l,Ye=se.h-Te,kt=se.s-Ne,nt=se.l-He;return isNaN(kt)&&(kt=0,Ne=isNaN(Ne)?se.s:Ne),isNaN(Ye)?(Ye=0,Te=isNaN(Te)?se.h:Te):Ye>180?Ye-=360:Ye<-180&&(Ye+=360),function(jt){return rr(Te+Ye*jt,Ne+kt*jt,He+nt*jt)+""}}e.interpolateLab=th;function th(X,se){X=e.lab(X),se=e.lab(se);var Te=X.l,Ne=X.a,He=X.b,Ye=se.l-Te,kt=se.a-Ne,nt=se.b-He;return function(jt){return yn(Te+Ye*jt,Ne+kt*jt,He+nt*jt)+""}}e.interpolateRound=ju;function ju(X,se){return se-=X,function(Te){return Math.round(X+se*Te)}}e.transform=function(X){var se=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(Te){if(Te!=null){se.setAttribute("transform",Te);var Ne=se.transform.baseVal.consolidate()}return new Hf(Ne?Ne.matrix:Kc)})(X)};function Hf(X){var se=[X.a,X.b],Te=[X.c,X.d],Ne=of(se),He=cc(se,Te),Ye=of(Nl(Te,se,-He))||0;se[0]*Te[1]180?se+=360:se-X>180&&(X+=360),Ne.push({i:Te.push(Rc(Te)+"rotate(",null,")")-2,x:Hs(X,se)})):se&&Te.push(Rc(Te)+"rotate("+se+")")}function Gh(X,se,Te,Ne){X!==se?Ne.push({i:Te.push(Rc(Te)+"skewX(",null,")")-2,x:Hs(X,se)}):se&&Te.push(Rc(Te)+"skewX("+se+")")}function rh(X,se,Te,Ne){if(X[0]!==se[0]||X[1]!==se[1]){var He=Te.push(Rc(Te)+"scale(",null,",",null,")");Ne.push({i:He-4,x:Hs(X[0],se[0])},{i:He-2,x:Hs(X[1],se[1])})}else(se[0]!==1||se[1]!==1)&&Te.push(Rc(Te)+"scale("+se+")")}function sf(X,se){var Te=[],Ne=[];return X=e.transform(X),se=e.transform(se),gs(X.translate,se.translate,Te,Ne),jf(X.rotate,se.rotate,Te,Ne),Gh(X.skew,se.skew,Te,Ne),rh(X.scale,se.scale,Te,Ne),X=se=null,function(He){for(var Ye=-1,kt=Ne.length,nt;++Ye0?Ye=ei:(Te.c=null,Te.t=NaN,Te=null,se.end({type:"end",alpha:Ye=0})):ei>0&&(se.start({type:"start",alpha:Ye=ei}),Te=No(X.tick)),X):Ye},X.start=function(){var ei,Ln=_i.length,En=bi.length,Un=Ne[0],ia=Ne[1],Ea,Ia;for(ei=0;ei=0;)Ye.push(yr=gr[jt]),yr.parent=nt,yr.depth=nt.depth+1;Te&&(nt.value=0),nt.children=gr}else Te&&(nt.value=+Te.call(Ne,nt,nt.depth)||0),delete nt.children;return wc(He,function(Hr){var qr,_i;X&&(qr=Hr.children)&&qr.sort(X),Te&&(_i=Hr.parent)&&(_i.value+=Hr.value)}),kt}return Ne.sort=function(He){return arguments.length?(X=He,Ne):X},Ne.children=function(He){return arguments.length?(se=He,Ne):se},Ne.value=function(He){return arguments.length?(Te=He,Ne):Te},Ne.revalue=function(He){return Te&&(Fc(He,function(Ye){Ye.children&&(Ye.value=0)}),wc(He,function(Ye){var kt;Ye.children||(Ye.value=+Te.call(Ne,Ye,Ye.depth)||0),(kt=Ye.parent)&&(kt.value+=Ye.value)})),He},Ne};function zu(X,se){return e.rebind(X,se,"sort","children","value"),X.nodes=X,X.links=Ou,X}function Fc(X,se){for(var Te=[X];(X=Te.pop())!=null;)if(se(X),(He=X.children)&&(Ne=He.length))for(var Ne,He;--Ne>=0;)Te.push(He[Ne])}function wc(X,se){for(var Te=[X],Ne=[];(X=Te.pop())!=null;)if(Ne.push(X),(kt=X.children)&&(Ye=kt.length))for(var He=-1,Ye,kt;++HeHe&&(He=nt),Ne.push(nt)}for(kt=0;ktNe&&(Te=se,Ne=He);return Te}function Us(X){return X.reduce(wf,0)}function wf(X,se){return X+se[1]}e.layout.histogram=function(){var X=!0,se=Number,Te=Rf,Ne=zc;function He(Ye,qr){for(var nt=[],jt=Ye.map(se,this),gr=Te.call(this,jt,qr),yr=Ne.call(this,gr,jt,qr),Hr,qr=-1,_i=jt.length,bi=yr.length-1,Zr=X?1:1/_i,ai;++qr0)for(qr=-1;++qr<_i;)ai=jt[qr],ai>=gr[0]&&ai<=gr[1]&&(Hr=nt[e.bisect(yr,ai,1,bi)-1],Hr.y+=Zr,Hr.push(Ye[qr]));return nt}return He.value=function(Ye){return arguments.length?(se=Ye,He):se},He.range=function(Ye){return arguments.length?(Te=vi(Ye),He):Te},He.bins=function(Ye){return arguments.length?(Ne=typeof Ye=="number"?function(kt){return Wu(kt,Ye)}:vi(Ye),He):Ne},He.frequency=function(Ye){return arguments.length?(X=!!Ye,He):X},He};function zc(X,se){return Wu(X,Math.ceil(Math.log(se.length)/Math.LN2+1))}function Wu(X,se){for(var Te=-1,Ne=+X[0],He=(X[1]-Ne)/se,Ye=[];++Te<=se;)Ye[Te]=He*Te+Ne;return Ye}function Rf(X){return[e.min(X),e.max(X)]}e.layout.pack=function(){var X=e.layout.hierarchy().sort(Xu),se=0,Te=[1,1],Ne;function He(Ye,kt){var nt=X.call(this,Ye,kt),jt=nt[0],gr=Te[0],yr=Te[1],Hr=Ne==null?Math.sqrt:typeof Ne=="function"?Ne:function(){return Ne};if(jt.x=jt.y=0,wc(jt,function(_i){_i.r=+Hr(_i.value)}),wc(jt,ah),se){var qr=se*(Ne?1:Math.max(2*jt.r/gr,2*jt.r/yr))/2;wc(jt,function(_i){_i.r+=qr}),wc(jt,ah),wc(jt,function(_i){_i.r-=qr})}return Tc(jt,gr/2,yr/2,Ne?1:1/Math.max(2*jt.r/gr,2*jt.r/yr)),nt}return He.size=function(Ye){return arguments.length?(Te=Ye,He):Te},He.radius=function(Ye){return arguments.length?(Ne=Ye==null||typeof Ye=="function"?Ye:+Ye,He):Ne},He.padding=function(Ye){return arguments.length?(se=+Ye,He):se},zu(He,X)};function Xu(X,se){return X.value-se.value}function uf(X,se){var Te=X._pack_next;X._pack_next=se,se._pack_prev=X,se._pack_next=Te,Te._pack_prev=se}function Xf(X,se){X._pack_next=se,se._pack_prev=X}function Wl(X,se){var Te=se.x-X.x,Ne=se.y-X.y,He=X.r+se.r;return .999*He*He>Te*Te+Ne*Ne}function ah(X){if(!(se=X.children)||!(qr=se.length))return;var se,Te=1/0,Ne=-1/0,He=1/0,Ye=-1/0,kt,nt,jt,gr,yr,Hr,qr;function _i(ei){Te=Math.min(ei.x-ei.r,Te),Ne=Math.max(ei.x+ei.r,Ne),He=Math.min(ei.y-ei.r,He),Ye=Math.max(ei.y+ei.r,Ye)}if(se.forEach(Zu),kt=se[0],kt.x=-kt.r,kt.y=0,_i(kt),qr>1&&(nt=se[1],nt.x=nt.r,nt.y=0,_i(nt),qr>2))for(jt=se[2],wl(kt,nt,jt),_i(jt),uf(kt,jt),kt._pack_prev=jt,uf(jt,nt),nt=kt._pack_next,gr=3;grai.x&&(ai=Ln),Ln.depth>gi.depth&&(gi=Ln)});var Ii=se(Zr,ai)/2-Zr.x,Si=Te[0]/(ai.x+se(ai,Zr)/2+Ii),ei=Te[1]/(gi.depth||1);Fc(_i,function(Ln){Ln.x=(Ln.x+Ii)*Si,Ln.y=Ln.depth*ei})}return qr}function Ye(yr){for(var Hr={A:null,children:[yr]},qr=[Hr],_i;(_i=qr.pop())!=null;)for(var bi=_i.children,Zr,ai=0,gi=bi.length;ai0&&(fc(At(Zr,yr,qr),yr,Ln),gi+=Ln,Ii+=Ln),Si+=Zr.m,gi+=_i.m,ei+=ai.m,Ii+=bi.m;Zr&&!cf(bi)&&(bi.t=Zr,bi.m+=Si-Ii),_i&&!qc(ai)&&(ai.t=_i,ai.m+=gi-ei,qr=yr)}return qr}function gr(yr){yr.x*=Te[0],yr.y=yr.depth*Te[1]}return He.separation=function(yr){return arguments.length?(se=yr,He):se},He.size=function(yr){return arguments.length?(Ne=(Te=yr)==null?gr:null,He):Ne?null:Te},He.nodeSize=function(yr){return arguments.length?(Ne=(Te=yr)==null?null:gr,He):Ne?Te:null},zu(He,X)};function vu(X,se){return X.parent==se.parent?1:2}function qc(X){var se=X.children;return se.length?se[0]:X.t}function cf(X){var se=X.children,Te;return(Te=se.length)?se[Te-1]:X.t}function fc(X,se,Te){var Ne=Te/(se.i-X.i);se.c-=Ne,se.s+=Te,X.c+=Ne,se.z+=Te,se.m+=Te}function Bc(X){for(var se=0,Te=0,Ne=X.children,He=Ne.length,Ye;--He>=0;)Ye=Ne[He],Ye.z+=se,Ye.m+=se,se+=Ye.s+(Te+=Ye.c)}function At(X,se,Te){return X.a.parent===se.parent?X.a:Te}e.layout.cluster=function(){var X=e.layout.hierarchy().sort(null).value(null),se=vu,Te=[1,1],Ne=!1;function He(Ye,kt){var nt=X.call(this,Ye,kt),jt=nt[0],gr,yr=0;wc(jt,function(Zr){var ai=Zr.children;ai&&ai.length?(Zr.x=Cr(ai),Zr.y=Wt(ai)):(Zr.x=gr?yr+=se(Zr,gr):0,Zr.y=0,gr=Zr)});var Hr=Ar(jt),qr=Kr(jt),_i=Hr.x-se(Hr,qr)/2,bi=qr.x+se(qr,Hr)/2;return wc(jt,Ne?function(Zr){Zr.x=(Zr.x-jt.x)*Te[0],Zr.y=(jt.y-Zr.y)*Te[1]}:function(Zr){Zr.x=(Zr.x-_i)/(bi-_i)*Te[0],Zr.y=(1-(jt.y?Zr.y/jt.y:1))*Te[1]}),nt}return He.separation=function(Ye){return arguments.length?(se=Ye,He):se},He.size=function(Ye){return arguments.length?(Ne=(Te=Ye)==null,He):Ne?null:Te},He.nodeSize=function(Ye){return arguments.length?(Ne=(Te=Ye)!=null,He):Ne?Te:null},zu(He,X)};function Wt(X){return 1+e.max(X,function(se){return se.y})}function Cr(X){return X.reduce(function(se,Te){return se+Te.x},0)/X.length}function Ar(X){var se=X.children;return se&&se.length?Ar(se[0]):X}function Kr(X){var se=X.children,Te;return se&&(Te=se.length)?Kr(se[Te-1]):X}e.layout.treemap=function(){var X=e.layout.hierarchy(),se=Math.round,Te=[1,1],Ne=null,He=ki,Ye=!1,kt,nt="squarify",jt=.5*(1+Math.sqrt(5));function gr(Zr,ai){for(var gi=-1,Ii=Zr.length,Si,ei;++gi0;)Ii.push(ei=Si[ia-1]),Ii.area+=ei.area,nt!=="squarify"||(En=qr(Ii,Un))<=Ln?(Si.pop(),Ln=En):(Ii.area-=Ii.pop().area,_i(Ii,Un,gi,!1),Un=Math.min(gi.dx,gi.dy),Ii.length=Ii.area=0,Ln=1/0);Ii.length&&(_i(Ii,Un,gi,!0),Ii.length=Ii.area=0),ai.forEach(yr)}}function Hr(Zr){var ai=Zr.children;if(ai&&ai.length){var gi=He(Zr),Ii=ai.slice(),Si,ei=[];for(gr(Ii,gi.dx*gi.dy/Zr.value),ei.area=0;Si=Ii.pop();)ei.push(Si),ei.area+=Si.area,Si.z!=null&&(_i(ei,Si.z?gi.dx:gi.dy,gi,!Ii.length),ei.length=ei.area=0);ai.forEach(Hr)}}function qr(Zr,ai){for(var gi=Zr.area,Ii,Si=0,ei=1/0,Ln=-1,En=Zr.length;++LnSi&&(Si=Ii));return gi*=gi,ai*=ai,gi?Math.max(ai*Si*jt/gi,gi/(ai*ei*jt)):1/0}function _i(Zr,ai,gi,Ii){var Si=-1,ei=Zr.length,Ln=gi.x,En=gi.y,Un=ai?se(Zr.area/ai):0,ia;if(ai==gi.dx){for((Ii||Un>gi.dy)&&(Un=gi.dy);++Sigi.dx)&&(Un=gi.dx);++Si1);return X+se*Ne*Math.sqrt(-2*Math.log(Ye)/Ye)}},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,Te=0;Te2?Fi:Nn,gr=Ne?Mu:Th;return He=jt(X,se,gr,Te),Ye=jt(se,X,gr,xl),nt}function nt(jt){return He(jt)}return nt.invert=function(jt){return Ye(jt)},nt.domain=function(jt){return arguments.length?(X=jt.map(Number),kt()):X},nt.range=function(jt){return arguments.length?(se=jt,kt()):se},nt.rangeRound=function(jt){return nt.range(jt).interpolate(ju)},nt.clamp=function(jt){return arguments.length?(Ne=jt,kt()):Ne},nt.interpolate=function(jt){return arguments.length?(Te=jt,kt()):Te},nt.ticks=function(jt){return Na(X,jt)},nt.tickFormat=function(jt,gr){return d3_scale_linearTickFormat(X,jt,gr)},nt.nice=function(jt){return Ra(X,jt),kt()},nt.copy=function(){return $n(X,se,Te,Ne)},kt()}function Ca(X,se){return e.rebind(X,se,"range","rangeRound","interpolate","clamp")}function Ra(X,se){return Yi(X,Qi(La(X,se)[2])),Yi(X,Qi(La(X,se)[2])),X}function La(X,se){se==null&&(se=10);var Te=dn(X),Ne=Te[1]-Te[0],He=Math.pow(10,Math.floor(Math.log(Ne/se)/Math.LN10)),Ye=se/Ne*He;return Ye<=.15?He*=10:Ye<=.35?He*=5:Ye<=.75&&(He*=2),Te[0]=Math.ceil(Te[0]/He)*He,Te[1]=Math.floor(Te[1]/He)*He+He*.5,Te[2]=He,Te}function Na(X,se){return e.range.apply(e,La(X,se))}var Yn={s:1,g:1,p:1,r:1,e:1};function Dn(X){return-Math.floor(Math.log(X)/Math.LN10+.01)}function Ka(X,se){var Te=Dn(se[2]);return X in Yn?Math.abs(Te-Dn(Math.max(p(se[0]),p(se[1]))))+ +(X!=="e"):Te-(X==="%")*2}e.scale.log=function(){return bo(e.scale.linear().domain([0,1]),10,!0,[1,10])};function bo(X,se,Te,Ne){function He(nt){return(Te?Math.log(nt<0?0:nt):-Math.log(nt>0?0:-nt))/Math.log(se)}function Ye(nt){return Te?Math.pow(se,nt):-Math.pow(se,-nt)}function kt(nt){return X(He(nt))}return kt.invert=function(nt){return Ye(X.invert(nt))},kt.domain=function(nt){return arguments.length?(Te=nt[0]>=0,X.domain((Ne=nt.map(Number)).map(He)),kt):Ne},kt.base=function(nt){return arguments.length?(se=+nt,X.domain(Ne.map(He)),kt):se},kt.nice=function(){var nt=Yi(Ne.map(He),Te?Math:Xo);return X.domain(nt),Ne=nt.map(Ye),kt},kt.ticks=function(){var nt=dn(Ne),jt=[],gr=nt[0],yr=nt[1],Hr=Math.floor(He(gr)),qr=Math.ceil(He(yr)),_i=se%1?2:se;if(isFinite(qr-Hr)){if(Te){for(;Hr0;bi--)jt.push(Ye(Hr)*bi);for(Hr=0;jt[Hr]yr;qr--);jt=jt.slice(Hr,qr)}return jt},kt.copy=function(){return bo(X.copy(),se,Te,Ne)},Ca(kt,X)}var Xo={floor:function(X){return-Math.ceil(-X)},ceil:function(X){return-Math.floor(-X)}};e.scale.pow=function(){return Ss(e.scale.linear(),1,[0,1])};function Ss(X,se,Te){var Ne=as(se),He=as(1/se);function Ye(kt){return X(Ne(kt))}return Ye.invert=function(kt){return He(X.invert(kt))},Ye.domain=function(kt){return arguments.length?(X.domain((Te=kt.map(Number)).map(Ne)),Ye):Te},Ye.ticks=function(kt){return Na(Te,kt)},Ye.tickFormat=function(kt,nt){return d3_scale_linearTickFormat(Te,kt,nt)},Ye.nice=function(kt){return Ye.domain(Ra(Te,kt))},Ye.exponent=function(kt){return arguments.length?(Ne=as(se=kt),He=as(1/se),X.domain(Te.map(Ne)),Ye):se},Ye.copy=function(){return Ss(X.copy(),se,Te)},Ca(Ye,X)}function as(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 ws([],{t:"range",a:[[]]})};function ws(X,se){var Te,Ne,He;function Ye(nt){return Ne[((Te.get(nt)||(se.t==="range"?Te.set(nt,X.push(nt)):NaN))-1)%Ne.length]}function kt(nt,jt){return e.range(X.length).map(function(gr){return nt+jt*gr})}return Ye.domain=function(nt){if(!arguments.length)return X;X=[],Te=new S;for(var jt=-1,gr=nt.length,yr;++jt0?Te[Ye-1]:X[0],Yeqr?0:1;if(yr=Ie)return jt(yr,bi)+(gr?jt(gr,1-bi):"")+"Z";var Zr,ai,gi,Ii,Si=0,ei=0,Ln,En,Un,ia,Ea,Ia,yo,Da,go=[];if((Ii=(+kt.apply(this,arguments)||0)/2)&&(gi=Ne===Cu?Math.sqrt(gr*gr+yr*yr):+Ne.apply(this,arguments),bi||(ei*=-1),yr&&(ei=ii(gi/yr*Math.sin(Ii))),gr&&(Si=ii(gi/gr*Math.sin(Ii)))),yr){Ln=yr*Math.cos(Hr+ei),En=yr*Math.sin(Hr+ei),Un=yr*Math.cos(qr-ei),ia=yr*Math.sin(qr-ei);var Is=Math.abs(qr-Hr-2*ei)<=tt?0:1;if(ei&&Ac(Ln,En,Un,ia)===bi^Is){var Ms=(Hr+qr)/2;Ln=yr*Math.cos(Ms),En=yr*Math.sin(Ms),Un=ia=null}}else Ln=En=0;if(gr){Ea=gr*Math.cos(qr-Si),Ia=gr*Math.sin(qr-Si),yo=gr*Math.cos(Hr+Si),Da=gr*Math.sin(Hr+Si);var Xs=Math.abs(Hr-qr+2*Si)<=tt?0:1;if(Si&&Ac(Ea,Ia,yo,Da)===1-bi^Xs){var Gn=(Hr+qr)/2;Ea=gr*Math.cos(Gn),Ia=gr*Math.sin(Gn),yo=Da=null}}else Ea=Ia=0;if(_i>Je&&(Zr=Math.min(Math.abs(yr-gr)/2,+Te.apply(this,arguments)))>.001){ai=gr0?0:1}function Ua(X,se,Te,Ne,He){var Ye=X[0]-se[0],kt=X[1]-se[1],nt=(He?Ne:-Ne)/Math.sqrt(Ye*Ye+kt*kt),jt=nt*kt,gr=-nt*Ye,yr=X[0]+jt,Hr=X[1]+gr,qr=se[0]+jt,_i=se[1]+gr,bi=(yr+qr)/2,Zr=(Hr+_i)/2,ai=qr-yr,gi=_i-Hr,Ii=ai*ai+gi*gi,Si=Te-Ne,ei=yr*_i-qr*Hr,Ln=(gi<0?-1:1)*Math.sqrt(Math.max(0,Si*Si*Ii-ei*ei)),En=(ei*gi-ai*Ln)/Ii,Un=(-ei*ai-gi*Ln)/Ii,ia=(ei*gi+ai*Ln)/Ii,Ea=(-ei*ai+gi*Ln)/Ii,Ia=En-bi,yo=Un-Zr,Da=ia-bi,go=Ea-Zr;return Ia*Ia+yo*yo>Da*Da+go*go&&(En=ia,Un=Ea),[[En-jt,Un-gr],[En*Te/Si,Un*Te/Si]]}function oo(){return!0}function Vc(X){var se=Ds,Te=Fs,Ne=oo,He=Ku,Ye=He.key,kt=.7;function nt(jt){var gr=[],yr=[],Hr=-1,qr=jt.length,_i,bi=vi(se),Zr=vi(Te);function ai(){gr.push("M",He(X(yr),kt))}for(;++Hr1?X.join("L"):X+"Z"}function ue(X){return X.join("L")+"Z"}function w(X){for(var se=0,Te=X.length,Ne=X[0],He=[Ne[0],",",Ne[1]];++se1&&He.push("H",Ne[0]),He.join("")}function B(X){for(var se=0,Te=X.length,Ne=X[0],He=[Ne[0],",",Ne[1]];++se1){nt=se[1],Ye=X[jt],jt++,Ne+="C"+(He[0]+kt[0])+","+(He[1]+kt[1])+","+(Ye[0]-nt[0])+","+(Ye[1]-nt[1])+","+Ye[0]+","+Ye[1];for(var gr=2;gr9&&(Ye=Te*3/Math.sqrt(Ye),kt[nt]=Ye*Ne,kt[nt+1]=Ye*He));for(nt=-1;++nt<=jt;)Ye=(X[Math.min(jt,nt+1)][0]-X[Math.max(0,nt-1)][0])/(6*(1+kt[nt]*kt[nt])),se.push([Ye||0,kt[nt]*Ye||0]);return se}function Ft(X){return X.length<3?Ku(X):X[0]+Xe(X,it(X))}e.svg.line.radial=function(){var X=Vc(Ht);return X.radius=X.x,delete X.x,X.angle=X.y,delete X.y,X};function Ht(X){for(var se,Te=-1,Ne=X.length,He,Ye;++Tett)+",1 "+Hr}function gr(yr,Hr,qr,_i){return"Q 0,0 "+_i}return Ye.radius=function(yr){return arguments.length?(Te=vi(yr),Ye):Te},Ye.source=function(yr){return arguments.length?(X=vi(yr),Ye):X},Ye.target=function(yr){return arguments.length?(se=vi(yr),Ye):se},Ye.startAngle=function(yr){return arguments.length?(Ne=vi(yr),Ye):Ne},Ye.endAngle=function(yr){return arguments.length?(He=vi(yr),Ye):He},Ye};function Or(X){return X.radius}e.svg.diagonal=function(){var X=dr,se=Sr,Te=Wr;function Ne(He,Ye){var kt=X.call(this,He,Ye),nt=se.call(this,He,Ye),jt=(kt.y+nt.y)/2,gr=[kt,{x:kt.x,y:jt},{x:nt.x,y:jt},nt];return gr=gr.map(Te),"M"+gr[0]+"C"+gr[1]+" "+gr[2]+" "+gr[3]}return Ne.source=function(He){return arguments.length?(X=vi(He),Ne):X},Ne.target=function(He){return arguments.length?(se=vi(He),Ne):se},Ne.projection=function(He){return arguments.length?(Te=He,Ne):Te},Ne};function Wr(X){return[X.x,X.y]}e.svg.diagonal.radial=function(){var X=e.svg.diagonal(),se=Wr,Te=X.projection;return X.projection=function(Ne){return arguments.length?Te(ni(se=Ne)):se},X};function ni(X){return function(){var se=X.apply(this,arguments),Te=se[0],Ne=se[1]-xe;return[Te*Math.cos(Ne),Te*Math.sin(Ne)]}}e.svg.symbol=function(){var X=cn,se=Pi;function Te(Ne,He){return(Cn.get(X.call(this,Ne,He))||ln)(se.call(this,Ne,He))}return Te.type=function(Ne){return arguments.length?(X=vi(Ne),Te):X},Te.size=function(Ne){return arguments.length?(se=vi(Ne),Te):se},Te};function Pi(){return 64}function cn(){return"circle"}function ln(X){var se=Math.sqrt(X/tt);return"M0,"+se+"A"+se+","+se+" 0 1,1 0,"+-se+"A"+se+","+se+" 0 1,1 0,"+se+"Z"}var Cn=e.map({circle:ln,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*Ta)),Te=se*Ta;return"M0,"+-se+"L"+Te+",0 0,"+se+" "+-Te+",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/Kn),Te=se*Kn/2;return"M0,"+Te+"L"+se+","+-Te+" "+-se+","+-Te+"Z"},"triangle-up":function(X){var se=Math.sqrt(X/Kn),Te=se*Kn/2;return"M0,"+-Te+"L"+se+","+Te+" "+-se+","+Te+"Z"}});e.svg.symbolTypes=Cn.keys();var Kn=Math.sqrt(3),Ta=Math.tan(30*ke);Pe.transition=function(X){for(var se=Bo||++mo,Te=To(X),Ne=[],He,Ye,kt=Ps||{time:Date.now(),ease:bl,delay:0,duration:250},nt=-1,jt=this.length;++nt0;)Hr[--Ii].call(X,gi);if(ai>=1)return kt.event&&kt.event.end.call(X,X.__data__,se),--Ye.count?delete Ye[Ne]:delete X[Te],1}kt||(nt=He.time,jt=No(qr,0,nt),kt=Ye[Ne]={tween:new S,time:nt,timer:jt,delay:He.delay,duration:He.duration,ease:He.ease,index:se},He=null,++Ye.count)}e.svg.axis=function(){var X=e.scale.linear(),se=Ul,Te=6,Ne=6,He=3,Ye=[10],kt=null,nt;function jt(gr){gr.each(function(){var yr=e.select(this),Hr=this.__chart__||X,qr=this.__chart__=X.copy(),_i=kt==null?qr.ticks?qr.ticks.apply(qr,Ye):qr.domain():kt,bi=nt==null?qr.tickFormat?qr.tickFormat.apply(qr,Ye):G:nt,Zr=yr.selectAll(".tick").data(_i,qr),ai=Zr.enter().insert("g",".domain").attr("class","tick").style("opacity",Je),gi=e.transition(Zr.exit()).style("opacity",Je).remove(),Ii=e.transition(Zr.order()).style("opacity",1),Si=Math.max(Te,0)+He,ei,Ln=wn(qr),En=yr.selectAll(".domain").data([0]),Un=(En.enter().append("path").attr("class","domain"),e.transition(En));ai.append("line"),ai.append("text");var ia=ai.select("line"),Ea=Ii.select("line"),Ia=Zr.select("text").text(bi),yo=ai.select("text"),Da=Ii.select("text"),go=se==="top"||se==="left"?-1:1,Is,Ms,Xs,Gn;if(se==="bottom"||se==="top"?(ei=au,Is="x",Xs="y",Ms="x2",Gn="y2",Ia.attr("dy",go<0?"0em":".71em").style("text-anchor","middle"),Un.attr("d","M"+Ln[0]+","+go*Ne+"V0H"+Ln[1]+"V"+go*Ne)):(ei=Js,Is="y",Xs="x",Ms="y2",Gn="x2",Ia.attr("dy",".32em").style("text-anchor",go<0?"end":"start"),Un.attr("d","M"+go*Ne+","+Ln[0]+"H0V"+Ln[1]+"H"+go*Ne)),ia.attr(Gn,go*Te),yo.attr(Xs,go*Si),Ea.attr(Ms,0).attr(Gn,go*Te),Da.attr(Is,0).attr(Xs,go*Si),qr.rangeBand){var Ha=qr,Fo=Ha.rangeBand()/2;Hr=qr=function(Uo){return Ha(Uo)+Fo}}else Hr.rangeBand?Hr=qr:gi.call(ei,qr,Hr);ai.call(ei,Hr,qr),Ii.call(ei,qr,qr)})}return jt.scale=function(gr){return arguments.length?(X=gr,jt):X},jt.orient=function(gr){return arguments.length?(se=gr in Lu?gr+"":Ul,jt):se},jt.ticks=function(){return arguments.length?(Ye=r(arguments),jt):Ye},jt.tickValues=function(gr){return arguments.length?(kt=gr,jt):kt},jt.tickFormat=function(gr){return arguments.length?(nt=gr,jt):nt},jt.tickSize=function(gr){var yr=arguments.length;return yr?(Te=+gr,Ne=+arguments[yr-1],jt):Te},jt.innerTickSize=function(gr){return arguments.length?(Te=+gr,jt):Te},jt.outerTickSize=function(gr){return arguments.length?(Ne=+gr,jt):Ne},jt.tickPadding=function(gr){return arguments.length?(He=+gr,jt):He},jt.tickSubdivide=function(){return arguments.length&&jt},jt};var Ul="bottom",Lu={top:1,right:1,bottom:1,left:1};function au(X,se,Te){X.attr("transform",function(Ne){var He=se(Ne);return"translate("+(isFinite(He)?He:Te(Ne))+",0)"})}function Js(X,se,Te){X.attr("transform",function(Ne){var He=se(Ne);return"translate(0,"+(isFinite(He)?He:Te(Ne))+")"})}e.svg.brush=function(){var X=Ce(yr,"brushstart","brush","brushend"),se=null,Te=null,Ne=[0,0],He=[0,0],Ye,kt,nt=!0,jt=!0,gr=dc[0];function yr(Zr){Zr.each(function(){var ai=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",bi).on("touchstart.brush",bi),gi=ai.selectAll(".background").data([0]);gi.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),ai.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Ii=ai.selectAll(".resize").data(gr,G);Ii.exit().remove(),Ii.enter().append("g").attr("class",function(En){return"resize "+En}).style("cursor",function(En){return Ql[En]}).append("rect").attr("x",function(En){return/[ew]$/.test(En)?-3:null}).attr("y",function(En){return/^[ns]/.test(En)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Ii.style("display",yr.empty()?"none":null);var Si=e.transition(ai),ei=e.transition(gi),Ln;se&&(Ln=wn(se),ei.attr("x",Ln[0]).attr("width",Ln[1]-Ln[0]),qr(Si)),Te&&(Ln=wn(Te),ei.attr("y",Ln[0]).attr("height",Ln[1]-Ln[0]),_i(Si)),Hr(Si)})}yr.event=function(Zr){Zr.each(function(){var ai=X.of(this,arguments),gi={x:Ne,y:He,i:Ye,j:kt},Ii=this.__chart__||gi;this.__chart__=gi,Bo?e.select(this).transition().each("start.brush",function(){Ye=Ii.i,kt=Ii.j,Ne=Ii.x,He=Ii.y,ai({type:"brushstart"})}).tween("brush:brush",function(){var Si=Gu(Ne,gi.x),ei=Gu(He,gi.y);return Ye=kt=null,function(Ln){Ne=gi.x=Si(Ln),He=gi.y=ei(Ln),ai({type:"brush",mode:"resize"})}}).each("end.brush",function(){Ye=gi.i,kt=gi.j,ai({type:"brush",mode:"resize"}),ai({type:"brushend"})}):(ai({type:"brushstart"}),ai({type:"brush",mode:"resize"}),ai({type:"brushend"}))})};function Hr(Zr){Zr.selectAll(".resize").attr("transform",function(ai){return"translate("+Ne[+/e$/.test(ai)]+","+He[+/^s/.test(ai)]+")"})}function qr(Zr){Zr.select(".extent").attr("x",Ne[0]),Zr.selectAll(".extent,.n>rect,.s>rect").attr("width",Ne[1]-Ne[0])}function _i(Zr){Zr.select(".extent").attr("y",He[0]),Zr.selectAll(".extent,.e>rect,.w>rect").attr("height",He[1]-He[0])}function bi(){var Zr=this,ai=e.select(e.event.target),gi=X.of(Zr,arguments),Ii=e.select(Zr),Si=ai.datum(),ei=!/^(n|s)$/.test(Si)&&se,Ln=!/^(e|w)$/.test(Si)&&Te,En=ai.classed("extent"),Un=Br(Zr),ia,Ea=e.mouse(Zr),Ia,yo=e.select(a(Zr)).on("keydown.brush",Is).on("keyup.brush",Ms);if(e.event.changedTouches?yo.on("touchmove.brush",Xs).on("touchend.brush",Ha):yo.on("mousemove.brush",Xs).on("mouseup.brush",Ha),Ii.interrupt().selectAll("*").interrupt(),En)Ea[0]=Ne[0]-Ea[0],Ea[1]=He[0]-Ea[1];else if(Si){var Da=+/w$/.test(Si),go=+/^n/.test(Si);Ia=[Ne[1-Da]-Ea[0],He[1-go]-Ea[1]],Ea[0]=Ne[Da],Ea[1]=He[go]}else e.event.altKey&&(ia=Ea.slice());Ii.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",ai.style("cursor")),gi({type:"brushstart"}),Xs();function Is(){e.event.keyCode==32&&(En||(ia=null,Ea[0]-=Ne[1],Ea[1]-=He[1],En=2),_e())}function Ms(){e.event.keyCode==32&&En==2&&(Ea[0]+=Ne[1],Ea[1]+=He[1],En=0,_e())}function Xs(){var Fo=e.mouse(Zr),Uo=!1;Ia&&(Fo[0]+=Ia[0],Fo[1]+=Ia[1]),En||(e.event.altKey?(ia||(ia=[(Ne[0]+Ne[1])/2,(He[0]+He[1])/2]),Ea[0]=Ne[+(Fo[0]{(function(e,t){typeof f6=="object"&&typeof vee!="undefined"?t(f6):(e=e||self,t(e.d3=e.d3||{}))})(f6,function(e){"use strict";var t=new Date,r=new Date;function n($e,St,Qt,Vt){function _t(It){return $e(It=arguments.length===0?new Date:new Date(+It)),It}return _t.floor=function(It){return $e(It=new Date(+It)),It},_t.ceil=function(It){return $e(It=new Date(It-1)),St(It,1),$e(It),It},_t.round=function(It){var mt=_t(It),er=_t.ceil(It);return It-mt0))return lr;do lr.push(Tr=new Date(+It)),St(It,er),$e(It);while(Tr=mt)for(;$e(mt),!It(mt);)mt.setTime(mt-1)},function(mt,er){if(mt>=mt)if(er<0)for(;++er<=0;)for(;St(mt,-1),!It(mt););else for(;--er>=0;)for(;St(mt,1),!It(mt););})},Qt&&(_t.count=function(It,mt){return t.setTime(+It),r.setTime(+mt),$e(t),$e(r),Math.floor(Qt(t,r))},_t.every=function(It){return It=Math.floor(It),!isFinite(It)||!(It>0)?null:It>1?_t.filter(Vt?function(mt){return Vt(mt)%It===0}:function(mt){return _t.count(0,mt)%It===0}):_t}),_t}var i=n(function(){},function($e,St){$e.setTime(+$e+St)},function($e,St){return St-$e});i.every=function($e){return $e=Math.floor($e),!isFinite($e)||!($e>0)?null:$e>1?n(function(St){St.setTime(Math.floor(St/$e)*$e)},function(St,Qt){St.setTime(+St+Qt*$e)},function(St,Qt){return(Qt-St)/$e}):i};var a=i.range,o=1e3,s=6e4,l=36e5,u=864e5,c=6048e5,f=n(function($e){$e.setTime($e-$e.getMilliseconds())},function($e,St){$e.setTime(+$e+St*o)},function($e,St){return(St-$e)/o},function($e){return $e.getUTCSeconds()}),h=f.range,d=n(function($e){$e.setTime($e-$e.getMilliseconds()-$e.getSeconds()*o)},function($e,St){$e.setTime(+$e+St*s)},function($e,St){return(St-$e)/s},function($e){return $e.getMinutes()}),v=d.range,_=n(function($e){$e.setTime($e-$e.getMilliseconds()-$e.getSeconds()*o-$e.getMinutes()*s)},function($e,St){$e.setTime(+$e+St*l)},function($e,St){return(St-$e)/l},function($e){return $e.getHours()}),b=_.range,p=n(function($e){$e.setHours(0,0,0,0)},function($e,St){$e.setDate($e.getDate()+St)},function($e,St){return(St-$e-(St.getTimezoneOffset()-$e.getTimezoneOffset())*s)/u},function($e){return $e.getDate()-1}),k=p.range;function E($e){return n(function(St){St.setDate(St.getDate()-(St.getDay()+7-$e)%7),St.setHours(0,0,0,0)},function(St,Qt){St.setDate(St.getDate()+Qt*7)},function(St,Qt){return(Qt-St-(Qt.getTimezoneOffset()-St.getTimezoneOffset())*s)/c})}var S=E(0),L=E(1),x=E(2),C=E(3),M=E(4),g=E(5),P=E(6),T=S.range,z=L.range,O=x.range,V=C.range,G=M.range,Z=g.range,H=P.range,N=n(function($e){$e.setDate(1),$e.setHours(0,0,0,0)},function($e,St){$e.setMonth($e.getMonth()+St)},function($e,St){return St.getMonth()-$e.getMonth()+(St.getFullYear()-$e.getFullYear())*12},function($e){return $e.getMonth()}),j=N.range,re=n(function($e){$e.setMonth(0,1),$e.setHours(0,0,0,0)},function($e,St){$e.setFullYear($e.getFullYear()+St)},function($e,St){return St.getFullYear()-$e.getFullYear()},function($e){return $e.getFullYear()});re.every=function($e){return!isFinite($e=Math.floor($e))||!($e>0)?null:n(function(St){St.setFullYear(Math.floor(St.getFullYear()/$e)*$e),St.setMonth(0,1),St.setHours(0,0,0,0)},function(St,Qt){St.setFullYear(St.getFullYear()+Qt*$e)})};var oe=re.range,_e=n(function($e){$e.setUTCSeconds(0,0)},function($e,St){$e.setTime(+$e+St*s)},function($e,St){return(St-$e)/s},function($e){return $e.getUTCMinutes()}),Ee=_e.range,Ce=n(function($e){$e.setUTCMinutes(0,0,0)},function($e,St){$e.setTime(+$e+St*l)},function($e,St){return(St-$e)/l},function($e){return $e.getUTCHours()}),me=Ce.range,ie=n(function($e){$e.setUTCHours(0,0,0,0)},function($e,St){$e.setUTCDate($e.getUTCDate()+St)},function($e,St){return(St-$e)/u},function($e){return $e.getUTCDate()-1}),Se=ie.range;function Le($e){return n(function(St){St.setUTCDate(St.getUTCDate()-(St.getUTCDay()+7-$e)%7),St.setUTCHours(0,0,0,0)},function(St,Qt){St.setUTCDate(St.getUTCDate()+Qt*7)},function(St,Qt){return(Qt-St)/c})}var Ae=Le(0),Fe=Le(1),Pe=Le(2),ge=Le(3),Re=Le(4),ce=Le(5),Ze=Le(6),ut=Ae.range,pt=Fe.range,Zt=Pe.range,st=ge.range,lt=Re.range,Gt=ce.range,Nt=Ze.range,Jt=n(function($e){$e.setUTCDate(1),$e.setUTCHours(0,0,0,0)},function($e,St){$e.setUTCMonth($e.getUTCMonth()+St)},function($e,St){return St.getUTCMonth()-$e.getUTCMonth()+(St.getUTCFullYear()-$e.getUTCFullYear())*12},function($e){return $e.getUTCMonth()}),sr=Jt.range,wr=n(function($e){$e.setUTCMonth(0,1),$e.setUTCHours(0,0,0,0)},function($e,St){$e.setUTCFullYear($e.getUTCFullYear()+St)},function($e,St){return St.getUTCFullYear()-$e.getUTCFullYear()},function($e){return $e.getUTCFullYear()});wr.every=function($e){return!isFinite($e=Math.floor($e))||!($e>0)?null:n(function(St){St.setUTCFullYear(Math.floor(St.getUTCFullYear()/$e)*$e),St.setUTCMonth(0,1),St.setUTCHours(0,0,0,0)},function(St,Qt){St.setUTCFullYear(St.getUTCFullYear()+Qt*$e)})};var cr=wr.range;e.timeDay=p,e.timeDays=k,e.timeFriday=g,e.timeFridays=Z,e.timeHour=_,e.timeHours=b,e.timeInterval=n,e.timeMillisecond=i,e.timeMilliseconds=a,e.timeMinute=d,e.timeMinutes=v,e.timeMonday=L,e.timeMondays=z,e.timeMonth=N,e.timeMonths=j,e.timeSaturday=P,e.timeSaturdays=H,e.timeSecond=f,e.timeSeconds=h,e.timeSunday=S,e.timeSundays=T,e.timeThursday=M,e.timeThursdays=G,e.timeTuesday=x,e.timeTuesdays=O,e.timeWednesday=C,e.timeWednesdays=V,e.timeWeek=S,e.timeWeeks=T,e.timeYear=re,e.timeYears=oe,e.utcDay=ie,e.utcDays=Se,e.utcFriday=ce,e.utcFridays=Gt,e.utcHour=Ce,e.utcHours=me,e.utcMillisecond=i,e.utcMilliseconds=a,e.utcMinute=_e,e.utcMinutes=Ee,e.utcMonday=Fe,e.utcMondays=pt,e.utcMonth=Jt,e.utcMonths=sr,e.utcSaturday=Ze,e.utcSaturdays=Nt,e.utcSecond=f,e.utcSeconds=h,e.utcSunday=Ae,e.utcSundays=ut,e.utcThursday=Re,e.utcThursdays=lt,e.utcTuesday=Pe,e.utcTuesdays=Zt,e.utcWednesday=ge,e.utcWednesdays=st,e.utcWeek=Ae,e.utcWeeks=ut,e.utcYear=wr,e.utcYears=cr,Object.defineProperty(e,"__esModule",{value:!0})})});var t3=ye((h6,pee)=>{(function(e,t){typeof h6=="object"&&typeof pee!="undefined"?t(h6,xO()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(h6,function(e,t){"use strict";function r(Ge){if(0<=Ge.y&&Ge.y<100){var Je=new Date(-1,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L);return Je.setFullYear(Ge.y),Je}return new Date(Ge.y,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L)}function n(Ge){if(0<=Ge.y&&Ge.y<100){var Je=new Date(Date.UTC(-1,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L));return Je.setUTCFullYear(Ge.y),Je}return new Date(Date.UTC(Ge.y,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L))}function i(Ge,Je,je){return{y:Ge,m:Je,d:je,H:0,M:0,S:0,L:0}}function a(Ge){var Je=Ge.dateTime,je=Ge.date,tt=Ge.time,xt=Ge.periods,Ie=Ge.days,xe=Ge.shortDays,ke=Ge.months,vt=Ge.shortMonths,ir=h(xt),ar=d(xt),vr=h(Ie),ii=d(Ie),pi=h(xe),$r=d(xe),di=h(ke),ji=d(ke),In=h(vt),wi=d(vt),On={a:$i,A:tn,b:fn,B:yn,c:null,d:N,e:N,f:Ee,H:j,I:re,j:oe,L:_e,m:Ce,M:me,p:Sn,q:Ba,Q:mt,s:er,S:ie,u:Se,U:Le,V:Ae,w:Fe,W:Pe,x:null,X:null,y:ge,Y:Re,Z:ce,"%":It},qn={a:ua,A:ma,b:Wa,B:Fa,c:null,d:Ze,e:Ze,f:lt,H:ut,I:pt,j:Zt,L:st,m:Gt,M:Nt,p:Wo,q:da,Q:mt,s:er,S:Jt,u:sr,U:wr,V:cr,w:$e,W:St,x:null,X:null,y:Qt,Y:Vt,Z:_t,"%":It},Fn={a:rr,A:nr,b:Er,B:Xr,c:ri,d:M,e:M,f:V,H:P,I:P,j:g,L:O,m:C,M:T,p:wt,q:x,Q:Z,s:H,S:z,u:_,U:b,V:p,w:v,W:k,x:Qr,X:Oi,y:S,Y:E,Z:L,"%":G};On.x=ra(je,On),On.X=ra(tt,On),On.c=ra(Je,On),qn.x=ra(je,qn),qn.X=ra(tt,qn),qn.c=ra(Je,qn);function ra(Wn,Ga){return function(vo){var jn=[],Mt=-1,kr=0,Jr=Wn.length,vi,hn,An;for(vo instanceof Date||(vo=new Date(+vo));++Mt53)return null;"w"in jn||(jn.w=1),"Z"in jn?(kr=n(i(jn.y,0,1)),Jr=kr.getUTCDay(),kr=Jr>4||Jr===0?t.utcMonday.ceil(kr):t.utcMonday(kr),kr=t.utcDay.offset(kr,(jn.V-1)*7),jn.y=kr.getUTCFullYear(),jn.m=kr.getUTCMonth(),jn.d=kr.getUTCDate()+(jn.w+6)%7):(kr=r(i(jn.y,0,1)),Jr=kr.getDay(),kr=Jr>4||Jr===0?t.timeMonday.ceil(kr):t.timeMonday(kr),kr=t.timeDay.offset(kr,(jn.V-1)*7),jn.y=kr.getFullYear(),jn.m=kr.getMonth(),jn.d=kr.getDate()+(jn.w+6)%7)}else("W"in jn||"U"in jn)&&("w"in jn||(jn.w="u"in jn?jn.u%7:"W"in jn?1:0),Jr="Z"in jn?n(i(jn.y,0,1)).getUTCDay():r(i(jn.y,0,1)).getDay(),jn.m=0,jn.d="W"in jn?(jn.w+6)%7+jn.W*7-(Jr+5)%7:jn.w+jn.U*7-(Jr+6)%7);return"Z"in jn?(jn.H+=jn.Z/100|0,jn.M+=jn.Z%100,n(jn)):r(jn)}}function Ut(Wn,Ga,vo,jn){for(var Mt=0,kr=Ga.length,Jr=vo.length,vi,hn;Mt=Jr)return-1;if(vi=Ga.charCodeAt(Mt++),vi===37){if(vi=Ga.charAt(Mt++),hn=Fn[vi in o?Ga.charAt(Mt++):vi],!hn||(jn=hn(Wn,vo,jn))<0)return-1}else if(vi!=vo.charCodeAt(jn++))return-1}return jn}function wt(Wn,Ga,vo){var jn=ir.exec(Ga.slice(vo));return jn?(Wn.p=ar[jn[0].toLowerCase()],vo+jn[0].length):-1}function rr(Wn,Ga,vo){var jn=pi.exec(Ga.slice(vo));return jn?(Wn.w=$r[jn[0].toLowerCase()],vo+jn[0].length):-1}function nr(Wn,Ga,vo){var jn=vr.exec(Ga.slice(vo));return jn?(Wn.w=ii[jn[0].toLowerCase()],vo+jn[0].length):-1}function Er(Wn,Ga,vo){var jn=In.exec(Ga.slice(vo));return jn?(Wn.m=wi[jn[0].toLowerCase()],vo+jn[0].length):-1}function Xr(Wn,Ga,vo){var jn=di.exec(Ga.slice(vo));return jn?(Wn.m=ji[jn[0].toLowerCase()],vo+jn[0].length):-1}function ri(Wn,Ga,vo){return Ut(Wn,Je,Ga,vo)}function Qr(Wn,Ga,vo){return Ut(Wn,je,Ga,vo)}function Oi(Wn,Ga,vo){return Ut(Wn,tt,Ga,vo)}function $i(Wn){return xe[Wn.getDay()]}function tn(Wn){return Ie[Wn.getDay()]}function fn(Wn){return vt[Wn.getMonth()]}function yn(Wn){return ke[Wn.getMonth()]}function Sn(Wn){return xt[+(Wn.getHours()>=12)]}function Ba(Wn){return 1+~~(Wn.getMonth()/3)}function ua(Wn){return xe[Wn.getUTCDay()]}function ma(Wn){return Ie[Wn.getUTCDay()]}function Wa(Wn){return vt[Wn.getUTCMonth()]}function Fa(Wn){return ke[Wn.getUTCMonth()]}function Wo(Wn){return xt[+(Wn.getUTCHours()>=12)]}function da(Wn){return 1+~~(Wn.getUTCMonth()/3)}return{format:function(Wn){var Ga=ra(Wn+="",On);return Ga.toString=function(){return Wn},Ga},parse:function(Wn){var Ga=la(Wn+="",!1);return Ga.toString=function(){return Wn},Ga},utcFormat:function(Wn){var Ga=ra(Wn+="",qn);return Ga.toString=function(){return Wn},Ga},utcParse:function(Wn){var Ga=la(Wn+="",!0);return Ga.toString=function(){return Wn},Ga}}}var o={"-":"",_:" ",0:"0"},s=/^\s*\d+/,l=/^%/,u=/[\\^$*+?|[\]().{}]/g;function c(Ge,Je,je){var tt=Ge<0?"-":"",xt=(tt?-Ge:Ge)+"",Ie=xt.length;return tt+(Ie68?1900:2e3),je+tt[0].length):-1}function L(Ge,Je,je){var tt=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Je.slice(je,je+6));return tt?(Ge.Z=tt[1]?0:-(tt[2]+(tt[3]||"00")),je+tt[0].length):-1}function x(Ge,Je,je){var tt=s.exec(Je.slice(je,je+1));return tt?(Ge.q=tt[0]*3-3,je+tt[0].length):-1}function C(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.m=tt[0]-1,je+tt[0].length):-1}function M(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.d=+tt[0],je+tt[0].length):-1}function g(Ge,Je,je){var tt=s.exec(Je.slice(je,je+3));return tt?(Ge.m=0,Ge.d=+tt[0],je+tt[0].length):-1}function P(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.H=+tt[0],je+tt[0].length):-1}function T(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.M=+tt[0],je+tt[0].length):-1}function z(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.S=+tt[0],je+tt[0].length):-1}function O(Ge,Je,je){var tt=s.exec(Je.slice(je,je+3));return tt?(Ge.L=+tt[0],je+tt[0].length):-1}function V(Ge,Je,je){var tt=s.exec(Je.slice(je,je+6));return tt?(Ge.L=Math.floor(tt[0]/1e3),je+tt[0].length):-1}function G(Ge,Je,je){var tt=l.exec(Je.slice(je,je+1));return tt?je+tt[0].length:-1}function Z(Ge,Je,je){var tt=s.exec(Je.slice(je));return tt?(Ge.Q=+tt[0],je+tt[0].length):-1}function H(Ge,Je,je){var tt=s.exec(Je.slice(je));return tt?(Ge.s=+tt[0],je+tt[0].length):-1}function N(Ge,Je){return c(Ge.getDate(),Je,2)}function j(Ge,Je){return c(Ge.getHours(),Je,2)}function re(Ge,Je){return c(Ge.getHours()%12||12,Je,2)}function oe(Ge,Je){return c(1+t.timeDay.count(t.timeYear(Ge),Ge),Je,3)}function _e(Ge,Je){return c(Ge.getMilliseconds(),Je,3)}function Ee(Ge,Je){return _e(Ge,Je)+"000"}function Ce(Ge,Je){return c(Ge.getMonth()+1,Je,2)}function me(Ge,Je){return c(Ge.getMinutes(),Je,2)}function ie(Ge,Je){return c(Ge.getSeconds(),Je,2)}function Se(Ge){var Je=Ge.getDay();return Je===0?7:Je}function Le(Ge,Je){return c(t.timeSunday.count(t.timeYear(Ge)-1,Ge),Je,2)}function Ae(Ge,Je){var je=Ge.getDay();return Ge=je>=4||je===0?t.timeThursday(Ge):t.timeThursday.ceil(Ge),c(t.timeThursday.count(t.timeYear(Ge),Ge)+(t.timeYear(Ge).getDay()===4),Je,2)}function Fe(Ge){return Ge.getDay()}function Pe(Ge,Je){return c(t.timeMonday.count(t.timeYear(Ge)-1,Ge),Je,2)}function ge(Ge,Je){return c(Ge.getFullYear()%100,Je,2)}function Re(Ge,Je){return c(Ge.getFullYear()%1e4,Je,4)}function ce(Ge){var Je=Ge.getTimezoneOffset();return(Je>0?"-":(Je*=-1,"+"))+c(Je/60|0,"0",2)+c(Je%60,"0",2)}function Ze(Ge,Je){return c(Ge.getUTCDate(),Je,2)}function ut(Ge,Je){return c(Ge.getUTCHours(),Je,2)}function pt(Ge,Je){return c(Ge.getUTCHours()%12||12,Je,2)}function Zt(Ge,Je){return c(1+t.utcDay.count(t.utcYear(Ge),Ge),Je,3)}function st(Ge,Je){return c(Ge.getUTCMilliseconds(),Je,3)}function lt(Ge,Je){return st(Ge,Je)+"000"}function Gt(Ge,Je){return c(Ge.getUTCMonth()+1,Je,2)}function Nt(Ge,Je){return c(Ge.getUTCMinutes(),Je,2)}function Jt(Ge,Je){return c(Ge.getUTCSeconds(),Je,2)}function sr(Ge){var Je=Ge.getUTCDay();return Je===0?7:Je}function wr(Ge,Je){return c(t.utcSunday.count(t.utcYear(Ge)-1,Ge),Je,2)}function cr(Ge,Je){var je=Ge.getUTCDay();return Ge=je>=4||je===0?t.utcThursday(Ge):t.utcThursday.ceil(Ge),c(t.utcThursday.count(t.utcYear(Ge),Ge)+(t.utcYear(Ge).getUTCDay()===4),Je,2)}function $e(Ge){return Ge.getUTCDay()}function St(Ge,Je){return c(t.utcMonday.count(t.utcYear(Ge)-1,Ge),Je,2)}function Qt(Ge,Je){return c(Ge.getUTCFullYear()%100,Je,2)}function Vt(Ge,Je){return c(Ge.getUTCFullYear()%1e4,Je,4)}function _t(){return"+0000"}function It(){return"%"}function mt(Ge){return+Ge}function er(Ge){return Math.floor(+Ge/1e3)}var lr;Tr({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 Tr(Ge){return lr=a(Ge),e.timeFormat=lr.format,e.timeParse=lr.parse,e.utcFormat=lr.utcFormat,e.utcParse=lr.utcParse,lr}var Lr="%Y-%m-%dT%H:%M:%S.%LZ";function ti(Ge){return Ge.toISOString()}var Br=Date.prototype.toISOString?ti:e.utcFormat(Lr);function Vr(Ge){var Je=new Date(Ge);return isNaN(Je)?null:Je}var dt=+new Date("2000-01-01T00:00:00.000Z")?Vr:e.utcParse(Lr);e.isoFormat=Br,e.isoParse=dt,e.timeFormatDefaultLocale=Tr,e.timeFormatLocale=a,Object.defineProperty(e,"__esModule",{value:!0})})});var bO=ye((d6,gee)=>{(function(e,t){typeof d6=="object"&&typeof gee!="undefined"?t(d6):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(d6,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,z=[],O=0,V=C[0],G=0;T>0&&V>0&&(G+V+1>P&&(V=Math.max(1,P-G)),z.push(g.substring(T-=V,T+V)),!((G+=V+1)>P));)V=C[O=(O+1)%C.length];return z.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],z=T-(c=Math.max(-8,Math.min(8,Math.floor(T/3)))*3)+1,O=P.length;return z===O?P:z>O?P+new Array(z-O+1).join("0"):z>0?P.slice(0,z)+"."+P.slice(z):"0."+new Array(1-z).join("0")+r(C,Math.max(0,M+z-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 _=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(_.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+"",z=C.numerals===void 0?v:a(_.call(C.numerals,String)),O=C.percent===void 0?"%":C.percent+"",V=C.minus===void 0?"-":C.minus+"",G=C.nan===void 0?"NaN":C.nan+"";function Z(N){N=s(N);var j=N.fill,re=N.align,oe=N.sign,_e=N.symbol,Ee=N.zero,Ce=N.width,me=N.comma,ie=N.precision,Se=N.trim,Le=N.type;Le==="n"?(me=!0,Le="g"):d[Le]||(ie===void 0&&(ie=12),Se=!0,Le="g"),(Ee||j==="0"&&re==="=")&&(Ee=!0,j="0",re="=");var Ae=_e==="$"?g:_e==="#"&&/[boxX]/.test(Le)?"0"+Le.toLowerCase():"",Fe=_e==="$"?P:/[%p]/.test(Le)?O:"",Pe=d[Le],ge=/[defgprs%]/.test(Le);ie=ie===void 0?6:/[gprs]/.test(Le)?Math.max(1,Math.min(21,ie)):Math.max(0,Math.min(20,ie));function Re(ce){var Ze=Ae,ut=Fe,pt,Zt,st;if(Le==="c")ut=Pe(ce)+ut,ce="";else{ce=+ce;var lt=ce<0||1/ce<0;if(ce=isNaN(ce)?G:Pe(Math.abs(ce),ie),Se&&(ce=u(ce)),lt&&+ce==0&&oe!=="+"&&(lt=!1),Ze=(lt?oe==="("?oe:V:oe==="-"||oe==="("?"":oe)+Ze,ut=(Le==="s"?b[8+c/3]:"")+ut+(lt&&oe==="("?")":""),ge){for(pt=-1,Zt=ce.length;++ptst||st>57){ut=(st===46?T+ce.slice(pt+1):ce.slice(pt))+ut,ce=ce.slice(0,pt);break}}}me&&!Ee&&(ce=M(ce,1/0));var Gt=Ze.length+ce.length+ut.length,Nt=Gt>1)+Ze+ce+ut+Nt.slice(Gt);break;default:ce=Nt+Ze+ce+ut;break}return z(ce)}return Re.toString=function(){return N+""},Re}function H(N,j){var re=Z((N=s(N),N.type="f",N)),oe=Math.max(-8,Math.min(8,Math.floor(n(j)/3)))*3,_e=Math.pow(10,-oe),Ee=b[8+oe/3];return function(Ce){return re(_e*Ce)+Ee}}return{format:Z,formatPrefix:H}}var k;E({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function E(C){return k=p(C),e.format=k.format,e.formatPrefix=k.formatPrefix,k}function S(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 x(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=E,e.formatLocale=p,e.formatSpecifier=s,e.precisionFixed=S,e.precisionPrefix=L,e.precisionRound=x,Object.defineProperty(e,"__esModule",{value:!0})})});var yee=ye((orr,mee)=>{"use strict";mee.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 Eo=ye((srr,_ee)=>{"use strict";var gtt=yee();_ee.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&>t(r))return!1}else if(t!=="number")return!1;return e-e<1}});var fs=ye((lrr,xee)=>{"use strict";xee.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 wO=ye((v6,bee)=>{(function(e,t){typeof v6=="object"&&typeof bee!="undefined"?t(v6):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})(v6,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 _=new ArrayBuffer(s),b=new Uint8Array(_);for(u=0;u>4,b[c++]=(h&15)<<4|d>>2,b[c++]=(d&3)<<6|v&63;return _};e.decode=a,e.encode=i,Object.defineProperty(e,"__esModule",{value:!0})})});var my=ye((urr,wee)=>{"use strict";wee.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(yg=>{"use strict";var mtt=wO().decode,ytt=my(),TO=Array.isArray,_tt=ArrayBuffer,xtt=DataView;function Tee(e){return _tt.isView(e)&&!(e instanceof xtt)}yg.isTypedArray=Tee;function p6(e){return TO(e)||Tee(e)}yg.isArrayOrTypedArray=p6;function btt(e){return!p6(e[0])}yg.isArray1D=btt;yg.ensureArray=function(e,t){return TO(e)||(e=[]),e.length=t,e};var Ld={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};Ld.uint8c=Ld.u1c;Ld.uint8=Ld.u1;Ld.int8=Ld.i1;Ld.uint16=Ld.u2;Ld.int16=Ld.i2;Ld.uint32=Ld.u4;Ld.int32=Ld.i4;Ld.float32=Ld.f4;Ld.float64=Ld.f8;function AO(e){return e.constructor===ArrayBuffer}yg.isArrayBuffer=AO;yg.decodeTypedArraySpec=function(e){var t=[],r=wtt(e),n=r.dtype,i=Ld[n];if(!i)throw new Error('Error in dtype: "'+n+'"');var a=i.BYTES_PER_ELEMENT,o=r.bdata;AO(o)||(o=mtt(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 See=Eo(),MO=vv().isArrayOrTypedArray;Cee.exports=function(t,r){if(See(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 r3=LS(),Ett=/^\w*$/,ktt=0,Lee=1,g6=2,Pee=3,sb=4;Iee.exports=function(t,r,n,i){n=n||"name",i=i||"value";var a,o,s,l={};r&&r.length?(s=r3(t,r),o=s.get()):o=t,r=r||"";var u={};if(o)for(a=0;a2)return l[d]=l[d]|g6,f.set(h,null);if(c){for(a=d;a{"use strict";var Ctt=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,Ltt=/^[^\.\[\]]+$/;Dee.exports=function(e,t){for(;t;){var r=e.match(Ctt);if(r)e=r[1];else if(e.match(Ltt))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 m6=ye((vrr,zee)=>{"use strict";var Ptt=Eo();zee.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 Ptt(n)||(n=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),n}});var Bee=ye((prr,qee)=>{"use strict";var Oee=vv().isArrayOrTypedArray,PS=my();qee.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(Oee(i)&&Oee(a)&&PS(i[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(i.length,a.length),s=0;s{"use strict";function Itt(e,t){var r=e%t;return r<0?r+t:r}function Rtt(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}Nee.exports={mod:Itt,modHalf:Rtt}});var cd=ye((mrr,y6)=>{(function(e){var t=/^\s+/,r=/\s+$/,n=0,i=e.round,a=e.min,o=e.max,s=e.random;function l(ge,Re){if(ge=ge||"",Re=Re||{},ge instanceof l)return ge;if(!(this instanceof l))return new l(ge,Re);var ce=u(ge);this._originalInput=ge,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 ge=this.toRgb();return(ge.r*299+ge.g*587+ge.b*114)/1e3},getLuminance:function(){var ge=this.toRgb(),Re,ce,Ze,ut,pt,Zt;return Re=ge.r/255,ce=ge.g/255,Ze=ge.b/255,Re<=.03928?ut=Re/12.92:ut=e.pow((Re+.055)/1.055,2.4),ce<=.03928?pt=ce/12.92:pt=e.pow((ce+.055)/1.055,2.4),Ze<=.03928?Zt=Ze/12.92:Zt=e.pow((Ze+.055)/1.055,2.4),.2126*ut+.7152*pt+.0722*Zt},setAlpha:function(ge){return this._a=N(ge),this._roundA=i(100*this._a)/100,this},toHsv:function(){var ge=d(this._r,this._g,this._b);return{h:ge.h*360,s:ge.s,v:ge.v,a:this._a}},toHsvString:function(){var ge=d(this._r,this._g,this._b),Re=i(ge.h*360),ce=i(ge.s*100),Ze=i(ge.v*100);return this._a==1?"hsv("+Re+", "+ce+"%, "+Ze+"%)":"hsva("+Re+", "+ce+"%, "+Ze+"%, "+this._roundA+")"},toHsl:function(){var ge=f(this._r,this._g,this._b);return{h:ge.h*360,s:ge.s,l:ge.l,a:this._a}},toHslString:function(){var ge=f(this._r,this._g,this._b),Re=i(ge.h*360),ce=i(ge.s*100),Ze=i(ge.l*100);return this._a==1?"hsl("+Re+", "+ce+"%, "+Ze+"%)":"hsla("+Re+", "+ce+"%, "+Ze+"%, "+this._roundA+")"},toHex:function(ge){return _(this._r,this._g,this._b,ge)},toHexString:function(ge){return"#"+this.toHex(ge)},toHex8:function(ge){return b(this._r,this._g,this._b,this._a,ge)},toHex8String:function(ge){return"#"+this.toHex8(ge)},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(j(this._r,255)*100)+"%",g:i(j(this._g,255)*100)+"%",b:i(j(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+i(j(this._r,255)*100)+"%, "+i(j(this._g,255)*100)+"%, "+i(j(this._b,255)*100)+"%)":"rgba("+i(j(this._r,255)*100)+"%, "+i(j(this._g,255)*100)+"%, "+i(j(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:Z[_(this._r,this._g,this._b,!0)]||!1},toFilter:function(ge){var Re="#"+p(this._r,this._g,this._b,this._a),ce=Re,Ze=this._gradientType?"GradientType = 1, ":"";if(ge){var ut=l(ge);ce="#"+p(ut._r,ut._g,ut._b,ut._a)}return"progid:DXImageTransform.Microsoft.gradient("+Ze+"startColorstr="+Re+",endColorstr="+ce+")"},toString:function(ge){var Re=!!ge;ge=ge||this._format;var ce=!1,Ze=this._a<1&&this._a>=0,ut=!Re&&Ze&&(ge==="hex"||ge==="hex6"||ge==="hex3"||ge==="hex4"||ge==="hex8"||ge==="name");return ut?ge==="name"&&this._a===0?this.toName():this.toRgbString():(ge==="rgb"&&(ce=this.toRgbString()),ge==="prgb"&&(ce=this.toPercentageRgbString()),(ge==="hex"||ge==="hex6")&&(ce=this.toHexString()),ge==="hex3"&&(ce=this.toHexString(!0)),ge==="hex4"&&(ce=this.toHex8String(!0)),ge==="hex8"&&(ce=this.toHex8String()),ge==="name"&&(ce=this.toName()),ge==="hsl"&&(ce=this.toHslString()),ge==="hsv"&&(ce=this.toHsvString()),ce||this.toHexString())},clone:function(){return l(this.toString())},_applyModification:function(ge,Re){var ce=ge.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(x,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(S,arguments)},spin:function(){return this._applyModification(M,arguments)},_applyCombination:function(ge,Re){return ge.apply(null,[this].concat([].slice.call(Re)))},analogous:function(){return this._applyCombination(O,arguments)},complement:function(){return this._applyCombination(g,arguments)},monochromatic:function(){return this._applyCombination(V,arguments)},splitcomplement:function(){return this._applyCombination(z,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},l.fromRatio=function(ge,Re){if(typeof ge=="object"){var ce={};for(var Ze in ge)ge.hasOwnProperty(Ze)&&(Ze==="a"?ce[Ze]=ge[Ze]:ce[Ze]=me(ge[Ze]));ge=ce}return l(ge,Re)};function u(ge){var Re={r:0,g:0,b:0},ce=1,Ze=null,ut=null,pt=null,Zt=!1,st=!1;return typeof ge=="string"&&(ge=Fe(ge)),typeof ge=="object"&&(Ae(ge.r)&&Ae(ge.g)&&Ae(ge.b)?(Re=c(ge.r,ge.g,ge.b),Zt=!0,st=String(ge.r).substr(-1)==="%"?"prgb":"rgb"):Ae(ge.h)&&Ae(ge.s)&&Ae(ge.v)?(Ze=me(ge.s),ut=me(ge.v),Re=v(ge.h,Ze,ut),Zt=!0,st="hsv"):Ae(ge.h)&&Ae(ge.s)&&Ae(ge.l)&&(Ze=me(ge.s),pt=me(ge.l),Re=h(ge.h,Ze,pt),Zt=!0,st="hsl"),ge.hasOwnProperty("a")&&(ce=ge.a)),ce=N(ce),{ok:Zt,format:ge.format||st,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(ge,Re,ce){return{r:j(ge,255)*255,g:j(Re,255)*255,b:j(ce,255)*255}}function f(ge,Re,ce){ge=j(ge,255),Re=j(Re,255),ce=j(ce,255);var Ze=o(ge,Re,ce),ut=a(ge,Re,ce),pt,Zt,st=(Ze+ut)/2;if(Ze==ut)pt=Zt=0;else{var lt=Ze-ut;switch(Zt=st>.5?lt/(2-Ze-ut):lt/(Ze+ut),Ze){case ge:pt=(Re-ce)/lt+(Re1&&(Jt-=1),Jt<1/6?Gt+(Nt-Gt)*6*Jt:Jt<1/2?Nt:Jt<2/3?Gt+(Nt-Gt)*(2/3-Jt)*6:Gt}if(Re===0)Ze=ut=pt=ce;else{var st=ce<.5?ce*(1+Re):ce+Re-ce*Re,lt=2*ce-st;Ze=Zt(lt,st,ge+1/3),ut=Zt(lt,st,ge),pt=Zt(lt,st,ge-1/3)}return{r:Ze*255,g:ut*255,b:pt*255}}function d(ge,Re,ce){ge=j(ge,255),Re=j(Re,255),ce=j(ce,255);var Ze=o(ge,Re,ce),ut=a(ge,Re,ce),pt,Zt,st=Ze,lt=Ze-ut;if(Zt=Ze===0?0:lt/Ze,Ze==ut)pt=0;else{switch(Ze){case ge:pt=(Re-ce)/lt+(Re>1)+720)%360;--Re;)Ze.h=(Ze.h+ut)%360,pt.push(l(Ze));return pt}function V(ge,Re){Re=Re||6;for(var ce=l(ge).toHsv(),Ze=ce.h,ut=ce.s,pt=ce.v,Zt=[],st=1/Re;Re--;)Zt.push(l({h:Ze,s:ut,v:pt})),pt=(pt+st)%1;return Zt}l.mix=function(ge,Re,ce){ce=ce===0?0:ce||50;var Ze=l(ge).toRgb(),ut=l(Re).toRgb(),pt=ce/100,Zt={r:(ut.r-Ze.r)*pt+Ze.r,g:(ut.g-Ze.g)*pt+Ze.g,b:(ut.b-Ze.b)*pt+Ze.b,a:(ut.a-Ze.a)*pt+Ze.a};return l(Zt)},l.readability=function(ge,Re){var ce=l(ge),Ze=l(Re);return(e.max(ce.getLuminance(),Ze.getLuminance())+.05)/(e.min(ce.getLuminance(),Ze.getLuminance())+.05)},l.isReadable=function(ge,Re,ce){var Ze=l.readability(ge,Re),ut,pt;switch(pt=!1,ut=Pe(ce),ut.level+ut.size){case"AAsmall":case"AAAlarge":pt=Ze>=4.5;break;case"AAlarge":pt=Ze>=3;break;case"AAAsmall":pt=Ze>=7;break}return pt},l.mostReadable=function(ge,Re,ce){var Ze=null,ut=0,pt,Zt,st,lt;ce=ce||{},Zt=ce.includeFallbackColors,st=ce.level,lt=ce.size;for(var Gt=0;Gtut&&(ut=pt,Ze=l(Re[Gt]));return l.isReadable(ge,Ze,{level:st,size:lt})||!Zt?Ze:(ce.includeFallbackColors=!1,l.mostReadable(ge,["#fff","#000"],ce))};var G=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"},Z=l.hexNames=H(G);function H(ge){var Re={};for(var ce in ge)ge.hasOwnProperty(ce)&&(Re[ge[ce]]=ce);return Re}function N(ge){return ge=parseFloat(ge),(isNaN(ge)||ge<0||ge>1)&&(ge=1),ge}function j(ge,Re){_e(ge)&&(ge="100%");var ce=Ee(ge);return ge=a(Re,o(0,parseFloat(ge))),ce&&(ge=parseInt(ge*Re,10)/100),e.abs(ge-Re)<1e-6?1:ge%Re/parseFloat(Re)}function re(ge){return a(1,o(0,ge))}function oe(ge){return parseInt(ge,16)}function _e(ge){return typeof ge=="string"&&ge.indexOf(".")!=-1&&parseFloat(ge)===1}function Ee(ge){return typeof ge=="string"&&ge.indexOf("%")!=-1}function Ce(ge){return ge.length==1?"0"+ge:""+ge}function me(ge){return ge<=1&&(ge=ge*100+"%"),ge}function ie(ge){return e.round(parseFloat(ge)*255).toString(16)}function Se(ge){return oe(ge)/255}var Le=function(){var ge="[-\\+]?\\d+%?",Re="[-\\+]?\\d*\\.\\d+%?",ce="(?:"+Re+")|(?:"+ge+")",Ze="[\\s|\\(]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")\\s*\\)?",ut="[\\s|\\(]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")\\s*\\)?";return{CSS_UNIT:new RegExp(ce),rgb:new RegExp("rgb"+Ze),rgba:new RegExp("rgba"+ut),hsl:new RegExp("hsl"+Ze),hsla:new RegExp("hsla"+ut),hsv:new RegExp("hsv"+Ze),hsva:new RegExp("hsva"+ut),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(ge){return!!Le.CSS_UNIT.exec(ge)}function Fe(ge){ge=ge.replace(t,"").replace(r,"").toLowerCase();var Re=!1;if(G[ge])ge=G[ge],Re=!0;else if(ge=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ce;return(ce=Le.rgb.exec(ge))?{r:ce[1],g:ce[2],b:ce[3]}:(ce=Le.rgba.exec(ge))?{r:ce[1],g:ce[2],b:ce[3],a:ce[4]}:(ce=Le.hsl.exec(ge))?{h:ce[1],s:ce[2],l:ce[3]}:(ce=Le.hsla.exec(ge))?{h:ce[1],s:ce[2],l:ce[3],a:ce[4]}:(ce=Le.hsv.exec(ge))?{h:ce[1],s:ce[2],v:ce[3]}:(ce=Le.hsva.exec(ge))?{h:ce[1],s:ce[2],v:ce[3],a:ce[4]}:(ce=Le.hex8.exec(ge))?{r:oe(ce[1]),g:oe(ce[2]),b:oe(ce[3]),a:Se(ce[4]),format:Re?"name":"hex8"}:(ce=Le.hex6.exec(ge))?{r:oe(ce[1]),g:oe(ce[2]),b:oe(ce[3]),format:Re?"name":"hex"}:(ce=Le.hex4.exec(ge))?{r:oe(ce[1]+""+ce[1]),g:oe(ce[2]+""+ce[2]),b:oe(ce[3]+""+ce[3]),a:Se(ce[4]+""+ce[4]),format:Re?"name":"hex8"}:(ce=Le.hex3.exec(ge))?{r:oe(ce[1]+""+ce[1]),g:oe(ce[2]+""+ce[2]),b:oe(ce[3]+""+ce[3]),format:Re?"name":"hex"}:!1}function Pe(ge){var Re,ce;return ge=ge||{level:"AA",size:"small"},Re=(ge.level||"AA").toUpperCase(),ce=(ge.size||"small").toLowerCase(),Re!=="AA"&&Re!=="AAA"&&(Re="AA"),ce!=="small"&&ce!=="large"&&(ce="small"),{level:Re,size:ce}}typeof y6!="undefined"&&y6.exports?y6.exports=l:window.tinycolor=l})(Math)});var Ao=ye(DS=>{"use strict";var Uee=my(),IS=Array.isArray;function Dtt(e,t){var r,n;for(r=0;r{"use strict";Vee.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 FS=ye((xrr,Gee)=>{"use strict";Gee.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var B1=ye((brr,Wee)=>{"use strict";var Hee=FS(),jee=ec(),EO=jee({editType:"none"});EO.family.dflt=Hee.HOVERFONT;EO.size.dflt=Hee.HOVERFONTSIZE;Wee.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:EO,grouptitlefont:jee({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var n3=ye((wrr,Xee)=>{"use strict";var Ftt=ec(),zS=B1().hoverlabel,OS=Ao().extendFlat;Xee.exports={hoverlabel:{bgcolor:OS({},zS.bgcolor,{arrayOk:!0}),bordercolor:OS({},zS.bordercolor,{arrayOk:!0}),font:Ftt({arrayOk:!0,editType:"none"}),align:OS({},zS.align,{arrayOk:!0}),namelength:OS({},zS.namelength,{arrayOk:!0}),showarrow:OS({},zS.showarrow),editType:"none"}}});var Gl=ye((Trr,Zee)=>{"use strict";var ztt=ec(),Ott=n3();Zee.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:ztt({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:Ott.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 lb=ye((Arr,Jee)=>{"use strict";var qtt=cd(),_6={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)"]]},Yee=_6.RdBu;function Btt(e,t){if(t||(t=Yee),!e)return t;function r(){try{e=_6[e]||JSON.parse(e)}catch(n){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),Kee(e)?e:t}function Kee(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";ub.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];ub.defaultLine="#444";ub.lightLine="#eee";ub.background="#fff";ub.borderLine="#BEC8D9";ub.lightFraction=100*10/11});var ka=ye((Mrr,$ee)=>{"use strict";var bp=cd(),Utt=Eo(),Vtt=vv().isTypedArray,fd=$ee.exports={},x6=Lh();fd.defaults=x6.defaults;var Gtt=fd.defaultLine=x6.defaultLine;fd.lightLine=x6.lightLine;var CO=fd.background=x6.background;fd.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"};fd.rgb=function(e){return fd.tinyRGB(bp(e))};fd.opacity=function(e){return e?bp(e).getAlpha():0};fd.addOpacity=function(e,t){var r=bp(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"};fd.combine=function(e,t){var r=bp(e).toRgb();if(r.a===1)return bp(e).toRgbString();var n=bp(t||CO).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 bp(a).toRgbString()};fd.interpolate=function(e,t,r){var n=bp(e).toRgb(),i=bp(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 bp(a).toRgbString()};fd.contrast=function(e,t,r){var n=bp(e);n.getAlpha()!==1&&(n=bp(fd.combine(e,CO)));var i=n.isDark()?t?n.lighten(t):CO:r?n.darken(r):Gtt;return i.toString()};fd.stroke=function(e,t){var r=bp(t);e.style({stroke:fd.tinyRGB(r),"stroke-opacity":r.getAlpha()})};fd.fill=function(e,t){var r=bp(t);e.style({fill:fd.tinyRGB(r),"fill-opacity":r.getAlpha()})};fd.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 N1=ye((Err,Qee)=>{"use strict";Qee.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var a3=ye(ete=>{"use strict";ete.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 nte=ye(wp=>{"use strict";var LO=Eo(),tte=cd(),rte=Ao().extendFlat,Htt=Gl(),jtt=lb(),Wtt=ka(),Xtt=N1().DESELECTDIM,o3=LS(),ite=a3().counter,Ztt=i3().modHalf,dm=vv().isArrayOrTypedArray,U1=vv().isTypedArraySpec,V1=vv().decodeTypedArraySpec;wp.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(dm(e)?e:U1(e)?V1(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}U1(e)&&(e=V1(e)),e%1||!LO(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){U1(e)&&(e=V1(e)),tte(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function n(i){return tte(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(jtt.get(e,r))}},angle:{coerceFunction:function(e,t,r){U1(e)&&(e=V1(e)),e==="auto"?t.set("auto"):LO(e)?t.set(Ztt(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,n){var i=n.regex||ite(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:!!ite(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 ate={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/un/"},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:{}}},ote={};function ste(e,t){for(var r in e){var n=e[r];n.valType?t[r]=n.dflt:(t[r]||(t[r]={}),ste(n,t[r]))}}ste(ate,ote);lte.exports={configAttributes:ate,dfltConfig:ote}});var IO=ye((Prr,ute)=>{"use strict";var PO=Oa(),Ytt=Eo(),qS=[];ute.exports=function(e,t){if(qS.indexOf(e)!==-1)return;qS.push(e);var r=1e3;Ytt(t)?r=t:t==="long"&&(r=3e3);var n=PO.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var i=n.selectAll(".notifier-note").data(qS);function a(o){o.duration(700).style("opacity",0).each("end",function(s){var l=qS.indexOf(s);l!==-1&&qS.splice(l,1),PO.select(this).remove()})}i.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var s=PO.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 s3=cb().dfltConfig,RO=IO(),DO=cte.exports={};DO.log=function(){var e;if(s3.logging>1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}};DO.warn=function(){var e;if(s3.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}};DO.error=function(){var e;if(s3.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}});var w6=ye((Rrr,fte)=>{"use strict";fte.exports=function(){}});var FO=ye((Drr,hte)=>{"use strict";hte.exports=function(t,r){if(r instanceof RegExp){for(var n=r.toString(),i=0;i{dte.exports=Ktt;function Ktt(){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 gte=ye((zrr,pte)=>{pte.exports=Jtt;function Jtt(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 yte=ye((Orr,mte)=>{mte.exports=$tt;function $tt(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 zO=ye((qrr,_te)=>{_te.exports=Qtt;function Qtt(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 bte=ye((Brr,xte)=>{xte.exports=ert;function ert(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 Tte=ye((Nrr,wte)=>{wte.exports=trt;function trt(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],_=t[13],b=t[14],p=t[15],k=r*s-n*o,E=r*l-i*o,S=r*u-a*o,L=n*l-i*s,x=n*u-a*s,C=i*u-a*l,M=c*_-f*v,g=c*b-h*v,P=c*p-d*v,T=f*b-h*_,z=f*p-d*_,O=h*p-d*b,V=k*O-E*z+S*T+L*P-x*g+C*M;return V?(V=1/V,e[0]=(s*O-l*z+u*T)*V,e[1]=(i*z-n*O-a*T)*V,e[2]=(_*C-b*x+p*L)*V,e[3]=(h*x-f*C-d*L)*V,e[4]=(l*P-o*O-u*g)*V,e[5]=(r*O-i*P+a*g)*V,e[6]=(b*S-v*C-p*E)*V,e[7]=(c*C-h*S+d*E)*V,e[8]=(o*z-s*P+u*M)*V,e[9]=(n*P-r*z-a*M)*V,e[10]=(v*x-_*S+p*k)*V,e[11]=(f*S-c*x-d*k)*V,e[12]=(s*g-o*T-l*M)*V,e[13]=(r*T-n*g+i*M)*V,e[14]=(_*E-v*L-b*k)*V,e[15]=(c*L-f*E+h*k)*V,e):null}});var Ste=ye((Urr,Ate)=>{Ate.exports=rrt;function rrt(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],_=t[13],b=t[14],p=t[15];return e[0]=s*(h*p-d*b)-f*(l*p-u*b)+_*(l*d-u*h),e[1]=-(n*(h*p-d*b)-f*(i*p-a*b)+_*(i*d-a*h)),e[2]=n*(l*p-u*b)-s*(i*p-a*b)+_*(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*_)-c*(s*p-u*_)+v*(s*d-u*f),e[9]=-(r*(f*p-d*_)-c*(n*p-a*_)+v*(n*d-a*f)),e[10]=r*(s*p-u*_)-o*(n*p-a*_)+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*_)-c*(s*b-l*_)+v*(s*h-l*f)),e[13]=r*(f*b-h*_)-c*(n*b-i*_)+v*(n*h-i*f),e[14]=-(r*(s*b-l*_)-o*(n*b-i*_)+v*(n*l-i*s)),e[15]=r*(s*h-l*f)-o*(n*h-i*f)+c*(n*l-i*s),e}});var Ete=ye((Vrr,Mte)=>{Mte.exports=irt;function irt(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],_=e[14],b=e[15],p=t*o-r*a,k=t*s-n*a,E=t*l-i*a,S=r*s-n*o,L=r*l-i*o,x=n*l-i*s,C=u*v-c*d,M=u*_-f*d,g=u*b-h*d,P=c*_-f*v,T=c*b-h*v,z=f*b-h*_;return p*z-k*T+E*P+S*g-L*M+x*C}});var Cte=ye((Grr,kte)=>{kte.exports=nrt;function nrt(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],_=t[12],b=t[13],p=t[14],k=t[15],E=r[0],S=r[1],L=r[2],x=r[3];return e[0]=E*n+S*s+L*f+x*_,e[1]=E*i+S*l+L*h+x*b,e[2]=E*a+S*u+L*d+x*p,e[3]=E*o+S*c+L*v+x*k,E=r[4],S=r[5],L=r[6],x=r[7],e[4]=E*n+S*s+L*f+x*_,e[5]=E*i+S*l+L*h+x*b,e[6]=E*a+S*u+L*d+x*p,e[7]=E*o+S*c+L*v+x*k,E=r[8],S=r[9],L=r[10],x=r[11],e[8]=E*n+S*s+L*f+x*_,e[9]=E*i+S*l+L*h+x*b,e[10]=E*a+S*u+L*d+x*p,e[11]=E*o+S*c+L*v+x*k,E=r[12],S=r[13],L=r[14],x=r[15],e[12]=E*n+S*s+L*f+x*_,e[13]=E*i+S*l+L*h+x*b,e[14]=E*a+S*u+L*d+x*p,e[15]=E*o+S*c+L*v+x*k,e}});var Pte=ye((Hrr,Lte)=>{Lte.exports=art;function art(e,t,r){var n=r[0],i=r[1],a=r[2],o,s,l,u,c,f,h,d,v,_,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],_=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]=_,e[10]=b,e[11]=p,e[12]=o*n+c*i+v*a+t[12],e[13]=s*n+f*i+_*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 Rte=ye((jrr,Ite)=>{Ite.exports=ort;function ort(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 Fte=ye((Wrr,Dte)=>{Dte.exports=srt;function srt(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,_,b,p,k,E,S,L,x,C,M,g,P,T,z,O,V,G;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],_=t[4],b=t[5],p=t[6],k=t[7],E=t[8],S=t[9],L=t[10],x=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,z=o*a*c+i*l,O=i*o*c+a*l,V=a*o*c-i*l,G=o*o*c+u,e[0]=f*C+_*M+E*g,e[1]=h*C+b*M+S*g,e[2]=d*C+p*M+L*g,e[3]=v*C+k*M+x*g,e[4]=f*P+_*T+E*z,e[5]=h*P+b*T+S*z,e[6]=d*P+p*T+L*z,e[7]=v*P+k*T+x*z,e[8]=f*O+_*V+E*G,e[9]=h*O+b*V+S*G,e[10]=d*O+p*V+L*G,e[11]=v*O+k*V+x*G,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var Ote=ye((Xrr,zte)=>{zte.exports=lrt;function lrt(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 Bte=ye((Zrr,qte)=>{qte.exports=urt;function urt(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 Ute=ye((Yrr,Nte)=>{Nte.exports=crt;function crt(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 Gte=ye((Krr,Vte)=>{Vte.exports=frt;function frt(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 jte=ye((Jrr,Hte)=>{Hte.exports=hrt;function hrt(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,_=a*u,b=o*s,p=o*l,k=o*u;return e[0]=1-(d+_),e[1]=f+k,e[2]=h-p,e[3]=0,e[4]=f-k,e[5]=1-(c+_),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 Xte=ye(($rr,Wte)=>{Wte.exports=drt;function drt(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 Yte=ye((Qrr,Zte)=>{Zte.exports=vrt;function vrt(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 Jte=ye((eir,Kte)=>{Kte.exports=prt;function prt(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 Qte=ye((tir,$te)=>{$te.exports=grt;function grt(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 tre=ye((rir,ere)=>{ere.exports=mrt;function mrt(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 ire=ye((iir,rre)=>{rre.exports=yrt;function yrt(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,_=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+_,e[7]=0,e[8]=h+b,e[9]=d-_,e[10]=1-u-f,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var are=ye((nir,nre)=>{nre.exports=_rt;function _rt(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 sre=ye((air,ore)=>{ore.exports=xrt;function xrt(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 ure=ye((oir,lre)=>{lre.exports=brt;function brt(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 fre=ye((sir,cre)=>{cre.exports=wrt;function wrt(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 dre=ye((lir,hre)=>{var Trt=zO();hre.exports=Art;function Art(e,t,r,n){var i,a,o,s,l,u,c,f,h,d,v=t[0],_=t[1],b=t[2],p=n[0],k=n[1],E=n[2],S=r[0],L=r[1],x=r[2];return Math.abs(v-S)<1e-6&&Math.abs(_-L)<1e-6&&Math.abs(b-x)<1e-6?Trt(e):(c=v-S,f=_-L,h=b-x,d=1/Math.sqrt(c*c+f*f+h*h),c*=d,f*=d,h*=d,i=k*h-E*f,a=E*c-p*h,o=p*f-k*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*_+o*b),e[13]=-(s*v+l*_+u*b),e[14]=-(c*v+f*_+h*b),e[15]=1,e)}});var pre=ye((uir,vre)=>{vre.exports=Srt;function Srt(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 OO=ye((cir,gre)=>{gre.exports={create:vte(),clone:gte(),copy:yte(),identity:zO(),transpose:bte(),invert:Tte(),adjoint:Ste(),determinant:Ete(),multiply:Cte(),translate:Pte(),scale:Rte(),rotate:Fte(),rotateX:Ote(),rotateY:Bte(),rotateZ:Ute(),fromRotation:Gte(),fromRotationTranslation:jte(),fromScaling:Xte(),fromTranslation:Yte(),fromXRotation:Jte(),fromYRotation:Qte(),fromZRotation:tre(),fromQuat:ire(),frustum:are(),perspective:sre(),perspectiveFromFieldOfView:ure(),ortho:fre(),lookAt:dre(),str:pre()}});var T6=ye(fh=>{"use strict";var Mrt=OO();fh.init2dArray=function(e,t){for(var r=new Array(e),n=0;n{"use strict";var Ert=Oa(),mre=G1(),krt=T6(),Crt=OO();function Lrt(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 Prt(e){var t=Ert.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function yre(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function Irt(e,t){_re("global",e,t)}function _re(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 Rrt(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&yre(r)}function Drt(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 Frt(e){var t=bre(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=xre(n);if(i){var a=krt.convertCssMatrix(i);r=Crt.multiply(r,r,a)}}),r}function xre(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 bre(e){for(var t=[];zrt(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function zrt(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function Ort(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}wre.exports={getGraphDiv:Lrt,isPlotDiv:Prt,removeElement:yre,addStyleRule:Irt,addRelatedStyleRule:_re,deleteRelatedStyleRule:Rrt,setStyleOnHover:Drt,getFullTransformMatrix:Frt,getElementTransformMatrix:xre,getElementAndAncestors:bre,equalDomRects:Ort}});var NS=ye((dir,Tre)=>{"use strict";Tre.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 mc=ye((vir,Lre)=>{"use strict";var Sre=Ao().extendFlat,qrt=my(),Mre={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},Ere={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},Brt=Mre.flags.slice().concat(["fullReplot"]),Nrt=Ere.flags.slice().concat("layoutReplot");Lre.exports={traces:Mre,layout:Ere,traceFlags:function(){return Are(Brt)},layoutFlags:function(){return Are(Nrt)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var n=r.split("+"),i=0;i{"use strict";qO.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};qO.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 BO=ye((gir,Pre)=>{"use strict";Pre.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 Ll=ye(l3=>{"use strict";var{DATE_FORMAT_LINK:Urt,FORMAT_LINK:Vrt}=BO(),Grt=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function Hrt({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,Vrt,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,Urt,"for details on the date formatting syntax.",Grt].join(" ")}l3.templateFormatStringDescription=Hrt;l3.hovertemplateAttrs=({editType:e="none",arrayOk:t}={},r={})=>mg({valType:"string",dflt:"",editType:e},t!==!1?{arrayOk:!0}:{});l3.texttemplateAttrs=({editType:e="calc",arrayOk:t}={},r={})=>mg({valType:"string",dflt:"",editType:e},t!==!1?{arrayOk:!0}:{});l3.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:t}={},r={})=>({valType:"string",dflt:"",editType:e});l3.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var M6=ye((_ir,Ore)=>{"use strict";function H1(e,t){return t?t.d2l(e):e}function Ire(e,t){return t?t.l2d(e):e}function jrt(e){return e.x0}function Wrt(e){return e.x1}function Xrt(e){return e.y0}function Zrt(e){return e.y1}function Rre(e){return e.x0shift||0}function Dre(e){return e.x1shift||0}function Fre(e){return e.y0shift||0}function zre(e){return e.y1shift||0}function A6(e,t){return H1(e.x1,t)+Dre(e)-H1(e.x0,t)-Rre(e)}function S6(e,t,r){return H1(e.y1,r)+zre(e)-H1(e.y0,r)-Fre(e)}function Yrt(e,t){return Math.abs(A6(e,t))}function Krt(e,t,r){return Math.abs(S6(e,t,r))}function Jrt(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(A6(e,t),2)+Math.pow(S6(e,t,r),2))}function $rt(e,t){return Ire((H1(e.x1,t)+Dre(e)+H1(e.x0,t)+Rre(e))/2,t)}function Qrt(e,t,r){return Ire((H1(e.y1,r)+zre(e)+H1(e.y0,r)+Fre(e))/2,r)}function eit(e,t,r){return e.type!=="line"?void 0:S6(e,t,r)/A6(e,t)}Ore.exports={x0:jrt,x1:Wrt,y0:Xrt,y1:Zrt,slope:eit,dx:A6,dy:S6,width:Yrt,height:Krt,length:Jrt,xcenter:$rt,ycenter:Qrt}});var Nre=ye((xir,Bre)=>{"use strict";var tit=mc().overrideAll,fb=Gl(),qre=ec(),rit=Pd().dash,j1=Ao().extendFlat,{shapeTexttemplateAttrs:iit,templatefallbackAttrs:nit}=Ll(),ait=M6();Bre.exports=tit({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:qre({})},legendrank:j1({},fb.legendrank,{}),legendwidth:j1({},fb.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:j1({},rit,{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:iit({newshape:!0},{keys:Object.keys(ait)}),texttemplatefallback:nit({editType:"arraydraw"}),font:qre({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var Vre=ye((bir,Ure)=>{"use strict";var oit=Pd().dash,sit=Ao().extendFlat;Ure.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:sit({},oit,{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 E6=ye((wir,Gre)=>{"use strict";Gre.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 u3=ye((Tir,Xre)=>{"use strict";var NO=ec(),lit=NS(),k6=Lh(),Hre=Nre(),jre=Vre(),uit=E6(),Wre=Ao().extendFlat,C6=NO({editType:"calc"});C6.family.dflt='"Open Sans", verdana, arial, sans-serif';C6.size.dflt=12;C6.color.dflt=k6.defaultLine;Xre.exports={font:C6,title:{text:{valType:"string",editType:"layoutstyle"},font:NO({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:NO({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:Wre(uit({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:k6.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:k6.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:k6.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:Hre.newshape,activeshape:Hre.activeshape,newselection:jre.newselection,activeselection:jre.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:Wre({},lit.transition,{editType:"none"})}});var Zre=ye(()=>{(function(){if(!document.getElementById("ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe")){var e=document.createElement("style");e.id="ce8d464691048653ffe3a57c6c18ab566e8366f186677868cf724621a857b4fe",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var qa=ye(el=>{"use strict";var c3=G1(),Yre=w6(),Kre=FO(),cit=my(),fit=BS().addStyleRule,Jre=Ao(),hit=Gl(),dit=u3(),vit=Jre.extendFlat,UO=Jre.extendDeepAll;el.modules={};el.allCategories={};el.allTypes=[];el.subplotsRegistry={};el.componentsRegistry={};el.layoutArrayContainers=[];el.layoutArrayRegexes=[];el.traceLayoutAttributes={};el.localeRegistry={};el.apiMethodRegistry={};el.collectableSubplotTypes=null;el.register=function(t){if(el.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 xit=t3().timeFormat,lie=Eo(),VO=G1(),X1=i3().mod,d3=fs(),y0=d3.BADNUM,Tp=d3.ONEDAY,US=d3.ONEHOUR,W1=d3.ONEMIN,h3=d3.ONESEC,VS=d3.EPOCHJD,yy=qa(),rie=t3().utcFormat,bit=/^\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,wit=/^\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,iie=new Date().getFullYear()-70;function _y(e){return e&&yy.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}hh.dateTick0=function(e,t){var r=Tit(e,!!t);if(t<2)return r;var n=hh.dateTime2ms(r,e);return n+=Tp*(t-1),hh.ms2DateTime(n,0,e)};function Tit(e,t){return _y(e)?t?yy.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:yy.getComponentMethod("calendars","CANONICAL_TICK")[e]:t?"2000-01-02":"2000-01-01"}hh.dfltRange=function(e){return _y(e)?yy.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};hh.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var P6,I6;hh.dateTime2ms=function(e,t){if(hh.isJSDate(e)){var r=e.getTimezoneOffset()*W1,n=(e.getUTCMinutes()-e.getMinutes())*W1+(e.getUTCSeconds()-e.getSeconds())*h3+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var i=3*W1;r=r-i/2+X1(n-r+i/2,i)}return e=Number(e)-r,e>=P6&&e<=I6?e:y0}if(typeof e!="string"&&typeof e!="number")return y0;e=String(e);var a=_y(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?wit:bit);if(!l)return y0;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 y0;u=Number(u);var _;try{var b=yy.getComponentMethod("calendars","getCal")(t);if(s){var p=c.charAt(c.length-1)==="i";c=parseInt(c,10),_=b.newDate(u,b.toMonthIndex(u,c,p),f)}else _=b.newDate(u,Number(c),f)}catch(E){return y0}return _?(_.toJD()-VS)*Tp+h*US+d*W1+v*h3:y0}u.length===2?u=(Number(u)+2e3-iie)%100+iie:u=Number(u),c-=1;var k=new Date(Date.UTC(2e3,c,f,h,d));return k.setUTCFullYear(u),k.getUTCMonth()!==c||k.getUTCDate()!==f?y0:k.getTime()+v*h3};P6=hh.MIN_MS=hh.dateTime2ms("-9999");I6=hh.MAX_MS=hh.dateTime2ms("9999-12-31 23:59:59.9999");hh.isDateTime=function(e,t){return hh.dateTime2ms(e,t)!==y0};function f3(e,t){return String(e+Math.pow(10,t)).substr(1)}var L6=90*Tp,nie=3*US,aie=5*W1;hh.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=P6&&e<=I6))return y0;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(_y(r)){var f=Math.floor(i/Tp)+VS,h=Math.floor(X1(e,Tp));try{a=yy.getComponentMethod("calendars","getCal")(r).fromJD(f).formatDate("yyyy-mm-dd")}catch(d){a=rie("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=P6+Tp&&e<=I6-Tp))return y0;var t=Math.floor(X1(e+.05,1)*10),r=new Date(Math.round(e-t/10)),n=xit("%Y-%m-%d")(r),i=r.getHours(),a=r.getMinutes(),o=r.getSeconds(),s=r.getUTCMilliseconds()*10+t;return uie(n,i,a,o,s)};function uie(e,t,r,n,i){if((t||r||n||i)&&(e+=" "+f3(t,2)+":"+f3(r,2),(n||i)&&(e+=":"+f3(n,2),i))){for(var a=4;i%10===0;)a-=1,i/=10;e+="."+f3(i,a)}return e}hh.cleanDate=function(e,t,r){if(e===y0)return t;if(hh.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(_y(r))return VO.error("JS Dates and milliseconds are incompatible with world calendars",e),t;if(e=hh.ms2DateTimeLocal(+e),!e&&t!==void 0)return t}else if(!hh.isDateTime(e,r))return VO.error("unrecognized date",e),t;return e};var Ait=/%\d?f/g,Sit=/%h/g,Mit={1:"1",2:"1",3:"2",4:"2"};function oie(e,t,r,n){e=e.replace(Ait,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(Sit,function(){return Mit[r("%q")(i)]}),_y(n))try{e=yy.getComponentMethod("calendars","worldCalFmt")(e,t,n)}catch(a){return"Invalid"}return r(e)(i)}var Eit=[59,59.9,59.99,59.999,59.9999];function kit(e,t){var r=X1(e+.05,Tp),n=f3(Math.floor(r/US),2)+":"+f3(X1(Math.floor(r/W1),60),2);if(t!=="M"){lie(t)||(t=0);var i=Math.min(X1(e/h3,60),Eit[t]),a=(100+i).toFixed(t).substr(1);t>0&&(a=a.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+a}return n}hh.formatDate=function(e,t,r,n,i,a){if(i=_y(i)&&i,!t)if(r==="y")t=a.year;else if(r==="m")t=a.month;else if(r==="d")t=a.dayMonth+` -`+a.year;else return kit(e,r)+` -`+oie(a.dayMonthYear,e,n,i);return oie(t,e,n,i)};var sie=3*Tp;hh.incrementMonth=function(e,t,r){r=_y(r)&&r;var n=X1(e,Tp);if(e=Math.round(e-n),r)try{var i=Math.round(e/Tp)+VS,a=yy.getComponentMethod("calendars","getCal")(r),o=a.fromJD(i);return t%12?a.add(o,t,"m"):a.add(o,t/12,"y"),(o.toJD()-VS)*Tp+n}catch(l){VO.error("invalid ms "+e+" in calendar "+r)}var s=new Date(e+sie);return s.setUTCMonth(s.getUTCMonth()+t)+n-sie};hh.findExactDates=function(e,t){for(var r=0,n=0,i=0,a=0,o,s,l=_y(t)&&yy.getComponentMethod("calendars","getCal")(t),u=0;u{"use strict";fie.exports=function(t){return t}});var R6=ye(xy=>{"use strict";var Cit=Eo(),Lit=G1(),Pit=GS(),Iit=fs().BADNUM,GO=1e-9;xy.findBin=function(e,t,r){if(Cit(t.start))return r?Math.ceil((e-t.start)/t.size-GO)-1:Math.floor((e-t.start)/t.size+GO);var n=0,i=t.length,a=0,o=i>1?(t[i-1]-t[0])/(i-1):1,s,l;for(o>=0?l=r?Rit:Dit:l=r?zit:Fit,e+=o*GO*(r?-1:1)*(o>=0?1:-1);n90&&Lit.log("Long binary search..."),n-1};function Rit(e,t){return et}function zit(e,t){return e>=t}xy.sorterAsc=function(e,t){return e-t};xy.sorterDes=function(e,t){return t-e};xy.distinctVals=function(e){var t=e.slice();t.sort(xy.sorterAsc);var r;for(r=t.length-1;r>-1&&t[r]===Iit;r--);for(var n=t[r]-t[0]||1,i=n/(r||1)/1e4,a=[],o,s=0;s<=r;s++){var l=t[s],u=l-o;o===void 0?(a.push(l),o=l):u>i&&(n=Math.min(n,u),a.push(l),o=l)}return{vals:a,minDiff:n}};xy.roundUp=function(e,t,r){for(var n=0,i=t.length-1,a,o=0,s=r?0:1,l=r?1:0,u=r?Math.ceil:Math.floor;n0&&(n=1),r&&n)return e.sort(t)}return n?e:e.reverse()};xy.findIndexOfMin=function(e,t){t=t||Pit;for(var r=1/0,n,i=0;i{"use strict";hie.exports=function(t){return Object.keys(t).sort()}});var die=ye(dh=>{"use strict";var HS=Eo(),Oit=vv().isArrayOrTypedArray;dh.aggNums=function(e,t,r,n){var i,a;if((!n||n>r.length)&&(n=r.length),HS(t)||(t=!1),Oit(r[0])){for(a=new Array(n),i=0;ie.length-1)return e[e.length-1];var r=t%1;return r*e[Math.ceil(t)]+(1-r)*e[Math.floor(t)]}});var yie=ye((Iir,mie)=>{"use strict";var vie=i3(),HO=vie.mod,qit=vie.modHalf,jS=Math.PI,Y1=2*jS;function Bit(e){return e/180*jS}function Nit(e){return e/jS*180}function jO(e){return Math.abs(e[1]-e[0])>Y1-1e-14}function pie(e,t){return qit(t-e,Y1)}function Uit(e,t){return Math.abs(pie(e,t))}function gie(e,t){if(jO(t))return!0;var r,n;t[0]n&&(n+=Y1);var i=HO(e,Y1),a=i+Y1;return i>=r&&i<=n||a>=r&&a<=n}function Vit(e,t,r,n){if(!gie(t,n))return!1;var i,a;return r[0]=i&&e<=a}function WO(e,t,r,n,i,a,o){i=i||0,a=a||0;var s=jO([r,n]),l,u,c,f,h;s?(l=0,u=jS,c=Y1):r{"use strict";hb.isLeftAnchor=function(t){return t.xanchor==="left"||t.xanchor==="auto"&&t.x<=1/3};hb.isCenterAnchor=function(t){return t.xanchor==="center"||t.xanchor==="auto"&&t.x>1/3&&t.x<2/3};hb.isRightAnchor=function(t){return t.xanchor==="right"||t.xanchor==="auto"&&t.x>=2/3};hb.isTopAnchor=function(t){return t.yanchor==="top"||t.yanchor==="auto"&&t.y>=2/3};hb.isMiddleAnchor=function(t){return t.yanchor==="middle"||t.yanchor==="auto"&&t.y>1/3&&t.y<2/3};hb.isBottomAnchor=function(t){return t.yanchor==="bottom"||t.yanchor==="auto"&&t.y<=1/3}});var wie=ye(db=>{"use strict";var XO=i3().mod;db.segmentsIntersect=bie;function bie(e,t,r,n,i,a,o,s){var l=r-e,u=i-e,c=o-i,f=n-t,h=a-t,d=s-a,v=l*d-c*f;if(v===0)return null;var _=(u*d-c*h)/v,b=(u*f-l*h)/v;return b<0||b>1||_<0||_>1?null:{x:e+l*_,y:t+f*_}}db.segmentDistance=function(t,r,n,i,a,o,s,l){if(bie(t,r,n,i,a,o,s,l))return 0;var u=n-t,c=i-r,f=s-a,h=l-o,d=u*u+c*c,v=f*f+h*h,_=Math.min(D6(u,c,d,a-t,o-r),D6(u,c,d,s-t,l-r),D6(f,h,v,t-a,r-o),D6(f,h,v,n-a,i-o));return Math.sqrt(_)};function D6(e,t,r,n,i){var a=n*e+i*t;if(a<0)return n*n+i*i;if(a>r){var o=n-e,s=i-t;return o*o+s*s}else{var l=n*t-i*e;return l*l/r}}var F6,ZO,xie;db.getTextLocation=function(t,r,n,i){if((t!==ZO||i!==xie)&&(F6={},ZO=t,xie=i),F6[n])return F6[n];var a=t.getPointAtLength(XO(n-i/2,r)),o=t.getPointAtLength(XO(n+i/2,r)),s=Math.atan((o.y-a.y)/(o.x-a.x)),l=t.getPointAtLength(XO(n,r)),u=(l.x*4+a.x+o.x)/6,c=(l.y*4+a.y+o.y)/6,f={x:u,y:c,theta:s};return F6[n]=f,f};db.clearLocationCache=function(){ZO=null};db.getVisibleSegment=function(t,r,n){var i=r.left,a=r.right,o=r.top,s=r.bottom,l=0,u=t.getTotalLength(),c=u,f,h;function d(_){var b=t.getPointAtLength(_);_===0?f=b:_===u&&(h=b);var p=b.xa?b.x-a:0,k=b.ys?b.y-s:0;return Math.sqrt(p*p+k*k)}for(var v=d(l);v;){if(l+=v+n,l>c)return;v=d(l)}for(v=d(c);v;){if(c-=v+n,l>c)return;v=d(c)}return{min:l,max:c,len:c-l,total:u,isClosed:l===0&&c===u&&Math.abs(f.x-h.x)<.1&&Math.abs(f.y-h.y)<.1}};db.findPointOnPath=function(t,r,n,i){i=i||{};for(var a=i.pathLength||t.getTotalLength(),o=i.tolerance||.001,s=i.iterationLimit||30,l=t.getPointAtLength(0)[n]>t.getPointAtLength(a)[n]?-1:1,u=0,c=0,f=a,h,d,v;u0?f=h:c=h,u++}return d}});var z6=ye(WS=>{"use strict";var by={};WS.throttle=function(t,r,n){var i=by[t],a=Date.now();if(!i){for(var o in by)by[o].tsi.ts+r){s();return}i.timer=setTimeout(function(){s(),i.timer=null},r)};WS.done=function(e){var t=by[e];return!t||!t.timer?Promise.resolve():new Promise(function(r){var n=t.onDone;t.onDone=function(){n&&n(),r(),t.onDone=null}})};WS.clear=function(e){if(e)Tie(by[e]),delete by[e];else for(var t in by)WS.clear(t)};function Tie(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var Sie=ye((zir,Aie)=>{"use strict";Aie.exports=function(t){t._responsiveChartHandler&&(window.removeEventListener("resize",t._responsiveChartHandler),delete t._responsiveChartHandler)}});var Mie=ye((Oir,O6)=>{"use strict";O6.exports=YO;O6.exports.isMobile=YO;O6.exports.default=YO;var Wit=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,Xit=/CrOS/,Zit=/android|ipad|playbook|silk/i;function YO(e){e||(e={});let t=e.ua;if(!t&&typeof navigator!="undefined"&&(t=navigator.userAgent),t&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string")return!1;let r=Wit.test(t)&&!Xit.test(t)||!!e.tablet&&Zit.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}});var kie=ye((qir,Eie)=>{"use strict";var Yit=Eo(),Kit=Mie();Eie.exports=function(t){var r;if(t&&t.hasOwnProperty("userAgent")?r=t.userAgent:r=Jit(),typeof r!="string")return!0;var n=Kit({ua:{headers:{"user-agent":r}},tablet:!0,featureDetect:!1});if(!n)for(var i=r.split(" "),a=1;a-1;s--){var l=i[s];if(l.substr(0,8)==="Version/"){var u=l.substr(8).split(".")[0];if(Yit(u)&&(u=+u),u>=13)return!0}}}return n};function Jit(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var Lie=ye((Bir,Cie)=>{"use strict";var $it=Oa();Cie.exports=function(t,r,n){var i=t.selectAll("g."+n.replace(/\s/g,".")).data(r,function(o){return o[0].trace.uid});i.exit().remove(),i.enter().append("g").attr("class",n),i.order();var a=t.classed("rangeplot")?"nodeRangePlot3":"node3";return i.each(function(o){o[0][a]=$it.select(this)}),i}});var Iie=ye((Nir,Pie)=>{"use strict";var Qit=qa();Pie.exports=function(t,r){for(var n=t._context.locale,i=0;i<2;i++){for(var a=t._context.locales,o=0;o<2;o++){var s=(a[n]||{}).dictionary;if(s){var l=s[r];if(l)return l}a=Qit.localeRegistry}var u=n.split("-")[0];if(u===n)break;n=u}return r}});var KO=ye((Uir,Rie)=>{"use strict";Rie.exports=function(t){for(var r={},n=[],i=0,a=0;a{"use strict";Die.exports=function(t){for(var r=rnt(t)?tnt:ent,n=[],i=0;i{"use strict";zie.exports=function(t,r){if(!r)return t;var n=1/Math.abs(r),i=n>1?(n*t+n*r)/n:t+r,a=String(i).length;if(a>16){var o=String(r).length,s=String(t).length;if(a>=s+o){var l=parseFloat(i).toPrecision(12);l.indexOf("e+")===-1&&(i=+l)}}return i}});var Bie=ye((Hir,qie)=>{"use strict";var int=Eo(),nnt=fs().BADNUM,ant=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;qie.exports=function(t){return typeof t=="string"&&(t=t.replace(ant,"")),int(t)?Number(t):nnt}});var Dr=ye((jir,$ie)=>{"use strict";var XS=Oa(),ont=t3().utcFormat,snt=bO().format,jie=Eo(),Wie=fs(),Xie=Wie.FP_SAFE,lnt=-Xie,Nie=Wie.BADNUM,Mi=$ie.exports={};Mi.adjustFormat=function(t){return!t||/^\d[.]\df/.test(t)||/[.]\d%/.test(t)?t:t==="0.f"?"~f":/^\d%/.test(t)?"~%":/^\ds/.test(t)?"~s":!/^[~,.0$]/.test(t)&&/[&fps]/.test(t)?"~"+t:t};var Uie={};Mi.warnBadFormat=function(e){var t=String(e);Uie[t]||(Uie[t]=1,Mi.warn('encountered bad format: "'+t+'"'))};Mi.noFormat=function(e){return String(e)};Mi.numberFormat=function(e){var t;try{t=snt(Mi.adjustFormat(e))}catch(r){return Mi.warnBadFormat(e),Mi.noFormat}return t};Mi.nestedProperty=LS();Mi.keyedContainer=Ree();Mi.relativeAttr=Fee();Mi.isPlainObject=my();Mi.toLogRange=m6();Mi.relinkPrivateKeys=Bee();var K1=vv();Mi.isArrayBuffer=K1.isArrayBuffer;Mi.isTypedArray=K1.isTypedArray;Mi.isArrayOrTypedArray=K1.isArrayOrTypedArray;Mi.isArray1D=K1.isArray1D;Mi.ensureArray=K1.ensureArray;Mi.concat=K1.concat;Mi.maxRowLength=K1.maxRowLength;Mi.minRowLength=K1.minRowLength;var Zie=i3();Mi.mod=Zie.mod;Mi.modHalf=Zie.modHalf;var J1=nte();Mi.valObjectMeta=J1.valObjectMeta;Mi.coerce=J1.coerce;Mi.coerce2=J1.coerce2;Mi.coerceFont=J1.coerceFont;Mi.coercePattern=J1.coercePattern;Mi.coerceHoverinfo=J1.coerceHoverinfo;Mi.coerceSelectionMarkerOpacity=J1.coerceSelectionMarkerOpacity;Mi.validate=J1.validate;var jp=cie();Mi.dateTime2ms=jp.dateTime2ms;Mi.isDateTime=jp.isDateTime;Mi.ms2DateTime=jp.ms2DateTime;Mi.ms2DateTimeLocal=jp.ms2DateTimeLocal;Mi.cleanDate=jp.cleanDate;Mi.isJSDate=jp.isJSDate;Mi.formatDate=jp.formatDate;Mi.incrementMonth=jp.incrementMonth;Mi.dateTick0=jp.dateTick0;Mi.dfltRange=jp.dfltRange;Mi.findExactDates=jp.findExactDates;Mi.MIN_MS=jp.MIN_MS;Mi.MAX_MS=jp.MAX_MS;var vb=R6();Mi.findBin=vb.findBin;Mi.sorterAsc=vb.sorterAsc;Mi.sorterDes=vb.sorterDes;Mi.distinctVals=vb.distinctVals;Mi.roundUp=vb.roundUp;Mi.sort=vb.sort;Mi.findIndexOfMin=vb.findIndexOfMin;Mi.sortObjectKeys=Z1();var wy=die();Mi.aggNums=wy.aggNums;Mi.len=wy.len;Mi.mean=wy.mean;Mi.geometricMean=wy.geometricMean;Mi.median=wy.median;Mi.midRange=wy.midRange;Mi.variance=wy.variance;Mi.stdev=wy.stdev;Mi.interp=wy.interp;var _g=T6();Mi.init2dArray=_g.init2dArray;Mi.transposeRagged=_g.transposeRagged;Mi.dot=_g.dot;Mi.translationMatrix=_g.translationMatrix;Mi.rotationMatrix=_g.rotationMatrix;Mi.rotationXYMatrix=_g.rotationXYMatrix;Mi.apply3DTransform=_g.apply3DTransform;Mi.apply2DTransform=_g.apply2DTransform;Mi.apply2DTransform2=_g.apply2DTransform2;Mi.convertCssMatrix=_g.convertCssMatrix;Mi.inverseTransformMatrix=_g.inverseTransformMatrix;var vm=yie();Mi.deg2rad=vm.deg2rad;Mi.rad2deg=vm.rad2deg;Mi.angleDelta=vm.angleDelta;Mi.angleDist=vm.angleDist;Mi.isFullCircle=vm.isFullCircle;Mi.isAngleInsideSector=vm.isAngleInsideSector;Mi.isPtInsideSector=vm.isPtInsideSector;Mi.pathArc=vm.pathArc;Mi.pathSector=vm.pathSector;Mi.pathAnnulus=vm.pathAnnulus;var p3=_ie();Mi.isLeftAnchor=p3.isLeftAnchor;Mi.isCenterAnchor=p3.isCenterAnchor;Mi.isRightAnchor=p3.isRightAnchor;Mi.isTopAnchor=p3.isTopAnchor;Mi.isMiddleAnchor=p3.isMiddleAnchor;Mi.isBottomAnchor=p3.isBottomAnchor;var g3=wie();Mi.segmentsIntersect=g3.segmentsIntersect;Mi.segmentDistance=g3.segmentDistance;Mi.getTextLocation=g3.getTextLocation;Mi.clearLocationCache=g3.clearLocationCache;Mi.getVisibleSegment=g3.getVisibleSegment;Mi.findPointOnPath=g3.findPointOnPath;var N6=Ao();Mi.extendFlat=N6.extendFlat;Mi.extendDeep=N6.extendDeep;Mi.extendDeepAll=N6.extendDeepAll;Mi.extendDeepNoArrays=N6.extendDeepNoArrays;var JO=G1();Mi.log=JO.log;Mi.warn=JO.warn;Mi.error=JO.error;var unt=a3();Mi.counterRegex=unt.counter;var $O=z6();Mi.throttle=$O.throttle;Mi.throttleDone=$O.done;Mi.clearThrottle=$O.clear;var xg=BS();Mi.getGraphDiv=xg.getGraphDiv;Mi.isPlotDiv=xg.isPlotDiv;Mi.removeElement=xg.removeElement;Mi.addStyleRule=xg.addStyleRule;Mi.addRelatedStyleRule=xg.addRelatedStyleRule;Mi.deleteRelatedStyleRule=xg.deleteRelatedStyleRule;Mi.setStyleOnHover=xg.setStyleOnHover;Mi.getFullTransformMatrix=xg.getFullTransformMatrix;Mi.getElementTransformMatrix=xg.getElementTransformMatrix;Mi.getElementAndAncestors=xg.getElementAndAncestors;Mi.equalDomRects=xg.equalDomRects;Mi.clearResponsive=Sie();Mi.preserveDrawingBuffer=kie();Mi.makeTraceGroups=Lie();Mi._=Iie();Mi.notifier=IO();Mi.filterUnique=KO();Mi.filterVisible=Fie();Mi.pushUnique=FO();Mi.increment=Oie();Mi.cleanNumber=Bie();Mi.ensureNumber=function(t){return jie(t)?(t=Number(t),t>Xie||t=t?!1:jie(e)&&e>=0&&e%1===0};Mi.noop=w6();Mi.identity=GS();Mi.repeat=function(e,t){for(var r=new Array(t),n=0;nr?Math.max(r,Math.min(t,e)):Math.max(t,Math.min(r,e))};Mi.bBoxIntersect=function(e,t,r){return r=r||0,e.left<=t.right+r&&t.left<=e.right+r&&e.top<=t.bottom+r&&t.top<=e.bottom+r};Mi.simpleMap=function(e,t,r,n,i){for(var a=e.length,o=new Array(a),s=0;s=Math.pow(2,r)?i>10?(Mi.warn("randstr failed uniqueness"),o):e(t,r,n,(i||0)+1):o};Mi.OptionControl=function(e,t){e||(e={}),t||(t="opt");var r={};return r.optionList=[],r._newoption=function(n){n[t]=e,r[n.name]=n,r.optionList.push(n)},r["_"+t]=e,r};Mi.smooth=function(e,t){if(t=Math.round(t)||0,t<2)return e;var r=e.length,n=2*r,i=2*t-1,a=new Array(i),o=new Array(r),s,l,u,c;for(s=0;s=n&&(u-=n*Math.floor(u/n)),u<0?u=-1-u:u>=r&&(u=n-1-u),c+=e[u]*a[l];o[s]=c}return o};Mi.syncOrAsync=function(e,t,r){var n,i;function a(){return Mi.syncOrAsync(e,t,r)}for(;e.length;)if(i=e.splice(0,1)[0],n=i(t),n&&n.then)return n.then(a);return r&&r(t)};Mi.stripTrailingSlash=function(e){return e.substr(-1)==="/"?e.substr(0,e.length-1):e};Mi.noneOrAll=function(e,t,r){if(e){var n=!1,i=!0,a,o;for(a=0;a0?i:0})};Mi.fillArray=function(e,t,r,n){if(n=n||Mi.identity,Mi.isArrayOrTypedArray(e))for(var i=0;ihnt.test(window.navigator.userAgent);var dnt=/Firefox\/(\d+)\.\d+/;Mi.getFirefoxVersion=function(){var e=dnt.exec(window.navigator.userAgent);if(e&&e.length===2){var t=parseInt(e[1]);if(!isNaN(t))return t}return null};Mi.isD3Selection=function(e){return e instanceof XS.selection};Mi.ensureSingle=function(e,t,r,n){var i=e.select(t+(r?"."+r:""));if(i.size())return i;var a=e.append(t);return r&&a.classed(r,!0),n&&a.call(n),a};Mi.ensureSingleById=function(e,t,r,n){var i=e.select(t+"#"+r);if(i.size())return i;var a=e.append(t).attr("id",r);return n&&a.call(n),a};Mi.objectFromPath=function(e,t){for(var r=e.split("."),n,i=n={},a=0;a1?i+o[1]:"";if(a&&(o.length>1||s.length>4||r))for(;n.test(s);)s=s.replace(n,"$1"+a+"$2");return s+l};Mi.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var Jie=/^\w*$/;Mi.templateString=function(e,t){var r={};return e.replace(Mi.TEMPLATE_STRING_REGEX,function(n,i){var a;return Jie.test(i)?a=t[i]:(r[i]=r[i]||Mi.nestedProperty(t,i).get,a=r[i](!0)),a!==void 0?a:""})};var gnt={max:10,count:0,name:"hovertemplate"};Mi.hovertemplateString=e=>QO(q1(mg({},e),{opts:gnt}));var mnt={max:10,count:0,name:"texttemplate"};Mi.texttemplateString=e=>QO(q1(mg({},e),{opts:mnt}));var ynt=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function _nt(e){var t=e.match(ynt);return t?{key:t[1],op:t[2],number:Number(t[3])}:{key:e,op:null,number:null}}var xnt={max:10,count:0,name:"texttemplate",parseMultDiv:!0};Mi.texttemplateStringForShapes=e=>QO(q1(mg({},e),{opts:xnt}));var Vie=/^[:|\|]/;function QO({data:e=[],locale:t,fallback:r,labels:n={},opts:i,template:a}){return a.replace(Mi.TEMPLATE_STRING_REGEX,(o,s,l)=>{let u=["xother","yother"].includes(s),c=["_xother","_yother"].includes(s),f=["_xother_","_yother_"].includes(s),h=["xother_","yother_"].includes(s),d=u||c||h||f;(c||f)&&(s=s.substring(1)),(h||f)&&(s=s.substring(0,s.length-1));let v=null,_=null;if(i.parseMultDiv){var b=_nt(s);s=b.key,v=b.op,_=b.number}let p;if(d){if(n[s]===void 0)return"";p=n[s]}else for(let L of e)if(L){if(L.hasOwnProperty(s)){p=L[s];break}if(Jie.test(s)||(p=Mi.nestedProperty(L,s).get(!0)),p!==void 0)break}if(p===void 0){let{count:L,max:x,name:C}=i,M=r===!1?o:r;return L=B6&&o<=Gie,u=s>=B6&&s<=Gie;if(l&&(n=10*n+o-B6),u&&(i=10*i+s-B6),!l||!u){if(n!==i)return n-i;if(o!==s)return o-s}}return i-n};var v3=2e9;Mi.seedPseudoRandom=function(){v3=2e9};Mi.pseudoRandom=function(){var e=v3;return v3=(69069*v3+1)%4294967296,Math.abs(v3-e)<429496729?Mi.pseudoRandom():v3/4294967296};Mi.fillText=function(e,t,r){var n=Array.isArray(r)?function(o){r.push(o)}:function(o){r.text=o},i=Mi.extractOption(e,t,"htx","hovertext");if(Mi.isValidTextValue(i))return n(i);var a=Mi.extractOption(e,t,"tx","text");if(Mi.isValidTextValue(a))return n(a)};Mi.isValidTextValue=function(e){return e||e===0};Mi.formatPercent=function(e,t){t=t||0;for(var r=(Math.round(100*e*Math.pow(10,t))*Math.pow(.1,t)).toFixed(t)+"%",n=0;n1&&(u=1):u=0,Mi.strTranslate(i-u*(r+o),a-u*(n+s))+Mi.strScale(u)+(l?"rotate("+l+(t?"":" "+r+" "+n)+")":"")};Mi.setTransormAndDisplay=function(e,t){e.attr("transform",Mi.getTextTransform(t)),e.style("display",t.scale?null:"none")};Mi.ensureUniformFontSize=function(e,t){var r=Mi.extendFlat({},t);return r.size=Math.max(t.size,e._fullLayout.uniformtext.minsize||0),r};Mi.join2=function(e,t,r){var n=e.length;return n>1?e.slice(0,-1).join(t)+r+e[n-1]:e.join(t)};Mi.bigFont=function(e){return Math.round(1.2*e)};var Hie=Mi.getFirefoxVersion(),bnt=Hie!==null&&Hie<86;Mi.getPositionFromD3Event=function(){return bnt?[XS.event.layerX,XS.event.layerY]:[XS.event.offsetX,XS.event.offsetY]}});var tne=ye(()=>{"use strict";var wnt=Dr(),Qie={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(eq in Qie)ene=eq.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),wnt.addStyleRule(ene,Qie[eq]);var ene,eq});var tq=ye((Yir,rne)=>{rne.exports=!0});var iq=ye((Kir,ine)=>{"use strict";var Tnt=tq(),rq;typeof window.matchMedia=="function"?rq=!window.matchMedia("(hover: none)").matches:rq=Tnt;ine.exports=rq});var pb=ye((Jir,nq)=>{"use strict";var m3=typeof Reflect=="object"?Reflect:null,nne=m3&&typeof m3.apply=="function"?m3.apply:function(t,r,n){return Function.prototype.apply.call(t,r,n)},U6;m3&&typeof m3.ownKeys=="function"?U6=m3.ownKeys:Object.getOwnPropertySymbols?U6=function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:U6=function(t){return Object.getOwnPropertyNames(t)};function Ant(e){console&&console.warn&&console.warn(e)}var one=Number.isNaN||function(t){return t!==t};function Jc(){Jc.init.call(this)}nq.exports=Jc;nq.exports.once=knt;Jc.EventEmitter=Jc;Jc.prototype._events=void 0;Jc.prototype._eventsCount=0;Jc.prototype._maxListeners=void 0;var ane=10;function V6(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(Jc,"defaultMaxListeners",{enumerable:!0,get:function(){return ane},set:function(e){if(typeof e!="number"||e<0||one(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");ane=e}});Jc.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};Jc.prototype.setMaxListeners=function(t){if(typeof t!="number"||t<0||one(t))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+t+".");return this._maxListeners=t,this};function sne(e){return e._maxListeners===void 0?Jc.defaultMaxListeners:e._maxListeners}Jc.prototype.getMaxListeners=function(){return sne(this)};Jc.prototype.emit=function(t){for(var r=[],n=1;n0&&(o=r[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var l=a[t];if(l===void 0)return!1;if(typeof l=="function")nne(l,this,r);else for(var u=l.length,c=hne(l,u),n=0;n0&&o.length>i&&!o.warned){o.warned=!0;var s=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");s.name="MaxListenersExceededWarning",s.emitter=e,s.type=t,s.count=o.length,Ant(s)}return e}Jc.prototype.addListener=function(t,r){return lne(this,t,r,!1)};Jc.prototype.on=Jc.prototype.addListener;Jc.prototype.prependListener=function(t,r){return lne(this,t,r,!0)};function Snt(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function une(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=Snt.bind(n);return i.listener=r,n.wrapFn=i,i}Jc.prototype.once=function(t,r){return V6(r),this.on(t,une(this,t,r)),this};Jc.prototype.prependOnceListener=function(t,r){return V6(r),this.prependListener(t,une(this,t,r)),this};Jc.prototype.removeListener=function(t,r){var n,i,a,o,s;if(V6(r),i=this._events,i===void 0)return this;if(n=i[t],n===void 0)return this;if(n===r||n.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete i[t],i.removeListener&&this.emit("removeListener",t,n.listener||r));else if(typeof n!="function"){for(a=-1,o=n.length-1;o>=0;o--)if(n[o]===r||n[o].listener===r){s=n[o].listener,a=o;break}if(a<0)return this;a===0?n.shift():Mnt(n,a),n.length===1&&(i[t]=n[0]),i.removeListener!==void 0&&this.emit("removeListener",t,s||r)}return this};Jc.prototype.off=Jc.prototype.removeListener;Jc.prototype.removeAllListeners=function(t){var r,n,i;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[t]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[t]),this;if(arguments.length===0){var a=Object.keys(n),o;for(i=0;i=0;i--)this.removeListener(t,r[i]);return this};function cne(e,t,r){var n=e._events;if(n===void 0)return[];var i=n[t];return i===void 0?[]:typeof i=="function"?r?[i.listener||i]:[i]:r?Ent(i):hne(i,i.length)}Jc.prototype.listeners=function(t){return cne(this,t,!0)};Jc.prototype.rawListeners=function(t){return cne(this,t,!1)};Jc.listenerCount=function(e,t){return typeof e.listenerCount=="function"?e.listenerCount(t):fne.call(e,t)};Jc.prototype.listenerCount=fne;function fne(e){var t=this._events;if(t!==void 0){var r=t[e];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}Jc.prototype.eventNames=function(){return this._eventsCount>0?U6(this._events):[]};function hne(e,t){for(var r=new Array(t),n=0;n{"use strict";var aq=pb().EventEmitter,Lnt={init:function(e){if(e._ev instanceof aq)return e;var t=new aq,r=new aq;return e._ev=t,e._internalEv=r,e.on=t.on.bind(t),e.once=t.once.bind(t),e.removeListener=t.removeListener.bind(t),e.removeAllListeners=t.removeAllListeners.bind(t),e._internalOn=r.on.bind(r),e._internalOnce=r.once.bind(r),e._removeInternalListener=r.removeListener.bind(r),e._removeAllInternalListeners=r.removeAllListeners.bind(r),e.emit=function(n,i){t.emit(n,i),r.emit(n,i)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,t,r){var n,i=e._ev;if(!i)return;var a=i._events[t];if(!a)return;function o(l){if(l.listener){if(i.removeListener(t,l.listener),!l.fired)return l.fired=!0,l.listener.apply(i,[r])}else return l.apply(i,[r])}a=Array.isArray(a)?a:[a];var s;for(s=0;s{"use strict";var pne=Dr(),Pnt=cb().dfltConfig;function Int(e,t){for(var r=[],n,i=0;iPnt.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};Ty.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};Ty.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};Ty.undo=function(t){var r,n;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;n=t.undoQueue.queue.length)){for(r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;n{"use strict";yne.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var b3=ye(Jh=>{"use strict";var _0=qa(),ZS=Dr(),H6=Gl(),sq=u3(),Rnt=oq(),Dnt=NS(),Fnt=cb().configAttributes,_ne=mc(),bg=ZS.extendDeepAll,_3=ZS.isPlainObject,znt=ZS.isArrayOrTypedArray,j6=ZS.nestedProperty,Ont=ZS.valObjectMeta,lq="_isSubplotObj",W6="_isLinkedToArray",qnt="_arrayAttrRegexps",bne="_deprecated",uq=[lq,W6,qnt,bne];Jh.IS_SUBPLOT_OBJ=lq;Jh.IS_LINKED_TO_ARRAY=W6;Jh.DEPRECATED=bne;Jh.UNDERSCORE_ATTRS=uq;Jh.get=function(){var e={};return _0.allTypes.forEach(function(t){e[t]=Nnt(t)}),{defs:{valObjects:Ont,metaKeys:uq.concat(["description","role","editType","impliedEdits"]),editType:{traces:_ne.traces,layout:_ne.layout},impliedEdits:{}},traces:e,layout:Unt(),frames:Vnt(),animation:x3(Dnt),config:x3(Fnt)}};Jh.crawl=function(e,t,r,n){var i=r||0;n=n||"",Object.keys(e).forEach(function(a){var o=e[a];if(uq.indexOf(a)===-1){var s=(n?n+".":"")+a;t(o,a,e,i,s),!Jh.isValObject(o)&&_3(o)&&a!=="impliedEdits"&&Jh.crawl(o,t,i+1,s)}})};Jh.isValObject=function(e){return e&&e.valType!==void 0};Jh.findArrayAttributes=function(e){var t=[],r=[],n=[],i,a;function o(l,u,c,f){r=r.slice(0,f).concat([u]),n=n.slice(0,f).concat([l&&l._isLinkedToArray]);var h=l&&(l.valType==="data_array"||l.arrayOk===!0)&&!(r[f-1]==="colorbar"&&(u==="ticktext"||u==="tickvals"));h&&s(i,0,"")}function s(l,u,c){var f=l[r[u]],h=c+r[u];if(u===r.length-1)znt(f)&&t.push(a+h);else if(n[u]){if(Array.isArray(f))for(var d=0;d=a.length)return!1;if(e.dimensions===2){if(r++,t.length===r)return e;var o=t[r];if(!G6(o))return!1;e=a[i][o]}else e=a[i]}else e=a}}return e}function G6(e){return e===Math.round(e)&&e>=0}function Nnt(e){var t,r;t=_0.modules[e]._module,r=t.basePlotModule;var n={};n.type=null;var i=bg({},H6),a=bg({},t.attributes);Jh.crawl(a,function(l,u,c,f,h){j6(i,h).set(void 0),l===void 0&&j6(a,h).set(void 0)}),bg(n,i),_0.traceIs(e,"noOpacity")&&delete n.opacity,_0.traceIs(e,"showLegend")||(delete n.showlegend,delete n.legendgroup),_0.traceIs(e,"noHover")&&(delete n.hoverinfo,delete n.hoverlabel),t.selectPoints||delete n.selectedpoints,bg(n,a),r.attributes&&bg(n,r.attributes),n.type=e;var o={meta:t.meta||{},categories:t.categories||{},animatable:!!t.animatable,type:e,attributes:x3(n)};if(t.layoutAttributes){var s={};bg(s,t.layoutAttributes),o.layoutAttributes=x3(s)}return t.animatable||Jh.crawl(o,function(l){Jh.isValObject(l)&&"anim"in l&&delete l.anim}),o}function Unt(){var e={},t,r;bg(e,sq);for(t in _0.subplotsRegistry)if(r=_0.subplotsRegistry[t],!!r.layoutAttributes)if(Array.isArray(r.attr))for(var n=0;n{"use strict";var w3=Dr(),Xnt=Gl(),$1="templateitemname",cq={name:{valType:"string",editType:"none"}};cq[$1]={valType:"string",editType:"calc"};gb.templatedArray=function(e,t){return t._isLinkedToArray=e,t.name=cq.name,t[$1]=cq[$1],t};gb.traceTemplater=function(e){var t={},r,n;for(r in e)n=e[r],Array.isArray(n)&&n.length&&(t[r]=0);function i(a){r=w3.coerce(a,{},Xnt,"type");var o={type:r,_template:null};if(r in t){n=e[r];var s=t[r]%n.length;t[r]++,o._template=n[s]}return o}return{newTrace:i}};gb.newContainer=function(e,t,r){var n=e._template,i=n&&(n[t]||r&&n[r]);w3.isPlainObject(i)||(i=null);var a=e[t]={_template:i};return a};gb.arrayTemplater=function(e,t,r){var n=e._template,i=n&&n[Ane(t)],a=n&&n[t];(!Array.isArray(a)||!a.length)&&(a=[]);var o={};function s(u){var c={name:u.name,_input:u},f=c[$1]=u[$1];if(!Tne(f))return c._template=i,c;for(var h=0;h=n&&(r._input||{})._templateitemname;a&&(i=n);var o=t+"["+i+"]",s;function l(){s={},a&&(s[o]={},s[o][$1]=a)}l();function u(d,v){s[d]=v}function c(d,v){a?w3.nestedProperty(s[o],d).set(v):s[o+"."+d]=v}function f(){var d=s;return l(),d}function h(d,v){d&&c(d,v);var _=f();for(var b in _)w3.nestedProperty(e,b).set(_[b])}return{modifyBase:u,modifyItem:c,getUpdateObj:f,applyUpdate:h}}});var hd=ye((inr,Sne)=>{"use strict";var YS=a3().counter;Sne.exports={idRegex:{x:YS("x","( domain)?"),y:YS("y","( domain)?")},attrRegex:YS("[xy]axis"),xAxisMatch:YS("xaxis"),yAxisMatch:YS("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var hf=ye(Ap=>{"use strict";var Znt=qa(),fq=hd();Ap.id2name=function(t){if(!(typeof t!="string"||!t.match(fq.AX_ID_PATTERN))){var r=t.split(" ")[0].substr(1);return r==="1"&&(r=""),t.charAt(0)+"axis"+r}};Ap.name2id=function(t){if(t.match(fq.AX_NAME_PATTERN)){var r=t.substr(5);return r==="1"&&(r=""),t.charAt(0)+r}};Ap.cleanId=function(t,r,n){var i=/( domain)$/.test(t);if(!(typeof t!="string"||!t.match(fq.AX_ID_PATTERN))&&!(r&&t.charAt(0)!==r)&&!(i&&!n)){var a=t.split(" ")[0].substr(1).replace(/^0+/,"");return a==="1"&&(a=""),t.charAt(0)+a+(i&&n?" domain":"")}};Ap.list=function(e,t,r){var n=e._fullLayout;if(!n)return[];var i=Ap.listIds(e,t),a=new Array(i.length),o;for(o=0;on?1:-1:+(e.substr(1)||1)-+(t.substr(1)||1)};Ap.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function Mne(e,t){if(t&&t.length){for(var r=0;r{"use strict";function Ynt(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".outline-controllers").remove()}function Knt(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}Ene.exports={clearOutlineControllers:Ynt,clearOutline:Knt}});var X6=ye((onr,kne)=>{"use strict";kne.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var Id=ye(Y6=>{"use strict";var Z6=qa(),snr=hd().SUBPLOT_PATTERN;Y6.getSubplotCalcData=function(e,t,r){var n=Z6.subplotsRegistry[t];if(!n)return[];for(var i=n.attr,a=[],o=0;o{"use strict";var Jnt=qa(),T3=Dr();mb.manageCommandObserver=function(e,t,r,n){var i={},a=!0;t&&t._commandObserver&&(i=t._commandObserver),i.cache||(i.cache={}),i.lookupTable={};var o=mb.hasSimpleAPICommandBindings(e,r,i.lookupTable);if(t&&t._commandObserver){if(o)return i;if(t._commandObserver.remove)return t._commandObserver.remove(),t._commandObserver=null,i}if(o){Cne(e,o,i.cache),i.check=function(){if(a){var c=Cne(e,o,i.cache);return c.changed&&n&&i.lookupTable[c.value]!==void 0&&(i.disable(),Promise.resolve(n({value:c.value,type:o.type,prop:o.prop,traces:o.traces,index:i.lookupTable[c.value]})).then(i.enable,i.enable)),c.changed}};for(var s=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],l=0;l0?".":"")+i;T3.isPlainObject(a)?hq(a,t,o,n+1):t(o,i,a)}})}});var Mc=ye((cnr,Wne)=>{"use strict";var Bne=Oa(),Qnt=t3().timeFormatLocale,eat=bO().formatLocale,KS=Eo(),tat=wO(),Xl=qa(),Nne=b3(),rat=vl(),ja=Dr(),Une=ka(),Rne=fs().BADNUM,Sp=hf(),iat=Q1().clearOutline,nat=X6(),dq=NS(),aat=oq(),oat=Id().getModuleCalcData,Dne=ja.relinkPrivateKeys,yb=ja._,xa=Wne.exports={};ja.extendFlat(xa,Xl);xa.attributes=Gl();xa.attributes.type.values=xa.allTypes;xa.fontAttrs=ec();xa.layoutAttributes=u3();var J6=Ine();xa.executeAPICommand=J6.executeAPICommand;xa.computeAPICommandBindings=J6.computeAPICommandBindings;xa.manageCommandObserver=J6.manageCommandObserver;xa.hasSimpleAPICommandBindings=J6.hasSimpleAPICommandBindings;xa.redrawText=function(e){return e=ja.getGraphDiv(e),new Promise(function(t){setTimeout(function(){e._fullLayout&&(Xl.getComponentMethod("annotations","draw")(e),Xl.getComponentMethod("legend","draw")(e),Xl.getComponentMethod("colorbar","draw")(e),t(xa.previousPromises(e)))},300)})};xa.resize=function(e){e=ja.getGraphDiv(e);var t,r=new Promise(function(n,i){(!e||ja.isHidden(e))&&i(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(t=e._resolveResize),e._resolveResize=n,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||ja.isHidden(e)){n(e);return}delete e.layout.width,delete e.layout.height;var a=e.changed;e.autoplay=!0,Xl.call("relayout",e,{autosize:!0}).then(function(){e.changed=a,e._resolveResize===n&&(delete e._resolveResize,n(e))})},100)});return t&&t(r),r};xa.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};xa.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var t=e._fullLayout,r=ja.ensureSingle(t._paper,"text","js-plot-link-container",function(l){l.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:Une.defaultLine,"pointer-events":"all"}).each(function(){var u=Bne.select(this);u.append("tspan").classed("js-link-to-tool",!0),u.append("tspan").classed("js-link-spacer",!0),u.append("tspan").classed("js-sourcelinks",!0)})}),n=r.node(),i={y:t._paper.attr("height")-9};document.body.contains(n)&&n.getComputedTextLength()>=t.width-20?(i["text-anchor"]="start",i.x=5):(i["text-anchor"]="end",i.x=t._paper.attr("width")-7),r.attr(i);var a=r.select(".js-link-to-tool"),o=r.select(".js-link-spacer"),s=r.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&sat(e,a),o.text(a.text()&&s.text()?" - ":"")}};function sat(e,t){t.text("");var r=t.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)r.on("click",function(){xa.sendDataToCloud(e)});else{var n=window.location.pathname.split("/"),i=window.location.search;r.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+i})}}xa.sendDataToCloud=function(e){var t=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(t){e.emit("plotly_beforeexport");var r=Bne.select(e).append("div").attr("id","hiddenform").style("display","none"),n=r.append("form").attr({action:t+"/external",method:"post",target:"_blank"}),i=n.append("input").attr({type:"text",name:"data"});return i.node().value=xa.graphJson(e,!1,"keepdata"),n.node().submit(),r.remove(),e.emit("plotly_afterexport"),!1}};var lat=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],uat=["year","month","dayMonth","dayMonthYear"];xa.supplyDefaults=function(e,t){var r=t&&t.skipUpdateCalc,n=e._fullLayout||{};if(n._skipDefaults){delete n._skipDefaults;return}var i=e._fullLayout={},a=e.layout||{},o=e._fullData||[],s=e._fullData=[],l=e.data||[],u=e.calcdata||[],c=e._context||{},f;e._transitionData||xa.createTransitionData(e),i._dfltTitle={plot:yb(e,"Click to enter Plot title"),subtitle:yb(e,"Click to enter Plot subtitle"),x:yb(e,"Click to enter X axis title"),y:yb(e,"Click to enter Y axis title"),colorbar:yb(e,"Click to enter Colorscale title"),annotation:yb(e,"new text")},i._traceWord=yb(e,"trace");var h=Fne(e,lat);if(i._mapboxAccessToken=c.mapboxAccessToken,n._initialAutoSizeIsDone){var d=n.width,v=n.height;xa.supplyLayoutGlobalDefaults(a,i,h),a.width||(i.width=d),a.height||(i.height=v),xa.sanitizeMargins(i)}else{xa.supplyLayoutGlobalDefaults(a,i,h);var _=!a.width||!a.height,b=i.autosize,p=c.autosizable,k=_&&(b||p);k?xa.plotAutoSize(e,a,i):_&&xa.sanitizeMargins(i),!b&&_&&(a.width=i.width,a.height=i.height)}i._d3locale=hat(h,i.separators),i._extraFormat=Fne(e,uat),i._initialAutoSizeIsDone=!0,i._dataLength=l.length,i._modules=[],i._visibleModules=[],i._basePlotModules=[];var E=i._subplots=fat(),S=i._splomAxes={x:{},y:{}},L=i._splomSubplots={};i._splomGridDflt={},i._scatterStackOpts={},i._firstScatter={},i._alignmentOpts={},i._colorAxes={},i._requestRangeslider={},i._traceUids=cat(o,l),xa.supplyDataDefaults(l,s,a,i);var x=Object.keys(S.x),C=Object.keys(S.y);if(x.length>1&&C.length>1){for(Xl.getComponentMethod("grid","sizeDefaults")(a,i),f=0;f15&&C.length>15&&i.shapes.length===0&&i.images.length===0,xa.linkSubplots(s,i,o,n),xa.cleanPlot(s,i,o,n);var z=!!(n._has&&n._has("cartesian")),O=!!(i._has&&i._has("cartesian")),V=z,G=O;V&&!G?n._bgLayer.remove():G&&!V&&(i._shouldCreateBgLayer=!0),n._zoomlayer&&!e._dragging&&iat({_fullLayout:n}),dat(s,i),Dne(i,n),Xl.getComponentMethod("colorscale","crossTraceDefaults")(s,i),i._preGUI||(i._preGUI={}),i._tracePreGUI||(i._tracePreGUI={});var Z=i._tracePreGUI,H={},N;for(N in Z)H[N]="old";for(f=0;f0){var c=1-2*a;o=Math.round(c*o),s=Math.round(c*s)}}var f=xa.layoutAttributes.width.min,h=xa.layoutAttributes.height.min;o1,v=!r.height&&Math.abs(n.height-s)>1;(v||d)&&(d&&(n.width=o),v&&(n.height=s)),t._initialAutoSize||(t._initialAutoSize={width:o,height:s}),xa.sanitizeMargins(n)};xa.supplyLayoutModuleDefaults=function(e,t,r,n){var i=Xl.componentsRegistry,a=t._basePlotModules,o,s,l,u=Xl.subplotsRegistry.cartesian;for(o in i)l=i[o],l.includeBasePlot&&l.includeBasePlot(e,t);a.length||a.push(u),t._has("cartesian")&&(Xl.getComponentMethod("grid","contentDefaults")(e,t),u.finalizeSubplots(e,t));for(var c in t._subplots)t._subplots[c].sort(ja.subplotSort);for(s=0;s1&&(r.l/=b,r.r/=b)}if(h){var p=(r.t+r.b)/h;p>1&&(r.t/=p,r.b/=p)}var k=r.xl!==void 0?r.xl:r.x,E=r.xr!==void 0?r.xr:r.x,S=r.yt!==void 0?r.yt:r.y,L=r.yb!==void 0?r.yb:r.y;d[t]={l:{val:k,size:r.l+_},r:{val:E,size:r.r+_},b:{val:L,size:r.b+_},t:{val:S,size:r.t+_}},v[t]=1}if(!n._replotting)return xa.doAutoMargin(e)}};function pat(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var t=Sp.list(e,"",!0);for(var r in t)if(t[r].autoshift||t[r].shift)return!0;return!1}xa.doAutoMargin=function(e){var t=e._fullLayout,r=t.width,n=t.height;t._size||(t._size={}),Vne(t);var i=t._size,a=t.margin,o={t:0,b:0,l:0,r:0},s=ja.extendFlat({},i),l=a.l,u=a.r,c=a.t,f=a.b,h=t._pushmargin,d=t._pushmarginIds,v=t.minreducedwidth,_=t.minreducedheight;if(a.autoexpand!==!1){for(var b in h)d[b]||delete h[b];var p=e._fullLayout._reservedMargin;for(var k in p)for(var E in p[k]){var S=p[k][E];o[E]=Math.max(o[E],S)}h.base={l:{val:0,size:l},r:{val:1,size:u},t:{val:1,size:c},b:{val:0,size:f}};for(var L in o){var x=0;for(var C in h)C!=="base"&&KS(h[C][L].size)&&(x=h[C][L].size>x?h[C][L].size:x);var M=Math.max(0,a[L]-x);o[L]=Math.max(0,o[L]-M)}for(var g in h){var P=h[g].l||{},T=h[g].b||{},z=P.val,O=P.size,V=T.val,G=T.size,Z=r-o.r-o.l,H=n-o.t-o.b;for(var N in h){if(KS(O)&&h[N].r){var j=h[N].r.val,re=h[N].r.size;if(j>z){var oe=(O*j+(re-Z)*z)/(j-z),_e=(re*(1-z)+(O-Z)*(1-j))/(j-z);oe+_e>l+u&&(l=oe,u=_e)}}if(KS(G)&&h[N].t){var Ee=h[N].t.val,Ce=h[N].t.size;if(Ee>V){var me=(G*Ee+(Ce-H)*V)/(Ee-V),ie=(Ce*(1-V)+(G-H)*(1-Ee))/(Ee-V);me+ie>f+c&&(f=me,c=ie)}}}}}var Se=ja.constrain(r-a.l-a.r,Gne,v),Le=ja.constrain(n-a.t-a.b,Hne,_),Ae=Math.max(0,r-Se),Fe=Math.max(0,n-Le);if(Ae){var Pe=(l+u)/Ae;Pe>1&&(l/=Pe,u/=Pe)}if(Fe){var ge=(f+c)/Fe;ge>1&&(f/=ge,c/=ge)}if(i.l=Math.round(l)+o.l,i.r=Math.round(u)+o.r,i.t=Math.round(c)+o.t,i.b=Math.round(f)+o.b,i.p=Math.round(a.pad),i.w=Math.round(r)-i.l-i.r,i.h=Math.round(n)-i.t-i.b,!t._replotting&&(xa.didMarginChange(s,i)||pat(e))){"_redrawFromAutoMarginCount"in t?t._redrawFromAutoMarginCount++:t._redrawFromAutoMarginCount=1;var Re=3*(1+Object.keys(d).length);if(t._redrawFromAutoMarginCount1)return!0}return!1};xa.graphJson=function(e,t,r,n,i,a){(i&&t&&!e._fullData||i&&!t&&!e._fullLayout)&&xa.supplyDefaults(e);var o=i?e._fullData:e.data,s=i?e._fullLayout:e.layout,l=(e._transitionData||{})._frames;function u(h,d){if(typeof h=="function")return d?"_function_":null;if(ja.isPlainObject(h)){var v={},_;return Object.keys(h).sort().forEach(function(E){if(["_","["].indexOf(E.charAt(0))===-1){if(typeof h[E]=="function"){d&&(v[E]="_function");return}if(r==="keepdata"){if(E.substr(E.length-3)==="src")return}else if(r==="keepstream"){if(_=h[E+"src"],typeof _=="string"&&_.indexOf(":")>0&&!ja.isPlainObject(h.stream))return}else if(r!=="keepall"&&(_=h[E+"src"],typeof _=="string"&&_.indexOf(":")>0))return;v[E]=u(h[E],d)}}),v}var b=Array.isArray(h),p=ja.isTypedArray(h);if((b||p)&&h.dtype&&h.shape){var k=h.bdata;return u({dtype:h.dtype,shape:h.shape,bdata:ja.isArrayBuffer(k)?tat.encode(k):k},d)}return b?h.map(function(E){return u(E,d)}):p?ja.simpleMap(h,ja.identity):ja.isJSDate(h)?ja.ms2DateTimeLocal(+h):h}var c={data:(o||[]).map(function(h){var d=u(h);return t&&delete d.fit,d})};if(!t&&(c.layout=u(s),i)){var f=s._size;c.layout.computed={margin:{b:f.b,l:f.l,r:f.r,t:f.t}}}return l&&(c.frames=u(l)),a&&(c.config=u(e._context,!0)),n==="object"?c:JSON.stringify(c)};xa.modifyFrames=function(e,t){var r,n,i,a=e._transitionData._frames,o=e._transitionData._frameHash;for(r=0;r0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){n=!0}),r.redraw&&e._transitionData._interruptCallbacks.push(function(){return Xl.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var h=0,d=0;function v(){return h++,function(){d++,!n&&d===h&&s(f)}}r.runFn(v),setTimeout(v())})}function s(f){if(e._transitionData)return a(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(r.redraw)return Xl.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(f)}function l(){if(e._transitionData)return e._transitioning=!1,i(e._transitionData._interruptCallbacks)}var u=[xa.previousPromises,l,r.prepareFn,xa.rehover,xa.reselect,o],c=ja.syncOrAsync(u,e);return(!c||!c.then)&&(c=Promise.resolve()),c.then(function(){return e})}xa.doCalcdata=function(e,t){var r=Sp.list(e),n=e._fullData,i=e._fullLayout,a,o,s,l,u=new Array(n.length),c=(e.calcdata||[]).slice();for(e.calcdata=u,i._numBoxes=0,i._numViolins=0,i._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,i._piecolormap={},i._sunburstcolormap={},i._treemapcolormap={},i._iciclecolormap={},i._funnelareacolormap={},s=0;s=0;l--)if(L[l].enabled){a._indexToPoints=L[l]._indexToPoints;break}o&&o.calc&&(S=o.calc(e,a))}(!Array.isArray(S)||!S[0])&&(S=[{x:Rne,y:Rne}]),S[0].t||(S[0].t={}),S[0].trace=a,u[k]=S}}for(One(r,n,i),s=0;s{"use strict";_b.xmlns="http://www.w3.org/2000/xmlns/";_b.svg="http://www.w3.org/2000/svg";_b.xlink="http://www.w3.org/1999/xlink";_b.svgAttrs={xmlns:_b.svg,"xmlns:xlink":_b.xlink}});var $h=ye((hnr,Xne)=>{"use strict";Xne.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var ru=ye(x0=>{"use strict";var Ph=Oa(),Ay=Dr(),_at=Ay.strTranslate,vq=Wp(),xat=$h().LINE_SPACING,bat=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;x0.convertToTspans=function(e,t,r){var n=e.text(),i=!e.attr("data-notex")&&t&&t._context.typesetMath&&typeof MathJax!="undefined"&&n.match(bat),a=Ph.select(e.node().parentNode);if(a.empty())return;var o=e.attr("class")?e.attr("class").split(" ")[0]:"text";o+="-math",a.selectAll("svg."+o).remove(),a.selectAll("g."+o+"-group").remove(),e.style("display",null).attr({"data-unformatted":n,"data-math":"N"});function s(){a.empty()||(o=e.attr("class")+"-math",a.select("svg."+o).remove()),e.text("").style("white-space","pre");var l=Dat(e.node(),n);l&&e.style("pointer-events","all"),x0.positionText(e),r&&r.call(e)}return i?(t&&t._promises||[]).push(new Promise(function(l){e.style("display","none");var u=parseInt(e.node().style.fontSize,10),c={fontSize:u};Sat(i[2],c,function(f,h,d){a.selectAll("svg."+o).remove(),a.selectAll("g."+o+"-group").remove();var v=f&&f.select("svg");if(!v||!v.node()){s(),l();return}var _=a.append("g").classed(o+"-group",!0).attr({"pointer-events":"none","data-unformatted":n,"data-math":"Y"});_.node().appendChild(v.node()),h&&h.node()&&v.node().insertBefore(h.node().cloneNode(!0),v.node().firstChild);var b=d.width,p=d.height;v.attr({class:o,height:p,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var k=e.node().style.fill||"black",E=v.select("g");E.attr({fill:k,stroke:k});var S=E.node().getBoundingClientRect(),L=S.width,x=S.height;(L>b||x>p)&&(v.style("overflow","hidden"),S=v.node().getBoundingClientRect(),L=S.width,x=S.height);var C=+e.attr("x"),M=+e.attr("y"),g=u||e.node().getBoundingClientRect().height,P=-g/4;if(o[0]==="y")_.attr({transform:"rotate("+[-90,C,M]+")"+_at(-L/2,P-x/2)});else if(o[0]==="l")M=P-x/2;else if(o[0]==="a"&&o.indexOf("atitle")!==0)C=0,M=P;else{var T=e.attr("text-anchor");C=C-L*(T==="middle"?.5:T==="end"?1:0),M=M+P-x/2}v.attr({x:C,y:M}),r&&r.call(e,_),l(_)})})):s(),e};var wat=/(<|<|<)/g,Tat=/(>|>|>)/g;function Aat(e){return e.replace(wat,"\\lt ").replace(Tat,"\\gt ")}var Zne=[["$","$"],["\\(","\\)"]];function Sat(e,t,r){var n=parseInt((MathJax.version||"").split(".")[0]);if(n!==2&&n!==3){Ay.warn("No MathJax version:",MathJax.version);return}var i,a,o,s,l=function(){return a=Ay.extendDeepAll({},MathJax.Hub.config),o=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:Zne},displayAlign:"left"})},u=function(){a=Ay.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=Zne},c=function(){if(i=MathJax.Hub.config.menuSettings.renderer,i!=="SVG")return MathJax.Hub.setRenderer("SVG")},f=function(){i=MathJax.config.startup.output,i!=="svg"&&(MathJax.config.startup.output="svg")},h=function(){var k="math-output-"+Ay.randstr({},64);s=Ph.select("body").append("div").attr({id:k}).style({visibility:"hidden",position:"absolute","font-size":t.fontSize+"px"}).text(Aat(e));var E=s.node();return n===2?MathJax.Hub.Typeset(E):MathJax.typeset([E])},d=function(){var k=s.select(n===2?".MathJax_SVG":".MathJax"),E=!k.empty()&&s.select("svg").node();if(!E)Ay.log("There was an error in the tex syntax.",e),r();else{var S=E.getBoundingClientRect(),L;n===2?L=Ph.select("body").select("#MathJax_SVG_glyphs"):L=k.select("defs"),r(k,L,S)}s.remove()},v=function(){if(i!=="SVG")return MathJax.Hub.setRenderer(i)},_=function(){i!=="svg"&&(MathJax.config.startup.output=i)},b=function(){return o!==void 0&&(MathJax.Hub.processSectionDelay=o),MathJax.Hub.Config(a)},p=function(){MathJax.config=a};n===2?MathJax.Hub.Queue(l,c,h,d,v,b):n===3&&(u(),f(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){h(),d(),_(),p()}))}var $ne={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},Mat={sub:"0.3em",sup:"-0.6em"},Eat={sub:"-0.21em",sup:"0.42em"},Yne="\u200B",Kne=["http:","https:","mailto:","",void 0,":"],Qne=x0.NEWLINES=/(\r\n?|\n)/g,gq=/(<[^<>]*>)/,mq=/<(\/?)([^ >]*)(\s+(.*))?>/i,kat=//i;x0.BR_TAG_ALL=//gi;var eae=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,tae=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,rae=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,Cat=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function xb(e,t){if(!e)return null;var r=e.match(t),n=r&&(r[3]||r[4]);return n&&$6(n)}var Lat=/(^|;)\s*color:/;x0.plainText=function(e,t){t=t||{};for(var r=t.len!==void 0&&t.len!==-1?t.len:1/0,n=t.allowedTags!==void 0?t.allowedTags:["br"],i="...",a=i.length,o=e.split(gq),s=[],l="",u=0,c=0;ca?s.push(f.substr(0,_-a)+i):s.push(f.substr(0,_));break}l=""}}return s.join("")};var Pat={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},Iat=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function $6(e){return e.replace(Iat,function(t,r){var n;return r.charAt(0)==="#"?n=Rat(r.charAt(1)==="x"?parseInt(r.substr(2),16):parseInt(r.substr(1),10)):n=Pat[r],n||t})}x0.convertEntities=$6;function Rat(e){if(!(e>1114111)){var t=String.fromCodePoint;if(t)return t(e);var r=String.fromCharCode;return e<=65535?r(e):r((e>>10)+55232,e%1024+56320)}}function Dat(e,t){t=t.replace(Qne," ");var r=!1,n=[],i,a=-1;function o(){a++;var x=document.createElementNS(vq.svg,"tspan");Ph.select(x).attr({class:"line",dy:a*xat+"em"}),e.appendChild(x),i=x;var C=n;if(n=[{node:x}],C.length>1)for(var M=1;M.",t);return}var C=n.pop();x!==C.type&&Ay.log("Start tag <"+C.type+"> doesnt match end tag <"+x+">. Pretending it did match.",t),i=n[n.length-1].node}var c=kat.test(t);c?o():(i=e,n=[{node:e}]);for(var f=t.split(gq),h=0;h{"use strict";var Fat=Oa(),eL=cd(),$S=Eo(),Q6=Dr(),nae=ka(),zat=lb().isValid;function Oat(e,t,r){var n=t?Q6.nestedProperty(e,t).get()||{}:e,i=n[r||"color"];i&&i._inputArray&&(i=i._inputArray);var a=!1;if(Q6.isArrayOrTypedArray(i)){for(var o=0;o=0;n--,i++){var a=e[n];r[i]=[1-a[0],a[1]]}return r}function cae(e,t){t=t||{};for(var r=e.domain,n=e.range,i=n.length,a=new Array(i),o=0;o{"use strict";var hae=BO(),Bat=hae.FORMAT_LINK,Nat=hae.DATE_FORMAT_LINK;function Uat(e,t){return{valType:"string",dflt:"",editType:"none",description:(t?yq:dae)("hover text",e)+["By default the values are formatted using "+(t?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function yq(e,t){return["Sets the "+e+" formatting rule"+(t?"for `"+t+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+Bat+"."].join(" ")}function dae(e,t){return yq(e,t)+[" And for dates see: "+Nat+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}vae.exports={axisHoverFormat:Uat,descriptionOnlyNumbers:yq,descriptionWithDates:dae}});var Rd=ye((mnr,Pae)=>{"use strict";var pae=ec(),A3=Lh(),Lae=Pd().dash,xq=Ao().extendFlat,gae=vl().templatedArray,gnr=Ll().templateFormatStringDescription,mae=df().descriptionWithDates,Vat=fs().ONEDAY,pm=hd(),Gat=pm.HOUR_PATTERN,Hat=pm.WEEKDAY_PATTERN,_q={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},jat=xq({},_q,{values:_q.values.slice().concat(["sync"])});function yae(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var _ae={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},xae={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},bae={valType:"data_array",editType:"ticks"},wae={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function Tae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=5),t}function Aae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var Sae={valType:"color",dflt:A3.defaultLine,editType:"ticks"},Mae={valType:"color",dflt:A3.lightLine,editType:"ticks"};function Eae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var kae=xq({},Lae,{editType:"ticks"}),Cae={valType:"boolean",editType:"ticks"};Pae.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:A3.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:pae({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[pm.idRegex.x.toString(),pm.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[pm.idRegex.x.toString(),pm.idRegex.y.toString()],editType:"calc"},rangebreaks:gae("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[Hat,Gat,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:Vat},editType:"calc"}),tickmode:jat,nticks:yae(),tick0:_ae,dtick:xae,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:bae,ticktext:{valType:"data_array",editType:"ticks"},ticks:wae,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:Tae(),tickwidth:Aae(),tickcolor:Sae,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:xq({},Lae,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:pae({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:mae("tick label")},tickformatstops:gae("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:mae("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:A3.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:Cae,gridcolor:Mae,gridwidth:Eae(),griddash:kae,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:A3.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:A3.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",pm.idRegex.x.toString(),pm.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",pm.idRegex.x.toString(),pm.idRegex.y.toString()],editType:"plot"},minor:{tickmode:_q,nticks:yae("minor"),tick0:_ae,dtick:xae,tickvals:bae,ticks:wae,ticklen:Tae("minor"),tickwidth:Aae("minor"),tickcolor:Sae,gridcolor:Mae,gridwidth:Eae("minor"),griddash:kae,showgrid:Cae,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var tL=ye((ynr,Dae)=>{"use strict";var $c=Rd(),Iae=ec(),Rae=Ao().extendFlat,Wat=mc().overrideAll;Dae.exports=Wat({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:$c.linecolor,outlinewidth:$c.linewidth,bordercolor:$c.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:$c.minor.tickmode,nticks:$c.nticks,tick0:$c.tick0,dtick:$c.dtick,tickvals:$c.tickvals,ticktext:$c.ticktext,ticks:Rae({},$c.ticks,{dflt:""}),ticklabeloverflow:Rae({},$c.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:$c.ticklen,tickwidth:$c.tickwidth,tickcolor:$c.tickcolor,ticklabelstep:$c.ticklabelstep,showticklabels:$c.showticklabels,labelalias:$c.labelalias,tickfont:Iae({}),tickangle:$c.tickangle,tickformat:$c.tickformat,tickformatstops:$c.tickformatstops,tickprefix:$c.tickprefix,showtickprefix:$c.showtickprefix,ticksuffix:$c.ticksuffix,showticksuffix:$c.showticksuffix,separatethousands:$c.separatethousands,exponentformat:$c.exponentformat,minexponent:$c.minexponent,showexponent:$c.showexponent,title:{text:{valType:"string"},font:Iae({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var Tu=ye((xnr,zae)=>{"use strict";var Xat=tL(),Zat=a3().counter,Yat=Z1(),Fae=lb().scales,_nr=Yat(Fae);function rL(e){return"`"+e+"`"}zae.exports=function(t,r){t=t||"",r=r||{};var n=r.cLetter||"c",i="onlyIfNumerical"in r?r.onlyIfNumerical:!!t,a="noScale"in r?r.noScale:t==="marker.line",o="showScaleDflt"in r?r.showScaleDflt:n==="z",s=typeof r.colorscaleDflt=="string"?Fae[r.colorscaleDflt]:null,l=r.editTypeOverride||"",u=t?t+".":"",c,f;"colorAttr"in r?(c=r.colorAttr,f=r.colorAttr):(c={z:"z",c:"color"}[n],f="in "+rL(u+c));var h=i?" Has an effect only if "+f+" is set to a numerical array.":"",d=n+"auto",v=n+"min",_=n+"max",b=n+"mid",p=rL(u+d),k=rL(u+v),E=rL(u+_),S=k+" and "+E,L={};L[v]=L[_]=void 0;var x={};x[d]=!1;var C={};return c==="color"&&(C.color={valType:"color",arrayOk:!0,editType:l||"style"},r.anim&&(C.color.anim=!0)),C[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:L},C[v]={valType:"number",dflt:null,editType:l||"plot",impliedEdits:x},C[_]={valType:"number",dflt:null,editType:l||"plot",impliedEdits:x},C[b]={valType:"number",dflt:null,editType:"calc",impliedEdits:L},C.colorscale={valType:"colorscale",editType:"calc",dflt:s,impliedEdits:{autocolorscale:!1}},C.autocolorscale={valType:"boolean",dflt:r.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},C.reversescale={valType:"boolean",dflt:!1,editType:"plot"},a||(C.showscale={valType:"boolean",dflt:o,editType:"calc"},C.colorbar=Xat),r.noColorAxis||(C.coloraxis={valType:"subplotid",regex:Zat("coloraxis"),dflt:null,editType:"calc"}),C}});var wq=ye((bnr,Oae)=>{"use strict";var Kat=Ao().extendFlat,Jat=Tu(),bq=lb().scales;Oae.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:bq.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:bq.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:bq.RdBu,editType:"calc"}},coloraxis:Kat({_isSubplotObj:!0,editType:"calc"},Jat("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var Tq=ye((wnr,qae)=>{"use strict";var $at=Dr();qae.exports=function(t){return $at.isPlainObject(t.colorbar)}});var Mq=ye(Sq=>{"use strict";var Aq=Eo(),Bae=Dr(),Nae=fs(),Qat=Nae.ONEDAY,eot=Nae.ONEWEEK;Sq.dtick=function(e,t){var r=t==="log",n=t==="date",i=t==="category",a=n?Qat:1;if(!e)return a;if(Aq(e))return e=Number(e),e<=0?a:i?Math.max(1,Math.round(e)):n?Math.max(.1,e):e;if(typeof e!="string"||!(n||r))return a;var o=e.charAt(0),s=e.substr(1);return s=Aq(s)?Number(s):0,s<=0||!(n&&o==="M"&&s===Math.round(s)||r&&o==="L"||r&&o==="D"&&(s===1||s===2))?a:e};Sq.tick0=function(e,t,r,n){if(t==="date")return Bae.cleanDate(e,Bae.dateTick0(r,n%eot===0?1:0));if(!(n==="D1"||n==="D2"))return Aq(e)?Number(e):0}});var bb=ye((Anr,Vae)=>{"use strict";var Uae=Mq(),tot=Dr().isArrayOrTypedArray,rot=vv().isTypedArraySpec,iot=vv().decodeTypedArraySpec;Vae.exports=function(t,r,n,i,a){a||(a={});var o=a.isMinor,s=o?t.minor||{}:t,l=o?r.minor:r,u=o?"minor.":"";function c(k){var E=s[k];return rot(E)&&(E=iot(E)),E!==void 0?E:(l._template||{})[k]}var f=c("tick0"),h=c("dtick"),d=c("tickvals"),v=tot(d)?"array":h?"linear":"auto",_=n(u+"tickmode",v);if(_==="auto"||_==="sync")n(u+"nticks");else if(_==="linear"){var b=l.dtick=Uae.dtick(h,i);l.tick0=Uae.tick0(f,i,r.calendar,b)}else if(i!=="multicategory"){var p=n(u+"tickvals");p===void 0?l.tickmode="auto":o||n("ticktext")}}});var S3=ye((Snr,Hae)=>{"use strict";var Eq=Dr(),Gae=Rd();Hae.exports=function(t,r,n,i){var a=i.isMinor,o=a?t.minor||{}:t,s=a?r.minor:r,l=a?Gae.minor:Gae,u=a?"minor.":"",c=Eq.coerce2(o,s,l,"ticklen",a?(r.ticklen||5)*.6:void 0),f=Eq.coerce2(o,s,l,"tickwidth",a?r.tickwidth||1:void 0),h=Eq.coerce2(o,s,l,"tickcolor",(a?r.tickcolor:void 0)||s.color),d=n(u+"ticks",!a&&i.outerTicks||c||f||h?"outside":"");d||(delete s.ticklen,delete s.tickwidth,delete s.tickcolor)}});var kq=ye((Mnr,jae)=>{"use strict";jae.exports=function(t){var r=["showexponent","showtickprefix","showticksuffix"],n=r.filter(function(a){return t[a]!==void 0}),i=function(a){return t[a]===t[n[0]]};if(n.every(i)||n.length===1)return t[n[0]]}});var Yd=ye((Enr,Wae)=>{"use strict";var iL=Dr(),not=vl();Wae.exports=function(t,r,n){var i=n.name,a=n.inclusionAttr||"visible",o=r[i],s=iL.isArrayOrTypedArray(t[i])?t[i]:[],l=r[i]=[],u=not.arrayTemplater(r,i,a),c,f;for(c=0;c{"use strict";var Cq=Dr(),aot=ka().contrast,Xae=Rd(),oot=kq(),sot=Yd();Zae.exports=function(t,r,n,i,a){a||(a={});var o=n("labelalias");Cq.isPlainObject(o)||delete r.labelalias;var s=oot(t),l=n("showticklabels");if(l){a.noTicklabelshift||n("ticklabelshift"),a.noTicklabelstandoff||n("ticklabelstandoff");var u=a.font||{},c=r.color,f=r.ticklabelposition||"",h=f.indexOf("inside")!==-1?aot(a.bgColor):c&&c!==Xae.color.dflt?c:u.color;if(Cq.coerceFont(n,"tickfont",u,{overrideDflt:{color:h}}),!a.noTicklabelstep&&i!=="multicategory"&&i!=="log"&&n("ticklabelstep"),!a.noAng){var d=n("tickangle");!a.noAutotickangles&&d==="auto"&&n("autotickangles")}if(i!=="category"){var v=n("tickformat");sot(t,r,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:lot}),r.tickformatstops.length||delete r.tickformatstops,!a.noExp&&!v&&i!=="date"&&(n("showexponent",s),n("exponentformat"),n("minexponent"),n("separatethousands"))}!a.noMinorloglabels&&i==="log"&&n("minorloglabels")}};function lot(e,t){function r(i,a){return Cq.coerce(e,t,Xae.tickformatstops,i,a)}var n=r("enabled");n&&(r("dtickrange"),r("value"))}});var t_=ye((Cnr,Yae)=>{"use strict";var uot=kq();Yae.exports=function(t,r,n,i,a){a||(a={});var o=a.tickSuffixDflt,s=uot(t),l=n("tickprefix");l&&n("showtickprefix",s);var u=n("ticksuffix",o);u&&n("showticksuffix",s)}});var Lq=ye((Lnr,Kae)=>{"use strict";var r_=Dr(),cot=vl(),fot=bb(),hot=S3(),dot=e_(),vot=t_(),pot=tL();Kae.exports=function(t,r,n){var i=cot.newContainer(r,"colorbar"),a=t.colorbar||{};function o(T,z){return r_.coerce(a,i,pot,T,z)}var s=n.margin||{t:0,b:0,l:0,r:0},l=n.width-s.l-s.r,u=n.height-s.t-s.b,c=o("orientation"),f=c==="v",h=o("thicknessmode");o("thickness",h==="fraction"?30/(f?l:u):30);var d=o("lenmode");o("len",d==="fraction"?1:f?u:l);var v=o("yref"),_=o("xref"),b=v==="paper",p=_==="paper",k,E,S,L="left";f?(S="middle",L=p?"left":"right",k=p?1.02:1,E=.5):(S=b?"bottom":"top",L="center",k=.5,E=b?1.02:1),r_.coerce(a,i,{x:{valType:"number",min:p?-2:0,max:p?3:1,dflt:k}},"x"),r_.coerce(a,i,{y:{valType:"number",min:b?-2:0,max:b?3:1,dflt:E}},"y"),o("xanchor",L),o("xpad"),o("yanchor",S),o("ypad"),r_.noneOrAll(a,i,["x","y"]),o("outlinecolor"),o("outlinewidth"),o("bordercolor"),o("borderwidth"),o("bgcolor");var x=r_.coerce(a,i,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:f?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");o("ticklabeloverflow",x.indexOf("inside")!==-1?"hide past domain":"hide past div"),fot(a,i,o,"linear");var C=n.font,M={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:C};x.indexOf("inside")!==-1&&(M.bgColor="black"),vot(a,i,o,"linear",M),dot(a,i,o,"linear",M),hot(a,i,o,"linear",M),o("title.text",n._dfltTitle.colorbar);var g=i.showticklabels?i.tickfont:C,P=r_.extendFlat({},C,{family:g.family,size:r_.bigFont(g.size)});r_.coerceFont(o,"title.font",P),o("title.side",f?"top":"right")}});var Qh=ye((Pnr,Qae)=>{"use strict";var Jae=Eo(),Iq=Dr(),got=Tq(),mot=Lq(),$ae=lb().isValid,yot=qa().traceIs;function Pq(e,t){var r=t.slice(0,t.length-1);return t?Iq.nestedProperty(e,r).get()||{}:e}Qae.exports=function e(t,r,n,i,a){var o=a.prefix,s=a.cLetter,l="_module"in r,u=Pq(t,o),c=Pq(r,o),f=Pq(r._template||{},o)||{},h=function(){return delete t.coloraxis,delete r.coloraxis,e(t,r,n,i,a)};if(l){var d=n._colorAxes||{},v=i(o+"coloraxis");if(v){var _=yot(r,"contour")&&Iq.nestedProperty(r,"contours.coloring").get()||"heatmap",b=d[v];b?(b[2].push(h),b[0]!==_&&(b[0]=!1,Iq.warn(["Ignoring coloraxis:",v,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[v]=[_,r,[h]];return}}var p=u[s+"min"],k=u[s+"max"],E=Jae(p)&&Jae(k)&&p{"use strict";var eoe=Dr(),_ot=vl(),toe=wq(),xot=Qh();roe.exports=function(t,r){function n(f,h){return eoe.coerce(t,r,toe,f,h)}n("colorscale.sequential"),n("colorscale.sequentialminus"),n("colorscale.diverging");var i=r._colorAxes,a,o;function s(f,h){return eoe.coerce(a,o,toe.coloraxis,f,h)}for(var l in i){var u=i[l];if(u[0])a=t[l]||{},o=_ot.newContainer(r,l,"coloraxis"),o._name=l,xot(a,o,r,s,{prefix:"",cLetter:"c"});else{for(var c=0;c{"use strict";var bot=Dr(),wot=pv().hasColorscale,Tot=pv().extractOpts;noe.exports=function(t,r){function n(c,f){var h=c["_"+f];h!==void 0&&(c[f]=h)}function i(c,f){var h=f.container?bot.nestedProperty(c,f.container).get():c;if(h)if(h.coloraxis)h._colorAx=r[h.coloraxis];else{var d=Tot(h),v=d.auto;(v||d.min===void 0)&&n(h,f.min),(v||d.max===void 0)&&n(h,f.max),d.autocolorscale&&n(h,"colorscale")}}for(var a=0;a{"use strict";var ooe=Eo(),Rq=Dr(),Aot=pv().extractOpts;soe.exports=function(t,r,n){var i=t._fullLayout,a=n.vals,o=n.containerStr,s=o?Rq.nestedProperty(r,o).get():r,l=Aot(s),u=l.auto!==!1,c=l.min,f=l.max,h=l.mid,d=function(){return Rq.aggNums(Math.min,null,a)},v=function(){return Rq.aggNums(Math.max,null,a)};if(c===void 0?c=d():u&&(s._colorAx&&ooe(c)?c=Math.min(c,d()):c=d()),f===void 0?f=v():u&&(s._colorAx&&ooe(f)?f=Math.max(f,v()):f=v()),u&&h!==void 0&&(f-h>h-c?c=h-(f-h):f-h=0?_=i.colorscale.sequential:_=i.colorscale.sequentialminus,l._sync("colorscale",_)}}});var tc=ye((Fnr,loe)=>{"use strict";var nL=lb(),M3=pv();loe.exports={moduleType:"component",name:"colorscale",attributes:Tu(),layoutAttributes:wq(),supplyLayoutDefaults:ioe(),handleDefaults:Qh(),crossTraceDefaults:aoe(),calc:gv(),scales:nL.scales,defaultScale:nL.defaultScale,getScale:nL.get,isValidScale:nL.isValid,hasColorscale:M3.hasColorscale,extractOpts:M3.extractOpts,extractScale:M3.extractScale,flipScale:M3.flipScale,makeColorScaleFunc:M3.makeColorScaleFunc,makeColorScaleFuncFromTrace:M3.makeColorScaleFuncFromTrace}});var Ru=ye((znr,coe)=>{"use strict";var uoe=Dr(),Sot=vv().isTypedArraySpec;coe.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var t=e.marker;return uoe.isPlainObject(t)&&(uoe.isArrayOrTypedArray(t.size)||Sot(t.size))}}});var E3=ye((Onr,foe)=>{"use strict";var Mot=Eo();foe.exports=function(t,r){r||(r=2);var n=t.marker,i=n.sizeref||1,a=n.sizemin||0,o=n.sizemode==="area"?function(s){return Math.sqrt(s/i)}:function(s){return s/i};return function(s){var l=o(s/r);return Mot(l)&&l>0?Math.max(l,a):0}}});var ip=ye(mv=>{"use strict";var aL=Dr();mv.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};mv.isTraceInSubplots=function(e,t){if(e.type==="splom"){for(var r=e.xaxes||[],n=e.yaxes||[],i=0;i=0&&r.index{voe.exports=Pot;var Dq={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},Lot=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function Pot(e){var t=[];return e.replace(Lot,function(r,n,i){var a=n.toLowerCase();for(i=Rot(i),a=="m"&&i.length>2&&(t.push([n].concat(i.splice(0,2))),a="l",n=n=="m"?"l":"L");;){if(i.length==Dq[a])return i.unshift(n),t.push(i);if(i.length{"use strict";var Dot=QS(),ca=function(e,t){return t?Math.round(e*(t=Math.pow(10,t)))/t:Math.round(e)},hs="M0,0Z",poe=Math.sqrt(2),i_=Math.sqrt(3),Fq=Math.PI,zq=Math.cos,Oq=Math.sin;xoe.exports={circle:{n:0,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i="M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z";return r?vs(t,r,i):i}},square:{n:1,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")}},diamond:{n:2,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.3,2);return vs(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"Z")}},cross:{n:3,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.4,2),i=ca(e*1.2,2);return vs(t,r,"M"+i+","+n+"H"+n+"V"+i+"H-"+n+"V"+n+"H-"+i+"V-"+n+"H-"+n+"V-"+i+"H"+n+"V-"+n+"H"+i+"Z")}},x:{n:4,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.8/poe,2),i="l"+n+","+n,a="l"+n+",-"+n,o="l-"+n+",-"+n,s="l-"+n+","+n;return vs(t,r,"M0,"+n+i+a+o+a+o+s+o+s+i+s+i+"Z")}},"triangle-up":{n:5,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2/i_,2),i=ca(e/2,2),a=ca(e,2);return vs(t,r,"M-"+n+","+i+"H"+n+"L0,-"+a+"Z")}},"triangle-down":{n:6,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2/i_,2),i=ca(e/2,2),a=ca(e,2);return vs(t,r,"M-"+n+",-"+i+"H"+n+"L0,"+a+"Z")}},"triangle-left":{n:7,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2/i_,2),i=ca(e/2,2),a=ca(e,2);return vs(t,r,"M"+i+",-"+n+"V"+n+"L-"+a+",0Z")}},"triangle-right":{n:8,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2/i_,2),i=ca(e/2,2),a=ca(e,2);return vs(t,r,"M-"+i+",-"+n+"V"+n+"L"+a+",0Z")}},"triangle-ne":{n:9,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.6,2),i=ca(e*1.2,2);return vs(t,r,"M-"+i+",-"+n+"H"+n+"V"+i+"Z")}},"triangle-se":{n:10,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.6,2),i=ca(e*1.2,2);return vs(t,r,"M"+n+",-"+i+"V"+n+"H-"+i+"Z")}},"triangle-sw":{n:11,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.6,2),i=ca(e*1.2,2);return vs(t,r,"M"+i+","+n+"H-"+n+"V-"+i+"Z")}},"triangle-nw":{n:12,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.6,2),i=ca(e*1.2,2);return vs(t,r,"M-"+n+","+i+"V-"+n+"H"+i+"Z")}},pentagon:{n:13,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.951,2),i=ca(e*.588,2),a=ca(-e,2),o=ca(e*-.309,2),s=ca(e*.809,2);return vs(t,r,"M"+n+","+o+"L"+i+","+s+"H-"+i+"L-"+n+","+o+"L0,"+a+"Z")}},hexagon:{n:14,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e/2,2),a=ca(e*i_/2,2);return vs(t,r,"M"+a+",-"+i+"V"+i+"L0,"+n+"L-"+a+","+i+"V-"+i+"L0,-"+n+"Z")}},hexagon2:{n:15,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e/2,2),a=ca(e*i_/2,2);return vs(t,r,"M-"+i+","+a+"H"+i+"L"+n+",0L"+i+",-"+a+"H-"+i+"L-"+n+",0Z")}},octagon:{n:16,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.924,2),i=ca(e*.383,2);return vs(t,r,"M-"+i+",-"+n+"H"+i+"L"+n+",-"+i+"V"+i+"L"+i+","+n+"H-"+i+"L-"+n+","+i+"V-"+i+"Z")}},star:{n:17,f:function(e,t,r){if(ds(t))return hs;var n=e*1.4,i=ca(n*.225,2),a=ca(n*.951,2),o=ca(n*.363,2),s=ca(n*.588,2),l=ca(-n,2),u=ca(n*-.309,2),c=ca(n*.118,2),f=ca(n*.809,2),h=ca(n*.382,2);return vs(t,r,"M"+i+","+u+"H"+a+"L"+o+","+c+"L"+s+","+f+"L0,"+h+"L-"+s+","+f+"L-"+o+","+c+"L-"+a+","+u+"H-"+i+"L0,"+l+"Z")}},hexagram:{n:18,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.66,2),i=ca(e*.38,2),a=ca(e*.76,2);return vs(t,r,"M-"+a+",0l-"+i+",-"+n+"h"+a+"l"+i+",-"+n+"l"+i+","+n+"h"+a+"l-"+i+","+n+"l"+i+","+n+"h-"+a+"l-"+i+","+n+"l-"+i+",-"+n+"h-"+a+"Z")}},"star-triangle-up":{n:19,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*i_*.8,2),i=ca(e*.8,2),a=ca(e*1.6,2),o=ca(e*4,2),s="A "+o+","+o+" 0 0 1 ";return vs(t,r,"M-"+n+","+i+s+n+","+i+s+"0,-"+a+s+"-"+n+","+i+"Z")}},"star-triangle-down":{n:20,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*i_*.8,2),i=ca(e*.8,2),a=ca(e*1.6,2),o=ca(e*4,2),s="A "+o+","+o+" 0 0 1 ";return vs(t,r,"M"+n+",-"+i+s+"-"+n+",-"+i+s+"0,"+a+s+n+",-"+i+"Z")}},"star-square":{n:21,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.1,2),i=ca(e*2,2),a="A "+i+","+i+" 0 0 1 ";return vs(t,r,"M-"+n+",-"+n+a+"-"+n+","+n+a+n+","+n+a+n+",-"+n+a+"-"+n+",-"+n+"Z")}},"star-diamond":{n:22,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2),i=ca(e*1.9,2),a="A "+i+","+i+" 0 0 1 ";return vs(t,r,"M-"+n+",0"+a+"0,"+n+a+n+",0"+a+"0,-"+n+a+"-"+n+",0Z")}},"diamond-tall":{n:23,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.7,2),i=ca(e*1.4,2);return vs(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},"diamond-wide":{n:24,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2),i=ca(e*.7,2);return vs(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},hourglass:{n:25,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"H-"+n+"L"+n+",-"+n+"H-"+n+"Z")},noDot:!0},bowtie:{n:26,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"V-"+n+"L-"+n+","+n+"V-"+n+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e/poe,2);return vs(t,r,"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.3,2);return vs(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM0,-"+n+"V"+n+"M-"+n+",0H"+n)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.3,2),i=ca(e*.65,2);return vs(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM-"+i+",-"+i+"L"+i+","+i+"M-"+i+","+i+"L"+i+",-"+i)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2);return vs(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*.85,2);return vs(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,t,r){if(ds(t))return hs;var n=ca(e/2,2),i=ca(e,2);return vs(t,r,"M"+n+","+i+"V-"+i+"M"+(n-i)+",-"+i+"V"+i+"M"+i+","+n+"H-"+i+"M-"+i+","+(n-i)+"H"+i)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return vs(t,r,"M-"+n+","+a+"L0,0M"+n+","+a+"L0,0M0,-"+i+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return vs(t,r,"M-"+n+",-"+a+"L0,0M"+n+",-"+a+"L0,0M0,"+i+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return vs(t,r,"M"+a+","+n+"L0,0M"+a+",-"+n+"L0,0M-"+i+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return vs(t,r,"M-"+a+","+n+"L0,0M-"+a+",-"+n+"L0,0M"+i+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2);return vs(t,r,"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2);return vs(t,r,"M0,"+n+"V-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"L-"+n+",-"+n)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e*2,2);return vs(t,r,"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e*2,2);return vs(t,r,"M0,0L-"+n+",-"+i+"H"+n+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2,2),i=ca(e,2);return vs(t,r,"M0,0L"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2,2),i=ca(e,2);return vs(t,r,"M0,0L-"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e*2,2);return vs(t,r,"M-"+n+",0H"+n+"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e*2,2);return vs(t,r,"M-"+n+",0H"+n+"M0,0L-"+n+",-"+i+"H"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2,2),i=ca(e,2);return vs(t,r,"M0,-"+i+"V"+i+"M0,0L"+n+",-"+i+"V"+i+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2,2),i=ca(e,2);return vs(t,r,"M0,-"+i+"V"+i+"M0,0L-"+n+",-"+i+"V"+i+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,t,r){if(ds(t))return hs;var n=Fq/2.5,i=2*e*zq(n),a=2*e*Oq(n);return vs(t,r,"M0,0L"+-i+","+a+"L"+i+","+a+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,t,r){if(ds(t))return hs;var n=Fq/4,i=2*e*zq(n),a=2*e*Oq(n);return vs(t,r,"M0,0L"+-i+","+a+"A "+2*e+","+2*e+" 0 0 1 "+i+","+a+"Z")},backoff:.4,noDot:!0}};function ds(e){return e===null}var goe,moe,yoe,_oe;function vs(e,t,r){if((!e||e%360===0)&&!t)return r;if(yoe===e&&_oe===t&&goe===r)return moe;yoe=e,_oe=t,goe=r;function n(b,p){var k=zq(b),E=Oq(b),S=p[0],L=p[1]+(t||0);return[S*k-L*E,S*E+L*k]}for(var i=e/180*Fq,a=0,o=0,s=Dot(r),l="",u=0;u{"use strict";var dd=Oa(),Du=Dr(),Fot=Du.numberFormat,Sb=Eo(),Gq=cd(),sL=qa(),Kd=ka(),zot=tc(),tM=Du.strTranslate,lL=ru(),Oot=Wp(),qot=$h(),Bot=qot.LINE_SPACING,Poe=N1().DESELECTDIM,Not=Ru(),Uot=E3(),Vot=ip().appendArrayPointValue,Aa=Uoe.exports={};Aa.font=function(e,t){var r=t.variant,n=t.style,i=t.weight,a=t.color,o=t.size,s=t.family,l=t.shadow,u=t.lineposition,c=t.textcase;s&&e.style("font-family",s),o+1&&e.style("font-size",o+"px"),a&&e.call(Kd.fill,a),i&&e.style("font-weight",i),n&&e.style("font-style",n),r&&e.style("font-variant",r),c&&e.style("text-transform",qq(Hot(c))),l&&e.style("text-shadow",l==="auto"?lL.makeTextShadow(Kd.contrast(a)):qq(l)),u&&e.style("text-decoration-line",qq(jot(u)))};function qq(e){return e==="none"?void 0:e}var Got={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function Hot(e){return Got[e]}function jot(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}Aa.setPosition=function(e,t,r){e.attr("x",t).attr("y",r)};Aa.setSize=function(e,t,r){e.attr("width",t).attr("height",r)};Aa.setRect=function(e,t,r,n,i){e.call(Aa.setPosition,t,r).call(Aa.setSize,n,i)};Aa.translatePoint=function(e,t,r,n){var i=r.c2p(e.x),a=n.c2p(e.y);if(Sb(i)&&Sb(a)&&t.node())t.node().nodeName==="text"?t.attr("x",i).attr("y",a):t.attr("transform",tM(i,a));else return!1;return!0};Aa.translatePoints=function(e,t,r){e.each(function(n){var i=dd.select(this);Aa.translatePoint(n,i,t,r)})};Aa.hideOutsideRangePoint=function(e,t,r,n,i,a){t.attr("display",r.isPtWithinRange(e,i)&&n.isPtWithinRange(e,a)?null:"none")};Aa.hideOutsideRangePoints=function(e,t){if(t._hasClipOnAxisFalse){var r=t.xaxis,n=t.yaxis;e.each(function(i){var a=i[0].trace,o=a.xcalendar,s=a.ycalendar,l=sL.traceIs(a,"bar-like")?".bartext":".point,.textpoint";e.selectAll(l).each(function(u){Aa.hideOutsideRangePoint(u,dd.select(this),r,n,o,s)})})}};Aa.crispRound=function(e,t,r){return!t||!Sb(t)?r||0:e._context.staticPlot?t:t<1?1:Math.round(t)};Aa.singleLineStyle=function(e,t,r,n,i){t.style("fill","none");var a=(((e||[])[0]||{}).trace||{}).line||{},o=r||a.width||0,s=i||a.dash||"";Kd.stroke(t,n||a.color),Aa.dashLine(t,s,o)};Aa.lineGroupStyle=function(e,t,r,n){e.style("fill","none").each(function(i){var a=(((i||[])[0]||{}).trace||{}).line||{},o=t||a.width||0,s=n||a.dash||"";dd.select(this).call(Kd.stroke,r||a.color).call(Aa.dashLine,s,o)})};Aa.dashLine=function(e,t,r){r=+r||0,t=Aa.dashStyle(t,r),e.style({"stroke-dasharray":t,"stroke-width":r+"px"})};Aa.dashStyle=function(e,t){t=+t||1;var r=Math.max(t,3);return e==="solid"?e="":e==="dot"?e=r+"px,"+r+"px":e==="dash"?e=3*r+"px,"+3*r+"px":e==="longdash"?e=5*r+"px,"+5*r+"px":e==="dashdot"?e=3*r+"px,"+r+"px,"+r+"px,"+r+"px":e==="longdashdot"&&(e=5*r+"px,"+2*r+"px,"+r+"px,"+2*r+"px"),e};function Ioe(e,t,r,n){var i=t.fillpattern,a=t.fillgradient,o=Aa.getPatternAttr,s=i&&(o(i.shape,0,"")||o(i.path,0,""));if(s){var l=o(i.bgcolor,0,null),u=o(i.fgcolor,0,null),c=i.fgopacity,f=o(i.size,0,8),h=o(i.solidity,0,.3),d=t.uid;Aa.pattern(e,"point",r,d,s,f,h,void 0,i.fillmode,l,u,c)}else if(a&&a.type!=="none"){var v=a.type,_="scatterfill-"+t.uid;if(n&&(_="legendfill-"+t.uid),!n&&(a.start!==void 0||a.stop!==void 0)){var b,p;v==="horizontal"?(b={x:a.start,y:0},p={x:a.stop,y:0}):v==="vertical"&&(b={x:0,y:a.start},p={x:0,y:a.stop}),b.x=t._xA.c2p(b.x===void 0?t._extremes.x.min[0].val:b.x,!0),b.y=t._yA.c2p(b.y===void 0?t._extremes.y.min[0].val:b.y,!0),p.x=t._xA.c2p(p.x===void 0?t._extremes.x.max[0].val:p.x,!0),p.y=t._yA.c2p(p.y===void 0?t._extremes.y.max[0].val:p.y,!0),e.call(Foe,r,_,"linear",a.colorscale,"fill",b,p,!0,!1)}else v==="horizontal"&&(v=v+"reversed"),e.call(Aa.gradient,r,_,v,a.colorscale,"fill")}else t.fillcolor&&e.call(Kd.fill,t.fillcolor)}Aa.singleFillStyle=function(e,t){var r=dd.select(e.node()),n=r.data(),i=((n[0]||[])[0]||{}).trace||{};Ioe(e,i,t,!1)};Aa.fillGroupStyle=function(e,t,r){e.style("stroke-width",0).each(function(n){var i=dd.select(this);n[0].trace&&Ioe(i,n[0].trace,t,r)})};var woe=boe();Aa.symbolNames=[];Aa.symbolFuncs=[];Aa.symbolBackOffs=[];Aa.symbolNeedLines={};Aa.symbolNoDot={};Aa.symbolNoFill={};Aa.symbolList=[];Object.keys(woe).forEach(function(e){var t=woe[e],r=t.n;Aa.symbolList.push(r,String(r),e,r+100,String(r+100),e+"-open"),Aa.symbolNames[r]=e,Aa.symbolFuncs[r]=t.f,Aa.symbolBackOffs[r]=t.backoff||0,t.needLine&&(Aa.symbolNeedLines[r]=!0),t.noDot?Aa.symbolNoDot[r]=!0:Aa.symbolList.push(r+200,String(r+200),e+"-dot",r+300,String(r+300),e+"-open-dot"),t.noFill&&(Aa.symbolNoFill[r]=!0)});var Wot=Aa.symbolNames.length,Xot="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";Aa.symbolNumber=function(e){if(Sb(e))e=+e;else if(typeof e=="string"){var t=0;e.indexOf("-open")>0&&(t=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(t+=200,e=e.replace("-dot","")),e=Aa.symbolNames.indexOf(e),e>=0&&(e+=t)}return e%100>=Wot||e>=400?0:Math.floor(Math.max(e,0))};function Roe(e,t,r,n){var i=e%100;return Aa.symbolFuncs[i](t,r,n)+(e>=200?Xot:"")}var Toe=Fot("~f"),Doe={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};Aa.gradient=function(e,t,r,n,i,a){var o=Doe[n];return Foe(e,t,r,o.type,i,a,o.start,o.stop,!1,o.reversed)};function Foe(e,t,r,n,i,a,o,s,l,u){var c=i.length,f;n==="linear"?f={node:"linearGradient",attrs:{x1:o.x,y1:o.y,x2:s.x,y2:s.y,gradientUnits:l?"userSpaceOnUse":"objectBoundingBox"},reversed:u}:n==="radial"&&(f={node:"radialGradient",reversed:u});for(var h=new Array(c),d=0;d=0&&e.i===void 0&&(e.i=a.i),t.style("opacity",n.selectedOpacityFn?n.selectedOpacityFn(e):e.mo===void 0?o.opacity:e.mo),n.ms2mrc){var l;e.ms==="various"||o.size==="various"?l=3:l=n.ms2mrc(e.ms),e.mrc=l,n.selectedSizeFn&&(l=e.mrc=n.selectedSizeFn(e));var u=Aa.symbolNumber(e.mx||o.symbol)||0;e.om=u%200>=100;var c=Wq(e,r),f=jq(e,r);t.attr("d",Roe(u,l,c,f))}var h=!1,d,v,_;if(e.so)_=s.outlierwidth,v=s.outliercolor,d=o.outliercolor;else{var b=(s||{}).width;_=(e.mlw+1||b+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?v=e.mlcc=n.lineScale(e.mlc):Du.isArrayOrTypedArray(s.color)?v=Kd.defaultLine:v=s.color,Du.isArrayOrTypedArray(o.color)&&(d=Kd.defaultLine,h=!0),"mc"in e?d=e.mcc=n.markerScale(e.mc):d=o.color||o.colors||"rgba(0,0,0,0)",n.selectedColorFn&&(d=n.selectedColorFn(e))}if(e.om)t.call(Kd.stroke,d).style({"stroke-width":(_||1)+"px",fill:"none"});else{t.style("stroke-width",(e.isBlank?0:_)+"px");var p=o.gradient,k=e.mgt;k?h=!0:k=p&&p.type,Du.isArrayOrTypedArray(k)&&(k=k[0],Doe[k]||(k=0));var E=o.pattern,S=Aa.getPatternAttr,L=E&&(S(E.shape,e.i,"")||S(E.path,e.i,""));if(k&&k!=="none"){var x=e.mgc;x?h=!0:x=p.color;var C=r.uid;h&&(C+="-"+e.i),Aa.gradient(t,i,C,k,[[0,x],[1,d]],"fill")}else if(L){var M=!1,g=E.fgcolor;!g&&a&&a.color&&(g=a.color,M=!0);var P=S(g,e.i,a&&a.color||null),T=S(E.bgcolor,e.i,null),z=E.fgopacity,O=S(E.size,e.i,8),V=S(E.solidity,e.i,.3);M=M||e.mcc||Du.isArrayOrTypedArray(E.shape)||Du.isArrayOrTypedArray(E.path)||Du.isArrayOrTypedArray(E.bgcolor)||Du.isArrayOrTypedArray(E.fgcolor)||Du.isArrayOrTypedArray(E.size)||Du.isArrayOrTypedArray(E.solidity);var G=r.uid;M&&(G+="-"+e.i),Aa.pattern(t,"point",i,G,L,O,V,e.mcc,E.fillmode,T,P,z)}else Du.isArrayOrTypedArray(d)?Kd.fill(t,d[e.i]):Kd.fill(t,d);_&&Kd.stroke(t,v)}};Aa.makePointStyleFns=function(e){var t={},r=e.marker;return t.markerScale=Aa.tryColorscale(r,""),t.lineScale=Aa.tryColorscale(r,"line"),sL.traceIs(e,"symbols")&&(t.ms2mrc=Not.isBubble(e)?Uot(e):function(){return(r.size||6)/2}),e.selectedpoints&&Du.extendFlat(t,Aa.makeSelectedPointStyleFns(e)),t};Aa.makeSelectedPointStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.marker||{},a=r.marker||{},o=n.marker||{},s=i.opacity,l=a.opacity,u=o.opacity,c=l!==void 0,f=u!==void 0;(Du.isArrayOrTypedArray(s)||c||f)&&(t.selectedOpacityFn=function(S){var L=S.mo===void 0?i.opacity:S.mo;return S.selected?c?l:L:f?u:Poe*L});var h=i.color,d=a.color,v=o.color;(d||v)&&(t.selectedColorFn=function(S){var L=S.mcc||h;return S.selected?d||L:v||L});var _=i.size,b=a.size,p=o.size,k=b!==void 0,E=p!==void 0;return sL.traceIs(e,"symbols")&&(k||E)&&(t.selectedSizeFn=function(S){var L=S.mrc||_/2;return S.selected?k?b/2:L:E?p/2:L}),t};Aa.makeSelectedTextStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.textfont||{},a=r.textfont||{},o=n.textfont||{},s=i.color,l=a.color,u=o.color;return t.selectedTextColorFn=function(c){var f=c.tc||s;return c.selected?l||f:u||(l?f:Kd.addOpacity(f,Poe))},t};Aa.selectedPointStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=Aa.makeSelectedPointStyleFns(t),n=t.marker||{},i=[];r.selectedOpacityFn&&i.push(function(a,o){a.style("opacity",r.selectedOpacityFn(o))}),r.selectedColorFn&&i.push(function(a,o){Kd.fill(a,r.selectedColorFn(o))}),r.selectedSizeFn&&i.push(function(a,o){var s=o.mx||n.symbol||0,l=r.selectedSizeFn(o);a.attr("d",Roe(Aa.symbolNumber(s),l,Wq(o,t),jq(o,t))),o.mrc2=l}),i.length&&e.each(function(a){for(var o=dd.select(this),s=0;s0?r:0}Aa.textPointStyle=function(e,t,r){if(e.size()){var n;if(t.selectedpoints){var i=Aa.makeSelectedTextStyleFns(t);n=i.selectedTextColorFn}var a=t.texttemplate,o=r._fullLayout;e.each(function(s){var l=dd.select(this),u=a?Du.extractOption(s,t,"txt","texttemplate"):Du.extractOption(s,t,"tx","text");if(!u&&u!==0){l.remove();return}if(a){var c=t._module.formatLabels,f=c?c(s,t,o):{},h={};Vot(h,t,s.i),u=Du.texttemplateString({data:[h,s,t._meta],fallback:t.texttemplatefallback,labels:f,locale:o._d3locale,template:u})}var d=s.tp||t.textposition,v=Ooe(s,t),_=n?n(s):s.tc||t.textfont.color;l.call(Aa.font,{family:s.tf||t.textfont.family,weight:s.tw||t.textfont.weight,style:s.ty||t.textfont.style,variant:s.tv||t.textfont.variant,textcase:s.tC||t.textfont.textcase,lineposition:s.tE||t.textfont.lineposition,shadow:s.tS||t.textfont.shadow,size:v,color:_}).text(u).call(lL.convertToTspans,r).call(zoe,d,v,s.mrc)})}};Aa.selectedTextStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=Aa.makeSelectedTextStyleFns(t);e.each(function(n){var i=dd.select(this),a=r.selectedTextColorFn(n),o=n.tp||t.textposition,s=Ooe(n,t);Kd.fill(i,a);var l=sL.traceIs(t,"bar-like");zoe(i,o,s,n.mrc2||n.mrc,l)})}};var Aoe=.5;Aa.smoothopen=function(e,t){if(e.length<3)return"M"+e.join("L");var r="M"+e[0],n=[],i;for(i=1;i=l||S>=c&&S<=l)&&(L<=f&&L>=u||L>=f&&L<=u)&&(e=[S,L])}return e}Aa.applyBackoff=Noe;Aa.makeTester=function(){var e=Du.ensureSingleById(dd.select("body"),"svg","js-plotly-tester",function(r){r.attr(Oot.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),t=Du.ensureSingle(e,"path","js-reference-point",function(r){r.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});Aa.tester=e,Aa.testref=t};Aa.savedBBoxes={};var Nq=0,Kot=1e4;Aa.bBox=function(e,t,r){r||(r=Soe(e));var n;if(r){if(n=Aa.savedBBoxes[r],n)return Du.extendFlat({},n)}else if(e.childNodes.length===1){var i=e.childNodes[0];if(r=Soe(i),r){var a=+i.getAttribute("x")||0,o=+i.getAttribute("y")||0,s=i.getAttribute("transform");if(!s){var l=Aa.bBox(i,!1,r);return a&&(l.left+=a,l.right+=a),o&&(l.top+=o,l.bottom+=o),l}if(r+="~"+a+"~"+o+"~"+s,n=Aa.savedBBoxes[r],n)return Du.extendFlat({},n)}}var u,c;t?u=e:(c=Aa.tester.node(),u=e.cloneNode(!0),c.appendChild(u)),dd.select(u).attr("transform",null).call(lL.positionText,0,0);var f=u.getBoundingClientRect(),h=Aa.testref.node().getBoundingClientRect();t||c.removeChild(u);var d={height:f.height,width:f.width,left:f.left-h.left,top:f.top-h.top,right:f.right-h.left,bottom:f.bottom-h.top};return Nq>=Kot&&(Aa.savedBBoxes={},Nq=0),r&&(Aa.savedBBoxes[r]=d),Nq++,Du.extendFlat({},d)};function Soe(e){var t=e.getAttribute("data-unformatted");if(t!==null)return t+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}Aa.setClipUrl=function(e,t,r){e.attr("clip-path",Hq(t,r))};function Hq(e,t){if(!e)return null;var r=t._context,n=r._exportedPlot?"":r._baseUrl||"";return n?"url('"+n+"#"+e+"')":"url(#"+e+")"}Aa.getTranslate=function(e){var t=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",n=e[r]("transform")||"",i=n.replace(t,function(a,o,s){return[o,s].join(" ")}).split(" ");return{x:+i[0]||0,y:+i[1]||0}};Aa.setTranslate=function(e,t,r){var n=/(\btranslate\(.*?\);?)/,i=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",o=e[i]("transform")||"";return t=t||0,r=r||0,o=o.replace(n,"").trim(),o+=tM(t,r),o=o.trim(),e[a]("transform",o),o};Aa.getScale=function(e){var t=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",n=e[r]("transform")||"",i=n.replace(t,function(a,o,s){return[o,s].join(" ")}).split(" ");return{x:+i[0]||1,y:+i[1]||1}};Aa.setScale=function(e,t,r){var n=/(\bscale\(.*?\);?)/,i=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",o=e[i]("transform")||"";return t=t||1,r=r||1,o=o.replace(n,"").trim(),o+="scale("+t+","+r+")",o=o.trim(),e[a]("transform",o),o};var Jot=/\s*sc.*/;Aa.setPointGroupScale=function(e,t,r){if(t=t||1,r=r||1,!!e){var n=t===1&&r===1?"":"scale("+t+","+r+")";e.each(function(){var i=(this.getAttribute("transform")||"").replace(Jot,"");i+=n,i=i.trim(),this.setAttribute("transform",i)})}};var $ot=/translate\([^)]*\)\s*$/;Aa.setTextPointsScale=function(e,t,r){e&&e.each(function(){var n,i=dd.select(this),a=i.select("text");if(a.node()){var o=parseFloat(a.attr("x")||0),s=parseFloat(a.attr("y")||0),l=(i.attr("transform")||"").match($ot);t===1&&r===1?n=[]:n=[tM(o,s),"scale("+t+","+r+")",tM(-o,-s)],l&&n.push(l),i.attr("transform",n.join(""))}})};function jq(e,t){var r;return e&&(r=e.mf),r===void 0&&(r=t.marker&&t.marker.standoff||0),!t._geo&&!t._xA?-r:r}Aa.getMarkerStandoff=jq;var eM=Math.atan2,wb=Math.cos,C3=Math.sin;function Moe(e,t){var r=t[0],n=t[1];return[r*wb(e)-n*C3(e),r*C3(e)+n*wb(e)]}var Eoe,koe,Coe,Loe,Uq,Vq;function Wq(e,t){var r=e.ma;r===void 0&&(r=t.marker.angle,(!r||Du.isArrayOrTypedArray(r))&&(r=0));var n,i,a=t.marker.angleref;if(a==="previous"||a==="north"){if(t._geo){var o=t._geo.project(e.lonlat);n=o[0],i=o[1]}else{var s=t._xA,l=t._yA;if(s&&l)n=s.c2p(e.x),i=l.c2p(e.y);else return 90}if(t._geo){var u=e.lonlat[0],c=e.lonlat[1],f=t._geo.project([u,c+1e-5]),h=t._geo.project([u+1e-5,c]),d=eM(h[1]-i,h[0]-n),v=eM(f[1]-i,f[0]-n),_;if(a==="north")_=r/180*Math.PI;else if(a==="previous"){var b=u/180*Math.PI,p=c/180*Math.PI,k=Eoe/180*Math.PI,E=koe/180*Math.PI,S=k-b,L=wb(E)*C3(S),x=C3(E)*wb(p)-wb(E)*C3(p)*wb(S);_=-eM(L,x)-Math.PI,Eoe=u,koe=c}var C=Moe(d,[wb(_),0]),M=Moe(v,[C3(_),0]);r=eM(C[1]+M[1],C[0]+M[0])/Math.PI*180,a==="previous"&&!(Vq===t.uid&&e.i===Uq+1)&&(r=null)}if(a==="previous"&&!t._geo)if(Vq===t.uid&&e.i===Uq+1&&Sb(n)&&Sb(i)){var g=n-Coe,P=i-Loe,T=t.line&&t.line.shape||"",z=T.slice(T.length-1);z==="h"&&(P=0),z==="v"&&(g=0),r+=eM(P,g)/Math.PI*180+90}else r=null}return Coe=n,Loe=i,Uq=e.i,Vq=t.uid,r}Aa.getMarkerAngle=Wq});var Eb=ye((Vnr,joe)=>{"use strict";var L3=Oa(),Qot=Eo(),est=Mc(),Xq=qa(),Mb=Dr(),Voe=Mb.strTranslate,uL=So(),cL=ka(),P3=ru(),Goe=N1(),tst=$h().OPPOSITE_SIDE,Hoe=/ [XY][0-9]* /,Zq=1.6,Yq=1.6;function rst(e,t,r){var n=e._fullLayout,i=r.propContainer,a=r.propName,o=r.placeholder,s=r.traceIndex,l=r.avoid||{},u=r.attributes,c=r.transform,f=r.containerGroup,h=1,d=i.title,v=(d&&d.text?d.text:"").trim(),_=!1,b=d&&d.font?d.font:{},p=b.family,k=b.size,E=b.color,S=b.weight,L=b.style,x=b.variant,C=b.textcase,M=b.lineposition,g=b.shadow,P=r.subtitlePropName,T=!!P,z=r.subtitlePlaceholder,O=(i.title||{}).subtitle||{text:"",font:{}},V=(O.text||"").trim(),G=!1,Z=1,H=O.font,N=H.family,j=H.size,re=H.color,oe=H.weight,_e=H.style,Ee=H.variant,Ce=H.textcase,me=H.lineposition,ie=H.shadow,Se;a==="title.text"?Se="titleText":a.indexOf("axis")!==-1?Se="axisTitleText":a.indexOf("colorbar")!==-1&&(Se="colorbarTitleText");var Le=e._context.edits[Se];function Ae(Nt,Jt){return Nt===void 0||Jt===void 0?!1:Nt.replace(Hoe," % ")===Jt.replace(Hoe," % ")}v===""?h=0:Ae(v,o)&&(Le||(v=""),h=.2,_=!0),T&&(V===""?Z=0:Ae(V,z)&&(Le||(V=""),Z=.2,G=!0)),r._meta?v=Mb.templateString(v,r._meta):n._meta&&(v=Mb.templateString(v,n._meta));var Fe=v||V||Le,Pe;f||(f=Mb.ensureSingle(n._infolayer,"g","g-"+t),Pe=n._hColorbarMoveTitle);var ge=f.selectAll("text."+t).data(Fe?[0]:[]);ge.enter().append("text"),ge.text(v).attr("class",t),ge.exit().remove();var Re=null,ce=t+"-subtitle",Ze=V||Le;if(T&&(Re=f.selectAll("text."+ce).data(Ze?[0]:[]),Re.enter().append("text"),Re.text(V).attr("class",ce),Re.exit().remove()),!Fe)return f;function ut(Nt,Jt){Mb.syncOrAsync([pt,Zt],{title:Nt,subtitle:Jt})}function pt(Nt){var Jt=Nt.title,sr=Nt.subtitle,wr;!c&&Pe&&(c={}),c?(wr="",c.rotate&&(wr+="rotate("+[c.rotate,u.x,u.y]+")"),(c.offset||Pe)&&(wr+=Voe(0,(c.offset||0)-(Pe||0)))):wr=null,Jt.attr("transform",wr);function cr(It){if(It){var mt=L3.select(It.node().parentNode).select("."+ce);if(!mt.empty()){var er=It.node().getBBox();if(er.height){var lr=er.y+er.height+Zq*j;mt.attr("y",lr)}}}}if(Jt.style("opacity",h*cL.opacity(E)).call(uL.font,{color:cL.rgb(E),size:L3.round(k,2),family:p,weight:S,style:L,variant:x,textcase:C,shadow:g,lineposition:M}).attr(u).call(P3.convertToTspans,e,cr),sr&&!sr.empty()){var $e=f.select("."+t+"-math-group"),St=Jt.node().getBBox(),Qt=$e.node()?$e.node().getBBox():void 0,Vt=Qt?Qt.y+Qt.height+Zq*j:St.y+St.height+Yq*j,_t=Mb.extendFlat({},u,{y:Vt});sr.attr("transform",wr),sr.style("opacity",Z*cL.opacity(re)).call(uL.font,{color:cL.rgb(re),size:L3.round(j,2),family:N,weight:oe,style:_e,variant:Ee,textcase:Ce,shadow:ie,lineposition:me}).attr(_t).call(P3.convertToTspans,e)}return est.previousPromises(e)}function Zt(Nt){var Jt=Nt.title,sr=L3.select(Jt.node().parentNode);if(l&&l.selection&&l.side&&v){sr.attr("transform",null);var wr=tst[l.side],cr=l.side==="left"||l.side==="top"?-1:1,$e=Qot(l.pad)?l.pad:2,St=uL.bBox(sr.node()),Qt={t:0,b:0,l:0,r:0},Vt=e._fullLayout._reservedMargin;for(var _t in Vt)for(var It in Vt[_t]){var mt=Vt[_t][It];Qt[It]=Math.max(Qt[It],mt)}var er={left:Qt.l,top:Qt.t,right:n.width-Qt.r,bottom:n.height-Qt.b},lr=l.maxShift||cr*(er[l.side]-St[l.side]),Tr=0;if(lr<0)Tr=lr;else{var Lr=l.offsetLeft||0,ti=l.offsetTop||0;St.left-=Lr,St.right-=Lr,St.top-=ti,St.bottom-=ti,l.selection.each(function(){var Vr=uL.bBox(this);Mb.bBoxIntersect(St,Vr,$e)&&(Tr=Math.max(Tr,cr*(Vr[l.side]-St[wr])+$e))}),Tr=Math.min(lr,Tr),i._titleScoot=Math.abs(Tr)}if(Tr>0||lr<0){var Br={left:[-Tr,0],right:[Tr,0],top:[0,-Tr],bottom:[0,Tr]}[l.side];sr.attr("transform",Voe(Br[0],Br[1]))}}}ge.call(ut,Re);function st(Nt,Jt){Nt.text(Jt).on("mouseover.opacity",function(){L3.select(this).transition().duration(Goe.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){L3.select(this).transition().duration(Goe.HIDE_PLACEHOLDER).style("opacity",0)})}if(Le&&(v?ge.on(".opacity",null):(st(ge,o),_=!0),ge.call(P3.makeEditable,{gd:e}).on("edit",function(Nt){s!==void 0?Xq.call("_guiRestyle",e,a,Nt,s):Xq.call("_guiRelayout",e,a,Nt)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ut)}).on("input",function(Nt){this.text(Nt||" ").call(P3.positionText,u.x,u.y)}),T)){if(T&&!v){var lt=ge.node().getBBox(),Gt=lt.y+lt.height+Yq*j;Re.attr("y",Gt)}V?Re.on(".opacity",null):(st(Re,z),G=!0),Re.call(P3.makeEditable,{gd:e}).on("edit",function(Nt){Xq.call("_guiRelayout",e,"title.subtitle.text",Nt)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ut)}).on("input",function(Nt){this.text(Nt||" ").call(P3.positionText,Re.attr("x"),Re.attr("y"))})}return ge.classed("js-placeholder",_),Re&&!Re.empty()&&Re.classed("js-placeholder",G),f}joe.exports={draw:rst,SUBTITLE_PADDING_EM:Yq,SUBTITLE_PADDING_MATHJAX_EM:Zq}});var ym=ye((Gnr,Koe)=>{"use strict";var ist=Oa(),nst=t3().utcFormat,yc=Dr(),ast=yc.numberFormat,gm=Eo(),n_=yc.cleanNumber,ost=yc.ms2DateTime,Woe=yc.dateTime2ms,mm=yc.ensureNumber,Xoe=yc.isArrayOrTypedArray,a_=fs(),fL=a_.FP_SAFE,wg=a_.BADNUM,sst=a_.LOG_CLIP,lst=a_.ONEWEEK,hL=a_.ONEDAY,dL=a_.ONEHOUR,Zoe=a_.ONEMIN,Yoe=a_.ONESEC,vL=hf(),mL=hd(),pL=mL.HOUR_PATTERN,gL=mL.WEEKDAY_PATTERN;function rM(e){return Math.pow(10,e)}function Kq(e){return e!=null}Koe.exports=function(t,r){r=r||{};var n=t._id||"x",i=n.charAt(0);function a(S,L){if(S>0)return Math.log(S)/Math.LN10;if(S<=0&&L&&t.range&&t.range.length===2){var x=t.range[0],C=t.range[1];return .5*(x+C-2*sst*Math.abs(x-C))}else return wg}function o(S,L,x,C){if((C||{}).msUTC&&gm(S))return+S;var M=Woe(S,x||t.calendar);if(M===wg)if(gm(S)){S=+S;var g=Math.floor(yc.mod(S+.05,1)*10),P=Math.round(S-g/10);M=Woe(new Date(P))+g/10}else return wg;return M}function s(S,L,x){return ost(S,L,x||t.calendar)}function l(S){return t._categories[Math.round(S)]}function u(S){if(Kq(S)){if(t._categoriesMap===void 0&&(t._categoriesMap={}),t._categoriesMap[S]!==void 0)return t._categoriesMap[S];t._categories.push(typeof S=="number"?String(S):S);var L=t._categories.length-1;return t._categoriesMap[S]=L,L}return wg}function c(S,L){for(var x=new Array(L),C=0;Ct.range[1]&&(x=!x);for(var C=x?-1:1,M=C*S,g=0,P=0;Pz)g=P+1;else{g=M<(T+z)/2?P:P+1;break}}var O=t._B[g]||0;return isFinite(O)?v(S,t._m2,O):0},p=function(S){var L=t._rangebreaks.length;if(!L)return _(S,t._m,t._b);for(var x=0,C=0;Ct._rangebreaks[C].pmax&&(x=C+1);return _(S,t._m2,t._B[x])}}t.c2l=t.type==="log"?a:mm,t.l2c=t.type==="log"?rM:mm,t.l2p=b,t.p2l=p,t.c2p=t.type==="log"?function(S,L){return b(a(S,L))}:b,t.p2c=t.type==="log"?function(S){return rM(p(S))}:p,["linear","-"].indexOf(t.type)!==-1?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=n_,t.c2d=t.c2r=t.l2d=t.l2r=mm,t.d2p=t.r2p=function(S){return t.l2p(n_(S))},t.p2d=t.p2r=p,t.cleanPos=mm):t.type==="log"?(t.d2r=t.d2l=function(S,L){return a(n_(S),L)},t.r2d=t.r2c=function(S){return rM(n_(S))},t.d2c=t.r2l=n_,t.c2d=t.l2r=mm,t.c2r=a,t.l2d=rM,t.d2p=function(S,L){return t.l2p(t.d2r(S,L))},t.p2d=function(S){return rM(p(S))},t.r2p=function(S){return t.l2p(n_(S))},t.p2r=p,t.cleanPos=mm):t.type==="date"?(t.d2r=t.r2d=yc.identity,t.d2c=t.r2c=t.d2l=t.r2l=o,t.c2d=t.c2r=t.l2d=t.l2r=s,t.d2p=t.r2p=function(S,L,x){return t.l2p(o(S,0,x))},t.p2d=t.p2r=function(S,L,x){return s(p(S),L,x)},t.cleanPos=function(S){return yc.cleanDate(S,wg,t.calendar)}):t.type==="category"?(t.d2c=t.d2l=u,t.r2d=t.c2d=t.l2d=l,t.d2r=t.d2l_noadd=h,t.r2c=function(S){var L=d(S);return L!==void 0?L:t.fraction2r(.5)},t.l2r=t.c2r=mm,t.r2l=d,t.d2p=function(S){return t.l2p(t.r2c(S))},t.p2d=function(S){return l(p(S))},t.r2p=t.d2p,t.p2r=p,t.cleanPos=function(S){return typeof S=="string"&&S!==""?S:mm(S)}):t.type==="multicategory"&&(t.r2d=t.c2d=t.l2d=l,t.d2r=t.d2l_noadd=h,t.r2c=function(S){var L=h(S);return L!==void 0?L:t.fraction2r(.5)},t.r2c_just_indices=f,t.l2r=t.c2r=mm,t.r2l=h,t.d2p=function(S){return t.l2p(t.r2c(S))},t.p2d=function(S){return l(p(S))},t.r2p=t.d2p,t.p2r=p,t.cleanPos=function(S){return Array.isArray(S)||typeof S=="string"&&S!==""?S:mm(S)},t.setupMultiCategory=function(S){var L=t._traceIndices,x,C,M=t._matchGroup;if(M&&t._categories.length===0){for(var g in M)if(g!==n){var P=r[vL.id2name(g)];L=L.concat(P._traceIndices)}}var T=[[0,{}],[0,{}]],z=[];for(x=0;xP[1]&&(C[g?0:1]=x),C[0]===C[1]){var T=t.l2r(L),z=t.l2r(x);if(L!==void 0){var O=T+1;x!==void 0&&(O=Math.min(O,z)),C[g?1:0]=O}if(x!==void 0){var V=z+1;L!==void 0&&(V=Math.max(V,T)),C[g?0:1]=V}}}},t.cleanRange=function(S,L){t._cleanRange(S,L),t.limitRange(S)},t._cleanRange=function(S,L){L||(L={}),S||(S="range");var x=yc.nestedProperty(t,S).get(),C,M;if(t.type==="date"?M=yc.dfltRange(t.calendar):i==="y"?M=mL.DFLTRANGEY:t._name==="realaxis"?M=[0,1]:M=L.dfltRange||mL.DFLTRANGEX,M=M.slice(),(t.rangemode==="tozero"||t.rangemode==="nonnegative")&&(M[0]=0),!x||x.length!==2){yc.nestedProperty(t,S).set(M);return}var g=x[0]===null,P=x[1]===null;for(t.type==="date"&&!t.autorange&&(x[0]=yc.cleanDate(x[0],wg,t.calendar),x[1]=yc.cleanDate(x[1],wg,t.calendar)),C=0;C<2;C++)if(t.type==="date"){if(!yc.isDateTime(x[C],t.calendar)){t[S]=M;break}if(t.r2l(x[0])===t.r2l(x[1])){var T=yc.constrain(t.r2l(x[0]),yc.MIN_MS+1e3,yc.MAX_MS-1e3);x[0]=t.l2r(T-1e3),x[1]=t.l2r(T+1e3);break}}else{if(!gm(x[C]))if(!(g||P)&&gm(x[1-C]))x[C]=x[1-C]*(C?10:.1);else{t[S]=M;break}if(x[C]<-fL?x[C]=-fL:x[C]>fL&&(x[C]=fL),x[0]===x[1]){var z=Math.max(1,Math.abs(x[0]*1e-6));x[0]-=z,x[1]+=z}}},t.setScale=function(S){var L=r._size;if(t.overlaying){var x=vL.getFromId({_fullLayout:r},t.overlaying);t.domain=x.domain}var C=S&&t._r?"_r":"range",M=t.calendar;t.cleanRange(C);var g=t.r2l(t[C][0],M),P=t.r2l(t[C][1],M),T=i==="y";if(T?(t._offset=L.t+(1-t.domain[1])*L.h,t._length=L.h*(t.domain[1]-t.domain[0]),t._m=t._length/(g-P),t._b=-t._m*P):(t._offset=L.l+t.domain[0]*L.w,t._length=L.w*(t.domain[1]-t.domain[0]),t._m=t._length/(P-g),t._b=-t._m*g),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks){var z,O;if(t._rangebreaks=t.locateBreaks(Math.min(g,P),Math.max(g,P)),t._rangebreaks.length){for(z=0;zP&&(V=!V),V&&t._rangebreaks.reverse();var G=V?-1:1;for(t._m2=G*t._length/(Math.abs(P-g)-t._lBreaks),t._B.push(-t._m2*(T?P:g)),z=0;zM&&(M+=7,gM&&(M+=24,g=C&&g=C&&S=ie.min&&(_eie.max&&(ie.max=Ee),Ce=!1)}Ce&&P.push({min:_e,max:Ee})}};for(x=0;x{"use strict";var Joe=Eo(),Jq=Dr(),ust=fs().BADNUM,yL=Jq.isArrayOrTypedArray,cst=Jq.isDateTime,fst=Jq.cleanNumber,$oe=Math.round;ese.exports=function(t,r,n){var i=t,a=n.noMultiCategory;if(yL(i)&&!i.length)return"-";if(!a&&gst(i))return"multicategory";if(a&&Array.isArray(i[0])){for(var o=[],s=0;sa*2}function Qoe(e){return Math.max(1,(e-1)/1e3)}function pst(e,t){for(var r=e.length,n=Qoe(r),i=0,a=0,o={},s=0;si*2}function gst(e){return yL(e[0])&&yL(e[1])}});var Tg=ye((jnr,lse)=>{"use strict";var mst=Oa(),nse=Eo(),o_=Dr(),_L=fs().FP_SAFE,yst=qa(),_st=So(),ase=hf(),xst=ase.getFromId,bst=ase.isLinked;lse.exports={applyAutorangeOptions:sse,getAutoRange:$q,makePadFn:Qq,doAutoRange:Tst,findExtremes:Ast,concatExtremes:rB};function $q(e,t){var r,n,i=[],a=e._fullLayout,o=Qq(a,t,0),s=Qq(a,t,1),l=rB(e,t),u=l.min,c=l.max;if(u.length===0||c.length===0)return o_.simpleMap(t.range,t.r2l);var f=u[0].val,h=c[0].val;for(r=1;r0&&(P=E-o(x)-s(C),P>S?T/P>L&&(M=x,g=C,L=T/P):T/E>L&&(M={val:x.val,nopad:1},g={val:C.val,nopad:1},L=T/E));function z(H,N){return Math.max(H,s(N))}if(f===h){var O=f-1,V=f+1;if(p)if(f===0)i=[0,1];else{var G=(f>0?c:u).reduce(z,0),Z=f/(1-Math.min(.5,G/E));i=f>0?[0,Z]:[Z,0]}else k?i=[Math.max(0,O),Math.max(1,V)]:i=[O,V]}else p?(M.val>=0&&(M={val:0,nopad:1}),g.val<=0&&(g={val:0,nopad:1})):k&&(M.val-L*o(M)<0&&(M={val:0,nopad:1}),g.val<=0&&(g={val:1,nopad:1})),L=(g.val-M.val-tse(t,x.val,C.val))/(E-o(M)-s(g)),i=[M.val-L*o(M),g.val+L*s(g)];return i=sse(i,t),t.limitRange&&t.limitRange(),v&&i.reverse(),o_.simpleMap(i,t.l2r||Number)}function tse(e,t,r){var n=0;if(e.rangebreaks)for(var i=e.locateBreaks(t,r),a=0;a0?r.ppadplus:r.ppadminus)||r.ppad||0),x=S((e._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),C=S(r.vpadplus||r.vpad),M=S(r.vpadminus||r.vpad);if(!u){if(k=1/0,E=-1/0,l)for(f=0;f0&&(k=h),h>E&&h<_L&&(E=h);else for(f=0;f-_L&&(k=h),h>E&&h<_L&&(E=h);t=[k,E],a=2}var g={tozero:s,extrapad:o};function P(z){d=t[z],nse(d)&&(b=L(z),p=x(z),c?(v=e.c2l(d)-M(z),_=e.c2l(d)+C(z)):(k=d-M(z),E=d+C(z),l&&k=T;f--)P(f);return{min:n,max:i,opts:r}}function eB(e,t,r,n){ose(e,t,r,n,Sst)}function tB(e,t,r,n){ose(e,t,r,n,Mst)}function ose(e,t,r,n,i){for(var a=n.tozero,o=n.extrapad,s=!0,l=0;l=r&&(u.extrapad||!o)){s=!1;break}else i(t,u.val)&&u.pad<=r&&(o||!u.extrapad)&&(e.splice(l,1),l--)}if(s){var c=a&&t===0;e.push({val:t,pad:c?0:r,extrapad:c?!1:o})}}function ise(e){return nse(e)&&Math.abs(e)<_L}function Sst(e,t){return e<=t}function Mst(e,t){return e>=t}function Est(e,t){var r=t.autorangeoptions;return r&&r.minallowed!==void 0&&xL(t,r.minallowed,r.maxallowed)?r.minallowed:r&&r.clipmin!==void 0&&xL(t,r.clipmin,r.clipmax)?Math.max(e,t.d2l(r.clipmin)):e}function kst(e,t){var r=t.autorangeoptions;return r&&r.maxallowed!==void 0&&xL(t,r.minallowed,r.maxallowed)?r.maxallowed:r&&r.clipmax!==void 0&&xL(t,r.clipmin,r.clipmax)?Math.min(e,t.d2l(r.clipmax)):e}function xL(e,t,r){return t!==void 0&&r!==void 0?(t=e.d2l(t),r=e.d2l(r),t=l&&(a=l,r=l),o<=l&&(o=l,n=l)}}return r=Est(r,t),n=kst(n,t),[r,n]}});var ho=ye((Wnr,Pse)=>{"use strict";var b0=Oa(),Ih=Eo(),R3=Mc(),nM=qa(),Jo=Dr(),D3=Jo.strTranslate,kb=ru(),Cst=Eb(),aM=ka(),Xp=So(),Lst=Rd(),use=Mq(),Jd=fs(),Pst=Jd.ONEMAXYEAR,TL=Jd.ONEAVGYEAR,AL=Jd.ONEMINYEAR,Ist=Jd.ONEMAXQUARTER,oB=Jd.ONEAVGQUARTER,SL=Jd.ONEMINQUARTER,Rst=Jd.ONEMAXMONTH,F3=Jd.ONEAVGMONTH,ML=Jd.ONEMINMONTH,Zp=Jd.ONEWEEK,Ov=Jd.ONEDAY,s_=Ov/2,xm=Jd.ONEHOUR,oM=Jd.ONEMIN,EL=Jd.ONESEC,Dst=Jd.ONEMILLI,Fst=Jd.ONEMICROSEC,Cb=Jd.MINUS_SIGN,CL=Jd.BADNUM,sB={K:"zeroline"},lB={K:"gridline",L:"path"},uB={K:"minor-gridline",L:"path"},xse={K:"tick",L:"path"},cse={K:"tick",L:"text"},fse={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},LL=$h(),iM=LL.MID_SHIFT,Lb=LL.CAP_SHIFT,sM=LL.LINE_SPACING,zst=LL.OPPOSITE_SIDE,kL=3,Qn=Pse.exports={};Qn.setConvert=ym();var Ost=I3(),Sy=hf(),qst=Sy.idSort,Bst=Sy.isLinked;Qn.id2name=Sy.id2name;Qn.name2id=Sy.name2id;Qn.cleanId=Sy.cleanId;Qn.list=Sy.list;Qn.listIds=Sy.listIds;Qn.getFromId=Sy.getFromId;Qn.getFromTrace=Sy.getFromTrace;var bse=Tg();Qn.getAutoRange=bse.getAutoRange;Qn.findExtremes=bse.findExtremes;var Nst=1e-4;function dB(e){var t=(e[1]-e[0])*Nst;return[e[0]-t,e[1]+t]}Qn.coerceRef=function(e,t,r,n,i,a){var o=n.charAt(n.length-1),s=r._fullLayout._subplots[o+"axis"],l=n+"ref",u={};return i||(i=s[0]||(typeof a=="string"?a:a[0])),a||(a=i),s=s.concat(s.map(function(c){return c+" domain"})),u[l]={valType:"enumerated",values:s.concat(a?typeof a=="string"?[a]:a:[]),dflt:i},Jo.coerce(e,t,u,l)};Qn.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};Qn.coercePosition=function(e,t,r,n,i,a){var o,s,l=Qn.getRefType(n);if(l!=="range")o=Jo.ensureNumber,s=r(i,a);else{var u=Qn.getFromId(t,n);a=u.fraction2r(a),s=r(i,a),o=u.cleanPos}e[i]=o(s)};Qn.cleanPosition=function(e,t,r){var n=r==="paper"||r==="pixel"?Jo.ensureNumber:Qn.getFromId(t,r).cleanPos;return n(e)};Qn.redrawComponents=function(e,t){t=t||Qn.listIds(e);var r=e._fullLayout;function n(i,a,o,s){for(var l=nM.getComponentMethod(i,a),u={},c=0;c2e-6||((r-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};Qn.saveRangeInitial=function(e,t){for(var r=Qn.list(e,"",!0),n=!1,i=0;if*.3||u(n)||u(i))){var h=r.dtick/2;e+=e+ho){var s=Number(r.substr(1));a.exactYears>o&&s%12===0?e=Qn.tickIncrement(e,"M6","reverse")+Ov*1.5:a.exactMonths>o?e=Qn.tickIncrement(e,"M1","reverse")+Ov*15.5:e-=s_;var l=Qn.tickIncrement(e,r);if(l<=n)return l}return e}Qn.prepMinorTicks=function(e,t,r){if(!t.minor.dtick){delete e.dtick;var n=t.dtick&&Ih(t._tmin),i;if(n){var a=Qn.tickIncrement(t._tmin,t.dtick,!0);i=[t._tmin,a*.99+t._tmin*.01]}else{var o=Jo.simpleMap(t.range,t.r2l);i=[o[0],.8*o[0]+.2*o[1]]}if(e.range=Jo.simpleMap(i,t.l2r),e._isMinor=!0,Qn.prepTicks(e,r),n){var s=Ih(t.dtick),l=Ih(e.dtick),u=s?t.dtick:+t.dtick.substring(1),c=l?e.dtick:+e.dtick.substring(1);s&&l?iB(u,c)?u===2*Zp&&c===2*Ov&&(e.dtick=Zp):u===2*Zp&&c===3*Ov?e.dtick=Zp:u===Zp&&!(t._input.minor||{}).nticks?e.dtick=Ov:vse(u/c,2.5)?e.dtick=u/2:e.dtick=u:String(t.dtick).charAt(0)==="M"?l?e.dtick="M1":iB(u,c)?u>=12&&c===2&&(e.dtick="M3"):e.dtick=t.dtick:String(e.dtick).charAt(0)==="L"?String(t.dtick).charAt(0)==="L"?iB(u,c)||(e.dtick=vse(u/c,2.5)?t.dtick/2:t.dtick):e.dtick="D1":e.dtick==="D2"&&+t.dtick>1&&(e.dtick=1)}e.range=t.range}t.minor._tick0Init===void 0&&(e.tick0=t.tick0)};function iB(e,t){return Math.abs((e/t+.5)%1-.5)<.001}function vse(e,t){return Math.abs(e/t-1)<.001}Qn.prepTicks=function(e,t){var r=Jo.simpleMap(e.range,e.r2l,void 0,void 0,t);if(e.tickmode==="auto"||!e.dtick){var n=e.nticks,i;n||(e.type==="category"||e.type==="multicategory"?(i=e.tickfont?Jo.bigFont(e.tickfont.size||12):15,n=e._length/i):(i=e._id.charAt(0)==="y"?40:80,n=Jo.constrain(e._length/i,4,9)+1),e._name==="radialaxis"&&(n*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(n*=100),e._roughDTick=Math.abs(r[1]-r[0])/n,Qn.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(a=n-1,o=n):(a=n,o=n);var s=e[a].value,l=e[o].value,u=Math.abs(l-s),c=r||u,f=0;c>=AL?u>=AL&&u<=Pst?f=u:f=TL:r===oB&&c>=SL?u>=SL&&u<=Ist?f=u:f=oB:c>=ML?u>=ML&&u<=Rst?f=u:f=F3:r===Zp&&c>=Zp?f=Zp:c>=Ov?f=Ov:r===s_&&c>=s_?f=s_:r===xm&&c>=xm&&(f=xm);var h;f>=u&&(f=u,h=!0);var d=i+f;if(t.rangebreaks&&f>0){for(var v=84,_=0,b=0;bZp&&(f=u)}(f>0||n===0)&&(e[n].periodX=i+f/2)}}Qn.calcTicks=function(t,r){for(var n=t.type,i=t.calendar,a=t.ticklabelstep,o=t.ticklabelmode==="period",s=t.range[0]>t.range[1],l=!t.ticklabelindex||Jo.isArrayOrTypedArray(t.ticklabelindex)?t.ticklabelindex:[t.ticklabelindex],u=Jo.simpleMap(t.range,t.r2l,void 0,void 0,r),c=u[1]=(E?0:1);S--){var L=!S;S?(t._dtickInit=t.dtick,t._tick0Init=t.tick0):(t.minor._dtickInit=t.minor.dtick,t.minor._tick0Init=t.minor.tick0);var x=S?t:Jo.extendFlat({},t,t.minor);if(L?Qn.prepMinorTicks(x,t,r):Qn.prepTicks(x,r),x.tickmode==="array"){S?(b=[],v=pse(t,!L)):(p=[],_=pse(t,!L));continue}if(x.tickmode==="sync"){b=[],v=Wst(t);continue}var C=dB(u),M=C[0],g=C[1],P=Ih(x.dtick),T=n==="log"&&!(P||x.dtick.charAt(0)==="L"),z=Qn.tickFirst(x,r);if(S){if(t._tmin=z,z=g:V<=g;V=Qn.tickIncrement(V,H,c,i)){if(S&&G++,x.rangebreaks&&!c){if(V=h)break}if(b.length>d||V===O)break;O=V;var N={value:V};S?(T&&V!==(V|0)&&(N.simpleLabel=!0),a>1&&G%a&&(N.skipLabel=!0),b.push(N)):(N.minor=!0,p.push(N))}}if(!p||p.length<2)l=!1;else{var j=(p[1].value-p[0].value)*(s?-1:1);mlt(j,t.tickformat)||(l=!1)}if(!l)k=b;else{var re=b.concat(p);o&&b.length&&(re=re.slice(1)),re=re.sort(function(Gt,Nt){return Gt.value-Nt.value}).filter(function(Gt,Nt,Jt){return Nt===0||Gt.value!==Jt[Nt-1].value});var oe=re.map(function(Gt,Nt){return Gt.minor===void 0&&!Gt.skipLabel?Nt:null}).filter(function(Gt){return Gt!==null});oe.forEach(function(Gt){l.map(function(Nt){var Jt=Gt+Nt;Jt>=0&&Jt-1;Fe--){if(b[Fe].drop){b.splice(Fe,1);continue}b[Fe].value=aB(b[Fe].value,t);var ce=t.c2p(b[Fe].value);(Pe?Re>ce-ge:Reh||srh&&(Jt.periodX=h),sri&&hTL)t/=TL,n=i(10),e.dtick="M"+12*_m(t,n,bL);else if(a>F3)t/=F3,e.dtick="M"+_m(t,1,gse);else if(a>Ov){if(e.dtick=_m(t,Ov,e._hasDayOfWeekBreaks?[1,2,7,14]:Xst),!r){var o=Qn.getTickFormat(e),s=e.ticklabelmode==="period";s&&(e._rawTick0=e.tick0),/%[uVW]/.test(o)?e.tick0=Jo.dateTick0(e.calendar,2):e.tick0=Jo.dateTick0(e.calendar,1),s&&(e._dowTick0=e.tick0)}}else a>xm?e.dtick=_m(t,xm,gse):a>oM?e.dtick=_m(t,oM,mse):a>EL?e.dtick=_m(t,EL,mse):(n=i(10),e.dtick=_m(t,n,bL))}else if(e.type==="log"){e.tick0=0;var l=Jo.simpleMap(e.range,e.r2l);if(e._isMinor&&(t*=1.5),t>.7)e.dtick=Math.ceil(t);else if(Math.abs(l[1]-l[0])<1){var u=1.5*Math.abs((l[1]-l[0])/t);t=Math.abs(Math.pow(10,l[1])-Math.pow(10,l[0]))/u,n=i(10),e.dtick="L"+_m(t,n,bL)}else e.dtick=t>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(t,1))):mB(e)?(e.tick0=0,n=1,e.dtick=_m(t,n,Zst)):(e.tick0=0,n=i(10),e.dtick=_m(t,n,bL));if(e.dtick===0&&(e.dtick=1),!Ih(e.dtick)&&typeof e.dtick!="string"){var c=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(c)}};function Sse(e){var t=e.dtick;if(e._tickexponent=0,!Ih(t)&&typeof t!="string"&&(t=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var r=e.r2l(e.tick0),n=e.l2r(r).replace(/(^-|i)/g,""),i=n.length;if(String(t).charAt(0)==="M")i>10||n.substr(5)!=="01-01"?e._tickround="d":e._tickround=+t.substr(1)%12===0?"y":"m";else if(t>=Ov&&i<=10||t>=Ov*15)e._tickround="d";else if(t>=oM&&i<=16||t>=xm)e._tickround="M";else if(t>=EL&&i<=19||t>=oM)e._tickround="S";else{var a=e.l2r(r+t).replace(/^-/,"").length;e._tickround=Math.max(i,a)-20,e._tickround<0&&(e._tickround=4)}}else if(Ih(t)||t.charAt(0)==="L"){var o=e.range.map(e.r2d||Number);Ih(t)||(t=Number(t.substr(1))),e._tickround=2-Math.floor(Math.log(t)/Math.LN10+.01);var s=Math.max(Math.abs(o[0]),Math.abs(o[1])),l=Math.floor(Math.log(s)/Math.LN10+.01),u=e.minexponent===void 0?3:e.minexponent;Math.abs(l)>u&&(z3(e.exponentformat)&&e.exponentformat!=="SI extended"&&!vB(l)||z3(e.exponentformat)&&e.exponentformat==="SI extended"&&!pB(l)?e._tickexponent=3*Math.round((l-1)/3):e._tickexponent=l)}else e._tickround=null}Qn.tickIncrement=function(e,t,r,n){var i=r?-1:1;if(Ih(t))return Jo.increment(e,i*t);var a=t.charAt(0),o=i*Number(t.substr(1));if(a==="M")return Jo.incrementMonth(e,o,n);if(a==="L")return Math.log(Math.pow(10,e)+o)/Math.LN10;if(a==="D"){var s=t==="D2"?Ase:Tse,l=e+i*.01,u=Jo.roundUp(Jo.mod(l,1),s,r);return Math.floor(l)+Math.log(b0.round(Math.pow(10,u),1))/Math.LN10}throw"unrecognized dtick "+String(t)};Qn.tickFirst=function(e,t){var r=e.r2l||Number,n=Jo.simpleMap(e.range,r,void 0,void 0,t),i=n[1]=0&&p<=e._length?b:null};if(a&&Jo.isArrayOrTypedArray(e.ticktext)){var f=Jo.simpleMap(e.range,e.r2l),h=(Math.abs(f[1]-f[0])-(e._lBreaks||0))/1e4;for(u=0;u"+s;else{var u=uM(e),c=e._trueSide||e.side;(!u&&c==="top"||u&&c==="bottom")&&(o+="
")}t.text=o}function Kst(e,t,r,n,i){var a=e.dtick,o=t.x,s=e.tickformat,l=typeof a=="string"&&a.charAt(0);if(i==="never"&&(i=""),n&&l!=="L"&&(a="L3",l="L"),s||l==="L")t.text=lM(Math.pow(10,o),e,i,n);else if(Ih(a)||l==="D"&&(e.minorloglabels==="complete"||Jo.mod(o+.01,1)<.1)){var u;e.minorloglabels==="complete"&&!(Jo.mod(o+.01,1)<.1)&&(u=!0,t.fontSize*=.75);var c=Math.pow(10,o).toExponential(0),f=c.split("e"),h=+f[1],d=Math.abs(h),v=e.exponentformat;v==="power"||z3(v)&&v!=="SI extended"&&vB(h)||z3(v)&&v==="SI extended"&&pB(h)?(t.text=f[0],d>0&&(t.text+="x10"),t.text==="1x10"&&(t.text="10"),h!==0&&h!==1&&(t.text+=""+(h>0?"":Cb)+d+""),t.fontSize*=1.25):(v==="e"||v==="E")&&d>2?t.text=f[0]+v+(h>0?"+":Cb)+d:(t.text=lM(Math.pow(10,o),e,"","fakehover"),a==="D1"&&e._id.charAt(0)==="y"&&(t.dy-=t.fontSize/6))}else if(l==="D")t.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,Jo.mod(o,1)))),t.fontSize*=.75;else throw"unrecognized dtick "+String(a);if(e.dtick==="D1"){var _=String(t.text).charAt(0);(_==="0"||_==="1")&&(e._id.charAt(0)==="y"?t.dx-=t.fontSize/4:(t.dy+=t.fontSize/2,t.dx+=(e.range[1]>e.range[0]?1:-1)*t.fontSize*(o<0?.5:.25)))}}function Jst(e,t){var r=e._categories[Math.round(t.x)];r===void 0&&(r=""),t.text=String(r)}function $st(e,t,r){var n=Math.round(t.x),i=e._categories[n]||[],a=i[1]===void 0?"":String(i[1]),o=i[0]===void 0?"":String(i[0]);r?t.text=o+" - "+a:(t.text=a,t.text2=o)}function Qst(e,t,r,n,i){i==="never"?i="":e.showexponent==="all"&&Math.abs(t.x/e.dtick)<1e-6&&(i="hide"),t.text=lM(t.x,e,i,n)}function elt(e,t,r,n,i){if(e.thetaunit==="radians"&&!r){var a=t.x/180;if(a===0)t.text="0";else{var o=tlt(a);if(o[1]>=100)t.text=lM(Jo.deg2rad(t.x),e,i,n);else{var s=t.x<0;o[1]===1?o[0]===1?t.text="\u03C0":t.text=o[0]+"\u03C0":t.text=["",o[0],"","\u2044","",o[1],"","\u03C0"].join(""),s&&(t.text=Cb+t.text)}}}else t.text=lM(t.x,e,i,n)}function tlt(e){function t(s,l){return Math.abs(s-l)<=1e-6}function r(s,l){return t(l,0)?s:r(l,s%l)}function n(s){for(var l=1;!t(Math.round(s*l)/l,s);)l*=10;return l}var i=n(e),a=e*i,o=Math.abs(r(a,i));return[Math.round(a/o),Math.round(i/o)]}var Ese=["f","p","n","\u03BC","m","","k","M","G","T"],rlt=["q","r","y","z","a",...Ese,"P","E","Z","Y","R","Q"],z3=e=>["SI","SI extended","B"].includes(e);function vB(e){return e>14||e<-15}function pB(e){return e>32||e<-30}function ilt(e,t){return z3(t)?!!(t==="SI extended"&&pB(e)||t!=="SI extended"&&vB(e)):!1}function lM(e,t,r,n){var i=e<0,a=t._tickround,o=r||t.exponentformat||"B",s=t._tickexponent,l=Qn.getTickFormat(t),u=t.separatethousands;if(n){var c={exponentformat:o,minexponent:t.minexponent,dtick:t.showexponent==="none"?t.dtick:Ih(e)&&Math.abs(e)||1,range:t.showexponent==="none"?t.range.map(t.r2d):[0,e||1]};Sse(c),a=(Number(c._tickround)||0)+4,s=c._tickexponent,t.hoverformat&&(l=t.hoverformat)}if(l)return t._numFormat(l)(e).replace(/-/g,Cb);var f=Math.pow(10,-a)/2;if(o==="none"&&(s=0),e=Math.abs(e),e"+v+"":o==="B"&&s===9?e+="B":z3(o)&&(e+=o==="SI extended"?rlt[s/3+10]:Ese[s/3+5])}return i?Cb+e:e}Qn.getTickFormat=function(e){var t;function r(l){return typeof l!="string"?l:Number(l.replace("M",""))*F3}function n(l,u){var c=["L","D"];if(typeof l==typeof u){if(typeof l=="number")return l-u;var f=c.indexOf(l.charAt(0)),h=c.indexOf(u.charAt(0));return f===h?Number(l.replace(/(L|D)/g,""))-Number(u.replace(/(L|D)/g,"")):f-h}else return typeof l=="number"?1:-1}function i(l,u,c){var f=c||function(v){return v},h=u[0],d=u[1];return(!h&&typeof h!="number"||f(h)<=f(l))&&(!d&&typeof d!="number"||f(d)>=f(l))}function a(l,u){var c=u[0]===null,f=u[1]===null,h=n(l,u[0])>=0,d=n(l,u[1])<=0;return(c||h)&&(f||d)}var o,s;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(t=0;t=0&&i.unshift(i.splice(c,1).shift())}});var s={false:{left:0,right:0}};return Jo.syncOrAsync(i.map(function(l){return function(){if(l){var u=Qn.getFromId(e,l);r||(r={}),r.axShifts=s,r.overlayingShiftedAx=o;var c=Qn.drawOne(e,u,r);return u._shiftPusher&&hB(u,u._fullDepth||0,s,!0),u._r=u.range.slice(),u._rl=Jo.simpleMap(u._r,u.r2l),c}}}))};Qn.drawOne=function(e,t,r){r=r||{};var n=r.axShifts||{},i=r.overlayingShiftedAx||[],a,o,s;t.setScale();var l=e._fullLayout,u=t._id,c=u.charAt(0),f=Qn.counterLetter(u),h=l._plots[t._mainSubplot],d=t.zerolinelayer==="above traces";if(!h)return;if(t._shiftPusher=t.autoshift||i.indexOf(t._id)!==-1||i.indexOf(t.overlaying)!==-1,t._shiftPusher&t.anchor==="free"){var v=t.linewidth/2||0;t.ticks==="inside"&&(v+=t.ticklen),hB(t,v,n,!0),hB(t,t.shift||0,n,!1)}(r.skipTitle!==!0||t._shift===void 0)&&(t._shift=glt(t,n));var _=h[c+"axislayer"],b=t._mainLinePosition,p=b+=t._shift,k=t._mainMirrorPosition,E=t._vals=Qn.calcTicks(t),S=[t.mirror,p,k].join("_");for(a=0;a0?sr.bottom-Nt:0,Jt))));var St=0,Qt=0;if(t._shiftPusher&&(St=Math.max(Jt,sr.height>0?lt==="l"?Nt-sr.left:sr.right-Nt:0),t.title.text!==l._dfltTitle[c]&&(Qt=(t._titleStandoff||0)+(t._titleScoot||0),lt==="l"&&(Qt+=_se(t))),t._fullDepth=Math.max(St,Qt)),t.automargin){wr={x:0,y:0,r:0,l:0,t:0,b:0};var Vt=[0,1],_t=typeof t._shift=="number"?t._shift:0;if(c==="x"){if(lt==="b"?wr[lt]=t._depth:(wr[lt]=t._depth=Math.max(sr.width>0?Nt-sr.top:0,Jt),Vt.reverse()),sr.width>0){var It=sr.right-(t._offset+t._length);It>0&&(wr.xr=1,wr.r=It);var mt=t._offset-sr.left;mt>0&&(wr.xl=0,wr.l=mt)}}else if(lt==="l"?(t._depth=Math.max(sr.height>0?Nt-sr.left:0,Jt),wr[lt]=t._depth-_t):(t._depth=Math.max(sr.height>0?sr.right-Nt:0,Jt),wr[lt]=t._depth+_t,Vt.reverse()),sr.height>0){var er=sr.bottom-(t._offset+t._length);er>0&&(wr.yb=0,wr.b=er);var lr=t._offset-sr.top;lr>0&&(wr.yt=1,wr.t=lr)}wr[f]=t.anchor==="free"?t.position:t._anchorAxis.domain[Vt[0]],t.title.text!==l._dfltTitle[c]&&(wr[lt]+=_se(t)+(t.title.standoff||0)),t.mirror&&t.anchor!=="free"&&(cr={x:0,y:0,r:0,l:0,t:0,b:0},cr[Gt]=t.linewidth,t.mirror&&t.mirror!==!0&&(cr[Gt]+=Jt),t.mirror===!0||t.mirror==="ticks"?cr[f]=t._anchorAxis.domain[Vt[1]]:(t.mirror==="all"||t.mirror==="allticks")&&(cr[f]=[t._counterDomainMin,t._counterDomainMax][Vt[1]]))}st&&($e=nM.getComponentMethod("rangeslider","autoMarginOpts")(e,t)),typeof t.automargin=="string"&&(yse(wr,t.automargin),yse(cr,t.automargin)),R3.autoMargin(e,gB(t),wr),R3.autoMargin(e,Cse(t),cr),R3.autoMargin(e,Lse(t),$e)}),Jo.syncOrAsync(pt)}};function yse(e,t){if(e){var r=Object.keys(fse).reduce(function(n,i){return t.indexOf(i)!==-1&&fse[i].forEach(function(a){n[a]=1}),n},{});Object.keys(e).forEach(function(n){r[n]||(n.length===1?e[n]=0:delete e[n])})}}function nlt(e,t){var r=[],n,i=function(a,o){var s=a.xbnd[o];s!==null&&r.push(Jo.extendFlat({},a,{x:s}))};if(t.length){for(n=0;ne.range[1],s=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,l=!s;if(r){var u=o?-1:1;r=r*u}if(n){var c=e.side,f=s&&(c==="top"||c==="left")||l&&(c==="bottom"||c==="right")?1:-1;n=n*f}return e._id.charAt(0)==="x"?function(h){return D3(i+e._offset+e.l2p(cB(h))+r,a+n)}:function(h){return D3(a+n,i+e._offset+e.l2p(cB(h))+r)}};function cB(e){return e.periodX!==void 0?e.periodX:e.x}function llt(e){var t=e.ticklabelposition||"",r=e.tickson||"",n=function(v){return t.indexOf(v)!==-1},i=n("top"),a=n("left"),o=n("right"),s=n("bottom"),l=n("inside"),u=r!=="boundaries"&&(s||a||i||o);if(!u&&!l)return[0,0];var c=e.side,f=u?(e.tickwidth||0)/2:0,h=kL,d=e.tickfont?e.tickfont.size:12;return(s||i)&&(f+=d*Lb,h+=(e.linewidth||0)/2),(a||o)&&(f+=(e.linewidth||0)/2,h+=kL),l&&c==="top"&&(h-=d*(1-Lb)),(a||i)&&(f=-f),(c==="bottom"||c==="right")&&(h=-h),[u?f:0,l?h:0]}Qn.makeTickPath=function(e,t,r,n){n||(n={});var i=n.minor;if(i&&!e.minor)return"";var a=n.len!==void 0?n.len:i?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),s=(e.linewidth||1)/2;return o==="x"?"M0,"+(t+s*r)+"v"+a*r:"M"+(t+s*r)+",0h"+a*r};Qn.makeLabelFns=function(e,t,r){var n=e.ticklabelposition||"",i=e.tickson||"",a=function(O){return n.indexOf(O)!==-1},o=a("top"),s=a("left"),l=a("right"),u=a("bottom"),c=i!=="boundaries"&&(u||s||o||l),f=a("inside"),h=n==="inside"&&e.ticks==="inside"||!f&&e.ticks==="outside"&&i!=="boundaries",d=0,v=0,_=h?e.ticklen:0;if(f?_*=-1:c&&(_=0),h&&(d+=_,r)){var b=Jo.deg2rad(r);d=_*Math.cos(b)+1,v=_*Math.sin(b)}e.showticklabels&&(h||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(f?-1:1);var p={labelStandoff:d,labelShift:v},k,E,S,L,x=0,C=e.side,M=e._id.charAt(0),g=e.tickangle,P;if(M==="x")P=!f&&C==="bottom"||f&&C==="top",L=P?1:-1,f&&(L*=-1),k=v*L,E=t+d*L,S=P?1:-.2,Math.abs(g)===90&&(f?S+=iM:g===-90&&C==="bottom"?S=Lb:g===90&&C==="top"?S=iM:S=.5,x=iM/2*(g/90)),p.xFn=function(O){return O.dx+k+x*O.fontSize},p.yFn=function(O){return O.dy+E+O.fontSize*S},p.anchorFn=function(O,V){if(c){if(s)return"end";if(l)return"start"}return!Ih(V)||V===0||V===180?"middle":V*L<0!==f?"end":"start"},p.heightFn=function(O,V,G){return V<-60||V>60?-.5*G:e.side==="top"!==f?-G:0};else if(M==="y"){if(P=!f&&C==="left"||f&&C==="right",L=P?1:-1,f&&(L*=-1),k=d,E=v*L,S=0,!f&&Math.abs(g)===90&&(g===-90&&C==="left"||g===90&&C==="right"?S=Lb:S=.5),f){var T=Ih(g)?+g:0;if(T!==0){var z=Jo.deg2rad(T);x=Math.abs(Math.sin(z))*Lb*L,S=0}}p.xFn=function(O){return O.dx+t-(k+O.fontSize*S)*L+x*O.fontSize},p.yFn=function(O){return O.dy+E+O.fontSize*iM},p.anchorFn=function(O,V){return Ih(V)&&Math.abs(V)===90?"middle":P?"end":"start"},p.heightFn=function(O,V,G){return e.side==="right"&&(V*=-1),V<-30?-G:V<30?-.5*G:0}}return p};function PL(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}Qn.drawTicks=function(e,t,r){r=r||{};var n=t._id+"tick",i=[].concat(t.minor&&t.minor.ticks?r.vals.filter(function(o){return o.minor&&!o.noTick}):[]).concat(t.ticks?r.vals.filter(function(o){return!o.minor&&!o.noTick}):[]),a=r.layer.selectAll("path."+n).data(i,PL);a.exit().remove(),a.enter().append("path").classed(n,1).classed("ticks",1).classed("crisp",r.crisp!==!1).each(function(o){return aM.stroke(b0.select(this),o.minor?t.minor.tickcolor:t.tickcolor)}).style("stroke-width",function(o){return Xp.crispRound(e,o.minor?t.minor.tickwidth:t.tickwidth,1)+"px"}).attr("d",r.path).style("display",null),IL(t,[xse]),a.attr("transform",r.transFn)};Qn.drawGrid=function(e,t,r){if(r=r||{},t.tickmode!=="sync"){var n=t._id+"grid",i=t.minor&&t.minor.showgrid,a=i?r.vals.filter(function(p){return p.minor}):[],o=t.showgrid?r.vals.filter(function(p){return!p.minor}):[],s=r.counterAxis;if(s&&Qn.shouldShowZeroLine(e,t,s))for(var l=t.tickmode==="array",u=0;u=0;v--){var _=v?h:d;if(_){var b=_.selectAll("path."+n).data(v?o:a,PL);b.exit().remove(),b.enter().append("path").classed(n,1).classed("crisp",r.crisp!==!1),b.attr("transform",r.transFn).attr("d",r.path).each(function(p){return aM.stroke(b0.select(this),p.minor?t.minor.gridcolor:t.gridcolor||"#ddd")}).style("stroke-dasharray",function(p){return Xp.dashStyle(p.minor?t.minor.griddash:t.griddash,p.minor?t.minor.gridwidth:t.gridwidth)}).style("stroke-width",function(p){return(p.minor?f:t._gw)+"px"}).style("display",null),typeof r.path=="function"&&b.attr("d",r.path)}}IL(t,[lB,uB])}};Qn.drawZeroLine=function(e,t,r){r=r||r;var n=t._id+"zl",i=Qn.shouldShowZeroLine(e,t,r.counterAxis),a=r.layer.selectAll("path."+n).data(i?[{x:0,id:t._id}]:[]);a.exit().remove(),a.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",r.crisp!==!1).each(function(){r.layer.selectAll("path").sort(function(o,s){return qst(o.id,s.id)})}),a.attr("transform",r.transFn).attr("d",r.path).call(aM.stroke,t.zerolinecolor||aM.defaultLine).style("stroke-width",Xp.crispRound(e,t.zerolinewidth,t._gw||1)+"px").style("display",null),IL(t,[sB])};Qn.drawLabels=function(e,t,r){r=r||{};var n=e._fullLayout,i=t._id,a=t.zerolinelayer==="above traces",o=r.cls||i+"tick",s=r.vals.filter(function(j){return j.text}),l=r.labelFns,u=r.secondary?0:t.tickangle,c=(t._prevTickAngles||{})[o],f=r.layer.selectAll("g."+o).data(t.showticklabels?s:[],PL),h=[];f.enter().append("g").classed(o,1).append("text").attr("text-anchor","middle").each(function(j){var re=b0.select(this),oe=e._promises.length;re.call(kb.positionText,l.xFn(j),l.yFn(j)).call(Xp.font,{family:j.font,size:j.fontSize,color:j.fontColor,weight:j.fontWeight,style:j.fontStyle,variant:j.fontVariant,textcase:j.fontTextcase,lineposition:j.fontLineposition,shadow:j.fontShadow}).text(j.text).call(kb.convertToTspans,e),e._promises[oe]?h.push(e._promises.pop().then(function(){d(re,u)})):d(re,u)}),IL(t,[cse]),f.exit().remove(),r.repositionOnUpdate&&f.each(function(j){b0.select(this).select("text").call(kb.positionText,l.xFn(j),l.yFn(j))});function d(j,re){j.each(function(oe){var _e=b0.select(this),Ee=_e.select(".text-math-group"),Ce=l.anchorFn(oe,re),me=r.transFn.call(_e.node(),oe)+(Ih(re)&&+re!=0?" rotate("+re+","+l.xFn(oe)+","+(l.yFn(oe)-oe.fontSize/2)+")":""),ie=kb.lineCount(_e),Se=sM*oe.fontSize,Le=l.heightFn(oe,Ih(re)?+re:0,(ie-1)*Se);if(Le&&(me+=D3(0,Le)),Ee.empty()){var Ae=_e.select("text");Ae.attr({transform:me,"text-anchor":Ce}),Ae.style("display",null),t._adjustTickLabelsOverflow&&t._adjustTickLabelsOverflow()}else{var Fe=Xp.bBox(Ee.node()).width,Pe=Fe*{end:-.5,start:.5}[Ce];Ee.attr("transform",me+D3(Pe,0))}})}t._adjustTickLabelsOverflow=function(){var j=t.ticklabeloverflow;if(!(!j||j==="allow")){var re=j.indexOf("hide")!==-1,oe=t._id.charAt(0)==="x",_e=0,Ee=oe?e._fullLayout.width:e._fullLayout.height;if(j.indexOf("domain")!==-1){var Ce=Jo.simpleMap(t.range,t.r2l);_e=t.l2p(Ce[0])+t._offset,Ee=t.l2p(Ce[1])+t._offset}var me=Math.min(_e,Ee),ie=Math.max(_e,Ee),Se=t.side,Le=1/0,Ae=-1/0;f.each(function(Re){var ce=b0.select(this),Ze=ce.select(".text-math-group");if(Ze.empty()){var ut=Xp.bBox(ce.node()),pt=0;oe?(ut.right>ie||ut.leftie||ut.top+(t.tickangle?0:Re.fontSize/4)t["_visibleLabelMin_"+Ce._id]?ce.style("display","none"):ie.K==="tick"&&!me&&ce.node().style.display!=="none"&&ce.style("display",null)})})})})},d(f,c+1?c:u);function v(){return h.length&&Promise.all(h)}var _=null;function b(){if(d(f,u),s.length&&t.autotickangles&&(t.type!=="log"||String(t.dtick).charAt(0)!=="D")){_=t.autotickangles[0];var j=0,re=[],oe,_e=1;f.each(function(wr){j=Math.max(j,wr.fontSize);var cr=t.l2p(wr.x),$e=fB(this),St=Xp.bBox($e.node());_e=Math.max(_e,kb.lineCount($e)),re.push({top:0,bottom:10,height:10,left:cr-St.width/2,right:cr+St.width/2+2,width:St.width+2})});var Ee=(t.tickson==="boundaries"||t.showdividers)&&!r.secondary,Ce=s.length,me=Math.abs((s[Ce-1].x-s[0].x)*t._m)/(Ce-1),ie=Ee?me/2:me,Se=Ee?t.ticklen:j*1.25*_e,Le=Math.sqrt(Math.pow(ie,2)+Math.pow(Se,2)),Ae=ie/Le,Fe=t.autotickangles.map(function(wr){return wr*Math.PI/180}),Pe=Fe.find(function(wr){return Math.abs(Math.cos(wr))<=Ae});Pe===void 0&&(Pe=Fe.reduce(function(wr,cr){return Math.abs(Math.cos(wr))Z*G&&(z=G,g[M]=P[M]=O[M])}var H=Math.abs(z-T);H-L>0?(H-=L,L*=1+L/H):L=0,t._id.charAt(0)!=="y"&&(L=-L),g[C]=E.p2r(E.r2p(P[C])+x*L),E.autorange==="min"||E.autorange==="max reversed"?(g[0]=null,E._rangeInitial0=void 0,E._rangeInitial1=void 0):(E.autorange==="max"||E.autorange==="min reversed")&&(g[1]=null,E._rangeInitial0=void 0,E._rangeInitial1=void 0),n._insideTickLabelsUpdaterange[E._name+".range"]=g}var N=Jo.syncOrAsync(p);return N&&N.then&&e._promises.push(N),N};function ult(e,t,r){var n=t._id+"divider",i=r.vals,a=r.layer.selectAll("path."+n).data(i,PL);a.exit().remove(),a.enter().insert("path",":first-child").classed(n,1).classed("crisp",1).call(aM.stroke,t.dividercolor).style("stroke-width",Xp.crispRound(e,t.dividerwidth,1)+"px"),a.attr("transform",r.transFn).attr("d",r.path)}Qn.getPxPosition=function(e,t){var r=e._fullLayout._size,n=t._id.charAt(0),i=t.side,a;if(t.anchor!=="free"?a=t._anchorAxis:n==="x"?a={_offset:r.t+(1-(t.position||0))*r.h,_length:0}:n==="y"&&(a={_offset:r.l+(t.position||0)*r.w+t._shift,_length:0}),i==="top"||i==="left")return a._offset;if(i==="bottom"||i==="right")return a._offset+a._length};function _se(e){var t=e.title.font.size,r=(e.title.text.match(kb.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?t*(Lb+r*sM):r?t*(r+1)*sM:t}function clt(e,t){var r=e._fullLayout,n=t._id,i=n.charAt(0),a=t.title.font.size,o,s=(t.title.text.match(kb.BR_TAG_ALL)||[]).length;if(t.title.hasOwnProperty("standoff"))t.side==="bottom"||t.side==="right"?o=t._depth+t.title.standoff+a*Lb:(t.side==="top"||t.side==="left")&&(o=t._depth+t.title.standoff+a*(iM+s*sM));else{var l=uM(t);if(t.type==="multicategory")o=t._depth;else{var u=1.5*a;l&&(u=.5*a,t.ticks==="outside"&&(u+=t.ticklen)),o=10+u+(t.linewidth?t.linewidth-1:0)}l||(i==="x"?o+=t.side==="top"?a*(t.showticklabels?1:0):a*(t.showticklabels?1.5:.5):o+=t.side==="right"?a*(t.showticklabels?1:.5):a*(t.showticklabels?.5:0))}var c=Qn.getPxPosition(e,t),f,h,d;i==="x"?(h=t._offset+t._length/2,d=t.side==="top"?c-o:c+o):(d=t._offset+t._length/2,h=t.side==="right"?c+o:c-o,f={rotate:"-90",offset:0});var v;if(t.type!=="multicategory"){var _=t._selections[t._id+"tick"];if(v={selection:_,side:t.side},_&&_.node()&&_.node().parentNode){var b=Xp.getTranslate(_.node().parentNode);v.offsetLeft=b.x,v.offsetTop=b.y}t.title.hasOwnProperty("standoff")&&(v.pad=0)}return t._titleStandoff=o,Cst.draw(e,n+"title",{propContainer:t,propName:t._name+".title.text",placeholder:r._dfltTitle[i],avoid:v,transform:f,attributes:{x:h,y:d,"text-anchor":"middle"}})}Qn.shouldShowZeroLine=function(e,t,r){var n=Jo.simpleMap(t.range,t.r2l);return n[0]*n[1]<=0&&t.zeroline&&(t.type==="linear"||t.type==="-")&&!(t.rangebreaks&&t.maskBreaks(0)===CL)&&(kse(t,0)||!flt(e,t,r,n)||hlt(e,t))};Qn.clipEnds=function(e,t){return t.filter(function(r){return kse(e,r.x)})};function kse(e,t){var r=e.l2p(t);return r>1&&r1)for(i=1;i=i.min&&e=Fst:/%L/.test(t)?e>=Dst:/%[SX]/.test(t)?e>=EL:/%M/.test(t)?e>=oM:/%[HI]/.test(t)?e>=xm:/%p/.test(t)?e>=s_:/%[Aadejuwx]/.test(t)?e>=Ov:/%[UVW]/.test(t)?e>=Zp:/%[Bbm]/.test(t)?e>=ML:/%[q]/.test(t)?e>=SL:/%[Yy]/.test(t)?e>=AL:!0}});var yB=ye((Xnr,Ise)=>{"use strict";Ise.exports=function(t,r,n){var i,a;if(n){var o=r==="reversed"||r==="min reversed"||r==="max reversed";i=n[o?1:0],a=n[o?0:1]}var s=t("autorangeoptions.minallowed",a===null?i:void 0),l=t("autorangeoptions.maxallowed",i===null?a:void 0);s===void 0&&t("autorangeoptions.clipmin"),l===void 0&&t("autorangeoptions.clipmax"),t("autorangeoptions.include")}});var _B=ye((Znr,Rse)=>{"use strict";var ylt=yB();Rse.exports=function(t,r,n,i){var a=r._template||{},o=r.type||a.type||"-";n("minallowed"),n("maxallowed");var s=n("range");if(!s){var l;!i.noInsiderange&&o!=="log"&&(l=n("insiderange"),l&&(l[0]===null||l[1]===null)&&(r.insiderange=!1,l=void 0),l&&(s=n("range",l)))}var u=r.getAutorangeDflt(s,i),c=n("autorange",u),f;s&&(s[0]===null&&s[1]===null||(s[0]===null||s[1]===null)&&(c==="reversed"||c===!0)||s[0]!==null&&(c==="min"||c==="max reversed")||s[1]!==null&&(c==="max"||c==="min reversed"))&&(s=void 0,delete r.range,r.autorange=!0,f=!0),f||(u=r.getAutorangeDflt(s,i),c=n("autorange",u)),c&&(ylt(n,c,s),(o==="linear"||o==="-")&&n("rangemode")),r.cleanRange()}});var Fse=ye((Ynr,Dse)=>{var _lt={left:0,top:0};Dse.exports=xlt;function xlt(e,t,r){t=t||e.currentTarget||e.srcElement,Array.isArray(r)||(r=[0,0]);var n=e.clientX||0,i=e.clientY||0,a=blt(t);return r[0]=n-a.left,r[1]=i-a.top,r}function blt(e){return e===window||e===document||e===document.body?_lt:e.getBoundingClientRect()}});var RL=ye((Knr,zse)=>{"use strict";var wlt=tq();function Tlt(){var e=!1;try{var t=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,t),window.removeEventListener("test",null,t)}catch(r){e=!1}return e}zse.exports=wlt&&Tlt()});var qse=ye((Jnr,Ose)=>{"use strict";Ose.exports=function(t,r,n,i,a){var o=(t-n)/(i-n),s=o+r/(i-n),l=(o+s)/2;return a==="left"||a==="bottom"?o:a==="center"||a==="middle"?l:a==="right"||a==="top"?s:o<2/3-l?o:s>4/3-l?s:l}});var Use=ye(($nr,Nse)=>{"use strict";var Bse=Dr(),Alt=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];Nse.exports=function(t,r,n,i){return n==="left"?t=0:n==="center"?t=1:n==="right"?t=2:t=Bse.constrain(Math.floor(t*3),0,2),i==="bottom"?r=0:i==="middle"?r=1:i==="top"?r=2:r=Bse.constrain(Math.floor(r*3),0,2),Alt[r][t]}});var Gse=ye((Qnr,Vse)=>{"use strict";var Slt=y3(),Mlt=z6(),Elt=BS().getGraphDiv,klt=FS(),xB=Vse.exports={};xB.wrapped=function(e,t,r){e=Elt(e),e._fullLayout&&Mlt.clear(e._fullLayout._uid+klt.HOVERID),xB.raw(e,t,r)};xB.raw=function(t,r){var n=t._fullLayout,i=t._hoverdata;r||(r={}),!(r.target&&!t._dragged&&Slt.triggerHandler(t,"plotly_beforehover",r)===!1)&&(n._hoverlayer.selectAll("g").remove(),n._hoverlayer.selectAll("line").remove(),n._hoverlayer.selectAll("circle").remove(),t._hoverdata=void 0,r.target&&i&&t.emit("plotly_unhover",{event:r,points:i}))}});var yv=ye((ear,Xse)=>{"use strict";var Clt=Fse(),bB=iq(),Llt=RL(),Plt=Dr().removeElement,Ilt=hd(),Pb=Xse.exports={};Pb.align=qse();Pb.getCursor=Use();var jse=Gse();Pb.unhover=jse.wrapped;Pb.unhoverRaw=jse.raw;Pb.init=function(t){var r=t.gd,n=1,i=r._context.doubleClickDelay,a=t.element,o,s,l,u,c,f,h,d;r._mouseDownTime||(r._mouseDownTime=0),a.style.pointerEvents="all",a.onmousedown=b,Llt?(a._ontouchstart&&a.removeEventListener("touchstart",a._ontouchstart),a._ontouchstart=b,a.addEventListener("touchstart",b,{passive:!1})):a.ontouchstart=b;function v(E,S,L){return Math.abs(E)i&&(n=Math.max(n-1,1)),r._dragged)t.doneFn&&t.doneFn();else{var S;f.target===h?S=f:(S={target:h,srcElement:h,toElement:h},Object.keys(f).concat(Object.keys(f.__proto__)).forEach(L=>{var x=f[L];!S[L]&&typeof x!="function"&&(S[L]=x)})),t.clickFn&&t.clickFn(n,S),d||h.dispatchEvent(new MouseEvent("click",E))}r._dragging=!1,r._dragged=!1}};function Wse(){var e=document.createElement("div");e.className="dragcover";var t=e.style;return t.position="fixed",t.left=0,t.right=0,t.top=0,t.bottom=0,t.zIndex=999999999,t.background="none",document.body.appendChild(e),e}Pb.coverSlip=Wse;function Hse(e){return Clt(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Ag=ye((tar,Zse)=>{"use strict";Zse.exports=function(t,r){(t.attr("class")||"").split(" ").forEach(function(n){n.indexOf("cursor-")===0&&t.classed(n,!1)}),r&&t.classed("cursor-"+r,!0)}});var Jse=ye((rar,Kse)=>{"use strict";var wB=Ag(),cM="data-savedcursor",Yse="!!";Kse.exports=function(t,r){var n=t.attr(cM);if(r){if(!n){for(var i=(t.attr("class")||"").split(" "),a=0;a{"use strict";var TB=ec(),Rlt=Lh();$se.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:Rlt.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:TB({editType:"legend"}),grouptitlefont:TB({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:TB({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var FL=ye(DL=>{"use strict";DL.isGrouped=function(t){return(t.traceorder||"").indexOf("grouped")!==-1};DL.isVertical=function(t){return t.orientation!=="h"};DL.isReversed=function(t){return(t.traceorder||"").indexOf("reversed")!==-1}});var EB=ye((aar,Qse)=>{"use strict";var SB=qa(),Yp=Dr(),Dlt=vl(),Flt=Gl(),zlt=AB(),Olt=u3(),MB=FL();function qlt(e,t,r,n){var i=t[e]||{},a=Dlt.newContainer(r,e);function o(H,N){return Yp.coerce(i,a,zlt,H,N)}var s=Yp.coerceFont(o,"font",r.font);o("bgcolor",r.paper_bgcolor),o("bordercolor");var l=o("visible");if(l){for(var u,c=function(H,N){var j=u._input,re=u;return Yp.coerce(j,re,Flt,H,N)},f=r.font||{},h=Yp.coerceFont(o,"grouptitlefont",f,{overrideDflt:{size:Math.round(f.size*1.1)}}),d=0,v=!1,_="normal",b=(r.shapes||[]).filter(function(H){return H.showlegend}),p=n.concat(b).filter(function(H){return e===(H.legend||"legend")}),k=0;k(e==="legend"?1:0));if(S===!1&&(r[e]=void 0),!(S===!1&&!i.uirevision)&&(o("uirevision",r.uirevision),S!==!1)){o("borderwidth");var L=o("orientation"),x=o("yref"),C=o("xref"),M=L==="h",g=x==="paper",P=C==="paper",T,z,O,V="left";M?(T=0,SB.getComponentMethod("rangeslider","isVisible")(t.xaxis)?g?(z=1.1,O="bottom"):(z=1,O="top"):g?(z=-.1,O="top"):(z=0,O="bottom")):(z=1,O="auto",P?T=1.02:(T=1,V="right")),Yp.coerce(i,a,{x:{valType:"number",editType:"legend",min:P?-2:0,max:P?3:1,dflt:T}},"x"),Yp.coerce(i,a,{y:{valType:"number",editType:"legend",min:g?-2:0,max:g?3:1,dflt:z}},"y"),o("traceorder",_),MB.isGrouped(r[e])&&o("tracegroupgap"),o("entrywidth"),o("entrywidthmode"),o("indentation"),o("itemsizing"),o("itemwidth"),o("itemclick"),o("itemdoubleclick"),o("groupclick"),o("xanchor",V),o("yanchor",O),o("maxheight"),o("valign"),Yp.noneOrAll(i,a,["x","y"]);var G=o("title.text");if(G){o("title.side",M?"left":"top");var Z=Yp.extendFlat({},s,{size:Yp.bigFont(s.size)});Yp.coerceFont(o,"title.font",Z)}}}}Qse.exports=function(t,r,n){var i,a=n.slice(),o=r.shapes;if(o)for(i=0;i{"use strict";var O3=qa(),CB=Dr(),Blt=CB.pushUnique,kB=!0;ele.exports=function(t,r,n){var i=r._fullLayout;if(r._dragged||r._editing)return;var a=i.legend.itemclick,o=i.legend.itemdoubleclick,s=i.legend.groupclick;n===1&&a==="toggle"&&o==="toggleothers"&&kB&&r.data&&r._context.showTips&&CB.notifier(CB._(r,"Double-click on legend to isolate one trace"),"long"),kB=!1;var l;if(n===1?l=a:n===2&&(l=o),!l)return;var u=s==="togglegroup",c=i.hiddenlabels?i.hiddenlabels.slice():[],f=t.data()[0][0];if(f.groupTitle&&f.noClick)return;var h=r._fullData,d=(i.shapes||[]).filter(function(Gt){return Gt.showlegend}),v=h.concat(d),_=f.trace;_._isShape&&(_=_._fullInput);var b=_.legendgroup,p,k,E,S,L,x,C={},M=[],g=[],P=[];function T(Gt,Nt){var Jt=M.indexOf(Gt),sr=C.visible;return sr||(sr=C.visible=[]),M.indexOf(Gt)===-1&&(M.push(Gt),Jt=M.length-1),sr[Jt]=Nt,Jt}var z=(i.shapes||[]).map(function(Gt){return Gt._input}),O=!1;function V(Gt,Nt){z[Gt].visible=Nt,O=!0}function G(Gt,Nt){if(!(f.groupTitle&&!u)){var Jt=Gt._fullInput||Gt,sr=Jt._isShape,wr=Jt.index;wr===void 0&&(wr=Jt._index);var cr=Jt.visible===!1?!1:Nt;sr?V(wr,cr):T(wr,cr)}}var Z=_.legend,H=_._fullInput,N=H&&H._isShape;if(!N&&O3.traceIs(_,"pie-like")){var j=f.label,re=c.indexOf(j);if(l==="toggle")re===-1?c.push(j):c.splice(re,1);else if(l==="toggleothers"){var oe=re!==-1,_e=[];for(p=0;p{"use strict";rle.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var ale=ye((lar,nle)=>{"use strict";var ile=qa(),PB=FL();nle.exports=function(t,r,n){var i=r._inHover,a=PB.isGrouped(r),o=PB.isReversed(r),s={},l=[],u=!1,c={},f=0,h=0,d,v;function _(H,N,j){if(r.visible!==!1&&!(n&&H!==r._id))if(N===""||!PB.isGrouped(r)){var re="~~i"+f;l.push(re),s[re]=[j],f++}else l.indexOf(N)===-1?(l.push(N),u=!0,s[N]=[j]):s[N].push(j)}for(d=0;dP&&(g=P)}C[d][0]._groupMinRank=g,C[d][0]._preGroupSort=d}var T=function(H,N){return H[0]._groupMinRank-N[0]._groupMinRank||H[0]._preGroupSort-N[0]._preGroupSort},z=function(H,N){return H.trace.legendrank-N.trace.legendrank||H._preSort-N._preSort};for(C.forEach(function(H,N){H[0]._preGroupSort=N}),C.sort(T),d=0;d{"use strict";var zL=Dr();function ole(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}Ib.formatPiePercent=function(t,r){var n=ole((t*100).toPrecision(3));return zL.numSeparate(n,r)+"%"};Ib.formatPieValue=function(t,r){var n=ole(t.toPrecision(10));return zL.numSeparate(n,r)};Ib.getFirstFilled=function(t,r){if(zL.isArrayOrTypedArray(t))for(var n=0;n{"use strict";var Nlt=So(),Ult=ka();sle.exports=function(t,r,n,i){var a=n.marker.pattern;a&&a.shape?Nlt.pointStyle(t,n,i,r):Ult.fill(t,r.color)}});var q3=ye((far,fle)=>{"use strict";var ule=ka(),cle=l_().castOption,Vlt=lle();fle.exports=function(t,r,n,i){var a=n.marker.line,o=cle(a.color,r.pts)||ule.defaultLine,s=cle(a.width,r.pts)||0;t.call(Vlt,r,n,i).style("stroke-width",s).call(ule.stroke,o)}});var FB=ye((har,mle)=>{"use strict";var qv=Oa(),IB=qa(),_v=Dr(),hle=_v.strTranslate,Kp=So(),w0=ka(),RB=pv().extractOpts,OL=Ru(),Glt=q3(),Hlt=l_().castOption,jlt=LB(),dle=12,vle=5,Rb=2,Wlt=10,B3=5;mle.exports=function(t,r,n){var i=r._fullLayout;n||(n=i.legend);var a=n.itemsizing==="constant",o=n.itemwidth,s=(o+jlt.itemGap*2)/2,l=hle(s,0),u=function(C,M,g,P){var T;if(C+1)T=C;else if(M&&M.width>0)T=M.width;else return 0;return a?P:Math.min(T,g)};t.each(function(C){var M=qv.select(this),g=_v.ensureSingle(M,"g","layers");g.style("opacity",C[0].trace.opacity);var P=n.indentation,T=n.valign,z=C[0].lineHeight,O=C[0].height;if(T==="middle"&&P===0||!z||!O)g.attr("transform",null);else{var V={top:1,bottom:-1}[T],G=V*(.5*(z-O+3))||0,Z=n.indentation;g.attr("transform",hle(Z,G))}var H=g.selectAll("g.legendfill").data([C]);H.enter().append("g").classed("legendfill",!0);var N=g.selectAll("g.legendlines").data([C]);N.enter().append("g").classed("legendlines",!0);var j=g.selectAll("g.legendsymbols").data([C]);j.enter().append("g").classed("legendsymbols",!0),j.selectAll("g.legendpoints").data([C]).enter().append("g").classed("legendpoints",!0)}).each(x).each(h).each(v).each(d).each(b).each(S).each(E).each(c).each(f).each(p).each(k);function c(C){var M=ple(C),g=M.showFill,P=M.showLine,T=M.showGradientLine,z=M.showGradientFill,O=M.anyFill,V=M.anyLine,G=C[0],Z=G.trace,H,N,j=RB(Z),re=j.colorscale,oe=j.reversescale,_e=function(Ae){if(Ae.size())if(g)Kp.fillGroupStyle(Ae,r,!0);else{var Fe="legendfill-"+Z.uid;Kp.gradient(Ae,r,Fe,DB(oe),re,"fill")}},Ee=function(Ae){if(Ae.size()){var Fe="legendline-"+Z.uid;Kp.lineGroupStyle(Ae),Kp.gradient(Ae,r,Fe,DB(oe),re,"stroke")}},Ce=OL.hasMarkers(Z)||!O?"M5,0":V?"M5,-2":"M5,-3",me=qv.select(this),ie=me.select(".legendfill").selectAll("path").data(g||z?[C]:[]);if(ie.enter().append("path").classed("js-fill",!0),ie.exit().remove(),ie.attr("d",Ce+"h"+o+"v6h-"+o+"z").call(_e),P||T){var Se=u(void 0,Z.line,Wlt,vle);N=_v.minExtend(Z,{line:{width:Se}}),H=[_v.minExtend(G,{trace:N})]}var Le=me.select(".legendlines").selectAll("path").data(P||T?[H]:[]);Le.enter().append("path").classed("js-line",!0),Le.exit().remove(),Le.attr("d",Ce+(T?"l"+o+",0.0001":"h"+o)).call(P?Kp.lineGroupStyle:Ee)}function f(C){var M=ple(C),g=M.anyFill,P=M.anyLine,T=M.showLine,z=M.showMarker,O=C[0],V=O.trace,G=!z&&!P&&!g&&OL.hasText(V),Z,H;function N(ie,Se,Le,Ae){var Fe=_v.nestedProperty(V,ie).get(),Pe=_v.isArrayOrTypedArray(Fe)&&Se?Se(Fe):Fe;if(a&&Pe&&Ae!==void 0&&(Pe=Ae),Le){if(PeLe[1])return Le[1]}return Pe}function j(ie){return O._distinct&&O.index&&ie[O.index]?ie[O.index]:ie[0]}if(z||G||T){var re={},oe={};if(z){re.mc=N("marker.color",j),re.mx=N("marker.symbol",j),re.mo=N("marker.opacity",_v.mean,[.2,1]),re.mlc=N("marker.line.color",j),re.mlw=N("marker.line.width",_v.mean,[0,5],Rb),oe.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var _e=N("marker.size",_v.mean,[2,16],dle);re.ms=_e,oe.marker.size=_e}T&&(oe.line={width:N("line.width",j,[0,10],vle)}),G&&(re.tx="Aa",re.tp=N("textposition",j),re.ts=10,re.tc=N("textfont.color",j),re.tf=N("textfont.family",j),re.tw=N("textfont.weight",j),re.ty=N("textfont.style",j),re.tv=N("textfont.variant",j),re.tC=N("textfont.textcase",j),re.tE=N("textfont.lineposition",j),re.tS=N("textfont.shadow",j)),Z=[_v.minExtend(O,re)],H=_v.minExtend(V,oe),H.selectedpoints=null,H.texttemplate=null}var Ee=qv.select(this).select("g.legendpoints"),Ce=Ee.selectAll("path.scatterpts").data(z?Z:[]);Ce.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",l),Ce.exit().remove(),Ce.call(Kp.pointStyle,H,r),z&&(Z[0].mrc=3);var me=Ee.selectAll("g.pointtext").data(G?Z:[]);me.enter().append("g").classed("pointtext",!0).append("text").attr("transform",l),me.exit().remove(),me.selectAll("text").call(Kp.textPointStyle,H,r)}function h(C){var M=C[0].trace,g=M.type==="waterfall";if(C[0]._distinct&&g){var P=C[0].trace[C[0].dir].marker;return C[0].mc=P.color,C[0].mlw=P.line.width,C[0].mlc=P.line.color,_(C,this,"waterfall")}var T=[];M.visible&&g&&(T=C[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var z=qv.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(T);z.enter().append("path").classed("legendwaterfall",!0).attr("transform",l).style("stroke-miterlimit",1),z.exit().remove(),z.each(function(O){var V=qv.select(this),G=M[O[0]].marker,Z=u(void 0,G.line,B3,Rb);V.attr("d",O[1]).style("stroke-width",Z+"px").call(w0.fill,G.color),Z&&V.call(w0.stroke,G.line.color)})}function d(C){_(C,this)}function v(C){_(C,this,"funnel")}function _(C,M,g){var P=C[0].trace,T=P.marker||{},z=T.line||{},O=T.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",V=g?P.visible&&P.type===g:IB.traceIs(P,"bar"),G=qv.select(M).select("g.legendpoints").selectAll("path.legend"+g).data(V?[C]:[]);G.enter().append("path").classed("legend"+g,!0).attr("d",O).attr("transform",l),G.exit().remove(),G.each(function(Z){var H=qv.select(this),N=Z[0],j=u(N.mlw,T.line,B3,Rb);H.style("stroke-width",j+"px");var re=N.mcc;if(!n._inHover&&"mc"in N){var oe=RB(T),_e=oe.mid;_e===void 0&&(_e=(oe.max+oe.min)/2),re=Kp.tryColorscale(T,"")(_e)}var Ee=re||N.mc||T.color,Ce=T.pattern,me=Kp.getPatternAttr,ie=Ce&&(me(Ce.shape,0,"")||me(Ce.path,0,""));if(ie){var Se=me(Ce.bgcolor,0,null),Le=me(Ce.fgcolor,0,null),Ae=Ce.fgopacity,Fe=gle(Ce.size,8,10),Pe=gle(Ce.solidity,.5,1),ge="legend-"+P.uid;H.call(Kp.pattern,"legend",r,ge,ie,Fe,Pe,re,Ce.fillmode,Se,Le,Ae)}else H.call(w0.fill,Ee);j&&w0.stroke(H,N.mlc||z.color)})}function b(C){var M=C[0].trace,g=qv.select(this).select("g.legendpoints").selectAll("path.legendbox").data(M.visible&&IB.traceIs(M,"box-violin")?[C]:[]);g.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",l),g.exit().remove(),g.each(function(){var P=qv.select(this);if((M.boxpoints==="all"||M.points==="all")&&w0.opacity(M.fillcolor)===0&&w0.opacity((M.line||{}).color)===0){var T=_v.minExtend(M,{marker:{size:a?dle:_v.constrain(M.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});g.call(Kp.pointStyle,T,r)}else{var z=u(void 0,M.line,B3,Rb);P.style("stroke-width",z+"px").call(w0.fill,M.fillcolor),z&&w0.stroke(P,M.line.color)}})}function p(C){var M=C[0].trace,g=qv.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(M.visible&&M.type==="candlestick"?[C,C]:[]);g.enter().append("path").classed("legendcandle",!0).attr("d",function(P,T){return T?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",l).style("stroke-miterlimit",1),g.exit().remove(),g.each(function(P,T){var z=qv.select(this),O=M[T?"increasing":"decreasing"],V=u(void 0,O.line,B3,Rb);z.style("stroke-width",V+"px").call(w0.fill,O.fillcolor),V&&w0.stroke(z,O.line.color)})}function k(C){var M=C[0].trace,g=qv.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(M.visible&&M.type==="ohlc"?[C,C]:[]);g.enter().append("path").classed("legendohlc",!0).attr("d",function(P,T){return T?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",l).style("stroke-miterlimit",1),g.exit().remove(),g.each(function(P,T){var z=qv.select(this),O=M[T?"increasing":"decreasing"],V=u(void 0,O.line,B3,Rb);z.style("fill","none").call(Kp.dashLine,O.line.dash,V),V&&w0.stroke(z,O.line.color)})}function E(C){L(C,this,"pie")}function S(C){L(C,this,"funnelarea")}function L(C,M,g){var P=C[0],T=P.trace,z=g?T.visible&&T.type===g:IB.traceIs(T,g),O=qv.select(M).select("g.legendpoints").selectAll("path.legend"+g).data(z?[C]:[]);if(O.enter().append("path").classed("legend"+g,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",l),O.exit().remove(),O.size()){var V=T.marker||{},G=u(Hlt(V.line.width,P.pts),V.line,B3,Rb),Z="pieLike",H=_v.minExtend(T,{marker:{line:{width:G}}},Z),N=_v.minExtend(P,{trace:H},Z);Glt(O,N,H,r)}}function x(C){var M=C[0].trace,g,P=[];if(M.visible)switch(M.type){case"histogram2d":case"heatmap":P=[["M-15,-2V4H15V-2Z"]],g=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":P=[["M-6,-6V6H6V-6Z"]],g=!0;break;case"densitymapbox":case"densitymap":P=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],g="radial";break;case"cone":P=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],g=!1;break;case"streamtube":P=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],g=!1;break;case"surface":P=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],g=!0;break;case"mesh3d":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],g=!1;break;case"volume":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],g=!0;break;case"isosurface":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],g=!1;break}var T=qv.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(P);T.enter().append("path").classed("legend3dandfriends",!0).attr("transform",l).style("stroke-miterlimit",1),T.exit().remove(),T.each(function(z,O){var V=qv.select(this),G=RB(M),Z=G.colorscale,H=G.reversescale,N=function(_e){if(_e.size()){var Ee="legendfill-"+M.uid;Kp.gradient(_e,r,Ee,DB(H,g==="radial"),Z,"fill")}},j;if(Z){if(!g){var oe=Z.length;j=O===0?Z[H?oe-1:0][1]:O===1?Z[H?0:oe-1][1]:Z[Math.floor((oe-1)/2)][1]}}else{var re=M.vertexcolor||M.facecolor||M.color;j=_v.isArrayOrTypedArray(re)?re[O]||re[0]:re}V.attr("d",z[0]),j?V.call(w0.fill,j):V.call(N)})}};function DB(e,t){var r=t?"radial":"horizontal";return r+(e?"":"reversed")}function ple(e){var t=e[0].trace,r=t.contours,n=OL.hasLines(t),i=OL.hasMarkers(t),a=t.visible&&t.fill&&t.fill!=="none",o=!1,s=!1;if(r){var l=r.coloring;l==="lines"?o=!0:n=l==="none"||l==="heatmap"||r.showlines,r.type==="constraint"?a=r._operation!=="=":(l==="fill"||l==="heatmap")&&(s=!0)}return{showMarker:i,showLine:n,showFill:a,showGradientLine:o,showGradientFill:s,anyLine:n||o,anyFill:a||s}}function gle(e,t,r){return e&&_v.isArrayOrTypedArray(e)?t:e>r?r:e}});var BB=ye((dar,Ele)=>{"use strict";var Mp=Oa(),Rh=Dr(),OB=Mc(),V3=qa(),yle=y3(),zB=yv(),Dh=So(),BL=ka(),Db=ru(),_le=tle(),ed=LB(),qB=$h(),Sle=qB.LINE_SPACING,U3=qB.FROM_TL,xle=qB.FROM_BR,ble=ale(),Xlt=FB(),wle=FL(),N3=1,Zlt=/^legend[0-9]*$/;Ele.exports=function(t,r){if(r)Tle(t,r);else{var n=t._fullLayout,i=n._legends,a=n._infolayer.selectAll('[class^="legend"]');a.each(function(){var u=Mp.select(this),c=u.attr("class"),f=c.split(" ")[0];f.match(Zlt)&&i.indexOf(f)===-1&&u.remove()});for(var o=0;o1)}var v=n.hiddenlabels||[];if(!s&&(!n.showlegend||!l.length))return o.selectAll("."+i).remove(),n._topdefs.select("#"+a).remove(),OB.autoMargin(e,i);var _=Rh.ensureSingle(o,"g",i,function(M){s||M.attr("pointer-events","all")}),b=Rh.ensureSingleById(n._topdefs,"clipPath",a,function(M){M.append("rect")}),p=Rh.ensureSingle(_,"rect","bg",function(M){M.attr("shape-rendering","crispEdges")});p.call(BL.stroke,r.bordercolor).call(BL.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px");var k=Rh.ensureSingle(_,"g","scrollbox"),E=r.title;r._titleWidth=0,r._titleHeight=0;var S;E.text?(S=Rh.ensureSingle(k,"text",i+"titletext"),S.attr("text-anchor","start").call(Dh.font,E.font).text(E.text),NL(S,k,e,r,N3)):k.selectAll("."+i+"titletext").remove();var L=Rh.ensureSingle(_,"rect","scrollbar",function(M){M.attr(ed.scrollBarEnterAttrs).call(BL.fill,ed.scrollBarColor)}),x=k.selectAll("g.groups").data(l);x.enter().append("g").attr("class","groups"),x.exit().remove();var C=x.selectAll("g.traces").data(Rh.identity);C.enter().append("g").attr("class","traces"),C.exit().remove(),C.style("opacity",function(M){var g=M[0].trace;return V3.traceIs(g,"pie-like")?v.indexOf(M[0].label)!==-1?.5:1:g.visible==="legendonly"?.5:1}).each(function(){Mp.select(this).call(Klt,e,r)}).call(Xlt,e,r).each(function(){s||Mp.select(this).call(Jlt,e,i)}),Rh.syncOrAsync([OB.previousPromises,function(){return eut(e,x,C,r)},function(){var M=n._size,g=r.borderwidth,P=r.xref==="paper",T=r.yref==="paper";if(E.text&&Ylt(S,r,g),!s){var z,O;P?z=M.l+M.w*r.x-U3[UL(r)]*r._width:z=n.width*r.x-U3[UL(r)]*r._width,T?O=M.t+M.h*(1-r.y)-U3[VL(r)]*r._effHeight:O=n.height*(1-r.y)-U3[VL(r)]*r._effHeight;var V=tut(e,i,z,O);if(V)return;if(n.margin.autoexpand){var G=z,Z=O;z=P?Rh.constrain(z,0,n.width-r._width):G,O=T?Rh.constrain(O,0,n.height-r._effHeight):Z,z!==G&&Rh.log("Constrain "+i+".x to make legend fit inside graph"),O!==Z&&Rh.log("Constrain "+i+".y to make legend fit inside graph")}Dh.setTranslate(_,z,O)}if(L.on(".drag",null),_.on("wheel",null),s||r._height<=r._maxHeight||e._context.staticPlot){var H=r._effHeight;s&&(H=r._height),p.attr({width:r._width-g,height:H-g,x:g/2,y:g/2}),Dh.setTranslate(k,0,0),b.select("rect").attr({width:r._width-2*g,height:H-2*g,x:g,y:g}),Dh.setClipUrl(k,a,e),Dh.setRect(L,0,0,0,0),delete r._scrollY}else{var N=Math.max(ed.scrollBarMinHeight,r._effHeight*r._effHeight/r._height),j=r._effHeight-N-2*ed.scrollBarMargin,re=r._height-r._effHeight,oe=j/re,_e=Math.min(r._scrollY||0,re);p.attr({width:r._width-2*g+ed.scrollBarWidth+ed.scrollBarMargin,height:r._effHeight-g,x:g/2,y:g/2}),b.select("rect").attr({width:r._width-2*g+ed.scrollBarWidth+ed.scrollBarMargin,height:r._effHeight-2*g,x:g,y:g+_e}),Dh.setClipUrl(k,a,e),Fe(_e,N,oe),_.on("wheel",function(){_e=Rh.constrain(r._scrollY+Mp.event.deltaY/re*j,0,re),Fe(_e,N,oe),_e!==0&&_e!==re&&Mp.event.preventDefault()});var Ee,Ce,me,ie=function(Ze,ut,pt){var Zt=(pt-ut)/oe+Ze;return Rh.constrain(Zt,0,re)},Se=function(Ze,ut,pt){var Zt=(ut-pt)/oe+Ze;return Rh.constrain(Zt,0,re)},Le=Mp.behavior.drag().on("dragstart",function(){var Ze=Mp.event.sourceEvent;Ze.type==="touchstart"?Ee=Ze.changedTouches[0].clientY:Ee=Ze.clientY,me=_e}).on("drag",function(){var Ze=Mp.event.sourceEvent;Ze.buttons===2||Ze.ctrlKey||(Ze.type==="touchmove"?Ce=Ze.changedTouches[0].clientY:Ce=Ze.clientY,_e=ie(me,Ee,Ce),Fe(_e,N,oe))});L.call(Le);var Ae=Mp.behavior.drag().on("dragstart",function(){var Ze=Mp.event.sourceEvent;Ze.type==="touchstart"&&(Ee=Ze.changedTouches[0].clientY,me=_e)}).on("drag",function(){var Ze=Mp.event.sourceEvent;Ze.type==="touchmove"&&(Ce=Ze.changedTouches[0].clientY,_e=Se(me,Ee,Ce),Fe(_e,N,oe))});k.call(Ae)}function Fe(Ze,ut,pt){r._scrollY=e._fullLayout[i]._scrollY=Ze,Dh.setTranslate(k,0,-Ze),Dh.setRect(L,r._width,ed.scrollBarMargin+Ze*pt,ed.scrollBarWidth,ut),b.select("rect").attr("y",g+Ze)}if(e._context.edits.legendPosition){var Pe,ge,Re,ce;_.classed("cursor-move",!0),zB.init({element:_.node(),gd:e,prepFn:function(Ze){if(Ze.target!==L.node()){var ut=Dh.getTranslate(_);Re=ut.x,ce=ut.y}},moveFn:function(Ze,ut){if(Re!==void 0&&ce!==void 0){var pt=Re+Ze,Zt=ce+ut;Dh.setTranslate(_,pt,Zt),Pe=zB.align(pt,r._width,M.l,M.l+M.w,r.xanchor),ge=zB.align(Zt+r._height,-r._height,M.t+M.h,M.t,r.yanchor)}},doneFn:function(){if(Pe!==void 0&&ge!==void 0){var Ze={};Ze[i+".x"]=Pe,Ze[i+".y"]=ge,V3.call("_guiRelayout",e,Ze)}},clickFn:function(Ze,ut){var pt=o.selectAll("g.traces").filter(function(){var Zt=this.getBoundingClientRect();return ut.clientX>=Zt.left&&ut.clientX<=Zt.right&&ut.clientY>=Zt.top&&ut.clientY<=Zt.bottom});pt.size()>0&&Mle(e,_,pt,Ze,ut)}})}}],e)}}function qL(e,t,r){var n=e[0],i=n.width,a=t.entrywidthmode,o=n.trace.legendwidth||t.entrywidth;return a==="fraction"?t._maxWidth*o:r+(o||i)}function Mle(e,t,r,n,i){var a=r.data()[0][0].trace,o={event:i,node:r.node(),curveNumber:a.index,expandedIndex:a.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};a._group&&(o.group=a._group),V3.traceIs(a,"pie-like")&&(o.label=r.datum()[0].label);var s=yle.triggerHandler(e,"plotly_legendclick",o);if(n===1){if(s===!1)return;t._clickTimeout=setTimeout(function(){e._fullLayout&&_le(r,e,n)},e._context.doubleClickDelay)}else if(n===2){t._clickTimeout&&clearTimeout(t._clickTimeout),e._legendMouseDownTime=0;var l=yle.triggerHandler(e,"plotly_legenddoubleclick",o);l!==!1&&s!==!1&&_le(r,e,n)}}function Klt(e,t,r){var n=GL(r),i=e.data()[0][0],a=i.trace,o=V3.traceIs(a,"pie-like"),s=!r._inHover&&t._context.edits.legendText&&!o,l=r._maxNameLength,u,c;i.groupTitle?(u=i.groupTitle.text,c=i.groupTitle.font):(c=r.font,r.entries?u=i.text:(u=o?i.label:a.name,a._meta&&(u=Rh.templateString(u,a._meta))));var f=Rh.ensureSingle(e,"text",n+"text");f.attr("text-anchor","start").call(Dh.font,c).text(s?Ale(u,l):u);var h=r.indentation+r.itemwidth+ed.itemGap*2;Db.positionText(f,h,0),s?f.call(Db.makeEditable,{gd:t,text:u}).call(NL,e,t,r).on("edit",function(d){this.text(Ale(d,l)).call(NL,e,t,r);var v=i.trace._fullInput||{},_={};return _.name=d,v._isShape?V3.call("_guiRelayout",t,"shapes["+a.index+"].name",_.name):V3.call("_guiRestyle",t,_,a.index)}):NL(f,e,t,r)}function Ale(e,t){var r=Math.max(4,t);if(e&&e.trim().length>=r/2)return e;e=e||"";for(var n=r-e.length;n>0;n--)e+=" ";return e}function Jlt(e,t,r){var n=t._context.doubleClickDelay,i,a=1,o=Rh.ensureSingle(e,"rect",r+"toggle",function(s){t._context.staticPlot||s.style("cursor","pointer").attr("pointer-events","all"),s.call(BL.fill,"rgba(0,0,0,0)")});t._context.staticPlot||(o.on("mousedown",function(){i=new Date().getTime(),i-t._legendMouseDownTimen&&(a=Math.max(a-1,1)),Mle(t,s,e,a,Mp.event)}}))}function NL(e,t,r,n,i){n._inHover&&e.attr("data-notex",!0),Db.convertToTspans(e,r,function(){$lt(t,r,n,i)})}function $lt(e,t,r,n){var i=e.data()[0][0];if(!r._inHover&&i&&!i.trace.showlegend){e.remove();return}var a=e.select("g[class*=math-group]"),o=a.node(),s=GL(r);r||(r=t._fullLayout[s]);var l=r.borderwidth,u;n===N3?u=r.title.font:i.groupTitle?u=i.groupTitle.font:u=r.font;var c=u.size*Sle,f,h;if(o){var d=Dh.bBox(o);f=d.height,h=d.width,n===N3?Dh.setTranslate(a,l,l+f*.75):Dh.setTranslate(a,0,f*.25)}else{var v="."+s+(n===N3?"title":"")+"text",_=e.select(v),b=Db.lineCount(_),p=_.node();if(f=c*b,h=p?Dh.bBox(p).width:0,n===N3)r.title.side==="left"&&(h+=ed.itemGap*2),Db.positionText(_,l+ed.titlePad,l+c);else{var k=ed.itemGap*2+r.indentation+r.itemwidth;i.groupTitle&&(k=ed.itemGap,h-=r.indentation+r.itemwidth),Db.positionText(_,k,-c*((b-1)/2-.3))}}n===N3?(r._titleWidth=h,r._titleHeight=f):(i.lineHeight=c,i.height=Math.max(f,16)+3,i.width=h)}function Qlt(e){var t=0,r=0,n=e.title.side;return n&&(n.indexOf("left")!==-1&&(t=e._titleWidth),n.indexOf("top")!==-1&&(r=e._titleHeight)),[t,r]}function eut(e,t,r,n){var i=e._fullLayout,a=GL(n);n||(n=i[a]);var o=i._size,s=wle.isVertical(n),l=wle.isGrouped(n),u=n.entrywidthmode==="fraction",c=n.borderwidth,f=2*c,h=ed.itemGap,d=n.indentation+n.itemwidth+h*2,v=2*(c+h),_=VL(n),b=n.y<0||n.y===0&&_==="top",p=n.y>1||n.y===1&&_==="bottom",k=n.tracegroupgap,E={};let{orientation:S,yref:L}=n,{maxheight:x}=n,C=b||p||S!=="v"||L!=="paper";x||(x=C?.5:1);let M=C?i.height:o.h;n._maxHeight=Math.max(x>1?x:x*M,30);var g=0;n._width=0,n._height=0;var P=Qlt(n);if(s)r.each(function(Fe){var Pe=Fe[0].height;Dh.setTranslate(this,c+P[0],c+P[1]+n._height+Pe/2+h),n._height+=Pe,n._width=Math.max(n._width,Fe[0].width)}),g=d+n._width,n._width+=h+d+f,n._height+=v,l&&(t.each(function(Fe,Pe){Dh.setTranslate(this,0,Pe*n.tracegroupgap)}),n._height+=(n._lgroupsLength-1)*n.tracegroupgap);else{var T=UL(n),z=n.x<0||n.x===0&&T==="right",O=n.x>1||n.x===1&&T==="left",V=p||b,G=i.width/2;n._maxWidth=Math.max(z?V&&T==="left"?o.l+o.w:G:O?V&&T==="right"?o.r+o.w:G:o.w,2*d);var Z=0,H=0;r.each(function(Fe){var Pe=qL(Fe,n,d);Z=Math.max(Z,Pe),H+=Pe}),g=null;var N=0;if(l){var j=0,re=0,oe=0;t.each(function(){var Fe=0,Pe=0;Mp.select(this).selectAll("g.traces").each(function(Re){var ce=qL(Re,n,d),Ze=Re[0].height;Dh.setTranslate(this,P[0],P[1]+c+h+Ze/2+Pe),Pe+=Ze,Fe=Math.max(Fe,ce),E[Re[0].trace.legendgroup]=Fe});var ge=Fe+h;re>0&&ge+c+re>n._maxWidth?(N=Math.max(N,re),re=0,oe+=j+k,j=Pe):j=Math.max(j,Pe),Dh.setTranslate(this,re,oe),re+=ge}),n._width=Math.max(N,re)+c,n._height=oe+j+v}else{var _e=r.size(),Ee=H+f+(_e-1)*h=n._maxWidth&&(N=Math.max(N,Se),me=0,ie+=Ce,n._height+=Ce,Ce=0),Dh.setTranslate(this,P[0]+c+me,P[1]+c+ie+Pe/2+h),Se=me+ge+h,me+=Re,Ce=Math.max(Ce,Pe)}),Ee?(n._width=me+f,n._height=Ce+v):(n._width=Math.max(N,Se)+f,n._height+=Ce+v)}}n._width=Math.ceil(Math.max(n._width+P[0],n._titleWidth+2*(c+ed.titlePad))),n._height=Math.ceil(Math.max(n._height+P[1],n._titleHeight+2*(c+ed.itemGap))),n._effHeight=Math.min(n._height,n._maxHeight);var Le=e._context.edits,Ae=Le.legendText||Le.legendPosition;r.each(function(Fe){var Pe=Mp.select(this).select("."+a+"toggle"),ge=Fe[0].height,Re=Fe[0].trace.legendgroup,ce=qL(Fe,n,d);l&&Re!==""&&(ce=E[Re]);var Ze=Ae?d:g||ce;!s&&!u&&(Ze+=h/2),Dh.setRect(Pe,0,-ge/2,Ze,ge)})}function tut(e,t,r,n){var i=e._fullLayout,a=i[t],o=UL(a),s=VL(a),l=a.xref==="paper",u=a.yref==="paper";e._fullLayout._reservedMargin[t]={};var c=a.y<.5?"b":"t",f=a.x<.5?"l":"r",h={r:i.width-r,l:r+a._width,b:i.height-n,t:n+a._effHeight};if(l&&u)return OB.autoMargin(e,t,{x:a.x,y:a.y,l:a._width*U3[o],r:a._width*xle[o],b:a._effHeight*xle[s],t:a._effHeight*U3[s]});l?e._fullLayout._reservedMargin[t][c]=h[c]:u||a.orientation==="v"?e._fullLayout._reservedMargin[t][f]=h[f]:e._fullLayout._reservedMargin[t][c]=h[c]}function UL(e){return Rh.isRightAnchor(e)?"right":Rh.isCenterAnchor(e)?"center":"left"}function VL(e){return Rh.isBottomAnchor(e)?"bottom":Rh.isMiddleAnchor(e)?"middle":"top"}function GL(e){return e._id||"legend"}});var GB=ye(VB=>{"use strict";var Fb=Oa(),My=Eo(),kle=cd(),zf=Dr(),rut=zf.pushUnique,NB=zf.strTranslate,iut=zf.strRotate,nut=y3(),T0=ru(),aut=Jse(),bm=So(),vd=ka(),HL=yv(),wm=ho(),out=hd().zindexSeparator,H3=qa(),Sg=ip(),zb=FS(),sut=EB(),lut=BB(),zle=zb.YANGLE,UB=Math.PI*zle/180,uut=1/Math.sin(UB),cut=Math.cos(UB),fut=Math.sin(UB),Qc=zb.HOVERARROWSIZE,sl=zb.HOVERTEXTPAD,Cle={box:!0,ohlc:!0,violin:!0,candlestick:!0},hut={scatter:!0,scattergl:!0,splom:!0};function Lle(e,t){return e.distance-t.distance}VB.hover=function(t,r,n,i){t=zf.getGraphDiv(t);var a=r.target;zf.throttle(t._fullLayout._uid+zb.HOVERID,zb.HOVERMINTIME,function(){dut(t,r,n,i,a)})};VB.loneHover=function(t,r){var n=!0;Array.isArray(t)||(n=!1,t=[t]);var i=r.gd,a=Ule(i),o=Vle(i),s=t.map(function(b){var p=b._x0||b.x0||b.x||0,k=b._x1||b.x1||b.x||0,E=b._y0||b.y0||b.y||0,S=b._y1||b.y1||b.y||0,L=b.eventData;if(L){var x=Math.min(p,k),C=Math.max(p,k),M=Math.min(E,S),g=Math.max(E,S),P=b.trace;if(H3.traceIs(P,"gl3d")){var T=i._fullLayout[P.scene]._scene.container,z=T.offsetLeft,O=T.offsetTop;x+=z,C+=z,M+=O,g+=O}L.bbox={x0:x+o,x1:C+o,y0:M+a,y1:g+a},r.inOut_bbox&&r.inOut_bbox.push(L.bbox)}else L=!1;return{color:b.color||vd.defaultLine,x0:b.x0||b.x||0,x1:b.x1||b.x||0,y0:b.y0||b.y||0,y1:b.y1||b.y||0,xLabel:b.xLabel,yLabel:b.yLabel,zLabel:b.zLabel,text:b.text,name:b.name,idealAlign:b.idealAlign,borderColor:b.borderColor,fontFamily:b.fontFamily,fontSize:b.fontSize,fontColor:b.fontColor,fontWeight:b.fontWeight,fontStyle:b.fontStyle,fontVariant:b.fontVariant,nameLength:b.nameLength,textAlign:b.textAlign,trace:b.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:b.hovertemplate||!1,hovertemplateLabels:b.hovertemplateLabels||!1,eventData:L}}),l=!1,u=qle(s,{gd:i,hovermode:"closest",rotateLabels:l,bgColor:r.bgColor||vd.background,container:Fb.select(r.container),outerContainer:r.outerContainer||r.container}),c=u.hoverLabels,f=5,h=0,d=0;c.sort(function(b,p){return b.y0-p.y0}).each(function(b,p){var k=b.y0-b.by/2;k-fC[0]._length||ce<0||ce>M[0]._length)return HL.unhoverRaw(e,t)}if(t.pointerX=Re+C[0]._offset,t.pointerY=ce+M[0]._offset,"xval"in t?Z=Sg.flat(a,t.xval):Z=Sg.p2c(C,Re),"yval"in t?H=Sg.flat(a,t.yval):H=Sg.p2c(M,ce),!My(Z[0])||!My(H[0]))return zf.warn("Fx.hover failed",t,e),HL.unhoverRaw(e,t)}var pt=1/0;function Zt(wi,On){for(j=0;jLe&&(V.splice(0,Le),pt=V[0].distance),f&&O!==0&&V.length===0){Se.distance=O,Se.index=!1;var Ut=oe._module.hoverPoints(Se,me,ie,"closest",{hoverLayer:s._hoverlayer});if(Ut&&(Ut=Ut.filter(function(ri){return ri.spikeDistance<=O})),Ut&&Ut.length){var wt,rr=Ut.filter(function(ri){return ri.xa.showspikes&&ri.xa.spikesnap!=="hovered data"});if(rr.length){var nr=rr[0];My(nr.x0)&&My(nr.y0)&&(wt=lt(nr),(!Ae.vLinePoint||Ae.vLinePoint.spikeDistance>wt.spikeDistance)&&(Ae.vLinePoint=wt))}var Er=Ut.filter(function(ri){return ri.ya.showspikes&&ri.ya.spikesnap!=="hovered data"});if(Er.length){var Xr=Er[0];My(Xr.x0)&&My(Xr.y0)&&(wt=lt(Xr),(!Ae.hLinePoint||Ae.hLinePoint.spikeDistance>wt.spikeDistance)&&(Ae.hLinePoint=wt))}}}}}Zt();function st(wi,On,qn){for(var Fn=null,ra=1/0,la,Ut=0;Utwi.trace.index===It.trace.index):V=[It];var mt=V.length,er=Fle("x",It,s),lr=Fle("y",It,s);Zt(er,lr);var Tr=[],Lr={},ti=0,Br=function(wi){var On=Cle[wi.trace.type]?Ole(wi):wi.trace.index;if(!Lr[On])ti++,Lr[On]=ti,Tr.push(wi);else{var qn=Lr[On]-1,Fn=Tr[qn];qn>0&&Math.abs(wi.distance)mt-1;Vr--)Br(V[Vr]);V=Tr,sr()}var dt=e._hoverdata,Ge=[],Je=Ule(e),je=Vle(e);for(let wi of V){var tt=Sg.makeEventData(wi,wi.trace,wi.cd);if(wi.hovertemplate!==!1){var xt=!1;wi.cd[wi.index]&&wi.cd[wi.index].ht&&(xt=wi.cd[wi.index].ht),wi.hovertemplate=xt||wi.trace.hovertemplate||!1}if(wi.xa&&wi.ya){var Ie=wi.x0+wi.xa._offset,xe=wi.x1+wi.xa._offset,ke=wi.y0+wi.ya._offset,vt=wi.y1+wi.ya._offset,ir=Math.min(Ie,xe),ar=Math.max(Ie,xe),vr=Math.min(ke,vt),ii=Math.max(ke,vt);tt.bbox={x0:ir+je,x1:ar+je,y0:vr+Je,y1:ii+Je}}wi.eventData=[tt],Ge.push(tt)}e._hoverdata=Ge;var pi=h==="y"&&(G.length>1||V.length>1)||h==="closest"&&Fe&&V.length>1,$r=vd.combine(s.plot_bgcolor||vd.background,s.paper_bgcolor),di=qle(V,{gd:e,hovermode:h,rotateLabels:pi,bgColor:$r,container:s._hoverlayer,outerContainer:s._paper.node(),commonLabelOpts:s.hoverlabel,hoverdistance:s.hoverdistance}),ji=di.hoverLabels;if(Sg.isUnifiedHover(h)||(put(ji,pi,s,di.commonLabelBoundingBox),Nle(ji,pi,s._invScaleX,s._invScaleY)),i&&i.tagName){var In=H3.getComponentMethod("annotations","hasClickToShow")(e,Ge);aut(Fb.select(i),In?"pointer":"")}!i||n||!yut(e,t,dt)||(dt&&e.emit("plotly_unhover",{event:t,points:dt}),e.emit("plotly_hover",{event:t,points:e._hoverdata,xaxes:C,yaxes:M,xvals:Z,yvals:H}))}function Ole(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var vut=/([\s\S]*)<\/extra>/;function qle(e,t){var r=t.gd,n=r._fullLayout,i=t.hovermode,a=t.rotateLabels,o=t.bgColor,s=t.container,l=t.outerContainer,u=t.commonLabelOpts||{};if(e.length===0)return[[]];var c=t.fontFamily||zb.HOVERFONT,f=t.fontSize||zb.HOVERFONTSIZE,h=t.fontWeight||n.font.weight,d=t.fontStyle||n.font.style,v=t.fontVariant||n.font.variant,_=t.fontTextcase||n.font.textcase,b=t.fontLineposition||n.font.lineposition,p=t.fontShadow||n.font.shadow,k=e[0],E=k.xa,S=k.ya,L=i.charAt(0),x=L+"Label",C=k[x];if(C===void 0&&E.type==="multicategory")for(var M=0;Mn.width-Je&&(je=n.width-Je),It.attr("d","M"+(Vr-je)+",0L"+(Vr-je+Qc)+","+Ge+Qc+"H"+Je+"v"+Ge+(sl*2+Br.height)+"H"+-Je+"V"+Ge+Qc+"H"+(Vr-je-Qc)+"Z"),Vr=je,j.minX=Vr-Je,j.maxX=Vr+Je,E.side==="top"?(j.minY=dt-(sl*2+Br.height),j.maxY=dt-sl):(j.minY=dt+sl,j.maxY=dt+(sl*2+Br.height))}else{var tt,xt,Ie;S.side==="right"?(tt="start",xt=1,Ie="",Vr=E._offset+E._length):(tt="end",xt=-1,Ie="-",Vr=E._offset),dt=S._offset+(k.y0+k.y1)/2,mt.attr("text-anchor",tt),It.attr("d","M0,0L"+Ie+Qc+","+Qc+"V"+(sl+Br.height/2)+"h"+Ie+(sl*2+Br.width)+"V-"+(sl+Br.height/2)+"H"+Ie+Qc+"V-"+Qc+"Z"),j.minY=dt-(sl+Br.height/2),j.maxY=dt+(sl+Br.height/2),S.side==="right"?(j.minX=Vr+Qc,j.maxX=Vr+Qc+(sl*2+Br.width)):(j.minX=Vr-Qc-(sl*2+Br.width),j.maxX=Vr-Qc);var xe=Br.height/2,ke=P-Br.top-xe,vt="clip"+n._uid+"commonlabel"+S._id,ir;if(VrIt.hoverinfo!=="none");if(_t.length===0)return[];var re=n.hoverlabel,oe=re.font,_e=_t[0],Ee=((i==="x unified"?_e.xa:_e.ya).unifiedhovertitle||{}).text,Ce=Ee?zf.hovertemplateString({data:i==="x unified"?[{xa:_e.xa,x:_e.xVal}]:[{ya:_e.ya,y:_e.yVal}],fallback:_e.trace.hovertemplatefallback,locale:n._d3locale,template:Ee}):C,me={showlegend:!0,legend:{title:{text:Ce,font:oe},font:oe,bgcolor:re.bgcolor,bordercolor:re.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:n.legend?n.legend.traceorder:void 0,orientation:"v"}},ie={font:oe};sut(me,ie,r._fullData);var Se=ie.legend;Se.entries=[];for(var Le=0;Le<_t.length;Le++){var Ae=_t[Le];if(Ae.hoverinfo!=="none"){var Fe=Ple(Ae,!0,i,n,C),Pe=Fe[0],ge=Fe[1];Ae.name=ge,ge!==""?Ae.text=ge+" : "+Pe:Ae.text=Pe;var Re=Ae.cd[Ae.index];Re&&(Re.mc&&(Ae.mc=Re.mc),Re.mcc&&(Ae.mc=Re.mcc),Re.mlc&&(Ae.mlc=Re.mlc),Re.mlcc&&(Ae.mlc=Re.mlcc),Re.mlw&&(Ae.mlw=Re.mlw),Re.mrc&&(Ae.mrc=Re.mrc),Re.dir&&(Ae.dir=Re.dir)),Ae._distinct=!0,Se.entries.push([Ae])}}Se.entries.sort(function(It,mt){return It[0].trace.index-mt[0].trace.index}),Se.layer=s,Se._inHover=!0,Se._groupTitleFont=re.grouptitlefont,lut(r,Se);var ce=s.select("g.legend"),Ze=G3(r,ce.node()),ut=Ze.width+2*sl,pt=Ze.height+2*sl,Zt=_t[0],st=(Zt.x0+Zt.x1)/2,lt=(Zt.y0+Zt.y1)/2,Gt=!(H3.traceIs(Zt.trace,"bar-like")||H3.traceIs(Zt.trace,"box-violin")),Nt,Jt;L==="y"?Gt?(Jt=lt-sl,Nt=lt+sl):(Jt=Math.min.apply(null,_t.map(function(It){return Math.min(It.y0,It.y1)})),Nt=Math.max.apply(null,_t.map(function(It){return Math.max(It.y0,It.y1)}))):Jt=Nt=zf.mean(_t.map(function(It){return(It.y0+It.y1)/2}))-pt/2;var sr,wr;L==="x"?Gt?(sr=st+sl,wr=st-sl):(sr=Math.max.apply(null,_t.map(function(It){return Math.max(It.x0,It.x1)})),wr=Math.min.apply(null,_t.map(function(It){return Math.min(It.x0,It.x1)}))):sr=wr=zf.mean(_t.map(function(It){return(It.x0+It.x1)/2}))-ut/2;var cr=E._offset,$e=S._offset;Nt+=$e,sr+=cr,wr+=cr-ut,Jt+=$e-pt;var St,Qt;return sr+ut=0?St=sr:wr+ut=0?St=wr:cr+ut=0?Qt=Nt:Jt+pt=0?Qt=Jt:$e+pt=0,(_t.idealAlign==="top"||!ii)&&pi?(Ie-=ke/2,_t.anchor="end"):ii?(Ie+=ke/2,_t.anchor="start"):_t.anchor="middle",_t.crossPos=Ie;else{if(_t.pos=Ie,ii=xt+xe/2+vr<=T,pi=xt-xe/2-vr>=0,(_t.idealAlign==="left"||!ii)&&pi)xt-=xe/2,_t.anchor="end";else if(ii)xt+=xe/2,_t.anchor="start";else{_t.anchor="middle";var $r=vr/2,di=xt+$r-T,ji=xt-$r;di>0&&(xt-=di),ji<0&&(xt+=-ji)}_t.crossPos=xt}dt.attr("text-anchor",_t.anchor),Je&&Ge.attr("text-anchor",_t.anchor),It.attr("transform",NB(xt,Ie)+(a?iut(zle):""))}),{hoverLabels:Vt,commonLabelBoundingBox:j}}function Ple(e,t,r,n,i,a){var f,h;var o="",s="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=zf.templateString(e.name,e.trace._meta)),o=Dle(e.name,e.nameLength));var l=r.charAt(0),u=l==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(s+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(s+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(s+=(s?"z: ":"")+e.zLabel)):t&&e[l+"Label"]===i?s=e[u+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(s=e.yLabel):e.yLabel===void 0?s=e.xLabel:s="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(s+=(s?"
":"")+e.text),e.extraText!==void 0&&(s+=(s?"
":"")+e.extraText),a&&s===""&&!e.hovertemplate&&(o===""&&a.remove(),s=o),(h=(f=e.trace)==null?void 0:f.hoverlabel)!=null&&h.split&&(e.hovertemplate="");let{hovertemplate:c=!1}=e;if(c){let d=e.hovertemplateLabels||e;e[l+"Label"]!==i&&(d[l+"other"]=d[l+"Val"],d[l+"otherLabel"]=d[l+"Label"]),s=zf.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:n._d3locale,template:c}),s=s.replace(vut,(v,_)=>(o=Dle(_,e.nameLength),""))}return[s,o]}function put(e,t,r,n){var i=t?"xa":"ya",a=t?"ya":"xa",o=0,s=1,l=e.size(),u=new Array(l),c=0,f=n.minX,h=n.maxX,d=n.minY,v=n.maxY,_=function(Z){return Z*r._invScaleX},b=function(Z){return Z*r._invScaleY};e.each(function(Z){var H=Z[i],N=Z[a],j=H._id.charAt(0)==="x",re=H.range;c===0&&re&&re[0]>re[1]!==j&&(s=-1);var oe=0,_e=j?r.width:r.height;if(r.hovermode==="x"||r.hovermode==="y"){var Ee=Ble(Z,t),Ce=Z.anchor,me=Ce==="end"?-1:1,ie,Se;if(Ce==="middle")ie=Z.crossPos+(j?b(Ee.y-Z.by/2):_(Z.bx/2+Z.tx2width/2)),Se=ie+(j?b(Z.by):_(Z.bx));else if(j)ie=Z.crossPos+b(Qc+Ee.y)-b(Z.by/2-Qc),Se=ie+b(Z.by);else{var Le=_(me*Qc+Ee.x),Ae=Le+_(me*Z.bx);ie=Z.crossPos+Math.min(Le,Ae),Se=Z.crossPos+Math.max(Le,Ae)}j?d!==void 0&&v!==void 0&&Math.min(Se,v)-Math.max(ie,d)>1&&(N.side==="left"?(oe=N._mainLinePosition,_e=r.width):_e=N._mainLinePosition):f!==void 0&&h!==void 0&&Math.min(Se,h)-Math.max(ie,f)>1&&(N.side==="top"?(oe=N._mainLinePosition,_e=r.height):_e=N._mainLinePosition)}u[c++]=[{datum:Z,traceIndex:Z.trace.index,dp:0,pos:Z.pos,posref:Z.posref,size:Z.by*(j?uut:1)/2,pmin:oe,pmax:_e}]}),u.sort(function(Z,H){return Z[0].posref-H[0].posref||s*(H[0].traceIndex-Z[0].traceIndex)});var p,k,E,S,L,x,C;function M(Z){var H=Z[0],N=Z[Z.length-1];if(k=H.pmin-H.pos-H.dp+H.size,E=N.pos+N.dp+N.size-H.pmax,k>.01){for(L=Z.length-1;L>=0;L--)Z[L].dp+=k;p=!1}if(!(E<.01)){if(k<-.01){for(L=Z.length-1;L>=0;L--)Z[L].dp-=E;p=!1}if(p){var j=0;for(S=0;SH.pmax&&j++;for(S=Z.length-1;S>=0&&!(j<=0);S--)x=Z[S],x.pos>H.pmax-1&&(x.del=!0,j--);for(S=0;S=0;L--)Z[L].dp-=E;for(S=Z.length-1;S>=0&&!(j<=0);S--)x=Z[S],x.pos+x.dp+x.size>H.pmax&&(x.del=!0,j--)}}}for(;!p&&o<=l;){for(o++,p=!0,S=0;S.01){for(L=P.length-1;L>=0;L--)P[L].dp+=k;for(g.push.apply(g,P),u.splice(S+1,1),C=0,L=g.length-1;L>=0;L--)C+=g[L].dp;for(E=C/g.length,L=g.length-1;L>=0;L--)g[L].dp-=E;p=!1}else S++}u.forEach(M)}for(S=u.length-1;S>=0;S--){var O=u[S];for(L=O.length-1;L>=0;L--){var V=O[L],G=V.datum;G.offset=V.dp,G.del=V.del}}}function Ble(e,t){var r=0,n=e.offset;return t&&(n*=-fut,r=e.offset*cut),{x:r,y:n}}function gut(e){var t={start:1,end:-1,middle:0}[e.anchor],r=t*(Qc+sl),n=r+t*(e.txwidth+sl),i=e.anchor==="middle";return i&&(r-=e.tx2width/2,n+=e.txwidth/2+sl),{alignShift:t,textShiftX:r,text2ShiftX:n}}function Nle(e,t,r,n){var i=function(o){return o*r},a=function(o){return o*n};e.each(function(o){var s=Fb.select(this);if(o.del)return s.remove();var l=s.select("text.nums"),u=o.anchor,c=u==="end"?-1:1,f=gut(o),h=Ble(o,t),d=h.x,v=h.y,_=u==="middle",b="hoverlabel"in o.trace?o.trace.hoverlabel.showarrow:!0,p;_?p="M-"+i(o.bx/2+o.tx2width/2)+","+a(v-o.by/2)+"h"+i(o.bx)+"v"+a(o.by)+"h-"+i(o.bx)+"Z":b?p="M0,0L"+i(c*Qc+d)+","+a(Qc+v)+"v"+a(o.by/2-Qc)+"h"+i(c*o.bx)+"v-"+a(o.by)+"H"+i(c*Qc+d)+"V"+a(v-Qc)+"Z":p="M"+i(c*Qc+d)+","+a(v-o.by/2)+"h"+i(c*o.bx)+"v"+a(o.by)+"h"+i(-c*o.bx)+"Z",s.select("path").attr("d",p);var k=d+f.textShiftX,E=v+o.ty0-o.by/2+sl,S=o.textAlign||"auto";S!=="auto"&&(S==="left"&&u!=="start"?(l.attr("text-anchor","start"),k=_?-o.bx/2-o.tx2width/2+sl:-o.bx-sl):S==="right"&&u!=="end"&&(l.attr("text-anchor","end"),k=_?o.bx/2-o.tx2width/2-sl:o.bx+sl)),l.call(T0.positionText,i(k),a(E)),o.tx2width&&(s.select("text.name").call(T0.positionText,i(f.text2ShiftX+f.alignShift*sl+d),a(v+o.ty0-o.by/2+sl)),s.select("rect").call(bm.setRect,i(f.text2ShiftX+(f.alignShift-1)*o.tx2width/2+d),a(v-o.by/2-1),i(o.tx2width),a(o.by+2)))})}function mut(e,t){var r=e.index,n=e.trace||{},i=e.cd[0],a=e.cd[r]||{};function o(h){return h||My(h)&&h===0}var s=Array.isArray(r)?function(h,d){var v=zf.castOption(i,r,h);return o(v)?v:zf.extractOption({},n,"",d)}:function(h,d){return zf.extractOption(a,n,h,d)};function l(h,d,v){var _=s(d,v);o(_)&&(e[h]=_)}if(l("hoverinfo","hi","hoverinfo"),l("bgcolor","hbg","hoverlabel.bgcolor"),l("borderColor","hbc","hoverlabel.bordercolor"),l("fontFamily","htf","hoverlabel.font.family"),l("fontSize","hts","hoverlabel.font.size"),l("fontColor","htc","hoverlabel.font.color"),l("fontWeight","htw","hoverlabel.font.weight"),l("fontStyle","hty","hoverlabel.font.style"),l("fontVariant","htv","hoverlabel.font.variant"),l("nameLength","hnl","hoverlabel.namelength"),l("textAlign","hta","hoverlabel.align"),e.posref=t==="y"||t==="closest"&&n.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=zf.constrain(e.x0,0,e.xa._length),e.x1=zf.constrain(e.x1,0,e.xa._length),e.y0=zf.constrain(e.y0,0,e.ya._length),e.y1=zf.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:wm.hoverLabelText(e.xa,e.xLabelVal,n.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:wm.hoverLabelText(e.ya,e.yLabelVal,n.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var u=wm.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+u+" / -"+wm.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+u,t==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var c=wm.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+c+" / -"+wm.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+c,t==="y"&&(e.distance+=1)}var f=e.hoverinfo||e.trace.hoverinfo;return f&&f!=="all"&&(f=Array.isArray(f)?f:f.split("+"),f.indexOf("x")===-1&&(e.xLabel=void 0),f.indexOf("y")===-1&&(e.yLabel=void 0),f.indexOf("z")===-1&&(e.zLabel=void 0),f.indexOf("text")===-1&&(e.text=void 0),f.indexOf("name")===-1&&(e.name=void 0)),e}function Ile(e,t,r){var n=r.container,i=r.fullLayout,a=i._size,o=r.event,s=!!t.hLinePoint,l=!!t.vLinePoint,u,c;if(n.selectAll(".spikeline").remove(),!!(l||s)){var f=vd.combine(i.plot_bgcolor,i.paper_bgcolor);if(s){var h=t.hLinePoint,d,v;u=h&&h.xa,c=h&&h.ya;var _=c.spikesnap;_==="cursor"?(d=o.pointerX,v=o.pointerY):(d=u._offset+h.x,v=c._offset+h.y);var b=kle.readability(h.color,f)<1.5?vd.contrast(f):h.color,p=c.spikemode,k=c.spikethickness,E=c.spikecolor||b,S=wm.getPxPosition(e,c),L,x;if(p.indexOf("toaxis")!==-1||p.indexOf("across")!==-1){if(p.indexOf("toaxis")!==-1&&(L=S,x=d),p.indexOf("across")!==-1){var C=c._counterDomainMin,M=c._counterDomainMax;c.anchor==="free"&&(C=Math.min(C,c.position),M=Math.max(M,c.position)),L=a.l+C*a.w,x=a.l+M*a.w}n.insert("line",":first-child").attr({x1:L,x2:x,y1:v,y2:v,"stroke-width":k,stroke:E,"stroke-dasharray":bm.dashStyle(c.spikedash,k)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:L,x2:x,y1:v,y2:v,"stroke-width":k+2,stroke:f}).classed("spikeline",!0).classed("crisp",!0)}p.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:S+(c.side!=="right"?k:-k),cy:v,r:k,fill:E}).classed("spikeline",!0)}if(l){var g=t.vLinePoint,P,T;u=g&&g.xa,c=g&&g.ya;var z=u.spikesnap;z==="cursor"?(P=o.pointerX,T=o.pointerY):(P=u._offset+g.x,T=c._offset+g.y);var O=kle.readability(g.color,f)<1.5?vd.contrast(f):g.color,V=u.spikemode,G=u.spikethickness,Z=u.spikecolor||O,H=wm.getPxPosition(e,u),N,j;if(V.indexOf("toaxis")!==-1||V.indexOf("across")!==-1){if(V.indexOf("toaxis")!==-1&&(N=H,j=T),V.indexOf("across")!==-1){var re=u._counterDomainMin,oe=u._counterDomainMax;u.anchor==="free"&&(re=Math.min(re,u.position),oe=Math.max(oe,u.position)),N=a.t+(1-oe)*a.h,j=a.t+(1-re)*a.h}n.insert("line",":first-child").attr({x1:P,x2:P,y1:N,y2:j,"stroke-width":G,stroke:Z,"stroke-dasharray":bm.dashStyle(u.spikedash,G)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:P,x2:P,y1:N,y2:j,"stroke-width":G+2,stroke:f}).classed("spikeline",!0).classed("crisp",!0)}V.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:P,cy:H-(u.side!=="top"?G:-G),r:G,fill:Z}).classed("spikeline",!0)}}}function yut(e,t,r){if(!r||r.length!==e._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var i=r[n],a=e._hoverdata[n];if(i.curveNumber!==a.curveNumber||String(i.pointNumber)!==String(a.pointNumber)||String(i.pointNumbers)!==String(a.pointNumbers)||i.binNumber!==a.binNumber)return!0}return!1}function Rle(e,t){return!t||t.vLinePoint!==e._spikepoints.vLinePoint||t.hLinePoint!==e._spikepoints.hLinePoint}function Dle(e,t){return T0.plainText(e||"",{len:t,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function _ut(e,t){for(var r=t.charAt(0),n=[],i=[],a=[],o=0;oe.offsetTop+e.clientTop,Vle=e=>e.offsetLeft+e.clientLeft;function G3(e,t){var r=e._fullLayout,n=t.getBoundingClientRect(),i=n.left,a=n.top,o=i+n.width,s=a+n.height,l=zf.apply3DTransform(r._invTransform)(i,a),u=zf.apply3DTransform(r._invTransform)(o,s),c=l[0],f=l[1],h=u[0],d=u[1];return{x:c,y:f,width:h-c,height:d-f,top:Math.min(f,d),left:Math.min(c,h),right:Math.max(c,h),bottom:Math.max(f,d)}}});var fM=ye((gar,Gle)=>{"use strict";var xut=Dr(),but=ka(),wut=ip().isUnifiedHover;Gle.exports=function(t,r,n,i){i=i||{};var a=r.legend;function o(s){i.font[s]||(i.font[s]=a?r.legend.font[s]:r.font[s])}r&&wut(r.hovermode)&&(i.font||(i.font={}),o("size"),o("family"),o("color"),o("weight"),o("style"),o("variant"),a?(i.bgcolor||(i.bgcolor=but.combine(r.legend.bgcolor,r.paper_bgcolor)),i.bordercolor||(i.bordercolor=r.legend.bordercolor)):i.bgcolor||(i.bgcolor=r.paper_bgcolor)),n("hoverlabel.bgcolor",i.bgcolor),n("hoverlabel.bordercolor",i.bordercolor),n("hoverlabel.namelength",i.namelength),n("hoverlabel.showarrow",i.showarrow),xut.coerceFont(n,"hoverlabel.font",i.font),n("hoverlabel.align",i.align)}});var jle=ye((mar,Hle)=>{"use strict";var Tut=Dr(),Aut=fM(),Sut=B1();Hle.exports=function(t,r){function n(i,a){return Tut.coerce(t,r,Sut,i,a)}Aut(t,r,n)}});var Zle=ye((yar,Xle)=>{"use strict";var Wle=Dr(),Mut=n3(),Eut=fM();Xle.exports=function(t,r,n,i){function a(s,l){return Wle.coerce(t,r,Mut,s,l)}var o=Wle.extendFlat({},i.hoverlabel);r.hovertemplate&&(o.namelength=-1),Eut(t,r,a,o)}});var HB=ye((_ar,Yle)=>{"use strict";var kut=Dr(),Cut=B1();Yle.exports=function(t,r){function n(i,a){return r[i]!==void 0?r[i]:kut.coerce(t,r,Cut,i,a)}return n("clickmode"),n("hoversubplots"),n("hovermode")}});var $le=ye((xar,Jle)=>{"use strict";var Kle=Dr(),Lut=B1(),Put=HB(),Iut=fM();Jle.exports=function(t,r){function n(c,f){return Kle.coerce(t,r,Lut,c,f)}var i=Put(t,r);i&&(n("hoverdistance"),n("spikedistance"));var a=n("dragmode");a==="select"&&n("selectdirection");var o=r._has("mapbox"),s=r._has("map"),l=r._has("geo"),u=r._basePlotModules.length;r.dragmode==="zoom"&&((o||s||l)&&u===1||(o||s)&&l&&u===2)&&(r.dragmode="pan"),Iut(t,r,n),Kle.coerceFont(n,"hoverlabel.grouptitlefont",r.hoverlabel.font)}});var tue=ye((bar,eue)=>{"use strict";var jB=Dr(),Qle=qa();eue.exports=function(t){var r=t.calcdata,n=t._fullLayout;function i(u){return function(c){return jB.coerceHoverinfo({hoverinfo:c},{_module:u._module},n)}}for(var a=0;a{"use strict";var Dut=qa(),Fut=GB().hover;rue.exports=function(t,r,n){var i=Dut.getComponentMethod("annotations","onClick")(t,t._hoverdata);n!==void 0&&Fut(t,r,n,!0);function a(){t.emit("plotly_click",{points:t._hoverdata,event:r})}t._hoverdata&&r&&r.target&&(i&&i.then?i.then(a):a(),r.stopImmediatePropagation&&r.stopImmediatePropagation())}});var vf=ye((Tar,oue)=>{"use strict";var zut=Oa(),jL=Dr(),Out=yv(),hM=ip(),nue=B1(),aue=GB();oue.exports={moduleType:"component",name:"fx",constants:FS(),schema:{layout:nue},attributes:n3(),layoutAttributes:nue,supplyLayoutGlobalDefaults:jle(),supplyDefaults:Zle(),supplyLayoutDefaults:$le(),calc:tue(),getDistanceFunction:hM.getDistanceFunction,getClosest:hM.getClosest,inbox:hM.inbox,quadrature:hM.quadrature,appendArrayPointValue:hM.appendArrayPointValue,castHoverOption:But,castHoverinfo:Nut,hover:aue.hover,unhover:Out.unhover,loneHover:aue.loneHover,loneUnhover:qut,click:iue()};function qut(e){var t=jL.isD3Selection(e)?e:zut.select(e);t.selectAll("g.hovertext").remove(),t.selectAll(".spikeline").remove()}function But(e,t,r){return jL.castOption(e,t,"hoverlabel."+r)}function Nut(e,t,r){function n(i){return jL.coerceHoverinfo({hoverinfo:i},{_module:e._module},t)}return jL.castOption(e,r,"hoverinfo",n)}});var Mg=ye(Ey=>{"use strict";Ey.selectMode=function(e){return e==="lasso"||e==="select"};Ey.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Ey.openMode=function(e){return e==="drawline"||e==="drawopenpath"};Ey.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Ey.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};Ey.selectingOrDrawing=function(e){return Ey.freeMode(e)||Ey.rectMode(e)}});var dM=ye((Sar,sue)=>{"use strict";sue.exports=function(t){var r=t._fullLayout;r._glcanvas&&r._glcanvas.size()&&r._glcanvas.each(function(n){n.regl&&n.regl.clear({color:!0,depth:!0})})}});var WL=ye((Mar,lue)=>{"use strict";lue.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var ZL=ye((Ear,uue)=>{"use strict";var XL=32;uue.exports={CIRCLE_SIDES:XL,i000:0,i090:XL/4,i180:XL/2,i270:XL/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var YL=ye((kar,fue)=>{"use strict";var Uut=Dr().strTranslate;function cue(e,t){switch(e.type){case"log":return e.p2d(t);case"date":return e.p2r(t,0,e.calendar);default:return e.p2r(t)}}function Vut(e,t){switch(e.type){case"log":return e.d2p(t);case"date":return e.r2p(t,0,e.calendar);default:return e.r2p(t)}}function Gut(e){var t=e._id.charAt(0)==="y"?1:0;return function(r){return cue(e,r[t])}}function Hut(e){return Uut(e.xaxis._offset,e.yaxis._offset)}fue.exports={p2r:cue,r2p:Vut,axValue:Gut,getTransform:Hut}});var u_=ye(ky=>{"use strict";var jut=QS(),vue=ZL(),j3=vue.CIRCLE_SIDES,WB=vue.SQRT2,pue=YL(),hue=pue.p2r,due=pue.r2p,Wut=[0,3,4,5,6,1,2],Xut=[0,3,4,1,2];ky.writePaths=function(e){var t=e.length;if(!t)return"M0,0Z";for(var r="",n=0;n0&&l{"use strict";var gue=hf(),bue=Mg(),Zut=bue.drawMode,Yut=bue.openMode,W3=ZL(),mue=W3.i000,yue=W3.i090,_ue=W3.i180,xue=W3.i270,Kut=W3.cos45,Jut=W3.sin45,wue=YL(),JL=wue.p2r,c_=wue.r2p,$ut=Q1(),Qut=$ut.clearOutline,$L=u_(),ect=$L.readPaths,tct=$L.writePaths,rct=$L.ellipseOver,ict=$L.fixDatesForPaths;function nct(e,t){if(e.length){var r=e[0][0];if(r){var n=t.gd,i=t.isActiveShape,a=t.dragmode,o=(n.layout||{}).shapes||[];if(!Zut(a)&&i!==void 0){var s=n._fullLayout._activeShapeIndex;if(s{"use strict";var act=Mg(),oct=act.selectMode,sct=Q1(),lct=sct.clearOutline,XB=u_(),uct=XB.readPaths,cct=XB.writePaths,fct=XB.fixDatesForPaths;Sue.exports=function(t,r){if(t.length){var n=t[0][0];if(n){var i=n.getAttribute("d"),a=r.gd,o=a._fullLayout.newselection,s=r.plotinfo,l=s.xaxis,u=s.yaxis,c=r.isActiveSelection,f=r.dragmode,h=(a.layout||{}).selections||[];if(!oct(f)&&c!==void 0){var d=a._fullLayout._activeSelectionIndex;if(d{"use strict";Mue.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var f_=ye(Dd=>{"use strict";var Ob=pM(),Eue=Dr(),eP=ho();Dd.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(t){return t}};Dd.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(t){return t}};Dd.decodeDate=function(e){return function(t){return t.replace&&(t=t.replace("_"," ")),e(t)}};Dd.encodeDate=function(e){return function(t){return e(t).replace(" ","_")}};Dd.extractPathCoords=function(e,t,r){var n=[],i=e.match(Ob.segmentRE);return i.forEach(function(a){var o=t[a.charAt(0)].drawn;if(o!==void 0){var s=a.substr(1).match(Ob.paramRE);if(!(!s||s.lengthd&&(_="X"),_});return u>d&&(v=v.replace(/[\s,]*X.*/,""),Eue.log("Ignoring extra params in segment "+l)),c+v})}function gM(e,t){t=t||0;var r=0;return t&&e&&(e.type==="category"||e.type==="multicategory")&&(r=(e.r2p(1)-e.r2p(0))*t),r}});var KB=ye((Dar,Pue)=>{"use strict";var dct=Dr(),X3=ho(),kue=ru(),Cue=So(),vct=u_().readPaths,YB=f_(),pct=YB.getPathString,Lue=M6(),gct=$h().FROM_TL;Pue.exports=function(t,r,n,i){if(i.selectAll(".shape-label").remove(),!!(n.label.text||n.label.texttemplate)){var a;if(n.label.texttemplate){var o={};if(n.type!=="path"){var s=X3.getFromId(t,n.xref),l=X3.getFromId(t,n.yref);for(var u in Lue){var c=Lue[u](n,s,l);c!==void 0&&(o[u]=c)}}a=dct.texttemplateStringForShapes({data:[o],fallback:n.label.texttemplatefallback,locale:t._fullLayout._d3locale,template:n.label.texttemplate})}else a=n.label.text;var f={"data-index":r},h=n.label.font,d={"data-notex":1},v=i.append("g").attr(f).classed("shape-label",!0),_=v.append("text").attr(d).classed("shape-label-text",!0).text(a),b,p,k,E;if(n.path){var S=pct(t,n),L=vct(S,t);b=1/0,k=1/0,p=-1/0,E=-1/0;for(var x=0;x=e?i=t-n:i=n-t,-180/Math.PI*Math.atan2(i,a)}function yct(e,t,r,n,i,a,o){var s=i.label.textposition,l=i.label.textangle,u=i.label.padding,c=i.type,f=Math.PI/180*a,h=Math.sin(f),d=Math.cos(f),v=i.label.xanchor,_=i.label.yanchor,b,p,k,E;if(c==="line"){s==="start"?(b=e,p=t):s==="end"?(b=r,p=n):(b=(e+r)/2,p=(t+n)/2),v==="auto"&&(s==="start"?l==="auto"?r>e?v="left":re?v="right":re?v="right":re?v="left":r{"use strict";var _ct=Dr(),xct=_ct.strTranslate,Iue=yv(),Fue=Mg(),bct=Fue.drawMode,zue=Fue.selectMode,Oue=qa(),Rue=ka(),rP=ZL(),wct=rP.i000,Tct=rP.i090,Act=rP.i180,Sct=rP.i270,Mct=Q1(),que=Mct.clearOutlineControllers,$B=u_(),tP=$B.pointsOnRectangle,JB=$B.pointsOnEllipse,Ect=$B.writePaths,kct=QL().newShapes,Cct=QL().createShapeObj,Lct=ZB(),Pct=KB();Bue.exports=function e(t,r,n,i){i||(i=0);var a=n.gd;function o(){e(t,r,n,i++),(JB(t[0])||n.hasText)&&s({redrawing:!0})}function s(H){var N={};n.isActiveShape!==void 0&&(n.isActiveShape=!1,N=kct(r,n)),n.isActiveSelection!==void 0&&(n.isActiveSelection=!1,N=Lct(r,n),a._fullLayout._reselect=!0),Object.keys(N).length&&Oue.call((H||{}).redrawing?"relayout":"_guiRelayout",a,N)}var l=a._fullLayout,u=l._zoomlayer,c=n.dragmode,f=bct(c),h=zue(c);(f||h)&&(a._fullLayout._outlining=!0),que(a),r.attr("d",Ect(t));var d,v,_,b,p;if(!i&&(n.isActiveShape||n.isActiveSelection)){p=Ict([],t);var k=u.append("g").attr("class","outline-controllers");P(k),Z()}if(f&&n.hasText){var E=u.select(".label-temp"),S=Cct(r,n,n.dragmode);Pct(a,"label-temp",S,E)}function L(H){_=+H.srcElement.getAttribute("data-i"),b=+H.srcElement.getAttribute("data-j"),d[_][b].moveFn=x}function x(H,N){if(t.length){var j=p[_][b][1],re=p[_][b][2],oe=t[_],_e=oe.length;if(tP(oe)){var Ee=H,Ce=N;if(n.isActiveSelection){var me=Due(oe,b);me[1]===oe[b][1]?Ce=0:Ee=0}for(var ie=0;ie<_e;ie++)if(ie!==b){var Se=oe[ie];Se[1]===oe[b][1]&&(Se[1]=j+Ee),Se[2]===oe[b][2]&&(Se[2]=re+Ce)}if(oe[b][1]=j+Ee,oe[b][2]=re+Ce,!tP(oe))for(var Le=0;Le<_e;Le++)for(var Ae=0;Ae1&&!(H.length===2&&H[1][0]==="Z")&&(b===0&&(H[0][0]="M"),t[_]=H,o(),s())}}function g(H,N){if(H===2){_=+N.srcElement.getAttribute("data-i"),b=+N.srcElement.getAttribute("data-j");var j=t[_];!tP(j)&&!JB(j)&&M()}}function P(H){d=[];for(var N=0;N{"use strict";var Dct=Oa(),jue=qa(),Nue=Dr(),Z3=ho(),Fct=u_().readPaths,zct=iP(),aP=KB(),Wue=Q1().clearOutlineControllers,QB=ka(),tN=So(),Oct=vl().arrayEditor,Uue=yv(),Vue=Ag(),qb=pM(),Ep=f_(),eN=Ep.getPathString;Yue.exports={draw:rN,drawOne:Xue,eraseActiveShape:Nct,drawLabel:aP};function rN(e){var t=e._fullLayout;t._shapeUpperLayer.selectAll("path").remove(),t._shapeLowerLayer.selectAll("path").remove(),t._shapeUpperLayer.selectAll("text").remove(),t._shapeLowerLayer.selectAll("text").remove();for(var r in t._plots){var n=t._plots[r].shapelayer;n&&(n.selectAll("path").remove(),n.selectAll("text").remove())}for(var i=0;io&&Nt>s&&!st.shiftKey?Uue.getCursor(Jt/Gt,1-sr/Nt):"move";Vue(t,wr),Se=wr.split("-")[0]}}function Pe(st){nP(e)||(l&&(p=oe(r.xanchor)),u&&(k=_e(r.yanchor)),r.type==="path"?T=r.path:(d=l?r.x0:oe(r.x0),v=u?r.y0:_e(r.y0),_=l?r.x1:oe(r.x1),b=u?r.y1:_e(r.y1)),d<_?(L=d,g="x0",x=_,P="x1"):(L=_,g="x1",x=d,P="x0"),!u&&vb?(E=v,C="y0",S=b,M="y1"):(E=b,C="y1",S=v,M="y0"),Fe(st),ut(i,r),Zt(t,r,e),ie.moveFn=Se==="move"?ce:Ze,ie.altKey=st.altKey)}function ge(){nP(e)||(Vue(t),pt(i),Zue(t,e,r),jue.call("_guiRelayout",e,a.getUpdateObj()))}function Re(){nP(e)||pt(i)}function ce(st,lt){if(r.type==="path"){var Gt=function(sr){return sr},Nt=Gt,Jt=Gt;l?h("xanchor",r.xanchor=Ee(p+st)):(Nt=function(wr){return Ee(oe(wr)+st)},O&&O.type==="date"&&(Nt=Ep.encodeDate(Nt))),u?h("yanchor",r.yanchor=Ce(k+lt)):(Jt=function(wr){return Ce(_e(wr)+lt)},G&&G.type==="date"&&(Jt=Ep.encodeDate(Jt))),h("path",r.path=Gue(T,Nt,Jt))}else l?h("xanchor",r.xanchor=Ee(p+st)):(h("x0",r.x0=Ee(d+st)),h("x1",r.x1=Ee(_+st))),u?h("yanchor",r.yanchor=Ce(k+lt)):(h("y0",r.y0=Ce(v+lt)),h("y1",r.y1=Ce(b+lt)));t.attr("d",eN(e,r)),ut(i,r),aP(e,n,r,z)}function Ze(st,lt){if(f){var Gt=function(Lr){return Lr},Nt=Gt,Jt=Gt;l?h("xanchor",r.xanchor=Ee(p+st)):(Nt=function(ti){return Ee(oe(ti)+st)},O&&O.type==="date"&&(Nt=Ep.encodeDate(Nt))),u?h("yanchor",r.yanchor=Ce(k+lt)):(Jt=function(ti){return Ce(_e(ti)+lt)},G&&G.type==="date"&&(Jt=Ep.encodeDate(Jt))),h("path",r.path=Gue(T,Nt,Jt))}else if(c){if(Se==="resize-over-start-point"){var sr=d+st,wr=u?v-lt:v+lt;h("x0",r.x0=l?sr:Ee(sr)),h("y0",r.y0=u?wr:Ce(wr))}else if(Se==="resize-over-end-point"){var cr=_+st,$e=u?b-lt:b+lt;h("x1",r.x1=l?cr:Ee(cr)),h("y1",r.y1=u?$e:Ce($e))}}else{var St=function(Lr){return Se.indexOf(Lr)!==-1},Qt=St("n"),Vt=St("s"),_t=St("w"),It=St("e"),mt=Qt?E+lt:E,er=Vt?S+lt:S,lr=_t?L+st:L,Tr=It?x+st:x;u&&(Qt&&(mt=E-lt),Vt&&(er=S-lt)),(!u&&er-mt>s||u&&mt-er>s)&&(h(C,r[C]=u?mt:Ce(mt)),h(M,r[M]=u?er:Ce(er))),Tr-lr>o&&(h(g,r[g]=l?lr:Ee(lr)),h(P,r[P]=l?Tr:Ee(Tr)))}t.attr("d",eN(e,r)),ut(i,r),aP(e,n,r,z)}function ut(st,lt){(l||u)&&Gt();function Gt(){var Nt=lt.type!=="path",Jt=st.selectAll(".visual-cue").data([0]),sr=1;Jt.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":sr}).classed("visual-cue",!0);var wr=oe(l?lt.xanchor:Nue.midRange(Nt?[lt.x0,lt.x1]:Ep.extractPathCoords(lt.path,qb.paramIsX))),cr=_e(u?lt.yanchor:Nue.midRange(Nt?[lt.y0,lt.y1]:Ep.extractPathCoords(lt.path,qb.paramIsY)));if(wr=Ep.roundPositionForSharpStrokeRendering(wr,sr),cr=Ep.roundPositionForSharpStrokeRendering(cr,sr),l&&u){var $e="M"+(wr-1-sr)+","+(cr-1-sr)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Jt.attr("d",$e)}else if(l){var St="M"+(wr-1-sr)+","+(cr-9-sr)+"v18 h2 v-18 Z";Jt.attr("d",St)}else{var Qt="M"+(wr-9-sr)+","+(cr-1-sr)+"h18 v2 h-18 Z";Jt.attr("d",Qt)}}}function pt(st){st.selectAll(".visual-cue").remove()}function Zt(st,lt,Gt){var Nt=lt.xref,Jt=lt.yref,sr=Z3.getFromId(Gt,Nt),wr=Z3.getFromId(Gt,Jt),cr="";Nt!=="paper"&&!sr.autorange&&(cr+=Nt),Jt!=="paper"&&!wr.autorange&&(cr+=Jt),tN.setClipUrl(st,cr?"clip"+Gt._fullLayout._uid+cr:null,Gt)}}function Gue(e,t,r){return e.replace(qb.segmentRE,function(n){var i=0,a=n.charAt(0),o=qb.paramIsX[a],s=qb.paramIsY[a],l=qb.numParams[a],u=n.substr(1).replace(qb.paramRE,function(c){return i>=l||(o[i]?c=t(c):s[i]&&(c=r(c)),i++),c});return a+u})}function Bct(e,t){if(oP(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeShapeIndex){Hue(e);return}e._fullLayout._activeShapeIndex=n,e._fullLayout._deactivateShape=Hue,rN(e)}}}function Hue(e){if(oP(e)){var t=e._fullLayout._activeShapeIndex;t>=0&&(Wue(e),delete e._fullLayout._activeShapeIndex,rN(e))}}function Nct(e){if(oP(e)){Wue(e);var t=e._fullLayout._activeShapeIndex,r=(e.layout||{}).shapes||[];if(t{"use strict";var A0=qa(),Kue=Mc(),Jue=hf(),Pl=WL(),Uct=sP().eraseActiveShape,lP=Dr(),tl=lP._,Il=nce.exports={};Il.toImage={name:"toImage",title:function(e){var t=e._context.toImageButtonOptions||{},r=t.format||"png";return r==="png"?tl(e,"Download plot as a PNG"):tl(e,"Download plot")},icon:Pl.camera,click:function(e){var t=e._context.toImageButtonOptions,r={format:t.format||"png"};lP.notifier(tl(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(n){n in t&&(r[n]=t[n])}),A0.call("downloadImage",e,r).then(function(n){lP.notifier(tl(e,"Snapshot succeeded")+" - "+n,"long")}).catch(function(){lP.notifier(tl(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Il.sendDataToCloud={name:"sendDataToCloud",title:function(e){return tl(e,"Edit in Chart Studio")},icon:Pl.disk,click:function(e){Kue.sendDataToCloud(e)}};Il.editInChartStudio={name:"editInChartStudio",title:function(e){return tl(e,"Edit in Chart Studio")},icon:Pl.pencil,click:function(e){Kue.sendDataToCloud(e)}};Il.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return tl(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Pl.zoombox,click:Bv};Il.pan2d={name:"pan2d",_cat:"pan",title:function(e){return tl(e,"Pan")},attr:"dragmode",val:"pan",icon:Pl.pan,click:Bv};Il.select2d={name:"select2d",_cat:"select",title:function(e){return tl(e,"Box Select")},attr:"dragmode",val:"select",icon:Pl.selectbox,click:Bv};Il.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return tl(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Pl.lasso,click:Bv};Il.drawclosedpath={name:"drawclosedpath",title:function(e){return tl(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Pl.drawclosedpath,click:Bv};Il.drawopenpath={name:"drawopenpath",title:function(e){return tl(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Pl.drawopenpath,click:Bv};Il.drawline={name:"drawline",title:function(e){return tl(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Pl.drawline,click:Bv};Il.drawrect={name:"drawrect",title:function(e){return tl(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Pl.drawrect,click:Bv};Il.drawcircle={name:"drawcircle",title:function(e){return tl(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Pl.drawcircle,click:Bv};Il.eraseshape={name:"eraseshape",title:function(e){return tl(e,"Erase active shape")},icon:Pl.eraseshape,click:Uct};Il.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return tl(e,"Zoom in")},attr:"zoom",val:"in",icon:Pl.zoom_plus,click:Bv};Il.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return tl(e,"Zoom out")},attr:"zoom",val:"out",icon:Pl.zoom_minus,click:Bv};Il.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return tl(e,"Autoscale")},attr:"zoom",val:"auto",icon:Pl.autoscale,click:Bv};Il.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return tl(e,"Reset axes")},attr:"zoom",val:"reset",icon:Pl.home,click:Bv};Il.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return tl(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Pl.tooltip_basic,gravity:"ne",click:Bv};Il.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return tl(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Pl.tooltip_compare,gravity:"ne",click:Bv};function Bv(e,t){var r=t.currentTarget,n=r.getAttribute("data-attr"),i=r.getAttribute("data-val")||!0,a=e._fullLayout,o={},s=Jue.list(e,null,!0),l=a._cartesianSpikesEnabled,u,c;if(n==="zoom"){var f=i==="in"?.5:2,h=(1+f)/2,d=(1-f)/2,v,_;for(c=0;c{"use strict";var ace=aN(),Hct=Object.keys(ace),oce=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],sce=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(oce),K3=[],jct=function(e){if(sce.indexOf(e._cat||e.name)===-1){var t=e.name,r=(e._cat||e.name).toLowerCase();K3.indexOf(t)===-1&&K3.push(t),K3.indexOf(r)===-1&&K3.push(r)}};Hct.forEach(function(e){jct(ace[e])});K3.sort();lce.exports={DRAW_MODES:oce,backButtons:sce,foreButtons:K3}});var sN=ye((Nar,uce)=>{"use strict";var Bar=oN();uce.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var fce=ye((Uar,cce)=>{"use strict";var Wct=Dr(),mM=ka(),Xct=vl(),Zct=sN();cce.exports=function(t,r){var n=t.modebar||{},i=Xct.newContainer(r,"modebar");function a(s,l){return Wct.coerce(n,i,Zct,s,l)}a("orientation"),a("bgcolor",mM.addOpacity(r.paper_bgcolor,.5));var o=mM.contrast(mM.rgb(r.modebar.bgcolor));a("color",mM.addOpacity(o,.3)),a("activecolor",mM.addOpacity(o,.7)),a("uirevision",r.uirevision),a("add"),a("remove")}});var pce=ye((Var,vce)=>{"use strict";var lN=Oa(),Yct=Eo(),cP=Dr(),hce=WL(),Kct=l6().version,Jct=new DOMParser;function dce(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Tm=dce.prototype;Tm.update=function(e,t){this.graphInfo=e;var r=this.graphInfo._context,n=this.graphInfo._fullLayout,i="modebar-"+n._uid;this.element.setAttribute("id",i),this.element.setAttribute("role","toolbar"),this._uid=i,this.element.className="modebar modebar--custom",r.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),n.modebar.orientation==="v"&&(this.element.className+=" vertical",t=t.reverse());var a=n.modebar,o="#"+i+" .modebar-group";document.querySelectorAll(o).forEach(function(f){f.style.backgroundColor=a.bgcolor});var s=!this.hasButtons(t),l=this.hasLogo!==r.displaylogo,u=this.locale!==r.locale;if(this.locale=r.locale,(s||l||u)&&(this.removeAllButtons(),this.updateButtons(t),r.watermark||r.displaylogo)){var c=this.getLogo();r.watermark&&(c.className=c.className+" watermark"),n.modebar.orientation==="v"?this.element.insertBefore(c,this.element.childNodes[0]):this.element.appendChild(c),this.hasLogo=!0}this.updateActiveButton(),cP.setStyleOnHover("#"+i+" .modebar-btn",".active",".icon path","fill: "+a.activecolor,"fill: "+a.color,this.element)};Tm.updateButtons=function(e){var t=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(r){var n=t.createGroup();r.forEach(function(i){var a=i.name;if(!a)throw new Error("must provide button 'name' in button config");if(t.buttonsNames.indexOf(a)!==-1)throw new Error("button name '"+a+"' is taken");t.buttonsNames.push(a);var o=t.createButton(i);t.buttonElements.push(o),n.appendChild(o)}),t.element.appendChild(n)})};Tm.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var t=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=t.bgcolor,e};Tm.createButton=function(e){var t=this,r=document.createElement("button");r.setAttribute("type","button"),r.setAttribute("rel","tooltip"),r.className="modebar-btn";var n=e.title;n===void 0?n=e.name:typeof n=="function"&&(n=n(this.graphInfo)),(n||n===0)&&(r.setAttribute("data-title",n),r.setAttribute("aria-label",n)),e.attr!==void 0&&r.setAttribute("data-attr",e.attr);var i=e.val;i!==void 0&&(typeof i=="function"&&(i=i(this.graphInfo)),r.setAttribute("data-val",i));var a=e.click;if(typeof a!="function")throw new Error("must provide button 'click' function in button config");r.addEventListener("click",function(s){e.click(t.graphInfo,s),t.updateActiveButton(s.currentTarget)}),r.setAttribute("data-toggle",e.toggle||!1),e.toggle&&lN.select(r).classed("active",!0);var o=e.icon;return typeof o=="function"?r.appendChild(o()):r.appendChild(this.createIcon(o||hce.question)),r.setAttribute("data-gravity",e.gravity||"n"),r};Tm.createIcon=function(e){var t=Yct(e.height)?Number(e.height):e.ascent-e.descent,r="http://www.w3.org/2000/svg",n;if(e.path){n=document.createElementNS(r,"svg"),n.setAttribute("viewBox",[0,0,e.width,t].join(" ")),n.setAttribute("class","icon");var i=document.createElementNS(r,"path");i.setAttribute("d",e.path),e.transform?i.setAttribute("transform",e.transform):e.ascent!==void 0&&i.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),n.appendChild(i)}if(e.svg){var a=Jct.parseFromString(e.svg,"application/xml");n=a.childNodes[0]}return n.setAttribute("height","1em"),n.setAttribute("width","1em"),n};Tm.updateActiveButton=function(e){var t=this.graphInfo._fullLayout,r=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(n){var i=n.getAttribute("data-val")||!0,a=n.getAttribute("data-attr"),o=n.getAttribute("data-toggle")==="true",s=lN.select(n),l=function(f,h){var d=t.modebar,v=f.querySelector(".icon path");v&&(h||f.matches(":hover")?v.style.fill=d.activecolor:v.style.fill=d.color)};if(o){if(a===r){var u=!s.classed("active");s.classed("active",u),l(n,u)}}else{var c=a===null?a:cP.nestedProperty(t,a).get();s.classed("active",c===i),l(n,c===i)}})};Tm.hasButtons=function(e){var t=this.buttons;if(!t||e.length!==t.length)return!1;for(var r=0;r{"use strict";var eft=hf(),gce=Ru(),uN=qa(),tft=ip().isUnifiedHover,rft=pce(),fP=aN(),ift=oN().DRAW_MODES,nft=Dr().extendDeep;mce.exports=function(t){var r=t._fullLayout,n=t._context,i=r._modeBar;if(!n.displayModeBar&&!n.watermark){i&&(i.destroy(),delete r._modeBar);return}if(!Array.isArray(n.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(n.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var a=n.modeBarButtons,o;Array.isArray(a)&&a.length?o=cft(a):!n.displayModeBar&&n.watermark?o=[]:o=aft(t),i?i.update(t,o):r._modeBar=rft(t,o)};function aft(e){var t=e._fullLayout,r=e._fullData,n=e._context;function i(N,j){if(typeof j=="string"){if(j.toLowerCase()===N.toLowerCase())return!0}else{var re=j.name,oe=j._cat||j.name;if(re===N||oe===N.toLowerCase())return!0}return!1}var a=t.modebar.add;typeof a=="string"&&(a=[a]);var o=t.modebar.remove;typeof o=="string"&&(o=[o]);var s=n.modeBarButtonsToAdd.concat(a.filter(function(N){for(var j=0;j1?(P=["toggleHover"],T=["resetViews"]):f?(g=["zoomInGeo","zoomOutGeo"],P=["hoverClosestGeo"],T=["resetGeo"]):c?(P=["hoverClosest3d"],T=["resetCameraDefault3d","resetCameraLastSave3d"]):_?(g=["zoomInMapbox","zoomOutMapbox"],P=["toggleHover"],T=["resetViewMapbox"]):b?(g=["zoomInMap","zoomOutMap"],P=["toggleHover"],T=["resetViewMap"]):h?P=["hoverClosestPie"]:E?(P=["hoverClosestCartesian","hoverCompareCartesian"],T=["resetViewSankey"]):P=["toggleHover"],u&&P.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(lft(r)||L)&&(P=[]),u&&!S&&(g=["zoomIn2d","zoomOut2d","autoScale2d"],T[0]!=="resetViews"&&(T=["resetScale2d"])),c?z=["zoom3d","pan3d","orbitRotation","tableRotation"]:u&&!S||v?z=["zoom2d","pan2d"]:_||b||f?z=["pan2d"]:p&&(z=["zoom2d"]),sft(r)&&z.push("select2d","lasso2d");var O=[],V=function(N){O.indexOf(N)===-1&&P.indexOf(N)!==-1&&O.push(N)};if(Array.isArray(s)){for(var G=[],Z=0;Z{"use strict";_ce.exports={moduleType:"component",name:"modebar",layoutAttributes:sN(),supplyLayoutDefaults:fce(),manage:yce()}});var fN=ye((jar,xce)=>{"use strict";var fft=$h().FROM_BL;xce.exports=function(t,r,n){n===void 0&&(n=fft[t.constraintoward||"center"]);var i=[t.r2l(t.range[0]),t.r2l(t.range[1])],a=i[0]+(i[1]-i[0])*n;t.range=t._input.range=[t.l2r(a+(i[0]-a)*r),t.l2r(a+(i[1]-a)*r)],t.setScale()}});var Nb=ye(yM=>{"use strict";var Bb=Dr(),hN=Tg(),Eg=hf().id2name,hft=Rd(),bce=fN(),dft=ym(),vft=fs().ALMOST_EQUAL,pft=$h().FROM_BL;yM.handleDefaults=function(e,t,r){var n=r.axIds,i=r.axHasImage,a=t._axisConstraintGroups=[],o=t._axisMatchGroups=[],s,l,u,c,f,h,d,v;for(s=0;sa?r.substr(a):n.substr(i))+o}function mft(e,t){for(var r=t._size,n=r.h/r.w,i={},a=Object.keys(e),o=0;ovft*v&&!k)){for(a=0;az&&reP&&(P=re);var _e=(P-g)/(2*T);f/=_e,g=l.l2r(g),P=l.l2r(P),l.range=l._input.range=x{"use strict";var dP=Oa(),Nv=qa(),Jp=Mc(),S0=Dr(),pN=ru(),gN=dM(),_M=ka(),J3=So(),Sce=Eb(),Lce=cN(),xM=ho(),Cy=$h(),Pce=Nb(),yft=Pce.enforce,_ft=Pce.clean,Mce=Tg().doAutoRange,Ice="start",xft="middle",Rce="end",bft=hd().zindexSeparator;pd.layoutStyles=function(e){return S0.syncOrAsync([Jp.doAutoMargin,Tft],e)};function wft(e,t,r){for(var n=0;n=e[1]||i[1]<=e[0])&&a[0]t[0])return!0}return!1}function Tft(e){var t=e._fullLayout,r=t._size,n=r.p,i=xM.list(e,"",!0),a,o,s,l,u,c;if(t._paperdiv.style({width:e._context.responsive&&t.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":t.width+"px",height:e._context.responsive&&t.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":t.height+"px"}).selectAll(".main-svg").call(J3.setSize,t.width,t.height),e._context.setBackground(e,t.paper_bgcolor),pd.drawMainTitle(e),Lce.manage(e),!t._has("cartesian"))return Jp.previousPromises(e);function f(Pe,ge,Re){var ce=Pe._lw/2;if(Pe._id.charAt(0)==="x"){if(ge){if(Re==="top")return ge._offset-n-ce}else return r.t+r.h*(1-(Pe.position||0))+ce%1;return ge._offset+ge._length+n+ce}if(ge){if(Re==="right")return ge._offset+ge._length+n+ce}else return r.l+r.w*(Pe.position||0)+ce%1;return ge._offset-n-ce}for(a=0;a0){Eft(e,a,u,l),s.attr({x:o,y:a,"text-anchor":n,dy:Cce(t.yanchor)}).call(pN.positionText,o,a);var c=(t.text.match(pN.BR_TAG_ALL)||[]).length;if(c){var f=Cy.LINE_SPACING*c+Cy.MID_SHIFT;t.y===0&&(f=-f),s.selectAll(".line").each(function(){var b=+this.getAttribute("dy").slice(0,-2)-f+"em";this.setAttribute("dy",b)})}var h=dP.select(e).selectAll(".gtitle-subtitle");if(h.node()){var d=s.node().getBBox(),v=d.y+d.height,_=v+Sce.SUBTITLE_PADDING_EM*t.subtitle.font.size;h.attr({x:o,y:_,"text-anchor":n,dy:Cce(t.yanchor)}).call(pN.positionText,o,_)}}}};function Aft(e,t,r,n,i){var a=t.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,o=S0.isTopAnchor(t)?n:n-i,s=r==="b"?a-o:o;return S0.isTopAnchor(t)&&r==="t"||S0.isBottomAnchor(t)&&r==="b"?!1:s.5?"t":"b",o=e._fullLayout.margin[a],s=0;return t.yref==="paper"?s=r+t.pad.t+t.pad.b:t.yref==="container"&&(s=Sft(a,n,i,e._fullLayout.height,r)+t.pad.t+t.pad.b),s>o?s:0}function Eft(e,t,r,n){var i="title.automargin",a=e._fullLayout.title,o=a.y>.5?"t":"b",s={x:a.x,y:a.y,t:0,b:0},l={};a.yref==="paper"&&Aft(e,a,o,t,n)?s[o]=r:a.yref==="container"&&(l[o]=r,e._fullLayout._reservedMargin[i]=l),Jp.allowAutoMargin(e,i),Jp.autoMargin(e,i,s)}function kft(e,t){var r=e.title,n=e._size,i=0;switch(t===Ice?i=r.pad.l:t===Rce&&(i=-r.pad.r),r.xref){case"paper":return n.l+n.w*r.x+i;case"container":default:return e.width*r.x+i}}function Cft(e,t){var r=e.title,n=e._size,i=0;if(t==="0em"||!t?i=-r.pad.b:t===Cy.CAP_SHIFT+"em"&&(i=r.pad.t),r.y==="auto")return n.t/2;switch(r.yref){case"paper":return n.t+n.h-n.h*r.y+i;case"container":default:return e.height-e.height*r.y+i}}function Cce(e){return e==="top"?Cy.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":Cy.MID_SHIFT+"em"}function Lft(e){var t=e.title,r=xft;return S0.isRightAnchor(t)?r=Rce:S0.isLeftAnchor(t)&&(r=Ice),r}function Pft(e){var t=e.title,r="0em";return S0.isTopAnchor(t)?r=Cy.CAP_SHIFT+"em":S0.isMiddleAnchor(t)&&(r=Cy.MID_SHIFT+"em"),r}pd.doTraceStyle=function(e){var t=e.calcdata,r=[],n;for(n=0;n{"use strict";var Ift=u_().readPaths,Rft=iP(),Dce=Q1().clearOutlineControllers,mN=ka(),Fce=So(),Dft=vl().arrayEditor,zce=f_(),Fft=zce.getPathString;qce.exports={draw:vP,drawOne:Oce,activateLastSelection:qft};function vP(e){var t=e._fullLayout;Dce(e),t._selectionLayer.selectAll("path").remove();for(var r in t._plots){var n=t._plots[r].selectionLayer;n&&n.selectAll("path").remove()}for(var i=0;i=0;b--){var p=o.append("path").attr(l).style("opacity",b?.1:u).call(mN.stroke,f).call(mN.fill,c).call(Fce.dashLine,b?"solid":d,b?4+h:h);if(zft(p,e,n),v){var k=Dft(e.layout,"selections",n);p.style({cursor:"move"});var E={element:p.node(),plotinfo:i,gd:e,editHelpers:k,isActiveSelection:!0},S=Ift(s,e);Rft(S,p,E)}else p.style("pointer-events",b?"all":"none");_[b]=p}var L=_[0],x=_[1];x.node().addEventListener("click",function(){return Oft(e,L)})}}function zft(e,t,r){var n=r.xref+r.yref;Fce.setClipUrl(e,"clip"+t._fullLayout._uid+n,t)}function Oft(e,t){if(pP(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeSelectionIndex){yN(e);return}e._fullLayout._activeSelectionIndex=n,e._fullLayout._deactivateSelection=yN,vP(e)}}}function qft(e){if(pP(e)){var t=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=t,e._fullLayout._deactivateSelection=yN,vP(e)}}function yN(e){if(pP(e)){var t=e._fullLayout._activeSelectionIndex;t>=0&&(Dce(e),delete e._fullLayout._activeSelectionIndex,vP(e))}}});var Nce=ye((Yar,Bce)=>{function Bft(){var e,t=0,r=!1;function n(i,a){return e.list.push({type:i,data:a?JSON.parse(JSON.stringify(a)):void 0}),e}return e={list:[],segmentId:function(){return t++},checkIntersection:function(i,a){return n("check",{seg1:i,seg2:a})},segmentChop:function(i,a){return n("div_seg",{seg:i,pt:a}),n("chop",{seg:i,pt:a})},statusRemove:function(i){return n("pop_seg",{seg:i})},segmentUpdate:function(i){return n("seg_update",{seg:i})},segmentNew:function(i,a){return n("new_seg",{seg:i,primary:a})},segmentRemove:function(i){return n("rem_seg",{seg:i})},tempStatus:function(i,a,o){return n("temp_status",{seg:i,above:a,below:o})},rewind:function(i){return n("rewind",{seg:i})},status:function(i,a,o){return n("status",{seg:i,above:a,below:o})},vert:function(i){return i===r?e:(r=i,n("vert",{x:i}))},log:function(i){return typeof i!="string"&&(i=JSON.stringify(i,!1," ")),n("log",{txt:i})},reset:function(){return n("reset")},selected:function(i){return n("selected",{segs:i})},chainStart:function(i){return n("chain_start",{seg:i})},chainRemoveHead:function(i,a){return n("chain_rem_head",{index:i,pt:a})},chainRemoveTail:function(i,a){return n("chain_rem_tail",{index:i,pt:a})},chainNew:function(i,a){return n("chain_new",{pt1:i,pt2:a})},chainMatch:function(i){return n("chain_match",{index:i})},chainClose:function(i){return n("chain_close",{index:i})},chainAddHead:function(i,a){return n("chain_add_head",{index:i,pt:a})},chainAddTail:function(i,a){return n("chain_add_tail",{index:i,pt:a})},chainConnect:function(i,a){return n("chain_con",{index1:i,index2:a})},chainReverse:function(i){return n("chain_rev",{index:i})},chainJoin:function(i,a){return n("chain_join",{index1:i,index2:a})},done:function(){return n("done")}},e}Bce.exports=Bft});var Vce=ye((Kar,Uce)=>{function Nft(e){typeof e!="number"&&(e=1e-10);var t={epsilon:function(r){return typeof r=="number"&&(e=r),e},pointAboveOrOnLine:function(r,n,i){var a=n[0],o=n[1],s=i[0],l=i[1],u=r[0],c=r[1];return(s-a)*(c-o)-(l-o)*(u-a)>=-e},pointBetween:function(r,n,i){var a=r[1]-n[1],o=i[0]-n[0],s=r[0]-n[0],l=i[1]-n[1],u=s*o+a*l;if(u-e)},pointsSameX:function(r,n){return Math.abs(r[0]-n[0])e!=s-a>e&&(o-c)*(a-f)/(s-f)+c-i>e&&(l=!l),o=c,s=f}return l}};return t}Uce.exports=Nft});var Hce=ye((Jar,Gce)=>{var Uft={create:function(){var e={root:{root:!0,next:null},exists:function(t){return!(t===null||t===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(t,r){for(var n=e.root,i=e.root.next;i!==null;){if(r(i)){t.prev=i.prev,t.next=i,i.prev.next=t,i.prev=t;return}n=i,i=i.next}n.next=t,t.prev=n,t.next=null},findTransition:function(t){for(var r=e.root,n=e.root.next;n!==null&&!t(n);)r=n,n=n.next;return{before:r===e.root?null:r,after:n,insert:function(i){return i.prev=r,i.next=n,r.next=i,n!==null&&(n.prev=i),i}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};Gce.exports=Uft});var Wce=ye(($ar,jce)=>{var wM=Hce();function Vft(e,t,r){function n(v,_){return{id:r?r.segmentId():-1,start:v,end:_,myFill:{above:null,below:null},otherFill:null}}function i(v,_,b){return{id:r?r.segmentId():-1,start:v,end:_,myFill:{above:b.myFill.above,below:b.myFill.below},otherFill:null}}var a=wM.create();function o(v,_,b,p,k,E){var S=t.pointsCompare(_,k);return S!==0?S:t.pointsSame(b,E)?0:v!==p?v?1:-1:t.pointAboveOrOnLine(b,p?k:E,p?E:k)?1:-1}function s(v,_){a.insertBefore(v,function(b){var p=o(v.isStart,v.pt,_,b.isStart,b.pt,b.other.pt);return p<0})}function l(v,_){var b=wM.node({isStart:!0,pt:v.start,seg:v,primary:_,other:null,status:null});return s(b,v.end),b}function u(v,_,b){var p=wM.node({isStart:!1,pt:_.end,seg:_,primary:b,other:v,status:null});v.other=p,s(p,v.pt)}function c(v,_){var b=l(v,_);return u(b,v,_),b}function f(v,_){r&&r.segmentChop(v.seg,_),v.other.remove(),v.seg.end=_,v.other.pt=_,s(v.other,v.pt)}function h(v,_){var b=i(_,v.seg.end,v.seg);return f(v,_),c(b,v.primary)}function d(v,_){var b=wM.create();function p(G,Z){var H=G.seg.start,N=G.seg.end,j=Z.seg.start,re=Z.seg.end;return t.pointsCollinear(H,j,re)?t.pointsCollinear(N,j,re)||t.pointAboveOrOnLine(N,j,re)?1:-1:t.pointAboveOrOnLine(H,j,re)?1:-1}function k(G){return b.findTransition(function(Z){var H=p(G,Z.ev);return H>0})}function E(G,Z){var H=G.seg,N=Z.seg,j=H.start,re=H.end,oe=N.start,_e=N.end;r&&r.checkIntersection(H,N);var Ee=t.linesIntersect(j,re,oe,_e);if(Ee===!1){if(!t.pointsCollinear(j,re,oe)||t.pointsSame(j,_e)||t.pointsSame(re,oe))return!1;var Ce=t.pointsSame(j,oe),me=t.pointsSame(re,_e);if(Ce&&me)return Z;var ie=!Ce&&t.pointBetween(j,oe,_e),Se=!me&&t.pointBetween(re,oe,_e);if(Ce)return Se?h(Z,re):h(G,_e),Z;ie&&(me||(Se?h(Z,re):h(G,_e)),h(Z,j))}else Ee.alongA===0&&(Ee.alongB===-1?h(G,oe):Ee.alongB===0?h(G,Ee.pt):Ee.alongB===1&&h(G,_e)),Ee.alongB===0&&(Ee.alongA===-1?h(Z,j):Ee.alongA===0?h(Z,Ee.pt):Ee.alongA===1&&h(Z,re));return!1}for(var S=[];!a.isEmpty();){var L=a.getHead();if(r&&r.vert(L.pt[0]),L.isStart){let G=function(){if(C){var Z=E(L,C);if(Z)return Z}return M?E(L,M):!1};var V=G;r&&r.segmentNew(L.seg,L.primary);var x=k(L),C=x.before?x.before.ev:null,M=x.after?x.after.ev:null;r&&r.tempStatus(L.seg,C?C.seg:!1,M?M.seg:!1);var g=G();if(g){if(e){var P;L.seg.myFill.below===null?P=!0:P=L.seg.myFill.above!==L.seg.myFill.below,P&&(g.seg.myFill.above=!g.seg.myFill.above)}else g.seg.otherFill=L.seg.myFill;r&&r.segmentUpdate(g.seg),L.other.remove(),L.remove()}if(a.getHead()!==L){r&&r.rewind(L.seg);continue}if(e){var P;L.seg.myFill.below===null?P=!0:P=L.seg.myFill.above!==L.seg.myFill.below,M?L.seg.myFill.below=M.seg.myFill.above:L.seg.myFill.below=v,P?L.seg.myFill.above=!L.seg.myFill.below:L.seg.myFill.above=L.seg.myFill.below}else if(L.seg.otherFill===null){var T;M?L.primary===M.primary?T=M.seg.otherFill.above:T=M.seg.myFill.above:T=L.primary?_:v,L.seg.otherFill={above:T,below:T}}r&&r.status(L.seg,C?C.seg:!1,M?M.seg:!1),L.other.status=x.insert(wM.node({ev:L}))}else{var z=L.status;if(z===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(b.exists(z.prev)&&b.exists(z.next)&&E(z.prev.ev,z.next.ev),r&&r.statusRemove(z.ev.seg),z.remove(),!L.primary){var O=L.seg.myFill;L.seg.myFill=L.seg.otherFill,L.seg.otherFill=O}S.push(L.seg)}a.getHead().remove()}return r&&r.done(),S}return e?{addRegion:function(v){for(var _,b=v[v.length-1],p=0;p{function Gft(e,t,r){var n=[],i=[];return e.forEach(function(a){var o=a.start,s=a.end;if(t.pointsSame(o,s)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}r&&r.chainStart(a);var l={index:0,matches_head:!1,matches_pt1:!1},u={index:0,matches_head:!1,matches_pt1:!1},c=l;function f(V,G,Z){return c.index=V,c.matches_head=G,c.matches_pt1=Z,c===l?(c=u,!1):(c=null,!0)}for(var h=0;h{function TM(e,t,r){var n=[];return e.forEach(function(i){var a=(i.myFill.above?8:0)+(i.myFill.below?4:0)+(i.otherFill&&i.otherFill.above?2:0)+(i.otherFill&&i.otherFill.below?1:0);t[a]!==0&&n.push({id:r?r.segmentId():-1,start:i.start,end:i.end,myFill:{above:t[a]===1,below:t[a]===2},otherFill:null})}),r&&r.selected(n),n}var Hft={union:function(e,t){return TM(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],t)},intersect:function(e,t){return TM(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],t)},difference:function(e,t){return TM(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],t)},differenceRev:function(e,t){return TM(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],t)},xor:function(e,t){return TM(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],t)}};Yce.exports=Hft});var $ce=ye((tor,Jce)=>{var jft={toPolygon:function(e,t){function r(a){if(a.length<=0)return e.segments({inverted:!1,regions:[]});function o(u){var c=u.slice(0,u.length-1);return e.segments({inverted:!1,regions:[c]})}for(var s=o(a[0]),l=1;l{var Wft=Nce(),Xft=Vce(),Qce=Wce(),Zft=Zce(),AM=Kce(),efe=$ce(),M0=!1,SM=Xft(),kp;kp={buildLog:function(e){return e===!0?M0=Wft():e===!1&&(M0=!1),M0===!1?!1:M0.list},epsilon:function(e){return SM.epsilon(e)},segments:function(e){var t=Qce(!0,SM,M0);return e.regions.forEach(t.addRegion),{segments:t.calculate(e.inverted),inverted:e.inverted}},combine:function(e,t){var r=Qce(!1,SM,M0);return{combined:r.calculate(e.segments,e.inverted,t.segments,t.inverted),inverted1:e.inverted,inverted2:t.inverted}},selectUnion:function(e){return{segments:AM.union(e.combined,M0),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:AM.intersect(e.combined,M0),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:AM.difference(e.combined,M0),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:AM.differenceRev(e.combined,M0),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:AM.xor(e.combined,M0),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:Zft(e.segments,SM,M0),inverted:e.inverted}},polygonFromGeoJSON:function(e){return efe.toPolygon(kp,e)},polygonToGeoJSON:function(e){return efe.fromPolygon(kp,SM,e)},union:function(e,t){return MM(e,t,kp.selectUnion)},intersect:function(e,t){return MM(e,t,kp.selectIntersect)},difference:function(e,t){return MM(e,t,kp.selectDifference)},differenceRev:function(e,t){return MM(e,t,kp.selectDifferenceRev)},xor:function(e,t){return MM(e,t,kp.selectXor)}};function MM(e,t,r){var n=kp.segments(e),i=kp.segments(t),a=kp.combine(n,i),o=r(a);return kp.polygon(o)}typeof window=="object"&&(window.PolyBool=kp);tfe.exports=kp});var nfe=ye((ior,ife)=>{ife.exports=function(t,r,n,i){var a=t[0],o=t[1],s=!1;n===void 0&&(n=0),i===void 0&&(i=r.length);for(var l=i-n,u=0,c=l-1;uo!=v>o&&a<(d-f)*(o-h)/(v-h)+f;_&&(s=!s)}return s}});var EM=ye((nor,afe)=>{"use strict";var xN=T6().dot,gP=fs().BADNUM,mP=afe.exports={};mP.tester=function(t){var r=t.slice(),n=r[0][0],i=n,a=r[0][1],o=a,s;for((r[r.length-1][0]!==r[0][0]||r[r.length-1][1]!==r[0][1])&&r.push(r[0]),s=1;si||p===gP||po||_&&u(v))}function f(v,_){var b=v[0],p=v[1];if(b===gP||bi||p===gP||po)return!1;var k=r.length,E=r[0][0],S=r[0][1],L=0,x,C,M,g,P;for(x=1;xMath.max(C,E)||p>Math.max(M,S)))if(ps||Math.abs(xN(f,u))>i)return!0;return!1};mP.filter=function(t,r){var n=[t[0]],i=0,a=0;function o(l){t.push(l);var u=n.length,c=i;n.splice(a+1);for(var f=c+1;f1){var s=t.pop();o(s)}return{addPt:o,raw:t,filtered:n}}});var sfe=ye((aor,ofe)=>{"use strict";ofe.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var Cfe=ye((oor,kfe)=>{"use strict";var lfe=rfe(),Yft=nfe(),LM=qa(),Kft=So().dashStyle,kM=ka(),Jft=vf(),$ft=ip().makeEventData,FM=Mg(),Qft=FM.freeMode,eht=FM.rectMode,PM=FM.drawMode,AN=FM.openMode,SN=FM.selectMode,ufe=f_(),cfe=pM(),pfe=iP(),gfe=Q1().clearOutline,mfe=u_(),bN=mfe.handleEllipse,tht=mfe.readPaths,rht=QL().newShapes,iht=ZB(),nht=_N().activateLastSelection,_P=Dr(),aht=_P.sorterAsc,yfe=EM(),CM=z6(),E0=hf().getFromId,oht=dM(),sht=bM().redrawReglTraces,xP=sfe(),Am=xP.MINSELECT,lht=yfe.filter,MN=yfe.tester,EN=YL(),ffe=EN.p2r,uht=EN.axValue,cht=EN.getTransform;function kN(e){return e.subplot!==void 0}function fht(e,t,r,n,i){var a=!kN(n),o=Qft(i),s=eht(i),l=AN(i),u=PM(i),c=SN(i),f=i==="drawline",h=i==="drawcircle",d=f||h,v=n.gd,_=v._fullLayout,b=c&&_.newselection.mode==="immediate"&&a,p=_._zoomlayer,k=n.element.getBoundingClientRect(),E=n.plotinfo,S=cht(E),L=t-k.left,x=r-k.top;_._calcInverseTransform(v);var C=_P.apply3DTransform(_._invTransform)(L,x);L=C[0],x=C[1];var M=_._invScaleX,g=_._invScaleY,P=L,T=x,z="M"+L+","+x,O=n.xaxes[0],V=n.yaxes[0],G=O._length,Z=V._length,H=e.altKey&&!(PM(i)&&l),N,j,re,oe,_e,Ee,Ce;xfe(e,v,n),o&&(N=lht([[L,x]],xP.BENDPX));var me=p.selectAll("path.select-outline-"+E.id).data([1]),ie=u?_.newshape:_.newselection;u&&(n.hasText=ie.label.text||ie.label.texttemplate);var Se=u&&!l?ie.fillcolor:"rgba(0,0,0,0)",Le=ie.line.color||(a?kM.contrast(v._fullLayout.plot_bgcolor):"#7f7f7f");me.enter().append("path").attr("class","select-outline select-outline-"+E.id).style({opacity:u?ie.opacity/2:1,"stroke-dasharray":Kft(ie.line.dash,ie.line.width),"stroke-width":ie.line.width+"px","shape-rendering":"crispEdges"}).call(kM.stroke,Le).call(kM.fill,Se).attr("fill-rule","evenodd").classed("cursor-move",!!u).attr("transform",S).attr("d",z+"Z");var Ae=p.append("path").attr("class","zoombox-corners").style({fill:kM.background,stroke:kM.defaultLine,"stroke-width":1}).attr("transform",S).attr("d","M0,0Z");if(u&&n.hasText){var Fe=p.select(".label-temp");Fe.empty()&&(Fe=p.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var Pe=_._uid+xP.SELECTID,ge=[],Re=bP(v,n.xaxes,n.yaxes,n.subplot);b&&!e.shiftKey&&(n._clearSubplotSelections=function(){if(a){var Ze=O._id,ut=V._id;Sfe(v,Ze,ut,Re);for(var pt=(v.layout||{}).selections||[],Zt=[],st=!1,lt=0;lt=0){v._fullLayout._deactivateShape(v);return}if(!u){var pt=_.clickmode;CM.done(Pe).then(function(){if(CM.clear(Pe),Ze===2){for(me.remove(),_e=0;_e-1&&_fe(ut,v,n.xaxes,n.yaxes,n.subplot,n,me),pt==="event"&&DM(v,void 0);Jft.click(v,ut,E.id)}).catch(_P.error)}},n.doneFn=function(){Ae.remove(),CM.done(Pe).then(function(){CM.clear(Pe),!b&&oe&&n.selectionDefs&&(oe.subtract=H,n.selectionDefs.push(oe),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,re)),(b||u)&&IM(n,b),n.doneFnCompleted&&n.doneFnCompleted(ge),c&&DM(v,Ce)}).catch(_P.error)}}function _fe(e,t,r,n,i,a,o){var s=t._hoverdata,l=t._fullLayout,u=l.clickmode,c=u.indexOf("event")>-1,f=[],h,d,v,_,b,p,k,E,S,L;if(ght(s)){xfe(e,t,a),h=bP(t,r,n,i);var x=mht(s,h),C=x.pointNumbers.length>0;if(C?yht(h,x):_ht(h)&&(k=dfe(x))){for(o&&o.remove(),L=0;L=0}function pht(e){return e._fullLayout._activeSelectionIndex>=0}function IM(e,t){var r=e.dragmode,n=e.plotinfo,i=e.gd;vht(i)&&i._fullLayout._deactivateShape(i),pht(i)&&i._fullLayout._deactivateSelection(i);var a=i._fullLayout,o=a._zoomlayer,s=PM(r),l=SN(r);if(s||l){var u=o.selectAll(".select-outline-"+n.id);if(u&&i._fullLayout._outlining){var c;s&&(c=rht(u,e)),c&&LM.call("_guiRelayout",i,{shapes:c});var f;l&&!kN(e)&&(f=iht(u,e)),f&&(i._fullLayout._noEmitSelectedAtStart=!0,LM.call("_guiRelayout",i,{selections:f}).then(function(){t&&nht(i)})),i._fullLayout._outlining=!1}}n.selection={},n.selection.selectionDefs=e.selectionDefs=[],n.selection.mergedPolygons=e.mergedPolygons=[]}function hfe(e){return e._id}function bP(e,t,r,n){if(!e.calcdata)return[];var i=[],a=t.map(hfe),o=r.map(hfe),s,l,u;for(u=0;u0,a=i?n[0]:r;return t.selectedpoints?t.selectedpoints.indexOf(a)>-1:!1}function yht(e,t){var r=[],n,i,a,o;for(o=0;o0&&r.push(n);if(r.length===1&&(a=r[0]===t.searchInfo,a&&(i=t.searchInfo.cd[0].trace,i.selectedpoints.length===t.pointNumbers.length))){for(o=0;o1||(t+=n.selectedpoints.length,t>1)))return!1;return t===1}function RM(e,t,r){var n;for(n=0;n-1&&t;if(!o&&t){var Ze=vfe(e,!0);if(Ze.length){var ut=Ze[0].xref,pt=Ze[0].yref;if(ut&&pt){var Zt=Mfe(Ze),st=Efe([E0(e,ut,"x"),E0(e,pt,"y")]);st(ge,Zt)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:ce&&DM(e,ge),h._reselect=!1}if(!o&&h._deselect){var lt=h._deselect;s=lt.xref,l=lt.yref,wht(s,l,c)||Sfe(e,s,l,n),ce&&(ge.points.length?DM(e,ge):PN(e)),h._deselect=!1}return{eventData:ge,selectionTesters:r}}function bht(e){var t=e.calcdata;if(t)for(var r=0;r{"use strict";Lfe.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var zM=ye((lor,Pfe)=>{"use strict";Pfe.exports={axisRefDescription:function(e,t,r){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",t,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",t,"("+r+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",t,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",t,"and the",r,"of the domain of the","second",e,"axis."].join(" ")}}});var Ub=ye((cor,Dfe)=>{"use strict";var Ife=IN(),Rfe=ec(),wP=hd(),Eht=vl().templatedArray,uor=zM();Dfe.exports=Eht("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:Rfe({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:Ife.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:Ife.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",wP.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",wP.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",wP.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",wP.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:Rfe({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Sm=ye((hor,Ffe)=>{"use strict";Ffe.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var kg=ye((dor,zfe)=>{"use strict";zfe.exports=function(t){return{valType:"color",editType:"style",anim:!0}}});var pf=ye((vor,Gfe)=>{"use strict";var Ofe=df().axisHoverFormat,{hovertemplateAttrs:kht,texttemplateAttrs:Cht,templatefallbackAttrs:qfe}=Ll(),Bfe=Tu(),Lht=ec(),Pht=Pd().dash,Iht=Pd().pattern,Rht=So(),Dht=Sm(),TP=Ao().extendFlat,Fht=kg();function Nfe(e){return{valType:"any",dflt:0,editType:"calc"}}function Ufe(e){return{valType:"any",editType:"calc"}}function Vfe(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}Gfe.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:Nfe("x"),yperiod:Nfe("y"),xperiod0:Ufe("x0"),yperiod0:Ufe("y0"),xperiodalignment:Vfe("x"),yperiodalignment:Vfe("y"),xhoverformat:Ofe("x"),yhoverformat:Ofe("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:Cht(),texttemplatefallback:qfe({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:kht({},{keys:Dht.eventDataKeys}),hovertemplatefallback:qfe(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:TP({},Pht,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:Fht(!0),fillgradient:TP({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:Iht,marker:TP({symbol:{valType:"enumerated",values:Rht.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:TP({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},Bfe("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},Bfe("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:Lht({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var RN=ye((gor,Wfe)=>{"use strict";var Hfe=Ub(),jfe=pf().line,zht=Pd().dash,AP=Ao().extendFlat,Oht=mc().overrideAll,qht=vl().templatedArray,por=zM();Wfe.exports=Oht(qht("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:AP({},Hfe.xref,{}),yref:AP({},Hfe.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:jfe.color,width:AP({},jfe.width,{min:1,dflt:1}),dash:AP({},zht,{dflt:"dot"})}}),"arraydraw","from-root")});var Kfe=ye((mor,Yfe)=>{"use strict";var Xfe=Dr(),SP=ho(),Bht=Yd(),Nht=RN(),Zfe=f_();Yfe.exports=function(t,r){Bht(t,r,{name:"selections",handleItemDefaults:Uht});for(var n=r.selections,i=0;i{"use strict";Jfe.exports=function(t,r,n){n("newselection.mode");var i=n("newselection.line.width");i&&(n("newselection.line.color"),n("newselection.line.dash")),n("activeselection.fillcolor"),n("activeselection.opacity")}});var OM=ye((_or,the)=>{"use strict";var Vht=qa(),Qfe=Dr(),ehe=hf();the.exports=function(t){return function(n,i){var a=n[t];if(Array.isArray(a))for(var o=Vht.subplotsRegistry.cartesian,s=o.idRegex,l=i._subplots,u=l.xaxis,c=l.yaxis,f=l.cartesian,h=i._has("cartesian"),d=0;d{"use strict";var rhe=_N(),qM=Cfe();ihe.exports={moduleType:"component",name:"selections",layoutAttributes:RN(),supplyLayoutDefaults:Kfe(),supplyDrawNewSelectionDefaults:$fe(),includeBasePlot:OM()("selections"),draw:rhe.draw,drawOne:rhe.drawOne,reselect:qM.reselect,prepSelect:qM.prepSelect,clearOutline:qM.clearOutline,clearSelectionsCache:qM.clearSelectionsCache,selectOnClick:qM.selectOnClick}});var NN=ye((bor,The)=>{"use strict";var qN=Oa(),k0=Dr(),nhe=k0.numberFormat,Ght=cd(),Hht=RL(),MP=qa(),dhe=k0.strTranslate,jht=ru(),ahe=ka(),d_=So(),Wht=vf(),ohe=ho(),Xht=Ag(),Zht=yv(),vhe=Mg(),EP=vhe.selectingOrDrawing,Yht=vhe.freeMode,Kht=$h().FROM_TL,Jht=dM(),$ht=bM().redrawReglTraces,Qht=Mc(),FN=hf().getFromId,edt=Of().prepSelect,tdt=Of().clearOutline,rdt=Of().selectOnClick,DN=fN(),BN=hd(),she=BN.MINDRAG,np=BN.MINZOOM,lhe=!0;function idt(e,t,r,n,i,a,o,s){var l=e._fullLayout._zoomlayer,u=o+s==="nsew",c=(o+s).length===1,f,h,d,v,_,b,p,k,E,S,L,x,C,M,g,P,T,z,O,V,G,Z,H;r+=t.yaxis._shift;function N(){if(f=t.xaxis,h=t.yaxis,E=f._length,S=h._length,p=f._offset,k=h._offset,d={},d[f._id]=f,v={},v[h._id]=h,o&&s)for(var It=t.overlays,mt=0;mt=0){er._fullLayout._deactivateShape(er);return}var lr=er._fullLayout.clickmode;if(ON(er),It===2&&!c&&cr(),u)lr.indexOf("select")>-1&&rdt(mt,er,_,b,t.id,oe),lr.indexOf("event")>-1&&Wht.click(er,mt,t.id);else if(It===1&&c){var Tr=o?h:f,Lr=o==="s"||s==="w"?0:1,ti=Tr._name+".range["+Lr+"]",Br=ndt(Tr,Lr),Vr="left",dt="middle";if(Tr.fixedrange)return;o?(dt=o==="n"?"top":"bottom",Tr.side==="right"&&(Vr="right")):s==="e"&&(Vr="right"),er._context.showAxisRangeEntryBoxes&&qN.select(re).call(jht.makeEditable,{gd:er,immediate:!0,background:er._fullLayout.paper_bgcolor,text:String(Br),fill:Tr.tickfont?Tr.tickfont.color:"#444",horizontalAlign:Vr,verticalAlign:dt}).on("edit",function(Ge){var Je=Tr.d2r(Ge);Je!==void 0&&MP.call("_guiRelayout",er,ti,Je)})}}Zht.init(oe);var Ce,me,ie,Se,Le,Ae,Fe,Pe,ge,Re;function ce(It,mt,er){var lr=re.getBoundingClientRect();Ce=mt-lr.left,me=er-lr.top,e._fullLayout._calcInverseTransform(e);var Tr=k0.apply3DTransform(e._fullLayout._invTransform)(Ce,me);Ce=Tr[0],me=Tr[1],ie={l:Ce,r:Ce,w:0,t:me,b:me,h:0},Se=e._hmpixcount?e._hmlumcount/e._hmpixcount:Ght(e._fullLayout.plot_bgcolor).getLuminance(),Le="M0,0H"+E+"V"+S+"H0V0",Ae=!1,Fe="xy",Re=!1,Pe=mhe(l,Se,p,k,Le),ge=yhe(l,p,k)}function Ze(It,mt){if(e._transitioningWithDuration)return!1;var er=Math.max(0,Math.min(E,Z*It+Ce)),lr=Math.max(0,Math.min(S,H*mt+me)),Tr=Math.abs(er-Ce),Lr=Math.abs(lr-me);ie.l=Math.min(Ce,er),ie.r=Math.max(Ce,er),ie.t=Math.min(me,lr),ie.b=Math.max(me,lr);function ti(){Fe="",ie.r=ie.l,ie.t=ie.b,ge.attr("d","M0,0Z")}if(L.isSubplotConstrained)Tr>np||Lr>np?(Fe="xy",Tr/E>Lr/S?(Lr=Tr*S/E,me>lr?ie.t=me-Lr:ie.b=me+Lr):(Tr=Lr*E/S,Ce>er?ie.l=Ce-Tr:ie.r=Ce+Tr),ge.attr("d",kP(ie))):ti();else if(x.isSubplotConstrained)if(Tr>np||Lr>np){Fe="xy";var Br=Math.min(ie.l/E,(S-ie.b)/S),Vr=Math.max(ie.r/E,(S-ie.t)/S);ie.l=Br*E,ie.r=Vr*E,ie.b=(1-Br)*S,ie.t=(1-Vr)*S,ge.attr("d",kP(ie))}else ti();else!M||Lr0){var Ge;if(x.isSubplotConstrained||!C&&M.length===1){for(Ge=0;Ge<_.length;Ge++)_[Ge].range=_[Ge]._r.slice(),DN(_[Ge],1-mt/S);It=mt*E/S,Vr=It/2}if(x.isSubplotConstrained||!M&&C.length===1){for(Ge=0;Ge1&&(ti.maxallowed!==void 0&&P===(ti.range[0]1&&(Br.maxallowed!==void 0&&T===(Br.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function odt(e,t,r){return e?e==="nsew"?r?"":t==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function mhe(e,t,r,n,i){return e.append("path").attr("class","zoombox").style({fill:t>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",dhe(r,n)).attr("d",i+"Z")}function yhe(e,t,r){return e.append("path").attr("class","zoombox-corners").style({fill:ahe.background,stroke:ahe.defaultLine,"stroke-width":1,opacity:0}).attr("transform",dhe(t,r)).attr("d","M0,0Z")}function _he(e,t,r,n,i,a){e.attr("d",n+"M"+r.l+","+r.t+"v"+r.h+"h"+r.w+"v-"+r.h+"h-"+r.w+"Z"),xhe(e,t,i,a)}function xhe(e,t,r,n){r||(e.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),t.transition().style("opacity",1).duration(200))}function ON(e){qN.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function bhe(e){lhe&&e.data&&e._context.showTips&&(k0.notifier(k0._(e,"Double-click to zoom back out"),"long"),lhe=!1)}function sdt(e,t){return"M"+(e.l-.5)+","+(t-np-.5)+"h-3v"+(2*np+1)+"h3ZM"+(e.r+.5)+","+(t-np-.5)+"h3v"+(2*np+1)+"h-3Z"}function ldt(e,t){return"M"+(t-np-.5)+","+(e.t-.5)+"v-3h"+(2*np+1)+"v3ZM"+(t-np-.5)+","+(e.b+.5)+"v3h"+(2*np+1)+"v-3Z"}function kP(e){var t=Math.floor(Math.min(e.b-e.t,e.r-e.l,np)/2);return"M"+(e.l-3.5)+","+(e.t-.5+t)+"h3v"+-t+"h"+t+"v-3h-"+(t+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+t)+"h-3v"+-t+"h"+-t+"v-3h"+(t+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-t)+"h-3v"+t+"h"+-t+"v3h"+(t+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-t)+"h3v"+t+"h"+t+"v3h-"+(t+3)+"Z"}function fhe(e,t,r,n,i){for(var a=!1,o={},s={},l,u,c,f,h=(i||{}).xaHash,d=(i||{}).yaHash,v=0;v{"use strict";var udt=Oa(),CP=vf(),cdt=yv(),fdt=Ag(),Cg=NN().makeDragBox,gd=hd().DRAGGERSIZE;LP.initInteractions=function(t){var r=t._fullLayout;if(t._context.staticPlot){udt.select(t).selectAll(".drag").remove();return}if(!(!r._has("cartesian")&&!r._has("splom"))){var n=Object.keys(r._plots||{}).sort(function(a,o){if((r._plots[a].mainplot&&!0)===(r._plots[o].mainplot&&!0)){var s=a.split("y"),l=o.split("y");return s[0]===l[0]?Number(s[1]||1)-Number(l[1]||1):Number(s[0]||1)-Number(l[0]||1)}return r._plots[a].mainplot?1:-1});n.forEach(function(a){var o=r._plots[a],s=o.xaxis,l=o.yaxis;if(!o.mainplot){var u=Cg(t,o,s._offset,l._offset,s._length,l._length,"ns","ew");u.onmousemove=function(h){t._fullLayout._rehover=function(){t._fullLayout._hoversubplot===a&&t._fullLayout._plots[a]&&CP.hover(t,h,a)},CP.hover(t,h,a),t._fullLayout._lasthover=u,t._fullLayout._hoversubplot=a},u.onmouseout=function(h){t._dragging||(t._fullLayout._hoversubplot=null,cdt.unhover(t,h))},t._context.showAxisDragHandles&&(Cg(t,o,s._offset-gd,l._offset-gd,gd,gd,"n","w"),Cg(t,o,s._offset+s._length,l._offset-gd,gd,gd,"n","e"),Cg(t,o,s._offset-gd,l._offset+l._length,gd,gd,"s","w"),Cg(t,o,s._offset+s._length,l._offset+l._length,gd,gd,"s","e"))}if(t._context.showAxisDragHandles){if(a===s._mainSubplot){var c=s._mainLinePosition;s.side==="top"&&(c-=gd),Cg(t,o,s._offset+s._length*.1,c,s._length*.8,gd,"","ew"),Cg(t,o,s._offset,c,s._length*.1,gd,"","w"),Cg(t,o,s._offset+s._length*.9,c,s._length*.1,gd,"","e")}if(a===l._mainSubplot){var f=l._mainLinePosition;l.side!=="right"&&(f-=gd),Cg(t,o,f,l._offset+l._length*.1,gd,l._length*.8,"ns",""),Cg(t,o,f,l._offset+l._length*.9,gd,l._length*.1,"s",""),Cg(t,o,f,l._offset,gd,l._length*.1,"n","")}}});var i=r._hoverlayer.node();i.onmousemove=function(a){a.target=t._fullLayout._lasthover,CP.hover(t,a,r._hoversubplot)},i.onclick=function(a){a.target=t._fullLayout._lasthover,CP.click(t,a)},i.onmousedown=function(a){t._fullLayout._lasthover.onmousedown(a)},LP.updateFx(t)}};LP.updateFx=function(e){var t=e._fullLayout,r=t.dragmode==="pan"?"move":"crosshair";fdt(t._draggers,r)}});var Mhe=ye((Tor,She)=>{"use strict";var Ahe=qa();She.exports=function(t){for(var r=Ahe.layoutArrayContainers,n=Ahe.layoutArrayRegexes,i=t.split("[")[0],a,o,s=0;s{"use strict";var hdt=my(),VN=w6(),BM=G1(),ddt=R6().sorterAsc,GN=qa();NM.containerArrayMatch=Mhe();var vdt=NM.isAddVal=function(t){return t==="add"||hdt(t)},Ehe=NM.isRemoveVal=function(t){return t===null||t==="remove"};NM.applyContainerArrayChanges=function(t,r,n,i,a){var o=r.astr,s=GN.getComponentMethod(o,"supplyLayoutDefaults"),l=GN.getComponentMethod(o,"draw"),u=GN.getComponentMethod(o,"drawOne"),c=i.replot||i.recalc||s===VN||l===VN,f=t.layout,h=t._fullLayout;if(n[""]){Object.keys(n).length>1&&BM.warn("Full array edits are incompatible with other edits",o);var d=n[""][""];if(Ehe(d))r.set(null);else if(Array.isArray(d))r.set(d);else return BM.warn("Unrecognized full array edit value",o,d),!0;return c?!1:(s(f,h),l(t),!0)}var v=Object.keys(n).map(Number).sort(ddt),_=r.get(),b=_||[],p=a(h,o).get(),k=[],E=-1,S=b.length,L,x,C,M,g,P,T,z;for(L=0;Lb.length-(T?0:1)){BM.warn("index out of range",o,C);continue}if(P!==void 0)g.length>1&&BM.warn("Insertion & removal are incompatible with edits to the same index.",o,C),Ehe(P)?k.push(C):T?(P==="add"&&(P={}),b.splice(C,0,P),p&&p.splice(C,0,{})):BM.warn("Unrecognized full object edit value",o,C,P),E===-1&&(E=C);else for(x=0;x=0;L--)b.splice(k[L],1),p&&p.splice(k[L],1);if(b.length?_||r.set(b):r.set(null),c)return!1;if(s(f,h),u!==VN){var O;if(E===-1)O=v;else{for(S=Math.max(b.length,S),O=[],L=0;L=E));L++)O.push(C);for(L=E;L{"use strict";var Ihe=Eo(),Rhe=qa(),Uv=Dr(),UM=Mc(),Dhe=hf(),Fhe=ka(),VM=Dhe.cleanId,pdt=Dhe.getFromTrace,HN=Rhe.traceIs,gdt=["x","y","z"];C0.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&Uv.log("Clearing previous rejected promises from queue."),e._promises=[]};C0.cleanLayout=function(e){var t,r;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var n=(UM.subplotsRegistry.cartesian||{}).attrRegex,i=(UM.subplotsRegistry.polar||{}).attrRegex,a=(UM.subplotsRegistry.ternary||{}).attrRegex,o=(UM.subplotsRegistry.gl3d||{}).attrRegex,s=Object.keys(e);for(t=0;t3?(b.x=1.02,b.xanchor="left"):b.x<-2&&(b.x=-.02,b.xanchor="right"),b.y>3?(b.y=1.02,b.yanchor="bottom"):b.y<-2&&(b.y=-.02,b.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),Fhe.clean(e),e.template&&e.template.layout&&C0.cleanLayout(e.template.layout),e};function $3(e,t){var r=e[t],n=t.charAt(0);r&&r!=="paper"&&(e[t]=VM(r,n,!0))}C0.cleanData=function(e){for(var t=0;t0)return e.substr(0,t)}C0.hasParent=function(e,t){for(var r=Phe(t);r;){if(r in e)return!0;r=Phe(r)}return!1};C0.clearAxisTypes=function(e,t,r){for(var n=0;n{let r=(...n)=>n.every(i=>Uv.isPlainObject(i))||n.every(i=>Array.isArray(i));if([e,t].every(n=>Array.isArray(n))){if(e.length!==t.length)return!1;for(let n=0;nUv.isPlainObject(n))){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e){if(n.startsWith("_"))continue;let i=e[n],a=t[n];if(i!==a&&!(r(i,a)?jN(i,a):!1))return!1}return!0}return!1};C0.collectionsAreEqual=jN});var GP=ye(_l=>{"use strict";var DP=Oa(),_dt=Eo(),xdt=iq(),Sa=Dr(),Ec=Sa.nestedProperty,ZN=y3(),ap=mne(),L0=qa(),UP=b3(),Qo=Mc(),Vv=ho(),bdt=_B(),wdt=Rd(),WN=So(),Tdt=ka(),Adt=UN().initInteractions,Sdt=Wp(),Mdt=Of().clearOutline,Uhe=cb().dfltConfig,IP=khe(),vh=zhe(),Au=bM(),v_=mc(),Edt=hd().AX_NAME_PATTERN,XN=0,Ohe=5;function kdt(e,t,r,n){var i;if(e=Sa.getGraphDiv(e),ZN.init(e),Sa.isPlainObject(t)){var a=t;t=a.data,r=a.layout,n=a.config,i=a.frames}var o=ZN.triggerHandler(e,"plotly_beforeplot",[t,r,n]);if(o===!1)return Promise.reject();!t&&!r&&!Sa.isPlotDiv(e)&&Sa.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function s(){if(i)return _l.addFrames(e,i)}Ghe(e,n),r||(r={}),DP.select(e).classed("js-plotly-plot",!0),WN.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var l=(e.data||[]).length===0&&Array.isArray(t);Array.isArray(t)&&(vh.cleanData(t),l?e.data=t:e.data.push.apply(e.data,t),e.empty=!1),(!e.layout||l)&&(e.layout=vh.cleanLayout(r)),Qo.supplyDefaults(e);var u=e._fullLayout,c=u._has("cartesian");u._replotting=!0,(l||u._shouldCreateBgLayer)&&(Jdt(e),u._shouldCreateBgLayer&&delete u._shouldCreateBgLayer),WN.initGradients(e),WN.initPatterns(e),l&&Vv.saveShowSpikeInitial(e);var f=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;f&&Qo.doCalcdata(e);for(var h=0;h=e.data.length||i<-e.data.length)throw new Error(r+" must be valid indices for gd.data.");if(t.indexOf(i,n+1)>-1||i>=0&&t.indexOf(-e.data.length+i)>-1||i<0&&t.indexOf(e.data.length+i)>-1)throw new Error("each index in "+r+" must be unique.")}}function Hhe(e,t,r){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(t)||(t=[t]),zP(e,t,"currentIndices"),typeof r!="undefined"&&!Array.isArray(r)&&(r=[r]),typeof r!="undefined"&&zP(e,r,"newIndices"),typeof r!="undefined"&&t.length!==r.length)throw new Error("current and new indices must be of equal length.")}function Rdt(e,t,r){var n,i;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("traces must be defined.");for(Array.isArray(t)||(t=[t]),n=0;n=0&&c=0&&c0&&typeof M.parts[T]!="string";)T--;var z=M.parts[T],O=M.parts[T-1]+"."+z,V=M.parts.slice(0,T).join("."),G=Ec(e.layout,V).get(),Z=Ec(n,V).get(),H=M.get();if(g!==void 0){p[C]=g,k[C]=z==="reverse"?g:Ly(H);var N=UP.getLayoutValObject(n,M.parts);if(N&&N.impliedEdits&&g!==null)for(var j in N.impliedEdits)E(Sa.relativeAttr(C,j),N.impliedEdits[j]);if(["width","height"].indexOf(C)!==-1)if(g){E("autosize",null);var re=C==="height"?"width":"height";E(re,n[re])}else n[C]=e._initialAutoSize[C];else if(C==="autosize")E("width",g?null:n.width),E("height",g?null:n.height);else if(O.match(Qhe))x(O),Ec(n,V+"._inputRange").set(null);else if(O.match(ede)){x(O),Ec(n,V+"._inputRange").set(null);var oe=Ec(n,V).get();oe._inputDomain&&(oe._input.domain=oe._inputDomain.slice())}else O.match(Odt)&&Ec(n,V+"._inputDomain").set(null);if(z==="type"){L=G;var _e=Z.type==="linear"&&g==="log",Ee=Z.type==="log"&&g==="linear";if(_e||Ee){if(!L||!L.range)E(V+".autorange",!0);else if(Z.autorange)_e&&(L.range=L.range[1]>L.range[0]?[1,2]:[2,1]);else{var Ce=L.range[0],me=L.range[1];_e?(Ce<=0&&me<=0&&E(V+".autorange",!0),Ce<=0?Ce=me/1e6:me<=0&&(me=Ce/1e6),E(V+".range[0]",Math.log(Ce)/Math.LN10),E(V+".range[1]",Math.log(me)/Math.LN10)):(E(V+".range[0]",Math.pow(10,Ce)),E(V+".range[1]",Math.pow(10,me)))}Array.isArray(n._subplots.polar)&&n._subplots.polar.length&&n[M.parts[0]]&&M.parts[1]==="radialaxis"&&delete n[M.parts[0]]._subplot.viewInitial["radialaxis.range"],L0.getComponentMethod("annotations","convertCoords")(e,Z,g,E),L0.getComponentMethod("images","convertCoords")(e,Z,g,E)}else E(V+".autorange",!0),E(V+".range",null);Ec(n,V+"._inputRange").set(null)}else if(z.match(Edt)){var ie=Ec(n,C).get(),Se=(g||{}).type;(!Se||Se==="-")&&(Se="linear"),L0.getComponentMethod("annotations","convertCoords")(e,ie,Se,E),L0.getComponentMethod("images","convertCoords")(e,ie,Se,E)}var Le=IP.containerArrayMatch(C);if(Le){c=Le.array,f=Le.index;var Ae=Le.property,Fe=N||{editType:"calc"};f!==""&&Ae===""&&(IP.isAddVal(g)?k[C]=null:IP.isRemoveVal(g)?k[C]=(Ec(r,c).get()||[])[f]:Sa.warn("unrecognized full object value",t)),v_.update(b,Fe),u[c]||(u[c]={});var Pe=u[c][f];Pe||(Pe=u[c][f]={}),Pe[Ae]=g,delete t[C]}else z==="reverse"?(G.range?G.range.reverse():(E(V+".autorange",!0),G.range=[1,0]),Z.autorange?b.calc=!0:b.plot=!0):(C==="dragmode"&&(g===!1&&H!==!1||g!==!1&&H===!1)||n._has("scatter-like")&&n._has("regl")&&C==="dragmode"&&(g==="lasso"||g==="select")&&!(H==="lasso"||H==="select")?b.plot=!0:N?v_.update(b,N):b.calc=!0,M.set(g))}}for(c in u){var ge=IP.applyContainerArrayChanges(e,a(r,c),u[c],b,a);ge||(b.plot=!0)}for(var Re in S){L=Vv.getFromId(e,Re);var ce=L&&L._constraintGroup;if(ce){b.calc=!0;for(var Ze in ce)S[Ze]||(Vv.getFromId(e,Ze)._constraintShrinkable=!0)}}(rde(e)||t.height||t.width)&&(b.plot=!0);var ut=n.shapes;for(f=0;f1;)if(n.pop(),r=Ec(t,n.join(".")+".uirevision").get(),r!==void 0)return r;return t.uirevision}function Ndt(e,t){for(var r=0;r[V,e._ev.listeners(V)]);a=_l.newPlot(e,t,r,n).then(()=>{for(let[V,G]of O)G.forEach(Z=>e.on(V,Z));return _l.react(e,t,r,n)})}else{e.data=t||[],vh.cleanData(e.data),e.layout=r||{},vh.cleanLayout(e.layout),Vdt(e.data,e.layout,s,l),Qo.supplyDefaults(e,{skipUpdateCalc:!0});var f=e._fullData,h=e._fullLayout,d=h.datarevision===void 0,v=h.transition,_=jdt(e,l,h,d,v),b=_.newDataRevision,p=Hdt(e,s,f,d,v,b);if(rde(e)&&(_.layoutReplot=!0),p.calc||_.calc){e.calcdata=void 0;for(var k=Object.getOwnPropertyNames(h),E=0;E(c||e.emit("plotly_react",{config:n,data:t,layout:r}),e))}function Hdt(e,t,r,n,i,a){var o=t.length===r.length;if(!i&&!o)return{fullReplot:!0,calc:!0};var s=v_.traceFlags();s.arrays={},s.nChanges=0,s.nChangesAnim=0;var l,u;function c(d){var v=UP.getTraceValObject(u,d);return!u._module.animatable&&v.anim&&(v.anim=!1),v}var f={getValObject:c,flags:s,immutable:n,transition:i,newDataRevision:a,gd:e},h={};for(l=0;l=i.length?i[0]:i[u]:i}function s(u){return Array.isArray(a)?u>=a.length?a[0]:a[u]:a}function l(u,c){var f=0;return function(){if(u&&++f===c)return u()}}return new Promise(function(u,c){function f(){if(n._frameQueue.length!==0){for(;n._frameQueue.length;){var z=n._frameQueue.pop();z.onInterrupt&&z.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function h(z){if(z.length!==0){for(var O=0;On._timeToNext&&v()};z()}var b=0;function p(z){return Array.isArray(i)?b>=i.length?z.transitionOpts=i[b]:z.transitionOpts=i[0]:z.transitionOpts=i,b++,z}var k,E,S=[],L=t==null,x=Array.isArray(t),C=!L&&!x&&Sa.isPlainObject(t);if(C)S.push({type:"object",data:p(Sa.extendFlat({},t))});else if(L||["string","number"].indexOf(typeof t)!==-1)for(k=0;k0&&PP)&&T.push(E);S=T}}S.length>0?h(S):(e.emit("plotly_animated"),u())})}function Xdt(e,t,r){if(e=Sa.getGraphDiv(e),t==null)return Promise.resolve();if(!Sa.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var n,i,a,o,s=e._transitionData._frames,l=e._transitionData._frameHash;if(!Array.isArray(t))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+t);var u=s.length+t.length*2,c=[],f={};for(n=t.length-1;n>=0;n--)if(Sa.isPlainObject(t[n])){var h=t[n].name,d=(l[h]||f[h]||{}).name,v=t[n].name,_=l[d]||f[d];d&&v&&typeof v=="number"&&_&&XNM.index?-1:C.index=0;n--){if(i=c[n].frame,typeof i.name=="number"&&Sa.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!i.name)for(;l[i.name="frame "+e._transitionData._counter++];);if(l[i.name]){for(a=0;a=0;r--)n=t[r],a.push({type:"delete",index:n}),o.unshift({type:"insert",index:n,value:i[n]});var s=Qo.modifyFrames,l=Qo.modifyFrames,u=[e,o],c=[e,a];return ap&&ap.add(e,s,u,l,c),Qo.modifyFrames(e,a)}function Ydt(e){e=Sa.getGraphDiv(e);var t=e._fullLayout||{},r=e._fullData||[];return Qo.cleanPlot([],{},r,t),Qo.purge(e),ZN.purge(e),t._container&&t._container.remove(),delete e._context,e}function Kdt(e){var t=e._fullLayout,r=e.getBoundingClientRect();if(!Sa.equalDomRects(r,t._lastBBox)){var n=t._invTransform=Sa.inverseTransformMatrix(Sa.getFullTransformMatrix(e));t._invScaleX=Math.sqrt(n[0][0]*n[0][0]+n[0][1]*n[0][1]+n[0][2]*n[0][2]),t._invScaleY=Math.sqrt(n[1][0]*n[1][0]+n[1][1]*n[1][1]+n[1][2]*n[1][2]),t._lastBBox=r}}function Jdt(e){var t=DP.select(e),r=e._fullLayout;if(r._calcInverseTransform=Kdt,r._calcInverseTransform(e),r._container=t.selectAll(".plot-container").data([0]),r._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),r._paperdiv=r._container.selectAll(".svg-container").data([0]),r._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),r._glcontainer=r._paperdiv.selectAll(".gl-container").data([{}]),r._glcontainer.enter().append("div").classed("gl-container",!0),r._paperdiv.selectAll(".main-svg").remove(),r._paperdiv.select(".modebar-container").remove(),r._paper=r._paperdiv.insert("svg",":first-child").classed("main-svg",!0),r._toppaper=r._paperdiv.append("svg").classed("main-svg",!0),r._modebardiv=r._paperdiv.append("div"),delete r._modeBar,r._hoverpaper=r._paperdiv.append("svg").classed("main-svg",!0),!r._uid){var n={};DP.selectAll("defs").each(function(){this.id&&(n[this.id.split("-")[1]]=1)}),r._uid=Sa.randstr(n)}r._paperdiv.selectAll(".main-svg").attr(Sdt.svgAttrs),r._defs=r._paper.append("defs").attr("id","defs-"+r._uid),r._clips=r._defs.append("g").classed("clips",!0),r._topdefs=r._toppaper.append("defs").attr("id","topdefs-"+r._uid),r._topclips=r._topdefs.append("g").classed("clips",!0),r._bgLayer=r._paper.append("g").classed("bglayer",!0),r._draggers=r._paper.append("g").classed("draglayer",!0);var i=r._paper.append("g").classed("layer-below",!0);r._imageLowerLayer=i.append("g").classed("imagelayer",!0),r._shapeLowerLayer=i.append("g").classed("shapelayer",!0),r._cartesianlayer=r._paper.append("g").classed("cartesianlayer",!0),r._polarlayer=r._paper.append("g").classed("polarlayer",!0),r._smithlayer=r._paper.append("g").classed("smithlayer",!0),r._ternarylayer=r._paper.append("g").classed("ternarylayer",!0),r._geolayer=r._paper.append("g").classed("geolayer",!0),r._funnelarealayer=r._paper.append("g").classed("funnelarealayer",!0),r._pielayer=r._paper.append("g").classed("pielayer",!0),r._iciclelayer=r._paper.append("g").classed("iciclelayer",!0),r._treemaplayer=r._paper.append("g").classed("treemaplayer",!0),r._sunburstlayer=r._paper.append("g").classed("sunburstlayer",!0),r._indicatorlayer=r._toppaper.append("g").classed("indicatorlayer",!0),r._glimages=r._paper.append("g").classed("glimages",!0);var a=r._toppaper.append("g").classed("layer-above",!0);r._imageUpperLayer=a.append("g").classed("imagelayer",!0),r._shapeUpperLayer=a.append("g").classed("shapelayer",!0),r._selectionLayer=r._toppaper.append("g").classed("selectionlayer",!0),r._infolayer=r._toppaper.append("g").classed("infolayer",!0),r._menulayer=r._toppaper.append("g").classed("menulayer",!0),r._zoomlayer=r._toppaper.append("g").classed("zoomlayer",!0),r._hoverlayer=r._hoverpaper.append("g").classed("hoverlayer",!0),r._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}_l.animate=Wdt;_l.addFrames=Xdt;_l.deleteFrames=Zdt;_l.addTraces=Yhe;_l.deleteTraces=Khe;_l.extendTraces=Xhe;_l.moveTraces=YN;_l.prependTraces=Zhe;_l.newPlot=Idt;_l._doPlot=kdt;_l.purge=Ydt;_l.react=Gdt;_l.redraw=Pdt;_l.relayout=GM;_l.restyle=OP;_l.setPlotConfig=Cdt;_l.update=BP;_l._guiRelayout=KN(GM);_l._guiRestyle=KN(OP);_l._guiUpdate=KN(BP);_l._storeDirectGUIEdit=zdt});var Py=ye(Mm=>{"use strict";var $dt=qa();Mm.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Mm.getRedrawFunc=function(e){return function(){$dt.getComponentMethod("colorbar","draw")(e)}};Mm.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Mm.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var ide=window.URL||window.webkitURL;Mm.createObjectURL=function(e){return ide.createObjectURL(e)};Mm.revokeObjectURL=function(e){return ide.revokeObjectURL(e)};Mm.createBlob=function(e,t){if(t==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(t==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var r=Qdt(window.atob(e));return new window.Blob([r],{type:"image/"+t})};Mm.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function Qdt(e){for(var t=e.length,r=new ArrayBuffer(t),n=new Uint8Array(r),i=0;i{"use strict";var $N=Oa(),kor=Dr(),evt=So(),tvt=ka(),Cor=Wp(),JN=/"/g,jM="TOBESTRIPPED",rvt=new RegExp('("'+jM+")|("+jM+'")',"g");function ivt(e){var t=$N.select("body").append("div").style({display:"none"}).html(""),r=e.replace(/(&[^;]*;)/gi,function(n){return n==="<"?"<":n==="&rt;"?">":n.indexOf("<")!==-1||n.indexOf(">")!==-1?"":t.html(n).text()});return t.remove(),r}function nvt(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}nde.exports=function(t,r,n){var i=t._fullLayout,a=i._paper,o=i._toppaper,s=i.width,l=i.height,u;a.insert("rect",":first-child").call(evt.setRect,0,0,s,l).call(tvt.fill,i.paper_bgcolor);var c=i._basePlotModules||[];for(u=0;u{"use strict";var avt=Dr(),ovt=pb().EventEmitter,WM=Py();function svt(e){var t=e.emitter||new ovt,r=new Promise(function(n,i){var a=window.Image,o=e.svg,s=e.format||"png",l=e.canvas,u=e.scale||1,c=e.width||300,f=e.height||150,h=u*c,d=u*f,v=l.getContext("2d",{willReadFrequently:!0}),_=new a,b,p;s==="svg"||avt.isSafari()?p=WM.encodeSVG(o):(b=WM.createBlob(o,"svg"),p=WM.createObjectURL(b)),l.width=h,l.height=d,_.onload=function(){var k;switch(b=null,WM.revokeObjectURL(p),s!=="svg"&&v.drawImage(_,0,0,h,d),s){case"jpeg":k=l.toDataURL("image/jpeg");break;case"png":k=l.toDataURL("image/png");break;case"webp":k=l.toDataURL("image/webp");break;case"svg":k=p;break;default:var E="Image format is not jpeg, png, svg or webp.";if(i(new Error(E)),!e.promise)return t.emit("error",E)}n(k),e.promise||t.emit("success",k)},_.onerror=function(k){if(b=null,WM.revokeObjectURL(p),i(k),!e.promise)return t.emit("error",k)},_.src=p});return e.promise?r:t}ade.exports=svt});var eU=ye((Ior,lde)=>{"use strict";var ode=Eo(),sde=GP(),lvt=Mc(),Em=Dr(),XM=Py(),uvt=HP(),cvt=jP(),fvt=l6().version,QN={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function hvt(e,t){t=t||{};var r,n,i,a;Em.isPlainObject(e)?(r=e.data||[],n=e.layout||{},i=e.config||{},a={}):(e=Em.getGraphDiv(e),r=Em.extendDeep([],e.data),n=Em.extendDeep({},e.layout),i=e._context,a=e._fullLayout||{});function o(x){return!(x in t)||Em.validate(t[x],QN[x])}if(!o("width")&&t.width!==null||!o("height")&&t.height!==null)throw new Error("Height and width should be pixel values.");if(!o("format"))throw new Error("Export format is not "+Em.join2(QN.format.values,", "," or ")+".");var s={};function l(x,C){return Em.coerce(t,s,QN,x,C)}var u=l("format"),c=l("width"),f=l("height"),h=l("scale"),d=l("setBackground"),v=l("imageDataOnly"),_=document.createElement("div");_.style.position="absolute",_.style.left="-5000px",document.body.appendChild(_);var b=Em.extendFlat({},n);c?b.width=c:t.width===null&&ode(a.width)&&(b.width=a.width),f?b.height=f:t.height===null&&ode(a.height)&&(b.height=a.height);var p=Em.extendFlat({},i,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),k=XM.getRedrawFunc(_);function E(){return new Promise(function(x){setTimeout(x,XM.getDelay(_._fullLayout))})}function S(){return new Promise(function(x,C){var M=uvt(_,u,h),g=_._fullLayout.width,P=_._fullLayout.height;function T(){sde.purge(_),document.body.removeChild(_)}if(u==="full-json"){var z=lvt.graphJson(_,!1,"keepdata","object",!0,!0);return z.version=fvt,z=JSON.stringify(z),T(),x(v?z:XM.encodeJSON(z))}if(T(),u==="svg")return x(v?M:XM.encodeSVG(M));var O=document.createElement("canvas");O.id=Em.randstr(),cvt({format:u,width:g,height:P,scale:h,canvas:O,svg:M,promise:!0}).then(x).catch(C)})}function L(x){return v?x.replace(XM.IMAGE_URL_PREFIX,""):x}return new Promise(function(x,C){sde.newPlot(_,r,b,p).then(k).then(E).then(S).then(function(M){x(L(M))}).catch(function(M){C(M)})})}lde.exports=hvt});var fde=ye((Ror,cde)=>{"use strict";var P0=Dr(),dvt=Mc(),vvt=b3(),pvt=cb().dfltConfig,Lg=P0.isPlainObject,Gb=Array.isArray,tU=P0.isArrayOrTypedArray;cde.exports=function(t,r){t===void 0&&(t=[]),r===void 0&&(r={});var n=vvt.get(),i=[],a={_context:P0.extendFlat({},pvt)},o,s;Gb(t)?(a.data=P0.extendDeep([],t),o=t):(a.data=[],o=[],i.push(md("array","data"))),Lg(r)?(a.layout=P0.extendDeep({},r),s=r):(a.layout={},s={},arguments.length>1&&i.push(md("object","layout"))),dvt.supplyDefaults(a);for(var l=a._fullData,u=o.length,c=0;cf.length&&n.push(md("unused",i,u.concat(f.length)));var p=f.length,k=Array.isArray(b);k&&(p=Math.min(p,b.length));var E,S,L,x,C;if(h.dimensions===2)for(S=0;Sf[S].length&&n.push(md("unused",i,u.concat(S,f[S].length)));var M=f[S].length;for(E=0;E<(k?Math.min(M,b[S].length):M);E++)L=k?b[S][E]:b,x=c[S][E],C=f[S][E],P0.validate(x,L)?C!==x&&C!==+x&&n.push(md("dynamic",i,u.concat(S,E),x,C)):n.push(md("value",i,u.concat(S,E),x))}else n.push(md("array",i,u.concat(S),c[S]));else for(S=0;S{"use strict";var wvt=Dr(),XP=Py();function Tvt(e,t,r){var n=document.createElement("a"),i="download"in n,a=new Promise(function(o,s){var l,u;if(i)return l=XP.createBlob(e,r),u=XP.createObjectURL(l),n.href=u,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n),XP.revokeObjectURL(u),l=null,o(t);if(wvt.isSafari()){var c=r==="svg"?",":";base64,";return XP.octetStream(c+encodeURIComponent(e)),o(t)}s(new Error("download error"))});return a}hde.exports=Tvt});var rU=ye((zor,pde)=>{"use strict";var vde=Dr(),Avt=eU(),Svt=dde(),For=Py();function Mvt(e,t){var r;return vde.isPlainObject(e)||(r=vde.getGraphDiv(e)),t=t||{},t.format=t.format||"png",t.width=t.width||null,t.height=t.height||null,t.imageDataOnly=!0,new Promise(function(n,i){r&&r._snapshotInProgress&&i(new Error("Snapshotting already in progress.")),r&&(r._snapshotInProgress=!0);var a=Avt(e,t),o=t.filename||e.fn||"newplot";o+="."+t.format.replace("-","."),a.then(function(s){return r&&(r._snapshotInProgress=!1),Svt(s,o,t.format)}).then(function(s){n(s)}).catch(function(s){r&&(r._snapshotInProgress=!1),i(s)})})}pde.exports=Mvt});var xde=ye(iU=>{"use strict";var Cp=Dr(),Lp=Cp.isPlainObject,gde=b3(),mde=Mc(),Evt=Gl(),yde=vl(),_de=cb().dfltConfig;iU.makeTemplate=function(e){e=Cp.isPlainObject(e)?e:Cp.getGraphDiv(e),e=Cp.extendDeep({_context:_de},{data:e.data,layout:e.layout}),mde.supplyDefaults(e);var t=e.data||[],r=e.layout||{};r._basePlotModules=e._fullLayout._basePlotModules,r._modules=e._fullLayout._modules;var n={data:{},layout:{}};t.forEach(function(d){var v={};ZM(d,v,Cvt.bind(null,d));var _=Cp.coerce(d,{},Evt,"type"),b=n.data[_];b||(b=n.data[_]=[]),b.push(v)}),ZM(r,n.layout,kvt.bind(null,r)),delete n.layout.template;var i=r.template;if(Lp(i)){var a=i.layout,o,s,l,u,c,f;Lp(a)&&ZP(a,n.layout);var h=i.data;if(Lp(h)){for(s in n.data)if(l=h[s],Array.isArray(l)){for(c=n.data[s],f=c.length,u=l.length,o=0;op?o.push({code:"unused",traceType:d,templateCount:b,dataCount:p}):p>b&&o.push({code:"reused",traceType:d,templateCount:b,dataCount:p})}}function k(E,S){for(var L in E)if(L.charAt(0)!=="_"){var x=E[L],C=I0(E,L,S);Lp(x)?(Array.isArray(E)&&x._template===!1&&x.templateitemname&&o.push({code:"missing",path:C,templateitemname:x.templateitemname}),k(x,C)):Array.isArray(x)&&Lvt(x)&&k(x,C)}}if(k({data:l,layout:s},""),o.length)return o.map(Pvt)};function Lvt(e){for(var t=0;t{"use strict";var td=GP();ef._doPlot=td._doPlot;ef.newPlot=td.newPlot;ef.restyle=td.restyle;ef.relayout=td.relayout;ef.redraw=td.redraw;ef.update=td.update;ef._guiRestyle=td._guiRestyle;ef._guiRelayout=td._guiRelayout;ef._guiUpdate=td._guiUpdate;ef._storeDirectGUIEdit=td._storeDirectGUIEdit;ef.react=td.react;ef.extendTraces=td.extendTraces;ef.prependTraces=td.prependTraces;ef.addTraces=td.addTraces;ef.deleteTraces=td.deleteTraces;ef.moveTraces=td.moveTraces;ef.purge=td.purge;ef.addFrames=td.addFrames;ef.deleteFrames=td.deleteFrames;ef.animate=td.animate;ef.setPlotConfig=td.setPlotConfig;var Ivt=BS().getGraphDiv,Rvt=sP().eraseActiveShape;ef.deleteActiveShape=function(e){return Rvt(Ivt(e))};ef.toImage=eU();ef.validate=fde();ef.downloadImage=rU();var bde=xde();ef.makeTemplate=bde.makeTemplate;ef.validateTemplate=bde.validateTemplate});var Q3=ye((Bor,Tde)=>{"use strict";var nU=Dr(),Dvt=qa();Tde.exports=function(t,r,n,i){var a=i("x"),o=i("y"),s,l=Dvt.getComponentMethod("calendars","handleTraceDefaults");if(l(t,r,["x","y"],n),a){var u=nU.minRowLength(a);o?s=Math.min(u,nU.minRowLength(o)):(s=u,i("y0"),i("dy"))}else{if(!o)return 0;s=nU.minRowLength(o),i("x0"),i("dx")}return r._length=s,s}});var Pg=ye((Nor,Mde)=>{"use strict";var Ade=Dr().dateTick0,Fvt=fs(),zvt=Fvt.ONEWEEK;function Sde(e,t){return e%zvt===0?Ade(t,1):Ade(t,0)}Mde.exports=function(t,r,n,i,a){if(a||(a={x:!0,y:!0}),a.x){var o=i("xperiod");o&&(i("xperiod0",Sde(o,r.xcalendar)),i("xperiodalignment"))}if(a.y){var s=i("yperiod");s&&(i("yperiod0",Sde(s,r.ycalendar)),i("yperiodalignment"))}}});var Cde=ye((Uor,kde)=>{"use strict";var Ede=["orientation","groupnorm","stackgaps"];kde.exports=function(t,r,n,i){var a=n._scatterStackOpts,o=i("stackgroup");if(o){var s=r.xaxis+r.yaxis,l=a[s];l||(l=a[s]={});var u=l[o],c=!1;u?u.traces.push(r):(u=l[o]={traceIndices:[],traces:[r]},c=!0);for(var f={orientation:r.x&&!r.y?"h":"v"},h=0;h{"use strict";var Lde=ka(),Pde=pv().hasColorscale,Ide=Qh(),Ovt=Ru();Rde.exports=function(t,r,n,i,a,o){var s=Ovt.isBubble(t),l=(t.line||{}).color,u;if(o=o||{},l&&(n=l),a("marker.symbol"),a("marker.opacity",s?.7:1),a("marker.size"),o.noAngle||(a("marker.angle"),o.noAngleRef||a("marker.angleref"),o.noStandOff||a("marker.standoff")),a("marker.color",n),Pde(t,"marker")&&Ide(t,r,i,a,{prefix:"marker.",cLetter:"c"}),o.noSelect||(a("selected.marker.color"),a("unselected.marker.color"),a("selected.marker.size"),a("unselected.marker.size")),o.noLine||(l&&!Array.isArray(l)&&r.marker.color!==l?u=l:s?u=Lde.background:u=Lde.defaultLine,a("marker.line.color",u),Pde(t,"marker.line")&&Ide(t,r,i,a,{prefix:"marker.line.",cLetter:"c"}),a("marker.line.width",s?1:0)),s&&(a("marker.sizeref"),a("marker.sizemin"),a("marker.sizemode")),o.gradient){var c=a("marker.gradient.type");c!=="none"&&a("marker.gradient.color")}}});var R0=ye((Gor,Dde)=>{"use strict";var qvt=Dr().isArrayOrTypedArray,Bvt=pv().hasColorscale,Nvt=Qh();Dde.exports=function(t,r,n,i,a,o){o||(o={});var s=(t.marker||{}).color;if(s&&s._inputArray&&(s=s._inputArray),a("line.color",n),Bvt(t,"line"))Nvt(t,r,i,a,{prefix:"line.",cLetter:"c"});else{var l=(qvt(s)?!1:s)||n;a("line.color",l)}a("line.width"),o.noDash||a("line.dash"),o.backoff&&a("line.backoff")}});var eT=ye((Hor,Fde)=>{"use strict";Fde.exports=function(t,r,n){var i=n("line.shape");i==="spline"&&n("line.smoothing")}});var D0=ye((jor,zde)=>{"use strict";var Uvt=Dr();zde.exports=function(e,t,r,n,i){i=i||{},n("textposition"),Uvt.coerceFont(n,"textfont",i.font||r.font,i),i.noSelect||(n("selected.textfont.color"),n("unselected.textfont.color"))}});var Ig=ye((Wor,qde)=>{"use strict";var KP=ka(),Ode=Dr().isArrayOrTypedArray;function Vvt(e){for(var t=KP.interpolate(e[0][1],e[1][1],.5),r=2;r{"use strict";var Bde=Dr(),Gvt=qa(),Hvt=pf(),jvt=Sm(),tT=Ru(),Wvt=Q3(),Xvt=Pg(),Zvt=Cde(),Yvt=$p(),Kvt=R0(),Nde=eT(),Jvt=D0(),$vt=Ig(),Qvt=Dr().coercePattern;Ude.exports=function(t,r,n,i){function a(d,v){return Bde.coerce(t,r,Hvt,d,v)}var o=Wvt(t,r,i,a);if(o||(r.visible=!1),!!r.visible){Xvt(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("zorder");var s=Zvt(t,r,i,a);i.scattermode==="group"&&r.orientation===void 0&&a("orientation","v");var l=!s&&o{"use strict";var ept=Nb().getAxisGroup;Gde.exports=function(t,r,n,i,a){var o=r.orientation,s=r[{v:"x",h:"y"}[o]+"axis"],l=ept(n,s)+o,u=n._alignmentOpts||{},c=i("alignmentgroup"),f=u[l];f||(f=u[l]={});var h=f[c];h?h.traces.push(r):h=f[c]={traces:[r],alignmentIndex:Object.keys(f).length,offsetGroups:{}};var d=i("offsetgroup")||"",v=h.offsetGroups,_=v[d];r._offsetIndex=0,(a!=="group"||d)&&(_||(_=v[d]={offsetIndex:Object.keys(v).length}),r._offsetIndex=_.offsetIndex)}});var aU=ye((Yor,Hde)=>{"use strict";var tpt=Dr(),rpt=Hb(),ipt=pf();Hde.exports=function(t,r){var n,i,a,o=r.scattermode;function s(h){return tpt.coerce(i._input,i,ipt,h)}if(r.scattermode==="group")for(a=0;a=0;c--){var f=t[c];if(f.type==="scatter"&&f.xaxis===l.xaxis&&f.yaxis===l.yaxis){f.opacity=void 0;break}}}}}});var Wde=ye((Kor,jde)=>{"use strict";var npt=Dr(),apt=X6();jde.exports=function(e,t){function r(i,a){return npt.coerce(e,t,apt,i,a)}var n=t.barmode==="group";t.scattermode==="group"&&r("scattergap",n?t.bargap:.2)}});var Rg=ye((Jor,Zde)=>{"use strict";var opt=Eo(),Xde=Dr(),spt=Xde.dateTime2ms,JP=Xde.incrementMonth,lpt=fs(),upt=lpt.ONEAVGMONTH;Zde.exports=function(t,r,n,i){if(r.type!=="date")return{vals:i};var a=t[n+"periodalignment"];if(!a)return{vals:i};var o=t[n+"period"],s;if(opt(o)){if(o=+o,o<=0)return{vals:i}}else if(typeof o=="string"&&o.charAt(0)==="M"){var l=+o.substring(1);if(l>0&&Math.round(l)===l)s=l;else return{vals:i}}for(var u=r.calendar,c=a==="start",f=a==="end",h=t[n+"period0"],d=spt(h,u)||0,v=[],_=[],b=[],p=i.length,k=0;kE;)x=JP(x,-s,u);for(;x<=E;)x=JP(x,s,u);L=JP(x,-s,u)}else{for(S=Math.round((E-d)/o),x=d+S*o;x>E;)x-=o;for(;x<=E;)x+=o;L=x-o}v[k]=c?L:f?x:(L+x)/2,_[k]=L,b[k]=x}return{vals:v,starts:_,ends:b}}});var F0=ye(($or,Kde)=>{"use strict";var oU=pv().hasColorscale,sU=gv(),Yde=Ru();Kde.exports=function(t,r){Yde.hasLines(r)&&oU(r,"line")&&sU(t,r,{vals:r.line.color,containerStr:"line",cLetter:"c"}),Yde.hasMarkers(r)&&(oU(r,"marker")&&sU(t,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),oU(r,"marker.line")&&sU(t,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var km=ye((Qor,Jde)=>{"use strict";var Yf=Dr();Jde.exports=function(t,r){for(var n=0;n{"use strict";var $de=Dr();Qde.exports=function(t,r){$de.isArrayOrTypedArray(r.selectedpoints)&&$de.tagSelected(t,r)}});var O0=ye((tsr,ove)=>{"use strict";var eve=Eo(),uU=Dr(),YM=ho(),tve=Rg(),lU=fs().BADNUM,cU=Ru(),cpt=F0(),fpt=km(),hpt=z0();function dpt(e,t){var r=e._fullLayout,n=t._xA=YM.getFromId(e,t.xaxis||"x","x"),i=t._yA=YM.getFromId(e,t.yaxis||"y","y"),a=n.makeCalcdata(t,"x"),o=i.makeCalcdata(t,"y"),s=tve(t,n,"x",a),l=tve(t,i,"y",o),u=s.vals,c=l.vals,f=t._length,h=new Array(f),d=t.ids,v=fU(t,r,n,i),_=!1,b,p,k,E,S,L;nve(r,t);var x="x",C="y",M;if(v)uU.pushUnique(v.traceIndices,t.index),b=v.orientation==="v",b?(C="s",M="x"):(x="s",M="y"),S=v.stackgaps==="interpolate";else{var g=ive(t,f);rve(e,t,n,i,u,c,g)}var P=!!t.xperiodalignment,T=!!t.yperiodalignment;for(p=0;pp&&h[E].gap;)E--;for(L=h[E].s,k=h.length-1;k>E;k--)h[k].s=L;for(;p{"use strict";sve.exports=$P;var vpt=Dr().distinctVals;function $P(e,t){this.traces=e,this.sepNegVal=t.sepNegVal,this.overlapNoMerge=t.overlapNoMerge;for(var r=1/0,n=t.posAxis._id.charAt(0),i=[],a=0;a{"use strict";var q0=Eo(),p_=Dr().isArrayOrTypedArray,rT=fs().BADNUM,ppt=qa(),KM=ho(),gpt=Nb().getAxisGroup,QP=lve();function mpt(e,t){for(var r=t.xaxis,n=t.yaxis,i=e._fullLayout,a=e._fullData,o=e.calcdata,s=[],l=[],u=0;ul+o||!q0(s))}for(var c=0;c{"use strict";var dve=O0(),vve=jb().setGroupPositions;function Cpt(e,t){for(var r=t.xaxis,n=t.yaxis,i=e._fullLayout,a=e._fullData,o=e.calcdata,s=[],l=[],u=0;ug[c]&&c{"use strict";var Ppt=So(),xve=fs(),JM=xve.BADNUM,bve=xve.LOG_CLIP,mve=bve+.5,yve=bve-.5,eI=Dr(),Ipt=eI.segmentsIntersect,_ve=eI.constrain,mU=Sm();wve.exports=function(t,r){var n=r.trace||{},i=r.xaxis,a=r.yaxis,o=i.type==="log",s=a.type==="log",l=i._length,u=a._length,c=r.backoff,f=n.marker,h=r.connectGaps,d=r.baseTolerance,v=r.shape,_=v==="linear",b=n.fill&&n.fill!=="none",p=[],k=mU.minTolerance,E=t.length,S=new Array(E),L=0,x,C,M,g,P,T,z,O,V,G,Z,H,N,j,re,oe;function _e(dt){var Ge=t[dt];if(!Ge)return!1;var Je=r.linearized?i.l2p(Ge.x):i.c2p(Ge.x),je=r.linearized?a.l2p(Ge.y):a.c2p(Ge.y);if(Je===JM){if(o&&(Je=i.c2p(Ge.x,!0)),Je===JM)return!1;s&&je===JM&&(Je*=Math.abs(i._m*u*(i._m>0?mve:yve)/(a._m*l*(a._m>0?mve:yve)))),Je*=1e3}if(je===JM){if(s&&(je=a.c2p(Ge.y,!0)),je===JM)return!1;je*=1e3}return[Je,je]}function Ee(dt,Ge,Je,je){var tt=Je-dt,xt=je-Ge,Ie=.5-dt,xe=.5-Ge,ke=tt*tt+xt*xt,vt=tt*Ie+xt*xe;if(vt>0&&vt1||Math.abs(Ie.y-Je[0][1])>1)&&(Ie=[Ie.x,Ie.y],je&&Se(Ie,dt)Fe||dt[1]ge)return[_ve(dt[0],Ae,Fe),_ve(dt[1],Pe,ge)]}function Nt(dt,Ge){if(dt[0]===Ge[0]&&(dt[0]===Ae||dt[0]===Fe)||dt[1]===Ge[1]&&(dt[1]===Pe||dt[1]===ge))return!0}function Jt(dt,Ge){var Je=[],je=Gt(dt),tt=Gt(Ge);return je&&tt&&Nt(je,tt)||(je&&Je.push(je),tt&&Je.push(tt)),Je}function sr(dt,Ge,Je){return function(je,tt){var xt=Gt(je),Ie=Gt(tt),xe=[];if(xt&&Ie&&Nt(xt,Ie))return xe;xt&&xe.push(xt),Ie&&xe.push(Ie);var ke=2*eI.constrain((je[dt]+tt[dt])/2,Ge,Je)-((xt||je)[dt]+(Ie||tt)[dt]);if(ke){var vt;xt&&Ie?vt=ke>0==xt[dt]>Ie[dt]?xt:Ie:vt=xt||Ie,vt[dt]+=ke}return xe}}var wr;v==="linear"||v==="spline"?wr=lt:v==="hv"||v==="vh"?wr=Jt:v==="hvh"?wr=sr(0,Ae,Fe):v==="vhv"&&(wr=sr(1,Pe,ge));function cr(dt,Ge){var Je=Ge[0]-dt[0],je=(Ge[1]-dt[1])/Je,tt=(dt[1]*Ge[0]-Ge[1]*dt[0])/Je;return tt>0?[je>0?Ae:Fe,ge]:[je>0?Fe:Ae,Pe]}function $e(dt){var Ge=dt[0],Je=dt[1],je=Ge===S[L-1][0],tt=Je===S[L-1][1];if(!(je&&tt))if(L>1){var xt=Ge===S[L-2][0],Ie=Je===S[L-2][1];je&&(Ge===Ae||Ge===Fe)&&xt?Ie?L--:S[L-1]=dt:tt&&(Je===Pe||Je===ge)&&Ie?xt?L--:S[L-1]=dt:S[L++]=dt}else S[L++]=dt}function St(dt){S[L-1][0]!==dt[0]&&S[L-1][1]!==dt[1]&&$e([ut,pt]),$e(dt),Zt=null,ut=pt=0}var Qt=eI.isArrayOrTypedArray(f);function Vt(dt){if(dt&&c&&(dt.i=x,dt.d=t,dt.trace=n,dt.marker=Qt?f[dt.i]:f,dt.backoff=c),Ce=dt[0]/l,me=dt[1]/u,ce=dt[0]Fe?Fe:0,Ze=dt[1]ge?ge:0,ce||Ze){if(!L)S[L++]=[ce||dt[0],Ze||dt[1]];else if(Zt){var Ge=wr(Zt,dt);Ge.length>1&&(St(Ge[0]),S[L++]=Ge[1])}else st=wr(S[L-1],dt)[0],S[L++]=st;var Je=S[L-1];ce&&Ze&&(Je[0]!==ce||Je[1]!==Ze)?(Zt&&(ut!==ce&&pt!==Ze?$e(ut&&pt?cr(Zt,dt):[ut||ce,pt||Ze]):ut&&pt&&$e([ut,pt])),$e([ce,Ze])):ut-ce&&pt-Ze&&$e([ce||ut,Ze||pt]),Zt=dt,ut=ce,pt=Ze}else Zt&&St(wr(Zt,dt)[0]),S[L++]=dt}for(x=0;xie(T,_t))break;M=T,N=V[0]*O[0]+V[1]*O[1],N>Z?(Z=N,g=T,z=!1):N=t.length||!T)break;Vt(T),C=T}}Zt&&$e([ut||Zt[0],pt||Zt[1]]),p.push(S.slice(0,L))}var It=v.slice(v.length-1);if(c&&It!=="h"&&It!=="v"){for(var mt=!1,er=-1,lr=[],Tr=0;Tr{"use strict";var Tve={tonextx:1,tonexty:1,tonext:1};Ave.exports=function(t,r,n){var i,a,o,s,l,u={},c=!1,f=-1,h=0,d=-1;for(a=0;a=0?l=d:(l=d=h,h++),l{"use strict";var Dg=Oa(),Rpt=qa(),$M=Dr(),nT=$M.ensureSingle,Mve=$M.identity,Kf=So(),aT=Ru(),Dpt=yU(),Fpt=_U(),tI=EM().tester;Eve.exports=function(t,r,n,i,a,o){var s,l,u=!a,c=!!a&&a.duration>0,f=Fpt(t,r,n);if(s=i.selectAll("g.trace").data(f,function(d){return d[0].trace.uid}),s.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),s.order(),zpt(t,s,r),c){o&&(l=o());var h=Dg.transition().duration(a.duration).ease(a.easing).each("end",function(){l&&l()}).each("interrupt",function(){l&&l()});h.each(function(){i.selectAll("g.trace").each(function(d,v){Sve(t,v,r,d,f,this,a)})})}else s.each(function(d,v){Sve(t,v,r,d,f,this,a)});u&&s.exit().remove(),i.selectAll("path:not([d])").remove()};function zpt(e,t,r){t.each(function(n){var i=nT(Dg.select(this),"g","fills");Kf.setClipUrl(i,r.layerClipId,e);var a=n[0].trace,o=[];a._ownfill&&o.push("_ownFill"),a._nexttrace&&o.push("_nextFill");var s=i.selectAll("g").data(o,Mve);s.enter().append("g"),s.exit().each(function(l){a[l]=null}).remove(),s.order().each(function(l){a[l]=nT(Dg.select(this),"path","js-fill")})})}function Sve(e,t,r,n,i,a,o){var s=e._context.staticPlot,l;Opt(e,t,r,n,i);var u=!!o&&o.duration>0;function c(sr){return u?sr.transition():sr}var f=r.xaxis,h=r.yaxis,d=n[0].trace,v=d.line,_=Dg.select(a),b=nT(_,"g","errorbars"),p=nT(_,"g","lines"),k=nT(_,"g","points"),E=nT(_,"g","text");if(Rpt.getComponentMethod("errorbars","plot")(e,b,r,o),d.visible!==!0)return;c(_).style("opacity",d.opacity);var S,L,x=d.fill.charAt(d.fill.length-1);x!=="x"&&x!=="y"&&(x="");var C,M;x==="y"?(C=1,M=h.c2p(0,!0)):x==="x"&&(C=0,M=f.c2p(0,!0)),n[0][r.isRangePlot?"nodeRangePlot3":"node3"]=_;var g="",P=[],T=d._prevtrace,z=null,O=null;T&&(g=T._prevRevpath||"",L=T._nextFill,P=T._ownPolygons,z=T._fillsegments,O=T._fillElement);var V,G,Z="",H="",N,j,re,oe,_e,Ee,Ce=[];d._polygons=[];var me=[],ie=[],Se=$M.noop;if(S=d._ownFill,aT.hasLines(d)||d.fill!=="none"){L&&L.datum(n),["hv","vh","hvh","vhv"].indexOf(v.shape)!==-1?(N=Kf.steps(v.shape),j=Kf.steps(v.shape.split("").reverse().join(""))):v.shape==="spline"?N=j=function(sr){var wr=sr[sr.length-1];return sr.length>1&&sr[0][0]===wr[0]&&sr[0][1]===wr[1]?Kf.smoothclosed(sr.slice(1),v.smoothing):Kf.smoothopen(sr,v.smoothing)}:N=j=function(sr){return"M"+sr.join("L")},re=function(sr){return j(sr.reverse())},ie=Dpt(n,{xaxis:f,yaxis:h,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(v.width||1,3)/4,shape:v.shape,backoff:v.backoff,simplify:v.simplify,fill:d.fill}),me=new Array(ie.length);var Le=0;for(l=0;l=s[0]&&_.x<=s[1]&&_.y>=l[0]&&_.y<=l[1]}),h=Math.ceil(f.length/c),d=0;i.forEach(function(_,b){var p=_[0].trace;aT.hasMarkers(p)&&p.marker.maxdisplayed>0&&b{"use strict";kve.exports={container:"marker",min:"cmin",max:"cmax"}});var iI=ye((usr,Cve)=>{"use strict";var rI=ho();Cve.exports=function(t,r,n){var i={},a={_fullLayout:n},o=rI.getFromTrace(a,r,"x"),s=rI.getFromTrace(a,r,"y"),l=t.orig_x;l===void 0&&(l=t.x);var u=t.orig_y;return u===void 0&&(u=t.y),i.xLabel=rI.tickText(o,o.c2l(l),!0).text,i.yLabel=rI.tickText(s,s.c2l(u),!0).text,i}});var op=ye((csr,Lve)=>{"use strict";var xU=Oa(),sT=So(),qpt=qa();function Bpt(e){var t=xU.select(e).selectAll("g.trace.scatter");t.style("opacity",function(r){return r[0].trace.opacity}),t.selectAll("g.points").each(function(r){var n=xU.select(this),i=r.trace||r[0].trace;bU(n,i,e)}),t.selectAll("g.text").each(function(r){var n=xU.select(this),i=r.trace||r[0].trace;wU(n,i,e)}),t.selectAll("g.trace path.js-line").call(sT.lineGroupStyle),t.selectAll("g.trace path.js-fill").call(sT.fillGroupStyle,e,!1),qpt.getComponentMethod("errorbars","style")(t)}function bU(e,t,r){sT.pointStyle(e.selectAll("path.point"),t,r)}function wU(e,t,r){sT.textPointStyle(e.selectAll("text"),t,r)}function Npt(e,t,r){var n=t[0].trace;n.selectedpoints?(sT.selectedPointStyle(r.selectAll("path.point"),n),sT.selectedTextStyle(r.selectAll("text"),n)):(bU(r,n,e),wU(r,n,e))}Lve.exports={style:Bpt,stylePoints:bU,styleText:wU,styleOnSelect:Npt}});var uT=ye((fsr,Pve)=>{"use strict";var lT=ka(),Upt=Ru();Pve.exports=function(t,r){var n,i;if(t.mode==="lines")return n=t.line.color,n&&lT.opacity(n)?n:t.fillcolor;if(t.mode==="none")return t.fill?t.fillcolor:"";var a=r.mcc||(t.marker||{}).color,o=r.mlcc||((t.marker||{}).line||{}).color;return i=a&&lT.opacity(a)?a:o&&lT.opacity(o)&&(r.mlw||((t.marker||{}).line||{}).width)?o:"",i?lT.opacity(i)<.3?lT.addOpacity(i,.3):i:(n=(t.line||{}).color,n&&lT.opacity(n)&&Upt.hasLines(t)&&t.line.width?n:t.fillcolor)}});var cT=ye((hsr,Rve)=>{"use strict";var nI=Dr(),Ive=vf(),Vpt=qa(),Gpt=uT(),TU=ka(),Hpt=nI.fillText;Rve.exports=function(t,r,n,i){var a=t.cd,o=a[0].trace,s=t.xa,l=t.ya,u=s.c2p(r),c=l.c2p(n),f=[u,c],h=o.hoveron||"",d=o.mode.indexOf("markers")!==-1?3:.5,v=!!o.xperiodalignment,_=!!o.yperiodalignment;if(h.indexOf("points")!==-1){var b=function(H){if(v){var N=s.c2p(H.xStart),j=s.c2p(H.xEnd);return u>=Math.min(N,j)&&u<=Math.max(N,j)?0:1/0}var re=Math.max(3,H.mrc||0),oe=1-1/re,_e=Math.abs(s.c2p(H.x)-u);return _e=Math.min(N,j)&&c<=Math.max(N,j)?0:1/0}var re=Math.max(3,H.mrc||0),oe=1-1/re,_e=Math.abs(l.c2p(H.y)-c);return _eCe!=ge>=Ce&&(Ae=Se[ie-1][0],Fe=Se[ie][0],ge-Pe&&(Le=Ae+(Fe-Ae)*(Ce-Pe)/(ge-Pe),re=Math.min(re,Le),oe=Math.max(oe,Le)));return re=Math.max(re,0),oe=Math.min(oe,s._length),{x0:re,x1:oe,y0:Ce,y1:Ce}}if(h.indexOf("fills")!==-1&&o._fillElement){var V=z(o._fillElement)&&!z(o._fillExclusionElement);if(V){var G=O(o._polygons);G===null&&(G={x0:f[0],x1:f[0],y0:f[1],y1:f[1]});var Z=TU.defaultLine;return TU.opacity(o.fillcolor)?Z=o.fillcolor:TU.opacity((o.line||{}).color)&&(Z=o.line.color),nI.extendFlat(t,{distance:t.maxHoverDistance,x0:G.x0,x1:G.x1,y0:G.y0,y1:G.y1,color:Z,hovertemplate:!1}),delete t.index,o.text&&!nI.isArrayOrTypedArray(o.text)?t.text=String(o.text):t.text=o.name,[t]}}}});var fT=ye((dsr,Fve)=>{"use strict";var Dve=Ru();Fve.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l,u,c,f,h=!Dve.hasMarkers(s)&&!Dve.hasText(s);if(h)return[];if(r===!1)for(l=0;l{"use strict";zve.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var SU=ye((psr,Nve)=>{"use strict";var QM=qa().traceIs,AU=I3();Nve.exports=function(t,r,n,i){n("autotypenumbers",i.autotypenumbersDflt);var a=n("type",(i.splomStash||{}).type);a==="-"&&(jpt(r,i.data),r.type==="-"?r.type="linear":t.type=r.type)};function jpt(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i;r.indexOf("scene")!==-1&&(r=n);var a=Wpt(t,r,n);if(a){if(a.type==="histogram"&&n==={v:"y",h:"x"}[a.orientation||"v"]){e.type="linear";return}var o=n+"calendar",s=a[o],l={noMultiCategory:!QM(a,"cartesian")||QM(a,"noMultiCategory")};if(a.type==="box"&&a._hasPreCompStats&&n==={h:"x",v:"y"}[a.orientation||"v"]&&(l.noMultiCategory=!0),l.autotypenumbers=e.autotypenumbers,Bve(a,n)){var u=qve(a),c=[];for(i=0;i0&&(i["_"+r+"axes"]||{})[t])return i;if((i[r+"axis"]||r)===t){if(Bve(i,r))return i;if((i[r]||[]).length||i[r+"0"])return i}}}function qve(e){return{v:"x",h:"y"}[e.orientation||"v"]}function Bve(e,t){var r=qve(e),n=QM(e,"box-violin"),i=QM(e._fullInput||{},"candlestick");return n&&!i&&t===r&&e[r]===void 0&&e[r+"0"]===void 0}});var aI=ye((gsr,Uve)=>{"use strict";var Xpt=vv().isTypedArraySpec;function Zpt(e,t){var r=t.dataAttr||e._id.charAt(0),n={},i,a,o;if(t.axData)i=t.axData;else for(i=[],a=0;a0||Xpt(a),s;o&&(s="array");var l=n("categoryorder",s),u;l==="array"&&(u=n("categoryarray")),!o&&l==="array"&&(l=r.categoryorder="trace"),l==="trace"?r._initialCategories=[]:l==="array"?r._initialCategories=u.slice():(u=Zpt(r,i).sort(),l==="category ascending"?r._initialCategories=u:l==="category descending"&&(r._initialCategories=u.reverse()))}}});var e4=ye((msr,Gve)=>{"use strict";var Vve=cd().mix,Ypt=Lh(),Kpt=Dr();Gve.exports=function(t,r,n,i){i=i||{};var a=i.dfltColor;function o(M,g){return Kpt.coerce2(t,r,i.attributes,M,g)}var s=o("linecolor",a),l=o("linewidth"),u=n("showline",i.showLine||!!s||!!l);u||(delete r.linecolor,delete r.linewidth);var c=Vve(a,i.bgColor,i.blend||Ypt.lightFraction).toRgbString(),f=o("gridcolor",c),h=o("gridwidth"),d=o("griddash"),v=n("showgrid",i.showGrid||!!f||!!h||!!d);if(v||(delete r.gridcolor,delete r.gridwidth,delete r.griddash),i.hasMinor){var _=Vve(r.gridcolor,i.bgColor,67).toRgbString(),b=o("minor.gridcolor",_),p=o("minor.gridwidth",r.gridwidth||1),k=o("minor.griddash",r.griddash||"solid"),E=n("minor.showgrid",!!b||!!p||!!k);E||(delete r.minor.gridcolor,delete r.minor.gridwidth,delete r.minor.griddash)}if(!i.noZeroLine){var S=o("zerolinelayer"),L=o("zerolinecolor",a),x=o("zerolinewidth"),C=n("zeroline",i.showGrid||!!L||!!x);C||(delete r.zerolinelayer,delete r.zerolinecolor,delete r.zerolinewidth)}}});var r4=ye((ysr,Yve)=>{"use strict";var Hve=Eo(),Jpt=qa(),t4=Dr(),$pt=vl(),Qpt=Yd(),MU=Rd(),jve=bb(),Wve=S3(),e0t=e_(),t0t=t_(),r0t=aI(),i0t=e4(),n0t=_B(),Xve=ym(),oI=hd().WEEKDAY_PATTERN,a0t=hd().HOUR_PATTERN;Yve.exports=function(t,r,n,i,a){var o=i.letter,s=i.font||{},l=i.splomStash||{},u=n("visible",!i.visibleDflt),c=r._template||{},f=r.type||c.type||"-",h;if(f==="date"){var d=Jpt.getComponentMethod("calendars","handleDefaults");d(t,r,"calendar",i.calendar),i.noTicklabelmode||(h=n("ticklabelmode"))}!i.noTicklabelindex&&(f==="date"||f==="linear")&&n("ticklabelindex");var v="";(!i.noTicklabelposition||f==="multicategory")&&(v=t4.coerce(t,r,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h==="period"?["outside","inside"]:o==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),i.noTicklabeloverflow||n("ticklabeloverflow",v.indexOf("inside")!==-1?"hide past domain":f==="category"||f==="multicategory"?"allow":"hide past div"),Xve(r,a),n0t(t,r,n,i),r0t(t,r,n,i),i.noHover||(f!=="category"&&n("hoverformat"),i.noUnifiedhovertitle||n("unifiedhovertitle.text"));var _=n("color"),b=_!==MU.color.dflt?_:s.color,p=l.label||a._dfltTitle[o];if(t0t(t,r,n,f,i),!u)return r;n("title.text",p),t4.coerceFont(n,"title.font",s,{overrideDflt:{size:t4.bigFont(s.size),color:b}}),jve(t,r,n,f);var k=i.hasMinor;if(k&&($pt.newContainer(r,"minor"),jve(t,r,n,f,{isMinor:!0})),e0t(t,r,n,f,i),Wve(t,r,n,i),k){var E=i.isMinor;i.isMinor=!0,Wve(t,r,n,i),i.isMinor=E}i0t(t,r,n,{dfltColor:_,bgColor:i.bgColor,showGrid:i.showGrid,hasMinor:k,attributes:MU}),k&&!r.minor.ticks&&!r.minor.showgrid&&delete r.minor,(r.showline||r.ticks)&&n("mirror");var S=f==="multicategory";if(!i.noTickson&&(f==="category"||S)&&(r.ticks||r.showgrid)&&(S?(n("tickson","boundaries"),delete r.ticklabelposition):n("tickson")),S){var L=n("showdividers");L&&(n("dividercolor"),n("dividerwidth"))}if(f==="date")if(Qpt(t,r,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:o0t}),!r.rangebreaks.length)delete r.rangebreaks;else{for(var x=0;x=2){var o="",s,l;if(a.length===2){for(s=0;s<2;s++)if(l=Zve(a[s]),l){o=oI;break}}var u=n("pattern",o);if(u===oI)for(s=0;s<2;s++)l=Zve(a[s]),l&&(t.bounds[s]=a[s]=l-1);if(u)for(s=0;s<2;s++)switch(l=a[s],u){case oI:if(!Hve(l)){t.enabled=!1;return}if(l=+l,l!==Math.floor(l)||l<0||l>=7){t.enabled=!1;return}t.bounds[s]=a[s]=l;break;case a0t:if(!Hve(l)){t.enabled=!1;return}if(l=+l,l<0||l>24){t.enabled=!1;return}t.bounds[s]=a[s]=l;break}if(r.autorange===!1){var c=r.range;if(c[0]c[1]){t.enabled=!1;return}}else if(a[0]>c[0]&&a[1]{"use strict";var l0t=Eo(),sI=Dr();Kve.exports=function(t,r,n,i){var a=i.counterAxes||[],o=i.overlayableAxes||[],s=i.letter,l=i.grid,u=i.overlayingDomain,c,f,h,d,v,_;l&&(f=l._domains[s][l._axisMap[r._id]],c=l._anchors[r._id],f&&(h=l[s+"side"].split(" ")[0],d=l.domain[s][h==="right"||h==="top"?1:0])),f=f||[0,1],c=c||(l0t(t.position)?"free":a[0]||"free"),h=h||(s==="x"?"bottom":"left"),d=d||0,v=0,_=!1;var b=sI.coerce(t,r,{anchor:{valType:"enumerated",values:["free"].concat(a),dflt:c}},"anchor"),p=sI.coerce(t,r,{side:{valType:"enumerated",values:s==="x"?["bottom","top"]:["left","right"],dflt:h}},"side");if(b==="free"){if(s==="y"){var k=n("autoshift");k&&(d=p==="left"?u[0]:u[1],_=r.automargin?r.automargin:!0,v=p==="left"?-3:3),n("shift",v)}n("position",d)}n("automargin",_);var E=!1;if(o.length&&(E=sI.coerce(t,r,{overlaying:{valType:"enumerated",values:[!1].concat(o),dflt:!1}},"overlaying")),!E){var S=n("domain",f);S[0]>S[1]-1/4096&&(r.domain=f),sI.noneOrAll(t.domain,r.domain,f),r.tickmode==="sync"&&(r.tickmode="auto")}return n("layer"),r}});var ape=ye((xsr,npe)=>{"use strict";var Wb=Dr(),Jve=ka(),u0t=ip().isUnifiedHover,c0t=HB(),$ve=vl(),f0t=u3(),Qve=Rd(),h0t=SU(),epe=r4(),d0t=Nb(),tpe=lI(),kU=hf(),Cm=kU.id2name,rpe=kU.name2id,v0t=hd().AX_ID_PATTERN,ipe=qa(),uI=ipe.traceIs,EU=ipe.getComponentMethod;function cI(e,t,r){Array.isArray(e[t])?e[t].push(r):e[t]=[r]}npe.exports=function(t,r,n){var i=r.autotypenumbers,a={},o={},s={},l={},u={},c={},f={},h={},d={},v={},_,b;for(_=0;_{"use strict";var p0t=Oa(),ope=qa(),fI=Dr(),Qp=So(),hI=ho();spe.exports=function(t,r,n,i){var a=t._fullLayout;if(r.length===0){hI.redrawComponents(t);return}function o(b){var p=b.xaxis,k=b.yaxis;a._defs.select("#"+b.clipId+"> rect").call(Qp.setTranslate,0,0).call(Qp.setScale,1,1),b.plot.call(Qp.setTranslate,p._offset,k._offset).call(Qp.setScale,1,1);var E=b.plot.selectAll(".scatterlayer .trace");E.selectAll(".point").call(Qp.setPointGroupScale,1,1),E.selectAll(".textpoint").call(Qp.setTextPointsScale,1,1),E.call(Qp.hideOutsideRangePoints,b)}function s(b,p){var k=b.plotinfo,E=k.xaxis,S=k.yaxis,L=E._length,x=S._length,C=!!b.xr1,M=!!b.yr1,g=[];if(C){var P=fI.simpleMap(b.xr0,E.r2l),T=fI.simpleMap(b.xr1,E.r2l),z=P[1]-P[0],O=T[1]-T[0];g[0]=(P[0]*(1-p)+p*T[0]-P[0])/(P[1]-P[0])*L,g[2]=L*(1-p+p*O/z),E.range[0]=E.l2r(P[0]*(1-p)+p*T[0]),E.range[1]=E.l2r(P[1]*(1-p)+p*T[1])}else g[0]=0,g[2]=L;if(M){var V=fI.simpleMap(b.yr0,S.r2l),G=fI.simpleMap(b.yr1,S.r2l),Z=V[1]-V[0],H=G[1]-G[0];g[1]=(V[1]*(1-p)+p*G[1]-V[1])/(V[0]-V[1])*x,g[3]=x*(1-p+p*H/Z),S.range[0]=E.l2r(V[0]*(1-p)+p*G[0]),S.range[1]=S.l2r(V[1]*(1-p)+p*G[1])}else g[1]=0,g[3]=x;hI.drawOne(t,E,{skipTitle:!0}),hI.drawOne(t,S,{skipTitle:!0}),hI.redrawComponents(t,[E._id,S._id]);var N=C?L/g[2]:1,j=M?x/g[3]:1,re=C?g[0]:0,oe=M?g[1]:0,_e=C?g[0]/g[2]*L:0,Ee=M?g[1]/g[3]*x:0,Ce=E._offset-_e,me=S._offset-Ee;k.clipRect.call(Qp.setTranslate,re,oe).call(Qp.setScale,1/N,1/j),k.plot.call(Qp.setTranslate,Ce,me).call(Qp.setScale,N,j),Qp.setPointGroupScale(k.zoomScalePts,1/N,1/j),Qp.setTextPointsScale(k.zoomScaleTxt,1/N,1/j)}var l;i&&(l=i());function u(){for(var b={},p=0;pn.duration?(u(),d=window.cancelAnimationFrame(_)):d=window.requestAnimationFrame(_)}return f=Date.now(),d=window.requestAnimationFrame(_),Promise.resolve()}});var ph=ye(xv=>{"use strict";var vI=Oa(),upe=qa(),Xb=Dr(),g0t=Mc(),m0t=So(),cpe=Id().getModuleCalcData,g_=hf(),Fg=hd(),y0t=Wp(),iu=Xb.ensureSingle;function dI(e,t,r){return Xb.ensureSingle(e,t,r,function(n){n.datum(r)})}var Zb=Fg.zindexSeparator;xv.name="cartesian";xv.attr=["xaxis","yaxis"];xv.idRoot=["x","y"];xv.idRegex=Fg.idRegex;xv.attrRegex=Fg.attrRegex;xv.attributes=Ove();xv.layoutAttributes=Rd();xv.supplyLayoutDefaults=ape();xv.transitionAxes=lpe();xv.finalizeSubplots=function(e,t){var r=t._subplots,n=r.xaxis,i=r.yaxis,a=r.cartesian,o=a,s={},l={},u,c,f;for(u=0;u0){var d=h.id;if(d.indexOf(Zb)!==-1)continue;d+=Zb+(u+1),h=Xb.extendFlat({},h,{id:d,plot:i._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var v=[],_,b=0;b1&&(L+=Zb+S),E.push(s+L),o=0;o1,f=t.mainplotinfo;if(!t.mainplot||c)if(u)t.xlines=iu(n,"path","xlines-above"),t.ylines=iu(n,"path","ylines-above"),t.xaxislayer=iu(n,"g","xaxislayer-above"),t.yaxislayer=iu(n,"g","yaxislayer-above");else{if(!o){var h=iu(n,"g","layer-subplot");t.shapelayer=iu(h,"g","shapelayer"),t.imagelayer=iu(h,"g","imagelayer"),f&&c?(t.minorGridlayer=f.minorGridlayer,t.gridlayer=f.gridlayer,t.zerolinelayer=f.zerolinelayer):(t.minorGridlayer=iu(n,"g","minor-gridlayer"),t.gridlayer=iu(n,"g","gridlayer"),t.zerolinelayer=iu(n,"g","zerolinelayer"));var d=iu(n,"g","layer-between");t.shapelayerBetween=iu(d,"g","shapelayer"),t.imagelayerBetween=iu(d,"g","imagelayer"),iu(n,"path","xlines-below"),iu(n,"path","ylines-below"),t.overlinesBelow=iu(n,"g","overlines-below"),iu(n,"g","xaxislayer-below"),iu(n,"g","yaxislayer-below"),t.overaxesBelow=iu(n,"g","overaxes-below")}t.overplot=iu(n,"g","overplot"),t.plot=iu(t.overplot,"g",i),f&&c?t.zerolinelayerAbove=f.zerolinelayerAbove:t.zerolinelayerAbove=iu(n,"g","zerolinelayer-above"),o||(t.xlines=iu(n,"path","xlines-above"),t.ylines=iu(n,"path","ylines-above"),t.overlinesAbove=iu(n,"g","overlines-above"),iu(n,"g","xaxislayer-above"),iu(n,"g","yaxislayer-above"),t.overaxesAbove=iu(n,"g","overaxes-above"),t.xlines=n.select(".xlines-"+s),t.ylines=n.select(".ylines-"+l),t.xaxislayer=n.select(".xaxislayer-"+s),t.yaxislayer=n.select(".yaxislayer-"+l))}else{var v=f.plotgroup,_=i+"-x",b=i+"-y";t.minorGridlayer=f.minorGridlayer,t.gridlayer=f.gridlayer,t.zerolinelayer=f.zerolinelayer,t.zerolinelayerAbove=f.zerolinelayerAbove,iu(f.overlinesBelow,"path",_),iu(f.overlinesBelow,"path",b),iu(f.overaxesBelow,"g",_),iu(f.overaxesBelow,"g",b),t.plot=iu(f.overplot,"g",i),iu(f.overlinesAbove,"path",_),iu(f.overlinesAbove,"path",b),iu(f.overaxesAbove,"g",_),iu(f.overaxesAbove,"g",b),t.xlines=v.select(".overlines-"+s).select("."+_),t.ylines=v.select(".overlines-"+l).select("."+b),t.xaxislayer=v.select(".overaxes-"+s).select("."+_),t.yaxislayer=v.select(".overaxes-"+l).select("."+b)}o||(u||(dI(t.minorGridlayer,"g",t.xaxis._id),dI(t.minorGridlayer,"g",t.yaxis._id),t.minorGridlayer.selectAll("g").map(function(p){return p[0]}).sort(g_.idSort),dI(t.gridlayer,"g",t.xaxis._id),dI(t.gridlayer,"g",t.yaxis._id),t.gridlayer.selectAll("g").map(function(p){return p[0]}).sort(g_.idSort)),t.xlines.style("fill","none").classed("crisp",!0),t.ylines.style("fill","none").classed("crisp",!0))}function dpe(e,t){if(e){var r={};e.each(function(l){var u=l[0],c=vI.select(this);c.remove(),vpe(u,t),r[u]=!0});for(var n in t._plots)for(var i=t._plots[n],a=i.overlays||[],o=0;o{"use strict";var pI=Ru();ppe.exports={hasLines:pI.hasLines,hasMarkers:pI.hasMarkers,hasText:pI.hasText,isBubble:pI.isBubble,attributes:pf(),layoutAttributes:X6(),supplyDefaults:Vde(),crossTraceDefaults:aU(),supplyLayoutDefaults:Wde(),calc:O0().calc,crossTraceCalc:gve(),arraysToCalcdata:km(),plot:oT(),colorbar:$d(),formatLabels:iI(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:cT(),selectPoints:fT(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:ph(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var _pe=ye((Asr,ype)=>{"use strict";var x0t=Oa(),b0t=ka(),mpe=IN(),CU=Dr(),w0t=CU.strScale,T0t=CU.strRotate,A0t=CU.strTranslate;ype.exports=function(t,r,n){var i=t.node(),a=mpe[n.arrowhead||0],o=mpe[n.startarrowhead||0],s=(n.arrowwidth||1)*(n.arrowsize||1),l=(n.arrowwidth||1)*(n.startarrowsize||1),u=r.indexOf("start")>=0,c=r.indexOf("end")>=0,f=a.backoff*s+n.standoff,h=o.backoff*l+n.startstandoff,d,v,_,b;if(i.nodeName==="line"){d={x:+t.attr("x1"),y:+t.attr("y1")},v={x:+t.attr("x2"),y:+t.attr("y2")};var p=d.x-v.x,k=d.y-v.y;if(_=Math.atan2(k,p),b=_+Math.PI,f&&h&&f+h>Math.sqrt(p*p+k*k)){V();return}if(f){if(f*f>p*p+k*k){V();return}var E=f*Math.cos(_),S=f*Math.sin(_);v.x+=E,v.y+=S,t.attr({x2:v.x,y2:v.y})}if(h){if(h*h>p*p+k*k){V();return}var L=h*Math.cos(_),x=h*Math.sin(_);d.x-=L,d.y-=x,t.attr({x1:d.x,y1:d.y})}}else if(i.nodeName==="path"){var C=i.getTotalLength(),M="";if(C{"use strict";var xpe=Oa(),LU=qa(),S0t=Mc(),y_=Dr(),PU=y_.strTranslate,n4=ho(),Yb=ka(),Iy=So(),bpe=vf(),IU=ru(),RU=Ag(),i4=yv(),M0t=vl().arrayEditor,E0t=_pe();Ape.exports={draw:k0t,drawOne:wpe,drawRaw:Tpe};function k0t(e){var t=e._fullLayout;t._infolayer.selectAll(".annotation").remove();for(var r=0;r2/3?tt="right":tt="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[tt]}for(var Pe=!1,ge=["x","y"],Re=0;Re1)&&(ut===Ze?(_t=pt.r2fraction(t["a"+ce]),(_t<0||_t>1)&&(Pe=!0)):Pe=!0),wr=pt._offset+pt.r2p(t[ce]),St=.5}else{var It=Vt==="domain";ce==="x"?($e=t[ce],wr=It?pt._offset+pt._length*$e:wr=s.l+s.w*$e):($e=1-t[ce],wr=It?pt._offset+pt._length*$e:wr=s.t+s.h*$e),St=t.showarrow?.5:$e}if(t.showarrow){sr.head=wr;var mt=t["a"+ce];if(Qt=st*Fe(.5,t.xanchor)-lt*Fe(.5,t.yanchor),ut===Ze){var er=n4.getRefType(ut);er==="domain"?(ce==="y"&&(mt=1-mt),sr.tail=pt._offset+pt._length*mt):er==="paper"?ce==="y"?(mt=1-mt,sr.tail=s.t+s.h*mt):sr.tail=s.l+s.w*mt:sr.tail=pt._offset+pt.r2p(mt),cr=Qt}else sr.tail=wr+mt,cr=Qt+mt;sr.text=sr.tail+Qt;var lr=o[ce==="x"?"width":"height"];if(Ze==="paper"&&(sr.head=y_.constrain(sr.head,1,lr-1)),ut==="pixel"){var Tr=-Math.max(sr.tail-3,sr.text),Lr=Math.min(sr.tail+3,sr.text)-lr;Tr>0?(sr.tail+=Tr,sr.text+=Tr):Lr>0&&(sr.tail-=Lr,sr.text-=Lr)}sr.tail+=Jt,sr.head+=Jt}else Qt=Gt*Fe(St,Nt),cr=Qt,sr.text=wr+Qt;sr.text+=Jt,Qt+=Jt,cr+=Jt,t["_"+ce+"padplus"]=Gt/2+cr,t["_"+ce+"padminus"]=Gt/2-cr,t["_"+ce+"size"]=Gt,t["_"+ce+"shift"]=Qt}if(Pe){C.remove();return}var ti=0,Br=0;if(t.align!=="left"&&(ti=(ie-Ce)*(t.align==="center"?.5:1)),t.valign!=="top"&&(Br=(Se-me)*(t.valign==="middle"?.5:1)),_e)oe.select("svg").attr({x:P+ti-1,y:P+Br}).call(Iy.setClipUrl,z?_:null,e);else{var Vr=P+Br-Ee.top,dt=P+ti-Ee.left;Z.call(IU.positionText,dt,Vr).call(Iy.setClipUrl,z?_:null,e)}O.select("rect").call(Iy.setRect,P,P,ie,Se),T.call(Iy.setRect,M/2,M/2,Le-M,Ae-M),C.call(Iy.setTranslate,Math.round(b.x.text-Le/2),Math.round(b.y.text-Ae/2)),E.attr({transform:"rotate("+p+","+b.x.text+","+b.y.text+")"});var Ge=function(je,tt){k.selectAll(".annotation-arrow-g").remove();var xt=b.x.head,Ie=b.y.head,xe=b.x.tail+je,ke=b.y.tail+tt,vt=b.x.text+je,ir=b.y.text+tt,ar=y_.rotationXYMatrix(p,vt,ir),vr=y_.apply2DTransform(ar),ii=y_.apply2DTransform2(ar),pi=+T.attr("width"),$r=+T.attr("height"),di=vt-.5*pi,ji=di+pi,In=ir-.5*$r,wi=In+$r,On=[[di,In,di,wi],[di,wi,ji,wi],[ji,wi,ji,In],[ji,In,di,In]].map(ii);if(!On.reduce(function(Qr,Oi){return Qr^!!y_.segmentsIntersect(xt,Ie,xt+1e6,Ie+1e6,Oi[0],Oi[1],Oi[2],Oi[3])},!1)){On.forEach(function(Qr){var Oi=y_.segmentsIntersect(xe,ke,xt,Ie,Qr[0],Qr[1],Qr[2],Qr[3]);Oi&&(xe=Oi.x,ke=Oi.y)});var qn=t.arrowwidth,Fn=t.arrowcolor,ra=t.arrowside,la=k.append("g").style({opacity:Yb.opacity(Fn)}).classed("annotation-arrow-g",!0),Ut=la.append("path").attr("d","M"+xe+","+ke+"L"+xt+","+Ie).style("stroke-width",qn+"px").call(Yb.stroke,Yb.rgb(Fn));if(E0t(Ut,ra,t),l.annotationPosition&&Ut.node().parentNode&&!n){var wt=xt,rr=Ie;if(t.standoff){var nr=Math.sqrt(Math.pow(xt-xe,2)+Math.pow(Ie-ke,2));wt+=t.standoff*(xe-xt)/nr,rr+=t.standoff*(ke-Ie)/nr}var Er=la.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(xe-wt)+","+(ke-rr),transform:PU(wt,rr)}).style("stroke-width",qn+6+"px").call(Yb.stroke,"rgba(0,0,0,0)").call(Yb.fill,"rgba(0,0,0,0)"),Xr,ri;i4.init({element:Er.node(),gd:e,prepFn:function(){var Qr=Iy.getTranslate(C);Xr=Qr.x,ri=Qr.y,i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0)},moveFn:function(Qr,Oi){var $i=vr(Xr,ri),tn=$i[0]+Qr,fn=$i[1]+Oi;C.call(Iy.setTranslate,tn,fn),d("x",m_(i,Qr,"x",s,t)),d("y",m_(a,Oi,"y",s,t)),t.axref===t.xref&&d("ax",m_(i,Qr,"ax",s,t)),t.ayref===t.yref&&d("ay",m_(a,Oi,"ay",s,t)),la.attr("transform",PU(Qr,Oi)),E.attr({transform:"rotate("+p+","+tn+","+fn+")"})},doneFn:function(){LU.call("_guiRelayout",e,v());var Qr=document.querySelector(".js-notes-box-panel");Qr&&Qr.redraw(Qr.selectedObj)}})}}};if(t.showarrow&&Ge(0,0),S){var Je;i4.init({element:C.node(),gd:e,prepFn:function(){Je=E.attr("transform")},moveFn:function(je,tt){var xt="pointer";if(t.showarrow)t.axref===t.xref?d("ax",m_(i,je,"ax",s,t)):d("ax",t.ax+je),t.ayref===t.yref?d("ay",m_(a,tt,"ay",s.w,t)):d("ay",t.ay+tt),Ge(je,tt);else{if(n)return;var Ie,xe;if(i)Ie=m_(i,je,"x",s,t);else{var ke=t._xsize/s.w,vt=t.x+(t._xshift-t.xshift)/s.w-ke/2;Ie=i4.align(vt+je/s.w,ke,0,1,t.xanchor)}if(a)xe=m_(a,tt,"y",s,t);else{var ir=t._ysize/s.h,ar=t.y-(t._yshift+t.yshift)/s.h-ir/2;xe=i4.align(ar-tt/s.h,ir,0,1,t.yanchor)}d("x",Ie),d("y",xe),(!i||!a)&&(xt=i4.getCursor(i?.5:Ie,a?.5:xe,t.xanchor,t.yanchor))}E.attr({transform:PU(je,tt)+Je}),RU(C,xt)},clickFn:function(je,tt){t.captureevents&&e.emit("plotly_clickannotation",x(tt))},doneFn:function(){RU(C),LU.call("_guiRelayout",e,v());var je=document.querySelector(".js-notes-box-panel");je&&je.redraw(je.selectedObj)}})}}l.annotationText?Z.call(IU.makeEditable,{delegate:C,gd:e}).call(H).on("edit",function(j){t.text=j,this.call(H),d("text",j),i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0),LU.call("_guiRelayout",e,v())}):Z.call(H)}});var Lpe=ye((Msr,Cpe)=>{"use strict";var Spe=Dr(),C0t=qa(),Mpe=vl().arrayEditor;Cpe.exports={hasClickToShow:L0t,onClick:P0t};function L0t(e,t){var r=kpe(e,t);return r.on.length>0||r.explicitOff.length>0}function P0t(e,t){var r=kpe(e,t),n=r.on,i=r.off.concat(r.explicitOff),a={},o=e._fullLayout.annotations,s,l;if(n.length||i.length){for(s=0;s{"use strict";var DU=Dr(),hT=ka();Ppe.exports=function(t,r,n,i){i("opacity");var a=i("bgcolor"),o=i("bordercolor"),s=hT.opacity(o);i("borderpad");var l=i("borderwidth"),u=i("showarrow");i("text",u?" ":n._dfltTitle.annotation),i("textangle"),DU.coerceFont(i,"font",n.font),i("width"),i("align");var c=i("height");if(c&&i("valign"),u){var f=i("arrowside"),h,d;f.indexOf("end")!==-1&&(h=i("arrowhead"),d=i("arrowsize")),f.indexOf("start")!==-1&&(i("startarrowhead",h),i("startarrowsize",d)),i("arrowcolor",s?r.bordercolor:hT.defaultLine),i("arrowwidth",(s&&l||1)*2),i("standoff"),i("startstandoff")}var v=i("hovertext"),_=n.hoverlabel||{};if(v){var b=i("hoverlabel.bgcolor",_.bgcolor||(hT.opacity(a)?hT.rgb(a):hT.defaultLine)),p=i("hoverlabel.bordercolor",_.bordercolor||hT.contrast(b)),k=DU.extendFlat({},_.font);k.color||(k.color=p),DU.coerceFont(i,"hoverlabel.font",k)}i("captureevents",!!v)}});var Rpe=ye((ksr,Ipe)=>{"use strict";var zU=Dr(),Kb=ho(),I0t=Yd(),R0t=FU(),D0t=Ub();Ipe.exports=function(t,r){I0t(t,r,{name:"annotations",handleItemDefaults:F0t})};function F0t(e,t,r){function n(E,S){return zU.coerce(e,t,D0t,E,S)}var i=n("visible"),a=n("clicktoshow");if(i||a){R0t(e,t,r,n);for(var o=t.showarrow,s=["x","y"],l=[-10,-30],u={_fullLayout:r},c=0;c<2;c++){var f=s[c],h=Kb.coerceRef(e,t,u,f,"","paper");if(h!=="paper"){var d=Kb.getFromId(u,h);d._annIndices.push(t._index)}if(Kb.coercePosition(t,u,n,h,f,.5),o){var v="a"+f,_=Kb.coerceRef(e,t,u,v,"pixel",["pixel","paper"]);_!=="pixel"&&_!==h&&(_=t[v]="pixel");var b=_==="pixel"?l[c]:.4;Kb.coercePosition(t,u,n,_,v,b)}n(f+"anchor"),n(f+"shift")}if(zU.noneOrAll(e,t,["x","y"]),o&&zU.noneOrAll(e,t,["ax","ay"]),a){var p=n("xclick"),k=n("yclick");t._xclick=p===void 0?t.x:Kb.cleanPosition(p,u,t.xref),t._yclick=k===void 0?t.y:Kb.cleanPosition(k,u,t.yref)}}}});var zpe=ye((Csr,Fpe)=>{"use strict";var OU=Dr(),Jb=ho(),z0t=gI().draw;Fpe.exports=function(t){var r=t._fullLayout,n=OU.filterVisible(r.annotations);if(n.length&&t._fullData.length)return OU.syncOrAsync([z0t,O0t],t)};function O0t(e){var t=e._fullLayout;OU.filterVisible(t.annotations).forEach(function(r){var n=Jb.getFromId(e,r.xref),i=Jb.getFromId(e,r.yref),a=Jb.getRefType(r.xref),o=Jb.getRefType(r.yref);r._extremes={},a==="range"&&Dpe(r,n),o==="range"&&Dpe(r,i)})}function Dpe(e,t){var r=t._id,n=r.charAt(0),i=e[n],a=e["a"+n],o=e[n+"ref"],s=e["a"+n+"ref"],l=e["_"+n+"padplus"],u=e["_"+n+"padminus"],c={x:1,y:-1}[n]*e[n+"shift"],f=3*e.arrowsize*e.arrowwidth||0,h=f+c,d=f-c,v=3*e.startarrowsize*e.arrowwidth||0,_=v+c,b=v-c,p;if(s===o){var k=Jb.findExtremes(t,[t.r2c(i)],{ppadplus:h,ppadminus:d}),E=Jb.findExtremes(t,[t.r2c(a)],{ppadplus:Math.max(l,_),ppadminus:Math.max(u,b)});p={min:[k.min[0],E.min[0]],max:[k.max[0],E.max[0]]}}else _=a?_+a:_,b=a?b-a:b,p=Jb.findExtremes(t,[t.r2c(i)],{ppadplus:Math.max(l,h,_),ppadminus:Math.max(u,d,b)});e._extremes[r]=p}});var qpe=ye((Lsr,Ope)=>{"use strict";var q0t=Eo(),B0t=m6();Ope.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(!(a||o))return;var s=t._fullLayout.annotations,l=r._id.charAt(0),u,c;function f(d){var v=u[d],_=null;a?_=B0t(v,r.range):_=Math.pow(10,v),q0t(_)||(_=null),i(c+d,_)}for(var h=0;h{"use strict";var qU=gI(),Bpe=Lpe();Npe.exports={moduleType:"component",name:"annotations",layoutAttributes:Ub(),supplyLayoutDefaults:Rpe(),includeBasePlot:OM()("annotations"),calcAutorange:zpe(),draw:qU.draw,drawOne:qU.drawOne,drawRaw:qU.drawRaw,hasClickToShow:Bpe.hasClickToShow,onClick:Bpe.onClick,convertCoords:qpe()}});var mI=ye((Isr,Vpe)=>{"use strict";var kc=Ub(),N0t=mc().overrideAll,U0t=vl().templatedArray;Vpe.exports=N0t(U0t("annotation",{visible:kc.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:kc.xanchor,xshift:kc.xshift,yanchor:kc.yanchor,yshift:kc.yshift,text:kc.text,textangle:kc.textangle,font:kc.font,width:kc.width,height:kc.height,opacity:kc.opacity,align:kc.align,valign:kc.valign,bgcolor:kc.bgcolor,bordercolor:kc.bordercolor,borderpad:kc.borderpad,borderwidth:kc.borderwidth,showarrow:kc.showarrow,arrowcolor:kc.arrowcolor,arrowhead:kc.arrowhead,startarrowhead:kc.startarrowhead,arrowside:kc.arrowside,arrowsize:kc.arrowsize,startarrowsize:kc.startarrowsize,arrowwidth:kc.arrowwidth,standoff:kc.standoff,startstandoff:kc.startstandoff,hovertext:kc.hovertext,hoverlabel:kc.hoverlabel,captureevents:kc.captureevents}),"calc","from-root")});var Hpe=ye((Rsr,Gpe)=>{"use strict";var BU=Dr(),V0t=ho(),G0t=Yd(),H0t=FU(),j0t=mI();Gpe.exports=function(t,r,n){G0t(t,r,{name:"annotations",handleItemDefaults:W0t,fullLayout:n.fullLayout})};function W0t(e,t,r,n){function i(s,l){return BU.coerce(e,t,j0t,s,l)}function a(s){var l=s+"axis",u={_fullLayout:{}};return u._fullLayout[l]=r[l],V0t.coercePosition(t,u,i,s,s,.5)}var o=i("visible");o&&(H0t(e,t,n.fullLayout,i),a("x"),a("y"),a("z"),BU.noneOrAll(e,t,["x","y","z"]),t.xref="x",t.yref="y",t.zref="z",i("xanchor"),i("yanchor"),i("xshift"),i("yshift"),t.showarrow&&(t.axref="pixel",t.ayref="pixel",i("ax",-10),i("ay",-30),BU.noneOrAll(e,t,["ax","ay"])))}});var Zpe=ye((Dsr,Xpe)=>{"use strict";var jpe=Dr(),Wpe=ho();Xpe.exports=function(t){for(var r=t.fullSceneLayout,n=r.annotations,i=0;i{"use strict";function NU(e,t){var r=[0,0,0,0],n,i;for(n=0;n<4;++n)for(i=0;i<4;++i)r[i]+=e[4*n+i]*t[n];return r}function Z0t(e,t){var r=NU(e.projection,NU(e.view,NU(e.model,[t[0],t[1],t[2],1])));return r}Ype.exports=Z0t});var Jpe=ye((zsr,Kpe)=>{"use strict";var Y0t=gI().drawRaw,K0t=UU(),J0t=["x","y","z"];Kpe.exports=function(t){for(var r=t.fullSceneLayout,n=t.dataScale,i=r.annotations,a=0;a1){s=!0;break}}s?t.fullLayout._infolayer.select(".annotation-"+t.id+'[data-index="'+a+'"]').remove():(o._pdata=K0t(t.glplot.cameraParams,[r.xaxis.r2l(o.x)*n[0],r.yaxis.r2l(o.y)*n[1],r.zaxis.r2l(o.z)*n[2]]),Y0t(t.graphDiv,o,a,t.id,o._xa,o._ya))}}});var e0e=ye((Osr,Qpe)=>{"use strict";var $0t=qa(),$pe=Dr();Qpe.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:mI()}}},layoutAttributes:mI(),handleDefaults:Hpe(),includeBasePlot:Q0t,convert:Zpe(),draw:Jpe()};function Q0t(e,t){var r=$0t.subplotsRegistry.gl3d;if(r)for(var n=r.attrRegex,i=Object.keys(e),a=0;a{"use strict";var t0e=Ub(),r0e=ec(),i0e=pf().line,egt=Pd().dash,zg=Ao().extendFlat,tgt=vl().templatedArray,qsr=zM(),dT=Gl(),{shapeTexttemplateAttrs:rgt,templatefallbackAttrs:igt}=Ll(),ngt=M6();n0e.exports=tgt("shape",{visible:zg({},dT.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:zg({},dT.legend,{editType:"calc+arraydraw"}),legendgroup:zg({},dT.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:zg({},dT.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:r0e({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:zg({},dT.legendrank,{editType:"calc+arraydraw"}),legendwidth:zg({},dT.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:zg({},t0e.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:zg({},t0e.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:zg({},i0e.color,{editType:"arraydraw"}),width:zg({},i0e.width,{editType:"calc+arraydraw"}),dash:zg({},egt,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:rgt({},{keys:Object.keys(ngt)}),texttemplatefallback:igt({editType:"arraydraw"}),font:r0e({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var s0e=ye((Nsr,o0e)=>{"use strict";var a4=Dr(),vT=ho(),agt=Yd(),ogt=VU(),a0e=f_();o0e.exports=function(t,r){agt(t,r,{name:"shapes",handleItemDefaults:lgt})};function sgt(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}function lgt(e,t,r){function n(j,re){return a4.coerce(e,t,ogt,j,re)}t._isShape=!0;var i=n("visible");if(i){var a=n("showlegend");a&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),a4.coerceFont(n,"legendgrouptitle.font"),n("legendrank"));var o=n("path"),s=o?"path":"rect",l=n("type",s),u=l!=="path";u&&delete t.path,n("editable"),n("layer"),n("opacity"),n("fillcolor"),n("fillrule");var c=n("line.width");c&&(n("line.color"),n("line.dash"));for(var f=n("xsizemode"),h=n("ysizemode"),d=["x","y"],v=0;v<2;v++){var _=d[v],b=_+"anchor",p=_==="x"?f:h,k={_fullLayout:r},E,S,L,x=vT.coerceRef(e,t,k,_,void 0,"paper"),C=vT.getRefType(x);if(C==="range"?(E=vT.getFromId(k,x),E._shapeIndices.push(t._index),L=a0e.rangeToShapePosition(E),S=a0e.shapePositionToRange(E),(E.type==="category"||E.type==="multicategory")&&(n(_+"0shift"),n(_+"1shift"))):S=L=a4.identity,u){var M=.25,g=.75,P=_+"0",T=_+"1",z=e[P],O=e[T];e[P]=S(e[P],!0),e[T]=S(e[T],!0),p==="pixel"?(n(P,0),n(T,10)):(vT.coercePosition(t,k,n,x,P,M),vT.coercePosition(t,k,n,x,T,g)),t[P]=L(t[P]),t[T]=L(t[T]),e[P]=z,e[T]=O}if(p==="pixel"){var V=e[b];e[b]=S(e[b],!0),vT.coercePosition(t,k,n,x,b,.25),t[b]=L(t[b]),e[b]=V}}u&&a4.noneOrAll(e,t,["x0","x1","y0","y1"]);var G=l==="line",Z,H;if(u&&(Z=n("label.texttemplate"),n("label.texttemplatefallback")),Z||(H=n("label.text")),H||Z){n("label.textangle");var N=n("label.textposition",G?"middle":"middle center");n("label.xanchor"),n("label.yanchor",sgt(G,N)),n("label.padding"),a4.coerceFont(n,"label.font",r.font)}}}});var c0e=ye((Usr,u0e)=>{"use strict";var ugt=ka(),l0e=Dr();function cgt(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}u0e.exports=function(t,r,n){n("newshape.visible"),n("newshape.name"),n("newshape.showlegend"),n("newshape.legend"),n("newshape.legendwidth"),n("newshape.legendgroup"),n("newshape.legendgrouptitle.text"),l0e.coerceFont(n,"newshape.legendgrouptitle.font"),n("newshape.legendrank"),n("newshape.drawdirection"),n("newshape.layer"),n("newshape.fillcolor"),n("newshape.fillrule"),n("newshape.opacity");var i=n("newshape.line.width");if(i){var a=(t||{}).plot_bgcolor||"#FFF";n("newshape.line.color",ugt.contrast(a)),n("newshape.line.dash")}var o=t.dragmode==="drawline",s=n("newshape.label.text"),l=n("newshape.label.texttemplate");if(n("newshape.label.texttemplatefallback"),s||l){n("newshape.label.textangle");var u=n("newshape.label.textposition",o?"middle":"middle center");n("newshape.label.xanchor"),n("newshape.label.yanchor",cgt(o,u)),n("newshape.label.padding"),l0e.coerceFont(n,"newshape.label.font",r.font)}n("activeshape.fillcolor"),n("activeshape.opacity")}});var p0e=ye((Vsr,v0e)=>{"use strict";var GU=Dr(),pT=ho(),gT=pM(),h0e=f_();v0e.exports=function(t){var r=t._fullLayout,n=GU.filterVisible(r.shapes);if(!(!n.length||!t._fullData.length))for(var i=0;i0?u+o:o;return{ppad:o,ppadplus:s?f:h,ppadminus:s?h:f}}else return{ppad:o}}function f0e(e,t,r){var n=e._id.charAt(0)==="x"?"x":"y",i=e.type==="category"||e.type==="multicategory",a,o,s=0,l=0,u=i?e.r2c:e.d2c,c=t[n+"sizemode"]==="scaled";if(c?(a=t[n+"0"],o=t[n+"1"],i&&(s=t[n+"0shift"],l=t[n+"1shift"])):(a=t[n+"anchor"],o=t[n+"anchor"]),a!==void 0)return[u(a)+s,u(o)+l];if(t.path){var f=1/0,h=-1/0,d=t.path.match(gT.segmentRE),v,_,b,p,k;for(e.type==="date"&&(u=h0e.decodeDate(u)),v=0;vh&&(h=k)));if(h>=f)return[f,h]}}});var y0e=ye((Gsr,m0e)=>{"use strict";var g0e=sP();m0e.exports={moduleType:"component",name:"shapes",layoutAttributes:VU(),supplyLayoutDefaults:s0e(),supplyDrawNewShapeDefaults:c0e(),includeBasePlot:OM()("shapes"),calcAutorange:p0e(),draw:g0e.draw,drawOne:g0e.drawOne}});var HU=ye((jsr,x0e)=>{"use strict";var _0e=hd(),dgt=vl().templatedArray,Hsr=zM();x0e.exports=dgt("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",_0e.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",_0e.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var w0e=ye((Wsr,b0e)=>{"use strict";var vgt=Dr(),jU=ho(),pgt=Yd(),ggt=HU(),mgt="images";b0e.exports=function(t,r){var n={name:mgt,handleItemDefaults:ygt};pgt(t,r,n)};function ygt(e,t,r){function n(h,d){return vgt.coerce(e,t,ggt,h,d)}var i=n("source"),a=n("visible",!!i);if(!a)return t;n("layer"),n("xanchor"),n("yanchor"),n("sizex"),n("sizey"),n("sizing"),n("opacity");for(var o={_fullLayout:r},s=["x","y"],l=0;l<2;l++){var u=s[l],c=jU.coerceRef(e,t,o,u,"paper",void 0);if(c!=="paper"){var f=jU.getFromId(o,c);f._imgIndices.push(t._index)}jU.coercePosition(t,o,n,c,u,0)}return t}});var M0e=ye((Xsr,S0e)=>{"use strict";var T0e=Oa(),_gt=So(),mT=ho(),A0e=hf(),xgt=Wp();S0e.exports=function(t){var r=t._fullLayout,n=[],i={},a=[],o,s;for(s=0;s{"use strict";var E0e=Eo(),bgt=m6();k0e.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(a||o){for(var s=t._fullLayout.images,l=r._id.charAt(0),u,c,f=0;f{"use strict";L0e.exports={moduleType:"component",name:"images",layoutAttributes:HU(),supplyLayoutDefaults:w0e(),includeBasePlot:OM()("images"),draw:M0e(),convertCoords:C0e()}});var yI=ye((Ksr,I0e)=>{"use strict";I0e.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var WU=ye((Jsr,D0e)=>{"use strict";var wgt=ec(),Tgt=Lh(),Agt=Ao().extendFlat,Sgt=mc().overrideAll,Mgt=E6(),R0e=vl().templatedArray,Egt=R0e("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});D0e.exports=Sgt(R0e("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:Egt,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:Agt(Mgt({editType:"arraydraw"}),{}),font:wgt({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:Tgt.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var q0e=ye(($sr,O0e)=>{"use strict";var _I=Dr(),F0e=Yd(),z0e=WU(),kgt=yI(),Cgt=kgt.name,Lgt=z0e.buttons;O0e.exports=function(t,r){var n={name:Cgt,handleItemDefaults:Pgt};F0e(t,r,n)};function Pgt(e,t,r){function n(o,s){return _I.coerce(e,t,z0e,o,s)}var i=F0e(e,t,{name:"buttons",handleItemDefaults:Igt}),a=n("visible",i.length>0);a&&(n("active"),n("direction"),n("type"),n("showactive"),n("x"),n("y"),_I.noneOrAll(e,t,["x","y"]),n("xanchor"),n("yanchor"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),_I.coerceFont(n,"font",r.font),n("bgcolor",r.paper_bgcolor),n("bordercolor"),n("borderwidth"))}function Igt(e,t){function r(i,a){return _I.coerce(e,t,Lgt,i,a)}var n=r("visible",e.method==="skip"||Array.isArray(e.args));n&&(r("method"),r("args"),r("args2"),r("label"),r("execute"))}});var U0e=ye((Qsr,N0e)=>{"use strict";N0e.exports=Mf;var Og=Oa(),B0e=ka(),yT=So(),xI=Dr();function Mf(e,t,r){this.gd=e,this.container=t,this.id=r,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}Mf.barWidth=2;Mf.barLength=20;Mf.barRadius=2;Mf.barPad=1;Mf.barColor="#808BA4";Mf.prototype.enable=function(t,r,n){var i=this.gd._fullLayout,a=i.width,o=i.height;this.position=t;var s=this.position.l,l=this.position.w,u=this.position.t,c=this.position.h,f=this.position.direction,h=f==="down",d=f==="left",v=f==="right",_=f==="up",b=l,p=c,k,E,S,L;!h&&!d&&!v&&!_&&(this.position.direction="down",h=!0);var x=h||_;x?(k=s,E=k+b,h?(S=u,L=Math.min(S+p,o),p=L-S):(L=u+p,S=Math.max(L-p,0),p=L-S)):(S=u,L=S+p,d?(E=s+b,k=Math.max(E-b,0),b=E-k):(k=s,E=Math.min(k+b,a),b=E-k)),this._box={l:k,t:S,w:b,h:p};var C=l>b,M=Mf.barLength+2*Mf.barPad,g=Mf.barWidth+2*Mf.barPad,P=s,T=u+c;T+g>o&&(T=o-g);var z=this.container.selectAll("rect.scrollbar-horizontal").data(C?[0]:[]);z.exit().on(".drag",null).remove(),z.enter().append("rect").classed("scrollbar-horizontal",!0).call(B0e.fill,Mf.barColor),C?(this.hbar=z.attr({rx:Mf.barRadius,ry:Mf.barRadius,x:P,y:T,width:M,height:g}),this._hbarXMin=P+M/2,this._hbarTranslateMax=b-M):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var O=c>p,V=Mf.barWidth+2*Mf.barPad,G=Mf.barLength+2*Mf.barPad,Z=s+l,H=u;Z+V>a&&(Z=a-V);var N=this.container.selectAll("rect.scrollbar-vertical").data(O?[0]:[]);N.exit().on(".drag",null).remove(),N.enter().append("rect").classed("scrollbar-vertical",!0).call(B0e.fill,Mf.barColor),O?(this.vbar=N.attr({rx:Mf.barRadius,ry:Mf.barRadius,x:Z,y:H,width:V,height:G}),this._vbarYMin=H+G/2,this._vbarTranslateMax=p-G):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var j=this.id,re=k-.5,oe=O?E+V+.5:E+.5,_e=S-.5,Ee=C?L+g+.5:L+.5,Ce=i._topdefs.selectAll("#"+j).data(C||O?[0]:[]);if(Ce.exit().remove(),Ce.enter().append("clipPath").attr("id",j).append("rect"),C||O?(this._clipRect=Ce.select("rect").attr({x:Math.floor(re),y:Math.floor(_e),width:Math.ceil(oe)-Math.floor(re),height:Math.ceil(Ee)-Math.floor(_e)}),this.container.call(yT.setClipUrl,j,this.gd),this.bg.attr({x:s,y:u,width:l,height:c})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(yT.setClipUrl,null),delete this._clipRect),C||O){var me=Og.behavior.drag().on("dragstart",function(){Og.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(me);var ie=Og.behavior.drag().on("dragstart",function(){Og.event.sourceEvent.preventDefault(),Og.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));C&&this.hbar.on(".drag",null).call(ie),O&&this.vbar.on(".drag",null).call(ie)}this.setTranslate(r,n)};Mf.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(yT.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};Mf.prototype._onBoxDrag=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t-=Og.event.dx),this.vbar&&(r-=Og.event.dy),this.setTranslate(t,r)};Mf.prototype._onBoxWheel=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t+=Og.event.deltaY),this.vbar&&(r+=Og.event.deltaY),this.setTranslate(t,r)};Mf.prototype._onBarDrag=function(){var t=this.translateX,r=this.translateY;if(this.hbar){var n=t+this._hbarXMin,i=n+this._hbarTranslateMax,a=xI.constrain(Og.event.x,n,i),o=(a-n)/(i-n),s=this.position.w-this._box.w;t=o*s}if(this.vbar){var l=r+this._vbarYMin,u=l+this._vbarTranslateMax,c=xI.constrain(Og.event.y,l,u),f=(c-l)/(u-l),h=this.position.h-this._box.h;r=f*h}this.setTranslate(t,r)};Mf.prototype.setTranslate=function(t,r){var n=this.position.w-this._box.w,i=this.position.h-this._box.h;if(t=xI.constrain(t||0,0,n),r=xI.constrain(r||0,0,i),this.translateX=t,this.translateY=r,this.container.call(yT.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-r),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+r-.5)}),this.hbar){var a=t/n;this.hbar.call(yT.setTranslate,t+a*this._hbarTranslateMax,r)}if(this.vbar){var o=r/i;this.vbar.call(yT.setTranslate,t,r+o*this._vbarTranslateMax)}}});var J0e=ye((elr,K0e)=>{"use strict";var _T=Oa(),o4=Mc(),s4=ka(),xT=So(),e0=Dr(),bI=ru(),Rgt=vl().arrayEditor,G0e=$h().LINE_SPACING,es=yI(),Dgt=U0e();K0e.exports=function(t){var r=t._fullLayout,n=e0.filterVisible(r[es.name]);function i(h){o4.autoMargin(t,Z0e(h))}var a=r._menulayer.selectAll("g."+es.containerClassName).data(n.length>0?[0]:[]);if(a.enter().append("g").classed(es.containerClassName,!0).style("cursor","pointer"),a.exit().each(function(){_T.select(this).selectAll("g."+es.headerGroupClassName).each(i)}).remove(),n.length!==0){var o=a.selectAll("g."+es.headerGroupClassName).data(n,Fgt);o.enter().append("g").classed(es.headerGroupClassName,!0);for(var s=e0.ensureSingle(a,"g",es.dropdownButtonGroupClassName,function(h){h.style("pointer-events","all")}),l=0;l{"use strict";var Vgt=yI();$0e.exports={moduleType:"component",name:Vgt.name,layoutAttributes:WU(),supplyLayoutDefaults:q0e(),draw:J0e()}});var u4=ye((rlr,ege)=>{"use strict";ege.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var KU=ye((ilr,ige)=>{"use strict";var tge=ec(),Ggt=E6(),Hgt=Ao().extendDeepAll,jgt=mc().overrideAll,Wgt=NS(),rge=vl().templatedArray,$b=u4(),Xgt=rge("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});ige.exports=jgt(rge("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:Xgt,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:Hgt(Ggt({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:Wgt.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:tge({})},font:tge({}),activebgcolor:{valType:"color",dflt:$b.gripBgActiveColor},bgcolor:{valType:"color",dflt:$b.railBgColor},bordercolor:{valType:"color",dflt:$b.railBorderColor},borderwidth:{valType:"number",min:0,dflt:$b.railBorderWidth},ticklen:{valType:"number",min:0,dflt:$b.tickLength},tickcolor:{valType:"color",dflt:$b.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:$b.minorTickLength}}),"arraydraw","from-root")});var sge=ye((nlr,oge)=>{"use strict";var bT=Dr(),nge=Yd(),age=KU(),Zgt=u4(),Ygt=Zgt.name,Kgt=age.steps;oge.exports=function(t,r){nge(t,r,{name:Ygt,handleItemDefaults:Jgt})};function Jgt(e,t,r){function n(f,h){return bT.coerce(e,t,age,f,h)}for(var i=nge(e,t,{name:"steps",handleItemDefaults:$gt}),a=0,o=0;o{"use strict";var qg=Oa(),wI=Mc(),__=ka(),Bg=So(),t0=Dr(),Qgt=t0.strTranslate,c4=ru(),emt=vl().arrayEditor,Rs=u4(),QU=$h(),cge=QU.LINE_SPACING,JU=QU.FROM_TL,$U=QU.FROM_BR;gge.exports=function(t){var r=t._context.staticPlot,n=t._fullLayout,i=tmt(n,t),a=n._infolayer.selectAll("g."+Rs.containerClassName).data(i.length>0?[0]:[]);a.enter().append("g").classed(Rs.containerClassName,!0).style("cursor",r?null:"ew-resize");function o(c){c._commandObserver&&(c._commandObserver.remove(),delete c._commandObserver),wI.autoMargin(t,fge(c))}if(a.exit().each(function(){qg.select(this).selectAll("g."+Rs.groupClassName).each(o)}).remove(),i.length!==0){var s=a.selectAll("g."+Rs.groupClassName).data(i,rmt);s.enter().append("g").classed(Rs.groupClassName,!0),s.exit().each(o).remove();for(var l=0;l0&&(s=s.transition().duration(t.transition.duration).ease(t.transition.easing)),s.attr("transform",Qgt(o-Rs.gripWidth*.5,t._dims.currentValueTotalHeight))}}function eV(e,t){var r=e._dims;return r.inputAreaStart+Rs.stepInset+(r.inputAreaLength-2*Rs.stepInset)*Math.min(1,Math.max(0,t))}function uge(e,t){var r=e._dims;return Math.min(1,Math.max(0,(t-Rs.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*Rs.stepInset-2*r.inputAreaStart)))}function umt(e,t,r){var n=r._dims,i=t0.ensureSingle(e,"rect",Rs.railTouchRectClass,function(a){a.call(vge,t,e,r).style("pointer-events","all")});i.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,Rs.tickOffset+r.ticklen+n.labelHeight)}).call(__.fill,r.bgcolor).attr("opacity",0),Bg.setTranslate(i,0,n.currentValueTotalHeight)}function cmt(e,t){var r=t._dims,n=r.inputAreaLength-Rs.railInset*2,i=t0.ensureSingle(e,"rect",Rs.railRectClass);i.attr({width:n,height:Rs.railWidth,rx:Rs.railRadius,ry:Rs.railRadius,"shape-rendering":"crispEdges"}).call(__.stroke,t.bordercolor).call(__.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px"),Bg.setTranslate(i,Rs.railInset,(r.inputAreaWidth-Rs.railWidth)*.5+r.currentValueTotalHeight)}});var _ge=ye((olr,yge)=>{"use strict";var fmt=u4();yge.exports={moduleType:"component",name:fmt.name,layoutAttributes:KU(),supplyLayoutDefaults:sge(),draw:mge()}});var AI=ye((slr,bge)=>{"use strict";var xge=Lh();bge.exports={bgcolor:{valType:"color",dflt:xge.background,editType:"plot"},bordercolor:{valType:"color",dflt:xge.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var tV=ye((llr,wge)=>{"use strict";wge.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var SI=ye((ulr,Tge)=>{"use strict";Tge.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var Mge=ye(EI=>{"use strict";var hmt=hf(),dmt=ru(),Age=SI(),vmt=$h().LINE_SPACING,MI=Age.name;function Sge(e){var t=e&&e[MI];return t&&t.visible}EI.isVisible=Sge;EI.makeData=function(e){for(var t=hmt.list({_fullLayout:e},"x",!0),r=e.margin,n=[],i=0;i{"use strict";var kI=Dr(),Ege=vl(),kge=hf(),pmt=AI(),gmt=tV();Cge.exports=function(t,r,n){var i=t[n],a=r[n];if(!(i.rangeslider||r._requestRangeslider[a._id]))return;kI.isPlainObject(i.rangeslider)||(i.rangeslider={});var o=i.rangeslider,s=Ege.newContainer(a,"rangeslider");function l(L,x){return kI.coerce(o,s,pmt,L,x)}var u,c;function f(L,x){return kI.coerce(u,c,gmt,L,x)}var h=l("visible");if(h){l("bgcolor",r.plot_bgcolor),l("bordercolor"),l("borderwidth"),l("thickness"),l("autorange",!a.isValidRange(o.range)),l("range");var d=r._subplots;if(d)for(var v=d.cartesian.filter(function(L){return L.substr(0,L.indexOf("y"))===kge.name2id(n)}).map(function(L){return L.substr(L.indexOf("y"),L.length)}),_=kI.simpleMap(v,kge.id2name),b=0;b<_.length;b++){var p=_[b];u=o[p]||{},c=Ege.newContainer(s,p,"yaxis");var k=r[p],E;u.range&&k.isValidRange(u.range)&&(E="fixed");var S=f("rangemode",E);S!=="match"&&f("range",k.range.slice())}s._input=o}}});var Ige=ye((hlr,Pge)=>{"use strict";var mmt=hf().list,ymt=Tg().getAutoRange,_mt=SI();Pge.exports=function(t){for(var r=mmt(t,"x",!0),n=0;n{"use strict";var CI=Oa(),xmt=qa(),bmt=Mc(),Jf=Dr(),LI=Jf.strTranslate,Dge=So(),x_=ka(),wmt=Eb(),Tmt=ph(),rV=hf(),Amt=yv(),Smt=Ag(),rl=SI();Fge.exports=function(e){for(var t=e._fullLayout,r=t._rangeSliderData,n=0;n=N.max)Z=T[H+1];else if(G=N.pmax)Z=T[H+1];else if(G0?e.touches[0].clientX:0}function Mmt(e,t,r,n){if(t._context.staticPlot)return;var i=e.select("rect."+rl.slideBoxClassName).node(),a=e.select("rect."+rl.grabAreaMinClassName).node(),o=e.select("rect."+rl.grabAreaMaxClassName).node();function s(){var l=CI.event,u=l.target,c=Rge(l),f=c-e.node().getBoundingClientRect().left,h=n.d2p(r._rl[0]),d=n.d2p(r._rl[1]),v=Amt.coverSlip();this.addEventListener("touchmove",_),this.addEventListener("touchend",b),v.addEventListener("mousemove",_),v.addEventListener("mouseup",b);function _(p){var k=Rge(p),E=+k-c,S,L,x;switch(u){case i:if(x="ew-resize",h+E>r._length||d+E<0)return;S=h+E,L=d+E;break;case a:if(x="col-resize",h+E>r._length)return;S=h+E,L=d;break;case o:if(x="col-resize",d+E<0)return;S=h,L=d+E;break;default:x="ew-resize",S=f,L=f+E;break}if(L{"use strict";var zmt=Dr(),Omt=AI(),qmt=tV(),iV=Mge();Oge.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:zmt.extendFlat({},Omt,{yaxis:qmt})}}},layoutAttributes:AI(),handleDefaults:Lge(),calcAutorange:Ige(),draw:zge(),isVisible:iV.isVisible,makeData:iV.makeData,autoMarginOpts:iV.autoMarginOpts}});var PI=ye((plr,Nge)=>{"use strict";var Bmt=ec(),Bge=Lh(),Nmt=vl().templatedArray,Umt=Nmt("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});Nge.exports={visible:{valType:"boolean",editType:"plot"},buttons:Umt,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:Bmt({editType:"plot"}),bgcolor:{valType:"color",dflt:Bge.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:Bge.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var nV=ye((glr,Uge)=>{"use strict";Uge.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var Hge=ye((mlr,Gge)=>{"use strict";var II=Dr(),Vmt=ka(),Gmt=vl(),Hmt=Yd(),Vge=PI(),aV=nV();Gge.exports=function(t,r,n,i,a){var o=t.rangeselector||{},s=Gmt.newContainer(r,"rangeselector");function l(d,v){return II.coerce(o,s,Vge,d,v)}var u=Hmt(o,s,{name:"buttons",handleItemDefaults:jmt,calendar:a}),c=l("visible",u.length>0);if(c){var f=Wmt(r,n,i);l("x",f[0]),l("y",f[1]),II.noneOrAll(t,r,["x","y"]),l("xanchor"),l("yanchor"),II.coerceFont(l,"font",n.font);var h=l("bgcolor");l("activecolor",Vmt.contrast(h,aV.lightAmount,aV.darkAmount)),l("bordercolor"),l("borderwidth")}};function jmt(e,t,r,n){var i=n.calendar;function a(l,u){return II.coerce(e,t,Vge.buttons,l,u)}var o=a("visible");if(o){var s=a("step");s!=="all"&&(i&&i!=="gregorian"&&(s==="month"||s==="year")?t.stepmode="backward":a("stepmode"),a("count")),a("label")}}function Wmt(e,t,r){for(var n=r.filter(function(s){return t[s].anchor===e._id}),i=0,a=0;a{"use strict";var Xmt=xO(),Zmt=Dr().titleCase;jge.exports=function(t,r){var n=t._name,i={};if(r.step==="all")i[n+".autorange"]=!0;else{var a=Ymt(t,r);i[n+".range[0]"]=a[0],i[n+".range[1]"]=a[1]}return i};function Ymt(e,t){var r=e.range,n=new Date(e.r2l(r[1])),i=t.step,a=Xmt["utc"+Zmt(i)],o=t.count,s;switch(t.stepmode){case"backward":s=e.l2r(+a.offset(n,-o));break;case"todate":var l=a.offset(n,-o);s=e.l2r(+a.ceil(l));break}var u=r[1];return[s,u]}});var eme=ye((_lr,Qge)=>{"use strict";var DI=Oa(),Kmt=qa(),Jmt=Mc(),Xge=ka(),$ge=So(),Ry=Dr(),Zge=Ry.strTranslate,RI=ru(),$mt=hf(),lV=$h(),Yge=lV.LINE_SPACING,Kge=lV.FROM_TL,Jge=lV.FROM_BR,sV=nV(),Qmt=Wge();Qge.exports=function(t){var r=t._fullLayout,n=r._infolayer.selectAll(".rangeselector").data(eyt(t),tyt);n.enter().append("g").classed("rangeselector",!0),n.exit().remove(),n.style({cursor:"pointer","pointer-events":"all"}),n.each(function(i){var a=DI.select(this),o=i,s=o.rangeselector,l=a.selectAll("g.button").data(Ry.filterVisible(s.buttons));l.enter().append("g").classed("button",!0),l.exit().remove(),l.each(function(u){var c=DI.select(this),f=Qmt(o,u);u._isActive=ryt(o,u,f),c.call(oV,s,u),c.call(nyt,s,u,t),c.on("click",function(){t._dragged||Kmt.call("_guiRelayout",t,f)}),c.on("mouseover",function(){u._isHovered=!0,c.call(oV,s,u)}),c.on("mouseout",function(){u._isHovered=!1,c.call(oV,s,u)})}),oyt(t,l,s,o._name,a)})};function eyt(e){for(var t=$mt.list(e,"x",!0),r=[],n=0;n{"use strict";tme.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:PI()}}},layoutAttributes:PI(),handleDefaults:Hge(),draw:eme()}});var Cc=ye(uV=>{"use strict";var ime=Ao().extendFlat;uV.attributes=function(e,t){e=e||{},t=t||{};var r={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},n=e.name?e.name+" ":"",i=e.trace?"trace ":"subplot ",a=t.description?" "+t.description:"",o={x:ime({},r,{}),y:ime({},r,{}),editType:e.editType};return e.noGridCell||(o.row={valType:"integer",min:0,dflt:0,editType:e.editType},o.column={valType:"integer",min:0,dflt:0,editType:e.editType}),o};uV.defaults=function(e,t,r,n){var i=n&&n.x||[0,1],a=n&&n.y||[0,1],o=t.grid;if(o){var s=r("domain.column");s!==void 0&&(s{"use strict";var syt=Dr(),lyt=a3().counter,uyt=Cc().attributes,nme=hd().idRegex,cyt=vl(),cV={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[lyt("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[nme.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[nme.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:uyt({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function FI(e,t,r){var n=t[r+"axes"],i=Object.keys((e._splomAxes||{})[r]||{});if(Array.isArray(n))return n;if(i.length)return i}function fyt(e,t){var r=e.grid||{},n=FI(t,r,"x"),i=FI(t,r,"y");if(!e.grid&&!n&&!i)return;var a=Array.isArray(r.subplots)&&Array.isArray(r.subplots[0]),o=Array.isArray(n),s=Array.isArray(i),l=o&&n!==r.xaxes&&s&&i!==r.yaxes,u,c;a?(u=r.subplots.length,c=r.subplots[0].length):(s&&(u=i.length),o&&(c=n.length));var f=cyt.newContainer(t,"grid");function h(x,C){return syt.coerce(r,f,cV,x,C)}var d=h("rows",u),v=h("columns",c);if(!(d*v>1)){delete t.grid;return}if(!a&&!o&&!s){var _=h("pattern")==="independent";_&&(a=!0)}f._hasSubplotGrid=a;var b=h("roworder"),p=b==="top to bottom",k=a?.2:.1,E=a?.3:.1,S,L;l&&t._splomGridDflt&&(S=t._splomGridDflt.xside,L=t._splomGridDflt.yside),f._domains={x:ame("x",h,k,S,v),y:ame("y",h,E,L,d,p)}}function ame(e,t,r,n,i,a){var o=t(e+"gap",r),s=t("domain."+e);t(e+"side",n);for(var l=new Array(i),u=s[0],c=(s[1]-u)/(i-o),f=c*(1-o),h=0;h{"use strict";lme.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var fme=ye((Alr,cme)=>{"use strict";var ume=Eo(),dyt=qa(),vyt=Dr(),pyt=vl(),gyt=hV();cme.exports=function(e,t,r,n){var i="error_"+n.axis,a=pyt.newContainer(t,i),o=e[i]||{};function s(v,_){return vyt.coerce(o,a,gyt,v,_)}var l=o.array!==void 0||o.value!==void 0||o.type==="sqrt",u=s("visible",l);if(u!==!1){var c=s("type","array"in o?"data":"percent"),f=!0;c!=="sqrt"&&(f=s("symmetric",!((c==="data"?"arrayminus":"valueminus")in o))),c==="data"?(s("array"),s("traceref"),f||(s("arrayminus"),s("tracerefminus"))):(c==="percent"||c==="constant")&&(s("value"),f||s("valueminus"));var h="copy_"+n.inherit+"style";if(n.inherit){var d=t["error_"+n.inherit];(d||{}).visible&&s(h,!(o.color||ume(o.thickness)||ume(o.width)))}(!n.inherit||!a[h])&&(s("color",r),s("thickness"),s("width",dyt.traceIs(t,"gl3d")?0:4))}}});var dV=ye((Slr,dme)=>{"use strict";dme.exports=function(t){var r=t.type,n=t.symmetric;if(r==="data"){var i=t.array||[];if(n)return function(u,c){var f=+i[c];return[f,f]};var a=t.arrayminus||[];return function(u,c){var f=+i[c],h=+a[c];return!isNaN(f)||!isNaN(h)?[h||0,f||0]:[NaN,NaN]}}else{var o=hme(r,t.value),s=hme(r,t.valueminus);return n||t.valueminus===void 0?function(u){var c=o(u);return[c,c]}:function(u){return[s(u),o(u)]}}};function hme(e,t){if(e==="percent")return function(r){return Math.abs(r*t/100)};if(e==="constant")return function(){return Math.abs(t)};if(e==="sqrt")return function(r){return Math.sqrt(Math.abs(r))}}});var gme=ye((Mlr,pme)=>{"use strict";var vV=Eo(),myt=qa(),pV=ho(),yyt=Dr(),_yt=dV();pme.exports=function(t){for(var r=t.calcdata,n=0;n{"use strict";var mme=Oa(),b_=Eo(),xyt=So(),byt=Ru();yme.exports=function(t,r,n,i){var a,o=n.xaxis,s=n.yaxis,l=i&&i.duration>0,u=t._context.staticPlot;r.each(function(c){var f=c[0].trace,h=f.error_x||{},d=f.error_y||{},v;f.ids&&(v=function(k){return k.id});var _=byt.hasMarkers(f)&&f.marker.maxdisplayed>0;!d.visible&&!h.visible&&(c=[]);var b=mme.select(this).selectAll("g.errorbar").data(c,v);if(b.exit().remove(),!!c.length){h.visible||b.selectAll("path.xerror").remove(),d.visible||b.selectAll("path.yerror").remove(),b.style("opacity",1);var p=b.enter().append("g").classed("errorbar",!0);l&&p.style("opacity",0).transition().duration(i.duration).style("opacity",1),xyt.setClipUrl(b,n.layerClipId,t),b.each(function(k){var E=mme.select(this),S=wyt(k,o,s);if(!(_&&!k.vis)){var L,x=E.select("path.yerror");if(d.visible&&b_(S.x)&&b_(S.yh)&&b_(S.ys)){var C=d.width;L="M"+(S.x-C)+","+S.yh+"h"+2*C+"m-"+C+",0V"+S.ys,S.noYS||(L+="m-"+C+",0h"+2*C),a=!x.size(),a?x=E.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("yerror",!0):l&&(x=x.transition().duration(i.duration).ease(i.easing)),x.attr("d",L)}else x.remove();var M=E.select("path.xerror");if(h.visible&&b_(S.y)&&b_(S.xh)&&b_(S.xs)){var g=(h.copy_ystyle?d:h).width;L="M"+S.xh+","+(S.y-g)+"v"+2*g+"m0,-"+g+"H"+S.xs,S.noXS||(L+="m0,-"+g+"v"+2*g),a=!M.size(),a?M=E.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("xerror",!0):l&&(M=M.transition().duration(i.duration).ease(i.easing)),M.attr("d",L)}else M.remove()}})}})};function wyt(e,t,r){var n={x:t.c2p(e.x),y:r.c2p(e.y)};return e.yh!==void 0&&(n.yh=r.c2p(e.yh),n.ys=r.c2p(e.ys),b_(n.ys)||(n.noYS=!0,n.ys=r.c2p(e.ys,!0))),e.xh!==void 0&&(n.xh=t.c2p(e.xh),n.xs=t.c2p(e.xs),b_(n.xs)||(n.noXS=!0,n.xs=t.c2p(e.xs,!0))),n}});var wme=ye((klr,bme)=>{"use strict";var Tyt=Oa(),xme=ka();bme.exports=function(t){t.each(function(r){var n=r[0].trace,i=n.error_y||{},a=n.error_x||{},o=Tyt.select(this);o.selectAll("path.yerror").style("stroke-width",i.thickness+"px").call(xme.stroke,i.color),a.copy_ystyle&&(a=i),o.selectAll("path.xerror").style("stroke-width",a.thickness+"px").call(xme.stroke,a.color)})}});var Sme=ye((Clr,Ame)=>{"use strict";var f4=Dr(),Tme=mc().overrideAll,h4=hV(),Qb={error_x:f4.extendFlat({},h4),error_y:f4.extendFlat({},h4)};delete Qb.error_x.copy_zstyle;delete Qb.error_y.copy_zstyle;delete Qb.error_y.copy_ystyle;var d4={error_x:f4.extendFlat({},h4),error_y:f4.extendFlat({},h4),error_z:f4.extendFlat({},h4)};delete d4.error_x.copy_ystyle;delete d4.error_y.copy_ystyle;delete d4.error_z.copy_ystyle;delete d4.error_z.copy_zstyle;Ame.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Qb,bar:Qb,histogram:Qb,scatter3d:Tme(d4,"calc","nested"),scattergl:Tme(Qb,"calc","nested")}},supplyDefaults:fme(),calc:gme(),makeComputeError:dV(),plot:_me(),style:wme(),hoverInfo:Ayt};function Ayt(e,t,r){(t.error_y||{}).visible&&(r.yerr=e.yh-e.y,t.error_y.symmetric||(r.yerrneg=e.y-e.ys)),(t.error_x||{}).visible&&(r.xerr=e.xh-e.x,t.error_x.symmetric||(r.xerrneg=e.x-e.xs))}});var Eme=ye((Llr,Mme)=>{"use strict";Mme.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var Dme=ye((Plr,Rme)=>{"use strict";var w_=Oa(),gV=cd(),OI=Mc(),kme=qa(),Dy=ho(),zI=yv(),B0=Dr(),Ug=B0.strTranslate,Ime=Ao().extendFlat,mV=Ag(),Ng=So(),yV=ka(),Syt=Eb(),Myt=ru(),Eyt=pv().flipScale,kyt=r4(),Cyt=lI(),Lyt=Rd(),_V=$h(),Cme=_V.LINE_SPACING,Lme=_V.FROM_TL,Pme=_V.FROM_BR,gf=Eme().cn;function Pyt(e){var t=e._fullLayout,r=t._infolayer.selectAll("g."+gf.colorbar).data(Iyt(e),function(n){return n._id});r.enter().append("g").attr("class",function(n){return n._id}).classed(gf.colorbar,!0),r.each(function(n){var i=w_.select(this);B0.ensureSingle(i,"rect",gf.cbbg),B0.ensureSingle(i,"g",gf.cbfills),B0.ensureSingle(i,"g",gf.cblines),B0.ensureSingle(i,"g",gf.cbaxis,function(o){o.classed(gf.crisp,!0)}),B0.ensureSingle(i,"g",gf.cbtitleunshift,function(o){o.append("g").classed(gf.cbtitle,!0)}),B0.ensureSingle(i,"rect",gf.cboutline);var a=Ryt(i,n,e);a&&a.then&&(e._promises||[]).push(a),e._context.edits.colorbarPosition&&Dyt(i,n,e)}),r.exit().each(function(n){OI.autoMargin(e,n._id)}).remove(),r.order()}function Iyt(e){var t=e._fullLayout,r=e.calcdata,n=[],i,a,o,s;function l(E){return Ime(E,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function u(){typeof s.calc=="function"?s.calc(e,o,i):(i._fillgradient=a.reversescale?Eyt(a.colorscale):a.colorscale,i._zrange=[a[s.min],a[s.max]])}for(var c=0;c1){var Re=Math.pow(10,Math.floor(Math.log(ge)/Math.LN10));Fe*=Re*B0.roundUp(ge/Re,[2,5,10]),(Math.abs(z.start)/z.size+1e-6)%1<2e-6&&(Le.tick0=0)}Le.dtick=Fe}Le.domain=n?[ie+v/S.h,ie+j-v/S.h]:[ie+d/S.w,ie+j-d/S.w],Le.setScale(),e.attr("transform",Ug(Math.round(S.l),Math.round(S.t)));var ce=e.select("."+gf.cbtitleunshift).attr("transform",Ug(-Math.round(S.l),-Math.round(S.t))),Ze=Le.ticklabelposition,ut=Le.title.font.size,pt=e.select("."+gf.cbaxis),Zt,st=0,lt=0;function Gt(cr,$e){var St={propContainer:Le,propName:t._propPrefix+"title.text",traceIndex:t._traceIndex,_meta:t._meta,placeholder:E._dfltTitle.colorbar,containerGroup:e.select("."+gf.cbtitle)},Qt=cr.charAt(0)==="h"?cr.substr(1):"h"+cr;e.selectAll("."+Qt+",."+Qt+"-math-group").remove(),Syt.draw(r,cr,Ime(St,$e||{}))}function Nt(){if(n&&Ae||!n&&!Ae){var cr,$e;M==="top"&&(cr=d+S.l+re*_,$e=v+S.t+oe*(1-ie-j)+3+ut*.75),M==="bottom"&&(cr=d+S.l+re*_,$e=v+S.t+oe*(1-ie)-3-ut*.25),M==="right"&&($e=v+S.t+oe*b+3+ut*.75,cr=d+S.l+re*ie),Gt(Le._id+"title",{attributes:{x:cr,y:$e,"text-anchor":n?"start":"middle"}})}}function Jt(){if(n&&!Ae||!n&&Ae){var cr=Le.position||0,$e=Le._offset+Le._length/2,St,Qt;if(M==="right")Qt=$e,St=S.l+re*cr+10+ut*(Le.showticklabels?1:.5);else if(St=$e,M==="bottom"&&(Qt=S.t+oe*cr+10+(Ze.indexOf("inside")===-1?Le.tickfont.size:0)+(Le.ticks!=="inside"&&t.ticklen||0)),M==="top"){var Vt=C.text.split("
").length;Qt=S.t+oe*cr+10-Z-Cme*ut*Vt}Gt((n?"h":"v")+Le._id+"title",{avoid:{selection:w_.select(r).selectAll("g."+Le._id+"tick"),side:M,offsetTop:n?0:S.t,offsetLeft:n?S.l:0,maxShift:n?E.width:E.height},attributes:{x:St,y:Qt,"text-anchor":"middle"},transform:{rotate:n?-90:0,offset:0}})}}function sr(){if(!n&&!Ae||n&&Ae){var cr=e.select("."+gf.cbtitle),$e=cr.select("text"),St=[-l/2,l/2],Qt=cr.select(".h"+Le._id+"title-math-group").node(),Vt=15.6;$e.node()&&(Vt=parseInt($e.node().style.fontSize,10)*Cme);var _t;if(Qt?(_t=Ng.bBox(Qt),lt=_t.width,st=_t.height,st>Vt&&(St[1]-=(st-Vt)/2)):$e.node()&&!$e.classed(gf.jsPlaceholder)&&(_t=Ng.bBox($e.node()),lt=_t.width,st=_t.height),n){if(st){if(st+=5,M==="top")Le.domain[1]-=st/S.h,St[1]*=-1;else{Le.domain[0]+=st/S.h;var It=Myt.lineCount($e);St[1]+=(1-It)*Vt}cr.attr("transform",Ug(St[0],St[1])),Le.setScale()}}else lt&&(M==="right"&&(Le.domain[0]+=(lt+ut/2)/S.w),cr.attr("transform",Ug(St[0],St[1])),Le.setScale())}e.selectAll("."+gf.cbfills+",."+gf.cblines).attr("transform",n?Ug(0,Math.round(S.h*(1-Le.domain[1]))):Ug(Math.round(S.w*Le.domain[0]),0)),pt.attr("transform",n?Ug(0,Math.round(-S.t)):Ug(Math.round(-S.l),0));var mt=e.select("."+gf.cbfills).selectAll("rect."+gf.cbfill).attr("style","").data(V);mt.enter().append("rect").classed(gf.cbfill,!0).attr("style",""),mt.exit().remove();var er=g.map(Le.c2p).map(Math.round).sort(function(Br,Vr){return Br-Vr});mt.each(function(Br,Vr){var dt=[Vr===0?g[0]:(V[Vr]+V[Vr-1])/2,Vr===V.length-1?g[1]:(V[Vr]+V[Vr+1])/2].map(Le.c2p).map(Math.round);n&&(dt[1]=B0.constrain(dt[1]+(dt[1]>dt[0])?1:-1,er[0],er[1]));var Ge=w_.select(this).attr(n?"x":"y",_e).attr(n?"y":"x",w_.min(dt)).attr(n?"width":"height",Math.max(Z,2)).attr(n?"height":"width",Math.max(w_.max(dt)-w_.min(dt),2));if(t._fillgradient)Ng.gradient(Ge,r,t._id,n?"vertical":"horizontalreversed",t._fillgradient,"fill");else{var Je=T(Br).replace("e-","");Ge.attr("fill",gV(Je).toHexString())}});var lr=e.select("."+gf.cblines).selectAll("path."+gf.cbline).data(x.color&&x.width?G:[]);lr.enter().append("path").classed(gf.cbline,!0),lr.exit().remove(),lr.each(function(Br){var Vr=_e,dt=Math.round(Le.c2p(Br))+x.width/2%1;w_.select(this).attr("d","M"+(n?Vr+","+dt:dt+","+Vr)+(n?"h":"v")+Z).call(Ng.lineGroupStyle,x.width,P(Br),x.dash)}),pt.selectAll("g."+Le._id+"tick,path").remove();var Tr=_e+Z+(l||0)/2-(t.ticks==="outside"?1:0),Lr=Dy.calcTicks(Le),ti=Dy.getTickSigns(Le)[2];return Dy.drawTicks(r,Le,{vals:Le.ticks==="inside"?Dy.clipEnds(Le,Lr):Lr,layer:pt,path:Dy.makeTickPath(Le,Tr,ti),transFn:Dy.makeTransTickFn(Le)}),Dy.drawLabels(r,Le,{vals:Lr,layer:pt,transFn:Dy.makeTransTickLabelFn(Le),labelFns:Dy.makeLabelFns(Le,Tr)})}function wr(){var cr,$e=Z+l/2;Ze.indexOf("inside")===-1&&(cr=Ng.bBox(pt.node()),$e+=n?cr.width:cr.height),Zt=ce.select("text");var St=0,Qt=n&&M==="top",Vt=!n&&M==="right",_t=0;if(Zt.node()&&!Zt.classed(gf.jsPlaceholder)){var It,mt=ce.select(".h"+Le._id+"title-math-group").node();mt&&(n&&Ae||!n&&!Ae)?(cr=Ng.bBox(mt),St=cr.width,It=cr.height):(cr=Ng.bBox(ce.node()),St=cr.right-S.l-(n?_e:Se),It=cr.bottom-S.t-(n?Se:_e),!n&&M==="top"&&($e+=cr.height,_t=cr.height)),Vt&&(Zt.attr("transform",Ug(St/2+ut/2,0)),St*=2),$e=Math.max($e,n?St:It)}var er=(n?d:v)*2+$e+u+l/2,lr=0;!n&&C.text&&h==="bottom"&&b<=0&&(lr=er/2,er+=lr,_t+=lr),E._hColorbarMoveTitle=lr,E._hColorbarMoveCBTitle=_t;var Tr=u+l,Lr=(n?_e:Se)-Tr/2-(n?d:0),ti=(n?Se:_e)-(n?N:v+_t-lr);e.select("."+gf.cbbg).attr("x",Lr).attr("y",ti).attr(n?"width":"height",Math.max(er-lr,2)).attr(n?"height":"width",Math.max(N+Tr,2)).call(yV.fill,c).call(yV.stroke,t.bordercolor).style("stroke-width",u);var Br=Vt?Math.max(St-10,0):0;e.selectAll("."+gf.cboutline).attr("x",(n?_e:Se+d)+Br).attr("y",(n?Se+v-N:_e)+(Qt?st:0)).attr(n?"width":"height",Math.max(Z,2)).attr(n?"height":"width",Math.max(N-(n?2*v+st:2*d+Br),2)).call(yV.stroke,t.outlinecolor).style({fill:"none","stroke-width":l});var Vr=n?Ee*er:0,dt=n?0:(1-Ce)*er-_t;if(Vr=k?S.l-Vr:-Vr,dt=p?S.t-dt:-dt,e.attr("transform",Ug(Vr,dt)),!n&&(u||gV(c).getAlpha()&&!gV.equals(E.paper_bgcolor,c))){var Ge=pt.selectAll("text"),Je=Ge[0].length,je=e.select("."+gf.cbbg).node(),tt=Ng.bBox(je),xt=Ng.getTranslate(e),Ie=2;Ge.each(function(di,ji){var In=0,wi=Je-1;if(ji===In||ji===wi){var On=Ng.bBox(this),qn=Ng.getTranslate(this),Fn;if(ji===wi){var ra=On.right+qn.x,la=tt.right+xt.x+Se-u-Ie+_;Fn=la-ra,Fn>0&&(Fn=0)}else if(ji===In){var Ut=On.left+qn.x,wt=tt.left+xt.x+Se+u+Ie;Fn=wt-Ut,Fn<0&&(Fn=0)}Fn&&(Je<3?this.setAttribute("transform","translate("+Fn+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var xe={},ke=Lme[f],vt=Pme[f],ir=Lme[h],ar=Pme[h],vr=er-Z;n?(a==="pixels"?(xe.y=b,xe.t=N*ir,xe.b=N*ar):(xe.t=xe.b=0,xe.yt=b+i*ir,xe.yb=b-i*ar),s==="pixels"?(xe.x=_,xe.l=er*ke,xe.r=er*vt):(xe.l=vr*ke,xe.r=vr*vt,xe.xl=_-o*ke,xe.xr=_+o*vt)):(a==="pixels"?(xe.x=_,xe.l=N*ke,xe.r=N*vt):(xe.l=xe.r=0,xe.xl=_+i*ke,xe.xr=_-i*vt),s==="pixels"?(xe.y=1-b,xe.t=er*ir,xe.b=er*ar):(xe.t=vr*ir,xe.b=vr*ar,xe.yt=b-o*ir,xe.yb=b+o*ar));var ii=t.y<.5?"b":"t",pi=t.x<.5?"l":"r";r._fullLayout._reservedMargin[t._id]={};var $r={r:E.width-Lr-Vr,l:Lr+xe.r,b:E.height-ti-dt,t:ti+xe.b};k&&p?OI.autoMargin(r,t._id,xe):k?r._fullLayout._reservedMargin[t._id][ii]=$r[ii]:p||n?r._fullLayout._reservedMargin[t._id][pi]=$r[pi]:r._fullLayout._reservedMargin[t._id][ii]=$r[ii]}return B0.syncOrAsync([OI.previousPromises,Nt,sr,Jt,OI.previousPromises,wr],r)}function Dyt(e,t,r){var n=t.orientation==="v",i=r._fullLayout,a=i._size,o,s,l;zI.init({element:e.node(),gd:r,prepFn:function(){o=e.attr("transform"),mV(e)},moveFn:function(u,c){e.attr("transform",o+Ug(u,c)),s=zI.align((n?t._uFrac:t._vFrac)+u/a.w,n?t._thickFrac:t._lenFrac,0,1,t.xanchor),l=zI.align((n?t._vFrac:1-t._uFrac)-c/a.h,n?t._lenFrac:t._thickFrac,0,1,t.yanchor);var f=zI.getCursor(s,l,t.xanchor,t.yanchor);mV(e,f)},doneFn:function(){if(mV(e),s!==void 0&&l!==void 0){var u={};u[t._propPrefix+"x"]=s,u[t._propPrefix+"y"]=l,t._traceIndex!==void 0?kme.call("_guiRestyle",r,u,t._traceIndex):kme.call("_guiRelayout",r,u)}}})}function Fyt(e,t,r){var n=t._levels,i=[],a=[],o,s,l=n.end+n.size/100,u=n.size,c=1.001*r[0]-.001*r[1],f=1.001*r[1]-.001*r[0];for(s=0;s<1e5&&(o=n.start+s*u,!(u>0?o>=l:o<=l));s++)o>c&&o0?o>=l:o<=l));s++)o>r[0]&&o{"use strict";Fme.exports={moduleType:"component",name:"colorbar",attributes:tL(),supplyDefaults:Lq(),draw:Dme().draw,hasColorbar:Tq()}});var qme=ye((Rlr,Ome)=>{"use strict";Ome.exports={moduleType:"component",name:"legend",layoutAttributes:AB(),supplyLayoutDefaults:EB(),draw:BB(),style:FB()}});var Nme=ye((Dlr,Bme)=>{"use strict";Bme.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var Vme=ye((Flr,Ume)=>{"use strict";Ume.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var bV=ye((zlr,Wme)=>{"use strict";var Oyt=qa(),jme=Dr(),xV=jme.extendFlat,Gme=jme.extendDeep;function Hme(e){var t;switch(e){case"themes__thumb":t={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":t={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:t={}}return t}function qyt(e){var t=["xaxis","yaxis","zaxis"];return t.indexOf(e.slice(0,5))>-1}Wme.exports=function(t,r){var n,i=t.data,a=t.layout,o=Gme([],i),s=Gme({},a,Hme(r.tileClass)),l=t._context||{};if(r.width&&(s.width=r.width),r.height&&(s.height=r.height),r.tileClass==="thumbnail"||r.tileClass==="themes__thumb"){s.annotations=[];var u=Object.keys(s);for(n=0;n{"use strict";var Byt=pb().EventEmitter,Nyt=qa(),Uyt=Dr(),Xme=Py(),Vyt=bV(),Gyt=HP(),Hyt=jP();function jyt(e,t){var r=new Byt,n=Vyt(e,{format:"png"}),i=n.gd;i.style.position="absolute",i.style.left="-5000px",document.body.appendChild(i);function a(){var s=Xme.getDelay(i._fullLayout);setTimeout(function(){var l=Gyt(i),u=document.createElement("canvas");u.id=Uyt.randstr(),r=Hyt({format:t.format,width:i._fullLayout.width,height:i._fullLayout.height,canvas:u,emitter:r,svg:l}),r.clean=function(){i&&document.body.removeChild(i)}},s)}var o=Xme.getRedrawFunc(i);return Nyt.call("_doPlot",i,n.data,n.layout,n.config).then(o).then(a).catch(function(s){r.emit("error",s)}),r}Zme.exports=jyt});var $me=ye((qlr,Jme)=>{"use strict";var Kme=Py(),Wyt={getDelay:Kme.getDelay,getRedrawFunc:Kme.getRedrawFunc,clone:bV(),toSVG:HP(),svgToImg:jP(),toImage:Yme(),downloadImage:rU()};Jme.exports=Wyt});var eye=ye(Fy=>{"use strict";Fy.version=l6().version;dee();tne();var Xyt=qa(),v4=Fy.register=Xyt.register,TV=wde(),Qme=Object.keys(TV);for(qI=0;qI{"use strict";tye.exports=eye()});var e2=ye((Ulr,iye)=>{"use strict";iye.exports={TEXTPAD:3,eventDataKeys:["value","label"]}});var Lm=ye((Vlr,lye)=>{"use strict";var qf=pf(),nye=df().axisHoverFormat,{hovertemplateAttrs:Zyt,texttemplateAttrs:Yyt,templatefallbackAttrs:aye}=Ll(),sye=Tu(),Kyt=ec(),oye=e2(),Jyt=Pd().pattern,t2=Ao().extendFlat,AV=Kyt({editType:"calc",arrayOk:!0,colorEditType:"style"}),$yt=qf.marker,Qyt=$yt.line,e1t=t2({},Qyt.width,{dflt:0}),t1t=t2({width:e1t,editType:"calc"},sye("marker.line")),r1t=t2({line:t1t,editType:"calc"},sye("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:Jyt,cornerradius:{valType:"any",editType:"calc"}});lye.exports={x:qf.x,x0:qf.x0,dx:qf.dx,y:qf.y,y0:qf.y0,dy:qf.dy,xperiod:qf.xperiod,yperiod:qf.yperiod,xperiod0:qf.xperiod0,yperiod0:qf.yperiod0,xperiodalignment:qf.xperiodalignment,yperiodalignment:qf.yperiodalignment,xhoverformat:nye("x"),yhoverformat:nye("y"),text:qf.text,texttemplate:Yyt({editType:"plot"},{keys:oye.eventDataKeys}),texttemplatefallback:aye({editType:"plot"}),hovertext:qf.hovertext,hovertemplate:Zyt({},{keys:oye.eventDataKeys}),hovertemplatefallback:aye(),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:t2({},AV,{}),insidetextfont:t2({},AV,{}),outsidetextfont:t2({},AV,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:t2({},qf.cliponaxis,{}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc"},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc"},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc"},marker:r1t,offsetgroup:qf.offsetgroup,alignmentgroup:qf.alignmentgroup,selected:{marker:{opacity:qf.selected.marker.opacity,color:qf.selected.marker.color,editType:"style"},textfont:qf.selected.textfont,editType:"style"},unselected:{marker:{opacity:qf.unselected.marker.opacity,color:qf.unselected.marker.color,editType:"style"},textfont:qf.unselected.textfont,editType:"style"},zorder:qf.zorder}});var NI=ye((Glr,uye)=>{"use strict";uye.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}});var UI=ye((Hlr,hye)=>{"use strict";var i1t=ka(),cye=pv().hasColorscale,fye=Qh(),n1t=Dr().coercePattern;hye.exports=function(t,r,n,i,a){var o=n("marker.color",i),s=cye(t,"marker");s&&fye(t,r,a,n,{prefix:"marker.",cLetter:"c"}),n("marker.line.color",i1t.defaultLine),cye(t,"marker.line")&&fye(t,r,a,n,{prefix:"marker.line.",cLetter:"c"}),n("marker.line.width"),n("marker.opacity"),n1t(n,"marker.pattern",o,s),n("selected.marker.color"),n("unselected.marker.color")}});var r0=ye((jlr,yye)=>{"use strict";var dye=Eo(),TT=Dr(),vye=ka(),a1t=qa(),o1t=Q3(),s1t=Pg(),l1t=UI(),u1t=Hb(),pye=Lm(),VI=TT.coerceFont;function c1t(e,t,r,n){function i(u,c){return TT.coerce(e,t,pye,u,c)}var a=o1t(e,t,n,i);if(!a){t.visible=!1;return}s1t(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder"),i("orientation",t.x&&!t.y?"h":"v"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var o=i("textposition");mye(e,t,n,i,o,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),l1t(e,t,i,r,n);var s=(t.marker.line||{}).color,l=a1t.getComponentMethod("errorbars","supplyDefaults");l(e,t,s||vye.defaultLine,{axis:"y"}),l(e,t,s||vye.defaultLine,{axis:"x",inherit:"y"}),TT.coerceSelectionMarkerOpacity(t,i)}function f1t(e,t){var r,n;function i(s,l){return TT.coerce(n._input,n,pye,s,l)}for(var a=0;a=0)return e}else if(typeof e=="string"&&(e=e.trim(),e.slice(-1)==="%"&&dye(e.slice(0,-1))&&(e=+e.slice(0,-1),e>=0)))return e+"%"}function mye(e,t,r,n,i,a){a=a||{};var o=a.moduleHasSelected!==!1,s=a.moduleHasUnselected!==!1,l=a.moduleHasConstrain!==!1,u=a.moduleHasCliponaxis!==!1,c=a.moduleHasTextangle!==!1,f=a.moduleHasInsideanchor!==!1,h=!!a.hasPathbar,d=Array.isArray(i)||i==="auto",v=d||i==="inside",_=d||i==="outside";if(v||_){var b=VI(n,"textfont",r.font),p=TT.extendFlat({},b),k=e.textfont&&e.textfont.color,E=!k;if(E&&delete p.color,VI(n,"insidetextfont",p),h){var S=TT.extendFlat({},b);E&&delete S.color,VI(n,"pathbar.textfont",S)}_&&VI(n,"outsidetextfont",b),o&&n("selected.textfont.color"),s&&n("unselected.textfont.color"),l&&n("constraintext"),u&&n("cliponaxis"),c&&n("textangle"),n("texttemplate"),n("texttemplatefallback")}v&&f&&n("insidetextanchor")}yye.exports={supplyDefaults:c1t,crossTraceDefaults:f1t,handleText:mye,validateCornerradius:gye}});var SV=ye((Wlr,_ye)=>{"use strict";var h1t=qa(),d1t=ho(),v1t=Dr(),p1t=NI(),g1t=r0().validateCornerradius;_ye.exports=function(e,t,r){function n(_,b){return v1t.coerce(e,t,p1t,_,b)}for(var i=!1,a=!1,o=!1,s={},l=n("barmode"),u=l==="group",c=0;c0&&!s[h]&&(o=!0),s[h]=!0),f.visible&&f.type==="histogram"){var d=d1t.getFromId({_fullLayout:t},f[f.orientation==="v"?"xaxis":"yaxis"]);d.type!=="category"&&(a=!0)}}if(!i){delete t.barmode;return}l!=="overlay"&&n("barnorm"),n("bargap",a&&!o?0:.2),n("bargroupgap");var v=n("barcornerradius");t.barcornerradius=g1t(v)}});var p4=ye((Xlr,xye)=>{"use strict";var AT=Dr();xye.exports=function(t,r){for(var n=0;n{"use strict";var bye=ho(),wye=Rg(),Tye=pv().hasColorscale,Aye=gv(),m1t=p4(),y1t=z0();Sye.exports=function(t,r){var n=bye.getFromId(t,r.xaxis||"x"),i=bye.getFromId(t,r.yaxis||"y"),a,o,s,l,u,c,f={msUTC:!!(r.base||r.base===0)};r.orientation==="h"?(a=n.makeCalcdata(r,"x",f),s=i.makeCalcdata(r,"y"),l=wye(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y",f),s=n.makeCalcdata(r,"x"),l=wye(r,n,"x",s),u=!!r.xperiodalignment,c="x"),o=l.vals;for(var h=Math.min(o.length,a.length),d=new Array(h),v=0;v{"use strict";var _1t=Oa(),x1t=Dr();function b1t(e,t,r){var n=e._fullLayout,i=n["_"+r+"Text_minsize"];if(i){var a=n.uniformtext.mode==="hide",o;switch(r){case"funnelarea":case"pie":case"sunburst":o="g.slice";break;case"treemap":case"icicle":o="g.slice, g.pathbar";break;default:o="g.points > g.point"}t.selectAll(o).each(function(s){var l=s.transform;if(l){l.scale=a&&l.hide?0:i/l.fontSize;var u=_1t.select(this).select("text");x1t.setTransormAndDisplay(u,l)}})}}function w1t(e,t,r){if(r.uniformtext.mode){var n=Eye(e),i=r.uniformtext.minsize,a=t.scale*t.fontSize;t.hide=a{"use strict";var A1t=Eo(),S1t=cd(),Cye=Dr().isArrayOrTypedArray;r2.coerceString=function(e,t,r){if(typeof t=="string"){if(t||!e.noBlank)return t}else if((typeof t=="number"||t===!0)&&!e.strict)return String(t);return r!==void 0?r:e.dflt};r2.coerceNumber=function(e,t,r){if(A1t(t)){t=+t;var n=e.min,i=e.max,a=n!==void 0&&ti;if(!a)return t}return r!==void 0?r:e.dflt};r2.coerceColor=function(e,t,r){return S1t(t).isValid()?t:r!==void 0?r:e.dflt};r2.coerceEnumerated=function(e,t,r){return e.coerceNumber&&(t=+t),e.values.indexOf(t)!==-1?t:r!==void 0?r:e.dflt};r2.getValue=function(e,t){var r;return Cye(e)?t{"use strict";var g4=Oa(),M1t=ka(),m4=So(),Lye=Dr(),Pye=qa(),Iye=bv().resizeText,MV=Lm(),E1t=MV.textfont,k1t=MV.insidetextfont,C1t=MV.outsidetextfont,Qd=GI();function L1t(e){var t=g4.select(e).selectAll('g[class^="barlayer"]').selectAll("g.trace");Iye(e,t,"bar");var r=t.size(),n=e._fullLayout;t.style("opacity",function(i){return i[0].trace.opacity}).each(function(i){(n.barmode==="stack"&&r>1||n.bargap===0&&n.bargroupgap===0&&!i[0].trace.marker.line.width)&&g4.select(this).attr("shape-rendering","crispEdges")}),t.selectAll("g.points").each(function(i){var a=g4.select(this),o=i[0].trace;Rye(a,o,e)}),Pye.getComponentMethod("errorbars","style")(t)}function Rye(e,t,r){m4.pointStyle(e.selectAll("path"),t,r),Dye(e,t,r)}function Dye(e,t,r){e.selectAll("text").each(function(n){var i=g4.select(this),a=Lye.ensureUniformFontSize(r,Fye(i,n,t,r));m4.font(i,a)})}function P1t(e,t,r){var n=t[0].trace;n.selectedpoints?I1t(r,n,e):(Rye(r,n,e),Pye.getComponentMethod("errorbars","style")(r))}function I1t(e,t,r){m4.selectedPointStyle(e.selectAll("path"),t),R1t(e.selectAll("text"),t,r)}function R1t(e,t,r){e.each(function(n){var i=g4.select(this),a;if(n.selected){a=Lye.ensureUniformFontSize(r,Fye(i,n,t,r));var o=t.selected.textfont&&t.selected.textfont.color;o&&(a.color=o),m4.font(i,a)}else m4.selectedTextStyle(i,t)})}function Fye(e,t,r,n){var i=n._fullLayout.font,a=r.textfont;if(e.classed("bartext-inside")){var o=Bye(t,r);a=Oye(r,t.i,i,o)}else e.classed("bartext-outside")&&(a=qye(r,t.i,i));return a}function zye(e,t,r){return EV(E1t,e.textfont,t,r)}function Oye(e,t,r,n){var i=zye(e,t,r),a=e._input.textfont===void 0||e._input.textfont.color===void 0||Array.isArray(e.textfont.color)&&e.textfont.color[t]===void 0;return a&&(i={color:M1t.contrast(n),family:i.family,size:i.size,weight:i.weight,style:i.style,variant:i.variant,textcase:i.textcase,lineposition:i.lineposition,shadow:i.shadow}),EV(k1t,e.insidetextfont,t,i)}function qye(e,t,r){var n=zye(e,t,r);return EV(C1t,e.outsidetextfont,t,n)}function EV(e,t,r,n){t=t||{};var i=Qd.getValue(t.family,r),a=Qd.getValue(t.size,r),o=Qd.getValue(t.color,r),s=Qd.getValue(t.weight,r),l=Qd.getValue(t.style,r),u=Qd.getValue(t.variant,r),c=Qd.getValue(t.textcase,r),f=Qd.getValue(t.lineposition,r),h=Qd.getValue(t.shadow,r);return{family:Qd.coerceString(e.family,i,n.family),size:Qd.coerceNumber(e.size,a,n.size),color:Qd.coerceColor(e.color,o,n.color),weight:Qd.coerceString(e.weight,s,n.weight),style:Qd.coerceString(e.style,l,n.style),variant:Qd.coerceString(e.variant,u,n.variant),textcase:Qd.coerceString(e.variant,c,n.textcase),lineposition:Qd.coerceString(e.variant,f,n.lineposition),shadow:Qd.coerceString(e.variant,h,n.shadow)}}function Bye(e,t){return t.type==="waterfall"?t[e.dir].marker.color:e.mcc||e.mc||t.marker.color}Nye.exports={style:L1t,styleTextPoints:Dye,styleOnSelect:P1t,getInsideTextFont:Oye,getOutsideTextFont:qye,getBarColor:Bye,resizeText:Iye}});var n2=ye(($lr,Zye)=>{"use strict";var HI=Oa(),jI=Eo(),Fd=Dr(),D1t=ru(),F1t=ka(),T_=So(),z1t=qa(),WI=ho().tickText,Uye=bv(),O1t=Uye.recordMinTextSize,q1t=Uye.clearMinTextSize,kV=N0(),ST=GI(),B1t=e2(),Vye=Lm(),N1t=Vye.text,U1t=Vye.textposition,V1t=ip().appendArrayPointValue,Gv=B1t.TEXTPAD;function G1t(e){return e.id}function H1t(e){if(e.ids)return G1t}function CV(e){return(e>0)-(e<0)}function Pm(e,t){return e0}function W1t(e,t,r,n,i,a){var o=t.xaxis,s=t.yaxis,l=e._fullLayout,u=e._context.staticPlot;i||(i={mode:l.barmode,norm:l.barmode,gap:l.bargap,groupgap:l.bargroupgap},q1t("bar",l));var c=Fd.makeTraceGroups(n,r,"trace bars").each(function(f){var h=HI.select(this),d=f[0].trace,v=f[0].t,_=d.type==="waterfall",b=d.type==="funnel",p=d.type==="histogram",k=d.type==="bar",E=k||b,S=0;_&&d.connector.visible&&d.connector.mode==="between"&&(S=d.connector.line.width/2);var L=d.orientation==="h",x=Hye(i),C=Fd.ensureSingle(h,"g","points"),M=H1t(d),g=C.selectAll("g.point").data(Fd.identity,M);g.enter().append("g").classed("point",!0),g.exit().remove(),g.each(function(T,z){var O=HI.select(this),V=j1t(T,o,s,L),G=V[0][0],Z=V[0][1],H=V[1][0],N=V[1][1],j=(L?Z-G:N-H)===0;j&&E&&ST.getLineWidth(d,T)&&(j=!1),j||(j=!jI(G)||!jI(Z)||!jI(H)||!jI(N)),T.isBlank=j,j&&(L?Z=G:N=H),S&&!j&&(L?(G-=Pm(G,Z)*S,Z+=Pm(G,Z)*S):(H-=Pm(H,N)*S,N+=Pm(H,N)*S));var re,oe;if(d.type==="waterfall"){if(!j){var _e=d[T.dir].marker;re=_e.line.width,oe=_e.color}}else re=ST.getLineWidth(d,T),oe=T.mc||d.marker.color;function Ee($e){var St=HI.round(re/2%1,2);return i.gap===0&&i.groupgap===0?HI.round(Math.round($e)-St,2):$e}function Ce($e,St,Qt){return Qt&&$e===St?$e:Math.abs($e-St)>=2?Ee($e):$e>St?Math.ceil($e):Math.floor($e)}var me=F1t.opacity(oe),ie=me<1||re>.01?Ee:Ce;e._context.staticPlot||(G=ie(G,Z,L),Z=ie(Z,G,L),H=ie(H,N,!L),N=ie(N,H,!L));var Se=L?o.c2p:s.c2p,Le;T.s0>0?Le=T._sMax:T.s0<0?Le=T._sMin:Le=T.s1>0?T._sMax:T._sMin;function Ae($e,St){if(!$e)return 0;var Qt=Math.abs(L?N-H:Z-G),Vt=Math.abs(L?Z-G:N-H),_t=ie(Math.abs(Se(Le,!0)-Se(0,!0))),It=T.hasB?Math.min(Qt/2,Vt/2):Math.min(Qt/2,_t),mt;if(St==="%"){var er=Math.min(50,$e);mt=Qt*(er/100)}else mt=$e;return ie(Math.max(Math.min(mt,It),0))}var Fe=k||p?Ae(v.cornerradiusvalue,v.cornerradiusform):0,Pe,ge,Re="M"+G+","+H+"V"+N+"H"+Z+"V"+H+"Z",ce=0;if(Fe&&T.s){var Ze=CV(T.s0)===0||CV(T.s)===CV(T.s0)?T.s1:T.s0;if(ce=ie(T.hasB?0:Math.abs(Se(Le,!0)-Se(Ze,!0))),ce0?Math.sqrt(ce*(2*Fe-ce)):0,Gt=ut>0?Math.max:Math.min;Pe="M"+G+","+H+"V"+(N-st*pt)+"H"+Gt(Z-(Fe-ce)*ut,G)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+Z+","+(N-Fe*pt-lt)+"V"+(H+Fe*pt+lt)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+Gt(Z-(Fe-ce)*ut,G)+","+(H+st*pt)+"Z"}else if(T.hasB)Pe="M"+(G+Fe*ut)+","+H+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+G+","+(H+Fe*pt)+"V"+(N-Fe*pt)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+(G+Fe*ut)+","+N+"H"+(Z-Fe*ut)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+Z+","+(N-Fe*pt)+"V"+(H+Fe*pt)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+(Z-Fe*ut)+","+H+"Z";else{ge=Math.abs(N-H)+ce;var Nt=ge0?Math.sqrt(ce*(2*Fe-ce)):0,sr=pt>0?Math.max:Math.min;Pe="M"+(G+Nt*ut)+","+H+"V"+sr(N-(Fe-ce)*pt,H)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+(G+Fe*ut-Jt)+","+N+"H"+(Z-Fe*ut+Jt)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+(Z-Nt*ut)+","+sr(N-(Fe-ce)*pt,H)+"V"+H+"Z"}}else Pe=Re}else Pe=Re;var wr=Gye(Fd.ensureSingle(O,"path"),l,i,a);if(wr.style("vector-effect",u?"none":"non-scaling-stroke").attr("d",isNaN((Z-G)*(N-H))||j&&e._context.staticPlot?"M0,0Z":Pe).call(T_.setClipUrl,t.layerClipId,e),!l.uniformtext.mode&&x){var cr=T_.makePointStyleFns(d);T_.singlePointStyle(T,wr,d,cr,e)}X1t(e,t,O,f,z,G,Z,H,N,Fe,ce,i,a),t.layerClipId&&T_.hideOutsideRangePoint(T,O.select("text"),o,s,d.xcalendar,d.ycalendar)});var P=d.cliponaxis===!1;T_.setClipUrl(h,P?null:t.layerClipId,e)});z1t.getComponentMethod("errorbars","plot")(e,c,t,i)}function X1t(e,t,r,n,i,a,o,s,l,u,c,f,h){var d=t.xaxis,v=t.yaxis,_=e._fullLayout,b;function p(ge,Re,ce){var Ze=Fd.ensureSingle(ge,"text").text(Re).attr({class:"bartext bartext-"+b,"text-anchor":"middle","data-notex":1}).call(T_.font,ce).call(D1t.convertToTspans,e);return Ze}var k=n[0].trace,E=k.orientation==="h",S=K1t(_,n,i,d,v);b=J1t(k,i);var L=f.mode==="stack"||f.mode==="relative",x=n[i],C=!L||x._outmost,M=x.hasB,g=u&&u-c>Gv;if(!S||b==="none"||(x.isBlank||a===o||s===l)&&(b==="auto"||b==="inside")){r.select("text").remove();return}var P=_.font,T=kV.getBarColor(n[i],k),z=kV.getInsideTextFont(k,i,P,T),O=kV.getOutsideTextFont(k,i,P),V=k.insidetextanchor||"end",G=r.datum();E?d.type==="log"&&G.s0<=0&&(d.range[0]0&&Ee>0,ie;g?M?ie=i2(N-2*u,j,_e,Ee,E)||i2(N,j-2*u,_e,Ee,E):E?ie=i2(N-(u-c),j,_e,Ee,E)||i2(N,j-2*(u-c),_e,Ee,E):ie=i2(N,j-(u-c),_e,Ee,E)||i2(N-2*(u-c),j,_e,Ee,E):ie=i2(N,j,_e,Ee,E),me&&ie?b="inside":(b="outside",re.remove(),re=null)}else b="inside";if(!re){Ce=Fd.ensureUniformFontSize(e,b==="outside"?O:z),re=p(r,S,Ce);var Se=re.attr("transform");if(re.attr("transform",""),oe=T_.bBox(re.node()),_e=oe.width,Ee=oe.height,re.attr("transform",Se),_e<=0||Ee<=0){re.remove();return}}var Le=k.textangle,Ae,Fe;b==="outside"?(Fe=k.constraintext==="both"||k.constraintext==="outside",Ae=Y1t(a,o,s,l,oe,{isHorizontal:E,constrained:Fe,angle:Le})):(Fe=k.constraintext==="both"||k.constraintext==="inside",Ae=Xye(a,o,s,l,oe,{isHorizontal:E,constrained:Fe,angle:Le,anchor:V,hasB:M,r:u,overhead:c})),Ae.fontSize=Ce.size,O1t(k.type==="histogram"?"bar":k.type,Ae,_),x.transform=Ae;var Pe=Gye(re,_,f,h);Fd.setTransormAndDisplay(Pe,Ae)}function i2(e,t,r,n,i){if(e<0||t<0)return!1;var a=r<=e&&n<=t,o=r<=t&&n<=e,s=i?e>=r*(t/n):t>=n*(e/r);return a||o||s}function jye(e){return e==="auto"?0:e}function Wye(e,t){var r=Math.PI/180*t,n=Math.abs(Math.sin(r)),i=Math.abs(Math.cos(r));return{x:e.width*i+e.height*n,y:e.width*n+e.height*i}}function Xye(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,u=a.anchor,c=u==="end",f=u==="start",h=a.leftToRight||0,d=(h+1)/2,v=1-d,_=a.hasB,b=a.r,p=a.overhead,k=i.width,E=i.height,S=Math.abs(t-e),L=Math.abs(n-r),x=S>2*Gv&&L>2*Gv?Gv:0;S-=2*x,L-=2*x;var C=jye(l);l==="auto"&&!(k<=S&&E<=L)&&(k>S||E>L)&&(!(k>L||E>S)||kGv){var T=Z1t(e,t,r,n,M,b,p,o,_);g=T.scale,P=T.pad}else g=1,s&&(g=Math.min(1,S/M.x,L/M.y)),P=0;var z=i.left*v+i.right*d,O=(i.top+i.bottom)/2,V=(e+Gv)*v+(t-Gv)*d,G=(r+n)/2,Z=0,H=0;if(f||c){var N=(o?M.x:M.y)/2;b&&(c||_)&&(x+=P);var j=o?Pm(e,t):Pm(r,n);o?f?(V=e+j*x,Z=-j*N):(V=t-j*x,Z=j*N):f?(G=r+j*x,H=-j*N):(G=n-j*x,H=j*N)}return{textX:z,textY:O,targetX:V,targetY:G,anchorX:Z,anchorY:H,scale:g,rotate:C}}function Z1t(e,t,r,n,i,a,o,s,l){var u=Math.max(0,Math.abs(t-e)-2*Gv),c=Math.max(0,Math.abs(n-r)-2*Gv),f=a-Gv,h=o?f-Math.sqrt(f*f-(f-o)*(f-o)):f,d=l?f*2:s?f-o:2*h,v=l?f*2:s?2*h:f-o,_,b,p,k,E;return i.y/i.x>=c/(u-d)?k=c/i.y:i.y/i.x<=(c-v)/u?k=u/i.x:!l&&s?(_=i.x*i.x+i.y*i.y/4,b=-2*i.x*(u-f)-i.y*(c/2-f),p=(u-f)*(u-f)+(c/2-f)*(c/2-f)-f*f,k=(-b+Math.sqrt(b*b-4*_*p))/(2*_)):l?(_=(i.x*i.x+i.y*i.y)/4,b=-i.x*(u/2-f)-i.y*(c/2-f),p=(u/2-f)*(u/2-f)+(c/2-f)*(c/2-f)-f*f,k=(-b+Math.sqrt(b*b-4*_*p))/(2*_)):(_=i.x*i.x/4+i.y*i.y,b=-i.x*(u/2-f)-2*i.y*(c-f),p=(u/2-f)*(u/2-f)+(c-f)*(c-f)-f*f,k=(-b+Math.sqrt(b*b-4*_*p))/(2*_)),k=Math.min(1,k),s?E=Math.max(0,f-Math.sqrt(Math.max(0,f*f-(f-(c-i.y*k)/2)*(f-(c-i.y*k)/2)))-o):E=Math.max(0,f-Math.sqrt(Math.max(0,f*f-(f-(u-i.x*k)/2)*(f-(u-i.x*k)/2)))-o),{scale:k,pad:E}}function Y1t(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,u=i.width,c=i.height,f=Math.abs(t-e),h=Math.abs(n-r),d;o?d=h>2*Gv?Gv:0:d=f>2*Gv?Gv:0;var v=1;s&&(v=o?Math.min(1,h/c):Math.min(1,f/u));var _=jye(l),b=Wye(i,_),p=(o?b.x:b.y)/2,k=(i.left+i.right)/2,E=(i.top+i.bottom)/2,S=(e+t)/2,L=(r+n)/2,x=0,C=0,M=o?Pm(t,e):Pm(r,n);return o?(S=t-M*d,x=M*p):(L=n+M*d,C=-M*p),{textX:k,textY:E,targetX:S,targetY:L,anchorX:x,anchorY:C,scale:v,rotate:_}}function K1t(e,t,r,n,i){var a=t[0].trace,o=a.texttemplate,s;return o?s=$1t(e,t,r,n,i):a.textinfo?s=Q1t(t,r,n,i):s=ST.getValue(a.text,r),ST.coerceString(N1t,s)}function J1t(e,t){var r=ST.getValue(e.textposition,t);return ST.coerceEnumerated(U1t,r)}function $1t(e,t,r,n,i){var a=t[0].trace,o=Fd.castOption(a,r,"texttemplate");if(!o)return"";var s=a.type==="histogram",l=a.type==="waterfall",u=a.type==="funnel",c=a.orientation==="h",f,h,d,v;c?(f="y",h=i,d="x",v=n):(f="x",h=n,d="y",v=i);function _(x){return WI(h,h.c2l(x),!0).text}function b(x){return WI(v,v.c2l(x),!0).text}var p=t[r],k={};k.label=p.p,k.labelLabel=k[f+"Label"]=_(p.p);var E=Fd.castOption(a,p.i,"text");(E===0||E)&&(k.text=E),k.value=p.s,k.valueLabel=k[d+"Label"]=b(p.s);var S={};V1t(S,a,p.i),(s||S.x===void 0)&&(S.x=c?k.value:k.label),(s||S.y===void 0)&&(S.y=c?k.label:k.value),(s||S.xLabel===void 0)&&(S.xLabel=c?k.valueLabel:k.labelLabel),(s||S.yLabel===void 0)&&(S.yLabel=c?k.labelLabel:k.valueLabel),l&&(k.delta=+p.rawS||p.s,k.deltaLabel=b(k.delta),k.final=p.v,k.finalLabel=b(k.final),k.initial=k.final-k.delta,k.initialLabel=b(k.initial)),u&&(k.value=p.s,k.valueLabel=b(k.value),k.percentInitial=p.begR,k.percentInitialLabel=Fd.formatPercent(p.begR),k.percentPrevious=p.difR,k.percentPreviousLabel=Fd.formatPercent(p.difR),k.percentTotal=p.sumR,k.percenTotalLabel=Fd.formatPercent(p.sumR));var L=Fd.castOption(a,p.i,"customdata");return L&&(k.customdata=L),Fd.texttemplateString({data:[S,k,a._meta],fallback:a.texttemplatefallback,labels:k,locale:e._d3locale,template:o})}function Q1t(e,t,r,n){var i=e[0].trace,a=i.orientation==="h",o=i.type==="waterfall",s=i.type==="funnel";function l(L){var x=a?n:r;return WI(x,L,!0).text}function u(L){var x=a?r:n;return WI(x,+L,!0).text}var c=i.textinfo,f=e[t],h=c.split("+"),d=[],v,_=function(L){return h.indexOf(L)!==-1};if(_("label")&&d.push(l(e[t].p)),_("text")&&(v=Fd.castOption(i,f.i,"text"),(v===0||v)&&d.push(v)),o){var b=+f.rawS||f.s,p=f.v,k=p-b;_("initial")&&d.push(u(k)),_("delta")&&d.push(u(b)),_("final")&&d.push(u(p))}if(s){_("value")&&d.push(u(f.s));var E=0;_("percent initial")&&E++,_("percent previous")&&E++,_("percent total")&&E++;var S=E>1;_("percent initial")&&(v=Fd.formatPercent(f.begR),S&&(v+=" of initial"),d.push(v)),_("percent previous")&&(v=Fd.formatPercent(f.difR),S&&(v+=" of previous"),d.push(v)),_("percent total")&&(v=Fd.formatPercent(f.sumR),S&&(v+=" of total"),d.push(v))}return d.join("
")}Zye.exports={plot:W1t,toMoveInsideBar:Xye}});var MT=ye((Qlr,$ye)=>{"use strict";var y4=vf(),e_t=qa(),Yye=ka(),t_t=Dr().fillText,r_t=GI().getLineWidth,LV=ho().hoverLabelText,i_t=fs().BADNUM;function n_t(e,t,r,n,i){var a=Kye(e,t,r,n,i);if(a){var o=a.cd,s=o[0].trace,l=o[a.index];return a.color=Jye(s,l),e_t.getComponentMethod("errorbars","hoverInfo")(l,s,a),[a]}}function Kye(e,t,r,n,i){var a=e.cd,o=a[0].trace,s=a[0].t,l=n==="closest",u=o.type==="waterfall",c=e.maxHoverDistance,f=e.maxSpikeDistance,h,d,v,_,b,p,k;o.orientation==="h"?(h=r,d=t,v="y",_="x",b=G,p=z):(h=t,d=r,v="x",_="y",p=G,b=z);var E=o[v+"period"],S=l||E;function L(ie){return C(ie,-1)}function x(ie){return C(ie,1)}function C(ie,Se){var Le=ie.w;return ie[v]+Se*Le/2}function M(ie){return ie[v+"End"]-ie[v+"Start"]}var g=l?L:E?function(ie){return ie.p-M(ie)/2}:function(ie){return Math.min(L(ie),ie.p-s.bardelta/2)},P=l?x:E?function(ie){return ie.p+M(ie)/2}:function(ie){return Math.max(x(ie),ie.p+s.bardelta/2)};function T(ie,Se,Le){return i.finiteRange&&(Le=0),y4.inbox(ie-h,Se-h,Le+Math.min(1,Math.abs(Se-ie)/k)-1)}function z(ie){return T(g(ie),P(ie),c)}function O(ie){return T(L(ie),x(ie),f)}function V(ie){var Se=ie[_];if(u){var Le=Math.abs(ie.rawS)||0;d>0?Se+=Le:d<0&&(Se-=Le)}return Se}function G(ie){var Se=d,Le=ie.b,Ae=V(ie);return y4.inbox(Le-Se,Ae-Se,c+(Ae-Se)/(Ae-Le)-1)}function Z(ie){var Se=d,Le=ie.b,Ae=V(ie);return y4.inbox(Le-Se,Ae-Se,f+(Ae-Se)/(Ae-Le)-1)}var H=e[v+"a"],N=e[_+"a"];k=Math.abs(H.r2c(H.range[1])-H.r2c(H.range[0]));function j(ie){return(b(ie)+p(ie))/2}var re=y4.getDistanceFunction(n,b,p,j);if(y4.getClosest(a,re,e),e.index!==!1&&a[e.index].p!==i_t){S||(g=function(ie){return Math.min(L(ie),ie.p-s.bargroupwidth/2)},P=function(ie){return Math.max(x(ie),ie.p+s.bargroupwidth/2)});var oe=e.index,_e=a[oe],Ee=o.base?_e.b+_e.s:_e.s;e[_+"0"]=e[_+"1"]=N.c2p(_e[_],!0),e[_+"LabelVal"]=Ee;var Ce=s.extents[s.extents.round(_e.p)];e[v+"0"]=H.c2p(l?g(_e):Ce[0],!0),e[v+"1"]=H.c2p(l?P(_e):Ce[1],!0);var me=_e.orig_p!==void 0;return e[v+"LabelVal"]=me?_e.orig_p:_e.p,e.labelLabel=LV(H,e[v+"LabelVal"],o[v+"hoverformat"]),e.valueLabel=LV(N,e[_+"LabelVal"],o[_+"hoverformat"]),e.baseLabel=LV(N,_e.b,o[_+"hoverformat"]),e.spikeDistance=(Z(_e)+O(_e))/2,e[v+"Spike"]=H.c2p(_e.p,!0),t_t(_e,o,e),e.hovertemplate=o.hovertemplate,e}}function Jye(e,t){var r=t.mcc||e.marker.color,n=t.mlcc||e.marker.line.color,i=r_t(e,t);if(Yye.opacity(r))return r;if(Yye.opacity(n)&&i)return n}$ye.exports={hoverPoints:n_t,hoverOnBars:Kye,getTraceColor:Jye}});var e1e=ye((eur,Qye)=>{"use strict";Qye.exports=function(t,r,n){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),n.orientation==="h"?(t.label=t.y,t.value=t.x):(t.label=t.x,t.value=t.y),t}});var ET=ye((tur,t1e)=>{"use strict";t1e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=n[0].trace,s=o.type==="funnel",l=o.orientation==="h",u=[],c;if(r===!1)for(c=0;c{"use strict";r1e.exports={attributes:Lm(),layoutAttributes:NI(),supplyDefaults:r0().supplyDefaults,crossTraceDefaults:r0().crossTraceDefaults,supplyLayoutDefaults:SV(),calc:Mye(),crossTraceCalc:jb().crossTraceCalc,colorbar:$d(),arraysToCalcdata:p4(),plot:n2().plot,style:N0().style,styleOnSelect:N0().styleOnSelect,hoverPoints:MT().hoverPoints,eventData:e1e(),selectPoints:ET(),moduleType:"trace",name:"bar",basePlotModule:ph(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}});var a1e=ye((iur,n1e)=>{"use strict";n1e.exports=i1e()});var _4=ye((nur,u1e)=>{"use strict";var o_t=kg(),U0=pf(),o1e=Lm(),s_t=Lh(),s1e=df().axisHoverFormat,{hovertemplateAttrs:l_t,templatefallbackAttrs:u_t}=Ll(),zy=Ao().extendFlat,kT=U0.marker,l1e=kT.line;u1e.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:U0.xperiod,yperiod:U0.yperiod,xperiod0:U0.xperiod0,yperiod0:U0.yperiod0,xperiodalignment:U0.xperiodalignment,yperiodalignment:U0.yperiodalignment,xhoverformat:s1e("x"),yhoverformat:s1e("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:zy({},kT.symbol,{arrayOk:!1,editType:"plot"}),opacity:zy({},kT.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:zy({},kT.angle,{arrayOk:!1,editType:"calc"}),size:zy({},kT.size,{arrayOk:!1,editType:"calc"}),color:zy({},kT.color,{arrayOk:!1,editType:"style"}),line:{color:zy({},l1e.color,{arrayOk:!1,dflt:s_t.defaultLine,editType:"style"}),width:zy({},l1e.width,{arrayOk:!1,dflt:0,editType:"style"}),outliercolor:{valType:"color",editType:"style"},outlierwidth:{valType:"number",min:0,dflt:1,editType:"style"},editType:"style"},editType:"plot"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:o_t(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},showwhiskers:{valType:"boolean",editType:"calc"},offsetgroup:o1e.offsetgroup,alignmentgroup:o1e.alignmentgroup,selected:{marker:U0.selected.marker,editType:"style"},unselected:{marker:U0.unselected.marker,editType:"style"},text:zy({},U0.text,{}),hovertext:zy({},U0.hovertext,{}),hovertemplate:l_t({}),hovertemplatefallback:u_t(),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"},zorder:U0.zorder}});var x4=ye((aur,c1e)=>{"use strict";c1e.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"}}});var w4=ye((our,v1e)=>{"use strict";var V0=Dr(),c_t=qa(),f_t=ka(),h_t=Pg(),d_t=Hb(),f1e=I3(),b4=_4();function v_t(e,t,r,n){function i(v,_){return V0.coerce(e,t,b4,v,_)}if(h1e(e,t,i,n),t.visible!==!1){h_t(e,t,n,i),i("xhoverformat"),i("yhoverformat");var a=t._hasPreCompStats;a&&(i("lowerfence"),i("upperfence")),i("line.color",(e.marker||{}).color||r),i("line.width"),i("fillcolor",f_t.addOpacity(t.line.color,.5));var o=!1;if(a){var s=i("mean"),l=i("sd");s&&s.length&&(o=!0,l&&l.length&&(o="sd"))}i("whiskerwidth");var u=i("sizemode"),c;u==="quartiles"&&(c=i("boxmean",o)),i("showwhiskers",u==="quartiles"),(u==="sd"||c==="sd")&&i("sdmultiple"),i("width"),i("quartilemethod");var f=!1;if(a){var h=i("notchspan");h&&h.length&&(f=!0)}else V0.validate(e.notchwidth,b4.notchwidth)&&(f=!0);var d=i("notched",f);d&&i("notchwidth"),d1e(e,t,i,{prefix:"box"}),i("zorder")}}function h1e(e,t,r,n){function i(P){var T=0;return P&&P.length&&(T+=1,V0.isArrayOrTypedArray(P[0])&&P[0].length&&(T+=1)),T}function a(P){return V0.validate(e[P],b4[P])}var o=r("y"),s=r("x"),l;if(t.type==="box"){var u=r("q1"),c=r("median"),f=r("q3");t._hasPreCompStats=u&&u.length&&c&&c.length&&f&&f.length,l=Math.min(V0.minRowLength(u),V0.minRowLength(c),V0.minRowLength(f))}var h=i(o),d=i(s),v=h&&V0.minRowLength(o),_=d&&V0.minRowLength(s),b=n.calendar,p={autotypenumbers:n.autotypenumbers},k,E;if(t._hasPreCompStats)switch(String(d)+String(h)){case"00":var S=a("x0")||a("dx"),L=a("y0")||a("dy");L&&!S?k="h":k="v",E=l;break;case"10":k="v",E=Math.min(l,_);break;case"20":k="h",E=Math.min(l,s.length);break;case"01":k="h",E=Math.min(l,v);break;case"02":k="v",E=Math.min(l,o.length);break;case"12":k="v",E=Math.min(l,_,o.length);break;case"21":k="h",E=Math.min(l,s.length,v);break;case"11":E=0;break;case"22":var x=!1,C;for(C=0;C0?(k="v",d>0?E=Math.min(_,v):E=Math.min(v)):d>0?(k="h",E=Math.min(_)):E=0;if(!E){t.visible=!1;return}t._length=E;var M=r("orientation",k);t._hasPreCompStats?M==="v"&&d===0?(r("x0",0),r("dx",1)):M==="h"&&h===0&&(r("y0",0),r("dy",1)):M==="v"&&d===0?r("x0"):M==="h"&&h===0&&r("y0");var g=c_t.getComponentMethod("calendars","handleTraceDefaults");g(e,t,["x","y"],n)}function d1e(e,t,r,n){var i=n.prefix,a=V0.coerce2(e,t,b4,"marker.outliercolor"),o=r("marker.line.outliercolor"),s="outliers";t._hasPreCompStats?s="all":(a||o)&&(s="suspectedoutliers");var l=r(i+"points",s);l?(r("jitter",l==="all"?.3:0),r("pointpos",l==="all"?-1.5:0),r("marker.symbol"),r("marker.opacity"),r("marker.size"),r("marker.angle"),r("marker.color",t.line.color),r("marker.line.color"),r("marker.line.width"),l==="suspectedoutliers"&&(r("marker.line.outliercolor",t.marker.color),r("marker.line.outlierwidth")),r("selected.marker.color"),r("unselected.marker.color"),r("selected.marker.size"),r("unselected.marker.size"),r("text"),r("hovertext")):delete t.marker;var u=r("hoveron");(u==="all"||u.indexOf("points")!==-1)&&(r("hovertemplate"),r("hovertemplatefallback")),V0.coerceSelectionMarkerOpacity(t,r)}function p_t(e,t){var r,n;function i(l){return V0.coerce(n._input,n,b4,l)}for(var a=0;a{"use strict";var g_t=qa(),m_t=Dr(),y_t=x4();function p1e(e,t,r,n,i){for(var a=i+"Layout",o=!1,s=0;s{"use strict";var IV=Eo(),ZI=ho(),x_t=Rg(),gh=Dr(),i0=fs().BADNUM,Oy=gh._;S1e.exports=function(t,r){var n=t._fullLayout,i=ZI.getFromId(t,r.xaxis||"x"),a=ZI.getFromId(t,r.yaxis||"y"),o=[],s=r.type==="violin"?"_numViolins":"_numBoxes",l,u,c,f,h,d,v;r.orientation==="h"?(c=i,f="x",h=a,d="y",v=!!r.yperiodalignment):(c=a,f="y",h=i,d="x",v=!!r.xperiodalignment);var _=b_t(r,d,h,n[s]),b=_[0],p=_[1],k=gh.distinctVals(b,h),E=k.vals,S=k.minDiff/2,L,x,C,M,g,P,T=(r.boxpoints||r.points)==="all"?gh.identity:function(Zt){return Zt.vL.uf};if(r._hasPreCompStats){var z=r[f],O=function(Zt){return c.d2c((r[Zt]||[])[l])},V=1/0,G=-1/0;for(l=0;l=L.q1&&L.q3>=L.med){var H=O("lowerfence");L.lf=H!==i0&&H<=L.q1?H:x1e(L,C,M);var N=O("upperfence");L.uf=N!==i0&&N>=L.q3?N:b1e(L,C,M);var j=O("mean");L.mean=j!==i0?j:M?gh.mean(C,M):(L.q1+L.q3)/2;var re=O("sd");L.sd=j!==i0&&re>=0?re:M?gh.stdev(C,M,L.mean):L.q3-L.q1,L.lo=w1e(L),L.uo=T1e(L);var oe=O("notchspan");oe=oe!==i0&&oe>0?oe:A1e(L,M),L.ln=L.med-oe,L.un=L.med+oe;var _e=L.lf,Ee=L.uf;r.boxpoints&&C.length&&(_e=Math.min(_e,C[0]),Ee=Math.max(Ee,C[M-1])),r.notched&&(_e=Math.min(_e,L.ln),Ee=Math.max(Ee,L.un)),L.min=_e,L.max=Ee}else{gh.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+L.q1,"median = "+L.med,"q3 = "+L.q3].join(` -`));var Ce;L.med!==i0?Ce=L.med:L.q1!==i0?L.q3!==i0?Ce=(L.q1+L.q3)/2:Ce=L.q1:L.q3!==i0?Ce=L.q3:Ce=0,L.med=Ce,L.q1=L.q3=Ce,L.lf=L.uf=Ce,L.mean=L.sd=Ce,L.ln=L.un=Ce,L.min=L.max=Ce}V=Math.min(V,L.min),G=Math.max(G,L.max),L.pts2=x.filter(T),o.push(L)}}r._extremes[c._id]=ZI.findExtremes(c,[V,G],{padded:!0})}else{var me=c.makeCalcdata(r,f),ie=w_t(E,S),Se=E.length,Le=T_t(Se);for(l=0;l=0&&Ae0){if(L={},L.pos=L[d]=E[l],x=L.pts=Le[l].sort(y1e),C=L[f]=x.map(_1e),M=C.length,L.min=C[0],L.max=C[M-1],L.mean=gh.mean(C,M),L.sd=gh.stdev(C,M,L.mean)*r.sdmultiple,L.med=gh.interp(C,.5),M%2&&(Re||ce)){var Ze,ut;Re?(Ze=C.slice(0,M/2),ut=C.slice(M/2+1)):ce&&(Ze=C.slice(0,M/2+1),ut=C.slice(M/2)),L.q1=gh.interp(Ze,.5),L.q3=gh.interp(ut,.5)}else L.q1=gh.interp(C,.25),L.q3=gh.interp(C,.75);L.lf=x1e(L,C,M),L.uf=b1e(L,C,M),L.lo=w1e(L),L.uo=T1e(L);var pt=A1e(L,M);L.ln=L.med-pt,L.un=L.med+pt,Fe=Math.min(Fe,L.ln),Pe=Math.max(Pe,L.un),L.pts2=x.filter(T),o.push(L)}r.notched&&gh.isTypedArray(me)&&(me=Array.from(me)),r._extremes[c._id]=ZI.findExtremes(c,r.notched?me.concat([Fe,Pe]):me,{padded:!0})}return A_t(o,r),o.length>0?(o[0].t={num:n[s],dPos:S,posLetter:d,valLetter:f,labels:{med:Oy(t,"median:"),min:Oy(t,"min:"),q1:Oy(t,"q1:"),q3:Oy(t,"q3:"),max:Oy(t,"max:"),mean:r.boxmean==="sd"||r.sizemode==="sd"?Oy(t,"mean \xB1 \u03C3:").replace("\u03C3",r.sdmultiple===1?"\u03C3":r.sdmultiple+"\u03C3"):Oy(t,"mean:"),lf:Oy(t,"lower fence:"),uf:Oy(t,"upper fence:")}},n[s]++,o):[{t:{empty:!0}}]};function b_t(e,t,r,n){var i=t in e,a=t+"0"in e,o="d"+t in e;if(i||a&&o){var s=r.makeCalcdata(e,t),l=x_t(e,r,t,s).vals;return[l,s]}var u;a?u=e[t+"0"]:"name"in e&&(r.type==="category"||IV(e.name)&&["linear","log"].indexOf(r.type)!==-1||gh.isDateTime(e.name)&&r.type==="date")?u=e.name:u=n;for(var c=r.type==="multicategory"?r.r2c_just_indices(u):r.d2c(u,0,e[t+"calendar"]),f=e._length,h=new Array(f),d=0;d{"use strict";var M1e=ho(),S_t=Dr(),M_t=Nb().getAxisGroup,E1e=["v","h"];function E_t(e,t){for(var r=e.calcdata,n=t.xaxis,i=t.yaxis,a=0;a1,k=1-a[e+"gap"],E=1-a[e+"groupgap"];for(l=0;l0;if(C==="positive"?(N=M*(x?1:.5),oe=re,j=oe=P):C==="negative"?(N=oe=P,j=M*(x?1:.5),_e=re):(N=j=M,oe=_e=re),Le){var Ae=S.pointpos,Fe=S.jitter,Pe=S.marker.size/2,ge=0;Ae+Fe>=0&&(ge=re*(Ae+Fe),ge>N?(Se=!0,me=Pe,Ee=ge):ge>oe&&(me=Pe,Ee=N)),ge<=N&&(Ee=N);var Re=0;Ae-Fe<=0&&(Re=-re*(Ae-Fe),Re>j?(Se=!0,ie=Pe,Ce=Re):Re>_e&&(ie=Pe,Ce=j)),Re<=j&&(Ce=j)}else Ee=N,Ce=j;var ce=new Array(c.length);for(u=0;u{"use strict";var CT=Oa(),a2=Dr(),k_t=So(),L1e=5,C_t=.01;function L_t(e,t,r,n){var i=e._context.staticPlot,a=t.xaxis,o=t.yaxis;a2.makeTraceGroups(n,r,"trace boxes").each(function(s){var l=CT.select(this),u=s[0],c=u.t,f=u.trace;if(c.wdPos=c.bdPos*f.whiskerwidth,f.visible!==!0||c.empty){l.remove();return}var h,d;f.orientation==="h"?(h=o,d=a):(h=a,d=o),P1e(l,{pos:h,val:d},f,c,i),I1e(l,{x:a,y:o},f,c),R1e(l,{pos:h,val:d},f,c)})}function P1e(e,t,r,n,i){var a=r.orientation==="h",o=t.val,s=t.pos,l=!!s.rangebreaks,u=n.bPos,c=n.wdPos||0,f=n.bPosPxOffset||0,h=r.whiskerwidth||0,d=r.showwhiskers!==!1,v=r.notched||!1,_=v?1-2*r.notchwidth:1,b,p;Array.isArray(n.bdPos)?(b=n.bdPos[0],p=n.bdPos[1]):(b=n.bdPos,p=n.bdPos);var k=e.selectAll("path.box").data(r.type!=="violin"||r.box.visible?a2.identity:[]);k.enter().append("path").style("vector-effect",i?"none":"non-scaling-stroke").attr("class","box"),k.exit().remove(),k.each(function(E){if(E.empty)return CT.select(this).attr("d","M0,0Z");var S=s.c2l(E.pos+u,!0),L=s.l2p(S-b)+f,x=s.l2p(S+p)+f,C=l?(L+x)/2:s.l2p(S)+f,M=r.whiskerwidth,g=l?L*M+(1-M)*C:s.l2p(S-c)+f,P=l?x*M+(1-M)*C:s.l2p(S+c)+f,T=s.l2p(S-b*_)+f,z=s.l2p(S+p*_)+f,O=r.sizemode==="sd",V=o.c2p(O?E.mean-E.sd:E.q1,!0),G=O?o.c2p(E.mean+E.sd,!0):o.c2p(E.q3,!0),Z=a2.constrain(O?o.c2p(E.mean,!0):o.c2p(E.med,!0),Math.min(V,G)+1,Math.max(V,G)-1),H=E.lf===void 0||r.boxpoints===!1||O,N=o.c2p(H?E.min:E.lf,!0),j=o.c2p(H?E.max:E.uf,!0),re=o.c2p(E.ln,!0),oe=o.c2p(E.un,!0);a?CT.select(this).attr("d","M"+Z+","+T+"V"+z+"M"+V+","+L+"V"+x+(v?"H"+re+"L"+Z+","+z+"L"+oe+","+x:"")+"H"+G+"V"+L+(v?"H"+oe+"L"+Z+","+T+"L"+re+","+L:"")+"Z"+(d?"M"+V+","+C+"H"+N+"M"+G+","+C+"H"+j+(h===0?"":"M"+N+","+g+"V"+P+"M"+j+","+g+"V"+P):"")):CT.select(this).attr("d","M"+T+","+Z+"H"+z+"M"+L+","+V+"H"+x+(v?"V"+re+"L"+z+","+Z+"L"+x+","+oe:"")+"V"+G+"H"+L+(v?"V"+oe+"L"+T+","+Z+"L"+L+","+re:"")+"Z"+(d?"M"+C+","+V+"V"+N+"M"+C+","+G+"V"+j+(h===0?"":"M"+g+","+N+"H"+P+"M"+g+","+j+"H"+P):""))})}function I1e(e,t,r,n){var i=t.x,a=t.y,o=n.bdPos,s=n.bPos,l=r.boxpoints||r.points;a2.seedPseudoRandom();var u=function(h){return h.forEach(function(d){d.t=n,d.trace=r}),h},c=e.selectAll("g.points").data(l?u:[]);c.enter().append("g").attr("class","points"),c.exit().remove();var f=c.selectAll("path").data(function(h){var d,v=h.pts2,_=Math.max((h.max-h.min)/10,h.q3-h.q1),b=_*1e-9,p=_*C_t,k=[],E=0,S;if(r.jitter){if(_===0)for(E=1,k=new Array(v.length),d=0;dh.lo&&(P.so=!0)}return v});f.enter().append("path").classed("point",!0),f.exit().remove(),f.call(k_t.translatePoints,i,a)}function R1e(e,t,r,n){var i=t.val,a=t.pos,o=!!a.rangebreaks,s=n.bPos,l=n.bPosPxOffset||0,u=r.boxmean||(r.meanline||{}).visible,c,f;Array.isArray(n.bdPos)?(c=n.bdPos[0],f=n.bdPos[1]):(c=n.bdPos,f=n.bdPos);var h=e.selectAll("path.mean").data(r.type==="box"&&r.boxmean||r.type==="violin"&&r.box.visible&&r.meanline.visible?a2.identity:[]);h.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),h.exit().remove(),h.each(function(d){var v=a.c2l(d.pos+s,!0),_=a.l2p(v-c)+l,b=a.l2p(v+f)+l,p=o?(_+b)/2:a.l2p(v)+l,k=i.c2p(d.mean,!0),E=i.c2p(d.mean-d.sd,!0),S=i.c2p(d.mean+d.sd,!0);r.orientation==="h"?CT.select(this).attr("d","M"+k+","+_+"V"+b+(u==="sd"?"m0,0L"+E+","+p+"L"+k+","+_+"L"+S+","+p+"Z":"")):CT.select(this).attr("d","M"+_+","+k+"H"+b+(u==="sd"?"m0,0L"+p+","+E+"L"+_+","+k+"L"+p+","+S+"Z":""))})}D1e.exports={plot:L_t,plotBoxAndWhiskers:P1e,plotPoints:I1e,plotBoxMean:R1e}});var JI=ye((fur,F1e)=>{"use strict";var DV=Oa(),FV=ka(),zV=So();function P_t(e,t,r){var n=r||DV.select(e).selectAll("g.trace.boxes");n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=DV.select(this),o=i[0].trace,s=o.line.width;function l(f,h,d,v){f.style("stroke-width",h+"px").call(FV.stroke,d).call(FV.fill,v)}var u=a.selectAll("path.box");if(o.type==="candlestick")u.each(function(f){if(!f.empty){var h=DV.select(this),d=o[f.dir];l(h,d.line.width,d.line.color,d.fillcolor),h.style("opacity",o.selectedpoints&&!f.selected?.3:1)}});else{l(u,s,o.line.color,o.fillcolor),a.selectAll("path.mean").style({"stroke-width":s,"stroke-dasharray":2*s+"px,"+s+"px"}).call(FV.stroke,o.line.color);var c=a.selectAll("path.point");zV.pointStyle(c,o,e)}})}function I_t(e,t,r){var n=t[0].trace,i=r.selectAll("path.point");n.selectedpoints?zV.selectedPointStyle(i,n):zV.pointStyle(i,n,e)}F1e.exports={style:P_t,styleOnSelect:I_t}});var qV=ye((hur,B1e)=>{"use strict";var R_t=ho(),OV=Dr(),A_=vf(),z1e=ka(),D_t=OV.fillText;function F_t(e,t,r,n){var i=e.cd,a=i[0].trace,o=a.hoveron,s=[],l;return o.indexOf("boxes")!==-1&&(s=s.concat(O1e(e,t,r,n))),o.indexOf("points")!==-1&&(l=q1e(e,t,r)),n==="closest"?l?[l]:s:(l&&s.push(l),s)}function O1e(e,t,r,n){var i=e.cd,a=e.xa,o=e.ya,s=i[0].trace,l=i[0].t,u=s.type==="violin",c,f,h,d,v,_,b,p,k,E,S,L=l.bdPos,x,C,M=l.wHover,g=function(Pe){return h.c2l(Pe.pos)+l.bPos-h.c2l(_)};u&&s.side!=="both"?(s.side==="positive"&&(k=function(Pe){var ge=g(Pe);return A_.inbox(ge,ge+M,E)},x=L,C=0),s.side==="negative"&&(k=function(Pe){var ge=g(Pe);return A_.inbox(ge-M,ge,E)},x=0,C=L)):(k=function(Pe){var ge=g(Pe);return A_.inbox(ge-M,ge+M,E)},x=C=L);var P;u?P=function(Pe){return A_.inbox(Pe.span[0]-v,Pe.span[1]-v,E)}:P=function(Pe){return A_.inbox(Pe.min-v,Pe.max-v,E)},s.orientation==="h"?(v=t,_=r,b=P,p=k,c="y",h=o,f="x",d=a):(v=r,_=t,b=k,p=P,c="x",h=a,f="y",d=o);var T=Math.min(1,L/Math.abs(h.r2c(h.range[1])-h.r2c(h.range[0])));E=e.maxHoverDistance-T,S=e.maxSpikeDistance-T;function z(Pe){return(b(Pe)+p(Pe))/2}var O=A_.getDistanceFunction(n,b,p,z);if(A_.getClosest(i,O,e),e.index===!1)return[];var V=i[e.index],G=s.line.color,Z=(s.marker||{}).color;z1e.opacity(G)&&s.line.width?e.color=G:z1e.opacity(Z)&&s.boxpoints?e.color=Z:e.color=s.fillcolor,e[c+"0"]=h.c2p(V.pos+l.bPos-C,!0),e[c+"1"]=h.c2p(V.pos+l.bPos+x,!0),e[c+"LabelVal"]=V.orig_p!==void 0?V.orig_p:V.pos;var H=c+"Spike";e.spikeDistance=z(V)*S/E,e[H]=h.c2p(V.pos,!0);var N=s.boxmean||s.sizemode==="sd"||(s.meanline||{}).visible,j=s.boxpoints||s.points,re=j&&N?["max","uf","q3","med","mean","q1","lf","min"]:j&&!N?["max","uf","q3","med","q1","lf","min"]:!j&&N?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],oe=d.range[1]{"use strict";N1e.exports=function(t,r){return r.hoverOnBox&&(t.hoverOnBox=r.hoverOnBox),"xVal"in r&&(t.x=r.xVal),"yVal"in r&&(t.y=r.yVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var BV=ye((vur,V1e)=>{"use strict";V1e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l;if(r===!1)for(s=0;s{"use strict";G1e.exports={attributes:_4(),layoutAttributes:x4(),supplyDefaults:w4().supplyDefaults,crossTraceDefaults:w4().crossTraceDefaults,supplyLayoutDefaults:XI().supplyLayoutDefaults,calc:RV(),crossTraceCalc:YI().crossTraceCalc,plot:KI().plot,style:JI().style,styleOnSelect:JI().styleOnSelect,hoverPoints:qV().hoverPoints,eventData:U1e(),selectPoints:BV(),moduleType:"trace",name:"box",basePlotModule:ph(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{}}});var W1e=ye((gur,j1e)=>{"use strict";j1e.exports=H1e()});var LT=ye((mur,Z1e)=>{"use strict";var z_t=Tu(),{extendFlat:Pp}=Ao(),O_t=Gl(),{axisHoverFormat:NV}=df(),q_t=ec(),{hovertemplateAttrs:B_t,templatefallbackAttrs:X1e,texttemplateAttrs:N_t}=Ll(),n0=pf();Z1e.exports=Pp({z:{valType:"data_array",editType:"calc"},x:Pp({},n0.x,{impliedEdits:{xtype:"array"}}),x0:Pp({},n0.x0,{impliedEdits:{xtype:"scaled"}}),dx:Pp({},n0.dx,{impliedEdits:{xtype:"scaled"}}),y:Pp({},n0.y,{impliedEdits:{ytype:"array"}}),y0:Pp({},n0.y0,{impliedEdits:{ytype:"scaled"}}),dy:Pp({},n0.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:Pp({},n0.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:Pp({},n0.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:Pp({},n0.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:Pp({},n0.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:Pp({},n0.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:Pp({},n0.yperiodalignment,{impliedEdits:{ytype:"scaled"}}),text:{valType:"data_array",editType:"calc"},hovertext:{valType:"data_array",editType:"calc"},transpose:{valType:"boolean",dflt:!1,editType:"calc"},xtype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},ytype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},zsmooth:{valType:"enumerated",values:["fast","best",!1],dflt:!1,editType:"calc"},hoverongaps:{valType:"boolean",dflt:!0,editType:"none"},connectgaps:{valType:"boolean",editType:"calc"},xgap:{valType:"number",dflt:0,min:0,editType:"plot"},ygap:{valType:"number",dflt:0,min:0,editType:"plot"},xhoverformat:NV("x"),yhoverformat:NV("y"),zhoverformat:NV("z",1),hovertemplate:B_t(),hovertemplatefallback:X1e(),texttemplate:N_t({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),texttemplatefallback:X1e({editType:"plot"}),textfont:q_t({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:Pp({},O_t.showlegend,{dflt:!1}),zorder:n0.zorder},z_t("",{cLetter:"z",autoColorDflt:!1}))});var QI=ye((yur,K1e)=>{"use strict";var U_t=Eo(),$I=Dr(),V_t=qa();K1e.exports=function(t,r,n,i,a,o){var s=n("z");a=a||"x",o=o||"y";var l,u;if(s===void 0||!s.length)return 0;if($I.isArray1D(s)){l=n(a),u=n(o);var c=$I.minRowLength(l),f=$I.minRowLength(u);if(c===0||f===0)return 0;r._length=Math.min(c,f,s.length)}else{if(l=Y1e(a,n),u=Y1e(o,n),!G_t(s))return 0;n("transpose"),r._length=null}var h=V_t.getComponentMethod("calendars","handleTraceDefaults");return h(t,r,[a,o],i),!0};function Y1e(e,t){var r=t(e),n=r?t(e+"type","array"):"scaled";return n==="scaled"&&(t(e+"0"),t("d"+e)),r}function G_t(e){for(var t=!0,r=!1,n=!1,i,a=0;a0&&(r=!0);for(var o=0;o{"use strict";var J1e=Dr();$1e.exports=function(t,r){t("texttemplate"),t("texttemplatefallback");var n=J1e.extendFlat({},r.font,{color:"auto",size:"auto"});J1e.coerceFont(t,"textfont",n)}});var UV=ye((xur,Q1e)=>{"use strict";Q1e.exports=function(t,r,n){var i=n("zsmooth");i===!1&&(n("xgap"),n("ygap")),n("zhoverformat")}});var r_e=ye((bur,t_e)=>{"use strict";var e_e=Dr(),H_t=QI(),j_t=T4(),W_t=Pg(),X_t=UV(),Z_t=Qh(),Y_t=LT();t_e.exports=function(t,r,n,i){function a(s,l){return e_e.coerce(t,r,Y_t,s,l)}var o=H_t(t,r,a,i);if(!o){r.visible=!1;return}W_t(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),j_t(a,i),X_t(t,r,a,i),a("hoverongaps"),a("connectgaps",e_e.isArray1D(r.z)&&r.zsmooth!==!1),Z_t(t,r,i,a,{prefix:"",cLetter:"z"}),a("zorder")}});var VV=ye((wur,i_e)=>{"use strict";var PT=Eo();i_e.exports={count:function(e,t,r){return r[e]++,1},sum:function(e,t,r,n){var i=n[t];return PT(i)?(i=Number(i),r[e]+=i,i):0},avg:function(e,t,r,n,i){var a=n[t];return PT(a)&&(a=Number(a),r[e]+=a,i[e]++),0},min:function(e,t,r,n){var i=n[t];if(PT(i))if(i=Number(i),PT(r[e])){if(r[e]>i){var a=i-r[e];return r[e]=i,a}}else return r[e]=i,i;return 0},max:function(e,t,r,n){var i=n[t];if(PT(i))if(i=Number(i),PT(r[e])){if(r[e]{"use strict";n_e.exports={percent:function(e,t){for(var r=e.length,n=100/t,i=0;i{"use strict";a_e.exports=function(t,r){for(var n=t.length,i=0,a=0;a{"use strict";var IT=fs(),o2=IT.ONEAVGYEAR,o_e=IT.ONEAVGMONTH,t8=IT.ONEDAY,s_e=IT.ONEHOUR,l_e=IT.ONEMIN,u_e=IT.ONESEC,c_e=ho().tickIncrement;d_e.exports=function(t,r,n,i,a){var o=-1.1*r,s=-.1*r,l=t-s,u=n[0],c=n[1],f=Math.min(e8(u+s,u+l,i,a),e8(c+s,c+l,i,a)),h=Math.min(e8(u+o,u+s,i,a),e8(c+o,c+s,i,a)),d,v;if(f>h&&ht8){var _=d===o2?1:6,b=d===o2?"M12":"M1";return function(p,k){var E=i.c2d(p,o2,a),S=E.indexOf("-",_);S>0&&(E=E.substr(0,S));var L=i.d2c(E,0,a);if(Lu_e?e>t8?e>o2*1.1?o2:e>o_e*1.1?o_e:t8:e>s_e?s_e:e>l_e?l_e:u_e:Math.pow(10,Math.floor(Math.log(e)/Math.LN10))}function K_t(e,t,r,n,i,a){if(n&&e>t8){var o=h_e(t,i,a),s=h_e(r,i,a),l=e===o2?0:1;return o[l]!==s[l]}return Math.floor(r/e)-Math.floor(t/e)>.1}function h_e(e,t,r){var n=t.c2d(e,o2,r).split("-");return n[0]===""&&(n.unshift(),n[0]="-"+n[0]),n}});var ZV=ye((Mur,y_e)=>{"use strict";var WV=Eo(),Hv=Dr(),v_e=qa(),G0=ho(),{hasColorscale:p_e}=pv(),g_e=gv(),J_t=p4(),m_e=VV(),$_t=GV(),Q_t=HV(),ext=jV();function txt(e,t){var r=[],n=[],i=t.orientation==="h",a=G0.getFromId(e,i?t.yaxis:t.xaxis),o=i?"y":"x",s={x:"y",y:"x"}[o],l=t[o+"calendar"],u=t.cumulative,c,f=XV(e,t,a,o),h=f[0],d=f[1],v=typeof h.size=="string",_=[],b=v?_:h,p=[],k=[],E=[],S=0,L=t.histnorm,x=t.histfunc,C=L.indexOf("density")!==-1,M,g,P;u.enabled&&C&&(L=L.replace(/ ?density$/,""),C=!1);var T=x==="max"||x==="min",z=T?null:0,O=m_e.count,V=$_t[L],G=!1,Z=function(ge){return a.r2c(ge,0,l)},H;for(Hv.isArrayOrTypedArray(t[s])&&x!=="count"&&(H=t[s],G=x==="avg",O=m_e[x]),c=Z(h.start),g=Z(h.end)+(c-G0.tickIncrement(c,h.size,!1,l))/1e6;c=0&&P=Ae;c--)if(n[c]){Fe=c;break}for(c=Ae;c<=Fe;c++)if(WV(r[c])&&WV(n[c])){var Pe={p:r[c],s:n[c],b:0};u.enabled||(Pe.pts=E[c],oe?Pe.ph0=Pe.ph1=E[c].length?d[E[c][0]]:r[c]:(t._computePh=!0,Pe.ph0=ie(_[c]),Pe.ph1=ie(_[c+1],!0))),Le.push(Pe)}return Le.length===1&&(Le[0].width1=G0.tickIncrement(Le[0].p,h.size,!1,l)-Le[0].p),p_e(t,"marker")&&g_e(e,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),p_e(t,"marker.line")&&g_e(e,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}),J_t(Le,t),Hv.isArrayOrTypedArray(t.selectedpoints)&&Hv.tagSelected(Le,t,Ce),Le}function XV(e,t,r,n,i){var a=n+"bins",o=e._fullLayout,s=t["_"+n+"bingroup"],l=o._histogramBinOpts[s],u=o.barmode==="overlay",c,f,h,d,v,_,b,p=function(me){return r.r2c(me,0,d)},k=function(me){return r.c2r(me,0,d)},E=r.type==="date"?function(me){return me||me===0?Hv.cleanDate(me,null,d):null}:function(me){return WV(me)?Number(me):null};function S(me,ie,Se){ie[me+"Found"]?(ie[me]=E(ie[me]),ie[me]===null&&(ie[me]=Se[me])):(_[me]=ie[me]=Se[me],Hv.nestedProperty(f[0],a+"."+me).set(Se[me]))}if(t["_"+n+"autoBinFinished"])delete t["_"+n+"autoBinFinished"];else{f=l.traces;var L=[],x=!0,C=!1,M=!1;for(c=0;cr.r2l(H)&&(j=G0.tickIncrement(j,l.size,!0,d)),O.start=r.l2r(j),Z||Hv.nestedProperty(t,a+".start").set(O.start)}var re=l.end,oe=r.r2l(z.end),_e=oe!==void 0;if((l.endFound||_e)&&oe!==r.r2l(re)){var Ee=_e?oe:Hv.aggNums(Math.max,null,v);O.end=r.l2r(Ee),_e||Hv.nestedProperty(t,a+".start").set(O.end)}var Ce="autobin"+n;return t._input[Ce]===!1&&(t._input[a]=Hv.extendFlat({},t[a]||{}),delete t._input[Ce],delete t[Ce]),[O,v]}function rxt(e,t,r,n,i){var a=e._fullLayout,o=ixt(e,t),s=!1,l=1/0,u=[t],c,f,h;for(c=0;c=0;n--)s(n);else if(t==="increasing"){for(n=1;n=0;n--)e[n]+=e[n+1];r==="exclude"&&(e.push(0),e.shift())}}y_e.exports={calc:txt,calcAllAutoBins:XV}});var M_e=ye((Eur,S_e)=>{"use strict";var __e=Dr(),RT=ho(),x_e=VV(),axt=GV(),oxt=HV(),sxt=jV(),b_e=ZV().calcAllAutoBins;S_e.exports=function(t,r){var n=RT.getFromId(t,r.xaxis),i=RT.getFromId(t,r.yaxis),a=r.xcalendar,o=r.ycalendar,s=function(It){return n.r2c(It,0,a)},l=function(It){return i.r2c(It,0,o)},u=function(It){return n.c2r(It,0,a)},c=function(It){return i.c2r(It,0,o)},f,h,d,v,_=b_e(t,r,n,"x"),b=_[0],p=_[1],k=b_e(t,r,i,"y"),E=k[0],S=k[1],L=r._length;p.length>L&&p.splice(L,p.length-L),S.length>L&&S.splice(L,S.length-L);var x=[],C=[],M=[],g=typeof b.size=="string",P=typeof E.size=="string",T=[],z=[],O=g?T:b,V=P?z:E,G=0,Z=[],H=[],N=r.histnorm,j=r.histfunc,re=N.indexOf("density")!==-1,oe=j==="max"||j==="min",_e=oe?null:0,Ee=x_e.count,Ce=axt[N],me=!1,ie=[],Se=[],Le="z"in r?r.z:"marker"in r&&Array.isArray(r.marker.color)?r.marker.color:"";Le&&j!=="count"&&(me=j==="avg",Ee=x_e[j]);var Ae=b.size,Fe=s(b.start),Pe=s(b.end)+(Fe-RT.tickIncrement(Fe,Ae,!1,a))/1e6;for(f=Fe;f=0&&d=0&&v{"use strict";var Im=Dr(),E_e=fs().BADNUM,k_e=Rg();C_e.exports=function(t,r,n,i,a,o){var s=t._length,l=r.makeCalcdata(t,i),u=n.makeCalcdata(t,a);l=k_e(t,r,i,l).vals,u=k_e(t,n,a,u).vals;var c=t.text,f=c!==void 0&&Im.isArray1D(c),h=t.hovertext,d=h!==void 0&&Im.isArray1D(h),v,_,b=Im.distinctVals(l),p=b.vals,k=Im.distinctVals(u),E=k.vals,S=[],L,x,C=E.length,M=p.length;for(v=0;v{"use strict";var lxt=Eo(),uxt=Dr(),i8=fs().BADNUM;L_e.exports=function(t,r,n,i){var a,o,s,l,u,c;function f(p){if(lxt(p))return+p}if(r&&r.transpose){for(a=0,u=0;u{"use strict";var cxt=Dr(),P_e=.01,fxt=[[-1,0],[1,0],[0,-1],[0,1]];function hxt(e){return .5-.25*Math.min(1,e*.5)}R_e.exports=function(t,r){var n=1,i;for(I_e(t,r),i=0;iP_e;i++)n=I_e(t,r,hxt(n));return n>P_e&&cxt.log("interp2d didn't converge quickly",n),t};function I_e(e,t,r){var n=0,i,a,o,s,l,u,c,f,h,d,v,_,b;for(s=0;s_&&(n=Math.max(n,Math.abs(e[a][o]-v)/(b-_))))}return n}});var o8=ye((Pur,D_e)=>{"use strict";var dxt=Dr().maxRowLength;D_e.exports=function(t){var r=[],n={},i=[],a=t[0],o=[],s=[0,0,0],l=dxt(t),u,c,f,h,d,v,_,b;for(c=0;c=0;d--)h=i[d],c=h[0],f=h[1],v=((n[[c-1,f]]||s)[2]+(n[[c+1,f]]||s)[2]+(n[[c,f-1]]||s)[2]+(n[[c,f+1]]||s)[2])/20,v&&(_[h]=[c,f,v],i.splice(d,1),b=!0);if(!b)throw"findEmpties iterated with no new neighbors";for(h in _)n[h]=_[h],r.push(_[h])}return r.sort(function(p,k){return k[2]-p[2]})}});var YV=ye((Iur,O_e)=>{"use strict";var F_e=qa(),z_e=Dr().isArrayOrTypedArray;O_e.exports=function(t,r,n,i,a,o){var s=[],l=F_e.traceIs(t,"contour"),u=F_e.traceIs(t,"histogram"),c,f,h,d=z_e(r)&&r.length>1;if(d&&!u&&o.type!=="category"){var v=r.length;if(v<=a){if(l)s=Array.from(r).slice(0,a);else if(a===1)o.type==="log"?s=[.5*r[0],2*r[0]]:s=[r[0]-.5,r[0]+.5];else if(o.type==="log"){for(s=[Math.pow(r[0],1.5)/Math.pow(r[1],.5)],h=1;h{"use strict";var q_e=qa(),KV=Dr(),s8=ho(),B_e=Rg(),vxt=M_e(),pxt=gv(),gxt=r8(),mxt=n8(),yxt=a8(),_xt=o8(),l8=YV(),JV=fs().BADNUM;U_e.exports=function(t,r){var n=s8.getFromId(t,r.xaxis||"x"),i=s8.getFromId(t,r.yaxis||"y"),a=q_e.traceIs(r,"contour"),o=q_e.traceIs(r,"histogram"),s=a?"best":r.zsmooth,l,u,c,f,h,d,v,_,b,p,k;if(n._minDtick=0,i._minDtick=0,o)k=vxt(t,r),f=k.orig_x,l=k.x,u=k.x0,c=k.dx,_=k.orig_y,h=k.y,d=k.y0,v=k.dy,b=k.z;else{var E=r.z;KV.isArray1D(E)?(gxt(r,n,i,"x","y",["z"]),l=r._x,h=r._y,E=r._z):(f=r.x?n.makeCalcdata(r,"x"):[],_=r.y?i.makeCalcdata(r,"y"):[],l=B_e(r,n,"x",f).vals,h=B_e(r,i,"y",_).vals,r._x=l,r._y=h),u=r.x0,c=r.dx,d=r.y0,v=r.dy,b=mxt(E,r,n,i)}(n.rangebreaks||i.rangebreaks)&&(b=xxt(l,h,b),o||(l=N_e(l),h=N_e(h),r._x=l,r._y=h)),!o&&(a||r.connectgaps)&&(r._emptypoints=_xt(b),yxt(b,r._emptypoints));function S(O){s=r._input.zsmooth=r.zsmooth=!1,KV.warn('cannot use zsmooth: "fast": '+O)}function L(O){if(O.length>1){var V=(O[O.length-1]-O[0])/(O.length-1),G=Math.abs(V/100);for(p=0;pG)return!1}return!0}r._islinear=!1,n.type==="log"||i.type==="log"?s==="fast"&&S("log axis found"):L(l)?L(h)?r._islinear=!0:s==="fast"&&S("y scale is not linear"):s==="fast"&&S("x scale is not linear");var x=KV.maxRowLength(b),C=r.xtype==="scaled"?"":l,M=l8(r,C,u,c,x,n),g=r.ytype==="scaled"?"":h,P=l8(r,g,d,v,b.length,i);r._extremes[n._id]=s8.findExtremes(n,M),r._extremes[i._id]=s8.findExtremes(i,P);var T={x:M,y:P,z:b,text:r._text||r.text,hovertext:r._hovertext||r.hovertext};if(r.xperiodalignment&&f&&(T.orig_x=f),r.yperiodalignment&&_&&(T.orig_y=_),C&&C.length===M.length-1&&(T.xCenter=C),g&&g.length===P.length-1&&(T.yCenter=g),o&&(T.xRanges=k.xRanges,T.yRanges=k.yRanges,T.pts=k.pts),a||pxt(t,r,{vals:b,cLetter:"z"}),a&&r.contours&&r.contours.coloring==="heatmap"){var z={type:r.type==="contour"?"heatmap":"histogram2d",xcalendar:r.xcalendar,ycalendar:r.ycalendar};T.xfill=l8(z,C,u,c,x,n),T.yfill=l8(z,g,d,v,b.length,i)}return[T]};function N_e(e){for(var t=[],r=e.length,n=0;n{"use strict";c8.CSS_DECLARATIONS=[["image-rendering","optimizeSpeed"],["image-rendering","-moz-crisp-edges"],["image-rendering","-o-crisp-edges"],["image-rendering","-webkit-optimize-contrast"],["image-rendering","optimize-contrast"],["image-rendering","crisp-edges"],["image-rendering","pixelated"]];c8.STYLE=c8.CSS_DECLARATIONS.map(function(e){return e.join(": ")+"; "}).join("")});var QV=ye((Fur,G_e)=>{"use strict";var V_e=f8(),bxt=So(),$V=Dr(),DT=null;function wxt(){if(DT!==null)return DT;DT=!1;var e=$V.isSafari()||$V.isMacWKWebView()||$V.isIOS();if(window.navigator.userAgent&&!e){var t=Array.from(V_e.CSS_DECLARATIONS).reverse(),r=window.CSS&&window.CSS.supports||window.supportsCSS;if(typeof r=="function")DT=t.some(function(o){return r.apply(null,o)});else{var n=bxt.tester.append("image").attr("style",V_e.STYLE),i=window.getComputedStyle(n.node()),a=i.imageRendering;DT=t.some(function(o){var s=o[1];return a===s||a===s.toLowerCase()}),n.remove()}}return DT}G_e.exports=wxt});var h8=ye((zur,$_e)=>{"use strict";var H_e=Oa(),Txt=cd(),Axt=qa(),Sxt=So(),Mxt=ho(),H0=Dr(),j_e=ru(),Ext=iI(),kxt=ka(),Cxt=tc().extractOpts,Lxt=tc().makeColorScaleFuncFromTrace,Pxt=Wp(),Ixt=$h(),eG=Ixt.LINE_SPACING,Rxt=QV(),Dxt=f8().STYLE,K_e="heatmap-label";function J_e(e){return e.selectAll("g."+K_e)}function W_e(e){J_e(e).remove()}$_e.exports=function(e,t,r,n){var i=t.xaxis,a=t.yaxis;H0.makeTraceGroups(n,r,"hm").each(function(o){var s=H_e.select(this),l=o[0],u=l.trace,c=u.xgap||0,f=u.ygap||0,h=l.z,d=l.x,v=l.y,_=l.xCenter,b=l.yCenter,p=Axt.traceIs(u,"contour"),k=p?"best":u.zsmooth,E=h.length,S=H0.maxRowLength(h),L=!1,x=!1,C,M,g,P,T,z,O,V;for(z=0;C===void 0&&z0;)M=i.c2p(d[z]),z--;for(M0;)T=a.c2p(v[z]),z--;T=i._length||M<=0||P>=a._length||T<=0;if(j){var re=s.selectAll("image").data([]);re.exit().remove(),W_e(s);return}var oe,_e;G==="fast"?(oe=S,_e=E):(oe=H,_e=N);var Ee=document.createElement("canvas");Ee.width=oe,Ee.height=_e;var Ce=Ee.getContext("2d",{willReadFrequently:!0}),me=Lxt(u,{noNumericCheck:!0,returnArray:!0}),ie,Se;G==="fast"?(ie=L?function(fn){return S-1-fn}:H0.identity,Se=x?function(fn){return E-1-fn}:H0.identity):(ie=function(fn){return H0.constrain(Math.round(i.c2p(d[fn])-C),0,H)},Se=function(fn){return H0.constrain(Math.round(a.c2p(v[fn])-P),0,N)});var Le=Se(0),Ae=[Le,Le],Fe=L?0:1,Pe=x?0:1,ge=0,Re=0,ce=0,Ze=0,ut,pt,Zt,st,lt;function Gt(fn,yn){if(fn!==void 0){var Sn=me(fn);return Sn[0]=Math.round(Sn[0]),Sn[1]=Math.round(Sn[1]),Sn[2]=Math.round(Sn[2]),ge+=yn,Re+=Sn[0]*yn,ce+=Sn[1]*yn,Ze+=Sn[2]*yn,Sn}return[0,0,0,0]}function Nt(fn,yn,Sn,Ba){var ua=fn[Sn.bin0];if(ua===void 0)return Gt(void 0,1);var ma=fn[Sn.bin1],Wa=yn[Sn.bin0],Fa=yn[Sn.bin1],Wo=ma-ua||0,da=Wa-ua||0,Wn;return ma===void 0?Fa===void 0?Wn=0:Wa===void 0?Wn=2*(Fa-ua):Wn=(2*Fa-Wa-ua)*2/3:Fa===void 0?Wa===void 0?Wn=0:Wn=(2*ua-ma-Wa)*2/3:Wa===void 0?Wn=(2*Fa-ma-ua)*2/3:Wn=Fa+ua-ma-Wa,Gt(ua+Sn.frac*Wo+Ba.frac*(da+Sn.frac*Wn))}if(G!=="default"){var Jt=0,sr;try{sr=new Uint8Array(oe*_e*4)}catch(fn){sr=new Array(oe*_e*4)}if(G==="smooth"){var wr=_||d,cr=b||v,$e=new Array(wr.length),St=new Array(cr.length),Qt=new Array(H),Vt=_?Z_e:X_e,_t=b?Z_e:X_e,It,mt,er;for(z=0;zvr||vr>a._length))for(O=ke;Opi||pi>i._length)){var $r=Ext({x:ii,y:ar},u,e._fullLayout);$r.x=ii,$r.y=ar;var di=l.z[z][O];di===void 0?($r.z="",$r.zLabel=""):($r.z=di,$r.zLabel=Mxt.tickText(je,di,"hover").text);var ji=l.text&&l.text[z]&&l.text[z][O];(ji===void 0||ji===!1)&&(ji=""),$r.text=ji;var In=H0.texttemplateString({data:[$r,u._meta],fallback:u.texttemplatefallback,labels:$r,locale:e._fullLayout._d3locale,template:Ge});if(In){var wi=In.split("
"),On=wi.length,qn=0;for(V=0;V{"use strict";Q_e.exports={min:"zmin",max:"zmax"}});var d8=ye((qur,exe)=>{"use strict";var Fxt=Oa();exe.exports=function(t){Fxt.select(t).selectAll(".hm image").style("opacity",function(r){return r.trace.opacity})}});var p8=ye((Bur,rxe)=>{"use strict";var txe=vf(),A4=Dr(),v8=A4.isArrayOrTypedArray,zxt=ho(),Oxt=tc().extractOpts;rxe.exports=function(t,r,n,i,a){a||(a={});var o=a.isContour,s=t.cd[0],l=s.trace,u=t.xa,c=t.ya,f=s.x,h=s.y,d=s.z,v=s.xCenter,_=s.yCenter,b=s.zmask,p=l.zhoverformat,k=f,E=h,S,L,x,C;if(t.index!==!1){try{x=Math.round(t.index[1]),C=Math.round(t.index[0])}catch(re){A4.error("Error hovering on heatmap, pointNumber must be [row,col], found:",t.index);return}if(x<0||x>=d[0].length||C<0||C>d.length)return}else{if(txe.inbox(r-f[0],r-f[f.length-1],0)>0||txe.inbox(n-h[0],n-h[h.length-1],0)>0)return;if(o){var M;for(k=[2*f[0]-f[1]],M=1;M{"use strict";ixe.exports={attributes:LT(),supplyDefaults:r_e(),calc:u8(),plot:h8(),colorbar:S_(),style:d8(),hoverPoints:p8(),moduleType:"trace",name:"heatmap",basePlotModule:ph(),categories:["cartesian","svg","2dMap","showLegend"],meta:{}}});var oxe=ye((Uur,axe)=>{"use strict";axe.exports=nxe()});var tG=ye((Vur,sxe)=>{"use strict";sxe.exports=function(t,r){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}});var uxe=ye((Gur,lxe)=>{"use strict";lxe.exports={eventDataKeys:["binNumber"]}});var g8=ye((Hur,dxe)=>{"use strict";var Ip=Lm(),cxe=df().axisHoverFormat,{hovertemplateAttrs:qxt,texttemplateAttrs:Bxt,templatefallbackAttrs:fxe}=Ll(),rG=ec(),hxe=tG(),Nxt=uxe(),iG=Ao().extendFlat;dxe.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:cxe("x"),yhoverformat:cxe("y"),text:iG({},Ip.text,{}),hovertext:iG({},Ip.hovertext,{}),orientation:Ip.orientation,histfunc:{valType:"enumerated",values:["count","sum","avg","min","max"],dflt:"count",editType:"calc"},histnorm:{valType:"enumerated",values:["","percent","probability","density","probability density"],dflt:"",editType:"calc"},cumulative:{enabled:{valType:"boolean",dflt:!1,editType:"calc"},direction:{valType:"enumerated",values:["increasing","decreasing"],dflt:"increasing",editType:"calc"},currentbin:{valType:"enumerated",values:["include","exclude","half"],dflt:"include",editType:"calc"},editType:"calc"},nbinsx:{valType:"integer",min:0,dflt:0,editType:"calc"},xbins:hxe("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:hxe("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:qxt({},{keys:Nxt.eventDataKeys}),hovertemplatefallback:fxe(),texttemplate:Bxt({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),texttemplatefallback:fxe({editType:"plot"}),textposition:iG({},Ip.textposition,{arrayOk:!1}),textfont:rG({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:rG({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:rG({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:Ip.insidetextanchor,textangle:Ip.textangle,cliponaxis:Ip.cliponaxis,constraintext:Ip.constraintext,marker:Ip.marker,offsetgroup:Ip.offsetgroup,alignmentgroup:Ip.alignmentgroup,selected:Ip.selected,unselected:Ip.unselected,zorder:Ip.zorder}});var mxe=ye((jur,gxe)=>{"use strict";var vxe=qa(),S4=Dr(),pxe=ka(),Uxt=r0().handleText,Vxt=UI(),Gxt=g8();gxe.exports=function(t,r,n,i){function a(k,E){return S4.coerce(t,r,Gxt,k,E)}var o=a("x"),s=a("y"),l=a("cumulative.enabled");l&&(a("cumulative.direction"),a("cumulative.currentbin")),a("text");var u=a("textposition");Uxt(t,r,i,a,u,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat");var c=a("orientation",s&&!o?"h":"v"),f=c==="v"?"x":"y",h=c==="v"?"y":"x",d=o&&s?Math.min(S4.minRowLength(o)&&S4.minRowLength(s)):S4.minRowLength(r[f]||[]);if(!d){r.visible=!1;return}r._length=d;var v=vxe.getComponentMethod("calendars","handleTraceDefaults");v(t,r,["x","y"],i);var _=r[h];_&&a("histfunc"),a("histnorm"),a("autobin"+f),Vxt(t,r,a,n,i),S4.coerceSelectionMarkerOpacity(r,a);var b=(r.marker.line||{}).color,p=vxe.getComponentMethod("errorbars","supplyDefaults");p(t,r,b||pxe.defaultLine,{axis:"y"}),p(t,r,b||pxe.defaultLine,{axis:"x",inherit:"y"}),a("zorder")}});var y8=ye((Wur,xxe)=>{"use strict";var M4=Dr(),Hxt=hf(),m8=qa().traceIs,jxt=Hb(),Wxt=r0().validateCornerradius,yxe=M4.nestedProperty,nG=Nb().getAxisGroup,_xe=[{aStr:{x:"xbins.start",y:"ybins.start"},name:"start"},{aStr:{x:"xbins.end",y:"ybins.end"},name:"end"},{aStr:{x:"xbins.size",y:"ybins.size"},name:"size"},{aStr:{x:"nbinsx",y:"nbinsy"},name:"nbins"}],Xxt=["x","y"];xxe.exports=function(t,r){var n=r._histogramBinOpts={},i=[],a={},o=[],s,l,u,c,f,h,d;function v(G,Z){return M4.coerce(s._input,s,s._module.attributes,G,Z)}function _(G){return G.orientation==="v"?"x":"y"}function b(G,Z){var H=Hxt.getFromTrace({_fullLayout:r},G,Z);return H.type}function p(G,Z,H){var N=G.uid+"__"+H;Z||(Z=N);var j=b(G,H),re=G[H+"calendar"]||"",oe=n[Z],_e=!0;oe&&(j===oe.axType&&re===oe.calendar?(_e=!1,oe.traces.push(G),oe.dirs.push(H)):(Z=N,j!==oe.axType&&M4.warn(["Attempted to group the bins of trace",G.index,"set on a","type:"+j,"axis","with bins on","type:"+oe.axType,"axis."].join(" ")),re!==oe.calendar&&M4.warn(["Attempted to group the bins of trace",G.index,"set with a",re,"calendar","with bins",oe.calendar?"on a "+oe.calendar+" calendar":"w/o a set calendar"].join(" ")))),_e&&(n[Z]={traces:[G],dirs:[H],axType:j,calendar:G[H+"calendar"]||""}),G["_"+H+"bingroup"]=Z}for(f=0;f{"use strict";var Zxt=MT().hoverPoints,Yxt=ho().hoverLabelText;bxe.exports=function(t,r,n,i,a){var o=Zxt(t,r,n,i,a);if(o){t=o[0];var s=t.cd[t.index],l=t.cd[0].trace;if(!l.cumulative.enabled){var u=l.orientation==="h"?"y":"x";t[u+"Label"]=Yxt(t[u+"a"],[s.ph0,s.ph1],l[u+"hoverformat"])}return o}}});var aG=ye((Zur,Txe)=>{"use strict";Txe.exports=function(t,r,n,i,a){if(t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"zLabelVal"in r&&(t.z=r.zLabelVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),!(n.cumulative||{}).enabled){var o=Array.isArray(a)?i[0].pts[a[0]][a[1]]:i[a].pts;t.pointNumbers=o,t.binNumber=t.pointNumber,delete t.pointNumber,delete t.pointIndex;var s;if(n._indexToPoints){s=[];for(var l=0;l{"use strict";Axe.exports={attributes:g8(),layoutAttributes:NI(),supplyDefaults:mxe(),crossTraceDefaults:y8(),supplyLayoutDefaults:SV(),calc:ZV().calc,crossTraceCalc:jb().crossTraceCalc,plot:n2().plot,layerName:"barlayer",style:N0().style,styleOnSelect:N0().styleOnSelect,colorbar:$d(),hoverPoints:wxe(),selectPoints:ET(),eventData:aG(),moduleType:"trace",name:"histogram",basePlotModule:ph(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}});var Exe=ye((Kur,Mxe)=>{"use strict";Mxe.exports=Sxe()});var x8=ye((Jur,Lxe)=>{"use strict";var Vg=g8(),kxe=tG(),_8=LT(),Kxt=Gl(),oG=df().axisHoverFormat,{hovertemplateAttrs:Jxt,texttemplateAttrs:$xt,templatefallbackAttrs:Cxe}=Ll(),Qxt=Tu(),E4=Ao().extendFlat;Lxe.exports=E4({x:Vg.x,y:Vg.y,z:{valType:"data_array",editType:"calc"},marker:{color:{valType:"data_array",editType:"calc"},editType:"calc"},histnorm:Vg.histnorm,histfunc:Vg.histfunc,nbinsx:Vg.nbinsx,xbins:kxe("x"),nbinsy:Vg.nbinsy,ybins:kxe("y"),autobinx:Vg.autobinx,autobiny:Vg.autobiny,bingroup:E4({},Vg.bingroup,{}),xbingroup:E4({},Vg.bingroup,{}),ybingroup:E4({},Vg.bingroup,{}),xgap:_8.xgap,ygap:_8.ygap,zsmooth:_8.zsmooth,xhoverformat:oG("x"),yhoverformat:oG("y"),zhoverformat:oG("z",1),hovertemplate:Jxt({},{keys:["z"]}),hovertemplatefallback:Cxe(),texttemplate:$xt({arrayOk:!1,editType:"plot"},{keys:["z"]}),texttemplatefallback:Cxe({editType:"plot"}),textfont:_8.textfont,showlegend:E4({},Kxt.showlegend,{dflt:!1})},Qxt("",{cLetter:"z",autoColorDflt:!1}))});var sG=ye(($ur,Ixe)=>{"use strict";var ebt=qa(),Pxe=Dr();Ixe.exports=function(t,r,n,i){var a=n("x"),o=n("y"),s=Pxe.minRowLength(a),l=Pxe.minRowLength(o);if(!s||!l){r.visible=!1;return}r._length=Math.min(s,l);var u=ebt.getComponentMethod("calendars","handleTraceDefaults");u(t,r,["x","y"],i);var c=n("z")||n("marker.color");c&&n("histfunc"),n("histnorm"),n("autobinx"),n("autobiny")}});var Dxe=ye((Qur,Rxe)=>{"use strict";var tbt=Dr(),rbt=sG(),ibt=UV(),nbt=Qh(),abt=T4(),obt=x8();Rxe.exports=function(t,r,n,i){function a(o,s){return tbt.coerce(t,r,obt,o,s)}rbt(t,r,a,i),r.visible!==!1&&(ibt(t,r,a,i),nbt(t,r,i,a,{prefix:"",cLetter:"z"}),a("hovertemplate"),a("hovertemplatefallback"),abt(a,i),a("xhoverformat"),a("yhoverformat"))}});var Oxe=ye((ecr,zxe)=>{"use strict";var sbt=p8(),Fxe=ho().hoverLabelText;zxe.exports=function(t,r,n,i,a){var o=sbt(t,r,n,i,a);if(o){t=o[0];var s=t.index,l=s[0],u=s[1],c=t.cd[0],f=c.trace,h=c.xRanges[u],d=c.yRanges[l];return t.xLabel=Fxe(t.xa,[h[0],h[1]],f.xhoverformat),t.yLabel=Fxe(t.ya,[d[0],d[1]],f.yhoverformat),o}}});var Bxe=ye((tcr,qxe)=>{"use strict";qxe.exports={attributes:x8(),supplyDefaults:Dxe(),crossTraceDefaults:y8(),calc:u8(),plot:h8(),layerName:"heatmaplayer",colorbar:S_(),style:d8(),hoverPoints:Oxe(),eventData:aG(),moduleType:"trace",name:"histogram2d",basePlotModule:ph(),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{}}});var Uxe=ye((rcr,Nxe)=>{"use strict";Nxe.exports=Bxe()});var b8=ye((icr,Vxe)=>{"use strict";Vxe.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}});var k4=ye((ncr,Wxe)=>{"use strict";var mh=LT(),w8=pf(),Hxe=df(),lG=Hxe.axisHoverFormat,lbt=Hxe.descriptionOnlyNumbers,ubt=Tu(),cbt=Pd().dash,fbt=ec(),FT=Ao().extendFlat,jxe=b8(),hbt=jxe.COMPARISON_OPS2,dbt=jxe.INTERVAL_OPS,Gxe=w8.line;Wxe.exports=FT({z:mh.z,x:mh.x,x0:mh.x0,dx:mh.dx,y:mh.y,y0:mh.y0,dy:mh.dy,xperiod:mh.xperiod,yperiod:mh.yperiod,xperiod0:w8.xperiod0,yperiod0:w8.yperiod0,xperiodalignment:mh.xperiodalignment,yperiodalignment:mh.yperiodalignment,text:mh.text,hovertext:mh.hovertext,transpose:mh.transpose,xtype:mh.xtype,ytype:mh.ytype,xhoverformat:lG("x"),yhoverformat:lG("y"),zhoverformat:lG("z",1),hovertemplate:mh.hovertemplate,hovertemplatefallback:mh.hovertemplatefallback,texttemplate:FT({},mh.texttemplate,{}),texttemplatefallback:mh.texttemplatefallback,textfont:FT({},mh.textfont,{}),hoverongaps:mh.hoverongaps,connectgaps:FT({},mh.connectgaps,{}),fillcolor:{valType:"color",editType:"calc"},autocontour:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"contours.start":void 0,"contours.end":void 0,"contours.size":void 0}},ncontours:{valType:"integer",dflt:15,min:1,editType:"calc"},contours:{type:{valType:"enumerated",values:["levels","constraint"],dflt:"levels",editType:"calc"},start:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},end:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},size:{valType:"number",dflt:null,min:0,editType:"plot",impliedEdits:{"^autocontour":!1}},coloring:{valType:"enumerated",values:["fill","heatmap","lines","none"],dflt:"fill",editType:"calc"},showlines:{valType:"boolean",dflt:!0,editType:"plot"},showlabels:{valType:"boolean",dflt:!1,editType:"plot"},labelfont:fbt({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:lbt("contour label")},operation:{valType:"enumerated",values:[].concat(hbt).concat(dbt),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:FT({},Gxe.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:cbt,smoothing:FT({},Gxe.smoothing,{}),editType:"plot"},zorder:w8.zorder},ubt("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))});var cG=ye((acr,Zxe)=>{"use strict";var wv=x8(),Rm=k4(),vbt=Tu(),uG=df().axisHoverFormat,Xxe=Ao().extendFlat;Zxe.exports=Xxe({x:wv.x,y:wv.y,z:wv.z,marker:wv.marker,histnorm:wv.histnorm,histfunc:wv.histfunc,nbinsx:wv.nbinsx,xbins:wv.xbins,nbinsy:wv.nbinsy,ybins:wv.ybins,autobinx:wv.autobinx,autobiny:wv.autobiny,bingroup:wv.bingroup,xbingroup:wv.xbingroup,ybingroup:wv.ybingroup,autocontour:Rm.autocontour,ncontours:Rm.ncontours,contours:Rm.contours,line:{color:Rm.line.color,width:Xxe({},Rm.line.width,{dflt:.5}),dash:Rm.line.dash,smoothing:Rm.line.smoothing,editType:"plot"},xhoverformat:uG("x"),yhoverformat:uG("y"),zhoverformat:uG("z",1),hovertemplate:wv.hovertemplate,hovertemplatefallback:wv.hovertemplatefallback,texttemplate:Rm.texttemplate,texttemplatefallback:Rm.texttemplatefallback,textfont:Rm.textfont},vbt("",{cLetter:"z",editTypeOverride:"calc"}))});var T8=ye((ocr,Yxe)=>{"use strict";Yxe.exports=function(t,r,n,i){var a=i("contours.start"),o=i("contours.end"),s=a===!1||o===!1,l=n("contours.size"),u;s?u=r.autocontour=!0:u=n("autocontour",!1),(u||!l)&&n("ncontours")}});var fG=ye((scr,Kxe)=>{"use strict";var pbt=Dr();Kxe.exports=function(t,r,n,i){i||(i={});var a=t("contours.showlabels");if(a){var o=r.font;pbt.coerceFont(t,"contours.labelfont",o,{overrideDflt:{color:n}}),t("contours.labelformat")}i.hasHover!==!1&&t("zhoverformat")}});var A8=ye((lcr,Jxe)=>{"use strict";var gbt=Qh(),mbt=fG();Jxe.exports=function(t,r,n,i,a){var o=n("contours.coloring"),s,l="";o==="fill"&&(s=n("contours.showlines")),s!==!1&&(o!=="lines"&&(l=n("line.color","#000")),n("line.width",.5),n("line.dash")),o!=="none"&&(t.showlegend!==!0&&(r.showlegend=!1),r._dfltShowLegend=!1,gbt(t,r,i,n,{prefix:"",cLetter:"z"})),n("line.smoothing"),mbt(n,i,l,a)}});var tbe=ye((ucr,ebe)=>{"use strict";var $xe=Dr(),ybt=sG(),_bt=T8(),xbt=A8(),bbt=T4(),Qxe=cG();ebe.exports=function(t,r,n,i){function a(s,l){return $xe.coerce(t,r,Qxe,s,l)}function o(s){return $xe.coerce2(t,r,Qxe,s)}ybt(t,r,a,i),r.visible!==!1&&(_bt(t,r,a,o),xbt(t,r,a,i),a("xhoverformat"),a("yhoverformat"),a("hovertemplate"),a("hovertemplatefallback"),r.contours&&r.contours.coloring==="heatmap"&&bbt(a,i))}});var vG=ye((ccr,ibe)=>{"use strict";var dG=ho(),hG=Dr();ibe.exports=function(t,r){var n=t.contours;if(t.autocontour){var i=t.zmin,a=t.zmax;(t.zauto||i===void 0)&&(i=hG.aggNums(Math.min,null,r)),(t.zauto||a===void 0)&&(a=hG.aggNums(Math.max,null,r));var o=rbe(i,a,t.ncontours);n.size=o.dtick,n.start=dG.tickFirst(o),o.range.reverse(),n.end=dG.tickFirst(o),n.start===i&&(n.start+=n.size),n.end===a&&(n.end-=n.size),n.start>n.end&&(n.start=n.end=(n.start+n.end)/2),t._input.contours||(t._input.contours={}),hG.extendFlat(t._input.contours,{start:n.start,end:n.end,size:n.size}),t._input.autocontour=!0}else if(n.type!=="constraint"){var s=n.start,l=n.end,u=t._input.contours;if(s>l&&(n.start=u.start=l,l=n.end=u.end=s,s=n.start),!(n.size>0)){var c;s===l?c=1:c=rbe(s,l,t.ncontours).dtick,u.size=n.size=c}}};function rbe(e,t,r){var n={type:"linear",range:[e,t]};return dG.autoTicks(n,(t-e)/(r||15)),n}});var C4=ye((fcr,nbe)=>{"use strict";nbe.exports=function(t){return t.end+t.size/1e6}});var pG=ye((hcr,obe)=>{"use strict";var abe=tc(),wbt=u8(),Tbt=vG(),Abt=C4();obe.exports=function(t,r){var n=wbt(t,r),i=n[0].z;Tbt(r,i);var a=r.contours,o=abe.extractOpts(r),s;if(a.coloring==="heatmap"&&o.auto&&r.autocontour===!1){var l=a.start,u=Abt(a),c=a.size||1,f=Math.floor((u-l)/c)+1;isFinite(c)||(c=1,f=1);var h=l-c/2,d=h+f*c;s=[h,d]}else s=i;return abe.calc(t,r,{vals:s,cLetter:"z"}),n}});var L4=ye((dcr,sbe)=>{"use strict";sbe.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}});var gG=ye((vcr,lbe)=>{"use strict";var S8=L4();lbe.exports=function(t){var r=t[0].z,n=r.length,i=r[0].length,a=n===2||i===2,o,s,l,u,c,f,h,d,v;for(s=0;se?0:1)+(t[0][1]>e?0:2)+(t[1][1]>e?0:4)+(t[1][0]>e?0:8);if(r===5||r===10){var n=(t[0][0]+t[0][1]+t[1][0]+t[1][1])/4;return e>n?r===5?713:1114:r===5?104:208}return r===15?0:r}});var mG=ye((pcr,fbe)=>{"use strict";var M8=Dr(),zT=L4();fbe.exports=function(t,r,n){var i,a,o,s,l;for(r=r||.01,n=n||.01,o=0;o20?(o=zT.CHOOSESADDLE[o][(s[0]||s[1])<0?0:1],e.crossings[a]=zT.SADDLEREMAINDER[o]):delete e.crossings[a],s=zT.NEWDELTA[o],!s){M8.log("Found bad marching index:",o,t,e.level);break}l.push(cbe(e,t,s)),t[0]+=s[0],t[1]+=s[1],a=t.join(","),P4(l[l.length-1],l[l.length-2],n,i)&&l.pop();var v=s[0]&&(t[0]<0||t[0]>c-2)||s[1]&&(t[1]<0||t[1]>u-2),_=t[0]===f[0]&&t[1]===f[1]&&s[0]===h[0]&&s[1]===h[1];if(_||r&&v)break;o=e.crossings[a]}d===1e4&&M8.log("Infinite loop in contour?");var b=P4(l[0],l[l.length-1],n,i),p=0,k=.2*e.smoothing,E=[],S=0,L,x,C,M,g,P,T,z,O,V,G;for(d=1;d=S;d--)if(L=E[d],L=S&&L+E[x]z&&O--,e.edgepaths[O]=G.concat(l,V));break}j||(e.edgepaths[z]=l.concat(V))}for(z=0;z20&&t?e===208||e===1114?n=r[0]===0?1:-1:i=r[1]===0?1:-1:zT.BOTTOMSTART.indexOf(e)!==-1?i=1:zT.LEFTSTART.indexOf(e)!==-1?n=1:zT.TOPSTART.indexOf(e)!==-1?i=-1:n=-1,[n,i]}function cbe(e,t,r){var n=t[0]+Math.max(r[0],0),i=t[1]+Math.max(r[1],0),a=e.z[i][n],o=e.xaxis,s=e.yaxis;if(r[1]){var l=(e.level-a)/(e.z[i][n+1]-a),u=(l!==1?(1-l)*o.c2l(e.x[n]):0)+(l!==0?l*o.c2l(e.x[n+1]):0);return[o.c2p(o.l2c(u),!0),s.c2p(e.y[i],!0),n+l,i]}else{var c=(e.level-a)/(e.z[i+1][n]-a),f=(c!==1?(1-c)*s.c2l(e.y[i]):0)+(c!==0?c*s.c2l(e.y[i+1]):0);return[o.c2p(e.x[n],!0),s.c2p(s.l2c(f),!0),n,i+c]}}});var pbe=ye((gcr,vbe)=>{"use strict";var yG=b8(),kbt=Eo();vbe.exports={"[]":hbe("[]"),"][":hbe("]["),">":_G(">"),"<":_G("<"),"=":_G("=")};function dbe(e,t){var r=Array.isArray(t),n;function i(a){return kbt(a)?+a:null}return yG.COMPARISON_OPS2.indexOf(e)!==-1?n=i(r?t[0]:t):yG.INTERVAL_OPS.indexOf(e)!==-1?n=r?[i(t[0]),i(t[1])]:[i(t),i(t)]:yG.SET_OPS.indexOf(e)!==-1&&(n=r?t.map(i):[i(t)]),n}function hbe(e){return function(t){t=dbe(e,t);var r=Math.min(t[0],t[1]),n=Math.max(t[0],t[1]);return{start:r,end:n,size:n-r}}}function _G(e){return function(t){return t=dbe(e,t),{start:t,end:1/0,size:1/0}}}});var xG=ye((mcr,mbe)=>{"use strict";var gbe=Dr(),Cbt=pbe(),Lbt=C4();mbe.exports=function(t,r,n){for(var i=t.type==="constraint"?Cbt[t._operation](t.value):t,a=i.size,o=[],s=Lbt(i),l=n.trace._carpetTrace,u=l?{xaxis:l.aaxis,yaxis:l.baxis,x:n.a,y:n.b}:{xaxis:r.xaxis,yaxis:r.yaxis,x:n.x,y:n.y},c=i.start;c1e3){gbe.warn("Too many contours, clipping at 1000",t);break}return o}});var bG=ye((ycr,_be)=>{"use strict";var OT=Dr();_be.exports=function(e,t){var r,n,i,a=function(l){return l.reverse()},o=function(l){return l};switch(t){case"=":case"<":return e;case">":for(e.length!==1&&OT.warn("Contour data invalid for the specified inequality operation."),n=e[0],r=0;r{"use strict";xbe.exports=function(e,t){var r=e[0],n=r.z,i;switch(t.type){case"levels":var a=Math.min(n[0][0],n[0][1]);for(i=0;io.level||o.starts.length&&a===o.level)}break;case"constraint":if(r.prefixBoundary=!1,r.edgepaths.length)return;var s=r.x.length,l=r.y.length,u=-1/0,c=1/0;for(i=0;i":f>u&&(r.prefixBoundary=!0);break;case"<":(fu||r.starts.length&&d===c)&&(r.prefixBoundary=!0);break;case"][":h=Math.min(f[0],f[1]),d=Math.max(f[0],f[1]),hu&&(r.prefixBoundary=!0);break}break}}});var E8=ye(jv=>{"use strict";var R4=Oa(),zd=Dr(),qy=So(),Pbt=tc(),Tbe=ru(),bbe=ho(),wbe=ym(),Ibt=h8(),Abe=gG(),Sbe=mG(),Rbt=xG(),Dbt=bG(),Mbe=wG(),I4=L4(),Dm=I4.LABELOPTIMIZER;jv.plot=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;zd.makeTraceGroups(i,n,"contour").each(function(s){var l=R4.select(this),u=s[0],c=u.trace,f=u.x,h=u.y,d=c.contours,v=Rbt(d,r,u),_=zd.ensureSingle(l,"g","heatmapcoloring"),b=[];d.coloring==="heatmap"&&(b=[s]),Ibt(t,r,b,_),Abe(v),Sbe(v);var p=a.c2p(f[0],!0),k=a.c2p(f[f.length-1],!0),E=o.c2p(h[0],!0),S=o.c2p(h[h.length-1],!0),L=[[p,S],[k,S],[k,E],[p,E]],x=v;d.type==="constraint"&&(x=Dbt(v,d._operation)),Fbt(l,L,d),zbt(l,x,L,d),Obt(l,v,t,u,d),Bbt(l,r,t,u,L)})};function Fbt(e,t,r){var n=zd.ensureSingle(e,"g","contourbg"),i=n.selectAll("path").data(r.coloring==="fill"?[0]:[]);i.enter().append("path"),i.exit().remove(),i.attr("d","M"+t.join("L")+"Z").style("stroke","none")}function zbt(e,t,r,n){var i=n.coloring==="fill"||n.type==="constraint"&&n._operation!=="=",a="M"+r.join("L")+"Z";i&&Mbe(t,n);var o=zd.ensureSingle(e,"g","contourfill"),s=o.selectAll("path").data(i?t:[]);s.enter().append("path"),s.exit().remove(),s.each(function(l){var u=(l.prefixBoundary?a:"")+Ebe(l,r);u?R4.select(this).attr("d",u).style("stroke","none"):R4.select(this).remove()})}function Ebe(e,t){var r="",n=0,i=e.edgepaths.map(function(p,k){return k}),a=!0,o,s,l,u,c,f;function h(p){return Math.abs(p[1]-t[0][1])<.01}function d(p){return Math.abs(p[1]-t[2][1])<.01}function v(p){return Math.abs(p[0]-t[0][0])<.01}function _(p){return Math.abs(p[0]-t[2][0])<.01}for(;i.length;){for(f=qy.smoothopen(e.edgepaths[n],e.smoothing),r+=a?f:f.replace(/^M/,"L"),i.splice(i.indexOf(n),1),o=e.edgepaths[n][e.edgepaths[n].length-1],u=-1,l=0;l<4;l++){if(!o){zd.log("Missing end?",n,e);break}for(h(o)&&!_(o)?s=t[1]:v(o)?s=t[0]:d(o)?s=t[3]:_(o)&&(s=t[2]),c=0;c=0&&(s=b,u=c):Math.abs(o[1]-s[1])<.01?Math.abs(o[1]-b[1])<.01&&(b[0]-o[0])*(s[0]-b[0])>=0&&(s=b,u=c):zd.log("endpt to newendpt is not vert. or horz.",o,s,b)}if(o=s,u>=0)break;r+="L"+s}if(u===e.edgepaths.length){zd.log("unclosed perimeter path");break}n=u,a=i.indexOf(n)===-1,a&&(n=i[0],r+="Z")}for(n=0;nDm.MAXCOST*2)break;h&&(s/=2),o=u-s/2,l=o+s*1.5}if(f<=Dm.MAXCOST)return c};function qbt(e,t,r,n){var i=t.width/2,a=t.height/2,o=e.x,s=e.y,l=e.theta,u=Math.cos(l)*i,c=Math.sin(l)*i,f=(o>n.center?n.right-o:o-n.left)/(u+Math.abs(Math.sin(l)*a)),h=(s>n.middle?n.bottom-s:s-n.top)/(Math.abs(c)+Math.cos(l)*a);if(f<1||h<1)return 1/0;var d=Dm.EDGECOST*(1/(f-1)+1/(h-1));d+=Dm.ANGLECOST*l*l;for(var v=o-u,_=s-c,b=o+u,p=s+c,k=0;k{"use strict";var Ubt=Oa(),TG=tc(),Vbt=C4();kbe.exports=function(t){var r=t.contours,n=r.start,i=Vbt(r),a=r.size||1,o=Math.floor((i-n)/a)+1,s=r.coloring==="lines"?0:1,l=TG.extractOpts(t);isFinite(a)||(a=1,o=1);var u=l.reversescale?TG.flipScale(l.colorscale):l.colorscale,c=u.length,f=new Array(c),h=new Array(c),d,v,_=l.min,b=l.max;if(r.coloring==="heatmap"){for(v=0;v=b)&&(n<=_&&(n=_),i>=b&&(i=b),o=Math.floor((i-n)/a)+1,s=0),v=0;v_&&(f.unshift(_),h.unshift(h[0])),f[f.length-1]{"use strict";var k8=Oa(),Cbe=So(),Gbt=d8(),Hbt=AG();Lbe.exports=function(t){var r=k8.select(t).selectAll("g.contour");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=k8.select(this),a=n[0].trace,o=a.contours,s=a.line,l=o.size||1,u=o.start,c=o.type==="constraint",f=!c&&o.coloring==="lines",h=!c&&o.coloring==="fill",d=f||h?Hbt(a):null;i.selectAll("g.contourlevel").each(function(b){k8.select(this).selectAll("path").call(Cbe.lineGroupStyle,s.width,f?d(b.level):s.color,s.dash)});var v=o.labelfont;if(i.selectAll("g.contourlabels text").each(function(b){Cbe.font(k8.select(this),{weight:v.weight,style:v.style,variant:v.variant,textcase:v.textcase,lineposition:v.lineposition,shadow:v.shadow,family:v.family,size:v.size,color:v.color||(f?d(b.level):s.color)})}),c)i.selectAll("g.contourfill path").style("fill",a.fillcolor);else if(h){var _;i.selectAll("g.contourfill path").style("fill",function(b){return _===void 0&&(_=b.level),d(b.level+.5*l)}),_===void 0&&(_=u),i.selectAll("g.contourbg path").style("fill",d(_-.5*l))}}),Gbt(t)}});var L8=ye((Tcr,Ibe)=>{"use strict";var Pbe=tc(),jbt=AG(),Wbt=C4();function Xbt(e,t,r){var n=t.contours,i=t.line,a=n.size||1,o=n.coloring,s=jbt(t,{isColorbar:!0});if(o==="heatmap"){var l=Pbe.extractOpts(t);r._fillgradient=l.reversescale?Pbe.flipScale(l.colorscale):l.colorscale,r._zrange=[l.min,l.max]}else o==="fill"&&(r._fillcolor=s);r._line={color:o==="lines"?s:i.color,width:n.showlines!==!1?i.width:0,dash:i.dash},r._levels={start:n.start,end:Wbt(n),size:a}}Ibe.exports={min:"zmin",max:"zmax",calc:Xbt}});var SG=ye((Acr,Rbe)=>{"use strict";var P8=ka(),Zbt=p8();Rbe.exports=function(t,r,n,i,a){a||(a={}),a.isContour=!0;var o=Zbt(t,r,n,i,a);return o&&o.forEach(function(s){var l=s.trace;l.contours.type==="constraint"&&(l.fillcolor&&P8.opacity(l.fillcolor)?s.color=P8.addOpacity(l.fillcolor,1):l.contours.showlines&&P8.opacity(l.line.color)&&(s.color=P8.addOpacity(l.line.color,1)))}),o}});var Fbe=ye((Scr,Dbe)=>{"use strict";Dbe.exports={attributes:cG(),supplyDefaults:tbe(),crossTraceDefaults:y8(),calc:pG(),plot:E8().plot,layerName:"contourlayer",style:C8(),colorbar:L8(),hoverPoints:SG(),moduleType:"trace",name:"histogram2dcontour",basePlotModule:ph(),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{}}});var Obe=ye((Mcr,zbe)=>{"use strict";zbe.exports=Fbe()});var MG=ye((Ecr,Gbe)=>{"use strict";var qbe=Eo(),Ybt=fG(),Ube=ka(),Bbe=Ube.addOpacity,Kbt=Ube.opacity,Vbe=b8(),Nbe=Dr().isArrayOrTypedArray,Jbt=Vbe.CONSTRAINT_REDUCTION,$bt=Vbe.COMPARISON_OPS2;Gbe.exports=function(t,r,n,i,a,o){var s=r.contours,l,u,c,f=n("contours.operation");if(s._operation=Jbt[f],Qbt(n,s),f==="="?l=s.showlines=!0:(l=n("contours.showlines"),c=n("fillcolor",Bbe((t.line||{}).color||a,.5))),l){var h=c&&Kbt(c)?Bbe(r.fillcolor,1):a;u=n("line.color",h),n("line.width",2),n("line.dash")}n("line.smoothing"),Ybt(n,i,u,o)};function Qbt(e,t){var r;$bt.indexOf(t.operation)===-1?(e("contours.value",[0,1]),Nbe(t.value)?t.value.length>2?t.value=t.value.slice(2):t.length===0?t.value=[0,1]:t.length<2?(r=parseFloat(t.value[0]),t.value=[r,r+1]):t.value=[parseFloat(t.value[0]),parseFloat(t.value[1])]:qbe(t.value)&&(r=parseFloat(t.value),t.value=[r,r+1])):(e("contours.value",0),qbe(t.value)||(Nbe(t.value)?t.value=parseFloat(t.value[0]):t.value=0))}});var Wbe=ye((kcr,jbe)=>{"use strict";var EG=Dr(),e2t=QI(),t2t=Pg(),r2t=MG(),i2t=T8(),n2t=A8(),a2t=T4(),Hbe=k4();jbe.exports=function(t,r,n,i){function a(u,c){return EG.coerce(t,r,Hbe,u,c)}function o(u){return EG.coerce2(t,r,Hbe,u)}var s=e2t(t,r,a,i);if(!s){r.visible=!1;return}t2t(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hoverongaps"),a("hovertemplate"),a("hovertemplatefallback");var l=a("contours.type")==="constraint";a("connectgaps",EG.isArray1D(r.z)),l?r2t(t,r,a,i,n):(i2t(t,r,a,o),n2t(t,r,a,i)),r.contours&&r.contours.coloring==="heatmap"&&a2t(a,i),a("zorder")}});var Zbe=ye((Ccr,Xbe)=>{"use strict";Xbe.exports={attributes:k4(),supplyDefaults:Wbe(),calc:pG(),plot:E8().plot,style:C8(),colorbar:L8(),hoverPoints:SG(),moduleType:"trace",name:"contour",basePlotModule:ph(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}});var Kbe=ye((Lcr,Ybe)=>{"use strict";Ybe.exports=Zbe()});var kG=ye((Pcr,Qbe)=>{"use strict";var{hovertemplateAttrs:o2t,texttemplateAttrs:s2t,templatefallbackAttrs:Jbe}=Ll(),l2t=kg(),a0=pf(),u2t=Gl(),$be=Tu(),c2t=Pd().dash,M_=Ao().extendFlat,j0=a0.marker,D4=a0.line,f2t=j0.line;Qbe.exports={a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},c:{valType:"data_array",editType:"calc"},sum:{valType:"number",dflt:0,min:0,editType:"calc"},mode:M_({},a0.mode,{dflt:"markers"}),text:M_({},a0.text,{}),texttemplate:s2t({editType:"plot"},{keys:["a","b","c","text"]}),texttemplatefallback:Jbe({editType:"plot"}),hovertext:M_({},a0.hovertext,{}),line:{color:D4.color,width:D4.width,dash:c2t,backoff:D4.backoff,shape:M_({},D4.shape,{values:["linear","spline"]}),smoothing:D4.smoothing,editType:"calc"},connectgaps:a0.connectgaps,cliponaxis:a0.cliponaxis,fill:M_({},a0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:l2t(),marker:M_({symbol:j0.symbol,opacity:j0.opacity,angle:j0.angle,angleref:j0.angleref,standoff:j0.standoff,maxdisplayed:j0.maxdisplayed,size:j0.size,sizeref:j0.sizeref,sizemin:j0.sizemin,sizemode:j0.sizemode,line:M_({width:f2t.width,editType:"calc"},$be("marker.line")),gradient:j0.gradient,editType:"calc"},$be("marker")),textfont:a0.textfont,textposition:a0.textposition,selected:a0.selected,unselected:a0.unselected,hoverinfo:M_({},u2t.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:a0.hoveron,hovertemplate:o2t(),hovertemplatefallback:Jbe()}});var i2e=ye((Icr,r2e)=>{"use strict";var e2e=Dr(),h2t=Sm(),qT=Ru(),d2t=$p(),v2t=R0(),t2e=eT(),p2t=D0(),g2t=Ig(),m2t=kG();r2e.exports=function(t,r,n,i){function a(h,d){return e2e.coerce(t,r,m2t,h,d)}var o=a("a"),s=a("b"),l=a("c"),u;if(o?(u=o.length,s?(u=Math.min(u,s.length),l&&(u=Math.min(u,l.length))):l?u=Math.min(u,l.length):u=0):s&&l&&(u=Math.min(s.length,l.length)),!u){r.visible=!1;return}r._length=u,a("sum"),a("text"),a("hovertext"),r.hoveron!=="fills"&&(a("hovertemplate"),a("hovertemplatefallback"));var c=u{"use strict";var CG=ho();n2e.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.aLabel=CG.tickText(a.aaxis,t.a,!0).text,i.bLabel=CG.tickText(a.baxis,t.b,!0).text,i.cLabel=CG.tickText(a.caxis,t.c,!0).text,i}});var u2e=ye((Dcr,l2e)=>{"use strict";var LG=Eo(),y2t=F0(),_2t=km(),x2t=z0(),b2t=O0().calcMarkerSize,o2e=["a","b","c"],s2e={a:["b","c"],b:["a","c"],c:["a","b"]};l2e.exports=function(t,r){var n=t._fullLayout[r.subplot],i=n.sum,a=r.sum||i,o={a:r.a,b:r.b,c:r.c},s=r.ids,l,u,c,f,h,d;for(l=0;l{"use strict";var w2t=oT();c2e.exports=function(t,r,n){var i=r.plotContainer;i.select(".scatterlayer").selectAll("*").remove();for(var a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:i,layerClipId:r._hasClipOnAxisFalse?r.clipIdRelative:null},l=r.layers.frontplot.select("g.scatterlayer"),u=0;u{"use strict";var T2t=cT();h2e.exports=function(t,r,n,i){var a=T2t(t,r,n,i);if(!a||a[0].index===!1)return;var o=a[0];if(o.index===void 0){var s=1-o.y0/t.ya._length,l=t.xa._length,u=l*s/2,c=l-u;return o.x0=Math.max(Math.min(o.x0,c),u),o.x1=Math.max(Math.min(o.x1,c),u),a}var f=o.cd[o.index],h=o.trace,d=o.subplot;o.a=f.a,o.b=f.b,o.c=f.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var v={};v[h.subplot]={_subplot:d};var _=h._module.formatLabels(f,h,v);o.aLabel=_.aLabel,o.bLabel=_.bLabel,o.cLabel=_.cLabel;var b=f.hi||h.hoverinfo,p=[];function k(S,L){p.push(S._hovertitle+": "+L)}if(!h.hovertemplate){var E=b.split("+");E.indexOf("all")!==-1&&(E=["a","b","c"]),E.indexOf("a")!==-1&&k(d.aaxis,o.aLabel),E.indexOf("b")!==-1&&k(d.baxis,o.bLabel),E.indexOf("c")!==-1&&k(d.caxis,o.cLabel)}return o.extraText=p.join("
"),o.hovertemplate=h.hovertemplate,a}});var p2e=ye((Ocr,v2e)=>{"use strict";v2e.exports=function(t,r,n,i,a){if(r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),i[a]){var o=i[a];t.a=o.a,t.b=o.b,t.c=o.c}else t.a=r.a,t.b=r.b,t.c=r.c;return t}});var M2e=ye((qcr,S2e)=>{"use strict";var b2e=Oa(),A2t=cd(),PG=qa(),By=Dr(),Fm=By.strTranslate,I8=By._,NT=ka(),R8=So(),F4=ym(),IG=Ao().extendFlat,S2t=Mc(),E_=ho(),g2e=yv(),m2e=vf(),w2e=Mg(),y2e=w2e.freeMode,M2t=w2e.rectMode,RG=Eb(),E2t=Of().prepSelect,k2t=Of().selectOnClick,C2t=Of().clearOutline,L2t=Of().clearSelectionsCache,T2e=hd();function A2e(e,t){this.id=e.id,this.graphDiv=e.graphDiv,this.init(t),this.makeFramework(t),this.updateFx(t),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}S2e.exports=A2e;var zm=A2e.prototype;zm.init=function(e){this.container=e._ternarylayer,this.defs=e._defs,this.layoutId=e._uid,this.traceHash={},this.layers={}};zm.plot=function(e,t){var r=this,n=t[r.id],i=t._size;r._hasClipOnAxisFalse=!1;for(var a=0;aBT*u?(p=u,b=p*BT):(b=l,p=b/BT),k=o*b/l,E=s*p/u,v=t.l+t.w*i-b/2,_=t.t+t.h*(1-a)-p/2,r.x0=v,r.y0=_,r.w=b,r.h=p,r.sum=c,r.xaxis={type:"linear",range:[f+2*d-c,c-f-2*h],domain:[i-k/2,i+k/2],_id:"x"},F4(r.xaxis,r.graphDiv._fullLayout),r.xaxis.setScale(),r.xaxis.isPtWithinRange=function(V){return V.a>=r.aaxis.range[0]&&V.a<=r.aaxis.range[1]&&V.b>=r.baxis.range[1]&&V.b<=r.baxis.range[0]&&V.c>=r.caxis.range[1]&&V.c<=r.caxis.range[0]},r.yaxis={type:"linear",range:[f,c-h-d],domain:[a-E/2,a+E/2],_id:"y"},F4(r.yaxis,r.graphDiv._fullLayout),r.yaxis.setScale(),r.yaxis.isPtWithinRange=function(){return!0};var S=r.yaxis.domain[0],L=r.aaxis=IG({},e.aaxis,{range:[f,c-h-d],side:"left",tickangle:(+e.aaxis.tickangle||0)-30,domain:[S,S+E*BT],anchor:"free",position:0,_id:"y",_length:b});F4(L,r.graphDiv._fullLayout),L.setScale();var x=r.baxis=IG({},e.baxis,{range:[c-f-d,h],side:"bottom",domain:r.xaxis.domain,anchor:"free",position:0,_id:"x",_length:b});F4(x,r.graphDiv._fullLayout),x.setScale();var C=r.caxis=IG({},e.caxis,{range:[c-f-h,d],side:"right",tickangle:(+e.caxis.tickangle||0)+30,domain:[S,S+E*BT],anchor:"free",position:0,_id:"y",_length:b});F4(C,r.graphDiv._fullLayout),C.setScale();var M="M"+v+","+(_+p)+"h"+b+"l-"+b/2+",-"+p+"Z";r.clipDef.select("path").attr("d",M),r.layers.plotbg.select("path").attr("d",M);var g="M0,"+p+"h"+b+"l-"+b/2+",-"+p+"Z";r.clipDefRelative.select("path").attr("d",g);var P=Fm(v,_);r.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",P),r.clipDefRelative.select("path").attr("transform",null);var T=Fm(v-x._offset,_+p);r.layers.baxis.attr("transform",T),r.layers.bgrid.attr("transform",T);var z=Fm(v+b/2,_)+"rotate(30)"+Fm(0,-L._offset);r.layers.aaxis.attr("transform",z),r.layers.agrid.attr("transform",z);var O=Fm(v+b/2,_)+"rotate(-30)"+Fm(0,-C._offset);r.layers.caxis.attr("transform",O),r.layers.cgrid.attr("transform",O),r.drawAxes(!0),r.layers.aline.select("path").attr("d",L.showline?"M"+v+","+(_+p)+"l"+b/2+",-"+p:"M0,0").call(NT.stroke,L.linecolor||"#000").style("stroke-width",(L.linewidth||0)+"px"),r.layers.bline.select("path").attr("d",x.showline?"M"+v+","+(_+p)+"h"+b:"M0,0").call(NT.stroke,x.linecolor||"#000").style("stroke-width",(x.linewidth||0)+"px"),r.layers.cline.select("path").attr("d",C.showline?"M"+(v+b/2)+","+_+"l"+b/2+","+p:"M0,0").call(NT.stroke,C.linecolor||"#000").style("stroke-width",(C.linewidth||0)+"px"),r.graphDiv._context.staticPlot||r.initInteractions(),R8.setClipUrl(r.layers.frontplot,r._hasClipOnAxisFalse?null:r.clipId,r.graphDiv)};zm.drawAxes=function(e){var t=this,r=t.graphDiv,n=t.id.substr(7)+"title",i=t.layers,a=t.aaxis,o=t.baxis,s=t.caxis;if(t.drawAx(a),t.drawAx(o),t.drawAx(s),e){var l=Math.max(a.showticklabels?a.tickfont.size/2:0,(s.showticklabels?s.tickfont.size*.75:0)+(s.ticks==="outside"?s.ticklen*.87:0)),u=(o.showticklabels?o.tickfont.size:0)+(o.ticks==="outside"?o.ticklen:0)+3;i["a-title"]=RG.draw(r,"a"+n,{propContainer:a,propName:t.id+".aaxis.title.text",placeholder:I8(r,"Click to enter Component A title"),attributes:{x:t.x0+t.w/2,y:t.y0-a.title.font.size/3-l,"text-anchor":"middle"}}),i["b-title"]=RG.draw(r,"b"+n,{propContainer:o,propName:t.id+".baxis.title.text",placeholder:I8(r,"Click to enter Component B title"),attributes:{x:t.x0-u,y:t.y0+t.h+o.title.font.size*.83+u,"text-anchor":"middle"}}),i["c-title"]=RG.draw(r,"c"+n,{propContainer:s,propName:t.id+".caxis.title.text",placeholder:I8(r,"Click to enter Component C title"),attributes:{x:t.x0+t.w+u,y:t.y0+t.h+s.title.font.size*.83+u,"text-anchor":"middle"}})}};zm.drawAx=function(e){var t=this,r=t.graphDiv,n=e._name,i=n.charAt(0),a=e._id,o=t.layers[n],s=30,l=i+"tickLayout",u=P2t(e);t[l]!==u&&(o.selectAll("."+a+"tick").remove(),t[l]=u),e.setScale();var c=E_.calcTicks(e),f=E_.clipEnds(e,c),h=E_.makeTransTickFn(e),d=E_.getTickSigns(e)[2],v=By.deg2rad(s),_=d*(e.linewidth||1)/2,b=d*e.ticklen,p=t.w,k=t.h,E=i==="b"?"M0,"+_+"l"+Math.sin(v)*b+","+Math.cos(v)*b:"M"+_+",0l"+Math.cos(v)*b+","+-Math.sin(v)*b,S={a:"M0,0l"+k+",-"+p/2,b:"M0,0l-"+p/2+",-"+k,c:"M0,0l-"+k+","+p/2}[i];E_.drawTicks(r,e,{vals:e.ticks==="inside"?f:c,layer:o,path:E,transFn:h,crisp:!1}),E_.drawGrid(r,e,{vals:f,layer:t.layers[i+"grid"],path:S,transFn:h,crisp:!1}),E_.drawLabels(r,e,{vals:c,layer:o,transFn:h,labelFns:E_.makeLabelFns(e,0,s)})};function P2t(e){return e.ticks+String(e.ticklen)+String(e.showticklabels)}var yd=T2e.MINZOOM/2+.87,I2t="m-0.87,.5h"+yd+"v3h-"+(yd+5.2)+"l"+(yd/2+2.6)+",-"+(yd*.87+4.5)+"l2.6,1.5l-"+yd/2+","+yd*.87+"Z",R2t="m0.87,.5h-"+yd+"v3h"+(yd+5.2)+"l-"+(yd/2+2.6)+",-"+(yd*.87+4.5)+"l-2.6,1.5l"+yd/2+","+yd*.87+"Z",D2t="m0,1l"+yd/2+","+yd*.87+"l2.6,-1.5l-"+(yd/2+2.6)+",-"+(yd*.87+4.5)+"l-"+(yd/2+2.6)+","+(yd*.87+4.5)+"l2.6,1.5l"+yd/2+",-"+yd*.87+"Z",F2t="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",_2e=!0;zm.clearOutline=function(){L2t(this.dragOptions),C2t(this.dragOptions.gd)};zm.initInteractions=function(){var e=this,t=e.layers.plotbg.select("path").node(),r=e.graphDiv,n=r._fullLayout._zoomlayer,i,a;this.dragOptions={element:t,gd:r,plotinfo:{id:e.id,domain:r._fullLayout[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis},subplot:e.id,prepFn:function(T,z,O){e.dragOptions.xaxes=[e.xaxis],e.dragOptions.yaxes=[e.yaxis],i=r._fullLayout._invScaleX,a=r._fullLayout._invScaleY;var V=e.dragOptions.dragmode=r._fullLayout.dragmode;y2e(V)?e.dragOptions.minDrag=1:e.dragOptions.minDrag=void 0,V==="zoom"?(e.dragOptions.moveFn=x,e.dragOptions.clickFn=p,e.dragOptions.doneFn=C,k(T,z,O)):V==="pan"?(e.dragOptions.moveFn=g,e.dragOptions.clickFn=p,e.dragOptions.doneFn=P,M(),e.clearOutline(r)):(M2t(V)||y2e(V))&&E2t(T,z,O,e.dragOptions,V)}};var o,s,l,u,c,f,h,d,v,_;function b(T){var z={};return z[e.id+".aaxis.min"]=T.a,z[e.id+".baxis.min"]=T.b,z[e.id+".caxis.min"]=T.c,z}function p(T,z){var O=r._fullLayout.clickmode;x2e(r),T===2&&(r.emit("plotly_doubleclick",null),PG.call("_guiRelayout",r,b({a:0,b:0,c:0}))),O.indexOf("select")>-1&&T===1&&k2t(z,r,[e.xaxis],[e.yaxis],e.id,e.dragOptions),O.indexOf("event")>-1&&m2e.click(r,z,e.id)}function k(T,z,O){var V=t.getBoundingClientRect();o=z-V.left,s=O-V.top,r._fullLayout._calcInverseTransform(r);var G=r._fullLayout._invTransform,Z=By.apply3DTransform(G)(o,s);o=Z[0],s=Z[1],l={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},c=l,u=e.aaxis.range[1]-l.a,f=A2t(e.graphDiv._fullLayout[e.id].bgcolor).getLuminance(),h="M0,"+e.h+"L"+e.w/2+", 0L"+e.w+","+e.h+"Z",d=!1,v=n.append("path").attr("class","zoombox").attr("transform",Fm(e.x0,e.y0)).style({fill:f>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",h),_=n.append("path").attr("class","zoombox-corners").attr("transform",Fm(e.x0,e.y0)).style({fill:NT.background,stroke:NT.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),e.clearOutline(r)}function E(T,z){return 1-z/e.h}function S(T,z){return 1-(T+(e.h-z)/Math.sqrt(3))/e.w}function L(T,z){return(T-(e.h-z)/Math.sqrt(3))/e.w}function x(T,z){var O=o+T*i,V=s+z*a,G=Math.max(0,Math.min(1,E(o,s),E(O,V))),Z=Math.max(0,Math.min(1,S(o,s),S(O,V))),H=Math.max(0,Math.min(1,L(o,s),L(O,V))),N=(G/2+H)*e.w,j=(1-G/2-Z)*e.w,re=(N+j)/2,oe=j-N,_e=(1-G)*e.h,Ee=_e-oe/BT;oe.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),_.transition().style("opacity",1).duration(200),d=!0),r.emit("plotly_relayouting",b(c))}function C(){x2e(r),c!==l&&(PG.call("_guiRelayout",r,b(c)),_2e&&r.data&&r._context.showTips&&(By.notifier(I8(r,"Double-click to zoom back out"),"long"),_2e=!1))}function M(){l={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},c=l}function g(T,z){var O=T/e.xaxis._m,V=z/e.yaxis._m;c={a:l.a-V,b:l.b+(O+V)/2,c:l.c-(O-V)/2};var G=[c.a,c.b,c.c].sort(By.sorterAsc),Z={a:G.indexOf(c.a),b:G.indexOf(c.b),c:G.indexOf(c.c)};G[0]<0&&(G[1]+G[0]/2<0?(G[2]+=G[0]+G[1],G[0]=G[1]=0):(G[2]+=G[0]/2,G[1]+=G[0]/2,G[0]=0),c={a:G[Z.a],b:G[Z.b],c:G[Z.c]},z=(l.a-c.a)*e.yaxis._m,T=(l.c-c.c-l.b+c.b)*e.xaxis._m);var H=Fm(e.x0+T,e.y0+z);e.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",H);var N=Fm(-T,-z);e.clipDefRelative.select("path").attr("transform",N),e.aaxis.range=[c.a,e.sum-c.b-c.c],e.baxis.range=[e.sum-c.a-c.c,c.b],e.caxis.range=[e.sum-c.a-c.b,c.c],e.drawAxes(!1),e._hasClipOnAxisFalse&&e.plotContainer.select(".scatterlayer").selectAll(".trace").call(R8.hideOutsideRangePoints,e),r.emit("plotly_relayouting",b(c))}function P(){PG.call("_guiRelayout",r,b(c))}t.onmousemove=function(T){m2e.hover(r,T,e.id),r._fullLayout._lasthover=t,r._fullLayout._hoversubplot=e.id},t.onmouseout=function(T){r._dragging||g2e.unhover(r,T)},g2e.init(this.dragOptions)};function x2e(e){b2e.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}});var zG=ye((Bcr,E2e)=>{"use strict";var z2t=Lh(),O2t=Cc().attributes,su=Rd(),q2t=mc().overrideAll,DG=Ao().extendFlat,FG={title:{text:su.title.text,font:su.title.font},color:su.color,tickmode:su.minor.tickmode,nticks:DG({},su.nticks,{dflt:6,min:1}),tick0:su.tick0,dtick:su.dtick,tickvals:su.tickvals,ticktext:su.ticktext,ticks:su.ticks,ticklen:su.ticklen,tickwidth:su.tickwidth,tickcolor:su.tickcolor,ticklabelstep:su.ticklabelstep,showticklabels:su.showticklabels,labelalias:su.labelalias,showtickprefix:su.showtickprefix,tickprefix:su.tickprefix,showticksuffix:su.showticksuffix,ticksuffix:su.ticksuffix,showexponent:su.showexponent,exponentformat:su.exponentformat,minexponent:su.minexponent,separatethousands:su.separatethousands,tickfont:su.tickfont,tickangle:su.tickangle,tickformat:su.tickformat,tickformatstops:su.tickformatstops,hoverformat:su.hoverformat,showline:DG({},su.showline,{dflt:!0}),linecolor:su.linecolor,linewidth:su.linewidth,showgrid:DG({},su.showgrid,{dflt:!0}),gridcolor:su.gridcolor,gridwidth:su.gridwidth,griddash:su.griddash,layer:su.layer,min:{valType:"number",dflt:0,min:0}},D8=E2e.exports=q2t({domain:O2t({name:"ternary"}),bgcolor:{valType:"color",dflt:z2t.background},sum:{valType:"number",dflt:1,min:0},aaxis:FG,baxis:FG,caxis:FG},"plot","from-root");D8.uirevision={valType:"any",editType:"none"};D8.aaxis.uirevision=D8.baxis.uirevision=D8.caxis.uirevision={valType:"any",editType:"none"}});var k_=ye((Ncr,k2e)=>{"use strict";var B2t=Dr(),N2t=vl(),U2t=Cc().defaults;k2e.exports=function(t,r,n,i){var a=i.type,o=i.attributes,s=i.handleDefaults,l=i.partition||"x",u=r._subplots[a],c=u.length,f=c&&u[0].replace(/\d+$/,""),h,d;function v(k,E){return B2t.coerce(h,d,o,k,E)}for(var _=0;_{"use strict";var V2t=ka(),G2t=vl(),F8=Dr(),H2t=k_(),j2t=e_(),W2t=t_(),X2t=S3(),Z2t=bb(),Y2t=e4(),L2e=zG(),C2e=["aaxis","baxis","caxis"];P2e.exports=function(t,r,n){H2t(t,r,n,{type:"ternary",attributes:L2e,handleDefaults:K2t,font:r.font,paper_bgcolor:r.paper_bgcolor})};function K2t(e,t,r,n){var i=r("bgcolor"),a=r("sum");n.bgColor=V2t.combine(i,n.paper_bgcolor);for(var o,s,l,u=0;u=a&&(c.min=0,f.min=0,h.min=0,e.aaxis&&delete e.aaxis.min,e.baxis&&delete e.baxis.min,e.caxis&&delete e.caxis.min)}function J2t(e,t,r,n){var i=L2e[t._name];function a(d,v){return F8.coerce(e,t,i,d,v)}a("uirevision",n.uirevision),t.type="linear";var o=a("color"),s=o!==i.color.dflt?o:r.font.color,l=t._name,u=l.charAt(0).toUpperCase(),c="Component "+u,f=a("title.text",c);t._hovertitle=f===c?f:u,F8.coerceFont(a,"title.font",r.font,{overrideDflt:{size:F8.bigFont(r.font.size),color:s}}),a("min"),Z2t(e,t,a,"linear"),W2t(e,t,a,"linear"),j2t(e,t,a,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),X2t(e,t,a,{outerTicks:!0});var h=a("showticklabels");h&&(F8.coerceFont(a,"tickfont",r.font,{overrideDflt:{color:s}}),a("tickangle"),a("tickformat")),Y2t(e,t,a,{dfltColor:o,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i}),a("hoverformat"),a("layer")}});var R2e=ye(W0=>{"use strict";var $2t=M2e(),Q2t=Id().getSubplotCalcData,ewt=Dr().counterRegex,UT="ternary";W0.name=UT;var twt=W0.attr="subplot";W0.idRoot=UT;W0.idRegex=W0.attrRegex=ewt(UT);var rwt=W0.attributes={};rwt[twt]={valType:"subplotid",dflt:"ternary",editType:"calc"};W0.layoutAttributes=zG();W0.supplyLayoutDefaults=I2e();W0.plot=function(t){for(var r=t._fullLayout,n=t.calcdata,i=r._subplots[UT],a=0;a{"use strict";D2e.exports={attributes:kG(),supplyDefaults:i2e(),colorbar:$d(),formatLabels:a2e(),calc:u2e(),plot:f2e(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:d2e(),selectPoints:fT(),eventData:p2e(),moduleType:"trace",name:"scatterternary",basePlotModule:R2e(),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}});var O2e=ye((Hcr,z2e)=>{"use strict";z2e.exports=F2e()});var OG=ye((jcr,B2e)=>{"use strict";var Fh=_4(),VT=Ao().extendFlat,q2e=df().axisHoverFormat;B2e.exports={y:Fh.y,x:Fh.x,x0:Fh.x0,y0:Fh.y0,xhoverformat:q2e("x"),yhoverformat:q2e("y"),name:VT({},Fh.name,{}),orientation:VT({},Fh.orientation,{}),bandwidth:{valType:"number",min:0,editType:"calc"},scalegroup:{valType:"string",dflt:"",editType:"calc"},scalemode:{valType:"enumerated",values:["width","count"],dflt:"width",editType:"calc"},spanmode:{valType:"enumerated",values:["soft","hard","manual"],dflt:"soft",editType:"calc"},span:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:Fh.fillcolor,points:VT({},Fh.boxpoints,{}),jitter:VT({},Fh.jitter,{}),pointpos:VT({},Fh.pointpos,{}),width:VT({},Fh.width,{}),marker:Fh.marker,text:Fh.text,hovertext:Fh.hovertext,hovertemplate:Fh.hovertemplate,hovertemplatefallback:Fh.hovertemplatefallback,quartilemethod:Fh.quartilemethod,box:{visible:{valType:"boolean",dflt:!1,editType:"plot"},width:{valType:"number",min:0,max:1,dflt:.25,editType:"plot"},fillcolor:{valType:"color",editType:"style"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"style"},editType:"plot"},meanline:{visible:{valType:"boolean",dflt:!1,editType:"plot"},color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"plot"},side:{valType:"enumerated",values:["both","positive","negative"],dflt:"both",editType:"calc"},offsetgroup:Fh.offsetgroup,alignmentgroup:Fh.alignmentgroup,selected:Fh.selected,unselected:Fh.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style"},zorder:Fh.zorder}});var NG=ye((Wcr,N2e)=>{"use strict";var qG=x4(),BG=Dr().extendFlat;N2e.exports={violinmode:BG({},qG.boxmode,{}),violingap:BG({},qG.boxgap,{}),violingroupgap:BG({},qG.boxgroupgap,{})}});var j2e=ye((Xcr,H2e)=>{"use strict";var U2e=Dr(),iwt=ka(),V2e=w4(),G2e=OG();H2e.exports=function(t,r,n,i){function a(L,x){return U2e.coerce(t,r,G2e,L,x)}function o(L,x){return U2e.coerce2(t,r,G2e,L,x)}if(V2e.handleSampleDefaults(t,r,a,i),r.visible!==!1){a("bandwidth"),a("side");var s=a("width");s||(a("scalegroup",r.name),a("scalemode"));var l=a("span"),u;Array.isArray(l)&&(u="manual"),a("spanmode",u);var c=a("line.color",(t.marker||{}).color||n),f=a("line.width"),h=a("fillcolor",iwt.addOpacity(r.line.color,.5));V2e.handlePointsDefaults(t,r,a,{prefix:""});var d=o("box.width"),v=o("box.fillcolor",h),_=o("box.line.color",c),b=o("box.line.width",f),p=a("box.visible",!!(d||v||_||b));p||(r.box={visible:!1});var k=o("meanline.color",c),E=o("meanline.width",f),S=a("meanline.visible",!!(k||E));S||(r.meanline={visible:!1}),a("quartilemethod"),a("zorder")}}});var X2e=ye((Zcr,W2e)=>{"use strict";var nwt=Dr(),awt=NG(),owt=XI();W2e.exports=function(t,r,n){function i(a,o){return nwt.coerce(t,r,awt,a,o)}owt._supply(t,r,n,i,"violin")}});var z8=ye(s2=>{"use strict";var swt=Dr(),lwt={gaussian:function(e){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*e*e)}};s2.makeKDE=function(e,t,r){var n=r.length,i=lwt.gaussian,a=e.bandwidth,o=1/(n*a);return function(s){for(var l=0,u=0;u{"use strict";var UG=Dr(),VG=ho(),uwt=RV(),Z2e=z8(),cwt=fs().BADNUM;Y2e.exports=function(t,r){var n=uwt(t,r);if(n[0].t.empty)return n;for(var i=t._fullLayout,a=VG.getFromId(t,r[r.orientation==="h"?"xaxis":"yaxis"]),o=1/0,s=-1/0,l=0,u=0,c=0;c{"use strict";var vwt=YI().setPositionOffset,J2e=["v","h"];$2e.exports=function(t,r){for(var n=t.calcdata,i=r.xaxis,a=r.yaxis,o=0;o{"use strict";var GG=Oa(),HG=Dr(),pwt=So(),jG=KI(),gwt=yU(),mwt=z8();ewe.exports=function(t,r,n,i){var a=t._context.staticPlot,o=t._fullLayout,s=r.xaxis,l=r.yaxis;function u(c,f){var h=gwt(c,{xaxis:s,yaxis:l,trace:f,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return pwt.smoothopen(h[0],1)}HG.makeTraceGroups(i,n,"trace violins").each(function(c){var f=GG.select(this),h=c[0],d=h.t,v=h.trace;if(v.visible!==!0||d.empty){f.remove();return}var _=d.bPos,b=d.bdPos,p=r[d.valLetter+"axis"],k=r[d.posLetter+"axis"],E=v.side==="both",S=E||v.side==="positive",L=E||v.side==="negative",x=f.selectAll("path.violin").data(HG.identity);x.enter().append("path").style("vector-effect",a?"none":"non-scaling-stroke").attr("class","violin"),x.exit().remove(),x.each(function(V){var G=GG.select(this),Z=V.density,H=Z.length,N=k.c2l(V.pos+_,!0),j=k.l2p(N),re;if(v.width)re=d.maxKDE/b;else{var oe=o._violinScaleGroupStats[v.scalegroup];re=v.scalemode==="count"?oe.maxKDE/b*(oe.maxCount/V.pts.length):oe.maxKDE/b}var _e,Ee,Ce,me,ie,Se,Le;if(S){for(Se=new Array(H),me=0;me{"use strict";var rwe=Oa(),GT=ka(),ywt=op().stylePoints;iwe.exports=function(t){var r=rwe.select(t).selectAll("g.trace.violins");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=n[0].trace,a=rwe.select(this),o=i.box||{},s=o.line||{},l=i.meanline||{},u=l.width;a.selectAll("path.violin").style("stroke-width",i.line.width+"px").call(GT.stroke,i.line.color).call(GT.fill,i.fillcolor),a.selectAll("path.box").style("stroke-width",s.width+"px").call(GT.stroke,s.color).call(GT.fill,o.fillcolor);var c={"stroke-width":u+"px","stroke-dasharray":2*u+"px,"+u+"px"};a.selectAll("path.mean").style(c).call(GT.stroke,l.color),a.selectAll("path.meanline").style(c).call(GT.stroke,l.color),ywt(a,i,t)})}});var lwe=ye((efr,swe)=>{"use strict";var _wt=ka(),WG=Dr(),xwt=ho(),awe=qV(),owe=z8();swe.exports=function(t,r,n,i,a){a||(a={});var o=a.hoverLayer,s=t.cd,l=s[0].trace,u=l.hoveron,c=u.indexOf("violins")!==-1,f=u.indexOf("kde")!==-1,h=[],d,v;if(c||f){var _=awe.hoverOnBoxes(t,r,n,i);if(f&&_.length>0){var b=t.xa,p=t.ya,k,E,S,L,x;l.orientation==="h"?(x=r,k="y",S=p,E="x",L=b):(x=n,k="x",S=b,E="y",L=p);var C=s[t.index];if(x>=C.span[0]&&x<=C.span[1]){var M=WG.extendFlat({},t),g=L.c2p(x,!0),P=owe.getKdeValue(C,l,x),T=owe.getPositionOnKdePath(C,l,g),z=S._offset,O=S._length;M[k+"0"]=T[0],M[k+"1"]=T[1],M[E+"0"]=M[E+"1"]=g,M[E+"Label"]=E+": "+xwt.hoverLabelText(L,x,l[E+"hoverformat"])+", "+s[0].t.labels.kde+" "+P.toFixed(3);for(var V=0,G=0;G<_.length;G++)if(_[G].attr==="med"){V=G;break}M.spikeDistance=_[V].spikeDistance;var Z=k+"Spike";M[Z]=_[V][Z],_[V].spikeDistance=void 0,_[V][Z]=void 0,M.hovertemplate=!1,h.push(M),v={},v[k+"1"]=WG.constrain(z+T[0],z,z+O),v[k+"2"]=WG.constrain(z+T[1],z,z+O),v[E+"1"]=v[E+"2"]=L._offset+g}}c&&(h=h.concat(_))}u.indexOf("points")!==-1&&(d=awe.hoverOnPoints(t,r,n));var H=o.selectAll(".violinline-"+l.uid).data(v?[0]:[]);return H.enter().append("line").classed("violinline-"+l.uid,!0).attr("stroke-width",1.5),H.exit().remove(),H.attr(v).call(_wt.stroke,t.color),i==="closest"?d?[d]:h:(d&&h.push(d),h)}});var cwe=ye((tfr,uwe)=>{"use strict";uwe.exports={attributes:OG(),layoutAttributes:NG(),supplyDefaults:j2e(),crossTraceDefaults:w4().crossTraceDefaults,supplyLayoutDefaults:X2e(),calc:K2e(),crossTraceCalc:Q2e(),plot:twe(),style:nwe(),styleOnSelect:op().styleOnSelect,hoverPoints:lwe(),selectPoints:BV(),moduleType:"trace",name:"violin",basePlotModule:ph(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{}}});var hwe=ye((rfr,fwe)=>{"use strict";fwe.exports=cwe()});var vwe=ye((ifr,dwe)=>{"use strict";dwe.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}});var ZG=ye((nfr,ywe)=>{"use strict";var jc=Lm(),XG=pf().line,bwt=Gl(),pwe=df().axisHoverFormat,{hovertemplateAttrs:wwt,texttemplateAttrs:Twt,templatefallbackAttrs:gwe}=Ll(),mwe=vwe(),Ny=Ao().extendFlat,Awt=ka();ywe.exports={x:jc.x,x0:jc.x0,dx:jc.dx,y:jc.y,y0:jc.y0,dy:jc.dy,xperiod:jc.xperiod,yperiod:jc.yperiod,xperiod0:jc.xperiod0,yperiod0:jc.yperiod0,xperiodalignment:jc.xperiodalignment,yperiodalignment:jc.yperiodalignment,xhoverformat:pwe("x"),yhoverformat:pwe("y"),hovertext:jc.hovertext,hovertemplate:wwt({},{keys:mwe.eventDataKeys}),hovertemplatefallback:gwe(),hoverinfo:Ny({},bwt.hoverinfo,{flags:["name","x","y","text","percent initial","percent previous","percent total"]}),textinfo:{valType:"flaglist",flags:["label","text","percent initial","percent previous","percent total","value"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:Twt({editType:"plot"},{keys:mwe.eventDataKeys.concat(["label","value"])}),texttemplatefallback:gwe({editType:"plot"}),text:jc.text,textposition:jc.textposition,insidetextanchor:Ny({},jc.insidetextanchor,{dflt:"middle"}),textangle:Ny({},jc.textangle,{dflt:0}),textfont:jc.textfont,insidetextfont:jc.insidetextfont,outsidetextfont:jc.outsidetextfont,constraintext:jc.constraintext,cliponaxis:jc.cliponaxis,orientation:Ny({},jc.orientation,{}),offset:Ny({},jc.offset,{arrayOk:!1}),width:Ny({},jc.width,{arrayOk:!1}),marker:Swt(),connector:{fillcolor:{valType:"color",editType:"style"},line:{color:Ny({},XG.color,{dflt:Awt.defaultLine}),width:Ny({},XG.width,{dflt:0,editType:"plot"}),dash:XG.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:jc.offsetgroup,alignmentgroup:jc.alignmentgroup,zorder:jc.zorder};function Swt(){var e=Ny({},jc.marker);return delete e.pattern,delete e.cornerradius,e}});var YG=ye((afr,_we)=>{"use strict";_we.exports={funnelmode:{valType:"enumerated",values:["stack","group","overlay"],dflt:"stack",editType:"calc"},funnelgap:{valType:"number",min:0,max:1,editType:"calc"},funnelgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var JG=ye((ofr,bwe)=>{"use strict";var O8=Dr(),Mwt=Hb(),Ewt=r0().handleText,kwt=Q3(),Cwt=Pg(),xwe=ZG(),KG=ka();function Lwt(e,t,r,n){function i(f,h){return O8.coerce(e,t,xwe,f,h)}var a=kwt(e,t,n,i);if(!a){t.visible=!1;return}Cwt(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("orientation",t.y&&!t.x?"v":"h"),i("offset"),i("width");var o=i("text");i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var s=i("textposition");Ewt(e,t,n,i,s,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&!t.texttemplate&&i("textinfo",O8.isArrayOrTypedArray(o)?"text+value":"value");var l=i("marker.color",r);i("marker.line.color",KG.defaultLine),i("marker.line.width");var u=i("connector.visible");if(u){i("connector.fillcolor",Pwt(l));var c=i("connector.line.width");c&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function Pwt(e){var t=O8.isArrayOrTypedArray(e)?"#000":e;return KG.addOpacity(t,.5*KG.opacity(t))}function Iwt(e,t){var r,n;function i(o){return O8.coerce(n._input,n,xwe,o)}for(var a=0;a{"use strict";var Rwt=Dr(),Dwt=YG();wwe.exports=function(e,t,r){var n=!1;function i(s,l){return Rwt.coerce(e,t,Dwt,s,l)}for(var a=0;a{"use strict";var HT=Dr();Awe.exports=function(t,r){for(var n=0;n{"use strict";var Mwe=ho(),Ewe=Rg(),Fwt=Swe(),zwt=z0(),z4=fs().BADNUM;kwe.exports=function(t,r){var n=Mwe.getFromId(t,r.xaxis||"x"),i=Mwe.getFromId(t,r.yaxis||"y"),a,o,s,l,u,c,f,h;r.orientation==="h"?(a=n.makeCalcdata(r,"x"),s=i.makeCalcdata(r,"y"),l=Ewe(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),l=Ewe(r,n,"x",s),u=!!r.xperiodalignment,c="x"),o=l.vals;var d=Math.min(o.length,a.length),v=new Array(d);for(r._base=[],f=0;f{"use strict";var Lwe=jb().setGroupPositions;Pwe.exports=function(t,r){var n=t._fullLayout,i=t._fullData,a=t.calcdata,o=r.xaxis,s=r.yaxis,l=[],u=[],c=[],f,h;for(h=0;h{"use strict";var q8=Oa(),L_=Dr(),Rwe=So(),C_=fs().BADNUM,Owt=n2(),qwt=bv().clearMinTextSize;Fwe.exports=function(t,r,n,i){var a=t._fullLayout;qwt("funnel",a),Bwt(t,r,n,i),Nwt(t,r,n,i),Owt.plot(t,r,n,i,{mode:a.funnelmode,norm:a.funnelmode,gap:a.funnelgap,groupgap:a.funnelgroupgap})};function Bwt(e,t,r,n){var i=t.xaxis,a=t.yaxis;L_.makeTraceGroups(n,r,"trace bars").each(function(o){var s=q8.select(this),l=o[0].trace,u=L_.ensureSingle(s,"g","regions");if(!l.connector||!l.connector.visible){u.remove();return}var c=l.orientation==="h",f=u.selectAll("g.region").data(L_.identity);f.enter().append("g").classed("region",!0),f.exit().remove();var h=f.size();f.each(function(d,v){if(!(v!==h-1&&!d.cNext)){var _=Dwe(d,i,a,c),b=_[0],p=_[1],k="";b[0]!==C_&&p[0]!==C_&&b[1]!==C_&&p[1]!==C_&&b[2]!==C_&&p[2]!==C_&&b[3]!==C_&&p[3]!==C_&&(c?k+="M"+b[0]+","+p[1]+"L"+b[2]+","+p[2]+"H"+b[3]+"L"+b[1]+","+p[1]+"Z":k+="M"+b[1]+","+p[1]+"L"+b[2]+","+p[3]+"V"+p[2]+"L"+b[1]+","+p[0]+"Z"),k===""&&(k="M0,0Z"),L_.ensureSingle(q8.select(this),"path").attr("d",k).call(Rwe.setClipUrl,t.layerClipId,e)}})})}function Nwt(e,t,r,n){var i=t.xaxis,a=t.yaxis;L_.makeTraceGroups(n,r,"trace bars").each(function(o){var s=q8.select(this),l=o[0].trace,u=L_.ensureSingle(s,"g","lines");if(!l.connector||!l.connector.visible||!l.connector.line.width){u.remove();return}var c=l.orientation==="h",f=u.selectAll("g.line").data(L_.identity);f.enter().append("g").classed("line",!0),f.exit().remove();var h=f.size();f.each(function(d,v){if(!(v!==h-1&&!d.cNext)){var _=Dwe(d,i,a,c),b=_[0],p=_[1],k="";b[3]!==void 0&&p[3]!==void 0&&(c?(k+="M"+b[0]+","+p[1]+"L"+b[2]+","+p[2],k+="M"+b[1]+","+p[1]+"L"+b[3]+","+p[2]):(k+="M"+b[1]+","+p[1]+"L"+b[2]+","+p[3],k+="M"+b[1]+","+p[0]+"L"+b[2]+","+p[2])),k===""&&(k="M0,0Z"),L_.ensureSingle(q8.select(this),"path").attr("d",k).call(Rwe.setClipUrl,t.layerClipId,e)}})})}function Dwe(e,t,r,n){var i=[],a=[],o=n?t:r,s=n?r:t;return i[0]=o.c2p(e.s0,!0),a[0]=s.c2p(e.p0,!0),i[1]=o.c2p(e.s1,!0),a[1]=s.c2p(e.p1,!0),i[2]=o.c2p(e.nextS0,!0),a[2]=s.c2p(e.nextP0,!0),i[3]=o.c2p(e.nextS1,!0),a[3]=s.c2p(e.nextP1,!0),n?[i,a]:[a,i]}});var Bwe=ye((hfr,qwe)=>{"use strict";var O4=Oa(),Owe=So(),QG=ka(),Uwt=N1().DESELECTDIM,Vwt=N0(),Gwt=bv().resizeText,Hwt=Vwt.styleTextPoints;function jwt(e,t,r){var n=r||O4.select(e).selectAll('g[class^="funnellayer"]').selectAll("g.trace");Gwt(e,n,"funnel"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=O4.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var l=o.marker;O4.select(this).call(QG.fill,s.mc||l.color).call(QG.stroke,s.mlc||l.line.color).call(Owe.dashLine,l.line.dash,s.mlw||l.line.width).style("opacity",o.selectedpoints&&!s.selected?Uwt:1)}}),Hwt(a,o,e),a.selectAll(".regions").each(function(){O4.select(this).selectAll("path").style("stroke-width",0).call(QG.fill,o.connector.fillcolor)}),a.selectAll(".lines").each(function(){var s=o.connector.line;Owe.lineGroupStyle(O4.select(this).selectAll("path"),s.width,s.color,s.dash)})})}qwe.exports={style:jwt}});var Vwe=ye((dfr,Uwe)=>{"use strict";var Nwe=ka().opacity,Wwt=MT().hoverOnBars,eH=Dr().formatPercent;Uwe.exports=function(t,r,n,i,a){var o=Wwt(t,r,n,i,a);if(o){var s=o.cd,l=s[0].trace,u=l.orientation==="h",c=o.index,f=s[c],h=u?"x":"y";o[h+"LabelVal"]=f.s,o.percentInitial=f.begR,o.percentInitialLabel=eH(f.begR,1),o.percentPrevious=f.difR,o.percentPreviousLabel=eH(f.difR,1),o.percentTotal=f.sumR,o.percentTotalLabel=eH(f.sumR,1);var d=f.hi||l.hoverinfo,v=[];if(d&&d!=="none"&&d!=="skip"){var _=d==="all",b=d.split("+"),p=function(k){return _||b.indexOf(k)!==-1};p("percent initial")&&v.push(o.percentInitialLabel+" of initial"),p("percent previous")&&v.push(o.percentPreviousLabel+" of previous"),p("percent total")&&v.push(o.percentTotalLabel+" of total")}return o.extraText=v.join("
"),o.color=Xwt(l,f),[o]}};function Xwt(e,t){var r=e.marker,n=t.mc||r.color,i=t.mlc||r.line.color,a=t.mlw||r.line.width;if(Nwe(n))return n;if(Nwe(i)&&a)return i}});var Hwe=ye((vfr,Gwe)=>{"use strict";Gwe.exports=function(t,r){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"percentInitial"in r&&(t.percentInitial=r.percentInitial),"percentPrevious"in r&&(t.percentPrevious=r.percentPrevious),"percentTotal"in r&&(t.percentTotal=r.percentTotal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var Wwe=ye((pfr,jwe)=>{"use strict";jwe.exports={attributes:ZG(),layoutAttributes:YG(),supplyDefaults:JG().supplyDefaults,crossTraceDefaults:JG().crossTraceDefaults,supplyLayoutDefaults:Twe(),calc:Cwe(),crossTraceCalc:Iwe(),plot:zwe(),style:Bwe().style,hoverPoints:Vwe(),eventData:Hwe(),selectPoints:ET(),moduleType:"trace",name:"funnel",basePlotModule:ph(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var Zwe=ye((gfr,Xwe)=>{"use strict";Xwe.exports=Wwe()});var Kwe=ye((mfr,Ywe)=>{"use strict";Ywe.exports={eventDataKeys:["initial","delta","final"]}});var iH=ye((yfr,e3e)=>{"use strict";var _c=Lm(),tH=pf().line,Zwt=Gl(),Jwe=df().axisHoverFormat,{hovertemplateAttrs:Ywt,texttemplateAttrs:Kwt,templatefallbackAttrs:$we}=Ll(),Qwe=Kwe(),jT=Ao().extendFlat,Jwt=ka();function rH(e){return{marker:{color:jT({},_c.marker.color,{arrayOk:!1,editType:"style"}),line:{color:jT({},_c.marker.line.color,{arrayOk:!1,editType:"style"}),width:jT({},_c.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}e3e.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:_c.x,x0:_c.x0,dx:_c.dx,y:_c.y,y0:_c.y0,dy:_c.dy,xperiod:_c.xperiod,yperiod:_c.yperiod,xperiod0:_c.xperiod0,yperiod0:_c.yperiod0,xperiodalignment:_c.xperiodalignment,yperiodalignment:_c.yperiodalignment,xhoverformat:Jwe("x"),yhoverformat:Jwe("y"),hovertext:_c.hovertext,hovertemplate:Ywt({},{keys:Qwe.eventDataKeys}),hovertemplatefallback:$we(),hoverinfo:jT({},Zwt.hoverinfo,{flags:["name","x","y","text","initial","delta","final"]}),textinfo:{valType:"flaglist",flags:["label","text","initial","delta","final"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:Kwt({editType:"plot"},{keys:Qwe.eventDataKeys.concat(["label"])}),texttemplatefallback:$we({editType:"plot"}),text:_c.text,textposition:_c.textposition,insidetextanchor:_c.insidetextanchor,textangle:_c.textangle,textfont:_c.textfont,insidetextfont:_c.insidetextfont,outsidetextfont:_c.outsidetextfont,constraintext:_c.constraintext,cliponaxis:_c.cliponaxis,orientation:_c.orientation,offset:_c.offset,width:_c.width,increasing:rH("increasing"),decreasing:rH("decreasing"),totals:rH("intermediate sums and total"),connector:{line:{color:jT({},tH.color,{dflt:Jwt.defaultLine}),width:jT({},tH.width,{editType:"plot"}),dash:tH.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:_c.offsetgroup,alignmentgroup:_c.alignmentgroup,zorder:_c.zorder}});var nH=ye((_fr,t3e)=>{"use strict";t3e.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc"},waterfallgap:{valType:"number",min:0,max:1,editType:"calc"},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var WT=ye((xfr,r3e)=>{"use strict";r3e.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}});var oH=ye((bfr,o3e)=>{"use strict";var i3e=Dr(),$wt=Hb(),Qwt=r0().handleText,e3t=Q3(),t3t=Pg(),n3e=iH(),r3t=ka(),a3e=WT(),i3t=a3e.INCREASING.COLOR,n3t=a3e.DECREASING.COLOR,a3t="#4499FF";function aH(e,t,r){e(t+".marker.color",r),e(t+".marker.line.color",r3t.defaultLine),e(t+".marker.line.width")}function o3t(e,t,r,n){function i(u,c){return i3e.coerce(e,t,n3e,u,c)}var a=e3t(e,t,n,i);if(!a){t.visible=!1;return}t3t(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("measure"),i("orientation",t.x&&!t.y?"h":"v"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var o=i("textposition");Qwt(e,t,n,i,o,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&(i("texttemplate"),i("texttemplatefallback"),t.texttemplate||i("textinfo")),aH(i,"increasing",i3t),aH(i,"decreasing",n3t),aH(i,"totals",a3t);var s=i("connector.visible");if(s){i("connector.mode");var l=i("connector.line.width");l&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function s3t(e,t){var r,n;function i(o){return i3e.coerce(n._input,n,n3e,o)}if(t.waterfallmode==="group")for(var a=0;a{"use strict";var l3t=Dr(),u3t=nH();s3e.exports=function(e,t,r){var n=!1;function i(s,l){return l3t.coerce(e,t,u3t,s,l)}for(var a=0;a{"use strict";var u3e=ho(),c3e=Rg(),f3e=Dr().mergeArray,c3t=z0(),h3e=fs().BADNUM;function sH(e){return e==="a"||e==="absolute"}function lH(e){return e==="t"||e==="total"}d3e.exports=function(t,r){var n=u3e.getFromId(t,r.xaxis||"x"),i=u3e.getFromId(t,r.yaxis||"y"),a,o,s,l,u,c;r.orientation==="h"?(a=n.makeCalcdata(r,"x"),s=i.makeCalcdata(r,"y"),l=c3e(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),l=c3e(r,n,"x",s),u=!!r.xperiodalignment,c="x"),o=l.vals;for(var f=Math.min(o.length,a.length),h=new Array(f),d=0,v,_=!1,b=0;b{"use strict";var p3e=jb().setGroupPositions;g3e.exports=function(t,r){var n=t._fullLayout,i=t._fullData,a=t.calcdata,o=r.xaxis,s=r.yaxis,l=[],u=[],c=[],f,h;for(h=0;h{"use strict";var y3e=Oa(),B8=Dr(),f3t=So(),XT=fs().BADNUM,h3t=n2(),d3t=bv().clearMinTextSize;_3e.exports=function(t,r,n,i){var a=t._fullLayout;d3t("waterfall",a),h3t.plot(t,r,n,i,{mode:a.waterfallmode,norm:a.waterfallmode,gap:a.waterfallgap,groupgap:a.waterfallgroupgap}),v3t(t,r,n,i)};function v3t(e,t,r,n){var i=t.xaxis,a=t.yaxis;B8.makeTraceGroups(n,r,"trace bars").each(function(o){var s=y3e.select(this),l=o[0].trace,u=B8.ensureSingle(s,"g","lines");if(!l.connector||!l.connector.visible){u.remove();return}var c=l.orientation==="h",f=l.connector.mode,h=u.selectAll("g.line").data(B8.identity);h.enter().append("g").classed("line",!0),h.exit().remove();var d=h.size();h.each(function(v,_){if(!(_!==d-1&&!v.cNext)){var b=p3t(v,i,a,c),p=b[0],k=b[1],E="";p[0]!==XT&&k[0]!==XT&&p[1]!==XT&&k[1]!==XT&&(f==="spanning"&&!v.isSum&&_>0&&(c?E+="M"+p[0]+","+k[1]+"V"+k[0]:E+="M"+p[1]+","+k[0]+"H"+p[0]),f!=="between"&&(v.isSum||_{"use strict";var N8=Oa(),b3e=So(),w3e=ka(),g3t=N1().DESELECTDIM,m3t=N0(),y3t=bv().resizeText,_3t=m3t.styleTextPoints;function x3t(e,t,r){var n=r||N8.select(e).selectAll('g[class^="waterfalllayer"]').selectAll("g.trace");y3t(e,n,"waterfall"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=N8.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var l=o[s.dir].marker;N8.select(this).call(w3e.fill,l.color).call(w3e.stroke,l.line.color).call(b3e.dashLine,l.line.dash,l.line.width).style("opacity",o.selectedpoints&&!s.selected?g3t:1)}}),_3t(a,o,e),a.selectAll(".lines").each(function(){var s=o.connector.line;b3e.lineGroupStyle(N8.select(this).selectAll("path"),s.width,s.color,s.dash)})})}T3e.exports={style:x3t}});var C3e=ye((Efr,k3e)=>{"use strict";var b3t=ho().hoverLabelText,S3e=ka().opacity,w3t=MT().hoverOnBars,M3e=WT(),E3e={increasing:M3e.INCREASING.SYMBOL,decreasing:M3e.DECREASING.SYMBOL};k3e.exports=function(t,r,n,i,a){var o=w3t(t,r,n,i,a);if(!o)return;var s=o.cd,l=s[0].trace,u=l.orientation==="h",c=u?"x":"y",f=u?t.xa:t.ya;function h(x){return b3t(f,x,l[c+"hoverformat"])}var d=o.index,v=s[d],_=v.isSum?v.b+v.s:v.rawS;o.initial=v.b+v.s-_,o.delta=_,o.final=o.initial+o.delta;var b=h(Math.abs(o.delta));o.deltaLabel=_<0?"("+b+")":b,o.finalLabel=h(o.final),o.initialLabel=h(o.initial);var p=v.hi||l.hoverinfo,k=[];if(p&&p!=="none"&&p!=="skip"){var E=p==="all",S=p.split("+"),L=function(x){return E||S.indexOf(x)!==-1};v.isSum||(L("final")&&(u?!L("x"):!L("y"))&&k.push(o.finalLabel),L("delta")&&(_<0?k.push(o.deltaLabel+" "+E3e.decreasing):k.push(o.deltaLabel+" "+E3e.increasing)),L("initial")&&k.push("Initial: "+o.initialLabel))}return k.length&&(o.extraText=k.join("
")),o.color=T3t(l,v),[o]};function T3t(e,t){var r=e[t.dir].marker,n=r.color,i=r.line.color,a=r.line.width;if(S3e(n))return n;if(S3e(i)&&a)return i}});var P3e=ye((kfr,L3e)=>{"use strict";L3e.exports=function(t,r){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"initial"in r&&(t.initial=r.initial),"delta"in r&&(t.delta=r.delta),"final"in r&&(t.final=r.final),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var R3e=ye((Cfr,I3e)=>{"use strict";I3e.exports={attributes:iH(),layoutAttributes:nH(),supplyDefaults:oH().supplyDefaults,crossTraceDefaults:oH().crossTraceDefaults,supplyLayoutDefaults:l3e(),calc:v3e(),crossTraceCalc:m3e(),plot:x3e(),style:A3e().style,hoverPoints:C3e(),eventData:P3e(),selectPoints:ET(),moduleType:"trace",name:"waterfall",basePlotModule:ph(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var F3e=ye((Lfr,D3e)=>{"use strict";D3e.exports=R3e()});var ZT=ye((Pfr,z3e)=>{"use strict";z3e.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(e){return e.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(e){var t=e.slice(0,3);return t[1]=t[1]+"%",t[2]=t[2]+"%",t},suffix:["\xB0","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(e){var t=e.slice(0,4);return t[1]=t[1]+"%",t[2]=t[2]+"%",t},suffix:["\xB0","%","%",""]}}}});var uH=ye((Ifr,q3e)=>{"use strict";var A3t=Gl(),S3t=pf().zorder,{hovertemplateAttrs:M3t,templatefallbackAttrs:E3t}=Ll(),O3e=Ao().extendFlat,k3t=ZT().colormodel,B4=["rgb","rgba","rgba256","hsl","hsla"],C3t=[],L3t=[];for(YT=0;YT{"use strict";var P3t=Dr(),I3t=uH(),B3e=ZT(),R3t=Py().IMAGE_URL_PREFIX;N3e.exports=function(t,r){function n(o,s){return P3t.coerce(t,r,I3t,o,s)}n("source"),r.source&&!r.source.match(R3t)&&delete r.source,r._hasSource=!!r.source;var i=n("z");if(r._hasZ=!(i===void 0||!i.length||!i[0]||!i[0].length),!r._hasZ&&!r._hasSource){r.visible=!1;return}n("x0"),n("y0"),n("dx"),n("dy");var a;r._hasZ?(n("colormodel","rgb"),a=B3e.colormodel[r.colormodel],n("zmin",a.zminDflt||a.min),n("zmax",a.zmaxDflt||a.max)):r._hasSource&&(r.colormodel="rgba256",a=B3e.colormodel[r.colormodel],r.zmin=a.zminDflt,r.zmax=a.zmaxDflt),n("zsmooth"),n("text"),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback"),r._length=null,n("zorder")}});var Uy=ye((Dfr,cH)=>{typeof Object.create=="function"?cH.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:cH.exports=function(t,r){if(r){t.super_=r;var n=function(){};n.prototype=r.prototype,t.prototype=new n,t.prototype.constructor=t}}});var fH=ye((Ffr,V3e)=>{V3e.exports=pb().EventEmitter});var j3e=ye(U8=>{"use strict";U8.byteLength=F3t;U8.toByteArray=O3t;U8.fromByteArray=N3t;var Om=[],X0=[],D3t=typeof Uint8Array!="undefined"?Uint8Array:Array,hH="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(l2=0,G3e=hH.length;l20)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");r===-1&&(r=t);var n=r===t?0:4-r%4;return[r,n]}function F3t(e){var t=H3e(e),r=t[0],n=t[1];return(r+n)*3/4-n}function z3t(e,t,r){return(t+r)*3/4-r}function O3t(e){var t,r=H3e(e),n=r[0],i=r[1],a=new D3t(z3t(e,n,i)),o=0,s=i>0?n-4:n,l;for(l=0;l>16&255,a[o++]=t>>8&255,a[o++]=t&255;return i===2&&(t=X0[e.charCodeAt(l)]<<2|X0[e.charCodeAt(l+1)]>>4,a[o++]=t&255),i===1&&(t=X0[e.charCodeAt(l)]<<10|X0[e.charCodeAt(l+1)]<<4|X0[e.charCodeAt(l+2)]>>2,a[o++]=t>>8&255,a[o++]=t&255),a}function q3t(e){return Om[e>>18&63]+Om[e>>12&63]+Om[e>>6&63]+Om[e&63]}function B3t(e,t,r){for(var n,i=[],a=t;as?s:o+a));return n===1?(t=e[r-1],i.push(Om[t>>2]+Om[t<<4&63]+"==")):n===2&&(t=(e[r-2]<<8)+e[r-1],i.push(Om[t>>10]+Om[t>>4&63]+Om[t<<2&63]+"=")),i.join("")}});var W3e=ye(dH=>{dH.read=function(e,t,r,n,i){var a,o,s=i*8-n-1,l=(1<>1,c=-7,f=r?i-1:0,h=r?-1:1,d=e[t+f];for(f+=h,a=d&(1<<-c)-1,d>>=-c,c+=s;c>0;a=a*256+e[t+f],f+=h,c-=8);for(o=a&(1<<-c)-1,a>>=-c,c+=n;c>0;o=o*256+e[t+f],f+=h,c-=8);if(a===0)a=1-u;else{if(a===l)return o?NaN:(d?-1:1)*(1/0);o=o+Math.pow(2,n),a=a-u}return(d?-1:1)*o*Math.pow(2,a-n)};dH.write=function(e,t,r,n,i,a){var o,s,l,u=a*8-i-1,c=(1<>1,h=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:a-1,v=n?1:-1,_=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=c):(o=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-o))<1&&(o--,l*=2),o+f>=1?t+=h/l:t+=h*Math.pow(2,1-f),t*l>=2&&(o++,l/=2),o+f>=c?(s=0,o=c):o+f>=1?(s=(t*l-1)*Math.pow(2,i),o=o+f):(s=t*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;e[r+d]=s&255,d+=v,s/=256,i-=8);for(o=o<0;e[r+d]=o&255,d+=v,o/=256,u-=8);e[r+d-v]|=_*128}});var c2=ye(QT=>{"use strict";var vH=j3e(),JT=W3e(),X3e=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;QT.Buffer=ea;QT.SlowBuffer=W3t;QT.INSPECT_MAX_BYTES=50;var V8=2147483647;QT.kMaxLength=V8;ea.TYPED_ARRAY_SUPPORT=U3t();!ea.TYPED_ARRAY_SUPPORT&&typeof console!="undefined"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function U3t(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch(e){return!1}}Object.defineProperty(ea.prototype,"parent",{enumerable:!0,get:function(){if(ea.isBuffer(this))return this.buffer}});Object.defineProperty(ea.prototype,"offset",{enumerable:!0,get:function(){if(ea.isBuffer(this))return this.byteOffset}});function Vy(e){if(e>V8)throw new RangeError('The value "'+e+'" is invalid for option "size"');let t=new Uint8Array(e);return Object.setPrototypeOf(t,ea.prototype),t}function ea(e,t,r){if(typeof e=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return yH(e)}return J3e(e,t,r)}ea.poolSize=8192;function J3e(e,t,r){if(typeof e=="string")return G3t(e,t);if(ArrayBuffer.isView(e))return H3t(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(qm(e,ArrayBuffer)||e&&qm(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(qm(e,SharedArrayBuffer)||e&&qm(e.buffer,SharedArrayBuffer)))return gH(e,t,r);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=e.valueOf&&e.valueOf();if(n!=null&&n!==e)return ea.from(n,t,r);let i=j3t(e);if(i)return i;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return ea.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}ea.from=function(e,t,r){return J3e(e,t,r)};Object.setPrototypeOf(ea.prototype,Uint8Array.prototype);Object.setPrototypeOf(ea,Uint8Array);function $3e(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function V3t(e,t,r){return $3e(e),e<=0?Vy(e):t!==void 0?typeof r=="string"?Vy(e).fill(t,r):Vy(e).fill(t):Vy(e)}ea.alloc=function(e,t,r){return V3t(e,t,r)};function yH(e){return $3e(e),Vy(e<0?0:_H(e)|0)}ea.allocUnsafe=function(e){return yH(e)};ea.allocUnsafeSlow=function(e){return yH(e)};function G3t(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!ea.isEncoding(t))throw new TypeError("Unknown encoding: "+t);let r=Q3e(e,t)|0,n=Vy(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}function pH(e){let t=e.length<0?0:_H(e.length)|0,r=Vy(t);for(let n=0;n=V8)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+V8.toString(16)+" bytes");return e|0}function W3t(e){return+e!=e&&(e=0),ea.alloc(+e)}ea.isBuffer=function(t){return t!=null&&t._isBuffer===!0&&t!==ea.prototype};ea.compare=function(t,r){if(qm(t,Uint8Array)&&(t=ea.from(t,t.offset,t.byteLength)),qm(r,Uint8Array)&&(r=ea.from(r,r.offset,r.byteLength)),!ea.isBuffer(t)||!ea.isBuffer(r))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===r)return 0;let n=t.length,i=r.length;for(let a=0,o=Math.min(n,i);ai.length?(ea.isBuffer(o)||(o=ea.from(o)),o.copy(i,a)):Uint8Array.prototype.set.call(i,o,a);else if(ea.isBuffer(o))o.copy(i,a);else throw new TypeError('"list" argument must be an Array of Buffers');a+=o.length}return i};function Q3e(e,t){if(ea.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||qm(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let r=e.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return mH(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return lTe(e).length;default:if(i)return n?-1:mH(e).length;t=(""+t).toLowerCase(),i=!0}}ea.byteLength=Q3e;function X3t(e,t,r){let n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,t>>>=0,r<=t))return"";for(e||(e="utf8");;)switch(e){case"hex":return iTt(this,t,r);case"utf8":case"utf-8":return tTe(this,t,r);case"ascii":return tTt(this,t,r);case"latin1":case"binary":return rTt(this,t,r);case"base64":return Q3t(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return nTt(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}ea.prototype._isBuffer=!0;function u2(e,t,r){let n=e[t];e[t]=e[r],e[r]=n}ea.prototype.swap16=function(){let t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let r=0;rr&&(t+=" ... "),""};X3e&&(ea.prototype[X3e]=ea.prototype.inspect);ea.prototype.compare=function(t,r,n,i,a){if(qm(t,Uint8Array)&&(t=ea.from(t,t.offset,t.byteLength)),!ea.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(r===void 0&&(r=0),n===void 0&&(n=t?t.length:0),i===void 0&&(i=0),a===void 0&&(a=this.length),r<0||n>t.length||i<0||a>this.length)throw new RangeError("out of range index");if(i>=a&&r>=n)return 0;if(i>=a)return-1;if(r>=n)return 1;if(r>>>=0,n>>>=0,i>>>=0,a>>>=0,this===t)return 0;let o=a-i,s=n-r,l=Math.min(o,s),u=this.slice(i,a),c=t.slice(r,n);for(let f=0;f2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,bH(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof t=="string"&&(t=ea.from(t,n)),ea.isBuffer(t))return t.length===0?-1:Z3e(e,t,r,n,i);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):Z3e(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function Z3e(e,t,r,n,i){let a=1,o=e.length,s=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(e.length<2||t.length<2)return-1;a=2,o/=2,s/=2,r/=2}function l(c,f){return a===1?c[f]:c.readUInt16BE(f*a)}let u;if(i){let c=-1;for(u=r;uo&&(r=o-s),u=r;u>=0;u--){let c=!0;for(let f=0;fi&&(n=i)):n=i;let a=t.length;n>a/2&&(n=a/2);let o;for(o=0;o>>0,isFinite(n)?(n=n>>>0,i===void 0&&(i="utf8")):(i=n,n=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let a=this.length-r;if((n===void 0||n>a)&&(n=a),t.length>0&&(n<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");let o=!1;for(;;)switch(i){case"hex":return Z3t(this,t,r,n);case"utf8":case"utf-8":return Y3t(this,t,r,n);case"ascii":case"latin1":case"binary":return K3t(this,t,r,n);case"base64":return J3t(this,t,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return $3t(this,t,r,n);default:if(o)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),o=!0}};ea.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Q3t(e,t,r){return t===0&&r===e.length?vH.fromByteArray(e):vH.fromByteArray(e.slice(t,r))}function tTe(e,t,r){r=Math.min(e.length,r);let n=[],i=t;for(;i239?4:a>223?3:a>191?2:1;if(i+s<=r){let l,u,c,f;switch(s){case 1:a<128&&(o=a);break;case 2:l=e[i+1],(l&192)===128&&(f=(a&31)<<6|l&63,f>127&&(o=f));break;case 3:l=e[i+1],u=e[i+2],(l&192)===128&&(u&192)===128&&(f=(a&15)<<12|(l&63)<<6|u&63,f>2047&&(f<55296||f>57343)&&(o=f));break;case 4:l=e[i+1],u=e[i+2],c=e[i+3],(l&192)===128&&(u&192)===128&&(c&192)===128&&(f=(a&15)<<18|(l&63)<<12|(u&63)<<6|c&63,f>65535&&f<1114112&&(o=f))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),i+=s}return eTt(n)}var Y3e=4096;function eTt(e){let t=e.length;if(t<=Y3e)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn)&&(r=n);let i="";for(let a=t;an&&(t=n),r<0?(r+=n,r<0&&(r=0)):r>n&&(r=n),rr)throw new RangeError("Trying to access beyond buffer length")}ea.prototype.readUintLE=ea.prototype.readUIntLE=function(t,r,n){t=t>>>0,r=r>>>0,n||ev(t,r,this.length);let i=this[t],a=1,o=0;for(;++o>>0,r=r>>>0,n||ev(t,r,this.length);let i=this[t+--r],a=1;for(;r>0&&(a*=256);)i+=this[t+--r]*a;return i};ea.prototype.readUint8=ea.prototype.readUInt8=function(t,r){return t=t>>>0,r||ev(t,1,this.length),this[t]};ea.prototype.readUint16LE=ea.prototype.readUInt16LE=function(t,r){return t=t>>>0,r||ev(t,2,this.length),this[t]|this[t+1]<<8};ea.prototype.readUint16BE=ea.prototype.readUInt16BE=function(t,r){return t=t>>>0,r||ev(t,2,this.length),this[t]<<8|this[t+1]};ea.prototype.readUint32LE=ea.prototype.readUInt32LE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+this[t+3]*16777216};ea.prototype.readUint32BE=ea.prototype.readUInt32BE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),this[t]*16777216+(this[t+1]<<16|this[t+2]<<8|this[t+3])};ea.prototype.readBigUInt64LE=P_(function(t){t=t>>>0,$T(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&N4(t,this.length-8);let i=r+this[++t]*2**8+this[++t]*2**16+this[++t]*2**24,a=this[++t]+this[++t]*2**8+this[++t]*2**16+n*2**24;return BigInt(i)+(BigInt(a)<>>0,$T(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&N4(t,this.length-8);let i=r*2**24+this[++t]*2**16+this[++t]*2**8+this[++t],a=this[++t]*2**24+this[++t]*2**16+this[++t]*2**8+n;return(BigInt(i)<>>0,r=r>>>0,n||ev(t,r,this.length);let i=this[t],a=1,o=0;for(;++o=a&&(i-=Math.pow(2,8*r)),i};ea.prototype.readIntBE=function(t,r,n){t=t>>>0,r=r>>>0,n||ev(t,r,this.length);let i=r,a=1,o=this[t+--i];for(;i>0&&(a*=256);)o+=this[t+--i]*a;return a*=128,o>=a&&(o-=Math.pow(2,8*r)),o};ea.prototype.readInt8=function(t,r){return t=t>>>0,r||ev(t,1,this.length),this[t]&128?(255-this[t]+1)*-1:this[t]};ea.prototype.readInt16LE=function(t,r){t=t>>>0,r||ev(t,2,this.length);let n=this[t]|this[t+1]<<8;return n&32768?n|4294901760:n};ea.prototype.readInt16BE=function(t,r){t=t>>>0,r||ev(t,2,this.length);let n=this[t+1]|this[t]<<8;return n&32768?n|4294901760:n};ea.prototype.readInt32LE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24};ea.prototype.readInt32BE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]};ea.prototype.readBigInt64LE=P_(function(t){t=t>>>0,$T(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&N4(t,this.length-8);let i=this[t+4]+this[t+5]*2**8+this[t+6]*2**16+(n<<24);return(BigInt(i)<>>0,$T(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&N4(t,this.length-8);let i=(r<<24)+this[++t]*2**16+this[++t]*2**8+this[++t];return(BigInt(i)<>>0,r||ev(t,4,this.length),JT.read(this,t,!0,23,4)};ea.prototype.readFloatBE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),JT.read(this,t,!1,23,4)};ea.prototype.readDoubleLE=function(t,r){return t=t>>>0,r||ev(t,8,this.length),JT.read(this,t,!0,52,8)};ea.prototype.readDoubleBE=function(t,r){return t=t>>>0,r||ev(t,8,this.length),JT.read(this,t,!1,52,8)};function Rp(e,t,r,n,i,a){if(!ea.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}ea.prototype.writeUintLE=ea.prototype.writeUIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,n=n>>>0,!i){let s=Math.pow(2,8*n)-1;Rp(this,t,r,n,s,0)}let a=1,o=0;for(this[r]=t&255;++o>>0,n=n>>>0,!i){let s=Math.pow(2,8*n)-1;Rp(this,t,r,n,s,0)}let a=n-1,o=1;for(this[r+a]=t&255;--a>=0&&(o*=256);)this[r+a]=t/o&255;return r+n};ea.prototype.writeUint8=ea.prototype.writeUInt8=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,1,255,0),this[r]=t&255,r+1};ea.prototype.writeUint16LE=ea.prototype.writeUInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,65535,0),this[r]=t&255,this[r+1]=t>>>8,r+2};ea.prototype.writeUint16BE=ea.prototype.writeUInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,65535,0),this[r]=t>>>8,this[r+1]=t&255,r+2};ea.prototype.writeUint32LE=ea.prototype.writeUInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,4294967295,0),this[r+3]=t>>>24,this[r+2]=t>>>16,this[r+1]=t>>>8,this[r]=t&255,r+4};ea.prototype.writeUint32BE=ea.prototype.writeUInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,4294967295,0),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};function rTe(e,t,r,n,i){sTe(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r++]=a,a=a>>8,e[r++]=a,a=a>>8,e[r++]=a,a=a>>8,e[r++]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,r}function iTe(e,t,r,n,i){sTe(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r+7]=a,a=a>>8,e[r+6]=a,a=a>>8,e[r+5]=a,a=a>>8,e[r+4]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=o,o=o>>8,e[r+2]=o,o=o>>8,e[r+1]=o,o=o>>8,e[r]=o,r+8}ea.prototype.writeBigUInt64LE=P_(function(t,r=0){return rTe(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});ea.prototype.writeBigUInt64BE=P_(function(t,r=0){return iTe(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});ea.prototype.writeIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let l=Math.pow(2,8*n-1);Rp(this,t,r,n,l-1,-l)}let a=0,o=1,s=0;for(this[r]=t&255;++a>0)-s&255;return r+n};ea.prototype.writeIntBE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let l=Math.pow(2,8*n-1);Rp(this,t,r,n,l-1,-l)}let a=n-1,o=1,s=0;for(this[r+a]=t&255;--a>=0&&(o*=256);)t<0&&s===0&&this[r+a+1]!==0&&(s=1),this[r+a]=(t/o>>0)-s&255;return r+n};ea.prototype.writeInt8=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,1,127,-128),t<0&&(t=255+t+1),this[r]=t&255,r+1};ea.prototype.writeInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,32767,-32768),this[r]=t&255,this[r+1]=t>>>8,r+2};ea.prototype.writeInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,32767,-32768),this[r]=t>>>8,this[r+1]=t&255,r+2};ea.prototype.writeInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,2147483647,-2147483648),this[r]=t&255,this[r+1]=t>>>8,this[r+2]=t>>>16,this[r+3]=t>>>24,r+4};ea.prototype.writeInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};ea.prototype.writeBigInt64LE=P_(function(t,r=0){return rTe(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});ea.prototype.writeBigInt64BE=P_(function(t,r=0){return iTe(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function nTe(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function aTe(e,t,r,n,i){return t=+t,r=r>>>0,i||nTe(e,t,r,4,34028234663852886e22,-34028234663852886e22),JT.write(e,t,r,n,23,4),r+4}ea.prototype.writeFloatLE=function(t,r,n){return aTe(this,t,r,!0,n)};ea.prototype.writeFloatBE=function(t,r,n){return aTe(this,t,r,!1,n)};function oTe(e,t,r,n,i){return t=+t,r=r>>>0,i||nTe(e,t,r,8,17976931348623157e292,-17976931348623157e292),JT.write(e,t,r,n,52,8),r+8}ea.prototype.writeDoubleLE=function(t,r,n){return oTe(this,t,r,!0,n)};ea.prototype.writeDoubleBE=function(t,r,n){return oTe(this,t,r,!1,n)};ea.prototype.copy=function(t,r,n,i){if(!ea.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&i!==0&&(i=this.length),r>=t.length&&(r=t.length),r||(r=0),i>0&&i=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),t.length-r>>0,n=n===void 0?this.length:n>>>0,t||(t=0);let a;if(typeof t=="number")for(a=r;a2**32?i=K3e(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=K3e(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n},RangeError);function K3e(e){let t="",r=e.length,n=e[0]==="-"?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function aTt(e,t,r){$T(t,"offset"),(e[t]===void 0||e[t+r]===void 0)&&N4(t,e.length-(r+1))}function sTe(e,t,r,n,i,a){if(e>r||e3?t===0||t===BigInt(0)?s=`>= 0${o} and < 2${o} ** ${(a+1)*8}${o}`:s=`>= -(2${o} ** ${(a+1)*8-1}${o}) and < 2 ** ${(a+1)*8-1}${o}`:s=`>= ${t}${o} and <= ${r}${o}`,new KT.ERR_OUT_OF_RANGE("value",s,e)}aTt(n,i,a)}function $T(e,t){if(typeof e!="number")throw new KT.ERR_INVALID_ARG_TYPE(t,"number",e)}function N4(e,t,r){throw Math.floor(e)!==e?($T(e,r),new KT.ERR_OUT_OF_RANGE(r||"offset","an integer",e)):t<0?new KT.ERR_BUFFER_OUT_OF_BOUNDS:new KT.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}var oTt=/[^+/0-9A-Za-z-_]/g;function sTt(e){if(e=e.split("=")[0],e=e.trim().replace(oTt,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function mH(e,t){t=t||1/0;let r,n=e.length,i=null,a=[];for(let o=0;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}else if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,r&63|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return a}function lTt(e){let t=[];for(let r=0;r>8,i=r%256,a.push(i),a.push(n);return a}function lTe(e){return vH.toByteArray(sTt(e))}function G8(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function qm(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function bH(e){return e!==e}var cTt=function(){let e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){let n=r*16;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function P_(e){return typeof BigInt=="undefined"?fTt:e}function fTt(){throw new Error("BigInt not supported")}});var H8=ye((Nfr,uTe)=>{"use strict";uTe.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var t={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var i=42;t[r]=i;for(var a in t)return!1;if(typeof Object.keys=="function"&&Object.keys(t).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(t).length!==0)return!1;var o=Object.getOwnPropertySymbols(t);if(o.length!==1||o[0]!==r||!Object.prototype.propertyIsEnumerable.call(t,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var s=Object.getOwnPropertyDescriptor(t,r);if(s.value!==i||s.enumerable!==!0)return!1}return!0}});var U4=ye((Ufr,cTe)=>{"use strict";var hTt=H8();cTe.exports=function(){return hTt()&&!!Symbol.toStringTag}});var wH=ye((Vfr,fTe)=>{"use strict";fTe.exports=Object});var dTe=ye((Gfr,hTe)=>{"use strict";hTe.exports=Error});var pTe=ye((Hfr,vTe)=>{"use strict";vTe.exports=EvalError});var mTe=ye((jfr,gTe)=>{"use strict";gTe.exports=RangeError});var _Te=ye((Wfr,yTe)=>{"use strict";yTe.exports=ReferenceError});var TH=ye((Xfr,xTe)=>{"use strict";xTe.exports=SyntaxError});var eA=ye((Zfr,bTe)=>{"use strict";bTe.exports=TypeError});var TTe=ye((Yfr,wTe)=>{"use strict";wTe.exports=URIError});var STe=ye((Kfr,ATe)=>{"use strict";ATe.exports=Math.abs});var ETe=ye((Jfr,MTe)=>{"use strict";MTe.exports=Math.floor});var CTe=ye(($fr,kTe)=>{"use strict";kTe.exports=Math.max});var PTe=ye((Qfr,LTe)=>{"use strict";LTe.exports=Math.min});var RTe=ye((ehr,ITe)=>{"use strict";ITe.exports=Math.pow});var FTe=ye((thr,DTe)=>{"use strict";DTe.exports=Math.round});var OTe=ye((rhr,zTe)=>{"use strict";zTe.exports=Number.isNaN||function(t){return t!==t}});var BTe=ye((ihr,qTe)=>{"use strict";var dTt=OTe();qTe.exports=function(t){return dTt(t)||t===0?t:t<0?-1:1}});var UTe=ye((nhr,NTe)=>{"use strict";NTe.exports=Object.getOwnPropertyDescriptor});var f2=ye((ahr,VTe)=>{"use strict";var j8=UTe();if(j8)try{j8([],"length")}catch(e){j8=null}VTe.exports=j8});var V4=ye((ohr,GTe)=>{"use strict";var W8=Object.defineProperty||!1;if(W8)try{W8({},"a",{value:1})}catch(e){W8=!1}GTe.exports=W8});var WTe=ye((shr,jTe)=>{"use strict";var HTe=typeof Symbol!="undefined"&&Symbol,vTt=H8();jTe.exports=function(){return typeof HTe!="function"||typeof Symbol!="function"||typeof HTe("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:vTt()}});var AH=ye((lhr,XTe)=>{"use strict";XTe.exports=typeof Reflect!="undefined"&&Reflect.getPrototypeOf||null});var SH=ye((uhr,ZTe)=>{"use strict";var pTt=wH();ZTe.exports=pTt.getPrototypeOf||null});var JTe=ye((chr,KTe)=>{"use strict";var gTt="Function.prototype.bind called on incompatible ",mTt=Object.prototype.toString,yTt=Math.max,_Tt="[object Function]",YTe=function(t,r){for(var n=[],i=0;i{"use strict";var wTt=JTe();$Te.exports=Function.prototype.bind||wTt});var X8=ye((hhr,QTe)=>{"use strict";QTe.exports=Function.prototype.call});var MH=ye((dhr,eAe)=>{"use strict";eAe.exports=Function.prototype.apply});var rAe=ye((vhr,tAe)=>{"use strict";tAe.exports=typeof Reflect!="undefined"&&Reflect&&Reflect.apply});var nAe=ye((phr,iAe)=>{"use strict";var TTt=tA(),ATt=MH(),STt=X8(),MTt=rAe();iAe.exports=MTt||TTt.call(STt,ATt)});var oAe=ye((ghr,aAe)=>{"use strict";var ETt=tA(),kTt=eA(),CTt=X8(),LTt=nAe();aAe.exports=function(t){if(t.length<1||typeof t[0]!="function")throw new kTt("a function is required");return LTt(ETt,CTt,t)}});var hAe=ye((mhr,fAe)=>{"use strict";var PTt=oAe(),sAe=f2(),uAe;try{uAe=[].__proto__===Array.prototype}catch(e){if(!e||typeof e!="object"||!("code"in e)||e.code!=="ERR_PROTO_ACCESS")throw e}var EH=!!uAe&&sAe&&sAe(Object.prototype,"__proto__"),cAe=Object,lAe=cAe.getPrototypeOf;fAe.exports=EH&&typeof EH.get=="function"?PTt([EH.get]):typeof lAe=="function"?function(t){return lAe(t==null?t:cAe(t))}:!1});var mAe=ye((yhr,gAe)=>{"use strict";var dAe=AH(),vAe=SH(),pAe=hAe();gAe.exports=dAe?function(t){return dAe(t)}:vAe?function(t){if(!t||typeof t!="object"&&typeof t!="function")throw new TypeError("getProto: not an object");return vAe(t)}:pAe?function(t){return pAe(t)}:null});var _Ae=ye((_hr,yAe)=>{"use strict";var ITt=Function.prototype.call,RTt=Object.prototype.hasOwnProperty,DTt=tA();yAe.exports=DTt.call(ITt,RTt)});var K8=ye((xhr,SAe)=>{"use strict";var lu,FTt=wH(),zTt=dTe(),OTt=pTe(),qTt=mTe(),BTt=_Te(),aA=TH(),nA=eA(),NTt=TTe(),UTt=STe(),VTt=ETe(),GTt=CTe(),HTt=PTe(),jTt=RTe(),WTt=FTe(),XTt=BTe(),TAe=Function,kH=function(e){try{return TAe('"use strict"; return ('+e+").constructor;")()}catch(t){}},G4=f2(),ZTt=V4(),CH=function(){throw new nA},YTt=G4?function(){try{return arguments.callee,CH}catch(e){try{return G4(arguments,"callee").get}catch(t){return CH}}}():CH,rA=WTe()(),tv=mAe(),KTt=SH(),JTt=AH(),AAe=MH(),H4=X8(),iA={},$Tt=typeof Uint8Array=="undefined"||!tv?lu:tv(Uint8Array),h2={__proto__:null,"%AggregateError%":typeof AggregateError=="undefined"?lu:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer=="undefined"?lu:ArrayBuffer,"%ArrayIteratorPrototype%":rA&&tv?tv([][Symbol.iterator]()):lu,"%AsyncFromSyncIteratorPrototype%":lu,"%AsyncFunction%":iA,"%AsyncGenerator%":iA,"%AsyncGeneratorFunction%":iA,"%AsyncIteratorPrototype%":iA,"%Atomics%":typeof Atomics=="undefined"?lu:Atomics,"%BigInt%":typeof BigInt=="undefined"?lu:BigInt,"%BigInt64Array%":typeof BigInt64Array=="undefined"?lu:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array=="undefined"?lu:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView=="undefined"?lu:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":zTt,"%eval%":eval,"%EvalError%":OTt,"%Float16Array%":typeof Float16Array=="undefined"?lu:Float16Array,"%Float32Array%":typeof Float32Array=="undefined"?lu:Float32Array,"%Float64Array%":typeof Float64Array=="undefined"?lu:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry=="undefined"?lu:FinalizationRegistry,"%Function%":TAe,"%GeneratorFunction%":iA,"%Int8Array%":typeof Int8Array=="undefined"?lu:Int8Array,"%Int16Array%":typeof Int16Array=="undefined"?lu:Int16Array,"%Int32Array%":typeof Int32Array=="undefined"?lu:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":rA&&tv?tv(tv([][Symbol.iterator]())):lu,"%JSON%":typeof JSON=="object"?JSON:lu,"%Map%":typeof Map=="undefined"?lu:Map,"%MapIteratorPrototype%":typeof Map=="undefined"||!rA||!tv?lu:tv(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":FTt,"%Object.getOwnPropertyDescriptor%":G4,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise=="undefined"?lu:Promise,"%Proxy%":typeof Proxy=="undefined"?lu:Proxy,"%RangeError%":qTt,"%ReferenceError%":BTt,"%Reflect%":typeof Reflect=="undefined"?lu:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set=="undefined"?lu:Set,"%SetIteratorPrototype%":typeof Set=="undefined"||!rA||!tv?lu:tv(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer=="undefined"?lu:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":rA&&tv?tv(""[Symbol.iterator]()):lu,"%Symbol%":rA?Symbol:lu,"%SyntaxError%":aA,"%ThrowTypeError%":YTt,"%TypedArray%":$Tt,"%TypeError%":nA,"%Uint8Array%":typeof Uint8Array=="undefined"?lu:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray=="undefined"?lu:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array=="undefined"?lu:Uint16Array,"%Uint32Array%":typeof Uint32Array=="undefined"?lu:Uint32Array,"%URIError%":NTt,"%WeakMap%":typeof WeakMap=="undefined"?lu:WeakMap,"%WeakRef%":typeof WeakRef=="undefined"?lu:WeakRef,"%WeakSet%":typeof WeakSet=="undefined"?lu:WeakSet,"%Function.prototype.call%":H4,"%Function.prototype.apply%":AAe,"%Object.defineProperty%":ZTt,"%Object.getPrototypeOf%":KTt,"%Math.abs%":UTt,"%Math.floor%":VTt,"%Math.max%":GTt,"%Math.min%":HTt,"%Math.pow%":jTt,"%Math.round%":WTt,"%Math.sign%":XTt,"%Reflect.getPrototypeOf%":JTt};if(tv)try{null.error}catch(e){xAe=tv(tv(e)),h2["%Error.prototype%"]=xAe}var xAe,QTt=function e(t){var r;if(t==="%AsyncFunction%")r=kH("async function () {}");else if(t==="%GeneratorFunction%")r=kH("function* () {}");else if(t==="%AsyncGeneratorFunction%")r=kH("async function* () {}");else if(t==="%AsyncGenerator%"){var n=e("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(t==="%AsyncIteratorPrototype%"){var i=e("%AsyncGenerator%");i&&tv&&(r=tv(i.prototype))}return h2[t]=r,r},bAe={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},j4=tA(),Z8=_Ae(),eAt=j4.call(H4,Array.prototype.concat),tAt=j4.call(AAe,Array.prototype.splice),wAe=j4.call(H4,String.prototype.replace),Y8=j4.call(H4,String.prototype.slice),rAt=j4.call(H4,RegExp.prototype.exec),iAt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,nAt=/\\(\\)?/g,aAt=function(t){var r=Y8(t,0,1),n=Y8(t,-1);if(r==="%"&&n!=="%")throw new aA("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new aA("invalid intrinsic syntax, expected opening `%`");var i=[];return wAe(t,iAt,function(a,o,s,l){i[i.length]=s?wAe(l,nAt,"$1"):o||a}),i},oAt=function(t,r){var n=t,i;if(Z8(bAe,n)&&(i=bAe[n],n="%"+i[0]+"%"),Z8(h2,n)){var a=h2[n];if(a===iA&&(a=QTt(n)),typeof a=="undefined"&&!r)throw new nA("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:i,name:n,value:a}}throw new aA("intrinsic "+t+" does not exist!")};SAe.exports=function(t,r){if(typeof t!="string"||t.length===0)throw new nA("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new nA('"allowMissing" argument must be a boolean');if(rAt(/^%?[^%]*%?$/,t)===null)throw new aA("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=aAt(t),i=n.length>0?n[0]:"",a=oAt("%"+i+"%",r),o=a.name,s=a.value,l=!1,u=a.alias;u&&(i=u[0],tAt(n,eAt([0,1],u)));for(var c=1,f=!0;c=n.length){var _=G4(s,h);f=!!_,f&&"get"in _&&!("originalValue"in _.get)?s=_.get:s=s[h]}else f=Z8(s,h),s=s[h];f&&!l&&(h2[o]=s)}}return s}});var CAe=ye((bhr,kAe)=>{"use strict";var MAe=V4(),sAt=TH(),oA=eA(),EAe=f2();kAe.exports=function(t,r,n){if(!t||typeof t!="object"&&typeof t!="function")throw new oA("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new oA("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new oA("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new oA("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new oA("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new oA("`loose`, if provided, must be a boolean");var i=arguments.length>3?arguments[3]:null,a=arguments.length>4?arguments[4]:null,o=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,l=!!EAe&&EAe(t,r);if(MAe)MAe(t,r,{configurable:o===null&&l?l.configurable:!o,enumerable:i===null&&l?l.enumerable:!i,value:n,writable:a===null&&l?l.writable:!a});else if(s||!i&&!a&&!o)t[r]=n;else throw new sAt("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var PH=ye((whr,PAe)=>{"use strict";var LH=V4(),LAe=function(){return!!LH};LAe.hasArrayLengthDefineBug=function(){if(!LH)return null;try{return LH([],"length",{value:1}).length!==1}catch(t){return!0}};PAe.exports=LAe});var zAe=ye((Thr,FAe)=>{"use strict";var lAt=K8(),IAe=CAe(),uAt=PH()(),RAe=f2(),DAe=eA(),cAt=lAt("%Math.floor%");FAe.exports=function(t,r){if(typeof t!="function")throw new DAe("`fn` is not a function");if(typeof r!="number"||r<0||r>4294967295||cAt(r)!==r)throw new DAe("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],i=!0,a=!0;if("length"in t&&RAe){var o=RAe(t,"length");o&&!o.configurable&&(i=!1),o&&!o.writable&&(a=!1)}return(i||a||!n)&&(uAt?IAe(t,"length",r,!0,!0):IAe(t,"length",r)),t}});var W4=ye((Ahr,J8)=>{"use strict";var IH=tA(),$8=K8(),fAt=zAe(),hAt=eA(),BAe=$8("%Function.prototype.apply%"),NAe=$8("%Function.prototype.call%"),UAe=$8("%Reflect.apply%",!0)||IH.call(NAe,BAe),OAe=V4(),dAt=$8("%Math.max%");J8.exports=function(t){if(typeof t!="function")throw new hAt("a function is required");var r=UAe(IH,NAe,arguments);return fAt(r,1+dAt(0,t.length-(arguments.length-1)),!0)};var qAe=function(){return UAe(IH,BAe,arguments)};OAe?OAe(J8.exports,"apply",{value:qAe}):J8.exports.apply=qAe});var sA=ye((Shr,HAe)=>{"use strict";var VAe=K8(),GAe=W4(),vAt=GAe(VAe("String.prototype.indexOf"));HAe.exports=function(t,r){var n=VAe(t,!!r);return typeof n=="function"&&vAt(t,".prototype.")>-1?GAe(n):n}});var XAe=ye((Mhr,WAe)=>{"use strict";var pAt=U4()(),gAt=sA(),RH=gAt("Object.prototype.toString"),Q8=function(t){return pAt&&t&&typeof t=="object"&&Symbol.toStringTag in t?!1:RH(t)==="[object Arguments]"},jAe=function(t){return Q8(t)?!0:t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&RH(t)!=="[object Array]"&&RH(t.callee)==="[object Function]"},mAt=function(){return Q8(arguments)}();Q8.isLegacyArguments=jAe;WAe.exports=mAt?Q8:jAe});var KAe=ye((Ehr,YAe)=>{"use strict";var yAt=Object.prototype.toString,_At=Function.prototype.toString,xAt=/^\s*(?:function)?\*/,ZAe=U4()(),DH=Object.getPrototypeOf,bAt=function(){if(!ZAe)return!1;try{return Function("return function*() {}")()}catch(e){}},FH;YAe.exports=function(t){if(typeof t!="function")return!1;if(xAt.test(_At.call(t)))return!0;if(!ZAe){var r=yAt.call(t);return r==="[object GeneratorFunction]"}if(!DH)return!1;if(typeof FH=="undefined"){var n=bAt();FH=n?DH(n):!1}return DH(t)===FH}});var e5e=ye((khr,QAe)=>{"use strict";var $Ae=Function.prototype.toString,lA=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,OH,eR;if(typeof lA=="function"&&typeof Object.defineProperty=="function")try{OH=Object.defineProperty({},"length",{get:function(){throw eR}}),eR={},lA(function(){throw 42},null,OH)}catch(e){e!==eR&&(lA=null)}else lA=null;var wAt=/^\s*class\b/,qH=function(t){try{var r=$Ae.call(t);return wAt.test(r)}catch(n){return!1}},zH=function(t){try{return qH(t)?!1:($Ae.call(t),!0)}catch(r){return!1}},tR=Object.prototype.toString,TAt="[object Object]",AAt="[object Function]",SAt="[object GeneratorFunction]",MAt="[object HTMLAllCollection]",EAt="[object HTML document.all class]",kAt="[object HTMLCollection]",CAt=typeof Symbol=="function"&&!!Symbol.toStringTag,LAt=!(0 in[,]),BH=function(){return!1};typeof document=="object"&&(JAe=document.all,tR.call(JAe)===tR.call(document.all)&&(BH=function(t){if((LAt||!t)&&(typeof t=="undefined"||typeof t=="object"))try{var r=tR.call(t);return(r===MAt||r===EAt||r===kAt||r===TAt)&&t("")==null}catch(n){}return!1}));var JAe;QAe.exports=lA?function(t){if(BH(t))return!0;if(!t||typeof t!="function"&&typeof t!="object")return!1;try{lA(t,null,OH)}catch(r){if(r!==eR)return!1}return!qH(t)&&zH(t)}:function(t){if(BH(t))return!0;if(!t||typeof t!="function"&&typeof t!="object")return!1;if(CAt)return zH(t);if(qH(t))return!1;var r=tR.call(t);return r!==AAt&&r!==SAt&&!/^\[object HTML/.test(r)?!1:zH(t)}});var NH=ye((Chr,r5e)=>{"use strict";var PAt=e5e(),IAt=Object.prototype.toString,t5e=Object.prototype.hasOwnProperty,RAt=function(t,r,n){for(var i=0,a=t.length;i=3&&(i=n),IAt.call(t)==="[object Array]"?RAt(t,r,i):typeof t=="string"?DAt(t,r,i):FAt(t,r,i)};r5e.exports=zAt});var VH=ye((Lhr,i5e)=>{"use strict";var UH=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],OAt=typeof globalThis=="undefined"?window:globalThis;i5e.exports=function(){for(var t=[],r=0;r{"use strict";var iR=NH(),qAt=VH(),n5e=W4(),jH=sA(),rR=f2(),BAt=jH("Object.prototype.toString"),o5e=U4()(),a5e=typeof globalThis=="undefined"?window:globalThis,HH=qAt(),WH=jH("String.prototype.slice"),GH=Object.getPrototypeOf,NAt=jH("Array.prototype.indexOf",!0)||function(t,r){for(var n=0;n-1?r:r!=="Object"?!1:VAt(t)}return rR?UAt(t):null}});var v5e=ye((Ihr,d5e)=>{"use strict";var u5e=NH(),GAt=VH(),ZH=sA(),HAt=ZH("Object.prototype.toString"),c5e=U4()(),aR=f2(),jAt=typeof globalThis=="undefined"?window:globalThis,f5e=GAt(),WAt=ZH("Array.prototype.indexOf",!0)||function(t,r){for(var n=0;n-1}return aR?ZAt(t):!1}});var JH=ye(uu=>{"use strict";var YAt=XAe(),KAt=KAe(),Gg=l5e(),p5e=v5e();function uA(e){return e.call.bind(e)}var g5e=typeof BigInt!="undefined",m5e=typeof Symbol!="undefined",Z0=uA(Object.prototype.toString),JAt=uA(Number.prototype.valueOf),$At=uA(String.prototype.valueOf),QAt=uA(Boolean.prototype.valueOf);g5e&&(y5e=uA(BigInt.prototype.valueOf));var y5e;m5e&&(_5e=uA(Symbol.prototype.valueOf));var _5e;function Z4(e,t){if(typeof e!="object")return!1;try{return t(e),!0}catch(r){return!1}}uu.isArgumentsObject=YAt;uu.isGeneratorFunction=KAt;uu.isTypedArray=p5e;function e5t(e){return typeof Promise!="undefined"&&e instanceof Promise||e!==null&&typeof e=="object"&&typeof e.then=="function"&&typeof e.catch=="function"}uu.isPromise=e5t;function t5t(e){return typeof ArrayBuffer!="undefined"&&ArrayBuffer.isView?ArrayBuffer.isView(e):p5e(e)||b5e(e)}uu.isArrayBufferView=t5t;function r5t(e){return Gg(e)==="Uint8Array"}uu.isUint8Array=r5t;function i5t(e){return Gg(e)==="Uint8ClampedArray"}uu.isUint8ClampedArray=i5t;function n5t(e){return Gg(e)==="Uint16Array"}uu.isUint16Array=n5t;function a5t(e){return Gg(e)==="Uint32Array"}uu.isUint32Array=a5t;function o5t(e){return Gg(e)==="Int8Array"}uu.isInt8Array=o5t;function s5t(e){return Gg(e)==="Int16Array"}uu.isInt16Array=s5t;function l5t(e){return Gg(e)==="Int32Array"}uu.isInt32Array=l5t;function u5t(e){return Gg(e)==="Float32Array"}uu.isFloat32Array=u5t;function c5t(e){return Gg(e)==="Float64Array"}uu.isFloat64Array=c5t;function f5t(e){return Gg(e)==="BigInt64Array"}uu.isBigInt64Array=f5t;function h5t(e){return Gg(e)==="BigUint64Array"}uu.isBigUint64Array=h5t;function oR(e){return Z0(e)==="[object Map]"}oR.working=typeof Map!="undefined"&&oR(new Map);function d5t(e){return typeof Map=="undefined"?!1:oR.working?oR(e):e instanceof Map}uu.isMap=d5t;function sR(e){return Z0(e)==="[object Set]"}sR.working=typeof Set!="undefined"&&sR(new Set);function v5t(e){return typeof Set=="undefined"?!1:sR.working?sR(e):e instanceof Set}uu.isSet=v5t;function lR(e){return Z0(e)==="[object WeakMap]"}lR.working=typeof WeakMap!="undefined"&&lR(new WeakMap);function p5t(e){return typeof WeakMap=="undefined"?!1:lR.working?lR(e):e instanceof WeakMap}uu.isWeakMap=p5t;function KH(e){return Z0(e)==="[object WeakSet]"}KH.working=typeof WeakSet!="undefined"&&KH(new WeakSet);function g5t(e){return KH(e)}uu.isWeakSet=g5t;function uR(e){return Z0(e)==="[object ArrayBuffer]"}uR.working=typeof ArrayBuffer!="undefined"&&uR(new ArrayBuffer);function x5e(e){return typeof ArrayBuffer=="undefined"?!1:uR.working?uR(e):e instanceof ArrayBuffer}uu.isArrayBuffer=x5e;function cR(e){return Z0(e)==="[object DataView]"}cR.working=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined"&&cR(new DataView(new ArrayBuffer(1),0,1));function b5e(e){return typeof DataView=="undefined"?!1:cR.working?cR(e):e instanceof DataView}uu.isDataView=b5e;var YH=typeof SharedArrayBuffer!="undefined"?SharedArrayBuffer:void 0;function X4(e){return Z0(e)==="[object SharedArrayBuffer]"}function w5e(e){return typeof YH=="undefined"?!1:(typeof X4.working=="undefined"&&(X4.working=X4(new YH)),X4.working?X4(e):e instanceof YH)}uu.isSharedArrayBuffer=w5e;function m5t(e){return Z0(e)==="[object AsyncFunction]"}uu.isAsyncFunction=m5t;function y5t(e){return Z0(e)==="[object Map Iterator]"}uu.isMapIterator=y5t;function _5t(e){return Z0(e)==="[object Set Iterator]"}uu.isSetIterator=_5t;function x5t(e){return Z0(e)==="[object Generator]"}uu.isGeneratorObject=x5t;function b5t(e){return Z0(e)==="[object WebAssembly.Module]"}uu.isWebAssemblyCompiledModule=b5t;function T5e(e){return Z4(e,JAt)}uu.isNumberObject=T5e;function A5e(e){return Z4(e,$At)}uu.isStringObject=A5e;function S5e(e){return Z4(e,QAt)}uu.isBooleanObject=S5e;function M5e(e){return g5e&&Z4(e,y5e)}uu.isBigIntObject=M5e;function E5e(e){return m5e&&Z4(e,_5e)}uu.isSymbolObject=E5e;function w5t(e){return T5e(e)||A5e(e)||S5e(e)||M5e(e)||E5e(e)}uu.isBoxedPrimitive=w5t;function T5t(e){return typeof Uint8Array!="undefined"&&(x5e(e)||w5e(e))}uu.isAnyArrayBuffer=T5t;["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(e){Object.defineProperty(uu,e,{enumerable:!1,value:function(){throw new Error(e+" is not supported in userland")}})})});var $H=ye((Dhr,k5e)=>{k5e.exports=function(t){return t&&typeof t=="object"&&typeof t.copy=="function"&&typeof t.fill=="function"&&typeof t.readUInt8=="function"}});var nj=ye(cu=>{var C5e=Object.getOwnPropertyDescriptors||function(t){for(var r=Object.keys(t),n={},i=0;i=i)return s;switch(s){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(l){return"[Circular]"}default:return s}}),o=n[r];r=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),rj(t)?r.showHidden=t:t&&cu._extend(r,t),v2(r.showHidden)&&(r.showHidden=!1),v2(r.depth)&&(r.depth=2),v2(r.colors)&&(r.colors=!1),v2(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=S5t),vR(r,e,r.depth)}cu.inspect=I_;I_.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};I_.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function S5t(e,t){var r=I_.styles[t];return r?"\x1B["+I_.colors[r][0]+"m"+e+"\x1B["+I_.colors[r][1]+"m":e}function M5t(e,t){return e}function E5t(e){var t={};return e.forEach(function(r,n){t[r]=!0}),t}function vR(e,t,r){if(e.customInspect&&t&&dR(t.inspect)&&t.inspect!==cu.inspect&&!(t.constructor&&t.constructor.prototype===t)){var n=t.inspect(r,e);return mR(n)||(n=vR(e,n,r)),n}var i=k5t(e,t);if(i)return i;var a=Object.keys(t),o=E5t(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(t)),K4(t)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return QH(t);if(a.length===0){if(dR(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if(Y4(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(pR(t))return e.stylize(Date.prototype.toString.call(t),"date");if(K4(t))return QH(t)}var l="",u=!1,c=["{","}"];if(P5e(t)&&(u=!0,c=["[","]"]),dR(t)){var f=t.name?": "+t.name:"";l=" [Function"+f+"]"}if(Y4(t)&&(l=" "+RegExp.prototype.toString.call(t)),pR(t)&&(l=" "+Date.prototype.toUTCString.call(t)),K4(t)&&(l=" "+QH(t)),a.length===0&&(!u||t.length==0))return c[0]+l+c[1];if(r<0)return Y4(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var h;return u?h=C5t(e,t,r,o,a):h=a.map(function(d){return tj(e,t,r,o,d,u)}),e.seen.pop(),L5t(h,l,c)}function k5t(e,t){if(v2(t))return e.stylize("undefined","undefined");if(mR(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(I5e(t))return e.stylize(""+t,"number");if(rj(t))return e.stylize(""+t,"boolean");if(gR(t))return e.stylize("null","null")}function QH(e){return"["+Error.prototype.toString.call(e)+"]"}function C5t(e,t,r,n,i){for(var a=[],o=0,s=t.length;o24?(isFinite(se)&&(clearTimeout(Ma),Ma=setTimeout(po,se)),Jn=0):(Jn=1,_o(po))}e.timer.flush=function(){Lo(),ko()};function Lo(){for(var X=Date.now(),se=_n;se;)X>=se.t&&se.c(X-se.t)&&(se.c=null),se=se.n;return X}function ko(){for(var X,se=_n,Te=1/0;se;)se.c?(se.t=0;--nt)Zr.push(He[gr[Hr[nt]][2]]);for(nt=+_i;nt1&&ar(X[Te[Ne-2]],X[Te[Ne-1]],X[He])<=0;)--Ne;Te[Ne++]=He}return Te.slice(0,Ne)}function ul(X,se){return X[0]-se[0]||X[1]-se[1]}e.geom.polygon=function(X){return ie(X,zl),X};var zl=e.geom.polygon.prototype=[];zl.area=function(){for(var X=-1,se=this.length,Te,Ne=this[se-1],He=0;++XJe)nt=nt.L;else if(kt=se-xo(nt,Te),kt>Je){if(!nt.R){Ne=nt;break}nt=nt.R}else{Ye>-Je?(Ne=nt.P,He=nt):kt>-Je?(Ne=nt,He=nt.N):Ne=He=nt;break}var jt=bs(X);if(zs.insert(Ne,jt),!(!Ne&&!He)){if(Ne===He){Oo(Ne),He=bs(Ne.site),zs.insert(jt,He),jt.edge=He.edge=rf(Ne.site,jt.site),aa(Ne),aa(He);return}if(!He){jt.edge=rf(Ne.site,jt.site);return}Oo(Ne),Oo(He);var gr=Ne.site,yr=gr.x,Hr=gr.y,qr=X.x-yr,_i=X.y-Hr,bi=He.site,Zr=bi.x-yr,ai=bi.y-Hr,gi=2*(qr*ai-_i*Zr),Ii=qr*qr+_i*_i,Si=Zr*Zr+ai*ai,ei={x:(ai*Ii-_i*Si)/gi+yr,y:(qr*Si-Zr*Ii)/gi+Hr};pl(He.edge,gr,bi,ei),jt.edge=rf(gr,X,null,ei),He.edge=rf(X,bi,null,ei),aa(Ne),aa(He)}}function Ol(X,se){var Te=X.site,Ne=Te.x,He=Te.y,Ye=He-se;if(!Ye)return Ne;var kt=X.P;if(!kt)return-1/0;Te=kt.site;var nt=Te.x,jt=Te.y,gr=jt-se;if(!gr)return nt;var yr=nt-Ne,Hr=1/Ye-1/gr,qr=yr/gr;return Hr?(-qr+Math.sqrt(qr*qr-2*Hr*(yr*yr/(-2*gr)-jt+gr/2+He-Ye/2)))/Hr+Ne:(Ne+nt)/2}function xo(X,se){var Te=X.N;if(Te)return Ol(Te,se);var Ne=X.site;return Ne.y===se?Ne.x:1/0}function Yl(X){this.site=X,this.edges=[]}Yl.prototype.prepare=function(){for(var X=this.edges,se=X.length,Te;se--;)Te=X[se].edge,(!Te.b||!Te.a)&&X.splice(se,1);return X.sort(Hl),X.length};function Ns(X){for(var se=X[0][0],Te=X[1][0],Ne=X[0][1],He=X[1][1],Ye,kt,nt,jt,gr=Ks,yr=gr.length,Hr,qr,_i,bi,Zr,ai;yr--;)if(Hr=gr[yr],!(!Hr||!Hr.prepare()))for(_i=Hr.edges,bi=_i.length,qr=0;qrJe||p(jt-kt)>Je)&&(_i.splice(qr,0,new Zc(Uf(Hr.site,ai,p(nt-se)Je?{x:se,y:p(Ye-se)Je?{x:p(kt-He)Je?{x:Te,y:p(Ye-Te)Je?{x:p(kt-Ne)=-je)){var qr=jt*jt+gr*gr,_i=yr*yr+ai*ai,bi=(ai*qr-gr*_i)/Hr,Zr=(jt*_i-yr*qr)/Hr,ai=Zr+nt,gi=Su.pop()||new ac;gi.arc=X,gi.site=He,gi.x=bi+kt,gi.y=ai+Math.sqrt(bi*bi+Zr*Zr),gi.cy=ai,X.circle=gi;for(var Ii=null,Si=Zl._;Si;)if(gi.y0)){if(Zr/=_i,_i<0){if(Zr0){if(Zr>qr)return;Zr>Hr&&(Hr=Zr)}if(Zr=Te-nt,!(!_i&&Zr<0)){if(Zr/=_i,_i<0){if(Zr>qr)return;Zr>Hr&&(Hr=Zr)}else if(_i>0){if(Zr0)){if(Zr/=bi,bi<0){if(Zr0){if(Zr>qr)return;Zr>Hr&&(Hr=Zr)}if(Zr=Ne-jt,!(!bi&&Zr<0)){if(Zr/=bi,bi<0){if(Zr>qr)return;Zr>Hr&&(Hr=Zr)}else if(bi>0){if(Zr0&&(He.a={x:nt+Hr*_i,y:jt+Hr*bi}),qr<1&&(He.b={x:nt+qr*_i,y:jt+qr*bi}),He}}}}}}function ql(X){for(var se=cl,Te=qo(X[0][0],X[0][1],X[1][0],X[1][1]),Ne=se.length,He;Ne--;)He=se[Ne],(!Pc(He,X)||!Te(He)||p(He.a.x-He.b.x)=Ye)return;if(yr>qr){if(!Ne)Ne={x:bi,y:kt};else if(Ne.y>=nt)return;Te={x:bi,y:nt}}else{if(!Ne)Ne={x:bi,y:nt};else if(Ne.y1)if(yr>qr){if(!Ne)Ne={x:(kt-gi)/ai,y:kt};else if(Ne.y>=nt)return;Te={x:(nt-gi)/ai,y:nt}}else{if(!Ne)Ne={x:(nt-gi)/ai,y:nt};else if(Ne.y=Ye)return;Te={x:Ye,y:ai*Ye+gi}}else{if(!Ne)Ne={x:Ye,y:ai*Ye+gi};else if(Ne.x=yr&&gi.x<=qr&&gi.y>=Hr&&gi.y<=_i?[[yr,_i],[qr,_i],[qr,Hr],[yr,Hr]]:[];Ii.point=jt[Zr]}),gr}function nt(jt){return jt.map(function(gr,yr){return{x:Math.round(Ne(gr,yr)/Je)*Je,y:Math.round(He(gr,yr)/Je)*Je,i:yr}})}return kt.links=function(jt){return sc(nt(jt)).edges.filter(function(gr){return gr.l&&gr.r}).map(function(gr){return{source:jt[gr.l.i],target:jt[gr.r.i]}})},kt.triangles=function(jt){var gr=[];return sc(nt(jt)).cells.forEach(function(yr,Hr){for(var qr=yr.site,_i=yr.edges.sort(Hl),bi=-1,Zr=_i.length,ai,gi,Ii=_i[Zr-1].edge,Si=Ii.l===qr?Ii.r:Ii.l;++biSi&&(Si=yr.x),yr.y>ei&&(ei=yr.y),_i.push(yr.x),bi.push(yr.y);else for(Zr=0;ZrSi&&(Si=Ln),En>ei&&(ei=En),_i.push(Ln),bi.push(En)}var Un=Si-gi,ia=ei-Ii;Un>ia?ei=Ii+Un:Si=gi+ia;function Ea(Da,go,Is,Ms,Xs,Gn,ja,Fo){if(!(isNaN(Is)||isNaN(Ms)))if(Da.leaf){var Uo=Da.x,$s=Da.y;if(Uo!=null)if(p(Uo-Is)+p($s-Ms)<.01)Ia(Da,go,Is,Ms,Xs,Gn,ja,Fo);else{var Sl=Da.point;Da.x=Da.y=Da.point=null,Ia(Da,Sl,Uo,$s,Xs,Gn,ja,Fo),Ia(Da,go,Is,Ms,Xs,Gn,ja,Fo)}else Da.x=Is,Da.y=Ms,Da.point=go}else Ia(Da,go,Is,Ms,Xs,Gn,ja,Fo)}function Ia(Da,go,Is,Ms,Xs,Gn,ja,Fo){var Uo=(Xs+ja)*.5,$s=(Gn+Fo)*.5,Sl=Is>=Uo,bu=Ms>=$s,dl=bu<<1|Sl;Da.leaf=!1,Da=Da.nodes[dl]||(Da.nodes[dl]=Jl()),Sl?Xs=Uo:ja=Uo,bu?Gn=$s:Fo=$s,Ea(Da,go,Is,Ms,Xs,Gn,ja,Fo)}var yo=Jl();if(yo.add=function(Da){Ea(yo,Da,+Hr(Da,++Zr),+qr(Da,Zr),gi,Ii,Si,ei)},yo.visit=function(Da){fl(Da,yo,gi,Ii,Si,ei)},yo.find=function(Da){return lc(yo,Da[0],Da[1],gi,Ii,Si,ei)},Zr=-1,se==null){for(;++ZrYe||qr>kt||_i=Ln,ia=Te>=En,Ea=ia<<1|Un,Ia=Ea+4;EaTe&&(Ye=se.slice(Te,Ye),nt[kt]?nt[kt]+=Ye:nt[++kt]=Ye),(Ne=Ne[0])===(He=He[0])?nt[kt]?nt[kt]+=He:nt[++kt]=He:(nt[++kt]=null,jt.push({i:kt,x:Hs(Ne,He)})),Te=uc.lastIndex;return Te=0&&!(Ne=e.interpolators[Te](X,se)););return Ne}e.interpolators=[function(X,se){var Te=typeof se;return(Te==="string"?Jr.has(se.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(se)?Fu:Go:se instanceof la?Fu:Array.isArray(se)?Gu:Te==="object"&&isNaN(se)?Es:Hs)(X,se)}],e.interpolateArray=Gu;function Gu(X,se){var Te=[],Ne=[],He=X.length,Ye=se.length,kt=Math.min(X.length,se.length),nt;for(nt=0;nt=0?X.slice(0,se):X,Ne=se>=0?X.slice(se+1):"in";return Te=ad.get(Te)||qs,Ne=Po.get(Ne)||G,od(Ne(Te.apply(null,t.call(arguments,1))))};function od(X){return function(se){return se<=0?0:se>=1?1:X(se)}}function Yo(X){return function(se){return 1-X(1-se)}}function Pa(X){return function(se){return .5*(se<.5?X(2*se):2-X(2-2*se))}}function af(X){return X*X}function Hu(X){return X*X*X}function bl(X){if(X<=0)return 0;if(X>=1)return 1;var se=X*X,Te=se*X;return 4*(X<.5?Te:3*(X-se)+Te-.75)}function Gf(X){return function(se){return Math.pow(se,X)}}function Ic(X){return 1-Math.cos(X*xe)}function yf(X){return Math.pow(2,10*(X-1))}function Bl(X){return 1-Math.sqrt(1-X*X)}function wh(X,se){var Te;return arguments.length<2&&(se=.45),arguments.length?Te=se/xt*Math.asin(1/X):(X=1,Te=se/4),function(Ne){return 1+X*Math.pow(2,-10*Ne)*Math.sin((Ne-Te)*xt/se)}}function Qf(X){return X||(X=1.70158),function(se){return se*se*((X+1)*se-X)}}function _f(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=Yc;function Yc(X,se){X=e.hcl(X),se=e.hcl(se);var Te=X.h,Ne=X.c,He=X.l,Ye=se.h-Te,kt=se.c-Ne,nt=se.l-He;return isNaN(kt)&&(kt=0,Ne=isNaN(Ne)?se.c:Ne),isNaN(Ye)?(Ye=0,Te=isNaN(Te)?se.h:Te):Ye>180?Ye-=360:Ye<-180&&(Ye+=360),function(jt){return Xr(Te+Ye*jt,Ne+kt*jt,He+nt*jt)+""}}e.interpolateHsl=eh;function eh(X,se){X=e.hsl(X),se=e.hsl(se);var Te=X.h,Ne=X.s,He=X.l,Ye=se.h-Te,kt=se.s-Ne,nt=se.l-He;return isNaN(kt)&&(kt=0,Ne=isNaN(Ne)?se.s:Ne),isNaN(Ye)?(Ye=0,Te=isNaN(Te)?se.h:Te):Ye>180?Ye-=360:Ye<-180&&(Ye+=360),function(jt){return rr(Te+Ye*jt,Ne+kt*jt,He+nt*jt)+""}}e.interpolateLab=th;function th(X,se){X=e.lab(X),se=e.lab(se);var Te=X.l,Ne=X.a,He=X.b,Ye=se.l-Te,kt=se.a-Ne,nt=se.b-He;return function(jt){return yn(Te+Ye*jt,Ne+kt*jt,He+nt*jt)+""}}e.interpolateRound=ju;function ju(X,se){return se-=X,function(Te){return Math.round(X+se*Te)}}e.transform=function(X){var se=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(Te){if(Te!=null){se.setAttribute("transform",Te);var Ne=se.transform.baseVal.consolidate()}return new Hf(Ne?Ne.matrix:Kc)})(X)};function Hf(X){var se=[X.a,X.b],Te=[X.c,X.d],Ne=of(se),He=cc(se,Te),Ye=of(Nl(Te,se,-He))||0;se[0]*Te[1]180?se+=360:se-X>180&&(X+=360),Ne.push({i:Te.push(Rc(Te)+"rotate(",null,")")-2,x:Hs(X,se)})):se&&Te.push(Rc(Te)+"rotate("+se+")")}function Gh(X,se,Te,Ne){X!==se?Ne.push({i:Te.push(Rc(Te)+"skewX(",null,")")-2,x:Hs(X,se)}):se&&Te.push(Rc(Te)+"skewX("+se+")")}function rh(X,se,Te,Ne){if(X[0]!==se[0]||X[1]!==se[1]){var He=Te.push(Rc(Te)+"scale(",null,",",null,")");Ne.push({i:He-4,x:Hs(X[0],se[0])},{i:He-2,x:Hs(X[1],se[1])})}else(se[0]!==1||se[1]!==1)&&Te.push(Rc(Te)+"scale("+se+")")}function sf(X,se){var Te=[],Ne=[];return X=e.transform(X),se=e.transform(se),gs(X.translate,se.translate,Te,Ne),jf(X.rotate,se.rotate,Te,Ne),Gh(X.skew,se.skew,Te,Ne),rh(X.scale,se.scale,Te,Ne),X=se=null,function(He){for(var Ye=-1,kt=Ne.length,nt;++Ye0?Ye=ei:(Te.c=null,Te.t=NaN,Te=null,se.end({type:"end",alpha:Ye=0})):ei>0&&(se.start({type:"start",alpha:Ye=ei}),Te=No(X.tick)),X):Ye},X.start=function(){var ei,Ln=_i.length,En=bi.length,Un=Ne[0],ia=Ne[1],Ea,Ia;for(ei=0;ei=0;)Ye.push(yr=gr[jt]),yr.parent=nt,yr.depth=nt.depth+1;Te&&(nt.value=0),nt.children=gr}else Te&&(nt.value=+Te.call(Ne,nt,nt.depth)||0),delete nt.children;return wc(He,function(Hr){var qr,_i;X&&(qr=Hr.children)&&qr.sort(X),Te&&(_i=Hr.parent)&&(_i.value+=Hr.value)}),kt}return Ne.sort=function(He){return arguments.length?(X=He,Ne):X},Ne.children=function(He){return arguments.length?(se=He,Ne):se},Ne.value=function(He){return arguments.length?(Te=He,Ne):Te},Ne.revalue=function(He){return Te&&(Fc(He,function(Ye){Ye.children&&(Ye.value=0)}),wc(He,function(Ye){var kt;Ye.children||(Ye.value=+Te.call(Ne,Ye,Ye.depth)||0),(kt=Ye.parent)&&(kt.value+=Ye.value)})),He},Ne};function zu(X,se){return e.rebind(X,se,"sort","children","value"),X.nodes=X,X.links=Ou,X}function Fc(X,se){for(var Te=[X];(X=Te.pop())!=null;)if(se(X),(He=X.children)&&(Ne=He.length))for(var Ne,He;--Ne>=0;)Te.push(He[Ne])}function wc(X,se){for(var Te=[X],Ne=[];(X=Te.pop())!=null;)if(Ne.push(X),(kt=X.children)&&(Ye=kt.length))for(var He=-1,Ye,kt;++HeHe&&(He=nt),Ne.push(nt)}for(kt=0;ktNe&&(Te=se,Ne=He);return Te}function Us(X){return X.reduce(wf,0)}function wf(X,se){return X+se[1]}e.layout.histogram=function(){var X=!0,se=Number,Te=Rf,Ne=zc;function He(Ye,qr){for(var nt=[],jt=Ye.map(se,this),gr=Te.call(this,jt,qr),yr=Ne.call(this,gr,jt,qr),Hr,qr=-1,_i=jt.length,bi=yr.length-1,Zr=X?1:1/_i,ai;++qr0)for(qr=-1;++qr<_i;)ai=jt[qr],ai>=gr[0]&&ai<=gr[1]&&(Hr=nt[e.bisect(yr,ai,1,bi)-1],Hr.y+=Zr,Hr.push(Ye[qr]));return nt}return He.value=function(Ye){return arguments.length?(se=Ye,He):se},He.range=function(Ye){return arguments.length?(Te=vi(Ye),He):Te},He.bins=function(Ye){return arguments.length?(Ne=typeof Ye=="number"?function(kt){return Wu(kt,Ye)}:vi(Ye),He):Ne},He.frequency=function(Ye){return arguments.length?(X=!!Ye,He):X},He};function zc(X,se){return Wu(X,Math.ceil(Math.log(se.length)/Math.LN2+1))}function Wu(X,se){for(var Te=-1,Ne=+X[0],He=(X[1]-Ne)/se,Ye=[];++Te<=se;)Ye[Te]=He*Te+Ne;return Ye}function Rf(X){return[e.min(X),e.max(X)]}e.layout.pack=function(){var X=e.layout.hierarchy().sort(Xu),se=0,Te=[1,1],Ne;function He(Ye,kt){var nt=X.call(this,Ye,kt),jt=nt[0],gr=Te[0],yr=Te[1],Hr=Ne==null?Math.sqrt:typeof Ne=="function"?Ne:function(){return Ne};if(jt.x=jt.y=0,wc(jt,function(_i){_i.r=+Hr(_i.value)}),wc(jt,ah),se){var qr=se*(Ne?1:Math.max(2*jt.r/gr,2*jt.r/yr))/2;wc(jt,function(_i){_i.r+=qr}),wc(jt,ah),wc(jt,function(_i){_i.r-=qr})}return Tc(jt,gr/2,yr/2,Ne?1:1/Math.max(2*jt.r/gr,2*jt.r/yr)),nt}return He.size=function(Ye){return arguments.length?(Te=Ye,He):Te},He.radius=function(Ye){return arguments.length?(Ne=Ye==null||typeof Ye=="function"?Ye:+Ye,He):Ne},He.padding=function(Ye){return arguments.length?(se=+Ye,He):se},zu(He,X)};function Xu(X,se){return X.value-se.value}function uf(X,se){var Te=X._pack_next;X._pack_next=se,se._pack_prev=X,se._pack_next=Te,Te._pack_prev=se}function Xf(X,se){X._pack_next=se,se._pack_prev=X}function Wl(X,se){var Te=se.x-X.x,Ne=se.y-X.y,He=X.r+se.r;return .999*He*He>Te*Te+Ne*Ne}function ah(X){if(!(se=X.children)||!(qr=se.length))return;var se,Te=1/0,Ne=-1/0,He=1/0,Ye=-1/0,kt,nt,jt,gr,yr,Hr,qr;function _i(ei){Te=Math.min(ei.x-ei.r,Te),Ne=Math.max(ei.x+ei.r,Ne),He=Math.min(ei.y-ei.r,He),Ye=Math.max(ei.y+ei.r,Ye)}if(se.forEach(Zu),kt=se[0],kt.x=-kt.r,kt.y=0,_i(kt),qr>1&&(nt=se[1],nt.x=nt.r,nt.y=0,_i(nt),qr>2))for(jt=se[2],wl(kt,nt,jt),_i(jt),uf(kt,jt),kt._pack_prev=jt,uf(jt,nt),nt=kt._pack_next,gr=3;grai.x&&(ai=Ln),Ln.depth>gi.depth&&(gi=Ln)});var Ii=se(Zr,ai)/2-Zr.x,Si=Te[0]/(ai.x+se(ai,Zr)/2+Ii),ei=Te[1]/(gi.depth||1);Fc(_i,function(Ln){Ln.x=(Ln.x+Ii)*Si,Ln.y=Ln.depth*ei})}return qr}function Ye(yr){for(var Hr={A:null,children:[yr]},qr=[Hr],_i;(_i=qr.pop())!=null;)for(var bi=_i.children,Zr,ai=0,gi=bi.length;ai0&&(fc(At(Zr,yr,qr),yr,Ln),gi+=Ln,Ii+=Ln),Si+=Zr.m,gi+=_i.m,ei+=ai.m,Ii+=bi.m;Zr&&!cf(bi)&&(bi.t=Zr,bi.m+=Si-Ii),_i&&!qc(ai)&&(ai.t=_i,ai.m+=gi-ei,qr=yr)}return qr}function gr(yr){yr.x*=Te[0],yr.y=yr.depth*Te[1]}return He.separation=function(yr){return arguments.length?(se=yr,He):se},He.size=function(yr){return arguments.length?(Ne=(Te=yr)==null?gr:null,He):Ne?null:Te},He.nodeSize=function(yr){return arguments.length?(Ne=(Te=yr)==null?null:gr,He):Ne?Te:null},zu(He,X)};function vu(X,se){return X.parent==se.parent?1:2}function qc(X){var se=X.children;return se.length?se[0]:X.t}function cf(X){var se=X.children,Te;return(Te=se.length)?se[Te-1]:X.t}function fc(X,se,Te){var Ne=Te/(se.i-X.i);se.c-=Ne,se.s+=Te,X.c+=Ne,se.z+=Te,se.m+=Te}function Bc(X){for(var se=0,Te=0,Ne=X.children,He=Ne.length,Ye;--He>=0;)Ye=Ne[He],Ye.z+=se,Ye.m+=se,se+=Ye.s+(Te+=Ye.c)}function At(X,se,Te){return X.a.parent===se.parent?X.a:Te}e.layout.cluster=function(){var X=e.layout.hierarchy().sort(null).value(null),se=vu,Te=[1,1],Ne=!1;function He(Ye,kt){var nt=X.call(this,Ye,kt),jt=nt[0],gr,yr=0;wc(jt,function(Zr){var ai=Zr.children;ai&&ai.length?(Zr.x=Cr(ai),Zr.y=Wt(ai)):(Zr.x=gr?yr+=se(Zr,gr):0,Zr.y=0,gr=Zr)});var Hr=Ar(jt),qr=Kr(jt),_i=Hr.x-se(Hr,qr)/2,bi=qr.x+se(qr,Hr)/2;return wc(jt,Ne?function(Zr){Zr.x=(Zr.x-jt.x)*Te[0],Zr.y=(jt.y-Zr.y)*Te[1]}:function(Zr){Zr.x=(Zr.x-_i)/(bi-_i)*Te[0],Zr.y=(1-(jt.y?Zr.y/jt.y:1))*Te[1]}),nt}return He.separation=function(Ye){return arguments.length?(se=Ye,He):se},He.size=function(Ye){return arguments.length?(Ne=(Te=Ye)==null,He):Ne?null:Te},He.nodeSize=function(Ye){return arguments.length?(Ne=(Te=Ye)!=null,He):Ne?Te:null},zu(He,X)};function Wt(X){return 1+e.max(X,function(se){return se.y})}function Cr(X){return X.reduce(function(se,Te){return se+Te.x},0)/X.length}function Ar(X){var se=X.children;return se&&se.length?Ar(se[0]):X}function Kr(X){var se=X.children,Te;return se&&(Te=se.length)?Kr(se[Te-1]):X}e.layout.treemap=function(){var X=e.layout.hierarchy(),se=Math.round,Te=[1,1],Ne=null,He=ki,Ye=!1,kt,nt="squarify",jt=.5*(1+Math.sqrt(5));function gr(Zr,ai){for(var gi=-1,Ii=Zr.length,Si,ei;++gi0;)Ii.push(ei=Si[ia-1]),Ii.area+=ei.area,nt!=="squarify"||(En=qr(Ii,Un))<=Ln?(Si.pop(),Ln=En):(Ii.area-=Ii.pop().area,_i(Ii,Un,gi,!1),Un=Math.min(gi.dx,gi.dy),Ii.length=Ii.area=0,Ln=1/0);Ii.length&&(_i(Ii,Un,gi,!0),Ii.length=Ii.area=0),ai.forEach(yr)}}function Hr(Zr){var ai=Zr.children;if(ai&&ai.length){var gi=He(Zr),Ii=ai.slice(),Si,ei=[];for(gr(Ii,gi.dx*gi.dy/Zr.value),ei.area=0;Si=Ii.pop();)ei.push(Si),ei.area+=Si.area,Si.z!=null&&(_i(ei,Si.z?gi.dx:gi.dy,gi,!Ii.length),ei.length=ei.area=0);ai.forEach(Hr)}}function qr(Zr,ai){for(var gi=Zr.area,Ii,Si=0,ei=1/0,Ln=-1,En=Zr.length;++LnSi&&(Si=Ii));return gi*=gi,ai*=ai,gi?Math.max(ai*Si*jt/gi,gi/(ai*ei*jt)):1/0}function _i(Zr,ai,gi,Ii){var Si=-1,ei=Zr.length,Ln=gi.x,En=gi.y,Un=ai?se(Zr.area/ai):0,ia;if(ai==gi.dx){for((Ii||Un>gi.dy)&&(Un=gi.dy);++Sigi.dx)&&(Un=gi.dx);++Si1);return X+se*Ne*Math.sqrt(-2*Math.log(Ye)/Ye)}},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,Te=0;Te2?Fi:Nn,gr=Ne?Mu:Th;return He=jt(X,se,gr,Te),Ye=jt(se,X,gr,xl),nt}function nt(jt){return He(jt)}return nt.invert=function(jt){return Ye(jt)},nt.domain=function(jt){return arguments.length?(X=jt.map(Number),kt()):X},nt.range=function(jt){return arguments.length?(se=jt,kt()):se},nt.rangeRound=function(jt){return nt.range(jt).interpolate(ju)},nt.clamp=function(jt){return arguments.length?(Ne=jt,kt()):Ne},nt.interpolate=function(jt){return arguments.length?(Te=jt,kt()):Te},nt.ticks=function(jt){return Na(X,jt)},nt.tickFormat=function(jt,gr){return d3_scale_linearTickFormat(X,jt,gr)},nt.nice=function(jt){return Ra(X,jt),kt()},nt.copy=function(){return $n(X,se,Te,Ne)},kt()}function Ca(X,se){return e.rebind(X,se,"range","rangeRound","interpolate","clamp")}function Ra(X,se){return Yi(X,Qi(La(X,se)[2])),Yi(X,Qi(La(X,se)[2])),X}function La(X,se){se==null&&(se=10);var Te=dn(X),Ne=Te[1]-Te[0],He=Math.pow(10,Math.floor(Math.log(Ne/se)/Math.LN10)),Ye=se/Ne*He;return Ye<=.15?He*=10:Ye<=.35?He*=5:Ye<=.75&&(He*=2),Te[0]=Math.ceil(Te[0]/He)*He,Te[1]=Math.floor(Te[1]/He)*He+He*.5,Te[2]=He,Te}function Na(X,se){return e.range.apply(e,La(X,se))}var Yn={s:1,g:1,p:1,r:1,e:1};function Dn(X){return-Math.floor(Math.log(X)/Math.LN10+.01)}function Ka(X,se){var Te=Dn(se[2]);return X in Yn?Math.abs(Te-Dn(Math.max(p(se[0]),p(se[1]))))+ +(X!=="e"):Te-(X==="%")*2}e.scale.log=function(){return bo(e.scale.linear().domain([0,1]),10,!0,[1,10])};function bo(X,se,Te,Ne){function He(nt){return(Te?Math.log(nt<0?0:nt):-Math.log(nt>0?0:-nt))/Math.log(se)}function Ye(nt){return Te?Math.pow(se,nt):-Math.pow(se,-nt)}function kt(nt){return X(He(nt))}return kt.invert=function(nt){return Ye(X.invert(nt))},kt.domain=function(nt){return arguments.length?(Te=nt[0]>=0,X.domain((Ne=nt.map(Number)).map(He)),kt):Ne},kt.base=function(nt){return arguments.length?(se=+nt,X.domain(Ne.map(He)),kt):se},kt.nice=function(){var nt=Yi(Ne.map(He),Te?Math:Xo);return X.domain(nt),Ne=nt.map(Ye),kt},kt.ticks=function(){var nt=dn(Ne),jt=[],gr=nt[0],yr=nt[1],Hr=Math.floor(He(gr)),qr=Math.ceil(He(yr)),_i=se%1?2:se;if(isFinite(qr-Hr)){if(Te){for(;Hr0;bi--)jt.push(Ye(Hr)*bi);for(Hr=0;jt[Hr]yr;qr--);jt=jt.slice(Hr,qr)}return jt},kt.copy=function(){return bo(X.copy(),se,Te,Ne)},Ca(kt,X)}var Xo={floor:function(X){return-Math.ceil(-X)},ceil:function(X){return-Math.floor(-X)}};e.scale.pow=function(){return Ss(e.scale.linear(),1,[0,1])};function Ss(X,se,Te){var Ne=as(se),He=as(1/se);function Ye(kt){return X(Ne(kt))}return Ye.invert=function(kt){return He(X.invert(kt))},Ye.domain=function(kt){return arguments.length?(X.domain((Te=kt.map(Number)).map(Ne)),Ye):Te},Ye.ticks=function(kt){return Na(Te,kt)},Ye.tickFormat=function(kt,nt){return d3_scale_linearTickFormat(Te,kt,nt)},Ye.nice=function(kt){return Ye.domain(Ra(Te,kt))},Ye.exponent=function(kt){return arguments.length?(Ne=as(se=kt),He=as(1/se),X.domain(Te.map(Ne)),Ye):se},Ye.copy=function(){return Ss(X.copy(),se,Te)},Ca(Ye,X)}function as(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 ws([],{t:"range",a:[[]]})};function ws(X,se){var Te,Ne,He;function Ye(nt){return Ne[((Te.get(nt)||(se.t==="range"?Te.set(nt,X.push(nt)):NaN))-1)%Ne.length]}function kt(nt,jt){return e.range(X.length).map(function(gr){return nt+jt*gr})}return Ye.domain=function(nt){if(!arguments.length)return X;X=[],Te=new S;for(var jt=-1,gr=nt.length,yr;++jt0?Te[Ye-1]:X[0],Yeqr?0:1;if(yr=Ie)return jt(yr,bi)+(gr?jt(gr,1-bi):"")+"Z";var Zr,ai,gi,Ii,Si=0,ei=0,Ln,En,Un,ia,Ea,Ia,yo,Da,go=[];if((Ii=(+kt.apply(this,arguments)||0)/2)&&(gi=Ne===Cu?Math.sqrt(gr*gr+yr*yr):+Ne.apply(this,arguments),bi||(ei*=-1),yr&&(ei=ii(gi/yr*Math.sin(Ii))),gr&&(Si=ii(gi/gr*Math.sin(Ii)))),yr){Ln=yr*Math.cos(Hr+ei),En=yr*Math.sin(Hr+ei),Un=yr*Math.cos(qr-ei),ia=yr*Math.sin(qr-ei);var Is=Math.abs(qr-Hr-2*ei)<=tt?0:1;if(ei&&Ac(Ln,En,Un,ia)===bi^Is){var Ms=(Hr+qr)/2;Ln=yr*Math.cos(Ms),En=yr*Math.sin(Ms),Un=ia=null}}else Ln=En=0;if(gr){Ea=gr*Math.cos(qr-Si),Ia=gr*Math.sin(qr-Si),yo=gr*Math.cos(Hr+Si),Da=gr*Math.sin(Hr+Si);var Xs=Math.abs(Hr-qr+2*Si)<=tt?0:1;if(Si&&Ac(Ea,Ia,yo,Da)===1-bi^Xs){var Gn=(Hr+qr)/2;Ea=gr*Math.cos(Gn),Ia=gr*Math.sin(Gn),yo=Da=null}}else Ea=Ia=0;if(_i>Je&&(Zr=Math.min(Math.abs(yr-gr)/2,+Te.apply(this,arguments)))>.001){ai=gr0?0:1}function Ua(X,se,Te,Ne,He){var Ye=X[0]-se[0],kt=X[1]-se[1],nt=(He?Ne:-Ne)/Math.sqrt(Ye*Ye+kt*kt),jt=nt*kt,gr=-nt*Ye,yr=X[0]+jt,Hr=X[1]+gr,qr=se[0]+jt,_i=se[1]+gr,bi=(yr+qr)/2,Zr=(Hr+_i)/2,ai=qr-yr,gi=_i-Hr,Ii=ai*ai+gi*gi,Si=Te-Ne,ei=yr*_i-qr*Hr,Ln=(gi<0?-1:1)*Math.sqrt(Math.max(0,Si*Si*Ii-ei*ei)),En=(ei*gi-ai*Ln)/Ii,Un=(-ei*ai-gi*Ln)/Ii,ia=(ei*gi+ai*Ln)/Ii,Ea=(-ei*ai+gi*Ln)/Ii,Ia=En-bi,yo=Un-Zr,Da=ia-bi,go=Ea-Zr;return Ia*Ia+yo*yo>Da*Da+go*go&&(En=ia,Un=Ea),[[En-jt,Un-gr],[En*Te/Si,Un*Te/Si]]}function oo(){return!0}function Vc(X){var se=Ds,Te=Fs,Ne=oo,He=Ku,Ye=He.key,kt=.7;function nt(jt){var gr=[],yr=[],Hr=-1,qr=jt.length,_i,bi=vi(se),Zr=vi(Te);function ai(){gr.push("M",He(X(yr),kt))}for(;++Hr1?X.join("L"):X+"Z"}function ue(X){return X.join("L")+"Z"}function w(X){for(var se=0,Te=X.length,Ne=X[0],He=[Ne[0],",",Ne[1]];++se1&&He.push("H",Ne[0]),He.join("")}function B(X){for(var se=0,Te=X.length,Ne=X[0],He=[Ne[0],",",Ne[1]];++se1){nt=se[1],Ye=X[jt],jt++,Ne+="C"+(He[0]+kt[0])+","+(He[1]+kt[1])+","+(Ye[0]-nt[0])+","+(Ye[1]-nt[1])+","+Ye[0]+","+Ye[1];for(var gr=2;gr9&&(Ye=Te*3/Math.sqrt(Ye),kt[nt]=Ye*Ne,kt[nt+1]=Ye*He));for(nt=-1;++nt<=jt;)Ye=(X[Math.min(jt,nt+1)][0]-X[Math.max(0,nt-1)][0])/(6*(1+kt[nt]*kt[nt])),se.push([Ye||0,kt[nt]*Ye||0]);return se}function Ft(X){return X.length<3?Ku(X):X[0]+Xe(X,it(X))}e.svg.line.radial=function(){var X=Vc(Ht);return X.radius=X.x,delete X.x,X.angle=X.y,delete X.y,X};function Ht(X){for(var se,Te=-1,Ne=X.length,He,Ye;++Tett)+",1 "+Hr}function gr(yr,Hr,qr,_i){return"Q 0,0 "+_i}return Ye.radius=function(yr){return arguments.length?(Te=vi(yr),Ye):Te},Ye.source=function(yr){return arguments.length?(X=vi(yr),Ye):X},Ye.target=function(yr){return arguments.length?(se=vi(yr),Ye):se},Ye.startAngle=function(yr){return arguments.length?(Ne=vi(yr),Ye):Ne},Ye.endAngle=function(yr){return arguments.length?(He=vi(yr),Ye):He},Ye};function Or(X){return X.radius}e.svg.diagonal=function(){var X=dr,se=Sr,Te=Wr;function Ne(He,Ye){var kt=X.call(this,He,Ye),nt=se.call(this,He,Ye),jt=(kt.y+nt.y)/2,gr=[kt,{x:kt.x,y:jt},{x:nt.x,y:jt},nt];return gr=gr.map(Te),"M"+gr[0]+"C"+gr[1]+" "+gr[2]+" "+gr[3]}return Ne.source=function(He){return arguments.length?(X=vi(He),Ne):X},Ne.target=function(He){return arguments.length?(se=vi(He),Ne):se},Ne.projection=function(He){return arguments.length?(Te=He,Ne):Te},Ne};function Wr(X){return[X.x,X.y]}e.svg.diagonal.radial=function(){var X=e.svg.diagonal(),se=Wr,Te=X.projection;return X.projection=function(Ne){return arguments.length?Te(ni(se=Ne)):se},X};function ni(X){return function(){var se=X.apply(this,arguments),Te=se[0],Ne=se[1]-xe;return[Te*Math.cos(Ne),Te*Math.sin(Ne)]}}e.svg.symbol=function(){var X=cn,se=Pi;function Te(Ne,He){return(Cn.get(X.call(this,Ne,He))||ln)(se.call(this,Ne,He))}return Te.type=function(Ne){return arguments.length?(X=vi(Ne),Te):X},Te.size=function(Ne){return arguments.length?(se=vi(Ne),Te):se},Te};function Pi(){return 64}function cn(){return"circle"}function ln(X){var se=Math.sqrt(X/tt);return"M0,"+se+"A"+se+","+se+" 0 1,1 0,"+-se+"A"+se+","+se+" 0 1,1 0,"+se+"Z"}var Cn=e.map({circle:ln,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*Ta)),Te=se*Ta;return"M0,"+-se+"L"+Te+",0 0,"+se+" "+-Te+",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/Kn),Te=se*Kn/2;return"M0,"+Te+"L"+se+","+-Te+" "+-se+","+-Te+"Z"},"triangle-up":function(X){var se=Math.sqrt(X/Kn),Te=se*Kn/2;return"M0,"+-Te+"L"+se+","+Te+" "+-se+","+Te+"Z"}});e.svg.symbolTypes=Cn.keys();var Kn=Math.sqrt(3),Ta=Math.tan(30*ke);Pe.transition=function(X){for(var se=Bo||++mo,Te=To(X),Ne=[],He,Ye,kt=Ps||{time:Date.now(),ease:bl,delay:0,duration:250},nt=-1,jt=this.length;++nt0;)Hr[--Ii].call(X,gi);if(ai>=1)return kt.event&&kt.event.end.call(X,X.__data__,se),--Ye.count?delete Ye[Ne]:delete X[Te],1}kt||(nt=He.time,jt=No(qr,0,nt),kt=Ye[Ne]={tween:new S,time:nt,timer:jt,delay:He.delay,duration:He.duration,ease:He.ease,index:se},He=null,++Ye.count)}e.svg.axis=function(){var X=e.scale.linear(),se=Ul,Te=6,Ne=6,He=3,Ye=[10],kt=null,nt;function jt(gr){gr.each(function(){var yr=e.select(this),Hr=this.__chart__||X,qr=this.__chart__=X.copy(),_i=kt==null?qr.ticks?qr.ticks.apply(qr,Ye):qr.domain():kt,bi=nt==null?qr.tickFormat?qr.tickFormat.apply(qr,Ye):G:nt,Zr=yr.selectAll(".tick").data(_i,qr),ai=Zr.enter().insert("g",".domain").attr("class","tick").style("opacity",Je),gi=e.transition(Zr.exit()).style("opacity",Je).remove(),Ii=e.transition(Zr.order()).style("opacity",1),Si=Math.max(Te,0)+He,ei,Ln=wn(qr),En=yr.selectAll(".domain").data([0]),Un=(En.enter().append("path").attr("class","domain"),e.transition(En));ai.append("line"),ai.append("text");var ia=ai.select("line"),Ea=Ii.select("line"),Ia=Zr.select("text").text(bi),yo=ai.select("text"),Da=Ii.select("text"),go=se==="top"||se==="left"?-1:1,Is,Ms,Xs,Gn;if(se==="bottom"||se==="top"?(ei=au,Is="x",Xs="y",Ms="x2",Gn="y2",Ia.attr("dy",go<0?"0em":".71em").style("text-anchor","middle"),Un.attr("d","M"+Ln[0]+","+go*Ne+"V0H"+Ln[1]+"V"+go*Ne)):(ei=Js,Is="y",Xs="x",Ms="y2",Gn="x2",Ia.attr("dy",".32em").style("text-anchor",go<0?"end":"start"),Un.attr("d","M"+go*Ne+","+Ln[0]+"H0V"+Ln[1]+"H"+go*Ne)),ia.attr(Gn,go*Te),yo.attr(Xs,go*Si),Ea.attr(Ms,0).attr(Gn,go*Te),Da.attr(Is,0).attr(Xs,go*Si),qr.rangeBand){var ja=qr,Fo=ja.rangeBand()/2;Hr=qr=function(Uo){return ja(Uo)+Fo}}else Hr.rangeBand?Hr=qr:gi.call(ei,qr,Hr);ai.call(ei,Hr,qr),Ii.call(ei,qr,qr)})}return jt.scale=function(gr){return arguments.length?(X=gr,jt):X},jt.orient=function(gr){return arguments.length?(se=gr in Lu?gr+"":Ul,jt):se},jt.ticks=function(){return arguments.length?(Ye=r(arguments),jt):Ye},jt.tickValues=function(gr){return arguments.length?(kt=gr,jt):kt},jt.tickFormat=function(gr){return arguments.length?(nt=gr,jt):nt},jt.tickSize=function(gr){var yr=arguments.length;return yr?(Te=+gr,Ne=+arguments[yr-1],jt):Te},jt.innerTickSize=function(gr){return arguments.length?(Te=+gr,jt):Te},jt.outerTickSize=function(gr){return arguments.length?(Ne=+gr,jt):Ne},jt.tickPadding=function(gr){return arguments.length?(He=+gr,jt):He},jt.tickSubdivide=function(){return arguments.length&&jt},jt};var Ul="bottom",Lu={top:1,right:1,bottom:1,left:1};function au(X,se,Te){X.attr("transform",function(Ne){var He=se(Ne);return"translate("+(isFinite(He)?He:Te(Ne))+",0)"})}function Js(X,se,Te){X.attr("transform",function(Ne){var He=se(Ne);return"translate(0,"+(isFinite(He)?He:Te(Ne))+")"})}e.svg.brush=function(){var X=Ce(yr,"brushstart","brush","brushend"),se=null,Te=null,Ne=[0,0],He=[0,0],Ye,kt,nt=!0,jt=!0,gr=dc[0];function yr(Zr){Zr.each(function(){var ai=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",bi).on("touchstart.brush",bi),gi=ai.selectAll(".background").data([0]);gi.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),ai.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Ii=ai.selectAll(".resize").data(gr,G);Ii.exit().remove(),Ii.enter().append("g").attr("class",function(En){return"resize "+En}).style("cursor",function(En){return Ql[En]}).append("rect").attr("x",function(En){return/[ew]$/.test(En)?-3:null}).attr("y",function(En){return/^[ns]/.test(En)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Ii.style("display",yr.empty()?"none":null);var Si=e.transition(ai),ei=e.transition(gi),Ln;se&&(Ln=wn(se),ei.attr("x",Ln[0]).attr("width",Ln[1]-Ln[0]),qr(Si)),Te&&(Ln=wn(Te),ei.attr("y",Ln[0]).attr("height",Ln[1]-Ln[0]),_i(Si)),Hr(Si)})}yr.event=function(Zr){Zr.each(function(){var ai=X.of(this,arguments),gi={x:Ne,y:He,i:Ye,j:kt},Ii=this.__chart__||gi;this.__chart__=gi,Bo?e.select(this).transition().each("start.brush",function(){Ye=Ii.i,kt=Ii.j,Ne=Ii.x,He=Ii.y,ai({type:"brushstart"})}).tween("brush:brush",function(){var Si=Gu(Ne,gi.x),ei=Gu(He,gi.y);return Ye=kt=null,function(Ln){Ne=gi.x=Si(Ln),He=gi.y=ei(Ln),ai({type:"brush",mode:"resize"})}}).each("end.brush",function(){Ye=gi.i,kt=gi.j,ai({type:"brush",mode:"resize"}),ai({type:"brushend"})}):(ai({type:"brushstart"}),ai({type:"brush",mode:"resize"}),ai({type:"brushend"}))})};function Hr(Zr){Zr.selectAll(".resize").attr("transform",function(ai){return"translate("+Ne[+/e$/.test(ai)]+","+He[+/^s/.test(ai)]+")"})}function qr(Zr){Zr.select(".extent").attr("x",Ne[0]),Zr.selectAll(".extent,.n>rect,.s>rect").attr("width",Ne[1]-Ne[0])}function _i(Zr){Zr.select(".extent").attr("y",He[0]),Zr.selectAll(".extent,.e>rect,.w>rect").attr("height",He[1]-He[0])}function bi(){var Zr=this,ai=e.select(e.event.target),gi=X.of(Zr,arguments),Ii=e.select(Zr),Si=ai.datum(),ei=!/^(n|s)$/.test(Si)&&se,Ln=!/^(e|w)$/.test(Si)&&Te,En=ai.classed("extent"),Un=Br(Zr),ia,Ea=e.mouse(Zr),Ia,yo=e.select(a(Zr)).on("keydown.brush",Is).on("keyup.brush",Ms);if(e.event.changedTouches?yo.on("touchmove.brush",Xs).on("touchend.brush",ja):yo.on("mousemove.brush",Xs).on("mouseup.brush",ja),Ii.interrupt().selectAll("*").interrupt(),En)Ea[0]=Ne[0]-Ea[0],Ea[1]=He[0]-Ea[1];else if(Si){var Da=+/w$/.test(Si),go=+/^n/.test(Si);Ia=[Ne[1-Da]-Ea[0],He[1-go]-Ea[1]],Ea[0]=Ne[Da],Ea[1]=He[go]}else e.event.altKey&&(ia=Ea.slice());Ii.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",ai.style("cursor")),gi({type:"brushstart"}),Xs();function Is(){e.event.keyCode==32&&(En||(ia=null,Ea[0]-=Ne[1],Ea[1]-=He[1],En=2),_e())}function Ms(){e.event.keyCode==32&&En==2&&(Ea[0]+=Ne[1],Ea[1]+=He[1],En=0,_e())}function Xs(){var Fo=e.mouse(Zr),Uo=!1;Ia&&(Fo[0]+=Ia[0],Fo[1]+=Ia[1]),En||(e.event.altKey?(ia||(ia=[(Ne[0]+Ne[1])/2,(He[0]+He[1])/2]),Ea[0]=Ne[+(Fo[0]{(function(e,t){typeof f6=="object"&&typeof pee!="undefined"?t(f6):(e=e||self,t(e.d3=e.d3||{}))})(f6,function(e){"use strict";var t=new Date,r=new Date;function n($e,St,Qt,Vt){function _t(It){return $e(It=arguments.length===0?new Date:new Date(+It)),It}return _t.floor=function(It){return $e(It=new Date(+It)),It},_t.ceil=function(It){return $e(It=new Date(It-1)),St(It,1),$e(It),It},_t.round=function(It){var mt=_t(It),er=_t.ceil(It);return It-mt0))return lr;do lr.push(Tr=new Date(+It)),St(It,er),$e(It);while(Tr=mt)for(;$e(mt),!It(mt);)mt.setTime(mt-1)},function(mt,er){if(mt>=mt)if(er<0)for(;++er<=0;)for(;St(mt,-1),!It(mt););else for(;--er>=0;)for(;St(mt,1),!It(mt););})},Qt&&(_t.count=function(It,mt){return t.setTime(+It),r.setTime(+mt),$e(t),$e(r),Math.floor(Qt(t,r))},_t.every=function(It){return It=Math.floor(It),!isFinite(It)||!(It>0)?null:It>1?_t.filter(Vt?function(mt){return Vt(mt)%It===0}:function(mt){return _t.count(0,mt)%It===0}):_t}),_t}var i=n(function(){},function($e,St){$e.setTime(+$e+St)},function($e,St){return St-$e});i.every=function($e){return $e=Math.floor($e),!isFinite($e)||!($e>0)?null:$e>1?n(function(St){St.setTime(Math.floor(St/$e)*$e)},function(St,Qt){St.setTime(+St+Qt*$e)},function(St,Qt){return(Qt-St)/$e}):i};var a=i.range,o=1e3,s=6e4,l=36e5,u=864e5,c=6048e5,f=n(function($e){$e.setTime($e-$e.getMilliseconds())},function($e,St){$e.setTime(+$e+St*o)},function($e,St){return(St-$e)/o},function($e){return $e.getUTCSeconds()}),h=f.range,d=n(function($e){$e.setTime($e-$e.getMilliseconds()-$e.getSeconds()*o)},function($e,St){$e.setTime(+$e+St*s)},function($e,St){return(St-$e)/s},function($e){return $e.getMinutes()}),v=d.range,_=n(function($e){$e.setTime($e-$e.getMilliseconds()-$e.getSeconds()*o-$e.getMinutes()*s)},function($e,St){$e.setTime(+$e+St*l)},function($e,St){return(St-$e)/l},function($e){return $e.getHours()}),b=_.range,p=n(function($e){$e.setHours(0,0,0,0)},function($e,St){$e.setDate($e.getDate()+St)},function($e,St){return(St-$e-(St.getTimezoneOffset()-$e.getTimezoneOffset())*s)/u},function($e){return $e.getDate()-1}),k=p.range;function E($e){return n(function(St){St.setDate(St.getDate()-(St.getDay()+7-$e)%7),St.setHours(0,0,0,0)},function(St,Qt){St.setDate(St.getDate()+Qt*7)},function(St,Qt){return(Qt-St-(Qt.getTimezoneOffset()-St.getTimezoneOffset())*s)/c})}var S=E(0),L=E(1),x=E(2),C=E(3),M=E(4),g=E(5),P=E(6),T=S.range,z=L.range,O=x.range,V=C.range,G=M.range,Z=g.range,j=P.range,N=n(function($e){$e.setDate(1),$e.setHours(0,0,0,0)},function($e,St){$e.setMonth($e.getMonth()+St)},function($e,St){return St.getMonth()-$e.getMonth()+(St.getFullYear()-$e.getFullYear())*12},function($e){return $e.getMonth()}),H=N.range,te=n(function($e){$e.setMonth(0,1),$e.setHours(0,0,0,0)},function($e,St){$e.setFullYear($e.getFullYear()+St)},function($e,St){return St.getFullYear()-$e.getFullYear()},function($e){return $e.getFullYear()});te.every=function($e){return!isFinite($e=Math.floor($e))||!($e>0)?null:n(function(St){St.setFullYear(Math.floor(St.getFullYear()/$e)*$e),St.setMonth(0,1),St.setHours(0,0,0,0)},function(St,Qt){St.setFullYear(St.getFullYear()+Qt*$e)})};var oe=te.range,_e=n(function($e){$e.setUTCSeconds(0,0)},function($e,St){$e.setTime(+$e+St*s)},function($e,St){return(St-$e)/s},function($e){return $e.getUTCMinutes()}),Ee=_e.range,Ce=n(function($e){$e.setUTCMinutes(0,0,0)},function($e,St){$e.setTime(+$e+St*l)},function($e,St){return(St-$e)/l},function($e){return $e.getUTCHours()}),me=Ce.range,ie=n(function($e){$e.setUTCHours(0,0,0,0)},function($e,St){$e.setUTCDate($e.getUTCDate()+St)},function($e,St){return(St-$e)/u},function($e){return $e.getUTCDate()-1}),Se=ie.range;function Le($e){return n(function(St){St.setUTCDate(St.getUTCDate()-(St.getUTCDay()+7-$e)%7),St.setUTCHours(0,0,0,0)},function(St,Qt){St.setUTCDate(St.getUTCDate()+Qt*7)},function(St,Qt){return(Qt-St)/c})}var Ae=Le(0),Fe=Le(1),Pe=Le(2),ge=Le(3),Re=Le(4),ce=Le(5),Ze=Le(6),ut=Ae.range,pt=Fe.range,Zt=Pe.range,st=ge.range,lt=Re.range,Gt=ce.range,Nt=Ze.range,Jt=n(function($e){$e.setUTCDate(1),$e.setUTCHours(0,0,0,0)},function($e,St){$e.setUTCMonth($e.getUTCMonth()+St)},function($e,St){return St.getUTCMonth()-$e.getUTCMonth()+(St.getUTCFullYear()-$e.getUTCFullYear())*12},function($e){return $e.getUTCMonth()}),sr=Jt.range,wr=n(function($e){$e.setUTCMonth(0,1),$e.setUTCHours(0,0,0,0)},function($e,St){$e.setUTCFullYear($e.getUTCFullYear()+St)},function($e,St){return St.getUTCFullYear()-$e.getUTCFullYear()},function($e){return $e.getUTCFullYear()});wr.every=function($e){return!isFinite($e=Math.floor($e))||!($e>0)?null:n(function(St){St.setUTCFullYear(Math.floor(St.getUTCFullYear()/$e)*$e),St.setUTCMonth(0,1),St.setUTCHours(0,0,0,0)},function(St,Qt){St.setUTCFullYear(St.getUTCFullYear()+Qt*$e)})};var cr=wr.range;e.timeDay=p,e.timeDays=k,e.timeFriday=g,e.timeFridays=Z,e.timeHour=_,e.timeHours=b,e.timeInterval=n,e.timeMillisecond=i,e.timeMilliseconds=a,e.timeMinute=d,e.timeMinutes=v,e.timeMonday=L,e.timeMondays=z,e.timeMonth=N,e.timeMonths=H,e.timeSaturday=P,e.timeSaturdays=j,e.timeSecond=f,e.timeSeconds=h,e.timeSunday=S,e.timeSundays=T,e.timeThursday=M,e.timeThursdays=G,e.timeTuesday=x,e.timeTuesdays=O,e.timeWednesday=C,e.timeWednesdays=V,e.timeWeek=S,e.timeWeeks=T,e.timeYear=te,e.timeYears=oe,e.utcDay=ie,e.utcDays=Se,e.utcFriday=ce,e.utcFridays=Gt,e.utcHour=Ce,e.utcHours=me,e.utcMillisecond=i,e.utcMilliseconds=a,e.utcMinute=_e,e.utcMinutes=Ee,e.utcMonday=Fe,e.utcMondays=pt,e.utcMonth=Jt,e.utcMonths=sr,e.utcSaturday=Ze,e.utcSaturdays=Nt,e.utcSecond=f,e.utcSeconds=h,e.utcSunday=Ae,e.utcSundays=ut,e.utcThursday=Re,e.utcThursdays=lt,e.utcTuesday=Pe,e.utcTuesdays=Zt,e.utcWednesday=ge,e.utcWednesdays=st,e.utcWeek=Ae,e.utcWeeks=ut,e.utcYear=wr,e.utcYears=cr,Object.defineProperty(e,"__esModule",{value:!0})})});var r3=ye((h6,gee)=>{(function(e,t){typeof h6=="object"&&typeof gee!="undefined"?t(h6,bO()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(h6,function(e,t){"use strict";function r(Ge){if(0<=Ge.y&&Ge.y<100){var Je=new Date(-1,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L);return Je.setFullYear(Ge.y),Je}return new Date(Ge.y,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L)}function n(Ge){if(0<=Ge.y&&Ge.y<100){var Je=new Date(Date.UTC(-1,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L));return Je.setUTCFullYear(Ge.y),Je}return new Date(Date.UTC(Ge.y,Ge.m,Ge.d,Ge.H,Ge.M,Ge.S,Ge.L))}function i(Ge,Je,je){return{y:Ge,m:Je,d:je,H:0,M:0,S:0,L:0}}function a(Ge){var Je=Ge.dateTime,je=Ge.date,tt=Ge.time,xt=Ge.periods,Ie=Ge.days,xe=Ge.shortDays,ke=Ge.months,vt=Ge.shortMonths,ir=h(xt),ar=d(xt),vr=h(Ie),ii=d(Ie),pi=h(xe),$r=d(xe),di=h(ke),ji=d(ke),In=h(vt),wi=d(vt),On={a:$i,A:tn,b:fn,B:yn,c:null,d:N,e:N,f:Ee,H,I:te,j:oe,L:_e,m:Ce,M:me,p:Sn,q:Ba,Q:mt,s:er,S:ie,u:Se,U:Le,V:Ae,w:Fe,W:Pe,x:null,X:null,y:ge,Y:Re,Z:ce,"%":It},qn={a:ua,A:ma,b:Wa,B:Fa,c:null,d:Ze,e:Ze,f:lt,H:ut,I:pt,j:Zt,L:st,m:Gt,M:Nt,p:Wo,q:da,Q:mt,s:er,S:Jt,u:sr,U:wr,V:cr,w:$e,W:St,x:null,X:null,y:Qt,Y:Vt,Z:_t,"%":It},Fn={a:rr,A:nr,b:Er,B:Xr,c:ri,d:M,e:M,f:V,H:P,I:P,j:g,L:O,m:C,M:T,p:wt,q:x,Q:Z,s:j,S:z,u:_,U:b,V:p,w:v,W:k,x:Qr,X:Oi,y:S,Y:E,Z:L,"%":G};On.x=ra(je,On),On.X=ra(tt,On),On.c=ra(Je,On),qn.x=ra(je,qn),qn.X=ra(tt,qn),qn.c=ra(Je,qn);function ra(Wn,Ha){return function(vo){var jn=[],Mt=-1,kr=0,Jr=Wn.length,vi,hn,An;for(vo instanceof Date||(vo=new Date(+vo));++Mt53)return null;"w"in jn||(jn.w=1),"Z"in jn?(kr=n(i(jn.y,0,1)),Jr=kr.getUTCDay(),kr=Jr>4||Jr===0?t.utcMonday.ceil(kr):t.utcMonday(kr),kr=t.utcDay.offset(kr,(jn.V-1)*7),jn.y=kr.getUTCFullYear(),jn.m=kr.getUTCMonth(),jn.d=kr.getUTCDate()+(jn.w+6)%7):(kr=r(i(jn.y,0,1)),Jr=kr.getDay(),kr=Jr>4||Jr===0?t.timeMonday.ceil(kr):t.timeMonday(kr),kr=t.timeDay.offset(kr,(jn.V-1)*7),jn.y=kr.getFullYear(),jn.m=kr.getMonth(),jn.d=kr.getDate()+(jn.w+6)%7)}else("W"in jn||"U"in jn)&&("w"in jn||(jn.w="u"in jn?jn.u%7:"W"in jn?1:0),Jr="Z"in jn?n(i(jn.y,0,1)).getUTCDay():r(i(jn.y,0,1)).getDay(),jn.m=0,jn.d="W"in jn?(jn.w+6)%7+jn.W*7-(Jr+5)%7:jn.w+jn.U*7-(Jr+6)%7);return"Z"in jn?(jn.H+=jn.Z/100|0,jn.M+=jn.Z%100,n(jn)):r(jn)}}function Ut(Wn,Ha,vo,jn){for(var Mt=0,kr=Ha.length,Jr=vo.length,vi,hn;Mt=Jr)return-1;if(vi=Ha.charCodeAt(Mt++),vi===37){if(vi=Ha.charAt(Mt++),hn=Fn[vi in o?Ha.charAt(Mt++):vi],!hn||(jn=hn(Wn,vo,jn))<0)return-1}else if(vi!=vo.charCodeAt(jn++))return-1}return jn}function wt(Wn,Ha,vo){var jn=ir.exec(Ha.slice(vo));return jn?(Wn.p=ar[jn[0].toLowerCase()],vo+jn[0].length):-1}function rr(Wn,Ha,vo){var jn=pi.exec(Ha.slice(vo));return jn?(Wn.w=$r[jn[0].toLowerCase()],vo+jn[0].length):-1}function nr(Wn,Ha,vo){var jn=vr.exec(Ha.slice(vo));return jn?(Wn.w=ii[jn[0].toLowerCase()],vo+jn[0].length):-1}function Er(Wn,Ha,vo){var jn=In.exec(Ha.slice(vo));return jn?(Wn.m=wi[jn[0].toLowerCase()],vo+jn[0].length):-1}function Xr(Wn,Ha,vo){var jn=di.exec(Ha.slice(vo));return jn?(Wn.m=ji[jn[0].toLowerCase()],vo+jn[0].length):-1}function ri(Wn,Ha,vo){return Ut(Wn,Je,Ha,vo)}function Qr(Wn,Ha,vo){return Ut(Wn,je,Ha,vo)}function Oi(Wn,Ha,vo){return Ut(Wn,tt,Ha,vo)}function $i(Wn){return xe[Wn.getDay()]}function tn(Wn){return Ie[Wn.getDay()]}function fn(Wn){return vt[Wn.getMonth()]}function yn(Wn){return ke[Wn.getMonth()]}function Sn(Wn){return xt[+(Wn.getHours()>=12)]}function Ba(Wn){return 1+~~(Wn.getMonth()/3)}function ua(Wn){return xe[Wn.getUTCDay()]}function ma(Wn){return Ie[Wn.getUTCDay()]}function Wa(Wn){return vt[Wn.getUTCMonth()]}function Fa(Wn){return ke[Wn.getUTCMonth()]}function Wo(Wn){return xt[+(Wn.getUTCHours()>=12)]}function da(Wn){return 1+~~(Wn.getUTCMonth()/3)}return{format:function(Wn){var Ha=ra(Wn+="",On);return Ha.toString=function(){return Wn},Ha},parse:function(Wn){var Ha=la(Wn+="",!1);return Ha.toString=function(){return Wn},Ha},utcFormat:function(Wn){var Ha=ra(Wn+="",qn);return Ha.toString=function(){return Wn},Ha},utcParse:function(Wn){var Ha=la(Wn+="",!0);return Ha.toString=function(){return Wn},Ha}}}var o={"-":"",_:" ",0:"0"},s=/^\s*\d+/,l=/^%/,u=/[\\^$*+?|[\]().{}]/g;function c(Ge,Je,je){var tt=Ge<0?"-":"",xt=(tt?-Ge:Ge)+"",Ie=xt.length;return tt+(Ie68?1900:2e3),je+tt[0].length):-1}function L(Ge,Je,je){var tt=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Je.slice(je,je+6));return tt?(Ge.Z=tt[1]?0:-(tt[2]+(tt[3]||"00")),je+tt[0].length):-1}function x(Ge,Je,je){var tt=s.exec(Je.slice(je,je+1));return tt?(Ge.q=tt[0]*3-3,je+tt[0].length):-1}function C(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.m=tt[0]-1,je+tt[0].length):-1}function M(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.d=+tt[0],je+tt[0].length):-1}function g(Ge,Je,je){var tt=s.exec(Je.slice(je,je+3));return tt?(Ge.m=0,Ge.d=+tt[0],je+tt[0].length):-1}function P(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.H=+tt[0],je+tt[0].length):-1}function T(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.M=+tt[0],je+tt[0].length):-1}function z(Ge,Je,je){var tt=s.exec(Je.slice(je,je+2));return tt?(Ge.S=+tt[0],je+tt[0].length):-1}function O(Ge,Je,je){var tt=s.exec(Je.slice(je,je+3));return tt?(Ge.L=+tt[0],je+tt[0].length):-1}function V(Ge,Je,je){var tt=s.exec(Je.slice(je,je+6));return tt?(Ge.L=Math.floor(tt[0]/1e3),je+tt[0].length):-1}function G(Ge,Je,je){var tt=l.exec(Je.slice(je,je+1));return tt?je+tt[0].length:-1}function Z(Ge,Je,je){var tt=s.exec(Je.slice(je));return tt?(Ge.Q=+tt[0],je+tt[0].length):-1}function j(Ge,Je,je){var tt=s.exec(Je.slice(je));return tt?(Ge.s=+tt[0],je+tt[0].length):-1}function N(Ge,Je){return c(Ge.getDate(),Je,2)}function H(Ge,Je){return c(Ge.getHours(),Je,2)}function te(Ge,Je){return c(Ge.getHours()%12||12,Je,2)}function oe(Ge,Je){return c(1+t.timeDay.count(t.timeYear(Ge),Ge),Je,3)}function _e(Ge,Je){return c(Ge.getMilliseconds(),Je,3)}function Ee(Ge,Je){return _e(Ge,Je)+"000"}function Ce(Ge,Je){return c(Ge.getMonth()+1,Je,2)}function me(Ge,Je){return c(Ge.getMinutes(),Je,2)}function ie(Ge,Je){return c(Ge.getSeconds(),Je,2)}function Se(Ge){var Je=Ge.getDay();return Je===0?7:Je}function Le(Ge,Je){return c(t.timeSunday.count(t.timeYear(Ge)-1,Ge),Je,2)}function Ae(Ge,Je){var je=Ge.getDay();return Ge=je>=4||je===0?t.timeThursday(Ge):t.timeThursday.ceil(Ge),c(t.timeThursday.count(t.timeYear(Ge),Ge)+(t.timeYear(Ge).getDay()===4),Je,2)}function Fe(Ge){return Ge.getDay()}function Pe(Ge,Je){return c(t.timeMonday.count(t.timeYear(Ge)-1,Ge),Je,2)}function ge(Ge,Je){return c(Ge.getFullYear()%100,Je,2)}function Re(Ge,Je){return c(Ge.getFullYear()%1e4,Je,4)}function ce(Ge){var Je=Ge.getTimezoneOffset();return(Je>0?"-":(Je*=-1,"+"))+c(Je/60|0,"0",2)+c(Je%60,"0",2)}function Ze(Ge,Je){return c(Ge.getUTCDate(),Je,2)}function ut(Ge,Je){return c(Ge.getUTCHours(),Je,2)}function pt(Ge,Je){return c(Ge.getUTCHours()%12||12,Je,2)}function Zt(Ge,Je){return c(1+t.utcDay.count(t.utcYear(Ge),Ge),Je,3)}function st(Ge,Je){return c(Ge.getUTCMilliseconds(),Je,3)}function lt(Ge,Je){return st(Ge,Je)+"000"}function Gt(Ge,Je){return c(Ge.getUTCMonth()+1,Je,2)}function Nt(Ge,Je){return c(Ge.getUTCMinutes(),Je,2)}function Jt(Ge,Je){return c(Ge.getUTCSeconds(),Je,2)}function sr(Ge){var Je=Ge.getUTCDay();return Je===0?7:Je}function wr(Ge,Je){return c(t.utcSunday.count(t.utcYear(Ge)-1,Ge),Je,2)}function cr(Ge,Je){var je=Ge.getUTCDay();return Ge=je>=4||je===0?t.utcThursday(Ge):t.utcThursday.ceil(Ge),c(t.utcThursday.count(t.utcYear(Ge),Ge)+(t.utcYear(Ge).getUTCDay()===4),Je,2)}function $e(Ge){return Ge.getUTCDay()}function St(Ge,Je){return c(t.utcMonday.count(t.utcYear(Ge)-1,Ge),Je,2)}function Qt(Ge,Je){return c(Ge.getUTCFullYear()%100,Je,2)}function Vt(Ge,Je){return c(Ge.getUTCFullYear()%1e4,Je,4)}function _t(){return"+0000"}function It(){return"%"}function mt(Ge){return+Ge}function er(Ge){return Math.floor(+Ge/1e3)}var lr;Tr({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 Tr(Ge){return lr=a(Ge),e.timeFormat=lr.format,e.timeParse=lr.parse,e.utcFormat=lr.utcFormat,e.utcParse=lr.utcParse,lr}var Lr="%Y-%m-%dT%H:%M:%S.%LZ";function ti(Ge){return Ge.toISOString()}var Br=Date.prototype.toISOString?ti:e.utcFormat(Lr);function Vr(Ge){var Je=new Date(Ge);return isNaN(Je)?null:Je}var dt=+new Date("2000-01-01T00:00:00.000Z")?Vr:e.utcParse(Lr);e.isoFormat=Br,e.isoParse=dt,e.timeFormatDefaultLocale=Tr,e.timeFormatLocale=a,Object.defineProperty(e,"__esModule",{value:!0})})});var wO=ye((d6,mee)=>{(function(e,t){typeof d6=="object"&&typeof mee!="undefined"?t(d6):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(d6,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,z=[],O=0,V=C[0],G=0;T>0&&V>0&&(G+V+1>P&&(V=Math.max(1,P-G)),z.push(g.substring(T-=V,T+V)),!((G+=V+1)>P));)V=C[O=(O+1)%C.length];return z.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],z=T-(c=Math.max(-8,Math.min(8,Math.floor(T/3)))*3)+1,O=P.length;return z===O?P:z>O?P+new Array(z-O+1).join("0"):z>0?P.slice(0,z)+"."+P.slice(z):"0."+new Array(1-z).join("0")+r(C,Math.max(0,M+z-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 _=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(_.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+"",z=C.numerals===void 0?v:a(_.call(C.numerals,String)),O=C.percent===void 0?"%":C.percent+"",V=C.minus===void 0?"-":C.minus+"",G=C.nan===void 0?"NaN":C.nan+"";function Z(N){N=s(N);var H=N.fill,te=N.align,oe=N.sign,_e=N.symbol,Ee=N.zero,Ce=N.width,me=N.comma,ie=N.precision,Se=N.trim,Le=N.type;Le==="n"?(me=!0,Le="g"):d[Le]||(ie===void 0&&(ie=12),Se=!0,Le="g"),(Ee||H==="0"&&te==="=")&&(Ee=!0,H="0",te="=");var Ae=_e==="$"?g:_e==="#"&&/[boxX]/.test(Le)?"0"+Le.toLowerCase():"",Fe=_e==="$"?P:/[%p]/.test(Le)?O:"",Pe=d[Le],ge=/[defgprs%]/.test(Le);ie=ie===void 0?6:/[gprs]/.test(Le)?Math.max(1,Math.min(21,ie)):Math.max(0,Math.min(20,ie));function Re(ce){var Ze=Ae,ut=Fe,pt,Zt,st;if(Le==="c")ut=Pe(ce)+ut,ce="";else{ce=+ce;var lt=ce<0||1/ce<0;if(ce=isNaN(ce)?G:Pe(Math.abs(ce),ie),Se&&(ce=u(ce)),lt&&+ce==0&&oe!=="+"&&(lt=!1),Ze=(lt?oe==="("?oe:V:oe==="-"||oe==="("?"":oe)+Ze,ut=(Le==="s"?b[8+c/3]:"")+ut+(lt&&oe==="("?")":""),ge){for(pt=-1,Zt=ce.length;++ptst||st>57){ut=(st===46?T+ce.slice(pt+1):ce.slice(pt))+ut,ce=ce.slice(0,pt);break}}}me&&!Ee&&(ce=M(ce,1/0));var Gt=Ze.length+ce.length+ut.length,Nt=Gt>1)+Ze+ce+ut+Nt.slice(Gt);break;default:ce=Nt+Ze+ce+ut;break}return z(ce)}return Re.toString=function(){return N+""},Re}function j(N,H){var te=Z((N=s(N),N.type="f",N)),oe=Math.max(-8,Math.min(8,Math.floor(n(H)/3)))*3,_e=Math.pow(10,-oe),Ee=b[8+oe/3];return function(Ce){return te(_e*Ce)+Ee}}return{format:Z,formatPrefix:j}}var k;E({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function E(C){return k=p(C),e.format=k.format,e.formatPrefix=k.formatPrefix,k}function S(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 x(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=E,e.formatLocale=p,e.formatSpecifier=s,e.precisionFixed=S,e.precisionPrefix=L,e.precisionRound=x,Object.defineProperty(e,"__esModule",{value:!0})})});var _ee=ye((orr,yee)=>{"use strict";yee.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 Eo=ye((srr,xee)=>{"use strict";var mtt=_ee();xee.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&mtt(r))return!1}else if(t!=="number")return!1;return e-e<1}});var fs=ye((lrr,bee)=>{"use strict";bee.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 TO=ye((v6,wee)=>{(function(e,t){typeof v6=="object"&&typeof wee!="undefined"?t(v6):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})(v6,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 _=new ArrayBuffer(s),b=new Uint8Array(_);for(u=0;u>4,b[c++]=(h&15)<<4|d>>2,b[c++]=(d&3)<<6|v&63;return _};e.decode=a,e.encode=i,Object.defineProperty(e,"__esModule",{value:!0})})});var my=ye((urr,Tee)=>{"use strict";Tee.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(yg=>{"use strict";var ytt=TO().decode,_tt=my(),AO=Array.isArray,xtt=ArrayBuffer,btt=DataView;function Aee(e){return xtt.isView(e)&&!(e instanceof btt)}yg.isTypedArray=Aee;function p6(e){return AO(e)||Aee(e)}yg.isArrayOrTypedArray=p6;function wtt(e){return!p6(e[0])}yg.isArray1D=wtt;yg.ensureArray=function(e,t){return AO(e)||(e=[]),e.length=t,e};var Ld={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};Ld.uint8c=Ld.u1c;Ld.uint8=Ld.u1;Ld.int8=Ld.i1;Ld.uint16=Ld.u2;Ld.int16=Ld.i2;Ld.uint32=Ld.u4;Ld.int32=Ld.i4;Ld.float32=Ld.f4;Ld.float64=Ld.f8;function SO(e){return e.constructor===ArrayBuffer}yg.isArrayBuffer=SO;yg.decodeTypedArraySpec=function(e){var t=[],r=Ttt(e),n=r.dtype,i=Ld[n];if(!i)throw new Error('Error in dtype: "'+n+'"');var a=i.BYTES_PER_ELEMENT,o=r.bdata;SO(o)||(o=ytt(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 Mee=Eo(),EO=vv().isArrayOrTypedArray;Lee.exports=function(t,r){if(Mee(r))r=String(r);else if(typeof r!="string"||r.slice(-4)==="[-1]")throw"bad property string";var n=r.split("."),i,a,o,s;for(s=0;s{"use strict";var i3=PS(),ktt=/^\w*$/,Ctt=0,Pee=1,g6=2,Iee=3,sb=4;Ree.exports=function(t,r,n,i){n=n||"name",i=i||"value";var a,o,s,l={};r&&r.length?(s=i3(t,r),o=s.get()):o=t,r=r||"";var u={};if(o)for(a=0;a2)return l[d]=l[d]|g6,f.set(h,null);if(c){for(a=d;a{"use strict";var Ltt=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,Ptt=/^[^\.\[\]]+$/;Fee.exports=function(e,t){for(;t;){var r=e.match(Ltt);if(r)e=r[1];else if(e.match(Ptt))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 m6=ye((vrr,Oee)=>{"use strict";var Itt=Eo();Oee.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 Itt(n)||(n=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),n}});var Nee=ye((prr,Bee)=>{"use strict";var qee=vv().isArrayOrTypedArray,IS=my();Bee.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(qee(i)&&qee(a)&&IS(i[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(i.length,a.length),s=0;s{"use strict";function Rtt(e,t){var r=e%t;return r<0?r+t:r}function Dtt(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}Uee.exports={mod:Rtt,modHalf:Dtt}});var cd=ye((mrr,y6)=>{(function(e){var t=/^\s+/,r=/\s+$/,n=0,i=e.round,a=e.min,o=e.max,s=e.random;function l(ge,Re){if(ge=ge||"",Re=Re||{},ge instanceof l)return ge;if(!(this instanceof l))return new l(ge,Re);var ce=u(ge);this._originalInput=ge,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 ge=this.toRgb();return(ge.r*299+ge.g*587+ge.b*114)/1e3},getLuminance:function(){var ge=this.toRgb(),Re,ce,Ze,ut,pt,Zt;return Re=ge.r/255,ce=ge.g/255,Ze=ge.b/255,Re<=.03928?ut=Re/12.92:ut=e.pow((Re+.055)/1.055,2.4),ce<=.03928?pt=ce/12.92:pt=e.pow((ce+.055)/1.055,2.4),Ze<=.03928?Zt=Ze/12.92:Zt=e.pow((Ze+.055)/1.055,2.4),.2126*ut+.7152*pt+.0722*Zt},setAlpha:function(ge){return this._a=N(ge),this._roundA=i(100*this._a)/100,this},toHsv:function(){var ge=d(this._r,this._g,this._b);return{h:ge.h*360,s:ge.s,v:ge.v,a:this._a}},toHsvString:function(){var ge=d(this._r,this._g,this._b),Re=i(ge.h*360),ce=i(ge.s*100),Ze=i(ge.v*100);return this._a==1?"hsv("+Re+", "+ce+"%, "+Ze+"%)":"hsva("+Re+", "+ce+"%, "+Ze+"%, "+this._roundA+")"},toHsl:function(){var ge=f(this._r,this._g,this._b);return{h:ge.h*360,s:ge.s,l:ge.l,a:this._a}},toHslString:function(){var ge=f(this._r,this._g,this._b),Re=i(ge.h*360),ce=i(ge.s*100),Ze=i(ge.l*100);return this._a==1?"hsl("+Re+", "+ce+"%, "+Ze+"%)":"hsla("+Re+", "+ce+"%, "+Ze+"%, "+this._roundA+")"},toHex:function(ge){return _(this._r,this._g,this._b,ge)},toHexString:function(ge){return"#"+this.toHex(ge)},toHex8:function(ge){return b(this._r,this._g,this._b,this._a,ge)},toHex8String:function(ge){return"#"+this.toHex8(ge)},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(H(this._r,255)*100)+"%",g:i(H(this._g,255)*100)+"%",b:i(H(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+i(H(this._r,255)*100)+"%, "+i(H(this._g,255)*100)+"%, "+i(H(this._b,255)*100)+"%)":"rgba("+i(H(this._r,255)*100)+"%, "+i(H(this._g,255)*100)+"%, "+i(H(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:Z[_(this._r,this._g,this._b,!0)]||!1},toFilter:function(ge){var Re="#"+p(this._r,this._g,this._b,this._a),ce=Re,Ze=this._gradientType?"GradientType = 1, ":"";if(ge){var ut=l(ge);ce="#"+p(ut._r,ut._g,ut._b,ut._a)}return"progid:DXImageTransform.Microsoft.gradient("+Ze+"startColorstr="+Re+",endColorstr="+ce+")"},toString:function(ge){var Re=!!ge;ge=ge||this._format;var ce=!1,Ze=this._a<1&&this._a>=0,ut=!Re&&Ze&&(ge==="hex"||ge==="hex6"||ge==="hex3"||ge==="hex4"||ge==="hex8"||ge==="name");return ut?ge==="name"&&this._a===0?this.toName():this.toRgbString():(ge==="rgb"&&(ce=this.toRgbString()),ge==="prgb"&&(ce=this.toPercentageRgbString()),(ge==="hex"||ge==="hex6")&&(ce=this.toHexString()),ge==="hex3"&&(ce=this.toHexString(!0)),ge==="hex4"&&(ce=this.toHex8String(!0)),ge==="hex8"&&(ce=this.toHex8String()),ge==="name"&&(ce=this.toName()),ge==="hsl"&&(ce=this.toHslString()),ge==="hsv"&&(ce=this.toHsvString()),ce||this.toHexString())},clone:function(){return l(this.toString())},_applyModification:function(ge,Re){var ce=ge.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(x,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(S,arguments)},spin:function(){return this._applyModification(M,arguments)},_applyCombination:function(ge,Re){return ge.apply(null,[this].concat([].slice.call(Re)))},analogous:function(){return this._applyCombination(O,arguments)},complement:function(){return this._applyCombination(g,arguments)},monochromatic:function(){return this._applyCombination(V,arguments)},splitcomplement:function(){return this._applyCombination(z,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},l.fromRatio=function(ge,Re){if(typeof ge=="object"){var ce={};for(var Ze in ge)ge.hasOwnProperty(Ze)&&(Ze==="a"?ce[Ze]=ge[Ze]:ce[Ze]=me(ge[Ze]));ge=ce}return l(ge,Re)};function u(ge){var Re={r:0,g:0,b:0},ce=1,Ze=null,ut=null,pt=null,Zt=!1,st=!1;return typeof ge=="string"&&(ge=Fe(ge)),typeof ge=="object"&&(Ae(ge.r)&&Ae(ge.g)&&Ae(ge.b)?(Re=c(ge.r,ge.g,ge.b),Zt=!0,st=String(ge.r).substr(-1)==="%"?"prgb":"rgb"):Ae(ge.h)&&Ae(ge.s)&&Ae(ge.v)?(Ze=me(ge.s),ut=me(ge.v),Re=v(ge.h,Ze,ut),Zt=!0,st="hsv"):Ae(ge.h)&&Ae(ge.s)&&Ae(ge.l)&&(Ze=me(ge.s),pt=me(ge.l),Re=h(ge.h,Ze,pt),Zt=!0,st="hsl"),ge.hasOwnProperty("a")&&(ce=ge.a)),ce=N(ce),{ok:Zt,format:ge.format||st,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(ge,Re,ce){return{r:H(ge,255)*255,g:H(Re,255)*255,b:H(ce,255)*255}}function f(ge,Re,ce){ge=H(ge,255),Re=H(Re,255),ce=H(ce,255);var Ze=o(ge,Re,ce),ut=a(ge,Re,ce),pt,Zt,st=(Ze+ut)/2;if(Ze==ut)pt=Zt=0;else{var lt=Ze-ut;switch(Zt=st>.5?lt/(2-Ze-ut):lt/(Ze+ut),Ze){case ge:pt=(Re-ce)/lt+(Re1&&(Jt-=1),Jt<1/6?Gt+(Nt-Gt)*6*Jt:Jt<1/2?Nt:Jt<2/3?Gt+(Nt-Gt)*(2/3-Jt)*6:Gt}if(Re===0)Ze=ut=pt=ce;else{var st=ce<.5?ce*(1+Re):ce+Re-ce*Re,lt=2*ce-st;Ze=Zt(lt,st,ge+1/3),ut=Zt(lt,st,ge),pt=Zt(lt,st,ge-1/3)}return{r:Ze*255,g:ut*255,b:pt*255}}function d(ge,Re,ce){ge=H(ge,255),Re=H(Re,255),ce=H(ce,255);var Ze=o(ge,Re,ce),ut=a(ge,Re,ce),pt,Zt,st=Ze,lt=Ze-ut;if(Zt=Ze===0?0:lt/Ze,Ze==ut)pt=0;else{switch(Ze){case ge:pt=(Re-ce)/lt+(Re>1)+720)%360;--Re;)Ze.h=(Ze.h+ut)%360,pt.push(l(Ze));return pt}function V(ge,Re){Re=Re||6;for(var ce=l(ge).toHsv(),Ze=ce.h,ut=ce.s,pt=ce.v,Zt=[],st=1/Re;Re--;)Zt.push(l({h:Ze,s:ut,v:pt})),pt=(pt+st)%1;return Zt}l.mix=function(ge,Re,ce){ce=ce===0?0:ce||50;var Ze=l(ge).toRgb(),ut=l(Re).toRgb(),pt=ce/100,Zt={r:(ut.r-Ze.r)*pt+Ze.r,g:(ut.g-Ze.g)*pt+Ze.g,b:(ut.b-Ze.b)*pt+Ze.b,a:(ut.a-Ze.a)*pt+Ze.a};return l(Zt)},l.readability=function(ge,Re){var ce=l(ge),Ze=l(Re);return(e.max(ce.getLuminance(),Ze.getLuminance())+.05)/(e.min(ce.getLuminance(),Ze.getLuminance())+.05)},l.isReadable=function(ge,Re,ce){var Ze=l.readability(ge,Re),ut,pt;switch(pt=!1,ut=Pe(ce),ut.level+ut.size){case"AAsmall":case"AAAlarge":pt=Ze>=4.5;break;case"AAlarge":pt=Ze>=3;break;case"AAAsmall":pt=Ze>=7;break}return pt},l.mostReadable=function(ge,Re,ce){var Ze=null,ut=0,pt,Zt,st,lt;ce=ce||{},Zt=ce.includeFallbackColors,st=ce.level,lt=ce.size;for(var Gt=0;Gtut&&(ut=pt,Ze=l(Re[Gt]));return l.isReadable(ge,Ze,{level:st,size:lt})||!Zt?Ze:(ce.includeFallbackColors=!1,l.mostReadable(ge,["#fff","#000"],ce))};var G=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"},Z=l.hexNames=j(G);function j(ge){var Re={};for(var ce in ge)ge.hasOwnProperty(ce)&&(Re[ge[ce]]=ce);return Re}function N(ge){return ge=parseFloat(ge),(isNaN(ge)||ge<0||ge>1)&&(ge=1),ge}function H(ge,Re){_e(ge)&&(ge="100%");var ce=Ee(ge);return ge=a(Re,o(0,parseFloat(ge))),ce&&(ge=parseInt(ge*Re,10)/100),e.abs(ge-Re)<1e-6?1:ge%Re/parseFloat(Re)}function te(ge){return a(1,o(0,ge))}function oe(ge){return parseInt(ge,16)}function _e(ge){return typeof ge=="string"&&ge.indexOf(".")!=-1&&parseFloat(ge)===1}function Ee(ge){return typeof ge=="string"&&ge.indexOf("%")!=-1}function Ce(ge){return ge.length==1?"0"+ge:""+ge}function me(ge){return ge<=1&&(ge=ge*100+"%"),ge}function ie(ge){return e.round(parseFloat(ge)*255).toString(16)}function Se(ge){return oe(ge)/255}var Le=function(){var ge="[-\\+]?\\d+%?",Re="[-\\+]?\\d*\\.\\d+%?",ce="(?:"+Re+")|(?:"+ge+")",Ze="[\\s|\\(]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")\\s*\\)?",ut="[\\s|\\(]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")\\s*\\)?";return{CSS_UNIT:new RegExp(ce),rgb:new RegExp("rgb"+Ze),rgba:new RegExp("rgba"+ut),hsl:new RegExp("hsl"+Ze),hsla:new RegExp("hsla"+ut),hsv:new RegExp("hsv"+Ze),hsva:new RegExp("hsva"+ut),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(ge){return!!Le.CSS_UNIT.exec(ge)}function Fe(ge){ge=ge.replace(t,"").replace(r,"").toLowerCase();var Re=!1;if(G[ge])ge=G[ge],Re=!0;else if(ge=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ce;return(ce=Le.rgb.exec(ge))?{r:ce[1],g:ce[2],b:ce[3]}:(ce=Le.rgba.exec(ge))?{r:ce[1],g:ce[2],b:ce[3],a:ce[4]}:(ce=Le.hsl.exec(ge))?{h:ce[1],s:ce[2],l:ce[3]}:(ce=Le.hsla.exec(ge))?{h:ce[1],s:ce[2],l:ce[3],a:ce[4]}:(ce=Le.hsv.exec(ge))?{h:ce[1],s:ce[2],v:ce[3]}:(ce=Le.hsva.exec(ge))?{h:ce[1],s:ce[2],v:ce[3],a:ce[4]}:(ce=Le.hex8.exec(ge))?{r:oe(ce[1]),g:oe(ce[2]),b:oe(ce[3]),a:Se(ce[4]),format:Re?"name":"hex8"}:(ce=Le.hex6.exec(ge))?{r:oe(ce[1]),g:oe(ce[2]),b:oe(ce[3]),format:Re?"name":"hex"}:(ce=Le.hex4.exec(ge))?{r:oe(ce[1]+""+ce[1]),g:oe(ce[2]+""+ce[2]),b:oe(ce[3]+""+ce[3]),a:Se(ce[4]+""+ce[4]),format:Re?"name":"hex8"}:(ce=Le.hex3.exec(ge))?{r:oe(ce[1]+""+ce[1]),g:oe(ce[2]+""+ce[2]),b:oe(ce[3]+""+ce[3]),format:Re?"name":"hex"}:!1}function Pe(ge){var Re,ce;return ge=ge||{level:"AA",size:"small"},Re=(ge.level||"AA").toUpperCase(),ce=(ge.size||"small").toLowerCase(),Re!=="AA"&&Re!=="AAA"&&(Re="AA"),ce!=="small"&&ce!=="large"&&(ce="small"),{level:Re,size:ce}}typeof y6!="undefined"&&y6.exports?y6.exports=l:window.tinycolor=l})(Math)});var Ao=ye(FS=>{"use strict";var Vee=my(),RS=Array.isArray;function Ftt(e,t){var r,n;for(r=0;r{"use strict";Gee.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 zS=ye((xrr,Hee)=>{"use strict";Hee.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var B1=ye((brr,Xee)=>{"use strict";var jee=zS(),Wee=ec(),kO=Wee({editType:"none"});kO.family.dflt=jee.HOVERFONT;kO.size.dflt=jee.HOVERFONTSIZE;Xee.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:kO,grouptitlefont:Wee({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},showarrow:{valType:"boolean",dflt:!0,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var a3=ye((wrr,Zee)=>{"use strict";var ztt=ec(),OS=B1().hoverlabel,qS=Ao().extendFlat;Zee.exports={hoverlabel:{bgcolor:qS({},OS.bgcolor,{arrayOk:!0}),bordercolor:qS({},OS.bordercolor,{arrayOk:!0}),font:ztt({arrayOk:!0,editType:"none"}),align:qS({},OS.align,{arrayOk:!0}),namelength:qS({},OS.namelength,{arrayOk:!0}),showarrow:qS({},OS.showarrow),editType:"none"}}});var Gl=ye((Trr,Yee)=>{"use strict";var Ott=ec(),qtt=a3();Yee.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:Ott({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:qtt.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 lb=ye((Arr,$ee)=>{"use strict";var Btt=cd(),_6={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)"]]},Kee=_6.RdBu;function Ntt(e,t){if(t||(t=Kee),!e)return t;function r(){try{e=_6[e]||JSON.parse(e)}catch(n){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),Jee(e)?e:t}function Jee(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";ub.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];ub.defaultLine="#444";ub.lightLine="#eee";ub.background="#fff";ub.borderLine="#BEC8D9";ub.lightFraction=100*10/11});var ka=ye((Mrr,Qee)=>{"use strict";var bp=cd(),Vtt=Eo(),Gtt=vv().isTypedArray,fd=Qee.exports={},x6=Lh();fd.defaults=x6.defaults;var Htt=fd.defaultLine=x6.defaultLine;fd.lightLine=x6.lightLine;var LO=fd.background=x6.background;fd.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"};fd.rgb=function(e){return fd.tinyRGB(bp(e))};fd.opacity=function(e){return e?bp(e).getAlpha():0};fd.addOpacity=function(e,t){var r=bp(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"};fd.combine=function(e,t){var r=bp(e).toRgb();if(r.a===1)return bp(e).toRgbString();var n=bp(t||LO).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 bp(a).toRgbString()};fd.interpolate=function(e,t,r){var n=bp(e).toRgb(),i=bp(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 bp(a).toRgbString()};fd.contrast=function(e,t,r){var n=bp(e);n.getAlpha()!==1&&(n=bp(fd.combine(e,LO)));var i=n.isDark()?t?n.lighten(t):LO:r?n.darken(r):Htt;return i.toString()};fd.stroke=function(e,t){var r=bp(t);e.style({stroke:fd.tinyRGB(r),"stroke-opacity":r.getAlpha()})};fd.fill=function(e,t){var r=bp(t);e.style({fill:fd.tinyRGB(r),"fill-opacity":r.getAlpha()})};fd.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 N1=ye((Err,ete)=>{"use strict";ete.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var o3=ye(tte=>{"use strict";tte.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 ate=ye(wp=>{"use strict";var PO=Eo(),rte=cd(),ite=Ao().extendFlat,jtt=Gl(),Wtt=lb(),Xtt=ka(),Ztt=N1().DESELECTDIM,s3=PS(),nte=o3().counter,Ytt=n3().modHalf,_g=vv().isArrayOrTypedArray,U1=vv().isTypedArraySpec,V1=vv().decodeTypedArraySpec;wp.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(_g(e)?e:U1(e)?V1(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;na===!0||a===!1;i(e)||n.arrayOk&&Array.isArray(e)&&e.length>0&&e.every(i)?t.set(e):t.set(r)}},number:{coerceFunction:function(e,t,r,n){U1(e)&&(e=V1(e)),!PO(e)||n.min!==void 0&&en.max?t.set(r):t.set(+e)}},integer:{coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}U1(e)&&(e=V1(e)),e%1||!PO(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){U1(e)&&(e=V1(e)),rte(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function n(i){return rte(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(Wtt.get(e,r))}},angle:{coerceFunction:function(e,t,r){U1(e)&&(e=V1(e)),e==="auto"?t.set("auto"):PO(e)?t.set(Ytt(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,n){var i=n.regex||nte(r);let a=o=>typeof o=="string"&&i.test(o);a(e)||n.arrayOk&&_g(e)&&e.length>0&&e.every(a)?t.set(e):t.set(r)},validateFunction:function(e,t){var r=t.dflt;return e===r?!0:typeof e!="string"?!1:!!nte(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 ote={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/un/"},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:{}}},ste={};function lte(e,t){for(var r in e){var n=e[r];n.valType?t[r]=n.dflt:(t[r]||(t[r]={}),lte(n,t[r]))}}lte(ote,ste);ute.exports={configAttributes:ote,dfltConfig:ste}});var RO=ye((Prr,cte)=>{"use strict";var IO=Oa(),Ktt=Eo(),BS=[];cte.exports=function(e,t){if(BS.indexOf(e)!==-1)return;BS.push(e);var r=1e3;Ktt(t)?r=t:t==="long"&&(r=3e3);var n=IO.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var i=n.selectAll(".notifier-note").data(BS);function a(o){o.duration(700).style("opacity",0).each("end",function(s){var l=BS.indexOf(s);l!==-1&&BS.splice(l,1),IO.select(this).remove()})}i.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var s=IO.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 l3=cb().dfltConfig,DO=RO(),FO=fte.exports={};FO.log=function(){var e;if(l3.logging>1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}};FO.warn=function(){var e;if(l3.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}};FO.error=function(){var e;if(l3.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}});var w6=ye((Rrr,hte)=>{"use strict";hte.exports=function(){}});var zO=ye((Drr,dte)=>{"use strict";dte.exports=function(t,r){if(r instanceof RegExp){for(var n=r.toString(),i=0;i{vte.exports=Jtt;function Jtt(){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=ye((zrr,gte)=>{gte.exports=$tt;function $tt(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 _te=ye((Orr,yte)=>{yte.exports=Qtt;function Qtt(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 OO=ye((qrr,xte)=>{xte.exports=ert;function ert(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 wte=ye((Brr,bte)=>{bte.exports=trt;function trt(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 Ate=ye((Nrr,Tte)=>{Tte.exports=rrt;function rrt(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],_=t[13],b=t[14],p=t[15],k=r*s-n*o,E=r*l-i*o,S=r*u-a*o,L=n*l-i*s,x=n*u-a*s,C=i*u-a*l,M=c*_-f*v,g=c*b-h*v,P=c*p-d*v,T=f*b-h*_,z=f*p-d*_,O=h*p-d*b,V=k*O-E*z+S*T+L*P-x*g+C*M;return V?(V=1/V,e[0]=(s*O-l*z+u*T)*V,e[1]=(i*z-n*O-a*T)*V,e[2]=(_*C-b*x+p*L)*V,e[3]=(h*x-f*C-d*L)*V,e[4]=(l*P-o*O-u*g)*V,e[5]=(r*O-i*P+a*g)*V,e[6]=(b*S-v*C-p*E)*V,e[7]=(c*C-h*S+d*E)*V,e[8]=(o*z-s*P+u*M)*V,e[9]=(n*P-r*z-a*M)*V,e[10]=(v*x-_*S+p*k)*V,e[11]=(f*S-c*x-d*k)*V,e[12]=(s*g-o*T-l*M)*V,e[13]=(r*T-n*g+i*M)*V,e[14]=(_*E-v*L-b*k)*V,e[15]=(c*L-f*E+h*k)*V,e):null}});var Mte=ye((Urr,Ste)=>{Ste.exports=irt;function irt(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],_=t[13],b=t[14],p=t[15];return e[0]=s*(h*p-d*b)-f*(l*p-u*b)+_*(l*d-u*h),e[1]=-(n*(h*p-d*b)-f*(i*p-a*b)+_*(i*d-a*h)),e[2]=n*(l*p-u*b)-s*(i*p-a*b)+_*(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*_)-c*(s*p-u*_)+v*(s*d-u*f),e[9]=-(r*(f*p-d*_)-c*(n*p-a*_)+v*(n*d-a*f)),e[10]=r*(s*p-u*_)-o*(n*p-a*_)+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*_)-c*(s*b-l*_)+v*(s*h-l*f)),e[13]=r*(f*b-h*_)-c*(n*b-i*_)+v*(n*h-i*f),e[14]=-(r*(s*b-l*_)-o*(n*b-i*_)+v*(n*l-i*s)),e[15]=r*(s*h-l*f)-o*(n*h-i*f)+c*(n*l-i*s),e}});var kte=ye((Vrr,Ete)=>{Ete.exports=nrt;function nrt(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],_=e[14],b=e[15],p=t*o-r*a,k=t*s-n*a,E=t*l-i*a,S=r*s-n*o,L=r*l-i*o,x=n*l-i*s,C=u*v-c*d,M=u*_-f*d,g=u*b-h*d,P=c*_-f*v,T=c*b-h*v,z=f*b-h*_;return p*z-k*T+E*P+S*g-L*M+x*C}});var Lte=ye((Grr,Cte)=>{Cte.exports=art;function art(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],_=t[12],b=t[13],p=t[14],k=t[15],E=r[0],S=r[1],L=r[2],x=r[3];return e[0]=E*n+S*s+L*f+x*_,e[1]=E*i+S*l+L*h+x*b,e[2]=E*a+S*u+L*d+x*p,e[3]=E*o+S*c+L*v+x*k,E=r[4],S=r[5],L=r[6],x=r[7],e[4]=E*n+S*s+L*f+x*_,e[5]=E*i+S*l+L*h+x*b,e[6]=E*a+S*u+L*d+x*p,e[7]=E*o+S*c+L*v+x*k,E=r[8],S=r[9],L=r[10],x=r[11],e[8]=E*n+S*s+L*f+x*_,e[9]=E*i+S*l+L*h+x*b,e[10]=E*a+S*u+L*d+x*p,e[11]=E*o+S*c+L*v+x*k,E=r[12],S=r[13],L=r[14],x=r[15],e[12]=E*n+S*s+L*f+x*_,e[13]=E*i+S*l+L*h+x*b,e[14]=E*a+S*u+L*d+x*p,e[15]=E*o+S*c+L*v+x*k,e}});var Ite=ye((Hrr,Pte)=>{Pte.exports=ort;function ort(e,t,r){var n=r[0],i=r[1],a=r[2],o,s,l,u,c,f,h,d,v,_,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],_=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]=_,e[10]=b,e[11]=p,e[12]=o*n+c*i+v*a+t[12],e[13]=s*n+f*i+_*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 Dte=ye((jrr,Rte)=>{Rte.exports=srt;function srt(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 zte=ye((Wrr,Fte)=>{Fte.exports=lrt;function lrt(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,_,b,p,k,E,S,L,x,C,M,g,P,T,z,O,V,G;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],_=t[4],b=t[5],p=t[6],k=t[7],E=t[8],S=t[9],L=t[10],x=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,z=o*a*c+i*l,O=i*o*c+a*l,V=a*o*c-i*l,G=o*o*c+u,e[0]=f*C+_*M+E*g,e[1]=h*C+b*M+S*g,e[2]=d*C+p*M+L*g,e[3]=v*C+k*M+x*g,e[4]=f*P+_*T+E*z,e[5]=h*P+b*T+S*z,e[6]=d*P+p*T+L*z,e[7]=v*P+k*T+x*z,e[8]=f*O+_*V+E*G,e[9]=h*O+b*V+S*G,e[10]=d*O+p*V+L*G,e[11]=v*O+k*V+x*G,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var qte=ye((Xrr,Ote)=>{Ote.exports=urt;function urt(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 Nte=ye((Zrr,Bte)=>{Bte.exports=crt;function crt(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 Vte=ye((Yrr,Ute)=>{Ute.exports=frt;function frt(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 Hte=ye((Krr,Gte)=>{Gte.exports=hrt;function hrt(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 Wte=ye((Jrr,jte)=>{jte.exports=drt;function drt(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,_=a*u,b=o*s,p=o*l,k=o*u;return e[0]=1-(d+_),e[1]=f+k,e[2]=h-p,e[3]=0,e[4]=f-k,e[5]=1-(c+_),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 Zte=ye(($rr,Xte)=>{Xte.exports=vrt;function vrt(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 Kte=ye((Qrr,Yte)=>{Yte.exports=prt;function prt(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 $te=ye((eir,Jte)=>{Jte.exports=grt;function grt(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 ere=ye((tir,Qte)=>{Qte.exports=mrt;function mrt(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 rre=ye((rir,tre)=>{tre.exports=yrt;function yrt(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 nre=ye((iir,ire)=>{ire.exports=_rt;function _rt(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,_=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+_,e[7]=0,e[8]=h+b,e[9]=d-_,e[10]=1-u-f,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ore=ye((nir,are)=>{are.exports=xrt;function xrt(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 lre=ye((air,sre)=>{sre.exports=brt;function brt(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 cre=ye((oir,ure)=>{ure.exports=wrt;function wrt(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 hre=ye((sir,fre)=>{fre.exports=Trt;function Trt(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 vre=ye((lir,dre)=>{var Art=OO();dre.exports=Srt;function Srt(e,t,r,n){var i,a,o,s,l,u,c,f,h,d,v=t[0],_=t[1],b=t[2],p=n[0],k=n[1],E=n[2],S=r[0],L=r[1],x=r[2];return Math.abs(v-S)<1e-6&&Math.abs(_-L)<1e-6&&Math.abs(b-x)<1e-6?Art(e):(c=v-S,f=_-L,h=b-x,d=1/Math.sqrt(c*c+f*f+h*h),c*=d,f*=d,h*=d,i=k*h-E*f,a=E*c-p*h,o=p*f-k*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*_+o*b),e[13]=-(s*v+l*_+u*b),e[14]=-(c*v+f*_+h*b),e[15]=1,e)}});var gre=ye((uir,pre)=>{pre.exports=Mrt;function Mrt(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 qO=ye((cir,mre)=>{mre.exports={create:pte(),clone:mte(),copy:_te(),identity:OO(),transpose:wte(),invert:Ate(),adjoint:Mte(),determinant:kte(),multiply:Lte(),translate:Ite(),scale:Dte(),rotate:zte(),rotateX:qte(),rotateY:Nte(),rotateZ:Vte(),fromRotation:Hte(),fromRotationTranslation:Wte(),fromScaling:Zte(),fromTranslation:Kte(),fromXRotation:$te(),fromYRotation:ere(),fromZRotation:rre(),fromQuat:nre(),frustum:ore(),perspective:lre(),perspectiveFromFieldOfView:cre(),ortho:hre(),lookAt:vre(),str:gre()}});var T6=ye(fh=>{"use strict";var Ert=qO();fh.init2dArray=function(e,t){for(var r=new Array(e),n=0;n{"use strict";var krt=Oa(),yre=G1(),Crt=T6(),Lrt=qO();function Prt(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 Irt(e){var t=krt.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function _re(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function Rrt(e,t){xre("global",e,t)}function xre(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):yre.warn("addStyleRule failed"):yre.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function Drt(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&_re(r)}function Frt(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 zrt(e){var t=wre(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=bre(n);if(i){var a=Crt.convertCssMatrix(i);r=Lrt.multiply(r,r,a)}}),r}function bre(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 wre(e){for(var t=[];Ort(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function Ort(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function qrt(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}Tre.exports={getGraphDiv:Prt,isPlotDiv:Irt,removeElement:_re,addStyleRule:Rrt,addRelatedStyleRule:xre,deleteRelatedStyleRule:Drt,setStyleOnHover:Frt,getFullTransformMatrix:zrt,getElementTransformMatrix:bre,getElementAndAncestors:wre,equalDomRects:qrt}});var US=ye((dir,Are)=>{"use strict";Are.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 mc=ye((vir,Pre)=>{"use strict";var Mre=Ao().extendFlat,Brt=my(),Ere={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},kre={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},Nrt=Ere.flags.slice().concat(["fullReplot"]),Urt=kre.flags.slice().concat("layoutReplot");Pre.exports={traces:Ere,layout:kre,traceFlags:function(){return Sre(Nrt)},layoutFlags:function(){return Sre(Urt)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var n=r.split("+"),i=0;i{"use strict";BO.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};BO.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},path:{valType:"string",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 NO=ye((gir,Ire)=>{"use strict";Ire.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 Ll=ye(u3=>{"use strict";var{DATE_FORMAT_LINK:Vrt,FORMAT_LINK:Grt}=NO(),Hrt=["Variables that can't be found will be replaced with the specifier.",'For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing.',"Variables with an undefined value will be replaced with the fallback value."].join(" ");function jrt({supportOther:e}={}){return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(e?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,Grt,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,Vrt,"for details on the date formatting syntax.",Hrt].join(" ")}u3.templateFormatStringDescription=jrt;u3.hovertemplateAttrs=({editType:e="none",arrayOk:t}={},r={})=>mg({valType:"string",dflt:"",editType:e},t!==!1?{arrayOk:!0}:{});u3.texttemplateAttrs=({editType:e="calc",arrayOk:t}={},r={})=>mg({valType:"string",dflt:"",editType:e},t!==!1?{arrayOk:!0}:{});u3.shapeTexttemplateAttrs=({editType:e="arraydraw",newshape:t}={},r={})=>({valType:"string",dflt:"",editType:e});u3.templatefallbackAttrs=({editType:e="none"}={})=>({valType:"any",dflt:"-",editType:e})});var M6=ye((_ir,qre)=>{"use strict";function H1(e,t){return t?t.d2l(e):e}function Rre(e,t){return t?t.l2d(e):e}function Wrt(e){return e.x0}function Xrt(e){return e.x1}function Zrt(e){return e.y0}function Yrt(e){return e.y1}function Dre(e){return e.x0shift||0}function Fre(e){return e.x1shift||0}function zre(e){return e.y0shift||0}function Ore(e){return e.y1shift||0}function A6(e,t){return H1(e.x1,t)+Fre(e)-H1(e.x0,t)-Dre(e)}function S6(e,t,r){return H1(e.y1,r)+Ore(e)-H1(e.y0,r)-zre(e)}function Krt(e,t){return Math.abs(A6(e,t))}function Jrt(e,t,r){return Math.abs(S6(e,t,r))}function $rt(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(A6(e,t),2)+Math.pow(S6(e,t,r),2))}function Qrt(e,t){return Rre((H1(e.x1,t)+Fre(e)+H1(e.x0,t)+Dre(e))/2,t)}function eit(e,t,r){return Rre((H1(e.y1,r)+Ore(e)+H1(e.y0,r)+zre(e))/2,r)}function tit(e,t,r){return e.type!=="line"?void 0:S6(e,t,r)/A6(e,t)}qre.exports={x0:Wrt,x1:Xrt,y0:Zrt,y1:Yrt,slope:tit,dx:A6,dy:S6,width:Krt,height:Jrt,length:$rt,xcenter:Qrt,ycenter:eit}});var Ure=ye((xir,Nre)=>{"use strict";var rit=mc().overrideAll,fb=Gl(),Bre=ec(),iit=Pd().dash,j1=Ao().extendFlat,{shapeTexttemplateAttrs:nit,templatefallbackAttrs:ait}=Ll(),oit=M6();Nre.exports=rit({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:Bre({})},legendrank:j1({},fb.legendrank,{}),legendwidth:j1({},fb.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:j1({},iit,{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:nit({newshape:!0},{keys:Object.keys(oit)}),texttemplatefallback:ait({editType:"arraydraw"}),font:Bre({}),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)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var Gre=ye((bir,Vre)=>{"use strict";var sit=Pd().dash,lit=Ao().extendFlat;Vre.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:lit({},sit,{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 E6=ye((wir,Hre)=>{"use strict";Hre.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 c3=ye((Tir,Zre)=>{"use strict";var UO=ec(),uit=US(),k6=Lh(),jre=Ure(),Wre=Gre(),cit=E6(),Xre=Ao().extendFlat,C6=UO({editType:"calc"});C6.family.dflt='"Open Sans", verdana, arial, sans-serif';C6.size.dflt=12;C6.color.dflt=k6.defaultLine;Zre.exports={font:C6,title:{text:{valType:"string",editType:"layoutstyle"},font:UO({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:UO({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:Xre(cit({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:k6.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:k6.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:k6.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:jre.newshape,activeshape:jre.activeshape,newselection:Wre.newselection,activeselection:Wre.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:Xre({},uit.transition,{editType:"none"})}});var Yre=ye(()=>{(function(){if(!document.getElementById("696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97")){var e=document.createElement("style");e.id="696e55e75aaafa12d45b3ff634eadc8348f9c3015fc94984dac1ff824773eb97",e.textContent=`.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}`,document.head.appendChild(e)}})()});var qa=ye(el=>{"use strict";var f3=G1(),Kre=w6(),Jre=zO(),fit=my(),hit=NS().addStyleRule,$re=Ao(),dit=Gl(),vit=c3(),pit=$re.extendFlat,VO=$re.extendDeepAll;el.modules={};el.allCategories={};el.allTypes=[];el.subplotsRegistry={};el.componentsRegistry={};el.layoutArrayContainers=[];el.layoutArrayRegexes=[];el.traceLayoutAttributes={};el.localeRegistry={};el.apiMethodRegistry={};el.collectableSubplotTypes=null;el.register=function(t){if(el.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 bit=r3().timeFormat,uie=Eo(),GO=G1(),X1=n3().mod,v3=fs(),y0=v3.BADNUM,Tp=v3.ONEDAY,VS=v3.ONEHOUR,W1=v3.ONEMIN,d3=v3.ONESEC,GS=v3.EPOCHJD,yy=qa(),iie=r3().utcFormat,wit=/^\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,Tit=/^\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,nie=new Date().getFullYear()-70;function _y(e){return e&&yy.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}hh.dateTick0=function(e,t){var r=Ait(e,!!t);if(t<2)return r;var n=hh.dateTime2ms(r,e);return n+=Tp*(t-1),hh.ms2DateTime(n,0,e)};function Ait(e,t){return _y(e)?t?yy.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:yy.getComponentMethod("calendars","CANONICAL_TICK")[e]:t?"2000-01-02":"2000-01-01"}hh.dfltRange=function(e){return _y(e)?yy.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};hh.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var P6,I6;hh.dateTime2ms=function(e,t){if(hh.isJSDate(e)){var r=e.getTimezoneOffset()*W1,n=(e.getUTCMinutes()-e.getMinutes())*W1+(e.getUTCSeconds()-e.getSeconds())*d3+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var i=3*W1;r=r-i/2+X1(n-r+i/2,i)}return e=Number(e)-r,e>=P6&&e<=I6?e:y0}if(typeof e!="string"&&typeof e!="number")return y0;e=String(e);var a=_y(t),o=e.charAt(0);a&&(o==="G"||o==="g")&&(e=e.slice(1),t="");var s=a&&t.slice(0,7)==="chinese",l=e.match(s?Tit:wit);if(!l)return y0;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 y0;u=Number(u);var _;try{var b=yy.getComponentMethod("calendars","getCal")(t);if(s){var p=c.charAt(c.length-1)==="i";c=parseInt(c,10),_=b.newDate(u,b.toMonthIndex(u,c,p),f)}else _=b.newDate(u,Number(c),f)}catch(E){return y0}return _?(_.toJD()-GS)*Tp+h*VS+d*W1+v*d3:y0}u.length===2?u=(Number(u)+2e3-nie)%100+nie:u=Number(u),c-=1;var k=new Date(Date.UTC(2e3,c,f,h,d));return k.setUTCFullYear(u),k.getUTCMonth()!==c||k.getUTCDate()!==f?y0:k.getTime()+v*d3};P6=hh.MIN_MS=hh.dateTime2ms("-9999");I6=hh.MAX_MS=hh.dateTime2ms("9999-12-31 23:59:59.9999");hh.isDateTime=function(e,t){return hh.dateTime2ms(e,t)!==y0};function h3(e,t){return String(e+Math.pow(10,t)).slice(1)}var L6=90*Tp,aie=3*VS,oie=5*W1;hh.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=P6&&e<=I6))return y0;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(_y(r)){var f=Math.floor(i/Tp)+GS,h=Math.floor(X1(e,Tp));try{a=yy.getComponentMethod("calendars","getCal")(r).fromJD(f).formatDate("yyyy-mm-dd")}catch(d){a=iie("G%Y-%m-%d")(new Date(i))}if(a.charAt(0)==="-")for(;a.length<11;)a="-0"+a.slice(1);else for(;a.length<10;)a="0"+a;o=t=P6+Tp&&e<=I6-Tp))return y0;var t=Math.floor(X1(e+.05,1)*10),r=new Date(Math.round(e-t/10)),n=bit("%Y-%m-%d")(r),i=r.getHours(),a=r.getMinutes(),o=r.getSeconds(),s=r.getUTCMilliseconds()*10+t;return cie(n,i,a,o,s)};function cie(e,t,r,n,i){if((t||r||n||i)&&(e+=" "+h3(t,2)+":"+h3(r,2),(n||i)&&(e+=":"+h3(n,2),i))){for(var a=4;i%10===0;)a-=1,i/=10;e+="."+h3(i,a)}return e}hh.cleanDate=function(e,t,r){if(e===y0)return t;if(hh.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(_y(r))return GO.error("JS Dates and milliseconds are incompatible with world calendars",e),t;if(e=hh.ms2DateTimeLocal(+e),!e&&t!==void 0)return t}else if(!hh.isDateTime(e,r))return GO.error("unrecognized date",e),t;return e};var Sit=/%\d?f/g,Mit=/%h/g,Eit={1:"1",2:"1",3:"2",4:"2"};function sie(e,t,r,n){e=e.replace(Sit,function(a){var o=Math.min(+a.charAt(1)||6,6),s=(t/1e3%1+2).toFixed(o).slice(2).replace(/0+$/,"")||"0";return s});var i=new Date(Math.floor(t+.05));if(e=e.replace(Mit,function(){return Eit[r("%q")(i)]}),_y(n))try{e=yy.getComponentMethod("calendars","worldCalFmt")(e,t,n)}catch(a){return"Invalid"}return r(e)(i)}var kit=[59,59.9,59.99,59.999,59.9999];function Cit(e,t){var r=X1(e+.05,Tp),n=h3(Math.floor(r/VS),2)+":"+h3(X1(Math.floor(r/W1),60),2);if(t!=="M"){uie(t)||(t=0);var i=Math.min(X1(e/d3,60),kit[t]),a=(100+i).toFixed(t).slice(1);t>0&&(a=a.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+a}return n}hh.formatDate=function(e,t,r,n,i,a){if(i=_y(i)&&i,!t)if(r==="y")t=a.year;else if(r==="m")t=a.month;else if(r==="d")t=a.dayMonth+` +`+a.year;else return Cit(e,r)+` +`+sie(a.dayMonthYear,e,n,i);return sie(t,e,n,i)};var lie=3*Tp;hh.incrementMonth=function(e,t,r){r=_y(r)&&r;var n=X1(e,Tp);if(e=Math.round(e-n),r)try{var i=Math.round(e/Tp)+GS,a=yy.getComponentMethod("calendars","getCal")(r),o=a.fromJD(i);return t%12?a.add(o,t,"m"):a.add(o,t/12,"y"),(o.toJD()-GS)*Tp+n}catch(l){GO.error("invalid ms "+e+" in calendar "+r)}var s=new Date(e+lie);return s.setUTCMonth(s.getUTCMonth()+t)+n-lie};hh.findExactDates=function(e,t){for(var r=0,n=0,i=0,a=0,o,s,l=_y(t)&&yy.getComponentMethod("calendars","getCal")(t),u=0;u{"use strict";hie.exports=function(t){return t}});var R6=ye(xy=>{"use strict";var Lit=Eo(),Pit=G1(),Iit=HS(),Rit=fs().BADNUM,HO=1e-9;xy.findBin=function(e,t,r){if(Lit(t.start))return r?Math.ceil((e-t.start)/t.size-HO)-1:Math.floor((e-t.start)/t.size+HO);var n=0,i=t.length,a=0,o=i>1?(t[i-1]-t[0])/(i-1):1,s,l;for(o>=0?l=r?Dit:Fit:l=r?Oit:zit,e+=o*HO*(r?-1:1)*(o>=0?1:-1);n90&&Pit.log("Long binary search..."),n-1};function Dit(e,t){return et}function Oit(e,t){return e>=t}xy.sorterAsc=function(e,t){return e-t};xy.sorterDes=function(e,t){return t-e};xy.distinctVals=function(e){var t=e.slice();t.sort(xy.sorterAsc);var r;for(r=t.length-1;r>-1&&t[r]===Rit;r--);for(var n=t[r]-t[0]||1,i=n/(r||1)/1e4,a=[],o,s=0;s<=r;s++){var l=t[s],u=l-o;o===void 0?(a.push(l),o=l):u>i&&(n=Math.min(n,u),a.push(l),o=l)}return{vals:a,minDiff:n}};xy.roundUp=function(e,t,r){for(var n=0,i=t.length-1,a,o=0,s=r?0:1,l=r?1:0,u=r?Math.ceil:Math.floor;n0&&(n=1),r&&n)return e.sort(t)}return n?e:e.reverse()};xy.findIndexOfMin=function(e,t){t=t||Iit;for(var r=1/0,n,i=0;i{"use strict";die.exports=function(t){return Object.keys(t).sort()}});var vie=ye(dh=>{"use strict";var jS=Eo(),qit=vv().isArrayOrTypedArray;dh.aggNums=function(e,t,r,n){var i,a;if((!n||n>r.length)&&(n=r.length),jS(t)||(t=!1),qit(r[0])){for(a=new Array(n),i=0;ie.length-1)return e[e.length-1];var r=t%1;return r*e[Math.ceil(t)]+(1-r)*e[Math.floor(t)]}});var _ie=ye((Iir,yie)=>{"use strict";var pie=n3(),jO=pie.mod,Bit=pie.modHalf,WS=Math.PI,Y1=2*WS;function Nit(e){return e/180*WS}function Uit(e){return e/WS*180}function WO(e){return Math.abs(e[1]-e[0])>Y1-1e-14}function gie(e,t){return Bit(t-e,Y1)}function Vit(e,t){return Math.abs(gie(e,t))}function mie(e,t){if(WO(t))return!0;var r,n;t[0]n&&(n+=Y1);var i=jO(e,Y1),a=i+Y1;return i>=r&&i<=n||a>=r&&a<=n}function Git(e,t,r,n){if(!mie(t,n))return!1;var i,a;return r[0]=i&&e<=a}function XO(e,t,r,n,i,a,o){i=i||0,a=a||0;var s=WO([r,n]),l,u,c,f,h;s?(l=0,u=WS,c=Y1):r{"use strict";hb.isLeftAnchor=function(t){return t.xanchor==="left"||t.xanchor==="auto"&&t.x<=1/3};hb.isCenterAnchor=function(t){return t.xanchor==="center"||t.xanchor==="auto"&&t.x>1/3&&t.x<2/3};hb.isRightAnchor=function(t){return t.xanchor==="right"||t.xanchor==="auto"&&t.x>=2/3};hb.isTopAnchor=function(t){return t.yanchor==="top"||t.yanchor==="auto"&&t.y>=2/3};hb.isMiddleAnchor=function(t){return t.yanchor==="middle"||t.yanchor==="auto"&&t.y>1/3&&t.y<2/3};hb.isBottomAnchor=function(t){return t.yanchor==="bottom"||t.yanchor==="auto"&&t.y<=1/3}});var Tie=ye(db=>{"use strict";var ZO=n3().mod;db.segmentsIntersect=wie;function wie(e,t,r,n,i,a,o,s){var l=r-e,u=i-e,c=o-i,f=n-t,h=a-t,d=s-a,v=l*d-c*f;if(v===0)return null;var _=(u*d-c*h)/v,b=(u*f-l*h)/v;return b<0||b>1||_<0||_>1?null:{x:e+l*_,y:t+f*_}}db.segmentDistance=function(t,r,n,i,a,o,s,l){if(wie(t,r,n,i,a,o,s,l))return 0;var u=n-t,c=i-r,f=s-a,h=l-o,d=u*u+c*c,v=f*f+h*h,_=Math.min(D6(u,c,d,a-t,o-r),D6(u,c,d,s-t,l-r),D6(f,h,v,t-a,r-o),D6(f,h,v,n-a,i-o));return Math.sqrt(_)};function D6(e,t,r,n,i){var a=n*e+i*t;if(a<0)return n*n+i*i;if(a>r){var o=n-e,s=i-t;return o*o+s*s}else{var l=n*t-i*e;return l*l/r}}var F6,YO,bie;db.getTextLocation=function(t,r,n,i){if((t!==YO||i!==bie)&&(F6={},YO=t,bie=i),F6[n])return F6[n];var a=t.getPointAtLength(ZO(n-i/2,r)),o=t.getPointAtLength(ZO(n+i/2,r)),s=Math.atan((o.y-a.y)/(o.x-a.x)),l=t.getPointAtLength(ZO(n,r)),u=(l.x*4+a.x+o.x)/6,c=(l.y*4+a.y+o.y)/6,f={x:u,y:c,theta:s};return F6[n]=f,f};db.clearLocationCache=function(){YO=null};db.getVisibleSegment=function(t,r,n){var i=r.left,a=r.right,o=r.top,s=r.bottom,l=0,u=t.getTotalLength(),c=u,f,h;function d(_){var b=t.getPointAtLength(_);_===0?f=b:_===u&&(h=b);var p=b.xa?b.x-a:0,k=b.ys?b.y-s:0;return Math.sqrt(p*p+k*k)}for(var v=d(l);v;){if(l+=v+n,l>c)return;v=d(l)}for(v=d(c);v;){if(c-=v+n,l>c)return;v=d(c)}return{min:l,max:c,len:c-l,total:u,isClosed:l===0&&c===u&&Math.abs(f.x-h.x)<.1&&Math.abs(f.y-h.y)<.1}};db.findPointOnPath=function(t,r,n,i){i=i||{};for(var a=i.pathLength||t.getTotalLength(),o=i.tolerance||.001,s=i.iterationLimit||30,l=t.getPointAtLength(0)[n]>t.getPointAtLength(a)[n]?-1:1,u=0,c=0,f=a,h,d,v;u0?f=h:c=h,u++}return d}});var z6=ye(XS=>{"use strict";var by={};XS.throttle=function(t,r,n){var i=by[t],a=Date.now();if(!i){for(var o in by)by[o].tsi.ts+r){s();return}i.timer=setTimeout(function(){s(),i.timer=null},r)};XS.done=function(e){var t=by[e];return!t||!t.timer?Promise.resolve():new Promise(function(r){var n=t.onDone;t.onDone=function(){n&&n(),r(),t.onDone=null}})};XS.clear=function(e){if(e)Aie(by[e]),delete by[e];else for(var t in by)XS.clear(t)};function Aie(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var Mie=ye((zir,Sie)=>{"use strict";Sie.exports=function(t){t._responsiveChartHandler&&(window.removeEventListener("resize",t._responsiveChartHandler),delete t._responsiveChartHandler)}});var Eie=ye((Oir,O6)=>{"use strict";O6.exports=KO;O6.exports.isMobile=KO;O6.exports.default=KO;var Xit=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,Zit=/CrOS/,Yit=/android|ipad|playbook|silk/i;function KO(e){e||(e={});let t=e.ua;if(!t&&typeof navigator!="undefined"&&(t=navigator.userAgent),t&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string")return!1;let r=Xit.test(t)&&!Zit.test(t)||!!e.tablet&&Yit.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}});var Cie=ye((qir,kie)=>{"use strict";var Kit=Eo(),Jit=Eie();kie.exports=function(t){var r;if(t&&t.hasOwnProperty("userAgent")?r=t.userAgent:r=$it(),typeof r!="string")return!0;var n=Jit({ua:{headers:{"user-agent":r}},tablet:!0,featureDetect:!1});if(!n)for(var i=r.split(" "),a=1;a-1;s--){var l=i[s];if(l.slice(0,8)==="Version/"){var u=l.slice(8).split(".")[0];if(Kit(u)&&(u=+u),u>=13)return!0}}}return n};function $it(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var Pie=ye((Bir,Lie)=>{"use strict";var Qit=Oa();Lie.exports=function(t,r,n){var i=t.selectAll("g."+n.replace(/\s/g,".")).data(r,function(o){return o[0].trace.uid});i.exit().remove(),i.enter().append("g").attr("class",n),i.order();var a=t.classed("rangeplot")?"nodeRangePlot3":"node3";return i.each(function(o){o[0][a]=Qit.select(this)}),i}});var Rie=ye((Nir,Iie)=>{"use strict";var ent=qa();Iie.exports=function(t,r){for(var n=t._context.locale,i=0;i<2;i++){for(var a=t._context.locales,o=0;o<2;o++){var s=(a[n]||{}).dictionary;if(s){var l=s[r];if(l)return l}a=ent.localeRegistry}var u=n.split("-")[0];if(u===n)break;n=u}return r}});var JO=ye((Uir,Die)=>{"use strict";Die.exports=function(t){for(var r={},n=[],i=0,a=0;a{"use strict";Fie.exports=function(t){for(var r=int(t)?rnt:tnt,n=[],i=0;i{"use strict";Oie.exports=function(t,r){if(!r)return t;var n=1/Math.abs(r),i=n>1?(n*t+n*r)/n:t+r,a=String(i).length;if(a>16){var o=String(r).length,s=String(t).length;if(a>=s+o){var l=parseFloat(i).toPrecision(12);l.indexOf("e+")===-1&&(i=+l)}}return i}});var Nie=ye((Hir,Bie)=>{"use strict";var nnt=Eo(),ant=fs().BADNUM,ont=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;Bie.exports=function(t){return typeof t=="string"&&(t=t.replace(ont,"")),nnt(t)?Number(t):ant}});var Dr=ye((jir,Qie)=>{"use strict";var ZS=Oa(),snt=r3().utcFormat,lnt=wO().format,Wie=Eo(),Xie=fs(),Zie=Xie.FP_SAFE,unt=-Zie,Uie=Xie.BADNUM,Mi=Qie.exports={};Mi.adjustFormat=function(t){return!t||/^\d[.]\df/.test(t)||/[.]\d%/.test(t)?t:t==="0.f"?"~f":/^\d%/.test(t)?"~%":/^\ds/.test(t)?"~s":!/^[~,.0$]/.test(t)&&/[&fps]/.test(t)?"~"+t:t};var Vie={};Mi.warnBadFormat=function(e){var t=String(e);Vie[t]||(Vie[t]=1,Mi.warn('encountered bad format: "'+t+'"'))};Mi.noFormat=function(e){return String(e)};Mi.numberFormat=function(e){var t;try{t=lnt(Mi.adjustFormat(e))}catch(r){return Mi.warnBadFormat(e),Mi.noFormat}return t};Mi.nestedProperty=PS();Mi.keyedContainer=Dee();Mi.relativeAttr=zee();Mi.isPlainObject=my();Mi.toLogRange=m6();Mi.relinkPrivateKeys=Nee();var K1=vv();Mi.isArrayBuffer=K1.isArrayBuffer;Mi.isTypedArray=K1.isTypedArray;Mi.isArrayOrTypedArray=K1.isArrayOrTypedArray;Mi.isArray1D=K1.isArray1D;Mi.ensureArray=K1.ensureArray;Mi.concat=K1.concat;Mi.maxRowLength=K1.maxRowLength;Mi.minRowLength=K1.minRowLength;var Yie=n3();Mi.mod=Yie.mod;Mi.modHalf=Yie.modHalf;var J1=ate();Mi.valObjectMeta=J1.valObjectMeta;Mi.coerce=J1.coerce;Mi.coerce2=J1.coerce2;Mi.coerceFont=J1.coerceFont;Mi.coercePattern=J1.coercePattern;Mi.coerceHoverinfo=J1.coerceHoverinfo;Mi.coerceSelectionMarkerOpacity=J1.coerceSelectionMarkerOpacity;Mi.validate=J1.validate;var jp=fie();Mi.dateTime2ms=jp.dateTime2ms;Mi.isDateTime=jp.isDateTime;Mi.ms2DateTime=jp.ms2DateTime;Mi.ms2DateTimeLocal=jp.ms2DateTimeLocal;Mi.cleanDate=jp.cleanDate;Mi.isJSDate=jp.isJSDate;Mi.formatDate=jp.formatDate;Mi.incrementMonth=jp.incrementMonth;Mi.dateTick0=jp.dateTick0;Mi.dfltRange=jp.dfltRange;Mi.findExactDates=jp.findExactDates;Mi.MIN_MS=jp.MIN_MS;Mi.MAX_MS=jp.MAX_MS;var vb=R6();Mi.findBin=vb.findBin;Mi.sorterAsc=vb.sorterAsc;Mi.sorterDes=vb.sorterDes;Mi.distinctVals=vb.distinctVals;Mi.roundUp=vb.roundUp;Mi.sort=vb.sort;Mi.findIndexOfMin=vb.findIndexOfMin;Mi.sortObjectKeys=Z1();var wy=vie();Mi.aggNums=wy.aggNums;Mi.len=wy.len;Mi.mean=wy.mean;Mi.geometricMean=wy.geometricMean;Mi.median=wy.median;Mi.midRange=wy.midRange;Mi.variance=wy.variance;Mi.stdev=wy.stdev;Mi.interp=wy.interp;var xg=T6();Mi.init2dArray=xg.init2dArray;Mi.transposeRagged=xg.transposeRagged;Mi.dot=xg.dot;Mi.translationMatrix=xg.translationMatrix;Mi.rotationMatrix=xg.rotationMatrix;Mi.rotationXYMatrix=xg.rotationXYMatrix;Mi.apply3DTransform=xg.apply3DTransform;Mi.apply2DTransform=xg.apply2DTransform;Mi.apply2DTransform2=xg.apply2DTransform2;Mi.convertCssMatrix=xg.convertCssMatrix;Mi.inverseTransformMatrix=xg.inverseTransformMatrix;var vm=_ie();Mi.deg2rad=vm.deg2rad;Mi.rad2deg=vm.rad2deg;Mi.angleDelta=vm.angleDelta;Mi.angleDist=vm.angleDist;Mi.isFullCircle=vm.isFullCircle;Mi.isAngleInsideSector=vm.isAngleInsideSector;Mi.isPtInsideSector=vm.isPtInsideSector;Mi.pathArc=vm.pathArc;Mi.pathSector=vm.pathSector;Mi.pathAnnulus=vm.pathAnnulus;var g3=xie();Mi.isLeftAnchor=g3.isLeftAnchor;Mi.isCenterAnchor=g3.isCenterAnchor;Mi.isRightAnchor=g3.isRightAnchor;Mi.isTopAnchor=g3.isTopAnchor;Mi.isMiddleAnchor=g3.isMiddleAnchor;Mi.isBottomAnchor=g3.isBottomAnchor;var m3=Tie();Mi.segmentsIntersect=m3.segmentsIntersect;Mi.segmentDistance=m3.segmentDistance;Mi.getTextLocation=m3.getTextLocation;Mi.clearLocationCache=m3.clearLocationCache;Mi.getVisibleSegment=m3.getVisibleSegment;Mi.findPointOnPath=m3.findPointOnPath;var N6=Ao();Mi.extendFlat=N6.extendFlat;Mi.extendDeep=N6.extendDeep;Mi.extendDeepAll=N6.extendDeepAll;Mi.extendDeepNoArrays=N6.extendDeepNoArrays;var $O=G1();Mi.log=$O.log;Mi.warn=$O.warn;Mi.error=$O.error;var cnt=o3();Mi.counterRegex=cnt.counter;var QO=z6();Mi.throttle=QO.throttle;Mi.throttleDone=QO.done;Mi.clearThrottle=QO.clear;var bg=NS();Mi.getGraphDiv=bg.getGraphDiv;Mi.isPlotDiv=bg.isPlotDiv;Mi.removeElement=bg.removeElement;Mi.addStyleRule=bg.addStyleRule;Mi.addRelatedStyleRule=bg.addRelatedStyleRule;Mi.deleteRelatedStyleRule=bg.deleteRelatedStyleRule;Mi.setStyleOnHover=bg.setStyleOnHover;Mi.getFullTransformMatrix=bg.getFullTransformMatrix;Mi.getElementTransformMatrix=bg.getElementTransformMatrix;Mi.getElementAndAncestors=bg.getElementAndAncestors;Mi.equalDomRects=bg.equalDomRects;Mi.clearResponsive=Mie();Mi.preserveDrawingBuffer=Cie();Mi.makeTraceGroups=Pie();Mi._=Rie();Mi.notifier=RO();Mi.filterUnique=JO();Mi.filterVisible=zie();Mi.pushUnique=zO();Mi.increment=qie();Mi.cleanNumber=Nie();Mi.ensureNumber=function(t){return Wie(t)?(t=Number(t),t>Zie||t=t?!1:Wie(e)&&e>=0&&e%1===0};Mi.noop=w6();Mi.identity=HS();Mi.repeat=function(e,t){for(var r=new Array(t),n=0;nr?Math.max(r,Math.min(t,e)):Math.max(t,Math.min(r,e))};Mi.bBoxIntersect=function(e,t,r){return r=r||0,e.left<=t.right+r&&t.left<=e.right+r&&e.top<=t.bottom+r&&t.top<=e.bottom+r};Mi.simpleMap=function(e,t,r,n,i){for(var a=e.length,o=new Array(a),s=0;s=Math.pow(2,r)?i>10?(Mi.warn("randstr failed uniqueness"),o):e(t,r,n,(i||0)+1):o};Mi.OptionControl=function(e,t){e||(e={}),t||(t="opt");var r={};return r.optionList=[],r._newoption=function(n){n[t]=e,r[n.name]=n,r.optionList.push(n)},r["_"+t]=e,r};Mi.smooth=function(e,t){if(t=Math.round(t)||0,t<2)return e;var r=e.length,n=2*r,i=2*t-1,a=new Array(i),o=new Array(r),s,l,u,c;for(s=0;s=n&&(u-=n*Math.floor(u/n)),u<0?u=-1-u:u>=r&&(u=n-1-u),c+=e[u]*a[l];o[s]=c}return o};Mi.syncOrAsync=function(e,t,r){var n,i;function a(){return Mi.syncOrAsync(e,t,r)}for(;e.length;)if(i=e.splice(0,1)[0],n=i(t),n&&n.then)return n.then(a);return r&&r(t)};Mi.stripTrailingSlash=function(e){return e.slice(-1)==="/"?e.slice(0,-1):e};Mi.noneOrAll=function(e,t,r){if(e){var n=!1,i=!0,a,o;for(a=0;a0?i:0})};Mi.fillArray=function(e,t,r,n){if(n=n||Mi.identity,Mi.isArrayOrTypedArray(e))for(var i=0;idnt.test(window.navigator.userAgent);var vnt=/Firefox\/(\d+)\.\d+/;Mi.getFirefoxVersion=function(){var e=vnt.exec(window.navigator.userAgent);if(e&&e.length===2){var t=parseInt(e[1]);if(!isNaN(t))return t}return null};Mi.isD3Selection=function(e){return e instanceof ZS.selection};Mi.ensureSingle=function(e,t,r,n){var i=e.select(t+(r?"."+r:""));if(i.size())return i;var a=e.append(t);return r&&a.classed(r,!0),n&&a.call(n),a};Mi.ensureSingleById=function(e,t,r,n){var i=e.select(t+"#"+r);if(i.size())return i;var a=e.append(t).attr("id",r);return n&&a.call(n),a};Mi.objectFromPath=function(e,t){for(var r=e.split("."),n,i=n={},a=0;a1?i+o[1]:"";if(a&&(o.length>1||s.length>4||r))for(;n.test(s);)s=s.replace(n,"$1"+a+"$2");return s+l};Mi.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var $ie=/^\w*$/;Mi.templateString=function(e,t){var r={};return e.replace(Mi.TEMPLATE_STRING_REGEX,function(n,i){var a;return $ie.test(i)?a=t[i]:(r[i]=r[i]||Mi.nestedProperty(t,i).get,a=r[i](!0)),a!==void 0?a:""})};var mnt={max:10,count:0,name:"hovertemplate"};Mi.hovertemplateString=e=>eq(q1(mg({},e),{opts:mnt}));var ynt={max:10,count:0,name:"texttemplate"};Mi.texttemplateString=e=>eq(q1(mg({},e),{opts:ynt}));var _nt=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function xnt(e){var t=e.match(_nt);return t?{key:t[1],op:t[2],number:Number(t[3])}:{key:e,op:null,number:null}}var bnt={max:10,count:0,name:"texttemplate",parseMultDiv:!0};Mi.texttemplateStringForShapes=e=>eq(q1(mg({},e),{opts:bnt}));var Gie=/^[:|\|]/;function eq({data:e=[],locale:t,fallback:r,labels:n={},opts:i,template:a}){return a.replace(Mi.TEMPLATE_STRING_REGEX,(o,s,l)=>{let u=["xother","yother"].includes(s),c=["_xother","_yother"].includes(s),f=["_xother_","_yother_"].includes(s),h=["xother_","yother_"].includes(s),d=u||c||h||f;(c||f)&&(s=s.substring(1)),(h||f)&&(s=s.substring(0,s.length-1));let v=null,_=null;if(i.parseMultDiv){var b=xnt(s);s=b.key,v=b.op,_=b.number}let p;if(d){if(n[s]===void 0)return"";p=n[s]}else for(let L of e)if(L){if(L.hasOwnProperty(s)){p=L[s];break}if($ie.test(s)||(p=Mi.nestedProperty(L,s).get(!0)),p!==void 0)break}if(p===void 0){let{count:L,max:x,name:C}=i,M=r===!1?o:r;return L=B6&&o<=Hie,u=s>=B6&&s<=Hie;if(l&&(n=10*n+o-B6),u&&(i=10*i+s-B6),!l||!u){if(n!==i)return n-i;if(o!==s)return o-s}}return i-n};var p3=2e9;Mi.seedPseudoRandom=function(){p3=2e9};Mi.pseudoRandom=function(){var e=p3;return p3=(69069*p3+1)%4294967296,Math.abs(p3-e)<429496729?Mi.pseudoRandom():p3/4294967296};Mi.fillText=function(e,t,r){var n=Array.isArray(r)?function(o){r.push(o)}:function(o){r.text=o},i=Mi.extractOption(e,t,"htx","hovertext");if(Mi.isValidTextValue(i))return n(i);var a=Mi.extractOption(e,t,"tx","text");if(Mi.isValidTextValue(a))return n(a)};Mi.isValidTextValue=function(e){return e||e===0};Mi.formatPercent=function(e,t){t=t||0;for(var r=(Math.round(100*e*Math.pow(10,t))*Math.pow(.1,t)).toFixed(t)+"%",n=0;n1&&(u=1):u=0,Mi.strTranslate(i-u*(r+o),a-u*(n+s))+Mi.strScale(u)+(l?"rotate("+l+(t?"":" "+r+" "+n)+")":"")};Mi.setTransormAndDisplay=function(e,t){e.attr("transform",Mi.getTextTransform(t)),e.style("display",t.scale?null:"none")};Mi.ensureUniformFontSize=function(e,t){var r=Mi.extendFlat({},t);return r.size=Math.max(t.size,e._fullLayout.uniformtext.minsize||0),r};Mi.join2=function(e,t,r){var n=e.length;return n>1?e.slice(0,-1).join(t)+r+e[n-1]:e.join(t)};Mi.bigFont=function(e){return Math.round(1.2*e)};var jie=Mi.getFirefoxVersion(),wnt=jie!==null&&jie<86;Mi.getPositionFromD3Event=function(){return wnt?[ZS.event.layerX,ZS.event.layerY]:[ZS.event.offsetX,ZS.event.offsetY]}});var rne=ye(()=>{"use strict";var Tnt=Dr(),ene={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;border:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X:focus-within .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group a":"display:grid;place-content:center;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;border:none;background:rgba(0,0,0,0);","X .modebar-btn svg":"position:relative;","X .modebar-btn:focus-visible":"outline:1px solid #000;outline-offset:1px;border-radius:3px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(tq in ene)tne=tq.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),Tnt.addStyleRule(tne,ene[tq]);var tne,tq});var rq=ye((Yir,ine)=>{ine.exports=!0});var nq=ye((Kir,nne)=>{"use strict";var Ant=rq(),iq;typeof window.matchMedia=="function"?iq=!window.matchMedia("(hover: none)").matches:iq=Ant;nne.exports=iq});var pb=ye((Jir,aq)=>{"use strict";var y3=typeof Reflect=="object"?Reflect:null,ane=y3&&typeof y3.apply=="function"?y3.apply:function(t,r,n){return Function.prototype.apply.call(t,r,n)},U6;y3&&typeof y3.ownKeys=="function"?U6=y3.ownKeys:Object.getOwnPropertySymbols?U6=function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:U6=function(t){return Object.getOwnPropertyNames(t)};function Snt(e){console&&console.warn&&console.warn(e)}var sne=Number.isNaN||function(t){return t!==t};function Jc(){Jc.init.call(this)}aq.exports=Jc;aq.exports.once=Cnt;Jc.EventEmitter=Jc;Jc.prototype._events=void 0;Jc.prototype._eventsCount=0;Jc.prototype._maxListeners=void 0;var one=10;function V6(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(Jc,"defaultMaxListeners",{enumerable:!0,get:function(){return one},set:function(e){if(typeof e!="number"||e<0||sne(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");one=e}});Jc.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};Jc.prototype.setMaxListeners=function(t){if(typeof t!="number"||t<0||sne(t))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+t+".");return this._maxListeners=t,this};function lne(e){return e._maxListeners===void 0?Jc.defaultMaxListeners:e._maxListeners}Jc.prototype.getMaxListeners=function(){return lne(this)};Jc.prototype.emit=function(t){for(var r=[],n=1;n0&&(o=r[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var l=a[t];if(l===void 0)return!1;if(typeof l=="function")ane(l,this,r);else for(var u=l.length,c=dne(l,u),n=0;n0&&o.length>i&&!o.warned){o.warned=!0;var s=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");s.name="MaxListenersExceededWarning",s.emitter=e,s.type=t,s.count=o.length,Snt(s)}return e}Jc.prototype.addListener=function(t,r){return une(this,t,r,!1)};Jc.prototype.on=Jc.prototype.addListener;Jc.prototype.prependListener=function(t,r){return une(this,t,r,!0)};function Mnt(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function cne(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=Mnt.bind(n);return i.listener=r,n.wrapFn=i,i}Jc.prototype.once=function(t,r){return V6(r),this.on(t,cne(this,t,r)),this};Jc.prototype.prependOnceListener=function(t,r){return V6(r),this.prependListener(t,cne(this,t,r)),this};Jc.prototype.removeListener=function(t,r){var n,i,a,o,s;if(V6(r),i=this._events,i===void 0)return this;if(n=i[t],n===void 0)return this;if(n===r||n.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete i[t],i.removeListener&&this.emit("removeListener",t,n.listener||r));else if(typeof n!="function"){for(a=-1,o=n.length-1;o>=0;o--)if(n[o]===r||n[o].listener===r){s=n[o].listener,a=o;break}if(a<0)return this;a===0?n.shift():Ent(n,a),n.length===1&&(i[t]=n[0]),i.removeListener!==void 0&&this.emit("removeListener",t,s||r)}return this};Jc.prototype.off=Jc.prototype.removeListener;Jc.prototype.removeAllListeners=function(t){var r,n,i;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[t]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[t]),this;if(arguments.length===0){var a=Object.keys(n),o;for(i=0;i=0;i--)this.removeListener(t,r[i]);return this};function fne(e,t,r){var n=e._events;if(n===void 0)return[];var i=n[t];return i===void 0?[]:typeof i=="function"?r?[i.listener||i]:[i]:r?knt(i):dne(i,i.length)}Jc.prototype.listeners=function(t){return fne(this,t,!0)};Jc.prototype.rawListeners=function(t){return fne(this,t,!1)};Jc.listenerCount=function(e,t){return typeof e.listenerCount=="function"?e.listenerCount(t):hne.call(e,t)};Jc.prototype.listenerCount=hne;function hne(e){var t=this._events;if(t!==void 0){var r=t[e];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}Jc.prototype.eventNames=function(){return this._eventsCount>0?U6(this._events):[]};function dne(e,t){for(var r=new Array(t),n=0;n{"use strict";var oq=pb().EventEmitter,Pnt={init:function(e){if(e._ev instanceof oq)return e;var t=new oq,r=new oq;return e._ev=t,e._internalEv=r,e.on=t.on.bind(t),e.once=t.once.bind(t),e.removeListener=t.removeListener.bind(t),e.removeAllListeners=t.removeAllListeners.bind(t),e._internalOn=r.on.bind(r),e._internalOnce=r.once.bind(r),e._removeInternalListener=r.removeListener.bind(r),e._removeAllInternalListeners=r.removeAllListeners.bind(r),e.emit=function(n,i){t.emit(n,i),r.emit(n,i)},typeof e.addEventListener=="function"&&e.addEventListener("wheel",()=>{},{passive:!0}),e},triggerHandler:function(e,t,r){var n,i=e._ev;if(!i)return;var a=i._events[t];if(!a)return;function o(l){if(l.listener){if(i.removeListener(t,l.listener),!l.fired)return l.fired=!0,l.listener.apply(i,[r])}else return l.apply(i,[r])}a=Array.isArray(a)?a:[a];var s;for(s=0;s{"use strict";var gne=Dr(),Int=cb().dfltConfig;function Rnt(e,t){for(var r=[],n,i=0;iInt.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};Ty.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};Ty.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};Ty.undo=function(t){var r,n;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;n=t.undoQueue.queue.length)){for(r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;n{"use strict";_ne.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var w3=ye(Jh=>{"use strict";var _0=qa(),YS=Dr(),H6=Gl(),lq=c3(),Dnt=sq(),Fnt=US(),znt=cb().configAttributes,xne=mc(),wg=YS.extendDeepAll,x3=YS.isPlainObject,Ont=YS.isArrayOrTypedArray,j6=YS.nestedProperty,qnt=YS.valObjectMeta,uq="_isSubplotObj",W6="_isLinkedToArray",Bnt="_arrayAttrRegexps",wne="_deprecated",cq=[uq,W6,Bnt,wne];Jh.IS_SUBPLOT_OBJ=uq;Jh.IS_LINKED_TO_ARRAY=W6;Jh.DEPRECATED=wne;Jh.UNDERSCORE_ATTRS=cq;Jh.get=function(){var e={};return _0.allTypes.forEach(function(t){e[t]=Unt(t)}),{defs:{valObjects:qnt,metaKeys:cq.concat(["description","role","editType","impliedEdits"]),editType:{traces:xne.traces,layout:xne.layout},impliedEdits:{}},traces:e,layout:Vnt(),frames:Gnt(),animation:b3(Fnt),config:b3(znt)}};Jh.crawl=function(e,t,r,n){var i=r||0;n=n||"",Object.keys(e).forEach(function(a){var o=e[a];if(cq.indexOf(a)===-1){var s=(n?n+".":"")+a;t(o,a,e,i,s),!Jh.isValObject(o)&&x3(o)&&a!=="impliedEdits"&&Jh.crawl(o,t,i+1,s)}})};Jh.isValObject=function(e){return e&&e.valType!==void 0};Jh.findArrayAttributes=function(e){var t=[],r=[],n=[],i,a;function o(l,u,c,f){r=r.slice(0,f).concat([u]),n=n.slice(0,f).concat([l&&l._isLinkedToArray]);var h=l&&(l.valType==="data_array"||l.arrayOk===!0)&&!(r[f-1]==="colorbar"&&(u==="ticktext"||u==="tickvals"));h&&s(i,0,"")}function s(l,u,c){var f=l[r[u]],h=c+r[u];if(u===r.length-1)Ont(f)&&t.push(a+h);else if(n[u]){if(Array.isArray(f))for(var d=0;d=a.length)return!1;if(e.dimensions===2){if(r++,t.length===r)return e;var o=t[r];if(!G6(o))return!1;e=a[i][o]}else e=a[i]}else e=a}}return e}function G6(e){return e===Math.round(e)&&e>=0}function Unt(e){var t,r;t=_0.modules[e]._module,r=t.basePlotModule;var n={};n.type=null;var i=wg({},H6),a=wg({},t.attributes);Jh.crawl(a,function(l,u,c,f,h){j6(i,h).set(void 0),l===void 0&&j6(a,h).set(void 0)}),wg(n,i),_0.traceIs(e,"noOpacity")&&delete n.opacity,_0.traceIs(e,"showLegend")||(delete n.showlegend,delete n.legendgroup),_0.traceIs(e,"noHover")&&(delete n.hoverinfo,delete n.hoverlabel),t.selectPoints||delete n.selectedpoints,wg(n,a),r.attributes&&wg(n,r.attributes),n.type=e;var o={meta:t.meta||{},categories:t.categories||{},animatable:!!t.animatable,type:e,attributes:b3(n)};if(t.layoutAttributes){var s={};wg(s,t.layoutAttributes),o.layoutAttributes=b3(s)}return t.animatable||Jh.crawl(o,function(l){Jh.isValObject(l)&&"anim"in l&&delete l.anim}),o}function Vnt(){var e={},t,r;wg(e,lq);for(t in _0.subplotsRegistry)if(r=_0.subplotsRegistry[t],!!r.layoutAttributes)if(Array.isArray(r.attr))for(var n=0;n{"use strict";var T3=Dr(),Znt=Gl(),$1="templateitemname",fq={name:{valType:"string",editType:"none"}};fq[$1]={valType:"string",editType:"calc"};gb.templatedArray=function(e,t){return t._isLinkedToArray=e,t.name=fq.name,t[$1]=fq[$1],t};gb.traceTemplater=function(e){var t={},r,n;for(r in e)n=e[r],Array.isArray(n)&&n.length&&(t[r]=0);function i(a){r=T3.coerce(a,{},Znt,"type");var o={type:r,_template:null};if(r in t){n=e[r];var s=t[r]%n.length;t[r]++,o._template=n[s]}return o}return{newTrace:i}};gb.newContainer=function(e,t,r){var n=e._template,i=n&&(n[t]||r&&n[r]);T3.isPlainObject(i)||(i=null);var a=e[t]={_template:i};return a};gb.arrayTemplater=function(e,t,r){var n=e._template,i=n&&n[Sne(t)],a=n&&n[t];(!Array.isArray(a)||!a.length)&&(a=[]);var o={};function s(u){var c={name:u.name,_input:u},f=c[$1]=u[$1];if(!Ane(f))return c._template=i,c;for(var h=0;h=n&&(r._input||{})._templateitemname;a&&(i=n);var o=t+"["+i+"]",s;function l(){s={},a&&(s[o]={},s[o][$1]=a)}l();function u(d,v){s[d]=v}function c(d,v){a?T3.nestedProperty(s[o],d).set(v):s[o+"."+d]=v}function f(){var d=s;return l(),d}function h(d,v){d&&c(d,v);var _=f();for(var b in _)T3.nestedProperty(e,b).set(_[b])}return{modifyBase:u,modifyItem:c,getUpdateObj:f,applyUpdate:h}}});var hd=ye((inr,Mne)=>{"use strict";var KS=o3().counter;Mne.exports={idRegex:{x:KS("x","( domain)?"),y:KS("y","( domain)?")},attrRegex:KS("[xy]axis"),xAxisMatch:KS("xaxis"),yAxisMatch:KS("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var hf=ye(Ap=>{"use strict";var Ynt=qa(),hq=hd();Ap.id2name=function(t){if(!(typeof t!="string"||!t.match(hq.AX_ID_PATTERN))){var r=t.split(" ")[0].slice(1);return r==="1"&&(r=""),t.charAt(0)+"axis"+r}};Ap.name2id=function(t){if(t.match(hq.AX_NAME_PATTERN)){var r=t.slice(5);return r==="1"&&(r=""),t.charAt(0)+r}};Ap.cleanId=function(t,r,n){var i=/( domain)$/.test(t);if(!(typeof t!="string"||!t.match(hq.AX_ID_PATTERN))&&!(r&&t.charAt(0)!==r)&&!(i&&!n)){var a=t.split(" ")[0].slice(1).replace(/^0+/,"");return a==="1"&&(a=""),t.charAt(0)+a+(i&&n?" domain":"")}};Ap.list=function(e,t,r){var n=e._fullLayout;if(!n)return[];var i=Ap.listIds(e,t),a=new Array(i.length),o;for(o=0;on?1:-1:+(e.slice(1)||1)-+(t.slice(1)||1)};Ap.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function Ene(e,t){if(t&&t.length){for(var r=0;r{"use strict";function Knt(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".outline-controllers").remove()}function Jnt(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}kne.exports={clearOutlineControllers:Knt,clearOutline:Jnt}});var X6=ye((onr,Cne)=>{"use strict";Cne.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var Id=ye(Y6=>{"use strict";var Z6=qa(),snr=hd().SUBPLOT_PATTERN;Y6.getSubplotCalcData=function(e,t,r){var n=Z6.subplotsRegistry[t];if(!n)return[];for(var i=n.attr,a=[],o=0;o{"use strict";var $nt=qa(),A3=Dr();mb.manageCommandObserver=function(e,t,r,n){var i={},a=!0;t&&t._commandObserver&&(i=t._commandObserver),i.cache||(i.cache={}),i.lookupTable={};var o=mb.hasSimpleAPICommandBindings(e,r,i.lookupTable);if(t&&t._commandObserver){if(o)return i;if(t._commandObserver.remove)return t._commandObserver.remove(),t._commandObserver=null,i}if(o){Lne(e,o,i.cache),i.check=function(){if(a){var c=Lne(e,o,i.cache);return c.changed&&n&&i.lookupTable[c.value]!==void 0&&(i.disable(),Promise.resolve(n({value:c.value,type:o.type,prop:o.prop,traces:o.traces,index:i.lookupTable[c.value]})).then(i.enable,i.enable)),c.changed}};for(var s=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],l=0;l0?".":"")+i;A3.isPlainObject(a)?dq(a,t,o,n+1):t(o,i,a)}})}});var Mc=ye((cnr,Xne)=>{"use strict";var Nne=Oa(),eat=r3().timeFormatLocale,tat=wO().formatLocale,JS=Eo(),rat=TO(),Xl=qa(),Une=w3(),iat=vl(),Ga=Dr(),Vne=ka(),Dne=fs().BADNUM,Sp=hf(),nat=Q1().clearOutline,aat=X6(),vq=US(),oat=sq(),sat=Id().getModuleCalcData,Fne=Ga.relinkPrivateKeys,yb=Ga._,xa=Xne.exports={};Ga.extendFlat(xa,Xl);xa.attributes=Gl();xa.attributes.type.values=xa.allTypes;xa.fontAttrs=ec();xa.layoutAttributes=c3();var J6=Rne();xa.executeAPICommand=J6.executeAPICommand;xa.computeAPICommandBindings=J6.computeAPICommandBindings;xa.manageCommandObserver=J6.manageCommandObserver;xa.hasSimpleAPICommandBindings=J6.hasSimpleAPICommandBindings;xa.redrawText=function(e){return e=Ga.getGraphDiv(e),new Promise(function(t){setTimeout(function(){e._fullLayout&&(Xl.getComponentMethod("annotations","draw")(e),Xl.getComponentMethod("legend","draw")(e),Xl.getComponentMethod("colorbar","draw")(e),t(xa.previousPromises(e)))},300)})};xa.resize=function(e){e=Ga.getGraphDiv(e);var t,r=new Promise(function(n,i){(!e||Ga.isHidden(e))&&i(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(t=e._resolveResize),e._resolveResize=n,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||Ga.isHidden(e)){n(e);return}delete e.layout.width,delete e.layout.height;var a=e.changed;e.autoplay=!0,Xl.call("relayout",e,{autosize:!0}).then(function(){e.changed=a,e._resolveResize===n&&(delete e._resolveResize,n(e))})},100)});return t&&t(r),r};xa.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};xa.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var t=e._fullLayout,r=Ga.ensureSingle(t._paper,"text","js-plot-link-container",function(l){l.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:Vne.defaultLine,"pointer-events":"all"}).each(function(){var u=Nne.select(this);u.append("tspan").classed("js-link-to-tool",!0),u.append("tspan").classed("js-link-spacer",!0),u.append("tspan").classed("js-sourcelinks",!0)})}),n=r.node(),i={y:t._paper.attr("height")-9};document.body.contains(n)&&n.getComputedTextLength()>=t.width-20?(i["text-anchor"]="start",i.x=5):(i["text-anchor"]="end",i.x=t._paper.attr("width")-7),r.attr(i);var a=r.select(".js-link-to-tool"),o=r.select(".js-link-spacer"),s=r.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&lat(e,a),o.text(a.text()&&s.text()?" - ":"")}};function lat(e,t){t.text("");var r=t.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)r.on("click",function(){xa.sendDataToCloud(e)});else{var n=window.location.pathname.split("/"),i=window.location.search;r.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+i})}}xa.sendDataToCloud=function(e){var t=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(t){e.emit("plotly_beforeexport");var r=Nne.select(e).append("div").attr("id","hiddenform").style("display","none"),n=r.append("form").attr({action:t+"/external",method:"post",target:"_blank"}),i=n.append("input").attr({type:"text",name:"data"});return i.node().value=xa.graphJson(e,!1,"keepdata"),n.node().submit(),r.remove(),e.emit("plotly_afterexport"),!1}};var uat=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],cat=["year","month","dayMonth","dayMonthYear"];xa.supplyDefaults=function(e,t){var r=t&&t.skipUpdateCalc,n=e._fullLayout||{};if(n._skipDefaults){delete n._skipDefaults;return}var i=e._fullLayout={},a=e.layout||{},o=e._fullData||[],s=e._fullData=[],l=e.data||[],u=e.calcdata||[],c=e._context||{},f;e._transitionData||xa.createTransitionData(e),i._dfltTitle={plot:yb(e,"Click to enter Plot title"),subtitle:yb(e,"Click to enter Plot subtitle"),x:yb(e,"Click to enter X axis title"),y:yb(e,"Click to enter Y axis title"),colorbar:yb(e,"Click to enter Colorscale title"),annotation:yb(e,"new text")},i._traceWord=yb(e,"trace");var h=zne(e,uat);if(i._mapboxAccessToken=c.mapboxAccessToken,n._initialAutoSizeIsDone){var d=n.width,v=n.height;xa.supplyLayoutGlobalDefaults(a,i,h),a.width||(i.width=d),a.height||(i.height=v),xa.sanitizeMargins(i)}else{xa.supplyLayoutGlobalDefaults(a,i,h);var _=!a.width||!a.height,b=i.autosize,p=c.autosizable,k=_&&(b||p);k?xa.plotAutoSize(e,a,i):_&&xa.sanitizeMargins(i),!b&&_&&(a.width=i.width,a.height=i.height)}i._d3locale=dat(h,i.separators),i._extraFormat=zne(e,cat),i._initialAutoSizeIsDone=!0,i._dataLength=l.length,i._modules=[],i._visibleModules=[],i._basePlotModules=[];var E=i._subplots=hat(),S=i._splomAxes={x:{},y:{}},L=i._splomSubplots={};i._splomGridDflt={},i._scatterStackOpts={},i._firstScatter={},i._alignmentOpts={},i._colorAxes={},i._requestRangeslider={},i._traceUids=fat(o,l),xa.supplyDataDefaults(l,s,a,i);var x=Object.keys(S.x),C=Object.keys(S.y);if(x.length>1&&C.length>1){for(Xl.getComponentMethod("grid","sizeDefaults")(a,i),f=0;f15&&C.length>15&&i.shapes.length===0&&i.images.length===0,xa.linkSubplots(s,i,o,n),xa.cleanPlot(s,i,o,n);var z=!!(n._has&&n._has("cartesian")),O=!!(i._has&&i._has("cartesian")),V=z,G=O;V&&!G?n._bgLayer.remove():G&&!V&&(i._shouldCreateBgLayer=!0),n._zoomlayer&&!e._dragging&&nat({_fullLayout:n}),vat(s,i),Fne(i,n),Xl.getComponentMethod("colorscale","crossTraceDefaults")(s,i),i._preGUI||(i._preGUI={}),i._tracePreGUI||(i._tracePreGUI={});var Z=i._tracePreGUI,j={},N;for(N in Z)j[N]="old";for(f=0;f0){var c=1-2*a;o=Math.round(c*o),s=Math.round(c*s)}}var f=xa.layoutAttributes.width.min,h=xa.layoutAttributes.height.min;o1,v=!r.height&&Math.abs(n.height-s)>1;(v||d)&&(d&&(n.width=o),v&&(n.height=s)),t._initialAutoSize||(t._initialAutoSize={width:o,height:s}),xa.sanitizeMargins(n)};xa.supplyLayoutModuleDefaults=function(e,t,r,n){var i=Xl.componentsRegistry,a=t._basePlotModules,o,s,l,u=Xl.subplotsRegistry.cartesian;for(o in i)l=i[o],l.includeBasePlot&&l.includeBasePlot(e,t);a.length||a.push(u),t._has("cartesian")&&(Xl.getComponentMethod("grid","contentDefaults")(e,t),u.finalizeSubplots(e,t));for(var c in t._subplots)t._subplots[c].sort(Ga.subplotSort);for(s=0;s1&&(r.l/=b,r.r/=b)}if(h){var p=(r.t+r.b)/h;p>1&&(r.t/=p,r.b/=p)}var k=r.xl!==void 0?r.xl:r.x,E=r.xr!==void 0?r.xr:r.x,S=r.yt!==void 0?r.yt:r.y,L=r.yb!==void 0?r.yb:r.y;d[t]={l:{val:k,size:r.l+_},r:{val:E,size:r.r+_},b:{val:L,size:r.b+_},t:{val:S,size:r.t+_}},v[t]=1}if(!n._replotting)return xa.doAutoMargin(e)}};function gat(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var t=Sp.list(e,"",!0);for(var r in t)if(t[r].autoshift||t[r].shift)return!0;return!1}xa.doAutoMargin=function(e){var t=e._fullLayout,r=t.width,n=t.height;t._size||(t._size={}),Gne(t);var i=t._size,a=t.margin,o={t:0,b:0,l:0,r:0},s=Ga.extendFlat({},i),l=a.l,u=a.r,c=a.t,f=a.b,h=t._pushmargin,d=t._pushmarginIds,v=t.minreducedwidth,_=t.minreducedheight;if(a.autoexpand!==!1){for(var b in h)d[b]||delete h[b];var p=e._fullLayout._reservedMargin;for(var k in p)for(var E in p[k]){var S=p[k][E];o[E]=Math.max(o[E],S)}h.base={l:{val:0,size:l},r:{val:1,size:u},t:{val:1,size:c},b:{val:0,size:f}};for(var L in o){var x=0;for(var C in h)C!=="base"&&JS(h[C][L].size)&&(x=h[C][L].size>x?h[C][L].size:x);var M=Math.max(0,a[L]-x);o[L]=Math.max(0,o[L]-M)}for(var g in h){var P=h[g].l||{},T=h[g].b||{},z=P.val,O=P.size,V=T.val,G=T.size,Z=r-o.r-o.l,j=n-o.t-o.b;for(var N in h){if(JS(O)&&h[N].r){var H=h[N].r.val,te=h[N].r.size;if(H>z){var oe=(O*H+(te-Z)*z)/(H-z),_e=(te*(1-z)+(O-Z)*(1-H))/(H-z);oe+_e>l+u&&(l=oe,u=_e)}}if(JS(G)&&h[N].t){var Ee=h[N].t.val,Ce=h[N].t.size;if(Ee>V){var me=(G*Ee+(Ce-j)*V)/(Ee-V),ie=(Ce*(1-V)+(G-j)*(1-Ee))/(Ee-V);me+ie>f+c&&(f=me,c=ie)}}}}}var Se=Ga.constrain(r-a.l-a.r,Hne,v),Le=Ga.constrain(n-a.t-a.b,jne,_),Ae=Math.max(0,r-Se),Fe=Math.max(0,n-Le);if(Ae){var Pe=(l+u)/Ae;Pe>1&&(l/=Pe,u/=Pe)}if(Fe){var ge=(f+c)/Fe;ge>1&&(f/=ge,c/=ge)}if(i.l=Math.round(l)+o.l,i.r=Math.round(u)+o.r,i.t=Math.round(c)+o.t,i.b=Math.round(f)+o.b,i.p=Math.round(a.pad),i.w=Math.round(r)-i.l-i.r,i.h=Math.round(n)-i.t-i.b,!t._replotting&&(xa.didMarginChange(s,i)||gat(e))){"_redrawFromAutoMarginCount"in t?t._redrawFromAutoMarginCount++:t._redrawFromAutoMarginCount=1;var Re=3*(1+Object.keys(d).length);if(t._redrawFromAutoMarginCount1)return!0}return!1};xa.graphJson=function(e,t,r,n,i,a){(i&&t&&!e._fullData||i&&!t&&!e._fullLayout)&&xa.supplyDefaults(e);var o=i?e._fullData:e.data,s=i?e._fullLayout:e.layout,l=(e._transitionData||{})._frames;function u(h,d){if(typeof h=="function")return d?"_function_":null;if(Ga.isPlainObject(h)){var v={},_;return Object.keys(h).sort().forEach(function(E){if(["_","["].indexOf(E.charAt(0))===-1){if(typeof h[E]=="function"){d&&(v[E]="_function");return}if(r==="keepdata"){if(E.slice(-3)==="src")return}else if(r==="keepstream"){if(_=h[E+"src"],typeof _=="string"&&_.indexOf(":")>0&&!Ga.isPlainObject(h.stream))return}else if(r!=="keepall"&&(_=h[E+"src"],typeof _=="string"&&_.indexOf(":")>0))return;v[E]=u(h[E],d)}}),v}var b=Array.isArray(h),p=Ga.isTypedArray(h);if((b||p)&&h.dtype&&h.shape){var k=h.bdata;return u({dtype:h.dtype,shape:h.shape,bdata:Ga.isArrayBuffer(k)?rat.encode(k):k},d)}return b?h.map(function(E){return u(E,d)}):p?Ga.simpleMap(h,Ga.identity):Ga.isJSDate(h)?Ga.ms2DateTimeLocal(+h):h}var c={data:(o||[]).map(function(h){var d=u(h);return t&&delete d.fit,d})};if(!t&&(c.layout=u(s),i)){var f=s._size;c.layout.computed={margin:{b:f.b,l:f.l,r:f.r,t:f.t}}}return l&&(c.frames=u(l)),a&&(c.config=u(e._context,!0)),n==="object"?c:JSON.stringify(c)};xa.modifyFrames=function(e,t){var r,n,i,a=e._transitionData._frames,o=e._transitionData._frameHash;for(r=0;r0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){n=!0}),r.redraw&&e._transitionData._interruptCallbacks.push(function(){return Xl.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var h=0,d=0;function v(){return h++,function(){d++,!n&&d===h&&s(f)}}r.runFn(v),setTimeout(v())})}function s(f){if(e._transitionData)return a(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(r.redraw)return Xl.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(f)}function l(){if(e._transitionData)return e._transitioning=!1,i(e._transitionData._interruptCallbacks)}var u=[xa.previousPromises,l,r.prepareFn,xa.rehover,xa.reselect,o],c=Ga.syncOrAsync(u,e);return(!c||!c.then)&&(c=Promise.resolve()),c.then(function(){return e})}xa.doCalcdata=function(e,t){var r=Sp.list(e),n=e._fullData,i=e._fullLayout,a,o,s,l,u=new Array(n.length),c=(e.calcdata||[]).slice();for(e.calcdata=u,i._numBoxes=0,i._numViolins=0,i._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,i._piecolormap={},i._sunburstcolormap={},i._treemapcolormap={},i._iciclecolormap={},i._funnelareacolormap={},s=0;s=0;l--)if(L[l].enabled){a._indexToPoints=L[l]._indexToPoints;break}o&&o.calc&&(S=o.calc(e,a))}(!Array.isArray(S)||!S[0])&&(S=[{x:Dne,y:Dne}]),S[0].t||(S[0].t={}),S[0].trace=a,u[k]=S}}for(qne(r,n,i),s=0;s{"use strict";_b.xmlns="http://www.w3.org/2000/xmlns/";_b.svg="http://www.w3.org/2000/svg";_b.xlink="http://www.w3.org/1999/xlink";_b.svgAttrs={xmlns:_b.svg,"xmlns:xlink":_b.xlink}});var $h=ye((hnr,Zne)=>{"use strict";Zne.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var ru=ye(x0=>{"use strict";var Ph=Oa(),Ay=Dr(),xat=Ay.strTranslate,pq=Wp(),bat=$h().LINE_SPACING,wat=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;x0.convertToTspans=function(e,t,r){var n=e.text(),i=!e.attr("data-notex")&&t&&t._context.typesetMath&&typeof MathJax!="undefined"&&n.match(wat),a=Ph.select(e.node().parentNode);if(a.empty())return;var o=e.attr("class")?e.attr("class").split(" ")[0]:"text";o+="-math",a.selectAll("svg."+o).remove(),a.selectAll("g."+o+"-group").remove(),e.style("display",null).attr({"data-unformatted":n,"data-math":"N"});function s(){a.empty()||(o=e.attr("class")+"-math",a.select("svg."+o).remove()),e.text("").style("white-space","pre");var l=Fat(e.node(),n);l&&e.style("pointer-events","all"),x0.positionText(e),r&&r.call(e)}return i?(t&&t._promises||[]).push(new Promise(function(l){e.style("display","none");var u=parseInt(e.node().style.fontSize,10),c={fontSize:u};Mat(i[2],c,function(f,h,d){a.selectAll("svg."+o).remove(),a.selectAll("g."+o+"-group").remove();var v=f&&f.select("svg");if(!v||!v.node()){s(),l();return}var _=a.append("g").classed(o+"-group",!0).attr({"pointer-events":"none","data-unformatted":n,"data-math":"Y"});_.node().appendChild(v.node()),h&&h.node()&&v.node().insertBefore(h.node().cloneNode(!0),v.node().firstChild);var b=d.width,p=d.height;v.attr({class:o,height:p,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var k=e.node().style.fill||"black",E=v.select("g");E.attr({fill:k,stroke:k});var S=E.node().getBoundingClientRect(),L=S.width,x=S.height;(L>b||x>p)&&(v.style("overflow","hidden"),S=v.node().getBoundingClientRect(),L=S.width,x=S.height);var C=+e.attr("x"),M=+e.attr("y"),g=u||e.node().getBoundingClientRect().height,P=-g/4;if(o[0]==="y")_.attr({transform:"rotate("+[-90,C,M]+")"+xat(-L/2,P-x/2)});else if(o[0]==="l")M=P-x/2;else if(o[0]==="a"&&o.indexOf("atitle")!==0)C=0,M=P;else{var T=e.attr("text-anchor");C=C-L*(T==="middle"?.5:T==="end"?1:0),M=M+P-x/2}v.attr({x:C,y:M}),r&&r.call(e,_),l(_)})})):s(),e};var Tat=/(<|<|<)/g,Aat=/(>|>|>)/g;function Sat(e){return e.replace(Tat,"\\lt ").replace(Aat,"\\gt ")}var Yne=[["$","$"],["\\(","\\)"]];function Mat(e,t,r){var n=parseInt((MathJax.version||"").split(".")[0]);if(n!==2&&n!==3){Ay.warn("No MathJax version:",MathJax.version);return}var i,a,o,s,l=function(){return a=Ay.extendDeepAll({},MathJax.Hub.config),o=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:Yne},displayAlign:"left"})},u=function(){a=Ay.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=Yne},c=function(){if(i=MathJax.Hub.config.menuSettings.renderer,i!=="SVG")return MathJax.Hub.setRenderer("SVG")},f=function(){i=MathJax.config.startup.output,i!=="svg"&&(MathJax.config.startup.output="svg")},h=function(){var k="math-output-"+Ay.randstr({},64);s=Ph.select("body").append("div").attr({id:k}).style({visibility:"hidden",position:"absolute","font-size":t.fontSize+"px"}).text(Sat(e));var E=s.node();return n===2?MathJax.Hub.Typeset(E):MathJax.typeset([E])},d=function(){var k=s.select(n===2?".MathJax_SVG":".MathJax"),E=!k.empty()&&s.select("svg").node();if(!E)Ay.log("There was an error in the tex syntax.",e),r();else{var S=E.getBoundingClientRect(),L;n===2?L=Ph.select("body").select("#MathJax_SVG_glyphs"):L=k.select("defs"),r(k,L,S)}s.remove()},v=function(){if(i!=="SVG")return MathJax.Hub.setRenderer(i)},_=function(){i!=="svg"&&(MathJax.config.startup.output=i)},b=function(){return o!==void 0&&(MathJax.Hub.processSectionDelay=o),MathJax.Hub.Config(a)},p=function(){MathJax.config=a};n===2?MathJax.Hub.Queue(l,c,h,d,v,b):n===3&&(u(),f(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){h(),d(),_(),p()}))}var Qne={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},Eat={sub:"0.3em",sup:"-0.6em"},kat={sub:"-0.21em",sup:"0.42em"},Kne="\u200B",Jne=["http:","https:","mailto:","",void 0,":"],eae=x0.NEWLINES=/(\r\n?|\n)/g,mq=/(<[^<>]*>)/,yq=/<(\/?)([^ >]*)(\s+(.*))?>/i,Cat=//i;x0.BR_TAG_ALL=//gi;var tae=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,rae=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,iae=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,Lat=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function xb(e,t){if(!e)return null;var r=e.match(t),n=r&&(r[3]||r[4]);return n&&$6(n)}var Pat=/(^|;)\s*color:/;x0.plainText=function(e,t){t=t||{};for(var r=t.len!==void 0&&t.len!==-1?t.len:1/0,n=t.allowedTags!==void 0?t.allowedTags:["br"],i="...",a=i.length,o=e.split(mq),s=[],l="",u=0,c=0;ca?s.push(f.slice(0,Math.max(0,_-a))+i):s.push(f.slice(0,_));break}l=""}}return s.join("")};var Iat={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},Rat=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function $6(e){return e.replace(Rat,function(t,r){var n;return r.charAt(0)==="#"?n=Dat(r.charAt(1)==="x"?parseInt(r.slice(2),16):parseInt(r.slice(1),10)):n=Iat[r],n||t})}x0.convertEntities=$6;function Dat(e){if(!(e>1114111)){var t=String.fromCodePoint;if(t)return t(e);var r=String.fromCharCode;return e<=65535?r(e):r((e>>10)+55232,e%1024+56320)}}function Fat(e,t){t=t.replace(eae," ");var r=!1,n=[],i,a=-1;function o(){a++;var x=document.createElementNS(pq.svg,"tspan");Ph.select(x).attr({class:"line",dy:a*bat+"em"}),e.appendChild(x),i=x;var C=n;if(n=[{node:x}],C.length>1)for(var M=1;M.",t);return}var C=n.pop();x!==C.type&&Ay.log("Start tag <"+C.type+"> doesnt match end tag <"+x+">. Pretending it did match.",t),i=n[n.length-1].node}var c=Cat.test(t);c?o():(i=e,n=[{node:e}]);for(var f=t.split(mq),h=0;h{"use strict";var zat=Oa(),eL=cd(),QS=Eo(),Q6=Dr(),aae=ka(),Oat=lb().isValid;function qat(e,t,r){var n=t?Q6.nestedProperty(e,t).get()||{}:e,i=n[r||"color"];i&&i._inputArray&&(i=i._inputArray);var a=!1;if(Q6.isArrayOrTypedArray(i)){for(var o=0;o=0;n--,i++){var a=e[n];r[i]=[1-a[0],a[1]]}return r}function fae(e,t){t=t||{};for(var r=e.domain,n=e.range,i=n.length,a=new Array(i),o=0;o{"use strict";var dae=NO(),Nat=dae.FORMAT_LINK,Uat=dae.DATE_FORMAT_LINK;function Vat(e,t){return{valType:"string",dflt:"",editType:"none",description:(t?_q:vae)("hover text",e)+["By default the values are formatted using "+(t?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function _q(e,t){return["Sets the "+e+" formatting rule"+(t?"for `"+t+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+Nat+"."].join(" ")}function vae(e,t){return _q(e,t)+[" And for dates see: "+Uat+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}pae.exports={axisHoverFormat:Vat,descriptionOnlyNumbers:_q,descriptionWithDates:vae}});var Rd=ye((mnr,Iae)=>{"use strict";var gae=ec(),S3=Lh(),Pae=Pd().dash,bq=Ao().extendFlat,mae=vl().templatedArray,gnr=Ll().templateFormatStringDescription,yae=df().descriptionWithDates,Gat=fs().ONEDAY,pm=hd(),Hat=pm.HOUR_PATTERN,jat=pm.WEEKDAY_PATTERN,xq={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},Wat=bq({},xq,{values:xq.values.slice().concat(["sync"])});function _ae(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var xae={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},bae={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},wae={valType:"data_array",editType:"ticks"},Tae={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function Aae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=5),t}function Sae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var Mae={valType:"color",dflt:S3.defaultLine,editType:"ticks"},Eae={valType:"color",dflt:S3.lightLine,editType:"ticks"};function kae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var Cae=bq({},Pae,{editType:"ticks"}),Lae={valType:"boolean",editType:"ticks"};Iae.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:S3.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:gae({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},modebardisable:{valType:"flaglist",flags:["autoscale","zoominout"],extras:["none"],dflt:"none",editType:"modebar"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[pm.idRegex.x.toString(),pm.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[pm.idRegex.x.toString(),pm.idRegex.y.toString()],editType:"calc"},rangebreaks:mae("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[jat,Hat,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:Gat},editType:"calc"}),tickmode:Wat,nticks:_ae(),tick0:xae,dtick:bae,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:wae,ticktext:{valType:"data_array",editType:"ticks"},ticks:Tae,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:Aae(),tickwidth:Sae(),tickcolor:Mae,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:bq({},Pae,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:gae({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:yae("tick label")},tickformatstops:mae("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:yae("hover text")},unifiedhovertitle:{text:{valType:"string",dflt:"",editType:"none"},editType:"none"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:S3.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:Lae,gridcolor:Eae,gridwidth:kae(),griddash:Cae,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:S3.defaultLine,editType:"ticks"},zerolinelayer:{valType:"enumerated",values:["above traces","below traces"],dflt:"below traces",editType:"plot"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:S3.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",pm.idRegex.x.toString(),pm.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",pm.idRegex.x.toString(),pm.idRegex.y.toString()],editType:"plot"},minor:{tickmode:xq,nticks:_ae("minor"),tick0:xae,dtick:bae,tickvals:wae,ticks:Tae,ticklen:Aae("minor"),tickwidth:Sae("minor"),tickcolor:Mae,gridcolor:Eae,gridwidth:kae("minor"),griddash:Cae,showgrid:Lae,editType:"ticks"},minorloglabels:{valType:"enumerated",values:["small digits","complete","none"],dflt:"small digits",editType:"calc"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var tL=ye((ynr,Fae)=>{"use strict";var $c=Rd(),Rae=ec(),Dae=Ao().extendFlat,Xat=mc().overrideAll;Fae.exports=Xat({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:$c.linecolor,outlinewidth:$c.linewidth,bordercolor:$c.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:$c.minor.tickmode,nticks:$c.nticks,tick0:$c.tick0,dtick:$c.dtick,tickvals:$c.tickvals,ticktext:$c.ticktext,ticks:Dae({},$c.ticks,{dflt:""}),ticklabeloverflow:Dae({},$c.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:$c.ticklen,tickwidth:$c.tickwidth,tickcolor:$c.tickcolor,ticklabelstep:$c.ticklabelstep,showticklabels:$c.showticklabels,labelalias:$c.labelalias,tickfont:Rae({}),tickangle:$c.tickangle,tickformat:$c.tickformat,tickformatstops:$c.tickformatstops,tickprefix:$c.tickprefix,showtickprefix:$c.showtickprefix,ticksuffix:$c.ticksuffix,showticksuffix:$c.showticksuffix,separatethousands:$c.separatethousands,exponentformat:$c.exponentformat,minexponent:$c.minexponent,showexponent:$c.showexponent,title:{text:{valType:"string"},font:Rae({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var Tu=ye((xnr,Oae)=>{"use strict";var Zat=tL(),Yat=o3().counter,Kat=Z1(),zae=lb().scales,_nr=Kat(zae);function rL(e){return"`"+e+"`"}Oae.exports=function(t,r){t=t||"",r=r||{};var n=r.cLetter||"c",i="onlyIfNumerical"in r?r.onlyIfNumerical:!!t,a="noScale"in r?r.noScale:t==="marker.line",o="showScaleDflt"in r?r.showScaleDflt:n==="z",s=typeof r.colorscaleDflt=="string"?zae[r.colorscaleDflt]:null,l=r.editTypeOverride||"",u=t?t+".":"",c,f;"colorAttr"in r?(c=r.colorAttr,f=r.colorAttr):(c={z:"z",c:"color"}[n],f="in "+rL(u+c));var h=i?" Has an effect only if "+f+" is set to a numerical array.":"",d=n+"auto",v=n+"min",_=n+"max",b=n+"mid",p=rL(u+d),k=rL(u+v),E=rL(u+_),S=k+" and "+E,L={};L[v]=L[_]=void 0;var x={};x[d]=!1;var C={};return c==="color"&&(C.color={valType:"color",arrayOk:!0,editType:l||"style"},r.anim&&(C.color.anim=!0)),C[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:L},C[v]={valType:"number",dflt:null,editType:l||"plot",impliedEdits:x},C[_]={valType:"number",dflt:null,editType:l||"plot",impliedEdits:x},C[b]={valType:"number",dflt:null,editType:"calc",impliedEdits:L},C.colorscale={valType:"colorscale",editType:"calc",dflt:s,impliedEdits:{autocolorscale:!1}},C.autocolorscale={valType:"boolean",dflt:r.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},C.reversescale={valType:"boolean",dflt:!1,editType:"plot"},a||(C.showscale={valType:"boolean",dflt:o,editType:"calc"},C.colorbar=Zat),r.noColorAxis||(C.coloraxis={valType:"subplotid",regex:Yat("coloraxis"),dflt:null,editType:"calc"}),C}});var Tq=ye((bnr,qae)=>{"use strict";var Jat=Ao().extendFlat,$at=Tu(),wq=lb().scales;qae.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:wq.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:wq.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:wq.RdBu,editType:"calc"}},coloraxis:Jat({_isSubplotObj:!0,editType:"calc"},$at("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var Aq=ye((wnr,Bae)=>{"use strict";var Qat=Dr();Bae.exports=function(t){return Qat.isPlainObject(t.colorbar)}});var Eq=ye(Mq=>{"use strict";var Sq=Eo(),Nae=Dr(),Uae=fs(),eot=Uae.ONEDAY,tot=Uae.ONEWEEK;Mq.dtick=function(e,t){var r=t==="log",n=t==="date",i=t==="category",a=n?eot:1;if(!e)return a;if(Sq(e))return e=Number(e),e<=0?a:i?Math.max(1,Math.round(e)):n?Math.max(.1,e):e;if(typeof e!="string"||!(n||r))return a;var o=e.charAt(0),s=e.slice(1);return s=Sq(s)?Number(s):0,s<=0||!(n&&o==="M"&&s===Math.round(s)||r&&o==="L"||r&&o==="D"&&(s===1||s===2))?a:e};Mq.tick0=function(e,t,r,n){if(t==="date")return Nae.cleanDate(e,Nae.dateTick0(r,n%tot===0?1:0));if(!(n==="D1"||n==="D2"))return Sq(e)?Number(e):0}});var bb=ye((Anr,Gae)=>{"use strict";var Vae=Eq(),rot=Dr().isArrayOrTypedArray,iot=vv().isTypedArraySpec,not=vv().decodeTypedArraySpec;Gae.exports=function(t,r,n,i,a){a||(a={});var o=a.isMinor,s=o?t.minor||{}:t,l=o?r.minor:r,u=o?"minor.":"";function c(k){var E=s[k];return iot(E)&&(E=not(E)),E!==void 0?E:(l._template||{})[k]}var f=c("tick0"),h=c("dtick"),d=c("tickvals"),v=rot(d)?"array":h?"linear":"auto",_=n(u+"tickmode",v);if(_==="auto"||_==="sync")n(u+"nticks");else if(_==="linear"){var b=l.dtick=Vae.dtick(h,i);l.tick0=Vae.tick0(f,i,r.calendar,b)}else if(i!=="multicategory"){var p=n(u+"tickvals");p===void 0?l.tickmode="auto":o||n("ticktext")}}});var M3=ye((Snr,jae)=>{"use strict";var kq=Dr(),Hae=Rd();jae.exports=function(t,r,n,i){var a=i.isMinor,o=a?t.minor||{}:t,s=a?r.minor:r,l=a?Hae.minor:Hae,u=a?"minor.":"",c=kq.coerce2(o,s,l,"ticklen",a?(r.ticklen||5)*.6:void 0),f=kq.coerce2(o,s,l,"tickwidth",a?r.tickwidth||1:void 0),h=kq.coerce2(o,s,l,"tickcolor",(a?r.tickcolor:void 0)||s.color),d=n(u+"ticks",!a&&i.outerTicks||c||f||h?"outside":"");d||(delete s.ticklen,delete s.tickwidth,delete s.tickcolor)}});var Cq=ye((Mnr,Wae)=>{"use strict";Wae.exports=function(t){var r=["showexponent","showtickprefix","showticksuffix"],n=r.filter(function(a){return t[a]!==void 0}),i=function(a){return t[a]===t[n[0]]};if(n.every(i)||n.length===1)return t[n[0]]}});var Yd=ye((Enr,Xae)=>{"use strict";var iL=Dr(),aot=vl();Xae.exports=function(t,r,n){var i=n.name,a=n.inclusionAttr||"visible",o=r[i],s=iL.isArrayOrTypedArray(t[i])?t[i]:[],l=r[i]=[],u=aot.arrayTemplater(r,i,a),c,f;for(c=0;c{"use strict";var Lq=Dr(),oot=ka().contrast,Zae=Rd(),sot=Cq(),lot=Yd();Yae.exports=function(t,r,n,i,a){a||(a={});var o=n("labelalias");Lq.isPlainObject(o)||delete r.labelalias;var s=sot(t),l=n("showticklabels");if(l){a.noTicklabelshift||n("ticklabelshift"),a.noTicklabelstandoff||n("ticklabelstandoff");var u=a.font||{},c=r.color,f=r.ticklabelposition||"",h=f.indexOf("inside")!==-1?oot(a.bgColor):c&&c!==Zae.color.dflt?c:u.color;if(Lq.coerceFont(n,"tickfont",u,{overrideDflt:{color:h}}),!a.noTicklabelstep&&i!=="multicategory"&&i!=="log"&&n("ticklabelstep"),!a.noAng){var d=n("tickangle");!a.noAutotickangles&&d==="auto"&&n("autotickangles")}if(i!=="category"){var v=n("tickformat");lot(t,r,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:uot}),r.tickformatstops.length||delete r.tickformatstops,!a.noExp&&!v&&i!=="date"&&(n("showexponent",s),n("exponentformat"),n("minexponent"),n("separatethousands"))}!a.noMinorloglabels&&i==="log"&&n("minorloglabels")}};function uot(e,t){function r(i,a){return Lq.coerce(e,t,Zae.tickformatstops,i,a)}var n=r("enabled");n&&(r("dtickrange"),r("value"))}});var t_=ye((Cnr,Kae)=>{"use strict";var cot=Cq();Kae.exports=function(t,r,n,i,a){a||(a={});var o=a.tickSuffixDflt,s=cot(t),l=n("tickprefix");l&&n("showtickprefix",s);var u=n("ticksuffix",o);u&&n("showticksuffix",s)}});var Pq=ye((Lnr,Jae)=>{"use strict";var r_=Dr(),fot=vl(),hot=bb(),dot=M3(),vot=e_(),pot=t_(),got=tL();Jae.exports=function(t,r,n){var i=fot.newContainer(r,"colorbar"),a=t.colorbar||{};function o(T,z){return r_.coerce(a,i,got,T,z)}var s=n.margin||{t:0,b:0,l:0,r:0},l=n.width-s.l-s.r,u=n.height-s.t-s.b,c=o("orientation"),f=c==="v",h=o("thicknessmode");o("thickness",h==="fraction"?30/(f?l:u):30);var d=o("lenmode");o("len",d==="fraction"?1:f?u:l);var v=o("yref"),_=o("xref"),b=v==="paper",p=_==="paper",k,E,S,L="left";f?(S="middle",L=p?"left":"right",k=p?1.02:1,E=.5):(S=b?"bottom":"top",L="center",k=.5,E=b?1.02:1),r_.coerce(a,i,{x:{valType:"number",min:p?-2:0,max:p?3:1,dflt:k}},"x"),r_.coerce(a,i,{y:{valType:"number",min:b?-2:0,max:b?3:1,dflt:E}},"y"),o("xanchor",L),o("xpad"),o("yanchor",S),o("ypad"),r_.noneOrAll(a,i,["x","y"]),o("outlinecolor"),o("outlinewidth"),o("bordercolor"),o("borderwidth"),o("bgcolor");var x=r_.coerce(a,i,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:f?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");o("ticklabeloverflow",x.indexOf("inside")!==-1?"hide past domain":"hide past div"),hot(a,i,o,"linear");var C=n.font,M={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:C};x.indexOf("inside")!==-1&&(M.bgColor="black"),pot(a,i,o,"linear",M),vot(a,i,o,"linear",M),dot(a,i,o,"linear",M),o("title.text",n._dfltTitle.colorbar);var g=i.showticklabels?i.tickfont:C,P=r_.extendFlat({},C,{family:g.family,size:r_.bigFont(g.size)});r_.coerceFont(o,"title.font",P),o("title.side",f?"top":"right")}});var Qh=ye((Pnr,eoe)=>{"use strict";var $ae=Eo(),Rq=Dr(),mot=Aq(),yot=Pq(),Qae=lb().isValid,_ot=qa().traceIs;function Iq(e,t){var r=t.slice(0,t.length-1);return t?Rq.nestedProperty(e,r).get()||{}:e}eoe.exports=function e(t,r,n,i,a){var o=a.prefix,s=a.cLetter,l="_module"in r,u=Iq(t,o),c=Iq(r,o),f=Iq(r._template||{},o)||{},h=function(){return delete t.coloraxis,delete r.coloraxis,e(t,r,n,i,a)};if(l){var d=n._colorAxes||{},v=i(o+"coloraxis");if(v){var _=_ot(r,"contour")&&Rq.nestedProperty(r,"contours.coloring").get()||"heatmap",b=d[v];b?(b[2].push(h),b[0]!==_&&(b[0]=!1,Rq.warn(["Ignoring coloraxis:",v,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[v]=[_,r,[h]];return}}var p=u[s+"min"],k=u[s+"max"],E=$ae(p)&&$ae(k)&&p{"use strict";var toe=Dr(),xot=vl(),roe=Tq(),bot=Qh();ioe.exports=function(t,r){function n(f,h){return toe.coerce(t,r,roe,f,h)}n("colorscale.sequential"),n("colorscale.sequentialminus"),n("colorscale.diverging");var i=r._colorAxes,a,o;function s(f,h){return toe.coerce(a,o,roe.coloraxis,f,h)}for(var l in i){var u=i[l];if(u[0])a=t[l]||{},o=xot.newContainer(r,l,"coloraxis"),o._name=l,bot(a,o,r,s,{prefix:"",cLetter:"c"});else{for(var c=0;c{"use strict";var wot=Dr(),Tot=pv().hasColorscale,Aot=pv().extractOpts;aoe.exports=function(t,r){function n(c,f){var h=c["_"+f];h!==void 0&&(c[f]=h)}function i(c,f){var h=f.container?wot.nestedProperty(c,f.container).get():c;if(h)if(h.coloraxis)h._colorAx=r[h.coloraxis];else{var d=Aot(h),v=d.auto;(v||d.min===void 0)&&n(h,f.min),(v||d.max===void 0)&&n(h,f.max),d.autocolorscale&&n(h,"colorscale")}}for(var a=0;a{"use strict";var soe=Eo(),Dq=Dr(),Sot=pv().extractOpts;loe.exports=function(t,r,n){var i=t._fullLayout,a=n.vals,o=n.containerStr,s=o?Dq.nestedProperty(r,o).get():r,l=Sot(s),u=l.auto!==!1,c=l.min,f=l.max,h=l.mid,d=function(){return Dq.aggNums(Math.min,null,a)},v=function(){return Dq.aggNums(Math.max,null,a)};if(c===void 0?c=d():u&&(s._colorAx&&soe(c)?c=Math.min(c,d()):c=d()),f===void 0?f=v():u&&(s._colorAx&&soe(f)?f=Math.max(f,v()):f=v()),u&&h!==void 0&&(f-h>h-c?c=h-(f-h):f-h=0?_=i.colorscale.sequential:_=i.colorscale.sequentialminus,l._sync("colorscale",_)}}});var tc=ye((Fnr,uoe)=>{"use strict";var nL=lb(),E3=pv();uoe.exports={moduleType:"component",name:"colorscale",attributes:Tu(),layoutAttributes:Tq(),supplyLayoutDefaults:noe(),handleDefaults:Qh(),crossTraceDefaults:ooe(),calc:gv(),scales:nL.scales,defaultScale:nL.defaultScale,getScale:nL.get,isValidScale:nL.isValid,hasColorscale:E3.hasColorscale,extractOpts:E3.extractOpts,extractScale:E3.extractScale,flipScale:E3.flipScale,makeColorScaleFunc:E3.makeColorScaleFunc,makeColorScaleFuncFromTrace:E3.makeColorScaleFuncFromTrace}});var Ru=ye((znr,foe)=>{"use strict";var coe=Dr(),Mot=vv().isTypedArraySpec;foe.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var t=e.marker;return coe.isPlainObject(t)&&(coe.isArrayOrTypedArray(t.size)||Mot(t.size))}}});var k3=ye((Onr,hoe)=>{"use strict";var Eot=Eo();hoe.exports=function(t,r){r||(r=2);var n=t.marker,i=n.sizeref||1,a=n.sizemin||0,o=n.sizemode==="area"?function(s){return Math.sqrt(s/i)}:function(s){return s/i};return function(s){var l=o(s/r);return Eot(l)&&l>0?Math.max(l,a):0}}});var ip=ye(mv=>{"use strict";var aL=Dr();mv.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};mv.isTraceInSubplots=function(e,t){if(e.type==="splom"){for(var r=e.xaxes||[],n=e.yaxes||[],i=0;i=0&&r.index{poe.exports=Iot;var Fq={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},Pot=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function Iot(e){var t=[];return e.replace(Pot,function(r,n,i){var a=n.toLowerCase();for(i=Dot(i),a=="m"&&i.length>2&&(t.push([n].concat(i.splice(0,2))),a="l",n=n=="m"?"l":"L");;){if(i.length==Fq[a])return i.unshift(n),t.push(i);if(i.length{"use strict";var Fot=eM(),ca=function(e,t){return t?Math.round(e*(t=Math.pow(10,t)))/t:Math.round(e)},hs="M0,0Z",goe=Math.sqrt(2),i_=Math.sqrt(3),zq=Math.PI,Oq=Math.cos,qq=Math.sin;boe.exports={circle:{n:0,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i="M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z";return r?vs(t,r,i):i}},square:{n:1,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")}},diamond:{n:2,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.3,2);return vs(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"Z")}},cross:{n:3,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.4,2),i=ca(e*1.2,2);return vs(t,r,"M"+i+","+n+"H"+n+"V"+i+"H-"+n+"V"+n+"H-"+i+"V-"+n+"H-"+n+"V-"+i+"H"+n+"V-"+n+"H"+i+"Z")}},x:{n:4,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.8/goe,2),i="l"+n+","+n,a="l"+n+",-"+n,o="l-"+n+",-"+n,s="l-"+n+","+n;return vs(t,r,"M0,"+n+i+a+o+a+o+s+o+s+i+s+i+"Z")}},"triangle-up":{n:5,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2/i_,2),i=ca(e/2,2),a=ca(e,2);return vs(t,r,"M-"+n+","+i+"H"+n+"L0,-"+a+"Z")}},"triangle-down":{n:6,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2/i_,2),i=ca(e/2,2),a=ca(e,2);return vs(t,r,"M-"+n+",-"+i+"H"+n+"L0,"+a+"Z")}},"triangle-left":{n:7,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2/i_,2),i=ca(e/2,2),a=ca(e,2);return vs(t,r,"M"+i+",-"+n+"V"+n+"L-"+a+",0Z")}},"triangle-right":{n:8,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2/i_,2),i=ca(e/2,2),a=ca(e,2);return vs(t,r,"M-"+i+",-"+n+"V"+n+"L"+a+",0Z")}},"triangle-ne":{n:9,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.6,2),i=ca(e*1.2,2);return vs(t,r,"M-"+i+",-"+n+"H"+n+"V"+i+"Z")}},"triangle-se":{n:10,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.6,2),i=ca(e*1.2,2);return vs(t,r,"M"+n+",-"+i+"V"+n+"H-"+i+"Z")}},"triangle-sw":{n:11,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.6,2),i=ca(e*1.2,2);return vs(t,r,"M"+i+","+n+"H-"+n+"V-"+i+"Z")}},"triangle-nw":{n:12,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.6,2),i=ca(e*1.2,2);return vs(t,r,"M-"+n+","+i+"V-"+n+"H"+i+"Z")}},pentagon:{n:13,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.951,2),i=ca(e*.588,2),a=ca(-e,2),o=ca(e*-.309,2),s=ca(e*.809,2);return vs(t,r,"M"+n+","+o+"L"+i+","+s+"H-"+i+"L-"+n+","+o+"L0,"+a+"Z")}},hexagon:{n:14,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e/2,2),a=ca(e*i_/2,2);return vs(t,r,"M"+a+",-"+i+"V"+i+"L0,"+n+"L-"+a+","+i+"V-"+i+"L0,-"+n+"Z")}},hexagon2:{n:15,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e/2,2),a=ca(e*i_/2,2);return vs(t,r,"M-"+i+","+a+"H"+i+"L"+n+",0L"+i+",-"+a+"H-"+i+"L-"+n+",0Z")}},octagon:{n:16,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.924,2),i=ca(e*.383,2);return vs(t,r,"M-"+i+",-"+n+"H"+i+"L"+n+",-"+i+"V"+i+"L"+i+","+n+"H-"+i+"L-"+n+","+i+"V-"+i+"Z")}},star:{n:17,f:function(e,t,r){if(ds(t))return hs;var n=e*1.4,i=ca(n*.225,2),a=ca(n*.951,2),o=ca(n*.363,2),s=ca(n*.588,2),l=ca(-n,2),u=ca(n*-.309,2),c=ca(n*.118,2),f=ca(n*.809,2),h=ca(n*.382,2);return vs(t,r,"M"+i+","+u+"H"+a+"L"+o+","+c+"L"+s+","+f+"L0,"+h+"L-"+s+","+f+"L-"+o+","+c+"L-"+a+","+u+"H-"+i+"L0,"+l+"Z")}},hexagram:{n:18,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.66,2),i=ca(e*.38,2),a=ca(e*.76,2);return vs(t,r,"M-"+a+",0l-"+i+",-"+n+"h"+a+"l"+i+",-"+n+"l"+i+","+n+"h"+a+"l-"+i+","+n+"l"+i+","+n+"h-"+a+"l-"+i+","+n+"l-"+i+",-"+n+"h-"+a+"Z")}},"star-triangle-up":{n:19,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*i_*.8,2),i=ca(e*.8,2),a=ca(e*1.6,2),o=ca(e*4,2),s="A "+o+","+o+" 0 0 1 ";return vs(t,r,"M-"+n+","+i+s+n+","+i+s+"0,-"+a+s+"-"+n+","+i+"Z")}},"star-triangle-down":{n:20,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*i_*.8,2),i=ca(e*.8,2),a=ca(e*1.6,2),o=ca(e*4,2),s="A "+o+","+o+" 0 0 1 ";return vs(t,r,"M"+n+",-"+i+s+"-"+n+",-"+i+s+"0,"+a+s+n+",-"+i+"Z")}},"star-square":{n:21,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.1,2),i=ca(e*2,2),a="A "+i+","+i+" 0 0 1 ";return vs(t,r,"M-"+n+",-"+n+a+"-"+n+","+n+a+n+","+n+a+n+",-"+n+a+"-"+n+",-"+n+"Z")}},"star-diamond":{n:22,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2),i=ca(e*1.9,2),a="A "+i+","+i+" 0 0 1 ";return vs(t,r,"M-"+n+",0"+a+"0,"+n+a+n+",0"+a+"0,-"+n+a+"-"+n+",0Z")}},"diamond-tall":{n:23,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*.7,2),i=ca(e*1.4,2);return vs(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},"diamond-wide":{n:24,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2),i=ca(e*.7,2);return vs(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},hourglass:{n:25,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"H-"+n+"L"+n+",-"+n+"H-"+n+"Z")},noDot:!0},bowtie:{n:26,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"V-"+n+"L-"+n+","+n+"V-"+n+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e/goe,2);return vs(t,r,"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.3,2);return vs(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM0,-"+n+"V"+n+"M-"+n+",0H"+n)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.3,2),i=ca(e*.65,2);return vs(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM-"+i+",-"+i+"L"+i+","+i+"M-"+i+","+i+"L"+i+",-"+i)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2);return vs(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*.85,2);return vs(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,t,r){if(ds(t))return hs;var n=ca(e/2,2),i=ca(e,2);return vs(t,r,"M"+n+","+i+"V-"+i+"M"+(n-i)+",-"+i+"V"+i+"M"+i+","+n+"H-"+i+"M-"+i+","+(n-i)+"H"+i)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return vs(t,r,"M-"+n+","+a+"L0,0M"+n+","+a+"L0,0M0,-"+i+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return vs(t,r,"M-"+n+",-"+a+"L0,0M"+n+",-"+a+"L0,0M0,"+i+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return vs(t,r,"M"+a+","+n+"L0,0M"+a+",-"+n+"L0,0M-"+i+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.2,2),i=ca(e*1.6,2),a=ca(e*.8,2);return vs(t,r,"M-"+a+","+n+"L0,0M-"+a+",-"+n+"L0,0M"+i+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2);return vs(t,r,"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*1.4,2);return vs(t,r,"M0,"+n+"V-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2);return vs(t,r,"M"+n+","+n+"L-"+n+",-"+n)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e*2,2);return vs(t,r,"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e*2,2);return vs(t,r,"M0,0L-"+n+",-"+i+"H"+n+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2,2),i=ca(e,2);return vs(t,r,"M0,0L"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2,2),i=ca(e,2);return vs(t,r,"M0,0L-"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e*2,2);return vs(t,r,"M-"+n+",0H"+n+"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,t,r){if(ds(t))return hs;var n=ca(e,2),i=ca(e*2,2);return vs(t,r,"M-"+n+",0H"+n+"M0,0L-"+n+",-"+i+"H"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2,2),i=ca(e,2);return vs(t,r,"M0,-"+i+"V"+i+"M0,0L"+n+",-"+i+"V"+i+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,t,r){if(ds(t))return hs;var n=ca(e*2,2),i=ca(e,2);return vs(t,r,"M0,-"+i+"V"+i+"M0,0L-"+n+",-"+i+"V"+i+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,t,r){if(ds(t))return hs;var n=zq/2.5,i=2*e*Oq(n),a=2*e*qq(n);return vs(t,r,"M0,0L"+-i+","+a+"L"+i+","+a+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,t,r){if(ds(t))return hs;var n=zq/4,i=2*e*Oq(n),a=2*e*qq(n);return vs(t,r,"M0,0L"+-i+","+a+"A "+2*e+","+2*e+" 0 0 1 "+i+","+a+"Z")},backoff:.4,noDot:!0}};function ds(e){return e===null}var moe,yoe,_oe,xoe;function vs(e,t,r){if((!e||e%360===0)&&!t)return r;if(_oe===e&&xoe===t&&moe===r)return yoe;_oe=e,xoe=t,moe=r;function n(b,p){var k=Oq(b),E=qq(b),S=p[0],L=p[1]+(t||0);return[S*k-L*E,S*E+L*k]}for(var i=e/180*zq,a=0,o=0,s=Fot(r),l="",u=0;u{"use strict";var dd=Oa(),Du=Dr(),zot=Du.numberFormat,Sb=Eo(),Hq=cd(),sL=qa(),Kd=ka(),Oot=tc(),rM=Du.strTranslate,lL=ru(),qot=Wp(),Bot=$h(),Not=Bot.LINE_SPACING,Ioe=N1().DESELECTDIM,Uot=Ru(),Vot=k3(),Got=ip().appendArrayPointValue,Aa=Voe.exports={};Aa.font=function(e,t){var r=t.variant,n=t.style,i=t.weight,a=t.color,o=t.size,s=t.family,l=t.shadow,u=t.lineposition,c=t.textcase;s&&e.style("font-family",s),o+1&&e.style("font-size",o+"px"),a&&e.call(Kd.fill,a),i&&e.style("font-weight",i),n&&e.style("font-style",n),r&&e.style("font-variant",r),c&&e.style("text-transform",Bq(jot(c))),l&&e.style("text-shadow",l==="auto"?lL.makeTextShadow(Kd.contrast(a)):Bq(l)),u&&e.style("text-decoration-line",Bq(Wot(u)))};function Bq(e){return e==="none"?void 0:e}var Hot={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function jot(e){return Hot[e]}function Wot(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}Aa.setPosition=function(e,t,r){e.attr("x",t).attr("y",r)};Aa.setSize=function(e,t,r){e.attr("width",t).attr("height",r)};Aa.setRect=function(e,t,r,n,i){e.call(Aa.setPosition,t,r).call(Aa.setSize,n,i)};Aa.translatePoint=function(e,t,r,n){var i=r.c2p(e.x),a=n.c2p(e.y);if(Sb(i)&&Sb(a)&&t.node())t.node().nodeName==="text"?t.attr("x",i).attr("y",a):t.attr("transform",rM(i,a));else return!1;return!0};Aa.translatePoints=function(e,t,r){e.each(function(n){var i=dd.select(this);Aa.translatePoint(n,i,t,r)})};Aa.hideOutsideRangePoint=function(e,t,r,n,i,a){t.attr("display",r.isPtWithinRange(e,i)&&n.isPtWithinRange(e,a)?null:"none")};Aa.hideOutsideRangePoints=function(e,t){if(t._hasClipOnAxisFalse){var r=t.xaxis,n=t.yaxis;e.each(function(i){var a=i[0].trace,o=a.xcalendar,s=a.ycalendar,l=sL.traceIs(a,"bar-like")?".bartext":".point,.textpoint";e.selectAll(l).each(function(u){Aa.hideOutsideRangePoint(u,dd.select(this),r,n,o,s)})})}};Aa.crispRound=function(e,t,r){return!t||!Sb(t)?r||0:e._context.staticPlot?t:t<1?1:Math.round(t)};Aa.singleLineStyle=function(e,t,r,n,i){t.style("fill","none");var a=(((e||[])[0]||{}).trace||{}).line||{},o=r||a.width||0,s=i||a.dash||"";Kd.stroke(t,n||a.color),Aa.dashLine(t,s,o)};Aa.lineGroupStyle=function(e,t,r,n){e.style("fill","none").each(function(i){var a=(((i||[])[0]||{}).trace||{}).line||{},o=t||a.width||0,s=n||a.dash||"";dd.select(this).call(Kd.stroke,r||a.color).call(Aa.dashLine,s,o)})};Aa.dashLine=function(e,t,r){r=+r||0,t=Aa.dashStyle(t,r),e.style({"stroke-dasharray":t,"stroke-width":r+"px"})};Aa.dashStyle=function(e,t){t=+t||1;var r=Math.max(t,3);return e==="solid"?e="":e==="dot"?e=r+"px,"+r+"px":e==="dash"?e=3*r+"px,"+3*r+"px":e==="longdash"?e=5*r+"px,"+5*r+"px":e==="dashdot"?e=3*r+"px,"+r+"px,"+r+"px,"+r+"px":e==="longdashdot"&&(e=5*r+"px,"+2*r+"px,"+r+"px,"+2*r+"px"),e};function Roe(e,t,r,n){var i=t.fillpattern,a=t.fillgradient,o=Aa.getPatternAttr,s=i&&(o(i.shape,0,"")||o(i.path,0,""));if(s){var l=o(i.bgcolor,0,null),u=o(i.fgcolor,0,null),c=i.fgopacity,f=o(i.size,0,8),h=o(i.solidity,0,.3),d=t.uid;Aa.pattern(e,"point",r,d,s,f,h,void 0,i.fillmode,l,u,c)}else if(a&&a.type!=="none"){var v=a.type,_="scatterfill-"+t.uid;if(n&&(_="legendfill-"+t.uid),!n&&(a.start!==void 0||a.stop!==void 0)){var b,p;v==="horizontal"?(b={x:a.start,y:0},p={x:a.stop,y:0}):v==="vertical"&&(b={x:0,y:a.start},p={x:0,y:a.stop}),b.x=t._xA.c2p(b.x===void 0?t._extremes.x.min[0].val:b.x,!0),b.y=t._yA.c2p(b.y===void 0?t._extremes.y.min[0].val:b.y,!0),p.x=t._xA.c2p(p.x===void 0?t._extremes.x.max[0].val:p.x,!0),p.y=t._yA.c2p(p.y===void 0?t._extremes.y.max[0].val:p.y,!0),e.call(zoe,r,_,"linear",a.colorscale,"fill",b,p,!0,!1)}else v==="horizontal"&&(v=v+"reversed"),e.call(Aa.gradient,r,_,v,a.colorscale,"fill")}else t.fillcolor&&e.call(Kd.fill,t.fillcolor)}Aa.singleFillStyle=function(e,t){var r=dd.select(e.node()),n=r.data(),i=((n[0]||[])[0]||{}).trace||{};Roe(e,i,t,!1)};Aa.fillGroupStyle=function(e,t,r){e.style("stroke-width",0).each(function(n){var i=dd.select(this);n[0].trace&&Roe(i,n[0].trace,t,r)})};var Toe=woe();Aa.symbolNames=[];Aa.symbolFuncs=[];Aa.symbolBackOffs=[];Aa.symbolNeedLines={};Aa.symbolNoDot={};Aa.symbolNoFill={};Aa.symbolList=[];Object.keys(Toe).forEach(function(e){var t=Toe[e],r=t.n;Aa.symbolList.push(r,String(r),e,r+100,String(r+100),e+"-open"),Aa.symbolNames[r]=e,Aa.symbolFuncs[r]=t.f,Aa.symbolBackOffs[r]=t.backoff||0,t.needLine&&(Aa.symbolNeedLines[r]=!0),t.noDot?Aa.symbolNoDot[r]=!0:Aa.symbolList.push(r+200,String(r+200),e+"-dot",r+300,String(r+300),e+"-open-dot"),t.noFill&&(Aa.symbolNoFill[r]=!0)});var Xot=Aa.symbolNames.length,Zot="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";Aa.symbolNumber=function(e){if(Sb(e))e=+e;else if(typeof e=="string"){var t=0;e.indexOf("-open")>0&&(t=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(t+=200,e=e.replace("-dot","")),e=Aa.symbolNames.indexOf(e),e>=0&&(e+=t)}return e%100>=Xot||e>=400?0:Math.floor(Math.max(e,0))};function Doe(e,t,r,n){var i=e%100;return Aa.symbolFuncs[i](t,r,n)+(e>=200?Zot:"")}var Aoe=zot("~f"),Foe={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};Aa.gradient=function(e,t,r,n,i,a){var o=Foe[n];return zoe(e,t,r,o.type,i,a,o.start,o.stop,!1,o.reversed)};function zoe(e,t,r,n,i,a,o,s,l,u){var c=i.length,f;n==="linear"?f={node:"linearGradient",attrs:{x1:o.x,y1:o.y,x2:s.x,y2:s.y,gradientUnits:l?"userSpaceOnUse":"objectBoundingBox"},reversed:u}:n==="radial"&&(f={node:"radialGradient",reversed:u});for(var h=new Array(c),d=0;d=0&&e.i===void 0&&(e.i=a.i),t.style("opacity",n.selectedOpacityFn?n.selectedOpacityFn(e):e.mo===void 0?o.opacity:e.mo),n.ms2mrc){var l;e.ms==="various"||o.size==="various"?l=3:l=n.ms2mrc(e.ms),e.mrc=l,n.selectedSizeFn&&(l=e.mrc=n.selectedSizeFn(e));var u=Aa.symbolNumber(e.mx||o.symbol)||0;e.om=u%200>=100;var c=Xq(e,r),f=Wq(e,r);t.attr("d",Doe(u,l,c,f))}var h=!1,d,v,_;if(e.so)_=s.outlierwidth,v=s.outliercolor,d=o.outliercolor;else{var b=(s||{}).width;_=(e.mlw+1||b+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?v=e.mlcc=n.lineScale(e.mlc):Du.isArrayOrTypedArray(s.color)?v=Kd.defaultLine:v=s.color,Du.isArrayOrTypedArray(o.color)&&(d=Kd.defaultLine,h=!0),"mc"in e?d=e.mcc=n.markerScale(e.mc):d=o.color||o.colors||"rgba(0,0,0,0)",n.selectedColorFn&&(d=n.selectedColorFn(e))}if(e.om)t.call(Kd.stroke,d).style({"stroke-width":(_||1)+"px",fill:"none"});else{t.style("stroke-width",(e.isBlank?0:_)+"px");var p=o.gradient,k=e.mgt;k?h=!0:k=p&&p.type,Du.isArrayOrTypedArray(k)&&(k=k[0],Foe[k]||(k=0));var E=o.pattern,S=Aa.getPatternAttr,L=E&&(S(E.shape,e.i,"")||S(E.path,e.i,""));if(k&&k!=="none"){var x=e.mgc;x?h=!0:x=p.color;var C=r.uid;h&&(C+="-"+e.i),Aa.gradient(t,i,C,k,[[0,x],[1,d]],"fill")}else if(L){var M=!1,g=E.fgcolor;!g&&a&&a.color&&(g=a.color,M=!0);var P=S(g,e.i,a&&a.color||null),T=S(E.bgcolor,e.i,null),z=E.fgopacity,O=S(E.size,e.i,8),V=S(E.solidity,e.i,.3);M=M||e.mcc||Du.isArrayOrTypedArray(E.shape)||Du.isArrayOrTypedArray(E.path)||Du.isArrayOrTypedArray(E.bgcolor)||Du.isArrayOrTypedArray(E.fgcolor)||Du.isArrayOrTypedArray(E.size)||Du.isArrayOrTypedArray(E.solidity);var G=r.uid;M&&(G+="-"+e.i),Aa.pattern(t,"point",i,G,L,O,V,e.mcc,E.fillmode,T,P,z)}else Du.isArrayOrTypedArray(d)?Kd.fill(t,d[e.i]):Kd.fill(t,d);_&&Kd.stroke(t,v)}};Aa.makePointStyleFns=function(e){var t={},r=e.marker;return t.markerScale=Aa.tryColorscale(r,""),t.lineScale=Aa.tryColorscale(r,"line"),sL.traceIs(e,"symbols")&&(t.ms2mrc=Uot.isBubble(e)?Vot(e):function(){return(r.size||6)/2}),e.selectedpoints&&Du.extendFlat(t,Aa.makeSelectedPointStyleFns(e)),t};Aa.makeSelectedPointStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.marker||{},a=r.marker||{},o=n.marker||{},s=i.opacity,l=a.opacity,u=o.opacity,c=l!==void 0,f=u!==void 0;(Du.isArrayOrTypedArray(s)||c||f)&&(t.selectedOpacityFn=function(S){var L=S.mo===void 0?i.opacity:S.mo;return S.selected?c?l:L:f?u:Ioe*L});var h=i.color,d=a.color,v=o.color;(d||v)&&(t.selectedColorFn=function(S){var L=S.mcc||h;return S.selected?d||L:v||L});var _=i.size,b=a.size,p=o.size,k=b!==void 0,E=p!==void 0;return sL.traceIs(e,"symbols")&&(k||E)&&(t.selectedSizeFn=function(S){var L=S.mrc||_/2;return S.selected?k?b/2:L:E?p/2:L}),t};Aa.makeSelectedTextStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.textfont||{},a=r.textfont||{},o=n.textfont||{},s=i.color,l=a.color,u=o.color;return t.selectedTextColorFn=function(c){var f=c.tc||s;return c.selected?l||f:u||(l?f:Kd.addOpacity(f,Ioe))},t};Aa.selectedPointStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=Aa.makeSelectedPointStyleFns(t),n=t.marker||{},i=[];r.selectedOpacityFn&&i.push(function(a,o){a.style("opacity",r.selectedOpacityFn(o))}),r.selectedColorFn&&i.push(function(a,o){Kd.fill(a,r.selectedColorFn(o))}),r.selectedSizeFn&&i.push(function(a,o){var s=o.mx||n.symbol||0,l=r.selectedSizeFn(o);a.attr("d",Doe(Aa.symbolNumber(s),l,Xq(o,t),Wq(o,t))),o.mrc2=l}),i.length&&e.each(function(a){for(var o=dd.select(this),s=0;s0?r:0}Aa.textPointStyle=function(e,t,r){if(e.size()){var n;if(t.selectedpoints){var i=Aa.makeSelectedTextStyleFns(t);n=i.selectedTextColorFn}var a=t.texttemplate,o=r._fullLayout;e.each(function(s){var l=dd.select(this),u=a?Du.extractOption(s,t,"txt","texttemplate"):Du.extractOption(s,t,"tx","text");if(!u&&u!==0){l.remove();return}if(a){var c=t._module.formatLabels,f=c?c(s,t,o):{},h={};Got(h,t,s.i),u=Du.texttemplateString({data:[h,s,t._meta],fallback:t.texttemplatefallback,labels:f,locale:o._d3locale,template:u})}var d=s.tp||t.textposition,v=qoe(s,t),_=n?n(s):s.tc||t.textfont.color;l.call(Aa.font,{family:s.tf||t.textfont.family,weight:s.tw||t.textfont.weight,style:s.ty||t.textfont.style,variant:s.tv||t.textfont.variant,textcase:s.tC||t.textfont.textcase,lineposition:s.tE||t.textfont.lineposition,shadow:s.tS||t.textfont.shadow,size:v,color:_}).text(u).call(lL.convertToTspans,r).call(Ooe,d,v,s.mrc)})}};Aa.selectedTextStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=Aa.makeSelectedTextStyleFns(t);e.each(function(n){var i=dd.select(this),a=r.selectedTextColorFn(n),o=n.tp||t.textposition,s=qoe(n,t);Kd.fill(i,a);var l=sL.traceIs(t,"bar-like");Ooe(i,o,s,n.mrc2||n.mrc,l)})}};var Soe=.5;Aa.smoothopen=function(e,t){if(e.length<3)return"M"+e.join("L");var r="M"+e[0],n=[],i;for(i=1;i=l||S>=c&&S<=l)&&(L<=f&&L>=u||L>=f&&L<=u)&&(e=[S,L])}return e}Aa.applyBackoff=Uoe;Aa.makeTester=function(){var e=Du.ensureSingleById(dd.select("body"),"svg","js-plotly-tester",function(r){r.attr(qot.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),t=Du.ensureSingle(e,"path","js-reference-point",function(r){r.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});Aa.tester=e,Aa.testref=t};Aa.savedBBoxes={};var Uq=0,Jot=1e4;Aa.bBox=function(e,t,r){r||(r=Moe(e));var n;if(r){if(n=Aa.savedBBoxes[r],n)return Du.extendFlat({},n)}else if(e.childNodes.length===1){var i=e.childNodes[0];if(r=Moe(i),r){var a=+i.getAttribute("x")||0,o=+i.getAttribute("y")||0,s=i.getAttribute("transform");if(!s){var l=Aa.bBox(i,!1,r);return a&&(l.left+=a,l.right+=a),o&&(l.top+=o,l.bottom+=o),l}if(r+="~"+a+"~"+o+"~"+s,n=Aa.savedBBoxes[r],n)return Du.extendFlat({},n)}}var u,c;t?u=e:(c=Aa.tester.node(),u=e.cloneNode(!0),c.appendChild(u)),dd.select(u).attr("transform",null).call(lL.positionText,0,0);var f=u.getBoundingClientRect(),h=Aa.testref.node().getBoundingClientRect();t||c.removeChild(u);var d={height:f.height,width:f.width,left:f.left-h.left,top:f.top-h.top,right:f.right-h.left,bottom:f.bottom-h.top};return Uq>=Jot&&(Aa.savedBBoxes={},Uq=0),r&&(Aa.savedBBoxes[r]=d),Uq++,Du.extendFlat({},d)};function Moe(e){var t=e.getAttribute("data-unformatted");if(t!==null)return t+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}Aa.setClipUrl=function(e,t,r){e.attr("clip-path",jq(t,r))};function jq(e,t){if(!e)return null;var r=t._context,n=r._exportedPlot?"":r._baseUrl||"";return n?"url('"+n+"#"+e+"')":"url(#"+e+")"}Aa.getTranslate=function(e){var t=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",n=e[r]("transform")||"",i=n.replace(t,function(a,o,s){return[o,s].join(" ")}).split(" ");return{x:+i[0]||0,y:+i[1]||0}};Aa.setTranslate=function(e,t,r){var n=/(\btranslate\(.*?\);?)/,i=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",o=e[i]("transform")||"";return t=t||0,r=r||0,o=o.replace(n,"").trim(),o+=rM(t,r),o=o.trim(),e[a]("transform",o),o};Aa.getScale=function(e){var t=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",n=e[r]("transform")||"",i=n.replace(t,function(a,o,s){return[o,s].join(" ")}).split(" ");return{x:+i[0]||1,y:+i[1]||1}};Aa.setScale=function(e,t,r){var n=/(\bscale\(.*?\);?)/,i=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",o=e[i]("transform")||"";return t=t||1,r=r||1,o=o.replace(n,"").trim(),o+="scale("+t+","+r+")",o=o.trim(),e[a]("transform",o),o};var $ot=/\s*sc.*/;Aa.setPointGroupScale=function(e,t,r){if(t=t||1,r=r||1,!!e){var n=t===1&&r===1?"":"scale("+t+","+r+")";e.each(function(){var i=(this.getAttribute("transform")||"").replace($ot,"");i+=n,i=i.trim(),this.setAttribute("transform",i)})}};var Qot=/translate\([^)]*\)\s*$/;Aa.setTextPointsScale=function(e,t,r){e&&e.each(function(){var n,i=dd.select(this),a=i.select("text");if(a.node()){var o=parseFloat(a.attr("x")||0),s=parseFloat(a.attr("y")||0),l=(i.attr("transform")||"").match(Qot);t===1&&r===1?n=[]:n=[rM(o,s),"scale("+t+","+r+")",rM(-o,-s)],l&&n.push(l),i.attr("transform",n.join(""))}})};function Wq(e,t){var r;return e&&(r=e.mf),r===void 0&&(r=t.marker&&t.marker.standoff||0),!t._geo&&!t._xA?-r:r}Aa.getMarkerStandoff=Wq;var tM=Math.atan2,wb=Math.cos,L3=Math.sin;function Eoe(e,t){var r=t[0],n=t[1];return[r*wb(e)-n*L3(e),r*L3(e)+n*wb(e)]}var koe,Coe,Loe,Poe,Vq,Gq;function Xq(e,t){var r=e.ma;r===void 0&&(r=t.marker.angle,(!r||Du.isArrayOrTypedArray(r))&&(r=0));var n,i,a=t.marker.angleref;if(a==="previous"||a==="north"){if(t._geo){var o=t._geo.project(e.lonlat);n=o[0],i=o[1]}else{var s=t._xA,l=t._yA;if(s&&l)n=s.c2p(e.x),i=l.c2p(e.y);else return 90}if(t._geo){var u=e.lonlat[0],c=e.lonlat[1],f=t._geo.project([u,c+1e-5]),h=t._geo.project([u+1e-5,c]),d=tM(h[1]-i,h[0]-n),v=tM(f[1]-i,f[0]-n),_;if(a==="north")_=r/180*Math.PI;else if(a==="previous"){var b=u/180*Math.PI,p=c/180*Math.PI,k=koe/180*Math.PI,E=Coe/180*Math.PI,S=k-b,L=wb(E)*L3(S),x=L3(E)*wb(p)-wb(E)*L3(p)*wb(S);_=-tM(L,x)-Math.PI,koe=u,Coe=c}var C=Eoe(d,[wb(_),0]),M=Eoe(v,[L3(_),0]);r=tM(C[1]+M[1],C[0]+M[0])/Math.PI*180,a==="previous"&&!(Gq===t.uid&&e.i===Vq+1)&&(r=null)}if(a==="previous"&&!t._geo)if(Gq===t.uid&&e.i===Vq+1&&Sb(n)&&Sb(i)){var g=n-Loe,P=i-Poe,T=t.line&&t.line.shape||"",z=T.slice(T.length-1);z==="h"&&(P=0),z==="v"&&(g=0),r+=tM(P,g)/Math.PI*180+90}else r=null}return Loe=n,Poe=i,Vq=e.i,Gq=t.uid,r}Aa.getMarkerAngle=Xq});var Eb=ye((Vnr,Woe)=>{"use strict";var P3=Oa(),est=Eo(),tst=Mc(),Zq=qa(),Mb=Dr(),Goe=Mb.strTranslate,uL=So(),cL=ka(),I3=ru(),Hoe=N1(),rst=$h().OPPOSITE_SIDE,joe=/ [XY][0-9]* /,Yq=1.6,Kq=1.6;function ist(e,t,r){var n=e._fullLayout,i=r.propContainer,a=r.propName,o=r.placeholder,s=r.traceIndex,l=r.avoid||{},u=r.attributes,c=r.transform,f=r.containerGroup,h=1,d=i.title,v=(d&&d.text?d.text:"").trim(),_=!1,b=d&&d.font?d.font:{},p=b.family,k=b.size,E=b.color,S=b.weight,L=b.style,x=b.variant,C=b.textcase,M=b.lineposition,g=b.shadow,P=r.subtitlePropName,T=!!P,z=r.subtitlePlaceholder,O=(i.title||{}).subtitle||{text:"",font:{}},V=(O.text||"").trim(),G=!1,Z=1,j=O.font,N=j.family,H=j.size,te=j.color,oe=j.weight,_e=j.style,Ee=j.variant,Ce=j.textcase,me=j.lineposition,ie=j.shadow,Se;a==="title.text"?Se="titleText":a.indexOf("axis")!==-1?Se="axisTitleText":a.indexOf("colorbar")!==-1&&(Se="colorbarTitleText");var Le=e._context.edits[Se];function Ae(Nt,Jt){return Nt===void 0||Jt===void 0?!1:Nt.replace(joe," % ")===Jt.replace(joe," % ")}v===""?h=0:Ae(v,o)&&(Le||(v=""),h=.2,_=!0),T&&(V===""?Z=0:Ae(V,z)&&(Le||(V=""),Z=.2,G=!0)),r._meta?v=Mb.templateString(v,r._meta):n._meta&&(v=Mb.templateString(v,n._meta));var Fe=v||V||Le,Pe;f||(f=Mb.ensureSingle(n._infolayer,"g","g-"+t),Pe=n._hColorbarMoveTitle);var ge=f.selectAll("text."+t).data(Fe?[0]:[]);ge.enter().append("text"),ge.text(v).attr("class",t),ge.exit().remove();var Re=null,ce=t+"-subtitle",Ze=V||Le;if(T&&(Re=f.selectAll("text."+ce).data(Ze?[0]:[]),Re.enter().append("text"),Re.text(V).attr("class",ce),Re.exit().remove()),!Fe)return f;function ut(Nt,Jt){Mb.syncOrAsync([pt,Zt],{title:Nt,subtitle:Jt})}function pt(Nt){var Jt=Nt.title,sr=Nt.subtitle,wr;!c&&Pe&&(c={}),c?(wr="",c.rotate&&(wr+="rotate("+[c.rotate,u.x,u.y]+")"),(c.offset||Pe)&&(wr+=Goe(0,(c.offset||0)-(Pe||0)))):wr=null,Jt.attr("transform",wr);function cr(It){if(It){var mt=P3.select(It.node().parentNode).select("."+ce);if(!mt.empty()){var er=It.node().getBBox();if(er.height){var lr=er.y+er.height+Yq*H;mt.attr("y",lr)}}}}if(Jt.style("opacity",h*cL.opacity(E)).call(uL.font,{color:cL.rgb(E),size:P3.round(k,2),family:p,weight:S,style:L,variant:x,textcase:C,shadow:g,lineposition:M}).attr(u).call(I3.convertToTspans,e,cr),sr&&!sr.empty()){var $e=f.select("."+t+"-math-group"),St=Jt.node().getBBox(),Qt=$e.node()?$e.node().getBBox():void 0,Vt=Qt?Qt.y+Qt.height+Yq*H:St.y+St.height+Kq*H,_t=Mb.extendFlat({},u,{y:Vt});sr.attr("transform",wr),sr.style("opacity",Z*cL.opacity(te)).call(uL.font,{color:cL.rgb(te),size:P3.round(H,2),family:N,weight:oe,style:_e,variant:Ee,textcase:Ce,shadow:ie,lineposition:me}).attr(_t).call(I3.convertToTspans,e)}return tst.previousPromises(e)}function Zt(Nt){var Jt=Nt.title,sr=P3.select(Jt.node().parentNode);if(l&&l.selection&&l.side&&v){sr.attr("transform",null);var wr=rst[l.side],cr=l.side==="left"||l.side==="top"?-1:1,$e=est(l.pad)?l.pad:2,St=uL.bBox(sr.node()),Qt={t:0,b:0,l:0,r:0},Vt=e._fullLayout._reservedMargin;for(var _t in Vt)for(var It in Vt[_t]){var mt=Vt[_t][It];Qt[It]=Math.max(Qt[It],mt)}var er={left:Qt.l,top:Qt.t,right:n.width-Qt.r,bottom:n.height-Qt.b},lr=l.maxShift||cr*(er[l.side]-St[l.side]),Tr=0;if(lr<0)Tr=lr;else{var Lr=l.offsetLeft||0,ti=l.offsetTop||0;St.left-=Lr,St.right-=Lr,St.top-=ti,St.bottom-=ti,l.selection.each(function(){var Vr=uL.bBox(this);Mb.bBoxIntersect(St,Vr,$e)&&(Tr=Math.max(Tr,cr*(Vr[l.side]-St[wr])+$e))}),Tr=Math.min(lr,Tr),i._titleScoot=Math.abs(Tr)}if(Tr>0||lr<0){var Br={left:[-Tr,0],right:[Tr,0],top:[0,-Tr],bottom:[0,Tr]}[l.side];sr.attr("transform",Goe(Br[0],Br[1]))}}}ge.call(ut,Re);function st(Nt,Jt){Nt.text(Jt).on("mouseover.opacity",function(){P3.select(this).transition().duration(Hoe.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){P3.select(this).transition().duration(Hoe.HIDE_PLACEHOLDER).style("opacity",0)})}if(Le&&(v?ge.on(".opacity",null):(st(ge,o),_=!0),ge.call(I3.makeEditable,{gd:e}).on("edit",function(Nt){s!==void 0?Zq.call("_guiRestyle",e,a,Nt,s):Zq.call("_guiRelayout",e,a,Nt)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ut)}).on("input",function(Nt){this.text(Nt||" ").call(I3.positionText,u.x,u.y)}),T)){if(T&&!v){var lt=ge.node().getBBox(),Gt=lt.y+lt.height+Kq*H;Re.attr("y",Gt)}V?Re.on(".opacity",null):(st(Re,z),G=!0),Re.call(I3.makeEditable,{gd:e}).on("edit",function(Nt){Zq.call("_guiRelayout",e,"title.subtitle.text",Nt)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ut)}).on("input",function(Nt){this.text(Nt||" ").call(I3.positionText,Re.attr("x"),Re.attr("y"))})}return ge.classed("js-placeholder",_),Re&&!Re.empty()&&Re.classed("js-placeholder",G),f}Woe.exports={draw:ist,SUBTITLE_PADDING_EM:Kq,SUBTITLE_PADDING_MATHJAX_EM:Yq}});var ym=ye((Gnr,Joe)=>{"use strict";var nst=Oa(),ast=r3().utcFormat,yc=Dr(),ost=yc.numberFormat,gm=Eo(),n_=yc.cleanNumber,sst=yc.ms2DateTime,Xoe=yc.dateTime2ms,mm=yc.ensureNumber,Zoe=yc.isArrayOrTypedArray,a_=fs(),fL=a_.FP_SAFE,Tg=a_.BADNUM,lst=a_.LOG_CLIP,ust=a_.ONEWEEK,hL=a_.ONEDAY,dL=a_.ONEHOUR,Yoe=a_.ONEMIN,Koe=a_.ONESEC,vL=hf(),mL=hd(),pL=mL.HOUR_PATTERN,gL=mL.WEEKDAY_PATTERN;function iM(e){return Math.pow(10,e)}function Jq(e){return e!=null}Joe.exports=function(t,r){r=r||{};var n=t._id||"x",i=n.charAt(0);function a(S,L){if(S>0)return Math.log(S)/Math.LN10;if(S<=0&&L&&t.range&&t.range.length===2){var x=t.range[0],C=t.range[1];return .5*(x+C-2*lst*Math.abs(x-C))}else return Tg}function o(S,L,x,C){if((C||{}).msUTC&&gm(S))return+S;var M=Xoe(S,x||t.calendar);if(M===Tg)if(gm(S)){S=+S;var g=Math.floor(yc.mod(S+.05,1)*10),P=Math.round(S-g/10);M=Xoe(new Date(P))+g/10}else return Tg;return M}function s(S,L,x){return sst(S,L,x||t.calendar)}function l(S){return t._categories[Math.round(S)]}function u(S){if(Jq(S)){if(t._categoriesMap===void 0&&(t._categoriesMap={}),t._categoriesMap[S]!==void 0)return t._categoriesMap[S];t._categories.push(typeof S=="number"?String(S):S);var L=t._categories.length-1;return t._categoriesMap[S]=L,L}return Tg}function c(S,L){for(var x=new Array(L),C=0;Ct.range[1]&&(x=!x);for(var C=x?-1:1,M=C*S,g=0,P=0;Pz)g=P+1;else{g=M<(T+z)/2?P:P+1;break}}var O=t._B[g]||0;return isFinite(O)?v(S,t._m2,O):0},p=function(S){var L=t._rangebreaks.length;if(!L)return _(S,t._m,t._b);for(var x=0,C=0;Ct._rangebreaks[C].pmax&&(x=C+1);return _(S,t._m2,t._B[x])}}t.c2l=t.type==="log"?a:mm,t.l2c=t.type==="log"?iM:mm,t.l2p=b,t.p2l=p,t.c2p=t.type==="log"?function(S,L){return b(a(S,L))}:b,t.p2c=t.type==="log"?function(S){return iM(p(S))}:p,["linear","-"].indexOf(t.type)!==-1?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=n_,t.c2d=t.c2r=t.l2d=t.l2r=mm,t.d2p=t.r2p=function(S){return t.l2p(n_(S))},t.p2d=t.p2r=p,t.cleanPos=mm):t.type==="log"?(t.d2r=t.d2l=function(S,L){return a(n_(S),L)},t.r2d=t.r2c=function(S){return iM(n_(S))},t.d2c=t.r2l=n_,t.c2d=t.l2r=mm,t.c2r=a,t.l2d=iM,t.d2p=function(S,L){return t.l2p(t.d2r(S,L))},t.p2d=function(S){return iM(p(S))},t.r2p=function(S){return t.l2p(n_(S))},t.p2r=p,t.cleanPos=mm):t.type==="date"?(t.d2r=t.r2d=yc.identity,t.d2c=t.r2c=t.d2l=t.r2l=o,t.c2d=t.c2r=t.l2d=t.l2r=s,t.d2p=t.r2p=function(S,L,x){return t.l2p(o(S,0,x))},t.p2d=t.p2r=function(S,L,x){return s(p(S),L,x)},t.cleanPos=function(S){return yc.cleanDate(S,Tg,t.calendar)}):t.type==="category"?(t.d2c=t.d2l=u,t.r2d=t.c2d=t.l2d=l,t.d2r=t.d2l_noadd=h,t.r2c=function(S){var L=d(S);return L!==void 0?L:t.fraction2r(.5)},t.l2r=t.c2r=mm,t.r2l=d,t.d2p=function(S){return t.l2p(t.r2c(S))},t.p2d=function(S){return l(p(S))},t.r2p=t.d2p,t.p2r=p,t.cleanPos=function(S){return typeof S=="string"&&S!==""?S:mm(S)}):t.type==="multicategory"&&(t.r2d=t.c2d=t.l2d=l,t.d2r=t.d2l_noadd=h,t.r2c=function(S){var L=h(S);return L!==void 0?L:t.fraction2r(.5)},t.r2c_just_indices=f,t.l2r=t.c2r=mm,t.r2l=h,t.d2p=function(S){return t.l2p(t.r2c(S))},t.p2d=function(S){return l(p(S))},t.r2p=t.d2p,t.p2r=p,t.cleanPos=function(S){return Array.isArray(S)||typeof S=="string"&&S!==""?S:mm(S)},t.setupMultiCategory=function(S){var L=t._traceIndices,x,C,M=t._matchGroup;if(M&&t._categories.length===0){for(var g in M)if(g!==n){var P=r[vL.id2name(g)];L=L.concat(P._traceIndices)}}var T=[[0,{}],[0,{}]],z=[];for(x=0;xP[1]&&(C[g?0:1]=x),C[0]===C[1]){var T=t.l2r(L),z=t.l2r(x);if(L!==void 0){var O=T+1;x!==void 0&&(O=Math.min(O,z)),C[g?1:0]=O}if(x!==void 0){var V=z+1;L!==void 0&&(V=Math.max(V,T)),C[g?0:1]=V}}}},t.cleanRange=function(S,L){t._cleanRange(S,L),t.limitRange(S)},t._cleanRange=function(S,L){L||(L={}),S||(S="range");var x=yc.nestedProperty(t,S).get(),C,M;if(t.type==="date"?M=yc.dfltRange(t.calendar):i==="y"?M=mL.DFLTRANGEY:t._name==="realaxis"?M=[0,1]:M=L.dfltRange||mL.DFLTRANGEX,M=M.slice(),(t.rangemode==="tozero"||t.rangemode==="nonnegative")&&(M[0]=0),!x||x.length!==2){yc.nestedProperty(t,S).set(M);return}var g=x[0]===null,P=x[1]===null;for(t.type==="date"&&!t.autorange&&(x[0]=yc.cleanDate(x[0],Tg,t.calendar),x[1]=yc.cleanDate(x[1],Tg,t.calendar)),C=0;C<2;C++)if(t.type==="date"){if(!yc.isDateTime(x[C],t.calendar)){t[S]=M;break}if(t.r2l(x[0])===t.r2l(x[1])){var T=yc.constrain(t.r2l(x[0]),yc.MIN_MS+1e3,yc.MAX_MS-1e3);x[0]=t.l2r(T-1e3),x[1]=t.l2r(T+1e3);break}}else{if(!gm(x[C]))if(!(g||P)&&gm(x[1-C]))x[C]=x[1-C]*(C?10:.1);else{t[S]=M;break}if(x[C]<-fL?x[C]=-fL:x[C]>fL&&(x[C]=fL),x[0]===x[1]){var z=Math.max(1,Math.abs(x[0]*1e-6));x[0]-=z,x[1]+=z}}},t.setScale=function(S){var L=r._size;if(t.overlaying){var x=vL.getFromId({_fullLayout:r},t.overlaying);t.domain=x.domain}var C=S&&t._r?"_r":"range",M=t.calendar;t.cleanRange(C);var g=t.r2l(t[C][0],M),P=t.r2l(t[C][1],M),T=i==="y";if(T?(t._offset=L.t+(1-t.domain[1])*L.h,t._length=L.h*(t.domain[1]-t.domain[0]),t._m=t._length/(g-P),t._b=-t._m*P):(t._offset=L.l+t.domain[0]*L.w,t._length=L.w*(t.domain[1]-t.domain[0]),t._m=t._length/(P-g),t._b=-t._m*g),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks){var z,O;if(t._rangebreaks=t.locateBreaks(Math.min(g,P),Math.max(g,P)),t._rangebreaks.length){for(z=0;zP&&(V=!V),V&&t._rangebreaks.reverse();var G=V?-1:1;for(t._m2=G*t._length/(Math.abs(P-g)-t._lBreaks),t._B.push(-t._m2*(T?P:g)),z=0;zM&&(M+=7,gM&&(M+=24,g=C&&g=C&&S=ie.min&&(_eie.max&&(ie.max=Ee),Ce=!1)}Ce&&P.push({min:_e,max:Ee})}};for(x=0;x{"use strict";var $oe=Eo(),$q=Dr(),cst=fs().BADNUM,yL=$q.isArrayOrTypedArray,fst=$q.isDateTime,hst=$q.cleanNumber,Qoe=Math.round;tse.exports=function(t,r,n){var i=t,a=n.noMultiCategory;if(yL(i)&&!i.length)return"-";if(!a&&mst(i))return"multicategory";if(a&&Array.isArray(i[0])){for(var o=[],s=0;sa*2}function ese(e){return Math.max(1,(e-1)/1e3)}function gst(e,t){for(var r=e.length,n=ese(r),i=0,a=0,o={},s=0;si*2}function mst(e){return yL(e[0])&&yL(e[1])}});var Ag=ye((jnr,use)=>{"use strict";var yst=Oa(),ase=Eo(),o_=Dr(),_L=fs().FP_SAFE,_st=qa(),xst=So(),ose=hf(),bst=ose.getFromId,wst=ose.isLinked;use.exports={applyAutorangeOptions:lse,getAutoRange:Qq,makePadFn:eB,doAutoRange:Ast,findExtremes:Sst,concatExtremes:iB};function Qq(e,t){var r,n,i=[],a=e._fullLayout,o=eB(a,t,0),s=eB(a,t,1),l=iB(e,t),u=l.min,c=l.max;if(u.length===0||c.length===0)return o_.simpleMap(t.range,t.r2l);var f=u[0].val,h=c[0].val;for(r=1;r0&&(P=E-o(x)-s(C),P>S?T/P>L&&(M=x,g=C,L=T/P):T/E>L&&(M={val:x.val,nopad:1},g={val:C.val,nopad:1},L=T/E));function z(j,N){return Math.max(j,s(N))}if(f===h){var O=f-1,V=f+1;if(p)if(f===0)i=[0,1];else{var G=(f>0?c:u).reduce(z,0),Z=f/(1-Math.min(.5,G/E));i=f>0?[0,Z]:[Z,0]}else k?i=[Math.max(0,O),Math.max(1,V)]:i=[O,V]}else p?(M.val>=0&&(M={val:0,nopad:1}),g.val<=0&&(g={val:0,nopad:1})):k&&(M.val-L*o(M)<0&&(M={val:0,nopad:1}),g.val<=0&&(g={val:1,nopad:1})),L=(g.val-M.val-rse(t,x.val,C.val))/(E-o(M)-s(g)),i=[M.val-L*o(M),g.val+L*s(g)];return i=lse(i,t),t.limitRange&&t.limitRange(),v&&i.reverse(),o_.simpleMap(i,t.l2r||Number)}function rse(e,t,r){var n=0;if(e.rangebreaks)for(var i=e.locateBreaks(t,r),a=0;a0?r.ppadplus:r.ppadminus)||r.ppad||0),x=S((e._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),C=S(r.vpadplus||r.vpad),M=S(r.vpadminus||r.vpad);if(!u){if(k=1/0,E=-1/0,l)for(f=0;f0&&(k=h),h>E&&h<_L&&(E=h);else for(f=0;f-_L&&(k=h),h>E&&h<_L&&(E=h);t=[k,E],a=2}var g={tozero:s,extrapad:o};function P(z){d=t[z],ase(d)&&(b=L(z),p=x(z),c?(v=e.c2l(d)-M(z),_=e.c2l(d)+C(z)):(k=d-M(z),E=d+C(z),l&&k=T;f--)P(f);return{min:n,max:i,opts:r}}function tB(e,t,r,n){sse(e,t,r,n,Mst)}function rB(e,t,r,n){sse(e,t,r,n,Est)}function sse(e,t,r,n,i){for(var a=n.tozero,o=n.extrapad,s=!0,l=0;l=r&&(u.extrapad||!o)){s=!1;break}else i(t,u.val)&&u.pad<=r&&(o||!u.extrapad)&&(e.splice(l,1),l--)}if(s){var c=a&&t===0;e.push({val:t,pad:c?0:r,extrapad:c?!1:o})}}function nse(e){return ase(e)&&Math.abs(e)<_L}function Mst(e,t){return e<=t}function Est(e,t){return e>=t}function kst(e,t){var r=t.autorangeoptions;return r&&r.minallowed!==void 0&&xL(t,r.minallowed,r.maxallowed)?r.minallowed:r&&r.clipmin!==void 0&&xL(t,r.clipmin,r.clipmax)?Math.max(e,t.d2l(r.clipmin)):e}function Cst(e,t){var r=t.autorangeoptions;return r&&r.maxallowed!==void 0&&xL(t,r.minallowed,r.maxallowed)?r.maxallowed:r&&r.clipmax!==void 0&&xL(t,r.clipmin,r.clipmax)?Math.min(e,t.d2l(r.clipmax)):e}function xL(e,t,r){return t!==void 0&&r!==void 0?(t=e.d2l(t),r=e.d2l(r),t=l&&(a=l,r=l),o<=l&&(o=l,n=l)}}return r=kst(r,t),n=Cst(n,t),[r,n]}});var ho=ye((Wnr,Ise)=>{"use strict";var b0=Oa(),Ih=Eo(),D3=Mc(),aM=qa(),Jo=Dr(),F3=Jo.strTranslate,kb=ru(),Lst=Eb(),oM=ka(),Xp=So(),Pst=Rd(),cse=Eq(),Jd=fs(),Ist=Jd.ONEMAXYEAR,TL=Jd.ONEAVGYEAR,AL=Jd.ONEMINYEAR,Rst=Jd.ONEMAXQUARTER,sB=Jd.ONEAVGQUARTER,SL=Jd.ONEMINQUARTER,Dst=Jd.ONEMAXMONTH,z3=Jd.ONEAVGMONTH,ML=Jd.ONEMINMONTH,Zp=Jd.ONEWEEK,Ov=Jd.ONEDAY,s_=Ov/2,xm=Jd.ONEHOUR,sM=Jd.ONEMIN,EL=Jd.ONESEC,Fst=Jd.ONEMILLI,zst=Jd.ONEMICROSEC,Cb=Jd.MINUS_SIGN,CL=Jd.BADNUM,lB={K:"zeroline"},uB={K:"gridline",L:"path"},cB={K:"minor-gridline",L:"path"},bse={K:"tick",L:"path"},fse={K:"tick",L:"text"},hse={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},LL=$h(),nM=LL.MID_SHIFT,Lb=LL.CAP_SHIFT,lM=LL.LINE_SPACING,Ost=LL.OPPOSITE_SIDE,kL=3,Qn=Ise.exports={};Qn.setConvert=ym();var qst=R3(),Sy=hf(),Bst=Sy.idSort,Nst=Sy.isLinked;Qn.id2name=Sy.id2name;Qn.name2id=Sy.name2id;Qn.cleanId=Sy.cleanId;Qn.list=Sy.list;Qn.listIds=Sy.listIds;Qn.getFromId=Sy.getFromId;Qn.getFromTrace=Sy.getFromTrace;var wse=Ag();Qn.getAutoRange=wse.getAutoRange;Qn.findExtremes=wse.findExtremes;var Ust=1e-4;function vB(e){var t=(e[1]-e[0])*Ust;return[e[0]-t,e[1]+t]}Qn.coerceRef=function(e,t,r,n,i,a){var o=n.charAt(n.length-1),s=r._fullLayout._subplots[o+"axis"],l=n+"ref",u={};return i||(i=s[0]||(typeof a=="string"?a:a[0])),a||(a=i),s=s.concat(s.map(function(c){return c+" domain"})),u[l]={valType:"enumerated",values:s.concat(a?typeof a=="string"?[a]:a:[]),dflt:i},Jo.coerce(e,t,u,l)};Qn.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};Qn.coercePosition=function(e,t,r,n,i,a){var o,s,l=Qn.getRefType(n);if(l!=="range")o=Jo.ensureNumber,s=r(i,a);else{var u=Qn.getFromId(t,n);a=u.fraction2r(a),s=r(i,a),o=u.cleanPos}e[i]=o(s)};Qn.cleanPosition=function(e,t,r){var n=r==="paper"||r==="pixel"?Jo.ensureNumber:Qn.getFromId(t,r).cleanPos;return n(e)};Qn.redrawComponents=function(e,t){t=t||Qn.listIds(e);var r=e._fullLayout;function n(i,a,o,s){for(var l=aM.getComponentMethod(i,a),u={},c=0;c2e-6||((r-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};Qn.saveRangeInitial=function(e,t){for(var r=Qn.list(e,"",!0),n=!1,i=0;if*.3||u(n)||u(i))){var h=r.dtick/2;e+=e+ho){var s=Number(r.slice(1));a.exactYears>o&&s%12===0?e=Qn.tickIncrement(e,"M6","reverse")+Ov*1.5:a.exactMonths>o?e=Qn.tickIncrement(e,"M1","reverse")+Ov*15.5:e-=s_;var l=Qn.tickIncrement(e,r);if(l<=n)return l}return e}Qn.prepMinorTicks=function(e,t,r){if(!t.minor.dtick){delete e.dtick;var n=t.dtick&&Ih(t._tmin),i;if(n){var a=Qn.tickIncrement(t._tmin,t.dtick,!0);i=[t._tmin,a*.99+t._tmin*.01]}else{var o=Jo.simpleMap(t.range,t.r2l);i=[o[0],.8*o[0]+.2*o[1]]}if(e.range=Jo.simpleMap(i,t.l2r),e._isMinor=!0,Qn.prepTicks(e,r),n){var s=Ih(t.dtick),l=Ih(e.dtick),u=s?t.dtick:+t.dtick.substring(1),c=l?e.dtick:+e.dtick.substring(1);s&&l?nB(u,c)?u===2*Zp&&c===2*Ov&&(e.dtick=Zp):u===2*Zp&&c===3*Ov?e.dtick=Zp:u===Zp&&!(t._input.minor||{}).nticks?e.dtick=Ov:pse(u/c,2.5)?e.dtick=u/2:e.dtick=u:String(t.dtick).charAt(0)==="M"?l?e.dtick="M1":nB(u,c)?u>=12&&c===2&&(e.dtick="M3"):e.dtick=t.dtick:String(e.dtick).charAt(0)==="L"?String(t.dtick).charAt(0)==="L"?nB(u,c)||(e.dtick=pse(u/c,2.5)?t.dtick/2:t.dtick):e.dtick="D1":e.dtick==="D2"&&+t.dtick>1&&(e.dtick=1)}e.range=t.range}t.minor._tick0Init===void 0&&(e.tick0=t.tick0)};function nB(e,t){return Math.abs((e/t+.5)%1-.5)<.001}function pse(e,t){return Math.abs(e/t-1)<.001}Qn.prepTicks=function(e,t){var r=Jo.simpleMap(e.range,e.r2l,void 0,void 0,t);if(e.tickmode==="auto"||!e.dtick){var n=e.nticks,i;n||(e.type==="category"||e.type==="multicategory"?(i=e.tickfont?Jo.bigFont(e.tickfont.size||12):15,n=e._length/i):(i=e._id.charAt(0)==="y"?40:80,n=Jo.constrain(e._length/i,4,9)+1),e._name==="radialaxis"&&(n*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(n*=100),e._roughDTick=Math.abs(r[1]-r[0])/n,Qn.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(a=n-1,o=n):(a=n,o=n);var s=e[a].value,l=e[o].value,u=Math.abs(l-s),c=r||u,f=0;c>=AL?u>=AL&&u<=Ist?f=u:f=TL:r===sB&&c>=SL?u>=SL&&u<=Rst?f=u:f=sB:c>=ML?u>=ML&&u<=Dst?f=u:f=z3:r===Zp&&c>=Zp?f=Zp:c>=Ov?f=Ov:r===s_&&c>=s_?f=s_:r===xm&&c>=xm&&(f=xm);var h;f>=u&&(f=u,h=!0);var d=i+f;if(t.rangebreaks&&f>0){for(var v=84,_=0,b=0;bZp&&(f=u)}(f>0||n===0)&&(e[n].periodX=i+f/2)}}Qn.calcTicks=function(t,r){for(var n=t.type,i=t.calendar,a=t.ticklabelstep,o=t.ticklabelmode==="period",s=t.range[0]>t.range[1],l=!t.ticklabelindex||Jo.isArrayOrTypedArray(t.ticklabelindex)?t.ticklabelindex:[t.ticklabelindex],u=Jo.simpleMap(t.range,t.r2l,void 0,void 0,r),c=u[1]=(E?0:1);S--){var L=!S;S?(t._dtickInit=t.dtick,t._tick0Init=t.tick0):(t.minor._dtickInit=t.minor.dtick,t.minor._tick0Init=t.minor.tick0);var x=S?t:Jo.extendFlat({},t,t.minor);if(L?Qn.prepMinorTicks(x,t,r):Qn.prepTicks(x,r),x.tickmode==="array"){S?(b=[],v=gse(t,!L)):(p=[],_=gse(t,!L));continue}if(x.tickmode==="sync"){b=[],v=Xst(t);continue}var C=vB(u),M=C[0],g=C[1],P=Ih(x.dtick),T=n==="log"&&!(P||x.dtick.charAt(0)==="L"),z=Qn.tickFirst(x,r);if(S){if(t._tmin=z,z=g:V<=g;V=Qn.tickIncrement(V,j,c,i)){if(S&&G++,x.rangebreaks&&!c){if(V=h)break}if(b.length>d||V===O)break;O=V;var N={value:V};S?(T&&V!==(V|0)&&(N.simpleLabel=!0),a>1&&G%a&&(N.skipLabel=!0),b.push(N)):(N.minor=!0,p.push(N))}}if(!p||p.length<2)l=!1;else{var H=(p[1].value-p[0].value)*(s?-1:1);ylt(H,t.tickformat)||(l=!1)}if(!l)k=b;else{var te=b.concat(p);o&&b.length&&(te=te.slice(1)),te=te.sort(function(Gt,Nt){return Gt.value-Nt.value}).filter(function(Gt,Nt,Jt){return Nt===0||Gt.value!==Jt[Nt-1].value});var oe=te.map(function(Gt,Nt){return Gt.minor===void 0&&!Gt.skipLabel?Nt:null}).filter(function(Gt){return Gt!==null});oe.forEach(function(Gt){l.map(function(Nt){var Jt=Gt+Nt;Jt>=0&&Jt-1;Fe--){if(b[Fe].drop){b.splice(Fe,1);continue}b[Fe].value=oB(b[Fe].value,t);var ce=t.c2p(b[Fe].value);(Pe?Re>ce-ge:Reh||srh&&(Jt.periodX=h),sri&&hTL)t/=TL,n=i(10),e.dtick="M"+12*_m(t,n,bL);else if(a>z3)t/=z3,e.dtick="M"+_m(t,1,mse);else if(a>Ov){if(e.dtick=_m(t,Ov,e._hasDayOfWeekBreaks?[1,2,7,14]:Zst),!r){var o=Qn.getTickFormat(e),s=e.ticklabelmode==="period";s&&(e._rawTick0=e.tick0),/%[uVW]/.test(o)?e.tick0=Jo.dateTick0(e.calendar,2):e.tick0=Jo.dateTick0(e.calendar,1),s&&(e._dowTick0=e.tick0)}}else a>xm?e.dtick=_m(t,xm,mse):a>sM?e.dtick=_m(t,sM,yse):a>EL?e.dtick=_m(t,EL,yse):(n=i(10),e.dtick=_m(t,n,bL))}else if(e.type==="log"){e.tick0=0;var l=Jo.simpleMap(e.range,e.r2l);if(e._isMinor&&(t*=1.5),t>.7)e.dtick=Math.ceil(t);else if(Math.abs(l[1]-l[0])<1){var u=1.5*Math.abs((l[1]-l[0])/t);t=Math.abs(Math.pow(10,l[1])-Math.pow(10,l[0]))/u,n=i(10),e.dtick="L"+_m(t,n,bL)}else e.dtick=t>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(t,1))):yB(e)?(e.tick0=0,n=1,e.dtick=_m(t,n,Yst)):(e.tick0=0,n=i(10),e.dtick=_m(t,n,bL));if(e.dtick===0&&(e.dtick=1),!Ih(e.dtick)&&typeof e.dtick!="string"){var c=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(c)}};function Mse(e){var t=e.dtick;if(e._tickexponent=0,!Ih(t)&&typeof t!="string"&&(t=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var r=e.r2l(e.tick0),n=e.l2r(r).replace(/(^-|i)/g,""),i=n.length;if(String(t).charAt(0)==="M")i>10||n.slice(5)!=="01-01"?e._tickround="d":e._tickround=+t.slice(1)%12===0?"y":"m";else if(t>=Ov&&i<=10||t>=Ov*15)e._tickround="d";else if(t>=sM&&i<=16||t>=xm)e._tickround="M";else if(t>=EL&&i<=19||t>=sM)e._tickround="S";else{var a=e.l2r(r+t).replace(/^-/,"").length;e._tickround=Math.max(i,a)-20,e._tickround<0&&(e._tickround=4)}}else if(Ih(t)||t.charAt(0)==="L"){var o=e.range.map(e.r2d||Number);Ih(t)||(t=Number(t.slice(1))),e._tickround=2-Math.floor(Math.log(t)/Math.LN10+.01);var s=Math.max(Math.abs(o[0]),Math.abs(o[1])),l=Math.floor(Math.log(s)/Math.LN10+.01),u=e.minexponent===void 0?3:e.minexponent;Math.abs(l)>u&&(O3(e.exponentformat)&&e.exponentformat!=="SI extended"&&!pB(l)||O3(e.exponentformat)&&e.exponentformat==="SI extended"&&!gB(l)?e._tickexponent=3*Math.round((l-1)/3):e._tickexponent=l)}else e._tickround=null}Qn.tickIncrement=function(e,t,r,n){var i=r?-1:1;if(Ih(t))return Jo.increment(e,i*t);var a=t.charAt(0),o=i*Number(t.slice(1));if(a==="M")return Jo.incrementMonth(e,o,n);if(a==="L")return Math.log(Math.pow(10,e)+o)/Math.LN10;if(a==="D"){var s=t==="D2"?Sse:Ase,l=e+i*.01,u=Jo.roundUp(Jo.mod(l,1),s,r);return Math.floor(l)+Math.log(b0.round(Math.pow(10,u),1))/Math.LN10}throw"unrecognized dtick "+String(t)};Qn.tickFirst=function(e,t){var r=e.r2l||Number,n=Jo.simpleMap(e.range,r,void 0,void 0,t),i=n[1]=0&&p<=e._length?b:null};if(a&&Jo.isArrayOrTypedArray(e.ticktext)){var f=Jo.simpleMap(e.range,e.r2l),h=(Math.abs(f[1]-f[0])-(e._lBreaks||0))/1e4;for(u=0;u"+s;else{var u=cM(e),c=e._trueSide||e.side;(!u&&c==="top"||u&&c==="bottom")&&(o+="
")}t.text=o}function Jst(e,t,r,n,i){var a=e.dtick,o=t.x,s=e.tickformat,l=typeof a=="string"&&a.charAt(0);if(i==="never"&&(i=""),n&&l!=="L"&&(a="L3",l="L"),s||l==="L")t.text=uM(Math.pow(10,o),e,i,n);else if(Ih(a)||l==="D"&&(e.minorloglabels==="complete"||Jo.mod(o+.01,1)<.1)){var u;e.minorloglabels==="complete"&&!(Jo.mod(o+.01,1)<.1)&&(u=!0,t.fontSize*=.75);var c=Math.pow(10,o).toExponential(0),f=c.split("e"),h=+f[1],d=Math.abs(h),v=e.exponentformat;v==="power"||O3(v)&&v!=="SI extended"&&pB(h)||O3(v)&&v==="SI extended"&&gB(h)?(t.text=f[0],d>0&&(t.text+="x10"),t.text==="1x10"&&(t.text="10"),h!==0&&h!==1&&(t.text+=""+(h>0?"":Cb)+d+""),t.fontSize*=1.25):(v==="e"||v==="E")&&d>2?t.text=f[0]+v+(h>0?"+":Cb)+d:(t.text=uM(Math.pow(10,o),e,"","fakehover"),a==="D1"&&e._id.charAt(0)==="y"&&(t.dy-=t.fontSize/6))}else if(l==="D")t.text=e.minorloglabels==="none"?"":String(Math.round(Math.pow(10,Jo.mod(o,1)))),t.fontSize*=.75;else throw"unrecognized dtick "+String(a);if(e.dtick==="D1"){var _=String(t.text).charAt(0);(_==="0"||_==="1")&&(e._id.charAt(0)==="y"?t.dx-=t.fontSize/4:(t.dy+=t.fontSize/2,t.dx+=(e.range[1]>e.range[0]?1:-1)*t.fontSize*(o<0?.5:.25)))}}function $st(e,t){var r=e._categories[Math.round(t.x)];r===void 0&&(r=""),t.text=String(r)}function Qst(e,t,r){var n=Math.round(t.x),i=e._categories[n]||[],a=i[1]===void 0?"":String(i[1]),o=i[0]===void 0?"":String(i[0]);r?t.text=o+" - "+a:(t.text=a,t.text2=o)}function elt(e,t,r,n,i){i==="never"?i="":e.showexponent==="all"&&Math.abs(t.x/e.dtick)<1e-6&&(i="hide"),t.text=uM(t.x,e,i,n)}function tlt(e,t,r,n,i){if(e.thetaunit==="radians"&&!r){var a=t.x/180;if(a===0)t.text="0";else{var o=rlt(a);if(o[1]>=100)t.text=uM(Jo.deg2rad(t.x),e,i,n);else{var s=t.x<0;o[1]===1?o[0]===1?t.text="\u03C0":t.text=o[0]+"\u03C0":t.text=["",o[0],"","\u2044","",o[1],"","\u03C0"].join(""),s&&(t.text=Cb+t.text)}}}else t.text=uM(t.x,e,i,n)}function rlt(e){function t(s,l){return Math.abs(s-l)<=1e-6}function r(s,l){return t(l,0)?s:r(l,s%l)}function n(s){for(var l=1;!t(Math.round(s*l)/l,s);)l*=10;return l}var i=n(e),a=e*i,o=Math.abs(r(a,i));return[Math.round(a/o),Math.round(i/o)]}var kse=["f","p","n","\u03BC","m","","k","M","G","T"],ilt=["q","r","y","z","a",...kse,"P","E","Z","Y","R","Q"],O3=e=>["SI","SI extended","B"].includes(e);function pB(e){return e>14||e<-15}function gB(e){return e>32||e<-30}function nlt(e,t){return O3(t)?!!(t==="SI extended"&&gB(e)||t!=="SI extended"&&pB(e)):!1}function uM(e,t,r,n){var i=e<0,a=t._tickround,o=r||t.exponentformat||"B",s=t._tickexponent,l=Qn.getTickFormat(t),u=t.separatethousands;if(n){var c={exponentformat:o,minexponent:t.minexponent,dtick:t.showexponent==="none"?t.dtick:Ih(e)&&Math.abs(e)||1,range:t.showexponent==="none"?t.range.map(t.r2d):[0,e||1]};Mse(c),a=(Number(c._tickround)||0)+4,s=c._tickexponent,t.hoverformat&&(l=t.hoverformat)}if(l)return t._numFormat(l)(e).replace(/-/g,Cb);var f=Math.pow(10,-a)/2;if(o==="none"&&(s=0),e=Math.abs(e),e"+v+"":o==="B"&&s===9?e+="B":O3(o)&&(e+=o==="SI extended"?ilt[s/3+10]:kse[s/3+5])}return i?Cb+e:e}Qn.getTickFormat=function(e){var t;function r(l){return typeof l!="string"?l:Number(l.replace("M",""))*z3}function n(l,u){var c=["L","D"];if(typeof l==typeof u){if(typeof l=="number")return l-u;var f=c.indexOf(l.charAt(0)),h=c.indexOf(u.charAt(0));return f===h?Number(l.replace(/(L|D)/g,""))-Number(u.replace(/(L|D)/g,"")):f-h}else return typeof l=="number"?1:-1}function i(l,u,c){var f=c||function(v){return v},h=u[0],d=u[1];return(!h&&typeof h!="number"||f(h)<=f(l))&&(!d&&typeof d!="number"||f(d)>=f(l))}function a(l,u){var c=u[0]===null,f=u[1]===null,h=n(l,u[0])>=0,d=n(l,u[1])<=0;return(c||h)&&(f||d)}var o,s;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(t=0;t=0&&i.unshift(i.splice(c,1).shift())}});var s={false:{left:0,right:0}};return Jo.syncOrAsync(i.map(function(l){return function(){if(l){var u=Qn.getFromId(e,l);r||(r={}),r.axShifts=s,r.overlayingShiftedAx=o;var c=Qn.drawOne(e,u,r);return u._shiftPusher&&dB(u,u._fullDepth||0,s,!0),u._r=u.range.slice(),u._rl=Jo.simpleMap(u._r,u.r2l),c}}}))};Qn.drawOne=function(e,t,r){r=r||{};var n=r.axShifts||{},i=r.overlayingShiftedAx||[],a,o,s;t.setScale();var l=e._fullLayout,u=t._id,c=u.charAt(0),f=Qn.counterLetter(u),h=l._plots[t._mainSubplot],d=t.zerolinelayer==="above traces";if(!h)return;if(t._shiftPusher=t.autoshift||i.indexOf(t._id)!==-1||i.indexOf(t.overlaying)!==-1,t._shiftPusher&t.anchor==="free"){var v=t.linewidth/2||0;t.ticks==="inside"&&(v+=t.ticklen),dB(t,v,n,!0),dB(t,t.shift||0,n,!1)}(r.skipTitle!==!0||t._shift===void 0)&&(t._shift=mlt(t,n));var _=h[c+"axislayer"],b=t._mainLinePosition,p=b+=t._shift,k=t._mainMirrorPosition,E=t._vals=Qn.calcTicks(t),S=[t.mirror,p,k].join("_");for(a=0;a0?sr.bottom-Nt:0,Jt))));var St=0,Qt=0;if(t._shiftPusher&&(St=Math.max(Jt,sr.height>0?lt==="l"?Nt-sr.left:sr.right-Nt:0),t.title.text!==l._dfltTitle[c]&&(Qt=(t._titleStandoff||0)+(t._titleScoot||0),lt==="l"&&(Qt+=xse(t))),t._fullDepth=Math.max(St,Qt)),t.automargin){wr={x:0,y:0,r:0,l:0,t:0,b:0};var Vt=[0,1],_t=typeof t._shift=="number"?t._shift:0;if(c==="x"){if(lt==="b"?wr[lt]=t._depth:(wr[lt]=t._depth=Math.max(sr.width>0?Nt-sr.top:0,Jt),Vt.reverse()),sr.width>0){var It=sr.right-(t._offset+t._length);It>0&&(wr.xr=1,wr.r=It);var mt=t._offset-sr.left;mt>0&&(wr.xl=0,wr.l=mt)}}else if(lt==="l"?(t._depth=Math.max(sr.height>0?Nt-sr.left:0,Jt),wr[lt]=t._depth-_t):(t._depth=Math.max(sr.height>0?sr.right-Nt:0,Jt),wr[lt]=t._depth+_t,Vt.reverse()),sr.height>0){var er=sr.bottom-(t._offset+t._length);er>0&&(wr.yb=0,wr.b=er);var lr=t._offset-sr.top;lr>0&&(wr.yt=1,wr.t=lr)}wr[f]=t.anchor==="free"?t.position:t._anchorAxis.domain[Vt[0]],t.title.text!==l._dfltTitle[c]&&(wr[lt]+=xse(t)+(t.title.standoff||0)),t.mirror&&t.anchor!=="free"&&(cr={x:0,y:0,r:0,l:0,t:0,b:0},cr[Gt]=t.linewidth,t.mirror&&t.mirror!==!0&&(cr[Gt]+=Jt),t.mirror===!0||t.mirror==="ticks"?cr[f]=t._anchorAxis.domain[Vt[1]]:(t.mirror==="all"||t.mirror==="allticks")&&(cr[f]=[t._counterDomainMin,t._counterDomainMax][Vt[1]]))}st&&($e=aM.getComponentMethod("rangeslider","autoMarginOpts")(e,t)),typeof t.automargin=="string"&&(_se(wr,t.automargin),_se(cr,t.automargin)),D3.autoMargin(e,mB(t),wr),D3.autoMargin(e,Lse(t),cr),D3.autoMargin(e,Pse(t),$e)}),Jo.syncOrAsync(pt)}};function _se(e,t){if(e){var r=Object.keys(hse).reduce(function(n,i){return t.indexOf(i)!==-1&&hse[i].forEach(function(a){n[a]=1}),n},{});Object.keys(e).forEach(function(n){r[n]||(n.length===1?e[n]=0:delete e[n])})}}function alt(e,t){var r=[],n,i=function(a,o){var s=a.xbnd[o];s!==null&&r.push(Jo.extendFlat({},a,{x:s}))};if(t.length){for(n=0;ne.range[1],s=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,l=!s;if(r){var u=o?-1:1;r=r*u}if(n){var c=e.side,f=s&&(c==="top"||c==="left")||l&&(c==="bottom"||c==="right")?1:-1;n=n*f}return e._id.charAt(0)==="x"?function(h){return F3(i+e._offset+e.l2p(fB(h))+r,a+n)}:function(h){return F3(a+n,i+e._offset+e.l2p(fB(h))+r)}};function fB(e){return e.periodX!==void 0?e.periodX:e.x}function ult(e){var t=e.ticklabelposition||"",r=e.tickson||"",n=function(v){return t.indexOf(v)!==-1},i=n("top"),a=n("left"),o=n("right"),s=n("bottom"),l=n("inside"),u=r!=="boundaries"&&(s||a||i||o);if(!u&&!l)return[0,0];var c=e.side,f=u?(e.tickwidth||0)/2:0,h=kL,d=e.tickfont?e.tickfont.size:12;return(s||i)&&(f+=d*Lb,h+=(e.linewidth||0)/2),(a||o)&&(f+=(e.linewidth||0)/2,h+=kL),l&&c==="top"&&(h-=d*(1-Lb)),(a||i)&&(f=-f),(c==="bottom"||c==="right")&&(h=-h),[u?f:0,l?h:0]}Qn.makeTickPath=function(e,t,r,n){n||(n={});var i=n.minor;if(i&&!e.minor)return"";var a=n.len!==void 0?n.len:i?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),s=(e.linewidth||1)/2;return o==="x"?"M0,"+(t+s*r)+"v"+a*r:"M"+(t+s*r)+",0h"+a*r};Qn.makeLabelFns=function(e,t,r){var n=e.ticklabelposition||"",i=e.tickson||"",a=function(O){return n.indexOf(O)!==-1},o=a("top"),s=a("left"),l=a("right"),u=a("bottom"),c=i!=="boundaries"&&(u||s||o||l),f=a("inside"),h=n==="inside"&&e.ticks==="inside"||!f&&e.ticks==="outside"&&i!=="boundaries",d=0,v=0,_=h?e.ticklen:0;if(f?_*=-1:c&&(_=0),h&&(d+=_,r)){var b=Jo.deg2rad(r);d=_*Math.cos(b)+1,v=_*Math.sin(b)}e.showticklabels&&(h||e.showline)&&(d+=.2*e.tickfont.size),d+=(e.linewidth||1)/2*(f?-1:1);var p={labelStandoff:d,labelShift:v},k,E,S,L,x=0,C=e.side,M=e._id.charAt(0),g=e.tickangle,P;if(M==="x")P=!f&&C==="bottom"||f&&C==="top",L=P?1:-1,f&&(L*=-1),k=v*L,E=t+d*L,S=P?1:-.2,Math.abs(g)===90&&(f?S+=nM:g===-90&&C==="bottom"?S=Lb:g===90&&C==="top"?S=nM:S=.5,x=nM/2*(g/90)),p.xFn=function(O){return O.dx+k+x*O.fontSize},p.yFn=function(O){return O.dy+E+O.fontSize*S},p.anchorFn=function(O,V){if(c){if(s)return"end";if(l)return"start"}return!Ih(V)||V===0||V===180?"middle":V*L<0!==f?"end":"start"},p.heightFn=function(O,V,G){return V<-60||V>60?-.5*G:e.side==="top"!==f?-G:0};else if(M==="y"){if(P=!f&&C==="left"||f&&C==="right",L=P?1:-1,f&&(L*=-1),k=d,E=v*L,S=0,!f&&Math.abs(g)===90&&(g===-90&&C==="left"||g===90&&C==="right"?S=Lb:S=.5),f){var T=Ih(g)?+g:0;if(T!==0){var z=Jo.deg2rad(T);x=Math.abs(Math.sin(z))*Lb*L,S=0}}p.xFn=function(O){return O.dx+t-(k+O.fontSize*S)*L+x*O.fontSize},p.yFn=function(O){return O.dy+E+O.fontSize*nM},p.anchorFn=function(O,V){return Ih(V)&&Math.abs(V)===90?"middle":P?"end":"start"},p.heightFn=function(O,V,G){return e.side==="right"&&(V*=-1),V<-30?-G:V<30?-.5*G:0}}return p};function PL(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}Qn.drawTicks=function(e,t,r){r=r||{};var n=t._id+"tick",i=[].concat(t.minor&&t.minor.ticks?r.vals.filter(function(o){return o.minor&&!o.noTick}):[]).concat(t.ticks?r.vals.filter(function(o){return!o.minor&&!o.noTick}):[]),a=r.layer.selectAll("path."+n).data(i,PL);a.exit().remove(),a.enter().append("path").classed(n,1).classed("ticks",1).classed("crisp",r.crisp!==!1).each(function(o){return oM.stroke(b0.select(this),o.minor?t.minor.tickcolor:t.tickcolor)}).style("stroke-width",function(o){return Xp.crispRound(e,o.minor?t.minor.tickwidth:t.tickwidth,1)+"px"}).attr("d",r.path).style("display",null),IL(t,[bse]),a.attr("transform",r.transFn)};Qn.drawGrid=function(e,t,r){if(r=r||{},t.tickmode!=="sync"){var n=t._id+"grid",i=t.minor&&t.minor.showgrid,a=i?r.vals.filter(function(p){return p.minor}):[],o=t.showgrid?r.vals.filter(function(p){return!p.minor}):[],s=r.counterAxis;if(s&&Qn.shouldShowZeroLine(e,t,s))for(var l=t.tickmode==="array",u=0;u=0;v--){var _=v?h:d;if(_){var b=_.selectAll("path."+n).data(v?o:a,PL);b.exit().remove(),b.enter().append("path").classed(n,1).classed("crisp",r.crisp!==!1),b.attr("transform",r.transFn).attr("d",r.path).each(function(p){return oM.stroke(b0.select(this),p.minor?t.minor.gridcolor:t.gridcolor||"#ddd")}).style("stroke-dasharray",function(p){return Xp.dashStyle(p.minor?t.minor.griddash:t.griddash,p.minor?t.minor.gridwidth:t.gridwidth)}).style("stroke-width",function(p){return(p.minor?f:t._gw)+"px"}).style("display",null),typeof r.path=="function"&&b.attr("d",r.path)}}IL(t,[uB,cB])}};Qn.drawZeroLine=function(e,t,r){r=r||r;var n=t._id+"zl",i=Qn.shouldShowZeroLine(e,t,r.counterAxis),a=r.layer.selectAll("path."+n).data(i?[{x:0,id:t._id}]:[]);a.exit().remove(),a.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",r.crisp!==!1).each(function(){r.layer.selectAll("path").sort(function(o,s){return Bst(o.id,s.id)})}),a.attr("transform",r.transFn).attr("d",r.path).call(oM.stroke,t.zerolinecolor||oM.defaultLine).style("stroke-width",Xp.crispRound(e,t.zerolinewidth,t._gw||1)+"px").style("display",null),IL(t,[lB])};Qn.drawLabels=function(e,t,r){r=r||{};var n=e._fullLayout,i=t._id,a=t.zerolinelayer==="above traces",o=r.cls||i+"tick",s=r.vals.filter(function(H){return H.text}),l=r.labelFns,u=r.secondary?0:t.tickangle,c=(t._prevTickAngles||{})[o],f=r.layer.selectAll("g."+o).data(t.showticklabels?s:[],PL),h=[];f.enter().append("g").classed(o,1).append("text").attr("text-anchor","middle").each(function(H){var te=b0.select(this),oe=e._promises.length;te.call(kb.positionText,l.xFn(H),l.yFn(H)).call(Xp.font,{family:H.font,size:H.fontSize,color:H.fontColor,weight:H.fontWeight,style:H.fontStyle,variant:H.fontVariant,textcase:H.fontTextcase,lineposition:H.fontLineposition,shadow:H.fontShadow}).text(H.text).call(kb.convertToTspans,e),e._promises[oe]?h.push(e._promises.pop().then(function(){d(te,u)})):d(te,u)}),IL(t,[fse]),f.exit().remove(),r.repositionOnUpdate&&f.each(function(H){b0.select(this).select("text").call(kb.positionText,l.xFn(H),l.yFn(H))});function d(H,te){H.each(function(oe){var _e=b0.select(this),Ee=_e.select(".text-math-group"),Ce=l.anchorFn(oe,te),me=r.transFn.call(_e.node(),oe)+(Ih(te)&&+te!=0?" rotate("+te+","+l.xFn(oe)+","+(l.yFn(oe)-oe.fontSize/2)+")":""),ie=kb.lineCount(_e),Se=lM*oe.fontSize,Le=l.heightFn(oe,Ih(te)?+te:0,(ie-1)*Se);if(Le&&(me+=F3(0,Le)),Ee.empty()){var Ae=_e.select("text");Ae.attr({transform:me,"text-anchor":Ce}),Ae.style("display",null),t._adjustTickLabelsOverflow&&t._adjustTickLabelsOverflow()}else{var Fe=Xp.bBox(Ee.node()).width,Pe=Fe*{end:-.5,start:.5}[Ce];Ee.attr("transform",me+F3(Pe,0))}})}t._adjustTickLabelsOverflow=function(){var H=t.ticklabeloverflow;if(!(!H||H==="allow")){var te=H.indexOf("hide")!==-1,oe=t._id.charAt(0)==="x",_e=0,Ee=oe?e._fullLayout.width:e._fullLayout.height;if(H.indexOf("domain")!==-1){var Ce=Jo.simpleMap(t.range,t.r2l);_e=t.l2p(Ce[0])+t._offset,Ee=t.l2p(Ce[1])+t._offset}var me=Math.min(_e,Ee),ie=Math.max(_e,Ee),Se=t.side,Le=1/0,Ae=-1/0;f.each(function(Re){var ce=b0.select(this),Ze=ce.select(".text-math-group");if(Ze.empty()){var ut=Xp.bBox(ce.node()),pt=0;oe?(ut.right>ie||ut.leftie||ut.top+(t.tickangle?0:Re.fontSize/4)t["_visibleLabelMin_"+Ce._id]?ce.style("display","none"):ie.K==="tick"&&!me&&ce.node().style.display!=="none"&&ce.style("display",null)})})})})},d(f,c+1?c:u);function v(){return h.length&&Promise.all(h)}var _=null;function b(){if(d(f,u),s.length&&t.autotickangles&&(t.type!=="log"||String(t.dtick).charAt(0)!=="D")){_=t.autotickangles[0];var H=0,te=[],oe,_e=1;f.each(function(wr){H=Math.max(H,wr.fontSize);var cr=t.l2p(wr.x),$e=hB(this),St=Xp.bBox($e.node());_e=Math.max(_e,kb.lineCount($e)),te.push({top:0,bottom:10,height:10,left:cr-St.width/2,right:cr+St.width/2+2,width:St.width+2})});var Ee=(t.tickson==="boundaries"||t.showdividers)&&!r.secondary,Ce=s.length,me=Math.abs((s[Ce-1].x-s[0].x)*t._m)/(Ce-1),ie=Ee?me/2:me,Se=Ee?t.ticklen:H*1.25*_e,Le=Math.sqrt(Math.pow(ie,2)+Math.pow(Se,2)),Ae=ie/Le,Fe=t.autotickangles.map(function(wr){return wr*Math.PI/180}),Pe=Fe.find(function(wr){return Math.abs(Math.cos(wr))<=Ae});Pe===void 0&&(Pe=Fe.reduce(function(wr,cr){return Math.abs(Math.cos(wr))Z*G&&(z=G,g[M]=P[M]=O[M])}var j=Math.abs(z-T);j-L>0?(j-=L,L*=1+L/j):L=0,t._id.charAt(0)!=="y"&&(L=-L),g[C]=E.p2r(E.r2p(P[C])+x*L),E.autorange==="min"||E.autorange==="max reversed"?(g[0]=null,E._rangeInitial0=void 0,E._rangeInitial1=void 0):(E.autorange==="max"||E.autorange==="min reversed")&&(g[1]=null,E._rangeInitial0=void 0,E._rangeInitial1=void 0),n._insideTickLabelsUpdaterange[E._name+".range"]=g}var N=Jo.syncOrAsync(p);return N&&N.then&&e._promises.push(N),N};function clt(e,t,r){var n=t._id+"divider",i=r.vals,a=r.layer.selectAll("path."+n).data(i,PL);a.exit().remove(),a.enter().insert("path",":first-child").classed(n,1).classed("crisp",1).call(oM.stroke,t.dividercolor).style("stroke-width",Xp.crispRound(e,t.dividerwidth,1)+"px"),a.attr("transform",r.transFn).attr("d",r.path)}Qn.getPxPosition=function(e,t){var r=e._fullLayout._size,n=t._id.charAt(0),i=t.side,a;if(t.anchor!=="free"?a=t._anchorAxis:n==="x"?a={_offset:r.t+(1-(t.position||0))*r.h,_length:0}:n==="y"&&(a={_offset:r.l+(t.position||0)*r.w+t._shift,_length:0}),i==="top"||i==="left")return a._offset;if(i==="bottom"||i==="right")return a._offset+a._length};function xse(e){var t=e.title.font.size,r=(e.title.text.match(kb.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?t*(Lb+r*lM):r?t*(r+1)*lM:t}function flt(e,t){var r=e._fullLayout,n=t._id,i=n.charAt(0),a=t.title.font.size,o,s=(t.title.text.match(kb.BR_TAG_ALL)||[]).length;if(t.title.hasOwnProperty("standoff"))t.side==="bottom"||t.side==="right"?o=t._depth+t.title.standoff+a*Lb:(t.side==="top"||t.side==="left")&&(o=t._depth+t.title.standoff+a*(nM+s*lM));else{var l=cM(t);if(t.type==="multicategory")o=t._depth;else{var u=1.5*a;l&&(u=.5*a,t.ticks==="outside"&&(u+=t.ticklen)),o=10+u+(t.linewidth?t.linewidth-1:0)}l||(i==="x"?o+=t.side==="top"?a*(t.showticklabels?1:0):a*(t.showticklabels?1.5:.5):o+=t.side==="right"?a*(t.showticklabels?1:.5):a*(t.showticklabels?.5:0))}var c=Qn.getPxPosition(e,t),f,h,d;i==="x"?(h=t._offset+t._length/2,d=t.side==="top"?c-o:c+o):(d=t._offset+t._length/2,h=t.side==="right"?c+o:c-o,f={rotate:"-90",offset:0});var v;if(t.type!=="multicategory"){var _=t._selections[t._id+"tick"];if(v={selection:_,side:t.side},_&&_.node()&&_.node().parentNode){var b=Xp.getTranslate(_.node().parentNode);v.offsetLeft=b.x,v.offsetTop=b.y}t.title.hasOwnProperty("standoff")&&(v.pad=0)}return t._titleStandoff=o,Lst.draw(e,n+"title",{propContainer:t,propName:t._name+".title.text",placeholder:r._dfltTitle[i],avoid:v,transform:f,attributes:{x:h,y:d,"text-anchor":"middle"}})}Qn.shouldShowZeroLine=function(e,t,r){var n=Jo.simpleMap(t.range,t.r2l);return n[0]*n[1]<=0&&t.zeroline&&(t.type==="linear"||t.type==="-")&&!(t.rangebreaks&&t.maskBreaks(0)===CL)&&(Cse(t,0)||!hlt(e,t,r,n)||dlt(e,t))};Qn.clipEnds=function(e,t){return t.filter(function(r){return Cse(e,r.x)})};function Cse(e,t){var r=e.l2p(t);return r>1&&r1)for(i=1;i=i.min&&e=zst:/%L/.test(t)?e>=Fst:/%[SX]/.test(t)?e>=EL:/%M/.test(t)?e>=sM:/%[HI]/.test(t)?e>=xm:/%p/.test(t)?e>=s_:/%[Aadejuwx]/.test(t)?e>=Ov:/%[UVW]/.test(t)?e>=Zp:/%[Bbm]/.test(t)?e>=ML:/%[q]/.test(t)?e>=SL:/%[Yy]/.test(t)?e>=AL:!0}});var _B=ye((Xnr,Rse)=>{"use strict";Rse.exports=function(t,r,n){var i,a;if(n){var o=r==="reversed"||r==="min reversed"||r==="max reversed";i=n[o?1:0],a=n[o?0:1]}var s=t("autorangeoptions.minallowed",a===null?i:void 0),l=t("autorangeoptions.maxallowed",i===null?a:void 0);s===void 0&&t("autorangeoptions.clipmin"),l===void 0&&t("autorangeoptions.clipmax"),t("autorangeoptions.include")}});var xB=ye((Znr,Dse)=>{"use strict";var _lt=_B();Dse.exports=function(t,r,n,i){var a=r._template||{},o=r.type||a.type||"-";n("minallowed"),n("maxallowed");var s=n("range");if(!s){var l;!i.noInsiderange&&o!=="log"&&(l=n("insiderange"),l&&(l[0]===null||l[1]===null)&&(r.insiderange=!1,l=void 0),l&&(s=n("range",l)))}var u=r.getAutorangeDflt(s,i),c=n("autorange",u),f;s&&(s[0]===null&&s[1]===null||(s[0]===null||s[1]===null)&&(c==="reversed"||c===!0)||s[0]!==null&&(c==="min"||c==="max reversed")||s[1]!==null&&(c==="max"||c==="min reversed"))&&(s=void 0,delete r.range,r.autorange=!0,f=!0),f||(u=r.getAutorangeDflt(s,i),c=n("autorange",u)),c&&(_lt(n,c,s),(o==="linear"||o==="-")&&n("rangemode")),r.cleanRange()}});var zse=ye((Ynr,Fse)=>{var xlt={left:0,top:0};Fse.exports=blt;function blt(e,t,r){t=t||e.currentTarget||e.srcElement,Array.isArray(r)||(r=[0,0]);var n=e.clientX||0,i=e.clientY||0,a=wlt(t);return r[0]=n-a.left,r[1]=i-a.top,r}function wlt(e){return e===window||e===document||e===document.body?xlt:e.getBoundingClientRect()}});var RL=ye((Knr,Ose)=>{"use strict";var Tlt=rq();function Alt(){var e=!1;try{var t=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,t),window.removeEventListener("test",null,t)}catch(r){e=!1}return e}Ose.exports=Tlt&&Alt()});var Bse=ye((Jnr,qse)=>{"use strict";qse.exports=function(t,r,n,i,a){var o=(t-n)/(i-n),s=o+r/(i-n),l=(o+s)/2;return a==="left"||a==="bottom"?o:a==="center"||a==="middle"?l:a==="right"||a==="top"?s:o<2/3-l?o:s>4/3-l?s:l}});var Vse=ye(($nr,Use)=>{"use strict";var Nse=Dr(),Slt=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];Use.exports=function(t,r,n,i){return n==="left"?t=0:n==="center"?t=1:n==="right"?t=2:t=Nse.constrain(Math.floor(t*3),0,2),i==="bottom"?r=0:i==="middle"?r=1:i==="top"?r=2:r=Nse.constrain(Math.floor(r*3),0,2),Slt[r][t]}});var Hse=ye((Qnr,Gse)=>{"use strict";var Mlt=_3(),Elt=z6(),klt=NS().getGraphDiv,Clt=zS(),bB=Gse.exports={};bB.wrapped=function(e,t,r){e=klt(e),e._fullLayout&&Elt.clear(e._fullLayout._uid+Clt.HOVERID),bB.raw(e,t,r)};bB.raw=function(t,r){var n=t._fullLayout,i=t._hoverdata;r||(r={}),!(r.target&&!t._dragged&&Mlt.triggerHandler(t,"plotly_beforehover",r)===!1)&&(n._hoverlayer.selectAll("g").remove(),n._hoverlayer.selectAll("line").remove(),n._hoverlayer.selectAll("circle").remove(),t._hoverdata=void 0,r.target&&i&&t.emit("plotly_unhover",{event:r,points:i}))}});var yv=ye((ear,Zse)=>{"use strict";var Llt=zse(),wB=nq(),Plt=RL(),Ilt=Dr().removeElement,Rlt=hd(),Pb=Zse.exports={};Pb.align=Bse();Pb.getCursor=Vse();var Wse=Hse();Pb.unhover=Wse.wrapped;Pb.unhoverRaw=Wse.raw;Pb.init=function(t){var r=t.gd,n=1,i=r._context.doubleClickDelay,a=t.element,o,s,l,u,c,f,h,d;r._mouseDownTime||(r._mouseDownTime=0),a.style.pointerEvents="all",a.onmousedown=b,Plt?(a._ontouchstart&&a.removeEventListener("touchstart",a._ontouchstart),a._ontouchstart=b,a.addEventListener("touchstart",b,{passive:!1})):a.ontouchstart=b;function v(E,S,L){return Math.abs(E)i&&(n=Math.max(n-1,1)),r._dragged)t.doneFn&&t.doneFn();else{var S;f.target===h?S=f:(S={target:h,srcElement:h,toElement:h},Object.keys(f).concat(Object.keys(f.__proto__)).forEach(L=>{var x=f[L];!S[L]&&typeof x!="function"&&(S[L]=x)})),t.clickFn&&t.clickFn(n,S),d||h.dispatchEvent(new MouseEvent("click",E))}r._dragging=!1,r._dragged=!1}};function Xse(){var e=document.createElement("div");e.className="dragcover";var t=e.style;return t.position="fixed",t.left=0,t.right=0,t.top=0,t.bottom=0,t.zIndex=999999999,t.background="none",document.body.appendChild(e),e}Pb.coverSlip=Xse;function jse(e){return Llt(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Sg=ye((tar,Yse)=>{"use strict";Yse.exports=function(t,r){(t.attr("class")||"").split(" ").forEach(function(n){n.indexOf("cursor-")===0&&t.classed(n,!1)}),r&&t.classed("cursor-"+r,!0)}});var $se=ye((rar,Jse)=>{"use strict";var TB=Sg(),fM="data-savedcursor",Kse="!!";Jse.exports=function(t,r){var n=t.attr(fM);if(r){if(!n){for(var i=(t.attr("class")||"").split(" "),a=0;a{"use strict";var AB=ec(),Dlt=Lh();Qse.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:Dlt.defaultLine,editType:"legend"},maxheight:{valType:"number",min:0,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:AB({editType:"legend"}),grouptitlefont:AB({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:AB({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var FL=ye(DL=>{"use strict";DL.isGrouped=function(t){return(t.traceorder||"").indexOf("grouped")!==-1};DL.isVertical=function(t){return t.orientation!=="h"};DL.isReversed=function(t){return(t.traceorder||"").indexOf("reversed")!==-1}});var EB=ye((aar,ele)=>{"use strict";var zL=qa(),Yp=Dr(),Flt=vl(),zlt=Gl(),Olt=SB(),qlt=c3(),MB=FL();function Blt(e,t,r,n){var i=t[e]||{},a=Flt.newContainer(r,e);function o(N,H){return Yp.coerce(i,a,Olt,N,H)}var s=Yp.coerceFont(o,"font",r.font);o("bgcolor",r.paper_bgcolor),o("bordercolor");var l=o("visible");if(!l)return;var u,c=function(N,H){var te=u._input,oe=u;return Yp.coerce(te,oe,zlt,N,H)},f=r.font||{},h=Yp.coerceFont(o,"grouptitlefont",f,{overrideDflt:{size:Math.round(f.size*1.1)}}),d=0,v=!1,_="normal",b=(r.shapes||[]).filter(function(N){return N.showlegend});function p(N){return zL.traceIs(N,"pie-like")&&N._length!=null&&(Array.isArray(N.legend)||Array.isArray(N.showlegend))}n.filter(p).forEach(function(N){N.visible&&d++;for(var H=0;HN.legend.length)for(var oe=N.legend.length;oe(e==="legend"?1:0));if(L===!1&&(r[e]=void 0),!(L===!1&&!i.uirevision)&&(o("uirevision",r.uirevision),L!==!1)){o("borderwidth");var x=o("orientation"),C=o("yref"),M=o("xref"),g=x==="h",P=C==="paper",T=M==="paper",z,O,V,G="left";g?(z=0,zL.getComponentMethod("rangeslider","isVisible")(t.xaxis)?P?(O=1.1,V="bottom"):(O=1,V="top"):P?(O=-.1,V="top"):(O=0,V="bottom")):(O=1,V="auto",T?z=1.02:(z=1,G="right")),Yp.coerce(i,a,{x:{valType:"number",editType:"legend",min:T?-2:0,max:T?3:1,dflt:z}},"x"),Yp.coerce(i,a,{y:{valType:"number",editType:"legend",min:P?-2:0,max:P?3:1,dflt:O}},"y"),o("traceorder",_),MB.isGrouped(r[e])&&o("tracegroupgap"),o("entrywidth"),o("entrywidthmode"),o("indentation"),o("itemsizing"),o("itemwidth"),o("itemclick"),o("itemdoubleclick"),o("groupclick"),o("xanchor",G),o("yanchor",V),o("maxheight"),o("valign"),Yp.noneOrAll(i,a,["x","y"]);var Z=o("title.text");if(Z){o("title.side",g?"left":"top");var j=Yp.extendFlat({},s,{size:Yp.bigFont(s.size)});Yp.coerceFont(o,"title.font",j)}}}ele.exports=function(t,r,n){var i,a=n.slice(),o=r.shapes;if(o)for(i=0;i{"use strict";var q3=qa(),CB=Dr(),Nlt=CB.pushUnique,kB=!0;tle.exports=function(t,r,n){var i=r._fullLayout;if(r._dragged||r._editing)return;var a=i.legend.itemclick,o=i.legend.itemdoubleclick,s=i.legend.groupclick;n===1&&a==="toggle"&&o==="toggleothers"&&kB&&r.data&&r._context.showTips&&CB.notifier(CB._(r,"Double-click on legend to isolate one trace"),"long"),kB=!1;var l;if(n===1?l=a:n===2&&(l=o),!l)return;var u=s==="togglegroup",c=i.hiddenlabels?i.hiddenlabels.slice():[],f=t.data()[0][0];if(f.groupTitle&&f.noClick)return;var h=r._fullData,d=(i.shapes||[]).filter(function(Gt){return Gt.showlegend}),v=h.concat(d),_=f.trace;_._isShape&&(_=_._fullInput);var b=_.legendgroup,p,k,E,S,L,x,C={},M=[],g=[],P=[];function T(Gt,Nt){var Jt=M.indexOf(Gt),sr=C.visible;return sr||(sr=C.visible=[]),M.indexOf(Gt)===-1&&(M.push(Gt),Jt=M.length-1),sr[Jt]=Nt,Jt}var z=(i.shapes||[]).map(function(Gt){return Gt._input}),O=!1;function V(Gt,Nt){z[Gt].visible=Nt,O=!0}function G(Gt,Nt){if(!(f.groupTitle&&!u)){var Jt=Gt._fullInput||Gt,sr=Jt._isShape,wr=Jt.index;wr===void 0&&(wr=Jt._index);var cr=Jt.visible===!1?!1:Nt;sr?V(wr,cr):T(wr,cr)}}var Z=_.legend,j=_._fullInput,N=j&&j._isShape;if(!N&&q3.traceIs(_,"pie-like")){var H=f.label,te=c.indexOf(H);if(l==="toggle")te===-1?c.push(H):c.splice(te,1);else if(l==="toggleothers"){var oe=te!==-1,_e=[];for(p=0;p{"use strict";ile.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var ole=ye((lar,ale)=>{"use strict";var nle=qa(),PB=FL();ale.exports=function(t,r,n){var i=r._inHover,a=PB.isGrouped(r),o=PB.isReversed(r),s={},l=[],u=!1,c={},f=0,h=0,d,v;function _(H,te,oe){if(r.visible!==!1&&!(n&&H!==r._id))if(te===""||!PB.isGrouped(r)){var _e="~~i"+f;l.push(_e),s[_e]=[oe],f++}else l.indexOf(te)===-1?(l.push(te),u=!0,s[te]=[oe]):s[te].push(oe)}for(d=0;dz&&(T=z)}g[d][0]._groupMinRank=T,g[d][0]._preGroupSort=d}var O=function(H,te){return H[0]._groupMinRank-te[0]._groupMinRank||H[0]._preGroupSort-te[0]._preGroupSort},V=function(H,te){return H.trace.legendrank-te.trace.legendrank||H._preSort-te._preSort};for(g.forEach(function(H,te){H[0]._preGroupSort=te}),g.sort(O),d=0;d{"use strict";var OL=Dr();function sle(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}Ib.formatPiePercent=function(t,r){var n=sle((t*100).toPrecision(3));return OL.numSeparate(n,r)+"%"};Ib.formatPieValue=function(t,r){var n=sle(t.toPrecision(10));return OL.numSeparate(n,r)};Ib.getFirstFilled=function(t,r){if(OL.isArrayOrTypedArray(t))for(var n=0;n{"use strict";var Ult=So(),Vlt=ka();lle.exports=function(t,r,n,i){var a=n.marker.pattern;a&&a.shape?Ult.pointStyle(t,n,i,r):Vlt.fill(t,r.color)}});var B3=ye((far,hle)=>{"use strict";var cle=ka(),fle=l_().castOption,Glt=ule();hle.exports=function(t,r,n,i){var a=n.marker.line,o=fle(a.color,r.pts)||cle.defaultLine,s=fle(a.width,r.pts)||0;t.call(Glt,r,n,i).style("stroke-width",s).call(cle.stroke,o)}});var FB=ye((har,yle)=>{"use strict";var qv=Oa(),IB=qa(),_v=Dr(),dle=_v.strTranslate,Kp=So(),w0=ka(),RB=pv().extractOpts,qL=Ru(),Hlt=B3(),jlt=l_().castOption,Wlt=LB(),vle=12,ple=5,Rb=2,Xlt=10,N3=5;yle.exports=function(t,r,n){var i=r._fullLayout;n||(n=i.legend);var a=n.itemsizing==="constant",o=n.itemwidth,s=(o+Wlt.itemGap*2)/2,l=dle(s,0),u=function(C,M,g,P){var T;if(C+1)T=C;else if(M&&M.width>0)T=M.width;else return 0;return a?P:Math.min(T,g)};t.each(function(C){var M=qv.select(this),g=_v.ensureSingle(M,"g","layers");g.style("opacity",C[0].trace.opacity);var P=n.indentation,T=n.valign,z=C[0].lineHeight,O=C[0].height;if(T==="middle"&&P===0||!z||!O)g.attr("transform",null);else{var V={top:1,bottom:-1}[T],G=V*(.5*(z-O+3))||0,Z=n.indentation;g.attr("transform",dle(Z,G))}var j=g.selectAll("g.legendfill").data([C]);j.enter().append("g").classed("legendfill",!0);var N=g.selectAll("g.legendlines").data([C]);N.enter().append("g").classed("legendlines",!0);var H=g.selectAll("g.legendsymbols").data([C]);H.enter().append("g").classed("legendsymbols",!0),H.selectAll("g.legendpoints").data([C]).enter().append("g").classed("legendpoints",!0)}).each(x).each(h).each(v).each(d).each(b).each(S).each(E).each(c).each(f).each(p).each(k);function c(C){var M=gle(C),g=M.showFill,P=M.showLine,T=M.showGradientLine,z=M.showGradientFill,O=M.anyFill,V=M.anyLine,G=C[0],Z=G.trace,j,N,H=RB(Z),te=H.colorscale,oe=H.reversescale,_e=function(Ae){if(Ae.size())if(g)Kp.fillGroupStyle(Ae,r,!0);else{var Fe="legendfill-"+Z.uid;Kp.gradient(Ae,r,Fe,DB(oe),te,"fill")}},Ee=function(Ae){if(Ae.size()){var Fe="legendline-"+Z.uid;Kp.lineGroupStyle(Ae),Kp.gradient(Ae,r,Fe,DB(oe),te,"stroke")}},Ce=qL.hasMarkers(Z)||!O?"M5,0":V?"M5,-2":"M5,-3",me=qv.select(this),ie=me.select(".legendfill").selectAll("path").data(g||z?[C]:[]);if(ie.enter().append("path").classed("js-fill",!0),ie.exit().remove(),ie.attr("d",Ce+"h"+o+"v6h-"+o+"z").call(_e),P||T){var Se=u(void 0,Z.line,Xlt,ple);N=_v.minExtend(Z,{line:{width:Se}}),j=[_v.minExtend(G,{trace:N})]}var Le=me.select(".legendlines").selectAll("path").data(P||T?[j]:[]);Le.enter().append("path").classed("js-line",!0),Le.exit().remove(),Le.attr("d",Ce+(T?"l"+o+",0.0001":"h"+o)).call(P?Kp.lineGroupStyle:Ee)}function f(C){var M=gle(C),g=M.anyFill,P=M.anyLine,T=M.showLine,z=M.showMarker,O=C[0],V=O.trace,G=!z&&!P&&!g&&qL.hasText(V),Z,j;function N(ie,Se,Le,Ae){var Fe=_v.nestedProperty(V,ie).get(),Pe=_v.isArrayOrTypedArray(Fe)&&Se?Se(Fe):Fe;if(a&&Pe&&Ae!==void 0&&(Pe=Ae),Le){if(PeLe[1])return Le[1]}return Pe}function H(ie){return O._distinct&&O.index&&ie[O.index]?ie[O.index]:ie[0]}if(z||G||T){var te={},oe={};if(z){te.mc=N("marker.color",H),te.mx=N("marker.symbol",H),te.mo=N("marker.opacity",_v.mean,[.2,1]),te.mlc=N("marker.line.color",H),te.mlw=N("marker.line.width",_v.mean,[0,5],Rb),oe.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var _e=N("marker.size",_v.mean,[2,16],vle);te.ms=_e,oe.marker.size=_e}T&&(oe.line={width:N("line.width",H,[0,10],ple)}),G&&(te.tx="Aa",te.tp=N("textposition",H),te.ts=10,te.tc=N("textfont.color",H),te.tf=N("textfont.family",H),te.tw=N("textfont.weight",H),te.ty=N("textfont.style",H),te.tv=N("textfont.variant",H),te.tC=N("textfont.textcase",H),te.tE=N("textfont.lineposition",H),te.tS=N("textfont.shadow",H)),Z=[_v.minExtend(O,te)],j=_v.minExtend(V,oe),j.selectedpoints=null,j.texttemplate=null}var Ee=qv.select(this).select("g.legendpoints"),Ce=Ee.selectAll("path.scatterpts").data(z?Z:[]);Ce.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",l),Ce.exit().remove(),Ce.call(Kp.pointStyle,j,r),z&&(Z[0].mrc=3);var me=Ee.selectAll("g.pointtext").data(G?Z:[]);me.enter().append("g").classed("pointtext",!0).append("text").attr("transform",l),me.exit().remove(),me.selectAll("text").call(Kp.textPointStyle,j,r)}function h(C){var M=C[0].trace,g=M.type==="waterfall";if(C[0]._distinct&&g){var P=C[0].trace[C[0].dir].marker;return C[0].mc=P.color,C[0].mlw=P.line.width,C[0].mlc=P.line.color,_(C,this,"waterfall")}var T=[];M.visible&&g&&(T=C[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var z=qv.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(T);z.enter().append("path").classed("legendwaterfall",!0).attr("transform",l).style("stroke-miterlimit",1),z.exit().remove(),z.each(function(O){var V=qv.select(this),G=M[O[0]].marker,Z=u(void 0,G.line,N3,Rb);V.attr("d",O[1]).style("stroke-width",Z+"px").call(w0.fill,G.color),Z&&V.call(w0.stroke,G.line.color)})}function d(C){_(C,this)}function v(C){_(C,this,"funnel")}function _(C,M,g){var P=C[0].trace,T=P.marker||{},z=T.line||{},O=T.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",V=g?P.visible&&P.type===g:IB.traceIs(P,"bar"),G=qv.select(M).select("g.legendpoints").selectAll("path.legend"+g).data(V?[C]:[]);G.enter().append("path").classed("legend"+g,!0).attr("d",O).attr("transform",l),G.exit().remove(),G.each(function(Z){var j=qv.select(this),N=Z[0],H=u(N.mlw,T.line,N3,Rb);j.style("stroke-width",H+"px");var te=N.mcc;if(!n._inHover&&"mc"in N){var oe=RB(T),_e=oe.mid;_e===void 0&&(_e=(oe.max+oe.min)/2),te=Kp.tryColorscale(T,"")(_e)}var Ee=te||N.mc||T.color,Ce=T.pattern,me=Kp.getPatternAttr,ie=Ce&&(me(Ce.shape,0,"")||me(Ce.path,0,""));if(ie){var Se=me(Ce.bgcolor,0,null),Le=me(Ce.fgcolor,0,null),Ae=Ce.fgopacity,Fe=mle(Ce.size,8,10),Pe=mle(Ce.solidity,.5,1),ge="legend-"+P.uid;j.call(Kp.pattern,"legend",r,ge,ie,Fe,Pe,te,Ce.fillmode,Se,Le,Ae)}else j.call(w0.fill,Ee);H&&w0.stroke(j,N.mlc||z.color)})}function b(C){var M=C[0].trace,g=qv.select(this).select("g.legendpoints").selectAll("path.legendbox").data(M.visible&&IB.traceIs(M,"box-violin")?[C]:[]);g.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",l),g.exit().remove(),g.each(function(){var P=qv.select(this);if((M.boxpoints==="all"||M.points==="all")&&w0.opacity(M.fillcolor)===0&&w0.opacity((M.line||{}).color)===0){var T=_v.minExtend(M,{marker:{size:a?vle:_v.constrain(M.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});g.call(Kp.pointStyle,T,r)}else{var z=u(void 0,M.line,N3,Rb);P.style("stroke-width",z+"px").call(w0.fill,M.fillcolor),z&&w0.stroke(P,M.line.color)}})}function p(C){var M=C[0].trace,g=qv.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(M.visible&&M.type==="candlestick"?[C,C]:[]);g.enter().append("path").classed("legendcandle",!0).attr("d",function(P,T){return T?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",l).style("stroke-miterlimit",1),g.exit().remove(),g.each(function(P,T){var z=qv.select(this),O=M[T?"increasing":"decreasing"],V=u(void 0,O.line,N3,Rb);z.style("stroke-width",V+"px").call(w0.fill,O.fillcolor),V&&w0.stroke(z,O.line.color)})}function k(C){var M=C[0].trace,g=qv.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(M.visible&&M.type==="ohlc"?[C,C]:[]);g.enter().append("path").classed("legendohlc",!0).attr("d",function(P,T){return T?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",l).style("stroke-miterlimit",1),g.exit().remove(),g.each(function(P,T){var z=qv.select(this),O=M[T?"increasing":"decreasing"],V=u(void 0,O.line,N3,Rb);z.style("fill","none").call(Kp.dashLine,O.line.dash,V),V&&w0.stroke(z,O.line.color)})}function E(C){L(C,this,"pie")}function S(C){L(C,this,"funnelarea")}function L(C,M,g){var P=C[0],T=P.trace,z=g?T.visible&&T.type===g:IB.traceIs(T,g),O=qv.select(M).select("g.legendpoints").selectAll("path.legend"+g).data(z?[C]:[]);if(O.enter().append("path").classed("legend"+g,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",l),O.exit().remove(),O.size()){var V=T.marker||{},G=u(jlt(V.line.width,P.pts),V.line,N3,Rb),Z="pieLike",j=_v.minExtend(T,{marker:{line:{width:G}}},Z),N=_v.minExtend(P,{trace:j},Z);Hlt(O,N,j,r)}}function x(C){var M=C[0].trace,g,P=[];if(M.visible)switch(M.type){case"histogram2d":case"heatmap":P=[["M-15,-2V4H15V-2Z"]],g=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":P=[["M-6,-6V6H6V-6Z"]],g=!0;break;case"densitymapbox":case"densitymap":P=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],g="radial";break;case"cone":P=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],g=!1;break;case"streamtube":P=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],g=!1;break;case"surface":P=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],g=!0;break;case"mesh3d":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],g=!1;break;case"volume":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],g=!0;break;case"isosurface":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],g=!1;break}var T=qv.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(P);T.enter().append("path").classed("legend3dandfriends",!0).attr("transform",l).style("stroke-miterlimit",1),T.exit().remove(),T.each(function(z,O){var V=qv.select(this),G=RB(M),Z=G.colorscale,j=G.reversescale,N=function(_e){if(_e.size()){var Ee="legendfill-"+M.uid;Kp.gradient(_e,r,Ee,DB(j,g==="radial"),Z,"fill")}},H;if(Z){if(!g){var oe=Z.length;H=O===0?Z[j?oe-1:0][1]:O===1?Z[j?0:oe-1][1]:Z[Math.floor((oe-1)/2)][1]}}else{var te=M.vertexcolor||M.facecolor||M.color;H=_v.isArrayOrTypedArray(te)?te[O]||te[0]:te}V.attr("d",z[0]),H?V.call(w0.fill,H):V.call(N)})}};function DB(e,t){var r=t?"radial":"horizontal";return r+(e?"":"reversed")}function gle(e){var t=e[0].trace,r=t.contours,n=qL.hasLines(t),i=qL.hasMarkers(t),a=t.visible&&t.fill&&t.fill!=="none",o=!1,s=!1;if(r){var l=r.coloring;l==="lines"?o=!0:n=l==="none"||l==="heatmap"||r.showlines,r.type==="constraint"?a=r._operation!=="=":(l==="fill"||l==="heatmap")&&(s=!0)}return{showMarker:i,showLine:n,showFill:a,showGradientLine:o,showGradientFill:s,anyLine:n||o,anyFill:a||s}}function mle(e,t,r){return e&&_v.isArrayOrTypedArray(e)?t:e>r?r:e}});var BB=ye((dar,kle)=>{"use strict";var Mp=Oa(),Rh=Dr(),OB=Mc(),G3=qa(),_le=_3(),zB=yv(),Dh=So(),NL=ka(),Db=ru(),xle=rle(),ed=LB(),qB=$h(),Mle=qB.LINE_SPACING,V3=qB.FROM_TL,ble=qB.FROM_BR,wle=ole(),Zlt=FB(),Tle=FL(),U3=1,Ylt=/^legend[0-9]*$/;kle.exports=function(t,r){if(r)Ale(t,r);else{var n=t._fullLayout,i=n._legends,a=n._infolayer.selectAll('[class^="legend"]');a.each(function(){var u=Mp.select(this),c=u.attr("class"),f=c.split(" ")[0];f.match(Ylt)&&i.indexOf(f)===-1&&u.remove()});for(var o=0;o1)}var v=n.hiddenlabels||[];if(!s&&(!n.showlegend||!l.length))return o.selectAll("."+i).remove(),n._topdefs.select("#"+a).remove(),OB.autoMargin(e,i);var _=Rh.ensureSingle(o,"g",i,function(M){s||M.attr("pointer-events","all")}),b=Rh.ensureSingleById(n._topdefs,"clipPath",a,function(M){M.append("rect")}),p=Rh.ensureSingle(_,"rect","bg",function(M){M.attr("shape-rendering","crispEdges")});p.call(NL.stroke,r.bordercolor).call(NL.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px");var k=Rh.ensureSingle(_,"g","scrollbox"),E=r.title;r._titleWidth=0,r._titleHeight=0;var S;E.text?(S=Rh.ensureSingle(k,"text",i+"titletext"),S.attr("text-anchor","start").call(Dh.font,E.font).text(E.text),UL(S,k,e,r,U3)):k.selectAll("."+i+"titletext").remove();var L=Rh.ensureSingle(_,"rect","scrollbar",function(M){M.attr(ed.scrollBarEnterAttrs).call(NL.fill,ed.scrollBarColor)}),x=k.selectAll("g.groups").data(l);x.enter().append("g").attr("class","groups"),x.exit().remove();var C=x.selectAll("g.traces").data(Rh.identity);C.enter().append("g").attr("class","traces"),C.exit().remove(),C.style("opacity",function(M){var g=M[0].trace;return G3.traceIs(g,"pie-like")?v.indexOf(M[0].label)!==-1?.5:1:g.visible==="legendonly"?.5:1}).each(function(){Mp.select(this).call(Jlt,e,r)}).call(Zlt,e,r).each(function(){s||Mp.select(this).call($lt,e,i)}),Rh.syncOrAsync([OB.previousPromises,function(){return tut(e,x,C,r)},function(){var M=n._size,g=r.borderwidth,P=r.xref==="paper",T=r.yref==="paper";if(E.text&&Klt(S,r,g),!s){var z,O;P?z=M.l+M.w*r.x-V3[VL(r)]*r._width:z=n.width*r.x-V3[VL(r)]*r._width,T?O=M.t+M.h*(1-r.y)-V3[GL(r)]*r._effHeight:O=n.height*(1-r.y)-V3[GL(r)]*r._effHeight;var V=rut(e,i,z,O);if(V)return;if(n.margin.autoexpand){var G=z,Z=O;z=P?Rh.constrain(z,0,n.width-r._width):G,O=T?Rh.constrain(O,0,n.height-r._effHeight):Z,z!==G&&Rh.log("Constrain "+i+".x to make legend fit inside graph"),O!==Z&&Rh.log("Constrain "+i+".y to make legend fit inside graph")}Dh.setTranslate(_,z,O)}if(L.on(".drag",null),_.on("wheel",null),s||r._height<=r._maxHeight||e._context.staticPlot){var j=r._effHeight;s&&(j=r._height),p.attr({width:r._width-g,height:j-g,x:g/2,y:g/2}),Dh.setTranslate(k,0,0),b.select("rect").attr({width:r._width-2*g,height:j-2*g,x:g,y:g}),Dh.setClipUrl(k,a,e),Dh.setRect(L,0,0,0,0),delete r._scrollY}else{var N=Math.max(ed.scrollBarMinHeight,r._effHeight*r._effHeight/r._height),H=r._effHeight-N-2*ed.scrollBarMargin,te=r._height-r._effHeight,oe=H/te,_e=Math.min(r._scrollY||0,te);p.attr({width:r._width-2*g+ed.scrollBarWidth+ed.scrollBarMargin,height:r._effHeight-g,x:g/2,y:g/2}),b.select("rect").attr({width:r._width-2*g+ed.scrollBarWidth+ed.scrollBarMargin,height:r._effHeight-2*g,x:g,y:g+_e}),Dh.setClipUrl(k,a,e),Fe(_e,N,oe),_.on("wheel",function(){_e=Rh.constrain(r._scrollY+Mp.event.deltaY/te*H,0,te),Fe(_e,N,oe),_e!==0&&_e!==te&&Mp.event.preventDefault()});var Ee,Ce,me,ie=function(Ze,ut,pt){var Zt=(pt-ut)/oe+Ze;return Rh.constrain(Zt,0,te)},Se=function(Ze,ut,pt){var Zt=(ut-pt)/oe+Ze;return Rh.constrain(Zt,0,te)},Le=Mp.behavior.drag().on("dragstart",function(){var Ze=Mp.event.sourceEvent;Ze.type==="touchstart"?Ee=Ze.changedTouches[0].clientY:Ee=Ze.clientY,me=_e}).on("drag",function(){var Ze=Mp.event.sourceEvent;Ze.buttons===2||Ze.ctrlKey||(Ze.type==="touchmove"?Ce=Ze.changedTouches[0].clientY:Ce=Ze.clientY,_e=ie(me,Ee,Ce),Fe(_e,N,oe))});L.call(Le);var Ae=Mp.behavior.drag().on("dragstart",function(){var Ze=Mp.event.sourceEvent;Ze.type==="touchstart"&&(Ee=Ze.changedTouches[0].clientY,me=_e)}).on("drag",function(){var Ze=Mp.event.sourceEvent;Ze.type==="touchmove"&&(Ce=Ze.changedTouches[0].clientY,_e=Se(me,Ee,Ce),Fe(_e,N,oe))});k.call(Ae)}function Fe(Ze,ut,pt){r._scrollY=e._fullLayout[i]._scrollY=Ze,Dh.setTranslate(k,0,-Ze),Dh.setRect(L,r._width,ed.scrollBarMargin+Ze*pt,ed.scrollBarWidth,ut),b.select("rect").attr("y",g+Ze)}if(e._context.edits.legendPosition){var Pe,ge,Re,ce;_.classed("cursor-move",!0),zB.init({element:_.node(),gd:e,prepFn:function(Ze){if(Ze.target!==L.node()){var ut=Dh.getTranslate(_);Re=ut.x,ce=ut.y}},moveFn:function(Ze,ut){if(Re!==void 0&&ce!==void 0){var pt=Re+Ze,Zt=ce+ut;Dh.setTranslate(_,pt,Zt),Pe=zB.align(pt,r._width,M.l,M.l+M.w,r.xanchor),ge=zB.align(Zt+r._height,-r._height,M.t+M.h,M.t,r.yanchor)}},doneFn:function(){if(Pe!==void 0&&ge!==void 0){var Ze={};Ze[i+".x"]=Pe,Ze[i+".y"]=ge,G3.call("_guiRelayout",e,Ze)}},clickFn:function(Ze,ut){var pt=o.selectAll("g.traces").filter(function(){var Zt=this.getBoundingClientRect();return ut.clientX>=Zt.left&&ut.clientX<=Zt.right&&ut.clientY>=Zt.top&&ut.clientY<=Zt.bottom});pt.size()>0&&Ele(e,_,pt,Ze,ut)}})}}],e)}}function BL(e,t,r){var n=e[0],i=n.width,a=t.entrywidthmode,o=n.trace.legendwidth||t.entrywidth;return a==="fraction"?t._maxWidth*o:r+(o||i)}function Ele(e,t,r,n,i){var a=r.data()[0][0].trace,o={event:i,node:r.node(),curveNumber:a.index,expandedIndex:a.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};a._group&&(o.group=a._group),G3.traceIs(a,"pie-like")&&(o.label=r.datum()[0].label);var s=_le.triggerHandler(e,"plotly_legendclick",o);if(n===1){if(s===!1)return;t._clickTimeout=setTimeout(function(){e._fullLayout&&xle(r,e,n)},e._context.doubleClickDelay)}else if(n===2){t._clickTimeout&&clearTimeout(t._clickTimeout),e._legendMouseDownTime=0;var l=_le.triggerHandler(e,"plotly_legenddoubleclick",o);l!==!1&&s!==!1&&xle(r,e,n)}}function Jlt(e,t,r){var n=HL(r),i=e.data()[0][0],a=i.trace,o=G3.traceIs(a,"pie-like"),s=!r._inHover&&t._context.edits.legendText&&!o,l=r._maxNameLength,u,c;i.groupTitle?(u=i.groupTitle.text,c=i.groupTitle.font):(c=r.font,r.entries?u=i.text:(u=o?i.label:a.name,a._meta&&(u=Rh.templateString(u,a._meta))));var f=Rh.ensureSingle(e,"text",n+"text");f.attr("text-anchor","start").call(Dh.font,c).text(s?Sle(u,l):u);var h=r.indentation+r.itemwidth+ed.itemGap*2;Db.positionText(f,h,0),s?f.call(Db.makeEditable,{gd:t,text:u}).call(UL,e,t,r).on("edit",function(d){this.text(Sle(d,l)).call(UL,e,t,r);var v=i.trace._fullInput||{},_={};return _.name=d,v._isShape?G3.call("_guiRelayout",t,"shapes["+a.index+"].name",_.name):G3.call("_guiRestyle",t,_,a.index)}):UL(f,e,t,r)}function Sle(e,t){var r=Math.max(4,t);if(e&&e.trim().length>=r/2)return e;e=e||"";for(var n=r-e.length;n>0;n--)e+=" ";return e}function $lt(e,t,r){var n=t._context.doubleClickDelay,i,a=1,o=Rh.ensureSingle(e,"rect",r+"toggle",function(s){t._context.staticPlot||s.style("cursor","pointer").attr("pointer-events","all"),s.call(NL.fill,"rgba(0,0,0,0)")});t._context.staticPlot||(o.on("mousedown",function(){i=new Date().getTime(),i-t._legendMouseDownTimen&&(a=Math.max(a-1,1)),Ele(t,s,e,a,Mp.event)}}))}function UL(e,t,r,n,i){n._inHover&&e.attr("data-notex",!0),Db.convertToTspans(e,r,function(){Qlt(t,r,n,i)})}function Qlt(e,t,r,n){var i=e.data()[0][0],a=i&&i.trace.showlegend;if(Array.isArray(a)&&(a=a[i.i]!==!1),!r._inHover&&i&&!a){e.remove();return}var o=e.select("g[class*=math-group]"),s=o.node(),l=HL(r);r||(r=t._fullLayout[l]);var u=r.borderwidth,c;n===U3?c=r.title.font:i.groupTitle?c=i.groupTitle.font:c=r.font;var f=c.size*Mle,h,d;if(s){var v=Dh.bBox(s);h=v.height,d=v.width,n===U3?Dh.setTranslate(o,u,u+h*.75):Dh.setTranslate(o,0,h*.25)}else{var _="."+l+(n===U3?"title":"")+"text",b=e.select(_),p=Db.lineCount(b),k=b.node();if(h=f*p,d=k?Dh.bBox(k).width:0,n===U3)r.title.side==="left"&&(d+=ed.itemGap*2),Db.positionText(b,u+ed.titlePad,u+f);else{var E=ed.itemGap*2+r.indentation+r.itemwidth;i.groupTitle&&(E=ed.itemGap,d-=r.indentation+r.itemwidth),Db.positionText(b,E,-f*((p-1)/2-.3))}}n===U3?(r._titleWidth=d,r._titleHeight=h):(i.lineHeight=f,i.height=Math.max(h,16)+3,i.width=d)}function eut(e){var t=0,r=0,n=e.title.side;return n&&(n.indexOf("left")!==-1&&(t=e._titleWidth),n.indexOf("top")!==-1&&(r=e._titleHeight)),[t,r]}function tut(e,t,r,n){var i=e._fullLayout,a=HL(n);n||(n=i[a]);var o=i._size,s=Tle.isVertical(n),l=Tle.isGrouped(n),u=n.entrywidthmode==="fraction",c=n.borderwidth,f=2*c,h=ed.itemGap,d=n.indentation+n.itemwidth+h*2,v=2*(c+h),_=GL(n),b=n.y<0||n.y===0&&_==="top",p=n.y>1||n.y===1&&_==="bottom",k=n.tracegroupgap,E={};let{orientation:S,yref:L}=n,{maxheight:x}=n,C=b||p||S!=="v"||L!=="paper";x||(x=C?.5:1);let M=C?i.height:o.h;n._maxHeight=Math.max(x>1?x:x*M,30);var g=0;n._width=0,n._height=0;var P=eut(n);if(s)r.each(function(Fe){var Pe=Fe[0].height;Dh.setTranslate(this,c+P[0],c+P[1]+n._height+Pe/2+h),n._height+=Pe,n._width=Math.max(n._width,Fe[0].width)}),g=d+n._width,n._width+=h+d+f,n._height+=v,l&&(t.each(function(Fe,Pe){Dh.setTranslate(this,0,Pe*n.tracegroupgap)}),n._height+=(n._lgroupsLength-1)*n.tracegroupgap);else{var T=VL(n),z=n.x<0||n.x===0&&T==="right",O=n.x>1||n.x===1&&T==="left",V=p||b,G=i.width/2;n._maxWidth=Math.max(z?V&&T==="left"?o.l+o.w:G:O?V&&T==="right"?o.r+o.w:G:o.w,2*d);var Z=0,j=0;r.each(function(Fe){var Pe=BL(Fe,n,d);Z=Math.max(Z,Pe),j+=Pe}),g=null;var N=0;if(l){var H=0,te=0,oe=0;t.each(function(){var Fe=0,Pe=0;Mp.select(this).selectAll("g.traces").each(function(Re){var ce=BL(Re,n,d),Ze=Re[0].height;Dh.setTranslate(this,P[0],P[1]+c+h+Ze/2+Pe),Pe+=Ze,Fe=Math.max(Fe,ce),E[Re[0].trace.legendgroup]=Fe});var ge=Fe+h;te>0&&ge+c+te>n._maxWidth?(N=Math.max(N,te),te=0,oe+=H+k,H=Pe):H=Math.max(H,Pe),Dh.setTranslate(this,te,oe),te+=ge}),n._width=Math.max(N,te)+c,n._height=oe+H+v}else{var _e=r.size(),Ee=j+f+(_e-1)*h=n._maxWidth&&(N=Math.max(N,Se),me=0,ie+=Ce,n._height+=Ce,Ce=0),Dh.setTranslate(this,P[0]+c+me,P[1]+c+ie+Pe/2+h),Se=me+ge+h,me+=Re,Ce=Math.max(Ce,Pe)}),Ee?(n._width=me+f,n._height=Ce+v):(n._width=Math.max(N,Se)+f,n._height+=Ce+v)}}n._width=Math.ceil(Math.max(n._width+P[0],n._titleWidth+2*(c+ed.titlePad))),n._height=Math.ceil(Math.max(n._height+P[1],n._titleHeight+2*(c+ed.itemGap))),n._effHeight=Math.min(n._height,n._maxHeight);var Le=e._context.edits,Ae=Le.legendText||Le.legendPosition;r.each(function(Fe){var Pe=Mp.select(this).select("."+a+"toggle"),ge=Fe[0].height,Re=Fe[0].trace.legendgroup,ce=BL(Fe,n,d);l&&Re!==""&&(ce=E[Re]);var Ze=Ae?d:g||ce;!s&&!u&&(Ze+=h/2),Dh.setRect(Pe,0,-ge/2,Ze,ge)})}function rut(e,t,r,n){var i=e._fullLayout,a=i[t],o=VL(a),s=GL(a),l=a.xref==="paper",u=a.yref==="paper";e._fullLayout._reservedMargin[t]={};var c=a.y<.5?"b":"t",f=a.x<.5?"l":"r",h={r:i.width-r,l:r+a._width,b:i.height-n,t:n+a._effHeight};if(l&&u)return OB.autoMargin(e,t,{x:a.x,y:a.y,l:a._width*V3[o],r:a._width*ble[o],b:a._effHeight*ble[s],t:a._effHeight*V3[s]});l?e._fullLayout._reservedMargin[t][c]=h[c]:u||a.orientation==="v"?e._fullLayout._reservedMargin[t][f]=h[f]:e._fullLayout._reservedMargin[t][c]=h[c]}function VL(e){return Rh.isRightAnchor(e)?"right":Rh.isCenterAnchor(e)?"center":"left"}function GL(e){return Rh.isBottomAnchor(e)?"bottom":Rh.isMiddleAnchor(e)?"middle":"top"}function HL(e){return e._id||"legend"}});var GB=ye(VB=>{"use strict";var Fb=Oa(),My=Eo(),Cle=cd(),zf=Dr(),iut=zf.pushUnique,NB=zf.strTranslate,nut=zf.strRotate,aut=_3(),T0=ru(),out=$se(),bm=So(),vd=ka(),jL=yv(),wm=ho(),sut=hd().zindexSeparator,j3=qa(),Mg=ip(),zb=zS(),lut=EB(),uut=BB(),Ole=zb.YANGLE,UB=Math.PI*Ole/180,cut=1/Math.sin(UB),fut=Math.cos(UB),hut=Math.sin(UB),Qc=zb.HOVERARROWSIZE,sl=zb.HOVERTEXTPAD,Lle={box:!0,ohlc:!0,violin:!0,candlestick:!0},dut={scatter:!0,scattergl:!0,splom:!0};function Ple(e,t){return e.distance-t.distance}VB.hover=function(t,r,n,i){t=zf.getGraphDiv(t);var a=r.target;zf.throttle(t._fullLayout._uid+zb.HOVERID,zb.HOVERMINTIME,function(){vut(t,r,n,i,a)})};VB.loneHover=function(t,r){var n=!0;Array.isArray(t)||(n=!1,t=[t]);var i=r.gd,a=Vle(i),o=Gle(i),s=t.map(function(b){var p=b._x0||b.x0||b.x||0,k=b._x1||b.x1||b.x||0,E=b._y0||b.y0||b.y||0,S=b._y1||b.y1||b.y||0,L=b.eventData;if(L){var x=Math.min(p,k),C=Math.max(p,k),M=Math.min(E,S),g=Math.max(E,S),P=b.trace;if(j3.traceIs(P,"gl3d")){var T=i._fullLayout[P.scene]._scene.container,z=T.offsetLeft,O=T.offsetTop;x+=z,C+=z,M+=O,g+=O}L.bbox={x0:x+o,x1:C+o,y0:M+a,y1:g+a},r.inOut_bbox&&r.inOut_bbox.push(L.bbox)}else L=!1;return{color:b.color||vd.defaultLine,x0:b.x0||b.x||0,x1:b.x1||b.x||0,y0:b.y0||b.y||0,y1:b.y1||b.y||0,xLabel:b.xLabel,yLabel:b.yLabel,zLabel:b.zLabel,text:b.text,name:b.name,idealAlign:b.idealAlign,borderColor:b.borderColor,fontFamily:b.fontFamily,fontSize:b.fontSize,fontColor:b.fontColor,fontWeight:b.fontWeight,fontStyle:b.fontStyle,fontVariant:b.fontVariant,nameLength:b.nameLength,textAlign:b.textAlign,trace:b.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:b.hovertemplate||!1,hovertemplateLabels:b.hovertemplateLabels||!1,eventData:L}}),l=!1,u=Ble(s,{gd:i,hovermode:"closest",rotateLabels:l,bgColor:r.bgColor||vd.background,container:Fb.select(r.container),outerContainer:r.outerContainer||r.container}),c=u.hoverLabels,f=5,h=0,d=0;c.sort(function(b,p){return b.y0-p.y0}).each(function(b,p){var k=b.y0-b.by/2;k-fC[0]._length||ce<0||ce>M[0]._length)return jL.unhoverRaw(e,t)}if(t.pointerX=Re+C[0]._offset,t.pointerY=ce+M[0]._offset,"xval"in t?Z=Mg.flat(a,t.xval):Z=Mg.p2c(C,Re),"yval"in t?j=Mg.flat(a,t.yval):j=Mg.p2c(M,ce),!My(Z[0])||!My(j[0]))return zf.warn("Fx.hover failed",t,e),jL.unhoverRaw(e,t)}var pt=1/0;function Zt(wi,On){for(H=0;HLe&&(V.splice(0,Le),pt=V[0].distance),f&&O!==0&&V.length===0){Se.distance=O,Se.index=!1;var Ut=oe._module.hoverPoints(Se,me,ie,"closest",{hoverLayer:s._hoverlayer});if(Ut&&(Ut=Ut.filter(function(ri){return ri.spikeDistance<=O})),Ut&&Ut.length){var wt,rr=Ut.filter(function(ri){return ri.xa.showspikes&&ri.xa.spikesnap!=="hovered data"});if(rr.length){var nr=rr[0];My(nr.x0)&&My(nr.y0)&&(wt=lt(nr),(!Ae.vLinePoint||Ae.vLinePoint.spikeDistance>wt.spikeDistance)&&(Ae.vLinePoint=wt))}var Er=Ut.filter(function(ri){return ri.ya.showspikes&&ri.ya.spikesnap!=="hovered data"});if(Er.length){var Xr=Er[0];My(Xr.x0)&&My(Xr.y0)&&(wt=lt(Xr),(!Ae.hLinePoint||Ae.hLinePoint.spikeDistance>wt.spikeDistance)&&(Ae.hLinePoint=wt))}}}}}Zt();function st(wi,On,qn){for(var Fn=null,ra=1/0,la,Ut=0;Utwi.trace.index===It.trace.index):V=[It];var mt=V.length,er=zle("x",It,s),lr=zle("y",It,s);Zt(er,lr);var Tr=[],Lr={},ti=0,Br=function(wi){var On=Lle[wi.trace.type]?qle(wi):wi.trace.index;if(!Lr[On])ti++,Lr[On]=ti,Tr.push(wi);else{var qn=Lr[On]-1,Fn=Tr[qn];qn>0&&Math.abs(wi.distance)mt-1;Vr--)Br(V[Vr]);V=Tr,sr()}var dt=e._hoverdata,Ge=[],Je=Vle(e),je=Gle(e);for(let wi of V){var tt=Mg.makeEventData(wi,wi.trace,wi.cd);if(wi.hovertemplate!==!1){var xt=!1;wi.cd[wi.index]&&wi.cd[wi.index].ht&&(xt=wi.cd[wi.index].ht),wi.hovertemplate=xt||wi.trace.hovertemplate||!1}if(wi.xa&&wi.ya){var Ie=wi.x0+wi.xa._offset,xe=wi.x1+wi.xa._offset,ke=wi.y0+wi.ya._offset,vt=wi.y1+wi.ya._offset,ir=Math.min(Ie,xe),ar=Math.max(Ie,xe),vr=Math.min(ke,vt),ii=Math.max(ke,vt);tt.bbox={x0:ir+je,x1:ar+je,y0:vr+Je,y1:ii+Je}}wi.eventData=[tt],Ge.push(tt)}e._hoverdata=Ge;var pi=h==="y"&&(G.length>1||V.length>1)||h==="closest"&&Fe&&V.length>1,$r=vd.combine(s.plot_bgcolor||vd.background,s.paper_bgcolor),di=Ble(V,{gd:e,hovermode:h,rotateLabels:pi,bgColor:$r,container:s._hoverlayer,outerContainer:s._paper.node(),commonLabelOpts:s.hoverlabel,hoverdistance:s.hoverdistance}),ji=di.hoverLabels;if(Mg.isUnifiedHover(h)||(gut(ji,pi,s,di.commonLabelBoundingBox),Ule(ji,pi,s._invScaleX,s._invScaleY)),i&&i.tagName){var In=j3.getComponentMethod("annotations","hasClickToShow")(e,Ge);out(Fb.select(i),In?"pointer":"")}!i||n||!_ut(e,t,dt)||(dt&&e.emit("plotly_unhover",{event:t,points:dt}),e.emit("plotly_hover",{event:t,points:e._hoverdata,xaxes:C,yaxes:M,xvals:Z,yvals:j}))}function qle(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var put=/([\s\S]*)<\/extra>/;function Ble(e,t){var r=t.gd,n=r._fullLayout,i=t.hovermode,a=t.rotateLabels,o=t.bgColor,s=t.container,l=t.outerContainer,u=t.commonLabelOpts||{};if(e.length===0)return[[]];var c=t.fontFamily||zb.HOVERFONT,f=t.fontSize||zb.HOVERFONTSIZE,h=t.fontWeight||n.font.weight,d=t.fontStyle||n.font.style,v=t.fontVariant||n.font.variant,_=t.fontTextcase||n.font.textcase,b=t.fontLineposition||n.font.lineposition,p=t.fontShadow||n.font.shadow,k=e[0],E=k.xa,S=k.ya,L=i.charAt(0),x=L+"Label",C=k[x];if(C===void 0&&E.type==="multicategory")for(var M=0;Mn.width-Je&&(je=n.width-Je),It.attr("d","M"+(Vr-je)+",0L"+(Vr-je+Qc)+","+Ge+Qc+"H"+Je+"v"+Ge+(sl*2+Br.height)+"H"+-Je+"V"+Ge+Qc+"H"+(Vr-je-Qc)+"Z"),Vr=je,H.minX=Vr-Je,H.maxX=Vr+Je,E.side==="top"?(H.minY=dt-(sl*2+Br.height),H.maxY=dt-sl):(H.minY=dt+sl,H.maxY=dt+(sl*2+Br.height))}else{var tt,xt,Ie;S.side==="right"?(tt="start",xt=1,Ie="",Vr=E._offset+E._length):(tt="end",xt=-1,Ie="-",Vr=E._offset),dt=S._offset+(k.y0+k.y1)/2,mt.attr("text-anchor",tt),It.attr("d","M0,0L"+Ie+Qc+","+Qc+"V"+(sl+Br.height/2)+"h"+Ie+(sl*2+Br.width)+"V-"+(sl+Br.height/2)+"H"+Ie+Qc+"V-"+Qc+"Z"),H.minY=dt-(sl+Br.height/2),H.maxY=dt+(sl+Br.height/2),S.side==="right"?(H.minX=Vr+Qc,H.maxX=Vr+Qc+(sl*2+Br.width)):(H.minX=Vr-Qc-(sl*2+Br.width),H.maxX=Vr-Qc);var xe=Br.height/2,ke=P-Br.top-xe,vt="clip"+n._uid+"commonlabel"+S._id,ir;if(VrIt.hoverinfo!=="none");if(_t.length===0)return[];var te=n.hoverlabel,oe=te.font,_e=_t[0],Ee=((i==="x unified"?_e.xa:_e.ya).unifiedhovertitle||{}).text,Ce=Ee?zf.hovertemplateString({data:i==="x unified"?[{xa:_e.xa,x:_e.xVal}]:[{ya:_e.ya,y:_e.yVal}],fallback:_e.trace.hovertemplatefallback,locale:n._d3locale,template:Ee}):C,me={showlegend:!0,legend:{title:{text:Ce,font:oe},font:oe,bgcolor:te.bgcolor,bordercolor:te.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:n.legend?n.legend.traceorder:void 0,orientation:"v"}},ie={font:oe};lut(me,ie,r._fullData);var Se=ie.legend;Se.entries=[];for(var Le=0;Le<_t.length;Le++){var Ae=_t[Le];if(Ae.hoverinfo!=="none"){var Fe=Ile(Ae,!0,i,n,C),Pe=Fe[0],ge=Fe[1];Ae.name=ge,ge!==""?Ae.text=ge+" : "+Pe:Ae.text=Pe;var Re=Ae.cd[Ae.index];Re&&(Re.mc&&(Ae.mc=Re.mc),Re.mcc&&(Ae.mc=Re.mcc),Re.mlc&&(Ae.mlc=Re.mlc),Re.mlcc&&(Ae.mlc=Re.mlcc),Re.mlw&&(Ae.mlw=Re.mlw),Re.mrc&&(Ae.mrc=Re.mrc),Re.dir&&(Ae.dir=Re.dir)),Ae._distinct=!0,Se.entries.push([Ae])}}Se.entries.sort(function(It,mt){return It[0].trace.index-mt[0].trace.index}),Se.layer=s,Se._inHover=!0,Se._groupTitleFont=te.grouptitlefont,uut(r,Se);var ce=s.select("g.legend"),Ze=H3(r,ce.node()),ut=Ze.width+2*sl,pt=Ze.height+2*sl,Zt=_t[0],st=(Zt.x0+Zt.x1)/2,lt=(Zt.y0+Zt.y1)/2,Gt=!(j3.traceIs(Zt.trace,"bar-like")||j3.traceIs(Zt.trace,"box-violin")),Nt,Jt;L==="y"?Gt?(Jt=lt-sl,Nt=lt+sl):(Jt=Math.min.apply(null,_t.map(function(It){return Math.min(It.y0,It.y1)})),Nt=Math.max.apply(null,_t.map(function(It){return Math.max(It.y0,It.y1)}))):Jt=Nt=zf.mean(_t.map(function(It){return(It.y0+It.y1)/2}))-pt/2;var sr,wr;L==="x"?Gt?(sr=st+sl,wr=st-sl):(sr=Math.max.apply(null,_t.map(function(It){return Math.max(It.x0,It.x1)})),wr=Math.min.apply(null,_t.map(function(It){return Math.min(It.x0,It.x1)}))):sr=wr=zf.mean(_t.map(function(It){return(It.x0+It.x1)/2}))-ut/2;var cr=E._offset,$e=S._offset;Nt+=$e,sr+=cr,wr+=cr-ut,Jt+=$e-pt;var St,Qt;return sr+ut=0?St=sr:wr+ut=0?St=wr:cr+ut=0?Qt=Nt:Jt+pt=0?Qt=Jt:$e+pt=0,(_t.idealAlign==="top"||!ii)&&pi?(Ie-=ke/2,_t.anchor="end"):ii?(Ie+=ke/2,_t.anchor="start"):_t.anchor="middle",_t.crossPos=Ie;else{if(_t.pos=Ie,ii=xt+xe/2+vr<=T,pi=xt-xe/2-vr>=0,(_t.idealAlign==="left"||!ii)&&pi)xt-=xe/2,_t.anchor="end";else if(ii)xt+=xe/2,_t.anchor="start";else{_t.anchor="middle";var $r=vr/2,di=xt+$r-T,ji=xt-$r;di>0&&(xt-=di),ji<0&&(xt+=-ji)}_t.crossPos=xt}dt.attr("text-anchor",_t.anchor),Je&&Ge.attr("text-anchor",_t.anchor),It.attr("transform",NB(xt,Ie)+(a?nut(Ole):""))}),{hoverLabels:Vt,commonLabelBoundingBox:H}}function Ile(e,t,r,n,i,a){var f,h;var o="",s="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=zf.templateString(e.name,e.trace._meta)),o=Fle(e.name,e.nameLength));var l=r.charAt(0),u=l==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(s+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(s+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(s+=(s?"z: ":"")+e.zLabel)):t&&e[l+"Label"]===i?s=e[u+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(s=e.yLabel):e.yLabel===void 0?s=e.xLabel:s="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(s+=(s?"
":"")+e.text),e.extraText!==void 0&&(s+=(s?"
":"")+e.extraText),a&&s===""&&!e.hovertemplate&&(o===""&&a.remove(),s=o),(h=(f=e.trace)==null?void 0:f.hoverlabel)!=null&&h.split&&(e.hovertemplate="");let{hovertemplate:c=!1}=e;if(c){let d=e.hovertemplateLabels||e;e[l+"Label"]!==i&&(d[l+"other"]=d[l+"Val"],d[l+"otherLabel"]=d[l+"Label"]),s=zf.hovertemplateString({data:[e.eventData[0]||{},e.trace._meta],fallback:e.trace.hovertemplatefallback,labels:d,locale:n._d3locale,template:c}),s=s.replace(put,(v,_)=>(o=Fle(_,e.nameLength),""))}return[s,o]}function gut(e,t,r,n){var i=t?"xa":"ya",a=t?"ya":"xa",o=0,s=1,l=e.size(),u=new Array(l),c=0,f=n.minX,h=n.maxX,d=n.minY,v=n.maxY,_=function(Z){return Z*r._invScaleX},b=function(Z){return Z*r._invScaleY};e.each(function(Z){var j=Z[i],N=Z[a],H=j._id.charAt(0)==="x",te=j.range;c===0&&te&&te[0]>te[1]!==H&&(s=-1);var oe=0,_e=H?r.width:r.height;if(r.hovermode==="x"||r.hovermode==="y"){var Ee=Nle(Z,t),Ce=Z.anchor,me=Ce==="end"?-1:1,ie,Se;if(Ce==="middle")ie=Z.crossPos+(H?b(Ee.y-Z.by/2):_(Z.bx/2+Z.tx2width/2)),Se=ie+(H?b(Z.by):_(Z.bx));else if(H)ie=Z.crossPos+b(Qc+Ee.y)-b(Z.by/2-Qc),Se=ie+b(Z.by);else{var Le=_(me*Qc+Ee.x),Ae=Le+_(me*Z.bx);ie=Z.crossPos+Math.min(Le,Ae),Se=Z.crossPos+Math.max(Le,Ae)}H?d!==void 0&&v!==void 0&&Math.min(Se,v)-Math.max(ie,d)>1&&(N.side==="left"?(oe=N._mainLinePosition,_e=r.width):_e=N._mainLinePosition):f!==void 0&&h!==void 0&&Math.min(Se,h)-Math.max(ie,f)>1&&(N.side==="top"?(oe=N._mainLinePosition,_e=r.height):_e=N._mainLinePosition)}u[c++]=[{datum:Z,traceIndex:Z.trace.index,dp:0,pos:Z.pos,posref:Z.posref,size:Z.by*(H?cut:1)/2,pmin:oe,pmax:_e}]}),u.sort(function(Z,j){return Z[0].posref-j[0].posref||s*(j[0].traceIndex-Z[0].traceIndex)});var p,k,E,S,L,x,C;function M(Z){var j=Z[0],N=Z[Z.length-1];if(k=j.pmin-j.pos-j.dp+j.size,E=N.pos+N.dp+N.size-j.pmax,k>.01){for(L=Z.length-1;L>=0;L--)Z[L].dp+=k;p=!1}if(!(E<.01)){if(k<-.01){for(L=Z.length-1;L>=0;L--)Z[L].dp-=E;p=!1}if(p){var H=0;for(S=0;Sj.pmax&&H++;for(S=Z.length-1;S>=0&&!(H<=0);S--)x=Z[S],x.pos>j.pmax-1&&(x.del=!0,H--);for(S=0;S=0;L--)Z[L].dp-=E;for(S=Z.length-1;S>=0&&!(H<=0);S--)x=Z[S],x.pos+x.dp+x.size>j.pmax&&(x.del=!0,H--)}}}for(;!p&&o<=l;){for(o++,p=!0,S=0;S.01){for(L=P.length-1;L>=0;L--)P[L].dp+=k;for(g.push.apply(g,P),u.splice(S+1,1),C=0,L=g.length-1;L>=0;L--)C+=g[L].dp;for(E=C/g.length,L=g.length-1;L>=0;L--)g[L].dp-=E;p=!1}else S++}u.forEach(M)}for(S=u.length-1;S>=0;S--){var O=u[S];for(L=O.length-1;L>=0;L--){var V=O[L],G=V.datum;G.offset=V.dp,G.del=V.del}}}function Nle(e,t){var r=0,n=e.offset;return t&&(n*=-hut,r=e.offset*fut),{x:r,y:n}}function mut(e){var t={start:1,end:-1,middle:0}[e.anchor],r=t*(Qc+sl),n=r+t*(e.txwidth+sl),i=e.anchor==="middle";return i&&(r-=e.tx2width/2,n+=e.txwidth/2+sl),{alignShift:t,textShiftX:r,text2ShiftX:n}}function Ule(e,t,r,n){var i=function(o){return o*r},a=function(o){return o*n};e.each(function(o){var s=Fb.select(this);if(o.del)return s.remove();var l=s.select("text.nums"),u=o.anchor,c=u==="end"?-1:1,f=mut(o),h=Nle(o,t),d=h.x,v=h.y,_=u==="middle",b="hoverlabel"in o.trace?o.trace.hoverlabel.showarrow:!0,p;_?p="M-"+i(o.bx/2+o.tx2width/2)+","+a(v-o.by/2)+"h"+i(o.bx)+"v"+a(o.by)+"h-"+i(o.bx)+"Z":b?p="M0,0L"+i(c*Qc+d)+","+a(Qc+v)+"v"+a(o.by/2-Qc)+"h"+i(c*o.bx)+"v-"+a(o.by)+"H"+i(c*Qc+d)+"V"+a(v-Qc)+"Z":p="M"+i(c*Qc+d)+","+a(v-o.by/2)+"h"+i(c*o.bx)+"v"+a(o.by)+"h"+i(-c*o.bx)+"Z",s.select("path").attr("d",p);var k=d+f.textShiftX,E=v+o.ty0-o.by/2+sl,S=o.textAlign||"auto";S!=="auto"&&(S==="left"&&u!=="start"?(l.attr("text-anchor","start"),k=_?-o.bx/2-o.tx2width/2+sl:-o.bx-sl):S==="right"&&u!=="end"&&(l.attr("text-anchor","end"),k=_?o.bx/2-o.tx2width/2-sl:o.bx+sl)),l.call(T0.positionText,i(k),a(E)),o.tx2width&&(s.select("text.name").call(T0.positionText,i(f.text2ShiftX+f.alignShift*sl+d),a(v+o.ty0-o.by/2+sl)),s.select("rect").call(bm.setRect,i(f.text2ShiftX+(f.alignShift-1)*o.tx2width/2+d),a(v-o.by/2-1),i(o.tx2width),a(o.by+2)))})}function yut(e,t){var r=e.index,n=e.trace||{},i=e.cd[0],a=e.cd[r]||{};function o(h){return h||My(h)&&h===0}var s=Array.isArray(r)?function(h,d){var v=zf.castOption(i,r,h);return o(v)?v:zf.extractOption({},n,"",d)}:function(h,d){return zf.extractOption(a,n,h,d)};function l(h,d,v){var _=s(d,v);o(_)&&(e[h]=_)}if(l("hoverinfo","hi","hoverinfo"),l("bgcolor","hbg","hoverlabel.bgcolor"),l("borderColor","hbc","hoverlabel.bordercolor"),l("fontFamily","htf","hoverlabel.font.family"),l("fontSize","hts","hoverlabel.font.size"),l("fontColor","htc","hoverlabel.font.color"),l("fontWeight","htw","hoverlabel.font.weight"),l("fontStyle","hty","hoverlabel.font.style"),l("fontVariant","htv","hoverlabel.font.variant"),l("nameLength","hnl","hoverlabel.namelength"),l("textAlign","hta","hoverlabel.align"),e.posref=t==="y"||t==="closest"&&n.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=zf.constrain(e.x0,0,e.xa._length),e.x1=zf.constrain(e.x1,0,e.xa._length),e.y0=zf.constrain(e.y0,0,e.ya._length),e.y1=zf.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:wm.hoverLabelText(e.xa,e.xLabelVal,n.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:wm.hoverLabelText(e.ya,e.yLabelVal,n.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var u=wm.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+u+" / -"+wm.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+u,t==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var c=wm.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+c+" / -"+wm.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+c,t==="y"&&(e.distance+=1)}var f=e.hoverinfo||e.trace.hoverinfo;return f&&f!=="all"&&(f=Array.isArray(f)?f:f.split("+"),f.indexOf("x")===-1&&(e.xLabel=void 0),f.indexOf("y")===-1&&(e.yLabel=void 0),f.indexOf("z")===-1&&(e.zLabel=void 0),f.indexOf("text")===-1&&(e.text=void 0),f.indexOf("name")===-1&&(e.name=void 0)),e}function Rle(e,t,r){var n=r.container,i=r.fullLayout,a=i._size,o=r.event,s=!!t.hLinePoint,l=!!t.vLinePoint,u,c;if(n.selectAll(".spikeline").remove(),!!(l||s)){var f=vd.combine(i.plot_bgcolor,i.paper_bgcolor);if(s){var h=t.hLinePoint,d,v;u=h&&h.xa,c=h&&h.ya;var _=c.spikesnap;_==="cursor"?(d=o.pointerX,v=o.pointerY):(d=u._offset+h.x,v=c._offset+h.y);var b=Cle.readability(h.color,f)<1.5?vd.contrast(f):h.color,p=c.spikemode,k=c.spikethickness,E=c.spikecolor||b,S=wm.getPxPosition(e,c),L,x;if(p.indexOf("toaxis")!==-1||p.indexOf("across")!==-1){if(p.indexOf("toaxis")!==-1&&(L=S,x=d),p.indexOf("across")!==-1){var C=c._counterDomainMin,M=c._counterDomainMax;c.anchor==="free"&&(C=Math.min(C,c.position),M=Math.max(M,c.position)),L=a.l+C*a.w,x=a.l+M*a.w}n.insert("line",":first-child").attr({x1:L,x2:x,y1:v,y2:v,"stroke-width":k,stroke:E,"stroke-dasharray":bm.dashStyle(c.spikedash,k)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:L,x2:x,y1:v,y2:v,"stroke-width":k+2,stroke:f}).classed("spikeline",!0).classed("crisp",!0)}p.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:S+(c.side!=="right"?k:-k),cy:v,r:k,fill:E}).classed("spikeline",!0)}if(l){var g=t.vLinePoint,P,T;u=g&&g.xa,c=g&&g.ya;var z=u.spikesnap;z==="cursor"?(P=o.pointerX,T=o.pointerY):(P=u._offset+g.x,T=c._offset+g.y);var O=Cle.readability(g.color,f)<1.5?vd.contrast(f):g.color,V=u.spikemode,G=u.spikethickness,Z=u.spikecolor||O,j=wm.getPxPosition(e,u),N,H;if(V.indexOf("toaxis")!==-1||V.indexOf("across")!==-1){if(V.indexOf("toaxis")!==-1&&(N=j,H=T),V.indexOf("across")!==-1){var te=u._counterDomainMin,oe=u._counterDomainMax;u.anchor==="free"&&(te=Math.min(te,u.position),oe=Math.max(oe,u.position)),N=a.t+(1-oe)*a.h,H=a.t+(1-te)*a.h}n.insert("line",":first-child").attr({x1:P,x2:P,y1:N,y2:H,"stroke-width":G,stroke:Z,"stroke-dasharray":bm.dashStyle(u.spikedash,G)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:P,x2:P,y1:N,y2:H,"stroke-width":G+2,stroke:f}).classed("spikeline",!0).classed("crisp",!0)}V.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:P,cy:j-(u.side!=="top"?G:-G),r:G,fill:Z}).classed("spikeline",!0)}}}function _ut(e,t,r){if(!r||r.length!==e._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var i=r[n],a=e._hoverdata[n];if(i.curveNumber!==a.curveNumber||String(i.pointNumber)!==String(a.pointNumber)||String(i.pointNumbers)!==String(a.pointNumbers)||i.binNumber!==a.binNumber)return!0}return!1}function Dle(e,t){return!t||t.vLinePoint!==e._spikepoints.vLinePoint||t.hLinePoint!==e._spikepoints.hLinePoint}function Fle(e,t){return T0.plainText(e||"",{len:t,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function xut(e,t){for(var r=t.charAt(0),n=[],i=[],a=[],o=0;oe.offsetTop+e.clientTop,Gle=e=>e.offsetLeft+e.clientLeft;function H3(e,t){var r=e._fullLayout,n=t.getBoundingClientRect(),i=n.left,a=n.top,o=i+n.width,s=a+n.height,l=zf.apply3DTransform(r._invTransform)(i,a),u=zf.apply3DTransform(r._invTransform)(o,s),c=l[0],f=l[1],h=u[0],d=u[1];return{x:c,y:f,width:h-c,height:d-f,top:Math.min(f,d),left:Math.min(c,h),right:Math.max(c,h),bottom:Math.max(f,d)}}});var hM=ye((gar,Hle)=>{"use strict";var but=Dr(),wut=ka(),Tut=ip().isUnifiedHover;Hle.exports=function(t,r,n,i){i=i||{};var a=r.legend;function o(s){i.font[s]||(i.font[s]=a?r.legend.font[s]:r.font[s])}r&&Tut(r.hovermode)&&(i.font||(i.font={}),o("size"),o("family"),o("color"),o("weight"),o("style"),o("variant"),a?(i.bgcolor||(i.bgcolor=wut.combine(r.legend.bgcolor,r.paper_bgcolor)),i.bordercolor||(i.bordercolor=r.legend.bordercolor)):i.bgcolor||(i.bgcolor=r.paper_bgcolor)),n("hoverlabel.bgcolor",i.bgcolor),n("hoverlabel.bordercolor",i.bordercolor),n("hoverlabel.namelength",i.namelength),n("hoverlabel.showarrow",i.showarrow),but.coerceFont(n,"hoverlabel.font",i.font),n("hoverlabel.align",i.align)}});var Wle=ye((mar,jle)=>{"use strict";var Aut=Dr(),Sut=hM(),Mut=B1();jle.exports=function(t,r){function n(i,a){return Aut.coerce(t,r,Mut,i,a)}Sut(t,r,n)}});var Yle=ye((yar,Zle)=>{"use strict";var Xle=Dr(),Eut=a3(),kut=hM();Zle.exports=function(t,r,n,i){function a(s,l){return Xle.coerce(t,r,Eut,s,l)}var o=Xle.extendFlat({},i.hoverlabel);r.hovertemplate&&(o.namelength=-1),kut(t,r,a,o)}});var HB=ye((_ar,Kle)=>{"use strict";var Cut=Dr(),Lut=B1();Kle.exports=function(t,r){function n(i,a){return r[i]!==void 0?r[i]:Cut.coerce(t,r,Lut,i,a)}return n("clickmode"),n("hoversubplots"),n("hovermode")}});var Qle=ye((xar,$le)=>{"use strict";var Jle=Dr(),Put=B1(),Iut=HB(),Rut=hM();$le.exports=function(t,r){function n(c,f){return Jle.coerce(t,r,Put,c,f)}var i=Iut(t,r);i&&(n("hoverdistance"),n("spikedistance"));var a=n("dragmode");a==="select"&&n("selectdirection");var o=r._has("mapbox"),s=r._has("map"),l=r._has("geo"),u=r._basePlotModules.length;r.dragmode==="zoom"&&((o||s||l)&&u===1||(o||s)&&l&&u===2)&&(r.dragmode="pan"),Rut(t,r,n),Jle.coerceFont(n,"hoverlabel.grouptitlefont",r.hoverlabel.font)}});var rue=ye((bar,tue)=>{"use strict";var jB=Dr(),eue=qa();tue.exports=function(t){var r=t.calcdata,n=t._fullLayout;function i(u){return function(c){return jB.coerceHoverinfo({hoverinfo:c},{_module:u._module},n)}}for(var a=0;a{"use strict";var Fut=qa(),zut=GB().hover;iue.exports=function(t,r,n){var i=Fut.getComponentMethod("annotations","onClick")(t,t._hoverdata);n!==void 0&&zut(t,r,n,!0);function a(){t.emit("plotly_click",{points:t._hoverdata,event:r})}t._hoverdata&&r&&r.target&&(i&&i.then?i.then(a):a(),r.stopImmediatePropagation&&r.stopImmediatePropagation())}});var vf=ye((Tar,sue)=>{"use strict";var Out=Oa(),WL=Dr(),qut=yv(),dM=ip(),aue=B1(),oue=GB();sue.exports={moduleType:"component",name:"fx",constants:zS(),schema:{layout:aue},attributes:a3(),layoutAttributes:aue,supplyLayoutGlobalDefaults:Wle(),supplyDefaults:Yle(),supplyLayoutDefaults:Qle(),calc:rue(),getDistanceFunction:dM.getDistanceFunction,getClosest:dM.getClosest,inbox:dM.inbox,quadrature:dM.quadrature,appendArrayPointValue:dM.appendArrayPointValue,castHoverOption:Nut,castHoverinfo:Uut,hover:oue.hover,unhover:qut.unhover,loneHover:oue.loneHover,loneUnhover:But,click:nue()};function But(e){var t=WL.isD3Selection(e)?e:Out.select(e);t.selectAll("g.hovertext").remove(),t.selectAll(".spikeline").remove()}function Nut(e,t,r){return WL.castOption(e,t,"hoverlabel."+r)}function Uut(e,t,r){function n(i){return WL.coerceHoverinfo({hoverinfo:i},{_module:e._module},t)}return WL.castOption(e,r,"hoverinfo",n)}});var Eg=ye(Ey=>{"use strict";Ey.selectMode=function(e){return e==="lasso"||e==="select"};Ey.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Ey.openMode=function(e){return e==="drawline"||e==="drawopenpath"};Ey.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Ey.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};Ey.selectingOrDrawing=function(e){return Ey.freeMode(e)||Ey.rectMode(e)}});var vM=ye((Sar,lue)=>{"use strict";lue.exports=function(t){var r=t._fullLayout;r._glcanvas&&r._glcanvas.size()&&r._glcanvas.each(function(n){n.regl&&n.regl.clear({color:!0,depth:!0})})}});var XL=ye((Mar,uue)=>{"use strict";uue.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:[""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var YL=ye((Ear,cue)=>{"use strict";var ZL=32;cue.exports={CIRCLE_SIDES:ZL,i000:0,i090:ZL/4,i180:ZL/2,i270:ZL/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var KL=ye((kar,hue)=>{"use strict";var Vut=Dr().strTranslate;function fue(e,t){switch(e.type){case"log":return e.p2d(t);case"date":return e.p2r(t,0,e.calendar);default:return e.p2r(t)}}function Gut(e,t){switch(e.type){case"log":return e.d2p(t);case"date":return e.r2p(t,0,e.calendar);default:return e.r2p(t)}}function Hut(e){var t=e._id.charAt(0)==="y"?1:0;return function(r){return fue(e,r[t])}}function jut(e){return Vut(e.xaxis._offset,e.yaxis._offset)}hue.exports={p2r:fue,r2p:Gut,axValue:Hut,getTransform:jut}});var u_=ye(ky=>{"use strict";var Wut=eM(),pue=YL(),W3=pue.CIRCLE_SIDES,WB=pue.SQRT2,gue=KL(),due=gue.p2r,vue=gue.r2p,Xut=[0,3,4,5,6,1,2],Zut=[0,3,4,1,2];ky.writePaths=function(e){var t=e.length;if(!t)return"M0,0Z";for(var r="",n=0;n0&&l{"use strict";var mue=hf(),wue=Eg(),Yut=wue.drawMode,Kut=wue.openMode,X3=YL(),yue=X3.i000,_ue=X3.i090,xue=X3.i180,bue=X3.i270,Jut=X3.cos45,$ut=X3.sin45,Tue=KL(),$L=Tue.p2r,c_=Tue.r2p,Qut=Q1(),ect=Qut.clearOutline,QL=u_(),tct=QL.readPaths,rct=QL.writePaths,ict=QL.ellipseOver,nct=QL.fixDatesForPaths;function act(e,t){if(e.length){var r=e[0][0];if(r){var n=t.gd,i=t.isActiveShape,a=t.dragmode,o=(n.layout||{}).shapes||[];if(!Yut(a)&&i!==void 0){var s=n._fullLayout._activeShapeIndex;if(s{"use strict";var oct=Eg(),sct=oct.selectMode,lct=Q1(),uct=lct.clearOutline,XB=u_(),cct=XB.readPaths,fct=XB.writePaths,hct=XB.fixDatesForPaths;Mue.exports=function(t,r){if(t.length){var n=t[0][0];if(n){var i=n.getAttribute("d"),a=r.gd,o=a._fullLayout.newselection,s=r.plotinfo,l=s.xaxis,u=s.yaxis,c=r.isActiveSelection,f=r.dragmode,h=(a.layout||{}).selections||[];if(!sct(f)&&c!==void 0){var d=a._fullLayout._activeSelectionIndex;if(d{"use strict";Eue.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var f_=ye(Dd=>{"use strict";var Ob=gM(),kue=Dr(),tP=ho();Dd.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(t){return t}};Dd.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(t){return t}};Dd.decodeDate=function(e){return function(t){return t.replace&&(t=t.replace("_"," ")),e(t)}};Dd.encodeDate=function(e){return function(t){return e(t).replace(" ","_")}};Dd.extractPathCoords=function(e,t,r){var n=[],i=e.match(Ob.segmentRE);return i.forEach(function(a){var o=t[a.charAt(0)].drawn;if(o!==void 0){var s=a.slice(1).match(Ob.paramRE);if(!(!s||s.lengthd&&(_="X"),_});return u>d&&(v=v.replace(/[\s,]*X.*/,""),kue.log("Ignoring extra params in segment "+l)),c+v})}function mM(e,t){t=t||0;var r=0;return t&&e&&(e.type==="category"||e.type==="multicategory")&&(r=(e.r2p(1)-e.r2p(0))*t),r}});var KB=ye((Dar,Iue)=>{"use strict";var vct=Dr(),Z3=ho(),Cue=ru(),Lue=So(),pct=u_().readPaths,YB=f_(),gct=YB.getPathString,Pue=M6(),mct=$h().FROM_TL;Iue.exports=function(t,r,n,i){if(i.selectAll(".shape-label").remove(),!!(n.label.text||n.label.texttemplate)){var a;if(n.label.texttemplate){var o={};if(n.type!=="path"){var s=Z3.getFromId(t,n.xref),l=Z3.getFromId(t,n.yref);for(var u in Pue){var c=Pue[u](n,s,l);c!==void 0&&(o[u]=c)}}a=vct.texttemplateStringForShapes({data:[o],fallback:n.label.texttemplatefallback,locale:t._fullLayout._d3locale,template:n.label.texttemplate})}else a=n.label.text;var f={"data-index":r},h=n.label.font,d={"data-notex":1},v=i.append("g").attr(f).classed("shape-label",!0),_=v.append("text").attr(d).classed("shape-label-text",!0).text(a),b,p,k,E;if(n.path){var S=gct(t,n),L=pct(S,t);b=1/0,k=1/0,p=-1/0,E=-1/0;for(var x=0;x=e?i=t-n:i=n-t,-180/Math.PI*Math.atan2(i,a)}function _ct(e,t,r,n,i,a,o){var s=i.label.textposition,l=i.label.textangle,u=i.label.padding,c=i.type,f=Math.PI/180*a,h=Math.sin(f),d=Math.cos(f),v=i.label.xanchor,_=i.label.yanchor,b,p,k,E;if(c==="line"){s==="start"?(b=e,p=t):s==="end"?(b=r,p=n):(b=(e+r)/2,p=(t+n)/2),v==="auto"&&(s==="start"?l==="auto"?r>e?v="left":re?v="right":re?v="right":re?v="left":r{"use strict";var xct=Dr(),bct=xct.strTranslate,Rue=yv(),zue=Eg(),wct=zue.drawMode,Oue=zue.selectMode,que=qa(),Due=ka(),iP=YL(),Tct=iP.i000,Act=iP.i090,Sct=iP.i180,Mct=iP.i270,Ect=Q1(),Bue=Ect.clearOutlineControllers,$B=u_(),rP=$B.pointsOnRectangle,JB=$B.pointsOnEllipse,kct=$B.writePaths,Cct=eP().newShapes,Lct=eP().createShapeObj,Pct=ZB(),Ict=KB();Nue.exports=function e(t,r,n,i){i||(i=0);var a=n.gd;function o(){e(t,r,n,i++),(JB(t[0])||n.hasText)&&s({redrawing:!0})}function s(j){var N={};n.isActiveShape!==void 0&&(n.isActiveShape=!1,N=Cct(r,n)),n.isActiveSelection!==void 0&&(n.isActiveSelection=!1,N=Pct(r,n),a._fullLayout._reselect=!0),Object.keys(N).length&&que.call((j||{}).redrawing?"relayout":"_guiRelayout",a,N)}var l=a._fullLayout,u=l._zoomlayer,c=n.dragmode,f=wct(c),h=Oue(c);(f||h)&&(a._fullLayout._outlining=!0),Bue(a),r.attr("d",kct(t));var d,v,_,b,p;if(!i&&(n.isActiveShape||n.isActiveSelection)){p=Rct([],t);var k=u.append("g").attr("class","outline-controllers");P(k),Z()}if(f&&n.hasText){var E=u.select(".label-temp"),S=Lct(r,n,n.dragmode);Ict(a,"label-temp",S,E)}function L(j){_=+j.srcElement.getAttribute("data-i"),b=+j.srcElement.getAttribute("data-j"),d[_][b].moveFn=x}function x(j,N){if(t.length){var H=p[_][b][1],te=p[_][b][2],oe=t[_],_e=oe.length;if(rP(oe)){var Ee=j,Ce=N;if(n.isActiveSelection){var me=Fue(oe,b);me[1]===oe[b][1]?Ce=0:Ee=0}for(var ie=0;ie<_e;ie++)if(ie!==b){var Se=oe[ie];Se[1]===oe[b][1]&&(Se[1]=H+Ee),Se[2]===oe[b][2]&&(Se[2]=te+Ce)}if(oe[b][1]=H+Ee,oe[b][2]=te+Ce,!rP(oe))for(var Le=0;Le<_e;Le++)for(var Ae=0;Ae1&&!(j.length===2&&j[1][0]==="Z")&&(b===0&&(j[0][0]="M"),t[_]=j,o(),s())}}function g(j,N){if(j===2){_=+N.srcElement.getAttribute("data-i"),b=+N.srcElement.getAttribute("data-j");var H=t[_];!rP(H)&&!JB(H)&&M()}}function P(j){d=[];for(var N=0;N{"use strict";var Fct=Oa(),Wue=qa(),Uue=Dr(),Y3=ho(),zct=u_().readPaths,Oct=nP(),oP=KB(),Xue=Q1().clearOutlineControllers,QB=ka(),tN=So(),qct=vl().arrayEditor,Vue=yv(),Gue=Sg(),qb=gM(),Ep=f_(),eN=Ep.getPathString;Kue.exports={draw:rN,drawOne:Zue,eraseActiveShape:Uct,drawLabel:oP};function rN(e){var t=e._fullLayout;t._shapeUpperLayer.selectAll("path").remove(),t._shapeLowerLayer.selectAll("path").remove(),t._shapeUpperLayer.selectAll("text").remove(),t._shapeLowerLayer.selectAll("text").remove();for(var r in t._plots){var n=t._plots[r].shapelayer;n&&(n.selectAll("path").remove(),n.selectAll("text").remove())}for(var i=0;io&&Nt>s&&!st.shiftKey?Vue.getCursor(Jt/Gt,1-sr/Nt):"move";Gue(t,wr),Se=wr.split("-")[0]}}function Pe(st){aP(e)||(l&&(p=oe(r.xanchor)),u&&(k=_e(r.yanchor)),r.type==="path"?T=r.path:(d=l?r.x0:oe(r.x0),v=u?r.y0:_e(r.y0),_=l?r.x1:oe(r.x1),b=u?r.y1:_e(r.y1)),d<_?(L=d,g="x0",x=_,P="x1"):(L=_,g="x1",x=d,P="x0"),!u&&vb?(E=v,C="y0",S=b,M="y1"):(E=b,C="y1",S=v,M="y0"),Fe(st),ut(i,r),Zt(t,r,e),ie.moveFn=Se==="move"?ce:Ze,ie.altKey=st.altKey)}function ge(){aP(e)||(Gue(t),pt(i),Yue(t,e,r),Wue.call("_guiRelayout",e,a.getUpdateObj()))}function Re(){aP(e)||pt(i)}function ce(st,lt){if(r.type==="path"){var Gt=function(sr){return sr},Nt=Gt,Jt=Gt;l?h("xanchor",r.xanchor=Ee(p+st)):(Nt=function(wr){return Ee(oe(wr)+st)},O&&O.type==="date"&&(Nt=Ep.encodeDate(Nt))),u?h("yanchor",r.yanchor=Ce(k+lt)):(Jt=function(wr){return Ce(_e(wr)+lt)},G&&G.type==="date"&&(Jt=Ep.encodeDate(Jt))),h("path",r.path=Hue(T,Nt,Jt))}else l?h("xanchor",r.xanchor=Ee(p+st)):(h("x0",r.x0=Ee(d+st)),h("x1",r.x1=Ee(_+st))),u?h("yanchor",r.yanchor=Ce(k+lt)):(h("y0",r.y0=Ce(v+lt)),h("y1",r.y1=Ce(b+lt)));t.attr("d",eN(e,r)),ut(i,r),oP(e,n,r,z)}function Ze(st,lt){if(f){var Gt=function(Lr){return Lr},Nt=Gt,Jt=Gt;l?h("xanchor",r.xanchor=Ee(p+st)):(Nt=function(ti){return Ee(oe(ti)+st)},O&&O.type==="date"&&(Nt=Ep.encodeDate(Nt))),u?h("yanchor",r.yanchor=Ce(k+lt)):(Jt=function(ti){return Ce(_e(ti)+lt)},G&&G.type==="date"&&(Jt=Ep.encodeDate(Jt))),h("path",r.path=Hue(T,Nt,Jt))}else if(c){if(Se==="resize-over-start-point"){var sr=d+st,wr=u?v-lt:v+lt;h("x0",r.x0=l?sr:Ee(sr)),h("y0",r.y0=u?wr:Ce(wr))}else if(Se==="resize-over-end-point"){var cr=_+st,$e=u?b-lt:b+lt;h("x1",r.x1=l?cr:Ee(cr)),h("y1",r.y1=u?$e:Ce($e))}}else{var St=function(Lr){return Se.indexOf(Lr)!==-1},Qt=St("n"),Vt=St("s"),_t=St("w"),It=St("e"),mt=Qt?E+lt:E,er=Vt?S+lt:S,lr=_t?L+st:L,Tr=It?x+st:x;u&&(Qt&&(mt=E-lt),Vt&&(er=S-lt)),(!u&&er-mt>s||u&&mt-er>s)&&(h(C,r[C]=u?mt:Ce(mt)),h(M,r[M]=u?er:Ce(er))),Tr-lr>o&&(h(g,r[g]=l?lr:Ee(lr)),h(P,r[P]=l?Tr:Ee(Tr)))}t.attr("d",eN(e,r)),ut(i,r),oP(e,n,r,z)}function ut(st,lt){(l||u)&&Gt();function Gt(){var Nt=lt.type!=="path",Jt=st.selectAll(".visual-cue").data([0]),sr=1;Jt.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":sr}).classed("visual-cue",!0);var wr=oe(l?lt.xanchor:Uue.midRange(Nt?[lt.x0,lt.x1]:Ep.extractPathCoords(lt.path,qb.paramIsX))),cr=_e(u?lt.yanchor:Uue.midRange(Nt?[lt.y0,lt.y1]:Ep.extractPathCoords(lt.path,qb.paramIsY)));if(wr=Ep.roundPositionForSharpStrokeRendering(wr,sr),cr=Ep.roundPositionForSharpStrokeRendering(cr,sr),l&&u){var $e="M"+(wr-1-sr)+","+(cr-1-sr)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Jt.attr("d",$e)}else if(l){var St="M"+(wr-1-sr)+","+(cr-9-sr)+"v18 h2 v-18 Z";Jt.attr("d",St)}else{var Qt="M"+(wr-9-sr)+","+(cr-1-sr)+"h18 v2 h-18 Z";Jt.attr("d",Qt)}}}function pt(st){st.selectAll(".visual-cue").remove()}function Zt(st,lt,Gt){var Nt=lt.xref,Jt=lt.yref,sr=Y3.getFromId(Gt,Nt),wr=Y3.getFromId(Gt,Jt),cr="";Nt!=="paper"&&!sr.autorange&&(cr+=Nt),Jt!=="paper"&&!wr.autorange&&(cr+=Jt),tN.setClipUrl(st,cr?"clip"+Gt._fullLayout._uid+cr:null,Gt)}}function Hue(e,t,r){return e.replace(qb.segmentRE,function(n){var i=0,a=n.charAt(0),o=qb.paramIsX[a],s=qb.paramIsY[a],l=qb.numParams[a],u=n.slice(1).replace(qb.paramRE,function(c){return i>=l||(o[i]?c=t(c):s[i]&&(c=r(c)),i++),c});return a+u})}function Nct(e,t){if(sP(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeShapeIndex){jue(e);return}e._fullLayout._activeShapeIndex=n,e._fullLayout._deactivateShape=jue,rN(e)}}}function jue(e){if(sP(e)){var t=e._fullLayout._activeShapeIndex;t>=0&&(Xue(e),delete e._fullLayout._activeShapeIndex,rN(e))}}function Uct(e){if(sP(e)){Xue(e);var t=e._fullLayout._activeShapeIndex,r=(e.layout||{}).shapes||[];if(t{"use strict";var A0=qa(),Jue=Mc(),$ue=hf(),Pl=XL(),Vct=lP().eraseActiveShape,uP=Dr(),tl=uP._,Il=ace.exports={};Il.toImage={name:"toImage",title:function(e){var t=e._context.toImageButtonOptions||{},r=t.format||"png";return r==="png"?tl(e,"Download plot as a PNG"):tl(e,"Download plot")},icon:Pl.camera,click:function(e){var t=e._context.toImageButtonOptions,r={format:t.format||"png"};uP.notifier(tl(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(n){n in t&&(r[n]=t[n])}),A0.call("downloadImage",e,r).then(function(n){uP.notifier(tl(e,"Snapshot succeeded")+" - "+n,"long")}).catch(function(){uP.notifier(tl(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Il.sendDataToCloud={name:"sendDataToCloud",title:function(e){return tl(e,"Edit in Chart Studio")},icon:Pl.disk,click:function(e){Jue.sendDataToCloud(e)}};Il.editInChartStudio={name:"editInChartStudio",title:function(e){return tl(e,"Edit in Chart Studio")},icon:Pl.pencil,click:function(e){Jue.sendDataToCloud(e)}};Il.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return tl(e,"Zoom")},attr:"dragmode",val:"zoom",icon:Pl.zoombox,click:Bv};Il.pan2d={name:"pan2d",_cat:"pan",title:function(e){return tl(e,"Pan")},attr:"dragmode",val:"pan",icon:Pl.pan,click:Bv};Il.select2d={name:"select2d",_cat:"select",title:function(e){return tl(e,"Box Select")},attr:"dragmode",val:"select",icon:Pl.selectbox,click:Bv};Il.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return tl(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:Pl.lasso,click:Bv};Il.drawclosedpath={name:"drawclosedpath",title:function(e){return tl(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:Pl.drawclosedpath,click:Bv};Il.drawopenpath={name:"drawopenpath",title:function(e){return tl(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:Pl.drawopenpath,click:Bv};Il.drawline={name:"drawline",title:function(e){return tl(e,"Draw line")},attr:"dragmode",val:"drawline",icon:Pl.drawline,click:Bv};Il.drawrect={name:"drawrect",title:function(e){return tl(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:Pl.drawrect,click:Bv};Il.drawcircle={name:"drawcircle",title:function(e){return tl(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:Pl.drawcircle,click:Bv};Il.eraseshape={name:"eraseshape",title:function(e){return tl(e,"Erase active shape")},icon:Pl.eraseshape,click:Vct};Il.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return tl(e,"Zoom in")},attr:"zoom",val:"in",icon:Pl.zoom_plus,click:Bv};Il.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return tl(e,"Zoom out")},attr:"zoom",val:"out",icon:Pl.zoom_minus,click:Bv};Il.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return tl(e,"Autoscale")},attr:"zoom",val:"auto",icon:Pl.autoscale,click:Bv};Il.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return tl(e,"Reset axes")},attr:"zoom",val:"reset",icon:Pl.home,click:Bv};Il.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return tl(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:Pl.tooltip_basic,gravity:"ne",click:Bv};Il.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return tl(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:Pl.tooltip_compare,gravity:"ne",click:Bv};function Bv(e,t){var r=t.currentTarget,n=r.getAttribute("data-attr"),i=r.getAttribute("data-val")||!0,a=e._fullLayout,o={},s=$ue.list(e,null,!0),l=a._cartesianSpikesEnabled,u,c;if(n==="zoom"){var f=i==="in"?.5:2,h=(1+f)/2,d=(1-f)/2,v,_;for(c=0;c{"use strict";var oce=aN(),jct=Object.keys(oce),sce=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],lce=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(sce),J3=[],Wct=function(e){if(lce.indexOf(e._cat||e.name)===-1){var t=e.name,r=(e._cat||e.name).toLowerCase();J3.indexOf(t)===-1&&J3.push(t),J3.indexOf(r)===-1&&J3.push(r)}};jct.forEach(function(e){Wct(oce[e])});J3.sort();uce.exports={DRAW_MODES:sce,backButtons:lce,foreButtons:J3}});var sN=ye((Nar,cce)=>{"use strict";var Bar=oN();cce.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var hce=ye((Uar,fce)=>{"use strict";var Xct=Dr(),yM=ka(),Zct=vl(),Yct=sN();fce.exports=function(t,r){var n=t.modebar||{},i=Zct.newContainer(r,"modebar");function a(s,l){return Xct.coerce(n,i,Yct,s,l)}a("orientation"),a("bgcolor",yM.addOpacity(r.paper_bgcolor,.5));var o=yM.contrast(yM.rgb(r.modebar.bgcolor));a("color",yM.addOpacity(o,.3)),a("activecolor",yM.addOpacity(o,.7)),a("uirevision",r.uirevision),a("add"),a("remove")}});var gce=ye((Var,pce)=>{"use strict";var lN=Oa(),Kct=Eo(),fP=Dr(),dce=XL(),Jct=l6().version,$ct=new DOMParser;function vce(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Tm=vce.prototype;Tm.update=function(e,t){this.graphInfo=e;var r=this.graphInfo._context,n=this.graphInfo._fullLayout,i="modebar-"+n._uid;this.element.setAttribute("id",i),this.element.setAttribute("role","toolbar"),this._uid=i,this.element.className="modebar modebar--custom",r.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),n.modebar.orientation==="v"&&(this.element.className+=" vertical",t=t.reverse());var a=n.modebar,o="#"+i+" .modebar-group";document.querySelectorAll(o).forEach(function(f){f.style.backgroundColor=a.bgcolor});var s=!this.hasButtons(t),l=this.hasLogo!==r.displaylogo,u=this.locale!==r.locale;if(this.locale=r.locale,(s||l||u)&&(this.removeAllButtons(),this.updateButtons(t),r.watermark||r.displaylogo)){var c=this.getLogo();r.watermark&&(c.className=c.className+" watermark"),n.modebar.orientation==="v"?this.element.insertBefore(c,this.element.childNodes[0]):this.element.appendChild(c),this.hasLogo=!0}this.updateActiveButton(),fP.setStyleOnHover("#"+i+" .modebar-btn",".active",".icon path","fill: "+a.activecolor,"fill: "+a.color,this.element)};Tm.updateButtons=function(e){var t=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(r){var n=t.createGroup();r.forEach(function(i){var a=i.name;if(!a)throw new Error("must provide button 'name' in button config");if(t.buttonsNames.indexOf(a)!==-1)throw new Error("button name '"+a+"' is taken");t.buttonsNames.push(a);var o=t.createButton(i);t.buttonElements.push(o),n.appendChild(o)}),t.element.appendChild(n)})};Tm.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var t=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=t.bgcolor,e};Tm.createButton=function(e){var t=this,r=document.createElement("button");r.setAttribute("type","button"),r.setAttribute("rel","tooltip"),r.className="modebar-btn";var n=e.title;n===void 0?n=e.name:typeof n=="function"&&(n=n(this.graphInfo)),(n||n===0)&&(r.setAttribute("data-title",n),r.setAttribute("aria-label",n)),e.attr!==void 0&&r.setAttribute("data-attr",e.attr);var i=e.val;i!==void 0&&(typeof i=="function"&&(i=i(this.graphInfo)),r.setAttribute("data-val",i));var a=e.click;if(typeof a!="function")throw new Error("must provide button 'click' function in button config");r.addEventListener("click",function(s){e.click(t.graphInfo,s),t.updateActiveButton(s.currentTarget)}),r.setAttribute("data-toggle",e.toggle||!1),e.toggle&&lN.select(r).classed("active",!0);var o=e.icon;return typeof o=="function"?r.appendChild(o()):r.appendChild(this.createIcon(o||dce.question)),r.setAttribute("data-gravity",e.gravity||"n"),r};Tm.createIcon=function(e){var t=Kct(e.height)?Number(e.height):e.ascent-e.descent,r="http://www.w3.org/2000/svg",n;if(e.path){n=document.createElementNS(r,"svg"),n.setAttribute("viewBox",[0,0,e.width,t].join(" ")),n.setAttribute("class","icon");var i=document.createElementNS(r,"path");i.setAttribute("d",e.path),e.transform?i.setAttribute("transform",e.transform):e.ascent!==void 0&&i.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),n.appendChild(i)}if(e.svg){var a=$ct.parseFromString(e.svg,"application/xml");n=a.childNodes[0]}return n.setAttribute("height","1em"),n.setAttribute("width","1em"),n};Tm.updateActiveButton=function(e){var t=this.graphInfo._fullLayout,r=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(n){var i=n.getAttribute("data-val")||!0,a=n.getAttribute("data-attr"),o=n.getAttribute("data-toggle")==="true",s=lN.select(n),l=function(f,h){var d=t.modebar,v=f.querySelector(".icon path");v&&(h||f.matches(":hover")?v.style.fill=d.activecolor:v.style.fill=d.color)};if(o){if(a===r){var u=!s.classed("active");s.classed("active",u),l(n,u)}}else{var c=a===null?a:fP.nestedProperty(t,a).get();s.classed("active",c===i),l(n,c===i)}})};Tm.hasButtons=function(e){var t=this.buttons;if(!t||e.length!==t.length)return!1;for(var r=0;r{"use strict";var tft=hf(),mce=Ru(),uN=qa(),rft=ip().isUnifiedHover,ift=gce(),hP=aN(),nft=oN().DRAW_MODES,aft=Dr().extendDeep;yce.exports=function(t){var r=t._fullLayout,n=t._context,i=r._modeBar;if(!n.displayModeBar&&!n.watermark){i&&(i.destroy(),delete r._modeBar);return}if(!Array.isArray(n.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(n.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var a=n.modeBarButtons,o;Array.isArray(a)&&a.length?o=fft(a):!n.displayModeBar&&n.watermark?o=[]:o=oft(t),i?i.update(t,o):r._modeBar=ift(t,o)};function oft(e){var t=e._fullLayout,r=e._fullData,n=e._context;function i(N,H){if(typeof H=="string"){if(H.toLowerCase()===N.toLowerCase())return!0}else{var te=H.name,oe=H._cat||H.name;if(te===N||oe===N.toLowerCase())return!0}return!1}var a=t.modebar.add;typeof a=="string"&&(a=[a]);var o=t.modebar.remove;typeof o=="string"&&(o=[o]);var s=n.modeBarButtonsToAdd.concat(a.filter(function(N){for(var H=0;H1?(P=["toggleHover"],T=["resetViews"]):f?(g=["zoomInGeo","zoomOutGeo"],P=["hoverClosestGeo"],T=["resetGeo"]):c?(P=["hoverClosest3d"],T=["resetCameraDefault3d","resetCameraLastSave3d"]):_?(g=["zoomInMapbox","zoomOutMapbox"],P=["toggleHover"],T=["resetViewMapbox"]):b?(g=["zoomInMap","zoomOutMap"],P=["toggleHover"],T=["resetViewMap"]):h?P=["hoverClosestPie"]:E?(P=["hoverClosestCartesian","hoverCompareCartesian"],T=["resetViewSankey"]):P=["toggleHover"],u&&P.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(uft(r)||L)&&(P=[]),u&&!S&&(g=["zoomIn2d","zoomOut2d","autoScale2d"],T[0]!=="resetViews"&&(T=["resetScale2d"])),c?z=["zoom3d","pan3d","orbitRotation","tableRotation"]:u&&!S||v?z=["zoom2d","pan2d"]:_||b||f?z=["pan2d"]:p&&(z=["zoom2d"]),lft(r)&&z.push("select2d","lasso2d");var O=[],V=function(N){O.indexOf(N)===-1&&P.indexOf(N)!==-1&&O.push(N)};if(Array.isArray(s)){for(var G=[],Z=0;Z{"use strict";xce.exports={moduleType:"component",name:"modebar",layoutAttributes:sN(),supplyLayoutDefaults:hce(),manage:_ce()}});var fN=ye((jar,bce)=>{"use strict";var hft=$h().FROM_BL;bce.exports=function(t,r,n){n===void 0&&(n=hft[t.constraintoward||"center"]);var i=[t.r2l(t.range[0]),t.r2l(t.range[1])],a=i[0]+(i[1]-i[0])*n;t.range=t._input.range=[t.l2r(a+(i[0]-a)*r),t.l2r(a+(i[1]-a)*r)],t.setScale()}});var Nb=ye(_M=>{"use strict";var Bb=Dr(),hN=Ag(),kg=hf().id2name,dft=Rd(),wce=fN(),vft=ym(),pft=fs().ALMOST_EQUAL,gft=$h().FROM_BL;_M.handleDefaults=function(e,t,r){var n=r.axIds,i=r.axHasImage,a=t._axisConstraintGroups=[],o=t._axisMatchGroups=[],s,l,u,c,f,h,d,v;for(s=0;sa?r.slice(a):n.slice(i))+o}function yft(e,t){for(var r=t._size,n=r.h/r.w,i={},a=Object.keys(e),o=0;opft*v&&!k)){for(a=0;az&&teP&&(P=te);var _e=(P-g)/(2*T);f/=_e,g=l.l2r(g),P=l.l2r(P),l.range=l._input.range=x{"use strict";var vP=Oa(),Nv=qa(),Jp=Mc(),S0=Dr(),pN=ru(),gN=vM(),xM=ka(),$3=So(),Mce=Eb(),Pce=cN(),bM=ho(),Cy=$h(),Ice=Nb(),_ft=Ice.enforce,xft=Ice.clean,Ece=Ag().doAutoRange,Rce="start",bft="middle",Dce="end",wft=hd().zindexSeparator;pd.layoutStyles=function(e){return S0.syncOrAsync([Jp.doAutoMargin,Aft],e)};function Tft(e,t,r){for(var n=0;n=e[1]||i[1]<=e[0])&&a[0]t[0])return!0}return!1}function Aft(e){var t=e._fullLayout,r=t._size,n=r.p,i=bM.list(e,"",!0),a,o,s,l,u,c;if(t._paperdiv.style({width:e._context.responsive&&t.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":t.width+"px",height:e._context.responsive&&t.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":t.height+"px"}).selectAll(".main-svg").call($3.setSize,t.width,t.height),e._context.setBackground(e,t.paper_bgcolor),pd.drawMainTitle(e),Pce.manage(e),!t._has("cartesian"))return Jp.previousPromises(e);function f(Pe,ge,Re){var ce=Pe._lw/2;if(Pe._id.charAt(0)==="x"){if(ge){if(Re==="top")return ge._offset-n-ce}else return r.t+r.h*(1-(Pe.position||0))+ce%1;return ge._offset+ge._length+n+ce}if(ge){if(Re==="right")return ge._offset+ge._length+n+ce}else return r.l+r.w*(Pe.position||0)+ce%1;return ge._offset-n-ce}for(a=0;a0){kft(e,a,u,l),s.attr({x:o,y:a,"text-anchor":n,dy:Lce(t.yanchor)}).call(pN.positionText,o,a);var c=(t.text.match(pN.BR_TAG_ALL)||[]).length;if(c){var f=Cy.LINE_SPACING*c+Cy.MID_SHIFT;t.y===0&&(f=-f),s.selectAll(".line").each(function(){var b=+this.getAttribute("dy").slice(0,-2)-f+"em";this.setAttribute("dy",b)})}var h=vP.select(e).selectAll(".gtitle-subtitle");if(h.node()){var d=s.node().getBBox(),v=d.y+d.height,_=v+Mce.SUBTITLE_PADDING_EM*t.subtitle.font.size;h.attr({x:o,y:_,"text-anchor":n,dy:Lce(t.yanchor)}).call(pN.positionText,o,_)}}}};function Sft(e,t,r,n,i){var a=t.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,o=S0.isTopAnchor(t)?n:n-i,s=r==="b"?a-o:o;return S0.isTopAnchor(t)&&r==="t"||S0.isBottomAnchor(t)&&r==="b"?!1:s.5?"t":"b",o=e._fullLayout.margin[a],s=0;return t.yref==="paper"?s=r+t.pad.t+t.pad.b:t.yref==="container"&&(s=Mft(a,n,i,e._fullLayout.height,r)+t.pad.t+t.pad.b),s>o?s:0}function kft(e,t,r,n){var i="title.automargin",a=e._fullLayout.title,o=a.y>.5?"t":"b",s={x:a.x,y:a.y,t:0,b:0},l={};a.yref==="paper"&&Sft(e,a,o,t,n)?s[o]=r:a.yref==="container"&&(l[o]=r,e._fullLayout._reservedMargin[i]=l),Jp.allowAutoMargin(e,i),Jp.autoMargin(e,i,s)}function Cft(e,t){var r=e.title,n=e._size,i=0;switch(t===Rce?i=r.pad.l:t===Dce&&(i=-r.pad.r),r.xref){case"paper":return n.l+n.w*r.x+i;case"container":default:return e.width*r.x+i}}function Lft(e,t){var r=e.title,n=e._size,i=0;if(t==="0em"||!t?i=-r.pad.b:t===Cy.CAP_SHIFT+"em"&&(i=r.pad.t),r.y==="auto")return n.t/2;switch(r.yref){case"paper":return n.t+n.h-n.h*r.y+i;case"container":default:return e.height-e.height*r.y+i}}function Lce(e){return e==="top"?Cy.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":Cy.MID_SHIFT+"em"}function Pft(e){var t=e.title,r=bft;return S0.isRightAnchor(t)?r=Dce:S0.isLeftAnchor(t)&&(r=Rce),r}function Ift(e){var t=e.title,r="0em";return S0.isTopAnchor(t)?r=Cy.CAP_SHIFT+"em":S0.isMiddleAnchor(t)&&(r=Cy.MID_SHIFT+"em"),r}pd.doTraceStyle=function(e){var t=e.calcdata,r=[],n;for(n=0;n{"use strict";var Rft=u_().readPaths,Dft=nP(),Fce=Q1().clearOutlineControllers,mN=ka(),zce=So(),Fft=vl().arrayEditor,Oce=f_(),zft=Oce.getPathString;Bce.exports={draw:pP,drawOne:qce,activateLastSelection:Bft};function pP(e){var t=e._fullLayout;Fce(e),t._selectionLayer.selectAll("path").remove();for(var r in t._plots){var n=t._plots[r].selectionLayer;n&&n.selectAll("path").remove()}for(var i=0;i=0;b--){var p=o.append("path").attr(l).style("opacity",b?.1:u).call(mN.stroke,f).call(mN.fill,c).call(zce.dashLine,b?"solid":d,b?4+h:h);if(Oft(p,e,n),v){var k=Fft(e.layout,"selections",n);p.style({cursor:"move"});var E={element:p.node(),plotinfo:i,gd:e,editHelpers:k,isActiveSelection:!0},S=Rft(s,e);Dft(S,p,E)}else p.style("pointer-events",b?"all":"none");_[b]=p}var L=_[0],x=_[1];x.node().addEventListener("click",function(){return qft(e,L)})}}function Oft(e,t,r){var n=r.xref+r.yref;zce.setClipUrl(e,"clip"+t._fullLayout._uid+n,t)}function qft(e,t){if(gP(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeSelectionIndex){yN(e);return}e._fullLayout._activeSelectionIndex=n,e._fullLayout._deactivateSelection=yN,pP(e)}}}function Bft(e){if(gP(e)){var t=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=t,e._fullLayout._deactivateSelection=yN,pP(e)}}function yN(e){if(gP(e)){var t=e._fullLayout._activeSelectionIndex;t>=0&&(Fce(e),delete e._fullLayout._activeSelectionIndex,pP(e))}}});var Uce=ye((Yar,Nce)=>{function Nft(){var e,t=0,r=!1;function n(i,a){return e.list.push({type:i,data:a?JSON.parse(JSON.stringify(a)):void 0}),e}return e={list:[],segmentId:function(){return t++},checkIntersection:function(i,a){return n("check",{seg1:i,seg2:a})},segmentChop:function(i,a){return n("div_seg",{seg:i,pt:a}),n("chop",{seg:i,pt:a})},statusRemove:function(i){return n("pop_seg",{seg:i})},segmentUpdate:function(i){return n("seg_update",{seg:i})},segmentNew:function(i,a){return n("new_seg",{seg:i,primary:a})},segmentRemove:function(i){return n("rem_seg",{seg:i})},tempStatus:function(i,a,o){return n("temp_status",{seg:i,above:a,below:o})},rewind:function(i){return n("rewind",{seg:i})},status:function(i,a,o){return n("status",{seg:i,above:a,below:o})},vert:function(i){return i===r?e:(r=i,n("vert",{x:i}))},log:function(i){return typeof i!="string"&&(i=JSON.stringify(i,!1," ")),n("log",{txt:i})},reset:function(){return n("reset")},selected:function(i){return n("selected",{segs:i})},chainStart:function(i){return n("chain_start",{seg:i})},chainRemoveHead:function(i,a){return n("chain_rem_head",{index:i,pt:a})},chainRemoveTail:function(i,a){return n("chain_rem_tail",{index:i,pt:a})},chainNew:function(i,a){return n("chain_new",{pt1:i,pt2:a})},chainMatch:function(i){return n("chain_match",{index:i})},chainClose:function(i){return n("chain_close",{index:i})},chainAddHead:function(i,a){return n("chain_add_head",{index:i,pt:a})},chainAddTail:function(i,a){return n("chain_add_tail",{index:i,pt:a})},chainConnect:function(i,a){return n("chain_con",{index1:i,index2:a})},chainReverse:function(i){return n("chain_rev",{index:i})},chainJoin:function(i,a){return n("chain_join",{index1:i,index2:a})},done:function(){return n("done")}},e}Nce.exports=Nft});var Gce=ye((Kar,Vce)=>{function Uft(e){typeof e!="number"&&(e=1e-10);var t={epsilon:function(r){return typeof r=="number"&&(e=r),e},pointAboveOrOnLine:function(r,n,i){var a=n[0],o=n[1],s=i[0],l=i[1],u=r[0],c=r[1];return(s-a)*(c-o)-(l-o)*(u-a)>=-e},pointBetween:function(r,n,i){var a=r[1]-n[1],o=i[0]-n[0],s=r[0]-n[0],l=i[1]-n[1],u=s*o+a*l;if(u-e)},pointsSameX:function(r,n){return Math.abs(r[0]-n[0])e!=s-a>e&&(o-c)*(a-f)/(s-f)+c-i>e&&(l=!l),o=c,s=f}return l}};return t}Vce.exports=Uft});var jce=ye((Jar,Hce)=>{var Vft={create:function(){var e={root:{root:!0,next:null},exists:function(t){return!(t===null||t===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(t,r){for(var n=e.root,i=e.root.next;i!==null;){if(r(i)){t.prev=i.prev,t.next=i,i.prev.next=t,i.prev=t;return}n=i,i=i.next}n.next=t,t.prev=n,t.next=null},findTransition:function(t){for(var r=e.root,n=e.root.next;n!==null&&!t(n);)r=n,n=n.next;return{before:r===e.root?null:r,after:n,insert:function(i){return i.prev=r,i.next=n,r.next=i,n!==null&&(n.prev=i),i}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};Hce.exports=Vft});var Xce=ye(($ar,Wce)=>{var TM=jce();function Gft(e,t,r){function n(v,_){return{id:r?r.segmentId():-1,start:v,end:_,myFill:{above:null,below:null},otherFill:null}}function i(v,_,b){return{id:r?r.segmentId():-1,start:v,end:_,myFill:{above:b.myFill.above,below:b.myFill.below},otherFill:null}}var a=TM.create();function o(v,_,b,p,k,E){var S=t.pointsCompare(_,k);return S!==0?S:t.pointsSame(b,E)?0:v!==p?v?1:-1:t.pointAboveOrOnLine(b,p?k:E,p?E:k)?1:-1}function s(v,_){a.insertBefore(v,function(b){var p=o(v.isStart,v.pt,_,b.isStart,b.pt,b.other.pt);return p<0})}function l(v,_){var b=TM.node({isStart:!0,pt:v.start,seg:v,primary:_,other:null,status:null});return s(b,v.end),b}function u(v,_,b){var p=TM.node({isStart:!1,pt:_.end,seg:_,primary:b,other:v,status:null});v.other=p,s(p,v.pt)}function c(v,_){var b=l(v,_);return u(b,v,_),b}function f(v,_){r&&r.segmentChop(v.seg,_),v.other.remove(),v.seg.end=_,v.other.pt=_,s(v.other,v.pt)}function h(v,_){var b=i(_,v.seg.end,v.seg);return f(v,_),c(b,v.primary)}function d(v,_){var b=TM.create();function p(G,Z){var j=G.seg.start,N=G.seg.end,H=Z.seg.start,te=Z.seg.end;return t.pointsCollinear(j,H,te)?t.pointsCollinear(N,H,te)||t.pointAboveOrOnLine(N,H,te)?1:-1:t.pointAboveOrOnLine(j,H,te)?1:-1}function k(G){return b.findTransition(function(Z){var j=p(G,Z.ev);return j>0})}function E(G,Z){var j=G.seg,N=Z.seg,H=j.start,te=j.end,oe=N.start,_e=N.end;r&&r.checkIntersection(j,N);var Ee=t.linesIntersect(H,te,oe,_e);if(Ee===!1){if(!t.pointsCollinear(H,te,oe)||t.pointsSame(H,_e)||t.pointsSame(te,oe))return!1;var Ce=t.pointsSame(H,oe),me=t.pointsSame(te,_e);if(Ce&&me)return Z;var ie=!Ce&&t.pointBetween(H,oe,_e),Se=!me&&t.pointBetween(te,oe,_e);if(Ce)return Se?h(Z,te):h(G,_e),Z;ie&&(me||(Se?h(Z,te):h(G,_e)),h(Z,H))}else Ee.alongA===0&&(Ee.alongB===-1?h(G,oe):Ee.alongB===0?h(G,Ee.pt):Ee.alongB===1&&h(G,_e)),Ee.alongB===0&&(Ee.alongA===-1?h(Z,H):Ee.alongA===0?h(Z,Ee.pt):Ee.alongA===1&&h(Z,te));return!1}for(var S=[];!a.isEmpty();){var L=a.getHead();if(r&&r.vert(L.pt[0]),L.isStart){let G=function(){if(C){var Z=E(L,C);if(Z)return Z}return M?E(L,M):!1};var V=G;r&&r.segmentNew(L.seg,L.primary);var x=k(L),C=x.before?x.before.ev:null,M=x.after?x.after.ev:null;r&&r.tempStatus(L.seg,C?C.seg:!1,M?M.seg:!1);var g=G();if(g){if(e){var P;L.seg.myFill.below===null?P=!0:P=L.seg.myFill.above!==L.seg.myFill.below,P&&(g.seg.myFill.above=!g.seg.myFill.above)}else g.seg.otherFill=L.seg.myFill;r&&r.segmentUpdate(g.seg),L.other.remove(),L.remove()}if(a.getHead()!==L){r&&r.rewind(L.seg);continue}if(e){var P;L.seg.myFill.below===null?P=!0:P=L.seg.myFill.above!==L.seg.myFill.below,M?L.seg.myFill.below=M.seg.myFill.above:L.seg.myFill.below=v,P?L.seg.myFill.above=!L.seg.myFill.below:L.seg.myFill.above=L.seg.myFill.below}else if(L.seg.otherFill===null){var T;M?L.primary===M.primary?T=M.seg.otherFill.above:T=M.seg.myFill.above:T=L.primary?_:v,L.seg.otherFill={above:T,below:T}}r&&r.status(L.seg,C?C.seg:!1,M?M.seg:!1),L.other.status=x.insert(TM.node({ev:L}))}else{var z=L.status;if(z===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(b.exists(z.prev)&&b.exists(z.next)&&E(z.prev.ev,z.next.ev),r&&r.statusRemove(z.ev.seg),z.remove(),!L.primary){var O=L.seg.myFill;L.seg.myFill=L.seg.otherFill,L.seg.otherFill=O}S.push(L.seg)}a.getHead().remove()}return r&&r.done(),S}return e?{addRegion:function(v){for(var _,b=v[v.length-1],p=0;p{function Hft(e,t,r){var n=[],i=[];return e.forEach(function(a){var o=a.start,s=a.end;if(t.pointsSame(o,s)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}r&&r.chainStart(a);var l={index:0,matches_head:!1,matches_pt1:!1},u={index:0,matches_head:!1,matches_pt1:!1},c=l;function f(V,G,Z){return c.index=V,c.matches_head=G,c.matches_pt1=Z,c===l?(c=u,!1):(c=null,!0)}for(var h=0;h{function AM(e,t,r){var n=[];return e.forEach(function(i){var a=(i.myFill.above?8:0)+(i.myFill.below?4:0)+(i.otherFill&&i.otherFill.above?2:0)+(i.otherFill&&i.otherFill.below?1:0);t[a]!==0&&n.push({id:r?r.segmentId():-1,start:i.start,end:i.end,myFill:{above:t[a]===1,below:t[a]===2},otherFill:null})}),r&&r.selected(n),n}var jft={union:function(e,t){return AM(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],t)},intersect:function(e,t){return AM(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],t)},difference:function(e,t){return AM(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],t)},differenceRev:function(e,t){return AM(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],t)},xor:function(e,t){return AM(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],t)}};Kce.exports=jft});var Qce=ye((tor,$ce)=>{var Wft={toPolygon:function(e,t){function r(a){if(a.length<=0)return e.segments({inverted:!1,regions:[]});function o(u){var c=u.slice(0,u.length-1);return e.segments({inverted:!1,regions:[c]})}for(var s=o(a[0]),l=1;l{var Xft=Uce(),Zft=Gce(),efe=Xce(),Yft=Yce(),SM=Jce(),tfe=Qce(),M0=!1,MM=Zft(),kp;kp={buildLog:function(e){return e===!0?M0=Xft():e===!1&&(M0=!1),M0===!1?!1:M0.list},epsilon:function(e){return MM.epsilon(e)},segments:function(e){var t=efe(!0,MM,M0);return e.regions.forEach(t.addRegion),{segments:t.calculate(e.inverted),inverted:e.inverted}},combine:function(e,t){var r=efe(!1,MM,M0);return{combined:r.calculate(e.segments,e.inverted,t.segments,t.inverted),inverted1:e.inverted,inverted2:t.inverted}},selectUnion:function(e){return{segments:SM.union(e.combined,M0),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:SM.intersect(e.combined,M0),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:SM.difference(e.combined,M0),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:SM.differenceRev(e.combined,M0),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:SM.xor(e.combined,M0),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:Yft(e.segments,MM,M0),inverted:e.inverted}},polygonFromGeoJSON:function(e){return tfe.toPolygon(kp,e)},polygonToGeoJSON:function(e){return tfe.fromPolygon(kp,MM,e)},union:function(e,t){return EM(e,t,kp.selectUnion)},intersect:function(e,t){return EM(e,t,kp.selectIntersect)},difference:function(e,t){return EM(e,t,kp.selectDifference)},differenceRev:function(e,t){return EM(e,t,kp.selectDifferenceRev)},xor:function(e,t){return EM(e,t,kp.selectXor)}};function EM(e,t,r){var n=kp.segments(e),i=kp.segments(t),a=kp.combine(n,i),o=r(a);return kp.polygon(o)}typeof window=="object"&&(window.PolyBool=kp);rfe.exports=kp});var afe=ye((ior,nfe)=>{nfe.exports=function(t,r,n,i){var a=t[0],o=t[1],s=!1;n===void 0&&(n=0),i===void 0&&(i=r.length);for(var l=i-n,u=0,c=l-1;uo!=v>o&&a<(d-f)*(o-h)/(v-h)+f;_&&(s=!s)}return s}});var kM=ye((nor,ofe)=>{"use strict";var xN=T6().dot,mP=fs().BADNUM,yP=ofe.exports={};yP.tester=function(t){var r=t.slice(),n=r[0][0],i=n,a=r[0][1],o=a,s;for((r[r.length-1][0]!==r[0][0]||r[r.length-1][1]!==r[0][1])&&r.push(r[0]),s=1;si||p===mP||po||_&&u(v))}function f(v,_){var b=v[0],p=v[1];if(b===mP||bi||p===mP||po)return!1;var k=r.length,E=r[0][0],S=r[0][1],L=0,x,C,M,g,P;for(x=1;xMath.max(C,E)||p>Math.max(M,S)))if(ps||Math.abs(xN(f,u))>i)return!0;return!1};yP.filter=function(t,r){var n=[t[0]],i=0,a=0;function o(l){t.push(l);var u=n.length,c=i;n.splice(a+1);for(var f=c+1;f1){var s=t.pop();o(s)}return{addPt:o,raw:t,filtered:n}}});var lfe=ye((aor,sfe)=>{"use strict";sfe.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var Lfe=ye((oor,Cfe)=>{"use strict";var ufe=ife(),Kft=afe(),PM=qa(),Jft=So().dashStyle,CM=ka(),$ft=vf(),Qft=ip().makeEventData,zM=Eg(),eht=zM.freeMode,tht=zM.rectMode,IM=zM.drawMode,AN=zM.openMode,SN=zM.selectMode,cfe=f_(),ffe=gM(),gfe=nP(),mfe=Q1().clearOutline,yfe=u_(),bN=yfe.handleEllipse,rht=yfe.readPaths,iht=eP().newShapes,nht=ZB(),aht=_N().activateLastSelection,xP=Dr(),oht=xP.sorterAsc,_fe=kM(),LM=z6(),E0=hf().getFromId,sht=vM(),lht=wM().redrawReglTraces,bP=lfe(),Am=bP.MINSELECT,uht=_fe.filter,MN=_fe.tester,EN=KL(),hfe=EN.p2r,cht=EN.axValue,fht=EN.getTransform;function kN(e){return e.subplot!==void 0}function hht(e,t,r,n,i){var a=!kN(n),o=eht(i),s=tht(i),l=AN(i),u=IM(i),c=SN(i),f=i==="drawline",h=i==="drawcircle",d=f||h,v=n.gd,_=v._fullLayout,b=c&&_.newselection.mode==="immediate"&&a,p=_._zoomlayer,k=n.element.getBoundingClientRect(),E=n.plotinfo,S=fht(E),L=t-k.left,x=r-k.top;_._calcInverseTransform(v);var C=xP.apply3DTransform(_._invTransform)(L,x);L=C[0],x=C[1];var M=_._invScaleX,g=_._invScaleY,P=L,T=x,z="M"+L+","+x,O=n.xaxes[0],V=n.yaxes[0],G=O._length,Z=V._length,j=e.altKey&&!(IM(i)&&l),N,H,te,oe,_e,Ee,Ce;bfe(e,v,n),o&&(N=uht([[L,x]],bP.BENDPX));var me=p.selectAll("path.select-outline-"+E.id).data([1]),ie=u?_.newshape:_.newselection;u&&(n.hasText=ie.label.text||ie.label.texttemplate);var Se=u&&!l?ie.fillcolor:"rgba(0,0,0,0)",Le=ie.line.color||(a?CM.contrast(v._fullLayout.plot_bgcolor):"#7f7f7f");me.enter().append("path").attr("class","select-outline select-outline-"+E.id).style({opacity:u?ie.opacity/2:1,"stroke-dasharray":Jft(ie.line.dash,ie.line.width),"stroke-width":ie.line.width+"px","shape-rendering":"crispEdges"}).call(CM.stroke,Le).call(CM.fill,Se).attr("fill-rule","evenodd").classed("cursor-move",!!u).attr("transform",S).attr("d",z+"Z");var Ae=p.append("path").attr("class","zoombox-corners").style({fill:CM.background,stroke:CM.defaultLine,"stroke-width":1}).attr("transform",S).attr("d","M0,0Z");if(u&&n.hasText){var Fe=p.select(".label-temp");Fe.empty()&&(Fe=p.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var Pe=_._uid+bP.SELECTID,ge=[],Re=wP(v,n.xaxes,n.yaxes,n.subplot);b&&!e.shiftKey&&(n._clearSubplotSelections=function(){if(a){var Ze=O._id,ut=V._id;Mfe(v,Ze,ut,Re);for(var pt=(v.layout||{}).selections||[],Zt=[],st=!1,lt=0;lt=0){v._fullLayout._deactivateShape(v);return}if(!u){var pt=_.clickmode;LM.done(Pe).then(function(){if(LM.clear(Pe),Ze===2){for(me.remove(),_e=0;_e-1&&xfe(ut,v,n.xaxes,n.yaxes,n.subplot,n,me),pt==="event"&&FM(v,void 0);$ft.click(v,ut,E.id)}).catch(xP.error)}},n.doneFn=function(){Ae.remove(),LM.done(Pe).then(function(){LM.clear(Pe),!b&&oe&&n.selectionDefs&&(oe.subtract=j,n.selectionDefs.push(oe),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,te)),(b||u)&&RM(n,b),n.doneFnCompleted&&n.doneFnCompleted(ge),c&&FM(v,Ce)}).catch(xP.error)}}function xfe(e,t,r,n,i,a,o){var s=t._hoverdata,l=t._fullLayout,u=l.clickmode,c=u.indexOf("event")>-1,f=[],h,d,v,_,b,p,k,E,S,L;if(mht(s)){bfe(e,t,a),h=wP(t,r,n,i);var x=yht(s,h),C=x.pointNumbers.length>0;if(C?_ht(h,x):xht(h)&&(k=vfe(x))){for(o&&o.remove(),L=0;L=0}function ght(e){return e._fullLayout._activeSelectionIndex>=0}function RM(e,t){var r=e.dragmode,n=e.plotinfo,i=e.gd;pht(i)&&i._fullLayout._deactivateShape(i),ght(i)&&i._fullLayout._deactivateSelection(i);var a=i._fullLayout,o=a._zoomlayer,s=IM(r),l=SN(r);if(s||l){var u=o.selectAll(".select-outline-"+n.id);if(u&&i._fullLayout._outlining){var c;s&&(c=iht(u,e)),c&&PM.call("_guiRelayout",i,{shapes:c});var f;l&&!kN(e)&&(f=nht(u,e)),f&&(i._fullLayout._noEmitSelectedAtStart=!0,PM.call("_guiRelayout",i,{selections:f}).then(function(){t&&aht(i)})),i._fullLayout._outlining=!1}}n.selection={},n.selection.selectionDefs=e.selectionDefs=[],n.selection.mergedPolygons=e.mergedPolygons=[]}function dfe(e){return e._id}function wP(e,t,r,n){if(!e.calcdata)return[];var i=[],a=t.map(dfe),o=r.map(dfe),s,l,u;for(u=0;u0,a=i?n[0]:r;return t.selectedpoints?t.selectedpoints.indexOf(a)>-1:!1}function _ht(e,t){var r=[],n,i,a,o;for(o=0;o0&&r.push(n);if(r.length===1&&(a=r[0]===t.searchInfo,a&&(i=t.searchInfo.cd[0].trace,i.selectedpoints.length===t.pointNumbers.length))){for(o=0;o1||(t+=n.selectedpoints.length,t>1)))return!1;return t===1}function DM(e,t,r){var n;for(n=0;n-1&&t;if(!o&&t){var Ze=pfe(e,!0);if(Ze.length){var ut=Ze[0].xref,pt=Ze[0].yref;if(ut&&pt){var Zt=Efe(Ze),st=kfe([E0(e,ut,"x"),E0(e,pt,"y")]);st(ge,Zt)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:ce&&FM(e,ge),h._reselect=!1}if(!o&&h._deselect){var lt=h._deselect;s=lt.xref,l=lt.yref,Tht(s,l,c)||Mfe(e,s,l,n),ce&&(ge.points.length?FM(e,ge):PN(e)),h._deselect=!1}return{eventData:ge,selectionTesters:r}}function wht(e){var t=e.calcdata;if(t)for(var r=0;r{"use strict";Pfe.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var OM=ye((lor,Ife)=>{"use strict";Ife.exports={axisRefDescription:function(e,t,r){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",t,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",t,"("+r+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",t,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",t,"and the",r,"of the domain of the","second",e,"axis."].join(" ")}}});var Ub=ye((cor,Ffe)=>{"use strict";var Rfe=IN(),Dfe=ec(),TP=hd(),kht=vl().templatedArray,uor=OM();Ffe.exports=kht("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:Dfe({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:Rfe.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:Rfe.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",TP.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",TP.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",TP.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",TP.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:Dfe({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Sm=ye((hor,zfe)=>{"use strict";zfe.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var Cg=ye((dor,Ofe)=>{"use strict";Ofe.exports=function(t){return{valType:"color",editType:"style",anim:!0}}});var pf=ye((vor,Hfe)=>{"use strict";var qfe=df().axisHoverFormat,{hovertemplateAttrs:Cht,texttemplateAttrs:Lht,templatefallbackAttrs:Bfe}=Ll(),Nfe=Tu(),Pht=ec(),Iht=Pd().dash,Rht=Pd().pattern,Dht=So(),Fht=Sm(),AP=Ao().extendFlat,zht=Cg();function Ufe(e){return{valType:"any",dflt:0,editType:"calc"}}function Vfe(e){return{valType:"any",editType:"calc"}}function Gfe(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}Hfe.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:Ufe("x"),yperiod:Ufe("y"),xperiod0:Vfe("x0"),yperiod0:Vfe("y0"),xperiodalignment:Gfe("x"),yperiodalignment:Gfe("y"),xhoverformat:qfe("x"),yhoverformat:qfe("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:Lht(),texttemplatefallback:Bfe({editType:"calc"}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:Cht({},{keys:Fht.eventDataKeys}),hovertemplatefallback:Bfe(),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:AP({},Iht,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:zht(!0),fillgradient:AP({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:Rht,marker:AP({symbol:{valType:"enumerated",values:Dht.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:AP({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},Nfe("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},Nfe("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:Pht({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var RN=ye((gor,Xfe)=>{"use strict";var jfe=Ub(),Wfe=pf().line,Oht=Pd().dash,SP=Ao().extendFlat,qht=mc().overrideAll,Bht=vl().templatedArray,por=OM();Xfe.exports=qht(Bht("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:SP({},jfe.xref,{}),yref:SP({},jfe.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:Wfe.color,width:SP({},Wfe.width,{min:1,dflt:1}),dash:SP({},Oht,{dflt:"dot"})}}),"arraydraw","from-root")});var Jfe=ye((mor,Kfe)=>{"use strict";var Zfe=Dr(),MP=ho(),Nht=Yd(),Uht=RN(),Yfe=f_();Kfe.exports=function(t,r){Nht(t,r,{name:"selections",handleItemDefaults:Vht});for(var n=r.selections,i=0;i{"use strict";$fe.exports=function(t,r,n){n("newselection.mode");var i=n("newselection.line.width");i&&(n("newselection.line.color"),n("newselection.line.dash")),n("activeselection.fillcolor"),n("activeselection.opacity")}});var qM=ye((_or,rhe)=>{"use strict";var Ght=qa(),ehe=Dr(),the=hf();rhe.exports=function(t){return function(n,i){var a=n[t];if(Array.isArray(a))for(var o=Ght.subplotsRegistry.cartesian,s=o.idRegex,l=i._subplots,u=l.xaxis,c=l.yaxis,f=l.cartesian,h=i._has("cartesian"),d=0;d{"use strict";var ihe=_N(),BM=Lfe();nhe.exports={moduleType:"component",name:"selections",layoutAttributes:RN(),supplyLayoutDefaults:Jfe(),supplyDrawNewSelectionDefaults:Qfe(),includeBasePlot:qM()("selections"),draw:ihe.draw,drawOne:ihe.drawOne,reselect:BM.reselect,prepSelect:BM.prepSelect,clearOutline:BM.clearOutline,clearSelectionsCache:BM.clearSelectionsCache,selectOnClick:BM.selectOnClick}});var NN=ye((bor,Ahe)=>{"use strict";var qN=Oa(),k0=Dr(),ahe=k0.numberFormat,Hht=cd(),jht=RL(),EP=qa(),vhe=k0.strTranslate,Wht=ru(),ohe=ka(),d_=So(),Xht=vf(),she=ho(),Zht=Sg(),Yht=yv(),phe=Eg(),kP=phe.selectingOrDrawing,Kht=phe.freeMode,Jht=$h().FROM_TL,$ht=vM(),Qht=wM().redrawReglTraces,edt=Mc(),FN=hf().getFromId,tdt=Of().prepSelect,rdt=Of().clearOutline,idt=Of().selectOnClick,DN=fN(),BN=hd(),lhe=BN.MINDRAG,np=BN.MINZOOM,uhe=!0;function ndt(e,t,r,n,i,a,o,s){var l=e._fullLayout._zoomlayer,u=o+s==="nsew",c=(o+s).length===1,f,h,d,v,_,b,p,k,E,S,L,x,C,M,g,P,T,z,O,V,G,Z,j;r+=t.yaxis._shift;function N(){if(f=t.xaxis,h=t.yaxis,E=f._length,S=h._length,p=f._offset,k=h._offset,d={},d[f._id]=f,v={},v[h._id]=h,o&&s)for(var It=t.overlays,mt=0;mt=0){er._fullLayout._deactivateShape(er);return}var lr=er._fullLayout.clickmode;if(ON(er),It===2&&!c&&cr(),u)lr.indexOf("select")>-1&&idt(mt,er,_,b,t.id,oe),lr.indexOf("event")>-1&&Xht.click(er,mt,t.id);else if(It===1&&c){var Tr=o?h:f,Lr=o==="s"||s==="w"?0:1,ti=Tr._name+".range["+Lr+"]",Br=adt(Tr,Lr),Vr="left",dt="middle";if(Tr.fixedrange)return;o?(dt=o==="n"?"top":"bottom",Tr.side==="right"&&(Vr="right")):s==="e"&&(Vr="right"),er._context.showAxisRangeEntryBoxes&&qN.select(te).call(Wht.makeEditable,{gd:er,immediate:!0,background:er._fullLayout.paper_bgcolor,text:String(Br),fill:Tr.tickfont?Tr.tickfont.color:"#444",horizontalAlign:Vr,verticalAlign:dt}).on("edit",function(Ge){var Je=Tr.d2r(Ge);Je!==void 0&&EP.call("_guiRelayout",er,ti,Je)})}}Yht.init(oe);var Ce,me,ie,Se,Le,Ae,Fe,Pe,ge,Re;function ce(It,mt,er){var lr=te.getBoundingClientRect();Ce=mt-lr.left,me=er-lr.top,e._fullLayout._calcInverseTransform(e);var Tr=k0.apply3DTransform(e._fullLayout._invTransform)(Ce,me);Ce=Tr[0],me=Tr[1],ie={l:Ce,r:Ce,w:0,t:me,b:me,h:0},Se=e._hmpixcount?e._hmlumcount/e._hmpixcount:Hht(e._fullLayout.plot_bgcolor).getLuminance(),Le="M0,0H"+E+"V"+S+"H0V0",Ae=!1,Fe="xy",Re=!1,Pe=yhe(l,Se,p,k,Le),ge=_he(l,p,k)}function Ze(It,mt){if(e._transitioningWithDuration)return!1;var er=Math.max(0,Math.min(E,Z*It+Ce)),lr=Math.max(0,Math.min(S,j*mt+me)),Tr=Math.abs(er-Ce),Lr=Math.abs(lr-me);ie.l=Math.min(Ce,er),ie.r=Math.max(Ce,er),ie.t=Math.min(me,lr),ie.b=Math.max(me,lr);function ti(){Fe="",ie.r=ie.l,ie.t=ie.b,ge.attr("d","M0,0Z")}if(L.isSubplotConstrained)Tr>np||Lr>np?(Fe="xy",Tr/E>Lr/S?(Lr=Tr*S/E,me>lr?ie.t=me-Lr:ie.b=me+Lr):(Tr=Lr*E/S,Ce>er?ie.l=Ce-Tr:ie.r=Ce+Tr),ge.attr("d",CP(ie))):ti();else if(x.isSubplotConstrained)if(Tr>np||Lr>np){Fe="xy";var Br=Math.min(ie.l/E,(S-ie.b)/S),Vr=Math.max(ie.r/E,(S-ie.t)/S);ie.l=Br*E,ie.r=Vr*E,ie.b=(1-Br)*S,ie.t=(1-Vr)*S,ge.attr("d",CP(ie))}else ti();else!M||Lr0){var Ge;if(x.isSubplotConstrained||!C&&M.length===1){for(Ge=0;Ge<_.length;Ge++)_[Ge].range=_[Ge]._r.slice(),DN(_[Ge],1-mt/S);It=mt*E/S,Vr=It/2}if(x.isSubplotConstrained||!M&&C.length===1){for(Ge=0;Ge1&&(ti.maxallowed!==void 0&&P===(ti.range[0]1&&(Br.maxallowed!==void 0&&T===(Br.range[0]=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function sdt(e,t,r){return e?e==="nsew"?r?"":t==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function yhe(e,t,r,n,i){return e.append("path").attr("class","zoombox").style({fill:t>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",vhe(r,n)).attr("d",i+"Z")}function _he(e,t,r){return e.append("path").attr("class","zoombox-corners").style({fill:ohe.background,stroke:ohe.defaultLine,"stroke-width":1,opacity:0}).attr("transform",vhe(t,r)).attr("d","M0,0Z")}function xhe(e,t,r,n,i,a){e.attr("d",n+"M"+r.l+","+r.t+"v"+r.h+"h"+r.w+"v-"+r.h+"h-"+r.w+"Z"),bhe(e,t,i,a)}function bhe(e,t,r,n){r||(e.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),t.transition().style("opacity",1).duration(200))}function ON(e){qN.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function whe(e){uhe&&e.data&&e._context.showTips&&(k0.notifier(k0._(e,"Double-click to zoom back out"),"long"),uhe=!1)}function ldt(e,t){return"M"+(e.l-.5)+","+(t-np-.5)+"h-3v"+(2*np+1)+"h3ZM"+(e.r+.5)+","+(t-np-.5)+"h3v"+(2*np+1)+"h-3Z"}function udt(e,t){return"M"+(t-np-.5)+","+(e.t-.5)+"v-3h"+(2*np+1)+"v3ZM"+(t-np-.5)+","+(e.b+.5)+"v3h"+(2*np+1)+"v-3Z"}function CP(e){var t=Math.floor(Math.min(e.b-e.t,e.r-e.l,np)/2);return"M"+(e.l-3.5)+","+(e.t-.5+t)+"h3v"+-t+"h"+t+"v-3h-"+(t+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+t)+"h-3v"+-t+"h"+-t+"v-3h"+(t+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-t)+"h-3v"+t+"h"+-t+"v3h"+(t+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-t)+"h3v"+t+"h"+t+"v3h-"+(t+3)+"Z"}function hhe(e,t,r,n,i){for(var a=!1,o={},s={},l,u,c,f,h=(i||{}).xaHash,d=(i||{}).yaHash,v=0;v{"use strict";var cdt=Oa(),LP=vf(),fdt=yv(),hdt=Sg(),Lg=NN().makeDragBox,gd=hd().DRAGGERSIZE;PP.initInteractions=function(t){var r=t._fullLayout;if(t._context.staticPlot){cdt.select(t).selectAll(".drag").remove();return}if(!(!r._has("cartesian")&&!r._has("splom"))){var n=Object.keys(r._plots||{}).sort(function(a,o){if((r._plots[a].mainplot&&!0)===(r._plots[o].mainplot&&!0)){var s=a.split("y"),l=o.split("y");return s[0]===l[0]?Number(s[1]||1)-Number(l[1]||1):Number(s[0]||1)-Number(l[0]||1)}return r._plots[a].mainplot?1:-1});n.forEach(function(a){var o=r._plots[a],s=o.xaxis,l=o.yaxis;if(!o.mainplot){var u=Lg(t,o,s._offset,l._offset,s._length,l._length,"ns","ew");u.onmousemove=function(h){t._fullLayout._rehover=function(){t._fullLayout._hoversubplot===a&&t._fullLayout._plots[a]&&LP.hover(t,h,a)},LP.hover(t,h,a),t._fullLayout._lasthover=u,t._fullLayout._hoversubplot=a},u.onmouseout=function(h){t._dragging||(t._fullLayout._hoversubplot=null,fdt.unhover(t,h))},t._context.showAxisDragHandles&&(Lg(t,o,s._offset-gd,l._offset-gd,gd,gd,"n","w"),Lg(t,o,s._offset+s._length,l._offset-gd,gd,gd,"n","e"),Lg(t,o,s._offset-gd,l._offset+l._length,gd,gd,"s","w"),Lg(t,o,s._offset+s._length,l._offset+l._length,gd,gd,"s","e"))}if(t._context.showAxisDragHandles){if(a===s._mainSubplot){var c=s._mainLinePosition;s.side==="top"&&(c-=gd),Lg(t,o,s._offset+s._length*.1,c,s._length*.8,gd,"","ew"),Lg(t,o,s._offset,c,s._length*.1,gd,"","w"),Lg(t,o,s._offset+s._length*.9,c,s._length*.1,gd,"","e")}if(a===l._mainSubplot){var f=l._mainLinePosition;l.side!=="right"&&(f-=gd),Lg(t,o,f,l._offset+l._length*.1,gd,l._length*.8,"ns",""),Lg(t,o,f,l._offset+l._length*.9,gd,l._length*.1,"s",""),Lg(t,o,f,l._offset,gd,l._length*.1,"n","")}}});var i=r._hoverlayer.node();i.onmousemove=function(a){a.target=t._fullLayout._lasthover,LP.hover(t,a,r._hoversubplot)},i.onclick=function(a){a.target=t._fullLayout._lasthover,LP.click(t,a)},i.onmousedown=function(a){t._fullLayout._lasthover.onmousedown(a)},PP.updateFx(t)}};PP.updateFx=function(e){var t=e._fullLayout,r=t.dragmode==="pan"?"move":"crosshair";hdt(t._draggers,r)}});var Ehe=ye((Tor,Mhe)=>{"use strict";var She=qa();Mhe.exports=function(t){for(var r=She.layoutArrayContainers,n=She.layoutArrayRegexes,i=t.split("[")[0],a,o,s=0;s{"use strict";var ddt=my(),VN=w6(),NM=G1(),vdt=R6().sorterAsc,GN=qa();UM.containerArrayMatch=Ehe();var pdt=UM.isAddVal=function(t){return t==="add"||ddt(t)},khe=UM.isRemoveVal=function(t){return t===null||t==="remove"};UM.applyContainerArrayChanges=function(t,r,n,i,a){var o=r.astr,s=GN.getComponentMethod(o,"supplyLayoutDefaults"),l=GN.getComponentMethod(o,"draw"),u=GN.getComponentMethod(o,"drawOne"),c=i.replot||i.recalc||s===VN||l===VN,f=t.layout,h=t._fullLayout;if(n[""]){Object.keys(n).length>1&&NM.warn("Full array edits are incompatible with other edits",o);var d=n[""][""];if(khe(d))r.set(null);else if(Array.isArray(d))r.set(d);else return NM.warn("Unrecognized full array edit value",o,d),!0;return c?!1:(s(f,h),l(t),!0)}var v=Object.keys(n).map(Number).sort(vdt),_=r.get(),b=_||[],p=a(h,o).get(),k=[],E=-1,S=b.length,L,x,C,M,g,P,T,z;for(L=0;Lb.length-(T?0:1)){NM.warn("index out of range",o,C);continue}if(P!==void 0)g.length>1&&NM.warn("Insertion & removal are incompatible with edits to the same index.",o,C),khe(P)?k.push(C):T?(P==="add"&&(P={}),b.splice(C,0,P),p&&p.splice(C,0,{})):NM.warn("Unrecognized full object edit value",o,C,P),E===-1&&(E=C);else for(x=0;x=0;L--)b.splice(k[L],1),p&&p.splice(k[L],1);if(b.length?_||r.set(b):r.set(null),c)return!1;if(s(f,h),u!==VN){var O;if(E===-1)O=v;else{for(S=Math.max(b.length,S),O=[],L=0;L=E));L++)O.push(C);for(L=E;L{"use strict";var Rhe=Eo(),Dhe=qa(),Uv=Dr(),VM=Mc(),Fhe=hf(),zhe=ka(),GM=Fhe.cleanId,gdt=Fhe.getFromTrace,HN=Dhe.traceIs,mdt=["x","y","z"];C0.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&Uv.log("Clearing previous rejected promises from queue."),e._promises=[]};C0.cleanLayout=function(e){var t,r;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var n=(VM.subplotsRegistry.cartesian||{}).attrRegex,i=(VM.subplotsRegistry.polar||{}).attrRegex,a=(VM.subplotsRegistry.ternary||{}).attrRegex,o=(VM.subplotsRegistry.gl3d||{}).attrRegex,s=Object.keys(e);for(t=0;t3?(b.x=1.02,b.xanchor="left"):b.x<-2&&(b.x=-.02,b.xanchor="right"),b.y>3?(b.y=1.02,b.yanchor="bottom"):b.y<-2&&(b.y=-.02,b.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),zhe.clean(e),e.template&&e.template.layout&&C0.cleanLayout(e.template.layout),e};function Q3(e,t){var r=e[t],n=t.charAt(0);r&&r!=="paper"&&(e[t]=GM(r,n,!0))}C0.cleanData=function(e){for(var t=0;t0)return e.slice(0,t)}C0.hasParent=function(e,t){for(var r=Ihe(t);r;){if(r in e)return!0;r=Ihe(r)}return!1};C0.clearAxisTypes=function(e,t,r){for(var n=0;n{let r=(...n)=>n.every(i=>Uv.isPlainObject(i))||n.every(i=>Array.isArray(i));if([e,t].every(n=>Array.isArray(n))){if(e.length!==t.length)return!1;for(let n=0;nUv.isPlainObject(n))){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e){if(n.startsWith("_"))continue;let i=e[n],a=t[n];if(i!==a&&!(r(i,a)?jN(i,a):!1))return!1}return!0}return!1};C0.collectionsAreEqual=jN});var HP=ye(_l=>{"use strict";var FP=Oa(),xdt=Eo(),bdt=nq(),Sa=Dr(),Ec=Sa.nestedProperty,ZN=_3(),ap=yne(),L0=qa(),VP=w3(),Qo=Mc(),Vv=ho(),wdt=xB(),Tdt=Rd(),WN=So(),Adt=ka(),Sdt=UN().initInteractions,Mdt=Wp(),Edt=Of().clearOutline,Vhe=cb().dfltConfig,RP=Che(),vh=Ohe(),Au=wM(),v_=mc(),kdt=hd().AX_NAME_PATTERN,XN=0,qhe=5;function Cdt(e,t,r,n){var i;if(e=Sa.getGraphDiv(e),ZN.init(e),Sa.isPlainObject(t)){var a=t;t=a.data,r=a.layout,n=a.config,i=a.frames}var o=ZN.triggerHandler(e,"plotly_beforeplot",[t,r,n]);if(o===!1)return Promise.reject();!t&&!r&&!Sa.isPlotDiv(e)&&Sa.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function s(){if(i)return _l.addFrames(e,i)}Hhe(e,n),r||(r={}),FP.select(e).classed("js-plotly-plot",!0),WN.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var l=(e.data||[]).length===0&&Array.isArray(t);Array.isArray(t)&&(vh.cleanData(t),l?e.data=t:e.data.push.apply(e.data,t),e.empty=!1),(!e.layout||l)&&(e.layout=vh.cleanLayout(r)),Qo.supplyDefaults(e);var u=e._fullLayout,c=u._has("cartesian");u._replotting=!0,(l||u._shouldCreateBgLayer)&&($dt(e),u._shouldCreateBgLayer&&delete u._shouldCreateBgLayer),WN.initGradients(e),WN.initPatterns(e),l&&Vv.saveShowSpikeInitial(e);var f=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;f&&Qo.doCalcdata(e);for(var h=0;h=e.data.length||i<-e.data.length)throw new Error(r+" must be valid indices for gd.data.");if(t.indexOf(i,n+1)>-1||i>=0&&t.indexOf(-e.data.length+i)>-1||i<0&&t.indexOf(e.data.length+i)>-1)throw new Error("each index in "+r+" must be unique.")}}function jhe(e,t,r){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(t)||(t=[t]),OP(e,t,"currentIndices"),typeof r!="undefined"&&!Array.isArray(r)&&(r=[r]),typeof r!="undefined"&&OP(e,r,"newIndices"),typeof r!="undefined"&&t.length!==r.length)throw new Error("current and new indices must be of equal length.")}function Ddt(e,t,r){var n,i;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("traces must be defined.");for(Array.isArray(t)||(t=[t]),n=0;n=0&&c=0&&c0&&typeof M.parts[T]!="string";)T--;var z=M.parts[T],O=M.parts[T-1]+"."+z,V=M.parts.slice(0,T).join("."),G=Ec(e.layout,V).get(),Z=Ec(n,V).get(),j=M.get();if(g!==void 0){p[C]=g,k[C]=z==="reverse"?g:Ly(j);var N=VP.getLayoutValObject(n,M.parts);if(N&&N.impliedEdits&&g!==null)for(var H in N.impliedEdits)E(Sa.relativeAttr(C,H),N.impliedEdits[H]);if(["width","height"].indexOf(C)!==-1)if(g){E("autosize",null);var te=C==="height"?"width":"height";E(te,n[te])}else n[C]=e._initialAutoSize[C];else if(C==="autosize")E("width",g?null:n.width),E("height",g?null:n.height);else if(O.match(ede))x(O),Ec(n,V+"._inputRange").set(null);else if(O.match(tde)){x(O),Ec(n,V+"._inputRange").set(null);var oe=Ec(n,V).get();oe._inputDomain&&(oe._input.domain=oe._inputDomain.slice())}else O.match(qdt)&&Ec(n,V+"._inputDomain").set(null);if(z==="type"){L=G;var _e=Z.type==="linear"&&g==="log",Ee=Z.type==="log"&&g==="linear";if(_e||Ee){if(!L||!L.range)E(V+".autorange",!0);else if(Z.autorange)_e&&(L.range=L.range[1]>L.range[0]?[1,2]:[2,1]);else{var Ce=L.range[0],me=L.range[1];_e?(Ce<=0&&me<=0&&E(V+".autorange",!0),Ce<=0?Ce=me/1e6:me<=0&&(me=Ce/1e6),E(V+".range[0]",Math.log(Ce)/Math.LN10),E(V+".range[1]",Math.log(me)/Math.LN10)):(E(V+".range[0]",Math.pow(10,Ce)),E(V+".range[1]",Math.pow(10,me)))}Array.isArray(n._subplots.polar)&&n._subplots.polar.length&&n[M.parts[0]]&&M.parts[1]==="radialaxis"&&delete n[M.parts[0]]._subplot.viewInitial["radialaxis.range"],L0.getComponentMethod("annotations","convertCoords")(e,Z,g,E),L0.getComponentMethod("images","convertCoords")(e,Z,g,E)}else E(V+".autorange",!0),E(V+".range",null);Ec(n,V+"._inputRange").set(null)}else if(z.match(kdt)){var ie=Ec(n,C).get(),Se=(g||{}).type;(!Se||Se==="-")&&(Se="linear"),L0.getComponentMethod("annotations","convertCoords")(e,ie,Se,E),L0.getComponentMethod("images","convertCoords")(e,ie,Se,E)}var Le=RP.containerArrayMatch(C);if(Le){c=Le.array,f=Le.index;var Ae=Le.property,Fe=N||{editType:"calc"};f!==""&&Ae===""&&(RP.isAddVal(g)?k[C]=null:RP.isRemoveVal(g)?k[C]=(Ec(r,c).get()||[])[f]:Sa.warn("unrecognized full object value",t)),v_.update(b,Fe),u[c]||(u[c]={});var Pe=u[c][f];Pe||(Pe=u[c][f]={}),Pe[Ae]=g,delete t[C]}else z==="reverse"?(G.range?G.range.reverse():(E(V+".autorange",!0),G.range=[1,0]),Z.autorange?b.calc=!0:b.plot=!0):(C==="dragmode"&&(g===!1&&j!==!1||g!==!1&&j===!1)||n._has("scatter-like")&&n._has("regl")&&C==="dragmode"&&(g==="lasso"||g==="select")&&!(j==="lasso"||j==="select")?b.plot=!0:N?v_.update(b,N):b.calc=!0,M.set(g))}}for(c in u){var ge=RP.applyContainerArrayChanges(e,a(r,c),u[c],b,a);ge||(b.plot=!0)}for(var Re in S){L=Vv.getFromId(e,Re);var ce=L&&L._constraintGroup;if(ce){b.calc=!0;for(var Ze in ce)S[Ze]||(Vv.getFromId(e,Ze)._constraintShrinkable=!0)}}(ide(e)||t.height||t.width)&&(b.plot=!0);var ut=n.shapes;for(f=0;f1;)if(n.pop(),r=Ec(t,n.join(".")+".uirevision").get(),r!==void 0)return r;return t.uirevision}function Udt(e,t){for(var r=0;r[V,e._ev.listeners(V)]);a=_l.newPlot(e,t,r,n).then(()=>{for(let[V,G]of O)G.forEach(Z=>e.on(V,Z));return _l.react(e,t,r,n)})}else{e.data=t||[],vh.cleanData(e.data),e.layout=r||{},vh.cleanLayout(e.layout),Gdt(e.data,e.layout,s,l),Qo.supplyDefaults(e,{skipUpdateCalc:!0});var f=e._fullData,h=e._fullLayout,d=h.datarevision===void 0,v=h.transition,_=Wdt(e,l,h,d,v),b=_.newDataRevision,p=jdt(e,s,f,d,v,b);if(ide(e)&&(_.layoutReplot=!0),p.calc||_.calc){e.calcdata=void 0;for(var k=Object.getOwnPropertyNames(h),E=0;E(c||e.emit("plotly_react",{config:n,data:t,layout:r}),e))}function jdt(e,t,r,n,i,a){var o=t.length===r.length;if(!i&&!o)return{fullReplot:!0,calc:!0};var s=v_.traceFlags();s.arrays={},s.nChanges=0,s.nChangesAnim=0;var l,u;function c(d){var v=VP.getTraceValObject(u,d);return!u._module.animatable&&v.anim&&(v.anim=!1),v}var f={getValObject:c,flags:s,immutable:n,transition:i,newDataRevision:a,gd:e},h={};for(l=0;l=i.length?i[0]:i[u]:i}function s(u){return Array.isArray(a)?u>=a.length?a[0]:a[u]:a}function l(u,c){var f=0;return function(){if(u&&++f===c)return u()}}return new Promise(function(u,c){function f(){if(n._frameQueue.length!==0){for(;n._frameQueue.length;){var z=n._frameQueue.pop();z.onInterrupt&&z.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function h(z){if(z.length!==0){for(var O=0;On._timeToNext&&v()};z()}var b=0;function p(z){return Array.isArray(i)?b>=i.length?z.transitionOpts=i[b]:z.transitionOpts=i[0]:z.transitionOpts=i,b++,z}var k,E,S=[],L=t==null,x=Array.isArray(t),C=!L&&!x&&Sa.isPlainObject(t);if(C)S.push({type:"object",data:p(Sa.extendFlat({},t))});else if(L||["string","number"].indexOf(typeof t)!==-1)for(k=0;k0&&PP)&&T.push(E);S=T}}S.length>0?h(S):(e.emit("plotly_animated"),u())})}function Zdt(e,t,r){if(e=Sa.getGraphDiv(e),t==null)return Promise.resolve();if(!Sa.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var n,i,a,o,s=e._transitionData._frames,l=e._transitionData._frameHash;if(!Array.isArray(t))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+t);var u=s.length+t.length*2,c=[],f={};for(n=t.length-1;n>=0;n--)if(Sa.isPlainObject(t[n])){var h=t[n].name,d=(l[h]||f[h]||{}).name,v=t[n].name,_=l[d]||f[d];d&&v&&typeof v=="number"&&_&&XNM.index?-1:C.index=0;n--){if(i=c[n].frame,typeof i.name=="number"&&Sa.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!i.name)for(;l[i.name="frame "+e._transitionData._counter++];);if(l[i.name]){for(a=0;a=0;r--)n=t[r],a.push({type:"delete",index:n}),o.unshift({type:"insert",index:n,value:i[n]});var s=Qo.modifyFrames,l=Qo.modifyFrames,u=[e,o],c=[e,a];return ap&&ap.add(e,s,u,l,c),Qo.modifyFrames(e,a)}function Kdt(e){e=Sa.getGraphDiv(e);var t=e._fullLayout||{},r=e._fullData||[];return Qo.cleanPlot([],{},r,t),Qo.purge(e),ZN.purge(e),t._container&&t._container.remove(),delete e._context,e}function Jdt(e){var t=e._fullLayout,r=e.getBoundingClientRect();if(!Sa.equalDomRects(r,t._lastBBox)){var n=t._invTransform=Sa.inverseTransformMatrix(Sa.getFullTransformMatrix(e));t._invScaleX=Math.sqrt(n[0][0]*n[0][0]+n[0][1]*n[0][1]+n[0][2]*n[0][2]),t._invScaleY=Math.sqrt(n[1][0]*n[1][0]+n[1][1]*n[1][1]+n[1][2]*n[1][2]),t._lastBBox=r}}function $dt(e){var t=FP.select(e),r=e._fullLayout;if(r._calcInverseTransform=Jdt,r._calcInverseTransform(e),r._container=t.selectAll(".plot-container").data([0]),r._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),r._paperdiv=r._container.selectAll(".svg-container").data([0]),r._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),r._glcontainer=r._paperdiv.selectAll(".gl-container").data([{}]),r._glcontainer.enter().append("div").classed("gl-container",!0),r._paperdiv.selectAll(".main-svg").remove(),r._paperdiv.select(".modebar-container").remove(),r._paper=r._paperdiv.insert("svg",":first-child").classed("main-svg",!0),r._toppaper=r._paperdiv.append("svg").classed("main-svg",!0),r._modebardiv=r._paperdiv.append("div"),delete r._modeBar,r._hoverpaper=r._paperdiv.append("svg").classed("main-svg",!0),!r._uid){var n={};FP.selectAll("defs").each(function(){this.id&&(n[this.id.split("-")[1]]=1)}),r._uid=Sa.randstr(n)}r._paperdiv.selectAll(".main-svg").attr(Mdt.svgAttrs),r._defs=r._paper.append("defs").attr("id","defs-"+r._uid),r._clips=r._defs.append("g").classed("clips",!0),r._topdefs=r._toppaper.append("defs").attr("id","topdefs-"+r._uid),r._topclips=r._topdefs.append("g").classed("clips",!0),r._bgLayer=r._paper.append("g").classed("bglayer",!0),r._draggers=r._paper.append("g").classed("draglayer",!0);var i=r._paper.append("g").classed("layer-below",!0);r._imageLowerLayer=i.append("g").classed("imagelayer",!0),r._shapeLowerLayer=i.append("g").classed("shapelayer",!0),r._cartesianlayer=r._paper.append("g").classed("cartesianlayer",!0),r._polarlayer=r._paper.append("g").classed("polarlayer",!0),r._smithlayer=r._paper.append("g").classed("smithlayer",!0),r._ternarylayer=r._paper.append("g").classed("ternarylayer",!0),r._geolayer=r._paper.append("g").classed("geolayer",!0),r._funnelarealayer=r._paper.append("g").classed("funnelarealayer",!0),r._pielayer=r._paper.append("g").classed("pielayer",!0),r._iciclelayer=r._paper.append("g").classed("iciclelayer",!0),r._treemaplayer=r._paper.append("g").classed("treemaplayer",!0),r._sunburstlayer=r._paper.append("g").classed("sunburstlayer",!0),r._indicatorlayer=r._toppaper.append("g").classed("indicatorlayer",!0),r._glimages=r._paper.append("g").classed("glimages",!0);var a=r._toppaper.append("g").classed("layer-above",!0);r._imageUpperLayer=a.append("g").classed("imagelayer",!0),r._shapeUpperLayer=a.append("g").classed("shapelayer",!0),r._selectionLayer=r._toppaper.append("g").classed("selectionlayer",!0),r._infolayer=r._toppaper.append("g").classed("infolayer",!0),r._menulayer=r._toppaper.append("g").classed("menulayer",!0),r._zoomlayer=r._toppaper.append("g").classed("zoomlayer",!0),r._hoverlayer=r._hoverpaper.append("g").classed("hoverlayer",!0),r._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}_l.animate=Xdt;_l.addFrames=Zdt;_l.deleteFrames=Ydt;_l.addTraces=Khe;_l.deleteTraces=Jhe;_l.extendTraces=Zhe;_l.moveTraces=YN;_l.prependTraces=Yhe;_l.newPlot=Rdt;_l._doPlot=Cdt;_l.purge=Kdt;_l.react=Hdt;_l.redraw=Idt;_l.relayout=HM;_l.restyle=qP;_l.setPlotConfig=Ldt;_l.update=NP;_l._guiRelayout=KN(HM);_l._guiRestyle=KN(qP);_l._guiUpdate=KN(NP);_l._storeDirectGUIEdit=Odt});var Py=ye(Mm=>{"use strict";var Qdt=qa();Mm.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Mm.getRedrawFunc=function(e){return function(){Qdt.getComponentMethod("colorbar","draw")(e)}};Mm.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Mm.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var nde=window.URL||window.webkitURL;Mm.createObjectURL=function(e){return nde.createObjectURL(e)};Mm.revokeObjectURL=function(e){return nde.revokeObjectURL(e)};Mm.createBlob=function(e,t){if(t==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(t==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var r=evt(window.atob(e));return new window.Blob([r],{type:"image/"+t})};Mm.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function evt(e){for(var t=e.length,r=new ArrayBuffer(t),n=new Uint8Array(r),i=0;i{"use strict";var $N=Oa(),kor=Dr(),tvt=So(),rvt=ka(),Cor=Wp(),JN=/"/g,WM="TOBESTRIPPED",ivt=new RegExp('("'+WM+")|("+WM+'")',"g");function nvt(e){var t=$N.select("body").append("div").style({display:"none"}).html(""),r=e.replace(/(&[^;]*;)/gi,function(n){return n==="<"?"<":n==="&rt;"?">":n.indexOf("<")!==-1||n.indexOf(">")!==-1?"":t.html(n).text()});return t.remove(),r}function avt(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}ade.exports=function(t,r,n){var i=t._fullLayout,a=i._paper,o=i._toppaper,s=i.width,l=i.height,u;a.insert("rect",":first-child").call(tvt.setRect,0,0,s,l).call(rvt.fill,i.paper_bgcolor);var c=i._basePlotModules||[];for(u=0;u{"use strict";var ovt=Dr(),svt=pb().EventEmitter,XM=Py();function lvt(e){var t=e.emitter||new svt,r=new Promise(function(n,i){var a=window.Image,o=e.svg,s=e.format||"png",l=e.canvas,u=e.scale||1,c=e.width||300,f=e.height||150,h=u*c,d=u*f,v=l.getContext("2d",{willReadFrequently:!0}),_=new a,b,p;s==="svg"||ovt.isSafari()?p=XM.encodeSVG(o):(b=XM.createBlob(o,"svg"),p=XM.createObjectURL(b)),l.width=h,l.height=d,_.onload=function(){var k;switch(b=null,XM.revokeObjectURL(p),s!=="svg"&&v.drawImage(_,0,0,h,d),s){case"jpeg":k=l.toDataURL("image/jpeg");break;case"png":k=l.toDataURL("image/png");break;case"webp":k=l.toDataURL("image/webp");break;case"svg":k=p;break;default:var E="Image format is not jpeg, png, svg or webp.";if(i(new Error(E)),!e.promise)return t.emit("error",E)}n(k),e.promise||t.emit("success",k)},_.onerror=function(k){if(b=null,XM.revokeObjectURL(p),i(k),!e.promise)return t.emit("error",k)},_.src=p});return e.promise?r:t}ode.exports=lvt});var eU=ye((Ior,ude)=>{"use strict";var sde=Eo(),lde=HP(),uvt=Mc(),Em=Dr(),ZM=Py(),cvt=jP(),fvt=WP(),hvt=l6().version,QN={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function dvt(e,t){t=t||{};var r,n,i,a;Em.isPlainObject(e)?(r=e.data||[],n=e.layout||{},i=e.config||{},a={}):(e=Em.getGraphDiv(e),r=Em.extendDeep([],e.data),n=Em.extendDeep({},e.layout),i=e._context,a=e._fullLayout||{});function o(x){return!(x in t)||Em.validate(t[x],QN[x])}if(!o("width")&&t.width!==null||!o("height")&&t.height!==null)throw new Error("Height and width should be pixel values.");if(!o("format"))throw new Error("Export format is not "+Em.join2(QN.format.values,", "," or ")+".");var s={};function l(x,C){return Em.coerce(t,s,QN,x,C)}var u=l("format"),c=l("width"),f=l("height"),h=l("scale"),d=l("setBackground"),v=l("imageDataOnly"),_=document.createElement("div");_.style.position="absolute",_.style.left="-5000px",document.body.appendChild(_);var b=Em.extendFlat({},n);c?b.width=c:t.width===null&&sde(a.width)&&(b.width=a.width),f?b.height=f:t.height===null&&sde(a.height)&&(b.height=a.height);var p=Em.extendFlat({},i,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),k=ZM.getRedrawFunc(_);function E(){return new Promise(function(x){setTimeout(x,ZM.getDelay(_._fullLayout))})}function S(){return new Promise(function(x,C){var M=cvt(_,u,h),g=_._fullLayout.width,P=_._fullLayout.height;function T(){lde.purge(_),document.body.removeChild(_)}if(u==="full-json"){var z=uvt.graphJson(_,!1,"keepdata","object",!0,!0);return z.version=hvt,z=JSON.stringify(z),T(),x(v?z:ZM.encodeJSON(z))}if(T(),u==="svg")return x(v?M:ZM.encodeSVG(M));var O=document.createElement("canvas");O.id=Em.randstr(),fvt({format:u,width:g,height:P,scale:h,canvas:O,svg:M,promise:!0}).then(x).catch(C)})}function L(x){return v?x.replace(ZM.IMAGE_URL_PREFIX,""):x}return new Promise(function(x,C){lde.newPlot(_,r,b,p).then(k).then(E).then(S).then(function(M){x(L(M))}).catch(function(M){C(M)})})}ude.exports=dvt});var hde=ye((Ror,fde)=>{"use strict";var P0=Dr(),vvt=Mc(),pvt=w3(),gvt=cb().dfltConfig,Pg=P0.isPlainObject,Gb=Array.isArray,tU=P0.isArrayOrTypedArray;fde.exports=function(t,r){t===void 0&&(t=[]),r===void 0&&(r={});var n=pvt.get(),i=[],a={_context:P0.extendFlat({},gvt)},o,s;Gb(t)?(a.data=P0.extendDeep([],t),o=t):(a.data=[],o=[],i.push(md("array","data"))),Pg(r)?(a.layout=P0.extendDeep({},r),s=r):(a.layout={},s={},arguments.length>1&&i.push(md("object","layout"))),vvt.supplyDefaults(a);for(var l=a._fullData,u=o.length,c=0;cf.length&&n.push(md("unused",i,u.concat(f.length)));var p=f.length,k=Array.isArray(b);k&&(p=Math.min(p,b.length));var E,S,L,x,C;if(h.dimensions===2)for(S=0;Sf[S].length&&n.push(md("unused",i,u.concat(S,f[S].length)));var M=f[S].length;for(E=0;E<(k?Math.min(M,b[S].length):M);E++)L=k?b[S][E]:b,x=c[S][E],C=f[S][E],P0.validate(x,L)?C!==x&&C!==+x&&n.push(md("dynamic",i,u.concat(S,E),x,C)):n.push(md("value",i,u.concat(S,E),x))}else n.push(md("array",i,u.concat(S),c[S]));else for(S=0;S{"use strict";var Tvt=Dr(),ZP=Py();function Avt(e,t,r){var n=document.createElement("a"),i="download"in n,a=new Promise(function(o,s){var l,u;if(i)return l=ZP.createBlob(e,r),u=ZP.createObjectURL(l),n.href=u,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n),ZP.revokeObjectURL(u),l=null,o(t);if(Tvt.isSafari()){var c=r==="svg"?",":";base64,";return ZP.octetStream(c+encodeURIComponent(e)),o(t)}s(new Error("download error"))});return a}dde.exports=Avt});var rU=ye((zor,gde)=>{"use strict";var pde=Dr(),Svt=eU(),Mvt=vde(),For=Py();function Evt(e,t){var r;return pde.isPlainObject(e)||(r=pde.getGraphDiv(e)),t=t||{},t.format=t.format||"png",t.width=t.width||null,t.height=t.height||null,t.imageDataOnly=!0,new Promise(function(n,i){r&&r._snapshotInProgress&&i(new Error("Snapshotting already in progress.")),r&&(r._snapshotInProgress=!0);var a=Svt(e,t),o=t.filename||e.fn||"newplot";o+="."+t.format.replace("-","."),a.then(function(s){return r&&(r._snapshotInProgress=!1),Mvt(s,o,t.format)}).then(function(s){n(s)}).catch(function(s){r&&(r._snapshotInProgress=!1),i(s)})})}gde.exports=Evt});var bde=ye(iU=>{"use strict";var Cp=Dr(),Lp=Cp.isPlainObject,mde=w3(),yde=Mc(),kvt=Gl(),_de=vl(),xde=cb().dfltConfig;iU.makeTemplate=function(e){e=Cp.isPlainObject(e)?e:Cp.getGraphDiv(e),e=Cp.extendDeep({_context:xde},{data:e.data,layout:e.layout}),yde.supplyDefaults(e);var t=e.data||[],r=e.layout||{};r._basePlotModules=e._fullLayout._basePlotModules,r._modules=e._fullLayout._modules;var n={data:{},layout:{}};t.forEach(function(d){var v={};YM(d,v,Lvt.bind(null,d));var _=Cp.coerce(d,{},kvt,"type"),b=n.data[_];b||(b=n.data[_]=[]),b.push(v)}),YM(r,n.layout,Cvt.bind(null,r)),delete n.layout.template;var i=r.template;if(Lp(i)){var a=i.layout,o,s,l,u,c,f;Lp(a)&&YP(a,n.layout);var h=i.data;if(Lp(h)){for(s in n.data)if(l=h[s],Array.isArray(l)){for(c=n.data[s],f=c.length,u=l.length,o=0;op?o.push({code:"unused",traceType:d,templateCount:b,dataCount:p}):p>b&&o.push({code:"reused",traceType:d,templateCount:b,dataCount:p})}}function k(E,S){for(var L in E)if(L.charAt(0)!=="_"){var x=E[L],C=I0(E,L,S);Lp(x)?(Array.isArray(E)&&x._template===!1&&x.templateitemname&&o.push({code:"missing",path:C,templateitemname:x.templateitemname}),k(x,C)):Array.isArray(x)&&Pvt(x)&&k(x,C)}}if(k({data:l,layout:s},""),o.length)return o.map(Ivt)};function Pvt(e){for(var t=0;t{"use strict";var td=HP();ef._doPlot=td._doPlot;ef.newPlot=td.newPlot;ef.restyle=td.restyle;ef.relayout=td.relayout;ef.redraw=td.redraw;ef.update=td.update;ef._guiRestyle=td._guiRestyle;ef._guiRelayout=td._guiRelayout;ef._guiUpdate=td._guiUpdate;ef._storeDirectGUIEdit=td._storeDirectGUIEdit;ef.react=td.react;ef.extendTraces=td.extendTraces;ef.prependTraces=td.prependTraces;ef.addTraces=td.addTraces;ef.deleteTraces=td.deleteTraces;ef.moveTraces=td.moveTraces;ef.purge=td.purge;ef.addFrames=td.addFrames;ef.deleteFrames=td.deleteFrames;ef.animate=td.animate;ef.setPlotConfig=td.setPlotConfig;var Rvt=NS().getGraphDiv,Dvt=lP().eraseActiveShape;ef.deleteActiveShape=function(e){return Dvt(Rvt(e))};ef.toImage=eU();ef.validate=hde();ef.downloadImage=rU();var wde=bde();ef.makeTemplate=wde.makeTemplate;ef.validateTemplate=wde.validateTemplate});var eT=ye((Bor,Ade)=>{"use strict";var nU=Dr(),Fvt=qa();Ade.exports=function(t,r,n,i){var a=i("x"),o=i("y"),s,l=Fvt.getComponentMethod("calendars","handleTraceDefaults");if(l(t,r,["x","y"],n),a){var u=nU.minRowLength(a);o?s=Math.min(u,nU.minRowLength(o)):(s=u,i("y0"),i("dy"))}else{if(!o)return 0;s=nU.minRowLength(o),i("x0"),i("dx")}return r._length=s,s}});var Ig=ye((Nor,Ede)=>{"use strict";var Sde=Dr().dateTick0,zvt=fs(),Ovt=zvt.ONEWEEK;function Mde(e,t){return e%Ovt===0?Sde(t,1):Sde(t,0)}Ede.exports=function(t,r,n,i,a){if(a||(a={x:!0,y:!0}),a.x){var o=i("xperiod");o&&(i("xperiod0",Mde(o,r.xcalendar)),i("xperiodalignment"))}if(a.y){var s=i("yperiod");s&&(i("yperiod0",Mde(s,r.ycalendar)),i("yperiodalignment"))}}});var Lde=ye((Uor,Cde)=>{"use strict";var kde=["orientation","groupnorm","stackgaps"];Cde.exports=function(t,r,n,i){var a=n._scatterStackOpts,o=i("stackgroup");if(o){var s=r.xaxis+r.yaxis,l=a[s];l||(l=a[s]={});var u=l[o],c=!1;u?u.traces.push(r):(u=l[o]={traceIndices:[],traces:[r]},c=!0);for(var f={orientation:r.x&&!r.y?"h":"v"},h=0;h{"use strict";var Pde=ka(),Ide=pv().hasColorscale,Rde=Qh(),qvt=Ru();Dde.exports=function(t,r,n,i,a,o){var s=qvt.isBubble(t),l=(t.line||{}).color,u;if(o=o||{},l&&(n=l),a("marker.symbol"),a("marker.opacity",s?.7:1),a("marker.size"),o.noAngle||(a("marker.angle"),o.noAngleRef||a("marker.angleref"),o.noStandOff||a("marker.standoff")),a("marker.color",n),Ide(t,"marker")&&Rde(t,r,i,a,{prefix:"marker.",cLetter:"c"}),o.noSelect||(a("selected.marker.color"),a("unselected.marker.color"),a("selected.marker.size"),a("unselected.marker.size")),o.noLine||(l&&!Array.isArray(l)&&r.marker.color!==l?u=l:s?u=Pde.background:u=Pde.defaultLine,a("marker.line.color",u),Ide(t,"marker.line")&&Rde(t,r,i,a,{prefix:"marker.line.",cLetter:"c"}),a("marker.line.width",s?1:0)),s&&(a("marker.sizeref"),a("marker.sizemin"),a("marker.sizemode")),o.gradient){var c=a("marker.gradient.type");c!=="none"&&a("marker.gradient.color")}}});var R0=ye((Gor,Fde)=>{"use strict";var Bvt=Dr().isArrayOrTypedArray,Nvt=pv().hasColorscale,Uvt=Qh();Fde.exports=function(t,r,n,i,a,o){o||(o={});var s=(t.marker||{}).color;if(s&&s._inputArray&&(s=s._inputArray),a("line.color",n),Nvt(t,"line"))Uvt(t,r,i,a,{prefix:"line.",cLetter:"c"});else{var l=(Bvt(s)?!1:s)||n;a("line.color",l)}a("line.width"),o.noDash||a("line.dash"),o.backoff&&a("line.backoff")}});var tT=ye((Hor,zde)=>{"use strict";zde.exports=function(t,r,n){var i=n("line.shape");i==="spline"&&n("line.smoothing")}});var D0=ye((jor,Ode)=>{"use strict";var Vvt=Dr();Ode.exports=function(e,t,r,n,i){i=i||{},n("textposition"),Vvt.coerceFont(n,"textfont",i.font||r.font,i),i.noSelect||(n("selected.textfont.color"),n("unselected.textfont.color"))}});var Rg=ye((Wor,Bde)=>{"use strict";var JP=ka(),qde=Dr().isArrayOrTypedArray;function Gvt(e){for(var t=JP.interpolate(e[0][1],e[1][1],.5),r=2;r{"use strict";var Nde=Dr(),Hvt=qa(),jvt=pf(),Wvt=Sm(),rT=Ru(),Xvt=eT(),Zvt=Ig(),Yvt=Lde(),Kvt=$p(),Jvt=R0(),Ude=tT(),$vt=D0(),Qvt=Rg(),ept=Dr().coercePattern;Vde.exports=function(t,r,n,i){function a(d,v){return Nde.coerce(t,r,jvt,d,v)}var o=Xvt(t,r,i,a);if(o||(r.visible=!1),!!r.visible){Zvt(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("zorder");var s=Yvt(t,r,i,a);i.scattermode==="group"&&r.orientation===void 0&&a("orientation","v");var l=!s&&o{"use strict";var tpt=Nb().getAxisGroup;Hde.exports=function(t,r,n,i,a){var o=r.orientation,s=r[{v:"x",h:"y"}[o]+"axis"],l=tpt(n,s)+o,u=n._alignmentOpts||{},c=i("alignmentgroup"),f=u[l];f||(f=u[l]={});var h=f[c];h?h.traces.push(r):h=f[c]={traces:[r],alignmentIndex:Object.keys(f).length,offsetGroups:{}};var d=i("offsetgroup")||"",v=h.offsetGroups,_=v[d];r._offsetIndex=0,(a!=="group"||d)&&(_||(_=v[d]={offsetIndex:Object.keys(v).length}),r._offsetIndex=_.offsetIndex)}});var aU=ye((Yor,jde)=>{"use strict";var rpt=Dr(),ipt=Hb(),npt=pf();jde.exports=function(t,r){var n,i,a,o=r.scattermode;function s(h){return rpt.coerce(i._input,i,npt,h)}if(r.scattermode==="group")for(a=0;a=0;c--){var f=t[c];if(f.type==="scatter"&&f.xaxis===l.xaxis&&f.yaxis===l.yaxis){f.opacity=void 0;break}}}}}});var Xde=ye((Kor,Wde)=>{"use strict";var apt=Dr(),opt=X6();Wde.exports=function(e,t){function r(i,a){return apt.coerce(e,t,opt,i,a)}var n=t.barmode==="group";t.scattermode==="group"&&r("scattergap",n?t.bargap:.2)}});var Dg=ye((Jor,Yde)=>{"use strict";var spt=Eo(),Zde=Dr(),lpt=Zde.dateTime2ms,$P=Zde.incrementMonth,upt=fs(),cpt=upt.ONEAVGMONTH;Yde.exports=function(t,r,n,i){if(r.type!=="date")return{vals:i};var a=t[n+"periodalignment"];if(!a)return{vals:i};var o=t[n+"period"],s;if(spt(o)){if(o=+o,o<=0)return{vals:i}}else if(typeof o=="string"&&o.charAt(0)==="M"){var l=+o.substring(1);if(l>0&&Math.round(l)===l)s=l;else return{vals:i}}for(var u=r.calendar,c=a==="start",f=a==="end",h=t[n+"period0"],d=lpt(h,u)||0,v=[],_=[],b=[],p=i.length,k=0;kE;)x=$P(x,-s,u);for(;x<=E;)x=$P(x,s,u);L=$P(x,-s,u)}else{for(S=Math.round((E-d)/o),x=d+S*o;x>E;)x-=o;for(;x<=E;)x+=o;L=x-o}v[k]=c?L:f?x:(L+x)/2,_[k]=L,b[k]=x}return{vals:v,starts:_,ends:b}}});var F0=ye(($or,Jde)=>{"use strict";var oU=pv().hasColorscale,sU=gv(),Kde=Ru();Jde.exports=function(t,r){Kde.hasLines(r)&&oU(r,"line")&&sU(t,r,{vals:r.line.color,containerStr:"line",cLetter:"c"}),Kde.hasMarkers(r)&&(oU(r,"marker")&&sU(t,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),oU(r,"marker.line")&&sU(t,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var km=ye((Qor,$de)=>{"use strict";var Yf=Dr();$de.exports=function(t,r){for(var n=0;n{"use strict";var Qde=Dr();eve.exports=function(t,r){Qde.isArrayOrTypedArray(r.selectedpoints)&&Qde.tagSelected(t,r)}});var O0=ye((tsr,sve)=>{"use strict";var tve=Eo(),uU=Dr(),KM=ho(),rve=Dg(),lU=fs().BADNUM,cU=Ru(),fpt=F0(),hpt=km(),dpt=z0();function vpt(e,t){var r=e._fullLayout,n=t._xA=KM.getFromId(e,t.xaxis||"x","x"),i=t._yA=KM.getFromId(e,t.yaxis||"y","y"),a=n.makeCalcdata(t,"x"),o=i.makeCalcdata(t,"y"),s=rve(t,n,"x",a),l=rve(t,i,"y",o),u=s.vals,c=l.vals,f=t._length,h=new Array(f),d=t.ids,v=fU(t,r,n,i),_=!1,b,p,k,E,S,L;ave(r,t);var x="x",C="y",M;if(v)uU.pushUnique(v.traceIndices,t.index),b=v.orientation==="v",b?(C="s",M="x"):(x="s",M="y"),S=v.stackgaps==="interpolate";else{var g=nve(t,f);ive(e,t,n,i,u,c,g)}var P=!!t.xperiodalignment,T=!!t.yperiodalignment;for(p=0;pp&&h[E].gap;)E--;for(L=h[E].s,k=h.length-1;k>E;k--)h[k].s=L;for(;p{"use strict";lve.exports=QP;var ppt=Dr().distinctVals;function QP(e,t){this.traces=e,this.sepNegVal=t.sepNegVal,this.overlapNoMerge=t.overlapNoMerge;for(var r=1/0,n=t.posAxis._id.charAt(0),i=[],a=0;a{"use strict";var q0=Eo(),p_=Dr().isArrayOrTypedArray,iT=fs().BADNUM,gpt=qa(),JM=ho(),mpt=Nb().getAxisGroup,eI=uve();function ypt(e,t){for(var r=t.xaxis,n=t.yaxis,i=e._fullLayout,a=e._fullData,o=e.calcdata,s=[],l=[],u=0;ul+o||!q0(s))}for(var c=0;c{"use strict";var vve=O0(),pve=jb().setGroupPositions;function Lpt(e,t){for(var r=t.xaxis,n=t.yaxis,i=e._fullLayout,a=e._fullData,o=e.calcdata,s=[],l=[],u=0;ug[c]&&c{"use strict";var Ipt=So(),bve=fs(),$M=bve.BADNUM,wve=bve.LOG_CLIP,yve=wve+.5,_ve=wve-.5,tI=Dr(),Rpt=tI.segmentsIntersect,xve=tI.constrain,mU=Sm();Tve.exports=function(t,r){var n=r.trace||{},i=r.xaxis,a=r.yaxis,o=i.type==="log",s=a.type==="log",l=i._length,u=a._length,c=r.backoff,f=n.marker,h=r.connectGaps,d=r.baseTolerance,v=r.shape,_=v==="linear",b=n.fill&&n.fill!=="none",p=[],k=mU.minTolerance,E=t.length,S=new Array(E),L=0,x,C,M,g,P,T,z,O,V,G,Z,j,N,H,te,oe;function _e(dt){var Ge=t[dt];if(!Ge)return!1;var Je=r.linearized?i.l2p(Ge.x):i.c2p(Ge.x),je=r.linearized?a.l2p(Ge.y):a.c2p(Ge.y);if(Je===$M){if(o&&(Je=i.c2p(Ge.x,!0)),Je===$M)return!1;s&&je===$M&&(Je*=Math.abs(i._m*u*(i._m>0?yve:_ve)/(a._m*l*(a._m>0?yve:_ve)))),Je*=1e3}if(je===$M){if(s&&(je=a.c2p(Ge.y,!0)),je===$M)return!1;je*=1e3}return[Je,je]}function Ee(dt,Ge,Je,je){var tt=Je-dt,xt=je-Ge,Ie=.5-dt,xe=.5-Ge,ke=tt*tt+xt*xt,vt=tt*Ie+xt*xe;if(vt>0&&vt1||Math.abs(Ie.y-Je[0][1])>1)&&(Ie=[Ie.x,Ie.y],je&&Se(Ie,dt)Fe||dt[1]ge)return[xve(dt[0],Ae,Fe),xve(dt[1],Pe,ge)]}function Nt(dt,Ge){if(dt[0]===Ge[0]&&(dt[0]===Ae||dt[0]===Fe)||dt[1]===Ge[1]&&(dt[1]===Pe||dt[1]===ge))return!0}function Jt(dt,Ge){var Je=[],je=Gt(dt),tt=Gt(Ge);return je&&tt&&Nt(je,tt)||(je&&Je.push(je),tt&&Je.push(tt)),Je}function sr(dt,Ge,Je){return function(je,tt){var xt=Gt(je),Ie=Gt(tt),xe=[];if(xt&&Ie&&Nt(xt,Ie))return xe;xt&&xe.push(xt),Ie&&xe.push(Ie);var ke=2*tI.constrain((je[dt]+tt[dt])/2,Ge,Je)-((xt||je)[dt]+(Ie||tt)[dt]);if(ke){var vt;xt&&Ie?vt=ke>0==xt[dt]>Ie[dt]?xt:Ie:vt=xt||Ie,vt[dt]+=ke}return xe}}var wr;v==="linear"||v==="spline"?wr=lt:v==="hv"||v==="vh"?wr=Jt:v==="hvh"?wr=sr(0,Ae,Fe):v==="vhv"&&(wr=sr(1,Pe,ge));function cr(dt,Ge){var Je=Ge[0]-dt[0],je=(Ge[1]-dt[1])/Je,tt=(dt[1]*Ge[0]-Ge[1]*dt[0])/Je;return tt>0?[je>0?Ae:Fe,ge]:[je>0?Fe:Ae,Pe]}function $e(dt){var Ge=dt[0],Je=dt[1],je=Ge===S[L-1][0],tt=Je===S[L-1][1];if(!(je&&tt))if(L>1){var xt=Ge===S[L-2][0],Ie=Je===S[L-2][1];je&&(Ge===Ae||Ge===Fe)&&xt?Ie?L--:S[L-1]=dt:tt&&(Je===Pe||Je===ge)&&Ie?xt?L--:S[L-1]=dt:S[L++]=dt}else S[L++]=dt}function St(dt){S[L-1][0]!==dt[0]&&S[L-1][1]!==dt[1]&&$e([ut,pt]),$e(dt),Zt=null,ut=pt=0}var Qt=tI.isArrayOrTypedArray(f);function Vt(dt){if(dt&&c&&(dt.i=x,dt.d=t,dt.trace=n,dt.marker=Qt?f[dt.i]:f,dt.backoff=c),Ce=dt[0]/l,me=dt[1]/u,ce=dt[0]Fe?Fe:0,Ze=dt[1]ge?ge:0,ce||Ze){if(!L)S[L++]=[ce||dt[0],Ze||dt[1]];else if(Zt){var Ge=wr(Zt,dt);Ge.length>1&&(St(Ge[0]),S[L++]=Ge[1])}else st=wr(S[L-1],dt)[0],S[L++]=st;var Je=S[L-1];ce&&Ze&&(Je[0]!==ce||Je[1]!==Ze)?(Zt&&(ut!==ce&&pt!==Ze?$e(ut&&pt?cr(Zt,dt):[ut||ce,pt||Ze]):ut&&pt&&$e([ut,pt])),$e([ce,Ze])):ut-ce&&pt-Ze&&$e([ce||ut,Ze||pt]),Zt=dt,ut=ce,pt=Ze}else Zt&&St(wr(Zt,dt)[0]),S[L++]=dt}for(x=0;xie(T,_t))break;M=T,N=V[0]*O[0]+V[1]*O[1],N>Z?(Z=N,g=T,z=!1):N=t.length||!T)break;Vt(T),C=T}}Zt&&$e([ut||Zt[0],pt||Zt[1]]),p.push(S.slice(0,L))}var It=v.slice(v.length-1);if(c&&It!=="h"&&It!=="v"){for(var mt=!1,er=-1,lr=[],Tr=0;Tr{"use strict";var Ave={tonextx:1,tonexty:1,tonext:1};Sve.exports=function(t,r,n){var i,a,o,s,l,u={},c=!1,f=-1,h=0,d=-1;for(a=0;a=0?l=d:(l=d=h,h++),l{"use strict";var Fg=Oa(),Dpt=qa(),QM=Dr(),aT=QM.ensureSingle,Eve=QM.identity,Kf=So(),oT=Ru(),Fpt=yU(),zpt=_U(),rI=kM().tester;kve.exports=function(t,r,n,i,a,o){var s,l,u=!a,c=!!a&&a.duration>0,f=zpt(t,r,n);if(s=i.selectAll("g.trace").data(f,function(d){return d[0].trace.uid}),s.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),s.order(),Opt(t,s,r),c){o&&(l=o());var h=Fg.transition().duration(a.duration).ease(a.easing).each("end",function(){l&&l()}).each("interrupt",function(){l&&l()});h.each(function(){i.selectAll("g.trace").each(function(d,v){Mve(t,v,r,d,f,this,a)})})}else s.each(function(d,v){Mve(t,v,r,d,f,this,a)});u&&s.exit().remove(),i.selectAll("path:not([d])").remove()};function Opt(e,t,r){t.each(function(n){var i=aT(Fg.select(this),"g","fills");Kf.setClipUrl(i,r.layerClipId,e);var a=n[0].trace,o=[];a._ownfill&&o.push("_ownFill"),a._nexttrace&&o.push("_nextFill");var s=i.selectAll("g").data(o,Eve);s.enter().append("g"),s.exit().each(function(l){a[l]=null}).remove(),s.order().each(function(l){a[l]=aT(Fg.select(this),"path","js-fill")})})}function Mve(e,t,r,n,i,a,o){var s=e._context.staticPlot,l;qpt(e,t,r,n,i);var u=!!o&&o.duration>0;function c(sr){return u?sr.transition():sr}var f=r.xaxis,h=r.yaxis,d=n[0].trace,v=d.line,_=Fg.select(a),b=aT(_,"g","errorbars"),p=aT(_,"g","lines"),k=aT(_,"g","points"),E=aT(_,"g","text");if(Dpt.getComponentMethod("errorbars","plot")(e,b,r,o),d.visible!==!0)return;c(_).style("opacity",d.opacity);var S,L,x=d.fill.charAt(d.fill.length-1);x!=="x"&&x!=="y"&&(x="");var C,M;x==="y"?(C=1,M=h.c2p(0,!0)):x==="x"&&(C=0,M=f.c2p(0,!0)),n[0][r.isRangePlot?"nodeRangePlot3":"node3"]=_;var g="",P=[],T=d._prevtrace,z=null,O=null;T&&(g=T._prevRevpath||"",L=T._nextFill,P=T._ownPolygons,z=T._fillsegments,O=T._fillElement);var V,G,Z="",j="",N,H,te,oe,_e,Ee,Ce=[];d._polygons=[];var me=[],ie=[],Se=QM.noop;if(S=d._ownFill,oT.hasLines(d)||d.fill!=="none"){L&&L.datum(n),["hv","vh","hvh","vhv"].indexOf(v.shape)!==-1?(N=Kf.steps(v.shape),H=Kf.steps(v.shape.split("").reverse().join(""))):v.shape==="spline"?N=H=function(sr){var wr=sr[sr.length-1];return sr.length>1&&sr[0][0]===wr[0]&&sr[0][1]===wr[1]?Kf.smoothclosed(sr.slice(1),v.smoothing):Kf.smoothopen(sr,v.smoothing)}:N=H=function(sr){return"M"+sr.join("L")},te=function(sr){return H(sr.reverse())},ie=Fpt(n,{xaxis:f,yaxis:h,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(v.width||1,3)/4,shape:v.shape,backoff:v.backoff,simplify:v.simplify,fill:d.fill}),me=new Array(ie.length);var Le=0;for(l=0;l=s[0]&&_.x<=s[1]&&_.y>=l[0]&&_.y<=l[1]}),h=Math.ceil(f.length/c),d=0;i.forEach(function(_,b){var p=_[0].trace;oT.hasMarkers(p)&&p.marker.maxdisplayed>0&&b{"use strict";Cve.exports={container:"marker",min:"cmin",max:"cmax"}});var nI=ye((usr,Lve)=>{"use strict";var iI=ho();Lve.exports=function(t,r,n){var i={},a={_fullLayout:n},o=iI.getFromTrace(a,r,"x"),s=iI.getFromTrace(a,r,"y"),l=t.orig_x;l===void 0&&(l=t.x);var u=t.orig_y;return u===void 0&&(u=t.y),i.xLabel=iI.tickText(o,o.c2l(l),!0).text,i.yLabel=iI.tickText(s,s.c2l(u),!0).text,i}});var op=ye((csr,Pve)=>{"use strict";var xU=Oa(),lT=So(),Bpt=qa();function Npt(e){var t=xU.select(e).selectAll("g.trace.scatter");t.style("opacity",function(r){return r[0].trace.opacity}),t.selectAll("g.points").each(function(r){var n=xU.select(this),i=r.trace||r[0].trace;bU(n,i,e)}),t.selectAll("g.text").each(function(r){var n=xU.select(this),i=r.trace||r[0].trace;wU(n,i,e)}),t.selectAll("g.trace path.js-line").call(lT.lineGroupStyle),t.selectAll("g.trace path.js-fill").call(lT.fillGroupStyle,e,!1),Bpt.getComponentMethod("errorbars","style")(t)}function bU(e,t,r){lT.pointStyle(e.selectAll("path.point"),t,r)}function wU(e,t,r){lT.textPointStyle(e.selectAll("text"),t,r)}function Upt(e,t,r){var n=t[0].trace;n.selectedpoints?(lT.selectedPointStyle(r.selectAll("path.point"),n),lT.selectedTextStyle(r.selectAll("text"),n)):(bU(r,n,e),wU(r,n,e))}Pve.exports={style:Npt,stylePoints:bU,styleText:wU,styleOnSelect:Upt}});var cT=ye((fsr,Ive)=>{"use strict";var uT=ka(),Vpt=Ru();Ive.exports=function(t,r){var n,i;if(t.mode==="lines")return n=t.line.color,n&&uT.opacity(n)?n:t.fillcolor;if(t.mode==="none")return t.fill?t.fillcolor:"";var a=r.mcc||(t.marker||{}).color,o=r.mlcc||((t.marker||{}).line||{}).color;return i=a&&uT.opacity(a)?a:o&&uT.opacity(o)&&(r.mlw||((t.marker||{}).line||{}).width)?o:"",i?uT.opacity(i)<.3?uT.addOpacity(i,.3):i:(n=(t.line||{}).color,n&&uT.opacity(n)&&Vpt.hasLines(t)&&t.line.width?n:t.fillcolor)}});var fT=ye((hsr,Dve)=>{"use strict";var aI=Dr(),Rve=vf(),Gpt=qa(),Hpt=cT(),TU=ka(),jpt=aI.fillText;Dve.exports=function(t,r,n,i){var a=t.cd,o=a[0].trace,s=t.xa,l=t.ya,u=s.c2p(r),c=l.c2p(n),f=[u,c],h=o.hoveron||"",d=o.mode.indexOf("markers")!==-1?3:.5,v=!!o.xperiodalignment,_=!!o.yperiodalignment;if(h.indexOf("points")!==-1){var b=function(j){if(v){var N=s.c2p(j.xStart),H=s.c2p(j.xEnd);return u>=Math.min(N,H)&&u<=Math.max(N,H)?0:1/0}var te=Math.max(3,j.mrc||0),oe=1-1/te,_e=Math.abs(s.c2p(j.x)-u);return _e=Math.min(N,H)&&c<=Math.max(N,H)?0:1/0}var te=Math.max(3,j.mrc||0),oe=1-1/te,_e=Math.abs(l.c2p(j.y)-c);return _eCe!=ge>=Ce&&(Ae=Se[ie-1][0],Fe=Se[ie][0],ge-Pe&&(Le=Ae+(Fe-Ae)*(Ce-Pe)/(ge-Pe),te=Math.min(te,Le),oe=Math.max(oe,Le)));return te=Math.max(te,0),oe=Math.min(oe,s._length),{x0:te,x1:oe,y0:Ce,y1:Ce}}if(h.indexOf("fills")!==-1&&o._fillElement){var V=z(o._fillElement)&&!z(o._fillExclusionElement);if(V){var G=O(o._polygons);G===null&&(G={x0:f[0],x1:f[0],y0:f[1],y1:f[1]});var Z=TU.defaultLine;return TU.opacity(o.fillcolor)?Z=o.fillcolor:TU.opacity((o.line||{}).color)&&(Z=o.line.color),aI.extendFlat(t,{distance:t.maxHoverDistance,x0:G.x0,x1:G.x1,y0:G.y0,y1:G.y1,color:Z,hovertemplate:!1}),delete t.index,o.text&&!aI.isArrayOrTypedArray(o.text)?t.text=String(o.text):t.text=o.name,[t]}}}});var hT=ye((dsr,zve)=>{"use strict";var Fve=Ru();zve.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l,u,c,f,h=!Fve.hasMarkers(s)&&!Fve.hasText(s);if(h)return[];if(r===!1)for(l=0;l{"use strict";Ove.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var SU=ye((psr,Uve)=>{"use strict";var e4=qa().traceIs,AU=R3();Uve.exports=function(t,r,n,i){n("autotypenumbers",i.autotypenumbersDflt);var a=n("type",(i.splomStash||{}).type);a==="-"&&(Wpt(r,i.data),r.type==="-"?r.type="linear":t.type=r.type)};function Wpt(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i;r.indexOf("scene")!==-1&&(r=n);var a=Xpt(t,r,n);if(a){if(a.type==="histogram"&&n==={v:"y",h:"x"}[a.orientation||"v"]){e.type="linear";return}var o=n+"calendar",s=a[o],l={noMultiCategory:!e4(a,"cartesian")||e4(a,"noMultiCategory")};if(a.type==="box"&&a._hasPreCompStats&&n==={h:"x",v:"y"}[a.orientation||"v"]&&(l.noMultiCategory=!0),l.autotypenumbers=e.autotypenumbers,Nve(a,n)){var u=Bve(a),c=[];for(i=0;i0&&(i["_"+r+"axes"]||{})[t])return i;if((i[r+"axis"]||r)===t){if(Nve(i,r))return i;if((i[r]||[]).length||i[r+"0"])return i}}}function Bve(e){return{v:"x",h:"y"}[e.orientation||"v"]}function Nve(e,t){var r=Bve(e),n=e4(e,"box-violin"),i=e4(e._fullInput||{},"candlestick");return n&&!i&&t===r&&e[r]===void 0&&e[r+"0"]===void 0}});var oI=ye((gsr,Vve)=>{"use strict";var Zpt=vv().isTypedArraySpec;function Ypt(e,t){var r=t.dataAttr||e._id.charAt(0),n={},i,a,o;if(t.axData)i=t.axData;else for(i=[],a=0;a0||Zpt(a),s;o&&(s="array");var l=n("categoryorder",s),u;l==="array"&&(u=n("categoryarray")),!o&&l==="array"&&(l=r.categoryorder="trace"),l==="trace"?r._initialCategories=[]:l==="array"?r._initialCategories=u.slice():(u=Ypt(r,i).sort(),l==="category ascending"?r._initialCategories=u:l==="category descending"&&(r._initialCategories=u.reverse()))}}});var t4=ye((msr,Hve)=>{"use strict";var Gve=cd().mix,Kpt=Lh(),Jpt=Dr();Hve.exports=function(t,r,n,i){i=i||{};var a=i.dfltColor;function o(M,g){return Jpt.coerce2(t,r,i.attributes,M,g)}var s=o("linecolor",a),l=o("linewidth"),u=n("showline",i.showLine||!!s||!!l);u||(delete r.linecolor,delete r.linewidth);var c=Gve(a,i.bgColor,i.blend||Kpt.lightFraction).toRgbString(),f=o("gridcolor",c),h=o("gridwidth"),d=o("griddash"),v=n("showgrid",i.showGrid||!!f||!!h||!!d);if(v||(delete r.gridcolor,delete r.gridwidth,delete r.griddash),i.hasMinor){var _=Gve(r.gridcolor,i.bgColor,67).toRgbString(),b=o("minor.gridcolor",_),p=o("minor.gridwidth",r.gridwidth||1),k=o("minor.griddash",r.griddash||"solid"),E=n("minor.showgrid",!!b||!!p||!!k);E||(delete r.minor.gridcolor,delete r.minor.gridwidth,delete r.minor.griddash)}if(!i.noZeroLine){var S=o("zerolinelayer"),L=o("zerolinecolor",a),x=o("zerolinewidth"),C=n("zeroline",i.showGrid||!!L||!!x);C||(delete r.zerolinelayer,delete r.zerolinecolor,delete r.zerolinewidth)}}});var i4=ye((ysr,Kve)=>{"use strict";var jve=Eo(),$pt=qa(),r4=Dr(),Qpt=vl(),e0t=Yd(),MU=Rd(),Wve=bb(),Xve=M3(),t0t=e_(),r0t=t_(),i0t=oI(),n0t=t4(),a0t=xB(),Zve=ym(),sI=hd().WEEKDAY_PATTERN,o0t=hd().HOUR_PATTERN;Kve.exports=function(t,r,n,i,a){var o=i.letter,s=i.font||{},l=i.splomStash||{},u=n("visible",!i.visibleDflt),c=r._template||{},f=r.type||c.type||"-",h;if(f==="date"){var d=$pt.getComponentMethod("calendars","handleDefaults");d(t,r,"calendar",i.calendar),i.noTicklabelmode||(h=n("ticklabelmode"))}!i.noTicklabelindex&&(f==="date"||f==="linear")&&n("ticklabelindex");var v="";(!i.noTicklabelposition||f==="multicategory")&&(v=r4.coerce(t,r,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h==="period"?["outside","inside"]:o==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),i.noTicklabeloverflow||n("ticklabeloverflow",v.indexOf("inside")!==-1?"hide past domain":f==="category"||f==="multicategory"?"allow":"hide past div"),Zve(r,a),a0t(t,r,n,i),i0t(t,r,n,i),i.noHover||(f!=="category"&&n("hoverformat"),i.noUnifiedhovertitle||n("unifiedhovertitle.text"));var _=n("color"),b=_!==MU.color.dflt?_:s.color,p=l.label||a._dfltTitle[o];if(r0t(t,r,n,f,i),!u)return r;n("title.text",p),r4.coerceFont(n,"title.font",s,{overrideDflt:{size:r4.bigFont(s.size),color:b}}),Wve(t,r,n,f);var k=i.hasMinor;if(k&&(Qpt.newContainer(r,"minor"),Wve(t,r,n,f,{isMinor:!0})),t0t(t,r,n,f,i),Xve(t,r,n,i),k){var E=i.isMinor;i.isMinor=!0,Xve(t,r,n,i),i.isMinor=E}n0t(t,r,n,{dfltColor:_,bgColor:i.bgColor,showGrid:i.showGrid,hasMinor:k,attributes:MU}),k&&!r.minor.ticks&&!r.minor.showgrid&&delete r.minor,(r.showline||r.ticks)&&n("mirror");var S=f==="multicategory";if(!i.noTickson&&(f==="category"||S)&&(r.ticks||r.showgrid)&&(S?(n("tickson","boundaries"),delete r.ticklabelposition):n("tickson")),S){var L=n("showdividers");L&&(n("dividercolor"),n("dividerwidth"))}if(f==="date")if(e0t(t,r,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:s0t}),!r.rangebreaks.length)delete r.rangebreaks;else{for(var x=0;x=2){var o="",s,l;if(a.length===2){for(s=0;s<2;s++)if(l=Yve(a[s]),l){o=sI;break}}var u=n("pattern",o);if(u===sI)for(s=0;s<2;s++)l=Yve(a[s]),l&&(t.bounds[s]=a[s]=l-1);if(u)for(s=0;s<2;s++)switch(l=a[s],u){case sI:if(!jve(l)){t.enabled=!1;return}if(l=+l,l!==Math.floor(l)||l<0||l>=7){t.enabled=!1;return}t.bounds[s]=a[s]=l;break;case o0t:if(!jve(l)){t.enabled=!1;return}if(l=+l,l<0||l>24){t.enabled=!1;return}t.bounds[s]=a[s]=l;break}if(r.autorange===!1){var c=r.range;if(c[0]c[1]){t.enabled=!1;return}}else if(a[0]>c[0]&&a[1]{"use strict";var u0t=Eo(),lI=Dr();Jve.exports=function(t,r,n,i){var a=i.counterAxes||[],o=i.overlayableAxes||[],s=i.letter,l=i.grid,u=i.overlayingDomain,c,f,h,d,v,_;l&&(f=l._domains[s][l._axisMap[r._id]],c=l._anchors[r._id],f&&(h=l[s+"side"].split(" ")[0],d=l.domain[s][h==="right"||h==="top"?1:0])),f=f||[0,1],c=c||(u0t(t.position)?"free":a[0]||"free"),h=h||(s==="x"?"bottom":"left"),d=d||0,v=0,_=!1;var b=lI.coerce(t,r,{anchor:{valType:"enumerated",values:["free"].concat(a),dflt:c}},"anchor"),p=lI.coerce(t,r,{side:{valType:"enumerated",values:s==="x"?["bottom","top"]:["left","right"],dflt:h}},"side");if(b==="free"){if(s==="y"){var k=n("autoshift");k&&(d=p==="left"?u[0]:u[1],_=r.automargin?r.automargin:!0,v=p==="left"?-3:3),n("shift",v)}n("position",d)}n("automargin",_);var E=!1;if(o.length&&(E=lI.coerce(t,r,{overlaying:{valType:"enumerated",values:[!1].concat(o),dflt:!1}},"overlaying")),!E){var S=n("domain",f);S[0]>S[1]-1/4096&&(r.domain=f),lI.noneOrAll(t.domain,r.domain,f),r.tickmode==="sync"&&(r.tickmode="auto")}return n("layer"),r}});var ope=ye((xsr,ape)=>{"use strict";var Wb=Dr(),$ve=ka(),c0t=ip().isUnifiedHover,f0t=HB(),Qve=vl(),h0t=c3(),epe=Rd(),d0t=SU(),tpe=i4(),v0t=Nb(),rpe=uI(),kU=hf(),Cm=kU.id2name,ipe=kU.name2id,p0t=hd().AX_ID_PATTERN,npe=qa(),cI=npe.traceIs,EU=npe.getComponentMethod;function fI(e,t,r){Array.isArray(e[t])?e[t].push(r):e[t]=[r]}ape.exports=function(t,r,n){var i=r.autotypenumbers,a={},o={},s={},l={},u={},c={},f={},h={},d={},v={},_,b;for(_=0;_{"use strict";var g0t=Oa(),spe=qa(),hI=Dr(),Qp=So(),dI=ho();lpe.exports=function(t,r,n,i){var a=t._fullLayout;if(r.length===0){dI.redrawComponents(t);return}function o(b){var p=b.xaxis,k=b.yaxis;a._defs.select("#"+b.clipId+"> rect").call(Qp.setTranslate,0,0).call(Qp.setScale,1,1),b.plot.call(Qp.setTranslate,p._offset,k._offset).call(Qp.setScale,1,1);var E=b.plot.selectAll(".scatterlayer .trace");E.selectAll(".point").call(Qp.setPointGroupScale,1,1),E.selectAll(".textpoint").call(Qp.setTextPointsScale,1,1),E.call(Qp.hideOutsideRangePoints,b)}function s(b,p){var k=b.plotinfo,E=k.xaxis,S=k.yaxis,L=E._length,x=S._length,C=!!b.xr1,M=!!b.yr1,g=[];if(C){var P=hI.simpleMap(b.xr0,E.r2l),T=hI.simpleMap(b.xr1,E.r2l),z=P[1]-P[0],O=T[1]-T[0];g[0]=(P[0]*(1-p)+p*T[0]-P[0])/(P[1]-P[0])*L,g[2]=L*(1-p+p*O/z),E.range[0]=E.l2r(P[0]*(1-p)+p*T[0]),E.range[1]=E.l2r(P[1]*(1-p)+p*T[1])}else g[0]=0,g[2]=L;if(M){var V=hI.simpleMap(b.yr0,S.r2l),G=hI.simpleMap(b.yr1,S.r2l),Z=V[1]-V[0],j=G[1]-G[0];g[1]=(V[1]*(1-p)+p*G[1]-V[1])/(V[0]-V[1])*x,g[3]=x*(1-p+p*j/Z),S.range[0]=E.l2r(V[0]*(1-p)+p*G[0]),S.range[1]=S.l2r(V[1]*(1-p)+p*G[1])}else g[1]=0,g[3]=x;dI.drawOne(t,E,{skipTitle:!0}),dI.drawOne(t,S,{skipTitle:!0}),dI.redrawComponents(t,[E._id,S._id]);var N=C?L/g[2]:1,H=M?x/g[3]:1,te=C?g[0]:0,oe=M?g[1]:0,_e=C?g[0]/g[2]*L:0,Ee=M?g[1]/g[3]*x:0,Ce=E._offset-_e,me=S._offset-Ee;k.clipRect.call(Qp.setTranslate,te,oe).call(Qp.setScale,1/N,1/H),k.plot.call(Qp.setTranslate,Ce,me).call(Qp.setScale,N,H),Qp.setPointGroupScale(k.zoomScalePts,1/N,1/H),Qp.setTextPointsScale(k.zoomScaleTxt,1/N,1/H)}var l;i&&(l=i());function u(){for(var b={},p=0;pn.duration?(u(),d=window.cancelAnimationFrame(_)):d=window.requestAnimationFrame(_)}return f=Date.now(),d=window.requestAnimationFrame(_),Promise.resolve()}});var ph=ye(xv=>{"use strict";var pI=Oa(),cpe=qa(),Xb=Dr(),m0t=Mc(),y0t=So(),fpe=Id().getModuleCalcData,g_=hf(),zg=hd(),_0t=Wp(),iu=Xb.ensureSingle;function vI(e,t,r){return Xb.ensureSingle(e,t,r,function(n){n.datum(r)})}var Zb=zg.zindexSeparator;xv.name="cartesian";xv.attr=["xaxis","yaxis"];xv.idRoot=["x","y"];xv.idRegex=zg.idRegex;xv.attrRegex=zg.attrRegex;xv.attributes=qve();xv.layoutAttributes=Rd();xv.supplyLayoutDefaults=ope();xv.transitionAxes=upe();xv.finalizeSubplots=function(e,t){var r=t._subplots,n=r.xaxis,i=r.yaxis,a=r.cartesian,o=a,s={},l={},u,c,f;for(u=0;u0){var d=h.id;if(d.indexOf(Zb)!==-1)continue;d+=Zb+(u+1),h=Xb.extendFlat({},h,{id:d,plot:i._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var v=[],_,b=0;b1&&(L+=Zb+S),E.push(s+L),o=0;o1,f=t.mainplotinfo;if(!t.mainplot||c)if(u)t.xlines=iu(n,"path","xlines-above"),t.ylines=iu(n,"path","ylines-above"),t.xaxislayer=iu(n,"g","xaxislayer-above"),t.yaxislayer=iu(n,"g","yaxislayer-above");else{if(!o){var h=iu(n,"g","layer-subplot");t.shapelayer=iu(h,"g","shapelayer"),t.imagelayer=iu(h,"g","imagelayer"),f&&c?(t.minorGridlayer=f.minorGridlayer,t.gridlayer=f.gridlayer,t.zerolinelayer=f.zerolinelayer):(t.minorGridlayer=iu(n,"g","minor-gridlayer"),t.gridlayer=iu(n,"g","gridlayer"),t.zerolinelayer=iu(n,"g","zerolinelayer"));var d=iu(n,"g","layer-between");t.shapelayerBetween=iu(d,"g","shapelayer"),t.imagelayerBetween=iu(d,"g","imagelayer"),iu(n,"path","xlines-below"),iu(n,"path","ylines-below"),t.overlinesBelow=iu(n,"g","overlines-below"),iu(n,"g","xaxislayer-below"),iu(n,"g","yaxislayer-below"),t.overaxesBelow=iu(n,"g","overaxes-below")}t.overplot=iu(n,"g","overplot"),t.plot=iu(t.overplot,"g",i),f&&c?t.zerolinelayerAbove=f.zerolinelayerAbove:t.zerolinelayerAbove=iu(n,"g","zerolinelayer-above"),o||(t.xlines=iu(n,"path","xlines-above"),t.ylines=iu(n,"path","ylines-above"),t.overlinesAbove=iu(n,"g","overlines-above"),iu(n,"g","xaxislayer-above"),iu(n,"g","yaxislayer-above"),t.overaxesAbove=iu(n,"g","overaxes-above"),t.xlines=n.select(".xlines-"+s),t.ylines=n.select(".ylines-"+l),t.xaxislayer=n.select(".xaxislayer-"+s),t.yaxislayer=n.select(".yaxislayer-"+l))}else{var v=f.plotgroup,_=i+"-x",b=i+"-y";t.minorGridlayer=f.minorGridlayer,t.gridlayer=f.gridlayer,t.zerolinelayer=f.zerolinelayer,t.zerolinelayerAbove=f.zerolinelayerAbove,iu(f.overlinesBelow,"path",_),iu(f.overlinesBelow,"path",b),iu(f.overaxesBelow,"g",_),iu(f.overaxesBelow,"g",b),t.plot=iu(f.overplot,"g",i),iu(f.overlinesAbove,"path",_),iu(f.overlinesAbove,"path",b),iu(f.overaxesAbove,"g",_),iu(f.overaxesAbove,"g",b),t.xlines=v.select(".overlines-"+s).select("."+_),t.ylines=v.select(".overlines-"+l).select("."+b),t.xaxislayer=v.select(".overaxes-"+s).select("."+_),t.yaxislayer=v.select(".overaxes-"+l).select("."+b)}o||(u||(vI(t.minorGridlayer,"g",t.xaxis._id),vI(t.minorGridlayer,"g",t.yaxis._id),t.minorGridlayer.selectAll("g").map(function(p){return p[0]}).sort(g_.idSort),vI(t.gridlayer,"g",t.xaxis._id),vI(t.gridlayer,"g",t.yaxis._id),t.gridlayer.selectAll("g").map(function(p){return p[0]}).sort(g_.idSort)),t.xlines.style("fill","none").classed("crisp",!0),t.ylines.style("fill","none").classed("crisp",!0))}function vpe(e,t){if(e){var r={};e.each(function(l){var u=l[0],c=pI.select(this);c.remove(),ppe(u,t),r[u]=!0});for(var n in t._plots)for(var i=t._plots[n],a=i.overlays||[],o=0;o{"use strict";var gI=Ru();gpe.exports={hasLines:gI.hasLines,hasMarkers:gI.hasMarkers,hasText:gI.hasText,isBubble:gI.isBubble,attributes:pf(),layoutAttributes:X6(),supplyDefaults:Gde(),crossTraceDefaults:aU(),supplyLayoutDefaults:Xde(),calc:O0().calc,crossTraceCalc:mve(),arraysToCalcdata:km(),plot:sT(),colorbar:$d(),formatLabels:nI(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:fT(),selectPoints:hT(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:ph(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var xpe=ye((Asr,_pe)=>{"use strict";var b0t=Oa(),w0t=ka(),ype=IN(),CU=Dr(),T0t=CU.strScale,A0t=CU.strRotate,S0t=CU.strTranslate;_pe.exports=function(t,r,n){var i=t.node(),a=ype[n.arrowhead||0],o=ype[n.startarrowhead||0],s=(n.arrowwidth||1)*(n.arrowsize||1),l=(n.arrowwidth||1)*(n.startarrowsize||1),u=r.indexOf("start")>=0,c=r.indexOf("end")>=0,f=a.backoff*s+n.standoff,h=o.backoff*l+n.startstandoff,d,v,_,b;if(i.nodeName==="line"){d={x:+t.attr("x1"),y:+t.attr("y1")},v={x:+t.attr("x2"),y:+t.attr("y2")};var p=d.x-v.x,k=d.y-v.y;if(_=Math.atan2(k,p),b=_+Math.PI,f&&h&&f+h>Math.sqrt(p*p+k*k)){V();return}if(f){if(f*f>p*p+k*k){V();return}var E=f*Math.cos(_),S=f*Math.sin(_);v.x+=E,v.y+=S,t.attr({x2:v.x,y2:v.y})}if(h){if(h*h>p*p+k*k){V();return}var L=h*Math.cos(_),x=h*Math.sin(_);d.x-=L,d.y-=x,t.attr({x1:d.x,y1:d.y})}}else if(i.nodeName==="path"){var C=i.getTotalLength(),M="";if(C{"use strict";var bpe=Oa(),LU=qa(),M0t=Mc(),y_=Dr(),PU=y_.strTranslate,a4=ho(),Yb=ka(),Iy=So(),wpe=vf(),IU=ru(),RU=Sg(),n4=yv(),E0t=vl().arrayEditor,k0t=xpe();Spe.exports={draw:C0t,drawOne:Tpe,drawRaw:Ape};function C0t(e){var t=e._fullLayout;t._infolayer.selectAll(".annotation").remove();for(var r=0;r2/3?tt="right":tt="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[tt]}for(var Pe=!1,ge=["x","y"],Re=0;Re1)&&(ut===Ze?(_t=pt.r2fraction(t["a"+ce]),(_t<0||_t>1)&&(Pe=!0)):Pe=!0),wr=pt._offset+pt.r2p(t[ce]),St=.5}else{var It=Vt==="domain";ce==="x"?($e=t[ce],wr=It?pt._offset+pt._length*$e:wr=s.l+s.w*$e):($e=1-t[ce],wr=It?pt._offset+pt._length*$e:wr=s.t+s.h*$e),St=t.showarrow?.5:$e}if(t.showarrow){sr.head=wr;var mt=t["a"+ce];if(Qt=st*Fe(.5,t.xanchor)-lt*Fe(.5,t.yanchor),ut===Ze){var er=a4.getRefType(ut);er==="domain"?(ce==="y"&&(mt=1-mt),sr.tail=pt._offset+pt._length*mt):er==="paper"?ce==="y"?(mt=1-mt,sr.tail=s.t+s.h*mt):sr.tail=s.l+s.w*mt:sr.tail=pt._offset+pt.r2p(mt),cr=Qt}else sr.tail=wr+mt,cr=Qt+mt;sr.text=sr.tail+Qt;var lr=o[ce==="x"?"width":"height"];if(Ze==="paper"&&(sr.head=y_.constrain(sr.head,1,lr-1)),ut==="pixel"){var Tr=-Math.max(sr.tail-3,sr.text),Lr=Math.min(sr.tail+3,sr.text)-lr;Tr>0?(sr.tail+=Tr,sr.text+=Tr):Lr>0&&(sr.tail-=Lr,sr.text-=Lr)}sr.tail+=Jt,sr.head+=Jt}else Qt=Gt*Fe(St,Nt),cr=Qt,sr.text=wr+Qt;sr.text+=Jt,Qt+=Jt,cr+=Jt,t["_"+ce+"padplus"]=Gt/2+cr,t["_"+ce+"padminus"]=Gt/2-cr,t["_"+ce+"size"]=Gt,t["_"+ce+"shift"]=Qt}if(Pe){C.remove();return}var ti=0,Br=0;if(t.align!=="left"&&(ti=(ie-Ce)*(t.align==="center"?.5:1)),t.valign!=="top"&&(Br=(Se-me)*(t.valign==="middle"?.5:1)),_e)oe.select("svg").attr({x:P+ti-1,y:P+Br}).call(Iy.setClipUrl,z?_:null,e);else{var Vr=P+Br-Ee.top,dt=P+ti-Ee.left;Z.call(IU.positionText,dt,Vr).call(Iy.setClipUrl,z?_:null,e)}O.select("rect").call(Iy.setRect,P,P,ie,Se),T.call(Iy.setRect,M/2,M/2,Le-M,Ae-M),C.call(Iy.setTranslate,Math.round(b.x.text-Le/2),Math.round(b.y.text-Ae/2)),E.attr({transform:"rotate("+p+","+b.x.text+","+b.y.text+")"});var Ge=function(je,tt){k.selectAll(".annotation-arrow-g").remove();var xt=b.x.head,Ie=b.y.head,xe=b.x.tail+je,ke=b.y.tail+tt,vt=b.x.text+je,ir=b.y.text+tt,ar=y_.rotationXYMatrix(p,vt,ir),vr=y_.apply2DTransform(ar),ii=y_.apply2DTransform2(ar),pi=+T.attr("width"),$r=+T.attr("height"),di=vt-.5*pi,ji=di+pi,In=ir-.5*$r,wi=In+$r,On=[[di,In,di,wi],[di,wi,ji,wi],[ji,wi,ji,In],[ji,In,di,In]].map(ii);if(!On.reduce(function(Qr,Oi){return Qr^!!y_.segmentsIntersect(xt,Ie,xt+1e6,Ie+1e6,Oi[0],Oi[1],Oi[2],Oi[3])},!1)){On.forEach(function(Qr){var Oi=y_.segmentsIntersect(xe,ke,xt,Ie,Qr[0],Qr[1],Qr[2],Qr[3]);Oi&&(xe=Oi.x,ke=Oi.y)});var qn=t.arrowwidth,Fn=t.arrowcolor,ra=t.arrowside,la=k.append("g").style({opacity:Yb.opacity(Fn)}).classed("annotation-arrow-g",!0),Ut=la.append("path").attr("d","M"+xe+","+ke+"L"+xt+","+Ie).style("stroke-width",qn+"px").call(Yb.stroke,Yb.rgb(Fn));if(k0t(Ut,ra,t),l.annotationPosition&&Ut.node().parentNode&&!n){var wt=xt,rr=Ie;if(t.standoff){var nr=Math.sqrt(Math.pow(xt-xe,2)+Math.pow(Ie-ke,2));wt+=t.standoff*(xe-xt)/nr,rr+=t.standoff*(ke-Ie)/nr}var Er=la.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(xe-wt)+","+(ke-rr),transform:PU(wt,rr)}).style("stroke-width",qn+6+"px").call(Yb.stroke,"rgba(0,0,0,0)").call(Yb.fill,"rgba(0,0,0,0)"),Xr,ri;n4.init({element:Er.node(),gd:e,prepFn:function(){var Qr=Iy.getTranslate(C);Xr=Qr.x,ri=Qr.y,i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0)},moveFn:function(Qr,Oi){var $i=vr(Xr,ri),tn=$i[0]+Qr,fn=$i[1]+Oi;C.call(Iy.setTranslate,tn,fn),d("x",m_(i,Qr,"x",s,t)),d("y",m_(a,Oi,"y",s,t)),t.axref===t.xref&&d("ax",m_(i,Qr,"ax",s,t)),t.ayref===t.yref&&d("ay",m_(a,Oi,"ay",s,t)),la.attr("transform",PU(Qr,Oi)),E.attr({transform:"rotate("+p+","+tn+","+fn+")"})},doneFn:function(){LU.call("_guiRelayout",e,v());var Qr=document.querySelector(".js-notes-box-panel");Qr&&Qr.redraw(Qr.selectedObj)}})}}};if(t.showarrow&&Ge(0,0),S){var Je;n4.init({element:C.node(),gd:e,prepFn:function(){Je=E.attr("transform")},moveFn:function(je,tt){var xt="pointer";if(t.showarrow)t.axref===t.xref?d("ax",m_(i,je,"ax",s,t)):d("ax",t.ax+je),t.ayref===t.yref?d("ay",m_(a,tt,"ay",s.w,t)):d("ay",t.ay+tt),Ge(je,tt);else{if(n)return;var Ie,xe;if(i)Ie=m_(i,je,"x",s,t);else{var ke=t._xsize/s.w,vt=t.x+(t._xshift-t.xshift)/s.w-ke/2;Ie=n4.align(vt+je/s.w,ke,0,1,t.xanchor)}if(a)xe=m_(a,tt,"y",s,t);else{var ir=t._ysize/s.h,ar=t.y-(t._yshift+t.yshift)/s.h-ir/2;xe=n4.align(ar-tt/s.h,ir,0,1,t.yanchor)}d("x",Ie),d("y",xe),(!i||!a)&&(xt=n4.getCursor(i?.5:Ie,a?.5:xe,t.xanchor,t.yanchor))}E.attr({transform:PU(je,tt)+Je}),RU(C,xt)},clickFn:function(je,tt){t.captureevents&&e.emit("plotly_clickannotation",x(tt))},doneFn:function(){RU(C),LU.call("_guiRelayout",e,v());var je=document.querySelector(".js-notes-box-panel");je&&je.redraw(je.selectedObj)}})}}l.annotationText?Z.call(IU.makeEditable,{delegate:C,gd:e}).call(j).on("edit",function(H){t.text=H,this.call(j),d("text",H),i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0),LU.call("_guiRelayout",e,v())}):Z.call(j)}});var Ppe=ye((Msr,Lpe)=>{"use strict";var Mpe=Dr(),L0t=qa(),Epe=vl().arrayEditor;Lpe.exports={hasClickToShow:P0t,onClick:I0t};function P0t(e,t){var r=Cpe(e,t);return r.on.length>0||r.explicitOff.length>0}function I0t(e,t){var r=Cpe(e,t),n=r.on,i=r.off.concat(r.explicitOff),a={},o=e._fullLayout.annotations,s,l;if(n.length||i.length){for(s=0;s{"use strict";var DU=Dr(),dT=ka();Ipe.exports=function(t,r,n,i){i("opacity");var a=i("bgcolor"),o=i("bordercolor"),s=dT.opacity(o);i("borderpad");var l=i("borderwidth"),u=i("showarrow");i("text",u?" ":n._dfltTitle.annotation),i("textangle"),DU.coerceFont(i,"font",n.font),i("width"),i("align");var c=i("height");if(c&&i("valign"),u){var f=i("arrowside"),h,d;f.indexOf("end")!==-1&&(h=i("arrowhead"),d=i("arrowsize")),f.indexOf("start")!==-1&&(i("startarrowhead",h),i("startarrowsize",d)),i("arrowcolor",s?r.bordercolor:dT.defaultLine),i("arrowwidth",(s&&l||1)*2),i("standoff"),i("startstandoff")}var v=i("hovertext"),_=n.hoverlabel||{};if(v){var b=i("hoverlabel.bgcolor",_.bgcolor||(dT.opacity(a)?dT.rgb(a):dT.defaultLine)),p=i("hoverlabel.bordercolor",_.bordercolor||dT.contrast(b)),k=DU.extendFlat({},_.font);k.color||(k.color=p),DU.coerceFont(i,"hoverlabel.font",k)}i("captureevents",!!v)}});var Dpe=ye((ksr,Rpe)=>{"use strict";var zU=Dr(),Kb=ho(),R0t=Yd(),D0t=FU(),F0t=Ub();Rpe.exports=function(t,r){R0t(t,r,{name:"annotations",handleItemDefaults:z0t})};function z0t(e,t,r){function n(E,S){return zU.coerce(e,t,F0t,E,S)}var i=n("visible"),a=n("clicktoshow");if(i||a){D0t(e,t,r,n);for(var o=t.showarrow,s=["x","y"],l=[-10,-30],u={_fullLayout:r},c=0;c<2;c++){var f=s[c],h=Kb.coerceRef(e,t,u,f,"","paper");if(h!=="paper"){var d=Kb.getFromId(u,h);d._annIndices.push(t._index)}if(Kb.coercePosition(t,u,n,h,f,.5),o){var v="a"+f,_=Kb.coerceRef(e,t,u,v,"pixel",["pixel","paper"]);_!=="pixel"&&_!==h&&(_=t[v]="pixel");var b=_==="pixel"?l[c]:.4;Kb.coercePosition(t,u,n,_,v,b)}n(f+"anchor"),n(f+"shift")}if(zU.noneOrAll(e,t,["x","y"]),o&&zU.noneOrAll(e,t,["ax","ay"]),a){var p=n("xclick"),k=n("yclick");t._xclick=p===void 0?t.x:Kb.cleanPosition(p,u,t.xref),t._yclick=k===void 0?t.y:Kb.cleanPosition(k,u,t.yref)}}}});var Ope=ye((Csr,zpe)=>{"use strict";var OU=Dr(),Jb=ho(),O0t=mI().draw;zpe.exports=function(t){var r=t._fullLayout,n=OU.filterVisible(r.annotations);if(n.length&&t._fullData.length)return OU.syncOrAsync([O0t,q0t],t)};function q0t(e){var t=e._fullLayout;OU.filterVisible(t.annotations).forEach(function(r){var n=Jb.getFromId(e,r.xref),i=Jb.getFromId(e,r.yref),a=Jb.getRefType(r.xref),o=Jb.getRefType(r.yref);r._extremes={},a==="range"&&Fpe(r,n),o==="range"&&Fpe(r,i)})}function Fpe(e,t){var r=t._id,n=r.charAt(0),i=e[n],a=e["a"+n],o=e[n+"ref"],s=e["a"+n+"ref"],l=e["_"+n+"padplus"],u=e["_"+n+"padminus"],c={x:1,y:-1}[n]*e[n+"shift"],f=3*e.arrowsize*e.arrowwidth||0,h=f+c,d=f-c,v=3*e.startarrowsize*e.arrowwidth||0,_=v+c,b=v-c,p;if(s===o){var k=Jb.findExtremes(t,[t.r2c(i)],{ppadplus:h,ppadminus:d}),E=Jb.findExtremes(t,[t.r2c(a)],{ppadplus:Math.max(l,_),ppadminus:Math.max(u,b)});p={min:[k.min[0],E.min[0]],max:[k.max[0],E.max[0]]}}else _=a?_+a:_,b=a?b-a:b,p=Jb.findExtremes(t,[t.r2c(i)],{ppadplus:Math.max(l,h,_),ppadminus:Math.max(u,d,b)});e._extremes[r]=p}});var Bpe=ye((Lsr,qpe)=>{"use strict";var B0t=Eo(),N0t=m6();qpe.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(!(a||o))return;var s=t._fullLayout.annotations,l=r._id.charAt(0),u,c;function f(d){var v=u[d],_=null;a?_=N0t(v,r.range):_=Math.pow(10,v),B0t(_)||(_=null),i(c+d,_)}for(var h=0;h{"use strict";var qU=mI(),Npe=Ppe();Upe.exports={moduleType:"component",name:"annotations",layoutAttributes:Ub(),supplyLayoutDefaults:Dpe(),includeBasePlot:qM()("annotations"),calcAutorange:Ope(),draw:qU.draw,drawOne:qU.drawOne,drawRaw:qU.drawRaw,hasClickToShow:Npe.hasClickToShow,onClick:Npe.onClick,convertCoords:Bpe()}});var yI=ye((Isr,Gpe)=>{"use strict";var kc=Ub(),U0t=mc().overrideAll,V0t=vl().templatedArray;Gpe.exports=U0t(V0t("annotation",{visible:kc.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:kc.xanchor,xshift:kc.xshift,yanchor:kc.yanchor,yshift:kc.yshift,text:kc.text,textangle:kc.textangle,font:kc.font,width:kc.width,height:kc.height,opacity:kc.opacity,align:kc.align,valign:kc.valign,bgcolor:kc.bgcolor,bordercolor:kc.bordercolor,borderpad:kc.borderpad,borderwidth:kc.borderwidth,showarrow:kc.showarrow,arrowcolor:kc.arrowcolor,arrowhead:kc.arrowhead,startarrowhead:kc.startarrowhead,arrowside:kc.arrowside,arrowsize:kc.arrowsize,startarrowsize:kc.startarrowsize,arrowwidth:kc.arrowwidth,standoff:kc.standoff,startstandoff:kc.startstandoff,hovertext:kc.hovertext,hoverlabel:kc.hoverlabel,captureevents:kc.captureevents}),"calc","from-root")});var jpe=ye((Rsr,Hpe)=>{"use strict";var BU=Dr(),G0t=ho(),H0t=Yd(),j0t=FU(),W0t=yI();Hpe.exports=function(t,r,n){H0t(t,r,{name:"annotations",handleItemDefaults:X0t,fullLayout:n.fullLayout})};function X0t(e,t,r,n){function i(s,l){return BU.coerce(e,t,W0t,s,l)}function a(s){var l=s+"axis",u={_fullLayout:{}};return u._fullLayout[l]=r[l],G0t.coercePosition(t,u,i,s,s,.5)}var o=i("visible");o&&(j0t(e,t,n.fullLayout,i),a("x"),a("y"),a("z"),BU.noneOrAll(e,t,["x","y","z"]),t.xref="x",t.yref="y",t.zref="z",i("xanchor"),i("yanchor"),i("xshift"),i("yshift"),t.showarrow&&(t.axref="pixel",t.ayref="pixel",i("ax",-10),i("ay",-30),BU.noneOrAll(e,t,["ax","ay"])))}});var Ype=ye((Dsr,Zpe)=>{"use strict";var Wpe=Dr(),Xpe=ho();Zpe.exports=function(t){for(var r=t.fullSceneLayout,n=r.annotations,i=0;i{"use strict";function NU(e,t){var r=[0,0,0,0],n,i;for(n=0;n<4;++n)for(i=0;i<4;++i)r[i]+=e[4*n+i]*t[n];return r}function Y0t(e,t){var r=NU(e.projection,NU(e.view,NU(e.model,[t[0],t[1],t[2],1])));return r}Kpe.exports=Y0t});var $pe=ye((zsr,Jpe)=>{"use strict";var K0t=mI().drawRaw,J0t=UU(),$0t=["x","y","z"];Jpe.exports=function(t){for(var r=t.fullSceneLayout,n=t.dataScale,i=r.annotations,a=0;a1){s=!0;break}}s?t.fullLayout._infolayer.select(".annotation-"+t.id+'[data-index="'+a+'"]').remove():(o._pdata=J0t(t.glplot.cameraParams,[r.xaxis.r2l(o.x)*n[0],r.yaxis.r2l(o.y)*n[1],r.zaxis.r2l(o.z)*n[2]]),K0t(t.graphDiv,o,a,t.id,o._xa,o._ya))}}});var t0e=ye((Osr,e0e)=>{"use strict";var Q0t=qa(),Qpe=Dr();e0e.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:yI()}}},layoutAttributes:yI(),handleDefaults:jpe(),includeBasePlot:egt,convert:Ype(),draw:$pe()};function egt(e,t){var r=Q0t.subplotsRegistry.gl3d;if(r)for(var n=r.attrRegex,i=Object.keys(e),a=0;a{"use strict";var r0e=Ub(),i0e=ec(),n0e=pf().line,tgt=Pd().dash,Og=Ao().extendFlat,rgt=vl().templatedArray,qsr=OM(),vT=Gl(),{shapeTexttemplateAttrs:igt,templatefallbackAttrs:ngt}=Ll(),agt=M6();a0e.exports=rgt("shape",{visible:Og({},vT.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:Og({},vT.legend,{editType:"calc+arraydraw"}),legendgroup:Og({},vT.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:Og({},vT.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:i0e({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:Og({},vT.legendrank,{editType:"calc+arraydraw"}),legendwidth:Og({},vT.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:Og({},r0e.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:Og({},r0e.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:Og({},n0e.color,{editType:"arraydraw"}),width:Og({},n0e.width,{editType:"calc+arraydraw"}),dash:Og({},tgt,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:igt({},{keys:Object.keys(agt)}),texttemplatefallback:ngt({editType:"arraydraw"}),font:i0e({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var l0e=ye((Nsr,s0e)=>{"use strict";var o4=Dr(),pT=ho(),ogt=Yd(),sgt=VU(),o0e=f_();s0e.exports=function(t,r){ogt(t,r,{name:"shapes",handleItemDefaults:ugt})};function lgt(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}function ugt(e,t,r){function n(H,te){return o4.coerce(e,t,sgt,H,te)}t._isShape=!0;var i=n("visible");if(i){var a=n("showlegend");a&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),o4.coerceFont(n,"legendgrouptitle.font"),n("legendrank"));var o=n("path"),s=o?"path":"rect",l=n("type",s),u=l!=="path";u&&delete t.path,n("editable"),n("layer"),n("opacity"),n("fillcolor"),n("fillrule");var c=n("line.width");c&&(n("line.color"),n("line.dash"));for(var f=n("xsizemode"),h=n("ysizemode"),d=["x","y"],v=0;v<2;v++){var _=d[v],b=_+"anchor",p=_==="x"?f:h,k={_fullLayout:r},E,S,L,x=pT.coerceRef(e,t,k,_,void 0,"paper"),C=pT.getRefType(x);if(C==="range"?(E=pT.getFromId(k,x),E._shapeIndices.push(t._index),L=o0e.rangeToShapePosition(E),S=o0e.shapePositionToRange(E),(E.type==="category"||E.type==="multicategory")&&(n(_+"0shift"),n(_+"1shift"))):S=L=o4.identity,u){var M=.25,g=.75,P=_+"0",T=_+"1",z=e[P],O=e[T];e[P]=S(e[P],!0),e[T]=S(e[T],!0),p==="pixel"?(n(P,0),n(T,10)):(pT.coercePosition(t,k,n,x,P,M),pT.coercePosition(t,k,n,x,T,g)),t[P]=L(t[P]),t[T]=L(t[T]),e[P]=z,e[T]=O}if(p==="pixel"){var V=e[b];e[b]=S(e[b],!0),pT.coercePosition(t,k,n,x,b,.25),t[b]=L(t[b]),e[b]=V}}u&&o4.noneOrAll(e,t,["x0","x1","y0","y1"]);var G=l==="line",Z,j;if(u&&(Z=n("label.texttemplate"),n("label.texttemplatefallback")),Z||(j=n("label.text")),j||Z){n("label.textangle");var N=n("label.textposition",G?"middle":"middle center");n("label.xanchor"),n("label.yanchor",lgt(G,N)),n("label.padding"),o4.coerceFont(n,"label.font",r.font)}}}});var f0e=ye((Usr,c0e)=>{"use strict";var cgt=ka(),u0e=Dr();function fgt(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}c0e.exports=function(t,r,n){n("newshape.visible"),n("newshape.name"),n("newshape.showlegend"),n("newshape.legend"),n("newshape.legendwidth"),n("newshape.legendgroup"),n("newshape.legendgrouptitle.text"),u0e.coerceFont(n,"newshape.legendgrouptitle.font"),n("newshape.legendrank"),n("newshape.drawdirection"),n("newshape.layer"),n("newshape.fillcolor"),n("newshape.fillrule"),n("newshape.opacity");var i=n("newshape.line.width");if(i){var a=(t||{}).plot_bgcolor||"#FFF";n("newshape.line.color",cgt.contrast(a)),n("newshape.line.dash")}var o=t.dragmode==="drawline",s=n("newshape.label.text"),l=n("newshape.label.texttemplate");if(n("newshape.label.texttemplatefallback"),s||l){n("newshape.label.textangle");var u=n("newshape.label.textposition",o?"middle":"middle center");n("newshape.label.xanchor"),n("newshape.label.yanchor",fgt(o,u)),n("newshape.label.padding"),u0e.coerceFont(n,"newshape.label.font",r.font)}n("activeshape.fillcolor"),n("activeshape.opacity")}});var g0e=ye((Vsr,p0e)=>{"use strict";var GU=Dr(),gT=ho(),mT=gM(),d0e=f_();p0e.exports=function(t){var r=t._fullLayout,n=GU.filterVisible(r.shapes);if(!(!n.length||!t._fullData.length))for(var i=0;i0?u+o:o;return{ppad:o,ppadplus:s?f:h,ppadminus:s?h:f}}else return{ppad:o}}function h0e(e,t,r){var n=e._id.charAt(0)==="x"?"x":"y",i=e.type==="category"||e.type==="multicategory",a,o,s=0,l=0,u=i?e.r2c:e.d2c,c=t[n+"sizemode"]==="scaled";if(c?(a=t[n+"0"],o=t[n+"1"],i&&(s=t[n+"0shift"],l=t[n+"1shift"])):(a=t[n+"anchor"],o=t[n+"anchor"]),a!==void 0)return[u(a)+s,u(o)+l];if(t.path){var f=1/0,h=-1/0,d=t.path.match(mT.segmentRE),v,_,b,p,k;for(e.type==="date"&&(u=d0e.decodeDate(u)),v=0;vh&&(h=k)));if(h>=f)return[f,h]}}});var _0e=ye((Gsr,y0e)=>{"use strict";var m0e=lP();y0e.exports={moduleType:"component",name:"shapes",layoutAttributes:VU(),supplyLayoutDefaults:l0e(),supplyDrawNewShapeDefaults:f0e(),includeBasePlot:qM()("shapes"),calcAutorange:g0e(),draw:m0e.draw,drawOne:m0e.drawOne}});var HU=ye((jsr,b0e)=>{"use strict";var x0e=hd(),vgt=vl().templatedArray,Hsr=OM();b0e.exports=vgt("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",x0e.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",x0e.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var T0e=ye((Wsr,w0e)=>{"use strict";var pgt=Dr(),jU=ho(),ggt=Yd(),mgt=HU(),ygt="images";w0e.exports=function(t,r){var n={name:ygt,handleItemDefaults:_gt};ggt(t,r,n)};function _gt(e,t,r){function n(h,d){return pgt.coerce(e,t,mgt,h,d)}var i=n("source"),a=n("visible",!!i);if(!a)return t;n("layer"),n("xanchor"),n("yanchor"),n("sizex"),n("sizey"),n("sizing"),n("opacity");for(var o={_fullLayout:r},s=["x","y"],l=0;l<2;l++){var u=s[l],c=jU.coerceRef(e,t,o,u,"paper",void 0);if(c!=="paper"){var f=jU.getFromId(o,c);f._imgIndices.push(t._index)}jU.coercePosition(t,o,n,c,u,0)}return t}});var E0e=ye((Xsr,M0e)=>{"use strict";var A0e=Oa(),xgt=So(),yT=ho(),S0e=hf(),bgt=Wp();M0e.exports=function(t){var r=t._fullLayout,n=[],i={},a=[],o,s;for(s=0;s{"use strict";var k0e=Eo(),wgt=m6();C0e.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(a||o){for(var s=t._fullLayout.images,l=r._id.charAt(0),u,c,f=0;f{"use strict";P0e.exports={moduleType:"component",name:"images",layoutAttributes:HU(),supplyLayoutDefaults:T0e(),includeBasePlot:qM()("images"),draw:E0e(),convertCoords:L0e()}});var _I=ye((Ksr,R0e)=>{"use strict";R0e.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var WU=ye((Jsr,F0e)=>{"use strict";var Tgt=ec(),Agt=Lh(),Sgt=Ao().extendFlat,Mgt=mc().overrideAll,Egt=E6(),D0e=vl().templatedArray,kgt=D0e("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});F0e.exports=Mgt(D0e("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:kgt,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:Sgt(Egt({editType:"arraydraw"}),{}),font:Tgt({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:Agt.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var B0e=ye(($sr,q0e)=>{"use strict";var xI=Dr(),z0e=Yd(),O0e=WU(),Cgt=_I(),Lgt=Cgt.name,Pgt=O0e.buttons;q0e.exports=function(t,r){var n={name:Lgt,handleItemDefaults:Igt};z0e(t,r,n)};function Igt(e,t,r){function n(o,s){return xI.coerce(e,t,O0e,o,s)}var i=z0e(e,t,{name:"buttons",handleItemDefaults:Rgt}),a=n("visible",i.length>0);a&&(n("active"),n("direction"),n("type"),n("showactive"),n("x"),n("y"),xI.noneOrAll(e,t,["x","y"]),n("xanchor"),n("yanchor"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),xI.coerceFont(n,"font",r.font),n("bgcolor",r.paper_bgcolor),n("bordercolor"),n("borderwidth"))}function Rgt(e,t){function r(i,a){return xI.coerce(e,t,Pgt,i,a)}var n=r("visible",e.method==="skip"||Array.isArray(e.args));n&&(r("method"),r("args"),r("args2"),r("label"),r("execute"))}});var V0e=ye((Qsr,U0e)=>{"use strict";U0e.exports=Mf;var qg=Oa(),N0e=ka(),_T=So(),bI=Dr();function Mf(e,t,r){this.gd=e,this.container=t,this.id=r,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}Mf.barWidth=2;Mf.barLength=20;Mf.barRadius=2;Mf.barPad=1;Mf.barColor="#808BA4";Mf.prototype.enable=function(t,r,n){var i=this.gd._fullLayout,a=i.width,o=i.height;this.position=t;var s=this.position.l,l=this.position.w,u=this.position.t,c=this.position.h,f=this.position.direction,h=f==="down",d=f==="left",v=f==="right",_=f==="up",b=l,p=c,k,E,S,L;!h&&!d&&!v&&!_&&(this.position.direction="down",h=!0);var x=h||_;x?(k=s,E=k+b,h?(S=u,L=Math.min(S+p,o),p=L-S):(L=u+p,S=Math.max(L-p,0),p=L-S)):(S=u,L=S+p,d?(E=s+b,k=Math.max(E-b,0),b=E-k):(k=s,E=Math.min(k+b,a),b=E-k)),this._box={l:k,t:S,w:b,h:p};var C=l>b,M=Mf.barLength+2*Mf.barPad,g=Mf.barWidth+2*Mf.barPad,P=s,T=u+c;T+g>o&&(T=o-g);var z=this.container.selectAll("rect.scrollbar-horizontal").data(C?[0]:[]);z.exit().on(".drag",null).remove(),z.enter().append("rect").classed("scrollbar-horizontal",!0).call(N0e.fill,Mf.barColor),C?(this.hbar=z.attr({rx:Mf.barRadius,ry:Mf.barRadius,x:P,y:T,width:M,height:g}),this._hbarXMin=P+M/2,this._hbarTranslateMax=b-M):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var O=c>p,V=Mf.barWidth+2*Mf.barPad,G=Mf.barLength+2*Mf.barPad,Z=s+l,j=u;Z+V>a&&(Z=a-V);var N=this.container.selectAll("rect.scrollbar-vertical").data(O?[0]:[]);N.exit().on(".drag",null).remove(),N.enter().append("rect").classed("scrollbar-vertical",!0).call(N0e.fill,Mf.barColor),O?(this.vbar=N.attr({rx:Mf.barRadius,ry:Mf.barRadius,x:Z,y:j,width:V,height:G}),this._vbarYMin=j+G/2,this._vbarTranslateMax=p-G):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var H=this.id,te=k-.5,oe=O?E+V+.5:E+.5,_e=S-.5,Ee=C?L+g+.5:L+.5,Ce=i._topdefs.selectAll("#"+H).data(C||O?[0]:[]);if(Ce.exit().remove(),Ce.enter().append("clipPath").attr("id",H).append("rect"),C||O?(this._clipRect=Ce.select("rect").attr({x:Math.floor(te),y:Math.floor(_e),width:Math.ceil(oe)-Math.floor(te),height:Math.ceil(Ee)-Math.floor(_e)}),this.container.call(_T.setClipUrl,H,this.gd),this.bg.attr({x:s,y:u,width:l,height:c})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(_T.setClipUrl,null),delete this._clipRect),C||O){var me=qg.behavior.drag().on("dragstart",function(){qg.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(me);var ie=qg.behavior.drag().on("dragstart",function(){qg.event.sourceEvent.preventDefault(),qg.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));C&&this.hbar.on(".drag",null).call(ie),O&&this.vbar.on(".drag",null).call(ie)}this.setTranslate(r,n)};Mf.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(_T.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};Mf.prototype._onBoxDrag=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t-=qg.event.dx),this.vbar&&(r-=qg.event.dy),this.setTranslate(t,r)};Mf.prototype._onBoxWheel=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t+=qg.event.deltaY),this.vbar&&(r+=qg.event.deltaY),this.setTranslate(t,r)};Mf.prototype._onBarDrag=function(){var t=this.translateX,r=this.translateY;if(this.hbar){var n=t+this._hbarXMin,i=n+this._hbarTranslateMax,a=bI.constrain(qg.event.x,n,i),o=(a-n)/(i-n),s=this.position.w-this._box.w;t=o*s}if(this.vbar){var l=r+this._vbarYMin,u=l+this._vbarTranslateMax,c=bI.constrain(qg.event.y,l,u),f=(c-l)/(u-l),h=this.position.h-this._box.h;r=f*h}this.setTranslate(t,r)};Mf.prototype.setTranslate=function(t,r){var n=this.position.w-this._box.w,i=this.position.h-this._box.h;if(t=bI.constrain(t||0,0,n),r=bI.constrain(r||0,0,i),this.translateX=t,this.translateY=r,this.container.call(_T.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-r),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+r-.5)}),this.hbar){var a=t/n;this.hbar.call(_T.setTranslate,t+a*this._hbarTranslateMax,r)}if(this.vbar){var o=r/i;this.vbar.call(_T.setTranslate,t,r+o*this._vbarTranslateMax)}}});var $0e=ye((elr,J0e)=>{"use strict";var xT=Oa(),s4=Mc(),l4=ka(),bT=So(),e0=Dr(),wI=ru(),Dgt=vl().arrayEditor,H0e=$h().LINE_SPACING,es=_I(),Fgt=V0e();J0e.exports=function(t){var r=t._fullLayout,n=e0.filterVisible(r[es.name]);function i(h){s4.autoMargin(t,Y0e(h))}var a=r._menulayer.selectAll("g."+es.containerClassName).data(n.length>0?[0]:[]);if(a.enter().append("g").classed(es.containerClassName,!0).style("cursor","pointer"),a.exit().each(function(){xT.select(this).selectAll("g."+es.headerGroupClassName).each(i)}).remove(),n.length!==0){var o=a.selectAll("g."+es.headerGroupClassName).data(n,zgt);o.enter().append("g").classed(es.headerGroupClassName,!0);for(var s=e0.ensureSingle(a,"g",es.dropdownButtonGroupClassName,function(h){h.style("pointer-events","all")}),l=0;l{"use strict";var Ggt=_I();Q0e.exports={moduleType:"component",name:Ggt.name,layoutAttributes:WU(),supplyLayoutDefaults:B0e(),draw:$0e()}});var c4=ye((rlr,tge)=>{"use strict";tge.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var KU=ye((ilr,nge)=>{"use strict";var rge=ec(),Hgt=E6(),jgt=Ao().extendDeepAll,Wgt=mc().overrideAll,Xgt=US(),ige=vl().templatedArray,$b=c4(),Zgt=ige("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});nge.exports=Wgt(ige("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:Zgt,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:jgt(Hgt({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:Xgt.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:rge({})},font:rge({}),activebgcolor:{valType:"color",dflt:$b.gripBgActiveColor},bgcolor:{valType:"color",dflt:$b.railBgColor},bordercolor:{valType:"color",dflt:$b.railBorderColor},borderwidth:{valType:"number",min:0,dflt:$b.railBorderWidth},ticklen:{valType:"number",min:0,dflt:$b.tickLength},tickcolor:{valType:"color",dflt:$b.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:$b.minorTickLength}}),"arraydraw","from-root")});var lge=ye((nlr,sge)=>{"use strict";var wT=Dr(),age=Yd(),oge=KU(),Ygt=c4(),Kgt=Ygt.name,Jgt=oge.steps;sge.exports=function(t,r){age(t,r,{name:Kgt,handleItemDefaults:$gt})};function $gt(e,t,r){function n(f,h){return wT.coerce(e,t,oge,f,h)}for(var i=age(e,t,{name:"steps",handleItemDefaults:Qgt}),a=0,o=0;o{"use strict";var Bg=Oa(),TI=Mc(),__=ka(),Ng=So(),t0=Dr(),emt=t0.strTranslate,f4=ru(),tmt=vl().arrayEditor,Rs=c4(),QU=$h(),fge=QU.LINE_SPACING,JU=QU.FROM_TL,$U=QU.FROM_BR;mge.exports=function(t){var r=t._context.staticPlot,n=t._fullLayout,i=rmt(n,t),a=n._infolayer.selectAll("g."+Rs.containerClassName).data(i.length>0?[0]:[]);a.enter().append("g").classed(Rs.containerClassName,!0).style("cursor",r?null:"ew-resize");function o(c){c._commandObserver&&(c._commandObserver.remove(),delete c._commandObserver),TI.autoMargin(t,hge(c))}if(a.exit().each(function(){Bg.select(this).selectAll("g."+Rs.groupClassName).each(o)}).remove(),i.length!==0){var s=a.selectAll("g."+Rs.groupClassName).data(i,imt);s.enter().append("g").classed(Rs.groupClassName,!0),s.exit().each(o).remove();for(var l=0;l0&&(s=s.transition().duration(t.transition.duration).ease(t.transition.easing)),s.attr("transform",emt(o-Rs.gripWidth*.5,t._dims.currentValueTotalHeight))}}function eV(e,t){var r=e._dims;return r.inputAreaStart+Rs.stepInset+(r.inputAreaLength-2*Rs.stepInset)*Math.min(1,Math.max(0,t))}function cge(e,t){var r=e._dims;return Math.min(1,Math.max(0,(t-Rs.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*Rs.stepInset-2*r.inputAreaStart)))}function cmt(e,t,r){var n=r._dims,i=t0.ensureSingle(e,"rect",Rs.railTouchRectClass,function(a){a.call(pge,t,e,r).style("pointer-events","all")});i.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,Rs.tickOffset+r.ticklen+n.labelHeight)}).call(__.fill,r.bgcolor).attr("opacity",0),Ng.setTranslate(i,0,n.currentValueTotalHeight)}function fmt(e,t){var r=t._dims,n=r.inputAreaLength-Rs.railInset*2,i=t0.ensureSingle(e,"rect",Rs.railRectClass);i.attr({width:n,height:Rs.railWidth,rx:Rs.railRadius,ry:Rs.railRadius,"shape-rendering":"crispEdges"}).call(__.stroke,t.bordercolor).call(__.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px"),Ng.setTranslate(i,Rs.railInset,(r.inputAreaWidth-Rs.railWidth)*.5+r.currentValueTotalHeight)}});var xge=ye((olr,_ge)=>{"use strict";var hmt=c4();_ge.exports={moduleType:"component",name:hmt.name,layoutAttributes:KU(),supplyLayoutDefaults:lge(),draw:yge()}});var SI=ye((slr,wge)=>{"use strict";var bge=Lh();wge.exports={bgcolor:{valType:"color",dflt:bge.background,editType:"plot"},bordercolor:{valType:"color",dflt:bge.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var tV=ye((llr,Tge)=>{"use strict";Tge.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var MI=ye((ulr,Age)=>{"use strict";Age.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var Ege=ye(kI=>{"use strict";var dmt=hf(),vmt=ru(),Sge=MI(),pmt=$h().LINE_SPACING,EI=Sge.name;function Mge(e){var t=e&&e[EI];return t&&t.visible}kI.isVisible=Mge;kI.makeData=function(e){for(var t=dmt.list({_fullLayout:e},"x",!0),r=e.margin,n=[],i=0;i{"use strict";var CI=Dr(),kge=vl(),Cge=hf(),gmt=SI(),mmt=tV();Lge.exports=function(t,r,n){var i=t[n],a=r[n];if(!(i.rangeslider||r._requestRangeslider[a._id]))return;CI.isPlainObject(i.rangeslider)||(i.rangeslider={});var o=i.rangeslider,s=kge.newContainer(a,"rangeslider");function l(L,x){return CI.coerce(o,s,gmt,L,x)}var u,c;function f(L,x){return CI.coerce(u,c,mmt,L,x)}var h=l("visible");if(h){l("bgcolor",r.plot_bgcolor),l("bordercolor"),l("borderwidth"),l("thickness"),l("autorange",!a.isValidRange(o.range)),l("range");var d=r._subplots;if(d)for(var v=d.cartesian.filter(function(L){return L.slice(0,Math.max(0,L.indexOf("y")))===Cge.name2id(n)}).map(function(L){return L.slice(L.indexOf("y"),L.length)}),_=CI.simpleMap(v,Cge.id2name),b=0;b<_.length;b++){var p=_[b];u=o[p]||{},c=kge.newContainer(s,p,"yaxis");var k=r[p],E;u.range&&k.isValidRange(u.range)&&(E="fixed");var S=f("rangemode",E);S!=="match"&&f("range",k.range.slice())}s._input=o}}});var Rge=ye((hlr,Ige)=>{"use strict";var ymt=hf().list,_mt=Ag().getAutoRange,xmt=MI();Ige.exports=function(t){for(var r=ymt(t,"x",!0),n=0;n{"use strict";var LI=Oa(),bmt=qa(),wmt=Mc(),Jf=Dr(),PI=Jf.strTranslate,Fge=So(),x_=ka(),Tmt=Eb(),Amt=ph(),rV=hf(),Smt=yv(),Mmt=Sg(),rl=MI();zge.exports=function(e){for(var t=e._fullLayout,r=t._rangeSliderData,n=0;n=N.max)Z=T[j+1];else if(G=N.pmax)Z=T[j+1];else if(G0?e.touches[0].clientX:0}function Emt(e,t,r,n){if(t._context.staticPlot)return;var i=e.select("rect."+rl.slideBoxClassName).node(),a=e.select("rect."+rl.grabAreaMinClassName).node(),o=e.select("rect."+rl.grabAreaMaxClassName).node();function s(){var l=LI.event,u=l.target,c=Dge(l),f=c-e.node().getBoundingClientRect().left,h=n.d2p(r._rl[0]),d=n.d2p(r._rl[1]),v=Smt.coverSlip();this.addEventListener("touchmove",_),this.addEventListener("touchend",b),v.addEventListener("mousemove",_),v.addEventListener("mouseup",b);function _(p){var k=Dge(p),E=+k-c,S,L,x;switch(u){case i:if(x="ew-resize",h+E>r._length||d+E<0)return;S=h+E,L=d+E;break;case a:if(x="col-resize",h+E>r._length)return;S=h+E,L=d;break;case o:if(x="col-resize",d+E<0)return;S=h,L=d+E;break;default:x="ew-resize",S=f,L=f+E;break}if(L{"use strict";var Omt=Dr(),qmt=SI(),Bmt=tV(),iV=Ege();qge.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:Omt.extendFlat({},qmt,{yaxis:Bmt})}}},layoutAttributes:SI(),handleDefaults:Pge(),calcAutorange:Rge(),draw:Oge(),isVisible:iV.isVisible,makeData:iV.makeData,autoMarginOpts:iV.autoMarginOpts}});var II=ye((plr,Uge)=>{"use strict";var Nmt=ec(),Nge=Lh(),Umt=vl().templatedArray,Vmt=Umt("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});Uge.exports={visible:{valType:"boolean",editType:"plot"},buttons:Vmt,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:Nmt({editType:"plot"}),bgcolor:{valType:"color",dflt:Nge.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:Nge.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var nV=ye((glr,Vge)=>{"use strict";Vge.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var jge=ye((mlr,Hge)=>{"use strict";var RI=Dr(),Gmt=ka(),Hmt=vl(),jmt=Yd(),Gge=II(),aV=nV();Hge.exports=function(t,r,n,i,a){var o=t.rangeselector||{},s=Hmt.newContainer(r,"rangeselector");function l(d,v){return RI.coerce(o,s,Gge,d,v)}var u=jmt(o,s,{name:"buttons",handleItemDefaults:Wmt,calendar:a}),c=l("visible",u.length>0);if(c){var f=Xmt(r,n,i);l("x",f[0]),l("y",f[1]),RI.noneOrAll(t,r,["x","y"]),l("xanchor"),l("yanchor"),RI.coerceFont(l,"font",n.font);var h=l("bgcolor");l("activecolor",Gmt.contrast(h,aV.lightAmount,aV.darkAmount)),l("bordercolor"),l("borderwidth")}};function Wmt(e,t,r,n){var i=n.calendar;function a(l,u){return RI.coerce(e,t,Gge.buttons,l,u)}var o=a("visible");if(o){var s=a("step");s!=="all"&&(i&&i!=="gregorian"&&(s==="month"||s==="year")?t.stepmode="backward":a("stepmode"),a("count")),a("label")}}function Xmt(e,t,r){for(var n=r.filter(function(s){return t[s].anchor===e._id}),i=0,a=0;a{"use strict";var Zmt=bO(),Ymt=Dr().titleCase;Wge.exports=function(t,r){var n=t._name,i={};if(r.step==="all")i[n+".autorange"]=!0;else{var a=Kmt(t,r);i[n+".range[0]"]=a[0],i[n+".range[1]"]=a[1]}return i};function Kmt(e,t){var r=e.range,n=new Date(e.r2l(r[1])),i=t.step,a=Zmt["utc"+Ymt(i)],o=t.count,s;switch(t.stepmode){case"backward":s=e.l2r(+a.offset(n,-o));break;case"todate":var l=a.offset(n,-o);s=e.l2r(+a.ceil(l));break}var u=r[1];return[s,u]}});var tme=ye((_lr,eme)=>{"use strict";var FI=Oa(),Jmt=qa(),$mt=Mc(),Zge=ka(),Qge=So(),Ry=Dr(),Yge=Ry.strTranslate,DI=ru(),Qmt=hf(),lV=$h(),Kge=lV.LINE_SPACING,Jge=lV.FROM_TL,$ge=lV.FROM_BR,sV=nV(),eyt=Xge();eme.exports=function(t){var r=t._fullLayout,n=r._infolayer.selectAll(".rangeselector").data(tyt(t),ryt);n.enter().append("g").classed("rangeselector",!0),n.exit().remove(),n.style({cursor:"pointer","pointer-events":"all"}),n.each(function(i){var a=FI.select(this),o=i,s=o.rangeselector,l=a.selectAll("g.button").data(Ry.filterVisible(s.buttons));l.enter().append("g").classed("button",!0),l.exit().remove(),l.each(function(u){var c=FI.select(this),f=eyt(o,u);u._isActive=iyt(o,u,f),c.call(oV,s,u),c.call(ayt,s,u,t),c.on("click",function(){t._dragged||Jmt.call("_guiRelayout",t,f)}),c.on("mouseover",function(){u._isHovered=!0,c.call(oV,s,u)}),c.on("mouseout",function(){u._isHovered=!1,c.call(oV,s,u)})}),syt(t,l,s,o._name,a)})};function tyt(e){for(var t=Qmt.list(e,"x",!0),r=[],n=0;n{"use strict";rme.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:II()}}},layoutAttributes:II(),handleDefaults:jge(),draw:tme()}});var Cc=ye(uV=>{"use strict";var nme=Ao().extendFlat;uV.attributes=function(e,t){e=e||{},t=t||{};var r={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},n=e.name?e.name+" ":"",i=e.trace?"trace ":"subplot ",a=t.description?" "+t.description:"",o={x:nme({},r,{}),y:nme({},r,{}),editType:e.editType};return e.noGridCell||(o.row={valType:"integer",min:0,dflt:0,editType:e.editType},o.column={valType:"integer",min:0,dflt:0,editType:e.editType}),o};uV.defaults=function(e,t,r,n){var i=n&&n.x||[0,1],a=n&&n.y||[0,1],o=t.grid;if(o){var s=r("domain.column");s!==void 0&&(s{"use strict";var lyt=Dr(),uyt=o3().counter,cyt=Cc().attributes,ame=hd().idRegex,fyt=vl(),cV={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[uyt("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[ame.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[ame.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:cyt({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function zI(e,t,r){var n=t[r+"axes"],i=Object.keys((e._splomAxes||{})[r]||{});if(Array.isArray(n))return n;if(i.length)return i}function hyt(e,t){var r=e.grid||{},n=zI(t,r,"x"),i=zI(t,r,"y");if(!e.grid&&!n&&!i)return;var a=Array.isArray(r.subplots)&&Array.isArray(r.subplots[0]),o=Array.isArray(n),s=Array.isArray(i),l=o&&n!==r.xaxes&&s&&i!==r.yaxes,u,c;a?(u=r.subplots.length,c=r.subplots[0].length):(s&&(u=i.length),o&&(c=n.length));var f=fyt.newContainer(t,"grid");function h(x,C){return lyt.coerce(r,f,cV,x,C)}var d=h("rows",u),v=h("columns",c);if(!(d*v>1)){delete t.grid;return}if(!a&&!o&&!s){var _=h("pattern")==="independent";_&&(a=!0)}f._hasSubplotGrid=a;var b=h("roworder"),p=b==="top to bottom",k=a?.2:.1,E=a?.3:.1,S,L;l&&t._splomGridDflt&&(S=t._splomGridDflt.xside,L=t._splomGridDflt.yside),f._domains={x:ome("x",h,k,S,v),y:ome("y",h,E,L,d,p)}}function ome(e,t,r,n,i,a){var o=t(e+"gap",r),s=t("domain."+e);t(e+"side",n);for(var l=new Array(i),u=s[0],c=(s[1]-u)/(i-o),f=c*(1-o),h=0;h{"use strict";ume.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var hme=ye((Alr,fme)=>{"use strict";var cme=Eo(),vyt=qa(),pyt=Dr(),gyt=vl(),myt=hV();fme.exports=function(e,t,r,n){var i="error_"+n.axis,a=gyt.newContainer(t,i),o=e[i]||{};function s(v,_){return pyt.coerce(o,a,myt,v,_)}var l=o.array!==void 0||o.value!==void 0||o.type==="sqrt",u=s("visible",l);if(u!==!1){var c=s("type","array"in o?"data":"percent"),f=!0;c!=="sqrt"&&(f=s("symmetric",!((c==="data"?"arrayminus":"valueminus")in o))),c==="data"?(s("array"),s("traceref"),f||(s("arrayminus"),s("tracerefminus"))):(c==="percent"||c==="constant")&&(s("value"),f||s("valueminus"));var h="copy_"+n.inherit+"style";if(n.inherit){var d=t["error_"+n.inherit];(d||{}).visible&&s(h,!(o.color||cme(o.thickness)||cme(o.width)))}(!n.inherit||!a[h])&&(s("color",r),s("thickness"),s("width",vyt.traceIs(t,"gl3d")?0:4))}}});var dV=ye((Slr,vme)=>{"use strict";vme.exports=function(t){var r=t.type,n=t.symmetric;if(r==="data"){var i=t.array||[];if(n)return function(u,c){var f=+i[c];return[f,f]};var a=t.arrayminus||[];return function(u,c){var f=+i[c],h=+a[c];return!isNaN(f)||!isNaN(h)?[h||0,f||0]:[NaN,NaN]}}else{var o=dme(r,t.value),s=dme(r,t.valueminus);return n||t.valueminus===void 0?function(u){var c=o(u);return[c,c]}:function(u){return[s(u),o(u)]}}};function dme(e,t){if(e==="percent")return function(r){return Math.abs(r*t/100)};if(e==="constant")return function(){return Math.abs(t)};if(e==="sqrt")return function(r){return Math.sqrt(Math.abs(r))}}});var mme=ye((Mlr,gme)=>{"use strict";var vV=Eo(),yyt=qa(),pV=ho(),_yt=Dr(),xyt=dV();gme.exports=function(t){for(var r=t.calcdata,n=0;n{"use strict";var yme=Oa(),b_=Eo(),byt=So(),wyt=Ru();_me.exports=function(t,r,n,i){var a,o=n.xaxis,s=n.yaxis,l=i&&i.duration>0,u=t._context.staticPlot;r.each(function(c){var f=c[0].trace,h=f.error_x||{},d=f.error_y||{},v;f.ids&&(v=function(k){return k.id});var _=wyt.hasMarkers(f)&&f.marker.maxdisplayed>0;!d.visible&&!h.visible&&(c=[]);var b=yme.select(this).selectAll("g.errorbar").data(c,v);if(b.exit().remove(),!!c.length){h.visible||b.selectAll("path.xerror").remove(),d.visible||b.selectAll("path.yerror").remove(),b.style("opacity",1);var p=b.enter().append("g").classed("errorbar",!0);l&&p.style("opacity",0).transition().duration(i.duration).style("opacity",1),byt.setClipUrl(b,n.layerClipId,t),b.each(function(k){var E=yme.select(this),S=Tyt(k,o,s);if(!(_&&!k.vis)){var L,x=E.select("path.yerror");if(d.visible&&b_(S.x)&&b_(S.yh)&&b_(S.ys)){var C=d.width;L="M"+(S.x-C)+","+S.yh+"h"+2*C+"m-"+C+",0V"+S.ys,S.noYS||(L+="m-"+C+",0h"+2*C),a=!x.size(),a?x=E.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("yerror",!0):l&&(x=x.transition().duration(i.duration).ease(i.easing)),x.attr("d",L)}else x.remove();var M=E.select("path.xerror");if(h.visible&&b_(S.y)&&b_(S.xh)&&b_(S.xs)){var g=(h.copy_ystyle?d:h).width;L="M"+S.xh+","+(S.y-g)+"v"+2*g+"m0,-"+g+"H"+S.xs,S.noXS||(L+="m0,-"+g+"v"+2*g),a=!M.size(),a?M=E.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("xerror",!0):l&&(M=M.transition().duration(i.duration).ease(i.easing)),M.attr("d",L)}else M.remove()}})}})};function Tyt(e,t,r){var n={x:t.c2p(e.x),y:r.c2p(e.y)};return e.yh!==void 0&&(n.yh=r.c2p(e.yh),n.ys=r.c2p(e.ys),b_(n.ys)||(n.noYS=!0,n.ys=r.c2p(e.ys,!0))),e.xh!==void 0&&(n.xh=t.c2p(e.xh),n.xs=t.c2p(e.xs),b_(n.xs)||(n.noXS=!0,n.xs=t.c2p(e.xs,!0))),n}});var Tme=ye((klr,wme)=>{"use strict";var Ayt=Oa(),bme=ka();wme.exports=function(t){t.each(function(r){var n=r[0].trace,i=n.error_y||{},a=n.error_x||{},o=Ayt.select(this);o.selectAll("path.yerror").style("stroke-width",i.thickness+"px").call(bme.stroke,i.color),a.copy_ystyle&&(a=i),o.selectAll("path.xerror").style("stroke-width",a.thickness+"px").call(bme.stroke,a.color)})}});var Mme=ye((Clr,Sme)=>{"use strict";var h4=Dr(),Ame=mc().overrideAll,d4=hV(),Qb={error_x:h4.extendFlat({},d4),error_y:h4.extendFlat({},d4)};delete Qb.error_x.copy_zstyle;delete Qb.error_y.copy_zstyle;delete Qb.error_y.copy_ystyle;var v4={error_x:h4.extendFlat({},d4),error_y:h4.extendFlat({},d4),error_z:h4.extendFlat({},d4)};delete v4.error_x.copy_ystyle;delete v4.error_y.copy_ystyle;delete v4.error_z.copy_ystyle;delete v4.error_z.copy_zstyle;Sme.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Qb,bar:Qb,histogram:Qb,scatter3d:Ame(v4,"calc","nested"),scattergl:Ame(Qb,"calc","nested")}},supplyDefaults:hme(),calc:mme(),makeComputeError:dV(),plot:xme(),style:Tme(),hoverInfo:Syt};function Syt(e,t,r){(t.error_y||{}).visible&&(r.yerr=e.yh-e.y,t.error_y.symmetric||(r.yerrneg=e.y-e.ys)),(t.error_x||{}).visible&&(r.xerr=e.xh-e.x,t.error_x.symmetric||(r.xerrneg=e.x-e.xs))}});var kme=ye((Llr,Eme)=>{"use strict";Eme.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var Fme=ye((Plr,Dme)=>{"use strict";var w_=Oa(),gV=cd(),qI=Mc(),Cme=qa(),Dy=ho(),OI=yv(),B0=Dr(),Vg=B0.strTranslate,Rme=Ao().extendFlat,mV=Sg(),Ug=So(),yV=ka(),Myt=Eb(),Eyt=ru(),kyt=pv().flipScale,Cyt=i4(),Lyt=uI(),Pyt=Rd(),_V=$h(),Lme=_V.LINE_SPACING,Pme=_V.FROM_TL,Ime=_V.FROM_BR,gf=kme().cn;function Iyt(e){var t=e._fullLayout,r=t._infolayer.selectAll("g."+gf.colorbar).data(Ryt(e),function(n){return n._id});r.enter().append("g").attr("class",function(n){return n._id}).classed(gf.colorbar,!0),r.each(function(n){var i=w_.select(this);B0.ensureSingle(i,"rect",gf.cbbg),B0.ensureSingle(i,"g",gf.cbfills),B0.ensureSingle(i,"g",gf.cblines),B0.ensureSingle(i,"g",gf.cbaxis,function(o){o.classed(gf.crisp,!0)}),B0.ensureSingle(i,"g",gf.cbtitleunshift,function(o){o.append("g").classed(gf.cbtitle,!0)}),B0.ensureSingle(i,"rect",gf.cboutline);var a=Dyt(i,n,e);a&&a.then&&(e._promises||[]).push(a),e._context.edits.colorbarPosition&&Fyt(i,n,e)}),r.exit().each(function(n){qI.autoMargin(e,n._id)}).remove(),r.order()}function Ryt(e){var t=e._fullLayout,r=e.calcdata,n=[],i,a,o,s;function l(E){return Rme(E,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function u(){typeof s.calc=="function"?s.calc(e,o,i):(i._fillgradient=a.reversescale?kyt(a.colorscale):a.colorscale,i._zrange=[a[s.min],a[s.max]])}for(var c=0;c1){var Re=Math.pow(10,Math.floor(Math.log(ge)/Math.LN10));Fe*=Re*B0.roundUp(ge/Re,[2,5,10]),(Math.abs(z.start)/z.size+1e-6)%1<2e-6&&(Le.tick0=0)}Le.dtick=Fe}Le.domain=n?[ie+v/S.h,ie+H-v/S.h]:[ie+d/S.w,ie+H-d/S.w],Le.setScale(),e.attr("transform",Vg(Math.round(S.l),Math.round(S.t)));var ce=e.select("."+gf.cbtitleunshift).attr("transform",Vg(-Math.round(S.l),-Math.round(S.t))),Ze=Le.ticklabelposition,ut=Le.title.font.size,pt=e.select("."+gf.cbaxis),Zt,st=0,lt=0;function Gt(cr,$e){var St={propContainer:Le,propName:t._propPrefix+"title.text",traceIndex:t._traceIndex,_meta:t._meta,placeholder:E._dfltTitle.colorbar,containerGroup:e.select("."+gf.cbtitle)},Qt=cr.charAt(0)==="h"?cr.slice(1):"h"+cr;e.selectAll("."+Qt+",."+Qt+"-math-group").remove(),Myt.draw(r,cr,Rme(St,$e||{}))}function Nt(){if(n&&Ae||!n&&!Ae){var cr,$e;M==="top"&&(cr=d+S.l+te*_,$e=v+S.t+oe*(1-ie-H)+3+ut*.75),M==="bottom"&&(cr=d+S.l+te*_,$e=v+S.t+oe*(1-ie)-3-ut*.25),M==="right"&&($e=v+S.t+oe*b+3+ut*.75,cr=d+S.l+te*ie),Gt(Le._id+"title",{attributes:{x:cr,y:$e,"text-anchor":n?"start":"middle"}})}}function Jt(){if(n&&!Ae||!n&&Ae){var cr=Le.position||0,$e=Le._offset+Le._length/2,St,Qt;if(M==="right")Qt=$e,St=S.l+te*cr+10+ut*(Le.showticklabels?1:.5);else if(St=$e,M==="bottom"&&(Qt=S.t+oe*cr+10+(Ze.indexOf("inside")===-1?Le.tickfont.size:0)+(Le.ticks!=="inside"&&t.ticklen||0)),M==="top"){var Vt=C.text.split("
").length;Qt=S.t+oe*cr+10-Z-Lme*ut*Vt}Gt((n?"h":"v")+Le._id+"title",{avoid:{selection:w_.select(r).selectAll("g."+Le._id+"tick"),side:M,offsetTop:n?0:S.t,offsetLeft:n?S.l:0,maxShift:n?E.width:E.height},attributes:{x:St,y:Qt,"text-anchor":"middle"},transform:{rotate:n?-90:0,offset:0}})}}function sr(){if(!n&&!Ae||n&&Ae){var cr=e.select("."+gf.cbtitle),$e=cr.select("text"),St=[-l/2,l/2],Qt=cr.select(".h"+Le._id+"title-math-group").node(),Vt=15.6;$e.node()&&(Vt=parseInt($e.node().style.fontSize,10)*Lme);var _t;if(Qt?(_t=Ug.bBox(Qt),lt=_t.width,st=_t.height,st>Vt&&(St[1]-=(st-Vt)/2)):$e.node()&&!$e.classed(gf.jsPlaceholder)&&(_t=Ug.bBox($e.node()),lt=_t.width,st=_t.height),n){if(st){if(st+=5,M==="top")Le.domain[1]-=st/S.h,St[1]*=-1;else{Le.domain[0]+=st/S.h;var It=Eyt.lineCount($e);St[1]+=(1-It)*Vt}cr.attr("transform",Vg(St[0],St[1])),Le.setScale()}}else lt&&(M==="right"&&(Le.domain[0]+=(lt+ut/2)/S.w),cr.attr("transform",Vg(St[0],St[1])),Le.setScale())}e.selectAll("."+gf.cbfills+",."+gf.cblines).attr("transform",n?Vg(0,Math.round(S.h*(1-Le.domain[1]))):Vg(Math.round(S.w*Le.domain[0]),0)),pt.attr("transform",n?Vg(0,Math.round(-S.t)):Vg(Math.round(-S.l),0));var mt=e.select("."+gf.cbfills).selectAll("rect."+gf.cbfill).attr("style","").data(V);mt.enter().append("rect").classed(gf.cbfill,!0).attr("style",""),mt.exit().remove();var er=g.map(Le.c2p).map(Math.round).sort(function(Br,Vr){return Br-Vr});mt.each(function(Br,Vr){var dt=[Vr===0?g[0]:(V[Vr]+V[Vr-1])/2,Vr===V.length-1?g[1]:(V[Vr]+V[Vr+1])/2].map(Le.c2p).map(Math.round);n&&(dt[1]=B0.constrain(dt[1]+(dt[1]>dt[0])?1:-1,er[0],er[1]));var Ge=w_.select(this).attr(n?"x":"y",_e).attr(n?"y":"x",w_.min(dt)).attr(n?"width":"height",Math.max(Z,2)).attr(n?"height":"width",Math.max(w_.max(dt)-w_.min(dt),2));if(t._fillgradient)Ug.gradient(Ge,r,t._id,n?"vertical":"horizontalreversed",t._fillgradient,"fill");else{var Je=T(Br).replace("e-","");Ge.attr("fill",gV(Je).toHexString())}});var lr=e.select("."+gf.cblines).selectAll("path."+gf.cbline).data(x.color&&x.width?G:[]);lr.enter().append("path").classed(gf.cbline,!0),lr.exit().remove(),lr.each(function(Br){var Vr=_e,dt=Math.round(Le.c2p(Br))+x.width/2%1;w_.select(this).attr("d","M"+(n?Vr+","+dt:dt+","+Vr)+(n?"h":"v")+Z).call(Ug.lineGroupStyle,x.width,P(Br),x.dash)}),pt.selectAll("g."+Le._id+"tick,path").remove();var Tr=_e+Z+(l||0)/2-(t.ticks==="outside"?1:0),Lr=Dy.calcTicks(Le),ti=Dy.getTickSigns(Le)[2];return Dy.drawTicks(r,Le,{vals:Le.ticks==="inside"?Dy.clipEnds(Le,Lr):Lr,layer:pt,path:Dy.makeTickPath(Le,Tr,ti),transFn:Dy.makeTransTickFn(Le)}),Dy.drawLabels(r,Le,{vals:Lr,layer:pt,transFn:Dy.makeTransTickLabelFn(Le),labelFns:Dy.makeLabelFns(Le,Tr)})}function wr(){var cr,$e=Z+l/2;Ze.indexOf("inside")===-1&&(cr=Ug.bBox(pt.node()),$e+=n?cr.width:cr.height),Zt=ce.select("text");var St=0,Qt=n&&M==="top",Vt=!n&&M==="right",_t=0;if(Zt.node()&&!Zt.classed(gf.jsPlaceholder)){var It,mt=ce.select(".h"+Le._id+"title-math-group").node();mt&&(n&&Ae||!n&&!Ae)?(cr=Ug.bBox(mt),St=cr.width,It=cr.height):(cr=Ug.bBox(ce.node()),St=cr.right-S.l-(n?_e:Se),It=cr.bottom-S.t-(n?Se:_e),!n&&M==="top"&&($e+=cr.height,_t=cr.height)),Vt&&(Zt.attr("transform",Vg(St/2+ut/2,0)),St*=2),$e=Math.max($e,n?St:It)}var er=(n?d:v)*2+$e+u+l/2,lr=0;!n&&C.text&&h==="bottom"&&b<=0&&(lr=er/2,er+=lr,_t+=lr),E._hColorbarMoveTitle=lr,E._hColorbarMoveCBTitle=_t;var Tr=u+l,Lr=(n?_e:Se)-Tr/2-(n?d:0),ti=(n?Se:_e)-(n?N:v+_t-lr);e.select("."+gf.cbbg).attr("x",Lr).attr("y",ti).attr(n?"width":"height",Math.max(er-lr,2)).attr(n?"height":"width",Math.max(N+Tr,2)).call(yV.fill,c).call(yV.stroke,t.bordercolor).style("stroke-width",u);var Br=Vt?Math.max(St-10,0):0;e.selectAll("."+gf.cboutline).attr("x",(n?_e:Se+d)+Br).attr("y",(n?Se+v-N:_e)+(Qt?st:0)).attr(n?"width":"height",Math.max(Z,2)).attr(n?"height":"width",Math.max(N-(n?2*v+st:2*d+Br),2)).call(yV.stroke,t.outlinecolor).style({fill:"none","stroke-width":l});var Vr=n?Ee*er:0,dt=n?0:(1-Ce)*er-_t;if(Vr=k?S.l-Vr:-Vr,dt=p?S.t-dt:-dt,e.attr("transform",Vg(Vr,dt)),!n&&(u||gV(c).getAlpha()&&!gV.equals(E.paper_bgcolor,c))){var Ge=pt.selectAll("text"),Je=Ge[0].length,je=e.select("."+gf.cbbg).node(),tt=Ug.bBox(je),xt=Ug.getTranslate(e),Ie=2;Ge.each(function(di,ji){var In=0,wi=Je-1;if(ji===In||ji===wi){var On=Ug.bBox(this),qn=Ug.getTranslate(this),Fn;if(ji===wi){var ra=On.right+qn.x,la=tt.right+xt.x+Se-u-Ie+_;Fn=la-ra,Fn>0&&(Fn=0)}else if(ji===In){var Ut=On.left+qn.x,wt=tt.left+xt.x+Se+u+Ie;Fn=wt-Ut,Fn<0&&(Fn=0)}Fn&&(Je<3?this.setAttribute("transform","translate("+Fn+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var xe={},ke=Pme[f],vt=Ime[f],ir=Pme[h],ar=Ime[h],vr=er-Z;n?(a==="pixels"?(xe.y=b,xe.t=N*ir,xe.b=N*ar):(xe.t=xe.b=0,xe.yt=b+i*ir,xe.yb=b-i*ar),s==="pixels"?(xe.x=_,xe.l=er*ke,xe.r=er*vt):(xe.l=vr*ke,xe.r=vr*vt,xe.xl=_-o*ke,xe.xr=_+o*vt)):(a==="pixels"?(xe.x=_,xe.l=N*ke,xe.r=N*vt):(xe.l=xe.r=0,xe.xl=_+i*ke,xe.xr=_-i*vt),s==="pixels"?(xe.y=1-b,xe.t=er*ir,xe.b=er*ar):(xe.t=vr*ir,xe.b=vr*ar,xe.yt=b-o*ir,xe.yb=b+o*ar));var ii=t.y<.5?"b":"t",pi=t.x<.5?"l":"r";r._fullLayout._reservedMargin[t._id]={};var $r={r:E.width-Lr-Vr,l:Lr+xe.r,b:E.height-ti-dt,t:ti+xe.b};k&&p?qI.autoMargin(r,t._id,xe):k?r._fullLayout._reservedMargin[t._id][ii]=$r[ii]:p||n?r._fullLayout._reservedMargin[t._id][pi]=$r[pi]:r._fullLayout._reservedMargin[t._id][ii]=$r[ii]}return B0.syncOrAsync([qI.previousPromises,Nt,sr,Jt,qI.previousPromises,wr],r)}function Fyt(e,t,r){var n=t.orientation==="v",i=r._fullLayout,a=i._size,o,s,l;OI.init({element:e.node(),gd:r,prepFn:function(){o=e.attr("transform"),mV(e)},moveFn:function(u,c){e.attr("transform",o+Vg(u,c)),s=OI.align((n?t._uFrac:t._vFrac)+u/a.w,n?t._thickFrac:t._lenFrac,0,1,t.xanchor),l=OI.align((n?t._vFrac:1-t._uFrac)-c/a.h,n?t._lenFrac:t._thickFrac,0,1,t.yanchor);var f=OI.getCursor(s,l,t.xanchor,t.yanchor);mV(e,f)},doneFn:function(){if(mV(e),s!==void 0&&l!==void 0){var u={};u[t._propPrefix+"x"]=s,u[t._propPrefix+"y"]=l,t._traceIndex!==void 0?Cme.call("_guiRestyle",r,u,t._traceIndex):Cme.call("_guiRelayout",r,u)}}})}function zyt(e,t,r){var n=t._levels,i=[],a=[],o,s,l=n.end+n.size/100,u=n.size,c=1.001*r[0]-.001*r[1],f=1.001*r[1]-.001*r[0];for(s=0;s<1e5&&(o=n.start+s*u,!(u>0?o>=l:o<=l));s++)o>c&&o0?o>=l:o<=l));s++)o>r[0]&&o{"use strict";zme.exports={moduleType:"component",name:"colorbar",attributes:tL(),supplyDefaults:Pq(),draw:Fme().draw,hasColorbar:Aq()}});var Bme=ye((Rlr,qme)=>{"use strict";qme.exports={moduleType:"component",name:"legend",layoutAttributes:SB(),supplyLayoutDefaults:EB(),draw:BB(),style:FB()}});var Ume=ye((Dlr,Nme)=>{"use strict";Nme.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{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"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var Gme=ye((Flr,Vme)=>{"use strict";Vme.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var bV=ye((zlr,Xme)=>{"use strict";var qyt=qa(),Wme=Dr(),xV=Wme.extendFlat,Hme=Wme.extendDeep;function jme(e){var t;switch(e){case"themes__thumb":t={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":t={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:t={}}return t}function Byt(e){var t=["xaxis","yaxis","zaxis"];return t.indexOf(e.slice(0,5))>-1}Xme.exports=function(t,r){var n,i=t.data,a=t.layout,o=Hme([],i),s=Hme({},a,jme(r.tileClass)),l=t._context||{};if(r.width&&(s.width=r.width),r.height&&(s.height=r.height),r.tileClass==="thumbnail"||r.tileClass==="themes__thumb"){s.annotations=[];var u=Object.keys(s);for(n=0;n{"use strict";var Nyt=pb().EventEmitter,Uyt=qa(),Vyt=Dr(),Zme=Py(),Gyt=bV(),Hyt=jP(),jyt=WP();function Wyt(e,t){var r=new Nyt,n=Gyt(e,{format:"png"}),i=n.gd;i.style.position="absolute",i.style.left="-5000px",document.body.appendChild(i);function a(){var s=Zme.getDelay(i._fullLayout);setTimeout(function(){var l=Hyt(i),u=document.createElement("canvas");u.id=Vyt.randstr(),r=jyt({format:t.format,width:i._fullLayout.width,height:i._fullLayout.height,canvas:u,emitter:r,svg:l}),r.clean=function(){i&&document.body.removeChild(i)}},s)}var o=Zme.getRedrawFunc(i);return Uyt.call("_doPlot",i,n.data,n.layout,n.config).then(o).then(a).catch(function(s){r.emit("error",s)}),r}Yme.exports=Wyt});var Qme=ye((qlr,$me)=>{"use strict";var Jme=Py(),Xyt={getDelay:Jme.getDelay,getRedrawFunc:Jme.getRedrawFunc,clone:bV(),toSVG:jP(),svgToImg:WP(),toImage:Kme(),downloadImage:rU()};$me.exports=Xyt});var tye=ye(Fy=>{"use strict";Fy.version=l6().version;vee();rne();var Zyt=qa(),p4=Fy.register=Zyt.register,TV=Tde(),eye=Object.keys(TV);for(BI=0;BI{"use strict";rye.exports=tye()});var e2=ye((Ulr,nye)=>{"use strict";nye.exports={TEXTPAD:3,eventDataKeys:["value","label"]}});var Lm=ye((Vlr,uye)=>{"use strict";var qf=pf(),aye=df().axisHoverFormat,{hovertemplateAttrs:Yyt,texttemplateAttrs:Kyt,templatefallbackAttrs:oye}=Ll(),lye=Tu(),Jyt=ec(),sye=e2(),$yt=Pd().pattern,t2=Ao().extendFlat,AV=Jyt({editType:"calc",arrayOk:!0,colorEditType:"style"}),Qyt=qf.marker,e1t=Qyt.line,t1t=t2({},e1t.width,{dflt:0}),r1t=t2({width:t1t,editType:"calc"},lye("marker.line")),i1t=t2({line:r1t,editType:"calc"},lye("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:$yt,cornerradius:{valType:"any",editType:"calc"}});uye.exports={x:qf.x,x0:qf.x0,dx:qf.dx,y:qf.y,y0:qf.y0,dy:qf.dy,xperiod:qf.xperiod,yperiod:qf.yperiod,xperiod0:qf.xperiod0,yperiod0:qf.yperiod0,xperiodalignment:qf.xperiodalignment,yperiodalignment:qf.yperiodalignment,xhoverformat:aye("x"),yhoverformat:aye("y"),text:qf.text,texttemplate:Kyt({editType:"plot"},{keys:sye.eventDataKeys}),texttemplatefallback:oye({editType:"plot"}),hovertext:qf.hovertext,hovertemplate:Yyt({},{keys:sye.eventDataKeys}),hovertemplatefallback:oye(),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:t2({},AV,{}),insidetextfont:t2({},AV,{}),outsidetextfont:t2({},AV,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:t2({},qf.cliponaxis,{}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc"},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc"},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc"},marker:i1t,offsetgroup:qf.offsetgroup,alignmentgroup:qf.alignmentgroup,selected:{marker:{opacity:qf.selected.marker.opacity,color:qf.selected.marker.color,editType:"style"},textfont:qf.selected.textfont,editType:"style"},unselected:{marker:{opacity:qf.unselected.marker.opacity,color:qf.unselected.marker.color,editType:"style"},textfont:qf.unselected.textfont,editType:"style"},zorder:qf.zorder}});var UI=ye((Glr,cye)=>{"use strict";cye.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}});var VI=ye((Hlr,dye)=>{"use strict";var n1t=ka(),fye=pv().hasColorscale,hye=Qh(),a1t=Dr().coercePattern;dye.exports=function(t,r,n,i,a){var o=n("marker.color",i),s=fye(t,"marker");s&&hye(t,r,a,n,{prefix:"marker.",cLetter:"c"}),n("marker.line.color",n1t.defaultLine),fye(t,"marker.line")&&hye(t,r,a,n,{prefix:"marker.line.",cLetter:"c"}),n("marker.line.width"),n("marker.opacity"),a1t(n,"marker.pattern",o,s),n("selected.marker.color"),n("unselected.marker.color")}});var r0=ye((jlr,_ye)=>{"use strict";var vye=Eo(),AT=Dr(),pye=ka(),o1t=qa(),s1t=eT(),l1t=Ig(),u1t=VI(),c1t=Hb(),gye=Lm(),GI=AT.coerceFont;function f1t(e,t,r,n){function i(u,c){return AT.coerce(e,t,gye,u,c)}var a=s1t(e,t,n,i);if(!a){t.visible=!1;return}l1t(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder"),i("orientation",t.x&&!t.y?"h":"v"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var o=i("textposition");yye(e,t,n,i,o,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),u1t(e,t,i,r,n);var s=(t.marker.line||{}).color,l=o1t.getComponentMethod("errorbars","supplyDefaults");l(e,t,s||pye.defaultLine,{axis:"y"}),l(e,t,s||pye.defaultLine,{axis:"x",inherit:"y"}),AT.coerceSelectionMarkerOpacity(t,i)}function h1t(e,t){var r,n;function i(s,l){return AT.coerce(n._input,n,gye,s,l)}for(var a=0;a=0)return e}else if(typeof e=="string"&&(e=e.trim(),e.slice(-1)==="%"&&vye(e.slice(0,-1))&&(e=+e.slice(0,-1),e>=0)))return e+"%"}function yye(e,t,r,n,i,a){a=a||{};var o=a.moduleHasSelected!==!1,s=a.moduleHasUnselected!==!1,l=a.moduleHasConstrain!==!1,u=a.moduleHasCliponaxis!==!1,c=a.moduleHasTextangle!==!1,f=a.moduleHasInsideanchor!==!1,h=!!a.hasPathbar,d=Array.isArray(i)||i==="auto",v=d||i==="inside",_=d||i==="outside";if(v||_){var b=GI(n,"textfont",r.font),p=AT.extendFlat({},b),k=e.textfont&&e.textfont.color,E=!k;if(E&&delete p.color,GI(n,"insidetextfont",p),h){var S=AT.extendFlat({},b);E&&delete S.color,GI(n,"pathbar.textfont",S)}_&&GI(n,"outsidetextfont",b),o&&n("selected.textfont.color"),s&&n("unselected.textfont.color"),l&&n("constraintext"),u&&n("cliponaxis"),c&&n("textangle"),n("texttemplate"),n("texttemplatefallback")}v&&f&&n("insidetextanchor")}_ye.exports={supplyDefaults:f1t,crossTraceDefaults:h1t,handleText:yye,validateCornerradius:mye}});var SV=ye((Wlr,xye)=>{"use strict";var d1t=qa(),v1t=ho(),p1t=Dr(),g1t=UI(),m1t=r0().validateCornerradius;xye.exports=function(e,t,r){function n(_,b){return p1t.coerce(e,t,g1t,_,b)}for(var i=!1,a=!1,o=!1,s={},l=n("barmode"),u=l==="group",c=0;c0&&!s[h]&&(o=!0),s[h]=!0),f.visible&&f.type==="histogram"){var d=v1t.getFromId({_fullLayout:t},f[f.orientation==="v"?"xaxis":"yaxis"]);d.type!=="category"&&(a=!0)}}if(!i){delete t.barmode;return}l!=="overlay"&&n("barnorm"),n("bargap",a&&!o?0:.2),n("bargroupgap");var v=n("barcornerradius");t.barcornerradius=m1t(v)}});var g4=ye((Xlr,bye)=>{"use strict";var ST=Dr();bye.exports=function(t,r){for(var n=0;n{"use strict";var wye=ho(),Tye=Dg(),Aye=pv().hasColorscale,Sye=gv(),y1t=g4(),_1t=z0();Mye.exports=function(t,r){var n=wye.getFromId(t,r.xaxis||"x"),i=wye.getFromId(t,r.yaxis||"y"),a,o,s,l,u,c,f={msUTC:!!(r.base||r.base===0)};r.orientation==="h"?(a=n.makeCalcdata(r,"x",f),s=i.makeCalcdata(r,"y"),l=Tye(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y",f),s=n.makeCalcdata(r,"x"),l=Tye(r,n,"x",s),u=!!r.xperiodalignment,c="x"),o=l.vals;for(var h=Math.min(o.length,a.length),d=new Array(h),v=0;v{"use strict";var x1t=Oa(),b1t=Dr();function w1t(e,t,r){var n=e._fullLayout,i=n["_"+r+"Text_minsize"];if(i){var a=n.uniformtext.mode==="hide",o;switch(r){case"funnelarea":case"pie":case"sunburst":o="g.slice";break;case"treemap":case"icicle":o="g.slice, g.pathbar";break;default:o="g.points > g.point"}t.selectAll(o).each(function(s){var l=s.transform;if(l){l.scale=a&&l.hide?0:i/l.fontSize;var u=x1t.select(this).select("text");b1t.setTransormAndDisplay(u,l)}})}}function T1t(e,t,r){if(r.uniformtext.mode){var n=kye(e),i=r.uniformtext.minsize,a=t.scale*t.fontSize;t.hide=a{"use strict";var S1t=Eo(),M1t=cd(),Lye=Dr().isArrayOrTypedArray;r2.coerceString=function(e,t,r){if(typeof t=="string"){if(t||!e.noBlank)return t}else if((typeof t=="number"||t===!0)&&!e.strict)return String(t);return r!==void 0?r:e.dflt};r2.coerceNumber=function(e,t,r){if(S1t(t)){t=+t;var n=e.min,i=e.max,a=n!==void 0&&ti;if(!a)return t}return r!==void 0?r:e.dflt};r2.coerceColor=function(e,t,r){return M1t(t).isValid()?t:r!==void 0?r:e.dflt};r2.coerceEnumerated=function(e,t,r){return e.coerceNumber&&(t=+t),e.values.indexOf(t)!==-1?t:r!==void 0?r:e.dflt};r2.getValue=function(e,t){var r;return Lye(e)?t{"use strict";var m4=Oa(),E1t=ka(),y4=So(),Pye=Dr(),Iye=qa(),Rye=bv().resizeText,MV=Lm(),k1t=MV.textfont,C1t=MV.insidetextfont,L1t=MV.outsidetextfont,Qd=HI();function P1t(e){var t=m4.select(e).selectAll('g[class^="barlayer"]').selectAll("g.trace");Rye(e,t,"bar");var r=t.size(),n=e._fullLayout;t.style("opacity",function(i){return i[0].trace.opacity}).each(function(i){(n.barmode==="stack"&&r>1||n.bargap===0&&n.bargroupgap===0&&!i[0].trace.marker.line.width)&&m4.select(this).attr("shape-rendering","crispEdges")}),t.selectAll("g.points").each(function(i){var a=m4.select(this),o=i[0].trace;Dye(a,o,e)}),Iye.getComponentMethod("errorbars","style")(t)}function Dye(e,t,r){y4.pointStyle(e.selectAll("path"),t,r),Fye(e,t,r)}function Fye(e,t,r){e.selectAll("text").each(function(n){var i=m4.select(this),a=Pye.ensureUniformFontSize(r,zye(i,n,t,r));y4.font(i,a)})}function I1t(e,t,r){var n=t[0].trace;n.selectedpoints?R1t(r,n,e):(Dye(r,n,e),Iye.getComponentMethod("errorbars","style")(r))}function R1t(e,t,r){y4.selectedPointStyle(e.selectAll("path"),t),D1t(e.selectAll("text"),t,r)}function D1t(e,t,r){e.each(function(n){var i=m4.select(this),a;if(n.selected){a=Pye.ensureUniformFontSize(r,zye(i,n,t,r));var o=t.selected.textfont&&t.selected.textfont.color;o&&(a.color=o),y4.font(i,a)}else y4.selectedTextStyle(i,t)})}function zye(e,t,r,n){var i=n._fullLayout.font,a=r.textfont;if(e.classed("bartext-inside")){var o=Nye(t,r);a=qye(r,t.i,i,o)}else e.classed("bartext-outside")&&(a=Bye(r,t.i,i));return a}function Oye(e,t,r){return EV(k1t,e.textfont,t,r)}function qye(e,t,r,n){var i=Oye(e,t,r),a=e._input.textfont===void 0||e._input.textfont.color===void 0||Array.isArray(e.textfont.color)&&e.textfont.color[t]===void 0;return a&&(i={color:E1t.contrast(n),family:i.family,size:i.size,weight:i.weight,style:i.style,variant:i.variant,textcase:i.textcase,lineposition:i.lineposition,shadow:i.shadow}),EV(C1t,e.insidetextfont,t,i)}function Bye(e,t,r){var n=Oye(e,t,r);return EV(L1t,e.outsidetextfont,t,n)}function EV(e,t,r,n){t=t||{};var i=Qd.getValue(t.family,r),a=Qd.getValue(t.size,r),o=Qd.getValue(t.color,r),s=Qd.getValue(t.weight,r),l=Qd.getValue(t.style,r),u=Qd.getValue(t.variant,r),c=Qd.getValue(t.textcase,r),f=Qd.getValue(t.lineposition,r),h=Qd.getValue(t.shadow,r);return{family:Qd.coerceString(e.family,i,n.family),size:Qd.coerceNumber(e.size,a,n.size),color:Qd.coerceColor(e.color,o,n.color),weight:Qd.coerceString(e.weight,s,n.weight),style:Qd.coerceString(e.style,l,n.style),variant:Qd.coerceString(e.variant,u,n.variant),textcase:Qd.coerceString(e.variant,c,n.textcase),lineposition:Qd.coerceString(e.variant,f,n.lineposition),shadow:Qd.coerceString(e.variant,h,n.shadow)}}function Nye(e,t){return t.type==="waterfall"?t[e.dir].marker.color:e.mcc||e.mc||t.marker.color}Uye.exports={style:P1t,styleTextPoints:Fye,styleOnSelect:I1t,getInsideTextFont:qye,getOutsideTextFont:Bye,getBarColor:Nye,resizeText:Rye}});var n2=ye(($lr,Yye)=>{"use strict";var jI=Oa(),WI=Eo(),Fd=Dr(),F1t=ru(),z1t=ka(),T_=So(),O1t=qa(),XI=ho().tickText,Vye=bv(),q1t=Vye.recordMinTextSize,B1t=Vye.clearMinTextSize,kV=N0(),MT=HI(),N1t=e2(),Gye=Lm(),U1t=Gye.text,V1t=Gye.textposition,G1t=ip().appendArrayPointValue,Gv=N1t.TEXTPAD;function H1t(e){return e.id}function j1t(e){if(e.ids)return H1t}function CV(e){return(e>0)-(e<0)}function Pm(e,t){return e0}function X1t(e,t,r,n,i,a){var o=t.xaxis,s=t.yaxis,l=e._fullLayout,u=e._context.staticPlot;i||(i={mode:l.barmode,norm:l.barmode,gap:l.bargap,groupgap:l.bargroupgap},B1t("bar",l));var c=Fd.makeTraceGroups(n,r,"trace bars").each(function(f){var h=jI.select(this),d=f[0].trace,v=f[0].t,_=d.type==="waterfall",b=d.type==="funnel",p=d.type==="histogram",k=d.type==="bar",E=k||b,S=0;_&&d.connector.visible&&d.connector.mode==="between"&&(S=d.connector.line.width/2);var L=d.orientation==="h",x=jye(i),C=Fd.ensureSingle(h,"g","points"),M=j1t(d),g=C.selectAll("g.point").data(Fd.identity,M);g.enter().append("g").classed("point",!0),g.exit().remove(),g.each(function(T,z){var O=jI.select(this),V=W1t(T,o,s,L),G=V[0][0],Z=V[0][1],j=V[1][0],N=V[1][1],H=(L?Z-G:N-j)===0;H&&E&&MT.getLineWidth(d,T)&&(H=!1),H||(H=!WI(G)||!WI(Z)||!WI(j)||!WI(N)),T.isBlank=H,H&&(L?Z=G:N=j),S&&!H&&(L?(G-=Pm(G,Z)*S,Z+=Pm(G,Z)*S):(j-=Pm(j,N)*S,N+=Pm(j,N)*S));var te,oe;if(d.type==="waterfall"){if(!H){var _e=d[T.dir].marker;te=_e.line.width,oe=_e.color}}else te=MT.getLineWidth(d,T),oe=T.mc||d.marker.color;function Ee($e){var St=jI.round(te/2%1,2);return i.gap===0&&i.groupgap===0?jI.round(Math.round($e)-St,2):$e}function Ce($e,St,Qt){return Qt&&$e===St?$e:Math.abs($e-St)>=2?Ee($e):$e>St?Math.ceil($e):Math.floor($e)}var me=z1t.opacity(oe),ie=me<1||te>.01?Ee:Ce;e._context.staticPlot||(G=ie(G,Z,L),Z=ie(Z,G,L),j=ie(j,N,!L),N=ie(N,j,!L));var Se=L?o.c2p:s.c2p,Le;T.s0>0?Le=T._sMax:T.s0<0?Le=T._sMin:Le=T.s1>0?T._sMax:T._sMin;function Ae($e,St){if(!$e)return 0;var Qt=Math.abs(L?N-j:Z-G),Vt=Math.abs(L?Z-G:N-j),_t=ie(Math.abs(Se(Le,!0)-Se(0,!0))),It=T.hasB?Math.min(Qt/2,Vt/2):Math.min(Qt/2,_t),mt;if(St==="%"){var er=Math.min(50,$e);mt=Qt*(er/100)}else mt=$e;return ie(Math.max(Math.min(mt,It),0))}var Fe=k||p?Ae(v.cornerradiusvalue,v.cornerradiusform):0,Pe,ge,Re="M"+G+","+j+"V"+N+"H"+Z+"V"+j+"Z",ce=0;if(Fe&&T.s){var Ze=CV(T.s0)===0||CV(T.s)===CV(T.s0)?T.s1:T.s0;if(ce=ie(T.hasB?0:Math.abs(Se(Le,!0)-Se(Ze,!0))),ce0?Math.sqrt(ce*(2*Fe-ce)):0,Gt=ut>0?Math.max:Math.min;Pe="M"+G+","+j+"V"+(N-st*pt)+"H"+Gt(Z-(Fe-ce)*ut,G)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+Z+","+(N-Fe*pt-lt)+"V"+(j+Fe*pt+lt)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+Gt(Z-(Fe-ce)*ut,G)+","+(j+st*pt)+"Z"}else if(T.hasB)Pe="M"+(G+Fe*ut)+","+j+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+G+","+(j+Fe*pt)+"V"+(N-Fe*pt)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+(G+Fe*ut)+","+N+"H"+(Z-Fe*ut)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+Z+","+(N-Fe*pt)+"V"+(j+Fe*pt)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+(Z-Fe*ut)+","+j+"Z";else{ge=Math.abs(N-j)+ce;var Nt=ge0?Math.sqrt(ce*(2*Fe-ce)):0,sr=pt>0?Math.max:Math.min;Pe="M"+(G+Nt*ut)+","+j+"V"+sr(N-(Fe-ce)*pt,j)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+(G+Fe*ut-Jt)+","+N+"H"+(Z-Fe*ut+Jt)+"A "+Fe+","+Fe+" 0 0 "+Zt+" "+(Z-Nt*ut)+","+sr(N-(Fe-ce)*pt,j)+"V"+j+"Z"}}else Pe=Re}else Pe=Re;var wr=Hye(Fd.ensureSingle(O,"path"),l,i,a);if(wr.style("vector-effect",u?"none":"non-scaling-stroke").attr("d",isNaN((Z-G)*(N-j))||H&&e._context.staticPlot?"M0,0Z":Pe).call(T_.setClipUrl,t.layerClipId,e),!l.uniformtext.mode&&x){var cr=T_.makePointStyleFns(d);T_.singlePointStyle(T,wr,d,cr,e)}Z1t(e,t,O,f,z,G,Z,j,N,Fe,ce,i,a),t.layerClipId&&T_.hideOutsideRangePoint(T,O.select("text"),o,s,d.xcalendar,d.ycalendar)});var P=d.cliponaxis===!1;T_.setClipUrl(h,P?null:t.layerClipId,e)});O1t.getComponentMethod("errorbars","plot")(e,c,t,i)}function Z1t(e,t,r,n,i,a,o,s,l,u,c,f,h){var d=t.xaxis,v=t.yaxis,_=e._fullLayout,b;function p(ge,Re,ce){var Ze=Fd.ensureSingle(ge,"text").text(Re).attr({class:"bartext bartext-"+b,"text-anchor":"middle","data-notex":1}).call(T_.font,ce).call(F1t.convertToTspans,e);return Ze}var k=n[0].trace,E=k.orientation==="h",S=J1t(_,n,i,d,v);b=$1t(k,i);var L=f.mode==="stack"||f.mode==="relative",x=n[i],C=!L||x._outmost,M=x.hasB,g=u&&u-c>Gv;if(!S||b==="none"||(x.isBlank||a===o||s===l)&&(b==="auto"||b==="inside")){r.select("text").remove();return}var P=_.font,T=kV.getBarColor(n[i],k),z=kV.getInsideTextFont(k,i,P,T),O=kV.getOutsideTextFont(k,i,P),V=k.insidetextanchor||"end",G=r.datum();E?d.type==="log"&&G.s0<=0&&(d.range[0]0&&Ee>0,ie;g?M?ie=i2(N-2*u,H,_e,Ee,E)||i2(N,H-2*u,_e,Ee,E):E?ie=i2(N-(u-c),H,_e,Ee,E)||i2(N,H-2*(u-c),_e,Ee,E):ie=i2(N,H-(u-c),_e,Ee,E)||i2(N-2*(u-c),H,_e,Ee,E):ie=i2(N,H,_e,Ee,E),me&&ie?b="inside":(b="outside",te.remove(),te=null)}else b="inside";if(!te){Ce=Fd.ensureUniformFontSize(e,b==="outside"?O:z),te=p(r,S,Ce);var Se=te.attr("transform");if(te.attr("transform",""),oe=T_.bBox(te.node()),_e=oe.width,Ee=oe.height,te.attr("transform",Se),_e<=0||Ee<=0){te.remove();return}}var Le=k.textangle,Ae,Fe;b==="outside"?(Fe=k.constraintext==="both"||k.constraintext==="outside",Ae=K1t(a,o,s,l,oe,{isHorizontal:E,constrained:Fe,angle:Le})):(Fe=k.constraintext==="both"||k.constraintext==="inside",Ae=Zye(a,o,s,l,oe,{isHorizontal:E,constrained:Fe,angle:Le,anchor:V,hasB:M,r:u,overhead:c})),Ae.fontSize=Ce.size,q1t(k.type==="histogram"?"bar":k.type,Ae,_),x.transform=Ae;var Pe=Hye(te,_,f,h);Fd.setTransormAndDisplay(Pe,Ae)}function i2(e,t,r,n,i){if(e<0||t<0)return!1;var a=r<=e&&n<=t,o=r<=t&&n<=e,s=i?e>=r*(t/n):t>=n*(e/r);return a||o||s}function Wye(e){return e==="auto"?0:e}function Xye(e,t){var r=Math.PI/180*t,n=Math.abs(Math.sin(r)),i=Math.abs(Math.cos(r));return{x:e.width*i+e.height*n,y:e.width*n+e.height*i}}function Zye(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,u=a.anchor,c=u==="end",f=u==="start",h=a.leftToRight||0,d=(h+1)/2,v=1-d,_=a.hasB,b=a.r,p=a.overhead,k=i.width,E=i.height,S=Math.abs(t-e),L=Math.abs(n-r),x=S>2*Gv&&L>2*Gv?Gv:0;S-=2*x,L-=2*x;var C=Wye(l);l==="auto"&&!(k<=S&&E<=L)&&(k>S||E>L)&&(!(k>L||E>S)||kGv){var T=Y1t(e,t,r,n,M,b,p,o,_);g=T.scale,P=T.pad}else g=1,s&&(g=Math.min(1,S/M.x,L/M.y)),P=0;var z=i.left*v+i.right*d,O=(i.top+i.bottom)/2,V=(e+Gv)*v+(t-Gv)*d,G=(r+n)/2,Z=0,j=0;if(f||c){var N=(o?M.x:M.y)/2;b&&(c||_)&&(x+=P);var H=o?Pm(e,t):Pm(r,n);o?f?(V=e+H*x,Z=-H*N):(V=t-H*x,Z=H*N):f?(G=r+H*x,j=-H*N):(G=n-H*x,j=H*N)}return{textX:z,textY:O,targetX:V,targetY:G,anchorX:Z,anchorY:j,scale:g,rotate:C}}function Y1t(e,t,r,n,i,a,o,s,l){var u=Math.max(0,Math.abs(t-e)-2*Gv),c=Math.max(0,Math.abs(n-r)-2*Gv),f=a-Gv,h=o?f-Math.sqrt(f*f-(f-o)*(f-o)):f,d=l?f*2:s?f-o:2*h,v=l?f*2:s?2*h:f-o,_,b,p,k,E;return i.y/i.x>=c/(u-d)?k=c/i.y:i.y/i.x<=(c-v)/u?k=u/i.x:!l&&s?(_=i.x*i.x+i.y*i.y/4,b=-2*i.x*(u-f)-i.y*(c/2-f),p=(u-f)*(u-f)+(c/2-f)*(c/2-f)-f*f,k=(-b+Math.sqrt(b*b-4*_*p))/(2*_)):l?(_=(i.x*i.x+i.y*i.y)/4,b=-i.x*(u/2-f)-i.y*(c/2-f),p=(u/2-f)*(u/2-f)+(c/2-f)*(c/2-f)-f*f,k=(-b+Math.sqrt(b*b-4*_*p))/(2*_)):(_=i.x*i.x/4+i.y*i.y,b=-i.x*(u/2-f)-2*i.y*(c-f),p=(u/2-f)*(u/2-f)+(c-f)*(c-f)-f*f,k=(-b+Math.sqrt(b*b-4*_*p))/(2*_)),k=Math.min(1,k),s?E=Math.max(0,f-Math.sqrt(Math.max(0,f*f-(f-(c-i.y*k)/2)*(f-(c-i.y*k)/2)))-o):E=Math.max(0,f-Math.sqrt(Math.max(0,f*f-(f-(u-i.x*k)/2)*(f-(u-i.x*k)/2)))-o),{scale:k,pad:E}}function K1t(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,u=i.width,c=i.height,f=Math.abs(t-e),h=Math.abs(n-r),d;o?d=h>2*Gv?Gv:0:d=f>2*Gv?Gv:0;var v=1;s&&(v=o?Math.min(1,h/c):Math.min(1,f/u));var _=Wye(l),b=Xye(i,_),p=(o?b.x:b.y)/2,k=(i.left+i.right)/2,E=(i.top+i.bottom)/2,S=(e+t)/2,L=(r+n)/2,x=0,C=0,M=o?Pm(t,e):Pm(r,n);return o?(S=t-M*d,x=M*p):(L=n+M*d,C=-M*p),{textX:k,textY:E,targetX:S,targetY:L,anchorX:x,anchorY:C,scale:v,rotate:_}}function J1t(e,t,r,n,i){var a=t[0].trace,o=a.texttemplate,s;return o?s=Q1t(e,t,r,n,i):a.textinfo?s=e_t(t,r,n,i):s=MT.getValue(a.text,r),MT.coerceString(U1t,s)}function $1t(e,t){var r=MT.getValue(e.textposition,t);return MT.coerceEnumerated(V1t,r)}function Q1t(e,t,r,n,i){var a=t[0].trace,o=Fd.castOption(a,r,"texttemplate");if(!o)return"";var s=a.type==="histogram",l=a.type==="waterfall",u=a.type==="funnel",c=a.orientation==="h",f,h,d,v;c?(f="y",h=i,d="x",v=n):(f="x",h=n,d="y",v=i);function _(x){return XI(h,h.c2l(x),!0).text}function b(x){return XI(v,v.c2l(x),!0).text}var p=t[r],k={};k.label=p.p,k.labelLabel=k[f+"Label"]=_(p.p);var E=Fd.castOption(a,p.i,"text");(E===0||E)&&(k.text=E),k.value=p.s,k.valueLabel=k[d+"Label"]=b(p.s);var S={};G1t(S,a,p.i),(s||S.x===void 0)&&(S.x=c?k.value:k.label),(s||S.y===void 0)&&(S.y=c?k.label:k.value),(s||S.xLabel===void 0)&&(S.xLabel=c?k.valueLabel:k.labelLabel),(s||S.yLabel===void 0)&&(S.yLabel=c?k.labelLabel:k.valueLabel),l&&(k.delta=+p.rawS||p.s,k.deltaLabel=b(k.delta),k.final=p.v,k.finalLabel=b(k.final),k.initial=k.final-k.delta,k.initialLabel=b(k.initial)),u&&(k.value=p.s,k.valueLabel=b(k.value),k.percentInitial=p.begR,k.percentInitialLabel=Fd.formatPercent(p.begR),k.percentPrevious=p.difR,k.percentPreviousLabel=Fd.formatPercent(p.difR),k.percentTotal=p.sumR,k.percenTotalLabel=Fd.formatPercent(p.sumR));var L=Fd.castOption(a,p.i,"customdata");return L&&(k.customdata=L),Fd.texttemplateString({data:[S,k,a._meta],fallback:a.texttemplatefallback,labels:k,locale:e._d3locale,template:o})}function e_t(e,t,r,n){var i=e[0].trace,a=i.orientation==="h",o=i.type==="waterfall",s=i.type==="funnel";function l(L){var x=a?n:r;return XI(x,L,!0).text}function u(L){var x=a?r:n;return XI(x,+L,!0).text}var c=i.textinfo,f=e[t],h=c.split("+"),d=[],v,_=function(L){return h.indexOf(L)!==-1};if(_("label")&&d.push(l(e[t].p)),_("text")&&(v=Fd.castOption(i,f.i,"text"),(v===0||v)&&d.push(v)),o){var b=+f.rawS||f.s,p=f.v,k=p-b;_("initial")&&d.push(u(k)),_("delta")&&d.push(u(b)),_("final")&&d.push(u(p))}if(s){_("value")&&d.push(u(f.s));var E=0;_("percent initial")&&E++,_("percent previous")&&E++,_("percent total")&&E++;var S=E>1;_("percent initial")&&(v=Fd.formatPercent(f.begR),S&&(v+=" of initial"),d.push(v)),_("percent previous")&&(v=Fd.formatPercent(f.difR),S&&(v+=" of previous"),d.push(v)),_("percent total")&&(v=Fd.formatPercent(f.sumR),S&&(v+=" of total"),d.push(v))}return d.join("
")}Yye.exports={plot:X1t,toMoveInsideBar:Zye}});var ET=ye((Qlr,Qye)=>{"use strict";var _4=vf(),t_t=qa(),Kye=ka(),r_t=Dr().fillText,i_t=HI().getLineWidth,LV=ho().hoverLabelText,n_t=fs().BADNUM;function a_t(e,t,r,n,i){var a=Jye(e,t,r,n,i);if(a){var o=a.cd,s=o[0].trace,l=o[a.index];return a.color=$ye(s,l),t_t.getComponentMethod("errorbars","hoverInfo")(l,s,a),[a]}}function Jye(e,t,r,n,i){var a=e.cd,o=a[0].trace,s=a[0].t,l=n==="closest",u=o.type==="waterfall",c=e.maxHoverDistance,f=e.maxSpikeDistance,h,d,v,_,b,p,k;o.orientation==="h"?(h=r,d=t,v="y",_="x",b=G,p=z):(h=t,d=r,v="x",_="y",p=G,b=z);var E=o[v+"period"],S=l||E;function L(ie){return C(ie,-1)}function x(ie){return C(ie,1)}function C(ie,Se){var Le=ie.w;return ie[v]+Se*Le/2}function M(ie){return ie[v+"End"]-ie[v+"Start"]}var g=l?L:E?function(ie){return ie.p-M(ie)/2}:function(ie){return Math.min(L(ie),ie.p-s.bardelta/2)},P=l?x:E?function(ie){return ie.p+M(ie)/2}:function(ie){return Math.max(x(ie),ie.p+s.bardelta/2)};function T(ie,Se,Le){return i.finiteRange&&(Le=0),_4.inbox(ie-h,Se-h,Le+Math.min(1,Math.abs(Se-ie)/k)-1)}function z(ie){return T(g(ie),P(ie),c)}function O(ie){return T(L(ie),x(ie),f)}function V(ie){var Se=ie[_];if(u){var Le=Math.abs(ie.rawS)||0;d>0?Se+=Le:d<0&&(Se-=Le)}return Se}function G(ie){var Se=d,Le=ie.b,Ae=V(ie);return _4.inbox(Le-Se,Ae-Se,c+(Ae-Se)/(Ae-Le)-1)}function Z(ie){var Se=d,Le=ie.b,Ae=V(ie);return _4.inbox(Le-Se,Ae-Se,f+(Ae-Se)/(Ae-Le)-1)}var j=e[v+"a"],N=e[_+"a"];k=Math.abs(j.r2c(j.range[1])-j.r2c(j.range[0]));function H(ie){return(b(ie)+p(ie))/2}var te=_4.getDistanceFunction(n,b,p,H);if(_4.getClosest(a,te,e),e.index!==!1&&a[e.index].p!==n_t){S||(g=function(ie){return Math.min(L(ie),ie.p-s.bargroupwidth/2)},P=function(ie){return Math.max(x(ie),ie.p+s.bargroupwidth/2)});var oe=e.index,_e=a[oe],Ee=o.base?_e.b+_e.s:_e.s;e[_+"0"]=e[_+"1"]=N.c2p(_e[_],!0),e[_+"LabelVal"]=Ee;var Ce=s.extents[s.extents.round(_e.p)];e[v+"0"]=j.c2p(l?g(_e):Ce[0],!0),e[v+"1"]=j.c2p(l?P(_e):Ce[1],!0);var me=_e.orig_p!==void 0;return e[v+"LabelVal"]=me?_e.orig_p:_e.p,e.labelLabel=LV(j,e[v+"LabelVal"],o[v+"hoverformat"]),e.valueLabel=LV(N,e[_+"LabelVal"],o[_+"hoverformat"]),e.baseLabel=LV(N,_e.b,o[_+"hoverformat"]),e.spikeDistance=(Z(_e)+O(_e))/2,e[v+"Spike"]=j.c2p(_e.p,!0),r_t(_e,o,e),e.hovertemplate=o.hovertemplate,e}}function $ye(e,t){var r=t.mcc||e.marker.color,n=t.mlcc||e.marker.line.color,i=i_t(e,t);if(Kye.opacity(r))return r;if(Kye.opacity(n)&&i)return n}Qye.exports={hoverPoints:a_t,hoverOnBars:Jye,getTraceColor:$ye}});var t1e=ye((eur,e1e)=>{"use strict";e1e.exports=function(t,r,n){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),n.orientation==="h"?(t.label=t.y,t.value=t.x):(t.label=t.x,t.value=t.y),t}});var kT=ye((tur,r1e)=>{"use strict";r1e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=n[0].trace,s=o.type==="funnel",l=o.orientation==="h",u=[],c;if(r===!1)for(c=0;c{"use strict";i1e.exports={attributes:Lm(),layoutAttributes:UI(),supplyDefaults:r0().supplyDefaults,crossTraceDefaults:r0().crossTraceDefaults,supplyLayoutDefaults:SV(),calc:Eye(),crossTraceCalc:jb().crossTraceCalc,colorbar:$d(),arraysToCalcdata:g4(),plot:n2().plot,style:N0().style,styleOnSelect:N0().styleOnSelect,hoverPoints:ET().hoverPoints,eventData:t1e(),selectPoints:kT(),moduleType:"trace",name:"bar",basePlotModule:ph(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}});var o1e=ye((iur,a1e)=>{"use strict";a1e.exports=n1e()});var x4=ye((nur,c1e)=>{"use strict";var s_t=Cg(),U0=pf(),s1e=Lm(),l_t=Lh(),l1e=df().axisHoverFormat,{hovertemplateAttrs:u_t,templatefallbackAttrs:c_t}=Ll(),zy=Ao().extendFlat,CT=U0.marker,u1e=CT.line;c1e.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:U0.xperiod,yperiod:U0.yperiod,xperiod0:U0.xperiod0,yperiod0:U0.yperiod0,xperiodalignment:U0.xperiodalignment,yperiodalignment:U0.yperiodalignment,xhoverformat:l1e("x"),yhoverformat:l1e("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:zy({},CT.symbol,{arrayOk:!1,editType:"plot"}),opacity:zy({},CT.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:zy({},CT.angle,{arrayOk:!1,editType:"calc"}),size:zy({},CT.size,{arrayOk:!1,editType:"calc"}),color:zy({},CT.color,{arrayOk:!1,editType:"style"}),line:{color:zy({},u1e.color,{arrayOk:!1,dflt:l_t.defaultLine,editType:"style"}),width:zy({},u1e.width,{arrayOk:!1,dflt:0,editType:"style"}),outliercolor:{valType:"color",editType:"style"},outlierwidth:{valType:"number",min:0,dflt:1,editType:"style"},editType:"style"},editType:"plot"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:s_t(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},showwhiskers:{valType:"boolean",editType:"calc"},offsetgroup:s1e.offsetgroup,alignmentgroup:s1e.alignmentgroup,selected:{marker:U0.selected.marker,editType:"style"},unselected:{marker:U0.unselected.marker,editType:"style"},text:zy({},U0.text,{}),hovertext:zy({},U0.hovertext,{}),hovertemplate:u_t({}),hovertemplatefallback:c_t(),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"},zorder:U0.zorder}});var b4=ye((aur,f1e)=>{"use strict";f1e.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"}}});var T4=ye((our,p1e)=>{"use strict";var V0=Dr(),f_t=qa(),h_t=ka(),d_t=Ig(),v_t=Hb(),h1e=R3(),w4=x4();function p_t(e,t,r,n){function i(v,_){return V0.coerce(e,t,w4,v,_)}if(d1e(e,t,i,n),t.visible!==!1){d_t(e,t,n,i),i("xhoverformat"),i("yhoverformat");var a=t._hasPreCompStats;a&&(i("lowerfence"),i("upperfence")),i("line.color",(e.marker||{}).color||r),i("line.width"),i("fillcolor",h_t.addOpacity(t.line.color,.5));var o=!1;if(a){var s=i("mean"),l=i("sd");s&&s.length&&(o=!0,l&&l.length&&(o="sd"))}i("whiskerwidth");var u=i("sizemode"),c;u==="quartiles"&&(c=i("boxmean",o)),i("showwhiskers",u==="quartiles"),(u==="sd"||c==="sd")&&i("sdmultiple"),i("width"),i("quartilemethod");var f=!1;if(a){var h=i("notchspan");h&&h.length&&(f=!0)}else V0.validate(e.notchwidth,w4.notchwidth)&&(f=!0);var d=i("notched",f);d&&i("notchwidth"),v1e(e,t,i,{prefix:"box"}),i("zorder")}}function d1e(e,t,r,n){function i(P){var T=0;return P&&P.length&&(T+=1,V0.isArrayOrTypedArray(P[0])&&P[0].length&&(T+=1)),T}function a(P){return V0.validate(e[P],w4[P])}var o=r("y"),s=r("x"),l;if(t.type==="box"){var u=r("q1"),c=r("median"),f=r("q3");t._hasPreCompStats=u&&u.length&&c&&c.length&&f&&f.length,l=Math.min(V0.minRowLength(u),V0.minRowLength(c),V0.minRowLength(f))}var h=i(o),d=i(s),v=h&&V0.minRowLength(o),_=d&&V0.minRowLength(s),b=n.calendar,p={autotypenumbers:n.autotypenumbers},k,E;if(t._hasPreCompStats)switch(String(d)+String(h)){case"00":var S=a("x0")||a("dx"),L=a("y0")||a("dy");L&&!S?k="h":k="v",E=l;break;case"10":k="v",E=Math.min(l,_);break;case"20":k="h",E=Math.min(l,s.length);break;case"01":k="h",E=Math.min(l,v);break;case"02":k="v",E=Math.min(l,o.length);break;case"12":k="v",E=Math.min(l,_,o.length);break;case"21":k="h",E=Math.min(l,s.length,v);break;case"11":E=0;break;case"22":var x=!1,C;for(C=0;C0?(k="v",d>0?E=Math.min(_,v):E=Math.min(v)):d>0?(k="h",E=Math.min(_)):E=0;if(!E){t.visible=!1;return}t._length=E;var M=r("orientation",k);t._hasPreCompStats?M==="v"&&d===0?(r("x0",0),r("dx",1)):M==="h"&&h===0&&(r("y0",0),r("dy",1)):M==="v"&&d===0?r("x0"):M==="h"&&h===0&&r("y0");var g=f_t.getComponentMethod("calendars","handleTraceDefaults");g(e,t,["x","y"],n)}function v1e(e,t,r,n){var i=n.prefix,a=V0.coerce2(e,t,w4,"marker.outliercolor"),o=r("marker.line.outliercolor"),s="outliers";t._hasPreCompStats?s="all":(a||o)&&(s="suspectedoutliers");var l=r(i+"points",s);l?(r("jitter",l==="all"?.3:0),r("pointpos",l==="all"?-1.5:0),r("marker.symbol"),r("marker.opacity"),r("marker.size"),r("marker.angle"),r("marker.color",t.line.color),r("marker.line.color"),r("marker.line.width"),l==="suspectedoutliers"&&(r("marker.line.outliercolor",t.marker.color),r("marker.line.outlierwidth")),r("selected.marker.color"),r("unselected.marker.color"),r("selected.marker.size"),r("unselected.marker.size"),r("text"),r("hovertext")):delete t.marker;var u=r("hoveron");(u==="all"||u.indexOf("points")!==-1)&&(r("hovertemplate"),r("hovertemplatefallback")),V0.coerceSelectionMarkerOpacity(t,r)}function g_t(e,t){var r,n;function i(l){return V0.coerce(n._input,n,w4,l)}for(var a=0;a{"use strict";var m_t=qa(),y_t=Dr(),__t=b4();function g1e(e,t,r,n,i){for(var a=i+"Layout",o=!1,s=0;s{"use strict";var IV=Eo(),YI=ho(),b_t=Dg(),gh=Dr(),i0=fs().BADNUM,Oy=gh._;M1e.exports=function(t,r){var n=t._fullLayout,i=YI.getFromId(t,r.xaxis||"x"),a=YI.getFromId(t,r.yaxis||"y"),o=[],s=r.type==="violin"?"_numViolins":"_numBoxes",l,u,c,f,h,d,v;r.orientation==="h"?(c=i,f="x",h=a,d="y",v=!!r.yperiodalignment):(c=a,f="y",h=i,d="x",v=!!r.xperiodalignment);var _=w_t(r,d,h,n[s]),b=_[0],p=_[1],k=gh.distinctVals(b,h),E=k.vals,S=k.minDiff/2,L,x,C,M,g,P,T=(r.boxpoints||r.points)==="all"?gh.identity:function(Zt){return Zt.vL.uf};if(r._hasPreCompStats){var z=r[f],O=function(Zt){return c.d2c((r[Zt]||[])[l])},V=1/0,G=-1/0;for(l=0;l=L.q1&&L.q3>=L.med){var j=O("lowerfence");L.lf=j!==i0&&j<=L.q1?j:b1e(L,C,M);var N=O("upperfence");L.uf=N!==i0&&N>=L.q3?N:w1e(L,C,M);var H=O("mean");L.mean=H!==i0?H:M?gh.mean(C,M):(L.q1+L.q3)/2;var te=O("sd");L.sd=H!==i0&&te>=0?te:M?gh.stdev(C,M,L.mean):L.q3-L.q1,L.lo=T1e(L),L.uo=A1e(L);var oe=O("notchspan");oe=oe!==i0&&oe>0?oe:S1e(L,M),L.ln=L.med-oe,L.un=L.med+oe;var _e=L.lf,Ee=L.uf;r.boxpoints&&C.length&&(_e=Math.min(_e,C[0]),Ee=Math.max(Ee,C[M-1])),r.notched&&(_e=Math.min(_e,L.ln),Ee=Math.max(Ee,L.un)),L.min=_e,L.max=Ee}else{gh.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+L.q1,"median = "+L.med,"q3 = "+L.q3].join(` +`));var Ce;L.med!==i0?Ce=L.med:L.q1!==i0?L.q3!==i0?Ce=(L.q1+L.q3)/2:Ce=L.q1:L.q3!==i0?Ce=L.q3:Ce=0,L.med=Ce,L.q1=L.q3=Ce,L.lf=L.uf=Ce,L.mean=L.sd=Ce,L.ln=L.un=Ce,L.min=L.max=Ce}V=Math.min(V,L.min),G=Math.max(G,L.max),L.pts2=x.filter(T),o.push(L)}}r._extremes[c._id]=YI.findExtremes(c,[V,G],{padded:!0})}else{var me=c.makeCalcdata(r,f),ie=T_t(E,S),Se=E.length,Le=A_t(Se);for(l=0;l=0&&Ae0){if(L={},L.pos=L[d]=E[l],x=L.pts=Le[l].sort(_1e),C=L[f]=x.map(x1e),M=C.length,L.min=C[0],L.max=C[M-1],L.mean=gh.mean(C,M),L.sd=gh.stdev(C,M,L.mean)*r.sdmultiple,L.med=gh.interp(C,.5),M%2&&(Re||ce)){var Ze,ut;Re?(Ze=C.slice(0,M/2),ut=C.slice(M/2+1)):ce&&(Ze=C.slice(0,M/2+1),ut=C.slice(M/2)),L.q1=gh.interp(Ze,.5),L.q3=gh.interp(ut,.5)}else L.q1=gh.interp(C,.25),L.q3=gh.interp(C,.75);L.lf=b1e(L,C,M),L.uf=w1e(L,C,M),L.lo=T1e(L),L.uo=A1e(L);var pt=S1e(L,M);L.ln=L.med-pt,L.un=L.med+pt,Fe=Math.min(Fe,L.ln),Pe=Math.max(Pe,L.un),L.pts2=x.filter(T),o.push(L)}r.notched&&gh.isTypedArray(me)&&(me=Array.from(me)),r._extremes[c._id]=YI.findExtremes(c,r.notched?me.concat([Fe,Pe]):me,{padded:!0})}return S_t(o,r),o.length>0?(o[0].t={num:n[s],dPos:S,posLetter:d,valLetter:f,labels:{med:Oy(t,"median:"),min:Oy(t,"min:"),q1:Oy(t,"q1:"),q3:Oy(t,"q3:"),max:Oy(t,"max:"),mean:r.boxmean==="sd"||r.sizemode==="sd"?Oy(t,"mean \xB1 \u03C3:").replace("\u03C3",r.sdmultiple===1?"\u03C3":r.sdmultiple+"\u03C3"):Oy(t,"mean:"),lf:Oy(t,"lower fence:"),uf:Oy(t,"upper fence:")}},n[s]++,o):[{t:{empty:!0}}]};function w_t(e,t,r,n){var i=t in e,a=t+"0"in e,o="d"+t in e;if(i||a&&o){var s=r.makeCalcdata(e,t),l=b_t(e,r,t,s).vals;return[l,s]}var u;a?u=e[t+"0"]:"name"in e&&(r.type==="category"||IV(e.name)&&["linear","log"].indexOf(r.type)!==-1||gh.isDateTime(e.name)&&r.type==="date")?u=e.name:u=n;for(var c=r.type==="multicategory"?r.r2c_just_indices(u):r.d2c(u,0,e[t+"calendar"]),f=e._length,h=new Array(f),d=0;d{"use strict";var E1e=ho(),M_t=Dr(),E_t=Nb().getAxisGroup,k1e=["v","h"];function k_t(e,t){for(var r=e.calcdata,n=t.xaxis,i=t.yaxis,a=0;a1,k=1-a[e+"gap"],E=1-a[e+"groupgap"];for(l=0;l0;if(C==="positive"?(N=M*(x?1:.5),oe=te,H=oe=P):C==="negative"?(N=oe=P,H=M*(x?1:.5),_e=te):(N=H=M,oe=_e=te),Le){var Ae=S.pointpos,Fe=S.jitter,Pe=S.marker.size/2,ge=0;Ae+Fe>=0&&(ge=te*(Ae+Fe),ge>N?(Se=!0,me=Pe,Ee=ge):ge>oe&&(me=Pe,Ee=N)),ge<=N&&(Ee=N);var Re=0;Ae-Fe<=0&&(Re=-te*(Ae-Fe),Re>H?(Se=!0,ie=Pe,Ce=Re):Re>_e&&(ie=Pe,Ce=H)),Re<=H&&(Ce=H)}else Ee=N,Ce=H;var ce=new Array(c.length);for(u=0;u{"use strict";var LT=Oa(),a2=Dr(),C_t=So(),P1e=5,L_t=.01;function P_t(e,t,r,n){var i=e._context.staticPlot,a=t.xaxis,o=t.yaxis;a2.makeTraceGroups(n,r,"trace boxes").each(function(s){var l=LT.select(this),u=s[0],c=u.t,f=u.trace;if(c.wdPos=c.bdPos*f.whiskerwidth,f.visible!==!0||c.empty){l.remove();return}var h,d;f.orientation==="h"?(h=o,d=a):(h=a,d=o),I1e(l,{pos:h,val:d},f,c,i),R1e(l,{x:a,y:o},f,c),D1e(l,{pos:h,val:d},f,c)})}function I1e(e,t,r,n,i){var a=r.orientation==="h",o=t.val,s=t.pos,l=!!s.rangebreaks,u=n.bPos,c=n.wdPos||0,f=n.bPosPxOffset||0,h=r.whiskerwidth||0,d=r.showwhiskers!==!1,v=r.notched||!1,_=v?1-2*r.notchwidth:1,b,p;Array.isArray(n.bdPos)?(b=n.bdPos[0],p=n.bdPos[1]):(b=n.bdPos,p=n.bdPos);var k=e.selectAll("path.box").data(r.type!=="violin"||r.box.visible?a2.identity:[]);k.enter().append("path").style("vector-effect",i?"none":"non-scaling-stroke").attr("class","box"),k.exit().remove(),k.each(function(E){if(E.empty)return LT.select(this).attr("d","M0,0Z");var S=s.c2l(E.pos+u,!0),L=s.l2p(S-b)+f,x=s.l2p(S+p)+f,C=l?(L+x)/2:s.l2p(S)+f,M=r.whiskerwidth,g=l?L*M+(1-M)*C:s.l2p(S-c)+f,P=l?x*M+(1-M)*C:s.l2p(S+c)+f,T=s.l2p(S-b*_)+f,z=s.l2p(S+p*_)+f,O=r.sizemode==="sd",V=o.c2p(O?E.mean-E.sd:E.q1,!0),G=O?o.c2p(E.mean+E.sd,!0):o.c2p(E.q3,!0),Z=a2.constrain(O?o.c2p(E.mean,!0):o.c2p(E.med,!0),Math.min(V,G)+1,Math.max(V,G)-1),j=E.lf===void 0||r.boxpoints===!1||O,N=o.c2p(j?E.min:E.lf,!0),H=o.c2p(j?E.max:E.uf,!0),te=o.c2p(E.ln,!0),oe=o.c2p(E.un,!0);a?LT.select(this).attr("d","M"+Z+","+T+"V"+z+"M"+V+","+L+"V"+x+(v?"H"+te+"L"+Z+","+z+"L"+oe+","+x:"")+"H"+G+"V"+L+(v?"H"+oe+"L"+Z+","+T+"L"+te+","+L:"")+"Z"+(d?"M"+V+","+C+"H"+N+"M"+G+","+C+"H"+H+(h===0?"":"M"+N+","+g+"V"+P+"M"+H+","+g+"V"+P):"")):LT.select(this).attr("d","M"+T+","+Z+"H"+z+"M"+L+","+V+"H"+x+(v?"V"+te+"L"+z+","+Z+"L"+x+","+oe:"")+"V"+G+"H"+L+(v?"V"+oe+"L"+T+","+Z+"L"+L+","+te:"")+"Z"+(d?"M"+C+","+V+"V"+N+"M"+C+","+G+"V"+H+(h===0?"":"M"+g+","+N+"H"+P+"M"+g+","+H+"H"+P):""))})}function R1e(e,t,r,n){var i=t.x,a=t.y,o=n.bdPos,s=n.bPos,l=r.boxpoints||r.points;a2.seedPseudoRandom();var u=function(h){return h.forEach(function(d){d.t=n,d.trace=r}),h},c=e.selectAll("g.points").data(l?u:[]);c.enter().append("g").attr("class","points"),c.exit().remove();var f=c.selectAll("path").data(function(h){var d,v=h.pts2,_=Math.max((h.max-h.min)/10,h.q3-h.q1),b=_*1e-9,p=_*L_t,k=[],E=0,S;if(r.jitter){if(_===0)for(E=1,k=new Array(v.length),d=0;dh.lo&&(P.so=!0)}return v});f.enter().append("path").classed("point",!0),f.exit().remove(),f.call(C_t.translatePoints,i,a)}function D1e(e,t,r,n){var i=t.val,a=t.pos,o=!!a.rangebreaks,s=n.bPos,l=n.bPosPxOffset||0,u=r.boxmean||(r.meanline||{}).visible,c,f;Array.isArray(n.bdPos)?(c=n.bdPos[0],f=n.bdPos[1]):(c=n.bdPos,f=n.bdPos);var h=e.selectAll("path.mean").data(r.type==="box"&&r.boxmean||r.type==="violin"&&r.box.visible&&r.meanline.visible?a2.identity:[]);h.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),h.exit().remove(),h.each(function(d){var v=a.c2l(d.pos+s,!0),_=a.l2p(v-c)+l,b=a.l2p(v+f)+l,p=o?(_+b)/2:a.l2p(v)+l,k=i.c2p(d.mean,!0),E=i.c2p(d.mean-d.sd,!0),S=i.c2p(d.mean+d.sd,!0);r.orientation==="h"?LT.select(this).attr("d","M"+k+","+_+"V"+b+(u==="sd"?"m0,0L"+E+","+p+"L"+k+","+_+"L"+S+","+p+"Z":"")):LT.select(this).attr("d","M"+_+","+k+"H"+b+(u==="sd"?"m0,0L"+p+","+E+"L"+_+","+k+"L"+p+","+S+"Z":""))})}F1e.exports={plot:P_t,plotBoxAndWhiskers:I1e,plotPoints:R1e,plotBoxMean:D1e}});var $I=ye((fur,z1e)=>{"use strict";var DV=Oa(),FV=ka(),zV=So();function I_t(e,t,r){var n=r||DV.select(e).selectAll("g.trace.boxes");n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=DV.select(this),o=i[0].trace,s=o.line.width;function l(f,h,d,v){f.style("stroke-width",h+"px").call(FV.stroke,d).call(FV.fill,v)}var u=a.selectAll("path.box");if(o.type==="candlestick")u.each(function(f){if(!f.empty){var h=DV.select(this),d=o[f.dir];l(h,d.line.width,d.line.color,d.fillcolor),h.style("opacity",o.selectedpoints&&!f.selected?.3:1)}});else{l(u,s,o.line.color,o.fillcolor),a.selectAll("path.mean").style({"stroke-width":s,"stroke-dasharray":2*s+"px,"+s+"px"}).call(FV.stroke,o.line.color);var c=a.selectAll("path.point");zV.pointStyle(c,o,e)}})}function R_t(e,t,r){var n=t[0].trace,i=r.selectAll("path.point");n.selectedpoints?zV.selectedPointStyle(i,n):zV.pointStyle(i,n,e)}z1e.exports={style:I_t,styleOnSelect:R_t}});var qV=ye((hur,N1e)=>{"use strict";var D_t=ho(),OV=Dr(),A_=vf(),O1e=ka(),F_t=OV.fillText;function z_t(e,t,r,n){var i=e.cd,a=i[0].trace,o=a.hoveron,s=[],l;return o.indexOf("boxes")!==-1&&(s=s.concat(q1e(e,t,r,n))),o.indexOf("points")!==-1&&(l=B1e(e,t,r)),n==="closest"?l?[l]:s:(l&&s.push(l),s)}function q1e(e,t,r,n){var i=e.cd,a=e.xa,o=e.ya,s=i[0].trace,l=i[0].t,u=s.type==="violin",c,f,h,d,v,_,b,p,k,E,S,L=l.bdPos,x,C,M=l.wHover,g=function(Pe){return h.c2l(Pe.pos)+l.bPos-h.c2l(_)};u&&s.side!=="both"?(s.side==="positive"&&(k=function(Pe){var ge=g(Pe);return A_.inbox(ge,ge+M,E)},x=L,C=0),s.side==="negative"&&(k=function(Pe){var ge=g(Pe);return A_.inbox(ge-M,ge,E)},x=0,C=L)):(k=function(Pe){var ge=g(Pe);return A_.inbox(ge-M,ge+M,E)},x=C=L);var P;u?P=function(Pe){return A_.inbox(Pe.span[0]-v,Pe.span[1]-v,E)}:P=function(Pe){return A_.inbox(Pe.min-v,Pe.max-v,E)},s.orientation==="h"?(v=t,_=r,b=P,p=k,c="y",h=o,f="x",d=a):(v=r,_=t,b=k,p=P,c="x",h=a,f="y",d=o);var T=Math.min(1,L/Math.abs(h.r2c(h.range[1])-h.r2c(h.range[0])));E=e.maxHoverDistance-T,S=e.maxSpikeDistance-T;function z(Pe){return(b(Pe)+p(Pe))/2}var O=A_.getDistanceFunction(n,b,p,z);if(A_.getClosest(i,O,e),e.index===!1)return[];var V=i[e.index],G=s.line.color,Z=(s.marker||{}).color;O1e.opacity(G)&&s.line.width?e.color=G:O1e.opacity(Z)&&s.boxpoints?e.color=Z:e.color=s.fillcolor,e[c+"0"]=h.c2p(V.pos+l.bPos-C,!0),e[c+"1"]=h.c2p(V.pos+l.bPos+x,!0),e[c+"LabelVal"]=V.orig_p!==void 0?V.orig_p:V.pos;var j=c+"Spike";e.spikeDistance=z(V)*S/E,e[j]=h.c2p(V.pos,!0);var N=s.boxmean||s.sizemode==="sd"||(s.meanline||{}).visible,H=s.boxpoints||s.points,te=H&&N?["max","uf","q3","med","mean","q1","lf","min"]:H&&!N?["max","uf","q3","med","q1","lf","min"]:!H&&N?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],oe=d.range[1]{"use strict";U1e.exports=function(t,r){return r.hoverOnBox&&(t.hoverOnBox=r.hoverOnBox),"xVal"in r&&(t.x=r.xVal),"yVal"in r&&(t.y=r.yVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var BV=ye((vur,G1e)=>{"use strict";G1e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l;if(r===!1)for(s=0;s{"use strict";H1e.exports={attributes:x4(),layoutAttributes:b4(),supplyDefaults:T4().supplyDefaults,crossTraceDefaults:T4().crossTraceDefaults,supplyLayoutDefaults:ZI().supplyLayoutDefaults,calc:RV(),crossTraceCalc:KI().crossTraceCalc,plot:JI().plot,style:$I().style,styleOnSelect:$I().styleOnSelect,hoverPoints:qV().hoverPoints,eventData:V1e(),selectPoints:BV(),moduleType:"trace",name:"box",basePlotModule:ph(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{}}});var X1e=ye((gur,W1e)=>{"use strict";W1e.exports=j1e()});var PT=ye((mur,Y1e)=>{"use strict";var O_t=Tu(),{extendFlat:Pp}=Ao(),q_t=Gl(),{axisHoverFormat:NV}=df(),B_t=ec(),{hovertemplateAttrs:N_t,templatefallbackAttrs:Z1e,texttemplateAttrs:U_t}=Ll(),n0=pf();Y1e.exports=Pp({z:{valType:"data_array",editType:"calc"},x:Pp({},n0.x,{impliedEdits:{xtype:"array"}}),x0:Pp({},n0.x0,{impliedEdits:{xtype:"scaled"}}),dx:Pp({},n0.dx,{impliedEdits:{xtype:"scaled"}}),y:Pp({},n0.y,{impliedEdits:{ytype:"array"}}),y0:Pp({},n0.y0,{impliedEdits:{ytype:"scaled"}}),dy:Pp({},n0.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:Pp({},n0.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:Pp({},n0.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:Pp({},n0.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:Pp({},n0.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:Pp({},n0.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:Pp({},n0.yperiodalignment,{impliedEdits:{ytype:"scaled"}}),text:{valType:"data_array",editType:"calc"},hovertext:{valType:"data_array",editType:"calc"},transpose:{valType:"boolean",dflt:!1,editType:"calc"},xtype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},ytype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},zsmooth:{valType:"enumerated",values:["fast","best",!1],dflt:!1,editType:"calc"},hoverongaps:{valType:"boolean",dflt:!0,editType:"none"},connectgaps:{valType:"boolean",editType:"calc"},xgap:{valType:"number",dflt:0,min:0,editType:"plot"},ygap:{valType:"number",dflt:0,min:0,editType:"plot"},xhoverformat:NV("x"),yhoverformat:NV("y"),zhoverformat:NV("z",1),hovertemplate:N_t(),hovertemplatefallback:Z1e(),texttemplate:U_t({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),texttemplatefallback:Z1e({editType:"plot"}),textfont:B_t({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:Pp({},q_t.showlegend,{dflt:!1}),zorder:n0.zorder},O_t("",{cLetter:"z",autoColorDflt:!1}))});var e8=ye((yur,J1e)=>{"use strict";var V_t=Eo(),QI=Dr(),G_t=qa();J1e.exports=function(t,r,n,i,a,o){var s=n("z");a=a||"x",o=o||"y";var l,u;if(s===void 0||!s.length)return 0;if(QI.isArray1D(s)){l=n(a),u=n(o);var c=QI.minRowLength(l),f=QI.minRowLength(u);if(c===0||f===0)return 0;r._length=Math.min(c,f,s.length)}else{if(l=K1e(a,n),u=K1e(o,n),!H_t(s))return 0;n("transpose"),r._length=null}var h=G_t.getComponentMethod("calendars","handleTraceDefaults");return h(t,r,[a,o],i),!0};function K1e(e,t){var r=t(e),n=r?t(e+"type","array"):"scaled";return n==="scaled"&&(t(e+"0"),t("d"+e)),r}function H_t(e){for(var t=!0,r=!1,n=!1,i,a=0;a0&&(r=!0);for(var o=0;o{"use strict";var $1e=Dr();Q1e.exports=function(t,r){t("texttemplate"),t("texttemplatefallback");var n=$1e.extendFlat({},r.font,{color:"auto",size:"auto"});$1e.coerceFont(t,"textfont",n)}});var UV=ye((xur,e_e)=>{"use strict";e_e.exports=function(t,r,n){var i=n("zsmooth");i===!1&&(n("xgap"),n("ygap")),n("zhoverformat")}});var i_e=ye((bur,r_e)=>{"use strict";var t_e=Dr(),j_t=e8(),W_t=A4(),X_t=Ig(),Z_t=UV(),Y_t=Qh(),K_t=PT();r_e.exports=function(t,r,n,i){function a(s,l){return t_e.coerce(t,r,K_t,s,l)}var o=j_t(t,r,a,i);if(!o){r.visible=!1;return}X_t(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),W_t(a,i),Z_t(t,r,a,i),a("hoverongaps"),a("connectgaps",t_e.isArray1D(r.z)&&r.zsmooth!==!1),Y_t(t,r,i,a,{prefix:"",cLetter:"z"}),a("zorder")}});var VV=ye((wur,n_e)=>{"use strict";var IT=Eo();n_e.exports={count:function(e,t,r){return r[e]++,1},sum:function(e,t,r,n){var i=n[t];return IT(i)?(i=Number(i),r[e]+=i,i):0},avg:function(e,t,r,n,i){var a=n[t];return IT(a)&&(a=Number(a),r[e]+=a,i[e]++),0},min:function(e,t,r,n){var i=n[t];if(IT(i))if(i=Number(i),IT(r[e])){if(r[e]>i){var a=i-r[e];return r[e]=i,a}}else return r[e]=i,i;return 0},max:function(e,t,r,n){var i=n[t];if(IT(i))if(i=Number(i),IT(r[e])){if(r[e]{"use strict";a_e.exports={percent:function(e,t){for(var r=e.length,n=100/t,i=0;i{"use strict";o_e.exports=function(t,r){for(var n=t.length,i=0,a=0;a{"use strict";var RT=fs(),o2=RT.ONEAVGYEAR,s_e=RT.ONEAVGMONTH,r8=RT.ONEDAY,l_e=RT.ONEHOUR,u_e=RT.ONEMIN,c_e=RT.ONESEC,f_e=ho().tickIncrement;v_e.exports=function(t,r,n,i,a){var o=-1.1*r,s=-.1*r,l=t-s,u=n[0],c=n[1],f=Math.min(t8(u+s,u+l,i,a),t8(c+s,c+l,i,a)),h=Math.min(t8(u+o,u+s,i,a),t8(c+o,c+s,i,a)),d,v;if(f>h&&hr8){var _=d===o2?1:6,b=d===o2?"M12":"M1";return function(p,k){var E=i.c2d(p,o2,a),S=E.indexOf("-",_);S>0&&(E=E.slice(0,S));var L=i.d2c(E,0,a);if(Lc_e?e>r8?e>o2*1.1?o2:e>s_e*1.1?s_e:r8:e>l_e?l_e:e>u_e?u_e:c_e:Math.pow(10,Math.floor(Math.log(e)/Math.LN10))}function J_t(e,t,r,n,i,a){if(n&&e>r8){var o=d_e(t,i,a),s=d_e(r,i,a),l=e===o2?0:1;return o[l]!==s[l]}return Math.floor(r/e)-Math.floor(t/e)>.1}function d_e(e,t,r){var n=t.c2d(e,o2,r).split("-");return n[0]===""&&(n.unshift(),n[0]="-"+n[0]),n}});var ZV=ye((Mur,__e)=>{"use strict";var WV=Eo(),Hv=Dr(),p_e=qa(),G0=ho(),{hasColorscale:g_e}=pv(),m_e=gv(),$_t=g4(),y_e=VV(),Q_t=GV(),ext=HV(),txt=jV();function rxt(e,t){var r=[],n=[],i=t.orientation==="h",a=G0.getFromId(e,i?t.yaxis:t.xaxis),o=i?"y":"x",s={x:"y",y:"x"}[o],l=t[o+"calendar"],u=t.cumulative,c,f=XV(e,t,a,o),h=f[0],d=f[1],v=typeof h.size=="string",_=[],b=v?_:h,p=[],k=[],E=[],S=0,L=t.histnorm,x=t.histfunc,C=L.indexOf("density")!==-1,M,g,P;u.enabled&&C&&(L=L.replace(/ ?density$/,""),C=!1);var T=x==="max"||x==="min",z=T?null:0,O=y_e.count,V=Q_t[L],G=!1,Z=function(ge){return a.r2c(ge,0,l)},j;for(Hv.isArrayOrTypedArray(t[s])&&x!=="count"&&(j=t[s],G=x==="avg",O=y_e[x]),c=Z(h.start),g=Z(h.end)+(c-G0.tickIncrement(c,h.size,!1,l))/1e6;c=0&&P=Ae;c--)if(n[c]){Fe=c;break}for(c=Ae;c<=Fe;c++)if(WV(r[c])&&WV(n[c])){var Pe={p:r[c],s:n[c],b:0};u.enabled||(Pe.pts=E[c],oe?Pe.ph0=Pe.ph1=E[c].length?d[E[c][0]]:r[c]:(t._computePh=!0,Pe.ph0=ie(_[c]),Pe.ph1=ie(_[c+1],!0))),Le.push(Pe)}return Le.length===1&&(Le[0].width1=G0.tickIncrement(Le[0].p,h.size,!1,l)-Le[0].p),g_e(t,"marker")&&m_e(e,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),g_e(t,"marker.line")&&m_e(e,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}),$_t(Le,t),Hv.isArrayOrTypedArray(t.selectedpoints)&&Hv.tagSelected(Le,t,Ce),Le}function XV(e,t,r,n,i){var a=n+"bins",o=e._fullLayout,s=t["_"+n+"bingroup"],l=o._histogramBinOpts[s],u=o.barmode==="overlay",c,f,h,d,v,_,b,p=function(me){return r.r2c(me,0,d)},k=function(me){return r.c2r(me,0,d)},E=r.type==="date"?function(me){return me||me===0?Hv.cleanDate(me,null,d):null}:function(me){return WV(me)?Number(me):null};function S(me,ie,Se){ie[me+"Found"]?(ie[me]=E(ie[me]),ie[me]===null&&(ie[me]=Se[me])):(_[me]=ie[me]=Se[me],Hv.nestedProperty(f[0],a+"."+me).set(Se[me]))}if(t["_"+n+"autoBinFinished"])delete t["_"+n+"autoBinFinished"];else{f=l.traces;var L=[],x=!0,C=!1,M=!1;for(c=0;cr.r2l(j)&&(H=G0.tickIncrement(H,l.size,!0,d)),O.start=r.l2r(H),Z||Hv.nestedProperty(t,a+".start").set(O.start)}var te=l.end,oe=r.r2l(z.end),_e=oe!==void 0;if((l.endFound||_e)&&oe!==r.r2l(te)){var Ee=_e?oe:Hv.aggNums(Math.max,null,v);O.end=r.l2r(Ee),_e||Hv.nestedProperty(t,a+".start").set(O.end)}var Ce="autobin"+n;return t._input[Ce]===!1&&(t._input[a]=Hv.extendFlat({},t[a]||{}),delete t._input[Ce],delete t[Ce]),[O,v]}function ixt(e,t,r,n,i){var a=e._fullLayout,o=nxt(e,t),s=!1,l=1/0,u=[t],c,f,h;for(c=0;c=0;n--)s(n);else if(t==="increasing"){for(n=1;n=0;n--)e[n]+=e[n+1];r==="exclude"&&(e.push(0),e.shift())}}__e.exports={calc:rxt,calcAllAutoBins:XV}});var E_e=ye((Eur,M_e)=>{"use strict";var x_e=Dr(),DT=ho(),b_e=VV(),oxt=GV(),sxt=HV(),lxt=jV(),w_e=ZV().calcAllAutoBins;M_e.exports=function(t,r){var n=DT.getFromId(t,r.xaxis),i=DT.getFromId(t,r.yaxis),a=r.xcalendar,o=r.ycalendar,s=function(It){return n.r2c(It,0,a)},l=function(It){return i.r2c(It,0,o)},u=function(It){return n.c2r(It,0,a)},c=function(It){return i.c2r(It,0,o)},f,h,d,v,_=w_e(t,r,n,"x"),b=_[0],p=_[1],k=w_e(t,r,i,"y"),E=k[0],S=k[1],L=r._length;p.length>L&&p.splice(L,p.length-L),S.length>L&&S.splice(L,S.length-L);var x=[],C=[],M=[],g=typeof b.size=="string",P=typeof E.size=="string",T=[],z=[],O=g?T:b,V=P?z:E,G=0,Z=[],j=[],N=r.histnorm,H=r.histfunc,te=N.indexOf("density")!==-1,oe=H==="max"||H==="min",_e=oe?null:0,Ee=b_e.count,Ce=oxt[N],me=!1,ie=[],Se=[],Le="z"in r?r.z:"marker"in r&&Array.isArray(r.marker.color)?r.marker.color:"";Le&&H!=="count"&&(me=H==="avg",Ee=b_e[H]);var Ae=b.size,Fe=s(b.start),Pe=s(b.end)+(Fe-DT.tickIncrement(Fe,Ae,!1,a))/1e6;for(f=Fe;f=0&&d=0&&v{"use strict";var Im=Dr(),k_e=fs().BADNUM,C_e=Dg();L_e.exports=function(t,r,n,i,a,o){var s=t._length,l=r.makeCalcdata(t,i),u=n.makeCalcdata(t,a);l=C_e(t,r,i,l).vals,u=C_e(t,n,a,u).vals;var c=t.text,f=c!==void 0&&Im.isArray1D(c),h=t.hovertext,d=h!==void 0&&Im.isArray1D(h),v,_,b=Im.distinctVals(l),p=b.vals,k=Im.distinctVals(u),E=k.vals,S=[],L,x,C=E.length,M=p.length;for(v=0;v{"use strict";var uxt=Eo(),cxt=Dr(),n8=fs().BADNUM;P_e.exports=function(t,r,n,i){var a,o,s,l,u,c;function f(p){if(uxt(p))return+p}if(r&&r.transpose){for(a=0,u=0;u{"use strict";var fxt=Dr(),I_e=.01,hxt=[[-1,0],[1,0],[0,-1],[0,1]];function dxt(e){return .5-.25*Math.min(1,e*.5)}D_e.exports=function(t,r){var n=1,i;for(R_e(t,r),i=0;iI_e;i++)n=R_e(t,r,dxt(n));return n>I_e&&fxt.log("interp2d didn't converge quickly",n),t};function R_e(e,t,r){var n=0,i,a,o,s,l,u,c,f,h,d,v,_,b;for(s=0;s_&&(n=Math.max(n,Math.abs(e[a][o]-v)/(b-_))))}return n}});var s8=ye((Pur,F_e)=>{"use strict";var vxt=Dr().maxRowLength;F_e.exports=function(t){var r=[],n={},i=[],a=t[0],o=[],s=[0,0,0],l=vxt(t),u,c,f,h,d,v,_,b;for(c=0;c=0;d--)h=i[d],c=h[0],f=h[1],v=((n[[c-1,f]]||s)[2]+(n[[c+1,f]]||s)[2]+(n[[c,f-1]]||s)[2]+(n[[c,f+1]]||s)[2])/20,v&&(_[h]=[c,f,v],i.splice(d,1),b=!0);if(!b)throw"findEmpties iterated with no new neighbors";for(h in _)n[h]=_[h],r.push(_[h])}return r.sort(function(p,k){return k[2]-p[2]})}});var YV=ye((Iur,q_e)=>{"use strict";var z_e=qa(),O_e=Dr().isArrayOrTypedArray;q_e.exports=function(t,r,n,i,a,o){var s=[],l=z_e.traceIs(t,"contour"),u=z_e.traceIs(t,"histogram"),c,f,h,d=O_e(r)&&r.length>1;if(d&&!u&&o.type!=="category"){var v=r.length;if(v<=a){if(l)s=Array.from(r).slice(0,a);else if(a===1)o.type==="log"?s=[.5*r[0],2*r[0]]:s=[r[0]-.5,r[0]+.5];else if(o.type==="log"){for(s=[Math.pow(r[0],1.5)/Math.pow(r[1],.5)],h=1;h{"use strict";var B_e=qa(),KV=Dr(),l8=ho(),N_e=Dg(),pxt=E_e(),gxt=gv(),mxt=i8(),yxt=a8(),_xt=o8(),xxt=s8(),u8=YV(),JV=fs().BADNUM;V_e.exports=function(t,r){var n=l8.getFromId(t,r.xaxis||"x"),i=l8.getFromId(t,r.yaxis||"y"),a=B_e.traceIs(r,"contour"),o=B_e.traceIs(r,"histogram"),s=a?"best":r.zsmooth,l,u,c,f,h,d,v,_,b,p,k;if(n._minDtick=0,i._minDtick=0,o)k=pxt(t,r),f=k.orig_x,l=k.x,u=k.x0,c=k.dx,_=k.orig_y,h=k.y,d=k.y0,v=k.dy,b=k.z;else{var E=r.z;KV.isArray1D(E)?(mxt(r,n,i,"x","y",["z"]),l=r._x,h=r._y,E=r._z):(f=r.x?n.makeCalcdata(r,"x"):[],_=r.y?i.makeCalcdata(r,"y"):[],l=N_e(r,n,"x",f).vals,h=N_e(r,i,"y",_).vals,r._x=l,r._y=h),u=r.x0,c=r.dx,d=r.y0,v=r.dy,b=yxt(E,r,n,i)}(n.rangebreaks||i.rangebreaks)&&(b=bxt(l,h,b),o||(l=U_e(l),h=U_e(h),r._x=l,r._y=h)),!o&&(a||r.connectgaps)&&(r._emptypoints=xxt(b),_xt(b,r._emptypoints));function S(O){s=r._input.zsmooth=r.zsmooth=!1,KV.warn('cannot use zsmooth: "fast": '+O)}function L(O){if(O.length>1){var V=(O[O.length-1]-O[0])/(O.length-1),G=Math.abs(V/100);for(p=0;pG)return!1}return!0}r._islinear=!1,n.type==="log"||i.type==="log"?s==="fast"&&S("log axis found"):L(l)?L(h)?r._islinear=!0:s==="fast"&&S("y scale is not linear"):s==="fast"&&S("x scale is not linear");var x=KV.maxRowLength(b),C=r.xtype==="scaled"?"":l,M=u8(r,C,u,c,x,n),g=r.ytype==="scaled"?"":h,P=u8(r,g,d,v,b.length,i);r._extremes[n._id]=l8.findExtremes(n,M),r._extremes[i._id]=l8.findExtremes(i,P);var T={x:M,y:P,z:b,text:r._text||r.text,hovertext:r._hovertext||r.hovertext};if(r.xperiodalignment&&f&&(T.orig_x=f),r.yperiodalignment&&_&&(T.orig_y=_),C&&C.length===M.length-1&&(T.xCenter=C),g&&g.length===P.length-1&&(T.yCenter=g),o&&(T.xRanges=k.xRanges,T.yRanges=k.yRanges,T.pts=k.pts),a||gxt(t,r,{vals:b,cLetter:"z"}),a&&r.contours&&r.contours.coloring==="heatmap"){var z={type:r.type==="contour"?"heatmap":"histogram2d",xcalendar:r.xcalendar,ycalendar:r.ycalendar};T.xfill=u8(z,C,u,c,x,n),T.yfill=u8(z,g,d,v,b.length,i)}return[T]};function U_e(e){for(var t=[],r=e.length,n=0;n{"use strict";f8.CSS_DECLARATIONS=[["image-rendering","optimizeSpeed"],["image-rendering","-moz-crisp-edges"],["image-rendering","-o-crisp-edges"],["image-rendering","-webkit-optimize-contrast"],["image-rendering","optimize-contrast"],["image-rendering","crisp-edges"],["image-rendering","pixelated"]];f8.STYLE=f8.CSS_DECLARATIONS.map(function(e){return e.join(": ")+"; "}).join("")});var QV=ye((Fur,H_e)=>{"use strict";var G_e=h8(),wxt=So(),$V=Dr(),FT=null;function Txt(){if(FT!==null)return FT;FT=!1;var e=$V.isSafari()||$V.isMacWKWebView()||$V.isIOS();if(window.navigator.userAgent&&!e){var t=Array.from(G_e.CSS_DECLARATIONS).reverse(),r=window.CSS&&window.CSS.supports||window.supportsCSS;if(typeof r=="function")FT=t.some(function(o){return r.apply(null,o)});else{var n=wxt.tester.append("image").attr("style",G_e.STYLE),i=window.getComputedStyle(n.node()),a=i.imageRendering;FT=t.some(function(o){var s=o[1];return a===s||a===s.toLowerCase()}),n.remove()}}return FT}H_e.exports=Txt});var d8=ye((zur,Q_e)=>{"use strict";var j_e=Oa(),Axt=cd(),Sxt=qa(),Mxt=So(),Ext=ho(),H0=Dr(),W_e=ru(),kxt=nI(),Cxt=ka(),Lxt=tc().extractOpts,Pxt=tc().makeColorScaleFuncFromTrace,Ixt=Wp(),Rxt=$h(),eG=Rxt.LINE_SPACING,Dxt=QV(),Fxt=h8().STYLE,J_e="heatmap-label";function $_e(e){return e.selectAll("g."+J_e)}function X_e(e){$_e(e).remove()}Q_e.exports=function(e,t,r,n){var i=t.xaxis,a=t.yaxis;H0.makeTraceGroups(n,r,"hm").each(function(o){var s=j_e.select(this),l=o[0],u=l.trace,c=u.xgap||0,f=u.ygap||0,h=l.z,d=l.x,v=l.y,_=l.xCenter,b=l.yCenter,p=Sxt.traceIs(u,"contour"),k=p?"best":u.zsmooth,E=h.length,S=H0.maxRowLength(h),L=!1,x=!1,C,M,g,P,T,z,O,V;for(z=0;C===void 0&&z0;)M=i.c2p(d[z]),z--;for(M0;)T=a.c2p(v[z]),z--;T=i._length||M<=0||P>=a._length||T<=0;if(H){var te=s.selectAll("image").data([]);te.exit().remove(),X_e(s);return}var oe,_e;G==="fast"?(oe=S,_e=E):(oe=j,_e=N);var Ee=document.createElement("canvas");Ee.width=oe,Ee.height=_e;var Ce=Ee.getContext("2d",{willReadFrequently:!0}),me=Pxt(u,{noNumericCheck:!0,returnArray:!0}),ie,Se;G==="fast"?(ie=L?function(fn){return S-1-fn}:H0.identity,Se=x?function(fn){return E-1-fn}:H0.identity):(ie=function(fn){return H0.constrain(Math.round(i.c2p(d[fn])-C),0,j)},Se=function(fn){return H0.constrain(Math.round(a.c2p(v[fn])-P),0,N)});var Le=Se(0),Ae=[Le,Le],Fe=L?0:1,Pe=x?0:1,ge=0,Re=0,ce=0,Ze=0,ut,pt,Zt,st,lt;function Gt(fn,yn){if(fn!==void 0){var Sn=me(fn);return Sn[0]=Math.round(Sn[0]),Sn[1]=Math.round(Sn[1]),Sn[2]=Math.round(Sn[2]),ge+=yn,Re+=Sn[0]*yn,ce+=Sn[1]*yn,Ze+=Sn[2]*yn,Sn}return[0,0,0,0]}function Nt(fn,yn,Sn,Ba){var ua=fn[Sn.bin0];if(ua===void 0)return Gt(void 0,1);var ma=fn[Sn.bin1],Wa=yn[Sn.bin0],Fa=yn[Sn.bin1],Wo=ma-ua||0,da=Wa-ua||0,Wn;return ma===void 0?Fa===void 0?Wn=0:Wa===void 0?Wn=2*(Fa-ua):Wn=(2*Fa-Wa-ua)*2/3:Fa===void 0?Wa===void 0?Wn=0:Wn=(2*ua-ma-Wa)*2/3:Wa===void 0?Wn=(2*Fa-ma-ua)*2/3:Wn=Fa+ua-ma-Wa,Gt(ua+Sn.frac*Wo+Ba.frac*(da+Sn.frac*Wn))}if(G!=="default"){var Jt=0,sr;try{sr=new Uint8Array(oe*_e*4)}catch(fn){sr=new Array(oe*_e*4)}if(G==="smooth"){var wr=_||d,cr=b||v,$e=new Array(wr.length),St=new Array(cr.length),Qt=new Array(j),Vt=_?Y_e:Z_e,_t=b?Y_e:Z_e,It,mt,er;for(z=0;zvr||vr>a._length))for(O=ke;Opi||pi>i._length)){var $r=kxt({x:ii,y:ar},u,e._fullLayout);$r.x=ii,$r.y=ar;var di=l.z[z][O];di===void 0?($r.z="",$r.zLabel=""):($r.z=di,$r.zLabel=Ext.tickText(je,di,"hover").text);var ji=l.text&&l.text[z]&&l.text[z][O];(ji===void 0||ji===!1)&&(ji=""),$r.text=ji;var In=H0.texttemplateString({data:[$r,u._meta],fallback:u.texttemplatefallback,labels:$r,locale:e._fullLayout._d3locale,template:Ge});if(In){var wi=In.split("
"),On=wi.length,qn=0;for(V=0;V{"use strict";exe.exports={min:"zmin",max:"zmax"}});var v8=ye((qur,txe)=>{"use strict";var zxt=Oa();txe.exports=function(t){zxt.select(t).selectAll(".hm image").style("opacity",function(r){return r.trace.opacity})}});var g8=ye((Bur,ixe)=>{"use strict";var rxe=vf(),S4=Dr(),p8=S4.isArrayOrTypedArray,Oxt=ho(),qxt=tc().extractOpts;ixe.exports=function(t,r,n,i,a){a||(a={});var o=a.isContour,s=t.cd[0],l=s.trace,u=t.xa,c=t.ya,f=s.x,h=s.y,d=s.z,v=s.xCenter,_=s.yCenter,b=s.zmask,p=l.zhoverformat,k=f,E=h,S,L,x,C;if(t.index!==!1){try{x=Math.round(t.index[1]),C=Math.round(t.index[0])}catch(te){S4.error("Error hovering on heatmap, pointNumber must be [row,col], found:",t.index);return}if(x<0||x>=d[0].length||C<0||C>d.length)return}else{if(rxe.inbox(r-f[0],r-f[f.length-1],0)>0||rxe.inbox(n-h[0],n-h[h.length-1],0)>0)return;if(o){var M;for(k=[2*f[0]-f[1]],M=1;M{"use strict";nxe.exports={attributes:PT(),supplyDefaults:i_e(),calc:c8(),plot:d8(),colorbar:S_(),style:v8(),hoverPoints:g8(),moduleType:"trace",name:"heatmap",basePlotModule:ph(),categories:["cartesian","svg","2dMap","showLegend"],meta:{}}});var sxe=ye((Uur,oxe)=>{"use strict";oxe.exports=axe()});var tG=ye((Vur,lxe)=>{"use strict";lxe.exports=function(t,r){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}});var cxe=ye((Gur,uxe)=>{"use strict";uxe.exports={eventDataKeys:["binNumber"]}});var m8=ye((Hur,vxe)=>{"use strict";var Ip=Lm(),fxe=df().axisHoverFormat,{hovertemplateAttrs:Bxt,texttemplateAttrs:Nxt,templatefallbackAttrs:hxe}=Ll(),rG=ec(),dxe=tG(),Uxt=cxe(),iG=Ao().extendFlat;vxe.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:fxe("x"),yhoverformat:fxe("y"),text:iG({},Ip.text,{}),hovertext:iG({},Ip.hovertext,{}),orientation:Ip.orientation,histfunc:{valType:"enumerated",values:["count","sum","avg","min","max"],dflt:"count",editType:"calc"},histnorm:{valType:"enumerated",values:["","percent","probability","density","probability density"],dflt:"",editType:"calc"},cumulative:{enabled:{valType:"boolean",dflt:!1,editType:"calc"},direction:{valType:"enumerated",values:["increasing","decreasing"],dflt:"increasing",editType:"calc"},currentbin:{valType:"enumerated",values:["include","exclude","half"],dflt:"include",editType:"calc"},editType:"calc"},nbinsx:{valType:"integer",min:0,dflt:0,editType:"calc"},xbins:dxe("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:dxe("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:Bxt({},{keys:Uxt.eventDataKeys}),hovertemplatefallback:hxe(),texttemplate:Nxt({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),texttemplatefallback:hxe({editType:"plot"}),textposition:iG({},Ip.textposition,{arrayOk:!1}),textfont:rG({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:rG({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:rG({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:Ip.insidetextanchor,textangle:Ip.textangle,cliponaxis:Ip.cliponaxis,constraintext:Ip.constraintext,marker:Ip.marker,offsetgroup:Ip.offsetgroup,alignmentgroup:Ip.alignmentgroup,selected:Ip.selected,unselected:Ip.unselected,zorder:Ip.zorder}});var yxe=ye((jur,mxe)=>{"use strict";var pxe=qa(),M4=Dr(),gxe=ka(),Vxt=r0().handleText,Gxt=VI(),Hxt=m8();mxe.exports=function(t,r,n,i){function a(k,E){return M4.coerce(t,r,Hxt,k,E)}var o=a("x"),s=a("y"),l=a("cumulative.enabled");l&&(a("cumulative.direction"),a("cumulative.currentbin")),a("text");var u=a("textposition");Vxt(t,r,i,a,u,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat");var c=a("orientation",s&&!o?"h":"v"),f=c==="v"?"x":"y",h=c==="v"?"y":"x",d=o&&s?Math.min(M4.minRowLength(o)&&M4.minRowLength(s)):M4.minRowLength(r[f]||[]);if(!d){r.visible=!1;return}r._length=d;var v=pxe.getComponentMethod("calendars","handleTraceDefaults");v(t,r,["x","y"],i);var _=r[h];_&&a("histfunc"),a("histnorm"),a("autobin"+f),Gxt(t,r,a,n,i),M4.coerceSelectionMarkerOpacity(r,a);var b=(r.marker.line||{}).color,p=pxe.getComponentMethod("errorbars","supplyDefaults");p(t,r,b||gxe.defaultLine,{axis:"y"}),p(t,r,b||gxe.defaultLine,{axis:"x",inherit:"y"}),a("zorder")}});var _8=ye((Wur,bxe)=>{"use strict";var E4=Dr(),jxt=hf(),y8=qa().traceIs,Wxt=Hb(),Xxt=r0().validateCornerradius,_xe=E4.nestedProperty,nG=Nb().getAxisGroup,xxe=[{aStr:{x:"xbins.start",y:"ybins.start"},name:"start"},{aStr:{x:"xbins.end",y:"ybins.end"},name:"end"},{aStr:{x:"xbins.size",y:"ybins.size"},name:"size"},{aStr:{x:"nbinsx",y:"nbinsy"},name:"nbins"}],Zxt=["x","y"];bxe.exports=function(t,r){var n=r._histogramBinOpts={},i=[],a={},o=[],s,l,u,c,f,h,d;function v(G,Z){return E4.coerce(s._input,s,s._module.attributes,G,Z)}function _(G){return G.orientation==="v"?"x":"y"}function b(G,Z){var j=jxt.getFromTrace({_fullLayout:r},G,Z);return j.type}function p(G,Z,j){var N=G.uid+"__"+j;Z||(Z=N);var H=b(G,j),te=G[j+"calendar"]||"",oe=n[Z],_e=!0;oe&&(H===oe.axType&&te===oe.calendar?(_e=!1,oe.traces.push(G),oe.dirs.push(j)):(Z=N,H!==oe.axType&&E4.warn(["Attempted to group the bins of trace",G.index,"set on a","type:"+H,"axis","with bins on","type:"+oe.axType,"axis."].join(" ")),te!==oe.calendar&&E4.warn(["Attempted to group the bins of trace",G.index,"set with a",te,"calendar","with bins",oe.calendar?"on a "+oe.calendar+" calendar":"w/o a set calendar"].join(" ")))),_e&&(n[Z]={traces:[G],dirs:[j],axType:H,calendar:G[j+"calendar"]||""}),G["_"+j+"bingroup"]=Z}for(f=0;f{"use strict";var Yxt=ET().hoverPoints,Kxt=ho().hoverLabelText;wxe.exports=function(t,r,n,i,a){var o=Yxt(t,r,n,i,a);if(o){t=o[0];var s=t.cd[t.index],l=t.cd[0].trace;if(!l.cumulative.enabled){var u=l.orientation==="h"?"y":"x";t[u+"Label"]=Kxt(t[u+"a"],[s.ph0,s.ph1],l[u+"hoverformat"])}return o}}});var aG=ye((Zur,Axe)=>{"use strict";Axe.exports=function(t,r,n,i,a){if(t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"zLabelVal"in r&&(t.z=r.zLabelVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),!(n.cumulative||{}).enabled){var o=Array.isArray(a)?i[0].pts[a[0]][a[1]]:i[a].pts;t.pointNumbers=o,t.binNumber=t.pointNumber,delete t.pointNumber,delete t.pointIndex;var s;if(n._indexToPoints){s=[];for(var l=0;l{"use strict";Sxe.exports={attributes:m8(),layoutAttributes:UI(),supplyDefaults:yxe(),crossTraceDefaults:_8(),supplyLayoutDefaults:SV(),calc:ZV().calc,crossTraceCalc:jb().crossTraceCalc,plot:n2().plot,layerName:"barlayer",style:N0().style,styleOnSelect:N0().styleOnSelect,colorbar:$d(),hoverPoints:Txe(),selectPoints:kT(),eventData:aG(),moduleType:"trace",name:"histogram",basePlotModule:ph(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}});var kxe=ye((Kur,Exe)=>{"use strict";Exe.exports=Mxe()});var b8=ye((Jur,Pxe)=>{"use strict";var Gg=m8(),Cxe=tG(),x8=PT(),Jxt=Gl(),oG=df().axisHoverFormat,{hovertemplateAttrs:$xt,texttemplateAttrs:Qxt,templatefallbackAttrs:Lxe}=Ll(),ebt=Tu(),k4=Ao().extendFlat;Pxe.exports=k4({x:Gg.x,y:Gg.y,z:{valType:"data_array",editType:"calc"},marker:{color:{valType:"data_array",editType:"calc"},editType:"calc"},histnorm:Gg.histnorm,histfunc:Gg.histfunc,nbinsx:Gg.nbinsx,xbins:Cxe("x"),nbinsy:Gg.nbinsy,ybins:Cxe("y"),autobinx:Gg.autobinx,autobiny:Gg.autobiny,bingroup:k4({},Gg.bingroup,{}),xbingroup:k4({},Gg.bingroup,{}),ybingroup:k4({},Gg.bingroup,{}),xgap:x8.xgap,ygap:x8.ygap,zsmooth:x8.zsmooth,xhoverformat:oG("x"),yhoverformat:oG("y"),zhoverformat:oG("z",1),hovertemplate:$xt({},{keys:["z"]}),hovertemplatefallback:Lxe(),texttemplate:Qxt({arrayOk:!1,editType:"plot"},{keys:["z"]}),texttemplatefallback:Lxe({editType:"plot"}),textfont:x8.textfont,showlegend:k4({},Jxt.showlegend,{dflt:!1})},ebt("",{cLetter:"z",autoColorDflt:!1}))});var sG=ye(($ur,Rxe)=>{"use strict";var tbt=qa(),Ixe=Dr();Rxe.exports=function(t,r,n,i){var a=n("x"),o=n("y"),s=Ixe.minRowLength(a),l=Ixe.minRowLength(o);if(!s||!l){r.visible=!1;return}r._length=Math.min(s,l);var u=tbt.getComponentMethod("calendars","handleTraceDefaults");u(t,r,["x","y"],i);var c=n("z")||n("marker.color");c&&n("histfunc"),n("histnorm"),n("autobinx"),n("autobiny")}});var Fxe=ye((Qur,Dxe)=>{"use strict";var rbt=Dr(),ibt=sG(),nbt=UV(),abt=Qh(),obt=A4(),sbt=b8();Dxe.exports=function(t,r,n,i){function a(o,s){return rbt.coerce(t,r,sbt,o,s)}ibt(t,r,a,i),r.visible!==!1&&(nbt(t,r,a,i),abt(t,r,i,a,{prefix:"",cLetter:"z"}),a("hovertemplate"),a("hovertemplatefallback"),obt(a,i),a("xhoverformat"),a("yhoverformat"))}});var qxe=ye((ecr,Oxe)=>{"use strict";var lbt=g8(),zxe=ho().hoverLabelText;Oxe.exports=function(t,r,n,i,a){var o=lbt(t,r,n,i,a);if(o){t=o[0];var s=t.index,l=s[0],u=s[1],c=t.cd[0],f=c.trace,h=c.xRanges[u],d=c.yRanges[l];return t.xLabel=zxe(t.xa,[h[0],h[1]],f.xhoverformat),t.yLabel=zxe(t.ya,[d[0],d[1]],f.yhoverformat),o}}});var Nxe=ye((tcr,Bxe)=>{"use strict";Bxe.exports={attributes:b8(),supplyDefaults:Fxe(),crossTraceDefaults:_8(),calc:c8(),plot:d8(),layerName:"heatmaplayer",colorbar:S_(),style:v8(),hoverPoints:qxe(),eventData:aG(),moduleType:"trace",name:"histogram2d",basePlotModule:ph(),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{}}});var Vxe=ye((rcr,Uxe)=>{"use strict";Uxe.exports=Nxe()});var w8=ye((icr,Gxe)=>{"use strict";Gxe.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}});var C4=ye((ncr,Xxe)=>{"use strict";var mh=PT(),T8=pf(),jxe=df(),lG=jxe.axisHoverFormat,ubt=jxe.descriptionOnlyNumbers,cbt=Tu(),fbt=Pd().dash,hbt=ec(),zT=Ao().extendFlat,Wxe=w8(),dbt=Wxe.COMPARISON_OPS2,vbt=Wxe.INTERVAL_OPS,Hxe=T8.line;Xxe.exports=zT({z:mh.z,x:mh.x,x0:mh.x0,dx:mh.dx,y:mh.y,y0:mh.y0,dy:mh.dy,xperiod:mh.xperiod,yperiod:mh.yperiod,xperiod0:T8.xperiod0,yperiod0:T8.yperiod0,xperiodalignment:mh.xperiodalignment,yperiodalignment:mh.yperiodalignment,text:mh.text,hovertext:mh.hovertext,transpose:mh.transpose,xtype:mh.xtype,ytype:mh.ytype,xhoverformat:lG("x"),yhoverformat:lG("y"),zhoverformat:lG("z",1),hovertemplate:mh.hovertemplate,hovertemplatefallback:mh.hovertemplatefallback,texttemplate:zT({},mh.texttemplate,{}),texttemplatefallback:mh.texttemplatefallback,textfont:zT({},mh.textfont,{}),hoverongaps:mh.hoverongaps,connectgaps:zT({},mh.connectgaps,{}),fillcolor:{valType:"color",editType:"calc"},autocontour:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"contours.start":void 0,"contours.end":void 0,"contours.size":void 0}},ncontours:{valType:"integer",dflt:15,min:1,editType:"calc"},contours:{type:{valType:"enumerated",values:["levels","constraint"],dflt:"levels",editType:"calc"},start:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},end:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},size:{valType:"number",dflt:null,min:0,editType:"plot",impliedEdits:{"^autocontour":!1}},coloring:{valType:"enumerated",values:["fill","heatmap","lines","none"],dflt:"fill",editType:"calc"},showlines:{valType:"boolean",dflt:!0,editType:"plot"},showlabels:{valType:"boolean",dflt:!1,editType:"plot"},labelfont:hbt({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:ubt("contour label")},operation:{valType:"enumerated",values:[].concat(dbt).concat(vbt),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:zT({},Hxe.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:fbt,smoothing:zT({},Hxe.smoothing,{}),editType:"plot"},zorder:T8.zorder},cbt("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))});var cG=ye((acr,Yxe)=>{"use strict";var wv=b8(),Rm=C4(),pbt=Tu(),uG=df().axisHoverFormat,Zxe=Ao().extendFlat;Yxe.exports=Zxe({x:wv.x,y:wv.y,z:wv.z,marker:wv.marker,histnorm:wv.histnorm,histfunc:wv.histfunc,nbinsx:wv.nbinsx,xbins:wv.xbins,nbinsy:wv.nbinsy,ybins:wv.ybins,autobinx:wv.autobinx,autobiny:wv.autobiny,bingroup:wv.bingroup,xbingroup:wv.xbingroup,ybingroup:wv.ybingroup,autocontour:Rm.autocontour,ncontours:Rm.ncontours,contours:Rm.contours,line:{color:Rm.line.color,width:Zxe({},Rm.line.width,{dflt:.5}),dash:Rm.line.dash,smoothing:Rm.line.smoothing,editType:"plot"},xhoverformat:uG("x"),yhoverformat:uG("y"),zhoverformat:uG("z",1),hovertemplate:wv.hovertemplate,hovertemplatefallback:wv.hovertemplatefallback,texttemplate:Rm.texttemplate,texttemplatefallback:Rm.texttemplatefallback,textfont:Rm.textfont},pbt("",{cLetter:"z",editTypeOverride:"calc"}))});var A8=ye((ocr,Kxe)=>{"use strict";Kxe.exports=function(t,r,n,i){var a=i("contours.start"),o=i("contours.end"),s=a===!1||o===!1,l=n("contours.size"),u;s?u=r.autocontour=!0:u=n("autocontour",!1),(u||!l)&&n("ncontours")}});var fG=ye((scr,Jxe)=>{"use strict";var gbt=Dr();Jxe.exports=function(t,r,n,i){i||(i={});var a=t("contours.showlabels");if(a){var o=r.font;gbt.coerceFont(t,"contours.labelfont",o,{overrideDflt:{color:n}}),t("contours.labelformat")}i.hasHover!==!1&&t("zhoverformat")}});var S8=ye((lcr,$xe)=>{"use strict";var mbt=Qh(),ybt=fG();$xe.exports=function(t,r,n,i,a){var o=n("contours.coloring"),s,l="";o==="fill"&&(s=n("contours.showlines")),s!==!1&&(o!=="lines"&&(l=n("line.color","#000")),n("line.width",.5),n("line.dash")),o!=="none"&&(t.showlegend!==!0&&(r.showlegend=!1),r._dfltShowLegend=!1,mbt(t,r,i,n,{prefix:"",cLetter:"z"})),n("line.smoothing"),ybt(n,i,l,a)}});var rbe=ye((ucr,tbe)=>{"use strict";var Qxe=Dr(),_bt=sG(),xbt=A8(),bbt=S8(),wbt=A4(),ebe=cG();tbe.exports=function(t,r,n,i){function a(s,l){return Qxe.coerce(t,r,ebe,s,l)}function o(s){return Qxe.coerce2(t,r,ebe,s)}_bt(t,r,a,i),r.visible!==!1&&(xbt(t,r,a,o),bbt(t,r,a,i),a("xhoverformat"),a("yhoverformat"),a("hovertemplate"),a("hovertemplatefallback"),r.contours&&r.contours.coloring==="heatmap"&&wbt(a,i))}});var vG=ye((ccr,nbe)=>{"use strict";var dG=ho(),hG=Dr();nbe.exports=function(t,r){var n=t.contours;if(t.autocontour){var i=t.zmin,a=t.zmax;(t.zauto||i===void 0)&&(i=hG.aggNums(Math.min,null,r)),(t.zauto||a===void 0)&&(a=hG.aggNums(Math.max,null,r));var o=ibe(i,a,t.ncontours);n.size=o.dtick,n.start=dG.tickFirst(o),o.range.reverse(),n.end=dG.tickFirst(o),n.start===i&&(n.start+=n.size),n.end===a&&(n.end-=n.size),n.start>n.end&&(n.start=n.end=(n.start+n.end)/2),t._input.contours||(t._input.contours={}),hG.extendFlat(t._input.contours,{start:n.start,end:n.end,size:n.size}),t._input.autocontour=!0}else if(n.type!=="constraint"){var s=n.start,l=n.end,u=t._input.contours;if(s>l&&(n.start=u.start=l,l=n.end=u.end=s,s=n.start),!(n.size>0)){var c;s===l?c=1:c=ibe(s,l,t.ncontours).dtick,u.size=n.size=c}}};function ibe(e,t,r){var n={type:"linear",range:[e,t]};return dG.autoTicks(n,(t-e)/(r||15)),n}});var L4=ye((fcr,abe)=>{"use strict";abe.exports=function(t){return t.end+t.size/1e6}});var pG=ye((hcr,sbe)=>{"use strict";var obe=tc(),Tbt=c8(),Abt=vG(),Sbt=L4();sbe.exports=function(t,r){var n=Tbt(t,r),i=n[0].z;Abt(r,i);var a=r.contours,o=obe.extractOpts(r),s;if(a.coloring==="heatmap"&&o.auto&&r.autocontour===!1){var l=a.start,u=Sbt(a),c=a.size||1,f=Math.floor((u-l)/c)+1;isFinite(c)||(c=1,f=1);var h=l-c/2,d=h+f*c;s=[h,d]}else s=i;return obe.calc(t,r,{vals:s,cLetter:"z"}),n}});var P4=ye((dcr,lbe)=>{"use strict";lbe.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}});var gG=ye((vcr,ube)=>{"use strict";var M8=P4();ube.exports=function(t){var r=t[0].z,n=r.length,i=r[0].length,a=n===2||i===2,o,s,l,u,c,f,h,d,v;for(s=0;se?0:1)+(t[0][1]>e?0:2)+(t[1][1]>e?0:4)+(t[1][0]>e?0:8);if(r===5||r===10){var n=(t[0][0]+t[0][1]+t[1][0]+t[1][1])/4;return e>n?r===5?713:1114:r===5?104:208}return r===15?0:r}});var mG=ye((pcr,hbe)=>{"use strict";var E8=Dr(),OT=P4();hbe.exports=function(t,r,n){var i,a,o,s,l;for(r=r||.01,n=n||.01,o=0;o20?(o=OT.CHOOSESADDLE[o][(s[0]||s[1])<0?0:1],e.crossings[a]=OT.SADDLEREMAINDER[o]):delete e.crossings[a],s=OT.NEWDELTA[o],!s){E8.log("Found bad marching index:",o,t,e.level);break}l.push(fbe(e,t,s)),t[0]+=s[0],t[1]+=s[1],a=t.join(","),I4(l[l.length-1],l[l.length-2],n,i)&&l.pop();var v=s[0]&&(t[0]<0||t[0]>c-2)||s[1]&&(t[1]<0||t[1]>u-2),_=t[0]===f[0]&&t[1]===f[1]&&s[0]===h[0]&&s[1]===h[1];if(_||r&&v)break;o=e.crossings[a]}d===1e4&&E8.log("Infinite loop in contour?");var b=I4(l[0],l[l.length-1],n,i),p=0,k=.2*e.smoothing,E=[],S=0,L,x,C,M,g,P,T,z,O,V,G;for(d=1;d=S;d--)if(L=E[d],L=S&&L+E[x]z&&O--,e.edgepaths[O]=G.concat(l,V));break}H||(e.edgepaths[z]=l.concat(V))}for(z=0;z20&&t?e===208||e===1114?n=r[0]===0?1:-1:i=r[1]===0?1:-1:OT.BOTTOMSTART.indexOf(e)!==-1?i=1:OT.LEFTSTART.indexOf(e)!==-1?n=1:OT.TOPSTART.indexOf(e)!==-1?i=-1:n=-1,[n,i]}function fbe(e,t,r){var n=t[0]+Math.max(r[0],0),i=t[1]+Math.max(r[1],0),a=e.z[i][n],o=e.xaxis,s=e.yaxis;if(r[1]){var l=(e.level-a)/(e.z[i][n+1]-a),u=(l!==1?(1-l)*o.c2l(e.x[n]):0)+(l!==0?l*o.c2l(e.x[n+1]):0);return[o.c2p(o.l2c(u),!0),s.c2p(e.y[i],!0),n+l,i]}else{var c=(e.level-a)/(e.z[i+1][n]-a),f=(c!==1?(1-c)*s.c2l(e.y[i]):0)+(c!==0?c*s.c2l(e.y[i+1]):0);return[o.c2p(e.x[n],!0),s.c2p(s.l2c(f),!0),n,i+c]}}});var gbe=ye((gcr,pbe)=>{"use strict";var yG=w8(),Cbt=Eo();pbe.exports={"[]":dbe("[]"),"][":dbe("]["),">":_G(">"),"<":_G("<"),"=":_G("=")};function vbe(e,t){var r=Array.isArray(t),n;function i(a){return Cbt(a)?+a:null}return yG.COMPARISON_OPS2.indexOf(e)!==-1?n=i(r?t[0]:t):yG.INTERVAL_OPS.indexOf(e)!==-1?n=r?[i(t[0]),i(t[1])]:[i(t),i(t)]:yG.SET_OPS.indexOf(e)!==-1&&(n=r?t.map(i):[i(t)]),n}function dbe(e){return function(t){t=vbe(e,t);var r=Math.min(t[0],t[1]),n=Math.max(t[0],t[1]);return{start:r,end:n,size:n-r}}}function _G(e){return function(t){return t=vbe(e,t),{start:t,end:1/0,size:1/0}}}});var xG=ye((mcr,ybe)=>{"use strict";var mbe=Dr(),Lbt=gbe(),Pbt=L4();ybe.exports=function(t,r,n){for(var i=t.type==="constraint"?Lbt[t._operation](t.value):t,a=i.size,o=[],s=Pbt(i),l=n.trace._carpetTrace,u=l?{xaxis:l.aaxis,yaxis:l.baxis,x:n.a,y:n.b}:{xaxis:r.xaxis,yaxis:r.yaxis,x:n.x,y:n.y},c=i.start;c1e3){mbe.warn("Too many contours, clipping at 1000",t);break}return o}});var bG=ye((ycr,xbe)=>{"use strict";var qT=Dr();xbe.exports=function(e,t){var r,n,i,a=function(l){return l.reverse()},o=function(l){return l};switch(t){case"=":case"<":return e;case">":for(e.length!==1&&qT.warn("Contour data invalid for the specified inequality operation."),n=e[0],r=0;r{"use strict";bbe.exports=function(e,t){var r=e[0],n=r.z,i;switch(t.type){case"levels":var a=Math.min(n[0][0],n[0][1]);for(i=0;io.level||o.starts.length&&a===o.level)}break;case"constraint":if(r.prefixBoundary=!1,r.edgepaths.length)return;var s=r.x.length,l=r.y.length,u=-1/0,c=1/0;for(i=0;i":f>u&&(r.prefixBoundary=!0);break;case"<":(fu||r.starts.length&&d===c)&&(r.prefixBoundary=!0);break;case"][":h=Math.min(f[0],f[1]),d=Math.max(f[0],f[1]),hu&&(r.prefixBoundary=!0);break}break}}});var k8=ye(jv=>{"use strict";var D4=Oa(),zd=Dr(),qy=So(),Ibt=tc(),Abe=ru(),wbe=ho(),Tbe=ym(),Rbt=d8(),Sbe=gG(),Mbe=mG(),Dbt=xG(),Fbt=bG(),Ebe=wG(),R4=P4(),Dm=R4.LABELOPTIMIZER;jv.plot=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;zd.makeTraceGroups(i,n,"contour").each(function(s){var l=D4.select(this),u=s[0],c=u.trace,f=u.x,h=u.y,d=c.contours,v=Dbt(d,r,u),_=zd.ensureSingle(l,"g","heatmapcoloring"),b=[];d.coloring==="heatmap"&&(b=[s]),Rbt(t,r,b,_),Sbe(v),Mbe(v);var p=a.c2p(f[0],!0),k=a.c2p(f[f.length-1],!0),E=o.c2p(h[0],!0),S=o.c2p(h[h.length-1],!0),L=[[p,S],[k,S],[k,E],[p,E]],x=v;d.type==="constraint"&&(x=Fbt(v,d._operation)),zbt(l,L,d),Obt(l,x,L,d),qbt(l,v,t,u,d),Nbt(l,r,t,u,L)})};function zbt(e,t,r){var n=zd.ensureSingle(e,"g","contourbg"),i=n.selectAll("path").data(r.coloring==="fill"?[0]:[]);i.enter().append("path"),i.exit().remove(),i.attr("d","M"+t.join("L")+"Z").style("stroke","none")}function Obt(e,t,r,n){var i=n.coloring==="fill"||n.type==="constraint"&&n._operation!=="=",a="M"+r.join("L")+"Z";i&&Ebe(t,n);var o=zd.ensureSingle(e,"g","contourfill"),s=o.selectAll("path").data(i?t:[]);s.enter().append("path"),s.exit().remove(),s.each(function(l){var u=(l.prefixBoundary?a:"")+kbe(l,r);u?D4.select(this).attr("d",u).style("stroke","none"):D4.select(this).remove()})}function kbe(e,t){var r="",n=0,i=e.edgepaths.map(function(p,k){return k}),a=!0,o,s,l,u,c,f;function h(p){return Math.abs(p[1]-t[0][1])<.01}function d(p){return Math.abs(p[1]-t[2][1])<.01}function v(p){return Math.abs(p[0]-t[0][0])<.01}function _(p){return Math.abs(p[0]-t[2][0])<.01}for(;i.length;){for(f=qy.smoothopen(e.edgepaths[n],e.smoothing),r+=a?f:f.replace(/^M/,"L"),i.splice(i.indexOf(n),1),o=e.edgepaths[n][e.edgepaths[n].length-1],u=-1,l=0;l<4;l++){if(!o){zd.log("Missing end?",n,e);break}for(h(o)&&!_(o)?s=t[1]:v(o)?s=t[0]:d(o)?s=t[3]:_(o)&&(s=t[2]),c=0;c=0&&(s=b,u=c):Math.abs(o[1]-s[1])<.01?Math.abs(o[1]-b[1])<.01&&(b[0]-o[0])*(s[0]-b[0])>=0&&(s=b,u=c):zd.log("endpt to newendpt is not vert. or horz.",o,s,b)}if(o=s,u>=0)break;r+="L"+s}if(u===e.edgepaths.length){zd.log("unclosed perimeter path");break}n=u,a=i.indexOf(n)===-1,a&&(n=i[0],r+="Z")}for(n=0;nDm.MAXCOST*2)break;h&&(s/=2),o=u-s/2,l=o+s*1.5}if(f<=Dm.MAXCOST)return c};function Bbt(e,t,r,n){var i=t.width/2,a=t.height/2,o=e.x,s=e.y,l=e.theta,u=Math.cos(l)*i,c=Math.sin(l)*i,f=(o>n.center?n.right-o:o-n.left)/(u+Math.abs(Math.sin(l)*a)),h=(s>n.middle?n.bottom-s:s-n.top)/(Math.abs(c)+Math.cos(l)*a);if(f<1||h<1)return 1/0;var d=Dm.EDGECOST*(1/(f-1)+1/(h-1));d+=Dm.ANGLECOST*l*l;for(var v=o-u,_=s-c,b=o+u,p=s+c,k=0;k{"use strict";var Vbt=Oa(),TG=tc(),Gbt=L4();Cbe.exports=function(t){var r=t.contours,n=r.start,i=Gbt(r),a=r.size||1,o=Math.floor((i-n)/a)+1,s=r.coloring==="lines"?0:1,l=TG.extractOpts(t);isFinite(a)||(a=1,o=1);var u=l.reversescale?TG.flipScale(l.colorscale):l.colorscale,c=u.length,f=new Array(c),h=new Array(c),d,v,_=l.min,b=l.max;if(r.coloring==="heatmap"){for(v=0;v=b)&&(n<=_&&(n=_),i>=b&&(i=b),o=Math.floor((i-n)/a)+1,s=0),v=0;v_&&(f.unshift(_),h.unshift(h[0])),f[f.length-1]{"use strict";var C8=Oa(),Lbe=So(),Hbt=v8(),jbt=AG();Pbe.exports=function(t){var r=C8.select(t).selectAll("g.contour");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=C8.select(this),a=n[0].trace,o=a.contours,s=a.line,l=o.size||1,u=o.start,c=o.type==="constraint",f=!c&&o.coloring==="lines",h=!c&&o.coloring==="fill",d=f||h?jbt(a):null;i.selectAll("g.contourlevel").each(function(b){C8.select(this).selectAll("path").call(Lbe.lineGroupStyle,s.width,f?d(b.level):s.color,s.dash)});var v=o.labelfont;if(i.selectAll("g.contourlabels text").each(function(b){Lbe.font(C8.select(this),{weight:v.weight,style:v.style,variant:v.variant,textcase:v.textcase,lineposition:v.lineposition,shadow:v.shadow,family:v.family,size:v.size,color:v.color||(f?d(b.level):s.color)})}),c)i.selectAll("g.contourfill path").style("fill",a.fillcolor);else if(h){var _;i.selectAll("g.contourfill path").style("fill",function(b){return _===void 0&&(_=b.level),d(b.level+.5*l)}),_===void 0&&(_=u),i.selectAll("g.contourbg path").style("fill",d(_-.5*l))}}),Hbt(t)}});var P8=ye((Tcr,Rbe)=>{"use strict";var Ibe=tc(),Wbt=AG(),Xbt=L4();function Zbt(e,t,r){var n=t.contours,i=t.line,a=n.size||1,o=n.coloring,s=Wbt(t,{isColorbar:!0});if(o==="heatmap"){var l=Ibe.extractOpts(t);r._fillgradient=l.reversescale?Ibe.flipScale(l.colorscale):l.colorscale,r._zrange=[l.min,l.max]}else o==="fill"&&(r._fillcolor=s);r._line={color:o==="lines"?s:i.color,width:n.showlines!==!1?i.width:0,dash:i.dash},r._levels={start:n.start,end:Xbt(n),size:a}}Rbe.exports={min:"zmin",max:"zmax",calc:Zbt}});var SG=ye((Acr,Dbe)=>{"use strict";var I8=ka(),Ybt=g8();Dbe.exports=function(t,r,n,i,a){a||(a={}),a.isContour=!0;var o=Ybt(t,r,n,i,a);return o&&o.forEach(function(s){var l=s.trace;l.contours.type==="constraint"&&(l.fillcolor&&I8.opacity(l.fillcolor)?s.color=I8.addOpacity(l.fillcolor,1):l.contours.showlines&&I8.opacity(l.line.color)&&(s.color=I8.addOpacity(l.line.color,1)))}),o}});var zbe=ye((Scr,Fbe)=>{"use strict";Fbe.exports={attributes:cG(),supplyDefaults:rbe(),crossTraceDefaults:_8(),calc:pG(),plot:k8().plot,layerName:"contourlayer",style:L8(),colorbar:P8(),hoverPoints:SG(),moduleType:"trace",name:"histogram2dcontour",basePlotModule:ph(),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{}}});var qbe=ye((Mcr,Obe)=>{"use strict";Obe.exports=zbe()});var MG=ye((Ecr,Hbe)=>{"use strict";var Bbe=Eo(),Kbt=fG(),Vbe=ka(),Nbe=Vbe.addOpacity,Jbt=Vbe.opacity,Gbe=w8(),Ube=Dr().isArrayOrTypedArray,$bt=Gbe.CONSTRAINT_REDUCTION,Qbt=Gbe.COMPARISON_OPS2;Hbe.exports=function(t,r,n,i,a,o){var s=r.contours,l,u,c,f=n("contours.operation");if(s._operation=$bt[f],e2t(n,s),f==="="?l=s.showlines=!0:(l=n("contours.showlines"),c=n("fillcolor",Nbe((t.line||{}).color||a,.5))),l){var h=c&&Jbt(c)?Nbe(r.fillcolor,1):a;u=n("line.color",h),n("line.width",2),n("line.dash")}n("line.smoothing"),Kbt(n,i,u,o)};function e2t(e,t){var r;Qbt.indexOf(t.operation)===-1?(e("contours.value",[0,1]),Ube(t.value)?t.value.length>2?t.value=t.value.slice(2):t.length===0?t.value=[0,1]:t.length<2?(r=parseFloat(t.value[0]),t.value=[r,r+1]):t.value=[parseFloat(t.value[0]),parseFloat(t.value[1])]:Bbe(t.value)&&(r=parseFloat(t.value),t.value=[r,r+1])):(e("contours.value",0),Bbe(t.value)||(Ube(t.value)?t.value=parseFloat(t.value[0]):t.value=0))}});var Xbe=ye((kcr,Wbe)=>{"use strict";var EG=Dr(),t2t=e8(),r2t=Ig(),i2t=MG(),n2t=A8(),a2t=S8(),o2t=A4(),jbe=C4();Wbe.exports=function(t,r,n,i){function a(u,c){return EG.coerce(t,r,jbe,u,c)}function o(u){return EG.coerce2(t,r,jbe,u)}var s=t2t(t,r,a,i);if(!s){r.visible=!1;return}r2t(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hoverongaps"),a("hovertemplate"),a("hovertemplatefallback");var l=a("contours.type")==="constraint";a("connectgaps",EG.isArray1D(r.z)),l?i2t(t,r,a,i,n):(n2t(t,r,a,o),a2t(t,r,a,i)),r.contours&&r.contours.coloring==="heatmap"&&o2t(a,i),a("zorder")}});var Ybe=ye((Ccr,Zbe)=>{"use strict";Zbe.exports={attributes:C4(),supplyDefaults:Xbe(),calc:pG(),plot:k8().plot,style:L8(),colorbar:P8(),hoverPoints:SG(),moduleType:"trace",name:"contour",basePlotModule:ph(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}});var Jbe=ye((Lcr,Kbe)=>{"use strict";Kbe.exports=Ybe()});var kG=ye((Pcr,e2e)=>{"use strict";var{hovertemplateAttrs:s2t,texttemplateAttrs:l2t,templatefallbackAttrs:$be}=Ll(),u2t=Cg(),a0=pf(),c2t=Gl(),Qbe=Tu(),f2t=Pd().dash,M_=Ao().extendFlat,j0=a0.marker,F4=a0.line,h2t=j0.line;e2e.exports={a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},c:{valType:"data_array",editType:"calc"},sum:{valType:"number",dflt:0,min:0,editType:"calc"},mode:M_({},a0.mode,{dflt:"markers"}),text:M_({},a0.text,{}),texttemplate:l2t({editType:"plot"},{keys:["a","b","c","text"]}),texttemplatefallback:$be({editType:"plot"}),hovertext:M_({},a0.hovertext,{}),line:{color:F4.color,width:F4.width,dash:f2t,backoff:F4.backoff,shape:M_({},F4.shape,{values:["linear","spline"]}),smoothing:F4.smoothing,editType:"calc"},connectgaps:a0.connectgaps,cliponaxis:a0.cliponaxis,fill:M_({},a0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:u2t(),marker:M_({symbol:j0.symbol,opacity:j0.opacity,angle:j0.angle,angleref:j0.angleref,standoff:j0.standoff,maxdisplayed:j0.maxdisplayed,size:j0.size,sizeref:j0.sizeref,sizemin:j0.sizemin,sizemode:j0.sizemode,line:M_({width:h2t.width,editType:"calc"},Qbe("marker.line")),gradient:j0.gradient,editType:"calc"},Qbe("marker")),textfont:a0.textfont,textposition:a0.textposition,selected:a0.selected,unselected:a0.unselected,hoverinfo:M_({},c2t.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:a0.hoveron,hovertemplate:s2t(),hovertemplatefallback:$be()}});var n2e=ye((Icr,i2e)=>{"use strict";var t2e=Dr(),d2t=Sm(),BT=Ru(),v2t=$p(),p2t=R0(),r2e=tT(),g2t=D0(),m2t=Rg(),y2t=kG();i2e.exports=function(t,r,n,i){function a(h,d){return t2e.coerce(t,r,y2t,h,d)}var o=a("a"),s=a("b"),l=a("c"),u;if(o?(u=o.length,s?(u=Math.min(u,s.length),l&&(u=Math.min(u,l.length))):l?u=Math.min(u,l.length):u=0):s&&l&&(u=Math.min(s.length,l.length)),!u){r.visible=!1;return}r._length=u,a("sum"),a("text"),a("hovertext"),r.hoveron!=="fills"&&(a("hovertemplate"),a("hovertemplatefallback"));var c=u{"use strict";var CG=ho();a2e.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.aLabel=CG.tickText(a.aaxis,t.a,!0).text,i.bLabel=CG.tickText(a.baxis,t.b,!0).text,i.cLabel=CG.tickText(a.caxis,t.c,!0).text,i}});var c2e=ye((Dcr,u2e)=>{"use strict";var LG=Eo(),_2t=F0(),x2t=km(),b2t=z0(),w2t=O0().calcMarkerSize,s2e=["a","b","c"],l2e={a:["b","c"],b:["a","c"],c:["a","b"]};u2e.exports=function(t,r){var n=t._fullLayout[r.subplot],i=n.sum,a=r.sum||i,o={a:r.a,b:r.b,c:r.c},s=r.ids,l,u,c,f,h,d;for(l=0;l{"use strict";var T2t=sT();f2e.exports=function(t,r,n){var i=r.plotContainer;i.select(".scatterlayer").selectAll("*").remove();for(var a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:i,layerClipId:r._hasClipOnAxisFalse?r.clipIdRelative:null},l=r.layers.frontplot.select("g.scatterlayer"),u=0;u{"use strict";var A2t=fT();d2e.exports=function(t,r,n,i){var a=A2t(t,r,n,i);if(!a||a[0].index===!1)return;var o=a[0];if(o.index===void 0){var s=1-o.y0/t.ya._length,l=t.xa._length,u=l*s/2,c=l-u;return o.x0=Math.max(Math.min(o.x0,c),u),o.x1=Math.max(Math.min(o.x1,c),u),a}var f=o.cd[o.index],h=o.trace,d=o.subplot;o.a=f.a,o.b=f.b,o.c=f.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var v={};v[h.subplot]={_subplot:d};var _=h._module.formatLabels(f,h,v);o.aLabel=_.aLabel,o.bLabel=_.bLabel,o.cLabel=_.cLabel;var b=f.hi||h.hoverinfo,p=[];function k(S,L){p.push(S._hovertitle+": "+L)}if(!h.hovertemplate){var E=b.split("+");E.indexOf("all")!==-1&&(E=["a","b","c"]),E.indexOf("a")!==-1&&k(d.aaxis,o.aLabel),E.indexOf("b")!==-1&&k(d.baxis,o.bLabel),E.indexOf("c")!==-1&&k(d.caxis,o.cLabel)}return o.extraText=p.join("
"),o.hovertemplate=h.hovertemplate,a}});var g2e=ye((Ocr,p2e)=>{"use strict";p2e.exports=function(t,r,n,i,a){if(r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),i[a]){var o=i[a];t.a=o.a,t.b=o.b,t.c=o.c}else t.a=r.a,t.b=r.b,t.c=r.c;return t}});var E2e=ye((qcr,M2e)=>{"use strict";var w2e=Oa(),S2t=cd(),PG=qa(),By=Dr(),Fm=By.strTranslate,R8=By._,UT=ka(),D8=So(),z4=ym(),IG=Ao().extendFlat,M2t=Mc(),E_=ho(),m2e=yv(),y2e=vf(),T2e=Eg(),_2e=T2e.freeMode,E2t=T2e.rectMode,RG=Eb(),k2t=Of().prepSelect,C2t=Of().selectOnClick,L2t=Of().clearOutline,P2t=Of().clearSelectionsCache,A2e=hd();function S2e(e,t){this.id=e.id,this.graphDiv=e.graphDiv,this.init(t),this.makeFramework(t),this.updateFx(t),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}M2e.exports=S2e;var zm=S2e.prototype;zm.init=function(e){this.container=e._ternarylayer,this.defs=e._defs,this.layoutId=e._uid,this.traceHash={},this.layers={}};zm.plot=function(e,t){var r=this,n=t[r.id],i=t._size;r._hasClipOnAxisFalse=!1;for(var a=0;aNT*u?(p=u,b=p*NT):(b=l,p=b/NT),k=o*b/l,E=s*p/u,v=t.l+t.w*i-b/2,_=t.t+t.h*(1-a)-p/2,r.x0=v,r.y0=_,r.w=b,r.h=p,r.sum=c,r.xaxis={type:"linear",range:[f+2*d-c,c-f-2*h],domain:[i-k/2,i+k/2],_id:"x"},z4(r.xaxis,r.graphDiv._fullLayout),r.xaxis.setScale(),r.xaxis.isPtWithinRange=function(V){return V.a>=r.aaxis.range[0]&&V.a<=r.aaxis.range[1]&&V.b>=r.baxis.range[1]&&V.b<=r.baxis.range[0]&&V.c>=r.caxis.range[1]&&V.c<=r.caxis.range[0]},r.yaxis={type:"linear",range:[f,c-h-d],domain:[a-E/2,a+E/2],_id:"y"},z4(r.yaxis,r.graphDiv._fullLayout),r.yaxis.setScale(),r.yaxis.isPtWithinRange=function(){return!0};var S=r.yaxis.domain[0],L=r.aaxis=IG({},e.aaxis,{range:[f,c-h-d],side:"left",tickangle:(+e.aaxis.tickangle||0)-30,domain:[S,S+E*NT],anchor:"free",position:0,_id:"y",_length:b});z4(L,r.graphDiv._fullLayout),L.setScale();var x=r.baxis=IG({},e.baxis,{range:[c-f-d,h],side:"bottom",domain:r.xaxis.domain,anchor:"free",position:0,_id:"x",_length:b});z4(x,r.graphDiv._fullLayout),x.setScale();var C=r.caxis=IG({},e.caxis,{range:[c-f-h,d],side:"right",tickangle:(+e.caxis.tickangle||0)+30,domain:[S,S+E*NT],anchor:"free",position:0,_id:"y",_length:b});z4(C,r.graphDiv._fullLayout),C.setScale();var M="M"+v+","+(_+p)+"h"+b+"l-"+b/2+",-"+p+"Z";r.clipDef.select("path").attr("d",M),r.layers.plotbg.select("path").attr("d",M);var g="M0,"+p+"h"+b+"l-"+b/2+",-"+p+"Z";r.clipDefRelative.select("path").attr("d",g);var P=Fm(v,_);r.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",P),r.clipDefRelative.select("path").attr("transform",null);var T=Fm(v-x._offset,_+p);r.layers.baxis.attr("transform",T),r.layers.bgrid.attr("transform",T);var z=Fm(v+b/2,_)+"rotate(30)"+Fm(0,-L._offset);r.layers.aaxis.attr("transform",z),r.layers.agrid.attr("transform",z);var O=Fm(v+b/2,_)+"rotate(-30)"+Fm(0,-C._offset);r.layers.caxis.attr("transform",O),r.layers.cgrid.attr("transform",O),r.drawAxes(!0),r.layers.aline.select("path").attr("d",L.showline?"M"+v+","+(_+p)+"l"+b/2+",-"+p:"M0,0").call(UT.stroke,L.linecolor||"#000").style("stroke-width",(L.linewidth||0)+"px"),r.layers.bline.select("path").attr("d",x.showline?"M"+v+","+(_+p)+"h"+b:"M0,0").call(UT.stroke,x.linecolor||"#000").style("stroke-width",(x.linewidth||0)+"px"),r.layers.cline.select("path").attr("d",C.showline?"M"+(v+b/2)+","+_+"l"+b/2+","+p:"M0,0").call(UT.stroke,C.linecolor||"#000").style("stroke-width",(C.linewidth||0)+"px"),r.graphDiv._context.staticPlot||r.initInteractions(),D8.setClipUrl(r.layers.frontplot,r._hasClipOnAxisFalse?null:r.clipId,r.graphDiv)};zm.drawAxes=function(e){var t=this,r=t.graphDiv,n=t.id.slice(7)+"title",i=t.layers,a=t.aaxis,o=t.baxis,s=t.caxis;if(t.drawAx(a),t.drawAx(o),t.drawAx(s),e){var l=Math.max(a.showticklabels?a.tickfont.size/2:0,(s.showticklabels?s.tickfont.size*.75:0)+(s.ticks==="outside"?s.ticklen*.87:0)),u=(o.showticklabels?o.tickfont.size:0)+(o.ticks==="outside"?o.ticklen:0)+3;i["a-title"]=RG.draw(r,"a"+n,{propContainer:a,propName:t.id+".aaxis.title.text",placeholder:R8(r,"Click to enter Component A title"),attributes:{x:t.x0+t.w/2,y:t.y0-a.title.font.size/3-l,"text-anchor":"middle"}}),i["b-title"]=RG.draw(r,"b"+n,{propContainer:o,propName:t.id+".baxis.title.text",placeholder:R8(r,"Click to enter Component B title"),attributes:{x:t.x0-u,y:t.y0+t.h+o.title.font.size*.83+u,"text-anchor":"middle"}}),i["c-title"]=RG.draw(r,"c"+n,{propContainer:s,propName:t.id+".caxis.title.text",placeholder:R8(r,"Click to enter Component C title"),attributes:{x:t.x0+t.w+u,y:t.y0+t.h+s.title.font.size*.83+u,"text-anchor":"middle"}})}};zm.drawAx=function(e){var t=this,r=t.graphDiv,n=e._name,i=n.charAt(0),a=e._id,o=t.layers[n],s=30,l=i+"tickLayout",u=I2t(e);t[l]!==u&&(o.selectAll("."+a+"tick").remove(),t[l]=u),e.setScale();var c=E_.calcTicks(e),f=E_.clipEnds(e,c),h=E_.makeTransTickFn(e),d=E_.getTickSigns(e)[2],v=By.deg2rad(s),_=d*(e.linewidth||1)/2,b=d*e.ticklen,p=t.w,k=t.h,E=i==="b"?"M0,"+_+"l"+Math.sin(v)*b+","+Math.cos(v)*b:"M"+_+",0l"+Math.cos(v)*b+","+-Math.sin(v)*b,S={a:"M0,0l"+k+",-"+p/2,b:"M0,0l-"+p/2+",-"+k,c:"M0,0l-"+k+","+p/2}[i];E_.drawTicks(r,e,{vals:e.ticks==="inside"?f:c,layer:o,path:E,transFn:h,crisp:!1}),E_.drawGrid(r,e,{vals:f,layer:t.layers[i+"grid"],path:S,transFn:h,crisp:!1}),E_.drawLabels(r,e,{vals:c,layer:o,transFn:h,labelFns:E_.makeLabelFns(e,0,s)})};function I2t(e){return e.ticks+String(e.ticklen)+String(e.showticklabels)}var yd=A2e.MINZOOM/2+.87,R2t="m-0.87,.5h"+yd+"v3h-"+(yd+5.2)+"l"+(yd/2+2.6)+",-"+(yd*.87+4.5)+"l2.6,1.5l-"+yd/2+","+yd*.87+"Z",D2t="m0.87,.5h-"+yd+"v3h"+(yd+5.2)+"l-"+(yd/2+2.6)+",-"+(yd*.87+4.5)+"l-2.6,1.5l"+yd/2+","+yd*.87+"Z",F2t="m0,1l"+yd/2+","+yd*.87+"l2.6,-1.5l-"+(yd/2+2.6)+",-"+(yd*.87+4.5)+"l-"+(yd/2+2.6)+","+(yd*.87+4.5)+"l2.6,1.5l"+yd/2+",-"+yd*.87+"Z",z2t="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",x2e=!0;zm.clearOutline=function(){P2t(this.dragOptions),L2t(this.dragOptions.gd)};zm.initInteractions=function(){var e=this,t=e.layers.plotbg.select("path").node(),r=e.graphDiv,n=r._fullLayout._zoomlayer,i,a;this.dragOptions={element:t,gd:r,plotinfo:{id:e.id,domain:r._fullLayout[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis},subplot:e.id,prepFn:function(T,z,O){e.dragOptions.xaxes=[e.xaxis],e.dragOptions.yaxes=[e.yaxis],i=r._fullLayout._invScaleX,a=r._fullLayout._invScaleY;var V=e.dragOptions.dragmode=r._fullLayout.dragmode;_2e(V)?e.dragOptions.minDrag=1:e.dragOptions.minDrag=void 0,V==="zoom"?(e.dragOptions.moveFn=x,e.dragOptions.clickFn=p,e.dragOptions.doneFn=C,k(T,z,O)):V==="pan"?(e.dragOptions.moveFn=g,e.dragOptions.clickFn=p,e.dragOptions.doneFn=P,M(),e.clearOutline(r)):(E2t(V)||_2e(V))&&k2t(T,z,O,e.dragOptions,V)}};var o,s,l,u,c,f,h,d,v,_;function b(T){var z={};return z[e.id+".aaxis.min"]=T.a,z[e.id+".baxis.min"]=T.b,z[e.id+".caxis.min"]=T.c,z}function p(T,z){var O=r._fullLayout.clickmode;b2e(r),T===2&&(r.emit("plotly_doubleclick",null),PG.call("_guiRelayout",r,b({a:0,b:0,c:0}))),O.indexOf("select")>-1&&T===1&&C2t(z,r,[e.xaxis],[e.yaxis],e.id,e.dragOptions),O.indexOf("event")>-1&&y2e.click(r,z,e.id)}function k(T,z,O){var V=t.getBoundingClientRect();o=z-V.left,s=O-V.top,r._fullLayout._calcInverseTransform(r);var G=r._fullLayout._invTransform,Z=By.apply3DTransform(G)(o,s);o=Z[0],s=Z[1],l={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},c=l,u=e.aaxis.range[1]-l.a,f=S2t(e.graphDiv._fullLayout[e.id].bgcolor).getLuminance(),h="M0,"+e.h+"L"+e.w/2+", 0L"+e.w+","+e.h+"Z",d=!1,v=n.append("path").attr("class","zoombox").attr("transform",Fm(e.x0,e.y0)).style({fill:f>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",h),_=n.append("path").attr("class","zoombox-corners").attr("transform",Fm(e.x0,e.y0)).style({fill:UT.background,stroke:UT.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),e.clearOutline(r)}function E(T,z){return 1-z/e.h}function S(T,z){return 1-(T+(e.h-z)/Math.sqrt(3))/e.w}function L(T,z){return(T-(e.h-z)/Math.sqrt(3))/e.w}function x(T,z){var O=o+T*i,V=s+z*a,G=Math.max(0,Math.min(1,E(o,s),E(O,V))),Z=Math.max(0,Math.min(1,S(o,s),S(O,V))),j=Math.max(0,Math.min(1,L(o,s),L(O,V))),N=(G/2+j)*e.w,H=(1-G/2-Z)*e.w,te=(N+H)/2,oe=H-N,_e=(1-G)*e.h,Ee=_e-oe/NT;oe.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),_.transition().style("opacity",1).duration(200),d=!0),r.emit("plotly_relayouting",b(c))}function C(){b2e(r),c!==l&&(PG.call("_guiRelayout",r,b(c)),x2e&&r.data&&r._context.showTips&&(By.notifier(R8(r,"Double-click to zoom back out"),"long"),x2e=!1))}function M(){l={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},c=l}function g(T,z){var O=T/e.xaxis._m,V=z/e.yaxis._m;c={a:l.a-V,b:l.b+(O+V)/2,c:l.c-(O-V)/2};var G=[c.a,c.b,c.c].sort(By.sorterAsc),Z={a:G.indexOf(c.a),b:G.indexOf(c.b),c:G.indexOf(c.c)};G[0]<0&&(G[1]+G[0]/2<0?(G[2]+=G[0]+G[1],G[0]=G[1]=0):(G[2]+=G[0]/2,G[1]+=G[0]/2,G[0]=0),c={a:G[Z.a],b:G[Z.b],c:G[Z.c]},z=(l.a-c.a)*e.yaxis._m,T=(l.c-c.c-l.b+c.b)*e.xaxis._m);var j=Fm(e.x0+T,e.y0+z);e.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",j);var N=Fm(-T,-z);e.clipDefRelative.select("path").attr("transform",N),e.aaxis.range=[c.a,e.sum-c.b-c.c],e.baxis.range=[e.sum-c.a-c.c,c.b],e.caxis.range=[e.sum-c.a-c.b,c.c],e.drawAxes(!1),e._hasClipOnAxisFalse&&e.plotContainer.select(".scatterlayer").selectAll(".trace").call(D8.hideOutsideRangePoints,e),r.emit("plotly_relayouting",b(c))}function P(){PG.call("_guiRelayout",r,b(c))}t.onmousemove=function(T){y2e.hover(r,T,e.id),r._fullLayout._lasthover=t,r._fullLayout._hoversubplot=e.id},t.onmouseout=function(T){r._dragging||m2e.unhover(r,T)},m2e.init(this.dragOptions)};function b2e(e){w2e.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}});var zG=ye((Bcr,k2e)=>{"use strict";var O2t=Lh(),q2t=Cc().attributes,su=Rd(),B2t=mc().overrideAll,DG=Ao().extendFlat,FG={title:{text:su.title.text,font:su.title.font},color:su.color,tickmode:su.minor.tickmode,nticks:DG({},su.nticks,{dflt:6,min:1}),tick0:su.tick0,dtick:su.dtick,tickvals:su.tickvals,ticktext:su.ticktext,ticks:su.ticks,ticklen:su.ticklen,tickwidth:su.tickwidth,tickcolor:su.tickcolor,ticklabelstep:su.ticklabelstep,showticklabels:su.showticklabels,labelalias:su.labelalias,showtickprefix:su.showtickprefix,tickprefix:su.tickprefix,showticksuffix:su.showticksuffix,ticksuffix:su.ticksuffix,showexponent:su.showexponent,exponentformat:su.exponentformat,minexponent:su.minexponent,separatethousands:su.separatethousands,tickfont:su.tickfont,tickangle:su.tickangle,tickformat:su.tickformat,tickformatstops:su.tickformatstops,hoverformat:su.hoverformat,showline:DG({},su.showline,{dflt:!0}),linecolor:su.linecolor,linewidth:su.linewidth,showgrid:DG({},su.showgrid,{dflt:!0}),gridcolor:su.gridcolor,gridwidth:su.gridwidth,griddash:su.griddash,layer:su.layer,min:{valType:"number",dflt:0,min:0}},F8=k2e.exports=B2t({domain:q2t({name:"ternary"}),bgcolor:{valType:"color",dflt:O2t.background},sum:{valType:"number",dflt:1,min:0},aaxis:FG,baxis:FG,caxis:FG},"plot","from-root");F8.uirevision={valType:"any",editType:"none"};F8.aaxis.uirevision=F8.baxis.uirevision=F8.caxis.uirevision={valType:"any",editType:"none"}});var k_=ye((Ncr,C2e)=>{"use strict";var N2t=Dr(),U2t=vl(),V2t=Cc().defaults;C2e.exports=function(t,r,n,i){var a=i.type,o=i.attributes,s=i.handleDefaults,l=i.partition||"x",u=r._subplots[a],c=u.length,f=c&&u[0].replace(/\d+$/,""),h,d;function v(k,E){return N2t.coerce(h,d,o,k,E)}for(var _=0;_{"use strict";var G2t=ka(),H2t=vl(),z8=Dr(),j2t=k_(),W2t=e_(),X2t=t_(),Z2t=M3(),Y2t=bb(),K2t=t4(),P2e=zG(),L2e=["aaxis","baxis","caxis"];I2e.exports=function(t,r,n){j2t(t,r,n,{type:"ternary",attributes:P2e,handleDefaults:J2t,font:r.font,paper_bgcolor:r.paper_bgcolor})};function J2t(e,t,r,n){var i=r("bgcolor"),a=r("sum");n.bgColor=G2t.combine(i,n.paper_bgcolor);for(var o,s,l,u=0;u=a&&(c.min=0,f.min=0,h.min=0,e.aaxis&&delete e.aaxis.min,e.baxis&&delete e.baxis.min,e.caxis&&delete e.caxis.min)}function $2t(e,t,r,n){var i=P2e[t._name];function a(d,v){return z8.coerce(e,t,i,d,v)}a("uirevision",n.uirevision),t.type="linear";var o=a("color"),s=o!==i.color.dflt?o:r.font.color,l=t._name,u=l.charAt(0).toUpperCase(),c="Component "+u,f=a("title.text",c);t._hovertitle=f===c?f:u,z8.coerceFont(a,"title.font",r.font,{overrideDflt:{size:z8.bigFont(r.font.size),color:s}}),a("min"),Y2t(e,t,a,"linear"),X2t(e,t,a,"linear"),W2t(e,t,a,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),Z2t(e,t,a,{outerTicks:!0});var h=a("showticklabels");h&&(z8.coerceFont(a,"tickfont",r.font,{overrideDflt:{color:s}}),a("tickangle"),a("tickformat")),K2t(e,t,a,{dfltColor:o,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i}),a("hoverformat"),a("layer")}});var D2e=ye(W0=>{"use strict";var Q2t=E2e(),ewt=Id().getSubplotCalcData,twt=Dr().counterRegex,VT="ternary";W0.name=VT;var rwt=W0.attr="subplot";W0.idRoot=VT;W0.idRegex=W0.attrRegex=twt(VT);var iwt=W0.attributes={};iwt[rwt]={valType:"subplotid",dflt:"ternary",editType:"calc"};W0.layoutAttributes=zG();W0.supplyLayoutDefaults=R2e();W0.plot=function(t){for(var r=t._fullLayout,n=t.calcdata,i=r._subplots[VT],a=0;a{"use strict";F2e.exports={attributes:kG(),supplyDefaults:n2e(),colorbar:$d(),formatLabels:o2e(),calc:c2e(),plot:h2e(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:v2e(),selectPoints:hT(),eventData:g2e(),moduleType:"trace",name:"scatterternary",basePlotModule:D2e(),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}});var q2e=ye((Hcr,O2e)=>{"use strict";O2e.exports=z2e()});var OG=ye((jcr,N2e)=>{"use strict";var Fh=x4(),GT=Ao().extendFlat,B2e=df().axisHoverFormat;N2e.exports={y:Fh.y,x:Fh.x,x0:Fh.x0,y0:Fh.y0,xhoverformat:B2e("x"),yhoverformat:B2e("y"),name:GT({},Fh.name,{}),orientation:GT({},Fh.orientation,{}),bandwidth:{valType:"number",min:0,editType:"calc"},scalegroup:{valType:"string",dflt:"",editType:"calc"},scalemode:{valType:"enumerated",values:["width","count"],dflt:"width",editType:"calc"},spanmode:{valType:"enumerated",values:["soft","hard","manual"],dflt:"soft",editType:"calc"},span:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:Fh.fillcolor,points:GT({},Fh.boxpoints,{}),jitter:GT({},Fh.jitter,{}),pointpos:GT({},Fh.pointpos,{}),width:GT({},Fh.width,{}),marker:Fh.marker,text:Fh.text,hovertext:Fh.hovertext,hovertemplate:Fh.hovertemplate,hovertemplatefallback:Fh.hovertemplatefallback,quartilemethod:Fh.quartilemethod,box:{visible:{valType:"boolean",dflt:!1,editType:"plot"},width:{valType:"number",min:0,max:1,dflt:.25,editType:"plot"},fillcolor:{valType:"color",editType:"style"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"style"},editType:"plot"},meanline:{visible:{valType:"boolean",dflt:!1,editType:"plot"},color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"plot"},side:{valType:"enumerated",values:["both","positive","negative"],dflt:"both",editType:"calc"},offsetgroup:Fh.offsetgroup,alignmentgroup:Fh.alignmentgroup,selected:Fh.selected,unselected:Fh.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style"},zorder:Fh.zorder}});var NG=ye((Wcr,U2e)=>{"use strict";var qG=b4(),BG=Dr().extendFlat;U2e.exports={violinmode:BG({},qG.boxmode,{}),violingap:BG({},qG.boxgap,{}),violingroupgap:BG({},qG.boxgroupgap,{})}});var W2e=ye((Xcr,j2e)=>{"use strict";var V2e=Dr(),nwt=ka(),G2e=T4(),H2e=OG();j2e.exports=function(t,r,n,i){function a(L,x){return V2e.coerce(t,r,H2e,L,x)}function o(L,x){return V2e.coerce2(t,r,H2e,L,x)}if(G2e.handleSampleDefaults(t,r,a,i),r.visible!==!1){a("bandwidth"),a("side");var s=a("width");s||(a("scalegroup",r.name),a("scalemode"));var l=a("span"),u;Array.isArray(l)&&(u="manual"),a("spanmode",u);var c=a("line.color",(t.marker||{}).color||n),f=a("line.width"),h=a("fillcolor",nwt.addOpacity(r.line.color,.5));G2e.handlePointsDefaults(t,r,a,{prefix:""});var d=o("box.width"),v=o("box.fillcolor",h),_=o("box.line.color",c),b=o("box.line.width",f),p=a("box.visible",!!(d||v||_||b));p||(r.box={visible:!1});var k=o("meanline.color",c),E=o("meanline.width",f),S=a("meanline.visible",!!(k||E));S||(r.meanline={visible:!1}),a("quartilemethod"),a("zorder")}}});var Z2e=ye((Zcr,X2e)=>{"use strict";var awt=Dr(),owt=NG(),swt=ZI();X2e.exports=function(t,r,n){function i(a,o){return awt.coerce(t,r,owt,a,o)}swt._supply(t,r,n,i,"violin")}});var O8=ye(s2=>{"use strict";var lwt=Dr(),uwt={gaussian:function(e){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*e*e)}};s2.makeKDE=function(e,t,r){var n=r.length,i=uwt.gaussian,a=e.bandwidth,o=1/(n*a);return function(s){for(var l=0,u=0;u{"use strict";var UG=Dr(),VG=ho(),cwt=RV(),Y2e=O8(),fwt=fs().BADNUM;K2e.exports=function(t,r){var n=cwt(t,r);if(n[0].t.empty)return n;for(var i=t._fullLayout,a=VG.getFromId(t,r[r.orientation==="h"?"xaxis":"yaxis"]),o=1/0,s=-1/0,l=0,u=0,c=0;c{"use strict";var pwt=KI().setPositionOffset,$2e=["v","h"];Q2e.exports=function(t,r){for(var n=t.calcdata,i=r.xaxis,a=r.yaxis,o=0;o<$2e.length;o++){for(var s=$2e[o],l=s==="h"?a:i,u=[],c=0;c{"use strict";var GG=Oa(),HG=Dr(),gwt=So(),jG=JI(),mwt=yU(),ywt=O8();twe.exports=function(t,r,n,i){var a=t._context.staticPlot,o=t._fullLayout,s=r.xaxis,l=r.yaxis;function u(c,f){var h=mwt(c,{xaxis:s,yaxis:l,trace:f,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return gwt.smoothopen(h[0],1)}HG.makeTraceGroups(i,n,"trace violins").each(function(c){var f=GG.select(this),h=c[0],d=h.t,v=h.trace;if(v.visible!==!0||d.empty){f.remove();return}var _=d.bPos,b=d.bdPos,p=r[d.valLetter+"axis"],k=r[d.posLetter+"axis"],E=v.side==="both",S=E||v.side==="positive",L=E||v.side==="negative",x=f.selectAll("path.violin").data(HG.identity);x.enter().append("path").style("vector-effect",a?"none":"non-scaling-stroke").attr("class","violin"),x.exit().remove(),x.each(function(V){var G=GG.select(this),Z=V.density,j=Z.length,N=k.c2l(V.pos+_,!0),H=k.l2p(N),te;if(v.width)te=d.maxKDE/b;else{var oe=o._violinScaleGroupStats[v.scalegroup];te=v.scalemode==="count"?oe.maxKDE/b*(oe.maxCount/V.pts.length):oe.maxKDE/b}var _e,Ee,Ce,me,ie,Se,Le;if(S){for(Se=new Array(j),me=0;me{"use strict";var iwe=Oa(),HT=ka(),_wt=op().stylePoints;nwe.exports=function(t){var r=iwe.select(t).selectAll("g.trace.violins");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=n[0].trace,a=iwe.select(this),o=i.box||{},s=o.line||{},l=i.meanline||{},u=l.width;a.selectAll("path.violin").style("stroke-width",i.line.width+"px").call(HT.stroke,i.line.color).call(HT.fill,i.fillcolor),a.selectAll("path.box").style("stroke-width",s.width+"px").call(HT.stroke,s.color).call(HT.fill,o.fillcolor);var c={"stroke-width":u+"px","stroke-dasharray":2*u+"px,"+u+"px"};a.selectAll("path.mean").style(c).call(HT.stroke,l.color),a.selectAll("path.meanline").style(c).call(HT.stroke,l.color),_wt(a,i,t)})}});var uwe=ye((efr,lwe)=>{"use strict";var xwt=ka(),WG=Dr(),bwt=ho(),owe=qV(),swe=O8();lwe.exports=function(t,r,n,i,a){a||(a={});var o=a.hoverLayer,s=t.cd,l=s[0].trace,u=l.hoveron,c=u.indexOf("violins")!==-1,f=u.indexOf("kde")!==-1,h=[],d,v;if(c||f){var _=owe.hoverOnBoxes(t,r,n,i);if(f&&_.length>0){var b=t.xa,p=t.ya,k,E,S,L,x;l.orientation==="h"?(x=r,k="y",S=p,E="x",L=b):(x=n,k="x",S=b,E="y",L=p);var C=s[t.index];if(x>=C.span[0]&&x<=C.span[1]){var M=WG.extendFlat({},t),g=L.c2p(x,!0),P=swe.getKdeValue(C,l,x),T=swe.getPositionOnKdePath(C,l,g),z=S._offset,O=S._length;M[k+"0"]=T[0],M[k+"1"]=T[1],M[E+"0"]=M[E+"1"]=g,M[E+"Label"]=E+": "+bwt.hoverLabelText(L,x,l[E+"hoverformat"])+", "+s[0].t.labels.kde+" "+P.toFixed(3);for(var V=0,G=0;G<_.length;G++)if(_[G].attr==="med"){V=G;break}M.spikeDistance=_[V].spikeDistance;var Z=k+"Spike";M[Z]=_[V][Z],_[V].spikeDistance=void 0,_[V][Z]=void 0,M.hovertemplate=!1,h.push(M),v={},v[k+"1"]=WG.constrain(z+T[0],z,z+O),v[k+"2"]=WG.constrain(z+T[1],z,z+O),v[E+"1"]=v[E+"2"]=L._offset+g}}c&&(h=h.concat(_))}u.indexOf("points")!==-1&&(d=owe.hoverOnPoints(t,r,n));var j=o.selectAll(".violinline-"+l.uid).data(v?[0]:[]);return j.enter().append("line").classed("violinline-"+l.uid,!0).attr("stroke-width",1.5),j.exit().remove(),j.attr(v).call(xwt.stroke,t.color),i==="closest"?d?[d]:h:(d&&h.push(d),h)}});var fwe=ye((tfr,cwe)=>{"use strict";cwe.exports={attributes:OG(),layoutAttributes:NG(),supplyDefaults:W2e(),crossTraceDefaults:T4().crossTraceDefaults,supplyLayoutDefaults:Z2e(),calc:J2e(),crossTraceCalc:ewe(),plot:rwe(),style:awe(),styleOnSelect:op().styleOnSelect,hoverPoints:uwe(),selectPoints:BV(),moduleType:"trace",name:"violin",basePlotModule:ph(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{}}});var dwe=ye((rfr,hwe)=>{"use strict";hwe.exports=fwe()});var pwe=ye((ifr,vwe)=>{"use strict";vwe.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}});var ZG=ye((nfr,_we)=>{"use strict";var jc=Lm(),XG=pf().line,wwt=Gl(),gwe=df().axisHoverFormat,{hovertemplateAttrs:Twt,texttemplateAttrs:Awt,templatefallbackAttrs:mwe}=Ll(),ywe=pwe(),Ny=Ao().extendFlat,Swt=ka();_we.exports={x:jc.x,x0:jc.x0,dx:jc.dx,y:jc.y,y0:jc.y0,dy:jc.dy,xperiod:jc.xperiod,yperiod:jc.yperiod,xperiod0:jc.xperiod0,yperiod0:jc.yperiod0,xperiodalignment:jc.xperiodalignment,yperiodalignment:jc.yperiodalignment,xhoverformat:gwe("x"),yhoverformat:gwe("y"),hovertext:jc.hovertext,hovertemplate:Twt({},{keys:ywe.eventDataKeys}),hovertemplatefallback:mwe(),hoverinfo:Ny({},wwt.hoverinfo,{flags:["name","x","y","text","percent initial","percent previous","percent total"]}),textinfo:{valType:"flaglist",flags:["label","text","percent initial","percent previous","percent total","value"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:Awt({editType:"plot"},{keys:ywe.eventDataKeys.concat(["label","value"])}),texttemplatefallback:mwe({editType:"plot"}),text:jc.text,textposition:jc.textposition,insidetextanchor:Ny({},jc.insidetextanchor,{dflt:"middle"}),textangle:Ny({},jc.textangle,{dflt:0}),textfont:jc.textfont,insidetextfont:jc.insidetextfont,outsidetextfont:jc.outsidetextfont,constraintext:jc.constraintext,cliponaxis:jc.cliponaxis,orientation:Ny({},jc.orientation,{}),offset:Ny({},jc.offset,{arrayOk:!1}),width:Ny({},jc.width,{arrayOk:!1}),marker:Mwt(),connector:{fillcolor:{valType:"color",editType:"style"},line:{color:Ny({},XG.color,{dflt:Swt.defaultLine}),width:Ny({},XG.width,{dflt:0,editType:"plot"}),dash:XG.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:jc.offsetgroup,alignmentgroup:jc.alignmentgroup,zorder:jc.zorder};function Mwt(){var e=Ny({},jc.marker);return delete e.pattern,delete e.cornerradius,e}});var YG=ye((afr,xwe)=>{"use strict";xwe.exports={funnelmode:{valType:"enumerated",values:["stack","group","overlay"],dflt:"stack",editType:"calc"},funnelgap:{valType:"number",min:0,max:1,editType:"calc"},funnelgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var JG=ye((ofr,wwe)=>{"use strict";var q8=Dr(),Ewt=Hb(),kwt=r0().handleText,Cwt=eT(),Lwt=Ig(),bwe=ZG(),KG=ka();function Pwt(e,t,r,n){function i(f,h){return q8.coerce(e,t,bwe,f,h)}var a=Cwt(e,t,n,i);if(!a){t.visible=!1;return}Lwt(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("orientation",t.y&&!t.x?"v":"h"),i("offset"),i("width");var o=i("text");i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var s=i("textposition");kwt(e,t,n,i,s,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&!t.texttemplate&&i("textinfo",q8.isArrayOrTypedArray(o)?"text+value":"value");var l=i("marker.color",r);i("marker.line.color",KG.defaultLine),i("marker.line.width");var u=i("connector.visible");if(u){i("connector.fillcolor",Iwt(l));var c=i("connector.line.width");c&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function Iwt(e){var t=q8.isArrayOrTypedArray(e)?"#000":e;return KG.addOpacity(t,.5*KG.opacity(t))}function Rwt(e,t){var r,n;function i(o){return q8.coerce(n._input,n,bwe,o)}for(var a=0;a{"use strict";var Dwt=Dr(),Fwt=YG();Twe.exports=function(e,t,r){var n=!1;function i(s,l){return Dwt.coerce(e,t,Fwt,s,l)}for(var a=0;a{"use strict";var jT=Dr();Swe.exports=function(t,r){for(var n=0;n{"use strict";var Ewe=ho(),kwe=Dg(),zwt=Mwe(),Owt=z0(),O4=fs().BADNUM;Cwe.exports=function(t,r){var n=Ewe.getFromId(t,r.xaxis||"x"),i=Ewe.getFromId(t,r.yaxis||"y"),a,o,s,l,u,c,f,h;r.orientation==="h"?(a=n.makeCalcdata(r,"x"),s=i.makeCalcdata(r,"y"),l=kwe(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),l=kwe(r,n,"x",s),u=!!r.xperiodalignment,c="x"),o=l.vals;var d=Math.min(o.length,a.length),v=new Array(d);for(r._base=[],f=0;f{"use strict";var Pwe=jb().setGroupPositions;Iwe.exports=function(t,r){var n=t._fullLayout,i=t._fullData,a=t.calcdata,o=r.xaxis,s=r.yaxis,l=[],u=[],c=[],f,h;for(h=0;h{"use strict";var B8=Oa(),L_=Dr(),Dwe=So(),C_=fs().BADNUM,qwt=n2(),Bwt=bv().clearMinTextSize;zwe.exports=function(t,r,n,i){var a=t._fullLayout;Bwt("funnel",a),Nwt(t,r,n,i),Uwt(t,r,n,i),qwt.plot(t,r,n,i,{mode:a.funnelmode,norm:a.funnelmode,gap:a.funnelgap,groupgap:a.funnelgroupgap})};function Nwt(e,t,r,n){var i=t.xaxis,a=t.yaxis;L_.makeTraceGroups(n,r,"trace bars").each(function(o){var s=B8.select(this),l=o[0].trace,u=L_.ensureSingle(s,"g","regions");if(!l.connector||!l.connector.visible){u.remove();return}var c=l.orientation==="h",f=u.selectAll("g.region").data(L_.identity);f.enter().append("g").classed("region",!0),f.exit().remove();var h=f.size();f.each(function(d,v){if(!(v!==h-1&&!d.cNext)){var _=Fwe(d,i,a,c),b=_[0],p=_[1],k="";b[0]!==C_&&p[0]!==C_&&b[1]!==C_&&p[1]!==C_&&b[2]!==C_&&p[2]!==C_&&b[3]!==C_&&p[3]!==C_&&(c?k+="M"+b[0]+","+p[1]+"L"+b[2]+","+p[2]+"H"+b[3]+"L"+b[1]+","+p[1]+"Z":k+="M"+b[1]+","+p[1]+"L"+b[2]+","+p[3]+"V"+p[2]+"L"+b[1]+","+p[0]+"Z"),k===""&&(k="M0,0Z"),L_.ensureSingle(B8.select(this),"path").attr("d",k).call(Dwe.setClipUrl,t.layerClipId,e)}})})}function Uwt(e,t,r,n){var i=t.xaxis,a=t.yaxis;L_.makeTraceGroups(n,r,"trace bars").each(function(o){var s=B8.select(this),l=o[0].trace,u=L_.ensureSingle(s,"g","lines");if(!l.connector||!l.connector.visible||!l.connector.line.width){u.remove();return}var c=l.orientation==="h",f=u.selectAll("g.line").data(L_.identity);f.enter().append("g").classed("line",!0),f.exit().remove();var h=f.size();f.each(function(d,v){if(!(v!==h-1&&!d.cNext)){var _=Fwe(d,i,a,c),b=_[0],p=_[1],k="";b[3]!==void 0&&p[3]!==void 0&&(c?(k+="M"+b[0]+","+p[1]+"L"+b[2]+","+p[2],k+="M"+b[1]+","+p[1]+"L"+b[3]+","+p[2]):(k+="M"+b[1]+","+p[1]+"L"+b[2]+","+p[3],k+="M"+b[1]+","+p[0]+"L"+b[2]+","+p[2])),k===""&&(k="M0,0Z"),L_.ensureSingle(B8.select(this),"path").attr("d",k).call(Dwe.setClipUrl,t.layerClipId,e)}})})}function Fwe(e,t,r,n){var i=[],a=[],o=n?t:r,s=n?r:t;return i[0]=o.c2p(e.s0,!0),a[0]=s.c2p(e.p0,!0),i[1]=o.c2p(e.s1,!0),a[1]=s.c2p(e.p1,!0),i[2]=o.c2p(e.nextS0,!0),a[2]=s.c2p(e.nextP0,!0),i[3]=o.c2p(e.nextS1,!0),a[3]=s.c2p(e.nextP1,!0),n?[i,a]:[a,i]}});var Nwe=ye((hfr,Bwe)=>{"use strict";var q4=Oa(),qwe=So(),QG=ka(),Vwt=N1().DESELECTDIM,Gwt=N0(),Hwt=bv().resizeText,jwt=Gwt.styleTextPoints;function Wwt(e,t,r){var n=r||q4.select(e).selectAll('g[class^="funnellayer"]').selectAll("g.trace");Hwt(e,n,"funnel"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=q4.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var l=o.marker;q4.select(this).call(QG.fill,s.mc||l.color).call(QG.stroke,s.mlc||l.line.color).call(qwe.dashLine,l.line.dash,s.mlw||l.line.width).style("opacity",o.selectedpoints&&!s.selected?Vwt:1)}}),jwt(a,o,e),a.selectAll(".regions").each(function(){q4.select(this).selectAll("path").style("stroke-width",0).call(QG.fill,o.connector.fillcolor)}),a.selectAll(".lines").each(function(){var s=o.connector.line;qwe.lineGroupStyle(q4.select(this).selectAll("path"),s.width,s.color,s.dash)})})}Bwe.exports={style:Wwt}});var Gwe=ye((dfr,Vwe)=>{"use strict";var Uwe=ka().opacity,Xwt=ET().hoverOnBars,eH=Dr().formatPercent;Vwe.exports=function(t,r,n,i,a){var o=Xwt(t,r,n,i,a);if(o){var s=o.cd,l=s[0].trace,u=l.orientation==="h",c=o.index,f=s[c],h=u?"x":"y";o[h+"LabelVal"]=f.s,o.percentInitial=f.begR,o.percentInitialLabel=eH(f.begR,1),o.percentPrevious=f.difR,o.percentPreviousLabel=eH(f.difR,1),o.percentTotal=f.sumR,o.percentTotalLabel=eH(f.sumR,1);var d=f.hi||l.hoverinfo,v=[];if(d&&d!=="none"&&d!=="skip"){var _=d==="all",b=d.split("+"),p=function(k){return _||b.indexOf(k)!==-1};p("percent initial")&&v.push(o.percentInitialLabel+" of initial"),p("percent previous")&&v.push(o.percentPreviousLabel+" of previous"),p("percent total")&&v.push(o.percentTotalLabel+" of total")}return o.extraText=v.join("
"),o.color=Zwt(l,f),[o]}};function Zwt(e,t){var r=e.marker,n=t.mc||r.color,i=t.mlc||r.line.color,a=t.mlw||r.line.width;if(Uwe(n))return n;if(Uwe(i)&&a)return i}});var jwe=ye((vfr,Hwe)=>{"use strict";Hwe.exports=function(t,r){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"percentInitial"in r&&(t.percentInitial=r.percentInitial),"percentPrevious"in r&&(t.percentPrevious=r.percentPrevious),"percentTotal"in r&&(t.percentTotal=r.percentTotal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var Xwe=ye((pfr,Wwe)=>{"use strict";Wwe.exports={attributes:ZG(),layoutAttributes:YG(),supplyDefaults:JG().supplyDefaults,crossTraceDefaults:JG().crossTraceDefaults,supplyLayoutDefaults:Awe(),calc:Lwe(),crossTraceCalc:Rwe(),plot:Owe(),style:Nwe().style,hoverPoints:Gwe(),eventData:jwe(),selectPoints:kT(),moduleType:"trace",name:"funnel",basePlotModule:ph(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var Ywe=ye((gfr,Zwe)=>{"use strict";Zwe.exports=Xwe()});var Jwe=ye((mfr,Kwe)=>{"use strict";Kwe.exports={eventDataKeys:["initial","delta","final"]}});var iH=ye((yfr,t3e)=>{"use strict";var _c=Lm(),tH=pf().line,Ywt=Gl(),$we=df().axisHoverFormat,{hovertemplateAttrs:Kwt,texttemplateAttrs:Jwt,templatefallbackAttrs:Qwe}=Ll(),e3e=Jwe(),WT=Ao().extendFlat,$wt=ka();function rH(e){return{marker:{color:WT({},_c.marker.color,{arrayOk:!1,editType:"style"}),line:{color:WT({},_c.marker.line.color,{arrayOk:!1,editType:"style"}),width:WT({},_c.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}t3e.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:_c.x,x0:_c.x0,dx:_c.dx,y:_c.y,y0:_c.y0,dy:_c.dy,xperiod:_c.xperiod,yperiod:_c.yperiod,xperiod0:_c.xperiod0,yperiod0:_c.yperiod0,xperiodalignment:_c.xperiodalignment,yperiodalignment:_c.yperiodalignment,xhoverformat:$we("x"),yhoverformat:$we("y"),hovertext:_c.hovertext,hovertemplate:Kwt({},{keys:e3e.eventDataKeys}),hovertemplatefallback:Qwe(),hoverinfo:WT({},Ywt.hoverinfo,{flags:["name","x","y","text","initial","delta","final"]}),textinfo:{valType:"flaglist",flags:["label","text","initial","delta","final"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:Jwt({editType:"plot"},{keys:e3e.eventDataKeys.concat(["label"])}),texttemplatefallback:Qwe({editType:"plot"}),text:_c.text,textposition:_c.textposition,insidetextanchor:_c.insidetextanchor,textangle:_c.textangle,textfont:_c.textfont,insidetextfont:_c.insidetextfont,outsidetextfont:_c.outsidetextfont,constraintext:_c.constraintext,cliponaxis:_c.cliponaxis,orientation:_c.orientation,offset:_c.offset,width:_c.width,increasing:rH("increasing"),decreasing:rH("decreasing"),totals:rH("intermediate sums and total"),connector:{line:{color:WT({},tH.color,{dflt:$wt.defaultLine}),width:WT({},tH.width,{editType:"plot"}),dash:tH.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:_c.offsetgroup,alignmentgroup:_c.alignmentgroup,zorder:_c.zorder}});var nH=ye((_fr,r3e)=>{"use strict";r3e.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc"},waterfallgap:{valType:"number",min:0,max:1,editType:"calc"},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var XT=ye((xfr,i3e)=>{"use strict";i3e.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}});var oH=ye((bfr,s3e)=>{"use strict";var n3e=Dr(),Qwt=Hb(),e3t=r0().handleText,t3t=eT(),r3t=Ig(),a3e=iH(),i3t=ka(),o3e=XT(),n3t=o3e.INCREASING.COLOR,a3t=o3e.DECREASING.COLOR,o3t="#4499FF";function aH(e,t,r){e(t+".marker.color",r),e(t+".marker.line.color",i3t.defaultLine),e(t+".marker.line.width")}function s3t(e,t,r,n){function i(u,c){return n3e.coerce(e,t,a3e,u,c)}var a=t3t(e,t,n,i);if(!a){t.visible=!1;return}r3t(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("measure"),i("orientation",t.x&&!t.y?"h":"v"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback");var o=i("textposition");e3t(e,t,n,i,o,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&(i("texttemplate"),i("texttemplatefallback"),t.texttemplate||i("textinfo")),aH(i,"increasing",n3t),aH(i,"decreasing",a3t),aH(i,"totals",o3t);var s=i("connector.visible");if(s){i("connector.mode");var l=i("connector.line.width");l&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function l3t(e,t){var r,n;function i(o){return n3e.coerce(n._input,n,a3e,o)}if(t.waterfallmode==="group")for(var a=0;a{"use strict";var u3t=Dr(),c3t=nH();l3e.exports=function(e,t,r){var n=!1;function i(s,l){return u3t.coerce(e,t,c3t,s,l)}for(var a=0;a{"use strict";var c3e=ho(),f3e=Dg(),h3e=Dr().mergeArray,f3t=z0(),d3e=fs().BADNUM;function sH(e){return e==="a"||e==="absolute"}function lH(e){return e==="t"||e==="total"}v3e.exports=function(t,r){var n=c3e.getFromId(t,r.xaxis||"x"),i=c3e.getFromId(t,r.yaxis||"y"),a,o,s,l,u,c;r.orientation==="h"?(a=n.makeCalcdata(r,"x"),s=i.makeCalcdata(r,"y"),l=f3e(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),l=f3e(r,n,"x",s),u=!!r.xperiodalignment,c="x"),o=l.vals;for(var f=Math.min(o.length,a.length),h=new Array(f),d=0,v,_=!1,b=0;b{"use strict";var g3e=jb().setGroupPositions;m3e.exports=function(t,r){var n=t._fullLayout,i=t._fullData,a=t.calcdata,o=r.xaxis,s=r.yaxis,l=[],u=[],c=[],f,h;for(h=0;h{"use strict";var _3e=Oa(),N8=Dr(),h3t=So(),ZT=fs().BADNUM,d3t=n2(),v3t=bv().clearMinTextSize;x3e.exports=function(t,r,n,i){var a=t._fullLayout;v3t("waterfall",a),d3t.plot(t,r,n,i,{mode:a.waterfallmode,norm:a.waterfallmode,gap:a.waterfallgap,groupgap:a.waterfallgroupgap}),p3t(t,r,n,i)};function p3t(e,t,r,n){var i=t.xaxis,a=t.yaxis;N8.makeTraceGroups(n,r,"trace bars").each(function(o){var s=_3e.select(this),l=o[0].trace,u=N8.ensureSingle(s,"g","lines");if(!l.connector||!l.connector.visible){u.remove();return}var c=l.orientation==="h",f=l.connector.mode,h=u.selectAll("g.line").data(N8.identity);h.enter().append("g").classed("line",!0),h.exit().remove();var d=h.size();h.each(function(v,_){if(!(_!==d-1&&!v.cNext)){var b=g3t(v,i,a,c),p=b[0],k=b[1],E="";p[0]!==ZT&&k[0]!==ZT&&p[1]!==ZT&&k[1]!==ZT&&(f==="spanning"&&!v.isSum&&_>0&&(c?E+="M"+p[0]+","+k[1]+"V"+k[0]:E+="M"+p[1]+","+k[0]+"H"+p[0]),f!=="between"&&(v.isSum||_{"use strict";var U8=Oa(),w3e=So(),T3e=ka(),m3t=N1().DESELECTDIM,y3t=N0(),_3t=bv().resizeText,x3t=y3t.styleTextPoints;function b3t(e,t,r){var n=r||U8.select(e).selectAll('g[class^="waterfalllayer"]').selectAll("g.trace");_3t(e,n,"waterfall"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=U8.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var l=o[s.dir].marker;U8.select(this).call(T3e.fill,l.color).call(T3e.stroke,l.line.color).call(w3e.dashLine,l.line.dash,l.line.width).style("opacity",o.selectedpoints&&!s.selected?m3t:1)}}),x3t(a,o,e),a.selectAll(".lines").each(function(){var s=o.connector.line;w3e.lineGroupStyle(U8.select(this).selectAll("path"),s.width,s.color,s.dash)})})}A3e.exports={style:b3t}});var L3e=ye((Efr,C3e)=>{"use strict";var w3t=ho().hoverLabelText,M3e=ka().opacity,T3t=ET().hoverOnBars,E3e=XT(),k3e={increasing:E3e.INCREASING.SYMBOL,decreasing:E3e.DECREASING.SYMBOL};C3e.exports=function(t,r,n,i,a){var o=T3t(t,r,n,i,a);if(!o)return;var s=o.cd,l=s[0].trace,u=l.orientation==="h",c=u?"x":"y",f=u?t.xa:t.ya;function h(x){return w3t(f,x,l[c+"hoverformat"])}var d=o.index,v=s[d],_=v.isSum?v.b+v.s:v.rawS;o.initial=v.b+v.s-_,o.delta=_,o.final=o.initial+o.delta;var b=h(Math.abs(o.delta));o.deltaLabel=_<0?"("+b+")":b,o.finalLabel=h(o.final),o.initialLabel=h(o.initial);var p=v.hi||l.hoverinfo,k=[];if(p&&p!=="none"&&p!=="skip"){var E=p==="all",S=p.split("+"),L=function(x){return E||S.indexOf(x)!==-1};v.isSum||(L("final")&&(u?!L("x"):!L("y"))&&k.push(o.finalLabel),L("delta")&&(_<0?k.push(o.deltaLabel+" "+k3e.decreasing):k.push(o.deltaLabel+" "+k3e.increasing)),L("initial")&&k.push("Initial: "+o.initialLabel))}return k.length&&(o.extraText=k.join("
")),o.color=A3t(l,v),[o]};function A3t(e,t){var r=e[t.dir].marker,n=r.color,i=r.line.color,a=r.line.width;if(M3e(n))return n;if(M3e(i)&&a)return i}});var I3e=ye((kfr,P3e)=>{"use strict";P3e.exports=function(t,r){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"initial"in r&&(t.initial=r.initial),"delta"in r&&(t.delta=r.delta),"final"in r&&(t.final=r.final),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var D3e=ye((Cfr,R3e)=>{"use strict";R3e.exports={attributes:iH(),layoutAttributes:nH(),supplyDefaults:oH().supplyDefaults,crossTraceDefaults:oH().crossTraceDefaults,supplyLayoutDefaults:u3e(),calc:p3e(),crossTraceCalc:y3e(),plot:b3e(),style:S3e().style,hoverPoints:L3e(),eventData:I3e(),selectPoints:kT(),moduleType:"trace",name:"waterfall",basePlotModule:ph(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var z3e=ye((Lfr,F3e)=>{"use strict";F3e.exports=D3e()});var YT=ye((Pfr,O3e)=>{"use strict";O3e.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(e){return e.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(e){var t=e.slice(0,3);return t[1]=t[1]+"%",t[2]=t[2]+"%",t},suffix:["\xB0","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(e){var t=e.slice(0,4);return t[1]=t[1]+"%",t[2]=t[2]+"%",t},suffix:["\xB0","%","%",""]}}}});var uH=ye((Ifr,B3e)=>{"use strict";var S3t=Gl(),M3t=pf().zorder,{hovertemplateAttrs:E3t,templatefallbackAttrs:k3t}=Ll(),q3e=Ao().extendFlat,C3t=YT().colormodel,N4=["rgb","rgba","rgba256","hsl","hsla"],L3t=[],P3t=[];for(KT=0;KT{"use strict";var I3t=Dr(),R3t=uH(),N3e=YT(),D3t=Py().IMAGE_URL_PREFIX;U3e.exports=function(t,r){function n(o,s){return I3t.coerce(t,r,R3t,o,s)}n("source"),r.source&&!r.source.match(D3t)&&delete r.source,r._hasSource=!!r.source;var i=n("z");if(r._hasZ=!(i===void 0||!i.length||!i[0]||!i[0].length),!r._hasZ&&!r._hasSource){r.visible=!1;return}n("x0"),n("y0"),n("dx"),n("dy");var a;r._hasZ?(n("colormodel","rgb"),a=N3e.colormodel[r.colormodel],n("zmin",a.zminDflt||a.min),n("zmax",a.zmaxDflt||a.max)):r._hasSource&&(r.colormodel="rgba256",a=N3e.colormodel[r.colormodel],r.zmin=a.zminDflt,r.zmax=a.zmaxDflt),n("zsmooth"),n("text"),n("hovertext"),n("hovertemplate"),n("hovertemplatefallback"),r._length=null,n("zorder")}});var Uy=ye((Dfr,cH)=>{typeof Object.create=="function"?cH.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:cH.exports=function(t,r){if(r){t.super_=r;var n=function(){};n.prototype=r.prototype,t.prototype=new n,t.prototype.constructor=t}}});var fH=ye((Ffr,G3e)=>{G3e.exports=pb().EventEmitter});var W3e=ye(V8=>{"use strict";V8.byteLength=z3t;V8.toByteArray=q3t;V8.fromByteArray=U3t;var Om=[],X0=[],F3t=typeof Uint8Array!="undefined"?Uint8Array:Array,hH="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(l2=0,H3e=hH.length;l20)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");r===-1&&(r=t);var n=r===t?0:4-r%4;return[r,n]}function z3t(e){var t=j3e(e),r=t[0],n=t[1];return(r+n)*3/4-n}function O3t(e,t,r){return(t+r)*3/4-r}function q3t(e){var t,r=j3e(e),n=r[0],i=r[1],a=new F3t(O3t(e,n,i)),o=0,s=i>0?n-4:n,l;for(l=0;l>16&255,a[o++]=t>>8&255,a[o++]=t&255;return i===2&&(t=X0[e.charCodeAt(l)]<<2|X0[e.charCodeAt(l+1)]>>4,a[o++]=t&255),i===1&&(t=X0[e.charCodeAt(l)]<<10|X0[e.charCodeAt(l+1)]<<4|X0[e.charCodeAt(l+2)]>>2,a[o++]=t>>8&255,a[o++]=t&255),a}function B3t(e){return Om[e>>18&63]+Om[e>>12&63]+Om[e>>6&63]+Om[e&63]}function N3t(e,t,r){for(var n,i=[],a=t;as?s:o+a));return n===1?(t=e[r-1],i.push(Om[t>>2]+Om[t<<4&63]+"==")):n===2&&(t=(e[r-2]<<8)+e[r-1],i.push(Om[t>>10]+Om[t>>4&63]+Om[t<<2&63]+"=")),i.join("")}});var X3e=ye(dH=>{dH.read=function(e,t,r,n,i){var a,o,s=i*8-n-1,l=(1<>1,c=-7,f=r?i-1:0,h=r?-1:1,d=e[t+f];for(f+=h,a=d&(1<<-c)-1,d>>=-c,c+=s;c>0;a=a*256+e[t+f],f+=h,c-=8);for(o=a&(1<<-c)-1,a>>=-c,c+=n;c>0;o=o*256+e[t+f],f+=h,c-=8);if(a===0)a=1-u;else{if(a===l)return o?NaN:(d?-1:1)*(1/0);o=o+Math.pow(2,n),a=a-u}return(d?-1:1)*o*Math.pow(2,a-n)};dH.write=function(e,t,r,n,i,a){var o,s,l,u=a*8-i-1,c=(1<>1,h=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:a-1,v=n?1:-1,_=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=c):(o=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-o))<1&&(o--,l*=2),o+f>=1?t+=h/l:t+=h*Math.pow(2,1-f),t*l>=2&&(o++,l/=2),o+f>=c?(s=0,o=c):o+f>=1?(s=(t*l-1)*Math.pow(2,i),o=o+f):(s=t*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;e[r+d]=s&255,d+=v,s/=256,i-=8);for(o=o<0;e[r+d]=o&255,d+=v,o/=256,u-=8);e[r+d-v]|=_*128}});var c2=ye(eA=>{"use strict";var vH=W3e(),$T=X3e(),Z3e=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;eA.Buffer=ea;eA.SlowBuffer=X3t;eA.INSPECT_MAX_BYTES=50;var G8=2147483647;eA.kMaxLength=G8;ea.TYPED_ARRAY_SUPPORT=V3t();!ea.TYPED_ARRAY_SUPPORT&&typeof console!="undefined"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function V3t(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch(e){return!1}}Object.defineProperty(ea.prototype,"parent",{enumerable:!0,get:function(){if(ea.isBuffer(this))return this.buffer}});Object.defineProperty(ea.prototype,"offset",{enumerable:!0,get:function(){if(ea.isBuffer(this))return this.byteOffset}});function Vy(e){if(e>G8)throw new RangeError('The value "'+e+'" is invalid for option "size"');let t=new Uint8Array(e);return Object.setPrototypeOf(t,ea.prototype),t}function ea(e,t,r){if(typeof e=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return yH(e)}return $3e(e,t,r)}ea.poolSize=8192;function $3e(e,t,r){if(typeof e=="string")return H3t(e,t);if(ArrayBuffer.isView(e))return j3t(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(qm(e,ArrayBuffer)||e&&qm(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(qm(e,SharedArrayBuffer)||e&&qm(e.buffer,SharedArrayBuffer)))return gH(e,t,r);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=e.valueOf&&e.valueOf();if(n!=null&&n!==e)return ea.from(n,t,r);let i=W3t(e);if(i)return i;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return ea.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}ea.from=function(e,t,r){return $3e(e,t,r)};Object.setPrototypeOf(ea.prototype,Uint8Array.prototype);Object.setPrototypeOf(ea,Uint8Array);function Q3e(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function G3t(e,t,r){return Q3e(e),e<=0?Vy(e):t!==void 0?typeof r=="string"?Vy(e).fill(t,r):Vy(e).fill(t):Vy(e)}ea.alloc=function(e,t,r){return G3t(e,t,r)};function yH(e){return Q3e(e),Vy(e<0?0:_H(e)|0)}ea.allocUnsafe=function(e){return yH(e)};ea.allocUnsafeSlow=function(e){return yH(e)};function H3t(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!ea.isEncoding(t))throw new TypeError("Unknown encoding: "+t);let r=eTe(e,t)|0,n=Vy(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}function pH(e){let t=e.length<0?0:_H(e.length)|0,r=Vy(t);for(let n=0;n=G8)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+G8.toString(16)+" bytes");return e|0}function X3t(e){return+e!=e&&(e=0),ea.alloc(+e)}ea.isBuffer=function(t){return t!=null&&t._isBuffer===!0&&t!==ea.prototype};ea.compare=function(t,r){if(qm(t,Uint8Array)&&(t=ea.from(t,t.offset,t.byteLength)),qm(r,Uint8Array)&&(r=ea.from(r,r.offset,r.byteLength)),!ea.isBuffer(t)||!ea.isBuffer(r))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===r)return 0;let n=t.length,i=r.length;for(let a=0,o=Math.min(n,i);ai.length?(ea.isBuffer(o)||(o=ea.from(o)),o.copy(i,a)):Uint8Array.prototype.set.call(i,o,a);else if(ea.isBuffer(o))o.copy(i,a);else throw new TypeError('"list" argument must be an Array of Buffers');a+=o.length}return i};function eTe(e,t){if(ea.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||qm(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let r=e.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return mH(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return uTe(e).length;default:if(i)return n?-1:mH(e).length;t=(""+t).toLowerCase(),i=!0}}ea.byteLength=eTe;function Z3t(e,t,r){let n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,t>>>=0,r<=t))return"";for(e||(e="utf8");;)switch(e){case"hex":return nTt(this,t,r);case"utf8":case"utf-8":return rTe(this,t,r);case"ascii":return rTt(this,t,r);case"latin1":case"binary":return iTt(this,t,r);case"base64":return eTt(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return aTt(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}ea.prototype._isBuffer=!0;function u2(e,t,r){let n=e[t];e[t]=e[r],e[r]=n}ea.prototype.swap16=function(){let t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let r=0;rr&&(t+=" ... "),""};Z3e&&(ea.prototype[Z3e]=ea.prototype.inspect);ea.prototype.compare=function(t,r,n,i,a){if(qm(t,Uint8Array)&&(t=ea.from(t,t.offset,t.byteLength)),!ea.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(r===void 0&&(r=0),n===void 0&&(n=t?t.length:0),i===void 0&&(i=0),a===void 0&&(a=this.length),r<0||n>t.length||i<0||a>this.length)throw new RangeError("out of range index");if(i>=a&&r>=n)return 0;if(i>=a)return-1;if(r>=n)return 1;if(r>>>=0,n>>>=0,i>>>=0,a>>>=0,this===t)return 0;let o=a-i,s=n-r,l=Math.min(o,s),u=this.slice(i,a),c=t.slice(r,n);for(let f=0;f2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,bH(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof t=="string"&&(t=ea.from(t,n)),ea.isBuffer(t))return t.length===0?-1:Y3e(e,t,r,n,i);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):Y3e(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function Y3e(e,t,r,n,i){let a=1,o=e.length,s=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(e.length<2||t.length<2)return-1;a=2,o/=2,s/=2,r/=2}function l(c,f){return a===1?c[f]:c.readUInt16BE(f*a)}let u;if(i){let c=-1;for(u=r;uo&&(r=o-s),u=r;u>=0;u--){let c=!0;for(let f=0;fi&&(n=i)):n=i;let a=t.length;n>a/2&&(n=a/2);let o;for(o=0;o>>0,isFinite(n)?(n=n>>>0,i===void 0&&(i="utf8")):(i=n,n=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let a=this.length-r;if((n===void 0||n>a)&&(n=a),t.length>0&&(n<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");let o=!1;for(;;)switch(i){case"hex":return Y3t(this,t,r,n);case"utf8":case"utf-8":return K3t(this,t,r,n);case"ascii":case"latin1":case"binary":return J3t(this,t,r,n);case"base64":return $3t(this,t,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Q3t(this,t,r,n);default:if(o)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),o=!0}};ea.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function eTt(e,t,r){return t===0&&r===e.length?vH.fromByteArray(e):vH.fromByteArray(e.slice(t,r))}function rTe(e,t,r){r=Math.min(e.length,r);let n=[],i=t;for(;i239?4:a>223?3:a>191?2:1;if(i+s<=r){let l,u,c,f;switch(s){case 1:a<128&&(o=a);break;case 2:l=e[i+1],(l&192)===128&&(f=(a&31)<<6|l&63,f>127&&(o=f));break;case 3:l=e[i+1],u=e[i+2],(l&192)===128&&(u&192)===128&&(f=(a&15)<<12|(l&63)<<6|u&63,f>2047&&(f<55296||f>57343)&&(o=f));break;case 4:l=e[i+1],u=e[i+2],c=e[i+3],(l&192)===128&&(u&192)===128&&(c&192)===128&&(f=(a&15)<<18|(l&63)<<12|(u&63)<<6|c&63,f>65535&&f<1114112&&(o=f))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),i+=s}return tTt(n)}var K3e=4096;function tTt(e){let t=e.length;if(t<=K3e)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn)&&(r=n);let i="";for(let a=t;an&&(t=n),r<0?(r+=n,r<0&&(r=0)):r>n&&(r=n),rr)throw new RangeError("Trying to access beyond buffer length")}ea.prototype.readUintLE=ea.prototype.readUIntLE=function(t,r,n){t=t>>>0,r=r>>>0,n||ev(t,r,this.length);let i=this[t],a=1,o=0;for(;++o>>0,r=r>>>0,n||ev(t,r,this.length);let i=this[t+--r],a=1;for(;r>0&&(a*=256);)i+=this[t+--r]*a;return i};ea.prototype.readUint8=ea.prototype.readUInt8=function(t,r){return t=t>>>0,r||ev(t,1,this.length),this[t]};ea.prototype.readUint16LE=ea.prototype.readUInt16LE=function(t,r){return t=t>>>0,r||ev(t,2,this.length),this[t]|this[t+1]<<8};ea.prototype.readUint16BE=ea.prototype.readUInt16BE=function(t,r){return t=t>>>0,r||ev(t,2,this.length),this[t]<<8|this[t+1]};ea.prototype.readUint32LE=ea.prototype.readUInt32LE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+this[t+3]*16777216};ea.prototype.readUint32BE=ea.prototype.readUInt32BE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),this[t]*16777216+(this[t+1]<<16|this[t+2]<<8|this[t+3])};ea.prototype.readBigUInt64LE=P_(function(t){t=t>>>0,QT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&U4(t,this.length-8);let i=r+this[++t]*2**8+this[++t]*2**16+this[++t]*2**24,a=this[++t]+this[++t]*2**8+this[++t]*2**16+n*2**24;return BigInt(i)+(BigInt(a)<>>0,QT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&U4(t,this.length-8);let i=r*2**24+this[++t]*2**16+this[++t]*2**8+this[++t],a=this[++t]*2**24+this[++t]*2**16+this[++t]*2**8+n;return(BigInt(i)<>>0,r=r>>>0,n||ev(t,r,this.length);let i=this[t],a=1,o=0;for(;++o=a&&(i-=Math.pow(2,8*r)),i};ea.prototype.readIntBE=function(t,r,n){t=t>>>0,r=r>>>0,n||ev(t,r,this.length);let i=r,a=1,o=this[t+--i];for(;i>0&&(a*=256);)o+=this[t+--i]*a;return a*=128,o>=a&&(o-=Math.pow(2,8*r)),o};ea.prototype.readInt8=function(t,r){return t=t>>>0,r||ev(t,1,this.length),this[t]&128?(255-this[t]+1)*-1:this[t]};ea.prototype.readInt16LE=function(t,r){t=t>>>0,r||ev(t,2,this.length);let n=this[t]|this[t+1]<<8;return n&32768?n|4294901760:n};ea.prototype.readInt16BE=function(t,r){t=t>>>0,r||ev(t,2,this.length);let n=this[t+1]|this[t]<<8;return n&32768?n|4294901760:n};ea.prototype.readInt32LE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24};ea.prototype.readInt32BE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]};ea.prototype.readBigInt64LE=P_(function(t){t=t>>>0,QT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&U4(t,this.length-8);let i=this[t+4]+this[t+5]*2**8+this[t+6]*2**16+(n<<24);return(BigInt(i)<>>0,QT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&U4(t,this.length-8);let i=(r<<24)+this[++t]*2**16+this[++t]*2**8+this[++t];return(BigInt(i)<>>0,r||ev(t,4,this.length),$T.read(this,t,!0,23,4)};ea.prototype.readFloatBE=function(t,r){return t=t>>>0,r||ev(t,4,this.length),$T.read(this,t,!1,23,4)};ea.prototype.readDoubleLE=function(t,r){return t=t>>>0,r||ev(t,8,this.length),$T.read(this,t,!0,52,8)};ea.prototype.readDoubleBE=function(t,r){return t=t>>>0,r||ev(t,8,this.length),$T.read(this,t,!1,52,8)};function Rp(e,t,r,n,i,a){if(!ea.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}ea.prototype.writeUintLE=ea.prototype.writeUIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,n=n>>>0,!i){let s=Math.pow(2,8*n)-1;Rp(this,t,r,n,s,0)}let a=1,o=0;for(this[r]=t&255;++o>>0,n=n>>>0,!i){let s=Math.pow(2,8*n)-1;Rp(this,t,r,n,s,0)}let a=n-1,o=1;for(this[r+a]=t&255;--a>=0&&(o*=256);)this[r+a]=t/o&255;return r+n};ea.prototype.writeUint8=ea.prototype.writeUInt8=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,1,255,0),this[r]=t&255,r+1};ea.prototype.writeUint16LE=ea.prototype.writeUInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,65535,0),this[r]=t&255,this[r+1]=t>>>8,r+2};ea.prototype.writeUint16BE=ea.prototype.writeUInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,65535,0),this[r]=t>>>8,this[r+1]=t&255,r+2};ea.prototype.writeUint32LE=ea.prototype.writeUInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,4294967295,0),this[r+3]=t>>>24,this[r+2]=t>>>16,this[r+1]=t>>>8,this[r]=t&255,r+4};ea.prototype.writeUint32BE=ea.prototype.writeUInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,4294967295,0),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};function iTe(e,t,r,n,i){lTe(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r++]=a,a=a>>8,e[r++]=a,a=a>>8,e[r++]=a,a=a>>8,e[r++]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,r}function nTe(e,t,r,n,i){lTe(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r+7]=a,a=a>>8,e[r+6]=a,a=a>>8,e[r+5]=a,a=a>>8,e[r+4]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=o,o=o>>8,e[r+2]=o,o=o>>8,e[r+1]=o,o=o>>8,e[r]=o,r+8}ea.prototype.writeBigUInt64LE=P_(function(t,r=0){return iTe(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});ea.prototype.writeBigUInt64BE=P_(function(t,r=0){return nTe(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});ea.prototype.writeIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let l=Math.pow(2,8*n-1);Rp(this,t,r,n,l-1,-l)}let a=0,o=1,s=0;for(this[r]=t&255;++a>0)-s&255;return r+n};ea.prototype.writeIntBE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let l=Math.pow(2,8*n-1);Rp(this,t,r,n,l-1,-l)}let a=n-1,o=1,s=0;for(this[r+a]=t&255;--a>=0&&(o*=256);)t<0&&s===0&&this[r+a+1]!==0&&(s=1),this[r+a]=(t/o>>0)-s&255;return r+n};ea.prototype.writeInt8=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,1,127,-128),t<0&&(t=255+t+1),this[r]=t&255,r+1};ea.prototype.writeInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,32767,-32768),this[r]=t&255,this[r+1]=t>>>8,r+2};ea.prototype.writeInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,32767,-32768),this[r]=t>>>8,this[r+1]=t&255,r+2};ea.prototype.writeInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,2147483647,-2147483648),this[r]=t&255,this[r+1]=t>>>8,this[r+2]=t>>>16,this[r+3]=t>>>24,r+4};ea.prototype.writeInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};ea.prototype.writeBigInt64LE=P_(function(t,r=0){return iTe(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});ea.prototype.writeBigInt64BE=P_(function(t,r=0){return nTe(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function aTe(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function oTe(e,t,r,n,i){return t=+t,r=r>>>0,i||aTe(e,t,r,4,34028234663852886e22,-34028234663852886e22),$T.write(e,t,r,n,23,4),r+4}ea.prototype.writeFloatLE=function(t,r,n){return oTe(this,t,r,!0,n)};ea.prototype.writeFloatBE=function(t,r,n){return oTe(this,t,r,!1,n)};function sTe(e,t,r,n,i){return t=+t,r=r>>>0,i||aTe(e,t,r,8,17976931348623157e292,-17976931348623157e292),$T.write(e,t,r,n,52,8),r+8}ea.prototype.writeDoubleLE=function(t,r,n){return sTe(this,t,r,!0,n)};ea.prototype.writeDoubleBE=function(t,r,n){return sTe(this,t,r,!1,n)};ea.prototype.copy=function(t,r,n,i){if(!ea.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&i!==0&&(i=this.length),r>=t.length&&(r=t.length),r||(r=0),i>0&&i=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),t.length-r>>0,n=n===void 0?this.length:n>>>0,t||(t=0);let a;if(typeof t=="number")for(a=r;a2**32?i=J3e(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=J3e(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n},RangeError);function J3e(e){let t="",r=e.length,n=e[0]==="-"?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function oTt(e,t,r){QT(t,"offset"),(e[t]===void 0||e[t+r]===void 0)&&U4(t,e.length-(r+1))}function lTe(e,t,r,n,i,a){if(e>r||e3?t===0||t===BigInt(0)?s=`>= 0${o} and < 2${o} ** ${(a+1)*8}${o}`:s=`>= -(2${o} ** ${(a+1)*8-1}${o}) and < 2 ** ${(a+1)*8-1}${o}`:s=`>= ${t}${o} and <= ${r}${o}`,new JT.ERR_OUT_OF_RANGE("value",s,e)}oTt(n,i,a)}function QT(e,t){if(typeof e!="number")throw new JT.ERR_INVALID_ARG_TYPE(t,"number",e)}function U4(e,t,r){throw Math.floor(e)!==e?(QT(e,r),new JT.ERR_OUT_OF_RANGE(r||"offset","an integer",e)):t<0?new JT.ERR_BUFFER_OUT_OF_BOUNDS:new JT.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}var sTt=/[^+/0-9A-Za-z-_]/g;function lTt(e){if(e=e.split("=")[0],e=e.trim().replace(sTt,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function mH(e,t){t=t||1/0;let r,n=e.length,i=null,a=[];for(let o=0;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}else if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,r&63|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return a}function uTt(e){let t=[];for(let r=0;r>8,i=r%256,a.push(i),a.push(n);return a}function uTe(e){return vH.toByteArray(lTt(e))}function H8(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function qm(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function bH(e){return e!==e}var fTt=function(){let e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){let n=r*16;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function P_(e){return typeof BigInt=="undefined"?hTt:e}function hTt(){throw new Error("BigInt not supported")}});var j8=ye((Nfr,cTe)=>{"use strict";cTe.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var t={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var i=42;t[r]=i;for(var a in t)return!1;if(typeof Object.keys=="function"&&Object.keys(t).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(t).length!==0)return!1;var o=Object.getOwnPropertySymbols(t);if(o.length!==1||o[0]!==r||!Object.prototype.propertyIsEnumerable.call(t,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var s=Object.getOwnPropertyDescriptor(t,r);if(s.value!==i||s.enumerable!==!0)return!1}return!0}});var V4=ye((Ufr,fTe)=>{"use strict";var dTt=j8();fTe.exports=function(){return dTt()&&!!Symbol.toStringTag}});var wH=ye((Vfr,hTe)=>{"use strict";hTe.exports=Object});var vTe=ye((Gfr,dTe)=>{"use strict";dTe.exports=Error});var gTe=ye((Hfr,pTe)=>{"use strict";pTe.exports=EvalError});var yTe=ye((jfr,mTe)=>{"use strict";mTe.exports=RangeError});var xTe=ye((Wfr,_Te)=>{"use strict";_Te.exports=ReferenceError});var TH=ye((Xfr,bTe)=>{"use strict";bTe.exports=SyntaxError});var tA=ye((Zfr,wTe)=>{"use strict";wTe.exports=TypeError});var ATe=ye((Yfr,TTe)=>{"use strict";TTe.exports=URIError});var MTe=ye((Kfr,STe)=>{"use strict";STe.exports=Math.abs});var kTe=ye((Jfr,ETe)=>{"use strict";ETe.exports=Math.floor});var LTe=ye(($fr,CTe)=>{"use strict";CTe.exports=Math.max});var ITe=ye((Qfr,PTe)=>{"use strict";PTe.exports=Math.min});var DTe=ye((ehr,RTe)=>{"use strict";RTe.exports=Math.pow});var zTe=ye((thr,FTe)=>{"use strict";FTe.exports=Math.round});var qTe=ye((rhr,OTe)=>{"use strict";OTe.exports=Number.isNaN||function(t){return t!==t}});var NTe=ye((ihr,BTe)=>{"use strict";var vTt=qTe();BTe.exports=function(t){return vTt(t)||t===0?t:t<0?-1:1}});var VTe=ye((nhr,UTe)=>{"use strict";UTe.exports=Object.getOwnPropertyDescriptor});var f2=ye((ahr,GTe)=>{"use strict";var W8=VTe();if(W8)try{W8([],"length")}catch(e){W8=null}GTe.exports=W8});var G4=ye((ohr,HTe)=>{"use strict";var X8=Object.defineProperty||!1;if(X8)try{X8({},"a",{value:1})}catch(e){X8=!1}HTe.exports=X8});var XTe=ye((shr,WTe)=>{"use strict";var jTe=typeof Symbol!="undefined"&&Symbol,pTt=j8();WTe.exports=function(){return typeof jTe!="function"||typeof Symbol!="function"||typeof jTe("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:pTt()}});var AH=ye((lhr,ZTe)=>{"use strict";ZTe.exports=typeof Reflect!="undefined"&&Reflect.getPrototypeOf||null});var SH=ye((uhr,YTe)=>{"use strict";var gTt=wH();YTe.exports=gTt.getPrototypeOf||null});var $Te=ye((chr,JTe)=>{"use strict";var mTt="Function.prototype.bind called on incompatible ",yTt=Object.prototype.toString,_Tt=Math.max,xTt="[object Function]",KTe=function(t,r){for(var n=[],i=0;i{"use strict";var TTt=$Te();QTe.exports=Function.prototype.bind||TTt});var Z8=ye((hhr,eAe)=>{"use strict";eAe.exports=Function.prototype.call});var MH=ye((dhr,tAe)=>{"use strict";tAe.exports=Function.prototype.apply});var iAe=ye((vhr,rAe)=>{"use strict";rAe.exports=typeof Reflect!="undefined"&&Reflect&&Reflect.apply});var aAe=ye((phr,nAe)=>{"use strict";var ATt=rA(),STt=MH(),MTt=Z8(),ETt=iAe();nAe.exports=ETt||ATt.call(MTt,STt)});var sAe=ye((ghr,oAe)=>{"use strict";var kTt=rA(),CTt=tA(),LTt=Z8(),PTt=aAe();oAe.exports=function(t){if(t.length<1||typeof t[0]!="function")throw new CTt("a function is required");return PTt(kTt,LTt,t)}});var dAe=ye((mhr,hAe)=>{"use strict";var ITt=sAe(),lAe=f2(),cAe;try{cAe=[].__proto__===Array.prototype}catch(e){if(!e||typeof e!="object"||!("code"in e)||e.code!=="ERR_PROTO_ACCESS")throw e}var EH=!!cAe&&lAe&&lAe(Object.prototype,"__proto__"),fAe=Object,uAe=fAe.getPrototypeOf;hAe.exports=EH&&typeof EH.get=="function"?ITt([EH.get]):typeof uAe=="function"?function(t){return uAe(t==null?t:fAe(t))}:!1});var yAe=ye((yhr,mAe)=>{"use strict";var vAe=AH(),pAe=SH(),gAe=dAe();mAe.exports=vAe?function(t){return vAe(t)}:pAe?function(t){if(!t||typeof t!="object"&&typeof t!="function")throw new TypeError("getProto: not an object");return pAe(t)}:gAe?function(t){return gAe(t)}:null});var xAe=ye((_hr,_Ae)=>{"use strict";var RTt=Function.prototype.call,DTt=Object.prototype.hasOwnProperty,FTt=rA();_Ae.exports=FTt.call(RTt,DTt)});var J8=ye((xhr,MAe)=>{"use strict";var lu,zTt=wH(),OTt=vTe(),qTt=gTe(),BTt=yTe(),NTt=xTe(),oA=TH(),aA=tA(),UTt=ATe(),VTt=MTe(),GTt=kTe(),HTt=LTe(),jTt=ITe(),WTt=DTe(),XTt=zTe(),ZTt=NTe(),AAe=Function,kH=function(e){try{return AAe('"use strict"; return ('+e+").constructor;")()}catch(t){}},H4=f2(),YTt=G4(),CH=function(){throw new aA},KTt=H4?function(){try{return arguments.callee,CH}catch(e){try{return H4(arguments,"callee").get}catch(t){return CH}}}():CH,iA=XTe()(),tv=yAe(),JTt=SH(),$Tt=AH(),SAe=MH(),j4=Z8(),nA={},QTt=typeof Uint8Array=="undefined"||!tv?lu:tv(Uint8Array),h2={__proto__:null,"%AggregateError%":typeof AggregateError=="undefined"?lu:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer=="undefined"?lu:ArrayBuffer,"%ArrayIteratorPrototype%":iA&&tv?tv([][Symbol.iterator]()):lu,"%AsyncFromSyncIteratorPrototype%":lu,"%AsyncFunction%":nA,"%AsyncGenerator%":nA,"%AsyncGeneratorFunction%":nA,"%AsyncIteratorPrototype%":nA,"%Atomics%":typeof Atomics=="undefined"?lu:Atomics,"%BigInt%":typeof BigInt=="undefined"?lu:BigInt,"%BigInt64Array%":typeof BigInt64Array=="undefined"?lu:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array=="undefined"?lu:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView=="undefined"?lu:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":OTt,"%eval%":eval,"%EvalError%":qTt,"%Float16Array%":typeof Float16Array=="undefined"?lu:Float16Array,"%Float32Array%":typeof Float32Array=="undefined"?lu:Float32Array,"%Float64Array%":typeof Float64Array=="undefined"?lu:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry=="undefined"?lu:FinalizationRegistry,"%Function%":AAe,"%GeneratorFunction%":nA,"%Int8Array%":typeof Int8Array=="undefined"?lu:Int8Array,"%Int16Array%":typeof Int16Array=="undefined"?lu:Int16Array,"%Int32Array%":typeof Int32Array=="undefined"?lu:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":iA&&tv?tv(tv([][Symbol.iterator]())):lu,"%JSON%":typeof JSON=="object"?JSON:lu,"%Map%":typeof Map=="undefined"?lu:Map,"%MapIteratorPrototype%":typeof Map=="undefined"||!iA||!tv?lu:tv(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":zTt,"%Object.getOwnPropertyDescriptor%":H4,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise=="undefined"?lu:Promise,"%Proxy%":typeof Proxy=="undefined"?lu:Proxy,"%RangeError%":BTt,"%ReferenceError%":NTt,"%Reflect%":typeof Reflect=="undefined"?lu:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set=="undefined"?lu:Set,"%SetIteratorPrototype%":typeof Set=="undefined"||!iA||!tv?lu:tv(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer=="undefined"?lu:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":iA&&tv?tv(""[Symbol.iterator]()):lu,"%Symbol%":iA?Symbol:lu,"%SyntaxError%":oA,"%ThrowTypeError%":KTt,"%TypedArray%":QTt,"%TypeError%":aA,"%Uint8Array%":typeof Uint8Array=="undefined"?lu:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray=="undefined"?lu:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array=="undefined"?lu:Uint16Array,"%Uint32Array%":typeof Uint32Array=="undefined"?lu:Uint32Array,"%URIError%":UTt,"%WeakMap%":typeof WeakMap=="undefined"?lu:WeakMap,"%WeakRef%":typeof WeakRef=="undefined"?lu:WeakRef,"%WeakSet%":typeof WeakSet=="undefined"?lu:WeakSet,"%Function.prototype.call%":j4,"%Function.prototype.apply%":SAe,"%Object.defineProperty%":YTt,"%Object.getPrototypeOf%":JTt,"%Math.abs%":VTt,"%Math.floor%":GTt,"%Math.max%":HTt,"%Math.min%":jTt,"%Math.pow%":WTt,"%Math.round%":XTt,"%Math.sign%":ZTt,"%Reflect.getPrototypeOf%":$Tt};if(tv)try{null.error}catch(e){bAe=tv(tv(e)),h2["%Error.prototype%"]=bAe}var bAe,eAt=function e(t){var r;if(t==="%AsyncFunction%")r=kH("async function () {}");else if(t==="%GeneratorFunction%")r=kH("function* () {}");else if(t==="%AsyncGeneratorFunction%")r=kH("async function* () {}");else if(t==="%AsyncGenerator%"){var n=e("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(t==="%AsyncIteratorPrototype%"){var i=e("%AsyncGenerator%");i&&tv&&(r=tv(i.prototype))}return h2[t]=r,r},wAe={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},W4=rA(),Y8=xAe(),tAt=W4.call(j4,Array.prototype.concat),rAt=W4.call(SAe,Array.prototype.splice),TAe=W4.call(j4,String.prototype.replace),K8=W4.call(j4,String.prototype.slice),iAt=W4.call(j4,RegExp.prototype.exec),nAt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,aAt=/\\(\\)?/g,oAt=function(t){var r=K8(t,0,1),n=K8(t,-1);if(r==="%"&&n!=="%")throw new oA("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new oA("invalid intrinsic syntax, expected opening `%`");var i=[];return TAe(t,nAt,function(a,o,s,l){i[i.length]=s?TAe(l,aAt,"$1"):o||a}),i},sAt=function(t,r){var n=t,i;if(Y8(wAe,n)&&(i=wAe[n],n="%"+i[0]+"%"),Y8(h2,n)){var a=h2[n];if(a===nA&&(a=eAt(n)),typeof a=="undefined"&&!r)throw new aA("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:i,name:n,value:a}}throw new oA("intrinsic "+t+" does not exist!")};MAe.exports=function(t,r){if(typeof t!="string"||t.length===0)throw new aA("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new aA('"allowMissing" argument must be a boolean');if(iAt(/^%?[^%]*%?$/,t)===null)throw new oA("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=oAt(t),i=n.length>0?n[0]:"",a=sAt("%"+i+"%",r),o=a.name,s=a.value,l=!1,u=a.alias;u&&(i=u[0],rAt(n,tAt([0,1],u)));for(var c=1,f=!0;c=n.length){var _=H4(s,h);f=!!_,f&&"get"in _&&!("originalValue"in _.get)?s=_.get:s=s[h]}else f=Y8(s,h),s=s[h];f&&!l&&(h2[o]=s)}}return s}});var LAe=ye((bhr,CAe)=>{"use strict";var EAe=G4(),lAt=TH(),sA=tA(),kAe=f2();CAe.exports=function(t,r,n){if(!t||typeof t!="object"&&typeof t!="function")throw new sA("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new sA("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new sA("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new sA("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new sA("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new sA("`loose`, if provided, must be a boolean");var i=arguments.length>3?arguments[3]:null,a=arguments.length>4?arguments[4]:null,o=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,l=!!kAe&&kAe(t,r);if(EAe)EAe(t,r,{configurable:o===null&&l?l.configurable:!o,enumerable:i===null&&l?l.enumerable:!i,value:n,writable:a===null&&l?l.writable:!a});else if(s||!i&&!a&&!o)t[r]=n;else throw new lAt("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var PH=ye((whr,IAe)=>{"use strict";var LH=G4(),PAe=function(){return!!LH};PAe.hasArrayLengthDefineBug=function(){if(!LH)return null;try{return LH([],"length",{value:1}).length!==1}catch(t){return!0}};IAe.exports=PAe});var OAe=ye((Thr,zAe)=>{"use strict";var uAt=J8(),RAe=LAe(),cAt=PH()(),DAe=f2(),FAe=tA(),fAt=uAt("%Math.floor%");zAe.exports=function(t,r){if(typeof t!="function")throw new FAe("`fn` is not a function");if(typeof r!="number"||r<0||r>4294967295||fAt(r)!==r)throw new FAe("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],i=!0,a=!0;if("length"in t&&DAe){var o=DAe(t,"length");o&&!o.configurable&&(i=!1),o&&!o.writable&&(a=!1)}return(i||a||!n)&&(cAt?RAe(t,"length",r,!0,!0):RAe(t,"length",r)),t}});var X4=ye((Ahr,$8)=>{"use strict";var IH=rA(),Q8=J8(),hAt=OAe(),dAt=tA(),NAe=Q8("%Function.prototype.apply%"),UAe=Q8("%Function.prototype.call%"),VAe=Q8("%Reflect.apply%",!0)||IH.call(UAe,NAe),qAe=G4(),vAt=Q8("%Math.max%");$8.exports=function(t){if(typeof t!="function")throw new dAt("a function is required");var r=VAe(IH,UAe,arguments);return hAt(r,1+vAt(0,t.length-(arguments.length-1)),!0)};var BAe=function(){return VAe(IH,NAe,arguments)};qAe?qAe($8.exports,"apply",{value:BAe}):$8.exports.apply=BAe});var lA=ye((Shr,jAe)=>{"use strict";var GAe=J8(),HAe=X4(),pAt=HAe(GAe("String.prototype.indexOf"));jAe.exports=function(t,r){var n=GAe(t,!!r);return typeof n=="function"&&pAt(t,".prototype.")>-1?HAe(n):n}});var ZAe=ye((Mhr,XAe)=>{"use strict";var gAt=V4()(),mAt=lA(),RH=mAt("Object.prototype.toString"),eR=function(t){return gAt&&t&&typeof t=="object"&&Symbol.toStringTag in t?!1:RH(t)==="[object Arguments]"},WAe=function(t){return eR(t)?!0:t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&RH(t)!=="[object Array]"&&RH(t.callee)==="[object Function]"},yAt=function(){return eR(arguments)}();eR.isLegacyArguments=WAe;XAe.exports=yAt?eR:WAe});var JAe=ye((Ehr,KAe)=>{"use strict";var _At=Object.prototype.toString,xAt=Function.prototype.toString,bAt=/^\s*(?:function)?\*/,YAe=V4()(),DH=Object.getPrototypeOf,wAt=function(){if(!YAe)return!1;try{return Function("return function*() {}")()}catch(e){}},FH;KAe.exports=function(t){if(typeof t!="function")return!1;if(bAt.test(xAt.call(t)))return!0;if(!YAe){var r=_At.call(t);return r==="[object GeneratorFunction]"}if(!DH)return!1;if(typeof FH=="undefined"){var n=wAt();FH=n?DH(n):!1}return DH(t)===FH}});var t5e=ye((khr,e5e)=>{"use strict";var QAe=Function.prototype.toString,uA=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,OH,tR;if(typeof uA=="function"&&typeof Object.defineProperty=="function")try{OH=Object.defineProperty({},"length",{get:function(){throw tR}}),tR={},uA(function(){throw 42},null,OH)}catch(e){e!==tR&&(uA=null)}else uA=null;var TAt=/^\s*class\b/,qH=function(t){try{var r=QAe.call(t);return TAt.test(r)}catch(n){return!1}},zH=function(t){try{return qH(t)?!1:(QAe.call(t),!0)}catch(r){return!1}},rR=Object.prototype.toString,AAt="[object Object]",SAt="[object Function]",MAt="[object GeneratorFunction]",EAt="[object HTMLAllCollection]",kAt="[object HTML document.all class]",CAt="[object HTMLCollection]",LAt=typeof Symbol=="function"&&!!Symbol.toStringTag,PAt=!(0 in[,]),BH=function(){return!1};typeof document=="object"&&($Ae=document.all,rR.call($Ae)===rR.call(document.all)&&(BH=function(t){if((PAt||!t)&&(typeof t=="undefined"||typeof t=="object"))try{var r=rR.call(t);return(r===EAt||r===kAt||r===CAt||r===AAt)&&t("")==null}catch(n){}return!1}));var $Ae;e5e.exports=uA?function(t){if(BH(t))return!0;if(!t||typeof t!="function"&&typeof t!="object")return!1;try{uA(t,null,OH)}catch(r){if(r!==tR)return!1}return!qH(t)&&zH(t)}:function(t){if(BH(t))return!0;if(!t||typeof t!="function"&&typeof t!="object")return!1;if(LAt)return zH(t);if(qH(t))return!1;var r=rR.call(t);return r!==SAt&&r!==MAt&&!/^\[object HTML/.test(r)?!1:zH(t)}});var NH=ye((Chr,i5e)=>{"use strict";var IAt=t5e(),RAt=Object.prototype.toString,r5e=Object.prototype.hasOwnProperty,DAt=function(t,r,n){for(var i=0,a=t.length;i=3&&(i=n),RAt.call(t)==="[object Array]"?DAt(t,r,i):typeof t=="string"?FAt(t,r,i):zAt(t,r,i)};i5e.exports=OAt});var VH=ye((Lhr,n5e)=>{"use strict";var UH=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],qAt=typeof globalThis=="undefined"?window:globalThis;n5e.exports=function(){for(var t=[],r=0;r{"use strict";var nR=NH(),BAt=VH(),a5e=X4(),jH=lA(),iR=f2(),NAt=jH("Object.prototype.toString"),s5e=V4()(),o5e=typeof globalThis=="undefined"?window:globalThis,HH=BAt(),WH=jH("String.prototype.slice"),GH=Object.getPrototypeOf,UAt=jH("Array.prototype.indexOf",!0)||function(t,r){for(var n=0;n-1?r:r!=="Object"?!1:GAt(t)}return iR?VAt(t):null}});var p5e=ye((Ihr,v5e)=>{"use strict";var c5e=NH(),HAt=VH(),ZH=lA(),jAt=ZH("Object.prototype.toString"),f5e=V4()(),oR=f2(),WAt=typeof globalThis=="undefined"?window:globalThis,h5e=HAt(),XAt=ZH("Array.prototype.indexOf",!0)||function(t,r){for(var n=0;n-1}return oR?YAt(t):!1}});var JH=ye(uu=>{"use strict";var KAt=ZAe(),JAt=JAe(),Hg=u5e(),g5e=p5e();function cA(e){return e.call.bind(e)}var m5e=typeof BigInt!="undefined",y5e=typeof Symbol!="undefined",Z0=cA(Object.prototype.toString),$At=cA(Number.prototype.valueOf),QAt=cA(String.prototype.valueOf),e5t=cA(Boolean.prototype.valueOf);m5e&&(_5e=cA(BigInt.prototype.valueOf));var _5e;y5e&&(x5e=cA(Symbol.prototype.valueOf));var x5e;function Y4(e,t){if(typeof e!="object")return!1;try{return t(e),!0}catch(r){return!1}}uu.isArgumentsObject=KAt;uu.isGeneratorFunction=JAt;uu.isTypedArray=g5e;function t5t(e){return typeof Promise!="undefined"&&e instanceof Promise||e!==null&&typeof e=="object"&&typeof e.then=="function"&&typeof e.catch=="function"}uu.isPromise=t5t;function r5t(e){return typeof ArrayBuffer!="undefined"&&ArrayBuffer.isView?ArrayBuffer.isView(e):g5e(e)||w5e(e)}uu.isArrayBufferView=r5t;function i5t(e){return Hg(e)==="Uint8Array"}uu.isUint8Array=i5t;function n5t(e){return Hg(e)==="Uint8ClampedArray"}uu.isUint8ClampedArray=n5t;function a5t(e){return Hg(e)==="Uint16Array"}uu.isUint16Array=a5t;function o5t(e){return Hg(e)==="Uint32Array"}uu.isUint32Array=o5t;function s5t(e){return Hg(e)==="Int8Array"}uu.isInt8Array=s5t;function l5t(e){return Hg(e)==="Int16Array"}uu.isInt16Array=l5t;function u5t(e){return Hg(e)==="Int32Array"}uu.isInt32Array=u5t;function c5t(e){return Hg(e)==="Float32Array"}uu.isFloat32Array=c5t;function f5t(e){return Hg(e)==="Float64Array"}uu.isFloat64Array=f5t;function h5t(e){return Hg(e)==="BigInt64Array"}uu.isBigInt64Array=h5t;function d5t(e){return Hg(e)==="BigUint64Array"}uu.isBigUint64Array=d5t;function sR(e){return Z0(e)==="[object Map]"}sR.working=typeof Map!="undefined"&&sR(new Map);function v5t(e){return typeof Map=="undefined"?!1:sR.working?sR(e):e instanceof Map}uu.isMap=v5t;function lR(e){return Z0(e)==="[object Set]"}lR.working=typeof Set!="undefined"&&lR(new Set);function p5t(e){return typeof Set=="undefined"?!1:lR.working?lR(e):e instanceof Set}uu.isSet=p5t;function uR(e){return Z0(e)==="[object WeakMap]"}uR.working=typeof WeakMap!="undefined"&&uR(new WeakMap);function g5t(e){return typeof WeakMap=="undefined"?!1:uR.working?uR(e):e instanceof WeakMap}uu.isWeakMap=g5t;function KH(e){return Z0(e)==="[object WeakSet]"}KH.working=typeof WeakSet!="undefined"&&KH(new WeakSet);function m5t(e){return KH(e)}uu.isWeakSet=m5t;function cR(e){return Z0(e)==="[object ArrayBuffer]"}cR.working=typeof ArrayBuffer!="undefined"&&cR(new ArrayBuffer);function b5e(e){return typeof ArrayBuffer=="undefined"?!1:cR.working?cR(e):e instanceof ArrayBuffer}uu.isArrayBuffer=b5e;function fR(e){return Z0(e)==="[object DataView]"}fR.working=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined"&&fR(new DataView(new ArrayBuffer(1),0,1));function w5e(e){return typeof DataView=="undefined"?!1:fR.working?fR(e):e instanceof DataView}uu.isDataView=w5e;var YH=typeof SharedArrayBuffer!="undefined"?SharedArrayBuffer:void 0;function Z4(e){return Z0(e)==="[object SharedArrayBuffer]"}function T5e(e){return typeof YH=="undefined"?!1:(typeof Z4.working=="undefined"&&(Z4.working=Z4(new YH)),Z4.working?Z4(e):e instanceof YH)}uu.isSharedArrayBuffer=T5e;function y5t(e){return Z0(e)==="[object AsyncFunction]"}uu.isAsyncFunction=y5t;function _5t(e){return Z0(e)==="[object Map Iterator]"}uu.isMapIterator=_5t;function x5t(e){return Z0(e)==="[object Set Iterator]"}uu.isSetIterator=x5t;function b5t(e){return Z0(e)==="[object Generator]"}uu.isGeneratorObject=b5t;function w5t(e){return Z0(e)==="[object WebAssembly.Module]"}uu.isWebAssemblyCompiledModule=w5t;function A5e(e){return Y4(e,$At)}uu.isNumberObject=A5e;function S5e(e){return Y4(e,QAt)}uu.isStringObject=S5e;function M5e(e){return Y4(e,e5t)}uu.isBooleanObject=M5e;function E5e(e){return m5e&&Y4(e,_5e)}uu.isBigIntObject=E5e;function k5e(e){return y5e&&Y4(e,x5e)}uu.isSymbolObject=k5e;function T5t(e){return A5e(e)||S5e(e)||M5e(e)||E5e(e)||k5e(e)}uu.isBoxedPrimitive=T5t;function A5t(e){return typeof Uint8Array!="undefined"&&(b5e(e)||T5e(e))}uu.isAnyArrayBuffer=A5t;["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(e){Object.defineProperty(uu,e,{enumerable:!1,value:function(){throw new Error(e+" is not supported in userland")}})})});var $H=ye((Dhr,C5e)=>{C5e.exports=function(t){return t&&typeof t=="object"&&typeof t.copy=="function"&&typeof t.fill=="function"&&typeof t.readUInt8=="function"}});var nj=ye(cu=>{var L5e=Object.getOwnPropertyDescriptors||function(t){for(var r=Object.keys(t),n={},i=0;i=i)return s;switch(s){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(l){return"[Circular]"}default:return s}}),o=n[r];r=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),rj(t)?r.showHidden=t:t&&cu._extend(r,t),v2(r.showHidden)&&(r.showHidden=!1),v2(r.depth)&&(r.depth=2),v2(r.colors)&&(r.colors=!1),v2(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=M5t),pR(r,e,r.depth)}cu.inspect=I_;I_.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};I_.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function M5t(e,t){var r=I_.styles[t];return r?"\x1B["+I_.colors[r][0]+"m"+e+"\x1B["+I_.colors[r][1]+"m":e}function E5t(e,t){return e}function k5t(e){var t={};return e.forEach(function(r,n){t[r]=!0}),t}function pR(e,t,r){if(e.customInspect&&t&&vR(t.inspect)&&t.inspect!==cu.inspect&&!(t.constructor&&t.constructor.prototype===t)){var n=t.inspect(r,e);return yR(n)||(n=pR(e,n,r)),n}var i=C5t(e,t);if(i)return i;var a=Object.keys(t),o=k5t(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(t)),J4(t)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return QH(t);if(a.length===0){if(vR(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if(K4(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(gR(t))return e.stylize(Date.prototype.toString.call(t),"date");if(J4(t))return QH(t)}var l="",u=!1,c=["{","}"];if(I5e(t)&&(u=!0,c=["[","]"]),vR(t)){var f=t.name?": "+t.name:"";l=" [Function"+f+"]"}if(K4(t)&&(l=" "+RegExp.prototype.toString.call(t)),gR(t)&&(l=" "+Date.prototype.toUTCString.call(t)),J4(t)&&(l=" "+QH(t)),a.length===0&&(!u||t.length==0))return c[0]+l+c[1];if(r<0)return K4(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var h;return u?h=L5t(e,t,r,o,a):h=a.map(function(d){return tj(e,t,r,o,d,u)}),e.seen.pop(),P5t(h,l,c)}function C5t(e,t){if(v2(t))return e.stylize("undefined","undefined");if(yR(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(R5e(t))return e.stylize(""+t,"number");if(rj(t))return e.stylize(""+t,"boolean");if(mR(t))return e.stylize("null","null")}function QH(e){return"["+Error.prototype.toString.call(e)+"]"}function L5t(e,t,r,n,i){for(var a=[],o=0,s=t.length;o-1&&(a?s=s.split(` `).map(function(u){return" "+u}).join(` `).slice(2):s=` `+s.split(` `).map(function(u){return" "+u}).join(` -`))):s=e.stylize("[Circular]","special")),v2(o)){if(a&&i.match(/^\d+$/))return s;o=JSON.stringify(""+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function L5t(e,t,r){var n=0,i=e.reduce(function(a,o){return n++,o.indexOf(` +`))):s=e.stylize("[Circular]","special")),v2(o)){if(a&&i.match(/^\d+$/))return s;o=JSON.stringify(""+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function P5t(e,t,r){var n=0,i=e.reduce(function(a,o){return n++,o.indexOf(` `)>=0&&n++,a+o.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?r[0]+(t===""?"":t+` `)+" "+e.join(`, - `)+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}cu.types=JH();function P5e(e){return Array.isArray(e)}cu.isArray=P5e;function rj(e){return typeof e=="boolean"}cu.isBoolean=rj;function gR(e){return e===null}cu.isNull=gR;function P5t(e){return e==null}cu.isNullOrUndefined=P5t;function I5e(e){return typeof e=="number"}cu.isNumber=I5e;function mR(e){return typeof e=="string"}cu.isString=mR;function I5t(e){return typeof e=="symbol"}cu.isSymbol=I5t;function v2(e){return e===void 0}cu.isUndefined=v2;function Y4(e){return cA(e)&&ij(e)==="[object RegExp]"}cu.isRegExp=Y4;cu.types.isRegExp=Y4;function cA(e){return typeof e=="object"&&e!==null}cu.isObject=cA;function pR(e){return cA(e)&&ij(e)==="[object Date]"}cu.isDate=pR;cu.types.isDate=pR;function K4(e){return cA(e)&&(ij(e)==="[object Error]"||e instanceof Error)}cu.isError=K4;cu.types.isNativeError=K4;function dR(e){return typeof e=="function"}cu.isFunction=dR;function R5t(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}cu.isPrimitive=R5t;cu.isBuffer=$H();function ij(e){return Object.prototype.toString.call(e)}function ej(e){return e<10?"0"+e.toString(10):e.toString(10)}var D5t=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function F5t(){var e=new Date,t=[ej(e.getHours()),ej(e.getMinutes()),ej(e.getSeconds())].join(":");return[e.getDate(),D5t[e.getMonth()],t].join(" ")}cu.log=function(){console.log("%s - %s",F5t(),cu.format.apply(cu,arguments))};cu.inherits=Uy();cu._extend=function(e,t){if(!t||!cA(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};function R5e(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var d2=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;cu.promisify=function(t){if(typeof t!="function")throw new TypeError('The "original" argument must be of type Function');if(d2&&t[d2]){var r=t[d2];if(typeof r!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(r,d2,{value:r,enumerable:!1,writable:!1,configurable:!0}),r}function r(){for(var n,i,a=new Promise(function(l,u){n=l,i=u}),o=[],s=0;s{"use strict";function D5e(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function q5t(e){for(var t=1;t0?this.tail.next=n:this.head=n,this.tail=n,++this.length}},{key:"unshift",value:function(r){var n={data:r,next:this.head};this.length===0&&(this.tail=n),this.head=n,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var n=this.head,i=""+n.data;n=n.next;)i+=r+n.data;return i}},{key:"concat",value:function(r){if(this.length===0)return yR.alloc(0);for(var n=yR.allocUnsafe(r>>>0),i=this.head,a=0;i;)j5t(i.data,n,a),a+=i.data.length,i=i.next;return n}},{key:"consume",value:function(r,n){var i;return ro.length?o.length:r;if(s===o.length?a+=o:a+=o.slice(0,r),r-=s,r===0){s===o.length?(++i,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(s));break}++i}return this.length-=i,a}},{key:"_getBuffer",value:function(r){var n=yR.allocUnsafe(r),i=this.head,a=1;for(i.data.copy(n),r-=i.data.length;i=i.next;){var o=i.data,s=r>o.length?o.length:r;if(o.copy(n,n.length-r,0,s),r-=s,r===0){s===o.length?(++a,i.next?this.head=i.next:this.head=this.tail=null):(this.head=i,i.data=o.slice(s));break}++a}return this.length-=a,n}},{key:H5t,value:function(r,n){return aj(this,q5t({},n,{depth:0,customInspect:!1}))}}]),e}()});var sj=ye((Ohr,B5e)=>{"use strict";function W5t(e,t){var r=this,n=this._readableState&&this._readableState.destroyed,i=this._writableState&&this._writableState.destroyed;return n||i?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(oj,this,e)):process.nextTick(oj,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(a){!t&&a?r._writableState?r._writableState.errorEmitted?process.nextTick(_R,r):(r._writableState.errorEmitted=!0,process.nextTick(q5e,r,a)):process.nextTick(q5e,r,a):t?(process.nextTick(_R,r),t(a)):process.nextTick(_R,r)}),this)}function q5e(e,t){oj(e,t),_R(e)}function _R(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function X5t(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function oj(e,t){e.emit("error",t)}function Z5t(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}B5e.exports={destroy:W5t,undestroy:X5t,errorOrDestroy:Z5t}});var p2=ye((qhr,V5e)=>{"use strict";function Y5t(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}var U5e={};function Y0(e,t,r){r||(r=Error);function n(a,o,s){return typeof t=="string"?t:t(a,o,s)}var i=function(a){Y5t(o,a);function o(s,l,u){return a.call(this,n(s,l,u))||this}return o}(r);i.prototype.name=r.name,i.prototype.code=e,U5e[e]=i}function N5e(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map(function(n){return String(n)}),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function K5t(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function J5t(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function $5t(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}Y0("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);Y0("ERR_INVALID_ARG_TYPE",function(e,t,r){var n;typeof t=="string"&&K5t(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";var i;if(J5t(e," argument"))i="The ".concat(e," ").concat(n," ").concat(N5e(t,"type"));else{var a=$5t(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(a," ").concat(n," ").concat(N5e(t,"type"))}return i+=". Received type ".concat(typeof r),i},TypeError);Y0("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");Y0("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});Y0("ERR_STREAM_PREMATURE_CLOSE","Premature close");Y0("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});Y0("ERR_MULTIPLE_CALLBACK","Callback called multiple times");Y0("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");Y0("ERR_STREAM_WRITE_AFTER_END","write after end");Y0("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);Y0("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);Y0("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");V5e.exports.codes=U5e});var lj=ye((Bhr,G5e)=>{"use strict";var Q5t=p2().codes.ERR_INVALID_OPT_VALUE;function eSt(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function tSt(e,t,r,n){var i=eSt(t,n,r);if(i!=null){if(!(isFinite(i)&&Math.floor(i)===i)||i<0){var a=n?r:"highWaterMark";throw new Q5t(a,i)}return Math.floor(i)}return e.objectMode?16:16*1024}G5e.exports={getHighWaterMark:tSt}});var j5e=ye((Nhr,H5e)=>{H5e.exports=rSt;function rSt(e,t){if(uj("noDeprecation"))return e;var r=!1;function n(){if(!r){if(uj("throwDeprecation"))throw new Error(t);uj("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}return n}function uj(e){try{if(!window.localStorage)return!1}catch(r){return!1}var t=window.localStorage[e];return t==null?!1:String(t).toLowerCase()==="true"}});var hj=ye((Uhr,J5e)=>{"use strict";J5e.exports=zh;function X5e(e){var t=this;this.next=null,this.entry=null,this.finish=function(){CSt(t,e)}}var fA;zh.WritableState=$4;var iSt={deprecate:j5e()},Z5e=fH(),bR=c2().Buffer,nSt=window.Uint8Array||function(){};function aSt(e){return bR.from(e)}function oSt(e){return bR.isBuffer(e)||e instanceof nSt}var fj=sj(),sSt=lj(),lSt=sSt.getHighWaterMark,R_=p2().codes,uSt=R_.ERR_INVALID_ARG_TYPE,cSt=R_.ERR_METHOD_NOT_IMPLEMENTED,fSt=R_.ERR_MULTIPLE_CALLBACK,hSt=R_.ERR_STREAM_CANNOT_PIPE,dSt=R_.ERR_STREAM_DESTROYED,vSt=R_.ERR_STREAM_NULL_VALUES,pSt=R_.ERR_STREAM_WRITE_AFTER_END,gSt=R_.ERR_UNKNOWN_ENCODING,hA=fj.errorOrDestroy;Uy()(zh,Z5e);function mSt(){}function $4(e,t,r){fA=fA||g2(),e=e||{},typeof r!="boolean"&&(r=t instanceof fA),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=lSt(this,e,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var n=e.decodeStrings===!1;this.decodeStrings=!n,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(i){ASt(t,i)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new X5e(this)}$4.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty($4.prototype,"buffer",{get:iSt.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}})();var xR;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(xR=Function.prototype[Symbol.hasInstance],Object.defineProperty(zh,Symbol.hasInstance,{value:function(t){return xR.call(this,t)?!0:this!==zh?!1:t&&t._writableState instanceof $4}})):xR=function(t){return t instanceof this};function zh(e){fA=fA||g2();var t=this instanceof fA;if(!t&&!xR.call(zh,this))return new zh(e);this._writableState=new $4(e,this,t),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),Z5e.call(this)}zh.prototype.pipe=function(){hA(this,new hSt)};function ySt(e,t){var r=new pSt;hA(e,r),process.nextTick(t,r)}function _St(e,t,r,n){var i;return r===null?i=new vSt:typeof r!="string"&&!t.objectMode&&(i=new uSt("chunk",["string","Buffer"],r)),i?(hA(e,i),process.nextTick(n,i),!1):!0}zh.prototype.write=function(e,t,r){var n=this._writableState,i=!1,a=!n.objectMode&&oSt(e);return a&&!bR.isBuffer(e)&&(e=aSt(e)),typeof t=="function"&&(r=t,t=null),a?t="buffer":t||(t=n.defaultEncoding),typeof r!="function"&&(r=mSt),n.ending?ySt(this,r):(a||_St(this,n,e,r))&&(n.pendingcb++,i=bSt(this,n,a,e,t,r)),i};zh.prototype.cork=function(){this._writableState.corked++};zh.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&Y5e(this,e))};zh.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new gSt(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(zh.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function xSt(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=bR.from(t,r)),t}Object.defineProperty(zh.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function bSt(e,t,r,n,i,a){if(!r){var o=xSt(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var l=t.length{"use strict";var LSt=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};Q5e.exports=Bm;var $5e=pj(),vj=hj();Uy()(Bm,$5e);for(dj=LSt(vj.prototype),wR=0;wR{var AR=c2(),Nm=AR.Buffer;function eSe(e,t){for(var r in e)t[r]=e[r]}Nm.from&&Nm.alloc&&Nm.allocUnsafe&&Nm.allocUnsafeSlow?tSe.exports=AR:(eSe(AR,gj),gj.Buffer=m2);function m2(e,t,r){return Nm(e,t,r)}m2.prototype=Object.create(Nm.prototype);eSe(Nm,m2);m2.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return Nm(e,t,r)};m2.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var n=Nm(e);return t!==void 0?typeof r=="string"?n.fill(t,r):n.fill(t):n.fill(0),n};m2.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return Nm(e)};m2.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return AR.SlowBuffer(e)}});var _j=ye(nSe=>{"use strict";var yj=rSe().Buffer,iSe=yj.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function RSt(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function DSt(e){var t=RSt(e);if(typeof t!="string"&&(yj.isEncoding===iSe||!iSe(e)))throw new Error("Unknown encoding: "+e);return t||e}nSe.StringDecoder=Q4;function Q4(e){this.encoding=DSt(e);var t;switch(this.encoding){case"utf16le":this.text=NSt,this.end=USt,t=4;break;case"utf8":this.fillLast=OSt,t=4;break;case"base64":this.text=VSt,this.end=GSt,t=3;break;default:this.write=HSt,this.end=jSt;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=yj.allocUnsafe(t)}Q4.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function FSt(e,t,r){var n=t.length-1;if(n=0?(i>0&&(e.lastNeed=i-1),i):--n=0?(i>0&&(e.lastNeed=i-2),i):--n=0?(i>0&&(i===2?i=0:e.lastNeed=i-3),i):0))}function zSt(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function OSt(e){var t=this.lastTotal-this.lastNeed,r=zSt(this,e,t);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function qSt(e,t){var r=FSt(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)}function BSt(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function NSt(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function USt(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function VSt(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function GSt(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function HSt(e){return e.toString(this.encoding)}function jSt(e){return e&&e.length?this.write(e):""}});var SR=ye((Hhr,sSe)=>{"use strict";var aSe=p2().codes.ERR_STREAM_PREMATURE_CLOSE;function WSt(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i{"use strict";var MR;function D_(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var YSt=SR(),F_=Symbol("lastResolve"),y2=Symbol("lastReject"),eE=Symbol("error"),ER=Symbol("ended"),_2=Symbol("lastPromise"),xj=Symbol("handlePromise"),x2=Symbol("stream");function z_(e,t){return{value:e,done:t}}function KSt(e){var t=e[F_];if(t!==null){var r=e[x2].read();r!==null&&(e[_2]=null,e[F_]=null,e[y2]=null,t(z_(r,!1)))}}function JSt(e){process.nextTick(KSt,e)}function $St(e,t){return function(r,n){e.then(function(){if(t[ER]){r(z_(void 0,!0));return}t[xj](r,n)},n)}}var QSt=Object.getPrototypeOf(function(){}),eMt=Object.setPrototypeOf((MR={get stream(){return this[x2]},next:function(){var t=this,r=this[eE];if(r!==null)return Promise.reject(r);if(this[ER])return Promise.resolve(z_(void 0,!0));if(this[x2].destroyed)return new Promise(function(o,s){process.nextTick(function(){t[eE]?s(t[eE]):o(z_(void 0,!0))})});var n=this[_2],i;if(n)i=new Promise($St(n,this));else{var a=this[x2].read();if(a!==null)return Promise.resolve(z_(a,!1));i=new Promise(this[xj])}return this[_2]=i,i}},D_(MR,Symbol.asyncIterator,function(){return this}),D_(MR,"return",function(){var t=this;return new Promise(function(r,n){t[x2].destroy(null,function(i){if(i){n(i);return}r(z_(void 0,!0))})})}),MR),QSt),tMt=function(t){var r,n=Object.create(eMt,(r={},D_(r,x2,{value:t,writable:!0}),D_(r,F_,{value:null,writable:!0}),D_(r,y2,{value:null,writable:!0}),D_(r,eE,{value:null,writable:!0}),D_(r,ER,{value:t._readableState.endEmitted,writable:!0}),D_(r,xj,{value:function(a,o){var s=n[x2].read();s?(n[_2]=null,n[F_]=null,n[y2]=null,a(z_(s,!1))):(n[F_]=a,n[y2]=o)},writable:!0}),r));return n[_2]=null,YSt(t,function(i){if(i&&i.code!=="ERR_STREAM_PREMATURE_CLOSE"){var a=n[y2];a!==null&&(n[_2]=null,n[F_]=null,n[y2]=null,a(i)),n[eE]=i;return}var o=n[F_];o!==null&&(n[_2]=null,n[F_]=null,n[y2]=null,o(z_(void 0,!0))),n[ER]=!0}),t.on("readable",JSt.bind(null,n)),n};lSe.exports=tMt});var fSe=ye((Whr,cSe)=>{cSe.exports=function(){throw new Error("Readable.from is not available in the browser")}});var pj=ye((Zhr,bSe)=>{"use strict";bSe.exports=Bu;var dA;Bu.ReadableState=pSe;var Xhr=pb().EventEmitter,vSe=function(t,r){return t.listeners(r).length},rE=fH(),kR=c2().Buffer,rMt=window.Uint8Array||function(){};function iMt(e){return kR.from(e)}function nMt(e){return kR.isBuffer(e)||e instanceof rMt}var bj=nj(),nu;bj&&bj.debuglog?nu=bj.debuglog("stream"):nu=function(){};var aMt=O5e(),kj=sj(),oMt=lj(),sMt=oMt.getHighWaterMark,CR=p2().codes,lMt=CR.ERR_INVALID_ARG_TYPE,uMt=CR.ERR_STREAM_PUSH_AFTER_EOF,cMt=CR.ERR_METHOD_NOT_IMPLEMENTED,fMt=CR.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,vA,wj,Tj;Uy()(Bu,rE);var tE=kj.errorOrDestroy,Aj=["error","close","destroy","pause","resume"];function hMt(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function pSe(e,t,r){dA=dA||g2(),e=e||{},typeof r!="boolean"&&(r=t instanceof dA),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=sMt(this,e,"readableHighWaterMark",r),this.buffer=new aMt,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(vA||(vA=_j().StringDecoder),this.decoder=new vA(e.encoding),this.encoding=e.encoding)}function Bu(e){if(dA=dA||g2(),!(this instanceof Bu))return new Bu(e);var t=this instanceof dA;this._readableState=new pSe(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),rE.call(this)}Object.defineProperty(Bu.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});Bu.prototype.destroy=kj.destroy;Bu.prototype._undestroy=kj.undestroy;Bu.prototype._destroy=function(e,t){t(e)};Bu.prototype.push=function(e,t){var r=this._readableState,n;return r.objectMode?n=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=kR.from(e,t),t=""),n=!0),gSe(this,e,t,!1,n)};Bu.prototype.unshift=function(e){return gSe(this,e,null,!0,!1)};function gSe(e,t,r,n,i){nu("readableAddChunk",t);var a=e._readableState;if(t===null)a.reading=!1,pMt(e,a);else{var o;if(i||(o=dMt(a,t)),o)tE(e,o);else if(a.objectMode||t&&t.length>0)if(typeof t!="string"&&!a.objectMode&&Object.getPrototypeOf(t)!==kR.prototype&&(t=iMt(t)),n)a.endEmitted?tE(e,new fMt):Sj(e,a,t,!0);else if(a.ended)tE(e,new uMt);else{if(a.destroyed)return!1;a.reading=!1,a.decoder&&!r?(t=a.decoder.write(t),a.objectMode||t.length!==0?Sj(e,a,t,!1):Ej(e,a)):Sj(e,a,t,!1)}else n||(a.reading=!1,Ej(e,a))}return!a.ended&&(a.length=hSe?e=hSe:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function dSe(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=vMt(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}Bu.prototype.read=function(e){nu("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended))return nu("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?Mj(this):LR(this),null;if(e=dSe(e,t),e===0&&t.ended)return t.length===0&&Mj(this),null;var n=t.needReadable;nu("need readable",n),(t.length===0||t.length-e0?i=_Se(e,t):i=null,i===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&Mj(this)),i!==null&&this.emit("data",i),i};function pMt(e,t){if(nu("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?LR(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,mSe(e)))}}function LR(e){var t=e._readableState;nu("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(nu("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(mSe,e))}function mSe(e){var t=e._readableState;nu("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,Cj(e)}function Ej(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(gMt,e,t))}function gMt(e,t){for(;!t.reading&&!t.ended&&(t.length1&&xSe(n.pipes,e)!==-1)&&!u&&(nu("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function h(b){nu("onerror",b),_(),e.removeListener("error",h),vSe(e,"error")===0&&tE(e,b)}hMt(e,"error",h);function d(){e.removeListener("finish",v),_()}e.once("close",d);function v(){nu("onfinish"),e.removeListener("close",d),_()}e.once("finish",v);function _(){nu("unpipe"),r.unpipe(e)}return e.emit("pipe",r),n.flowing||(nu("pipe resume"),r.resume()),e};function mMt(e){return function(){var r=e._readableState;nu("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&vSe(e,"data")&&(r.flowing=!0,Cj(e))}}Bu.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,n.flowing!==!1&&this.resume()):e==="readable"&&!n.endEmitted&&!n.readableListening&&(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,nu("on readable",n.length,n.reading),n.length?LR(this):n.reading||process.nextTick(yMt,this)),r};Bu.prototype.addListener=Bu.prototype.on;Bu.prototype.removeListener=function(e,t){var r=rE.prototype.removeListener.call(this,e,t);return e==="readable"&&process.nextTick(ySe,this),r};Bu.prototype.removeAllListeners=function(e){var t=rE.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(ySe,this),t};function ySe(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function yMt(e){nu("readable nexttick read 0"),e.read(0)}Bu.prototype.resume=function(){var e=this._readableState;return e.flowing||(nu("resume"),e.flowing=!e.readableListening,_Mt(this,e)),e.paused=!1,this};function _Mt(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(xMt,e,t))}function xMt(e,t){nu("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),Cj(e),t.flowing&&!t.reading&&e.read(0)}Bu.prototype.pause=function(){return nu("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(nu("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function Cj(e){var t=e._readableState;for(nu("flow",t.flowing);t.flowing&&e.read()!==null;);}Bu.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;e.on("end",function(){if(nu("wrapped end"),r.decoder&&!r.ended){var o=r.decoder.end();o&&o.length&&t.push(o)}t.push(null)}),e.on("data",function(o){if(nu("wrapped data"),r.decoder&&(o=r.decoder.write(o)),!(r.objectMode&&o==null)&&!(!r.objectMode&&(!o||!o.length))){var s=t.push(o);s||(n=!0,e.pause())}});for(var i in e)this[i]===void 0&&typeof e[i]=="function"&&(this[i]=function(s){return function(){return e[s].apply(e,arguments)}}(i));for(var a=0;a=t.length?(t.decoder?r=t.buffer.join(""):t.buffer.length===1?r=t.buffer.first():r=t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function Mj(e){var t=e._readableState;nu("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(bMt,t,e))}function bMt(e,t){if(nu("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(Bu.from=function(e,t){return Tj===void 0&&(Tj=fSe()),Tj(Bu,e,t)});function xSe(e,t){for(var r=0,n=e.length;r{"use strict";TSe.exports=Gy;var PR=p2().codes,wMt=PR.ERR_METHOD_NOT_IMPLEMENTED,TMt=PR.ERR_MULTIPLE_CALLBACK,AMt=PR.ERR_TRANSFORM_ALREADY_TRANSFORMING,SMt=PR.ERR_TRANSFORM_WITH_LENGTH_0,IR=g2();Uy()(Gy,IR);function MMt(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(n===null)return this.emit("error",new TMt);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length{"use strict";SSe.exports=iE;var ASe=Lj();Uy()(iE,ASe);function iE(e){if(!(this instanceof iE))return new iE(e);ASe.call(this,e)}iE.prototype._transform=function(e,t,r){r(null,e)}});var PSe=ye((Jhr,LSe)=>{"use strict";var Pj;function kMt(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var CSe=p2().codes,CMt=CSe.ERR_MISSING_ARGS,LMt=CSe.ERR_STREAM_DESTROYED;function ESe(e){if(e)throw e}function PMt(e){return e.setHeader&&typeof e.abort=="function"}function IMt(e,t,r,n){n=kMt(n);var i=!1;e.on("close",function(){i=!0}),Pj===void 0&&(Pj=SR()),Pj(e,{readable:t,writable:r},function(o){if(o)return n(o);i=!0,n()});var a=!1;return function(o){if(!i&&!a){if(a=!0,PMt(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();n(o||new LMt("pipe"))}}}function kSe(e){e()}function RMt(e,t){return e.pipe(t)}function DMt(e){return!e.length||typeof e[e.length-1]!="function"?ESe:e.pop()}function FMt(){for(var e=arguments.length,t=new Array(e),r=0;r0;return IMt(o,l,u,function(c){i||(i=c),c&&a.forEach(kSe),!l&&(a.forEach(kSe),n(i))})});return t.reduce(RMt)}LSe.exports=FMt});var RSe=ye(($hr,ISe)=>{ISe.exports=K0;var Ij=pb().EventEmitter,zMt=Uy();zMt(K0,Ij);K0.Readable=pj();K0.Writable=hj();K0.Duplex=g2();K0.Transform=Lj();K0.PassThrough=MSe();K0.finished=SR();K0.pipeline=PSe();K0.Stream=K0;function K0(){Ij.call(this)}K0.prototype.pipe=function(e,t){var r=this;function n(c){e.writable&&e.write(c)===!1&&r.pause&&r.pause()}r.on("data",n);function i(){r.readable&&r.resume&&r.resume()}e.on("drain",i),!e._isStdio&&(!t||t.end!==!1)&&(r.on("end",o),r.on("close",s));var a=!1;function o(){a||(a=!0,e.end())}function s(){a||(a=!0,typeof e.destroy=="function"&&e.destroy())}function l(c){if(u(),Ij.listenerCount(this,"error")===0)throw c}r.on("error",l),e.on("error",l);function u(){r.removeListener("data",n),e.removeListener("drain",i),r.removeListener("end",o),r.removeListener("close",s),r.removeListener("error",l),e.removeListener("error",l),r.removeListener("end",u),r.removeListener("close",u),e.removeListener("close",u)}return r.on("end",u),r.on("close",u),e.on("close",u),e.emit("pipe",r),e}});var gA=ye(fu=>{var DSe=Object.getOwnPropertyDescriptors||function(t){for(var r=Object.keys(t),n={},i=0;i=i)return s;switch(s){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(l){return"[Circular]"}default:return s}}),o=n[r];r=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),zj(t)?r.showHidden=t:t&&fu._extend(r,t),w2(r.showHidden)&&(r.showHidden=!1),w2(r.depth)&&(r.depth=2),w2(r.colors)&&(r.colors=!1),w2(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=qMt),zR(r,e,r.depth)}fu.inspect=O_;O_.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};O_.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function qMt(e,t){var r=O_.styles[t];return r?"\x1B["+O_.colors[r][0]+"m"+e+"\x1B["+O_.colors[r][1]+"m":e}function BMt(e,t){return e}function NMt(e){var t={};return e.forEach(function(r,n){t[r]=!0}),t}function zR(e,t,r){if(e.customInspect&&t&&FR(t.inspect)&&t.inspect!==fu.inspect&&!(t.constructor&&t.constructor.prototype===t)){var n=t.inspect(r,e);return BR(n)||(n=zR(e,n,r)),n}var i=UMt(e,t);if(i)return i;var a=Object.keys(t),o=NMt(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(t)),aE(t)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return Rj(t);if(a.length===0){if(FR(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if(nE(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(OR(t))return e.stylize(Date.prototype.toString.call(t),"date");if(aE(t))return Rj(t)}var l="",u=!1,c=["{","}"];if(zSe(t)&&(u=!0,c=["[","]"]),FR(t)){var f=t.name?": "+t.name:"";l=" [Function"+f+"]"}if(nE(t)&&(l=" "+RegExp.prototype.toString.call(t)),OR(t)&&(l=" "+Date.prototype.toUTCString.call(t)),aE(t)&&(l=" "+Rj(t)),a.length===0&&(!u||t.length==0))return c[0]+l+c[1];if(r<0)return nE(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var h;return u?h=VMt(e,t,r,o,a):h=a.map(function(d){return Fj(e,t,r,o,d,u)}),e.seen.pop(),GMt(h,l,c)}function UMt(e,t){if(w2(t))return e.stylize("undefined","undefined");if(BR(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(OSe(t))return e.stylize(""+t,"number");if(zj(t))return e.stylize(""+t,"boolean");if(qR(t))return e.stylize("null","null")}function Rj(e){return"["+Error.prototype.toString.call(e)+"]"}function VMt(e,t,r,n,i){for(var a=[],o=0,s=t.length;o{"use strict";function F5e(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function B5t(e){for(var t=1;t0?this.tail.next=n:this.head=n,this.tail=n,++this.length}},{key:"unshift",value:function(r){var n={data:r,next:this.head};this.length===0&&(this.tail=n),this.head=n,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var n=this.head,i=""+n.data;n=n.next;)i+=r+n.data;return i}},{key:"concat",value:function(r){if(this.length===0)return _R.alloc(0);for(var n=_R.allocUnsafe(r>>>0),i=this.head,a=0;i;)W5t(i.data,n,a),a+=i.data.length,i=i.next;return n}},{key:"consume",value:function(r,n){var i;return ro.length?o.length:r;if(s===o.length?a+=o:a+=o.slice(0,r),r-=s,r===0){s===o.length?(++i,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(s));break}++i}return this.length-=i,a}},{key:"_getBuffer",value:function(r){var n=_R.allocUnsafe(r),i=this.head,a=1;for(i.data.copy(n),r-=i.data.length;i=i.next;){var o=i.data,s=r>o.length?o.length:r;if(o.copy(n,n.length-r,0,s),r-=s,r===0){s===o.length?(++a,i.next?this.head=i.next:this.head=this.tail=null):(this.head=i,i.data=o.slice(s));break}++a}return this.length-=a,n}},{key:j5t,value:function(r,n){return aj(this,B5t({},n,{depth:0,customInspect:!1}))}}]),e}()});var sj=ye((Ohr,N5e)=>{"use strict";function X5t(e,t){var r=this,n=this._readableState&&this._readableState.destroyed,i=this._writableState&&this._writableState.destroyed;return n||i?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(oj,this,e)):process.nextTick(oj,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(a){!t&&a?r._writableState?r._writableState.errorEmitted?process.nextTick(xR,r):(r._writableState.errorEmitted=!0,process.nextTick(B5e,r,a)):process.nextTick(B5e,r,a):t?(process.nextTick(xR,r),t(a)):process.nextTick(xR,r)}),this)}function B5e(e,t){oj(e,t),xR(e)}function xR(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function Z5t(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function oj(e,t){e.emit("error",t)}function Y5t(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}N5e.exports={destroy:X5t,undestroy:Z5t,errorOrDestroy:Y5t}});var p2=ye((qhr,G5e)=>{"use strict";function K5t(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}var V5e={};function Y0(e,t,r){r||(r=Error);function n(a,o,s){return typeof t=="string"?t:t(a,o,s)}var i=function(a){K5t(o,a);function o(s,l,u){return a.call(this,n(s,l,u))||this}return o}(r);i.prototype.name=r.name,i.prototype.code=e,V5e[e]=i}function U5e(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map(function(n){return String(n)}),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function J5t(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function $5t(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function Q5t(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}Y0("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);Y0("ERR_INVALID_ARG_TYPE",function(e,t,r){var n;typeof t=="string"&&J5t(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";var i;if($5t(e," argument"))i="The ".concat(e," ").concat(n," ").concat(U5e(t,"type"));else{var a=Q5t(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(a," ").concat(n," ").concat(U5e(t,"type"))}return i+=". Received type ".concat(typeof r),i},TypeError);Y0("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");Y0("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});Y0("ERR_STREAM_PREMATURE_CLOSE","Premature close");Y0("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});Y0("ERR_MULTIPLE_CALLBACK","Callback called multiple times");Y0("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");Y0("ERR_STREAM_WRITE_AFTER_END","write after end");Y0("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);Y0("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);Y0("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");G5e.exports.codes=V5e});var lj=ye((Bhr,H5e)=>{"use strict";var eSt=p2().codes.ERR_INVALID_OPT_VALUE;function tSt(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function rSt(e,t,r,n){var i=tSt(t,n,r);if(i!=null){if(!(isFinite(i)&&Math.floor(i)===i)||i<0){var a=n?r:"highWaterMark";throw new eSt(a,i)}return Math.floor(i)}return e.objectMode?16:16*1024}H5e.exports={getHighWaterMark:rSt}});var W5e=ye((Nhr,j5e)=>{j5e.exports=iSt;function iSt(e,t){if(uj("noDeprecation"))return e;var r=!1;function n(){if(!r){if(uj("throwDeprecation"))throw new Error(t);uj("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}return n}function uj(e){try{if(!window.localStorage)return!1}catch(r){return!1}var t=window.localStorage[e];return t==null?!1:String(t).toLowerCase()==="true"}});var hj=ye((Uhr,$5e)=>{"use strict";$5e.exports=zh;function Z5e(e){var t=this;this.next=null,this.entry=null,this.finish=function(){LSt(t,e)}}var hA;zh.WritableState=Q4;var nSt={deprecate:W5e()},Y5e=fH(),wR=c2().Buffer,aSt=window.Uint8Array||function(){};function oSt(e){return wR.from(e)}function sSt(e){return wR.isBuffer(e)||e instanceof aSt}var fj=sj(),lSt=lj(),uSt=lSt.getHighWaterMark,R_=p2().codes,cSt=R_.ERR_INVALID_ARG_TYPE,fSt=R_.ERR_METHOD_NOT_IMPLEMENTED,hSt=R_.ERR_MULTIPLE_CALLBACK,dSt=R_.ERR_STREAM_CANNOT_PIPE,vSt=R_.ERR_STREAM_DESTROYED,pSt=R_.ERR_STREAM_NULL_VALUES,gSt=R_.ERR_STREAM_WRITE_AFTER_END,mSt=R_.ERR_UNKNOWN_ENCODING,dA=fj.errorOrDestroy;Uy()(zh,Y5e);function ySt(){}function Q4(e,t,r){hA=hA||g2(),e=e||{},typeof r!="boolean"&&(r=t instanceof hA),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=uSt(this,e,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var n=e.decodeStrings===!1;this.decodeStrings=!n,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(i){SSt(t,i)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new Z5e(this)}Q4.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty(Q4.prototype,"buffer",{get:nSt.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}})();var bR;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(bR=Function.prototype[Symbol.hasInstance],Object.defineProperty(zh,Symbol.hasInstance,{value:function(t){return bR.call(this,t)?!0:this!==zh?!1:t&&t._writableState instanceof Q4}})):bR=function(t){return t instanceof this};function zh(e){hA=hA||g2();var t=this instanceof hA;if(!t&&!bR.call(zh,this))return new zh(e);this._writableState=new Q4(e,this,t),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),Y5e.call(this)}zh.prototype.pipe=function(){dA(this,new dSt)};function _St(e,t){var r=new gSt;dA(e,r),process.nextTick(t,r)}function xSt(e,t,r,n){var i;return r===null?i=new pSt:typeof r!="string"&&!t.objectMode&&(i=new cSt("chunk",["string","Buffer"],r)),i?(dA(e,i),process.nextTick(n,i),!1):!0}zh.prototype.write=function(e,t,r){var n=this._writableState,i=!1,a=!n.objectMode&&sSt(e);return a&&!wR.isBuffer(e)&&(e=oSt(e)),typeof t=="function"&&(r=t,t=null),a?t="buffer":t||(t=n.defaultEncoding),typeof r!="function"&&(r=ySt),n.ending?_St(this,r):(a||xSt(this,n,e,r))&&(n.pendingcb++,i=wSt(this,n,a,e,t,r)),i};zh.prototype.cork=function(){this._writableState.corked++};zh.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&K5e(this,e))};zh.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new mSt(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(zh.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function bSt(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=wR.from(t,r)),t}Object.defineProperty(zh.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function wSt(e,t,r,n,i,a){if(!r){var o=bSt(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var l=t.length{"use strict";var PSt=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};eSe.exports=Bm;var Q5e=pj(),vj=hj();Uy()(Bm,Q5e);for(dj=PSt(vj.prototype),TR=0;TR{var SR=c2(),Nm=SR.Buffer;function tSe(e,t){for(var r in e)t[r]=e[r]}Nm.from&&Nm.alloc&&Nm.allocUnsafe&&Nm.allocUnsafeSlow?rSe.exports=SR:(tSe(SR,gj),gj.Buffer=m2);function m2(e,t,r){return Nm(e,t,r)}m2.prototype=Object.create(Nm.prototype);tSe(Nm,m2);m2.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return Nm(e,t,r)};m2.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var n=Nm(e);return t!==void 0?typeof r=="string"?n.fill(t,r):n.fill(t):n.fill(0),n};m2.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return Nm(e)};m2.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return SR.SlowBuffer(e)}});var _j=ye(aSe=>{"use strict";var yj=iSe().Buffer,nSe=yj.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function DSt(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function FSt(e){var t=DSt(e);if(typeof t!="string"&&(yj.isEncoding===nSe||!nSe(e)))throw new Error("Unknown encoding: "+e);return t||e}aSe.StringDecoder=eE;function eE(e){this.encoding=FSt(e);var t;switch(this.encoding){case"utf16le":this.text=USt,this.end=VSt,t=4;break;case"utf8":this.fillLast=qSt,t=4;break;case"base64":this.text=GSt,this.end=HSt,t=3;break;default:this.write=jSt,this.end=WSt;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=yj.allocUnsafe(t)}eE.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function zSt(e,t,r){var n=t.length-1;if(n=0?(i>0&&(e.lastNeed=i-1),i):--n=0?(i>0&&(e.lastNeed=i-2),i):--n=0?(i>0&&(i===2?i=0:e.lastNeed=i-3),i):0))}function OSt(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function qSt(e){var t=this.lastTotal-this.lastNeed,r=OSt(this,e,t);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function BSt(e,t){var r=zSt(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)}function NSt(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function USt(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function VSt(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function GSt(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function HSt(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function jSt(e){return e.toString(this.encoding)}function WSt(e){return e&&e.length?this.write(e):""}});var MR=ye((Hhr,lSe)=>{"use strict";var oSe=p2().codes.ERR_STREAM_PREMATURE_CLOSE;function XSt(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i{"use strict";var ER;function D_(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var KSt=MR(),F_=Symbol("lastResolve"),y2=Symbol("lastReject"),tE=Symbol("error"),kR=Symbol("ended"),_2=Symbol("lastPromise"),xj=Symbol("handlePromise"),x2=Symbol("stream");function z_(e,t){return{value:e,done:t}}function JSt(e){var t=e[F_];if(t!==null){var r=e[x2].read();r!==null&&(e[_2]=null,e[F_]=null,e[y2]=null,t(z_(r,!1)))}}function $St(e){process.nextTick(JSt,e)}function QSt(e,t){return function(r,n){e.then(function(){if(t[kR]){r(z_(void 0,!0));return}t[xj](r,n)},n)}}var eMt=Object.getPrototypeOf(function(){}),tMt=Object.setPrototypeOf((ER={get stream(){return this[x2]},next:function(){var t=this,r=this[tE];if(r!==null)return Promise.reject(r);if(this[kR])return Promise.resolve(z_(void 0,!0));if(this[x2].destroyed)return new Promise(function(o,s){process.nextTick(function(){t[tE]?s(t[tE]):o(z_(void 0,!0))})});var n=this[_2],i;if(n)i=new Promise(QSt(n,this));else{var a=this[x2].read();if(a!==null)return Promise.resolve(z_(a,!1));i=new Promise(this[xj])}return this[_2]=i,i}},D_(ER,Symbol.asyncIterator,function(){return this}),D_(ER,"return",function(){var t=this;return new Promise(function(r,n){t[x2].destroy(null,function(i){if(i){n(i);return}r(z_(void 0,!0))})})}),ER),eMt),rMt=function(t){var r,n=Object.create(tMt,(r={},D_(r,x2,{value:t,writable:!0}),D_(r,F_,{value:null,writable:!0}),D_(r,y2,{value:null,writable:!0}),D_(r,tE,{value:null,writable:!0}),D_(r,kR,{value:t._readableState.endEmitted,writable:!0}),D_(r,xj,{value:function(a,o){var s=n[x2].read();s?(n[_2]=null,n[F_]=null,n[y2]=null,a(z_(s,!1))):(n[F_]=a,n[y2]=o)},writable:!0}),r));return n[_2]=null,KSt(t,function(i){if(i&&i.code!=="ERR_STREAM_PREMATURE_CLOSE"){var a=n[y2];a!==null&&(n[_2]=null,n[F_]=null,n[y2]=null,a(i)),n[tE]=i;return}var o=n[F_];o!==null&&(n[_2]=null,n[F_]=null,n[y2]=null,o(z_(void 0,!0))),n[kR]=!0}),t.on("readable",$St.bind(null,n)),n};uSe.exports=rMt});var hSe=ye((Whr,fSe)=>{fSe.exports=function(){throw new Error("Readable.from is not available in the browser")}});var pj=ye((Zhr,wSe)=>{"use strict";wSe.exports=Bu;var vA;Bu.ReadableState=gSe;var Xhr=pb().EventEmitter,pSe=function(t,r){return t.listeners(r).length},iE=fH(),CR=c2().Buffer,iMt=window.Uint8Array||function(){};function nMt(e){return CR.from(e)}function aMt(e){return CR.isBuffer(e)||e instanceof iMt}var bj=nj(),nu;bj&&bj.debuglog?nu=bj.debuglog("stream"):nu=function(){};var oMt=q5e(),kj=sj(),sMt=lj(),lMt=sMt.getHighWaterMark,LR=p2().codes,uMt=LR.ERR_INVALID_ARG_TYPE,cMt=LR.ERR_STREAM_PUSH_AFTER_EOF,fMt=LR.ERR_METHOD_NOT_IMPLEMENTED,hMt=LR.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,pA,wj,Tj;Uy()(Bu,iE);var rE=kj.errorOrDestroy,Aj=["error","close","destroy","pause","resume"];function dMt(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function gSe(e,t,r){vA=vA||g2(),e=e||{},typeof r!="boolean"&&(r=t instanceof vA),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=lMt(this,e,"readableHighWaterMark",r),this.buffer=new oMt,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(pA||(pA=_j().StringDecoder),this.decoder=new pA(e.encoding),this.encoding=e.encoding)}function Bu(e){if(vA=vA||g2(),!(this instanceof Bu))return new Bu(e);var t=this instanceof vA;this._readableState=new gSe(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),iE.call(this)}Object.defineProperty(Bu.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});Bu.prototype.destroy=kj.destroy;Bu.prototype._undestroy=kj.undestroy;Bu.prototype._destroy=function(e,t){t(e)};Bu.prototype.push=function(e,t){var r=this._readableState,n;return r.objectMode?n=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=CR.from(e,t),t=""),n=!0),mSe(this,e,t,!1,n)};Bu.prototype.unshift=function(e){return mSe(this,e,null,!0,!1)};function mSe(e,t,r,n,i){nu("readableAddChunk",t);var a=e._readableState;if(t===null)a.reading=!1,gMt(e,a);else{var o;if(i||(o=vMt(a,t)),o)rE(e,o);else if(a.objectMode||t&&t.length>0)if(typeof t!="string"&&!a.objectMode&&Object.getPrototypeOf(t)!==CR.prototype&&(t=nMt(t)),n)a.endEmitted?rE(e,new hMt):Sj(e,a,t,!0);else if(a.ended)rE(e,new cMt);else{if(a.destroyed)return!1;a.reading=!1,a.decoder&&!r?(t=a.decoder.write(t),a.objectMode||t.length!==0?Sj(e,a,t,!1):Ej(e,a)):Sj(e,a,t,!1)}else n||(a.reading=!1,Ej(e,a))}return!a.ended&&(a.length=dSe?e=dSe:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function vSe(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=pMt(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}Bu.prototype.read=function(e){nu("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended))return nu("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?Mj(this):PR(this),null;if(e=vSe(e,t),e===0&&t.ended)return t.length===0&&Mj(this),null;var n=t.needReadable;nu("need readable",n),(t.length===0||t.length-e0?i=xSe(e,t):i=null,i===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&Mj(this)),i!==null&&this.emit("data",i),i};function gMt(e,t){if(nu("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?PR(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,ySe(e)))}}function PR(e){var t=e._readableState;nu("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(nu("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(ySe,e))}function ySe(e){var t=e._readableState;nu("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,Cj(e)}function Ej(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(mMt,e,t))}function mMt(e,t){for(;!t.reading&&!t.ended&&(t.length1&&bSe(n.pipes,e)!==-1)&&!u&&(nu("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function h(b){nu("onerror",b),_(),e.removeListener("error",h),pSe(e,"error")===0&&rE(e,b)}dMt(e,"error",h);function d(){e.removeListener("finish",v),_()}e.once("close",d);function v(){nu("onfinish"),e.removeListener("close",d),_()}e.once("finish",v);function _(){nu("unpipe"),r.unpipe(e)}return e.emit("pipe",r),n.flowing||(nu("pipe resume"),r.resume()),e};function yMt(e){return function(){var r=e._readableState;nu("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&pSe(e,"data")&&(r.flowing=!0,Cj(e))}}Bu.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,n.flowing!==!1&&this.resume()):e==="readable"&&!n.endEmitted&&!n.readableListening&&(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,nu("on readable",n.length,n.reading),n.length?PR(this):n.reading||process.nextTick(_Mt,this)),r};Bu.prototype.addListener=Bu.prototype.on;Bu.prototype.removeListener=function(e,t){var r=iE.prototype.removeListener.call(this,e,t);return e==="readable"&&process.nextTick(_Se,this),r};Bu.prototype.removeAllListeners=function(e){var t=iE.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(_Se,this),t};function _Se(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function _Mt(e){nu("readable nexttick read 0"),e.read(0)}Bu.prototype.resume=function(){var e=this._readableState;return e.flowing||(nu("resume"),e.flowing=!e.readableListening,xMt(this,e)),e.paused=!1,this};function xMt(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(bMt,e,t))}function bMt(e,t){nu("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),Cj(e),t.flowing&&!t.reading&&e.read(0)}Bu.prototype.pause=function(){return nu("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(nu("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function Cj(e){var t=e._readableState;for(nu("flow",t.flowing);t.flowing&&e.read()!==null;);}Bu.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;e.on("end",function(){if(nu("wrapped end"),r.decoder&&!r.ended){var o=r.decoder.end();o&&o.length&&t.push(o)}t.push(null)}),e.on("data",function(o){if(nu("wrapped data"),r.decoder&&(o=r.decoder.write(o)),!(r.objectMode&&o==null)&&!(!r.objectMode&&(!o||!o.length))){var s=t.push(o);s||(n=!0,e.pause())}});for(var i in e)this[i]===void 0&&typeof e[i]=="function"&&(this[i]=function(s){return function(){return e[s].apply(e,arguments)}}(i));for(var a=0;a=t.length?(t.decoder?r=t.buffer.join(""):t.buffer.length===1?r=t.buffer.first():r=t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function Mj(e){var t=e._readableState;nu("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(wMt,t,e))}function wMt(e,t){if(nu("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(Bu.from=function(e,t){return Tj===void 0&&(Tj=hSe()),Tj(Bu,e,t)});function bSe(e,t){for(var r=0,n=e.length;r{"use strict";ASe.exports=Gy;var IR=p2().codes,TMt=IR.ERR_METHOD_NOT_IMPLEMENTED,AMt=IR.ERR_MULTIPLE_CALLBACK,SMt=IR.ERR_TRANSFORM_ALREADY_TRANSFORMING,MMt=IR.ERR_TRANSFORM_WITH_LENGTH_0,RR=g2();Uy()(Gy,RR);function EMt(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(n===null)return this.emit("error",new AMt);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length{"use strict";MSe.exports=nE;var SSe=Lj();Uy()(nE,SSe);function nE(e){if(!(this instanceof nE))return new nE(e);SSe.call(this,e)}nE.prototype._transform=function(e,t,r){r(null,e)}});var ISe=ye((Jhr,PSe)=>{"use strict";var Pj;function CMt(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var LSe=p2().codes,LMt=LSe.ERR_MISSING_ARGS,PMt=LSe.ERR_STREAM_DESTROYED;function kSe(e){if(e)throw e}function IMt(e){return e.setHeader&&typeof e.abort=="function"}function RMt(e,t,r,n){n=CMt(n);var i=!1;e.on("close",function(){i=!0}),Pj===void 0&&(Pj=MR()),Pj(e,{readable:t,writable:r},function(o){if(o)return n(o);i=!0,n()});var a=!1;return function(o){if(!i&&!a){if(a=!0,IMt(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();n(o||new PMt("pipe"))}}}function CSe(e){e()}function DMt(e,t){return e.pipe(t)}function FMt(e){return!e.length||typeof e[e.length-1]!="function"?kSe:e.pop()}function zMt(){for(var e=arguments.length,t=new Array(e),r=0;r0;return RMt(o,l,u,function(c){i||(i=c),c&&a.forEach(CSe),!l&&(a.forEach(CSe),n(i))})});return t.reduce(DMt)}PSe.exports=zMt});var DSe=ye(($hr,RSe)=>{RSe.exports=K0;var Ij=pb().EventEmitter,OMt=Uy();OMt(K0,Ij);K0.Readable=pj();K0.Writable=hj();K0.Duplex=g2();K0.Transform=Lj();K0.PassThrough=ESe();K0.finished=MR();K0.pipeline=ISe();K0.Stream=K0;function K0(){Ij.call(this)}K0.prototype.pipe=function(e,t){var r=this;function n(c){e.writable&&e.write(c)===!1&&r.pause&&r.pause()}r.on("data",n);function i(){r.readable&&r.resume&&r.resume()}e.on("drain",i),!e._isStdio&&(!t||t.end!==!1)&&(r.on("end",o),r.on("close",s));var a=!1;function o(){a||(a=!0,e.end())}function s(){a||(a=!0,typeof e.destroy=="function"&&e.destroy())}function l(c){if(u(),Ij.listenerCount(this,"error")===0)throw c}r.on("error",l),e.on("error",l);function u(){r.removeListener("data",n),e.removeListener("drain",i),r.removeListener("end",o),r.removeListener("close",s),r.removeListener("error",l),e.removeListener("error",l),r.removeListener("end",u),r.removeListener("close",u),e.removeListener("close",u)}return r.on("end",u),r.on("close",u),e.on("close",u),e.emit("pipe",r),e}});var mA=ye(fu=>{var FSe=Object.getOwnPropertyDescriptors||function(t){for(var r=Object.keys(t),n={},i=0;i=i)return s;switch(s){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(l){return"[Circular]"}default:return s}}),o=n[r];r=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),zj(t)?r.showHidden=t:t&&fu._extend(r,t),w2(r.showHidden)&&(r.showHidden=!1),w2(r.depth)&&(r.depth=2),w2(r.colors)&&(r.colors=!1),w2(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=BMt),OR(r,e,r.depth)}fu.inspect=O_;O_.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};O_.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function BMt(e,t){var r=O_.styles[t];return r?"\x1B["+O_.colors[r][0]+"m"+e+"\x1B["+O_.colors[r][1]+"m":e}function NMt(e,t){return e}function UMt(e){var t={};return e.forEach(function(r,n){t[r]=!0}),t}function OR(e,t,r){if(e.customInspect&&t&&zR(t.inspect)&&t.inspect!==fu.inspect&&!(t.constructor&&t.constructor.prototype===t)){var n=t.inspect(r,e);return NR(n)||(n=OR(e,n,r)),n}var i=VMt(e,t);if(i)return i;var a=Object.keys(t),o=UMt(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(t)),oE(t)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return Rj(t);if(a.length===0){if(zR(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if(aE(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(qR(t))return e.stylize(Date.prototype.toString.call(t),"date");if(oE(t))return Rj(t)}var l="",u=!1,c=["{","}"];if(OSe(t)&&(u=!0,c=["[","]"]),zR(t)){var f=t.name?": "+t.name:"";l=" [Function"+f+"]"}if(aE(t)&&(l=" "+RegExp.prototype.toString.call(t)),qR(t)&&(l=" "+Date.prototype.toUTCString.call(t)),oE(t)&&(l=" "+Rj(t)),a.length===0&&(!u||t.length==0))return c[0]+l+c[1];if(r<0)return aE(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var h;return u?h=GMt(e,t,r,o,a):h=a.map(function(d){return Fj(e,t,r,o,d,u)}),e.seen.pop(),HMt(h,l,c)}function VMt(e,t){if(w2(t))return e.stylize("undefined","undefined");if(NR(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(qSe(t))return e.stylize(""+t,"number");if(zj(t))return e.stylize(""+t,"boolean");if(BR(t))return e.stylize("null","null")}function Rj(e){return"["+Error.prototype.toString.call(e)+"]"}function GMt(e,t,r,n,i){for(var a=[],o=0,s=t.length;o-1&&(a?s=s.split(` `).map(function(u){return" "+u}).join(` `).slice(2):s=` `+s.split(` `).map(function(u){return" "+u}).join(` -`))):s=e.stylize("[Circular]","special")),w2(o)){if(a&&i.match(/^\d+$/))return s;o=JSON.stringify(""+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function GMt(e,t,r){var n=0,i=e.reduce(function(a,o){return n++,o.indexOf(` +`))):s=e.stylize("[Circular]","special")),w2(o)){if(a&&i.match(/^\d+$/))return s;o=JSON.stringify(""+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function HMt(e,t,r){var n=0,i=e.reduce(function(a,o){return n++,o.indexOf(` `)>=0&&n++,a+o.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?r[0]+(t===""?"":t+` `)+" "+e.join(`, - `)+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}fu.types=JH();function zSe(e){return Array.isArray(e)}fu.isArray=zSe;function zj(e){return typeof e=="boolean"}fu.isBoolean=zj;function qR(e){return e===null}fu.isNull=qR;function HMt(e){return e==null}fu.isNullOrUndefined=HMt;function OSe(e){return typeof e=="number"}fu.isNumber=OSe;function BR(e){return typeof e=="string"}fu.isString=BR;function jMt(e){return typeof e=="symbol"}fu.isSymbol=jMt;function w2(e){return e===void 0}fu.isUndefined=w2;function nE(e){return pA(e)&&Oj(e)==="[object RegExp]"}fu.isRegExp=nE;fu.types.isRegExp=nE;function pA(e){return typeof e=="object"&&e!==null}fu.isObject=pA;function OR(e){return pA(e)&&Oj(e)==="[object Date]"}fu.isDate=OR;fu.types.isDate=OR;function aE(e){return pA(e)&&(Oj(e)==="[object Error]"||e instanceof Error)}fu.isError=aE;fu.types.isNativeError=aE;function FR(e){return typeof e=="function"}fu.isFunction=FR;function WMt(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}fu.isPrimitive=WMt;fu.isBuffer=$H();function Oj(e){return Object.prototype.toString.call(e)}function Dj(e){return e<10?"0"+e.toString(10):e.toString(10)}var XMt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function ZMt(){var e=new Date,t=[Dj(e.getHours()),Dj(e.getMinutes()),Dj(e.getSeconds())].join(":");return[e.getDate(),XMt[e.getMonth()],t].join(" ")}fu.log=function(){console.log("%s - %s",ZMt(),fu.format.apply(fu,arguments))};fu.inherits=Uy();fu._extend=function(e,t){if(!t||!pA(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};function qSe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var b2=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;fu.promisify=function(t){if(typeof t!="function")throw new TypeError('The "original" argument must be of type Function');if(b2&&t[b2]){var r=t[b2];if(typeof r!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(r,b2,{value:r,enumerable:!1,writable:!1,configurable:!0}),r}function r(){for(var n,i,a=new Promise(function(l,u){n=l,i=u}),o=[],s=0;s{"use strict";function q_(e){"@babel/helpers - typeof";return q_=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},q_(e)}function BSe(e,t){for(var r=0;r2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function o4t(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function s4t(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function l4t(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}oE("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError);oE("ERR_INVALID_ARG_TYPE",function(e,t,r){mA===void 0&&(mA=sE()),mA(typeof e=="string","'name' must be a string");var n;typeof t=="string"&&o4t(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";var i;if(s4t(e," argument"))i="The ".concat(e," ").concat(n," ").concat(NSe(t,"type"));else{var a=l4t(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(a," ").concat(n," ").concat(NSe(t,"type"))}return i+=". Received type ".concat(q_(r)),i},TypeError);oE("ERR_INVALID_ARG_VALUE",function(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";qj===void 0&&(qj=gA());var n=qj.inspect(t);return n.length>128&&(n="".concat(n.slice(0,128),"...")),"The argument '".concat(e,"' ").concat(r,". Received ").concat(n)},TypeError,RangeError);oE("ERR_INVALID_RETURN_VALUE",function(e,t,r){var n;return r&&r.constructor&&r.constructor.name?n="instance of ".concat(r.constructor.name):n="type ".concat(q_(r)),"Expected ".concat(e,' to be returned from the "').concat(t,'"')+" function but got ".concat(n,".")},TypeError);oE("ERR_MISSING_ARGS",function(){for(var e=arguments.length,t=new Array(e),r=0;r0,"At least one arg needs to be specified");var n="The ",i=t.length;switch(t=t.map(function(a){return'"'.concat(a,'"')}),i){case 1:n+="".concat(t[0]," argument");break;case 2:n+="".concat(t[0]," and ").concat(t[1]," arguments");break;default:n+=t.slice(0,i-1).join(", "),n+=", and ".concat(t[i-1]," arguments");break}return"".concat(n," must be specified")},TypeError);VSe.exports.codes=USe});var $Se=ye((tdr,JSe)=>{"use strict";function GSe(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function HSe(e){for(var t=1;te.length)&&(r=e.length),e.substring(r-t.length,r)===t}function _4t(e,t){if(t=Math.floor(t),e.length==0||t==0)return"";var r=e.length*t;for(t=Math.floor(Math.log(t)/Math.log(2));t;)e+=e,t--;return e+=e.substring(0,r-e.length),e}var Hg="",lE="",uE="",Tv="",T2={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},x4t=10;function XSe(e){var t=Object.keys(e),r=Object.create(Object.getPrototypeOf(e));return t.forEach(function(n){r[n]=e[n]}),Object.defineProperty(r,"message",{value:e.message}),r}function cE(e){return Gj(e,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function b4t(e,t,r){var n="",i="",a=0,o="",s=!1,l=cE(e),u=l.split(` -`),c=cE(t).split(` -`),f=0,h="";if(r==="strictEqual"&&Dp(e)==="object"&&Dp(t)==="object"&&e!==null&&t!==null&&(r="strictEqualObject"),u.length===1&&c.length===1&&u[0]!==c[0]){var d=u[0].length+c[0].length;if(d<=x4t){if((Dp(e)!=="object"||e===null)&&(Dp(t)!=="object"||t===null)&&(e!==0||t!==0))return"".concat(T2[r],` + `)+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}fu.types=JH();function OSe(e){return Array.isArray(e)}fu.isArray=OSe;function zj(e){return typeof e=="boolean"}fu.isBoolean=zj;function BR(e){return e===null}fu.isNull=BR;function jMt(e){return e==null}fu.isNullOrUndefined=jMt;function qSe(e){return typeof e=="number"}fu.isNumber=qSe;function NR(e){return typeof e=="string"}fu.isString=NR;function WMt(e){return typeof e=="symbol"}fu.isSymbol=WMt;function w2(e){return e===void 0}fu.isUndefined=w2;function aE(e){return gA(e)&&Oj(e)==="[object RegExp]"}fu.isRegExp=aE;fu.types.isRegExp=aE;function gA(e){return typeof e=="object"&&e!==null}fu.isObject=gA;function qR(e){return gA(e)&&Oj(e)==="[object Date]"}fu.isDate=qR;fu.types.isDate=qR;function oE(e){return gA(e)&&(Oj(e)==="[object Error]"||e instanceof Error)}fu.isError=oE;fu.types.isNativeError=oE;function zR(e){return typeof e=="function"}fu.isFunction=zR;function XMt(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}fu.isPrimitive=XMt;fu.isBuffer=$H();function Oj(e){return Object.prototype.toString.call(e)}function Dj(e){return e<10?"0"+e.toString(10):e.toString(10)}var ZMt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function YMt(){var e=new Date,t=[Dj(e.getHours()),Dj(e.getMinutes()),Dj(e.getSeconds())].join(":");return[e.getDate(),ZMt[e.getMonth()],t].join(" ")}fu.log=function(){console.log("%s - %s",YMt(),fu.format.apply(fu,arguments))};fu.inherits=Uy();fu._extend=function(e,t){if(!t||!gA(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};function BSe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var b2=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;fu.promisify=function(t){if(typeof t!="function")throw new TypeError('The "original" argument must be of type Function');if(b2&&t[b2]){var r=t[b2];if(typeof r!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(r,b2,{value:r,enumerable:!1,writable:!1,configurable:!0}),r}function r(){for(var n,i,a=new Promise(function(l,u){n=l,i=u}),o=[],s=0;s{"use strict";function q_(e){"@babel/helpers - typeof";return q_=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},q_(e)}function NSe(e,t){for(var r=0;r2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function s4t(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function l4t(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function u4t(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}sE("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError);sE("ERR_INVALID_ARG_TYPE",function(e,t,r){yA===void 0&&(yA=lE()),yA(typeof e=="string","'name' must be a string");var n;typeof t=="string"&&s4t(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";var i;if(l4t(e," argument"))i="The ".concat(e," ").concat(n," ").concat(USe(t,"type"));else{var a=u4t(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(a," ").concat(n," ").concat(USe(t,"type"))}return i+=". Received type ".concat(q_(r)),i},TypeError);sE("ERR_INVALID_ARG_VALUE",function(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";qj===void 0&&(qj=mA());var n=qj.inspect(t);return n.length>128&&(n="".concat(n.slice(0,128),"...")),"The argument '".concat(e,"' ").concat(r,". Received ").concat(n)},TypeError,RangeError);sE("ERR_INVALID_RETURN_VALUE",function(e,t,r){var n;return r&&r.constructor&&r.constructor.name?n="instance of ".concat(r.constructor.name):n="type ".concat(q_(r)),"Expected ".concat(e,' to be returned from the "').concat(t,'"')+" function but got ".concat(n,".")},TypeError);sE("ERR_MISSING_ARGS",function(){for(var e=arguments.length,t=new Array(e),r=0;r0,"At least one arg needs to be specified");var n="The ",i=t.length;switch(t=t.map(function(a){return'"'.concat(a,'"')}),i){case 1:n+="".concat(t[0]," argument");break;case 2:n+="".concat(t[0]," and ").concat(t[1]," arguments");break;default:n+=t.slice(0,i-1).join(", "),n+=", and ".concat(t[i-1]," arguments");break}return"".concat(n," must be specified")},TypeError);GSe.exports.codes=VSe});var QSe=ye((tdr,$Se)=>{"use strict";function HSe(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function jSe(e){for(var t=1;te.length)&&(r=e.length),e.substring(r-t.length,r)===t}function x4t(e,t){if(t=Math.floor(t),e.length==0||t==0)return"";var r=e.length*t;for(t=Math.floor(Math.log(t)/Math.log(2));t;)e+=e,t--;return e+=e.substring(0,r-e.length),e}var jg="",uE="",cE="",Tv="",T2={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},b4t=10;function ZSe(e){var t=Object.keys(e),r=Object.create(Object.getPrototypeOf(e));return t.forEach(function(n){r[n]=e[n]}),Object.defineProperty(r,"message",{value:e.message}),r}function fE(e){return Gj(e,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function w4t(e,t,r){var n="",i="",a=0,o="",s=!1,l=fE(e),u=l.split(` +`),c=fE(t).split(` +`),f=0,h="";if(r==="strictEqual"&&Dp(e)==="object"&&Dp(t)==="object"&&e!==null&&t!==null&&(r="strictEqualObject"),u.length===1&&c.length===1&&u[0]!==c[0]){var d=u[0].length+c[0].length;if(d<=b4t){if((Dp(e)!=="object"||e===null)&&(Dp(t)!=="object"||t===null)&&(e!==0||t!==0))return"".concat(T2[r],` `)+"".concat(u[0]," !== ").concat(c[0],` `)}else if(r!=="strictEqualObject"){var v=process.stderr&&process.stderr.isTTY?process.stderr.columns:80;if(d2&&(h=` - `.concat(_4t(" ",f),"^"),f=0)}}}for(var _=u[u.length-1],b=c[c.length-1];_===b&&(f++<2?o=` + `.concat(x4t(" ",f),"^"),f=0)}}}for(var _=u[u.length-1],b=c[c.length-1];_===b&&(f++<2?o=` `.concat(_).concat(o):n=_,u.pop(),c.pop(),!(u.length===0||c.length===0));)_=u[u.length-1],b=c[c.length-1];var p=Math.max(u.length,c.length);if(p===0){var k=l.split(` -`);if(k.length>30)for(k[26]="".concat(Hg,"...").concat(Tv);k.length>27;)k.pop();return"".concat(T2.notIdentical,` +`);if(k.length>30)for(k[26]="".concat(jg,"...").concat(Tv);k.length>27;)k.pop();return"".concat(T2.notIdentical,` `).concat(k.join(` `),` `)}f>3&&(o=` -`.concat(Hg,"...").concat(Tv).concat(o),s=!0),n!==""&&(o=` +`.concat(jg,"...").concat(Tv).concat(o),s=!0),n!==""&&(o=` `.concat(n).concat(o),n="");var E=0,S=T2[r]+` -`.concat(lE,"+ actual").concat(Tv," ").concat(uE,"- expected").concat(Tv),L=" ".concat(Hg,"...").concat(Tv," Lines skipped");for(f=0;f1&&f>2&&(x>4?(i+=` -`.concat(Hg,"...").concat(Tv),s=!0):x>3&&(i+=` +`.concat(uE,"+ actual").concat(Tv," ").concat(cE,"- expected").concat(Tv),L=" ".concat(jg,"...").concat(Tv," Lines skipped");for(f=0;f1&&f>2&&(x>4?(i+=` +`.concat(jg,"...").concat(Tv),s=!0):x>3&&(i+=` `.concat(c[f-2]),E++),i+=` `.concat(c[f-1]),E++),a=f,n+=` -`.concat(uE,"-").concat(Tv," ").concat(c[f]),E++;else if(c.length1&&f>2&&(x>4?(i+=` -`.concat(Hg,"...").concat(Tv),s=!0):x>3&&(i+=` +`.concat(cE,"-").concat(Tv," ").concat(c[f]),E++;else if(c.length1&&f>2&&(x>4?(i+=` +`.concat(jg,"...").concat(Tv),s=!0):x>3&&(i+=` `.concat(u[f-2]),E++),i+=` `.concat(u[f-1]),E++),a=f,i+=` -`.concat(lE,"+").concat(Tv," ").concat(u[f]),E++;else{var C=c[f],M=u[f],g=M!==C&&(!WSe(M,",")||M.slice(0,-1)!==C);g&&WSe(C,",")&&C.slice(0,-1)===M&&(g=!1,M+=","),g?(x>1&&f>2&&(x>4?(i+=` -`.concat(Hg,"...").concat(Tv),s=!0):x>3&&(i+=` +`.concat(uE,"+").concat(Tv," ").concat(u[f]),E++;else{var C=c[f],M=u[f],g=M!==C&&(!XSe(M,",")||M.slice(0,-1)!==C);g&&XSe(C,",")&&C.slice(0,-1)===M&&(g=!1,M+=","),g?(x>1&&f>2&&(x>4?(i+=` +`.concat(jg,"...").concat(Tv),s=!0):x>3&&(i+=` `.concat(u[f-2]),E++),i+=` `.concat(u[f-1]),E++),a=f,i+=` -`.concat(lE,"+").concat(Tv," ").concat(M),n+=` -`.concat(uE,"-").concat(Tv," ").concat(C),E+=2):(i+=n,n="",(x===1||f===0)&&(i+=` +`.concat(uE,"+").concat(Tv," ").concat(M),n+=` +`.concat(cE,"-").concat(Tv," ").concat(C),E+=2):(i+=n,n="",(x===1||f===0)&&(i+=` `.concat(M),E++))}if(E>20&&f30)for(d[26]="".concat(Hg,"...").concat(Tv);d.length>27;)d.pop();d.length===1?a=r.call(this,"".concat(h," ").concat(d[0])):a=r.call(this,"".concat(h,` +`).concat(jg,"...").concat(Tv).concat(n,` +`)+"".concat(jg,"...").concat(Tv)}return"".concat(S).concat(s?L:"",` +`).concat(i).concat(n).concat(o).concat(h)}var T4t=function(e,t){v4t(n,e);var r=p4t(n);function n(i){var a;if(f4t(this,n),Dp(i)!=="object"||i===null)throw new _4t("options","Object",i);var o=i.message,s=i.operator,l=i.stackStartFn,u=i.actual,c=i.expected,f=Error.stackTraceLimit;if(Error.stackTraceLimit=0,o!=null)a=r.call(this,String(o));else if(process.stderr&&process.stderr.isTTY&&(process.stderr&&process.stderr.getColorDepth&&process.stderr.getColorDepth()!==1?(jg="\x1B[34m",uE="\x1B[32m",Tv="\x1B[39m",cE="\x1B[31m"):(jg="",uE="",Tv="",cE="")),Dp(u)==="object"&&u!==null&&Dp(c)==="object"&&c!==null&&"stack"in u&&u instanceof Error&&"stack"in c&&c instanceof Error&&(u=ZSe(u),c=ZSe(c)),s==="deepStrictEqual"||s==="strictEqual")a=r.call(this,w4t(u,c,s));else if(s==="notDeepStrictEqual"||s==="notStrictEqual"){var h=T2[s],d=fE(u).split(` +`);if(s==="notStrictEqual"&&Dp(u)==="object"&&u!==null&&(h=T2.notStrictEqualObject),d.length>30)for(d[26]="".concat(jg,"...").concat(Tv);d.length>27;)d.pop();d.length===1?a=r.call(this,"".concat(h," ").concat(d[0])):a=r.call(this,"".concat(h,` `).concat(d.join(` `),` -`))}else{var v=cE(u),_="",b=T2[s];s==="notDeepEqual"||s==="notEqual"?(v="".concat(T2[s],` +`))}else{var v=fE(u),_="",b=T2[s];s==="notDeepEqual"||s==="notEqual"?(v="".concat(T2[s],` -`).concat(v),v.length>1024&&(v="".concat(v.slice(0,1021),"..."))):(_="".concat(cE(c)),v.length>512&&(v="".concat(v.slice(0,509),"...")),_.length>512&&(_="".concat(_.slice(0,509),"...")),s==="deepEqual"||s==="equal"?v="".concat(b,` +`).concat(v),v.length>1024&&(v="".concat(v.slice(0,1021),"..."))):(_="".concat(fE(c)),v.length>512&&(v="".concat(v.slice(0,509),"...")),_.length>512&&(_="".concat(_.slice(0,509),"...")),s==="deepEqual"||s==="equal"?v="".concat(b,` `).concat(v,` should equal -`):_=" ".concat(s," ").concat(_)),a=r.call(this,"".concat(v).concat(_))}return Error.stackTraceLimit=f,a.generatedMessage=!o,Object.defineProperty(Uj(a),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),a.code="ERR_ASSERTION",a.actual=u,a.expected=c,a.operator=s,Error.captureStackTrace&&Error.captureStackTrace(Uj(a),l),a.stack,a.name="AssertionError",YSe(a)}return f4t(n,[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:t,value:function(a,o){return Gj(this,HSe(HSe({},o),{},{customInspect:!1,depth:0}))}}]),n}(Vj(Error),Gj.custom);JSe.exports=w4t});var Hj=ye((rdr,eMe)=>{"use strict";var QSe=Object.prototype.toString;eMe.exports=function(t){var r=QSe.call(t),n=r==="[object Arguments]";return n||(n=r!=="[object Array]"&&t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&QSe.call(t.callee)==="[object Function]"),n}});var uMe=ye((idr,lMe)=>{"use strict";var sMe;Object.keys||(dE=Object.prototype.hasOwnProperty,jj=Object.prototype.toString,tMe=Hj(),Wj=Object.prototype.propertyIsEnumerable,rMe=!Wj.call({toString:null},"toString"),iMe=Wj.call(function(){},"prototype"),vE=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],VR=function(e){var t=e.constructor;return t&&t.prototype===e},nMe={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},aMe=function(){if(typeof window=="undefined")return!1;for(var e in window)try{if(!nMe["$"+e]&&dE.call(window,e)&&window[e]!==null&&typeof window[e]=="object")try{VR(window[e])}catch(t){return!0}}catch(t){return!0}return!1}(),oMe=function(e){if(typeof window=="undefined"||!aMe)return VR(e);try{return VR(e)}catch(t){return!1}},sMe=function(t){var r=t!==null&&typeof t=="object",n=jj.call(t)==="[object Function]",i=tMe(t),a=r&&jj.call(t)==="[object String]",o=[];if(!r&&!n&&!i)throw new TypeError("Object.keys called on a non-object");var s=iMe&&n;if(a&&t.length>0&&!dE.call(t,0))for(var l=0;l0)for(var u=0;u{"use strict";var T4t=Array.prototype.slice,A4t=Hj(),cMe=Object.keys,GR=cMe?function(t){return cMe(t)}:uMe(),fMe=Object.keys;GR.shim=function(){if(Object.keys){var t=function(){var r=Object.keys(arguments);return r&&r.length===arguments.length}(1,2);t||(Object.keys=function(n){return A4t(n)?fMe(T4t.call(n)):fMe(n)})}else Object.keys=GR;return Object.keys||GR};hMe.exports=GR});var yMe=ye((adr,mMe)=>{"use strict";var S4t=Xj(),pMe=H8()(),gMe=sA(),dMe=Object,M4t=gMe("Array.prototype.push"),vMe=gMe("Object.prototype.propertyIsEnumerable"),E4t=pMe?Object.getOwnPropertySymbols:null;mMe.exports=function(t,r){if(t==null)throw new TypeError("target must be an object");var n=dMe(t);if(arguments.length===1)return n;for(var i=1;i{"use strict";var Zj=yMe(),k4t=function(){if(!Object.assign)return!1;for(var e="abcdefghijklmnopqrst",t=e.split(""),r={},n=0;n{"use strict";var bMe=function(e){return e!==e};wMe.exports=function(t,r){return t===0&&r===0?1/t===1/r:!!(t===r||bMe(t)&&bMe(r))}});var HR=ye((ldr,TMe)=>{"use strict";var L4t=Yj();TMe.exports=function(){return typeof Object.is=="function"?Object.is:L4t}});var pE=ye((udr,EMe)=>{"use strict";var P4t=Xj(),I4t=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",R4t=Object.prototype.toString,D4t=Array.prototype.concat,AMe=Object.defineProperty,F4t=function(e){return typeof e=="function"&&R4t.call(e)==="[object Function]"},z4t=PH()(),SMe=AMe&&z4t,O4t=function(e,t,r,n){if(t in e){if(n===!0){if(e[t]===r)return}else if(!F4t(n)||!n())return}SMe?AMe(e,t,{configurable:!0,enumerable:!1,value:r,writable:!0}):e[t]=r},MMe=function(e,t){var r=arguments.length>2?arguments[2]:{},n=P4t(t);I4t&&(n=D4t.call(n,Object.getOwnPropertySymbols(t)));for(var i=0;i{"use strict";var q4t=HR(),B4t=pE();kMe.exports=function(){var t=q4t();return B4t(Object,{is:t},{is:function(){return Object.is!==t}}),t}});var RMe=ye((fdr,IMe)=>{"use strict";var N4t=pE(),U4t=W4(),V4t=Yj(),LMe=HR(),G4t=CMe(),PMe=U4t(LMe(),Object);N4t(PMe,{getPolyfill:LMe,implementation:V4t,shim:G4t});IMe.exports=PMe});var Kj=ye((hdr,DMe)=>{"use strict";DMe.exports=function(t){return t!==t}});var Jj=ye((ddr,FMe)=>{"use strict";var H4t=Kj();FMe.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:H4t}});var OMe=ye((vdr,zMe)=>{"use strict";var j4t=pE(),W4t=Jj();zMe.exports=function(){var t=W4t();return j4t(Number,{isNaN:t},{isNaN:function(){return Number.isNaN!==t}}),t}});var UMe=ye((pdr,NMe)=>{"use strict";var X4t=W4(),Z4t=pE(),Y4t=Kj(),qMe=Jj(),K4t=OMe(),BMe=X4t(qMe(),Number);Z4t(BMe,{getPolyfill:qMe,implementation:Y4t,shim:K4t});NMe.exports=BMe});var s4e=ye((gdr,o4e)=>{"use strict";function VMe(e,t){return eEt(e)||Q4t(e,t)||$4t(e,t)||J4t()}function J4t(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function $4t(e,t){if(e){if(typeof e=="string")return GMe(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return GMe(e,t)}}function GMe(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r10)return!0;for(var t=0;t57)return!0}return e.length===10&&e>=Math.pow(2,32)}function XR(e){return Object.keys(e).filter(uEt).concat(YR(e).filter(Object.prototype.propertyIsEnumerable.bind(e)))}function r4e(e,t){if(e===t)return 0;for(var r=e.length,n=t.length,i=0,a=Math.min(r,n);i{"use strict";function jg(e){"@babel/helpers - typeof";return jg=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},jg(e)}function l4e(e,t){for(var r=0;r1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;i{"use strict";var eMe=Object.prototype.toString;tMe.exports=function(t){var r=eMe.call(t),n=r==="[object Arguments]";return n||(n=r!=="[object Array]"&&t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&eMe.call(t.callee)==="[object Function]"),n}});var cMe=ye((idr,uMe)=>{"use strict";var lMe;Object.keys||(vE=Object.prototype.hasOwnProperty,jj=Object.prototype.toString,rMe=Hj(),Wj=Object.prototype.propertyIsEnumerable,iMe=!Wj.call({toString:null},"toString"),nMe=Wj.call(function(){},"prototype"),pE=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],GR=function(e){var t=e.constructor;return t&&t.prototype===e},aMe={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},oMe=function(){if(typeof window=="undefined")return!1;for(var e in window)try{if(!aMe["$"+e]&&vE.call(window,e)&&window[e]!==null&&typeof window[e]=="object")try{GR(window[e])}catch(t){return!0}}catch(t){return!0}return!1}(),sMe=function(e){if(typeof window=="undefined"||!oMe)return GR(e);try{return GR(e)}catch(t){return!1}},lMe=function(t){var r=t!==null&&typeof t=="object",n=jj.call(t)==="[object Function]",i=rMe(t),a=r&&jj.call(t)==="[object String]",o=[];if(!r&&!n&&!i)throw new TypeError("Object.keys called on a non-object");var s=nMe&&n;if(a&&t.length>0&&!vE.call(t,0))for(var l=0;l0)for(var u=0;u{"use strict";var A4t=Array.prototype.slice,S4t=Hj(),fMe=Object.keys,HR=fMe?function(t){return fMe(t)}:cMe(),hMe=Object.keys;HR.shim=function(){if(Object.keys){var t=function(){var r=Object.keys(arguments);return r&&r.length===arguments.length}(1,2);t||(Object.keys=function(n){return S4t(n)?hMe(A4t.call(n)):hMe(n)})}else Object.keys=HR;return Object.keys||HR};dMe.exports=HR});var _Me=ye((adr,yMe)=>{"use strict";var M4t=Xj(),gMe=j8()(),mMe=lA(),vMe=Object,E4t=mMe("Array.prototype.push"),pMe=mMe("Object.prototype.propertyIsEnumerable"),k4t=gMe?Object.getOwnPropertySymbols:null;yMe.exports=function(t,r){if(t==null)throw new TypeError("target must be an object");var n=vMe(t);if(arguments.length===1)return n;for(var i=1;i{"use strict";var Zj=_Me(),C4t=function(){if(!Object.assign)return!1;for(var e="abcdefghijklmnopqrst",t=e.split(""),r={},n=0;n{"use strict";var wMe=function(e){return e!==e};TMe.exports=function(t,r){return t===0&&r===0?1/t===1/r:!!(t===r||wMe(t)&&wMe(r))}});var jR=ye((ldr,AMe)=>{"use strict";var P4t=Yj();AMe.exports=function(){return typeof Object.is=="function"?Object.is:P4t}});var gE=ye((udr,kMe)=>{"use strict";var I4t=Xj(),R4t=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",D4t=Object.prototype.toString,F4t=Array.prototype.concat,SMe=Object.defineProperty,z4t=function(e){return typeof e=="function"&&D4t.call(e)==="[object Function]"},O4t=PH()(),MMe=SMe&&O4t,q4t=function(e,t,r,n){if(t in e){if(n===!0){if(e[t]===r)return}else if(!z4t(n)||!n())return}MMe?SMe(e,t,{configurable:!0,enumerable:!1,value:r,writable:!0}):e[t]=r},EMe=function(e,t){var r=arguments.length>2?arguments[2]:{},n=I4t(t);R4t&&(n=F4t.call(n,Object.getOwnPropertySymbols(t)));for(var i=0;i{"use strict";var B4t=jR(),N4t=gE();CMe.exports=function(){var t=B4t();return N4t(Object,{is:t},{is:function(){return Object.is!==t}}),t}});var DMe=ye((fdr,RMe)=>{"use strict";var U4t=gE(),V4t=X4(),G4t=Yj(),PMe=jR(),H4t=LMe(),IMe=V4t(PMe(),Object);U4t(IMe,{getPolyfill:PMe,implementation:G4t,shim:H4t});RMe.exports=IMe});var Kj=ye((hdr,FMe)=>{"use strict";FMe.exports=function(t){return t!==t}});var Jj=ye((ddr,zMe)=>{"use strict";var j4t=Kj();zMe.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:j4t}});var qMe=ye((vdr,OMe)=>{"use strict";var W4t=gE(),X4t=Jj();OMe.exports=function(){var t=X4t();return W4t(Number,{isNaN:t},{isNaN:function(){return Number.isNaN!==t}}),t}});var VMe=ye((pdr,UMe)=>{"use strict";var Z4t=X4(),Y4t=gE(),K4t=Kj(),BMe=Jj(),J4t=qMe(),NMe=Z4t(BMe(),Number);Y4t(NMe,{getPolyfill:BMe,implementation:K4t,shim:J4t});UMe.exports=NMe});var l4e=ye((gdr,s4e)=>{"use strict";function GMe(e,t){return tEt(e)||eEt(e,t)||Q4t(e,t)||$4t()}function $4t(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Q4t(e,t){if(e){if(typeof e=="string")return HMe(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return HMe(e,t)}}function HMe(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r10)return!0;for(var t=0;t57)return!0}return e.length===10&&e>=Math.pow(2,32)}function ZR(e){return Object.keys(e).filter(cEt).concat(KR(e).filter(Object.prototype.propertyIsEnumerable.bind(e)))}function i4e(e,t){if(e===t)return 0;for(var r=e.length,n=t.length,i=0,a=Math.min(r,n);i{"use strict";function Wg(e){"@babel/helpers - typeof";return Wg=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Wg(e)}function u4e(e,t){for(var r=0;r1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;i{var xE=1e3,bE=xE*60,wE=bE*60,TE=wE*24,FEt=TE*365.25;M4e.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return zEt(e);if(r==="number"&&isNaN(e)===!1)return t.long?qEt(e):OEt(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function zEt(e){if(e=String(e),!(e.length>100)){var t=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*FEt;case"days":case"day":case"d":return r*TE;case"hours":case"hour":case"hrs":case"hr":case"h":return r*wE;case"minutes":case"minute":case"mins":case"min":case"m":return r*bE;case"seconds":case"second":case"secs":case"sec":case"s":return r*xE;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function OEt(e){return e>=TE?Math.round(e/TE)+"d":e>=wE?Math.round(e/wE)+"h":e>=bE?Math.round(e/bE)+"m":e>=xE?Math.round(e/xE)+"s":e+"ms"}function qEt(e){return iD(e,TE,"day")||iD(e,wE,"hour")||iD(e,bE,"minute")||iD(e,xE,"second")||e+" ms"}function iD(e,t,r){if(!(e{Lc=k4e.exports=nW.debug=nW.default=nW;Lc.coerce=GEt;Lc.disable=UEt;Lc.enable=NEt;Lc.enabled=VEt;Lc.humanize=E4e();Lc.names=[];Lc.skips=[];Lc.formatters={};var iW;function BEt(e){var t=0,r;for(r in e)t=(t<<5)-t+e.charCodeAt(r),t|=0;return Lc.colors[Math.abs(t)%Lc.colors.length]}function nW(e){function t(){if(t.enabled){var r=t,n=+new Date,i=n-(iW||n);r.diff=i,r.prev=iW,r.curr=n,iW=n;for(var a=new Array(arguments.length),o=0;o{lp=P4e.exports=C4e();lp.log=WEt;lp.formatArgs=jEt;lp.save=XEt;lp.load=L4e;lp.useColors=HEt;lp.storage=typeof chrome!="undefined"&&typeof chrome.storage!="undefined"?chrome.storage.local:ZEt();lp.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function HEt(){return typeof window!="undefined"&&window.process&&window.process.type==="renderer"?!0:typeof document!="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}lp.formatters.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}};function jEt(e){var t=this.useColors;if(e[0]=(t?"%c":"")+this.namespace+(t?" %c":" ")+e[0]+(t?"%c ":" ")+"+"+lp.humanize(this.diff),!!t){var r="color: "+this.color;e.splice(1,0,r,"color: inherit");var n=0,i=0;e[0].replace(/%[a-zA-Z%]/g,function(a){a!=="%%"&&(n++,a==="%c"&&(i=n))}),e.splice(i,0,r)}}function WEt(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function XEt(e){try{e==null?lp.storage.removeItem("debug"):lp.storage.debug=e}catch(t){}}function L4e(){var e;try{e=lp.storage.debug}catch(t){}return!e&&typeof process!="undefined"&&"env"in process&&(e=process.env.DEBUG),e}lp.enable(L4e());function ZEt(){try{return window.localStorage}catch(e){}}});var N4e=ye((_dr,B4e)=>{var _A=sE(),V_=I4e()("stream-parser");B4e.exports=KEt;var D4e=-1,nD=0,YEt=1,F4e=2;function KEt(e){var t=e&&typeof e._transform=="function",r=e&&typeof e._write=="function";if(!t&&!r)throw new Error("must pass a Writable or Transform stream in");V_("extending Parser into stream"),e._bytes=JEt,e._skipBytes=$Et,t&&(e._passthrough=QEt),t?e._transform=tkt:e._write=ekt}function AE(e){V_("initializing parser stream"),e._parserBytesLeft=0,e._parserBuffers=[],e._parserBuffered=0,e._parserState=D4e,e._parserCallback=null,typeof e.push=="function"&&(e._parserOutput=e.push.bind(e)),e._parserInit=!0}function JEt(e,t){_A(!this._parserCallback,'there is already a "callback" set!'),_A(isFinite(e)&&e>0,'can only buffer a finite number of bytes > 0, got "'+e+'"'),this._parserInit||AE(this),V_("buffering %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=nD}function $Et(e,t){_A(!this._parserCallback,'there is already a "callback" set!'),_A(e>0,'can only skip > 0 bytes, got "'+e+'"'),this._parserInit||AE(this),V_("skipping %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=YEt}function QEt(e,t){_A(!this._parserCallback,'There is already a "callback" set!'),_A(e>0,'can only pass through > 0 bytes, got "'+e+'"'),this._parserInit||AE(this),V_("passing through %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=F4e}function ekt(e,t,r){this._parserInit||AE(this),V_("write(%o bytes)",e.length),typeof t=="function"&&(r=t),O4e(this,e,null,r)}function tkt(e,t,r){this._parserInit||AE(this),V_("transform(%o bytes)",e.length),typeof t!="function"&&(t=this._parserOutput),O4e(this,e,t,r)}function z4e(e,t,r,n){return e._parserBytesLeft<=0?n(new Error("got data but not currently parsing anything")):t.length<=e._parserBytesLeft?function(){return R4e(e,t,r,n)}:function(){var i=t.slice(0,e._parserBytesLeft);return R4e(e,i,r,function(a){if(a)return n(a);if(t.length>i.length)return function(){return z4e(e,t.slice(i.length),r,n)}})}}function R4e(e,t,r,n){if(e._parserBytesLeft-=t.length,V_("%o bytes left for stream piece",e._parserBytesLeft),e._parserState===nD?(e._parserBuffers.push(t),e._parserBuffered+=t.length):e._parserState===F4e&&r(t),e._parserBytesLeft===0){var i=e._parserCallback;if(i&&e._parserState===nD&&e._parserBuffers.length>1&&(t=Buffer.concat(e._parserBuffers,e._parserBuffered)),e._parserState!==nD&&(t=null),e._parserCallback=null,e._parserBuffered=0,e._parserState=D4e,e._parserBuffers.splice(0),i){var a=[];t&&a.push(t),r&&a.push(r);var o=i.length>a.length;o&&a.push(q4e(n));var s=i.apply(e,a);if(!o||n===s)return n}}else return n}var O4e=q4e(z4e);function q4e(e){return function(){for(var t=e.apply(this,arguments);typeof t=="function";)t=t();return t}}});var rc=ye(Hy=>{"use strict";var U4e=RSe().Transform,rkt=N4e();function SE(){U4e.call(this,{readableObjectMode:!0})}SE.prototype=Object.create(U4e.prototype);SE.prototype.constructor=SE;rkt(SE.prototype);Hy.ParserStream=SE;Hy.sliceEq=function(e,t,r){for(var n=t,i=0;i{"use strict";var xA=rc().readUInt16BE,oW=rc().readUInt32BE;function ME(e,t){if(e.length<4+t)return null;var r=oW(e,t);return e.length>4&15,n=e[4]&15,i=e[5]>>4&15,a=xA(e,6),o=8,s=0;sa.width||i.width===a.width&&i.height>a.height?i:a}),r=e.reduce(function(i,a){return i.height>a.height||i.height===a.height&&i.width>a.width?i:a}),n;return t.width>r.height||t.width===r.height&&t.height>r.width?n=t:n=r,n}oD.exports.readSizeFromMeta=function(e){var t={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(skt(e,t),!!t.sizes.length){var r=lkt(t.sizes),n=1;t.transforms.forEach(function(a){var o={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},s={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if(a.type==="imir"&&(a.value===0?n=s[n]:(n=s[n],n=o[n],n=o[n])),a.type==="irot")for(var l=0;l{"use strict";function sD(e,t){var r=new Error(e);return r.code=t,r}function ukt(e){try{return decodeURIComponent(escape(e))}catch(t){return e}}function jy(e,t,r){this.input=e.subarray(t,r),this.start=t;var n=String.fromCharCode.apply(null,this.input.subarray(0,4));if(n!=="II*\0"&&n!=="MM\0*")throw sD("invalid TIFF signature","EBADDATA");this.big_endian=n[0]==="M"}jy.prototype.each=function(e){this.aborted=!1;var t=this.read_uint32(4);for(this.ifds_to_read=[{id:0,offset:t}];this.ifds_to_read.length>0&&!this.aborted;){var r=this.ifds_to_read.shift();r.offset&&this.scan_ifd(r.id,r.offset,e)}};jy.prototype.read_uint16=function(e){var t=this.input;if(e+2>t.length)throw sD("unexpected EOF","EBADDATA");return this.big_endian?t[e]*256+t[e+1]:t[e]+t[e+1]*256};jy.prototype.read_uint32=function(e){var t=this.input;if(e+4>t.length)throw sD("unexpected EOF","EBADDATA");return this.big_endian?t[e]*16777216+t[e+1]*65536+t[e+2]*256+t[e+3]:t[e]+t[e+1]*256+t[e+2]*65536+t[e+3]*16777216};jy.prototype.is_subifd_link=function(e,t){return e===0&&t===34665||e===0&&t===34853||e===34665&&t===40965};jy.prototype.exif_format_length=function(e){switch(e){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}};jy.prototype.exif_format_read=function(e,t){var r;switch(e){case 1:case 2:return r=this.input[t],r;case 6:return r=this.input[t],r|(r&128)*33554430;case 3:return r=this.read_uint16(t),r;case 8:return r=this.read_uint16(t),r|(r&32768)*131070;case 4:return r=this.read_uint32(t),r;case 9:return r=this.read_uint32(t),r|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}};jy.prototype.scan_ifd=function(e,t,r){var n=this.read_uint16(t);t+=2;for(var i=0;ithis.input.length)throw sD("unexpected EOF","EBADDATA");for(var h=[],d=c,v=0;v0&&(this.ifds_to_read.push({id:a,offset:h[0]}),f=!0);var b={is_big_endian:this.big_endian,ifd:e,tag:a,format:o,count:s,entry_offset:t+this.start,data_length:u,data_offset:c+this.start,value:h,is_subifd_link:f};if(r(b)===!1){this.aborted=!0;return}t+=12}e===0&&this.ifds_to_read.push({id:1,offset:this.read_uint32(t)})};sW.exports.ExifParser=jy;sW.exports.get_orientation=function(e){var t=0;try{return new jy(e,0,e.length).each(function(r){if(r.ifd===0&&r.tag===274&&Array.isArray(r.value))return t=r.value[0],!1}),t}catch(r){return-1}}});var H4e=ye((Tdr,G4e)=>{"use strict";var ckt=rc().str2arr,fkt=rc().sliceEq,hkt=rc().readUInt32BE,uD=V4e(),dkt=lD(),vkt=ckt("ftyp");G4e.exports=function(e){if(fkt(e,4,vkt)){var t=uD.unbox(e,0);if(t){var r=uD.getMimeType(t.data);if(r){for(var n,i=t.end;;){var a=uD.unbox(e,i);if(!a)break;if(i=a.end,a.boxtype==="mdat")return;if(a.boxtype==="meta"){n=a.data;break}}if(n){var o=uD.readSizeFromMeta(n);if(o){var s={width:o.width,height:o.height,type:r.type,mime:r.mime,wUnits:"px",hUnits:"px"};if(o.variants.length>1&&(s.variants=o.variants),o.orientation&&(s.orientation=o.orientation),o.exif_location&&o.exif_location.offset+o.exif_location.length<=e.length){var l=hkt(e,o.exif_location.offset),u=e.slice(o.exif_location.offset+l+4,o.exif_location.offset+o.exif_location.length),c=dkt.get_orientation(u);c>0&&(s.orientation=c)}return s}}}}}}});var X4e=ye((Adr,W4e)=>{"use strict";var pkt=rc().str2arr,gkt=rc().sliceEq,j4e=rc().readUInt16LE,mkt=pkt("BM");W4e.exports=function(e){if(!(e.length<26)&&gkt(e,0,mkt))return{width:j4e(e,18),height:j4e(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}});var $4e=ye((Sdr,J4e)=>{"use strict";var K4e=rc().str2arr,Z4e=rc().sliceEq,Y4e=rc().readUInt16LE,ykt=K4e("GIF87a"),_kt=K4e("GIF89a");J4e.exports=function(e){if(!(e.length<10)&&!(!Z4e(e,0,ykt)&&!Z4e(e,0,_kt)))return{width:Y4e(e,6),height:Y4e(e,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}});var tEe=ye((Mdr,eEe)=>{"use strict";var lW=rc().readUInt16LE,xkt=0,bkt=1,Q4e=16;eEe.exports=function(e){var t=lW(e,0),r=lW(e,2),n=lW(e,4);if(!(t!==xkt||r!==bkt||!n)){for(var i=[],a={width:0,height:0},o=0;oa.width||l>a.height)&&(a=u)}return{width:a.width,height:a.height,variants:i,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}});var iEe=ye((Edr,rEe)=>{"use strict";var uW=rc().readUInt16BE,wkt=rc().str2arr,Tkt=rc().sliceEq,Akt=lD(),Skt=wkt("Exif\0\0");rEe.exports=function(e){if(!(e.length<2)&&!(e[0]!==255||e[1]!==216||e[2]!==255))for(var t=2;;){for(;;){if(e.length-t<2)return;if(e[t++]===255)break}for(var r=e[t++],n;r===255;)r=e[t++];if(208<=r&&r<=217||r===1)n=0;else if(192<=r&&r<=254){if(e.length-t<2)return;n=uW(e,t)-2,t+=2}else return;if(r===217||r===218)return;var i;if(r===225&&n>=10&&Tkt(e,t,Skt)&&(i=Akt.get_orientation(e.slice(t+6,t+n))),n>=5&&192<=r&&r<=207&&r!==196&&r!==200&&r!==204){if(e.length-t0&&(a.orientation=i),a}t+=n}}});var lEe=ye((kdr,sEe)=>{"use strict";var oEe=rc().str2arr,nEe=rc().sliceEq,aEe=rc().readUInt32BE,Mkt=oEe(`\x89PNG\r +`).concat(QR(e),` +`));var s=new U_({actual:e,expected:t,message:r,operator:i,stackStartFn:n});throw s.generatedMessage=o,s}}Ef.match=function e(t,r,n){A4e(t,r,n,e,"match")};Ef.doesNotMatch=function e(t,r,n){A4e(t,r,n,e,"doesNotMatch")};function S4e(){for(var e=arguments.length,t=new Array(e),r=0;r{var bE=1e3,wE=bE*60,TE=wE*60,AE=TE*24,zEt=AE*365.25;E4e.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return OEt(e);if(r==="number"&&isNaN(e)===!1)return t.long?BEt(e):qEt(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function OEt(e){if(e=String(e),!(e.length>100)){var t=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*zEt;case"days":case"day":case"d":return r*AE;case"hours":case"hour":case"hrs":case"hr":case"h":return r*TE;case"minutes":case"minute":case"mins":case"min":case"m":return r*wE;case"seconds":case"second":case"secs":case"sec":case"s":return r*bE;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function qEt(e){return e>=AE?Math.round(e/AE)+"d":e>=TE?Math.round(e/TE)+"h":e>=wE?Math.round(e/wE)+"m":e>=bE?Math.round(e/bE)+"s":e+"ms"}function BEt(e){return nD(e,AE,"day")||nD(e,TE,"hour")||nD(e,wE,"minute")||nD(e,bE,"second")||e+" ms"}function nD(e,t,r){if(!(e{Lc=C4e.exports=nW.debug=nW.default=nW;Lc.coerce=HEt;Lc.disable=VEt;Lc.enable=UEt;Lc.enabled=GEt;Lc.humanize=k4e();Lc.names=[];Lc.skips=[];Lc.formatters={};var iW;function NEt(e){var t=0,r;for(r in e)t=(t<<5)-t+e.charCodeAt(r),t|=0;return Lc.colors[Math.abs(t)%Lc.colors.length]}function nW(e){function t(){if(t.enabled){var r=t,n=+new Date,i=n-(iW||n);r.diff=i,r.prev=iW,r.curr=n,iW=n;for(var a=new Array(arguments.length),o=0;o{lp=I4e.exports=L4e();lp.log=XEt;lp.formatArgs=WEt;lp.save=ZEt;lp.load=P4e;lp.useColors=jEt;lp.storage=typeof chrome!="undefined"&&typeof chrome.storage!="undefined"?chrome.storage.local:YEt();lp.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function jEt(){return typeof window!="undefined"&&window.process&&window.process.type==="renderer"?!0:typeof document!="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}lp.formatters.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}};function WEt(e){var t=this.useColors;if(e[0]=(t?"%c":"")+this.namespace+(t?" %c":" ")+e[0]+(t?"%c ":" ")+"+"+lp.humanize(this.diff),!!t){var r="color: "+this.color;e.splice(1,0,r,"color: inherit");var n=0,i=0;e[0].replace(/%[a-zA-Z%]/g,function(a){a!=="%%"&&(n++,a==="%c"&&(i=n))}),e.splice(i,0,r)}}function XEt(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function ZEt(e){try{e==null?lp.storage.removeItem("debug"):lp.storage.debug=e}catch(t){}}function P4e(){var e;try{e=lp.storage.debug}catch(t){}return!e&&typeof process!="undefined"&&"env"in process&&(e=process.env.DEBUG),e}lp.enable(P4e());function YEt(){try{return window.localStorage}catch(e){}}});var U4e=ye((_dr,N4e)=>{var xA=lE(),V_=R4e()("stream-parser");N4e.exports=JEt;var F4e=-1,aD=0,KEt=1,z4e=2;function JEt(e){var t=e&&typeof e._transform=="function",r=e&&typeof e._write=="function";if(!t&&!r)throw new Error("must pass a Writable or Transform stream in");V_("extending Parser into stream"),e._bytes=$Et,e._skipBytes=QEt,t&&(e._passthrough=ekt),t?e._transform=rkt:e._write=tkt}function SE(e){V_("initializing parser stream"),e._parserBytesLeft=0,e._parserBuffers=[],e._parserBuffered=0,e._parserState=F4e,e._parserCallback=null,typeof e.push=="function"&&(e._parserOutput=e.push.bind(e)),e._parserInit=!0}function $Et(e,t){xA(!this._parserCallback,'there is already a "callback" set!'),xA(isFinite(e)&&e>0,'can only buffer a finite number of bytes > 0, got "'+e+'"'),this._parserInit||SE(this),V_("buffering %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=aD}function QEt(e,t){xA(!this._parserCallback,'there is already a "callback" set!'),xA(e>0,'can only skip > 0 bytes, got "'+e+'"'),this._parserInit||SE(this),V_("skipping %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=KEt}function ekt(e,t){xA(!this._parserCallback,'There is already a "callback" set!'),xA(e>0,'can only pass through > 0 bytes, got "'+e+'"'),this._parserInit||SE(this),V_("passing through %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=z4e}function tkt(e,t,r){this._parserInit||SE(this),V_("write(%o bytes)",e.length),typeof t=="function"&&(r=t),q4e(this,e,null,r)}function rkt(e,t,r){this._parserInit||SE(this),V_("transform(%o bytes)",e.length),typeof t!="function"&&(t=this._parserOutput),q4e(this,e,t,r)}function O4e(e,t,r,n){return e._parserBytesLeft<=0?n(new Error("got data but not currently parsing anything")):t.length<=e._parserBytesLeft?function(){return D4e(e,t,r,n)}:function(){var i=t.slice(0,e._parserBytesLeft);return D4e(e,i,r,function(a){if(a)return n(a);if(t.length>i.length)return function(){return O4e(e,t.slice(i.length),r,n)}})}}function D4e(e,t,r,n){if(e._parserBytesLeft-=t.length,V_("%o bytes left for stream piece",e._parserBytesLeft),e._parserState===aD?(e._parserBuffers.push(t),e._parserBuffered+=t.length):e._parserState===z4e&&r(t),e._parserBytesLeft===0){var i=e._parserCallback;if(i&&e._parserState===aD&&e._parserBuffers.length>1&&(t=Buffer.concat(e._parserBuffers,e._parserBuffered)),e._parserState!==aD&&(t=null),e._parserCallback=null,e._parserBuffered=0,e._parserState=F4e,e._parserBuffers.splice(0),i){var a=[];t&&a.push(t),r&&a.push(r);var o=i.length>a.length;o&&a.push(B4e(n));var s=i.apply(e,a);if(!o||n===s)return n}}else return n}var q4e=B4e(O4e);function B4e(e){return function(){for(var t=e.apply(this,arguments);typeof t=="function";)t=t();return t}}});var rc=ye(Hy=>{"use strict";var V4e=DSe().Transform,ikt=U4e();function ME(){V4e.call(this,{readableObjectMode:!0})}ME.prototype=Object.create(V4e.prototype);ME.prototype.constructor=ME;ikt(ME.prototype);Hy.ParserStream=ME;Hy.sliceEq=function(e,t,r){for(var n=t,i=0;i{"use strict";var bA=rc().readUInt16BE,oW=rc().readUInt32BE;function EE(e,t){if(e.length<4+t)return null;var r=oW(e,t);return e.length>4&15,n=e[4]&15,i=e[5]>>4&15,a=bA(e,6),o=8,s=0;sa.width||i.width===a.width&&i.height>a.height?i:a}),r=e.reduce(function(i,a){return i.height>a.height||i.height===a.height&&i.width>a.width?i:a}),n;return t.width>r.height||t.width===r.height&&t.height>r.width?n=t:n=r,n}sD.exports.readSizeFromMeta=function(e){var t={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(lkt(e,t),!!t.sizes.length){var r=ukt(t.sizes),n=1;t.transforms.forEach(function(a){var o={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},s={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if(a.type==="imir"&&(a.value===0?n=s[n]:(n=s[n],n=o[n],n=o[n])),a.type==="irot")for(var l=0;l{"use strict";function lD(e,t){var r=new Error(e);return r.code=t,r}function ckt(e){try{return decodeURIComponent(escape(e))}catch(t){return e}}function jy(e,t,r){this.input=e.subarray(t,r),this.start=t;var n=String.fromCharCode.apply(null,this.input.subarray(0,4));if(n!=="II*\0"&&n!=="MM\0*")throw lD("invalid TIFF signature","EBADDATA");this.big_endian=n[0]==="M"}jy.prototype.each=function(e){this.aborted=!1;var t=this.read_uint32(4);for(this.ifds_to_read=[{id:0,offset:t}];this.ifds_to_read.length>0&&!this.aborted;){var r=this.ifds_to_read.shift();r.offset&&this.scan_ifd(r.id,r.offset,e)}};jy.prototype.read_uint16=function(e){var t=this.input;if(e+2>t.length)throw lD("unexpected EOF","EBADDATA");return this.big_endian?t[e]*256+t[e+1]:t[e]+t[e+1]*256};jy.prototype.read_uint32=function(e){var t=this.input;if(e+4>t.length)throw lD("unexpected EOF","EBADDATA");return this.big_endian?t[e]*16777216+t[e+1]*65536+t[e+2]*256+t[e+3]:t[e]+t[e+1]*256+t[e+2]*65536+t[e+3]*16777216};jy.prototype.is_subifd_link=function(e,t){return e===0&&t===34665||e===0&&t===34853||e===34665&&t===40965};jy.prototype.exif_format_length=function(e){switch(e){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}};jy.prototype.exif_format_read=function(e,t){var r;switch(e){case 1:case 2:return r=this.input[t],r;case 6:return r=this.input[t],r|(r&128)*33554430;case 3:return r=this.read_uint16(t),r;case 8:return r=this.read_uint16(t),r|(r&32768)*131070;case 4:return r=this.read_uint32(t),r;case 9:return r=this.read_uint32(t),r|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}};jy.prototype.scan_ifd=function(e,t,r){var n=this.read_uint16(t);t+=2;for(var i=0;ithis.input.length)throw lD("unexpected EOF","EBADDATA");for(var h=[],d=c,v=0;v0&&(this.ifds_to_read.push({id:a,offset:h[0]}),f=!0);var b={is_big_endian:this.big_endian,ifd:e,tag:a,format:o,count:s,entry_offset:t+this.start,data_length:u,data_offset:c+this.start,value:h,is_subifd_link:f};if(r(b)===!1){this.aborted=!0;return}t+=12}e===0&&this.ifds_to_read.push({id:1,offset:this.read_uint32(t)})};sW.exports.ExifParser=jy;sW.exports.get_orientation=function(e){var t=0;try{return new jy(e,0,e.length).each(function(r){if(r.ifd===0&&r.tag===274&&Array.isArray(r.value))return t=r.value[0],!1}),t}catch(r){return-1}}});var j4e=ye((Tdr,H4e)=>{"use strict";var fkt=rc().str2arr,hkt=rc().sliceEq,dkt=rc().readUInt32BE,cD=G4e(),vkt=uD(),pkt=fkt("ftyp");H4e.exports=function(e){if(hkt(e,4,pkt)){var t=cD.unbox(e,0);if(t){var r=cD.getMimeType(t.data);if(r){for(var n,i=t.end;;){var a=cD.unbox(e,i);if(!a)break;if(i=a.end,a.boxtype==="mdat")return;if(a.boxtype==="meta"){n=a.data;break}}if(n){var o=cD.readSizeFromMeta(n);if(o){var s={width:o.width,height:o.height,type:r.type,mime:r.mime,wUnits:"px",hUnits:"px"};if(o.variants.length>1&&(s.variants=o.variants),o.orientation&&(s.orientation=o.orientation),o.exif_location&&o.exif_location.offset+o.exif_location.length<=e.length){var l=dkt(e,o.exif_location.offset),u=e.slice(o.exif_location.offset+l+4,o.exif_location.offset+o.exif_location.length),c=vkt.get_orientation(u);c>0&&(s.orientation=c)}return s}}}}}}});var Z4e=ye((Adr,X4e)=>{"use strict";var gkt=rc().str2arr,mkt=rc().sliceEq,W4e=rc().readUInt16LE,ykt=gkt("BM");X4e.exports=function(e){if(!(e.length<26)&&mkt(e,0,ykt))return{width:W4e(e,18),height:W4e(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}});var Q4e=ye((Sdr,$4e)=>{"use strict";var J4e=rc().str2arr,Y4e=rc().sliceEq,K4e=rc().readUInt16LE,_kt=J4e("GIF87a"),xkt=J4e("GIF89a");$4e.exports=function(e){if(!(e.length<10)&&!(!Y4e(e,0,_kt)&&!Y4e(e,0,xkt)))return{width:K4e(e,6),height:K4e(e,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}});var rEe=ye((Mdr,tEe)=>{"use strict";var lW=rc().readUInt16LE,bkt=0,wkt=1,eEe=16;tEe.exports=function(e){var t=lW(e,0),r=lW(e,2),n=lW(e,4);if(!(t!==bkt||r!==wkt||!n)){for(var i=[],a={width:0,height:0},o=0;oa.width||l>a.height)&&(a=u)}return{width:a.width,height:a.height,variants:i,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}});var nEe=ye((Edr,iEe)=>{"use strict";var uW=rc().readUInt16BE,Tkt=rc().str2arr,Akt=rc().sliceEq,Skt=uD(),Mkt=Tkt("Exif\0\0");iEe.exports=function(e){if(!(e.length<2)&&!(e[0]!==255||e[1]!==216||e[2]!==255))for(var t=2;;){for(;;){if(e.length-t<2)return;if(e[t++]===255)break}for(var r=e[t++],n;r===255;)r=e[t++];if(208<=r&&r<=217||r===1)n=0;else if(192<=r&&r<=254){if(e.length-t<2)return;n=uW(e,t)-2,t+=2}else return;if(r===217||r===218)return;var i;if(r===225&&n>=10&&Akt(e,t,Mkt)&&(i=Skt.get_orientation(e.slice(t+6,t+n))),n>=5&&192<=r&&r<=207&&r!==196&&r!==200&&r!==204){if(e.length-t0&&(a.orientation=i),a}t+=n}}});var uEe=ye((kdr,lEe)=>{"use strict";var sEe=rc().str2arr,aEe=rc().sliceEq,oEe=rc().readUInt32BE,Ekt=sEe(`\x89PNG\r  -`),Ekt=oEe("IHDR");sEe.exports=function(e){if(!(e.length<24)&&nEe(e,0,Mkt)&&nEe(e,12,Ekt))return{width:aEe(e,16),height:aEe(e,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}});var fEe=ye((Cdr,cEe)=>{"use strict";var kkt=rc().str2arr,Ckt=rc().sliceEq,uEe=rc().readUInt32BE,Lkt=kkt("8BPS\0");cEe.exports=function(e){if(!(e.length<22)&&Ckt(e,0,Lkt))return{width:uEe(e,18),height:uEe(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}});var vEe=ye((Ldr,dEe)=>{"use strict";function Pkt(e){return e===32||e===9||e===13||e===10}function bA(e){return typeof e=="number"&&isFinite(e)&&e>0}function Ikt(e){var t=0,r=e.length;for(e[0]===239&&e[1]===187&&e[2]===191&&(t=3);t]*>/,Dkt=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,Fkt=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,zkt=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,Okt=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,hEe=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function qkt(e){var t=e.match(Fkt),r=e.match(zkt),n=e.match(Okt);return{width:t&&(t[1]||t[2]),height:r&&(r[1]||r[2]),viewbox:n&&(n[1]||n[2])}}function Um(e){return hEe.test(e)?e.match(hEe)[0]:"px"}dEe.exports=function(e){if(Ikt(e)){for(var t="",r=0;r{"use strict";var mEe=rc().str2arr,pEe=rc().sliceEq,Bkt=rc().readUInt16LE,Nkt=rc().readUInt16BE,Ukt=rc().readUInt32LE,Vkt=rc().readUInt32BE,Gkt=mEe("II*\0"),Hkt=mEe("MM\0*");function cD(e,t,r){return r?Nkt(e,t):Bkt(e,t)}function cW(e,t,r){return r?Vkt(e,t):Ukt(e,t)}function gEe(e,t,r){var n=cD(e,t+2,r),i=cW(e,t+4,r);return i!==1||n!==3&&n!==4?null:n===3?cD(e,t+8,r):cW(e,t+8,r)}yEe.exports=function(e){if(!(e.length<8)&&!(!pEe(e,0,Gkt)&&!pEe(e,0,Hkt))){var t=e[0]===77,r=cW(e,4,t)-8;if(!(r<0)){var n=r+8;if(!(e.length-n<2)){var i=cD(e,n+0,t)*12;if(!(i<=0)&&(n+=2,!(e.length-n{"use strict";var wEe=rc().str2arr,xEe=rc().sliceEq,bEe=rc().readUInt16LE,fW=rc().readUInt32LE,jkt=lD(),Wkt=wEe("RIFF"),Xkt=wEe("WEBP");function Zkt(e,t){if(!(e[t+3]!==157||e[t+4]!==1||e[t+5]!==42))return{width:bEe(e,t+6)&16383,height:bEe(e,t+8)&16383,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}function Ykt(e,t){if(e[t]===47){var r=fW(e,t+1);return{width:(r&16383)+1,height:(r>>14&16383)+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function Kkt(e,t){return{width:(e[t+6]<<16|e[t+5]<<8|e[t+4])+1,height:(e[t+9]<e.length)){for(;t+8=10?r=r||Zkt(e,t+8):a==="VP8L"&&o>=9?r=r||Ykt(e,t+8):a==="VP8X"&&o>=10?r=r||Kkt(e,t+8):a==="EXIF"&&(n=jkt.get_orientation(e.slice(t+8,t+8+o)),t=1/0),t+=8+o}if(r)return n>0&&(r.orientation=n),r}}}});var MEe=ye((Rdr,SEe)=>{"use strict";SEe.exports={avif:H4e(),bmp:X4e(),gif:$4e(),ico:tEe(),jpeg:iEe(),png:lEe(),psd:fEe(),svg:vEe(),tiff:_Ee(),webp:AEe()}});var EEe=ye((Ddr,dW)=>{"use strict";var hW=MEe();function Jkt(e){for(var t=Object.keys(hW),r=0;r{"use strict";var $kt=EEe(),Qkt=Py().IMAGE_URL_PREFIX,eCt=c2().Buffer;kEe.getImageSize=function(e){var t=e.replace(Qkt,""),r=new eCt(t,"base64");return $kt(r)}});var IEe=ye((zdr,PEe)=>{"use strict";var LEe=Dr(),tCt=ZT(),rCt=Eo(),fD=ho(),iCt=Dr().maxRowLength,nCt=CEe().getImageSize;PEe.exports=function(t,r){var n,i;if(r._hasZ)n=r.z.length,i=iCt(r.z);else if(r._hasSource){var a=nCt(r.source);n=a.height,i=a.width}var o=fD.getFromId(t,r.xaxis||"x"),s=fD.getFromId(t,r.yaxis||"y"),l=o.d2c(r.x0)-r.dx/2,u=s.d2c(r.y0)-r.dy/2,c,f=[l,l+i*r.dx],h=[u,u+n*r.dy];if(o&&o.type==="log")for(c=0;c{"use strict";var lCt=Oa(),A2=Dr(),REe=A2.strTranslate,uCt=Wp(),cCt=ZT(),fCt=QV(),hCt=f8().STYLE;DEe.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis,s=!t._context._exportedPlot&&fCt();A2.makeTraceGroups(i,n,"im").each(function(l){var u=lCt.select(this),c=l[0],f=c.trace,h=(f.zsmooth==="fast"||f.zsmooth===!1&&s)&&!f._hasZ&&f._hasSource&&a.type==="linear"&&o.type==="linear";f._realImage=h;var d=c.z,v=c.x0,_=c.y0,b=c.w,p=c.h,k=f.dx,E=f.dy,S,L,x,C,M,g;for(g=0;S===void 0&&g0;)L=a.c2p(v+g*k),g--;for(g=0;C===void 0&&g0;)M=o.c2p(_+g*E),g--;if(Lj[0];if(re||oe){var _e=S+T/2,Ee=C+z/2;H+="transform:"+REe(_e+"px",Ee+"px")+"scale("+(re?-1:1)+","+(oe?-1:1)+")"+REe(-_e+"px",-Ee+"px")+";"}}Z.attr("style",H);var Ce=new Promise(function(me){if(f._hasZ)me();else if(f._hasSource)if(f._canvas&&f._canvas.el.width===b&&f._canvas.el.height===p&&f._canvas.source===f.source)me();else{var ie=document.createElement("canvas");ie.width=b,ie.height=p;var Se=ie.getContext("2d",{willReadFrequently:!0});f._image=f._image||new Image;var Le=f._image;Le.onload=function(){Se.drawImage(Le,0,0),f._canvas={el:ie,source:f.source},me()},Le.setAttribute("src",f.source)}}).then(function(){var me,ie;if(f._hasZ)ie=G(function(Ae,Fe){var Pe=d[Fe][Ae];return A2.isTypedArray(Pe)&&(Pe=Array.from(Pe)),Pe}),me=ie.toDataURL("image/png");else if(f._hasSource)if(h)me=f.source;else{var Se=f._canvas.el.getContext("2d",{willReadFrequently:!0}),Le=Se.getImageData(0,0,b,p).data;ie=G(function(Ae,Fe){var Pe=4*(Fe*b+Ae);return[Le[Pe],Le[Pe+1],Le[Pe+2],Le[Pe+3]]}),me=ie.toDataURL("image/png")}Z.attr({"xlink:href":me,height:z,width:T,x:S,y:C})});t._promises.push(Ce)})}});var OEe=ye((qdr,zEe)=>{"use strict";var dCt=Oa();zEe.exports=function(t){dCt.select(t).selectAll(".im image").style("opacity",function(r){return r[0].trace.opacity})}});var UEe=ye((Bdr,NEe)=>{"use strict";var qEe=vf(),BEe=Dr(),hD=BEe.isArrayOrTypedArray,vCt=ZT();NEe.exports=function(t,r,n){var i=t.cd[0],a=i.trace,o=t.xa,s=t.ya;if(!(qEe.inbox(r-i.x0,r-(i.x0+i.w*a.dx),0)>0||qEe.inbox(n-i.y0,n-(i.y0+i.h*a.dy),0)>0)){var l=Math.floor((r-i.x0)/a.dx),u=Math.floor(Math.abs(n-i.y0)/a.dy),c;if(a._hasZ?c=i.z[u][l]:a._hasSource&&(c=a._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(l,u,1,1).data),!!c){var f=i.hi||a.hoverinfo,h;if(f){var d=f.split("+");d.indexOf("all")!==-1&&(d=["color"]),d.indexOf("color")!==-1&&(h=!0)}var v=vCt.colormodel[a.colormodel],_=v.colormodel||a.colormodel,b=_.length,p=a._scaler(c),k=v.suffix,E=[];(a.hovertemplate||h)&&(E.push("["+[p[0]+k[0],p[1]+k[1],p[2]+k[2]].join(", ")),b===4&&E.push(", "+p[3]+k[3]),E.push("]"),E=E.join(""),t.extraText=_.toUpperCase()+": "+E);var S;hD(a.hovertext)&&hD(a.hovertext[u])?S=a.hovertext[u][l]:hD(a.text)&&hD(a.text[u])&&(S=a.text[u][l]);var L=s.c2p(i.y0+(u+.5)*a.dy),x=i.x0+(l+.5)*a.dx,C=i.y0+(u+.5)*a.dy,M="["+c.slice(0,a.colormodel.length).join(", ")+"]";return[BEe.extendFlat(t,{index:[u,l],x0:o.c2p(i.x0+l*a.dx),x1:o.c2p(i.x0+(l+1)*a.dx),y0:L,y1:L,color:p,xVal:x,xLabelVal:x,yVal:C,yLabelVal:C,zLabelVal:M,text:S,hovertemplateLabels:{zLabel:M,colorLabel:E,"color[0]Label":p[0]+k[0],"color[1]Label":p[1]+k[1],"color[2]Label":p[2]+k[2],"color[3]Label":p[3]+k[3]}})]}}}});var GEe=ye((Ndr,VEe)=>{"use strict";VEe.exports=function(t,r){return"xVal"in r&&(t.x=r.xVal),"yVal"in r&&(t.y=r.yVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t.color=r.color,t.colormodel=r.trace.colormodel,t.z||(t.z=r.color),t}});var jEe=ye((Udr,HEe)=>{"use strict";HEe.exports={attributes:uH(),supplyDefaults:U3e(),calc:IEe(),plot:FEe(),style:OEe(),hoverPoints:UEe(),eventData:GEe(),moduleType:"trace",name:"image",basePlotModule:ph(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}});var XEe=ye((Vdr,WEe)=>{"use strict";WEe.exports=jEe()});var S2=ye((Gdr,YEe)=>{"use strict";var pCt=Gl(),gCt=Cc().attributes,mCt=ec(),yCt=Lh(),{hovertemplateAttrs:_Ct,texttemplateAttrs:xCt,templatefallbackAttrs:ZEe}=Ll(),EE=Ao().extendFlat,bCt=Pd().pattern,dD=mCt({editType:"plot",arrayOk:!0,colorEditType:"plot"});YEe.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:yCt.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:bCt,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:EE({},pCt.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:_Ct({},{keys:["label","color","value","percent","text"]}),hovertemplatefallback:ZEe(),texttemplate:xCt({editType:"plot"},{keys:["label","color","value","percent","text"]}),texttemplatefallback:ZEe({editType:"plot"}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:EE({},dD,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:EE({},dD,{}),outsidetextfont:EE({},dD,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:EE({},dD,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:gCt({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}});var M2=ye((Hdr,$Ee)=>{"use strict";var wCt=Eo(),kE=Dr(),TCt=S2(),ACt=Cc().defaults,SCt=r0().handleText,MCt=Dr().coercePattern;function KEe(e,t){var r=kE.isArrayOrTypedArray(e),n=kE.isArrayOrTypedArray(t),i=Math.min(r?e.length:1/0,n?t.length:1/0);if(isFinite(i)||(i=0),i&&n){for(var a,o=0;o0){a=!0;break}}a||(i=0)}return{hasLabels:r,hasValues:n,len:i}}function JEe(e,t,r,n,i){var a=n("marker.line.width");a&&n("marker.line.color",i?void 0:r.paper_bgcolor);var o=n("marker.colors");MCt(n,"marker.pattern",o),e.marker&&!t.marker.pattern.fgcolor&&(t.marker.pattern.fgcolor=e.marker.colors),t.marker.pattern.bgcolor||(t.marker.pattern.bgcolor=r.paper_bgcolor)}function ECt(e,t,r,n){function i(k,E){return kE.coerce(e,t,TCt,k,E)}var a=i("labels"),o=i("values"),s=KEe(a,o),l=s.len;if(t._hasLabels=s.hasLabels,t._hasValues=s.hasValues,!t._hasLabels&&t._hasValues&&(i("label0"),i("dlabel")),!l){t.visible=!1;return}t._length=l,JEe(e,t,n,i,!0),i("scalegroup");var u=i("text"),c=i("texttemplate");i("texttemplatefallback");var f;if(c||(f=i("textinfo",kE.isArrayOrTypedArray(u)?"text+percent":"percent")),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),c||f&&f!=="none"){var h=i("textposition");SCt(e,t,n,i,h,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var d=Array.isArray(h)||h==="auto",v=d||h==="outside";v&&i("automargin"),(h==="inside"||h==="auto"||Array.isArray(h))&&i("insidetextorientation")}else f==="none"&&i("textposition","none");ACt(t,n,i);var _=i("hole"),b=i("title.text");if(b){var p=i("title.position",_?"middle center":"top center");!_&&p==="middle center"&&(t.title.position="top center"),kE.coerceFont(i,"title.font",n.font)}i("sort"),i("direction"),i("rotation"),i("pull")}$Ee.exports={handleLabelsAndValues:KEe,handleMarkerDefaults:JEe,supplyDefaults:ECt}});var vD=ye((jdr,QEe)=>{"use strict";QEe.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var tke=ye((Wdr,eke)=>{"use strict";var kCt=Dr(),CCt=vD();eke.exports=function(t,r){function n(i,a){return kCt.coerce(t,r,CCt,i,a)}n("hiddenlabels"),n("piecolorway",r.colorway),n("extendpiecolors")}});var wA=ye((Xdr,nke)=>{"use strict";var LCt=Eo(),vW=cd(),PCt=ka(),ICt={};function RCt(e,t){var r=[],n=e._fullLayout,i=n.hiddenlabels||[],a=t.labels,o=t.marker.colors||[],s=t.values,l=t._length,u=t._hasValues&&l,c,f;if(t.dlabel)for(a=new Array(l),c=0;c=0});var S=t.type==="funnelarea"?_:t.sort;return S&&r.sort(function(L,x){return x.v-L.v}),r[0]&&(r[0].vTotal=v),r}function rke(e){return function(r,n){return!r||(r=vW(r),!r.isValid())?!1:(r=PCt.addOpacity(r,r.getAlpha()),e[n]||(e[n]=r),r)}}function DCt(e,t){var r=(t||{}).type;r||(r="pie");var n=e._fullLayout,i=e.calcdata,a=n[r+"colorway"],o=n["_"+r+"colormap"];n["extend"+r+"colors"]&&(a=ike(a,ICt));for(var s=0,l=0;l{"use strict";var FCt=ip().appendArrayMultiPointValues;ake.exports=function(t,r){var n={curveNumber:r.index,pointNumbers:t.pts,data:r._input,fullData:r,label:t.label,color:t.color,value:t.v,percent:t.percent,text:t.text,bbox:t.bbox,v:t.v};return t.pts.length===1&&(n.pointNumber=n.i=t.pts[0]),FCt(n,r,t.pts),r.type==="funnelarea"&&(delete n.v,delete n.i),n}});var yD=ye((Ydr,Eke)=>{"use strict";var Fp=Oa(),zCt=Mc(),pD=vf(),hke=ka(),Wy=So(),rv=Dr(),OCt=rv.strScale,ske=rv.strTranslate,pW=ru(),dke=bv(),qCt=dke.recordMinTextSize,BCt=dke.clearMinTextSize,vke=e2().TEXTPAD,ns=l_(),gD=oke(),lke=Dr().isValidTextValue;function NCt(e,t){var r=e._context.staticPlot,n=e._fullLayout,i=n._size;BCt("pie",n),mke(t,e),Ake(t,i);var a=rv.makeTraceGroups(n._pielayer,t,"trace").each(function(o){var s=Fp.select(this),l=o[0],u=l.trace;YCt(o),s.attr("stroke-linejoin","round"),s.each(function(){var c=Fp.select(this).selectAll("g.slice").data(o);c.enter().append("g").classed("slice",!0),c.exit().remove();var f=[[[],[]],[[],[]]],h=!1;c.each(function(S,L){if(S.hidden){Fp.select(this).selectAll("path,g").remove();return}S.pointNumber=S.i,S.curveNumber=u.index,f[S.pxmid[1]<0?0:1][S.pxmid[0]<0?0:1].push(S);var x=l.cx,C=l.cy,M=Fp.select(this),g=M.selectAll("path.surface").data([S]);if(g.enter().append("path").classed("surface",!0).style({"pointer-events":r?"none":"all"}),M.call(pke,e,o),u.pull){var P=+ns.castOption(u.pull,S.pts)||0;P>0&&(x+=P*S.pxmid[0],C+=P*S.pxmid[1])}S.cxFinal=x,S.cyFinal=C;function T(N,j,re,oe){var _e=oe*(j[0]-N[0]),Ee=oe*(j[1]-N[1]);return"a"+oe*l.r+","+oe*l.r+" 0 "+S.largeArc+(re?" 1 ":" 0 ")+_e+","+Ee}var z=u.hole;if(S.v===l.vTotal){var O="M"+(x+S.px0[0])+","+(C+S.px0[1])+T(S.px0,S.pxmid,!0,1)+T(S.pxmid,S.px0,!0,1)+"Z";z?g.attr("d","M"+(x+z*S.px0[0])+","+(C+z*S.px0[1])+T(S.px0,S.pxmid,!1,z)+T(S.pxmid,S.px0,!1,z)+"Z"+O):g.attr("d",O)}else{var V=T(S.px0,S.px1,!0,1);if(z){var G=1-z;g.attr("d","M"+(x+z*S.px1[0])+","+(C+z*S.px1[1])+T(S.px1,S.px0,!1,z)+"l"+G*S.px0[0]+","+G*S.px0[1]+V+"Z")}else g.attr("d","M"+x+","+C+"l"+S.px0[0]+","+S.px0[1]+V+"Z")}Ske(e,S,l);var Z=ns.castOption(u.textposition,S.pts),H=M.selectAll("g.slicetext").data(S.text&&Z!=="none"?[0]:[]);H.enter().append("g").classed("slicetext",!0),H.exit().remove(),H.each(function(){var N=rv.ensureSingle(Fp.select(this),"text","",function(ie){ie.attr("data-notex",1)}),j=rv.ensureUniformFontSize(e,Z==="outside"?VCt(u,S,n.font):gke(u,S,n.font));N.text(S.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(Wy.font,j).call(pW.convertToTspans,e);var re=Wy.bBox(N.node()),oe;if(Z==="outside")oe=fke(re,S);else if(oe=yke(re,S,l),Z==="auto"&&oe.scale<1){var _e=rv.ensureUniformFontSize(e,u.outsidetextfont);N.call(Wy.font,_e),re=Wy.bBox(N.node()),oe=fke(re,S)}var Ee=oe.textPosAngle,Ce=Ee===void 0?S.pxmid:mD(l.r,Ee);if(oe.targetX=x+Ce[0]*oe.rCenter+(oe.x||0),oe.targetY=C+Ce[1]*oe.rCenter+(oe.y||0),Mke(oe,re),oe.outside){var me=oe.targetY;S.yLabelMin=me-re.height/2,S.yLabelMid=me,S.yLabelMax=me+re.height/2,S.labelExtraX=0,S.labelExtraY=0,h=!0}oe.fontSize=j.size,qCt(u.type,oe,n),o[L].transform=oe,rv.setTransormAndDisplay(N,oe)})});var d=Fp.select(this).selectAll("g.titletext").data(u.title.text?[0]:[]);if(d.enter().append("g").classed("titletext",!0),d.exit().remove(),d.each(function(){var S=rv.ensureSingle(Fp.select(this),"text","",function(C){C.attr("data-notex",1)}),L=u.title.text;u._meta&&(L=rv.templateString(L,u._meta)),S.text(L).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(Wy.font,u.title.font).call(pW.convertToTspans,e);var x;u.title.position==="middle center"?x=jCt(l):x=wke(l,i),S.attr("transform",ske(x.x,x.y)+OCt(Math.min(1,x.scale))+ske(x.tx,x.ty))}),h&&XCt(f,u),UCt(c,u),h&&u.automargin){var v=Wy.bBox(s.node()),_=u.domain,b=i.w*(_.x[1]-_.x[0]),p=i.h*(_.y[1]-_.y[0]),k=(.5*b-l.r)/i.w,E=(.5*p-l.r)/i.h;zCt.autoMargin(e,"pie."+u.uid+".automargin",{xl:_.x[0]-k,xr:_.x[1]+k,yb:_.y[0]-E,yt:_.y[1]+E,l:Math.max(l.cx-l.r-v.left,0),r:Math.max(v.right-(l.cx+l.r),0),b:Math.max(v.bottom-(l.cy+l.r),0),t:Math.max(l.cy-l.r-v.top,0),pad:5})}})});setTimeout(function(){a.selectAll("tspan").each(function(){var o=Fp.select(this);o.attr("dy")&&o.attr("dy",o.attr("dy"))})},0)}function UCt(e,t){e.each(function(r){var n=Fp.select(this);if(!r.labelExtraX&&!r.labelExtraY){n.select("path.textline").remove();return}var i=n.select("g.slicetext text");r.transform.targetX+=r.labelExtraX,r.transform.targetY+=r.labelExtraY,rv.setTransormAndDisplay(i,r.transform);var a=r.cxFinal+r.pxmid[0],o=r.cyFinal+r.pxmid[1],s="M"+a+","+o,l=(r.yLabelMax-r.yLabelMin)*(r.pxmid[0]<0?-1:1)/4;if(r.labelExtraX){var u=r.labelExtraX*r.pxmid[1]/r.pxmid[0],c=r.yLabelMid+r.labelExtraY-(r.cyFinal+r.pxmid[1]);Math.abs(u)>Math.abs(c)?s+="l"+c*r.pxmid[0]/r.pxmid[1]+","+c+"H"+(a+r.labelExtraX+l):s+="l"+r.labelExtraX+","+u+"v"+(c-u)+"h"+l}else s+="V"+(r.yLabelMid+r.labelExtraY)+"h"+l;rv.ensureSingle(n,"path","textline").call(hke.stroke,t.outsidetextfont.color).attr({"stroke-width":Math.min(2,t.outsidetextfont.size/8),d:s,fill:"none"})})}function pke(e,t,r){var n=r[0],i=n.cx,a=n.cy,o=n.trace,s=o.type==="funnelarea";"_hasHoverLabel"in o||(o._hasHoverLabel=!1),"_hasHoverEvent"in o||(o._hasHoverEvent=!1),e.on("mouseover",function(l){var u=t._fullLayout,c=t._fullData[o.index];if(!(t._dragging||u.hovermode===!1)){var f=c.hoverinfo;if(Array.isArray(f)&&(f=pD.castHoverinfo({hoverinfo:[ns.castOption(f,l.pts)],_module:o._module},u,0)),f==="all"&&(f="label+text+value+percent+name"),c.hovertemplate||f!=="none"&&f!=="skip"&&f){var h=l.rInscribed||0,d=i+l.pxmid[0]*(1-h),v=a+l.pxmid[1]*(1-h),_=u.separators,b=[];if(f&&f.indexOf("label")!==-1&&b.push(l.label),l.text=ns.castOption(c.hovertext||c.text,l.pts),f&&f.indexOf("text")!==-1){var p=l.text;rv.isValidTextValue(p)&&b.push(p)}l.value=l.v,l.valueLabel=ns.formatPieValue(l.v,_),f&&f.indexOf("value")!==-1&&b.push(l.valueLabel),l.percent=l.v/n.vTotal,l.percentLabel=ns.formatPiePercent(l.percent,_),f&&f.indexOf("percent")!==-1&&b.push(l.percentLabel);var k=c.hoverlabel,E=k.font,S=[];pD.loneHover({trace:o,x0:d-h*n.r,x1:d+h*n.r,y:v,_x0:s?i+l.TL[0]:d-h*n.r,_x1:s?i+l.TR[0]:d+h*n.r,_y0:s?a+l.TL[1]:v-h*n.r,_y1:s?a+l.BL[1]:v+h*n.r,text:b.join("
"),name:c.hovertemplate||f.indexOf("name")!==-1?c.name:void 0,idealAlign:l.pxmid[0]<0?"left":"right",color:ns.castOption(k.bgcolor,l.pts)||l.color,borderColor:ns.castOption(k.bordercolor,l.pts),fontFamily:ns.castOption(E.family,l.pts),fontSize:ns.castOption(E.size,l.pts),fontColor:ns.castOption(E.color,l.pts),nameLength:ns.castOption(k.namelength,l.pts),textAlign:ns.castOption(k.align,l.pts),hovertemplate:ns.castOption(c.hovertemplate,l.pts),hovertemplateLabels:l,eventData:[gD(l,c)]},{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:t,inOut_bbox:S}),l.bbox=S[0],o._hasHoverLabel=!0}o._hasHoverEvent=!0,t.emit("plotly_hover",{points:[gD(l,c)],event:Fp.event})}}),e.on("mouseout",function(l){var u=t._fullLayout,c=t._fullData[o.index],f=Fp.select(this).datum();o._hasHoverEvent&&(l.originalEvent=Fp.event,t.emit("plotly_unhover",{points:[gD(f,c)],event:Fp.event}),o._hasHoverEvent=!1),o._hasHoverLabel&&(pD.loneUnhover(u._hoverlayer.node()),o._hasHoverLabel=!1)}),e.on("click",function(l){var u=t._fullLayout,c=t._fullData[o.index];t._dragging||u.hovermode===!1||(t._hoverdata=[gD(l,c)],pD.click(t,Fp.event))})}function VCt(e,t,r){var n=ns.castOption(e.outsidetextfont.color,t.pts)||ns.castOption(e.textfont.color,t.pts)||r.color,i=ns.castOption(e.outsidetextfont.family,t.pts)||ns.castOption(e.textfont.family,t.pts)||r.family,a=ns.castOption(e.outsidetextfont.size,t.pts)||ns.castOption(e.textfont.size,t.pts)||r.size,o=ns.castOption(e.outsidetextfont.weight,t.pts)||ns.castOption(e.textfont.weight,t.pts)||r.weight,s=ns.castOption(e.outsidetextfont.style,t.pts)||ns.castOption(e.textfont.style,t.pts)||r.style,l=ns.castOption(e.outsidetextfont.variant,t.pts)||ns.castOption(e.textfont.variant,t.pts)||r.variant,u=ns.castOption(e.outsidetextfont.textcase,t.pts)||ns.castOption(e.textfont.textcase,t.pts)||r.textcase,c=ns.castOption(e.outsidetextfont.lineposition,t.pts)||ns.castOption(e.textfont.lineposition,t.pts)||r.lineposition,f=ns.castOption(e.outsidetextfont.shadow,t.pts)||ns.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n,family:i,size:a,weight:o,style:s,variant:l,textcase:u,lineposition:c,shadow:f}}function gke(e,t,r){var n=ns.castOption(e.insidetextfont.color,t.pts);!n&&e._input.textfont&&(n=ns.castOption(e._input.textfont.color,t.pts));var i=ns.castOption(e.insidetextfont.family,t.pts)||ns.castOption(e.textfont.family,t.pts)||r.family,a=ns.castOption(e.insidetextfont.size,t.pts)||ns.castOption(e.textfont.size,t.pts)||r.size,o=ns.castOption(e.insidetextfont.weight,t.pts)||ns.castOption(e.textfont.weight,t.pts)||r.weight,s=ns.castOption(e.insidetextfont.style,t.pts)||ns.castOption(e.textfont.style,t.pts)||r.style,l=ns.castOption(e.insidetextfont.variant,t.pts)||ns.castOption(e.textfont.variant,t.pts)||r.variant,u=ns.castOption(e.insidetextfont.textcase,t.pts)||ns.castOption(e.textfont.textcase,t.pts)||r.textcase,c=ns.castOption(e.insidetextfont.lineposition,t.pts)||ns.castOption(e.textfont.lineposition,t.pts)||r.lineposition,f=ns.castOption(e.insidetextfont.shadow,t.pts)||ns.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n||hke.contrast(t.color),family:i,size:a,weight:o,style:s,variant:l,textcase:u,lineposition:c,shadow:f}}function mke(e,t){for(var r,n,i=0;i=-4;k-=2)p(Math.PI*k,"tan");for(k=4;k>=-4;k-=2)p(Math.PI*(k+1),"tan")}if(f||d){for(k=4;k>=-4;k-=2)p(Math.PI*(k+1.5),"rad");for(k=4;k>=-4;k-=2)p(Math.PI*(k+.5),"rad")}}if(s||v||f){var E=Math.sqrt(e.width*e.width+e.height*e.height);if(b={scale:i*n*2/E,rCenter:1-i,rotate:0},b.textPosAngle=(t.startangle+t.stopangle)/2,b.scale>=1)return b;_.push(b)}(v||d)&&(b=uke(e,n,o,l,u),b.textPosAngle=(t.startangle+t.stopangle)/2,_.push(b)),(v||h)&&(b=cke(e,n,o,l,u),b.textPosAngle=(t.startangle+t.stopangle)/2,_.push(b));for(var S=0,L=0,x=0;x<_.length;x++){var C=_[x].scale;if(L=1)break}return _[S]}function GCt(e,t){var r=e.startangle,n=e.stopangle;return r>t&&t>n||r0?1:-1)/2,y:a/(1+r*r/(n*n)),outside:!0}}function jCt(e){var t=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/t,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}function wke(e,t){var r=1,n=1,i,a=e.trace,o={x:e.cx,y:e.cy},s={tx:0,ty:0};s.ty+=a.title.font.size,i=Tke(a),a.title.position.indexOf("top")!==-1?(o.y-=(1+i)*e.r,s.ty-=e.titleBox.height):a.title.position.indexOf("bottom")!==-1&&(o.y+=(1+i)*e.r);var l=WCt(e.r,e.trace.aspectratio),u=t.w*(a.domain.x[1]-a.domain.x[0])/2;return a.title.position.indexOf("left")!==-1?(u=u+l,o.x-=(1+i)*l,s.tx+=e.titleBox.width/2):a.title.position.indexOf("center")!==-1?u*=2:a.title.position.indexOf("right")!==-1&&(u=u+l,o.x+=(1+i)*l,s.tx-=e.titleBox.width/2),r=u/e.titleBox.width,n=gW(e,t)/e.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function WCt(e,t){return e/(t===void 0?1:t)}function gW(e,t){var r=e.trace,n=t.h*(r.domain.y[1]-r.domain.y[0]);return Math.min(e.titleBox.height,n/2)}function Tke(e){var t=e.pull;if(!t)return 0;var r;if(rv.isArrayOrTypedArray(t))for(t=0,r=0;rt&&(t=e.pull[r]);return t}function XCt(e,t){var r,n,i,a,o,s,l,u,c,f,h,d,v;function _(E,S){return E.pxmid[1]-S.pxmid[1]}function b(E,S){return S.pxmid[1]-E.pxmid[1]}function p(E,S){S||(S={});var L=S.labelExtraY+(n?S.yLabelMax:S.yLabelMin),x=n?E.yLabelMin:E.yLabelMax,C=n?E.yLabelMax:E.yLabelMin,M=E.cyFinal+o(E.px0[1],E.px1[1]),g=L-x,P,T,z,O,V,G;if(g*l>0&&(E.labelExtraY=g),!!rv.isArrayOrTypedArray(t.pull))for(T=0;T=(ns.castOption(t.pull,z.pts)||0))&&((E.pxmid[1]-z.pxmid[1])*l>0?(O=z.cyFinal+o(z.px0[1],z.px1[1]),g=O-x-E.labelExtraY,g*l>0&&(E.labelExtraY+=g)):(C+E.labelExtraY-M)*l>0&&(P=3*s*Math.abs(T-f.indexOf(E)),V=z.cxFinal+a(z.px0[0],z.px1[0]),G=V+P-(E.cxFinal+E.pxmid[0])-E.labelExtraX,G*s>0&&(E.labelExtraX+=G)))}for(n=0;n<2;n++)for(i=n?_:b,o=n?Math.max:Math.min,l=n?1:-1,r=0;r<2;r++){for(a=r?Math.max:Math.min,s=r?1:-1,u=e[n][r],u.sort(i),c=e[1-n][r],f=c.concat(u),d=[],h=0;h1?(u=r.r,c=u/i.aspectratio):(c=r.r,u=c*i.aspectratio),u*=(1+i.baseratio)/2,l=u*c}o=Math.min(o,l/r.vTotal)}for(n=0;nt.vTotal/2?1:0,u.halfangle=Math.PI*Math.min(u.v/t.vTotal,.5),u.ring=1-n.hole,u.rInscribed=HCt(u,t))}function mD(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}function Ske(e,t,r){var n=e._fullLayout,i=r.trace,a=i.texttemplate,o=i.textinfo;if(!a&&o&&o!=="none"){var s=o.split("+"),l=function(S){return s.indexOf(S)!==-1},u=l("label"),c=l("text"),f=l("value"),h=l("percent"),d=n.separators,v;if(v=u?[t.label]:[],c){var _=ns.getFirstFilled(i.text,t.pts);lke(_)&&v.push(_)}f&&v.push(ns.formatPieValue(t.v,d)),h&&v.push(ns.formatPiePercent(t.v/r.vTotal,d)),t.text=v.join("
")}function b(S){return{label:S.label,value:S.v,valueLabel:ns.formatPieValue(S.v,n.separators),percent:S.v/r.vTotal,percentLabel:ns.formatPiePercent(S.v/r.vTotal,n.separators),color:S.color,text:S.text,customdata:rv.castOption(i,S.i,"customdata")}}if(a){var p=rv.castOption(i,t.i,"texttemplate");if(!p)t.text="";else{var k=b(t),E=ns.getFirstFilled(i.text,t.pts);(lke(E)||E==="")&&(k.text=E),t.text=rv.texttemplateString({data:[k,i._meta],fallback:i.texttemplatefallback,labels:k,locale:e._fullLayout._d3locale,template:p})}}}function Mke(e,t){var r=e.rotate*Math.PI/180,n=Math.cos(r),i=Math.sin(r),a=(t.left+t.right)/2,o=(t.top+t.bottom)/2;e.textX=a*n-o*i,e.textY=a*i+o*n,e.noCenter=!0}Eke.exports={plot:NCt,formatSliceLabel:Ske,transformInsideText:yke,determineInsideTextFont:gke,positionTitleOutside:wke,prerenderTitles:mke,layoutAreas:Ake,attachFxHandlers:pke,computeTransform:Mke}});var Lke=ye((Kdr,Cke)=>{"use strict";var kke=Oa(),KCt=q3(),JCt=bv().resizeText;Cke.exports=function(t){var r=t._fullLayout._pielayer.selectAll(".trace");JCt(t,r,"pie"),r.each(function(n){var i=n[0],a=i.trace,o=kke.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){kke.select(this).call(KCt,s,a,t)})})}});var Ike=ye(TA=>{"use strict";var Pke=Mc();TA.name="pie";TA.plot=function(e,t,r,n){Pke.plotBasePlot(TA.name,e,t,r,n)};TA.clean=function(e,t,r,n){Pke.cleanBasePlot(TA.name,e,t,r,n)}});var Dke=ye(($dr,Rke)=>{"use strict";Rke.exports={attributes:S2(),supplyDefaults:M2().supplyDefaults,supplyLayoutDefaults:tke(),layoutAttributes:vD(),calc:wA().calc,crossTraceCalc:wA().crossTraceCalc,plot:yD().plot,style:Lke(),styleOne:q3(),moduleType:"trace",name:"pie",basePlotModule:Ike(),categories:["pie-like","pie","showLegend"],meta:{}}});var zke=ye((Qdr,Fke)=>{"use strict";Fke.exports=Dke()});var qke=ye(AA=>{"use strict";var Oke=Mc();AA.name="sunburst";AA.plot=function(e,t,r,n){Oke.plotBasePlot(AA.name,e,t,r,n)};AA.clean=function(e,t,r,n){Oke.cleanBasePlot(AA.name,e,t,r,n)}});var mW=ye((tvr,Bke)=>{"use strict";Bke.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}});var LE=ye((rvr,Vke)=>{"use strict";var $Ct=Gl(),{hovertemplateAttrs:QCt,texttemplateAttrs:e6t,templatefallbackAttrs:Nke}=Ll(),t6t=Tu(),r6t=Cc().attributes,Xy=S2(),Uke=mW(),CE=Ao().extendFlat,i6t=Pd().pattern;Vke.exports={labels:{valType:"data_array",editType:"calc"},parents:{valType:"data_array",editType:"calc"},values:{valType:"data_array",editType:"calc"},branchvalues:{valType:"enumerated",values:["remainder","total"],dflt:"remainder",editType:"calc"},count:{valType:"flaglist",flags:["branches","leaves"],dflt:"leaves",editType:"calc"},level:{valType:"any",editType:"plot",anim:!0},maxdepth:{valType:"integer",editType:"plot",dflt:-1},marker:CE({colors:{valType:"data_array",editType:"calc"},line:{color:CE({},Xy.marker.line.color,{dflt:null}),width:CE({},Xy.marker.line.width,{dflt:1}),editType:"calc"},pattern:i6t,editType:"calc"},t6t("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:Xy.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:e6t({editType:"plot"},{keys:Uke.eventDataKeys.concat(["label","value"])}),texttemplatefallback:Nke({editType:"plot"}),hovertext:Xy.hovertext,hoverinfo:CE({},$Ct.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:QCt({},{keys:Uke.eventDataKeys}),hovertemplatefallback:Nke(),textfont:Xy.textfont,insidetextorientation:Xy.insidetextorientation,insidetextfont:Xy.insidetextfont,outsidetextfont:CE({},Xy.outsidetextfont,{}),rotation:{valType:"angle",dflt:0,editType:"plot"},sort:Xy.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)"},editType:"calc"},domain:r6t({name:"sunburst",trace:!0,editType:"calc"})}});var yW=ye((ivr,Gke)=>{"use strict";Gke.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var Xke=ye((nvr,Wke)=>{"use strict";var Hke=Dr(),n6t=LE(),a6t=Cc().defaults,o6t=r0().handleText,s6t=M2().handleMarkerDefaults,jke=tc(),l6t=jke.hasColorscale,u6t=jke.handleDefaults;Wke.exports=function(t,r,n,i){function a(h,d){return Hke.coerce(t,r,n6t,h,d)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth"),s6t(t,r,i,a);var u=r._hasColorscale=l6t(t,"marker","colors")||(t.marker||{}).coloraxis;u&&u6t(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",u?1:.7);var c=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",Hke.isArrayOrTypedArray(c)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var f="auto";o6t(t,r,i,a,f,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("insidetextorientation"),a("sort"),a("rotation"),a("root.color"),a6t(r,i,a),r._length=null}});var Yke=ye((avr,Zke)=>{"use strict";var c6t=Dr(),f6t=yW();Zke.exports=function(t,r){function n(i,a){return c6t.coerce(t,r,f6t,i,a)}n("sunburstcolorway",r.colorway),n("extendsunburstcolors")}});var PE=ye((_D,Kke)=>{(function(e,t){typeof _D=="object"&&typeof Kke!="undefined"?t(_D):(e=e||self,t(e.d3=e.d3||{}))})(_D,function(e){"use strict";function t(je,tt){return je.parent===tt.parent?1:2}function r(je){return je.reduce(n,0)/je.length}function n(je,tt){return je+tt.x}function i(je){return 1+je.reduce(a,0)}function a(je,tt){return Math.max(je,tt.y)}function o(je){for(var tt;tt=je.children;)je=tt[0];return je}function s(je){for(var tt;tt=je.children;)je=tt[tt.length-1];return je}function l(){var je=t,tt=1,xt=1,Ie=!1;function xe(ke){var vt,ir=0;ke.eachAfter(function($r){var di=$r.children;di?($r.x=r(di),$r.y=i(di)):($r.x=vt?ir+=je($r,vt):0,$r.y=0,vt=$r)});var ar=o(ke),vr=s(ke),ii=ar.x-je(ar,vr)/2,pi=vr.x+je(vr,ar)/2;return ke.eachAfter(Ie?function($r){$r.x=($r.x-ke.x)*tt,$r.y=(ke.y-$r.y)*xt}:function($r){$r.x=($r.x-ii)/(pi-ii)*tt,$r.y=(1-(ke.y?$r.y/ke.y:1))*xt})}return xe.separation=function(ke){return arguments.length?(je=ke,xe):je},xe.size=function(ke){return arguments.length?(Ie=!1,tt=+ke[0],xt=+ke[1],xe):Ie?null:[tt,xt]},xe.nodeSize=function(ke){return arguments.length?(Ie=!0,tt=+ke[0],xt=+ke[1],xe):Ie?[tt,xt]:null},xe}function u(je){var tt=0,xt=je.children,Ie=xt&&xt.length;if(!Ie)tt=1;else for(;--Ie>=0;)tt+=xt[Ie].value;je.value=tt}function c(){return this.eachAfter(u)}function f(je){var tt=this,xt,Ie=[tt],xe,ke,vt;do for(xt=Ie.reverse(),Ie=[];tt=xt.pop();)if(je(tt),xe=tt.children,xe)for(ke=0,vt=xe.length;ke=0;--xe)xt.push(Ie[xe]);return this}function d(je){for(var tt=this,xt=[tt],Ie=[],xe,ke,vt;tt=xt.pop();)if(Ie.push(tt),xe=tt.children,xe)for(ke=0,vt=xe.length;ke=0;)xt+=Ie[xe].value;tt.value=xt})}function _(je){return this.eachBefore(function(tt){tt.children&&tt.children.sort(je)})}function b(je){for(var tt=this,xt=p(tt,je),Ie=[tt];tt!==xt;)tt=tt.parent,Ie.push(tt);for(var xe=Ie.length;je!==xt;)Ie.splice(xe,0,je),je=je.parent;return Ie}function p(je,tt){if(je===tt)return je;var xt=je.ancestors(),Ie=tt.ancestors(),xe=null;for(je=xt.pop(),tt=Ie.pop();je===tt;)xe=je,je=xt.pop(),tt=Ie.pop();return xe}function k(){for(var je=this,tt=[je];je=je.parent;)tt.push(je);return tt}function E(){var je=[];return this.each(function(tt){je.push(tt)}),je}function S(){var je=[];return this.eachBefore(function(tt){tt.children||je.push(tt)}),je}function L(){var je=this,tt=[];return je.each(function(xt){xt!==je&&tt.push({source:xt.parent,target:xt})}),tt}function x(je,tt){var xt=new T(je),Ie=+je.value&&(xt.value=je.value),xe,ke=[xt],vt,ir,ar,vr;for(tt==null&&(tt=M);xe=ke.pop();)if(Ie&&(xe.value=+xe.data.value),(ir=tt(xe.data))&&(vr=ir.length))for(xe.children=new Array(vr),ar=vr-1;ar>=0;--ar)ke.push(vt=xe.children[ar]=new T(ir[ar])),vt.parent=xe,vt.depth=xe.depth+1;return xt.eachBefore(P)}function C(){return x(this).eachBefore(g)}function M(je){return je.children}function g(je){je.data=je.data.data}function P(je){var tt=0;do je.height=tt;while((je=je.parent)&&je.height<++tt)}function T(je){this.data=je,this.depth=this.height=0,this.parent=null}T.prototype=x.prototype={constructor:T,count:c,each:f,eachAfter:d,eachBefore:h,sum:v,sort:_,path:b,ancestors:k,descendants:E,leaves:S,links:L,copy:C};var z=Array.prototype.slice;function O(je){for(var tt=je.length,xt,Ie;tt;)Ie=Math.random()*tt--|0,xt=je[tt],je[tt]=je[Ie],je[Ie]=xt;return je}function V(je){for(var tt=0,xt=(je=O(z.call(je))).length,Ie=[],xe,ke;tt0&&xt*xt>Ie*Ie+xe*xe}function N(je,tt){for(var xt=0;xtar?(xe=(vr+ar-ke)/(2*vr),ir=Math.sqrt(Math.max(0,ar/vr-xe*xe)),xt.x=je.x-xe*Ie-ir*vt,xt.y=je.y-xe*vt+ir*Ie):(xe=(vr+ke-ar)/(2*vr),ir=Math.sqrt(Math.max(0,ke/vr-xe*xe)),xt.x=tt.x+xe*Ie-ir*vt,xt.y=tt.y+xe*vt+ir*Ie)):(xt.x=tt.x+xt.r,xt.y=tt.y)}function Ce(je,tt){var xt=je.r+tt.r-1e-6,Ie=tt.x-je.x,xe=tt.y-je.y;return xt>0&&xt*xt>Ie*Ie+xe*xe}function me(je){var tt=je._,xt=je.next._,Ie=tt.r+xt.r,xe=(tt.x*xt.r+xt.x*tt.r)/Ie,ke=(tt.y*xt.r+xt.y*tt.r)/Ie;return xe*xe+ke*ke}function ie(je){this._=je,this.next=null,this.previous=null}function Se(je){if(!(xe=je.length))return 0;var tt,xt,Ie,xe,ke,vt,ir,ar,vr,ii,pi;if(tt=je[0],tt.x=0,tt.y=0,!(xe>1))return tt.r;if(xt=je[1],tt.x=-xt.r,xt.x=tt.r,xt.y=0,!(xe>2))return tt.r+xt.r;Ee(xt,tt,Ie=je[2]),tt=new ie(tt),xt=new ie(xt),Ie=new ie(Ie),tt.next=Ie.previous=xt,xt.next=tt.previous=Ie,Ie.next=xt.previous=tt;e:for(ir=3;ir0)throw new Error("cycle");return ir}return xt.id=function(Ie){return arguments.length?(je=Fe(Ie),xt):je},xt.parentId=function(Ie){return arguments.length?(tt=Fe(Ie),xt):tt},xt}function $e(je,tt){return je.parent===tt.parent?1:2}function St(je){var tt=je.children;return tt?tt[0]:je.t}function Qt(je){var tt=je.children;return tt?tt[tt.length-1]:je.t}function Vt(je,tt,xt){var Ie=xt/(tt.i-je.i);tt.c-=Ie,tt.s+=xt,je.c+=Ie,tt.z+=xt,tt.m+=xt}function _t(je){for(var tt=0,xt=0,Ie=je.children,xe=Ie.length,ke;--xe>=0;)ke=Ie[xe],ke.z+=tt,ke.m+=tt,tt+=ke.s+(xt+=ke.c)}function It(je,tt,xt){return je.a.parent===tt.parent?je.a:xt}function mt(je,tt){this._=je,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=tt}mt.prototype=Object.create(T.prototype);function er(je){for(var tt=new mt(je,0),xt,Ie=[tt],xe,ke,vt,ir;xt=Ie.pop();)if(ke=xt._.children)for(xt.children=new Array(ir=ke.length),vt=ir-1;vt>=0;--vt)Ie.push(xe=xt.children[vt]=new mt(ke[vt],vt)),xe.parent=xt;return(tt.parent=new mt(null,0)).children=[tt],tt}function lr(){var je=$e,tt=1,xt=1,Ie=null;function xe(vr){var ii=er(vr);if(ii.eachAfter(ke),ii.parent.m=-ii.z,ii.eachBefore(vt),Ie)vr.eachBefore(ar);else{var pi=vr,$r=vr,di=vr;vr.eachBefore(function(qn){qn.x$r.x&&($r=qn),qn.depth>di.depth&&(di=qn)});var ji=pi===$r?1:je(pi,$r)/2,In=ji-pi.x,wi=tt/($r.x+ji+In),On=xt/(di.depth||1);vr.eachBefore(function(qn){qn.x=(qn.x+In)*wi,qn.y=qn.depth*On})}return vr}function ke(vr){var ii=vr.children,pi=vr.parent.children,$r=vr.i?pi[vr.i-1]:null;if(ii){_t(vr);var di=(ii[0].z+ii[ii.length-1].z)/2;$r?(vr.z=$r.z+je(vr._,$r._),vr.m=vr.z-di):vr.z=di}else $r&&(vr.z=$r.z+je(vr._,$r._));vr.parent.A=ir(vr,$r,vr.parent.A||pi[0])}function vt(vr){vr._.x=vr.z+vr.parent.m,vr.m+=vr.parent.m}function ir(vr,ii,pi){if(ii){for(var $r=vr,di=vr,ji=ii,In=$r.parent.children[0],wi=$r.m,On=di.m,qn=ji.m,Fn=In.m,ra;ji=Qt(ji),$r=St($r),ji&&$r;)In=St(In),di=Qt(di),di.a=vr,ra=ji.z+qn-$r.z-wi+je(ji._,$r._),ra>0&&(Vt(It(ji,vr,pi),vr,ra),wi+=ra,On+=ra),qn+=ji.m,wi+=$r.m,Fn+=In.m,On+=di.m;ji&&!Qt(di)&&(di.t=ji,di.m+=qn-On),$r&&!St(In)&&(In.t=$r,In.m+=wi-Fn,pi=vr)}return pi}function ar(vr){vr.x*=tt,vr.y=vr.depth*xt}return xe.separation=function(vr){return arguments.length?(je=vr,xe):je},xe.size=function(vr){return arguments.length?(Ie=!1,tt=+vr[0],xt=+vr[1],xe):Ie?null:[tt,xt]},xe.nodeSize=function(vr){return arguments.length?(Ie=!0,tt=+vr[0],xt=+vr[1],xe):Ie?[tt,xt]:null},xe}function Tr(je,tt,xt,Ie,xe){for(var ke=je.children,vt,ir=-1,ar=ke.length,vr=je.value&&(xe-xt)/je.value;++irqn&&(qn=vr),Ut=wi*wi*la,Fn=Math.max(qn/Ut,Ut/On),Fn>ra){wi-=vr;break}ra=Fn}vt.push(ar={value:wi,dice:di1?Ie:1)},xt}(Lr);function Vr(){var je=Br,tt=!1,xt=1,Ie=1,xe=[0],ke=Pe,vt=Pe,ir=Pe,ar=Pe,vr=Pe;function ii($r){return $r.x0=$r.y0=0,$r.x1=xt,$r.y1=Ie,$r.eachBefore(pi),xe=[0],tt&&$r.eachBefore(Zt),$r}function pi($r){var di=xe[$r.depth],ji=$r.x0+di,In=$r.y0+di,wi=$r.x1-di,On=$r.y1-di;wi=$r-1){var qn=ke[pi];qn.x0=ji,qn.y0=In,qn.x1=wi,qn.y1=On;return}for(var Fn=vr[pi],ra=di/2+Fn,la=pi+1,Ut=$r-1;la>>1;vr[wt]On-In){var Er=(ji*nr+wi*rr)/di;ii(pi,la,rr,ji,In,Er,On),ii(la,$r,nr,Er,In,wi,On)}else{var Xr=(In*nr+On*rr)/di;ii(pi,la,rr,ji,In,wi,Xr),ii(la,$r,nr,ji,Xr,wi,On)}}}function Ge(je,tt,xt,Ie,xe){(je.depth&1?Tr:st)(je,tt,xt,Ie,xe)}var Je=function je(tt){function xt(Ie,xe,ke,vt,ir){if((ar=Ie._squarify)&&ar.ratio===tt)for(var ar,vr,ii,pi,$r=-1,di,ji=ar.length,In=Ie.value;++$r1?Ie:1)},xt}(Lr);e.cluster=l,e.hierarchy=x,e.pack=ce,e.packEnclose=V,e.packSiblings=Le,e.partition=lt,e.stratify=cr,e.tree=lr,e.treemap=Vr,e.treemapBinary=dt,e.treemapDice=st,e.treemapResquarify=Je,e.treemapSlice=Tr,e.treemapSliceDice=Ge,e.treemapSquarify=Br,Object.defineProperty(e,"__esModule",{value:!0})})});var RE=ye(IE=>{"use strict";var Jke=PE(),h6t=Eo(),SA=Dr(),d6t=tc().makeColorScaleFuncFromTrace,v6t=wA().makePullColorFn,p6t=wA().generateExtendedColors,g6t=tc().calc,m6t=fs().ALMOST_EQUAL,y6t={},_6t={},x6t={};IE.calc=function(e,t){var r=e._fullLayout,n=t.ids,i=SA.isArrayOrTypedArray(n),a=t.labels,o=t.parents,s=t.values,l=SA.isArrayOrTypedArray(s),u=[],c={},f={},h=function(H,N){c[H]?c[H].push(N):c[H]=[N],f[N]=1},d=function(H){return H||typeof H=="number"},v=function(H){return!l||h6t(s[H])&&s[H]>=0},_,b,p;i?(_=Math.min(n.length,o.length),b=function(H){return d(n[H])&&v(H)},p=function(H){return String(n[H])}):(_=Math.min(a.length,o.length),b=function(H){return d(a[H])&&v(H)},p=function(H){return String(a[H])}),l&&(_=Math.min(_,s.length));for(var k=0;k<_;k++)if(b(k)){var E=p(k),S=d(o[k])?String(o[k]):"",L={i:k,id:E,pid:S,label:d(a[k])?String(a[k]):""};l&&(L.v=+s[k]),u.push(L),h(S,E)}if(c[""]){if(c[""].length>1){for(var M=SA.randstr(),g=0;g{});function Gm(){}function eCe(){return this.rgb().formatHex()}function k6t(){return this.rgb().formatHex8()}function C6t(){return sCe(this).formatHsl()}function tCe(){return this.rgb().formatRgb()}function j_(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=b6t.exec(e))?(r=t[1].length,t=parseInt(t[1],16),r===6?rCe(t):r===3?new _d(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):r===8?bD(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?bD(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=w6t.exec(e))?new _d(t[1],t[2],t[3],1):(t=T6t.exec(e))?new _d(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=A6t.exec(e))?bD(t[1],t[2],t[3],t[4]):(t=S6t.exec(e))?bD(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=M6t.exec(e))?aCe(t[1],t[2]/100,t[3]/100,1):(t=E6t.exec(e))?aCe(t[1],t[2]/100,t[3]/100,t[4]):Qke.hasOwnProperty(e)?rCe(Qke[e]):e==="transparent"?new _d(NaN,NaN,NaN,0):null}function rCe(e){return new _d(e>>16&255,e>>8&255,e&255,1)}function bD(e,t,r,n){return n<=0&&(e=t=r=NaN),new _d(e,t,r,n)}function FE(e){return e instanceof Gm||(e=j_(e)),e?(e=e.rgb(),new _d(e.r,e.g,e.b,e.opacity)):new _d}function EA(e,t,r,n){return arguments.length===1?FE(e):new _d(e,t,r,n==null?1:n)}function _d(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}function iCe(){return`#${E2(this.r)}${E2(this.g)}${E2(this.b)}`}function L6t(){return`#${E2(this.r)}${E2(this.g)}${E2(this.b)}${E2((isNaN(this.opacity)?1:this.opacity)*255)}`}function nCe(){let e=TD(this.opacity);return`${e===1?"rgb(":"rgba("}${k2(this.r)}, ${k2(this.g)}, ${k2(this.b)}${e===1?")":`, ${e})`}`}function TD(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function k2(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function E2(e){return e=k2(e),(e<16?"0":"")+e.toString(16)}function aCe(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Xg(e,t,r,n)}function sCe(e){if(e instanceof Xg)return new Xg(e.h,e.s,e.l,e.opacity);if(e instanceof Gm||(e=j_(e)),!e)return new Xg;if(e instanceof Xg)return e;e=e.rgb();var t=e.r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=NaN,s=a-i,l=(a+i)/2;return s?(t===a?o=(r-n)/s+(r0&&l<1?0:o,new Xg(o,s,l,e.opacity)}function zE(e,t,r,n){return arguments.length===1?sCe(e):new Xg(e,t,r,n==null?1:n)}function Xg(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}function oCe(e){return e=(e||0)%360,e<0?e+360:e}function wD(e){return Math.max(0,Math.min(1,e||0))}function _W(e,t,r){return(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)*255}var H_,C2,MA,DE,Vm,b6t,w6t,T6t,A6t,S6t,M6t,E6t,Qke,AD=gu(()=>{xD();H_=.7,C2=1/H_,MA="\\s*([+-]?\\d+)\\s*",DE="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Vm="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",b6t=/^#([0-9a-f]{3,8})$/,w6t=new RegExp(`^rgb\\(${MA},${MA},${MA}\\)$`),T6t=new RegExp(`^rgb\\(${Vm},${Vm},${Vm}\\)$`),A6t=new RegExp(`^rgba\\(${MA},${MA},${MA},${DE}\\)$`),S6t=new RegExp(`^rgba\\(${Vm},${Vm},${Vm},${DE}\\)$`),M6t=new RegExp(`^hsl\\(${DE},${Vm},${Vm}\\)$`),E6t=new RegExp(`^hsla\\(${DE},${Vm},${Vm},${DE}\\)$`),Qke={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};Zy(Gm,j_,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:eCe,formatHex:eCe,formatHex8:k6t,formatHsl:C6t,formatRgb:tCe,toString:tCe});Zy(_d,EA,G_(Gm,{brighter(e){return e=e==null?C2:Math.pow(C2,e),new _d(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new _d(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new _d(k2(this.r),k2(this.g),k2(this.b),TD(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:iCe,formatHex:iCe,formatHex8:L6t,formatRgb:nCe,toString:nCe}));Zy(Xg,zE,G_(Gm,{brighter(e){return e=e==null?C2:Math.pow(C2,e),new Xg(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new Xg(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new _d(_W(e>=240?e-240:e+120,i,n),_W(e,i,n),_W(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new Xg(oCe(this.h),wD(this.s),wD(this.l),TD(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=TD(this.opacity);return`${e===1?"hsl(":"hsla("}${oCe(this.h)}, ${wD(this.s)*100}%, ${wD(this.l)*100}%${e===1?")":`, ${e})`}`}}))});var SD,MD,xW=gu(()=>{SD=Math.PI/180,MD=180/Math.PI});function dCe(e){if(e instanceof Hm)return new Hm(e.l,e.a,e.b,e.opacity);if(e instanceof Yy)return vCe(e);e instanceof _d||(e=FE(e));var t=AW(e.r),r=AW(e.g),n=AW(e.b),i=bW((.2225045*t+.7168786*r+.0606169*n)/uCe),a,o;return t===r&&r===n?a=o=i:(a=bW((.4360747*t+.3850649*r+.1430804*n)/lCe),o=bW((.0139322*t+.0971045*r+.7141733*n)/cCe)),new Hm(116*i-16,500*(a-i),200*(i-o),e.opacity)}function CA(e,t,r,n){return arguments.length===1?dCe(e):new Hm(e,t,r,n==null?1:n)}function Hm(e,t,r,n){this.l=+e,this.a=+t,this.b=+r,this.opacity=+n}function bW(e){return e>P6t?Math.pow(e,1/3):e/hCe+fCe}function wW(e){return e>kA?e*e*e:hCe*(e-fCe)}function TW(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function AW(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function I6t(e){if(e instanceof Yy)return new Yy(e.h,e.c,e.l,e.opacity);if(e instanceof Hm||(e=dCe(e)),e.a===0&&e.b===0)return new Yy(NaN,0{xD();AD();xW();ED=18,lCe=.96422,uCe=1,cCe=.82521,fCe=4/29,kA=6/29,hCe=3*kA*kA,P6t=kA*kA*kA;Zy(Hm,CA,G_(Gm,{brighter(e){return new Hm(this.l+ED*(e==null?1:e),this.a,this.b,this.opacity)},darker(e){return new Hm(this.l-ED*(e==null?1:e),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,r=isNaN(this.b)?e:e-this.b/200;return t=lCe*wW(t),e=uCe*wW(e),r=cCe*wW(r),new _d(TW(3.1338561*t-1.6168667*e-.4906146*r),TW(-.9787684*t+1.9161415*e+.033454*r),TW(.0719453*t-.2289914*e+1.4052427*r),this.opacity)}}));Zy(Yy,OE,G_(Gm,{brighter(e){return new Yy(this.h,this.c,this.l+ED*(e==null?1:e),this.opacity)},darker(e){return new Yy(this.h,this.c,this.l-ED*(e==null?1:e),this.opacity)},rgb(){return vCe(this).rgb()}}))});function R6t(e){if(e instanceof L2)return new L2(e.h,e.s,e.l,e.opacity);e instanceof _d||(e=FE(e));var t=e.r/255,r=e.g/255,n=e.b/255,i=(yCe*n+gCe*t-mCe*r)/(yCe+gCe-mCe),a=n-i,o=(qE*(r-i)-MW*a)/kD,s=Math.sqrt(o*o+a*a)/(qE*i*(1-i)),l=s?Math.atan2(o,a)*MD-120:NaN;return new L2(l<0?l+360:l,s,i,e.opacity)}function LA(e,t,r,n){return arguments.length===1?R6t(e):new L2(e,t,r,n==null?1:n)}function L2(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}var _Ce,SW,MW,kD,qE,gCe,mCe,yCe,xCe=gu(()=>{xD();AD();xW();_Ce=-.14861,SW=1.78277,MW=-.29227,kD=-.90649,qE=1.97294,gCe=qE*kD,mCe=qE*SW,yCe=SW*MW-kD*_Ce;Zy(L2,LA,G_(Gm,{brighter(e){return e=e==null?C2:Math.pow(C2,e),new L2(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new L2(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=isNaN(this.h)?0:(this.h+120)*SD,t=+this.l,r=isNaN(this.s)?0:this.s*t*(1-t),n=Math.cos(e),i=Math.sin(e);return new _d(255*(t+r*(_Ce*n+SW*i)),255*(t+r*(MW*n+kD*i)),255*(t+r*(qE*n)),this.opacity)}}))});var P2=gu(()=>{AD();pCe();xCe()});function EW(e,t,r,n,i){var a=e*e,o=a*e;return((1-3*e+3*a-o)*t+(4-6*a+3*o)*r+(1+3*e+3*a-3*o)*n+o*i)/6}function CD(e){var t=e.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,t-1):Math.floor(r*t),i=e[n],a=e[n+1],o=n>0?e[n-1]:2*i-a,s=n{});function PD(e){var t=e.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*t),i=e[(n+t-1)%t],a=e[n%t],o=e[(n+1)%t],s=e[(n+2)%t];return EW((r-n/t)*t,i,a,o,s)}}var kW=gu(()=>{LD()});var PA,CW=gu(()=>{PA=e=>()=>e});function bCe(e,t){return function(r){return e+r*t}}function D6t(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}function W_(e,t){var r=t-e;return r?bCe(e,r>180||r<-180?r-360*Math.round(r/360):r):PA(isNaN(e)?t:e)}function wCe(e){return(e=+e)==1?$f:function(t,r){return r-t?D6t(t,r,e):PA(isNaN(t)?r:t)}}function $f(e,t){var r=t-e;return r?bCe(e,r):PA(isNaN(e)?t:e)}var I2=gu(()=>{CW()});function TCe(e){return function(t){var r=t.length,n=new Array(r),i=new Array(r),a=new Array(r),o,s;for(o=0;o{P2();LD();kW();I2();BE=function e(t){var r=wCe(t);function n(i,a){var o=r((i=EA(i)).r,(a=EA(a)).r),s=r(i.g,a.g),l=r(i.b,a.b),u=$f(i.opacity,a.opacity);return function(c){return i.r=o(c),i.g=s(c),i.b=l(c),i.opacity=u(c),i+""}}return n.gamma=e,n}(1);ACe=TCe(CD),SCe=TCe(PD)});function IA(e,t){t||(t=[]);var r=e?Math.min(t.length,e.length):0,n=t.slice(),i;return function(a){for(i=0;i{});function MCe(e,t){return(ID(t)?IA:PW)(e,t)}function PW(e,t){var r=t?t.length:0,n=e?Math.min(r,e.length):0,i=new Array(n),a=new Array(r),o;for(o=0;o{NE();RD()});function DD(e,t){var r=new Date;return e=+e,t=+t,function(n){return r.setTime(e*(1-n)+t*n),r}}var RW=gu(()=>{});function zp(e,t){return e=+e,t=+t,function(r){return e*(1-r)+t*r}}var UE=gu(()=>{});function FD(e,t){var r={},n={},i;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(i in t)i in e?r[i]=X_(e[i],t[i]):n[i]=t[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var DW=gu(()=>{NE()});function F6t(e){return function(){return e}}function z6t(e){return function(t){return e(t)+""}}function zD(e,t){var r=zW.lastIndex=FW.lastIndex=0,n,i,a,o=-1,s=[],l=[];for(e=e+"",t=t+"";(n=zW.exec(e))&&(i=FW.exec(t));)(a=i.index)>r&&(a=t.slice(r,a),s[o]?s[o]+=a:s[++o]=a),(n=n[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,l.push({i:o,x:zp(n,i)})),r=FW.lastIndex;return r{UE();zW=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,FW=new RegExp(zW.source,"g")});function X_(e,t){var r=typeof t,n;return t==null||r==="boolean"?PA(t):(r==="number"?zp:r==="string"?(n=j_(t))?(t=n,BE):zD:t instanceof j_?BE:t instanceof Date?DD:ID(t)?IA:Array.isArray(t)?PW:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?FD:zp)(e,t)}var NE=gu(()=>{P2();LW();IW();RW();UE();DW();OW();CW();RD()});function ECe(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}}var kCe=gu(()=>{});function CCe(e,t){var r=W_(+e,+t);return function(n){var i=r(n);return i-360*Math.floor(i/360)}}var LCe=gu(()=>{I2()});function PCe(e,t){return e=+e,t=+t,function(r){return Math.round(e*(1-r)+t*r)}}var ICe=gu(()=>{});function qW(e,t,r,n,i,a){var o,s,l;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(l=e*r+t*n)&&(r-=e*l,n-=t*l),(s=Math.sqrt(r*r+n*n))&&(r/=s,n/=s,l/=s),e*n{RCe=180/Math.PI,OD={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}});function FCe(e){let t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?OD:qW(t.a,t.b,t.c,t.d,t.e,t.f)}function zCe(e){return e==null?OD:(qD||(qD=document.createElementNS("http://www.w3.org/2000/svg","g")),qD.setAttribute("transform",e),(e=qD.transform.baseVal.consolidate())?(e=e.matrix,qW(e.a,e.b,e.c,e.d,e.e,e.f)):OD)}var qD,OCe=gu(()=>{DCe()});function qCe(e,t,r,n){function i(u){return u.length?u.pop()+" ":""}function a(u,c,f,h,d,v){if(u!==f||c!==h){var _=d.push("translate(",null,t,null,r);v.push({i:_-4,x:zp(u,f)},{i:_-2,x:zp(c,h)})}else(f||h)&&d.push("translate("+f+t+h+r)}function o(u,c,f,h){u!==c?(u-c>180?c+=360:c-u>180&&(u+=360),h.push({i:f.push(i(f)+"rotate(",null,n)-2,x:zp(u,c)})):c&&f.push(i(f)+"rotate("+c+n)}function s(u,c,f,h){u!==c?h.push({i:f.push(i(f)+"skewX(",null,n)-2,x:zp(u,c)}):c&&f.push(i(f)+"skewX("+c+n)}function l(u,c,f,h,d,v){if(u!==f||c!==h){var _=d.push(i(d)+"scale(",null,",",null,")");v.push({i:_-4,x:zp(u,f)},{i:_-2,x:zp(c,h)})}else(f!==1||h!==1)&&d.push(i(d)+"scale("+f+","+h+")")}return function(u,c){var f=[],h=[];return u=e(u),c=e(c),a(u.translateX,u.translateY,c.translateX,c.translateY,f,h),o(u.rotate,c.rotate,f,h),s(u.skewX,c.skewX,f,h),l(u.scaleX,u.scaleY,c.scaleX,c.scaleY,f,h),u=c=null,function(d){for(var v=-1,_=h.length,b;++v<_;)f[(b=h[v]).i]=b.x(d);return f.join("")}}}var BCe,NCe,UCe=gu(()=>{UE();OCe();BCe=qCe(FCe,"px, ","px)","deg)"),NCe=qCe(zCe,", ",")",")")});function VCe(e){return((e=Math.exp(e))+1/e)/2}function q6t(e){return((e=Math.exp(e))-1/e)/2}function B6t(e){return((e=Math.exp(2*e))-1)/(e+1)}var O6t,GCe,HCe=gu(()=>{O6t=1e-12;GCe=function e(t,r,n){function i(a,o){var s=a[0],l=a[1],u=a[2],c=o[0],f=o[1],h=o[2],d=c-s,v=f-l,_=d*d+v*v,b,p;if(_{P2();I2();WCe=jCe(W_),XCe=jCe($f)});function BW(e,t){var r=$f((e=CA(e)).l,(t=CA(t)).l),n=$f(e.a,t.a),i=$f(e.b,t.b),a=$f(e.opacity,t.opacity);return function(o){return e.l=r(o),e.a=n(o),e.b=i(o),e.opacity=a(o),e+""}}var YCe=gu(()=>{P2();I2()});function KCe(e){return function(t,r){var n=e((t=OE(t)).h,(r=OE(r)).h),i=$f(t.c,r.c),a=$f(t.l,r.l),o=$f(t.opacity,r.opacity);return function(s){return t.h=n(s),t.c=i(s),t.l=a(s),t.opacity=o(s),t+""}}}var JCe,$Ce,QCe=gu(()=>{P2();I2();JCe=KCe(W_),$Ce=KCe($f)});function e6e(e){return function t(r){r=+r;function n(i,a){var o=e((i=LA(i)).h,(a=LA(a)).h),s=$f(i.s,a.s),l=$f(i.l,a.l),u=$f(i.opacity,a.opacity);return function(c){return i.h=o(c),i.s=s(c),i.l=l(Math.pow(c,r)),i.opacity=u(c),i+""}}return n.gamma=t,n}(1)}var t6e,r6e,i6e=gu(()=>{P2();I2();t6e=e6e(W_),r6e=e6e($f)});function NW(e,t){t===void 0&&(t=e,e=X_);for(var r=0,n=t.length-1,i=t[0],a=new Array(n<0?0:n);r{NE()});function a6e(e,t){for(var r=new Array(t),n=0;n{});var R2={};uee(R2,{interpolate:()=>X_,interpolateArray:()=>MCe,interpolateBasis:()=>CD,interpolateBasisClosed:()=>PD,interpolateCubehelix:()=>t6e,interpolateCubehelixLong:()=>r6e,interpolateDate:()=>DD,interpolateDiscrete:()=>ECe,interpolateHcl:()=>JCe,interpolateHclLong:()=>$Ce,interpolateHsl:()=>WCe,interpolateHslLong:()=>XCe,interpolateHue:()=>CCe,interpolateLab:()=>BW,interpolateNumber:()=>zp,interpolateNumberArray:()=>IA,interpolateObject:()=>FD,interpolateRgb:()=>BE,interpolateRgbBasis:()=>ACe,interpolateRgbBasisClosed:()=>SCe,interpolateRound:()=>PCe,interpolateString:()=>zD,interpolateTransformCss:()=>BCe,interpolateTransformSvg:()=>NCe,interpolateZoom:()=>GCe,piecewise:()=>NW,quantize:()=>a6e});var D2=gu(()=>{NE();IW();LD();kW();RW();kCe();LCe();UE();RD();DW();ICe();OW();UCe();HCe();LW();ZCe();YCe();QCe();i6e();n6e();o6e()});var BD=ye((Ypr,s6e)=>{"use strict";var N6t=So(),U6t=ka();s6e.exports=function(t,r,n,i,a){var o=r.data.data,s=o.i,l=a||o.color;if(s>=0){r.i=o.i;var u=n.marker;u.pattern?(!u.colors||!u.pattern.shape)&&(u.color=l,r.color=l):(u.color=l,r.color=l),N6t.pointStyle(t,n,i,r)}else U6t.fill(t,l)}});var UW=ye((Kpr,h6e)=>{"use strict";var l6e=Oa(),u6e=ka(),c6e=Dr(),V6t=bv().resizeText,G6t=BD();function H6t(e){var t=e._fullLayout._sunburstlayer.selectAll(".trace");V6t(e,t,"sunburst"),t.each(function(r){var n=l6e.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){l6e.select(this).call(f6e,o,a,e)})})}function f6e(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=c6e.castOption(r,o,"marker.line.color")||u6e.defaultLine,l=c6e.castOption(r,o,"marker.line.width")||0;e.call(G6t,t,r,n).style("stroke-width",l).call(u6e.stroke,s).style("opacity",a?r.leaf.opacity:null)}h6e.exports={style:H6t,styleOne:f6e}});var Ky=ye(Bs=>{"use strict";var F2=Dr(),j6t=ka(),W6t=Ag(),d6e=l_();Bs.findEntryWithLevel=function(e,t){var r;return t&&e.eachAfter(function(n){if(Bs.getPtId(n)===t)return r=n.copy()}),r||e};Bs.findEntryWithChild=function(e,t){var r;return e.eachAfter(function(n){for(var i=n.children||[],a=0;a0)};Bs.getMaxDepth=function(e){return e.maxdepth>=0?e.maxdepth:1/0};Bs.isHeader=function(e,t){return!(Bs.isLeaf(e)||e.depth===t._maxDepth-1)};function v6e(e){return e.data.data.pid}Bs.getParent=function(e,t){return Bs.findEntryWithLevel(e,v6e(t))};Bs.listPath=function(e,t){var r=e.parent;if(!r)return[];var n=t?[r.data[t]]:[r];return Bs.listPath(r,t).concat(n)};Bs.getPath=function(e){return Bs.listPath(e,"label").join("/")+"/"};Bs.formatValue=d6e.formatPieValue;Bs.formatPercent=function(e,t){var r=F2.formatPercent(e,0);return r==="0%"&&(r=d6e.formatPiePercent(e,t)),r}});var HE=ye(($pr,m6e)=>{"use strict";var RA=Oa(),p6e=qa(),Y6t=ip().appendArrayPointValue,VE=vf(),g6e=Dr(),K6t=y3(),rd=Ky(),J6t=l_(),$6t=J6t.formatPieValue;m6e.exports=function(t,r,n,i,a){var o=i[0],s=o.trace,l=o.hierarchy,u=s.type==="sunburst",c=s.type==="treemap"||s.type==="icicle";"_hasHoverLabel"in s||(s._hasHoverLabel=!1),"_hasHoverEvent"in s||(s._hasHoverEvent=!1);var f=function(v){var _=n._fullLayout;if(!(n._dragging||_.hovermode===!1)){var b=n._fullData[s.index],p=v.data.data,k=p.i,E=rd.isHierarchyRoot(v),S=rd.getParent(l,v),L=rd.getValue(v),x=function(Ee){return g6e.castOption(b,k,Ee)},C=x("hovertemplate"),M=VE.castHoverinfo(b,_,k),g=_.separators,P;if(C||M&&M!=="none"&&M!=="skip"){var T,z;u&&(T=o.cx+v.pxmid[0]*(1-v.rInscribed),z=o.cy+v.pxmid[1]*(1-v.rInscribed)),c&&(T=v._hoverX,z=v._hoverY);var O={},V=[],G=[],Z=function(Ee){return V.indexOf(Ee)!==-1};M&&(V=M==="all"?b._module.attributes.hoverinfo.flags:M.split("+")),O.label=p.label,Z("label")&&O.label&&G.push(O.label),p.hasOwnProperty("v")&&(O.value=p.v,O.valueLabel=$6t(O.value,g),Z("value")&&G.push(O.valueLabel)),O.currentPath=v.currentPath=rd.getPath(v.data),Z("current path")&&!E&&G.push(O.currentPath);var H,N=[],j=function(){N.indexOf(H)===-1&&(G.push(H),N.push(H))};O.percentParent=v.percentParent=L/rd.getValue(S),O.parent=v.parentString=rd.getPtLabel(S),Z("percent parent")&&(H=rd.formatPercent(O.percentParent,g)+" of "+O.parent,j()),O.percentEntry=v.percentEntry=L/rd.getValue(r),O.entry=v.entry=rd.getPtLabel(r),Z("percent entry")&&!E&&!v.onPathbar&&(H=rd.formatPercent(O.percentEntry,g)+" of "+O.entry,j()),O.percentRoot=v.percentRoot=L/rd.getValue(l),O.root=v.root=rd.getPtLabel(l),Z("percent root")&&!E&&(H=rd.formatPercent(O.percentRoot,g)+" of "+O.root,j()),O.text=x("hovertext")||x("text"),Z("text")&&(H=O.text,g6e.isValidTextValue(H)&&G.push(H)),P=[GE(v,b,a.eventDataKeys)];var re={trace:b,y:z,_x0:v._x0,_x1:v._x1,_y0:v._y0,_y1:v._y1,text:G.join("
"),name:C||Z("name")?b.name:void 0,color:x("hoverlabel.bgcolor")||p.color,borderColor:x("hoverlabel.bordercolor"),fontFamily:x("hoverlabel.font.family"),fontSize:x("hoverlabel.font.size"),fontColor:x("hoverlabel.font.color"),fontWeight:x("hoverlabel.font.weight"),fontStyle:x("hoverlabel.font.style"),fontVariant:x("hoverlabel.font.variant"),nameLength:x("hoverlabel.namelength"),textAlign:x("hoverlabel.align"),hovertemplate:C,hovertemplateLabels:O,eventData:P};u&&(re.x0=T-v.rInscribed*v.rpx1,re.x1=T+v.rInscribed*v.rpx1,re.idealAlign=v.pxmid[0]<0?"left":"right"),c&&(re.x=T,re.idealAlign=T<0?"left":"right");var oe=[];VE.loneHover(re,{container:_._hoverlayer.node(),outerContainer:_._paper.node(),gd:n,inOut_bbox:oe}),P[0].bbox=oe[0],s._hasHoverLabel=!0}if(c){var _e=t.select("path.surface");a.styleOne(_e,v,b,n,{hovered:!0})}s._hasHoverEvent=!0,n.emit("plotly_hover",{points:P||[GE(v,b,a.eventDataKeys)],event:RA.event})}},h=function(v){var _=n._fullLayout,b=n._fullData[s.index],p=RA.select(this).datum();if(s._hasHoverEvent&&(v.originalEvent=RA.event,n.emit("plotly_unhover",{points:[GE(p,b,a.eventDataKeys)],event:RA.event}),s._hasHoverEvent=!1),s._hasHoverLabel&&(VE.loneUnhover(_._hoverlayer.node()),s._hasHoverLabel=!1),c){var k=t.select("path.surface");a.styleOne(k,p,b,n,{hovered:!1})}},d=function(v){var _=n._fullLayout,b=n._fullData[s.index],p=u&&(rd.isHierarchyRoot(v)||rd.isLeaf(v)),k=rd.getPtId(v),E=rd.isEntry(v)?rd.findEntryWithChild(l,k):rd.findEntryWithLevel(l,k),S=rd.getPtId(E),L={points:[GE(v,b,a.eventDataKeys)],event:RA.event};p||(L.nextLevel=S);var x=K6t.triggerHandler(n,"plotly_"+s.type+"click",L);if(x!==!1&&_.hovermode&&(n._hoverdata=[GE(v,b,a.eventDataKeys)],VE.click(n,RA.event)),!p&&x!==!1&&!n._dragging&&!n._transitioning){p6e.call("_storeDirectGUIEdit",b,_._tracePreGUI[b.uid],{level:b.level});var C={data:[{level:S}],traces:[s.index]},M={frame:{redraw:!1,duration:a.transitionTime},transition:{duration:a.transitionTime,easing:a.transitionEasing},mode:"immediate",fromcurrent:!0};VE.loneUnhover(_._hoverlayer.node()),p6e.call("animate",n,C,M)}};t.on("mouseover",f),t.on("mouseout",h),t.on("click",d)};function GE(e,t,r){for(var n=e.data.data,i={curveNumber:t.index,pointNumber:n.i,data:t._input,fullData:t},a=0;a{"use strict";var jE=Oa(),Q6t=PE(),Zg=(D2(),ob(R2)).interpolate,y6e=So(),Av=Dr(),eLt=ru(),w6e=bv(),_6e=w6e.recordMinTextSize,tLt=w6e.clearMinTextSize,T6e=yD(),rLt=l_().getRotationAngle,iLt=T6e.computeTransform,nLt=T6e.transformInsideText,aLt=UW().styleOne,oLt=N0().resizeText,sLt=HE(),VW=mW(),Rl=Ky();ND.plot=function(e,t,r,n){var i=e._fullLayout,a=i._sunburstlayer,o,s,l=!r,u=!i.uniformtext.mode&&Rl.hasTransition(r);if(tLt("sunburst",i),o=a.selectAll("g.trace.sunburst").data(t,function(f){return f[0].trace.uid}),o.enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),o.order(),u){n&&(s=n());var c=jE.transition().duration(r.duration).ease(r.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});c.each(function(){a.selectAll("g.trace").each(function(f){x6e(e,f,this,r)})})}else o.each(function(f){x6e(e,f,this,r)}),i.uniformtext.mode&&oLt(e,i._sunburstlayer.selectAll(".trace"),"sunburst");l&&o.exit().remove()};function x6e(e,t,r,n){var i=e._context.staticPlot,a=e._fullLayout,o=!a.uniformtext.mode&&Rl.hasTransition(n),s=jE.select(r),l=s.selectAll("g.slice"),u=t[0],c=u.trace,f=u.hierarchy,h=Rl.findEntryWithLevel(f,c.level),d=Rl.getMaxDepth(c),v=a._size,_=c.domain,b=v.w*(_.x[1]-_.x[0]),p=v.h*(_.y[1]-_.y[0]),k=.5*Math.min(b,p),E=u.cx=v.l+v.w*(_.x[1]+_.x[0])/2,S=u.cy=v.t+v.h*(1-_.y[0])-p/2;if(!h)return l.remove();var L=null,x={};o&&l.each(function(me){x[Rl.getPtId(me)]={rpx0:me.rpx0,rpx1:me.rpx1,x0:me.x0,x1:me.x1,transform:me.transform},!L&&Rl.isEntry(me)&&(L=me)});var C=lLt(h).descendants(),M=h.height+1,g=0,P=d;u.hasMultipleRoots&&Rl.isHierarchyRoot(h)&&(C=C.slice(1),M-=1,g=1,P+=1),C=C.filter(function(me){return me.y1<=P});var T=rLt(c.rotation);T&&C.forEach(function(me){me.x0+=T,me.x1+=T});var z=Math.min(M,d),O=function(me){return(me-g)/z*k},V=function(me,ie){return[me*Math.cos(ie),-me*Math.sin(ie)]},G=function(me){return Av.pathAnnulus(me.rpx0,me.rpx1,me.x0,me.x1,E,S)},Z=function(me){return E+b6e(me)[0]*(me.transform.rCenter||0)+(me.transform.x||0)},H=function(me){return S+b6e(me)[1]*(me.transform.rCenter||0)+(me.transform.y||0)};l=l.data(C,Rl.getPtId),l.enter().append("g").classed("slice",!0),o?l.exit().transition().each(function(){var me=jE.select(this),ie=me.select("path.surface");ie.transition().attrTween("d",function(Le){var Ae=oe(Le);return function(Fe){return G(Ae(Fe))}});var Se=me.select("g.slicetext");Se.attr("opacity",0)}).remove():l.exit().remove(),l.order();var N=null;if(o&&L){var j=Rl.getPtId(L);l.each(function(me){N===null&&Rl.getPtId(me)===j&&(N=me.x1)})}var re=l;o&&(re=re.transition().each("end",function(){var me=jE.select(this);Rl.setSliceCursor(me,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})})),re.each(function(me){var ie=jE.select(this),Se=Av.ensureSingle(ie,"path","surface",function(Re){Re.style("pointer-events",i?"none":"all")});me.rpx0=O(me.y0),me.rpx1=O(me.y1),me.xmid=(me.x0+me.x1)/2,me.pxmid=V(me.rpx1,me.xmid),me.midangle=-(me.xmid-Math.PI/2),me.startangle=-(me.x0-Math.PI/2),me.stopangle=-(me.x1-Math.PI/2),me.halfangle=.5*Math.min(Av.angleDelta(me.x0,me.x1)||Math.PI,Math.PI),me.ring=1-me.rpx0/me.rpx1,me.rInscribed=uLt(me,c),o?Se.transition().attrTween("d",function(Re){var ce=_e(Re);return function(Ze){return G(ce(Ze))}}):Se.attr("d",G),ie.call(sLt,h,e,t,{eventDataKeys:VW.eventDataKeys,transitionTime:VW.CLICK_TRANSITION_TIME,transitionEasing:VW.CLICK_TRANSITION_EASING}).call(Rl.setSliceCursor,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:e._transitioning}),Se.call(aLt,me,c,e);var Le=Av.ensureSingle(ie,"g","slicetext"),Ae=Av.ensureSingle(Le,"text","",function(Re){Re.attr("data-notex",1)}),Fe=Av.ensureUniformFontSize(e,Rl.determineTextFont(c,me,a.font));Ae.text(ND.formatSliceLabel(me,h,c,t,a)).classed("slicetext",!0).attr("text-anchor","middle").call(y6e.font,Fe).call(eLt.convertToTspans,e);var Pe=y6e.bBox(Ae.node());me.transform=nLt(Pe,me,u),me.transform.targetX=Z(me),me.transform.targetY=H(me);var ge=function(Re,ce){var Ze=Re.transform;return iLt(Ze,ce),Ze.fontSize=Fe.size,_6e(c.type,Ze,a),Av.getTextTransform(Ze)};o?Ae.transition().attrTween("transform",function(Re){var ce=Ee(Re);return function(Ze){return ge(ce(Ze),Pe)}}):Ae.attr("transform",ge(me,Pe))});function oe(me){var ie=Rl.getPtId(me),Se=x[ie],Le=x[Rl.getPtId(h)],Ae;if(Le){var Fe=(me.x1>Le.x1?2*Math.PI:0)+T;Ae=me.rpx1N?2*Math.PI:0)+T;Se={x0:Ae,x1:Ae}}else Se={rpx0:k,rpx1:k},Av.extendFlat(Se,Ce(me));else Se={rpx0:0,rpx1:0};else Se={x0:T,x1:T};return Zg(Se,Le)}function Ee(me){var ie=x[Rl.getPtId(me)],Se,Le=me.transform;if(ie)Se=ie;else if(Se={rpx1:me.rpx1,transform:{textPosAngle:Le.textPosAngle,scale:0,rotate:Le.rotate,rCenter:Le.rCenter,x:Le.x,y:Le.y}},L)if(me.parent)if(N){var Ae=me.x1>N?2*Math.PI:0;Se.x0=Se.x1=Ae}else Av.extendFlat(Se,Ce(me));else Se.x0=Se.x1=T;else Se.x0=Se.x1=T;var Fe=Zg(Se.transform.textPosAngle,me.transform.textPosAngle),Pe=Zg(Se.rpx1,me.rpx1),ge=Zg(Se.x0,me.x0),Re=Zg(Se.x1,me.x1),ce=Zg(Se.transform.scale,Le.scale),Ze=Zg(Se.transform.rotate,Le.rotate),ut=Le.rCenter===0?3:Se.transform.rCenter===0?1/3:1,pt=Zg(Se.transform.rCenter,Le.rCenter),Zt=function(st){return pt(Math.pow(st,ut))};return function(st){var lt=Pe(st),Gt=ge(st),Nt=Re(st),Jt=Zt(st),sr=V(lt,(Gt+Nt)/2),wr=Fe(st),cr={pxmid:sr,rpx1:lt,transform:{textPosAngle:wr,rCenter:Jt,x:Le.x,y:Le.y}};return _6e(c.type,Le,a),{transform:{targetX:Z(cr),targetY:H(cr),scale:ce(st),rotate:Ze(st),rCenter:Jt}}}}function Ce(me){var ie=me.parent,Se=x[Rl.getPtId(ie)],Le={};if(Se){var Ae=ie.children,Fe=Ae.indexOf(me),Pe=Ae.length,ge=Zg(Se.x0,Se.x1);Le.x0=ge(Fe/Pe),Le.x1=ge(Fe/Pe)}else Le.x0=Le.x1=0;return Le}}function lLt(e){return Q6t.partition().size([2*Math.PI,e.height+1])(e)}ND.formatSliceLabel=function(e,t,r,n,i){var a=r.texttemplate,o=r.textinfo;if(!a&&(!o||o==="none"))return"";var s=i.separators,l=n[0],u=e.data.data,c=l.hierarchy,f=Rl.isHierarchyRoot(e),h=Rl.getParent(c,e),d=Rl.getValue(e);if(!a){var v=o.split("+"),_=function(g){return v.indexOf(g)!==-1},b=[],p;if(_("label")&&u.label&&b.push(u.label),u.hasOwnProperty("v")&&_("value")&&b.push(Rl.formatValue(u.v,s)),!f){_("current path")&&b.push(Rl.getPath(e.data));var k=0;_("percent parent")&&k++,_("percent entry")&&k++,_("percent root")&&k++;var E=k>1;if(k){var S,L=function(g){p=Rl.formatPercent(S,s),E&&(p+=" of "+g),b.push(p)};_("percent parent")&&!f&&(S=d/Rl.getValue(h),L("parent")),_("percent entry")&&(S=d/Rl.getValue(t),L("entry")),_("percent root")&&(S=d/Rl.getValue(c),L("root"))}}return _("text")&&(p=Av.castOption(r,u.i,"text"),Av.isValidTextValue(p)&&b.push(p)),b.join("
")}var x=Av.castOption(r,u.i,"texttemplate");if(!x)return"";var C={};u.label&&(C.label=u.label),u.hasOwnProperty("v")&&(C.value=u.v,C.valueLabel=Rl.formatValue(u.v,s)),C.currentPath=Rl.getPath(e.data),f||(C.percentParent=d/Rl.getValue(h),C.percentParentLabel=Rl.formatPercent(C.percentParent,s),C.parent=Rl.getPtLabel(h)),C.percentEntry=d/Rl.getValue(t),C.percentEntryLabel=Rl.formatPercent(C.percentEntry,s),C.entry=Rl.getPtLabel(t),C.percentRoot=d/Rl.getValue(c),C.percentRootLabel=Rl.formatPercent(C.percentRoot,s),C.root=Rl.getPtLabel(c),u.hasOwnProperty("color")&&(C.color=u.color);var M=Av.castOption(r,u.i,"text");return(Av.isValidTextValue(M)||M==="")&&(C.text=M),C.customdata=Av.castOption(r,u.i,"customdata"),Av.texttemplateString({data:[C,r._meta],fallback:r.texttemplatefallback,labels:C,locale:i._d3locale,template:x})};function uLt(e){return e.rpx0===0&&Av.isFullCircle([e.x0,e.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(e.halfangle)),e.ring/2))}function b6e(e){return cLt(e.rpx1,e.transform.textPosAngle)}function cLt(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}});var S6e=ye((e0r,A6e)=>{"use strict";A6e.exports={moduleType:"trace",name:"sunburst",basePlotModule:qke(),categories:[],animatable:!0,attributes:LE(),layoutAttributes:yW(),supplyDefaults:Xke(),supplyLayoutDefaults:Yke(),calc:RE().calc,crossTraceCalc:RE().crossTraceCalc,plot:UD().plot,style:UW().style,colorbar:$d(),meta:{}}});var E6e=ye((t0r,M6e)=>{"use strict";M6e.exports=S6e()});var C6e=ye(DA=>{"use strict";var k6e=Mc();DA.name="treemap";DA.plot=function(e,t,r,n){k6e.plotBasePlot(DA.name,e,t,r,n)};DA.clean=function(e,t,r,n){k6e.cleanBasePlot(DA.name,e,t,r,n)}});var z2=ye((i0r,L6e)=>{"use strict";L6e.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}});var VD=ye((n0r,R6e)=>{"use strict";var{hovertemplateAttrs:fLt,texttemplateAttrs:hLt,templatefallbackAttrs:P6e}=Ll(),dLt=Tu(),vLt=Cc().attributes,O2=S2(),Q0=LE(),I6e=z2(),GW=Ao().extendFlat,pLt=Pd().pattern;R6e.exports={labels:Q0.labels,parents:Q0.parents,values:Q0.values,branchvalues:Q0.branchvalues,count:Q0.count,level:Q0.level,maxdepth:Q0.maxdepth,tiling:{packing:{valType:"enumerated",values:["squarify","binary","dice","slice","slice-dice","dice-slice"],dflt:"squarify",editType:"plot"},squarifyratio:{valType:"number",min:1,dflt:1,editType:"plot"},flip:{valType:"flaglist",flags:["x","y"],dflt:"",editType:"plot"},pad:{valType:"number",min:0,dflt:3,editType:"plot"},editType:"calc"},marker:GW({pad:{t:{valType:"number",min:0,editType:"plot"},l:{valType:"number",min:0,editType:"plot"},r:{valType:"number",min:0,editType:"plot"},b:{valType:"number",min:0,editType:"plot"},editType:"calc"},colors:Q0.marker.colors,pattern:pLt,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:Q0.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},dLt("marker",{colorAttr:"colors",anim:!1})),pathbar:{visible:{valType:"boolean",dflt:!0,editType:"plot"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},edgeshape:{valType:"enumerated",values:[">","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:GW({},O2.textfont,{}),editType:"calc"},text:O2.text,textinfo:Q0.textinfo,texttemplate:hLt({editType:"plot"},{keys:I6e.eventDataKeys.concat(["label","value"])}),texttemplatefallback:P6e({editType:"plot"}),hovertext:O2.hovertext,hoverinfo:Q0.hoverinfo,hovertemplate:fLt({},{keys:I6e.eventDataKeys}),hovertemplatefallback:P6e(),textfont:O2.textfont,insidetextfont:O2.insidetextfont,outsidetextfont:GW({},O2.outsidetextfont,{}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"top left",editType:"plot"},sort:O2.sort,root:Q0.root,domain:vLt({name:"treemap",trace:!0,editType:"calc"})}});var HW=ye((a0r,D6e)=>{"use strict";D6e.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var q6e=ye((o0r,O6e)=>{"use strict";var F6e=Dr(),gLt=VD(),mLt=ka(),yLt=Cc().defaults,_Lt=r0().handleText,xLt=e2().TEXTPAD,bLt=M2().handleMarkerDefaults,z6e=tc(),wLt=z6e.hasColorscale,TLt=z6e.handleDefaults;O6e.exports=function(t,r,n,i){function a(b,p){return F6e.coerce(t,r,gLt,b,p)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth");var u=a("tiling.packing");u==="squarify"&&a("tiling.squarifyratio"),a("tiling.flip"),a("tiling.pad");var c=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",F6e.isArrayOrTypedArray(c)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var f=a("pathbar.visible"),h="auto";_Lt(t,r,i,a,h,{hasPathbar:f,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition");var d=r.textposition.indexOf("bottom")!==-1;bLt(t,r,i,a);var v=r._hasColorscale=wLt(t,"marker","colors")||(t.marker||{}).coloraxis;v?TLt(t,r,i,a,{prefix:"marker.",cLetter:"c"}):a("marker.depthfade",!(r.marker.colors||[]).length);var _=r.textfont.size*2;a("marker.pad.t",d?_/4:_),a("marker.pad.l",_/4),a("marker.pad.r",_/4),a("marker.pad.b",d?_:_/4),a("marker.cornerradius"),r._hovered={marker:{line:{width:2,color:mLt.contrast(i.paper_bgcolor)}}},f&&(a("pathbar.thickness",r.pathbar.textfont.size+2*xLt),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),yLt(r,i,a),r._length=null}});var N6e=ye((s0r,B6e)=>{"use strict";var ALt=Dr(),SLt=HW();B6e.exports=function(t,r){function n(i,a){return ALt.coerce(t,r,SLt,i,a)}n("treemapcolorway",r.colorway),n("extendtreemapcolors")}});var WW=ye(jW=>{"use strict";var U6e=RE();jW.calc=function(e,t){return U6e.calc(e,t)};jW.crossTraceCalc=function(e){return U6e._runCrossTraceCalc("treemap",e)}});var XW=ye((u0r,V6e)=>{"use strict";V6e.exports=function e(t,r,n){var i;n.swapXY&&(i=t.x0,t.x0=t.y0,t.y0=i,i=t.x1,t.x1=t.y1,t.y1=i),n.flipX&&(i=t.x0,t.x0=r[0]-t.x1,t.x1=r[0]-i),n.flipY&&(i=t.y0,t.y0=r[1]-t.y1,t.y1=r[1]-i);var a=t.children;if(a)for(var o=0;o{"use strict";var FA=PE(),MLt=XW();G6e.exports=function(t,r,n){var i=n.flipX,a=n.flipY,o=n.packing==="dice-slice",s=n.pad[a?"bottom":"top"],l=n.pad[i?"right":"left"],u=n.pad[i?"left":"right"],c=n.pad[a?"top":"bottom"],f;o&&(f=l,l=s,s=f,f=u,u=c,c=f);var h=FA.treemap().tile(ELt(n.packing,n.squarifyratio)).paddingInner(n.pad.inner).paddingLeft(l).paddingRight(u).paddingTop(s).paddingBottom(c).size(o?[r[1],r[0]]:r)(t);return(o||i||a)&&MLt(h,r,{swapXY:o,flipX:i,flipY:a}),h};function ELt(e,t){switch(e){case"squarify":return FA.treemapSquarify.ratio(t);case"binary":return FA.treemapBinary;case"dice":return FA.treemapDice;case"slice":return FA.treemapSlice;default:return FA.treemapSliceDice}}});var GD=ye((f0r,X6e)=>{"use strict";var H6e=Oa(),zA=ka(),j6e=Dr(),YW=Ky(),kLt=bv().resizeText,CLt=BD();function LLt(e){var t=e._fullLayout._treemaplayer.selectAll(".trace");kLt(e,t,"treemap"),t.each(function(r){var n=H6e.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){H6e.select(this).call(W6e,o,a,e,{hovered:!1})})})}function W6e(e,t,r,n,i){var a=(i||{}).hovered,o=t.data.data,s=o.i,l,u,c=o.color,f=YW.isHierarchyRoot(t),h=1;if(a)l=r._hovered.marker.line.color,u=r._hovered.marker.line.width;else if(f&&c===r.root.color)h=100,l="rgba(0,0,0,0)",u=0;else if(l=j6e.castOption(r,s,"marker.line.color")||zA.defaultLine,u=j6e.castOption(r,s,"marker.line.width")||0,!r._hasColorscale&&!t.onPathbar){var d=r.marker.depthfade;if(d){var v=zA.combine(zA.addOpacity(r._backgroundColor,.75),c),_;if(d===!0){var b=YW.getMaxDepth(r);isFinite(b)?YW.isLeaf(t)?_=0:_=r._maxVisibleLayers-(t.data.depth-r._entryDepth):_=t.data.height+1}else _=t.data.depth-r._entryDepth,r._atRootLevel||_++;if(_>0)for(var p=0;p<_;p++){var k=.5*p/_;c=zA.combine(zA.addOpacity(v,k),c)}}}e.call(CLt,t,r,n,c).style("stroke-width",u).call(zA.stroke,l).style("opacity",h)}X6e.exports={style:LLt,styleOne:W6e}});var $6e=ye((h0r,J6e)=>{"use strict";var Z6e=Oa(),HD=Dr(),Y6e=So(),PLt=ru(),ILt=ZW(),K6e=GD().styleOne,KW=z2(),OA=Ky(),RLt=HE(),JW=!0;J6e.exports=function(t,r,n,i,a){var o=a.barDifY,s=a.width,l=a.height,u=a.viewX,c=a.viewY,f=a.pathSlice,h=a.toMoveInsideSlice,d=a.strTransform,v=a.hasTransition,_=a.handleSlicesExit,b=a.makeUpdateSliceInterpolator,p=a.makeUpdateTextInterpolator,k={},E=t._context.staticPlot,S=t._fullLayout,L=r[0],x=L.trace,C=L.hierarchy,M=s/x._entryDepth,g=OA.listPath(n.data,"id"),P=ILt(C.copy(),[s,l],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();P=P.filter(function(z){var O=g.indexOf(z.data.id);return O===-1?!1:(z.x0=M*O,z.x1=M*(O+1),z.y0=o,z.y1=o+l,z.onPathbar=!0,!0)}),P.reverse(),i=i.data(P,OA.getPtId),i.enter().append("g").classed("pathbar",!0),_(i,JW,k,[s,l],f),i.order();var T=i;v&&(T=T.transition().each("end",function(){var z=Z6e.select(this);OA.setSliceCursor(z,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})})),T.each(function(z){z._x0=u(z.x0),z._x1=u(z.x1),z._y0=c(z.y0),z._y1=c(z.y1),z._hoverX=u(z.x1-Math.min(s,l)/2),z._hoverY=c(z.y1-l/2);var O=Z6e.select(this),V=HD.ensureSingle(O,"path","surface",function(N){N.style("pointer-events",E?"none":"all")});v?V.transition().attrTween("d",function(N){var j=b(N,JW,k,[s,l]);return function(re){return f(j(re))}}):V.attr("d",f),O.call(RLt,n,t,r,{styleOne:K6e,eventDataKeys:KW.eventDataKeys,transitionTime:KW.CLICK_TRANSITION_TIME,transitionEasing:KW.CLICK_TRANSITION_EASING}).call(OA.setSliceCursor,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:t._transitioning}),V.call(K6e,z,x,t,{hovered:!1}),z._text=(OA.getPtLabel(z)||"").split("
").join(" ")||"";var G=HD.ensureSingle(O,"g","slicetext"),Z=HD.ensureSingle(G,"text","",function(N){N.attr("data-notex",1)}),H=HD.ensureUniformFontSize(t,OA.determineTextFont(x,z,S.font,{onPathbar:!0}));Z.text(z._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(Y6e.font,H).call(PLt.convertToTspans,t),z.textBB=Y6e.bBox(Z.node()),z.transform=h(z,{fontSize:H.size,onPathbar:!0}),z.transform.fontSize=H.size,v?Z.transition().attrTween("transform",function(N){var j=p(N,JW,k,[s,l]);return function(re){return d(j(re))}}):Z.attr("transform",d(z))})}});var rLe=ye((d0r,tLe)=>{"use strict";var Q6e=Oa(),$W=(D2(),ob(R2)).interpolate,Z_=Ky(),WE=Dr(),eLe=e2().TEXTPAD,DLt=n2(),FLt=DLt.toMoveInsideBar,zLt=bv(),QW=zLt.recordMinTextSize,OLt=z2(),qLt=$6e();function q2(e){return Z_.isHierarchyRoot(e)?"":Z_.getPtId(e)}tLe.exports=function(t,r,n,i,a){var o=t._fullLayout,s=r[0],l=s.trace,u=l.type,c=u==="icicle",f=s.hierarchy,h=Z_.findEntryWithLevel(f,l.level),d=Q6e.select(n),v=d.selectAll("g.pathbar"),_=d.selectAll("g.slice");if(!h){v.remove(),_.remove();return}var b=Z_.isHierarchyRoot(h),p=!o.uniformtext.mode&&Z_.hasTransition(i),k=Z_.getMaxDepth(l),E=function($e){return $e.data.depth-h.data.depth-1?C+P:-(g+P):0,z={x0:M,x1:M,y0:T,y1:T+g},O=function($e,St,Qt){var Vt=l.tiling.pad,_t=function(lr){return lr-Vt<=St.x0},It=function(lr){return lr+Vt>=St.x1},mt=function(lr){return lr-Vt<=St.y0},er=function(lr){return lr+Vt>=St.y1};return $e.x0===St.x0&&$e.x1===St.x1&&$e.y0===St.y0&&$e.y1===St.y1?{x0:$e.x0,x1:$e.x1,y0:$e.y0,y1:$e.y1}:{x0:_t($e.x0-Vt)?0:It($e.x0-Vt)?Qt[0]:$e.x0,x1:_t($e.x1+Vt)?0:It($e.x1+Vt)?Qt[0]:$e.x1,y0:mt($e.y0-Vt)?0:er($e.y0-Vt)?Qt[1]:$e.y0,y1:mt($e.y1+Vt)?0:er($e.y1+Vt)?Qt[1]:$e.y1}},V=null,G={},Z={},H=null,N=function($e,St){return St?G[q2($e)]:Z[q2($e)]},j=function($e,St,Qt,Vt){if(St)return G[q2(f)]||z;var _t=Z[l.level]||Qt;return E($e)?O($e,_t,Vt):{}};s.hasMultipleRoots&&b&&k++,l._maxDepth=k,l._backgroundColor=o.paper_bgcolor,l._entryDepth=h.data.depth,l._atRootLevel=b;var re=-x/2+S.l+S.w*(L.x[1]+L.x[0])/2,oe=-C/2+S.t+S.h*(1-(L.y[1]+L.y[0])/2),_e=function($e){return re+$e},Ee=function($e){return oe+$e},Ce=Ee(0),me=_e(0),ie=function($e){return me+$e},Se=function($e){return Ce+$e};function Le($e,St){return $e+","+St}var Ae=ie(0),Fe=function($e){$e.x=Math.max(Ae,$e.x)},Pe=l.pathbar.edgeshape,ge=function($e){var St=ie(Math.max(Math.min($e.x0,$e.x0),0)),Qt=ie(Math.min(Math.max($e.x1,$e.x1),M)),Vt=Se($e.y0),_t=Se($e.y1),It=g/2,mt={},er={};mt.x=St,er.x=Qt,mt.y=er.y=(Vt+_t)/2;var lr={x:St,y:Vt},Tr={x:Qt,y:Vt},Lr={x:Qt,y:_t},ti={x:St,y:_t};return Pe===">"?(lr.x-=It,Tr.x-=It,Lr.x-=It,ti.x-=It):Pe==="/"?(Lr.x-=It,ti.x-=It,mt.x-=It/2,er.x-=It/2):Pe==="\\"?(lr.x-=It,Tr.x-=It,mt.x-=It/2,er.x-=It/2):Pe==="<"&&(mt.x-=It,er.x-=It),Fe(lr),Fe(ti),Fe(mt),Fe(Tr),Fe(Lr),Fe(er),"M"+Le(lr.x,lr.y)+"L"+Le(Tr.x,Tr.y)+"L"+Le(er.x,er.y)+"L"+Le(Lr.x,Lr.y)+"L"+Le(ti.x,ti.y)+"L"+Le(mt.x,mt.y)+"Z"},Re=l[c?"tiling":"marker"].pad,ce=function($e){return l.textposition.indexOf($e)!==-1},Ze=ce("top"),ut=ce("left"),pt=ce("right"),Zt=ce("bottom"),st=function($e){var St=_e($e.x0),Qt=_e($e.x1),Vt=Ee($e.y0),_t=Ee($e.y1),It=Qt-St,mt=_t-Vt;if(!It||!mt)return"";var er=l.marker.cornerradius||0,lr=Math.min(er,It/2,mt/2);lr&&$e.data&&$e.data.data&&$e.data.data.label&&(Ze&&(lr=Math.min(lr,Re.t)),ut&&(lr=Math.min(lr,Re.l)),pt&&(lr=Math.min(lr,Re.r)),Zt&&(lr=Math.min(lr,Re.b)));var Tr=function(Lr,ti){return lr?"a"+Le(lr,lr)+" 0 0 1 "+Le(Lr,ti):""};return"M"+Le(St,Vt+lr)+Tr(lr,-lr)+"L"+Le(Qt-lr,Vt)+Tr(lr,lr)+"L"+Le(Qt,_t-lr)+Tr(-lr,lr)+"L"+Le(St+lr,_t)+Tr(-lr,-lr)+"Z"},lt=function($e,St){var Qt=$e.x0,Vt=$e.x1,_t=$e.y0,It=$e.y1,mt=$e.textBB,er=Ze||St.isHeader&&!Zt,lr=er?"start":Zt?"end":"middle",Tr=ce("right"),Lr=ce("left")||St.onPathbar,ti=Lr?-1:Tr?1:0;if(St.isHeader){if(Qt+=(c?Re:Re.l)-eLe,Vt-=(c?Re:Re.r)-eLe,Qt>=Vt){var Br=(Qt+Vt)/2;Qt=Br,Vt=Br}var Vr;Zt?(Vr=It-(c?Re:Re.b),_t{"use strict";var BLt=Oa(),NLt=Ky(),ULt=bv(),VLt=ULt.clearMinTextSize,GLt=N0().resizeText,iLe=rLe();nLe.exports=function(t,r,n,i,a){var o=a.type,s=a.drawDescendants,l=t._fullLayout,u=l["_"+o+"layer"],c,f,h=!n;if(VLt(o,l),c=u.selectAll("g.trace."+o).data(r,function(v){return v[0].trace.uid}),c.enter().append("g").classed("trace",!0).classed(o,!0),c.order(),!l.uniformtext.mode&&NLt.hasTransition(n)){i&&(f=i());var d=BLt.transition().duration(n.duration).ease(n.easing).each("end",function(){f&&f()}).each("interrupt",function(){f&&f()});d.each(function(){u.selectAll("g.trace").each(function(v){iLe(t,v,this,n,s)})})}else c.each(function(v){iLe(t,v,this,n,s)}),l.uniformtext.mode&&GLt(t,u.selectAll(".trace"),o);h&&c.exit().remove()}});var uLe=ye((p0r,lLe)=>{"use strict";var aLe=Oa(),jD=Dr(),oLe=So(),HLt=ru(),jLt=ZW(),sLe=GD().styleOne,tX=z2(),Y_=Ky(),WLt=HE(),XLt=UD().formatSliceLabel,rX=!1;lLe.exports=function(t,r,n,i,a){var o=a.width,s=a.height,l=a.viewX,u=a.viewY,c=a.pathSlice,f=a.toMoveInsideSlice,h=a.strTransform,d=a.hasTransition,v=a.handleSlicesExit,_=a.makeUpdateSliceInterpolator,b=a.makeUpdateTextInterpolator,p=a.prevEntry,k={},E=t._context.staticPlot,S=t._fullLayout,L=r[0],x=L.trace,C=x.textposition.indexOf("left")!==-1,M=x.textposition.indexOf("right")!==-1,g=x.textposition.indexOf("bottom")!==-1,P=!g&&!x.marker.pad.t||g&&!x.marker.pad.b,T=jLt(n,[o,s],{packing:x.tiling.packing,squarifyratio:x.tiling.squarifyratio,flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1,pad:{inner:x.tiling.pad,top:x.marker.pad.t,left:x.marker.pad.l,right:x.marker.pad.r,bottom:x.marker.pad.b}}),z=T.descendants(),O=1/0,V=-1/0;z.forEach(function(j){var re=j.depth;re>=x._maxDepth?(j.x0=j.x1=(j.x0+j.x1)/2,j.y0=j.y1=(j.y0+j.y1)/2):(O=Math.min(O,re),V=Math.max(V,re))}),i=i.data(z,Y_.getPtId),x._maxVisibleLayers=isFinite(V)?V-O+1:0,i.enter().append("g").classed("slice",!0),v(i,rX,k,[o,s],c),i.order();var G=null;if(d&&p){var Z=Y_.getPtId(p);i.each(function(j){G===null&&Y_.getPtId(j)===Z&&(G={x0:j.x0,x1:j.x1,y0:j.y0,y1:j.y1})})}var H=function(){return G||{x0:0,x1:o,y0:0,y1:s}},N=i;return d&&(N=N.transition().each("end",function(){var j=aLe.select(this);Y_.setSliceCursor(j,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),N.each(function(j){var re=Y_.isHeader(j,x);j._x0=l(j.x0),j._x1=l(j.x1),j._y0=u(j.y0),j._y1=u(j.y1),j._hoverX=l(j.x1-x.marker.pad.r),j._hoverY=u(g?j.y1-x.marker.pad.b/2:j.y0+x.marker.pad.t/2);var oe=aLe.select(this),_e=jD.ensureSingle(oe,"path","surface",function(Le){Le.style("pointer-events",E?"none":"all")});d?_e.transition().attrTween("d",function(Le){var Ae=_(Le,rX,H(),[o,s]);return function(Fe){return c(Ae(Fe))}}):_e.attr("d",c),oe.call(WLt,n,t,r,{styleOne:sLe,eventDataKeys:tX.eventDataKeys,transitionTime:tX.CLICK_TRANSITION_TIME,transitionEasing:tX.CLICK_TRANSITION_EASING}).call(Y_.setSliceCursor,t,{isTransitioning:t._transitioning}),_e.call(sLe,j,x,t,{hovered:!1}),j.x0===j.x1||j.y0===j.y1?j._text="":re?j._text=P?"":Y_.getPtLabel(j)||"":j._text=XLt(j,n,x,r,S)||"";var Ee=jD.ensureSingle(oe,"g","slicetext"),Ce=jD.ensureSingle(Ee,"text","",function(Le){Le.attr("data-notex",1)}),me=jD.ensureUniformFontSize(t,Y_.determineTextFont(x,j,S.font)),ie=j._text||" ",Se=re&&ie.indexOf("
")===-1;Ce.text(ie).classed("slicetext",!0).attr("text-anchor",M?"end":C||Se?"start":"middle").call(oLe.font,me).call(HLt.convertToTspans,t),j.textBB=oLe.bBox(Ce.node()),j.transform=f(j,{fontSize:me.size,isHeader:re}),j.transform.fontSize=me.size,d?Ce.transition().attrTween("transform",function(Le){var Ae=b(Le,rX,H(),[o,s]);return function(Fe){return h(Ae(Fe))}}):Ce.attr("transform",h(j))}),G}});var fLe=ye((g0r,cLe)=>{"use strict";var ZLt=eX(),YLt=uLe();cLe.exports=function(t,r,n,i){return ZLt(t,r,n,i,{type:"treemap",drawDescendants:YLt})}});var dLe=ye((m0r,hLe)=>{"use strict";hLe.exports={moduleType:"trace",name:"treemap",basePlotModule:C6e(),categories:[],animatable:!0,attributes:VD(),layoutAttributes:HW(),supplyDefaults:q6e(),supplyLayoutDefaults:N6e(),calc:WW().calc,crossTraceCalc:WW().crossTraceCalc,plot:fLe(),style:GD().style,colorbar:$d(),meta:{}}});var pLe=ye((y0r,vLe)=>{"use strict";vLe.exports=dLe()});var mLe=ye(qA=>{"use strict";var gLe=Mc();qA.name="icicle";qA.plot=function(e,t,r,n){gLe.plotBasePlot(qA.name,e,t,r,n)};qA.clean=function(e,t,r,n){gLe.cleanBasePlot(qA.name,e,t,r,n)}});var iX=ye((x0r,xLe)=>{"use strict";var{hovertemplateAttrs:KLt,texttemplateAttrs:JLt,templatefallbackAttrs:yLe}=Ll(),$Lt=Tu(),QLt=Cc().attributes,XE=S2(),o0=LE(),WD=VD(),_Le=z2(),ePt=Ao().extendFlat,tPt=Pd().pattern;xLe.exports={labels:o0.labels,parents:o0.parents,values:o0.values,branchvalues:o0.branchvalues,count:o0.count,level:o0.level,maxdepth:o0.maxdepth,tiling:{orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"plot"},flip:WD.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},marker:ePt({colors:o0.marker.colors,line:o0.marker.line,pattern:tPt,editType:"calc"},$Lt("marker",{colorAttr:"colors",anim:!1})),leaf:o0.leaf,pathbar:WD.pathbar,text:XE.text,textinfo:o0.textinfo,texttemplate:JLt({editType:"plot"},{keys:_Le.eventDataKeys.concat(["label","value"])}),texttemplatefallback:yLe({editType:"plot"}),hovertext:XE.hovertext,hoverinfo:o0.hoverinfo,hovertemplate:KLt({},{keys:_Le.eventDataKeys}),hovertemplatefallback:yLe(),textfont:XE.textfont,insidetextfont:XE.insidetextfont,outsidetextfont:WD.outsidetextfont,textposition:WD.textposition,sort:XE.sort,root:o0.root,domain:QLt({name:"icicle",trace:!0,editType:"calc"})}});var nX=ye((b0r,bLe)=>{"use strict";bLe.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var SLe=ye((w0r,ALe)=>{"use strict";var wLe=Dr(),rPt=iX(),iPt=ka(),nPt=Cc().defaults,aPt=r0().handleText,oPt=e2().TEXTPAD,sPt=M2().handleMarkerDefaults,TLe=tc(),lPt=TLe.hasColorscale,uPt=TLe.handleDefaults;ALe.exports=function(t,r,n,i){function a(d,v){return wLe.coerce(t,r,rPt,d,v)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth"),a("tiling.orientation"),a("tiling.flip"),a("tiling.pad");var u=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",wLe.isArrayOrTypedArray(u)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var c=a("pathbar.visible"),f="auto";aPt(t,r,i,a,f,{hasPathbar:c,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition"),sPt(t,r,i,a);var h=r._hasColorscale=lPt(t,"marker","colors")||(t.marker||{}).coloraxis;h&&uPt(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",h?1:.7),r._hovered={marker:{line:{width:2,color:iPt.contrast(i.paper_bgcolor)}}},c&&(a("pathbar.thickness",r.pathbar.textfont.size+2*oPt),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),nPt(r,i,a),r._length=null}});var ELe=ye((T0r,MLe)=>{"use strict";var cPt=Dr(),fPt=nX();MLe.exports=function(t,r){function n(i,a){return cPt.coerce(t,r,fPt,i,a)}n("iciclecolorway",r.colorway),n("extendiciclecolors")}});var oX=ye(aX=>{"use strict";var kLe=RE();aX.calc=function(e,t){return kLe.calc(e,t)};aX.crossTraceCalc=function(e){return kLe._runCrossTraceCalc("icicle",e)}});var LLe=ye((S0r,CLe)=>{"use strict";var hPt=PE(),dPt=XW();CLe.exports=function(t,r,n){var i=n.flipX,a=n.flipY,o=n.orientation==="h",s=n.maxDepth,l=r[0],u=r[1];s&&(l=(t.height+1)*r[0]/Math.min(t.height+1,s),u=(t.height+1)*r[1]/Math.min(t.height+1,s));var c=hPt.partition().padding(n.pad.inner).size(o?[r[1],l]:[r[0],u])(t);return(o||i||a)&&dPt(c,r,{swapXY:o,flipX:i,flipY:a}),c}});var sX=ye((M0r,FLe)=>{"use strict";var PLe=Oa(),ILe=ka(),RLe=Dr(),vPt=bv().resizeText,pPt=BD();function gPt(e){var t=e._fullLayout._iciclelayer.selectAll(".trace");vPt(e,t,"icicle"),t.each(function(r){var n=PLe.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){PLe.select(this).call(DLe,o,a,e)})})}function DLe(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=RLe.castOption(r,o,"marker.line.color")||ILe.defaultLine,l=RLe.castOption(r,o,"marker.line.width")||0;e.call(pPt,t,r,n).style("stroke-width",l).call(ILe.stroke,s).style("opacity",a?r.leaf.opacity:null)}FLe.exports={style:gPt,styleOne:DLe}});var NLe=ye((E0r,BLe)=>{"use strict";var zLe=Oa(),XD=Dr(),OLe=So(),mPt=ru(),yPt=LLe(),qLe=sX().styleOne,lX=z2(),BA=Ky(),_Pt=HE(),xPt=UD().formatSliceLabel,uX=!1;BLe.exports=function(t,r,n,i,a){var o=a.width,s=a.height,l=a.viewX,u=a.viewY,c=a.pathSlice,f=a.toMoveInsideSlice,h=a.strTransform,d=a.hasTransition,v=a.handleSlicesExit,_=a.makeUpdateSliceInterpolator,b=a.makeUpdateTextInterpolator,p=a.prevEntry,k={},E=t._context.staticPlot,S=t._fullLayout,L=r[0],x=L.trace,C=x.textposition.indexOf("left")!==-1,M=x.textposition.indexOf("right")!==-1,g=x.textposition.indexOf("bottom")!==-1,P=yPt(n,[o,s],{flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1,orientation:x.tiling.orientation,pad:{inner:x.tiling.pad},maxDepth:x._maxDepth}),T=P.descendants(),z=1/0,O=-1/0;T.forEach(function(N){var j=N.depth;j>=x._maxDepth?(N.x0=N.x1=(N.x0+N.x1)/2,N.y0=N.y1=(N.y0+N.y1)/2):(z=Math.min(z,j),O=Math.max(O,j))}),i=i.data(T,BA.getPtId),x._maxVisibleLayers=isFinite(O)?O-z+1:0,i.enter().append("g").classed("slice",!0),v(i,uX,k,[o,s],c),i.order();var V=null;if(d&&p){var G=BA.getPtId(p);i.each(function(N){V===null&&BA.getPtId(N)===G&&(V={x0:N.x0,x1:N.x1,y0:N.y0,y1:N.y1})})}var Z=function(){return V||{x0:0,x1:o,y0:0,y1:s}},H=i;return d&&(H=H.transition().each("end",function(){var N=zLe.select(this);BA.setSliceCursor(N,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),H.each(function(N){N._x0=l(N.x0),N._x1=l(N.x1),N._y0=u(N.y0),N._y1=u(N.y1),N._hoverX=l(N.x1-x.tiling.pad),N._hoverY=u(g?N.y1-x.tiling.pad/2:N.y0+x.tiling.pad/2);var j=zLe.select(this),re=XD.ensureSingle(j,"path","surface",function(Ce){Ce.style("pointer-events",E?"none":"all")});d?re.transition().attrTween("d",function(Ce){var me=_(Ce,uX,Z(),[o,s],{orientation:x.tiling.orientation,flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1});return function(ie){return c(me(ie))}}):re.attr("d",c),j.call(_Pt,n,t,r,{styleOne:qLe,eventDataKeys:lX.eventDataKeys,transitionTime:lX.CLICK_TRANSITION_TIME,transitionEasing:lX.CLICK_TRANSITION_EASING}).call(BA.setSliceCursor,t,{isTransitioning:t._transitioning}),re.call(qLe,N,x,t,{hovered:!1}),N.x0===N.x1||N.y0===N.y1?N._text="":N._text=xPt(N,n,x,r,S)||"";var oe=XD.ensureSingle(j,"g","slicetext"),_e=XD.ensureSingle(oe,"text","",function(Ce){Ce.attr("data-notex",1)}),Ee=XD.ensureUniformFontSize(t,BA.determineTextFont(x,N,S.font));_e.text(N._text||" ").classed("slicetext",!0).attr("text-anchor",M?"end":C?"start":"middle").call(OLe.font,Ee).call(mPt.convertToTspans,t),N.textBB=OLe.bBox(_e.node()),N.transform=f(N,{fontSize:Ee.size}),N.transform.fontSize=Ee.size,d?_e.transition().attrTween("transform",function(Ce){var me=b(Ce,uX,Z(),[o,s]);return function(ie){return h(me(ie))}}):_e.attr("transform",h(N))}),V}});var VLe=ye((k0r,ULe)=>{"use strict";var bPt=eX(),wPt=NLe();ULe.exports=function(t,r,n,i){return bPt(t,r,n,i,{type:"icicle",drawDescendants:wPt})}});var HLe=ye((C0r,GLe)=>{"use strict";GLe.exports={moduleType:"trace",name:"icicle",basePlotModule:mLe(),categories:[],animatable:!0,attributes:iX(),layoutAttributes:nX(),supplyDefaults:SLe(),supplyLayoutDefaults:ELe(),calc:oX().calc,crossTraceCalc:oX().crossTraceCalc,plot:VLe(),style:sX().style,colorbar:$d(),meta:{}}});var WLe=ye((L0r,jLe)=>{"use strict";jLe.exports=HLe()});var ZLe=ye(NA=>{"use strict";var XLe=Mc();NA.name="funnelarea";NA.plot=function(e,t,r,n){XLe.plotBasePlot(NA.name,e,t,r,n)};NA.clean=function(e,t,r,n){XLe.cleanBasePlot(NA.name,e,t,r,n)}});var cX=ye((I0r,KLe)=>{"use strict";var iv=S2(),TPt=Gl(),APt=Cc().attributes,{hovertemplateAttrs:SPt,texttemplateAttrs:MPt,templatefallbackAttrs:YLe}=Ll(),B2=Ao().extendFlat;KLe.exports={labels:iv.labels,label0:iv.label0,dlabel:iv.dlabel,values:iv.values,marker:{colors:iv.marker.colors,line:{color:B2({},iv.marker.line.color,{dflt:null}),width:B2({},iv.marker.line.width,{dflt:1}),editType:"calc"},pattern:iv.marker.pattern,editType:"calc"},text:iv.text,hovertext:iv.hovertext,scalegroup:B2({},iv.scalegroup,{}),textinfo:B2({},iv.textinfo,{flags:["label","text","value","percent"]}),texttemplate:MPt({editType:"plot"},{keys:["label","color","value","text","percent"]}),texttemplatefallback:YLe({editType:"plot"}),hoverinfo:B2({},TPt.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:SPt({},{keys:["label","color","value","text","percent"]}),hovertemplatefallback:YLe(),textposition:B2({},iv.textposition,{values:["inside","none"],dflt:"inside"}),textfont:iv.textfont,insidetextfont:iv.insidetextfont,title:{text:iv.title.text,font:iv.title.font,position:B2({},iv.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:APt({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot"},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot"}}});var fX=ye((R0r,JLe)=>{"use strict";var EPt=vD().hiddenlabels;JLe.exports={hiddenlabels:EPt,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var ePe=ye((D0r,QLe)=>{"use strict";var $Le=Dr(),kPt=cX(),CPt=Cc().defaults,LPt=r0().handleText,PPt=M2().handleLabelsAndValues,IPt=M2().handleMarkerDefaults;QLe.exports=function(t,r,n,i){function a(_,b){return $Le.coerce(t,r,kPt,_,b)}var o=a("labels"),s=a("values"),l=PPt(o,s),u=l.len;if(r._hasLabels=l.hasLabels,r._hasValues=l.hasValues,!r._hasLabels&&r._hasValues&&(a("label0"),a("dlabel")),!u){r.visible=!1;return}r._length=u,IPt(t,r,i,a),a("scalegroup");var c=a("text"),f=a("texttemplate");a("texttemplatefallback");var h;if(f||(h=a("textinfo",Array.isArray(c)?"text+percent":"percent")),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),f||h&&h!=="none"){var d=a("textposition");LPt(t,r,i,a,d,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else h==="none"&&a("textposition","none");CPt(r,i,a);var v=a("title.text");v&&(a("title.position"),$Le.coerceFont(a,"title.font",i.font)),a("aspectratio"),a("baseratio")}});var rPe=ye((F0r,tPe)=>{"use strict";var RPt=Dr(),DPt=fX();tPe.exports=function(t,r){function n(i,a){return RPt.coerce(t,r,DPt,i,a)}n("hiddenlabels"),n("funnelareacolorway",r.colorway),n("extendfunnelareacolors")}});var hX=ye((z0r,nPe)=>{"use strict";var iPe=wA();function FPt(e,t){return iPe.calc(e,t)}function zPt(e){iPe.crossTraceCalc(e,{type:"funnelarea"})}nPe.exports={calc:FPt,crossTraceCalc:zPt}});var uPe=ye((O0r,lPe)=>{"use strict";var N2=Oa(),dX=So(),K_=Dr(),OPt=K_.strScale,aPe=K_.strTranslate,oPe=ru(),qPt=n2(),BPt=qPt.toMoveInsideBar,sPe=bv(),NPt=sPe.recordMinTextSize,UPt=sPe.clearMinTextSize,VPt=l_(),UA=yD(),GPt=UA.attachFxHandlers,HPt=UA.determineInsideTextFont,jPt=UA.layoutAreas,WPt=UA.prerenderTitles,XPt=UA.positionTitleOutside,ZPt=UA.formatSliceLabel;lPe.exports=function(t,r){var n=t._context.staticPlot,i=t._fullLayout;UPt("funnelarea",i),WPt(r,t),jPt(r,i._size),K_.makeTraceGroups(i._funnelarealayer,r,"trace").each(function(a){var o=N2.select(this),s=a[0],l=s.trace;KPt(a),o.each(function(){var u=N2.select(this).selectAll("g.slice").data(a);u.enter().append("g").classed("slice",!0),u.exit().remove(),u.each(function(f,h){if(f.hidden){N2.select(this).selectAll("path,g").remove();return}f.pointNumber=f.i,f.curveNumber=l.index;var d=s.cx,v=s.cy,_=N2.select(this),b=_.selectAll("path.surface").data([f]);b.enter().append("path").classed("surface",!0).style({"pointer-events":n?"none":"all"}),_.call(GPt,t,a);var p="M"+(d+f.TR[0])+","+(v+f.TR[1])+vX(f.TR,f.BR)+vX(f.BR,f.BL)+vX(f.BL,f.TL)+"Z";b.attr("d",p),ZPt(t,f,s);var k=VPt.castOption(l.textposition,f.pts),E=_.selectAll("g.slicetext").data(f.text&&k!=="none"?[0]:[]);E.enter().append("g").classed("slicetext",!0),E.exit().remove(),E.each(function(){var S=K_.ensureSingle(N2.select(this),"text","",function(z){z.attr("data-notex",1)}),L=K_.ensureUniformFontSize(t,HPt(l,f,i.font));S.text(f.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(dX.font,L).call(oPe.convertToTspans,t);var x=dX.bBox(S.node()),C,M,g,P=Math.min(f.BL[1],f.BR[1])+v,T=Math.max(f.TL[1],f.TR[1])+v;M=Math.max(f.TL[0],f.BL[0])+d,g=Math.min(f.TR[0],f.BR[0])+d,C=BPt(M,g,P,T,x,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),C.fontSize=L.size,NPt(l.type,C,i),a[h].transform=C,K_.setTransormAndDisplay(S,C)})});var c=N2.select(this).selectAll("g.titletext").data(l.title.text?[0]:[]);c.enter().append("g").classed("titletext",!0),c.exit().remove(),c.each(function(){var f=K_.ensureSingle(N2.select(this),"text","",function(v){v.attr("data-notex",1)}),h=l.title.text;l._meta&&(h=K_.templateString(h,l._meta)),f.text(h).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(dX.font,l.title.font).call(oPe.convertToTspans,t);var d=XPt(s,i._size);f.attr("transform",aPe(d.x,d.y)+OPt(Math.min(1,d.scale))+aPe(d.tx,d.ty))})})})};function vX(e,t){var r=t[0]-e[0],n=t[1]-e[1];return"l"+r+","+n}function YPt(e,t){return[.5*(e[0]+t[0]),.5*(e[1]+t[1])]}function KPt(e){if(!e.length)return;var t=e[0],r=t.trace,n=r.aspectratio,i=r.baseratio;i>.999&&(i=.999);var a=Math.pow(i,2),o=t.vTotal,s=o*a/(1-a),l=o,u=s/o;function c(){var O=Math.sqrt(u);return{x:O,y:-O}}function f(){var O=c();return[O.x,O.y]}var h,d=[];d.push(f());var v,_;for(v=e.length-1;v>-1;v--)if(_=e[v],!_.hidden){var b=_.v/l;u+=b,d.push(f())}var p=1/0,k=-1/0;for(v=0;v-1;v--)if(_=e[v],!_.hidden){P+=1;var T=d[P][0],z=d[P][1];_.TL=[-T,z],_.TR=[T,z],_.BL=M,_.BR=g,_.pxmid=YPt(_.TR,_.BR),M=_.TL,g=_.TR}}});var hPe=ye((q0r,fPe)=>{"use strict";var cPe=Oa(),JPt=q3(),$Pt=bv().resizeText;fPe.exports=function(t){var r=t._fullLayout._funnelarealayer.selectAll(".trace");$Pt(t,r,"funnelarea"),r.each(function(n){var i=n[0],a=i.trace,o=cPe.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){cPe.select(this).call(JPt,s,a,t)})})}});var vPe=ye((B0r,dPe)=>{"use strict";dPe.exports={moduleType:"trace",name:"funnelarea",basePlotModule:ZLe(),categories:["pie-like","funnelarea","showLegend"],attributes:cX(),layoutAttributes:fX(),supplyDefaults:ePe(),supplyLayoutDefaults:rPe(),calc:hX().calc,crossTraceCalc:hX().crossTraceCalc,plot:uPe(),style:hPe(),styleOne:q3(),meta:{}}});var gPe=ye((N0r,pPe)=>{"use strict";pPe.exports=vPe()});var Od=ye((U0r,mPe)=>{(function(){var e={24:function(i){var a={left:0,top:0};i.exports=o;function o(l,u,c){u=u||l.currentTarget||l.srcElement,Array.isArray(c)||(c=[0,0]);var f=l.clientX||0,h=l.clientY||0,d=s(u);return c[0]=f-d.left,c[1]=h-d.top,c}function s(l){return l===window||l===document||l===document.body?a:l.getBoundingClientRect()}},109:function(i){i.exports=a;function a(o,s,l,u){var c=l[0],f=l[2],h=s[0]-c,d=s[2]-f,v=Math.sin(u),_=Math.cos(u);return o[0]=c+d*v+h*_,o[1]=s[1],o[2]=f+d*_-h*v,o}},160:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.max(s[0],l[0]),o[1]=Math.max(s[1],l[1]),o[2]=Math.max(s[2],l[2]),o[3]=Math.max(s[3],l[3]),o}},216:function(i){"use strict";i.exports=a;function a(o,s){for(var l={},u=0;u1){v[0]in h||(h[v[0]]=[]),h=h[v[0]];for(var _=1;_=0;--N){var Se=Z[N];j=Se[0];var Le=V[j],Ae=Le[0],Fe=Le[1],Pe=O[Ae],ge=O[Fe];if((Pe[0]-ge[0]||Pe[1]-ge[1])<0){var Re=Ae;Ae=Fe,Fe=Re}Le[0]=Ae;var ce=Le[1]=Se[1],Ze;for(H&&(Ze=Le[2]);N>0&&Z[N-1][0]===j;){var Se=Z[--N],ut=Se[1];H?V.push([ce,ut,Ze]):V.push([ce,ut]),ce=ut}H?V.push([ce,Fe,Ze]):V.push([ce,Fe])}return re}function x(O,V,G){for(var Z=V.length,H=new s(Z),N=[],j=0;jV[2]?1:0)}function g(O,V,G){if(O.length!==0){if(V)for(var Z=0;Z0||j.length>0}function z(O,V,G){var Z;if(G){Z=V;for(var H=new Array(V.length),N=0;N{"use strict";var Ckt=rc().str2arr,Lkt=rc().sliceEq,cEe=rc().readUInt32BE,Pkt=Ckt("8BPS\0");fEe.exports=function(e){if(!(e.length<22)&&Lkt(e,0,Pkt))return{width:cEe(e,18),height:cEe(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}});var pEe=ye((Ldr,vEe)=>{"use strict";function Ikt(e){return e===32||e===9||e===13||e===10}function wA(e){return typeof e=="number"&&isFinite(e)&&e>0}function Rkt(e){var t=0,r=e.length;for(e[0]===239&&e[1]===187&&e[2]===191&&(t=3);t]*>/,Fkt=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,zkt=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,Okt=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,qkt=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,dEe=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function Bkt(e){var t=e.match(zkt),r=e.match(Okt),n=e.match(qkt);return{width:t&&(t[1]||t[2]),height:r&&(r[1]||r[2]),viewbox:n&&(n[1]||n[2])}}function Um(e){return dEe.test(e)?e.match(dEe)[0]:"px"}vEe.exports=function(e){if(Rkt(e)){for(var t="",r=0;r{"use strict";var yEe=rc().str2arr,gEe=rc().sliceEq,Nkt=rc().readUInt16LE,Ukt=rc().readUInt16BE,Vkt=rc().readUInt32LE,Gkt=rc().readUInt32BE,Hkt=yEe("II*\0"),jkt=yEe("MM\0*");function fD(e,t,r){return r?Ukt(e,t):Nkt(e,t)}function cW(e,t,r){return r?Gkt(e,t):Vkt(e,t)}function mEe(e,t,r){var n=fD(e,t+2,r),i=cW(e,t+4,r);return i!==1||n!==3&&n!==4?null:n===3?fD(e,t+8,r):cW(e,t+8,r)}_Ee.exports=function(e){if(!(e.length<8)&&!(!gEe(e,0,Hkt)&&!gEe(e,0,jkt))){var t=e[0]===77,r=cW(e,4,t)-8;if(!(r<0)){var n=r+8;if(!(e.length-n<2)){var i=fD(e,n+0,t)*12;if(!(i<=0)&&(n+=2,!(e.length-n{"use strict";var TEe=rc().str2arr,bEe=rc().sliceEq,wEe=rc().readUInt16LE,fW=rc().readUInt32LE,Wkt=uD(),Xkt=TEe("RIFF"),Zkt=TEe("WEBP");function Ykt(e,t){if(!(e[t+3]!==157||e[t+4]!==1||e[t+5]!==42))return{width:wEe(e,t+6)&16383,height:wEe(e,t+8)&16383,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}function Kkt(e,t){if(e[t]===47){var r=fW(e,t+1);return{width:(r&16383)+1,height:(r>>14&16383)+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function Jkt(e,t){return{width:(e[t+6]<<16|e[t+5]<<8|e[t+4])+1,height:(e[t+9]<e.length)){for(;t+8=10?r=r||Ykt(e,t+8):a==="VP8L"&&o>=9?r=r||Kkt(e,t+8):a==="VP8X"&&o>=10?r=r||Jkt(e,t+8):a==="EXIF"&&(n=Wkt.get_orientation(e.slice(t+8,t+8+o)),t=1/0),t+=8+o}if(r)return n>0&&(r.orientation=n),r}}}});var EEe=ye((Rdr,MEe)=>{"use strict";MEe.exports={avif:j4e(),bmp:Z4e(),gif:Q4e(),ico:rEe(),jpeg:nEe(),png:uEe(),psd:hEe(),svg:pEe(),tiff:xEe(),webp:SEe()}});var kEe=ye((Ddr,dW)=>{"use strict";var hW=EEe();function $kt(e){for(var t=Object.keys(hW),r=0;r{"use strict";var Qkt=kEe(),eCt=Py().IMAGE_URL_PREFIX,tCt=c2().Buffer;CEe.getImageSize=function(e){var t=e.replace(eCt,""),r=new tCt(t,"base64");return Qkt(r)}});var REe=ye((zdr,IEe)=>{"use strict";var PEe=Dr(),rCt=YT(),iCt=Eo(),hD=ho(),nCt=Dr().maxRowLength,aCt=LEe().getImageSize;IEe.exports=function(t,r){var n,i;if(r._hasZ)n=r.z.length,i=nCt(r.z);else if(r._hasSource){var a=aCt(r.source);n=a.height,i=a.width}var o=hD.getFromId(t,r.xaxis||"x"),s=hD.getFromId(t,r.yaxis||"y"),l=o.d2c(r.x0)-r.dx/2,u=s.d2c(r.y0)-r.dy/2,c,f=[l,l+i*r.dx],h=[u,u+n*r.dy];if(o&&o.type==="log")for(c=0;c{"use strict";var uCt=Oa(),A2=Dr(),DEe=A2.strTranslate,cCt=Wp(),fCt=YT(),hCt=QV(),dCt=h8().STYLE;FEe.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis,s=!t._context._exportedPlot&&hCt();A2.makeTraceGroups(i,n,"im").each(function(l){var u=uCt.select(this),c=l[0],f=c.trace,h=(f.zsmooth==="fast"||f.zsmooth===!1&&s)&&!f._hasZ&&f._hasSource&&a.type==="linear"&&o.type==="linear";f._realImage=h;var d=c.z,v=c.x0,_=c.y0,b=c.w,p=c.h,k=f.dx,E=f.dy,S,L,x,C,M,g;for(g=0;S===void 0&&g0;)L=a.c2p(v+g*k),g--;for(g=0;C===void 0&&g0;)M=o.c2p(_+g*E),g--;if(LH[0];if(te||oe){var _e=S+T/2,Ee=C+z/2;j+="transform:"+DEe(_e+"px",Ee+"px")+"scale("+(te?-1:1)+","+(oe?-1:1)+")"+DEe(-_e+"px",-Ee+"px")+";"}}Z.attr("style",j);var Ce=new Promise(function(me){if(f._hasZ)me();else if(f._hasSource)if(f._canvas&&f._canvas.el.width===b&&f._canvas.el.height===p&&f._canvas.source===f.source)me();else{var ie=document.createElement("canvas");ie.width=b,ie.height=p;var Se=ie.getContext("2d",{willReadFrequently:!0});f._image=f._image||new Image;var Le=f._image;Le.onload=function(){Se.drawImage(Le,0,0),f._canvas={el:ie,source:f.source},me()},Le.setAttribute("src",f.source)}}).then(function(){var me,ie;if(f._hasZ)ie=G(function(Ae,Fe){var Pe=d[Fe][Ae];return A2.isTypedArray(Pe)&&(Pe=Array.from(Pe)),Pe}),me=ie.toDataURL("image/png");else if(f._hasSource)if(h)me=f.source;else{var Se=f._canvas.el.getContext("2d",{willReadFrequently:!0}),Le=Se.getImageData(0,0,b,p).data;ie=G(function(Ae,Fe){var Pe=4*(Fe*b+Ae);return[Le[Pe],Le[Pe+1],Le[Pe+2],Le[Pe+3]]}),me=ie.toDataURL("image/png")}Z.attr({"xlink:href":me,height:z,width:T,x:S,y:C})});t._promises.push(Ce)})}});var qEe=ye((qdr,OEe)=>{"use strict";var vCt=Oa();OEe.exports=function(t){vCt.select(t).selectAll(".im image").style("opacity",function(r){return r[0].trace.opacity})}});var VEe=ye((Bdr,UEe)=>{"use strict";var BEe=vf(),NEe=Dr(),dD=NEe.isArrayOrTypedArray,pCt=YT();UEe.exports=function(t,r,n){var i=t.cd[0],a=i.trace,o=t.xa,s=t.ya;if(!(BEe.inbox(r-i.x0,r-(i.x0+i.w*a.dx),0)>0||BEe.inbox(n-i.y0,n-(i.y0+i.h*a.dy),0)>0)){var l=Math.floor((r-i.x0)/a.dx),u=Math.floor(Math.abs(n-i.y0)/a.dy),c;if(a._hasZ?c=i.z[u][l]:a._hasSource&&(c=a._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(l,u,1,1).data),!!c){var f=i.hi||a.hoverinfo,h;if(f){var d=f.split("+");d.indexOf("all")!==-1&&(d=["color"]),d.indexOf("color")!==-1&&(h=!0)}var v=pCt.colormodel[a.colormodel],_=v.colormodel||a.colormodel,b=_.length,p=a._scaler(c),k=v.suffix,E=[];(a.hovertemplate||h)&&(E.push("["+[p[0]+k[0],p[1]+k[1],p[2]+k[2]].join(", ")),b===4&&E.push(", "+p[3]+k[3]),E.push("]"),E=E.join(""),t.extraText=_.toUpperCase()+": "+E);var S;dD(a.hovertext)&&dD(a.hovertext[u])?S=a.hovertext[u][l]:dD(a.text)&&dD(a.text[u])&&(S=a.text[u][l]);var L=s.c2p(i.y0+(u+.5)*a.dy),x=i.x0+(l+.5)*a.dx,C=i.y0+(u+.5)*a.dy,M="["+c.slice(0,a.colormodel.length).join(", ")+"]";return[NEe.extendFlat(t,{index:[u,l],x0:o.c2p(i.x0+l*a.dx),x1:o.c2p(i.x0+(l+1)*a.dx),y0:L,y1:L,color:p,xVal:x,xLabelVal:x,yVal:C,yLabelVal:C,zLabelVal:M,text:S,hovertemplateLabels:{zLabel:M,colorLabel:E,"color[0]Label":p[0]+k[0],"color[1]Label":p[1]+k[1],"color[2]Label":p[2]+k[2],"color[3]Label":p[3]+k[3]}})]}}}});var HEe=ye((Ndr,GEe)=>{"use strict";GEe.exports=function(t,r){return"xVal"in r&&(t.x=r.xVal),"yVal"in r&&(t.y=r.yVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t.color=r.color,t.colormodel=r.trace.colormodel,t.z||(t.z=r.color),t}});var WEe=ye((Udr,jEe)=>{"use strict";jEe.exports={attributes:uH(),supplyDefaults:V3e(),calc:REe(),plot:zEe(),style:qEe(),hoverPoints:VEe(),eventData:HEe(),moduleType:"trace",name:"image",basePlotModule:ph(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}});var ZEe=ye((Vdr,XEe)=>{"use strict";XEe.exports=WEe()});var M2=ye((Gdr,KEe)=>{"use strict";var vW=Gl(),gCt=Cc().attributes,mCt=ec(),yCt=Lh(),{hovertemplateAttrs:_Ct,texttemplateAttrs:xCt,templatefallbackAttrs:YEe}=Ll(),S2=Ao().extendFlat,bCt=Pd().pattern,vD=mCt({editType:"plot",arrayOk:!0,colorEditType:"plot"});KEe.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:yCt.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:bCt,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:S2({},vW.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:_Ct({},{keys:["label","color","value","percent","text"]}),hovertemplatefallback:YEe(),texttemplate:xCt({editType:"plot"},{keys:["label","color","value","percent","text"]}),texttemplatefallback:YEe({editType:"plot"}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:S2({},vD,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:S2({},vD,{}),outsidetextfont:S2({},vD,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:S2({},vW.showlegend,{arrayOk:!0}),legend:S2({},vW.legend,{arrayOk:!0}),title:{text:{valType:"string",dflt:"",editType:"plot"},font:S2({},vD,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:gCt({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}});var E2=ye((Hdr,QEe)=>{"use strict";var wCt=Eo(),kE=Dr(),TCt=M2(),ACt=Cc().defaults,SCt=r0().handleText,MCt=Dr().coercePattern;function JEe(e,t){var r=kE.isArrayOrTypedArray(e),n=kE.isArrayOrTypedArray(t),i=Math.min(r?e.length:1/0,n?t.length:1/0);if(isFinite(i)||(i=0),i&&n){for(var a,o=0;o0){a=!0;break}}a||(i=0)}return{hasLabels:r,hasValues:n,len:i}}function $Ee(e,t,r,n,i){var a=n("marker.line.width");a&&n("marker.line.color",i?void 0:r.paper_bgcolor);var o=n("marker.colors");MCt(n,"marker.pattern",o),e.marker&&!t.marker.pattern.fgcolor&&(t.marker.pattern.fgcolor=e.marker.colors),t.marker.pattern.bgcolor||(t.marker.pattern.bgcolor=r.paper_bgcolor)}function ECt(e,t,r,n){function i(k,E){return kE.coerce(e,t,TCt,k,E)}var a=i("labels"),o=i("values"),s=JEe(a,o),l=s.len;if(t._hasLabels=s.hasLabels,t._hasValues=s.hasValues,!t._hasLabels&&t._hasValues&&(i("label0"),i("dlabel")),!l){t.visible=!1;return}t._length=l,$Ee(e,t,n,i,!0),i("scalegroup");var u=i("text"),c=i("texttemplate");i("texttemplatefallback");var f;if(c||(f=i("textinfo",kE.isArrayOrTypedArray(u)?"text+percent":"percent")),i("hovertext"),i("hovertemplate"),i("hovertemplatefallback"),c||f&&f!=="none"){var h=i("textposition");SCt(e,t,n,i,h,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var d=Array.isArray(h)||h==="auto",v=d||h==="outside";v&&i("automargin"),(h==="inside"||h==="auto"||Array.isArray(h))&&i("insidetextorientation")}else f==="none"&&i("textposition","none");ACt(t,n,i);var _=i("hole"),b=i("title.text");if(b){var p=i("title.position",_?"middle center":"top center");!_&&p==="middle center"&&(t.title.position="top center"),kE.coerceFont(i,"title.font",n.font)}i("sort"),i("direction"),i("rotation"),i("pull")}QEe.exports={handleLabelsAndValues:JEe,handleMarkerDefaults:$Ee,supplyDefaults:ECt}});var pD=ye((jdr,eke)=>{"use strict";eke.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var rke=ye((Wdr,tke)=>{"use strict";var kCt=Dr(),CCt=pD();tke.exports=function(t,r){function n(i,a){return kCt.coerce(t,r,CCt,i,a)}n("hiddenlabels"),n("piecolorway",r.colorway),n("extendpiecolors")}});var TA=ye((Xdr,ake)=>{"use strict";var LCt=Eo(),pW=cd(),PCt=ka(),ICt={};function RCt(e,t){var r=[],n=e._fullLayout,i=n.hiddenlabels||[],a=t.labels,o=t.marker.colors||[],s=t.values,l=t._length,u=t._hasValues&&l,c,f;if(t.dlabel)for(a=new Array(l),c=0;c=0});var S=t.type==="funnelarea"?_:t.sort;return S&&r.sort(function(L,x){return x.v-L.v}),r[0]&&(r[0].vTotal=v),r}function ike(e){return function(r,n){return!r||(r=pW(r),!r.isValid())?!1:(r=PCt.addOpacity(r,r.getAlpha()),e[n]||(e[n]=r),r)}}function DCt(e,t){var r=(t||{}).type;r||(r="pie");var n=e._fullLayout,i=e.calcdata,a=n[r+"colorway"],o=n["_"+r+"colormap"];n["extend"+r+"colors"]&&(a=nke(a,ICt));for(var s=0,l=0;l{"use strict";var FCt=ip().appendArrayMultiPointValues;oke.exports=function(t,r){var n={curveNumber:r.index,pointNumbers:t.pts,data:r._input,fullData:r,label:t.label,color:t.color,value:t.v,percent:t.percent,text:t.text,bbox:t.bbox,v:t.v};return t.pts.length===1&&(n.pointNumber=n.i=t.pts[0]),FCt(n,r,t.pts),r.type==="funnelarea"&&(delete n.v,delete n.i),n}});var _D=ye((Ydr,kke)=>{"use strict";var Fp=Oa(),zCt=Mc(),gD=vf(),dke=ka(),Wy=So(),rv=Dr(),OCt=rv.strScale,lke=rv.strTranslate,gW=ru(),vke=bv(),qCt=vke.recordMinTextSize,BCt=vke.clearMinTextSize,pke=e2().TEXTPAD,ns=l_(),mD=ske(),uke=Dr().isValidTextValue;function NCt(e,t){var r=e._context.staticPlot,n=e._fullLayout,i=n._size;BCt("pie",n),yke(t,e),Ske(t,i);var a=rv.makeTraceGroups(n._pielayer,t,"trace").each(function(o){var s=Fp.select(this),l=o[0],u=l.trace;YCt(o),s.attr("stroke-linejoin","round"),s.each(function(){var c=Fp.select(this).selectAll("g.slice").data(o);c.enter().append("g").classed("slice",!0),c.exit().remove();var f=[[[],[]],[[],[]]],h=!1;c.each(function(S,L){if(S.hidden){Fp.select(this).selectAll("path,g").remove();return}S.pointNumber=S.i,S.curveNumber=u.index,f[S.pxmid[1]<0?0:1][S.pxmid[0]<0?0:1].push(S);var x=l.cx,C=l.cy,M=Fp.select(this),g=M.selectAll("path.surface").data([S]);if(g.enter().append("path").classed("surface",!0).style({"pointer-events":r?"none":"all"}),M.call(gke,e,o),u.pull){var P=+ns.castOption(u.pull,S.pts)||0;P>0&&(x+=P*S.pxmid[0],C+=P*S.pxmid[1])}S.cxFinal=x,S.cyFinal=C;function T(N,H,te,oe){var _e=oe*(H[0]-N[0]),Ee=oe*(H[1]-N[1]);return"a"+oe*l.r+","+oe*l.r+" 0 "+S.largeArc+(te?" 1 ":" 0 ")+_e+","+Ee}var z=u.hole;if(S.v===l.vTotal){var O="M"+(x+S.px0[0])+","+(C+S.px0[1])+T(S.px0,S.pxmid,!0,1)+T(S.pxmid,S.px0,!0,1)+"Z";z?g.attr("d","M"+(x+z*S.px0[0])+","+(C+z*S.px0[1])+T(S.px0,S.pxmid,!1,z)+T(S.pxmid,S.px0,!1,z)+"Z"+O):g.attr("d",O)}else{var V=T(S.px0,S.px1,!0,1);if(z){var G=1-z;g.attr("d","M"+(x+z*S.px1[0])+","+(C+z*S.px1[1])+T(S.px1,S.px0,!1,z)+"l"+G*S.px0[0]+","+G*S.px0[1]+V+"Z")}else g.attr("d","M"+x+","+C+"l"+S.px0[0]+","+S.px0[1]+V+"Z")}Mke(e,S,l);var Z=ns.castOption(u.textposition,S.pts),j=M.selectAll("g.slicetext").data(S.text&&Z!=="none"?[0]:[]);j.enter().append("g").classed("slicetext",!0),j.exit().remove(),j.each(function(){var N=rv.ensureSingle(Fp.select(this),"text","",function(ie){ie.attr("data-notex",1)}),H=rv.ensureUniformFontSize(e,Z==="outside"?VCt(u,S,n.font):mke(u,S,n.font));N.text(S.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(Wy.font,H).call(gW.convertToTspans,e);var te=Wy.bBox(N.node()),oe;if(Z==="outside")oe=hke(te,S);else if(oe=_ke(te,S,l),Z==="auto"&&oe.scale<1){var _e=rv.ensureUniformFontSize(e,u.outsidetextfont);N.call(Wy.font,_e),te=Wy.bBox(N.node()),oe=hke(te,S)}var Ee=oe.textPosAngle,Ce=Ee===void 0?S.pxmid:yD(l.r,Ee);if(oe.targetX=x+Ce[0]*oe.rCenter+(oe.x||0),oe.targetY=C+Ce[1]*oe.rCenter+(oe.y||0),Eke(oe,te),oe.outside){var me=oe.targetY;S.yLabelMin=me-te.height/2,S.yLabelMid=me,S.yLabelMax=me+te.height/2,S.labelExtraX=0,S.labelExtraY=0,h=!0}oe.fontSize=H.size,qCt(u.type,oe,n),o[L].transform=oe,rv.setTransormAndDisplay(N,oe)})});var d=Fp.select(this).selectAll("g.titletext").data(u.title.text?[0]:[]);if(d.enter().append("g").classed("titletext",!0),d.exit().remove(),d.each(function(){var S=rv.ensureSingle(Fp.select(this),"text","",function(C){C.attr("data-notex",1)}),L=u.title.text;u._meta&&(L=rv.templateString(L,u._meta)),S.text(L).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(Wy.font,u.title.font).call(gW.convertToTspans,e);var x;u.title.position==="middle center"?x=jCt(l):x=Tke(l,i),S.attr("transform",lke(x.x,x.y)+OCt(Math.min(1,x.scale))+lke(x.tx,x.ty))}),h&&XCt(f,u),UCt(c,u),h&&u.automargin){var v=Wy.bBox(s.node()),_=u.domain,b=i.w*(_.x[1]-_.x[0]),p=i.h*(_.y[1]-_.y[0]),k=(.5*b-l.r)/i.w,E=(.5*p-l.r)/i.h;zCt.autoMargin(e,"pie."+u.uid+".automargin",{xl:_.x[0]-k,xr:_.x[1]+k,yb:_.y[0]-E,yt:_.y[1]+E,l:Math.max(l.cx-l.r-v.left,0),r:Math.max(v.right-(l.cx+l.r),0),b:Math.max(v.bottom-(l.cy+l.r),0),t:Math.max(l.cy-l.r-v.top,0),pad:5})}})});setTimeout(function(){a.selectAll("tspan").each(function(){var o=Fp.select(this);o.attr("dy")&&o.attr("dy",o.attr("dy"))})},0)}function UCt(e,t){e.each(function(r){var n=Fp.select(this);if(!r.labelExtraX&&!r.labelExtraY){n.select("path.textline").remove();return}var i=n.select("g.slicetext text");r.transform.targetX+=r.labelExtraX,r.transform.targetY+=r.labelExtraY,rv.setTransormAndDisplay(i,r.transform);var a=r.cxFinal+r.pxmid[0],o=r.cyFinal+r.pxmid[1],s="M"+a+","+o,l=(r.yLabelMax-r.yLabelMin)*(r.pxmid[0]<0?-1:1)/4;if(r.labelExtraX){var u=r.labelExtraX*r.pxmid[1]/r.pxmid[0],c=r.yLabelMid+r.labelExtraY-(r.cyFinal+r.pxmid[1]);Math.abs(u)>Math.abs(c)?s+="l"+c*r.pxmid[0]/r.pxmid[1]+","+c+"H"+(a+r.labelExtraX+l):s+="l"+r.labelExtraX+","+u+"v"+(c-u)+"h"+l}else s+="V"+(r.yLabelMid+r.labelExtraY)+"h"+l;rv.ensureSingle(n,"path","textline").call(dke.stroke,t.outsidetextfont.color).attr({"stroke-width":Math.min(2,t.outsidetextfont.size/8),d:s,fill:"none"})})}function gke(e,t,r){var n=r[0],i=n.cx,a=n.cy,o=n.trace,s=o.type==="funnelarea";"_hasHoverLabel"in o||(o._hasHoverLabel=!1),"_hasHoverEvent"in o||(o._hasHoverEvent=!1),e.on("mouseover",function(l){var u=t._fullLayout,c=t._fullData[o.index];if(!(t._dragging||u.hovermode===!1)){var f=c.hoverinfo;if(Array.isArray(f)&&(f=gD.castHoverinfo({hoverinfo:[ns.castOption(f,l.pts)],_module:o._module},u,0)),f==="all"&&(f="label+text+value+percent+name"),c.hovertemplate||f!=="none"&&f!=="skip"&&f){var h=l.rInscribed||0,d=i+l.pxmid[0]*(1-h),v=a+l.pxmid[1]*(1-h),_=u.separators,b=[];if(f&&f.indexOf("label")!==-1&&b.push(l.label),l.text=ns.castOption(c.hovertext||c.text,l.pts),f&&f.indexOf("text")!==-1){var p=l.text;rv.isValidTextValue(p)&&b.push(p)}l.value=l.v,l.valueLabel=ns.formatPieValue(l.v,_),f&&f.indexOf("value")!==-1&&b.push(l.valueLabel),l.percent=l.v/n.vTotal,l.percentLabel=ns.formatPiePercent(l.percent,_),f&&f.indexOf("percent")!==-1&&b.push(l.percentLabel);var k=c.hoverlabel,E=k.font,S=[];gD.loneHover({trace:o,x0:d-h*n.r,x1:d+h*n.r,y:v,_x0:s?i+l.TL[0]:d-h*n.r,_x1:s?i+l.TR[0]:d+h*n.r,_y0:s?a+l.TL[1]:v-h*n.r,_y1:s?a+l.BL[1]:v+h*n.r,text:b.join("
"),name:c.hovertemplate||f.indexOf("name")!==-1?c.name:void 0,idealAlign:l.pxmid[0]<0?"left":"right",color:ns.castOption(k.bgcolor,l.pts)||l.color,borderColor:ns.castOption(k.bordercolor,l.pts),fontFamily:ns.castOption(E.family,l.pts),fontSize:ns.castOption(E.size,l.pts),fontColor:ns.castOption(E.color,l.pts),nameLength:ns.castOption(k.namelength,l.pts),textAlign:ns.castOption(k.align,l.pts),hovertemplate:ns.castOption(c.hovertemplate,l.pts),hovertemplateLabels:l,eventData:[mD(l,c)]},{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:t,inOut_bbox:S}),l.bbox=S[0],o._hasHoverLabel=!0}o._hasHoverEvent=!0,t.emit("plotly_hover",{points:[mD(l,c)],event:Fp.event})}}),e.on("mouseout",function(l){var u=t._fullLayout,c=t._fullData[o.index],f=Fp.select(this).datum();o._hasHoverEvent&&(l.originalEvent=Fp.event,t.emit("plotly_unhover",{points:[mD(f,c)],event:Fp.event}),o._hasHoverEvent=!1),o._hasHoverLabel&&(gD.loneUnhover(u._hoverlayer.node()),o._hasHoverLabel=!1)}),e.on("click",function(l){var u=t._fullLayout,c=t._fullData[o.index];t._dragging||u.hovermode===!1||(t._hoverdata=[mD(l,c)],gD.click(t,Fp.event))})}function VCt(e,t,r){var n=ns.castOption(e.outsidetextfont.color,t.pts)||ns.castOption(e.textfont.color,t.pts)||r.color,i=ns.castOption(e.outsidetextfont.family,t.pts)||ns.castOption(e.textfont.family,t.pts)||r.family,a=ns.castOption(e.outsidetextfont.size,t.pts)||ns.castOption(e.textfont.size,t.pts)||r.size,o=ns.castOption(e.outsidetextfont.weight,t.pts)||ns.castOption(e.textfont.weight,t.pts)||r.weight,s=ns.castOption(e.outsidetextfont.style,t.pts)||ns.castOption(e.textfont.style,t.pts)||r.style,l=ns.castOption(e.outsidetextfont.variant,t.pts)||ns.castOption(e.textfont.variant,t.pts)||r.variant,u=ns.castOption(e.outsidetextfont.textcase,t.pts)||ns.castOption(e.textfont.textcase,t.pts)||r.textcase,c=ns.castOption(e.outsidetextfont.lineposition,t.pts)||ns.castOption(e.textfont.lineposition,t.pts)||r.lineposition,f=ns.castOption(e.outsidetextfont.shadow,t.pts)||ns.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n,family:i,size:a,weight:o,style:s,variant:l,textcase:u,lineposition:c,shadow:f}}function mke(e,t,r){var n=ns.castOption(e.insidetextfont.color,t.pts);!n&&e._input.textfont&&(n=ns.castOption(e._input.textfont.color,t.pts));var i=ns.castOption(e.insidetextfont.family,t.pts)||ns.castOption(e.textfont.family,t.pts)||r.family,a=ns.castOption(e.insidetextfont.size,t.pts)||ns.castOption(e.textfont.size,t.pts)||r.size,o=ns.castOption(e.insidetextfont.weight,t.pts)||ns.castOption(e.textfont.weight,t.pts)||r.weight,s=ns.castOption(e.insidetextfont.style,t.pts)||ns.castOption(e.textfont.style,t.pts)||r.style,l=ns.castOption(e.insidetextfont.variant,t.pts)||ns.castOption(e.textfont.variant,t.pts)||r.variant,u=ns.castOption(e.insidetextfont.textcase,t.pts)||ns.castOption(e.textfont.textcase,t.pts)||r.textcase,c=ns.castOption(e.insidetextfont.lineposition,t.pts)||ns.castOption(e.textfont.lineposition,t.pts)||r.lineposition,f=ns.castOption(e.insidetextfont.shadow,t.pts)||ns.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n||dke.contrast(t.color),family:i,size:a,weight:o,style:s,variant:l,textcase:u,lineposition:c,shadow:f}}function yke(e,t){for(var r,n,i=0;i=-4;k-=2)p(Math.PI*k,"tan");for(k=4;k>=-4;k-=2)p(Math.PI*(k+1),"tan")}if(f||d){for(k=4;k>=-4;k-=2)p(Math.PI*(k+1.5),"rad");for(k=4;k>=-4;k-=2)p(Math.PI*(k+.5),"rad")}}if(s||v||f){var E=Math.sqrt(e.width*e.width+e.height*e.height);if(b={scale:i*n*2/E,rCenter:1-i,rotate:0},b.textPosAngle=(t.startangle+t.stopangle)/2,b.scale>=1)return b;_.push(b)}(v||d)&&(b=cke(e,n,o,l,u),b.textPosAngle=(t.startangle+t.stopangle)/2,_.push(b)),(v||h)&&(b=fke(e,n,o,l,u),b.textPosAngle=(t.startangle+t.stopangle)/2,_.push(b));for(var S=0,L=0,x=0;x<_.length;x++){var C=_[x].scale;if(L=1)break}return _[S]}function GCt(e,t){var r=e.startangle,n=e.stopangle;return r>t&&t>n||r0?1:-1)/2,y:a/(1+r*r/(n*n)),outside:!0}}function jCt(e){var t=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/t,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}function Tke(e,t){var r=1,n=1,i,a=e.trace,o={x:e.cx,y:e.cy},s={tx:0,ty:0};s.ty+=a.title.font.size,i=Ake(a),a.title.position.indexOf("top")!==-1?(o.y-=(1+i)*e.r,s.ty-=e.titleBox.height):a.title.position.indexOf("bottom")!==-1&&(o.y+=(1+i)*e.r);var l=WCt(e.r,e.trace.aspectratio),u=t.w*(a.domain.x[1]-a.domain.x[0])/2;return a.title.position.indexOf("left")!==-1?(u=u+l,o.x-=(1+i)*l,s.tx+=e.titleBox.width/2):a.title.position.indexOf("center")!==-1?u*=2:a.title.position.indexOf("right")!==-1&&(u=u+l,o.x+=(1+i)*l,s.tx-=e.titleBox.width/2),r=u/e.titleBox.width,n=mW(e,t)/e.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function WCt(e,t){return e/(t===void 0?1:t)}function mW(e,t){var r=e.trace,n=t.h*(r.domain.y[1]-r.domain.y[0]);return Math.min(e.titleBox.height,n/2)}function Ake(e){var t=e.pull;if(!t)return 0;var r;if(rv.isArrayOrTypedArray(t))for(t=0,r=0;rt&&(t=e.pull[r]);return t}function XCt(e,t){var r,n,i,a,o,s,l,u,c,f,h,d,v;function _(E,S){return E.pxmid[1]-S.pxmid[1]}function b(E,S){return S.pxmid[1]-E.pxmid[1]}function p(E,S){S||(S={});var L=S.labelExtraY+(n?S.yLabelMax:S.yLabelMin),x=n?E.yLabelMin:E.yLabelMax,C=n?E.yLabelMax:E.yLabelMin,M=E.cyFinal+o(E.px0[1],E.px1[1]),g=L-x,P,T,z,O,V,G;if(g*l>0&&(E.labelExtraY=g),!!rv.isArrayOrTypedArray(t.pull))for(T=0;T=(ns.castOption(t.pull,z.pts)||0))&&((E.pxmid[1]-z.pxmid[1])*l>0?(O=z.cyFinal+o(z.px0[1],z.px1[1]),g=O-x-E.labelExtraY,g*l>0&&(E.labelExtraY+=g)):(C+E.labelExtraY-M)*l>0&&(P=3*s*Math.abs(T-f.indexOf(E)),V=z.cxFinal+a(z.px0[0],z.px1[0]),G=V+P-(E.cxFinal+E.pxmid[0])-E.labelExtraX,G*s>0&&(E.labelExtraX+=G)))}for(n=0;n<2;n++)for(i=n?_:b,o=n?Math.max:Math.min,l=n?1:-1,r=0;r<2;r++){for(a=r?Math.max:Math.min,s=r?1:-1,u=e[n][r],u.sort(i),c=e[1-n][r],f=c.concat(u),d=[],h=0;h1?(u=r.r,c=u/i.aspectratio):(c=r.r,u=c*i.aspectratio),u*=(1+i.baseratio)/2,l=u*c}o=Math.min(o,l/r.vTotal)}for(n=0;nt.vTotal/2?1:0,u.halfangle=Math.PI*Math.min(u.v/t.vTotal,.5),u.ring=1-n.hole,u.rInscribed=HCt(u,t))}function yD(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}function Mke(e,t,r){var n=e._fullLayout,i=r.trace,a=i.texttemplate,o=i.textinfo;if(!a&&o&&o!=="none"){var s=o.split("+"),l=function(S){return s.indexOf(S)!==-1},u=l("label"),c=l("text"),f=l("value"),h=l("percent"),d=n.separators,v;if(v=u?[t.label]:[],c){var _=ns.getFirstFilled(i.text,t.pts);uke(_)&&v.push(_)}f&&v.push(ns.formatPieValue(t.v,d)),h&&v.push(ns.formatPiePercent(t.v/r.vTotal,d)),t.text=v.join("
")}function b(S){return{label:S.label,value:S.v,valueLabel:ns.formatPieValue(S.v,n.separators),percent:S.v/r.vTotal,percentLabel:ns.formatPiePercent(S.v/r.vTotal,n.separators),color:S.color,text:S.text,customdata:rv.castOption(i,S.i,"customdata")}}if(a){var p=rv.castOption(i,t.i,"texttemplate");if(!p)t.text="";else{var k=b(t),E=ns.getFirstFilled(i.text,t.pts);(uke(E)||E==="")&&(k.text=E),t.text=rv.texttemplateString({data:[k,i._meta],fallback:i.texttemplatefallback,labels:k,locale:e._fullLayout._d3locale,template:p})}}}function Eke(e,t){var r=e.rotate*Math.PI/180,n=Math.cos(r),i=Math.sin(r),a=(t.left+t.right)/2,o=(t.top+t.bottom)/2;e.textX=a*n-o*i,e.textY=a*i+o*n,e.noCenter=!0}kke.exports={plot:NCt,formatSliceLabel:Mke,transformInsideText:_ke,determineInsideTextFont:mke,positionTitleOutside:Tke,prerenderTitles:yke,layoutAreas:Ske,attachFxHandlers:gke,computeTransform:Eke}});var Pke=ye((Kdr,Lke)=>{"use strict";var Cke=Oa(),KCt=B3(),JCt=bv().resizeText;Lke.exports=function(t){var r=t._fullLayout._pielayer.selectAll(".trace");JCt(t,r,"pie"),r.each(function(n){var i=n[0],a=i.trace,o=Cke.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){Cke.select(this).call(KCt,s,a,t)})})}});var Rke=ye(AA=>{"use strict";var Ike=Mc();AA.name="pie";AA.plot=function(e,t,r,n){Ike.plotBasePlot(AA.name,e,t,r,n)};AA.clean=function(e,t,r,n){Ike.cleanBasePlot(AA.name,e,t,r,n)}});var Fke=ye(($dr,Dke)=>{"use strict";Dke.exports={attributes:M2(),supplyDefaults:E2().supplyDefaults,supplyLayoutDefaults:rke(),layoutAttributes:pD(),calc:TA().calc,crossTraceCalc:TA().crossTraceCalc,plot:_D().plot,style:Pke(),styleOne:B3(),moduleType:"trace",name:"pie",basePlotModule:Rke(),categories:["pie-like","pie","showLegend"],meta:{}}});var Oke=ye((Qdr,zke)=>{"use strict";zke.exports=Fke()});var Bke=ye(SA=>{"use strict";var qke=Mc();SA.name="sunburst";SA.plot=function(e,t,r,n){qke.plotBasePlot(SA.name,e,t,r,n)};SA.clean=function(e,t,r,n){qke.cleanBasePlot(SA.name,e,t,r,n)}});var yW=ye((tvr,Nke)=>{"use strict";Nke.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}});var LE=ye((rvr,Gke)=>{"use strict";var $Ct=Gl(),{hovertemplateAttrs:QCt,texttemplateAttrs:e6t,templatefallbackAttrs:Uke}=Ll(),t6t=Tu(),r6t=Cc().attributes,Xy=M2(),Vke=yW(),CE=Ao().extendFlat,i6t=Pd().pattern;Gke.exports={labels:{valType:"data_array",editType:"calc"},parents:{valType:"data_array",editType:"calc"},values:{valType:"data_array",editType:"calc"},branchvalues:{valType:"enumerated",values:["remainder","total"],dflt:"remainder",editType:"calc"},count:{valType:"flaglist",flags:["branches","leaves"],dflt:"leaves",editType:"calc"},level:{valType:"any",editType:"plot",anim:!0},maxdepth:{valType:"integer",editType:"plot",dflt:-1},marker:CE({colors:{valType:"data_array",editType:"calc"},line:{color:CE({},Xy.marker.line.color,{dflt:null}),width:CE({},Xy.marker.line.width,{dflt:1}),editType:"calc"},pattern:i6t,editType:"calc"},t6t("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:Xy.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:e6t({editType:"plot"},{keys:Vke.eventDataKeys.concat(["label","value"])}),texttemplatefallback:Uke({editType:"plot"}),hovertext:Xy.hovertext,hoverinfo:CE({},$Ct.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:QCt({},{keys:Vke.eventDataKeys}),hovertemplatefallback:Uke(),textfont:Xy.textfont,insidetextorientation:Xy.insidetextorientation,insidetextfont:Xy.insidetextfont,outsidetextfont:CE({},Xy.outsidetextfont,{}),rotation:{valType:"angle",dflt:0,editType:"plot"},sort:Xy.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)"},editType:"calc"},domain:r6t({name:"sunburst",trace:!0,editType:"calc"})}});var _W=ye((ivr,Hke)=>{"use strict";Hke.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var Zke=ye((nvr,Xke)=>{"use strict";var jke=Dr(),n6t=LE(),a6t=Cc().defaults,o6t=r0().handleText,s6t=E2().handleMarkerDefaults,Wke=tc(),l6t=Wke.hasColorscale,u6t=Wke.handleDefaults;Xke.exports=function(t,r,n,i){function a(h,d){return jke.coerce(t,r,n6t,h,d)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth"),s6t(t,r,i,a);var u=r._hasColorscale=l6t(t,"marker","colors")||(t.marker||{}).coloraxis;u&&u6t(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",u?1:.7);var c=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",jke.isArrayOrTypedArray(c)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var f="auto";o6t(t,r,i,a,f,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("insidetextorientation"),a("sort"),a("rotation"),a("root.color"),a6t(r,i,a),r._length=null}});var Kke=ye((avr,Yke)=>{"use strict";var c6t=Dr(),f6t=_W();Yke.exports=function(t,r){function n(i,a){return c6t.coerce(t,r,f6t,i,a)}n("sunburstcolorway",r.colorway),n("extendsunburstcolors")}});var PE=ye((xD,Jke)=>{(function(e,t){typeof xD=="object"&&typeof Jke!="undefined"?t(xD):(e=e||self,t(e.d3=e.d3||{}))})(xD,function(e){"use strict";function t(je,tt){return je.parent===tt.parent?1:2}function r(je){return je.reduce(n,0)/je.length}function n(je,tt){return je+tt.x}function i(je){return 1+je.reduce(a,0)}function a(je,tt){return Math.max(je,tt.y)}function o(je){for(var tt;tt=je.children;)je=tt[0];return je}function s(je){for(var tt;tt=je.children;)je=tt[tt.length-1];return je}function l(){var je=t,tt=1,xt=1,Ie=!1;function xe(ke){var vt,ir=0;ke.eachAfter(function($r){var di=$r.children;di?($r.x=r(di),$r.y=i(di)):($r.x=vt?ir+=je($r,vt):0,$r.y=0,vt=$r)});var ar=o(ke),vr=s(ke),ii=ar.x-je(ar,vr)/2,pi=vr.x+je(vr,ar)/2;return ke.eachAfter(Ie?function($r){$r.x=($r.x-ke.x)*tt,$r.y=(ke.y-$r.y)*xt}:function($r){$r.x=($r.x-ii)/(pi-ii)*tt,$r.y=(1-(ke.y?$r.y/ke.y:1))*xt})}return xe.separation=function(ke){return arguments.length?(je=ke,xe):je},xe.size=function(ke){return arguments.length?(Ie=!1,tt=+ke[0],xt=+ke[1],xe):Ie?null:[tt,xt]},xe.nodeSize=function(ke){return arguments.length?(Ie=!0,tt=+ke[0],xt=+ke[1],xe):Ie?[tt,xt]:null},xe}function u(je){var tt=0,xt=je.children,Ie=xt&&xt.length;if(!Ie)tt=1;else for(;--Ie>=0;)tt+=xt[Ie].value;je.value=tt}function c(){return this.eachAfter(u)}function f(je){var tt=this,xt,Ie=[tt],xe,ke,vt;do for(xt=Ie.reverse(),Ie=[];tt=xt.pop();)if(je(tt),xe=tt.children,xe)for(ke=0,vt=xe.length;ke=0;--xe)xt.push(Ie[xe]);return this}function d(je){for(var tt=this,xt=[tt],Ie=[],xe,ke,vt;tt=xt.pop();)if(Ie.push(tt),xe=tt.children,xe)for(ke=0,vt=xe.length;ke=0;)xt+=Ie[xe].value;tt.value=xt})}function _(je){return this.eachBefore(function(tt){tt.children&&tt.children.sort(je)})}function b(je){for(var tt=this,xt=p(tt,je),Ie=[tt];tt!==xt;)tt=tt.parent,Ie.push(tt);for(var xe=Ie.length;je!==xt;)Ie.splice(xe,0,je),je=je.parent;return Ie}function p(je,tt){if(je===tt)return je;var xt=je.ancestors(),Ie=tt.ancestors(),xe=null;for(je=xt.pop(),tt=Ie.pop();je===tt;)xe=je,je=xt.pop(),tt=Ie.pop();return xe}function k(){for(var je=this,tt=[je];je=je.parent;)tt.push(je);return tt}function E(){var je=[];return this.each(function(tt){je.push(tt)}),je}function S(){var je=[];return this.eachBefore(function(tt){tt.children||je.push(tt)}),je}function L(){var je=this,tt=[];return je.each(function(xt){xt!==je&&tt.push({source:xt.parent,target:xt})}),tt}function x(je,tt){var xt=new T(je),Ie=+je.value&&(xt.value=je.value),xe,ke=[xt],vt,ir,ar,vr;for(tt==null&&(tt=M);xe=ke.pop();)if(Ie&&(xe.value=+xe.data.value),(ir=tt(xe.data))&&(vr=ir.length))for(xe.children=new Array(vr),ar=vr-1;ar>=0;--ar)ke.push(vt=xe.children[ar]=new T(ir[ar])),vt.parent=xe,vt.depth=xe.depth+1;return xt.eachBefore(P)}function C(){return x(this).eachBefore(g)}function M(je){return je.children}function g(je){je.data=je.data.data}function P(je){var tt=0;do je.height=tt;while((je=je.parent)&&je.height<++tt)}function T(je){this.data=je,this.depth=this.height=0,this.parent=null}T.prototype=x.prototype={constructor:T,count:c,each:f,eachAfter:d,eachBefore:h,sum:v,sort:_,path:b,ancestors:k,descendants:E,leaves:S,links:L,copy:C};var z=Array.prototype.slice;function O(je){for(var tt=je.length,xt,Ie;tt;)Ie=Math.random()*tt--|0,xt=je[tt],je[tt]=je[Ie],je[Ie]=xt;return je}function V(je){for(var tt=0,xt=(je=O(z.call(je))).length,Ie=[],xe,ke;tt0&&xt*xt>Ie*Ie+xe*xe}function N(je,tt){for(var xt=0;xtar?(xe=(vr+ar-ke)/(2*vr),ir=Math.sqrt(Math.max(0,ar/vr-xe*xe)),xt.x=je.x-xe*Ie-ir*vt,xt.y=je.y-xe*vt+ir*Ie):(xe=(vr+ke-ar)/(2*vr),ir=Math.sqrt(Math.max(0,ke/vr-xe*xe)),xt.x=tt.x+xe*Ie-ir*vt,xt.y=tt.y+xe*vt+ir*Ie)):(xt.x=tt.x+xt.r,xt.y=tt.y)}function Ce(je,tt){var xt=je.r+tt.r-1e-6,Ie=tt.x-je.x,xe=tt.y-je.y;return xt>0&&xt*xt>Ie*Ie+xe*xe}function me(je){var tt=je._,xt=je.next._,Ie=tt.r+xt.r,xe=(tt.x*xt.r+xt.x*tt.r)/Ie,ke=(tt.y*xt.r+xt.y*tt.r)/Ie;return xe*xe+ke*ke}function ie(je){this._=je,this.next=null,this.previous=null}function Se(je){if(!(xe=je.length))return 0;var tt,xt,Ie,xe,ke,vt,ir,ar,vr,ii,pi;if(tt=je[0],tt.x=0,tt.y=0,!(xe>1))return tt.r;if(xt=je[1],tt.x=-xt.r,xt.x=tt.r,xt.y=0,!(xe>2))return tt.r+xt.r;Ee(xt,tt,Ie=je[2]),tt=new ie(tt),xt=new ie(xt),Ie=new ie(Ie),tt.next=Ie.previous=xt,xt.next=tt.previous=Ie,Ie.next=xt.previous=tt;e:for(ir=3;ir0)throw new Error("cycle");return ir}return xt.id=function(Ie){return arguments.length?(je=Fe(Ie),xt):je},xt.parentId=function(Ie){return arguments.length?(tt=Fe(Ie),xt):tt},xt}function $e(je,tt){return je.parent===tt.parent?1:2}function St(je){var tt=je.children;return tt?tt[0]:je.t}function Qt(je){var tt=je.children;return tt?tt[tt.length-1]:je.t}function Vt(je,tt,xt){var Ie=xt/(tt.i-je.i);tt.c-=Ie,tt.s+=xt,je.c+=Ie,tt.z+=xt,tt.m+=xt}function _t(je){for(var tt=0,xt=0,Ie=je.children,xe=Ie.length,ke;--xe>=0;)ke=Ie[xe],ke.z+=tt,ke.m+=tt,tt+=ke.s+(xt+=ke.c)}function It(je,tt,xt){return je.a.parent===tt.parent?je.a:xt}function mt(je,tt){this._=je,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=tt}mt.prototype=Object.create(T.prototype);function er(je){for(var tt=new mt(je,0),xt,Ie=[tt],xe,ke,vt,ir;xt=Ie.pop();)if(ke=xt._.children)for(xt.children=new Array(ir=ke.length),vt=ir-1;vt>=0;--vt)Ie.push(xe=xt.children[vt]=new mt(ke[vt],vt)),xe.parent=xt;return(tt.parent=new mt(null,0)).children=[tt],tt}function lr(){var je=$e,tt=1,xt=1,Ie=null;function xe(vr){var ii=er(vr);if(ii.eachAfter(ke),ii.parent.m=-ii.z,ii.eachBefore(vt),Ie)vr.eachBefore(ar);else{var pi=vr,$r=vr,di=vr;vr.eachBefore(function(qn){qn.x$r.x&&($r=qn),qn.depth>di.depth&&(di=qn)});var ji=pi===$r?1:je(pi,$r)/2,In=ji-pi.x,wi=tt/($r.x+ji+In),On=xt/(di.depth||1);vr.eachBefore(function(qn){qn.x=(qn.x+In)*wi,qn.y=qn.depth*On})}return vr}function ke(vr){var ii=vr.children,pi=vr.parent.children,$r=vr.i?pi[vr.i-1]:null;if(ii){_t(vr);var di=(ii[0].z+ii[ii.length-1].z)/2;$r?(vr.z=$r.z+je(vr._,$r._),vr.m=vr.z-di):vr.z=di}else $r&&(vr.z=$r.z+je(vr._,$r._));vr.parent.A=ir(vr,$r,vr.parent.A||pi[0])}function vt(vr){vr._.x=vr.z+vr.parent.m,vr.m+=vr.parent.m}function ir(vr,ii,pi){if(ii){for(var $r=vr,di=vr,ji=ii,In=$r.parent.children[0],wi=$r.m,On=di.m,qn=ji.m,Fn=In.m,ra;ji=Qt(ji),$r=St($r),ji&&$r;)In=St(In),di=Qt(di),di.a=vr,ra=ji.z+qn-$r.z-wi+je(ji._,$r._),ra>0&&(Vt(It(ji,vr,pi),vr,ra),wi+=ra,On+=ra),qn+=ji.m,wi+=$r.m,Fn+=In.m,On+=di.m;ji&&!Qt(di)&&(di.t=ji,di.m+=qn-On),$r&&!St(In)&&(In.t=$r,In.m+=wi-Fn,pi=vr)}return pi}function ar(vr){vr.x*=tt,vr.y=vr.depth*xt}return xe.separation=function(vr){return arguments.length?(je=vr,xe):je},xe.size=function(vr){return arguments.length?(Ie=!1,tt=+vr[0],xt=+vr[1],xe):Ie?null:[tt,xt]},xe.nodeSize=function(vr){return arguments.length?(Ie=!0,tt=+vr[0],xt=+vr[1],xe):Ie?[tt,xt]:null},xe}function Tr(je,tt,xt,Ie,xe){for(var ke=je.children,vt,ir=-1,ar=ke.length,vr=je.value&&(xe-xt)/je.value;++irqn&&(qn=vr),Ut=wi*wi*la,Fn=Math.max(qn/Ut,Ut/On),Fn>ra){wi-=vr;break}ra=Fn}vt.push(ar={value:wi,dice:di1?Ie:1)},xt}(Lr);function Vr(){var je=Br,tt=!1,xt=1,Ie=1,xe=[0],ke=Pe,vt=Pe,ir=Pe,ar=Pe,vr=Pe;function ii($r){return $r.x0=$r.y0=0,$r.x1=xt,$r.y1=Ie,$r.eachBefore(pi),xe=[0],tt&&$r.eachBefore(Zt),$r}function pi($r){var di=xe[$r.depth],ji=$r.x0+di,In=$r.y0+di,wi=$r.x1-di,On=$r.y1-di;wi=$r-1){var qn=ke[pi];qn.x0=ji,qn.y0=In,qn.x1=wi,qn.y1=On;return}for(var Fn=vr[pi],ra=di/2+Fn,la=pi+1,Ut=$r-1;la>>1;vr[wt]On-In){var Er=(ji*nr+wi*rr)/di;ii(pi,la,rr,ji,In,Er,On),ii(la,$r,nr,Er,In,wi,On)}else{var Xr=(In*nr+On*rr)/di;ii(pi,la,rr,ji,In,wi,Xr),ii(la,$r,nr,ji,Xr,wi,On)}}}function Ge(je,tt,xt,Ie,xe){(je.depth&1?Tr:st)(je,tt,xt,Ie,xe)}var Je=function je(tt){function xt(Ie,xe,ke,vt,ir){if((ar=Ie._squarify)&&ar.ratio===tt)for(var ar,vr,ii,pi,$r=-1,di,ji=ar.length,In=Ie.value;++$r1?Ie:1)},xt}(Lr);e.cluster=l,e.hierarchy=x,e.pack=ce,e.packEnclose=V,e.packSiblings=Le,e.partition=lt,e.stratify=cr,e.tree=lr,e.treemap=Vr,e.treemapBinary=dt,e.treemapDice=st,e.treemapResquarify=Je,e.treemapSlice=Tr,e.treemapSliceDice=Ge,e.treemapSquarify=Br,Object.defineProperty(e,"__esModule",{value:!0})})});var RE=ye(IE=>{"use strict";var $ke=PE(),h6t=Eo(),MA=Dr(),d6t=tc().makeColorScaleFuncFromTrace,v6t=TA().makePullColorFn,p6t=TA().generateExtendedColors,g6t=tc().calc,m6t=fs().ALMOST_EQUAL,y6t={},_6t={},x6t={};IE.calc=function(e,t){var r=e._fullLayout,n=t.ids,i=MA.isArrayOrTypedArray(n),a=t.labels,o=t.parents,s=t.values,l=MA.isArrayOrTypedArray(s),u=[],c={},f={},h=function(j,N){c[j]?c[j].push(N):c[j]=[N],f[N]=1},d=function(j){return j||typeof j=="number"},v=function(j){return!l||h6t(s[j])&&s[j]>=0},_,b,p;i?(_=Math.min(n.length,o.length),b=function(j){return d(n[j])&&v(j)},p=function(j){return String(n[j])}):(_=Math.min(a.length,o.length),b=function(j){return d(a[j])&&v(j)},p=function(j){return String(a[j])}),l&&(_=Math.min(_,s.length));for(var k=0;k<_;k++)if(b(k)){var E=p(k),S=d(o[k])?String(o[k]):"",L={i:k,id:E,pid:S,label:d(a[k])?String(a[k]):""};l&&(L.v=+s[k]),u.push(L),h(S,E)}if(c[""]){if(c[""].length>1){for(var M=MA.randstr(),g=0;g{});function Gm(){}function tCe(){return this.rgb().formatHex()}function k6t(){return this.rgb().formatHex8()}function C6t(){return lCe(this).formatHsl()}function rCe(){return this.rgb().formatRgb()}function j_(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=b6t.exec(e))?(r=t[1].length,t=parseInt(t[1],16),r===6?iCe(t):r===3?new _d(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):r===8?wD(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?wD(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=w6t.exec(e))?new _d(t[1],t[2],t[3],1):(t=T6t.exec(e))?new _d(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=A6t.exec(e))?wD(t[1],t[2],t[3],t[4]):(t=S6t.exec(e))?wD(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=M6t.exec(e))?oCe(t[1],t[2]/100,t[3]/100,1):(t=E6t.exec(e))?oCe(t[1],t[2]/100,t[3]/100,t[4]):eCe.hasOwnProperty(e)?iCe(eCe[e]):e==="transparent"?new _d(NaN,NaN,NaN,0):null}function iCe(e){return new _d(e>>16&255,e>>8&255,e&255,1)}function wD(e,t,r,n){return n<=0&&(e=t=r=NaN),new _d(e,t,r,n)}function FE(e){return e instanceof Gm||(e=j_(e)),e?(e=e.rgb(),new _d(e.r,e.g,e.b,e.opacity)):new _d}function kA(e,t,r,n){return arguments.length===1?FE(e):new _d(e,t,r,n==null?1:n)}function _d(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}function nCe(){return`#${k2(this.r)}${k2(this.g)}${k2(this.b)}`}function L6t(){return`#${k2(this.r)}${k2(this.g)}${k2(this.b)}${k2((isNaN(this.opacity)?1:this.opacity)*255)}`}function aCe(){let e=AD(this.opacity);return`${e===1?"rgb(":"rgba("}${C2(this.r)}, ${C2(this.g)}, ${C2(this.b)}${e===1?")":`, ${e})`}`}function AD(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function C2(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function k2(e){return e=C2(e),(e<16?"0":"")+e.toString(16)}function oCe(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Zg(e,t,r,n)}function lCe(e){if(e instanceof Zg)return new Zg(e.h,e.s,e.l,e.opacity);if(e instanceof Gm||(e=j_(e)),!e)return new Zg;if(e instanceof Zg)return e;e=e.rgb();var t=e.r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=NaN,s=a-i,l=(a+i)/2;return s?(t===a?o=(r-n)/s+(r0&&l<1?0:o,new Zg(o,s,l,e.opacity)}function zE(e,t,r,n){return arguments.length===1?lCe(e):new Zg(e,t,r,n==null?1:n)}function Zg(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}function sCe(e){return e=(e||0)%360,e<0?e+360:e}function TD(e){return Math.max(0,Math.min(1,e||0))}function xW(e,t,r){return(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)*255}var H_,L2,EA,DE,Vm,b6t,w6t,T6t,A6t,S6t,M6t,E6t,eCe,SD=gu(()=>{bD();H_=.7,L2=1/H_,EA="\\s*([+-]?\\d+)\\s*",DE="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Vm="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",b6t=/^#([0-9a-f]{3,8})$/,w6t=new RegExp(`^rgb\\(${EA},${EA},${EA}\\)$`),T6t=new RegExp(`^rgb\\(${Vm},${Vm},${Vm}\\)$`),A6t=new RegExp(`^rgba\\(${EA},${EA},${EA},${DE}\\)$`),S6t=new RegExp(`^rgba\\(${Vm},${Vm},${Vm},${DE}\\)$`),M6t=new RegExp(`^hsl\\(${DE},${Vm},${Vm}\\)$`),E6t=new RegExp(`^hsla\\(${DE},${Vm},${Vm},${DE}\\)$`),eCe={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};Zy(Gm,j_,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:tCe,formatHex:tCe,formatHex8:k6t,formatHsl:C6t,formatRgb:rCe,toString:rCe});Zy(_d,kA,G_(Gm,{brighter(e){return e=e==null?L2:Math.pow(L2,e),new _d(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new _d(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new _d(C2(this.r),C2(this.g),C2(this.b),AD(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:nCe,formatHex:nCe,formatHex8:L6t,formatRgb:aCe,toString:aCe}));Zy(Zg,zE,G_(Gm,{brighter(e){return e=e==null?L2:Math.pow(L2,e),new Zg(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new Zg(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new _d(xW(e>=240?e-240:e+120,i,n),xW(e,i,n),xW(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new Zg(sCe(this.h),TD(this.s),TD(this.l),AD(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=AD(this.opacity);return`${e===1?"hsl(":"hsla("}${sCe(this.h)}, ${TD(this.s)*100}%, ${TD(this.l)*100}%${e===1?")":`, ${e})`}`}}))});var MD,ED,bW=gu(()=>{MD=Math.PI/180,ED=180/Math.PI});function vCe(e){if(e instanceof Hm)return new Hm(e.l,e.a,e.b,e.opacity);if(e instanceof Yy)return pCe(e);e instanceof _d||(e=FE(e));var t=SW(e.r),r=SW(e.g),n=SW(e.b),i=wW((.2225045*t+.7168786*r+.0606169*n)/cCe),a,o;return t===r&&r===n?a=o=i:(a=wW((.4360747*t+.3850649*r+.1430804*n)/uCe),o=wW((.0139322*t+.0971045*r+.7141733*n)/fCe)),new Hm(116*i-16,500*(a-i),200*(i-o),e.opacity)}function LA(e,t,r,n){return arguments.length===1?vCe(e):new Hm(e,t,r,n==null?1:n)}function Hm(e,t,r,n){this.l=+e,this.a=+t,this.b=+r,this.opacity=+n}function wW(e){return e>P6t?Math.pow(e,1/3):e/dCe+hCe}function TW(e){return e>CA?e*e*e:dCe*(e-hCe)}function AW(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function SW(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function I6t(e){if(e instanceof Yy)return new Yy(e.h,e.c,e.l,e.opacity);if(e instanceof Hm||(e=vCe(e)),e.a===0&&e.b===0)return new Yy(NaN,0{bD();SD();bW();kD=18,uCe=.96422,cCe=1,fCe=.82521,hCe=4/29,CA=6/29,dCe=3*CA*CA,P6t=CA*CA*CA;Zy(Hm,LA,G_(Gm,{brighter(e){return new Hm(this.l+kD*(e==null?1:e),this.a,this.b,this.opacity)},darker(e){return new Hm(this.l-kD*(e==null?1:e),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,r=isNaN(this.b)?e:e-this.b/200;return t=uCe*TW(t),e=cCe*TW(e),r=fCe*TW(r),new _d(AW(3.1338561*t-1.6168667*e-.4906146*r),AW(-.9787684*t+1.9161415*e+.033454*r),AW(.0719453*t-.2289914*e+1.4052427*r),this.opacity)}}));Zy(Yy,OE,G_(Gm,{brighter(e){return new Yy(this.h,this.c,this.l+kD*(e==null?1:e),this.opacity)},darker(e){return new Yy(this.h,this.c,this.l-kD*(e==null?1:e),this.opacity)},rgb(){return pCe(this).rgb()}}))});function R6t(e){if(e instanceof P2)return new P2(e.h,e.s,e.l,e.opacity);e instanceof _d||(e=FE(e));var t=e.r/255,r=e.g/255,n=e.b/255,i=(_Ce*n+mCe*t-yCe*r)/(_Ce+mCe-yCe),a=n-i,o=(qE*(r-i)-EW*a)/CD,s=Math.sqrt(o*o+a*a)/(qE*i*(1-i)),l=s?Math.atan2(o,a)*ED-120:NaN;return new P2(l<0?l+360:l,s,i,e.opacity)}function PA(e,t,r,n){return arguments.length===1?R6t(e):new P2(e,t,r,n==null?1:n)}function P2(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}var xCe,MW,EW,CD,qE,mCe,yCe,_Ce,bCe=gu(()=>{bD();SD();bW();xCe=-.14861,MW=1.78277,EW=-.29227,CD=-.90649,qE=1.97294,mCe=qE*CD,yCe=qE*MW,_Ce=MW*EW-CD*xCe;Zy(P2,PA,G_(Gm,{brighter(e){return e=e==null?L2:Math.pow(L2,e),new P2(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?H_:Math.pow(H_,e),new P2(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=isNaN(this.h)?0:(this.h+120)*MD,t=+this.l,r=isNaN(this.s)?0:this.s*t*(1-t),n=Math.cos(e),i=Math.sin(e);return new _d(255*(t+r*(xCe*n+MW*i)),255*(t+r*(EW*n+CD*i)),255*(t+r*(qE*n)),this.opacity)}}))});var I2=gu(()=>{SD();gCe();bCe()});function kW(e,t,r,n,i){var a=e*e,o=a*e;return((1-3*e+3*a-o)*t+(4-6*a+3*o)*r+(1+3*e+3*a-3*o)*n+o*i)/6}function LD(e){var t=e.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,t-1):Math.floor(r*t),i=e[n],a=e[n+1],o=n>0?e[n-1]:2*i-a,s=n{});function ID(e){var t=e.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*t),i=e[(n+t-1)%t],a=e[n%t],o=e[(n+1)%t],s=e[(n+2)%t];return kW((r-n/t)*t,i,a,o,s)}}var CW=gu(()=>{PD()});var IA,LW=gu(()=>{IA=e=>()=>e});function wCe(e,t){return function(r){return e+r*t}}function D6t(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}function W_(e,t){var r=t-e;return r?wCe(e,r>180||r<-180?r-360*Math.round(r/360):r):IA(isNaN(e)?t:e)}function TCe(e){return(e=+e)==1?$f:function(t,r){return r-t?D6t(t,r,e):IA(isNaN(t)?r:t)}}function $f(e,t){var r=t-e;return r?wCe(e,r):IA(isNaN(e)?t:e)}var R2=gu(()=>{LW()});function ACe(e){return function(t){var r=t.length,n=new Array(r),i=new Array(r),a=new Array(r),o,s;for(o=0;o{I2();PD();CW();R2();BE=function e(t){var r=TCe(t);function n(i,a){var o=r((i=kA(i)).r,(a=kA(a)).r),s=r(i.g,a.g),l=r(i.b,a.b),u=$f(i.opacity,a.opacity);return function(c){return i.r=o(c),i.g=s(c),i.b=l(c),i.opacity=u(c),i+""}}return n.gamma=e,n}(1);SCe=ACe(LD),MCe=ACe(ID)});function RA(e,t){t||(t=[]);var r=e?Math.min(t.length,e.length):0,n=t.slice(),i;return function(a){for(i=0;i{});function ECe(e,t){return(RD(t)?RA:IW)(e,t)}function IW(e,t){var r=t?t.length:0,n=e?Math.min(r,e.length):0,i=new Array(n),a=new Array(r),o;for(o=0;o{NE();DD()});function FD(e,t){var r=new Date;return e=+e,t=+t,function(n){return r.setTime(e*(1-n)+t*n),r}}var DW=gu(()=>{});function zp(e,t){return e=+e,t=+t,function(r){return e*(1-r)+t*r}}var UE=gu(()=>{});function zD(e,t){var r={},n={},i;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(i in t)i in e?r[i]=X_(e[i],t[i]):n[i]=t[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var FW=gu(()=>{NE()});function F6t(e){return function(){return e}}function z6t(e){return function(t){return e(t)+""}}function OD(e,t){var r=OW.lastIndex=zW.lastIndex=0,n,i,a,o=-1,s=[],l=[];for(e=e+"",t=t+"";(n=OW.exec(e))&&(i=zW.exec(t));)(a=i.index)>r&&(a=t.slice(r,a),s[o]?s[o]+=a:s[++o]=a),(n=n[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,l.push({i:o,x:zp(n,i)})),r=zW.lastIndex;return r{UE();OW=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,zW=new RegExp(OW.source,"g")});function X_(e,t){var r=typeof t,n;return t==null||r==="boolean"?IA(t):(r==="number"?zp:r==="string"?(n=j_(t))?(t=n,BE):OD:t instanceof j_?BE:t instanceof Date?FD:RD(t)?RA:Array.isArray(t)?IW:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?zD:zp)(e,t)}var NE=gu(()=>{I2();PW();RW();DW();UE();FW();qW();LW();DD()});function kCe(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}}var CCe=gu(()=>{});function LCe(e,t){var r=W_(+e,+t);return function(n){var i=r(n);return i-360*Math.floor(i/360)}}var PCe=gu(()=>{R2()});function ICe(e,t){return e=+e,t=+t,function(r){return Math.round(e*(1-r)+t*r)}}var RCe=gu(()=>{});function BW(e,t,r,n,i,a){var o,s,l;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(l=e*r+t*n)&&(r-=e*l,n-=t*l),(s=Math.sqrt(r*r+n*n))&&(r/=s,n/=s,l/=s),e*n{DCe=180/Math.PI,qD={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}});function zCe(e){let t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?qD:BW(t.a,t.b,t.c,t.d,t.e,t.f)}function OCe(e){return e==null?qD:(BD||(BD=document.createElementNS("http://www.w3.org/2000/svg","g")),BD.setAttribute("transform",e),(e=BD.transform.baseVal.consolidate())?(e=e.matrix,BW(e.a,e.b,e.c,e.d,e.e,e.f)):qD)}var BD,qCe=gu(()=>{FCe()});function BCe(e,t,r,n){function i(u){return u.length?u.pop()+" ":""}function a(u,c,f,h,d,v){if(u!==f||c!==h){var _=d.push("translate(",null,t,null,r);v.push({i:_-4,x:zp(u,f)},{i:_-2,x:zp(c,h)})}else(f||h)&&d.push("translate("+f+t+h+r)}function o(u,c,f,h){u!==c?(u-c>180?c+=360:c-u>180&&(u+=360),h.push({i:f.push(i(f)+"rotate(",null,n)-2,x:zp(u,c)})):c&&f.push(i(f)+"rotate("+c+n)}function s(u,c,f,h){u!==c?h.push({i:f.push(i(f)+"skewX(",null,n)-2,x:zp(u,c)}):c&&f.push(i(f)+"skewX("+c+n)}function l(u,c,f,h,d,v){if(u!==f||c!==h){var _=d.push(i(d)+"scale(",null,",",null,")");v.push({i:_-4,x:zp(u,f)},{i:_-2,x:zp(c,h)})}else(f!==1||h!==1)&&d.push(i(d)+"scale("+f+","+h+")")}return function(u,c){var f=[],h=[];return u=e(u),c=e(c),a(u.translateX,u.translateY,c.translateX,c.translateY,f,h),o(u.rotate,c.rotate,f,h),s(u.skewX,c.skewX,f,h),l(u.scaleX,u.scaleY,c.scaleX,c.scaleY,f,h),u=c=null,function(d){for(var v=-1,_=h.length,b;++v<_;)f[(b=h[v]).i]=b.x(d);return f.join("")}}}var NCe,UCe,VCe=gu(()=>{UE();qCe();NCe=BCe(zCe,"px, ","px)","deg)"),UCe=BCe(OCe,", ",")",")")});function GCe(e){return((e=Math.exp(e))+1/e)/2}function q6t(e){return((e=Math.exp(e))-1/e)/2}function B6t(e){return((e=Math.exp(2*e))-1)/(e+1)}var O6t,HCe,jCe=gu(()=>{O6t=1e-12;HCe=function e(t,r,n){function i(a,o){var s=a[0],l=a[1],u=a[2],c=o[0],f=o[1],h=o[2],d=c-s,v=f-l,_=d*d+v*v,b,p;if(_{I2();R2();XCe=WCe(W_),ZCe=WCe($f)});function NW(e,t){var r=$f((e=LA(e)).l,(t=LA(t)).l),n=$f(e.a,t.a),i=$f(e.b,t.b),a=$f(e.opacity,t.opacity);return function(o){return e.l=r(o),e.a=n(o),e.b=i(o),e.opacity=a(o),e+""}}var KCe=gu(()=>{I2();R2()});function JCe(e){return function(t,r){var n=e((t=OE(t)).h,(r=OE(r)).h),i=$f(t.c,r.c),a=$f(t.l,r.l),o=$f(t.opacity,r.opacity);return function(s){return t.h=n(s),t.c=i(s),t.l=a(s),t.opacity=o(s),t+""}}}var $Ce,QCe,e6e=gu(()=>{I2();R2();$Ce=JCe(W_),QCe=JCe($f)});function t6e(e){return function t(r){r=+r;function n(i,a){var o=e((i=PA(i)).h,(a=PA(a)).h),s=$f(i.s,a.s),l=$f(i.l,a.l),u=$f(i.opacity,a.opacity);return function(c){return i.h=o(c),i.s=s(c),i.l=l(Math.pow(c,r)),i.opacity=u(c),i+""}}return n.gamma=t,n}(1)}var r6e,i6e,n6e=gu(()=>{I2();R2();r6e=t6e(W_),i6e=t6e($f)});function UW(e,t){t===void 0&&(t=e,e=X_);for(var r=0,n=t.length-1,i=t[0],a=new Array(n<0?0:n);r{NE()});function o6e(e,t){for(var r=new Array(t),n=0;n{});var D2={};cee(D2,{interpolate:()=>X_,interpolateArray:()=>ECe,interpolateBasis:()=>LD,interpolateBasisClosed:()=>ID,interpolateCubehelix:()=>r6e,interpolateCubehelixLong:()=>i6e,interpolateDate:()=>FD,interpolateDiscrete:()=>kCe,interpolateHcl:()=>$Ce,interpolateHclLong:()=>QCe,interpolateHsl:()=>XCe,interpolateHslLong:()=>ZCe,interpolateHue:()=>LCe,interpolateLab:()=>NW,interpolateNumber:()=>zp,interpolateNumberArray:()=>RA,interpolateObject:()=>zD,interpolateRgb:()=>BE,interpolateRgbBasis:()=>SCe,interpolateRgbBasisClosed:()=>MCe,interpolateRound:()=>ICe,interpolateString:()=>OD,interpolateTransformCss:()=>NCe,interpolateTransformSvg:()=>UCe,interpolateZoom:()=>HCe,piecewise:()=>UW,quantize:()=>o6e});var F2=gu(()=>{NE();RW();PD();CW();DW();CCe();PCe();UE();DD();FW();RCe();qW();VCe();jCe();PW();YCe();KCe();e6e();n6e();a6e();s6e()});var ND=ye((Ypr,l6e)=>{"use strict";var N6t=So(),U6t=ka();l6e.exports=function(t,r,n,i,a){var o=r.data.data,s=o.i,l=a||o.color;if(s>=0){r.i=o.i;var u=n.marker;u.pattern?(!u.colors||!u.pattern.shape)&&(u.color=l,r.color=l):(u.color=l,r.color=l),N6t.pointStyle(t,n,i,r)}else U6t.fill(t,l)}});var VW=ye((Kpr,d6e)=>{"use strict";var u6e=Oa(),c6e=ka(),f6e=Dr(),V6t=bv().resizeText,G6t=ND();function H6t(e){var t=e._fullLayout._sunburstlayer.selectAll(".trace");V6t(e,t,"sunburst"),t.each(function(r){var n=u6e.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){u6e.select(this).call(h6e,o,a,e)})})}function h6e(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=f6e.castOption(r,o,"marker.line.color")||c6e.defaultLine,l=f6e.castOption(r,o,"marker.line.width")||0;e.call(G6t,t,r,n).style("stroke-width",l).call(c6e.stroke,s).style("opacity",a?r.leaf.opacity:null)}d6e.exports={style:H6t,styleOne:h6e}});var Ky=ye(Bs=>{"use strict";var z2=Dr(),j6t=ka(),W6t=Sg(),v6e=l_();Bs.findEntryWithLevel=function(e,t){var r;return t&&e.eachAfter(function(n){if(Bs.getPtId(n)===t)return r=n.copy()}),r||e};Bs.findEntryWithChild=function(e,t){var r;return e.eachAfter(function(n){for(var i=n.children||[],a=0;a0)};Bs.getMaxDepth=function(e){return e.maxdepth>=0?e.maxdepth:1/0};Bs.isHeader=function(e,t){return!(Bs.isLeaf(e)||e.depth===t._maxDepth-1)};function p6e(e){return e.data.data.pid}Bs.getParent=function(e,t){return Bs.findEntryWithLevel(e,p6e(t))};Bs.listPath=function(e,t){var r=e.parent;if(!r)return[];var n=t?[r.data[t]]:[r];return Bs.listPath(r,t).concat(n)};Bs.getPath=function(e){return Bs.listPath(e,"label").join("/")+"/"};Bs.formatValue=v6e.formatPieValue;Bs.formatPercent=function(e,t){var r=z2.formatPercent(e,0);return r==="0%"&&(r=v6e.formatPiePercent(e,t)),r}});var HE=ye(($pr,y6e)=>{"use strict";var DA=Oa(),g6e=qa(),Y6t=ip().appendArrayPointValue,VE=vf(),m6e=Dr(),K6t=_3(),rd=Ky(),J6t=l_(),$6t=J6t.formatPieValue;y6e.exports=function(t,r,n,i,a){var o=i[0],s=o.trace,l=o.hierarchy,u=s.type==="sunburst",c=s.type==="treemap"||s.type==="icicle";"_hasHoverLabel"in s||(s._hasHoverLabel=!1),"_hasHoverEvent"in s||(s._hasHoverEvent=!1);var f=function(v){var _=n._fullLayout;if(!(n._dragging||_.hovermode===!1)){var b=n._fullData[s.index],p=v.data.data,k=p.i,E=rd.isHierarchyRoot(v),S=rd.getParent(l,v),L=rd.getValue(v),x=function(Ee){return m6e.castOption(b,k,Ee)},C=x("hovertemplate"),M=VE.castHoverinfo(b,_,k),g=_.separators,P;if(C||M&&M!=="none"&&M!=="skip"){var T,z;u&&(T=o.cx+v.pxmid[0]*(1-v.rInscribed),z=o.cy+v.pxmid[1]*(1-v.rInscribed)),c&&(T=v._hoverX,z=v._hoverY);var O={},V=[],G=[],Z=function(Ee){return V.indexOf(Ee)!==-1};M&&(V=M==="all"?b._module.attributes.hoverinfo.flags:M.split("+")),O.label=p.label,Z("label")&&O.label&&G.push(O.label),p.hasOwnProperty("v")&&(O.value=p.v,O.valueLabel=$6t(O.value,g),Z("value")&&G.push(O.valueLabel)),O.currentPath=v.currentPath=rd.getPath(v.data),Z("current path")&&!E&&G.push(O.currentPath);var j,N=[],H=function(){N.indexOf(j)===-1&&(G.push(j),N.push(j))};O.percentParent=v.percentParent=L/rd.getValue(S),O.parent=v.parentString=rd.getPtLabel(S),Z("percent parent")&&(j=rd.formatPercent(O.percentParent,g)+" of "+O.parent,H()),O.percentEntry=v.percentEntry=L/rd.getValue(r),O.entry=v.entry=rd.getPtLabel(r),Z("percent entry")&&!E&&!v.onPathbar&&(j=rd.formatPercent(O.percentEntry,g)+" of "+O.entry,H()),O.percentRoot=v.percentRoot=L/rd.getValue(l),O.root=v.root=rd.getPtLabel(l),Z("percent root")&&!E&&(j=rd.formatPercent(O.percentRoot,g)+" of "+O.root,H()),O.text=x("hovertext")||x("text"),Z("text")&&(j=O.text,m6e.isValidTextValue(j)&&G.push(j)),P=[GE(v,b,a.eventDataKeys)];var te={trace:b,y:z,_x0:v._x0,_x1:v._x1,_y0:v._y0,_y1:v._y1,text:G.join("
"),name:C||Z("name")?b.name:void 0,color:x("hoverlabel.bgcolor")||p.color,borderColor:x("hoverlabel.bordercolor"),fontFamily:x("hoverlabel.font.family"),fontSize:x("hoverlabel.font.size"),fontColor:x("hoverlabel.font.color"),fontWeight:x("hoverlabel.font.weight"),fontStyle:x("hoverlabel.font.style"),fontVariant:x("hoverlabel.font.variant"),nameLength:x("hoverlabel.namelength"),textAlign:x("hoverlabel.align"),hovertemplate:C,hovertemplateLabels:O,eventData:P};u&&(te.x0=T-v.rInscribed*v.rpx1,te.x1=T+v.rInscribed*v.rpx1,te.idealAlign=v.pxmid[0]<0?"left":"right"),c&&(te.x=T,te.idealAlign=T<0?"left":"right");var oe=[];VE.loneHover(te,{container:_._hoverlayer.node(),outerContainer:_._paper.node(),gd:n,inOut_bbox:oe}),P[0].bbox=oe[0],s._hasHoverLabel=!0}if(c){var _e=t.select("path.surface");a.styleOne(_e,v,b,n,{hovered:!0})}s._hasHoverEvent=!0,n.emit("plotly_hover",{points:P||[GE(v,b,a.eventDataKeys)],event:DA.event})}},h=function(v){var _=n._fullLayout,b=n._fullData[s.index],p=DA.select(this).datum();if(s._hasHoverEvent&&(v.originalEvent=DA.event,n.emit("plotly_unhover",{points:[GE(p,b,a.eventDataKeys)],event:DA.event}),s._hasHoverEvent=!1),s._hasHoverLabel&&(VE.loneUnhover(_._hoverlayer.node()),s._hasHoverLabel=!1),c){var k=t.select("path.surface");a.styleOne(k,p,b,n,{hovered:!1})}},d=function(v){var _=n._fullLayout,b=n._fullData[s.index],p=u&&(rd.isHierarchyRoot(v)||rd.isLeaf(v)),k=rd.getPtId(v),E=rd.isEntry(v)?rd.findEntryWithChild(l,k):rd.findEntryWithLevel(l,k),S=rd.getPtId(E),L={points:[GE(v,b,a.eventDataKeys)],event:DA.event};p||(L.nextLevel=S);var x=K6t.triggerHandler(n,"plotly_"+s.type+"click",L);if(x!==!1&&_.hovermode&&(n._hoverdata=[GE(v,b,a.eventDataKeys)],VE.click(n,DA.event)),!p&&x!==!1&&!n._dragging&&!n._transitioning){g6e.call("_storeDirectGUIEdit",b,_._tracePreGUI[b.uid],{level:b.level});var C={data:[{level:S}],traces:[s.index]},M={frame:{redraw:!1,duration:a.transitionTime},transition:{duration:a.transitionTime,easing:a.transitionEasing},mode:"immediate",fromcurrent:!0};VE.loneUnhover(_._hoverlayer.node()),g6e.call("animate",n,C,M)}};t.on("mouseover",f),t.on("mouseout",h),t.on("click",d)};function GE(e,t,r){for(var n=e.data.data,i={curveNumber:t.index,pointNumber:n.i,data:t._input,fullData:t},a=0;a{"use strict";var jE=Oa(),Q6t=PE(),Yg=(F2(),ob(D2)).interpolate,_6e=So(),Av=Dr(),eLt=ru(),T6e=bv(),x6e=T6e.recordMinTextSize,tLt=T6e.clearMinTextSize,A6e=_D(),rLt=l_().getRotationAngle,iLt=A6e.computeTransform,nLt=A6e.transformInsideText,aLt=VW().styleOne,oLt=N0().resizeText,sLt=HE(),GW=yW(),Rl=Ky();UD.plot=function(e,t,r,n){var i=e._fullLayout,a=i._sunburstlayer,o,s,l=!r,u=!i.uniformtext.mode&&Rl.hasTransition(r);if(tLt("sunburst",i),o=a.selectAll("g.trace.sunburst").data(t,function(f){return f[0].trace.uid}),o.enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),o.order(),u){n&&(s=n());var c=jE.transition().duration(r.duration).ease(r.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});c.each(function(){a.selectAll("g.trace").each(function(f){b6e(e,f,this,r)})})}else o.each(function(f){b6e(e,f,this,r)}),i.uniformtext.mode&&oLt(e,i._sunburstlayer.selectAll(".trace"),"sunburst");l&&o.exit().remove()};function b6e(e,t,r,n){var i=e._context.staticPlot,a=e._fullLayout,o=!a.uniformtext.mode&&Rl.hasTransition(n),s=jE.select(r),l=s.selectAll("g.slice"),u=t[0],c=u.trace,f=u.hierarchy,h=Rl.findEntryWithLevel(f,c.level),d=Rl.getMaxDepth(c),v=a._size,_=c.domain,b=v.w*(_.x[1]-_.x[0]),p=v.h*(_.y[1]-_.y[0]),k=.5*Math.min(b,p),E=u.cx=v.l+v.w*(_.x[1]+_.x[0])/2,S=u.cy=v.t+v.h*(1-_.y[0])-p/2;if(!h)return l.remove();var L=null,x={};o&&l.each(function(me){x[Rl.getPtId(me)]={rpx0:me.rpx0,rpx1:me.rpx1,x0:me.x0,x1:me.x1,transform:me.transform},!L&&Rl.isEntry(me)&&(L=me)});var C=lLt(h).descendants(),M=h.height+1,g=0,P=d;u.hasMultipleRoots&&Rl.isHierarchyRoot(h)&&(C=C.slice(1),M-=1,g=1,P+=1),C=C.filter(function(me){return me.y1<=P});var T=rLt(c.rotation);T&&C.forEach(function(me){me.x0+=T,me.x1+=T});var z=Math.min(M,d),O=function(me){return(me-g)/z*k},V=function(me,ie){return[me*Math.cos(ie),-me*Math.sin(ie)]},G=function(me){return Av.pathAnnulus(me.rpx0,me.rpx1,me.x0,me.x1,E,S)},Z=function(me){return E+w6e(me)[0]*(me.transform.rCenter||0)+(me.transform.x||0)},j=function(me){return S+w6e(me)[1]*(me.transform.rCenter||0)+(me.transform.y||0)};l=l.data(C,Rl.getPtId),l.enter().append("g").classed("slice",!0),o?l.exit().transition().each(function(){var me=jE.select(this),ie=me.select("path.surface");ie.transition().attrTween("d",function(Le){var Ae=oe(Le);return function(Fe){return G(Ae(Fe))}});var Se=me.select("g.slicetext");Se.attr("opacity",0)}).remove():l.exit().remove(),l.order();var N=null;if(o&&L){var H=Rl.getPtId(L);l.each(function(me){N===null&&Rl.getPtId(me)===H&&(N=me.x1)})}var te=l;o&&(te=te.transition().each("end",function(){var me=jE.select(this);Rl.setSliceCursor(me,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})})),te.each(function(me){var ie=jE.select(this),Se=Av.ensureSingle(ie,"path","surface",function(Re){Re.style("pointer-events",i?"none":"all")});me.rpx0=O(me.y0),me.rpx1=O(me.y1),me.xmid=(me.x0+me.x1)/2,me.pxmid=V(me.rpx1,me.xmid),me.midangle=-(me.xmid-Math.PI/2),me.startangle=-(me.x0-Math.PI/2),me.stopangle=-(me.x1-Math.PI/2),me.halfangle=.5*Math.min(Av.angleDelta(me.x0,me.x1)||Math.PI,Math.PI),me.ring=1-me.rpx0/me.rpx1,me.rInscribed=uLt(me,c),o?Se.transition().attrTween("d",function(Re){var ce=_e(Re);return function(Ze){return G(ce(Ze))}}):Se.attr("d",G),ie.call(sLt,h,e,t,{eventDataKeys:GW.eventDataKeys,transitionTime:GW.CLICK_TRANSITION_TIME,transitionEasing:GW.CLICK_TRANSITION_EASING}).call(Rl.setSliceCursor,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:e._transitioning}),Se.call(aLt,me,c,e);var Le=Av.ensureSingle(ie,"g","slicetext"),Ae=Av.ensureSingle(Le,"text","",function(Re){Re.attr("data-notex",1)}),Fe=Av.ensureUniformFontSize(e,Rl.determineTextFont(c,me,a.font));Ae.text(UD.formatSliceLabel(me,h,c,t,a)).classed("slicetext",!0).attr("text-anchor","middle").call(_6e.font,Fe).call(eLt.convertToTspans,e);var Pe=_6e.bBox(Ae.node());me.transform=nLt(Pe,me,u),me.transform.targetX=Z(me),me.transform.targetY=j(me);var ge=function(Re,ce){var Ze=Re.transform;return iLt(Ze,ce),Ze.fontSize=Fe.size,x6e(c.type,Ze,a),Av.getTextTransform(Ze)};o?Ae.transition().attrTween("transform",function(Re){var ce=Ee(Re);return function(Ze){return ge(ce(Ze),Pe)}}):Ae.attr("transform",ge(me,Pe))});function oe(me){var ie=Rl.getPtId(me),Se=x[ie],Le=x[Rl.getPtId(h)],Ae;if(Le){var Fe=(me.x1>Le.x1?2*Math.PI:0)+T;Ae=me.rpx1N?2*Math.PI:0)+T;Se={x0:Ae,x1:Ae}}else Se={rpx0:k,rpx1:k},Av.extendFlat(Se,Ce(me));else Se={rpx0:0,rpx1:0};else Se={x0:T,x1:T};return Yg(Se,Le)}function Ee(me){var ie=x[Rl.getPtId(me)],Se,Le=me.transform;if(ie)Se=ie;else if(Se={rpx1:me.rpx1,transform:{textPosAngle:Le.textPosAngle,scale:0,rotate:Le.rotate,rCenter:Le.rCenter,x:Le.x,y:Le.y}},L)if(me.parent)if(N){var Ae=me.x1>N?2*Math.PI:0;Se.x0=Se.x1=Ae}else Av.extendFlat(Se,Ce(me));else Se.x0=Se.x1=T;else Se.x0=Se.x1=T;var Fe=Yg(Se.transform.textPosAngle,me.transform.textPosAngle),Pe=Yg(Se.rpx1,me.rpx1),ge=Yg(Se.x0,me.x0),Re=Yg(Se.x1,me.x1),ce=Yg(Se.transform.scale,Le.scale),Ze=Yg(Se.transform.rotate,Le.rotate),ut=Le.rCenter===0?3:Se.transform.rCenter===0?1/3:1,pt=Yg(Se.transform.rCenter,Le.rCenter),Zt=function(st){return pt(Math.pow(st,ut))};return function(st){var lt=Pe(st),Gt=ge(st),Nt=Re(st),Jt=Zt(st),sr=V(lt,(Gt+Nt)/2),wr=Fe(st),cr={pxmid:sr,rpx1:lt,transform:{textPosAngle:wr,rCenter:Jt,x:Le.x,y:Le.y}};return x6e(c.type,Le,a),{transform:{targetX:Z(cr),targetY:j(cr),scale:ce(st),rotate:Ze(st),rCenter:Jt}}}}function Ce(me){var ie=me.parent,Se=x[Rl.getPtId(ie)],Le={};if(Se){var Ae=ie.children,Fe=Ae.indexOf(me),Pe=Ae.length,ge=Yg(Se.x0,Se.x1);Le.x0=ge(Fe/Pe),Le.x1=ge(Fe/Pe)}else Le.x0=Le.x1=0;return Le}}function lLt(e){return Q6t.partition().size([2*Math.PI,e.height+1])(e)}UD.formatSliceLabel=function(e,t,r,n,i){var a=r.texttemplate,o=r.textinfo;if(!a&&(!o||o==="none"))return"";var s=i.separators,l=n[0],u=e.data.data,c=l.hierarchy,f=Rl.isHierarchyRoot(e),h=Rl.getParent(c,e),d=Rl.getValue(e);if(!a){var v=o.split("+"),_=function(g){return v.indexOf(g)!==-1},b=[],p;if(_("label")&&u.label&&b.push(u.label),u.hasOwnProperty("v")&&_("value")&&b.push(Rl.formatValue(u.v,s)),!f){_("current path")&&b.push(Rl.getPath(e.data));var k=0;_("percent parent")&&k++,_("percent entry")&&k++,_("percent root")&&k++;var E=k>1;if(k){var S,L=function(g){p=Rl.formatPercent(S,s),E&&(p+=" of "+g),b.push(p)};_("percent parent")&&!f&&(S=d/Rl.getValue(h),L("parent")),_("percent entry")&&(S=d/Rl.getValue(t),L("entry")),_("percent root")&&(S=d/Rl.getValue(c),L("root"))}}return _("text")&&(p=Av.castOption(r,u.i,"text"),Av.isValidTextValue(p)&&b.push(p)),b.join("
")}var x=Av.castOption(r,u.i,"texttemplate");if(!x)return"";var C={};u.label&&(C.label=u.label),u.hasOwnProperty("v")&&(C.value=u.v,C.valueLabel=Rl.formatValue(u.v,s)),C.currentPath=Rl.getPath(e.data),f||(C.percentParent=d/Rl.getValue(h),C.percentParentLabel=Rl.formatPercent(C.percentParent,s),C.parent=Rl.getPtLabel(h)),C.percentEntry=d/Rl.getValue(t),C.percentEntryLabel=Rl.formatPercent(C.percentEntry,s),C.entry=Rl.getPtLabel(t),C.percentRoot=d/Rl.getValue(c),C.percentRootLabel=Rl.formatPercent(C.percentRoot,s),C.root=Rl.getPtLabel(c),u.hasOwnProperty("color")&&(C.color=u.color);var M=Av.castOption(r,u.i,"text");return(Av.isValidTextValue(M)||M==="")&&(C.text=M),C.customdata=Av.castOption(r,u.i,"customdata"),Av.texttemplateString({data:[C,r._meta],fallback:r.texttemplatefallback,labels:C,locale:i._d3locale,template:x})};function uLt(e){return e.rpx0===0&&Av.isFullCircle([e.x0,e.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(e.halfangle)),e.ring/2))}function w6e(e){return cLt(e.rpx1,e.transform.textPosAngle)}function cLt(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}});var M6e=ye((e0r,S6e)=>{"use strict";S6e.exports={moduleType:"trace",name:"sunburst",basePlotModule:Bke(),categories:[],animatable:!0,attributes:LE(),layoutAttributes:_W(),supplyDefaults:Zke(),supplyLayoutDefaults:Kke(),calc:RE().calc,crossTraceCalc:RE().crossTraceCalc,plot:VD().plot,style:VW().style,colorbar:$d(),meta:{}}});var k6e=ye((t0r,E6e)=>{"use strict";E6e.exports=M6e()});var L6e=ye(FA=>{"use strict";var C6e=Mc();FA.name="treemap";FA.plot=function(e,t,r,n){C6e.plotBasePlot(FA.name,e,t,r,n)};FA.clean=function(e,t,r,n){C6e.cleanBasePlot(FA.name,e,t,r,n)}});var O2=ye((i0r,P6e)=>{"use strict";P6e.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}});var GD=ye((n0r,D6e)=>{"use strict";var{hovertemplateAttrs:fLt,texttemplateAttrs:hLt,templatefallbackAttrs:I6e}=Ll(),dLt=Tu(),vLt=Cc().attributes,q2=M2(),Q0=LE(),R6e=O2(),HW=Ao().extendFlat,pLt=Pd().pattern;D6e.exports={labels:Q0.labels,parents:Q0.parents,values:Q0.values,branchvalues:Q0.branchvalues,count:Q0.count,level:Q0.level,maxdepth:Q0.maxdepth,tiling:{packing:{valType:"enumerated",values:["squarify","binary","dice","slice","slice-dice","dice-slice"],dflt:"squarify",editType:"plot"},squarifyratio:{valType:"number",min:1,dflt:1,editType:"plot"},flip:{valType:"flaglist",flags:["x","y"],dflt:"",editType:"plot"},pad:{valType:"number",min:0,dflt:3,editType:"plot"},editType:"calc"},marker:HW({pad:{t:{valType:"number",min:0,editType:"plot"},l:{valType:"number",min:0,editType:"plot"},r:{valType:"number",min:0,editType:"plot"},b:{valType:"number",min:0,editType:"plot"},editType:"calc"},colors:Q0.marker.colors,pattern:pLt,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:Q0.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},dLt("marker",{colorAttr:"colors",anim:!1})),pathbar:{visible:{valType:"boolean",dflt:!0,editType:"plot"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},edgeshape:{valType:"enumerated",values:[">","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:HW({},q2.textfont,{}),editType:"calc"},text:q2.text,textinfo:Q0.textinfo,texttemplate:hLt({editType:"plot"},{keys:R6e.eventDataKeys.concat(["label","value"])}),texttemplatefallback:I6e({editType:"plot"}),hovertext:q2.hovertext,hoverinfo:Q0.hoverinfo,hovertemplate:fLt({},{keys:R6e.eventDataKeys}),hovertemplatefallback:I6e(),textfont:q2.textfont,insidetextfont:q2.insidetextfont,outsidetextfont:HW({},q2.outsidetextfont,{}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"top left",editType:"plot"},sort:q2.sort,root:Q0.root,domain:vLt({name:"treemap",trace:!0,editType:"calc"})}});var jW=ye((a0r,F6e)=>{"use strict";F6e.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var B6e=ye((o0r,q6e)=>{"use strict";var z6e=Dr(),gLt=GD(),mLt=ka(),yLt=Cc().defaults,_Lt=r0().handleText,xLt=e2().TEXTPAD,bLt=E2().handleMarkerDefaults,O6e=tc(),wLt=O6e.hasColorscale,TLt=O6e.handleDefaults;q6e.exports=function(t,r,n,i){function a(b,p){return z6e.coerce(t,r,gLt,b,p)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth");var u=a("tiling.packing");u==="squarify"&&a("tiling.squarifyratio"),a("tiling.flip"),a("tiling.pad");var c=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",z6e.isArrayOrTypedArray(c)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var f=a("pathbar.visible"),h="auto";_Lt(t,r,i,a,h,{hasPathbar:f,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition");var d=r.textposition.indexOf("bottom")!==-1;bLt(t,r,i,a);var v=r._hasColorscale=wLt(t,"marker","colors")||(t.marker||{}).coloraxis;v?TLt(t,r,i,a,{prefix:"marker.",cLetter:"c"}):a("marker.depthfade",!(r.marker.colors||[]).length);var _=r.textfont.size*2;a("marker.pad.t",d?_/4:_),a("marker.pad.l",_/4),a("marker.pad.r",_/4),a("marker.pad.b",d?_:_/4),a("marker.cornerradius"),r._hovered={marker:{line:{width:2,color:mLt.contrast(i.paper_bgcolor)}}},f&&(a("pathbar.thickness",r.pathbar.textfont.size+2*xLt),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),yLt(r,i,a),r._length=null}});var U6e=ye((s0r,N6e)=>{"use strict";var ALt=Dr(),SLt=jW();N6e.exports=function(t,r){function n(i,a){return ALt.coerce(t,r,SLt,i,a)}n("treemapcolorway",r.colorway),n("extendtreemapcolors")}});var XW=ye(WW=>{"use strict";var V6e=RE();WW.calc=function(e,t){return V6e.calc(e,t)};WW.crossTraceCalc=function(e){return V6e._runCrossTraceCalc("treemap",e)}});var ZW=ye((u0r,G6e)=>{"use strict";G6e.exports=function e(t,r,n){var i;n.swapXY&&(i=t.x0,t.x0=t.y0,t.y0=i,i=t.x1,t.x1=t.y1,t.y1=i),n.flipX&&(i=t.x0,t.x0=r[0]-t.x1,t.x1=r[0]-i),n.flipY&&(i=t.y0,t.y0=r[1]-t.y1,t.y1=r[1]-i);var a=t.children;if(a)for(var o=0;o{"use strict";var zA=PE(),MLt=ZW();H6e.exports=function(t,r,n){var i=n.flipX,a=n.flipY,o=n.packing==="dice-slice",s=n.pad[a?"bottom":"top"],l=n.pad[i?"right":"left"],u=n.pad[i?"left":"right"],c=n.pad[a?"top":"bottom"],f;o&&(f=l,l=s,s=f,f=u,u=c,c=f);var h=zA.treemap().tile(ELt(n.packing,n.squarifyratio)).paddingInner(n.pad.inner).paddingLeft(l).paddingRight(u).paddingTop(s).paddingBottom(c).size(o?[r[1],r[0]]:r)(t);return(o||i||a)&&MLt(h,r,{swapXY:o,flipX:i,flipY:a}),h};function ELt(e,t){switch(e){case"squarify":return zA.treemapSquarify.ratio(t);case"binary":return zA.treemapBinary;case"dice":return zA.treemapDice;case"slice":return zA.treemapSlice;default:return zA.treemapSliceDice}}});var HD=ye((f0r,Z6e)=>{"use strict";var j6e=Oa(),OA=ka(),W6e=Dr(),KW=Ky(),kLt=bv().resizeText,CLt=ND();function LLt(e){var t=e._fullLayout._treemaplayer.selectAll(".trace");kLt(e,t,"treemap"),t.each(function(r){var n=j6e.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){j6e.select(this).call(X6e,o,a,e,{hovered:!1})})})}function X6e(e,t,r,n,i){var a=(i||{}).hovered,o=t.data.data,s=o.i,l,u,c=o.color,f=KW.isHierarchyRoot(t),h=1;if(a)l=r._hovered.marker.line.color,u=r._hovered.marker.line.width;else if(f&&c===r.root.color)h=100,l="rgba(0,0,0,0)",u=0;else if(l=W6e.castOption(r,s,"marker.line.color")||OA.defaultLine,u=W6e.castOption(r,s,"marker.line.width")||0,!r._hasColorscale&&!t.onPathbar){var d=r.marker.depthfade;if(d){var v=OA.combine(OA.addOpacity(r._backgroundColor,.75),c),_;if(d===!0){var b=KW.getMaxDepth(r);isFinite(b)?KW.isLeaf(t)?_=0:_=r._maxVisibleLayers-(t.data.depth-r._entryDepth):_=t.data.height+1}else _=t.data.depth-r._entryDepth,r._atRootLevel||_++;if(_>0)for(var p=0;p<_;p++){var k=.5*p/_;c=OA.combine(OA.addOpacity(v,k),c)}}}e.call(CLt,t,r,n,c).style("stroke-width",u).call(OA.stroke,l).style("opacity",h)}Z6e.exports={style:LLt,styleOne:X6e}});var Q6e=ye((h0r,$6e)=>{"use strict";var Y6e=Oa(),jD=Dr(),K6e=So(),PLt=ru(),ILt=YW(),J6e=HD().styleOne,JW=O2(),qA=Ky(),RLt=HE(),$W=!0;$6e.exports=function(t,r,n,i,a){var o=a.barDifY,s=a.width,l=a.height,u=a.viewX,c=a.viewY,f=a.pathSlice,h=a.toMoveInsideSlice,d=a.strTransform,v=a.hasTransition,_=a.handleSlicesExit,b=a.makeUpdateSliceInterpolator,p=a.makeUpdateTextInterpolator,k={},E=t._context.staticPlot,S=t._fullLayout,L=r[0],x=L.trace,C=L.hierarchy,M=s/x._entryDepth,g=qA.listPath(n.data,"id"),P=ILt(C.copy(),[s,l],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();P=P.filter(function(z){var O=g.indexOf(z.data.id);return O===-1?!1:(z.x0=M*O,z.x1=M*(O+1),z.y0=o,z.y1=o+l,z.onPathbar=!0,!0)}),P.reverse(),i=i.data(P,qA.getPtId),i.enter().append("g").classed("pathbar",!0),_(i,$W,k,[s,l],f),i.order();var T=i;v&&(T=T.transition().each("end",function(){var z=Y6e.select(this);qA.setSliceCursor(z,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})})),T.each(function(z){z._x0=u(z.x0),z._x1=u(z.x1),z._y0=c(z.y0),z._y1=c(z.y1),z._hoverX=u(z.x1-Math.min(s,l)/2),z._hoverY=c(z.y1-l/2);var O=Y6e.select(this),V=jD.ensureSingle(O,"path","surface",function(N){N.style("pointer-events",E?"none":"all")});v?V.transition().attrTween("d",function(N){var H=b(N,$W,k,[s,l]);return function(te){return f(H(te))}}):V.attr("d",f),O.call(RLt,n,t,r,{styleOne:J6e,eventDataKeys:JW.eventDataKeys,transitionTime:JW.CLICK_TRANSITION_TIME,transitionEasing:JW.CLICK_TRANSITION_EASING}).call(qA.setSliceCursor,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:t._transitioning}),V.call(J6e,z,x,t,{hovered:!1}),z._text=(qA.getPtLabel(z)||"").split("
").join(" ")||"";var G=jD.ensureSingle(O,"g","slicetext"),Z=jD.ensureSingle(G,"text","",function(N){N.attr("data-notex",1)}),j=jD.ensureUniformFontSize(t,qA.determineTextFont(x,z,S.font,{onPathbar:!0}));Z.text(z._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(K6e.font,j).call(PLt.convertToTspans,t),z.textBB=K6e.bBox(Z.node()),z.transform=h(z,{fontSize:j.size,onPathbar:!0}),z.transform.fontSize=j.size,v?Z.transition().attrTween("transform",function(N){var H=p(N,$W,k,[s,l]);return function(te){return d(H(te))}}):Z.attr("transform",d(z))})}});var iLe=ye((d0r,rLe)=>{"use strict";var eLe=Oa(),QW=(F2(),ob(D2)).interpolate,Z_=Ky(),WE=Dr(),tLe=e2().TEXTPAD,DLt=n2(),FLt=DLt.toMoveInsideBar,zLt=bv(),eX=zLt.recordMinTextSize,OLt=O2(),qLt=Q6e();function B2(e){return Z_.isHierarchyRoot(e)?"":Z_.getPtId(e)}rLe.exports=function(t,r,n,i,a){var o=t._fullLayout,s=r[0],l=s.trace,u=l.type,c=u==="icicle",f=s.hierarchy,h=Z_.findEntryWithLevel(f,l.level),d=eLe.select(n),v=d.selectAll("g.pathbar"),_=d.selectAll("g.slice");if(!h){v.remove(),_.remove();return}var b=Z_.isHierarchyRoot(h),p=!o.uniformtext.mode&&Z_.hasTransition(i),k=Z_.getMaxDepth(l),E=function($e){return $e.data.depth-h.data.depth-1?C+P:-(g+P):0,z={x0:M,x1:M,y0:T,y1:T+g},O=function($e,St,Qt){var Vt=l.tiling.pad,_t=function(lr){return lr-Vt<=St.x0},It=function(lr){return lr+Vt>=St.x1},mt=function(lr){return lr-Vt<=St.y0},er=function(lr){return lr+Vt>=St.y1};return $e.x0===St.x0&&$e.x1===St.x1&&$e.y0===St.y0&&$e.y1===St.y1?{x0:$e.x0,x1:$e.x1,y0:$e.y0,y1:$e.y1}:{x0:_t($e.x0-Vt)?0:It($e.x0-Vt)?Qt[0]:$e.x0,x1:_t($e.x1+Vt)?0:It($e.x1+Vt)?Qt[0]:$e.x1,y0:mt($e.y0-Vt)?0:er($e.y0-Vt)?Qt[1]:$e.y0,y1:mt($e.y1+Vt)?0:er($e.y1+Vt)?Qt[1]:$e.y1}},V=null,G={},Z={},j=null,N=function($e,St){return St?G[B2($e)]:Z[B2($e)]},H=function($e,St,Qt,Vt){if(St)return G[B2(f)]||z;var _t=Z[l.level]||Qt;return E($e)?O($e,_t,Vt):{}};s.hasMultipleRoots&&b&&k++,l._maxDepth=k,l._backgroundColor=o.paper_bgcolor,l._entryDepth=h.data.depth,l._atRootLevel=b;var te=-x/2+S.l+S.w*(L.x[1]+L.x[0])/2,oe=-C/2+S.t+S.h*(1-(L.y[1]+L.y[0])/2),_e=function($e){return te+$e},Ee=function($e){return oe+$e},Ce=Ee(0),me=_e(0),ie=function($e){return me+$e},Se=function($e){return Ce+$e};function Le($e,St){return $e+","+St}var Ae=ie(0),Fe=function($e){$e.x=Math.max(Ae,$e.x)},Pe=l.pathbar.edgeshape,ge=function($e){var St=ie(Math.max(Math.min($e.x0,$e.x0),0)),Qt=ie(Math.min(Math.max($e.x1,$e.x1),M)),Vt=Se($e.y0),_t=Se($e.y1),It=g/2,mt={},er={};mt.x=St,er.x=Qt,mt.y=er.y=(Vt+_t)/2;var lr={x:St,y:Vt},Tr={x:Qt,y:Vt},Lr={x:Qt,y:_t},ti={x:St,y:_t};return Pe===">"?(lr.x-=It,Tr.x-=It,Lr.x-=It,ti.x-=It):Pe==="/"?(Lr.x-=It,ti.x-=It,mt.x-=It/2,er.x-=It/2):Pe==="\\"?(lr.x-=It,Tr.x-=It,mt.x-=It/2,er.x-=It/2):Pe==="<"&&(mt.x-=It,er.x-=It),Fe(lr),Fe(ti),Fe(mt),Fe(Tr),Fe(Lr),Fe(er),"M"+Le(lr.x,lr.y)+"L"+Le(Tr.x,Tr.y)+"L"+Le(er.x,er.y)+"L"+Le(Lr.x,Lr.y)+"L"+Le(ti.x,ti.y)+"L"+Le(mt.x,mt.y)+"Z"},Re=l[c?"tiling":"marker"].pad,ce=function($e){return l.textposition.indexOf($e)!==-1},Ze=ce("top"),ut=ce("left"),pt=ce("right"),Zt=ce("bottom"),st=function($e){var St=_e($e.x0),Qt=_e($e.x1),Vt=Ee($e.y0),_t=Ee($e.y1),It=Qt-St,mt=_t-Vt;if(!It||!mt)return"";var er=l.marker.cornerradius||0,lr=Math.min(er,It/2,mt/2);lr&&$e.data&&$e.data.data&&$e.data.data.label&&(Ze&&(lr=Math.min(lr,Re.t)),ut&&(lr=Math.min(lr,Re.l)),pt&&(lr=Math.min(lr,Re.r)),Zt&&(lr=Math.min(lr,Re.b)));var Tr=function(Lr,ti){return lr?"a"+Le(lr,lr)+" 0 0 1 "+Le(Lr,ti):""};return"M"+Le(St,Vt+lr)+Tr(lr,-lr)+"L"+Le(Qt-lr,Vt)+Tr(lr,lr)+"L"+Le(Qt,_t-lr)+Tr(-lr,lr)+"L"+Le(St+lr,_t)+Tr(-lr,-lr)+"Z"},lt=function($e,St){var Qt=$e.x0,Vt=$e.x1,_t=$e.y0,It=$e.y1,mt=$e.textBB,er=Ze||St.isHeader&&!Zt,lr=er?"start":Zt?"end":"middle",Tr=ce("right"),Lr=ce("left")||St.onPathbar,ti=Lr?-1:Tr?1:0;if(St.isHeader){if(Qt+=(c?Re:Re.l)-tLe,Vt-=(c?Re:Re.r)-tLe,Qt>=Vt){var Br=(Qt+Vt)/2;Qt=Br,Vt=Br}var Vr;Zt?(Vr=It-(c?Re:Re.b),_t{"use strict";var BLt=Oa(),NLt=Ky(),ULt=bv(),VLt=ULt.clearMinTextSize,GLt=N0().resizeText,nLe=iLe();aLe.exports=function(t,r,n,i,a){var o=a.type,s=a.drawDescendants,l=t._fullLayout,u=l["_"+o+"layer"],c,f,h=!n;if(VLt(o,l),c=u.selectAll("g.trace."+o).data(r,function(v){return v[0].trace.uid}),c.enter().append("g").classed("trace",!0).classed(o,!0),c.order(),!l.uniformtext.mode&&NLt.hasTransition(n)){i&&(f=i());var d=BLt.transition().duration(n.duration).ease(n.easing).each("end",function(){f&&f()}).each("interrupt",function(){f&&f()});d.each(function(){u.selectAll("g.trace").each(function(v){nLe(t,v,this,n,s)})})}else c.each(function(v){nLe(t,v,this,n,s)}),l.uniformtext.mode&&GLt(t,u.selectAll(".trace"),o);h&&c.exit().remove()}});var cLe=ye((p0r,uLe)=>{"use strict";var oLe=Oa(),WD=Dr(),sLe=So(),HLt=ru(),jLt=YW(),lLe=HD().styleOne,rX=O2(),Y_=Ky(),WLt=HE(),XLt=VD().formatSliceLabel,iX=!1;uLe.exports=function(t,r,n,i,a){var o=a.width,s=a.height,l=a.viewX,u=a.viewY,c=a.pathSlice,f=a.toMoveInsideSlice,h=a.strTransform,d=a.hasTransition,v=a.handleSlicesExit,_=a.makeUpdateSliceInterpolator,b=a.makeUpdateTextInterpolator,p=a.prevEntry,k={},E=t._context.staticPlot,S=t._fullLayout,L=r[0],x=L.trace,C=x.textposition.indexOf("left")!==-1,M=x.textposition.indexOf("right")!==-1,g=x.textposition.indexOf("bottom")!==-1,P=!g&&!x.marker.pad.t||g&&!x.marker.pad.b,T=jLt(n,[o,s],{packing:x.tiling.packing,squarifyratio:x.tiling.squarifyratio,flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1,pad:{inner:x.tiling.pad,top:x.marker.pad.t,left:x.marker.pad.l,right:x.marker.pad.r,bottom:x.marker.pad.b}}),z=T.descendants(),O=1/0,V=-1/0;z.forEach(function(H){var te=H.depth;te>=x._maxDepth?(H.x0=H.x1=(H.x0+H.x1)/2,H.y0=H.y1=(H.y0+H.y1)/2):(O=Math.min(O,te),V=Math.max(V,te))}),i=i.data(z,Y_.getPtId),x._maxVisibleLayers=isFinite(V)?V-O+1:0,i.enter().append("g").classed("slice",!0),v(i,iX,k,[o,s],c),i.order();var G=null;if(d&&p){var Z=Y_.getPtId(p);i.each(function(H){G===null&&Y_.getPtId(H)===Z&&(G={x0:H.x0,x1:H.x1,y0:H.y0,y1:H.y1})})}var j=function(){return G||{x0:0,x1:o,y0:0,y1:s}},N=i;return d&&(N=N.transition().each("end",function(){var H=oLe.select(this);Y_.setSliceCursor(H,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),N.each(function(H){var te=Y_.isHeader(H,x);H._x0=l(H.x0),H._x1=l(H.x1),H._y0=u(H.y0),H._y1=u(H.y1),H._hoverX=l(H.x1-x.marker.pad.r),H._hoverY=u(g?H.y1-x.marker.pad.b/2:H.y0+x.marker.pad.t/2);var oe=oLe.select(this),_e=WD.ensureSingle(oe,"path","surface",function(Le){Le.style("pointer-events",E?"none":"all")});d?_e.transition().attrTween("d",function(Le){var Ae=_(Le,iX,j(),[o,s]);return function(Fe){return c(Ae(Fe))}}):_e.attr("d",c),oe.call(WLt,n,t,r,{styleOne:lLe,eventDataKeys:rX.eventDataKeys,transitionTime:rX.CLICK_TRANSITION_TIME,transitionEasing:rX.CLICK_TRANSITION_EASING}).call(Y_.setSliceCursor,t,{isTransitioning:t._transitioning}),_e.call(lLe,H,x,t,{hovered:!1}),H.x0===H.x1||H.y0===H.y1?H._text="":te?H._text=P?"":Y_.getPtLabel(H)||"":H._text=XLt(H,n,x,r,S)||"";var Ee=WD.ensureSingle(oe,"g","slicetext"),Ce=WD.ensureSingle(Ee,"text","",function(Le){Le.attr("data-notex",1)}),me=WD.ensureUniformFontSize(t,Y_.determineTextFont(x,H,S.font)),ie=H._text||" ",Se=te&&ie.indexOf("
")===-1;Ce.text(ie).classed("slicetext",!0).attr("text-anchor",M?"end":C||Se?"start":"middle").call(sLe.font,me).call(HLt.convertToTspans,t),H.textBB=sLe.bBox(Ce.node()),H.transform=f(H,{fontSize:me.size,isHeader:te}),H.transform.fontSize=me.size,d?Ce.transition().attrTween("transform",function(Le){var Ae=b(Le,iX,j(),[o,s]);return function(Fe){return h(Ae(Fe))}}):Ce.attr("transform",h(H))}),G}});var hLe=ye((g0r,fLe)=>{"use strict";var ZLt=tX(),YLt=cLe();fLe.exports=function(t,r,n,i){return ZLt(t,r,n,i,{type:"treemap",drawDescendants:YLt})}});var vLe=ye((m0r,dLe)=>{"use strict";dLe.exports={moduleType:"trace",name:"treemap",basePlotModule:L6e(),categories:[],animatable:!0,attributes:GD(),layoutAttributes:jW(),supplyDefaults:B6e(),supplyLayoutDefaults:U6e(),calc:XW().calc,crossTraceCalc:XW().crossTraceCalc,plot:hLe(),style:HD().style,colorbar:$d(),meta:{}}});var gLe=ye((y0r,pLe)=>{"use strict";pLe.exports=vLe()});var yLe=ye(BA=>{"use strict";var mLe=Mc();BA.name="icicle";BA.plot=function(e,t,r,n){mLe.plotBasePlot(BA.name,e,t,r,n)};BA.clean=function(e,t,r,n){mLe.cleanBasePlot(BA.name,e,t,r,n)}});var nX=ye((x0r,bLe)=>{"use strict";var{hovertemplateAttrs:KLt,texttemplateAttrs:JLt,templatefallbackAttrs:_Le}=Ll(),$Lt=Tu(),QLt=Cc().attributes,XE=M2(),o0=LE(),XD=GD(),xLe=O2(),ePt=Ao().extendFlat,tPt=Pd().pattern;bLe.exports={labels:o0.labels,parents:o0.parents,values:o0.values,branchvalues:o0.branchvalues,count:o0.count,level:o0.level,maxdepth:o0.maxdepth,tiling:{orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"plot"},flip:XD.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},marker:ePt({colors:o0.marker.colors,line:o0.marker.line,pattern:tPt,editType:"calc"},$Lt("marker",{colorAttr:"colors",anim:!1})),leaf:o0.leaf,pathbar:XD.pathbar,text:XE.text,textinfo:o0.textinfo,texttemplate:JLt({editType:"plot"},{keys:xLe.eventDataKeys.concat(["label","value"])}),texttemplatefallback:_Le({editType:"plot"}),hovertext:XE.hovertext,hoverinfo:o0.hoverinfo,hovertemplate:KLt({},{keys:xLe.eventDataKeys}),hovertemplatefallback:_Le(),textfont:XE.textfont,insidetextfont:XE.insidetextfont,outsidetextfont:XD.outsidetextfont,textposition:XD.textposition,sort:XE.sort,root:o0.root,domain:QLt({name:"icicle",trace:!0,editType:"calc"})}});var aX=ye((b0r,wLe)=>{"use strict";wLe.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var MLe=ye((w0r,SLe)=>{"use strict";var TLe=Dr(),rPt=nX(),iPt=ka(),nPt=Cc().defaults,aPt=r0().handleText,oPt=e2().TEXTPAD,sPt=E2().handleMarkerDefaults,ALe=tc(),lPt=ALe.hasColorscale,uPt=ALe.handleDefaults;SLe.exports=function(t,r,n,i){function a(d,v){return TLe.coerce(t,r,rPt,d,v)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth"),a("tiling.orientation"),a("tiling.flip"),a("tiling.pad");var u=a("text");a("texttemplate"),a("texttemplatefallback"),r.texttemplate||a("textinfo",TLe.isArrayOrTypedArray(u)?"text+label":"label"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var c=a("pathbar.visible"),f="auto";aPt(t,r,i,a,f,{hasPathbar:c,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition"),sPt(t,r,i,a);var h=r._hasColorscale=lPt(t,"marker","colors")||(t.marker||{}).coloraxis;h&&uPt(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",h?1:.7),r._hovered={marker:{line:{width:2,color:iPt.contrast(i.paper_bgcolor)}}},c&&(a("pathbar.thickness",r.pathbar.textfont.size+2*oPt),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),nPt(r,i,a),r._length=null}});var kLe=ye((T0r,ELe)=>{"use strict";var cPt=Dr(),fPt=aX();ELe.exports=function(t,r){function n(i,a){return cPt.coerce(t,r,fPt,i,a)}n("iciclecolorway",r.colorway),n("extendiciclecolors")}});var sX=ye(oX=>{"use strict";var CLe=RE();oX.calc=function(e,t){return CLe.calc(e,t)};oX.crossTraceCalc=function(e){return CLe._runCrossTraceCalc("icicle",e)}});var PLe=ye((S0r,LLe)=>{"use strict";var hPt=PE(),dPt=ZW();LLe.exports=function(t,r,n){var i=n.flipX,a=n.flipY,o=n.orientation==="h",s=n.maxDepth,l=r[0],u=r[1];s&&(l=(t.height+1)*r[0]/Math.min(t.height+1,s),u=(t.height+1)*r[1]/Math.min(t.height+1,s));var c=hPt.partition().padding(n.pad.inner).size(o?[r[1],l]:[r[0],u])(t);return(o||i||a)&&dPt(c,r,{swapXY:o,flipX:i,flipY:a}),c}});var lX=ye((M0r,zLe)=>{"use strict";var ILe=Oa(),RLe=ka(),DLe=Dr(),vPt=bv().resizeText,pPt=ND();function gPt(e){var t=e._fullLayout._iciclelayer.selectAll(".trace");vPt(e,t,"icicle"),t.each(function(r){var n=ILe.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){ILe.select(this).call(FLe,o,a,e)})})}function FLe(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=DLe.castOption(r,o,"marker.line.color")||RLe.defaultLine,l=DLe.castOption(r,o,"marker.line.width")||0;e.call(pPt,t,r,n).style("stroke-width",l).call(RLe.stroke,s).style("opacity",a?r.leaf.opacity:null)}zLe.exports={style:gPt,styleOne:FLe}});var ULe=ye((E0r,NLe)=>{"use strict";var OLe=Oa(),ZD=Dr(),qLe=So(),mPt=ru(),yPt=PLe(),BLe=lX().styleOne,uX=O2(),NA=Ky(),_Pt=HE(),xPt=VD().formatSliceLabel,cX=!1;NLe.exports=function(t,r,n,i,a){var o=a.width,s=a.height,l=a.viewX,u=a.viewY,c=a.pathSlice,f=a.toMoveInsideSlice,h=a.strTransform,d=a.hasTransition,v=a.handleSlicesExit,_=a.makeUpdateSliceInterpolator,b=a.makeUpdateTextInterpolator,p=a.prevEntry,k={},E=t._context.staticPlot,S=t._fullLayout,L=r[0],x=L.trace,C=x.textposition.indexOf("left")!==-1,M=x.textposition.indexOf("right")!==-1,g=x.textposition.indexOf("bottom")!==-1,P=yPt(n,[o,s],{flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1,orientation:x.tiling.orientation,pad:{inner:x.tiling.pad},maxDepth:x._maxDepth}),T=P.descendants(),z=1/0,O=-1/0;T.forEach(function(N){var H=N.depth;H>=x._maxDepth?(N.x0=N.x1=(N.x0+N.x1)/2,N.y0=N.y1=(N.y0+N.y1)/2):(z=Math.min(z,H),O=Math.max(O,H))}),i=i.data(T,NA.getPtId),x._maxVisibleLayers=isFinite(O)?O-z+1:0,i.enter().append("g").classed("slice",!0),v(i,cX,k,[o,s],c),i.order();var V=null;if(d&&p){var G=NA.getPtId(p);i.each(function(N){V===null&&NA.getPtId(N)===G&&(V={x0:N.x0,x1:N.x1,y0:N.y0,y1:N.y1})})}var Z=function(){return V||{x0:0,x1:o,y0:0,y1:s}},j=i;return d&&(j=j.transition().each("end",function(){var N=OLe.select(this);NA.setSliceCursor(N,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),j.each(function(N){N._x0=l(N.x0),N._x1=l(N.x1),N._y0=u(N.y0),N._y1=u(N.y1),N._hoverX=l(N.x1-x.tiling.pad),N._hoverY=u(g?N.y1-x.tiling.pad/2:N.y0+x.tiling.pad/2);var H=OLe.select(this),te=ZD.ensureSingle(H,"path","surface",function(Ce){Ce.style("pointer-events",E?"none":"all")});d?te.transition().attrTween("d",function(Ce){var me=_(Ce,cX,Z(),[o,s],{orientation:x.tiling.orientation,flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1});return function(ie){return c(me(ie))}}):te.attr("d",c),H.call(_Pt,n,t,r,{styleOne:BLe,eventDataKeys:uX.eventDataKeys,transitionTime:uX.CLICK_TRANSITION_TIME,transitionEasing:uX.CLICK_TRANSITION_EASING}).call(NA.setSliceCursor,t,{isTransitioning:t._transitioning}),te.call(BLe,N,x,t,{hovered:!1}),N.x0===N.x1||N.y0===N.y1?N._text="":N._text=xPt(N,n,x,r,S)||"";var oe=ZD.ensureSingle(H,"g","slicetext"),_e=ZD.ensureSingle(oe,"text","",function(Ce){Ce.attr("data-notex",1)}),Ee=ZD.ensureUniformFontSize(t,NA.determineTextFont(x,N,S.font));_e.text(N._text||" ").classed("slicetext",!0).attr("text-anchor",M?"end":C?"start":"middle").call(qLe.font,Ee).call(mPt.convertToTspans,t),N.textBB=qLe.bBox(_e.node()),N.transform=f(N,{fontSize:Ee.size}),N.transform.fontSize=Ee.size,d?_e.transition().attrTween("transform",function(Ce){var me=b(Ce,cX,Z(),[o,s]);return function(ie){return h(me(ie))}}):_e.attr("transform",h(N))}),V}});var GLe=ye((k0r,VLe)=>{"use strict";var bPt=tX(),wPt=ULe();VLe.exports=function(t,r,n,i){return bPt(t,r,n,i,{type:"icicle",drawDescendants:wPt})}});var jLe=ye((C0r,HLe)=>{"use strict";HLe.exports={moduleType:"trace",name:"icicle",basePlotModule:yLe(),categories:[],animatable:!0,attributes:nX(),layoutAttributes:aX(),supplyDefaults:MLe(),supplyLayoutDefaults:kLe(),calc:sX().calc,crossTraceCalc:sX().crossTraceCalc,plot:GLe(),style:lX().style,colorbar:$d(),meta:{}}});var XLe=ye((L0r,WLe)=>{"use strict";WLe.exports=jLe()});var YLe=ye(UA=>{"use strict";var ZLe=Mc();UA.name="funnelarea";UA.plot=function(e,t,r,n){ZLe.plotBasePlot(UA.name,e,t,r,n)};UA.clean=function(e,t,r,n){ZLe.cleanBasePlot(UA.name,e,t,r,n)}});var fX=ye((I0r,JLe)=>{"use strict";var iv=M2(),TPt=Gl(),APt=Cc().attributes,{hovertemplateAttrs:SPt,texttemplateAttrs:MPt,templatefallbackAttrs:KLe}=Ll(),N2=Ao().extendFlat;JLe.exports={labels:iv.labels,label0:iv.label0,dlabel:iv.dlabel,values:iv.values,marker:{colors:iv.marker.colors,line:{color:N2({},iv.marker.line.color,{dflt:null}),width:N2({},iv.marker.line.width,{dflt:1}),editType:"calc"},pattern:iv.marker.pattern,editType:"calc"},text:iv.text,hovertext:iv.hovertext,scalegroup:N2({},iv.scalegroup,{}),textinfo:N2({},iv.textinfo,{flags:["label","text","value","percent"]}),texttemplate:MPt({editType:"plot"},{keys:["label","color","value","text","percent"]}),texttemplatefallback:KLe({editType:"plot"}),hoverinfo:N2({},TPt.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:SPt({},{keys:["label","color","value","text","percent"]}),hovertemplatefallback:KLe(),textposition:N2({},iv.textposition,{values:["inside","none"],dflt:"inside"}),textfont:iv.textfont,insidetextfont:iv.insidetextfont,title:{text:iv.title.text,font:iv.title.font,position:N2({},iv.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:APt({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot"},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot"}}});var hX=ye((R0r,$Le)=>{"use strict";var EPt=pD().hiddenlabels;$Le.exports={hiddenlabels:EPt,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var tPe=ye((D0r,ePe)=>{"use strict";var QLe=Dr(),kPt=fX(),CPt=Cc().defaults,LPt=r0().handleText,PPt=E2().handleLabelsAndValues,IPt=E2().handleMarkerDefaults;ePe.exports=function(t,r,n,i){function a(_,b){return QLe.coerce(t,r,kPt,_,b)}var o=a("labels"),s=a("values"),l=PPt(o,s),u=l.len;if(r._hasLabels=l.hasLabels,r._hasValues=l.hasValues,!r._hasLabels&&r._hasValues&&(a("label0"),a("dlabel")),!u){r.visible=!1;return}r._length=u,IPt(t,r,i,a),a("scalegroup");var c=a("text"),f=a("texttemplate");a("texttemplatefallback");var h;if(f||(h=a("textinfo",Array.isArray(c)?"text+percent":"percent")),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),f||h&&h!=="none"){var d=a("textposition");LPt(t,r,i,a,d,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else h==="none"&&a("textposition","none");CPt(r,i,a);var v=a("title.text");v&&(a("title.position"),QLe.coerceFont(a,"title.font",i.font)),a("aspectratio"),a("baseratio")}});var iPe=ye((F0r,rPe)=>{"use strict";var RPt=Dr(),DPt=hX();rPe.exports=function(t,r){function n(i,a){return RPt.coerce(t,r,DPt,i,a)}n("hiddenlabels"),n("funnelareacolorway",r.colorway),n("extendfunnelareacolors")}});var dX=ye((z0r,aPe)=>{"use strict";var nPe=TA();function FPt(e,t){return nPe.calc(e,t)}function zPt(e){nPe.crossTraceCalc(e,{type:"funnelarea"})}aPe.exports={calc:FPt,crossTraceCalc:zPt}});var cPe=ye((O0r,uPe)=>{"use strict";var U2=Oa(),vX=So(),K_=Dr(),OPt=K_.strScale,oPe=K_.strTranslate,sPe=ru(),qPt=n2(),BPt=qPt.toMoveInsideBar,lPe=bv(),NPt=lPe.recordMinTextSize,UPt=lPe.clearMinTextSize,VPt=l_(),VA=_D(),GPt=VA.attachFxHandlers,HPt=VA.determineInsideTextFont,jPt=VA.layoutAreas,WPt=VA.prerenderTitles,XPt=VA.positionTitleOutside,ZPt=VA.formatSliceLabel;uPe.exports=function(t,r){var n=t._context.staticPlot,i=t._fullLayout;UPt("funnelarea",i),WPt(r,t),jPt(r,i._size),K_.makeTraceGroups(i._funnelarealayer,r,"trace").each(function(a){var o=U2.select(this),s=a[0],l=s.trace;KPt(a),o.each(function(){var u=U2.select(this).selectAll("g.slice").data(a);u.enter().append("g").classed("slice",!0),u.exit().remove(),u.each(function(f,h){if(f.hidden){U2.select(this).selectAll("path,g").remove();return}f.pointNumber=f.i,f.curveNumber=l.index;var d=s.cx,v=s.cy,_=U2.select(this),b=_.selectAll("path.surface").data([f]);b.enter().append("path").classed("surface",!0).style({"pointer-events":n?"none":"all"}),_.call(GPt,t,a);var p="M"+(d+f.TR[0])+","+(v+f.TR[1])+pX(f.TR,f.BR)+pX(f.BR,f.BL)+pX(f.BL,f.TL)+"Z";b.attr("d",p),ZPt(t,f,s);var k=VPt.castOption(l.textposition,f.pts),E=_.selectAll("g.slicetext").data(f.text&&k!=="none"?[0]:[]);E.enter().append("g").classed("slicetext",!0),E.exit().remove(),E.each(function(){var S=K_.ensureSingle(U2.select(this),"text","",function(z){z.attr("data-notex",1)}),L=K_.ensureUniformFontSize(t,HPt(l,f,i.font));S.text(f.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(vX.font,L).call(sPe.convertToTspans,t);var x=vX.bBox(S.node()),C,M,g,P=Math.min(f.BL[1],f.BR[1])+v,T=Math.max(f.TL[1],f.TR[1])+v;M=Math.max(f.TL[0],f.BL[0])+d,g=Math.min(f.TR[0],f.BR[0])+d,C=BPt(M,g,P,T,x,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),C.fontSize=L.size,NPt(l.type,C,i),a[h].transform=C,K_.setTransormAndDisplay(S,C)})});var c=U2.select(this).selectAll("g.titletext").data(l.title.text?[0]:[]);c.enter().append("g").classed("titletext",!0),c.exit().remove(),c.each(function(){var f=K_.ensureSingle(U2.select(this),"text","",function(v){v.attr("data-notex",1)}),h=l.title.text;l._meta&&(h=K_.templateString(h,l._meta)),f.text(h).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(vX.font,l.title.font).call(sPe.convertToTspans,t);var d=XPt(s,i._size);f.attr("transform",oPe(d.x,d.y)+OPt(Math.min(1,d.scale))+oPe(d.tx,d.ty))})})})};function pX(e,t){var r=t[0]-e[0],n=t[1]-e[1];return"l"+r+","+n}function YPt(e,t){return[.5*(e[0]+t[0]),.5*(e[1]+t[1])]}function KPt(e){if(!e.length)return;var t=e[0],r=t.trace,n=r.aspectratio,i=r.baseratio;i>.999&&(i=.999);var a=Math.pow(i,2),o=t.vTotal,s=o*a/(1-a),l=o,u=s/o;function c(){var O=Math.sqrt(u);return{x:O,y:-O}}function f(){var O=c();return[O.x,O.y]}var h,d=[];d.push(f());var v,_;for(v=e.length-1;v>-1;v--)if(_=e[v],!_.hidden){var b=_.v/l;u+=b,d.push(f())}var p=1/0,k=-1/0;for(v=0;v-1;v--)if(_=e[v],!_.hidden){P+=1;var T=d[P][0],z=d[P][1];_.TL=[-T,z],_.TR=[T,z],_.BL=M,_.BR=g,_.pxmid=YPt(_.TR,_.BR),M=_.TL,g=_.TR}}});var dPe=ye((q0r,hPe)=>{"use strict";var fPe=Oa(),JPt=B3(),$Pt=bv().resizeText;hPe.exports=function(t){var r=t._fullLayout._funnelarealayer.selectAll(".trace");$Pt(t,r,"funnelarea"),r.each(function(n){var i=n[0],a=i.trace,o=fPe.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){fPe.select(this).call(JPt,s,a,t)})})}});var pPe=ye((B0r,vPe)=>{"use strict";vPe.exports={moduleType:"trace",name:"funnelarea",basePlotModule:YLe(),categories:["pie-like","funnelarea","showLegend"],attributes:fX(),layoutAttributes:hX(),supplyDefaults:tPe(),supplyLayoutDefaults:iPe(),calc:dX().calc,crossTraceCalc:dX().crossTraceCalc,plot:cPe(),style:dPe(),styleOne:B3(),meta:{}}});var mPe=ye((N0r,gPe)=>{"use strict";gPe.exports=pPe()});var Od=ye((U0r,yPe)=>{(function(){var e={24:function(i){var a={left:0,top:0};i.exports=o;function o(l,u,c){u=u||l.currentTarget||l.srcElement,Array.isArray(c)||(c=[0,0]);var f=l.clientX||0,h=l.clientY||0,d=s(u);return c[0]=f-d.left,c[1]=h-d.top,c}function s(l){return l===window||l===document||l===document.body?a:l.getBoundingClientRect()}},109:function(i){i.exports=a;function a(o,s,l,u){var c=l[0],f=l[2],h=s[0]-c,d=s[2]-f,v=Math.sin(u),_=Math.cos(u);return o[0]=c+d*v+h*_,o[1]=s[1],o[2]=f+d*_-h*v,o}},160:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.max(s[0],l[0]),o[1]=Math.max(s[1],l[1]),o[2]=Math.max(s[2],l[2]),o[3]=Math.max(s[3],l[3]),o}},216:function(i){"use strict";i.exports=a;function a(o,s){for(var l={},u=0;u1){v[0]in h||(h[v[0]]=[]),h=h[v[0]];for(var _=1;_=0;--N){var Se=Z[N];H=Se[0];var Le=V[H],Ae=Le[0],Fe=Le[1],Pe=O[Ae],ge=O[Fe];if((Pe[0]-ge[0]||Pe[1]-ge[1])<0){var Re=Ae;Ae=Fe,Fe=Re}Le[0]=Ae;var ce=Le[1]=Se[1],Ze;for(j&&(Ze=Le[2]);N>0&&Z[N-1][0]===H;){var Se=Z[--N],ut=Se[1];j?V.push([ce,ut,Ze]):V.push([ce,ut]),ce=ut}j?V.push([ce,Fe,Ze]):V.push([ce,Fe])}return te}function x(O,V,G){for(var Z=V.length,j=new s(Z),N=[],H=0;HV[2]?1:0)}function g(O,V,G){if(O.length!==0){if(V)for(var Z=0;Z0||H.length>0}function z(O,V,G){var Z;if(G){Z=V;for(var j=new Array(V.length),N=0;N>>1;u(k,Le);for(var Ae=0,Fe=0,Ce=0;Ce=c)Pe=Pe-c|0,S(v,_,Fe--,Pe);else if(Pe>=0)S(h,d,Ae--,Pe);else if(Pe<=-c){Pe=-Pe-c|0;for(var ge=0;ge>>1;u(k,Le);for(var Ae=0,Fe=0,Pe=0,Ce=0;Ce>1===k[2*Ce+3]>>1&&(Re=2,Ce+=1),ge<0){for(var ce=-(ge>>1)-1,Ze=0;Ze>1)-1;Re===0?S(h,d,Ae--,ce):Re===1?S(v,_,Fe--,ce):Re===2&&S(b,p,Pe--,ce)}}}function M(P,T,z,O,V,G,Z,H,N,j,re,oe){var _e=0,Ee=2*P,Ce=T,me=T+P,ie=1,Se=1;O?Se=c:ie=c;for(var Le=V;Le>>1;u(k,ge);for(var Re=0,Le=0;Le=c?(Ze=!O,Ae-=c):(Ze=!!O,Ae-=1),Ze)L(h,d,Re++,Ae);else{var ut=oe[Ae],pt=Ee*Ae,Zt=re[pt+T+1],st=re[pt+T+1+P];e:for(var lt=0;lt>>1;u(k,Ae);for(var Fe=0,me=0;me=c)h[Fe++]=ie-c;else{ie-=1;var ge=re[ie],Re=_e*ie,ce=j[Re+T+1],Ze=j[Re+T+1+P];e:for(var ut=0;ut=0;--ut)if(h[ut]===ie){for(var lt=ut+1;lt>>1;u(k,Le);for(var Ae=0,Fe=0,Ce=0;Ce=c)Pe=Pe-c|0,S(v,_,Fe--,Pe);else if(Pe>=0)S(h,d,Ae--,Pe);else if(Pe<=-c){Pe=-Pe-c|0;for(var ge=0;ge>>1;u(k,Le);for(var Ae=0,Fe=0,Pe=0,Ce=0;Ce>1===k[2*Ce+3]>>1&&(Re=2,Ce+=1),ge<0){for(var ce=-(ge>>1)-1,Ze=0;Ze>1)-1;Re===0?S(h,d,Ae--,ce):Re===1?S(v,_,Fe--,ce):Re===2&&S(b,p,Pe--,ce)}}}function M(P,T,z,O,V,G,Z,j,N,H,te,oe){var _e=0,Ee=2*P,Ce=T,me=T+P,ie=1,Se=1;O?Se=c:ie=c;for(var Le=V;Le>>1;u(k,ge);for(var Re=0,Le=0;Le=c?(Ze=!O,Ae-=c):(Ze=!!O,Ae-=1),Ze)L(h,d,Re++,Ae);else{var ut=oe[Ae],pt=Ee*Ae,Zt=te[pt+T+1],st=te[pt+T+1+P];e:for(var lt=0;lt>>1;u(k,Ae);for(var Fe=0,me=0;me=c)h[Fe++]=ie-c;else{ie-=1;var ge=te[ie],Re=_e*ie,ce=H[Re+T+1],Ze=H[Re+T+1+P];e:for(var ut=0;ut=0;--ut)if(h[ut]===ie){for(var lt=ut+1;lt=0?z[re]:j)}function G(N){var j=L(N);return j?O in j:T.indexOf(N)>=0}function Z(N,j){var re,oe=L(N);return oe?oe[O]=j:(re=T.indexOf(N),re>=0?z[re]=j:(re=T.length,z[re]=j,T[re]=N)),this}function H(N){var j=L(N),re,oe;return j?O in j&&delete j[O]:(re=T.indexOf(N),re<0?!1:(oe=T.length-1,T[re]=void 0,z[re]=z[oe],T[re]=T[oe],T.length=oe,z.length=oe,!0))}return Object.create(P.prototype,{get___:{value:x(V)},has___:{value:x(G)},set___:{value:x(Z)},delete___:{value:x(H)}})};P.prototype=Object.create(Object.prototype,{get:{value:function(z,O){return this.get___(z,O)},writable:!0,configurable:!0},has:{value:function(z){return this.has___(z)},writable:!0,configurable:!0},set:{value:function(z,O){return this.set___(z,O)},writable:!0,configurable:!0},delete:{value:function(z){return this.delete___(z)},writable:!0,configurable:!0}}),typeof l=="function"?function(){s&&typeof Proxy!="undefined"&&(Proxy=void 0);function T(){this instanceof P||M();var z=new l,O=void 0,V=!1;function G(j,re){return O?z.has(j)?z.get(j):O.get___(j,re):z.get(j,re)}function Z(j){return z.has(j)||(O?O.has___(j):!1)}var H;s?H=function(j,re){return z.set(j,re),z.has(j)||(O||(O=new P),O.set(j,re)),this}:H=function(j,re){if(V)try{z.set(j,re)}catch(oe){O||(O=new P),O.set___(j,re)}else z.set(j,re);return this};function N(j){var re=!!z.delete(j);return O&&O.delete___(j)||re}return Object.create(P.prototype,{get___:{value:x(G)},has___:{value:x(Z)},set___:{value:x(H)},delete___:{value:x(N)},permitHostObjects___:{value:x(function(j){if(j===o)V=!0;else throw new Error("bogus call to permitHostObjects___")})}})}T.prototype=P.prototype,i.exports=T,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy!="undefined"&&(Proxy=void 0),i.exports=P)})()},1570:function(i){"use strict";i.exports=o;var a=[function(){function l(c,f,h,d){for(var v=Math.min(h,d)|0,_=Math.max(h,d)|0,b=c[2*v],p=c[2*v+1];b>1,E=f[2*k+1];if(E===_)return k;_>1,E=f[2*k+1];if(E===_)return k;_>1,E=f[2*k+1];if(E===_)return k;_>1,E=f[2*k+1];if(E===_)return k;_=0?z[te]:H)}function G(N){var H=L(N);return H?O in H:T.indexOf(N)>=0}function Z(N,H){var te,oe=L(N);return oe?oe[O]=H:(te=T.indexOf(N),te>=0?z[te]=H:(te=T.length,z[te]=H,T[te]=N)),this}function j(N){var H=L(N),te,oe;return H?O in H&&delete H[O]:(te=T.indexOf(N),te<0?!1:(oe=T.length-1,T[te]=void 0,z[te]=z[oe],T[te]=T[oe],T.length=oe,z.length=oe,!0))}return Object.create(P.prototype,{get___:{value:x(V)},has___:{value:x(G)},set___:{value:x(Z)},delete___:{value:x(j)}})};P.prototype=Object.create(Object.prototype,{get:{value:function(z,O){return this.get___(z,O)},writable:!0,configurable:!0},has:{value:function(z){return this.has___(z)},writable:!0,configurable:!0},set:{value:function(z,O){return this.set___(z,O)},writable:!0,configurable:!0},delete:{value:function(z){return this.delete___(z)},writable:!0,configurable:!0}}),typeof l=="function"?function(){s&&typeof Proxy!="undefined"&&(Proxy=void 0);function T(){this instanceof P||M();var z=new l,O=void 0,V=!1;function G(H,te){return O?z.has(H)?z.get(H):O.get___(H,te):z.get(H,te)}function Z(H){return z.has(H)||(O?O.has___(H):!1)}var j;s?j=function(H,te){return z.set(H,te),z.has(H)||(O||(O=new P),O.set(H,te)),this}:j=function(H,te){if(V)try{z.set(H,te)}catch(oe){O||(O=new P),O.set___(H,te)}else z.set(H,te);return this};function N(H){var te=!!z.delete(H);return O&&O.delete___(H)||te}return Object.create(P.prototype,{get___:{value:x(G)},has___:{value:x(Z)},set___:{value:x(j)},delete___:{value:x(N)},permitHostObjects___:{value:x(function(H){if(H===o)V=!0;else throw new Error("bogus call to permitHostObjects___")})}})}T.prototype=P.prototype,i.exports=T,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy!="undefined"&&(Proxy=void 0),i.exports=P)})()},1570:function(i){"use strict";i.exports=o;var a=[function(){function l(c,f,h,d){for(var v=Math.min(h,d)|0,_=Math.max(h,d)|0,b=c[2*v],p=c[2*v+1];b>1,E=f[2*k+1];if(E===_)return k;_>1,E=f[2*k+1];if(E===_)return k;_>1,E=f[2*k+1];if(E===_)return k;_>1,E=f[2*k+1];if(E===_)return k;_0?j.pop():new ArrayBuffer(H)}a.mallocArrayBuffer=k;function E(Z){return new Uint8Array(k(Z),0,Z)}a.mallocUint8=E;function S(Z){return new Uint16Array(k(2*Z),0,Z)}a.mallocUint16=S;function L(Z){return new Uint32Array(k(4*Z),0,Z)}a.mallocUint32=L;function x(Z){return new Int8Array(k(Z),0,Z)}a.mallocInt8=x;function C(Z){return new Int16Array(k(2*Z),0,Z)}a.mallocInt16=C;function M(Z){return new Int32Array(k(4*Z),0,Z)}a.mallocInt32=M;function g(Z){return new Float32Array(k(4*Z),0,Z)}a.mallocFloat32=a.mallocFloat=g;function P(Z){return new Float64Array(k(8*Z),0,Z)}a.mallocFloat64=a.mallocDouble=P;function T(Z){return c?new Uint8ClampedArray(k(Z),0,Z):E(Z)}a.mallocUint8Clamped=T;function z(Z){return f?new BigUint64Array(k(8*Z),0,Z):null}a.mallocBigUint64=z;function O(Z){return h?new BigInt64Array(k(8*Z),0,Z):null}a.mallocBigInt64=O;function V(Z){return new DataView(k(Z),0,Z)}a.mallocDataView=V;function G(Z){Z=s.nextPow2(Z);var H=s.log2(Z),N=_[H];return N.length>0?N.pop():new u(Z)}a.mallocBuffer=G,a.clearCache=function(){for(var H=0;H<32;++H)d.UINT8[H].length=0,d.UINT16[H].length=0,d.UINT32[H].length=0,d.INT8[H].length=0,d.INT16[H].length=0,d.INT32[H].length=0,d.FLOAT[H].length=0,d.DOUBLE[H].length=0,d.BIGUINT64[H].length=0,d.BIGINT64[H].length=0,d.UINT8C[H].length=0,v[H].length=0,_[H].length=0}},1903:function(i){i.exports=a;function a(o){var s=new Float32Array(16);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s[3]=o[3],s[4]=o[4],s[5]=o[5],s[6]=o[6],s[7]=o[7],s[8]=o[8],s[9]=o[9],s[10]=o[10],s[11]=o[11],s[12]=o[12],s[13]=o[13],s[14]=o[14],s[15]=o[15],s}},1944:function(i,a,o){"use strict";var s=o(5250),l=o(8210);i.exports=u;function u(c,f){for(var h=s(c[0],f[0]),d=1;d>1,G=h(g[V],P);G<=0?(G===0&&(O=V),T=V+1):G>0&&(z=V-1)}return O}a.findCell=b;function p(g,P){for(var T=new Array(g.length),z=0,O=T.length;z=g.length||h(g[_e],V)!==0););}return T}a.incidence=p;function k(g,P){if(!P)return p(_(S(g,0)),g,0);for(var T=new Array(P),z=0;z>>N&1&&H.push(O[N]);P.push(H)}return v(P)}a.explode=E;function S(g,P){if(P<0)return[];for(var T=[],z=(1<0}C=C.filter(M);for(var g=C.length,P=new Array(g),T=new Array(g),x=0;x0;){var ce=Pe.pop(),Ze=Ee[ce];h(Ze,function(lt,Gt){return lt-Gt});var ut=Ze.length,pt=ge[ce],Zt;if(pt===0){var H=C[ce];Zt=[H]}for(var x=0;x=0)&&(ge[st]=pt^1,Pe.push(st),pt===0)){var H=C[st];Fe(H)||(H.reverse(),Zt.push(H))}}pt===0&&Re.push(Zt)}return Re}},2145:function(i,a){"use strict";a.uniforms=u,a.attributes=c;var o={FLOAT:"float",FLOAT_VEC2:"vec2",FLOAT_VEC3:"vec3",FLOAT_VEC4:"vec4",INT:"int",INT_VEC2:"ivec2",INT_VEC3:"ivec3",INT_VEC4:"ivec4",BOOL:"bool",BOOL_VEC2:"bvec2",BOOL_VEC3:"bvec3",BOOL_VEC4:"bvec4",FLOAT_MAT2:"mat2",FLOAT_MAT3:"mat3",FLOAT_MAT4:"mat4",SAMPLER_2D:"sampler2D",SAMPLER_CUBE:"samplerCube"},s=null;function l(f,h){if(!s){var d=Object.keys(o);s={};for(var v=0;v1)for(var k=0;k1&&G.drawBuffersWEBGL(l[V]);var re=P.getExtension("WEBGL_depth_texture");re?Z?M.depth=p(P,z,O,re.UNSIGNED_INT_24_8_WEBGL,P.DEPTH_STENCIL,P.DEPTH_STENCIL_ATTACHMENT):H&&(M.depth=p(P,z,O,P.UNSIGNED_SHORT,P.DEPTH_COMPONENT,P.DEPTH_ATTACHMENT)):H&&Z?M._depth_rb=k(P,z,O,P.DEPTH_STENCIL,P.DEPTH_STENCIL_ATTACHMENT):H?M._depth_rb=k(P,z,O,P.DEPTH_COMPONENT16,P.DEPTH_ATTACHMENT):Z&&(M._depth_rb=k(P,z,O,P.STENCIL_INDEX,P.STENCIL_ATTACHMENT));var oe=P.checkFramebufferStatus(P.FRAMEBUFFER);if(oe!==P.FRAMEBUFFER_COMPLETE){M._destroyed=!0,P.bindFramebuffer(P.FRAMEBUFFER,null),P.deleteFramebuffer(M.handle),M.handle=null,M.depth&&(M.depth.dispose(),M.depth=null),M._depth_rb&&(P.deleteRenderbuffer(M._depth_rb),M._depth_rb=null);for(var j=0;jz||P<0||P>z)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");M._shape[0]=g,M._shape[1]=P;for(var O=d(T),V=0;VO||P<0||P>O)throw new Error("gl-fbo: Parameters are too large for FBO");T=T||{};var V=1;if("color"in T){if(V=Math.max(T.color|0,0),V<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(V>1)if(z){if(V>M.getParameter(z.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+V+" draw buffers")}else throw new Error("gl-fbo: Multiple draw buffer extension not supported")}var G=M.UNSIGNED_BYTE,Z=M.getExtension("OES_texture_float");if(T.float&&V>0){if(!Z)throw new Error("gl-fbo: Context does not support floating point textures");G=M.FLOAT}else T.preferFloat&&V>0&&Z&&(G=M.FLOAT);var H=!0;"depth"in T&&(H=!!T.depth);var N=!1;return"stencil"in T&&(N=!!T.stencil),new S(M,g,P,G,V,H,N,z)}},2272:function(i,a,o){"use strict";var s=o(2646)[4],l=o(2478);i.exports=c;function u(f,h,d,v,_,b){var p=h.opposite(v,_);if(!(p<0)){if(_0;){for(var E=d.pop(),b=d.pop(),S=-1,L=-1,p=_[b],C=1;C=0||(h.flip(b,E),u(f,h,d,S,b,L),u(f,h,d,b,L,S),u(f,h,d,L,E,S),u(f,h,d,E,S,L))}}},2334:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.min(s[0],l[0]),o[1]=Math.min(s[1],l[1]),o[2]=Math.min(s[2],l[2]),o[3]=Math.min(s[3],l[3]),o}},2335:function(i){i.exports=a;function a(o){var s=new Float32Array(4);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s[3]=o[3],s}},2361:function(i){var a=!1;if(typeof Float64Array!="undefined"){var o=new Float64Array(1),s=new Uint32Array(o.buffer);if(o[0]=1,a=!0,s[1]===1072693248){let k=function(L,x){return s[0]=L,s[1]=x,o[0]},E=function(L){return o[0]=L,s[0]},S=function(L){return o[0]=L,s[1]};var u=k,c=E,f=S;i.exports=function(x){return o[0]=x,[s[0],s[1]]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=S}else if(s[0]===1072693248){let k=function(L,x){return s[1]=L,s[0]=x,o[0]},E=function(L){return o[0]=L,s[1]},S=function(L){return o[0]=L,s[0]};var h=k,d=E,v=S;i.exports=function(x){return o[0]=x,[s[1],s[0]]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=S}else a=!1}if(!a){let k=function(L,x){return l.writeUInt32LE(L,0,!0),l.writeUInt32LE(x,4,!0),l.readDoubleLE(0,!0)},E=function(L){return l.writeDoubleLE(L,0,!0),l.readUInt32LE(0,!0)},S=function(L){return l.writeDoubleLE(L,0,!0),l.readUInt32LE(4,!0)};var _=k,b=E,p=S,l=new Buffer(8);i.exports=function(x){return l.writeDoubleLE(x,0,!0),[l.readUInt32LE(0,!0),l.readUInt32LE(4,!0)]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=S}i.exports.sign=function(k){return i.exports.hi(k)>>>31},i.exports.exponent=function(k){var E=i.exports.hi(k);return(E<<1>>>21)-1023},i.exports.fraction=function(k){var E=i.exports.lo(k),S=i.exports.hi(k),L=S&(1<<20)-1;return S&2146435072&&(L+=1048576),[E,L]},i.exports.denormalized=function(k){var E=i.exports.hi(k);return!(E&2146435072)}},2408:function(i){i.exports=a;function a(o,s,l){var u=Math.sin(l),c=Math.cos(l),f=s[0],h=s[1],d=s[2],v=s[3],_=s[8],b=s[9],p=s[10],k=s[11];return s!==o&&(o[4]=s[4],o[5]=s[5],o[6]=s[6],o[7]=s[7],o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15]),o[0]=f*c-_*u,o[1]=h*c-b*u,o[2]=d*c-p*u,o[3]=v*c-k*u,o[8]=f*u+_*c,o[9]=h*u+b*c,o[10]=d*u+p*c,o[11]=v*u+k*c,o}},2419:function(i){"use strict";i.exports=a;function a(o){for(var s=1,l=1;lS-E?u(h,d,v,_,b,p,k,E,S,L,x):c(h,d,v,_,b,p,k,E,S,L,x)}return f}function s(){function u(v,_,b,p,k,E,S,L,x,C,M){for(var g=2*v,P=p,T=g*p;PC-x?p?u(v,_,b,k,E,S,L,x,C,M,g):c(v,_,b,k,E,S,L,x,C,M,g):p?f(v,_,b,k,E,S,L,x,C,M,g):h(v,_,b,k,E,S,L,x,C,M,g)}return d}function l(u){return u?o():s()}a.partial=l(!1),a.full=l(!0)},2478:function(i){"use strict";function a(f,h,d,v,_){for(var b=_+1;v<=_;){var p=v+_>>>1,k=f[p],E=d!==void 0?d(k,h):k-h;E>=0?(b=p,_=p-1):v=p+1}return b}function o(f,h,d,v,_){for(var b=_+1;v<=_;){var p=v+_>>>1,k=f[p],E=d!==void 0?d(k,h):k-h;E>0?(b=p,_=p-1):v=p+1}return b}function s(f,h,d,v,_){for(var b=v-1;v<=_;){var p=v+_>>>1,k=f[p],E=d!==void 0?d(k,h):k-h;E<0?(b=p,v=p+1):_=p-1}return b}function l(f,h,d,v,_){for(var b=v-1;v<=_;){var p=v+_>>>1,k=f[p],E=d!==void 0?d(k,h):k-h;E<=0?(b=p,v=p+1):_=p-1}return b}function u(f,h,d,v,_){for(;v<=_;){var b=v+_>>>1,p=f[b],k=d!==void 0?d(p,h):p-h;if(k===0)return b;k<=0?v=b+1:_=b-1}return-1}function c(f,h,d,v,_,b){return typeof d=="function"?b(f,h,d,v===void 0?0:v|0,_===void 0?f.length-1:_|0):b(f,h,void 0,d===void 0?0:d|0,v===void 0?f.length-1:v|0)}i.exports={ge:function(f,h,d,v,_){return c(f,h,d,v,_,a)},gt:function(f,h,d,v,_){return c(f,h,d,v,_,o)},lt:function(f,h,d,v,_){return c(f,h,d,v,_,s)},le:function(f,h,d,v,_){return c(f,h,d,v,_,l)},eq:function(f,h,d,v,_){return c(f,h,d,v,_,u)}}},2504:function(i){i.exports=a;function a(o,s,l){var u=l[0],c=l[1],f=l[2];return o[0]=s[0]*u,o[1]=s[1]*u,o[2]=s[2]*u,o[3]=s[3]*u,o[4]=s[4]*c,o[5]=s[5]*c,o[6]=s[6]*c,o[7]=s[7]*c,o[8]=s[8]*f,o[9]=s[9]*f,o[10]=s[10]*f,o[11]=s[11]*f,o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15],o}},2538:function(i,a,o){"use strict";var s=o(8902),l=o(5542),u=o(2272),c=o(5023);i.exports=_;function f(b){return[Math.min(b[0],b[1]),Math.max(b[0],b[1])]}function h(b,p){return b[0]-p[0]||b[1]-p[1]}function d(b){return b.map(f).sort(h)}function v(b,p,k){return p in b?b[p]:k}function _(b,p,k){Array.isArray(p)?(k=k||{},p=p||[]):(k=p||{},p=[]);var E=!!v(k,"delaunay",!0),S=!!v(k,"interior",!0),L=!!v(k,"exterior",!0),x=!!v(k,"infinity",!1);if(!S&&!L||b.length===0)return[];var C=s(b,p);if(E||S!==L||x){for(var M=l(b.length,d(p)),g=0;g0){if(Ee=1,ie[Le++]=v(M[z],E,S,L),z+=re,x>0)for(_e=1,O=M[z],Ae=ie[Le]=v(O,E,S,L),ge=ie[Le+Fe],Ze=ie[Le+Re],Zt=ie[Le+ut],(Ae!==ge||Ae!==Ze||Ae!==Zt)&&(G=M[z+V],H=M[z+Z],j=M[z+N],h(_e,Ee,O,G,H,j,Ae,ge,Ze,Zt,E,S,L),st=Se[Le]=Ce++),Le+=1,z+=re,_e=2;_e0)for(_e=1,O=M[z],Ae=ie[Le]=v(O,E,S,L),ge=ie[Le+Fe],Ze=ie[Le+Re],Zt=ie[Le+ut],(Ae!==ge||Ae!==Ze||Ae!==Zt)&&(G=M[z+V],H=M[z+Z],j=M[z+N],h(_e,Ee,O,G,H,j,Ae,ge,Ze,Zt,E,S,L),st=Se[Le]=Ce++,Zt!==Ze&&d(Se[Le+Re],st,H,j,Ze,Zt,E,S,L)),Le+=1,z+=re,_e=2;_e0){if(_e=1,ie[Le++]=v(M[z],E,S,L),z+=re,C>0)for(Ee=1,O=M[z],Ae=ie[Le]=v(O,E,S,L),Ze=ie[Le+Re],ge=ie[Le+Fe],Zt=ie[Le+ut],(Ae!==Ze||Ae!==ge||Ae!==Zt)&&(G=M[z+V],H=M[z+Z],j=M[z+N],h(_e,Ee,O,G,H,j,Ae,Ze,ge,Zt,E,S,L),st=Se[Le]=Ce++),Le+=1,z+=re,Ee=2;Ee0)for(Ee=1,O=M[z],Ae=ie[Le]=v(O,E,S,L),Ze=ie[Le+Re],ge=ie[Le+Fe],Zt=ie[Le+ut],(Ae!==Ze||Ae!==ge||Ae!==Zt)&&(G=M[z+V],H=M[z+Z],j=M[z+N],h(_e,Ee,O,G,H,j,Ae,Ze,ge,Zt,E,S,L),st=Se[Le]=Ce++,Zt!==Ze&&d(Se[Le+Re],st,j,G,Zt,Ze,E,S,L)),Le+=1,z+=re,Ee=2;Ee 0"),typeof f.vertex!="function"&&h("Must specify vertex creation function"),typeof f.cell!="function"&&h("Must specify cell creation function"),typeof f.phase!="function"&&h("Must specify phase function");for(var b=f.getters||[],p=new Array(v),k=0;k=0?p[k]=!0:p[k]=!1;return u(f.vertex,f.cell,f.phase,_,d,p)}},2642:function(i,a,o){"use strict";i.exports=u;var s=o(727);function l(c){for(var f=0,h=0;hp[1][2]&&(z[0]=-z[0]),p[0][2]>p[2][0]&&(z[1]=-z[1]),p[1][0]>p[0][1]&&(z[2]=-z[2]),!0};function E(x,C,M){var g=C[0],P=C[1],T=C[2],z=C[3];return x[0]=M[0]*g+M[4]*P+M[8]*T+M[12]*z,x[1]=M[1]*g+M[5]*P+M[9]*T+M[13]*z,x[2]=M[2]*g+M[6]*P+M[10]*T+M[14]*z,x[3]=M[3]*g+M[7]*P+M[11]*T+M[15]*z,x}function S(x,C){x[0][0]=C[0],x[0][1]=C[1],x[0][2]=C[2],x[1][0]=C[4],x[1][1]=C[5],x[1][2]=C[6],x[2][0]=C[8],x[2][1]=C[9],x[2][2]=C[10]}function L(x,C,M,g,P){x[0]=C[0]*g+M[0]*P,x[1]=C[1]*g+M[1]*P,x[2]=C[2]*g+M[2]*P}},2653:function(i,a,o){"use strict";var s=o(3865);i.exports=l;function l(u,c){for(var f=u.length,h=new Array(f),d=0;d=d[S]&&(E+=1);p[k]=E}}return h}function f(h,d){try{return s(h,!0)}catch(p){var v=l(h);if(v.length<=d)return[];var _=u(h,v),b=s(_,!0);return c(b,v)}}},2762:function(i,a,o){"use strict";var s=o(1888),l=o(5298),u=o(9618),c=["uint8","uint8_clamped","uint16","uint32","int8","int16","int32","float32"];function f(p,k,E,S,L){this.gl=p,this.type=k,this.handle=E,this.length=S,this.usage=L}var h=f.prototype;h.bind=function(){this.gl.bindBuffer(this.type,this.handle)},h.unbind=function(){this.gl.bindBuffer(this.type,null)},h.dispose=function(){this.gl.deleteBuffer(this.handle)};function d(p,k,E,S,L,x){var C=L.length*L.BYTES_PER_ELEMENT;if(x<0)return p.bufferData(k,L,S),C;if(C+x>E)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return p.bufferSubData(k,x,L),E}function v(p,k){for(var E=s.malloc(p.length,k),S=p.length,L=0;L=0;--S){if(k[S]!==E)return!1;E*=p[S]}return!0}h.update=function(p,k){if(typeof k!="number"&&(k=-1),this.bind(),typeof p=="object"&&typeof p.shape!="undefined"){var E=p.dtype;if(c.indexOf(E)<0&&(E="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var S=gl.getExtension("OES_element_index_uint");S&&E!=="uint16"?E="uint32":E="uint16"}if(E===p.dtype&&_(p.shape,p.stride))p.offset===0&&p.data.length===p.shape[0]?this.length=d(this.gl,this.type,this.length,this.usage,p.data,k):this.length=d(this.gl,this.type,this.length,this.usage,p.data.subarray(p.offset,p.shape[0]),k);else{var L=s.malloc(p.size,E),x=u(L,p.shape);l.assign(x,p),k<0?this.length=d(this.gl,this.type,this.length,this.usage,L,k):this.length=d(this.gl,this.type,this.length,this.usage,L.subarray(0,p.size),k),s.free(L)}}else if(Array.isArray(p)){var C;this.type===this.gl.ELEMENT_ARRAY_BUFFER?C=v(p,"uint16"):C=v(p,"float32"),k<0?this.length=d(this.gl,this.type,this.length,this.usage,C,k):this.length=d(this.gl,this.type,this.length,this.usage,C.subarray(0,p.length),k),s.free(C)}else if(typeof p=="object"&&typeof p.length=="number")this.length=d(this.gl,this.type,this.length,this.usage,p,k);else if(typeof p=="number"||p===void 0){if(k>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");p=p|0,p<=0&&(p=1),this.gl.bufferData(this.type,p|0,this.usage),this.length=p}else throw new Error("gl-buffer: Invalid data type")};function b(p,k,E,S){if(E=E||p.ARRAY_BUFFER,S=S||p.DYNAMIC_DRAW,E!==p.ARRAY_BUFFER&&E!==p.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(S!==p.DYNAMIC_DRAW&&S!==p.STATIC_DRAW&&S!==p.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var L=p.createBuffer(),x=new f(p,E,L,0,S);return x.update(k),x}i.exports=b},2825:function(i){i.exports=a;function a(o,s,l){var u=new Float32Array(3);return u[0]=o,u[1]=s,u[2]=l,u}},2931:function(i,a,o){i.exports={EPSILON:o(2613),create:o(1091),clone:o(3126),angle:o(8192),fromValues:o(2825),copy:o(3990),set:o(1463),equals:o(9922),exactEquals:o(9265),add:o(5632),subtract:o(6843),sub:o(2229),multiply:o(5847),mul:o(4505),divide:o(6690),div:o(4008),min:o(8107),max:o(7417),floor:o(2681),ceil:o(9226),round:o(2447),scale:o(6621),scaleAndAdd:o(8489),distance:o(7056),dist:o(5455),squaredDistance:o(2953),sqrDist:o(6141),length:o(1387),len:o(868),squaredLength:o(3066),sqrLen:o(5486),negate:o(5093),inverse:o(811),normalize:o(3536),dot:o(244),cross:o(5911),lerp:o(6658),random:o(7636),transformMat4:o(5673),transformMat3:o(492),transformQuat:o(264),rotateX:o(6894),rotateY:o(109),rotateZ:o(8692),forEach:o(5137)}},2933:function(i){i.exports=a;function a(o,s){return o[0]=s[0],o[1]=s[1],o[2]=s[2],o[3]=s[3],o}},2953:function(i){i.exports=a;function a(o,s){var l=s[0]-o[0],u=s[1]-o[1],c=s[2]-o[2];return l*l+u*u+c*c}},2962:function(i,a,o){"use strict";var s=o(5250),l=o(8210),u=o(3012),c=o(7004),f=6;function h(S,L,x,C){return function(g){return C(S(x(g[0][0],g[1][1]),x(-g[0][1],g[1][0])))}}function d(S,L,x,C){return function(g){return C(S(L(S(x(g[1][1],g[2][2]),x(-g[1][2],g[2][1])),g[0][0]),S(L(S(x(g[1][0],g[2][2]),x(-g[1][2],g[2][0])),-g[0][1]),L(S(x(g[1][0],g[2][1]),x(-g[1][1],g[2][0])),g[0][2]))))}}function v(S,L,x,C){return function(g){return C(S(S(L(S(L(S(x(g[2][2],g[3][3]),x(-g[2][3],g[3][2])),g[1][1]),S(L(S(x(g[2][1],g[3][3]),x(-g[2][3],g[3][1])),-g[1][2]),L(S(x(g[2][1],g[3][2]),x(-g[2][2],g[3][1])),g[1][3]))),g[0][0]),L(S(L(S(x(g[2][2],g[3][3]),x(-g[2][3],g[3][2])),g[1][0]),S(L(S(x(g[2][0],g[3][3]),x(-g[2][3],g[3][0])),-g[1][2]),L(S(x(g[2][0],g[3][2]),x(-g[2][2],g[3][0])),g[1][3]))),-g[0][1])),S(L(S(L(S(x(g[2][1],g[3][3]),x(-g[2][3],g[3][1])),g[1][0]),S(L(S(x(g[2][0],g[3][3]),x(-g[2][3],g[3][0])),-g[1][1]),L(S(x(g[2][0],g[3][1]),x(-g[2][1],g[3][0])),g[1][3]))),g[0][2]),L(S(L(S(x(g[2][1],g[3][2]),x(-g[2][2],g[3][1])),g[1][0]),S(L(S(x(g[2][0],g[3][2]),x(-g[2][2],g[3][0])),-g[1][1]),L(S(x(g[2][0],g[3][1]),x(-g[2][1],g[3][0])),g[1][2]))),-g[0][3]))))}}function _(S,L,x,C){return function(g){return C(S(S(L(S(S(L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][2]),S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),-g[2][3]),L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][4]))),g[1][1]),L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][1]),S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),-g[2][3]),L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),g[2][4]))),-g[1][2])),S(L(S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),g[2][1]),S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),-g[2][2]),L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][4]))),g[1][3]),L(S(L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][1]),S(L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),-g[2][2]),L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][3]))),-g[1][4]))),g[0][0]),L(S(S(L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][2]),S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),-g[2][3]),L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][4]))),g[1][0]),L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][3]),L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),g[2][4]))),-g[1][2])),S(L(S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][2]),L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),g[2][4]))),g[1][3]),L(S(L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][0]),S(L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),-g[2][2]),L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),g[2][3]))),-g[1][4]))),-g[0][1])),S(L(S(S(L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][1]),S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),-g[2][3]),L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),g[2][4]))),g[1][0]),L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][3]),L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),g[2][4]))),-g[1][1])),S(L(S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][4]))),g[1][3]),L(S(L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][3]))),-g[1][4]))),g[0][2]),S(L(S(S(L(S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),g[2][1]),S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),-g[2][2]),L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][4]))),g[1][0]),L(S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][2]),L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),g[2][4]))),-g[1][1])),S(L(S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][4]))),g[1][2]),L(S(L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][2]))),-g[1][4]))),-g[0][3]),L(S(S(L(S(L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][1]),S(L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),-g[2][2]),L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][3]))),g[1][0]),L(S(L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][0]),S(L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),-g[2][2]),L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),g[2][3]))),-g[1][1])),S(L(S(L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][3]))),g[1][2]),L(S(L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][2]))),-g[1][3]))),g[0][4])))))}}function b(S){var L=S===2?h:S===3?d:S===4?v:S===5?_:void 0;return L(l,u,s,c)}var p=[function(){return[0]},function(L){return[L[0][0]]}];function k(S,L,x,C,M,g,P,T){return function(O){switch(O.length){case 0:return S(O);case 1:return L(O);case 2:return x(O);case 3:return C(O);case 4:return M(O);case 5:return g(O)}var V=P[O.length];return V||(V=P[O.length]=T(O.length)),V(O)}}function E(){for(;p.length0?H.pop():new ArrayBuffer(j)}a.mallocArrayBuffer=k;function E(Z){return new Uint8Array(k(Z),0,Z)}a.mallocUint8=E;function S(Z){return new Uint16Array(k(2*Z),0,Z)}a.mallocUint16=S;function L(Z){return new Uint32Array(k(4*Z),0,Z)}a.mallocUint32=L;function x(Z){return new Int8Array(k(Z),0,Z)}a.mallocInt8=x;function C(Z){return new Int16Array(k(2*Z),0,Z)}a.mallocInt16=C;function M(Z){return new Int32Array(k(4*Z),0,Z)}a.mallocInt32=M;function g(Z){return new Float32Array(k(4*Z),0,Z)}a.mallocFloat32=a.mallocFloat=g;function P(Z){return new Float64Array(k(8*Z),0,Z)}a.mallocFloat64=a.mallocDouble=P;function T(Z){return c?new Uint8ClampedArray(k(Z),0,Z):E(Z)}a.mallocUint8Clamped=T;function z(Z){return f?new BigUint64Array(k(8*Z),0,Z):null}a.mallocBigUint64=z;function O(Z){return h?new BigInt64Array(k(8*Z),0,Z):null}a.mallocBigInt64=O;function V(Z){return new DataView(k(Z),0,Z)}a.mallocDataView=V;function G(Z){Z=s.nextPow2(Z);var j=s.log2(Z),N=_[j];return N.length>0?N.pop():new u(Z)}a.mallocBuffer=G,a.clearCache=function(){for(var j=0;j<32;++j)d.UINT8[j].length=0,d.UINT16[j].length=0,d.UINT32[j].length=0,d.INT8[j].length=0,d.INT16[j].length=0,d.INT32[j].length=0,d.FLOAT[j].length=0,d.DOUBLE[j].length=0,d.BIGUINT64[j].length=0,d.BIGINT64[j].length=0,d.UINT8C[j].length=0,v[j].length=0,_[j].length=0}},1903:function(i){i.exports=a;function a(o){var s=new Float32Array(16);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s[3]=o[3],s[4]=o[4],s[5]=o[5],s[6]=o[6],s[7]=o[7],s[8]=o[8],s[9]=o[9],s[10]=o[10],s[11]=o[11],s[12]=o[12],s[13]=o[13],s[14]=o[14],s[15]=o[15],s}},1944:function(i,a,o){"use strict";var s=o(5250),l=o(8210);i.exports=u;function u(c,f){for(var h=s(c[0],f[0]),d=1;d>1,G=h(g[V],P);G<=0?(G===0&&(O=V),T=V+1):G>0&&(z=V-1)}return O}a.findCell=b;function p(g,P){for(var T=new Array(g.length),z=0,O=T.length;z=g.length||h(g[_e],V)!==0););}return T}a.incidence=p;function k(g,P){if(!P)return p(_(S(g,0)),g,0);for(var T=new Array(P),z=0;z>>N&1&&j.push(O[N]);P.push(j)}return v(P)}a.explode=E;function S(g,P){if(P<0)return[];for(var T=[],z=(1<0}C=C.filter(M);for(var g=C.length,P=new Array(g),T=new Array(g),x=0;x0;){var ce=Pe.pop(),Ze=Ee[ce];h(Ze,function(lt,Gt){return lt-Gt});var ut=Ze.length,pt=ge[ce],Zt;if(pt===0){var j=C[ce];Zt=[j]}for(var x=0;x=0)&&(ge[st]=pt^1,Pe.push(st),pt===0)){var j=C[st];Fe(j)||(j.reverse(),Zt.push(j))}}pt===0&&Re.push(Zt)}return Re}},2145:function(i,a){"use strict";a.uniforms=u,a.attributes=c;var o={FLOAT:"float",FLOAT_VEC2:"vec2",FLOAT_VEC3:"vec3",FLOAT_VEC4:"vec4",INT:"int",INT_VEC2:"ivec2",INT_VEC3:"ivec3",INT_VEC4:"ivec4",BOOL:"bool",BOOL_VEC2:"bvec2",BOOL_VEC3:"bvec3",BOOL_VEC4:"bvec4",FLOAT_MAT2:"mat2",FLOAT_MAT3:"mat3",FLOAT_MAT4:"mat4",SAMPLER_2D:"sampler2D",SAMPLER_CUBE:"samplerCube"},s=null;function l(f,h){if(!s){var d=Object.keys(o);s={};for(var v=0;v1)for(var k=0;k1&&G.drawBuffersWEBGL(l[V]);var te=P.getExtension("WEBGL_depth_texture");te?Z?M.depth=p(P,z,O,te.UNSIGNED_INT_24_8_WEBGL,P.DEPTH_STENCIL,P.DEPTH_STENCIL_ATTACHMENT):j&&(M.depth=p(P,z,O,P.UNSIGNED_SHORT,P.DEPTH_COMPONENT,P.DEPTH_ATTACHMENT)):j&&Z?M._depth_rb=k(P,z,O,P.DEPTH_STENCIL,P.DEPTH_STENCIL_ATTACHMENT):j?M._depth_rb=k(P,z,O,P.DEPTH_COMPONENT16,P.DEPTH_ATTACHMENT):Z&&(M._depth_rb=k(P,z,O,P.STENCIL_INDEX,P.STENCIL_ATTACHMENT));var oe=P.checkFramebufferStatus(P.FRAMEBUFFER);if(oe!==P.FRAMEBUFFER_COMPLETE){M._destroyed=!0,P.bindFramebuffer(P.FRAMEBUFFER,null),P.deleteFramebuffer(M.handle),M.handle=null,M.depth&&(M.depth.dispose(),M.depth=null),M._depth_rb&&(P.deleteRenderbuffer(M._depth_rb),M._depth_rb=null);for(var H=0;Hz||P<0||P>z)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");M._shape[0]=g,M._shape[1]=P;for(var O=d(T),V=0;VO||P<0||P>O)throw new Error("gl-fbo: Parameters are too large for FBO");T=T||{};var V=1;if("color"in T){if(V=Math.max(T.color|0,0),V<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(V>1)if(z){if(V>M.getParameter(z.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+V+" draw buffers")}else throw new Error("gl-fbo: Multiple draw buffer extension not supported")}var G=M.UNSIGNED_BYTE,Z=M.getExtension("OES_texture_float");if(T.float&&V>0){if(!Z)throw new Error("gl-fbo: Context does not support floating point textures");G=M.FLOAT}else T.preferFloat&&V>0&&Z&&(G=M.FLOAT);var j=!0;"depth"in T&&(j=!!T.depth);var N=!1;return"stencil"in T&&(N=!!T.stencil),new S(M,g,P,G,V,j,N,z)}},2272:function(i,a,o){"use strict";var s=o(2646)[4],l=o(2478);i.exports=c;function u(f,h,d,v,_,b){var p=h.opposite(v,_);if(!(p<0)){if(_0;){for(var E=d.pop(),b=d.pop(),S=-1,L=-1,p=_[b],C=1;C=0||(h.flip(b,E),u(f,h,d,S,b,L),u(f,h,d,b,L,S),u(f,h,d,L,E,S),u(f,h,d,E,S,L))}}},2334:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.min(s[0],l[0]),o[1]=Math.min(s[1],l[1]),o[2]=Math.min(s[2],l[2]),o[3]=Math.min(s[3],l[3]),o}},2335:function(i){i.exports=a;function a(o){var s=new Float32Array(4);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s[3]=o[3],s}},2361:function(i){var a=!1;if(typeof Float64Array!="undefined"){var o=new Float64Array(1),s=new Uint32Array(o.buffer);if(o[0]=1,a=!0,s[1]===1072693248){let k=function(L,x){return s[0]=L,s[1]=x,o[0]},E=function(L){return o[0]=L,s[0]},S=function(L){return o[0]=L,s[1]};var u=k,c=E,f=S;i.exports=function(x){return o[0]=x,[s[0],s[1]]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=S}else if(s[0]===1072693248){let k=function(L,x){return s[1]=L,s[0]=x,o[0]},E=function(L){return o[0]=L,s[1]},S=function(L){return o[0]=L,s[0]};var h=k,d=E,v=S;i.exports=function(x){return o[0]=x,[s[1],s[0]]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=S}else a=!1}if(!a){let k=function(L,x){return l.writeUInt32LE(L,0,!0),l.writeUInt32LE(x,4,!0),l.readDoubleLE(0,!0)},E=function(L){return l.writeDoubleLE(L,0,!0),l.readUInt32LE(0,!0)},S=function(L){return l.writeDoubleLE(L,0,!0),l.readUInt32LE(4,!0)};var _=k,b=E,p=S,l=new Buffer(8);i.exports=function(x){return l.writeDoubleLE(x,0,!0),[l.readUInt32LE(0,!0),l.readUInt32LE(4,!0)]},i.exports.pack=k,i.exports.lo=E,i.exports.hi=S}i.exports.sign=function(k){return i.exports.hi(k)>>>31},i.exports.exponent=function(k){var E=i.exports.hi(k);return(E<<1>>>21)-1023},i.exports.fraction=function(k){var E=i.exports.lo(k),S=i.exports.hi(k),L=S&(1<<20)-1;return S&2146435072&&(L+=1048576),[E,L]},i.exports.denormalized=function(k){var E=i.exports.hi(k);return!(E&2146435072)}},2408:function(i){i.exports=a;function a(o,s,l){var u=Math.sin(l),c=Math.cos(l),f=s[0],h=s[1],d=s[2],v=s[3],_=s[8],b=s[9],p=s[10],k=s[11];return s!==o&&(o[4]=s[4],o[5]=s[5],o[6]=s[6],o[7]=s[7],o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15]),o[0]=f*c-_*u,o[1]=h*c-b*u,o[2]=d*c-p*u,o[3]=v*c-k*u,o[8]=f*u+_*c,o[9]=h*u+b*c,o[10]=d*u+p*c,o[11]=v*u+k*c,o}},2419:function(i){"use strict";i.exports=a;function a(o){for(var s=1,l=1;lS-E?u(h,d,v,_,b,p,k,E,S,L,x):c(h,d,v,_,b,p,k,E,S,L,x)}return f}function s(){function u(v,_,b,p,k,E,S,L,x,C,M){for(var g=2*v,P=p,T=g*p;PC-x?p?u(v,_,b,k,E,S,L,x,C,M,g):c(v,_,b,k,E,S,L,x,C,M,g):p?f(v,_,b,k,E,S,L,x,C,M,g):h(v,_,b,k,E,S,L,x,C,M,g)}return d}function l(u){return u?o():s()}a.partial=l(!1),a.full=l(!0)},2478:function(i){"use strict";function a(f,h,d,v,_){for(var b=_+1;v<=_;){var p=v+_>>>1,k=f[p],E=d!==void 0?d(k,h):k-h;E>=0?(b=p,_=p-1):v=p+1}return b}function o(f,h,d,v,_){for(var b=_+1;v<=_;){var p=v+_>>>1,k=f[p],E=d!==void 0?d(k,h):k-h;E>0?(b=p,_=p-1):v=p+1}return b}function s(f,h,d,v,_){for(var b=v-1;v<=_;){var p=v+_>>>1,k=f[p],E=d!==void 0?d(k,h):k-h;E<0?(b=p,v=p+1):_=p-1}return b}function l(f,h,d,v,_){for(var b=v-1;v<=_;){var p=v+_>>>1,k=f[p],E=d!==void 0?d(k,h):k-h;E<=0?(b=p,v=p+1):_=p-1}return b}function u(f,h,d,v,_){for(;v<=_;){var b=v+_>>>1,p=f[b],k=d!==void 0?d(p,h):p-h;if(k===0)return b;k<=0?v=b+1:_=b-1}return-1}function c(f,h,d,v,_,b){return typeof d=="function"?b(f,h,d,v===void 0?0:v|0,_===void 0?f.length-1:_|0):b(f,h,void 0,d===void 0?0:d|0,v===void 0?f.length-1:v|0)}i.exports={ge:function(f,h,d,v,_){return c(f,h,d,v,_,a)},gt:function(f,h,d,v,_){return c(f,h,d,v,_,o)},lt:function(f,h,d,v,_){return c(f,h,d,v,_,s)},le:function(f,h,d,v,_){return c(f,h,d,v,_,l)},eq:function(f,h,d,v,_){return c(f,h,d,v,_,u)}}},2504:function(i){i.exports=a;function a(o,s,l){var u=l[0],c=l[1],f=l[2];return o[0]=s[0]*u,o[1]=s[1]*u,o[2]=s[2]*u,o[3]=s[3]*u,o[4]=s[4]*c,o[5]=s[5]*c,o[6]=s[6]*c,o[7]=s[7]*c,o[8]=s[8]*f,o[9]=s[9]*f,o[10]=s[10]*f,o[11]=s[11]*f,o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15],o}},2538:function(i,a,o){"use strict";var s=o(8902),l=o(5542),u=o(2272),c=o(5023);i.exports=_;function f(b){return[Math.min(b[0],b[1]),Math.max(b[0],b[1])]}function h(b,p){return b[0]-p[0]||b[1]-p[1]}function d(b){return b.map(f).sort(h)}function v(b,p,k){return p in b?b[p]:k}function _(b,p,k){Array.isArray(p)?(k=k||{},p=p||[]):(k=p||{},p=[]);var E=!!v(k,"delaunay",!0),S=!!v(k,"interior",!0),L=!!v(k,"exterior",!0),x=!!v(k,"infinity",!1);if(!S&&!L||b.length===0)return[];var C=s(b,p);if(E||S!==L||x){for(var M=l(b.length,d(p)),g=0;g0){if(Ee=1,ie[Le++]=v(M[z],E,S,L),z+=te,x>0)for(_e=1,O=M[z],Ae=ie[Le]=v(O,E,S,L),ge=ie[Le+Fe],Ze=ie[Le+Re],Zt=ie[Le+ut],(Ae!==ge||Ae!==Ze||Ae!==Zt)&&(G=M[z+V],j=M[z+Z],H=M[z+N],h(_e,Ee,O,G,j,H,Ae,ge,Ze,Zt,E,S,L),st=Se[Le]=Ce++),Le+=1,z+=te,_e=2;_e0)for(_e=1,O=M[z],Ae=ie[Le]=v(O,E,S,L),ge=ie[Le+Fe],Ze=ie[Le+Re],Zt=ie[Le+ut],(Ae!==ge||Ae!==Ze||Ae!==Zt)&&(G=M[z+V],j=M[z+Z],H=M[z+N],h(_e,Ee,O,G,j,H,Ae,ge,Ze,Zt,E,S,L),st=Se[Le]=Ce++,Zt!==Ze&&d(Se[Le+Re],st,j,H,Ze,Zt,E,S,L)),Le+=1,z+=te,_e=2;_e0){if(_e=1,ie[Le++]=v(M[z],E,S,L),z+=te,C>0)for(Ee=1,O=M[z],Ae=ie[Le]=v(O,E,S,L),Ze=ie[Le+Re],ge=ie[Le+Fe],Zt=ie[Le+ut],(Ae!==Ze||Ae!==ge||Ae!==Zt)&&(G=M[z+V],j=M[z+Z],H=M[z+N],h(_e,Ee,O,G,j,H,Ae,Ze,ge,Zt,E,S,L),st=Se[Le]=Ce++),Le+=1,z+=te,Ee=2;Ee0)for(Ee=1,O=M[z],Ae=ie[Le]=v(O,E,S,L),Ze=ie[Le+Re],ge=ie[Le+Fe],Zt=ie[Le+ut],(Ae!==Ze||Ae!==ge||Ae!==Zt)&&(G=M[z+V],j=M[z+Z],H=M[z+N],h(_e,Ee,O,G,j,H,Ae,Ze,ge,Zt,E,S,L),st=Se[Le]=Ce++,Zt!==Ze&&d(Se[Le+Re],st,H,G,Zt,Ze,E,S,L)),Le+=1,z+=te,Ee=2;Ee 0"),typeof f.vertex!="function"&&h("Must specify vertex creation function"),typeof f.cell!="function"&&h("Must specify cell creation function"),typeof f.phase!="function"&&h("Must specify phase function");for(var b=f.getters||[],p=new Array(v),k=0;k=0?p[k]=!0:p[k]=!1;return u(f.vertex,f.cell,f.phase,_,d,p)}},2642:function(i,a,o){"use strict";i.exports=u;var s=o(727);function l(c){for(var f=0,h=0;hp[1][2]&&(z[0]=-z[0]),p[0][2]>p[2][0]&&(z[1]=-z[1]),p[1][0]>p[0][1]&&(z[2]=-z[2]),!0};function E(x,C,M){var g=C[0],P=C[1],T=C[2],z=C[3];return x[0]=M[0]*g+M[4]*P+M[8]*T+M[12]*z,x[1]=M[1]*g+M[5]*P+M[9]*T+M[13]*z,x[2]=M[2]*g+M[6]*P+M[10]*T+M[14]*z,x[3]=M[3]*g+M[7]*P+M[11]*T+M[15]*z,x}function S(x,C){x[0][0]=C[0],x[0][1]=C[1],x[0][2]=C[2],x[1][0]=C[4],x[1][1]=C[5],x[1][2]=C[6],x[2][0]=C[8],x[2][1]=C[9],x[2][2]=C[10]}function L(x,C,M,g,P){x[0]=C[0]*g+M[0]*P,x[1]=C[1]*g+M[1]*P,x[2]=C[2]*g+M[2]*P}},2653:function(i,a,o){"use strict";var s=o(3865);i.exports=l;function l(u,c){for(var f=u.length,h=new Array(f),d=0;d=d[S]&&(E+=1);p[k]=E}}return h}function f(h,d){try{return s(h,!0)}catch(p){var v=l(h);if(v.length<=d)return[];var _=u(h,v),b=s(_,!0);return c(b,v)}}},2762:function(i,a,o){"use strict";var s=o(1888),l=o(5298),u=o(9618),c=["uint8","uint8_clamped","uint16","uint32","int8","int16","int32","float32"];function f(p,k,E,S,L){this.gl=p,this.type=k,this.handle=E,this.length=S,this.usage=L}var h=f.prototype;h.bind=function(){this.gl.bindBuffer(this.type,this.handle)},h.unbind=function(){this.gl.bindBuffer(this.type,null)},h.dispose=function(){this.gl.deleteBuffer(this.handle)};function d(p,k,E,S,L,x){var C=L.length*L.BYTES_PER_ELEMENT;if(x<0)return p.bufferData(k,L,S),C;if(C+x>E)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return p.bufferSubData(k,x,L),E}function v(p,k){for(var E=s.malloc(p.length,k),S=p.length,L=0;L=0;--S){if(k[S]!==E)return!1;E*=p[S]}return!0}h.update=function(p,k){if(typeof k!="number"&&(k=-1),this.bind(),typeof p=="object"&&typeof p.shape!="undefined"){var E=p.dtype;if(c.indexOf(E)<0&&(E="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var S=gl.getExtension("OES_element_index_uint");S&&E!=="uint16"?E="uint32":E="uint16"}if(E===p.dtype&&_(p.shape,p.stride))p.offset===0&&p.data.length===p.shape[0]?this.length=d(this.gl,this.type,this.length,this.usage,p.data,k):this.length=d(this.gl,this.type,this.length,this.usage,p.data.subarray(p.offset,p.shape[0]),k);else{var L=s.malloc(p.size,E),x=u(L,p.shape);l.assign(x,p),k<0?this.length=d(this.gl,this.type,this.length,this.usage,L,k):this.length=d(this.gl,this.type,this.length,this.usage,L.subarray(0,p.size),k),s.free(L)}}else if(Array.isArray(p)){var C;this.type===this.gl.ELEMENT_ARRAY_BUFFER?C=v(p,"uint16"):C=v(p,"float32"),k<0?this.length=d(this.gl,this.type,this.length,this.usage,C,k):this.length=d(this.gl,this.type,this.length,this.usage,C.subarray(0,p.length),k),s.free(C)}else if(typeof p=="object"&&typeof p.length=="number")this.length=d(this.gl,this.type,this.length,this.usage,p,k);else if(typeof p=="number"||p===void 0){if(k>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");p=p|0,p<=0&&(p=1),this.gl.bufferData(this.type,p|0,this.usage),this.length=p}else throw new Error("gl-buffer: Invalid data type")};function b(p,k,E,S){if(E=E||p.ARRAY_BUFFER,S=S||p.DYNAMIC_DRAW,E!==p.ARRAY_BUFFER&&E!==p.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(S!==p.DYNAMIC_DRAW&&S!==p.STATIC_DRAW&&S!==p.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var L=p.createBuffer(),x=new f(p,E,L,0,S);return x.update(k),x}i.exports=b},2825:function(i){i.exports=a;function a(o,s,l){var u=new Float32Array(3);return u[0]=o,u[1]=s,u[2]=l,u}},2931:function(i,a,o){i.exports={EPSILON:o(2613),create:o(1091),clone:o(3126),angle:o(8192),fromValues:o(2825),copy:o(3990),set:o(1463),equals:o(9922),exactEquals:o(9265),add:o(5632),subtract:o(6843),sub:o(2229),multiply:o(5847),mul:o(4505),divide:o(6690),div:o(4008),min:o(8107),max:o(7417),floor:o(2681),ceil:o(9226),round:o(2447),scale:o(6621),scaleAndAdd:o(8489),distance:o(7056),dist:o(5455),squaredDistance:o(2953),sqrDist:o(6141),length:o(1387),len:o(868),squaredLength:o(3066),sqrLen:o(5486),negate:o(5093),inverse:o(811),normalize:o(3536),dot:o(244),cross:o(5911),lerp:o(6658),random:o(7636),transformMat4:o(5673),transformMat3:o(492),transformQuat:o(264),rotateX:o(6894),rotateY:o(109),rotateZ:o(8692),forEach:o(5137)}},2933:function(i){i.exports=a;function a(o,s){return o[0]=s[0],o[1]=s[1],o[2]=s[2],o[3]=s[3],o}},2953:function(i){i.exports=a;function a(o,s){var l=s[0]-o[0],u=s[1]-o[1],c=s[2]-o[2];return l*l+u*u+c*c}},2962:function(i,a,o){"use strict";var s=o(5250),l=o(8210),u=o(3012),c=o(7004),f=6;function h(S,L,x,C){return function(g){return C(S(x(g[0][0],g[1][1]),x(-g[0][1],g[1][0])))}}function d(S,L,x,C){return function(g){return C(S(L(S(x(g[1][1],g[2][2]),x(-g[1][2],g[2][1])),g[0][0]),S(L(S(x(g[1][0],g[2][2]),x(-g[1][2],g[2][0])),-g[0][1]),L(S(x(g[1][0],g[2][1]),x(-g[1][1],g[2][0])),g[0][2]))))}}function v(S,L,x,C){return function(g){return C(S(S(L(S(L(S(x(g[2][2],g[3][3]),x(-g[2][3],g[3][2])),g[1][1]),S(L(S(x(g[2][1],g[3][3]),x(-g[2][3],g[3][1])),-g[1][2]),L(S(x(g[2][1],g[3][2]),x(-g[2][2],g[3][1])),g[1][3]))),g[0][0]),L(S(L(S(x(g[2][2],g[3][3]),x(-g[2][3],g[3][2])),g[1][0]),S(L(S(x(g[2][0],g[3][3]),x(-g[2][3],g[3][0])),-g[1][2]),L(S(x(g[2][0],g[3][2]),x(-g[2][2],g[3][0])),g[1][3]))),-g[0][1])),S(L(S(L(S(x(g[2][1],g[3][3]),x(-g[2][3],g[3][1])),g[1][0]),S(L(S(x(g[2][0],g[3][3]),x(-g[2][3],g[3][0])),-g[1][1]),L(S(x(g[2][0],g[3][1]),x(-g[2][1],g[3][0])),g[1][3]))),g[0][2]),L(S(L(S(x(g[2][1],g[3][2]),x(-g[2][2],g[3][1])),g[1][0]),S(L(S(x(g[2][0],g[3][2]),x(-g[2][2],g[3][0])),-g[1][1]),L(S(x(g[2][0],g[3][1]),x(-g[2][1],g[3][0])),g[1][2]))),-g[0][3]))))}}function _(S,L,x,C){return function(g){return C(S(S(L(S(S(L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][2]),S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),-g[2][3]),L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][4]))),g[1][1]),L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][1]),S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),-g[2][3]),L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),g[2][4]))),-g[1][2])),S(L(S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),g[2][1]),S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),-g[2][2]),L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][4]))),g[1][3]),L(S(L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][1]),S(L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),-g[2][2]),L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][3]))),-g[1][4]))),g[0][0]),L(S(S(L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][2]),S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),-g[2][3]),L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][4]))),g[1][0]),L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][3]),L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),g[2][4]))),-g[1][2])),S(L(S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][2]),L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),g[2][4]))),g[1][3]),L(S(L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][0]),S(L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),-g[2][2]),L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),g[2][3]))),-g[1][4]))),-g[0][1])),S(L(S(S(L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][1]),S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),-g[2][3]),L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),g[2][4]))),g[1][0]),L(S(L(S(x(g[3][3],g[4][4]),x(-g[3][4],g[4][3])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][3]),L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),g[2][4]))),-g[1][1])),S(L(S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][4]))),g[1][3]),L(S(L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][3]))),-g[1][4]))),g[0][2]),S(L(S(S(L(S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),g[2][1]),S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),-g[2][2]),L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][4]))),g[1][0]),L(S(L(S(x(g[3][2],g[4][4]),x(-g[3][4],g[4][2])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][2]),L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),g[2][4]))),-g[1][1])),S(L(S(L(S(x(g[3][1],g[4][4]),x(-g[3][4],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][4]),x(-g[3][4],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][4]))),g[1][2]),L(S(L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][2]))),-g[1][4]))),-g[0][3]),L(S(S(L(S(L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][1]),S(L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),-g[2][2]),L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][3]))),g[1][0]),L(S(L(S(x(g[3][2],g[4][3]),x(-g[3][3],g[4][2])),g[2][0]),S(L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),-g[2][2]),L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),g[2][3]))),-g[1][1])),S(L(S(L(S(x(g[3][1],g[4][3]),x(-g[3][3],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][3]),x(-g[3][3],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][3]))),g[1][2]),L(S(L(S(x(g[3][1],g[4][2]),x(-g[3][2],g[4][1])),g[2][0]),S(L(S(x(g[3][0],g[4][2]),x(-g[3][2],g[4][0])),-g[2][1]),L(S(x(g[3][0],g[4][1]),x(-g[3][1],g[4][0])),g[2][2]))),-g[1][3]))),g[0][4])))))}}function b(S){var L=S===2?h:S===3?d:S===4?v:S===5?_:void 0;return L(l,u,s,c)}var p=[function(){return[0]},function(L){return[L[0][0]]}];function k(S,L,x,C,M,g,P,T){return function(O){switch(O.length){case 0:return S(O);case 1:return L(O);case 2:return x(O);case 3:return C(O);case 4:return M(O);case 5:return g(O)}var V=P[O.length];return V||(V=P[O.length]=T(O.length)),V(O)}}function E(){for(;p.length0){z=d[G][P][0],V=G;break}O=z[V^1];for(var Z=0;Z<2;++Z)for(var H=d[Z][P],N=0;N0&&(z=j,O=re,V=Z)}return T||z&&p(z,V),O}function E(g,P){var T=d[P][g][0],z=[g];p(T,P);for(var O=T[P^1],V=P;;){for(;O!==g;)z.push(O),O=k(z[z.length-2],O,!1);if(d[0][g].length+d[1][g].length===0)break;var G=z[z.length-1],Z=g,H=z[1],N=k(G,Z,!0);if(s(c[G],c[Z],c[H],c[N])<0)break;z.push(g),O=k(G,Z)}return z}function S(g,P){return P[1]===P[P.length-1]}for(var v=0;v0;){var C=d[0][v].length,M=E(v,L);S(x,M)?x.push.apply(x,M):(x.length>0&&b.push(x),x=M)}x.length>0&&b.push(x)}return b}},3090:function(i,a,o){"use strict";i.exports=l;var s=o(3250)[3];function l(u){var c=u.length;if(c<3){for(var k=new Array(c),f=0;f1&&s(u[d[p-2]],u[d[p-1]],b)<=0;)p-=1,d.pop();for(d.push(_),p=v.length;p>1&&s(u[v[p-2]],u[v[p-1]],b)>=0;)p-=1,v.pop();v.push(_)}for(var k=new Array(v.length+d.length-2),E=0,f=0,S=d.length;f0;--L)k[E++]=v[L];return k}},3105:function(i,a){"use strict";"use restrict";var o=32;a.INT_BITS=o,a.INT_MAX=2147483647,a.INT_MIN=-1<0)-(u<0)},a.abs=function(u){var c=u>>o-1;return(u^c)-c},a.min=function(u,c){return c^(u^c)&-(u65535)<<4,u>>>=c,f=(u>255)<<3,u>>>=f,c|=f,f=(u>15)<<2,u>>>=f,c|=f,f=(u>3)<<1,u>>>=f,c|=f,c|u>>1},a.log10=function(u){return u>=1e9?9:u>=1e8?8:u>=1e7?7:u>=1e6?6:u>=1e5?5:u>=1e4?4:u>=1e3?3:u>=100?2:u>=10?1:0},a.popCount=function(u){return u=u-(u>>>1&1431655765),u=(u&858993459)+(u>>>2&858993459),(u+(u>>>4)&252645135)*16843009>>>24};function s(u){var c=32;return u&=-u,u&&c--,u&65535&&(c-=16),u&16711935&&(c-=8),u&252645135&&(c-=4),u&858993459&&(c-=2),u&1431655765&&(c-=1),c}a.countTrailingZeros=s,a.nextPow2=function(u){return u+=u===0,--u,u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u+1},a.prevPow2=function(u){return u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u-(u>>>1)},a.parity=function(u){return u^=u>>>16,u^=u>>>8,u^=u>>>4,u&=15,27030>>>u&1};var l=new Array(256);(function(u){for(var c=0;c<256;++c){var f=c,h=c,d=7;for(f>>>=1;f;f>>>=1)h<<=1,h|=f&1,--d;u[c]=h<>>8&255]<<16|l[u>>>16&255]<<8|l[u>>>24&255]},a.interleave2=function(u,c){return u&=65535,u=(u|u<<8)&16711935,u=(u|u<<4)&252645135,u=(u|u<<2)&858993459,u=(u|u<<1)&1431655765,c&=65535,c=(c|c<<8)&16711935,c=(c|c<<4)&252645135,c=(c|c<<2)&858993459,c=(c|c<<1)&1431655765,u|c<<1},a.deinterleave2=function(u,c){return u=u>>>c&1431655765,u=(u|u>>>1)&858993459,u=(u|u>>>2)&252645135,u=(u|u>>>4)&16711935,u=(u|u>>>16)&65535,u<<16>>16},a.interleave3=function(u,c,f){return u&=1023,u=(u|u<<16)&4278190335,u=(u|u<<8)&251719695,u=(u|u<<4)&3272356035,u=(u|u<<2)&1227133513,c&=1023,c=(c|c<<16)&4278190335,c=(c|c<<8)&251719695,c=(c|c<<4)&3272356035,c=(c|c<<2)&1227133513,u|=c<<1,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,u|f<<2},a.deinterleave3=function(u,c){return u=u>>>c&1227133513,u=(u|u>>>2)&3272356035,u=(u|u>>>4)&251719695,u=(u|u>>>8)&4278190335,u=(u|u>>>16)&1023,u<<22>>22},a.nextCombination=function(u){var c=u|u-1;return c+1|(~c&-~c)-1>>>s(u)+1}},3126:function(i){i.exports=a;function a(o){var s=new Float32Array(3);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s}},3134:function(i,a,o){"use strict";i.exports=l;var s=o(1682);function l(u,c){var f=u.length;if(typeof c!="number"){c=0;for(var h=0;h=0}function d(v,_,b,p){var k=s(_,b,p);if(k===0){var E=l(s(v,_,b)),S=l(s(v,_,p));if(E===S){if(E===0){var L=h(v,_,b),x=h(v,_,p);return L===x?0:L?1:-1}return 0}else{if(S===0)return E>0||h(v,_,p)?-1:1;if(E===0)return S>0||h(v,_,b)?1:-1}return l(S-E)}var C=s(v,_,b);if(C>0)return k>0&&s(v,_,p)>0?1:-1;if(C<0)return k>0||s(v,_,p)>0?1:-1;var M=s(v,_,p);return M>0||h(v,_,b)?1:-1}},3202:function(i){i.exports=function(o,s){s||(s=[0,""]),o=String(o);var l=parseFloat(o,10);return s[0]=l,s[1]=o.match(/[\d.\-\+]*\s*(.*)/)[1]||"",s}},3233:function(i){"use strict";var a="",o;i.exports=s;function s(l,u){if(typeof l!="string")throw new TypeError("expected a string");if(u===1)return l;if(u===2)return l+l;var c=l.length*u;if(o!==l||typeof o=="undefined")o=l,a="";else if(a.length>=c)return a.substr(0,c);for(;c>a.length&&u>1;)u&1&&(a+=l),u>>=1,l+=l;return a+=l,a=a.substr(0,c),a}},3236:function(i){i.exports=function(a){typeof a=="string"&&(a=[a]);for(var o=[].slice.call(arguments,1),s=[],l=0;l0){if(V<=0)return G;Z=O+V}else if(O<0){if(V>=0)return G;Z=-(O+V)}else return G;var H=d*Z;return G>=H||G<=-H?G:E(P,T,z)},function(P,T,z,O){var V=P[0]-O[0],G=T[0]-O[0],Z=z[0]-O[0],H=P[1]-O[1],N=T[1]-O[1],j=z[1]-O[1],re=P[2]-O[2],oe=T[2]-O[2],_e=z[2]-O[2],Ee=G*j,Ce=Z*N,me=Z*H,ie=V*j,Se=V*N,Le=G*H,Ae=re*(Ee-Ce)+oe*(me-ie)+_e*(Se-Le),Fe=(Math.abs(Ee)+Math.abs(Ce))*Math.abs(re)+(Math.abs(me)+Math.abs(ie))*Math.abs(oe)+(Math.abs(Se)+Math.abs(Le))*Math.abs(_e),Pe=v*Fe;return Ae>Pe||-Ae>Pe?Ae:S(P,T,z,O)}];function x(g){var P=L[g.length];return P||(P=L[g.length]=k(g.length)),P.apply(void 0,g)}function C(g,P,T,z,O,V,G){return function(H,N,j,re,oe){switch(arguments.length){case 0:case 1:return 0;case 2:return z(H,N);case 3:return O(H,N,j);case 4:return V(H,N,j,re);case 5:return G(H,N,j,re,oe)}for(var _e=new Array(arguments.length),Ee=0;Ee4)throw new l("","Invalid data type");switch(re.charAt(0)){case"b":case"i":h["uniform"+oe+"iv"](_[V],G);break;case"v":h["uniform"+oe+"fv"](_[V],G);break;default:throw new l("","Unrecognized data type for vector "+name+": "+re)}}else if(re.indexOf("mat")===0&&re.length===4){if(oe=re.charCodeAt(re.length-1)-48,oe<2||oe>4)throw new l("","Invalid uniform dimension type for matrix "+name+": "+re);h["uniformMatrix"+oe+"fv"](_[V],!1,G);break}else throw new l("","Unknown uniform data type for "+name+": "+re)}}}}}function k(C,M){if(typeof M!="object")return[[C,M]];var g=[];for(var P in M){var T=M[P],z=C;parseInt(P)+""===P?z+="["+P+"]":z+="."+P,typeof T=="object"?g.push.apply(g,k(z,T)):g.push([z,T])}return g}function E(C){switch(C){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var M=C.indexOf("vec");if(0<=M&&M<=1&&C.length===4+M){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new l("","Invalid data type");return C.charAt(0)==="b"?c(g,!1):c(g,0)}else if(C.indexOf("mat")===0&&C.length===4){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new l("","Invalid uniform dimension type for matrix "+name+": "+C);return c(g*g,0)}else throw new l("","Unknown uniform data type for "+name+": "+C)}}function S(C,M,g){if(typeof g=="object"){var P=L(g);Object.defineProperty(C,M,{get:u(P),set:p(g),enumerable:!0,configurable:!1})}else _[g]?Object.defineProperty(C,M,{get:b(g),set:p(g),enumerable:!0,configurable:!1}):C[M]=E(v[g].type)}function L(C){var M;if(Array.isArray(C)){M=new Array(C.length);for(var g=0;g=0!=M>=0&&_.push(E[0]+.5+.5*(C+M)/(C-M))}v+=x,++E[0]}}}function o(){return a()}var s=o;function l(f){var h={};return function(v,_,b){var p=v.dtype,k=v.order,E=[p,k.join()].join(),S=h[E];return S||(h[E]=S=f([p,k])),S(v.shape.slice(0),v.data,v.stride,v.offset|0,_,b)}}function u(f){return l(s.bind(void 0,f))}function c(f){return u({funcName:f.funcName})}i.exports=c({funcName:"zeroCrossings"})},3352:function(i,a,o){"use strict";var s=o(2478),l=0,u=1,c=2;i.exports=P;function f(T,z,O,V,G){this.mid=T,this.left=z,this.right=O,this.leftPoints=V,this.rightPoints=G,this.count=(z?z.count:0)+(O?O.count:0)+V.length}var h=f.prototype;function d(T,z){T.mid=z.mid,T.left=z.left,T.right=z.right,T.leftPoints=z.leftPoints,T.rightPoints=z.rightPoints,T.count=z.count}function v(T,z){var O=C(z);T.mid=O.mid,T.left=O.left,T.right=O.right,T.leftPoints=O.leftPoints,T.rightPoints=O.rightPoints,T.count=O.count}function _(T,z){var O=T.intervals([]);O.push(z),v(T,O)}function b(T,z){var O=T.intervals([]),V=O.indexOf(z);return V<0?l:(O.splice(V,1),v(T,O),u)}h.intervals=function(T){return T.push.apply(T,this.leftPoints),this.left&&this.left.intervals(T),this.right&&this.right.intervals(T),T},h.insert=function(T){var z=this.count-this.leftPoints.length;if(this.count+=1,T[1]3*(z+1)?_(this,T):this.left.insert(T):this.left=C([T]);else if(T[0]>this.mid)this.right?4*(this.right.count+1)>3*(z+1)?_(this,T):this.right.insert(T):this.right=C([T]);else{var O=s.ge(this.leftPoints,T,L),V=s.ge(this.rightPoints,T,x);this.leftPoints.splice(O,0,T),this.rightPoints.splice(V,0,T)}},h.remove=function(T){var z=this.count-this.leftPoints;if(T[1]3*(z-1))return b(this,T);var V=this.left.remove(T);return V===c?(this.left=null,this.count-=1,u):(V===u&&(this.count-=1),V)}else if(T[0]>this.mid){if(!this.right)return l;var G=this.left?this.left.count:0;if(4*G>3*(z-1))return b(this,T);var V=this.right.remove(T);return V===c?(this.right=null,this.count-=1,u):(V===u&&(this.count-=1),V)}else{if(this.count===1)return this.leftPoints[0]===T?c:l;if(this.leftPoints.length===1&&this.leftPoints[0]===T){if(this.left&&this.right){for(var Z=this,H=this.left;H.right;)Z=H,H=H.right;if(Z===this)H.right=this.right;else{var N=this.left,V=this.right;Z.count-=H.count,Z.right=H.left,H.left=N,H.right=V}d(this,H),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?d(this,this.left):d(this,this.right);return u}for(var N=s.ge(this.leftPoints,T,L);N=0&&T[V][1]>=z;--V){var G=O(T[V]);if(G)return G}}function E(T,z){for(var O=0;Othis.mid){if(this.right){var O=this.right.queryPoint(T,z);if(O)return O}return k(this.rightPoints,T,z)}else return E(this.leftPoints,z)},h.queryInterval=function(T,z,O){if(Tthis.mid&&this.right){var V=this.right.queryInterval(T,z,O);if(V)return V}return zthis.mid?k(this.rightPoints,T,O):E(this.leftPoints,O)};function S(T,z){return T-z}function L(T,z){var O=T[0]-z[0];return O||T[1]-z[1]}function x(T,z){var O=T[1]-z[1];return O||T[0]-z[0]}function C(T){if(T.length===0)return null;for(var z=[],O=0;O>1],G=[],Z=[],H=[],O=0;O=0),x.type){case"b":k=parseInt(k,10).toString(2);break;case"c":k=String.fromCharCode(parseInt(k,10));break;case"d":case"i":k=parseInt(k,10);break;case"j":k=JSON.stringify(k,null,x.width?parseInt(x.width):0);break;case"e":k=x.precision?parseFloat(k).toExponential(x.precision):parseFloat(k).toExponential();break;case"f":k=x.precision?parseFloat(k).toFixed(x.precision):parseFloat(k);break;case"g":k=x.precision?String(Number(k.toPrecision(x.precision))):parseFloat(k);break;case"o":k=(parseInt(k,10)>>>0).toString(8);break;case"s":k=String(k),k=x.precision?k.substring(0,x.precision):k;break;case"t":k=String(!!k),k=x.precision?k.substring(0,x.precision):k;break;case"T":k=Object.prototype.toString.call(k).slice(8,-1).toLowerCase(),k=x.precision?k.substring(0,x.precision):k;break;case"u":k=parseInt(k,10)>>>0;break;case"v":k=k.valueOf(),k=x.precision?k.substring(0,x.precision):k;break;case"x":k=(parseInt(k,10)>>>0).toString(16);break;case"X":k=(parseInt(k,10)>>>0).toString(16).toUpperCase();break}l.json.test(x.type)?E+=k:(l.number.test(x.type)&&(!P||x.sign)?(T=P?"+":"-",k=k.toString().replace(l.sign,"")):T="",M=x.pad_char?x.pad_char==="0"?"0":x.pad_char.charAt(1):" ",g=x.width-(T+k).length,C=x.width&&g>0?M.repeat(g):"",E+=x.align?T+k+C:M==="0"?T+C+k:C+T+k)}return E}var h=Object.create(null);function d(v){if(h[v])return h[v];for(var _=v,b,p=[],k=0;_;){if((b=l.text.exec(_))!==null)p.push(b[0]);else if((b=l.modulo.exec(_))!==null)p.push("%");else if((b=l.placeholder.exec(_))!==null){if(b[2]){k|=1;var E=[],S=b[2],L=[];if((L=l.key.exec(S))!==null)for(E.push(L[1]);(S=S.substring(L[0].length))!=="";)if((L=l.key_access.exec(S))!==null)E.push(L[1]);else if((L=l.index_access.exec(S))!==null)E.push(L[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");b[2]=E}else k|=2;if(k===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");p.push({placeholder:b[0],param_no:b[1],keys:b[2],sign:b[3],pad_char:b[4],align:b[5],width:b[6],precision:b[7],type:b[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");_=_.substring(b[0].length)}return h[v]=p}a.sprintf=u,a.vsprintf=c,typeof window!="undefined"&&(window.sprintf=u,window.vsprintf=c,s=function(){return{sprintf:u,vsprintf:c}}.call(a,o,a,i),s!==void 0&&(i.exports=s))})()},3390:function(i){i.exports=a;function a(o,s,l,u){var c=new Float32Array(4);return c[0]=o,c[1]=s,c[2]=l,c[3]=u,c}},3436:function(i,a,o){"use strict";var s=o(3236),l=o(9405),u=s([`precision highp float; +`,P)}}return{long:p.trim(),short:k.trim()}}},3012:function(i,a,o){"use strict";var s=o(5250),l=o(9362);i.exports=u;function u(c,f){var h=c.length;if(h===1){var d=s(c[0],f);return d[0]?d:[d[1]]}var v=new Array(2*h),_=[.1,.1],b=[.1,.1],p=0;s(c[0],f,_),_[0]&&(v[p++]=_[0]);for(var k=1;k0){z=d[G][P][0],V=G;break}O=z[V^1];for(var Z=0;Z<2;++Z)for(var j=d[Z][P],N=0;N0&&(z=H,O=te,V=Z)}return T||z&&p(z,V),O}function E(g,P){var T=d[P][g][0],z=[g];p(T,P);for(var O=T[P^1],V=P;;){for(;O!==g;)z.push(O),O=k(z[z.length-2],O,!1);if(d[0][g].length+d[1][g].length===0)break;var G=z[z.length-1],Z=g,j=z[1],N=k(G,Z,!0);if(s(c[G],c[Z],c[j],c[N])<0)break;z.push(g),O=k(G,Z)}return z}function S(g,P){return P[1]===P[P.length-1]}for(var v=0;v0;){var C=d[0][v].length,M=E(v,L);S(x,M)?x.push.apply(x,M):(x.length>0&&b.push(x),x=M)}x.length>0&&b.push(x)}return b}},3090:function(i,a,o){"use strict";i.exports=l;var s=o(3250)[3];function l(u){var c=u.length;if(c<3){for(var k=new Array(c),f=0;f1&&s(u[d[p-2]],u[d[p-1]],b)<=0;)p-=1,d.pop();for(d.push(_),p=v.length;p>1&&s(u[v[p-2]],u[v[p-1]],b)>=0;)p-=1,v.pop();v.push(_)}for(var k=new Array(v.length+d.length-2),E=0,f=0,S=d.length;f0;--L)k[E++]=v[L];return k}},3105:function(i,a){"use strict";"use restrict";var o=32;a.INT_BITS=o,a.INT_MAX=2147483647,a.INT_MIN=-1<0)-(u<0)},a.abs=function(u){var c=u>>o-1;return(u^c)-c},a.min=function(u,c){return c^(u^c)&-(u65535)<<4,u>>>=c,f=(u>255)<<3,u>>>=f,c|=f,f=(u>15)<<2,u>>>=f,c|=f,f=(u>3)<<1,u>>>=f,c|=f,c|u>>1},a.log10=function(u){return u>=1e9?9:u>=1e8?8:u>=1e7?7:u>=1e6?6:u>=1e5?5:u>=1e4?4:u>=1e3?3:u>=100?2:u>=10?1:0},a.popCount=function(u){return u=u-(u>>>1&1431655765),u=(u&858993459)+(u>>>2&858993459),(u+(u>>>4)&252645135)*16843009>>>24};function s(u){var c=32;return u&=-u,u&&c--,u&65535&&(c-=16),u&16711935&&(c-=8),u&252645135&&(c-=4),u&858993459&&(c-=2),u&1431655765&&(c-=1),c}a.countTrailingZeros=s,a.nextPow2=function(u){return u+=u===0,--u,u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u+1},a.prevPow2=function(u){return u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u-(u>>>1)},a.parity=function(u){return u^=u>>>16,u^=u>>>8,u^=u>>>4,u&=15,27030>>>u&1};var l=new Array(256);(function(u){for(var c=0;c<256;++c){var f=c,h=c,d=7;for(f>>>=1;f;f>>>=1)h<<=1,h|=f&1,--d;u[c]=h<>>8&255]<<16|l[u>>>16&255]<<8|l[u>>>24&255]},a.interleave2=function(u,c){return u&=65535,u=(u|u<<8)&16711935,u=(u|u<<4)&252645135,u=(u|u<<2)&858993459,u=(u|u<<1)&1431655765,c&=65535,c=(c|c<<8)&16711935,c=(c|c<<4)&252645135,c=(c|c<<2)&858993459,c=(c|c<<1)&1431655765,u|c<<1},a.deinterleave2=function(u,c){return u=u>>>c&1431655765,u=(u|u>>>1)&858993459,u=(u|u>>>2)&252645135,u=(u|u>>>4)&16711935,u=(u|u>>>16)&65535,u<<16>>16},a.interleave3=function(u,c,f){return u&=1023,u=(u|u<<16)&4278190335,u=(u|u<<8)&251719695,u=(u|u<<4)&3272356035,u=(u|u<<2)&1227133513,c&=1023,c=(c|c<<16)&4278190335,c=(c|c<<8)&251719695,c=(c|c<<4)&3272356035,c=(c|c<<2)&1227133513,u|=c<<1,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,u|f<<2},a.deinterleave3=function(u,c){return u=u>>>c&1227133513,u=(u|u>>>2)&3272356035,u=(u|u>>>4)&251719695,u=(u|u>>>8)&4278190335,u=(u|u>>>16)&1023,u<<22>>22},a.nextCombination=function(u){var c=u|u-1;return c+1|(~c&-~c)-1>>>s(u)+1}},3126:function(i){i.exports=a;function a(o){var s=new Float32Array(3);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s}},3134:function(i,a,o){"use strict";i.exports=l;var s=o(1682);function l(u,c){var f=u.length;if(typeof c!="number"){c=0;for(var h=0;h=0}function d(v,_,b,p){var k=s(_,b,p);if(k===0){var E=l(s(v,_,b)),S=l(s(v,_,p));if(E===S){if(E===0){var L=h(v,_,b),x=h(v,_,p);return L===x?0:L?1:-1}return 0}else{if(S===0)return E>0||h(v,_,p)?-1:1;if(E===0)return S>0||h(v,_,b)?1:-1}return l(S-E)}var C=s(v,_,b);if(C>0)return k>0&&s(v,_,p)>0?1:-1;if(C<0)return k>0||s(v,_,p)>0?1:-1;var M=s(v,_,p);return M>0||h(v,_,b)?1:-1}},3202:function(i){i.exports=function(o,s){s||(s=[0,""]),o=String(o);var l=parseFloat(o,10);return s[0]=l,s[1]=o.match(/[\d.\-\+]*\s*(.*)/)[1]||"",s}},3233:function(i){"use strict";var a="",o;i.exports=s;function s(l,u){if(typeof l!="string")throw new TypeError("expected a string");if(u===1)return l;if(u===2)return l+l;var c=l.length*u;if(o!==l||typeof o=="undefined")o=l,a="";else if(a.length>=c)return a.substr(0,c);for(;c>a.length&&u>1;)u&1&&(a+=l),u>>=1,l+=l;return a+=l,a=a.substr(0,c),a}},3236:function(i){i.exports=function(a){typeof a=="string"&&(a=[a]);for(var o=[].slice.call(arguments,1),s=[],l=0;l0){if(V<=0)return G;Z=O+V}else if(O<0){if(V>=0)return G;Z=-(O+V)}else return G;var j=d*Z;return G>=j||G<=-j?G:E(P,T,z)},function(P,T,z,O){var V=P[0]-O[0],G=T[0]-O[0],Z=z[0]-O[0],j=P[1]-O[1],N=T[1]-O[1],H=z[1]-O[1],te=P[2]-O[2],oe=T[2]-O[2],_e=z[2]-O[2],Ee=G*H,Ce=Z*N,me=Z*j,ie=V*H,Se=V*N,Le=G*j,Ae=te*(Ee-Ce)+oe*(me-ie)+_e*(Se-Le),Fe=(Math.abs(Ee)+Math.abs(Ce))*Math.abs(te)+(Math.abs(me)+Math.abs(ie))*Math.abs(oe)+(Math.abs(Se)+Math.abs(Le))*Math.abs(_e),Pe=v*Fe;return Ae>Pe||-Ae>Pe?Ae:S(P,T,z,O)}];function x(g){var P=L[g.length];return P||(P=L[g.length]=k(g.length)),P.apply(void 0,g)}function C(g,P,T,z,O,V,G){return function(j,N,H,te,oe){switch(arguments.length){case 0:case 1:return 0;case 2:return z(j,N);case 3:return O(j,N,H);case 4:return V(j,N,H,te);case 5:return G(j,N,H,te,oe)}for(var _e=new Array(arguments.length),Ee=0;Ee4)throw new l("","Invalid data type");switch(te.charAt(0)){case"b":case"i":h["uniform"+oe+"iv"](_[V],G);break;case"v":h["uniform"+oe+"fv"](_[V],G);break;default:throw new l("","Unrecognized data type for vector "+name+": "+te)}}else if(te.indexOf("mat")===0&&te.length===4){if(oe=te.charCodeAt(te.length-1)-48,oe<2||oe>4)throw new l("","Invalid uniform dimension type for matrix "+name+": "+te);h["uniformMatrix"+oe+"fv"](_[V],!1,G);break}else throw new l("","Unknown uniform data type for "+name+": "+te)}}}}}function k(C,M){if(typeof M!="object")return[[C,M]];var g=[];for(var P in M){var T=M[P],z=C;parseInt(P)+""===P?z+="["+P+"]":z+="."+P,typeof T=="object"?g.push.apply(g,k(z,T)):g.push([z,T])}return g}function E(C){switch(C){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var M=C.indexOf("vec");if(0<=M&&M<=1&&C.length===4+M){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new l("","Invalid data type");return C.charAt(0)==="b"?c(g,!1):c(g,0)}else if(C.indexOf("mat")===0&&C.length===4){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new l("","Invalid uniform dimension type for matrix "+name+": "+C);return c(g*g,0)}else throw new l("","Unknown uniform data type for "+name+": "+C)}}function S(C,M,g){if(typeof g=="object"){var P=L(g);Object.defineProperty(C,M,{get:u(P),set:p(g),enumerable:!0,configurable:!1})}else _[g]?Object.defineProperty(C,M,{get:b(g),set:p(g),enumerable:!0,configurable:!1}):C[M]=E(v[g].type)}function L(C){var M;if(Array.isArray(C)){M=new Array(C.length);for(var g=0;g=0!=M>=0&&_.push(E[0]+.5+.5*(C+M)/(C-M))}v+=x,++E[0]}}}function o(){return a()}var s=o;function l(f){var h={};return function(v,_,b){var p=v.dtype,k=v.order,E=[p,k.join()].join(),S=h[E];return S||(h[E]=S=f([p,k])),S(v.shape.slice(0),v.data,v.stride,v.offset|0,_,b)}}function u(f){return l(s.bind(void 0,f))}function c(f){return u({funcName:f.funcName})}i.exports=c({funcName:"zeroCrossings"})},3352:function(i,a,o){"use strict";var s=o(2478),l=0,u=1,c=2;i.exports=P;function f(T,z,O,V,G){this.mid=T,this.left=z,this.right=O,this.leftPoints=V,this.rightPoints=G,this.count=(z?z.count:0)+(O?O.count:0)+V.length}var h=f.prototype;function d(T,z){T.mid=z.mid,T.left=z.left,T.right=z.right,T.leftPoints=z.leftPoints,T.rightPoints=z.rightPoints,T.count=z.count}function v(T,z){var O=C(z);T.mid=O.mid,T.left=O.left,T.right=O.right,T.leftPoints=O.leftPoints,T.rightPoints=O.rightPoints,T.count=O.count}function _(T,z){var O=T.intervals([]);O.push(z),v(T,O)}function b(T,z){var O=T.intervals([]),V=O.indexOf(z);return V<0?l:(O.splice(V,1),v(T,O),u)}h.intervals=function(T){return T.push.apply(T,this.leftPoints),this.left&&this.left.intervals(T),this.right&&this.right.intervals(T),T},h.insert=function(T){var z=this.count-this.leftPoints.length;if(this.count+=1,T[1]3*(z+1)?_(this,T):this.left.insert(T):this.left=C([T]);else if(T[0]>this.mid)this.right?4*(this.right.count+1)>3*(z+1)?_(this,T):this.right.insert(T):this.right=C([T]);else{var O=s.ge(this.leftPoints,T,L),V=s.ge(this.rightPoints,T,x);this.leftPoints.splice(O,0,T),this.rightPoints.splice(V,0,T)}},h.remove=function(T){var z=this.count-this.leftPoints;if(T[1]3*(z-1))return b(this,T);var V=this.left.remove(T);return V===c?(this.left=null,this.count-=1,u):(V===u&&(this.count-=1),V)}else if(T[0]>this.mid){if(!this.right)return l;var G=this.left?this.left.count:0;if(4*G>3*(z-1))return b(this,T);var V=this.right.remove(T);return V===c?(this.right=null,this.count-=1,u):(V===u&&(this.count-=1),V)}else{if(this.count===1)return this.leftPoints[0]===T?c:l;if(this.leftPoints.length===1&&this.leftPoints[0]===T){if(this.left&&this.right){for(var Z=this,j=this.left;j.right;)Z=j,j=j.right;if(Z===this)j.right=this.right;else{var N=this.left,V=this.right;Z.count-=j.count,Z.right=j.left,j.left=N,j.right=V}d(this,j),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?d(this,this.left):d(this,this.right);return u}for(var N=s.ge(this.leftPoints,T,L);N=0&&T[V][1]>=z;--V){var G=O(T[V]);if(G)return G}}function E(T,z){for(var O=0;Othis.mid){if(this.right){var O=this.right.queryPoint(T,z);if(O)return O}return k(this.rightPoints,T,z)}else return E(this.leftPoints,z)},h.queryInterval=function(T,z,O){if(Tthis.mid&&this.right){var V=this.right.queryInterval(T,z,O);if(V)return V}return zthis.mid?k(this.rightPoints,T,O):E(this.leftPoints,O)};function S(T,z){return T-z}function L(T,z){var O=T[0]-z[0];return O||T[1]-z[1]}function x(T,z){var O=T[1]-z[1];return O||T[0]-z[0]}function C(T){if(T.length===0)return null;for(var z=[],O=0;O>1],G=[],Z=[],j=[],O=0;O=0),x.type){case"b":k=parseInt(k,10).toString(2);break;case"c":k=String.fromCharCode(parseInt(k,10));break;case"d":case"i":k=parseInt(k,10);break;case"j":k=JSON.stringify(k,null,x.width?parseInt(x.width):0);break;case"e":k=x.precision?parseFloat(k).toExponential(x.precision):parseFloat(k).toExponential();break;case"f":k=x.precision?parseFloat(k).toFixed(x.precision):parseFloat(k);break;case"g":k=x.precision?String(Number(k.toPrecision(x.precision))):parseFloat(k);break;case"o":k=(parseInt(k,10)>>>0).toString(8);break;case"s":k=String(k),k=x.precision?k.substring(0,x.precision):k;break;case"t":k=String(!!k),k=x.precision?k.substring(0,x.precision):k;break;case"T":k=Object.prototype.toString.call(k).slice(8,-1).toLowerCase(),k=x.precision?k.substring(0,x.precision):k;break;case"u":k=parseInt(k,10)>>>0;break;case"v":k=k.valueOf(),k=x.precision?k.substring(0,x.precision):k;break;case"x":k=(parseInt(k,10)>>>0).toString(16);break;case"X":k=(parseInt(k,10)>>>0).toString(16).toUpperCase();break}l.json.test(x.type)?E+=k:(l.number.test(x.type)&&(!P||x.sign)?(T=P?"+":"-",k=k.toString().replace(l.sign,"")):T="",M=x.pad_char?x.pad_char==="0"?"0":x.pad_char.charAt(1):" ",g=x.width-(T+k).length,C=x.width&&g>0?M.repeat(g):"",E+=x.align?T+k+C:M==="0"?T+C+k:C+T+k)}return E}var h=Object.create(null);function d(v){if(h[v])return h[v];for(var _=v,b,p=[],k=0;_;){if((b=l.text.exec(_))!==null)p.push(b[0]);else if((b=l.modulo.exec(_))!==null)p.push("%");else if((b=l.placeholder.exec(_))!==null){if(b[2]){k|=1;var E=[],S=b[2],L=[];if((L=l.key.exec(S))!==null)for(E.push(L[1]);(S=S.substring(L[0].length))!=="";)if((L=l.key_access.exec(S))!==null)E.push(L[1]);else if((L=l.index_access.exec(S))!==null)E.push(L[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");b[2]=E}else k|=2;if(k===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");p.push({placeholder:b[0],param_no:b[1],keys:b[2],sign:b[3],pad_char:b[4],align:b[5],width:b[6],precision:b[7],type:b[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");_=_.substring(b[0].length)}return h[v]=p}a.sprintf=u,a.vsprintf=c,typeof window!="undefined"&&(window.sprintf=u,window.vsprintf=c,s=function(){return{sprintf:u,vsprintf:c}}.call(a,o,a,i),s!==void 0&&(i.exports=s))})()},3390:function(i){i.exports=a;function a(o,s,l,u){var c=new Float32Array(4);return c[0]=o,c[1]=s,c[2]=l,c[3]=u,c}},3436:function(i,a,o){"use strict";var s=o(3236),l=o(9405),u=s([`precision highp float; #define GLSLIFY 1 attribute vec3 position, offset; @@ -1571,11 +1571,11 @@ void main() { ) discard; gl_FragColor = opacity * fragColor; -}`]);i.exports=function(f){return l(f,u,c,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},3502:function(i,a,o){i.exports=u;var s=o(5995),l=o(9127);function u(c,f){return l(s(c,f))}},3508:function(i,a,o){var s=o(6852);s=s.slice().filter(function(l){return!/^(gl\_|texture)/.test(l)}),i.exports=s.concat(["gl_VertexID","gl_InstanceID","gl_Position","gl_PointSize","gl_FragCoord","gl_FrontFacing","gl_FragDepth","gl_PointCoord","gl_MaxVertexAttribs","gl_MaxVertexUniformVectors","gl_MaxVertexOutputVectors","gl_MaxFragmentInputVectors","gl_MaxVertexTextureImageUnits","gl_MaxCombinedTextureImageUnits","gl_MaxTextureImageUnits","gl_MaxFragmentUniformVectors","gl_MaxDrawBuffers","gl_MinProgramTexelOffset","gl_MaxProgramTexelOffset","gl_DepthRangeParameters","gl_DepthRange","trunc","round","roundEven","isnan","isinf","floatBitsToInt","floatBitsToUint","intBitsToFloat","uintBitsToFloat","packSnorm2x16","unpackSnorm2x16","packUnorm2x16","unpackUnorm2x16","packHalf2x16","unpackHalf2x16","outerProduct","transpose","determinant","inverse","texture","textureSize","textureProj","textureLod","textureOffset","texelFetch","texelFetchOffset","textureProjOffset","textureLodOffset","textureProjLod","textureProjLodOffset","textureGrad","textureGradOffset","textureProjGrad","textureProjGradOffset"])},3536:function(i){i.exports=a;function a(o,s){var l=s[0],u=s[1],c=s[2],f=l*l+u*u+c*c;return f>0&&(f=1/Math.sqrt(f),o[0]=s[0]*f,o[1]=s[1]*f,o[2]=s[2]*f),o}},3545:function(i,a,o){"use strict";i.exports=f;var s=o(8105),l=s("lov&&b[C+d]>L;--x,C-=k){for(var M=C,g=C+k,P=0;P>>1,L=2*h,x=S,C=b[L*S+d];k=z?(x=T,C=z):P>=V?(x=g,C=P):(x=O,C=V):z>=V?(x=T,C=z):V>=P?(x=g,C=P):(x=O,C=V);for(var H=L*(E-1),N=L*x,G=0;Gthis.buffer.length){l.free(this.buffer);for(var E=this.buffer=l.mallocUint8(c(k*p*4)),S=0;Sx|0},vertex:function(E,S,L,x,C,M,g,P,T,z,O,V,G){var Z=(g<<0)+(P<<1)+(T<<2)+(z<<3)|0;if(!(Z===0||Z===15))switch(Z){case 0:O.push([E-.5,S-.5]);break;case 1:O.push([E-.25-.25*(x+L-2*G)/(L-x),S-.25-.25*(C+L-2*G)/(L-C)]);break;case 2:O.push([E-.75-.25*(-x-L+2*G)/(x-L),S-.25-.25*(M+x-2*G)/(x-M)]);break;case 3:O.push([E-.5,S-.5-.5*(C+L+M+x-4*G)/(L-C+x-M)]);break;case 4:O.push([E-.25-.25*(M+C-2*G)/(C-M),S-.75-.25*(-C-L+2*G)/(C-L)]);break;case 5:O.push([E-.5-.5*(x+L+M+C-4*G)/(L-x+C-M),S-.5]);break;case 6:O.push([E-.5-.25*(-x-L+M+C)/(x-L+C-M),S-.5-.25*(-C-L+M+x)/(C-L+x-M)]);break;case 7:O.push([E-.75-.25*(M+C-2*G)/(C-M),S-.75-.25*(M+x-2*G)/(x-M)]);break;case 8:O.push([E-.75-.25*(-M-C+2*G)/(M-C),S-.75-.25*(-M-x+2*G)/(M-x)]);break;case 9:O.push([E-.5-.25*(x+L+-M-C)/(L-x+M-C),S-.5-.25*(C+L+-M-x)/(L-C+M-x)]);break;case 10:O.push([E-.5-.5*(-x-L+-M-C+4*G)/(x-L+M-C),S-.5]);break;case 11:O.push([E-.25-.25*(-M-C+2*G)/(M-C),S-.75-.25*(C+L-2*G)/(L-C)]);break;case 12:O.push([E-.5,S-.5-.5*(-C-L+-M-x+4*G)/(C-L+M-x)]);break;case 13:O.push([E-.75-.25*(x+L-2*G)/(L-x),S-.25-.25*(-M-x+2*G)/(M-x)]);break;case 14:O.push([E-.25-.25*(-x-L+2*G)/(x-L),S-.25-.25*(-C-L+2*G)/(C-L)]);break;case 15:O.push([E-.5,S-.5]);break}},cell:function(E,S,L,x,C,M,g,P,T){C?P.push([E,S]):P.push([S,E])}});return function(k,E){var S=[],L=[];return p(k,S,L,E),{positions:S,cells:L}}}};function c(v,_){var b=v.length+"d",p=u[b];if(p)return p(s,v,_)}function f(v,_){for(var b=l(v,_),p=b.length,k=new Array(p),E=new Array(p),S=0;S>1,b=-7,p=l?c-1:0,k=l?-1:1,E=o[s+p];for(p+=k,f=E&(1<<-b)-1,E>>=-b,b+=d;b>0;f=f*256+o[s+p],p+=k,b-=8);for(h=f&(1<<-b)-1,f>>=-b,b+=u;b>0;h=h*256+o[s+p],p+=k,b-=8);if(f===0)f=1-_;else{if(f===v)return h?NaN:(E?-1:1)*(1/0);h=h+Math.pow(2,u),f=f-_}return(E?-1:1)*h*Math.pow(2,f-u)},a.write=function(o,s,l,u,c,f){var h,d,v,_=f*8-c-1,b=(1<<_)-1,p=b>>1,k=c===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=u?0:f-1,S=u?1:-1,L=s<0||s===0&&1/s<0?1:0;for(s=Math.abs(s),isNaN(s)||s===1/0?(d=isNaN(s)?1:0,h=b):(h=Math.floor(Math.log(s)/Math.LN2),s*(v=Math.pow(2,-h))<1&&(h--,v*=2),h+p>=1?s+=k/v:s+=k*Math.pow(2,1-p),s*v>=2&&(h++,v/=2),h+p>=b?(d=0,h=b):h+p>=1?(d=(s*v-1)*Math.pow(2,c),h=h+p):(d=s*Math.pow(2,p-1)*Math.pow(2,c),h=0));c>=8;o[l+E]=d&255,E+=S,d/=256,c-=8);for(h=h<0;o[l+E]=h&255,E+=S,h/=256,_-=8);o[l+E-S]|=L*128}},3788:function(i,a,o){"use strict";var s=o(8507),l=o(2419);i.exports=u;function u(c,f){return s(c,f)||l(c)-l(f)}},3837:function(i,a,o){"use strict";i.exports=O;var s=o(4935),l=o(501),u=o(5304),c=o(6429),f=o(6444),h=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),d=ArrayBuffer,v=DataView;function _(V){return d.isView(V)&&!(V instanceof v)}function b(V){return Array.isArray(V)||_(V)}function p(V,G){return V[0]=G[0],V[1]=G[1],V[2]=G[2],V}function k(V){this.gl=V,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=u(V)}var E=k.prototype;E.update=function(V){V=V||{};function G(Ae,Fe,Pe){if(Pe in V){var ge=V[Pe],Re=this[Pe],ce;(Ae?b(ge)&&b(ge[0]):b(ge))?this[Pe]=ce=[Fe(ge[0]),Fe(ge[1]),Fe(ge[2])]:this[Pe]=ce=[Fe(ge),Fe(ge),Fe(ge)];for(var Ze=0;Ze<3;++Ze)if(ce[Ze]!==Re[Ze])return!0}return!1}var Z=G.bind(this,!1,Number),H=G.bind(this,!1,Boolean),N=G.bind(this,!1,String),j=G.bind(this,!0,function(Ae){if(b(Ae)){if(Ae.length===3)return[+Ae[0],+Ae[1],+Ae[2],1];if(Ae.length===4)return[+Ae[0],+Ae[1],+Ae[2],+Ae[3]]}return[0,0,0,1]}),re,oe=!1,_e=!1;if("bounds"in V)for(var Ee=V.bounds,Ce=0;Ce<2;++Ce)for(var me=0;me<3;++me)Ee[Ce][me]!==this.bounds[Ce][me]&&(_e=!0),this.bounds[Ce][me]=Ee[Ce][me];if("ticks"in V){re=V.ticks,oe=!0,this.autoTicks=!1;for(var Ce=0;Ce<3;++Ce)this.tickSpacing[Ce]=0}else Z("tickSpacing")&&(this.autoTicks=!0,_e=!0);if(this._firstInit&&("ticks"in V||"tickSpacing"in V||(this.autoTicks=!0),_e=!0,oe=!0,this._firstInit=!1),_e&&this.autoTicks&&(re=f.create(this.bounds,this.tickSpacing),oe=!0),oe){for(var Ce=0;Ce<3;++Ce)re[Ce].sort(function(Fe,Pe){return Fe.x-Pe.x});f.equal(re,this.ticks)?oe=!1:this.ticks=re}H("tickEnable"),N("tickFont")&&(oe=!0),N("tickFontStyle")&&(oe=!0),N("tickFontWeight")&&(oe=!0),N("tickFontVariant")&&(oe=!0),Z("tickSize"),Z("tickAngle"),Z("tickPad"),j("tickColor");var ie=N("labels");N("labelFont")&&(ie=!0),N("labelFontStyle")&&(ie=!0),N("labelFontWeight")&&(ie=!0),N("labelFontVariant")&&(ie=!0),H("labelEnable"),Z("labelSize"),Z("labelPad"),j("labelColor"),H("lineEnable"),H("lineMirror"),Z("lineWidth"),j("lineColor"),H("lineTickEnable"),H("lineTickMirror"),Z("lineTickLength"),Z("lineTickWidth"),j("lineTickColor"),H("gridEnable"),Z("gridWidth"),j("gridColor"),H("zeroEnable"),j("zeroLineColor"),Z("zeroLineWidth"),H("backgroundEnable"),j("backgroundColor");var Se=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],Le=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(ie||oe)&&this._text.update(this.bounds,this.labels,Se,this.ticks,Le):this._text=s(this.gl,this.bounds,this.labels,Se,this.ticks,Le),this._lines&&oe&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=l(this.gl,this.bounds,this.ticks))};function S(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}var L=[new S,new S,new S];function x(V,G,Z,H,N){for(var j=V.primalOffset,re=V.primalMinor,oe=V.mirrorOffset,_e=V.mirrorMinor,Ee=H[G],Ce=0;Ce<3;++Ce)if(G!==Ce){var me=j,ie=oe,Se=re,Le=_e;Ee&1<0?(Se[Ce]=-1,Le[Ce]=0):(Se[Ce]=0,Le[Ce]=1)}}var C=[0,0,0],M={model:h,view:h,projection:h,_ortho:!1};E.isOpaque=function(){return!0},E.isTransparent=function(){return!1},E.drawTransparent=function(V){};var g=0,P=[0,0,0],T=[0,0,0],z=[0,0,0];E.draw=function(V){V=V||M;for(var Pe=this.gl,G=V.model||h,Z=V.view||h,H=V.projection||h,N=this.bounds,j=V._ortho||!1,re=c(G,Z,H,N,j),oe=re.cubeEdges,_e=re.axis,Ee=Z[12],Ce=Z[13],me=Z[14],ie=Z[15],Se=j?2:1,Le=Se*this.pixelRatio*(H[3]*Ee+H[7]*Ce+H[11]*me+H[15]*ie)/Pe.drawingBufferHeight,Ae=0;Ae<3;++Ae)this.lastCubeProps.cubeEdges[Ae]=oe[Ae],this.lastCubeProps.axis[Ae]=_e[Ae];for(var Fe=L,Ae=0;Ae<3;++Ae)x(L[Ae],Ae,this.bounds,oe,_e);for(var Pe=this.gl,ge=C,Ae=0;Ae<3;++Ae)this.backgroundEnable[Ae]?ge[Ae]=_e[Ae]:ge[Ae]=0;this._background.draw(G,Z,H,N,ge,this.backgroundColor),this._lines.bind(G,Z,H,this);for(var Ae=0;Ae<3;++Ae){var Re=[0,0,0];_e[Ae]>0?Re[Ae]=N[1][Ae]:Re[Ae]=N[0][Ae];for(var ce=0;ce<2;++ce){var Ze=(Ae+1+ce)%3,ut=(Ae+1+(ce^1))%3;this.gridEnable[Ze]&&this._lines.drawGrid(Ze,ut,this.bounds,Re,this.gridColor[Ze],this.gridWidth[Ze]*this.pixelRatio)}for(var ce=0;ce<2;++ce){var Ze=(Ae+1+ce)%3,ut=(Ae+1+(ce^1))%3;this.zeroEnable[ut]&&Math.min(N[0][ut],N[1][ut])<=0&&Math.max(N[0][ut],N[1][ut])>=0&&this._lines.drawZero(Ze,ut,this.bounds,Re,this.zeroLineColor[ut],this.zeroLineWidth[ut]*this.pixelRatio)}}for(var Ae=0;Ae<3;++Ae){this.lineEnable[Ae]&&this._lines.drawAxisLine(Ae,this.bounds,Fe[Ae].primalOffset,this.lineColor[Ae],this.lineWidth[Ae]*this.pixelRatio),this.lineMirror[Ae]&&this._lines.drawAxisLine(Ae,this.bounds,Fe[Ae].mirrorOffset,this.lineColor[Ae],this.lineWidth[Ae]*this.pixelRatio);for(var pt=p(P,Fe[Ae].primalMinor),Zt=p(T,Fe[Ae].mirrorMinor),st=this.lineTickLength,ce=0;ce<3;++ce){var lt=Le/G[5*ce];pt[ce]*=st[ce]*lt,Zt[ce]*=st[ce]*lt}this.lineTickEnable[Ae]&&this._lines.drawAxisTicks(Ae,Fe[Ae].primalOffset,pt,this.lineTickColor[Ae],this.lineTickWidth[Ae]*this.pixelRatio),this.lineTickMirror[Ae]&&this._lines.drawAxisTicks(Ae,Fe[Ae].mirrorOffset,Zt,this.lineTickColor[Ae],this.lineTickWidth[Ae]*this.pixelRatio)}this._lines.unbind(),this._text.bind(G,Z,H,this.pixelRatio);var Gt,Nt=.5,Jt,sr;function wr(_t){sr=[0,0,0],sr[_t]=1}function cr(_t,It,mt){var er=(_t+1)%3,lr=(_t+2)%3,Tr=It[er],Lr=It[lr],ti=mt[er],Br=mt[lr];if(Tr>0&&Br>0){wr(er);return}else if(Tr>0&&Br<0){wr(er);return}else if(Tr<0&&Br>0){wr(er);return}else if(Tr<0&&Br<0){wr(er);return}else if(Lr>0&&ti>0){wr(lr);return}else if(Lr>0&&ti<0){wr(lr);return}else if(Lr<0&&ti>0){wr(lr);return}else if(Lr<0&&ti<0){wr(lr);return}}for(var Ae=0;Ae<3;++Ae){for(var $e=Fe[Ae].primalMinor,St=Fe[Ae].mirrorMinor,Qt=p(z,Fe[Ae].primalOffset),ce=0;ce<3;++ce)this.lineTickEnable[Ae]&&(Qt[ce]+=Le*$e[ce]*Math.max(this.lineTickLength[ce],0)/G[5*ce]);var Vt=[0,0,0];if(Vt[Ae]=1,this.tickEnable[Ae]){this.tickAngle[Ae]===-3600?(this.tickAngle[Ae]=0,this.tickAlign[Ae]="auto"):this.tickAlign[Ae]=-1,Jt=1,Gt=[this.tickAlign[Ae],Nt,Jt],Gt[0]==="auto"?Gt[0]=g:Gt[0]=parseInt(""+Gt[0]),sr=[0,0,0],cr(Ae,$e,St);for(var ce=0;ce<3;++ce)Qt[ce]+=Le*$e[ce]*this.tickPad[ce]/G[5*ce];this._text.drawTicks(Ae,this.tickSize[Ae],this.tickAngle[Ae],Qt,this.tickColor[Ae],Vt,sr,Gt)}if(this.labelEnable[Ae]){Jt=0,sr=[0,0,0],this.labels[Ae].length>4&&(wr(Ae),Jt=1),Gt=[this.labelAlign[Ae],Nt,Jt],Gt[0]==="auto"?Gt[0]=g:Gt[0]=parseInt(""+Gt[0]);for(var ce=0;ce<3;++ce)Qt[ce]+=Le*$e[ce]*this.labelPad[ce]/G[5*ce];Qt[Ae]+=.5*(N[0][Ae]+N[1][Ae]),this._text.drawLabel(Ae,this.labelSize[Ae],this.labelAngle[Ae],Qt,this.labelColor[Ae],[0,0,0],sr,Gt)}}this._text.unbind()},E.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function O(V,G){var Z=new k(V);return Z.update(G),Z}},3840:function(i){"use strict";i.exports=L;var a=0,o=1;function s(x,C,M,g,P,T){this._color=x,this.key=C,this.value=M,this.left=g,this.right=P,this._count=T}function l(x){return new s(x._color,x.key,x.value,x.left,x.right,x._count)}function u(x,C){return new s(x,C.key,C.value,C.left,C.right,C._count)}function c(x){x._count=1+(x.left?x.left._count:0)+(x.right?x.right._count:0)}function f(x,C){this._compare=x,this.root=C}var h=f.prototype;Object.defineProperty(h,"keys",{get:function(){var x=[];return this.forEach(function(C,M){x.push(C)}),x}}),Object.defineProperty(h,"values",{get:function(){var x=[];return this.forEach(function(C,M){x.push(M)}),x}}),Object.defineProperty(h,"length",{get:function(){return this.root?this.root._count:0}}),h.insert=function(x,C){for(var M=this._compare,g=this.root,P=[],T=[];g;){var z=M(x,g.key);P.push(g),T.push(z),z<=0?g=g.left:g=g.right}P.push(new s(a,x,C,null,null,1));for(var O=P.length-2;O>=0;--O){var g=P[O];T[O]<=0?P[O]=new s(g._color,g.key,g.value,P[O+1],g.right,g._count+1):P[O]=new s(g._color,g.key,g.value,g.left,P[O+1],g._count+1)}for(var O=P.length-1;O>1;--O){var V=P[O-1],g=P[O];if(V._color===o||g._color===o)break;var G=P[O-2];if(G.left===V)if(V.left===g){var Z=G.right;if(Z&&Z._color===a)V._color=o,G.right=u(o,Z),G._color=a,O-=1;else{if(G._color=a,G.left=V.right,V._color=o,V.right=G,P[O-2]=V,P[O-1]=g,c(G),c(V),O>=3){var H=P[O-3];H.left===G?H.left=V:H.right=V}break}}else{var Z=G.right;if(Z&&Z._color===a)V._color=o,G.right=u(o,Z),G._color=a,O-=1;else{if(V.right=g.left,G._color=a,G.left=g.right,g._color=o,g.left=V,g.right=G,P[O-2]=g,P[O-1]=V,c(G),c(V),c(g),O>=3){var H=P[O-3];H.left===G?H.left=g:H.right=g}break}}else if(V.right===g){var Z=G.left;if(Z&&Z._color===a)V._color=o,G.left=u(o,Z),G._color=a,O-=1;else{if(G._color=a,G.right=V.left,V._color=o,V.left=G,P[O-2]=V,P[O-1]=g,c(G),c(V),O>=3){var H=P[O-3];H.right===G?H.right=V:H.left=V}break}}else{var Z=G.left;if(Z&&Z._color===a)V._color=o,G.left=u(o,Z),G._color=a,O-=1;else{if(V.left=g.right,G._color=a,G.right=g.left,g._color=o,g.right=V,g.left=G,P[O-2]=g,P[O-1]=V,c(G),c(V),c(g),O>=3){var H=P[O-3];H.right===G?H.right=g:H.left=g}break}}}return P[0]._color=o,new f(M,P[0])};function d(x,C){if(C.left){var M=d(x,C.left);if(M)return M}var M=x(C.key,C.value);if(M)return M;if(C.right)return d(x,C.right)}function v(x,C,M,g){var P=C(x,g.key);if(P<=0){if(g.left){var T=v(x,C,M,g.left);if(T)return T}var T=M(g.key,g.value);if(T)return T}if(g.right)return v(x,C,M,g.right)}function _(x,C,M,g,P){var T=M(x,P.key),z=M(C,P.key),O;if(T<=0&&(P.left&&(O=_(x,C,M,g,P.left),O)||z>0&&(O=g(P.key,P.value),O)))return O;if(z>0&&P.right)return _(x,C,M,g,P.right)}h.forEach=function(C,M,g){if(this.root)switch(arguments.length){case 1:return d(C,this.root);case 2:return v(M,this._compare,C,this.root);case 3:return this._compare(M,g)>=0?void 0:_(M,g,this._compare,C,this.root)}},Object.defineProperty(h,"begin",{get:function(){for(var x=[],C=this.root;C;)x.push(C),C=C.left;return new b(this,x)}}),Object.defineProperty(h,"end",{get:function(){for(var x=[],C=this.root;C;)x.push(C),C=C.right;return new b(this,x)}}),h.at=function(x){if(x<0)return new b(this,[]);for(var C=this.root,M=[];;){if(M.push(C),C.left){if(x=C.right._count)break;C=C.right}else break}return new b(this,[])},h.ge=function(x){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(x,M.key);g.push(M),T<=0&&(P=g.length),T<=0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.gt=function(x){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(x,M.key);g.push(M),T<0&&(P=g.length),T<0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.lt=function(x){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(x,M.key);g.push(M),T>0&&(P=g.length),T<=0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.le=function(x){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(x,M.key);g.push(M),T>=0&&(P=g.length),T<0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.find=function(x){for(var C=this._compare,M=this.root,g=[];M;){var P=C(x,M.key);if(g.push(M),P===0)return new b(this,g);P<=0?M=M.left:M=M.right}return new b(this,[])},h.remove=function(x){var C=this.find(x);return C?C.remove():this},h.get=function(x){for(var C=this._compare,M=this.root;M;){var g=C(x,M.key);if(g===0)return M.value;g<=0?M=M.left:M=M.right}};function b(x,C){this.tree=x,this._stack=C}var p=b.prototype;Object.defineProperty(p,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(p,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),p.clone=function(){return new b(this.tree,this._stack.slice())};function k(x,C){x.key=C.key,x.value=C.value,x.left=C.left,x.right=C.right,x._color=C._color,x._count=C._count}function E(x){for(var C,M,g,P,T=x.length-1;T>=0;--T){if(C=x[T],T===0){C._color=o;return}if(M=x[T-1],M.left===C){if(g=M.right,g.right&&g.right._color===a){if(g=M.right=l(g),P=g.right=l(g.right),M.right=g.left,g.left=M,g.right=P,g._color=M._color,C._color=o,M._color=o,P._color=o,c(M),c(g),T>1){var z=x[T-2];z.left===M?z.left=g:z.right=g}x[T-1]=g;return}else if(g.left&&g.left._color===a){if(g=M.right=l(g),P=g.left=l(g.left),M.right=P.left,g.left=P.right,P.left=M,P.right=g,P._color=M._color,M._color=o,g._color=o,C._color=o,c(M),c(g),c(P),T>1){var z=x[T-2];z.left===M?z.left=P:z.right=P}x[T-1]=P;return}if(g._color===o)if(M._color===a){M._color=o,M.right=u(a,g);return}else{M.right=u(a,g);continue}else{if(g=l(g),M.right=g.left,g.left=M,g._color=M._color,M._color=a,c(M),c(g),T>1){var z=x[T-2];z.left===M?z.left=g:z.right=g}x[T-1]=g,x[T]=M,T+11){var z=x[T-2];z.right===M?z.right=g:z.left=g}x[T-1]=g;return}else if(g.right&&g.right._color===a){if(g=M.left=l(g),P=g.right=l(g.right),M.left=P.right,g.right=P.left,P.right=M,P.left=g,P._color=M._color,M._color=o,g._color=o,C._color=o,c(M),c(g),c(P),T>1){var z=x[T-2];z.right===M?z.right=P:z.left=P}x[T-1]=P;return}if(g._color===o)if(M._color===a){M._color=o,M.left=u(a,g);return}else{M.left=u(a,g);continue}else{if(g=l(g),M.left=g.right,g.right=M,g._color=M._color,M._color=a,c(M),c(g),T>1){var z=x[T-2];z.right===M?z.right=g:z.left=g}x[T-1]=g,x[T]=M,T+1=0;--g){var M=x[g];M.left===x[g+1]?C[g]=new s(M._color,M.key,M.value,C[g+1],M.right,M._count):C[g]=new s(M._color,M.key,M.value,M.left,C[g+1],M._count)}if(M=C[C.length-1],M.left&&M.right){var P=C.length;for(M=M.left;M.right;)C.push(M),M=M.right;var T=C[P-1];C.push(new s(M._color,T.key,T.value,M.left,M.right,M._count)),C[P-1].key=M.key,C[P-1].value=M.value;for(var g=C.length-2;g>=P;--g)M=C[g],C[g]=new s(M._color,M.key,M.value,M.left,C[g+1],M._count);C[P-1].left=C[P]}if(M=C[C.length-1],M._color===a){var z=C[C.length-2];z.left===M?z.left=null:z.right===M&&(z.right=null),C.pop();for(var g=0;g0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(p,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(p,"index",{get:function(){var x=0,C=this._stack;if(C.length===0){var M=this.tree.root;return M?M._count:0}else C[C.length-1].left&&(x=C[C.length-1].left._count);for(var g=C.length-2;g>=0;--g)C[g+1]===C[g].right&&(++x,C[g].left&&(x+=C[g].left._count));return x},enumerable:!0}),p.next=function(){var x=this._stack;if(x.length!==0){var C=x[x.length-1];if(C.right)for(C=C.right;C;)x.push(C),C=C.left;else for(x.pop();x.length>0&&x[x.length-1].right===C;)C=x[x.length-1],x.pop()}},Object.defineProperty(p,"hasNext",{get:function(){var x=this._stack;if(x.length===0)return!1;if(x[x.length-1].right)return!0;for(var C=x.length-1;C>0;--C)if(x[C-1].left===x[C])return!0;return!1}}),p.update=function(x){var C=this._stack;if(C.length===0)throw new Error("Can't update empty node!");var M=new Array(C.length),g=C[C.length-1];M[M.length-1]=new s(g._color,g.key,x,g.left,g.right,g._count);for(var P=C.length-2;P>=0;--P)g=C[P],g.left===C[P+1]?M[P]=new s(g._color,g.key,g.value,M[P+1],g.right,g._count):M[P]=new s(g._color,g.key,g.value,g.left,M[P+1],g._count);return new f(this.tree._compare,M[0])},p.prev=function(){var x=this._stack;if(x.length!==0){var C=x[x.length-1];if(C.left)for(C=C.left;C;)x.push(C),C=C.right;else for(x.pop();x.length>0&&x[x.length-1].left===C;)C=x[x.length-1],x.pop()}},Object.defineProperty(p,"hasPrev",{get:function(){var x=this._stack;if(x.length===0)return!1;if(x[x.length-1].left)return!0;for(var C=x.length-1;C>0;--C)if(x[C-1].right===x[C])return!0;return!1}});function S(x,C){return xC?1:0}function L(x){return new f(x||S,null)}},3865:function(i,a,o){"use strict";var s=o(869);i.exports=l;function l(u,c){return s(u[0].mul(c[1]).add(c[0].mul(u[1])),u[1].mul(c[1]))}},3952:function(i,a,o){"use strict";i.exports=u;var s=o(3250);function l(c,f){for(var h=new Array(f+1),d=0;d20?52:h+32}},4040:function(i){i.exports=a;function a(o,s,l,u,c,f,h){var d=1/(s-l),v=1/(u-c),_=1/(f-h);return o[0]=-2*d,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=-2*v,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=2*_,o[11]=0,o[12]=(s+l)*d,o[13]=(c+u)*v,o[14]=(h+f)*_,o[15]=1,o}},4041:function(i){i.exports=a;function a(o,s,l){var u=s[0],c=s[1],f=s[2],h=l[0],d=l[1],v=l[2],_=l[3],b=_*u+d*f-v*c,p=_*c+v*u-h*f,k=_*f+h*c-d*u,E=-h*u-d*c-v*f;return o[0]=b*_+E*-h+p*-v-k*-d,o[1]=p*_+E*-d+k*-h-b*-v,o[2]=k*_+E*-v+b*-d-p*-h,o[3]=s[3],o}},4081:function(i){"use strict";i.exports=a;function a(o,s,l,u,c,f,h,d,v,_){var b=s+f+_;if(p>0){var p=Math.sqrt(b+1);o[0]=.5*(h-v)/p,o[1]=.5*(d-u)/p,o[2]=.5*(l-f)/p,o[3]=.5*p}else{var k=Math.max(s,f,_),p=Math.sqrt(2*k-b+1);s>=k?(o[0]=.5*p,o[1]=.5*(c+l)/p,o[2]=.5*(d+u)/p,o[3]=.5*(h-v)/p):f>=k?(o[0]=.5*(l+c)/p,o[1]=.5*p,o[2]=.5*(v+h)/p,o[3]=.5*(d-u)/p):(o[0]=.5*(u+d)/p,o[1]=.5*(h+v)/p,o[2]=.5*p,o[3]=.5*(l-c)/p)}return o}},4100:function(i,a,o){"use strict";var s=o(4437),l=o(3837),u=o(5445),c=o(4449),f=o(3589),h=o(2260),d=o(7169),v=o(351),_=o(4772),b=o(4040),p=o(799),k=o(9216)({tablet:!0,featureDetect:!0});i.exports={createScene:C,createCamera:s};function E(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function S(g,P){var T=null;try{T=g.getContext("webgl",P),T||(T=g.getContext("experimental-webgl",P))}catch(z){return null}return T}function L(g){var P=Math.round(Math.log(Math.abs(g))/Math.log(10));if(P<0){var T=Math.round(Math.pow(10,-P));return Math.ceil(g*T)/T}else if(P>0){var T=Math.round(Math.pow(10,P));return Math.ceil(g/T)*T}return Math.ceil(g)}function x(g){return typeof g=="boolean"?g:!0}function C(g){g=g||{},g.camera=g.camera||{};var P=g.canvas;if(!P)if(P=document.createElement("canvas"),g.container){var T=g.container;T.appendChild(P)}else document.body.appendChild(P);var z=g.gl;if(z||(g.glOptions&&(k=!!g.glOptions.preserveDrawingBuffer),z=S(P,g.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:k})),!z)throw new Error("webgl not supported");var O=g.bounds||[[-10,-10,-10],[10,10,10]],V=new E,G=h(z,z.drawingBufferWidth,z.drawingBufferHeight,{preferFloat:!k}),Z=p(z),H=g.cameraObject&&g.cameraObject._ortho===!0||g.camera.projection&&g.camera.projection.type==="orthographic"||!1,N={eye:g.camera.eye||[2,0,0],center:g.camera.center||[0,0,0],up:g.camera.up||[0,1,0],zoomMin:g.camera.zoomMax||.1,zoomMax:g.camera.zoomMin||100,mode:g.camera.mode||"turntable",_ortho:H},j=g.axes||{},re=l(z,j);re.enable=!j.disable;var oe=g.spikes||{},_e=c(z,oe),Ee=[],Ce=[],me=[],ie=[],Se=!0,Pe=!0,Le=new Array(16),Ae=new Array(16),Fe={view:null,projection:Le,model:Ae,_ortho:!1},Pe=!0,ge=[z.drawingBufferWidth,z.drawingBufferHeight],Re=g.cameraObject||s(P,N),ce={gl:z,contextLost:!1,pixelRatio:g.pixelRatio||1,canvas:P,selection:V,camera:Re,axes:re,axesPixels:null,spikes:_e,bounds:O,objects:Ee,shape:ge,aspect:g.aspectRatio||[1,1,1],pickRadius:g.pickRadius||10,zNear:g.zNear||.01,zFar:g.zFar||1e3,fovy:g.fovy||Math.PI/4,clearColor:g.clearColor||[0,0,0,0],autoResize:x(g.autoResize),autoBounds:x(g.autoBounds),autoScale:!!g.autoScale,autoCenter:x(g.autoCenter),clipToBounds:x(g.clipToBounds),snapToData:!!g.snapToData,onselect:g.onselect||null,onrender:g.onrender||null,onclick:g.onclick||null,cameraParams:Fe,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(sr){this.aspect[0]=sr.x,this.aspect[1]=sr.y,this.aspect[2]=sr.z,Pe=!0},setBounds:function(sr,wr){this.bounds[0][sr]=wr.min,this.bounds[1][sr]=wr.max},setClearColor:function(sr){this.clearColor=sr},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},Ze=[z.drawingBufferWidth/ce.pixelRatio|0,z.drawingBufferHeight/ce.pixelRatio|0];function ut(){if(!ce._stopped&&ce.autoResize){var sr=P.parentNode,wr=1,cr=1;sr&&sr!==document.body?(wr=sr.clientWidth,cr=sr.clientHeight):(wr=window.innerWidth,cr=window.innerHeight);var $e=Math.ceil(wr*ce.pixelRatio)|0,St=Math.ceil(cr*ce.pixelRatio)|0;if($e!==P.width||St!==P.height){P.width=$e,P.height=St;var Qt=P.style;Qt.position=Qt.position||"absolute",Qt.left="0px",Qt.top="0px",Qt.width=wr+"px",Qt.height=cr+"px",Se=!0}}}ce.autoResize&&ut(),window.addEventListener("resize",ut);function pt(){for(var sr=Ee.length,wr=ie.length,cr=0;cr0&&me[wr-1]===0;)me.pop(),ie.pop().dispose()}ce.update=function(sr){ce._stopped||(sr=sr||{},Se=!0,Pe=!0)},ce.add=function(sr){ce._stopped||(sr.axes=re,Ee.push(sr),Ce.push(-1),Se=!0,Pe=!0,pt())},ce.remove=function(sr){if(!ce._stopped){var wr=Ee.indexOf(sr);wr<0||(Ee.splice(wr,1),Ce.pop(),Se=!0,Pe=!0,pt())}},ce.dispose=function(){if(!ce._stopped&&(ce._stopped=!0,window.removeEventListener("resize",ut),P.removeEventListener("webglcontextlost",Zt),ce.mouseListener.enabled=!1,!ce.contextLost)){re.dispose(),_e.dispose();for(var sr=0;srV.distance)continue;for(var mt=0;mt_;){var M=p[C-2],g=p[C-1];if(Mp[b+1]:!0}function d(_,b,p,k){_*=2;var E=k[_];return E>1,x=L-k,C=L+k,M=E,g=x,P=L,T=C,z=S,O=_+1,V=b-1,G=0;h(M,g,p)&&(G=M,M=g,g=G),h(T,z,p)&&(G=T,T=z,z=G),h(M,P,p)&&(G=M,M=P,P=G),h(g,P,p)&&(G=g,g=P,P=G),h(M,T,p)&&(G=M,M=T,T=G),h(P,T,p)&&(G=P,P=T,T=G),h(g,z,p)&&(G=g,g=z,z=G),h(g,P,p)&&(G=g,g=P,P=G),h(T,z,p)&&(G=T,T=z,z=G);for(var Z=p[2*g],H=p[2*g+1],N=p[2*T],j=p[2*T+1],re=2*M,oe=2*P,_e=2*z,Ee=2*E,Ce=2*L,me=2*S,ie=0;ie<2;++ie){var Se=p[re+ie],Le=p[oe+ie],Ae=p[_e+ie];p[Ee+ie]=Se,p[Ce+ie]=Le,p[me+ie]=Ae}u(x,_,p),u(C,b,p);for(var Fe=O;Fe<=V;++Fe)if(d(Fe,Z,H,p))Fe!==O&&l(Fe,O,p),++O;else if(!d(Fe,N,j,p))for(;;)if(d(V,N,j,p)){d(V,Z,H,p)?(c(Fe,O,V,p),++O,--V):(l(Fe,V,p),--V);break}else{if(--V0)if(E[0]!==L[1][0])S=k,k=k.right;else{var g=v(k.right,E);if(g)return g;k=k.left}else{if(E[0]!==L[1][0])return k;var g=v(k.right,E);if(g)return g;k=k.left}}return S}h.castUp=function(k){var E=s.le(this.coordinates,k[0]);if(E<0)return-1;var S=this.slabs[E],L=v(this.slabs[E],k),x=-1;if(L&&(x=L.value),this.coordinates[E]===k[0]){var C=null;if(L&&(C=L.key),E>0){var M=v(this.slabs[E-1],k);M&&(C?c(M.key,C)>0&&(C=M.key,x=M.value):(x=M.value,C=M.key))}var g=this.horizontal[E];if(g.length>0){var P=s.ge(g,k[1],d);if(P=g.length)return x;T=g[P]}}if(T.start)if(C){var z=u(C[0],C[1],[k[0],T.y]);C[0][0]>C[1][0]&&(z=-z),z>0&&(x=T.index)}else x=T.index;else T.y!==k[1]&&(x=T.index)}}}return x};function _(k,E,S,L){this.y=k,this.index=E,this.start=S,this.closed=L}function b(k,E,S,L){this.x=k,this.segment=E,this.create=S,this.index=L}function p(k){for(var E=k.length,S=2*E,L=new Array(S),x=0;xMath.abs(g))p.rotate(z,0,0,-M*P*Math.PI*x.rotateSpeed/window.innerWidth);else if(!x._ortho){var O=-x.zoomSpeed*T*g/window.innerHeight*(z-p.lastT())/20;p.pan(z,0,0,E*(Math.exp(O)-1))}}},!0)},x.enableMouseListeners(),x}},4449:function(i,a,o){"use strict";var s=o(2762),l=o(8116),u=o(1493);i.exports=b;var c=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function f(p,k,E,S){this.gl=p,this.buffer=k,this.vao=E,this.shader=S,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var h=f.prototype,d=[0,0,0],v=[0,0,0],_=[0,0];h.isTransparent=function(){return!1},h.drawTransparent=function(p){},h.draw=function(p){var k=this.gl,E=this.vao,S=this.shader;E.bind(),S.bind();var L=p.model||c,x=p.view||c,C=p.projection||c,M;this.axes&&(M=this.axes.lastCubeProps.axis);for(var g=d,P=v,T=0;T<3;++T)M&&M[T]<0?(g[T]=this.bounds[0][T],P[T]=this.bounds[1][T]):(g[T]=this.bounds[1][T],P[T]=this.bounds[0][T]);_[0]=k.drawingBufferWidth,_[1]=k.drawingBufferHeight,S.uniforms.model=L,S.uniforms.view=x,S.uniforms.projection=C,S.uniforms.coordinates=[this.position,g,P],S.uniforms.colors=this.colors,S.uniforms.screenShape=_;for(var T=0;T<3;++T)S.uniforms.lineWidth=this.lineWidth[T]*this.pixelRatio,this.enabled[T]&&(E.draw(k.TRIANGLES,6,6*T),this.drawSides[T]&&E.draw(k.TRIANGLES,12,18+12*T));E.unbind()},h.update=function(p){p&&("bounds"in p&&(this.bounds=p.bounds),"position"in p&&(this.position=p.position),"lineWidth"in p&&(this.lineWidth=p.lineWidth),"colors"in p&&(this.colors=p.colors),"enabled"in p&&(this.enabled=p.enabled),"drawSides"in p&&(this.drawSides=p.drawSides))},h.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function b(p,k){var E=[];function S(g,P,T,z,O,V){var G=[g,P,T,0,0,0,1];G[z+3]=1,G[z]=O,E.push.apply(E,G),G[6]=-1,E.push.apply(E,G),G[z]=V,E.push.apply(E,G),E.push.apply(E,G),G[6]=1,E.push.apply(E,G),G[z]=O,E.push.apply(E,G)}S(0,0,0,0,0,1),S(0,0,0,1,0,1),S(0,0,0,2,0,1),S(1,0,0,1,-1,1),S(1,0,0,2,-1,1),S(0,1,0,0,-1,1),S(0,1,0,2,-1,1),S(0,0,1,0,-1,1),S(0,0,1,1,-1,1);var L=s(p,E),x=l(p,[{type:p.FLOAT,buffer:L,size:3,offset:0,stride:28},{type:p.FLOAT,buffer:L,size:3,offset:12,stride:28},{type:p.FLOAT,buffer:L,size:1,offset:24,stride:28}]),C=u(p);C.attributes.position.location=0,C.attributes.color.location=1,C.attributes.weight.location=2;var M=new f(p,L,x,C);return M.update(k),M}},4494:function(i){i.exports=a;function a(o,s){return o[0]=1/s[0],o[1]=1/s[1],o[2]=1/s[2],o[3]=1/s[3],o}},4505:function(i,a,o){i.exports=o(5847)},4578:function(i){i.exports=a;function a(o,s,l,u,c){return o[0]=s,o[1]=l,o[2]=u,o[3]=c,o}},4623:function(i){"use strict";"use restrict";i.exports=a;function a(o){this.roots=new Array(o),this.ranks=new Array(o);for(var s=0;s0)return 1<=0)return 1<=0;--p)h[p]=d*s[p]+v*l[p]+_*u[p]+b*c[p];return h}return d*s+v*l+_*u[p]+b*c}function o(s,l,u,c,f,h){var d=f-1,v=f*f,_=d*d,b=(1+2*f)*_,p=f*_,k=v*(3-2*f),E=v*d;if(s.length){h||(h=new Array(s.length));for(var S=s.length-1;S>=0;--S)h[S]=b*s[S]+p*l[S]+k*u[S]+E*c[S];return h}return b*s+p*l+k*u+E*c}i.exports=o,i.exports.derivative=a},4772:function(i){i.exports=a;function a(o,s,l,u,c){var f=1/Math.tan(s/2),h=1/(u-c);return o[0]=f/l,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=f,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=(c+u)*h,o[11]=-1,o[12]=0,o[13]=0,o[14]=2*c*u*h,o[15]=0,o}},4793:function(i,a,o){"use strict";var s;function l(Ie,xe){if(!(Ie instanceof xe))throw new TypeError("Cannot call a class as a function")}function u(Ie,xe){for(var ke=0;keM)throw new RangeError('The value "'+Ie+'" is invalid for option "size"');var xe=new Uint8Array(Ie);return Object.setPrototypeOf(xe,T.prototype),xe}function T(Ie,xe,ke){if(typeof Ie=="number"){if(typeof xe=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return G(Ie)}return z(Ie,xe,ke)}T.poolSize=8192;function z(Ie,xe,ke){if(typeof Ie=="string")return Z(Ie,xe);if(ArrayBuffer.isView(Ie))return N(Ie);if(Ie==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+S(Ie));if(Ge(Ie,ArrayBuffer)||Ie&&Ge(Ie.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(Ge(Ie,SharedArrayBuffer)||Ie&&Ge(Ie.buffer,SharedArrayBuffer)))return j(Ie,xe,ke);if(typeof Ie=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var vt=Ie.valueOf&&Ie.valueOf();if(vt!=null&&vt!==Ie)return T.from(vt,xe,ke);var ir=re(Ie);if(ir)return ir;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof Ie[Symbol.toPrimitive]=="function")return T.from(Ie[Symbol.toPrimitive]("string"),xe,ke);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+S(Ie))}T.from=function(Ie,xe,ke){return z(Ie,xe,ke)},Object.setPrototypeOf(T.prototype,Uint8Array.prototype),Object.setPrototypeOf(T,Uint8Array);function O(Ie){if(typeof Ie!="number")throw new TypeError('"size" argument must be of type number');if(Ie<0)throw new RangeError('The value "'+Ie+'" is invalid for option "size"')}function V(Ie,xe,ke){return O(Ie),Ie<=0?P(Ie):xe!==void 0?typeof ke=="string"?P(Ie).fill(xe,ke):P(Ie).fill(xe):P(Ie)}T.alloc=function(Ie,xe,ke){return V(Ie,xe,ke)};function G(Ie){return O(Ie),P(Ie<0?0:oe(Ie)|0)}T.allocUnsafe=function(Ie){return G(Ie)},T.allocUnsafeSlow=function(Ie){return G(Ie)};function Z(Ie,xe){if((typeof xe!="string"||xe==="")&&(xe="utf8"),!T.isEncoding(xe))throw new TypeError("Unknown encoding: "+xe);var ke=Ee(Ie,xe)|0,vt=P(ke),ir=vt.write(Ie,xe);return ir!==ke&&(vt=vt.slice(0,ir)),vt}function H(Ie){for(var xe=Ie.length<0?0:oe(Ie.length)|0,ke=P(xe),vt=0;vt=M)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+M.toString(16)+" bytes");return Ie|0}function _e(Ie){return+Ie!=Ie&&(Ie=0),T.alloc(+Ie)}T.isBuffer=function(xe){return xe!=null&&xe._isBuffer===!0&&xe!==T.prototype},T.compare=function(xe,ke){if(Ge(xe,Uint8Array)&&(xe=T.from(xe,xe.offset,xe.byteLength)),Ge(ke,Uint8Array)&&(ke=T.from(ke,ke.offset,ke.byteLength)),!T.isBuffer(xe)||!T.isBuffer(ke))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(xe===ke)return 0;for(var vt=xe.length,ir=ke.length,ar=0,vr=Math.min(vt,ir);arir.length?(T.isBuffer(vr)||(vr=T.from(vr)),vr.copy(ir,ar)):Uint8Array.prototype.set.call(ir,vr,ar);else if(T.isBuffer(vr))vr.copy(ir,ar);else throw new TypeError('"list" argument must be an Array of Buffers');ar+=vr.length}return ir};function Ee(Ie,xe){if(T.isBuffer(Ie))return Ie.length;if(ArrayBuffer.isView(Ie)||Ge(Ie,ArrayBuffer))return Ie.byteLength;if(typeof Ie!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+S(Ie));var ke=Ie.length,vt=arguments.length>2&&arguments[2]===!0;if(!vt&&ke===0)return 0;for(var ir=!1;;)switch(xe){case"ascii":case"latin1":case"binary":return ke;case"utf8":case"utf-8":return Lr(Ie).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ke*2;case"hex":return ke>>>1;case"base64":return Vr(Ie).length;default:if(ir)return vt?-1:Lr(Ie).length;xe=(""+xe).toLowerCase(),ir=!0}}T.byteLength=Ee;function Ce(Ie,xe,ke){var vt=!1;if((xe===void 0||xe<0)&&(xe=0),xe>this.length||((ke===void 0||ke>this.length)&&(ke=this.length),ke<=0)||(ke>>>=0,xe>>>=0,ke<=xe))return"";for(Ie||(Ie="utf8");;)switch(Ie){case"hex":return st(this,xe,ke);case"utf8":case"utf-8":return ce(this,xe,ke);case"ascii":return pt(this,xe,ke);case"latin1":case"binary":return Zt(this,xe,ke);case"base64":return Re(this,xe,ke);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return lt(this,xe,ke);default:if(vt)throw new TypeError("Unknown encoding: "+Ie);Ie=(Ie+"").toLowerCase(),vt=!0}}T.prototype._isBuffer=!0;function me(Ie,xe,ke){var vt=Ie[xe];Ie[xe]=Ie[ke],Ie[ke]=vt}T.prototype.swap16=function(){var xe=this.length;if(xe%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var ke=0;keke&&(xe+=" ... "),""},C&&(T.prototype[C]=T.prototype.inspect),T.prototype.compare=function(xe,ke,vt,ir,ar){if(Ge(xe,Uint8Array)&&(xe=T.from(xe,xe.offset,xe.byteLength)),!T.isBuffer(xe))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+S(xe));if(ke===void 0&&(ke=0),vt===void 0&&(vt=xe?xe.length:0),ir===void 0&&(ir=0),ar===void 0&&(ar=this.length),ke<0||vt>xe.length||ir<0||ar>this.length)throw new RangeError("out of range index");if(ir>=ar&&ke>=vt)return 0;if(ir>=ar)return-1;if(ke>=vt)return 1;if(ke>>>=0,vt>>>=0,ir>>>=0,ar>>>=0,this===xe)return 0;for(var vr=ar-ir,ii=vt-ke,pi=Math.min(vr,ii),$r=this.slice(ir,ar),di=xe.slice(ke,vt),ji=0;ji2147483647?ke=2147483647:ke<-2147483648&&(ke=-2147483648),ke=+ke,Je(ke)&&(ke=ir?0:Ie.length-1),ke<0&&(ke=Ie.length+ke),ke>=Ie.length){if(ir)return-1;ke=Ie.length-1}else if(ke<0)if(ir)ke=0;else return-1;if(typeof xe=="string"&&(xe=T.from(xe,vt)),T.isBuffer(xe))return xe.length===0?-1:Se(Ie,xe,ke,vt,ir);if(typeof xe=="number")return xe=xe&255,typeof Uint8Array.prototype.indexOf=="function"?ir?Uint8Array.prototype.indexOf.call(Ie,xe,ke):Uint8Array.prototype.lastIndexOf.call(Ie,xe,ke):Se(Ie,[xe],ke,vt,ir);throw new TypeError("val must be string, number or Buffer")}function Se(Ie,xe,ke,vt,ir){var ar=1,vr=Ie.length,ii=xe.length;if(vt!==void 0&&(vt=String(vt).toLowerCase(),vt==="ucs2"||vt==="ucs-2"||vt==="utf16le"||vt==="utf-16le")){if(Ie.length<2||xe.length<2)return-1;ar=2,vr/=2,ii/=2,ke/=2}function pi(wi,On){return ar===1?wi[On]:wi.readUInt16BE(On*ar)}var $r;if(ir){var di=-1;for($r=ke;$rvr&&(ke=vr-ii),$r=ke;$r>=0;$r--){for(var ji=!0,In=0;Inir&&(vt=ir)):vt=ir;var ar=xe.length;vt>ar/2&&(vt=ar/2);var vr;for(vr=0;vr>>0,isFinite(vt)?(vt=vt>>>0,ir===void 0&&(ir="utf8")):(ir=vt,vt=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var ar=this.length-ke;if((vt===void 0||vt>ar)&&(vt=ar),xe.length>0&&(vt<0||ke<0)||ke>this.length)throw new RangeError("Attempt to write outside buffer bounds");ir||(ir="utf8");for(var vr=!1;;)switch(ir){case"hex":return Le(this,xe,ke,vt);case"utf8":case"utf-8":return Ae(this,xe,ke,vt);case"ascii":case"latin1":case"binary":return Fe(this,xe,ke,vt);case"base64":return Pe(this,xe,ke,vt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ge(this,xe,ke,vt);default:if(vr)throw new TypeError("Unknown encoding: "+ir);ir=(""+ir).toLowerCase(),vr=!0}},T.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Re(Ie,xe,ke){return xe===0&&ke===Ie.length?L.fromByteArray(Ie):L.fromByteArray(Ie.slice(xe,ke))}function ce(Ie,xe,ke){ke=Math.min(Ie.length,ke);for(var vt=[],ir=xe;ir239?4:ar>223?3:ar>191?2:1;if(ir+ii<=ke){var pi=void 0,$r=void 0,di=void 0,ji=void 0;switch(ii){case 1:ar<128&&(vr=ar);break;case 2:pi=Ie[ir+1],(pi&192)===128&&(ji=(ar&31)<<6|pi&63,ji>127&&(vr=ji));break;case 3:pi=Ie[ir+1],$r=Ie[ir+2],(pi&192)===128&&($r&192)===128&&(ji=(ar&15)<<12|(pi&63)<<6|$r&63,ji>2047&&(ji<55296||ji>57343)&&(vr=ji));break;case 4:pi=Ie[ir+1],$r=Ie[ir+2],di=Ie[ir+3],(pi&192)===128&&($r&192)===128&&(di&192)===128&&(ji=(ar&15)<<18|(pi&63)<<12|($r&63)<<6|di&63,ji>65535&&ji<1114112&&(vr=ji))}}vr===null?(vr=65533,ii=1):vr>65535&&(vr-=65536,vt.push(vr>>>10&1023|55296),vr=56320|vr&1023),vt.push(vr),ir+=ii}return ut(vt)}var Ze=4096;function ut(Ie){var xe=Ie.length;if(xe<=Ze)return String.fromCharCode.apply(String,Ie);for(var ke="",vt=0;vtvt)&&(ke=vt);for(var ir="",ar=xe;arvt&&(xe=vt),ke<0?(ke+=vt,ke<0&&(ke=0)):ke>vt&&(ke=vt),keke)throw new RangeError("Trying to access beyond buffer length")}T.prototype.readUintLE=T.prototype.readUIntLE=function(xe,ke,vt){xe=xe>>>0,ke=ke>>>0,vt||Gt(xe,ke,this.length);for(var ir=this[xe],ar=1,vr=0;++vr>>0,ke=ke>>>0,vt||Gt(xe,ke,this.length);for(var ir=this[xe+--ke],ar=1;ke>0&&(ar*=256);)ir+=this[xe+--ke]*ar;return ir},T.prototype.readUint8=T.prototype.readUInt8=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,1,this.length),this[xe]},T.prototype.readUint16LE=T.prototype.readUInt16LE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,2,this.length),this[xe]|this[xe+1]<<8},T.prototype.readUint16BE=T.prototype.readUInt16BE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,2,this.length),this[xe]<<8|this[xe+1]},T.prototype.readUint32LE=T.prototype.readUInt32LE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),(this[xe]|this[xe+1]<<8|this[xe+2]<<16)+this[xe+3]*16777216},T.prototype.readUint32BE=T.prototype.readUInt32BE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),this[xe]*16777216+(this[xe+1]<<16|this[xe+2]<<8|this[xe+3])},T.prototype.readBigUInt64LE=tt(function(xe){xe=xe>>>0,mt(xe,"offset");var ke=this[xe],vt=this[xe+7];(ke===void 0||vt===void 0)&&er(xe,this.length-8);var ir=ke+this[++xe]*Math.pow(2,8)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,24),ar=this[++xe]+this[++xe]*Math.pow(2,8)+this[++xe]*Math.pow(2,16)+vt*Math.pow(2,24);return BigInt(ir)+(BigInt(ar)<>>0,mt(xe,"offset");var ke=this[xe],vt=this[xe+7];(ke===void 0||vt===void 0)&&er(xe,this.length-8);var ir=ke*Math.pow(2,24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+this[++xe],ar=this[++xe]*Math.pow(2,24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+vt;return(BigInt(ir)<>>0,ke=ke>>>0,vt||Gt(xe,ke,this.length);for(var ir=this[xe],ar=1,vr=0;++vr=ar&&(ir-=Math.pow(2,8*ke)),ir},T.prototype.readIntBE=function(xe,ke,vt){xe=xe>>>0,ke=ke>>>0,vt||Gt(xe,ke,this.length);for(var ir=ke,ar=1,vr=this[xe+--ir];ir>0&&(ar*=256);)vr+=this[xe+--ir]*ar;return ar*=128,vr>=ar&&(vr-=Math.pow(2,8*ke)),vr},T.prototype.readInt8=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,1,this.length),this[xe]&128?(255-this[xe]+1)*-1:this[xe]},T.prototype.readInt16LE=function(xe,ke){xe=xe>>>0,ke||Gt(xe,2,this.length);var vt=this[xe]|this[xe+1]<<8;return vt&32768?vt|4294901760:vt},T.prototype.readInt16BE=function(xe,ke){xe=xe>>>0,ke||Gt(xe,2,this.length);var vt=this[xe+1]|this[xe]<<8;return vt&32768?vt|4294901760:vt},T.prototype.readInt32LE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),this[xe]|this[xe+1]<<8|this[xe+2]<<16|this[xe+3]<<24},T.prototype.readInt32BE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),this[xe]<<24|this[xe+1]<<16|this[xe+2]<<8|this[xe+3]},T.prototype.readBigInt64LE=tt(function(xe){xe=xe>>>0,mt(xe,"offset");var ke=this[xe],vt=this[xe+7];(ke===void 0||vt===void 0)&&er(xe,this.length-8);var ir=this[xe+4]+this[xe+5]*Math.pow(2,8)+this[xe+6]*Math.pow(2,16)+(vt<<24);return(BigInt(ir)<>>0,mt(xe,"offset");var ke=this[xe],vt=this[xe+7];(ke===void 0||vt===void 0)&&er(xe,this.length-8);var ir=(ke<<24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+this[++xe];return(BigInt(ir)<>>0,ke||Gt(xe,4,this.length),x.read(this,xe,!0,23,4)},T.prototype.readFloatBE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),x.read(this,xe,!1,23,4)},T.prototype.readDoubleLE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,8,this.length),x.read(this,xe,!0,52,8)},T.prototype.readDoubleBE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,8,this.length),x.read(this,xe,!1,52,8)};function Nt(Ie,xe,ke,vt,ir,ar){if(!T.isBuffer(Ie))throw new TypeError('"buffer" argument must be a Buffer instance');if(xe>ir||xeIe.length)throw new RangeError("Index out of range")}T.prototype.writeUintLE=T.prototype.writeUIntLE=function(xe,ke,vt,ir){if(xe=+xe,ke=ke>>>0,vt=vt>>>0,!ir){var ar=Math.pow(2,8*vt)-1;Nt(this,xe,ke,vt,ar,0)}var vr=1,ii=0;for(this[ke]=xe&255;++ii>>0,vt=vt>>>0,!ir){var ar=Math.pow(2,8*vt)-1;Nt(this,xe,ke,vt,ar,0)}var vr=vt-1,ii=1;for(this[ke+vr]=xe&255;--vr>=0&&(ii*=256);)this[ke+vr]=xe/ii&255;return ke+vt},T.prototype.writeUint8=T.prototype.writeUInt8=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,1,255,0),this[ke]=xe&255,ke+1},T.prototype.writeUint16LE=T.prototype.writeUInt16LE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,2,65535,0),this[ke]=xe&255,this[ke+1]=xe>>>8,ke+2},T.prototype.writeUint16BE=T.prototype.writeUInt16BE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,2,65535,0),this[ke]=xe>>>8,this[ke+1]=xe&255,ke+2},T.prototype.writeUint32LE=T.prototype.writeUInt32LE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,4,4294967295,0),this[ke+3]=xe>>>24,this[ke+2]=xe>>>16,this[ke+1]=xe>>>8,this[ke]=xe&255,ke+4},T.prototype.writeUint32BE=T.prototype.writeUInt32BE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,4,4294967295,0),this[ke]=xe>>>24,this[ke+1]=xe>>>16,this[ke+2]=xe>>>8,this[ke+3]=xe&255,ke+4};function Jt(Ie,xe,ke,vt,ir){It(xe,vt,ir,Ie,ke,7);var ar=Number(xe&BigInt(4294967295));Ie[ke++]=ar,ar=ar>>8,Ie[ke++]=ar,ar=ar>>8,Ie[ke++]=ar,ar=ar>>8,Ie[ke++]=ar;var vr=Number(xe>>BigInt(32)&BigInt(4294967295));return Ie[ke++]=vr,vr=vr>>8,Ie[ke++]=vr,vr=vr>>8,Ie[ke++]=vr,vr=vr>>8,Ie[ke++]=vr,ke}function sr(Ie,xe,ke,vt,ir){It(xe,vt,ir,Ie,ke,7);var ar=Number(xe&BigInt(4294967295));Ie[ke+7]=ar,ar=ar>>8,Ie[ke+6]=ar,ar=ar>>8,Ie[ke+5]=ar,ar=ar>>8,Ie[ke+4]=ar;var vr=Number(xe>>BigInt(32)&BigInt(4294967295));return Ie[ke+3]=vr,vr=vr>>8,Ie[ke+2]=vr,vr=vr>>8,Ie[ke+1]=vr,vr=vr>>8,Ie[ke]=vr,ke+8}T.prototype.writeBigUInt64LE=tt(function(xe){var ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Jt(this,xe,ke,BigInt(0),BigInt("0xffffffffffffffff"))}),T.prototype.writeBigUInt64BE=tt(function(xe){var ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return sr(this,xe,ke,BigInt(0),BigInt("0xffffffffffffffff"))}),T.prototype.writeIntLE=function(xe,ke,vt,ir){if(xe=+xe,ke=ke>>>0,!ir){var ar=Math.pow(2,8*vt-1);Nt(this,xe,ke,vt,ar-1,-ar)}var vr=0,ii=1,pi=0;for(this[ke]=xe&255;++vr>0)-pi&255;return ke+vt},T.prototype.writeIntBE=function(xe,ke,vt,ir){if(xe=+xe,ke=ke>>>0,!ir){var ar=Math.pow(2,8*vt-1);Nt(this,xe,ke,vt,ar-1,-ar)}var vr=vt-1,ii=1,pi=0;for(this[ke+vr]=xe&255;--vr>=0&&(ii*=256);)xe<0&&pi===0&&this[ke+vr+1]!==0&&(pi=1),this[ke+vr]=(xe/ii>>0)-pi&255;return ke+vt},T.prototype.writeInt8=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,1,127,-128),xe<0&&(xe=255+xe+1),this[ke]=xe&255,ke+1},T.prototype.writeInt16LE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,2,32767,-32768),this[ke]=xe&255,this[ke+1]=xe>>>8,ke+2},T.prototype.writeInt16BE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,2,32767,-32768),this[ke]=xe>>>8,this[ke+1]=xe&255,ke+2},T.prototype.writeInt32LE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,4,2147483647,-2147483648),this[ke]=xe&255,this[ke+1]=xe>>>8,this[ke+2]=xe>>>16,this[ke+3]=xe>>>24,ke+4},T.prototype.writeInt32BE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,4,2147483647,-2147483648),xe<0&&(xe=4294967295+xe+1),this[ke]=xe>>>24,this[ke+1]=xe>>>16,this[ke+2]=xe>>>8,this[ke+3]=xe&255,ke+4},T.prototype.writeBigInt64LE=tt(function(xe){var ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Jt(this,xe,ke,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),T.prototype.writeBigInt64BE=tt(function(xe){var ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return sr(this,xe,ke,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function wr(Ie,xe,ke,vt,ir,ar){if(ke+vt>Ie.length)throw new RangeError("Index out of range");if(ke<0)throw new RangeError("Index out of range")}function cr(Ie,xe,ke,vt,ir){return xe=+xe,ke=ke>>>0,ir||wr(Ie,xe,ke,4,34028234663852886e22,-34028234663852886e22),x.write(Ie,xe,ke,vt,23,4),ke+4}T.prototype.writeFloatLE=function(xe,ke,vt){return cr(this,xe,ke,!0,vt)},T.prototype.writeFloatBE=function(xe,ke,vt){return cr(this,xe,ke,!1,vt)};function $e(Ie,xe,ke,vt,ir){return xe=+xe,ke=ke>>>0,ir||wr(Ie,xe,ke,8,17976931348623157e292,-17976931348623157e292),x.write(Ie,xe,ke,vt,52,8),ke+8}T.prototype.writeDoubleLE=function(xe,ke,vt){return $e(this,xe,ke,!0,vt)},T.prototype.writeDoubleBE=function(xe,ke,vt){return $e(this,xe,ke,!1,vt)},T.prototype.copy=function(xe,ke,vt,ir){if(!T.isBuffer(xe))throw new TypeError("argument should be a Buffer");if(vt||(vt=0),!ir&&ir!==0&&(ir=this.length),ke>=xe.length&&(ke=xe.length),ke||(ke=0),ir>0&&ir=this.length)throw new RangeError("Index out of range");if(ir<0)throw new RangeError("sourceEnd out of bounds");ir>this.length&&(ir=this.length),xe.length-ke>>0,vt=vt===void 0?this.length:vt>>>0,xe||(xe=0);var vr;if(typeof xe=="number")for(vr=ke;vrMath.pow(2,32)?ir=Vt(String(ke)):typeof ke=="bigint"&&(ir=String(ke),(ke>Math.pow(BigInt(2),BigInt(32))||ke<-Math.pow(BigInt(2),BigInt(32)))&&(ir=Vt(ir)),ir+="n"),vt+=" It must be ".concat(xe,". Received ").concat(ir),vt},RangeError);function Vt(Ie){for(var xe="",ke=Ie.length,vt=Ie[0]==="-"?1:0;ke>=vt+4;ke-=3)xe="_".concat(Ie.slice(ke-3,ke)).concat(xe);return"".concat(Ie.slice(0,ke)).concat(xe)}function _t(Ie,xe,ke){mt(xe,"offset"),(Ie[xe]===void 0||Ie[xe+ke]===void 0)&&er(xe,Ie.length-(ke+1))}function It(Ie,xe,ke,vt,ir,ar){if(Ie>ke||Ie3?xe===0||xe===BigInt(0)?ii=">= 0".concat(vr," and < 2").concat(vr," ** ").concat((ar+1)*8).concat(vr):ii=">= -(2".concat(vr," ** ").concat((ar+1)*8-1).concat(vr,") and < 2 ** ")+"".concat((ar+1)*8-1).concat(vr):ii=">= ".concat(xe).concat(vr," and <= ").concat(ke).concat(vr),new St.ERR_OUT_OF_RANGE("value",ii,Ie)}_t(vt,ir,ar)}function mt(Ie,xe){if(typeof Ie!="number")throw new St.ERR_INVALID_ARG_TYPE(xe,"number",Ie)}function er(Ie,xe,ke){throw Math.floor(Ie)!==Ie?(mt(Ie,ke),new St.ERR_OUT_OF_RANGE(ke||"offset","an integer",Ie)):xe<0?new St.ERR_BUFFER_OUT_OF_BOUNDS:new St.ERR_OUT_OF_RANGE(ke||"offset",">= ".concat(ke?1:0," and <= ").concat(xe),Ie)}var lr=/[^+/0-9A-Za-z-_]/g;function Tr(Ie){if(Ie=Ie.split("=")[0],Ie=Ie.trim().replace(lr,""),Ie.length<2)return"";for(;Ie.length%4!==0;)Ie=Ie+"=";return Ie}function Lr(Ie,xe){xe=xe||1/0;for(var ke,vt=Ie.length,ir=null,ar=[],vr=0;vr55295&&ke<57344){if(!ir){if(ke>56319){(xe-=3)>-1&&ar.push(239,191,189);continue}else if(vr+1===vt){(xe-=3)>-1&&ar.push(239,191,189);continue}ir=ke;continue}if(ke<56320){(xe-=3)>-1&&ar.push(239,191,189),ir=ke;continue}ke=(ir-55296<<10|ke-56320)+65536}else ir&&(xe-=3)>-1&&ar.push(239,191,189);if(ir=null,ke<128){if((xe-=1)<0)break;ar.push(ke)}else if(ke<2048){if((xe-=2)<0)break;ar.push(ke>>6|192,ke&63|128)}else if(ke<65536){if((xe-=3)<0)break;ar.push(ke>>12|224,ke>>6&63|128,ke&63|128)}else if(ke<1114112){if((xe-=4)<0)break;ar.push(ke>>18|240,ke>>12&63|128,ke>>6&63|128,ke&63|128)}else throw new Error("Invalid code point")}return ar}function ti(Ie){for(var xe=[],ke=0;ke>8,ir=ke%256,ar.push(ir),ar.push(vt);return ar}function Vr(Ie){return L.toByteArray(Tr(Ie))}function dt(Ie,xe,ke,vt){var ir;for(ir=0;ir=xe.length||ir>=Ie.length);++ir)xe[ir+ke]=Ie[ir];return ir}function Ge(Ie,xe){return Ie instanceof xe||Ie!=null&&Ie.constructor!=null&&Ie.constructor.name!=null&&Ie.constructor.name===xe.name}function Je(Ie){return Ie!==Ie}var je=function(){for(var Ie="0123456789abcdef",xe=new Array(256),ke=0;ke<16;++ke)for(var vt=ke*16,ir=0;ir<16;++ir)xe[vt+ir]=Ie[ke]+Ie[ir];return xe}();function tt(Ie){return typeof BigInt=="undefined"?xt:Ie}function xt(){throw new Error("BigInt not supported")}},4844:function(i){i.exports=a;function a(o,s,l,u){return o[0]=s[0]+l[0]*u,o[1]=s[1]+l[1]*u,o[2]=s[2]+l[2]*u,o[3]=s[3]+l[3]*u,o}},4905:function(i,a,o){var s=o(5874);i.exports=l;function l(u,c){var f=s(c),h=[];return h=h.concat(f(u)),h=h.concat(f(null)),h}},4935:function(i,a,o){"use strict";i.exports=k;var s=o(2762),l=o(8116),u=o(4359),c=o(1879).Q,f=window||process.global||{},h=f.__TEXT_CACHE||{};f.__TEXT_CACHE={};var d=3;function v(E,S,L,x){this.gl=E,this.shader=S,this.buffer=L,this.vao=x,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var _=v.prototype,b=[0,0];_.bind=function(E,S,L,x){this.vao.bind(),this.shader.bind();var C=this.shader.uniforms;C.model=E,C.view=S,C.projection=L,C.pixelScale=x,b[0]=this.gl.drawingBufferWidth,b[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=b},_.unbind=function(){this.vao.unbind()},_.update=function(E,S,L,x,C){var M=[];function g(j,re,oe,_e,Ee,Ce){var me=[oe.style,oe.weight,oe.variant,oe.family].join("_"),ie=h[me];ie||(ie=h[me]={});var Se=ie[re];Se||(Se=ie[re]=p(re,{triangles:!0,font:oe.family,fontStyle:oe.style,fontWeight:oe.weight,fontVariant:oe.variant,textAlign:"center",textBaseline:"middle",lineSpacing:Ee,styletags:Ce}));for(var Le=(_e||12)/12,Ae=Se.positions,Fe=Se.cells,Pe=0,ge=Fe.length;Pe=0;--ce){var Ze=Ae[Re[ce]];M.push(Le*Ze[0],-Le*Ze[1],j)}}for(var P=[0,0,0],T=[0,0,0],z=[0,0,0],O=[0,0,0],V=1.25,G={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},Z=0;Z<3;++Z){z[Z]=M.length/d|0,g(.5*(E[0][Z]+E[1][Z]),S[Z],L[Z],12,V,G),O[Z]=(M.length/d|0)-z[Z],P[Z]=M.length/d|0;for(var H=0;H0||S.length>0;){for(;E.length>0;){var g=E.pop();if(L[g]!==-k){L[g]=k;for(var P=x[g],T=0;T<3;++T){var z=M[3*g+T];z>=0&&L[z]===0&&(C[3*g+T]?S.push(z):(E.push(z),L[z]=k))}}}var O=S;S=E,E=O,S.length=0,k=-k}var V=h(x,L,_);return b?V.concat(p.boundary):V}},5033:function(i){"use strict";i.exports=a;function a(o,s,l){var u=s||0,c=l||1;return[[o[12]+o[0],o[13]+o[1],o[14]+o[2],o[15]+o[3]],[o[12]-o[0],o[13]-o[1],o[14]-o[2],o[15]-o[3]],[o[12]+o[4],o[13]+o[5],o[14]+o[6],o[15]+o[7]],[o[12]-o[4],o[13]-o[5],o[14]-o[6],o[15]-o[7]],[u*o[12]+o[8],u*o[13]+o[9],u*o[14]+o[10],u*o[15]+o[11]],[c*o[12]-o[8],c*o[13]-o[9],c*o[14]-o[10],c*o[15]-o[11]]]}},5085:function(i,a,o){i.exports=k;var s=o(3250)[3],l=o(4209),u=o(3352),c=o(2478);function f(){return!0}function h(E){return function(S,L){var x=E[S];return x?!!x.queryPoint(L,f):!1}}function d(E){for(var S={},L=0;L0&&S[x]===L[0])C=E[x-1];else return 1;for(var M=1;C;){var g=C.key,P=s(L,g[0],g[1]);if(g[0][0]0)M=-1,C=C.right;else return 0;else if(P>0)C=C.left;else if(P<0)M=1,C=C.right;else return 0}return M}}function _(E){return 1}function b(E){return function(L){return E(L[0],L[1])?0:1}}function p(E,S){return function(x){return E(x[0],x[1])?0:S(x)}}function k(E){for(var S=E.length,L=[],x=[],C=0,M=0;M0&&(h=1/Math.sqrt(h),o[0]=l*h,o[1]=u*h,o[2]=c*h,o[3]=f*h),o}},5202:function(i,a,o){"use strict";var s=o(1944),l=o(8210);i.exports=f,i.exports.positive=h,i.exports.negative=d;function u(v,_){var b=l(s(v,_),[_[_.length-1]]);return b[b.length-1]}function c(v,_,b,p){var k=p-_,E=-_/k;E<0?E=0:E>1&&(E=1);for(var S=1-E,L=v.length,x=new Array(L),C=0;C0||k>0&&x<0){var C=c(E,x,S,k);b.push(C),p.push(C.slice())}x<0?p.push(S.slice()):x>0?b.push(S.slice()):(b.push(S.slice()),p.push(S.slice())),k=x}return{positive:b,negative:p}}function h(v,_){for(var b=[],p=u(v[v.length-1],_),k=v[v.length-1],E=v[0],S=0;S0||p>0&&L<0)&&b.push(c(k,L,E,p)),L>=0&&b.push(E.slice()),p=L}return b}function d(v,_){for(var b=[],p=u(v[v.length-1],_),k=v[v.length-1],E=v[0],S=0;S0||p>0&&L<0)&&b.push(c(k,L,E,p)),L<=0&&b.push(E.slice()),p=L}return b}},5219:function(i){"use strict";i.exports=function(a){for(var o=a.length,s,l=0;l13)&&s!==32&&s!==133&&s!==160&&s!==5760&&s!==6158&&(s<8192||s>8205)&&s!==8232&&s!==8233&&s!==8239&&s!==8287&&s!==8288&&s!==12288&&s!==65279)return!1;return!0}},5250:function(i){"use strict";i.exports=o;var a=+(Math.pow(2,27)+1);function o(s,l,u){var c=s*l,f=a*s,h=f-s,d=f-h,v=s-d,_=a*l,b=_-l,p=_-b,k=l-p,E=c-d*p,S=E-v*p,L=S-d*k,x=v*k-L;return u?(u[0]=x,u[1]=c,u):[x,c]}},5298:function(i,a){"use strict";var o={"float64,2,1,0":function(){return function(v,_,b,p,k){var E=v[0],S=v[1],L=v[2],x=b[0],C=b[1],M=b[2];p|=0;var g=0,P=0,T=0,z=M,O=C-L*M,V=x-S*C;for(T=0;T0;){H<64?(x=H,H=0):(x=64,H-=64);for(var N=v[1]|0;N>0;){N<64?(C=N,N=0):(C=64,N-=64),p=G+H*g+N*P,S=Z+H*z+N*O;var j=0,re=0,oe=0,_e=T,Ee=g-M*T,Ce=P-x*g,me=V,ie=z-M*V,Se=O-x*z;for(oe=0;oe0;){O<64?(x=O,O=0):(x=64,O-=64);for(var V=v[0]|0;V>0;){V<64?(L=V,V=0):(L=64,V-=64),p=T+O*M+V*C,S=z+O*P+V*g;var G=0,Z=0,H=M,N=C-x*M,j=P,re=g-x*P;for(Z=0;Z0;){Z<64?(C=Z,Z=0):(C=64,Z-=64);for(var H=v[0]|0;H>0;){H<64?(L=H,H=0):(L=64,H-=64);for(var N=v[1]|0;N>0;){N<64?(x=N,N=0):(x=64,N-=64),p=V+Z*P+H*M+N*g,S=G+Z*O+H*T+N*z;var j=0,re=0,oe=0,_e=P,Ee=M-C*P,Ce=g-L*M,me=O,ie=T-C*O,Se=z-L*T;for(oe=0;oe=0}}(),u.removeTriangle=function(h,d,v){var _=this.stars;c(_[h],d,v),c(_[d],v,h),c(_[v],h,d)},u.addTriangle=function(h,d,v){var _=this.stars;_[h].push(d,v),_[d].push(v,h),_[v].push(h,d)},u.opposite=function(h,d){for(var v=this.stars[d],_=1,b=v.length;_0;){var p=v.pop();h[p]=!1;for(var k=f[p],_=0;_0){for(var me=0;me<24;++me)O.push(O[O.length-12]);H+=2,_e=!0}continue e}N[0][T]=Math.min(N[0][T],Ee[T],Ce[T]),N[1][T]=Math.max(N[1][T],Ee[T],Ce[T])}var ie,Se;Array.isArray(re[0])?(ie=re.length>P-1?re[P-1]:re.length>0?re[re.length-1]:[0,0,0,1],Se=re.length>P?re[P]:re.length>0?re[re.length-1]:[0,0,0,1]):ie=Se=re,ie.length===3&&(ie=[ie[0],ie[1],ie[2],1]),Se.length===3&&(Se=[Se[0],Se[1],Se[2],1]),!this.hasAlpha&&ie[3]<1&&(this.hasAlpha=!0);var Le;Array.isArray(oe)?Le=oe.length>P-1?oe[P-1]:oe.length>0?oe[oe.length-1]:[0,0,0,1]:Le=oe;var Ae=Z;if(Z+=E(Ee,Ce),_e){for(T=0;T<2;++T)O.push(Ee[0],Ee[1],Ee[2],Ce[0],Ce[1],Ce[2],Ae,Le,ie[0],ie[1],ie[2],ie[3]);H+=2,_e=!1}O.push(Ee[0],Ee[1],Ee[2],Ce[0],Ce[1],Ce[2],Ae,Le,ie[0],ie[1],ie[2],ie[3],Ee[0],Ee[1],Ee[2],Ce[0],Ce[1],Ce[2],Ae,-Le,ie[0],ie[1],ie[2],ie[3],Ce[0],Ce[1],Ce[2],Ee[0],Ee[1],Ee[2],Z,-Le,Se[0],Se[1],Se[2],Se[3],Ce[0],Ce[1],Ce[2],Ee[0],Ee[1],Ee[2],Z,Le,Se[0],Se[1],Se[2],Se[3]),H+=4}}if(this.buffer.update(O),V.push(Z),G.push(j[j.length-1].slice()),this.bounds=N,this.vertexCount=H,this.points=G,this.arcLength=V,"dashes"in g){var Fe=g.dashes,Pe=Fe.slice();for(Pe.unshift(0),P=1;Po[l][0]&&(l=u);return sl?[[l],[s]]:[[s]]}},5771:function(i,a,o){"use strict";var s=o(8507),l=o(3788),u=o(2419);i.exports=c;function c(f){f.sort(l);for(var h=f.length,d=0,v=0;v0){var p=f[d-1];if(s(_,p)===0&&u(p)!==b){d-=1;continue}}f[d++]=_}}return f.length=d,f}},5838:function(i,a,o){"use strict";i.exports=l;var s=o(7842);function l(u){for(var c=new Array(u.length),f=0;f0&&(f=1/Math.sqrt(f),o[0]=s[0]*f,o[1]=s[1]*f,o[2]=s[2]*f),o}},3545:function(i,a,o){"use strict";i.exports=f;var s=o(8105),l=s("lov&&b[C+d]>L;--x,C-=k){for(var M=C,g=C+k,P=0;P>>1,L=2*h,x=S,C=b[L*S+d];k=z?(x=T,C=z):P>=V?(x=g,C=P):(x=O,C=V):z>=V?(x=T,C=z):V>=P?(x=g,C=P):(x=O,C=V);for(var j=L*(E-1),N=L*x,G=0;Gthis.buffer.length){l.free(this.buffer);for(var E=this.buffer=l.mallocUint8(c(k*p*4)),S=0;Sx|0},vertex:function(E,S,L,x,C,M,g,P,T,z,O,V,G){var Z=(g<<0)+(P<<1)+(T<<2)+(z<<3)|0;if(!(Z===0||Z===15))switch(Z){case 0:O.push([E-.5,S-.5]);break;case 1:O.push([E-.25-.25*(x+L-2*G)/(L-x),S-.25-.25*(C+L-2*G)/(L-C)]);break;case 2:O.push([E-.75-.25*(-x-L+2*G)/(x-L),S-.25-.25*(M+x-2*G)/(x-M)]);break;case 3:O.push([E-.5,S-.5-.5*(C+L+M+x-4*G)/(L-C+x-M)]);break;case 4:O.push([E-.25-.25*(M+C-2*G)/(C-M),S-.75-.25*(-C-L+2*G)/(C-L)]);break;case 5:O.push([E-.5-.5*(x+L+M+C-4*G)/(L-x+C-M),S-.5]);break;case 6:O.push([E-.5-.25*(-x-L+M+C)/(x-L+C-M),S-.5-.25*(-C-L+M+x)/(C-L+x-M)]);break;case 7:O.push([E-.75-.25*(M+C-2*G)/(C-M),S-.75-.25*(M+x-2*G)/(x-M)]);break;case 8:O.push([E-.75-.25*(-M-C+2*G)/(M-C),S-.75-.25*(-M-x+2*G)/(M-x)]);break;case 9:O.push([E-.5-.25*(x+L+-M-C)/(L-x+M-C),S-.5-.25*(C+L+-M-x)/(L-C+M-x)]);break;case 10:O.push([E-.5-.5*(-x-L+-M-C+4*G)/(x-L+M-C),S-.5]);break;case 11:O.push([E-.25-.25*(-M-C+2*G)/(M-C),S-.75-.25*(C+L-2*G)/(L-C)]);break;case 12:O.push([E-.5,S-.5-.5*(-C-L+-M-x+4*G)/(C-L+M-x)]);break;case 13:O.push([E-.75-.25*(x+L-2*G)/(L-x),S-.25-.25*(-M-x+2*G)/(M-x)]);break;case 14:O.push([E-.25-.25*(-x-L+2*G)/(x-L),S-.25-.25*(-C-L+2*G)/(C-L)]);break;case 15:O.push([E-.5,S-.5]);break}},cell:function(E,S,L,x,C,M,g,P,T){C?P.push([E,S]):P.push([S,E])}});return function(k,E){var S=[],L=[];return p(k,S,L,E),{positions:S,cells:L}}}};function c(v,_){var b=v.length+"d",p=u[b];if(p)return p(s,v,_)}function f(v,_){for(var b=l(v,_),p=b.length,k=new Array(p),E=new Array(p),S=0;S>1,b=-7,p=l?c-1:0,k=l?-1:1,E=o[s+p];for(p+=k,f=E&(1<<-b)-1,E>>=-b,b+=d;b>0;f=f*256+o[s+p],p+=k,b-=8);for(h=f&(1<<-b)-1,f>>=-b,b+=u;b>0;h=h*256+o[s+p],p+=k,b-=8);if(f===0)f=1-_;else{if(f===v)return h?NaN:(E?-1:1)*(1/0);h=h+Math.pow(2,u),f=f-_}return(E?-1:1)*h*Math.pow(2,f-u)},a.write=function(o,s,l,u,c,f){var h,d,v,_=f*8-c-1,b=(1<<_)-1,p=b>>1,k=c===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=u?0:f-1,S=u?1:-1,L=s<0||s===0&&1/s<0?1:0;for(s=Math.abs(s),isNaN(s)||s===1/0?(d=isNaN(s)?1:0,h=b):(h=Math.floor(Math.log(s)/Math.LN2),s*(v=Math.pow(2,-h))<1&&(h--,v*=2),h+p>=1?s+=k/v:s+=k*Math.pow(2,1-p),s*v>=2&&(h++,v/=2),h+p>=b?(d=0,h=b):h+p>=1?(d=(s*v-1)*Math.pow(2,c),h=h+p):(d=s*Math.pow(2,p-1)*Math.pow(2,c),h=0));c>=8;o[l+E]=d&255,E+=S,d/=256,c-=8);for(h=h<0;o[l+E]=h&255,E+=S,h/=256,_-=8);o[l+E-S]|=L*128}},3788:function(i,a,o){"use strict";var s=o(8507),l=o(2419);i.exports=u;function u(c,f){return s(c,f)||l(c)-l(f)}},3837:function(i,a,o){"use strict";i.exports=O;var s=o(4935),l=o(501),u=o(5304),c=o(6429),f=o(6444),h=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),d=ArrayBuffer,v=DataView;function _(V){return d.isView(V)&&!(V instanceof v)}function b(V){return Array.isArray(V)||_(V)}function p(V,G){return V[0]=G[0],V[1]=G[1],V[2]=G[2],V}function k(V){this.gl=V,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=u(V)}var E=k.prototype;E.update=function(V){V=V||{};function G(Ae,Fe,Pe){if(Pe in V){var ge=V[Pe],Re=this[Pe],ce;(Ae?b(ge)&&b(ge[0]):b(ge))?this[Pe]=ce=[Fe(ge[0]),Fe(ge[1]),Fe(ge[2])]:this[Pe]=ce=[Fe(ge),Fe(ge),Fe(ge)];for(var Ze=0;Ze<3;++Ze)if(ce[Ze]!==Re[Ze])return!0}return!1}var Z=G.bind(this,!1,Number),j=G.bind(this,!1,Boolean),N=G.bind(this,!1,String),H=G.bind(this,!0,function(Ae){if(b(Ae)){if(Ae.length===3)return[+Ae[0],+Ae[1],+Ae[2],1];if(Ae.length===4)return[+Ae[0],+Ae[1],+Ae[2],+Ae[3]]}return[0,0,0,1]}),te,oe=!1,_e=!1;if("bounds"in V)for(var Ee=V.bounds,Ce=0;Ce<2;++Ce)for(var me=0;me<3;++me)Ee[Ce][me]!==this.bounds[Ce][me]&&(_e=!0),this.bounds[Ce][me]=Ee[Ce][me];if("ticks"in V){te=V.ticks,oe=!0,this.autoTicks=!1;for(var Ce=0;Ce<3;++Ce)this.tickSpacing[Ce]=0}else Z("tickSpacing")&&(this.autoTicks=!0,_e=!0);if(this._firstInit&&("ticks"in V||"tickSpacing"in V||(this.autoTicks=!0),_e=!0,oe=!0,this._firstInit=!1),_e&&this.autoTicks&&(te=f.create(this.bounds,this.tickSpacing),oe=!0),oe){for(var Ce=0;Ce<3;++Ce)te[Ce].sort(function(Fe,Pe){return Fe.x-Pe.x});f.equal(te,this.ticks)?oe=!1:this.ticks=te}j("tickEnable"),N("tickFont")&&(oe=!0),N("tickFontStyle")&&(oe=!0),N("tickFontWeight")&&(oe=!0),N("tickFontVariant")&&(oe=!0),Z("tickSize"),Z("tickAngle"),Z("tickPad"),H("tickColor");var ie=N("labels");N("labelFont")&&(ie=!0),N("labelFontStyle")&&(ie=!0),N("labelFontWeight")&&(ie=!0),N("labelFontVariant")&&(ie=!0),j("labelEnable"),Z("labelSize"),Z("labelPad"),H("labelColor"),j("lineEnable"),j("lineMirror"),Z("lineWidth"),H("lineColor"),j("lineTickEnable"),j("lineTickMirror"),Z("lineTickLength"),Z("lineTickWidth"),H("lineTickColor"),j("gridEnable"),Z("gridWidth"),H("gridColor"),j("zeroEnable"),H("zeroLineColor"),Z("zeroLineWidth"),j("backgroundEnable"),H("backgroundColor");var Se=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],Le=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(ie||oe)&&this._text.update(this.bounds,this.labels,Se,this.ticks,Le):this._text=s(this.gl,this.bounds,this.labels,Se,this.ticks,Le),this._lines&&oe&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=l(this.gl,this.bounds,this.ticks))};function S(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}var L=[new S,new S,new S];function x(V,G,Z,j,N){for(var H=V.primalOffset,te=V.primalMinor,oe=V.mirrorOffset,_e=V.mirrorMinor,Ee=j[G],Ce=0;Ce<3;++Ce)if(G!==Ce){var me=H,ie=oe,Se=te,Le=_e;Ee&1<0?(Se[Ce]=-1,Le[Ce]=0):(Se[Ce]=0,Le[Ce]=1)}}var C=[0,0,0],M={model:h,view:h,projection:h,_ortho:!1};E.isOpaque=function(){return!0},E.isTransparent=function(){return!1},E.drawTransparent=function(V){};var g=0,P=[0,0,0],T=[0,0,0],z=[0,0,0];E.draw=function(V){V=V||M;for(var Pe=this.gl,G=V.model||h,Z=V.view||h,j=V.projection||h,N=this.bounds,H=V._ortho||!1,te=c(G,Z,j,N,H),oe=te.cubeEdges,_e=te.axis,Ee=Z[12],Ce=Z[13],me=Z[14],ie=Z[15],Se=H?2:1,Le=Se*this.pixelRatio*(j[3]*Ee+j[7]*Ce+j[11]*me+j[15]*ie)/Pe.drawingBufferHeight,Ae=0;Ae<3;++Ae)this.lastCubeProps.cubeEdges[Ae]=oe[Ae],this.lastCubeProps.axis[Ae]=_e[Ae];for(var Fe=L,Ae=0;Ae<3;++Ae)x(L[Ae],Ae,this.bounds,oe,_e);for(var Pe=this.gl,ge=C,Ae=0;Ae<3;++Ae)this.backgroundEnable[Ae]?ge[Ae]=_e[Ae]:ge[Ae]=0;this._background.draw(G,Z,j,N,ge,this.backgroundColor),this._lines.bind(G,Z,j,this);for(var Ae=0;Ae<3;++Ae){var Re=[0,0,0];_e[Ae]>0?Re[Ae]=N[1][Ae]:Re[Ae]=N[0][Ae];for(var ce=0;ce<2;++ce){var Ze=(Ae+1+ce)%3,ut=(Ae+1+(ce^1))%3;this.gridEnable[Ze]&&this._lines.drawGrid(Ze,ut,this.bounds,Re,this.gridColor[Ze],this.gridWidth[Ze]*this.pixelRatio)}for(var ce=0;ce<2;++ce){var Ze=(Ae+1+ce)%3,ut=(Ae+1+(ce^1))%3;this.zeroEnable[ut]&&Math.min(N[0][ut],N[1][ut])<=0&&Math.max(N[0][ut],N[1][ut])>=0&&this._lines.drawZero(Ze,ut,this.bounds,Re,this.zeroLineColor[ut],this.zeroLineWidth[ut]*this.pixelRatio)}}for(var Ae=0;Ae<3;++Ae){this.lineEnable[Ae]&&this._lines.drawAxisLine(Ae,this.bounds,Fe[Ae].primalOffset,this.lineColor[Ae],this.lineWidth[Ae]*this.pixelRatio),this.lineMirror[Ae]&&this._lines.drawAxisLine(Ae,this.bounds,Fe[Ae].mirrorOffset,this.lineColor[Ae],this.lineWidth[Ae]*this.pixelRatio);for(var pt=p(P,Fe[Ae].primalMinor),Zt=p(T,Fe[Ae].mirrorMinor),st=this.lineTickLength,ce=0;ce<3;++ce){var lt=Le/G[5*ce];pt[ce]*=st[ce]*lt,Zt[ce]*=st[ce]*lt}this.lineTickEnable[Ae]&&this._lines.drawAxisTicks(Ae,Fe[Ae].primalOffset,pt,this.lineTickColor[Ae],this.lineTickWidth[Ae]*this.pixelRatio),this.lineTickMirror[Ae]&&this._lines.drawAxisTicks(Ae,Fe[Ae].mirrorOffset,Zt,this.lineTickColor[Ae],this.lineTickWidth[Ae]*this.pixelRatio)}this._lines.unbind(),this._text.bind(G,Z,j,this.pixelRatio);var Gt,Nt=.5,Jt,sr;function wr(_t){sr=[0,0,0],sr[_t]=1}function cr(_t,It,mt){var er=(_t+1)%3,lr=(_t+2)%3,Tr=It[er],Lr=It[lr],ti=mt[er],Br=mt[lr];if(Tr>0&&Br>0){wr(er);return}else if(Tr>0&&Br<0){wr(er);return}else if(Tr<0&&Br>0){wr(er);return}else if(Tr<0&&Br<0){wr(er);return}else if(Lr>0&&ti>0){wr(lr);return}else if(Lr>0&&ti<0){wr(lr);return}else if(Lr<0&&ti>0){wr(lr);return}else if(Lr<0&&ti<0){wr(lr);return}}for(var Ae=0;Ae<3;++Ae){for(var $e=Fe[Ae].primalMinor,St=Fe[Ae].mirrorMinor,Qt=p(z,Fe[Ae].primalOffset),ce=0;ce<3;++ce)this.lineTickEnable[Ae]&&(Qt[ce]+=Le*$e[ce]*Math.max(this.lineTickLength[ce],0)/G[5*ce]);var Vt=[0,0,0];if(Vt[Ae]=1,this.tickEnable[Ae]){this.tickAngle[Ae]===-3600?(this.tickAngle[Ae]=0,this.tickAlign[Ae]="auto"):this.tickAlign[Ae]=-1,Jt=1,Gt=[this.tickAlign[Ae],Nt,Jt],Gt[0]==="auto"?Gt[0]=g:Gt[0]=parseInt(""+Gt[0]),sr=[0,0,0],cr(Ae,$e,St);for(var ce=0;ce<3;++ce)Qt[ce]+=Le*$e[ce]*this.tickPad[ce]/G[5*ce];this._text.drawTicks(Ae,this.tickSize[Ae],this.tickAngle[Ae],Qt,this.tickColor[Ae],Vt,sr,Gt)}if(this.labelEnable[Ae]){Jt=0,sr=[0,0,0],this.labels[Ae].length>4&&(wr(Ae),Jt=1),Gt=[this.labelAlign[Ae],Nt,Jt],Gt[0]==="auto"?Gt[0]=g:Gt[0]=parseInt(""+Gt[0]);for(var ce=0;ce<3;++ce)Qt[ce]+=Le*$e[ce]*this.labelPad[ce]/G[5*ce];Qt[Ae]+=.5*(N[0][Ae]+N[1][Ae]),this._text.drawLabel(Ae,this.labelSize[Ae],this.labelAngle[Ae],Qt,this.labelColor[Ae],[0,0,0],sr,Gt)}}this._text.unbind()},E.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function O(V,G){var Z=new k(V);return Z.update(G),Z}},3840:function(i){"use strict";i.exports=L;var a=0,o=1;function s(x,C,M,g,P,T){this._color=x,this.key=C,this.value=M,this.left=g,this.right=P,this._count=T}function l(x){return new s(x._color,x.key,x.value,x.left,x.right,x._count)}function u(x,C){return new s(x,C.key,C.value,C.left,C.right,C._count)}function c(x){x._count=1+(x.left?x.left._count:0)+(x.right?x.right._count:0)}function f(x,C){this._compare=x,this.root=C}var h=f.prototype;Object.defineProperty(h,"keys",{get:function(){var x=[];return this.forEach(function(C,M){x.push(C)}),x}}),Object.defineProperty(h,"values",{get:function(){var x=[];return this.forEach(function(C,M){x.push(M)}),x}}),Object.defineProperty(h,"length",{get:function(){return this.root?this.root._count:0}}),h.insert=function(x,C){for(var M=this._compare,g=this.root,P=[],T=[];g;){var z=M(x,g.key);P.push(g),T.push(z),z<=0?g=g.left:g=g.right}P.push(new s(a,x,C,null,null,1));for(var O=P.length-2;O>=0;--O){var g=P[O];T[O]<=0?P[O]=new s(g._color,g.key,g.value,P[O+1],g.right,g._count+1):P[O]=new s(g._color,g.key,g.value,g.left,P[O+1],g._count+1)}for(var O=P.length-1;O>1;--O){var V=P[O-1],g=P[O];if(V._color===o||g._color===o)break;var G=P[O-2];if(G.left===V)if(V.left===g){var Z=G.right;if(Z&&Z._color===a)V._color=o,G.right=u(o,Z),G._color=a,O-=1;else{if(G._color=a,G.left=V.right,V._color=o,V.right=G,P[O-2]=V,P[O-1]=g,c(G),c(V),O>=3){var j=P[O-3];j.left===G?j.left=V:j.right=V}break}}else{var Z=G.right;if(Z&&Z._color===a)V._color=o,G.right=u(o,Z),G._color=a,O-=1;else{if(V.right=g.left,G._color=a,G.left=g.right,g._color=o,g.left=V,g.right=G,P[O-2]=g,P[O-1]=V,c(G),c(V),c(g),O>=3){var j=P[O-3];j.left===G?j.left=g:j.right=g}break}}else if(V.right===g){var Z=G.left;if(Z&&Z._color===a)V._color=o,G.left=u(o,Z),G._color=a,O-=1;else{if(G._color=a,G.right=V.left,V._color=o,V.left=G,P[O-2]=V,P[O-1]=g,c(G),c(V),O>=3){var j=P[O-3];j.right===G?j.right=V:j.left=V}break}}else{var Z=G.left;if(Z&&Z._color===a)V._color=o,G.left=u(o,Z),G._color=a,O-=1;else{if(V.left=g.right,G._color=a,G.right=g.left,g._color=o,g.right=V,g.left=G,P[O-2]=g,P[O-1]=V,c(G),c(V),c(g),O>=3){var j=P[O-3];j.right===G?j.right=g:j.left=g}break}}}return P[0]._color=o,new f(M,P[0])};function d(x,C){if(C.left){var M=d(x,C.left);if(M)return M}var M=x(C.key,C.value);if(M)return M;if(C.right)return d(x,C.right)}function v(x,C,M,g){var P=C(x,g.key);if(P<=0){if(g.left){var T=v(x,C,M,g.left);if(T)return T}var T=M(g.key,g.value);if(T)return T}if(g.right)return v(x,C,M,g.right)}function _(x,C,M,g,P){var T=M(x,P.key),z=M(C,P.key),O;if(T<=0&&(P.left&&(O=_(x,C,M,g,P.left),O)||z>0&&(O=g(P.key,P.value),O)))return O;if(z>0&&P.right)return _(x,C,M,g,P.right)}h.forEach=function(C,M,g){if(this.root)switch(arguments.length){case 1:return d(C,this.root);case 2:return v(M,this._compare,C,this.root);case 3:return this._compare(M,g)>=0?void 0:_(M,g,this._compare,C,this.root)}},Object.defineProperty(h,"begin",{get:function(){for(var x=[],C=this.root;C;)x.push(C),C=C.left;return new b(this,x)}}),Object.defineProperty(h,"end",{get:function(){for(var x=[],C=this.root;C;)x.push(C),C=C.right;return new b(this,x)}}),h.at=function(x){if(x<0)return new b(this,[]);for(var C=this.root,M=[];;){if(M.push(C),C.left){if(x=C.right._count)break;C=C.right}else break}return new b(this,[])},h.ge=function(x){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(x,M.key);g.push(M),T<=0&&(P=g.length),T<=0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.gt=function(x){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(x,M.key);g.push(M),T<0&&(P=g.length),T<0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.lt=function(x){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(x,M.key);g.push(M),T>0&&(P=g.length),T<=0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.le=function(x){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(x,M.key);g.push(M),T>=0&&(P=g.length),T<0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.find=function(x){for(var C=this._compare,M=this.root,g=[];M;){var P=C(x,M.key);if(g.push(M),P===0)return new b(this,g);P<=0?M=M.left:M=M.right}return new b(this,[])},h.remove=function(x){var C=this.find(x);return C?C.remove():this},h.get=function(x){for(var C=this._compare,M=this.root;M;){var g=C(x,M.key);if(g===0)return M.value;g<=0?M=M.left:M=M.right}};function b(x,C){this.tree=x,this._stack=C}var p=b.prototype;Object.defineProperty(p,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(p,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),p.clone=function(){return new b(this.tree,this._stack.slice())};function k(x,C){x.key=C.key,x.value=C.value,x.left=C.left,x.right=C.right,x._color=C._color,x._count=C._count}function E(x){for(var C,M,g,P,T=x.length-1;T>=0;--T){if(C=x[T],T===0){C._color=o;return}if(M=x[T-1],M.left===C){if(g=M.right,g.right&&g.right._color===a){if(g=M.right=l(g),P=g.right=l(g.right),M.right=g.left,g.left=M,g.right=P,g._color=M._color,C._color=o,M._color=o,P._color=o,c(M),c(g),T>1){var z=x[T-2];z.left===M?z.left=g:z.right=g}x[T-1]=g;return}else if(g.left&&g.left._color===a){if(g=M.right=l(g),P=g.left=l(g.left),M.right=P.left,g.left=P.right,P.left=M,P.right=g,P._color=M._color,M._color=o,g._color=o,C._color=o,c(M),c(g),c(P),T>1){var z=x[T-2];z.left===M?z.left=P:z.right=P}x[T-1]=P;return}if(g._color===o)if(M._color===a){M._color=o,M.right=u(a,g);return}else{M.right=u(a,g);continue}else{if(g=l(g),M.right=g.left,g.left=M,g._color=M._color,M._color=a,c(M),c(g),T>1){var z=x[T-2];z.left===M?z.left=g:z.right=g}x[T-1]=g,x[T]=M,T+11){var z=x[T-2];z.right===M?z.right=g:z.left=g}x[T-1]=g;return}else if(g.right&&g.right._color===a){if(g=M.left=l(g),P=g.right=l(g.right),M.left=P.right,g.right=P.left,P.right=M,P.left=g,P._color=M._color,M._color=o,g._color=o,C._color=o,c(M),c(g),c(P),T>1){var z=x[T-2];z.right===M?z.right=P:z.left=P}x[T-1]=P;return}if(g._color===o)if(M._color===a){M._color=o,M.left=u(a,g);return}else{M.left=u(a,g);continue}else{if(g=l(g),M.left=g.right,g.right=M,g._color=M._color,M._color=a,c(M),c(g),T>1){var z=x[T-2];z.right===M?z.right=g:z.left=g}x[T-1]=g,x[T]=M,T+1=0;--g){var M=x[g];M.left===x[g+1]?C[g]=new s(M._color,M.key,M.value,C[g+1],M.right,M._count):C[g]=new s(M._color,M.key,M.value,M.left,C[g+1],M._count)}if(M=C[C.length-1],M.left&&M.right){var P=C.length;for(M=M.left;M.right;)C.push(M),M=M.right;var T=C[P-1];C.push(new s(M._color,T.key,T.value,M.left,M.right,M._count)),C[P-1].key=M.key,C[P-1].value=M.value;for(var g=C.length-2;g>=P;--g)M=C[g],C[g]=new s(M._color,M.key,M.value,M.left,C[g+1],M._count);C[P-1].left=C[P]}if(M=C[C.length-1],M._color===a){var z=C[C.length-2];z.left===M?z.left=null:z.right===M&&(z.right=null),C.pop();for(var g=0;g0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(p,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(p,"index",{get:function(){var x=0,C=this._stack;if(C.length===0){var M=this.tree.root;return M?M._count:0}else C[C.length-1].left&&(x=C[C.length-1].left._count);for(var g=C.length-2;g>=0;--g)C[g+1]===C[g].right&&(++x,C[g].left&&(x+=C[g].left._count));return x},enumerable:!0}),p.next=function(){var x=this._stack;if(x.length!==0){var C=x[x.length-1];if(C.right)for(C=C.right;C;)x.push(C),C=C.left;else for(x.pop();x.length>0&&x[x.length-1].right===C;)C=x[x.length-1],x.pop()}},Object.defineProperty(p,"hasNext",{get:function(){var x=this._stack;if(x.length===0)return!1;if(x[x.length-1].right)return!0;for(var C=x.length-1;C>0;--C)if(x[C-1].left===x[C])return!0;return!1}}),p.update=function(x){var C=this._stack;if(C.length===0)throw new Error("Can't update empty node!");var M=new Array(C.length),g=C[C.length-1];M[M.length-1]=new s(g._color,g.key,x,g.left,g.right,g._count);for(var P=C.length-2;P>=0;--P)g=C[P],g.left===C[P+1]?M[P]=new s(g._color,g.key,g.value,M[P+1],g.right,g._count):M[P]=new s(g._color,g.key,g.value,g.left,M[P+1],g._count);return new f(this.tree._compare,M[0])},p.prev=function(){var x=this._stack;if(x.length!==0){var C=x[x.length-1];if(C.left)for(C=C.left;C;)x.push(C),C=C.right;else for(x.pop();x.length>0&&x[x.length-1].left===C;)C=x[x.length-1],x.pop()}},Object.defineProperty(p,"hasPrev",{get:function(){var x=this._stack;if(x.length===0)return!1;if(x[x.length-1].left)return!0;for(var C=x.length-1;C>0;--C)if(x[C-1].right===x[C])return!0;return!1}});function S(x,C){return xC?1:0}function L(x){return new f(x||S,null)}},3865:function(i,a,o){"use strict";var s=o(869);i.exports=l;function l(u,c){return s(u[0].mul(c[1]).add(c[0].mul(u[1])),u[1].mul(c[1]))}},3952:function(i,a,o){"use strict";i.exports=u;var s=o(3250);function l(c,f){for(var h=new Array(f+1),d=0;d20?52:h+32}},4040:function(i){i.exports=a;function a(o,s,l,u,c,f,h){var d=1/(s-l),v=1/(u-c),_=1/(f-h);return o[0]=-2*d,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=-2*v,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=2*_,o[11]=0,o[12]=(s+l)*d,o[13]=(c+u)*v,o[14]=(h+f)*_,o[15]=1,o}},4041:function(i){i.exports=a;function a(o,s,l){var u=s[0],c=s[1],f=s[2],h=l[0],d=l[1],v=l[2],_=l[3],b=_*u+d*f-v*c,p=_*c+v*u-h*f,k=_*f+h*c-d*u,E=-h*u-d*c-v*f;return o[0]=b*_+E*-h+p*-v-k*-d,o[1]=p*_+E*-d+k*-h-b*-v,o[2]=k*_+E*-v+b*-d-p*-h,o[3]=s[3],o}},4081:function(i){"use strict";i.exports=a;function a(o,s,l,u,c,f,h,d,v,_){var b=s+f+_;if(p>0){var p=Math.sqrt(b+1);o[0]=.5*(h-v)/p,o[1]=.5*(d-u)/p,o[2]=.5*(l-f)/p,o[3]=.5*p}else{var k=Math.max(s,f,_),p=Math.sqrt(2*k-b+1);s>=k?(o[0]=.5*p,o[1]=.5*(c+l)/p,o[2]=.5*(d+u)/p,o[3]=.5*(h-v)/p):f>=k?(o[0]=.5*(l+c)/p,o[1]=.5*p,o[2]=.5*(v+h)/p,o[3]=.5*(d-u)/p):(o[0]=.5*(u+d)/p,o[1]=.5*(h+v)/p,o[2]=.5*p,o[3]=.5*(l-c)/p)}return o}},4100:function(i,a,o){"use strict";var s=o(4437),l=o(3837),u=o(5445),c=o(4449),f=o(3589),h=o(2260),d=o(7169),v=o(351),_=o(4772),b=o(4040),p=o(799),k=o(9216)({tablet:!0,featureDetect:!0});i.exports={createScene:C,createCamera:s};function E(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function S(g,P){var T=null;try{T=g.getContext("webgl",P),T||(T=g.getContext("experimental-webgl",P))}catch(z){return null}return T}function L(g){var P=Math.round(Math.log(Math.abs(g))/Math.log(10));if(P<0){var T=Math.round(Math.pow(10,-P));return Math.ceil(g*T)/T}else if(P>0){var T=Math.round(Math.pow(10,P));return Math.ceil(g/T)*T}return Math.ceil(g)}function x(g){return typeof g=="boolean"?g:!0}function C(g){g=g||{},g.camera=g.camera||{};var P=g.canvas;if(!P)if(P=document.createElement("canvas"),g.container){var T=g.container;T.appendChild(P)}else document.body.appendChild(P);var z=g.gl;if(z||(g.glOptions&&(k=!!g.glOptions.preserveDrawingBuffer),z=S(P,g.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:k})),!z)throw new Error("webgl not supported");var O=g.bounds||[[-10,-10,-10],[10,10,10]],V=new E,G=h(z,z.drawingBufferWidth,z.drawingBufferHeight,{preferFloat:!k}),Z=p(z),j=g.cameraObject&&g.cameraObject._ortho===!0||g.camera.projection&&g.camera.projection.type==="orthographic"||!1,N={eye:g.camera.eye||[2,0,0],center:g.camera.center||[0,0,0],up:g.camera.up||[0,1,0],zoomMin:g.camera.zoomMax||.1,zoomMax:g.camera.zoomMin||100,mode:g.camera.mode||"turntable",_ortho:j},H=g.axes||{},te=l(z,H);te.enable=!H.disable;var oe=g.spikes||{},_e=c(z,oe),Ee=[],Ce=[],me=[],ie=[],Se=!0,Pe=!0,Le=new Array(16),Ae=new Array(16),Fe={view:null,projection:Le,model:Ae,_ortho:!1},Pe=!0,ge=[z.drawingBufferWidth,z.drawingBufferHeight],Re=g.cameraObject||s(P,N),ce={gl:z,contextLost:!1,pixelRatio:g.pixelRatio||1,canvas:P,selection:V,camera:Re,axes:te,axesPixels:null,spikes:_e,bounds:O,objects:Ee,shape:ge,aspect:g.aspectRatio||[1,1,1],pickRadius:g.pickRadius||10,zNear:g.zNear||.01,zFar:g.zFar||1e3,fovy:g.fovy||Math.PI/4,clearColor:g.clearColor||[0,0,0,0],autoResize:x(g.autoResize),autoBounds:x(g.autoBounds),autoScale:!!g.autoScale,autoCenter:x(g.autoCenter),clipToBounds:x(g.clipToBounds),snapToData:!!g.snapToData,onselect:g.onselect||null,onrender:g.onrender||null,onclick:g.onclick||null,cameraParams:Fe,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(sr){this.aspect[0]=sr.x,this.aspect[1]=sr.y,this.aspect[2]=sr.z,Pe=!0},setBounds:function(sr,wr){this.bounds[0][sr]=wr.min,this.bounds[1][sr]=wr.max},setClearColor:function(sr){this.clearColor=sr},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},Ze=[z.drawingBufferWidth/ce.pixelRatio|0,z.drawingBufferHeight/ce.pixelRatio|0];function ut(){if(!ce._stopped&&ce.autoResize){var sr=P.parentNode,wr=1,cr=1;sr&&sr!==document.body?(wr=sr.clientWidth,cr=sr.clientHeight):(wr=window.innerWidth,cr=window.innerHeight);var $e=Math.ceil(wr*ce.pixelRatio)|0,St=Math.ceil(cr*ce.pixelRatio)|0;if($e!==P.width||St!==P.height){P.width=$e,P.height=St;var Qt=P.style;Qt.position=Qt.position||"absolute",Qt.left="0px",Qt.top="0px",Qt.width=wr+"px",Qt.height=cr+"px",Se=!0}}}ce.autoResize&&ut(),window.addEventListener("resize",ut);function pt(){for(var sr=Ee.length,wr=ie.length,cr=0;cr0&&me[wr-1]===0;)me.pop(),ie.pop().dispose()}ce.update=function(sr){ce._stopped||(sr=sr||{},Se=!0,Pe=!0)},ce.add=function(sr){ce._stopped||(sr.axes=te,Ee.push(sr),Ce.push(-1),Se=!0,Pe=!0,pt())},ce.remove=function(sr){if(!ce._stopped){var wr=Ee.indexOf(sr);wr<0||(Ee.splice(wr,1),Ce.pop(),Se=!0,Pe=!0,pt())}},ce.dispose=function(){if(!ce._stopped&&(ce._stopped=!0,window.removeEventListener("resize",ut),P.removeEventListener("webglcontextlost",Zt),ce.mouseListener.enabled=!1,!ce.contextLost)){te.dispose(),_e.dispose();for(var sr=0;srV.distance)continue;for(var mt=0;mt_;){var M=p[C-2],g=p[C-1];if(Mp[b+1]:!0}function d(_,b,p,k){_*=2;var E=k[_];return E>1,x=L-k,C=L+k,M=E,g=x,P=L,T=C,z=S,O=_+1,V=b-1,G=0;h(M,g,p)&&(G=M,M=g,g=G),h(T,z,p)&&(G=T,T=z,z=G),h(M,P,p)&&(G=M,M=P,P=G),h(g,P,p)&&(G=g,g=P,P=G),h(M,T,p)&&(G=M,M=T,T=G),h(P,T,p)&&(G=P,P=T,T=G),h(g,z,p)&&(G=g,g=z,z=G),h(g,P,p)&&(G=g,g=P,P=G),h(T,z,p)&&(G=T,T=z,z=G);for(var Z=p[2*g],j=p[2*g+1],N=p[2*T],H=p[2*T+1],te=2*M,oe=2*P,_e=2*z,Ee=2*E,Ce=2*L,me=2*S,ie=0;ie<2;++ie){var Se=p[te+ie],Le=p[oe+ie],Ae=p[_e+ie];p[Ee+ie]=Se,p[Ce+ie]=Le,p[me+ie]=Ae}u(x,_,p),u(C,b,p);for(var Fe=O;Fe<=V;++Fe)if(d(Fe,Z,j,p))Fe!==O&&l(Fe,O,p),++O;else if(!d(Fe,N,H,p))for(;;)if(d(V,N,H,p)){d(V,Z,j,p)?(c(Fe,O,V,p),++O,--V):(l(Fe,V,p),--V);break}else{if(--V0)if(E[0]!==L[1][0])S=k,k=k.right;else{var g=v(k.right,E);if(g)return g;k=k.left}else{if(E[0]!==L[1][0])return k;var g=v(k.right,E);if(g)return g;k=k.left}}return S}h.castUp=function(k){var E=s.le(this.coordinates,k[0]);if(E<0)return-1;var S=this.slabs[E],L=v(this.slabs[E],k),x=-1;if(L&&(x=L.value),this.coordinates[E]===k[0]){var C=null;if(L&&(C=L.key),E>0){var M=v(this.slabs[E-1],k);M&&(C?c(M.key,C)>0&&(C=M.key,x=M.value):(x=M.value,C=M.key))}var g=this.horizontal[E];if(g.length>0){var P=s.ge(g,k[1],d);if(P=g.length)return x;T=g[P]}}if(T.start)if(C){var z=u(C[0],C[1],[k[0],T.y]);C[0][0]>C[1][0]&&(z=-z),z>0&&(x=T.index)}else x=T.index;else T.y!==k[1]&&(x=T.index)}}}return x};function _(k,E,S,L){this.y=k,this.index=E,this.start=S,this.closed=L}function b(k,E,S,L){this.x=k,this.segment=E,this.create=S,this.index=L}function p(k){for(var E=k.length,S=2*E,L=new Array(S),x=0;xMath.abs(g))p.rotate(z,0,0,-M*P*Math.PI*x.rotateSpeed/window.innerWidth);else if(!x._ortho){var O=-x.zoomSpeed*T*g/window.innerHeight*(z-p.lastT())/20;p.pan(z,0,0,E*(Math.exp(O)-1))}}},!0)},x.enableMouseListeners(),x}},4449:function(i,a,o){"use strict";var s=o(2762),l=o(8116),u=o(1493);i.exports=b;var c=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function f(p,k,E,S){this.gl=p,this.buffer=k,this.vao=E,this.shader=S,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var h=f.prototype,d=[0,0,0],v=[0,0,0],_=[0,0];h.isTransparent=function(){return!1},h.drawTransparent=function(p){},h.draw=function(p){var k=this.gl,E=this.vao,S=this.shader;E.bind(),S.bind();var L=p.model||c,x=p.view||c,C=p.projection||c,M;this.axes&&(M=this.axes.lastCubeProps.axis);for(var g=d,P=v,T=0;T<3;++T)M&&M[T]<0?(g[T]=this.bounds[0][T],P[T]=this.bounds[1][T]):(g[T]=this.bounds[1][T],P[T]=this.bounds[0][T]);_[0]=k.drawingBufferWidth,_[1]=k.drawingBufferHeight,S.uniforms.model=L,S.uniforms.view=x,S.uniforms.projection=C,S.uniforms.coordinates=[this.position,g,P],S.uniforms.colors=this.colors,S.uniforms.screenShape=_;for(var T=0;T<3;++T)S.uniforms.lineWidth=this.lineWidth[T]*this.pixelRatio,this.enabled[T]&&(E.draw(k.TRIANGLES,6,6*T),this.drawSides[T]&&E.draw(k.TRIANGLES,12,18+12*T));E.unbind()},h.update=function(p){p&&("bounds"in p&&(this.bounds=p.bounds),"position"in p&&(this.position=p.position),"lineWidth"in p&&(this.lineWidth=p.lineWidth),"colors"in p&&(this.colors=p.colors),"enabled"in p&&(this.enabled=p.enabled),"drawSides"in p&&(this.drawSides=p.drawSides))},h.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function b(p,k){var E=[];function S(g,P,T,z,O,V){var G=[g,P,T,0,0,0,1];G[z+3]=1,G[z]=O,E.push.apply(E,G),G[6]=-1,E.push.apply(E,G),G[z]=V,E.push.apply(E,G),E.push.apply(E,G),G[6]=1,E.push.apply(E,G),G[z]=O,E.push.apply(E,G)}S(0,0,0,0,0,1),S(0,0,0,1,0,1),S(0,0,0,2,0,1),S(1,0,0,1,-1,1),S(1,0,0,2,-1,1),S(0,1,0,0,-1,1),S(0,1,0,2,-1,1),S(0,0,1,0,-1,1),S(0,0,1,1,-1,1);var L=s(p,E),x=l(p,[{type:p.FLOAT,buffer:L,size:3,offset:0,stride:28},{type:p.FLOAT,buffer:L,size:3,offset:12,stride:28},{type:p.FLOAT,buffer:L,size:1,offset:24,stride:28}]),C=u(p);C.attributes.position.location=0,C.attributes.color.location=1,C.attributes.weight.location=2;var M=new f(p,L,x,C);return M.update(k),M}},4494:function(i){i.exports=a;function a(o,s){return o[0]=1/s[0],o[1]=1/s[1],o[2]=1/s[2],o[3]=1/s[3],o}},4505:function(i,a,o){i.exports=o(5847)},4578:function(i){i.exports=a;function a(o,s,l,u,c){return o[0]=s,o[1]=l,o[2]=u,o[3]=c,o}},4623:function(i){"use strict";"use restrict";i.exports=a;function a(o){this.roots=new Array(o),this.ranks=new Array(o);for(var s=0;s0)return 1<=0)return 1<=0;--p)h[p]=d*s[p]+v*l[p]+_*u[p]+b*c[p];return h}return d*s+v*l+_*u[p]+b*c}function o(s,l,u,c,f,h){var d=f-1,v=f*f,_=d*d,b=(1+2*f)*_,p=f*_,k=v*(3-2*f),E=v*d;if(s.length){h||(h=new Array(s.length));for(var S=s.length-1;S>=0;--S)h[S]=b*s[S]+p*l[S]+k*u[S]+E*c[S];return h}return b*s+p*l+k*u+E*c}i.exports=o,i.exports.derivative=a},4772:function(i){i.exports=a;function a(o,s,l,u,c){var f=1/Math.tan(s/2),h=1/(u-c);return o[0]=f/l,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=f,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=(c+u)*h,o[11]=-1,o[12]=0,o[13]=0,o[14]=2*c*u*h,o[15]=0,o}},4793:function(i,a,o){"use strict";var s;function l(Ie,xe){if(!(Ie instanceof xe))throw new TypeError("Cannot call a class as a function")}function u(Ie,xe){for(var ke=0;keM)throw new RangeError('The value "'+Ie+'" is invalid for option "size"');var xe=new Uint8Array(Ie);return Object.setPrototypeOf(xe,T.prototype),xe}function T(Ie,xe,ke){if(typeof Ie=="number"){if(typeof xe=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return G(Ie)}return z(Ie,xe,ke)}T.poolSize=8192;function z(Ie,xe,ke){if(typeof Ie=="string")return Z(Ie,xe);if(ArrayBuffer.isView(Ie))return N(Ie);if(Ie==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+S(Ie));if(Ge(Ie,ArrayBuffer)||Ie&&Ge(Ie.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(Ge(Ie,SharedArrayBuffer)||Ie&&Ge(Ie.buffer,SharedArrayBuffer)))return H(Ie,xe,ke);if(typeof Ie=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var vt=Ie.valueOf&&Ie.valueOf();if(vt!=null&&vt!==Ie)return T.from(vt,xe,ke);var ir=te(Ie);if(ir)return ir;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof Ie[Symbol.toPrimitive]=="function")return T.from(Ie[Symbol.toPrimitive]("string"),xe,ke);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+S(Ie))}T.from=function(Ie,xe,ke){return z(Ie,xe,ke)},Object.setPrototypeOf(T.prototype,Uint8Array.prototype),Object.setPrototypeOf(T,Uint8Array);function O(Ie){if(typeof Ie!="number")throw new TypeError('"size" argument must be of type number');if(Ie<0)throw new RangeError('The value "'+Ie+'" is invalid for option "size"')}function V(Ie,xe,ke){return O(Ie),Ie<=0?P(Ie):xe!==void 0?typeof ke=="string"?P(Ie).fill(xe,ke):P(Ie).fill(xe):P(Ie)}T.alloc=function(Ie,xe,ke){return V(Ie,xe,ke)};function G(Ie){return O(Ie),P(Ie<0?0:oe(Ie)|0)}T.allocUnsafe=function(Ie){return G(Ie)},T.allocUnsafeSlow=function(Ie){return G(Ie)};function Z(Ie,xe){if((typeof xe!="string"||xe==="")&&(xe="utf8"),!T.isEncoding(xe))throw new TypeError("Unknown encoding: "+xe);var ke=Ee(Ie,xe)|0,vt=P(ke),ir=vt.write(Ie,xe);return ir!==ke&&(vt=vt.slice(0,ir)),vt}function j(Ie){for(var xe=Ie.length<0?0:oe(Ie.length)|0,ke=P(xe),vt=0;vt=M)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+M.toString(16)+" bytes");return Ie|0}function _e(Ie){return+Ie!=Ie&&(Ie=0),T.alloc(+Ie)}T.isBuffer=function(xe){return xe!=null&&xe._isBuffer===!0&&xe!==T.prototype},T.compare=function(xe,ke){if(Ge(xe,Uint8Array)&&(xe=T.from(xe,xe.offset,xe.byteLength)),Ge(ke,Uint8Array)&&(ke=T.from(ke,ke.offset,ke.byteLength)),!T.isBuffer(xe)||!T.isBuffer(ke))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(xe===ke)return 0;for(var vt=xe.length,ir=ke.length,ar=0,vr=Math.min(vt,ir);arir.length?(T.isBuffer(vr)||(vr=T.from(vr)),vr.copy(ir,ar)):Uint8Array.prototype.set.call(ir,vr,ar);else if(T.isBuffer(vr))vr.copy(ir,ar);else throw new TypeError('"list" argument must be an Array of Buffers');ar+=vr.length}return ir};function Ee(Ie,xe){if(T.isBuffer(Ie))return Ie.length;if(ArrayBuffer.isView(Ie)||Ge(Ie,ArrayBuffer))return Ie.byteLength;if(typeof Ie!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+S(Ie));var ke=Ie.length,vt=arguments.length>2&&arguments[2]===!0;if(!vt&&ke===0)return 0;for(var ir=!1;;)switch(xe){case"ascii":case"latin1":case"binary":return ke;case"utf8":case"utf-8":return Lr(Ie).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ke*2;case"hex":return ke>>>1;case"base64":return Vr(Ie).length;default:if(ir)return vt?-1:Lr(Ie).length;xe=(""+xe).toLowerCase(),ir=!0}}T.byteLength=Ee;function Ce(Ie,xe,ke){var vt=!1;if((xe===void 0||xe<0)&&(xe=0),xe>this.length||((ke===void 0||ke>this.length)&&(ke=this.length),ke<=0)||(ke>>>=0,xe>>>=0,ke<=xe))return"";for(Ie||(Ie="utf8");;)switch(Ie){case"hex":return st(this,xe,ke);case"utf8":case"utf-8":return ce(this,xe,ke);case"ascii":return pt(this,xe,ke);case"latin1":case"binary":return Zt(this,xe,ke);case"base64":return Re(this,xe,ke);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return lt(this,xe,ke);default:if(vt)throw new TypeError("Unknown encoding: "+Ie);Ie=(Ie+"").toLowerCase(),vt=!0}}T.prototype._isBuffer=!0;function me(Ie,xe,ke){var vt=Ie[xe];Ie[xe]=Ie[ke],Ie[ke]=vt}T.prototype.swap16=function(){var xe=this.length;if(xe%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var ke=0;keke&&(xe+=" ... "),""},C&&(T.prototype[C]=T.prototype.inspect),T.prototype.compare=function(xe,ke,vt,ir,ar){if(Ge(xe,Uint8Array)&&(xe=T.from(xe,xe.offset,xe.byteLength)),!T.isBuffer(xe))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+S(xe));if(ke===void 0&&(ke=0),vt===void 0&&(vt=xe?xe.length:0),ir===void 0&&(ir=0),ar===void 0&&(ar=this.length),ke<0||vt>xe.length||ir<0||ar>this.length)throw new RangeError("out of range index");if(ir>=ar&&ke>=vt)return 0;if(ir>=ar)return-1;if(ke>=vt)return 1;if(ke>>>=0,vt>>>=0,ir>>>=0,ar>>>=0,this===xe)return 0;for(var vr=ar-ir,ii=vt-ke,pi=Math.min(vr,ii),$r=this.slice(ir,ar),di=xe.slice(ke,vt),ji=0;ji2147483647?ke=2147483647:ke<-2147483648&&(ke=-2147483648),ke=+ke,Je(ke)&&(ke=ir?0:Ie.length-1),ke<0&&(ke=Ie.length+ke),ke>=Ie.length){if(ir)return-1;ke=Ie.length-1}else if(ke<0)if(ir)ke=0;else return-1;if(typeof xe=="string"&&(xe=T.from(xe,vt)),T.isBuffer(xe))return xe.length===0?-1:Se(Ie,xe,ke,vt,ir);if(typeof xe=="number")return xe=xe&255,typeof Uint8Array.prototype.indexOf=="function"?ir?Uint8Array.prototype.indexOf.call(Ie,xe,ke):Uint8Array.prototype.lastIndexOf.call(Ie,xe,ke):Se(Ie,[xe],ke,vt,ir);throw new TypeError("val must be string, number or Buffer")}function Se(Ie,xe,ke,vt,ir){var ar=1,vr=Ie.length,ii=xe.length;if(vt!==void 0&&(vt=String(vt).toLowerCase(),vt==="ucs2"||vt==="ucs-2"||vt==="utf16le"||vt==="utf-16le")){if(Ie.length<2||xe.length<2)return-1;ar=2,vr/=2,ii/=2,ke/=2}function pi(wi,On){return ar===1?wi[On]:wi.readUInt16BE(On*ar)}var $r;if(ir){var di=-1;for($r=ke;$rvr&&(ke=vr-ii),$r=ke;$r>=0;$r--){for(var ji=!0,In=0;Inir&&(vt=ir)):vt=ir;var ar=xe.length;vt>ar/2&&(vt=ar/2);var vr;for(vr=0;vr>>0,isFinite(vt)?(vt=vt>>>0,ir===void 0&&(ir="utf8")):(ir=vt,vt=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var ar=this.length-ke;if((vt===void 0||vt>ar)&&(vt=ar),xe.length>0&&(vt<0||ke<0)||ke>this.length)throw new RangeError("Attempt to write outside buffer bounds");ir||(ir="utf8");for(var vr=!1;;)switch(ir){case"hex":return Le(this,xe,ke,vt);case"utf8":case"utf-8":return Ae(this,xe,ke,vt);case"ascii":case"latin1":case"binary":return Fe(this,xe,ke,vt);case"base64":return Pe(this,xe,ke,vt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ge(this,xe,ke,vt);default:if(vr)throw new TypeError("Unknown encoding: "+ir);ir=(""+ir).toLowerCase(),vr=!0}},T.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Re(Ie,xe,ke){return xe===0&&ke===Ie.length?L.fromByteArray(Ie):L.fromByteArray(Ie.slice(xe,ke))}function ce(Ie,xe,ke){ke=Math.min(Ie.length,ke);for(var vt=[],ir=xe;ir239?4:ar>223?3:ar>191?2:1;if(ir+ii<=ke){var pi=void 0,$r=void 0,di=void 0,ji=void 0;switch(ii){case 1:ar<128&&(vr=ar);break;case 2:pi=Ie[ir+1],(pi&192)===128&&(ji=(ar&31)<<6|pi&63,ji>127&&(vr=ji));break;case 3:pi=Ie[ir+1],$r=Ie[ir+2],(pi&192)===128&&($r&192)===128&&(ji=(ar&15)<<12|(pi&63)<<6|$r&63,ji>2047&&(ji<55296||ji>57343)&&(vr=ji));break;case 4:pi=Ie[ir+1],$r=Ie[ir+2],di=Ie[ir+3],(pi&192)===128&&($r&192)===128&&(di&192)===128&&(ji=(ar&15)<<18|(pi&63)<<12|($r&63)<<6|di&63,ji>65535&&ji<1114112&&(vr=ji))}}vr===null?(vr=65533,ii=1):vr>65535&&(vr-=65536,vt.push(vr>>>10&1023|55296),vr=56320|vr&1023),vt.push(vr),ir+=ii}return ut(vt)}var Ze=4096;function ut(Ie){var xe=Ie.length;if(xe<=Ze)return String.fromCharCode.apply(String,Ie);for(var ke="",vt=0;vtvt)&&(ke=vt);for(var ir="",ar=xe;arvt&&(xe=vt),ke<0?(ke+=vt,ke<0&&(ke=0)):ke>vt&&(ke=vt),keke)throw new RangeError("Trying to access beyond buffer length")}T.prototype.readUintLE=T.prototype.readUIntLE=function(xe,ke,vt){xe=xe>>>0,ke=ke>>>0,vt||Gt(xe,ke,this.length);for(var ir=this[xe],ar=1,vr=0;++vr>>0,ke=ke>>>0,vt||Gt(xe,ke,this.length);for(var ir=this[xe+--ke],ar=1;ke>0&&(ar*=256);)ir+=this[xe+--ke]*ar;return ir},T.prototype.readUint8=T.prototype.readUInt8=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,1,this.length),this[xe]},T.prototype.readUint16LE=T.prototype.readUInt16LE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,2,this.length),this[xe]|this[xe+1]<<8},T.prototype.readUint16BE=T.prototype.readUInt16BE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,2,this.length),this[xe]<<8|this[xe+1]},T.prototype.readUint32LE=T.prototype.readUInt32LE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),(this[xe]|this[xe+1]<<8|this[xe+2]<<16)+this[xe+3]*16777216},T.prototype.readUint32BE=T.prototype.readUInt32BE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),this[xe]*16777216+(this[xe+1]<<16|this[xe+2]<<8|this[xe+3])},T.prototype.readBigUInt64LE=tt(function(xe){xe=xe>>>0,mt(xe,"offset");var ke=this[xe],vt=this[xe+7];(ke===void 0||vt===void 0)&&er(xe,this.length-8);var ir=ke+this[++xe]*Math.pow(2,8)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,24),ar=this[++xe]+this[++xe]*Math.pow(2,8)+this[++xe]*Math.pow(2,16)+vt*Math.pow(2,24);return BigInt(ir)+(BigInt(ar)<>>0,mt(xe,"offset");var ke=this[xe],vt=this[xe+7];(ke===void 0||vt===void 0)&&er(xe,this.length-8);var ir=ke*Math.pow(2,24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+this[++xe],ar=this[++xe]*Math.pow(2,24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+vt;return(BigInt(ir)<>>0,ke=ke>>>0,vt||Gt(xe,ke,this.length);for(var ir=this[xe],ar=1,vr=0;++vr=ar&&(ir-=Math.pow(2,8*ke)),ir},T.prototype.readIntBE=function(xe,ke,vt){xe=xe>>>0,ke=ke>>>0,vt||Gt(xe,ke,this.length);for(var ir=ke,ar=1,vr=this[xe+--ir];ir>0&&(ar*=256);)vr+=this[xe+--ir]*ar;return ar*=128,vr>=ar&&(vr-=Math.pow(2,8*ke)),vr},T.prototype.readInt8=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,1,this.length),this[xe]&128?(255-this[xe]+1)*-1:this[xe]},T.prototype.readInt16LE=function(xe,ke){xe=xe>>>0,ke||Gt(xe,2,this.length);var vt=this[xe]|this[xe+1]<<8;return vt&32768?vt|4294901760:vt},T.prototype.readInt16BE=function(xe,ke){xe=xe>>>0,ke||Gt(xe,2,this.length);var vt=this[xe+1]|this[xe]<<8;return vt&32768?vt|4294901760:vt},T.prototype.readInt32LE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),this[xe]|this[xe+1]<<8|this[xe+2]<<16|this[xe+3]<<24},T.prototype.readInt32BE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),this[xe]<<24|this[xe+1]<<16|this[xe+2]<<8|this[xe+3]},T.prototype.readBigInt64LE=tt(function(xe){xe=xe>>>0,mt(xe,"offset");var ke=this[xe],vt=this[xe+7];(ke===void 0||vt===void 0)&&er(xe,this.length-8);var ir=this[xe+4]+this[xe+5]*Math.pow(2,8)+this[xe+6]*Math.pow(2,16)+(vt<<24);return(BigInt(ir)<>>0,mt(xe,"offset");var ke=this[xe],vt=this[xe+7];(ke===void 0||vt===void 0)&&er(xe,this.length-8);var ir=(ke<<24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+this[++xe];return(BigInt(ir)<>>0,ke||Gt(xe,4,this.length),x.read(this,xe,!0,23,4)},T.prototype.readFloatBE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,4,this.length),x.read(this,xe,!1,23,4)},T.prototype.readDoubleLE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,8,this.length),x.read(this,xe,!0,52,8)},T.prototype.readDoubleBE=function(xe,ke){return xe=xe>>>0,ke||Gt(xe,8,this.length),x.read(this,xe,!1,52,8)};function Nt(Ie,xe,ke,vt,ir,ar){if(!T.isBuffer(Ie))throw new TypeError('"buffer" argument must be a Buffer instance');if(xe>ir||xeIe.length)throw new RangeError("Index out of range")}T.prototype.writeUintLE=T.prototype.writeUIntLE=function(xe,ke,vt,ir){if(xe=+xe,ke=ke>>>0,vt=vt>>>0,!ir){var ar=Math.pow(2,8*vt)-1;Nt(this,xe,ke,vt,ar,0)}var vr=1,ii=0;for(this[ke]=xe&255;++ii>>0,vt=vt>>>0,!ir){var ar=Math.pow(2,8*vt)-1;Nt(this,xe,ke,vt,ar,0)}var vr=vt-1,ii=1;for(this[ke+vr]=xe&255;--vr>=0&&(ii*=256);)this[ke+vr]=xe/ii&255;return ke+vt},T.prototype.writeUint8=T.prototype.writeUInt8=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,1,255,0),this[ke]=xe&255,ke+1},T.prototype.writeUint16LE=T.prototype.writeUInt16LE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,2,65535,0),this[ke]=xe&255,this[ke+1]=xe>>>8,ke+2},T.prototype.writeUint16BE=T.prototype.writeUInt16BE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,2,65535,0),this[ke]=xe>>>8,this[ke+1]=xe&255,ke+2},T.prototype.writeUint32LE=T.prototype.writeUInt32LE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,4,4294967295,0),this[ke+3]=xe>>>24,this[ke+2]=xe>>>16,this[ke+1]=xe>>>8,this[ke]=xe&255,ke+4},T.prototype.writeUint32BE=T.prototype.writeUInt32BE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,4,4294967295,0),this[ke]=xe>>>24,this[ke+1]=xe>>>16,this[ke+2]=xe>>>8,this[ke+3]=xe&255,ke+4};function Jt(Ie,xe,ke,vt,ir){It(xe,vt,ir,Ie,ke,7);var ar=Number(xe&BigInt(4294967295));Ie[ke++]=ar,ar=ar>>8,Ie[ke++]=ar,ar=ar>>8,Ie[ke++]=ar,ar=ar>>8,Ie[ke++]=ar;var vr=Number(xe>>BigInt(32)&BigInt(4294967295));return Ie[ke++]=vr,vr=vr>>8,Ie[ke++]=vr,vr=vr>>8,Ie[ke++]=vr,vr=vr>>8,Ie[ke++]=vr,ke}function sr(Ie,xe,ke,vt,ir){It(xe,vt,ir,Ie,ke,7);var ar=Number(xe&BigInt(4294967295));Ie[ke+7]=ar,ar=ar>>8,Ie[ke+6]=ar,ar=ar>>8,Ie[ke+5]=ar,ar=ar>>8,Ie[ke+4]=ar;var vr=Number(xe>>BigInt(32)&BigInt(4294967295));return Ie[ke+3]=vr,vr=vr>>8,Ie[ke+2]=vr,vr=vr>>8,Ie[ke+1]=vr,vr=vr>>8,Ie[ke]=vr,ke+8}T.prototype.writeBigUInt64LE=tt(function(xe){var ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Jt(this,xe,ke,BigInt(0),BigInt("0xffffffffffffffff"))}),T.prototype.writeBigUInt64BE=tt(function(xe){var ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return sr(this,xe,ke,BigInt(0),BigInt("0xffffffffffffffff"))}),T.prototype.writeIntLE=function(xe,ke,vt,ir){if(xe=+xe,ke=ke>>>0,!ir){var ar=Math.pow(2,8*vt-1);Nt(this,xe,ke,vt,ar-1,-ar)}var vr=0,ii=1,pi=0;for(this[ke]=xe&255;++vr>0)-pi&255;return ke+vt},T.prototype.writeIntBE=function(xe,ke,vt,ir){if(xe=+xe,ke=ke>>>0,!ir){var ar=Math.pow(2,8*vt-1);Nt(this,xe,ke,vt,ar-1,-ar)}var vr=vt-1,ii=1,pi=0;for(this[ke+vr]=xe&255;--vr>=0&&(ii*=256);)xe<0&&pi===0&&this[ke+vr+1]!==0&&(pi=1),this[ke+vr]=(xe/ii>>0)-pi&255;return ke+vt},T.prototype.writeInt8=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,1,127,-128),xe<0&&(xe=255+xe+1),this[ke]=xe&255,ke+1},T.prototype.writeInt16LE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,2,32767,-32768),this[ke]=xe&255,this[ke+1]=xe>>>8,ke+2},T.prototype.writeInt16BE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,2,32767,-32768),this[ke]=xe>>>8,this[ke+1]=xe&255,ke+2},T.prototype.writeInt32LE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,4,2147483647,-2147483648),this[ke]=xe&255,this[ke+1]=xe>>>8,this[ke+2]=xe>>>16,this[ke+3]=xe>>>24,ke+4},T.prototype.writeInt32BE=function(xe,ke,vt){return xe=+xe,ke=ke>>>0,vt||Nt(this,xe,ke,4,2147483647,-2147483648),xe<0&&(xe=4294967295+xe+1),this[ke]=xe>>>24,this[ke+1]=xe>>>16,this[ke+2]=xe>>>8,this[ke+3]=xe&255,ke+4},T.prototype.writeBigInt64LE=tt(function(xe){var ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Jt(this,xe,ke,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),T.prototype.writeBigInt64BE=tt(function(xe){var ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return sr(this,xe,ke,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function wr(Ie,xe,ke,vt,ir,ar){if(ke+vt>Ie.length)throw new RangeError("Index out of range");if(ke<0)throw new RangeError("Index out of range")}function cr(Ie,xe,ke,vt,ir){return xe=+xe,ke=ke>>>0,ir||wr(Ie,xe,ke,4,34028234663852886e22,-34028234663852886e22),x.write(Ie,xe,ke,vt,23,4),ke+4}T.prototype.writeFloatLE=function(xe,ke,vt){return cr(this,xe,ke,!0,vt)},T.prototype.writeFloatBE=function(xe,ke,vt){return cr(this,xe,ke,!1,vt)};function $e(Ie,xe,ke,vt,ir){return xe=+xe,ke=ke>>>0,ir||wr(Ie,xe,ke,8,17976931348623157e292,-17976931348623157e292),x.write(Ie,xe,ke,vt,52,8),ke+8}T.prototype.writeDoubleLE=function(xe,ke,vt){return $e(this,xe,ke,!0,vt)},T.prototype.writeDoubleBE=function(xe,ke,vt){return $e(this,xe,ke,!1,vt)},T.prototype.copy=function(xe,ke,vt,ir){if(!T.isBuffer(xe))throw new TypeError("argument should be a Buffer");if(vt||(vt=0),!ir&&ir!==0&&(ir=this.length),ke>=xe.length&&(ke=xe.length),ke||(ke=0),ir>0&&ir=this.length)throw new RangeError("Index out of range");if(ir<0)throw new RangeError("sourceEnd out of bounds");ir>this.length&&(ir=this.length),xe.length-ke>>0,vt=vt===void 0?this.length:vt>>>0,xe||(xe=0);var vr;if(typeof xe=="number")for(vr=ke;vrMath.pow(2,32)?ir=Vt(String(ke)):typeof ke=="bigint"&&(ir=String(ke),(ke>Math.pow(BigInt(2),BigInt(32))||ke<-Math.pow(BigInt(2),BigInt(32)))&&(ir=Vt(ir)),ir+="n"),vt+=" It must be ".concat(xe,". Received ").concat(ir),vt},RangeError);function Vt(Ie){for(var xe="",ke=Ie.length,vt=Ie[0]==="-"?1:0;ke>=vt+4;ke-=3)xe="_".concat(Ie.slice(ke-3,ke)).concat(xe);return"".concat(Ie.slice(0,ke)).concat(xe)}function _t(Ie,xe,ke){mt(xe,"offset"),(Ie[xe]===void 0||Ie[xe+ke]===void 0)&&er(xe,Ie.length-(ke+1))}function It(Ie,xe,ke,vt,ir,ar){if(Ie>ke||Ie3?xe===0||xe===BigInt(0)?ii=">= 0".concat(vr," and < 2").concat(vr," ** ").concat((ar+1)*8).concat(vr):ii=">= -(2".concat(vr," ** ").concat((ar+1)*8-1).concat(vr,") and < 2 ** ")+"".concat((ar+1)*8-1).concat(vr):ii=">= ".concat(xe).concat(vr," and <= ").concat(ke).concat(vr),new St.ERR_OUT_OF_RANGE("value",ii,Ie)}_t(vt,ir,ar)}function mt(Ie,xe){if(typeof Ie!="number")throw new St.ERR_INVALID_ARG_TYPE(xe,"number",Ie)}function er(Ie,xe,ke){throw Math.floor(Ie)!==Ie?(mt(Ie,ke),new St.ERR_OUT_OF_RANGE(ke||"offset","an integer",Ie)):xe<0?new St.ERR_BUFFER_OUT_OF_BOUNDS:new St.ERR_OUT_OF_RANGE(ke||"offset",">= ".concat(ke?1:0," and <= ").concat(xe),Ie)}var lr=/[^+/0-9A-Za-z-_]/g;function Tr(Ie){if(Ie=Ie.split("=")[0],Ie=Ie.trim().replace(lr,""),Ie.length<2)return"";for(;Ie.length%4!==0;)Ie=Ie+"=";return Ie}function Lr(Ie,xe){xe=xe||1/0;for(var ke,vt=Ie.length,ir=null,ar=[],vr=0;vr55295&&ke<57344){if(!ir){if(ke>56319){(xe-=3)>-1&&ar.push(239,191,189);continue}else if(vr+1===vt){(xe-=3)>-1&&ar.push(239,191,189);continue}ir=ke;continue}if(ke<56320){(xe-=3)>-1&&ar.push(239,191,189),ir=ke;continue}ke=(ir-55296<<10|ke-56320)+65536}else ir&&(xe-=3)>-1&&ar.push(239,191,189);if(ir=null,ke<128){if((xe-=1)<0)break;ar.push(ke)}else if(ke<2048){if((xe-=2)<0)break;ar.push(ke>>6|192,ke&63|128)}else if(ke<65536){if((xe-=3)<0)break;ar.push(ke>>12|224,ke>>6&63|128,ke&63|128)}else if(ke<1114112){if((xe-=4)<0)break;ar.push(ke>>18|240,ke>>12&63|128,ke>>6&63|128,ke&63|128)}else throw new Error("Invalid code point")}return ar}function ti(Ie){for(var xe=[],ke=0;ke>8,ir=ke%256,ar.push(ir),ar.push(vt);return ar}function Vr(Ie){return L.toByteArray(Tr(Ie))}function dt(Ie,xe,ke,vt){var ir;for(ir=0;ir=xe.length||ir>=Ie.length);++ir)xe[ir+ke]=Ie[ir];return ir}function Ge(Ie,xe){return Ie instanceof xe||Ie!=null&&Ie.constructor!=null&&Ie.constructor.name!=null&&Ie.constructor.name===xe.name}function Je(Ie){return Ie!==Ie}var je=function(){for(var Ie="0123456789abcdef",xe=new Array(256),ke=0;ke<16;++ke)for(var vt=ke*16,ir=0;ir<16;++ir)xe[vt+ir]=Ie[ke]+Ie[ir];return xe}();function tt(Ie){return typeof BigInt=="undefined"?xt:Ie}function xt(){throw new Error("BigInt not supported")}},4844:function(i){i.exports=a;function a(o,s,l,u){return o[0]=s[0]+l[0]*u,o[1]=s[1]+l[1]*u,o[2]=s[2]+l[2]*u,o[3]=s[3]+l[3]*u,o}},4905:function(i,a,o){var s=o(5874);i.exports=l;function l(u,c){var f=s(c),h=[];return h=h.concat(f(u)),h=h.concat(f(null)),h}},4935:function(i,a,o){"use strict";i.exports=k;var s=o(2762),l=o(8116),u=o(4359),c=o(1879).Q,f=window||process.global||{},h=f.__TEXT_CACHE||{};f.__TEXT_CACHE={};var d=3;function v(E,S,L,x){this.gl=E,this.shader=S,this.buffer=L,this.vao=x,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var _=v.prototype,b=[0,0];_.bind=function(E,S,L,x){this.vao.bind(),this.shader.bind();var C=this.shader.uniforms;C.model=E,C.view=S,C.projection=L,C.pixelScale=x,b[0]=this.gl.drawingBufferWidth,b[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=b},_.unbind=function(){this.vao.unbind()},_.update=function(E,S,L,x,C){var M=[];function g(H,te,oe,_e,Ee,Ce){var me=[oe.style,oe.weight,oe.variant,oe.family].join("_"),ie=h[me];ie||(ie=h[me]={});var Se=ie[te];Se||(Se=ie[te]=p(te,{triangles:!0,font:oe.family,fontStyle:oe.style,fontWeight:oe.weight,fontVariant:oe.variant,textAlign:"center",textBaseline:"middle",lineSpacing:Ee,styletags:Ce}));for(var Le=(_e||12)/12,Ae=Se.positions,Fe=Se.cells,Pe=0,ge=Fe.length;Pe=0;--ce){var Ze=Ae[Re[ce]];M.push(Le*Ze[0],-Le*Ze[1],H)}}for(var P=[0,0,0],T=[0,0,0],z=[0,0,0],O=[0,0,0],V=1.25,G={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},Z=0;Z<3;++Z){z[Z]=M.length/d|0,g(.5*(E[0][Z]+E[1][Z]),S[Z],L[Z],12,V,G),O[Z]=(M.length/d|0)-z[Z],P[Z]=M.length/d|0;for(var j=0;j0||S.length>0;){for(;E.length>0;){var g=E.pop();if(L[g]!==-k){L[g]=k;for(var P=x[g],T=0;T<3;++T){var z=M[3*g+T];z>=0&&L[z]===0&&(C[3*g+T]?S.push(z):(E.push(z),L[z]=k))}}}var O=S;S=E,E=O,S.length=0,k=-k}var V=h(x,L,_);return b?V.concat(p.boundary):V}},5033:function(i){"use strict";i.exports=a;function a(o,s,l){var u=s||0,c=l||1;return[[o[12]+o[0],o[13]+o[1],o[14]+o[2],o[15]+o[3]],[o[12]-o[0],o[13]-o[1],o[14]-o[2],o[15]-o[3]],[o[12]+o[4],o[13]+o[5],o[14]+o[6],o[15]+o[7]],[o[12]-o[4],o[13]-o[5],o[14]-o[6],o[15]-o[7]],[u*o[12]+o[8],u*o[13]+o[9],u*o[14]+o[10],u*o[15]+o[11]],[c*o[12]-o[8],c*o[13]-o[9],c*o[14]-o[10],c*o[15]-o[11]]]}},5085:function(i,a,o){i.exports=k;var s=o(3250)[3],l=o(4209),u=o(3352),c=o(2478);function f(){return!0}function h(E){return function(S,L){var x=E[S];return x?!!x.queryPoint(L,f):!1}}function d(E){for(var S={},L=0;L0&&S[x]===L[0])C=E[x-1];else return 1;for(var M=1;C;){var g=C.key,P=s(L,g[0],g[1]);if(g[0][0]0)M=-1,C=C.right;else return 0;else if(P>0)C=C.left;else if(P<0)M=1,C=C.right;else return 0}return M}}function _(E){return 1}function b(E){return function(L){return E(L[0],L[1])?0:1}}function p(E,S){return function(x){return E(x[0],x[1])?0:S(x)}}function k(E){for(var S=E.length,L=[],x=[],C=0,M=0;M0&&(h=1/Math.sqrt(h),o[0]=l*h,o[1]=u*h,o[2]=c*h,o[3]=f*h),o}},5202:function(i,a,o){"use strict";var s=o(1944),l=o(8210);i.exports=f,i.exports.positive=h,i.exports.negative=d;function u(v,_){var b=l(s(v,_),[_[_.length-1]]);return b[b.length-1]}function c(v,_,b,p){var k=p-_,E=-_/k;E<0?E=0:E>1&&(E=1);for(var S=1-E,L=v.length,x=new Array(L),C=0;C0||k>0&&x<0){var C=c(E,x,S,k);b.push(C),p.push(C.slice())}x<0?p.push(S.slice()):x>0?b.push(S.slice()):(b.push(S.slice()),p.push(S.slice())),k=x}return{positive:b,negative:p}}function h(v,_){for(var b=[],p=u(v[v.length-1],_),k=v[v.length-1],E=v[0],S=0;S0||p>0&&L<0)&&b.push(c(k,L,E,p)),L>=0&&b.push(E.slice()),p=L}return b}function d(v,_){for(var b=[],p=u(v[v.length-1],_),k=v[v.length-1],E=v[0],S=0;S0||p>0&&L<0)&&b.push(c(k,L,E,p)),L<=0&&b.push(E.slice()),p=L}return b}},5219:function(i){"use strict";i.exports=function(a){for(var o=a.length,s,l=0;l13)&&s!==32&&s!==133&&s!==160&&s!==5760&&s!==6158&&(s<8192||s>8205)&&s!==8232&&s!==8233&&s!==8239&&s!==8287&&s!==8288&&s!==12288&&s!==65279)return!1;return!0}},5250:function(i){"use strict";i.exports=o;var a=+(Math.pow(2,27)+1);function o(s,l,u){var c=s*l,f=a*s,h=f-s,d=f-h,v=s-d,_=a*l,b=_-l,p=_-b,k=l-p,E=c-d*p,S=E-v*p,L=S-d*k,x=v*k-L;return u?(u[0]=x,u[1]=c,u):[x,c]}},5298:function(i,a){"use strict";var o={"float64,2,1,0":function(){return function(v,_,b,p,k){var E=v[0],S=v[1],L=v[2],x=b[0],C=b[1],M=b[2];p|=0;var g=0,P=0,T=0,z=M,O=C-L*M,V=x-S*C;for(T=0;T0;){j<64?(x=j,j=0):(x=64,j-=64);for(var N=v[1]|0;N>0;){N<64?(C=N,N=0):(C=64,N-=64),p=G+j*g+N*P,S=Z+j*z+N*O;var H=0,te=0,oe=0,_e=T,Ee=g-M*T,Ce=P-x*g,me=V,ie=z-M*V,Se=O-x*z;for(oe=0;oe0;){O<64?(x=O,O=0):(x=64,O-=64);for(var V=v[0]|0;V>0;){V<64?(L=V,V=0):(L=64,V-=64),p=T+O*M+V*C,S=z+O*P+V*g;var G=0,Z=0,j=M,N=C-x*M,H=P,te=g-x*P;for(Z=0;Z0;){Z<64?(C=Z,Z=0):(C=64,Z-=64);for(var j=v[0]|0;j>0;){j<64?(L=j,j=0):(L=64,j-=64);for(var N=v[1]|0;N>0;){N<64?(x=N,N=0):(x=64,N-=64),p=V+Z*P+j*M+N*g,S=G+Z*O+j*T+N*z;var H=0,te=0,oe=0,_e=P,Ee=M-C*P,Ce=g-L*M,me=O,ie=T-C*O,Se=z-L*T;for(oe=0;oe=0}}(),u.removeTriangle=function(h,d,v){var _=this.stars;c(_[h],d,v),c(_[d],v,h),c(_[v],h,d)},u.addTriangle=function(h,d,v){var _=this.stars;_[h].push(d,v),_[d].push(v,h),_[v].push(h,d)},u.opposite=function(h,d){for(var v=this.stars[d],_=1,b=v.length;_0;){var p=v.pop();h[p]=!1;for(var k=f[p],_=0;_0){for(var me=0;me<24;++me)O.push(O[O.length-12]);j+=2,_e=!0}continue e}N[0][T]=Math.min(N[0][T],Ee[T],Ce[T]),N[1][T]=Math.max(N[1][T],Ee[T],Ce[T])}var ie,Se;Array.isArray(te[0])?(ie=te.length>P-1?te[P-1]:te.length>0?te[te.length-1]:[0,0,0,1],Se=te.length>P?te[P]:te.length>0?te[te.length-1]:[0,0,0,1]):ie=Se=te,ie.length===3&&(ie=[ie[0],ie[1],ie[2],1]),Se.length===3&&(Se=[Se[0],Se[1],Se[2],1]),!this.hasAlpha&&ie[3]<1&&(this.hasAlpha=!0);var Le;Array.isArray(oe)?Le=oe.length>P-1?oe[P-1]:oe.length>0?oe[oe.length-1]:[0,0,0,1]:Le=oe;var Ae=Z;if(Z+=E(Ee,Ce),_e){for(T=0;T<2;++T)O.push(Ee[0],Ee[1],Ee[2],Ce[0],Ce[1],Ce[2],Ae,Le,ie[0],ie[1],ie[2],ie[3]);j+=2,_e=!1}O.push(Ee[0],Ee[1],Ee[2],Ce[0],Ce[1],Ce[2],Ae,Le,ie[0],ie[1],ie[2],ie[3],Ee[0],Ee[1],Ee[2],Ce[0],Ce[1],Ce[2],Ae,-Le,ie[0],ie[1],ie[2],ie[3],Ce[0],Ce[1],Ce[2],Ee[0],Ee[1],Ee[2],Z,-Le,Se[0],Se[1],Se[2],Se[3],Ce[0],Ce[1],Ce[2],Ee[0],Ee[1],Ee[2],Z,Le,Se[0],Se[1],Se[2],Se[3]),j+=4}}if(this.buffer.update(O),V.push(Z),G.push(H[H.length-1].slice()),this.bounds=N,this.vertexCount=j,this.points=G,this.arcLength=V,"dashes"in g){var Fe=g.dashes,Pe=Fe.slice();for(Pe.unshift(0),P=1;Po[l][0]&&(l=u);return sl?[[l],[s]]:[[s]]}},5771:function(i,a,o){"use strict";var s=o(8507),l=o(3788),u=o(2419);i.exports=c;function c(f){f.sort(l);for(var h=f.length,d=0,v=0;v0){var p=f[d-1];if(s(_,p)===0&&u(p)!==b){d-=1;continue}}f[d++]=_}}return f.length=d,f}},5838:function(i,a,o){"use strict";i.exports=l;var s=o(7842);function l(u){for(var c=new Array(u.length),f=0;f0)continue;Vt=$e.slice(0,1).join("")}return Re(Vt),Ce+=Vt.length,N=N.slice(Vt.length),N.length}while(!0)}function Jt(){return/[^a-fA-F0-9]/.test(Z)?(Re(N.join("")),G=h,O):(N.push(Z),H=Z,O+1)}function sr(){return Z==="."||/[eE]/.test(Z)?(N.push(Z),G=E,H=Z,O+1):Z==="x"&&N.length===1&&N[0]==="0"?(G=g,N.push(Z),H=Z,O+1):/[^\d]/.test(Z)?(Re(N.join("")),G=h,O):(N.push(Z),H=Z,O+1)}function wr(){return Z==="f"&&(N.push(Z),H=Z,O+=1),/[eE]/.test(Z)||(Z==="-"||Z==="+")&&/[eE]/.test(H)?(N.push(Z),H=Z,O+1):/[^\d]/.test(Z)?(Re(N.join("")),G=h,O):(N.push(Z),H=Z,O+1)}function cr(){if(/[^\d\w_]/.test(Z)){var $e=N.join("");return ge[$e]?G=x:Pe[$e]?G=L:G=S,Re(N.join("")),G=h,O}return N.push(Z),H=Z,O+1}}},5878:function(i,a,o){"use strict";i.exports=c;var s=o(3250),l=o(2014);function u(f,h,d){var v=Math.abs(s(f,h,d)),_=Math.sqrt(Math.pow(h[0]-d[0],2)+Math.pow(h[1]-d[1],2));return v/_}function c(f,h,d){for(var v=h.length,_=f.length,b=new Array(v),p=new Array(v),k=new Array(v),E=new Array(v),S=0;S>1:(ie>>1)-1}function z(ie){for(var Se=P(ie);;){var Le=Se,Ae=2*ie+1,Fe=2*(ie+1),Pe=ie;if(Ae0;){var Le=T(ie);if(Le>=0){var Ae=P(Le);if(Se0){var ie=H[0];return g(0,re-1),re-=1,z(0),ie}return-1}function G(ie,Se){var Le=H[ie];return k[Le]===Se?ie:(k[Le]=-1/0,O(ie),V(),k[Le]=Se,re+=1,O(re-1))}function Z(ie){if(!E[ie]){E[ie]=!0;var Se=b[ie],Le=p[ie];b[Le]>=0&&(b[Le]=Se),p[Se]>=0&&(p[Se]=Le),N[Se]>=0&&G(N[Se],M(Se)),N[Le]>=0&&G(N[Le],M(Le))}}for(var H=[],N=new Array(v),S=0;S>1;S>=0;--S)z(S);for(;;){var oe=V();if(oe<0||k[oe]>d)break;Z(oe)}for(var _e=[],S=0;S=0&&Le>=0&&Se!==Le){var Ae=N[Se],Fe=N[Le];Ae!==Fe&&me.push([Ae,Fe])}}),l.unique(l.normalize(me)),{positions:_e,edges:me}}},5911:function(i){i.exports=a;function a(o,s,l){var u=s[0],c=s[1],f=s[2],h=l[0],d=l[1],v=l[2];return o[0]=c*v-f*d,o[1]=f*h-u*v,o[2]=u*d-c*h,o}},5964:function(i){"use strict";i.exports=function(a){return!a&&a!==0?"":a.toString()}},5995:function(i,a,o){"use strict";i.exports=u;var s=o(7642),l=o(6037);function u(c,f){return s(f).filter(function(h){for(var d=new Array(h.length),v=0;v2&&T[1]>2&&M(P.pick(-1,-1).lo(1,1).hi(T[0]-2,T[1]-2),g.pick(-1,-1,0).lo(1,1).hi(T[0]-2,T[1]-2),g.pick(-1,-1,1).lo(1,1).hi(T[0]-2,T[1]-2)),T[1]>2&&(C(P.pick(0,-1).lo(1).hi(T[1]-2),g.pick(0,-1,1).lo(1).hi(T[1]-2)),x(g.pick(0,-1,0).lo(1).hi(T[1]-2))),T[1]>2&&(C(P.pick(T[0]-1,-1).lo(1).hi(T[1]-2),g.pick(T[0]-1,-1,1).lo(1).hi(T[1]-2)),x(g.pick(T[0]-1,-1,0).lo(1).hi(T[1]-2))),T[0]>2&&(C(P.pick(-1,0).lo(1).hi(T[0]-2),g.pick(-1,0,0).lo(1).hi(T[0]-2)),x(g.pick(-1,0,1).lo(1).hi(T[0]-2))),T[0]>2&&(C(P.pick(-1,T[1]-1).lo(1).hi(T[0]-2),g.pick(-1,T[1]-1,0).lo(1).hi(T[0]-2)),x(g.pick(-1,T[1]-1,1).lo(1).hi(T[0]-2))),g.set(0,0,0,0),g.set(0,0,1,0),g.set(T[0]-1,0,0,0),g.set(T[0]-1,0,1,0),g.set(0,T[1]-1,0,0),g.set(0,T[1]-1,1,0),g.set(T[0]-1,T[1]-1,0,0),g.set(T[0]-1,T[1]-1,1,0),g}}function S(L){var x=L.join(),T=v[x];if(T)return T;for(var C=L.length,M=[b,p],g=1;g<=C;++g)M.push(k(g));var P=E,T=P.apply(void 0,M);return v[x]=T,T}i.exports=function(x,C,M){if(Array.isArray(M)||(typeof M=="string"?M=s(C.dimension,M):M=s(C.dimension,"clamp")),C.size===0)return x;if(C.dimension===0)return x.set(0),x;var g=S(M);return g(x,C)}},6204:function(i){"use strict";i.exports=a;function a(o){var s,l,u,c=o.length,f=0;for(s=0;sv&&(v=s.length(O)),T&&!P){var V=2*s.distance(L,z)/(s.length(x)+s.length(O));V?(M=Math.min(M,V),g=!1):g=!0}g||(L=z,x=O),C.push(O)}var G=[_,p,E],Z=[b,k,S];c&&(c[0]=G,c[1]=Z),v===0&&(v=1);var H=1/v;isFinite(M)||(M=1),d.vectorScale=M;var N=u.coneSize||(P?1:.5);u.absoluteConeSize&&(N=u.absoluteConeSize*H),d.coneScale=N;for(var T=0,j=0;T_e&&(Z|=1<_e){Z|=1<d[O][1])&&(Fe=O);for(var Pe=-1,O=0;O<3;++O){var ge=Fe^1<d[Re][0]&&(Re=ge)}}var ce=E;ce[0]=ce[1]=ce[2]=0,ce[s.log2(Pe^Fe)]=Fe&Pe,ce[s.log2(Fe^Re)]=Feℜvar Ze=Re^7;Ze===Z||Ze===Ae?(Ze=Pe^7,ce[s.log2(Re^Ze)]=Ze&Re):ce[s.log2(Pe^Ze)]=Ze&Pe;for(var ut=S,pt=Z,j=0;j<3;++j)pt&1<=0&&(d=f.length-h-1);var v=Math.pow(10,d),_=Math.round(u*c*v),b=_+"";if(b.indexOf("e")>=0)return b;var p=_/v,k=_%v;_<0?(p=-Math.ceil(p)|0,k=-k|0):(p=Math.floor(p)|0,k=k|0);var E=""+p;if(_<0&&(E="-"+E),d){for(var S=""+k;S.length=u[0][h];--_)d.push({x:_*c[h],text:o(c[h],_)});f.push(d)}return f}function l(u,c){for(var f=0;f<3;++f){if(u[f].length!==c[f].length)return!1;for(var h=0;hL+1)throw new Error(E+" map requires nshades to be at least size "+k.length);Array.isArray(d.alpha)?d.alpha.length!==2?x=[1,1]:x=d.alpha.slice():typeof d.alpha=="number"?x=[d.alpha,d.alpha]:x=[1,1],v=k.map(function(z){return Math.round(z.index*L)}),x[0]=Math.min(Math.max(x[0],0),1),x[1]=Math.min(Math.max(x[1],0),1);var M=k.map(function(z,O){var V=k[O].index,G=k[O].rgb.slice();return G.length===4&&G[3]>=0&&G[3]<=1||(G[3]=x[0]+(x[1]-x[0])*V),G}),g=[];for(C=0;C0)continue;Vt=$e.slice(0,1).join("")}return Re(Vt),Ce+=Vt.length,N=N.slice(Vt.length),N.length}while(!0)}function Jt(){return/[^a-fA-F0-9]/.test(Z)?(Re(N.join("")),G=h,O):(N.push(Z),j=Z,O+1)}function sr(){return Z==="."||/[eE]/.test(Z)?(N.push(Z),G=E,j=Z,O+1):Z==="x"&&N.length===1&&N[0]==="0"?(G=g,N.push(Z),j=Z,O+1):/[^\d]/.test(Z)?(Re(N.join("")),G=h,O):(N.push(Z),j=Z,O+1)}function wr(){return Z==="f"&&(N.push(Z),j=Z,O+=1),/[eE]/.test(Z)||(Z==="-"||Z==="+")&&/[eE]/.test(j)?(N.push(Z),j=Z,O+1):/[^\d]/.test(Z)?(Re(N.join("")),G=h,O):(N.push(Z),j=Z,O+1)}function cr(){if(/[^\d\w_]/.test(Z)){var $e=N.join("");return ge[$e]?G=x:Pe[$e]?G=L:G=S,Re(N.join("")),G=h,O}return N.push(Z),j=Z,O+1}}},5878:function(i,a,o){"use strict";i.exports=c;var s=o(3250),l=o(2014);function u(f,h,d){var v=Math.abs(s(f,h,d)),_=Math.sqrt(Math.pow(h[0]-d[0],2)+Math.pow(h[1]-d[1],2));return v/_}function c(f,h,d){for(var v=h.length,_=f.length,b=new Array(v),p=new Array(v),k=new Array(v),E=new Array(v),S=0;S>1:(ie>>1)-1}function z(ie){for(var Se=P(ie);;){var Le=Se,Ae=2*ie+1,Fe=2*(ie+1),Pe=ie;if(Ae0;){var Le=T(ie);if(Le>=0){var Ae=P(Le);if(Se0){var ie=j[0];return g(0,te-1),te-=1,z(0),ie}return-1}function G(ie,Se){var Le=j[ie];return k[Le]===Se?ie:(k[Le]=-1/0,O(ie),V(),k[Le]=Se,te+=1,O(te-1))}function Z(ie){if(!E[ie]){E[ie]=!0;var Se=b[ie],Le=p[ie];b[Le]>=0&&(b[Le]=Se),p[Se]>=0&&(p[Se]=Le),N[Se]>=0&&G(N[Se],M(Se)),N[Le]>=0&&G(N[Le],M(Le))}}for(var j=[],N=new Array(v),S=0;S>1;S>=0;--S)z(S);for(;;){var oe=V();if(oe<0||k[oe]>d)break;Z(oe)}for(var _e=[],S=0;S=0&&Le>=0&&Se!==Le){var Ae=N[Se],Fe=N[Le];Ae!==Fe&&me.push([Ae,Fe])}}),l.unique(l.normalize(me)),{positions:_e,edges:me}}},5911:function(i){i.exports=a;function a(o,s,l){var u=s[0],c=s[1],f=s[2],h=l[0],d=l[1],v=l[2];return o[0]=c*v-f*d,o[1]=f*h-u*v,o[2]=u*d-c*h,o}},5964:function(i){"use strict";i.exports=function(a){return!a&&a!==0?"":a.toString()}},5995:function(i,a,o){"use strict";i.exports=u;var s=o(7642),l=o(6037);function u(c,f){return s(f).filter(function(h){for(var d=new Array(h.length),v=0;v2&&T[1]>2&&M(P.pick(-1,-1).lo(1,1).hi(T[0]-2,T[1]-2),g.pick(-1,-1,0).lo(1,1).hi(T[0]-2,T[1]-2),g.pick(-1,-1,1).lo(1,1).hi(T[0]-2,T[1]-2)),T[1]>2&&(C(P.pick(0,-1).lo(1).hi(T[1]-2),g.pick(0,-1,1).lo(1).hi(T[1]-2)),x(g.pick(0,-1,0).lo(1).hi(T[1]-2))),T[1]>2&&(C(P.pick(T[0]-1,-1).lo(1).hi(T[1]-2),g.pick(T[0]-1,-1,1).lo(1).hi(T[1]-2)),x(g.pick(T[0]-1,-1,0).lo(1).hi(T[1]-2))),T[0]>2&&(C(P.pick(-1,0).lo(1).hi(T[0]-2),g.pick(-1,0,0).lo(1).hi(T[0]-2)),x(g.pick(-1,0,1).lo(1).hi(T[0]-2))),T[0]>2&&(C(P.pick(-1,T[1]-1).lo(1).hi(T[0]-2),g.pick(-1,T[1]-1,0).lo(1).hi(T[0]-2)),x(g.pick(-1,T[1]-1,1).lo(1).hi(T[0]-2))),g.set(0,0,0,0),g.set(0,0,1,0),g.set(T[0]-1,0,0,0),g.set(T[0]-1,0,1,0),g.set(0,T[1]-1,0,0),g.set(0,T[1]-1,1,0),g.set(T[0]-1,T[1]-1,0,0),g.set(T[0]-1,T[1]-1,1,0),g}}function S(L){var x=L.join(),T=v[x];if(T)return T;for(var C=L.length,M=[b,p],g=1;g<=C;++g)M.push(k(g));var P=E,T=P.apply(void 0,M);return v[x]=T,T}i.exports=function(x,C,M){if(Array.isArray(M)||(typeof M=="string"?M=s(C.dimension,M):M=s(C.dimension,"clamp")),C.size===0)return x;if(C.dimension===0)return x.set(0),x;var g=S(M);return g(x,C)}},6204:function(i){"use strict";i.exports=a;function a(o){var s,l,u,c=o.length,f=0;for(s=0;sv&&(v=s.length(O)),T&&!P){var V=2*s.distance(L,z)/(s.length(x)+s.length(O));V?(M=Math.min(M,V),g=!1):g=!0}g||(L=z,x=O),C.push(O)}var G=[_,p,E],Z=[b,k,S];c&&(c[0]=G,c[1]=Z),v===0&&(v=1);var j=1/v;isFinite(M)||(M=1),d.vectorScale=M;var N=u.coneSize||(P?1:.5);u.absoluteConeSize&&(N=u.absoluteConeSize*j),d.coneScale=N;for(var T=0,H=0;T_e&&(Z|=1<_e){Z|=1<d[O][1])&&(Fe=O);for(var Pe=-1,O=0;O<3;++O){var ge=Fe^1<d[Re][0]&&(Re=ge)}}var ce=E;ce[0]=ce[1]=ce[2]=0,ce[s.log2(Pe^Fe)]=Fe&Pe,ce[s.log2(Fe^Re)]=Feℜvar Ze=Re^7;Ze===Z||Ze===Ae?(Ze=Pe^7,ce[s.log2(Re^Ze)]=Ze&Re):ce[s.log2(Pe^Ze)]=Ze&Pe;for(var ut=S,pt=Z,H=0;H<3;++H)pt&1<=0&&(d=f.length-h-1);var v=Math.pow(10,d),_=Math.round(u*c*v),b=_+"";if(b.indexOf("e")>=0)return b;var p=_/v,k=_%v;_<0?(p=-Math.ceil(p)|0,k=-k|0):(p=Math.floor(p)|0,k=k|0);var E=""+p;if(_<0&&(E="-"+E),d){for(var S=""+k;S.length=u[0][h];--_)d.push({x:_*c[h],text:o(c[h],_)});f.push(d)}return f}function l(u,c){for(var f=0;f<3;++f){if(u[f].length!==c[f].length)return!1;for(var h=0;hL+1)throw new Error(E+" map requires nshades to be at least size "+k.length);Array.isArray(d.alpha)?d.alpha.length!==2?x=[1,1]:x=d.alpha.slice():typeof d.alpha=="number"?x=[d.alpha,d.alpha]:x=[1,1],v=k.map(function(z){return Math.round(z.index*L)}),x[0]=Math.min(Math.max(x[0],0),1),x[1]=Math.min(Math.max(x[1],0),1);var M=k.map(function(z,O){var V=k[O].index,G=k[O].rgb.slice();return G.length===4&&G[3]>=0&&G[3]<=1||(G[3]=x[0]+(x[1]-x[0])*V),G}),g=[];for(C=0;C>1,Z=d(P[G],T);Z<=0?(Z===0&&(V=G),z=G+1):Z>0&&(O=G-1)}return V}s=p;function k(P,T){for(var z=new Array(P.length),O=0,V=z.length;O=P.length||d(P[Ee],G)!==0););}return z}s=k;function E(P,T){if(!T)return k(b(L(P,0)),P,0);for(var z=new Array(T),O=0;O>>j&1&&N.push(V[j]);T.push(N)}return _(T)}s=S;function L(P,T){if(T<0)return[];for(var z=[],O=(1<0?N:j},f.min=function(N,j){return N.cmp(j)<0?N:j},f.prototype._init=function(N,j,re){if(typeof N=="number")return this._initNumber(N,j,re);if(typeof N=="object")return this._initArray(N,j,re);j==="hex"&&(j=16),u(j===(j|0)&&j>=2&&j<=36),N=N.toString().replace(/\s+/g,"");var oe=0;N[0]==="-"&&(oe++,this.negative=1),oe=0;oe-=3)Ee=N[oe]|N[oe-1]<<8|N[oe-2]<<16,this.words[_e]|=Ee<>>26-Ce&67108863,Ce+=24,Ce>=26&&(Ce-=26,_e++);else if(re==="le")for(oe=0,_e=0;oe>>26-Ce&67108863,Ce+=24,Ce>=26&&(Ce-=26,_e++);return this.strip()};function d(H,N){var j=H.charCodeAt(N);return j>=65&&j<=70?j-55:j>=97&&j<=102?j-87:j-48&15}function v(H,N,j){var re=d(H,j);return j-1>=N&&(re|=d(H,j-1)<<4),re}f.prototype._parseHex=function(N,j,re){this.length=Math.ceil((N.length-j)/6),this.words=new Array(this.length);for(var oe=0;oe=j;oe-=2)Ce=v(N,j,oe)<<_e,this.words[Ee]|=Ce&67108863,_e>=18?(_e-=18,Ee+=1,this.words[Ee]|=Ce>>>26):_e+=8;else{var me=N.length-j;for(oe=me%2===0?j+1:j;oe=18?(_e-=18,Ee+=1,this.words[Ee]|=Ce>>>26):_e+=8}this.strip()};function _(H,N,j,re){for(var oe=0,_e=Math.min(H.length,j),Ee=N;Ee<_e;Ee++){var Ce=H.charCodeAt(Ee)-48;oe*=re,Ce>=49?oe+=Ce-49+10:Ce>=17?oe+=Ce-17+10:oe+=Ce}return oe}f.prototype._parseBase=function(N,j,re){this.words=[0],this.length=1;for(var oe=0,_e=1;_e<=67108863;_e*=j)oe++;oe--,_e=_e/j|0;for(var Ee=N.length-re,Ce=Ee%oe,me=Math.min(Ee,Ee-Ce)+re,ie=0,Se=re;Se1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},f.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},f.prototype.inspect=function(){return(this.red?""};var b=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],p=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],k=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];f.prototype.toString=function(N,j){N=N||10,j=j|0||1;var re;if(N===16||N==="hex"){re="";for(var oe=0,_e=0,Ee=0;Ee>>24-oe&16777215,_e!==0||Ee!==this.length-1?re=b[6-me.length]+me+re:re=me+re,oe+=2,oe>=26&&(oe-=26,Ee--)}for(_e!==0&&(re=_e.toString(16)+re);re.length%j!==0;)re="0"+re;return this.negative!==0&&(re="-"+re),re}if(N===(N|0)&&N>=2&&N<=36){var ie=p[N],Se=k[N];re="";var Le=this.clone();for(Le.negative=0;!Le.isZero();){var Ae=Le.modn(Se).toString(N);Le=Le.idivn(Se),Le.isZero()?re=Ae+re:re=b[ie-Ae.length]+Ae+re}for(this.isZero()&&(re="0"+re);re.length%j!==0;)re="0"+re;return this.negative!==0&&(re="-"+re),re}u(!1,"Base should be between 2 and 36")},f.prototype.toNumber=function(){var N=this.words[0];return this.length===2?N+=this.words[1]*67108864:this.length===3&&this.words[2]===1?N+=4503599627370496+this.words[1]*67108864:this.length>2&&u(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-N:N},f.prototype.toJSON=function(){return this.toString(16)},f.prototype.toBuffer=function(N,j){return u(typeof h!="undefined"),this.toArrayLike(h,N,j)},f.prototype.toArray=function(N,j){return this.toArrayLike(Array,N,j)},f.prototype.toArrayLike=function(N,j,re){var oe=this.byteLength(),_e=re||Math.max(1,oe);u(oe<=_e,"byte array longer than desired length"),u(_e>0,"Requested array length <= 0"),this.strip();var Ee=j==="le",Ce=new N(_e),me,ie,Se=this.clone();if(Ee){for(ie=0;!Se.isZero();ie++)me=Se.andln(255),Se.iushrn(8),Ce[ie]=me;for(;ie<_e;ie++)Ce[ie]=0}else{for(ie=0;ie<_e-oe;ie++)Ce[ie]=0;for(ie=0;!Se.isZero();ie++)me=Se.andln(255),Se.iushrn(8),Ce[_e-ie-1]=me}return Ce},Math.clz32?f.prototype._countBits=function(N){return 32-Math.clz32(N)}:f.prototype._countBits=function(N){var j=N,re=0;return j>=4096&&(re+=13,j>>>=13),j>=64&&(re+=7,j>>>=7),j>=8&&(re+=4,j>>>=4),j>=2&&(re+=2,j>>>=2),re+j},f.prototype._zeroBits=function(N){if(N===0)return 26;var j=N,re=0;return(j&8191)===0&&(re+=13,j>>>=13),(j&127)===0&&(re+=7,j>>>=7),(j&15)===0&&(re+=4,j>>>=4),(j&3)===0&&(re+=2,j>>>=2),(j&1)===0&&re++,re},f.prototype.bitLength=function(){var N=this.words[this.length-1],j=this._countBits(N);return(this.length-1)*26+j};function E(H){for(var N=new Array(H.bitLength()),j=0;j>>oe}return N}f.prototype.zeroBits=function(){if(this.isZero())return 0;for(var N=0,j=0;jN.length?this.clone().ior(N):N.clone().ior(this)},f.prototype.uor=function(N){return this.length>N.length?this.clone().iuor(N):N.clone().iuor(this)},f.prototype.iuand=function(N){var j;this.length>N.length?j=N:j=this;for(var re=0;reN.length?this.clone().iand(N):N.clone().iand(this)},f.prototype.uand=function(N){return this.length>N.length?this.clone().iuand(N):N.clone().iuand(this)},f.prototype.iuxor=function(N){var j,re;this.length>N.length?(j=this,re=N):(j=N,re=this);for(var oe=0;oeN.length?this.clone().ixor(N):N.clone().ixor(this)},f.prototype.uxor=function(N){return this.length>N.length?this.clone().iuxor(N):N.clone().iuxor(this)},f.prototype.inotn=function(N){u(typeof N=="number"&&N>=0);var j=Math.ceil(N/26)|0,re=N%26;this._expand(j),re>0&&j--;for(var oe=0;oe0&&(this.words[oe]=~this.words[oe]&67108863>>26-re),this.strip()},f.prototype.notn=function(N){return this.clone().inotn(N)},f.prototype.setn=function(N,j){u(typeof N=="number"&&N>=0);var re=N/26|0,oe=N%26;return this._expand(re+1),j?this.words[re]=this.words[re]|1<N.length?(re=this,oe=N):(re=N,oe=this);for(var _e=0,Ee=0;Ee>>26;for(;_e!==0&&Ee>>26;if(this.length=re.length,_e!==0)this.words[this.length]=_e,this.length++;else if(re!==this)for(;EeN.length?this.clone().iadd(N):N.clone().iadd(this)},f.prototype.isub=function(N){if(N.negative!==0){N.negative=0;var j=this.iadd(N);return N.negative=1,j._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(N),this.negative=1,this._normSign();var re=this.cmp(N);if(re===0)return this.negative=0,this.length=1,this.words[0]=0,this;var oe,_e;re>0?(oe=this,_e=N):(oe=N,_e=this);for(var Ee=0,Ce=0;Ce<_e.length;Ce++)j=(oe.words[Ce]|0)-(_e.words[Ce]|0)+Ee,Ee=j>>26,this.words[Ce]=j&67108863;for(;Ee!==0&&Ce>26,this.words[Ce]=j&67108863;if(Ee===0&&Ce>>26,Le=me&67108863,Ae=Math.min(ie,N.length-1),Fe=Math.max(0,ie-H.length+1);Fe<=Ae;Fe++){var Pe=ie-Fe|0;oe=H.words[Pe]|0,_e=N.words[Fe]|0,Ee=oe*_e+Le,Se+=Ee/67108864|0,Le=Ee&67108863}j.words[ie]=Le|0,me=Se|0}return me!==0?j.words[ie]=me|0:j.length--,j.strip()}var L=function(N,j,re){var oe=N.words,_e=j.words,Ee=re.words,Ce=0,me,ie,Se,Le=oe[0]|0,Ae=Le&8191,Fe=Le>>>13,Pe=oe[1]|0,ge=Pe&8191,Re=Pe>>>13,ce=oe[2]|0,Ze=ce&8191,ut=ce>>>13,pt=oe[3]|0,Zt=pt&8191,st=pt>>>13,lt=oe[4]|0,Gt=lt&8191,Nt=lt>>>13,Jt=oe[5]|0,sr=Jt&8191,wr=Jt>>>13,cr=oe[6]|0,$e=cr&8191,St=cr>>>13,Qt=oe[7]|0,Vt=Qt&8191,_t=Qt>>>13,It=oe[8]|0,mt=It&8191,er=It>>>13,lr=oe[9]|0,Tr=lr&8191,Lr=lr>>>13,ti=_e[0]|0,Br=ti&8191,Vr=ti>>>13,dt=_e[1]|0,Ge=dt&8191,Je=dt>>>13,je=_e[2]|0,tt=je&8191,xt=je>>>13,Ie=_e[3]|0,xe=Ie&8191,ke=Ie>>>13,vt=_e[4]|0,ir=vt&8191,ar=vt>>>13,vr=_e[5]|0,ii=vr&8191,pi=vr>>>13,$r=_e[6]|0,di=$r&8191,ji=$r>>>13,In=_e[7]|0,wi=In&8191,On=In>>>13,qn=_e[8]|0,Fn=qn&8191,ra=qn>>>13,la=_e[9]|0,Ut=la&8191,wt=la>>>13;re.negative=N.negative^j.negative,re.length=19,me=Math.imul(Ae,Br),ie=Math.imul(Ae,Vr),ie=ie+Math.imul(Fe,Br)|0,Se=Math.imul(Fe,Vr);var rr=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(rr>>>26)|0,rr&=67108863,me=Math.imul(ge,Br),ie=Math.imul(ge,Vr),ie=ie+Math.imul(Re,Br)|0,Se=Math.imul(Re,Vr),me=me+Math.imul(Ae,Ge)|0,ie=ie+Math.imul(Ae,Je)|0,ie=ie+Math.imul(Fe,Ge)|0,Se=Se+Math.imul(Fe,Je)|0;var nr=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(nr>>>26)|0,nr&=67108863,me=Math.imul(Ze,Br),ie=Math.imul(Ze,Vr),ie=ie+Math.imul(ut,Br)|0,Se=Math.imul(ut,Vr),me=me+Math.imul(ge,Ge)|0,ie=ie+Math.imul(ge,Je)|0,ie=ie+Math.imul(Re,Ge)|0,Se=Se+Math.imul(Re,Je)|0,me=me+Math.imul(Ae,tt)|0,ie=ie+Math.imul(Ae,xt)|0,ie=ie+Math.imul(Fe,tt)|0,Se=Se+Math.imul(Fe,xt)|0;var Er=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Er>>>26)|0,Er&=67108863,me=Math.imul(Zt,Br),ie=Math.imul(Zt,Vr),ie=ie+Math.imul(st,Br)|0,Se=Math.imul(st,Vr),me=me+Math.imul(Ze,Ge)|0,ie=ie+Math.imul(Ze,Je)|0,ie=ie+Math.imul(ut,Ge)|0,Se=Se+Math.imul(ut,Je)|0,me=me+Math.imul(ge,tt)|0,ie=ie+Math.imul(ge,xt)|0,ie=ie+Math.imul(Re,tt)|0,Se=Se+Math.imul(Re,xt)|0,me=me+Math.imul(Ae,xe)|0,ie=ie+Math.imul(Ae,ke)|0,ie=ie+Math.imul(Fe,xe)|0,Se=Se+Math.imul(Fe,ke)|0;var Xr=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Xr>>>26)|0,Xr&=67108863,me=Math.imul(Gt,Br),ie=Math.imul(Gt,Vr),ie=ie+Math.imul(Nt,Br)|0,Se=Math.imul(Nt,Vr),me=me+Math.imul(Zt,Ge)|0,ie=ie+Math.imul(Zt,Je)|0,ie=ie+Math.imul(st,Ge)|0,Se=Se+Math.imul(st,Je)|0,me=me+Math.imul(Ze,tt)|0,ie=ie+Math.imul(Ze,xt)|0,ie=ie+Math.imul(ut,tt)|0,Se=Se+Math.imul(ut,xt)|0,me=me+Math.imul(ge,xe)|0,ie=ie+Math.imul(ge,ke)|0,ie=ie+Math.imul(Re,xe)|0,Se=Se+Math.imul(Re,ke)|0,me=me+Math.imul(Ae,ir)|0,ie=ie+Math.imul(Ae,ar)|0,ie=ie+Math.imul(Fe,ir)|0,Se=Se+Math.imul(Fe,ar)|0;var ri=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(ri>>>26)|0,ri&=67108863,me=Math.imul(sr,Br),ie=Math.imul(sr,Vr),ie=ie+Math.imul(wr,Br)|0,Se=Math.imul(wr,Vr),me=me+Math.imul(Gt,Ge)|0,ie=ie+Math.imul(Gt,Je)|0,ie=ie+Math.imul(Nt,Ge)|0,Se=Se+Math.imul(Nt,Je)|0,me=me+Math.imul(Zt,tt)|0,ie=ie+Math.imul(Zt,xt)|0,ie=ie+Math.imul(st,tt)|0,Se=Se+Math.imul(st,xt)|0,me=me+Math.imul(Ze,xe)|0,ie=ie+Math.imul(Ze,ke)|0,ie=ie+Math.imul(ut,xe)|0,Se=Se+Math.imul(ut,ke)|0,me=me+Math.imul(ge,ir)|0,ie=ie+Math.imul(ge,ar)|0,ie=ie+Math.imul(Re,ir)|0,Se=Se+Math.imul(Re,ar)|0,me=me+Math.imul(Ae,ii)|0,ie=ie+Math.imul(Ae,pi)|0,ie=ie+Math.imul(Fe,ii)|0,Se=Se+Math.imul(Fe,pi)|0;var Qr=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Qr>>>26)|0,Qr&=67108863,me=Math.imul($e,Br),ie=Math.imul($e,Vr),ie=ie+Math.imul(St,Br)|0,Se=Math.imul(St,Vr),me=me+Math.imul(sr,Ge)|0,ie=ie+Math.imul(sr,Je)|0,ie=ie+Math.imul(wr,Ge)|0,Se=Se+Math.imul(wr,Je)|0,me=me+Math.imul(Gt,tt)|0,ie=ie+Math.imul(Gt,xt)|0,ie=ie+Math.imul(Nt,tt)|0,Se=Se+Math.imul(Nt,xt)|0,me=me+Math.imul(Zt,xe)|0,ie=ie+Math.imul(Zt,ke)|0,ie=ie+Math.imul(st,xe)|0,Se=Se+Math.imul(st,ke)|0,me=me+Math.imul(Ze,ir)|0,ie=ie+Math.imul(Ze,ar)|0,ie=ie+Math.imul(ut,ir)|0,Se=Se+Math.imul(ut,ar)|0,me=me+Math.imul(ge,ii)|0,ie=ie+Math.imul(ge,pi)|0,ie=ie+Math.imul(Re,ii)|0,Se=Se+Math.imul(Re,pi)|0,me=me+Math.imul(Ae,di)|0,ie=ie+Math.imul(Ae,ji)|0,ie=ie+Math.imul(Fe,di)|0,Se=Se+Math.imul(Fe,ji)|0;var Oi=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Oi>>>26)|0,Oi&=67108863,me=Math.imul(Vt,Br),ie=Math.imul(Vt,Vr),ie=ie+Math.imul(_t,Br)|0,Se=Math.imul(_t,Vr),me=me+Math.imul($e,Ge)|0,ie=ie+Math.imul($e,Je)|0,ie=ie+Math.imul(St,Ge)|0,Se=Se+Math.imul(St,Je)|0,me=me+Math.imul(sr,tt)|0,ie=ie+Math.imul(sr,xt)|0,ie=ie+Math.imul(wr,tt)|0,Se=Se+Math.imul(wr,xt)|0,me=me+Math.imul(Gt,xe)|0,ie=ie+Math.imul(Gt,ke)|0,ie=ie+Math.imul(Nt,xe)|0,Se=Se+Math.imul(Nt,ke)|0,me=me+Math.imul(Zt,ir)|0,ie=ie+Math.imul(Zt,ar)|0,ie=ie+Math.imul(st,ir)|0,Se=Se+Math.imul(st,ar)|0,me=me+Math.imul(Ze,ii)|0,ie=ie+Math.imul(Ze,pi)|0,ie=ie+Math.imul(ut,ii)|0,Se=Se+Math.imul(ut,pi)|0,me=me+Math.imul(ge,di)|0,ie=ie+Math.imul(ge,ji)|0,ie=ie+Math.imul(Re,di)|0,Se=Se+Math.imul(Re,ji)|0,me=me+Math.imul(Ae,wi)|0,ie=ie+Math.imul(Ae,On)|0,ie=ie+Math.imul(Fe,wi)|0,Se=Se+Math.imul(Fe,On)|0;var $i=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+($i>>>26)|0,$i&=67108863,me=Math.imul(mt,Br),ie=Math.imul(mt,Vr),ie=ie+Math.imul(er,Br)|0,Se=Math.imul(er,Vr),me=me+Math.imul(Vt,Ge)|0,ie=ie+Math.imul(Vt,Je)|0,ie=ie+Math.imul(_t,Ge)|0,Se=Se+Math.imul(_t,Je)|0,me=me+Math.imul($e,tt)|0,ie=ie+Math.imul($e,xt)|0,ie=ie+Math.imul(St,tt)|0,Se=Se+Math.imul(St,xt)|0,me=me+Math.imul(sr,xe)|0,ie=ie+Math.imul(sr,ke)|0,ie=ie+Math.imul(wr,xe)|0,Se=Se+Math.imul(wr,ke)|0,me=me+Math.imul(Gt,ir)|0,ie=ie+Math.imul(Gt,ar)|0,ie=ie+Math.imul(Nt,ir)|0,Se=Se+Math.imul(Nt,ar)|0,me=me+Math.imul(Zt,ii)|0,ie=ie+Math.imul(Zt,pi)|0,ie=ie+Math.imul(st,ii)|0,Se=Se+Math.imul(st,pi)|0,me=me+Math.imul(Ze,di)|0,ie=ie+Math.imul(Ze,ji)|0,ie=ie+Math.imul(ut,di)|0,Se=Se+Math.imul(ut,ji)|0,me=me+Math.imul(ge,wi)|0,ie=ie+Math.imul(ge,On)|0,ie=ie+Math.imul(Re,wi)|0,Se=Se+Math.imul(Re,On)|0,me=me+Math.imul(Ae,Fn)|0,ie=ie+Math.imul(Ae,ra)|0,ie=ie+Math.imul(Fe,Fn)|0,Se=Se+Math.imul(Fe,ra)|0;var tn=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(tn>>>26)|0,tn&=67108863,me=Math.imul(Tr,Br),ie=Math.imul(Tr,Vr),ie=ie+Math.imul(Lr,Br)|0,Se=Math.imul(Lr,Vr),me=me+Math.imul(mt,Ge)|0,ie=ie+Math.imul(mt,Je)|0,ie=ie+Math.imul(er,Ge)|0,Se=Se+Math.imul(er,Je)|0,me=me+Math.imul(Vt,tt)|0,ie=ie+Math.imul(Vt,xt)|0,ie=ie+Math.imul(_t,tt)|0,Se=Se+Math.imul(_t,xt)|0,me=me+Math.imul($e,xe)|0,ie=ie+Math.imul($e,ke)|0,ie=ie+Math.imul(St,xe)|0,Se=Se+Math.imul(St,ke)|0,me=me+Math.imul(sr,ir)|0,ie=ie+Math.imul(sr,ar)|0,ie=ie+Math.imul(wr,ir)|0,Se=Se+Math.imul(wr,ar)|0,me=me+Math.imul(Gt,ii)|0,ie=ie+Math.imul(Gt,pi)|0,ie=ie+Math.imul(Nt,ii)|0,Se=Se+Math.imul(Nt,pi)|0,me=me+Math.imul(Zt,di)|0,ie=ie+Math.imul(Zt,ji)|0,ie=ie+Math.imul(st,di)|0,Se=Se+Math.imul(st,ji)|0,me=me+Math.imul(Ze,wi)|0,ie=ie+Math.imul(Ze,On)|0,ie=ie+Math.imul(ut,wi)|0,Se=Se+Math.imul(ut,On)|0,me=me+Math.imul(ge,Fn)|0,ie=ie+Math.imul(ge,ra)|0,ie=ie+Math.imul(Re,Fn)|0,Se=Se+Math.imul(Re,ra)|0,me=me+Math.imul(Ae,Ut)|0,ie=ie+Math.imul(Ae,wt)|0,ie=ie+Math.imul(Fe,Ut)|0,Se=Se+Math.imul(Fe,wt)|0;var fn=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(fn>>>26)|0,fn&=67108863,me=Math.imul(Tr,Ge),ie=Math.imul(Tr,Je),ie=ie+Math.imul(Lr,Ge)|0,Se=Math.imul(Lr,Je),me=me+Math.imul(mt,tt)|0,ie=ie+Math.imul(mt,xt)|0,ie=ie+Math.imul(er,tt)|0,Se=Se+Math.imul(er,xt)|0,me=me+Math.imul(Vt,xe)|0,ie=ie+Math.imul(Vt,ke)|0,ie=ie+Math.imul(_t,xe)|0,Se=Se+Math.imul(_t,ke)|0,me=me+Math.imul($e,ir)|0,ie=ie+Math.imul($e,ar)|0,ie=ie+Math.imul(St,ir)|0,Se=Se+Math.imul(St,ar)|0,me=me+Math.imul(sr,ii)|0,ie=ie+Math.imul(sr,pi)|0,ie=ie+Math.imul(wr,ii)|0,Se=Se+Math.imul(wr,pi)|0,me=me+Math.imul(Gt,di)|0,ie=ie+Math.imul(Gt,ji)|0,ie=ie+Math.imul(Nt,di)|0,Se=Se+Math.imul(Nt,ji)|0,me=me+Math.imul(Zt,wi)|0,ie=ie+Math.imul(Zt,On)|0,ie=ie+Math.imul(st,wi)|0,Se=Se+Math.imul(st,On)|0,me=me+Math.imul(Ze,Fn)|0,ie=ie+Math.imul(Ze,ra)|0,ie=ie+Math.imul(ut,Fn)|0,Se=Se+Math.imul(ut,ra)|0,me=me+Math.imul(ge,Ut)|0,ie=ie+Math.imul(ge,wt)|0,ie=ie+Math.imul(Re,Ut)|0,Se=Se+Math.imul(Re,wt)|0;var yn=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(yn>>>26)|0,yn&=67108863,me=Math.imul(Tr,tt),ie=Math.imul(Tr,xt),ie=ie+Math.imul(Lr,tt)|0,Se=Math.imul(Lr,xt),me=me+Math.imul(mt,xe)|0,ie=ie+Math.imul(mt,ke)|0,ie=ie+Math.imul(er,xe)|0,Se=Se+Math.imul(er,ke)|0,me=me+Math.imul(Vt,ir)|0,ie=ie+Math.imul(Vt,ar)|0,ie=ie+Math.imul(_t,ir)|0,Se=Se+Math.imul(_t,ar)|0,me=me+Math.imul($e,ii)|0,ie=ie+Math.imul($e,pi)|0,ie=ie+Math.imul(St,ii)|0,Se=Se+Math.imul(St,pi)|0,me=me+Math.imul(sr,di)|0,ie=ie+Math.imul(sr,ji)|0,ie=ie+Math.imul(wr,di)|0,Se=Se+Math.imul(wr,ji)|0,me=me+Math.imul(Gt,wi)|0,ie=ie+Math.imul(Gt,On)|0,ie=ie+Math.imul(Nt,wi)|0,Se=Se+Math.imul(Nt,On)|0,me=me+Math.imul(Zt,Fn)|0,ie=ie+Math.imul(Zt,ra)|0,ie=ie+Math.imul(st,Fn)|0,Se=Se+Math.imul(st,ra)|0,me=me+Math.imul(Ze,Ut)|0,ie=ie+Math.imul(Ze,wt)|0,ie=ie+Math.imul(ut,Ut)|0,Se=Se+Math.imul(ut,wt)|0;var Sn=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Sn>>>26)|0,Sn&=67108863,me=Math.imul(Tr,xe),ie=Math.imul(Tr,ke),ie=ie+Math.imul(Lr,xe)|0,Se=Math.imul(Lr,ke),me=me+Math.imul(mt,ir)|0,ie=ie+Math.imul(mt,ar)|0,ie=ie+Math.imul(er,ir)|0,Se=Se+Math.imul(er,ar)|0,me=me+Math.imul(Vt,ii)|0,ie=ie+Math.imul(Vt,pi)|0,ie=ie+Math.imul(_t,ii)|0,Se=Se+Math.imul(_t,pi)|0,me=me+Math.imul($e,di)|0,ie=ie+Math.imul($e,ji)|0,ie=ie+Math.imul(St,di)|0,Se=Se+Math.imul(St,ji)|0,me=me+Math.imul(sr,wi)|0,ie=ie+Math.imul(sr,On)|0,ie=ie+Math.imul(wr,wi)|0,Se=Se+Math.imul(wr,On)|0,me=me+Math.imul(Gt,Fn)|0,ie=ie+Math.imul(Gt,ra)|0,ie=ie+Math.imul(Nt,Fn)|0,Se=Se+Math.imul(Nt,ra)|0,me=me+Math.imul(Zt,Ut)|0,ie=ie+Math.imul(Zt,wt)|0,ie=ie+Math.imul(st,Ut)|0,Se=Se+Math.imul(st,wt)|0;var Ba=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Ba>>>26)|0,Ba&=67108863,me=Math.imul(Tr,ir),ie=Math.imul(Tr,ar),ie=ie+Math.imul(Lr,ir)|0,Se=Math.imul(Lr,ar),me=me+Math.imul(mt,ii)|0,ie=ie+Math.imul(mt,pi)|0,ie=ie+Math.imul(er,ii)|0,Se=Se+Math.imul(er,pi)|0,me=me+Math.imul(Vt,di)|0,ie=ie+Math.imul(Vt,ji)|0,ie=ie+Math.imul(_t,di)|0,Se=Se+Math.imul(_t,ji)|0,me=me+Math.imul($e,wi)|0,ie=ie+Math.imul($e,On)|0,ie=ie+Math.imul(St,wi)|0,Se=Se+Math.imul(St,On)|0,me=me+Math.imul(sr,Fn)|0,ie=ie+Math.imul(sr,ra)|0,ie=ie+Math.imul(wr,Fn)|0,Se=Se+Math.imul(wr,ra)|0,me=me+Math.imul(Gt,Ut)|0,ie=ie+Math.imul(Gt,wt)|0,ie=ie+Math.imul(Nt,Ut)|0,Se=Se+Math.imul(Nt,wt)|0;var ua=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(ua>>>26)|0,ua&=67108863,me=Math.imul(Tr,ii),ie=Math.imul(Tr,pi),ie=ie+Math.imul(Lr,ii)|0,Se=Math.imul(Lr,pi),me=me+Math.imul(mt,di)|0,ie=ie+Math.imul(mt,ji)|0,ie=ie+Math.imul(er,di)|0,Se=Se+Math.imul(er,ji)|0,me=me+Math.imul(Vt,wi)|0,ie=ie+Math.imul(Vt,On)|0,ie=ie+Math.imul(_t,wi)|0,Se=Se+Math.imul(_t,On)|0,me=me+Math.imul($e,Fn)|0,ie=ie+Math.imul($e,ra)|0,ie=ie+Math.imul(St,Fn)|0,Se=Se+Math.imul(St,ra)|0,me=me+Math.imul(sr,Ut)|0,ie=ie+Math.imul(sr,wt)|0,ie=ie+Math.imul(wr,Ut)|0,Se=Se+Math.imul(wr,wt)|0;var ma=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(ma>>>26)|0,ma&=67108863,me=Math.imul(Tr,di),ie=Math.imul(Tr,ji),ie=ie+Math.imul(Lr,di)|0,Se=Math.imul(Lr,ji),me=me+Math.imul(mt,wi)|0,ie=ie+Math.imul(mt,On)|0,ie=ie+Math.imul(er,wi)|0,Se=Se+Math.imul(er,On)|0,me=me+Math.imul(Vt,Fn)|0,ie=ie+Math.imul(Vt,ra)|0,ie=ie+Math.imul(_t,Fn)|0,Se=Se+Math.imul(_t,ra)|0,me=me+Math.imul($e,Ut)|0,ie=ie+Math.imul($e,wt)|0,ie=ie+Math.imul(St,Ut)|0,Se=Se+Math.imul(St,wt)|0;var Wa=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Wa>>>26)|0,Wa&=67108863,me=Math.imul(Tr,wi),ie=Math.imul(Tr,On),ie=ie+Math.imul(Lr,wi)|0,Se=Math.imul(Lr,On),me=me+Math.imul(mt,Fn)|0,ie=ie+Math.imul(mt,ra)|0,ie=ie+Math.imul(er,Fn)|0,Se=Se+Math.imul(er,ra)|0,me=me+Math.imul(Vt,Ut)|0,ie=ie+Math.imul(Vt,wt)|0,ie=ie+Math.imul(_t,Ut)|0,Se=Se+Math.imul(_t,wt)|0;var Fa=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Fa>>>26)|0,Fa&=67108863,me=Math.imul(Tr,Fn),ie=Math.imul(Tr,ra),ie=ie+Math.imul(Lr,Fn)|0,Se=Math.imul(Lr,ra),me=me+Math.imul(mt,Ut)|0,ie=ie+Math.imul(mt,wt)|0,ie=ie+Math.imul(er,Ut)|0,Se=Se+Math.imul(er,wt)|0;var Wo=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Wo>>>26)|0,Wo&=67108863,me=Math.imul(Tr,Ut),ie=Math.imul(Tr,wt),ie=ie+Math.imul(Lr,Ut)|0,Se=Math.imul(Lr,wt);var da=(Ce+me|0)+((ie&8191)<<13)|0;return Ce=(Se+(ie>>>13)|0)+(da>>>26)|0,da&=67108863,Ee[0]=rr,Ee[1]=nr,Ee[2]=Er,Ee[3]=Xr,Ee[4]=ri,Ee[5]=Qr,Ee[6]=Oi,Ee[7]=$i,Ee[8]=tn,Ee[9]=fn,Ee[10]=yn,Ee[11]=Sn,Ee[12]=Ba,Ee[13]=ua,Ee[14]=ma,Ee[15]=Wa,Ee[16]=Fa,Ee[17]=Wo,Ee[18]=da,Ce!==0&&(Ee[19]=Ce,re.length++),re};Math.imul||(L=S);function x(H,N,j){j.negative=N.negative^H.negative,j.length=H.length+N.length;for(var re=0,oe=0,_e=0;_e>>26)|0,oe+=Ee>>>26,Ee&=67108863}j.words[_e]=Ce,re=Ee,Ee=oe}return re!==0?j.words[_e]=re:j.length--,j.strip()}function C(H,N,j){var re=new M;return re.mulp(H,N,j)}f.prototype.mulTo=function(N,j){var re,oe=this.length+N.length;return this.length===10&&N.length===10?re=L(this,N,j):oe<63?re=S(this,N,j):oe<1024?re=x(this,N,j):re=C(this,N,j),re};function M(H,N){this.x=H,this.y=N}M.prototype.makeRBT=function(N){for(var j=new Array(N),re=f.prototype._countBits(N)-1,oe=0;oe>=1;return oe},M.prototype.permute=function(N,j,re,oe,_e,Ee){for(var Ce=0;Ce>>1)_e++;return 1<<_e+1+oe},M.prototype.conjugate=function(N,j,re){if(!(re<=1))for(var oe=0;oe>>13,re[2*Ee+1]=_e&8191,_e=_e>>>13;for(Ee=2*j;Ee>=26,j+=oe/67108864|0,j+=_e>>>26,this.words[re]=_e&67108863}return j!==0&&(this.words[re]=j,this.length++),this},f.prototype.muln=function(N){return this.clone().imuln(N)},f.prototype.sqr=function(){return this.mul(this)},f.prototype.isqr=function(){return this.imul(this.clone())},f.prototype.pow=function(N){var j=E(N);if(j.length===0)return new f(1);for(var re=this,oe=0;oe=0);var j=N%26,re=(N-j)/26,oe=67108863>>>26-j<<26-j,_e;if(j!==0){var Ee=0;for(_e=0;_e>>26-j}Ee&&(this.words[_e]=Ee,this.length++)}if(re!==0){for(_e=this.length-1;_e>=0;_e--)this.words[_e+re]=this.words[_e];for(_e=0;_e=0);var oe;j?oe=(j-j%26)/26:oe=0;var _e=N%26,Ee=Math.min((N-_e)/26,this.length),Ce=67108863^67108863>>>_e<<_e,me=re;if(oe-=Ee,oe=Math.max(0,oe),me){for(var ie=0;ieEe)for(this.length-=Ee,ie=0;ie=0&&(Se!==0||ie>=oe);ie--){var Le=this.words[ie]|0;this.words[ie]=Se<<26-_e|Le>>>_e,Se=Le&Ce}return me&&Se!==0&&(me.words[me.length++]=Se),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},f.prototype.ishrn=function(N,j,re){return u(this.negative===0),this.iushrn(N,j,re)},f.prototype.shln=function(N){return this.clone().ishln(N)},f.prototype.ushln=function(N){return this.clone().iushln(N)},f.prototype.shrn=function(N){return this.clone().ishrn(N)},f.prototype.ushrn=function(N){return this.clone().iushrn(N)},f.prototype.testn=function(N){u(typeof N=="number"&&N>=0);var j=N%26,re=(N-j)/26,oe=1<=0);var j=N%26,re=(N-j)/26;if(u(this.negative===0,"imaskn works only with positive numbers"),this.length<=re)return this;if(j!==0&&re++,this.length=Math.min(re,this.length),j!==0){var oe=67108863^67108863>>>j<=67108864;j++)this.words[j]-=67108864,j===this.length-1?this.words[j+1]=1:this.words[j+1]++;return this.length=Math.max(this.length,j+1),this},f.prototype.isubn=function(N){if(u(typeof N=="number"),u(N<67108864),N<0)return this.iaddn(-N);if(this.negative!==0)return this.negative=0,this.iaddn(N),this.negative=1,this;if(this.words[0]-=N,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var j=0;j>26)-(me/67108864|0),this.words[_e+re]=Ee&67108863}for(;_e>26,this.words[_e+re]=Ee&67108863;if(Ce===0)return this.strip();for(u(Ce===-1),Ce=0,_e=0;_e>26,this.words[_e]=Ee&67108863;return this.negative=1,this.strip()},f.prototype._wordDiv=function(N,j){var re=this.length-N.length,oe=this.clone(),_e=N,Ee=_e.words[_e.length-1]|0,Ce=this._countBits(Ee);re=26-Ce,re!==0&&(_e=_e.ushln(re),oe.iushln(re),Ee=_e.words[_e.length-1]|0);var me=oe.length-_e.length,ie;if(j!=="mod"){ie=new f(null),ie.length=me+1,ie.words=new Array(ie.length);for(var Se=0;Se=0;Ae--){var Fe=(oe.words[_e.length+Ae]|0)*67108864+(oe.words[_e.length+Ae-1]|0);for(Fe=Math.min(Fe/Ee|0,67108863),oe._ishlnsubmul(_e,Fe,Ae);oe.negative!==0;)Fe--,oe.negative=0,oe._ishlnsubmul(_e,1,Ae),oe.isZero()||(oe.negative^=1);ie&&(ie.words[Ae]=Fe)}return ie&&ie.strip(),oe.strip(),j!=="div"&&re!==0&&oe.iushrn(re),{div:ie||null,mod:oe}},f.prototype.divmod=function(N,j,re){if(u(!N.isZero()),this.isZero())return{div:new f(0),mod:new f(0)};var oe,_e,Ee;return this.negative!==0&&N.negative===0?(Ee=this.neg().divmod(N,j),j!=="mod"&&(oe=Ee.div.neg()),j!=="div"&&(_e=Ee.mod.neg(),re&&_e.negative!==0&&_e.iadd(N)),{div:oe,mod:_e}):this.negative===0&&N.negative!==0?(Ee=this.divmod(N.neg(),j),j!=="mod"&&(oe=Ee.div.neg()),{div:oe,mod:Ee.mod}):(this.negative&N.negative)!==0?(Ee=this.neg().divmod(N.neg(),j),j!=="div"&&(_e=Ee.mod.neg(),re&&_e.negative!==0&&_e.isub(N)),{div:Ee.div,mod:_e}):N.length>this.length||this.cmp(N)<0?{div:new f(0),mod:this}:N.length===1?j==="div"?{div:this.divn(N.words[0]),mod:null}:j==="mod"?{div:null,mod:new f(this.modn(N.words[0]))}:{div:this.divn(N.words[0]),mod:new f(this.modn(N.words[0]))}:this._wordDiv(N,j)},f.prototype.div=function(N){return this.divmod(N,"div",!1).div},f.prototype.mod=function(N){return this.divmod(N,"mod",!1).mod},f.prototype.umod=function(N){return this.divmod(N,"mod",!0).mod},f.prototype.divRound=function(N){var j=this.divmod(N);if(j.mod.isZero())return j.div;var re=j.div.negative!==0?j.mod.isub(N):j.mod,oe=N.ushrn(1),_e=N.andln(1),Ee=re.cmp(oe);return Ee<0||_e===1&&Ee===0?j.div:j.div.negative!==0?j.div.isubn(1):j.div.iaddn(1)},f.prototype.modn=function(N){u(N<=67108863);for(var j=(1<<26)%N,re=0,oe=this.length-1;oe>=0;oe--)re=(j*re+(this.words[oe]|0))%N;return re},f.prototype.idivn=function(N){u(N<=67108863);for(var j=0,re=this.length-1;re>=0;re--){var oe=(this.words[re]|0)+j*67108864;this.words[re]=oe/N|0,j=oe%N}return this.strip()},f.prototype.divn=function(N){return this.clone().idivn(N)},f.prototype.egcd=function(N){u(N.negative===0),u(!N.isZero());var j=this,re=N.clone();j.negative!==0?j=j.umod(N):j=j.clone();for(var oe=new f(1),_e=new f(0),Ee=new f(0),Ce=new f(1),me=0;j.isEven()&&re.isEven();)j.iushrn(1),re.iushrn(1),++me;for(var ie=re.clone(),Se=j.clone();!j.isZero();){for(var Le=0,Ae=1;(j.words[0]&Ae)===0&&Le<26;++Le,Ae<<=1);if(Le>0)for(j.iushrn(Le);Le-- >0;)(oe.isOdd()||_e.isOdd())&&(oe.iadd(ie),_e.isub(Se)),oe.iushrn(1),_e.iushrn(1);for(var Fe=0,Pe=1;(re.words[0]&Pe)===0&&Fe<26;++Fe,Pe<<=1);if(Fe>0)for(re.iushrn(Fe);Fe-- >0;)(Ee.isOdd()||Ce.isOdd())&&(Ee.iadd(ie),Ce.isub(Se)),Ee.iushrn(1),Ce.iushrn(1);j.cmp(re)>=0?(j.isub(re),oe.isub(Ee),_e.isub(Ce)):(re.isub(j),Ee.isub(oe),Ce.isub(_e))}return{a:Ee,b:Ce,gcd:re.iushln(me)}},f.prototype._invmp=function(N){u(N.negative===0),u(!N.isZero());var j=this,re=N.clone();j.negative!==0?j=j.umod(N):j=j.clone();for(var oe=new f(1),_e=new f(0),Ee=re.clone();j.cmpn(1)>0&&re.cmpn(1)>0;){for(var Ce=0,me=1;(j.words[0]&me)===0&&Ce<26;++Ce,me<<=1);if(Ce>0)for(j.iushrn(Ce);Ce-- >0;)oe.isOdd()&&oe.iadd(Ee),oe.iushrn(1);for(var ie=0,Se=1;(re.words[0]&Se)===0&&ie<26;++ie,Se<<=1);if(ie>0)for(re.iushrn(ie);ie-- >0;)_e.isOdd()&&_e.iadd(Ee),_e.iushrn(1);j.cmp(re)>=0?(j.isub(re),oe.isub(_e)):(re.isub(j),_e.isub(oe))}var Le;return j.cmpn(1)===0?Le=oe:Le=_e,Le.cmpn(0)<0&&Le.iadd(N),Le},f.prototype.gcd=function(N){if(this.isZero())return N.abs();if(N.isZero())return this.abs();var j=this.clone(),re=N.clone();j.negative=0,re.negative=0;for(var oe=0;j.isEven()&&re.isEven();oe++)j.iushrn(1),re.iushrn(1);do{for(;j.isEven();)j.iushrn(1);for(;re.isEven();)re.iushrn(1);var _e=j.cmp(re);if(_e<0){var Ee=j;j=re,re=Ee}else if(_e===0||re.cmpn(1)===0)break;j.isub(re)}while(!0);return re.iushln(oe)},f.prototype.invm=function(N){return this.egcd(N).a.umod(N)},f.prototype.isEven=function(){return(this.words[0]&1)===0},f.prototype.isOdd=function(){return(this.words[0]&1)===1},f.prototype.andln=function(N){return this.words[0]&N},f.prototype.bincn=function(N){u(typeof N=="number");var j=N%26,re=(N-j)/26,oe=1<>>26,Ce&=67108863,this.words[Ee]=Ce}return _e!==0&&(this.words[Ee]=_e,this.length++),this},f.prototype.isZero=function(){return this.length===1&&this.words[0]===0},f.prototype.cmpn=function(N){var j=N<0;if(this.negative!==0&&!j)return-1;if(this.negative===0&&j)return 1;this.strip();var re;if(this.length>1)re=1;else{j&&(N=-N),u(N<=67108863,"Number is too big");var oe=this.words[0]|0;re=oe===N?0:oeN.length)return 1;if(this.length=0;re--){var oe=this.words[re]|0,_e=N.words[re]|0;if(oe!==_e){oe<_e?j=-1:oe>_e&&(j=1);break}}return j},f.prototype.gtn=function(N){return this.cmpn(N)===1},f.prototype.gt=function(N){return this.cmp(N)===1},f.prototype.gten=function(N){return this.cmpn(N)>=0},f.prototype.gte=function(N){return this.cmp(N)>=0},f.prototype.ltn=function(N){return this.cmpn(N)===-1},f.prototype.lt=function(N){return this.cmp(N)===-1},f.prototype.lten=function(N){return this.cmpn(N)<=0},f.prototype.lte=function(N){return this.cmp(N)<=0},f.prototype.eqn=function(N){return this.cmpn(N)===0},f.prototype.eq=function(N){return this.cmp(N)===0},f.red=function(N){return new G(N)},f.prototype.toRed=function(N){return u(!this.red,"Already a number in reduction context"),u(this.negative===0,"red works only with positives"),N.convertTo(this)._forceRed(N)},f.prototype.fromRed=function(){return u(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},f.prototype._forceRed=function(N){return this.red=N,this},f.prototype.forceRed=function(N){return u(!this.red,"Already a number in reduction context"),this._forceRed(N)},f.prototype.redAdd=function(N){return u(this.red,"redAdd works only with red numbers"),this.red.add(this,N)},f.prototype.redIAdd=function(N){return u(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,N)},f.prototype.redSub=function(N){return u(this.red,"redSub works only with red numbers"),this.red.sub(this,N)},f.prototype.redISub=function(N){return u(this.red,"redISub works only with red numbers"),this.red.isub(this,N)},f.prototype.redShl=function(N){return u(this.red,"redShl works only with red numbers"),this.red.shl(this,N)},f.prototype.redMul=function(N){return u(this.red,"redMul works only with red numbers"),this.red._verify2(this,N),this.red.mul(this,N)},f.prototype.redIMul=function(N){return u(this.red,"redMul works only with red numbers"),this.red._verify2(this,N),this.red.imul(this,N)},f.prototype.redSqr=function(){return u(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},f.prototype.redISqr=function(){return u(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},f.prototype.redSqrt=function(){return u(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},f.prototype.redInvm=function(){return u(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},f.prototype.redNeg=function(){return u(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},f.prototype.redPow=function(N){return u(this.red&&!N.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,N)};var g={k256:null,p224:null,p192:null,p25519:null};function P(H,N){this.name=H,this.p=new f(N,16),this.n=this.p.bitLength(),this.k=new f(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}P.prototype._tmp=function(){var N=new f(null);return N.words=new Array(Math.ceil(this.n/13)),N},P.prototype.ireduce=function(N){var j=N,re;do this.split(j,this.tmp),j=this.imulK(j),j=j.iadd(this.tmp),re=j.bitLength();while(re>this.n);var oe=re0?j.isub(this.p):j.strip!==void 0?j.strip():j._strip(),j},P.prototype.split=function(N,j){N.iushrn(this.n,0,j)},P.prototype.imulK=function(N){return N.imul(this.k)};function T(){P.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}c(T,P),T.prototype.split=function(N,j){for(var re=4194303,oe=Math.min(N.length,9),_e=0;_e>>22,Ee=Ce}Ee>>>=22,N.words[_e-10]=Ee,Ee===0&&N.length>10?N.length-=10:N.length-=9},T.prototype.imulK=function(N){N.words[N.length]=0,N.words[N.length+1]=0,N.length+=2;for(var j=0,re=0;re>>=26,N.words[re]=_e,j=oe}return j!==0&&(N.words[N.length++]=j),N},f._prime=function(N){if(g[N])return g[N];var j;if(N==="k256")j=new T;else if(N==="p224")j=new z;else if(N==="p192")j=new O;else if(N==="p25519")j=new V;else throw new Error("Unknown prime "+N);return g[N]=j,j};function G(H){if(typeof H=="string"){var N=f._prime(H);this.m=N.p,this.prime=N}else u(H.gtn(1),"modulus must be greater than 1"),this.m=H,this.prime=null}G.prototype._verify1=function(N){u(N.negative===0,"red works only with positives"),u(N.red,"red works only with red numbers")},G.prototype._verify2=function(N,j){u((N.negative|j.negative)===0,"red works only with positives"),u(N.red&&N.red===j.red,"red works only with red numbers")},G.prototype.imod=function(N){return this.prime?this.prime.ireduce(N)._forceRed(this):N.umod(this.m)._forceRed(this)},G.prototype.neg=function(N){return N.isZero()?N.clone():this.m.sub(N)._forceRed(this)},G.prototype.add=function(N,j){this._verify2(N,j);var re=N.add(j);return re.cmp(this.m)>=0&&re.isub(this.m),re._forceRed(this)},G.prototype.iadd=function(N,j){this._verify2(N,j);var re=N.iadd(j);return re.cmp(this.m)>=0&&re.isub(this.m),re},G.prototype.sub=function(N,j){this._verify2(N,j);var re=N.sub(j);return re.cmpn(0)<0&&re.iadd(this.m),re._forceRed(this)},G.prototype.isub=function(N,j){this._verify2(N,j);var re=N.isub(j);return re.cmpn(0)<0&&re.iadd(this.m),re},G.prototype.shl=function(N,j){return this._verify1(N),this.imod(N.ushln(j))},G.prototype.imul=function(N,j){return this._verify2(N,j),this.imod(N.imul(j))},G.prototype.mul=function(N,j){return this._verify2(N,j),this.imod(N.mul(j))},G.prototype.isqr=function(N){return this.imul(N,N.clone())},G.prototype.sqr=function(N){return this.mul(N,N)},G.prototype.sqrt=function(N){if(N.isZero())return N.clone();var j=this.m.andln(3);if(u(j%2===1),j===3){var re=this.m.add(new f(1)).iushrn(2);return this.pow(N,re)}for(var oe=this.m.subn(1),_e=0;!oe.isZero()&&oe.andln(1)===0;)_e++,oe.iushrn(1);u(!oe.isZero());var Ee=new f(1).toRed(this),Ce=Ee.redNeg(),me=this.m.subn(1).iushrn(1),ie=this.m.bitLength();for(ie=new f(2*ie*ie).toRed(this);this.pow(ie,me).cmp(Ce)!==0;)ie.redIAdd(Ce);for(var Se=this.pow(ie,oe),Le=this.pow(N,oe.addn(1).iushrn(1)),Ae=this.pow(N,oe),Fe=_e;Ae.cmp(Ee)!==0;){for(var Pe=Ae,ge=0;Pe.cmp(Ee)!==0;ge++)Pe=Pe.redSqr();u(ge=0;_e--){for(var Se=j.words[_e],Le=ie-1;Le>=0;Le--){var Ae=Se>>Le&1;if(Ee!==oe[0]&&(Ee=this.sqr(Ee)),Ae===0&&Ce===0){me=0;continue}Ce<<=1,Ce|=Ae,me++,!(me!==re&&(_e!==0||Le!==0))&&(Ee=this.mul(Ee,oe[Ce]),me=0,Ce=0)}ie=26}return Ee},G.prototype.convertTo=function(N){var j=N.umod(this.m);return j===N?j.clone():j},G.prototype.convertFrom=function(N){var j=N.clone();return j.red=null,j},f.mont=function(N){return new Z(N)};function Z(H){G.call(this,H),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new f(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}c(Z,G),Z.prototype.convertTo=function(N){return this.imod(N.ushln(this.shift))},Z.prototype.convertFrom=function(N){var j=this.imod(N.mul(this.rinv));return j.red=null,j},Z.prototype.imul=function(N,j){if(N.isZero()||j.isZero())return N.words[0]=0,N.length=1,N;var re=N.imul(j),oe=re.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),_e=re.isub(oe).iushrn(this.shift),Ee=_e;return _e.cmp(this.m)>=0?Ee=_e.isub(this.m):_e.cmpn(0)<0&&(Ee=_e.iadd(this.m)),Ee._forceRed(this)},Z.prototype.mul=function(N,j){if(N.isZero()||j.isZero())return new f(0)._forceRed(this);var re=N.mul(j),oe=re.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),_e=re.isub(oe).iushrn(this.shift),Ee=_e;return _e.cmp(this.m)>=0?Ee=_e.isub(this.m):_e.cmpn(0)<0&&(Ee=_e.iadd(this.m)),Ee._forceRed(this)},Z.prototype.invm=function(N){var j=this.imod(N._invmp(this.m).mul(this.r2));return j._forceRed(this)}}(i,this)},6860:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]-l[0],o[1]=s[1]-l[1],o[2]=s[2]-l[2],o[3]=s[3]-l[3],o}},6864:function(i){i.exports=a;function a(){var o=new Float32Array(16);return o[0]=1,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=1,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=1,o[11]=0,o[12]=0,o[13]=0,o[14]=0,o[15]=1,o}},6867:function(i,a,o){"use strict";i.exports=p;var s=o(1888),l=o(855),u=o(7150);function c(k,E){for(var S=0;S>>1;if(!(M<=0)){var g,P=s.mallocDouble(2*M*x),T=s.mallocInt32(x);if(x=f(k,M,P,T),x>0){if(M===1&&L)l.init(x),g=l.sweepComplete(M,S,0,x,P,T,0,x,P,T);else{var z=s.mallocDouble(2*M*C),O=s.mallocInt32(C);C=f(E,M,z,O),C>0&&(l.init(x+C),M===1?g=l.sweepBipartite(M,S,0,x,P,T,0,C,z,O):g=u(M,S,L,x,P,T,C,z,O),s.free(z),s.free(O))}s.free(P),s.free(T)}return g}}}var d;function v(k,E){d.push([k,E])}function _(k){return d=[],h(k,k,v,!0),d}function b(k,E){return d=[],h(k,E,v,!1),d}function p(k,E,S){switch(arguments.length){case 1:return _(k);case 2:return typeof E=="function"?h(k,k,E,!0):b(k,E);case 3:return h(k,E,S,!1);default:throw new Error("box-intersect: Invalid arguments")}}},6894:function(i){i.exports=a;function a(o,s,l,u){var c=l[1],f=l[2],h=s[1]-c,d=s[2]-f,v=Math.sin(u),_=Math.cos(u);return o[0]=s[0],o[1]=c+h*_-d*v,o[2]=f+h*v+d*_,o}},7004:function(i){"use strict";i.exports=a;function a(o){for(var s=o.length,l=o[o.length-1],u=s,c=s-2;c>=0;--c){var f=l,h=o[c];l=f+h;var d=l-f,v=h-d;v&&(o[--u]=l,l=v)}for(var _=0,c=u;c=p0)&&!(p1>=hi)"),E=v("lo===p0"),S=v("lo0;){Se-=1;var Fe=Se*M,Pe=T[Fe],ge=T[Fe+1],Re=T[Fe+2],ce=T[Fe+3],Ze=T[Fe+4],ut=T[Fe+5],pt=Se*g,Zt=z[pt],st=z[pt+1],lt=ut&1,Gt=!!(ut&16),Nt=_e,Jt=Ee,sr=me,wr=ie;if(lt&&(Nt=me,Jt=ie,sr=_e,wr=Ee),!(ut&2&&(Re=S(N,Pe,ge,Re,Nt,Jt,st),ge>=Re))&&!(ut&4&&(ge=L(N,Pe,ge,Re,Nt,Jt,Zt),ge>=Re))){var cr=Re-ge,$e=Ze-ce;if(Gt){if(N*cr*(cr+$e)me&&Se>0){var Le=(ie[Se][0]-me)/(ie[Se][0]-ie[Se-1][0]);return ie[Se][1]*(1-Le)+Le*ie[Se-1][1]}}return 1}function Z(me,ie){for(var Se=p({colormap:me,nshades:256,format:"rgba"}),Le=new Uint8Array(256*4),Ae=0;Ae<256;++Ae){for(var Fe=Se[Ae],Pe=0;Pe<3;++Pe)Le[4*Ae+Pe]=Fe[Pe];ie?Le[4*Ae+3]=255*G(Ae/255,ie):Le[4*Ae+3]=255*Fe[3]}return b(Le,[256,256,4],[4,0,1])}function H(me){for(var ie=me.length,Se=new Array(ie),Le=0;Le0){var pt=this.triShader;pt.bind(),pt.uniforms=ge,this.triangleVAO.bind(),ie.drawArrays(ie.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var pt=this.lineShader;pt.bind(),pt.uniforms=ge,this.edgeVAO.bind(),ie.lineWidth(this.lineWidth*this.pixelRatio),ie.drawArrays(ie.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()}if(this.pointCount>0){var pt=this.pointShader;pt.bind(),pt.uniforms=ge,this.pointVAO.bind(),ie.drawArrays(ie.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var pt=this.contourShader;pt.bind(),pt.uniforms=ge,this.contourVAO.bind(),ie.drawArrays(ie.LINES,0,this.contourCount),this.contourVAO.unbind()}},V.drawPick=function(me){me=me||{};for(var ie=this.gl,Se=me.model||z,Le=me.view||z,Ae=me.projection||z,Fe=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],Pe=0;Pe<3;++Pe)Fe[0][Pe]=Math.max(Fe[0][Pe],this.clipBounds[0][Pe]),Fe[1][Pe]=Math.min(Fe[1][Pe],this.clipBounds[1][Pe]);this._model=[].slice.call(Se),this._view=[].slice.call(Le),this._projection=[].slice.call(Ae),this._resolution=[ie.drawingBufferWidth,ie.drawingBufferHeight];var ge={model:Se,view:Le,projection:Ae,clipBounds:Fe,pickId:this.pickId/255},Re=this.pickShader;if(Re.bind(),Re.uniforms=ge,this.triangleCount>0&&(this.triangleVAO.bind(),ie.drawArrays(ie.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),ie.lineWidth(this.lineWidth*this.pixelRatio),ie.drawArrays(ie.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var Re=this.pointPickShader;Re.bind(),Re.uniforms=ge,this.pointVAO.bind(),ie.drawArrays(ie.POINTS,0,this.pointCount),this.pointVAO.unbind()}},V.pick=function(me){if(!me||me.id!==this.pickId)return null;for(var ie=me.value[0]+256*me.value[1]+65536*me.value[2],Se=this.cells[ie],Le=this.positions,Ae=new Array(Se.length),Fe=0;FeMath.max(x,C)?M[2]=1:x>Math.max(L,C)?M[0]=1:M[1]=1;for(var g=0,P=0,T=0;T<3;++T)g+=S[T]*S[T],P+=M[T]*S[T];for(var T=0;T<3;++T)M[T]-=P/g*S[T];return f(M,M),M}function b(S,L,x,C,M,g,P,T){this.center=s(x),this.up=s(C),this.right=s(M),this.radius=s([g]),this.angle=s([P,T]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(S,L),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var z=0;z<16;++z)this.computedMatrix[z]=.5;this.recalcMatrix(0)}var p=b.prototype;p.setDistanceLimits=function(S,L){S>0?S=Math.log(S):S=-1/0,L>0?L=Math.log(L):L=1/0,L=Math.max(L,S),this.radius.bounds[0][0]=S,this.radius.bounds[1][0]=L},p.getDistanceLimits=function(S){var L=this.radius.bounds[0];return S?(S[0]=Math.exp(L[0][0]),S[1]=Math.exp(L[1][0]),S):[Math.exp(L[0][0]),Math.exp(L[1][0])]},p.recalcMatrix=function(S){this.center.curve(S),this.up.curve(S),this.right.curve(S),this.radius.curve(S),this.angle.curve(S);for(var L=this.computedUp,x=this.computedRight,C=0,M=0,g=0;g<3;++g)M+=L[g]*x[g],C+=L[g]*L[g];for(var P=Math.sqrt(C),T=0,g=0;g<3;++g)x[g]-=L[g]*M/C,T+=x[g]*x[g],L[g]/=P;for(var z=Math.sqrt(T),g=0;g<3;++g)x[g]/=z;var O=this.computedToward;c(O,L,x),f(O,O);for(var V=Math.exp(this.computedRadius[0]),G=this.computedAngle[0],Z=this.computedAngle[1],H=Math.cos(G),N=Math.sin(G),j=Math.cos(Z),re=Math.sin(Z),oe=this.computedCenter,_e=H*j,Ee=N*j,Ce=re,me=-H*re,ie=-N*re,Se=j,Le=this.computedEye,Ae=this.computedMatrix,g=0;g<3;++g){var Fe=_e*x[g]+Ee*O[g]+Ce*L[g];Ae[4*g+1]=me*x[g]+ie*O[g]+Se*L[g],Ae[4*g+2]=Fe,Ae[4*g+3]=0}var Pe=Ae[1],ge=Ae[5],Re=Ae[9],ce=Ae[2],Ze=Ae[6],ut=Ae[10],pt=ge*ut-Re*Ze,Zt=Re*ce-Pe*ut,st=Pe*Ze-ge*ce,lt=d(pt,Zt,st);pt/=lt,Zt/=lt,st/=lt,Ae[0]=pt,Ae[4]=Zt,Ae[8]=st;for(var g=0;g<3;++g)Le[g]=oe[g]+Ae[2+4*g]*V;for(var g=0;g<3;++g){for(var T=0,Gt=0;Gt<3;++Gt)T+=Ae[g+4*Gt]*Le[Gt];Ae[12+g]=-T}Ae[15]=1},p.getMatrix=function(S,L){this.recalcMatrix(S);var x=this.computedMatrix;if(L){for(var C=0;C<16;++C)L[C]=x[C];return L}return x};var k=[0,0,0];p.rotate=function(S,L,x,C){if(this.angle.move(S,L,x),C){this.recalcMatrix(S);var M=this.computedMatrix;k[0]=M[2],k[1]=M[6],k[2]=M[10];for(var g=this.computedUp,P=this.computedRight,T=this.computedToward,z=0;z<3;++z)M[4*z]=g[z],M[4*z+1]=P[z],M[4*z+2]=T[z];u(M,M,C,k);for(var z=0;z<3;++z)g[z]=M[4*z],P[z]=M[4*z+1];this.up.set(S,g[0],g[1],g[2]),this.right.set(S,P[0],P[1],P[2])}},p.pan=function(S,L,x,C){L=L||0,x=x||0,C=C||0,this.recalcMatrix(S);var M=this.computedMatrix,g=Math.exp(this.computedRadius[0]),P=M[1],T=M[5],z=M[9],O=d(P,T,z);P/=O,T/=O,z/=O;var V=M[0],G=M[4],Z=M[8],H=V*P+G*T+Z*z;V-=P*H,G-=T*H,Z-=z*H;var N=d(V,G,Z);V/=N,G/=N,Z/=N;var j=V*L+P*x,re=G*L+T*x,oe=Z*L+z*x;this.center.move(S,j,re,oe);var _e=Math.exp(this.computedRadius[0]);_e=Math.max(1e-4,_e+C),this.radius.set(S,Math.log(_e))},p.translate=function(S,L,x,C){this.center.move(S,L||0,x||0,C||0)},p.setMatrix=function(S,L,x,C){var M=1;typeof x=="number"&&(M=x|0),(M<0||M>3)&&(M=1);var g=(M+2)%3,P=(M+1)%3;L||(this.recalcMatrix(S),L=this.computedMatrix);var T=L[M],z=L[M+4],O=L[M+8];if(C){var G=Math.abs(T),Z=Math.abs(z),H=Math.abs(O),N=Math.max(G,Z,H);G===N?(T=T<0?-1:1,z=O=0):H===N?(O=O<0?-1:1,T=z=0):(z=z<0?-1:1,T=O=0)}else{var V=d(T,z,O);T/=V,z/=V,O/=V}var j=L[g],re=L[g+4],oe=L[g+8],_e=j*T+re*z+oe*O;j-=T*_e,re-=z*_e,oe-=O*_e;var Ee=d(j,re,oe);j/=Ee,re/=Ee,oe/=Ee;var Ce=z*oe-O*re,me=O*j-T*oe,ie=T*re-z*j,Se=d(Ce,me,ie);Ce/=Se,me/=Se,ie/=Se,this.center.jump(S,cr,$e,St),this.radius.idle(S),this.up.jump(S,T,z,O),this.right.jump(S,j,re,oe);var Le,Ae;if(M===2){var Fe=L[1],Pe=L[5],ge=L[9],Re=Fe*j+Pe*re+ge*oe,ce=Fe*Ce+Pe*me+ge*ie;Zt<0?Le=-Math.PI/2:Le=Math.PI/2,Ae=Math.atan2(ce,Re)}else{var Ze=L[2],ut=L[6],pt=L[10],Zt=Ze*T+ut*z+pt*O,st=Ze*j+ut*re+pt*oe,lt=Ze*Ce+ut*me+pt*ie;Le=Math.asin(v(Zt)),Ae=Math.atan2(lt,st)}this.angle.jump(S,Ae,Le),this.recalcMatrix(S);var Gt=L[2],Nt=L[6],Jt=L[10],sr=this.computedMatrix;l(sr,L);var wr=sr[15],cr=sr[12]/wr,$e=sr[13]/wr,St=sr[14]/wr,Qt=Math.exp(this.computedRadius[0]);this.center.jump(S,cr-Gt*Qt,$e-Nt*Qt,St-Jt*Qt)},p.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},p.idle=function(S){this.center.idle(S),this.up.idle(S),this.right.idle(S),this.radius.idle(S),this.angle.idle(S)},p.flush=function(S){this.center.flush(S),this.up.flush(S),this.right.flush(S),this.radius.flush(S),this.angle.flush(S)},p.setDistance=function(S,L){L>0&&this.radius.set(S,Math.log(L))},p.lookAt=function(S,L,x,C){this.recalcMatrix(S),L=L||this.computedEye,x=x||this.computedCenter,C=C||this.computedUp;var M=C[0],g=C[1],P=C[2],T=d(M,g,P);if(!(T<1e-6)){M/=T,g/=T,P/=T;var z=L[0]-x[0],O=L[1]-x[1],V=L[2]-x[2],G=d(z,O,V);if(!(G<1e-6)){z/=G,O/=G,V/=G;var Z=this.computedRight,H=Z[0],N=Z[1],j=Z[2],re=M*H+g*N+P*j;H-=re*M,N-=re*g,j-=re*P;var oe=d(H,N,j);if(!(oe<.01&&(H=g*V-P*O,N=P*z-M*V,j=M*O-g*z,oe=d(H,N,j),oe<1e-6))){H/=oe,N/=oe,j/=oe,this.up.set(S,M,g,P),this.right.set(S,H,N,j),this.center.set(S,x[0],x[1],x[2]),this.radius.set(S,Math.log(G));var _e=g*j-P*N,Ee=P*H-M*j,Ce=M*N-g*H,me=d(_e,Ee,Ce);_e/=me,Ee/=me,Ce/=me;var ie=M*z+g*O+P*V,Se=H*z+N*O+j*V,Le=_e*z+Ee*O+Ce*V,Ae=Math.asin(v(ie)),Fe=Math.atan2(Le,Se),Pe=this.angle._state,ge=Pe[Pe.length-1],Re=Pe[Pe.length-2];ge=ge%(2*Math.PI);var ce=Math.abs(ge+2*Math.PI-Fe),Ze=Math.abs(ge-Fe),ut=Math.abs(ge-2*Math.PI-Fe);ce>1,Z=d(P[G],T);Z<=0?(Z===0&&(V=G),z=G+1):Z>0&&(O=G-1)}return V}s=p;function k(P,T){for(var z=new Array(P.length),O=0,V=z.length;O=P.length||d(P[Ee],G)!==0););}return z}s=k;function E(P,T){if(!T)return k(b(L(P,0)),P,0);for(var z=new Array(T),O=0;O>>H&1&&N.push(V[H]);T.push(N)}return _(T)}s=S;function L(P,T){if(T<0)return[];for(var z=[],O=(1<0?N:H},f.min=function(N,H){return N.cmp(H)<0?N:H},f.prototype._init=function(N,H,te){if(typeof N=="number")return this._initNumber(N,H,te);if(typeof N=="object")return this._initArray(N,H,te);H==="hex"&&(H=16),u(H===(H|0)&&H>=2&&H<=36),N=N.toString().replace(/\s+/g,"");var oe=0;N[0]==="-"&&(oe++,this.negative=1),oe=0;oe-=3)Ee=N[oe]|N[oe-1]<<8|N[oe-2]<<16,this.words[_e]|=Ee<>>26-Ce&67108863,Ce+=24,Ce>=26&&(Ce-=26,_e++);else if(te==="le")for(oe=0,_e=0;oe>>26-Ce&67108863,Ce+=24,Ce>=26&&(Ce-=26,_e++);return this.strip()};function d(j,N){var H=j.charCodeAt(N);return H>=65&&H<=70?H-55:H>=97&&H<=102?H-87:H-48&15}function v(j,N,H){var te=d(j,H);return H-1>=N&&(te|=d(j,H-1)<<4),te}f.prototype._parseHex=function(N,H,te){this.length=Math.ceil((N.length-H)/6),this.words=new Array(this.length);for(var oe=0;oe=H;oe-=2)Ce=v(N,H,oe)<<_e,this.words[Ee]|=Ce&67108863,_e>=18?(_e-=18,Ee+=1,this.words[Ee]|=Ce>>>26):_e+=8;else{var me=N.length-H;for(oe=me%2===0?H+1:H;oe=18?(_e-=18,Ee+=1,this.words[Ee]|=Ce>>>26):_e+=8}this.strip()};function _(j,N,H,te){for(var oe=0,_e=Math.min(j.length,H),Ee=N;Ee<_e;Ee++){var Ce=j.charCodeAt(Ee)-48;oe*=te,Ce>=49?oe+=Ce-49+10:Ce>=17?oe+=Ce-17+10:oe+=Ce}return oe}f.prototype._parseBase=function(N,H,te){this.words=[0],this.length=1;for(var oe=0,_e=1;_e<=67108863;_e*=H)oe++;oe--,_e=_e/H|0;for(var Ee=N.length-te,Ce=Ee%oe,me=Math.min(Ee,Ee-Ce)+te,ie=0,Se=te;Se1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},f.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},f.prototype.inspect=function(){return(this.red?""};var b=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],p=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],k=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];f.prototype.toString=function(N,H){N=N||10,H=H|0||1;var te;if(N===16||N==="hex"){te="";for(var oe=0,_e=0,Ee=0;Ee>>24-oe&16777215,_e!==0||Ee!==this.length-1?te=b[6-me.length]+me+te:te=me+te,oe+=2,oe>=26&&(oe-=26,Ee--)}for(_e!==0&&(te=_e.toString(16)+te);te.length%H!==0;)te="0"+te;return this.negative!==0&&(te="-"+te),te}if(N===(N|0)&&N>=2&&N<=36){var ie=p[N],Se=k[N];te="";var Le=this.clone();for(Le.negative=0;!Le.isZero();){var Ae=Le.modn(Se).toString(N);Le=Le.idivn(Se),Le.isZero()?te=Ae+te:te=b[ie-Ae.length]+Ae+te}for(this.isZero()&&(te="0"+te);te.length%H!==0;)te="0"+te;return this.negative!==0&&(te="-"+te),te}u(!1,"Base should be between 2 and 36")},f.prototype.toNumber=function(){var N=this.words[0];return this.length===2?N+=this.words[1]*67108864:this.length===3&&this.words[2]===1?N+=4503599627370496+this.words[1]*67108864:this.length>2&&u(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-N:N},f.prototype.toJSON=function(){return this.toString(16)},f.prototype.toBuffer=function(N,H){return u(typeof h!="undefined"),this.toArrayLike(h,N,H)},f.prototype.toArray=function(N,H){return this.toArrayLike(Array,N,H)},f.prototype.toArrayLike=function(N,H,te){var oe=this.byteLength(),_e=te||Math.max(1,oe);u(oe<=_e,"byte array longer than desired length"),u(_e>0,"Requested array length <= 0"),this.strip();var Ee=H==="le",Ce=new N(_e),me,ie,Se=this.clone();if(Ee){for(ie=0;!Se.isZero();ie++)me=Se.andln(255),Se.iushrn(8),Ce[ie]=me;for(;ie<_e;ie++)Ce[ie]=0}else{for(ie=0;ie<_e-oe;ie++)Ce[ie]=0;for(ie=0;!Se.isZero();ie++)me=Se.andln(255),Se.iushrn(8),Ce[_e-ie-1]=me}return Ce},Math.clz32?f.prototype._countBits=function(N){return 32-Math.clz32(N)}:f.prototype._countBits=function(N){var H=N,te=0;return H>=4096&&(te+=13,H>>>=13),H>=64&&(te+=7,H>>>=7),H>=8&&(te+=4,H>>>=4),H>=2&&(te+=2,H>>>=2),te+H},f.prototype._zeroBits=function(N){if(N===0)return 26;var H=N,te=0;return(H&8191)===0&&(te+=13,H>>>=13),(H&127)===0&&(te+=7,H>>>=7),(H&15)===0&&(te+=4,H>>>=4),(H&3)===0&&(te+=2,H>>>=2),(H&1)===0&&te++,te},f.prototype.bitLength=function(){var N=this.words[this.length-1],H=this._countBits(N);return(this.length-1)*26+H};function E(j){for(var N=new Array(j.bitLength()),H=0;H>>oe}return N}f.prototype.zeroBits=function(){if(this.isZero())return 0;for(var N=0,H=0;HN.length?this.clone().ior(N):N.clone().ior(this)},f.prototype.uor=function(N){return this.length>N.length?this.clone().iuor(N):N.clone().iuor(this)},f.prototype.iuand=function(N){var H;this.length>N.length?H=N:H=this;for(var te=0;teN.length?this.clone().iand(N):N.clone().iand(this)},f.prototype.uand=function(N){return this.length>N.length?this.clone().iuand(N):N.clone().iuand(this)},f.prototype.iuxor=function(N){var H,te;this.length>N.length?(H=this,te=N):(H=N,te=this);for(var oe=0;oeN.length?this.clone().ixor(N):N.clone().ixor(this)},f.prototype.uxor=function(N){return this.length>N.length?this.clone().iuxor(N):N.clone().iuxor(this)},f.prototype.inotn=function(N){u(typeof N=="number"&&N>=0);var H=Math.ceil(N/26)|0,te=N%26;this._expand(H),te>0&&H--;for(var oe=0;oe0&&(this.words[oe]=~this.words[oe]&67108863>>26-te),this.strip()},f.prototype.notn=function(N){return this.clone().inotn(N)},f.prototype.setn=function(N,H){u(typeof N=="number"&&N>=0);var te=N/26|0,oe=N%26;return this._expand(te+1),H?this.words[te]=this.words[te]|1<N.length?(te=this,oe=N):(te=N,oe=this);for(var _e=0,Ee=0;Ee>>26;for(;_e!==0&&Ee>>26;if(this.length=te.length,_e!==0)this.words[this.length]=_e,this.length++;else if(te!==this)for(;EeN.length?this.clone().iadd(N):N.clone().iadd(this)},f.prototype.isub=function(N){if(N.negative!==0){N.negative=0;var H=this.iadd(N);return N.negative=1,H._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(N),this.negative=1,this._normSign();var te=this.cmp(N);if(te===0)return this.negative=0,this.length=1,this.words[0]=0,this;var oe,_e;te>0?(oe=this,_e=N):(oe=N,_e=this);for(var Ee=0,Ce=0;Ce<_e.length;Ce++)H=(oe.words[Ce]|0)-(_e.words[Ce]|0)+Ee,Ee=H>>26,this.words[Ce]=H&67108863;for(;Ee!==0&&Ce>26,this.words[Ce]=H&67108863;if(Ee===0&&Ce>>26,Le=me&67108863,Ae=Math.min(ie,N.length-1),Fe=Math.max(0,ie-j.length+1);Fe<=Ae;Fe++){var Pe=ie-Fe|0;oe=j.words[Pe]|0,_e=N.words[Fe]|0,Ee=oe*_e+Le,Se+=Ee/67108864|0,Le=Ee&67108863}H.words[ie]=Le|0,me=Se|0}return me!==0?H.words[ie]=me|0:H.length--,H.strip()}var L=function(N,H,te){var oe=N.words,_e=H.words,Ee=te.words,Ce=0,me,ie,Se,Le=oe[0]|0,Ae=Le&8191,Fe=Le>>>13,Pe=oe[1]|0,ge=Pe&8191,Re=Pe>>>13,ce=oe[2]|0,Ze=ce&8191,ut=ce>>>13,pt=oe[3]|0,Zt=pt&8191,st=pt>>>13,lt=oe[4]|0,Gt=lt&8191,Nt=lt>>>13,Jt=oe[5]|0,sr=Jt&8191,wr=Jt>>>13,cr=oe[6]|0,$e=cr&8191,St=cr>>>13,Qt=oe[7]|0,Vt=Qt&8191,_t=Qt>>>13,It=oe[8]|0,mt=It&8191,er=It>>>13,lr=oe[9]|0,Tr=lr&8191,Lr=lr>>>13,ti=_e[0]|0,Br=ti&8191,Vr=ti>>>13,dt=_e[1]|0,Ge=dt&8191,Je=dt>>>13,je=_e[2]|0,tt=je&8191,xt=je>>>13,Ie=_e[3]|0,xe=Ie&8191,ke=Ie>>>13,vt=_e[4]|0,ir=vt&8191,ar=vt>>>13,vr=_e[5]|0,ii=vr&8191,pi=vr>>>13,$r=_e[6]|0,di=$r&8191,ji=$r>>>13,In=_e[7]|0,wi=In&8191,On=In>>>13,qn=_e[8]|0,Fn=qn&8191,ra=qn>>>13,la=_e[9]|0,Ut=la&8191,wt=la>>>13;te.negative=N.negative^H.negative,te.length=19,me=Math.imul(Ae,Br),ie=Math.imul(Ae,Vr),ie=ie+Math.imul(Fe,Br)|0,Se=Math.imul(Fe,Vr);var rr=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(rr>>>26)|0,rr&=67108863,me=Math.imul(ge,Br),ie=Math.imul(ge,Vr),ie=ie+Math.imul(Re,Br)|0,Se=Math.imul(Re,Vr),me=me+Math.imul(Ae,Ge)|0,ie=ie+Math.imul(Ae,Je)|0,ie=ie+Math.imul(Fe,Ge)|0,Se=Se+Math.imul(Fe,Je)|0;var nr=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(nr>>>26)|0,nr&=67108863,me=Math.imul(Ze,Br),ie=Math.imul(Ze,Vr),ie=ie+Math.imul(ut,Br)|0,Se=Math.imul(ut,Vr),me=me+Math.imul(ge,Ge)|0,ie=ie+Math.imul(ge,Je)|0,ie=ie+Math.imul(Re,Ge)|0,Se=Se+Math.imul(Re,Je)|0,me=me+Math.imul(Ae,tt)|0,ie=ie+Math.imul(Ae,xt)|0,ie=ie+Math.imul(Fe,tt)|0,Se=Se+Math.imul(Fe,xt)|0;var Er=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Er>>>26)|0,Er&=67108863,me=Math.imul(Zt,Br),ie=Math.imul(Zt,Vr),ie=ie+Math.imul(st,Br)|0,Se=Math.imul(st,Vr),me=me+Math.imul(Ze,Ge)|0,ie=ie+Math.imul(Ze,Je)|0,ie=ie+Math.imul(ut,Ge)|0,Se=Se+Math.imul(ut,Je)|0,me=me+Math.imul(ge,tt)|0,ie=ie+Math.imul(ge,xt)|0,ie=ie+Math.imul(Re,tt)|0,Se=Se+Math.imul(Re,xt)|0,me=me+Math.imul(Ae,xe)|0,ie=ie+Math.imul(Ae,ke)|0,ie=ie+Math.imul(Fe,xe)|0,Se=Se+Math.imul(Fe,ke)|0;var Xr=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Xr>>>26)|0,Xr&=67108863,me=Math.imul(Gt,Br),ie=Math.imul(Gt,Vr),ie=ie+Math.imul(Nt,Br)|0,Se=Math.imul(Nt,Vr),me=me+Math.imul(Zt,Ge)|0,ie=ie+Math.imul(Zt,Je)|0,ie=ie+Math.imul(st,Ge)|0,Se=Se+Math.imul(st,Je)|0,me=me+Math.imul(Ze,tt)|0,ie=ie+Math.imul(Ze,xt)|0,ie=ie+Math.imul(ut,tt)|0,Se=Se+Math.imul(ut,xt)|0,me=me+Math.imul(ge,xe)|0,ie=ie+Math.imul(ge,ke)|0,ie=ie+Math.imul(Re,xe)|0,Se=Se+Math.imul(Re,ke)|0,me=me+Math.imul(Ae,ir)|0,ie=ie+Math.imul(Ae,ar)|0,ie=ie+Math.imul(Fe,ir)|0,Se=Se+Math.imul(Fe,ar)|0;var ri=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(ri>>>26)|0,ri&=67108863,me=Math.imul(sr,Br),ie=Math.imul(sr,Vr),ie=ie+Math.imul(wr,Br)|0,Se=Math.imul(wr,Vr),me=me+Math.imul(Gt,Ge)|0,ie=ie+Math.imul(Gt,Je)|0,ie=ie+Math.imul(Nt,Ge)|0,Se=Se+Math.imul(Nt,Je)|0,me=me+Math.imul(Zt,tt)|0,ie=ie+Math.imul(Zt,xt)|0,ie=ie+Math.imul(st,tt)|0,Se=Se+Math.imul(st,xt)|0,me=me+Math.imul(Ze,xe)|0,ie=ie+Math.imul(Ze,ke)|0,ie=ie+Math.imul(ut,xe)|0,Se=Se+Math.imul(ut,ke)|0,me=me+Math.imul(ge,ir)|0,ie=ie+Math.imul(ge,ar)|0,ie=ie+Math.imul(Re,ir)|0,Se=Se+Math.imul(Re,ar)|0,me=me+Math.imul(Ae,ii)|0,ie=ie+Math.imul(Ae,pi)|0,ie=ie+Math.imul(Fe,ii)|0,Se=Se+Math.imul(Fe,pi)|0;var Qr=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Qr>>>26)|0,Qr&=67108863,me=Math.imul($e,Br),ie=Math.imul($e,Vr),ie=ie+Math.imul(St,Br)|0,Se=Math.imul(St,Vr),me=me+Math.imul(sr,Ge)|0,ie=ie+Math.imul(sr,Je)|0,ie=ie+Math.imul(wr,Ge)|0,Se=Se+Math.imul(wr,Je)|0,me=me+Math.imul(Gt,tt)|0,ie=ie+Math.imul(Gt,xt)|0,ie=ie+Math.imul(Nt,tt)|0,Se=Se+Math.imul(Nt,xt)|0,me=me+Math.imul(Zt,xe)|0,ie=ie+Math.imul(Zt,ke)|0,ie=ie+Math.imul(st,xe)|0,Se=Se+Math.imul(st,ke)|0,me=me+Math.imul(Ze,ir)|0,ie=ie+Math.imul(Ze,ar)|0,ie=ie+Math.imul(ut,ir)|0,Se=Se+Math.imul(ut,ar)|0,me=me+Math.imul(ge,ii)|0,ie=ie+Math.imul(ge,pi)|0,ie=ie+Math.imul(Re,ii)|0,Se=Se+Math.imul(Re,pi)|0,me=me+Math.imul(Ae,di)|0,ie=ie+Math.imul(Ae,ji)|0,ie=ie+Math.imul(Fe,di)|0,Se=Se+Math.imul(Fe,ji)|0;var Oi=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Oi>>>26)|0,Oi&=67108863,me=Math.imul(Vt,Br),ie=Math.imul(Vt,Vr),ie=ie+Math.imul(_t,Br)|0,Se=Math.imul(_t,Vr),me=me+Math.imul($e,Ge)|0,ie=ie+Math.imul($e,Je)|0,ie=ie+Math.imul(St,Ge)|0,Se=Se+Math.imul(St,Je)|0,me=me+Math.imul(sr,tt)|0,ie=ie+Math.imul(sr,xt)|0,ie=ie+Math.imul(wr,tt)|0,Se=Se+Math.imul(wr,xt)|0,me=me+Math.imul(Gt,xe)|0,ie=ie+Math.imul(Gt,ke)|0,ie=ie+Math.imul(Nt,xe)|0,Se=Se+Math.imul(Nt,ke)|0,me=me+Math.imul(Zt,ir)|0,ie=ie+Math.imul(Zt,ar)|0,ie=ie+Math.imul(st,ir)|0,Se=Se+Math.imul(st,ar)|0,me=me+Math.imul(Ze,ii)|0,ie=ie+Math.imul(Ze,pi)|0,ie=ie+Math.imul(ut,ii)|0,Se=Se+Math.imul(ut,pi)|0,me=me+Math.imul(ge,di)|0,ie=ie+Math.imul(ge,ji)|0,ie=ie+Math.imul(Re,di)|0,Se=Se+Math.imul(Re,ji)|0,me=me+Math.imul(Ae,wi)|0,ie=ie+Math.imul(Ae,On)|0,ie=ie+Math.imul(Fe,wi)|0,Se=Se+Math.imul(Fe,On)|0;var $i=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+($i>>>26)|0,$i&=67108863,me=Math.imul(mt,Br),ie=Math.imul(mt,Vr),ie=ie+Math.imul(er,Br)|0,Se=Math.imul(er,Vr),me=me+Math.imul(Vt,Ge)|0,ie=ie+Math.imul(Vt,Je)|0,ie=ie+Math.imul(_t,Ge)|0,Se=Se+Math.imul(_t,Je)|0,me=me+Math.imul($e,tt)|0,ie=ie+Math.imul($e,xt)|0,ie=ie+Math.imul(St,tt)|0,Se=Se+Math.imul(St,xt)|0,me=me+Math.imul(sr,xe)|0,ie=ie+Math.imul(sr,ke)|0,ie=ie+Math.imul(wr,xe)|0,Se=Se+Math.imul(wr,ke)|0,me=me+Math.imul(Gt,ir)|0,ie=ie+Math.imul(Gt,ar)|0,ie=ie+Math.imul(Nt,ir)|0,Se=Se+Math.imul(Nt,ar)|0,me=me+Math.imul(Zt,ii)|0,ie=ie+Math.imul(Zt,pi)|0,ie=ie+Math.imul(st,ii)|0,Se=Se+Math.imul(st,pi)|0,me=me+Math.imul(Ze,di)|0,ie=ie+Math.imul(Ze,ji)|0,ie=ie+Math.imul(ut,di)|0,Se=Se+Math.imul(ut,ji)|0,me=me+Math.imul(ge,wi)|0,ie=ie+Math.imul(ge,On)|0,ie=ie+Math.imul(Re,wi)|0,Se=Se+Math.imul(Re,On)|0,me=me+Math.imul(Ae,Fn)|0,ie=ie+Math.imul(Ae,ra)|0,ie=ie+Math.imul(Fe,Fn)|0,Se=Se+Math.imul(Fe,ra)|0;var tn=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(tn>>>26)|0,tn&=67108863,me=Math.imul(Tr,Br),ie=Math.imul(Tr,Vr),ie=ie+Math.imul(Lr,Br)|0,Se=Math.imul(Lr,Vr),me=me+Math.imul(mt,Ge)|0,ie=ie+Math.imul(mt,Je)|0,ie=ie+Math.imul(er,Ge)|0,Se=Se+Math.imul(er,Je)|0,me=me+Math.imul(Vt,tt)|0,ie=ie+Math.imul(Vt,xt)|0,ie=ie+Math.imul(_t,tt)|0,Se=Se+Math.imul(_t,xt)|0,me=me+Math.imul($e,xe)|0,ie=ie+Math.imul($e,ke)|0,ie=ie+Math.imul(St,xe)|0,Se=Se+Math.imul(St,ke)|0,me=me+Math.imul(sr,ir)|0,ie=ie+Math.imul(sr,ar)|0,ie=ie+Math.imul(wr,ir)|0,Se=Se+Math.imul(wr,ar)|0,me=me+Math.imul(Gt,ii)|0,ie=ie+Math.imul(Gt,pi)|0,ie=ie+Math.imul(Nt,ii)|0,Se=Se+Math.imul(Nt,pi)|0,me=me+Math.imul(Zt,di)|0,ie=ie+Math.imul(Zt,ji)|0,ie=ie+Math.imul(st,di)|0,Se=Se+Math.imul(st,ji)|0,me=me+Math.imul(Ze,wi)|0,ie=ie+Math.imul(Ze,On)|0,ie=ie+Math.imul(ut,wi)|0,Se=Se+Math.imul(ut,On)|0,me=me+Math.imul(ge,Fn)|0,ie=ie+Math.imul(ge,ra)|0,ie=ie+Math.imul(Re,Fn)|0,Se=Se+Math.imul(Re,ra)|0,me=me+Math.imul(Ae,Ut)|0,ie=ie+Math.imul(Ae,wt)|0,ie=ie+Math.imul(Fe,Ut)|0,Se=Se+Math.imul(Fe,wt)|0;var fn=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(fn>>>26)|0,fn&=67108863,me=Math.imul(Tr,Ge),ie=Math.imul(Tr,Je),ie=ie+Math.imul(Lr,Ge)|0,Se=Math.imul(Lr,Je),me=me+Math.imul(mt,tt)|0,ie=ie+Math.imul(mt,xt)|0,ie=ie+Math.imul(er,tt)|0,Se=Se+Math.imul(er,xt)|0,me=me+Math.imul(Vt,xe)|0,ie=ie+Math.imul(Vt,ke)|0,ie=ie+Math.imul(_t,xe)|0,Se=Se+Math.imul(_t,ke)|0,me=me+Math.imul($e,ir)|0,ie=ie+Math.imul($e,ar)|0,ie=ie+Math.imul(St,ir)|0,Se=Se+Math.imul(St,ar)|0,me=me+Math.imul(sr,ii)|0,ie=ie+Math.imul(sr,pi)|0,ie=ie+Math.imul(wr,ii)|0,Se=Se+Math.imul(wr,pi)|0,me=me+Math.imul(Gt,di)|0,ie=ie+Math.imul(Gt,ji)|0,ie=ie+Math.imul(Nt,di)|0,Se=Se+Math.imul(Nt,ji)|0,me=me+Math.imul(Zt,wi)|0,ie=ie+Math.imul(Zt,On)|0,ie=ie+Math.imul(st,wi)|0,Se=Se+Math.imul(st,On)|0,me=me+Math.imul(Ze,Fn)|0,ie=ie+Math.imul(Ze,ra)|0,ie=ie+Math.imul(ut,Fn)|0,Se=Se+Math.imul(ut,ra)|0,me=me+Math.imul(ge,Ut)|0,ie=ie+Math.imul(ge,wt)|0,ie=ie+Math.imul(Re,Ut)|0,Se=Se+Math.imul(Re,wt)|0;var yn=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(yn>>>26)|0,yn&=67108863,me=Math.imul(Tr,tt),ie=Math.imul(Tr,xt),ie=ie+Math.imul(Lr,tt)|0,Se=Math.imul(Lr,xt),me=me+Math.imul(mt,xe)|0,ie=ie+Math.imul(mt,ke)|0,ie=ie+Math.imul(er,xe)|0,Se=Se+Math.imul(er,ke)|0,me=me+Math.imul(Vt,ir)|0,ie=ie+Math.imul(Vt,ar)|0,ie=ie+Math.imul(_t,ir)|0,Se=Se+Math.imul(_t,ar)|0,me=me+Math.imul($e,ii)|0,ie=ie+Math.imul($e,pi)|0,ie=ie+Math.imul(St,ii)|0,Se=Se+Math.imul(St,pi)|0,me=me+Math.imul(sr,di)|0,ie=ie+Math.imul(sr,ji)|0,ie=ie+Math.imul(wr,di)|0,Se=Se+Math.imul(wr,ji)|0,me=me+Math.imul(Gt,wi)|0,ie=ie+Math.imul(Gt,On)|0,ie=ie+Math.imul(Nt,wi)|0,Se=Se+Math.imul(Nt,On)|0,me=me+Math.imul(Zt,Fn)|0,ie=ie+Math.imul(Zt,ra)|0,ie=ie+Math.imul(st,Fn)|0,Se=Se+Math.imul(st,ra)|0,me=me+Math.imul(Ze,Ut)|0,ie=ie+Math.imul(Ze,wt)|0,ie=ie+Math.imul(ut,Ut)|0,Se=Se+Math.imul(ut,wt)|0;var Sn=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Sn>>>26)|0,Sn&=67108863,me=Math.imul(Tr,xe),ie=Math.imul(Tr,ke),ie=ie+Math.imul(Lr,xe)|0,Se=Math.imul(Lr,ke),me=me+Math.imul(mt,ir)|0,ie=ie+Math.imul(mt,ar)|0,ie=ie+Math.imul(er,ir)|0,Se=Se+Math.imul(er,ar)|0,me=me+Math.imul(Vt,ii)|0,ie=ie+Math.imul(Vt,pi)|0,ie=ie+Math.imul(_t,ii)|0,Se=Se+Math.imul(_t,pi)|0,me=me+Math.imul($e,di)|0,ie=ie+Math.imul($e,ji)|0,ie=ie+Math.imul(St,di)|0,Se=Se+Math.imul(St,ji)|0,me=me+Math.imul(sr,wi)|0,ie=ie+Math.imul(sr,On)|0,ie=ie+Math.imul(wr,wi)|0,Se=Se+Math.imul(wr,On)|0,me=me+Math.imul(Gt,Fn)|0,ie=ie+Math.imul(Gt,ra)|0,ie=ie+Math.imul(Nt,Fn)|0,Se=Se+Math.imul(Nt,ra)|0,me=me+Math.imul(Zt,Ut)|0,ie=ie+Math.imul(Zt,wt)|0,ie=ie+Math.imul(st,Ut)|0,Se=Se+Math.imul(st,wt)|0;var Ba=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Ba>>>26)|0,Ba&=67108863,me=Math.imul(Tr,ir),ie=Math.imul(Tr,ar),ie=ie+Math.imul(Lr,ir)|0,Se=Math.imul(Lr,ar),me=me+Math.imul(mt,ii)|0,ie=ie+Math.imul(mt,pi)|0,ie=ie+Math.imul(er,ii)|0,Se=Se+Math.imul(er,pi)|0,me=me+Math.imul(Vt,di)|0,ie=ie+Math.imul(Vt,ji)|0,ie=ie+Math.imul(_t,di)|0,Se=Se+Math.imul(_t,ji)|0,me=me+Math.imul($e,wi)|0,ie=ie+Math.imul($e,On)|0,ie=ie+Math.imul(St,wi)|0,Se=Se+Math.imul(St,On)|0,me=me+Math.imul(sr,Fn)|0,ie=ie+Math.imul(sr,ra)|0,ie=ie+Math.imul(wr,Fn)|0,Se=Se+Math.imul(wr,ra)|0,me=me+Math.imul(Gt,Ut)|0,ie=ie+Math.imul(Gt,wt)|0,ie=ie+Math.imul(Nt,Ut)|0,Se=Se+Math.imul(Nt,wt)|0;var ua=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(ua>>>26)|0,ua&=67108863,me=Math.imul(Tr,ii),ie=Math.imul(Tr,pi),ie=ie+Math.imul(Lr,ii)|0,Se=Math.imul(Lr,pi),me=me+Math.imul(mt,di)|0,ie=ie+Math.imul(mt,ji)|0,ie=ie+Math.imul(er,di)|0,Se=Se+Math.imul(er,ji)|0,me=me+Math.imul(Vt,wi)|0,ie=ie+Math.imul(Vt,On)|0,ie=ie+Math.imul(_t,wi)|0,Se=Se+Math.imul(_t,On)|0,me=me+Math.imul($e,Fn)|0,ie=ie+Math.imul($e,ra)|0,ie=ie+Math.imul(St,Fn)|0,Se=Se+Math.imul(St,ra)|0,me=me+Math.imul(sr,Ut)|0,ie=ie+Math.imul(sr,wt)|0,ie=ie+Math.imul(wr,Ut)|0,Se=Se+Math.imul(wr,wt)|0;var ma=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(ma>>>26)|0,ma&=67108863,me=Math.imul(Tr,di),ie=Math.imul(Tr,ji),ie=ie+Math.imul(Lr,di)|0,Se=Math.imul(Lr,ji),me=me+Math.imul(mt,wi)|0,ie=ie+Math.imul(mt,On)|0,ie=ie+Math.imul(er,wi)|0,Se=Se+Math.imul(er,On)|0,me=me+Math.imul(Vt,Fn)|0,ie=ie+Math.imul(Vt,ra)|0,ie=ie+Math.imul(_t,Fn)|0,Se=Se+Math.imul(_t,ra)|0,me=me+Math.imul($e,Ut)|0,ie=ie+Math.imul($e,wt)|0,ie=ie+Math.imul(St,Ut)|0,Se=Se+Math.imul(St,wt)|0;var Wa=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Wa>>>26)|0,Wa&=67108863,me=Math.imul(Tr,wi),ie=Math.imul(Tr,On),ie=ie+Math.imul(Lr,wi)|0,Se=Math.imul(Lr,On),me=me+Math.imul(mt,Fn)|0,ie=ie+Math.imul(mt,ra)|0,ie=ie+Math.imul(er,Fn)|0,Se=Se+Math.imul(er,ra)|0,me=me+Math.imul(Vt,Ut)|0,ie=ie+Math.imul(Vt,wt)|0,ie=ie+Math.imul(_t,Ut)|0,Se=Se+Math.imul(_t,wt)|0;var Fa=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Fa>>>26)|0,Fa&=67108863,me=Math.imul(Tr,Fn),ie=Math.imul(Tr,ra),ie=ie+Math.imul(Lr,Fn)|0,Se=Math.imul(Lr,ra),me=me+Math.imul(mt,Ut)|0,ie=ie+Math.imul(mt,wt)|0,ie=ie+Math.imul(er,Ut)|0,Se=Se+Math.imul(er,wt)|0;var Wo=(Ce+me|0)+((ie&8191)<<13)|0;Ce=(Se+(ie>>>13)|0)+(Wo>>>26)|0,Wo&=67108863,me=Math.imul(Tr,Ut),ie=Math.imul(Tr,wt),ie=ie+Math.imul(Lr,Ut)|0,Se=Math.imul(Lr,wt);var da=(Ce+me|0)+((ie&8191)<<13)|0;return Ce=(Se+(ie>>>13)|0)+(da>>>26)|0,da&=67108863,Ee[0]=rr,Ee[1]=nr,Ee[2]=Er,Ee[3]=Xr,Ee[4]=ri,Ee[5]=Qr,Ee[6]=Oi,Ee[7]=$i,Ee[8]=tn,Ee[9]=fn,Ee[10]=yn,Ee[11]=Sn,Ee[12]=Ba,Ee[13]=ua,Ee[14]=ma,Ee[15]=Wa,Ee[16]=Fa,Ee[17]=Wo,Ee[18]=da,Ce!==0&&(Ee[19]=Ce,te.length++),te};Math.imul||(L=S);function x(j,N,H){H.negative=N.negative^j.negative,H.length=j.length+N.length;for(var te=0,oe=0,_e=0;_e>>26)|0,oe+=Ee>>>26,Ee&=67108863}H.words[_e]=Ce,te=Ee,Ee=oe}return te!==0?H.words[_e]=te:H.length--,H.strip()}function C(j,N,H){var te=new M;return te.mulp(j,N,H)}f.prototype.mulTo=function(N,H){var te,oe=this.length+N.length;return this.length===10&&N.length===10?te=L(this,N,H):oe<63?te=S(this,N,H):oe<1024?te=x(this,N,H):te=C(this,N,H),te};function M(j,N){this.x=j,this.y=N}M.prototype.makeRBT=function(N){for(var H=new Array(N),te=f.prototype._countBits(N)-1,oe=0;oe>=1;return oe},M.prototype.permute=function(N,H,te,oe,_e,Ee){for(var Ce=0;Ce>>1)_e++;return 1<<_e+1+oe},M.prototype.conjugate=function(N,H,te){if(!(te<=1))for(var oe=0;oe>>13,te[2*Ee+1]=_e&8191,_e=_e>>>13;for(Ee=2*H;Ee>=26,H+=oe/67108864|0,H+=_e>>>26,this.words[te]=_e&67108863}return H!==0&&(this.words[te]=H,this.length++),this},f.prototype.muln=function(N){return this.clone().imuln(N)},f.prototype.sqr=function(){return this.mul(this)},f.prototype.isqr=function(){return this.imul(this.clone())},f.prototype.pow=function(N){var H=E(N);if(H.length===0)return new f(1);for(var te=this,oe=0;oe=0);var H=N%26,te=(N-H)/26,oe=67108863>>>26-H<<26-H,_e;if(H!==0){var Ee=0;for(_e=0;_e>>26-H}Ee&&(this.words[_e]=Ee,this.length++)}if(te!==0){for(_e=this.length-1;_e>=0;_e--)this.words[_e+te]=this.words[_e];for(_e=0;_e=0);var oe;H?oe=(H-H%26)/26:oe=0;var _e=N%26,Ee=Math.min((N-_e)/26,this.length),Ce=67108863^67108863>>>_e<<_e,me=te;if(oe-=Ee,oe=Math.max(0,oe),me){for(var ie=0;ieEe)for(this.length-=Ee,ie=0;ie=0&&(Se!==0||ie>=oe);ie--){var Le=this.words[ie]|0;this.words[ie]=Se<<26-_e|Le>>>_e,Se=Le&Ce}return me&&Se!==0&&(me.words[me.length++]=Se),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},f.prototype.ishrn=function(N,H,te){return u(this.negative===0),this.iushrn(N,H,te)},f.prototype.shln=function(N){return this.clone().ishln(N)},f.prototype.ushln=function(N){return this.clone().iushln(N)},f.prototype.shrn=function(N){return this.clone().ishrn(N)},f.prototype.ushrn=function(N){return this.clone().iushrn(N)},f.prototype.testn=function(N){u(typeof N=="number"&&N>=0);var H=N%26,te=(N-H)/26,oe=1<=0);var H=N%26,te=(N-H)/26;if(u(this.negative===0,"imaskn works only with positive numbers"),this.length<=te)return this;if(H!==0&&te++,this.length=Math.min(te,this.length),H!==0){var oe=67108863^67108863>>>H<=67108864;H++)this.words[H]-=67108864,H===this.length-1?this.words[H+1]=1:this.words[H+1]++;return this.length=Math.max(this.length,H+1),this},f.prototype.isubn=function(N){if(u(typeof N=="number"),u(N<67108864),N<0)return this.iaddn(-N);if(this.negative!==0)return this.negative=0,this.iaddn(N),this.negative=1,this;if(this.words[0]-=N,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var H=0;H>26)-(me/67108864|0),this.words[_e+te]=Ee&67108863}for(;_e>26,this.words[_e+te]=Ee&67108863;if(Ce===0)return this.strip();for(u(Ce===-1),Ce=0,_e=0;_e>26,this.words[_e]=Ee&67108863;return this.negative=1,this.strip()},f.prototype._wordDiv=function(N,H){var te=this.length-N.length,oe=this.clone(),_e=N,Ee=_e.words[_e.length-1]|0,Ce=this._countBits(Ee);te=26-Ce,te!==0&&(_e=_e.ushln(te),oe.iushln(te),Ee=_e.words[_e.length-1]|0);var me=oe.length-_e.length,ie;if(H!=="mod"){ie=new f(null),ie.length=me+1,ie.words=new Array(ie.length);for(var Se=0;Se=0;Ae--){var Fe=(oe.words[_e.length+Ae]|0)*67108864+(oe.words[_e.length+Ae-1]|0);for(Fe=Math.min(Fe/Ee|0,67108863),oe._ishlnsubmul(_e,Fe,Ae);oe.negative!==0;)Fe--,oe.negative=0,oe._ishlnsubmul(_e,1,Ae),oe.isZero()||(oe.negative^=1);ie&&(ie.words[Ae]=Fe)}return ie&&ie.strip(),oe.strip(),H!=="div"&&te!==0&&oe.iushrn(te),{div:ie||null,mod:oe}},f.prototype.divmod=function(N,H,te){if(u(!N.isZero()),this.isZero())return{div:new f(0),mod:new f(0)};var oe,_e,Ee;return this.negative!==0&&N.negative===0?(Ee=this.neg().divmod(N,H),H!=="mod"&&(oe=Ee.div.neg()),H!=="div"&&(_e=Ee.mod.neg(),te&&_e.negative!==0&&_e.iadd(N)),{div:oe,mod:_e}):this.negative===0&&N.negative!==0?(Ee=this.divmod(N.neg(),H),H!=="mod"&&(oe=Ee.div.neg()),{div:oe,mod:Ee.mod}):(this.negative&N.negative)!==0?(Ee=this.neg().divmod(N.neg(),H),H!=="div"&&(_e=Ee.mod.neg(),te&&_e.negative!==0&&_e.isub(N)),{div:Ee.div,mod:_e}):N.length>this.length||this.cmp(N)<0?{div:new f(0),mod:this}:N.length===1?H==="div"?{div:this.divn(N.words[0]),mod:null}:H==="mod"?{div:null,mod:new f(this.modn(N.words[0]))}:{div:this.divn(N.words[0]),mod:new f(this.modn(N.words[0]))}:this._wordDiv(N,H)},f.prototype.div=function(N){return this.divmod(N,"div",!1).div},f.prototype.mod=function(N){return this.divmod(N,"mod",!1).mod},f.prototype.umod=function(N){return this.divmod(N,"mod",!0).mod},f.prototype.divRound=function(N){var H=this.divmod(N);if(H.mod.isZero())return H.div;var te=H.div.negative!==0?H.mod.isub(N):H.mod,oe=N.ushrn(1),_e=N.andln(1),Ee=te.cmp(oe);return Ee<0||_e===1&&Ee===0?H.div:H.div.negative!==0?H.div.isubn(1):H.div.iaddn(1)},f.prototype.modn=function(N){u(N<=67108863);for(var H=(1<<26)%N,te=0,oe=this.length-1;oe>=0;oe--)te=(H*te+(this.words[oe]|0))%N;return te},f.prototype.idivn=function(N){u(N<=67108863);for(var H=0,te=this.length-1;te>=0;te--){var oe=(this.words[te]|0)+H*67108864;this.words[te]=oe/N|0,H=oe%N}return this.strip()},f.prototype.divn=function(N){return this.clone().idivn(N)},f.prototype.egcd=function(N){u(N.negative===0),u(!N.isZero());var H=this,te=N.clone();H.negative!==0?H=H.umod(N):H=H.clone();for(var oe=new f(1),_e=new f(0),Ee=new f(0),Ce=new f(1),me=0;H.isEven()&&te.isEven();)H.iushrn(1),te.iushrn(1),++me;for(var ie=te.clone(),Se=H.clone();!H.isZero();){for(var Le=0,Ae=1;(H.words[0]&Ae)===0&&Le<26;++Le,Ae<<=1);if(Le>0)for(H.iushrn(Le);Le-- >0;)(oe.isOdd()||_e.isOdd())&&(oe.iadd(ie),_e.isub(Se)),oe.iushrn(1),_e.iushrn(1);for(var Fe=0,Pe=1;(te.words[0]&Pe)===0&&Fe<26;++Fe,Pe<<=1);if(Fe>0)for(te.iushrn(Fe);Fe-- >0;)(Ee.isOdd()||Ce.isOdd())&&(Ee.iadd(ie),Ce.isub(Se)),Ee.iushrn(1),Ce.iushrn(1);H.cmp(te)>=0?(H.isub(te),oe.isub(Ee),_e.isub(Ce)):(te.isub(H),Ee.isub(oe),Ce.isub(_e))}return{a:Ee,b:Ce,gcd:te.iushln(me)}},f.prototype._invmp=function(N){u(N.negative===0),u(!N.isZero());var H=this,te=N.clone();H.negative!==0?H=H.umod(N):H=H.clone();for(var oe=new f(1),_e=new f(0),Ee=te.clone();H.cmpn(1)>0&&te.cmpn(1)>0;){for(var Ce=0,me=1;(H.words[0]&me)===0&&Ce<26;++Ce,me<<=1);if(Ce>0)for(H.iushrn(Ce);Ce-- >0;)oe.isOdd()&&oe.iadd(Ee),oe.iushrn(1);for(var ie=0,Se=1;(te.words[0]&Se)===0&&ie<26;++ie,Se<<=1);if(ie>0)for(te.iushrn(ie);ie-- >0;)_e.isOdd()&&_e.iadd(Ee),_e.iushrn(1);H.cmp(te)>=0?(H.isub(te),oe.isub(_e)):(te.isub(H),_e.isub(oe))}var Le;return H.cmpn(1)===0?Le=oe:Le=_e,Le.cmpn(0)<0&&Le.iadd(N),Le},f.prototype.gcd=function(N){if(this.isZero())return N.abs();if(N.isZero())return this.abs();var H=this.clone(),te=N.clone();H.negative=0,te.negative=0;for(var oe=0;H.isEven()&&te.isEven();oe++)H.iushrn(1),te.iushrn(1);do{for(;H.isEven();)H.iushrn(1);for(;te.isEven();)te.iushrn(1);var _e=H.cmp(te);if(_e<0){var Ee=H;H=te,te=Ee}else if(_e===0||te.cmpn(1)===0)break;H.isub(te)}while(!0);return te.iushln(oe)},f.prototype.invm=function(N){return this.egcd(N).a.umod(N)},f.prototype.isEven=function(){return(this.words[0]&1)===0},f.prototype.isOdd=function(){return(this.words[0]&1)===1},f.prototype.andln=function(N){return this.words[0]&N},f.prototype.bincn=function(N){u(typeof N=="number");var H=N%26,te=(N-H)/26,oe=1<>>26,Ce&=67108863,this.words[Ee]=Ce}return _e!==0&&(this.words[Ee]=_e,this.length++),this},f.prototype.isZero=function(){return this.length===1&&this.words[0]===0},f.prototype.cmpn=function(N){var H=N<0;if(this.negative!==0&&!H)return-1;if(this.negative===0&&H)return 1;this.strip();var te;if(this.length>1)te=1;else{H&&(N=-N),u(N<=67108863,"Number is too big");var oe=this.words[0]|0;te=oe===N?0:oeN.length)return 1;if(this.length=0;te--){var oe=this.words[te]|0,_e=N.words[te]|0;if(oe!==_e){oe<_e?H=-1:oe>_e&&(H=1);break}}return H},f.prototype.gtn=function(N){return this.cmpn(N)===1},f.prototype.gt=function(N){return this.cmp(N)===1},f.prototype.gten=function(N){return this.cmpn(N)>=0},f.prototype.gte=function(N){return this.cmp(N)>=0},f.prototype.ltn=function(N){return this.cmpn(N)===-1},f.prototype.lt=function(N){return this.cmp(N)===-1},f.prototype.lten=function(N){return this.cmpn(N)<=0},f.prototype.lte=function(N){return this.cmp(N)<=0},f.prototype.eqn=function(N){return this.cmpn(N)===0},f.prototype.eq=function(N){return this.cmp(N)===0},f.red=function(N){return new G(N)},f.prototype.toRed=function(N){return u(!this.red,"Already a number in reduction context"),u(this.negative===0,"red works only with positives"),N.convertTo(this)._forceRed(N)},f.prototype.fromRed=function(){return u(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},f.prototype._forceRed=function(N){return this.red=N,this},f.prototype.forceRed=function(N){return u(!this.red,"Already a number in reduction context"),this._forceRed(N)},f.prototype.redAdd=function(N){return u(this.red,"redAdd works only with red numbers"),this.red.add(this,N)},f.prototype.redIAdd=function(N){return u(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,N)},f.prototype.redSub=function(N){return u(this.red,"redSub works only with red numbers"),this.red.sub(this,N)},f.prototype.redISub=function(N){return u(this.red,"redISub works only with red numbers"),this.red.isub(this,N)},f.prototype.redShl=function(N){return u(this.red,"redShl works only with red numbers"),this.red.shl(this,N)},f.prototype.redMul=function(N){return u(this.red,"redMul works only with red numbers"),this.red._verify2(this,N),this.red.mul(this,N)},f.prototype.redIMul=function(N){return u(this.red,"redMul works only with red numbers"),this.red._verify2(this,N),this.red.imul(this,N)},f.prototype.redSqr=function(){return u(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},f.prototype.redISqr=function(){return u(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},f.prototype.redSqrt=function(){return u(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},f.prototype.redInvm=function(){return u(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},f.prototype.redNeg=function(){return u(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},f.prototype.redPow=function(N){return u(this.red&&!N.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,N)};var g={k256:null,p224:null,p192:null,p25519:null};function P(j,N){this.name=j,this.p=new f(N,16),this.n=this.p.bitLength(),this.k=new f(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}P.prototype._tmp=function(){var N=new f(null);return N.words=new Array(Math.ceil(this.n/13)),N},P.prototype.ireduce=function(N){var H=N,te;do this.split(H,this.tmp),H=this.imulK(H),H=H.iadd(this.tmp),te=H.bitLength();while(te>this.n);var oe=te0?H.isub(this.p):H.strip!==void 0?H.strip():H._strip(),H},P.prototype.split=function(N,H){N.iushrn(this.n,0,H)},P.prototype.imulK=function(N){return N.imul(this.k)};function T(){P.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}c(T,P),T.prototype.split=function(N,H){for(var te=4194303,oe=Math.min(N.length,9),_e=0;_e>>22,Ee=Ce}Ee>>>=22,N.words[_e-10]=Ee,Ee===0&&N.length>10?N.length-=10:N.length-=9},T.prototype.imulK=function(N){N.words[N.length]=0,N.words[N.length+1]=0,N.length+=2;for(var H=0,te=0;te>>=26,N.words[te]=_e,H=oe}return H!==0&&(N.words[N.length++]=H),N},f._prime=function(N){if(g[N])return g[N];var H;if(N==="k256")H=new T;else if(N==="p224")H=new z;else if(N==="p192")H=new O;else if(N==="p25519")H=new V;else throw new Error("Unknown prime "+N);return g[N]=H,H};function G(j){if(typeof j=="string"){var N=f._prime(j);this.m=N.p,this.prime=N}else u(j.gtn(1),"modulus must be greater than 1"),this.m=j,this.prime=null}G.prototype._verify1=function(N){u(N.negative===0,"red works only with positives"),u(N.red,"red works only with red numbers")},G.prototype._verify2=function(N,H){u((N.negative|H.negative)===0,"red works only with positives"),u(N.red&&N.red===H.red,"red works only with red numbers")},G.prototype.imod=function(N){return this.prime?this.prime.ireduce(N)._forceRed(this):N.umod(this.m)._forceRed(this)},G.prototype.neg=function(N){return N.isZero()?N.clone():this.m.sub(N)._forceRed(this)},G.prototype.add=function(N,H){this._verify2(N,H);var te=N.add(H);return te.cmp(this.m)>=0&&te.isub(this.m),te._forceRed(this)},G.prototype.iadd=function(N,H){this._verify2(N,H);var te=N.iadd(H);return te.cmp(this.m)>=0&&te.isub(this.m),te},G.prototype.sub=function(N,H){this._verify2(N,H);var te=N.sub(H);return te.cmpn(0)<0&&te.iadd(this.m),te._forceRed(this)},G.prototype.isub=function(N,H){this._verify2(N,H);var te=N.isub(H);return te.cmpn(0)<0&&te.iadd(this.m),te},G.prototype.shl=function(N,H){return this._verify1(N),this.imod(N.ushln(H))},G.prototype.imul=function(N,H){return this._verify2(N,H),this.imod(N.imul(H))},G.prototype.mul=function(N,H){return this._verify2(N,H),this.imod(N.mul(H))},G.prototype.isqr=function(N){return this.imul(N,N.clone())},G.prototype.sqr=function(N){return this.mul(N,N)},G.prototype.sqrt=function(N){if(N.isZero())return N.clone();var H=this.m.andln(3);if(u(H%2===1),H===3){var te=this.m.add(new f(1)).iushrn(2);return this.pow(N,te)}for(var oe=this.m.subn(1),_e=0;!oe.isZero()&&oe.andln(1)===0;)_e++,oe.iushrn(1);u(!oe.isZero());var Ee=new f(1).toRed(this),Ce=Ee.redNeg(),me=this.m.subn(1).iushrn(1),ie=this.m.bitLength();for(ie=new f(2*ie*ie).toRed(this);this.pow(ie,me).cmp(Ce)!==0;)ie.redIAdd(Ce);for(var Se=this.pow(ie,oe),Le=this.pow(N,oe.addn(1).iushrn(1)),Ae=this.pow(N,oe),Fe=_e;Ae.cmp(Ee)!==0;){for(var Pe=Ae,ge=0;Pe.cmp(Ee)!==0;ge++)Pe=Pe.redSqr();u(ge=0;_e--){for(var Se=H.words[_e],Le=ie-1;Le>=0;Le--){var Ae=Se>>Le&1;if(Ee!==oe[0]&&(Ee=this.sqr(Ee)),Ae===0&&Ce===0){me=0;continue}Ce<<=1,Ce|=Ae,me++,!(me!==te&&(_e!==0||Le!==0))&&(Ee=this.mul(Ee,oe[Ce]),me=0,Ce=0)}ie=26}return Ee},G.prototype.convertTo=function(N){var H=N.umod(this.m);return H===N?H.clone():H},G.prototype.convertFrom=function(N){var H=N.clone();return H.red=null,H},f.mont=function(N){return new Z(N)};function Z(j){G.call(this,j),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new f(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}c(Z,G),Z.prototype.convertTo=function(N){return this.imod(N.ushln(this.shift))},Z.prototype.convertFrom=function(N){var H=this.imod(N.mul(this.rinv));return H.red=null,H},Z.prototype.imul=function(N,H){if(N.isZero()||H.isZero())return N.words[0]=0,N.length=1,N;var te=N.imul(H),oe=te.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),_e=te.isub(oe).iushrn(this.shift),Ee=_e;return _e.cmp(this.m)>=0?Ee=_e.isub(this.m):_e.cmpn(0)<0&&(Ee=_e.iadd(this.m)),Ee._forceRed(this)},Z.prototype.mul=function(N,H){if(N.isZero()||H.isZero())return new f(0)._forceRed(this);var te=N.mul(H),oe=te.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),_e=te.isub(oe).iushrn(this.shift),Ee=_e;return _e.cmp(this.m)>=0?Ee=_e.isub(this.m):_e.cmpn(0)<0&&(Ee=_e.iadd(this.m)),Ee._forceRed(this)},Z.prototype.invm=function(N){var H=this.imod(N._invmp(this.m).mul(this.r2));return H._forceRed(this)}}(i,this)},6860:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]-l[0],o[1]=s[1]-l[1],o[2]=s[2]-l[2],o[3]=s[3]-l[3],o}},6864:function(i){i.exports=a;function a(){var o=new Float32Array(16);return o[0]=1,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=1,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=1,o[11]=0,o[12]=0,o[13]=0,o[14]=0,o[15]=1,o}},6867:function(i,a,o){"use strict";i.exports=p;var s=o(1888),l=o(855),u=o(7150);function c(k,E){for(var S=0;S>>1;if(!(M<=0)){var g,P=s.mallocDouble(2*M*x),T=s.mallocInt32(x);if(x=f(k,M,P,T),x>0){if(M===1&&L)l.init(x),g=l.sweepComplete(M,S,0,x,P,T,0,x,P,T);else{var z=s.mallocDouble(2*M*C),O=s.mallocInt32(C);C=f(E,M,z,O),C>0&&(l.init(x+C),M===1?g=l.sweepBipartite(M,S,0,x,P,T,0,C,z,O):g=u(M,S,L,x,P,T,C,z,O),s.free(z),s.free(O))}s.free(P),s.free(T)}return g}}}var d;function v(k,E){d.push([k,E])}function _(k){return d=[],h(k,k,v,!0),d}function b(k,E){return d=[],h(k,E,v,!1),d}function p(k,E,S){switch(arguments.length){case 1:return _(k);case 2:return typeof E=="function"?h(k,k,E,!0):b(k,E);case 3:return h(k,E,S,!1);default:throw new Error("box-intersect: Invalid arguments")}}},6894:function(i){i.exports=a;function a(o,s,l,u){var c=l[1],f=l[2],h=s[1]-c,d=s[2]-f,v=Math.sin(u),_=Math.cos(u);return o[0]=s[0],o[1]=c+h*_-d*v,o[2]=f+h*v+d*_,o}},7004:function(i){"use strict";i.exports=a;function a(o){for(var s=o.length,l=o[o.length-1],u=s,c=s-2;c>=0;--c){var f=l,h=o[c];l=f+h;var d=l-f,v=h-d;v&&(o[--u]=l,l=v)}for(var _=0,c=u;c=p0)&&!(p1>=hi)"),E=v("lo===p0"),S=v("lo0;){Se-=1;var Fe=Se*M,Pe=T[Fe],ge=T[Fe+1],Re=T[Fe+2],ce=T[Fe+3],Ze=T[Fe+4],ut=T[Fe+5],pt=Se*g,Zt=z[pt],st=z[pt+1],lt=ut&1,Gt=!!(ut&16),Nt=_e,Jt=Ee,sr=me,wr=ie;if(lt&&(Nt=me,Jt=ie,sr=_e,wr=Ee),!(ut&2&&(Re=S(N,Pe,ge,Re,Nt,Jt,st),ge>=Re))&&!(ut&4&&(ge=L(N,Pe,ge,Re,Nt,Jt,Zt),ge>=Re))){var cr=Re-ge,$e=Ze-ce;if(Gt){if(N*cr*(cr+$e)me&&Se>0){var Le=(ie[Se][0]-me)/(ie[Se][0]-ie[Se-1][0]);return ie[Se][1]*(1-Le)+Le*ie[Se-1][1]}}return 1}function Z(me,ie){for(var Se=p({colormap:me,nshades:256,format:"rgba"}),Le=new Uint8Array(256*4),Ae=0;Ae<256;++Ae){for(var Fe=Se[Ae],Pe=0;Pe<3;++Pe)Le[4*Ae+Pe]=Fe[Pe];ie?Le[4*Ae+3]=255*G(Ae/255,ie):Le[4*Ae+3]=255*Fe[3]}return b(Le,[256,256,4],[4,0,1])}function j(me){for(var ie=me.length,Se=new Array(ie),Le=0;Le0){var pt=this.triShader;pt.bind(),pt.uniforms=ge,this.triangleVAO.bind(),ie.drawArrays(ie.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var pt=this.lineShader;pt.bind(),pt.uniforms=ge,this.edgeVAO.bind(),ie.lineWidth(this.lineWidth*this.pixelRatio),ie.drawArrays(ie.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()}if(this.pointCount>0){var pt=this.pointShader;pt.bind(),pt.uniforms=ge,this.pointVAO.bind(),ie.drawArrays(ie.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var pt=this.contourShader;pt.bind(),pt.uniforms=ge,this.contourVAO.bind(),ie.drawArrays(ie.LINES,0,this.contourCount),this.contourVAO.unbind()}},V.drawPick=function(me){me=me||{};for(var ie=this.gl,Se=me.model||z,Le=me.view||z,Ae=me.projection||z,Fe=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],Pe=0;Pe<3;++Pe)Fe[0][Pe]=Math.max(Fe[0][Pe],this.clipBounds[0][Pe]),Fe[1][Pe]=Math.min(Fe[1][Pe],this.clipBounds[1][Pe]);this._model=[].slice.call(Se),this._view=[].slice.call(Le),this._projection=[].slice.call(Ae),this._resolution=[ie.drawingBufferWidth,ie.drawingBufferHeight];var ge={model:Se,view:Le,projection:Ae,clipBounds:Fe,pickId:this.pickId/255},Re=this.pickShader;if(Re.bind(),Re.uniforms=ge,this.triangleCount>0&&(this.triangleVAO.bind(),ie.drawArrays(ie.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),ie.lineWidth(this.lineWidth*this.pixelRatio),ie.drawArrays(ie.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var Re=this.pointPickShader;Re.bind(),Re.uniforms=ge,this.pointVAO.bind(),ie.drawArrays(ie.POINTS,0,this.pointCount),this.pointVAO.unbind()}},V.pick=function(me){if(!me||me.id!==this.pickId)return null;for(var ie=me.value[0]+256*me.value[1]+65536*me.value[2],Se=this.cells[ie],Le=this.positions,Ae=new Array(Se.length),Fe=0;FeMath.max(x,C)?M[2]=1:x>Math.max(L,C)?M[0]=1:M[1]=1;for(var g=0,P=0,T=0;T<3;++T)g+=S[T]*S[T],P+=M[T]*S[T];for(var T=0;T<3;++T)M[T]-=P/g*S[T];return f(M,M),M}function b(S,L,x,C,M,g,P,T){this.center=s(x),this.up=s(C),this.right=s(M),this.radius=s([g]),this.angle=s([P,T]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(S,L),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var z=0;z<16;++z)this.computedMatrix[z]=.5;this.recalcMatrix(0)}var p=b.prototype;p.setDistanceLimits=function(S,L){S>0?S=Math.log(S):S=-1/0,L>0?L=Math.log(L):L=1/0,L=Math.max(L,S),this.radius.bounds[0][0]=S,this.radius.bounds[1][0]=L},p.getDistanceLimits=function(S){var L=this.radius.bounds[0];return S?(S[0]=Math.exp(L[0][0]),S[1]=Math.exp(L[1][0]),S):[Math.exp(L[0][0]),Math.exp(L[1][0])]},p.recalcMatrix=function(S){this.center.curve(S),this.up.curve(S),this.right.curve(S),this.radius.curve(S),this.angle.curve(S);for(var L=this.computedUp,x=this.computedRight,C=0,M=0,g=0;g<3;++g)M+=L[g]*x[g],C+=L[g]*L[g];for(var P=Math.sqrt(C),T=0,g=0;g<3;++g)x[g]-=L[g]*M/C,T+=x[g]*x[g],L[g]/=P;for(var z=Math.sqrt(T),g=0;g<3;++g)x[g]/=z;var O=this.computedToward;c(O,L,x),f(O,O);for(var V=Math.exp(this.computedRadius[0]),G=this.computedAngle[0],Z=this.computedAngle[1],j=Math.cos(G),N=Math.sin(G),H=Math.cos(Z),te=Math.sin(Z),oe=this.computedCenter,_e=j*H,Ee=N*H,Ce=te,me=-j*te,ie=-N*te,Se=H,Le=this.computedEye,Ae=this.computedMatrix,g=0;g<3;++g){var Fe=_e*x[g]+Ee*O[g]+Ce*L[g];Ae[4*g+1]=me*x[g]+ie*O[g]+Se*L[g],Ae[4*g+2]=Fe,Ae[4*g+3]=0}var Pe=Ae[1],ge=Ae[5],Re=Ae[9],ce=Ae[2],Ze=Ae[6],ut=Ae[10],pt=ge*ut-Re*Ze,Zt=Re*ce-Pe*ut,st=Pe*Ze-ge*ce,lt=d(pt,Zt,st);pt/=lt,Zt/=lt,st/=lt,Ae[0]=pt,Ae[4]=Zt,Ae[8]=st;for(var g=0;g<3;++g)Le[g]=oe[g]+Ae[2+4*g]*V;for(var g=0;g<3;++g){for(var T=0,Gt=0;Gt<3;++Gt)T+=Ae[g+4*Gt]*Le[Gt];Ae[12+g]=-T}Ae[15]=1},p.getMatrix=function(S,L){this.recalcMatrix(S);var x=this.computedMatrix;if(L){for(var C=0;C<16;++C)L[C]=x[C];return L}return x};var k=[0,0,0];p.rotate=function(S,L,x,C){if(this.angle.move(S,L,x),C){this.recalcMatrix(S);var M=this.computedMatrix;k[0]=M[2],k[1]=M[6],k[2]=M[10];for(var g=this.computedUp,P=this.computedRight,T=this.computedToward,z=0;z<3;++z)M[4*z]=g[z],M[4*z+1]=P[z],M[4*z+2]=T[z];u(M,M,C,k);for(var z=0;z<3;++z)g[z]=M[4*z],P[z]=M[4*z+1];this.up.set(S,g[0],g[1],g[2]),this.right.set(S,P[0],P[1],P[2])}},p.pan=function(S,L,x,C){L=L||0,x=x||0,C=C||0,this.recalcMatrix(S);var M=this.computedMatrix,g=Math.exp(this.computedRadius[0]),P=M[1],T=M[5],z=M[9],O=d(P,T,z);P/=O,T/=O,z/=O;var V=M[0],G=M[4],Z=M[8],j=V*P+G*T+Z*z;V-=P*j,G-=T*j,Z-=z*j;var N=d(V,G,Z);V/=N,G/=N,Z/=N;var H=V*L+P*x,te=G*L+T*x,oe=Z*L+z*x;this.center.move(S,H,te,oe);var _e=Math.exp(this.computedRadius[0]);_e=Math.max(1e-4,_e+C),this.radius.set(S,Math.log(_e))},p.translate=function(S,L,x,C){this.center.move(S,L||0,x||0,C||0)},p.setMatrix=function(S,L,x,C){var M=1;typeof x=="number"&&(M=x|0),(M<0||M>3)&&(M=1);var g=(M+2)%3,P=(M+1)%3;L||(this.recalcMatrix(S),L=this.computedMatrix);var T=L[M],z=L[M+4],O=L[M+8];if(C){var G=Math.abs(T),Z=Math.abs(z),j=Math.abs(O),N=Math.max(G,Z,j);G===N?(T=T<0?-1:1,z=O=0):j===N?(O=O<0?-1:1,T=z=0):(z=z<0?-1:1,T=O=0)}else{var V=d(T,z,O);T/=V,z/=V,O/=V}var H=L[g],te=L[g+4],oe=L[g+8],_e=H*T+te*z+oe*O;H-=T*_e,te-=z*_e,oe-=O*_e;var Ee=d(H,te,oe);H/=Ee,te/=Ee,oe/=Ee;var Ce=z*oe-O*te,me=O*H-T*oe,ie=T*te-z*H,Se=d(Ce,me,ie);Ce/=Se,me/=Se,ie/=Se,this.center.jump(S,cr,$e,St),this.radius.idle(S),this.up.jump(S,T,z,O),this.right.jump(S,H,te,oe);var Le,Ae;if(M===2){var Fe=L[1],Pe=L[5],ge=L[9],Re=Fe*H+Pe*te+ge*oe,ce=Fe*Ce+Pe*me+ge*ie;Zt<0?Le=-Math.PI/2:Le=Math.PI/2,Ae=Math.atan2(ce,Re)}else{var Ze=L[2],ut=L[6],pt=L[10],Zt=Ze*T+ut*z+pt*O,st=Ze*H+ut*te+pt*oe,lt=Ze*Ce+ut*me+pt*ie;Le=Math.asin(v(Zt)),Ae=Math.atan2(lt,st)}this.angle.jump(S,Ae,Le),this.recalcMatrix(S);var Gt=L[2],Nt=L[6],Jt=L[10],sr=this.computedMatrix;l(sr,L);var wr=sr[15],cr=sr[12]/wr,$e=sr[13]/wr,St=sr[14]/wr,Qt=Math.exp(this.computedRadius[0]);this.center.jump(S,cr-Gt*Qt,$e-Nt*Qt,St-Jt*Qt)},p.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},p.idle=function(S){this.center.idle(S),this.up.idle(S),this.right.idle(S),this.radius.idle(S),this.angle.idle(S)},p.flush=function(S){this.center.flush(S),this.up.flush(S),this.right.flush(S),this.radius.flush(S),this.angle.flush(S)},p.setDistance=function(S,L){L>0&&this.radius.set(S,Math.log(L))},p.lookAt=function(S,L,x,C){this.recalcMatrix(S),L=L||this.computedEye,x=x||this.computedCenter,C=C||this.computedUp;var M=C[0],g=C[1],P=C[2],T=d(M,g,P);if(!(T<1e-6)){M/=T,g/=T,P/=T;var z=L[0]-x[0],O=L[1]-x[1],V=L[2]-x[2],G=d(z,O,V);if(!(G<1e-6)){z/=G,O/=G,V/=G;var Z=this.computedRight,j=Z[0],N=Z[1],H=Z[2],te=M*j+g*N+P*H;j-=te*M,N-=te*g,H-=te*P;var oe=d(j,N,H);if(!(oe<.01&&(j=g*V-P*O,N=P*z-M*V,H=M*O-g*z,oe=d(j,N,H),oe<1e-6))){j/=oe,N/=oe,H/=oe,this.up.set(S,M,g,P),this.right.set(S,j,N,H),this.center.set(S,x[0],x[1],x[2]),this.radius.set(S,Math.log(G));var _e=g*H-P*N,Ee=P*j-M*H,Ce=M*N-g*j,me=d(_e,Ee,Ce);_e/=me,Ee/=me,Ce/=me;var ie=M*z+g*O+P*V,Se=j*z+N*O+H*V,Le=_e*z+Ee*O+Ce*V,Ae=Math.asin(v(ie)),Fe=Math.atan2(Le,Se),Pe=this.angle._state,ge=Pe[Pe.length-1],Re=Pe[Pe.length-2];ge=ge%(2*Math.PI);var ce=Math.abs(ge+2*Math.PI-Fe),Ze=Math.abs(ge-Fe),ut=Math.abs(ge-2*Math.PI-Fe);ce0)throw new Error("Invalid string. Length must be a multiple of 4");var L=E.indexOf("=");L===-1&&(L=S);var x=L===S?0:4-L%4;return[L,x]}function d(E){var S=h(E),L=S[0],x=S[1];return(L+x)*3/4-x}function v(E,S,L){return(S+L)*3/4-L}function _(E){var S,L=h(E),x=L[0],C=L[1],M=new l(v(E,x,C)),g=0,P=C>0?x-4:x,T;for(T=0;T>16&255,M[g++]=S>>8&255,M[g++]=S&255;return C===2&&(S=s[E.charCodeAt(T)]<<2|s[E.charCodeAt(T+1)]>>4,M[g++]=S&255),C===1&&(S=s[E.charCodeAt(T)]<<10|s[E.charCodeAt(T+1)]<<4|s[E.charCodeAt(T+2)]>>2,M[g++]=S>>8&255,M[g++]=S&255),M}function b(E){return o[E>>18&63]+o[E>>12&63]+o[E>>6&63]+o[E&63]}function p(E,S,L){for(var x,C=[],M=S;MP?P:g+M));return x===1?(S=E[L-1],C.push(o[S>>2]+o[S<<4&63]+"==")):x===2&&(S=(E[L-2]<<8)+E[L-1],C.push(o[S>>10]+o[S>>4&63]+o[S<<2&63]+"=")),C.join("")}},7518:function(i,a,o){"use strict";var s=o(1433);function l(f,h,d,v,_,b){this.location=f,this.dimension=h,this.a=d,this.b=v,this.c=_,this.d=b}l.prototype.bind=function(f){switch(this.dimension){case 1:f.vertexAttrib1f(this.location,this.a);break;case 2:f.vertexAttrib2f(this.location,this.a,this.b);break;case 3:f.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:f.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d);break}};function u(f,h,d){this.gl=f,this._ext=h,this.handle=d,this._attribs=[],this._useElements=!1,this._elementsType=f.UNSIGNED_SHORT}u.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var f=0;f1.0001)return null;T+=P[L]}return Math.abs(T-1)>.001?null:[x,h(v,P),P]}},7636:function(i){i.exports=a;function a(o,s){s=s||1;var l=Math.random()*2*Math.PI,u=Math.random()*2-1,c=Math.sqrt(1-u*u)*s;return o[0]=Math.cos(l)*c,o[1]=Math.sin(l)*c,o[2]=u*s,o}},7640:function(i,a,o){"use strict";var s=o(1888);function l(_){switch(_){case"uint32":return[s.mallocUint32,s.freeUint32];default:return null}}var u={"uint32,1,0":function(_,b){return function(k,E,S,L,x,C,M,g,P,T,z){var O,V,G,Z=k*x+L,H,N=_(g),j,re,oe,_e;for(O=k+1;O<=E;++O){for(V=O,Z+=x,G=Z,j=0,re=Z,H=0;Hk;){j=0,re=G-x;t:for(H=0;H_e)break t;re+=T,j+=z}for(j=G,re=G-x,H=0;H>1,N=H-V,j=H+V,re=G,oe=N,_e=H,Ee=j,Ce=Z,me=E+1,ie=S-1,Se=!0,Le,Ae,Fe,Pe,ge,Re,ce,Ze,ut,pt=0,Zt=0,st=0,lt,Gt,Nt,Jt,sr,wr,cr,$e,St,Qt,Vt,_t,It,mt,er,lr,Tr=P,Lr=b(Tr),ti=b(Tr);Gt=C*re,Nt=C*oe,lr=x;e:for(lt=0;lt0){Ae=re,re=oe,oe=Ae;break e}if(st<0)break e;lr+=z}Gt=C*Ee,Nt=C*Ce,lr=x;e:for(lt=0;lt0){Ae=Ee,Ee=Ce,Ce=Ae;break e}if(st<0)break e;lr+=z}Gt=C*re,Nt=C*_e,lr=x;e:for(lt=0;lt0){Ae=re,re=_e,_e=Ae;break e}if(st<0)break e;lr+=z}Gt=C*oe,Nt=C*_e,lr=x;e:for(lt=0;lt0){Ae=oe,oe=_e,_e=Ae;break e}if(st<0)break e;lr+=z}Gt=C*re,Nt=C*Ee,lr=x;e:for(lt=0;lt0){Ae=re,re=Ee,Ee=Ae;break e}if(st<0)break e;lr+=z}Gt=C*_e,Nt=C*Ee,lr=x;e:for(lt=0;lt0){Ae=_e,_e=Ee,Ee=Ae;break e}if(st<0)break e;lr+=z}Gt=C*oe,Nt=C*Ce,lr=x;e:for(lt=0;lt0){Ae=oe,oe=Ce,Ce=Ae;break e}if(st<0)break e;lr+=z}Gt=C*oe,Nt=C*_e,lr=x;e:for(lt=0;lt0){Ae=oe,oe=_e,_e=Ae;break e}if(st<0)break e;lr+=z}Gt=C*Ee,Nt=C*Ce,lr=x;e:for(lt=0;lt0){Ae=Ee,Ee=Ce,Ce=Ae;break e}if(st<0)break e;lr+=z}for(Gt=C*re,Nt=C*oe,Jt=C*_e,sr=C*Ee,wr=C*Ce,cr=C*G,$e=C*H,St=C*Z,er=0,lr=x,lt=0;lt0)ie--;else if(st<0){for(Gt=C*Re,Nt=C*me,Jt=C*ie,lr=x,lt=0;lt0)for(;;){ce=x+ie*C,er=0;e:for(lt=0;lt0){if(--ieZ){e:for(;;){for(ce=x+me*C,er=0,lr=x,lt=0;lt1&&k?S(p,k[0],k[1]):S(p)}var d={"uint32,1,0":function(_,b){return function(p){var k=p.data,E=p.offset|0,S=p.shape,L=p.stride,x=L[0]|0,C=S[0]|0,M=L[1]|0,g=S[1]|0,P=M,T=M,z=1;C<=32?_(0,C-1,k,E,x,M,C,g,P,T,z):b(0,C-1,k,E,x,M,C,g,P,T,z)}}};function v(_,b){var p=[b,_].join(","),k=d[p],E=c(_,b),S=h(_,b,E);return k(E,S)}i.exports=v},7642:function(i,a,o){"use strict";var s=o(8954),l=o(1682);i.exports=h;function u(d,v){this.point=d,this.index=v}function c(d,v){for(var _=d.point,b=v.point,p=_.length,k=0;k=2)return!1;G[H]=N}return!0}):V=V.filter(function(G){for(var Z=0;Z<=b;++Z){var H=P[G[Z]];if(H<0)return!1;G[Z]=H}return!0}),b&1)for(var E=0;E",j="",re=N.length,oe=j.length,_e=G[0]===k||G[0]===L,Ee=0,Ce=-oe;Ee>-1&&(Ee=Z.indexOf(N,Ee),!(Ee===-1||(Ce=Z.indexOf(j,Ee+re),Ce===-1)||Ce<=Ee));){for(var me=Ee;me=Ce)H[me]=null,Z=Z.substr(0,me)+" "+Z.substr(me+1);else if(H[me]!==null){var ie=H[me].indexOf(G[0]);ie===-1?H[me]+=G:_e&&(H[me]=H[me].substr(0,ie+1)+(1+parseInt(H[me][ie+1]))+H[me].substr(ie+2))}var Se=Ee+re,Le=Z.substr(Se,Ce-Se),Ae=Le.indexOf(N);Ae!==-1?Ee=Ae:Ee=Ce+oe}return H}function M(V,G,Z){for(var H=G.textAlign||"start",N=G.textBaseline||"alphabetic",j=[1<<30,1<<30],re=[0,0],oe=V.length,_e=0;_e/g,` -`):Z=Z.replace(/\/g," ");var re="",oe=[];for(ge=0;ge-1?parseInt($e[1+Vt]):0,mt=_t>-1?parseInt(St[1+_t]):0;It!==mt&&(Qt=Qt.replace(st(),"?px "),Ze*=Math.pow(.75,mt-It),Qt=Qt.replace("?px ",st())),ce+=.25*ie*(mt-It)}if(j.superscripts===!0){var er=$e.indexOf(k),lr=St.indexOf(k),Tr=er>-1?parseInt($e[1+er]):0,Lr=lr>-1?parseInt(St[1+lr]):0;Tr!==Lr&&(Qt=Qt.replace(st(),"?px "),Ze*=Math.pow(.75,Lr-Tr),Qt=Qt.replace("?px ",st())),ce-=.25*ie*(Lr-Tr)}if(j.bolds===!0){var ti=$e.indexOf(v)>-1,Br=St.indexOf(v)>-1;!ti&&Br&&(Vr?Qt=Qt.replace("italic ","italic bold "):Qt="bold "+Qt),ti&&!Br&&(Qt=Qt.replace("bold ",""))}if(j.italics===!0){var Vr=$e.indexOf(b)>-1,dt=St.indexOf(b)>-1;!Vr&&dt&&(Qt="italic "+Qt),Vr&&!dt&&(Qt=Qt.replace("italic ",""))}G.font=Qt}for(Pe=0;Pe0&&(N=H.size),H.lineSpacing&&H.lineSpacing>0&&(j=H.lineSpacing),H.styletags&&H.styletags.breaklines&&(re.breaklines=!!H.styletags.breaklines),H.styletags&&H.styletags.bolds&&(re.bolds=!!H.styletags.bolds),H.styletags&&H.styletags.italics&&(re.italics=!!H.styletags.italics),H.styletags&&H.styletags.subscripts&&(re.subscripts=!!H.styletags.subscripts),H.styletags&&H.styletags.superscripts&&(re.superscripts=!!H.styletags.superscripts)),Z.font=[H.fontStyle,H.fontVariant,H.fontWeight,N+"px",H.font].filter(function(_e){return _e}).join(" "),Z.textAlign="start",Z.textBaseline="alphabetic",Z.direction="ltr";var oe=g(G,Z,V,N,j,re);return z(oe,H,N)}},7721:function(i,a,o){"use strict";var s=o(5716);i.exports=l;function l(u){return s(u[0])*s(u[1])}},7765:function(i,a,o){"use strict";i.exports=p;var s=o(9618),l=o(1888),u=o(446),c=o(1570);function f(k){for(var E=k.length,S=0,L=0;LV||z<0||z>V)throw new Error("gl-texture2d: Invalid texture size");return P._shape=[T,z],P.bind(),O.texImage2D(O.TEXTURE_2D,0,P.format,T,z,0,P.format,P.type,null),P._mipLevels=[0],P}function p(P,T,z,O,V,G){this.gl=P,this.handle=T,this.format=V,this.type=G,this._shape=[z,O],this._mipLevels=[0],this._magFilter=P.NEAREST,this._minFilter=P.NEAREST,this._wrapS=P.CLAMP_TO_EDGE,this._wrapT=P.CLAMP_TO_EDGE,this._anisoSamples=1;var Z=this,H=[this._wrapS,this._wrapT];Object.defineProperties(H,[{get:function(){return Z._wrapS},set:function(j){return Z.wrapS=j}},{get:function(){return Z._wrapT},set:function(j){return Z.wrapT=j}}]),this._wrapVector=H;var N=[this._shape[0],this._shape[1]];Object.defineProperties(N,[{get:function(){return Z._shape[0]},set:function(j){return Z.width=j}},{get:function(){return Z._shape[1]},set:function(j){return Z.height=j}}]),this._shapeVector=N}var k=p.prototype;Object.defineProperties(k,{minFilter:{get:function(){return this._minFilter},set:function(P){this.bind();var T=this.gl;if(this.type===T.FLOAT&&c.indexOf(P)>=0&&(T.getExtension("OES_texture_float_linear")||(P=T.NEAREST)),f.indexOf(P)<0)throw new Error("gl-texture2d: Unknown filter mode "+P);return T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MIN_FILTER,P),this._minFilter=P}},magFilter:{get:function(){return this._magFilter},set:function(P){this.bind();var T=this.gl;if(this.type===T.FLOAT&&c.indexOf(P)>=0&&(T.getExtension("OES_texture_float_linear")||(P=T.NEAREST)),f.indexOf(P)<0)throw new Error("gl-texture2d: Unknown filter mode "+P);return T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MAG_FILTER,P),this._magFilter=P}},mipSamples:{get:function(){return this._anisoSamples},set:function(P){var T=this._anisoSamples;if(this._anisoSamples=Math.max(P,1)|0,T!==this._anisoSamples){var z=this.gl.getExtension("EXT_texture_filter_anisotropic");z&&this.gl.texParameterf(this.gl.TEXTURE_2D,z.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(P){if(this.bind(),h.indexOf(P)<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,P),this._wrapS=P}},wrapT:{get:function(){return this._wrapT},set:function(P){if(this.bind(),h.indexOf(P)<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,P),this._wrapT=P}},wrap:{get:function(){return this._wrapVector},set:function(P){if(Array.isArray(P)||(P=[P,P]),P.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var T=0;T<2;++T)if(h.indexOf(P[T])<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);this._wrapS=P[0],this._wrapT=P[1];var z=this.gl;return this.bind(),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_WRAP_S,this._wrapS),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_WRAP_T,this._wrapT),P}},shape:{get:function(){return this._shapeVector},set:function(P){if(!Array.isArray(P))P=[P|0,P|0];else if(P.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return b(this,P[0]|0,P[1]|0),[P[0]|0,P[1]|0]}},width:{get:function(){return this._shape[0]},set:function(P){return P=P|0,b(this,P,this._shape[1]),P}},height:{get:function(){return this._shape[1]},set:function(P){return P=P|0,b(this,this._shape[0],P),P}}}),k.bind=function(P){var T=this.gl;return P!==void 0&&T.activeTexture(T.TEXTURE0+(P|0)),T.bindTexture(T.TEXTURE_2D,this.handle),P!==void 0?P|0:T.getParameter(T.ACTIVE_TEXTURE)-T.TEXTURE0},k.dispose=function(){this.gl.deleteTexture(this.handle)},k.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var P=Math.min(this._shape[0],this._shape[1]),T=0;P>0;++T,P>>>=1)this._mipLevels.indexOf(T)<0&&this._mipLevels.push(T)},k.setPixels=function(P,T,z,O){var V=this.gl;this.bind(),Array.isArray(T)?(O=z,z=T[1]|0,T=T[0]|0):(T=T||0,z=z||0),O=O||0;var G=v(P)?P:P.raw;if(G){var Z=this._mipLevels.indexOf(O)<0;Z?(V.texImage2D(V.TEXTURE_2D,0,this.format,this.format,this.type,G),this._mipLevels.push(O)):V.texSubImage2D(V.TEXTURE_2D,O,T,z,this.format,this.type,G)}else if(P.shape&&P.stride&&P.data){if(P.shape.length<2||T+P.shape[1]>this._shape[1]>>>O||z+P.shape[0]>this._shape[0]>>>O||T<0||z<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");S(V,T,z,O,this.format,this.type,this._mipLevels,P)}else throw new Error("gl-texture2d: Unsupported data type")};function E(P,T){return P.length===3?T[2]===1&&T[1]===P[0]*P[2]&&T[0]===P[2]:T[0]===1&&T[1]===P[0]}function S(P,T,z,O,V,G,Z,H){var N=H.dtype,j=H.shape.slice();if(j.length<2||j.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var re=0,oe=0,_e=E(j,H.stride.slice());N==="float32"?re=P.FLOAT:N==="float64"?(re=P.FLOAT,_e=!1,N="float32"):N==="uint8"?re=P.UNSIGNED_BYTE:(re=P.UNSIGNED_BYTE,_e=!1,N="uint8");var Ee=1;if(j.length===2)oe=P.LUMINANCE,j=[j[0],j[1],1],H=s(H.data,j,[H.stride[0],H.stride[1],1],H.offset);else if(j.length===3){if(j[2]===1)oe=P.ALPHA;else if(j[2]===2)oe=P.LUMINANCE_ALPHA;else if(j[2]===3)oe=P.RGB;else if(j[2]===4)oe=P.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");Ee=j[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((oe===P.LUMINANCE||oe===P.ALPHA)&&(V===P.LUMINANCE||V===P.ALPHA)&&(oe=V),oe!==V)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var Ce=H.size,me=Z.indexOf(O)<0;if(me&&Z.push(O),re===G&&_e)H.offset===0&&H.data.length===Ce?me?P.texImage2D(P.TEXTURE_2D,O,V,j[0],j[1],0,V,G,H.data):P.texSubImage2D(P.TEXTURE_2D,O,T,z,j[0],j[1],V,G,H.data):me?P.texImage2D(P.TEXTURE_2D,O,V,j[0],j[1],0,V,G,H.data.subarray(H.offset,H.offset+Ce)):P.texSubImage2D(P.TEXTURE_2D,O,T,z,j[0],j[1],V,G,H.data.subarray(H.offset,H.offset+Ce));else{var ie;G===P.FLOAT?ie=u.mallocFloat32(Ce):ie=u.mallocUint8(Ce);var Se=s(ie,j,[j[2],j[2]*j[0],1]);re===P.FLOAT&&G===P.UNSIGNED_BYTE?_(Se,H):l.assign(Se,H),me?P.texImage2D(P.TEXTURE_2D,O,V,j[0],j[1],0,V,G,ie.subarray(0,Ce)):P.texSubImage2D(P.TEXTURE_2D,O,T,z,j[0],j[1],V,G,ie.subarray(0,Ce)),G===P.FLOAT?u.freeFloat32(ie):u.freeUint8(ie)}}function L(P){var T=P.createTexture();return P.bindTexture(P.TEXTURE_2D,T),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_MIN_FILTER,P.NEAREST),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_MAG_FILTER,P.NEAREST),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_S,P.CLAMP_TO_EDGE),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_T,P.CLAMP_TO_EDGE),T}function x(P,T,z,O,V){var G=P.getParameter(P.MAX_TEXTURE_SIZE);if(T<0||T>G||z<0||z>G)throw new Error("gl-texture2d: Invalid texture shape");if(V===P.FLOAT&&!P.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var Z=L(P);return P.texImage2D(P.TEXTURE_2D,0,O,T,z,0,O,V,null),new p(P,Z,T,z,O,V)}function C(P,T,z,O,V,G){var Z=L(P);return P.texImage2D(P.TEXTURE_2D,0,V,V,G,T),new p(P,Z,z,O,V,G)}function M(P,T){var z=T.dtype,O=T.shape.slice(),V=P.getParameter(P.MAX_TEXTURE_SIZE);if(O[0]<0||O[0]>V||O[1]<0||O[1]>V)throw new Error("gl-texture2d: Invalid texture size");var G=E(O,T.stride.slice()),Z=0;z==="float32"?Z=P.FLOAT:z==="float64"?(Z=P.FLOAT,G=!1,z="float32"):z==="uint8"?Z=P.UNSIGNED_BYTE:(Z=P.UNSIGNED_BYTE,G=!1,z="uint8");var H=0;if(O.length===2)H=P.LUMINANCE,O=[O[0],O[1],1],T=s(T.data,O,[T.stride[0],T.stride[1],1],T.offset);else if(O.length===3)if(O[2]===1)H=P.ALPHA;else if(O[2]===2)H=P.LUMINANCE_ALPHA;else if(O[2]===3)H=P.RGB;else if(O[2]===4)H=P.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");Z===P.FLOAT&&!P.getExtension("OES_texture_float")&&(Z=P.UNSIGNED_BYTE,G=!1);var N,j,re=T.size;if(G)T.offset===0&&T.data.length===re?N=T.data:N=T.data.subarray(T.offset,T.offset+re);else{var oe=[O[2],O[2]*O[0],1];j=u.malloc(re,z);var _e=s(j,O,oe,0);(z==="float32"||z==="float64")&&Z===P.UNSIGNED_BYTE?_(_e,T):l.assign(_e,T),N=j.subarray(0,re)}var Ee=L(P);return P.texImage2D(P.TEXTURE_2D,0,H,O[0],O[1],0,H,Z,N),G||u.free(j),new p(P,Ee,O[0],O[1],H,Z)}function g(P){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(c||d(P),typeof arguments[1]=="number")return x(P,arguments[1],arguments[2],arguments[3]||P.RGBA,arguments[4]||P.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return x(P,arguments[1][0]|0,arguments[1][1]|0,arguments[2]||P.RGBA,arguments[3]||P.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var T=arguments[1],z=v(T)?T:T.raw;if(z)return C(P,z,T.width|0,T.height|0,arguments[2]||P.RGBA,arguments[3]||P.UNSIGNED_BYTE);if(T.shape&&T.data&&T.stride)return M(P,T)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},7790:function(){},7815:function(i,a,o){"use strict";var s=o(2931),l=o(9970),u=["xyz","xzy","yxz","yzx","zxy","zyx"],c=function(S,L,x,C){for(var M=S.points,g=S.velocities,P=S.divergences,T=[],z=[],O=[],V=[],G=[],Z=[],H=0,N=0,j=l.create(),re=l.create(),oe=8,_e=0;_e0)for(var ie=0;ieL)return C-1}return C},d=function(S,L,x){return Sx?x:S},v=function(S,L,x){var C=L.vectors,M=L.meshgrid,g=S[0],P=S[1],T=S[2],z=M[0].length,O=M[1].length,V=M[2].length,G=h(M[0],g),Z=h(M[1],P),H=h(M[2],T),N=G+1,j=Z+1,re=H+1;if(G=d(G,0,z-1),N=d(N,0,z-1),Z=d(Z,0,O-1),j=d(j,0,O-1),H=d(H,0,V-1),re=d(re,0,V-1),G<0||Z<0||H<0||N>z-1||j>O-1||re>V-1)return s.create();var oe=M[0][G],_e=M[0][N],Ee=M[1][Z],Ce=M[1][j],me=M[2][H],ie=M[2][re],Se=(g-oe)/(_e-oe),Le=(P-Ee)/(Ce-Ee),Ae=(T-me)/(ie-me);isFinite(Se)||(Se=.5),isFinite(Le)||(Le=.5),isFinite(Ae)||(Ae=.5);var Fe,Pe,ge,Re,ce,Ze;switch(x.reversedX&&(G=z-1-G,N=z-1-N),x.reversedY&&(Z=O-1-Z,j=O-1-j),x.reversedZ&&(H=V-1-H,re=V-1-re),x.filled){case 5:ce=H,Ze=re,ge=Z*V,Re=j*V,Fe=G*V*O,Pe=N*V*O;break;case 4:ce=H,Ze=re,Fe=G*V,Pe=N*V,ge=Z*V*z,Re=j*V*z;break;case 3:ge=Z,Re=j,ce=H*O,Ze=re*O,Fe=G*O*V,Pe=N*O*V;break;case 2:ge=Z,Re=j,Fe=G*O,Pe=N*O,ce=H*O*z,Ze=re*O*z;break;case 1:Fe=G,Pe=N,ce=H*z,Ze=re*z,ge=Z*z*V,Re=j*z*V;break;default:Fe=G,Pe=N,ge=Z*z,Re=j*z,ce=H*z*O,Ze=re*z*O;break}var ut=C[Fe+ge+ce],pt=C[Fe+ge+Ze],Zt=C[Fe+Re+ce],st=C[Fe+Re+Ze],lt=C[Pe+ge+ce],Gt=C[Pe+ge+Ze],Nt=C[Pe+Re+ce],Jt=C[Pe+Re+Ze],sr=s.create(),wr=s.create(),cr=s.create(),$e=s.create();s.lerp(sr,ut,lt,Se),s.lerp(wr,pt,Gt,Se),s.lerp(cr,Zt,Nt,Se),s.lerp($e,st,Jt,Se);var St=s.create(),Qt=s.create();s.lerp(St,sr,cr,Le),s.lerp(Qt,wr,$e,Le);var Vt=s.create();return s.lerp(Vt,St,Qt,Ae),Vt},_=function(S,L){var x=L[0],C=L[1],M=L[2];return S[0]=x<0?-x:x,S[1]=C<0?-C:C,S[2]=M<0?-M:M,S},b=function(S){var L=1/0;S.sort(function(g,P){return g-P});for(var x=S.length,C=1;CN||Jtj||srre)},_e=s.distance(L[0],L[1]),Ee=10*_e/C,Ce=Ee*Ee,me=1,ie=0,Se=x.length;Se>1&&(me=p(x));for(var Le=0;Leie&&(ie=ut),ce.push(ut),V.push({points:Fe,velocities:Pe,divergences:ce});for(var pt=0;ptCe&&s.scale(Zt,Zt,Ee/Math.sqrt(st)),s.add(Zt,Zt,Ae),ge=z(Zt),s.squaredDistance(Re,Zt)-Ce>-1e-4*Ce){Fe.push(Zt),Re=Zt,Pe.push(ge);var Ze=O(Zt,ge),ut=s.length(Ze);isFinite(ut)&&ut>ie&&(ie=ut),ce.push(ut)}Ae=Zt}}var lt=f(V,S.colormap,ie,me);return g?lt.tubeScale=g:(ie===0&&(ie=1),lt.tubeScale=M*.5*me/ie),lt};var k=o(6740),E=o(6405).createMesh;i.exports.createTubeMesh=function(S,L){return E(S,L,{shaders:k,traceType:"streamtube"})}},7827:function(i){i.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},7842:function(i,a,o){"use strict";var s=o(6330),l=o(1533),u=o(2651),c=o(6768),f=o(869),h=o(8697);i.exports=d;function d(v,_){if(s(v))return _?h(v,d(_)):[v[0].clone(),v[1].clone()];var b=0,p,k;if(l(v))p=v.clone();else if(typeof v=="string")p=c(v);else{if(v===0)return[u(0),u(1)];if(v===Math.floor(v))p=u(v);else{for(;v!==Math.floor(v);)v=v*Math.pow(2,256),b-=256;p=u(v)}}if(s(_))p.mul(_[1]),k=_[0].clone();else if(l(_))k=_.clone();else if(typeof _=="string")k=c(_);else if(!_)k=u(1);else if(_===Math.floor(_))k=u(_);else{for(;_!==Math.floor(_);)_=_*Math.pow(2,256),b+=256;k=u(_)}return b>0?p=p.ushln(b):b<0&&(k=k.ushln(-b)),f(p,k)}},7894:function(i){i.exports=a;function a(o){return o[0]=1,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=1,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=1,o[11]=0,o[12]=0,o[13]=0,o[14]=0,o[15]=1,o}},7932:function(i,a,o){var s=o(620);i.exports=s.slice().concat(["layout","centroid","smooth","case","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","uvec2","uvec3","uvec4","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","coherent","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","image1DShadow","image2DShadow","image1DArrayShadow","image2DArrayShadow","imageBuffer","iimageBuffer","uimageBuffer","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray"])},7960:function(i){i.exports=a;function a(o,s){var l=s[0]-o[0],u=s[1]-o[1],c=s[2]-o[2],f=s[3]-o[3];return l*l+u*u+c*c+f*f}},8105:function(i){"use strict";i.exports=o;var a={"lo===p0":s,"lo=p0)&&!(p1>=hi)":d};function o(v){return a[v]}function s(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+g];if(z===S)if(M===T)M+=1,C+=L;else{for(var O=0;L>O;++O){var V=k[x+O];k[x+O]=k[C],k[C++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function l(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+g];if(zO;++O){var V=k[x+O];k[x+O]=k[C],k[C++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function u(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+P];if(z<=S)if(M===T)M+=1,C+=L;else{for(var O=0;L>O;++O){var V=k[x+O];k[x+O]=k[C],k[C++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function c(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+P];if(z<=S)if(M===T)M+=1,C+=L;else{for(var O=0;L>O;++O){var V=k[x+O];k[x+O]=k[C],k[C++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function f(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+g],O=k[x+P];if(z<=S&&S<=O)if(M===T)M+=1,C+=L;else{for(var V=0;L>V;++V){var G=k[x+V];k[x+V]=k[C],k[C++]=G}var Z=E[T];E[T]=E[M],E[M++]=Z}}return M}function h(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+g],O=k[x+P];if(zV;++V){var G=k[x+V];k[x+V]=k[C],k[C++]=G}var Z=E[T];E[T]=E[M],E[M++]=Z}}return M}function d(v,_,b,p,k,E,S,L){for(var x=2*v,C=x*b,M=C,g=b,P=_,T=v+_,z=b;p>z;++z,C+=x){var O=k[C+P],V=k[C+T];if(!(O>=S)&&!(L>=V))if(g===z)g+=1,M+=x;else{for(var G=0;x>G;++G){var Z=k[C+G];k[C+G]=k[M],k[M++]=Z}var H=E[z];E[z]=E[g],E[g++]=H}}return g}},8107:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.min(s[0],l[0]),o[1]=Math.min(s[1],l[1]),o[2]=Math.min(s[2],l[2]),o}},8116:function(i,a,o){"use strict";var s=o(7518),l=o(870);function u(f){this.bindVertexArrayOES=f.bindVertexArray.bind(f),this.createVertexArrayOES=f.createVertexArray.bind(f),this.deleteVertexArrayOES=f.deleteVertexArray.bind(f)}function c(f,h,d,v){var _=f.createVertexArray?new u(f):f.getExtension("OES_vertex_array_object"),b;return _?b=s(f,_):b=l(f),b.update(h,d,v),b}i.exports=c},8192:function(i,a,o){i.exports=c;var s=o(2825),l=o(3536),u=o(244);function c(f,h){var d=s(f[0],f[1],f[2]),v=s(h[0],h[1],h[2]);l(d,d),l(v,v);var _=u(d,v);return _>1?0:Math.acos(_)}},8210:function(i){"use strict";i.exports=o;function a(s,l){var u=s+l,c=u-s,f=u-c,h=l-c,d=s-f,v=d+h;return v?[v,u]:[u]}function o(s,l){var u=s.length|0,c=l.length|0;if(u===1&&c===1)return a(s[0],l[0]);var f=u+c,h=new Array(f),d=0,v=0,_=0,b=Math.abs,p=s[v],k=b(p),E=l[_],S=b(E),L,x;k=c?(L=p,v+=1,vd)for(var z=h[p],O=1/Math.sqrt(M*P),T=0;T<3;++T){var V=(T+1)%3,G=(T+2)%3;z[T]+=O*(g[V]*C[G]-g[G]*C[V])}}for(var v=0;vd)for(var O=1/Math.sqrt(Z),T=0;T<3;++T)z[T]*=O;else for(var T=0;T<3;++T)z[T]=0}return h},a.faceNormals=function(l,u,c){for(var f=l.length,h=new Array(f),d=c===void 0?s:c,v=0;vd?L=1/Math.sqrt(L):L=0;for(var p=0;p<3;++p)S[p]*=L;h[v]=S}return h}},8418:function(i,a,o){"use strict";var s=o(5219),l=o(2762),u=o(8116),c=o(1888),f=o(6760),h=o(1283),d=o(9366),v=o(5964),_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],b=ArrayBuffer,p=DataView;function k(Ae){return b.isView(Ae)&&!(Ae instanceof p)}function E(Ae){return Array.isArray(Ae)||k(Ae)}i.exports=Le;function S(Ae,Fe){var Pe=Ae[0],ge=Ae[1],Re=Ae[2],ce=Ae[3];return Ae[0]=Fe[0]*Pe+Fe[4]*ge+Fe[8]*Re+Fe[12]*ce,Ae[1]=Fe[1]*Pe+Fe[5]*ge+Fe[9]*Re+Fe[13]*ce,Ae[2]=Fe[2]*Pe+Fe[6]*ge+Fe[10]*Re+Fe[14]*ce,Ae[3]=Fe[3]*Pe+Fe[7]*ge+Fe[11]*Re+Fe[15]*ce,Ae}function L(Ae,Fe,Pe,ge){return S(ge,ge,Pe),S(ge,ge,Fe),S(ge,ge,Ae)}function x(Ae,Fe){this.index=Ae,this.dataCoordinate=this.position=Fe}function C(Ae){return Ae===!0||Ae>1?1:Ae}function M(Ae,Fe,Pe,ge,Re,ce,Ze,ut,pt,Zt,st,lt){this.gl=Ae,this.pixelRatio=1,this.shader=Fe,this.orthoShader=Pe,this.projectShader=ge,this.pointBuffer=Re,this.colorBuffer=ce,this.glyphBuffer=Ze,this.idBuffer=ut,this.vao=pt,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=Zt,this.pickOrthoShader=st,this.pickProjectShader=lt,this.points=[],this._selectResult=new x(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}var g=M.prototype;g.pickSlots=1,g.setPickBase=function(Ae){this.pickId=Ae},g.isTransparent=function(){if(this.hasAlpha)return!0;for(var Ae=0;Ae<3;++Ae)if(this.axesProject[Ae]&&this.projectHasAlpha)return!0;return!1},g.isOpaque=function(){if(!this.hasAlpha)return!0;for(var Ae=0;Ae<3;++Ae)if(this.axesProject[Ae]&&!this.projectHasAlpha)return!0;return!1};var P=[0,0],T=[0,0,0],z=[0,0,0],O=[0,0,0,1],V=[0,0,0,1],G=_.slice(),Z=[0,0,0],H=[[0,0,0],[0,0,0]];function N(Ae){return Ae[0]=Ae[1]=Ae[2]=0,Ae}function j(Ae,Fe){return Ae[0]=Fe[0],Ae[1]=Fe[1],Ae[2]=Fe[2],Ae[3]=1,Ae}function re(Ae,Fe,Pe,ge){return Ae[0]=Fe[0],Ae[1]=Fe[1],Ae[2]=Fe[2],Ae[Pe]=ge,Ae}function oe(Ae){for(var Fe=H,Pe=0;Pe<2;++Pe)for(var ge=0;ge<3;++ge)Fe[Pe][ge]=Math.max(Math.min(Ae[Pe][ge],1e8),-1e8);return Fe}function _e(Ae,Fe,Pe,ge){var Re=Fe.axesProject,ce=Fe.gl,Ze=Ae.uniforms,ut=Pe.model||_,pt=Pe.view||_,Zt=Pe.projection||_,st=Fe.axesBounds,lt=oe(Fe.clipBounds),Gt;Fe.axes&&Fe.axes.lastCubeProps?Gt=Fe.axes.lastCubeProps.axis:Gt=[1,1,1],P[0]=2/ce.drawingBufferWidth,P[1]=2/ce.drawingBufferHeight,Ae.bind(),Ze.view=pt,Ze.projection=Zt,Ze.screenSize=P,Ze.highlightId=Fe.highlightId,Ze.highlightScale=Fe.highlightScale,Ze.clipBounds=lt,Ze.pickGroup=Fe.pickId/255,Ze.pixelRatio=ge;for(var Nt=0;Nt<3;++Nt)if(Re[Nt]){Ze.scale=Fe.projectScale[Nt],Ze.opacity=Fe.projectOpacity[Nt];for(var Jt=G,sr=0;sr<16;++sr)Jt[sr]=0;for(var sr=0;sr<4;++sr)Jt[5*sr]=1;Jt[5*Nt]=0,Gt[Nt]<0?Jt[12+Nt]=st[0][Nt]:Jt[12+Nt]=st[1][Nt],f(Jt,ut,Jt),Ze.model=Jt;var wr=(Nt+1)%3,cr=(Nt+2)%3,$e=N(T),St=N(z);$e[wr]=1,St[cr]=1;var Qt=L(Zt,pt,ut,j(O,$e)),Vt=L(Zt,pt,ut,j(V,St));if(Math.abs(Qt[1])>Math.abs(Vt[1])){var _t=Qt;Qt=Vt,Vt=_t,_t=$e,$e=St,St=_t;var It=wr;wr=cr,cr=It}Qt[0]<0&&($e[wr]=-1),Vt[1]>0&&(St[cr]=-1);for(var mt=0,er=0,sr=0;sr<4;++sr)mt+=Math.pow(ut[4*wr+sr],2),er+=Math.pow(ut[4*cr+sr],2);$e[wr]/=Math.sqrt(mt),St[cr]/=Math.sqrt(er),Ze.axes[0]=$e,Ze.axes[1]=St,Ze.fragClipBounds[0]=re(Z,lt[0],Nt,-1e8),Ze.fragClipBounds[1]=re(Z,lt[1],Nt,1e8),Fe.vao.bind(),Fe.vao.draw(ce.TRIANGLES,Fe.vertexCount),Fe.lineWidth>0&&(ce.lineWidth(Fe.lineWidth*ge),Fe.vao.draw(ce.LINES,Fe.lineVertexCount,Fe.vertexCount)),Fe.vao.unbind()}}var Ee=[-1e8,-1e8,-1e8],Ce=[1e8,1e8,1e8],me=[Ee,Ce];function ie(Ae,Fe,Pe,ge,Re,ce,Ze){var ut=Pe.gl;if((ce===Pe.projectHasAlpha||Ze)&&_e(Fe,Pe,ge,Re),ce===Pe.hasAlpha||Ze){Ae.bind();var pt=Ae.uniforms;pt.model=ge.model||_,pt.view=ge.view||_,pt.projection=ge.projection||_,P[0]=2/ut.drawingBufferWidth,P[1]=2/ut.drawingBufferHeight,pt.screenSize=P,pt.highlightId=Pe.highlightId,pt.highlightScale=Pe.highlightScale,pt.fragClipBounds=me,pt.clipBounds=Pe.axes.bounds,pt.opacity=Pe.opacity,pt.pickGroup=Pe.pickId/255,pt.pixelRatio=Re,Pe.vao.bind(),Pe.vao.draw(ut.TRIANGLES,Pe.vertexCount),Pe.lineWidth>0&&(ut.lineWidth(Pe.lineWidth*Re),Pe.vao.draw(ut.LINES,Pe.lineVertexCount,Pe.vertexCount)),Pe.vao.unbind()}}g.draw=function(Ae){var Fe=this.useOrtho?this.orthoShader:this.shader;ie(Fe,this.projectShader,this,Ae,this.pixelRatio,!1,!1)},g.drawTransparent=function(Ae){var Fe=this.useOrtho?this.orthoShader:this.shader;ie(Fe,this.projectShader,this,Ae,this.pixelRatio,!0,!1)},g.drawPick=function(Ae){var Fe=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;ie(Fe,this.pickProjectShader,this,Ae,1,!0,!0)},g.pick=function(Ae){if(!Ae||Ae.id!==this.pickId)return null;var Fe=Ae.value[2]+(Ae.value[1]<<8)+(Ae.value[0]<<16);if(Fe>=this.pointCount||Fe<0)return null;var Pe=this.points[Fe],ge=this._selectResult;ge.index=Fe;for(var Re=0;Re<3;++Re)ge.position[Re]=ge.dataCoordinate[Re]=Pe[Re];return ge},g.highlight=function(Ae){if(!Ae)this.highlightId=[1,1,1,1];else{var Fe=Ae.index,Pe=Fe&255,ge=Fe>>8&255,Re=Fe>>16&255;this.highlightId=[Pe/255,ge/255,Re/255,0]}};function Se(Ae,Fe,Pe,ge){var Re;E(Ae)?Fe0){var Vr=0,dt=cr,Ge=[0,0,0,1],Je=[0,0,0,1],je=E(Gt)&&E(Gt[0]),tt=E(sr)&&E(sr[0]);e:for(var ge=0;ge0?1-er[0][0]:ar<0?1+er[1][0]:1,vr*=vr>0?1-er[0][1]:vr<0?1+er[1][1]:1;for(var ii=[ar,vr],In=It.cells||[],wi=It.positions||[],Vt=0;Vt=c?(L=p,v+=1,v0?1:0}},8648:function(i,a,o){i.exports=o(783)},8692:function(i){i.exports=a;function a(o,s,l,u){var c=l[0],f=l[1],h=s[0]-c,d=s[1]-f,v=Math.sin(u),_=Math.cos(u);return o[0]=c+h*_-d*v,o[1]=f+h*v+d*_,o[2]=s[2],o}},8697:function(i,a,o){"use strict";var s=o(869);i.exports=l;function l(u,c){return s(u[0].mul(c[1]),u[1].mul(c[0]))}},8731:function(i,a,o){"use strict";i.exports=d;var s=o(8866);function l(v,_,b,p,k,E){this._gl=v,this._wrapper=_,this._index=b,this._locations=p,this._dimension=k,this._constFunc=E}var u=l.prototype;u.pointer=function(_,b,p,k){var E=this,S=E._gl,L=E._locations[E._index];S.vertexAttribPointer(L,E._dimension,_||S.FLOAT,!!b,p||0,k||0),S.enableVertexAttribArray(L)},u.set=function(v,_,b,p){return this._constFunc(this._locations[this._index],v,_,b,p)},Object.defineProperty(u,"location",{get:function(){return this._locations[this._index]},set:function(v){return v!==this._locations[this._index]&&(this._locations[this._index]=v|0,this._wrapper.program=null),v|0}});var c=[function(v,_,b){return b.length===void 0?v.vertexAttrib1f(_,b):v.vertexAttrib1fv(_,b)},function(v,_,b,p){return b.length===void 0?v.vertexAttrib2f(_,b,p):v.vertexAttrib2fv(_,b)},function(v,_,b,p,k){return b.length===void 0?v.vertexAttrib3f(_,b,p,k):v.vertexAttrib3fv(_,b)},function(v,_,b,p,k,E){return b.length===void 0?v.vertexAttrib4f(_,b,p,k,E):v.vertexAttrib4fv(_,b)}];function f(v,_,b,p,k,E,S){var L=c[k],x=new l(v,_,b,p,k,L);Object.defineProperty(E,S,{set:function(C){return v.disableVertexAttribArray(p[b]),L(v,p[b],C),C},get:function(){return x},enumerable:!0})}function h(v,_,b,p,k,E,S){for(var L=new Array(k),x=new Array(k),C=0;C=0){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new s("","Invalid data type for attribute "+x+": "+C);f(v,_,M[0],p,g,k,x)}else if(C.indexOf("mat")>=0){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new s("","Invalid data type for attribute "+x+": "+C);h(v,_,M,p,g,k,x)}else throw new s("","Unknown data type for attribute "+x+": "+C);break}}return k}},8828:function(i,a){"use strict";"use restrict";var o=32;a.INT_BITS=o,a.INT_MAX=2147483647,a.INT_MIN=-1<0)-(u<0)},a.abs=function(u){var c=u>>o-1;return(u^c)-c},a.min=function(u,c){return c^(u^c)&-(u65535)<<4,u>>>=c,f=(u>255)<<3,u>>>=f,c|=f,f=(u>15)<<2,u>>>=f,c|=f,f=(u>3)<<1,u>>>=f,c|=f,c|u>>1},a.log10=function(u){return u>=1e9?9:u>=1e8?8:u>=1e7?7:u>=1e6?6:u>=1e5?5:u>=1e4?4:u>=1e3?3:u>=100?2:u>=10?1:0},a.popCount=function(u){return u=u-(u>>>1&1431655765),u=(u&858993459)+(u>>>2&858993459),(u+(u>>>4)&252645135)*16843009>>>24};function s(u){var c=32;return u&=-u,u&&c--,u&65535&&(c-=16),u&16711935&&(c-=8),u&252645135&&(c-=4),u&858993459&&(c-=2),u&1431655765&&(c-=1),c}a.countTrailingZeros=s,a.nextPow2=function(u){return u+=u===0,--u,u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u+1},a.prevPow2=function(u){return u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u-(u>>>1)},a.parity=function(u){return u^=u>>>16,u^=u>>>8,u^=u>>>4,u&=15,27030>>>u&1};var l=new Array(256);(function(u){for(var c=0;c<256;++c){var f=c,h=c,d=7;for(f>>>=1;f;f>>>=1)h<<=1,h|=f&1,--d;u[c]=h<>>8&255]<<16|l[u>>>16&255]<<8|l[u>>>24&255]},a.interleave2=function(u,c){return u&=65535,u=(u|u<<8)&16711935,u=(u|u<<4)&252645135,u=(u|u<<2)&858993459,u=(u|u<<1)&1431655765,c&=65535,c=(c|c<<8)&16711935,c=(c|c<<4)&252645135,c=(c|c<<2)&858993459,c=(c|c<<1)&1431655765,u|c<<1},a.deinterleave2=function(u,c){return u=u>>>c&1431655765,u=(u|u>>>1)&858993459,u=(u|u>>>2)&252645135,u=(u|u>>>4)&16711935,u=(u|u>>>16)&65535,u<<16>>16},a.interleave3=function(u,c,f){return u&=1023,u=(u|u<<16)&4278190335,u=(u|u<<8)&251719695,u=(u|u<<4)&3272356035,u=(u|u<<2)&1227133513,c&=1023,c=(c|c<<16)&4278190335,c=(c|c<<8)&251719695,c=(c|c<<4)&3272356035,c=(c|c<<2)&1227133513,u|=c<<1,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,u|f<<2},a.deinterleave3=function(u,c){return u=u>>>c&1227133513,u=(u|u>>>2)&3272356035,u=(u|u>>>4)&251719695,u=(u|u>>>8)&4278190335,u=(u|u>>>16)&1023,u<<22>>22},a.nextCombination=function(u){var c=u|u-1;return c+1|(~c&-~c)-1>>>s(u)+1}},8866:function(i){function a(o,s,l){this.shortMessage=s||"",this.longMessage=l||"",this.rawError=o||"",this.message="gl-shader: "+(s||o||"")+(l?` -`+l:""),this.stack=new Error().stack}a.prototype=new Error,a.prototype.name="GLError",a.prototype.constructor=a,i.exports=a},8902:function(i,a,o){"use strict";var s=o(2478),l=o(3250)[3],u=0,c=1,f=2;i.exports=S;function h(L,x,C,M,g){this.a=L,this.b=x,this.idx=C,this.lowerIds=M,this.upperIds=g}function d(L,x,C,M){this.a=L,this.b=x,this.type=C,this.idx=M}function v(L,x){var C=L.a[0]-x.a[0]||L.a[1]-x.a[1]||L.type-x.type;return C||L.type!==u&&(C=l(L.a,L.b,x.b),C)?C:L.idx-x.idx}function _(L,x){return l(L.a,L.b,x)}function b(L,x,C,M,g){for(var P=s.lt(x,M,_),T=s.gt(x,M,_),z=P;z1&&l(C[V[Z-2]],C[V[Z-1]],M)>0;)L.push([V[Z-1],V[Z-2],g]),Z-=1;V.length=Z,V.push(g);for(var G=O.upperIds,Z=G.length;Z>1&&l(C[G[Z-2]],C[G[Z-1]],M)<0;)L.push([G[Z-2],G[Z-1],g]),Z-=1;G.length=Z,G.push(g)}}function p(L,x){var C;return L.a[0]O[0]&&g.push(new d(O,z,f,P),new d(z,O,c,P))}g.sort(v);for(var V=g[0].a[0]-(1+Math.abs(g[0].a[0]))*Math.pow(2,-52),G=[new h([V,1],[V,0],-1,[],[],[],[])],Z=[],P=0,H=g.length;P0;){k=M.pop();for(var g=k.adjacent,P=0;P<=S;++P){var T=g[P];if(!(!T.boundary||T.lastVisited<=-L)){for(var z=T.vertices,O=0;O<=S;++O){var V=z[O];V<0?x[O]=E:x[O]=C[V]}var G=this.orient();if(G>0)return T;T.lastVisited=-L,G===0&&M.push(T)}}}return null},b.walk=function(k,E){var S=this.vertices.length-1,L=this.dimension,x=this.vertices,C=this.tuple,M=E?this.interior.length*Math.random()|0:this.interior.length-1,g=this.interior[M];e:for(;!g.boundary;){for(var P=g.vertices,T=g.adjacent,z=0;z<=L;++z)C[z]=x[P[z]];g.lastVisited=S;for(var z=0;z<=L;++z){var O=T[z];if(!(O.lastVisited>=S)){var V=C[z];C[z]=k;var G=this.orient();if(C[z]=V,G<0){g=O;continue e}else O.boundary?O.lastVisited=-S:O.lastVisited=S}}return}return g},b.addPeaks=function(k,E){var S=this.vertices.length-1,L=this.dimension,x=this.vertices,C=this.tuple,M=this.interior,g=this.simplices,P=[E];E.lastVisited=S,E.vertices[E.vertices.indexOf(-1)]=S,E.boundary=!1,M.push(E);for(var T=[];P.length>0;){var E=P.pop(),z=E.vertices,O=E.adjacent,V=z.indexOf(S);if(!(V<0)){for(var G=0;G<=L;++G)if(G!==V){var Z=O[G];if(!(!Z.boundary||Z.lastVisited>=S)){var H=Z.vertices;if(Z.lastVisited!==-S){for(var N=0,j=0;j<=L;++j)H[j]<0?(N=j,C[j]=k):C[j]=x[H[j]];var re=this.orient();if(re>0){H[N]=S,Z.boundary=!1,M.push(Z),P.push(Z),Z.lastVisited=S;continue}else Z.lastVisited=-S}var oe=Z.adjacent,_e=z.slice(),Ee=O.slice(),Ce=new u(_e,Ee,!0);g.push(Ce);var me=oe.indexOf(E);if(!(me<0)){oe[me]=Ce,Ee[V]=Z,_e[G]=-1,Ee[G]=E,O[G]=Ce,Ce.flip();for(var j=0;j<=L;++j){var ie=_e[j];if(!(ie<0||ie===S)){for(var Se=new Array(L-1),Le=0,Ae=0;Ae<=L;++Ae){var Fe=_e[Ae];Fe<0||Ae===j||(Se[Le++]=Fe)}T.push(new c(Se,Ce,j))}}}}}}}T.sort(f);for(var G=0;G+1=0?M[P++]=g[z]:T=z&1;if(T===(k&1)){var O=M[0];M[0]=M[1],M[1]=O}E.push(M)}}return E};function p(k,E){var S=k.length;if(S===0)throw new Error("Must have at least d+1 points");var L=k[0].length;if(S<=L)throw new Error("Must input at least d+1 points");var x=k.slice(0,L+1),C=s.apply(void 0,x);if(C===0)throw new Error("Input not in general position");for(var M=new Array(L+1),g=0;g<=L;++g)M[g]=g;C<0&&(M[0]=1,M[1]=0);for(var P=new u(M,new Array(L+1),!1),T=P.adjacent,z=new Array(L+2),g=0;g<=L;++g){for(var O=M.slice(),V=0;V<=L;++V)V===g&&(O[V]=-1);var G=O[0];O[0]=O[1],O[1]=G;var Z=new u(O,new Array(L+1),!0);T[g]=Z,z[g]=Z}z[L+1]=P;for(var g=0;g<=L;++g)for(var O=T[g].vertices,H=T[g].adjacent,V=0;V<=L;++V){var N=O[V];if(N<0){H[V]=P;continue}for(var j=0;j<=L;++j)T[j].vertices.indexOf(N)<0&&(H[V]=T[j])}for(var re=new _(L,x,z),oe=!!E,g=L+1;g=1},p.isTransparent=function(){return this.opacity<1},p.pickSlots=1,p.setPickBase=function(C){this.pickId=C};function k(C){for(var M=v({colormap:C,nshades:256,format:"rgba"}),g=new Uint8Array(256*4),P=0;P<256;++P){for(var T=M[P],z=0;z<3;++z)g[4*P+z]=T[z];g[4*P+3]=T[3]*255}return d(g,[256,256,4],[4,0,1])}function E(C){for(var M=C.length,g=new Array(M),P=0;P0){var j=this.triShader;j.bind(),j.uniforms=V,this.triangleVAO.bind(),M.drawArrays(M.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},p.drawPick=function(C){C=C||{};for(var M=this.gl,g=C.model||_,P=C.view||_,T=C.projection||_,z=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],O=0;O<3;++O)z[0][O]=Math.max(z[0][O],this.clipBounds[0][O]),z[1][O]=Math.min(z[1][O],this.clipBounds[1][O]);this._model=[].slice.call(g),this._view=[].slice.call(P),this._projection=[].slice.call(T),this._resolution=[M.drawingBufferWidth,M.drawingBufferHeight];var V={model:g,view:P,projection:T,clipBounds:z,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},G=this.pickShader;G.bind(),G.uniforms=V,this.triangleCount>0&&(this.triangleVAO.bind(),M.drawArrays(M.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},p.pick=function(C){if(!C||C.id!==this.pickId)return null;var M=C.value[0]+256*C.value[1]+65536*C.value[2],g=this.cells[M],P=this.positions[g[1]].slice(0,3),T={position:P,dataCoordinate:P,index:Math.floor(g[1]/48)};return this.traceType==="cone"?T.index=Math.floor(g[1]/48):this.traceType==="streamtube"&&(T.intensity=this.intensity[g[1]],T.velocity=this.vectors[g[1]].slice(0,3),T.divergence=this.vectors[g[1]][3],T.index=M),T},p.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()};function S(C,M){var g=s(C,M.meshShader.vertex,M.meshShader.fragment,null,M.meshShader.attributes);return g.attributes.position.location=0,g.attributes.color.location=2,g.attributes.uv.location=3,g.attributes.vector.location=4,g}function L(C,M){var g=s(C,M.pickShader.vertex,M.pickShader.fragment,null,M.pickShader.attributes);return g.attributes.position.location=0,g.attributes.id.location=1,g.attributes.vector.location=4,g}function x(C,M,g){var P=g.shaders;arguments.length===1&&(M=C,C=M.gl);var T=S(C,P),z=L(C,P),O=c(C,d(new Uint8Array([255,255,255,255]),[1,1,4]));O.generateMipmap(),O.minFilter=C.LINEAR_MIPMAP_LINEAR,O.magFilter=C.LINEAR;var V=l(C),G=l(C),Z=l(C),H=l(C),N=l(C),j=u(C,[{buffer:V,type:C.FLOAT,size:4},{buffer:N,type:C.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:Z,type:C.FLOAT,size:4},{buffer:H,type:C.FLOAT,size:2},{buffer:G,type:C.FLOAT,size:4}]),re=new b(C,O,T,z,V,G,N,Z,H,j,g.traceType||"cone");return re.update(M),re}i.exports=x},9127:function(i,a,o){"use strict";i.exports=u;var s=o(6204),l=o(5771);function u(c){return l(s(c))}},9131:function(i,a,o){var s=o(5177),l=o(9288);i.exports=u;function u(c,f){return f=f||1,c[0]=Math.random(),c[1]=Math.random(),c[2]=Math.random(),c[3]=Math.random(),s(c,c),l(c,c,f),c}},9165:function(i,a,o){"use strict";i.exports=b;var s=o(2762),l=o(8116),u=o(3436),c=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function f(p,k,E,S){this.gl=p,this.shader=S,this.buffer=k,this.vao=E,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var h=f.prototype;h.isOpaque=function(){return!this.hasAlpha},h.isTransparent=function(){return this.hasAlpha},h.drawTransparent=h.draw=function(p){var k=this.gl,E=this.shader.uniforms;this.shader.bind();var S=E.view=p.view||c,L=E.projection=p.projection||c;E.model=p.model||c,E.clipBounds=this.clipBounds,E.opacity=this.opacity;var x=S[12],C=S[13],M=S[14],g=S[15],P=p._ortho||!1,T=P?2:1,z=T*this.pixelRatio*(L[3]*x+L[7]*C+L[11]*M+L[15]*g)/k.drawingBufferHeight;this.vao.bind();for(var O=0;O<3;++O)k.lineWidth(this.lineWidth[O]*this.pixelRatio),E.capSize=this.capSize[O]*z,this.lineCount[O]&&k.drawArrays(k.LINES,this.lineOffset[O],this.lineCount[O]);this.vao.unbind()};function d(p,k){for(var E=0;E<3;++E)p[0][E]=Math.min(p[0][E],k[E]),p[1][E]=Math.max(p[1][E],k[E])}var v=function(){for(var p=new Array(3),k=0;k<3;++k){for(var E=[],S=1;S<=2;++S)for(var L=-1;L<=1;L+=2){var x=(S+k)%3,C=[0,0,0];C[x]=L,E.push(C)}p[k]=E}return p}();function _(p,k,E,S){for(var L=v[S],x=0;x0){var V=P.slice();V[M]+=z[1][M],L.push(P[0],P[1],P[2],O[0],O[1],O[2],O[3],0,0,0,V[0],V[1],V[2],O[0],O[1],O[2],O[3],0,0,0),d(this.bounds,V),C+=2+_(L,V,O,M)}}}this.lineCount[M]=C-this.lineOffset[M]}this.buffer.update(L)}},h.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function b(p){var k=p.gl,E=s(k),S=l(k,[{buffer:E,type:k.FLOAT,size:3,offset:0,stride:40},{buffer:E,type:k.FLOAT,size:4,offset:12,stride:40},{buffer:E,type:k.FLOAT,size:3,offset:28,stride:40}]),L=u(k);L.attributes.position.location=0,L.attributes.color.location=1,L.attributes.offset.location=2;var x=new f(k,E,S,L);return x.update(p),x}},9215:function(i,a,o){"use strict";i.exports=d;var s=o(4769),l=o(2478);function u(v,_,b){return Math.min(_,Math.max(v,b))}function c(v,_,b){this.dimension=v.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var p=0;p=b-1)for(var C=E.length-1,g=v-_[b-1],M=0;M=b-1)for(var x=E.length-1,C=v-_[b-1],M=0;M=0;--b)if(v[--_])return!1;return!0},f.jump=function(v){var _=this.lastT(),b=this.dimension;if(!(v<_||arguments.length!==b+1)){var p=this._state,k=this._velocity,E=p.length-this.dimension,S=this.bounds,L=S[0],x=S[1];this._time.push(_,v);for(var C=0;C<2;++C)for(var M=0;M0;--M)p.push(u(L[M-1],x[M-1],arguments[M])),k.push(0)}},f.push=function(v){var _=this.lastT(),b=this.dimension;if(!(v<_||arguments.length!==b+1)){var p=this._state,k=this._velocity,E=p.length-this.dimension,S=v-_,L=this.bounds,x=L[0],C=L[1],M=S>1e-6?1/S:0;this._time.push(v);for(var g=b;g>0;--g){var P=u(x[g-1],C[g-1],arguments[g]);p.push(P),k.push((P-p[E++])*M)}}},f.set=function(v){var _=this.dimension;if(!(v0;--L)b.push(u(E[L-1],S[L-1],arguments[L])),p.push(0)}},f.move=function(v){var _=this.lastT(),b=this.dimension;if(!(v<=_||arguments.length!==b+1)){var p=this._state,k=this._velocity,E=p.length-this.dimension,S=this.bounds,L=S[0],x=S[1],C=v-_,M=C>1e-6?1/C:0;this._time.push(v);for(var g=b;g>0;--g){var P=arguments[g];p.push(u(L[g-1],x[g-1],p[E++]+P)),k.push(P*M)}}},f.idle=function(v){var _=this.lastT();if(!(v<_)){var b=this.dimension,p=this._state,k=this._velocity,E=p.length-b,S=this.bounds,L=S[0],x=S[1],C=v-_;this._time.push(v);for(var M=b-1;M>=0;--M)p.push(u(L[M],x[M],p[E]+C*k[E])),k.push(0),E+=1}};function h(v){for(var _=new Array(v),b=0;b1&&c.indexOf("Macintosh")!==-1&&c.indexOf("Safari")!==-1&&(f=!0),f}},9226:function(i){i.exports=a;function a(o,s){return o[0]=Math.ceil(s[0]),o[1]=Math.ceil(s[1]),o[2]=Math.ceil(s[2]),o}},9265:function(i){i.exports=a;function a(o,s){return o[0]===s[0]&&o[1]===s[1]&&o[2]===s[2]}},9288:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]*l,o[1]=s[1]*l,o[2]=s[2]*l,o[3]=s[3]*l,o}},9346:function(i){"use strict";var a=new Float64Array(4),o=new Float64Array(4),s=new Float64Array(4);function l(u,c,f,h,d){a.length=_?(g=1,T=_+2*k+S):(g=-k/_,T=k*g+S)):(g=0,E>=0?(P=0,T=S):-E>=p?(P=1,T=p+2*E+S):(P=-E/p,T=E*P+S));else if(P<0)P=0,k>=0?(g=0,T=S):-k>=_?(g=1,T=_+2*k+S):(g=-k/_,T=k*g+S);else{var z=1/M;g*=z,P*=z,T=g*(_*g+b*P+2*k)+P*(b*g+p*P+2*E)+S}else{var O,V,G,Z;g<0?(O=b+k,V=p+E,V>O?(G=V-O,Z=_-2*b+p,G>=Z?(g=1,P=0,T=_+2*k+S):(g=G/Z,P=1-g,T=g*(_*g+b*P+2*k)+P*(b*g+p*P+2*E)+S)):(g=0,V<=0?(P=1,T=p+2*E+S):E>=0?(P=0,T=S):(P=-E/p,T=E*P+S))):P<0?(O=b+E,V=_+k,V>O?(G=V-O,Z=_-2*b+p,G>=Z?(P=1,g=0,T=p+2*E+S):(P=G/Z,g=1-P,T=g*(_*g+b*P+2*k)+P*(b*g+p*P+2*E)+S)):(P=0,V<=0?(g=1,T=_+2*k+S):k>=0?(g=0,T=S):(g=-k/_,T=k*g+S))):(G=p+E-b-k,G<=0?(g=0,P=1,T=p+2*E+S):(Z=_-2*b+p,G>=Z?(g=1,P=0,T=_+2*k+S):(g=G/Z,P=1-g,T=g*(_*g+b*P+2*k)+P*(b*g+p*P+2*E)+S)))}for(var H=1-g-P,v=0;vE)for(p=E;pk)for(p=k;p=0){for(var H=Z.type.charAt(Z.type.length-1)|0,N=new Array(H),j=0;j=0;)re+=1;V[G]=re}var oe=new Array(E.length);function _e(){x.program=c.program(C,x._vref,x._fref,O,V);for(var Ee=0;EePe&&Re>0){var ce=(ge[Re][0]-Pe)/(ge[Re][0]-ge[Re-1][0]);return ge[Re][1]*(1-ce)+ce*ge[Re-1][1]}}return 1}var j=[0,0,0],re={showSurface:!1,showContour:!1,projections:[T.slice(),T.slice(),T.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function oe(Pe,ge){var Re,ce,Ze,ut=ge.axes&&ge.axes.lastCubeProps.axis||j,pt=ge.showSurface,Zt=ge.showContour;for(Re=0;Re<3;++Re)for(pt=pt||ge.surfaceProject[Re],ce=0;ce<3;++ce)Zt=Zt||ge.contourProject[Re][ce];for(Re=0;Re<3;++Re){var st=re.projections[Re];for(ce=0;ce<16;++ce)st[ce]=0;for(ce=0;ce<4;++ce)st[5*ce]=1;st[5*Re]=0,st[12+Re]=ge.axesBounds[+(ut[Re]>0)][Re],p(st,Pe.model,st);var lt=re.clipBounds[Re];for(Ze=0;Ze<2;++Ze)for(ce=0;ce<3;++ce)lt[Ze][ce]=Pe.clipBounds[Ze][ce];lt[0][Re]=-1e8,lt[1][Re]=1e8}return re.showSurface=pt,re.showContour=Zt,re}var _e={model:T,view:T,projection:T,inverseModel:T.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},Ee=T.slice(),Ce=[1,0,0,0,1,0,0,0,1];function me(Pe,ge){Pe=Pe||{};var Re=this.gl;Re.disable(Re.CULL_FACE),this._colorMap.bind(0);var ce=_e;ce.model=Pe.model||T,ce.view=Pe.view||T,ce.projection=Pe.projection||T,ce.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],ce.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],ce.objectOffset=this.objectOffset,ce.contourColor=this.contourColor[0],ce.inverseModel=k(ce.inverseModel,ce.model);for(var Ze=0;Ze<2;++Ze)for(var ut=ce.clipBounds[Ze],pt=0;pt<3;++pt)ut[pt]=Math.min(Math.max(this.clipBounds[Ze][pt],-1e8),1e8);ce.kambient=this.ambientLight,ce.kdiffuse=this.diffuseLight,ce.kspecular=this.specularLight,ce.roughness=this.roughness,ce.fresnel=this.fresnel,ce.opacity=this.opacity,ce.height=0,ce.permutation=Ce,ce.vertexColor=this.vertexColor;var Zt=Ee;for(p(Zt,ce.view,ce.model),p(Zt,ce.projection,Zt),k(Zt,Zt),Ze=0;Ze<3;++Ze)ce.eyePosition[Ze]=Zt[12+Ze]/Zt[15];var st=Zt[15];for(Ze=0;Ze<3;++Ze)st+=this.lightPosition[Ze]*Zt[4*Ze+3];for(Ze=0;Ze<3;++Ze){var lt=Zt[12+Ze];for(pt=0;pt<3;++pt)lt+=Zt[4*pt+Ze]*this.lightPosition[pt];ce.lightPosition[Ze]=lt/st}var Gt=oe(ce,this);if(Gt.showSurface){for(this._shader.bind(),this._shader.uniforms=ce,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(Re.TRIANGLES,this._vertexCount),Ze=0;Ze<3;++Ze)!this.surfaceProject[Ze]||!this.vertexCount||(this._shader.uniforms.model=Gt.projections[Ze],this._shader.uniforms.clipBounds=Gt.clipBounds[Ze],this._vao.draw(Re.TRIANGLES,this._vertexCount));this._vao.unbind()}if(Gt.showContour){var Nt=this._contourShader;ce.kambient=1,ce.kdiffuse=0,ce.kspecular=0,ce.opacity=1,Nt.bind(),Nt.uniforms=ce;var Jt=this._contourVAO;for(Jt.bind(),Ze=0;Ze<3;++Ze)for(Nt.uniforms.permutation=O[Ze],Re.lineWidth(this.contourWidth[Ze]*this.pixelRatio),pt=0;pt>4)/16)/255,Ze=Math.floor(ce),ut=ce-Ze,pt=ge[1]*(Pe.value[1]+(Pe.value[2]&15)/16)/255,Zt=Math.floor(pt),st=pt-Zt;Ze+=1,Zt+=1;var lt=Re.position;lt[0]=lt[1]=lt[2]=0;for(var Gt=0;Gt<2;++Gt)for(var Nt=Gt?ut:1-ut,Jt=0;Jt<2;++Jt)for(var sr=Jt?st:1-st,wr=Ze+Gt,cr=Zt+Jt,$e=Nt*sr,St=0;St<3;++St)lt[St]+=this._field[St].get(wr,cr)*$e;for(var Qt=this._pickResult.level,Vt=0;Vt<3;++Vt)if(Qt[Vt]=E.le(this.contourLevels[Vt],lt[Vt]),Qt[Vt]<0)this.contourLevels[Vt].length>0&&(Qt[Vt]=0);else if(Qt[Vt]Math.abs(It-lt[Vt])&&(Qt[Vt]+=1)}for(Re.index[0]=ut<.5?Ze:Ze+1,Re.index[1]=st<.5?Zt:Zt+1,Re.uv[0]=ce/ge[0],Re.uv[1]=pt/ge[1],St=0;St<3;++St)Re.dataCoordinate[St]=this._field[St].get(Re.index[0],Re.index[1]);return Re},H.padField=function(Pe,ge){var Re=ge.shape.slice(),ce=Pe.shape.slice();d.assign(Pe.lo(1,1).hi(Re[0],Re[1]),ge),d.assign(Pe.lo(1).hi(Re[0],1),ge.hi(Re[0],1)),d.assign(Pe.lo(1,ce[1]-1).hi(Re[0],1),ge.lo(0,Re[1]-1).hi(Re[0],1)),d.assign(Pe.lo(0,1).hi(1,Re[1]),ge.hi(1)),d.assign(Pe.lo(ce[0]-1,1).hi(1,Re[1]),ge.lo(Re[0]-1)),Pe.set(0,0,ge.get(0,0)),Pe.set(0,ce[1]-1,ge.get(0,Re[1]-1)),Pe.set(ce[0]-1,0,ge.get(Re[0]-1,0)),Pe.set(ce[0]-1,ce[1]-1,ge.get(Re[0]-1,Re[1]-1))};function Se(Pe,ge){return Array.isArray(Pe)?[ge(Pe[0]),ge(Pe[1]),ge(Pe[2])]:[ge(Pe),ge(Pe),ge(Pe)]}function Le(Pe){return Array.isArray(Pe)?Pe.length===3?[Pe[0],Pe[1],Pe[2],1]:[Pe[0],Pe[1],Pe[2],Pe[3]]:[0,0,0,1]}function Ae(Pe){if(Array.isArray(Pe)){if(Array.isArray(Pe))return[Le(Pe[0]),Le(Pe[1]),Le(Pe[2])];var ge=Le(Pe);return[ge.slice(),ge.slice(),ge.slice()]}}H.update=function(Pe){Pe=Pe||{},this.objectOffset=Pe.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in Pe&&(this.contourWidth=Se(Pe.contourWidth,Number)),"showContour"in Pe&&(this.showContour=Se(Pe.showContour,Boolean)),"showSurface"in Pe&&(this.showSurface=!!Pe.showSurface),"contourTint"in Pe&&(this.contourTint=Se(Pe.contourTint,Boolean)),"contourColor"in Pe&&(this.contourColor=Ae(Pe.contourColor)),"contourProject"in Pe&&(this.contourProject=Se(Pe.contourProject,function(yn){return Se(yn,Boolean)})),"surfaceProject"in Pe&&(this.surfaceProject=Pe.surfaceProject),"dynamicColor"in Pe&&(this.dynamicColor=Ae(Pe.dynamicColor)),"dynamicTint"in Pe&&(this.dynamicTint=Se(Pe.dynamicTint,Number)),"dynamicWidth"in Pe&&(this.dynamicWidth=Se(Pe.dynamicWidth,Number)),"opacity"in Pe&&(this.opacity=Pe.opacity),"opacityscale"in Pe&&(this.opacityscale=Pe.opacityscale),"colorBounds"in Pe&&(this.colorBounds=Pe.colorBounds),"vertexColor"in Pe&&(this.vertexColor=Pe.vertexColor?1:0),"colormap"in Pe&&this._colorMap.setPixels(this.genColormap(Pe.colormap,this.opacityscale));var ge=Pe.field||Pe.coords&&Pe.coords[2]||null,Re=!1;if(ge||(this._field[2].shape[0]||this._field[2].shape[2]?ge=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):ge=this._field[2].hi(0,0)),"field"in Pe||"coords"in Pe){var ce=(ge.shape[0]+2)*(ge.shape[1]+2);ce>this._field[2].data.length&&(f.freeFloat(this._field[2].data),this._field[2].data=f.mallocFloat(s.nextPow2(ce))),this._field[2]=_(this._field[2].data,[ge.shape[0]+2,ge.shape[1]+2]),this.padField(this._field[2],ge),this.shape=ge.shape.slice();for(var Ze=this.shape,ut=0;ut<2;++ut)this._field[2].size>this._field[ut].data.length&&(f.freeFloat(this._field[ut].data),this._field[ut].data=f.mallocFloat(this._field[2].size)),this._field[ut]=_(this._field[ut].data,[Ze[0]+2,Ze[1]+2]);if(Pe.coords){var pt=Pe.coords;if(!Array.isArray(pt)||pt.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(ut=0;ut<2;++ut){var Zt=pt[ut];for(Jt=0;Jt<2;++Jt)if(Zt.shape[Jt]!==Ze[Jt])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[ut],Zt)}}else if(Pe.ticks){var st=Pe.ticks;if(!Array.isArray(st)||st.length!==2)throw new Error("gl-surface: invalid ticks");for(ut=0;ut<2;++ut){var lt=st[ut];if((Array.isArray(lt)||lt.length)&&(lt=_(lt)),lt.shape[0]!==Ze[ut])throw new Error("gl-surface: invalid tick length");var Gt=_(lt.data,Ze);Gt.stride[ut]=lt.stride[0],Gt.stride[ut^1]=0,this.padField(this._field[ut],Gt)}}else{for(ut=0;ut<2;++ut){var Nt=[0,0];Nt[ut]=1,this._field[ut]=_(this._field[ut].data,[Ze[0]+2,Ze[1]+2],Nt,0)}this._field[0].set(0,0,0);for(var Jt=0;Jt0){for(var tn=0;tn<5;++tn)pi.pop();je-=1}continue e}}}In.push(je)}this._contourOffsets[$r]=ji,this._contourCounts[$r]=In}var fn=f.mallocFloat(pi.length);for(ut=0;ut=0&&(M=x|0,C+=P*M,g-=M),new E(this.data,g,P,C)},S.step=function(x){var C=this.shape[0],M=this.stride[0],g=this.offset,P=0,T=Math.ceil;return typeof x=="number"&&(P=x|0,P<0?(g+=M*(C-1),C=T(-C/P)):C=T(C/P),M*=P),new E(this.data,C,M,g)},S.transpose=function(x){x=x===void 0?0:x|0;var C=this.shape,M=this.stride;return new E(this.data,C[x],M[x],this.offset)},S.pick=function(x){var C=[],M=[],g=this.offset;typeof x=="number"&&x>=0?g=g+this.stride[0]*x|0:(C.push(this.shape[0]),M.push(this.stride[0]));var P=p[C.length+1];return P(this.data,C,M,g)},function(x,C,M,g){return new E(x,C[0],M[0],g)}},2:function(b,p,k){function E(L,x,C,M,g,P){this.data=L,this.shape=[x,C],this.stride=[M,g],this.offset=P|0}var S=E.prototype;return S.dtype=b,S.dimension=2,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(S,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),S.set=function(x,C,M){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C,M):this.data[this.offset+this.stride[0]*x+this.stride[1]*C]=M},S.get=function(x,C){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C):this.data[this.offset+this.stride[0]*x+this.stride[1]*C]},S.index=function(x,C){return this.offset+this.stride[0]*x+this.stride[1]*C},S.hi=function(x,C){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,this.stride[0],this.stride[1],this.offset)},S.lo=function(x,C){var M=this.offset,g=0,P=this.shape[0],T=this.shape[1],z=this.stride[0],O=this.stride[1];return typeof x=="number"&&x>=0&&(g=x|0,M+=z*g,P-=g),typeof C=="number"&&C>=0&&(g=C|0,M+=O*g,T-=g),new E(this.data,P,T,z,O,M)},S.step=function(x,C){var M=this.shape[0],g=this.shape[1],P=this.stride[0],T=this.stride[1],z=this.offset,O=0,V=Math.ceil;return typeof x=="number"&&(O=x|0,O<0?(z+=P*(M-1),M=V(-M/O)):M=V(M/O),P*=O),typeof C=="number"&&(O=C|0,O<0?(z+=T*(g-1),g=V(-g/O)):g=V(g/O),T*=O),new E(this.data,M,g,P,T,z)},S.transpose=function(x,C){x=x===void 0?0:x|0,C=C===void 0?1:C|0;var M=this.shape,g=this.stride;return new E(this.data,M[x],M[C],g[x],g[C],this.offset)},S.pick=function(x,C){var M=[],g=[],P=this.offset;typeof x=="number"&&x>=0?P=P+this.stride[0]*x|0:(M.push(this.shape[0]),g.push(this.stride[0])),typeof C=="number"&&C>=0?P=P+this.stride[1]*C|0:(M.push(this.shape[1]),g.push(this.stride[1]));var T=p[M.length+1];return T(this.data,M,g,P)},function(x,C,M,g){return new E(x,C[0],C[1],M[0],M[1],g)}},3:function(b,p,k){function E(L,x,C,M,g,P,T,z){this.data=L,this.shape=[x,C,M],this.stride=[g,P,T],this.offset=z|0}var S=E.prototype;return S.dtype=b,S.dimension=3,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(S,"order",{get:function(){var x=Math.abs(this.stride[0]),C=Math.abs(this.stride[1]),M=Math.abs(this.stride[2]);return x>C?C>M?[2,1,0]:x>M?[1,2,0]:[1,0,2]:x>M?[2,0,1]:M>C?[0,1,2]:[0,2,1]}}),S.set=function(x,C,M,g){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M,g):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M]=g},S.get=function(x,C,M){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M]},S.index=function(x,C,M){return this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M},S.hi=function(x,C,M){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,typeof M!="number"||M<0?this.shape[2]:M|0,this.stride[0],this.stride[1],this.stride[2],this.offset)},S.lo=function(x,C,M){var g=this.offset,P=0,T=this.shape[0],z=this.shape[1],O=this.shape[2],V=this.stride[0],G=this.stride[1],Z=this.stride[2];return typeof x=="number"&&x>=0&&(P=x|0,g+=V*P,T-=P),typeof C=="number"&&C>=0&&(P=C|0,g+=G*P,z-=P),typeof M=="number"&&M>=0&&(P=M|0,g+=Z*P,O-=P),new E(this.data,T,z,O,V,G,Z,g)},S.step=function(x,C,M){var g=this.shape[0],P=this.shape[1],T=this.shape[2],z=this.stride[0],O=this.stride[1],V=this.stride[2],G=this.offset,Z=0,H=Math.ceil;return typeof x=="number"&&(Z=x|0,Z<0?(G+=z*(g-1),g=H(-g/Z)):g=H(g/Z),z*=Z),typeof C=="number"&&(Z=C|0,Z<0?(G+=O*(P-1),P=H(-P/Z)):P=H(P/Z),O*=Z),typeof M=="number"&&(Z=M|0,Z<0?(G+=V*(T-1),T=H(-T/Z)):T=H(T/Z),V*=Z),new E(this.data,g,P,T,z,O,V,G)},S.transpose=function(x,C,M){x=x===void 0?0:x|0,C=C===void 0?1:C|0,M=M===void 0?2:M|0;var g=this.shape,P=this.stride;return new E(this.data,g[x],g[C],g[M],P[x],P[C],P[M],this.offset)},S.pick=function(x,C,M){var g=[],P=[],T=this.offset;typeof x=="number"&&x>=0?T=T+this.stride[0]*x|0:(g.push(this.shape[0]),P.push(this.stride[0])),typeof C=="number"&&C>=0?T=T+this.stride[1]*C|0:(g.push(this.shape[1]),P.push(this.stride[1])),typeof M=="number"&&M>=0?T=T+this.stride[2]*M|0:(g.push(this.shape[2]),P.push(this.stride[2]));var z=p[g.length+1];return z(this.data,g,P,T)},function(x,C,M,g){return new E(x,C[0],C[1],C[2],M[0],M[1],M[2],g)}},4:function(b,p,k){function E(L,x,C,M,g,P,T,z,O,V){this.data=L,this.shape=[x,C,M,g],this.stride=[P,T,z,O],this.offset=V|0}var S=E.prototype;return S.dtype=b,S.dimension=4,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(S,"order",{get:k}),S.set=function(x,C,M,g,P){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g,P):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g]=P},S.get=function(x,C,M,g){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g]},S.index=function(x,C,M,g){return this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g},S.hi=function(x,C,M,g){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,typeof M!="number"||M<0?this.shape[2]:M|0,typeof g!="number"||g<0?this.shape[3]:g|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},S.lo=function(x,C,M,g){var P=this.offset,T=0,z=this.shape[0],O=this.shape[1],V=this.shape[2],G=this.shape[3],Z=this.stride[0],H=this.stride[1],N=this.stride[2],j=this.stride[3];return typeof x=="number"&&x>=0&&(T=x|0,P+=Z*T,z-=T),typeof C=="number"&&C>=0&&(T=C|0,P+=H*T,O-=T),typeof M=="number"&&M>=0&&(T=M|0,P+=N*T,V-=T),typeof g=="number"&&g>=0&&(T=g|0,P+=j*T,G-=T),new E(this.data,z,O,V,G,Z,H,N,j,P)},S.step=function(x,C,M,g){var P=this.shape[0],T=this.shape[1],z=this.shape[2],O=this.shape[3],V=this.stride[0],G=this.stride[1],Z=this.stride[2],H=this.stride[3],N=this.offset,j=0,re=Math.ceil;return typeof x=="number"&&(j=x|0,j<0?(N+=V*(P-1),P=re(-P/j)):P=re(P/j),V*=j),typeof C=="number"&&(j=C|0,j<0?(N+=G*(T-1),T=re(-T/j)):T=re(T/j),G*=j),typeof M=="number"&&(j=M|0,j<0?(N+=Z*(z-1),z=re(-z/j)):z=re(z/j),Z*=j),typeof g=="number"&&(j=g|0,j<0?(N+=H*(O-1),O=re(-O/j)):O=re(O/j),H*=j),new E(this.data,P,T,z,O,V,G,Z,H,N)},S.transpose=function(x,C,M,g){x=x===void 0?0:x|0,C=C===void 0?1:C|0,M=M===void 0?2:M|0,g=g===void 0?3:g|0;var P=this.shape,T=this.stride;return new E(this.data,P[x],P[C],P[M],P[g],T[x],T[C],T[M],T[g],this.offset)},S.pick=function(x,C,M,g){var P=[],T=[],z=this.offset;typeof x=="number"&&x>=0?z=z+this.stride[0]*x|0:(P.push(this.shape[0]),T.push(this.stride[0])),typeof C=="number"&&C>=0?z=z+this.stride[1]*C|0:(P.push(this.shape[1]),T.push(this.stride[1])),typeof M=="number"&&M>=0?z=z+this.stride[2]*M|0:(P.push(this.shape[2]),T.push(this.stride[2])),typeof g=="number"&&g>=0?z=z+this.stride[3]*g|0:(P.push(this.shape[3]),T.push(this.stride[3]));var O=p[P.length+1];return O(this.data,P,T,z)},function(x,C,M,g){return new E(x,C[0],C[1],C[2],C[3],M[0],M[1],M[2],M[3],g)}},5:function(p,k,E){function S(x,C,M,g,P,T,z,O,V,G,Z,H){this.data=x,this.shape=[C,M,g,P,T],this.stride=[z,O,V,G,Z],this.offset=H|0}var L=S.prototype;return L.dtype=p,L.dimension=5,Object.defineProperty(L,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(L,"order",{get:E}),L.set=function(C,M,g,P,T,z){return p==="generic"?this.data.set(this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T,z):this.data[this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T]=z},L.get=function(C,M,g,P,T){return p==="generic"?this.data.get(this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T):this.data[this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T]},L.index=function(C,M,g,P,T){return this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T},L.hi=function(C,M,g,P,T){return new S(this.data,typeof C!="number"||C<0?this.shape[0]:C|0,typeof M!="number"||M<0?this.shape[1]:M|0,typeof g!="number"||g<0?this.shape[2]:g|0,typeof P!="number"||P<0?this.shape[3]:P|0,typeof T!="number"||T<0?this.shape[4]:T|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},L.lo=function(C,M,g,P,T){var z=this.offset,O=0,V=this.shape[0],G=this.shape[1],Z=this.shape[2],H=this.shape[3],N=this.shape[4],j=this.stride[0],re=this.stride[1],oe=this.stride[2],_e=this.stride[3],Ee=this.stride[4];return typeof C=="number"&&C>=0&&(O=C|0,z+=j*O,V-=O),typeof M=="number"&&M>=0&&(O=M|0,z+=re*O,G-=O),typeof g=="number"&&g>=0&&(O=g|0,z+=oe*O,Z-=O),typeof P=="number"&&P>=0&&(O=P|0,z+=_e*O,H-=O),typeof T=="number"&&T>=0&&(O=T|0,z+=Ee*O,N-=O),new S(this.data,V,G,Z,H,N,j,re,oe,_e,Ee,z)},L.step=function(C,M,g,P,T){var z=this.shape[0],O=this.shape[1],V=this.shape[2],G=this.shape[3],Z=this.shape[4],H=this.stride[0],N=this.stride[1],j=this.stride[2],re=this.stride[3],oe=this.stride[4],_e=this.offset,Ee=0,Ce=Math.ceil;return typeof C=="number"&&(Ee=C|0,Ee<0?(_e+=H*(z-1),z=Ce(-z/Ee)):z=Ce(z/Ee),H*=Ee),typeof M=="number"&&(Ee=M|0,Ee<0?(_e+=N*(O-1),O=Ce(-O/Ee)):O=Ce(O/Ee),N*=Ee),typeof g=="number"&&(Ee=g|0,Ee<0?(_e+=j*(V-1),V=Ce(-V/Ee)):V=Ce(V/Ee),j*=Ee),typeof P=="number"&&(Ee=P|0,Ee<0?(_e+=re*(G-1),G=Ce(-G/Ee)):G=Ce(G/Ee),re*=Ee),typeof T=="number"&&(Ee=T|0,Ee<0?(_e+=oe*(Z-1),Z=Ce(-Z/Ee)):Z=Ce(Z/Ee),oe*=Ee),new S(this.data,z,O,V,G,Z,H,N,j,re,oe,_e)},L.transpose=function(C,M,g,P,T){C=C===void 0?0:C|0,M=M===void 0?1:M|0,g=g===void 0?2:g|0,P=P===void 0?3:P|0,T=T===void 0?4:T|0;var z=this.shape,O=this.stride;return new S(this.data,z[C],z[M],z[g],z[P],z[T],O[C],O[M],O[g],O[P],O[T],this.offset)},L.pick=function(C,M,g,P,T){var z=[],O=[],V=this.offset;typeof C=="number"&&C>=0?V=V+this.stride[0]*C|0:(z.push(this.shape[0]),O.push(this.stride[0])),typeof M=="number"&&M>=0?V=V+this.stride[1]*M|0:(z.push(this.shape[1]),O.push(this.stride[1])),typeof g=="number"&&g>=0?V=V+this.stride[2]*g|0:(z.push(this.shape[2]),O.push(this.stride[2])),typeof P=="number"&&P>=0?V=V+this.stride[3]*P|0:(z.push(this.shape[3]),O.push(this.stride[3])),typeof T=="number"&&T>=0?V=V+this.stride[4]*T|0:(z.push(this.shape[4]),O.push(this.stride[4]));var G=k[z.length+1];return G(this.data,z,O,V)},function(C,M,g,P){return new S(C,M[0],M[1],M[2],M[3],M[4],g[0],g[1],g[2],g[3],g[4],P)}}};function h(b,p){var k=p===-1?"T":String(p),E=f[k];return p===-1?E(b):p===0?E(b,v[b][0]):E(b,v[b],c)}function d(b){if(s(b))return"buffer";if(l)switch(Object.prototype.toString.call(b)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(b)?"array":"generic"}var v={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function _(b,p,k,E){if(b===void 0){var g=v.array[0];return g([])}else typeof b=="number"&&(b=[b]);p===void 0&&(p=[b.length]);var S=p.length;if(k===void 0){k=new Array(S);for(var L=S-1,x=1;L>=0;--L)k[L]=x,x*=p[L]}if(E===void 0){E=0;for(var L=0;L1e-6?(k[0]=S/M,k[1]=L/M,k[2]=x/M,k[3]=C/M):(k[0]=k[1]=k[2]=0,k[3]=1)}function _(k,E,S){this.radius=s([S]),this.center=s(E),this.rotation=s(k),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var b=_.prototype;b.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},b.recalcMatrix=function(k){this.radius.curve(k),this.center.curve(k),this.rotation.curve(k);var E=this.computedRotation;v(E,E);var S=this.computedMatrix;u(S,E);var L=this.computedCenter,x=this.computedEye,C=this.computedUp,M=Math.exp(this.computedRadius[0]);x[0]=L[0]+M*S[2],x[1]=L[1]+M*S[6],x[2]=L[2]+M*S[10],C[0]=S[1],C[1]=S[5],C[2]=S[9];for(var g=0;g<3;++g){for(var P=0,T=0;T<3;++T)P+=S[g+4*T]*x[T];S[12+g]=-P}},b.getMatrix=function(k,E){this.recalcMatrix(k);var S=this.computedMatrix;if(E){for(var L=0;L<16;++L)E[L]=S[L];return E}return S},b.idle=function(k){this.center.idle(k),this.radius.idle(k),this.rotation.idle(k)},b.flush=function(k){this.center.flush(k),this.radius.flush(k),this.rotation.flush(k)},b.pan=function(k,E,S,L){E=E||0,S=S||0,L=L||0,this.recalcMatrix(k);var x=this.computedMatrix,C=x[1],M=x[5],g=x[9],P=h(C,M,g);C/=P,M/=P,g/=P;var T=x[0],z=x[4],O=x[8],V=T*C+z*M+O*g;T-=C*V,z-=M*V,O-=g*V;var G=h(T,z,O);T/=G,z/=G,O/=G;var Z=x[2],H=x[6],N=x[10],j=Z*C+H*M+N*g,re=Z*T+H*z+N*O;Z-=j*C+re*T,H-=j*M+re*z,N-=j*g+re*O;var oe=h(Z,H,N);Z/=oe,H/=oe,N/=oe;var _e=T*E+C*S,Ee=z*E+M*S,Ce=O*E+g*S;this.center.move(k,_e,Ee,Ce);var me=Math.exp(this.computedRadius[0]);me=Math.max(1e-4,me+L),this.radius.set(k,Math.log(me))},b.rotate=function(k,E,S,L){this.recalcMatrix(k),E=E||0,S=S||0;var x=this.computedMatrix,C=x[0],M=x[4],g=x[8],P=x[1],T=x[5],z=x[9],O=x[2],V=x[6],G=x[10],Z=E*C+S*P,H=E*M+S*T,N=E*g+S*z,j=-(V*N-G*H),re=-(G*Z-O*N),oe=-(O*H-V*Z),_e=Math.sqrt(Math.max(0,1-Math.pow(j,2)-Math.pow(re,2)-Math.pow(oe,2))),Ee=d(j,re,oe,_e);Ee>1e-6?(j/=Ee,re/=Ee,oe/=Ee,_e/=Ee):(j=re=oe=0,_e=1);var Ce=this.computedRotation,me=Ce[0],ie=Ce[1],Se=Ce[2],Le=Ce[3],Ae=me*_e+Le*j+ie*oe-Se*re,Fe=ie*_e+Le*re+Se*j-me*oe,Pe=Se*_e+Le*oe+me*re-ie*j,ge=Le*_e-me*j-ie*re-Se*oe;if(L){j=O,re=V,oe=G;var Re=Math.sin(L)/h(j,re,oe);j*=Re,re*=Re,oe*=Re,_e=Math.cos(E),Ae=Ae*_e+ge*j+Fe*oe-Pe*re,Fe=Fe*_e+ge*re+Pe*j-Ae*oe,Pe=Pe*_e+ge*oe+Ae*re-Fe*j,ge=ge*_e-Ae*j-Fe*re-Pe*oe}var ce=d(Ae,Fe,Pe,ge);ce>1e-6?(Ae/=ce,Fe/=ce,Pe/=ce,ge/=ce):(Ae=Fe=Pe=0,ge=1),this.rotation.set(k,Ae,Fe,Pe,ge)},b.lookAt=function(k,E,S,L){this.recalcMatrix(k),S=S||this.computedCenter,E=E||this.computedEye,L=L||this.computedUp;var x=this.computedMatrix;l(x,E,S,L);var C=this.computedRotation;f(C,x[0],x[1],x[2],x[4],x[5],x[6],x[8],x[9],x[10]),v(C,C),this.rotation.set(k,C[0],C[1],C[2],C[3]);for(var M=0,g=0;g<3;++g)M+=Math.pow(S[g]-E[g],2);this.radius.set(k,.5*Math.log(Math.max(M,1e-6))),this.center.set(k,S[0],S[1],S[2])},b.translate=function(k,E,S,L){this.center.move(k,E||0,S||0,L||0)},b.setMatrix=function(k,E){var S=this.computedRotation;f(S,E[0],E[1],E[2],E[4],E[5],E[6],E[8],E[9],E[10]),v(S,S),this.rotation.set(k,S[0],S[1],S[2],S[3]);var L=this.computedMatrix;c(L,E);var x=L[15];if(Math.abs(x)>1e-6){var C=L[12]/x,M=L[13]/x,g=L[14]/x;this.recalcMatrix(k);var P=Math.exp(this.computedRadius[0]);this.center.set(k,C-L[2]*P,M-L[6]*P,g-L[10]*P),this.radius.idle(k)}else this.center.idle(k),this.radius.idle(k)},b.setDistance=function(k,E){E>0&&this.radius.set(k,Math.log(E))},b.setDistanceLimits=function(k,E){k>0?k=Math.log(k):k=-1/0,E>0?E=Math.log(E):E=1/0,E=Math.max(E,k),this.radius.bounds[0][0]=k,this.radius.bounds[1][0]=E},b.getDistanceLimits=function(k){var E=this.radius.bounds;return k?(k[0]=Math.exp(E[0][0]),k[1]=Math.exp(E[1][0]),k):[Math.exp(E[0][0]),Math.exp(E[1][0])]},b.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},b.fromJSON=function(k){var E=this.lastT(),S=k.center;S&&this.center.set(E,S[0],S[1],S[2]);var L=k.rotation;L&&this.rotation.set(E,L[0],L[1],L[2],L[3]);var x=k.distance;x&&x>0&&this.radius.set(E,Math.log(x)),this.setDistanceLimits(k.zoomMin,k.zoomMax)};function p(k){k=k||{};var E=k.center||[0,0,0],S=k.rotation||[0,0,0,1],L=k.radius||1;E=[].slice.call(E,0,3),S=[].slice.call(S,0,4),v(S,S);var x=new _(S,E,Math.log(L));return x.setDistanceLimits(k.zoomMin,k.zoomMax),("eye"in k||"up"in k)&&x.lookAt(0,k.eye,k.center,k.up),x}},9994:function(i,a,o){"use strict";var s=o(9618),l=o(8277);i.exports=function(c,f){for(var h=[],d=c,v=1;Array.isArray(d);)h.push(d.length),v*=d.length,d=d[0];return h.length===0?s():(f||(f=s(new Float64Array(v),h)),l(f,c),f)}}},t={};function r(i){var a=t[i];if(a!==void 0)return a.exports;var o=t[i]={id:i,loaded:!1,exports:{}};return e[i].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}(function(){r.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch(i){if(typeof window=="object")return window}}()})(),function(){r.nmd=function(i){return i.paths=[],i.children||(i.children=[]),i}}();var n=r(1964);mPe.exports=n})()});var pX=ye((V0r,yPe)=>{"use strict";yPe.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var wPe=ye((G0r,bPe)=>{"use strict";var _Pe=pX();bPe.exports=QPt;var xPe={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function QPt(e){var t,r=[],n=1,i;if(typeof e=="string")if(e=e.toLowerCase(),_Pe[e])r=_Pe[e].slice(),i="rgb";else if(e==="transparent")n=0,i="rgb",r=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var a=e.slice(1),o=a.length,s=o<=4;n=1,s?(r=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],o===4&&(n=parseInt(a[3]+a[3],16)/255)):(r=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],o===8&&(n=parseInt(a[6]+a[7],16)/255)),r[0]||(r[0]=0),r[1]||(r[1]=0),r[2]||(r[2]=0),i="rgb"}else if(t=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var l=t[1],u=l==="rgb",a=l.replace(/a$/,"");i=a;var o=a==="cmyk"?4:a==="gray"?1:3;r=t[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(h,d){if(/%$/.test(h))return d===o?parseFloat(h)/100:a==="rgb"?parseFloat(h)*255/100:parseFloat(h);if(a[d]==="h"){if(/deg$/.test(h))return parseFloat(h);if(xPe[h]!==void 0)return xPe[h]}return parseFloat(h)}),l===a&&r.push(1),n=u||r[o]===void 0?1:r[o],r=r.slice(0,o)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(r=e.match(/([0-9]+)/g).map(function(c){return parseFloat(c)}),i=e.match(/([a-z])/ig).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(r=[e[0],e[1],e[2]],i="rgb",n=e.length===4?e[3]:1):e instanceof Object&&(e.r!=null||e.red!=null||e.R!=null?(i="rgb",r=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(i="hsl",r=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),n=e.a||e.alpha||e.opacity||1,e.opacity!=null&&(n/=100)):(i="rgb",r=[e>>>16,(e&65280)>>>8,e&255]);return{space:i,values:r,alpha:n}}});var APe=ye((H0r,TPe)=>{"use strict";var eIt=wPe();TPe.exports=function(t){Array.isArray(t)&&t.raw&&(t=String.raw.apply(null,arguments));var r,n,i,a=eIt(t);if(!a.space)return[];var o=[0,0,0],s=a.space[0]==="h"?[360,100,100]:[255,255,255];return r=Array(3),r[0]=Math.min(Math.max(a.values[0],o[0]),s[0]),r[1]=Math.min(Math.max(a.values[1],o[1]),s[1]),r[2]=Math.min(Math.max(a.values[2],o[2]),s[2]),a.space[0]==="h"&&(r=tIt(r)),r.push(Math.min(Math.max(a.alpha,0),1)),r};function tIt(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a,o,s,l,u=0;if(r===0)return l=n*255,[l,l,l];for(a=n<.5?n*(1+r):n+r-n*r,i=2*n-a,s=[0,0,0];u<3;)o=t+1/3*-(u-1),o<0?o++:o>1&&o--,l=6*o<1?i+(a-i)*6*o:2*o<1?a:3*o<2?i+(a-i)*(2/3-o)*6:i,s[u++]=l*255;return s}});var ZE=ye((j0r,SPe)=>{SPe.exports=rIt;function rIt(e,t,r){return tr?r:e:et?t:e}});var ZD=ye((W0r,MPe)=>{MPe.exports=function(e){switch(e){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}});var J_=ye((X0r,EPe)=>{"use strict";var iIt=APe(),YD=ZE(),nIt=ZD();EPe.exports=function(t,r){(r==="float"||!r)&&(r="array"),r==="uint"&&(r="uint8"),r==="uint_clamped"&&(r="uint8_clamped");var n=nIt(r),i=new n(4),a=r!=="uint8"&&r!=="uint8_clamped";return(!t.length||typeof t=="string")&&(t=iIt(t),t[0]/=255,t[1]/=255,t[2]/=255),aIt(t)?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:255,a&&(i[0]/=255,i[1]/=255,i[2]/=255,i[3]/=255),i):(a?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:1):(i[0]=YD(Math.floor(t[0]*255),0,255),i[1]=YD(Math.floor(t[1]*255),0,255),i[2]=YD(Math.floor(t[2]*255),0,255),i[3]=t[3]==null?255:YD(Math.floor(t[3]*255),0,255)),i)};function aIt(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}});var Jy=ye((Z0r,kPe)=>{"use strict";var oIt=J_();function sIt(e){return e?oIt(e):[0,0,0,1]}kPe.exports=sIt});var $y=ye((Y0r,FPe)=>{"use strict";var RPe=Eo(),lIt=cd(),KD=J_(),JD=tc(),uIt=Lh().defaultLine,CPe=vv().isArrayOrTypedArray,gX=KD(uIt),DPe=1;function LPe(e,t){var r=e;return r[3]*=t,r}function PPe(e){if(RPe(e))return gX;var t=KD(e);return t.length?t:gX}function IPe(e){return RPe(e)?e:DPe}function cIt(e,t,r){var n=e.color;n&&n._inputArray&&(n=n._inputArray);var i=CPe(n),a=CPe(t),o=JD.extractOpts(e),s=[],l,u,c,f,h;if(o.colorscale!==void 0?l=JD.makeColorScaleFuncFromTrace(e):l=PPe,i?u=function(v,_){return v[_]===void 0?gX:KD(l(v[_]))}:u=PPe,a?c=function(v,_){return v[_]===void 0?DPe:IPe(v[_])}:c=IPe,i||a)for(var d=0;d{"use strict";zPe.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}});var $D=ye((J0r,OPe)=>{"use strict";OPe.exports={circle:"\u25CF","circle-open":"\u25CB",square:"\u25A0","square-open":"\u25A1",diamond:"\u25C6","diamond-open":"\u25C7",cross:"+",x:"\u274C"}});var BPe=ye(($0r,qPe)=>{"use strict";var hIt=qa();function yX(e,t,r,n){if(!t||!t.visible)return null;for(var i=hIt.getComponentMethod("errorbars","makeComputeError")(t),a=new Array(e.length),o=0;o0){var f=n.c2l(u);n._lowerLogErrorBound||(n._lowerLogErrorBound=f),n._lowerErrorBound=Math.min(n._lowerLogErrorBound,f)}}else a[o]=[-s[0]*r,s[1]*r]}return a}function dIt(e){for(var t=0;t{"use strict";var pIt=Od().gl_line3d,NPe=Od().gl_scatter3d,gIt=Od().gl_error3d,mIt=Od().gl_mesh3d,yIt=Od().delaunay_triangulate,Qy=Dr(),jPe=Jy(),QD=$y().formatColor,_It=E3(),_X=mX(),xIt=$D(),bIt=ho(),wIt=ip().appendArrayPointValue,TIt=BPe();function WPe(e,t){this.scene=e,this.uid=t,this.linePlot=null,this.scatterPlot=null,this.errorBars=null,this.textMarkers=null,this.delaunayMesh=null,this.color=null,this.mode="",this.dataPoints=[],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.textLabels=null,this.data=null}var bX=WPe.prototype;bX.handlePick=function(e){if(e.object&&(e.object===this.linePlot||e.object===this.delaunayMesh||e.object===this.textMarkers||e.object===this.scatterPlot)){var t=e.index=e.data.index;return e.object.highlight&&e.object.highlight(null),this.scatterPlot&&(e.object=this.scatterPlot,this.scatterPlot.highlight(e.data)),e.textLabel="",this.textLabels&&(Qy.isArrayOrTypedArray(this.textLabels)?(this.textLabels[t]||this.textLabels[t]===0)&&(e.textLabel=this.textLabels[t]):e.textLabel=this.textLabels),e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]],!0}};function AIt(e,t,r){var n=(r+1)%3,i=(r+2)%3,a=[],o=[],s;for(s=0;s-1?-1:e.indexOf("right")>-1?1:0}function VPe(e){return e==null?0:e.indexOf("top")>-1?-1:e.indexOf("bottom")>-1?1:0}function MIt(e){var t=0,r=0,n=[t,r];if(Array.isArray(e))for(var i=0;i=0){var u=AIt(s.position,s.delaunayColor,s.delaunayAxis);u.opacity=e.opacity,this.delaunayMesh?this.delaunayMesh.update(u):(u.gl=t,this.delaunayMesh=mIt(u),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)};bX.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())};function LIt(e,t){var r=new WPe(e,t.uid);return r.update(t),r}XPe.exports=LIt});var MX=ye((egr,$Pe)=>{"use strict";var e1=pf(),PIt=ec(),SX=Tu(),wX=df().axisHoverFormat,{hovertemplateAttrs:IIt,texttemplateAttrs:RIt,templatefallbackAttrs:YPe}=Ll(),KPe=Gl(),DIt=mX(),FIt=$D(),Yg=Ao().extendFlat,zIt=mc().overrideAll,JPe=Z1(),OIt=e1.line,U2=e1.marker,qIt=U2.line,BIt=Yg({width:OIt.width,dash:{valType:"enumerated",values:JPe(DIt),dflt:"solid"}},SX("line"));function TX(e){return{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}}var AX=$Pe.exports=zIt({x:e1.x,y:e1.y,z:{valType:"data_array"},text:Yg({},e1.text,{}),texttemplate:RIt(),texttemplatefallback:YPe({editType:"calc"}),hovertext:Yg({},e1.hovertext,{}),hovertemplate:IIt(),hovertemplatefallback:YPe(),xhoverformat:wX("x"),yhoverformat:wX("y"),zhoverformat:wX("z"),mode:Yg({},e1.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:TX("x"),y:TX("y"),z:TX("z")},connectgaps:e1.connectgaps,line:BIt,marker:Yg({symbol:{valType:"enumerated",values:JPe(FIt),dflt:"circle",arrayOk:!0},size:Yg({},U2.size,{dflt:8}),sizeref:U2.sizeref,sizemin:U2.sizemin,sizemode:U2.sizemode,opacity:Yg({},U2.opacity,{arrayOk:!1}),colorbar:U2.colorbar,line:Yg({width:Yg({},qIt.width,{arrayOk:!1})},SX("marker.line"))},SX("marker")),textposition:Yg({},e1.textposition,{dflt:"top center"}),textfont:PIt({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"]}),opacity:KPe.opacity,hoverinfo:Yg({},KPe.hoverinfo)},"calc","nested");AX.x.editType=AX.y.editType=AX.z.editType="calc+clearAxisTypes"});var tIe=ye((tgr,eIe)=>{"use strict";var QPe=qa(),NIt=Dr(),EX=Ru(),UIt=$p(),VIt=R0(),GIt=D0(),HIt=MX();eIe.exports=function(t,r,n,i){function a(d,v){return NIt.coerce(t,r,HIt,d,v)}var o=jIt(t,r,a,i);if(!o){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),a("mode"),EX.hasMarkers(r)&&UIt(t,r,n,i,a,{noSelect:!0,noAngle:!0}),EX.hasLines(r)&&(a("connectgaps"),VIt(t,r,n,i,a)),EX.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),GIt(t,r,i,a,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var s=(r.line||{}).color,l=(r.marker||{}).color;a("surfaceaxis")>=0&&a("surfacecolor",s||l);for(var u=["x","y","z"],c=0;c<3;++c){var f="projection."+u[c];a(f+".show")&&(a(f+".opacity"),a(f+".scale"))}var h=QPe.getComponentMethod("errorbars","supplyDefaults");h(t,r,s||l||n,{axis:"z"}),h(t,r,s||l||n,{axis:"y",inherit:"z"}),h(t,r,s||l||n,{axis:"x",inherit:"z"})};function jIt(e,t,r,n){var i=0,a=r("x"),o=r("y"),s=r("z"),l=QPe.getComponentMethod("calendars","handleTraceDefaults");return l(e,t,["x","y","z"],n),a&&o&&s&&(i=Math.min(a.length,o.length,s.length),t._length=t._xlength=t._ylength=t._zlength=i),i}});var iIe=ye((rgr,rIe)=>{"use strict";var WIt=km(),XIt=F0();rIe.exports=function(t,r){var n=[{x:!1,y:!1,trace:r,t:{}}];return WIt(n,r),XIt(t,r),n}});var aIe=ye((igr,nIe)=>{nIe.exports=ZIt;function ZIt(e,t){if(typeof e!="string")throw new TypeError("must specify type string");if(t=t||{},typeof document=="undefined"&&!t.canvas)return null;var r=t.canvas||document.createElement("canvas");typeof t.width=="number"&&(r.width=t.width),typeof t.height=="number"&&(r.height=t.height);var n=t,i;try{var a=[e];e.indexOf("webgl")===0&&a.push("experimental-"+e);for(var o=0;o{var YIt=aIe();oIe.exports=function(t){return YIt("webgl",t)}});var kX=ye((agr,uIe)=>{"use strict";var lIe=ka(),KIt=function(){};uIe.exports=function(t){for(var r in t)typeof t[r]=="function"&&(t[r]=KIt);t.destroy=function(){t.container.parentNode.removeChild(t.container)};var n=document.createElement("div");n.className="no-webgl",n.style.cursor="pointer",n.style.fontSize="24px",n.style.color=lIe.defaults[0],n.style.position="absolute",n.style.left=n.style.top="0px",n.style.width=n.style.height="100%",n.style["background-color"]=lIe.lightLine,n.style["z-index"]=30;var i=document.createElement("p");return i.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",i.style.position="relative",i.style.top="50%",i.style.left="50%",i.style.height="30%",i.style.width="50%",i.style.margin="-15% 0 0 -25%",n.appendChild(i),t.container.appendChild(n),t.container.style.background="#FFFFFF",t.container.onclick=function(){window.open("https://get.webgl.org")},!1}});var hIe=ye((ogr,fIe)=>{"use strict";var V2=Jy(),JIt=Dr(),$It=["xaxis","yaxis","zaxis"];function cIe(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickFontWeight=["normal","normal","normal","normal"],this.tickFontStyle=["normal","normal","normal","normal"],this.tickFontVariant=["normal","normal","normal","normal"],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["Open Sans","Open Sans","Open Sans"],this.labelSize=[20,20,20],this.labelFontWeight=["normal","normal","normal","normal"],this.labelFontStyle=["normal","normal","normal","normal"],this.labelFontVariant=["normal","normal","normal","normal"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[30,30,30],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[10,10,10],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!0,!0,!0],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._defaultTickPad=this.tickPad.slice(),this._defaultLabelPad=this.labelPad.slice(),this._defaultLineTickLength=this.lineTickLength.slice()}var QIt=cIe.prototype;QIt.merge=function(e,t){for(var r=this,n=0;n<3;++n){var i=t[$It[n]];if(!i.visible){r.tickEnable[n]=!1,r.labelEnable[n]=!1,r.lineEnable[n]=!1,r.lineTickEnable[n]=!1,r.gridEnable[n]=!1,r.zeroEnable[n]=!1,r.backgroundEnable[n]=!1;continue}r.labels[n]=e._meta?JIt.templateString(i.title.text,e._meta):i.title.text,"font"in i.title&&(i.title.font.color&&(r.labelColor[n]=V2(i.title.font.color)),i.title.font.family&&(r.labelFont[n]=i.title.font.family),i.title.font.size&&(r.labelSize[n]=i.title.font.size),i.title.font.weight&&(r.labelFontWeight[n]=i.title.font.weight),i.title.font.style&&(r.labelFontStyle[n]=i.title.font.style),i.title.font.variant&&(r.labelFontVariant[n]=i.title.font.variant)),"showline"in i&&(r.lineEnable[n]=i.showline),"linecolor"in i&&(r.lineColor[n]=V2(i.linecolor)),"linewidth"in i&&(r.lineWidth[n]=i.linewidth),"showgrid"in i&&(r.gridEnable[n]=i.showgrid),"gridcolor"in i&&(r.gridColor[n]=V2(i.gridcolor)),"gridwidth"in i&&(r.gridWidth[n]=i.gridwidth),i.type==="log"?r.zeroEnable[n]=!1:"zeroline"in i&&(r.zeroEnable[n]=i.zeroline),"zerolinecolor"in i&&(r.zeroLineColor[n]=V2(i.zerolinecolor)),"zerolinewidth"in i&&(r.zeroLineWidth[n]=i.zerolinewidth),"ticks"in i&&i.ticks?r.lineTickEnable[n]=!0:r.lineTickEnable[n]=!1,"ticklen"in i&&(r.lineTickLength[n]=r._defaultLineTickLength[n]=i.ticklen),"tickcolor"in i&&(r.lineTickColor[n]=V2(i.tickcolor)),"tickwidth"in i&&(r.lineTickWidth[n]=i.tickwidth),"tickangle"in i&&(r.tickAngle[n]=i.tickangle==="auto"?-3600:Math.PI*-i.tickangle/180),"showticklabels"in i&&(r.tickEnable[n]=i.showticklabels),"tickfont"in i&&(i.tickfont.color&&(r.tickColor[n]=V2(i.tickfont.color)),i.tickfont.family&&(r.tickFont[n]=i.tickfont.family),i.tickfont.size&&(r.tickSize[n]=i.tickfont.size),i.tickfont.weight&&(r.tickFontWeight[n]=i.tickfont.weight),i.tickfont.style&&(r.tickFontStyle[n]=i.tickfont.style),i.tickfont.variant&&(r.tickFontVariant[n]=i.tickfont.variant)),"mirror"in i?["ticks","all","allticks"].indexOf(i.mirror)!==-1?(r.lineTickMirror[n]=!0,r.lineMirror[n]=!0):i.mirror===!0?(r.lineTickMirror[n]=!1,r.lineMirror[n]=!0):(r.lineTickMirror[n]=!1,r.lineMirror[n]=!1):r.lineMirror[n]=!1,"showbackground"in i&&i.showbackground!==!1?(r.backgroundEnable[n]=!0,r.backgroundColor[n]=V2(i.backgroundcolor)):r.backgroundEnable[n]=!1}};function e8t(e,t){var r=new cIe;return r.merge(e,t),r}fIe.exports=e8t});var pIe=ye((sgr,vIe)=>{"use strict";var t8t=Jy(),r8t=["xaxis","yaxis","zaxis"];function dIe(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}var i8t=dIe.prototype;i8t.merge=function(e){for(var t=0;t<3;++t){var r=e[r8t[t]];if(!r.visible){this.enabled[t]=!1,this.drawSides[t]=!1;continue}this.enabled[t]=r.showspikes,this.colors[t]=t8t(r.spikecolor),this.drawSides[t]=r.spikesides,this.lineWidth[t]=r.spikethickness}};function n8t(e){var t=new dIe;return t.merge(e),t}vIe.exports=n8t});var yIe=ye((lgr,mIe)=>{"use strict";mIe.exports=u8t;var gIe=ho(),a8t=Dr(),o8t=["xaxis","yaxis","zaxis"],s8t=[0,0,0];function l8t(e){for(var t=new Array(3),r=0;r<3;++r){for(var n=e[r],i=new Array(n.length),a=0;a/g," "));i[a]=u,o.tickmode=s}}t.ticks=i;for(var a=0;a<3;++a){s8t[a]=.5*(e.glplot.bounds[0][a]+e.glplot.bounds[1][a]);for(var c=0;c<2;++c)t.bounds[c][a]=e.glplot.bounds[c][a]}e.contourLevels=l8t(i)}});var SIe=ye((ugr,AIe)=>{"use strict";var bIe=Od().gl_plot3d,c8t=bIe.createCamera,_Ie=bIe.createScene,f8t=sIe(),h8t=RL(),rF=qa(),up=Dr(),tF=up.preserveDrawingBuffer(),iF=ho(),Kg=vf(),d8t=Jy(),v8t=kX(),p8t=UU(),g8t=hIe(),m8t=pIe(),y8t=yIe(),_8t=Tg().applyAutorangeOptions,YE,eF,wIe=!1;function TIe(e,t){var r=document.createElement("div"),n=e.container;this.graphDiv=e.graphDiv;var i=document.createElementNS("http://www.w3.org/2000/svg","svg");i.style.position="absolute",i.style.top=i.style.left="0px",i.style.width=i.style.height="100%",i.style["z-index"]=20,i.style["pointer-events"]="none",r.appendChild(i),this.svgContainer=i,r.id=e.id,r.style.position="absolute",r.style.top=r.style.left="0px",r.style.width=r.style.height="100%",n.appendChild(r),this.fullLayout=t,this.id=e.id||"scene",this.fullSceneLayout=t[this.id],this.plotArgs=[[],{},{}],this.axesOptions=g8t(t,t[this.id]),this.spikeOptions=m8t(t[this.id]),this.container=r,this.staticMode=!!e.staticPlot,this.pixelRatio=this.pixelRatio||e.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=rF.getComponentMethod("annotations3d","convert"),this.drawAnnotations=rF.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var Sv=TIe.prototype;Sv.prepareOptions=function(){var e=this,t={canvas:e.canvas,gl:e.gl,glOptions:{preserveDrawingBuffer:tF,premultipliedAlpha:!0,antialias:!0},container:e.container,axes:e.axesOptions,spikes:e.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:e.camera,pixelRatio:e.pixelRatio};if(e.staticMode){if(!eF&&(YE=document.createElement("canvas"),eF=f8t({canvas:YE,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!eF))throw new Error("error creating static canvas/context for image server");t.gl=eF,t.canvas=YE}return t};var xIe=!0;Sv.tryCreatePlot=function(){var e=this,t=e.prepareOptions(),r=!0;try{e.glplot=_Ie(t)}catch(n){if(e.staticMode||!xIe||tF)r=!1;else{up.warn(["webgl setup failed possibly due to","false preserveDrawingBuffer config.","The mobile/tablet device may not be detected by is-mobile module.","Enabling preserveDrawingBuffer in second attempt to create webgl scene..."].join(" "));try{tF=t.glOptions.preserveDrawingBuffer=!0,e.glplot=_Ie(t)}catch(i){tF=t.glOptions.preserveDrawingBuffer=!1,r=!1}}}return xIe=!1,r};Sv.initializeGLCamera=function(){var e=this,t=e.fullSceneLayout.camera,r=t.projection.type==="orthographic";e.camera=c8t(e.container,{center:[t.center.x,t.center.y,t.center.z],eye:[t.eye.x,t.eye.y,t.eye.z],up:[t.up.x,t.up.y,t.up.z],_ortho:r,zoomMin:.01,zoomMax:100,mode:"orbit"})};Sv.initializeGLPlot=function(){var e=this;e.initializeGLCamera();var t=e.tryCreatePlot();if(!t)return v8t(e);e.traces={},e.make4thDimension();var r=e.graphDiv,n=r.layout,i=function(){var o={};return e.isCameraChanged(n)&&(o[e.id+".camera"]=e.getCamera()),e.isAspectChanged(n)&&(o[e.id+".aspectratio"]=e.glplot.getAspectratio(),n[e.id].aspectmode!=="manual"&&(e.fullSceneLayout.aspectmode=n[e.id].aspectmode=o[e.id+".aspectmode"]="manual")),o},a=function(o){if(o.fullSceneLayout.dragmode!==!1){var s=i();o.saveLayout(n),o.graphDiv.emit("plotly_relayout",s)}};return e.glplot.canvas&&(e.glplot.canvas.addEventListener("mouseup",function(){a(e)}),e.glplot.canvas.addEventListener("touchstart",function(){wIe=!0}),e.glplot.canvas.addEventListener("wheel",function(o){if(r._context._scrollZoom.gl3d){if(e.camera._ortho){var s=o.deltaX>o.deltaY?1.1:.9090909090909091,l=e.glplot.getAspectratio();e.glplot.setAspectratio({x:s*l.x,y:s*l.y,z:s*l.z})}a(e)}},h8t?{passive:!1}:!1),e.glplot.canvas.addEventListener("mousemove",function(){if(e.fullSceneLayout.dragmode!==!1&&e.camera.mouseListener.buttons!==0){var o=i();e.graphDiv.emit("plotly_relayouting",o)}}),e.staticMode||e.glplot.canvas.addEventListener("webglcontextlost",function(o){r&&r.emit&&r.emit("plotly_webglcontextlost",{event:o,layer:e.id})},!1)),e.glplot.oncontextloss=function(){e.recoverContext()},e.glplot.onrender=function(){e.render()},!0};Sv.render=function(){var e=this,t=e.graphDiv,r,n=e.svgContainer,i=e.container.getBoundingClientRect();t._fullLayout._calcInverseTransform(t);var a=t._fullLayout._invScaleX,o=t._fullLayout._invScaleY,s=i.width*a,l=i.height*o;n.setAttributeNS(null,"viewBox","0 0 "+s+" "+l),n.setAttributeNS(null,"width",s),n.setAttributeNS(null,"height",l),y8t(e),e.glplot.axes.update(e.axesOptions);for(var u=Object.keys(e.traces),c=null,f=e.glplot.selection,h=0;h")):r.type==="isosurface"||r.type==="volume"?(p.valueLabel=iF.hoverLabelText(e._mockAxis,e._mockAxis.d2l(f.traceCoordinate[3]),r.valuehoverformat),x.push("value: "+p.valueLabel),f.textLabel&&x.push(f.textLabel),L=x.join("
")):L=f.textLabel;var C={x:f.traceCoordinate[0],y:f.traceCoordinate[1],z:f.traceCoordinate[2],data:_._input,fullData:_,curveNumber:_.index,pointNumber:b};Kg.appendArrayPointValue(C,_,b),r._module.eventData&&(C=_._module.eventData(C,f,_,{},b));var M={points:[C]};if(e.fullSceneLayout.hovermode){var g=[];Kg.loneHover({trace:_,x:(.5+.5*v[0]/v[3])*s,y:(.5-.5*v[1]/v[3])*l,xLabel:p.xLabel,yLabel:p.yLabel,zLabel:p.zLabel,text:L,name:c.name,color:Kg.castHoverOption(_,b,"bgcolor")||c.color,borderColor:Kg.castHoverOption(_,b,"bordercolor"),fontFamily:Kg.castHoverOption(_,b,"font.family"),fontSize:Kg.castHoverOption(_,b,"font.size"),fontColor:Kg.castHoverOption(_,b,"font.color"),nameLength:Kg.castHoverOption(_,b,"namelength"),textAlign:Kg.castHoverOption(_,b,"align"),hovertemplate:up.castOption(_,b,"hovertemplate"),hovertemplateLabels:up.extendFlat({},C,p),eventData:[C]},{container:n,gd:t,inOut_bbox:g}),C.bbox=g[0]}f.distance<5&&(f.buttons||wIe)?t.emit("plotly_click",M):t.emit("plotly_hover",M),this.oldEventData=M}else Kg.loneUnhover(n),this.oldEventData&&t.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;e.drawAnnotations(e)};Sv.recoverContext=function(){var e=this;e.glplot.dispose();var t=function(){if(e.glplot.gl.isContextLost()){requestAnimationFrame(t);return}if(!e.initializeGLPlot()){up.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}e.plot.apply(e,e.plotArgs)};requestAnimationFrame(t)};var KE=["xaxis","yaxis","zaxis"];function x8t(e,t,r){for(var n=e.fullSceneLayout,i=0;i<3;i++){var a=KE[i],o=a.charAt(0),s=n[a],l=t[o],u=t[o+"calendar"],c=t["_"+o+"length"];if(!up.isArrayOrTypedArray(l))r[0][i]=Math.min(r[0][i],0),r[1][i]=Math.max(r[1][i],c-1);else for(var f,h=0;h<(c||l.length);h++)if(up.isArrayOrTypedArray(l[h]))for(var d=0;d_[1][o])_[0][o]=-1,_[1][o]=1;else{var T=_[1][o]-_[0][o];_[0][o]-=T/32,_[1][o]+=T/32}if(k=[_[0][o],_[1][o]],k=_8t(k,l),_[0][o]=k[0],_[1][o]=k[1],l.isReversed()){var z=_[0][o];_[0][o]=_[1][o],_[1][o]=z}}else k=l.range,_[0][o]=l.r2l(k[0]),_[1][o]=l.r2l(k[1]);_[0][o]===_[1][o]&&(_[0][o]-=1,_[1][o]+=1),b[o]=_[1][o]-_[0][o],l.range=[_[0][o],_[1][o]],l.limitRange(),n.glplot.setBounds(o,{min:l.range[0]*d[o],max:l.range[1]*d[o]})}var O,V=c.aspectmode;if(V==="cube")O=[1,1,1];else if(V==="manual"){var G=c.aspectratio;O=[G.x,G.y,G.z]}else if(V==="auto"||V==="data"){var Z=[1,1,1];for(o=0;o<3;++o){l=c[KE[o]],u=l.type;var H=p[u];Z[o]=Math.pow(H.acc,1/H.count)/d[o]}V==="data"||Math.max.apply(null,Z)/Math.min.apply(null,Z)<=4?O=Z:O=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");c.aspectratio.x=f.aspectratio.x=O[0],c.aspectratio.y=f.aspectratio.y=O[1],c.aspectratio.z=f.aspectratio.z=O[2],n.glplot.setAspectratio(c.aspectratio),n.viewInitial.aspectratio||(n.viewInitial.aspectratio={x:c.aspectratio.x,y:c.aspectratio.y,z:c.aspectratio.z}),n.viewInitial.aspectmode||(n.viewInitial.aspectmode=c.aspectmode);var N=c.domain||null,j=t._size||null;if(N&&j){var re=n.container.style;re.position="absolute",re.left=j.l+N.x[0]*j.w+"px",re.top=j.t+(1-N.y[1])*j.h+"px",re.width=j.w*(N.x[1]-N.x[0])+"px",re.height=j.h*(N.y[1]-N.y[0])+"px"}n.glplot.redraw()}};Sv.destroy=function(){var e=this;e.glplot&&(e.camera.mouseListener.enabled=!1,e.container.removeEventListener("wheel",e.camera.wheelListener),e.camera=null,e.glplot.dispose(),e.container.parentNode.removeChild(e.container),e.glplot=null)};function w8t(e){return[[e.eye.x,e.eye.y,e.eye.z],[e.center.x,e.center.y,e.center.z],[e.up.x,e.up.y,e.up.z]]}function T8t(e){return{up:{x:e.up[0],y:e.up[1],z:e.up[2]},center:{x:e.center[0],y:e.center[1],z:e.center[2]},eye:{x:e.eye[0],y:e.eye[1],z:e.eye[2]},projection:{type:e._ortho===!0?"orthographic":"perspective"}}}Sv.getCamera=function(){var e=this;return e.camera.view.recalcMatrix(e.camera.view.lastT()),T8t(e.camera)};Sv.setViewport=function(e){var t=this,r=e.camera;t.camera.lookAt.apply(this,w8t(r)),t.glplot.setAspectratio(e.aspectratio);var n=r.projection.type==="orthographic",i=t.camera._ortho;n!==i&&(t.glplot.redraw(),t.glplot.clearRGBA(),t.glplot.dispose(),t.initializeGLPlot())};Sv.isCameraChanged=function(e){var t=this,r=t.getCamera(),n=up.nestedProperty(e,t.id+".camera"),i=n.get();function a(u,c,f,h){var d=["up","center","eye"],v=["x","y","z"];return c[d[f]]&&u[d[f]][v[h]]===c[d[f]][v[h]]}var o=!1;if(i===void 0)o=!0;else{for(var s=0;s<3;s++)for(var l=0;l<3;l++)if(!a(r,i,s,l)){o=!0;break}(!i.projection||r.projection&&r.projection.type!==i.projection.type)&&(o=!0)}return o};Sv.isAspectChanged=function(e){var t=this,r=t.glplot.getAspectratio(),n=up.nestedProperty(e,t.id+".aspectratio"),i=n.get();return i===void 0||i.x!==r.x||i.y!==r.y||i.z!==r.z};Sv.saveLayout=function(e){var t=this,r=t.fullLayout,n,i,a,o,s,l,u=t.isCameraChanged(e),c=t.isAspectChanged(e),f=u||c;if(f){var h={};if(u&&(n=t.getCamera(),i=up.nestedProperty(e,t.id+".camera"),a=i.get(),h[t.id+".camera"]=a),c&&(o=t.glplot.getAspectratio(),s=up.nestedProperty(e,t.id+".aspectratio"),l=s.get(),h[t.id+".aspectratio"]=l),rF.call("_storeDirectGUIEdit",e,r._preGUI,h),u){i.set(n);var d=up.nestedProperty(r,t.id+".camera");d.set(n)}if(c){s.set(o);var v=up.nestedProperty(r,t.id+".aspectratio");v.set(o),t.glplot.redraw()}}return f};Sv.updateFx=function(e,t){var r=this,n=r.camera;if(n)if(e==="orbit")n.mode="orbit",n.keyBindingMode="rotate";else if(e==="turntable"){n.up=[0,0,1],n.mode="turntable",n.keyBindingMode="rotate";var i=r.graphDiv,a=i._fullLayout,o=r.fullSceneLayout.camera,s=o.up.x,l=o.up.y,u=o.up.z;if(u/Math.sqrt(s*s+l*l+u*u)<.999){var c=r.id+".camera.up",f={x:0,y:0,z:1},h={};h[c]=f;var d=i.layout;rF.call("_storeDirectGUIEdit",d,a._preGUI,h),o.up=f,up.nestedProperty(d,c).set(f)}}else n.keyBindingMode=e;r.fullSceneLayout.hovermode=t};function A8t(e,t,r){for(var n=0,i=r-1;n0)for(var s=255/o,l=0;l<3;++l)e[a+l]=Math.min(s*e[a+l],255)}}Sv.toImage=function(e){var t=this;e||(e="png"),t.staticMode&&t.container.appendChild(YE),t.glplot.redraw();var r=t.glplot.gl,n=r.drawingBufferWidth,i=r.drawingBufferHeight;r.bindFramebuffer(r.FRAMEBUFFER,null);var a=new Uint8Array(n*i*4);r.readPixels(0,0,n,i,r.RGBA,r.UNSIGNED_BYTE,a),A8t(a,n,i),S8t(a,n,i);var o=document.createElement("canvas");o.width=n,o.height=i;var s=o.getContext("2d",{willReadFrequently:!0}),l=s.createImageData(n,i);l.data.set(a),s.putImageData(l,0,0);var u;switch(e){case"jpeg":u=o.toDataURL("image/jpeg");break;case"webp":u=o.toDataURL("image/webp");break;default:u=o.toDataURL("image/png")}return t.staticMode&&t.container.removeChild(YE),u};Sv.setConvert=function(){for(var e=this,t=0;t<3;t++){var r=e.fullSceneLayout[KE[t]];iF.setConvert(r,e.fullLayout),r.setScale=up.noop}};Sv.make4thDimension=function(){var e=this,t=e.graphDiv,r=t._fullLayout;e._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},iF.setConvert(e._mockAxis,r)};AIe.exports=TIe});var EIe=ye((cgr,MIe)=>{"use strict";MIe.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}});var LX=ye((fgr,kIe)=>{"use strict";var M8t=ka(),xs=Rd(),CX=Ao().extendFlat,E8t=mc().overrideAll;kIe.exports=E8t({visible:xs.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:M8t.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:xs.color,categoryorder:xs.categoryorder,categoryarray:xs.categoryarray,title:{text:xs.title.text,font:xs.title.font},type:CX({},xs.type,{values:["-","linear","log","date","category"]}),autotypenumbers:xs.autotypenumbers,autorange:xs.autorange,autorangeoptions:{minallowed:xs.autorangeoptions.minallowed,maxallowed:xs.autorangeoptions.maxallowed,clipmin:xs.autorangeoptions.clipmin,clipmax:xs.autorangeoptions.clipmax,include:xs.autorangeoptions.include,editType:"plot"},rangemode:xs.rangemode,minallowed:xs.minallowed,maxallowed:xs.maxallowed,range:CX({},xs.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:xs.minor.tickmode,nticks:xs.nticks,tick0:xs.tick0,dtick:xs.dtick,tickvals:xs.tickvals,ticktext:xs.ticktext,ticks:xs.ticks,mirror:xs.mirror,ticklen:xs.ticklen,tickwidth:xs.tickwidth,tickcolor:xs.tickcolor,showticklabels:xs.showticklabels,labelalias:xs.labelalias,tickfont:xs.tickfont,tickangle:xs.tickangle,tickprefix:xs.tickprefix,showtickprefix:xs.showtickprefix,ticksuffix:xs.ticksuffix,showticksuffix:xs.showticksuffix,showexponent:xs.showexponent,exponentformat:xs.exponentformat,minexponent:xs.minexponent,separatethousands:xs.separatethousands,tickformat:xs.tickformat,tickformatstops:xs.tickformatstops,hoverformat:xs.hoverformat,showline:xs.showline,linecolor:xs.linecolor,linewidth:xs.linewidth,showgrid:xs.showgrid,gridcolor:CX({},xs.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:xs.gridwidth,zeroline:xs.zeroline,zerolinecolor:xs.zerolinecolor,zerolinewidth:xs.zerolinewidth},"plot","from-root")});var DX=ye((hgr,CIe)=>{"use strict";var PX=LX(),k8t=Cc().attributes,IX=Ao().extendFlat,C8t=Dr().counterRegex;function RX(e,t,r){return{x:{valType:"number",dflt:e,editType:"camera"},y:{valType:"number",dflt:t,editType:"camera"},z:{valType:"number",dflt:r,editType:"camera"},editType:"camera"}}CIe.exports={_arrayAttrRegexps:[C8t("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:IX(RX(0,0,1),{}),center:IX(RX(0,0,0),{}),eye:IX(RX(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:k8t({name:"scene",editType:"plot"}),aspectmode:{valType:"enumerated",values:["auto","cube","data","manual"],dflt:"auto",editType:"plot",impliedEdits:{"aspectratio.x":void 0,"aspectratio.y":void 0,"aspectratio.z":void 0}},aspectratio:{x:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},y:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},z:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},editType:"plot",impliedEdits:{aspectmode:"manual"}},xaxis:PX,yaxis:PX,zaxis:PX,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot"},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar"},uirevision:{valType:"any",editType:"none"},editType:"plot"}});var RIe=ye((dgr,IIe)=>{"use strict";var L8t=cd().mix,LIe=Dr(),P8t=vl(),I8t=LX(),R8t=SU(),D8t=r4(),PIe=["xaxis","yaxis","zaxis"],F8t=100*136/187;IIe.exports=function(t,r,n){var i,a;function o(u,c){return LIe.coerce(i,a,I8t,u,c)}for(var s=0;s{"use strict";var z8t=Dr(),O8t=ka(),q8t=qa(),B8t=k_(),N8t=RIe(),DIe=DX(),U8t=Id().getSubplotData,FIe="gl3d";zIe.exports=function(t,r,n){var i=r._basePlotModules.length>1;function a(o){if(!i){var s=z8t.validate(t[o],DIe[o]);if(s)return t[o]}}B8t(t,r,n,{type:FIe,attributes:DIe,handleDefaults:V8t,fullLayout:r,font:r.font,fullData:n,getDfltFromLayout:a,autotypenumbersDflt:r.autotypenumbers,paper_bgcolor:r.paper_bgcolor,calendar:r.calendar})};function V8t(e,t,r,n){for(var i=r("bgcolor"),a=O8t.combine(i,n.paper_bgcolor),o=["up","center","eye"],s=0;s.999)&&(h="turntable")}else h="turntable";r("dragmode",h),r("hovermode",n.getDfltFromLayout("hovermode"))}});var $_=ye(cp=>{"use strict";var G8t=mc().overrideAll,H8t=B1(),j8t=SIe(),W8t=Id().getSubplotData,X8t=Dr(),Z8t=Wp(),VA="gl3d",FX="scene";cp.name=VA;cp.attr=FX;cp.idRoot=FX;cp.idRegex=cp.attrRegex=X8t.counterRegex("scene");cp.attributes=EIe();cp.layoutAttributes=DX();cp.baseLayoutAttrOverrides=G8t({hoverlabel:H8t.hoverlabel},"plot","nested");cp.supplyLayoutDefaults=OIe();cp.plot=function(t){for(var r=t._fullLayout,n=t._fullData,i=r._subplots[VA],a=0;a{"use strict";qIe.exports={plot:ZPe(),attributes:MX(),markerSymbols:$D(),supplyDefaults:tIe(),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:iIe(),moduleType:"trace",name:"scatter3d",basePlotModule:$_(),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}});var UIe=ye((mgr,NIe)=>{"use strict";NIe.exports=BIe()});var JE=ye((ygr,HIe)=>{"use strict";var VIe=ka(),Y8t=Tu(),zX=df().axisHoverFormat,{hovertemplateAttrs:K8t,templatefallbackAttrs:J8t}=Ll(),GIe=Gl(),OX=Ao().extendFlat,$8t=mc().overrideAll;function qX(e){return{valType:"boolean",dflt:!1}}function BX(e){return{show:{valType:"boolean",dflt:!1},start:{valType:"number",dflt:null,editType:"plot"},end:{valType:"number",dflt:null,editType:"plot"},size:{valType:"number",dflt:null,min:0,editType:"plot"},project:{x:qX("x"),y:qX("y"),z:qX("z")},color:{valType:"color",dflt:VIe.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:VIe.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var NX=HIe.exports=$8t(OX({z:{valType:"data_array"},x:{valType:"data_array"},y:{valType:"data_array"},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:K8t(),hovertemplatefallback:J8t(),xhoverformat:zX("x"),yhoverformat:zX("y"),zhoverformat:zX("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},Y8t("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:BX("x"),y:BX("y"),z:BX("z")},hidesurface:{valType:"boolean",dflt:!1},lightposition:{x:{valType:"number",min:-1e5,max:1e5,dflt:10},y:{valType:"number",min:-1e5,max:1e5,dflt:1e4},z:{valType:"number",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:"number",min:0,max:1,dflt:.8},diffuse:{valType:"number",min:0,max:1,dflt:.8},specular:{valType:"number",min:0,max:2,dflt:.05,description:"Represents the level that incident rays are reflected in a single direction, causing shine."},roughness:{valType:"number",min:0,max:1,dflt:.5,description:"Alters specular reflection; the rougher the surface, the wider and less contrasty the shine."},fresnel:{valType:"number",min:0,max:5,dflt:.2}},opacity:{valType:"number",min:0,max:1,dflt:1},opacityscale:{valType:"any",editType:"calc"},hoverinfo:OX({},GIe.hoverinfo),showlegend:OX({},GIe.showlegend,{dflt:!1})}),"calc","nested");NX.x.editType=NX.y.editType=NX.z.editType="calc+clearAxisTypes"});var VX=ye((_gr,XIe)=>{"use strict";var Q8t=qa(),jIe=Dr(),eRt=Qh(),tRt=JE(),UX=.1;function rRt(e,t){for(var r=[],n=32,i=0;i{"use strict";var ZIe=gv();YIe.exports=function(t,r){r.surfacecolor?ZIe(t,r,{vals:r.surfacecolor,containerStr:"",cLetter:"c"}):ZIe(t,r,{vals:r.z,containerStr:"",cLetter:"c"})}});var r8e=ye((bgr,t8e)=>{"use strict";var aRt=Od().gl_surface3d,GA=Od().ndarray,oRt=Od().ndarray_linear_interpolate.d2,sRt=a8(),lRt=o8(),$E=Dr().isArrayOrTypedArray,uRt=$y().parseColorScale,JIe=Jy(),cRt=tc().extractOpts;function QIe(e,t,r){this.scene=e,this.uid=r,this.surface=t,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var Jg=QIe.prototype;Jg.getXat=function(e,t,r,n){var i=$E(this.data.x)?$E(this.data.x[0])?this.data.x[t][e]:this.data.x[e]:e;return r===void 0?i:n.d2l(i,0,r)};Jg.getYat=function(e,t,r,n){var i=$E(this.data.y)?$E(this.data.y[0])?this.data.y[t][e]:this.data.y[t]:t;return r===void 0?i:n.d2l(i,0,r)};Jg.getZat=function(e,t,r,n){var i=this.data.z[t][e];return i===null&&this.data.connectgaps&&this.data._interpolatedZ&&(i=this.data._interpolatedZ[t][e]),r===void 0?i:n.d2l(i,0,r)};Jg.handlePick=function(e){if(e.object===this.surface){var t=(e.data.index[0]-1)/this.dataScaleX-1,r=(e.data.index[1]-1)/this.dataScaleY-1,n=Math.max(Math.min(Math.round(t),this.data.z[0].length-1),0),i=Math.max(Math.min(Math.round(r),this.data._ylength-1),0);e.index=[n,i],e.traceCoordinate=[this.getXat(n,i),this.getYat(n,i),this.getZat(n,i)],e.dataCoordinate=[this.getXat(n,i,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(n,i,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(n,i,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var a=0;a<3;a++){var o=e.dataCoordinate[a];o!=null&&(e.dataCoordinate[a]*=this.scene.dataScale[a])}var s=this.data.hovertext||this.data.text;return $E(s)&&s[i]&&s[i][n]!==void 0?e.textLabel=s[i][n]:s?e.textLabel=s:e.textLabel="",e.data.dataCoordinate=e.dataCoordinate.slice(),this.surface.highlight(e.data),this.scene.glplot.spikes.position=e.dataCoordinate,!0}};function fRt(e){var t=e[0].rgb,r=e[e.length-1].rgb;return t[0]===r[0]&&t[1]===r[1]&&t[2]===r[2]&&t[3]===r[3]}var HA=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999];function hRt(e,t){if(e0){r=HA[n];break}return r}function vRt(e,t){if(!(e<1||t<1)){for(var r=GX(e),n=GX(t),i=1,a=0;anF;)n--,n/=dRt(n),n++,n<$Ie&&(n=nF);var i=Math.round(n/e);return i>1?i:1};function gRt(e,t,r){var n=r[8]+r[2]*t[0]+r[5]*t[1];return e[0]=(r[6]+r[0]*t[0]+r[3]*t[1])/n,e[1]=(r[7]+r[1]*t[0]+r[4]*t[1])/n,e}function mRt(e,t,r){return yRt(e,t,gRt,r),e}function yRt(e,t,r,n){for(var i=[0,0],a=e.shape[0],o=e.shape[1],s=0;s0&&this.contourStart[n]!==null&&this.contourEnd[n]!==null&&this.contourEnd[n]>this.contourStart[n]))for(t[n]=!0,i=this.contourStart[n];ih&&(this.minValues[u]=h),this.maxValues[u]{"use strict";i8e.exports={attributes:JE(),supplyDefaults:VX().supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:KIe(),plot:r8e(),moduleType:"trace",name:"surface",basePlotModule:$_(),categories:["gl3d","2dMap","showLegend"],meta:{}}});var o8e=ye((Tgr,a8e)=>{"use strict";a8e.exports=n8e()});var jA=ye((Agr,l8e)=>{"use strict";var bRt=Tu(),HX=df().axisHoverFormat,{hovertemplateAttrs:wRt,templatefallbackAttrs:TRt}=Ll(),Q_=JE(),s8e=Gl(),ex=Ao().extendFlat;l8e.exports=ex({x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},i:{valType:"data_array",editType:"calc"},j:{valType:"data_array",editType:"calc"},k:{valType:"data_array",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:wRt({editType:"calc"}),hovertemplatefallback:TRt({editType:"calc"}),xhoverformat:HX("x"),yhoverformat:HX("y"),zhoverformat:HX("z"),delaunayaxis:{valType:"enumerated",values:["x","y","z"],dflt:"z",editType:"calc"},alphahull:{valType:"number",dflt:-1,editType:"calc"},intensity:{valType:"data_array",editType:"calc"},intensitymode:{valType:"enumerated",values:["vertex","cell"],dflt:"vertex",editType:"calc"},color:{valType:"color",editType:"calc"},vertexcolor:{valType:"data_array",editType:"calc"},facecolor:{valType:"data_array",editType:"calc"}},bRt("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:Q_.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:ex({},Q_.contours.x.show,{}),color:Q_.contours.x.color,width:Q_.contours.x.width,editType:"calc"},lightposition:{x:ex({},Q_.lightposition.x,{dflt:1e5}),y:ex({},Q_.lightposition.y,{dflt:1e5}),z:ex({},Q_.lightposition.z,{dflt:0}),editType:"calc"},lighting:ex({vertexnormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-12,editType:"calc",description:"Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry."},facenormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-6,editType:"calc",description:"Epsilon for face normals calculation avoids math issues arising from degenerate geometry."},editType:"calc"},Q_.lighting),hoverinfo:ex({},s8e.hoverinfo,{editType:"calc"}),showlegend:ex({},s8e.showlegend,{dflt:!1})})});var oF=ye((Sgr,c8e)=>{"use strict";var ARt=Tu(),aF=df().axisHoverFormat,{hovertemplateAttrs:SRt,templatefallbackAttrs:MRt}=Ll(),QE=jA(),u8e=Gl(),jX=Ao().extendFlat,ERt=mc().overrideAll;function WX(e){return{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}}}function XX(e){return{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}}}var WA=c8e.exports=ERt(jX({x:{valType:"data_array"},y:{valType:"data_array"},z:{valType:"data_array"},value:{valType:"data_array"},isomin:{valType:"number"},isomax:{valType:"number"},surface:{show:{valType:"boolean",dflt:!0},count:{valType:"integer",dflt:2,min:1},fill:{valType:"number",min:0,max:1,dflt:1},pattern:{valType:"flaglist",flags:["A","B","C","D","E"],extras:["all","odd","even"],dflt:"all"}},spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:.15}},slices:{x:WX("x"),y:WX("y"),z:WX("z")},caps:{x:XX("x"),y:XX("y"),z:XX("z")},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:SRt(),hovertemplatefallback:MRt(),xhoverformat:aF("x"),yhoverformat:aF("y"),zhoverformat:aF("z"),valuehoverformat:aF("value",1),showlegend:jX({},u8e.showlegend,{dflt:!1})},ARt("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:QE.opacity,lightposition:QE.lightposition,lighting:QE.lighting,flatshading:QE.flatshading,contour:QE.contour,hoverinfo:jX({},u8e.hoverinfo)}),"calc","nested");WA.flatshading.dflt=!0;WA.lighting.facenormalsepsilon.dflt=0;WA.x.editType=WA.y.editType=WA.z.editType=WA.value.editType="calc+clearAxisTypes"});var ZX=ye((Mgr,h8e)=>{"use strict";var kRt=Dr(),CRt=qa(),LRt=oF(),PRt=Qh();function IRt(e,t,r,n){function i(a,o){return kRt.coerce(e,t,LRt,a,o)}f8e(e,t,r,n,i)}function f8e(e,t,r,n,i){var a=i("isomin"),o=i("isomax");o!=null&&a!==void 0&&a!==null&&a>o&&(t.isomin=null,t.isomax=null);var s=i("x"),l=i("y"),u=i("z"),c=i("value");if(!s||!s.length||!l||!l.length||!u||!u.length||!c||!c.length){t.visible=!1;return}var f=CRt.getComponentMethod("calendars","handleTraceDefaults");f(e,t,["x","y","z"],n),i("valuehoverformat"),["x","y","z"].forEach(function(_){i(_+"hoverformat");var b="caps."+_,p=i(b+".show");p&&i(b+".fill");var k="slices."+_,E=i(k+".show");E&&(i(k+".fill"),i(k+".locations"))});var h=i("spaceframe.show");h&&i("spaceframe.fill");var d=i("surface.show");d&&(i("surface.count"),i("surface.fill"),i("surface.pattern"));var v=i("contour.show");v&&(i("contour.color"),i("contour.width")),["text","hovertext","hovertemplate","lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","opacity"].forEach(function(_){i(_)}),PRt(e,t,n,i,{prefix:"",cLetter:"c"}),t._length=null}h8e.exports={supplyDefaults:IRt,supplyIsoDefaults:f8e}});var sF=ye((Egr,v8e)=>{"use strict";var KX=Dr(),RRt=gv();function DRt(e,t){t._len=Math.min(t.u.length,t.v.length,t.w.length,t.x.length,t.y.length,t.z.length),t._u=jm(t.u,t._len),t._v=jm(t.v,t._len),t._w=jm(t.w,t._len),t._x=jm(t.x,t._len),t._y=jm(t.y,t._len),t._z=jm(t.z,t._len);var r=d8e(t);t._gridFill=r.fill,t._Xs=r.Xs,t._Ys=r.Ys,t._Zs=r.Zs,t._len=r.len;var n=0,i,a,o;t.starts&&(i=jm(t.starts.x||[]),a=jm(t.starts.y||[]),o=jm(t.starts.z||[]),n=Math.min(i.length,a.length,o.length)),t._startsX=i||[],t._startsY=a||[],t._startsZ=o||[];var s=0,l=1/0,u;for(u=0;u1&&(E=t[i-1],L=r[i-1],C=n[i-1]),a=0;aE?"-":"+")+"x"),v=v.replace("y",(S>L?"-":"+")+"y"),v=v.replace("z",(x>C?"-":"+")+"z");var T=function(){i=0,M=[],g=[],P=[]};(!i||i{"use strict";var FRt=gv(),zRt=sF().processGrid,lF=sF().filter;p8e.exports=function(t,r){r._len=Math.min(r.x.length,r.y.length,r.z.length,r.value.length),r._x=lF(r.x,r._len),r._y=lF(r.y,r._len),r._z=lF(r.z,r._len),r._value=lF(r.value,r._len);var n=zRt(r);r._gridFill=n.fill,r._Xs=n.Xs,r._Ys=n.Ys,r._Zs=n.Zs,r._len=n.len;for(var i=1/0,a=-1/0,o=0;o{"use strict";g8e.exports=function(t,r,n,i){i=i||t.length;for(var a=new Array(i),o=0;o{"use strict";var ORt=Od().gl_mesh3d,qRt=$y().parseColorScale,BRt=Dr().isArrayOrTypedArray,NRt=Jy(),URt=tc().extractOpts,m8e=XA(),ek=function(e,t){for(var r=t.length-1;r>0;r--){var n=Math.min(t[r],t[r-1]),i=Math.max(t[r],t[r-1]);if(i>n&&n-1}function oe(Qt,Vt){return Qt===null?Vt:Qt}function _e(Qt,Vt,_t){T();var It=[Vt],mt=[_t];if(H>=1)It=[Vt],mt=[_t];else if(H>0){var er=j(Vt,_t);It=er.xyzv,mt=er.abc}for(var lr=0;lr-1?_t[Lr]:P(ti,Br,Vr);Ge>-1?Tr[Lr]=Ge:Tr[Lr]=O(ti,Br,Vr,oe(Qt,dt))}V(Tr[0],Tr[1],Tr[2])}}function Ee(Qt,Vt,_t){var It=function(mt,er,lr){_e(Qt,[Vt[mt],Vt[er],Vt[lr]],[_t[mt],_t[er],_t[lr]])};It(0,1,2),It(2,3,0)}function Ce(Qt,Vt,_t){var It=function(mt,er,lr){_e(Qt,[Vt[mt],Vt[er],Vt[lr]],[_t[mt],_t[er],_t[lr]])};It(0,1,2),It(3,0,1),It(2,3,0),It(1,2,3)}function me(Qt,Vt,_t,It){var mt=Qt[3];mt<_t&&(mt=_t),mt>It&&(mt=It);for(var er=(Qt[3]-mt)/(Qt[3]-Vt[3]+1e-9),lr=[],Tr=0;Tr<4;Tr++)lr[Tr]=(1-er)*Qt[Tr]+er*Vt[Tr];return lr}function ie(Qt,Vt,_t){return Qt>=Vt&&Qt<=_t}function Se(Qt){var Vt=.001*(L-S);return Qt>=S-Vt&&Qt<=L+Vt}function Le(Qt){for(var Vt=[],_t=0;_t<4;_t++){var It=Qt[_t];Vt.push([e._x[It],e._y[It],e._z[It],e._value[It]])}return Vt}var Ae=3;function Fe(Qt,Vt,_t,It,mt,er){er||(er=1),_t=[-1,-1,-1];var lr=!1,Tr=[ie(Vt[0][3],It,mt),ie(Vt[1][3],It,mt),ie(Vt[2][3],It,mt)];if(!Tr[0]&&!Tr[1]&&!Tr[2])return!1;var Lr=function(Br,Vr,dt){return Se(Vr[0][3])&&Se(Vr[1][3])&&Se(Vr[2][3])?(_e(Br,Vr,dt),!0):erTr?[k,er]:[er,E];Nt(Vt,Lr[0],Lr[1])}}var ti=[[Math.min(S,E),Math.max(S,E)],[Math.min(k,L),Math.max(k,L)]];["x","y","z"].forEach(function(Br){for(var Vr=[],dt=0;dt0&&(Ie.push(vt.id),Br==="x"?xe.push([vt.distRatio,0,0]):Br==="y"?xe.push([0,vt.distRatio,0]):xe.push([0,0,vt.distRatio]))}else Br==="x"?xt=cr(1,d-1):Br==="y"?xt=cr(1,v-1):xt=cr(1,_-1);Ie.length>0&&(Br==="x"?Vr[Ge]=Jt(Qt,Ie,Je,je,xe,Vr[Ge]):Br==="y"?Vr[Ge]=sr(Qt,Ie,Je,je,xe,Vr[Ge]):Vr[Ge]=wr(Qt,Ie,Je,je,xe,Vr[Ge]),Ge++),xt.length>0&&(Br==="x"?Vr[Ge]=pt(Qt,xt,Je,je,Vr[Ge]):Br==="y"?Vr[Ge]=Zt(Qt,xt,Je,je,Vr[Ge]):Vr[Ge]=st(Qt,xt,Je,je,Vr[Ge]),Ge++)}var ir=e.caps[Br];ir.show&&ir.fill&&(N(ir.fill),Br==="x"?Vr[Ge]=pt(Qt,[0,d-1],Je,je,Vr[Ge]):Br==="y"?Vr[Ge]=Zt(Qt,[0,v-1],Je,je,Vr[Ge]):Vr[Ge]=st(Qt,[0,_-1],Je,je,Vr[Ge]),Ge++)}}),s===0&&z(),e._meshX=x,e._meshY=C,e._meshZ=M,e._meshIntensity=g,e._Xs=c,e._Ys=f,e._Zs=h}return St(),e}function GRt(e,t){var r=e.glplot.gl,n=ORt({gl:r}),i=new y8e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}x8e.exports={findNearestOnAxis:ek,generateIsoMeshes:_8e,createIsosurfaceTrace:GRt}});var w8e=ye((Pgr,b8e)=>{"use strict";b8e.exports={attributes:oF(),supplyDefaults:ZX().supplyDefaults,calc:JX(),colorbar:{min:"cmin",max:"cmax"},plot:uF().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var A8e=ye((Igr,T8e)=>{"use strict";T8e.exports=w8e()});var eZ=ye((Rgr,M8e)=>{"use strict";var HRt=Tu(),yh=oF(),jRt=JE(),S8e=Gl(),QX=Ao().extendFlat,WRt=mc().overrideAll,cF=M8e.exports=WRt(QX({x:yh.x,y:yh.y,z:yh.z,value:yh.value,isomin:yh.isomin,isomax:yh.isomax,surface:yh.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:yh.slices,caps:yh.caps,text:yh.text,hovertext:yh.hovertext,xhoverformat:yh.xhoverformat,yhoverformat:yh.yhoverformat,zhoverformat:yh.zhoverformat,valuehoverformat:yh.valuehoverformat,hovertemplate:yh.hovertemplate,hovertemplatefallback:yh.hovertemplatefallback},HRt("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:yh.colorbar,opacity:yh.opacity,opacityscale:jRt.opacityscale,lightposition:yh.lightposition,lighting:yh.lighting,flatshading:yh.flatshading,contour:yh.contour,hoverinfo:QX({},S8e.hoverinfo),showlegend:QX({},S8e.showlegend,{dflt:!1})}),"calc","nested");cF.x.editType=cF.y.editType=cF.z.editType=cF.value.editType="calc+clearAxisTypes"});var k8e=ye((Dgr,E8e)=>{"use strict";var XRt=Dr(),ZRt=eZ(),YRt=ZX().supplyIsoDefaults,KRt=VX().opacityscaleDefaults;E8e.exports=function(t,r,n,i){function a(o,s){return XRt.coerce(t,r,ZRt,o,s)}YRt(t,r,n,i,a),KRt(t,r,i,a)}});var I8e=ye((Fgr,P8e)=>{"use strict";var JRt=Od().gl_mesh3d,$Rt=$y().parseColorScale,QRt=Dr().isArrayOrTypedArray,eDt=Jy(),tDt=tc().extractOpts,C8e=XA(),tZ=uF().findNearestOnAxis,rDt=uF().generateIsoMeshes;function L8e(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.data=null,this.showContour=!1}var rZ=L8e.prototype;rZ.handlePick=function(e){if(e.object===this.mesh){var t=e.data.index,r=this.data._meshX[t],n=this.data._meshY[t],i=this.data._meshZ[t],a=this.data._Ys.length,o=this.data._Zs.length,s=tZ(r,this.data._Xs).id,l=tZ(n,this.data._Ys).id,u=tZ(i,this.data._Zs).id,c=e.index=u+o*l+o*a*s;e.traceCoordinate=[this.data._meshX[c],this.data._meshY[c],this.data._meshZ[c],this.data._value[c]];var f=this.data.hovertext||this.data.text;return QRt(f)&&f[c]!==void 0?e.textLabel=f[c]:f&&(e.textLabel=f),!0}};rZ.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=rDt(e);function n(l,u,c,f){return u.map(function(h){return l.d2l(h,0,f)*c})}var i=C8e(n(r.xaxis,e._meshX,t.dataScale[0],e.xcalendar),n(r.yaxis,e._meshY,t.dataScale[1],e.ycalendar),n(r.zaxis,e._meshZ,t.dataScale[2],e.zcalendar)),a=C8e(e._meshI,e._meshJ,e._meshK),o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,opacityscale:e.opacityscale,contourEnable:e.contour.show,contourColor:eDt(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading},s=tDt(e);o.vertexIntensity=e._meshIntensity,o.vertexIntensityBounds=[s.min,s.max],o.colormap=$Rt(e),this.mesh.update(o)};rZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function iDt(e,t){var r=e.glplot.gl,n=JRt({gl:r}),i=new L8e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}P8e.exports=iDt});var D8e=ye((zgr,R8e)=>{"use strict";R8e.exports={attributes:eZ(),supplyDefaults:k8e(),calc:JX(),colorbar:{min:"cmin",max:"cmax"},plot:I8e(),moduleType:"trace",name:"volume",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var z8e=ye((Ogr,F8e)=>{"use strict";F8e.exports=D8e()});var B8e=ye((qgr,q8e)=>{"use strict";var nDt=qa(),O8e=Dr(),aDt=Qh(),oDt=jA();q8e.exports=function(t,r,n,i){function a(c,f){return O8e.coerce(t,r,oDt,c,f)}function o(c){var f=c.map(function(h){var d=a(h);return d&&O8e.isArrayOrTypedArray(d)?d:null});return f.every(function(h){return h&&h.length===f[0].length})&&f}var s=o(["x","y","z"]);if(!s){r.visible=!1;return}if(o(["i","j","k"]),r.i&&(!r.j||!r.k)||r.j&&(!r.k||!r.i)||r.k&&(!r.i||!r.j)){r.visible=!1;return}var l=nDt.getComponentMethod("calendars","handleTraceDefaults");l(t,r,["x","y","z"],i),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach(function(c){a(c)});var u=a("contour.show");u&&(a("contour.color"),a("contour.width")),"intensity"in t?(a("intensity"),a("intensitymode"),aDt(t,r,i,a,{prefix:"",cLetter:"c"})):(r.showscale=!1,"facecolor"in t?a("facecolor"):"vertexcolor"in t?a("vertexcolor"):a("color",n)),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var U8e=ye((Bgr,N8e)=>{"use strict";var sDt=gv();N8e.exports=function(t,r){r.intensity&&sDt(t,r,{vals:r.intensity,containerStr:"",cLetter:"c"})}});var W8e=ye((Ngr,j8e)=>{"use strict";var lDt=Od().gl_mesh3d,uDt=Od().delaunay_triangulate,cDt=Od().alpha_shape,fDt=Od().convex_hull,hDt=$y().parseColorScale,dDt=Dr().isArrayOrTypedArray,oZ=Jy(),vDt=tc().extractOpts,V8e=XA();function H8e(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var sZ=H8e.prototype;sZ.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index;e.data._cellCenter?e.traceCoordinate=e.data.dataCoordinate:e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]];var r=this.data.hovertext||this.data.text;return dDt(r)&&r[t]!==void 0?e.textLabel=r[t]:r&&(e.textLabel=r),!0}};function G8e(e){for(var t=[],r=e.length,n=0;n=t-.5)return!1;return!0}sZ.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=e;var n=e.x.length,i=V8e(iZ(r.xaxis,e.x,t.dataScale[0],e.xcalendar),iZ(r.yaxis,e.y,t.dataScale[1],e.ycalendar),iZ(r.zaxis,e.z,t.dataScale[2],e.zcalendar)),a;if(e.i&&e.j&&e.k){if(e.i.length!==e.j.length||e.j.length!==e.k.length||!aZ(e.i,n)||!aZ(e.j,n)||!aZ(e.k,n))return;a=V8e(nZ(e.i),nZ(e.j),nZ(e.k))}else e.alphahull===0?a=fDt(i):e.alphahull>0?a=cDt(e.alphahull,i):a=pDt(e.delaunayaxis,i);var o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,contourEnable:e.contour.show,contourColor:oZ(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading};if(e.intensity){var s=vDt(e);this.color="#fff";var l=e.intensitymode;o[l+"Intensity"]=e.intensity,o[l+"IntensityBounds"]=[s.min,s.max],o.colormap=hDt(e)}else e.vertexcolor?(this.color=e.vertexcolor[0],o.vertexColors=G8e(e.vertexcolor)):e.facecolor?(this.color=e.facecolor[0],o.cellColors=G8e(e.facecolor)):(this.color=e.color,o.meshColor=oZ(e.color));this.mesh.update(o)};sZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function gDt(e,t){var r=e.glplot.gl,n=lDt({gl:r}),i=new H8e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}j8e.exports=gDt});var Z8e=ye((Ugr,X8e)=>{"use strict";X8e.exports={attributes:jA(),supplyDefaults:B8e(),calc:U8e(),colorbar:{min:"cmin",max:"cmax"},plot:W8e(),moduleType:"trace",name:"mesh3d",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var K8e=ye((Vgr,Y8e)=>{"use strict";Y8e.exports=Z8e()});var uZ=ye((Ggr,$8e)=>{"use strict";var mDt=Tu(),ZA=df().axisHoverFormat,{hovertemplateAttrs:yDt,templatefallbackAttrs:_Dt}=Ll(),xDt=jA(),J8e=Gl(),lZ=Ao().extendFlat,fF={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},sizemode:{valType:"enumerated",values:["scaled","absolute","raw"],editType:"calc",dflt:"scaled"},sizeref:{valType:"number",editType:"calc",min:0},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:yDt({editType:"calc"},{keys:["norm"]}),hovertemplatefallback:_Dt({editType:"calc"}),uhoverformat:ZA("u",1),vhoverformat:ZA("v",1),whoverformat:ZA("w",1),xhoverformat:ZA("x"),yhoverformat:ZA("y"),zhoverformat:ZA("z"),showlegend:lZ({},J8e.showlegend,{dflt:!1})};lZ(fF,mDt("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var bDt=["opacity","lightposition","lighting"];bDt.forEach(function(e){fF[e]=xDt[e]});fF.hoverinfo=lZ({},J8e.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"});$8e.exports=fF});var eRe=ye((Hgr,Q8e)=>{"use strict";var wDt=Dr(),TDt=Qh(),ADt=uZ();Q8e.exports=function(t,r,n,i){function a(d,v){return wDt.coerce(t,r,ADt,d,v)}var o=a("u"),s=a("v"),l=a("w"),u=a("x"),c=a("y"),f=a("z");if(!o||!o.length||!s||!s.length||!l||!l.length||!u||!u.length||!c||!c.length||!f||!f.length){r.visible=!1;return}var h=a("sizemode");a("sizeref",h==="raw"?1:.5),a("anchor"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),TDt(t,r,i,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var rRe=ye((jgr,tRe)=>{"use strict";var SDt=gv();tRe.exports=function(t,r){for(var n=r.u,i=r.v,a=r.w,o=Math.min(r.x.length,r.y.length,r.z.length,n.length,i.length,a.length),s=-1/0,l=1/0,u=0;u{"use strict";var MDt=Od().gl_cone3d,EDt=Od().gl_cone3d.createConeMesh,kDt=Dr().simpleMap,CDt=$y().parseColorScale,LDt=tc().extractOpts,PDt=Dr().isArrayOrTypedArray,iRe=XA();function nRe(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var cZ=nRe.prototype;cZ.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index,r=this.data.x[t],n=this.data.y[t],i=this.data.z[t],a=this.data.u[t],o=this.data.v[t],s=this.data.w[t];e.traceCoordinate=[r,n,i,a,o,s,Math.sqrt(a*a+o*o+s*s)];var l=this.data.hovertext||this.data.text;return PDt(l)&&l[t]!==void 0?e.textLabel=l[t]:l&&(e.textLabel=l),!0}};var IDt={xaxis:0,yaxis:1,zaxis:2},RDt={tip:1,tail:0,cm:.25,center:.5},DDt={tip:1,tail:1,cm:.75,center:.5};function aRe(e,t){var r=e.fullSceneLayout,n=e.dataScale,i={};function a(c,f){var h=r[f],d=n[IDt[f]];return kDt(c,function(v){return h.d2l(v)*d})}i.vectors=iRe(a(t.u,"xaxis"),a(t.v,"yaxis"),a(t.w,"zaxis"),t._len),i.positions=iRe(a(t.x,"xaxis"),a(t.y,"yaxis"),a(t.z,"zaxis"),t._len);var o=LDt(t);i.colormap=CDt(t),i.vertexIntensityBounds=[o.min/t._normMax,o.max/t._normMax],i.coneOffset=RDt[t.anchor];var s=t.sizemode;s==="scaled"?i.coneSize=t.sizeref||.5:s==="absolute"?i.coneSize=t.sizeref&&t._normMax?t.sizeref/t._normMax:.5:s==="raw"&&(i.coneSize=t.sizeref),i.coneSizemode=s;var l=MDt(i),u=t.lightposition;return l.lightPosition=[u.x,u.y,u.z],l.ambient=t.lighting.ambient,l.diffuse=t.lighting.diffuse,l.specular=t.lighting.specular,l.roughness=t.lighting.roughness,l.fresnel=t.lighting.fresnel,l.opacity=t.opacity,t._pad=DDt[t.anchor]*l.vectorScale*l.coneScale*t._normMax,l}cZ.update=function(e){this.data=e;var t=aRe(this.scene,e);this.mesh.update(t)};cZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function FDt(e,t){var r=e.glplot.gl,n=aRe(e,t),i=EDt(r,n),a=new nRe(e,t.uid);return a.mesh=i,a.data=t,i._trace=a,e.glplot.add(i),a}oRe.exports=FDt});var uRe=ye((Xgr,lRe)=>{"use strict";lRe.exports={moduleType:"trace",name:"cone",basePlotModule:$_(),categories:["gl3d","showLegend"],attributes:uZ(),supplyDefaults:eRe(),colorbar:{min:"cmin",max:"cmax"},calc:rRe(),plot:sRe(),eventData:function(e,t){return e.norm=t.traceCoordinate[6],e},meta:{}}});var fRe=ye((Zgr,cRe)=>{"use strict";cRe.exports=uRe()});var hZ=ye((Ygr,dRe)=>{"use strict";var zDt=Tu(),YA=df().axisHoverFormat,{hovertemplateAttrs:ODt,templatefallbackAttrs:qDt}=Ll(),BDt=jA(),hRe=Gl(),fZ=Ao().extendFlat,hF={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},starts:{x:{valType:"data_array",editType:"calc"},y:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},editType:"calc"},maxdisplayed:{valType:"integer",min:0,dflt:1e3,editType:"calc"},sizeref:{valType:"number",editType:"calc",min:0,dflt:1},text:{valType:"string",dflt:"",editType:"calc"},hovertext:{valType:"string",dflt:"",editType:"calc"},hovertemplate:ODt({editType:"calc"},{keys:["tubex","tubey","tubez","tubeu","tubev","tubew","norm","divergence"]}),hovertemplatefallback:qDt({editType:"calc"}),uhoverformat:YA("u",1),vhoverformat:YA("v",1),whoverformat:YA("w",1),xhoverformat:YA("x"),yhoverformat:YA("y"),zhoverformat:YA("z"),showlegend:fZ({},hRe.showlegend,{dflt:!1})};fZ(hF,zDt("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var NDt=["opacity","lightposition","lighting"];NDt.forEach(function(e){hF[e]=BDt[e]});hF.hoverinfo=fZ({},hRe.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","divergence","text","name"],dflt:"x+y+z+norm+text+name"});dRe.exports=hF});var pRe=ye((Kgr,vRe)=>{"use strict";var UDt=Dr(),VDt=Qh(),GDt=hZ();vRe.exports=function(t,r,n,i){function a(h,d){return UDt.coerce(t,r,GDt,h,d)}var o=a("u"),s=a("v"),l=a("w"),u=a("x"),c=a("y"),f=a("z");if(!o||!o.length||!s||!s.length||!l||!l.length||!u||!u.length||!c||!c.length||!f||!f.length){r.visible=!1;return}a("starts.x"),a("starts.y"),a("starts.z"),a("maxdisplayed"),a("sizeref"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),VDt(t,r,i,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var TRe=ye((Jgr,wRe)=>{"use strict";var yRe=Od().gl_streamtube3d,HDt=yRe.createTubeMesh,jDt=Dr(),WDt=$y().parseColorScale,XDt=tc().extractOpts,gRe=XA(),_Re={xaxis:0,yaxis:1,zaxis:2};function xRe(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var vZ=xRe.prototype;vZ.handlePick=function(e){var t=this.scene.fullSceneLayout,r=this.scene.dataScale;function n(o,s){var l=t[s],u=r[_Re[s]];return l.l2c(o)/u}if(e.object===this.mesh){var i=e.data.position,a=e.data.velocity;return e.traceCoordinate=[n(i[0],"xaxis"),n(i[1],"yaxis"),n(i[2],"zaxis"),n(a[0],"xaxis"),n(a[1],"yaxis"),n(a[2],"zaxis"),e.data.intensity*this.data._normMax,e.data.divergence],e.textLabel=this.data.hovertext||this.data.text,!0}};function mRe(e){var t=e.length,r;return t>2?r=e.slice(1,t-1):t===2?r=[(e[0]+e[1])/2]:r=e,r}function dZ(e){var t=e.length;return t===1?[.5,.5]:[e[1]-e[0],e[t-1]-e[t-2]]}function bRe(e,t){var r=e.fullSceneLayout,n=e.dataScale,i=t._len,a={};function o(z,O){var V=r[O],G=n[_Re[O]];return jDt.simpleMap(z,function(Z){return V.d2l(Z)*G})}if(a.vectors=gRe(o(t._u,"xaxis"),o(t._v,"yaxis"),o(t._w,"zaxis"),i),!i)return{positions:[],cells:[]};var s=o(t._Xs,"xaxis"),l=o(t._Ys,"yaxis"),u=o(t._Zs,"zaxis");a.meshgrid=[s,l,u],a.gridFill=t._gridFill;var c=t._slen;if(c)a.startingPositions=gRe(o(t._startsX,"xaxis"),o(t._startsY,"yaxis"),o(t._startsZ,"zaxis"));else{for(var f=l[0],h=mRe(s),d=mRe(u),v=new Array(h.length*d.length),_=0,b=0;b{"use strict";ARe.exports={moduleType:"trace",name:"streamtube",basePlotModule:$_(),categories:["gl3d","showLegend"],attributes:hZ(),supplyDefaults:pRe(),colorbar:{min:"cmin",max:"cmax"},calc:sF().calc,plot:TRe(),eventData:function(e,t){return e.tubex=e.x,e.tubey=e.y,e.tubez=e.z,e.tubeu=t.traceCoordinate[3],e.tubev=t.traceCoordinate[4],e.tubew=t.traceCoordinate[5],e.norm=t.traceCoordinate[6],e.divergence=t.traceCoordinate[7],delete e.x,delete e.y,delete e.z,e},meta:{}}});var ERe=ye((Qgr,MRe)=>{"use strict";MRe.exports=SRe()});var H2=ye((tmr,PRe)=>{"use strict";var{hovertemplateAttrs:YDt,texttemplateAttrs:KDt,templatefallbackAttrs:kRe}=Ll(),JDt=kg(),Wm=pf(),$Dt=Gl(),CRe=Tu(),QDt=Pd().dash,G2=Ao().extendFlat,eFt=mc().overrideAll,eg=Wm.marker,LRe=Wm.line,tFt=eg.line,emr=["The library used by the *country names* `locationmode` option is changing in an upcoming version.","Country names in existing plots may not work in the new version."].join(" ");PRe.exports=eFt({lon:{valType:"data_array"},lat:{valType:"data_array"},locations:{valType:"data_array"},locationmode:{valType:"enumerated",values:["ISO-3","USA-states","country names","geojson-id"],dflt:"ISO-3"},geojson:{valType:"any",editType:"calc"},featureidkey:{valType:"string",editType:"calc",dflt:"id"},mode:G2({},Wm.mode,{dflt:"markers"}),text:G2({},Wm.text,{}),texttemplate:KDt({editType:"plot"},{keys:["lat","lon","location","text"]}),texttemplatefallback:kRe({editType:"plot"}),hovertext:G2({},Wm.hovertext,{}),textfont:Wm.textfont,textposition:Wm.textposition,line:{color:LRe.color,width:LRe.width,dash:QDt},connectgaps:Wm.connectgaps,marker:G2({symbol:eg.symbol,opacity:eg.opacity,angle:eg.angle,angleref:G2({},eg.angleref,{values:["previous","up","north"]}),standoff:eg.standoff,size:eg.size,sizeref:eg.sizeref,sizemin:eg.sizemin,sizemode:eg.sizemode,colorbar:eg.colorbar,line:G2({width:tFt.width},CRe("marker.line")),gradient:eg.gradient},CRe("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:JDt(),selected:Wm.selected,unselected:Wm.unselected,hoverinfo:G2({},$Dt.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:YDt(),hovertemplatefallback:kRe()},"calc","nested")});var RRe=ye((rmr,IRe)=>{"use strict";var dF=Dr(),pZ=Ru(),rFt=$p(),iFt=R0(),nFt=D0(),aFt=Ig(),oFt=H2(),sFt=["The library used by the *country names* `locationmode` option is changing in the next major version.","Some country names in existing plots may not work in the new version.","To ensure consistent behavior, consider setting `locationmode` to *ISO-3*."].join(" ");IRe.exports=function(t,r,n,i){function a(d,v){return dF.coerce(t,r,oFt,d,v)}var o=a("locations"),s;if(o&&o.length){var l=a("geojson"),u;(typeof l=="string"&&l!==""||dF.isPlainObject(l))&&(u="geojson-id");var c=a("locationmode",u);c==="country names"&&dF.warn(sFt),c==="geojson-id"&&a("featureidkey"),s=o.length}else{var f=a("lon")||[],h=a("lat")||[];s=Math.min(f.length,h.length)}if(!s){r.visible=!1;return}r._length=s,a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),pZ.hasMarkers(r)&&rFt(t,r,n,i,a,{gradient:!0}),pZ.hasLines(r)&&(iFt(t,r,n,i,a),a("connectgaps")),pZ.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),nFt(t,r,i,a)),a("fill"),r.fill!=="none"&&aFt(t,r,n,a),dF.coerceSelectionMarkerOpacity(r,a)}});var zRe=ye((imr,FRe)=>{"use strict";var DRe=ho();FRe.exports=function(t,r,n){var i={},a=n[r.geo]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=DRe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=DRe.tickText(o,o.c2l(s[1]),!0).text,i}});var vF=ye((nmr,NRe)=>{"use strict";var gZ=Eo(),ORe=fs().BADNUM,lFt=F0(),uFt=km(),cFt=z0(),fFt=Dr().isArrayOrTypedArray,qRe=Dr()._;function BRe(e){return e&&typeof e=="string"}NRe.exports=function(t,r){var n=fFt(r.locations),i=n?r.locations.length:r._length,a=new Array(i),o;r.geojson?o=function(h){return BRe(h)||gZ(h)}:o=BRe;for(var s=0;s{"use strict";Mv.projNames={airy:"airy",aitoff:"aitoff","albers usa":"albersUsa",albers:"albers",august:"august","azimuthal equal area":"azimuthalEqualArea","azimuthal equidistant":"azimuthalEquidistant",baker:"baker",bertin1953:"bertin1953",boggs:"boggs",bonne:"bonne",bottomley:"bottomley",bromley:"bromley",collignon:"collignon","conic conformal":"conicConformal","conic equal area":"conicEqualArea","conic equidistant":"conicEquidistant",craig:"craig",craster:"craster","cylindrical equal area":"cylindricalEqualArea","cylindrical stereographic":"cylindricalStereographic",eckert1:"eckert1",eckert2:"eckert2",eckert3:"eckert3",eckert4:"eckert4",eckert5:"eckert5",eckert6:"eckert6",eisenlohr:"eisenlohr","equal earth":"equalEarth",equirectangular:"equirectangular",fahey:"fahey","foucaut sinusoidal":"foucautSinusoidal",foucaut:"foucaut",ginzburg4:"ginzburg4",ginzburg5:"ginzburg5",ginzburg6:"ginzburg6",ginzburg8:"ginzburg8",ginzburg9:"ginzburg9",gnomonic:"gnomonic","gringorten quincuncial":"gringortenQuincuncial",gringorten:"gringorten",guyou:"guyou",hammer:"hammer",hill:"hill",homolosine:"homolosine",hufnagel:"hufnagel",hyperelliptical:"hyperelliptical",kavrayskiy7:"kavrayskiy7",lagrange:"lagrange",larrivee:"larrivee",laskowski:"laskowski",loximuthal:"loximuthal",mercator:"mercator",miller:"miller",mollweide:"mollweide","mt flat polar parabolic":"mtFlatPolarParabolic","mt flat polar quartic":"mtFlatPolarQuartic","mt flat polar sinusoidal":"mtFlatPolarSinusoidal","natural earth":"naturalEarth","natural earth1":"naturalEarth1","natural earth2":"naturalEarth2","nell hammer":"nellHammer",nicolosi:"nicolosi",orthographic:"orthographic",patterson:"patterson","peirce quincuncial":"peirceQuincuncial",polyconic:"polyconic","rectangular polyconic":"rectangularPolyconic",robinson:"robinson",satellite:"satellite","sinu mollweide":"sinuMollweide",sinusoidal:"sinusoidal",stereographic:"stereographic",times:"times","transverse mercator":"transverseMercator","van der grinten":"vanDerGrinten","van der grinten2":"vanDerGrinten2","van der grinten3":"vanDerGrinten3","van der grinten4":"vanDerGrinten4",wagner4:"wagner4",wagner6:"wagner6",wiechel:"wiechel","winkel tripel":"winkel3",winkel3:"winkel3"};Mv.axesNames=["lonaxis","lataxis"];Mv.lonaxisSpan={orthographic:180,"azimuthal equal area":360,"azimuthal equidistant":360,"conic conformal":180,gnomonic:160,stereographic:180,"transverse mercator":180,"*":360};Mv.lataxisSpan={"conic conformal":150,stereographic:179.5,"*":180};Mv.scopeDefaults={world:{lonaxisRange:[-180,180],lataxisRange:[-90,90],projType:"equirectangular",projRotate:[0,0,0]},usa:{lonaxisRange:[-180,-50],lataxisRange:[15,80],projType:"albers usa"},europe:{lonaxisRange:[-30,60],lataxisRange:[30,85],projType:"conic conformal",projRotate:[15,0,0],projParallels:[0,60]},asia:{lonaxisRange:[22,160],lataxisRange:[-15,55],projType:"mercator",projRotate:[0,0,0]},africa:{lonaxisRange:[-30,60],lataxisRange:[-40,40],projType:"mercator",projRotate:[0,0,0]},"north america":{lonaxisRange:[-180,-45],lataxisRange:[5,85],projType:"conic conformal",projRotate:[-100,0,0],projParallels:[29.5,45.5]},"south america":{lonaxisRange:[-100,-30],lataxisRange:[-60,15],projType:"mercator",projRotate:[0,0,0]},antarctica:{lonaxisRange:[-180,180],lataxisRange:[-90,-60],projType:"equirectangular",projRotate:[0,0,0]},oceania:{lonaxisRange:[-180,180],lataxisRange:[-50,25],projType:"equirectangular",projRotate:[0,0,0]}};Mv.clipPad=.001;Mv.precision=.1;Mv.landColor="#F0DC82";Mv.waterColor="#3399FF";Mv.locationmodeToLayer={"ISO-3":"countries","USA-states":"subunits","country names":"countries"};Mv.sphereSVG={type:"Sphere"};Mv.fillLayers={ocean:1,land:1,lakes:1};Mv.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1};Mv.layers=["bg","ocean","land","lakes","subunits","countries","coastlines","rivers","lataxis","lonaxis","frame","backplot","frontplot"];Mv.layersForChoropleth=["bg","ocean","land","subunits","countries","coastlines","lataxis","lonaxis","frame","backplot","rivers","lakes","frontplot"];Mv.layerNameToAdjective={ocean:"ocean",land:"land",lakes:"lake",subunits:"subunit",countries:"country",coastlines:"coastline",rivers:"river",frame:"frame"}});var mZ=ye((pF,URe)=>{(function(e,t){typeof pF=="object"&&typeof URe!="undefined"?t(pF):(e=e||self,t(e.topojson=e.topojson||{}))})(pF,function(e){"use strict";function t(E){return E}function r(E){if(E==null)return t;var S,L,x=E.scale[0],C=E.scale[1],M=E.translate[0],g=E.translate[1];return function(P,T){T||(S=L=0);var z=2,O=P.length,V=new Array(O);for(V[0]=(S+=P[0])*x+M,V[1]=(L+=P[1])*C+g;zM&&(M=z[0]),z[1]g&&(g=z[1])}function T(z){switch(z.type){case"GeometryCollection":z.geometries.forEach(T);break;case"Point":P(z.coordinates);break;case"MultiPoint":z.coordinates.forEach(P);break}}E.arcs.forEach(function(z){for(var O=-1,V=z.length,G;++OM&&(M=G[0]),G[1]g&&(g=G[1])});for(L in E.objects)T(E.objects[L]);return[x,C,M,g]}function i(E,S){for(var L,x=E.length,C=x-S;C<--x;)L=E[C],E[C++]=E[x],E[x]=L}function a(E,S){return typeof S=="string"&&(S=E.objects[S]),S.type==="GeometryCollection"?{type:"FeatureCollection",features:S.geometries.map(function(L){return o(E,L)})}:o(E,S)}function o(E,S){var L=S.id,x=S.bbox,C=S.properties==null?{}:S.properties,M=s(E,S);return L==null&&x==null?{type:"Feature",properties:C,geometry:M}:x==null?{type:"Feature",id:L,properties:C,geometry:M}:{type:"Feature",id:L,bbox:x,properties:C,geometry:M}}function s(E,S){var L=r(E.transform),x=E.arcs;function C(O,V){V.length&&V.pop();for(var G=x[O<0?~O:O],Z=0,H=G.length;Z1)x=f(E,S,L);else for(C=0,x=new Array(M=E.arcs.length);C1)for(var V=1,G=P(z[0]),Z,H;VG&&(H=z[0],z[0]=z[V],z[V]=H,G=Z);return z}).filter(function(T){return T.length>0})}}function _(E,S){for(var L=0,x=E.length;L>>1;E[C]=2))throw new Error("n must be \u22652");T=E.bbox||n(E);var L=T[0],x=T[1],C=T[2],M=T[3],g;S={scale:[C-L?(C-L)/(g-1):1,M-x?(M-x)/(g-1):1],translate:[L,x]}}else T=E.bbox;var P=p(S),T,z,O=E.objects,V={};function G(N){return P(N)}function Z(N){var j;switch(N.type){case"GeometryCollection":j={type:"GeometryCollection",geometries:N.geometries.map(Z)};break;case"Point":j={type:"Point",coordinates:G(N.coordinates)};break;case"MultiPoint":j={type:"MultiPoint",coordinates:N.coordinates.map(G)};break;default:return N}return N.id!=null&&(j.id=N.id),N.bbox!=null&&(j.bbox=N.bbox),N.properties!=null&&(j.properties=N.properties),j}function H(N){var j=0,re=1,oe=N.length,_e,Ee=new Array(oe);for(Ee[0]=P(N[0],0);++j{"use strict";var yZ=VRe.exports={},hFt=tk().locationmodeToLayer,dFt=mZ().feature;yZ.getTopojsonName=function(e){return[e.scope.replace(/ /g,"-"),"_",e.resolution.toString(),"m"].join("")};yZ.getTopojsonPath=function(e,t){return e+=e.endsWith("/")?"":"/",`${e}${t}.json`};yZ.getTopojsonFeatures=function(e,t){var r=hFt[e.locationmode],n=t.objects[r];return dFt(t,n).features}});var tx=ye(rk=>{"use strict";var vFt=fs().BADNUM;rk.calcTraceToLineCoords=function(e){for(var t=e[0].trace,r=t.connectgaps,n=[],i=[],a=0;a0&&(n.push(i),i=[])}return i.length>0&&n.push(i),n};rk.makeLine=function(e){return e.length===1?{type:"LineString",coordinates:e[0]}:{type:"MultiLineString",coordinates:e}};rk.makePolygon=function(e){if(e.length===1)return{type:"Polygon",coordinates:e};for(var t=new Array(e.length),r=0;r{GRe.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xE7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xE9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xE9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xE3)o.?tom(e|\xE9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}});var _F=ye(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});var Op=63710088e-1,xZ={centimeters:Op*100,centimetres:Op*100,degrees:360/(2*Math.PI),feet:Op*3.28084,inches:Op*39.37,kilometers:Op/1e3,kilometres:Op/1e3,meters:Op,metres:Op,miles:Op/1609.344,millimeters:Op*1e3,millimetres:Op*1e3,nauticalmiles:Op/1852,radians:1,yards:Op*1.0936},_Z={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,nauticalmiles:29155334959812285e-23,millimeters:1e6,millimetres:1e6,yards:1.195990046};function rx(e,t,r={}){let n={type:"Feature"};return(r.id===0||r.id)&&(n.id=r.id),r.bbox&&(n.bbox=r.bbox),n.properties=t||{},n.geometry=e,n}function pFt(e,t,r={}){switch(e){case"Point":return bZ(t).geometry;case"LineString":return TZ(t).geometry;case"Polygon":return wZ(t).geometry;case"MultiPoint":return WRe(t).geometry;case"MultiLineString":return jRe(t).geometry;case"MultiPolygon":return XRe(t).geometry;default:throw new Error(e+" is invalid")}}function bZ(e,t,r={}){if(!e)throw new Error("coordinates is required");if(!Array.isArray(e))throw new Error("coordinates must be an Array");if(e.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!mF(e[0])||!mF(e[1]))throw new Error("coordinates must contain numbers");return rx({type:"Point",coordinates:e},t,r)}function gFt(e,t,r={}){return yF(e.map(n=>bZ(n,t)),r)}function wZ(e,t,r={}){for(let i of e){if(i.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(i[i.length-1].length!==i[0].length)throw new Error("First and last Position are not equivalent.");for(let a=0;awZ(n,t)),r)}function TZ(e,t,r={}){if(e.length<2)throw new Error("coordinates must be an array of two or more positions");return rx({type:"LineString",coordinates:e},t,r)}function yFt(e,t,r={}){return yF(e.map(n=>TZ(n,t)),r)}function yF(e,t={}){let r={type:"FeatureCollection"};return t.id&&(r.id=t.id),t.bbox&&(r.bbox=t.bbox),r.features=e,r}function jRe(e,t,r={}){return rx({type:"MultiLineString",coordinates:e},t,r)}function WRe(e,t,r={}){return rx({type:"MultiPoint",coordinates:e},t,r)}function XRe(e,t,r={}){return rx({type:"MultiPolygon",coordinates:e},t,r)}function _Ft(e,t,r={}){return rx({type:"GeometryCollection",geometries:e},t,r)}function xFt(e,t=0){if(t&&!(t>=0))throw new Error("precision must be a positive number");let r=Math.pow(10,t||0);return Math.round(e*r)/r}function ZRe(e,t="kilometers"){let r=xZ[t];if(!r)throw new Error(t+" units is invalid");return e*r}function AZ(e,t="kilometers"){let r=xZ[t];if(!r)throw new Error(t+" units is invalid");return e/r}function bFt(e,t){return YRe(AZ(e,t))}function wFt(e){let t=e%360;return t<0&&(t+=360),t}function TFt(e){return e=e%360,e>180?e-360:e<-180?e+360:e}function YRe(e){return e%(2*Math.PI)*180/Math.PI}function AFt(e){return e%360*Math.PI/180}function SFt(e,t="kilometers",r="kilometers"){if(!(e>=0))throw new Error("length must be a positive number");return ZRe(AZ(e,t),r)}function MFt(e,t="meters",r="kilometers"){if(!(e>=0))throw new Error("area must be a positive number");let n=_Z[t];if(!n)throw new Error("invalid original units");let i=_Z[r];if(!i)throw new Error("invalid final units");return e/n*i}function mF(e){return!isNaN(e)&&e!==null&&!Array.isArray(e)}function EFt(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function kFt(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(e.length!==4&&e.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach(t=>{if(!mF(t))throw new Error("bbox must only contain numbers")})}function CFt(e){if(!e)throw new Error("id is required");if(["string","number"].indexOf(typeof e)===-1)throw new Error("id must be a number or a string")}ic.areaFactors=_Z;ic.azimuthToBearing=TFt;ic.bearingToAzimuth=wFt;ic.convertArea=MFt;ic.convertLength=SFt;ic.degreesToRadians=AFt;ic.earthRadius=Op;ic.factors=xZ;ic.feature=rx;ic.featureCollection=yF;ic.geometry=pFt;ic.geometryCollection=_Ft;ic.isNumber=mF;ic.isObject=EFt;ic.lengthToDegrees=bFt;ic.lengthToRadians=AZ;ic.lineString=TZ;ic.lineStrings=yFt;ic.multiLineString=jRe;ic.multiPoint=WRe;ic.multiPolygon=XRe;ic.point=bZ;ic.points=gFt;ic.polygon=wZ;ic.polygons=mFt;ic.radiansToDegrees=YRe;ic.radiansToLength=ZRe;ic.round=xFt;ic.validateBBox=kFt;ic.validateId=CFt});var bF=ye(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var Wv=_F();function ik(e,t,r){if(e!==null)for(var n,i,a,o,s,l,u,c=0,f=0,h,d=e.type,v=d==="FeatureCollection",_=d==="Feature",b=v?e.features.length:1,p=0;pl||v>u||_>c){s=f,l=n,u=v,c=_,a=0;return}var b=Wv.lineString.call(void 0,[s,f],r.properties);if(t(b,n,i,_,a)===!1)return!1;a++,s=f})===!1)return!1}}})}function zFt(e,t,r){var n=r,i=!1;return $Re(e,function(a,o,s,l,u){i===!1&&r===void 0?n=a:n=t(n,a,o,s,l,u),i=!0}),n}function QRe(e,t){if(!e)throw new Error("geojson is required");xF(e,function(r,n,i){if(r.geometry!==null){var a=r.geometry.type,o=r.geometry.coordinates;switch(a){case"LineString":if(t(r,n,i,0,0)===!1)return!1;break;case"Polygon":for(var s=0;s{"use strict";Object.defineProperty(wF,"__esModule",{value:!0});var eDe=_F(),NFt=bF();function iDe(e){return NFt.geomReduce.call(void 0,e,(t,r)=>t+UFt(r),0)}function UFt(e){let t=0,r;switch(e.type){case"Polygon":return tDe(e.coordinates);case"MultiPolygon":for(r=0;r0){t+=Math.abs(rDe(e[0]));for(let r=1;r=t?(n+2)%t:n+2],s=i[0]*MZ,l=a[1]*MZ,u=o[0]*MZ;r+=(u-s)*Math.sin(l),n++}return r*VFt}var GFt=iDe;wF.area=iDe;wF.default=GFt});var oDe=ye(TF=>{"use strict";Object.defineProperty(TF,"__esModule",{value:!0});var HFt=_F(),jFt=bF();function aDe(e,t={}){let r=0,n=0,i=0;return jFt.coordEach.call(void 0,e,function(a){r+=a[0],n+=a[1],i++},!0),HFt.point.call(void 0,[r/i,n/i],t.properties)}var WFt=aDe;TF.centroid=aDe;TF.default=WFt});var lDe=ye(AF=>{"use strict";Object.defineProperty(AF,"__esModule",{value:!0});var XFt=bF();function sDe(e,t={}){if(e.bbox!=null&&t.recompute!==!0)return e.bbox;let r=[1/0,1/0,-1/0,-1/0];return XFt.coordEach.call(void 0,e,n=>{r[0]>n[0]&&(r[0]=n[0]),r[1]>n[1]&&(r[1]=n[1]),r[2]{"use strict";var YFt=Oa(),fDe=HRe(),{area:KFt}=nDe(),{centroid:JFt}=oDe(),{bbox:$Ft}=lDe(),uDe=GS(),KA=G1(),QFt=my(),ezt=LS(),SF=EM(),cDe=Object.keys(fDe),tzt={"ISO-3":uDe,"USA-states":uDe,"country names":rzt};function rzt(e){for(var t=0;t0&&c[f+1][0]<0)return f;return null}switch(n==="RUS"||n==="FJI"?a=function(c){var f;if(u(c)===null)f=c;else for(f=new Array(c.length),l=0;lf?h[d++]=[c[l][0]+360,c[l][1]]:l===f?(h[d++]=c[l],h[d++]=[c[l][0],-90]):h[d++]=c[l];var v=SF.tester(h);v.pts.pop(),i.push(v)}:a=function(c){i.push(SF.tester(c))},t.type){case"MultiPolygon":for(o=0;o0?v.properties.ct=ozt(v):v.properties.ct=[NaN,NaN],h.fIn=c,h.fOut=v,i.push(v)}else KA.log(["Location",h.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete n[f]}switch(r.type){case"FeatureCollection":var l=r.features;for(a=0;ai&&(i=s,r=o)}else r=t;return JFt(r).geometry.coordinates}function szt(e){var t=window.PlotlyGeoAssets||{},r=[];function n(l){return new Promise(function(u,c){YFt.json(l,function(f,h){if(f){delete t[l];var d=f.status===404?'GeoJSON at URL "'+l+'" does not exist.':"Unexpected error while fetching from "+l;return c(new Error(d))}return t[l]=h,u(h)})})}function i(l){return new Promise(function(u,c){var f=0,h=setInterval(function(){if(t[l]&&t[l]!=="pending")return clearInterval(h),u(t[l]);if(f>100)return clearInterval(h),c("Unexpected error while fetching from "+l);f++},50)})}for(var a=0;a{"use strict";var uzt=Oa(),czt=So(),vDe=ka(),pDe=op(),fzt=pDe.stylePoints,hzt=pDe.styleText;gDe.exports=function(t,r){r&&dzt(t,r)};function dzt(e,t){var r=t[0].trace,n=t[0].node3;n.style("opacity",t[0].trace.opacity),fzt(n,r,e),hzt(n,r,e),n.selectAll("path.js-line").style("fill","none").each(function(i){var a=uzt.select(this),o=i.trace,s=o.line||{};a.call(vDe.stroke,s.color).call(czt.dashLine,s.dash||"",s.width||0),o.fill!=="none"&&a.call(vDe.fill,o.fillcolor)})}});var PZ=ye((gmr,_De)=>{"use strict";var mDe=Oa(),EF=Dr(),vzt=gF().getTopojsonFeatures,kZ=tx(),MF=ix(),yDe=Tg().findExtremes,LZ=fs().BADNUM,pzt=O0().calcMarkerSize,CZ=Ru(),gzt=EZ();function mzt(e,t,r){var n=t.layers.frontplot.select(".scatterlayer"),i=EF.makeTraceGroups(n,r,"trace scattergeo");function a(o,s){o.lonlat[0]===LZ&&mDe.select(s).remove()}i.selectAll("*").remove(),i.each(function(o){var s=mDe.select(this),l=o[0].trace;if(CZ.hasLines(l)||l.fill!=="none"){var u=kZ.calcTraceToLineCoords(o),c=l.fill!=="none"?kZ.makePolygon(u):kZ.makeLine(u);s.selectAll("path.js-line").data([{geojson:c,trace:l}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}CZ.hasMarkers(l)&&s.selectAll("path.point").data(EF.identity).enter().append("path").classed("point",!0).each(function(f){a(f,this)}),CZ.hasText(l)&&s.selectAll("g").data(EF.identity).enter().append("g").append("text").each(function(f){a(f,this)}),gzt(e,o)})}function yzt(e,t){var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r._length,o,s;if(EF.isArrayOrTypedArray(r.locations)){var l=r.locationmode,u=l==="geojson-id"?MF.extractTraceFeature(e):vzt(r,i.topojson);for(o=0;o{"use strict";var _zt=vf(),xzt=fs().BADNUM,bzt=uT(),wzt=Dr().fillText,Tzt=H2();xDe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.xa,s=t.ya,l=t.subplot,u=l.projection.isLonLatOverEdges,c=l.project;function f(k){var E=k.lonlat;if(E[0]===xzt||u(E))return 1/0;var S=c(E),L=c([r,n]),x=Math.abs(S[0]-L[0]),C=Math.abs(S[1]-L[1]),M=Math.max(3,k.mrc||0);return Math.max(Math.sqrt(x*x+C*C)-M,1-3/M)}if(_zt.getClosest(i,f,t),t.index!==!1){var h=i[t.index],d=h.lonlat,v=[o.c2p(d),s.c2p(d)],_=h.mrc||1;t.x0=v[0]-_,t.x1=v[0]+_,t.y0=v[1]-_,t.y1=v[1]+_,t.loc=h.loc,t.lon=d[0],t.lat=d[1];var b={};b[a.geo]={_subplot:l};var p=a._module.formatLabels(h,a,b);return t.lonLabel=p.lonLabel,t.latLabel=p.latLabel,t.color=bzt(a,h),t.extraText=Azt(a,h,t,i[0].t.labels),t.hovertemplate=a.hovertemplate,[t]}};function Azt(e,t,r,n){if(e.hovertemplate)return;var i=t.hi||e.hoverinfo,a=i==="all"?Tzt.hoverinfo.flags:i.split("+"),o=a.indexOf("location")!==-1&&Array.isArray(e.locations),s=a.indexOf("lon")!==-1,l=a.indexOf("lat")!==-1,u=a.indexOf("text")!==-1,c=[];function f(h){return h+"\xB0"}return o?c.push(t.loc):s&&l?c.push("("+f(r.latLabel)+", "+f(r.lonLabel)+")"):s?c.push(n.lon+f(r.lonLabel)):l&&c.push(n.lat+f(r.latLabel)),u&&wzt(t,e,c),c.join("
")}});var TDe=ye((ymr,wDe)=>{"use strict";wDe.exports=function(t,r,n,i,a){t.lon=r.lon,t.lat=r.lat,t.location=r.loc?r.loc:null;var o=i[a];return o.fIn&&o.fIn.properties&&(t.properties=o.fIn.properties),t}});var MDe=ye((_mr,SDe)=>{"use strict";var ADe=Ru(),Szt=fs().BADNUM;SDe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l,u,c,f,h,d=!ADe.hasMarkers(s)&&!ADe.hasText(s);if(d)return[];if(r===!1)for(h=0;h{(function(e,t){t(typeof kF=="object"&&typeof EDe!="undefined"?kF:e.d3=e.d3||{})})(kF,function(e){"use strict";function t(Le,Ae){return LeAe?1:Le>=Ae?0:NaN}function r(Le){return Le.length===1&&(Le=n(Le)),{left:function(Ae,Fe,Pe,ge){for(Pe==null&&(Pe=0),ge==null&&(ge=Ae.length);Pe>>1;Le(Ae[Re],Fe)<0?Pe=Re+1:ge=Re}return Pe},right:function(Ae,Fe,Pe,ge){for(Pe==null&&(Pe=0),ge==null&&(ge=Ae.length);Pe>>1;Le(Ae[Re],Fe)>0?ge=Re:Pe=Re+1}return Pe}}}function n(Le){return function(Ae,Fe){return t(Le(Ae),Fe)}}var i=r(t),a=i.right,o=i.left;function s(Le,Ae){Ae==null&&(Ae=l);for(var Fe=0,Pe=Le.length-1,ge=Le[0],Re=new Array(Pe<0?0:Pe);FeLe?1:Ae>=Le?0:NaN}function f(Le){return Le===null?NaN:+Le}function h(Le,Ae){var Fe=Le.length,Pe=0,ge=-1,Re=0,ce,Ze,ut=0;if(Ae==null)for(;++ge1)return ut/(Pe-1)}function d(Le,Ae){var Fe=h(Le,Ae);return Fe&&Math.sqrt(Fe)}function v(Le,Ae){var Fe=Le.length,Pe=-1,ge,Re,ce;if(Ae==null){for(;++Pe=ge)for(Re=ce=ge;++Pege&&(Re=ge),ce=ge)for(Re=ce=ge;++Pege&&(Re=ge),ce0)return[Le];if((Pe=Ae0)for(Le=Math.ceil(Le/Ze),Ae=Math.floor(Ae/Ze),ce=new Array(Re=Math.ceil(Ae-Le+1));++ge=0?(Re>=L?10:Re>=x?5:Re>=C?2:1)*Math.pow(10,ge):-Math.pow(10,-ge)/(Re>=L?10:Re>=x?5:Re>=C?2:1)}function P(Le,Ae,Fe){var Pe=Math.abs(Ae-Le)/Math.max(0,Fe),ge=Math.pow(10,Math.floor(Math.log(Pe)/Math.LN10)),Re=Pe/ge;return Re>=L?ge*=10:Re>=x?ge*=5:Re>=C&&(ge*=2),Aest;)lt.pop(),--Gt;var Nt=new Array(Gt+1),Jt;for(Re=0;Re<=Gt;++Re)Jt=Nt[Re]=[],Jt.x0=Re>0?lt[Re-1]:Zt,Jt.x1=Re=1)return+Fe(Le[Pe-1],Pe-1,Le);var Pe,ge=(Pe-1)*Ae,Re=Math.floor(ge),ce=+Fe(Le[Re],Re,Le),Ze=+Fe(Le[Re+1],Re+1,Le);return ce+(Ze-ce)*(ge-Re)}}function V(Le,Ae,Fe){return Le=p.call(Le,f).sort(t),Math.ceil((Fe-Ae)/(2*(O(Le,.75)-O(Le,.25))*Math.pow(Le.length,-1/3)))}function G(Le,Ae,Fe){return Math.ceil((Fe-Ae)/(3.5*d(Le)*Math.pow(Le.length,-1/3)))}function Z(Le,Ae){var Fe=Le.length,Pe=-1,ge,Re;if(Ae==null){for(;++Pe=ge)for(Re=ge;++PeRe&&(Re=ge)}else for(;++Pe=ge)for(Re=ge;++PeRe&&(Re=ge);return Re}function H(Le,Ae){var Fe=Le.length,Pe=Fe,ge=-1,Re,ce=0;if(Ae==null)for(;++ge=0;)for(ce=Le[Ae],Fe=ce.length;--Fe>=0;)Re[--ge]=ce[Fe];return Re}function re(Le,Ae){var Fe=Le.length,Pe=-1,ge,Re;if(Ae==null){for(;++Pe=ge)for(Re=ge;++Pege&&(Re=ge)}else for(;++Pe=ge)for(Re=ge;++Pege&&(Re=ge);return Re}function oe(Le,Ae){for(var Fe=Ae.length,Pe=new Array(Fe);Fe--;)Pe[Fe]=Le[Ae[Fe]];return Pe}function _e(Le,Ae){if(Fe=Le.length){var Fe,Pe=0,ge=0,Re,ce=Le[ge];for(Ae==null&&(Ae=t);++Pe{(function(e,t){typeof CF=="object"&&typeof kDe!="undefined"?t(CF,nk()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(CF,function(e,t){"use strict";function r(){return new n}function n(){this.reset()}n.prototype={constructor:n,reset:function(){this.s=this.t=0},add:function(At){a(i,At,this.t),a(this,i.s,this.s),this.s?this.t+=i.t:this.s=i.t},valueOf:function(){return this.s}};var i=new n;function a(At,Wt,Cr){var Ar=At.s=Wt+Cr,Kr=Ar-Wt,ki=Ar-Kr;At.t=Wt-ki+(Cr-Kr)}var o=1e-6,s=1e-12,l=Math.PI,u=l/2,c=l/4,f=l*2,h=180/l,d=l/180,v=Math.abs,_=Math.atan,b=Math.atan2,p=Math.cos,k=Math.ceil,E=Math.exp,S=Math.log,L=Math.pow,x=Math.sin,C=Math.sign||function(At){return At>0?1:At<0?-1:0},M=Math.sqrt,g=Math.tan;function P(At){return At>1?0:At<-1?l:Math.acos(At)}function T(At){return At>1?u:At<-1?-u:Math.asin(At)}function z(At){return(At=x(At/2))*At}function O(){}function V(At,Wt){At&&Z.hasOwnProperty(At.type)&&Z[At.type](At,Wt)}var G={Feature:function(At,Wt){V(At.geometry,Wt)},FeatureCollection:function(At,Wt){for(var Cr=At.features,Ar=-1,Kr=Cr.length;++Ar=0?1:-1,Kr=Ar*Cr,ki=p(Wt),Xi=x(Wt),dn=ie*Xi,wn=me*ki+dn*p(Kr),Nn=dn*Ar*x(Kr);re.add(b(Nn,wn)),Ce=At,me=ki,ie=Xi}function ge(At){return oe.reset(),j(At,Se),oe*2}function Re(At){return[b(At[1],At[0]),T(At[2])]}function ce(At){var Wt=At[0],Cr=At[1],Ar=p(Cr);return[Ar*p(Wt),Ar*x(Wt),x(Cr)]}function Ze(At,Wt){return At[0]*Wt[0]+At[1]*Wt[1]+At[2]*Wt[2]}function ut(At,Wt){return[At[1]*Wt[2]-At[2]*Wt[1],At[2]*Wt[0]-At[0]*Wt[2],At[0]*Wt[1]-At[1]*Wt[0]]}function pt(At,Wt){At[0]+=Wt[0],At[1]+=Wt[1],At[2]+=Wt[2]}function Zt(At,Wt){return[At[0]*Wt,At[1]*Wt,At[2]*Wt]}function st(At){var Wt=M(At[0]*At[0]+At[1]*At[1]+At[2]*At[2]);At[0]/=Wt,At[1]/=Wt,At[2]/=Wt}var lt,Gt,Nt,Jt,sr,wr,cr,$e,St=r(),Qt,Vt,_t={point:It,lineStart:er,lineEnd:lr,polygonStart:function(){_t.point=Tr,_t.lineStart=Lr,_t.lineEnd=ti,St.reset(),Se.polygonStart()},polygonEnd:function(){Se.polygonEnd(),_t.point=It,_t.lineStart=er,_t.lineEnd=lr,re<0?(lt=-(Nt=180),Gt=-(Jt=90)):St>o?Jt=90:St<-o&&(Gt=-90),Vt[0]=lt,Vt[1]=Nt},sphere:function(){lt=-(Nt=180),Gt=-(Jt=90)}};function It(At,Wt){Qt.push(Vt=[lt=At,Nt=At]),WtJt&&(Jt=Wt)}function mt(At,Wt){var Cr=ce([At*d,Wt*d]);if($e){var Ar=ut($e,Cr),Kr=[Ar[1],-Ar[0],0],ki=ut(Kr,Ar);st(ki),ki=Re(ki);var Xi=At-sr,dn=Xi>0?1:-1,wn=ki[0]*h*dn,Nn,Yi=v(Xi)>180;Yi^(dn*srJt&&(Jt=Nn)):(wn=(wn+360)%360-180,Yi^(dn*srJt&&(Jt=Wt))),Yi?AtBr(lt,Nt)&&(Nt=At):Br(At,Nt)>Br(lt,Nt)&&(lt=At):Nt>=lt?(AtNt&&(Nt=At)):At>sr?Br(lt,At)>Br(lt,Nt)&&(Nt=At):Br(At,Nt)>Br(lt,Nt)&&(lt=At)}else Qt.push(Vt=[lt=At,Nt=At]);WtJt&&(Jt=Wt),$e=Cr,sr=At}function er(){_t.point=mt}function lr(){Vt[0]=lt,Vt[1]=Nt,_t.point=It,$e=null}function Tr(At,Wt){if($e){var Cr=At-sr;St.add(v(Cr)>180?Cr+(Cr>0?360:-360):Cr)}else wr=At,cr=Wt;Se.point(At,Wt),mt(At,Wt)}function Lr(){Se.lineStart()}function ti(){Tr(wr,cr),Se.lineEnd(),v(St)>o&&(lt=-(Nt=180)),Vt[0]=lt,Vt[1]=Nt,$e=null}function Br(At,Wt){return(Wt-=At)<0?Wt+360:Wt}function Vr(At,Wt){return At[0]-Wt[0]}function dt(At,Wt){return At[0]<=At[1]?At[0]<=Wt&&Wt<=At[1]:WtBr(Ar[0],Ar[1])&&(Ar[1]=Kr[1]),Br(Kr[0],Ar[1])>Br(Ar[0],Ar[1])&&(Ar[0]=Kr[0])):ki.push(Ar=Kr);for(Xi=-1/0,Cr=ki.length-1,Wt=0,Ar=ki[Cr];Wt<=Cr;Ar=Kr,++Wt)Kr=ki[Wt],(dn=Br(Ar[1],Kr[0]))>Xi&&(Xi=dn,lt=Kr[0],Nt=Ar[1])}return Qt=Vt=null,lt===1/0||Gt===1/0?[[NaN,NaN],[NaN,NaN]]:[[lt,Gt],[Nt,Jt]]}var Je,je,tt,xt,Ie,xe,ke,vt,ir,ar,vr,ii,pi,$r,di,ji,In={sphere:O,point:wi,lineStart:qn,lineEnd:la,polygonStart:function(){In.lineStart=Ut,In.lineEnd=wt},polygonEnd:function(){In.lineStart=qn,In.lineEnd=la}};function wi(At,Wt){At*=d,Wt*=d;var Cr=p(Wt);On(Cr*p(At),Cr*x(At),x(Wt))}function On(At,Wt,Cr){++Je,tt+=(At-tt)/Je,xt+=(Wt-xt)/Je,Ie+=(Cr-Ie)/Je}function qn(){In.point=Fn}function Fn(At,Wt){At*=d,Wt*=d;var Cr=p(Wt);$r=Cr*p(At),di=Cr*x(At),ji=x(Wt),In.point=ra,On($r,di,ji)}function ra(At,Wt){At*=d,Wt*=d;var Cr=p(Wt),Ar=Cr*p(At),Kr=Cr*x(At),ki=x(Wt),Xi=b(M((Xi=di*ki-ji*Kr)*Xi+(Xi=ji*Ar-$r*ki)*Xi+(Xi=$r*Kr-di*Ar)*Xi),$r*Ar+di*Kr+ji*ki);je+=Xi,xe+=Xi*($r+($r=Ar)),ke+=Xi*(di+(di=Kr)),vt+=Xi*(ji+(ji=ki)),On($r,di,ji)}function la(){In.point=wi}function Ut(){In.point=rr}function wt(){nr(ii,pi),In.point=wi}function rr(At,Wt){ii=At,pi=Wt,At*=d,Wt*=d,In.point=nr;var Cr=p(Wt);$r=Cr*p(At),di=Cr*x(At),ji=x(Wt),On($r,di,ji)}function nr(At,Wt){At*=d,Wt*=d;var Cr=p(Wt),Ar=Cr*p(At),Kr=Cr*x(At),ki=x(Wt),Xi=di*ki-ji*Kr,dn=ji*Ar-$r*ki,wn=$r*Kr-di*Ar,Nn=M(Xi*Xi+dn*dn+wn*wn),Yi=T(Nn),Qi=Nn&&-Yi/Nn;ir+=Qi*Xi,ar+=Qi*dn,vr+=Qi*wn,je+=Yi,xe+=Yi*($r+($r=Ar)),ke+=Yi*(di+(di=Kr)),vt+=Yi*(ji+(ji=ki)),On($r,di,ji)}function Er(At){Je=je=tt=xt=Ie=xe=ke=vt=ir=ar=vr=0,j(At,In);var Wt=ir,Cr=ar,Ar=vr,Kr=Wt*Wt+Cr*Cr+Ar*Ar;return Krl?At+Math.round(-At/f)*f:At,Wt]}Qr.invert=Qr;function Oi(At,Wt,Cr){return(At%=f)?Wt||Cr?ri(tn(At),fn(Wt,Cr)):tn(At):Wt||Cr?fn(Wt,Cr):Qr}function $i(At){return function(Wt,Cr){return Wt+=At,[Wt>l?Wt-f:Wt<-l?Wt+f:Wt,Cr]}}function tn(At){var Wt=$i(At);return Wt.invert=$i(-At),Wt}function fn(At,Wt){var Cr=p(At),Ar=x(At),Kr=p(Wt),ki=x(Wt);function Xi(dn,wn){var Nn=p(wn),Yi=p(dn)*Nn,Qi=x(dn)*Nn,on=x(wn),Fi=on*Cr+Yi*Ar;return[b(Qi*Kr-Fi*ki,Yi*Cr-on*Ar),T(Fi*Kr+Qi*ki)]}return Xi.invert=function(dn,wn){var Nn=p(wn),Yi=p(dn)*Nn,Qi=x(dn)*Nn,on=x(wn),Fi=on*Kr-Qi*ki;return[b(Qi*Kr+on*ki,Yi*Cr+Fi*Ar),T(Fi*Cr-Yi*Ar)]},Xi}function yn(At){At=Oi(At[0]*d,At[1]*d,At.length>2?At[2]*d:0);function Wt(Cr){return Cr=At(Cr[0]*d,Cr[1]*d),Cr[0]*=h,Cr[1]*=h,Cr}return Wt.invert=function(Cr){return Cr=At.invert(Cr[0]*d,Cr[1]*d),Cr[0]*=h,Cr[1]*=h,Cr},Wt}function Sn(At,Wt,Cr,Ar,Kr,ki){if(Cr){var Xi=p(Wt),dn=x(Wt),wn=Ar*Cr;Kr==null?(Kr=Wt+Ar*f,ki=Wt-wn/2):(Kr=Ba(Xi,Kr),ki=Ba(Xi,ki),(Ar>0?Krki)&&(Kr+=Ar*f));for(var Nn,Yi=Kr;Ar>0?Yi>ki:Yi1&&At.push(At.pop().concat(At.shift()))},result:function(){var Cr=At;return At=[],Wt=null,Cr}}}function Wa(At,Wt){return v(At[0]-Wt[0])=0;--dn)Kr.point((Qi=Yi[dn])[0],Qi[1]);else Ar(on.x,on.p.x,-1,Kr);on=on.p}on=on.o,Yi=on.z,Fi=!Fi}while(!on.v);Kr.lineEnd()}}}function da(At){if(Wt=At.length){for(var Wt,Cr=0,Ar=At[0],Kr;++Cr=0?1:-1,as=Ss*Xo,ws=as>l,Ho=Ca*Ka;if(Wn.add(b(Ho*Ss*x(as),Ra*bo+Ho*p(as))),Xi+=ws?Xo+Ss*f:Xo,ws^Fi>=Cr^Yn>=Cr){var ml=ut(ce(on),ce(Na));st(ml);var Ws=ut(ki,ml);st(Ws);var Ls=(ws^Xo>=0?-1:1)*T(Ws[2]);(Ar>Ls||Ar===Ls&&(ml[0]||ml[1]))&&(dn+=ws^Xo>=0?1:-1)}}return(Xi<-o||Xi0){for(wn||(Kr.polygonStart(),wn=!0),Kr.lineStart(),bo=0;bo1&&Dn&2&&Ka.push(Ka.pop().concat(Ka.shift())),Yi.push(Ka.filter(Mt))}}return on}}function Mt(At){return At.length>1}function kr(At,Wt){return((At=At.x)[0]<0?At[1]-u-o:u-At[1])-((Wt=Wt.x)[0]<0?Wt[1]-u-o:u-Wt[1])}var Jr=jn(function(){return!0},vi,An,[-l,-u]);function vi(At){var Wt=NaN,Cr=NaN,Ar=NaN,Kr;return{lineStart:function(){At.lineStart(),Kr=1},point:function(ki,Xi){var dn=ki>0?l:-l,wn=v(ki-Wt);v(wn-l)0?u:-u),At.point(Ar,Cr),At.lineEnd(),At.lineStart(),At.point(dn,Cr),At.point(ki,Cr),Kr=0):Ar!==dn&&wn>=l&&(v(Wt-Ar)o?_((x(Wt)*(ki=p(Ar))*x(Cr)-x(Ar)*(Kr=p(Wt))*x(At))/(Kr*ki*Xi)):(Wt+Ar)/2}function An(At,Wt,Cr,Ar){var Kr;if(At==null)Kr=Cr*u,Ar.point(-l,Kr),Ar.point(0,Kr),Ar.point(l,Kr),Ar.point(l,0),Ar.point(l,-Kr),Ar.point(0,-Kr),Ar.point(-l,-Kr),Ar.point(-l,0),Ar.point(-l,Kr);else if(v(At[0]-Wt[0])>o){var ki=At[0]0,Kr=v(Wt)>o;function ki(Yi,Qi,on,Fi){Sn(Fi,At,Cr,on,Yi,Qi)}function Xi(Yi,Qi){return p(Yi)*p(Qi)>Wt}function dn(Yi){var Qi,on,Fi,$n,Ca;return{lineStart:function(){$n=Fi=!1,Ca=1},point:function(Ra,La){var Na=[Ra,La],Yn,Dn=Xi(Ra,La),Ka=Ar?Dn?0:Nn(Ra,La):Dn?Nn(Ra+(Ra<0?l:-l),La):0;if(!Qi&&($n=Fi=Dn)&&Yi.lineStart(),Dn!==Fi&&(Yn=wn(Qi,Na),(!Yn||Wa(Qi,Yn)||Wa(Na,Yn))&&(Na[2]=1)),Dn!==Fi)Ca=0,Dn?(Yi.lineStart(),Yn=wn(Na,Qi),Yi.point(Yn[0],Yn[1])):(Yn=wn(Qi,Na),Yi.point(Yn[0],Yn[1],2),Yi.lineEnd()),Qi=Yn;else if(Kr&&Qi&&Ar^Dn){var bo;!(Ka&on)&&(bo=wn(Na,Qi,!0))&&(Ca=0,Ar?(Yi.lineStart(),Yi.point(bo[0][0],bo[0][1]),Yi.point(bo[1][0],bo[1][1]),Yi.lineEnd()):(Yi.point(bo[1][0],bo[1][1]),Yi.lineEnd(),Yi.lineStart(),Yi.point(bo[0][0],bo[0][1],3)))}Dn&&(!Qi||!Wa(Qi,Na))&&Yi.point(Na[0],Na[1]),Qi=Na,Fi=Dn,on=Ka},lineEnd:function(){Fi&&Yi.lineEnd(),Qi=null},clean:function(){return Ca|($n&&Fi)<<1}}}function wn(Yi,Qi,on){var Fi=ce(Yi),$n=ce(Qi),Ca=[1,0,0],Ra=ut(Fi,$n),La=Ze(Ra,Ra),Na=Ra[0],Yn=La-Na*Na;if(!Yn)return!on&&Yi;var Dn=Wt*La/Yn,Ka=-Wt*Na/Yn,bo=ut(Ca,Ra),Xo=Zt(Ca,Dn),Ss=Zt(Ra,Ka);pt(Xo,Ss);var as=bo,ws=Ze(Xo,as),Ho=Ze(as,as),ml=ws*ws-Ho*(Ze(Xo,Xo)-1);if(!(ml<0)){var Ws=M(ml),Ls=Zt(as,(-ws-Ws)/Ho);if(pt(Ls,Xo),Ls=Re(Ls),!on)return Ls;var va=Yi[0],no=Qi[0],ys=Yi[1],rs=Qi[1],$l;no0^Ls[1]<(v(Ls[0]-va)l^(va<=Ls[0]&&Ls[0]<=no)){var pu=Zt(as,(-ws+Ws)/Ho);return pt(pu,Xo),[Ls,Re(pu)]}}}function Nn(Yi,Qi){var on=Ar?At:l-At,Fi=0;return Yi<-on?Fi|=1:Yi>on&&(Fi|=2),Qi<-on?Fi|=4:Qi>on&&(Fi|=8),Fi}return jn(Xi,dn,ki,Ar?[0,-At]:[-l,At-l])}function Li(At,Wt,Cr,Ar,Kr,ki){var Xi=At[0],dn=At[1],wn=Wt[0],Nn=Wt[1],Yi=0,Qi=1,on=wn-Xi,Fi=Nn-dn,$n;if($n=Cr-Xi,!(!on&&$n>0)){if($n/=on,on<0){if($n0){if($n>Qi)return;$n>Yi&&(Yi=$n)}if($n=Kr-Xi,!(!on&&$n<0)){if($n/=on,on<0){if($n>Qi)return;$n>Yi&&(Yi=$n)}else if(on>0){if($n0)){if($n/=Fi,Fi<0){if($n0){if($n>Qi)return;$n>Yi&&(Yi=$n)}if($n=ki-dn,!(!Fi&&$n<0)){if($n/=Fi,Fi<0){if($n>Qi)return;$n>Yi&&(Yi=$n)}else if(Fi>0){if($n0&&(At[0]=Xi+Yi*on,At[1]=dn+Yi*Fi),Qi<1&&(Wt[0]=Xi+Qi*on,Wt[1]=dn+Qi*Fi),!0}}}}}var _n=1e9,ya=-_n;function Jn(At,Wt,Cr,Ar){function Kr(Nn,Yi){return At<=Nn&&Nn<=Cr&&Wt<=Yi&&Yi<=Ar}function ki(Nn,Yi,Qi,on){var Fi=0,$n=0;if(Nn==null||(Fi=Xi(Nn,Qi))!==($n=Xi(Yi,Qi))||wn(Nn,Yi)<0^Qi>0)do on.point(Fi===0||Fi===3?At:Cr,Fi>1?Ar:Wt);while((Fi=(Fi+Qi+4)%4)!==$n);else on.point(Yi[0],Yi[1])}function Xi(Nn,Yi){return v(Nn[0]-At)0?0:3:v(Nn[0]-Cr)0?2:1:v(Nn[1]-Wt)0?1:0:Yi>0?3:2}function dn(Nn,Yi){return wn(Nn.x,Yi.x)}function wn(Nn,Yi){var Qi=Xi(Nn,1),on=Xi(Yi,1);return Qi!==on?Qi-on:Qi===0?Yi[1]-Nn[1]:Qi===1?Nn[0]-Yi[0]:Qi===2?Nn[1]-Yi[1]:Yi[0]-Nn[0]}return function(Nn){var Yi=Nn,Qi=ma(),on,Fi,$n,Ca,Ra,La,Na,Yn,Dn,Ka,bo,Xo={point:Ss,lineStart:ml,lineEnd:Ws,polygonStart:ws,polygonEnd:Ho};function Ss(va,no){Kr(va,no)&&Yi.point(va,no)}function as(){for(var va=0,no=0,ys=Fi.length;noAr&&(Uc-Nc)*(Ar-pu)>(xu-pu)*(At-Nc)&&++va:xu<=Ar&&(Uc-Nc)*(Ar-pu)<(xu-pu)*(At-Nc)&&--va;return va}function ws(){Yi=Qi,on=[],Fi=[],bo=!0}function Ho(){var va=as(),no=bo&&va,ys=(on=t.merge(on)).length;(no||ys)&&(Nn.polygonStart(),no&&(Nn.lineStart(),ki(null,null,1,Nn),Nn.lineEnd()),ys&&Wo(on,dn,va,ki,Nn),Nn.polygonEnd()),Yi=Nn,on=Fi=$n=null}function ml(){Xo.point=Ls,Fi&&Fi.push($n=[]),Ka=!0,Dn=!1,Na=Yn=NaN}function Ws(){on&&(Ls(Ca,Ra),La&&Dn&&Qi.rejoin(),on.push(Qi.result())),Xo.point=Ss,Dn&&Yi.lineEnd()}function Ls(va,no){var ys=Kr(va,no);if(Fi&&$n.push([va,no]),Ka)Ca=va,Ra=no,La=ys,Ka=!1,ys&&(Yi.lineStart(),Yi.point(va,no));else if(ys&&Dn)Yi.point(va,no);else{var rs=[Na=Math.max(ya,Math.min(_n,Na)),Yn=Math.max(ya,Math.min(_n,Yn))],$l=[va=Math.max(ya,Math.min(_n,va)),no=Math.max(ya,Math.min(_n,no))];Li(rs,$l,At,Wt,Cr,Ar)?(Dn||(Yi.lineStart(),Yi.point(rs[0],rs[1])),Yi.point($l[0],$l[1]),ys||Yi.lineEnd(),bo=!1):ys&&(Yi.lineStart(),Yi.point(va,no),bo=!1)}Na=va,Yn=no,Dn=ys}return Xo}}function Ma(){var At=0,Wt=0,Cr=960,Ar=500,Kr,ki,Xi;return Xi={stream:function(dn){return Kr&&ki===dn?Kr:Kr=Jn(At,Wt,Cr,Ar)(ki=dn)},extent:function(dn){return arguments.length?(At=+dn[0][0],Wt=+dn[0][1],Cr=+dn[1][0],Ar=+dn[1][1],Kr=ki=null,Xi):[[At,Wt],[Cr,Ar]]}}}var _o=r(),No,po,Lo,ko={sphere:O,point:O,lineStart:Ds,lineEnd:O,polygonStart:O,polygonEnd:O};function Ds(){ko.point=ll,ko.lineEnd=Fs}function Fs(){ko.point=ko.lineEnd=O}function ll(At,Wt){At*=d,Wt*=d,No=At,po=x(Wt),Lo=p(Wt),ko.point=ul}function ul(At,Wt){At*=d,Wt*=d;var Cr=x(Wt),Ar=p(Wt),Kr=v(At-No),ki=p(Kr),Xi=x(Kr),dn=Ar*Xi,wn=Lo*Cr-po*Ar*ki,Nn=po*Cr+Lo*Ar*ki;_o.add(b(M(dn*dn+wn*wn),Nn)),No=At,po=Cr,Lo=Ar}function zl(At){return _o.reset(),j(At,ko),+_o}var us=[null,null],il={type:"LineString",coordinates:us};function As(At,Wt){return us[0]=At,us[1]=Wt,zl(il)}var cl={Feature:function(At,Wt){return zs(At.geometry,Wt)},FeatureCollection:function(At,Wt){for(var Cr=At.features,Ar=-1,Kr=Cr.length;++Ar0&&(Kr=As(At[ki],At[ki-1]),Kr>0&&Cr<=Kr&&Ar<=Kr&&(Cr+Ar-Kr)*(1-Math.pow((Cr-Ar)/Kr,2))o}).map(on)).concat(t.range(k(ki/Nn)*Nn,Kr,Nn).filter(function(Yn){return v(Yn%Qi)>o}).map(Fi))}return La.lines=function(){return Na().map(function(Yn){return{type:"LineString",coordinates:Yn}})},La.outline=function(){return{type:"Polygon",coordinates:[$n(Ar).concat(Ca(Xi).slice(1),$n(Cr).reverse().slice(1),Ca(dn).reverse().slice(1))]}},La.extent=function(Yn){return arguments.length?La.extentMajor(Yn).extentMinor(Yn):La.extentMinor()},La.extentMajor=function(Yn){return arguments.length?(Ar=+Yn[0][0],Cr=+Yn[1][0],dn=+Yn[0][1],Xi=+Yn[1][1],Ar>Cr&&(Yn=Ar,Ar=Cr,Cr=Yn),dn>Xi&&(Yn=dn,dn=Xi,Xi=Yn),La.precision(Ra)):[[Ar,dn],[Cr,Xi]]},La.extentMinor=function(Yn){return arguments.length?(Wt=+Yn[0][0],At=+Yn[1][0],ki=+Yn[0][1],Kr=+Yn[1][1],Wt>At&&(Yn=Wt,Wt=At,At=Yn),ki>Kr&&(Yn=ki,ki=Kr,Kr=Yn),La.precision(Ra)):[[Wt,ki],[At,Kr]]},La.step=function(Yn){return arguments.length?La.stepMajor(Yn).stepMinor(Yn):La.stepMinor()},La.stepMajor=function(Yn){return arguments.length?(Yi=+Yn[0],Qi=+Yn[1],La):[Yi,Qi]},La.stepMinor=function(Yn){return arguments.length?(wn=+Yn[0],Nn=+Yn[1],La):[wn,Nn]},La.precision=function(Yn){return arguments.length?(Ra=+Yn,on=Rn(ki,Kr,90),Fi=_a(Wt,At,Ra),$n=Rn(dn,Xi,90),Ca=_a(Ar,Cr,Ra),La):Ra},La.extentMajor([[-180,-90+o],[180,90-o]]).extentMinor([[-180,-80-o],[180,80+o]])}function Ol(){return Vu()()}function xo(At,Wt){var Cr=At[0]*d,Ar=At[1]*d,Kr=Wt[0]*d,ki=Wt[1]*d,Xi=p(Ar),dn=x(Ar),wn=p(ki),Nn=x(ki),Yi=Xi*p(Cr),Qi=Xi*x(Cr),on=wn*p(Kr),Fi=wn*x(Kr),$n=2*T(M(z(ki-Ar)+Xi*wn*z(Kr-Cr))),Ca=x($n),Ra=$n?function(La){var Na=x(La*=$n)/Ca,Yn=x($n-La)/Ca,Dn=Yn*Yi+Na*on,Ka=Yn*Qi+Na*Fi,bo=Yn*dn+Na*Nn;return[b(Ka,Dn)*h,b(bo,M(Dn*Dn+Ka*Ka))*h]}:function(){return[Cr*h,Ar*h]};return Ra.distance=$n,Ra}function Yl(At){return At}var Ns=r(),Hl=r(),ac,aa,Oo,qo,ql={point:O,lineStart:O,lineEnd:O,polygonStart:function(){ql.lineStart=Pc,ql.lineEnd=Uf},polygonEnd:function(){ql.lineStart=ql.lineEnd=ql.point=O,Ns.add(v(Hl)),Hl.reset()},result:function(){var At=Ns/2;return Ns.reset(),At}};function Pc(){ql.point=Do}function Do(At,Wt){ql.point=rf,ac=Oo=At,aa=qo=Wt}function rf(At,Wt){Hl.add(qo*At-Oo*Wt),Oo=At,qo=Wt}function Uf(){rf(ac,aa)}var pl=1/0,Zc=pl,Kl=-pl,Os=Kl,yu={point:oc,lineStart:O,lineEnd:O,polygonStart:O,polygonEnd:O,result:function(){var At=[[pl,Zc],[Kl,Os]];return Kl=Os=-(Zc=pl=1/0),At}};function oc(At,Wt){AtKl&&(Kl=At),WtOs&&(Os=Wt)}var Cf=0,sc=0,Vh=0,Lf=0,cs=0,nf=0,Vf=0,Jl=0,fl=0,lc,Fu,Es,Hs,Go={point:ps,lineStart:uc,lineEnd:qs,polygonStart:function(){Go.lineStart=ad,Go.lineEnd=Po},polygonEnd:function(){Go.point=ps,Go.lineStart=uc,Go.lineEnd=qs},result:function(){var At=fl?[Vf/fl,Jl/fl]:nf?[Lf/nf,cs/nf]:Vh?[Cf/Vh,sc/Vh]:[NaN,NaN];return Cf=sc=Vh=Lf=cs=nf=Vf=Jl=fl=0,At}};function ps(At,Wt){Cf+=At,sc+=Wt,++Vh}function uc(){Go.point=xl}function xl(At,Wt){Go.point=Gu,ps(Es=At,Hs=Wt)}function Gu(At,Wt){var Cr=At-Es,Ar=Wt-Hs,Kr=M(Cr*Cr+Ar*Ar);Lf+=Kr*(Es+At)/2,cs+=Kr*(Hs+Wt)/2,nf+=Kr,ps(Es=At,Hs=Wt)}function qs(){Go.point=ps}function ad(){Go.point=od}function Po(){Yo(lc,Fu)}function od(At,Wt){Go.point=Yo,ps(lc=Es=At,Fu=Hs=Wt)}function Yo(At,Wt){var Cr=At-Es,Ar=Wt-Hs,Kr=M(Cr*Cr+Ar*Ar);Lf+=Kr*(Es+At)/2,cs+=Kr*(Hs+Wt)/2,nf+=Kr,Kr=Hs*At-Es*Wt,Vf+=Kr*(Es+At),Jl+=Kr*(Hs+Wt),fl+=Kr*3,ps(Es=At,Hs=Wt)}function Pa(At){this._context=At}Pa.prototype={_radius:4.5,pointRadius:function(At){return this._radius=At,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(At,Wt){switch(this._point){case 0:{this._context.moveTo(At,Wt),this._point=1;break}case 1:{this._context.lineTo(At,Wt);break}default:{this._context.moveTo(At+this._radius,Wt),this._context.arc(At,Wt,this._radius,0,f);break}}},result:O};var af=r(),Hu,bl,Gf,Ic,yf,Bl={point:O,lineStart:function(){Bl.point=wh},lineEnd:function(){Hu&&Qf(bl,Gf),Bl.point=O},polygonStart:function(){Hu=!0},polygonEnd:function(){Hu=null},result:function(){var At=+af;return af.reset(),At}};function wh(At,Wt){Bl.point=Qf,bl=Ic=At,Gf=yf=Wt}function Qf(At,Wt){Ic-=At,yf-=Wt,af.add(M(Ic*Ic+yf*yf)),Ic=At,yf=Wt}function _f(){this._string=[]}_f.prototype={_radius:4.5,_circle:Yc(4.5),pointRadius:function(At){return(At=+At)!==this._radius&&(this._radius=At,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(At,Wt){switch(this._point){case 0:{this._string.push("M",At,",",Wt),this._point=1;break}case 1:{this._string.push("L",At,",",Wt);break}default:{this._circle==null&&(this._circle=Yc(this._radius)),this._string.push("M",At,",",Wt,this._circle);break}}},result:function(){if(this._string.length){var At=this._string.join("");return this._string=[],At}else return null}};function Yc(At){return"m0,"+At+"a"+At+","+At+" 0 1,1 0,"+-2*At+"a"+At+","+At+" 0 1,1 0,"+2*At+"z"}function eh(At,Wt){var Cr=4.5,Ar,Kr;function ki(Xi){return Xi&&(typeof Cr=="function"&&Kr.pointRadius(+Cr.apply(this,arguments)),j(Xi,Ar(Kr))),Kr.result()}return ki.area=function(Xi){return j(Xi,Ar(ql)),ql.result()},ki.measure=function(Xi){return j(Xi,Ar(Bl)),Bl.result()},ki.bounds=function(Xi){return j(Xi,Ar(yu)),yu.result()},ki.centroid=function(Xi){return j(Xi,Ar(Go)),Go.result()},ki.projection=function(Xi){return arguments.length?(Ar=Xi==null?(At=null,Yl):(At=Xi).stream,ki):At},ki.context=function(Xi){return arguments.length?(Kr=Xi==null?(Wt=null,new _f):new Pa(Wt=Xi),typeof Cr!="function"&&Kr.pointRadius(Cr),ki):Wt},ki.pointRadius=function(Xi){return arguments.length?(Cr=typeof Xi=="function"?Xi:(Kr.pointRadius(+Xi),+Xi),ki):Cr},ki.projection(At).context(Wt)}function th(At){return{stream:ju(At)}}function ju(At){return function(Wt){var Cr=new Hf;for(var Ar in At)Cr[Ar]=At[Ar];return Cr.stream=Wt,Cr}}function Hf(){}Hf.prototype={constructor:Hf,point:function(At,Wt){this.stream.point(At,Wt)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function cc(At,Wt,Cr){var Ar=At.clipExtent&&At.clipExtent();return At.scale(150).translate([0,0]),Ar!=null&&At.clipExtent(null),j(Cr,At.stream(yu)),Wt(yu.result()),Ar!=null&&At.clipExtent(Ar),At}function of(At,Wt,Cr){return cc(At,function(Ar){var Kr=Wt[1][0]-Wt[0][0],ki=Wt[1][1]-Wt[0][1],Xi=Math.min(Kr/(Ar[1][0]-Ar[0][0]),ki/(Ar[1][1]-Ar[0][1])),dn=+Wt[0][0]+(Kr-Xi*(Ar[1][0]+Ar[0][0]))/2,wn=+Wt[0][1]+(ki-Xi*(Ar[1][1]+Ar[0][1]))/2;At.scale(150*Xi).translate([dn,wn])},Cr)}function Nl(At,Wt,Cr){return of(At,[[0,0],Wt],Cr)}function Kc(At,Wt,Cr){return cc(At,function(Ar){var Kr=+Wt,ki=Kr/(Ar[1][0]-Ar[0][0]),Xi=(Kr-ki*(Ar[1][0]+Ar[0][0]))/2,dn=-ki*Ar[0][1];At.scale(150*ki).translate([Xi,dn])},Cr)}function Rc(At,Wt,Cr){return cc(At,function(Ar){var Kr=+Wt,ki=Kr/(Ar[1][1]-Ar[0][1]),Xi=-ki*Ar[0][0],dn=(Kr-ki*(Ar[1][1]+Ar[0][1]))/2;At.scale(150*ki).translate([Xi,dn])},Cr)}var gs=16,jf=p(30*d);function Gh(At,Wt){return+Wt?sf(At,Wt):rh(At)}function rh(At){return ju({point:function(Wt,Cr){Wt=At(Wt,Cr),this.stream.point(Wt[0],Wt[1])}})}function sf(At,Wt){function Cr(Ar,Kr,ki,Xi,dn,wn,Nn,Yi,Qi,on,Fi,$n,Ca,Ra){var La=Nn-Ar,Na=Yi-Kr,Yn=La*La+Na*Na;if(Yn>4*Wt&&Ca--){var Dn=Xi+on,Ka=dn+Fi,bo=wn+$n,Xo=M(Dn*Dn+Ka*Ka+bo*bo),Ss=T(bo/=Xo),as=v(v(bo)-1)Wt||v((La*Ws+Na*Ls)/Yn-.5)>.3||Xi*on+dn*Fi+wn*$n2?va[2]%360*d:0,Ws()):[dn*h,wn*h,Nn*h]},Ho.angle=function(va){return arguments.length?(Qi=va%360*d,Ws()):Qi*h},Ho.reflectX=function(va){return arguments.length?(on=va?-1:1,Ws()):on<0},Ho.reflectY=function(va){return arguments.length?(Fi=va?-1:1,Ws()):Fi<0},Ho.precision=function(va){return arguments.length?(bo=Gh(Xo,Ka=va*va),Ls()):M(Ka)},Ho.fitExtent=function(va,no){return of(Ho,va,no)},Ho.fitSize=function(va,no){return Nl(Ho,va,no)},Ho.fitWidth=function(va,no){return Kc(Ho,va,no)},Ho.fitHeight=function(va,no){return Rc(Ho,va,no)};function Ws(){var va=js(Cr,0,0,on,Fi,Qi).apply(null,Wt(ki,Xi)),no=(Qi?js:ih)(Cr,Ar-va[0],Kr-va[1],on,Fi,Qi);return Yi=Oi(dn,wn,Nn),Xo=ri(Wt,no),Ss=ri(Yi,Xo),bo=Gh(Xo,Ka),Ls()}function Ls(){return as=ws=null,Ho}return function(){return Wt=At.apply(this,arguments),Ho.invert=Wt.invert&&ml,Ws()}}function ks(At){var Wt=0,Cr=l/3,Ar=Dc(At),Kr=Ar(Wt,Cr);return Kr.parallels=function(ki){return arguments.length?Ar(Wt=ki[0]*d,Cr=ki[1]*d):[Wt*h,Cr*h]},Kr}function bc(At){var Wt=p(At);function Cr(Ar,Kr){return[Ar*Wt,x(Kr)/Wt]}return Cr.invert=function(Ar,Kr){return[Ar/Wt,T(Kr*Wt)]},Cr}function hu(At,Wt){var Cr=x(At),Ar=(Cr+x(Wt))/2;if(v(Ar)=.12&&Ra<.234&&Ca>=-.425&&Ca<-.214?Kr:Ra>=.166&&Ra<.234&&Ca>=-.214&&Ca<-.115?Xi:Cr).invert(on)},Yi.stream=function(on){return At&&Wt===on?At:At=nh([Cr.stream(Wt=on),Kr.stream(on),Xi.stream(on)])},Yi.precision=function(on){return arguments.length?(Cr.precision(on),Kr.precision(on),Xi.precision(on),Qi()):Cr.precision()},Yi.scale=function(on){return arguments.length?(Cr.scale(on),Kr.scale(on*.35),Xi.scale(on),Yi.translate(Cr.translate())):Cr.scale()},Yi.translate=function(on){if(!arguments.length)return Cr.translate();var Fi=Cr.scale(),$n=+on[0],Ca=+on[1];return Ar=Cr.translate(on).clipExtent([[$n-.455*Fi,Ca-.238*Fi],[$n+.455*Fi,Ca+.238*Fi]]).stream(Nn),ki=Kr.translate([$n-.307*Fi,Ca+.201*Fi]).clipExtent([[$n-.425*Fi+o,Ca+.12*Fi+o],[$n-.214*Fi-o,Ca+.234*Fi-o]]).stream(Nn),dn=Xi.translate([$n-.205*Fi,Ca+.212*Fi]).clipExtent([[$n-.214*Fi+o,Ca+.166*Fi+o],[$n-.115*Fi-o,Ca+.234*Fi-o]]).stream(Nn),Qi()},Yi.fitExtent=function(on,Fi){return of(Yi,on,Fi)},Yi.fitSize=function(on,Fi){return Nl(Yi,on,Fi)},Yi.fitWidth=function(on,Fi){return Kc(Yi,on,Fi)},Yi.fitHeight=function(on,Fi){return Rc(Yi,on,Fi)};function Qi(){return At=Wt=null,Yi}return Yi.scale(1070)}function zu(At){return function(Wt,Cr){var Ar=p(Wt),Kr=p(Cr),ki=At(Ar*Kr);return[ki*Kr*x(Wt),ki*x(Cr)]}}function Fc(At){return function(Wt,Cr){var Ar=M(Wt*Wt+Cr*Cr),Kr=At(Ar),ki=x(Kr),Xi=p(Kr);return[b(Wt*ki,Ar*Xi),T(Ar&&Cr*ki/Ar)]}}var wc=zu(function(At){return M(2/(1+At))});wc.invert=Fc(function(At){return 2*T(At/2)});function bd(){return Eu(wc).scale(124.75).clipAngle(180-.001)}var xf=zu(function(At){return(At=P(At))&&At/x(At)});xf.invert=Fc(function(At){return At});function Pf(){return Eu(xf).scale(79.4188).clipAngle(180-.001)}function Ou(At,Wt){return[At,S(g((u+Wt)/2))]}Ou.invert=function(At,Wt){return[At,2*_(E(Wt))-u]};function bf(){return jl(Ou).scale(961/f)}function jl(At){var Wt=Eu(At),Cr=Wt.center,Ar=Wt.scale,Kr=Wt.translate,ki=Wt.clipExtent,Xi=null,dn,wn,Nn;Wt.scale=function(Qi){return arguments.length?(Ar(Qi),Yi()):Ar()},Wt.translate=function(Qi){return arguments.length?(Kr(Qi),Yi()):Kr()},Wt.center=function(Qi){return arguments.length?(Cr(Qi),Yi()):Cr()},Wt.clipExtent=function(Qi){return arguments.length?(Qi==null?Xi=dn=wn=Nn=null:(Xi=+Qi[0][0],dn=+Qi[0][1],wn=+Qi[1][0],Nn=+Qi[1][1]),Yi()):Xi==null?null:[[Xi,dn],[wn,Nn]]};function Yi(){var Qi=l*Ar(),on=Wt(yn(Wt.rotate()).invert([0,0]));return ki(Xi==null?[[on[0]-Qi,on[1]-Qi],[on[0]+Qi,on[1]+Qi]]:At===Ou?[[Math.max(on[0]-Qi,Xi),dn],[Math.min(on[0]+Qi,wn),Nn]]:[[Xi,Math.max(on[1]-Qi,dn)],[wn,Math.min(on[1]+Qi,Nn)]])}return Yi()}function lf(At){return g((u+At)/2)}function Hh(At,Wt){var Cr=p(At),Ar=At===Wt?x(At):S(Cr/p(Wt))/S(lf(Wt)/lf(At)),Kr=Cr*L(lf(At),Ar)/Ar;if(!Ar)return Ou;function ki(Xi,dn){Kr>0?dn<-u+o&&(dn=-u+o):dn>u-o&&(dn=u-o);var wn=Kr/L(lf(dn),Ar);return[wn*x(Ar*Xi),Kr-wn*p(Ar*Xi)]}return ki.invert=function(Xi,dn){var wn=Kr-dn,Nn=C(Ar)*M(Xi*Xi+wn*wn),Yi=b(Xi,v(wn))*C(wn);return wn*Ar<0&&(Yi-=l*C(Xi)*C(wn)),[Yi/Ar,2*_(L(Kr/Nn,1/Ar))-u]},ki}function If(){return ks(Hh).scale(109.5).parallels([30,30])}function Cs(At,Wt){return[At,Wt]}Cs.invert=Cs;function du(){return Eu(Cs).scale(152.63)}function ku(At,Wt){var Cr=p(At),Ar=At===Wt?x(At):(Cr-p(Wt))/(Wt-At),Kr=Cr/Ar+At;if(v(Ar)o&&--Ar>0);return[At/(.8707+(ki=Cr*Cr)*(-.131979+ki*(-.013791+ki*ki*ki*(.003971-.001529*ki)))),Cr]};function Tc(){return Eu(Oc).scale(175.295)}function wl(At,Wt){return[p(Wt)*x(At),x(Wt)]}wl.invert=Fc(T);function vu(){return Eu(wl).scale(249.5).clipAngle(90+o)}function qc(At,Wt){var Cr=p(Wt),Ar=1+p(At)*Cr;return[Cr*x(At)/Ar,x(Wt)/Ar]}qc.invert=Fc(function(At){return 2*_(At)});function cf(){return Eu(qc).scale(250).clipAngle(142)}function fc(At,Wt){return[S(g((u+Wt)/2)),-At]}fc.invert=function(At,Wt){return[-Wt,2*_(E(At))-u]};function Bc(){var At=jl(fc),Wt=At.center,Cr=At.rotate;return At.center=function(Ar){return arguments.length?Wt([-Ar[1],Ar[0]]):(Ar=Wt(),[Ar[1],-Ar[0]])},At.rotate=function(Ar){return arguments.length?Cr([Ar[0],Ar[1],Ar.length>2?Ar[2]+90:90]):(Ar=Cr(),[Ar[0],Ar[1],Ar[2]-90])},Cr([0,0,90]).scale(159.155)}e.geoAlbers=nl,e.geoAlbersUsa=Ah,e.geoArea=ge,e.geoAzimuthalEqualArea=bd,e.geoAzimuthalEqualAreaRaw=wc,e.geoAzimuthalEquidistant=Pf,e.geoAzimuthalEquidistantRaw=xf,e.geoBounds=Ge,e.geoCentroid=Er,e.geoCircle=ua,e.geoClipAntimeridian=Jr,e.geoClipCircle=Mn,e.geoClipExtent=Ma,e.geoClipRectangle=Jn,e.geoConicConformal=If,e.geoConicConformalRaw=Hh,e.geoConicEqualArea=_u,e.geoConicEqualAreaRaw=hu,e.geoConicEquidistant=Wf,e.geoConicEquidistantRaw=ku,e.geoContains=bs,e.geoDistance=As,e.geoEqualEarth=Xf,e.geoEqualEarthRaw=uf,e.geoEquirectangular=du,e.geoEquirectangularRaw=Cs,e.geoGnomonic=ah,e.geoGnomonicRaw=Wl,e.geoGraticule=Vu,e.geoGraticule10=Ol,e.geoIdentity=Zu,e.geoInterpolate=xo,e.geoLength=zl,e.geoMercator=bf,e.geoMercatorRaw=Ou,e.geoNaturalEarth1=Tc,e.geoNaturalEarth1Raw=Oc,e.geoOrthographic=vu,e.geoOrthographicRaw=wl,e.geoPath=eh,e.geoProjection=Eu,e.geoProjectionMutator=Dc,e.geoRotation=yn,e.geoStereographic=cf,e.geoStereographicRaw=qc,e.geoStream=j,e.geoTransform=th,e.geoTransverseMercator=Bc,e.geoTransverseMercatorRaw=fc,Object.defineProperty(e,"__esModule",{value:!0})})});var LDe=ye((LF,CDe)=>{(function(e,t){typeof LF=="object"&&typeof CDe!="undefined"?t(LF,IZ(),nk()):t(e.d3=e.d3||{},e.d3,e.d3)})(LF,function(e,t,r){"use strict";var n=Math.abs,i=Math.atan,a=Math.atan2,o=Math.cos,s=Math.exp,l=Math.floor,u=Math.log,c=Math.max,f=Math.min,h=Math.pow,d=Math.round,v=Math.sign||function(ve){return ve>0?1:ve<0?-1:0},_=Math.sin,b=Math.tan,p=1e-6,k=1e-12,E=Math.PI,S=E/2,L=E/4,x=Math.SQRT1_2,C=G(2),M=G(E),g=E*2,P=180/E,T=E/180;function z(ve){return ve?ve/Math.sin(ve):1}function O(ve){return ve>1?S:ve<-1?-S:Math.asin(ve)}function V(ve){return ve>1?0:ve<-1?E:Math.acos(ve)}function G(ve){return ve>0?Math.sqrt(ve):0}function Z(ve){return ve=s(2*ve),(ve-1)/(ve+1)}function H(ve){return(s(ve)-s(-ve))/2}function N(ve){return(s(ve)+s(-ve))/2}function j(ve){return u(ve+G(ve*ve+1))}function re(ve){return u(ve+G(ve*ve-1))}function oe(ve){var be=b(ve/2),De=2*u(o(ve/2))/(be*be);function Be(et,We){var it=o(et),Ft=o(We),Ht=_(We),tr=Ft*it,dr=-((1-tr?u((1+tr)/2)/(1-tr):-.5)+De/(1+tr));return[dr*Ft*_(et),dr*Ht]}return Be.invert=function(et,We){var it=G(et*et+We*We),Ft=-ve/2,Ht=50,tr;if(!it)return[0,0];do{var dr=Ft/2,Sr=o(dr),Or=_(dr),Wr=Or/Sr,ni=-u(n(Sr));Ft-=tr=(2/Wr*ni-De*Wr-it)/(-ni/(Or*Or)+1-De/(2*Sr*Sr))*(Sr<0?.7:1)}while(n(tr)>p&&--Ht>0);var Pi=_(Ft);return[a(et*Pi,it*o(Ft)),O(We*Pi/it)]},Be}function _e(){var ve=S,be=t.geoProjectionMutator(oe),De=be(ve);return De.radius=function(Be){return arguments.length?be(ve=Be*T):ve*P},De.scale(179.976).clipAngle(147)}function Ee(ve,be){var De=o(be),Be=z(V(De*o(ve/=2)));return[2*De*_(ve)*Be,_(be)*Be]}Ee.invert=function(ve,be){if(!(ve*ve+4*be*be>E*E+p)){var De=ve,Be=be,et=25;do{var We=_(De),it=_(De/2),Ft=o(De/2),Ht=_(Be),tr=o(Be),dr=_(2*Be),Sr=Ht*Ht,Or=tr*tr,Wr=it*it,ni=1-Or*Ft*Ft,Pi=ni?V(tr*Ft)*G(cn=1/ni):cn=0,cn,ln=2*Pi*tr*it-ve,Cn=Pi*Ht-be,Kn=cn*(Or*Wr+Pi*tr*Ft*Sr),Ta=cn*(.5*We*dr-Pi*2*Ht*it),fa=cn*.25*(dr*it-Pi*Ht*Or*We),$a=cn*(Sr*Ft+Pi*Wr*tr),Co=Ta*fa-$a*Kn;if(!Co)break;var Qa=(Cn*Ta-ln*$a)/Co,mo=(ln*fa-Cn*Kn)/Co;De-=Qa,Be-=mo}while((n(Qa)>p||n(mo)>p)&&--et>0);return[De,Be]}};function Ce(){return t.geoProjection(Ee).scale(152.63)}function me(ve){var be=_(ve),De=o(ve),Be=ve>=0?1:-1,et=b(Be*ve),We=(1+be-De)/2;function it(Ft,Ht){var tr=o(Ht),dr=o(Ft/=2);return[(1+tr)*_(Ft),(Be*Ht>-a(dr,et)-.001?0:-Be*10)+We+_(Ht)*De-(1+tr)*be*dr]}return it.invert=function(Ft,Ht){var tr=0,dr=0,Sr=50;do{var Or=o(tr),Wr=_(tr),ni=o(dr),Pi=_(dr),cn=1+ni,ln=cn*Wr-Ft,Cn=We+Pi*De-cn*be*Or-Ht,Kn=cn*Or/2,Ta=-Wr*Pi,fa=be*cn*Wr/2,$a=De*ni+be*Or*Pi,Co=Ta*fa-$a*Kn,Qa=(Cn*Ta-ln*$a)/Co/2,mo=(ln*fa-Cn*Kn)/Co;n(mo)>2&&(mo/=2),tr-=Qa,dr-=mo}while((n(Qa)>p||n(mo)>p)&&--Sr>0);return Be*dr>-a(o(tr),et)-.001?[tr*2,dr]:null},it}function ie(){var ve=20*T,be=ve>=0?1:-1,De=b(be*ve),Be=t.geoProjectionMutator(me),et=Be(ve),We=et.stream;return et.parallel=function(it){return arguments.length?(De=b((be=(ve=it*T)>=0?1:-1)*ve),Be(ve)):ve*P},et.stream=function(it){var Ft=et.rotate(),Ht=We(it),tr=(et.rotate([0,0]),We(it)),dr=et.precision();return et.rotate(Ft),Ht.sphere=function(){tr.polygonStart(),tr.lineStart();for(var Sr=be*-180;be*Sr<180;Sr+=be*90)tr.point(Sr,be*90);if(ve)for(;be*(Sr-=3*be*dr)>=-180;)tr.point(Sr,be*-a(o(Sr*T/2),De)*P);tr.lineEnd(),tr.polygonEnd()},Ht},et.scale(218.695).center([0,28.0974])}function Se(ve,be){var De=b(be/2),Be=G(1-De*De),et=1+Be*o(ve/=2),We=_(ve)*Be/et,it=De/et,Ft=We*We,Ht=it*it;return[4/3*We*(3+Ft-3*Ht),4/3*it*(3+3*Ft-Ht)]}Se.invert=function(ve,be){if(ve*=3/8,be*=3/8,!ve&&n(be)>1)return null;var De=ve*ve,Be=be*be,et=1+De+Be,We=G((et-G(et*et-4*be*be))/2),it=O(We)/3,Ft=We?re(n(be/We))/3:j(n(ve))/3,Ht=o(it),tr=N(Ft),dr=tr*tr-Ht*Ht;return[v(ve)*2*a(H(Ft)*Ht,.25-dr),v(be)*2*a(tr*_(it),.25+dr)]};function Le(){return t.geoProjection(Se).scale(66.1603)}var Ae=G(8),Fe=u(1+C);function Pe(ve,be){var De=n(be);return Dek&&--Be>0);return[ve/(o(De)*(Ae-1/_(De))),v(be)*De]};function ge(){return t.geoProjection(Pe).scale(112.314)}function Re(ve){var be=2*E/ve;function De(Be,et){var We=t.geoAzimuthalEquidistantRaw(Be,et);if(n(Be)>S){var it=a(We[1],We[0]),Ft=G(We[0]*We[0]+We[1]*We[1]),Ht=be*d((it-S)/be)+S,tr=a(_(it-=Ht),2-o(it));it=Ht+O(E/Ft*_(tr))-tr,We[0]=Ft*o(it),We[1]=Ft*_(it)}return We}return De.invert=function(Be,et){var We=G(Be*Be+et*et);if(We>S){var it=a(et,Be),Ft=be*d((it-S)/be)+S,Ht=it>Ft?-1:1,tr=We*o(Ft-it),dr=1/b(Ht*V((tr-E)/G(E*(E-2*tr)+We*We)));it=Ft+2*i((dr+Ht*G(dr*dr-3))/3),Be=We*o(it),et=We*_(it)}return t.geoAzimuthalEquidistantRaw.invert(Be,et)},De}function ce(){var ve=5,be=t.geoProjectionMutator(Re),De=be(ve),Be=De.stream,et=.01,We=-o(et*T),it=_(et*T);return De.lobes=function(Ft){return arguments.length?be(ve=+Ft):ve},De.stream=function(Ft){var Ht=De.rotate(),tr=Be(Ft),dr=(De.rotate([0,0]),Be(Ft));return De.rotate(Ht),tr.sphere=function(){dr.polygonStart(),dr.lineStart();for(var Sr=0,Or=360/ve,Wr=2*E/ve,ni=90-180/ve,Pi=S;Sr0&&n(et)>p);return Be<0?NaN:De}function st(ve,be,De){return be===void 0&&(be=40),De===void 0&&(De=k),function(Be,et,We,it){var Ft,Ht,tr;We=We===void 0?0:+We,it=it===void 0?0:+it;for(var dr=0;drFt){We-=Ht/=2,it-=tr/=2;continue}Ft=ni;var Pi=(We>0?-1:1)*De,cn=(it>0?-1:1)*De,ln=ve(We+Pi,it),Cn=ve(We,it+cn),Kn=(ln[0]-Sr[0])/Pi,Ta=(ln[1]-Sr[1])/Pi,fa=(Cn[0]-Sr[0])/cn,$a=(Cn[1]-Sr[1])/cn,Co=$a*Kn-Ta*fa,Qa=(n(Co)<.5?.5:1)/Co;if(Ht=(Wr*fa-Or*$a)*Qa,tr=(Or*Ta-Wr*Kn)*Qa,We+=Ht,it+=tr,n(Ht)0&&(Ft[1]*=1+Ht/1.5*Ft[0]*Ft[0]),Ft}return Be.invert=st(Be),Be}function Gt(){return t.geoProjection(lt()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function Nt(ve,be){var De=ve*_(be),Be=30,et;do be-=et=(be+_(be)-De)/(1+o(be));while(n(et)>p&&--Be>0);return be/2}function Jt(ve,be,De){function Be(et,We){return[ve*et*o(We=Nt(De,We)),be*_(We)]}return Be.invert=function(et,We){return We=O(We/be),[et/(ve*o(We)),O((2*We+_(2*We))/De)]},Be}var sr=Jt(C/S,C,E);function wr(){return t.geoProjection(sr).scale(169.529)}var cr=2.00276,$e=1.11072;function St(ve,be){var De=Nt(E,be);return[cr*ve/(1/o(be)+$e/o(De)),(be+C*_(De))/cr]}St.invert=function(ve,be){var De=cr*be,Be=be<0?-L:L,et=25,We,it;do it=De-C*_(Be),Be-=We=(_(2*Be)+2*Be-E*_(it))/(2*o(2*Be)+2+E*o(it)*C*o(Be));while(n(We)>p&&--et>0);return it=De-C*_(Be),[ve*(1/o(it)+$e/o(Be))/cr,it]};function Qt(){return t.geoProjection(St).scale(160.857)}function Vt(ve){var be=0,De=t.geoProjectionMutator(ve),Be=De(be);return Be.parallel=function(et){return arguments.length?De(be=et*T):be*P},Be}function _t(ve,be){return[ve*o(be),be]}_t.invert=function(ve,be){return[ve/o(be),be]};function It(){return t.geoProjection(_t).scale(152.63)}function mt(ve){if(!ve)return _t;var be=1/b(ve);function De(Be,et){var We=be+ve-et,it=We&&Be*o(et)/We;return[We*_(it),be-We*o(it)]}return De.invert=function(Be,et){var We=G(Be*Be+(et=be-et)*et),it=be+ve-We;return[We/o(it)*a(Be,et),it]},De}function er(){return Vt(mt).scale(123.082).center([0,26.1441]).parallel(45)}function lr(ve){function be(De,Be){var et=S-Be,We=et&&De*ve*_(et)/et;return[et*_(We)/ve,S-et*o(We)]}return be.invert=function(De,Be){var et=De*ve,We=S-Be,it=G(et*et+We*We),Ft=a(et,We);return[(it?it/_(it):1)*Ft/ve,S-it]},be}function Tr(){var ve=.5,be=t.geoProjectionMutator(lr),De=be(ve);return De.fraction=function(Be){return arguments.length?be(ve=+Be):ve},De.scale(158.837)}var Lr=Jt(1,4/E,E);function ti(){return t.geoProjection(Lr).scale(152.63)}function Br(ve,be,De,Be,et,We){var it=o(We),Ft;if(n(ve)>1||n(We)>1)Ft=V(De*et+be*Be*it);else{var Ht=_(ve/2),tr=_(We/2);Ft=2*O(G(Ht*Ht+be*Be*tr*tr))}return n(Ft)>p?[Ft,a(Be*_(We),be*et-De*Be*it)]:[0,0]}function Vr(ve,be,De){return V((ve*ve+be*be-De*De)/(2*ve*be))}function dt(ve){return ve-2*E*l((ve+E)/(2*E))}function Ge(ve,be,De){for(var Be=[[ve[0],ve[1],_(ve[1]),o(ve[1])],[be[0],be[1],_(be[1]),o(be[1])],[De[0],De[1],_(De[1]),o(De[1])]],et=Be[2],We,it=0;it<3;++it,et=We)We=Be[it],et.v=Br(We[1]-et[1],et[3],et[2],We[3],We[2],We[0]-et[0]),et.point=[0,0];var Ft=Vr(Be[0].v[0],Be[2].v[0],Be[1].v[0]),Ht=Vr(Be[0].v[0],Be[1].v[0],Be[2].v[0]),tr=E-Ft;Be[2].point[1]=0,Be[0].point[0]=-(Be[1].point[0]=Be[0].v[0]/2);var dr=[Be[2].point[0]=Be[0].point[0]+Be[2].v[0]*o(Ft),2*(Be[0].point[1]=Be[1].point[1]=Be[2].v[0]*_(Ft))];function Sr(Or,Wr){var ni=_(Wr),Pi=o(Wr),cn=new Array(3),ln;for(ln=0;ln<3;++ln){var Cn=Be[ln];if(cn[ln]=Br(Wr-Cn[1],Cn[3],Cn[2],Pi,ni,Or-Cn[0]),!cn[ln][0])return Cn.point;cn[ln][1]=dt(cn[ln][1]-Cn.v[1])}var Kn=dr.slice();for(ln=0;ln<3;++ln){var Ta=ln==2?0:ln+1,fa=Vr(Be[ln].v[0],cn[ln][0],cn[Ta][0]);cn[ln][1]<0&&(fa=-fa),ln?ln==1?(fa=Ht-fa,Kn[0]-=cn[ln][0]*o(fa),Kn[1]-=cn[ln][0]*_(fa)):(fa=tr-fa,Kn[0]+=cn[ln][0]*o(fa),Kn[1]+=cn[ln][0]*_(fa)):(Kn[0]+=cn[ln][0]*o(fa),Kn[1]-=cn[ln][0]*_(fa))}return Kn[0]/=3,Kn[1]/=3,Kn}return Sr}function Je(ve){return ve[0]*=T,ve[1]*=T,ve}function je(){return tt([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function tt(ve,be,De){var Be=t.geoCentroid({type:"MultiPoint",coordinates:[ve,be,De]}),et=[-Be[0],-Be[1]],We=t.geoRotation(et),it=Ge(Je(We(ve)),Je(We(be)),Je(We(De)));it.invert=st(it);var Ft=t.geoProjection(it).rotate(et),Ht=Ft.center;return delete Ft.rotate,Ft.center=function(tr){return arguments.length?Ht(We(tr)):We.invert(Ht())},Ft.clipAngle(90)}function xt(ve,be){var De=G(1-_(be));return[2/M*ve*De,M*(1-De)]}xt.invert=function(ve,be){var De=(De=be/M-1)*De;return[De>0?ve*G(E/De)/2:0,O(1-De)]};function Ie(){return t.geoProjection(xt).scale(95.6464).center([0,30])}function xe(ve){var be=b(ve);function De(Be,et){return[Be,(Be?Be/_(Be):1)*(_(et)*o(Be)-be*o(et))]}return De.invert=be?function(Be,et){Be&&(et*=_(Be)/Be);var We=o(Be);return[Be,2*a(G(We*We+be*be-et*et)-We,be-et)]}:function(Be,et){return[Be,O(Be?et*b(Be)/Be:et)]},De}function ke(){return Vt(xe).scale(249.828).clipAngle(90)}var vt=G(3);function ir(ve,be){return[vt*ve*(2*o(2*be/3)-1)/M,vt*M*_(be/3)]}ir.invert=function(ve,be){var De=3*O(be/(vt*M));return[M*ve/(vt*(2*o(2*De/3)-1)),De]};function ar(){return t.geoProjection(ir).scale(156.19)}function vr(ve){var be=o(ve);function De(Be,et){return[Be*be,_(et)/be]}return De.invert=function(Be,et){return[Be/be,O(et*be)]},De}function ii(){return Vt(vr).parallel(38.58).scale(195.044)}function pi(ve){var be=o(ve);function De(Be,et){return[Be*be,(1+be)*b(et/2)]}return De.invert=function(Be,et){return[Be/be,i(et/(1+be))*2]},De}function $r(){return Vt(pi).scale(124.75)}function di(ve,be){var De=G(8/(3*E));return[De*ve*(1-n(be)/E),De*be]}di.invert=function(ve,be){var De=G(8/(3*E)),Be=be/De;return[ve/(De*(1-n(Be)/E)),Be]};function ji(){return t.geoProjection(di).scale(165.664)}function In(ve,be){var De=G(4-3*_(n(be)));return[2/G(6*E)*ve*De,v(be)*G(2*E/3)*(2-De)]}In.invert=function(ve,be){var De=2-n(be)/G(2*E/3);return[ve*G(6*E)/(2*De),v(be)*O((4-De*De)/3)]};function wi(){return t.geoProjection(In).scale(165.664)}function On(ve,be){var De=G(E*(4+E));return[2/De*ve*(1+G(1-4*be*be/(E*E))),4/De*be]}On.invert=function(ve,be){var De=G(E*(4+E))/2;return[ve*De/(1+G(1-be*be*(4+E)/(4*E))),be*De/2]};function qn(){return t.geoProjection(On).scale(180.739)}function Fn(ve,be){var De=(2+S)*_(be);be/=2;for(var Be=0,et=1/0;Be<10&&n(et)>p;Be++){var We=o(be);be-=et=(be+_(be)*(We+2)-De)/(2*We*(1+We))}return[2/G(E*(4+E))*ve*(1+o(be)),2*G(E/(4+E))*_(be)]}Fn.invert=function(ve,be){var De=be*G((4+E)/E)/2,Be=O(De),et=o(Be);return[ve/(2/G(E*(4+E))*(1+et)),O((Be+De*(et+2))/(2+S))]};function ra(){return t.geoProjection(Fn).scale(180.739)}function la(ve,be){return[ve*(1+o(be))/G(2+E),2*be/G(2+E)]}la.invert=function(ve,be){var De=G(2+E),Be=be*De/2;return[De*ve/(1+o(Be)),Be]};function Ut(){return t.geoProjection(la).scale(173.044)}function wt(ve,be){for(var De=(1+S)*_(be),Be=0,et=1/0;Be<10&&n(et)>p;Be++)be-=et=(be+_(be)-De)/(1+o(be));return De=G(2+E),[ve*(1+o(be))/De,2*be/De]}wt.invert=function(ve,be){var De=1+S,Be=G(De/2);return[ve*2*Be/(1+o(be*=Be)),O((be+_(be))/De)]};function rr(){return t.geoProjection(wt).scale(173.044)}var nr=3+2*C;function Er(ve,be){var De=_(ve/=2),Be=o(ve),et=G(o(be)),We=o(be/=2),it=_(be)/(We+C*Be*et),Ft=G(2/(1+it*it)),Ht=G((C*We+(Be+De)*et)/(C*We+(Be-De)*et));return[nr*(Ft*(Ht-1/Ht)-2*u(Ht)),nr*(Ft*it*(Ht+1/Ht)-2*i(it))]}Er.invert=function(ve,be){if(!(We=Se.invert(ve/1.2,be*1.065)))return null;var De=We[0],Be=We[1],et=20,We;ve/=nr,be/=nr;do{var it=De/2,Ft=Be/2,Ht=_(it),tr=o(it),dr=_(Ft),Sr=o(Ft),Or=o(Be),Wr=G(Or),ni=dr/(Sr+C*tr*Wr),Pi=ni*ni,cn=G(2/(1+Pi)),ln=C*Sr+(tr+Ht)*Wr,Cn=C*Sr+(tr-Ht)*Wr,Kn=ln/Cn,Ta=G(Kn),fa=Ta-1/Ta,$a=Ta+1/Ta,Co=cn*fa-2*u(Ta)-ve,Qa=cn*ni*$a-2*i(ni)-be,mo=dr&&x*Wr*Ht*Pi/dr,Bo=(C*tr*Sr+Wr)/(2*(Sr+C*tr*Wr)*(Sr+C*tr*Wr)*Wr),Ps=-.5*ni*cn*cn*cn,Ts=Ps*mo,wo=Ps*Bo,To=(To=2*Sr+C*Wr*(tr-Ht))*To*Ta,hl=(C*tr*Sr*Wr+Or)/To,Ul=-(C*Ht*dr)/(Wr*To),Lu=fa*Ts-2*hl/Ta+cn*(hl+hl/Kn),au=fa*wo-2*Ul/Ta+cn*(Ul+Ul/Kn),Js=ni*$a*Ts-2*mo/(1+Pi)+cn*$a*mo+cn*ni*(hl-hl/Kn),Ql=ni*$a*wo-2*Bo/(1+Pi)+cn*$a*Bo+cn*ni*(Ul-Ul/Kn),dc=au*Js-Ql*Lu;if(!dc)break;var Tl=(Qa*au-Co*Ql)/dc,Al=(Co*Js-Qa*Lu)/dc;De-=Tl,Be=c(-S,f(S,Be-Al))}while((n(Tl)>p||n(Al)>p)&&--et>0);return n(n(Be)-S)Be){var Sr=G(dr),Or=a(tr,Ht),Wr=De*d(Or/De),ni=Or-Wr,Pi=ve*o(ni),cn=(ve*_(ni)-ni*_(Pi))/(S-Pi),ln=Wa(ni,cn),Cn=(E-ve)/Fa(ln,Pi,E);Ht=Sr;var Kn=50,Ta;do Ht-=Ta=(ve+Fa(ln,Pi,Ht)*Cn-Sr)/(ln(Ht)*Cn);while(n(Ta)>p&&--Kn>0);tr=ni*_(Ht),HtBe){var Ht=G(Ft),tr=a(it,We),dr=De*d(tr/De),Sr=tr-dr;We=Ht*o(Sr),it=Ht*_(Sr);for(var Or=We-S,Wr=_(We),ni=it/Wr,Pi=Wep||n(ni)>p)&&--Pi>0);return[Sr,Or]},Ht}var Wn=da(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function Ga(){return t.geoProjection(Wn).scale(149.995)}var vo=da(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function jn(){return t.geoProjection(vo).scale(153.93)}var Mt=da(5/6*E,-.62636,-.0344,0,1.3493,-.05524,0,.045);function kr(){return t.geoProjection(Mt).scale(130.945)}function Jr(ve,be){var De=ve*ve,Be=be*be;return[ve*(1-.162388*Be)*(.87-952426e-9*De*De),be*(1+Be/12)]}Jr.invert=function(ve,be){var De=ve,Be=be,et=50,We;do{var it=Be*Be;Be-=We=(Be*(1+it/12)-be)/(1+it/4)}while(n(We)>p&&--et>0);et=50,ve/=1-.162388*it;do{var Ft=(Ft=De*De)*Ft;De-=We=(De*(.87-952426e-9*Ft)-ve)/(.87-.00476213*Ft)}while(n(We)>p&&--et>0);return[De,Be]};function vi(){return t.geoProjection(Jr).scale(131.747)}var hn=da(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function An(){return t.geoProjection(hn).scale(131.087)}function Mn(ve){var be=ve(S,0)[0]-ve(-S,0)[0];function De(Be,et){var We=Be>0?-.5:.5,it=ve(Be+We*E,et);return it[0]-=We*be,it}return ve.invert&&(De.invert=function(Be,et){var We=Be>0?-.5:.5,it=ve.invert(Be+We*be,et),Ft=it[0]-We*E;return Ft<-E?Ft+=2*E:Ft>E&&(Ft-=2*E),it[0]=Ft,it}),De}function Li(ve,be){var De=v(ve),Be=v(be),et=o(be),We=o(ve)*et,it=_(ve)*et,Ft=_(Be*be);ve=n(a(it,Ft)),be=O(We),n(ve-S)>p&&(ve%=S);var Ht=_n(ve>E/4?S-ve:ve,be);return ve>E/4&&(Ft=Ht[0],Ht[0]=-Ht[1],Ht[1]=-Ft),Ht[0]*=De,Ht[1]*=-Be,Ht}Li.invert=function(ve,be){n(ve)>1&&(ve=v(ve)*2-ve),n(be)>1&&(be=v(be)*2-be);var De=v(ve),Be=v(be),et=-De*ve,We=-Be*be,it=We/et<1,Ft=ya(it?We:et,it?et:We),Ht=Ft[0],tr=Ft[1],dr=o(tr);return it&&(Ht=-S-Ht),[De*(a(_(Ht)*dr,-_(tr))+E),Be*O(o(Ht)*dr)]};function _n(ve,be){if(be===S)return[0,0];var De=_(be),Be=De*De,et=Be*Be,We=1+et,it=1+3*et,Ft=1-et,Ht=O(1/G(We)),tr=Ft+Be*We*Ht,dr=(1-De)/tr,Sr=G(dr),Or=dr*We,Wr=G(Or),ni=Sr*Ft,Pi,cn;if(ve===0)return[0,-(ni+Be*Wr)];var ln=o(be),Cn=1/ln,Kn=2*De*ln,Ta=(-3*Be+Ht*it)*Kn,fa=(-tr*ln-(1-De)*Ta)/(tr*tr),$a=.5*fa/Sr,Co=Ft*$a-2*Be*Sr*Kn,Qa=Be*We*fa+dr*it*Kn,mo=-Cn*Kn,Bo=-Cn*Qa,Ps=-2*Cn*Co,Ts=4*ve/E,wo;if(ve>.222*E||be.175*E){if(Pi=(ni+Be*G(Or*(1+et)-ni*ni))/(1+et),ve>E/4)return[Pi,Pi];var To=Pi,hl=.5*Pi;Pi=.5*(hl+To),cn=50;do{var Ul=G(Or-Pi*Pi),Lu=Pi*(Ps+mo*Ul)+Bo*O(Pi/Wr)-Ts;if(!Lu)break;Lu<0?hl=Pi:To=Pi,Pi=.5*(hl+To)}while(n(To-hl)>p&&--cn>0)}else{Pi=p,cn=25;do{var au=Pi*Pi,Js=G(Or-au),Ql=Ps+mo*Js,dc=Pi*Ql+Bo*O(Pi/Wr)-Ts,Tl=Ql+(Bo-mo*au)/Js;Pi-=wo=Js?dc/Tl:0}while(n(wo)>p&&--cn>0)}return[Pi,-ni-Be*G(Or-Pi*Pi)]}function ya(ve,be){for(var De=0,Be=1,et=.5,We=50;;){var it=et*et,Ft=G(et),Ht=O(1/G(1+it)),tr=1-it+et*(1+it)*Ht,dr=(1-Ft)/tr,Sr=G(dr),Or=dr*(1+it),Wr=Sr*(1-it),ni=Or-ve*ve,Pi=G(ni),cn=be+Wr+et*Pi;if(n(Be-De)0?De=et:Be=et,et=.5*(De+Be)}if(!We)return null;var ln=O(Ft),Cn=o(ln),Kn=1/Cn,Ta=2*Ft*Cn,fa=(-3*et+Ht*(1+3*it))*Ta,$a=(-tr*Cn-(1-Ft)*fa)/(tr*tr),Co=.5*$a/Sr,Qa=(1-it)*Co-2*et*Sr*Ta,mo=-2*Kn*Qa,Bo=-Kn*Ta,Ps=-Kn*(et*(1+it)*$a+dr*(1+3*it)*Ta);return[E/4*(ve*(mo+Bo*Pi)+Ps*O(ve/G(Or))),ln]}function Jn(){return t.geoProjection(Mn(Li)).scale(239.75)}function Ma(ve,be,De){var Be,et,We;return ve?(Be=_o(ve,De),be?(et=_o(be,1-De),We=et[1]*et[1]+De*Be[0]*Be[0]*et[0]*et[0],[[Be[0]*et[2]/We,Be[1]*Be[2]*et[0]*et[1]/We],[Be[1]*et[1]/We,-Be[0]*Be[2]*et[0]*et[2]/We],[Be[2]*et[1]*et[2]/We,-De*Be[0]*Be[1]*et[0]/We]]):[[Be[0],0],[Be[1],0],[Be[2],0]]):(et=_o(be,1-De),[[0,et[0]/et[1]],[1/et[1],0],[et[2]/et[1],0]])}function _o(ve,be){var De,Be,et,We,it;if(be=1-p)return De=(1-be)/4,Be=N(ve),We=Z(ve),et=1/Be,it=Be*H(ve),[We+De*(it-ve)/(Be*Be),et-De*We*et*(it-ve),et+De*We*et*(it+ve),2*i(s(ve))-S+De*(it-ve)/Be];var Ft=[1,0,0,0,0,0,0,0,0],Ht=[G(be),0,0,0,0,0,0,0,0],tr=0;for(Be=G(1-be),it=1;n(Ht[tr]/Ft[tr])>p&&tr<8;)De=Ft[tr++],Ht[tr]=(De-Be)/2,Ft[tr]=(De+Be)/2,Be=G(De*Be),it*=2;et=it*Ft[tr]*ve;do We=Ht[tr]*_(Be=et)/Ft[tr],et=(O(We)+et)/2;while(--tr);return[_(et),We=o(et),We/o(et-Be),et]}function No(ve,be,De){var Be=n(ve),et=n(be),We=H(et);if(Be){var it=1/_(Be),Ft=1/(b(Be)*b(Be)),Ht=-(Ft+De*(We*We*it*it)-1+De),tr=(De-1)*Ft,dr=(-Ht+G(Ht*Ht-4*tr))/2;return[po(i(1/G(dr)),De)*v(ve),po(i(G((dr/Ft-1)/De)),1-De)*v(be)]}return[0,po(i(We),1-De)*v(be)]}function po(ve,be){if(!be)return ve;if(be===1)return u(b(ve/2+L));for(var De=1,Be=G(1-be),et=G(be),We=0;n(et)>p;We++){if(ve%E){var it=i(Be*b(ve)/De);it<0&&(it+=E),ve+=it+~~(ve/E)*E}else ve+=ve;et=(De+Be)/2,Be=G(De*Be),et=((De=et)-Be)/2}return ve/(h(2,We)*De)}function Lo(ve,be){var De=(C-1)/(C+1),Be=G(1-De*De),et=po(S,Be*Be),We=-1,it=u(b(E/4+n(be)/2)),Ft=s(We*it)/G(De),Ht=ko(Ft*o(We*ve),Ft*_(We*ve)),tr=No(Ht[0],Ht[1],Be*Be);return[-tr[1],(be>=0?1:-1)*(.5*et-tr[0])]}function ko(ve,be){var De=ve*ve,Be=be+1,et=1-De-be*be;return[.5*((ve>=0?S:-S)-a(et,2*ve)),-.25*u(et*et+4*De)+.5*u(Be*Be+De)]}function Ds(ve,be){var De=be[0]*be[0]+be[1]*be[1];return[(ve[0]*be[0]+ve[1]*be[1])/De,(ve[1]*be[0]-ve[0]*be[1])/De]}Lo.invert=function(ve,be){var De=(C-1)/(C+1),Be=G(1-De*De),et=po(S,Be*Be),We=-1,it=Ma(.5*et-be,-ve,Be*Be),Ft=Ds(it[0],it[1]),Ht=a(Ft[1],Ft[0])/We;return[Ht,2*i(s(.5/We*u(De*Ft[0]*Ft[0]+De*Ft[1]*Ft[1])))-S]};function Fs(){return t.geoProjection(Mn(Lo)).scale(151.496)}function ll(ve){var be=_(ve),De=o(ve),Be=ul(ve);Be.invert=ul(-ve);function et(We,it){var Ft=Be(We,it);We=Ft[0],it=Ft[1];var Ht=_(it),tr=o(it),dr=o(We),Sr=V(be*Ht+De*tr*dr),Or=_(Sr),Wr=n(Or)>p?Sr/Or:1;return[Wr*De*_(We),(n(We)>S?Wr:-Wr)*(be*tr-De*Ht*dr)]}return et.invert=function(We,it){var Ft=G(We*We+it*it),Ht=-_(Ft),tr=o(Ft),dr=Ft*tr,Sr=-it*Ht,Or=Ft*be,Wr=G(dr*dr+Sr*Sr-Or*Or),ni=a(dr*Or+Sr*Wr,Sr*Or-dr*Wr),Pi=(Ft>S?-1:1)*a(We*Ht,Ft*o(ni)*tr+it*_(ni)*Ht);return Be.invert(Pi,ni)},et}function ul(ve){var be=_(ve),De=o(ve);return function(Be,et){var We=o(et),it=o(Be)*We,Ft=_(Be)*We,Ht=_(et);return[a(Ft,it*De-Ht*be),O(Ht*De+it*be)]}}function zl(){var ve=0,be=t.geoProjectionMutator(ll),De=be(ve),Be=De.rotate,et=De.stream,We=t.geoCircle();return De.parallel=function(it){if(!arguments.length)return ve*P;var Ft=De.rotate();return be(ve=it*T).rotate(Ft)},De.rotate=function(it){return arguments.length?(Be.call(De,[it[0],it[1]-ve*P]),We.center([-it[0],-it[1]]),De):(it=Be.call(De),it[1]+=ve*P,it)},De.stream=function(it){return it=et(it),it.sphere=function(){it.polygonStart();var Ft=.01,Ht=We.radius(90-Ft)().coordinates[0],tr=Ht.length-1,dr=-1,Sr;for(it.lineStart();++dr=0;)it.point((Sr=Ht[dr])[0],Sr[1]);it.lineEnd(),it.polygonEnd()},it},De.scale(79.4187).parallel(45).clipAngle(180-.001)}var us=3,il=O(1-1/us)*P,As=vr(0);function cl(ve){var be=il*T,De=xt(E,be)[0]-xt(-E,be)[0],Be=As(0,be)[1],et=xt(0,be)[1],We=M-et,it=g/ve,Ft=4/g,Ht=Be+We*We*4/g;function tr(dr,Sr){var Or,Wr=n(Sr);if(Wr>be){var ni=f(ve-1,c(0,l((dr+E)/it)));dr+=E*(ve-1)/ve-ni*it,Or=xt(dr,Wr),Or[0]=Or[0]*g/De-g*(ve-1)/(2*ve)+ni*g/ve,Or[1]=Be+(Or[1]-et)*4*We/g,Sr<0&&(Or[1]=-Or[1])}else Or=As(dr,Sr);return Or[0]*=Ft,Or[1]/=Ht,Or}return tr.invert=function(dr,Sr){dr/=Ft,Sr*=Ht;var Or=n(Sr);if(Or>Be){var Wr=f(ve-1,c(0,l((dr+E)/it)));dr=(dr+E*(ve-1)/ve-Wr*it)*De/g;var ni=xt.invert(dr,.25*(Or-Be)*g/We+et);return ni[0]-=E*(ve-1)/ve-Wr*it,Sr<0&&(ni[1]=-ni[1]),ni}return As.invert(dr,Sr)},tr}function Ks(ve,be){return[ve,be&1?90-p:il]}function zs(ve,be){return[ve,be&1?-90+p:-il]}function Io(ve){return[ve[0]*(1-p),ve[1]]}function ls(ve){var be=[].concat(r.range(-180,180+ve/2,ve).map(Ks),r.range(180,-180-ve/2,-ve).map(zs));return{type:"Polygon",coordinates:[ve===180?be.map(Io):be]}}function Zl(){var ve=4,be=t.geoProjectionMutator(cl),De=be(ve),Be=De.stream;return De.lobes=function(et){return arguments.length?be(ve=+et):ve},De.stream=function(et){var We=De.rotate(),it=Be(et),Ft=(De.rotate([0,0]),Be(et));return De.rotate(We),it.sphere=function(){t.geoStream(ls(180/ve),Ft)},it},De.scale(239.75)}function Su(ve){var be=1+ve,De=_(1/be),Be=O(De),et=2*G(E/(We=E+4*Be*be)),We,it=.5*et*(be+G(ve*(2+ve))),Ft=ve*ve,Ht=be*be;function tr(dr,Sr){var Or=1-_(Sr),Wr,ni;if(Or&&Or<2){var Pi=S-Sr,cn=25,ln;do{var Cn=_(Pi),Kn=o(Pi),Ta=Be+a(Cn,be-Kn),fa=1+Ht-2*be*Kn;Pi-=ln=(Pi-Ft*Be-be*Cn+fa*Ta-.5*Or*We)/(2*be*Cn*Ta)}while(n(ln)>k&&--cn>0);Wr=et*G(fa),ni=dr*Ta/E}else Wr=et*(ve+Or),ni=dr*Be/E;return[Wr*_(ni),it-Wr*o(ni)]}return tr.invert=function(dr,Sr){var Or=dr*dr+(Sr-=it)*Sr,Wr=(1+Ht-Or/(et*et))/(2*be),ni=V(Wr),Pi=_(ni),cn=Be+a(Pi,be-Wr);return[O(dr/G(Or))*E/cn,O(1-2*(ni-Ft*Be-be*Pi+(1+Ht-2*be*Wr)*cn)/We)]},tr}function nc(){var ve=1,be=t.geoProjectionMutator(Su),De=be(ve);return De.ratio=function(Be){return arguments.length?be(ve=+Be):ve},De.scale(167.774).center([0,18.67])}var bs=.7109889596207567,Rn=.0528035274542;function _a(ve,be){return be>-bs?(ve=sr(ve,be),ve[1]+=Rn,ve):_t(ve,be)}_a.invert=function(ve,be){return be>-bs?sr.invert(ve,be-Rn):_t.invert(ve,be)};function Vu(){return t.geoProjection(_a).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function Ol(ve,be){return n(be)>bs?(ve=sr(ve,be),ve[1]-=be>0?Rn:-Rn,ve):_t(ve,be)}Ol.invert=function(ve,be){return n(be)>bs?sr.invert(ve,be+(be>0?Rn:-Rn)):_t.invert(ve,be)};function xo(){return t.geoProjection(Ol).scale(152.63)}function Yl(ve,be,De,Be){var et=G(4*E/(2*De+(1+ve-be/2)*_(2*De)+(ve+be)/2*_(4*De)+be/2*_(6*De))),We=G(Be*_(De)*G((1+ve*o(2*De)+be*o(4*De))/(1+ve+be))),it=De*Ht(1);function Ft(Sr){return G(1+ve*o(2*Sr)+be*o(4*Sr))}function Ht(Sr){var Or=Sr*De;return(2*Or+(1+ve-be/2)*_(2*Or)+(ve+be)/2*_(4*Or)+be/2*_(6*Or))/De}function tr(Sr){return Ft(Sr)*_(Sr)}var dr=function(Sr,Or){var Wr=De*Zt(Ht,it*_(Or)/De,Or/E);isNaN(Wr)&&(Wr=De*v(Or));var ni=et*Ft(Wr);return[ni*We*Sr/E*o(Wr),ni/We*_(Wr)]};return dr.invert=function(Sr,Or){var Wr=Zt(tr,Or*We/et);return[Sr*E/(o(Wr)*et*We*Ft(Wr)),O(De*Ht(Wr/De)/it)]},De===0&&(et=G(Be/E),dr=function(Sr,Or){return[Sr*et,_(Or)/et]},dr.invert=function(Sr,Or){return[Sr/et,O(Or*et)]}),dr}function Ns(){var ve=1,be=0,De=45*T,Be=2,et=t.geoProjectionMutator(Yl),We=et(ve,be,De,Be);return We.a=function(it){return arguments.length?et(ve=+it,be,De,Be):ve},We.b=function(it){return arguments.length?et(ve,be=+it,De,Be):be},We.psiMax=function(it){return arguments.length?et(ve,be,De=+it*T,Be):De*P},We.ratio=function(it){return arguments.length?et(ve,be,De,Be=+it):Be},We.scale(180.739)}function Hl(ve,be,De,Be,et,We,it,Ft,Ht,tr,dr){if(dr.nanEncountered)return NaN;var Sr,Or,Wr,ni,Pi,cn,ln,Cn,Kn,Ta;if(Sr=De-be,Or=ve(be+Sr*.25),Wr=ve(De-Sr*.25),isNaN(Or)){dr.nanEncountered=!0;return}if(isNaN(Wr)){dr.nanEncountered=!0;return}return ni=Sr*(Be+4*Or+et)/12,Pi=Sr*(et+4*Wr+We)/12,cn=ni+Pi,Ta=(cn-it)/15,tr>Ht?(dr.maxDepthCount++,cn+Ta):Math.abs(Ta)>1;do Ht[cn]>Wr?Pi=cn:ni=cn,cn=ni+Pi>>1;while(cn>ni);var ln=Ht[cn+1]-Ht[cn];return ln&&(ln=(Wr-Ht[cn+1])/ln),(cn+1+ln)/it}var Sr=2*dr(1)/E*We/De,Or=function(Wr,ni){var Pi=dr(n(_(ni))),cn=Be(Pi)*Wr;return Pi/=Sr,[cn,ni>=0?Pi:-Pi]};return Or.invert=function(Wr,ni){var Pi;return ni*=Sr,n(ni)<1&&(Pi=v(ni)*O(et(n(ni))*We)),[Wr/Be(n(ni)),Pi]},Or}function Oo(){var ve=0,be=2.5,De=1.183136,Be=t.geoProjectionMutator(aa),et=Be(ve,be,De);return et.alpha=function(We){return arguments.length?Be(ve=+We,be,De):ve},et.k=function(We){return arguments.length?Be(ve,be=+We,De):be},et.gamma=function(We){return arguments.length?Be(ve,be,De=+We):De},et.scale(152.63)}function qo(ve,be){return n(ve[0]-be[0])=0;--Ht)De=ve[1][Ht],Be=De[0][0],et=De[0][1],We=De[1][1],it=De[2][0],Ft=De[2][1],be.push(ql([[it-p,Ft-p],[it-p,We+p],[Be+p,We+p],[Be+p,et-p]],30));return{type:"Polygon",coordinates:[r.merge(be)]}}function Do(ve,be,De){var Be,et;function We(Ht,tr){for(var dr=tr<0?-1:1,Sr=be[+(tr<0)],Or=0,Wr=Sr.length-1;OrSr[Or][2][0];++Or);var ni=ve(Ht-Sr[Or][1][0],tr);return ni[0]+=ve(Sr[Or][1][0],dr*tr>dr*Sr[Or][0][1]?Sr[Or][0][1]:tr)[0],ni}De?We.invert=De(We):ve.invert&&(We.invert=function(Ht,tr){for(var dr=et[+(tr<0)],Sr=be[+(tr<0)],Or=0,Wr=dr.length;Orni&&(Pi=Wr,Wr=ni,ni=Pi),[[Sr,Wr],[Or,ni]]})}),it):be.map(function(tr){return tr.map(function(dr){return[[dr[0][0]*P,dr[0][1]*P],[dr[1][0]*P,dr[1][1]*P],[dr[2][0]*P,dr[2][1]*P]]})})},be!=null&&it.lobes(be),it}var rf=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Uf(){return Do(St,rf).scale(160.857)}var pl=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Zc(){return Do(Ol,pl).scale(152.63)}var Kl=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Os(){return Do(sr,Kl).scale(169.529)}var yu=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function oc(){return Do(sr,yu).scale(169.529).rotate([20,0])}var Cf=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function sc(){return Do(_a,Cf,st).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var Vh=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function Lf(){return Do(_t,Vh).scale(152.63).rotate([-20,0])}function cs(ve,be){return[3/g*ve*G(E*E/3-be*be),be]}cs.invert=function(ve,be){return[g/3*ve/G(E*E/3-be*be),be]};function nf(){return t.geoProjection(cs).scale(158.837)}function Vf(ve){function be(De,Be){if(n(n(Be)-S)2)return null;De/=2,Be/=2;var We=De*De,it=Be*Be,Ft=2*Be/(1+We+it);return Ft=h((1+Ft)/(1-Ft),1/ve),[a(2*De,1-We-it)/ve,O((Ft-1)/(Ft+1))]},be}function Jl(){var ve=.5,be=t.geoProjectionMutator(Vf),De=be(ve);return De.spacing=function(Be){return arguments.length?be(ve=+Be):ve},De.scale(124.75)}var fl=E/C;function lc(ve,be){return[ve*(1+G(o(be)))/2,be/(o(be/2)*o(ve/6))]}lc.invert=function(ve,be){var De=n(ve),Be=n(be),et=p,We=S;Bep||n(cn)>p)&&--et>0);return et&&[De,Be]};function Hs(){return t.geoProjection(Es).scale(139.98)}function Go(ve,be){return[_(ve)/o(be),b(be)*o(ve)]}Go.invert=function(ve,be){var De=ve*ve,Be=be*be,et=Be+1,We=De+et,it=ve?x*G((We-G(We*We-4*De))/De):1/G(et);return[O(ve*it),v(be)*V(it)]};function ps(){return t.geoProjection(Go).scale(144.049).clipAngle(90-.001)}function uc(ve){var be=o(ve),De=b(L+ve/2);function Be(et,We){var it=We-ve,Ft=n(it)=0;)dr=ve[tr],Sr=dr[0]+Ft*(Wr=Sr)-Ht*Or,Or=dr[1]+Ft*Or+Ht*Wr;return Sr=Ft*(Wr=Sr)-Ht*Or,Or=Ft*Or+Ht*Wr,[Sr,Or]}return De.invert=function(Be,et){var We=20,it=Be,Ft=et;do{for(var Ht=be,tr=ve[Ht],dr=tr[0],Sr=tr[1],Or=0,Wr=0,ni;--Ht>=0;)tr=ve[Ht],Or=dr+it*(ni=Or)-Ft*Wr,Wr=Sr+it*Wr+Ft*ni,dr=tr[0]+it*(ni=dr)-Ft*Sr,Sr=tr[1]+it*Sr+Ft*ni;Or=dr+it*(ni=Or)-Ft*Wr,Wr=Sr+it*Wr+Ft*ni,dr=it*(ni=dr)-Ft*Sr-Be,Sr=it*Sr+Ft*ni-et;var Pi=Or*Or+Wr*Wr,cn,ln;it-=cn=(dr*Or+Sr*Wr)/Pi,Ft-=ln=(Sr*Or-dr*Wr)/Pi}while(n(cn)+n(ln)>p*p&&--We>0);if(We){var Cn=G(it*it+Ft*Ft),Kn=2*i(Cn*.5),Ta=_(Kn);return[a(it*Ta,Cn*o(Kn)),Cn?O(Ft*Ta/Cn):0]}},De}var Po=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],od=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Yo=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Pa=[[.9245,0],[0,0],[.01943,0]],af=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Hu(){return Bl(Po,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function bl(){return Bl(od,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Gf(){return Bl(Yo,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function Ic(){return Bl(Pa,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function yf(){return Bl(af,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Bl(ve,be){var De=t.geoProjection(ad(ve)).rotate(be).clipAngle(90),Be=t.geoRotation(be),et=De.center;return delete De.rotate,De.center=function(We){return arguments.length?et(Be(We)):Be.invert(et())},De}var wh=G(6),Qf=G(7);function _f(ve,be){var De=O(7*_(be)/(3*wh));return[wh*ve*(2*o(2*De/3)-1)/Qf,9*_(De/3)/Qf]}_f.invert=function(ve,be){var De=3*O(be*Qf/9);return[ve*Qf/(wh*(2*o(2*De/3)-1)),O(_(De)*3*wh/7)]};function Yc(){return t.geoProjection(_f).scale(164.859)}function eh(ve,be){for(var De=(1+x)*_(be),Be=be,et=0,We;et<25&&(Be-=We=(_(Be/2)+_(Be)-De)/(.5*o(Be/2)+o(Be)),!(n(We)k&&--Be>0);return We=De*De,it=We*We,Ft=We*it,[ve/(.84719-.13063*We+Ft*Ft*(-.04515+.05494*We-.02326*it+.00331*Ft)),De]};function of(){return t.geoProjection(cc).scale(175.295)}function Nl(ve,be){return[ve*(1+o(be))/2,2*(be-b(be/2))]}Nl.invert=function(ve,be){for(var De=be/2,Be=0,et=1/0;Be<10&&n(et)>p;++Be){var We=o(be/2);be-=et=(be-b(be/2)-De)/(1-.5/(We*We))}return[2*ve/(1+o(be)),be]};function Kc(){return t.geoProjection(Nl).scale(152.63)}var Rc=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function gs(){return Do(Ze(1/0),Rc).rotate([20,0]).scale(152.63)}function jf(ve,be){var De=_(be),Be=o(be),et=v(ve);if(ve===0||n(be)===S)return[0,be];if(be===0)return[ve,0];if(n(ve)===S)return[ve*Be,S*De];var We=E/(2*ve)-2*ve/E,it=2*be/E,Ft=(1-it*it)/(De-it),Ht=We*We,tr=Ft*Ft,dr=1+Ht/tr,Sr=1+tr/Ht,Or=(We*De/Ft-We/2)/dr,Wr=(tr*De/Ht+Ft/2)/Sr,ni=Or*Or+Be*Be/dr,Pi=Wr*Wr-(tr*De*De/Ht+Ft*De-1)/Sr;return[S*(Or+G(ni)*et),S*(Wr+G(Pi<0?0:Pi)*v(-be*We)*et)]}jf.invert=function(ve,be){ve/=S,be/=S;var De=ve*ve,Be=be*be,et=De+Be,We=E*E;return[ve?(et-1+G((1-et)*(1-et)+4*De))/(2*ve)*S:0,Zt(function(it){return et*(E*_(it)-2*it)*E+4*it*it*(be-_(it))+2*E*it-We*be},0)]};function Gh(){return t.geoProjection(jf).scale(127.267)}var rh=1.0148,sf=.23185,Th=-.14499,Mu=.02406,ih=rh,js=5*sf,Eu=7*Th,Dc=9*Mu,ks=1.790857183;function bc(ve,be){var De=be*be;return[ve,be*(rh+De*De*(sf+De*(Th+Mu*De)))]}bc.invert=function(ve,be){be>ks?be=ks:be<-ks&&(be=-ks);var De=be,Be;do{var et=De*De;De-=Be=(De*(rh+et*et*(sf+et*(Th+Mu*et)))-be)/(ih+et*et*(js+et*(Eu+Dc*et)))}while(n(Be)>p);return[ve,De]};function hu(){return t.geoProjection(bc).scale(139.319)}function _u(ve,be){if(n(be)p&&--et>0);return it=b(Be),[(n(be)=0;)if(Be=be[Ft],De[0]===Be[0]&&De[1]===Be[1]){if(We)return[We,De];We=De}}}function jl(ve){for(var be=ve.length,De=[],Be=ve[be-1],et=0;et0?[-Be[0],0]:[180-Be[0],180])};var be=If.map(function(De){return{face:De,project:ve(De)}});return[-1,0,0,1,0,1,4,5].forEach(function(De,Be){var et=be[De];et&&(et.children||(et.children=[])).push(be[Be])}),xf(be[0],function(De,Be){return be[De<-E/2?Be<0?6:4:De<0?Be<0?2:0:DeBe^Wr>Be&&De<(Or-tr)*(Be-dr)/(Wr-dr)+tr&&(et=!et)}return et}function Wl(ve,be){var De=be.stream,Be;if(!De)throw new Error("invalid projection");switch(ve&&ve.type){case"Feature":Be=Zu;break;case"FeatureCollection":Be=ah;break;default:Be=Tc;break}return Be(ve,De)}function ah(ve,be){return{type:"FeatureCollection",features:ve.features.map(function(De){return Zu(De,be)})}}function Zu(ve,be){return{type:"Feature",id:ve.id,properties:ve.properties,geometry:Tc(ve.geometry,be)}}function Oc(ve,be){return{type:"GeometryCollection",geometries:ve.geometries.map(function(De){return Tc(De,be)})}}function Tc(ve,be){if(!ve)return null;if(ve.type==="GeometryCollection")return Oc(ve,be);var De;switch(ve.type){case"Point":De=qc;break;case"MultiPoint":De=qc;break;case"LineString":De=cf;break;case"MultiLineString":De=cf;break;case"Polygon":De=fc;break;case"MultiPolygon":De=fc;break;case"Sphere":De=fc;break;default:return null}return t.geoStream(ve,be(De)),De.result()}var wl=[],vu=[],qc={point:function(ve,be){wl.push([ve,be])},result:function(){var ve=wl.length?wl.length<2?{type:"Point",coordinates:wl[0]}:{type:"MultiPoint",coordinates:wl}:null;return wl=[],ve}},cf={lineStart:Xu,point:function(ve,be){wl.push([ve,be])},lineEnd:function(){wl.length&&(vu.push(wl),wl=[])},result:function(){var ve=vu.length?vu.length<2?{type:"LineString",coordinates:vu[0]}:{type:"MultiLineString",coordinates:vu}:null;return vu=[],ve}},fc={polygonStart:Xu,lineStart:Xu,point:function(ve,be){wl.push([ve,be])},lineEnd:function(){var ve=wl.length;if(ve){do wl.push(wl[0].slice());while(++ve<4);vu.push(wl),wl=[]}},polygonEnd:Xu,result:function(){if(!vu.length)return null;var ve=[],be=[];return vu.forEach(function(De){uf(De)?ve.push([De]):be.push(De)}),be.forEach(function(De){var Be=De[0];ve.some(function(et){if(Xf(et[0],Be))return et.push(De),!0})||ve.push([De])}),vu=[],ve.length?ve.length>1?{type:"MultiPolygon",coordinates:ve}:{type:"Polygon",coordinates:ve[0]}:null}};function Bc(ve){var be=ve(S,0)[0]-ve(-S,0)[0];function De(Be,et){var We=n(Be)0?Be-E:Be+E,et),Ft=(it[0]-it[1])*x,Ht=(it[0]+it[1])*x;if(We)return[Ft,Ht];var tr=be*x,dr=Ft>0^Ht>0?-1:1;return[dr*Ft-v(Ht)*tr,dr*Ht-v(Ft)*tr]}return ve.invert&&(De.invert=function(Be,et){var We=(Be+et)*x,it=(et-Be)*x,Ft=n(We)<.5*be&&n(it)<.5*be;if(!Ft){var Ht=be*x,tr=We>0^it>0?-1:1,dr=-tr*Be+(it>0?1:-1)*Ht,Sr=-tr*et+(We>0?1:-1)*Ht;We=(-dr-Sr)*x,it=(dr-Sr)*x}var Or=ve.invert(We,it);return Ft||(Or[0]+=We>0?E:-E),Or}),t.geoProjection(De).rotate([-90,-90,45]).clipAngle(180-.001)}function At(){return Bc(Li).scale(176.423)}function Wt(){return Bc(Lo).scale(111.48)}function Cr(ve,be){if(!(0<=(be=+be)&&be<=20))throw new Error("invalid digits");function De(tr){var dr=tr.length,Sr=2,Or=new Array(dr);for(Or[0]=+tr[0].toFixed(be),Or[1]=+tr[1].toFixed(be);Sr2||Wr[0]!=dr[0]||Wr[1]!=dr[1])&&(Sr.push(Wr),dr=Wr)}return Sr.length===1&&tr.length>1&&Sr.push(De(tr[tr.length-1])),Sr}function We(tr){return tr.map(et)}function it(tr){if(tr==null)return tr;var dr;switch(tr.type){case"GeometryCollection":dr={type:"GeometryCollection",geometries:tr.geometries.map(it)};break;case"Point":dr={type:"Point",coordinates:De(tr.coordinates)};break;case"MultiPoint":dr={type:tr.type,coordinates:Be(tr.coordinates)};break;case"LineString":dr={type:tr.type,coordinates:et(tr.coordinates)};break;case"MultiLineString":case"Polygon":dr={type:tr.type,coordinates:We(tr.coordinates)};break;case"MultiPolygon":dr={type:"MultiPolygon",coordinates:tr.coordinates.map(We)};break;default:return tr}return tr.bbox!=null&&(dr.bbox=tr.bbox),dr}function Ft(tr){var dr={type:"Feature",properties:tr.properties,geometry:it(tr.geometry)};return tr.id!=null&&(dr.id=tr.id),tr.bbox!=null&&(dr.bbox=tr.bbox),dr}if(ve!=null)switch(ve.type){case"Feature":return Ft(ve);case"FeatureCollection":{var Ht={type:"FeatureCollection",features:ve.features.map(Ft)};return ve.bbox!=null&&(Ht.bbox=ve.bbox),Ht}default:return it(ve)}return ve}function Ar(ve){var be=_(ve);function De(Be,et){var We=be?b(Be*be/2)/be:Be/2;if(!et)return[2*We,-ve];var it=2*i(We*_(et)),Ft=1/b(et);return[_(it)*Ft,et+(1-o(it))*Ft-ve]}return De.invert=function(Be,et){if(n(et+=ve)p&&--Ft>0);var Or=Be*(tr=b(it)),Wr=b(n(et)0?S:-S)*(Ht+et*(dr-it)/2+et*et*(dr-2*Ht+it)/2)]}Xi.invert=function(ve,be){var De=be/S,Be=De*90,et=f(18,n(Be/5)),We=c(0,l(et));do{var it=ki[We][1],Ft=ki[We+1][1],Ht=ki[f(19,We+2)][1],tr=Ht-it,dr=Ht-2*Ft+it,Sr=2*(n(De)-Ft)/tr,Or=dr/tr,Wr=Sr*(1-Or*Sr*(1-2*Or*Sr));if(Wr>=0||We===1){Be=(be>=0?5:-5)*(Wr+et);var ni=50,Pi;do et=f(18,n(Be)/5),We=l(et),Wr=et-We,it=ki[We][1],Ft=ki[We+1][1],Ht=ki[f(19,We+2)][1],Be-=(Pi=(be>=0?S:-S)*(Ft+Wr*(Ht-it)/2+Wr*Wr*(Ht-2*Ft+it)/2)-be)*P;while(n(Pi)>k&&--ni>0);break}}while(--We>=0);var cn=ki[We][0],ln=ki[We+1][0],Cn=ki[f(19,We+2)][0];return[ve/(ln+Wr*(Cn-cn)/2+Wr*Wr*(Cn-2*ln+cn)/2),Be*T]};function dn(){return t.geoProjection(Xi).scale(152.63)}function wn(ve){function be(De,Be){var et=o(Be),We=(ve-1)/(ve-et*o(De));return[We*et*_(De),We*_(Be)]}return be.invert=function(De,Be){var et=De*De+Be*Be,We=G(et),it=(ve-G(1-et*(ve+1)/(ve-1)))/((ve-1)/We+We/(ve-1));return[a(De*it,We*G(1-it*it)),We?O(Be*it/We):0]},be}function Nn(ve,be){var De=wn(ve);if(!be)return De;var Be=o(be),et=_(be);function We(it,Ft){var Ht=De(it,Ft),tr=Ht[1],dr=tr*et/(ve-1)+Be;return[Ht[0]*Be/dr,tr/dr]}return We.invert=function(it,Ft){var Ht=(ve-1)/(ve-1-Ft*et);return De.invert(Ht*it,Ht*Ft*Be)},We}function Yi(){var ve=2,be=0,De=t.geoProjectionMutator(Nn),Be=De(ve,be);return Be.distance=function(et){return arguments.length?De(ve=+et,be):ve},Be.tilt=function(et){return arguments.length?De(ve,be=et*T):be*P},Be.scale(432.147).clipAngle(V(1/ve)*P-1e-6)}var Qi=1e-4,on=1e4,Fi=-180,$n=Fi+Qi,Ca=180,Ra=Ca-Qi,La=-90,Na=La+Qi,Yn=90,Dn=Yn-Qi;function Ka(ve){return ve.length>0}function bo(ve){return Math.floor(ve*on)/on}function Xo(ve){return ve===La||ve===Yn?[0,ve]:[Fi,bo(ve)]}function Ss(ve){var be=ve[0],De=ve[1],Be=!1;return be<=$n?(be=Fi,Be=!0):be>=Ra&&(be=Ca,Be=!0),De<=Na?(De=La,Be=!0):De>=Dn&&(De=Yn,Be=!0),Be?[be,De]:ve}function as(ve){return ve.map(Ss)}function ws(ve,be,De){for(var Be=0,et=ve.length;Be=Ra||dr<=Na||dr>=Dn){We[it]=Ss(Ht);for(var Sr=it+1;Sr$n&&WrNa&&ni=Ft)break;De.push({index:-1,polygon:be,ring:We=We.slice(Sr-1)}),We[0]=Xo(We[0][1]),it=-1,Ft=We.length}}}}function Ho(ve){var be,De=ve.length,Be={},et={},We,it,Ft,Ht,tr;for(be=0;be0?E-Ft:Ft)*P],tr=t.geoProjection(ve(it)).rotate(Ht),dr=t.geoRotation(Ht),Sr=tr.center;return delete tr.rotate,tr.center=function(Or){return arguments.length?Sr(dr(Or)):dr.invert(Sr())},tr.clipAngle(90)}function rs(ve){var be=o(ve);function De(Be,et){var We=t.geoGnomonicRaw(Be,et);return We[0]*=be,We}return De.invert=function(Be,et){return t.geoGnomonicRaw.invert(Be/be,et)},De}function $l(){return Cu([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Cu(ve,be){return ys(rs,ve,be)}function Yu(ve){if(!(ve*=2))return t.geoAzimuthalEquidistantRaw;var be=-ve/2,De=-be,Be=ve*ve,et=b(De),We=.5/_(De);function it(Ft,Ht){var tr=V(o(Ht)*o(Ft-be)),dr=V(o(Ht)*o(Ft-De)),Sr=Ht<0?-1:1;return tr*=tr,dr*=dr,[(tr-dr)/(2*ve),Sr*G(4*Be*dr-(Be-tr+dr)*(Be-tr+dr))/(2*ve)]}return it.invert=function(Ft,Ht){var tr=Ht*Ht,dr=o(G(tr+(Or=Ft+be)*Or)),Sr=o(G(tr+(Or=Ft+De)*Or)),Or,Wr;return[a(Wr=dr-Sr,Or=(dr+Sr)*et),(Ht<0?-1:1)*V(G(Or*Or+Wr*Wr)*We)]},it}function Nc(){return pu([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function pu(ve,be){return ys(Yu,ve,be)}function Uc(ve,be){if(n(be)p&&--Ft>0);return[v(ve)*(G(et*et+4)+et)*E/4,S*it]};function Ku(){return t.geoProjection(hc).scale(127.16)}function ue(ve,be,De,Be,et){function We(it,Ft){var Ht=De*_(Be*Ft),tr=G(1-Ht*Ht),dr=G(2/(1+tr*o(it*=et)));return[ve*tr*dr*_(it),be*Ht*dr]}return We.invert=function(it,Ft){var Ht=it/ve,tr=Ft/be,dr=G(Ht*Ht+tr*tr),Sr=2*O(dr/2);return[a(it*b(Sr),ve*dr)/et,dr&&O(Ft*_(Sr)/(be*De*dr))/Be]},We}function w(ve,be,De,Be){var et=E/3;ve=c(ve,p),be=c(be,p),ve=f(ve,S),be=f(be,E-p),De=c(De,0),De=f(De,100-p),Be=c(Be,p);var We=De/100+1,it=Be/100,Ft=V(We*o(et))/et,Ht=_(ve)/_(Ft*S),tr=be/E,dr=G(it*_(ve/2)/_(be/2)),Sr=dr/G(tr*Ht*Ft),Or=1/(dr*G(tr*Ht*Ft));return ue(Sr,Or,Ht,Ft,tr)}function B(){var ve=65*T,be=60*T,De=20,Be=200,et=t.geoProjectionMutator(w),We=et(ve,be,De,Be);return We.poleline=function(it){return arguments.length?et(ve=+it*T,be,De,Be):ve*P},We.parallels=function(it){return arguments.length?et(ve,be=+it*T,De,Be):be*P},We.inflation=function(it){return arguments.length?et(ve,be,De=+it,Be):De},We.ratio=function(it){return arguments.length?et(ve,be,De,Be=+it):Be},We.scale(163.775)}function Q(){return B().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var ee=4*E+3*G(3),le=2*G(2*E*G(3)/ee),qe=Jt(le*G(3)/E,le,ee/6);function Xe(){return t.geoProjection(qe).scale(176.84)}function ot(ve,be){return[ve*G(1-3*be*be/(E*E)),be]}ot.invert=function(ve,be){return[ve/G(1-3*be*be/(E*E)),be]};function Tt(){return t.geoProjection(ot).scale(152.63)}function Yt(ve,be){var De=o(be),Be=o(ve)*De,et=1-Be,We=o(ve=a(_(ve)*De,-_(be))),it=_(ve);return De=G(1-Be*Be),[it*De-We*et,-We*De-it*et]}Yt.invert=function(ve,be){var De=(ve*ve+be*be)/-2,Be=G(-De*(2+De)),et=be*De+ve*Be,We=ve*De-be*Be,it=G(We*We+et*et);return[a(Be*et,it*(1+De)),it?-O(Be*We/it):0]};function Kt(){return t.geoProjection(Yt).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function xr(ve,be){var De=Ee(ve,be);return[(De[0]+ve/S)/2,(De[1]+be)/2]}xr.invert=function(ve,be){var De=ve,Be=be,et=25;do{var We=o(Be),it=_(Be),Ft=_(2*Be),Ht=it*it,tr=We*We,dr=_(De),Sr=o(De/2),Or=_(De/2),Wr=Or*Or,ni=1-tr*Sr*Sr,Pi=ni?V(We*Sr)*G(cn=1/ni):cn=0,cn,ln=.5*(2*Pi*We*Or+De/S)-ve,Cn=.5*(Pi*it+Be)-be,Kn=.5*cn*(tr*Wr+Pi*We*Sr*Ht)+.5/S,Ta=cn*(dr*Ft/4-Pi*it*Or),fa=.125*cn*(Ft*Or-Pi*it*tr*dr),$a=.5*cn*(Ht*Sr+Pi*Wr*We)+.5,Co=Ta*fa-$a*Kn,Qa=(Cn*Ta-ln*$a)/Co,mo=(ln*fa-Cn*Kn)/Co;De-=Qa,Be-=mo}while((n(Qa)>p||n(mo)>p)&&--et>0);return[De,Be]};function Ir(){return t.geoProjection(xr).scale(158.837)}e.geoNaturalEarth=t.geoNaturalEarth1,e.geoNaturalEarthRaw=t.geoNaturalEarth1Raw,e.geoAiry=_e,e.geoAiryRaw=oe,e.geoAitoff=Ce,e.geoAitoffRaw=Ee,e.geoArmadillo=ie,e.geoArmadilloRaw=me,e.geoAugust=Le,e.geoAugustRaw=Se,e.geoBaker=ge,e.geoBakerRaw=Pe,e.geoBerghaus=ce,e.geoBerghausRaw=Re,e.geoBertin1953=Gt,e.geoBertin1953Raw=lt,e.geoBoggs=Qt,e.geoBoggsRaw=St,e.geoBonne=er,e.geoBonneRaw=mt,e.geoBottomley=Tr,e.geoBottomleyRaw=lr,e.geoBromley=ti,e.geoBromleyRaw=Lr,e.geoChamberlin=tt,e.geoChamberlinRaw=Ge,e.geoChamberlinAfrica=je,e.geoCollignon=Ie,e.geoCollignonRaw=xt,e.geoCraig=ke,e.geoCraigRaw=xe,e.geoCraster=ar,e.geoCrasterRaw=ir,e.geoCylindricalEqualArea=ii,e.geoCylindricalEqualAreaRaw=vr,e.geoCylindricalStereographic=$r,e.geoCylindricalStereographicRaw=pi,e.geoEckert1=ji,e.geoEckert1Raw=di,e.geoEckert2=wi,e.geoEckert2Raw=In,e.geoEckert3=qn,e.geoEckert3Raw=On,e.geoEckert4=ra,e.geoEckert4Raw=Fn,e.geoEckert5=Ut,e.geoEckert5Raw=la,e.geoEckert6=rr,e.geoEckert6Raw=wt,e.geoEisenlohr=Xr,e.geoEisenlohrRaw=Er,e.geoFahey=Oi,e.geoFaheyRaw=Qr,e.geoFoucaut=tn,e.geoFoucautRaw=$i,e.geoFoucautSinusoidal=yn,e.geoFoucautSinusoidalRaw=fn,e.geoGilbert=ua,e.geoGingery=Wo,e.geoGingeryRaw=ma,e.geoGinzburg4=Ga,e.geoGinzburg4Raw=Wn,e.geoGinzburg5=jn,e.geoGinzburg5Raw=vo,e.geoGinzburg6=kr,e.geoGinzburg6Raw=Mt,e.geoGinzburg8=vi,e.geoGinzburg8Raw=Jr,e.geoGinzburg9=An,e.geoGinzburg9Raw=hn,e.geoGringorten=Jn,e.geoGringortenRaw=Li,e.geoGuyou=Fs,e.geoGuyouRaw=Lo,e.geoHammer=pt,e.geoHammerRaw=Ze,e.geoHammerRetroazimuthal=zl,e.geoHammerRetroazimuthalRaw=ll,e.geoHealpix=Zl,e.geoHealpixRaw=cl,e.geoHill=nc,e.geoHillRaw=Su,e.geoHomolosine=xo,e.geoHomolosineRaw=Ol,e.geoHufnagel=Ns,e.geoHufnagelRaw=Yl,e.geoHyperelliptical=Oo,e.geoHyperellipticalRaw=aa,e.geoInterrupt=Do,e.geoInterruptedBoggs=Uf,e.geoInterruptedHomolosine=Zc,e.geoInterruptedMollweide=Os,e.geoInterruptedMollweideHemispheres=oc,e.geoInterruptedSinuMollweide=sc,e.geoInterruptedSinusoidal=Lf,e.geoKavrayskiy7=nf,e.geoKavrayskiy7Raw=cs,e.geoLagrange=Jl,e.geoLagrangeRaw=Vf,e.geoLarrivee=Fu,e.geoLarriveeRaw=lc,e.geoLaskowski=Hs,e.geoLaskowskiRaw=Es,e.geoLittrow=ps,e.geoLittrowRaw=Go,e.geoLoximuthal=xl,e.geoLoximuthalRaw=uc,e.geoMiller=qs,e.geoMillerRaw=Gu,e.geoModifiedStereographic=Bl,e.geoModifiedStereographicRaw=ad,e.geoModifiedStereographicAlaska=Hu,e.geoModifiedStereographicGs48=bl,e.geoModifiedStereographicGs50=Gf,e.geoModifiedStereographicMiller=Ic,e.geoModifiedStereographicLee=yf,e.geoMollweide=wr,e.geoMollweideRaw=sr,e.geoMtFlatPolarParabolic=Yc,e.geoMtFlatPolarParabolicRaw=_f,e.geoMtFlatPolarQuartic=th,e.geoMtFlatPolarQuarticRaw=eh,e.geoMtFlatPolarSinusoidal=Hf,e.geoMtFlatPolarSinusoidalRaw=ju,e.geoNaturalEarth2=of,e.geoNaturalEarth2Raw=cc,e.geoNellHammer=Kc,e.geoNellHammerRaw=Nl,e.geoInterruptedQuarticAuthalic=gs,e.geoNicolosi=Gh,e.geoNicolosiRaw=jf,e.geoPatterson=hu,e.geoPattersonRaw=bc,e.geoPolyconic=nl,e.geoPolyconicRaw=_u,e.geoPolyhedral=xf,e.geoPolyhedralButterfly=Cs,e.geoPolyhedralCollignon=Wf,e.geoPolyhedralWaterman=Us,e.geoProject=Wl,e.geoGringortenQuincuncial=At,e.geoPeirceQuincuncial=Wt,e.geoPierceQuincuncial=Wt,e.geoQuantize=Cr,e.geoQuincuncial=Bc,e.geoRectangularPolyconic=Kr,e.geoRectangularPolyconicRaw=Ar,e.geoRobinson=dn,e.geoRobinsonRaw=Xi,e.geoSatellite=Yi,e.geoSatelliteRaw=Nn,e.geoSinuMollweide=Vu,e.geoSinuMollweideRaw=_a,e.geoSinusoidal=It,e.geoSinusoidalRaw=_t,e.geoStitch=Ls,e.geoTimes=no,e.geoTimesRaw=va,e.geoTwoPointAzimuthal=Cu,e.geoTwoPointAzimuthalRaw=rs,e.geoTwoPointAzimuthalUsa=$l,e.geoTwoPointEquidistant=pu,e.geoTwoPointEquidistantRaw=Yu,e.geoTwoPointEquidistantUsa=Nc,e.geoVanDerGrinten=xu,e.geoVanDerGrintenRaw=Uc,e.geoVanDerGrinten2=Ua,e.geoVanDerGrinten2Raw=Ac,e.geoVanDerGrinten3=Vc,e.geoVanDerGrinten3Raw=oo,e.geoVanDerGrinten4=Ku,e.geoVanDerGrinten4Raw=hc,e.geoWagner=B,e.geoWagner7=Q,e.geoWagnerRaw=w,e.geoWagner4=Xe,e.geoWagner4Raw=qe,e.geoWagner6=Tt,e.geoWagner6Raw=ot,e.geoWiechel=Kt,e.geoWiechelRaw=Yt,e.geoWinkel3=Ir,e.geoWinkel3Raw=xr,Object.defineProperty(e,"__esModule",{value:!0})})});var FDe=ye((xmr,DDe)=>{"use strict";var id=Oa(),RZ=Dr(),Mzt=qa(),JA=Math.PI/180,j2=180/Math.PI,FZ={cursor:"pointer"},zZ={cursor:"auto"};function Ezt(e,t){var r=e.projection,n;return t._isScoped?n=kzt:t._isClipped?n=Lzt:n=Czt,n(e,r)}DDe.exports=Ezt;function OZ(e,t){return id.behavior.zoom().translate(t.translate()).scale(t.scale())}function qZ(e,t,r){var n=e.id,i=e.graphDiv,a=i.layout,o=a[n],s=i._fullLayout,l=s[n],u={},c={};function f(h,d){u[n+"."+h]=RZ.nestedProperty(o,h).get(),Mzt.call("_storeDirectGUIEdit",a,s._preGUI,u);var v=RZ.nestedProperty(l,h);v.get()!==d&&(v.set(d),RZ.nestedProperty(o,h).set(d),c[n+"."+h]=d)}r(f),f("projection.scale",t.scale()/e.fitScale),f("fitbounds",!1),i.emit("plotly_relayout",c)}function kzt(e,t){var r=OZ(e,t);function n(){id.select(this).style(FZ)}function i(){t.scale(id.event.scale).translate(id.event.translate),e.render(!0);var s=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":s[0],"geo.center.lat":s[1]})}function a(s){var l=t.invert(e.midPt);s("center.lon",l[0]),s("center.lat",l[1])}function o(){id.select(this).style(zZ),qZ(e,t,a)}return r.on("zoomstart",n).on("zoom",i).on("zoomend",o),r}function Czt(e,t){var r=OZ(e,t),n=2,i,a,o,s,l,u,c,f,h;function d(E){return t.invert(E)}function v(E){var S=d(E);if(!S)return!0;var L=t(S);return Math.abs(L[0]-E[0])>n||Math.abs(L[1]-E[1])>n}function _(){id.select(this).style(FZ),i=id.mouse(this),a=t.rotate(),o=t.translate(),s=a,l=d(i)}function b(){if(u=id.mouse(this),v(i)){r.scale(t.scale()),r.translate(t.translate());return}t.scale(id.event.scale),t.translate([o[0],id.event.translate[1]]),l?d(u)&&(f=d(u),c=[s[0]+(f[0]-l[0]),a[1],a[2]],t.rotate(c),s=c):(i=u,l=d(i)),h=!0,e.render(!0);var E=t.rotate(),S=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":S[0],"geo.center.lat":S[1],"geo.projection.rotation.lon":-E[0]})}function p(){id.select(this).style(zZ),h&&qZ(e,t,k)}function k(E){var S=t.rotate(),L=t.invert(e.midPt);E("projection.rotation.lon",-S[0]),E("center.lon",L[0]),E("center.lat",L[1])}return r.on("zoomstart",_).on("zoom",b).on("zoomend",p),r}function Lzt(e,t){var r={r:t.rotate(),k:t.scale()},n=OZ(e,t),i=qzt(n,"zoomstart","zoom","zoomend"),a=0,o=n.on,s;n.on("zoomstart",function(){id.select(this).style(FZ);var h=id.mouse(this),d=t.rotate(),v=d,_=t.translate(),b=Pzt(d);s=PF(t,h),o.call(n,"zoom",function(){var p=id.mouse(this);if(t.scale(r.k=id.event.scale),!s)h=p,s=PF(t,h);else if(PF(t,p)){t.rotate(d).translate(_);var k=PF(t,p),E=Rzt(s,k),S=Fzt(Izt(b,E)),L=r.r=Dzt(S,s,v);(!isFinite(L[0])||!isFinite(L[1])||!isFinite(L[2]))&&(L=v),t.rotate(L),v=L}u(i.of(this,arguments))}),l(i.of(this,arguments))}).on("zoomend",function(){id.select(this).style(zZ),o.call(n,"zoom",null),c(i.of(this,arguments)),qZ(e,t,f)}).on("zoom.redraw",function(){e.render(!0);var h=t.rotate();e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.projection.rotation.lon":-h[0],"geo.projection.rotation.lat":-h[1]})});function l(h){a++||h({type:"zoomstart"})}function u(h){h({type:"zoom"})}function c(h){--a||h({type:"zoomend"})}function f(h){var d=t.rotate();h("projection.rotation.lon",-d[0]),h("projection.rotation.lat",-d[1])}return id.rebind(n,i,"on")}function PF(e,t){var r=e.invert(t);return r&&isFinite(r[0])&&isFinite(r[1])&&zzt(r)}function Pzt(e){var t=.5*e[0]*JA,r=.5*e[1]*JA,n=.5*e[2]*JA,i=Math.sin(t),a=Math.cos(t),o=Math.sin(r),s=Math.cos(r),l=Math.sin(n),u=Math.cos(n);return[a*s*u+i*o*l,i*s*u-a*o*l,a*o*u+i*s*l,a*s*l-i*o*u]}function Izt(e,t){var r=e[0],n=e[1],i=e[2],a=e[3],o=t[0],s=t[1],l=t[2],u=t[3];return[r*o-n*s-i*l-a*u,r*s+n*o+i*u-a*l,r*l-n*u+i*o+a*s,r*u+n*l-i*s+a*o]}function Rzt(e,t){if(!(!e||!t)){var r=Ozt(e,t),n=Math.sqrt(RDe(r,r)),i=.5*Math.acos(Math.max(-1,Math.min(1,RDe(e,t)))),a=Math.sin(i)/n;return n&&[Math.cos(i),r[2]*a,-r[1]*a,r[0]*a]}}function Dzt(e,t,r){var n=DZ(t,2,e[0]);n=DZ(n,1,e[1]),n=DZ(n,0,e[2]-r[2]);var i=t[0],a=t[1],o=t[2],s=n[0],l=n[1],u=n[2],c=Math.atan2(a,i)*j2,f=Math.sqrt(i*i+a*a),h,d;Math.abs(l)>f?(d=(l>0?90:-90)-c,h=0):(d=Math.asin(l/f)*j2-c,h=Math.sqrt(f*f-l*l));var v=180-d-2*c,_=(Math.atan2(u,s)-Math.atan2(o,h))*j2,b=(Math.atan2(u,s)-Math.atan2(o,-h))*j2,p=PDe(r[0],r[1],d,_),k=PDe(r[0],r[1],v,b);return p<=k?[d,_,r[2]]:[v,b,r[2]]}function PDe(e,t,r,n){var i=IDe(r-e),a=IDe(n-t);return Math.sqrt(i*i+a*a)}function IDe(e){return(e%360+540)%360-180}function DZ(e,t,r){var n=r*JA,i=e.slice(),a=t===0?1:0,o=t===2?1:2,s=Math.cos(n),l=Math.sin(n);return i[a]=e[a]*s-e[o]*l,i[o]=e[o]*s+e[a]*l,i}function Fzt(e){return[Math.atan2(2*(e[0]*e[1]+e[2]*e[3]),1-2*(e[1]*e[1]+e[2]*e[2]))*j2,Math.asin(Math.max(-1,Math.min(1,2*(e[0]*e[2]-e[3]*e[1]))))*j2,Math.atan2(2*(e[0]*e[3]+e[1]*e[2]),1-2*(e[2]*e[2]+e[3]*e[3]))*j2]}function zzt(e){var t=e[0]*JA,r=e[1]*JA,n=Math.cos(r);return[n*Math.cos(t),n*Math.sin(t),Math.sin(r)]}function RDe(e,t){for(var r=0,n=0,i=e.length;n{"use strict";var t1=Oa(),UZ=IZ(),Bzt=UZ.geoPath,Nzt=UZ.geoDistance,Uzt=LDe(),Vzt=qa(),ok=Dr(),Gzt=ok.strTranslate,IF=ka(),ak=So(),zDe=vf(),Hzt=Mc(),NZ=ho(),ODe=Tg().getAutoRange,BZ=yv(),jzt=Of().prepSelect,Wzt=Of().clearOutline,Xzt=Of().selectOnClick,Zzt=FDe(),fp=tk(),Yzt=ix(),BDe=gF(),Kzt=mZ().feature;function NDe(e){this.id=e.id,this.graphDiv=e.graphDiv,this.container=e.container,this.topojsonURL=e.topojsonURL,this.isStatic=e.staticPlot,this.topojsonName=null,this.topojson=null,this.projection=null,this.scope=null,this.viewInitial=null,this.fitScale=null,this.bounds=null,this.midPt=null,this.hasChoropleth=!1,this.traceHash={},this.layers={},this.basePaths={},this.dataPaths={},this.dataPoints={},this.clipDef=null,this.clipRect=null,this.bgRect=null,this.makeFramework()}var $g=NDe.prototype;UDe.exports=function(t){return new NDe(t)};$g.plot=function(e,t,r,n){var i=this;if(n)return i.update(e,t,!0);i._geoCalcData=e,i._fullLayout=t;var a=t[this.id],o=[],s=!1;for(var l in fp.layerNameToAdjective)if(l!=="frame"&&a["show"+l]){s=!0;break}for(var u=!1,c=0;c0&&o._module.calcGeoJSON(a,t)}if(!r){var s=this.updateProjection(e,t);if(s)return;(!this.viewInitial||this.scope!==n.scope)&&this.saveViewInitial(n)}this.scope=n.scope,this.updateBaseLayers(t,n),this.updateDims(t,n),this.updateFx(t,n),Hzt.generalUpdatePerTraceModule(this.graphDiv,this,e,n);var l=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=l.selectAll(".point"),this.dataPoints.text=l.selectAll("text"),this.dataPaths.line=l.selectAll(".js-line");var u=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=u.selectAll("path"),this._render()};$g.updateProjection=function(e,t){var r=this.graphDiv,n=t[this.id],i=t._size,a=n.domain,o=n.projection,s=n.lonaxis,l=n.lataxis,u=s._ax,c=l._ax,f=this.projection=Jzt(n),h=[[i.l+i.w*a.x[0],i.t+i.h*(1-a.y[1])],[i.l+i.w*a.x[1],i.t+i.h*(1-a.y[0])]],d=n.center||{},v=o.rotation||{},_=s.range||[],b=l.range||[];if(n.fitbounds){u._length=h[1][0]-h[0][0],c._length=h[1][1]-h[0][1],u.range=ODe(r,u),c.range=ODe(r,c);var p=(u.range[0]+u.range[1])/2,k=(c.range[0]+c.range[1])/2;if(n._isScoped)d={lon:p,lat:k};else if(n._isClipped){d={lon:p,lat:k},v={lon:p,lat:k,roll:v.roll};var E=o.type,S=fp.lonaxisSpan[E]/2||180,L=fp.lataxisSpan[E]/2||90;_=[p-S,p+S],b=[k-L,k+L]}else d={lon:p,lat:k},v={lon:p,lat:v.lat,roll:v.roll}}f.center([d.lon-v.lon,d.lat-v.lat]).rotate([-v.lon,-v.lat,v.roll]).parallels(o.parallels);var x=qDe(_,b);f.fitExtent(h,x);var C=this.bounds=f.getBounds(x),M=this.fitScale=f.scale(),g=f.translate();if(n.fitbounds){var P=f.getBounds(qDe(u.range,c.range)),T=Math.min((C[1][0]-C[0][0])/(P[1][0]-P[0][0]),(C[1][1]-C[0][1])/(P[1][1]-P[0][1]));isFinite(T)?f.scale(T*M):ok.warn("Something went wrong during"+this.id+"fitbounds computations.")}else f.scale(o.scale*M);var z=this.midPt=[(C[0][0]+C[1][0])/2,(C[0][1]+C[1][1])/2];if(f.translate([g[0]+(z[0]-g[0]),g[1]+(z[1]-g[1])]).clipExtent(C),n._isAlbersUsa){var O=f([d.lon,d.lat]),V=f.translate();f.translate([V[0]-(O[0]-V[0]),V[1]-(O[1]-V[1])])}};$g.updateBaseLayers=function(e,t){var r=this,n=r.topojson,i=r.layers,a=r.basePaths;function o(h){return h==="lonaxis"||h==="lataxis"}function s(h){return!!fp.lineLayers[h]}function l(h){return!!fp.fillLayers[h]}var u=this.hasChoropleth?fp.layersForChoropleth:fp.layers,c=u.filter(function(h){return s(h)||l(h)?t["show"+h]:o(h)?t[h].showgrid:!0}),f=r.framework.selectAll(".layer").data(c,String);f.exit().each(function(h){delete i[h],delete a[h],t1.select(this).remove()}),f.enter().append("g").attr("class",function(h){return"layer "+h}).each(function(h){var d=i[h]=t1.select(this);h==="bg"?r.bgRect=d.append("rect").style("pointer-events","all"):o(h)?a[h]=d.append("path").style("fill","none"):h==="backplot"?d.append("g").classed("choroplethlayer",!0):h==="frontplot"?d.append("g").classed("scatterlayer",!0):s(h)?a[h]=d.append("path").style("fill","none").style("stroke-miterlimit",2):l(h)&&(a[h]=d.append("path").style("stroke","none"))}),f.order(),f.each(function(h){var d=a[h],v=fp.layerNameToAdjective[h];h==="frame"?d.datum(fp.sphereSVG):s(h)||l(h)?d.datum(Kzt(n,n.objects[h])):o(h)&&d.datum($zt(h,t,e)).call(IF.stroke,t[h].gridcolor).call(ak.dashLine,t[h].griddash,t[h].gridwidth),s(h)?d.call(IF.stroke,t[v+"color"]).call(ak.dashLine,"",t[v+"width"]):l(h)&&d.call(IF.fill,t[v+"color"])})};$g.updateDims=function(e,t){var r=this.bounds,n=(t.framewidth||0)/2,i=r[0][0]-n,a=r[0][1]-n,o=r[1][0]-i+n,s=r[1][1]-a+n;ak.setRect(this.clipRect,i,a,o,s),this.bgRect.call(ak.setRect,i,a,o,s).call(IF.fill,t.bgcolor),this.xaxis._offset=i,this.xaxis._length=o,this.yaxis._offset=a,this.yaxis._length=s};$g.updateFx=function(e,t){var r=this,n=r.graphDiv,i=r.bgRect,a=e.dragmode,o=e.clickmode;if(r.isStatic)return;function s(){var f=r.viewInitial,h={};for(var d in f)h[r.id+"."+d]=f[d];Vzt.call("_guiRelayout",n,h),n.emit("plotly_doubleclick",null)}function l(f){return r.projection.invert([f[0]+r.xaxis._offset,f[1]+r.yaxis._offset])}var u=function(f,h){if(h.isRect){var d=f.range={};d[r.id]=[l([h.xmin,h.ymin]),l([h.xmax,h.ymax])]}else{var v=f.lassoPoints={};v[r.id]=h.map(l)}},c={element:r.bgRect.node(),gd:n,plotinfo:{id:r.id,xaxis:r.xaxis,yaxis:r.yaxis,fillRangeItems:u},xaxes:[r.xaxis],yaxes:[r.yaxis],subplot:r.id,clickFn:function(f){f===2&&Wzt(n)}};a==="pan"?(i.node().onmousedown=null,i.call(Zzt(r,t)),i.on("dblclick.zoom",s),n._context._scrollZoom.geo||i.on("wheel.zoom",null)):(a==="select"||a==="lasso")&&(i.on(".zoom",null),c.prepFn=function(f,h,d){jzt(f,h,d,c,a)},BZ.init(c)),i.on("mousemove",function(){var f=r.projection.invert(ok.getPositionFromD3Event());if(!f)return BZ.unhover(n,t1.event);r.xaxis.p2c=function(){return f[0]},r.yaxis.p2c=function(){return f[1]},zDe.hover(n,t1.event,r.id)}),i.on("mouseout",function(){n._dragging||BZ.unhover(n,t1.event)}),i.on("click",function(){a!=="select"&&a!=="lasso"&&(o.indexOf("select")>-1&&Xzt(t1.event,n,[r.xaxis],[r.yaxis],r.id,c),o.indexOf("event")>-1&&zDe.click(n,t1.event))})};$g.makeFramework=function(){var e=this,t=e.graphDiv,r=t._fullLayout,n="clip"+r._uid+e.id;e.clipDef=r._clips.append("clipPath").attr("id",n),e.clipRect=e.clipDef.append("rect"),e.framework=t1.select(e.container).append("g").attr("class","geo "+e.id).call(ak.setClipUrl,n,t),e.project=function(i){var a=e.projection(i);return a?[a[0]-e.xaxis._offset,a[1]-e.yaxis._offset]:[null,null]},e.xaxis={_id:"x",c2p:function(i){return e.project(i)[0]}},e.yaxis={_id:"y",c2p:function(i){return e.project(i)[1]}},e.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},NZ.setConvert(e.mockAxis,r)};$g.saveViewInitial=function(e){var t=e.center||{},r=e.projection,n=r.rotation||{};this.viewInitial={fitbounds:e.fitbounds,"projection.scale":r.scale};var i;e._isScoped?i={"center.lon":t.lon,"center.lat":t.lat}:e._isClipped?i={"projection.rotation.lon":n.lon,"projection.rotation.lat":n.lat}:i={"center.lon":t.lon,"center.lat":t.lat,"projection.rotation.lon":n.lon},ok.extendFlat(this.viewInitial,i)};$g.render=function(e){this._hasMarkerAngles&&e?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()};$g._render=function(){var e=this.projection,t=e.getPath(),r;function n(a){var o=e(a.lonlat);return o?Gzt(o[0],o[1]):null}function i(a){return e.isLonLatOverEdges(a.lonlat)?"none":null}for(r in this.basePaths)this.basePaths[r].attr("d",t);for(r in this.dataPaths)this.dataPaths[r].attr("d",function(a){return t(a.geojson)});for(r in this.dataPoints)this.dataPoints[r].attr("display",i).attr("transform",n)};function Jzt(e){var t=e.projection,r=t.type,n=fp.projNames[r];n="geo"+ok.titleCase(n);for(var i=UZ[n]||Uzt[n],a=i(),o=e._isSatellite?Math.acos(1/t.distance)*180/Math.PI:e._isClipped?fp.lonaxisSpan[r]/2:null,s=["center","rotate","parallels","clipExtent"],l=function(f){return f?a:[]},u=0;uv}else return!1},a.getPath=function(){return Bzt().projection(a)},a.getBounds=function(f){return a.getPath().bounds(f)},a.precision(fp.precision),e._isSatellite&&a.tilt(t.tilt).distance(t.distance),o&&a.clipAngle(o-fp.clipPad),a}function $zt(e,t,r){var n=1e-6,i=2.5,a=t[e],o=fp.scopeDefaults[t.scope],s,l,u;e==="lonaxis"?(s=o.lonaxisRange,l=o.lataxisRange,u=function(k,E){return[k,E]}):e==="lataxis"&&(s=o.lataxisRange,l=o.lonaxisRange,u=function(k,E){return[E,k]});var c={type:"linear",range:[s[0],s[1]-n],tick0:a.tick0,dtick:a.dtick};NZ.setConvert(c,r);var f=NZ.calcTicks(c);!t.isScoped&&e==="lonaxis"&&f.pop();for(var h=f.length,d=new Array(h),v=0;v0&&i<0&&(i+=360);var s=(i-n)/4;return{type:"Polygon",coordinates:[[[n,a],[n,o],[n+s,o],[n+2*s,o],[n+3*s,o],[i,o],[i,a],[i-s,a],[i-2*s,a],[i-3*s,a],[n,a]]]}}});var VZ=ye((wmr,jDe)=>{"use strict";var QA=Lh(),Qzt=Cc().attributes,e7t=Pd().dash,$A=tk(),t7t=mc().overrideAll,GDe=Z1(),HDe={range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},showgrid:{valType:"boolean",dflt:!1},tick0:{valType:"number",dflt:0},dtick:{valType:"number"},gridcolor:{valType:"color",dflt:QA.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:e7t},r7t=jDe.exports=t7t({domain:Qzt({name:"geo"},{}),fitbounds:{valType:"enumerated",values:[!1,"locations","geojson"],dflt:!1,editType:"plot"},resolution:{valType:"enumerated",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:"enumerated",values:GDe($A.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:GDe($A.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:QA.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:$A.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:$A.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:$A.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:$A.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:QA.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:QA.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:QA.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:QA.background},lonaxis:HDe,lataxis:HDe},"plot","from-root");r7t.uirevision={valType:"any",editType:"none"}});var ZDe=ye((Tmr,XDe)=>{"use strict";var RF=Dr(),i7t=k_(),n7t=Id().getSubplotData,DF=tk(),a7t=VZ(),WDe=DF.axesNames;XDe.exports=function(t,r,n){i7t(t,r,n,{type:"geo",attributes:a7t,handleDefaults:o7t,fullData:n,partition:"y"})};function o7t(e,t,r,n){var i=n7t(n.fullData,"geo",n.id),a=i.map(function(oe){return oe.index}),o=r("resolution"),s=r("scope"),l=DF.scopeDefaults[s],u=r("projection.type",l.projType),c=t._isAlbersUsa=u==="albers usa";c&&(s=t.scope="usa");var f=t._isScoped=s!=="world",h=t._isSatellite=u==="satellite",d=t._isConic=u.indexOf("conic")!==-1||u==="albers",v=t._isClipped=!!DF.lonaxisSpan[u];if(e.visible===!1){var _=RF.extendDeep({},t._template);_.showcoastlines=!1,_.showcountries=!1,_.showframe=!1,_.showlakes=!1,_.showland=!1,_.showocean=!1,_.showrivers=!1,_.showsubunits=!1,_.lonaxis&&(_.lonaxis.showgrid=!1),_.lataxis&&(_.lataxis.showgrid=!1),t._template=_}for(var b=r("visible"),p,k=0;k0&&O<0&&(O+=360);var V=(z+O)/2,G;if(!c){var Z=f?l.projRotate:[V,0,0];G=r("projection.rotation.lon",Z[0]),r("projection.rotation.lat",Z[1]),r("projection.rotation.roll",Z[2]),p=r("showcoastlines",!f&&b),p&&(r("coastlinecolor"),r("coastlinewidth")),p=r("showocean",b?void 0:!1),p&&r("oceancolor")}var H,N;if(c?(H=-96.6,N=38.7):(H=f?V:G,N=(T[0]+T[1])/2),r("center.lon",H),r("center.lat",N),h&&(r("projection.tilt"),r("projection.distance")),d){var j=l.projParallels||[0,60];r("projection.parallels",j)}r("projection.scale"),p=r("showland",b?void 0:!1),p&&r("landcolor"),p=r("showlakes",b?void 0:!1),p&&r("lakecolor"),p=r("showrivers",b?void 0:!1),p&&(r("rivercolor"),r("riverwidth")),p=r("showcountries",f&&s!=="usa"&&b),p&&(r("countrycolor"),r("countrywidth")),(s==="usa"||s==="north america"&&o===50)&&(r("showsubunits",b),r("subunitcolor"),r("subunitwidth")),f||(p=r("showframe",b),p&&(r("framecolor"),r("framewidth"))),r("bgcolor");var re=r("fitbounds");re&&(delete t.projection.scale,f?(delete t.center.lon,delete t.center.lat):v?(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon,delete t.projection.rotation.lat,delete t.lonaxis.range,delete t.lataxis.range):(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon))}});var GZ=ye((Amr,JDe)=>{"use strict";var s7t=Id().getSubplotCalcData,l7t=Dr().counterRegex,u7t=VDe(),Xm="geo",YDe=l7t(Xm),KDe={};KDe[Xm]={valType:"subplotid",dflt:Xm,editType:"calc"};function c7t(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[Xm],i=0;i{"use strict";$De.exports={attributes:H2(),supplyDefaults:RRe(),colorbar:$d(),formatLabels:zRe(),calc:vF(),calcGeoJSON:PZ().calcGeoJSON,plot:PZ().plot,style:EZ(),styleOnSelect:op().styleOnSelect,hoverPoints:bDe(),eventData:TDe(),selectPoints:MDe(),moduleType:"trace",name:"scattergeo",basePlotModule:GZ(),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}});var tFe=ye((Mmr,eFe)=>{"use strict";eFe.exports=QDe()});var e5=ye((Emr,nFe)=>{"use strict";var{hovertemplateAttrs:d7t,templatefallbackAttrs:v7t}=Ll(),ax=H2(),p7t=Tu(),rFe=Gl(),g7t=Lh().defaultLine,nx=Ao().extendFlat,iFe=ax.marker.line;nFe.exports=nx({locations:{valType:"data_array",editType:"calc"},locationmode:ax.locationmode,z:{valType:"data_array",editType:"calc"},geojson:nx({},ax.geojson,{}),featureidkey:ax.featureidkey,text:nx({},ax.text,{}),hovertext:nx({},ax.hovertext,{}),marker:{line:{color:nx({},iFe.color,{dflt:g7t}),width:nx({},iFe.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:ax.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:ax.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:nx({},rFe.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:d7t(),hovertemplatefallback:v7t(),showlegend:nx({},rFe.showlegend,{dflt:!1})},p7t("",{cLetter:"z",editTypeOverride:"calc"}))});var oFe=ye((kmr,aFe)=>{"use strict";var sk=Dr(),m7t=Qh(),y7t=e5(),_7t=["The library used by the *country names* `locationmode` option is changing in the next major version.","Some country names in existing plots may not work in the new version.","To ensure consistent behavior, consider setting `locationmode` to *ISO-3*."].join(" ");aFe.exports=function(t,r,n,i){function a(h,d){return sk.coerce(t,r,y7t,h,d)}var o=a("locations"),s=a("z");if(!(o&&o.length&&sk.isArrayOrTypedArray(s)&&s.length)){r.visible=!1;return}r._length=Math.min(o.length,s.length);var l=a("geojson"),u;(typeof l=="string"&&l!==""||sk.isPlainObject(l))&&(u="geojson-id");var c=a("locationmode",u);c==="country names"&&sk.warn(_7t),c==="geojson-id"&&a("featureidkey"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var f=a("marker.line.width");f&&a("marker.line.color"),a("marker.opacity"),m7t(t,r,i,a,{prefix:"",cLetter:"z"}),sk.coerceSelectionMarkerOpacity(r,a)}});var FF=ye((Cmr,uFe)=>{"use strict";var sFe=Eo(),x7t=fs().BADNUM,b7t=gv(),w7t=km(),T7t=z0();function lFe(e){return e&&typeof e=="string"}uFe.exports=function(t,r){var n=r._length,i=new Array(n),a;r.geojson?a=function(c){return lFe(c)||sFe(c)}:a=lFe;for(var o=0;o{"use strict";var A7t=Oa(),S7t=ka(),HZ=So(),M7t=tc();function E7t(e,t){t&&cFe(e,t)}function cFe(e,t){var r=t[0].trace,n=t[0].node3,i=n.selectAll(".choroplethlocation"),a=r.marker||{},o=a.line||{},s=M7t.makeColorScaleFuncFromTrace(r);i.each(function(l){A7t.select(this).attr("fill",s(l.z)).call(S7t.stroke,l.mlc||o.color).call(HZ.dashLine,"",l.mlw||o.width||0).style("opacity",a.opacity)}),HZ.selectedPointStyle(i,r)}function k7t(e,t){var r=t[0].node3,n=t[0].trace;n.selectedpoints?HZ.selectedPointStyle(r.selectAll(".choroplethlocation"),n):cFe(e,t)}fFe.exports={style:E7t,styleOnSelect:k7t}});var jZ=ye((Pmr,vFe)=>{"use strict";var C7t=Oa(),hFe=Dr(),t5=ix(),L7t=gF().getTopojsonFeatures,dFe=Tg().findExtremes,P7t=zF().style;function I7t(e,t,r){var n=t.layers.backplot.select(".choroplethlayer");hFe.makeTraceGroups(n,r,"trace choropleth").each(function(i){var a=C7t.select(this),o=a.selectAll("path.choroplethlocation").data(hFe.identity);o.enter().append("path").classed("choroplethlocation",!0),o.exit().remove(),P7t(e,i)})}function R7t(e,t){for(var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r.locationmode,o=r._length,s=a==="geojson-id"?t5.extractTraceFeature(e):L7t(r,i.topojson),l=[],u=[],c=0;c{"use strict";var D7t=ho(),F7t=e5(),z7t=Dr().fillText;pFe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.subplot,s,l,u,c,f=[r,n],h=[r+360,n];for(l=0;l")}}});var qF=ye((Rmr,gFe)=>{"use strict";gFe.exports=function(t,r,n,i,a){t.location=r.location,t.z=r.z;var o=i[a];return o.fIn&&o.fIn.properties&&(t.properties=o.fIn.properties),t.ct=o.ct,t}});var BF=ye((Dmr,mFe)=>{"use strict";mFe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l,u,c,f;if(r===!1)for(s=0;s{"use strict";yFe.exports={attributes:e5(),supplyDefaults:oFe(),colorbar:S_(),calc:FF(),calcGeoJSON:jZ().calcGeoJSON,plot:jZ().plot,style:zF().style,styleOnSelect:zF().styleOnSelect,hoverPoints:OF(),eventData:qF(),selectPoints:BF(),moduleType:"trace",name:"choropleth",basePlotModule:GZ(),categories:["geo","noOpacity","showLegend"],meta:{}}});var bFe=ye((zmr,xFe)=>{"use strict";xFe.exports=_Fe()});var NF=ye((Omr,TFe)=>{"use strict";var q7t=qa(),s0=Dr(),B7t=uT();function N7t(e,t,r,n){var i=e.cd,a=i[0].t,o=i[0].trace,s=e.xa,l=e.ya,u=a.x,c=a.y,f=s.c2p(t),h=l.c2p(r),d=e.distance,v;if(a.tree){var _=s.p2c(f-d),b=s.p2c(f+d),p=l.p2c(h-d),k=l.p2c(h+d);n==="x"?v=a.tree.range(Math.min(_,b),Math.min(l._rl[0],l._rl[1]),Math.max(_,b),Math.max(l._rl[0],l._rl[1])):v=a.tree.range(Math.min(_,b),Math.min(p,k),Math.max(_,b),Math.max(p,k))}else v=a.ids;var E,S,L,x,C,M,g,P,T,z=d;if(n==="x"){var O=!!o.xperiodalignment,V=!!o.yperiodalignment;for(C=0;C=Math.min(G,Z)&&f<=Math.max(G,Z)?0:1/0}if(M=Math.min(H,N)&&h<=Math.max(H,N)?0:1/0}T=Math.sqrt(M*M+g*g),S=v[C]}}}else for(C=v.length-1;C>-1;C--)E=v[C],L=u[E],x=c[E],M=s.c2p(L)-f,g=l.c2p(x)-h,P=Math.sqrt(M*M+g*g),P{"use strict";var AFe=20;SFe.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:AFe,SYMBOL_STROKE:AFe/20,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}});var lk=ye((Bmr,CFe)=>{"use strict";var U7t=Gl(),V7t=ec(),G7t=kg(),mf=pf(),MFe=df().axisHoverFormat,EFe=Tu(),H7t=Z1(),WZ=Ao().extendFlat,j7t=mc().overrideAll,W7t=ox().DASHES,kFe=mf.line,r1=mf.marker,X7t=r1.line,sx=CFe.exports=j7t({x:mf.x,x0:mf.x0,dx:mf.dx,y:mf.y,y0:mf.y0,dy:mf.dy,xperiod:mf.xperiod,yperiod:mf.yperiod,xperiod0:mf.xperiod0,yperiod0:mf.yperiod0,xperiodalignment:mf.xperiodalignment,yperiodalignment:mf.yperiodalignment,xhoverformat:MFe("x"),yhoverformat:MFe("y"),text:mf.text,hovertext:mf.hovertext,textposition:mf.textposition,textfont:V7t({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,noNumericWeightValues:!0,variantValues:["normal","small-caps"]}),mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"]},line:{color:kFe.color,width:kFe.width,shape:{valType:"enumerated",values:["linear","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},dash:{valType:"enumerated",values:H7t(W7t),dflt:"solid"}},marker:WZ({},EFe("marker"),{symbol:r1.symbol,angle:r1.angle,size:r1.size,sizeref:r1.sizeref,sizemin:r1.sizemin,sizemode:r1.sizemode,opacity:r1.opacity,colorbar:r1.colorbar,line:WZ({},EFe("marker.line"),{width:X7t.width})}),connectgaps:mf.connectgaps,fill:WZ({},mf.fill,{dflt:"none"}),fillcolor:G7t(),selected:{marker:mf.selected.marker,textfont:mf.selected.textfont},unselected:{marker:mf.unselected.marker,textfont:mf.unselected.textfont},opacity:U7t.opacity},"calc","nested");sx.x.editType=sx.y.editType=sx.x0.editType=sx.y0.editType="calc+clearAxisTypes";sx.hovertemplate=mf.hovertemplate;sx.hovertemplatefallback=mf.hovertemplatefallback;sx.texttemplate=mf.texttemplate;sx.texttemplatefallback=mf.texttemplatefallback});var UF=ye(XZ=>{"use strict";var LFe=ox();XZ.isOpenSymbol=function(e){return typeof e=="string"?LFe.OPEN_RE.test(e):e%200>100};XZ.isDotSymbol=function(e){return typeof e=="string"?LFe.DOT_RE.test(e):e>200}});var RFe=ye((Umr,IFe)=>{"use strict";var PFe=Dr(),Z7t=qa(),Y7t=UF(),K7t=lk(),J7t=Sm(),VF=Ru(),$7t=Q3(),Q7t=Pg(),e9t=$p(),t9t=R0(),r9t=Ig(),i9t=D0();IFe.exports=function(t,r,n,i){function a(d,v){return PFe.coerce(t,r,K7t,d,v)}var o=t.marker?Y7t.isOpenSymbol(t.marker.symbol):!1,s=VF.isBubble(t),l=$7t(t,r,i,a);if(!l){r.visible=!1;return}Q7t(t,r,i,a),a("xhoverformat"),a("yhoverformat");var u=l{"use strict";var n9t=iI();DFe.exports=function(t,r,n){var i=t.i;return"x"in t||(t.x=r._x[i]),"y"in t||(t.y=r._y[i]),n9t(t,r,n)}});var OFe=ye((Gmr,zFe)=>{"use strict";function a9t(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l>=0?(a=o,i=o-1):n=o+1}return a}function o9t(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l>0?(a=o,i=o-1):n=o+1}return a}function s9t(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l<0?(a=o,n=o+1):i=o-1}return a}function l9t(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l<=0?(a=o,n=o+1):i=o-1}return a}function u9t(e,t,r,n,i){for(;n<=i;){var a=n+i>>>1,o=e[a],s=r!==void 0?r(o,t):o-t;if(s===0)return a;s<=0?n=a+1:i=a-1}return-1}function uk(e,t,r,n,i,a){return typeof r=="function"?a(e,t,r,n===void 0?0:n|0,i===void 0?e.length-1:i|0):a(e,t,void 0,r===void 0?0:r|0,n===void 0?e.length-1:n|0)}zFe.exports={ge:function(e,t,r,n,i){return uk(e,t,r,n,i,a9t)},gt:function(e,t,r,n,i){return uk(e,t,r,n,i,o9t)},lt:function(e,t,r,n,i){return uk(e,t,r,n,i,s9t)},le:function(e,t,r,n,i){return uk(e,t,r,n,i,l9t)},eq:function(e,t,r,n,i){return uk(e,t,r,n,i,u9t)}}});var Zm=ye((Hmr,BFe)=>{"use strict";BFe.exports=function(t,r,n){var i={},a,o;if(typeof r=="string"&&(r=qFe(r)),Array.isArray(r)){var s={};for(o=0;o{"use strict";var c9t=Zm();NFe.exports=f9t;function f9t(e){var t;return arguments.length>1&&(e=arguments),typeof e=="string"?e=e.split(/\s/).map(parseFloat):typeof e=="number"&&(e=[e]),e.length&&typeof e[0]=="number"?e.length===1?t={width:e[0],height:e[0],x:0,y:0}:e.length===2?t={width:e[0],height:e[1],x:0,y:0}:t={x:e[0],y:e[1],width:e[2]-e[0]||0,height:e[3]-e[1]||0}:e&&(e=c9t(e,{left:"x l left Left",top:"y t top Top",width:"w width W Width",height:"h height W Width",bottom:"b bottom Bottom",right:"r right Right"}),t={x:e.left||0,y:e.top||0},e.width==null?e.right?t.width=e.right-t.x:t.width=0:t.width=e.width,e.height==null?e.bottom?t.height=e.bottom-t.y:t.height=0:t.height=e.height),t}});var W2=ye((Wmr,UFe)=>{"use strict";UFe.exports=h9t;function h9t(e,t){if(!e||e.length==null)throw Error("Argument should be an array");t==null?t=1:t=Math.floor(t);for(var r=Array(t*2),n=0;ni&&(i=e[o]),e[o]{VFe.exports=function(){for(var e=0;e{var HFe=ZD();jFe.exports=d9t;function d9t(e,t,r){if(!e)throw new TypeError("must specify data as first parameter");if(r=+(r||0)|0,Array.isArray(e)&&e[0]&&typeof e[0][0]=="number"){var n=e[0].length,i=e.length*n,a,o,s,l;(!t||typeof t=="string")&&(t=new(HFe(t||"float32"))(i+r));var u=t.length-r;if(i!==u)throw new Error("source length "+i+" ("+n+"x"+e.length+") does not match destination length "+u);for(a=0,s=r;a{"use strict";WFe.exports=function(e){var t=typeof e;return e!==null&&(t==="object"||t==="function")}});var YFe=ye((Kmr,ZFe)=>{"use strict";ZFe.exports=Math.log2||function(e){return Math.log(e)*Math.LOG2E}});var rze=ye((Jmr,tze)=>{"use strict";var KFe=OFe(),JFe=ZE(),v9t=r5(),p9t=W2(),$Fe=Zm(),YZ=GFe(),g9t=X2(),m9t=XFe(),y9t=ZD(),QFe=YFe(),_9t=1073741824;tze.exports=function(t,r){r||(r={}),t=g9t(t,"float64"),r=$Fe(r,{bounds:"range bounds dataBox databox",maxDepth:"depth maxDepth maxdepth level maxLevel maxlevel levels",dtype:"type dtype format out dst output destination"});let n=YZ(r.maxDepth,255),i=YZ(r.bounds,p9t(t,2));i[0]===i[2]&&i[2]++,i[1]===i[3]&&i[3]++;let a=eze(t,i),o=t.length>>>1,s;r.dtype||(r.dtype="array"),typeof r.dtype=="string"?s=new(y9t(r.dtype))(o):r.dtype&&(s=r.dtype,Array.isArray(s)&&(s.length=o));for(let p=0;pn||x>_9t){for(let N=0;N_e||g>Ee||P=z||re===oe)return;let Ce=l[j];oe===void 0&&(oe=Ce.length);for(let Re=re;Re=S&&Ze<=x&&ut>=L&&ut<=C&&O.push(ce)}let me=u[j],ie=me[re*4+0],Se=me[re*4+1],Le=me[re*4+2],Ae=me[re*4+3],Fe=G(me,re+1),Pe=N*.5,ge=j+1;V(Z,H,Pe,ge,ie,Se||Le||Ae||Fe),V(Z,H+Pe,Pe,ge,Se,Le||Ae||Fe),V(Z+Pe,H,Pe,ge,Le,Ae||Fe),V(Z+Pe,H+Pe,Pe,ge,Ae,Fe)}function G(Z,H){let N=null,j=0;for(;N===null;)if(N=Z[H*4+j],j++,j>Z.length)return null;return N}return O}function _(p,k,E,S,L){let x=[];for(let C=0;C{"use strict";ize.exports=rze()});var KZ=ye((Qmr,nze)=>{nze.exports=x9t;function x9t(e){var t=0,r=0,n=0,i=0;return e.map(function(a){a=a.slice();var o=a[0],s=o.toUpperCase();if(o!=s)switch(a[0]=s,o){case"a":a[6]+=n,a[7]+=i;break;case"v":a[1]+=i;break;case"h":a[1]+=n;break;default:for(var l=1;l{"use strict";Object.defineProperty(HF,"__esModule",{value:!0});var b9t=function(){function e(t,r){var n=[],i=!0,a=!1,o=void 0;try{for(var s=t[Symbol.iterator](),l;!(i=(l=s.next()).done)&&(n.push(l.value),!(r&&n.length===r));i=!0);}catch(u){a=!0,o=u}finally{try{!i&&s.return&&s.return()}finally{if(a)throw o}}return n}return function(t,r){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),ck=Math.PI*2,JZ=function(t,r,n,i,a,o,s){var l=t.x,u=t.y;l*=r,u*=n;var c=i*l-a*u,f=a*l+i*u;return{x:c+o,y:f+s}},w9t=function(t,r){var n=r===1.5707963267948966?.551915024494:r===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(r/4),i=Math.cos(t),a=Math.sin(t),o=Math.cos(t+r),s=Math.sin(t+r);return[{x:i-a*n,y:a+i*n},{x:o+s*n,y:s-o*n},{x:o,y:s}]},aze=function(t,r,n,i){var a=t*i-r*n<0?-1:1,o=t*n+r*i;return o>1&&(o=1),o<-1&&(o=-1),a*Math.acos(o)},T9t=function(t,r,n,i,a,o,s,l,u,c,f,h){var d=Math.pow(a,2),v=Math.pow(o,2),_=Math.pow(f,2),b=Math.pow(h,2),p=d*v-d*b-v*_;p<0&&(p=0),p/=d*b+v*_,p=Math.sqrt(p)*(s===l?-1:1);var k=p*a/o*h,E=p*-o/a*f,S=c*k-u*E+(t+n)/2,L=u*k+c*E+(r+i)/2,x=(f-k)/a,C=(h-E)/o,M=(-f-k)/a,g=(-h-E)/o,P=aze(1,0,x,C),T=aze(x,C,M,g);return l===0&&T>0&&(T-=ck),l===1&&T<0&&(T+=ck),[S,L,P,T]},A9t=function(t){var r=t.px,n=t.py,i=t.cx,a=t.cy,o=t.rx,s=t.ry,l=t.xAxisRotation,u=l===void 0?0:l,c=t.largeArcFlag,f=c===void 0?0:c,h=t.sweepFlag,d=h===void 0?0:h,v=[];if(o===0||s===0)return[];var _=Math.sin(u*ck/360),b=Math.cos(u*ck/360),p=b*(r-i)/2+_*(n-a)/2,k=-_*(r-i)/2+b*(n-a)/2;if(p===0&&k===0)return[];o=Math.abs(o),s=Math.abs(s);var E=Math.pow(p,2)/Math.pow(o,2)+Math.pow(k,2)/Math.pow(s,2);E>1&&(o*=Math.sqrt(E),s*=Math.sqrt(E));var S=T9t(r,n,i,a,o,s,f,d,_,b,p,k),L=b9t(S,4),x=L[0],C=L[1],M=L[2],g=L[3],P=Math.abs(g)/(ck/4);Math.abs(1-P)<1e-7&&(P=1);var T=Math.max(Math.ceil(P),1);g/=T;for(var z=0;z{"use strict";uze.exports=M9t;var S9t=sze();function M9t(e){for(var t,r=[],n=0,i=0,a=0,o=0,s=null,l=null,u=0,c=0,f=0,h=e.length;f4?(n=d[d.length-4],i=d[d.length-3]):(n=u,i=c),r.push(d)}return r}function jF(e,t,r,n){return["C",e,t,r,n,r,n]}function lze(e,t,r,n,i,a){return["C",e/3+2/3*r,t/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}});var $Z=ye((tyr,fze)=>{"use strict";fze.exports=function(t){return typeof t!="string"?!1:(t=t.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(t)&&/[\dz]$/i.test(t)&&t.length>4))}});var vze=ye((ryr,dze)=>{"use strict";var E9t=QS(),k9t=KZ(),C9t=cze(),L9t=$Z(),hze=sE();dze.exports=P9t;function P9t(e){if(Array.isArray(e)&&e.length===1&&typeof e[0]=="string"&&(e=e[0]),typeof e=="string"&&(hze(L9t(e),"String is not an SVG path."),e=E9t(e)),hze(Array.isArray(e),"Argument should be a string or an array of path segments."),e=k9t(e),e=C9t(e),!e.length)return[0,0,0,0];for(var t=[1/0,1/0,-1/0,-1/0],r=0,n=e.length;rt[2]&&(t[2]=i[a+0]),i[a+1]>t[3]&&(t[3]=i[a+1]);return t}});var xze=ye((iyr,_ze)=>{var Z2=Math.PI,pze=yze(120);_ze.exports=I9t;function I9t(e){for(var t,r=[],n=0,i=0,a=0,o=0,s=null,l=null,u=0,c=0,f=0,h=e.length;f7&&(r.push(d.splice(0,7)),d.unshift("C"));break;case"S":var _=u,b=c;(t=="C"||t=="S")&&(_+=_-n,b+=b-i),d=["C",_,b,d[1],d[2],d[3],d[4]];break;case"T":t=="Q"||t=="T"?(s=u*2-s,l=c*2-l):(s=u,l=c),d=gze(u,c,s,l,d[1],d[2]);break;case"Q":s=d[1],l=d[2],d=gze(u,c,d[1],d[2],d[3],d[4]);break;case"L":d=WF(u,c,d[1],d[2]);break;case"H":d=WF(u,c,d[1],c);break;case"V":d=WF(u,c,u,d[1]);break;case"Z":d=WF(u,c,a,o);break}t=v,u=d[d.length-2],c=d[d.length-1],d.length>4?(n=d[d.length-4],i=d[d.length-3]):(n=u,i=c),r.push(d)}return r}function WF(e,t,r,n){return["C",e,t,r,n,r,n]}function gze(e,t,r,n,i,a){return["C",e/3+2/3*r,t/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}function mze(e,t,r,n,i,a,o,s,l,u){if(u)E=u[0],S=u[1],p=u[2],k=u[3];else{var c=QZ(e,t,-i);e=c.x,t=c.y,c=QZ(s,l,-i),s=c.x,l=c.y;var f=(e-s)/2,h=(t-l)/2,d=f*f/(r*r)+h*h/(n*n);d>1&&(d=Math.sqrt(d),r=d*r,n=d*n);var v=r*r,_=n*n,b=(a==o?-1:1)*Math.sqrt(Math.abs((v*_-v*h*h-_*f*f)/(v*h*h+_*f*f)));b==1/0&&(b=1);var p=b*r*h/n+(e+s)/2,k=b*-n*f/r+(t+l)/2,E=Math.asin(((t-k)/n).toFixed(9)),S=Math.asin(((l-k)/n).toFixed(9));E=eS&&(E=E-Z2*2),!o&&S>E&&(S=S-Z2*2)}if(Math.abs(S-E)>pze){var L=S,x=s,C=l;S=E+pze*(o&&S>E?1:-1),s=p+r*Math.cos(S),l=k+n*Math.sin(S);var M=mze(s,l,r,n,i,0,o,x,C,[S,L,p,k])}var g=Math.tan((S-E)/4),P=4/3*r*g,T=4/3*n*g,z=[2*e-(e+P*Math.sin(E)),2*t-(t-T*Math.cos(E)),s+P*Math.sin(S),l-T*Math.cos(S),s,l];if(u)return z;M&&(z=z.concat(M));for(var O=0;O{var R9t=KZ(),D9t=xze(),F9t={M:"moveTo",C:"bezierCurveTo"};bze.exports=function(e,t){e.beginPath(),D9t(R9t(t)).forEach(function(r){var n=r[0],i=r.slice(1);e[F9t[n]].apply(e,i)}),e.closePath()}});var Mze=ye((ayr,Sze)=>{"use strict";var z9t=ZE();Sze.exports=O9t;var fk=1e20;function O9t(e,t){t||(t={});var r=t.cutoff==null?.25:t.cutoff,n=t.radius==null?8:t.radius,i=t.channel||0,a,o,s,l,u,c,f,h,d,v,_;if(ArrayBuffer.isView(e)||Array.isArray(e)){if(!t.width||!t.height)throw Error("For raw data width and height should be provided by options");a=t.width,o=t.height,l=e,t.stride?c=t.stride:c=Math.floor(e.length/a/o)}else window.HTMLCanvasElement&&e instanceof window.HTMLCanvasElement?(h=e,f=h.getContext("2d"),a=h.width,o=h.height,d=f.getImageData(0,0,a,o),l=d.data,c=4):window.CanvasRenderingContext2D&&e instanceof window.CanvasRenderingContext2D?(h=e.canvas,f=e,a=h.width,o=h.height,d=f.getImageData(0,0,a,o),l=d.data,c=4):window.ImageData&&e instanceof window.ImageData&&(d=e,a=e.width,o=e.height,l=d.data,c=4);if(s=Math.max(a,o),window.Uint8ClampedArray&&l instanceof window.Uint8ClampedArray||window.Uint8Array&&l instanceof window.Uint8Array)for(u=l,l=Array(a*o),v=0,_=u.length;v<_;v++)l[v]=u[v*c+i]/255;else if(c!==1)throw Error("Raw data can have only 1 value per pixel");var b=Array(a*o),p=Array(a*o),k=Array(s),E=Array(s),S=Array(s+1),L=Array(s);for(v=0,_=a*o;v<_;v++){var x=l[v];b[v]=x===1?0:x===0?fk:Math.pow(Math.max(0,.5-x),2),p[v]=x===1?fk:x===0?0:Math.pow(Math.max(0,x-.5),2)}Tze(b,a,o,k,E,L,S),Tze(p,a,o,k,E,L,S);var C=window.Float32Array?new Float32Array(a*o):new Array(a*o);for(v=0,_=a*o;v<_;v++)C[v]=z9t(1-((b[v]-p[v])/n+r),0,1);return C}function Tze(e,t,r,n,i,a,o){for(var s=0;s{"use strict";var q9t=vze(),B9t=QS(),N9t=wze(),U9t=$Z(),V9t=Mze(),eY=document.createElement("canvas"),hp=eY.getContext("2d");Eze.exports=G9t;function G9t(e,t){if(!U9t(e))throw Error("Argument should be valid svg path string");t||(t={});var r,n;t.shape?(r=t.shape[0],n=t.shape[1]):(r=eY.width=t.w||t.width||200,n=eY.height=t.h||t.height||200);var i=Math.min(r,n),a=t.stroke||0,o=t.viewbox||t.viewBox||q9t(e),s=[r/(o[2]-o[0]),n/(o[3]-o[1])],l=Math.min(s[0]||0,s[1]||0)/2;if(hp.fillStyle="black",hp.fillRect(0,0,r,n),hp.fillStyle="white",a&&(typeof a!="number"&&(a=1),a>0?hp.strokeStyle="white":hp.strokeStyle="black",hp.lineWidth=Math.abs(a)),hp.translate(r*.5,n*.5),hp.scale(l,l),H9t()){var u=new Path2D(e);hp.fill(u),a&&hp.stroke(u)}else{var c=B9t(e);N9t(hp,c),hp.fill(),a&&hp.stroke()}hp.setTransform(1,0,0,1,0,0);var f=V9t(hp,{cutoff:t.cutoff!=null?t.cutoff:.5,radius:t.radius!=null?t.radius:i*.5});return f}var XF;function H9t(){if(XF!=null)return XF;var e=document.createElement("canvas").getContext("2d");if(e.canvas.width=e.canvas.height=1,!window.Path2D)return XF=!1;var t=new Path2D("M0,0h1v1h-1v-1Z");e.fillStyle="black",e.fill(t);var r=e.getImageData(0,0,1,1);return XF=r&&r.data&&r.data[3]===255}});var K2=ye((syr,Bze)=>{"use strict";var YF=Eo(),j9t=kze(),ZF=J_(),W9t=qa(),a5=Dr(),_h=a5.isArrayOrTypedArray,i5=So(),Cze=hf(),Lze=$y().formatColor,n5=Ru(),X9t=E3(),rY=UF(),hk=ox(),Z9t=N1().DESELECTDIM,Pze={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},Y9t=ip().appendArrayPointValue;function K9t(e,t){var r,n={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0},i=e._context.plotGlPixelRatio;if(t.visible!==!0)return n;if(n5.hasText(t)&&(n.text=qze(e,t),n.textSel=Rze(e,t,t.selected),n.textUnsel=Rze(e,t,t.unselected)),n5.hasMarkers(t)&&(n.marker=nY(e,t),n.markerSel=iY(e,t,t.selected),n.markerUnsel=iY(e,t,t.unselected),!t.unselected&&_h(t.marker.opacity))){var a=t.marker.opacity;for(n.markerUnsel.opacity=new Array(a.length),r=0;r500?"bold":"normal":e}function nY(e,t){var r=t._length,n=t.marker,i={},a,o=_h(n.symbol),s=_h(n.angle),l=_h(n.color),u=_h(n.line.color),c=_h(n.opacity),f=_h(n.size),h=_h(n.line.width),d;if(o||(d=rY.isOpenSymbol(n.symbol)),o||l||u||c||s){i.symbols=new Array(r),i.angles=new Array(r),i.colors=new Array(r),i.borderColors=new Array(r);var v=n.symbol,_=n.angle,b=Lze(n,n.opacity,r),p=Lze(n.line,n.opacity,r);if(!_h(p[0])){var k=p;for(p=Array(r),a=0;ahk.TOO_MANY_POINTS||n5.hasMarkers(t)?"rect":"round";if(u&&t.connectgaps){var f=a[0],h=a[1];for(o=0;o1?l[o]:l[0]:l,d=_h(u)?u.length>1?u[o]:u[0]:u,v=Pze[h],_=Pze[d],b=c?c/.8+1:0,p=-_*b-_*.5;a.offset[o]=[v*b/f,p/f]}}return a}Bze.exports={style:K9t,markerStyle:nY,markerSelection:iY,linePositions:$9t,errorBarPositions:Q9t,textPosition:eOt}});var aY=ye((lyr,Nze)=>{"use strict";var KF=Dr();Nze.exports=function(t,r){var n=r._scene,i={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},a={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return r._scene||(n=r._scene={},n.init=function(){KF.extendFlat(n,a,i)},n.init(),n.update=function(s){var l=KF.repeat(s,n.count);if(n.fill2d&&n.fill2d.update(l),n.scatter2d&&n.scatter2d.update(l),n.line2d&&n.line2d.update(l),n.error2d&&n.error2d.update(l.concat(l)),n.select2d&&n.select2d.update(l),n.glText)for(var u=0;u{"use strict";var tOt=GF(),o5=Dr(),Uze=hf(),rOt=Tg().findExtremes,Vze=Rg(),oY=O0(),iOt=oY.calcMarkerSize,nOt=oY.calcAxisExpansion,aOt=oY.setFirstScatter,oOt=F0(),s5=K2(),sOt=aY(),Gze=fs().BADNUM,lOt=ox().TOO_MANY_POINTS;jze.exports=function(t,r){var n=t._fullLayout,i=r._xA=Uze.getFromId(t,r.xaxis,"x"),a=r._yA=Uze.getFromId(t,r.yaxis,"y"),o=n._plots[r.xaxis+r.yaxis],s=r._length,l=s>=lOt,u=s*2,c={},f,h=i.makeCalcdata(r,"x"),d=a.makeCalcdata(r,"y"),v=Vze(r,i,"x",h),_=Vze(r,a,"y",d),b=v.vals,p=_.vals;r._x=b,r._y=p,r.xperiodalignment&&(r._origX=h,r._xStarts=v.starts,r._xEnds=v.ends),r.yperiodalignment&&(r._origY=d,r._yStarts=_.starts,r._yEnds=_.ends);var k=new Array(u),E=new Array(s);for(f=0;f1&&o5.extendFlat(o.line,s5.linePositions(e,r,n)),o.errorX||o.errorY){var s=s5.errorBarPositions(e,r,n,i,a);o.errorX&&o5.extendFlat(o.errorX,s.x),o.errorY&&o5.extendFlat(o.errorY,s.y)}return o.text&&(o5.extendFlat(o.text,{positions:n},s5.textPosition(e,r,o.text,o.marker)),o5.extendFlat(o.textSel,{positions:n},s5.textPosition(e,r,o.text,o.markerSel)),o5.extendFlat(o.textUnsel,{positions:n},s5.textPosition(e,r,o.text,o.markerUnsel))),o}});var sY=ye((cyr,Zze)=>{"use strict";var Xze=Dr(),cOt=ka(),fOt=N1().DESELECTDIM;function hOt(e){var t=e[0],r=t.trace,n=t.t,i=n._scene,a=n.index,o=i.selectBatch[a],s=i.unselectBatch[a],l=i.textOptions[a],u=i.textSelectedOptions[a]||{},c=i.textUnselectedOptions[a]||{},f=Xze.extendFlat({},l),h,d;if(o.length||s.length){var v=u.color,_=c.color,b=l.color,p=Xze.isArrayOrTypedArray(b);for(f.color=new Array(r._length),h=0;h{"use strict";var Yze=Ru(),dOt=sY().styleTextSelection;Kze.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l=n[0].t,u=s._length,c=l.x,f=l.y,h=l._scene,d=l.index;if(!h)return o;var v=Yze.hasText(s),_=Yze.hasMarkers(s),b=!_&&!v;if(s.visible!==!0||b)return o;var p=[],k=[];if(r!==!1&&!r.degenerate)for(var E=0;E{"use strict";var vOt=NF();Jze.exports={moduleType:"trace",name:"scattergl",basePlotModule:ph(),categories:["gl","regl","cartesian","symbols","errorBarsOK","showLegend","scatter-like"],attributes:lk(),supplyDefaults:RFe(),crossTraceDefaults:aU(),colorbar:$d(),formatLabels:FFe(),calc:Wze(),hoverPoints:vOt.hoverPoints,selectPoints:lY(),meta:{}}});var e7e=ye((dyr,$F)=>{"use strict";var JF=ZE();$F.exports=Qze;$F.exports.to=Qze;$F.exports.from=pOt;function Qze(e,t){t==null&&(t=!0);var r=e[0],n=e[1],i=e[2],a=e[3];a==null&&(a=t?1:255),t&&(r*=255,n*=255,i*=255,a*=255),r=JF(r,0,255)&255,n=JF(n,0,255)&255,i=JF(i,0,255)&255,a=JF(a,0,255)&255;var o=r*16777216+(n<<16)+(i<<8)+a;return o}function pOt(e,t){e=+e;var r=e>>>24,n=(e&16711680)>>>16,i=(e&65280)>>>8,a=e&255;return t===!1?[r,n,i,a]:[r/255,n/255,i/255,a/255]}});var Oh=ye((vyr,r7e)=>{"use strict";var t7e=Object.getOwnPropertySymbols,gOt=Object.prototype.hasOwnProperty,mOt=Object.prototype.propertyIsEnumerable;function yOt(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function _Ot(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(t).map(function(a){return t[a]});if(n.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(a){i[a]=a}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch(a){return!1}}r7e.exports=_Ot()?Object.assign:function(e,t){for(var r,n=yOt(e),i,a=1;a{i7e.exports=function(e){typeof e=="string"&&(e=[e]);for(var t=[].slice.call(arguments,1),r=[],n=0;n{"use strict";a7e.exports=function(t,r,n){Array.isArray(n)||(n=[].slice.call(arguments,2));for(var i=0,a=n.length;i{"use strict";o7e.exports=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))});var QF=ye((yyr,l5)=>{"use strict";l5.exports=dk;l5.exports.float32=l5.exports.float=dk;l5.exports.fract32=l5.exports.fract=xOt;var l7e=new Float32Array(1);function xOt(e,t){if(e.length){if(e instanceof Float32Array)return new Float32Array(e.length);t instanceof Float32Array||(t=dk(e));for(var r=0,n=t.length;r{"use strict";function bOt(e,t){var r=e==null?null:typeof Symbol!="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var n,i,a,o,s=[],l=!0,u=!1;try{if(a=(r=r.call(e)).next,t===0){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=a.call(r)).done)&&(s.push(n.value),s.length!==t);l=!0);}catch(c){u=!0,i=c}finally{try{if(!l&&r.return!=null&&(o=r.return(),Object(o)!==o))return}finally{if(u)throw i}}return s}}function wOt(e,t){return SOt(e)||bOt(e,t)||c7e(e,t)||kOt()}function TOt(e){return AOt(e)||MOt(e)||c7e(e)||EOt()}function AOt(e){if(Array.isArray(e))return cY(e)}function SOt(e){if(Array.isArray(e))return e}function MOt(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c7e(e,t){if(e){if(typeof e=="string")return cY(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return cY(e,t)}}function cY(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0)throw new Error("Invalid string. Length must be a multiple of 4");var L=E.indexOf("=");L===-1&&(L=S);var x=L===S?0:4-L%4;return[L,x]}function d(E){var S=h(E),L=S[0],x=S[1];return(L+x)*3/4-x}function v(E,S,L){return(S+L)*3/4-L}function _(E){var S,L=h(E),x=L[0],C=L[1],M=new l(v(E,x,C)),g=0,P=C>0?x-4:x,T;for(T=0;T>16&255,M[g++]=S>>8&255,M[g++]=S&255;return C===2&&(S=s[E.charCodeAt(T)]<<2|s[E.charCodeAt(T+1)]>>4,M[g++]=S&255),C===1&&(S=s[E.charCodeAt(T)]<<10|s[E.charCodeAt(T+1)]<<4|s[E.charCodeAt(T+2)]>>2,M[g++]=S>>8&255,M[g++]=S&255),M}function b(E){return o[E>>18&63]+o[E>>12&63]+o[E>>6&63]+o[E&63]}function p(E,S,L){for(var x,C=[],M=S;MP?P:g+M));return x===1?(S=E[L-1],C.push(o[S>>2]+o[S<<4&63]+"==")):x===2&&(S=(E[L-2]<<8)+E[L-1],C.push(o[S>>10]+o[S>>4&63]+o[S<<2&63]+"=")),C.join("")}},7518:function(i,a,o){"use strict";var s=o(1433);function l(f,h,d,v,_,b){this.location=f,this.dimension=h,this.a=d,this.b=v,this.c=_,this.d=b}l.prototype.bind=function(f){switch(this.dimension){case 1:f.vertexAttrib1f(this.location,this.a);break;case 2:f.vertexAttrib2f(this.location,this.a,this.b);break;case 3:f.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:f.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d);break}};function u(f,h,d){this.gl=f,this._ext=h,this.handle=d,this._attribs=[],this._useElements=!1,this._elementsType=f.UNSIGNED_SHORT}u.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var f=0;f1.0001)return null;T+=P[L]}return Math.abs(T-1)>.001?null:[x,h(v,P),P]}},7636:function(i){i.exports=a;function a(o,s){s=s||1;var l=Math.random()*2*Math.PI,u=Math.random()*2-1,c=Math.sqrt(1-u*u)*s;return o[0]=Math.cos(l)*c,o[1]=Math.sin(l)*c,o[2]=u*s,o}},7640:function(i,a,o){"use strict";var s=o(1888);function l(_){switch(_){case"uint32":return[s.mallocUint32,s.freeUint32];default:return null}}var u={"uint32,1,0":function(_,b){return function(k,E,S,L,x,C,M,g,P,T,z){var O,V,G,Z=k*x+L,j,N=_(g),H,te,oe,_e;for(O=k+1;O<=E;++O){for(V=O,Z+=x,G=Z,H=0,te=Z,j=0;jk;){H=0,te=G-x;t:for(j=0;j_e)break t;te+=T,H+=z}for(H=G,te=G-x,j=0;j>1,N=j-V,H=j+V,te=G,oe=N,_e=j,Ee=H,Ce=Z,me=E+1,ie=S-1,Se=!0,Le,Ae,Fe,Pe,ge,Re,ce,Ze,ut,pt=0,Zt=0,st=0,lt,Gt,Nt,Jt,sr,wr,cr,$e,St,Qt,Vt,_t,It,mt,er,lr,Tr=P,Lr=b(Tr),ti=b(Tr);Gt=C*te,Nt=C*oe,lr=x;e:for(lt=0;lt0){Ae=te,te=oe,oe=Ae;break e}if(st<0)break e;lr+=z}Gt=C*Ee,Nt=C*Ce,lr=x;e:for(lt=0;lt0){Ae=Ee,Ee=Ce,Ce=Ae;break e}if(st<0)break e;lr+=z}Gt=C*te,Nt=C*_e,lr=x;e:for(lt=0;lt0){Ae=te,te=_e,_e=Ae;break e}if(st<0)break e;lr+=z}Gt=C*oe,Nt=C*_e,lr=x;e:for(lt=0;lt0){Ae=oe,oe=_e,_e=Ae;break e}if(st<0)break e;lr+=z}Gt=C*te,Nt=C*Ee,lr=x;e:for(lt=0;lt0){Ae=te,te=Ee,Ee=Ae;break e}if(st<0)break e;lr+=z}Gt=C*_e,Nt=C*Ee,lr=x;e:for(lt=0;lt0){Ae=_e,_e=Ee,Ee=Ae;break e}if(st<0)break e;lr+=z}Gt=C*oe,Nt=C*Ce,lr=x;e:for(lt=0;lt0){Ae=oe,oe=Ce,Ce=Ae;break e}if(st<0)break e;lr+=z}Gt=C*oe,Nt=C*_e,lr=x;e:for(lt=0;lt0){Ae=oe,oe=_e,_e=Ae;break e}if(st<0)break e;lr+=z}Gt=C*Ee,Nt=C*Ce,lr=x;e:for(lt=0;lt0){Ae=Ee,Ee=Ce,Ce=Ae;break e}if(st<0)break e;lr+=z}for(Gt=C*te,Nt=C*oe,Jt=C*_e,sr=C*Ee,wr=C*Ce,cr=C*G,$e=C*j,St=C*Z,er=0,lr=x,lt=0;lt0)ie--;else if(st<0){for(Gt=C*Re,Nt=C*me,Jt=C*ie,lr=x,lt=0;lt0)for(;;){ce=x+ie*C,er=0;e:for(lt=0;lt0){if(--ieZ){e:for(;;){for(ce=x+me*C,er=0,lr=x,lt=0;lt1&&k?S(p,k[0],k[1]):S(p)}var d={"uint32,1,0":function(_,b){return function(p){var k=p.data,E=p.offset|0,S=p.shape,L=p.stride,x=L[0]|0,C=S[0]|0,M=L[1]|0,g=S[1]|0,P=M,T=M,z=1;C<=32?_(0,C-1,k,E,x,M,C,g,P,T,z):b(0,C-1,k,E,x,M,C,g,P,T,z)}}};function v(_,b){var p=[b,_].join(","),k=d[p],E=c(_,b),S=h(_,b,E);return k(E,S)}i.exports=v},7642:function(i,a,o){"use strict";var s=o(8954),l=o(1682);i.exports=h;function u(d,v){this.point=d,this.index=v}function c(d,v){for(var _=d.point,b=v.point,p=_.length,k=0;k=2)return!1;G[j]=N}return!0}):V=V.filter(function(G){for(var Z=0;Z<=b;++Z){var j=P[G[Z]];if(j<0)return!1;G[Z]=j}return!0}),b&1)for(var E=0;E",H="",te=N.length,oe=H.length,_e=G[0]===k||G[0]===L,Ee=0,Ce=-oe;Ee>-1&&(Ee=Z.indexOf(N,Ee),!(Ee===-1||(Ce=Z.indexOf(H,Ee+te),Ce===-1)||Ce<=Ee));){for(var me=Ee;me=Ce)j[me]=null,Z=Z.substr(0,me)+" "+Z.substr(me+1);else if(j[me]!==null){var ie=j[me].indexOf(G[0]);ie===-1?j[me]+=G:_e&&(j[me]=j[me].substr(0,ie+1)+(1+parseInt(j[me][ie+1]))+j[me].substr(ie+2))}var Se=Ee+te,Le=Z.substr(Se,Ce-Se),Ae=Le.indexOf(N);Ae!==-1?Ee=Ae:Ee=Ce+oe}return j}function M(V,G,Z){for(var j=G.textAlign||"start",N=G.textBaseline||"alphabetic",H=[1<<30,1<<30],te=[0,0],oe=V.length,_e=0;_e/g,` +`):Z=Z.replace(/\/g," ");var te="",oe=[];for(ge=0;ge-1?parseInt($e[1+Vt]):0,mt=_t>-1?parseInt(St[1+_t]):0;It!==mt&&(Qt=Qt.replace(st(),"?px "),Ze*=Math.pow(.75,mt-It),Qt=Qt.replace("?px ",st())),ce+=.25*ie*(mt-It)}if(H.superscripts===!0){var er=$e.indexOf(k),lr=St.indexOf(k),Tr=er>-1?parseInt($e[1+er]):0,Lr=lr>-1?parseInt(St[1+lr]):0;Tr!==Lr&&(Qt=Qt.replace(st(),"?px "),Ze*=Math.pow(.75,Lr-Tr),Qt=Qt.replace("?px ",st())),ce-=.25*ie*(Lr-Tr)}if(H.bolds===!0){var ti=$e.indexOf(v)>-1,Br=St.indexOf(v)>-1;!ti&&Br&&(Vr?Qt=Qt.replace("italic ","italic bold "):Qt="bold "+Qt),ti&&!Br&&(Qt=Qt.replace("bold ",""))}if(H.italics===!0){var Vr=$e.indexOf(b)>-1,dt=St.indexOf(b)>-1;!Vr&&dt&&(Qt="italic "+Qt),Vr&&!dt&&(Qt=Qt.replace("italic ",""))}G.font=Qt}for(Pe=0;Pe0&&(N=j.size),j.lineSpacing&&j.lineSpacing>0&&(H=j.lineSpacing),j.styletags&&j.styletags.breaklines&&(te.breaklines=!!j.styletags.breaklines),j.styletags&&j.styletags.bolds&&(te.bolds=!!j.styletags.bolds),j.styletags&&j.styletags.italics&&(te.italics=!!j.styletags.italics),j.styletags&&j.styletags.subscripts&&(te.subscripts=!!j.styletags.subscripts),j.styletags&&j.styletags.superscripts&&(te.superscripts=!!j.styletags.superscripts)),Z.font=[j.fontStyle,j.fontVariant,j.fontWeight,N+"px",j.font].filter(function(_e){return _e}).join(" "),Z.textAlign="start",Z.textBaseline="alphabetic",Z.direction="ltr";var oe=g(G,Z,V,N,H,te);return z(oe,j,N)}},7721:function(i,a,o){"use strict";var s=o(5716);i.exports=l;function l(u){return s(u[0])*s(u[1])}},7765:function(i,a,o){"use strict";i.exports=p;var s=o(9618),l=o(1888),u=o(446),c=o(1570);function f(k){for(var E=k.length,S=0,L=0;LV||z<0||z>V)throw new Error("gl-texture2d: Invalid texture size");return P._shape=[T,z],P.bind(),O.texImage2D(O.TEXTURE_2D,0,P.format,T,z,0,P.format,P.type,null),P._mipLevels=[0],P}function p(P,T,z,O,V,G){this.gl=P,this.handle=T,this.format=V,this.type=G,this._shape=[z,O],this._mipLevels=[0],this._magFilter=P.NEAREST,this._minFilter=P.NEAREST,this._wrapS=P.CLAMP_TO_EDGE,this._wrapT=P.CLAMP_TO_EDGE,this._anisoSamples=1;var Z=this,j=[this._wrapS,this._wrapT];Object.defineProperties(j,[{get:function(){return Z._wrapS},set:function(H){return Z.wrapS=H}},{get:function(){return Z._wrapT},set:function(H){return Z.wrapT=H}}]),this._wrapVector=j;var N=[this._shape[0],this._shape[1]];Object.defineProperties(N,[{get:function(){return Z._shape[0]},set:function(H){return Z.width=H}},{get:function(){return Z._shape[1]},set:function(H){return Z.height=H}}]),this._shapeVector=N}var k=p.prototype;Object.defineProperties(k,{minFilter:{get:function(){return this._minFilter},set:function(P){this.bind();var T=this.gl;if(this.type===T.FLOAT&&c.indexOf(P)>=0&&(T.getExtension("OES_texture_float_linear")||(P=T.NEAREST)),f.indexOf(P)<0)throw new Error("gl-texture2d: Unknown filter mode "+P);return T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MIN_FILTER,P),this._minFilter=P}},magFilter:{get:function(){return this._magFilter},set:function(P){this.bind();var T=this.gl;if(this.type===T.FLOAT&&c.indexOf(P)>=0&&(T.getExtension("OES_texture_float_linear")||(P=T.NEAREST)),f.indexOf(P)<0)throw new Error("gl-texture2d: Unknown filter mode "+P);return T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MAG_FILTER,P),this._magFilter=P}},mipSamples:{get:function(){return this._anisoSamples},set:function(P){var T=this._anisoSamples;if(this._anisoSamples=Math.max(P,1)|0,T!==this._anisoSamples){var z=this.gl.getExtension("EXT_texture_filter_anisotropic");z&&this.gl.texParameterf(this.gl.TEXTURE_2D,z.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(P){if(this.bind(),h.indexOf(P)<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,P),this._wrapS=P}},wrapT:{get:function(){return this._wrapT},set:function(P){if(this.bind(),h.indexOf(P)<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,P),this._wrapT=P}},wrap:{get:function(){return this._wrapVector},set:function(P){if(Array.isArray(P)||(P=[P,P]),P.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var T=0;T<2;++T)if(h.indexOf(P[T])<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);this._wrapS=P[0],this._wrapT=P[1];var z=this.gl;return this.bind(),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_WRAP_S,this._wrapS),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_WRAP_T,this._wrapT),P}},shape:{get:function(){return this._shapeVector},set:function(P){if(!Array.isArray(P))P=[P|0,P|0];else if(P.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return b(this,P[0]|0,P[1]|0),[P[0]|0,P[1]|0]}},width:{get:function(){return this._shape[0]},set:function(P){return P=P|0,b(this,P,this._shape[1]),P}},height:{get:function(){return this._shape[1]},set:function(P){return P=P|0,b(this,this._shape[0],P),P}}}),k.bind=function(P){var T=this.gl;return P!==void 0&&T.activeTexture(T.TEXTURE0+(P|0)),T.bindTexture(T.TEXTURE_2D,this.handle),P!==void 0?P|0:T.getParameter(T.ACTIVE_TEXTURE)-T.TEXTURE0},k.dispose=function(){this.gl.deleteTexture(this.handle)},k.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var P=Math.min(this._shape[0],this._shape[1]),T=0;P>0;++T,P>>>=1)this._mipLevels.indexOf(T)<0&&this._mipLevels.push(T)},k.setPixels=function(P,T,z,O){var V=this.gl;this.bind(),Array.isArray(T)?(O=z,z=T[1]|0,T=T[0]|0):(T=T||0,z=z||0),O=O||0;var G=v(P)?P:P.raw;if(G){var Z=this._mipLevels.indexOf(O)<0;Z?(V.texImage2D(V.TEXTURE_2D,0,this.format,this.format,this.type,G),this._mipLevels.push(O)):V.texSubImage2D(V.TEXTURE_2D,O,T,z,this.format,this.type,G)}else if(P.shape&&P.stride&&P.data){if(P.shape.length<2||T+P.shape[1]>this._shape[1]>>>O||z+P.shape[0]>this._shape[0]>>>O||T<0||z<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");S(V,T,z,O,this.format,this.type,this._mipLevels,P)}else throw new Error("gl-texture2d: Unsupported data type")};function E(P,T){return P.length===3?T[2]===1&&T[1]===P[0]*P[2]&&T[0]===P[2]:T[0]===1&&T[1]===P[0]}function S(P,T,z,O,V,G,Z,j){var N=j.dtype,H=j.shape.slice();if(H.length<2||H.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var te=0,oe=0,_e=E(H,j.stride.slice());N==="float32"?te=P.FLOAT:N==="float64"?(te=P.FLOAT,_e=!1,N="float32"):N==="uint8"?te=P.UNSIGNED_BYTE:(te=P.UNSIGNED_BYTE,_e=!1,N="uint8");var Ee=1;if(H.length===2)oe=P.LUMINANCE,H=[H[0],H[1],1],j=s(j.data,H,[j.stride[0],j.stride[1],1],j.offset);else if(H.length===3){if(H[2]===1)oe=P.ALPHA;else if(H[2]===2)oe=P.LUMINANCE_ALPHA;else if(H[2]===3)oe=P.RGB;else if(H[2]===4)oe=P.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");Ee=H[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((oe===P.LUMINANCE||oe===P.ALPHA)&&(V===P.LUMINANCE||V===P.ALPHA)&&(oe=V),oe!==V)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var Ce=j.size,me=Z.indexOf(O)<0;if(me&&Z.push(O),te===G&&_e)j.offset===0&&j.data.length===Ce?me?P.texImage2D(P.TEXTURE_2D,O,V,H[0],H[1],0,V,G,j.data):P.texSubImage2D(P.TEXTURE_2D,O,T,z,H[0],H[1],V,G,j.data):me?P.texImage2D(P.TEXTURE_2D,O,V,H[0],H[1],0,V,G,j.data.subarray(j.offset,j.offset+Ce)):P.texSubImage2D(P.TEXTURE_2D,O,T,z,H[0],H[1],V,G,j.data.subarray(j.offset,j.offset+Ce));else{var ie;G===P.FLOAT?ie=u.mallocFloat32(Ce):ie=u.mallocUint8(Ce);var Se=s(ie,H,[H[2],H[2]*H[0],1]);te===P.FLOAT&&G===P.UNSIGNED_BYTE?_(Se,j):l.assign(Se,j),me?P.texImage2D(P.TEXTURE_2D,O,V,H[0],H[1],0,V,G,ie.subarray(0,Ce)):P.texSubImage2D(P.TEXTURE_2D,O,T,z,H[0],H[1],V,G,ie.subarray(0,Ce)),G===P.FLOAT?u.freeFloat32(ie):u.freeUint8(ie)}}function L(P){var T=P.createTexture();return P.bindTexture(P.TEXTURE_2D,T),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_MIN_FILTER,P.NEAREST),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_MAG_FILTER,P.NEAREST),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_S,P.CLAMP_TO_EDGE),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_T,P.CLAMP_TO_EDGE),T}function x(P,T,z,O,V){var G=P.getParameter(P.MAX_TEXTURE_SIZE);if(T<0||T>G||z<0||z>G)throw new Error("gl-texture2d: Invalid texture shape");if(V===P.FLOAT&&!P.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var Z=L(P);return P.texImage2D(P.TEXTURE_2D,0,O,T,z,0,O,V,null),new p(P,Z,T,z,O,V)}function C(P,T,z,O,V,G){var Z=L(P);return P.texImage2D(P.TEXTURE_2D,0,V,V,G,T),new p(P,Z,z,O,V,G)}function M(P,T){var z=T.dtype,O=T.shape.slice(),V=P.getParameter(P.MAX_TEXTURE_SIZE);if(O[0]<0||O[0]>V||O[1]<0||O[1]>V)throw new Error("gl-texture2d: Invalid texture size");var G=E(O,T.stride.slice()),Z=0;z==="float32"?Z=P.FLOAT:z==="float64"?(Z=P.FLOAT,G=!1,z="float32"):z==="uint8"?Z=P.UNSIGNED_BYTE:(Z=P.UNSIGNED_BYTE,G=!1,z="uint8");var j=0;if(O.length===2)j=P.LUMINANCE,O=[O[0],O[1],1],T=s(T.data,O,[T.stride[0],T.stride[1],1],T.offset);else if(O.length===3)if(O[2]===1)j=P.ALPHA;else if(O[2]===2)j=P.LUMINANCE_ALPHA;else if(O[2]===3)j=P.RGB;else if(O[2]===4)j=P.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");Z===P.FLOAT&&!P.getExtension("OES_texture_float")&&(Z=P.UNSIGNED_BYTE,G=!1);var N,H,te=T.size;if(G)T.offset===0&&T.data.length===te?N=T.data:N=T.data.subarray(T.offset,T.offset+te);else{var oe=[O[2],O[2]*O[0],1];H=u.malloc(te,z);var _e=s(H,O,oe,0);(z==="float32"||z==="float64")&&Z===P.UNSIGNED_BYTE?_(_e,T):l.assign(_e,T),N=H.subarray(0,te)}var Ee=L(P);return P.texImage2D(P.TEXTURE_2D,0,j,O[0],O[1],0,j,Z,N),G||u.free(H),new p(P,Ee,O[0],O[1],j,Z)}function g(P){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(c||d(P),typeof arguments[1]=="number")return x(P,arguments[1],arguments[2],arguments[3]||P.RGBA,arguments[4]||P.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return x(P,arguments[1][0]|0,arguments[1][1]|0,arguments[2]||P.RGBA,arguments[3]||P.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var T=arguments[1],z=v(T)?T:T.raw;if(z)return C(P,z,T.width|0,T.height|0,arguments[2]||P.RGBA,arguments[3]||P.UNSIGNED_BYTE);if(T.shape&&T.data&&T.stride)return M(P,T)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},7790:function(){},7815:function(i,a,o){"use strict";var s=o(2931),l=o(9970),u=["xyz","xzy","yxz","yzx","zxy","zyx"],c=function(S,L,x,C){for(var M=S.points,g=S.velocities,P=S.divergences,T=[],z=[],O=[],V=[],G=[],Z=[],j=0,N=0,H=l.create(),te=l.create(),oe=8,_e=0;_e0)for(var ie=0;ieL)return C-1}return C},d=function(S,L,x){return Sx?x:S},v=function(S,L,x){var C=L.vectors,M=L.meshgrid,g=S[0],P=S[1],T=S[2],z=M[0].length,O=M[1].length,V=M[2].length,G=h(M[0],g),Z=h(M[1],P),j=h(M[2],T),N=G+1,H=Z+1,te=j+1;if(G=d(G,0,z-1),N=d(N,0,z-1),Z=d(Z,0,O-1),H=d(H,0,O-1),j=d(j,0,V-1),te=d(te,0,V-1),G<0||Z<0||j<0||N>z-1||H>O-1||te>V-1)return s.create();var oe=M[0][G],_e=M[0][N],Ee=M[1][Z],Ce=M[1][H],me=M[2][j],ie=M[2][te],Se=(g-oe)/(_e-oe),Le=(P-Ee)/(Ce-Ee),Ae=(T-me)/(ie-me);isFinite(Se)||(Se=.5),isFinite(Le)||(Le=.5),isFinite(Ae)||(Ae=.5);var Fe,Pe,ge,Re,ce,Ze;switch(x.reversedX&&(G=z-1-G,N=z-1-N),x.reversedY&&(Z=O-1-Z,H=O-1-H),x.reversedZ&&(j=V-1-j,te=V-1-te),x.filled){case 5:ce=j,Ze=te,ge=Z*V,Re=H*V,Fe=G*V*O,Pe=N*V*O;break;case 4:ce=j,Ze=te,Fe=G*V,Pe=N*V,ge=Z*V*z,Re=H*V*z;break;case 3:ge=Z,Re=H,ce=j*O,Ze=te*O,Fe=G*O*V,Pe=N*O*V;break;case 2:ge=Z,Re=H,Fe=G*O,Pe=N*O,ce=j*O*z,Ze=te*O*z;break;case 1:Fe=G,Pe=N,ce=j*z,Ze=te*z,ge=Z*z*V,Re=H*z*V;break;default:Fe=G,Pe=N,ge=Z*z,Re=H*z,ce=j*z*O,Ze=te*z*O;break}var ut=C[Fe+ge+ce],pt=C[Fe+ge+Ze],Zt=C[Fe+Re+ce],st=C[Fe+Re+Ze],lt=C[Pe+ge+ce],Gt=C[Pe+ge+Ze],Nt=C[Pe+Re+ce],Jt=C[Pe+Re+Ze],sr=s.create(),wr=s.create(),cr=s.create(),$e=s.create();s.lerp(sr,ut,lt,Se),s.lerp(wr,pt,Gt,Se),s.lerp(cr,Zt,Nt,Se),s.lerp($e,st,Jt,Se);var St=s.create(),Qt=s.create();s.lerp(St,sr,cr,Le),s.lerp(Qt,wr,$e,Le);var Vt=s.create();return s.lerp(Vt,St,Qt,Ae),Vt},_=function(S,L){var x=L[0],C=L[1],M=L[2];return S[0]=x<0?-x:x,S[1]=C<0?-C:C,S[2]=M<0?-M:M,S},b=function(S){var L=1/0;S.sort(function(g,P){return g-P});for(var x=S.length,C=1;CN||JtH||srte)},_e=s.distance(L[0],L[1]),Ee=10*_e/C,Ce=Ee*Ee,me=1,ie=0,Se=x.length;Se>1&&(me=p(x));for(var Le=0;Leie&&(ie=ut),ce.push(ut),V.push({points:Fe,velocities:Pe,divergences:ce});for(var pt=0;ptCe&&s.scale(Zt,Zt,Ee/Math.sqrt(st)),s.add(Zt,Zt,Ae),ge=z(Zt),s.squaredDistance(Re,Zt)-Ce>-1e-4*Ce){Fe.push(Zt),Re=Zt,Pe.push(ge);var Ze=O(Zt,ge),ut=s.length(Ze);isFinite(ut)&&ut>ie&&(ie=ut),ce.push(ut)}Ae=Zt}}var lt=f(V,S.colormap,ie,me);return g?lt.tubeScale=g:(ie===0&&(ie=1),lt.tubeScale=M*.5*me/ie),lt};var k=o(6740),E=o(6405).createMesh;i.exports.createTubeMesh=function(S,L){return E(S,L,{shaders:k,traceType:"streamtube"})}},7827:function(i){i.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},7842:function(i,a,o){"use strict";var s=o(6330),l=o(1533),u=o(2651),c=o(6768),f=o(869),h=o(8697);i.exports=d;function d(v,_){if(s(v))return _?h(v,d(_)):[v[0].clone(),v[1].clone()];var b=0,p,k;if(l(v))p=v.clone();else if(typeof v=="string")p=c(v);else{if(v===0)return[u(0),u(1)];if(v===Math.floor(v))p=u(v);else{for(;v!==Math.floor(v);)v=v*Math.pow(2,256),b-=256;p=u(v)}}if(s(_))p.mul(_[1]),k=_[0].clone();else if(l(_))k=_.clone();else if(typeof _=="string")k=c(_);else if(!_)k=u(1);else if(_===Math.floor(_))k=u(_);else{for(;_!==Math.floor(_);)_=_*Math.pow(2,256),b+=256;k=u(_)}return b>0?p=p.ushln(b):b<0&&(k=k.ushln(-b)),f(p,k)}},7894:function(i){i.exports=a;function a(o){return o[0]=1,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=1,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=1,o[11]=0,o[12]=0,o[13]=0,o[14]=0,o[15]=1,o}},7932:function(i,a,o){var s=o(620);i.exports=s.slice().concat(["layout","centroid","smooth","case","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","uvec2","uvec3","uvec4","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","coherent","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","image1DShadow","image2DShadow","image1DArrayShadow","image2DArrayShadow","imageBuffer","iimageBuffer","uimageBuffer","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray"])},7960:function(i){i.exports=a;function a(o,s){var l=s[0]-o[0],u=s[1]-o[1],c=s[2]-o[2],f=s[3]-o[3];return l*l+u*u+c*c+f*f}},8105:function(i){"use strict";i.exports=o;var a={"lo===p0":s,"lo=p0)&&!(p1>=hi)":d};function o(v){return a[v]}function s(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+g];if(z===S)if(M===T)M+=1,C+=L;else{for(var O=0;L>O;++O){var V=k[x+O];k[x+O]=k[C],k[C++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function l(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+g];if(zO;++O){var V=k[x+O];k[x+O]=k[C],k[C++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function u(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+P];if(z<=S)if(M===T)M+=1,C+=L;else{for(var O=0;L>O;++O){var V=k[x+O];k[x+O]=k[C],k[C++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function c(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+P];if(z<=S)if(M===T)M+=1,C+=L;else{for(var O=0;L>O;++O){var V=k[x+O];k[x+O]=k[C],k[C++]=V}var G=E[T];E[T]=E[M],E[M++]=G}}return M}function f(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+g],O=k[x+P];if(z<=S&&S<=O)if(M===T)M+=1,C+=L;else{for(var V=0;L>V;++V){var G=k[x+V];k[x+V]=k[C],k[C++]=G}var Z=E[T];E[T]=E[M],E[M++]=Z}}return M}function h(v,_,b,p,k,E,S){for(var L=2*v,x=L*b,C=x,M=b,g=_,P=v+_,T=b;p>T;++T,x+=L){var z=k[x+g],O=k[x+P];if(zV;++V){var G=k[x+V];k[x+V]=k[C],k[C++]=G}var Z=E[T];E[T]=E[M],E[M++]=Z}}return M}function d(v,_,b,p,k,E,S,L){for(var x=2*v,C=x*b,M=C,g=b,P=_,T=v+_,z=b;p>z;++z,C+=x){var O=k[C+P],V=k[C+T];if(!(O>=S)&&!(L>=V))if(g===z)g+=1,M+=x;else{for(var G=0;x>G;++G){var Z=k[C+G];k[C+G]=k[M],k[M++]=Z}var j=E[z];E[z]=E[g],E[g++]=j}}return g}},8107:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.min(s[0],l[0]),o[1]=Math.min(s[1],l[1]),o[2]=Math.min(s[2],l[2]),o}},8116:function(i,a,o){"use strict";var s=o(7518),l=o(870);function u(f){this.bindVertexArrayOES=f.bindVertexArray.bind(f),this.createVertexArrayOES=f.createVertexArray.bind(f),this.deleteVertexArrayOES=f.deleteVertexArray.bind(f)}function c(f,h,d,v){var _=f.createVertexArray?new u(f):f.getExtension("OES_vertex_array_object"),b;return _?b=s(f,_):b=l(f),b.update(h,d,v),b}i.exports=c},8192:function(i,a,o){i.exports=c;var s=o(2825),l=o(3536),u=o(244);function c(f,h){var d=s(f[0],f[1],f[2]),v=s(h[0],h[1],h[2]);l(d,d),l(v,v);var _=u(d,v);return _>1?0:Math.acos(_)}},8210:function(i){"use strict";i.exports=o;function a(s,l){var u=s+l,c=u-s,f=u-c,h=l-c,d=s-f,v=d+h;return v?[v,u]:[u]}function o(s,l){var u=s.length|0,c=l.length|0;if(u===1&&c===1)return a(s[0],l[0]);var f=u+c,h=new Array(f),d=0,v=0,_=0,b=Math.abs,p=s[v],k=b(p),E=l[_],S=b(E),L,x;k=c?(L=p,v+=1,vd)for(var z=h[p],O=1/Math.sqrt(M*P),T=0;T<3;++T){var V=(T+1)%3,G=(T+2)%3;z[T]+=O*(g[V]*C[G]-g[G]*C[V])}}for(var v=0;vd)for(var O=1/Math.sqrt(Z),T=0;T<3;++T)z[T]*=O;else for(var T=0;T<3;++T)z[T]=0}return h},a.faceNormals=function(l,u,c){for(var f=l.length,h=new Array(f),d=c===void 0?s:c,v=0;vd?L=1/Math.sqrt(L):L=0;for(var p=0;p<3;++p)S[p]*=L;h[v]=S}return h}},8418:function(i,a,o){"use strict";var s=o(5219),l=o(2762),u=o(8116),c=o(1888),f=o(6760),h=o(1283),d=o(9366),v=o(5964),_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],b=ArrayBuffer,p=DataView;function k(Ae){return b.isView(Ae)&&!(Ae instanceof p)}function E(Ae){return Array.isArray(Ae)||k(Ae)}i.exports=Le;function S(Ae,Fe){var Pe=Ae[0],ge=Ae[1],Re=Ae[2],ce=Ae[3];return Ae[0]=Fe[0]*Pe+Fe[4]*ge+Fe[8]*Re+Fe[12]*ce,Ae[1]=Fe[1]*Pe+Fe[5]*ge+Fe[9]*Re+Fe[13]*ce,Ae[2]=Fe[2]*Pe+Fe[6]*ge+Fe[10]*Re+Fe[14]*ce,Ae[3]=Fe[3]*Pe+Fe[7]*ge+Fe[11]*Re+Fe[15]*ce,Ae}function L(Ae,Fe,Pe,ge){return S(ge,ge,Pe),S(ge,ge,Fe),S(ge,ge,Ae)}function x(Ae,Fe){this.index=Ae,this.dataCoordinate=this.position=Fe}function C(Ae){return Ae===!0||Ae>1?1:Ae}function M(Ae,Fe,Pe,ge,Re,ce,Ze,ut,pt,Zt,st,lt){this.gl=Ae,this.pixelRatio=1,this.shader=Fe,this.orthoShader=Pe,this.projectShader=ge,this.pointBuffer=Re,this.colorBuffer=ce,this.glyphBuffer=Ze,this.idBuffer=ut,this.vao=pt,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=Zt,this.pickOrthoShader=st,this.pickProjectShader=lt,this.points=[],this._selectResult=new x(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}var g=M.prototype;g.pickSlots=1,g.setPickBase=function(Ae){this.pickId=Ae},g.isTransparent=function(){if(this.hasAlpha)return!0;for(var Ae=0;Ae<3;++Ae)if(this.axesProject[Ae]&&this.projectHasAlpha)return!0;return!1},g.isOpaque=function(){if(!this.hasAlpha)return!0;for(var Ae=0;Ae<3;++Ae)if(this.axesProject[Ae]&&!this.projectHasAlpha)return!0;return!1};var P=[0,0],T=[0,0,0],z=[0,0,0],O=[0,0,0,1],V=[0,0,0,1],G=_.slice(),Z=[0,0,0],j=[[0,0,0],[0,0,0]];function N(Ae){return Ae[0]=Ae[1]=Ae[2]=0,Ae}function H(Ae,Fe){return Ae[0]=Fe[0],Ae[1]=Fe[1],Ae[2]=Fe[2],Ae[3]=1,Ae}function te(Ae,Fe,Pe,ge){return Ae[0]=Fe[0],Ae[1]=Fe[1],Ae[2]=Fe[2],Ae[Pe]=ge,Ae}function oe(Ae){for(var Fe=j,Pe=0;Pe<2;++Pe)for(var ge=0;ge<3;++ge)Fe[Pe][ge]=Math.max(Math.min(Ae[Pe][ge],1e8),-1e8);return Fe}function _e(Ae,Fe,Pe,ge){var Re=Fe.axesProject,ce=Fe.gl,Ze=Ae.uniforms,ut=Pe.model||_,pt=Pe.view||_,Zt=Pe.projection||_,st=Fe.axesBounds,lt=oe(Fe.clipBounds),Gt;Fe.axes&&Fe.axes.lastCubeProps?Gt=Fe.axes.lastCubeProps.axis:Gt=[1,1,1],P[0]=2/ce.drawingBufferWidth,P[1]=2/ce.drawingBufferHeight,Ae.bind(),Ze.view=pt,Ze.projection=Zt,Ze.screenSize=P,Ze.highlightId=Fe.highlightId,Ze.highlightScale=Fe.highlightScale,Ze.clipBounds=lt,Ze.pickGroup=Fe.pickId/255,Ze.pixelRatio=ge;for(var Nt=0;Nt<3;++Nt)if(Re[Nt]){Ze.scale=Fe.projectScale[Nt],Ze.opacity=Fe.projectOpacity[Nt];for(var Jt=G,sr=0;sr<16;++sr)Jt[sr]=0;for(var sr=0;sr<4;++sr)Jt[5*sr]=1;Jt[5*Nt]=0,Gt[Nt]<0?Jt[12+Nt]=st[0][Nt]:Jt[12+Nt]=st[1][Nt],f(Jt,ut,Jt),Ze.model=Jt;var wr=(Nt+1)%3,cr=(Nt+2)%3,$e=N(T),St=N(z);$e[wr]=1,St[cr]=1;var Qt=L(Zt,pt,ut,H(O,$e)),Vt=L(Zt,pt,ut,H(V,St));if(Math.abs(Qt[1])>Math.abs(Vt[1])){var _t=Qt;Qt=Vt,Vt=_t,_t=$e,$e=St,St=_t;var It=wr;wr=cr,cr=It}Qt[0]<0&&($e[wr]=-1),Vt[1]>0&&(St[cr]=-1);for(var mt=0,er=0,sr=0;sr<4;++sr)mt+=Math.pow(ut[4*wr+sr],2),er+=Math.pow(ut[4*cr+sr],2);$e[wr]/=Math.sqrt(mt),St[cr]/=Math.sqrt(er),Ze.axes[0]=$e,Ze.axes[1]=St,Ze.fragClipBounds[0]=te(Z,lt[0],Nt,-1e8),Ze.fragClipBounds[1]=te(Z,lt[1],Nt,1e8),Fe.vao.bind(),Fe.vao.draw(ce.TRIANGLES,Fe.vertexCount),Fe.lineWidth>0&&(ce.lineWidth(Fe.lineWidth*ge),Fe.vao.draw(ce.LINES,Fe.lineVertexCount,Fe.vertexCount)),Fe.vao.unbind()}}var Ee=[-1e8,-1e8,-1e8],Ce=[1e8,1e8,1e8],me=[Ee,Ce];function ie(Ae,Fe,Pe,ge,Re,ce,Ze){var ut=Pe.gl;if((ce===Pe.projectHasAlpha||Ze)&&_e(Fe,Pe,ge,Re),ce===Pe.hasAlpha||Ze){Ae.bind();var pt=Ae.uniforms;pt.model=ge.model||_,pt.view=ge.view||_,pt.projection=ge.projection||_,P[0]=2/ut.drawingBufferWidth,P[1]=2/ut.drawingBufferHeight,pt.screenSize=P,pt.highlightId=Pe.highlightId,pt.highlightScale=Pe.highlightScale,pt.fragClipBounds=me,pt.clipBounds=Pe.axes.bounds,pt.opacity=Pe.opacity,pt.pickGroup=Pe.pickId/255,pt.pixelRatio=Re,Pe.vao.bind(),Pe.vao.draw(ut.TRIANGLES,Pe.vertexCount),Pe.lineWidth>0&&(ut.lineWidth(Pe.lineWidth*Re),Pe.vao.draw(ut.LINES,Pe.lineVertexCount,Pe.vertexCount)),Pe.vao.unbind()}}g.draw=function(Ae){var Fe=this.useOrtho?this.orthoShader:this.shader;ie(Fe,this.projectShader,this,Ae,this.pixelRatio,!1,!1)},g.drawTransparent=function(Ae){var Fe=this.useOrtho?this.orthoShader:this.shader;ie(Fe,this.projectShader,this,Ae,this.pixelRatio,!0,!1)},g.drawPick=function(Ae){var Fe=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;ie(Fe,this.pickProjectShader,this,Ae,1,!0,!0)},g.pick=function(Ae){if(!Ae||Ae.id!==this.pickId)return null;var Fe=Ae.value[2]+(Ae.value[1]<<8)+(Ae.value[0]<<16);if(Fe>=this.pointCount||Fe<0)return null;var Pe=this.points[Fe],ge=this._selectResult;ge.index=Fe;for(var Re=0;Re<3;++Re)ge.position[Re]=ge.dataCoordinate[Re]=Pe[Re];return ge},g.highlight=function(Ae){if(!Ae)this.highlightId=[1,1,1,1];else{var Fe=Ae.index,Pe=Fe&255,ge=Fe>>8&255,Re=Fe>>16&255;this.highlightId=[Pe/255,ge/255,Re/255,0]}};function Se(Ae,Fe,Pe,ge){var Re;E(Ae)?Fe0){var Vr=0,dt=cr,Ge=[0,0,0,1],Je=[0,0,0,1],je=E(Gt)&&E(Gt[0]),tt=E(sr)&&E(sr[0]);e:for(var ge=0;ge0?1-er[0][0]:ar<0?1+er[1][0]:1,vr*=vr>0?1-er[0][1]:vr<0?1+er[1][1]:1;for(var ii=[ar,vr],In=It.cells||[],wi=It.positions||[],Vt=0;Vt=c?(L=p,v+=1,v0?1:0}},8648:function(i,a,o){i.exports=o(783)},8692:function(i){i.exports=a;function a(o,s,l,u){var c=l[0],f=l[1],h=s[0]-c,d=s[1]-f,v=Math.sin(u),_=Math.cos(u);return o[0]=c+h*_-d*v,o[1]=f+h*v+d*_,o[2]=s[2],o}},8697:function(i,a,o){"use strict";var s=o(869);i.exports=l;function l(u,c){return s(u[0].mul(c[1]),u[1].mul(c[0]))}},8731:function(i,a,o){"use strict";i.exports=d;var s=o(8866);function l(v,_,b,p,k,E){this._gl=v,this._wrapper=_,this._index=b,this._locations=p,this._dimension=k,this._constFunc=E}var u=l.prototype;u.pointer=function(_,b,p,k){var E=this,S=E._gl,L=E._locations[E._index];S.vertexAttribPointer(L,E._dimension,_||S.FLOAT,!!b,p||0,k||0),S.enableVertexAttribArray(L)},u.set=function(v,_,b,p){return this._constFunc(this._locations[this._index],v,_,b,p)},Object.defineProperty(u,"location",{get:function(){return this._locations[this._index]},set:function(v){return v!==this._locations[this._index]&&(this._locations[this._index]=v|0,this._wrapper.program=null),v|0}});var c=[function(v,_,b){return b.length===void 0?v.vertexAttrib1f(_,b):v.vertexAttrib1fv(_,b)},function(v,_,b,p){return b.length===void 0?v.vertexAttrib2f(_,b,p):v.vertexAttrib2fv(_,b)},function(v,_,b,p,k){return b.length===void 0?v.vertexAttrib3f(_,b,p,k):v.vertexAttrib3fv(_,b)},function(v,_,b,p,k,E){return b.length===void 0?v.vertexAttrib4f(_,b,p,k,E):v.vertexAttrib4fv(_,b)}];function f(v,_,b,p,k,E,S){var L=c[k],x=new l(v,_,b,p,k,L);Object.defineProperty(E,S,{set:function(C){return v.disableVertexAttribArray(p[b]),L(v,p[b],C),C},get:function(){return x},enumerable:!0})}function h(v,_,b,p,k,E,S){for(var L=new Array(k),x=new Array(k),C=0;C=0){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new s("","Invalid data type for attribute "+x+": "+C);f(v,_,M[0],p,g,k,x)}else if(C.indexOf("mat")>=0){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new s("","Invalid data type for attribute "+x+": "+C);h(v,_,M,p,g,k,x)}else throw new s("","Unknown data type for attribute "+x+": "+C);break}}return k}},8828:function(i,a){"use strict";"use restrict";var o=32;a.INT_BITS=o,a.INT_MAX=2147483647,a.INT_MIN=-1<0)-(u<0)},a.abs=function(u){var c=u>>o-1;return(u^c)-c},a.min=function(u,c){return c^(u^c)&-(u65535)<<4,u>>>=c,f=(u>255)<<3,u>>>=f,c|=f,f=(u>15)<<2,u>>>=f,c|=f,f=(u>3)<<1,u>>>=f,c|=f,c|u>>1},a.log10=function(u){return u>=1e9?9:u>=1e8?8:u>=1e7?7:u>=1e6?6:u>=1e5?5:u>=1e4?4:u>=1e3?3:u>=100?2:u>=10?1:0},a.popCount=function(u){return u=u-(u>>>1&1431655765),u=(u&858993459)+(u>>>2&858993459),(u+(u>>>4)&252645135)*16843009>>>24};function s(u){var c=32;return u&=-u,u&&c--,u&65535&&(c-=16),u&16711935&&(c-=8),u&252645135&&(c-=4),u&858993459&&(c-=2),u&1431655765&&(c-=1),c}a.countTrailingZeros=s,a.nextPow2=function(u){return u+=u===0,--u,u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u+1},a.prevPow2=function(u){return u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u-(u>>>1)},a.parity=function(u){return u^=u>>>16,u^=u>>>8,u^=u>>>4,u&=15,27030>>>u&1};var l=new Array(256);(function(u){for(var c=0;c<256;++c){var f=c,h=c,d=7;for(f>>>=1;f;f>>>=1)h<<=1,h|=f&1,--d;u[c]=h<>>8&255]<<16|l[u>>>16&255]<<8|l[u>>>24&255]},a.interleave2=function(u,c){return u&=65535,u=(u|u<<8)&16711935,u=(u|u<<4)&252645135,u=(u|u<<2)&858993459,u=(u|u<<1)&1431655765,c&=65535,c=(c|c<<8)&16711935,c=(c|c<<4)&252645135,c=(c|c<<2)&858993459,c=(c|c<<1)&1431655765,u|c<<1},a.deinterleave2=function(u,c){return u=u>>>c&1431655765,u=(u|u>>>1)&858993459,u=(u|u>>>2)&252645135,u=(u|u>>>4)&16711935,u=(u|u>>>16)&65535,u<<16>>16},a.interleave3=function(u,c,f){return u&=1023,u=(u|u<<16)&4278190335,u=(u|u<<8)&251719695,u=(u|u<<4)&3272356035,u=(u|u<<2)&1227133513,c&=1023,c=(c|c<<16)&4278190335,c=(c|c<<8)&251719695,c=(c|c<<4)&3272356035,c=(c|c<<2)&1227133513,u|=c<<1,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,u|f<<2},a.deinterleave3=function(u,c){return u=u>>>c&1227133513,u=(u|u>>>2)&3272356035,u=(u|u>>>4)&251719695,u=(u|u>>>8)&4278190335,u=(u|u>>>16)&1023,u<<22>>22},a.nextCombination=function(u){var c=u|u-1;return c+1|(~c&-~c)-1>>>s(u)+1}},8866:function(i){function a(o,s,l){this.shortMessage=s||"",this.longMessage=l||"",this.rawError=o||"",this.message="gl-shader: "+(s||o||"")+(l?` +`+l:""),this.stack=new Error().stack}a.prototype=new Error,a.prototype.name="GLError",a.prototype.constructor=a,i.exports=a},8902:function(i,a,o){"use strict";var s=o(2478),l=o(3250)[3],u=0,c=1,f=2;i.exports=S;function h(L,x,C,M,g){this.a=L,this.b=x,this.idx=C,this.lowerIds=M,this.upperIds=g}function d(L,x,C,M){this.a=L,this.b=x,this.type=C,this.idx=M}function v(L,x){var C=L.a[0]-x.a[0]||L.a[1]-x.a[1]||L.type-x.type;return C||L.type!==u&&(C=l(L.a,L.b,x.b),C)?C:L.idx-x.idx}function _(L,x){return l(L.a,L.b,x)}function b(L,x,C,M,g){for(var P=s.lt(x,M,_),T=s.gt(x,M,_),z=P;z1&&l(C[V[Z-2]],C[V[Z-1]],M)>0;)L.push([V[Z-1],V[Z-2],g]),Z-=1;V.length=Z,V.push(g);for(var G=O.upperIds,Z=G.length;Z>1&&l(C[G[Z-2]],C[G[Z-1]],M)<0;)L.push([G[Z-2],G[Z-1],g]),Z-=1;G.length=Z,G.push(g)}}function p(L,x){var C;return L.a[0]O[0]&&g.push(new d(O,z,f,P),new d(z,O,c,P))}g.sort(v);for(var V=g[0].a[0]-(1+Math.abs(g[0].a[0]))*Math.pow(2,-52),G=[new h([V,1],[V,0],-1,[],[],[],[])],Z=[],P=0,j=g.length;P0;){k=M.pop();for(var g=k.adjacent,P=0;P<=S;++P){var T=g[P];if(!(!T.boundary||T.lastVisited<=-L)){for(var z=T.vertices,O=0;O<=S;++O){var V=z[O];V<0?x[O]=E:x[O]=C[V]}var G=this.orient();if(G>0)return T;T.lastVisited=-L,G===0&&M.push(T)}}}return null},b.walk=function(k,E){var S=this.vertices.length-1,L=this.dimension,x=this.vertices,C=this.tuple,M=E?this.interior.length*Math.random()|0:this.interior.length-1,g=this.interior[M];e:for(;!g.boundary;){for(var P=g.vertices,T=g.adjacent,z=0;z<=L;++z)C[z]=x[P[z]];g.lastVisited=S;for(var z=0;z<=L;++z){var O=T[z];if(!(O.lastVisited>=S)){var V=C[z];C[z]=k;var G=this.orient();if(C[z]=V,G<0){g=O;continue e}else O.boundary?O.lastVisited=-S:O.lastVisited=S}}return}return g},b.addPeaks=function(k,E){var S=this.vertices.length-1,L=this.dimension,x=this.vertices,C=this.tuple,M=this.interior,g=this.simplices,P=[E];E.lastVisited=S,E.vertices[E.vertices.indexOf(-1)]=S,E.boundary=!1,M.push(E);for(var T=[];P.length>0;){var E=P.pop(),z=E.vertices,O=E.adjacent,V=z.indexOf(S);if(!(V<0)){for(var G=0;G<=L;++G)if(G!==V){var Z=O[G];if(!(!Z.boundary||Z.lastVisited>=S)){var j=Z.vertices;if(Z.lastVisited!==-S){for(var N=0,H=0;H<=L;++H)j[H]<0?(N=H,C[H]=k):C[H]=x[j[H]];var te=this.orient();if(te>0){j[N]=S,Z.boundary=!1,M.push(Z),P.push(Z),Z.lastVisited=S;continue}else Z.lastVisited=-S}var oe=Z.adjacent,_e=z.slice(),Ee=O.slice(),Ce=new u(_e,Ee,!0);g.push(Ce);var me=oe.indexOf(E);if(!(me<0)){oe[me]=Ce,Ee[V]=Z,_e[G]=-1,Ee[G]=E,O[G]=Ce,Ce.flip();for(var H=0;H<=L;++H){var ie=_e[H];if(!(ie<0||ie===S)){for(var Se=new Array(L-1),Le=0,Ae=0;Ae<=L;++Ae){var Fe=_e[Ae];Fe<0||Ae===H||(Se[Le++]=Fe)}T.push(new c(Se,Ce,H))}}}}}}}T.sort(f);for(var G=0;G+1=0?M[P++]=g[z]:T=z&1;if(T===(k&1)){var O=M[0];M[0]=M[1],M[1]=O}E.push(M)}}return E};function p(k,E){var S=k.length;if(S===0)throw new Error("Must have at least d+1 points");var L=k[0].length;if(S<=L)throw new Error("Must input at least d+1 points");var x=k.slice(0,L+1),C=s.apply(void 0,x);if(C===0)throw new Error("Input not in general position");for(var M=new Array(L+1),g=0;g<=L;++g)M[g]=g;C<0&&(M[0]=1,M[1]=0);for(var P=new u(M,new Array(L+1),!1),T=P.adjacent,z=new Array(L+2),g=0;g<=L;++g){for(var O=M.slice(),V=0;V<=L;++V)V===g&&(O[V]=-1);var G=O[0];O[0]=O[1],O[1]=G;var Z=new u(O,new Array(L+1),!0);T[g]=Z,z[g]=Z}z[L+1]=P;for(var g=0;g<=L;++g)for(var O=T[g].vertices,j=T[g].adjacent,V=0;V<=L;++V){var N=O[V];if(N<0){j[V]=P;continue}for(var H=0;H<=L;++H)T[H].vertices.indexOf(N)<0&&(j[V]=T[H])}for(var te=new _(L,x,z),oe=!!E,g=L+1;g=1},p.isTransparent=function(){return this.opacity<1},p.pickSlots=1,p.setPickBase=function(C){this.pickId=C};function k(C){for(var M=v({colormap:C,nshades:256,format:"rgba"}),g=new Uint8Array(256*4),P=0;P<256;++P){for(var T=M[P],z=0;z<3;++z)g[4*P+z]=T[z];g[4*P+3]=T[3]*255}return d(g,[256,256,4],[4,0,1])}function E(C){for(var M=C.length,g=new Array(M),P=0;P0){var H=this.triShader;H.bind(),H.uniforms=V,this.triangleVAO.bind(),M.drawArrays(M.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},p.drawPick=function(C){C=C||{};for(var M=this.gl,g=C.model||_,P=C.view||_,T=C.projection||_,z=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],O=0;O<3;++O)z[0][O]=Math.max(z[0][O],this.clipBounds[0][O]),z[1][O]=Math.min(z[1][O],this.clipBounds[1][O]);this._model=[].slice.call(g),this._view=[].slice.call(P),this._projection=[].slice.call(T),this._resolution=[M.drawingBufferWidth,M.drawingBufferHeight];var V={model:g,view:P,projection:T,clipBounds:z,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},G=this.pickShader;G.bind(),G.uniforms=V,this.triangleCount>0&&(this.triangleVAO.bind(),M.drawArrays(M.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},p.pick=function(C){if(!C||C.id!==this.pickId)return null;var M=C.value[0]+256*C.value[1]+65536*C.value[2],g=this.cells[M],P=this.positions[g[1]].slice(0,3),T={position:P,dataCoordinate:P,index:Math.floor(g[1]/48)};return this.traceType==="cone"?T.index=Math.floor(g[1]/48):this.traceType==="streamtube"&&(T.intensity=this.intensity[g[1]],T.velocity=this.vectors[g[1]].slice(0,3),T.divergence=this.vectors[g[1]][3],T.index=M),T},p.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()};function S(C,M){var g=s(C,M.meshShader.vertex,M.meshShader.fragment,null,M.meshShader.attributes);return g.attributes.position.location=0,g.attributes.color.location=2,g.attributes.uv.location=3,g.attributes.vector.location=4,g}function L(C,M){var g=s(C,M.pickShader.vertex,M.pickShader.fragment,null,M.pickShader.attributes);return g.attributes.position.location=0,g.attributes.id.location=1,g.attributes.vector.location=4,g}function x(C,M,g){var P=g.shaders;arguments.length===1&&(M=C,C=M.gl);var T=S(C,P),z=L(C,P),O=c(C,d(new Uint8Array([255,255,255,255]),[1,1,4]));O.generateMipmap(),O.minFilter=C.LINEAR_MIPMAP_LINEAR,O.magFilter=C.LINEAR;var V=l(C),G=l(C),Z=l(C),j=l(C),N=l(C),H=u(C,[{buffer:V,type:C.FLOAT,size:4},{buffer:N,type:C.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:Z,type:C.FLOAT,size:4},{buffer:j,type:C.FLOAT,size:2},{buffer:G,type:C.FLOAT,size:4}]),te=new b(C,O,T,z,V,G,N,Z,j,H,g.traceType||"cone");return te.update(M),te}i.exports=x},9127:function(i,a,o){"use strict";i.exports=u;var s=o(6204),l=o(5771);function u(c){return l(s(c))}},9131:function(i,a,o){var s=o(5177),l=o(9288);i.exports=u;function u(c,f){return f=f||1,c[0]=Math.random(),c[1]=Math.random(),c[2]=Math.random(),c[3]=Math.random(),s(c,c),l(c,c,f),c}},9165:function(i,a,o){"use strict";i.exports=b;var s=o(2762),l=o(8116),u=o(3436),c=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function f(p,k,E,S){this.gl=p,this.shader=S,this.buffer=k,this.vao=E,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var h=f.prototype;h.isOpaque=function(){return!this.hasAlpha},h.isTransparent=function(){return this.hasAlpha},h.drawTransparent=h.draw=function(p){var k=this.gl,E=this.shader.uniforms;this.shader.bind();var S=E.view=p.view||c,L=E.projection=p.projection||c;E.model=p.model||c,E.clipBounds=this.clipBounds,E.opacity=this.opacity;var x=S[12],C=S[13],M=S[14],g=S[15],P=p._ortho||!1,T=P?2:1,z=T*this.pixelRatio*(L[3]*x+L[7]*C+L[11]*M+L[15]*g)/k.drawingBufferHeight;this.vao.bind();for(var O=0;O<3;++O)k.lineWidth(this.lineWidth[O]*this.pixelRatio),E.capSize=this.capSize[O]*z,this.lineCount[O]&&k.drawArrays(k.LINES,this.lineOffset[O],this.lineCount[O]);this.vao.unbind()};function d(p,k){for(var E=0;E<3;++E)p[0][E]=Math.min(p[0][E],k[E]),p[1][E]=Math.max(p[1][E],k[E])}var v=function(){for(var p=new Array(3),k=0;k<3;++k){for(var E=[],S=1;S<=2;++S)for(var L=-1;L<=1;L+=2){var x=(S+k)%3,C=[0,0,0];C[x]=L,E.push(C)}p[k]=E}return p}();function _(p,k,E,S){for(var L=v[S],x=0;x0){var V=P.slice();V[M]+=z[1][M],L.push(P[0],P[1],P[2],O[0],O[1],O[2],O[3],0,0,0,V[0],V[1],V[2],O[0],O[1],O[2],O[3],0,0,0),d(this.bounds,V),C+=2+_(L,V,O,M)}}}this.lineCount[M]=C-this.lineOffset[M]}this.buffer.update(L)}},h.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function b(p){var k=p.gl,E=s(k),S=l(k,[{buffer:E,type:k.FLOAT,size:3,offset:0,stride:40},{buffer:E,type:k.FLOAT,size:4,offset:12,stride:40},{buffer:E,type:k.FLOAT,size:3,offset:28,stride:40}]),L=u(k);L.attributes.position.location=0,L.attributes.color.location=1,L.attributes.offset.location=2;var x=new f(k,E,S,L);return x.update(p),x}},9215:function(i,a,o){"use strict";i.exports=d;var s=o(4769),l=o(2478);function u(v,_,b){return Math.min(_,Math.max(v,b))}function c(v,_,b){this.dimension=v.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var p=0;p=b-1)for(var C=E.length-1,g=v-_[b-1],M=0;M=b-1)for(var x=E.length-1,C=v-_[b-1],M=0;M=0;--b)if(v[--_])return!1;return!0},f.jump=function(v){var _=this.lastT(),b=this.dimension;if(!(v<_||arguments.length!==b+1)){var p=this._state,k=this._velocity,E=p.length-this.dimension,S=this.bounds,L=S[0],x=S[1];this._time.push(_,v);for(var C=0;C<2;++C)for(var M=0;M0;--M)p.push(u(L[M-1],x[M-1],arguments[M])),k.push(0)}},f.push=function(v){var _=this.lastT(),b=this.dimension;if(!(v<_||arguments.length!==b+1)){var p=this._state,k=this._velocity,E=p.length-this.dimension,S=v-_,L=this.bounds,x=L[0],C=L[1],M=S>1e-6?1/S:0;this._time.push(v);for(var g=b;g>0;--g){var P=u(x[g-1],C[g-1],arguments[g]);p.push(P),k.push((P-p[E++])*M)}}},f.set=function(v){var _=this.dimension;if(!(v0;--L)b.push(u(E[L-1],S[L-1],arguments[L])),p.push(0)}},f.move=function(v){var _=this.lastT(),b=this.dimension;if(!(v<=_||arguments.length!==b+1)){var p=this._state,k=this._velocity,E=p.length-this.dimension,S=this.bounds,L=S[0],x=S[1],C=v-_,M=C>1e-6?1/C:0;this._time.push(v);for(var g=b;g>0;--g){var P=arguments[g];p.push(u(L[g-1],x[g-1],p[E++]+P)),k.push(P*M)}}},f.idle=function(v){var _=this.lastT();if(!(v<_)){var b=this.dimension,p=this._state,k=this._velocity,E=p.length-b,S=this.bounds,L=S[0],x=S[1],C=v-_;this._time.push(v);for(var M=b-1;M>=0;--M)p.push(u(L[M],x[M],p[E]+C*k[E])),k.push(0),E+=1}};function h(v){for(var _=new Array(v),b=0;b1&&c.indexOf("Macintosh")!==-1&&c.indexOf("Safari")!==-1&&(f=!0),f}},9226:function(i){i.exports=a;function a(o,s){return o[0]=Math.ceil(s[0]),o[1]=Math.ceil(s[1]),o[2]=Math.ceil(s[2]),o}},9265:function(i){i.exports=a;function a(o,s){return o[0]===s[0]&&o[1]===s[1]&&o[2]===s[2]}},9288:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]*l,o[1]=s[1]*l,o[2]=s[2]*l,o[3]=s[3]*l,o}},9346:function(i){"use strict";var a=new Float64Array(4),o=new Float64Array(4),s=new Float64Array(4);function l(u,c,f,h,d){a.length=_?(g=1,T=_+2*k+S):(g=-k/_,T=k*g+S)):(g=0,E>=0?(P=0,T=S):-E>=p?(P=1,T=p+2*E+S):(P=-E/p,T=E*P+S));else if(P<0)P=0,k>=0?(g=0,T=S):-k>=_?(g=1,T=_+2*k+S):(g=-k/_,T=k*g+S);else{var z=1/M;g*=z,P*=z,T=g*(_*g+b*P+2*k)+P*(b*g+p*P+2*E)+S}else{var O,V,G,Z;g<0?(O=b+k,V=p+E,V>O?(G=V-O,Z=_-2*b+p,G>=Z?(g=1,P=0,T=_+2*k+S):(g=G/Z,P=1-g,T=g*(_*g+b*P+2*k)+P*(b*g+p*P+2*E)+S)):(g=0,V<=0?(P=1,T=p+2*E+S):E>=0?(P=0,T=S):(P=-E/p,T=E*P+S))):P<0?(O=b+E,V=_+k,V>O?(G=V-O,Z=_-2*b+p,G>=Z?(P=1,g=0,T=p+2*E+S):(P=G/Z,g=1-P,T=g*(_*g+b*P+2*k)+P*(b*g+p*P+2*E)+S)):(P=0,V<=0?(g=1,T=_+2*k+S):k>=0?(g=0,T=S):(g=-k/_,T=k*g+S))):(G=p+E-b-k,G<=0?(g=0,P=1,T=p+2*E+S):(Z=_-2*b+p,G>=Z?(g=1,P=0,T=_+2*k+S):(g=G/Z,P=1-g,T=g*(_*g+b*P+2*k)+P*(b*g+p*P+2*E)+S)))}for(var j=1-g-P,v=0;vE)for(p=E;pk)for(p=k;p=0){for(var j=Z.type.charAt(Z.type.length-1)|0,N=new Array(j),H=0;H=0;)te+=1;V[G]=te}var oe=new Array(E.length);function _e(){x.program=c.program(C,x._vref,x._fref,O,V);for(var Ee=0;EePe&&Re>0){var ce=(ge[Re][0]-Pe)/(ge[Re][0]-ge[Re-1][0]);return ge[Re][1]*(1-ce)+ce*ge[Re-1][1]}}return 1}var H=[0,0,0],te={showSurface:!1,showContour:!1,projections:[T.slice(),T.slice(),T.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function oe(Pe,ge){var Re,ce,Ze,ut=ge.axes&&ge.axes.lastCubeProps.axis||H,pt=ge.showSurface,Zt=ge.showContour;for(Re=0;Re<3;++Re)for(pt=pt||ge.surfaceProject[Re],ce=0;ce<3;++ce)Zt=Zt||ge.contourProject[Re][ce];for(Re=0;Re<3;++Re){var st=te.projections[Re];for(ce=0;ce<16;++ce)st[ce]=0;for(ce=0;ce<4;++ce)st[5*ce]=1;st[5*Re]=0,st[12+Re]=ge.axesBounds[+(ut[Re]>0)][Re],p(st,Pe.model,st);var lt=te.clipBounds[Re];for(Ze=0;Ze<2;++Ze)for(ce=0;ce<3;++ce)lt[Ze][ce]=Pe.clipBounds[Ze][ce];lt[0][Re]=-1e8,lt[1][Re]=1e8}return te.showSurface=pt,te.showContour=Zt,te}var _e={model:T,view:T,projection:T,inverseModel:T.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},Ee=T.slice(),Ce=[1,0,0,0,1,0,0,0,1];function me(Pe,ge){Pe=Pe||{};var Re=this.gl;Re.disable(Re.CULL_FACE),this._colorMap.bind(0);var ce=_e;ce.model=Pe.model||T,ce.view=Pe.view||T,ce.projection=Pe.projection||T,ce.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],ce.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],ce.objectOffset=this.objectOffset,ce.contourColor=this.contourColor[0],ce.inverseModel=k(ce.inverseModel,ce.model);for(var Ze=0;Ze<2;++Ze)for(var ut=ce.clipBounds[Ze],pt=0;pt<3;++pt)ut[pt]=Math.min(Math.max(this.clipBounds[Ze][pt],-1e8),1e8);ce.kambient=this.ambientLight,ce.kdiffuse=this.diffuseLight,ce.kspecular=this.specularLight,ce.roughness=this.roughness,ce.fresnel=this.fresnel,ce.opacity=this.opacity,ce.height=0,ce.permutation=Ce,ce.vertexColor=this.vertexColor;var Zt=Ee;for(p(Zt,ce.view,ce.model),p(Zt,ce.projection,Zt),k(Zt,Zt),Ze=0;Ze<3;++Ze)ce.eyePosition[Ze]=Zt[12+Ze]/Zt[15];var st=Zt[15];for(Ze=0;Ze<3;++Ze)st+=this.lightPosition[Ze]*Zt[4*Ze+3];for(Ze=0;Ze<3;++Ze){var lt=Zt[12+Ze];for(pt=0;pt<3;++pt)lt+=Zt[4*pt+Ze]*this.lightPosition[pt];ce.lightPosition[Ze]=lt/st}var Gt=oe(ce,this);if(Gt.showSurface){for(this._shader.bind(),this._shader.uniforms=ce,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(Re.TRIANGLES,this._vertexCount),Ze=0;Ze<3;++Ze)!this.surfaceProject[Ze]||!this.vertexCount||(this._shader.uniforms.model=Gt.projections[Ze],this._shader.uniforms.clipBounds=Gt.clipBounds[Ze],this._vao.draw(Re.TRIANGLES,this._vertexCount));this._vao.unbind()}if(Gt.showContour){var Nt=this._contourShader;ce.kambient=1,ce.kdiffuse=0,ce.kspecular=0,ce.opacity=1,Nt.bind(),Nt.uniforms=ce;var Jt=this._contourVAO;for(Jt.bind(),Ze=0;Ze<3;++Ze)for(Nt.uniforms.permutation=O[Ze],Re.lineWidth(this.contourWidth[Ze]*this.pixelRatio),pt=0;pt>4)/16)/255,Ze=Math.floor(ce),ut=ce-Ze,pt=ge[1]*(Pe.value[1]+(Pe.value[2]&15)/16)/255,Zt=Math.floor(pt),st=pt-Zt;Ze+=1,Zt+=1;var lt=Re.position;lt[0]=lt[1]=lt[2]=0;for(var Gt=0;Gt<2;++Gt)for(var Nt=Gt?ut:1-ut,Jt=0;Jt<2;++Jt)for(var sr=Jt?st:1-st,wr=Ze+Gt,cr=Zt+Jt,$e=Nt*sr,St=0;St<3;++St)lt[St]+=this._field[St].get(wr,cr)*$e;for(var Qt=this._pickResult.level,Vt=0;Vt<3;++Vt)if(Qt[Vt]=E.le(this.contourLevels[Vt],lt[Vt]),Qt[Vt]<0)this.contourLevels[Vt].length>0&&(Qt[Vt]=0);else if(Qt[Vt]Math.abs(It-lt[Vt])&&(Qt[Vt]+=1)}for(Re.index[0]=ut<.5?Ze:Ze+1,Re.index[1]=st<.5?Zt:Zt+1,Re.uv[0]=ce/ge[0],Re.uv[1]=pt/ge[1],St=0;St<3;++St)Re.dataCoordinate[St]=this._field[St].get(Re.index[0],Re.index[1]);return Re},j.padField=function(Pe,ge){var Re=ge.shape.slice(),ce=Pe.shape.slice();d.assign(Pe.lo(1,1).hi(Re[0],Re[1]),ge),d.assign(Pe.lo(1).hi(Re[0],1),ge.hi(Re[0],1)),d.assign(Pe.lo(1,ce[1]-1).hi(Re[0],1),ge.lo(0,Re[1]-1).hi(Re[0],1)),d.assign(Pe.lo(0,1).hi(1,Re[1]),ge.hi(1)),d.assign(Pe.lo(ce[0]-1,1).hi(1,Re[1]),ge.lo(Re[0]-1)),Pe.set(0,0,ge.get(0,0)),Pe.set(0,ce[1]-1,ge.get(0,Re[1]-1)),Pe.set(ce[0]-1,0,ge.get(Re[0]-1,0)),Pe.set(ce[0]-1,ce[1]-1,ge.get(Re[0]-1,Re[1]-1))};function Se(Pe,ge){return Array.isArray(Pe)?[ge(Pe[0]),ge(Pe[1]),ge(Pe[2])]:[ge(Pe),ge(Pe),ge(Pe)]}function Le(Pe){return Array.isArray(Pe)?Pe.length===3?[Pe[0],Pe[1],Pe[2],1]:[Pe[0],Pe[1],Pe[2],Pe[3]]:[0,0,0,1]}function Ae(Pe){if(Array.isArray(Pe)){if(Array.isArray(Pe))return[Le(Pe[0]),Le(Pe[1]),Le(Pe[2])];var ge=Le(Pe);return[ge.slice(),ge.slice(),ge.slice()]}}j.update=function(Pe){Pe=Pe||{},this.objectOffset=Pe.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in Pe&&(this.contourWidth=Se(Pe.contourWidth,Number)),"showContour"in Pe&&(this.showContour=Se(Pe.showContour,Boolean)),"showSurface"in Pe&&(this.showSurface=!!Pe.showSurface),"contourTint"in Pe&&(this.contourTint=Se(Pe.contourTint,Boolean)),"contourColor"in Pe&&(this.contourColor=Ae(Pe.contourColor)),"contourProject"in Pe&&(this.contourProject=Se(Pe.contourProject,function(yn){return Se(yn,Boolean)})),"surfaceProject"in Pe&&(this.surfaceProject=Pe.surfaceProject),"dynamicColor"in Pe&&(this.dynamicColor=Ae(Pe.dynamicColor)),"dynamicTint"in Pe&&(this.dynamicTint=Se(Pe.dynamicTint,Number)),"dynamicWidth"in Pe&&(this.dynamicWidth=Se(Pe.dynamicWidth,Number)),"opacity"in Pe&&(this.opacity=Pe.opacity),"opacityscale"in Pe&&(this.opacityscale=Pe.opacityscale),"colorBounds"in Pe&&(this.colorBounds=Pe.colorBounds),"vertexColor"in Pe&&(this.vertexColor=Pe.vertexColor?1:0),"colormap"in Pe&&this._colorMap.setPixels(this.genColormap(Pe.colormap,this.opacityscale));var ge=Pe.field||Pe.coords&&Pe.coords[2]||null,Re=!1;if(ge||(this._field[2].shape[0]||this._field[2].shape[2]?ge=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):ge=this._field[2].hi(0,0)),"field"in Pe||"coords"in Pe){var ce=(ge.shape[0]+2)*(ge.shape[1]+2);ce>this._field[2].data.length&&(f.freeFloat(this._field[2].data),this._field[2].data=f.mallocFloat(s.nextPow2(ce))),this._field[2]=_(this._field[2].data,[ge.shape[0]+2,ge.shape[1]+2]),this.padField(this._field[2],ge),this.shape=ge.shape.slice();for(var Ze=this.shape,ut=0;ut<2;++ut)this._field[2].size>this._field[ut].data.length&&(f.freeFloat(this._field[ut].data),this._field[ut].data=f.mallocFloat(this._field[2].size)),this._field[ut]=_(this._field[ut].data,[Ze[0]+2,Ze[1]+2]);if(Pe.coords){var pt=Pe.coords;if(!Array.isArray(pt)||pt.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(ut=0;ut<2;++ut){var Zt=pt[ut];for(Jt=0;Jt<2;++Jt)if(Zt.shape[Jt]!==Ze[Jt])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[ut],Zt)}}else if(Pe.ticks){var st=Pe.ticks;if(!Array.isArray(st)||st.length!==2)throw new Error("gl-surface: invalid ticks");for(ut=0;ut<2;++ut){var lt=st[ut];if((Array.isArray(lt)||lt.length)&&(lt=_(lt)),lt.shape[0]!==Ze[ut])throw new Error("gl-surface: invalid tick length");var Gt=_(lt.data,Ze);Gt.stride[ut]=lt.stride[0],Gt.stride[ut^1]=0,this.padField(this._field[ut],Gt)}}else{for(ut=0;ut<2;++ut){var Nt=[0,0];Nt[ut]=1,this._field[ut]=_(this._field[ut].data,[Ze[0]+2,Ze[1]+2],Nt,0)}this._field[0].set(0,0,0);for(var Jt=0;Jt0){for(var tn=0;tn<5;++tn)pi.pop();je-=1}continue e}}}In.push(je)}this._contourOffsets[$r]=ji,this._contourCounts[$r]=In}var fn=f.mallocFloat(pi.length);for(ut=0;ut=0&&(M=x|0,C+=P*M,g-=M),new E(this.data,g,P,C)},S.step=function(x){var C=this.shape[0],M=this.stride[0],g=this.offset,P=0,T=Math.ceil;return typeof x=="number"&&(P=x|0,P<0?(g+=M*(C-1),C=T(-C/P)):C=T(C/P),M*=P),new E(this.data,C,M,g)},S.transpose=function(x){x=x===void 0?0:x|0;var C=this.shape,M=this.stride;return new E(this.data,C[x],M[x],this.offset)},S.pick=function(x){var C=[],M=[],g=this.offset;typeof x=="number"&&x>=0?g=g+this.stride[0]*x|0:(C.push(this.shape[0]),M.push(this.stride[0]));var P=p[C.length+1];return P(this.data,C,M,g)},function(x,C,M,g){return new E(x,C[0],M[0],g)}},2:function(b,p,k){function E(L,x,C,M,g,P){this.data=L,this.shape=[x,C],this.stride=[M,g],this.offset=P|0}var S=E.prototype;return S.dtype=b,S.dimension=2,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(S,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),S.set=function(x,C,M){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C,M):this.data[this.offset+this.stride[0]*x+this.stride[1]*C]=M},S.get=function(x,C){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C):this.data[this.offset+this.stride[0]*x+this.stride[1]*C]},S.index=function(x,C){return this.offset+this.stride[0]*x+this.stride[1]*C},S.hi=function(x,C){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,this.stride[0],this.stride[1],this.offset)},S.lo=function(x,C){var M=this.offset,g=0,P=this.shape[0],T=this.shape[1],z=this.stride[0],O=this.stride[1];return typeof x=="number"&&x>=0&&(g=x|0,M+=z*g,P-=g),typeof C=="number"&&C>=0&&(g=C|0,M+=O*g,T-=g),new E(this.data,P,T,z,O,M)},S.step=function(x,C){var M=this.shape[0],g=this.shape[1],P=this.stride[0],T=this.stride[1],z=this.offset,O=0,V=Math.ceil;return typeof x=="number"&&(O=x|0,O<0?(z+=P*(M-1),M=V(-M/O)):M=V(M/O),P*=O),typeof C=="number"&&(O=C|0,O<0?(z+=T*(g-1),g=V(-g/O)):g=V(g/O),T*=O),new E(this.data,M,g,P,T,z)},S.transpose=function(x,C){x=x===void 0?0:x|0,C=C===void 0?1:C|0;var M=this.shape,g=this.stride;return new E(this.data,M[x],M[C],g[x],g[C],this.offset)},S.pick=function(x,C){var M=[],g=[],P=this.offset;typeof x=="number"&&x>=0?P=P+this.stride[0]*x|0:(M.push(this.shape[0]),g.push(this.stride[0])),typeof C=="number"&&C>=0?P=P+this.stride[1]*C|0:(M.push(this.shape[1]),g.push(this.stride[1]));var T=p[M.length+1];return T(this.data,M,g,P)},function(x,C,M,g){return new E(x,C[0],C[1],M[0],M[1],g)}},3:function(b,p,k){function E(L,x,C,M,g,P,T,z){this.data=L,this.shape=[x,C,M],this.stride=[g,P,T],this.offset=z|0}var S=E.prototype;return S.dtype=b,S.dimension=3,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(S,"order",{get:function(){var x=Math.abs(this.stride[0]),C=Math.abs(this.stride[1]),M=Math.abs(this.stride[2]);return x>C?C>M?[2,1,0]:x>M?[1,2,0]:[1,0,2]:x>M?[2,0,1]:M>C?[0,1,2]:[0,2,1]}}),S.set=function(x,C,M,g){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M,g):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M]=g},S.get=function(x,C,M){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M]},S.index=function(x,C,M){return this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M},S.hi=function(x,C,M){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,typeof M!="number"||M<0?this.shape[2]:M|0,this.stride[0],this.stride[1],this.stride[2],this.offset)},S.lo=function(x,C,M){var g=this.offset,P=0,T=this.shape[0],z=this.shape[1],O=this.shape[2],V=this.stride[0],G=this.stride[1],Z=this.stride[2];return typeof x=="number"&&x>=0&&(P=x|0,g+=V*P,T-=P),typeof C=="number"&&C>=0&&(P=C|0,g+=G*P,z-=P),typeof M=="number"&&M>=0&&(P=M|0,g+=Z*P,O-=P),new E(this.data,T,z,O,V,G,Z,g)},S.step=function(x,C,M){var g=this.shape[0],P=this.shape[1],T=this.shape[2],z=this.stride[0],O=this.stride[1],V=this.stride[2],G=this.offset,Z=0,j=Math.ceil;return typeof x=="number"&&(Z=x|0,Z<0?(G+=z*(g-1),g=j(-g/Z)):g=j(g/Z),z*=Z),typeof C=="number"&&(Z=C|0,Z<0?(G+=O*(P-1),P=j(-P/Z)):P=j(P/Z),O*=Z),typeof M=="number"&&(Z=M|0,Z<0?(G+=V*(T-1),T=j(-T/Z)):T=j(T/Z),V*=Z),new E(this.data,g,P,T,z,O,V,G)},S.transpose=function(x,C,M){x=x===void 0?0:x|0,C=C===void 0?1:C|0,M=M===void 0?2:M|0;var g=this.shape,P=this.stride;return new E(this.data,g[x],g[C],g[M],P[x],P[C],P[M],this.offset)},S.pick=function(x,C,M){var g=[],P=[],T=this.offset;typeof x=="number"&&x>=0?T=T+this.stride[0]*x|0:(g.push(this.shape[0]),P.push(this.stride[0])),typeof C=="number"&&C>=0?T=T+this.stride[1]*C|0:(g.push(this.shape[1]),P.push(this.stride[1])),typeof M=="number"&&M>=0?T=T+this.stride[2]*M|0:(g.push(this.shape[2]),P.push(this.stride[2]));var z=p[g.length+1];return z(this.data,g,P,T)},function(x,C,M,g){return new E(x,C[0],C[1],C[2],M[0],M[1],M[2],g)}},4:function(b,p,k){function E(L,x,C,M,g,P,T,z,O,V){this.data=L,this.shape=[x,C,M,g],this.stride=[P,T,z,O],this.offset=V|0}var S=E.prototype;return S.dtype=b,S.dimension=4,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(S,"order",{get:k}),S.set=function(x,C,M,g,P){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g,P):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g]=P},S.get=function(x,C,M,g){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g):this.data[this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g]},S.index=function(x,C,M,g){return this.offset+this.stride[0]*x+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g},S.hi=function(x,C,M,g){return new E(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof C!="number"||C<0?this.shape[1]:C|0,typeof M!="number"||M<0?this.shape[2]:M|0,typeof g!="number"||g<0?this.shape[3]:g|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},S.lo=function(x,C,M,g){var P=this.offset,T=0,z=this.shape[0],O=this.shape[1],V=this.shape[2],G=this.shape[3],Z=this.stride[0],j=this.stride[1],N=this.stride[2],H=this.stride[3];return typeof x=="number"&&x>=0&&(T=x|0,P+=Z*T,z-=T),typeof C=="number"&&C>=0&&(T=C|0,P+=j*T,O-=T),typeof M=="number"&&M>=0&&(T=M|0,P+=N*T,V-=T),typeof g=="number"&&g>=0&&(T=g|0,P+=H*T,G-=T),new E(this.data,z,O,V,G,Z,j,N,H,P)},S.step=function(x,C,M,g){var P=this.shape[0],T=this.shape[1],z=this.shape[2],O=this.shape[3],V=this.stride[0],G=this.stride[1],Z=this.stride[2],j=this.stride[3],N=this.offset,H=0,te=Math.ceil;return typeof x=="number"&&(H=x|0,H<0?(N+=V*(P-1),P=te(-P/H)):P=te(P/H),V*=H),typeof C=="number"&&(H=C|0,H<0?(N+=G*(T-1),T=te(-T/H)):T=te(T/H),G*=H),typeof M=="number"&&(H=M|0,H<0?(N+=Z*(z-1),z=te(-z/H)):z=te(z/H),Z*=H),typeof g=="number"&&(H=g|0,H<0?(N+=j*(O-1),O=te(-O/H)):O=te(O/H),j*=H),new E(this.data,P,T,z,O,V,G,Z,j,N)},S.transpose=function(x,C,M,g){x=x===void 0?0:x|0,C=C===void 0?1:C|0,M=M===void 0?2:M|0,g=g===void 0?3:g|0;var P=this.shape,T=this.stride;return new E(this.data,P[x],P[C],P[M],P[g],T[x],T[C],T[M],T[g],this.offset)},S.pick=function(x,C,M,g){var P=[],T=[],z=this.offset;typeof x=="number"&&x>=0?z=z+this.stride[0]*x|0:(P.push(this.shape[0]),T.push(this.stride[0])),typeof C=="number"&&C>=0?z=z+this.stride[1]*C|0:(P.push(this.shape[1]),T.push(this.stride[1])),typeof M=="number"&&M>=0?z=z+this.stride[2]*M|0:(P.push(this.shape[2]),T.push(this.stride[2])),typeof g=="number"&&g>=0?z=z+this.stride[3]*g|0:(P.push(this.shape[3]),T.push(this.stride[3]));var O=p[P.length+1];return O(this.data,P,T,z)},function(x,C,M,g){return new E(x,C[0],C[1],C[2],C[3],M[0],M[1],M[2],M[3],g)}},5:function(p,k,E){function S(x,C,M,g,P,T,z,O,V,G,Z,j){this.data=x,this.shape=[C,M,g,P,T],this.stride=[z,O,V,G,Z],this.offset=j|0}var L=S.prototype;return L.dtype=p,L.dimension=5,Object.defineProperty(L,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(L,"order",{get:E}),L.set=function(C,M,g,P,T,z){return p==="generic"?this.data.set(this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T,z):this.data[this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T]=z},L.get=function(C,M,g,P,T){return p==="generic"?this.data.get(this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T):this.data[this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T]},L.index=function(C,M,g,P,T){return this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T},L.hi=function(C,M,g,P,T){return new S(this.data,typeof C!="number"||C<0?this.shape[0]:C|0,typeof M!="number"||M<0?this.shape[1]:M|0,typeof g!="number"||g<0?this.shape[2]:g|0,typeof P!="number"||P<0?this.shape[3]:P|0,typeof T!="number"||T<0?this.shape[4]:T|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},L.lo=function(C,M,g,P,T){var z=this.offset,O=0,V=this.shape[0],G=this.shape[1],Z=this.shape[2],j=this.shape[3],N=this.shape[4],H=this.stride[0],te=this.stride[1],oe=this.stride[2],_e=this.stride[3],Ee=this.stride[4];return typeof C=="number"&&C>=0&&(O=C|0,z+=H*O,V-=O),typeof M=="number"&&M>=0&&(O=M|0,z+=te*O,G-=O),typeof g=="number"&&g>=0&&(O=g|0,z+=oe*O,Z-=O),typeof P=="number"&&P>=0&&(O=P|0,z+=_e*O,j-=O),typeof T=="number"&&T>=0&&(O=T|0,z+=Ee*O,N-=O),new S(this.data,V,G,Z,j,N,H,te,oe,_e,Ee,z)},L.step=function(C,M,g,P,T){var z=this.shape[0],O=this.shape[1],V=this.shape[2],G=this.shape[3],Z=this.shape[4],j=this.stride[0],N=this.stride[1],H=this.stride[2],te=this.stride[3],oe=this.stride[4],_e=this.offset,Ee=0,Ce=Math.ceil;return typeof C=="number"&&(Ee=C|0,Ee<0?(_e+=j*(z-1),z=Ce(-z/Ee)):z=Ce(z/Ee),j*=Ee),typeof M=="number"&&(Ee=M|0,Ee<0?(_e+=N*(O-1),O=Ce(-O/Ee)):O=Ce(O/Ee),N*=Ee),typeof g=="number"&&(Ee=g|0,Ee<0?(_e+=H*(V-1),V=Ce(-V/Ee)):V=Ce(V/Ee),H*=Ee),typeof P=="number"&&(Ee=P|0,Ee<0?(_e+=te*(G-1),G=Ce(-G/Ee)):G=Ce(G/Ee),te*=Ee),typeof T=="number"&&(Ee=T|0,Ee<0?(_e+=oe*(Z-1),Z=Ce(-Z/Ee)):Z=Ce(Z/Ee),oe*=Ee),new S(this.data,z,O,V,G,Z,j,N,H,te,oe,_e)},L.transpose=function(C,M,g,P,T){C=C===void 0?0:C|0,M=M===void 0?1:M|0,g=g===void 0?2:g|0,P=P===void 0?3:P|0,T=T===void 0?4:T|0;var z=this.shape,O=this.stride;return new S(this.data,z[C],z[M],z[g],z[P],z[T],O[C],O[M],O[g],O[P],O[T],this.offset)},L.pick=function(C,M,g,P,T){var z=[],O=[],V=this.offset;typeof C=="number"&&C>=0?V=V+this.stride[0]*C|0:(z.push(this.shape[0]),O.push(this.stride[0])),typeof M=="number"&&M>=0?V=V+this.stride[1]*M|0:(z.push(this.shape[1]),O.push(this.stride[1])),typeof g=="number"&&g>=0?V=V+this.stride[2]*g|0:(z.push(this.shape[2]),O.push(this.stride[2])),typeof P=="number"&&P>=0?V=V+this.stride[3]*P|0:(z.push(this.shape[3]),O.push(this.stride[3])),typeof T=="number"&&T>=0?V=V+this.stride[4]*T|0:(z.push(this.shape[4]),O.push(this.stride[4]));var G=k[z.length+1];return G(this.data,z,O,V)},function(C,M,g,P){return new S(C,M[0],M[1],M[2],M[3],M[4],g[0],g[1],g[2],g[3],g[4],P)}}};function h(b,p){var k=p===-1?"T":String(p),E=f[k];return p===-1?E(b):p===0?E(b,v[b][0]):E(b,v[b],c)}function d(b){if(s(b))return"buffer";if(l)switch(Object.prototype.toString.call(b)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(b)?"array":"generic"}var v={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function _(b,p,k,E){if(b===void 0){var g=v.array[0];return g([])}else typeof b=="number"&&(b=[b]);p===void 0&&(p=[b.length]);var S=p.length;if(k===void 0){k=new Array(S);for(var L=S-1,x=1;L>=0;--L)k[L]=x,x*=p[L]}if(E===void 0){E=0;for(var L=0;L1e-6?(k[0]=S/M,k[1]=L/M,k[2]=x/M,k[3]=C/M):(k[0]=k[1]=k[2]=0,k[3]=1)}function _(k,E,S){this.radius=s([S]),this.center=s(E),this.rotation=s(k),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var b=_.prototype;b.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},b.recalcMatrix=function(k){this.radius.curve(k),this.center.curve(k),this.rotation.curve(k);var E=this.computedRotation;v(E,E);var S=this.computedMatrix;u(S,E);var L=this.computedCenter,x=this.computedEye,C=this.computedUp,M=Math.exp(this.computedRadius[0]);x[0]=L[0]+M*S[2],x[1]=L[1]+M*S[6],x[2]=L[2]+M*S[10],C[0]=S[1],C[1]=S[5],C[2]=S[9];for(var g=0;g<3;++g){for(var P=0,T=0;T<3;++T)P+=S[g+4*T]*x[T];S[12+g]=-P}},b.getMatrix=function(k,E){this.recalcMatrix(k);var S=this.computedMatrix;if(E){for(var L=0;L<16;++L)E[L]=S[L];return E}return S},b.idle=function(k){this.center.idle(k),this.radius.idle(k),this.rotation.idle(k)},b.flush=function(k){this.center.flush(k),this.radius.flush(k),this.rotation.flush(k)},b.pan=function(k,E,S,L){E=E||0,S=S||0,L=L||0,this.recalcMatrix(k);var x=this.computedMatrix,C=x[1],M=x[5],g=x[9],P=h(C,M,g);C/=P,M/=P,g/=P;var T=x[0],z=x[4],O=x[8],V=T*C+z*M+O*g;T-=C*V,z-=M*V,O-=g*V;var G=h(T,z,O);T/=G,z/=G,O/=G;var Z=x[2],j=x[6],N=x[10],H=Z*C+j*M+N*g,te=Z*T+j*z+N*O;Z-=H*C+te*T,j-=H*M+te*z,N-=H*g+te*O;var oe=h(Z,j,N);Z/=oe,j/=oe,N/=oe;var _e=T*E+C*S,Ee=z*E+M*S,Ce=O*E+g*S;this.center.move(k,_e,Ee,Ce);var me=Math.exp(this.computedRadius[0]);me=Math.max(1e-4,me+L),this.radius.set(k,Math.log(me))},b.rotate=function(k,E,S,L){this.recalcMatrix(k),E=E||0,S=S||0;var x=this.computedMatrix,C=x[0],M=x[4],g=x[8],P=x[1],T=x[5],z=x[9],O=x[2],V=x[6],G=x[10],Z=E*C+S*P,j=E*M+S*T,N=E*g+S*z,H=-(V*N-G*j),te=-(G*Z-O*N),oe=-(O*j-V*Z),_e=Math.sqrt(Math.max(0,1-Math.pow(H,2)-Math.pow(te,2)-Math.pow(oe,2))),Ee=d(H,te,oe,_e);Ee>1e-6?(H/=Ee,te/=Ee,oe/=Ee,_e/=Ee):(H=te=oe=0,_e=1);var Ce=this.computedRotation,me=Ce[0],ie=Ce[1],Se=Ce[2],Le=Ce[3],Ae=me*_e+Le*H+ie*oe-Se*te,Fe=ie*_e+Le*te+Se*H-me*oe,Pe=Se*_e+Le*oe+me*te-ie*H,ge=Le*_e-me*H-ie*te-Se*oe;if(L){H=O,te=V,oe=G;var Re=Math.sin(L)/h(H,te,oe);H*=Re,te*=Re,oe*=Re,_e=Math.cos(E),Ae=Ae*_e+ge*H+Fe*oe-Pe*te,Fe=Fe*_e+ge*te+Pe*H-Ae*oe,Pe=Pe*_e+ge*oe+Ae*te-Fe*H,ge=ge*_e-Ae*H-Fe*te-Pe*oe}var ce=d(Ae,Fe,Pe,ge);ce>1e-6?(Ae/=ce,Fe/=ce,Pe/=ce,ge/=ce):(Ae=Fe=Pe=0,ge=1),this.rotation.set(k,Ae,Fe,Pe,ge)},b.lookAt=function(k,E,S,L){this.recalcMatrix(k),S=S||this.computedCenter,E=E||this.computedEye,L=L||this.computedUp;var x=this.computedMatrix;l(x,E,S,L);var C=this.computedRotation;f(C,x[0],x[1],x[2],x[4],x[5],x[6],x[8],x[9],x[10]),v(C,C),this.rotation.set(k,C[0],C[1],C[2],C[3]);for(var M=0,g=0;g<3;++g)M+=Math.pow(S[g]-E[g],2);this.radius.set(k,.5*Math.log(Math.max(M,1e-6))),this.center.set(k,S[0],S[1],S[2])},b.translate=function(k,E,S,L){this.center.move(k,E||0,S||0,L||0)},b.setMatrix=function(k,E){var S=this.computedRotation;f(S,E[0],E[1],E[2],E[4],E[5],E[6],E[8],E[9],E[10]),v(S,S),this.rotation.set(k,S[0],S[1],S[2],S[3]);var L=this.computedMatrix;c(L,E);var x=L[15];if(Math.abs(x)>1e-6){var C=L[12]/x,M=L[13]/x,g=L[14]/x;this.recalcMatrix(k);var P=Math.exp(this.computedRadius[0]);this.center.set(k,C-L[2]*P,M-L[6]*P,g-L[10]*P),this.radius.idle(k)}else this.center.idle(k),this.radius.idle(k)},b.setDistance=function(k,E){E>0&&this.radius.set(k,Math.log(E))},b.setDistanceLimits=function(k,E){k>0?k=Math.log(k):k=-1/0,E>0?E=Math.log(E):E=1/0,E=Math.max(E,k),this.radius.bounds[0][0]=k,this.radius.bounds[1][0]=E},b.getDistanceLimits=function(k){var E=this.radius.bounds;return k?(k[0]=Math.exp(E[0][0]),k[1]=Math.exp(E[1][0]),k):[Math.exp(E[0][0]),Math.exp(E[1][0])]},b.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},b.fromJSON=function(k){var E=this.lastT(),S=k.center;S&&this.center.set(E,S[0],S[1],S[2]);var L=k.rotation;L&&this.rotation.set(E,L[0],L[1],L[2],L[3]);var x=k.distance;x&&x>0&&this.radius.set(E,Math.log(x)),this.setDistanceLimits(k.zoomMin,k.zoomMax)};function p(k){k=k||{};var E=k.center||[0,0,0],S=k.rotation||[0,0,0,1],L=k.radius||1;E=[].slice.call(E,0,3),S=[].slice.call(S,0,4),v(S,S);var x=new _(S,E,Math.log(L));return x.setDistanceLimits(k.zoomMin,k.zoomMax),("eye"in k||"up"in k)&&x.lookAt(0,k.eye,k.center,k.up),x}},9994:function(i,a,o){"use strict";var s=o(9618),l=o(8277);i.exports=function(c,f){for(var h=[],d=c,v=1;Array.isArray(d);)h.push(d.length),v*=d.length,d=d[0];return h.length===0?s():(f||(f=s(new Float64Array(v),h)),l(f,c),f)}}},t={};function r(i){var a=t[i];if(a!==void 0)return a.exports;var o=t[i]={id:i,loaded:!1,exports:{}};return e[i].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}(function(){r.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch(i){if(typeof window=="object")return window}}()})(),function(){r.nmd=function(i){return i.paths=[],i.children||(i.children=[]),i}}();var n=r(1964);yPe.exports=n})()});var gX=ye((V0r,_Pe)=>{"use strict";_Pe.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var TPe=ye((G0r,wPe)=>{"use strict";var xPe=gX();wPe.exports=QPt;var bPe={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function QPt(e){var t,r=[],n=1,i;if(typeof e=="string")if(e=e.toLowerCase(),xPe[e])r=xPe[e].slice(),i="rgb";else if(e==="transparent")n=0,i="rgb",r=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var a=e.slice(1),o=a.length,s=o<=4;n=1,s?(r=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],o===4&&(n=parseInt(a[3]+a[3],16)/255)):(r=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],o===8&&(n=parseInt(a[6]+a[7],16)/255)),r[0]||(r[0]=0),r[1]||(r[1]=0),r[2]||(r[2]=0),i="rgb"}else if(t=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var l=t[1],u=l==="rgb",a=l.replace(/a$/,"");i=a;var o=a==="cmyk"?4:a==="gray"?1:3;r=t[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(h,d){if(/%$/.test(h))return d===o?parseFloat(h)/100:a==="rgb"?parseFloat(h)*255/100:parseFloat(h);if(a[d]==="h"){if(/deg$/.test(h))return parseFloat(h);if(bPe[h]!==void 0)return bPe[h]}return parseFloat(h)}),l===a&&r.push(1),n=u||r[o]===void 0?1:r[o],r=r.slice(0,o)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(r=e.match(/([0-9]+)/g).map(function(c){return parseFloat(c)}),i=e.match(/([a-z])/ig).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(r=[e[0],e[1],e[2]],i="rgb",n=e.length===4?e[3]:1):e instanceof Object&&(e.r!=null||e.red!=null||e.R!=null?(i="rgb",r=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(i="hsl",r=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),n=e.a||e.alpha||e.opacity||1,e.opacity!=null&&(n/=100)):(i="rgb",r=[e>>>16,(e&65280)>>>8,e&255]);return{space:i,values:r,alpha:n}}});var SPe=ye((H0r,APe)=>{"use strict";var eIt=TPe();APe.exports=function(t){Array.isArray(t)&&t.raw&&(t=String.raw.apply(null,arguments));var r,n,i,a=eIt(t);if(!a.space)return[];var o=[0,0,0],s=a.space[0]==="h"?[360,100,100]:[255,255,255];return r=Array(3),r[0]=Math.min(Math.max(a.values[0],o[0]),s[0]),r[1]=Math.min(Math.max(a.values[1],o[1]),s[1]),r[2]=Math.min(Math.max(a.values[2],o[2]),s[2]),a.space[0]==="h"&&(r=tIt(r)),r.push(Math.min(Math.max(a.alpha,0),1)),r};function tIt(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a,o,s,l,u=0;if(r===0)return l=n*255,[l,l,l];for(a=n<.5?n*(1+r):n+r-n*r,i=2*n-a,s=[0,0,0];u<3;)o=t+1/3*-(u-1),o<0?o++:o>1&&o--,l=6*o<1?i+(a-i)*6*o:2*o<1?a:3*o<2?i+(a-i)*(2/3-o)*6:i,s[u++]=l*255;return s}});var ZE=ye((j0r,MPe)=>{MPe.exports=rIt;function rIt(e,t,r){return tr?r:e:et?t:e}});var YD=ye((W0r,EPe)=>{EPe.exports=function(e){switch(e){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}});var J_=ye((X0r,kPe)=>{"use strict";var iIt=SPe(),KD=ZE(),nIt=YD();kPe.exports=function(t,r){(r==="float"||!r)&&(r="array"),r==="uint"&&(r="uint8"),r==="uint_clamped"&&(r="uint8_clamped");var n=nIt(r),i=new n(4),a=r!=="uint8"&&r!=="uint8_clamped";return(!t.length||typeof t=="string")&&(t=iIt(t),t[0]/=255,t[1]/=255,t[2]/=255),aIt(t)?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:255,a&&(i[0]/=255,i[1]/=255,i[2]/=255,i[3]/=255),i):(a?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:1):(i[0]=KD(Math.floor(t[0]*255),0,255),i[1]=KD(Math.floor(t[1]*255),0,255),i[2]=KD(Math.floor(t[2]*255),0,255),i[3]=t[3]==null?255:KD(Math.floor(t[3]*255),0,255)),i)};function aIt(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}});var Jy=ye((Z0r,CPe)=>{"use strict";var oIt=J_();function sIt(e){return e?oIt(e):[0,0,0,1]}CPe.exports=sIt});var $y=ye((Y0r,zPe)=>{"use strict";var DPe=Eo(),lIt=cd(),JD=J_(),$D=tc(),uIt=Lh().defaultLine,LPe=vv().isArrayOrTypedArray,mX=JD(uIt),FPe=1;function PPe(e,t){var r=e;return r[3]*=t,r}function IPe(e){if(DPe(e))return mX;var t=JD(e);return t.length?t:mX}function RPe(e){return DPe(e)?e:FPe}function cIt(e,t,r){var n=e.color;n&&n._inputArray&&(n=n._inputArray);var i=LPe(n),a=LPe(t),o=$D.extractOpts(e),s=[],l,u,c,f,h;if(o.colorscale!==void 0?l=$D.makeColorScaleFuncFromTrace(e):l=IPe,i?u=function(v,_){return v[_]===void 0?mX:JD(l(v[_]))}:u=IPe,a?c=function(v,_){return v[_]===void 0?FPe:RPe(v[_])}:c=RPe,i||a)for(var d=0;d{"use strict";OPe.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}});var QD=ye((J0r,qPe)=>{"use strict";qPe.exports={circle:"\u25CF","circle-open":"\u25CB",square:"\u25A0","square-open":"\u25A1",diamond:"\u25C6","diamond-open":"\u25C7",cross:"+",x:"\u274C"}});var NPe=ye(($0r,BPe)=>{"use strict";var hIt=qa();function _X(e,t,r,n){if(!t||!t.visible)return null;for(var i=hIt.getComponentMethod("errorbars","makeComputeError")(t),a=new Array(e.length),o=0;o0){var f=n.c2l(u);n._lowerLogErrorBound||(n._lowerLogErrorBound=f),n._lowerErrorBound=Math.min(n._lowerLogErrorBound,f)}}else a[o]=[-s[0]*r,s[1]*r]}return a}function dIt(e){for(var t=0;t{"use strict";var pIt=Od().gl_line3d,UPe=Od().gl_scatter3d,gIt=Od().gl_error3d,mIt=Od().gl_mesh3d,yIt=Od().delaunay_triangulate,Qy=Dr(),WPe=Jy(),eF=$y().formatColor,_It=k3(),xX=yX(),xIt=QD(),bIt=ho(),wIt=ip().appendArrayPointValue,TIt=NPe();function XPe(e,t){this.scene=e,this.uid=t,this.linePlot=null,this.scatterPlot=null,this.errorBars=null,this.textMarkers=null,this.delaunayMesh=null,this.color=null,this.mode="",this.dataPoints=[],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.textLabels=null,this.data=null}var wX=XPe.prototype;wX.handlePick=function(e){if(e.object&&(e.object===this.linePlot||e.object===this.delaunayMesh||e.object===this.textMarkers||e.object===this.scatterPlot)){var t=e.index=e.data.index;return e.object.highlight&&e.object.highlight(null),this.scatterPlot&&(e.object=this.scatterPlot,this.scatterPlot.highlight(e.data)),e.textLabel="",this.textLabels&&(Qy.isArrayOrTypedArray(this.textLabels)?(this.textLabels[t]||this.textLabels[t]===0)&&(e.textLabel=this.textLabels[t]):e.textLabel=this.textLabels),e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]],!0}};function AIt(e,t,r){var n=(r+1)%3,i=(r+2)%3,a=[],o=[],s;for(s=0;s-1?-1:e.indexOf("right")>-1?1:0}function GPe(e){return e==null?0:e.indexOf("top")>-1?-1:e.indexOf("bottom")>-1?1:0}function MIt(e){var t=0,r=0,n=[t,r];if(Array.isArray(e))for(var i=0;i=0){var u=AIt(s.position,s.delaunayColor,s.delaunayAxis);u.opacity=e.opacity,this.delaunayMesh?this.delaunayMesh.update(u):(u.gl=t,this.delaunayMesh=mIt(u),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)};wX.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())};function LIt(e,t){var r=new XPe(e,t.uid);return r.update(t),r}ZPe.exports=LIt});var EX=ye((egr,QPe)=>{"use strict";var e1=pf(),PIt=ec(),MX=Tu(),TX=df().axisHoverFormat,{hovertemplateAttrs:IIt,texttemplateAttrs:RIt,templatefallbackAttrs:KPe}=Ll(),JPe=Gl(),DIt=yX(),FIt=QD(),Kg=Ao().extendFlat,zIt=mc().overrideAll,$Pe=Z1(),OIt=e1.line,V2=e1.marker,qIt=V2.line,BIt=Kg({width:OIt.width,dash:{valType:"enumerated",values:$Pe(DIt),dflt:"solid"}},MX("line"));function AX(e){return{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}}var SX=QPe.exports=zIt({x:e1.x,y:e1.y,z:{valType:"data_array"},text:Kg({},e1.text,{}),texttemplate:RIt(),texttemplatefallback:KPe({editType:"calc"}),hovertext:Kg({},e1.hovertext,{}),hovertemplate:IIt(),hovertemplatefallback:KPe(),xhoverformat:TX("x"),yhoverformat:TX("y"),zhoverformat:TX("z"),mode:Kg({},e1.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:AX("x"),y:AX("y"),z:AX("z")},connectgaps:e1.connectgaps,line:BIt,marker:Kg({symbol:{valType:"enumerated",values:$Pe(FIt),dflt:"circle",arrayOk:!0},size:Kg({},V2.size,{dflt:8}),sizeref:V2.sizeref,sizemin:V2.sizemin,sizemode:V2.sizemode,opacity:Kg({},V2.opacity,{arrayOk:!1}),colorbar:V2.colorbar,line:Kg({width:Kg({},qIt.width,{arrayOk:!1})},MX("marker.line"))},MX("marker")),textposition:Kg({},e1.textposition,{dflt:"top center"}),textfont:PIt({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"]}),opacity:JPe.opacity,hoverinfo:Kg({},JPe.hoverinfo)},"calc","nested");SX.x.editType=SX.y.editType=SX.z.editType="calc+clearAxisTypes"});var rIe=ye((tgr,tIe)=>{"use strict";var eIe=qa(),NIt=Dr(),kX=Ru(),UIt=$p(),VIt=R0(),GIt=D0(),HIt=EX();tIe.exports=function(t,r,n,i){function a(d,v){return NIt.coerce(t,r,HIt,d,v)}var o=jIt(t,r,a,i);if(!o){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),a("mode"),kX.hasMarkers(r)&&UIt(t,r,n,i,a,{noSelect:!0,noAngle:!0}),kX.hasLines(r)&&(a("connectgaps"),VIt(t,r,n,i,a)),kX.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),GIt(t,r,i,a,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var s=(r.line||{}).color,l=(r.marker||{}).color;a("surfaceaxis")>=0&&a("surfacecolor",s||l);for(var u=["x","y","z"],c=0;c<3;++c){var f="projection."+u[c];a(f+".show")&&(a(f+".opacity"),a(f+".scale"))}var h=eIe.getComponentMethod("errorbars","supplyDefaults");h(t,r,s||l||n,{axis:"z"}),h(t,r,s||l||n,{axis:"y",inherit:"z"}),h(t,r,s||l||n,{axis:"x",inherit:"z"})};function jIt(e,t,r,n){var i=0,a=r("x"),o=r("y"),s=r("z"),l=eIe.getComponentMethod("calendars","handleTraceDefaults");return l(e,t,["x","y","z"],n),a&&o&&s&&(i=Math.min(a.length,o.length,s.length),t._length=t._xlength=t._ylength=t._zlength=i),i}});var nIe=ye((rgr,iIe)=>{"use strict";var WIt=km(),XIt=F0();iIe.exports=function(t,r){var n=[{x:!1,y:!1,trace:r,t:{}}];return WIt(n,r),XIt(t,r),n}});var oIe=ye((igr,aIe)=>{aIe.exports=ZIt;function ZIt(e,t){if(typeof e!="string")throw new TypeError("must specify type string");if(t=t||{},typeof document=="undefined"&&!t.canvas)return null;var r=t.canvas||document.createElement("canvas");typeof t.width=="number"&&(r.width=t.width),typeof t.height=="number"&&(r.height=t.height);var n=t,i;try{var a=[e];e.indexOf("webgl")===0&&a.push("experimental-"+e);for(var o=0;o{var YIt=oIe();sIe.exports=function(t){return YIt("webgl",t)}});var CX=ye((agr,cIe)=>{"use strict";var uIe=ka(),KIt=function(){};cIe.exports=function(t){for(var r in t)typeof t[r]=="function"&&(t[r]=KIt);t.destroy=function(){t.container.parentNode.removeChild(t.container)};var n=document.createElement("div");n.className="no-webgl",n.style.cursor="pointer",n.style.fontSize="24px",n.style.color=uIe.defaults[0],n.style.position="absolute",n.style.left=n.style.top="0px",n.style.width=n.style.height="100%",n.style["background-color"]=uIe.lightLine,n.style["z-index"]=30;var i=document.createElement("p");return i.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",i.style.position="relative",i.style.top="50%",i.style.left="50%",i.style.height="30%",i.style.width="50%",i.style.margin="-15% 0 0 -25%",n.appendChild(i),t.container.appendChild(n),t.container.style.background="#FFFFFF",t.container.onclick=function(){window.open("https://get.webgl.org")},!1}});var dIe=ye((ogr,hIe)=>{"use strict";var G2=Jy(),JIt=Dr(),$It=["xaxis","yaxis","zaxis"];function fIe(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickFontWeight=["normal","normal","normal","normal"],this.tickFontStyle=["normal","normal","normal","normal"],this.tickFontVariant=["normal","normal","normal","normal"],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["Open Sans","Open Sans","Open Sans"],this.labelSize=[20,20,20],this.labelFontWeight=["normal","normal","normal","normal"],this.labelFontStyle=["normal","normal","normal","normal"],this.labelFontVariant=["normal","normal","normal","normal"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[30,30,30],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[10,10,10],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!0,!0,!0],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._defaultTickPad=this.tickPad.slice(),this._defaultLabelPad=this.labelPad.slice(),this._defaultLineTickLength=this.lineTickLength.slice()}var QIt=fIe.prototype;QIt.merge=function(e,t){for(var r=this,n=0;n<3;++n){var i=t[$It[n]];if(!i.visible){r.tickEnable[n]=!1,r.labelEnable[n]=!1,r.lineEnable[n]=!1,r.lineTickEnable[n]=!1,r.gridEnable[n]=!1,r.zeroEnable[n]=!1,r.backgroundEnable[n]=!1;continue}r.labels[n]=e._meta?JIt.templateString(i.title.text,e._meta):i.title.text,"font"in i.title&&(i.title.font.color&&(r.labelColor[n]=G2(i.title.font.color)),i.title.font.family&&(r.labelFont[n]=i.title.font.family),i.title.font.size&&(r.labelSize[n]=i.title.font.size),i.title.font.weight&&(r.labelFontWeight[n]=i.title.font.weight),i.title.font.style&&(r.labelFontStyle[n]=i.title.font.style),i.title.font.variant&&(r.labelFontVariant[n]=i.title.font.variant)),"showline"in i&&(r.lineEnable[n]=i.showline),"linecolor"in i&&(r.lineColor[n]=G2(i.linecolor)),"linewidth"in i&&(r.lineWidth[n]=i.linewidth),"showgrid"in i&&(r.gridEnable[n]=i.showgrid),"gridcolor"in i&&(r.gridColor[n]=G2(i.gridcolor)),"gridwidth"in i&&(r.gridWidth[n]=i.gridwidth),i.type==="log"?r.zeroEnable[n]=!1:"zeroline"in i&&(r.zeroEnable[n]=i.zeroline),"zerolinecolor"in i&&(r.zeroLineColor[n]=G2(i.zerolinecolor)),"zerolinewidth"in i&&(r.zeroLineWidth[n]=i.zerolinewidth),"ticks"in i&&i.ticks?r.lineTickEnable[n]=!0:r.lineTickEnable[n]=!1,"ticklen"in i&&(r.lineTickLength[n]=r._defaultLineTickLength[n]=i.ticklen),"tickcolor"in i&&(r.lineTickColor[n]=G2(i.tickcolor)),"tickwidth"in i&&(r.lineTickWidth[n]=i.tickwidth),"tickangle"in i&&(r.tickAngle[n]=i.tickangle==="auto"?-3600:Math.PI*-i.tickangle/180),"showticklabels"in i&&(r.tickEnable[n]=i.showticklabels),"tickfont"in i&&(i.tickfont.color&&(r.tickColor[n]=G2(i.tickfont.color)),i.tickfont.family&&(r.tickFont[n]=i.tickfont.family),i.tickfont.size&&(r.tickSize[n]=i.tickfont.size),i.tickfont.weight&&(r.tickFontWeight[n]=i.tickfont.weight),i.tickfont.style&&(r.tickFontStyle[n]=i.tickfont.style),i.tickfont.variant&&(r.tickFontVariant[n]=i.tickfont.variant)),"mirror"in i?["ticks","all","allticks"].indexOf(i.mirror)!==-1?(r.lineTickMirror[n]=!0,r.lineMirror[n]=!0):i.mirror===!0?(r.lineTickMirror[n]=!1,r.lineMirror[n]=!0):(r.lineTickMirror[n]=!1,r.lineMirror[n]=!1):r.lineMirror[n]=!1,"showbackground"in i&&i.showbackground!==!1?(r.backgroundEnable[n]=!0,r.backgroundColor[n]=G2(i.backgroundcolor)):r.backgroundEnable[n]=!1}};function e8t(e,t){var r=new fIe;return r.merge(e,t),r}hIe.exports=e8t});var gIe=ye((sgr,pIe)=>{"use strict";var t8t=Jy(),r8t=["xaxis","yaxis","zaxis"];function vIe(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}var i8t=vIe.prototype;i8t.merge=function(e){for(var t=0;t<3;++t){var r=e[r8t[t]];if(!r.visible){this.enabled[t]=!1,this.drawSides[t]=!1;continue}this.enabled[t]=r.showspikes,this.colors[t]=t8t(r.spikecolor),this.drawSides[t]=r.spikesides,this.lineWidth[t]=r.spikethickness}};function n8t(e){var t=new vIe;return t.merge(e),t}pIe.exports=n8t});var _Ie=ye((lgr,yIe)=>{"use strict";yIe.exports=u8t;var mIe=ho(),a8t=Dr(),o8t=["xaxis","yaxis","zaxis"],s8t=[0,0,0];function l8t(e){for(var t=new Array(3),r=0;r<3;++r){for(var n=e[r],i=new Array(n.length),a=0;a/g," "));i[a]=u,o.tickmode=s}}t.ticks=i;for(var a=0;a<3;++a){s8t[a]=.5*(e.glplot.bounds[0][a]+e.glplot.bounds[1][a]);for(var c=0;c<2;++c)t.bounds[c][a]=e.glplot.bounds[c][a]}e.contourLevels=l8t(i)}});var MIe=ye((ugr,SIe)=>{"use strict";var wIe=Od().gl_plot3d,c8t=wIe.createCamera,xIe=wIe.createScene,f8t=lIe(),h8t=RL(),iF=qa(),up=Dr(),rF=up.preserveDrawingBuffer(),nF=ho(),Jg=vf(),d8t=Jy(),v8t=CX(),p8t=UU(),g8t=dIe(),m8t=gIe(),y8t=_Ie(),_8t=Ag().applyAutorangeOptions,YE,tF,TIe=!1;function AIe(e,t){var r=document.createElement("div"),n=e.container;this.graphDiv=e.graphDiv;var i=document.createElementNS("http://www.w3.org/2000/svg","svg");i.style.position="absolute",i.style.top=i.style.left="0px",i.style.width=i.style.height="100%",i.style["z-index"]=20,i.style["pointer-events"]="none",r.appendChild(i),this.svgContainer=i,r.id=e.id,r.style.position="absolute",r.style.top=r.style.left="0px",r.style.width=r.style.height="100%",n.appendChild(r),this.fullLayout=t,this.id=e.id||"scene",this.fullSceneLayout=t[this.id],this.plotArgs=[[],{},{}],this.axesOptions=g8t(t,t[this.id]),this.spikeOptions=m8t(t[this.id]),this.container=r,this.staticMode=!!e.staticPlot,this.pixelRatio=this.pixelRatio||e.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=iF.getComponentMethod("annotations3d","convert"),this.drawAnnotations=iF.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var Sv=AIe.prototype;Sv.prepareOptions=function(){var e=this,t={canvas:e.canvas,gl:e.gl,glOptions:{preserveDrawingBuffer:rF,premultipliedAlpha:!0,antialias:!0},container:e.container,axes:e.axesOptions,spikes:e.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:e.camera,pixelRatio:e.pixelRatio};if(e.staticMode){if(!tF&&(YE=document.createElement("canvas"),tF=f8t({canvas:YE,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!tF))throw new Error("error creating static canvas/context for image server");t.gl=tF,t.canvas=YE}return t};var bIe=!0;Sv.tryCreatePlot=function(){var e=this,t=e.prepareOptions(),r=!0;try{e.glplot=xIe(t)}catch(n){if(e.staticMode||!bIe||rF)r=!1;else{up.warn(["webgl setup failed possibly due to","false preserveDrawingBuffer config.","The mobile/tablet device may not be detected by is-mobile module.","Enabling preserveDrawingBuffer in second attempt to create webgl scene..."].join(" "));try{rF=t.glOptions.preserveDrawingBuffer=!0,e.glplot=xIe(t)}catch(i){rF=t.glOptions.preserveDrawingBuffer=!1,r=!1}}}return bIe=!1,r};Sv.initializeGLCamera=function(){var e=this,t=e.fullSceneLayout.camera,r=t.projection.type==="orthographic";e.camera=c8t(e.container,{center:[t.center.x,t.center.y,t.center.z],eye:[t.eye.x,t.eye.y,t.eye.z],up:[t.up.x,t.up.y,t.up.z],_ortho:r,zoomMin:.01,zoomMax:100,mode:"orbit"})};Sv.initializeGLPlot=function(){var e=this;e.initializeGLCamera();var t=e.tryCreatePlot();if(!t)return v8t(e);e.traces={},e.make4thDimension();var r=e.graphDiv,n=r.layout,i=function(){var o={};return e.isCameraChanged(n)&&(o[e.id+".camera"]=e.getCamera()),e.isAspectChanged(n)&&(o[e.id+".aspectratio"]=e.glplot.getAspectratio(),n[e.id].aspectmode!=="manual"&&(e.fullSceneLayout.aspectmode=n[e.id].aspectmode=o[e.id+".aspectmode"]="manual")),o},a=function(o){if(o.fullSceneLayout.dragmode!==!1){var s=i();o.saveLayout(n),o.graphDiv.emit("plotly_relayout",s)}};return e.glplot.canvas&&(e.glplot.canvas.addEventListener("mouseup",function(){a(e)}),e.glplot.canvas.addEventListener("touchstart",function(){TIe=!0}),e.glplot.canvas.addEventListener("wheel",function(o){if(r._context._scrollZoom.gl3d){if(e.camera._ortho){var s=o.deltaX>o.deltaY?1.1:.9090909090909091,l=e.glplot.getAspectratio();e.glplot.setAspectratio({x:s*l.x,y:s*l.y,z:s*l.z})}a(e)}},h8t?{passive:!1}:!1),e.glplot.canvas.addEventListener("mousemove",function(){if(e.fullSceneLayout.dragmode!==!1&&e.camera.mouseListener.buttons!==0){var o=i();e.graphDiv.emit("plotly_relayouting",o)}}),e.staticMode||e.glplot.canvas.addEventListener("webglcontextlost",function(o){r&&r.emit&&r.emit("plotly_webglcontextlost",{event:o,layer:e.id})},!1)),e.glplot.oncontextloss=function(){e.recoverContext()},e.glplot.onrender=function(){e.render()},!0};Sv.render=function(){var e=this,t=e.graphDiv,r,n=e.svgContainer,i=e.container.getBoundingClientRect();t._fullLayout._calcInverseTransform(t);var a=t._fullLayout._invScaleX,o=t._fullLayout._invScaleY,s=i.width*a,l=i.height*o;n.setAttributeNS(null,"viewBox","0 0 "+s+" "+l),n.setAttributeNS(null,"width",s),n.setAttributeNS(null,"height",l),y8t(e),e.glplot.axes.update(e.axesOptions);for(var u=Object.keys(e.traces),c=null,f=e.glplot.selection,h=0;h")):r.type==="isosurface"||r.type==="volume"?(p.valueLabel=nF.hoverLabelText(e._mockAxis,e._mockAxis.d2l(f.traceCoordinate[3]),r.valuehoverformat),x.push("value: "+p.valueLabel),f.textLabel&&x.push(f.textLabel),L=x.join("
")):L=f.textLabel;var C={x:f.traceCoordinate[0],y:f.traceCoordinate[1],z:f.traceCoordinate[2],data:_._input,fullData:_,curveNumber:_.index,pointNumber:b};Jg.appendArrayPointValue(C,_,b),r._module.eventData&&(C=_._module.eventData(C,f,_,{},b));var M={points:[C]};if(e.fullSceneLayout.hovermode){var g=[];Jg.loneHover({trace:_,x:(.5+.5*v[0]/v[3])*s,y:(.5-.5*v[1]/v[3])*l,xLabel:p.xLabel,yLabel:p.yLabel,zLabel:p.zLabel,text:L,name:c.name,color:Jg.castHoverOption(_,b,"bgcolor")||c.color,borderColor:Jg.castHoverOption(_,b,"bordercolor"),fontFamily:Jg.castHoverOption(_,b,"font.family"),fontSize:Jg.castHoverOption(_,b,"font.size"),fontColor:Jg.castHoverOption(_,b,"font.color"),nameLength:Jg.castHoverOption(_,b,"namelength"),textAlign:Jg.castHoverOption(_,b,"align"),hovertemplate:up.castOption(_,b,"hovertemplate"),hovertemplateLabels:up.extendFlat({},C,p),eventData:[C]},{container:n,gd:t,inOut_bbox:g}),C.bbox=g[0]}f.distance<5&&(f.buttons||TIe)?t.emit("plotly_click",M):t.emit("plotly_hover",M),this.oldEventData=M}else Jg.loneUnhover(n),this.oldEventData&&t.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;e.drawAnnotations(e)};Sv.recoverContext=function(){var e=this;e.glplot.dispose();var t=function(){if(e.glplot.gl.isContextLost()){requestAnimationFrame(t);return}if(!e.initializeGLPlot()){up.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}e.plot.apply(e,e.plotArgs)};requestAnimationFrame(t)};var KE=["xaxis","yaxis","zaxis"];function x8t(e,t,r){for(var n=e.fullSceneLayout,i=0;i<3;i++){var a=KE[i],o=a.charAt(0),s=n[a],l=t[o],u=t[o+"calendar"],c=t["_"+o+"length"];if(!up.isArrayOrTypedArray(l))r[0][i]=Math.min(r[0][i],0),r[1][i]=Math.max(r[1][i],c-1);else for(var f,h=0;h<(c||l.length);h++)if(up.isArrayOrTypedArray(l[h]))for(var d=0;d_[1][o])_[0][o]=-1,_[1][o]=1;else{var T=_[1][o]-_[0][o];_[0][o]-=T/32,_[1][o]+=T/32}if(k=[_[0][o],_[1][o]],k=_8t(k,l),_[0][o]=k[0],_[1][o]=k[1],l.isReversed()){var z=_[0][o];_[0][o]=_[1][o],_[1][o]=z}}else k=l.range,_[0][o]=l.r2l(k[0]),_[1][o]=l.r2l(k[1]);_[0][o]===_[1][o]&&(_[0][o]-=1,_[1][o]+=1),b[o]=_[1][o]-_[0][o],l.range=[_[0][o],_[1][o]],l.limitRange(),n.glplot.setBounds(o,{min:l.range[0]*d[o],max:l.range[1]*d[o]})}var O,V=c.aspectmode;if(V==="cube")O=[1,1,1];else if(V==="manual"){var G=c.aspectratio;O=[G.x,G.y,G.z]}else if(V==="auto"||V==="data"){var Z=[1,1,1];for(o=0;o<3;++o){l=c[KE[o]],u=l.type;var j=p[u];Z[o]=Math.pow(j.acc,1/j.count)/d[o]}V==="data"||Math.max.apply(null,Z)/Math.min.apply(null,Z)<=4?O=Z:O=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");c.aspectratio.x=f.aspectratio.x=O[0],c.aspectratio.y=f.aspectratio.y=O[1],c.aspectratio.z=f.aspectratio.z=O[2],n.glplot.setAspectratio(c.aspectratio),n.viewInitial.aspectratio||(n.viewInitial.aspectratio={x:c.aspectratio.x,y:c.aspectratio.y,z:c.aspectratio.z}),n.viewInitial.aspectmode||(n.viewInitial.aspectmode=c.aspectmode);var N=c.domain||null,H=t._size||null;if(N&&H){var te=n.container.style;te.position="absolute",te.left=H.l+N.x[0]*H.w+"px",te.top=H.t+(1-N.y[1])*H.h+"px",te.width=H.w*(N.x[1]-N.x[0])+"px",te.height=H.h*(N.y[1]-N.y[0])+"px"}n.glplot.redraw()}};Sv.destroy=function(){var e=this;e.glplot&&(e.camera.mouseListener.enabled=!1,e.container.removeEventListener("wheel",e.camera.wheelListener),e.camera=null,e.glplot.dispose(),e.container.parentNode.removeChild(e.container),e.glplot=null)};function w8t(e){return[[e.eye.x,e.eye.y,e.eye.z],[e.center.x,e.center.y,e.center.z],[e.up.x,e.up.y,e.up.z]]}function T8t(e){return{up:{x:e.up[0],y:e.up[1],z:e.up[2]},center:{x:e.center[0],y:e.center[1],z:e.center[2]},eye:{x:e.eye[0],y:e.eye[1],z:e.eye[2]},projection:{type:e._ortho===!0?"orthographic":"perspective"}}}Sv.getCamera=function(){var e=this;return e.camera.view.recalcMatrix(e.camera.view.lastT()),T8t(e.camera)};Sv.setViewport=function(e){var t=this,r=e.camera;t.camera.lookAt.apply(this,w8t(r)),t.glplot.setAspectratio(e.aspectratio);var n=r.projection.type==="orthographic",i=t.camera._ortho;n!==i&&(t.glplot.redraw(),t.glplot.clearRGBA(),t.glplot.dispose(),t.initializeGLPlot())};Sv.isCameraChanged=function(e){var t=this,r=t.getCamera(),n=up.nestedProperty(e,t.id+".camera"),i=n.get();function a(u,c,f,h){var d=["up","center","eye"],v=["x","y","z"];return c[d[f]]&&u[d[f]][v[h]]===c[d[f]][v[h]]}var o=!1;if(i===void 0)o=!0;else{for(var s=0;s<3;s++)for(var l=0;l<3;l++)if(!a(r,i,s,l)){o=!0;break}(!i.projection||r.projection&&r.projection.type!==i.projection.type)&&(o=!0)}return o};Sv.isAspectChanged=function(e){var t=this,r=t.glplot.getAspectratio(),n=up.nestedProperty(e,t.id+".aspectratio"),i=n.get();return i===void 0||i.x!==r.x||i.y!==r.y||i.z!==r.z};Sv.saveLayout=function(e){var t=this,r=t.fullLayout,n,i,a,o,s,l,u=t.isCameraChanged(e),c=t.isAspectChanged(e),f=u||c;if(f){var h={};if(u&&(n=t.getCamera(),i=up.nestedProperty(e,t.id+".camera"),a=i.get(),h[t.id+".camera"]=a),c&&(o=t.glplot.getAspectratio(),s=up.nestedProperty(e,t.id+".aspectratio"),l=s.get(),h[t.id+".aspectratio"]=l),iF.call("_storeDirectGUIEdit",e,r._preGUI,h),u){i.set(n);var d=up.nestedProperty(r,t.id+".camera");d.set(n)}if(c){s.set(o);var v=up.nestedProperty(r,t.id+".aspectratio");v.set(o),t.glplot.redraw()}}return f};Sv.updateFx=function(e,t){var r=this,n=r.camera;if(n)if(e==="orbit")n.mode="orbit",n.keyBindingMode="rotate";else if(e==="turntable"){n.up=[0,0,1],n.mode="turntable",n.keyBindingMode="rotate";var i=r.graphDiv,a=i._fullLayout,o=r.fullSceneLayout.camera,s=o.up.x,l=o.up.y,u=o.up.z;if(u/Math.sqrt(s*s+l*l+u*u)<.999){var c=r.id+".camera.up",f={x:0,y:0,z:1},h={};h[c]=f;var d=i.layout;iF.call("_storeDirectGUIEdit",d,a._preGUI,h),o.up=f,up.nestedProperty(d,c).set(f)}}else n.keyBindingMode=e;r.fullSceneLayout.hovermode=t};function A8t(e,t,r){for(var n=0,i=r-1;n0)for(var s=255/o,l=0;l<3;++l)e[a+l]=Math.min(s*e[a+l],255)}}Sv.toImage=function(e){var t=this;e||(e="png"),t.staticMode&&t.container.appendChild(YE),t.glplot.redraw();var r=t.glplot.gl,n=r.drawingBufferWidth,i=r.drawingBufferHeight;r.bindFramebuffer(r.FRAMEBUFFER,null);var a=new Uint8Array(n*i*4);r.readPixels(0,0,n,i,r.RGBA,r.UNSIGNED_BYTE,a),A8t(a,n,i),S8t(a,n,i);var o=document.createElement("canvas");o.width=n,o.height=i;var s=o.getContext("2d",{willReadFrequently:!0}),l=s.createImageData(n,i);l.data.set(a),s.putImageData(l,0,0);var u;switch(e){case"jpeg":u=o.toDataURL("image/jpeg");break;case"webp":u=o.toDataURL("image/webp");break;default:u=o.toDataURL("image/png")}return t.staticMode&&t.container.removeChild(YE),u};Sv.setConvert=function(){for(var e=this,t=0;t<3;t++){var r=e.fullSceneLayout[KE[t]];nF.setConvert(r,e.fullLayout),r.setScale=up.noop}};Sv.make4thDimension=function(){var e=this,t=e.graphDiv,r=t._fullLayout;e._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},nF.setConvert(e._mockAxis,r)};SIe.exports=AIe});var kIe=ye((cgr,EIe)=>{"use strict";EIe.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}});var PX=ye((fgr,CIe)=>{"use strict";var M8t=ka(),xs=Rd(),LX=Ao().extendFlat,E8t=mc().overrideAll;CIe.exports=E8t({visible:xs.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:M8t.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:xs.color,categoryorder:xs.categoryorder,categoryarray:xs.categoryarray,title:{text:xs.title.text,font:xs.title.font},type:LX({},xs.type,{values:["-","linear","log","date","category"]}),autotypenumbers:xs.autotypenumbers,autorange:xs.autorange,autorangeoptions:{minallowed:xs.autorangeoptions.minallowed,maxallowed:xs.autorangeoptions.maxallowed,clipmin:xs.autorangeoptions.clipmin,clipmax:xs.autorangeoptions.clipmax,include:xs.autorangeoptions.include,editType:"plot"},rangemode:xs.rangemode,minallowed:xs.minallowed,maxallowed:xs.maxallowed,range:LX({},xs.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:xs.minor.tickmode,nticks:xs.nticks,tick0:xs.tick0,dtick:xs.dtick,tickvals:xs.tickvals,ticktext:xs.ticktext,ticks:xs.ticks,mirror:xs.mirror,ticklen:xs.ticklen,tickwidth:xs.tickwidth,tickcolor:xs.tickcolor,showticklabels:xs.showticklabels,labelalias:xs.labelalias,tickfont:xs.tickfont,tickangle:xs.tickangle,tickprefix:xs.tickprefix,showtickprefix:xs.showtickprefix,ticksuffix:xs.ticksuffix,showticksuffix:xs.showticksuffix,showexponent:xs.showexponent,exponentformat:xs.exponentformat,minexponent:xs.minexponent,separatethousands:xs.separatethousands,tickformat:xs.tickformat,tickformatstops:xs.tickformatstops,hoverformat:xs.hoverformat,showline:xs.showline,linecolor:xs.linecolor,linewidth:xs.linewidth,showgrid:xs.showgrid,gridcolor:LX({},xs.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:xs.gridwidth,zeroline:xs.zeroline,zerolinecolor:xs.zerolinecolor,zerolinewidth:xs.zerolinewidth},"plot","from-root")});var FX=ye((hgr,LIe)=>{"use strict";var IX=PX(),k8t=Cc().attributes,RX=Ao().extendFlat,C8t=Dr().counterRegex;function DX(e,t,r){return{x:{valType:"number",dflt:e,editType:"camera"},y:{valType:"number",dflt:t,editType:"camera"},z:{valType:"number",dflt:r,editType:"camera"},editType:"camera"}}LIe.exports={_arrayAttrRegexps:[C8t("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:RX(DX(0,0,1),{}),center:RX(DX(0,0,0),{}),eye:RX(DX(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:k8t({name:"scene",editType:"plot"}),aspectmode:{valType:"enumerated",values:["auto","cube","data","manual"],dflt:"auto",editType:"plot",impliedEdits:{"aspectratio.x":void 0,"aspectratio.y":void 0,"aspectratio.z":void 0}},aspectratio:{x:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},y:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},z:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},editType:"plot",impliedEdits:{aspectmode:"manual"}},xaxis:IX,yaxis:IX,zaxis:IX,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot"},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar"},uirevision:{valType:"any",editType:"none"},editType:"plot"}});var DIe=ye((dgr,RIe)=>{"use strict";var L8t=cd().mix,PIe=Dr(),P8t=vl(),I8t=PX(),R8t=SU(),D8t=i4(),IIe=["xaxis","yaxis","zaxis"],F8t=100*136/187;RIe.exports=function(t,r,n){var i,a;function o(u,c){return PIe.coerce(i,a,I8t,u,c)}for(var s=0;s{"use strict";var z8t=Dr(),O8t=ka(),q8t=qa(),B8t=k_(),N8t=DIe(),FIe=FX(),U8t=Id().getSubplotData,zIe="gl3d";OIe.exports=function(t,r,n){var i=r._basePlotModules.length>1;function a(o){if(!i){var s=z8t.validate(t[o],FIe[o]);if(s)return t[o]}}B8t(t,r,n,{type:zIe,attributes:FIe,handleDefaults:V8t,fullLayout:r,font:r.font,fullData:n,getDfltFromLayout:a,autotypenumbersDflt:r.autotypenumbers,paper_bgcolor:r.paper_bgcolor,calendar:r.calendar})};function V8t(e,t,r,n){for(var i=r("bgcolor"),a=O8t.combine(i,n.paper_bgcolor),o=["up","center","eye"],s=0;s.999)&&(h="turntable")}else h="turntable";r("dragmode",h),r("hovermode",n.getDfltFromLayout("hovermode"))}});var $_=ye(cp=>{"use strict";var G8t=mc().overrideAll,H8t=B1(),j8t=MIe(),W8t=Id().getSubplotData,X8t=Dr(),Z8t=Wp(),GA="gl3d",zX="scene";cp.name=GA;cp.attr=zX;cp.idRoot=zX;cp.idRegex=cp.attrRegex=X8t.counterRegex("scene");cp.attributes=kIe();cp.layoutAttributes=FX();cp.baseLayoutAttrOverrides=G8t({hoverlabel:H8t.hoverlabel},"plot","nested");cp.supplyLayoutDefaults=qIe();cp.plot=function(t){for(var r=t._fullLayout,n=t._fullData,i=r._subplots[GA],a=0;a{"use strict";BIe.exports={plot:YPe(),attributes:EX(),markerSymbols:QD(),supplyDefaults:rIe(),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:nIe(),moduleType:"trace",name:"scatter3d",basePlotModule:$_(),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}});var VIe=ye((mgr,UIe)=>{"use strict";UIe.exports=NIe()});var JE=ye((ygr,jIe)=>{"use strict";var GIe=ka(),Y8t=Tu(),OX=df().axisHoverFormat,{hovertemplateAttrs:K8t,templatefallbackAttrs:J8t}=Ll(),HIe=Gl(),qX=Ao().extendFlat,$8t=mc().overrideAll;function BX(e){return{valType:"boolean",dflt:!1}}function NX(e){return{show:{valType:"boolean",dflt:!1},start:{valType:"number",dflt:null,editType:"plot"},end:{valType:"number",dflt:null,editType:"plot"},size:{valType:"number",dflt:null,min:0,editType:"plot"},project:{x:BX("x"),y:BX("y"),z:BX("z")},color:{valType:"color",dflt:GIe.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:GIe.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var UX=jIe.exports=$8t(qX({z:{valType:"data_array"},x:{valType:"data_array"},y:{valType:"data_array"},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:K8t(),hovertemplatefallback:J8t(),xhoverformat:OX("x"),yhoverformat:OX("y"),zhoverformat:OX("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},Y8t("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:NX("x"),y:NX("y"),z:NX("z")},hidesurface:{valType:"boolean",dflt:!1},lightposition:{x:{valType:"number",min:-1e5,max:1e5,dflt:10},y:{valType:"number",min:-1e5,max:1e5,dflt:1e4},z:{valType:"number",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:"number",min:0,max:1,dflt:.8},diffuse:{valType:"number",min:0,max:1,dflt:.8},specular:{valType:"number",min:0,max:2,dflt:.05,description:"Represents the level that incident rays are reflected in a single direction, causing shine."},roughness:{valType:"number",min:0,max:1,dflt:.5,description:"Alters specular reflection; the rougher the surface, the wider and less contrasty the shine."},fresnel:{valType:"number",min:0,max:5,dflt:.2}},opacity:{valType:"number",min:0,max:1,dflt:1},opacityscale:{valType:"any",editType:"calc"},hoverinfo:qX({},HIe.hoverinfo),showlegend:qX({},HIe.showlegend,{dflt:!1})}),"calc","nested");UX.x.editType=UX.y.editType=UX.z.editType="calc+clearAxisTypes"});var GX=ye((_gr,ZIe)=>{"use strict";var Q8t=qa(),WIe=Dr(),eRt=Qh(),tRt=JE(),VX=.1;function rRt(e,t){for(var r=[],n=32,i=0;i{"use strict";var YIe=gv();KIe.exports=function(t,r){r.surfacecolor?YIe(t,r,{vals:r.surfacecolor,containerStr:"",cLetter:"c"}):YIe(t,r,{vals:r.z,containerStr:"",cLetter:"c"})}});var i8e=ye((bgr,r8e)=>{"use strict";var aRt=Od().gl_surface3d,HA=Od().ndarray,oRt=Od().ndarray_linear_interpolate.d2,sRt=o8(),lRt=s8(),$E=Dr().isArrayOrTypedArray,uRt=$y().parseColorScale,$Ie=Jy(),cRt=tc().extractOpts;function e8e(e,t,r){this.scene=e,this.uid=r,this.surface=t,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var $g=e8e.prototype;$g.getXat=function(e,t,r,n){var i=$E(this.data.x)?$E(this.data.x[0])?this.data.x[t][e]:this.data.x[e]:e;return r===void 0?i:n.d2l(i,0,r)};$g.getYat=function(e,t,r,n){var i=$E(this.data.y)?$E(this.data.y[0])?this.data.y[t][e]:this.data.y[t]:t;return r===void 0?i:n.d2l(i,0,r)};$g.getZat=function(e,t,r,n){var i=this.data.z[t][e];return i===null&&this.data.connectgaps&&this.data._interpolatedZ&&(i=this.data._interpolatedZ[t][e]),r===void 0?i:n.d2l(i,0,r)};$g.handlePick=function(e){if(e.object===this.surface){var t=(e.data.index[0]-1)/this.dataScaleX-1,r=(e.data.index[1]-1)/this.dataScaleY-1,n=Math.max(Math.min(Math.round(t),this.data.z[0].length-1),0),i=Math.max(Math.min(Math.round(r),this.data._ylength-1),0);e.index=[n,i],e.traceCoordinate=[this.getXat(n,i),this.getYat(n,i),this.getZat(n,i)],e.dataCoordinate=[this.getXat(n,i,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(n,i,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(n,i,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var a=0;a<3;a++){var o=e.dataCoordinate[a];o!=null&&(e.dataCoordinate[a]*=this.scene.dataScale[a])}var s=this.data.hovertext||this.data.text;return $E(s)&&s[i]&&s[i][n]!==void 0?e.textLabel=s[i][n]:s?e.textLabel=s:e.textLabel="",e.data.dataCoordinate=e.dataCoordinate.slice(),this.surface.highlight(e.data),this.scene.glplot.spikes.position=e.dataCoordinate,!0}};function fRt(e){var t=e[0].rgb,r=e[e.length-1].rgb;return t[0]===r[0]&&t[1]===r[1]&&t[2]===r[2]&&t[3]===r[3]}var jA=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999];function hRt(e,t){if(e0){r=jA[n];break}return r}function vRt(e,t){if(!(e<1||t<1)){for(var r=HX(e),n=HX(t),i=1,a=0;aaF;)n--,n/=dRt(n),n++,n1?i:1};function gRt(e,t,r){var n=r[8]+r[2]*t[0]+r[5]*t[1];return e[0]=(r[6]+r[0]*t[0]+r[3]*t[1])/n,e[1]=(r[7]+r[1]*t[0]+r[4]*t[1])/n,e}function mRt(e,t,r){return yRt(e,t,gRt,r),e}function yRt(e,t,r,n){for(var i=[0,0],a=e.shape[0],o=e.shape[1],s=0;s0&&this.contourStart[n]!==null&&this.contourEnd[n]!==null&&this.contourEnd[n]>this.contourStart[n]))for(t[n]=!0,i=this.contourStart[n];ih&&(this.minValues[u]=h),this.maxValues[u]{"use strict";n8e.exports={attributes:JE(),supplyDefaults:GX().supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:JIe(),plot:i8e(),moduleType:"trace",name:"surface",basePlotModule:$_(),categories:["gl3d","2dMap","showLegend"],meta:{}}});var s8e=ye((Tgr,o8e)=>{"use strict";o8e.exports=a8e()});var WA=ye((Agr,u8e)=>{"use strict";var bRt=Tu(),jX=df().axisHoverFormat,{hovertemplateAttrs:wRt,templatefallbackAttrs:TRt}=Ll(),Q_=JE(),l8e=Gl(),ex=Ao().extendFlat;u8e.exports=ex({x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},i:{valType:"data_array",editType:"calc"},j:{valType:"data_array",editType:"calc"},k:{valType:"data_array",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:wRt({editType:"calc"}),hovertemplatefallback:TRt({editType:"calc"}),xhoverformat:jX("x"),yhoverformat:jX("y"),zhoverformat:jX("z"),delaunayaxis:{valType:"enumerated",values:["x","y","z"],dflt:"z",editType:"calc"},alphahull:{valType:"number",dflt:-1,editType:"calc"},intensity:{valType:"data_array",editType:"calc"},intensitymode:{valType:"enumerated",values:["vertex","cell"],dflt:"vertex",editType:"calc"},color:{valType:"color",editType:"calc"},vertexcolor:{valType:"data_array",editType:"calc"},facecolor:{valType:"data_array",editType:"calc"}},bRt("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:Q_.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:ex({},Q_.contours.x.show,{}),color:Q_.contours.x.color,width:Q_.contours.x.width,editType:"calc"},lightposition:{x:ex({},Q_.lightposition.x,{dflt:1e5}),y:ex({},Q_.lightposition.y,{dflt:1e5}),z:ex({},Q_.lightposition.z,{dflt:0}),editType:"calc"},lighting:ex({vertexnormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-12,editType:"calc",description:"Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry."},facenormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-6,editType:"calc",description:"Epsilon for face normals calculation avoids math issues arising from degenerate geometry."},editType:"calc"},Q_.lighting),hoverinfo:ex({},l8e.hoverinfo,{editType:"calc"}),showlegend:ex({},l8e.showlegend,{dflt:!1})})});var sF=ye((Sgr,f8e)=>{"use strict";var ARt=Tu(),oF=df().axisHoverFormat,{hovertemplateAttrs:SRt,templatefallbackAttrs:MRt}=Ll(),QE=WA(),c8e=Gl(),WX=Ao().extendFlat,ERt=mc().overrideAll;function XX(e){return{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}}}function ZX(e){return{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}}}var XA=f8e.exports=ERt(WX({x:{valType:"data_array"},y:{valType:"data_array"},z:{valType:"data_array"},value:{valType:"data_array"},isomin:{valType:"number"},isomax:{valType:"number"},surface:{show:{valType:"boolean",dflt:!0},count:{valType:"integer",dflt:2,min:1},fill:{valType:"number",min:0,max:1,dflt:1},pattern:{valType:"flaglist",flags:["A","B","C","D","E"],extras:["all","odd","even"],dflt:"all"}},spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:.15}},slices:{x:XX("x"),y:XX("y"),z:XX("z")},caps:{x:ZX("x"),y:ZX("y"),z:ZX("z")},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:SRt(),hovertemplatefallback:MRt(),xhoverformat:oF("x"),yhoverformat:oF("y"),zhoverformat:oF("z"),valuehoverformat:oF("value",1),showlegend:WX({},c8e.showlegend,{dflt:!1})},ARt("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:QE.opacity,lightposition:QE.lightposition,lighting:QE.lighting,flatshading:QE.flatshading,contour:QE.contour,hoverinfo:WX({},c8e.hoverinfo)}),"calc","nested");XA.flatshading.dflt=!0;XA.lighting.facenormalsepsilon.dflt=0;XA.x.editType=XA.y.editType=XA.z.editType=XA.value.editType="calc+clearAxisTypes"});var YX=ye((Mgr,d8e)=>{"use strict";var kRt=Dr(),CRt=qa(),LRt=sF(),PRt=Qh();function IRt(e,t,r,n){function i(a,o){return kRt.coerce(e,t,LRt,a,o)}h8e(e,t,r,n,i)}function h8e(e,t,r,n,i){var a=i("isomin"),o=i("isomax");o!=null&&a!==void 0&&a!==null&&a>o&&(t.isomin=null,t.isomax=null);var s=i("x"),l=i("y"),u=i("z"),c=i("value");if(!s||!s.length||!l||!l.length||!u||!u.length||!c||!c.length){t.visible=!1;return}var f=CRt.getComponentMethod("calendars","handleTraceDefaults");f(e,t,["x","y","z"],n),i("valuehoverformat"),["x","y","z"].forEach(function(_){i(_+"hoverformat");var b="caps."+_,p=i(b+".show");p&&i(b+".fill");var k="slices."+_,E=i(k+".show");E&&(i(k+".fill"),i(k+".locations"))});var h=i("spaceframe.show");h&&i("spaceframe.fill");var d=i("surface.show");d&&(i("surface.count"),i("surface.fill"),i("surface.pattern"));var v=i("contour.show");v&&(i("contour.color"),i("contour.width")),["text","hovertext","hovertemplate","lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","opacity"].forEach(function(_){i(_)}),PRt(e,t,n,i,{prefix:"",cLetter:"c"}),t._length=null}d8e.exports={supplyDefaults:IRt,supplyIsoDefaults:h8e}});var lF=ye((Egr,p8e)=>{"use strict";var JX=Dr(),RRt=gv();function DRt(e,t){t._len=Math.min(t.u.length,t.v.length,t.w.length,t.x.length,t.y.length,t.z.length),t._u=jm(t.u,t._len),t._v=jm(t.v,t._len),t._w=jm(t.w,t._len),t._x=jm(t.x,t._len),t._y=jm(t.y,t._len),t._z=jm(t.z,t._len);var r=v8e(t);t._gridFill=r.fill,t._Xs=r.Xs,t._Ys=r.Ys,t._Zs=r.Zs,t._len=r.len;var n=0,i,a,o;t.starts&&(i=jm(t.starts.x||[]),a=jm(t.starts.y||[]),o=jm(t.starts.z||[]),n=Math.min(i.length,a.length,o.length)),t._startsX=i||[],t._startsY=a||[],t._startsZ=o||[];var s=0,l=1/0,u;for(u=0;u1&&(E=t[i-1],L=r[i-1],C=n[i-1]),a=0;aE?"-":"+")+"x"),v=v.replace("y",(S>L?"-":"+")+"y"),v=v.replace("z",(x>C?"-":"+")+"z");var T=function(){i=0,M=[],g=[],P=[]};(!i||i{"use strict";var FRt=gv(),zRt=lF().processGrid,uF=lF().filter;g8e.exports=function(t,r){r._len=Math.min(r.x.length,r.y.length,r.z.length,r.value.length),r._x=uF(r.x,r._len),r._y=uF(r.y,r._len),r._z=uF(r.z,r._len),r._value=uF(r.value,r._len);var n=zRt(r);r._gridFill=n.fill,r._Xs=n.Xs,r._Ys=n.Ys,r._Zs=n.Zs,r._len=n.len;for(var i=1/0,a=-1/0,o=0;o{"use strict";m8e.exports=function(t,r,n,i){i=i||t.length;for(var a=new Array(i),o=0;o{"use strict";var ORt=Od().gl_mesh3d,qRt=$y().parseColorScale,BRt=Dr().isArrayOrTypedArray,NRt=Jy(),URt=tc().extractOpts,y8e=ZA(),ek=function(e,t){for(var r=t.length-1;r>0;r--){var n=Math.min(t[r],t[r-1]),i=Math.max(t[r],t[r-1]);if(i>n&&n-1}function oe(Qt,Vt){return Qt===null?Vt:Qt}function _e(Qt,Vt,_t){T();var It=[Vt],mt=[_t];if(j>=1)It=[Vt],mt=[_t];else if(j>0){var er=H(Vt,_t);It=er.xyzv,mt=er.abc}for(var lr=0;lr-1?_t[Lr]:P(ti,Br,Vr);Ge>-1?Tr[Lr]=Ge:Tr[Lr]=O(ti,Br,Vr,oe(Qt,dt))}V(Tr[0],Tr[1],Tr[2])}}function Ee(Qt,Vt,_t){var It=function(mt,er,lr){_e(Qt,[Vt[mt],Vt[er],Vt[lr]],[_t[mt],_t[er],_t[lr]])};It(0,1,2),It(2,3,0)}function Ce(Qt,Vt,_t){var It=function(mt,er,lr){_e(Qt,[Vt[mt],Vt[er],Vt[lr]],[_t[mt],_t[er],_t[lr]])};It(0,1,2),It(3,0,1),It(2,3,0),It(1,2,3)}function me(Qt,Vt,_t,It){var mt=Qt[3];mt<_t&&(mt=_t),mt>It&&(mt=It);for(var er=(Qt[3]-mt)/(Qt[3]-Vt[3]+1e-9),lr=[],Tr=0;Tr<4;Tr++)lr[Tr]=(1-er)*Qt[Tr]+er*Vt[Tr];return lr}function ie(Qt,Vt,_t){return Qt>=Vt&&Qt<=_t}function Se(Qt){var Vt=.001*(L-S);return Qt>=S-Vt&&Qt<=L+Vt}function Le(Qt){for(var Vt=[],_t=0;_t<4;_t++){var It=Qt[_t];Vt.push([e._x[It],e._y[It],e._z[It],e._value[It]])}return Vt}var Ae=3;function Fe(Qt,Vt,_t,It,mt,er){er||(er=1),_t=[-1,-1,-1];var lr=!1,Tr=[ie(Vt[0][3],It,mt),ie(Vt[1][3],It,mt),ie(Vt[2][3],It,mt)];if(!Tr[0]&&!Tr[1]&&!Tr[2])return!1;var Lr=function(Br,Vr,dt){return Se(Vr[0][3])&&Se(Vr[1][3])&&Se(Vr[2][3])?(_e(Br,Vr,dt),!0):erTr?[k,er]:[er,E];Nt(Vt,Lr[0],Lr[1])}}var ti=[[Math.min(S,E),Math.max(S,E)],[Math.min(k,L),Math.max(k,L)]];["x","y","z"].forEach(function(Br){for(var Vr=[],dt=0;dt0&&(Ie.push(vt.id),Br==="x"?xe.push([vt.distRatio,0,0]):Br==="y"?xe.push([0,vt.distRatio,0]):xe.push([0,0,vt.distRatio]))}else Br==="x"?xt=cr(1,d-1):Br==="y"?xt=cr(1,v-1):xt=cr(1,_-1);Ie.length>0&&(Br==="x"?Vr[Ge]=Jt(Qt,Ie,Je,je,xe,Vr[Ge]):Br==="y"?Vr[Ge]=sr(Qt,Ie,Je,je,xe,Vr[Ge]):Vr[Ge]=wr(Qt,Ie,Je,je,xe,Vr[Ge]),Ge++),xt.length>0&&(Br==="x"?Vr[Ge]=pt(Qt,xt,Je,je,Vr[Ge]):Br==="y"?Vr[Ge]=Zt(Qt,xt,Je,je,Vr[Ge]):Vr[Ge]=st(Qt,xt,Je,je,Vr[Ge]),Ge++)}var ir=e.caps[Br];ir.show&&ir.fill&&(N(ir.fill),Br==="x"?Vr[Ge]=pt(Qt,[0,d-1],Je,je,Vr[Ge]):Br==="y"?Vr[Ge]=Zt(Qt,[0,v-1],Je,je,Vr[Ge]):Vr[Ge]=st(Qt,[0,_-1],Je,je,Vr[Ge]),Ge++)}}),s===0&&z(),e._meshX=x,e._meshY=C,e._meshZ=M,e._meshIntensity=g,e._Xs=c,e._Ys=f,e._Zs=h}return St(),e}function GRt(e,t){var r=e.glplot.gl,n=ORt({gl:r}),i=new _8e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}b8e.exports={findNearestOnAxis:ek,generateIsoMeshes:x8e,createIsosurfaceTrace:GRt}});var T8e=ye((Pgr,w8e)=>{"use strict";w8e.exports={attributes:sF(),supplyDefaults:YX().supplyDefaults,calc:$X(),colorbar:{min:"cmin",max:"cmax"},plot:cF().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var S8e=ye((Igr,A8e)=>{"use strict";A8e.exports=T8e()});var tZ=ye((Rgr,E8e)=>{"use strict";var HRt=Tu(),yh=sF(),jRt=JE(),M8e=Gl(),eZ=Ao().extendFlat,WRt=mc().overrideAll,fF=E8e.exports=WRt(eZ({x:yh.x,y:yh.y,z:yh.z,value:yh.value,isomin:yh.isomin,isomax:yh.isomax,surface:yh.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:yh.slices,caps:yh.caps,text:yh.text,hovertext:yh.hovertext,xhoverformat:yh.xhoverformat,yhoverformat:yh.yhoverformat,zhoverformat:yh.zhoverformat,valuehoverformat:yh.valuehoverformat,hovertemplate:yh.hovertemplate,hovertemplatefallback:yh.hovertemplatefallback},HRt("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:yh.colorbar,opacity:yh.opacity,opacityscale:jRt.opacityscale,lightposition:yh.lightposition,lighting:yh.lighting,flatshading:yh.flatshading,contour:yh.contour,hoverinfo:eZ({},M8e.hoverinfo),showlegend:eZ({},M8e.showlegend,{dflt:!1})}),"calc","nested");fF.x.editType=fF.y.editType=fF.z.editType=fF.value.editType="calc+clearAxisTypes"});var C8e=ye((Dgr,k8e)=>{"use strict";var XRt=Dr(),ZRt=tZ(),YRt=YX().supplyIsoDefaults,KRt=GX().opacityscaleDefaults;k8e.exports=function(t,r,n,i){function a(o,s){return XRt.coerce(t,r,ZRt,o,s)}YRt(t,r,n,i,a),KRt(t,r,i,a)}});var R8e=ye((Fgr,I8e)=>{"use strict";var JRt=Od().gl_mesh3d,$Rt=$y().parseColorScale,QRt=Dr().isArrayOrTypedArray,eDt=Jy(),tDt=tc().extractOpts,L8e=ZA(),rZ=cF().findNearestOnAxis,rDt=cF().generateIsoMeshes;function P8e(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.data=null,this.showContour=!1}var iZ=P8e.prototype;iZ.handlePick=function(e){if(e.object===this.mesh){var t=e.data.index,r=this.data._meshX[t],n=this.data._meshY[t],i=this.data._meshZ[t],a=this.data._Ys.length,o=this.data._Zs.length,s=rZ(r,this.data._Xs).id,l=rZ(n,this.data._Ys).id,u=rZ(i,this.data._Zs).id,c=e.index=u+o*l+o*a*s;e.traceCoordinate=[this.data._meshX[c],this.data._meshY[c],this.data._meshZ[c],this.data._value[c]];var f=this.data.hovertext||this.data.text;return QRt(f)&&f[c]!==void 0?e.textLabel=f[c]:f&&(e.textLabel=f),!0}};iZ.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=rDt(e);function n(l,u,c,f){return u.map(function(h){return l.d2l(h,0,f)*c})}var i=L8e(n(r.xaxis,e._meshX,t.dataScale[0],e.xcalendar),n(r.yaxis,e._meshY,t.dataScale[1],e.ycalendar),n(r.zaxis,e._meshZ,t.dataScale[2],e.zcalendar)),a=L8e(e._meshI,e._meshJ,e._meshK),o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,opacityscale:e.opacityscale,contourEnable:e.contour.show,contourColor:eDt(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading},s=tDt(e);o.vertexIntensity=e._meshIntensity,o.vertexIntensityBounds=[s.min,s.max],o.colormap=$Rt(e),this.mesh.update(o)};iZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function iDt(e,t){var r=e.glplot.gl,n=JRt({gl:r}),i=new P8e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}I8e.exports=iDt});var F8e=ye((zgr,D8e)=>{"use strict";D8e.exports={attributes:tZ(),supplyDefaults:C8e(),calc:$X(),colorbar:{min:"cmin",max:"cmax"},plot:R8e(),moduleType:"trace",name:"volume",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var O8e=ye((Ogr,z8e)=>{"use strict";z8e.exports=F8e()});var N8e=ye((qgr,B8e)=>{"use strict";var nDt=qa(),q8e=Dr(),aDt=Qh(),oDt=WA();B8e.exports=function(t,r,n,i){function a(c,f){return q8e.coerce(t,r,oDt,c,f)}function o(c){var f=c.map(function(h){var d=a(h);return d&&q8e.isArrayOrTypedArray(d)?d:null});return f.every(function(h){return h&&h.length===f[0].length})&&f}var s=o(["x","y","z"]);if(!s){r.visible=!1;return}if(o(["i","j","k"]),r.i&&(!r.j||!r.k)||r.j&&(!r.k||!r.i)||r.k&&(!r.i||!r.j)){r.visible=!1;return}var l=nDt.getComponentMethod("calendars","handleTraceDefaults");l(t,r,["x","y","z"],i),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach(function(c){a(c)});var u=a("contour.show");u&&(a("contour.color"),a("contour.width")),"intensity"in t?(a("intensity"),a("intensitymode"),aDt(t,r,i,a,{prefix:"",cLetter:"c"})):(r.showscale=!1,"facecolor"in t?a("facecolor"):"vertexcolor"in t?a("vertexcolor"):a("color",n)),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var V8e=ye((Bgr,U8e)=>{"use strict";var sDt=gv();U8e.exports=function(t,r){r.intensity&&sDt(t,r,{vals:r.intensity,containerStr:"",cLetter:"c"})}});var X8e=ye((Ngr,W8e)=>{"use strict";var lDt=Od().gl_mesh3d,uDt=Od().delaunay_triangulate,cDt=Od().alpha_shape,fDt=Od().convex_hull,hDt=$y().parseColorScale,dDt=Dr().isArrayOrTypedArray,sZ=Jy(),vDt=tc().extractOpts,G8e=ZA();function j8e(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var lZ=j8e.prototype;lZ.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index;e.data._cellCenter?e.traceCoordinate=e.data.dataCoordinate:e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]];var r=this.data.hovertext||this.data.text;return dDt(r)&&r[t]!==void 0?e.textLabel=r[t]:r&&(e.textLabel=r),!0}};function H8e(e){for(var t=[],r=e.length,n=0;n=t-.5)return!1;return!0}lZ.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=e;var n=e.x.length,i=G8e(nZ(r.xaxis,e.x,t.dataScale[0],e.xcalendar),nZ(r.yaxis,e.y,t.dataScale[1],e.ycalendar),nZ(r.zaxis,e.z,t.dataScale[2],e.zcalendar)),a;if(e.i&&e.j&&e.k){if(e.i.length!==e.j.length||e.j.length!==e.k.length||!oZ(e.i,n)||!oZ(e.j,n)||!oZ(e.k,n))return;a=G8e(aZ(e.i),aZ(e.j),aZ(e.k))}else e.alphahull===0?a=fDt(i):e.alphahull>0?a=cDt(e.alphahull,i):a=pDt(e.delaunayaxis,i);var o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,contourEnable:e.contour.show,contourColor:sZ(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading};if(e.intensity){var s=vDt(e);this.color="#fff";var l=e.intensitymode;o[l+"Intensity"]=e.intensity,o[l+"IntensityBounds"]=[s.min,s.max],o.colormap=hDt(e)}else e.vertexcolor?(this.color=e.vertexcolor[0],o.vertexColors=H8e(e.vertexcolor)):e.facecolor?(this.color=e.facecolor[0],o.cellColors=H8e(e.facecolor)):(this.color=e.color,o.meshColor=sZ(e.color));this.mesh.update(o)};lZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function gDt(e,t){var r=e.glplot.gl,n=lDt({gl:r}),i=new j8e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}W8e.exports=gDt});var Y8e=ye((Ugr,Z8e)=>{"use strict";Z8e.exports={attributes:WA(),supplyDefaults:N8e(),calc:V8e(),colorbar:{min:"cmin",max:"cmax"},plot:X8e(),moduleType:"trace",name:"mesh3d",basePlotModule:$_(),categories:["gl3d","showLegend"],meta:{}}});var J8e=ye((Vgr,K8e)=>{"use strict";K8e.exports=Y8e()});var cZ=ye((Ggr,Q8e)=>{"use strict";var mDt=Tu(),YA=df().axisHoverFormat,{hovertemplateAttrs:yDt,templatefallbackAttrs:_Dt}=Ll(),xDt=WA(),$8e=Gl(),uZ=Ao().extendFlat,hF={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},sizemode:{valType:"enumerated",values:["scaled","absolute","raw"],editType:"calc",dflt:"scaled"},sizeref:{valType:"number",editType:"calc",min:0},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:yDt({editType:"calc"},{keys:["norm"]}),hovertemplatefallback:_Dt({editType:"calc"}),uhoverformat:YA("u",1),vhoverformat:YA("v",1),whoverformat:YA("w",1),xhoverformat:YA("x"),yhoverformat:YA("y"),zhoverformat:YA("z"),showlegend:uZ({},$8e.showlegend,{dflt:!1})};uZ(hF,mDt("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var bDt=["opacity","lightposition","lighting"];bDt.forEach(function(e){hF[e]=xDt[e]});hF.hoverinfo=uZ({},$8e.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"});Q8e.exports=hF});var tRe=ye((Hgr,eRe)=>{"use strict";var wDt=Dr(),TDt=Qh(),ADt=cZ();eRe.exports=function(t,r,n,i){function a(d,v){return wDt.coerce(t,r,ADt,d,v)}var o=a("u"),s=a("v"),l=a("w"),u=a("x"),c=a("y"),f=a("z");if(!o||!o.length||!s||!s.length||!l||!l.length||!u||!u.length||!c||!c.length||!f||!f.length){r.visible=!1;return}var h=a("sizemode");a("sizeref",h==="raw"?1:.5),a("anchor"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),TDt(t,r,i,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var iRe=ye((jgr,rRe)=>{"use strict";var SDt=gv();rRe.exports=function(t,r){for(var n=r.u,i=r.v,a=r.w,o=Math.min(r.x.length,r.y.length,r.z.length,n.length,i.length,a.length),s=-1/0,l=1/0,u=0;u{"use strict";var MDt=Od().gl_cone3d,EDt=Od().gl_cone3d.createConeMesh,kDt=Dr().simpleMap,CDt=$y().parseColorScale,LDt=tc().extractOpts,PDt=Dr().isArrayOrTypedArray,nRe=ZA();function aRe(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var fZ=aRe.prototype;fZ.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index,r=this.data.x[t],n=this.data.y[t],i=this.data.z[t],a=this.data.u[t],o=this.data.v[t],s=this.data.w[t];e.traceCoordinate=[r,n,i,a,o,s,Math.sqrt(a*a+o*o+s*s)];var l=this.data.hovertext||this.data.text;return PDt(l)&&l[t]!==void 0?e.textLabel=l[t]:l&&(e.textLabel=l),!0}};var IDt={xaxis:0,yaxis:1,zaxis:2},RDt={tip:1,tail:0,cm:.25,center:.5},DDt={tip:1,tail:1,cm:.75,center:.5};function oRe(e,t){var r=e.fullSceneLayout,n=e.dataScale,i={};function a(c,f){var h=r[f],d=n[IDt[f]];return kDt(c,function(v){return h.d2l(v)*d})}i.vectors=nRe(a(t.u,"xaxis"),a(t.v,"yaxis"),a(t.w,"zaxis"),t._len),i.positions=nRe(a(t.x,"xaxis"),a(t.y,"yaxis"),a(t.z,"zaxis"),t._len);var o=LDt(t);i.colormap=CDt(t),i.vertexIntensityBounds=[o.min/t._normMax,o.max/t._normMax],i.coneOffset=RDt[t.anchor];var s=t.sizemode;s==="scaled"?i.coneSize=t.sizeref||.5:s==="absolute"?i.coneSize=t.sizeref&&t._normMax?t.sizeref/t._normMax:.5:s==="raw"&&(i.coneSize=t.sizeref),i.coneSizemode=s;var l=MDt(i),u=t.lightposition;return l.lightPosition=[u.x,u.y,u.z],l.ambient=t.lighting.ambient,l.diffuse=t.lighting.diffuse,l.specular=t.lighting.specular,l.roughness=t.lighting.roughness,l.fresnel=t.lighting.fresnel,l.opacity=t.opacity,t._pad=DDt[t.anchor]*l.vectorScale*l.coneScale*t._normMax,l}fZ.update=function(e){this.data=e;var t=oRe(this.scene,e);this.mesh.update(t)};fZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function FDt(e,t){var r=e.glplot.gl,n=oRe(e,t),i=EDt(r,n),a=new aRe(e,t.uid);return a.mesh=i,a.data=t,i._trace=a,e.glplot.add(i),a}sRe.exports=FDt});var cRe=ye((Xgr,uRe)=>{"use strict";uRe.exports={moduleType:"trace",name:"cone",basePlotModule:$_(),categories:["gl3d","showLegend"],attributes:cZ(),supplyDefaults:tRe(),colorbar:{min:"cmin",max:"cmax"},calc:iRe(),plot:lRe(),eventData:function(e,t){return e.norm=t.traceCoordinate[6],e},meta:{}}});var hRe=ye((Zgr,fRe)=>{"use strict";fRe.exports=cRe()});var dZ=ye((Ygr,vRe)=>{"use strict";var zDt=Tu(),KA=df().axisHoverFormat,{hovertemplateAttrs:ODt,templatefallbackAttrs:qDt}=Ll(),BDt=WA(),dRe=Gl(),hZ=Ao().extendFlat,dF={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},starts:{x:{valType:"data_array",editType:"calc"},y:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},editType:"calc"},maxdisplayed:{valType:"integer",min:0,dflt:1e3,editType:"calc"},sizeref:{valType:"number",editType:"calc",min:0,dflt:1},text:{valType:"string",dflt:"",editType:"calc"},hovertext:{valType:"string",dflt:"",editType:"calc"},hovertemplate:ODt({editType:"calc"},{keys:["tubex","tubey","tubez","tubeu","tubev","tubew","norm","divergence"]}),hovertemplatefallback:qDt({editType:"calc"}),uhoverformat:KA("u",1),vhoverformat:KA("v",1),whoverformat:KA("w",1),xhoverformat:KA("x"),yhoverformat:KA("y"),zhoverformat:KA("z"),showlegend:hZ({},dRe.showlegend,{dflt:!1})};hZ(dF,zDt("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var NDt=["opacity","lightposition","lighting"];NDt.forEach(function(e){dF[e]=BDt[e]});dF.hoverinfo=hZ({},dRe.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","divergence","text","name"],dflt:"x+y+z+norm+text+name"});vRe.exports=dF});var gRe=ye((Kgr,pRe)=>{"use strict";var UDt=Dr(),VDt=Qh(),GDt=dZ();pRe.exports=function(t,r,n,i){function a(h,d){return UDt.coerce(t,r,GDt,h,d)}var o=a("u"),s=a("v"),l=a("w"),u=a("x"),c=a("y"),f=a("z");if(!o||!o.length||!s||!s.length||!l||!l.length||!u||!u.length||!c||!c.length||!f||!f.length){r.visible=!1;return}a("starts.x"),a("starts.y"),a("starts.z"),a("maxdisplayed"),a("sizeref"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),VDt(t,r,i,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var ARe=ye((Jgr,TRe)=>{"use strict";var _Re=Od().gl_streamtube3d,HDt=_Re.createTubeMesh,jDt=Dr(),WDt=$y().parseColorScale,XDt=tc().extractOpts,mRe=ZA(),xRe={xaxis:0,yaxis:1,zaxis:2};function bRe(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var pZ=bRe.prototype;pZ.handlePick=function(e){var t=this.scene.fullSceneLayout,r=this.scene.dataScale;function n(o,s){var l=t[s],u=r[xRe[s]];return l.l2c(o)/u}if(e.object===this.mesh){var i=e.data.position,a=e.data.velocity;return e.traceCoordinate=[n(i[0],"xaxis"),n(i[1],"yaxis"),n(i[2],"zaxis"),n(a[0],"xaxis"),n(a[1],"yaxis"),n(a[2],"zaxis"),e.data.intensity*this.data._normMax,e.data.divergence],e.textLabel=this.data.hovertext||this.data.text,!0}};function yRe(e){var t=e.length,r;return t>2?r=e.slice(1,t-1):t===2?r=[(e[0]+e[1])/2]:r=e,r}function vZ(e){var t=e.length;return t===1?[.5,.5]:[e[1]-e[0],e[t-1]-e[t-2]]}function wRe(e,t){var r=e.fullSceneLayout,n=e.dataScale,i=t._len,a={};function o(z,O){var V=r[O],G=n[xRe[O]];return jDt.simpleMap(z,function(Z){return V.d2l(Z)*G})}if(a.vectors=mRe(o(t._u,"xaxis"),o(t._v,"yaxis"),o(t._w,"zaxis"),i),!i)return{positions:[],cells:[]};var s=o(t._Xs,"xaxis"),l=o(t._Ys,"yaxis"),u=o(t._Zs,"zaxis");a.meshgrid=[s,l,u],a.gridFill=t._gridFill;var c=t._slen;if(c)a.startingPositions=mRe(o(t._startsX,"xaxis"),o(t._startsY,"yaxis"),o(t._startsZ,"zaxis"));else{for(var f=l[0],h=yRe(s),d=yRe(u),v=new Array(h.length*d.length),_=0,b=0;b{"use strict";SRe.exports={moduleType:"trace",name:"streamtube",basePlotModule:$_(),categories:["gl3d","showLegend"],attributes:dZ(),supplyDefaults:gRe(),colorbar:{min:"cmin",max:"cmax"},calc:lF().calc,plot:ARe(),eventData:function(e,t){return e.tubex=e.x,e.tubey=e.y,e.tubez=e.z,e.tubeu=t.traceCoordinate[3],e.tubev=t.traceCoordinate[4],e.tubew=t.traceCoordinate[5],e.norm=t.traceCoordinate[6],e.divergence=t.traceCoordinate[7],delete e.x,delete e.y,delete e.z,e},meta:{}}});var kRe=ye((Qgr,ERe)=>{"use strict";ERe.exports=MRe()});var j2=ye((tmr,IRe)=>{"use strict";var{hovertemplateAttrs:YDt,texttemplateAttrs:KDt,templatefallbackAttrs:CRe}=Ll(),JDt=Cg(),Wm=pf(),$Dt=Gl(),LRe=Tu(),QDt=Pd().dash,H2=Ao().extendFlat,eFt=mc().overrideAll,eg=Wm.marker,PRe=Wm.line,tFt=eg.line,emr=["The library used by the *country names* `locationmode` option is changing in an upcoming version.","Country names in existing plots may not work in the new version."].join(" ");IRe.exports=eFt({lon:{valType:"data_array"},lat:{valType:"data_array"},locations:{valType:"data_array"},locationmode:{valType:"enumerated",values:["ISO-3","USA-states","country names","geojson-id"],dflt:"ISO-3"},geojson:{valType:"any",editType:"calc"},featureidkey:{valType:"string",editType:"calc",dflt:"id"},mode:H2({},Wm.mode,{dflt:"markers"}),text:H2({},Wm.text,{}),texttemplate:KDt({editType:"plot"},{keys:["lat","lon","location","text"]}),texttemplatefallback:CRe({editType:"plot"}),hovertext:H2({},Wm.hovertext,{}),textfont:Wm.textfont,textposition:Wm.textposition,line:{color:PRe.color,width:PRe.width,dash:QDt},connectgaps:Wm.connectgaps,marker:H2({symbol:eg.symbol,opacity:eg.opacity,angle:eg.angle,angleref:H2({},eg.angleref,{values:["previous","up","north"]}),standoff:eg.standoff,size:eg.size,sizeref:eg.sizeref,sizemin:eg.sizemin,sizemode:eg.sizemode,colorbar:eg.colorbar,line:H2({width:tFt.width},LRe("marker.line")),gradient:eg.gradient},LRe("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:JDt(),selected:Wm.selected,unselected:Wm.unselected,hoverinfo:H2({},$Dt.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:YDt(),hovertemplatefallback:CRe()},"calc","nested")});var DRe=ye((rmr,RRe)=>{"use strict";var vF=Dr(),gZ=Ru(),rFt=$p(),iFt=R0(),nFt=D0(),aFt=Rg(),oFt=j2(),sFt=["The library used by the *country names* `locationmode` option is changing in the next major version.","Some country names in existing plots may not work in the new version.","To ensure consistent behavior, consider setting `locationmode` to *ISO-3*."].join(" ");RRe.exports=function(t,r,n,i){function a(d,v){return vF.coerce(t,r,oFt,d,v)}var o=a("locations"),s;if(o&&o.length){var l=a("geojson"),u;(typeof l=="string"&&l!==""||vF.isPlainObject(l))&&(u="geojson-id");var c=a("locationmode",u);c==="country names"&&vF.warn(sFt),c==="geojson-id"&&a("featureidkey"),s=o.length}else{var f=a("lon")||[],h=a("lat")||[];s=Math.min(f.length,h.length)}if(!s){r.visible=!1;return}r._length=s,a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),gZ.hasMarkers(r)&&rFt(t,r,n,i,a,{gradient:!0}),gZ.hasLines(r)&&(iFt(t,r,n,i,a),a("connectgaps")),gZ.hasText(r)&&(a("texttemplate"),a("texttemplatefallback"),nFt(t,r,i,a)),a("fill"),r.fill!=="none"&&aFt(t,r,n,a),vF.coerceSelectionMarkerOpacity(r,a)}});var ORe=ye((imr,zRe)=>{"use strict";var FRe=ho();zRe.exports=function(t,r,n){var i={},a=n[r.geo]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=FRe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=FRe.tickText(o,o.c2l(s[1]),!0).text,i}});var pF=ye((nmr,URe)=>{"use strict";var mZ=Eo(),qRe=fs().BADNUM,lFt=F0(),uFt=km(),cFt=z0(),fFt=Dr().isArrayOrTypedArray,BRe=Dr()._;function NRe(e){return e&&typeof e=="string"}URe.exports=function(t,r){var n=fFt(r.locations),i=n?r.locations.length:r._length,a=new Array(i),o;r.geojson?o=function(h){return NRe(h)||mZ(h)}:o=NRe;for(var s=0;s{"use strict";Mv.projNames={airy:"airy",aitoff:"aitoff","albers usa":"albersUsa",albers:"albers",august:"august","azimuthal equal area":"azimuthalEqualArea","azimuthal equidistant":"azimuthalEquidistant",baker:"baker",bertin1953:"bertin1953",boggs:"boggs",bonne:"bonne",bottomley:"bottomley",bromley:"bromley",collignon:"collignon","conic conformal":"conicConformal","conic equal area":"conicEqualArea","conic equidistant":"conicEquidistant",craig:"craig",craster:"craster","cylindrical equal area":"cylindricalEqualArea","cylindrical stereographic":"cylindricalStereographic",eckert1:"eckert1",eckert2:"eckert2",eckert3:"eckert3",eckert4:"eckert4",eckert5:"eckert5",eckert6:"eckert6",eisenlohr:"eisenlohr","equal earth":"equalEarth",equirectangular:"equirectangular",fahey:"fahey","foucaut sinusoidal":"foucautSinusoidal",foucaut:"foucaut",ginzburg4:"ginzburg4",ginzburg5:"ginzburg5",ginzburg6:"ginzburg6",ginzburg8:"ginzburg8",ginzburg9:"ginzburg9",gnomonic:"gnomonic","gringorten quincuncial":"gringortenQuincuncial",gringorten:"gringorten",guyou:"guyou",hammer:"hammer",hill:"hill",homolosine:"homolosine",hufnagel:"hufnagel",hyperelliptical:"hyperelliptical",kavrayskiy7:"kavrayskiy7",lagrange:"lagrange",larrivee:"larrivee",laskowski:"laskowski",loximuthal:"loximuthal",mercator:"mercator",miller:"miller",mollweide:"mollweide","mt flat polar parabolic":"mtFlatPolarParabolic","mt flat polar quartic":"mtFlatPolarQuartic","mt flat polar sinusoidal":"mtFlatPolarSinusoidal","natural earth":"naturalEarth","natural earth1":"naturalEarth1","natural earth2":"naturalEarth2","nell hammer":"nellHammer",nicolosi:"nicolosi",orthographic:"orthographic",patterson:"patterson","peirce quincuncial":"peirceQuincuncial",polyconic:"polyconic","rectangular polyconic":"rectangularPolyconic",robinson:"robinson",satellite:"satellite","sinu mollweide":"sinuMollweide",sinusoidal:"sinusoidal",stereographic:"stereographic",times:"times","transverse mercator":"transverseMercator","van der grinten":"vanDerGrinten","van der grinten2":"vanDerGrinten2","van der grinten3":"vanDerGrinten3","van der grinten4":"vanDerGrinten4",wagner4:"wagner4",wagner6:"wagner6",wiechel:"wiechel","winkel tripel":"winkel3",winkel3:"winkel3"};Mv.axesNames=["lonaxis","lataxis"];Mv.lonaxisSpan={orthographic:180,"azimuthal equal area":360,"azimuthal equidistant":360,"conic conformal":180,gnomonic:160,stereographic:180,"transverse mercator":180,"*":360};Mv.lataxisSpan={"conic conformal":150,stereographic:179.5,"*":180};Mv.scopeDefaults={world:{lonaxisRange:[-180,180],lataxisRange:[-90,90],projType:"equirectangular",projRotate:[0,0,0]},usa:{lonaxisRange:[-180,-50],lataxisRange:[15,80],projType:"albers usa"},europe:{lonaxisRange:[-30,60],lataxisRange:[30,85],projType:"conic conformal",projRotate:[15,0,0],projParallels:[0,60]},asia:{lonaxisRange:[22,160],lataxisRange:[-15,55],projType:"mercator",projRotate:[0,0,0]},africa:{lonaxisRange:[-30,60],lataxisRange:[-40,40],projType:"mercator",projRotate:[0,0,0]},"north america":{lonaxisRange:[-180,-45],lataxisRange:[5,85],projType:"conic conformal",projRotate:[-100,0,0],projParallels:[29.5,45.5]},"south america":{lonaxisRange:[-100,-30],lataxisRange:[-60,15],projType:"mercator",projRotate:[0,0,0]},antarctica:{lonaxisRange:[-180,180],lataxisRange:[-90,-60],projType:"equirectangular",projRotate:[0,0,0]},oceania:{lonaxisRange:[-180,180],lataxisRange:[-50,25],projType:"equirectangular",projRotate:[0,0,0]}};Mv.clipPad=.001;Mv.precision=.1;Mv.landColor="#F0DC82";Mv.waterColor="#3399FF";Mv.locationmodeToLayer={"ISO-3":"countries","USA-states":"subunits","country names":"countries"};Mv.sphereSVG={type:"Sphere"};Mv.fillLayers={ocean:1,land:1,lakes:1};Mv.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1};Mv.layers=["bg","ocean","land","lakes","subunits","countries","coastlines","rivers","lataxis","lonaxis","frame","backplot","frontplot"];Mv.layersForChoropleth=["bg","ocean","land","subunits","countries","coastlines","lataxis","lonaxis","frame","backplot","rivers","lakes","frontplot"];Mv.layerNameToAdjective={ocean:"ocean",land:"land",lakes:"lake",subunits:"subunit",countries:"country",coastlines:"coastline",rivers:"river",frame:"frame"}});var yZ=ye((gF,VRe)=>{(function(e,t){typeof gF=="object"&&typeof VRe!="undefined"?t(gF):(e=e||self,t(e.topojson=e.topojson||{}))})(gF,function(e){"use strict";function t(E){return E}function r(E){if(E==null)return t;var S,L,x=E.scale[0],C=E.scale[1],M=E.translate[0],g=E.translate[1];return function(P,T){T||(S=L=0);var z=2,O=P.length,V=new Array(O);for(V[0]=(S+=P[0])*x+M,V[1]=(L+=P[1])*C+g;zM&&(M=z[0]),z[1]g&&(g=z[1])}function T(z){switch(z.type){case"GeometryCollection":z.geometries.forEach(T);break;case"Point":P(z.coordinates);break;case"MultiPoint":z.coordinates.forEach(P);break}}E.arcs.forEach(function(z){for(var O=-1,V=z.length,G;++OM&&(M=G[0]),G[1]g&&(g=G[1])});for(L in E.objects)T(E.objects[L]);return[x,C,M,g]}function i(E,S){for(var L,x=E.length,C=x-S;C<--x;)L=E[C],E[C++]=E[x],E[x]=L}function a(E,S){return typeof S=="string"&&(S=E.objects[S]),S.type==="GeometryCollection"?{type:"FeatureCollection",features:S.geometries.map(function(L){return o(E,L)})}:o(E,S)}function o(E,S){var L=S.id,x=S.bbox,C=S.properties==null?{}:S.properties,M=s(E,S);return L==null&&x==null?{type:"Feature",properties:C,geometry:M}:x==null?{type:"Feature",id:L,properties:C,geometry:M}:{type:"Feature",id:L,bbox:x,properties:C,geometry:M}}function s(E,S){var L=r(E.transform),x=E.arcs;function C(O,V){V.length&&V.pop();for(var G=x[O<0?~O:O],Z=0,j=G.length;Z1)x=f(E,S,L);else for(C=0,x=new Array(M=E.arcs.length);C1)for(var V=1,G=P(z[0]),Z,j;VG&&(j=z[0],z[0]=z[V],z[V]=j,G=Z);return z}).filter(function(T){return T.length>0})}}function _(E,S){for(var L=0,x=E.length;L>>1;E[C]=2))throw new Error("n must be \u22652");T=E.bbox||n(E);var L=T[0],x=T[1],C=T[2],M=T[3],g;S={scale:[C-L?(C-L)/(g-1):1,M-x?(M-x)/(g-1):1],translate:[L,x]}}else T=E.bbox;var P=p(S),T,z,O=E.objects,V={};function G(N){return P(N)}function Z(N){var H;switch(N.type){case"GeometryCollection":H={type:"GeometryCollection",geometries:N.geometries.map(Z)};break;case"Point":H={type:"Point",coordinates:G(N.coordinates)};break;case"MultiPoint":H={type:"MultiPoint",coordinates:N.coordinates.map(G)};break;default:return N}return N.id!=null&&(H.id=N.id),N.bbox!=null&&(H.bbox=N.bbox),N.properties!=null&&(H.properties=N.properties),H}function j(N){var H=0,te=1,oe=N.length,_e,Ee=new Array(oe);for(Ee[0]=P(N[0],0);++H{"use strict";var _Z=GRe.exports={},hFt=tk().locationmodeToLayer,dFt=yZ().feature;_Z.getTopojsonName=function(e){return[e.scope.replace(/ /g,"-"),"_",e.resolution.toString(),"m"].join("")};_Z.getTopojsonPath=function(e,t){return e+=e.endsWith("/")?"":"/",`${e}${t}.json`};_Z.getTopojsonFeatures=function(e,t){var r=hFt[e.locationmode],n=t.objects[r];return dFt(t,n).features}});var tx=ye(rk=>{"use strict";var vFt=fs().BADNUM;rk.calcTraceToLineCoords=function(e){for(var t=e[0].trace,r=t.connectgaps,n=[],i=[],a=0;a0&&(n.push(i),i=[])}return i.length>0&&n.push(i),n};rk.makeLine=function(e){return e.length===1?{type:"LineString",coordinates:e[0]}:{type:"MultiLineString",coordinates:e}};rk.makePolygon=function(e){if(e.length===1)return{type:"Polygon",coordinates:e};for(var t=new Array(e.length),r=0;r{HRe.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xE7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xE9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xE9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xE3)o.?tom(e|\xE9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}});var xF=ye(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});var Op=63710088e-1,bZ={centimeters:Op*100,centimetres:Op*100,degrees:360/(2*Math.PI),feet:Op*3.28084,inches:Op*39.37,kilometers:Op/1e3,kilometres:Op/1e3,meters:Op,metres:Op,miles:Op/1609.344,millimeters:Op*1e3,millimetres:Op*1e3,nauticalmiles:Op/1852,radians:1,yards:Op*1.0936},xZ={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,nauticalmiles:29155334959812285e-23,millimeters:1e6,millimetres:1e6,yards:1.195990046};function rx(e,t,r={}){let n={type:"Feature"};return(r.id===0||r.id)&&(n.id=r.id),r.bbox&&(n.bbox=r.bbox),n.properties=t||{},n.geometry=e,n}function pFt(e,t,r={}){switch(e){case"Point":return wZ(t).geometry;case"LineString":return AZ(t).geometry;case"Polygon":return TZ(t).geometry;case"MultiPoint":return XRe(t).geometry;case"MultiLineString":return WRe(t).geometry;case"MultiPolygon":return ZRe(t).geometry;default:throw new Error(e+" is invalid")}}function wZ(e,t,r={}){if(!e)throw new Error("coordinates is required");if(!Array.isArray(e))throw new Error("coordinates must be an Array");if(e.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!yF(e[0])||!yF(e[1]))throw new Error("coordinates must contain numbers");return rx({type:"Point",coordinates:e},t,r)}function gFt(e,t,r={}){return _F(e.map(n=>wZ(n,t)),r)}function TZ(e,t,r={}){for(let i of e){if(i.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(i[i.length-1].length!==i[0].length)throw new Error("First and last Position are not equivalent.");for(let a=0;aTZ(n,t)),r)}function AZ(e,t,r={}){if(e.length<2)throw new Error("coordinates must be an array of two or more positions");return rx({type:"LineString",coordinates:e},t,r)}function yFt(e,t,r={}){return _F(e.map(n=>AZ(n,t)),r)}function _F(e,t={}){let r={type:"FeatureCollection"};return t.id&&(r.id=t.id),t.bbox&&(r.bbox=t.bbox),r.features=e,r}function WRe(e,t,r={}){return rx({type:"MultiLineString",coordinates:e},t,r)}function XRe(e,t,r={}){return rx({type:"MultiPoint",coordinates:e},t,r)}function ZRe(e,t,r={}){return rx({type:"MultiPolygon",coordinates:e},t,r)}function _Ft(e,t,r={}){return rx({type:"GeometryCollection",geometries:e},t,r)}function xFt(e,t=0){if(t&&!(t>=0))throw new Error("precision must be a positive number");let r=Math.pow(10,t||0);return Math.round(e*r)/r}function YRe(e,t="kilometers"){let r=bZ[t];if(!r)throw new Error(t+" units is invalid");return e*r}function SZ(e,t="kilometers"){let r=bZ[t];if(!r)throw new Error(t+" units is invalid");return e/r}function bFt(e,t){return KRe(SZ(e,t))}function wFt(e){let t=e%360;return t<0&&(t+=360),t}function TFt(e){return e=e%360,e>180?e-360:e<-180?e+360:e}function KRe(e){return e%(2*Math.PI)*180/Math.PI}function AFt(e){return e%360*Math.PI/180}function SFt(e,t="kilometers",r="kilometers"){if(!(e>=0))throw new Error("length must be a positive number");return YRe(SZ(e,t),r)}function MFt(e,t="meters",r="kilometers"){if(!(e>=0))throw new Error("area must be a positive number");let n=xZ[t];if(!n)throw new Error("invalid original units");let i=xZ[r];if(!i)throw new Error("invalid final units");return e/n*i}function yF(e){return!isNaN(e)&&e!==null&&!Array.isArray(e)}function EFt(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function kFt(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(e.length!==4&&e.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach(t=>{if(!yF(t))throw new Error("bbox must only contain numbers")})}function CFt(e){if(!e)throw new Error("id is required");if(["string","number"].indexOf(typeof e)===-1)throw new Error("id must be a number or a string")}ic.areaFactors=xZ;ic.azimuthToBearing=TFt;ic.bearingToAzimuth=wFt;ic.convertArea=MFt;ic.convertLength=SFt;ic.degreesToRadians=AFt;ic.earthRadius=Op;ic.factors=bZ;ic.feature=rx;ic.featureCollection=_F;ic.geometry=pFt;ic.geometryCollection=_Ft;ic.isNumber=yF;ic.isObject=EFt;ic.lengthToDegrees=bFt;ic.lengthToRadians=SZ;ic.lineString=AZ;ic.lineStrings=yFt;ic.multiLineString=WRe;ic.multiPoint=XRe;ic.multiPolygon=ZRe;ic.point=wZ;ic.points=gFt;ic.polygon=TZ;ic.polygons=mFt;ic.radiansToDegrees=KRe;ic.radiansToLength=YRe;ic.round=xFt;ic.validateBBox=kFt;ic.validateId=CFt});var wF=ye(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var Wv=xF();function ik(e,t,r){if(e!==null)for(var n,i,a,o,s,l,u,c=0,f=0,h,d=e.type,v=d==="FeatureCollection",_=d==="Feature",b=v?e.features.length:1,p=0;pl||v>u||_>c){s=f,l=n,u=v,c=_,a=0;return}var b=Wv.lineString.call(void 0,[s,f],r.properties);if(t(b,n,i,_,a)===!1)return!1;a++,s=f})===!1)return!1}}})}function zFt(e,t,r){var n=r,i=!1;return QRe(e,function(a,o,s,l,u){i===!1&&r===void 0?n=a:n=t(n,a,o,s,l,u),i=!0}),n}function eDe(e,t){if(!e)throw new Error("geojson is required");bF(e,function(r,n,i){if(r.geometry!==null){var a=r.geometry.type,o=r.geometry.coordinates;switch(a){case"LineString":if(t(r,n,i,0,0)===!1)return!1;break;case"Polygon":for(var s=0;s{"use strict";Object.defineProperty(TF,"__esModule",{value:!0});var tDe=xF(),NFt=wF();function nDe(e){return NFt.geomReduce.call(void 0,e,(t,r)=>t+UFt(r),0)}function UFt(e){let t=0,r;switch(e.type){case"Polygon":return rDe(e.coordinates);case"MultiPolygon":for(r=0;r0){t+=Math.abs(iDe(e[0]));for(let r=1;r=t?(n+2)%t:n+2],s=i[0]*EZ,l=a[1]*EZ,u=o[0]*EZ;r+=(u-s)*Math.sin(l),n++}return r*VFt}var GFt=nDe;TF.area=nDe;TF.default=GFt});var sDe=ye(AF=>{"use strict";Object.defineProperty(AF,"__esModule",{value:!0});var HFt=xF(),jFt=wF();function oDe(e,t={}){let r=0,n=0,i=0;return jFt.coordEach.call(void 0,e,function(a){r+=a[0],n+=a[1],i++},!0),HFt.point.call(void 0,[r/i,n/i],t.properties)}var WFt=oDe;AF.centroid=oDe;AF.default=WFt});var uDe=ye(SF=>{"use strict";Object.defineProperty(SF,"__esModule",{value:!0});var XFt=wF();function lDe(e,t={}){if(e.bbox!=null&&t.recompute!==!0)return e.bbox;let r=[1/0,1/0,-1/0,-1/0];return XFt.coordEach.call(void 0,e,n=>{r[0]>n[0]&&(r[0]=n[0]),r[1]>n[1]&&(r[1]=n[1]),r[2]{"use strict";var YFt=Oa(),hDe=jRe(),{area:KFt}=aDe(),{centroid:JFt}=sDe(),{bbox:$Ft}=uDe(),cDe=HS(),JA=G1(),QFt=my(),ezt=PS(),MF=kM(),fDe=Object.keys(hDe),tzt={"ISO-3":cDe,"USA-states":cDe,"country names":rzt};function rzt(e){for(var t=0;t0&&c[f+1][0]<0)return f;return null}switch(n==="RUS"||n==="FJI"?a=function(c){var f;if(u(c)===null)f=c;else for(f=new Array(c.length),l=0;lf?h[d++]=[c[l][0]+360,c[l][1]]:l===f?(h[d++]=c[l],h[d++]=[c[l][0],-90]):h[d++]=c[l];var v=MF.tester(h);v.pts.pop(),i.push(v)}:a=function(c){i.push(MF.tester(c))},t.type){case"MultiPolygon":for(o=0;o0?v.properties.ct=ozt(v):v.properties.ct=[NaN,NaN],h.fIn=c,h.fOut=v,i.push(v)}else JA.log(["Location",h.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete n[f]}switch(r.type){case"FeatureCollection":var l=r.features;for(a=0;ai&&(i=s,r=o)}else r=t;return JFt(r).geometry.coordinates}function szt(e){var t=window.PlotlyGeoAssets||{},r=[];function n(l){return new Promise(function(u,c){YFt.json(l,function(f,h){if(f){delete t[l];var d=f.status===404?'GeoJSON at URL "'+l+'" does not exist.':"Unexpected error while fetching from "+l;return c(new Error(d))}return t[l]=h,u(h)})})}function i(l){return new Promise(function(u,c){var f=0,h=setInterval(function(){if(t[l]&&t[l]!=="pending")return clearInterval(h),u(t[l]);if(f>100)return clearInterval(h),c("Unexpected error while fetching from "+l);f++},50)})}for(var a=0;a{"use strict";var uzt=Oa(),czt=So(),pDe=ka(),gDe=op(),fzt=gDe.stylePoints,hzt=gDe.styleText;mDe.exports=function(t,r){r&&dzt(t,r)};function dzt(e,t){var r=t[0].trace,n=t[0].node3;n.style("opacity",t[0].trace.opacity),fzt(n,r,e),hzt(n,r,e),n.selectAll("path.js-line").style("fill","none").each(function(i){var a=uzt.select(this),o=i.trace,s=o.line||{};a.call(pDe.stroke,s.color).call(czt.dashLine,s.dash||"",s.width||0),o.fill!=="none"&&a.call(pDe.fill,o.fillcolor)})}});var IZ=ye((gmr,xDe)=>{"use strict";var yDe=Oa(),kF=Dr(),vzt=mF().getTopojsonFeatures,CZ=tx(),EF=ix(),_De=Ag().findExtremes,PZ=fs().BADNUM,pzt=O0().calcMarkerSize,LZ=Ru(),gzt=kZ();function mzt(e,t,r){var n=t.layers.frontplot.select(".scatterlayer"),i=kF.makeTraceGroups(n,r,"trace scattergeo");function a(o,s){o.lonlat[0]===PZ&&yDe.select(s).remove()}i.selectAll("*").remove(),i.each(function(o){var s=yDe.select(this),l=o[0].trace;if(LZ.hasLines(l)||l.fill!=="none"){var u=CZ.calcTraceToLineCoords(o),c=l.fill!=="none"?CZ.makePolygon(u):CZ.makeLine(u);s.selectAll("path.js-line").data([{geojson:c,trace:l}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}LZ.hasMarkers(l)&&s.selectAll("path.point").data(kF.identity).enter().append("path").classed("point",!0).each(function(f){a(f,this)}),LZ.hasText(l)&&s.selectAll("g").data(kF.identity).enter().append("g").append("text").each(function(f){a(f,this)}),gzt(e,o)})}function yzt(e,t){var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r._length,o,s;if(kF.isArrayOrTypedArray(r.locations)){var l=r.locationmode,u=l==="geojson-id"?EF.extractTraceFeature(e):vzt(r,i.topojson);for(o=0;o{"use strict";var _zt=vf(),xzt=fs().BADNUM,bzt=cT(),wzt=Dr().fillText,Tzt=j2();bDe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.xa,s=t.ya,l=t.subplot,u=l.projection.isLonLatOverEdges,c=l.project;function f(k){var E=k.lonlat;if(E[0]===xzt||u(E))return 1/0;var S=c(E),L=c([r,n]),x=Math.abs(S[0]-L[0]),C=Math.abs(S[1]-L[1]),M=Math.max(3,k.mrc||0);return Math.max(Math.sqrt(x*x+C*C)-M,1-3/M)}if(_zt.getClosest(i,f,t),t.index!==!1){var h=i[t.index],d=h.lonlat,v=[o.c2p(d),s.c2p(d)],_=h.mrc||1;t.x0=v[0]-_,t.x1=v[0]+_,t.y0=v[1]-_,t.y1=v[1]+_,t.loc=h.loc,t.lon=d[0],t.lat=d[1];var b={};b[a.geo]={_subplot:l};var p=a._module.formatLabels(h,a,b);return t.lonLabel=p.lonLabel,t.latLabel=p.latLabel,t.color=bzt(a,h),t.extraText=Azt(a,h,t,i[0].t.labels),t.hovertemplate=a.hovertemplate,[t]}};function Azt(e,t,r,n){if(e.hovertemplate)return;var i=t.hi||e.hoverinfo,a=i==="all"?Tzt.hoverinfo.flags:i.split("+"),o=a.indexOf("location")!==-1&&Array.isArray(e.locations),s=a.indexOf("lon")!==-1,l=a.indexOf("lat")!==-1,u=a.indexOf("text")!==-1,c=[];function f(h){return h+"\xB0"}return o?c.push(t.loc):s&&l?c.push("("+f(r.latLabel)+", "+f(r.lonLabel)+")"):s?c.push(n.lon+f(r.lonLabel)):l&&c.push(n.lat+f(r.latLabel)),u&&wzt(t,e,c),c.join("
")}});var ADe=ye((ymr,TDe)=>{"use strict";TDe.exports=function(t,r,n,i,a){t.lon=r.lon,t.lat=r.lat,t.location=r.loc?r.loc:null;var o=i[a];return o.fIn&&o.fIn.properties&&(t.properties=o.fIn.properties),t}});var EDe=ye((_mr,MDe)=>{"use strict";var SDe=Ru(),Szt=fs().BADNUM;MDe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l,u,c,f,h,d=!SDe.hasMarkers(s)&&!SDe.hasText(s);if(d)return[];if(r===!1)for(h=0;h{(function(e,t){t(typeof CF=="object"&&typeof kDe!="undefined"?CF:e.d3=e.d3||{})})(CF,function(e){"use strict";function t(Le,Ae){return LeAe?1:Le>=Ae?0:NaN}function r(Le){return Le.length===1&&(Le=n(Le)),{left:function(Ae,Fe,Pe,ge){for(Pe==null&&(Pe=0),ge==null&&(ge=Ae.length);Pe>>1;Le(Ae[Re],Fe)<0?Pe=Re+1:ge=Re}return Pe},right:function(Ae,Fe,Pe,ge){for(Pe==null&&(Pe=0),ge==null&&(ge=Ae.length);Pe>>1;Le(Ae[Re],Fe)>0?ge=Re:Pe=Re+1}return Pe}}}function n(Le){return function(Ae,Fe){return t(Le(Ae),Fe)}}var i=r(t),a=i.right,o=i.left;function s(Le,Ae){Ae==null&&(Ae=l);for(var Fe=0,Pe=Le.length-1,ge=Le[0],Re=new Array(Pe<0?0:Pe);FeLe?1:Ae>=Le?0:NaN}function f(Le){return Le===null?NaN:+Le}function h(Le,Ae){var Fe=Le.length,Pe=0,ge=-1,Re=0,ce,Ze,ut=0;if(Ae==null)for(;++ge1)return ut/(Pe-1)}function d(Le,Ae){var Fe=h(Le,Ae);return Fe&&Math.sqrt(Fe)}function v(Le,Ae){var Fe=Le.length,Pe=-1,ge,Re,ce;if(Ae==null){for(;++Pe=ge)for(Re=ce=ge;++Pege&&(Re=ge),ce=ge)for(Re=ce=ge;++Pege&&(Re=ge),ce0)return[Le];if((Pe=Ae0)for(Le=Math.ceil(Le/Ze),Ae=Math.floor(Ae/Ze),ce=new Array(Re=Math.ceil(Ae-Le+1));++ge=0?(Re>=L?10:Re>=x?5:Re>=C?2:1)*Math.pow(10,ge):-Math.pow(10,-ge)/(Re>=L?10:Re>=x?5:Re>=C?2:1)}function P(Le,Ae,Fe){var Pe=Math.abs(Ae-Le)/Math.max(0,Fe),ge=Math.pow(10,Math.floor(Math.log(Pe)/Math.LN10)),Re=Pe/ge;return Re>=L?ge*=10:Re>=x?ge*=5:Re>=C&&(ge*=2),Aest;)lt.pop(),--Gt;var Nt=new Array(Gt+1),Jt;for(Re=0;Re<=Gt;++Re)Jt=Nt[Re]=[],Jt.x0=Re>0?lt[Re-1]:Zt,Jt.x1=Re=1)return+Fe(Le[Pe-1],Pe-1,Le);var Pe,ge=(Pe-1)*Ae,Re=Math.floor(ge),ce=+Fe(Le[Re],Re,Le),Ze=+Fe(Le[Re+1],Re+1,Le);return ce+(Ze-ce)*(ge-Re)}}function V(Le,Ae,Fe){return Le=p.call(Le,f).sort(t),Math.ceil((Fe-Ae)/(2*(O(Le,.75)-O(Le,.25))*Math.pow(Le.length,-1/3)))}function G(Le,Ae,Fe){return Math.ceil((Fe-Ae)/(3.5*d(Le)*Math.pow(Le.length,-1/3)))}function Z(Le,Ae){var Fe=Le.length,Pe=-1,ge,Re;if(Ae==null){for(;++Pe=ge)for(Re=ge;++PeRe&&(Re=ge)}else for(;++Pe=ge)for(Re=ge;++PeRe&&(Re=ge);return Re}function j(Le,Ae){var Fe=Le.length,Pe=Fe,ge=-1,Re,ce=0;if(Ae==null)for(;++ge=0;)for(ce=Le[Ae],Fe=ce.length;--Fe>=0;)Re[--ge]=ce[Fe];return Re}function te(Le,Ae){var Fe=Le.length,Pe=-1,ge,Re;if(Ae==null){for(;++Pe=ge)for(Re=ge;++Pege&&(Re=ge)}else for(;++Pe=ge)for(Re=ge;++Pege&&(Re=ge);return Re}function oe(Le,Ae){for(var Fe=Ae.length,Pe=new Array(Fe);Fe--;)Pe[Fe]=Le[Ae[Fe]];return Pe}function _e(Le,Ae){if(Fe=Le.length){var Fe,Pe=0,ge=0,Re,ce=Le[ge];for(Ae==null&&(Ae=t);++Pe{(function(e,t){typeof LF=="object"&&typeof CDe!="undefined"?t(LF,nk()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(LF,function(e,t){"use strict";function r(){return new n}function n(){this.reset()}n.prototype={constructor:n,reset:function(){this.s=this.t=0},add:function(At){a(i,At,this.t),a(this,i.s,this.s),this.s?this.t+=i.t:this.s=i.t},valueOf:function(){return this.s}};var i=new n;function a(At,Wt,Cr){var Ar=At.s=Wt+Cr,Kr=Ar-Wt,ki=Ar-Kr;At.t=Wt-ki+(Cr-Kr)}var o=1e-6,s=1e-12,l=Math.PI,u=l/2,c=l/4,f=l*2,h=180/l,d=l/180,v=Math.abs,_=Math.atan,b=Math.atan2,p=Math.cos,k=Math.ceil,E=Math.exp,S=Math.log,L=Math.pow,x=Math.sin,C=Math.sign||function(At){return At>0?1:At<0?-1:0},M=Math.sqrt,g=Math.tan;function P(At){return At>1?0:At<-1?l:Math.acos(At)}function T(At){return At>1?u:At<-1?-u:Math.asin(At)}function z(At){return(At=x(At/2))*At}function O(){}function V(At,Wt){At&&Z.hasOwnProperty(At.type)&&Z[At.type](At,Wt)}var G={Feature:function(At,Wt){V(At.geometry,Wt)},FeatureCollection:function(At,Wt){for(var Cr=At.features,Ar=-1,Kr=Cr.length;++Ar=0?1:-1,Kr=Ar*Cr,ki=p(Wt),Xi=x(Wt),dn=ie*Xi,wn=me*ki+dn*p(Kr),Nn=dn*Ar*x(Kr);te.add(b(Nn,wn)),Ce=At,me=ki,ie=Xi}function ge(At){return oe.reset(),H(At,Se),oe*2}function Re(At){return[b(At[1],At[0]),T(At[2])]}function ce(At){var Wt=At[0],Cr=At[1],Ar=p(Cr);return[Ar*p(Wt),Ar*x(Wt),x(Cr)]}function Ze(At,Wt){return At[0]*Wt[0]+At[1]*Wt[1]+At[2]*Wt[2]}function ut(At,Wt){return[At[1]*Wt[2]-At[2]*Wt[1],At[2]*Wt[0]-At[0]*Wt[2],At[0]*Wt[1]-At[1]*Wt[0]]}function pt(At,Wt){At[0]+=Wt[0],At[1]+=Wt[1],At[2]+=Wt[2]}function Zt(At,Wt){return[At[0]*Wt,At[1]*Wt,At[2]*Wt]}function st(At){var Wt=M(At[0]*At[0]+At[1]*At[1]+At[2]*At[2]);At[0]/=Wt,At[1]/=Wt,At[2]/=Wt}var lt,Gt,Nt,Jt,sr,wr,cr,$e,St=r(),Qt,Vt,_t={point:It,lineStart:er,lineEnd:lr,polygonStart:function(){_t.point=Tr,_t.lineStart=Lr,_t.lineEnd=ti,St.reset(),Se.polygonStart()},polygonEnd:function(){Se.polygonEnd(),_t.point=It,_t.lineStart=er,_t.lineEnd=lr,te<0?(lt=-(Nt=180),Gt=-(Jt=90)):St>o?Jt=90:St<-o&&(Gt=-90),Vt[0]=lt,Vt[1]=Nt},sphere:function(){lt=-(Nt=180),Gt=-(Jt=90)}};function It(At,Wt){Qt.push(Vt=[lt=At,Nt=At]),WtJt&&(Jt=Wt)}function mt(At,Wt){var Cr=ce([At*d,Wt*d]);if($e){var Ar=ut($e,Cr),Kr=[Ar[1],-Ar[0],0],ki=ut(Kr,Ar);st(ki),ki=Re(ki);var Xi=At-sr,dn=Xi>0?1:-1,wn=ki[0]*h*dn,Nn,Yi=v(Xi)>180;Yi^(dn*srJt&&(Jt=Nn)):(wn=(wn+360)%360-180,Yi^(dn*srJt&&(Jt=Wt))),Yi?AtBr(lt,Nt)&&(Nt=At):Br(At,Nt)>Br(lt,Nt)&&(lt=At):Nt>=lt?(AtNt&&(Nt=At)):At>sr?Br(lt,At)>Br(lt,Nt)&&(Nt=At):Br(At,Nt)>Br(lt,Nt)&&(lt=At)}else Qt.push(Vt=[lt=At,Nt=At]);WtJt&&(Jt=Wt),$e=Cr,sr=At}function er(){_t.point=mt}function lr(){Vt[0]=lt,Vt[1]=Nt,_t.point=It,$e=null}function Tr(At,Wt){if($e){var Cr=At-sr;St.add(v(Cr)>180?Cr+(Cr>0?360:-360):Cr)}else wr=At,cr=Wt;Se.point(At,Wt),mt(At,Wt)}function Lr(){Se.lineStart()}function ti(){Tr(wr,cr),Se.lineEnd(),v(St)>o&&(lt=-(Nt=180)),Vt[0]=lt,Vt[1]=Nt,$e=null}function Br(At,Wt){return(Wt-=At)<0?Wt+360:Wt}function Vr(At,Wt){return At[0]-Wt[0]}function dt(At,Wt){return At[0]<=At[1]?At[0]<=Wt&&Wt<=At[1]:WtBr(Ar[0],Ar[1])&&(Ar[1]=Kr[1]),Br(Kr[0],Ar[1])>Br(Ar[0],Ar[1])&&(Ar[0]=Kr[0])):ki.push(Ar=Kr);for(Xi=-1/0,Cr=ki.length-1,Wt=0,Ar=ki[Cr];Wt<=Cr;Ar=Kr,++Wt)Kr=ki[Wt],(dn=Br(Ar[1],Kr[0]))>Xi&&(Xi=dn,lt=Kr[0],Nt=Ar[1])}return Qt=Vt=null,lt===1/0||Gt===1/0?[[NaN,NaN],[NaN,NaN]]:[[lt,Gt],[Nt,Jt]]}var Je,je,tt,xt,Ie,xe,ke,vt,ir,ar,vr,ii,pi,$r,di,ji,In={sphere:O,point:wi,lineStart:qn,lineEnd:la,polygonStart:function(){In.lineStart=Ut,In.lineEnd=wt},polygonEnd:function(){In.lineStart=qn,In.lineEnd=la}};function wi(At,Wt){At*=d,Wt*=d;var Cr=p(Wt);On(Cr*p(At),Cr*x(At),x(Wt))}function On(At,Wt,Cr){++Je,tt+=(At-tt)/Je,xt+=(Wt-xt)/Je,Ie+=(Cr-Ie)/Je}function qn(){In.point=Fn}function Fn(At,Wt){At*=d,Wt*=d;var Cr=p(Wt);$r=Cr*p(At),di=Cr*x(At),ji=x(Wt),In.point=ra,On($r,di,ji)}function ra(At,Wt){At*=d,Wt*=d;var Cr=p(Wt),Ar=Cr*p(At),Kr=Cr*x(At),ki=x(Wt),Xi=b(M((Xi=di*ki-ji*Kr)*Xi+(Xi=ji*Ar-$r*ki)*Xi+(Xi=$r*Kr-di*Ar)*Xi),$r*Ar+di*Kr+ji*ki);je+=Xi,xe+=Xi*($r+($r=Ar)),ke+=Xi*(di+(di=Kr)),vt+=Xi*(ji+(ji=ki)),On($r,di,ji)}function la(){In.point=wi}function Ut(){In.point=rr}function wt(){nr(ii,pi),In.point=wi}function rr(At,Wt){ii=At,pi=Wt,At*=d,Wt*=d,In.point=nr;var Cr=p(Wt);$r=Cr*p(At),di=Cr*x(At),ji=x(Wt),On($r,di,ji)}function nr(At,Wt){At*=d,Wt*=d;var Cr=p(Wt),Ar=Cr*p(At),Kr=Cr*x(At),ki=x(Wt),Xi=di*ki-ji*Kr,dn=ji*Ar-$r*ki,wn=$r*Kr-di*Ar,Nn=M(Xi*Xi+dn*dn+wn*wn),Yi=T(Nn),Qi=Nn&&-Yi/Nn;ir+=Qi*Xi,ar+=Qi*dn,vr+=Qi*wn,je+=Yi,xe+=Yi*($r+($r=Ar)),ke+=Yi*(di+(di=Kr)),vt+=Yi*(ji+(ji=ki)),On($r,di,ji)}function Er(At){Je=je=tt=xt=Ie=xe=ke=vt=ir=ar=vr=0,H(At,In);var Wt=ir,Cr=ar,Ar=vr,Kr=Wt*Wt+Cr*Cr+Ar*Ar;return Krl?At+Math.round(-At/f)*f:At,Wt]}Qr.invert=Qr;function Oi(At,Wt,Cr){return(At%=f)?Wt||Cr?ri(tn(At),fn(Wt,Cr)):tn(At):Wt||Cr?fn(Wt,Cr):Qr}function $i(At){return function(Wt,Cr){return Wt+=At,[Wt>l?Wt-f:Wt<-l?Wt+f:Wt,Cr]}}function tn(At){var Wt=$i(At);return Wt.invert=$i(-At),Wt}function fn(At,Wt){var Cr=p(At),Ar=x(At),Kr=p(Wt),ki=x(Wt);function Xi(dn,wn){var Nn=p(wn),Yi=p(dn)*Nn,Qi=x(dn)*Nn,on=x(wn),Fi=on*Cr+Yi*Ar;return[b(Qi*Kr-Fi*ki,Yi*Cr-on*Ar),T(Fi*Kr+Qi*ki)]}return Xi.invert=function(dn,wn){var Nn=p(wn),Yi=p(dn)*Nn,Qi=x(dn)*Nn,on=x(wn),Fi=on*Kr-Qi*ki;return[b(Qi*Kr+on*ki,Yi*Cr+Fi*Ar),T(Fi*Cr-Yi*Ar)]},Xi}function yn(At){At=Oi(At[0]*d,At[1]*d,At.length>2?At[2]*d:0);function Wt(Cr){return Cr=At(Cr[0]*d,Cr[1]*d),Cr[0]*=h,Cr[1]*=h,Cr}return Wt.invert=function(Cr){return Cr=At.invert(Cr[0]*d,Cr[1]*d),Cr[0]*=h,Cr[1]*=h,Cr},Wt}function Sn(At,Wt,Cr,Ar,Kr,ki){if(Cr){var Xi=p(Wt),dn=x(Wt),wn=Ar*Cr;Kr==null?(Kr=Wt+Ar*f,ki=Wt-wn/2):(Kr=Ba(Xi,Kr),ki=Ba(Xi,ki),(Ar>0?Krki)&&(Kr+=Ar*f));for(var Nn,Yi=Kr;Ar>0?Yi>ki:Yi1&&At.push(At.pop().concat(At.shift()))},result:function(){var Cr=At;return At=[],Wt=null,Cr}}}function Wa(At,Wt){return v(At[0]-Wt[0])=0;--dn)Kr.point((Qi=Yi[dn])[0],Qi[1]);else Ar(on.x,on.p.x,-1,Kr);on=on.p}on=on.o,Yi=on.z,Fi=!Fi}while(!on.v);Kr.lineEnd()}}}function da(At){if(Wt=At.length){for(var Wt,Cr=0,Ar=At[0],Kr;++Cr=0?1:-1,as=Ss*Xo,ws=as>l,Ho=Ca*Ka;if(Wn.add(b(Ho*Ss*x(as),Ra*bo+Ho*p(as))),Xi+=ws?Xo+Ss*f:Xo,ws^Fi>=Cr^Yn>=Cr){var ml=ut(ce(on),ce(Na));st(ml);var Ws=ut(ki,ml);st(Ws);var Ls=(ws^Xo>=0?-1:1)*T(Ws[2]);(Ar>Ls||Ar===Ls&&(ml[0]||ml[1]))&&(dn+=ws^Xo>=0?1:-1)}}return(Xi<-o||Xi0){for(wn||(Kr.polygonStart(),wn=!0),Kr.lineStart(),bo=0;bo1&&Dn&2&&Ka.push(Ka.pop().concat(Ka.shift())),Yi.push(Ka.filter(Mt))}}return on}}function Mt(At){return At.length>1}function kr(At,Wt){return((At=At.x)[0]<0?At[1]-u-o:u-At[1])-((Wt=Wt.x)[0]<0?Wt[1]-u-o:u-Wt[1])}var Jr=jn(function(){return!0},vi,An,[-l,-u]);function vi(At){var Wt=NaN,Cr=NaN,Ar=NaN,Kr;return{lineStart:function(){At.lineStart(),Kr=1},point:function(ki,Xi){var dn=ki>0?l:-l,wn=v(ki-Wt);v(wn-l)0?u:-u),At.point(Ar,Cr),At.lineEnd(),At.lineStart(),At.point(dn,Cr),At.point(ki,Cr),Kr=0):Ar!==dn&&wn>=l&&(v(Wt-Ar)o?_((x(Wt)*(ki=p(Ar))*x(Cr)-x(Ar)*(Kr=p(Wt))*x(At))/(Kr*ki*Xi)):(Wt+Ar)/2}function An(At,Wt,Cr,Ar){var Kr;if(At==null)Kr=Cr*u,Ar.point(-l,Kr),Ar.point(0,Kr),Ar.point(l,Kr),Ar.point(l,0),Ar.point(l,-Kr),Ar.point(0,-Kr),Ar.point(-l,-Kr),Ar.point(-l,0),Ar.point(-l,Kr);else if(v(At[0]-Wt[0])>o){var ki=At[0]0,Kr=v(Wt)>o;function ki(Yi,Qi,on,Fi){Sn(Fi,At,Cr,on,Yi,Qi)}function Xi(Yi,Qi){return p(Yi)*p(Qi)>Wt}function dn(Yi){var Qi,on,Fi,$n,Ca;return{lineStart:function(){$n=Fi=!1,Ca=1},point:function(Ra,La){var Na=[Ra,La],Yn,Dn=Xi(Ra,La),Ka=Ar?Dn?0:Nn(Ra,La):Dn?Nn(Ra+(Ra<0?l:-l),La):0;if(!Qi&&($n=Fi=Dn)&&Yi.lineStart(),Dn!==Fi&&(Yn=wn(Qi,Na),(!Yn||Wa(Qi,Yn)||Wa(Na,Yn))&&(Na[2]=1)),Dn!==Fi)Ca=0,Dn?(Yi.lineStart(),Yn=wn(Na,Qi),Yi.point(Yn[0],Yn[1])):(Yn=wn(Qi,Na),Yi.point(Yn[0],Yn[1],2),Yi.lineEnd()),Qi=Yn;else if(Kr&&Qi&&Ar^Dn){var bo;!(Ka&on)&&(bo=wn(Na,Qi,!0))&&(Ca=0,Ar?(Yi.lineStart(),Yi.point(bo[0][0],bo[0][1]),Yi.point(bo[1][0],bo[1][1]),Yi.lineEnd()):(Yi.point(bo[1][0],bo[1][1]),Yi.lineEnd(),Yi.lineStart(),Yi.point(bo[0][0],bo[0][1],3)))}Dn&&(!Qi||!Wa(Qi,Na))&&Yi.point(Na[0],Na[1]),Qi=Na,Fi=Dn,on=Ka},lineEnd:function(){Fi&&Yi.lineEnd(),Qi=null},clean:function(){return Ca|($n&&Fi)<<1}}}function wn(Yi,Qi,on){var Fi=ce(Yi),$n=ce(Qi),Ca=[1,0,0],Ra=ut(Fi,$n),La=Ze(Ra,Ra),Na=Ra[0],Yn=La-Na*Na;if(!Yn)return!on&&Yi;var Dn=Wt*La/Yn,Ka=-Wt*Na/Yn,bo=ut(Ca,Ra),Xo=Zt(Ca,Dn),Ss=Zt(Ra,Ka);pt(Xo,Ss);var as=bo,ws=Ze(Xo,as),Ho=Ze(as,as),ml=ws*ws-Ho*(Ze(Xo,Xo)-1);if(!(ml<0)){var Ws=M(ml),Ls=Zt(as,(-ws-Ws)/Ho);if(pt(Ls,Xo),Ls=Re(Ls),!on)return Ls;var va=Yi[0],no=Qi[0],ys=Yi[1],rs=Qi[1],$l;no0^Ls[1]<(v(Ls[0]-va)l^(va<=Ls[0]&&Ls[0]<=no)){var pu=Zt(as,(-ws+Ws)/Ho);return pt(pu,Xo),[Ls,Re(pu)]}}}function Nn(Yi,Qi){var on=Ar?At:l-At,Fi=0;return Yi<-on?Fi|=1:Yi>on&&(Fi|=2),Qi<-on?Fi|=4:Qi>on&&(Fi|=8),Fi}return jn(Xi,dn,ki,Ar?[0,-At]:[-l,At-l])}function Li(At,Wt,Cr,Ar,Kr,ki){var Xi=At[0],dn=At[1],wn=Wt[0],Nn=Wt[1],Yi=0,Qi=1,on=wn-Xi,Fi=Nn-dn,$n;if($n=Cr-Xi,!(!on&&$n>0)){if($n/=on,on<0){if($n0){if($n>Qi)return;$n>Yi&&(Yi=$n)}if($n=Kr-Xi,!(!on&&$n<0)){if($n/=on,on<0){if($n>Qi)return;$n>Yi&&(Yi=$n)}else if(on>0){if($n0)){if($n/=Fi,Fi<0){if($n0){if($n>Qi)return;$n>Yi&&(Yi=$n)}if($n=ki-dn,!(!Fi&&$n<0)){if($n/=Fi,Fi<0){if($n>Qi)return;$n>Yi&&(Yi=$n)}else if(Fi>0){if($n0&&(At[0]=Xi+Yi*on,At[1]=dn+Yi*Fi),Qi<1&&(Wt[0]=Xi+Qi*on,Wt[1]=dn+Qi*Fi),!0}}}}}var _n=1e9,ya=-_n;function Jn(At,Wt,Cr,Ar){function Kr(Nn,Yi){return At<=Nn&&Nn<=Cr&&Wt<=Yi&&Yi<=Ar}function ki(Nn,Yi,Qi,on){var Fi=0,$n=0;if(Nn==null||(Fi=Xi(Nn,Qi))!==($n=Xi(Yi,Qi))||wn(Nn,Yi)<0^Qi>0)do on.point(Fi===0||Fi===3?At:Cr,Fi>1?Ar:Wt);while((Fi=(Fi+Qi+4)%4)!==$n);else on.point(Yi[0],Yi[1])}function Xi(Nn,Yi){return v(Nn[0]-At)0?0:3:v(Nn[0]-Cr)0?2:1:v(Nn[1]-Wt)0?1:0:Yi>0?3:2}function dn(Nn,Yi){return wn(Nn.x,Yi.x)}function wn(Nn,Yi){var Qi=Xi(Nn,1),on=Xi(Yi,1);return Qi!==on?Qi-on:Qi===0?Yi[1]-Nn[1]:Qi===1?Nn[0]-Yi[0]:Qi===2?Nn[1]-Yi[1]:Yi[0]-Nn[0]}return function(Nn){var Yi=Nn,Qi=ma(),on,Fi,$n,Ca,Ra,La,Na,Yn,Dn,Ka,bo,Xo={point:Ss,lineStart:ml,lineEnd:Ws,polygonStart:ws,polygonEnd:Ho};function Ss(va,no){Kr(va,no)&&Yi.point(va,no)}function as(){for(var va=0,no=0,ys=Fi.length;noAr&&(Uc-Nc)*(Ar-pu)>(xu-pu)*(At-Nc)&&++va:xu<=Ar&&(Uc-Nc)*(Ar-pu)<(xu-pu)*(At-Nc)&&--va;return va}function ws(){Yi=Qi,on=[],Fi=[],bo=!0}function Ho(){var va=as(),no=bo&&va,ys=(on=t.merge(on)).length;(no||ys)&&(Nn.polygonStart(),no&&(Nn.lineStart(),ki(null,null,1,Nn),Nn.lineEnd()),ys&&Wo(on,dn,va,ki,Nn),Nn.polygonEnd()),Yi=Nn,on=Fi=$n=null}function ml(){Xo.point=Ls,Fi&&Fi.push($n=[]),Ka=!0,Dn=!1,Na=Yn=NaN}function Ws(){on&&(Ls(Ca,Ra),La&&Dn&&Qi.rejoin(),on.push(Qi.result())),Xo.point=Ss,Dn&&Yi.lineEnd()}function Ls(va,no){var ys=Kr(va,no);if(Fi&&$n.push([va,no]),Ka)Ca=va,Ra=no,La=ys,Ka=!1,ys&&(Yi.lineStart(),Yi.point(va,no));else if(ys&&Dn)Yi.point(va,no);else{var rs=[Na=Math.max(ya,Math.min(_n,Na)),Yn=Math.max(ya,Math.min(_n,Yn))],$l=[va=Math.max(ya,Math.min(_n,va)),no=Math.max(ya,Math.min(_n,no))];Li(rs,$l,At,Wt,Cr,Ar)?(Dn||(Yi.lineStart(),Yi.point(rs[0],rs[1])),Yi.point($l[0],$l[1]),ys||Yi.lineEnd(),bo=!1):ys&&(Yi.lineStart(),Yi.point(va,no),bo=!1)}Na=va,Yn=no,Dn=ys}return Xo}}function Ma(){var At=0,Wt=0,Cr=960,Ar=500,Kr,ki,Xi;return Xi={stream:function(dn){return Kr&&ki===dn?Kr:Kr=Jn(At,Wt,Cr,Ar)(ki=dn)},extent:function(dn){return arguments.length?(At=+dn[0][0],Wt=+dn[0][1],Cr=+dn[1][0],Ar=+dn[1][1],Kr=ki=null,Xi):[[At,Wt],[Cr,Ar]]}}}var _o=r(),No,po,Lo,ko={sphere:O,point:O,lineStart:Ds,lineEnd:O,polygonStart:O,polygonEnd:O};function Ds(){ko.point=ll,ko.lineEnd=Fs}function Fs(){ko.point=ko.lineEnd=O}function ll(At,Wt){At*=d,Wt*=d,No=At,po=x(Wt),Lo=p(Wt),ko.point=ul}function ul(At,Wt){At*=d,Wt*=d;var Cr=x(Wt),Ar=p(Wt),Kr=v(At-No),ki=p(Kr),Xi=x(Kr),dn=Ar*Xi,wn=Lo*Cr-po*Ar*ki,Nn=po*Cr+Lo*Ar*ki;_o.add(b(M(dn*dn+wn*wn),Nn)),No=At,po=Cr,Lo=Ar}function zl(At){return _o.reset(),H(At,ko),+_o}var us=[null,null],il={type:"LineString",coordinates:us};function As(At,Wt){return us[0]=At,us[1]=Wt,zl(il)}var cl={Feature:function(At,Wt){return zs(At.geometry,Wt)},FeatureCollection:function(At,Wt){for(var Cr=At.features,Ar=-1,Kr=Cr.length;++Ar0&&(Kr=As(At[ki],At[ki-1]),Kr>0&&Cr<=Kr&&Ar<=Kr&&(Cr+Ar-Kr)*(1-Math.pow((Cr-Ar)/Kr,2))o}).map(on)).concat(t.range(k(ki/Nn)*Nn,Kr,Nn).filter(function(Yn){return v(Yn%Qi)>o}).map(Fi))}return La.lines=function(){return Na().map(function(Yn){return{type:"LineString",coordinates:Yn}})},La.outline=function(){return{type:"Polygon",coordinates:[$n(Ar).concat(Ca(Xi).slice(1),$n(Cr).reverse().slice(1),Ca(dn).reverse().slice(1))]}},La.extent=function(Yn){return arguments.length?La.extentMajor(Yn).extentMinor(Yn):La.extentMinor()},La.extentMajor=function(Yn){return arguments.length?(Ar=+Yn[0][0],Cr=+Yn[1][0],dn=+Yn[0][1],Xi=+Yn[1][1],Ar>Cr&&(Yn=Ar,Ar=Cr,Cr=Yn),dn>Xi&&(Yn=dn,dn=Xi,Xi=Yn),La.precision(Ra)):[[Ar,dn],[Cr,Xi]]},La.extentMinor=function(Yn){return arguments.length?(Wt=+Yn[0][0],At=+Yn[1][0],ki=+Yn[0][1],Kr=+Yn[1][1],Wt>At&&(Yn=Wt,Wt=At,At=Yn),ki>Kr&&(Yn=ki,ki=Kr,Kr=Yn),La.precision(Ra)):[[Wt,ki],[At,Kr]]},La.step=function(Yn){return arguments.length?La.stepMajor(Yn).stepMinor(Yn):La.stepMinor()},La.stepMajor=function(Yn){return arguments.length?(Yi=+Yn[0],Qi=+Yn[1],La):[Yi,Qi]},La.stepMinor=function(Yn){return arguments.length?(wn=+Yn[0],Nn=+Yn[1],La):[wn,Nn]},La.precision=function(Yn){return arguments.length?(Ra=+Yn,on=Rn(ki,Kr,90),Fi=_a(Wt,At,Ra),$n=Rn(dn,Xi,90),Ca=_a(Ar,Cr,Ra),La):Ra},La.extentMajor([[-180,-90+o],[180,90-o]]).extentMinor([[-180,-80-o],[180,80+o]])}function Ol(){return Vu()()}function xo(At,Wt){var Cr=At[0]*d,Ar=At[1]*d,Kr=Wt[0]*d,ki=Wt[1]*d,Xi=p(Ar),dn=x(Ar),wn=p(ki),Nn=x(ki),Yi=Xi*p(Cr),Qi=Xi*x(Cr),on=wn*p(Kr),Fi=wn*x(Kr),$n=2*T(M(z(ki-Ar)+Xi*wn*z(Kr-Cr))),Ca=x($n),Ra=$n?function(La){var Na=x(La*=$n)/Ca,Yn=x($n-La)/Ca,Dn=Yn*Yi+Na*on,Ka=Yn*Qi+Na*Fi,bo=Yn*dn+Na*Nn;return[b(Ka,Dn)*h,b(bo,M(Dn*Dn+Ka*Ka))*h]}:function(){return[Cr*h,Ar*h]};return Ra.distance=$n,Ra}function Yl(At){return At}var Ns=r(),Hl=r(),ac,aa,Oo,qo,ql={point:O,lineStart:O,lineEnd:O,polygonStart:function(){ql.lineStart=Pc,ql.lineEnd=Uf},polygonEnd:function(){ql.lineStart=ql.lineEnd=ql.point=O,Ns.add(v(Hl)),Hl.reset()},result:function(){var At=Ns/2;return Ns.reset(),At}};function Pc(){ql.point=Do}function Do(At,Wt){ql.point=rf,ac=Oo=At,aa=qo=Wt}function rf(At,Wt){Hl.add(qo*At-Oo*Wt),Oo=At,qo=Wt}function Uf(){rf(ac,aa)}var pl=1/0,Zc=pl,Kl=-pl,Os=Kl,yu={point:oc,lineStart:O,lineEnd:O,polygonStart:O,polygonEnd:O,result:function(){var At=[[pl,Zc],[Kl,Os]];return Kl=Os=-(Zc=pl=1/0),At}};function oc(At,Wt){AtKl&&(Kl=At),WtOs&&(Os=Wt)}var Cf=0,sc=0,Vh=0,Lf=0,cs=0,nf=0,Vf=0,Jl=0,fl=0,lc,Fu,Es,Hs,Go={point:ps,lineStart:uc,lineEnd:qs,polygonStart:function(){Go.lineStart=ad,Go.lineEnd=Po},polygonEnd:function(){Go.point=ps,Go.lineStart=uc,Go.lineEnd=qs},result:function(){var At=fl?[Vf/fl,Jl/fl]:nf?[Lf/nf,cs/nf]:Vh?[Cf/Vh,sc/Vh]:[NaN,NaN];return Cf=sc=Vh=Lf=cs=nf=Vf=Jl=fl=0,At}};function ps(At,Wt){Cf+=At,sc+=Wt,++Vh}function uc(){Go.point=xl}function xl(At,Wt){Go.point=Gu,ps(Es=At,Hs=Wt)}function Gu(At,Wt){var Cr=At-Es,Ar=Wt-Hs,Kr=M(Cr*Cr+Ar*Ar);Lf+=Kr*(Es+At)/2,cs+=Kr*(Hs+Wt)/2,nf+=Kr,ps(Es=At,Hs=Wt)}function qs(){Go.point=ps}function ad(){Go.point=od}function Po(){Yo(lc,Fu)}function od(At,Wt){Go.point=Yo,ps(lc=Es=At,Fu=Hs=Wt)}function Yo(At,Wt){var Cr=At-Es,Ar=Wt-Hs,Kr=M(Cr*Cr+Ar*Ar);Lf+=Kr*(Es+At)/2,cs+=Kr*(Hs+Wt)/2,nf+=Kr,Kr=Hs*At-Es*Wt,Vf+=Kr*(Es+At),Jl+=Kr*(Hs+Wt),fl+=Kr*3,ps(Es=At,Hs=Wt)}function Pa(At){this._context=At}Pa.prototype={_radius:4.5,pointRadius:function(At){return this._radius=At,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(At,Wt){switch(this._point){case 0:{this._context.moveTo(At,Wt),this._point=1;break}case 1:{this._context.lineTo(At,Wt);break}default:{this._context.moveTo(At+this._radius,Wt),this._context.arc(At,Wt,this._radius,0,f);break}}},result:O};var af=r(),Hu,bl,Gf,Ic,yf,Bl={point:O,lineStart:function(){Bl.point=wh},lineEnd:function(){Hu&&Qf(bl,Gf),Bl.point=O},polygonStart:function(){Hu=!0},polygonEnd:function(){Hu=null},result:function(){var At=+af;return af.reset(),At}};function wh(At,Wt){Bl.point=Qf,bl=Ic=At,Gf=yf=Wt}function Qf(At,Wt){Ic-=At,yf-=Wt,af.add(M(Ic*Ic+yf*yf)),Ic=At,yf=Wt}function _f(){this._string=[]}_f.prototype={_radius:4.5,_circle:Yc(4.5),pointRadius:function(At){return(At=+At)!==this._radius&&(this._radius=At,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(At,Wt){switch(this._point){case 0:{this._string.push("M",At,",",Wt),this._point=1;break}case 1:{this._string.push("L",At,",",Wt);break}default:{this._circle==null&&(this._circle=Yc(this._radius)),this._string.push("M",At,",",Wt,this._circle);break}}},result:function(){if(this._string.length){var At=this._string.join("");return this._string=[],At}else return null}};function Yc(At){return"m0,"+At+"a"+At+","+At+" 0 1,1 0,"+-2*At+"a"+At+","+At+" 0 1,1 0,"+2*At+"z"}function eh(At,Wt){var Cr=4.5,Ar,Kr;function ki(Xi){return Xi&&(typeof Cr=="function"&&Kr.pointRadius(+Cr.apply(this,arguments)),H(Xi,Ar(Kr))),Kr.result()}return ki.area=function(Xi){return H(Xi,Ar(ql)),ql.result()},ki.measure=function(Xi){return H(Xi,Ar(Bl)),Bl.result()},ki.bounds=function(Xi){return H(Xi,Ar(yu)),yu.result()},ki.centroid=function(Xi){return H(Xi,Ar(Go)),Go.result()},ki.projection=function(Xi){return arguments.length?(Ar=Xi==null?(At=null,Yl):(At=Xi).stream,ki):At},ki.context=function(Xi){return arguments.length?(Kr=Xi==null?(Wt=null,new _f):new Pa(Wt=Xi),typeof Cr!="function"&&Kr.pointRadius(Cr),ki):Wt},ki.pointRadius=function(Xi){return arguments.length?(Cr=typeof Xi=="function"?Xi:(Kr.pointRadius(+Xi),+Xi),ki):Cr},ki.projection(At).context(Wt)}function th(At){return{stream:ju(At)}}function ju(At){return function(Wt){var Cr=new Hf;for(var Ar in At)Cr[Ar]=At[Ar];return Cr.stream=Wt,Cr}}function Hf(){}Hf.prototype={constructor:Hf,point:function(At,Wt){this.stream.point(At,Wt)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function cc(At,Wt,Cr){var Ar=At.clipExtent&&At.clipExtent();return At.scale(150).translate([0,0]),Ar!=null&&At.clipExtent(null),H(Cr,At.stream(yu)),Wt(yu.result()),Ar!=null&&At.clipExtent(Ar),At}function of(At,Wt,Cr){return cc(At,function(Ar){var Kr=Wt[1][0]-Wt[0][0],ki=Wt[1][1]-Wt[0][1],Xi=Math.min(Kr/(Ar[1][0]-Ar[0][0]),ki/(Ar[1][1]-Ar[0][1])),dn=+Wt[0][0]+(Kr-Xi*(Ar[1][0]+Ar[0][0]))/2,wn=+Wt[0][1]+(ki-Xi*(Ar[1][1]+Ar[0][1]))/2;At.scale(150*Xi).translate([dn,wn])},Cr)}function Nl(At,Wt,Cr){return of(At,[[0,0],Wt],Cr)}function Kc(At,Wt,Cr){return cc(At,function(Ar){var Kr=+Wt,ki=Kr/(Ar[1][0]-Ar[0][0]),Xi=(Kr-ki*(Ar[1][0]+Ar[0][0]))/2,dn=-ki*Ar[0][1];At.scale(150*ki).translate([Xi,dn])},Cr)}function Rc(At,Wt,Cr){return cc(At,function(Ar){var Kr=+Wt,ki=Kr/(Ar[1][1]-Ar[0][1]),Xi=-ki*Ar[0][0],dn=(Kr-ki*(Ar[1][1]+Ar[0][1]))/2;At.scale(150*ki).translate([Xi,dn])},Cr)}var gs=16,jf=p(30*d);function Gh(At,Wt){return+Wt?sf(At,Wt):rh(At)}function rh(At){return ju({point:function(Wt,Cr){Wt=At(Wt,Cr),this.stream.point(Wt[0],Wt[1])}})}function sf(At,Wt){function Cr(Ar,Kr,ki,Xi,dn,wn,Nn,Yi,Qi,on,Fi,$n,Ca,Ra){var La=Nn-Ar,Na=Yi-Kr,Yn=La*La+Na*Na;if(Yn>4*Wt&&Ca--){var Dn=Xi+on,Ka=dn+Fi,bo=wn+$n,Xo=M(Dn*Dn+Ka*Ka+bo*bo),Ss=T(bo/=Xo),as=v(v(bo)-1)Wt||v((La*Ws+Na*Ls)/Yn-.5)>.3||Xi*on+dn*Fi+wn*$n2?va[2]%360*d:0,Ws()):[dn*h,wn*h,Nn*h]},Ho.angle=function(va){return arguments.length?(Qi=va%360*d,Ws()):Qi*h},Ho.reflectX=function(va){return arguments.length?(on=va?-1:1,Ws()):on<0},Ho.reflectY=function(va){return arguments.length?(Fi=va?-1:1,Ws()):Fi<0},Ho.precision=function(va){return arguments.length?(bo=Gh(Xo,Ka=va*va),Ls()):M(Ka)},Ho.fitExtent=function(va,no){return of(Ho,va,no)},Ho.fitSize=function(va,no){return Nl(Ho,va,no)},Ho.fitWidth=function(va,no){return Kc(Ho,va,no)},Ho.fitHeight=function(va,no){return Rc(Ho,va,no)};function Ws(){var va=js(Cr,0,0,on,Fi,Qi).apply(null,Wt(ki,Xi)),no=(Qi?js:ih)(Cr,Ar-va[0],Kr-va[1],on,Fi,Qi);return Yi=Oi(dn,wn,Nn),Xo=ri(Wt,no),Ss=ri(Yi,Xo),bo=Gh(Xo,Ka),Ls()}function Ls(){return as=ws=null,Ho}return function(){return Wt=At.apply(this,arguments),Ho.invert=Wt.invert&&ml,Ws()}}function ks(At){var Wt=0,Cr=l/3,Ar=Dc(At),Kr=Ar(Wt,Cr);return Kr.parallels=function(ki){return arguments.length?Ar(Wt=ki[0]*d,Cr=ki[1]*d):[Wt*h,Cr*h]},Kr}function bc(At){var Wt=p(At);function Cr(Ar,Kr){return[Ar*Wt,x(Kr)/Wt]}return Cr.invert=function(Ar,Kr){return[Ar/Wt,T(Kr*Wt)]},Cr}function hu(At,Wt){var Cr=x(At),Ar=(Cr+x(Wt))/2;if(v(Ar)=.12&&Ra<.234&&Ca>=-.425&&Ca<-.214?Kr:Ra>=.166&&Ra<.234&&Ca>=-.214&&Ca<-.115?Xi:Cr).invert(on)},Yi.stream=function(on){return At&&Wt===on?At:At=nh([Cr.stream(Wt=on),Kr.stream(on),Xi.stream(on)])},Yi.precision=function(on){return arguments.length?(Cr.precision(on),Kr.precision(on),Xi.precision(on),Qi()):Cr.precision()},Yi.scale=function(on){return arguments.length?(Cr.scale(on),Kr.scale(on*.35),Xi.scale(on),Yi.translate(Cr.translate())):Cr.scale()},Yi.translate=function(on){if(!arguments.length)return Cr.translate();var Fi=Cr.scale(),$n=+on[0],Ca=+on[1];return Ar=Cr.translate(on).clipExtent([[$n-.455*Fi,Ca-.238*Fi],[$n+.455*Fi,Ca+.238*Fi]]).stream(Nn),ki=Kr.translate([$n-.307*Fi,Ca+.201*Fi]).clipExtent([[$n-.425*Fi+o,Ca+.12*Fi+o],[$n-.214*Fi-o,Ca+.234*Fi-o]]).stream(Nn),dn=Xi.translate([$n-.205*Fi,Ca+.212*Fi]).clipExtent([[$n-.214*Fi+o,Ca+.166*Fi+o],[$n-.115*Fi-o,Ca+.234*Fi-o]]).stream(Nn),Qi()},Yi.fitExtent=function(on,Fi){return of(Yi,on,Fi)},Yi.fitSize=function(on,Fi){return Nl(Yi,on,Fi)},Yi.fitWidth=function(on,Fi){return Kc(Yi,on,Fi)},Yi.fitHeight=function(on,Fi){return Rc(Yi,on,Fi)};function Qi(){return At=Wt=null,Yi}return Yi.scale(1070)}function zu(At){return function(Wt,Cr){var Ar=p(Wt),Kr=p(Cr),ki=At(Ar*Kr);return[ki*Kr*x(Wt),ki*x(Cr)]}}function Fc(At){return function(Wt,Cr){var Ar=M(Wt*Wt+Cr*Cr),Kr=At(Ar),ki=x(Kr),Xi=p(Kr);return[b(Wt*ki,Ar*Xi),T(Ar&&Cr*ki/Ar)]}}var wc=zu(function(At){return M(2/(1+At))});wc.invert=Fc(function(At){return 2*T(At/2)});function bd(){return Eu(wc).scale(124.75).clipAngle(180-.001)}var xf=zu(function(At){return(At=P(At))&&At/x(At)});xf.invert=Fc(function(At){return At});function Pf(){return Eu(xf).scale(79.4188).clipAngle(180-.001)}function Ou(At,Wt){return[At,S(g((u+Wt)/2))]}Ou.invert=function(At,Wt){return[At,2*_(E(Wt))-u]};function bf(){return jl(Ou).scale(961/f)}function jl(At){var Wt=Eu(At),Cr=Wt.center,Ar=Wt.scale,Kr=Wt.translate,ki=Wt.clipExtent,Xi=null,dn,wn,Nn;Wt.scale=function(Qi){return arguments.length?(Ar(Qi),Yi()):Ar()},Wt.translate=function(Qi){return arguments.length?(Kr(Qi),Yi()):Kr()},Wt.center=function(Qi){return arguments.length?(Cr(Qi),Yi()):Cr()},Wt.clipExtent=function(Qi){return arguments.length?(Qi==null?Xi=dn=wn=Nn=null:(Xi=+Qi[0][0],dn=+Qi[0][1],wn=+Qi[1][0],Nn=+Qi[1][1]),Yi()):Xi==null?null:[[Xi,dn],[wn,Nn]]};function Yi(){var Qi=l*Ar(),on=Wt(yn(Wt.rotate()).invert([0,0]));return ki(Xi==null?[[on[0]-Qi,on[1]-Qi],[on[0]+Qi,on[1]+Qi]]:At===Ou?[[Math.max(on[0]-Qi,Xi),dn],[Math.min(on[0]+Qi,wn),Nn]]:[[Xi,Math.max(on[1]-Qi,dn)],[wn,Math.min(on[1]+Qi,Nn)]])}return Yi()}function lf(At){return g((u+At)/2)}function Hh(At,Wt){var Cr=p(At),Ar=At===Wt?x(At):S(Cr/p(Wt))/S(lf(Wt)/lf(At)),Kr=Cr*L(lf(At),Ar)/Ar;if(!Ar)return Ou;function ki(Xi,dn){Kr>0?dn<-u+o&&(dn=-u+o):dn>u-o&&(dn=u-o);var wn=Kr/L(lf(dn),Ar);return[wn*x(Ar*Xi),Kr-wn*p(Ar*Xi)]}return ki.invert=function(Xi,dn){var wn=Kr-dn,Nn=C(Ar)*M(Xi*Xi+wn*wn),Yi=b(Xi,v(wn))*C(wn);return wn*Ar<0&&(Yi-=l*C(Xi)*C(wn)),[Yi/Ar,2*_(L(Kr/Nn,1/Ar))-u]},ki}function If(){return ks(Hh).scale(109.5).parallels([30,30])}function Cs(At,Wt){return[At,Wt]}Cs.invert=Cs;function du(){return Eu(Cs).scale(152.63)}function ku(At,Wt){var Cr=p(At),Ar=At===Wt?x(At):(Cr-p(Wt))/(Wt-At),Kr=Cr/Ar+At;if(v(Ar)o&&--Ar>0);return[At/(.8707+(ki=Cr*Cr)*(-.131979+ki*(-.013791+ki*ki*ki*(.003971-.001529*ki)))),Cr]};function Tc(){return Eu(Oc).scale(175.295)}function wl(At,Wt){return[p(Wt)*x(At),x(Wt)]}wl.invert=Fc(T);function vu(){return Eu(wl).scale(249.5).clipAngle(90+o)}function qc(At,Wt){var Cr=p(Wt),Ar=1+p(At)*Cr;return[Cr*x(At)/Ar,x(Wt)/Ar]}qc.invert=Fc(function(At){return 2*_(At)});function cf(){return Eu(qc).scale(250).clipAngle(142)}function fc(At,Wt){return[S(g((u+Wt)/2)),-At]}fc.invert=function(At,Wt){return[-Wt,2*_(E(At))-u]};function Bc(){var At=jl(fc),Wt=At.center,Cr=At.rotate;return At.center=function(Ar){return arguments.length?Wt([-Ar[1],Ar[0]]):(Ar=Wt(),[Ar[1],-Ar[0]])},At.rotate=function(Ar){return arguments.length?Cr([Ar[0],Ar[1],Ar.length>2?Ar[2]+90:90]):(Ar=Cr(),[Ar[0],Ar[1],Ar[2]-90])},Cr([0,0,90]).scale(159.155)}e.geoAlbers=nl,e.geoAlbersUsa=Ah,e.geoArea=ge,e.geoAzimuthalEqualArea=bd,e.geoAzimuthalEqualAreaRaw=wc,e.geoAzimuthalEquidistant=Pf,e.geoAzimuthalEquidistantRaw=xf,e.geoBounds=Ge,e.geoCentroid=Er,e.geoCircle=ua,e.geoClipAntimeridian=Jr,e.geoClipCircle=Mn,e.geoClipExtent=Ma,e.geoClipRectangle=Jn,e.geoConicConformal=If,e.geoConicConformalRaw=Hh,e.geoConicEqualArea=_u,e.geoConicEqualAreaRaw=hu,e.geoConicEquidistant=Wf,e.geoConicEquidistantRaw=ku,e.geoContains=bs,e.geoDistance=As,e.geoEqualEarth=Xf,e.geoEqualEarthRaw=uf,e.geoEquirectangular=du,e.geoEquirectangularRaw=Cs,e.geoGnomonic=ah,e.geoGnomonicRaw=Wl,e.geoGraticule=Vu,e.geoGraticule10=Ol,e.geoIdentity=Zu,e.geoInterpolate=xo,e.geoLength=zl,e.geoMercator=bf,e.geoMercatorRaw=Ou,e.geoNaturalEarth1=Tc,e.geoNaturalEarth1Raw=Oc,e.geoOrthographic=vu,e.geoOrthographicRaw=wl,e.geoPath=eh,e.geoProjection=Eu,e.geoProjectionMutator=Dc,e.geoRotation=yn,e.geoStereographic=cf,e.geoStereographicRaw=qc,e.geoStream=H,e.geoTransform=th,e.geoTransverseMercator=Bc,e.geoTransverseMercatorRaw=fc,Object.defineProperty(e,"__esModule",{value:!0})})});var PDe=ye((PF,LDe)=>{(function(e,t){typeof PF=="object"&&typeof LDe!="undefined"?t(PF,RZ(),nk()):t(e.d3=e.d3||{},e.d3,e.d3)})(PF,function(e,t,r){"use strict";var n=Math.abs,i=Math.atan,a=Math.atan2,o=Math.cos,s=Math.exp,l=Math.floor,u=Math.log,c=Math.max,f=Math.min,h=Math.pow,d=Math.round,v=Math.sign||function(ve){return ve>0?1:ve<0?-1:0},_=Math.sin,b=Math.tan,p=1e-6,k=1e-12,E=Math.PI,S=E/2,L=E/4,x=Math.SQRT1_2,C=G(2),M=G(E),g=E*2,P=180/E,T=E/180;function z(ve){return ve?ve/Math.sin(ve):1}function O(ve){return ve>1?S:ve<-1?-S:Math.asin(ve)}function V(ve){return ve>1?0:ve<-1?E:Math.acos(ve)}function G(ve){return ve>0?Math.sqrt(ve):0}function Z(ve){return ve=s(2*ve),(ve-1)/(ve+1)}function j(ve){return(s(ve)-s(-ve))/2}function N(ve){return(s(ve)+s(-ve))/2}function H(ve){return u(ve+G(ve*ve+1))}function te(ve){return u(ve+G(ve*ve-1))}function oe(ve){var be=b(ve/2),De=2*u(o(ve/2))/(be*be);function Be(et,We){var it=o(et),Ft=o(We),Ht=_(We),tr=Ft*it,dr=-((1-tr?u((1+tr)/2)/(1-tr):-.5)+De/(1+tr));return[dr*Ft*_(et),dr*Ht]}return Be.invert=function(et,We){var it=G(et*et+We*We),Ft=-ve/2,Ht=50,tr;if(!it)return[0,0];do{var dr=Ft/2,Sr=o(dr),Or=_(dr),Wr=Or/Sr,ni=-u(n(Sr));Ft-=tr=(2/Wr*ni-De*Wr-it)/(-ni/(Or*Or)+1-De/(2*Sr*Sr))*(Sr<0?.7:1)}while(n(tr)>p&&--Ht>0);var Pi=_(Ft);return[a(et*Pi,it*o(Ft)),O(We*Pi/it)]},Be}function _e(){var ve=S,be=t.geoProjectionMutator(oe),De=be(ve);return De.radius=function(Be){return arguments.length?be(ve=Be*T):ve*P},De.scale(179.976).clipAngle(147)}function Ee(ve,be){var De=o(be),Be=z(V(De*o(ve/=2)));return[2*De*_(ve)*Be,_(be)*Be]}Ee.invert=function(ve,be){if(!(ve*ve+4*be*be>E*E+p)){var De=ve,Be=be,et=25;do{var We=_(De),it=_(De/2),Ft=o(De/2),Ht=_(Be),tr=o(Be),dr=_(2*Be),Sr=Ht*Ht,Or=tr*tr,Wr=it*it,ni=1-Or*Ft*Ft,Pi=ni?V(tr*Ft)*G(cn=1/ni):cn=0,cn,ln=2*Pi*tr*it-ve,Cn=Pi*Ht-be,Kn=cn*(Or*Wr+Pi*tr*Ft*Sr),Ta=cn*(.5*We*dr-Pi*2*Ht*it),fa=cn*.25*(dr*it-Pi*Ht*Or*We),$a=cn*(Sr*Ft+Pi*Wr*tr),Co=Ta*fa-$a*Kn;if(!Co)break;var Qa=(Cn*Ta-ln*$a)/Co,mo=(ln*fa-Cn*Kn)/Co;De-=Qa,Be-=mo}while((n(Qa)>p||n(mo)>p)&&--et>0);return[De,Be]}};function Ce(){return t.geoProjection(Ee).scale(152.63)}function me(ve){var be=_(ve),De=o(ve),Be=ve>=0?1:-1,et=b(Be*ve),We=(1+be-De)/2;function it(Ft,Ht){var tr=o(Ht),dr=o(Ft/=2);return[(1+tr)*_(Ft),(Be*Ht>-a(dr,et)-.001?0:-Be*10)+We+_(Ht)*De-(1+tr)*be*dr]}return it.invert=function(Ft,Ht){var tr=0,dr=0,Sr=50;do{var Or=o(tr),Wr=_(tr),ni=o(dr),Pi=_(dr),cn=1+ni,ln=cn*Wr-Ft,Cn=We+Pi*De-cn*be*Or-Ht,Kn=cn*Or/2,Ta=-Wr*Pi,fa=be*cn*Wr/2,$a=De*ni+be*Or*Pi,Co=Ta*fa-$a*Kn,Qa=(Cn*Ta-ln*$a)/Co/2,mo=(ln*fa-Cn*Kn)/Co;n(mo)>2&&(mo/=2),tr-=Qa,dr-=mo}while((n(Qa)>p||n(mo)>p)&&--Sr>0);return Be*dr>-a(o(tr),et)-.001?[tr*2,dr]:null},it}function ie(){var ve=20*T,be=ve>=0?1:-1,De=b(be*ve),Be=t.geoProjectionMutator(me),et=Be(ve),We=et.stream;return et.parallel=function(it){return arguments.length?(De=b((be=(ve=it*T)>=0?1:-1)*ve),Be(ve)):ve*P},et.stream=function(it){var Ft=et.rotate(),Ht=We(it),tr=(et.rotate([0,0]),We(it)),dr=et.precision();return et.rotate(Ft),Ht.sphere=function(){tr.polygonStart(),tr.lineStart();for(var Sr=be*-180;be*Sr<180;Sr+=be*90)tr.point(Sr,be*90);if(ve)for(;be*(Sr-=3*be*dr)>=-180;)tr.point(Sr,be*-a(o(Sr*T/2),De)*P);tr.lineEnd(),tr.polygonEnd()},Ht},et.scale(218.695).center([0,28.0974])}function Se(ve,be){var De=b(be/2),Be=G(1-De*De),et=1+Be*o(ve/=2),We=_(ve)*Be/et,it=De/et,Ft=We*We,Ht=it*it;return[4/3*We*(3+Ft-3*Ht),4/3*it*(3+3*Ft-Ht)]}Se.invert=function(ve,be){if(ve*=3/8,be*=3/8,!ve&&n(be)>1)return null;var De=ve*ve,Be=be*be,et=1+De+Be,We=G((et-G(et*et-4*be*be))/2),it=O(We)/3,Ft=We?te(n(be/We))/3:H(n(ve))/3,Ht=o(it),tr=N(Ft),dr=tr*tr-Ht*Ht;return[v(ve)*2*a(j(Ft)*Ht,.25-dr),v(be)*2*a(tr*_(it),.25+dr)]};function Le(){return t.geoProjection(Se).scale(66.1603)}var Ae=G(8),Fe=u(1+C);function Pe(ve,be){var De=n(be);return Dek&&--Be>0);return[ve/(o(De)*(Ae-1/_(De))),v(be)*De]};function ge(){return t.geoProjection(Pe).scale(112.314)}function Re(ve){var be=2*E/ve;function De(Be,et){var We=t.geoAzimuthalEquidistantRaw(Be,et);if(n(Be)>S){var it=a(We[1],We[0]),Ft=G(We[0]*We[0]+We[1]*We[1]),Ht=be*d((it-S)/be)+S,tr=a(_(it-=Ht),2-o(it));it=Ht+O(E/Ft*_(tr))-tr,We[0]=Ft*o(it),We[1]=Ft*_(it)}return We}return De.invert=function(Be,et){var We=G(Be*Be+et*et);if(We>S){var it=a(et,Be),Ft=be*d((it-S)/be)+S,Ht=it>Ft?-1:1,tr=We*o(Ft-it),dr=1/b(Ht*V((tr-E)/G(E*(E-2*tr)+We*We)));it=Ft+2*i((dr+Ht*G(dr*dr-3))/3),Be=We*o(it),et=We*_(it)}return t.geoAzimuthalEquidistantRaw.invert(Be,et)},De}function ce(){var ve=5,be=t.geoProjectionMutator(Re),De=be(ve),Be=De.stream,et=.01,We=-o(et*T),it=_(et*T);return De.lobes=function(Ft){return arguments.length?be(ve=+Ft):ve},De.stream=function(Ft){var Ht=De.rotate(),tr=Be(Ft),dr=(De.rotate([0,0]),Be(Ft));return De.rotate(Ht),tr.sphere=function(){dr.polygonStart(),dr.lineStart();for(var Sr=0,Or=360/ve,Wr=2*E/ve,ni=90-180/ve,Pi=S;Sr0&&n(et)>p);return Be<0?NaN:De}function st(ve,be,De){return be===void 0&&(be=40),De===void 0&&(De=k),function(Be,et,We,it){var Ft,Ht,tr;We=We===void 0?0:+We,it=it===void 0?0:+it;for(var dr=0;drFt){We-=Ht/=2,it-=tr/=2;continue}Ft=ni;var Pi=(We>0?-1:1)*De,cn=(it>0?-1:1)*De,ln=ve(We+Pi,it),Cn=ve(We,it+cn),Kn=(ln[0]-Sr[0])/Pi,Ta=(ln[1]-Sr[1])/Pi,fa=(Cn[0]-Sr[0])/cn,$a=(Cn[1]-Sr[1])/cn,Co=$a*Kn-Ta*fa,Qa=(n(Co)<.5?.5:1)/Co;if(Ht=(Wr*fa-Or*$a)*Qa,tr=(Or*Ta-Wr*Kn)*Qa,We+=Ht,it+=tr,n(Ht)0&&(Ft[1]*=1+Ht/1.5*Ft[0]*Ft[0]),Ft}return Be.invert=st(Be),Be}function Gt(){return t.geoProjection(lt()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function Nt(ve,be){var De=ve*_(be),Be=30,et;do be-=et=(be+_(be)-De)/(1+o(be));while(n(et)>p&&--Be>0);return be/2}function Jt(ve,be,De){function Be(et,We){return[ve*et*o(We=Nt(De,We)),be*_(We)]}return Be.invert=function(et,We){return We=O(We/be),[et/(ve*o(We)),O((2*We+_(2*We))/De)]},Be}var sr=Jt(C/S,C,E);function wr(){return t.geoProjection(sr).scale(169.529)}var cr=2.00276,$e=1.11072;function St(ve,be){var De=Nt(E,be);return[cr*ve/(1/o(be)+$e/o(De)),(be+C*_(De))/cr]}St.invert=function(ve,be){var De=cr*be,Be=be<0?-L:L,et=25,We,it;do it=De-C*_(Be),Be-=We=(_(2*Be)+2*Be-E*_(it))/(2*o(2*Be)+2+E*o(it)*C*o(Be));while(n(We)>p&&--et>0);return it=De-C*_(Be),[ve*(1/o(it)+$e/o(Be))/cr,it]};function Qt(){return t.geoProjection(St).scale(160.857)}function Vt(ve){var be=0,De=t.geoProjectionMutator(ve),Be=De(be);return Be.parallel=function(et){return arguments.length?De(be=et*T):be*P},Be}function _t(ve,be){return[ve*o(be),be]}_t.invert=function(ve,be){return[ve/o(be),be]};function It(){return t.geoProjection(_t).scale(152.63)}function mt(ve){if(!ve)return _t;var be=1/b(ve);function De(Be,et){var We=be+ve-et,it=We&&Be*o(et)/We;return[We*_(it),be-We*o(it)]}return De.invert=function(Be,et){var We=G(Be*Be+(et=be-et)*et),it=be+ve-We;return[We/o(it)*a(Be,et),it]},De}function er(){return Vt(mt).scale(123.082).center([0,26.1441]).parallel(45)}function lr(ve){function be(De,Be){var et=S-Be,We=et&&De*ve*_(et)/et;return[et*_(We)/ve,S-et*o(We)]}return be.invert=function(De,Be){var et=De*ve,We=S-Be,it=G(et*et+We*We),Ft=a(et,We);return[(it?it/_(it):1)*Ft/ve,S-it]},be}function Tr(){var ve=.5,be=t.geoProjectionMutator(lr),De=be(ve);return De.fraction=function(Be){return arguments.length?be(ve=+Be):ve},De.scale(158.837)}var Lr=Jt(1,4/E,E);function ti(){return t.geoProjection(Lr).scale(152.63)}function Br(ve,be,De,Be,et,We){var it=o(We),Ft;if(n(ve)>1||n(We)>1)Ft=V(De*et+be*Be*it);else{var Ht=_(ve/2),tr=_(We/2);Ft=2*O(G(Ht*Ht+be*Be*tr*tr))}return n(Ft)>p?[Ft,a(Be*_(We),be*et-De*Be*it)]:[0,0]}function Vr(ve,be,De){return V((ve*ve+be*be-De*De)/(2*ve*be))}function dt(ve){return ve-2*E*l((ve+E)/(2*E))}function Ge(ve,be,De){for(var Be=[[ve[0],ve[1],_(ve[1]),o(ve[1])],[be[0],be[1],_(be[1]),o(be[1])],[De[0],De[1],_(De[1]),o(De[1])]],et=Be[2],We,it=0;it<3;++it,et=We)We=Be[it],et.v=Br(We[1]-et[1],et[3],et[2],We[3],We[2],We[0]-et[0]),et.point=[0,0];var Ft=Vr(Be[0].v[0],Be[2].v[0],Be[1].v[0]),Ht=Vr(Be[0].v[0],Be[1].v[0],Be[2].v[0]),tr=E-Ft;Be[2].point[1]=0,Be[0].point[0]=-(Be[1].point[0]=Be[0].v[0]/2);var dr=[Be[2].point[0]=Be[0].point[0]+Be[2].v[0]*o(Ft),2*(Be[0].point[1]=Be[1].point[1]=Be[2].v[0]*_(Ft))];function Sr(Or,Wr){var ni=_(Wr),Pi=o(Wr),cn=new Array(3),ln;for(ln=0;ln<3;++ln){var Cn=Be[ln];if(cn[ln]=Br(Wr-Cn[1],Cn[3],Cn[2],Pi,ni,Or-Cn[0]),!cn[ln][0])return Cn.point;cn[ln][1]=dt(cn[ln][1]-Cn.v[1])}var Kn=dr.slice();for(ln=0;ln<3;++ln){var Ta=ln==2?0:ln+1,fa=Vr(Be[ln].v[0],cn[ln][0],cn[Ta][0]);cn[ln][1]<0&&(fa=-fa),ln?ln==1?(fa=Ht-fa,Kn[0]-=cn[ln][0]*o(fa),Kn[1]-=cn[ln][0]*_(fa)):(fa=tr-fa,Kn[0]+=cn[ln][0]*o(fa),Kn[1]+=cn[ln][0]*_(fa)):(Kn[0]+=cn[ln][0]*o(fa),Kn[1]-=cn[ln][0]*_(fa))}return Kn[0]/=3,Kn[1]/=3,Kn}return Sr}function Je(ve){return ve[0]*=T,ve[1]*=T,ve}function je(){return tt([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function tt(ve,be,De){var Be=t.geoCentroid({type:"MultiPoint",coordinates:[ve,be,De]}),et=[-Be[0],-Be[1]],We=t.geoRotation(et),it=Ge(Je(We(ve)),Je(We(be)),Je(We(De)));it.invert=st(it);var Ft=t.geoProjection(it).rotate(et),Ht=Ft.center;return delete Ft.rotate,Ft.center=function(tr){return arguments.length?Ht(We(tr)):We.invert(Ht())},Ft.clipAngle(90)}function xt(ve,be){var De=G(1-_(be));return[2/M*ve*De,M*(1-De)]}xt.invert=function(ve,be){var De=(De=be/M-1)*De;return[De>0?ve*G(E/De)/2:0,O(1-De)]};function Ie(){return t.geoProjection(xt).scale(95.6464).center([0,30])}function xe(ve){var be=b(ve);function De(Be,et){return[Be,(Be?Be/_(Be):1)*(_(et)*o(Be)-be*o(et))]}return De.invert=be?function(Be,et){Be&&(et*=_(Be)/Be);var We=o(Be);return[Be,2*a(G(We*We+be*be-et*et)-We,be-et)]}:function(Be,et){return[Be,O(Be?et*b(Be)/Be:et)]},De}function ke(){return Vt(xe).scale(249.828).clipAngle(90)}var vt=G(3);function ir(ve,be){return[vt*ve*(2*o(2*be/3)-1)/M,vt*M*_(be/3)]}ir.invert=function(ve,be){var De=3*O(be/(vt*M));return[M*ve/(vt*(2*o(2*De/3)-1)),De]};function ar(){return t.geoProjection(ir).scale(156.19)}function vr(ve){var be=o(ve);function De(Be,et){return[Be*be,_(et)/be]}return De.invert=function(Be,et){return[Be/be,O(et*be)]},De}function ii(){return Vt(vr).parallel(38.58).scale(195.044)}function pi(ve){var be=o(ve);function De(Be,et){return[Be*be,(1+be)*b(et/2)]}return De.invert=function(Be,et){return[Be/be,i(et/(1+be))*2]},De}function $r(){return Vt(pi).scale(124.75)}function di(ve,be){var De=G(8/(3*E));return[De*ve*(1-n(be)/E),De*be]}di.invert=function(ve,be){var De=G(8/(3*E)),Be=be/De;return[ve/(De*(1-n(Be)/E)),Be]};function ji(){return t.geoProjection(di).scale(165.664)}function In(ve,be){var De=G(4-3*_(n(be)));return[2/G(6*E)*ve*De,v(be)*G(2*E/3)*(2-De)]}In.invert=function(ve,be){var De=2-n(be)/G(2*E/3);return[ve*G(6*E)/(2*De),v(be)*O((4-De*De)/3)]};function wi(){return t.geoProjection(In).scale(165.664)}function On(ve,be){var De=G(E*(4+E));return[2/De*ve*(1+G(1-4*be*be/(E*E))),4/De*be]}On.invert=function(ve,be){var De=G(E*(4+E))/2;return[ve*De/(1+G(1-be*be*(4+E)/(4*E))),be*De/2]};function qn(){return t.geoProjection(On).scale(180.739)}function Fn(ve,be){var De=(2+S)*_(be);be/=2;for(var Be=0,et=1/0;Be<10&&n(et)>p;Be++){var We=o(be);be-=et=(be+_(be)*(We+2)-De)/(2*We*(1+We))}return[2/G(E*(4+E))*ve*(1+o(be)),2*G(E/(4+E))*_(be)]}Fn.invert=function(ve,be){var De=be*G((4+E)/E)/2,Be=O(De),et=o(Be);return[ve/(2/G(E*(4+E))*(1+et)),O((Be+De*(et+2))/(2+S))]};function ra(){return t.geoProjection(Fn).scale(180.739)}function la(ve,be){return[ve*(1+o(be))/G(2+E),2*be/G(2+E)]}la.invert=function(ve,be){var De=G(2+E),Be=be*De/2;return[De*ve/(1+o(Be)),Be]};function Ut(){return t.geoProjection(la).scale(173.044)}function wt(ve,be){for(var De=(1+S)*_(be),Be=0,et=1/0;Be<10&&n(et)>p;Be++)be-=et=(be+_(be)-De)/(1+o(be));return De=G(2+E),[ve*(1+o(be))/De,2*be/De]}wt.invert=function(ve,be){var De=1+S,Be=G(De/2);return[ve*2*Be/(1+o(be*=Be)),O((be+_(be))/De)]};function rr(){return t.geoProjection(wt).scale(173.044)}var nr=3+2*C;function Er(ve,be){var De=_(ve/=2),Be=o(ve),et=G(o(be)),We=o(be/=2),it=_(be)/(We+C*Be*et),Ft=G(2/(1+it*it)),Ht=G((C*We+(Be+De)*et)/(C*We+(Be-De)*et));return[nr*(Ft*(Ht-1/Ht)-2*u(Ht)),nr*(Ft*it*(Ht+1/Ht)-2*i(it))]}Er.invert=function(ve,be){if(!(We=Se.invert(ve/1.2,be*1.065)))return null;var De=We[0],Be=We[1],et=20,We;ve/=nr,be/=nr;do{var it=De/2,Ft=Be/2,Ht=_(it),tr=o(it),dr=_(Ft),Sr=o(Ft),Or=o(Be),Wr=G(Or),ni=dr/(Sr+C*tr*Wr),Pi=ni*ni,cn=G(2/(1+Pi)),ln=C*Sr+(tr+Ht)*Wr,Cn=C*Sr+(tr-Ht)*Wr,Kn=ln/Cn,Ta=G(Kn),fa=Ta-1/Ta,$a=Ta+1/Ta,Co=cn*fa-2*u(Ta)-ve,Qa=cn*ni*$a-2*i(ni)-be,mo=dr&&x*Wr*Ht*Pi/dr,Bo=(C*tr*Sr+Wr)/(2*(Sr+C*tr*Wr)*(Sr+C*tr*Wr)*Wr),Ps=-.5*ni*cn*cn*cn,Ts=Ps*mo,wo=Ps*Bo,To=(To=2*Sr+C*Wr*(tr-Ht))*To*Ta,hl=(C*tr*Sr*Wr+Or)/To,Ul=-(C*Ht*dr)/(Wr*To),Lu=fa*Ts-2*hl/Ta+cn*(hl+hl/Kn),au=fa*wo-2*Ul/Ta+cn*(Ul+Ul/Kn),Js=ni*$a*Ts-2*mo/(1+Pi)+cn*$a*mo+cn*ni*(hl-hl/Kn),Ql=ni*$a*wo-2*Bo/(1+Pi)+cn*$a*Bo+cn*ni*(Ul-Ul/Kn),dc=au*Js-Ql*Lu;if(!dc)break;var Tl=(Qa*au-Co*Ql)/dc,Al=(Co*Js-Qa*Lu)/dc;De-=Tl,Be=c(-S,f(S,Be-Al))}while((n(Tl)>p||n(Al)>p)&&--et>0);return n(n(Be)-S)Be){var Sr=G(dr),Or=a(tr,Ht),Wr=De*d(Or/De),ni=Or-Wr,Pi=ve*o(ni),cn=(ve*_(ni)-ni*_(Pi))/(S-Pi),ln=Wa(ni,cn),Cn=(E-ve)/Fa(ln,Pi,E);Ht=Sr;var Kn=50,Ta;do Ht-=Ta=(ve+Fa(ln,Pi,Ht)*Cn-Sr)/(ln(Ht)*Cn);while(n(Ta)>p&&--Kn>0);tr=ni*_(Ht),HtBe){var Ht=G(Ft),tr=a(it,We),dr=De*d(tr/De),Sr=tr-dr;We=Ht*o(Sr),it=Ht*_(Sr);for(var Or=We-S,Wr=_(We),ni=it/Wr,Pi=Wep||n(ni)>p)&&--Pi>0);return[Sr,Or]},Ht}var Wn=da(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function Ha(){return t.geoProjection(Wn).scale(149.995)}var vo=da(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function jn(){return t.geoProjection(vo).scale(153.93)}var Mt=da(5/6*E,-.62636,-.0344,0,1.3493,-.05524,0,.045);function kr(){return t.geoProjection(Mt).scale(130.945)}function Jr(ve,be){var De=ve*ve,Be=be*be;return[ve*(1-.162388*Be)*(.87-952426e-9*De*De),be*(1+Be/12)]}Jr.invert=function(ve,be){var De=ve,Be=be,et=50,We;do{var it=Be*Be;Be-=We=(Be*(1+it/12)-be)/(1+it/4)}while(n(We)>p&&--et>0);et=50,ve/=1-.162388*it;do{var Ft=(Ft=De*De)*Ft;De-=We=(De*(.87-952426e-9*Ft)-ve)/(.87-.00476213*Ft)}while(n(We)>p&&--et>0);return[De,Be]};function vi(){return t.geoProjection(Jr).scale(131.747)}var hn=da(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function An(){return t.geoProjection(hn).scale(131.087)}function Mn(ve){var be=ve(S,0)[0]-ve(-S,0)[0];function De(Be,et){var We=Be>0?-.5:.5,it=ve(Be+We*E,et);return it[0]-=We*be,it}return ve.invert&&(De.invert=function(Be,et){var We=Be>0?-.5:.5,it=ve.invert(Be+We*be,et),Ft=it[0]-We*E;return Ft<-E?Ft+=2*E:Ft>E&&(Ft-=2*E),it[0]=Ft,it}),De}function Li(ve,be){var De=v(ve),Be=v(be),et=o(be),We=o(ve)*et,it=_(ve)*et,Ft=_(Be*be);ve=n(a(it,Ft)),be=O(We),n(ve-S)>p&&(ve%=S);var Ht=_n(ve>E/4?S-ve:ve,be);return ve>E/4&&(Ft=Ht[0],Ht[0]=-Ht[1],Ht[1]=-Ft),Ht[0]*=De,Ht[1]*=-Be,Ht}Li.invert=function(ve,be){n(ve)>1&&(ve=v(ve)*2-ve),n(be)>1&&(be=v(be)*2-be);var De=v(ve),Be=v(be),et=-De*ve,We=-Be*be,it=We/et<1,Ft=ya(it?We:et,it?et:We),Ht=Ft[0],tr=Ft[1],dr=o(tr);return it&&(Ht=-S-Ht),[De*(a(_(Ht)*dr,-_(tr))+E),Be*O(o(Ht)*dr)]};function _n(ve,be){if(be===S)return[0,0];var De=_(be),Be=De*De,et=Be*Be,We=1+et,it=1+3*et,Ft=1-et,Ht=O(1/G(We)),tr=Ft+Be*We*Ht,dr=(1-De)/tr,Sr=G(dr),Or=dr*We,Wr=G(Or),ni=Sr*Ft,Pi,cn;if(ve===0)return[0,-(ni+Be*Wr)];var ln=o(be),Cn=1/ln,Kn=2*De*ln,Ta=(-3*Be+Ht*it)*Kn,fa=(-tr*ln-(1-De)*Ta)/(tr*tr),$a=.5*fa/Sr,Co=Ft*$a-2*Be*Sr*Kn,Qa=Be*We*fa+dr*it*Kn,mo=-Cn*Kn,Bo=-Cn*Qa,Ps=-2*Cn*Co,Ts=4*ve/E,wo;if(ve>.222*E||be.175*E){if(Pi=(ni+Be*G(Or*(1+et)-ni*ni))/(1+et),ve>E/4)return[Pi,Pi];var To=Pi,hl=.5*Pi;Pi=.5*(hl+To),cn=50;do{var Ul=G(Or-Pi*Pi),Lu=Pi*(Ps+mo*Ul)+Bo*O(Pi/Wr)-Ts;if(!Lu)break;Lu<0?hl=Pi:To=Pi,Pi=.5*(hl+To)}while(n(To-hl)>p&&--cn>0)}else{Pi=p,cn=25;do{var au=Pi*Pi,Js=G(Or-au),Ql=Ps+mo*Js,dc=Pi*Ql+Bo*O(Pi/Wr)-Ts,Tl=Ql+(Bo-mo*au)/Js;Pi-=wo=Js?dc/Tl:0}while(n(wo)>p&&--cn>0)}return[Pi,-ni-Be*G(Or-Pi*Pi)]}function ya(ve,be){for(var De=0,Be=1,et=.5,We=50;;){var it=et*et,Ft=G(et),Ht=O(1/G(1+it)),tr=1-it+et*(1+it)*Ht,dr=(1-Ft)/tr,Sr=G(dr),Or=dr*(1+it),Wr=Sr*(1-it),ni=Or-ve*ve,Pi=G(ni),cn=be+Wr+et*Pi;if(n(Be-De)0?De=et:Be=et,et=.5*(De+Be)}if(!We)return null;var ln=O(Ft),Cn=o(ln),Kn=1/Cn,Ta=2*Ft*Cn,fa=(-3*et+Ht*(1+3*it))*Ta,$a=(-tr*Cn-(1-Ft)*fa)/(tr*tr),Co=.5*$a/Sr,Qa=(1-it)*Co-2*et*Sr*Ta,mo=-2*Kn*Qa,Bo=-Kn*Ta,Ps=-Kn*(et*(1+it)*$a+dr*(1+3*it)*Ta);return[E/4*(ve*(mo+Bo*Pi)+Ps*O(ve/G(Or))),ln]}function Jn(){return t.geoProjection(Mn(Li)).scale(239.75)}function Ma(ve,be,De){var Be,et,We;return ve?(Be=_o(ve,De),be?(et=_o(be,1-De),We=et[1]*et[1]+De*Be[0]*Be[0]*et[0]*et[0],[[Be[0]*et[2]/We,Be[1]*Be[2]*et[0]*et[1]/We],[Be[1]*et[1]/We,-Be[0]*Be[2]*et[0]*et[2]/We],[Be[2]*et[1]*et[2]/We,-De*Be[0]*Be[1]*et[0]/We]]):[[Be[0],0],[Be[1],0],[Be[2],0]]):(et=_o(be,1-De),[[0,et[0]/et[1]],[1/et[1],0],[et[2]/et[1],0]])}function _o(ve,be){var De,Be,et,We,it;if(be=1-p)return De=(1-be)/4,Be=N(ve),We=Z(ve),et=1/Be,it=Be*j(ve),[We+De*(it-ve)/(Be*Be),et-De*We*et*(it-ve),et+De*We*et*(it+ve),2*i(s(ve))-S+De*(it-ve)/Be];var Ft=[1,0,0,0,0,0,0,0,0],Ht=[G(be),0,0,0,0,0,0,0,0],tr=0;for(Be=G(1-be),it=1;n(Ht[tr]/Ft[tr])>p&&tr<8;)De=Ft[tr++],Ht[tr]=(De-Be)/2,Ft[tr]=(De+Be)/2,Be=G(De*Be),it*=2;et=it*Ft[tr]*ve;do We=Ht[tr]*_(Be=et)/Ft[tr],et=(O(We)+et)/2;while(--tr);return[_(et),We=o(et),We/o(et-Be),et]}function No(ve,be,De){var Be=n(ve),et=n(be),We=j(et);if(Be){var it=1/_(Be),Ft=1/(b(Be)*b(Be)),Ht=-(Ft+De*(We*We*it*it)-1+De),tr=(De-1)*Ft,dr=(-Ht+G(Ht*Ht-4*tr))/2;return[po(i(1/G(dr)),De)*v(ve),po(i(G((dr/Ft-1)/De)),1-De)*v(be)]}return[0,po(i(We),1-De)*v(be)]}function po(ve,be){if(!be)return ve;if(be===1)return u(b(ve/2+L));for(var De=1,Be=G(1-be),et=G(be),We=0;n(et)>p;We++){if(ve%E){var it=i(Be*b(ve)/De);it<0&&(it+=E),ve+=it+~~(ve/E)*E}else ve+=ve;et=(De+Be)/2,Be=G(De*Be),et=((De=et)-Be)/2}return ve/(h(2,We)*De)}function Lo(ve,be){var De=(C-1)/(C+1),Be=G(1-De*De),et=po(S,Be*Be),We=-1,it=u(b(E/4+n(be)/2)),Ft=s(We*it)/G(De),Ht=ko(Ft*o(We*ve),Ft*_(We*ve)),tr=No(Ht[0],Ht[1],Be*Be);return[-tr[1],(be>=0?1:-1)*(.5*et-tr[0])]}function ko(ve,be){var De=ve*ve,Be=be+1,et=1-De-be*be;return[.5*((ve>=0?S:-S)-a(et,2*ve)),-.25*u(et*et+4*De)+.5*u(Be*Be+De)]}function Ds(ve,be){var De=be[0]*be[0]+be[1]*be[1];return[(ve[0]*be[0]+ve[1]*be[1])/De,(ve[1]*be[0]-ve[0]*be[1])/De]}Lo.invert=function(ve,be){var De=(C-1)/(C+1),Be=G(1-De*De),et=po(S,Be*Be),We=-1,it=Ma(.5*et-be,-ve,Be*Be),Ft=Ds(it[0],it[1]),Ht=a(Ft[1],Ft[0])/We;return[Ht,2*i(s(.5/We*u(De*Ft[0]*Ft[0]+De*Ft[1]*Ft[1])))-S]};function Fs(){return t.geoProjection(Mn(Lo)).scale(151.496)}function ll(ve){var be=_(ve),De=o(ve),Be=ul(ve);Be.invert=ul(-ve);function et(We,it){var Ft=Be(We,it);We=Ft[0],it=Ft[1];var Ht=_(it),tr=o(it),dr=o(We),Sr=V(be*Ht+De*tr*dr),Or=_(Sr),Wr=n(Or)>p?Sr/Or:1;return[Wr*De*_(We),(n(We)>S?Wr:-Wr)*(be*tr-De*Ht*dr)]}return et.invert=function(We,it){var Ft=G(We*We+it*it),Ht=-_(Ft),tr=o(Ft),dr=Ft*tr,Sr=-it*Ht,Or=Ft*be,Wr=G(dr*dr+Sr*Sr-Or*Or),ni=a(dr*Or+Sr*Wr,Sr*Or-dr*Wr),Pi=(Ft>S?-1:1)*a(We*Ht,Ft*o(ni)*tr+it*_(ni)*Ht);return Be.invert(Pi,ni)},et}function ul(ve){var be=_(ve),De=o(ve);return function(Be,et){var We=o(et),it=o(Be)*We,Ft=_(Be)*We,Ht=_(et);return[a(Ft,it*De-Ht*be),O(Ht*De+it*be)]}}function zl(){var ve=0,be=t.geoProjectionMutator(ll),De=be(ve),Be=De.rotate,et=De.stream,We=t.geoCircle();return De.parallel=function(it){if(!arguments.length)return ve*P;var Ft=De.rotate();return be(ve=it*T).rotate(Ft)},De.rotate=function(it){return arguments.length?(Be.call(De,[it[0],it[1]-ve*P]),We.center([-it[0],-it[1]]),De):(it=Be.call(De),it[1]+=ve*P,it)},De.stream=function(it){return it=et(it),it.sphere=function(){it.polygonStart();var Ft=.01,Ht=We.radius(90-Ft)().coordinates[0],tr=Ht.length-1,dr=-1,Sr;for(it.lineStart();++dr=0;)it.point((Sr=Ht[dr])[0],Sr[1]);it.lineEnd(),it.polygonEnd()},it},De.scale(79.4187).parallel(45).clipAngle(180-.001)}var us=3,il=O(1-1/us)*P,As=vr(0);function cl(ve){var be=il*T,De=xt(E,be)[0]-xt(-E,be)[0],Be=As(0,be)[1],et=xt(0,be)[1],We=M-et,it=g/ve,Ft=4/g,Ht=Be+We*We*4/g;function tr(dr,Sr){var Or,Wr=n(Sr);if(Wr>be){var ni=f(ve-1,c(0,l((dr+E)/it)));dr+=E*(ve-1)/ve-ni*it,Or=xt(dr,Wr),Or[0]=Or[0]*g/De-g*(ve-1)/(2*ve)+ni*g/ve,Or[1]=Be+(Or[1]-et)*4*We/g,Sr<0&&(Or[1]=-Or[1])}else Or=As(dr,Sr);return Or[0]*=Ft,Or[1]/=Ht,Or}return tr.invert=function(dr,Sr){dr/=Ft,Sr*=Ht;var Or=n(Sr);if(Or>Be){var Wr=f(ve-1,c(0,l((dr+E)/it)));dr=(dr+E*(ve-1)/ve-Wr*it)*De/g;var ni=xt.invert(dr,.25*(Or-Be)*g/We+et);return ni[0]-=E*(ve-1)/ve-Wr*it,Sr<0&&(ni[1]=-ni[1]),ni}return As.invert(dr,Sr)},tr}function Ks(ve,be){return[ve,be&1?90-p:il]}function zs(ve,be){return[ve,be&1?-90+p:-il]}function Io(ve){return[ve[0]*(1-p),ve[1]]}function ls(ve){var be=[].concat(r.range(-180,180+ve/2,ve).map(Ks),r.range(180,-180-ve/2,-ve).map(zs));return{type:"Polygon",coordinates:[ve===180?be.map(Io):be]}}function Zl(){var ve=4,be=t.geoProjectionMutator(cl),De=be(ve),Be=De.stream;return De.lobes=function(et){return arguments.length?be(ve=+et):ve},De.stream=function(et){var We=De.rotate(),it=Be(et),Ft=(De.rotate([0,0]),Be(et));return De.rotate(We),it.sphere=function(){t.geoStream(ls(180/ve),Ft)},it},De.scale(239.75)}function Su(ve){var be=1+ve,De=_(1/be),Be=O(De),et=2*G(E/(We=E+4*Be*be)),We,it=.5*et*(be+G(ve*(2+ve))),Ft=ve*ve,Ht=be*be;function tr(dr,Sr){var Or=1-_(Sr),Wr,ni;if(Or&&Or<2){var Pi=S-Sr,cn=25,ln;do{var Cn=_(Pi),Kn=o(Pi),Ta=Be+a(Cn,be-Kn),fa=1+Ht-2*be*Kn;Pi-=ln=(Pi-Ft*Be-be*Cn+fa*Ta-.5*Or*We)/(2*be*Cn*Ta)}while(n(ln)>k&&--cn>0);Wr=et*G(fa),ni=dr*Ta/E}else Wr=et*(ve+Or),ni=dr*Be/E;return[Wr*_(ni),it-Wr*o(ni)]}return tr.invert=function(dr,Sr){var Or=dr*dr+(Sr-=it)*Sr,Wr=(1+Ht-Or/(et*et))/(2*be),ni=V(Wr),Pi=_(ni),cn=Be+a(Pi,be-Wr);return[O(dr/G(Or))*E/cn,O(1-2*(ni-Ft*Be-be*Pi+(1+Ht-2*be*Wr)*cn)/We)]},tr}function nc(){var ve=1,be=t.geoProjectionMutator(Su),De=be(ve);return De.ratio=function(Be){return arguments.length?be(ve=+Be):ve},De.scale(167.774).center([0,18.67])}var bs=.7109889596207567,Rn=.0528035274542;function _a(ve,be){return be>-bs?(ve=sr(ve,be),ve[1]+=Rn,ve):_t(ve,be)}_a.invert=function(ve,be){return be>-bs?sr.invert(ve,be-Rn):_t.invert(ve,be)};function Vu(){return t.geoProjection(_a).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function Ol(ve,be){return n(be)>bs?(ve=sr(ve,be),ve[1]-=be>0?Rn:-Rn,ve):_t(ve,be)}Ol.invert=function(ve,be){return n(be)>bs?sr.invert(ve,be+(be>0?Rn:-Rn)):_t.invert(ve,be)};function xo(){return t.geoProjection(Ol).scale(152.63)}function Yl(ve,be,De,Be){var et=G(4*E/(2*De+(1+ve-be/2)*_(2*De)+(ve+be)/2*_(4*De)+be/2*_(6*De))),We=G(Be*_(De)*G((1+ve*o(2*De)+be*o(4*De))/(1+ve+be))),it=De*Ht(1);function Ft(Sr){return G(1+ve*o(2*Sr)+be*o(4*Sr))}function Ht(Sr){var Or=Sr*De;return(2*Or+(1+ve-be/2)*_(2*Or)+(ve+be)/2*_(4*Or)+be/2*_(6*Or))/De}function tr(Sr){return Ft(Sr)*_(Sr)}var dr=function(Sr,Or){var Wr=De*Zt(Ht,it*_(Or)/De,Or/E);isNaN(Wr)&&(Wr=De*v(Or));var ni=et*Ft(Wr);return[ni*We*Sr/E*o(Wr),ni/We*_(Wr)]};return dr.invert=function(Sr,Or){var Wr=Zt(tr,Or*We/et);return[Sr*E/(o(Wr)*et*We*Ft(Wr)),O(De*Ht(Wr/De)/it)]},De===0&&(et=G(Be/E),dr=function(Sr,Or){return[Sr*et,_(Or)/et]},dr.invert=function(Sr,Or){return[Sr/et,O(Or*et)]}),dr}function Ns(){var ve=1,be=0,De=45*T,Be=2,et=t.geoProjectionMutator(Yl),We=et(ve,be,De,Be);return We.a=function(it){return arguments.length?et(ve=+it,be,De,Be):ve},We.b=function(it){return arguments.length?et(ve,be=+it,De,Be):be},We.psiMax=function(it){return arguments.length?et(ve,be,De=+it*T,Be):De*P},We.ratio=function(it){return arguments.length?et(ve,be,De,Be=+it):Be},We.scale(180.739)}function Hl(ve,be,De,Be,et,We,it,Ft,Ht,tr,dr){if(dr.nanEncountered)return NaN;var Sr,Or,Wr,ni,Pi,cn,ln,Cn,Kn,Ta;if(Sr=De-be,Or=ve(be+Sr*.25),Wr=ve(De-Sr*.25),isNaN(Or)){dr.nanEncountered=!0;return}if(isNaN(Wr)){dr.nanEncountered=!0;return}return ni=Sr*(Be+4*Or+et)/12,Pi=Sr*(et+4*Wr+We)/12,cn=ni+Pi,Ta=(cn-it)/15,tr>Ht?(dr.maxDepthCount++,cn+Ta):Math.abs(Ta)>1;do Ht[cn]>Wr?Pi=cn:ni=cn,cn=ni+Pi>>1;while(cn>ni);var ln=Ht[cn+1]-Ht[cn];return ln&&(ln=(Wr-Ht[cn+1])/ln),(cn+1+ln)/it}var Sr=2*dr(1)/E*We/De,Or=function(Wr,ni){var Pi=dr(n(_(ni))),cn=Be(Pi)*Wr;return Pi/=Sr,[cn,ni>=0?Pi:-Pi]};return Or.invert=function(Wr,ni){var Pi;return ni*=Sr,n(ni)<1&&(Pi=v(ni)*O(et(n(ni))*We)),[Wr/Be(n(ni)),Pi]},Or}function Oo(){var ve=0,be=2.5,De=1.183136,Be=t.geoProjectionMutator(aa),et=Be(ve,be,De);return et.alpha=function(We){return arguments.length?Be(ve=+We,be,De):ve},et.k=function(We){return arguments.length?Be(ve,be=+We,De):be},et.gamma=function(We){return arguments.length?Be(ve,be,De=+We):De},et.scale(152.63)}function qo(ve,be){return n(ve[0]-be[0])=0;--Ht)De=ve[1][Ht],Be=De[0][0],et=De[0][1],We=De[1][1],it=De[2][0],Ft=De[2][1],be.push(ql([[it-p,Ft-p],[it-p,We+p],[Be+p,We+p],[Be+p,et-p]],30));return{type:"Polygon",coordinates:[r.merge(be)]}}function Do(ve,be,De){var Be,et;function We(Ht,tr){for(var dr=tr<0?-1:1,Sr=be[+(tr<0)],Or=0,Wr=Sr.length-1;OrSr[Or][2][0];++Or);var ni=ve(Ht-Sr[Or][1][0],tr);return ni[0]+=ve(Sr[Or][1][0],dr*tr>dr*Sr[Or][0][1]?Sr[Or][0][1]:tr)[0],ni}De?We.invert=De(We):ve.invert&&(We.invert=function(Ht,tr){for(var dr=et[+(tr<0)],Sr=be[+(tr<0)],Or=0,Wr=dr.length;Orni&&(Pi=Wr,Wr=ni,ni=Pi),[[Sr,Wr],[Or,ni]]})}),it):be.map(function(tr){return tr.map(function(dr){return[[dr[0][0]*P,dr[0][1]*P],[dr[1][0]*P,dr[1][1]*P],[dr[2][0]*P,dr[2][1]*P]]})})},be!=null&&it.lobes(be),it}var rf=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Uf(){return Do(St,rf).scale(160.857)}var pl=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Zc(){return Do(Ol,pl).scale(152.63)}var Kl=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Os(){return Do(sr,Kl).scale(169.529)}var yu=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function oc(){return Do(sr,yu).scale(169.529).rotate([20,0])}var Cf=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function sc(){return Do(_a,Cf,st).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var Vh=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function Lf(){return Do(_t,Vh).scale(152.63).rotate([-20,0])}function cs(ve,be){return[3/g*ve*G(E*E/3-be*be),be]}cs.invert=function(ve,be){return[g/3*ve/G(E*E/3-be*be),be]};function nf(){return t.geoProjection(cs).scale(158.837)}function Vf(ve){function be(De,Be){if(n(n(Be)-S)2)return null;De/=2,Be/=2;var We=De*De,it=Be*Be,Ft=2*Be/(1+We+it);return Ft=h((1+Ft)/(1-Ft),1/ve),[a(2*De,1-We-it)/ve,O((Ft-1)/(Ft+1))]},be}function Jl(){var ve=.5,be=t.geoProjectionMutator(Vf),De=be(ve);return De.spacing=function(Be){return arguments.length?be(ve=+Be):ve},De.scale(124.75)}var fl=E/C;function lc(ve,be){return[ve*(1+G(o(be)))/2,be/(o(be/2)*o(ve/6))]}lc.invert=function(ve,be){var De=n(ve),Be=n(be),et=p,We=S;Bep||n(cn)>p)&&--et>0);return et&&[De,Be]};function Hs(){return t.geoProjection(Es).scale(139.98)}function Go(ve,be){return[_(ve)/o(be),b(be)*o(ve)]}Go.invert=function(ve,be){var De=ve*ve,Be=be*be,et=Be+1,We=De+et,it=ve?x*G((We-G(We*We-4*De))/De):1/G(et);return[O(ve*it),v(be)*V(it)]};function ps(){return t.geoProjection(Go).scale(144.049).clipAngle(90-.001)}function uc(ve){var be=o(ve),De=b(L+ve/2);function Be(et,We){var it=We-ve,Ft=n(it)=0;)dr=ve[tr],Sr=dr[0]+Ft*(Wr=Sr)-Ht*Or,Or=dr[1]+Ft*Or+Ht*Wr;return Sr=Ft*(Wr=Sr)-Ht*Or,Or=Ft*Or+Ht*Wr,[Sr,Or]}return De.invert=function(Be,et){var We=20,it=Be,Ft=et;do{for(var Ht=be,tr=ve[Ht],dr=tr[0],Sr=tr[1],Or=0,Wr=0,ni;--Ht>=0;)tr=ve[Ht],Or=dr+it*(ni=Or)-Ft*Wr,Wr=Sr+it*Wr+Ft*ni,dr=tr[0]+it*(ni=dr)-Ft*Sr,Sr=tr[1]+it*Sr+Ft*ni;Or=dr+it*(ni=Or)-Ft*Wr,Wr=Sr+it*Wr+Ft*ni,dr=it*(ni=dr)-Ft*Sr-Be,Sr=it*Sr+Ft*ni-et;var Pi=Or*Or+Wr*Wr,cn,ln;it-=cn=(dr*Or+Sr*Wr)/Pi,Ft-=ln=(Sr*Or-dr*Wr)/Pi}while(n(cn)+n(ln)>p*p&&--We>0);if(We){var Cn=G(it*it+Ft*Ft),Kn=2*i(Cn*.5),Ta=_(Kn);return[a(it*Ta,Cn*o(Kn)),Cn?O(Ft*Ta/Cn):0]}},De}var Po=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],od=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Yo=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Pa=[[.9245,0],[0,0],[.01943,0]],af=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Hu(){return Bl(Po,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function bl(){return Bl(od,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Gf(){return Bl(Yo,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function Ic(){return Bl(Pa,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function yf(){return Bl(af,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Bl(ve,be){var De=t.geoProjection(ad(ve)).rotate(be).clipAngle(90),Be=t.geoRotation(be),et=De.center;return delete De.rotate,De.center=function(We){return arguments.length?et(Be(We)):Be.invert(et())},De}var wh=G(6),Qf=G(7);function _f(ve,be){var De=O(7*_(be)/(3*wh));return[wh*ve*(2*o(2*De/3)-1)/Qf,9*_(De/3)/Qf]}_f.invert=function(ve,be){var De=3*O(be*Qf/9);return[ve*Qf/(wh*(2*o(2*De/3)-1)),O(_(De)*3*wh/7)]};function Yc(){return t.geoProjection(_f).scale(164.859)}function eh(ve,be){for(var De=(1+x)*_(be),Be=be,et=0,We;et<25&&(Be-=We=(_(Be/2)+_(Be)-De)/(.5*o(Be/2)+o(Be)),!(n(We)k&&--Be>0);return We=De*De,it=We*We,Ft=We*it,[ve/(.84719-.13063*We+Ft*Ft*(-.04515+.05494*We-.02326*it+.00331*Ft)),De]};function of(){return t.geoProjection(cc).scale(175.295)}function Nl(ve,be){return[ve*(1+o(be))/2,2*(be-b(be/2))]}Nl.invert=function(ve,be){for(var De=be/2,Be=0,et=1/0;Be<10&&n(et)>p;++Be){var We=o(be/2);be-=et=(be-b(be/2)-De)/(1-.5/(We*We))}return[2*ve/(1+o(be)),be]};function Kc(){return t.geoProjection(Nl).scale(152.63)}var Rc=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function gs(){return Do(Ze(1/0),Rc).rotate([20,0]).scale(152.63)}function jf(ve,be){var De=_(be),Be=o(be),et=v(ve);if(ve===0||n(be)===S)return[0,be];if(be===0)return[ve,0];if(n(ve)===S)return[ve*Be,S*De];var We=E/(2*ve)-2*ve/E,it=2*be/E,Ft=(1-it*it)/(De-it),Ht=We*We,tr=Ft*Ft,dr=1+Ht/tr,Sr=1+tr/Ht,Or=(We*De/Ft-We/2)/dr,Wr=(tr*De/Ht+Ft/2)/Sr,ni=Or*Or+Be*Be/dr,Pi=Wr*Wr-(tr*De*De/Ht+Ft*De-1)/Sr;return[S*(Or+G(ni)*et),S*(Wr+G(Pi<0?0:Pi)*v(-be*We)*et)]}jf.invert=function(ve,be){ve/=S,be/=S;var De=ve*ve,Be=be*be,et=De+Be,We=E*E;return[ve?(et-1+G((1-et)*(1-et)+4*De))/(2*ve)*S:0,Zt(function(it){return et*(E*_(it)-2*it)*E+4*it*it*(be-_(it))+2*E*it-We*be},0)]};function Gh(){return t.geoProjection(jf).scale(127.267)}var rh=1.0148,sf=.23185,Th=-.14499,Mu=.02406,ih=rh,js=5*sf,Eu=7*Th,Dc=9*Mu,ks=1.790857183;function bc(ve,be){var De=be*be;return[ve,be*(rh+De*De*(sf+De*(Th+Mu*De)))]}bc.invert=function(ve,be){be>ks?be=ks:be<-ks&&(be=-ks);var De=be,Be;do{var et=De*De;De-=Be=(De*(rh+et*et*(sf+et*(Th+Mu*et)))-be)/(ih+et*et*(js+et*(Eu+Dc*et)))}while(n(Be)>p);return[ve,De]};function hu(){return t.geoProjection(bc).scale(139.319)}function _u(ve,be){if(n(be)p&&--et>0);return it=b(Be),[(n(be)=0;)if(Be=be[Ft],De[0]===Be[0]&&De[1]===Be[1]){if(We)return[We,De];We=De}}}function jl(ve){for(var be=ve.length,De=[],Be=ve[be-1],et=0;et0?[-Be[0],0]:[180-Be[0],180])};var be=If.map(function(De){return{face:De,project:ve(De)}});return[-1,0,0,1,0,1,4,5].forEach(function(De,Be){var et=be[De];et&&(et.children||(et.children=[])).push(be[Be])}),xf(be[0],function(De,Be){return be[De<-E/2?Be<0?6:4:De<0?Be<0?2:0:DeBe^Wr>Be&&De<(Or-tr)*(Be-dr)/(Wr-dr)+tr&&(et=!et)}return et}function Wl(ve,be){var De=be.stream,Be;if(!De)throw new Error("invalid projection");switch(ve&&ve.type){case"Feature":Be=Zu;break;case"FeatureCollection":Be=ah;break;default:Be=Tc;break}return Be(ve,De)}function ah(ve,be){return{type:"FeatureCollection",features:ve.features.map(function(De){return Zu(De,be)})}}function Zu(ve,be){return{type:"Feature",id:ve.id,properties:ve.properties,geometry:Tc(ve.geometry,be)}}function Oc(ve,be){return{type:"GeometryCollection",geometries:ve.geometries.map(function(De){return Tc(De,be)})}}function Tc(ve,be){if(!ve)return null;if(ve.type==="GeometryCollection")return Oc(ve,be);var De;switch(ve.type){case"Point":De=qc;break;case"MultiPoint":De=qc;break;case"LineString":De=cf;break;case"MultiLineString":De=cf;break;case"Polygon":De=fc;break;case"MultiPolygon":De=fc;break;case"Sphere":De=fc;break;default:return null}return t.geoStream(ve,be(De)),De.result()}var wl=[],vu=[],qc={point:function(ve,be){wl.push([ve,be])},result:function(){var ve=wl.length?wl.length<2?{type:"Point",coordinates:wl[0]}:{type:"MultiPoint",coordinates:wl}:null;return wl=[],ve}},cf={lineStart:Xu,point:function(ve,be){wl.push([ve,be])},lineEnd:function(){wl.length&&(vu.push(wl),wl=[])},result:function(){var ve=vu.length?vu.length<2?{type:"LineString",coordinates:vu[0]}:{type:"MultiLineString",coordinates:vu}:null;return vu=[],ve}},fc={polygonStart:Xu,lineStart:Xu,point:function(ve,be){wl.push([ve,be])},lineEnd:function(){var ve=wl.length;if(ve){do wl.push(wl[0].slice());while(++ve<4);vu.push(wl),wl=[]}},polygonEnd:Xu,result:function(){if(!vu.length)return null;var ve=[],be=[];return vu.forEach(function(De){uf(De)?ve.push([De]):be.push(De)}),be.forEach(function(De){var Be=De[0];ve.some(function(et){if(Xf(et[0],Be))return et.push(De),!0})||ve.push([De])}),vu=[],ve.length?ve.length>1?{type:"MultiPolygon",coordinates:ve}:{type:"Polygon",coordinates:ve[0]}:null}};function Bc(ve){var be=ve(S,0)[0]-ve(-S,0)[0];function De(Be,et){var We=n(Be)0?Be-E:Be+E,et),Ft=(it[0]-it[1])*x,Ht=(it[0]+it[1])*x;if(We)return[Ft,Ht];var tr=be*x,dr=Ft>0^Ht>0?-1:1;return[dr*Ft-v(Ht)*tr,dr*Ht-v(Ft)*tr]}return ve.invert&&(De.invert=function(Be,et){var We=(Be+et)*x,it=(et-Be)*x,Ft=n(We)<.5*be&&n(it)<.5*be;if(!Ft){var Ht=be*x,tr=We>0^it>0?-1:1,dr=-tr*Be+(it>0?1:-1)*Ht,Sr=-tr*et+(We>0?1:-1)*Ht;We=(-dr-Sr)*x,it=(dr-Sr)*x}var Or=ve.invert(We,it);return Ft||(Or[0]+=We>0?E:-E),Or}),t.geoProjection(De).rotate([-90,-90,45]).clipAngle(180-.001)}function At(){return Bc(Li).scale(176.423)}function Wt(){return Bc(Lo).scale(111.48)}function Cr(ve,be){if(!(0<=(be=+be)&&be<=20))throw new Error("invalid digits");function De(tr){var dr=tr.length,Sr=2,Or=new Array(dr);for(Or[0]=+tr[0].toFixed(be),Or[1]=+tr[1].toFixed(be);Sr2||Wr[0]!=dr[0]||Wr[1]!=dr[1])&&(Sr.push(Wr),dr=Wr)}return Sr.length===1&&tr.length>1&&Sr.push(De(tr[tr.length-1])),Sr}function We(tr){return tr.map(et)}function it(tr){if(tr==null)return tr;var dr;switch(tr.type){case"GeometryCollection":dr={type:"GeometryCollection",geometries:tr.geometries.map(it)};break;case"Point":dr={type:"Point",coordinates:De(tr.coordinates)};break;case"MultiPoint":dr={type:tr.type,coordinates:Be(tr.coordinates)};break;case"LineString":dr={type:tr.type,coordinates:et(tr.coordinates)};break;case"MultiLineString":case"Polygon":dr={type:tr.type,coordinates:We(tr.coordinates)};break;case"MultiPolygon":dr={type:"MultiPolygon",coordinates:tr.coordinates.map(We)};break;default:return tr}return tr.bbox!=null&&(dr.bbox=tr.bbox),dr}function Ft(tr){var dr={type:"Feature",properties:tr.properties,geometry:it(tr.geometry)};return tr.id!=null&&(dr.id=tr.id),tr.bbox!=null&&(dr.bbox=tr.bbox),dr}if(ve!=null)switch(ve.type){case"Feature":return Ft(ve);case"FeatureCollection":{var Ht={type:"FeatureCollection",features:ve.features.map(Ft)};return ve.bbox!=null&&(Ht.bbox=ve.bbox),Ht}default:return it(ve)}return ve}function Ar(ve){var be=_(ve);function De(Be,et){var We=be?b(Be*be/2)/be:Be/2;if(!et)return[2*We,-ve];var it=2*i(We*_(et)),Ft=1/b(et);return[_(it)*Ft,et+(1-o(it))*Ft-ve]}return De.invert=function(Be,et){if(n(et+=ve)p&&--Ft>0);var Or=Be*(tr=b(it)),Wr=b(n(et)0?S:-S)*(Ht+et*(dr-it)/2+et*et*(dr-2*Ht+it)/2)]}Xi.invert=function(ve,be){var De=be/S,Be=De*90,et=f(18,n(Be/5)),We=c(0,l(et));do{var it=ki[We][1],Ft=ki[We+1][1],Ht=ki[f(19,We+2)][1],tr=Ht-it,dr=Ht-2*Ft+it,Sr=2*(n(De)-Ft)/tr,Or=dr/tr,Wr=Sr*(1-Or*Sr*(1-2*Or*Sr));if(Wr>=0||We===1){Be=(be>=0?5:-5)*(Wr+et);var ni=50,Pi;do et=f(18,n(Be)/5),We=l(et),Wr=et-We,it=ki[We][1],Ft=ki[We+1][1],Ht=ki[f(19,We+2)][1],Be-=(Pi=(be>=0?S:-S)*(Ft+Wr*(Ht-it)/2+Wr*Wr*(Ht-2*Ft+it)/2)-be)*P;while(n(Pi)>k&&--ni>0);break}}while(--We>=0);var cn=ki[We][0],ln=ki[We+1][0],Cn=ki[f(19,We+2)][0];return[ve/(ln+Wr*(Cn-cn)/2+Wr*Wr*(Cn-2*ln+cn)/2),Be*T]};function dn(){return t.geoProjection(Xi).scale(152.63)}function wn(ve){function be(De,Be){var et=o(Be),We=(ve-1)/(ve-et*o(De));return[We*et*_(De),We*_(Be)]}return be.invert=function(De,Be){var et=De*De+Be*Be,We=G(et),it=(ve-G(1-et*(ve+1)/(ve-1)))/((ve-1)/We+We/(ve-1));return[a(De*it,We*G(1-it*it)),We?O(Be*it/We):0]},be}function Nn(ve,be){var De=wn(ve);if(!be)return De;var Be=o(be),et=_(be);function We(it,Ft){var Ht=De(it,Ft),tr=Ht[1],dr=tr*et/(ve-1)+Be;return[Ht[0]*Be/dr,tr/dr]}return We.invert=function(it,Ft){var Ht=(ve-1)/(ve-1-Ft*et);return De.invert(Ht*it,Ht*Ft*Be)},We}function Yi(){var ve=2,be=0,De=t.geoProjectionMutator(Nn),Be=De(ve,be);return Be.distance=function(et){return arguments.length?De(ve=+et,be):ve},Be.tilt=function(et){return arguments.length?De(ve,be=et*T):be*P},Be.scale(432.147).clipAngle(V(1/ve)*P-1e-6)}var Qi=1e-4,on=1e4,Fi=-180,$n=Fi+Qi,Ca=180,Ra=Ca-Qi,La=-90,Na=La+Qi,Yn=90,Dn=Yn-Qi;function Ka(ve){return ve.length>0}function bo(ve){return Math.floor(ve*on)/on}function Xo(ve){return ve===La||ve===Yn?[0,ve]:[Fi,bo(ve)]}function Ss(ve){var be=ve[0],De=ve[1],Be=!1;return be<=$n?(be=Fi,Be=!0):be>=Ra&&(be=Ca,Be=!0),De<=Na?(De=La,Be=!0):De>=Dn&&(De=Yn,Be=!0),Be?[be,De]:ve}function as(ve){return ve.map(Ss)}function ws(ve,be,De){for(var Be=0,et=ve.length;Be=Ra||dr<=Na||dr>=Dn){We[it]=Ss(Ht);for(var Sr=it+1;Sr$n&&WrNa&&ni=Ft)break;De.push({index:-1,polygon:be,ring:We=We.slice(Sr-1)}),We[0]=Xo(We[0][1]),it=-1,Ft=We.length}}}}function Ho(ve){var be,De=ve.length,Be={},et={},We,it,Ft,Ht,tr;for(be=0;be0?E-Ft:Ft)*P],tr=t.geoProjection(ve(it)).rotate(Ht),dr=t.geoRotation(Ht),Sr=tr.center;return delete tr.rotate,tr.center=function(Or){return arguments.length?Sr(dr(Or)):dr.invert(Sr())},tr.clipAngle(90)}function rs(ve){var be=o(ve);function De(Be,et){var We=t.geoGnomonicRaw(Be,et);return We[0]*=be,We}return De.invert=function(Be,et){return t.geoGnomonicRaw.invert(Be/be,et)},De}function $l(){return Cu([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Cu(ve,be){return ys(rs,ve,be)}function Yu(ve){if(!(ve*=2))return t.geoAzimuthalEquidistantRaw;var be=-ve/2,De=-be,Be=ve*ve,et=b(De),We=.5/_(De);function it(Ft,Ht){var tr=V(o(Ht)*o(Ft-be)),dr=V(o(Ht)*o(Ft-De)),Sr=Ht<0?-1:1;return tr*=tr,dr*=dr,[(tr-dr)/(2*ve),Sr*G(4*Be*dr-(Be-tr+dr)*(Be-tr+dr))/(2*ve)]}return it.invert=function(Ft,Ht){var tr=Ht*Ht,dr=o(G(tr+(Or=Ft+be)*Or)),Sr=o(G(tr+(Or=Ft+De)*Or)),Or,Wr;return[a(Wr=dr-Sr,Or=(dr+Sr)*et),(Ht<0?-1:1)*V(G(Or*Or+Wr*Wr)*We)]},it}function Nc(){return pu([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function pu(ve,be){return ys(Yu,ve,be)}function Uc(ve,be){if(n(be)p&&--Ft>0);return[v(ve)*(G(et*et+4)+et)*E/4,S*it]};function Ku(){return t.geoProjection(hc).scale(127.16)}function ue(ve,be,De,Be,et){function We(it,Ft){var Ht=De*_(Be*Ft),tr=G(1-Ht*Ht),dr=G(2/(1+tr*o(it*=et)));return[ve*tr*dr*_(it),be*Ht*dr]}return We.invert=function(it,Ft){var Ht=it/ve,tr=Ft/be,dr=G(Ht*Ht+tr*tr),Sr=2*O(dr/2);return[a(it*b(Sr),ve*dr)/et,dr&&O(Ft*_(Sr)/(be*De*dr))/Be]},We}function w(ve,be,De,Be){var et=E/3;ve=c(ve,p),be=c(be,p),ve=f(ve,S),be=f(be,E-p),De=c(De,0),De=f(De,100-p),Be=c(Be,p);var We=De/100+1,it=Be/100,Ft=V(We*o(et))/et,Ht=_(ve)/_(Ft*S),tr=be/E,dr=G(it*_(ve/2)/_(be/2)),Sr=dr/G(tr*Ht*Ft),Or=1/(dr*G(tr*Ht*Ft));return ue(Sr,Or,Ht,Ft,tr)}function B(){var ve=65*T,be=60*T,De=20,Be=200,et=t.geoProjectionMutator(w),We=et(ve,be,De,Be);return We.poleline=function(it){return arguments.length?et(ve=+it*T,be,De,Be):ve*P},We.parallels=function(it){return arguments.length?et(ve,be=+it*T,De,Be):be*P},We.inflation=function(it){return arguments.length?et(ve,be,De=+it,Be):De},We.ratio=function(it){return arguments.length?et(ve,be,De,Be=+it):Be},We.scale(163.775)}function Q(){return B().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var ee=4*E+3*G(3),le=2*G(2*E*G(3)/ee),qe=Jt(le*G(3)/E,le,ee/6);function Xe(){return t.geoProjection(qe).scale(176.84)}function ot(ve,be){return[ve*G(1-3*be*be/(E*E)),be]}ot.invert=function(ve,be){return[ve/G(1-3*be*be/(E*E)),be]};function Tt(){return t.geoProjection(ot).scale(152.63)}function Yt(ve,be){var De=o(be),Be=o(ve)*De,et=1-Be,We=o(ve=a(_(ve)*De,-_(be))),it=_(ve);return De=G(1-Be*Be),[it*De-We*et,-We*De-it*et]}Yt.invert=function(ve,be){var De=(ve*ve+be*be)/-2,Be=G(-De*(2+De)),et=be*De+ve*Be,We=ve*De-be*Be,it=G(We*We+et*et);return[a(Be*et,it*(1+De)),it?-O(Be*We/it):0]};function Kt(){return t.geoProjection(Yt).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function xr(ve,be){var De=Ee(ve,be);return[(De[0]+ve/S)/2,(De[1]+be)/2]}xr.invert=function(ve,be){var De=ve,Be=be,et=25;do{var We=o(Be),it=_(Be),Ft=_(2*Be),Ht=it*it,tr=We*We,dr=_(De),Sr=o(De/2),Or=_(De/2),Wr=Or*Or,ni=1-tr*Sr*Sr,Pi=ni?V(We*Sr)*G(cn=1/ni):cn=0,cn,ln=.5*(2*Pi*We*Or+De/S)-ve,Cn=.5*(Pi*it+Be)-be,Kn=.5*cn*(tr*Wr+Pi*We*Sr*Ht)+.5/S,Ta=cn*(dr*Ft/4-Pi*it*Or),fa=.125*cn*(Ft*Or-Pi*it*tr*dr),$a=.5*cn*(Ht*Sr+Pi*Wr*We)+.5,Co=Ta*fa-$a*Kn,Qa=(Cn*Ta-ln*$a)/Co,mo=(ln*fa-Cn*Kn)/Co;De-=Qa,Be-=mo}while((n(Qa)>p||n(mo)>p)&&--et>0);return[De,Be]};function Ir(){return t.geoProjection(xr).scale(158.837)}e.geoNaturalEarth=t.geoNaturalEarth1,e.geoNaturalEarthRaw=t.geoNaturalEarth1Raw,e.geoAiry=_e,e.geoAiryRaw=oe,e.geoAitoff=Ce,e.geoAitoffRaw=Ee,e.geoArmadillo=ie,e.geoArmadilloRaw=me,e.geoAugust=Le,e.geoAugustRaw=Se,e.geoBaker=ge,e.geoBakerRaw=Pe,e.geoBerghaus=ce,e.geoBerghausRaw=Re,e.geoBertin1953=Gt,e.geoBertin1953Raw=lt,e.geoBoggs=Qt,e.geoBoggsRaw=St,e.geoBonne=er,e.geoBonneRaw=mt,e.geoBottomley=Tr,e.geoBottomleyRaw=lr,e.geoBromley=ti,e.geoBromleyRaw=Lr,e.geoChamberlin=tt,e.geoChamberlinRaw=Ge,e.geoChamberlinAfrica=je,e.geoCollignon=Ie,e.geoCollignonRaw=xt,e.geoCraig=ke,e.geoCraigRaw=xe,e.geoCraster=ar,e.geoCrasterRaw=ir,e.geoCylindricalEqualArea=ii,e.geoCylindricalEqualAreaRaw=vr,e.geoCylindricalStereographic=$r,e.geoCylindricalStereographicRaw=pi,e.geoEckert1=ji,e.geoEckert1Raw=di,e.geoEckert2=wi,e.geoEckert2Raw=In,e.geoEckert3=qn,e.geoEckert3Raw=On,e.geoEckert4=ra,e.geoEckert4Raw=Fn,e.geoEckert5=Ut,e.geoEckert5Raw=la,e.geoEckert6=rr,e.geoEckert6Raw=wt,e.geoEisenlohr=Xr,e.geoEisenlohrRaw=Er,e.geoFahey=Oi,e.geoFaheyRaw=Qr,e.geoFoucaut=tn,e.geoFoucautRaw=$i,e.geoFoucautSinusoidal=yn,e.geoFoucautSinusoidalRaw=fn,e.geoGilbert=ua,e.geoGingery=Wo,e.geoGingeryRaw=ma,e.geoGinzburg4=Ha,e.geoGinzburg4Raw=Wn,e.geoGinzburg5=jn,e.geoGinzburg5Raw=vo,e.geoGinzburg6=kr,e.geoGinzburg6Raw=Mt,e.geoGinzburg8=vi,e.geoGinzburg8Raw=Jr,e.geoGinzburg9=An,e.geoGinzburg9Raw=hn,e.geoGringorten=Jn,e.geoGringortenRaw=Li,e.geoGuyou=Fs,e.geoGuyouRaw=Lo,e.geoHammer=pt,e.geoHammerRaw=Ze,e.geoHammerRetroazimuthal=zl,e.geoHammerRetroazimuthalRaw=ll,e.geoHealpix=Zl,e.geoHealpixRaw=cl,e.geoHill=nc,e.geoHillRaw=Su,e.geoHomolosine=xo,e.geoHomolosineRaw=Ol,e.geoHufnagel=Ns,e.geoHufnagelRaw=Yl,e.geoHyperelliptical=Oo,e.geoHyperellipticalRaw=aa,e.geoInterrupt=Do,e.geoInterruptedBoggs=Uf,e.geoInterruptedHomolosine=Zc,e.geoInterruptedMollweide=Os,e.geoInterruptedMollweideHemispheres=oc,e.geoInterruptedSinuMollweide=sc,e.geoInterruptedSinusoidal=Lf,e.geoKavrayskiy7=nf,e.geoKavrayskiy7Raw=cs,e.geoLagrange=Jl,e.geoLagrangeRaw=Vf,e.geoLarrivee=Fu,e.geoLarriveeRaw=lc,e.geoLaskowski=Hs,e.geoLaskowskiRaw=Es,e.geoLittrow=ps,e.geoLittrowRaw=Go,e.geoLoximuthal=xl,e.geoLoximuthalRaw=uc,e.geoMiller=qs,e.geoMillerRaw=Gu,e.geoModifiedStereographic=Bl,e.geoModifiedStereographicRaw=ad,e.geoModifiedStereographicAlaska=Hu,e.geoModifiedStereographicGs48=bl,e.geoModifiedStereographicGs50=Gf,e.geoModifiedStereographicMiller=Ic,e.geoModifiedStereographicLee=yf,e.geoMollweide=wr,e.geoMollweideRaw=sr,e.geoMtFlatPolarParabolic=Yc,e.geoMtFlatPolarParabolicRaw=_f,e.geoMtFlatPolarQuartic=th,e.geoMtFlatPolarQuarticRaw=eh,e.geoMtFlatPolarSinusoidal=Hf,e.geoMtFlatPolarSinusoidalRaw=ju,e.geoNaturalEarth2=of,e.geoNaturalEarth2Raw=cc,e.geoNellHammer=Kc,e.geoNellHammerRaw=Nl,e.geoInterruptedQuarticAuthalic=gs,e.geoNicolosi=Gh,e.geoNicolosiRaw=jf,e.geoPatterson=hu,e.geoPattersonRaw=bc,e.geoPolyconic=nl,e.geoPolyconicRaw=_u,e.geoPolyhedral=xf,e.geoPolyhedralButterfly=Cs,e.geoPolyhedralCollignon=Wf,e.geoPolyhedralWaterman=Us,e.geoProject=Wl,e.geoGringortenQuincuncial=At,e.geoPeirceQuincuncial=Wt,e.geoPierceQuincuncial=Wt,e.geoQuantize=Cr,e.geoQuincuncial=Bc,e.geoRectangularPolyconic=Kr,e.geoRectangularPolyconicRaw=Ar,e.geoRobinson=dn,e.geoRobinsonRaw=Xi,e.geoSatellite=Yi,e.geoSatelliteRaw=Nn,e.geoSinuMollweide=Vu,e.geoSinuMollweideRaw=_a,e.geoSinusoidal=It,e.geoSinusoidalRaw=_t,e.geoStitch=Ls,e.geoTimes=no,e.geoTimesRaw=va,e.geoTwoPointAzimuthal=Cu,e.geoTwoPointAzimuthalRaw=rs,e.geoTwoPointAzimuthalUsa=$l,e.geoTwoPointEquidistant=pu,e.geoTwoPointEquidistantRaw=Yu,e.geoTwoPointEquidistantUsa=Nc,e.geoVanDerGrinten=xu,e.geoVanDerGrintenRaw=Uc,e.geoVanDerGrinten2=Ua,e.geoVanDerGrinten2Raw=Ac,e.geoVanDerGrinten3=Vc,e.geoVanDerGrinten3Raw=oo,e.geoVanDerGrinten4=Ku,e.geoVanDerGrinten4Raw=hc,e.geoWagner=B,e.geoWagner7=Q,e.geoWagnerRaw=w,e.geoWagner4=Xe,e.geoWagner4Raw=qe,e.geoWagner6=Tt,e.geoWagner6Raw=ot,e.geoWiechel=Kt,e.geoWiechelRaw=Yt,e.geoWinkel3=Ir,e.geoWinkel3Raw=xr,Object.defineProperty(e,"__esModule",{value:!0})})});var zDe=ye((xmr,FDe)=>{"use strict";var id=Oa(),DZ=Dr(),Mzt=qa(),$A=Math.PI/180,W2=180/Math.PI,zZ={cursor:"pointer"},OZ={cursor:"auto"};function Ezt(e,t){var r=e.projection,n;return t._isScoped?n=kzt:t._isClipped?n=Lzt:n=Czt,n(e,r)}FDe.exports=Ezt;function qZ(e,t){return id.behavior.zoom().translate(t.translate()).scale(t.scale())}function BZ(e,t,r){var n=e.id,i=e.graphDiv,a=i.layout,o=a[n],s=i._fullLayout,l=s[n],u={},c={};function f(h,d){u[n+"."+h]=DZ.nestedProperty(o,h).get(),Mzt.call("_storeDirectGUIEdit",a,s._preGUI,u);var v=DZ.nestedProperty(l,h);v.get()!==d&&(v.set(d),DZ.nestedProperty(o,h).set(d),c[n+"."+h]=d)}r(f),f("projection.scale",t.scale()/e.fitScale),f("fitbounds",!1),i.emit("plotly_relayout",c)}function kzt(e,t){var r=qZ(e,t);function n(){id.select(this).style(zZ)}function i(){t.scale(id.event.scale).translate(id.event.translate),e.render(!0);var s=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":s[0],"geo.center.lat":s[1]})}function a(s){var l=t.invert(e.midPt);s("center.lon",l[0]),s("center.lat",l[1])}function o(){id.select(this).style(OZ),BZ(e,t,a)}return r.on("zoomstart",n).on("zoom",i).on("zoomend",o),r}function Czt(e,t){var r=qZ(e,t),n=2,i,a,o,s,l,u,c,f,h;function d(E){return t.invert(E)}function v(E){var S=d(E);if(!S)return!0;var L=t(S);return Math.abs(L[0]-E[0])>n||Math.abs(L[1]-E[1])>n}function _(){id.select(this).style(zZ),i=id.mouse(this),a=t.rotate(),o=t.translate(),s=a,l=d(i)}function b(){if(u=id.mouse(this),v(i)){r.scale(t.scale()),r.translate(t.translate());return}t.scale(id.event.scale),t.translate([o[0],id.event.translate[1]]),l?d(u)&&(f=d(u),c=[s[0]+(f[0]-l[0]),a[1],a[2]],t.rotate(c),s=c):(i=u,l=d(i)),h=!0,e.render(!0);var E=t.rotate(),S=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":S[0],"geo.center.lat":S[1],"geo.projection.rotation.lon":-E[0]})}function p(){id.select(this).style(OZ),h&&BZ(e,t,k)}function k(E){var S=t.rotate(),L=t.invert(e.midPt);E("projection.rotation.lon",-S[0]),E("center.lon",L[0]),E("center.lat",L[1])}return r.on("zoomstart",_).on("zoom",b).on("zoomend",p),r}function Lzt(e,t){var r={r:t.rotate(),k:t.scale()},n=qZ(e,t),i=qzt(n,"zoomstart","zoom","zoomend"),a=0,o=n.on,s;n.on("zoomstart",function(){id.select(this).style(zZ);var h=id.mouse(this),d=t.rotate(),v=d,_=t.translate(),b=Pzt(d);s=IF(t,h),o.call(n,"zoom",function(){var p=id.mouse(this);if(t.scale(r.k=id.event.scale),!s)h=p,s=IF(t,h);else if(IF(t,p)){t.rotate(d).translate(_);var k=IF(t,p),E=Rzt(s,k),S=Fzt(Izt(b,E)),L=r.r=Dzt(S,s,v);(!isFinite(L[0])||!isFinite(L[1])||!isFinite(L[2]))&&(L=v),t.rotate(L),v=L}u(i.of(this,arguments))}),l(i.of(this,arguments))}).on("zoomend",function(){id.select(this).style(OZ),o.call(n,"zoom",null),c(i.of(this,arguments)),BZ(e,t,f)}).on("zoom.redraw",function(){e.render(!0);var h=t.rotate();e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.projection.rotation.lon":-h[0],"geo.projection.rotation.lat":-h[1]})});function l(h){a++||h({type:"zoomstart"})}function u(h){h({type:"zoom"})}function c(h){--a||h({type:"zoomend"})}function f(h){var d=t.rotate();h("projection.rotation.lon",-d[0]),h("projection.rotation.lat",-d[1])}return id.rebind(n,i,"on")}function IF(e,t){var r=e.invert(t);return r&&isFinite(r[0])&&isFinite(r[1])&&zzt(r)}function Pzt(e){var t=.5*e[0]*$A,r=.5*e[1]*$A,n=.5*e[2]*$A,i=Math.sin(t),a=Math.cos(t),o=Math.sin(r),s=Math.cos(r),l=Math.sin(n),u=Math.cos(n);return[a*s*u+i*o*l,i*s*u-a*o*l,a*o*u+i*s*l,a*s*l-i*o*u]}function Izt(e,t){var r=e[0],n=e[1],i=e[2],a=e[3],o=t[0],s=t[1],l=t[2],u=t[3];return[r*o-n*s-i*l-a*u,r*s+n*o+i*u-a*l,r*l-n*u+i*o+a*s,r*u+n*l-i*s+a*o]}function Rzt(e,t){if(!(!e||!t)){var r=Ozt(e,t),n=Math.sqrt(DDe(r,r)),i=.5*Math.acos(Math.max(-1,Math.min(1,DDe(e,t)))),a=Math.sin(i)/n;return n&&[Math.cos(i),r[2]*a,-r[1]*a,r[0]*a]}}function Dzt(e,t,r){var n=FZ(t,2,e[0]);n=FZ(n,1,e[1]),n=FZ(n,0,e[2]-r[2]);var i=t[0],a=t[1],o=t[2],s=n[0],l=n[1],u=n[2],c=Math.atan2(a,i)*W2,f=Math.sqrt(i*i+a*a),h,d;Math.abs(l)>f?(d=(l>0?90:-90)-c,h=0):(d=Math.asin(l/f)*W2-c,h=Math.sqrt(f*f-l*l));var v=180-d-2*c,_=(Math.atan2(u,s)-Math.atan2(o,h))*W2,b=(Math.atan2(u,s)-Math.atan2(o,-h))*W2,p=IDe(r[0],r[1],d,_),k=IDe(r[0],r[1],v,b);return p<=k?[d,_,r[2]]:[v,b,r[2]]}function IDe(e,t,r,n){var i=RDe(r-e),a=RDe(n-t);return Math.sqrt(i*i+a*a)}function RDe(e){return(e%360+540)%360-180}function FZ(e,t,r){var n=r*$A,i=e.slice(),a=t===0?1:0,o=t===2?1:2,s=Math.cos(n),l=Math.sin(n);return i[a]=e[a]*s-e[o]*l,i[o]=e[o]*s+e[a]*l,i}function Fzt(e){return[Math.atan2(2*(e[0]*e[1]+e[2]*e[3]),1-2*(e[1]*e[1]+e[2]*e[2]))*W2,Math.asin(Math.max(-1,Math.min(1,2*(e[0]*e[2]-e[3]*e[1]))))*W2,Math.atan2(2*(e[0]*e[3]+e[1]*e[2]),1-2*(e[2]*e[2]+e[3]*e[3]))*W2]}function zzt(e){var t=e[0]*$A,r=e[1]*$A,n=Math.cos(r);return[n*Math.cos(t),n*Math.sin(t),Math.sin(r)]}function DDe(e,t){for(var r=0,n=0,i=e.length;n{"use strict";var t1=Oa(),VZ=RZ(),Bzt=VZ.geoPath,Nzt=VZ.geoDistance,Uzt=PDe(),Vzt=qa(),ok=Dr(),Gzt=ok.strTranslate,RF=ka(),ak=So(),ODe=vf(),Hzt=Mc(),UZ=ho(),qDe=Ag().getAutoRange,NZ=yv(),jzt=Of().prepSelect,Wzt=Of().clearOutline,Xzt=Of().selectOnClick,Zzt=zDe(),fp=tk(),Yzt=ix(),NDe=mF(),Kzt=yZ().feature;function UDe(e){this.id=e.id,this.graphDiv=e.graphDiv,this.container=e.container,this.topojsonURL=e.topojsonURL,this.isStatic=e.staticPlot,this.topojsonName=null,this.topojson=null,this.projection=null,this.scope=null,this.viewInitial=null,this.fitScale=null,this.bounds=null,this.midPt=null,this.hasChoropleth=!1,this.traceHash={},this.layers={},this.basePaths={},this.dataPaths={},this.dataPoints={},this.clipDef=null,this.clipRect=null,this.bgRect=null,this.makeFramework()}var Qg=UDe.prototype;VDe.exports=function(t){return new UDe(t)};Qg.plot=function(e,t,r,n){var i=this;if(n)return i.update(e,t,!0);i._geoCalcData=e,i._fullLayout=t;var a=t[this.id],o=[],s=!1;for(var l in fp.layerNameToAdjective)if(l!=="frame"&&a["show"+l]){s=!0;break}for(var u=!1,c=0;c0&&o._module.calcGeoJSON(a,t)}if(!r){var s=this.updateProjection(e,t);if(s)return;(!this.viewInitial||this.scope!==n.scope)&&this.saveViewInitial(n)}this.scope=n.scope,this.updateBaseLayers(t,n),this.updateDims(t,n),this.updateFx(t,n),Hzt.generalUpdatePerTraceModule(this.graphDiv,this,e,n);var l=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=l.selectAll(".point"),this.dataPoints.text=l.selectAll("text"),this.dataPaths.line=l.selectAll(".js-line");var u=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=u.selectAll("path"),this._render()};Qg.updateProjection=function(e,t){var r=this.graphDiv,n=t[this.id],i=t._size,a=n.domain,o=n.projection,s=n.lonaxis,l=n.lataxis,u=s._ax,c=l._ax,f=this.projection=Jzt(n),h=[[i.l+i.w*a.x[0],i.t+i.h*(1-a.y[1])],[i.l+i.w*a.x[1],i.t+i.h*(1-a.y[0])]],d=n.center||{},v=o.rotation||{},_=s.range||[],b=l.range||[];if(n.fitbounds){u._length=h[1][0]-h[0][0],c._length=h[1][1]-h[0][1],u.range=qDe(r,u),c.range=qDe(r,c);var p=(u.range[0]+u.range[1])/2,k=(c.range[0]+c.range[1])/2;if(n._isScoped)d={lon:p,lat:k};else if(n._isClipped){d={lon:p,lat:k},v={lon:p,lat:k,roll:v.roll};var E=o.type,S=fp.lonaxisSpan[E]/2||180,L=fp.lataxisSpan[E]/2||90;_=[p-S,p+S],b=[k-L,k+L]}else d={lon:p,lat:k},v={lon:p,lat:v.lat,roll:v.roll}}f.center([d.lon-v.lon,d.lat-v.lat]).rotate([-v.lon,-v.lat,v.roll]).parallels(o.parallels);var x=BDe(_,b);f.fitExtent(h,x);var C=this.bounds=f.getBounds(x),M=this.fitScale=f.scale(),g=f.translate();if(n.fitbounds){var P=f.getBounds(BDe(u.range,c.range)),T=Math.min((C[1][0]-C[0][0])/(P[1][0]-P[0][0]),(C[1][1]-C[0][1])/(P[1][1]-P[0][1]));isFinite(T)?f.scale(T*M):ok.warn("Something went wrong during"+this.id+"fitbounds computations.")}else f.scale(o.scale*M);var z=this.midPt=[(C[0][0]+C[1][0])/2,(C[0][1]+C[1][1])/2];if(f.translate([g[0]+(z[0]-g[0]),g[1]+(z[1]-g[1])]).clipExtent(C),n._isAlbersUsa){var O=f([d.lon,d.lat]),V=f.translate();f.translate([V[0]-(O[0]-V[0]),V[1]-(O[1]-V[1])])}};Qg.updateBaseLayers=function(e,t){var r=this,n=r.topojson,i=r.layers,a=r.basePaths;function o(h){return h==="lonaxis"||h==="lataxis"}function s(h){return!!fp.lineLayers[h]}function l(h){return!!fp.fillLayers[h]}var u=this.hasChoropleth?fp.layersForChoropleth:fp.layers,c=u.filter(function(h){return s(h)||l(h)?t["show"+h]:o(h)?t[h].showgrid:!0}),f=r.framework.selectAll(".layer").data(c,String);f.exit().each(function(h){delete i[h],delete a[h],t1.select(this).remove()}),f.enter().append("g").attr("class",function(h){return"layer "+h}).each(function(h){var d=i[h]=t1.select(this);h==="bg"?r.bgRect=d.append("rect").style("pointer-events","all"):o(h)?a[h]=d.append("path").style("fill","none"):h==="backplot"?d.append("g").classed("choroplethlayer",!0):h==="frontplot"?d.append("g").classed("scatterlayer",!0):s(h)?a[h]=d.append("path").style("fill","none").style("stroke-miterlimit",2):l(h)&&(a[h]=d.append("path").style("stroke","none"))}),f.order(),f.each(function(h){var d=a[h],v=fp.layerNameToAdjective[h];h==="frame"?d.datum(fp.sphereSVG):s(h)||l(h)?d.datum(Kzt(n,n.objects[h])):o(h)&&d.datum($zt(h,t,e)).call(RF.stroke,t[h].gridcolor).call(ak.dashLine,t[h].griddash,t[h].gridwidth),s(h)?d.call(RF.stroke,t[v+"color"]).call(ak.dashLine,"",t[v+"width"]):l(h)&&d.call(RF.fill,t[v+"color"])})};Qg.updateDims=function(e,t){var r=this.bounds,n=(t.framewidth||0)/2,i=r[0][0]-n,a=r[0][1]-n,o=r[1][0]-i+n,s=r[1][1]-a+n;ak.setRect(this.clipRect,i,a,o,s),this.bgRect.call(ak.setRect,i,a,o,s).call(RF.fill,t.bgcolor),this.xaxis._offset=i,this.xaxis._length=o,this.yaxis._offset=a,this.yaxis._length=s};Qg.updateFx=function(e,t){var r=this,n=r.graphDiv,i=r.bgRect,a=e.dragmode,o=e.clickmode;if(r.isStatic)return;function s(){var f=r.viewInitial,h={};for(var d in f)h[r.id+"."+d]=f[d];Vzt.call("_guiRelayout",n,h),n.emit("plotly_doubleclick",null)}function l(f){return r.projection.invert([f[0]+r.xaxis._offset,f[1]+r.yaxis._offset])}var u=function(f,h){if(h.isRect){var d=f.range={};d[r.id]=[l([h.xmin,h.ymin]),l([h.xmax,h.ymax])]}else{var v=f.lassoPoints={};v[r.id]=h.map(l)}},c={element:r.bgRect.node(),gd:n,plotinfo:{id:r.id,xaxis:r.xaxis,yaxis:r.yaxis,fillRangeItems:u},xaxes:[r.xaxis],yaxes:[r.yaxis],subplot:r.id,clickFn:function(f){f===2&&Wzt(n)}};a==="pan"?(i.node().onmousedown=null,i.call(Zzt(r,t)),i.on("dblclick.zoom",s),n._context._scrollZoom.geo||i.on("wheel.zoom",null)):(a==="select"||a==="lasso")&&(i.on(".zoom",null),c.prepFn=function(f,h,d){jzt(f,h,d,c,a)},NZ.init(c)),i.on("mousemove",function(){var f=r.projection.invert(ok.getPositionFromD3Event());if(!f)return NZ.unhover(n,t1.event);r.xaxis.p2c=function(){return f[0]},r.yaxis.p2c=function(){return f[1]},ODe.hover(n,t1.event,r.id)}),i.on("mouseout",function(){n._dragging||NZ.unhover(n,t1.event)}),i.on("click",function(){a!=="select"&&a!=="lasso"&&(o.indexOf("select")>-1&&Xzt(t1.event,n,[r.xaxis],[r.yaxis],r.id,c),o.indexOf("event")>-1&&ODe.click(n,t1.event))})};Qg.makeFramework=function(){var e=this,t=e.graphDiv,r=t._fullLayout,n="clip"+r._uid+e.id;e.clipDef=r._clips.append("clipPath").attr("id",n),e.clipRect=e.clipDef.append("rect"),e.framework=t1.select(e.container).append("g").attr("class","geo "+e.id).call(ak.setClipUrl,n,t),e.project=function(i){var a=e.projection(i);return a?[a[0]-e.xaxis._offset,a[1]-e.yaxis._offset]:[null,null]},e.xaxis={_id:"x",c2p:function(i){return e.project(i)[0]}},e.yaxis={_id:"y",c2p:function(i){return e.project(i)[1]}},e.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},UZ.setConvert(e.mockAxis,r)};Qg.saveViewInitial=function(e){var t=e.center||{},r=e.projection,n=r.rotation||{};this.viewInitial={fitbounds:e.fitbounds,"projection.scale":r.scale};var i;e._isScoped?i={"center.lon":t.lon,"center.lat":t.lat}:e._isClipped?i={"projection.rotation.lon":n.lon,"projection.rotation.lat":n.lat}:i={"center.lon":t.lon,"center.lat":t.lat,"projection.rotation.lon":n.lon},ok.extendFlat(this.viewInitial,i)};Qg.render=function(e){this._hasMarkerAngles&&e?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()};Qg._render=function(){var e=this.projection,t=e.getPath(),r;function n(a){var o=e(a.lonlat);return o?Gzt(o[0],o[1]):null}function i(a){return e.isLonLatOverEdges(a.lonlat)?"none":null}for(r in this.basePaths)this.basePaths[r].attr("d",t);for(r in this.dataPaths)this.dataPaths[r].attr("d",function(a){return t(a.geojson)});for(r in this.dataPoints)this.dataPoints[r].attr("display",i).attr("transform",n)};function Jzt(e){var t=e.projection,r=t.type,n=fp.projNames[r];n="geo"+ok.titleCase(n);for(var i=VZ[n]||Uzt[n],a=i(),o=e._isSatellite?Math.acos(1/t.distance)*180/Math.PI:e._isClipped?fp.lonaxisSpan[r]/2:null,s=["center","rotate","parallels","clipExtent"],l=function(f){return f?a:[]},u=0;uv}else return!1},a.getPath=function(){return Bzt().projection(a)},a.getBounds=function(f){return a.getPath().bounds(f)},a.precision(fp.precision),e._isSatellite&&a.tilt(t.tilt).distance(t.distance),o&&a.clipAngle(o-fp.clipPad),a}function $zt(e,t,r){var n=1e-6,i=2.5,a=t[e],o=fp.scopeDefaults[t.scope],s,l,u;e==="lonaxis"?(s=o.lonaxisRange,l=o.lataxisRange,u=function(k,E){return[k,E]}):e==="lataxis"&&(s=o.lataxisRange,l=o.lonaxisRange,u=function(k,E){return[E,k]});var c={type:"linear",range:[s[0],s[1]-n],tick0:a.tick0,dtick:a.dtick};UZ.setConvert(c,r);var f=UZ.calcTicks(c);!t.isScoped&&e==="lonaxis"&&f.pop();for(var h=f.length,d=new Array(h),v=0;v0&&i<0&&(i+=360);var s=(i-n)/4;return{type:"Polygon",coordinates:[[[n,a],[n,o],[n+s,o],[n+2*s,o],[n+3*s,o],[i,o],[i,a],[i-s,a],[i-2*s,a],[i-3*s,a],[n,a]]]}}});var GZ=ye((wmr,WDe)=>{"use strict";var e5=Lh(),Qzt=Cc().attributes,e7t=Pd().dash,QA=tk(),t7t=mc().overrideAll,HDe=Z1(),jDe={range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},showgrid:{valType:"boolean",dflt:!1},tick0:{valType:"number",dflt:0},dtick:{valType:"number"},gridcolor:{valType:"color",dflt:e5.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:e7t},r7t=WDe.exports=t7t({domain:Qzt({name:"geo"},{}),fitbounds:{valType:"enumerated",values:[!1,"locations","geojson"],dflt:!1,editType:"plot"},resolution:{valType:"enumerated",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:"enumerated",values:HDe(QA.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:HDe(QA.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:e5.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:QA.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:QA.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:QA.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:QA.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:e5.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:e5.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:e5.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:e5.background},lonaxis:jDe,lataxis:jDe},"plot","from-root");r7t.uirevision={valType:"any",editType:"none"}});var YDe=ye((Tmr,ZDe)=>{"use strict";var DF=Dr(),i7t=k_(),n7t=Id().getSubplotData,FF=tk(),a7t=GZ(),XDe=FF.axesNames;ZDe.exports=function(t,r,n){i7t(t,r,n,{type:"geo",attributes:a7t,handleDefaults:o7t,fullData:n,partition:"y"})};function o7t(e,t,r,n){var i=n7t(n.fullData,"geo",n.id),a=i.map(function(oe){return oe.index}),o=r("resolution"),s=r("scope"),l=FF.scopeDefaults[s],u=r("projection.type",l.projType),c=t._isAlbersUsa=u==="albers usa";c&&(s=t.scope="usa");var f=t._isScoped=s!=="world",h=t._isSatellite=u==="satellite",d=t._isConic=u.indexOf("conic")!==-1||u==="albers",v=t._isClipped=!!FF.lonaxisSpan[u];if(e.visible===!1){var _=DF.extendDeep({},t._template);_.showcoastlines=!1,_.showcountries=!1,_.showframe=!1,_.showlakes=!1,_.showland=!1,_.showocean=!1,_.showrivers=!1,_.showsubunits=!1,_.lonaxis&&(_.lonaxis.showgrid=!1),_.lataxis&&(_.lataxis.showgrid=!1),t._template=_}for(var b=r("visible"),p,k=0;k0&&O<0&&(O+=360);var V=(z+O)/2,G;if(!c){var Z=f?l.projRotate:[V,0,0];G=r("projection.rotation.lon",Z[0]),r("projection.rotation.lat",Z[1]),r("projection.rotation.roll",Z[2]),p=r("showcoastlines",!f&&b),p&&(r("coastlinecolor"),r("coastlinewidth")),p=r("showocean",b?void 0:!1),p&&r("oceancolor")}var j,N;if(c?(j=-96.6,N=38.7):(j=f?V:G,N=(T[0]+T[1])/2),r("center.lon",j),r("center.lat",N),h&&(r("projection.tilt"),r("projection.distance")),d){var H=l.projParallels||[0,60];r("projection.parallels",H)}r("projection.scale"),p=r("showland",b?void 0:!1),p&&r("landcolor"),p=r("showlakes",b?void 0:!1),p&&r("lakecolor"),p=r("showrivers",b?void 0:!1),p&&(r("rivercolor"),r("riverwidth")),p=r("showcountries",f&&s!=="usa"&&b),p&&(r("countrycolor"),r("countrywidth")),(s==="usa"||s==="north america"&&o===50)&&(r("showsubunits",b),r("subunitcolor"),r("subunitwidth")),f||(p=r("showframe",b),p&&(r("framecolor"),r("framewidth"))),r("bgcolor");var te=r("fitbounds");te&&(delete t.projection.scale,f?(delete t.center.lon,delete t.center.lat):v?(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon,delete t.projection.rotation.lat,delete t.lonaxis.range,delete t.lataxis.range):(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon))}});var HZ=ye((Amr,$De)=>{"use strict";var s7t=Id().getSubplotCalcData,l7t=Dr().counterRegex,u7t=GDe(),Xm="geo",KDe=l7t(Xm),JDe={};JDe[Xm]={valType:"subplotid",dflt:Xm,editType:"calc"};function c7t(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[Xm],i=0;i{"use strict";QDe.exports={attributes:j2(),supplyDefaults:DRe(),colorbar:$d(),formatLabels:ORe(),calc:pF(),calcGeoJSON:IZ().calcGeoJSON,plot:IZ().plot,style:kZ(),styleOnSelect:op().styleOnSelect,hoverPoints:wDe(),eventData:ADe(),selectPoints:EDe(),moduleType:"trace",name:"scattergeo",basePlotModule:HZ(),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}});var rFe=ye((Mmr,tFe)=>{"use strict";tFe.exports=eFe()});var t5=ye((Emr,aFe)=>{"use strict";var{hovertemplateAttrs:d7t,templatefallbackAttrs:v7t}=Ll(),ax=j2(),p7t=Tu(),iFe=Gl(),g7t=Lh().defaultLine,nx=Ao().extendFlat,nFe=ax.marker.line;aFe.exports=nx({locations:{valType:"data_array",editType:"calc"},locationmode:ax.locationmode,z:{valType:"data_array",editType:"calc"},geojson:nx({},ax.geojson,{}),featureidkey:ax.featureidkey,text:nx({},ax.text,{}),hovertext:nx({},ax.hovertext,{}),marker:{line:{color:nx({},nFe.color,{dflt:g7t}),width:nx({},nFe.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:ax.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:ax.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:nx({},iFe.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:d7t(),hovertemplatefallback:v7t(),showlegend:nx({},iFe.showlegend,{dflt:!1})},p7t("",{cLetter:"z",editTypeOverride:"calc"}))});var sFe=ye((kmr,oFe)=>{"use strict";var sk=Dr(),m7t=Qh(),y7t=t5(),_7t=["The library used by the *country names* `locationmode` option is changing in the next major version.","Some country names in existing plots may not work in the new version.","To ensure consistent behavior, consider setting `locationmode` to *ISO-3*."].join(" ");oFe.exports=function(t,r,n,i){function a(h,d){return sk.coerce(t,r,y7t,h,d)}var o=a("locations"),s=a("z");if(!(o&&o.length&&sk.isArrayOrTypedArray(s)&&s.length)){r.visible=!1;return}r._length=Math.min(o.length,s.length);var l=a("geojson"),u;(typeof l=="string"&&l!==""||sk.isPlainObject(l))&&(u="geojson-id");var c=a("locationmode",u);c==="country names"&&sk.warn(_7t),c==="geojson-id"&&a("featureidkey"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var f=a("marker.line.width");f&&a("marker.line.color"),a("marker.opacity"),m7t(t,r,i,a,{prefix:"",cLetter:"z"}),sk.coerceSelectionMarkerOpacity(r,a)}});var zF=ye((Cmr,cFe)=>{"use strict";var lFe=Eo(),x7t=fs().BADNUM,b7t=gv(),w7t=km(),T7t=z0();function uFe(e){return e&&typeof e=="string"}cFe.exports=function(t,r){var n=r._length,i=new Array(n),a;r.geojson?a=function(c){return uFe(c)||lFe(c)}:a=uFe;for(var o=0;o{"use strict";var A7t=Oa(),S7t=ka(),jZ=So(),M7t=tc();function E7t(e,t){t&&fFe(e,t)}function fFe(e,t){var r=t[0].trace,n=t[0].node3,i=n.selectAll(".choroplethlocation"),a=r.marker||{},o=a.line||{},s=M7t.makeColorScaleFuncFromTrace(r);i.each(function(l){A7t.select(this).attr("fill",s(l.z)).call(S7t.stroke,l.mlc||o.color).call(jZ.dashLine,"",l.mlw||o.width||0).style("opacity",a.opacity)}),jZ.selectedPointStyle(i,r)}function k7t(e,t){var r=t[0].node3,n=t[0].trace;n.selectedpoints?jZ.selectedPointStyle(r.selectAll(".choroplethlocation"),n):fFe(e,t)}hFe.exports={style:E7t,styleOnSelect:k7t}});var WZ=ye((Pmr,pFe)=>{"use strict";var C7t=Oa(),dFe=Dr(),r5=ix(),L7t=mF().getTopojsonFeatures,vFe=Ag().findExtremes,P7t=OF().style;function I7t(e,t,r){var n=t.layers.backplot.select(".choroplethlayer");dFe.makeTraceGroups(n,r,"trace choropleth").each(function(i){var a=C7t.select(this),o=a.selectAll("path.choroplethlocation").data(dFe.identity);o.enter().append("path").classed("choroplethlocation",!0),o.exit().remove(),P7t(e,i)})}function R7t(e,t){for(var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r.locationmode,o=r._length,s=a==="geojson-id"?r5.extractTraceFeature(e):L7t(r,i.topojson),l=[],u=[],c=0;c{"use strict";var D7t=ho(),F7t=t5(),z7t=Dr().fillText;gFe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.subplot,s,l,u,c,f=[r,n],h=[r+360,n];for(l=0;l")}}});var BF=ye((Rmr,mFe)=>{"use strict";mFe.exports=function(t,r,n,i,a){t.location=r.location,t.z=r.z;var o=i[a];return o.fIn&&o.fIn.properties&&(t.properties=o.fIn.properties),t.ct=o.ct,t}});var NF=ye((Dmr,yFe)=>{"use strict";yFe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l,u,c,f;if(r===!1)for(s=0;s{"use strict";_Fe.exports={attributes:t5(),supplyDefaults:sFe(),colorbar:S_(),calc:zF(),calcGeoJSON:WZ().calcGeoJSON,plot:WZ().plot,style:OF().style,styleOnSelect:OF().styleOnSelect,hoverPoints:qF(),eventData:BF(),selectPoints:NF(),moduleType:"trace",name:"choropleth",basePlotModule:HZ(),categories:["geo","noOpacity","showLegend"],meta:{}}});var wFe=ye((zmr,bFe)=>{"use strict";bFe.exports=xFe()});var UF=ye((Omr,AFe)=>{"use strict";var q7t=qa(),s0=Dr(),B7t=cT();function N7t(e,t,r,n){var i=e.cd,a=i[0].t,o=i[0].trace,s=e.xa,l=e.ya,u=a.x,c=a.y,f=s.c2p(t),h=l.c2p(r),d=e.distance,v;if(a.tree){var _=s.p2c(f-d),b=s.p2c(f+d),p=l.p2c(h-d),k=l.p2c(h+d);n==="x"?v=a.tree.range(Math.min(_,b),Math.min(l._rl[0],l._rl[1]),Math.max(_,b),Math.max(l._rl[0],l._rl[1])):v=a.tree.range(Math.min(_,b),Math.min(p,k),Math.max(_,b),Math.max(p,k))}else v=a.ids;var E,S,L,x,C,M,g,P,T,z=d;if(n==="x"){var O=!!o.xperiodalignment,V=!!o.yperiodalignment;for(C=0;C=Math.min(G,Z)&&f<=Math.max(G,Z)?0:1/0}if(M=Math.min(j,N)&&h<=Math.max(j,N)?0:1/0}T=Math.sqrt(M*M+g*g),S=v[C]}}}else for(C=v.length-1;C>-1;C--)E=v[C],L=u[E],x=c[E],M=s.c2p(L)-f,g=l.c2p(x)-h,P=Math.sqrt(M*M+g*g),P{"use strict";var SFe=20;MFe.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:SFe,SYMBOL_STROKE:SFe/20,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}});var lk=ye((Bmr,LFe)=>{"use strict";var U7t=Gl(),V7t=ec(),G7t=Cg(),mf=pf(),EFe=df().axisHoverFormat,kFe=Tu(),H7t=Z1(),XZ=Ao().extendFlat,j7t=mc().overrideAll,W7t=ox().DASHES,CFe=mf.line,r1=mf.marker,X7t=r1.line,sx=LFe.exports=j7t({x:mf.x,x0:mf.x0,dx:mf.dx,y:mf.y,y0:mf.y0,dy:mf.dy,xperiod:mf.xperiod,yperiod:mf.yperiod,xperiod0:mf.xperiod0,yperiod0:mf.yperiod0,xperiodalignment:mf.xperiodalignment,yperiodalignment:mf.yperiodalignment,xhoverformat:EFe("x"),yhoverformat:EFe("y"),text:mf.text,hovertext:mf.hovertext,textposition:mf.textposition,textfont:V7t({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,noNumericWeightValues:!0,variantValues:["normal","small-caps"]}),mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"]},line:{color:CFe.color,width:CFe.width,shape:{valType:"enumerated",values:["linear","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},dash:{valType:"enumerated",values:H7t(W7t),dflt:"solid"}},marker:XZ({},kFe("marker"),{symbol:r1.symbol,angle:r1.angle,size:r1.size,sizeref:r1.sizeref,sizemin:r1.sizemin,sizemode:r1.sizemode,opacity:r1.opacity,colorbar:r1.colorbar,line:XZ({},kFe("marker.line"),{width:X7t.width})}),connectgaps:mf.connectgaps,fill:XZ({},mf.fill,{dflt:"none"}),fillcolor:G7t(),selected:{marker:mf.selected.marker,textfont:mf.selected.textfont},unselected:{marker:mf.unselected.marker,textfont:mf.unselected.textfont},opacity:U7t.opacity},"calc","nested");sx.x.editType=sx.y.editType=sx.x0.editType=sx.y0.editType="calc+clearAxisTypes";sx.hovertemplate=mf.hovertemplate;sx.hovertemplatefallback=mf.hovertemplatefallback;sx.texttemplate=mf.texttemplate;sx.texttemplatefallback=mf.texttemplatefallback});var VF=ye(ZZ=>{"use strict";var PFe=ox();ZZ.isOpenSymbol=function(e){return typeof e=="string"?PFe.OPEN_RE.test(e):e%200>100};ZZ.isDotSymbol=function(e){return typeof e=="string"?PFe.DOT_RE.test(e):e>200}});var DFe=ye((Umr,RFe)=>{"use strict";var IFe=Dr(),Z7t=qa(),Y7t=VF(),K7t=lk(),J7t=Sm(),GF=Ru(),$7t=eT(),Q7t=Ig(),e9t=$p(),t9t=R0(),r9t=Rg(),i9t=D0();RFe.exports=function(t,r,n,i){function a(d,v){return IFe.coerce(t,r,K7t,d,v)}var o=t.marker?Y7t.isOpenSymbol(t.marker.symbol):!1,s=GF.isBubble(t),l=$7t(t,r,i,a);if(!l){r.visible=!1;return}Q7t(t,r,i,a),a("xhoverformat"),a("yhoverformat");var u=l{"use strict";var n9t=nI();FFe.exports=function(t,r,n){var i=t.i;return"x"in t||(t.x=r._x[i]),"y"in t||(t.y=r._y[i]),n9t(t,r,n)}});var qFe=ye((Gmr,OFe)=>{"use strict";function a9t(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l>=0?(a=o,i=o-1):n=o+1}return a}function o9t(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l>0?(a=o,i=o-1):n=o+1}return a}function s9t(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l<0?(a=o,n=o+1):i=o-1}return a}function l9t(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l<=0?(a=o,n=o+1):i=o-1}return a}function u9t(e,t,r,n,i){for(;n<=i;){var a=n+i>>>1,o=e[a],s=r!==void 0?r(o,t):o-t;if(s===0)return a;s<=0?n=a+1:i=a-1}return-1}function uk(e,t,r,n,i,a){return typeof r=="function"?a(e,t,r,n===void 0?0:n|0,i===void 0?e.length-1:i|0):a(e,t,void 0,r===void 0?0:r|0,n===void 0?e.length-1:n|0)}OFe.exports={ge:function(e,t,r,n,i){return uk(e,t,r,n,i,a9t)},gt:function(e,t,r,n,i){return uk(e,t,r,n,i,o9t)},lt:function(e,t,r,n,i){return uk(e,t,r,n,i,s9t)},le:function(e,t,r,n,i){return uk(e,t,r,n,i,l9t)},eq:function(e,t,r,n,i){return uk(e,t,r,n,i,u9t)}}});var Zm=ye((Hmr,NFe)=>{"use strict";NFe.exports=function(t,r,n){var i={},a,o;if(typeof r=="string"&&(r=BFe(r)),Array.isArray(r)){var s={};for(o=0;o{"use strict";var c9t=Zm();UFe.exports=f9t;function f9t(e){var t;return arguments.length>1&&(e=arguments),typeof e=="string"?e=e.split(/\s/).map(parseFloat):typeof e=="number"&&(e=[e]),e.length&&typeof e[0]=="number"?e.length===1?t={width:e[0],height:e[0],x:0,y:0}:e.length===2?t={width:e[0],height:e[1],x:0,y:0}:t={x:e[0],y:e[1],width:e[2]-e[0]||0,height:e[3]-e[1]||0}:e&&(e=c9t(e,{left:"x l left Left",top:"y t top Top",width:"w width W Width",height:"h height W Width",bottom:"b bottom Bottom",right:"r right Right"}),t={x:e.left||0,y:e.top||0},e.width==null?e.right?t.width=e.right-t.x:t.width=0:t.width=e.width,e.height==null?e.bottom?t.height=e.bottom-t.y:t.height=0:t.height=e.height),t}});var X2=ye((Wmr,VFe)=>{"use strict";VFe.exports=h9t;function h9t(e,t){if(!e||e.length==null)throw Error("Argument should be an array");t==null?t=1:t=Math.floor(t);for(var r=Array(t*2),n=0;ni&&(i=e[o]),e[o]{GFe.exports=function(){for(var e=0;e{var jFe=YD();WFe.exports=d9t;function d9t(e,t,r){if(!e)throw new TypeError("must specify data as first parameter");if(r=+(r||0)|0,Array.isArray(e)&&e[0]&&typeof e[0][0]=="number"){var n=e[0].length,i=e.length*n,a,o,s,l;(!t||typeof t=="string")&&(t=new(jFe(t||"float32"))(i+r));var u=t.length-r;if(i!==u)throw new Error("source length "+i+" ("+n+"x"+e.length+") does not match destination length "+u);for(a=0,s=r;a{"use strict";XFe.exports=function(e){var t=typeof e;return e!==null&&(t==="object"||t==="function")}});var KFe=ye((Kmr,YFe)=>{"use strict";YFe.exports=Math.log2||function(e){return Math.log(e)*Math.LOG2E}});var ize=ye((Jmr,rze)=>{"use strict";var JFe=qFe(),$Fe=ZE(),v9t=i5(),p9t=X2(),QFe=Zm(),KZ=HFe(),g9t=Z2(),m9t=ZFe(),y9t=YD(),eze=KFe(),_9t=1073741824;rze.exports=function(t,r){r||(r={}),t=g9t(t,"float64"),r=QFe(r,{bounds:"range bounds dataBox databox",maxDepth:"depth maxDepth maxdepth level maxLevel maxlevel levels",dtype:"type dtype format out dst output destination"});let n=KZ(r.maxDepth,255),i=KZ(r.bounds,p9t(t,2));i[0]===i[2]&&i[2]++,i[1]===i[3]&&i[3]++;let a=tze(t,i),o=t.length>>>1,s;r.dtype||(r.dtype="array"),typeof r.dtype=="string"?s=new(y9t(r.dtype))(o):r.dtype&&(s=r.dtype,Array.isArray(s)&&(s.length=o));for(let p=0;pn||x>_9t){for(let N=0;N_e||g>Ee||P=z||te===oe)return;let Ce=l[H];oe===void 0&&(oe=Ce.length);for(let Re=te;Re=S&&Ze<=x&&ut>=L&&ut<=C&&O.push(ce)}let me=u[H],ie=me[te*4+0],Se=me[te*4+1],Le=me[te*4+2],Ae=me[te*4+3],Fe=G(me,te+1),Pe=N*.5,ge=H+1;V(Z,j,Pe,ge,ie,Se||Le||Ae||Fe),V(Z,j+Pe,Pe,ge,Se,Le||Ae||Fe),V(Z+Pe,j,Pe,ge,Le,Ae||Fe),V(Z+Pe,j+Pe,Pe,ge,Ae,Fe)}function G(Z,j){let N=null,H=0;for(;N===null;)if(N=Z[j*4+H],H++,H>Z.length)return null;return N}return O}function _(p,k,E,S,L){let x=[];for(let C=0;C{"use strict";nze.exports=ize()});var JZ=ye((Qmr,aze)=>{aze.exports=x9t;function x9t(e){var t=0,r=0,n=0,i=0;return e.map(function(a){a=a.slice();var o=a[0],s=o.toUpperCase();if(o!=s)switch(a[0]=s,o){case"a":a[6]+=n,a[7]+=i;break;case"v":a[1]+=i;break;case"h":a[1]+=n;break;default:for(var l=1;l{"use strict";Object.defineProperty(jF,"__esModule",{value:!0});var b9t=function(){function e(t,r){var n=[],i=!0,a=!1,o=void 0;try{for(var s=t[Symbol.iterator](),l;!(i=(l=s.next()).done)&&(n.push(l.value),!(r&&n.length===r));i=!0);}catch(u){a=!0,o=u}finally{try{!i&&s.return&&s.return()}finally{if(a)throw o}}return n}return function(t,r){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),ck=Math.PI*2,$Z=function(t,r,n,i,a,o,s){var l=t.x,u=t.y;l*=r,u*=n;var c=i*l-a*u,f=a*l+i*u;return{x:c+o,y:f+s}},w9t=function(t,r){var n=r===1.5707963267948966?.551915024494:r===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(r/4),i=Math.cos(t),a=Math.sin(t),o=Math.cos(t+r),s=Math.sin(t+r);return[{x:i-a*n,y:a+i*n},{x:o+s*n,y:s-o*n},{x:o,y:s}]},oze=function(t,r,n,i){var a=t*i-r*n<0?-1:1,o=t*n+r*i;return o>1&&(o=1),o<-1&&(o=-1),a*Math.acos(o)},T9t=function(t,r,n,i,a,o,s,l,u,c,f,h){var d=Math.pow(a,2),v=Math.pow(o,2),_=Math.pow(f,2),b=Math.pow(h,2),p=d*v-d*b-v*_;p<0&&(p=0),p/=d*b+v*_,p=Math.sqrt(p)*(s===l?-1:1);var k=p*a/o*h,E=p*-o/a*f,S=c*k-u*E+(t+n)/2,L=u*k+c*E+(r+i)/2,x=(f-k)/a,C=(h-E)/o,M=(-f-k)/a,g=(-h-E)/o,P=oze(1,0,x,C),T=oze(x,C,M,g);return l===0&&T>0&&(T-=ck),l===1&&T<0&&(T+=ck),[S,L,P,T]},A9t=function(t){var r=t.px,n=t.py,i=t.cx,a=t.cy,o=t.rx,s=t.ry,l=t.xAxisRotation,u=l===void 0?0:l,c=t.largeArcFlag,f=c===void 0?0:c,h=t.sweepFlag,d=h===void 0?0:h,v=[];if(o===0||s===0)return[];var _=Math.sin(u*ck/360),b=Math.cos(u*ck/360),p=b*(r-i)/2+_*(n-a)/2,k=-_*(r-i)/2+b*(n-a)/2;if(p===0&&k===0)return[];o=Math.abs(o),s=Math.abs(s);var E=Math.pow(p,2)/Math.pow(o,2)+Math.pow(k,2)/Math.pow(s,2);E>1&&(o*=Math.sqrt(E),s*=Math.sqrt(E));var S=T9t(r,n,i,a,o,s,f,d,_,b,p,k),L=b9t(S,4),x=L[0],C=L[1],M=L[2],g=L[3],P=Math.abs(g)/(ck/4);Math.abs(1-P)<1e-7&&(P=1);var T=Math.max(Math.ceil(P),1);g/=T;for(var z=0;z{"use strict";cze.exports=M9t;var S9t=lze();function M9t(e){for(var t,r=[],n=0,i=0,a=0,o=0,s=null,l=null,u=0,c=0,f=0,h=e.length;f4?(n=d[d.length-4],i=d[d.length-3]):(n=u,i=c),r.push(d)}return r}function WF(e,t,r,n){return["C",e,t,r,n,r,n]}function uze(e,t,r,n,i,a){return["C",e/3+2/3*r,t/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}});var QZ=ye((tyr,hze)=>{"use strict";hze.exports=function(t){return typeof t!="string"?!1:(t=t.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(t)&&/[\dz]$/i.test(t)&&t.length>4))}});var pze=ye((ryr,vze)=>{"use strict";var E9t=eM(),k9t=JZ(),C9t=fze(),L9t=QZ(),dze=lE();vze.exports=P9t;function P9t(e){if(Array.isArray(e)&&e.length===1&&typeof e[0]=="string"&&(e=e[0]),typeof e=="string"&&(dze(L9t(e),"String is not an SVG path."),e=E9t(e)),dze(Array.isArray(e),"Argument should be a string or an array of path segments."),e=k9t(e),e=C9t(e),!e.length)return[0,0,0,0];for(var t=[1/0,1/0,-1/0,-1/0],r=0,n=e.length;rt[2]&&(t[2]=i[a+0]),i[a+1]>t[3]&&(t[3]=i[a+1]);return t}});var bze=ye((iyr,xze)=>{var Y2=Math.PI,gze=_ze(120);xze.exports=I9t;function I9t(e){for(var t,r=[],n=0,i=0,a=0,o=0,s=null,l=null,u=0,c=0,f=0,h=e.length;f7&&(r.push(d.splice(0,7)),d.unshift("C"));break;case"S":var _=u,b=c;(t=="C"||t=="S")&&(_+=_-n,b+=b-i),d=["C",_,b,d[1],d[2],d[3],d[4]];break;case"T":t=="Q"||t=="T"?(s=u*2-s,l=c*2-l):(s=u,l=c),d=mze(u,c,s,l,d[1],d[2]);break;case"Q":s=d[1],l=d[2],d=mze(u,c,d[1],d[2],d[3],d[4]);break;case"L":d=XF(u,c,d[1],d[2]);break;case"H":d=XF(u,c,d[1],c);break;case"V":d=XF(u,c,u,d[1]);break;case"Z":d=XF(u,c,a,o);break}t=v,u=d[d.length-2],c=d[d.length-1],d.length>4?(n=d[d.length-4],i=d[d.length-3]):(n=u,i=c),r.push(d)}return r}function XF(e,t,r,n){return["C",e,t,r,n,r,n]}function mze(e,t,r,n,i,a){return["C",e/3+2/3*r,t/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}function yze(e,t,r,n,i,a,o,s,l,u){if(u)E=u[0],S=u[1],p=u[2],k=u[3];else{var c=eY(e,t,-i);e=c.x,t=c.y,c=eY(s,l,-i),s=c.x,l=c.y;var f=(e-s)/2,h=(t-l)/2,d=f*f/(r*r)+h*h/(n*n);d>1&&(d=Math.sqrt(d),r=d*r,n=d*n);var v=r*r,_=n*n,b=(a==o?-1:1)*Math.sqrt(Math.abs((v*_-v*h*h-_*f*f)/(v*h*h+_*f*f)));b==1/0&&(b=1);var p=b*r*h/n+(e+s)/2,k=b*-n*f/r+(t+l)/2,E=Math.asin(((t-k)/n).toFixed(9)),S=Math.asin(((l-k)/n).toFixed(9));E=eS&&(E=E-Y2*2),!o&&S>E&&(S=S-Y2*2)}if(Math.abs(S-E)>gze){var L=S,x=s,C=l;S=E+gze*(o&&S>E?1:-1),s=p+r*Math.cos(S),l=k+n*Math.sin(S);var M=yze(s,l,r,n,i,0,o,x,C,[S,L,p,k])}var g=Math.tan((S-E)/4),P=4/3*r*g,T=4/3*n*g,z=[2*e-(e+P*Math.sin(E)),2*t-(t-T*Math.cos(E)),s+P*Math.sin(S),l-T*Math.cos(S),s,l];if(u)return z;M&&(z=z.concat(M));for(var O=0;O{var R9t=JZ(),D9t=bze(),F9t={M:"moveTo",C:"bezierCurveTo"};wze.exports=function(e,t){e.beginPath(),D9t(R9t(t)).forEach(function(r){var n=r[0],i=r.slice(1);e[F9t[n]].apply(e,i)}),e.closePath()}});var Eze=ye((ayr,Mze)=>{"use strict";var z9t=ZE();Mze.exports=O9t;var fk=1e20;function O9t(e,t){t||(t={});var r=t.cutoff==null?.25:t.cutoff,n=t.radius==null?8:t.radius,i=t.channel||0,a,o,s,l,u,c,f,h,d,v,_;if(ArrayBuffer.isView(e)||Array.isArray(e)){if(!t.width||!t.height)throw Error("For raw data width and height should be provided by options");a=t.width,o=t.height,l=e,t.stride?c=t.stride:c=Math.floor(e.length/a/o)}else window.HTMLCanvasElement&&e instanceof window.HTMLCanvasElement?(h=e,f=h.getContext("2d"),a=h.width,o=h.height,d=f.getImageData(0,0,a,o),l=d.data,c=4):window.CanvasRenderingContext2D&&e instanceof window.CanvasRenderingContext2D?(h=e.canvas,f=e,a=h.width,o=h.height,d=f.getImageData(0,0,a,o),l=d.data,c=4):window.ImageData&&e instanceof window.ImageData&&(d=e,a=e.width,o=e.height,l=d.data,c=4);if(s=Math.max(a,o),window.Uint8ClampedArray&&l instanceof window.Uint8ClampedArray||window.Uint8Array&&l instanceof window.Uint8Array)for(u=l,l=Array(a*o),v=0,_=u.length;v<_;v++)l[v]=u[v*c+i]/255;else if(c!==1)throw Error("Raw data can have only 1 value per pixel");var b=Array(a*o),p=Array(a*o),k=Array(s),E=Array(s),S=Array(s+1),L=Array(s);for(v=0,_=a*o;v<_;v++){var x=l[v];b[v]=x===1?0:x===0?fk:Math.pow(Math.max(0,.5-x),2),p[v]=x===1?fk:x===0?0:Math.pow(Math.max(0,x-.5),2)}Aze(b,a,o,k,E,L,S),Aze(p,a,o,k,E,L,S);var C=window.Float32Array?new Float32Array(a*o):new Array(a*o);for(v=0,_=a*o;v<_;v++)C[v]=z9t(1-((b[v]-p[v])/n+r),0,1);return C}function Aze(e,t,r,n,i,a,o){for(var s=0;s{"use strict";var q9t=pze(),B9t=eM(),N9t=Tze(),U9t=QZ(),V9t=Eze(),tY=document.createElement("canvas"),hp=tY.getContext("2d");kze.exports=G9t;function G9t(e,t){if(!U9t(e))throw Error("Argument should be valid svg path string");t||(t={});var r,n;t.shape?(r=t.shape[0],n=t.shape[1]):(r=tY.width=t.w||t.width||200,n=tY.height=t.h||t.height||200);var i=Math.min(r,n),a=t.stroke||0,o=t.viewbox||t.viewBox||q9t(e),s=[r/(o[2]-o[0]),n/(o[3]-o[1])],l=Math.min(s[0]||0,s[1]||0)/2;if(hp.fillStyle="black",hp.fillRect(0,0,r,n),hp.fillStyle="white",a&&(typeof a!="number"&&(a=1),a>0?hp.strokeStyle="white":hp.strokeStyle="black",hp.lineWidth=Math.abs(a)),hp.translate(r*.5,n*.5),hp.scale(l,l),H9t()){var u=new Path2D(e);hp.fill(u),a&&hp.stroke(u)}else{var c=B9t(e);N9t(hp,c),hp.fill(),a&&hp.stroke()}hp.setTransform(1,0,0,1,0,0);var f=V9t(hp,{cutoff:t.cutoff!=null?t.cutoff:.5,radius:t.radius!=null?t.radius:i*.5});return f}var ZF;function H9t(){if(ZF!=null)return ZF;var e=document.createElement("canvas").getContext("2d");if(e.canvas.width=e.canvas.height=1,!window.Path2D)return ZF=!1;var t=new Path2D("M0,0h1v1h-1v-1Z");e.fillStyle="black",e.fill(t);var r=e.getImageData(0,0,1,1);return ZF=r&&r.data&&r.data[3]===255}});var J2=ye((syr,Nze)=>{"use strict";var KF=Eo(),j9t=Cze(),YF=J_(),W9t=qa(),o5=Dr(),_h=o5.isArrayOrTypedArray,n5=So(),Lze=hf(),Pze=$y().formatColor,a5=Ru(),X9t=k3(),iY=VF(),hk=ox(),Z9t=N1().DESELECTDIM,Ize={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},Y9t=ip().appendArrayPointValue;function K9t(e,t){var r,n={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0},i=e._context.plotGlPixelRatio;if(t.visible!==!0)return n;if(a5.hasText(t)&&(n.text=Bze(e,t),n.textSel=Dze(e,t,t.selected),n.textUnsel=Dze(e,t,t.unselected)),a5.hasMarkers(t)&&(n.marker=aY(e,t),n.markerSel=nY(e,t,t.selected),n.markerUnsel=nY(e,t,t.unselected),!t.unselected&&_h(t.marker.opacity))){var a=t.marker.opacity;for(n.markerUnsel.opacity=new Array(a.length),r=0;r500?"bold":"normal":e}function aY(e,t){var r=t._length,n=t.marker,i={},a,o=_h(n.symbol),s=_h(n.angle),l=_h(n.color),u=_h(n.line.color),c=_h(n.opacity),f=_h(n.size),h=_h(n.line.width),d;if(o||(d=iY.isOpenSymbol(n.symbol)),o||l||u||c||s){i.symbols=new Array(r),i.angles=new Array(r),i.colors=new Array(r),i.borderColors=new Array(r);var v=n.symbol,_=n.angle,b=Pze(n,n.opacity,r),p=Pze(n.line,n.opacity,r);if(!_h(p[0])){var k=p;for(p=Array(r),a=0;ahk.TOO_MANY_POINTS||a5.hasMarkers(t)?"rect":"round";if(u&&t.connectgaps){var f=a[0],h=a[1];for(o=0;o1?l[o]:l[0]:l,d=_h(u)?u.length>1?u[o]:u[0]:u,v=Ize[h],_=Ize[d],b=c?c/.8+1:0,p=-_*b-_*.5;a.offset[o]=[v*b/f,p/f]}}return a}Nze.exports={style:K9t,markerStyle:aY,markerSelection:nY,linePositions:$9t,errorBarPositions:Q9t,textPosition:eOt}});var oY=ye((lyr,Uze)=>{"use strict";var JF=Dr();Uze.exports=function(t,r){var n=r._scene,i={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},a={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return r._scene||(n=r._scene={},n.init=function(){JF.extendFlat(n,a,i)},n.init(),n.update=function(s){var l=JF.repeat(s,n.count);if(n.fill2d&&n.fill2d.update(l),n.scatter2d&&n.scatter2d.update(l),n.line2d&&n.line2d.update(l),n.error2d&&n.error2d.update(l.concat(l)),n.select2d&&n.select2d.update(l),n.glText)for(var u=0;u{"use strict";var tOt=HF(),s5=Dr(),Vze=hf(),rOt=Ag().findExtremes,Gze=Dg(),sY=O0(),iOt=sY.calcMarkerSize,nOt=sY.calcAxisExpansion,aOt=sY.setFirstScatter,oOt=F0(),l5=J2(),sOt=oY(),Hze=fs().BADNUM,lOt=ox().TOO_MANY_POINTS;Wze.exports=function(t,r){var n=t._fullLayout,i=r._xA=Vze.getFromId(t,r.xaxis,"x"),a=r._yA=Vze.getFromId(t,r.yaxis,"y"),o=n._plots[r.xaxis+r.yaxis],s=r._length,l=s>=lOt,u=s*2,c={},f,h=i.makeCalcdata(r,"x"),d=a.makeCalcdata(r,"y"),v=Gze(r,i,"x",h),_=Gze(r,a,"y",d),b=v.vals,p=_.vals;r._x=b,r._y=p,r.xperiodalignment&&(r._origX=h,r._xStarts=v.starts,r._xEnds=v.ends),r.yperiodalignment&&(r._origY=d,r._yStarts=_.starts,r._yEnds=_.ends);var k=new Array(u),E=new Array(s);for(f=0;f1&&s5.extendFlat(o.line,l5.linePositions(e,r,n)),o.errorX||o.errorY){var s=l5.errorBarPositions(e,r,n,i,a);o.errorX&&s5.extendFlat(o.errorX,s.x),o.errorY&&s5.extendFlat(o.errorY,s.y)}return o.text&&(s5.extendFlat(o.text,{positions:n},l5.textPosition(e,r,o.text,o.marker)),s5.extendFlat(o.textSel,{positions:n},l5.textPosition(e,r,o.text,o.markerSel)),s5.extendFlat(o.textUnsel,{positions:n},l5.textPosition(e,r,o.text,o.markerUnsel))),o}});var lY=ye((cyr,Yze)=>{"use strict";var Zze=Dr(),cOt=ka(),fOt=N1().DESELECTDIM;function hOt(e){var t=e[0],r=t.trace,n=t.t,i=n._scene,a=n.index,o=i.selectBatch[a],s=i.unselectBatch[a],l=i.textOptions[a],u=i.textSelectedOptions[a]||{},c=i.textUnselectedOptions[a]||{},f=Zze.extendFlat({},l),h,d;if(o.length||s.length){var v=u.color,_=c.color,b=l.color,p=Zze.isArrayOrTypedArray(b);for(f.color=new Array(r._length),h=0;h{"use strict";var Kze=Ru(),dOt=lY().styleTextSelection;Jze.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l=n[0].t,u=s._length,c=l.x,f=l.y,h=l._scene,d=l.index;if(!h)return o;var v=Kze.hasText(s),_=Kze.hasMarkers(s),b=!_&&!v;if(s.visible!==!0||b)return o;var p=[],k=[];if(r!==!1&&!r.degenerate)for(var E=0;E{"use strict";var vOt=UF();$ze.exports={moduleType:"trace",name:"scattergl",basePlotModule:ph(),categories:["gl","regl","cartesian","symbols","errorBarsOK","showLegend","scatter-like"],attributes:lk(),supplyDefaults:DFe(),crossTraceDefaults:aU(),colorbar:$d(),formatLabels:zFe(),calc:Xze(),hoverPoints:vOt.hoverPoints,selectPoints:uY(),meta:{}}});var t7e=ye((dyr,QF)=>{"use strict";var $F=ZE();QF.exports=e7e;QF.exports.to=e7e;QF.exports.from=pOt;function e7e(e,t){t==null&&(t=!0);var r=e[0],n=e[1],i=e[2],a=e[3];a==null&&(a=t?1:255),t&&(r*=255,n*=255,i*=255,a*=255),r=$F(r,0,255)&255,n=$F(n,0,255)&255,i=$F(i,0,255)&255,a=$F(a,0,255)&255;var o=r*16777216+(n<<16)+(i<<8)+a;return o}function pOt(e,t){e=+e;var r=e>>>24,n=(e&16711680)>>>16,i=(e&65280)>>>8,a=e&255;return t===!1?[r,n,i,a]:[r/255,n/255,i/255,a/255]}});var Oh=ye((vyr,i7e)=>{"use strict";var r7e=Object.getOwnPropertySymbols,gOt=Object.prototype.hasOwnProperty,mOt=Object.prototype.propertyIsEnumerable;function yOt(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function _Ot(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(t).map(function(a){return t[a]});if(n.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(a){i[a]=a}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch(a){return!1}}i7e.exports=_Ot()?Object.assign:function(e,t){for(var r,n=yOt(e),i,a=1;a{n7e.exports=function(e){typeof e=="string"&&(e=[e]);for(var t=[].slice.call(arguments,1),r=[],n=0;n{"use strict";o7e.exports=function(t,r,n){Array.isArray(n)||(n=[].slice.call(arguments,2));for(var i=0,a=n.length;i{"use strict";s7e.exports=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))});var ez=ye((yyr,u5)=>{"use strict";u5.exports=dk;u5.exports.float32=u5.exports.float=dk;u5.exports.fract32=u5.exports.fract=xOt;var u7e=new Float32Array(1);function xOt(e,t){if(e.length){if(e instanceof Float32Array)return new Float32Array(e.length);t instanceof Float32Array||(t=dk(e));for(var r=0,n=t.length;r{"use strict";function bOt(e,t){var r=e==null?null:typeof Symbol!="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var n,i,a,o,s=[],l=!0,u=!1;try{if(a=(r=r.call(e)).next,t===0){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=a.call(r)).done)&&(s.push(n.value),s.length!==t);l=!0);}catch(c){u=!0,i=c}finally{try{if(!l&&r.return!=null&&(o=r.return(),Object(o)!==o))return}finally{if(u)throw i}}return s}}function wOt(e,t){return SOt(e)||bOt(e,t)||f7e(e,t)||kOt()}function TOt(e){return AOt(e)||MOt(e)||f7e(e)||EOt()}function AOt(e){if(Array.isArray(e))return fY(e)}function SOt(e){if(Array.isArray(e))return e}function MOt(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function f7e(e,t){if(e){if(typeof e=="string")return fY(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return fY(e,t)}}function fY(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);rre)?N.tree=IOt(H,{bounds:me}):re&&re.length&&(N.tree=re),N.tree){var ie={primitive:"points",usage:"static",data:N.tree,type:"uint32"};N.elements?N.elements(ie):N.elements=o.elements(ie)}var Se=tz.float32(H);oe({data:Se,usage:"dynamic"});var Le=tz.fract32(H,Se);return _e({data:Le,usage:"dynamic"}),Ee({data:new Uint8Array(Ce),type:"uint8",usage:"stream"}),H}},{marker:function(H,N,j){var re=N.activation;if(re.forEach(function(Le){return Le&&Le.destroy&&Le.destroy()}),re.length=0,!H||typeof H[0]=="number"){var oe=e.addMarker(H);re[oe]=!0}else{for(var _e=[],Ee=0,Ce=Math.min(H.length,N.count);Ee=0)return i;var a;if(e instanceof Uint8Array||e instanceof Uint8ClampedArray)a=e;else{a=new Uint8Array(e.length);for(var o=0,s=e.length;on*4&&(this.tooManyColors=!0),this.updatePalette(r),i.length===1?i[0]:i};nv.prototype.updatePalette=function(e){if(!this.tooManyColors){var t=this.maxColors,r=this.paletteTexture,n=Math.ceil(e.length*.25/t);if(n>1){e=e.slice();for(var i=e.length*.25%t;i{"use strict";pY.exports=nz;pY.exports.default=nz;function nz(e,t,r){r=r||2;var n=t&&t.length,i=n?t[0]*r:e.length,a=d7e(e,0,i,r,!0),o=[];if(!a||a.next===a.prev)return o;var s,l,u,c,f,h,d;if(n&&(a=HOt(e,t,a,r)),e.length>80*r){s=u=e[0],l=c=e[1];for(var v=r;vu&&(u=f),h>c&&(c=h);d=Math.max(u-s,c-l),d=d!==0?32767/d:0}return vk(a,o,r,s,l,d,0),o}function d7e(e,t,r,n,i){var a,o;if(i===vY(e,t,r,n)>0)for(a=t;a=t;a-=n)o=h7e(a,e[a],e[a+1],o);return o&&az(o,o.next)&&(gk(o),o=o.next),o}function $2(e,t){if(!e)return e;t||(t=e);var r=e,n;do if(n=!1,!r.steiner&&(az(r,r.next)||xh(r.prev,r,r.next)===0)){if(gk(r),r=t=r.prev,r===r.next)break;n=!0}else r=r.next;while(n||r!==t);return t}function vk(e,t,r,n,i,a,o){if(e){!o&&a&&YOt(e,n,i,a);for(var s=e,l,u;e.prev!==e.next;){if(l=e.prev,u=e.next,a?UOt(e,n,i,a):NOt(e)){t.push(l.i/r|0),t.push(e.i/r|0),t.push(u.i/r|0),gk(e),e=u.next,s=u.next;continue}if(e=u,e===s){o?o===1?(e=VOt($2(e),t,r),vk(e,t,r,n,i,a,2)):o===2&&GOt(e,t,r,n,i,a):vk($2(e),t,r,n,i,a,1);break}}}}function NOt(e){var t=e.prev,r=e,n=e.next;if(xh(t,r,n)>=0)return!1;for(var i=t.x,a=r.x,o=n.x,s=t.y,l=r.y,u=n.y,c=ia?i>o?i:o:a>o?a:o,d=s>l?s>u?s:u:l>u?l:u,v=n.next;v!==t;){if(v.x>=c&&v.x<=h&&v.y>=f&&v.y<=d&&u5(i,s,a,l,o,u,v.x,v.y)&&xh(v.prev,v,v.next)>=0)return!1;v=v.next}return!0}function UOt(e,t,r,n){var i=e.prev,a=e,o=e.next;if(xh(i,a,o)>=0)return!1;for(var s=i.x,l=a.x,u=o.x,c=i.y,f=a.y,h=o.y,d=sl?s>u?s:u:l>u?l:u,b=c>f?c>h?c:h:f>h?f:h,p=hY(d,v,t,r,n),k=hY(_,b,t,r,n),E=e.prevZ,S=e.nextZ;E&&E.z>=p&&S&&S.z<=k;){if(E.x>=d&&E.x<=_&&E.y>=v&&E.y<=b&&E!==i&&E!==o&&u5(s,c,l,f,u,h,E.x,E.y)&&xh(E.prev,E,E.next)>=0||(E=E.prevZ,S.x>=d&&S.x<=_&&S.y>=v&&S.y<=b&&S!==i&&S!==o&&u5(s,c,l,f,u,h,S.x,S.y)&&xh(S.prev,S,S.next)>=0))return!1;S=S.nextZ}for(;E&&E.z>=p;){if(E.x>=d&&E.x<=_&&E.y>=v&&E.y<=b&&E!==i&&E!==o&&u5(s,c,l,f,u,h,E.x,E.y)&&xh(E.prev,E,E.next)>=0)return!1;E=E.prevZ}for(;S&&S.z<=k;){if(S.x>=d&&S.x<=_&&S.y>=v&&S.y<=b&&S!==i&&S!==o&&u5(s,c,l,f,u,h,S.x,S.y)&&xh(S.prev,S,S.next)>=0)return!1;S=S.nextZ}return!0}function VOt(e,t,r){var n=e;do{var i=n.prev,a=n.next.next;!az(i,a)&&v7e(i,n,n.next,a)&&pk(i,a)&&pk(a,i)&&(t.push(i.i/r|0),t.push(n.i/r|0),t.push(a.i/r|0),gk(n),gk(n.next),n=e=a),n=n.next}while(n!==e);return $2(n)}function GOt(e,t,r,n,i,a){var o=e;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&$Ot(o,s)){var l=p7e(o,s);o=$2(o,o.next),l=$2(l,l.next),vk(o,t,r,n,i,a,0),vk(l,t,r,n,i,a,0);return}s=s.next}o=o.next}while(o!==e)}function HOt(e,t,r,n){var i=[],a,o,s,l,u;for(a=0,o=t.length;a=r.next.y&&r.next.y!==r.y){var s=r.x+(i-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(s<=n&&s>a&&(a=s,o=r.x=r.x&&r.x>=u&&n!==r.x&&u5(io.x||r.x===o.x&&ZOt(o,r)))&&(o=r,f=h)),r=r.next;while(r!==l);return o}function ZOt(e,t){return xh(e.prev,e,t.prev)<0&&xh(t.next,e,e.next)<0}function YOt(e,t,r,n){var i=e;do i.z===0&&(i.z=hY(i.x,i.y,t,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,KOt(i)}function KOt(e){var t,r,n,i,a,o,s,l,u=1;do{for(r=e,e=null,a=null,o=0;r;){for(o++,n=r,s=0,t=0;t0||l>0&&n;)s!==0&&(l===0||!n||r.z<=n.z)?(i=r,r=r.nextZ,s--):(i=n,n=n.nextZ,l--),a?a.nextZ=i:e=i,i.prevZ=a,a=i;r=n}a.nextZ=null,u*=2}while(o>1);return e}function hY(e,t,r,n,i){return e=(e-r)*i|0,t=(t-n)*i|0,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1}function JOt(e){var t=e,r=e;do(t.x=(e-o)*(a-s)&&(e-o)*(n-s)>=(r-o)*(t-s)&&(r-o)*(a-s)>=(i-o)*(n-s)}function $Ot(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!QOt(e,t)&&(pk(e,t)&&pk(t,e)&&eqt(e,t)&&(xh(e.prev,e,t.prev)||xh(e,t.prev,t))||az(e,t)&&xh(e.prev,e,e.next)>0&&xh(t.prev,t,t.next)>0)}function xh(e,t,r){return(t.y-e.y)*(r.x-t.x)-(t.x-e.x)*(r.y-t.y)}function az(e,t){return e.x===t.x&&e.y===t.y}function v7e(e,t,r,n){var i=iz(xh(e,t,r)),a=iz(xh(e,t,n)),o=iz(xh(r,n,e)),s=iz(xh(r,n,t));return!!(i!==a&&o!==s||i===0&&rz(e,r,t)||a===0&&rz(e,n,t)||o===0&&rz(r,e,n)||s===0&&rz(r,t,n))}function rz(e,t,r){return t.x<=Math.max(e.x,r.x)&&t.x>=Math.min(e.x,r.x)&&t.y<=Math.max(e.y,r.y)&&t.y>=Math.min(e.y,r.y)}function iz(e){return e>0?1:e<0?-1:0}function QOt(e,t){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==t.i&&r.next.i!==t.i&&v7e(r,r.next,e,t))return!0;r=r.next}while(r!==e);return!1}function pk(e,t){return xh(e.prev,e,e.next)<0?xh(e,t,e.next)>=0&&xh(e,e.prev,t)>=0:xh(e,t,e.prev)<0||xh(e,e.next,t)<0}function eqt(e,t){var r=e,n=!1,i=(e.x+t.x)/2,a=(e.y+t.y)/2;do r.y>a!=r.next.y>a&&r.next.y!==r.y&&i<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next;while(r!==e);return n}function p7e(e,t){var r=new dY(e.i,e.x,e.y),n=new dY(t.i,t.x,t.y),i=e.next,a=t.prev;return e.next=t,t.prev=e,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function h7e(e,t,r,n){var i=new dY(e,t,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function gk(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function dY(e,t,r){this.i=e,this.x=t,this.y=r,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}nz.deviation=function(e,t,r,n){var i=t&&t.length,a=i?t[0]*r:e.length,o=Math.abs(vY(e,0,a,r));if(i)for(var s=0,l=t.length;s0&&(n+=e[i-1].length,r.holes.push(n))}return r}});var y7e=ye((byr,m7e)=>{"use strict";var tqt=W2();m7e.exports=rqt;function rqt(e,t,r){if(!e||e.length==null)throw Error("Argument should be an array");t==null&&(t=1),r==null&&(r=tqt(e,t));for(var n=0;n{"use strict";_7e.exports=function(){var e,t;if(typeof WeakMap!="function")return!1;try{e=new WeakMap([[t={},"one"],[{},"two"],[{},"three"]])}catch(r){return!1}return!(String(e)!=="[object WeakMap]"||typeof e.set!="function"||e.set({},1)!==e||typeof e.delete!="function"||typeof e.has!="function"||e.get(t)!=="one")}});var w7e=ye((Tyr,b7e)=>{"use strict";b7e.exports=function(){}});var lx=ye((Ayr,T7e)=>{"use strict";var iqt=w7e()();T7e.exports=function(e){return e!==iqt&&e!==null}});var gY=ye((Syr,S7e)=>{"use strict";var nqt=Object.create,aqt=Object.getPrototypeOf,A7e={};S7e.exports=function(){var e=Object.setPrototypeOf,t=arguments[0]||nqt;return typeof e!="function"?!1:aqt(e(t(null),A7e))===A7e}});var mY=ye((Myr,M7e)=>{"use strict";var oqt=lx(),sqt={function:!0,object:!0};M7e.exports=function(e){return oqt(e)&&sqt[typeof e]||!1}});var i1=ye((Eyr,E7e)=>{"use strict";var lqt=lx();E7e.exports=function(e){if(!lqt(e))throw new TypeError("Cannot use null or undefined");return e}});var C7e=ye((kyr,k7e)=>{"use strict";var yY=Object.create,oz;gY()()||(oz=_Y());k7e.exports=function(){var e,t,r;return!oz||oz.level!==1?yY:(e={},t={},r={configurable:!1,enumerable:!1,writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(n){if(n==="__proto__"){t[n]={configurable:!0,enumerable:!1,writable:!0,value:void 0};return}t[n]=r}),Object.defineProperties(e,t),Object.defineProperty(oz,"nullPolyfill",{configurable:!1,enumerable:!1,writable:!1,value:e}),function(n,i){return yY(n===null?e:n,i)})}()});var _Y=ye((Cyr,L7e)=>{"use strict";var uqt=mY(),cqt=i1(),fqt=Object.prototype.isPrototypeOf,hqt=Object.defineProperty,dqt={configurable:!0,enumerable:!1,writable:!0,value:void 0},sz;sz=function(e,t){if(cqt(e),t===null||uqt(t))return e;throw new TypeError("Prototype must be null or an object")};L7e.exports=function(e){var t,r;return e?(e.level===2?e.set?(r=e.set,t=function(n,i){return r.call(sz(n,i),i),n}):t=function(n,i){return sz(n,i).__proto__=i,n}:t=function n(i,a){var o;return sz(i,a),o=fqt.call(n.nullPolyfill,i),o&&delete n.nullPolyfill.__proto__,a===null&&(a=n.nullPolyfill),i.__proto__=a,o&&hqt(n.nullPolyfill,"__proto__",dqt),i},Object.defineProperty(t,"level",{configurable:!1,enumerable:!1,writable:!1,value:e.level})):null}(function(){var e=Object.create(null),t={},r,n=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__");if(n){try{r=n.set,r.call(e,t)}catch(i){}if(Object.getPrototypeOf(e)===t)return{set:r,level:2}}return e.__proto__=t,Object.getPrototypeOf(e)===t?{level:2}:(e={},e.__proto__=t,Object.getPrototypeOf(e)===t?{level:1}:!1)}());C7e()});var lz=ye((Lyr,P7e)=>{"use strict";P7e.exports=gY()()?Object.setPrototypeOf:_Y()});var R7e=ye((Pyr,I7e)=>{"use strict";var vqt=mY();I7e.exports=function(e){if(!vqt(e))throw new TypeError(e+" is not an Object");return e}});var F7e=ye((Iyr,D7e)=>{"use strict";var pqt=Object.create(null),gqt=Math.random;D7e.exports=function(){var e;do e=gqt().toString(36).slice(2);while(pqt[e]);return e}});var Q2=ye((Ryr,z7e)=>{"use strict";var mqt=void 0;z7e.exports=function(e){return e!==mqt&&e!==null}});var uz=ye((Dyr,O7e)=>{"use strict";var yqt=Q2(),_qt={object:!0,function:!0,undefined:!0};O7e.exports=function(e){return yqt(e)?hasOwnProperty.call(_qt,typeof e):!1}});var B7e=ye((Fyr,q7e)=>{"use strict";var xqt=uz();q7e.exports=function(e){if(!xqt(e))return!1;try{return e.constructor?e.constructor.prototype===e:!1}catch(t){return!1}}});var U7e=ye((zyr,N7e)=>{"use strict";var bqt=B7e();N7e.exports=function(e){if(typeof e!="function"||!hasOwnProperty.call(e,"length"))return!1;try{if(typeof e.length!="number"||typeof e.call!="function"||typeof e.apply!="function")return!1}catch(t){return!1}return!bqt(e)}});var xY=ye((Oyr,V7e)=>{"use strict";var wqt=U7e(),Tqt=/^\s*class[\s{/}]/,Aqt=Function.prototype.toString;V7e.exports=function(e){return!(!wqt(e)||Tqt.test(Aqt.call(e)))}});var H7e=ye((qyr,G7e)=>{"use strict";G7e.exports=function(){var e=Object.assign,t;return typeof e!="function"?!1:(t={foo:"raz"},e(t,{bar:"dwa"},{trzy:"trzy"}),t.foo+t.bar+t.trzy==="razdwatrzy")}});var W7e=ye((Byr,j7e)=>{"use strict";j7e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}});var Z7e=ye((Nyr,X7e)=>{"use strict";var Sqt=lx(),Mqt=Object.keys;X7e.exports=function(e){return Mqt(Sqt(e)?Object(e):e)}});var K7e=ye((Uyr,Y7e)=>{"use strict";Y7e.exports=W7e()()?Object.keys:Z7e()});var $7e=ye((Vyr,J7e)=>{"use strict";var Eqt=K7e(),kqt=i1(),Cqt=Math.max;J7e.exports=function(e,t){var r,n,i=Cqt(arguments.length,2),a;for(e=Object(kqt(e)),a=function(o){try{e[o]=t[o]}catch(s){r||(r=s)}},n=1;n{"use strict";Q7e.exports=H7e()()?Object.assign:$7e()});var bY=ye((Hyr,e9e)=>{"use strict";var Lqt=lx(),Pqt=Array.prototype.forEach,Iqt=Object.create,Rqt=function(e,t){var r;for(r in e)t[r]=e[r]};e9e.exports=function(e){var t=Iqt(null);return Pqt.call(arguments,function(r){Lqt(r)&&Rqt(Object(r),t)}),t}});var r9e=ye((jyr,t9e)=>{"use strict";var wY="razdwatrzy";t9e.exports=function(){return typeof wY.contains!="function"?!1:wY.contains("dwa")===!0&&wY.contains("foo")===!1}});var n9e=ye((Wyr,i9e)=>{"use strict";var Dqt=String.prototype.indexOf;i9e.exports=function(e){return Dqt.call(this,e,arguments[1])>-1}});var TY=ye((Xyr,a9e)=>{"use strict";a9e.exports=r9e()()?String.prototype.contains:n9e()});var n1=ye((Zyr,u9e)=>{"use strict";var fz=Q2(),o9e=xY(),s9e=cz(),l9e=bY(),mk=TY(),Fqt=u9e.exports=function(e,t){var r,n,i,a,o;return arguments.length<2||typeof e!="string"?(a=t,t=e,e=null):a=arguments[2],fz(e)?(r=mk.call(e,"c"),n=mk.call(e,"e"),i=mk.call(e,"w")):(r=i=!0,n=!1),o={value:t,configurable:r,enumerable:n,writable:i},a?s9e(l9e(a),o):o};Fqt.gs=function(e,t,r){var n,i,a,o;return typeof e!="string"?(a=r,r=t,t=e,e=null):a=arguments[3],fz(t)?o9e(t)?fz(r)?o9e(r)||(a=r,r=void 0):r=void 0:(a=t,t=r=void 0):t=void 0,fz(e)?(n=mk.call(e,"c"),i=mk.call(e,"e")):(n=!0,i=!1),o={get:t,set:r,configurable:n,enumerable:i},a?s9e(l9e(a),o):o}});var yk=ye((Yyr,f9e)=>{"use strict";var c9e=Object.prototype.toString,zqt=c9e.call(function(){return arguments}());f9e.exports=function(e){return c9e.call(e)===zqt}});var _k=ye((Kyr,d9e)=>{"use strict";var h9e=Object.prototype.toString,Oqt=h9e.call("");d9e.exports=function(e){return typeof e=="string"||e&&typeof e=="object"&&(e instanceof String||h9e.call(e)===Oqt)||!1}});var p9e=ye((Jyr,v9e)=>{"use strict";v9e.exports=function(){return typeof globalThis!="object"||!globalThis?!1:globalThis.Array===Array}});var y9e=ye(($yr,m9e)=>{var g9e=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};m9e.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch(e){return g9e()}try{return __global__||g9e()}finally{delete Object.prototype.__global__}}()});var xk=ye((Qyr,_9e)=>{"use strict";_9e.exports=p9e()()?globalThis:y9e()});var b9e=ye((e1r,x9e)=>{"use strict";var qqt=xk(),AY={object:!0,symbol:!0};x9e.exports=function(){var e=qqt.Symbol,t;if(typeof e!="function")return!1;t=e("test symbol");try{String(t)}catch(r){return!1}return!(!AY[typeof e.iterator]||!AY[typeof e.toPrimitive]||!AY[typeof e.toStringTag])}});var T9e=ye((t1r,w9e)=>{"use strict";w9e.exports=function(e){return e?typeof e=="symbol"?!0:!e.constructor||e.constructor.name!=="Symbol"?!1:e[e.constructor.toStringTag]==="Symbol":!1}});var SY=ye((r1r,A9e)=>{"use strict";var Bqt=T9e();A9e.exports=function(e){if(!Bqt(e))throw new TypeError(e+" is not a symbol");return e}});var C9e=ye((i1r,k9e)=>{"use strict";var S9e=n1(),Nqt=Object.create,M9e=Object.defineProperty,Uqt=Object.prototype,E9e=Nqt(null);k9e.exports=function(e){for(var t=0,r,n;E9e[e+(t||"")];)++t;return e+=t||"",E9e[e]=!0,r="@@"+e,M9e(Uqt,r,S9e.gs(null,function(i){n||(n=!0,M9e(this,r,S9e(i)),n=!1)})),r}});var P9e=ye((n1r,L9e)=>{"use strict";var Qg=n1(),qh=xk().Symbol;L9e.exports=function(e){return Object.defineProperties(e,{hasInstance:Qg("",qh&&qh.hasInstance||e("hasInstance")),isConcatSpreadable:Qg("",qh&&qh.isConcatSpreadable||e("isConcatSpreadable")),iterator:Qg("",qh&&qh.iterator||e("iterator")),match:Qg("",qh&&qh.match||e("match")),replace:Qg("",qh&&qh.replace||e("replace")),search:Qg("",qh&&qh.search||e("search")),species:Qg("",qh&&qh.species||e("species")),split:Qg("",qh&&qh.split||e("split")),toPrimitive:Qg("",qh&&qh.toPrimitive||e("toPrimitive")),toStringTag:Qg("",qh&&qh.toStringTag||e("toStringTag")),unscopables:Qg("",qh&&qh.unscopables||e("unscopables"))})}});var D9e=ye((a1r,R9e)=>{"use strict";var I9e=n1(),Vqt=SY(),bk=Object.create(null);R9e.exports=function(e){return Object.defineProperties(e,{for:I9e(function(t){return bk[t]?bk[t]:bk[t]=e(String(t))}),keyFor:I9e(function(t){var r;Vqt(t);for(r in bk)if(bk[r]===t)return r})})}});var O9e=ye((o1r,z9e)=>{"use strict";var Ym=n1(),MY=SY(),hz=xk().Symbol,Gqt=C9e(),Hqt=P9e(),jqt=D9e(),Wqt=Object.create,EY=Object.defineProperties,dz=Object.defineProperty,Xv,c5,F9e;if(typeof hz=="function")try{String(hz()),F9e=!0}catch(e){}else hz=null;c5=function(t){if(this instanceof c5)throw new TypeError("Symbol is not a constructor");return Xv(t)};z9e.exports=Xv=function e(t){var r;if(this instanceof e)throw new TypeError("Symbol is not a constructor");return F9e?hz(t):(r=Wqt(c5.prototype),t=t===void 0?"":String(t),EY(r,{__description__:Ym("",t),__name__:Ym("",Gqt(t))}))};Hqt(Xv);jqt(Xv);EY(c5.prototype,{constructor:Ym(Xv),toString:Ym("",function(){return this.__name__})});EY(Xv.prototype,{toString:Ym(function(){return"Symbol ("+MY(this).__description__+")"}),valueOf:Ym(function(){return MY(this)})});dz(Xv.prototype,Xv.toPrimitive,Ym("",function(){var e=MY(this);return typeof e=="symbol"?e:e.toString()}));dz(Xv.prototype,Xv.toStringTag,Ym("c","Symbol"));dz(c5.prototype,Xv.toStringTag,Ym("c",Xv.prototype[Xv.toStringTag]));dz(c5.prototype,Xv.toPrimitive,Ym("c",Xv.prototype[Xv.toPrimitive]))});var ux=ye((s1r,q9e)=>{"use strict";q9e.exports=b9e()()?xk().Symbol:O9e()});var N9e=ye((l1r,B9e)=>{"use strict";var Xqt=i1();B9e.exports=function(){return Xqt(this).length=0,this}});var f5=ye((u1r,U9e)=>{"use strict";U9e.exports=function(e){if(typeof e!="function")throw new TypeError(e+" is not a function");return e}});var G9e=ye((c1r,V9e)=>{"use strict";var Zqt=Q2(),Yqt=uz(),Kqt=Object.prototype.toString;V9e.exports=function(e){if(!Zqt(e))return null;if(Yqt(e)){var t=e.toString;if(typeof t!="function"||t===Kqt)return null}try{return""+e}catch(r){return null}}});var j9e=ye((f1r,H9e)=>{"use strict";H9e.exports=function(e){try{return e.toString()}catch(t){try{return String(e)}catch(r){return null}}}});var X9e=ye((h1r,W9e)=>{"use strict";var Jqt=j9e(),$qt=/[\n\r\u2028\u2029]/g;W9e.exports=function(e){var t=Jqt(e);return t===null?"":(t.length>100&&(t=t.slice(0,99)+"\u2026"),t=t.replace($qt,function(r){switch(r){case` -`:return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}}),t)}});var kY=ye((d1r,K9e)=>{"use strict";var Z9e=Q2(),Qqt=uz(),eBt=G9e(),tBt=X9e(),Y9e=function(e,t){return e.replace("%v",tBt(t))};K9e.exports=function(e,t,r){if(!Qqt(r))throw new TypeError(Y9e(t,e));if(!Z9e(e)){if("default"in r)return r.default;if(r.isOptional)return null}var n=eBt(r.errorMessage);throw Z9e(n)||(n=t),new TypeError(Y9e(n,e))}});var $9e=ye((v1r,J9e)=>{"use strict";var rBt=kY(),iBt=Q2();J9e.exports=function(e){return iBt(e)?e:rBt(e,"Cannot use %v",arguments[1])}});var eOe=ye((p1r,Q9e)=>{"use strict";var nBt=kY(),aBt=xY();Q9e.exports=function(e){return aBt(e)?e:nBt(e,"%v is not a plain function",arguments[1])}});var rOe=ye((g1r,tOe)=>{"use strict";tOe.exports=function(){var e=Array.from,t,r;return typeof e!="function"?!1:(t=["raz","dwa"],r=e(t),!!(r&&r!==t&&r[1]==="dwa"))}});var nOe=ye((m1r,iOe)=>{"use strict";var oBt=Object.prototype.toString,sBt=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);iOe.exports=function(e){return typeof e=="function"&&sBt(oBt.call(e))}});var oOe=ye((y1r,aOe)=>{"use strict";aOe.exports=function(){var e=Math.sign;return typeof e!="function"?!1:e(10)===1&&e(-20)===-1}});var lOe=ye((_1r,sOe)=>{"use strict";sOe.exports=function(e){return e=Number(e),isNaN(e)||e===0?e:e>0?1:-1}});var cOe=ye((x1r,uOe)=>{"use strict";uOe.exports=oOe()()?Math.sign:lOe()});var hOe=ye((b1r,fOe)=>{"use strict";var lBt=cOe(),uBt=Math.abs,cBt=Math.floor;fOe.exports=function(e){return isNaN(e)?0:(e=Number(e),e===0||!isFinite(e)?e:lBt(e)*cBt(uBt(e)))}});var vOe=ye((w1r,dOe)=>{"use strict";var fBt=hOe(),hBt=Math.max;dOe.exports=function(e){return hBt(0,fBt(e))}});var yOe=ye((T1r,mOe)=>{"use strict";var dBt=ux().iterator,vBt=yk(),pBt=nOe(),gBt=vOe(),pOe=f5(),mBt=i1(),yBt=lx(),_Bt=_k(),gOe=Array.isArray,CY=Function.prototype.call,ew={configurable:!0,enumerable:!0,writable:!0,value:null},LY=Object.defineProperty;mOe.exports=function(e){var t=arguments[1],r=arguments[2],n,i,a,o,s,l,u,c,f,h;if(e=Object(mBt(e)),yBt(t)&&pOe(t),!this||this===Array||!pBt(this)){if(!t){if(vBt(e))return s=e.length,s!==1?Array.apply(null,e):(o=new Array(1),o[0]=e[0],o);if(gOe(e)){for(o=new Array(s=e.length),i=0;i=55296&&l<=56319&&(h+=e[++i])),h=t?CY.call(t,r,h,a):h,n?(ew.value=h,LY(o,a,ew)):o[a]=h,++a;s=a}}if(s===void 0)for(s=gBt(e.length),n&&(o=new n(s)),i=0;i{"use strict";_Oe.exports=rOe()()?Array.from:yOe()});var wOe=ye((S1r,bOe)=>{"use strict";var xBt=xOe(),bBt=cz(),wBt=i1();bOe.exports=function(e){var t=Object(wBt(e)),r=arguments[1],n=Object(arguments[2]);if(t!==e&&!r)return t;var i={};return r?xBt(r,function(a){(n.ensure||a in e)&&(i[a]=e[a])}):bBt(i,e),i}});var SOe=ye((M1r,AOe)=>{"use strict";var TBt=f5(),ABt=i1(),SBt=Function.prototype.bind,TOe=Function.prototype.call,MBt=Object.keys,EBt=Object.prototype.propertyIsEnumerable;AOe.exports=function(e,t){return function(r,n){var i,a=arguments[2],o=arguments[3];return r=Object(ABt(r)),TBt(n),i=MBt(r),o&&i.sort(typeof o=="function"?SBt.call(o,r):void 0),typeof e!="function"&&(e=i[e]),TOe.call(e,i,function(s,l){return EBt.call(r,s)?TOe.call(n,a,r[s],s,r,l):t})}}});var EOe=ye((E1r,MOe)=>{"use strict";MOe.exports=SOe()("forEach")});var COe=ye((k1r,kOe)=>{"use strict";var kBt=f5(),CBt=EOe(),LBt=Function.prototype.call;kOe.exports=function(e,t){var r={},n=arguments[2];return kBt(t),CBt(e,function(i,a,o,s){r[a]=LBt.call(t,n,i,a,o,s)}),r}});var ROe=ye((C1r,IOe)=>{"use strict";var PBt=Q2(),IBt=$9e(),LOe=eOe(),RBt=wOe(),DBt=bY(),FBt=COe(),zBt=Function.prototype.bind,OBt=Object.defineProperty,qBt=Object.prototype.hasOwnProperty,POe;POe=function(e,t,r){var n=IBt(t)&&LOe(t.value),i;return i=RBt(t),delete i.writable,delete i.value,i.get=function(){return!r.overwriteDefinition&&qBt.call(this,e)?n:(t.value=zBt.call(n,r.resolveContext?r.resolveContext(this):this),OBt(this,e,t),this[e])},i};IOe.exports=function(e){var t=DBt(arguments[1]);return PBt(t.resolveContext)&&LOe(t.resolveContext),FBt(e,function(r,n){return POe(n,r,t)})}});var PY=ye((L1r,OOe)=>{"use strict";var BBt=N9e(),NBt=cz(),UBt=f5(),VBt=i1(),qp=n1(),GBt=ROe(),DOe=ux(),FOe=Object.defineProperty,zOe=Object.defineProperties,wk;OOe.exports=wk=function(e,t){if(!(this instanceof wk))throw new TypeError("Constructor requires 'new'");zOe(this,{__list__:qp("w",VBt(e)),__context__:qp("w",t),__nextIndex__:qp("w",0)}),t&&(UBt(t.on),t.on("_add",this._onAdd),t.on("_delete",this._onDelete),t.on("_clear",this._onClear))};delete wk.prototype.constructor;zOe(wk.prototype,NBt({_next:qp(function(){var e;if(this.__list__){if(this.__redo__&&(e=this.__redo__.shift(),e!==void 0))return e;if(this.__nextIndex__=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__){FOe(this,"__redo__",qp("c",[e]));return}this.__redo__.forEach(function(t,r){t>=e&&(this.__redo__[r]=++t)},this),this.__redo__.push(e)}}),_onDelete:qp(function(e){var t;e>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(t=this.__redo__.indexOf(e),t!==-1&&this.__redo__.splice(t,1),this.__redo__.forEach(function(r,n){r>e&&(this.__redo__[n]=--r)},this)))}),_onClear:qp(function(){this.__redo__&&BBt.call(this.__redo__),this.__nextIndex__=0})})));FOe(wk.prototype,DOe.iterator,qp(function(){return this}))});var VOe=ye((P1r,UOe)=>{"use strict";var qOe=lz(),BOe=TY(),IY=n1(),HBt=ux(),RY=PY(),NOe=Object.defineProperty,h5;h5=UOe.exports=function(e,t){if(!(this instanceof h5))throw new TypeError("Constructor requires 'new'");RY.call(this,e),t?BOe.call(t,"key+value")?t="key+value":BOe.call(t,"key")?t="key":t="value":t="value",NOe(this,"__kind__",IY("",t))};qOe&&qOe(h5,RY);delete h5.prototype.constructor;h5.prototype=Object.create(RY.prototype,{_resolve:IY(function(e){return this.__kind__==="value"?this.__list__[e]:this.__kind__==="key+value"?[e,this.__list__[e]]:e})});NOe(h5.prototype,HBt.toStringTag,IY("c","Array Iterator"))});var WOe=ye((I1r,jOe)=>{"use strict";var GOe=lz(),vz=n1(),jBt=ux(),DY=PY(),HOe=Object.defineProperty,d5;d5=jOe.exports=function(e){if(!(this instanceof d5))throw new TypeError("Constructor requires 'new'");e=String(e),DY.call(this,e),HOe(this,"__length__",vz("",e.length))};GOe&&GOe(d5,DY);delete d5.prototype.constructor;d5.prototype=Object.create(DY.prototype,{_next:vz(function(){if(this.__list__){if(this.__nextIndex__=55296&&r<=56319?t+this.__list__[this.__nextIndex__++]:t)})});HOe(d5.prototype,jBt.toStringTag,vz("c","String Iterator"))});var ZOe=ye((R1r,XOe)=>{"use strict";var WBt=yk(),XBt=lx(),ZBt=_k(),YBt=ux().iterator,KBt=Array.isArray;XOe.exports=function(e){return XBt(e)?KBt(e)||ZBt(e)||WBt(e)?!0:typeof e[YBt]=="function":!1}});var KOe=ye((D1r,YOe)=>{"use strict";var JBt=ZOe();YOe.exports=function(e){if(!JBt(e))throw new TypeError(e+" is not iterable");return e}});var FY=ye((F1r,QOe)=>{"use strict";var $Bt=yk(),QBt=_k(),JOe=VOe(),eNt=WOe(),tNt=KOe(),$Oe=ux().iterator;QOe.exports=function(e){return typeof tNt(e)[$Oe]=="function"?e[$Oe]():$Bt(e)?new JOe(e):QBt(e)?new eNt(e):new JOe(e)}});var tqe=ye((z1r,eqe)=>{"use strict";var rNt=yk(),iNt=f5(),nNt=_k(),aNt=FY(),oNt=Array.isArray,zY=Function.prototype.call,sNt=Array.prototype.some;eqe.exports=function(e,t){var r,n=arguments[2],i,a,o,s,l,u,c;if(oNt(e)||rNt(e)?r="array":nNt(e)?r="string":e=aNt(e),iNt(t),a=function(){o=!0},r==="array"){sNt.call(e,function(f){return zY.call(t,n,f,a),o});return}if(r==="string"){for(l=e.length,s=0;s=55296&&c<=56319&&(u+=e[++s])),zY.call(t,n,u,a),!o);++s);return}for(i=e.next();!i.done;){if(zY.call(t,n,i.value,a),o)return;i=e.next()}}});var iqe=ye((O1r,rqe)=>{"use strict";rqe.exports=function(){return typeof WeakMap!="function"?!1:Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"}()});var oqe=ye((q1r,aqe)=>{"use strict";var lNt=lx(),gz=lz(),pz=R7e(),uNt=i1(),cNt=F7e(),a1=n1(),fNt=FY(),hNt=tqe(),dNt=ux().toStringTag,nqe=iqe(),vNt=Array.isArray,qY=Object.defineProperty,OY=Object.prototype.hasOwnProperty,pNt=Object.getPrototypeOf,cx;aqe.exports=cx=function(){var e=arguments[0],t;if(!(this instanceof cx))throw new TypeError("Constructor requires 'new'");return t=nqe&&gz&&WeakMap!==cx?gz(new WeakMap,pNt(this)):this,lNt(e)&&(vNt(e)||(e=fNt(e))),qY(t,"__weakMapData__",a1("c","$weakMap$"+cNt())),e&&hNt(e,function(r){uNt(r),t.set(r[0],r[1])}),t};nqe&&(gz&&gz(cx,WeakMap),cx.prototype=Object.create(WeakMap.prototype,{constructor:a1(cx)}));Object.defineProperties(cx.prototype,{delete:a1(function(e){return OY.call(pz(e),this.__weakMapData__)?(delete e[this.__weakMapData__],!0):!1}),get:a1(function(e){if(OY.call(pz(e),this.__weakMapData__))return e[this.__weakMapData__]}),has:a1(function(e){return OY.call(pz(e),this.__weakMapData__)}),set:a1(function(e,t){return qY(pz(e),this.__weakMapData__,a1("c",t)),this}),toString:a1(function(){return"[object WeakMap]"})});qY(cx.prototype,dNt,a1("c","WeakMap"))});var BY=ye((B1r,sqe)=>{"use strict";sqe.exports=x7e()()?WeakMap:oqe()});var uqe=ye((N1r,lqe)=>{"use strict";lqe.exports=function(e,t,r){if(typeof Array.prototype.findIndex=="function")return e.findIndex(t,r);if(typeof t!="function")throw new TypeError("predicate must be a function");var n=Object(e),i=n.length;if(i===0)return-1;for(var a=0;a{"use strict";var mz=J_(),gNt=W2(),UY=Oh(),mNt=Zm(),yNt=X2(),cqe=g7e(),_Nt=y7e(),{float32:xNt,fract32:NY}=QF(),bNt=BY(),fqe=r5(),wNt=uqe(),TNt=` +`]),c7e&&(v.frag=v.frag.replace("smoothstep","smoothStep"),d.frag=d.frag.replace("smoothstep","smoothStep")),this.drawCircle=e(v)}nv.defaults={color:"black",borderColor:"transparent",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4};nv.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this};nv.prototype.draw=function(){for(var e=this,t=arguments.length,r=new Array(t),n=0;nte)?N.tree=IOt(j,{bounds:me}):te&&te.length&&(N.tree=te),N.tree){var ie={primitive:"points",usage:"static",data:N.tree,type:"uint32"};N.elements?N.elements(ie):N.elements=o.elements(ie)}var Se=rz.float32(j);oe({data:Se,usage:"dynamic"});var Le=rz.fract32(j,Se);return _e({data:Le,usage:"dynamic"}),Ee({data:new Uint8Array(Ce),type:"uint8",usage:"stream"}),j}},{marker:function(j,N,H){var te=N.activation;if(te.forEach(function(Le){return Le&&Le.destroy&&Le.destroy()}),te.length=0,!j||typeof j[0]=="number"){var oe=e.addMarker(j);te[oe]=!0}else{for(var _e=[],Ee=0,Ce=Math.min(j.length,N.count);Ee=0)return i;var a;if(e instanceof Uint8Array||e instanceof Uint8ClampedArray)a=e;else{a=new Uint8Array(e.length);for(var o=0,s=e.length;on*4&&(this.tooManyColors=!0),this.updatePalette(r),i.length===1?i[0]:i};nv.prototype.updatePalette=function(e){if(!this.tooManyColors){var t=this.maxColors,r=this.paletteTexture,n=Math.ceil(e.length*.25/t);if(n>1){e=e.slice();for(var i=e.length*.25%t;i{"use strict";gY.exports=az;gY.exports.default=az;function az(e,t,r){r=r||2;var n=t&&t.length,i=n?t[0]*r:e.length,a=v7e(e,0,i,r,!0),o=[];if(!a||a.next===a.prev)return o;var s,l,u,c,f,h,d;if(n&&(a=HOt(e,t,a,r)),e.length>80*r){s=u=e[0],l=c=e[1];for(var v=r;vu&&(u=f),h>c&&(c=h);d=Math.max(u-s,c-l),d=d!==0?32767/d:0}return vk(a,o,r,s,l,d,0),o}function v7e(e,t,r,n,i){var a,o;if(i===pY(e,t,r,n)>0)for(a=t;a=t;a-=n)o=d7e(a,e[a],e[a+1],o);return o&&oz(o,o.next)&&(gk(o),o=o.next),o}function Q2(e,t){if(!e)return e;t||(t=e);var r=e,n;do if(n=!1,!r.steiner&&(oz(r,r.next)||xh(r.prev,r,r.next)===0)){if(gk(r),r=t=r.prev,r===r.next)break;n=!0}else r=r.next;while(n||r!==t);return t}function vk(e,t,r,n,i,a,o){if(e){!o&&a&&YOt(e,n,i,a);for(var s=e,l,u;e.prev!==e.next;){if(l=e.prev,u=e.next,a?UOt(e,n,i,a):NOt(e)){t.push(l.i/r|0),t.push(e.i/r|0),t.push(u.i/r|0),gk(e),e=u.next,s=u.next;continue}if(e=u,e===s){o?o===1?(e=VOt(Q2(e),t,r),vk(e,t,r,n,i,a,2)):o===2&&GOt(e,t,r,n,i,a):vk(Q2(e),t,r,n,i,a,1);break}}}}function NOt(e){var t=e.prev,r=e,n=e.next;if(xh(t,r,n)>=0)return!1;for(var i=t.x,a=r.x,o=n.x,s=t.y,l=r.y,u=n.y,c=ia?i>o?i:o:a>o?a:o,d=s>l?s>u?s:u:l>u?l:u,v=n.next;v!==t;){if(v.x>=c&&v.x<=h&&v.y>=f&&v.y<=d&&c5(i,s,a,l,o,u,v.x,v.y)&&xh(v.prev,v,v.next)>=0)return!1;v=v.next}return!0}function UOt(e,t,r,n){var i=e.prev,a=e,o=e.next;if(xh(i,a,o)>=0)return!1;for(var s=i.x,l=a.x,u=o.x,c=i.y,f=a.y,h=o.y,d=sl?s>u?s:u:l>u?l:u,b=c>f?c>h?c:h:f>h?f:h,p=dY(d,v,t,r,n),k=dY(_,b,t,r,n),E=e.prevZ,S=e.nextZ;E&&E.z>=p&&S&&S.z<=k;){if(E.x>=d&&E.x<=_&&E.y>=v&&E.y<=b&&E!==i&&E!==o&&c5(s,c,l,f,u,h,E.x,E.y)&&xh(E.prev,E,E.next)>=0||(E=E.prevZ,S.x>=d&&S.x<=_&&S.y>=v&&S.y<=b&&S!==i&&S!==o&&c5(s,c,l,f,u,h,S.x,S.y)&&xh(S.prev,S,S.next)>=0))return!1;S=S.nextZ}for(;E&&E.z>=p;){if(E.x>=d&&E.x<=_&&E.y>=v&&E.y<=b&&E!==i&&E!==o&&c5(s,c,l,f,u,h,E.x,E.y)&&xh(E.prev,E,E.next)>=0)return!1;E=E.prevZ}for(;S&&S.z<=k;){if(S.x>=d&&S.x<=_&&S.y>=v&&S.y<=b&&S!==i&&S!==o&&c5(s,c,l,f,u,h,S.x,S.y)&&xh(S.prev,S,S.next)>=0)return!1;S=S.nextZ}return!0}function VOt(e,t,r){var n=e;do{var i=n.prev,a=n.next.next;!oz(i,a)&&p7e(i,n,n.next,a)&&pk(i,a)&&pk(a,i)&&(t.push(i.i/r|0),t.push(n.i/r|0),t.push(a.i/r|0),gk(n),gk(n.next),n=e=a),n=n.next}while(n!==e);return Q2(n)}function GOt(e,t,r,n,i,a){var o=e;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&$Ot(o,s)){var l=g7e(o,s);o=Q2(o,o.next),l=Q2(l,l.next),vk(o,t,r,n,i,a,0),vk(l,t,r,n,i,a,0);return}s=s.next}o=o.next}while(o!==e)}function HOt(e,t,r,n){var i=[],a,o,s,l,u;for(a=0,o=t.length;a=r.next.y&&r.next.y!==r.y){var s=r.x+(i-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(s<=n&&s>a&&(a=s,o=r.x=r.x&&r.x>=u&&n!==r.x&&c5(io.x||r.x===o.x&&ZOt(o,r)))&&(o=r,f=h)),r=r.next;while(r!==l);return o}function ZOt(e,t){return xh(e.prev,e,t.prev)<0&&xh(t.next,e,e.next)<0}function YOt(e,t,r,n){var i=e;do i.z===0&&(i.z=dY(i.x,i.y,t,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,KOt(i)}function KOt(e){var t,r,n,i,a,o,s,l,u=1;do{for(r=e,e=null,a=null,o=0;r;){for(o++,n=r,s=0,t=0;t0||l>0&&n;)s!==0&&(l===0||!n||r.z<=n.z)?(i=r,r=r.nextZ,s--):(i=n,n=n.nextZ,l--),a?a.nextZ=i:e=i,i.prevZ=a,a=i;r=n}a.nextZ=null,u*=2}while(o>1);return e}function dY(e,t,r,n,i){return e=(e-r)*i|0,t=(t-n)*i|0,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1}function JOt(e){var t=e,r=e;do(t.x=(e-o)*(a-s)&&(e-o)*(n-s)>=(r-o)*(t-s)&&(r-o)*(a-s)>=(i-o)*(n-s)}function $Ot(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!QOt(e,t)&&(pk(e,t)&&pk(t,e)&&eqt(e,t)&&(xh(e.prev,e,t.prev)||xh(e,t.prev,t))||oz(e,t)&&xh(e.prev,e,e.next)>0&&xh(t.prev,t,t.next)>0)}function xh(e,t,r){return(t.y-e.y)*(r.x-t.x)-(t.x-e.x)*(r.y-t.y)}function oz(e,t){return e.x===t.x&&e.y===t.y}function p7e(e,t,r,n){var i=nz(xh(e,t,r)),a=nz(xh(e,t,n)),o=nz(xh(r,n,e)),s=nz(xh(r,n,t));return!!(i!==a&&o!==s||i===0&&iz(e,r,t)||a===0&&iz(e,n,t)||o===0&&iz(r,e,n)||s===0&&iz(r,t,n))}function iz(e,t,r){return t.x<=Math.max(e.x,r.x)&&t.x>=Math.min(e.x,r.x)&&t.y<=Math.max(e.y,r.y)&&t.y>=Math.min(e.y,r.y)}function nz(e){return e>0?1:e<0?-1:0}function QOt(e,t){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==t.i&&r.next.i!==t.i&&p7e(r,r.next,e,t))return!0;r=r.next}while(r!==e);return!1}function pk(e,t){return xh(e.prev,e,e.next)<0?xh(e,t,e.next)>=0&&xh(e,e.prev,t)>=0:xh(e,t,e.prev)<0||xh(e,e.next,t)<0}function eqt(e,t){var r=e,n=!1,i=(e.x+t.x)/2,a=(e.y+t.y)/2;do r.y>a!=r.next.y>a&&r.next.y!==r.y&&i<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next;while(r!==e);return n}function g7e(e,t){var r=new vY(e.i,e.x,e.y),n=new vY(t.i,t.x,t.y),i=e.next,a=t.prev;return e.next=t,t.prev=e,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function d7e(e,t,r,n){var i=new vY(e,t,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function gk(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function vY(e,t,r){this.i=e,this.x=t,this.y=r,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}az.deviation=function(e,t,r,n){var i=t&&t.length,a=i?t[0]*r:e.length,o=Math.abs(pY(e,0,a,r));if(i)for(var s=0,l=t.length;s0&&(n+=e[i-1].length,r.holes.push(n))}return r}});var _7e=ye((byr,y7e)=>{"use strict";var tqt=X2();y7e.exports=rqt;function rqt(e,t,r){if(!e||e.length==null)throw Error("Argument should be an array");t==null&&(t=1),r==null&&(r=tqt(e,t));for(var n=0;n{"use strict";x7e.exports=function(){var e,t;if(typeof WeakMap!="function")return!1;try{e=new WeakMap([[t={},"one"],[{},"two"],[{},"three"]])}catch(r){return!1}return!(String(e)!=="[object WeakMap]"||typeof e.set!="function"||e.set({},1)!==e||typeof e.delete!="function"||typeof e.has!="function"||e.get(t)!=="one")}});var T7e=ye((Tyr,w7e)=>{"use strict";w7e.exports=function(){}});var lx=ye((Ayr,A7e)=>{"use strict";var iqt=T7e()();A7e.exports=function(e){return e!==iqt&&e!==null}});var mY=ye((Syr,M7e)=>{"use strict";var nqt=Object.create,aqt=Object.getPrototypeOf,S7e={};M7e.exports=function(){var e=Object.setPrototypeOf,t=arguments[0]||nqt;return typeof e!="function"?!1:aqt(e(t(null),S7e))===S7e}});var yY=ye((Myr,E7e)=>{"use strict";var oqt=lx(),sqt={function:!0,object:!0};E7e.exports=function(e){return oqt(e)&&sqt[typeof e]||!1}});var i1=ye((Eyr,k7e)=>{"use strict";var lqt=lx();k7e.exports=function(e){if(!lqt(e))throw new TypeError("Cannot use null or undefined");return e}});var L7e=ye((kyr,C7e)=>{"use strict";var _Y=Object.create,sz;mY()()||(sz=xY());C7e.exports=function(){var e,t,r;return!sz||sz.level!==1?_Y:(e={},t={},r={configurable:!1,enumerable:!1,writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(n){if(n==="__proto__"){t[n]={configurable:!0,enumerable:!1,writable:!0,value:void 0};return}t[n]=r}),Object.defineProperties(e,t),Object.defineProperty(sz,"nullPolyfill",{configurable:!1,enumerable:!1,writable:!1,value:e}),function(n,i){return _Y(n===null?e:n,i)})}()});var xY=ye((Cyr,P7e)=>{"use strict";var uqt=yY(),cqt=i1(),fqt=Object.prototype.isPrototypeOf,hqt=Object.defineProperty,dqt={configurable:!0,enumerable:!1,writable:!0,value:void 0},lz;lz=function(e,t){if(cqt(e),t===null||uqt(t))return e;throw new TypeError("Prototype must be null or an object")};P7e.exports=function(e){var t,r;return e?(e.level===2?e.set?(r=e.set,t=function(n,i){return r.call(lz(n,i),i),n}):t=function(n,i){return lz(n,i).__proto__=i,n}:t=function n(i,a){var o;return lz(i,a),o=fqt.call(n.nullPolyfill,i),o&&delete n.nullPolyfill.__proto__,a===null&&(a=n.nullPolyfill),i.__proto__=a,o&&hqt(n.nullPolyfill,"__proto__",dqt),i},Object.defineProperty(t,"level",{configurable:!1,enumerable:!1,writable:!1,value:e.level})):null}(function(){var e=Object.create(null),t={},r,n=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__");if(n){try{r=n.set,r.call(e,t)}catch(i){}if(Object.getPrototypeOf(e)===t)return{set:r,level:2}}return e.__proto__=t,Object.getPrototypeOf(e)===t?{level:2}:(e={},e.__proto__=t,Object.getPrototypeOf(e)===t?{level:1}:!1)}());L7e()});var uz=ye((Lyr,I7e)=>{"use strict";I7e.exports=mY()()?Object.setPrototypeOf:xY()});var D7e=ye((Pyr,R7e)=>{"use strict";var vqt=yY();R7e.exports=function(e){if(!vqt(e))throw new TypeError(e+" is not an Object");return e}});var z7e=ye((Iyr,F7e)=>{"use strict";var pqt=Object.create(null),gqt=Math.random;F7e.exports=function(){var e;do e=gqt().toString(36).slice(2);while(pqt[e]);return e}});var ew=ye((Ryr,O7e)=>{"use strict";var mqt=void 0;O7e.exports=function(e){return e!==mqt&&e!==null}});var cz=ye((Dyr,q7e)=>{"use strict";var yqt=ew(),_qt={object:!0,function:!0,undefined:!0};q7e.exports=function(e){return yqt(e)?hasOwnProperty.call(_qt,typeof e):!1}});var N7e=ye((Fyr,B7e)=>{"use strict";var xqt=cz();B7e.exports=function(e){if(!xqt(e))return!1;try{return e.constructor?e.constructor.prototype===e:!1}catch(t){return!1}}});var V7e=ye((zyr,U7e)=>{"use strict";var bqt=N7e();U7e.exports=function(e){if(typeof e!="function"||!hasOwnProperty.call(e,"length"))return!1;try{if(typeof e.length!="number"||typeof e.call!="function"||typeof e.apply!="function")return!1}catch(t){return!1}return!bqt(e)}});var bY=ye((Oyr,G7e)=>{"use strict";var wqt=V7e(),Tqt=/^\s*class[\s{/}]/,Aqt=Function.prototype.toString;G7e.exports=function(e){return!(!wqt(e)||Tqt.test(Aqt.call(e)))}});var j7e=ye((qyr,H7e)=>{"use strict";H7e.exports=function(){var e=Object.assign,t;return typeof e!="function"?!1:(t={foo:"raz"},e(t,{bar:"dwa"},{trzy:"trzy"}),t.foo+t.bar+t.trzy==="razdwatrzy")}});var X7e=ye((Byr,W7e)=>{"use strict";W7e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}});var Y7e=ye((Nyr,Z7e)=>{"use strict";var Sqt=lx(),Mqt=Object.keys;Z7e.exports=function(e){return Mqt(Sqt(e)?Object(e):e)}});var J7e=ye((Uyr,K7e)=>{"use strict";K7e.exports=X7e()()?Object.keys:Y7e()});var Q7e=ye((Vyr,$7e)=>{"use strict";var Eqt=J7e(),kqt=i1(),Cqt=Math.max;$7e.exports=function(e,t){var r,n,i=Cqt(arguments.length,2),a;for(e=Object(kqt(e)),a=function(o){try{e[o]=t[o]}catch(s){r||(r=s)}},n=1;n{"use strict";e9e.exports=j7e()()?Object.assign:Q7e()});var wY=ye((Hyr,t9e)=>{"use strict";var Lqt=lx(),Pqt=Array.prototype.forEach,Iqt=Object.create,Rqt=function(e,t){var r;for(r in e)t[r]=e[r]};t9e.exports=function(e){var t=Iqt(null);return Pqt.call(arguments,function(r){Lqt(r)&&Rqt(Object(r),t)}),t}});var i9e=ye((jyr,r9e)=>{"use strict";var TY="razdwatrzy";r9e.exports=function(){return typeof TY.contains!="function"?!1:TY.contains("dwa")===!0&&TY.contains("foo")===!1}});var a9e=ye((Wyr,n9e)=>{"use strict";var Dqt=String.prototype.indexOf;n9e.exports=function(e){return Dqt.call(this,e,arguments[1])>-1}});var AY=ye((Xyr,o9e)=>{"use strict";o9e.exports=i9e()()?String.prototype.contains:a9e()});var n1=ye((Zyr,c9e)=>{"use strict";var hz=ew(),s9e=bY(),l9e=fz(),u9e=wY(),mk=AY(),Fqt=c9e.exports=function(e,t){var r,n,i,a,o;return arguments.length<2||typeof e!="string"?(a=t,t=e,e=null):a=arguments[2],hz(e)?(r=mk.call(e,"c"),n=mk.call(e,"e"),i=mk.call(e,"w")):(r=i=!0,n=!1),o={value:t,configurable:r,enumerable:n,writable:i},a?l9e(u9e(a),o):o};Fqt.gs=function(e,t,r){var n,i,a,o;return typeof e!="string"?(a=r,r=t,t=e,e=null):a=arguments[3],hz(t)?s9e(t)?hz(r)?s9e(r)||(a=r,r=void 0):r=void 0:(a=t,t=r=void 0):t=void 0,hz(e)?(n=mk.call(e,"c"),i=mk.call(e,"e")):(n=!0,i=!1),o={get:t,set:r,configurable:n,enumerable:i},a?l9e(u9e(a),o):o}});var yk=ye((Yyr,h9e)=>{"use strict";var f9e=Object.prototype.toString,zqt=f9e.call(function(){return arguments}());h9e.exports=function(e){return f9e.call(e)===zqt}});var _k=ye((Kyr,v9e)=>{"use strict";var d9e=Object.prototype.toString,Oqt=d9e.call("");v9e.exports=function(e){return typeof e=="string"||e&&typeof e=="object"&&(e instanceof String||d9e.call(e)===Oqt)||!1}});var g9e=ye((Jyr,p9e)=>{"use strict";p9e.exports=function(){return typeof globalThis!="object"||!globalThis?!1:globalThis.Array===Array}});var _9e=ye(($yr,y9e)=>{var m9e=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};y9e.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch(e){return m9e()}try{return __global__||m9e()}finally{delete Object.prototype.__global__}}()});var xk=ye((Qyr,x9e)=>{"use strict";x9e.exports=g9e()()?globalThis:_9e()});var w9e=ye((e1r,b9e)=>{"use strict";var qqt=xk(),SY={object:!0,symbol:!0};b9e.exports=function(){var e=qqt.Symbol,t;if(typeof e!="function")return!1;t=e("test symbol");try{String(t)}catch(r){return!1}return!(!SY[typeof e.iterator]||!SY[typeof e.toPrimitive]||!SY[typeof e.toStringTag])}});var A9e=ye((t1r,T9e)=>{"use strict";T9e.exports=function(e){return e?typeof e=="symbol"?!0:!e.constructor||e.constructor.name!=="Symbol"?!1:e[e.constructor.toStringTag]==="Symbol":!1}});var MY=ye((r1r,S9e)=>{"use strict";var Bqt=A9e();S9e.exports=function(e){if(!Bqt(e))throw new TypeError(e+" is not a symbol");return e}});var L9e=ye((i1r,C9e)=>{"use strict";var M9e=n1(),Nqt=Object.create,E9e=Object.defineProperty,Uqt=Object.prototype,k9e=Nqt(null);C9e.exports=function(e){for(var t=0,r,n;k9e[e+(t||"")];)++t;return e+=t||"",k9e[e]=!0,r="@@"+e,E9e(Uqt,r,M9e.gs(null,function(i){n||(n=!0,E9e(this,r,M9e(i)),n=!1)})),r}});var I9e=ye((n1r,P9e)=>{"use strict";var em=n1(),qh=xk().Symbol;P9e.exports=function(e){return Object.defineProperties(e,{hasInstance:em("",qh&&qh.hasInstance||e("hasInstance")),isConcatSpreadable:em("",qh&&qh.isConcatSpreadable||e("isConcatSpreadable")),iterator:em("",qh&&qh.iterator||e("iterator")),match:em("",qh&&qh.match||e("match")),replace:em("",qh&&qh.replace||e("replace")),search:em("",qh&&qh.search||e("search")),species:em("",qh&&qh.species||e("species")),split:em("",qh&&qh.split||e("split")),toPrimitive:em("",qh&&qh.toPrimitive||e("toPrimitive")),toStringTag:em("",qh&&qh.toStringTag||e("toStringTag")),unscopables:em("",qh&&qh.unscopables||e("unscopables"))})}});var F9e=ye((a1r,D9e)=>{"use strict";var R9e=n1(),Vqt=MY(),bk=Object.create(null);D9e.exports=function(e){return Object.defineProperties(e,{for:R9e(function(t){return bk[t]?bk[t]:bk[t]=e(String(t))}),keyFor:R9e(function(t){var r;Vqt(t);for(r in bk)if(bk[r]===t)return r})})}});var q9e=ye((o1r,O9e)=>{"use strict";var Ym=n1(),EY=MY(),dz=xk().Symbol,Gqt=L9e(),Hqt=I9e(),jqt=F9e(),Wqt=Object.create,kY=Object.defineProperties,vz=Object.defineProperty,Xv,f5,z9e;if(typeof dz=="function")try{String(dz()),z9e=!0}catch(e){}else dz=null;f5=function(t){if(this instanceof f5)throw new TypeError("Symbol is not a constructor");return Xv(t)};O9e.exports=Xv=function e(t){var r;if(this instanceof e)throw new TypeError("Symbol is not a constructor");return z9e?dz(t):(r=Wqt(f5.prototype),t=t===void 0?"":String(t),kY(r,{__description__:Ym("",t),__name__:Ym("",Gqt(t))}))};Hqt(Xv);jqt(Xv);kY(f5.prototype,{constructor:Ym(Xv),toString:Ym("",function(){return this.__name__})});kY(Xv.prototype,{toString:Ym(function(){return"Symbol ("+EY(this).__description__+")"}),valueOf:Ym(function(){return EY(this)})});vz(Xv.prototype,Xv.toPrimitive,Ym("",function(){var e=EY(this);return typeof e=="symbol"?e:e.toString()}));vz(Xv.prototype,Xv.toStringTag,Ym("c","Symbol"));vz(f5.prototype,Xv.toStringTag,Ym("c",Xv.prototype[Xv.toStringTag]));vz(f5.prototype,Xv.toPrimitive,Ym("c",Xv.prototype[Xv.toPrimitive]))});var ux=ye((s1r,B9e)=>{"use strict";B9e.exports=w9e()()?xk().Symbol:q9e()});var U9e=ye((l1r,N9e)=>{"use strict";var Xqt=i1();N9e.exports=function(){return Xqt(this).length=0,this}});var h5=ye((u1r,V9e)=>{"use strict";V9e.exports=function(e){if(typeof e!="function")throw new TypeError(e+" is not a function");return e}});var H9e=ye((c1r,G9e)=>{"use strict";var Zqt=ew(),Yqt=cz(),Kqt=Object.prototype.toString;G9e.exports=function(e){if(!Zqt(e))return null;if(Yqt(e)){var t=e.toString;if(typeof t!="function"||t===Kqt)return null}try{return""+e}catch(r){return null}}});var W9e=ye((f1r,j9e)=>{"use strict";j9e.exports=function(e){try{return e.toString()}catch(t){try{return String(e)}catch(r){return null}}}});var Z9e=ye((h1r,X9e)=>{"use strict";var Jqt=W9e(),$qt=/[\n\r\u2028\u2029]/g;X9e.exports=function(e){var t=Jqt(e);return t===null?"":(t.length>100&&(t=t.slice(0,99)+"\u2026"),t=t.replace($qt,function(r){switch(r){case` +`:return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}}),t)}});var CY=ye((d1r,J9e)=>{"use strict";var Y9e=ew(),Qqt=cz(),eBt=H9e(),tBt=Z9e(),K9e=function(e,t){return e.replace("%v",tBt(t))};J9e.exports=function(e,t,r){if(!Qqt(r))throw new TypeError(K9e(t,e));if(!Y9e(e)){if("default"in r)return r.default;if(r.isOptional)return null}var n=eBt(r.errorMessage);throw Y9e(n)||(n=t),new TypeError(K9e(n,e))}});var Q9e=ye((v1r,$9e)=>{"use strict";var rBt=CY(),iBt=ew();$9e.exports=function(e){return iBt(e)?e:rBt(e,"Cannot use %v",arguments[1])}});var tOe=ye((p1r,eOe)=>{"use strict";var nBt=CY(),aBt=bY();eOe.exports=function(e){return aBt(e)?e:nBt(e,"%v is not a plain function",arguments[1])}});var iOe=ye((g1r,rOe)=>{"use strict";rOe.exports=function(){var e=Array.from,t,r;return typeof e!="function"?!1:(t=["raz","dwa"],r=e(t),!!(r&&r!==t&&r[1]==="dwa"))}});var aOe=ye((m1r,nOe)=>{"use strict";var oBt=Object.prototype.toString,sBt=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);nOe.exports=function(e){return typeof e=="function"&&sBt(oBt.call(e))}});var sOe=ye((y1r,oOe)=>{"use strict";oOe.exports=function(){var e=Math.sign;return typeof e!="function"?!1:e(10)===1&&e(-20)===-1}});var uOe=ye((_1r,lOe)=>{"use strict";lOe.exports=function(e){return e=Number(e),isNaN(e)||e===0?e:e>0?1:-1}});var fOe=ye((x1r,cOe)=>{"use strict";cOe.exports=sOe()()?Math.sign:uOe()});var dOe=ye((b1r,hOe)=>{"use strict";var lBt=fOe(),uBt=Math.abs,cBt=Math.floor;hOe.exports=function(e){return isNaN(e)?0:(e=Number(e),e===0||!isFinite(e)?e:lBt(e)*cBt(uBt(e)))}});var pOe=ye((w1r,vOe)=>{"use strict";var fBt=dOe(),hBt=Math.max;vOe.exports=function(e){return hBt(0,fBt(e))}});var _Oe=ye((T1r,yOe)=>{"use strict";var dBt=ux().iterator,vBt=yk(),pBt=aOe(),gBt=pOe(),gOe=h5(),mBt=i1(),yBt=lx(),_Bt=_k(),mOe=Array.isArray,LY=Function.prototype.call,tw={configurable:!0,enumerable:!0,writable:!0,value:null},PY=Object.defineProperty;yOe.exports=function(e){var t=arguments[1],r=arguments[2],n,i,a,o,s,l,u,c,f,h;if(e=Object(mBt(e)),yBt(t)&&gOe(t),!this||this===Array||!pBt(this)){if(!t){if(vBt(e))return s=e.length,s!==1?Array.apply(null,e):(o=new Array(1),o[0]=e[0],o);if(mOe(e)){for(o=new Array(s=e.length),i=0;i=55296&&l<=56319&&(h+=e[++i])),h=t?LY.call(t,r,h,a):h,n?(tw.value=h,PY(o,a,tw)):o[a]=h,++a;s=a}}if(s===void 0)for(s=gBt(e.length),n&&(o=new n(s)),i=0;i{"use strict";xOe.exports=iOe()()?Array.from:_Oe()});var TOe=ye((S1r,wOe)=>{"use strict";var xBt=bOe(),bBt=fz(),wBt=i1();wOe.exports=function(e){var t=Object(wBt(e)),r=arguments[1],n=Object(arguments[2]);if(t!==e&&!r)return t;var i={};return r?xBt(r,function(a){(n.ensure||a in e)&&(i[a]=e[a])}):bBt(i,e),i}});var MOe=ye((M1r,SOe)=>{"use strict";var TBt=h5(),ABt=i1(),SBt=Function.prototype.bind,AOe=Function.prototype.call,MBt=Object.keys,EBt=Object.prototype.propertyIsEnumerable;SOe.exports=function(e,t){return function(r,n){var i,a=arguments[2],o=arguments[3];return r=Object(ABt(r)),TBt(n),i=MBt(r),o&&i.sort(typeof o=="function"?SBt.call(o,r):void 0),typeof e!="function"&&(e=i[e]),AOe.call(e,i,function(s,l){return EBt.call(r,s)?AOe.call(n,a,r[s],s,r,l):t})}}});var kOe=ye((E1r,EOe)=>{"use strict";EOe.exports=MOe()("forEach")});var LOe=ye((k1r,COe)=>{"use strict";var kBt=h5(),CBt=kOe(),LBt=Function.prototype.call;COe.exports=function(e,t){var r={},n=arguments[2];return kBt(t),CBt(e,function(i,a,o,s){r[a]=LBt.call(t,n,i,a,o,s)}),r}});var DOe=ye((C1r,ROe)=>{"use strict";var PBt=ew(),IBt=Q9e(),POe=tOe(),RBt=TOe(),DBt=wY(),FBt=LOe(),zBt=Function.prototype.bind,OBt=Object.defineProperty,qBt=Object.prototype.hasOwnProperty,IOe;IOe=function(e,t,r){var n=IBt(t)&&POe(t.value),i;return i=RBt(t),delete i.writable,delete i.value,i.get=function(){return!r.overwriteDefinition&&qBt.call(this,e)?n:(t.value=zBt.call(n,r.resolveContext?r.resolveContext(this):this),OBt(this,e,t),this[e])},i};ROe.exports=function(e){var t=DBt(arguments[1]);return PBt(t.resolveContext)&&POe(t.resolveContext),FBt(e,function(r,n){return IOe(n,r,t)})}});var IY=ye((L1r,qOe)=>{"use strict";var BBt=U9e(),NBt=fz(),UBt=h5(),VBt=i1(),qp=n1(),GBt=DOe(),FOe=ux(),zOe=Object.defineProperty,OOe=Object.defineProperties,wk;qOe.exports=wk=function(e,t){if(!(this instanceof wk))throw new TypeError("Constructor requires 'new'");OOe(this,{__list__:qp("w",VBt(e)),__context__:qp("w",t),__nextIndex__:qp("w",0)}),t&&(UBt(t.on),t.on("_add",this._onAdd),t.on("_delete",this._onDelete),t.on("_clear",this._onClear))};delete wk.prototype.constructor;OOe(wk.prototype,NBt({_next:qp(function(){var e;if(this.__list__){if(this.__redo__&&(e=this.__redo__.shift(),e!==void 0))return e;if(this.__nextIndex__=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__){zOe(this,"__redo__",qp("c",[e]));return}this.__redo__.forEach(function(t,r){t>=e&&(this.__redo__[r]=++t)},this),this.__redo__.push(e)}}),_onDelete:qp(function(e){var t;e>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(t=this.__redo__.indexOf(e),t!==-1&&this.__redo__.splice(t,1),this.__redo__.forEach(function(r,n){r>e&&(this.__redo__[n]=--r)},this)))}),_onClear:qp(function(){this.__redo__&&BBt.call(this.__redo__),this.__nextIndex__=0})})));zOe(wk.prototype,FOe.iterator,qp(function(){return this}))});var GOe=ye((P1r,VOe)=>{"use strict";var BOe=uz(),NOe=AY(),RY=n1(),HBt=ux(),DY=IY(),UOe=Object.defineProperty,d5;d5=VOe.exports=function(e,t){if(!(this instanceof d5))throw new TypeError("Constructor requires 'new'");DY.call(this,e),t?NOe.call(t,"key+value")?t="key+value":NOe.call(t,"key")?t="key":t="value":t="value",UOe(this,"__kind__",RY("",t))};BOe&&BOe(d5,DY);delete d5.prototype.constructor;d5.prototype=Object.create(DY.prototype,{_resolve:RY(function(e){return this.__kind__==="value"?this.__list__[e]:this.__kind__==="key+value"?[e,this.__list__[e]]:e})});UOe(d5.prototype,HBt.toStringTag,RY("c","Array Iterator"))});var XOe=ye((I1r,WOe)=>{"use strict";var HOe=uz(),pz=n1(),jBt=ux(),FY=IY(),jOe=Object.defineProperty,v5;v5=WOe.exports=function(e){if(!(this instanceof v5))throw new TypeError("Constructor requires 'new'");e=String(e),FY.call(this,e),jOe(this,"__length__",pz("",e.length))};HOe&&HOe(v5,FY);delete v5.prototype.constructor;v5.prototype=Object.create(FY.prototype,{_next:pz(function(){if(this.__list__){if(this.__nextIndex__=55296&&r<=56319?t+this.__list__[this.__nextIndex__++]:t)})});jOe(v5.prototype,jBt.toStringTag,pz("c","String Iterator"))});var YOe=ye((R1r,ZOe)=>{"use strict";var WBt=yk(),XBt=lx(),ZBt=_k(),YBt=ux().iterator,KBt=Array.isArray;ZOe.exports=function(e){return XBt(e)?KBt(e)||ZBt(e)||WBt(e)?!0:typeof e[YBt]=="function":!1}});var JOe=ye((D1r,KOe)=>{"use strict";var JBt=YOe();KOe.exports=function(e){if(!JBt(e))throw new TypeError(e+" is not iterable");return e}});var zY=ye((F1r,eqe)=>{"use strict";var $Bt=yk(),QBt=_k(),$Oe=GOe(),eNt=XOe(),tNt=JOe(),QOe=ux().iterator;eqe.exports=function(e){return typeof tNt(e)[QOe]=="function"?e[QOe]():$Bt(e)?new $Oe(e):QBt(e)?new eNt(e):new $Oe(e)}});var rqe=ye((z1r,tqe)=>{"use strict";var rNt=yk(),iNt=h5(),nNt=_k(),aNt=zY(),oNt=Array.isArray,OY=Function.prototype.call,sNt=Array.prototype.some;tqe.exports=function(e,t){var r,n=arguments[2],i,a,o,s,l,u,c;if(oNt(e)||rNt(e)?r="array":nNt(e)?r="string":e=aNt(e),iNt(t),a=function(){o=!0},r==="array"){sNt.call(e,function(f){return OY.call(t,n,f,a),o});return}if(r==="string"){for(l=e.length,s=0;s=55296&&c<=56319&&(u+=e[++s])),OY.call(t,n,u,a),!o);++s);return}for(i=e.next();!i.done;){if(OY.call(t,n,i.value,a),o)return;i=e.next()}}});var nqe=ye((O1r,iqe)=>{"use strict";iqe.exports=function(){return typeof WeakMap!="function"?!1:Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"}()});var sqe=ye((q1r,oqe)=>{"use strict";var lNt=lx(),mz=uz(),gz=D7e(),uNt=i1(),cNt=z7e(),a1=n1(),fNt=zY(),hNt=rqe(),dNt=ux().toStringTag,aqe=nqe(),vNt=Array.isArray,BY=Object.defineProperty,qY=Object.prototype.hasOwnProperty,pNt=Object.getPrototypeOf,cx;oqe.exports=cx=function(){var e=arguments[0],t;if(!(this instanceof cx))throw new TypeError("Constructor requires 'new'");return t=aqe&&mz&&WeakMap!==cx?mz(new WeakMap,pNt(this)):this,lNt(e)&&(vNt(e)||(e=fNt(e))),BY(t,"__weakMapData__",a1("c","$weakMap$"+cNt())),e&&hNt(e,function(r){uNt(r),t.set(r[0],r[1])}),t};aqe&&(mz&&mz(cx,WeakMap),cx.prototype=Object.create(WeakMap.prototype,{constructor:a1(cx)}));Object.defineProperties(cx.prototype,{delete:a1(function(e){return qY.call(gz(e),this.__weakMapData__)?(delete e[this.__weakMapData__],!0):!1}),get:a1(function(e){if(qY.call(gz(e),this.__weakMapData__))return e[this.__weakMapData__]}),has:a1(function(e){return qY.call(gz(e),this.__weakMapData__)}),set:a1(function(e,t){return BY(gz(e),this.__weakMapData__,a1("c",t)),this}),toString:a1(function(){return"[object WeakMap]"})});BY(cx.prototype,dNt,a1("c","WeakMap"))});var NY=ye((B1r,lqe)=>{"use strict";lqe.exports=b7e()()?WeakMap:sqe()});var cqe=ye((N1r,uqe)=>{"use strict";uqe.exports=function(e,t,r){if(typeof Array.prototype.findIndex=="function")return e.findIndex(t,r);if(typeof t!="function")throw new TypeError("predicate must be a function");var n=Object(e),i=n.length;if(i===0)return-1;for(var a=0;a{"use strict";var yz=J_(),gNt=X2(),VY=Oh(),mNt=Zm(),yNt=Z2(),fqe=m7e(),_Nt=_7e(),{float32:xNt,fract32:UY}=ez(),bNt=NY(),hqe=i5(),wNt=cqe(),TNt=` precision highp float; attribute vec2 aCoord, bCoord, aCoordFract, bCoordFract; @@ -2584,7 +2584,7 @@ void main() { gl_FragColor = fragColor; gl_FragColor.a *= alpha * opacity * dash; } -`;hqe.exports=Wc;function Wc(e,t){if(!(this instanceof Wc))return new Wc(e,t);if(typeof e=="function"?(t||(t={}),t.regl=e):t=e,t.length&&(t.positions=t),e=t.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=e._gl,this.regl=e,this.passes=[],this.shaders=Wc.shaders.has(e)?Wc.shaders.get(e):Wc.shaders.set(e,Wc.createShaders(e)).get(e),this.update(t)}Wc.dashMult=2;Wc.maxPatternLength=256;Wc.precisionThreshold=3e6;Wc.maxPoints=1e4;Wc.maxLines=2048;Wc.shaders=new bNt;Wc.createShaders=function(e){let t=e.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),r={primitive:"triangle strip",instances:e.prop("count"),count:4,offset:0,uniforms:{miterMode:(o,s)=>s.join==="round"?2:1,miterLimit:e.prop("miterLimit"),scale:e.prop("scale"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),thickness:e.prop("thickness"),dashTexture:e.prop("dashTexture"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),dashLength:e.prop("dashLength"),viewport:(o,s)=>[s.viewport.x,s.viewport.y,o.viewportWidth,o.viewportHeight],depth:e.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:(o,s)=>!s.overlay},stencil:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport")},n=e(UY({vert:TNt,frag:ANt,attributes:{lineEnd:{buffer:t,divisor:0,stride:8,offset:0},lineTop:{buffer:t,divisor:0,stride:8,offset:4},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},r)),i;try{i=e(UY({cull:{enable:!0,face:"back"},vert:ENt,frag:kNt,attributes:{lineEnd:{buffer:t,divisor:0,stride:8,offset:0},lineTop:{buffer:t,divisor:0,stride:8,offset:4},aColor:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:e.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},r))}catch(o){i=n}return{fill:e({primitive:"triangle",elements:(o,s)=>s.triangles,offset:0,vert:SNt,frag:MNt,uniforms:{scale:e.prop("scale"),color:e.prop("fill"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),viewport:(o,s)=>[s.viewport.x,s.viewport.y,o.viewportWidth,o.viewportHeight]},attributes:{position:{buffer:e.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8}},blend:r.blend,depth:{enable:!1},scissor:r.scissor,stencil:r.stencil,viewport:r.viewport}),rect:n,miter:i}};Wc.defaults={dashes:null,join:"miter",miterLimit:1,thickness:10,cap:"square",color:"black",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null};Wc.prototype.render=function(...e){e.length&&this.update(...e),this.draw()};Wc.prototype.draw=function(...e){return(e.length?e:this.passes).forEach((t,r)=>{if(t&&Array.isArray(t))return this.draw(...t);typeof t=="number"&&(t=this.passes[t]),t&&t.count>1&&t.opacity&&(this.regl._refresh(),t.fill&&t.triangles&&t.triangles.length>2&&this.shaders.fill(t),t.thickness&&(t.scale[0]*t.viewport.width>Wc.precisionThreshold||t.scale[1]*t.viewport.height>Wc.precisionThreshold?this.shaders.rect(t):t.join==="rect"||!t.join&&(t.thickness<=2||t.count>=Wc.maxPoints)?this.shaders.rect(t):this.shaders.miter(t)))}),this};Wc.prototype.update=function(e){if(!e)return;e.length!=null?typeof e[0]=="number"&&(e=[{positions:e}]):Array.isArray(e)||(e=[e]);let{regl:t,gl:r}=this;if(e.forEach((i,a)=>{let o=this.passes[a];if(i!==void 0){if(i===null){this.passes[a]=null;return}if(typeof i[0]=="number"&&(i={positions:i}),i=mNt(i,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),o||(this.passes[a]=o={id:a,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:t.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:t.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:t.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:t.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},i=UY({},Wc.defaults,i)),i.thickness!=null&&(o.thickness=parseFloat(i.thickness)),i.opacity!=null&&(o.opacity=parseFloat(i.opacity)),i.miterLimit!=null&&(o.miterLimit=parseFloat(i.miterLimit)),i.overlay!=null&&(o.overlay=!!i.overlay,aL-x),k=[],E=0,S=o.hole!=null?o.hole[0]:null;if(S!=null){let L=wNt(p,x=>x>=S);p=p.slice(0,L),p.push(S)}for(let L=0;Lg-S+(p[L]-E)),M=cqe(x,C);M=M.map(g=>g+E+(g+E{e.colorBuffer.destroy(),e.positionBuffer.destroy(),e.dashTexture.destroy()}),this.passes.length=0,this}});var mqe=ye((V1r,gqe)=>{"use strict";var CNt=W2(),LNt=J_(),PNt=uY(),INt=Zm(),dqe=Oh(),vqe=X2(),{float32:RNt,fract32:GY}=QF();gqe.exports=DNt;var pqe=[[1,0,0,1,0,0],[1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]];function DNt(e,t){if(typeof e=="function"?(t||(t={}),t.regl=e):t=e,t.length&&(t.positions=t),e=t.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");let r=e._gl,n,i,a,o,s,l,u={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},c=[];return o=e.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),i=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),a=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),s=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),l=e.buffer({usage:"static",type:"float",data:pqe}),v(t),n=e({vert:` +`;dqe.exports=Wc;function Wc(e,t){if(!(this instanceof Wc))return new Wc(e,t);if(typeof e=="function"?(t||(t={}),t.regl=e):t=e,t.length&&(t.positions=t),e=t.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=e._gl,this.regl=e,this.passes=[],this.shaders=Wc.shaders.has(e)?Wc.shaders.get(e):Wc.shaders.set(e,Wc.createShaders(e)).get(e),this.update(t)}Wc.dashMult=2;Wc.maxPatternLength=256;Wc.precisionThreshold=3e6;Wc.maxPoints=1e4;Wc.maxLines=2048;Wc.shaders=new bNt;Wc.createShaders=function(e){let t=e.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),r={primitive:"triangle strip",instances:e.prop("count"),count:4,offset:0,uniforms:{miterMode:(o,s)=>s.join==="round"?2:1,miterLimit:e.prop("miterLimit"),scale:e.prop("scale"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),thickness:e.prop("thickness"),dashTexture:e.prop("dashTexture"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),dashLength:e.prop("dashLength"),viewport:(o,s)=>[s.viewport.x,s.viewport.y,o.viewportWidth,o.viewportHeight],depth:e.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:(o,s)=>!s.overlay},stencil:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport")},n=e(VY({vert:TNt,frag:ANt,attributes:{lineEnd:{buffer:t,divisor:0,stride:8,offset:0},lineTop:{buffer:t,divisor:0,stride:8,offset:4},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},r)),i;try{i=e(VY({cull:{enable:!0,face:"back"},vert:ENt,frag:kNt,attributes:{lineEnd:{buffer:t,divisor:0,stride:8,offset:0},lineTop:{buffer:t,divisor:0,stride:8,offset:4},aColor:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:e.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},r))}catch(o){i=n}return{fill:e({primitive:"triangle",elements:(o,s)=>s.triangles,offset:0,vert:SNt,frag:MNt,uniforms:{scale:e.prop("scale"),color:e.prop("fill"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),viewport:(o,s)=>[s.viewport.x,s.viewport.y,o.viewportWidth,o.viewportHeight]},attributes:{position:{buffer:e.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8}},blend:r.blend,depth:{enable:!1},scissor:r.scissor,stencil:r.stencil,viewport:r.viewport}),rect:n,miter:i}};Wc.defaults={dashes:null,join:"miter",miterLimit:1,thickness:10,cap:"square",color:"black",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null};Wc.prototype.render=function(...e){e.length&&this.update(...e),this.draw()};Wc.prototype.draw=function(...e){return(e.length?e:this.passes).forEach((t,r)=>{if(t&&Array.isArray(t))return this.draw(...t);typeof t=="number"&&(t=this.passes[t]),t&&t.count>1&&t.opacity&&(this.regl._refresh(),t.fill&&t.triangles&&t.triangles.length>2&&this.shaders.fill(t),t.thickness&&(t.scale[0]*t.viewport.width>Wc.precisionThreshold||t.scale[1]*t.viewport.height>Wc.precisionThreshold?this.shaders.rect(t):t.join==="rect"||!t.join&&(t.thickness<=2||t.count>=Wc.maxPoints)?this.shaders.rect(t):this.shaders.miter(t)))}),this};Wc.prototype.update=function(e){if(!e)return;e.length!=null?typeof e[0]=="number"&&(e=[{positions:e}]):Array.isArray(e)||(e=[e]);let{regl:t,gl:r}=this;if(e.forEach((i,a)=>{let o=this.passes[a];if(i!==void 0){if(i===null){this.passes[a]=null;return}if(typeof i[0]=="number"&&(i={positions:i}),i=mNt(i,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),o||(this.passes[a]=o={id:a,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:t.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:t.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:t.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:t.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},i=VY({},Wc.defaults,i)),i.thickness!=null&&(o.thickness=parseFloat(i.thickness)),i.opacity!=null&&(o.opacity=parseFloat(i.opacity)),i.miterLimit!=null&&(o.miterLimit=parseFloat(i.miterLimit)),i.overlay!=null&&(o.overlay=!!i.overlay,aL-x),k=[],E=0,S=o.hole!=null?o.hole[0]:null;if(S!=null){let L=wNt(p,x=>x>=S);p=p.slice(0,L),p.push(S)}for(let L=0;Lg-S+(p[L]-E)),M=fqe(x,C);M=M.map(g=>g+E+(g+E{e.colorBuffer.destroy(),e.positionBuffer.destroy(),e.dashTexture.destroy()}),this.passes.length=0,this}});var yqe=ye((V1r,mqe)=>{"use strict";var CNt=X2(),LNt=J_(),PNt=cY(),INt=Zm(),vqe=Oh(),pqe=Z2(),{float32:RNt,fract32:HY}=ez();mqe.exports=DNt;var gqe=[[1,0,0,1,0,0],[1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]];function DNt(e,t){if(typeof e=="function"?(t||(t={}),t.regl=e):t=e,t.length&&(t.positions=t),e=t.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");let r=e._gl,n,i,a,o,s,l,u={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},c=[];return o=e.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),i=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),a=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),s=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),l=e.buffer({usage:"static",type:"float",data:gqe}),v(t),n=e({vert:` precision highp float; attribute vec2 position, positionFract; @@ -2628,10 +2628,10 @@ void main() { gl_FragColor = fragColor; gl_FragColor.a *= opacity; } - `,uniforms:{range:e.prop("range"),lineWidth:e.prop("lineWidth"),capSize:e.prop("capSize"),opacity:e.prop("opacity"),scale:e.prop("scale"),translate:e.prop("translate"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),viewport:(b,p)=>[p.viewport.x,p.viewport.y,b.viewportWidth,b.viewportHeight]},attributes:{color:{buffer:o,offset:(b,p)=>p.offset*4,divisor:1},position:{buffer:i,offset:(b,p)=>p.offset*8,divisor:1},positionFract:{buffer:a,offset:(b,p)=>p.offset*8,divisor:1},error:{buffer:s,offset:(b,p)=>p.offset*16,divisor:1},direction:{buffer:l,stride:24,offset:0},lineOffset:{buffer:l,stride:24,offset:8},capOffset:{buffer:l,stride:24,offset:16}},primitive:"triangles",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport"),stencil:!1,instances:e.prop("count"),count:pqe.length}),dqe(f,{update:v,draw:h,destroy:_,regl:e,gl:r,canvas:r.canvas,groups:c}),f;function f(b){b?v(b):b===null&&_(),h()}function h(b){if(typeof b=="number")return d(b);b&&!Array.isArray(b)&&(b=[b]),e._refresh(),c.forEach((p,k)=>{if(p){if(b&&(b[k]?p.draw=!0:p.draw=!1),!p.draw){p.draw=!0;return}d(k)}})}function d(b){typeof b=="number"&&(b=c[b]),b!=null&&b&&b.count&&b.color&&b.opacity&&b.positions&&b.positions.length>1&&(b.scaleRatio=[b.scale[0]*b.viewport.width,b.scale[1]*b.viewport.height],n(b),b.after&&b.after(b))}function v(b){if(!b)return;b.length!=null?typeof b[0]=="number"&&(b=[{positions:b}]):Array.isArray(b)||(b=[b]);let p=0,k=0;if(f.groups=c=b.map((L,x)=>{let C=c[x];if(L)typeof L=="function"?L={after:L}:typeof L[0]=="number"&&(L={positions:L});else return C;return L=INt(L,{color:"color colors fill",capSize:"capSize cap capsize cap-size",lineWidth:"lineWidth line-width width line thickness",opacity:"opacity alpha",range:"range dataBox",viewport:"viewport viewBox",errors:"errors error",positions:"positions position data points"}),C||(c[x]=C={id:x,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},L=dqe({},u,L)),PNt(C,L,[{lineWidth:M=>+M*.5,capSize:M=>+M*.5,opacity:parseFloat,errors:M=>(M=vqe(M),k+=M.length,M),positions:(M,g)=>(M=vqe(M,"float64"),g.count=Math.floor(M.length/2),g.bounds=CNt(M,2),g.offset=p,p+=g.count,M)},{color:(M,g)=>{let P=g.count;if(M||(M="transparent"),!Array.isArray(M)||typeof M[0]=="number"){let z=M;M=Array(P);for(let O=0;O{let T=g.bounds;return M||(M=T),g.scale=[1/(M[2]-M[0]),1/(M[3]-M[1])],g.translate=[-M[0],-M[1]],g.scaleFract=GY(g.scale),g.translateFract=GY(g.translate),M},viewport:M=>{let g;return Array.isArray(M)?g={x:M[0],y:M[1],width:M[2]-M[0],height:M[3]-M[1]}:M?(g={x:M.x||M.left||0,y:M.y||M.top||0},M.right?g.width=M.right-g.x:g.width=M.w||M.width||0,M.bottom?g.height=M.bottom-g.y:g.height=M.h||M.height||0):g={x:0,y:0,width:r.drawingBufferWidth,height:r.drawingBufferHeight},g}}]),C}),p||k){let L=c.reduce((g,P,T)=>g+(P?P.count:0),0),x=new Float64Array(L*2),C=new Uint8Array(L*4),M=new Float32Array(L*4);c.forEach((g,P)=>{if(!g)return;let{positions:T,count:z,offset:O,color:V,errors:G}=g;z&&(C.set(V,O*4),M.set(G,O*4),x.set(T,O*2))});var E=RNt(x);i(E);var S=GY(x,E);a(S),o(C),s(M)}}function _(){i.destroy(),a.destroy(),o.destroy(),s.destroy(),l.destroy()}}});var xqe=ye((G1r,_qe)=>{var yqe=/[\'\"]/;_qe.exports=function(t){return t?(yqe.test(t.charAt(0))&&(t=t.substr(1)),yqe.test(t.charAt(t.length-1))&&(t=t.substr(0,t.length-1)),t):""}});var HY=ye((H1r,FNt)=>{FNt.exports=["inherit","initial","unset"]});var jY=ye((j1r,zNt)=>{zNt.exports=["caption","icon","menu","message-box","small-caption","status-bar"]});var WY=ye((W1r,ONt)=>{ONt.exports=["normal","bold","bolder","lighter","100","200","300","400","500","600","700","800","900"]});var XY=ye((X1r,qNt)=>{qNt.exports=["normal","italic","oblique"]});var ZY=ye((Z1r,BNt)=>{BNt.exports=["normal","condensed","semi-condensed","extra-condensed","ultra-condensed","expanded","semi-expanded","extra-expanded","ultra-expanded"]});var Aqe=ye((Y1r,Tqe)=>{"use strict";function bqe(e,t){if(typeof e!="string")return[e];var r=[e];typeof t=="string"||Array.isArray(t)?t={brackets:t}:t||(t={});var n=t.brackets?Array.isArray(t.brackets)?t.brackets:[t.brackets]:["{}","[]","()"],i=t.escape||"___",a=!!t.flat;n.forEach(function(l){var u=new RegExp(["\\",l[0],"[^\\",l[0],"\\",l[1],"]*\\",l[1]].join("")),c=[];function f(h,d,v){var _=r.push(h.slice(l[0].length,-l[1].length))-1;return c.push(_),i+_+i}r.forEach(function(h,d){for(var v,_=0;h!=v;)if(v=h,h=h.replace(u,f),_++>1e4)throw Error("References have circular dependency. Please, check them.");r[d]=h}),c=c.reverse(),r=r.map(function(h){return c.forEach(function(d){h=h.replace(new RegExp("(\\"+i+d+"\\"+i+")","g"),l[0]+"$1"+l[1])}),h})});var o=new RegExp("\\"+i+"([0-9]+)\\"+i);function s(l,u,c){for(var f=[],h,d=0;h=o.exec(l);){if(d++>1e4)throw Error("Circular references in parenthesis");f.push(l.slice(0,h.index)),f.push(s(u[h[1]],u)),l=l.slice(h.index+h[0].length)}return f.push(l),f}return a?r:s(r[0],r)}function wqe(e,t){if(t&&t.flat){var r=t&&t.escape||"___",n=e[0],i;if(!n)return"";for(var a=new RegExp("\\"+r+"([0-9]+)\\"+r),o=0;n!=i;){if(o++>1e4)throw Error("Circular references in "+e);i=n,n=n.replace(a,s)}return n}return e.reduce(function l(u,c){return Array.isArray(c)&&(c=c.reduce(l,"")),u+c},"");function s(l,u){if(e[u]==null)throw Error("Reference "+u+"is undefined");return e[u]}}function YY(e,t){return Array.isArray(e)?wqe(e,t):bqe(e,t)}YY.parse=bqe;YY.stringify=wqe;Tqe.exports=YY});var Eqe=ye((K1r,Mqe)=>{"use strict";var Sqe=Aqe();Mqe.exports=function(t,r,n){if(t==null)throw Error("First argument should be a string");if(r==null)throw Error("Separator should be a string or a RegExp");n?(typeof n=="string"||Array.isArray(n))&&(n={ignore:n}):n={},n.escape==null&&(n.escape=!0),n.ignore==null?n.ignore=["[]","()","{}","<>",'""',"''","``","\u201C\u201D","\xAB\xBB"]:(typeof n.ignore=="string"&&(n.ignore=[n.ignore]),n.ignore=n.ignore.map(function(f){return f.length===1&&(f=f+f),f}));var i=Sqe.parse(t,{flat:!0,brackets:n.ignore}),a=i[0],o=a.split(r);if(n.escape){for(var s=[],l=0;l{NNt.exports=["xx-small","x-small","small","medium","large","x-large","xx-large","larger","smaller"]});var KY=ye(($1r,Cqe)=>{"use strict";var UNt=kqe();Cqe.exports={isSize:function(t){return/^[\d\.]/.test(t)||t.indexOf("/")!==-1||UNt.indexOf(t)!==-1}}});var Rqe=ye((Q1r,Iqe)=>{"use strict";var VNt=xqe(),GNt=HY(),HNt=jY(),jNt=WY(),WNt=XY(),XNt=ZY(),JY=Eqe(),ZNt=KY().isSize;Iqe.exports=Pqe;var Tk=Pqe.cache={};function Pqe(e){if(typeof e!="string")throw new Error("Font argument must be a string.");if(Tk[e])return Tk[e];if(e==="")throw new Error("Cannot parse an empty string.");if(HNt.indexOf(e)!==-1)return Tk[e]={system:e};for(var t={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},r=JY(e,/\s+/),n;n=r.shift();){if(GNt.indexOf(n)!==-1)return["style","variant","weight","stretch"].forEach(function(a){t[a]=n}),Tk[e]=t;if(WNt.indexOf(n)!==-1){t.style=n;continue}if(n==="normal"||n==="small-caps"){t.variant=n;continue}if(XNt.indexOf(n)!==-1){t.stretch=n;continue}if(jNt.indexOf(n)!==-1){t.weight=n;continue}if(ZNt(n)){var i=JY(n,"/");if(t.size=i[0],i[1]!=null?t.lineHeight=Lqe(i[1]):r[0]==="/"&&(r.shift(),t.lineHeight=Lqe(r.shift())),!r.length)throw new Error("Missing required font-family.");return t.family=JY(r.join(" "),/\s*,\s*/).map(VNt),Tk[e]=t}throw new Error("Unknown or unsupported font token: "+n)}throw new Error("Missing required font-size.")}function Lqe(e){var t=parseFloat(e);return t.toString()===e?t:e}});var QY=ye((e_r,Dqe)=>{"use strict";var YNt=Zm(),KNt=KY().isSize,JNt=Sk(HY()),$Nt=Sk(jY()),QNt=Sk(WY()),eUt=Sk(XY()),tUt=Sk(ZY()),rUt={normal:1,"small-caps":1},iUt={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},$Y={style:"normal",variant:"normal",weight:"normal",stretch:"normal",size:"1rem",lineHeight:"normal",family:"serif"};Dqe.exports=function(t){if(t=YNt(t,{style:"style fontstyle fontStyle font-style slope distinction",variant:"variant font-variant fontVariant fontvariant var capitalization",weight:"weight w font-weight fontWeight fontweight",stretch:"stretch font-stretch fontStretch fontstretch width",size:"size s font-size fontSize fontsize height em emSize",lineHeight:"lh line-height lineHeight lineheight leading",family:"font family fontFamily font-family fontfamily type typeface face",system:"system reserved default global"}),t.system)return t.system&&Ak(t.system,$Nt),t.system;if(Ak(t.style,eUt),Ak(t.variant,rUt),Ak(t.weight,QNt),Ak(t.stretch,tUt),t.size==null&&(t.size=$Y.size),typeof t.size=="number"&&(t.size+="px"),!KNt)throw Error("Bad size value `"+t.size+"`");t.family||(t.family=$Y.family),Array.isArray(t.family)&&(t.family.length||(t.family=[$Y.family]),t.family=t.family.map(function(n){return iUt[n]?n:'"'+n+'"'}).join(", "));var r=[];return r.push(t.style),t.variant!==t.style&&r.push(t.variant),t.weight!==t.variant&&t.weight!==t.style&&r.push(t.weight),t.stretch!==t.weight&&t.stretch!==t.variant&&t.stretch!==t.style&&r.push(t.stretch),r.push(t.size+(t.lineHeight==null||t.lineHeight==="normal"||t.lineHeight+""=="1"?"":"/"+t.lineHeight)),r.push(t.family),r.filter(Boolean).join(" ")};function Ak(e,t){if(e&&!t[e]&&!JNt[e])throw Error("Unknown keyword `"+e+"`");return e}function Sk(e){for(var t={},r=0;r{"use strict";Fqe.exports={parse:Rqe(),stringify:QY()}});var Oqe=ye((eK,tK)=>{(function(e,t){typeof eK=="object"&&typeof tK!="undefined"?tK.exports=t():e.createREGL=t()})(eK,function(){"use strict";var e=function(Me,bt){for(var zt=Object.keys(bt),Rr=0;Rr1&&bt===zt&&(bt==='"'||bt==="'"))return['"'+o(Me.substr(1,Me.length-2))+'"'];var Rr=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Me);if(Rr)return s(Me.substr(0,Rr.index)).concat(s(Rr[1])).concat(s(Me.substr(Rr.index+Rr[0].length)));var jr=Me.split(".");if(jr.length===1)return['"'+o(Me)+'"'];for(var Nr=[],Gr=0;Gr65535)<<4,Me>>>=bt,zt=(Me>255)<<3,Me>>>=zt,bt|=zt,zt=(Me>15)<<2,Me>>>=zt,bt|=zt,zt=(Me>3)<<1,Me>>>=zt,bt|=zt,bt|Me>>1}function N(){var Me=M(8,function(){return[]});function bt(Nr){var Gr=Z(Nr),mi=Me[H(Gr)>>2];return mi.length>0?mi.pop():new ArrayBuffer(Gr)}function zt(Nr){Me[H(Nr.byteLength)>>2].push(Nr)}function Rr(Nr,Gr){var mi=null;switch(Nr){case g:mi=new Int8Array(bt(Gr),0,Gr);break;case P:mi=new Uint8Array(bt(Gr),0,Gr);break;case T:mi=new Int16Array(bt(2*Gr),0,Gr);break;case z:mi=new Uint16Array(bt(2*Gr),0,Gr);break;case O:mi=new Int32Array(bt(4*Gr),0,Gr);break;case V:mi=new Uint32Array(bt(4*Gr),0,Gr);break;case G:mi=new Float32Array(bt(4*Gr),0,Gr);break;default:return null}return mi.length!==Gr?mi.subarray(0,Gr):mi}function jr(Nr){zt(Nr.buffer)}return{alloc:bt,free:zt,allocType:Rr,freeType:jr}}var j=N();j.zero=N();var re=3408,oe=3410,_e=3411,Ee=3412,Ce=3413,me=3414,ie=3415,Se=33901,Le=33902,Ae=3379,Fe=3386,Pe=34921,ge=36347,Re=36348,ce=35661,Ze=35660,ut=34930,pt=36349,Zt=34076,st=34024,lt=7936,Gt=7937,Nt=7938,Jt=35724,sr=34047,wr=36063,cr=34852,$e=3553,St=34067,Qt=34069,Vt=33984,_t=6408,It=5126,mt=5121,er=36160,lr=36053,Tr=36064,Lr=16384,ti=function(Me,bt){var zt=1;bt.ext_texture_filter_anisotropic&&(zt=Me.getParameter(sr));var Rr=1,jr=1;bt.webgl_draw_buffers&&(Rr=Me.getParameter(cr),jr=Me.getParameter(wr));var Nr=!!bt.oes_texture_float;if(Nr){var Gr=Me.createTexture();Me.bindTexture($e,Gr),Me.texImage2D($e,0,_t,1,1,0,_t,It,null);var mi=Me.createFramebuffer();if(Me.bindFramebuffer(er,mi),Me.framebufferTexture2D(er,Tr,$e,Gr,0),Me.bindTexture($e,null),Me.checkFramebufferStatus(er)!==lr)Nr=!1;else{Me.viewport(0,0,1,1),Me.clearColor(1,0,0,1),Me.clear(Lr);var Ui=j.allocType(It,4);Me.readPixels(0,0,1,1,_t,It,Ui),Me.getError()?Nr=!1:(Me.deleteFramebuffer(mi),Me.deleteTexture(Gr),Nr=Ui[0]===1),j.freeType(Ui)}}var qi=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),Ei=!0;if(!qi){var Hn=Me.createTexture(),en=j.allocType(mt,36);Me.activeTexture(Vt),Me.bindTexture(St,Hn),Me.texImage2D(Qt,0,_t,3,3,0,_t,mt,en),j.freeType(en),Me.bindTexture(St,null),Me.deleteTexture(Hn),Ei=!Me.getError()}return{colorBits:[Me.getParameter(oe),Me.getParameter(_e),Me.getParameter(Ee),Me.getParameter(Ce)],depthBits:Me.getParameter(me),stencilBits:Me.getParameter(ie),subpixelBits:Me.getParameter(re),extensions:Object.keys(bt).filter(function(Wi){return!!bt[Wi]}),maxAnisotropic:zt,maxDrawbuffers:Rr,maxColorAttachments:jr,pointSizeDims:Me.getParameter(Se),lineWidthDims:Me.getParameter(Le),maxViewportDims:Me.getParameter(Fe),maxCombinedTextureUnits:Me.getParameter(ce),maxCubeMapSize:Me.getParameter(Zt),maxRenderbufferSize:Me.getParameter(st),maxTextureUnits:Me.getParameter(ut),maxTextureSize:Me.getParameter(Ae),maxAttributes:Me.getParameter(Pe),maxVertexUniforms:Me.getParameter(ge),maxVertexTextureUnits:Me.getParameter(Ze),maxVaryingVectors:Me.getParameter(Re),maxFragmentUniforms:Me.getParameter(pt),glsl:Me.getParameter(Jt),renderer:Me.getParameter(Gt),vendor:Me.getParameter(lt),version:Me.getParameter(Nt),readFloat:Nr,npotTextureCube:Ei}},Br=function(Me){return Me instanceof Uint8Array||Me instanceof Uint16Array||Me instanceof Uint32Array||Me instanceof Int8Array||Me instanceof Int16Array||Me instanceof Int32Array||Me instanceof Float32Array||Me instanceof Float64Array||Me instanceof Uint8ClampedArray};function Vr(Me){return!!Me&&typeof Me=="object"&&Array.isArray(Me.shape)&&Array.isArray(Me.stride)&&typeof Me.offset=="number"&&Me.shape.length===Me.stride.length&&(Array.isArray(Me.data)||Br(Me.data))}var dt=function(Me){return Object.keys(Me).map(function(bt){return Me[bt]})},Ge={shape:xe,flatten:Ie};function Je(Me,bt,zt){for(var Rr=0;Rr0){var Bn;if(Array.isArray(Yr[0])){Zi=Fn(Yr);for(var hi=1,li=1;li0){if(typeof hi[0]=="number"){var Vi=j.allocType(ci.dtype,hi.length);Er(Vi,hi),Zi(Vi,mn),j.freeType(Vi)}else if(Array.isArray(hi[0])||Br(hi[0])){Ji=Fn(hi);var Ni=qn(hi,Ji,ci.dtype);Zi(Ni,mn),j.freeType(Ni)}}}else if(Vr(hi)){Ji=hi.shape;var pn=hi.stride,Vn=0,na=0,Ki=0,kn=0;Ji.length===1?(Vn=Ji[0],na=1,Ki=pn[0],kn=0):Ji.length===2&&(Vn=Ji[0],na=Ji[1],Ki=pn[0],kn=pn[1]);var ta=Array.isArray(hi.data)?ci.dtype:nr(hi.data),oa=j.allocType(ta,Vn*na);Xr(oa,hi.data,Vn,na,Ki,kn,hi.offset),Zi(oa,mn),j.freeType(oa)}return an}return xi||an(Mr),an._reglType="buffer",an._buffer=ci,an.subdata=Bn,zt.profile&&(an.stats=ci.stats),an.destroy=function(){en(ci)},an}function si(){dt(Nr).forEach(function(Mr){Mr.buffer=Me.createBuffer(),Me.bindBuffer(Mr.type,Mr.buffer),Me.bufferData(Mr.type,Mr.persistentData||Mr.byteLength,Mr.usage)})}return zt.profile&&(bt.getTotalBufferSize=function(){var Mr=0;return Object.keys(Nr).forEach(function(Yr){Mr+=Nr[Yr].stats.size}),Mr}),{create:Wi,createStream:Ui,destroyStream:qi,clear:function(){dt(Nr).forEach(en),mi.forEach(en)},getBuffer:function(Mr){return Mr&&Mr._buffer instanceof Gr?Mr._buffer:null},restore:si,_initBuffer:Hn}}var Qr=0,Oi=0,$i=1,tn=1,fn=4,yn=4,Sn={points:Qr,point:Oi,lines:$i,line:tn,triangles:fn,triangle:yn,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ba=0,ua=1,ma=4,Wa=5120,Fa=5121,Wo=5122,da=5123,Wn=5124,Ga=5125,vo=34963,jn=35040,Mt=35044;function kr(Me,bt,zt,Rr){var jr={},Nr=0,Gr={uint8:Fa,uint16:da};bt.oes_element_index_uint&&(Gr.uint32=Ga);function mi(si){this.id=Nr++,jr[this.id]=this,this.buffer=si,this.primType=ma,this.vertCount=0,this.type=0}mi.prototype.bind=function(){this.buffer.bind()};var Ui=[];function qi(si){var Mr=Ui.pop();return Mr||(Mr=new mi(zt.create(null,vo,!0,!1)._buffer)),Hn(Mr,si,jn,-1,-1,0,0),Mr}function Ei(si){Ui.push(si)}function Hn(si,Mr,Yr,xi,Ri,ci,an){si.buffer.bind();var Zi;if(Mr){var Bn=an;!an&&(!Br(Mr)||Vr(Mr)&&!Br(Mr.data))&&(Bn=bt.oes_element_index_uint?Ga:da),zt._initBuffer(si.buffer,Mr,Yr,Bn,3)}else Me.bufferData(vo,ci,Yr),si.buffer.dtype=Zi||Fa,si.buffer.usage=Yr,si.buffer.dimension=3,si.buffer.byteLength=ci;if(Zi=an,!an){switch(si.buffer.dtype){case Fa:case Wa:Zi=Fa;break;case da:case Wo:Zi=da;break;case Ga:case Wn:Zi=Ga;break;default:}si.buffer.dtype=Zi}si.type=Zi;var hi=Ri;hi<0&&(hi=si.buffer.byteLength,Zi===da?hi>>=1:Zi===Ga&&(hi>>=2)),si.vertCount=hi;var li=xi;if(xi<0){li=ma;var mn=si.buffer.dimension;mn===1&&(li=Ba),mn===2&&(li=ua),mn===3&&(li=ma)}si.primType=li}function en(si){Rr.elementsCount--,delete jr[si.id],si.buffer.destroy(),si.buffer=null}function Wi(si,Mr){var Yr=zt.create(null,vo,!0),xi=new mi(Yr._buffer);Rr.elementsCount++;function Ri(ci){if(!ci)Yr(),xi.primType=ma,xi.vertCount=0,xi.type=Fa;else if(typeof ci=="number")Yr(ci),xi.primType=ma,xi.vertCount=ci|0,xi.type=Fa;else{var an=null,Zi=Mt,Bn=-1,hi=-1,li=0,mn=0;Array.isArray(ci)||Br(ci)||Vr(ci)?an=ci:("data"in ci&&(an=ci.data),"usage"in ci&&(Zi=On[ci.usage]),"primitive"in ci&&(Bn=Sn[ci.primitive]),"count"in ci&&(hi=ci.count|0),"type"in ci&&(mn=Gr[ci.type]),"length"in ci?li=ci.length|0:(li=hi,mn===da||mn===Wo?li*=2:(mn===Ga||mn===Wn)&&(li*=4))),Hn(xi,an,Zi,Bn,hi,li,mn)}return Ri}return Ri(si),Ri._reglType="elements",Ri._elements=xi,Ri.subdata=function(ci,an){return Yr.subdata(ci,an),Ri},Ri.destroy=function(){en(xi)},Ri}return{create:Wi,createStream:qi,destroyStream:Ei,getElements:function(si){return typeof si=="function"&&si._elements instanceof mi?si._elements:null},clear:function(){dt(jr).forEach(en)}}}var Jr=new Float32Array(1),vi=new Uint32Array(Jr.buffer),hn=5123;function An(Me){for(var bt=j.allocType(hn,Me.length),zt=0;zt>>31<<15,Nr=(Rr<<1>>>24)-127,Gr=Rr>>13&1023;if(Nr<-24)bt[zt]=jr;else if(Nr<-14){var mi=-14-Nr;bt[zt]=jr+(Gr+1024>>mi)}else Nr>15?bt[zt]=jr+31744:bt[zt]=jr+(Nr+15<<10)+Gr}return bt}function Mn(Me){return Array.isArray(Me)||Br(Me)}var Li=34467,_n=3553,ya=34067,Jn=34069,Ma=6408,_o=6406,No=6407,po=6409,Lo=6410,ko=32854,Ds=32855,Fs=36194,ll=32819,ul=32820,zl=33635,us=34042,il=6402,As=34041,cl=35904,Ks=35906,zs=36193,Io=33776,ls=33777,Zl=33778,Su=33779,nc=35986,bs=35987,Rn=34798,_a=35840,Vu=35841,Ol=35842,xo=35843,Yl=36196,Ns=5121,Hl=5123,ac=5125,aa=5126,Oo=10242,qo=10243,ql=10497,Pc=33071,Do=33648,rf=10240,Uf=10241,pl=9728,Zc=9729,Kl=9984,Os=9985,yu=9986,oc=9987,Cf=33170,sc=4352,Vh=4353,Lf=4354,cs=34046,nf=3317,Vf=37440,Jl=37441,fl=37443,lc=37444,Fu=33984,Es=[Kl,yu,Os,oc],Hs=[0,po,Lo,No,Ma],Go={};Go[po]=Go[_o]=Go[il]=1,Go[As]=Go[Lo]=2,Go[No]=Go[cl]=3,Go[Ma]=Go[Ks]=4;function ps(Me){return"[object "+Me+"]"}var uc=ps("HTMLCanvasElement"),xl=ps("OffscreenCanvas"),Gu=ps("CanvasRenderingContext2D"),qs=ps("ImageBitmap"),ad=ps("HTMLImageElement"),Po=ps("HTMLVideoElement"),od=Object.keys(ke).concat([uc,xl,Gu,qs,ad,Po]),Yo=[];Yo[Ns]=1,Yo[aa]=4,Yo[zs]=2,Yo[Hl]=2,Yo[ac]=4;var Pa=[];Pa[ko]=2,Pa[Ds]=2,Pa[Fs]=2,Pa[As]=4,Pa[Io]=.5,Pa[ls]=.5,Pa[Zl]=1,Pa[Su]=1,Pa[nc]=.5,Pa[bs]=1,Pa[Rn]=1,Pa[_a]=.5,Pa[Vu]=.25,Pa[Ol]=.5,Pa[xo]=.25,Pa[Yl]=.5;function af(Me){return Array.isArray(Me)&&(Me.length===0||typeof Me[0]=="number")}function Hu(Me){if(!Array.isArray(Me))return!1;var bt=Me.length;return!(bt===0||!Mn(Me[0]))}function bl(Me){return Object.prototype.toString.call(Me)}function Gf(Me){return bl(Me)===uc}function Ic(Me){return bl(Me)===xl}function yf(Me){return bl(Me)===Gu}function Bl(Me){return bl(Me)===qs}function wh(Me){return bl(Me)===ad}function Qf(Me){return bl(Me)===Po}function _f(Me){if(!Me)return!1;var bt=bl(Me);return od.indexOf(bt)>=0?!0:af(Me)||Hu(Me)||Vr(Me)}function Yc(Me){return ke[Object.prototype.toString.call(Me)]|0}function eh(Me,bt){var zt=bt.length;switch(Me.type){case Ns:case Hl:case ac:case aa:var Rr=j.allocType(Me.type,zt);Rr.set(bt),Me.data=Rr;break;case zs:Me.data=An(bt);break;default:}}function th(Me,bt){return j.allocType(Me.type===zs?aa:Me.type,bt)}function ju(Me,bt){Me.type===zs?(Me.data=An(bt),j.freeType(bt)):Me.data=bt}function Hf(Me,bt,zt,Rr,jr,Nr){for(var Gr=Me.width,mi=Me.height,Ui=Me.channels,qi=Gr*mi*Ui,Ei=th(Me,qi),Hn=0,en=0;en=1;)mi+=Gr*Ui*Ui,Ui/=2;return mi}else return Gr*zt*Rr}function of(Me,bt,zt,Rr,jr,Nr,Gr){var mi={"don't care":sc,"dont care":sc,nice:Lf,fast:Vh},Ui={repeat:ql,clamp:Pc,mirror:Do},qi={nearest:pl,linear:Zc},Ei=e({mipmap:oc,"nearest mipmap nearest":Kl,"linear mipmap nearest":Os,"nearest mipmap linear":yu,"linear mipmap linear":oc},qi),Hn={none:0,browser:lc},en={uint8:Ns,rgba4:ll,rgb565:zl,"rgb5 a1":ul},Wi={alpha:_o,luminance:po,"luminance alpha":Lo,rgb:No,rgba:Ma,rgba4:ko,"rgb5 a1":Ds,rgb565:Fs},si={};bt.ext_srgb&&(Wi.srgb=cl,Wi.srgba=Ks),bt.oes_texture_float&&(en.float32=en.float=aa),bt.oes_texture_half_float&&(en.float16=en["half float"]=zs),bt.webgl_depth_texture&&(e(Wi,{depth:il,"depth stencil":As}),e(en,{uint16:Hl,uint32:ac,"depth stencil":us})),bt.webgl_compressed_texture_s3tc&&e(si,{"rgb s3tc dxt1":Io,"rgba s3tc dxt1":ls,"rgba s3tc dxt3":Zl,"rgba s3tc dxt5":Su}),bt.webgl_compressed_texture_atc&&e(si,{"rgb atc":nc,"rgba atc explicit alpha":bs,"rgba atc interpolated alpha":Rn}),bt.webgl_compressed_texture_pvrtc&&e(si,{"rgb pvrtc 4bppv1":_a,"rgb pvrtc 2bppv1":Vu,"rgba pvrtc 4bppv1":Ol,"rgba pvrtc 2bppv1":xo}),bt.webgl_compressed_texture_etc1&&(si["rgb etc1"]=Yl);var Mr=Array.prototype.slice.call(Me.getParameter(Li));Object.keys(si).forEach(function(ne){var we=si[ne];Mr.indexOf(we)>=0&&(Wi[ne]=we)});var Yr=Object.keys(Wi);zt.textureFormats=Yr;var xi=[];Object.keys(Wi).forEach(function(ne){var we=Wi[ne];xi[we]=ne});var Ri=[];Object.keys(en).forEach(function(ne){var we=en[ne];Ri[we]=ne});var ci=[];Object.keys(qi).forEach(function(ne){var we=qi[ne];ci[we]=ne});var an=[];Object.keys(Ei).forEach(function(ne){var we=Ei[ne];an[we]=ne});var Zi=[];Object.keys(Ui).forEach(function(ne){var we=Ui[ne];Zi[we]=ne});var Bn=Yr.reduce(function(ne,we){var Ue=Wi[we];return Ue===po||Ue===_o||Ue===po||Ue===Lo||Ue===il||Ue===As||bt.ext_srgb&&(Ue===cl||Ue===Ks)?ne[Ue]=Ue:Ue===Ds||we.indexOf("rgba")>=0?ne[Ue]=Ma:ne[Ue]=No,ne},{});function hi(){this.internalformat=Ma,this.format=Ma,this.type=Ns,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=lc,this.width=0,this.height=0,this.channels=0}function li(ne,we){ne.internalformat=we.internalformat,ne.format=we.format,ne.type=we.type,ne.compressed=we.compressed,ne.premultiplyAlpha=we.premultiplyAlpha,ne.flipY=we.flipY,ne.unpackAlignment=we.unpackAlignment,ne.colorSpace=we.colorSpace,ne.width=we.width,ne.height=we.height,ne.channels=we.channels}function mn(ne,we){if(!(typeof we!="object"||!we)){if("premultiplyAlpha"in we&&(ne.premultiplyAlpha=we.premultiplyAlpha),"flipY"in we&&(ne.flipY=we.flipY),"alignment"in we&&(ne.unpackAlignment=we.alignment),"colorSpace"in we&&(ne.colorSpace=Hn[we.colorSpace]),"type"in we){var Ue=we.type;ne.type=en[Ue]}var ft=ne.width,Xt=ne.height,hr=ne.channels,qt=!1;"shape"in we?(ft=we.shape[0],Xt=we.shape[1],we.shape.length===3&&(hr=we.shape[2],qt=!0)):("radius"in we&&(ft=Xt=we.radius),"width"in we&&(ft=we.width),"height"in we&&(Xt=we.height),"channels"in we&&(hr=we.channels,qt=!0)),ne.width=ft|0,ne.height=Xt|0,ne.channels=hr|0;var Ve=!1;if("format"in we){var Qe=we.format,at=ne.internalformat=Wi[Qe];ne.format=Bn[at],Qe in en&&("type"in we||(ne.type=en[Qe])),Qe in si&&(ne.compressed=!0),Ve=!0}!qt&&Ve?ne.channels=Go[ne.format]:qt&&!Ve&&ne.channels!==Hs[ne.format]&&(ne.format=ne.internalformat=Hs[ne.channels])}}function Ji(ne){Me.pixelStorei(Vf,ne.flipY),Me.pixelStorei(Jl,ne.premultiplyAlpha),Me.pixelStorei(fl,ne.colorSpace),Me.pixelStorei(nf,ne.unpackAlignment)}function Vi(){hi.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function Ni(ne,we){var Ue=null;if(_f(we)?Ue=we:we&&(mn(ne,we),"x"in we&&(ne.xOffset=we.x|0),"y"in we&&(ne.yOffset=we.y|0),_f(we.data)&&(Ue=we.data)),we.copy){var ft=jr.viewportWidth,Xt=jr.viewportHeight;ne.width=ne.width||ft-ne.xOffset,ne.height=ne.height||Xt-ne.yOffset,ne.needsCopy=!0}else if(!Ue)ne.width=ne.width||1,ne.height=ne.height||1,ne.channels=ne.channels||4;else if(Br(Ue))ne.channels=ne.channels||4,ne.data=Ue,!("type"in we)&&ne.type===Ns&&(ne.type=Yc(Ue));else if(af(Ue))ne.channels=ne.channels||4,eh(ne,Ue),ne.alignment=1,ne.needsFree=!0;else if(Vr(Ue)){var hr=Ue.data;!Array.isArray(hr)&&ne.type===Ns&&(ne.type=Yc(hr));var qt=Ue.shape,Ve=Ue.stride,Qe,at,Ct,Ot,Rt,Bt;qt.length===3?(Ct=qt[2],Bt=Ve[2]):(Ct=1,Bt=1),Qe=qt[0],at=qt[1],Ot=Ve[0],Rt=Ve[1],ne.alignment=1,ne.width=Qe,ne.height=at,ne.channels=Ct,ne.format=ne.internalformat=Hs[Ct],ne.needsFree=!0,Hf(ne,hr,Ot,Rt,Bt,Ue.offset)}else if(Gf(Ue)||Ic(Ue)||yf(Ue))Gf(Ue)||Ic(Ue)?ne.element=Ue:ne.element=Ue.canvas,ne.width=ne.element.width,ne.height=ne.element.height,ne.channels=4;else if(Bl(Ue))ne.element=Ue,ne.width=Ue.width,ne.height=Ue.height,ne.channels=4;else if(wh(Ue))ne.element=Ue,ne.width=Ue.naturalWidth,ne.height=Ue.naturalHeight,ne.channels=4;else if(Qf(Ue))ne.element=Ue,ne.width=Ue.videoWidth,ne.height=Ue.videoHeight,ne.channels=4;else if(Hu(Ue)){var Dt=ne.width||Ue[0].length,yt=ne.height||Ue.length,Pt=ne.channels;Mn(Ue[0][0])?Pt=Pt||Ue[0][0].length:Pt=Pt||1;for(var ht=Ge.shape(Ue),ur=1,br=0;br>=Xt,Ue.height>>=Xt,Ni(Ue,ft[Xt]),ne.mipmask|=1<=0&&!("faces"in we)&&(ne.genMipmaps=!0)}if("mag"in we){var ft=we.mag;ne.magFilter=qi[ft]}var Xt=ne.wrapS,hr=ne.wrapT;if("wrap"in we){var qt=we.wrap;typeof qt=="string"?Xt=hr=Ui[qt]:Array.isArray(qt)&&(Xt=Ui[qt[0]],hr=Ui[qt[1]])}else{if("wrapS"in we){var Ve=we.wrapS;Xt=Ui[Ve]}if("wrapT"in we){var Qe=we.wrapT;hr=Ui[Qe]}}if(ne.wrapS=Xt,ne.wrapT=hr,"anisotropic"in we){var at=we.anisotropic;ne.anisotropic=we.anisotropic}if("mipmap"in we){var Ct=!1;switch(typeof we.mipmap){case"string":ne.mipmapHint=mi[we.mipmap],ne.genMipmaps=!0,Ct=!0;break;case"boolean":Ct=ne.genMipmaps=we.mipmap;break;case"object":ne.genMipmaps=!1,Ct=!0;break;default:}Ct&&!("min"in we)&&(ne.minFilter=Kl)}}function al(ne,we){Me.texParameteri(we,Uf,ne.minFilter),Me.texParameteri(we,rf,ne.magFilter),Me.texParameteri(we,Oo,ne.wrapS),Me.texParameteri(we,qo,ne.wrapT),bt.ext_texture_filter_anisotropic&&Me.texParameteri(we,cs,ne.anisotropic),ne.genMipmaps&&(Me.hint(Cf,ne.mipmapHint),Me.generateMipmap(we))}var Vl=0,ss={},Vs=zt.maxTextureUnits,Ys=Array(Vs).map(function(){return null});function wa(ne){hi.call(this),this.mipmask=0,this.internalformat=Ma,this.id=Vl++,this.refCount=1,this.target=ne,this.texture=Me.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new zo,Gr.profile&&(this.stats={size:0})}function ol(ne){Me.activeTexture(Fu),Me.bindTexture(ne.target,ne.texture)}function io(){var ne=Ys[0];ne?Me.bindTexture(ne.target,ne.texture):Me.bindTexture(_n,null)}function Y(ne){var we=ne.texture,Ue=ne.unit,ft=ne.target;Ue>=0&&(Me.activeTexture(Fu+Ue),Me.bindTexture(ft,null),Ys[Ue]=null),Me.deleteTexture(we),ne.texture=null,ne.params=null,ne.pixels=null,ne.refCount=0,delete ss[ne.id],Nr.textureCount--}e(wa.prototype,{bind:function(){var ne=this;ne.bindCount+=1;var we=ne.unit;if(we<0){for(var Ue=0;Ue0)continue;ft.unit=-1}Ys[Ue]=ne,we=Ue;break}we>=Vs,Gr.profile&&Nr.maxTextureUnits>Rt)-Ct,Bt.height=Bt.height||(Ue.height>>Rt)-Ot,ol(Ue),Vn(Bt,_n,Ct,Ot,Rt),io(),kn(Bt),ft}function hr(qt,Ve){var Qe=qt|0,at=Ve|0||Qe;if(Qe===Ue.width&&at===Ue.height)return ft;ft.width=Ue.width=Qe,ft.height=Ue.height=at,ol(Ue);for(var Ct=0;Ue.mipmask>>Ct;++Ct){var Ot=Qe>>Ct,Rt=at>>Ct;if(!Ot||!Rt)break;Me.texImage2D(_n,Ct,Ue.format,Ot,Rt,0,Ue.format,Ue.type,null)}return io(),Gr.profile&&(Ue.stats.size=cc(Ue.internalformat,Ue.type,Qe,at,!1,!1)),ft}return ft(ne,we),ft.subimage=Xt,ft.resize=hr,ft._reglType="texture2d",ft._texture=Ue,Gr.profile&&(ft.stats=Ue.stats),ft.destroy=function(){Ue.decRef()},ft}function J(ne,we,Ue,ft,Xt,hr){var qt=new wa(ya);ss[qt.id]=qt,Nr.cubeCount++;var Ve=new Array(6);function Qe(Ot,Rt,Bt,Dt,yt,Pt){var ht,ur=qt.texInfo;for(zo.call(ur),ht=0;ht<6;++ht)Ve[ht]=Va();if(typeof Ot=="number"||!Ot){var br=Ot|0||1;for(ht=0;ht<6;++ht)oa(Ve[ht],br,br)}else if(typeof Ot=="object")if(Rt)ba(Ve[0],Ot),ba(Ve[1],Rt),ba(Ve[2],Bt),ba(Ve[3],Dt),ba(Ve[4],yt),ba(Ve[5],Pt);else if(Qs(ur,Ot),mn(qt,Ot),"faces"in Ot){var Ur=Ot.faces;for(ht=0;ht<6;++ht)li(Ve[ht],qt),ba(Ve[ht],Ur[ht])}else for(ht=0;ht<6;++ht)ba(Ve[ht],Ot);for(li(qt,Ve[0]),ur.genMipmaps?qt.mipmask=(Ve[0].width<<1)-1:qt.mipmask=Ve[0].mipmask,qt.internalformat=Ve[0].internalformat,Qe.width=Ve[0].width,Qe.height=Ve[0].height,ol(qt),ht=0;ht<6;++ht)is(Ve[ht],Jn+ht);for(al(ur,ya),io(),Gr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,Qe.width,Qe.height,ur.genMipmaps,!0)),Qe.format=xi[qt.internalformat],Qe.type=Ri[qt.type],Qe.mag=ci[ur.magFilter],Qe.min=an[ur.minFilter],Qe.wrapS=Zi[ur.wrapS],Qe.wrapT=Zi[ur.wrapT],ht=0;ht<6;++ht)Ml(Ve[ht]);return Qe}function at(Ot,Rt,Bt,Dt,yt){var Pt=Bt|0,ht=Dt|0,ur=yt|0,br=Ki();return li(br,qt),br.width=0,br.height=0,Ni(br,Rt),br.width=br.width||(qt.width>>ur)-Pt,br.height=br.height||(qt.height>>ur)-ht,ol(qt),Vn(br,Jn+Ot,Pt,ht,ur),io(),kn(br),Qe}function Ct(Ot){var Rt=Ot|0;if(Rt!==qt.width){Qe.width=qt.width=Rt,Qe.height=qt.height=Rt,ol(qt);for(var Bt=0;Bt<6;++Bt)for(var Dt=0;qt.mipmask>>Dt;++Dt)Me.texImage2D(Jn+Bt,Dt,qt.format,Rt>>Dt,Rt>>Dt,0,qt.format,qt.type,null);return io(),Gr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,Qe.width,Qe.height,!1,!0)),Qe}}return Qe(ne,we,Ue,ft,Xt,hr),Qe.subimage=at,Qe.resize=Ct,Qe._reglType="textureCube",Qe._texture=qt,Gr.profile&&(Qe.stats=qt.stats),Qe.destroy=function(){qt.decRef()},Qe}function q(){for(var ne=0;ne>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);else for(var Xt=0;Xt<6;++Xt)Me.texImage2D(Jn+Xt,ft,Ue.internalformat,Ue.width>>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);al(Ue.texInfo,Ue.target)})}function de(){for(var ne=0;ne=0?Ml=!0:Ui.indexOf(zo)>=0&&(Ml=!1))),("depthTexture"in wa||"depthStencilTexture"in wa)&&(Ys=!!(wa.depthTexture||wa.depthStencilTexture)),"depth"in wa&&(typeof wa.depth=="boolean"?is=wa.depth:(Vl=wa.depth,Zs=!1)),"stencil"in wa&&(typeof wa.stencil=="boolean"?Zs=wa.stencil:(ss=wa.stencil,is=!1)),"depthStencil"in wa&&(typeof wa.depthStencil=="boolean"?is=Zs=wa.depthStencil:(Vs=wa.depthStencil,is=!1,Zs=!1))}var io=null,Y=null,D=null,J=null;if(Array.isArray(Va))io=Va.map(si);else if(Va)io=[si(Va)];else for(io=new Array(al),ta=0;ta0&&(kn.depth=Ni[0].depth,kn.stencil=Ni[0].stencil,kn.depthStencil=Ni[0].depthStencil),Ni[Ki]?Ni[Ki](kn):Ni[Ki]=li(kn)}return e(pn,{width:ta,height:ta,color:zo})}function Vn(na){var Ki,kn=na|0;if(kn===pn.width)return pn;var ta=pn.color;for(Ki=0;Ki=ta.byteLength?oa.subdata(ta):(oa.destroy(),li.buffers[na]=null)),li.buffers[na]||(oa=li.buffers[na]=jr.create(Ki,If,!1,!0)),kn.buffer=jr.getBuffer(oa),kn.size=kn.buffer.dimension|0,kn.normalized=!1,kn.type=kn.buffer.dtype,kn.offset=0,kn.stride=0,kn.divisor=0,kn.state=1,pn[na]=1}else jr.getBuffer(Ki)?(kn.buffer=jr.getBuffer(Ki),kn.size=kn.buffer.dimension|0,kn.normalized=!1,kn.type=kn.buffer.dtype,kn.offset=0,kn.stride=0,kn.divisor=0,kn.state=1):jr.getBuffer(Ki.buffer)?(kn.buffer=jr.getBuffer(Ki.buffer),kn.size=(+Ki.size||kn.buffer.dimension)|0,kn.normalized=!!Ki.normalized||!1,"type"in Ki?kn.type=ji[Ki.type]:kn.type=kn.buffer.dtype,kn.offset=(Ki.offset||0)|0,kn.stride=(Ki.stride||0)|0,kn.divisor=(Ki.divisor||0)|0,kn.state=1):"x"in Ki&&(kn.x=+Ki.x||0,kn.y=+Ki.y||0,kn.z=+Ki.z||0,kn.w=+Ki.w||0,kn.state=2)}for(var ba=0;ba1)for(var Ji=0;JiMr&&(Mr=Yr.stats.uniformsCount)}),Mr},zt.getMaxAttributesCount=function(){var Mr=0;return Ei.forEach(function(Yr){Yr.stats.attributesCount>Mr&&(Mr=Yr.stats.attributesCount)}),Mr});function si(){jr={},Nr={};for(var Mr=0;Mr16&&(zt=Yi(zt,Me.length*8));for(var Rr=Array(16),jr=Array(16),Nr=0;Nr<16;Nr++)Rr[Nr]=zt[Nr]^909522486,jr[Nr]=zt[Nr]^1549556828;var Gr=Yi(Rr.concat(Bc(bt)),512+bt.length*8);return At(Yi(jr.concat(Gr),768))}function vu(Me){for(var bt=ah?"0123456789ABCDEF":"0123456789abcdef",zt="",Rr,jr=0;jr>>4&15)+bt.charAt(Rr&15);return zt}function qc(Me){for(var bt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",zt="",Rr=Me.length,jr=0;jrMe.length*8?zt+=Zu:zt+=bt.charAt(Nr>>>6*(3-Gr)&63);return zt}function cf(Me,bt){var zt=bt.length,Rr=Array(),jr,Nr,Gr,mi,Ui=Array(Math.ceil(Me.length/2));for(jr=0;jr0;){for(mi=Array(),Gr=0,jr=0;jr0||Nr>0)&&(mi[mi.length]=Nr);Rr[Rr.length]=Gr,Ui=mi}var qi="";for(jr=Rr.length-1;jr>=0;jr--)qi+=bt.charAt(Rr[jr]);var Ei=Math.ceil(Me.length*8/(Math.log(bt.length)/Math.log(2)));for(jr=qi.length;jr>>6&31,128|Rr&63):Rr<=65535?bt+=String.fromCharCode(224|Rr>>>12&15,128|Rr>>>6&63,128|Rr&63):Rr<=2097151&&(bt+=String.fromCharCode(240|Rr>>>18&7,128|Rr>>>12&63,128|Rr>>>6&63,128|Rr&63));return bt}function Bc(Me){for(var bt=Array(Me.length>>2),zt=0;zt>5]|=(Me.charCodeAt(zt/8)&255)<<24-zt%32;return bt}function At(Me){for(var bt="",zt=0;zt>5]>>>24-zt%32&255);return bt}function Wt(Me,bt){return Me>>>bt|Me<<32-bt}function Cr(Me,bt){return Me>>>bt}function Ar(Me,bt,zt){return Me&bt^~Me&zt}function Kr(Me,bt,zt){return Me&bt^Me&zt^bt&zt}function ki(Me){return Wt(Me,2)^Wt(Me,13)^Wt(Me,22)}function Xi(Me){return Wt(Me,6)^Wt(Me,11)^Wt(Me,25)}function dn(Me){return Wt(Me,7)^Wt(Me,18)^Cr(Me,3)}function wn(Me){return Wt(Me,17)^Wt(Me,19)^Cr(Me,10)}var Nn=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function Yi(Me,bt){var zt=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),Rr=new Array(64),jr,Nr,Gr,mi,Ui,qi,Ei,Hn,en,Wi,si,Mr;for(Me[bt>>5]|=128<<24-bt%32,Me[(bt+64>>9<<4)+15]=bt,en=0;en>16)+(bt>>16)+(zt>>16);return Rr<<16|zt&65535}function on(Me){return Array.prototype.slice.call(Me)}function Fi(Me){return on(Me).join("")}function $n(Me){var bt=Me&&Me.cache,zt=0,Rr=[],jr=[],Nr=[];function Gr(si,Mr){var Yr=Mr&&Mr.stable;if(!Yr){for(var xi=0;xi0&&(si.push(Ri,"="),si.push.apply(si,on(arguments)),si.push(";")),Ri}return e(Mr,{def:xi,toString:function(){return Fi([Yr.length>0?"var "+Yr.join(",")+";":"",Fi(si)])}})}function Ui(){var si=mi(),Mr=mi(),Yr=si.toString,xi=Mr.toString;function Ri(ci,an){Mr(ci,an,"=",si.def(ci,an),";")}return e(function(){si.apply(si,on(arguments))},{def:si.def,entry:si,exit:Mr,save:Ri,set:function(ci,an,Zi){Ri(ci,an),si(ci,an,"=",Zi,";")},toString:function(){return Yr()+xi()}})}function qi(){var si=Fi(arguments),Mr=Ui(),Yr=Ui(),xi=Mr.toString,Ri=Yr.toString;return e(Mr,{then:function(){return Mr.apply(Mr,on(arguments)),this},else:function(){return Yr.apply(Yr,on(arguments)),this},toString:function(){var ci=Ri();return ci&&(ci="else{"+ci+"}"),Fi(["if(",si,"){",xi(),"}",ci])}})}var Ei=mi(),Hn={};function en(si,Mr){var Yr=[];function xi(){var Bn="a"+Yr.length;return Yr.push(Bn),Bn}Mr=Mr||0;for(var Ri=0;Ri[p.viewport.x,p.viewport.y,b.viewportWidth,b.viewportHeight]},attributes:{color:{buffer:o,offset:(b,p)=>p.offset*4,divisor:1},position:{buffer:i,offset:(b,p)=>p.offset*8,divisor:1},positionFract:{buffer:a,offset:(b,p)=>p.offset*8,divisor:1},error:{buffer:s,offset:(b,p)=>p.offset*16,divisor:1},direction:{buffer:l,stride:24,offset:0},lineOffset:{buffer:l,stride:24,offset:8},capOffset:{buffer:l,stride:24,offset:16}},primitive:"triangles",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport"),stencil:!1,instances:e.prop("count"),count:gqe.length}),vqe(f,{update:v,draw:h,destroy:_,regl:e,gl:r,canvas:r.canvas,groups:c}),f;function f(b){b?v(b):b===null&&_(),h()}function h(b){if(typeof b=="number")return d(b);b&&!Array.isArray(b)&&(b=[b]),e._refresh(),c.forEach((p,k)=>{if(p){if(b&&(b[k]?p.draw=!0:p.draw=!1),!p.draw){p.draw=!0;return}d(k)}})}function d(b){typeof b=="number"&&(b=c[b]),b!=null&&b&&b.count&&b.color&&b.opacity&&b.positions&&b.positions.length>1&&(b.scaleRatio=[b.scale[0]*b.viewport.width,b.scale[1]*b.viewport.height],n(b),b.after&&b.after(b))}function v(b){if(!b)return;b.length!=null?typeof b[0]=="number"&&(b=[{positions:b}]):Array.isArray(b)||(b=[b]);let p=0,k=0;if(f.groups=c=b.map((L,x)=>{let C=c[x];if(L)typeof L=="function"?L={after:L}:typeof L[0]=="number"&&(L={positions:L});else return C;return L=INt(L,{color:"color colors fill",capSize:"capSize cap capsize cap-size",lineWidth:"lineWidth line-width width line thickness",opacity:"opacity alpha",range:"range dataBox",viewport:"viewport viewBox",errors:"errors error",positions:"positions position data points"}),C||(c[x]=C={id:x,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},L=vqe({},u,L)),PNt(C,L,[{lineWidth:M=>+M*.5,capSize:M=>+M*.5,opacity:parseFloat,errors:M=>(M=pqe(M),k+=M.length,M),positions:(M,g)=>(M=pqe(M,"float64"),g.count=Math.floor(M.length/2),g.bounds=CNt(M,2),g.offset=p,p+=g.count,M)},{color:(M,g)=>{let P=g.count;if(M||(M="transparent"),!Array.isArray(M)||typeof M[0]=="number"){let z=M;M=Array(P);for(let O=0;O{let T=g.bounds;return M||(M=T),g.scale=[1/(M[2]-M[0]),1/(M[3]-M[1])],g.translate=[-M[0],-M[1]],g.scaleFract=HY(g.scale),g.translateFract=HY(g.translate),M},viewport:M=>{let g;return Array.isArray(M)?g={x:M[0],y:M[1],width:M[2]-M[0],height:M[3]-M[1]}:M?(g={x:M.x||M.left||0,y:M.y||M.top||0},M.right?g.width=M.right-g.x:g.width=M.w||M.width||0,M.bottom?g.height=M.bottom-g.y:g.height=M.h||M.height||0):g={x:0,y:0,width:r.drawingBufferWidth,height:r.drawingBufferHeight},g}}]),C}),p||k){let L=c.reduce((g,P,T)=>g+(P?P.count:0),0),x=new Float64Array(L*2),C=new Uint8Array(L*4),M=new Float32Array(L*4);c.forEach((g,P)=>{if(!g)return;let{positions:T,count:z,offset:O,color:V,errors:G}=g;z&&(C.set(V,O*4),M.set(G,O*4),x.set(T,O*2))});var E=RNt(x);i(E);var S=HY(x,E);a(S),o(C),s(M)}}function _(){i.destroy(),a.destroy(),o.destroy(),s.destroy(),l.destroy()}}});var bqe=ye((G1r,xqe)=>{var _qe=/[\'\"]/;xqe.exports=function(t){return t?(_qe.test(t.charAt(0))&&(t=t.substr(1)),_qe.test(t.charAt(t.length-1))&&(t=t.substr(0,t.length-1)),t):""}});var jY=ye((H1r,FNt)=>{FNt.exports=["inherit","initial","unset"]});var WY=ye((j1r,zNt)=>{zNt.exports=["caption","icon","menu","message-box","small-caption","status-bar"]});var XY=ye((W1r,ONt)=>{ONt.exports=["normal","bold","bolder","lighter","100","200","300","400","500","600","700","800","900"]});var ZY=ye((X1r,qNt)=>{qNt.exports=["normal","italic","oblique"]});var YY=ye((Z1r,BNt)=>{BNt.exports=["normal","condensed","semi-condensed","extra-condensed","ultra-condensed","expanded","semi-expanded","extra-expanded","ultra-expanded"]});var Sqe=ye((Y1r,Aqe)=>{"use strict";function wqe(e,t){if(typeof e!="string")return[e];var r=[e];typeof t=="string"||Array.isArray(t)?t={brackets:t}:t||(t={});var n=t.brackets?Array.isArray(t.brackets)?t.brackets:[t.brackets]:["{}","[]","()"],i=t.escape||"___",a=!!t.flat;n.forEach(function(l){var u=new RegExp(["\\",l[0],"[^\\",l[0],"\\",l[1],"]*\\",l[1]].join("")),c=[];function f(h,d,v){var _=r.push(h.slice(l[0].length,-l[1].length))-1;return c.push(_),i+_+i}r.forEach(function(h,d){for(var v,_=0;h!=v;)if(v=h,h=h.replace(u,f),_++>1e4)throw Error("References have circular dependency. Please, check them.");r[d]=h}),c=c.reverse(),r=r.map(function(h){return c.forEach(function(d){h=h.replace(new RegExp("(\\"+i+d+"\\"+i+")","g"),l[0]+"$1"+l[1])}),h})});var o=new RegExp("\\"+i+"([0-9]+)\\"+i);function s(l,u,c){for(var f=[],h,d=0;h=o.exec(l);){if(d++>1e4)throw Error("Circular references in parenthesis");f.push(l.slice(0,h.index)),f.push(s(u[h[1]],u)),l=l.slice(h.index+h[0].length)}return f.push(l),f}return a?r:s(r[0],r)}function Tqe(e,t){if(t&&t.flat){var r=t&&t.escape||"___",n=e[0],i;if(!n)return"";for(var a=new RegExp("\\"+r+"([0-9]+)\\"+r),o=0;n!=i;){if(o++>1e4)throw Error("Circular references in "+e);i=n,n=n.replace(a,s)}return n}return e.reduce(function l(u,c){return Array.isArray(c)&&(c=c.reduce(l,"")),u+c},"");function s(l,u){if(e[u]==null)throw Error("Reference "+u+"is undefined");return e[u]}}function KY(e,t){return Array.isArray(e)?Tqe(e,t):wqe(e,t)}KY.parse=wqe;KY.stringify=Tqe;Aqe.exports=KY});var kqe=ye((K1r,Eqe)=>{"use strict";var Mqe=Sqe();Eqe.exports=function(t,r,n){if(t==null)throw Error("First argument should be a string");if(r==null)throw Error("Separator should be a string or a RegExp");n?(typeof n=="string"||Array.isArray(n))&&(n={ignore:n}):n={},n.escape==null&&(n.escape=!0),n.ignore==null?n.ignore=["[]","()","{}","<>",'""',"''","``","\u201C\u201D","\xAB\xBB"]:(typeof n.ignore=="string"&&(n.ignore=[n.ignore]),n.ignore=n.ignore.map(function(f){return f.length===1&&(f=f+f),f}));var i=Mqe.parse(t,{flat:!0,brackets:n.ignore}),a=i[0],o=a.split(r);if(n.escape){for(var s=[],l=0;l{NNt.exports=["xx-small","x-small","small","medium","large","x-large","xx-large","larger","smaller"]});var JY=ye(($1r,Lqe)=>{"use strict";var UNt=Cqe();Lqe.exports={isSize:function(t){return/^[\d\.]/.test(t)||t.indexOf("/")!==-1||UNt.indexOf(t)!==-1}}});var Dqe=ye((Q1r,Rqe)=>{"use strict";var VNt=bqe(),GNt=jY(),HNt=WY(),jNt=XY(),WNt=ZY(),XNt=YY(),$Y=kqe(),ZNt=JY().isSize;Rqe.exports=Iqe;var Tk=Iqe.cache={};function Iqe(e){if(typeof e!="string")throw new Error("Font argument must be a string.");if(Tk[e])return Tk[e];if(e==="")throw new Error("Cannot parse an empty string.");if(HNt.indexOf(e)!==-1)return Tk[e]={system:e};for(var t={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},r=$Y(e,/\s+/),n;n=r.shift();){if(GNt.indexOf(n)!==-1)return["style","variant","weight","stretch"].forEach(function(a){t[a]=n}),Tk[e]=t;if(WNt.indexOf(n)!==-1){t.style=n;continue}if(n==="normal"||n==="small-caps"){t.variant=n;continue}if(XNt.indexOf(n)!==-1){t.stretch=n;continue}if(jNt.indexOf(n)!==-1){t.weight=n;continue}if(ZNt(n)){var i=$Y(n,"/");if(t.size=i[0],i[1]!=null?t.lineHeight=Pqe(i[1]):r[0]==="/"&&(r.shift(),t.lineHeight=Pqe(r.shift())),!r.length)throw new Error("Missing required font-family.");return t.family=$Y(r.join(" "),/\s*,\s*/).map(VNt),Tk[e]=t}throw new Error("Unknown or unsupported font token: "+n)}throw new Error("Missing required font-size.")}function Pqe(e){var t=parseFloat(e);return t.toString()===e?t:e}});var eK=ye((e_r,Fqe)=>{"use strict";var YNt=Zm(),KNt=JY().isSize,JNt=Sk(jY()),$Nt=Sk(WY()),QNt=Sk(XY()),eUt=Sk(ZY()),tUt=Sk(YY()),rUt={normal:1,"small-caps":1},iUt={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},QY={style:"normal",variant:"normal",weight:"normal",stretch:"normal",size:"1rem",lineHeight:"normal",family:"serif"};Fqe.exports=function(t){if(t=YNt(t,{style:"style fontstyle fontStyle font-style slope distinction",variant:"variant font-variant fontVariant fontvariant var capitalization",weight:"weight w font-weight fontWeight fontweight",stretch:"stretch font-stretch fontStretch fontstretch width",size:"size s font-size fontSize fontsize height em emSize",lineHeight:"lh line-height lineHeight lineheight leading",family:"font family fontFamily font-family fontfamily type typeface face",system:"system reserved default global"}),t.system)return t.system&&Ak(t.system,$Nt),t.system;if(Ak(t.style,eUt),Ak(t.variant,rUt),Ak(t.weight,QNt),Ak(t.stretch,tUt),t.size==null&&(t.size=QY.size),typeof t.size=="number"&&(t.size+="px"),!KNt)throw Error("Bad size value `"+t.size+"`");t.family||(t.family=QY.family),Array.isArray(t.family)&&(t.family.length||(t.family=[QY.family]),t.family=t.family.map(function(n){return iUt[n]?n:'"'+n+'"'}).join(", "));var r=[];return r.push(t.style),t.variant!==t.style&&r.push(t.variant),t.weight!==t.variant&&t.weight!==t.style&&r.push(t.weight),t.stretch!==t.weight&&t.stretch!==t.variant&&t.stretch!==t.style&&r.push(t.stretch),r.push(t.size+(t.lineHeight==null||t.lineHeight==="normal"||t.lineHeight+""=="1"?"":"/"+t.lineHeight)),r.push(t.family),r.filter(Boolean).join(" ")};function Ak(e,t){if(e&&!t[e]&&!JNt[e])throw Error("Unknown keyword `"+e+"`");return e}function Sk(e){for(var t={},r=0;r{"use strict";zqe.exports={parse:Dqe(),stringify:eK()}});var qqe=ye((tK,rK)=>{(function(e,t){typeof tK=="object"&&typeof rK!="undefined"?rK.exports=t():e.createREGL=t()})(tK,function(){"use strict";var e=function(Me,bt){for(var zt=Object.keys(bt),Rr=0;Rr1&&bt===zt&&(bt==='"'||bt==="'"))return['"'+o(Me.substr(1,Me.length-2))+'"'];var Rr=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Me);if(Rr)return s(Me.substr(0,Rr.index)).concat(s(Rr[1])).concat(s(Me.substr(Rr.index+Rr[0].length)));var jr=Me.split(".");if(jr.length===1)return['"'+o(Me)+'"'];for(var Nr=[],Gr=0;Gr65535)<<4,Me>>>=bt,zt=(Me>255)<<3,Me>>>=zt,bt|=zt,zt=(Me>15)<<2,Me>>>=zt,bt|=zt,zt=(Me>3)<<1,Me>>>=zt,bt|=zt,bt|Me>>1}function N(){var Me=M(8,function(){return[]});function bt(Nr){var Gr=Z(Nr),mi=Me[j(Gr)>>2];return mi.length>0?mi.pop():new ArrayBuffer(Gr)}function zt(Nr){Me[j(Nr.byteLength)>>2].push(Nr)}function Rr(Nr,Gr){var mi=null;switch(Nr){case g:mi=new Int8Array(bt(Gr),0,Gr);break;case P:mi=new Uint8Array(bt(Gr),0,Gr);break;case T:mi=new Int16Array(bt(2*Gr),0,Gr);break;case z:mi=new Uint16Array(bt(2*Gr),0,Gr);break;case O:mi=new Int32Array(bt(4*Gr),0,Gr);break;case V:mi=new Uint32Array(bt(4*Gr),0,Gr);break;case G:mi=new Float32Array(bt(4*Gr),0,Gr);break;default:return null}return mi.length!==Gr?mi.subarray(0,Gr):mi}function jr(Nr){zt(Nr.buffer)}return{alloc:bt,free:zt,allocType:Rr,freeType:jr}}var H=N();H.zero=N();var te=3408,oe=3410,_e=3411,Ee=3412,Ce=3413,me=3414,ie=3415,Se=33901,Le=33902,Ae=3379,Fe=3386,Pe=34921,ge=36347,Re=36348,ce=35661,Ze=35660,ut=34930,pt=36349,Zt=34076,st=34024,lt=7936,Gt=7937,Nt=7938,Jt=35724,sr=34047,wr=36063,cr=34852,$e=3553,St=34067,Qt=34069,Vt=33984,_t=6408,It=5126,mt=5121,er=36160,lr=36053,Tr=36064,Lr=16384,ti=function(Me,bt){var zt=1;bt.ext_texture_filter_anisotropic&&(zt=Me.getParameter(sr));var Rr=1,jr=1;bt.webgl_draw_buffers&&(Rr=Me.getParameter(cr),jr=Me.getParameter(wr));var Nr=!!bt.oes_texture_float;if(Nr){var Gr=Me.createTexture();Me.bindTexture($e,Gr),Me.texImage2D($e,0,_t,1,1,0,_t,It,null);var mi=Me.createFramebuffer();if(Me.bindFramebuffer(er,mi),Me.framebufferTexture2D(er,Tr,$e,Gr,0),Me.bindTexture($e,null),Me.checkFramebufferStatus(er)!==lr)Nr=!1;else{Me.viewport(0,0,1,1),Me.clearColor(1,0,0,1),Me.clear(Lr);var Ui=H.allocType(It,4);Me.readPixels(0,0,1,1,_t,It,Ui),Me.getError()?Nr=!1:(Me.deleteFramebuffer(mi),Me.deleteTexture(Gr),Nr=Ui[0]===1),H.freeType(Ui)}}var qi=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),Ei=!0;if(!qi){var Hn=Me.createTexture(),en=H.allocType(mt,36);Me.activeTexture(Vt),Me.bindTexture(St,Hn),Me.texImage2D(Qt,0,_t,3,3,0,_t,mt,en),H.freeType(en),Me.bindTexture(St,null),Me.deleteTexture(Hn),Ei=!Me.getError()}return{colorBits:[Me.getParameter(oe),Me.getParameter(_e),Me.getParameter(Ee),Me.getParameter(Ce)],depthBits:Me.getParameter(me),stencilBits:Me.getParameter(ie),subpixelBits:Me.getParameter(te),extensions:Object.keys(bt).filter(function(Wi){return!!bt[Wi]}),maxAnisotropic:zt,maxDrawbuffers:Rr,maxColorAttachments:jr,pointSizeDims:Me.getParameter(Se),lineWidthDims:Me.getParameter(Le),maxViewportDims:Me.getParameter(Fe),maxCombinedTextureUnits:Me.getParameter(ce),maxCubeMapSize:Me.getParameter(Zt),maxRenderbufferSize:Me.getParameter(st),maxTextureUnits:Me.getParameter(ut),maxTextureSize:Me.getParameter(Ae),maxAttributes:Me.getParameter(Pe),maxVertexUniforms:Me.getParameter(ge),maxVertexTextureUnits:Me.getParameter(Ze),maxVaryingVectors:Me.getParameter(Re),maxFragmentUniforms:Me.getParameter(pt),glsl:Me.getParameter(Jt),renderer:Me.getParameter(Gt),vendor:Me.getParameter(lt),version:Me.getParameter(Nt),readFloat:Nr,npotTextureCube:Ei}},Br=function(Me){return Me instanceof Uint8Array||Me instanceof Uint16Array||Me instanceof Uint32Array||Me instanceof Int8Array||Me instanceof Int16Array||Me instanceof Int32Array||Me instanceof Float32Array||Me instanceof Float64Array||Me instanceof Uint8ClampedArray};function Vr(Me){return!!Me&&typeof Me=="object"&&Array.isArray(Me.shape)&&Array.isArray(Me.stride)&&typeof Me.offset=="number"&&Me.shape.length===Me.stride.length&&(Array.isArray(Me.data)||Br(Me.data))}var dt=function(Me){return Object.keys(Me).map(function(bt){return Me[bt]})},Ge={shape:xe,flatten:Ie};function Je(Me,bt,zt){for(var Rr=0;Rr0){var Bn;if(Array.isArray(Yr[0])){Zi=Fn(Yr);for(var hi=1,li=1;li0){if(typeof hi[0]=="number"){var Vi=H.allocType(ci.dtype,hi.length);Er(Vi,hi),Zi(Vi,mn),H.freeType(Vi)}else if(Array.isArray(hi[0])||Br(hi[0])){Ji=Fn(hi);var Ni=qn(hi,Ji,ci.dtype);Zi(Ni,mn),H.freeType(Ni)}}}else if(Vr(hi)){Ji=hi.shape;var pn=hi.stride,Vn=0,na=0,Ki=0,kn=0;Ji.length===1?(Vn=Ji[0],na=1,Ki=pn[0],kn=0):Ji.length===2&&(Vn=Ji[0],na=Ji[1],Ki=pn[0],kn=pn[1]);var ta=Array.isArray(hi.data)?ci.dtype:nr(hi.data),oa=H.allocType(ta,Vn*na);Xr(oa,hi.data,Vn,na,Ki,kn,hi.offset),Zi(oa,mn),H.freeType(oa)}return an}return xi||an(Mr),an._reglType="buffer",an._buffer=ci,an.subdata=Bn,zt.profile&&(an.stats=ci.stats),an.destroy=function(){en(ci)},an}function si(){dt(Nr).forEach(function(Mr){Mr.buffer=Me.createBuffer(),Me.bindBuffer(Mr.type,Mr.buffer),Me.bufferData(Mr.type,Mr.persistentData||Mr.byteLength,Mr.usage)})}return zt.profile&&(bt.getTotalBufferSize=function(){var Mr=0;return Object.keys(Nr).forEach(function(Yr){Mr+=Nr[Yr].stats.size}),Mr}),{create:Wi,createStream:Ui,destroyStream:qi,clear:function(){dt(Nr).forEach(en),mi.forEach(en)},getBuffer:function(Mr){return Mr&&Mr._buffer instanceof Gr?Mr._buffer:null},restore:si,_initBuffer:Hn}}var Qr=0,Oi=0,$i=1,tn=1,fn=4,yn=4,Sn={points:Qr,point:Oi,lines:$i,line:tn,triangles:fn,triangle:yn,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ba=0,ua=1,ma=4,Wa=5120,Fa=5121,Wo=5122,da=5123,Wn=5124,Ha=5125,vo=34963,jn=35040,Mt=35044;function kr(Me,bt,zt,Rr){var jr={},Nr=0,Gr={uint8:Fa,uint16:da};bt.oes_element_index_uint&&(Gr.uint32=Ha);function mi(si){this.id=Nr++,jr[this.id]=this,this.buffer=si,this.primType=ma,this.vertCount=0,this.type=0}mi.prototype.bind=function(){this.buffer.bind()};var Ui=[];function qi(si){var Mr=Ui.pop();return Mr||(Mr=new mi(zt.create(null,vo,!0,!1)._buffer)),Hn(Mr,si,jn,-1,-1,0,0),Mr}function Ei(si){Ui.push(si)}function Hn(si,Mr,Yr,xi,Ri,ci,an){si.buffer.bind();var Zi;if(Mr){var Bn=an;!an&&(!Br(Mr)||Vr(Mr)&&!Br(Mr.data))&&(Bn=bt.oes_element_index_uint?Ha:da),zt._initBuffer(si.buffer,Mr,Yr,Bn,3)}else Me.bufferData(vo,ci,Yr),si.buffer.dtype=Zi||Fa,si.buffer.usage=Yr,si.buffer.dimension=3,si.buffer.byteLength=ci;if(Zi=an,!an){switch(si.buffer.dtype){case Fa:case Wa:Zi=Fa;break;case da:case Wo:Zi=da;break;case Ha:case Wn:Zi=Ha;break;default:}si.buffer.dtype=Zi}si.type=Zi;var hi=Ri;hi<0&&(hi=si.buffer.byteLength,Zi===da?hi>>=1:Zi===Ha&&(hi>>=2)),si.vertCount=hi;var li=xi;if(xi<0){li=ma;var mn=si.buffer.dimension;mn===1&&(li=Ba),mn===2&&(li=ua),mn===3&&(li=ma)}si.primType=li}function en(si){Rr.elementsCount--,delete jr[si.id],si.buffer.destroy(),si.buffer=null}function Wi(si,Mr){var Yr=zt.create(null,vo,!0),xi=new mi(Yr._buffer);Rr.elementsCount++;function Ri(ci){if(!ci)Yr(),xi.primType=ma,xi.vertCount=0,xi.type=Fa;else if(typeof ci=="number")Yr(ci),xi.primType=ma,xi.vertCount=ci|0,xi.type=Fa;else{var an=null,Zi=Mt,Bn=-1,hi=-1,li=0,mn=0;Array.isArray(ci)||Br(ci)||Vr(ci)?an=ci:("data"in ci&&(an=ci.data),"usage"in ci&&(Zi=On[ci.usage]),"primitive"in ci&&(Bn=Sn[ci.primitive]),"count"in ci&&(hi=ci.count|0),"type"in ci&&(mn=Gr[ci.type]),"length"in ci?li=ci.length|0:(li=hi,mn===da||mn===Wo?li*=2:(mn===Ha||mn===Wn)&&(li*=4))),Hn(xi,an,Zi,Bn,hi,li,mn)}return Ri}return Ri(si),Ri._reglType="elements",Ri._elements=xi,Ri.subdata=function(ci,an){return Yr.subdata(ci,an),Ri},Ri.destroy=function(){en(xi)},Ri}return{create:Wi,createStream:qi,destroyStream:Ei,getElements:function(si){return typeof si=="function"&&si._elements instanceof mi?si._elements:null},clear:function(){dt(jr).forEach(en)}}}var Jr=new Float32Array(1),vi=new Uint32Array(Jr.buffer),hn=5123;function An(Me){for(var bt=H.allocType(hn,Me.length),zt=0;zt>>31<<15,Nr=(Rr<<1>>>24)-127,Gr=Rr>>13&1023;if(Nr<-24)bt[zt]=jr;else if(Nr<-14){var mi=-14-Nr;bt[zt]=jr+(Gr+1024>>mi)}else Nr>15?bt[zt]=jr+31744:bt[zt]=jr+(Nr+15<<10)+Gr}return bt}function Mn(Me){return Array.isArray(Me)||Br(Me)}var Li=34467,_n=3553,ya=34067,Jn=34069,Ma=6408,_o=6406,No=6407,po=6409,Lo=6410,ko=32854,Ds=32855,Fs=36194,ll=32819,ul=32820,zl=33635,us=34042,il=6402,As=34041,cl=35904,Ks=35906,zs=36193,Io=33776,ls=33777,Zl=33778,Su=33779,nc=35986,bs=35987,Rn=34798,_a=35840,Vu=35841,Ol=35842,xo=35843,Yl=36196,Ns=5121,Hl=5123,ac=5125,aa=5126,Oo=10242,qo=10243,ql=10497,Pc=33071,Do=33648,rf=10240,Uf=10241,pl=9728,Zc=9729,Kl=9984,Os=9985,yu=9986,oc=9987,Cf=33170,sc=4352,Vh=4353,Lf=4354,cs=34046,nf=3317,Vf=37440,Jl=37441,fl=37443,lc=37444,Fu=33984,Es=[Kl,yu,Os,oc],Hs=[0,po,Lo,No,Ma],Go={};Go[po]=Go[_o]=Go[il]=1,Go[As]=Go[Lo]=2,Go[No]=Go[cl]=3,Go[Ma]=Go[Ks]=4;function ps(Me){return"[object "+Me+"]"}var uc=ps("HTMLCanvasElement"),xl=ps("OffscreenCanvas"),Gu=ps("CanvasRenderingContext2D"),qs=ps("ImageBitmap"),ad=ps("HTMLImageElement"),Po=ps("HTMLVideoElement"),od=Object.keys(ke).concat([uc,xl,Gu,qs,ad,Po]),Yo=[];Yo[Ns]=1,Yo[aa]=4,Yo[zs]=2,Yo[Hl]=2,Yo[ac]=4;var Pa=[];Pa[ko]=2,Pa[Ds]=2,Pa[Fs]=2,Pa[As]=4,Pa[Io]=.5,Pa[ls]=.5,Pa[Zl]=1,Pa[Su]=1,Pa[nc]=.5,Pa[bs]=1,Pa[Rn]=1,Pa[_a]=.5,Pa[Vu]=.25,Pa[Ol]=.5,Pa[xo]=.25,Pa[Yl]=.5;function af(Me){return Array.isArray(Me)&&(Me.length===0||typeof Me[0]=="number")}function Hu(Me){if(!Array.isArray(Me))return!1;var bt=Me.length;return!(bt===0||!Mn(Me[0]))}function bl(Me){return Object.prototype.toString.call(Me)}function Gf(Me){return bl(Me)===uc}function Ic(Me){return bl(Me)===xl}function yf(Me){return bl(Me)===Gu}function Bl(Me){return bl(Me)===qs}function wh(Me){return bl(Me)===ad}function Qf(Me){return bl(Me)===Po}function _f(Me){if(!Me)return!1;var bt=bl(Me);return od.indexOf(bt)>=0?!0:af(Me)||Hu(Me)||Vr(Me)}function Yc(Me){return ke[Object.prototype.toString.call(Me)]|0}function eh(Me,bt){var zt=bt.length;switch(Me.type){case Ns:case Hl:case ac:case aa:var Rr=H.allocType(Me.type,zt);Rr.set(bt),Me.data=Rr;break;case zs:Me.data=An(bt);break;default:}}function th(Me,bt){return H.allocType(Me.type===zs?aa:Me.type,bt)}function ju(Me,bt){Me.type===zs?(Me.data=An(bt),H.freeType(bt)):Me.data=bt}function Hf(Me,bt,zt,Rr,jr,Nr){for(var Gr=Me.width,mi=Me.height,Ui=Me.channels,qi=Gr*mi*Ui,Ei=th(Me,qi),Hn=0,en=0;en=1;)mi+=Gr*Ui*Ui,Ui/=2;return mi}else return Gr*zt*Rr}function of(Me,bt,zt,Rr,jr,Nr,Gr){var mi={"don't care":sc,"dont care":sc,nice:Lf,fast:Vh},Ui={repeat:ql,clamp:Pc,mirror:Do},qi={nearest:pl,linear:Zc},Ei=e({mipmap:oc,"nearest mipmap nearest":Kl,"linear mipmap nearest":Os,"nearest mipmap linear":yu,"linear mipmap linear":oc},qi),Hn={none:0,browser:lc},en={uint8:Ns,rgba4:ll,rgb565:zl,"rgb5 a1":ul},Wi={alpha:_o,luminance:po,"luminance alpha":Lo,rgb:No,rgba:Ma,rgba4:ko,"rgb5 a1":Ds,rgb565:Fs},si={};bt.ext_srgb&&(Wi.srgb=cl,Wi.srgba=Ks),bt.oes_texture_float&&(en.float32=en.float=aa),bt.oes_texture_half_float&&(en.float16=en["half float"]=zs),bt.webgl_depth_texture&&(e(Wi,{depth:il,"depth stencil":As}),e(en,{uint16:Hl,uint32:ac,"depth stencil":us})),bt.webgl_compressed_texture_s3tc&&e(si,{"rgb s3tc dxt1":Io,"rgba s3tc dxt1":ls,"rgba s3tc dxt3":Zl,"rgba s3tc dxt5":Su}),bt.webgl_compressed_texture_atc&&e(si,{"rgb atc":nc,"rgba atc explicit alpha":bs,"rgba atc interpolated alpha":Rn}),bt.webgl_compressed_texture_pvrtc&&e(si,{"rgb pvrtc 4bppv1":_a,"rgb pvrtc 2bppv1":Vu,"rgba pvrtc 4bppv1":Ol,"rgba pvrtc 2bppv1":xo}),bt.webgl_compressed_texture_etc1&&(si["rgb etc1"]=Yl);var Mr=Array.prototype.slice.call(Me.getParameter(Li));Object.keys(si).forEach(function(ne){var we=si[ne];Mr.indexOf(we)>=0&&(Wi[ne]=we)});var Yr=Object.keys(Wi);zt.textureFormats=Yr;var xi=[];Object.keys(Wi).forEach(function(ne){var we=Wi[ne];xi[we]=ne});var Ri=[];Object.keys(en).forEach(function(ne){var we=en[ne];Ri[we]=ne});var ci=[];Object.keys(qi).forEach(function(ne){var we=qi[ne];ci[we]=ne});var an=[];Object.keys(Ei).forEach(function(ne){var we=Ei[ne];an[we]=ne});var Zi=[];Object.keys(Ui).forEach(function(ne){var we=Ui[ne];Zi[we]=ne});var Bn=Yr.reduce(function(ne,we){var Ue=Wi[we];return Ue===po||Ue===_o||Ue===po||Ue===Lo||Ue===il||Ue===As||bt.ext_srgb&&(Ue===cl||Ue===Ks)?ne[Ue]=Ue:Ue===Ds||we.indexOf("rgba")>=0?ne[Ue]=Ma:ne[Ue]=No,ne},{});function hi(){this.internalformat=Ma,this.format=Ma,this.type=Ns,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=lc,this.width=0,this.height=0,this.channels=0}function li(ne,we){ne.internalformat=we.internalformat,ne.format=we.format,ne.type=we.type,ne.compressed=we.compressed,ne.premultiplyAlpha=we.premultiplyAlpha,ne.flipY=we.flipY,ne.unpackAlignment=we.unpackAlignment,ne.colorSpace=we.colorSpace,ne.width=we.width,ne.height=we.height,ne.channels=we.channels}function mn(ne,we){if(!(typeof we!="object"||!we)){if("premultiplyAlpha"in we&&(ne.premultiplyAlpha=we.premultiplyAlpha),"flipY"in we&&(ne.flipY=we.flipY),"alignment"in we&&(ne.unpackAlignment=we.alignment),"colorSpace"in we&&(ne.colorSpace=Hn[we.colorSpace]),"type"in we){var Ue=we.type;ne.type=en[Ue]}var ft=ne.width,Xt=ne.height,hr=ne.channels,qt=!1;"shape"in we?(ft=we.shape[0],Xt=we.shape[1],we.shape.length===3&&(hr=we.shape[2],qt=!0)):("radius"in we&&(ft=Xt=we.radius),"width"in we&&(ft=we.width),"height"in we&&(Xt=we.height),"channels"in we&&(hr=we.channels,qt=!0)),ne.width=ft|0,ne.height=Xt|0,ne.channels=hr|0;var Ve=!1;if("format"in we){var Qe=we.format,at=ne.internalformat=Wi[Qe];ne.format=Bn[at],Qe in en&&("type"in we||(ne.type=en[Qe])),Qe in si&&(ne.compressed=!0),Ve=!0}!qt&&Ve?ne.channels=Go[ne.format]:qt&&!Ve&&ne.channels!==Hs[ne.format]&&(ne.format=ne.internalformat=Hs[ne.channels])}}function Ji(ne){Me.pixelStorei(Vf,ne.flipY),Me.pixelStorei(Jl,ne.premultiplyAlpha),Me.pixelStorei(fl,ne.colorSpace),Me.pixelStorei(nf,ne.unpackAlignment)}function Vi(){hi.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function Ni(ne,we){var Ue=null;if(_f(we)?Ue=we:we&&(mn(ne,we),"x"in we&&(ne.xOffset=we.x|0),"y"in we&&(ne.yOffset=we.y|0),_f(we.data)&&(Ue=we.data)),we.copy){var ft=jr.viewportWidth,Xt=jr.viewportHeight;ne.width=ne.width||ft-ne.xOffset,ne.height=ne.height||Xt-ne.yOffset,ne.needsCopy=!0}else if(!Ue)ne.width=ne.width||1,ne.height=ne.height||1,ne.channels=ne.channels||4;else if(Br(Ue))ne.channels=ne.channels||4,ne.data=Ue,!("type"in we)&&ne.type===Ns&&(ne.type=Yc(Ue));else if(af(Ue))ne.channels=ne.channels||4,eh(ne,Ue),ne.alignment=1,ne.needsFree=!0;else if(Vr(Ue)){var hr=Ue.data;!Array.isArray(hr)&&ne.type===Ns&&(ne.type=Yc(hr));var qt=Ue.shape,Ve=Ue.stride,Qe,at,Ct,Ot,Rt,Bt;qt.length===3?(Ct=qt[2],Bt=Ve[2]):(Ct=1,Bt=1),Qe=qt[0],at=qt[1],Ot=Ve[0],Rt=Ve[1],ne.alignment=1,ne.width=Qe,ne.height=at,ne.channels=Ct,ne.format=ne.internalformat=Hs[Ct],ne.needsFree=!0,Hf(ne,hr,Ot,Rt,Bt,Ue.offset)}else if(Gf(Ue)||Ic(Ue)||yf(Ue))Gf(Ue)||Ic(Ue)?ne.element=Ue:ne.element=Ue.canvas,ne.width=ne.element.width,ne.height=ne.element.height,ne.channels=4;else if(Bl(Ue))ne.element=Ue,ne.width=Ue.width,ne.height=Ue.height,ne.channels=4;else if(wh(Ue))ne.element=Ue,ne.width=Ue.naturalWidth,ne.height=Ue.naturalHeight,ne.channels=4;else if(Qf(Ue))ne.element=Ue,ne.width=Ue.videoWidth,ne.height=Ue.videoHeight,ne.channels=4;else if(Hu(Ue)){var Dt=ne.width||Ue[0].length,yt=ne.height||Ue.length,Pt=ne.channels;Mn(Ue[0][0])?Pt=Pt||Ue[0][0].length:Pt=Pt||1;for(var ht=Ge.shape(Ue),ur=1,br=0;br>=Xt,Ue.height>>=Xt,Ni(Ue,ft[Xt]),ne.mipmask|=1<=0&&!("faces"in we)&&(ne.genMipmaps=!0)}if("mag"in we){var ft=we.mag;ne.magFilter=qi[ft]}var Xt=ne.wrapS,hr=ne.wrapT;if("wrap"in we){var qt=we.wrap;typeof qt=="string"?Xt=hr=Ui[qt]:Array.isArray(qt)&&(Xt=Ui[qt[0]],hr=Ui[qt[1]])}else{if("wrapS"in we){var Ve=we.wrapS;Xt=Ui[Ve]}if("wrapT"in we){var Qe=we.wrapT;hr=Ui[Qe]}}if(ne.wrapS=Xt,ne.wrapT=hr,"anisotropic"in we){var at=we.anisotropic;ne.anisotropic=we.anisotropic}if("mipmap"in we){var Ct=!1;switch(typeof we.mipmap){case"string":ne.mipmapHint=mi[we.mipmap],ne.genMipmaps=!0,Ct=!0;break;case"boolean":Ct=ne.genMipmaps=we.mipmap;break;case"object":ne.genMipmaps=!1,Ct=!0;break;default:}Ct&&!("min"in we)&&(ne.minFilter=Kl)}}function al(ne,we){Me.texParameteri(we,Uf,ne.minFilter),Me.texParameteri(we,rf,ne.magFilter),Me.texParameteri(we,Oo,ne.wrapS),Me.texParameteri(we,qo,ne.wrapT),bt.ext_texture_filter_anisotropic&&Me.texParameteri(we,cs,ne.anisotropic),ne.genMipmaps&&(Me.hint(Cf,ne.mipmapHint),Me.generateMipmap(we))}var Vl=0,ss={},Vs=zt.maxTextureUnits,Ys=Array(Vs).map(function(){return null});function wa(ne){hi.call(this),this.mipmask=0,this.internalformat=Ma,this.id=Vl++,this.refCount=1,this.target=ne,this.texture=Me.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new zo,Gr.profile&&(this.stats={size:0})}function ol(ne){Me.activeTexture(Fu),Me.bindTexture(ne.target,ne.texture)}function io(){var ne=Ys[0];ne?Me.bindTexture(ne.target,ne.texture):Me.bindTexture(_n,null)}function Y(ne){var we=ne.texture,Ue=ne.unit,ft=ne.target;Ue>=0&&(Me.activeTexture(Fu+Ue),Me.bindTexture(ft,null),Ys[Ue]=null),Me.deleteTexture(we),ne.texture=null,ne.params=null,ne.pixels=null,ne.refCount=0,delete ss[ne.id],Nr.textureCount--}e(wa.prototype,{bind:function(){var ne=this;ne.bindCount+=1;var we=ne.unit;if(we<0){for(var Ue=0;Ue0)continue;ft.unit=-1}Ys[Ue]=ne,we=Ue;break}we>=Vs,Gr.profile&&Nr.maxTextureUnits>Rt)-Ct,Bt.height=Bt.height||(Ue.height>>Rt)-Ot,ol(Ue),Vn(Bt,_n,Ct,Ot,Rt),io(),kn(Bt),ft}function hr(qt,Ve){var Qe=qt|0,at=Ve|0||Qe;if(Qe===Ue.width&&at===Ue.height)return ft;ft.width=Ue.width=Qe,ft.height=Ue.height=at,ol(Ue);for(var Ct=0;Ue.mipmask>>Ct;++Ct){var Ot=Qe>>Ct,Rt=at>>Ct;if(!Ot||!Rt)break;Me.texImage2D(_n,Ct,Ue.format,Ot,Rt,0,Ue.format,Ue.type,null)}return io(),Gr.profile&&(Ue.stats.size=cc(Ue.internalformat,Ue.type,Qe,at,!1,!1)),ft}return ft(ne,we),ft.subimage=Xt,ft.resize=hr,ft._reglType="texture2d",ft._texture=Ue,Gr.profile&&(ft.stats=Ue.stats),ft.destroy=function(){Ue.decRef()},ft}function J(ne,we,Ue,ft,Xt,hr){var qt=new wa(ya);ss[qt.id]=qt,Nr.cubeCount++;var Ve=new Array(6);function Qe(Ot,Rt,Bt,Dt,yt,Pt){var ht,ur=qt.texInfo;for(zo.call(ur),ht=0;ht<6;++ht)Ve[ht]=Va();if(typeof Ot=="number"||!Ot){var br=Ot|0||1;for(ht=0;ht<6;++ht)oa(Ve[ht],br,br)}else if(typeof Ot=="object")if(Rt)ba(Ve[0],Ot),ba(Ve[1],Rt),ba(Ve[2],Bt),ba(Ve[3],Dt),ba(Ve[4],yt),ba(Ve[5],Pt);else if(Qs(ur,Ot),mn(qt,Ot),"faces"in Ot){var Ur=Ot.faces;for(ht=0;ht<6;++ht)li(Ve[ht],qt),ba(Ve[ht],Ur[ht])}else for(ht=0;ht<6;++ht)ba(Ve[ht],Ot);for(li(qt,Ve[0]),ur.genMipmaps?qt.mipmask=(Ve[0].width<<1)-1:qt.mipmask=Ve[0].mipmask,qt.internalformat=Ve[0].internalformat,Qe.width=Ve[0].width,Qe.height=Ve[0].height,ol(qt),ht=0;ht<6;++ht)is(Ve[ht],Jn+ht);for(al(ur,ya),io(),Gr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,Qe.width,Qe.height,ur.genMipmaps,!0)),Qe.format=xi[qt.internalformat],Qe.type=Ri[qt.type],Qe.mag=ci[ur.magFilter],Qe.min=an[ur.minFilter],Qe.wrapS=Zi[ur.wrapS],Qe.wrapT=Zi[ur.wrapT],ht=0;ht<6;++ht)Ml(Ve[ht]);return Qe}function at(Ot,Rt,Bt,Dt,yt){var Pt=Bt|0,ht=Dt|0,ur=yt|0,br=Ki();return li(br,qt),br.width=0,br.height=0,Ni(br,Rt),br.width=br.width||(qt.width>>ur)-Pt,br.height=br.height||(qt.height>>ur)-ht,ol(qt),Vn(br,Jn+Ot,Pt,ht,ur),io(),kn(br),Qe}function Ct(Ot){var Rt=Ot|0;if(Rt!==qt.width){Qe.width=qt.width=Rt,Qe.height=qt.height=Rt,ol(qt);for(var Bt=0;Bt<6;++Bt)for(var Dt=0;qt.mipmask>>Dt;++Dt)Me.texImage2D(Jn+Bt,Dt,qt.format,Rt>>Dt,Rt>>Dt,0,qt.format,qt.type,null);return io(),Gr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,Qe.width,Qe.height,!1,!0)),Qe}}return Qe(ne,we,Ue,ft,Xt,hr),Qe.subimage=at,Qe.resize=Ct,Qe._reglType="textureCube",Qe._texture=qt,Gr.profile&&(Qe.stats=qt.stats),Qe.destroy=function(){qt.decRef()},Qe}function q(){for(var ne=0;ne>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);else for(var Xt=0;Xt<6;++Xt)Me.texImage2D(Jn+Xt,ft,Ue.internalformat,Ue.width>>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);al(Ue.texInfo,Ue.target)})}function de(){for(var ne=0;ne=0?Ml=!0:Ui.indexOf(zo)>=0&&(Ml=!1))),("depthTexture"in wa||"depthStencilTexture"in wa)&&(Ys=!!(wa.depthTexture||wa.depthStencilTexture)),"depth"in wa&&(typeof wa.depth=="boolean"?is=wa.depth:(Vl=wa.depth,Zs=!1)),"stencil"in wa&&(typeof wa.stencil=="boolean"?Zs=wa.stencil:(ss=wa.stencil,is=!1)),"depthStencil"in wa&&(typeof wa.depthStencil=="boolean"?is=Zs=wa.depthStencil:(Vs=wa.depthStencil,is=!1,Zs=!1))}var io=null,Y=null,D=null,J=null;if(Array.isArray(Va))io=Va.map(si);else if(Va)io=[si(Va)];else for(io=new Array(al),ta=0;ta0&&(kn.depth=Ni[0].depth,kn.stencil=Ni[0].stencil,kn.depthStencil=Ni[0].depthStencil),Ni[Ki]?Ni[Ki](kn):Ni[Ki]=li(kn)}return e(pn,{width:ta,height:ta,color:zo})}function Vn(na){var Ki,kn=na|0;if(kn===pn.width)return pn;var ta=pn.color;for(Ki=0;Ki=ta.byteLength?oa.subdata(ta):(oa.destroy(),li.buffers[na]=null)),li.buffers[na]||(oa=li.buffers[na]=jr.create(Ki,If,!1,!0)),kn.buffer=jr.getBuffer(oa),kn.size=kn.buffer.dimension|0,kn.normalized=!1,kn.type=kn.buffer.dtype,kn.offset=0,kn.stride=0,kn.divisor=0,kn.state=1,pn[na]=1}else jr.getBuffer(Ki)?(kn.buffer=jr.getBuffer(Ki),kn.size=kn.buffer.dimension|0,kn.normalized=!1,kn.type=kn.buffer.dtype,kn.offset=0,kn.stride=0,kn.divisor=0,kn.state=1):jr.getBuffer(Ki.buffer)?(kn.buffer=jr.getBuffer(Ki.buffer),kn.size=(+Ki.size||kn.buffer.dimension)|0,kn.normalized=!!Ki.normalized||!1,"type"in Ki?kn.type=ji[Ki.type]:kn.type=kn.buffer.dtype,kn.offset=(Ki.offset||0)|0,kn.stride=(Ki.stride||0)|0,kn.divisor=(Ki.divisor||0)|0,kn.state=1):"x"in Ki&&(kn.x=+Ki.x||0,kn.y=+Ki.y||0,kn.z=+Ki.z||0,kn.w=+Ki.w||0,kn.state=2)}for(var ba=0;ba1)for(var Ji=0;JiMr&&(Mr=Yr.stats.uniformsCount)}),Mr},zt.getMaxAttributesCount=function(){var Mr=0;return Ei.forEach(function(Yr){Yr.stats.attributesCount>Mr&&(Mr=Yr.stats.attributesCount)}),Mr});function si(){jr={},Nr={};for(var Mr=0;Mr16&&(zt=Yi(zt,Me.length*8));for(var Rr=Array(16),jr=Array(16),Nr=0;Nr<16;Nr++)Rr[Nr]=zt[Nr]^909522486,jr[Nr]=zt[Nr]^1549556828;var Gr=Yi(Rr.concat(Bc(bt)),512+bt.length*8);return At(Yi(jr.concat(Gr),768))}function vu(Me){for(var bt=ah?"0123456789ABCDEF":"0123456789abcdef",zt="",Rr,jr=0;jr>>4&15)+bt.charAt(Rr&15);return zt}function qc(Me){for(var bt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",zt="",Rr=Me.length,jr=0;jrMe.length*8?zt+=Zu:zt+=bt.charAt(Nr>>>6*(3-Gr)&63);return zt}function cf(Me,bt){var zt=bt.length,Rr=Array(),jr,Nr,Gr,mi,Ui=Array(Math.ceil(Me.length/2));for(jr=0;jr0;){for(mi=Array(),Gr=0,jr=0;jr0||Nr>0)&&(mi[mi.length]=Nr);Rr[Rr.length]=Gr,Ui=mi}var qi="";for(jr=Rr.length-1;jr>=0;jr--)qi+=bt.charAt(Rr[jr]);var Ei=Math.ceil(Me.length*8/(Math.log(bt.length)/Math.log(2)));for(jr=qi.length;jr>>6&31,128|Rr&63):Rr<=65535?bt+=String.fromCharCode(224|Rr>>>12&15,128|Rr>>>6&63,128|Rr&63):Rr<=2097151&&(bt+=String.fromCharCode(240|Rr>>>18&7,128|Rr>>>12&63,128|Rr>>>6&63,128|Rr&63));return bt}function Bc(Me){for(var bt=Array(Me.length>>2),zt=0;zt>5]|=(Me.charCodeAt(zt/8)&255)<<24-zt%32;return bt}function At(Me){for(var bt="",zt=0;zt>5]>>>24-zt%32&255);return bt}function Wt(Me,bt){return Me>>>bt|Me<<32-bt}function Cr(Me,bt){return Me>>>bt}function Ar(Me,bt,zt){return Me&bt^~Me&zt}function Kr(Me,bt,zt){return Me&bt^Me&zt^bt&zt}function ki(Me){return Wt(Me,2)^Wt(Me,13)^Wt(Me,22)}function Xi(Me){return Wt(Me,6)^Wt(Me,11)^Wt(Me,25)}function dn(Me){return Wt(Me,7)^Wt(Me,18)^Cr(Me,3)}function wn(Me){return Wt(Me,17)^Wt(Me,19)^Cr(Me,10)}var Nn=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function Yi(Me,bt){var zt=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),Rr=new Array(64),jr,Nr,Gr,mi,Ui,qi,Ei,Hn,en,Wi,si,Mr;for(Me[bt>>5]|=128<<24-bt%32,Me[(bt+64>>9<<4)+15]=bt,en=0;en>16)+(bt>>16)+(zt>>16);return Rr<<16|zt&65535}function on(Me){return Array.prototype.slice.call(Me)}function Fi(Me){return on(Me).join("")}function $n(Me){var bt=Me&&Me.cache,zt=0,Rr=[],jr=[],Nr=[];function Gr(si,Mr){var Yr=Mr&&Mr.stable;if(!Yr){for(var xi=0;xi0&&(si.push(Ri,"="),si.push.apply(si,on(arguments)),si.push(";")),Ri}return e(Mr,{def:xi,toString:function(){return Fi([Yr.length>0?"var "+Yr.join(",")+";":"",Fi(si)])}})}function Ui(){var si=mi(),Mr=mi(),Yr=si.toString,xi=Mr.toString;function Ri(ci,an){Mr(ci,an,"=",si.def(ci,an),";")}return e(function(){si.apply(si,on(arguments))},{def:si.def,entry:si,exit:Mr,save:Ri,set:function(ci,an,Zi){Ri(ci,an),si(ci,an,"=",Zi,";")},toString:function(){return Yr()+xi()}})}function qi(){var si=Fi(arguments),Mr=Ui(),Yr=Ui(),xi=Mr.toString,Ri=Yr.toString;return e(Mr,{then:function(){return Mr.apply(Mr,on(arguments)),this},else:function(){return Yr.apply(Yr,on(arguments)),this},toString:function(){var ci=Ri();return ci&&(ci="else{"+ci+"}"),Fi(["if(",si,"){",xi(),"}",ci])}})}var Ei=mi(),Hn={};function en(si,Mr){var Yr=[];function xi(){var Bn="a"+Yr.length;return Yr.push(Bn),Bn}Mr=Mr||0;for(var Ri=0;Ri":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},ai={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},gi={cw:Te,ccw:Ne};function Ii(Me){return Array.isArray(Me)||Br(Me)||Vr(Me)}function Si(Me){return Me.sort(function(bt,zt){return bt===ee?-1:zt===ee?1:bt=1,Rr>=2,bt)}else if(zt===Xo){var jr=Me.data;return new ei(jr.thisDep,jr.contextDep,jr.propDep,bt)}else{if(zt===Ss)return new ei(!1,!1,!1,bt);if(zt===as){for(var Nr=!1,Gr=!1,mi=!1,Ui=0;Ui=1&&(Gr=!0),Ei>=2&&(mi=!0)}else qi.type===Xo&&(Nr=Nr||qi.data.thisDep,Gr=Gr||qi.data.contextDep,mi=mi||qi.data.propDep)}return new ei(Nr,Gr,mi,bt)}else return new ei(zt===bo,zt===Ka,zt===Dn,bt)}}var ia=new ei(!1,!1,!1,function(){});function Ea(Me,bt,zt,Rr,jr,Nr,Gr,mi,Ui,qi,Ei,Hn,en,Wi,si,Mr){var Yr=qi.Record,xi={add:32774,subtract:32778,"reverse subtract":32779};zt.ext_blend_minmax&&(xi.min=He,xi.max=Ye);var Ri=zt.angle_instanced_arrays,ci=zt.webgl_draw_buffers,an=zt.oes_vertex_array_object,Zi={dirty:!0,profile:Mr.profile},Bn={},hi=[],li={},mn={};function Ji(Ve){return Ve.replace(".","_")}function Vi(Ve,Qe,at){var Ct=Ji(Ve);hi.push(Ve),Bn[Ct]=Zi[Ct]=!!at,li[Ct]=Qe}function Ni(Ve,Qe,at){var Ct=Ji(Ve);hi.push(Ve),Array.isArray(at)?(Zi[Ct]=at.slice(),Bn[Ct]=at.slice()):Zi[Ct]=Bn[Ct]=at,mn[Ct]=Qe}function pn(Ve){return!!isNaN(Ve)}Vi(ws,Pi),Vi(Ho,ni),Ni(ml,"blendColor",[0,0,0,0]),Ni(Ws,"blendEquationSeparate",[yr,yr]),Ni(Ls,"blendFuncSeparate",[gr,jt,gr,jt]),Vi(va,ln,!0),Ni(no,"depthFunc",Hr),Ni(ys,"depthRange",[0,1]),Ni(rs,"depthMask",!0),Ni($l,$l,[!0,!0,!0,!0]),Vi(Cu,Wr),Ni(Yu,"cullFace",se),Ni(Nc,Nc,Ne),Ni(pu,pu,1),Vi(Uc,Kn),Ni(xu,"polygonOffset",[0,0]),Vi(Ac,Ta),Vi(Ua,fa),Ni(oo,"sampleCoverage",[1,!1]),Vi(Vc,cn),Ni(hc,"stencilMask",-1),Ni(Ku,"stencilFunc",[kt,0,-1]),Ni(ue,"stencilOpSeparate",[X,nt,nt,nt]),Ni(w,"stencilOpSeparate",[se,nt,nt,nt]),Vi(B,Cn),Ni(Q,"scissor",[0,0,Me.drawingBufferWidth,Me.drawingBufferHeight]),Ni(ee,ee,[0,0,Me.drawingBufferWidth,Me.drawingBufferHeight]);var Vn={gl:Me,context:en,strings:bt,next:Bn,current:Zi,draw:Hn,elements:Nr,buffer:jr,shader:Ei,attributes:qi.state,vao:qi,uniforms:Ui,framebuffer:mi,extensions:zt,timer:Wi,isBufferArgs:Ii},na={primTypes:Sn,compareFuncs:Zr,blendFuncs:bi,blendEquations:xi,stencilOps:ai,glTypes:ji,orientationType:gi};ci&&(na.backBuffer=[se],na.drawBuffer=M(Rr.maxDrawbuffers,function(Ve){return Ve===0?[0]:M(Ve,function(Qe){return _i+Qe})}));var Ki=0;function kn(){var Ve=$n({cache:si}),Qe=Ve.link,at=Ve.global;Ve.id=Ki++,Ve.batchId="0";var Ct=Qe(Vn),Ot=Ve.shared={props:"a0"};Object.keys(Vn).forEach(function(Pt){Ot[Pt]=at.def(Ct,".",Pt)});var Rt=Ve.next={},Bt=Ve.current={};Object.keys(mn).forEach(function(Pt){Array.isArray(Zi[Pt])&&(Rt[Pt]=at.def(Ot.next,".",Pt),Bt[Pt]=at.def(Ot.current,".",Pt))});var Dt=Ve.constants={};Object.keys(na).forEach(function(Pt){Dt[Pt]=at.def(JSON.stringify(na[Pt]))}),Ve.invoke=function(Pt,ht){switch(ht.type){case Yn:var ur=["this",Ot.context,Ot.props,Ve.batchId];return Pt.def(Qe(ht.data),".call(",ur.slice(0,Math.max(ht.data.length+1,4)),")");case Dn:return Pt.def(Ot.props,ht.data);case Ka:return Pt.def(Ot.context,ht.data);case bo:return Pt.def("this",ht.data);case Xo:return ht.data.append(Ve,Pt),ht.data.ref;case Ss:return ht.data.toString();case as:return ht.data.map(function(br){return Ve.invoke(Pt,br)})}},Ve.attribCache={};var yt={};return Ve.scopeAttrib=function(Pt){var ht=bt.id(Pt);if(ht in yt)return yt[ht];var ur=qi.scope[ht];ur||(ur=qi.scope[ht]=new Yr);var br=yt[ht]=Qe(ur);return br},Ve}function ta(Ve){var Qe=Ve.static,at=Ve.dynamic,Ct;if(le in Qe){var Ot=!!Qe[le];Ct=En(function(Bt,Dt){return Ot}),Ct.enable=Ot}else if(le in at){var Rt=at[le];Ct=Un(Rt,function(Bt,Dt){return Bt.invoke(Dt,Rt)})}return Ct}function oa(Ve,Qe){var at=Ve.static,Ct=Ve.dynamic;if(qe in at){var Ot=at[qe];return Ot?(Ot=mi.getFramebuffer(Ot),En(function(Bt,Dt){var yt=Bt.link(Ot),Pt=Bt.shared;Dt.set(Pt.framebuffer,".next",yt);var ht=Pt.context;return Dt.set(ht,"."+Be,yt+".width"),Dt.set(ht,"."+et,yt+".height"),yt})):En(function(Bt,Dt){var yt=Bt.shared;Dt.set(yt.framebuffer,".next","null");var Pt=yt.context;return Dt.set(Pt,"."+Be,Pt+"."+Ht),Dt.set(Pt,"."+et,Pt+"."+tr),"null"})}else if(qe in Ct){var Rt=Ct[qe];return Un(Rt,function(Bt,Dt){var yt=Bt.invoke(Dt,Rt),Pt=Bt.shared,ht=Pt.framebuffer,ur=Dt.def(ht,".getFramebuffer(",yt,")");Dt.set(ht,".next",ur);var br=Pt.context;return Dt.set(br,"."+Be,ur+"?"+ur+".width:"+br+"."+Ht),Dt.set(br,"."+et,ur+"?"+ur+".height:"+br+"."+tr),ur})}else return null}function ba(Ve,Qe,at){var Ct=Ve.static,Ot=Ve.dynamic;function Rt(yt){if(yt in Ct){var Pt=Ct[yt],ht=!0,ur=Pt.x|0,br=Pt.y|0,Ur,Di;return"width"in Pt?Ur=Pt.width|0:ht=!1,"height"in Pt?Di=Pt.height|0:ht=!1,new ei(!ht&&Qe&&Qe.thisDep,!ht&&Qe&&Qe.contextDep,!ht&&Qe&&Qe.propDep,function(gn,rn){var Ci=gn.shared.context,Bi=Ur;"width"in Pt||(Bi=rn.def(Ci,".",Be,"-",ur));var Gi=Di;return"height"in Pt||(Gi=rn.def(Ci,".",et,"-",br)),[ur,br,Bi,Gi]})}else if(yt in Ot){var fi=Ot[yt],Ti=Un(fi,function(gn,rn){var Ci=gn.invoke(rn,fi),Bi=gn.shared.context,Gi=rn.def(Ci,".x|0"),sn=rn.def(Ci,".y|0"),zn=rn.def('"width" in ',Ci,"?",Ci,".width|0:","(",Bi,".",Be,"-",Gi,")"),Ja=rn.def('"height" in ',Ci,"?",Ci,".height|0:","(",Bi,".",et,"-",sn,")");return[Gi,sn,zn,Ja]});return Qe&&(Ti.thisDep=Ti.thisDep||Qe.thisDep,Ti.contextDep=Ti.contextDep||Qe.contextDep,Ti.propDep=Ti.propDep||Qe.propDep),Ti}else return Qe?new ei(Qe.thisDep,Qe.contextDep,Qe.propDep,function(gn,rn){var Ci=gn.shared.context;return[0,0,rn.def(Ci,".",Be),rn.def(Ci,".",et)]}):null}var Bt=Rt(ee);if(Bt){var Dt=Bt;Bt=new ei(Bt.thisDep,Bt.contextDep,Bt.propDep,function(yt,Pt){var ht=Dt.append(yt,Pt),ur=yt.shared.context;return Pt.set(ur,"."+We,ht[2]),Pt.set(ur,"."+it,ht[3]),ht})}return{viewport:Bt,scissor_box:Rt(Q)}}function is(Ve,Qe){var at=Ve.static,Ct=typeof at[ot]=="string"&&typeof at[Xe]=="string";if(Ct){if(Object.keys(Qe.dynamic).length>0)return null;var Ot=Qe.static,Rt=Object.keys(Ot);if(Rt.length>0&&typeof Ot[Rt[0]]=="number"){for(var Bt=[],Dt=0;Dt"+Gi+"?"+ht+".constant["+Gi+"]:0;"}).join(""),"}}else{","if(",Ur,"(",ht,".buffer)){",gn,"=",Di,".createStream(",Sr,",",ht,".buffer);","}else{",gn,"=",Di,".getBuffer(",ht,".buffer);","}",rn,'="type" in ',ht,"?",br.glTypes,"[",ht,".type]:",gn,".dtype;",fi.normalized,"=!!",ht,".normalized;");function Ci(Bi){Pt(fi[Bi],"=",ht,".",Bi,"|0;")}return Ci("size"),Ci("offset"),Ci("stride"),Ci("divisor"),Pt("}}"),Pt.exit("if(",fi.isStream,"){",Di,".destroyStream(",gn,");","}"),fi}Ot[Rt]=Un(Bt,Dt)}),Ot}function al(Ve){var Qe=Ve.static,at=Ve.dynamic,Ct={};return Object.keys(Qe).forEach(function(Ot){var Rt=Qe[Ot];Ct[Ot]=En(function(Bt,Dt){return typeof Rt=="number"||typeof Rt=="boolean"?""+Rt:Bt.link(Rt)})}),Object.keys(at).forEach(function(Ot){var Rt=at[Ot];Ct[Ot]=Un(Rt,function(Bt,Dt){return Bt.invoke(Dt,Rt)})}),Ct}function Vl(Ve,Qe,at,Ct,Ot){var Rt=Ve.static,Bt=Ve.dynamic,Dt=is(Ve,Qe),yt=oa(Ve,Ot),Pt=ba(Ve,yt,Ot),ht=Va(Ve,Ot),ur=Ml(Ve,Ot),br=Zs(Ve,Ot,Dt);function Ur(Ci){var Bi=Pt[Ci];Bi&&(ur[Ci]=Bi)}Ur(ee),Ur(Ji(Q));var Di=Object.keys(ur).length>0,fi={framebuffer:yt,draw:ht,shader:br,state:ur,dirty:Di,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(fi.profile=ta(Ve,Ot),fi.uniforms=zo(at,Ot),fi.drawVAO=fi.scopeVAO=ht.vao,!fi.drawVAO&&br.program&&!Dt&&zt.angle_instanced_arrays&&ht.static.elements){var Ti=!0,gn=br.program.attributes.map(function(Ci){var Bi=Qe.static[Ci];return Ti=Ti&&!!Bi,Bi});if(Ti&&gn.length>0){var rn=qi.getVAO(qi.createVAO({attributes:gn,elements:ht.static.elements}));fi.drawVAO=new ei(null,null,null,function(Ci,Bi){return Ci.link(rn)}),fi.useVAO=!0}}return Dt?fi.useVAO=!0:fi.attributes=Qs(Qe,Ot),fi.context=al(Ct,Ot),fi}function ss(Ve,Qe,at){var Ct=Ve.shared,Ot=Ct.context,Rt=Ve.scope();Object.keys(at).forEach(function(Bt){Qe.save(Ot,"."+Bt);var Dt=at[Bt],yt=Dt.append(Ve,Qe);Array.isArray(yt)?Rt(Ot,".",Bt,"=[",yt.join(),"];"):Rt(Ot,".",Bt,"=",yt,";")}),Qe(Rt)}function Vs(Ve,Qe,at,Ct){var Ot=Ve.shared,Rt=Ot.gl,Bt=Ot.framebuffer,Dt;ci&&(Dt=Qe.def(Ot.extensions,".webgl_draw_buffers"));var yt=Ve.constants,Pt=yt.drawBuffer,ht=yt.backBuffer,ur;at?ur=at.append(Ve,Qe):ur=Qe.def(Bt,".next"),Ct||Qe("if(",ur,"!==",Bt,".cur){"),Qe("if(",ur,"){",Rt,".bindFramebuffer(",qr,",",ur,".framebuffer);"),ci&&Qe(Dt,".drawBuffersWEBGL(",Pt,"[",ur,".colorAttachments.length]);"),Qe("}else{",Rt,".bindFramebuffer(",qr,",null);"),ci&&Qe(Dt,".drawBuffersWEBGL(",ht,");"),Qe("}",Bt,".cur=",ur,";"),Ct||Qe("}")}function Ys(Ve,Qe,at){var Ct=Ve.shared,Ot=Ct.gl,Rt=Ve.current,Bt=Ve.next,Dt=Ct.current,yt=Ct.next,Pt=Ve.cond(Dt,".dirty");hi.forEach(function(ht){var ur=Ji(ht);if(!(ur in at.state)){var br,Ur;if(ur in Bt){br=Bt[ur],Ur=Rt[ur];var Di=M(Zi[ur].length,function(Ti){return Pt.def(br,"[",Ti,"]")});Pt(Ve.cond(Di.map(function(Ti,gn){return Ti+"!=="+Ur+"["+gn+"]"}).join("||")).then(Ot,".",mn[ur],"(",Di,");",Di.map(function(Ti,gn){return Ur+"["+gn+"]="+Ti}).join(";"),";"))}else{br=Pt.def(yt,".",ur);var fi=Ve.cond(br,"!==",Dt,".",ur);Pt(fi),ur in li?fi(Ve.cond(br).then(Ot,".enable(",li[ur],");").else(Ot,".disable(",li[ur],");"),Dt,".",ur,"=",br,";"):fi(Ot,".",mn[ur],"(",br,");",Dt,".",ur,"=",br,";")}}}),Object.keys(at.state).length===0&&Pt(Dt,".dirty=false;"),Qe(Pt)}function wa(Ve,Qe,at,Ct){var Ot=Ve.shared,Rt=Ve.current,Bt=Ot.current,Dt=Ot.gl,yt;Si(Object.keys(at)).forEach(function(Pt){var ht=at[Pt];if(!(Ct&&!Ct(ht))){var ur=ht.append(Ve,Qe);if(li[Pt]){var br=li[Pt];Ln(ht)?(yt=Ve.link(ur,{stable:!0}),Qe(Ve.cond(yt).then(Dt,".enable(",br,");").else(Dt,".disable(",br,");")),Qe(Bt,".",Pt,"=",yt,";")):(Qe(Ve.cond(ur).then(Dt,".enable(",br,");").else(Dt,".disable(",br,");")),Qe(Bt,".",Pt,"=",ur,";"))}else if(Mn(ur)){var Ur=Rt[Pt];Qe(Dt,".",mn[Pt],"(",ur,");",ur.map(function(Di,fi){return Ur+"["+fi+"]="+Di}).join(";"),";")}else Ln(ht)?(yt=Ve.link(ur,{stable:!0}),Qe(Dt,".",mn[Pt],"(",yt,");",Bt,".",Pt,"=",yt,";")):Qe(Dt,".",mn[Pt],"(",ur,");",Bt,".",Pt,"=",ur,";")}})}function ol(Ve,Qe){Ri&&(Ve.instancing=Qe.def(Ve.shared.extensions,".angle_instanced_arrays"))}function io(Ve,Qe,at,Ct,Ot){var Rt=Ve.shared,Bt=Ve.stats,Dt=Rt.current,yt=Rt.timer,Pt=at.profile;function ht(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var ur,br;function Ur(Ci){ur=Qe.def(),Ci(ur,"=",ht(),";"),typeof Ot=="string"?Ci(Bt,".count+=",Ot,";"):Ci(Bt,".count++;"),Wi&&(Ct?(br=Qe.def(),Ci(br,"=",yt,".getNumPendingQueries();")):Ci(yt,".beginQuery(",Bt,");"))}function Di(Ci){Ci(Bt,".cpuTime+=",ht(),"-",ur,";"),Wi&&(Ct?Ci(yt,".pushScopeStats(",br,",",yt,".getNumPendingQueries(),",Bt,");"):Ci(yt,".endQuery();"))}function fi(Ci){var Bi=Qe.def(Dt,".profile");Qe(Dt,".profile=",Ci,";"),Qe.exit(Dt,".profile=",Bi,";")}var Ti;if(Pt){if(Ln(Pt)){Pt.enable?(Ur(Qe),Di(Qe.exit),fi("true")):fi("false");return}Ti=Pt.append(Ve,Qe),fi(Ti)}else Ti=Qe.def(Dt,".profile");var gn=Ve.block();Ur(gn),Qe("if(",Ti,"){",gn,"}");var rn=Ve.block();Di(rn),Qe.exit("if(",Ti,"){",rn,"}")}function Y(Ve,Qe,at,Ct,Ot){var Rt=Ve.shared;function Bt(yt){switch(yt){case Co:case Ps:case hl:return 2;case Qa:case Ts:case Ul:return 3;case mo:case wo:case Lu:return 4;default:return 1}}function Dt(yt,Pt,ht){var ur=Rt.gl,br=Qe.def(yt,".location"),Ur=Qe.def(Rt.attributes,"[",br,"]"),Di=ht.state,fi=ht.buffer,Ti=[ht.x,ht.y,ht.z,ht.w],gn=["buffer","normalized","offset","stride"];function rn(){Qe("if(!",Ur,".buffer){",ur,".enableVertexAttribArray(",br,");}");var Bi=ht.type,Gi;if(ht.size?Gi=Qe.def(ht.size,"||",Pt):Gi=Pt,Qe("if(",Ur,".type!==",Bi,"||",Ur,".size!==",Gi,"||",gn.map(function(zn){return Ur+"."+zn+"!=="+ht[zn]}).join("||"),"){",ur,".bindBuffer(",Sr,",",fi,".buffer);",ur,".vertexAttribPointer(",[br,Gi,Bi,ht.normalized,ht.stride,ht.offset],");",Ur,".type=",Bi,";",Ur,".size=",Gi,";",gn.map(function(zn){return Ur+"."+zn+"="+ht[zn]+";"}).join(""),"}"),Ri){var sn=ht.divisor;Qe("if(",Ur,".divisor!==",sn,"){",Ve.instancing,".vertexAttribDivisorANGLE(",[br,sn],");",Ur,".divisor=",sn,";}")}}function Ci(){Qe("if(",Ur,".buffer){",ur,".disableVertexAttribArray(",br,");",Ur,".buffer=null;","}if(",Ca.map(function(Bi,Gi){return Ur+"."+Bi+"!=="+Ti[Gi]}).join("||"),"){",ur,".vertexAttrib4f(",br,",",Ti,");",Ca.map(function(Bi,Gi){return Ur+"."+Bi+"="+Ti[Gi]+";"}).join(""),"}")}Di===La?rn():Di===Na?Ci():(Qe("if(",Di,"===",La,"){"),rn(),Qe("}else{"),Ci(),Qe("}"))}Ct.forEach(function(yt){var Pt=yt.name,ht=at.attributes[Pt],ur;if(ht){if(!Ot(ht))return;ur=ht.append(Ve,Qe)}else{if(!Ot(ia))return;var br=Ve.scopeAttrib(Pt);ur={},Object.keys(new Yr).forEach(function(Ur){ur[Ur]=Qe.def(br,".",Ur)})}Dt(Ve.link(yt),Bt(yt.info.type),ur)})}function D(Ve,Qe,at,Ct,Ot,Rt){for(var Bt=Ve.shared,Dt=Bt.gl,yt,Pt=0;Pt1){for(var co=[],ts=[],so=0;so>1)",fi],");")}function sn(){at(Ti,".drawArraysInstancedANGLE(",[br,Ur,Di,fi],");")}ht&&ht!=="null"?rn?Gi():(at("if(",ht,"){"),Gi(),at("}else{"),sn(),at("}")):sn()}function Bi(){function Gi(){at(Rt+".drawElements("+[br,Di,gn,Ur+"<<(("+gn+"-"+Ra+")>>1)"]+");")}function sn(){at(Rt+".drawArrays("+[br,Ur,Di]+");")}ht&&ht!=="null"?rn?Gi():(at("if(",ht,"){"),Gi(),at("}else{"),sn(),at("}")):sn()}Ri&&(typeof fi!="number"||fi>=0)?typeof fi=="string"?(at("if(",fi,">0){"),Ci(),at("}else if(",fi,"<0){"),Bi(),at("}")):Ci():Bi()}function q(Ve,Qe,at,Ct,Ot){var Rt=kn(),Bt=Rt.proc("body",Ot);return Ri&&(Rt.instancing=Bt.def(Rt.shared.extensions,".angle_instanced_arrays")),Ve(Rt,Bt,at,Ct),Rt.compile().body}function K(Ve,Qe,at,Ct){ol(Ve,Qe),at.useVAO?at.drawVAO?Qe(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,Qe),");"):Qe(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(Qe(Ve.shared.vao,".setVAO(null);"),Y(Ve,Qe,at,Ct.attributes,function(){return!0})),D(Ve,Qe,at,Ct.uniforms,function(){return!0},!1),J(Ve,Qe,Qe,at)}function de(Ve,Qe){var at=Ve.proc("draw",1);ol(Ve,at),ss(Ve,at,Qe.context),Vs(Ve,at,Qe.framebuffer),Ys(Ve,at,Qe),wa(Ve,at,Qe.state),io(Ve,at,Qe,!1,!0);var Ct=Qe.shader.progVar.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",Ct,".program);"),Qe.shader.program)K(Ve,at,Qe,Qe.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var Ot=Ve.global.def("{}"),Rt=at.def(Ct,".id"),Bt=at.def(Ot,"[",Rt,"]");at(Ve.cond(Bt).then(Bt,".call(this,a0);").else(Bt,"=",Ot,"[",Rt,"]=",Ve.link(function(Dt){return q(K,Ve,Qe,Dt,1)}),"(",Ct,");",Bt,".call(this,a0);"))}Object.keys(Qe.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ne(Ve,Qe,at,Ct){Ve.batchId="a1",ol(Ve,Qe);function Ot(){return!0}Y(Ve,Qe,at,Ct.attributes,Ot),D(Ve,Qe,at,Ct.uniforms,Ot,!1),J(Ve,Qe,Qe,at)}function we(Ve,Qe,at,Ct){ol(Ve,Qe);var Ot=at.contextDep,Rt=Qe.def(),Bt="a0",Dt="a1",yt=Qe.def();Ve.shared.props=yt,Ve.batchId=Rt;var Pt=Ve.scope(),ht=Ve.scope();Qe(Pt.entry,"for(",Rt,"=0;",Rt,"<",Dt,";++",Rt,"){",yt,"=",Bt,"[",Rt,"];",ht,"}",Pt.exit);function ur(gn){return gn.contextDep&&Ot||gn.propDep}function br(gn){return!ur(gn)}if(at.needsContext&&ss(Ve,ht,at.context),at.needsFramebuffer&&Vs(Ve,ht,at.framebuffer),wa(Ve,ht,at.state,ur),at.profile&&ur(at.profile)&&io(Ve,ht,at,!1,!0),Ct)at.useVAO?at.drawVAO?ur(at.drawVAO)?ht(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,ht),");"):Pt(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,Pt),");"):Pt(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(Pt(Ve.shared.vao,".setVAO(null);"),Y(Ve,Pt,at,Ct.attributes,br),Y(Ve,ht,at,Ct.attributes,ur)),D(Ve,Pt,at,Ct.uniforms,br,!1),D(Ve,ht,at,Ct.uniforms,ur,!0),J(Ve,Pt,ht,at);else{var Ur=Ve.global.def("{}"),Di=at.shader.progVar.append(Ve,ht),fi=ht.def(Di,".id"),Ti=ht.def(Ur,"[",fi,"]");ht(Ve.shared.gl,".useProgram(",Di,".program);","if(!",Ti,"){",Ti,"=",Ur,"[",fi,"]=",Ve.link(function(gn){return q(ne,Ve,at,gn,2)}),"(",Di,");}",Ti,".call(this,a0[",Rt,"],",Rt,");")}}function Ue(Ve,Qe){var at=Ve.proc("batch",2);Ve.batchId="0",ol(Ve,at);var Ct=!1,Ot=!0;Object.keys(Qe.context).forEach(function(Ur){Ct=Ct||Qe.context[Ur].propDep}),Ct||(ss(Ve,at,Qe.context),Ot=!1);var Rt=Qe.framebuffer,Bt=!1;Rt?(Rt.propDep?Ct=Bt=!0:Rt.contextDep&&Ct&&(Bt=!0),Bt||Vs(Ve,at,Rt)):Vs(Ve,at,null),Qe.state.viewport&&Qe.state.viewport.propDep&&(Ct=!0);function Dt(Ur){return Ur.contextDep&&Ct||Ur.propDep}Ys(Ve,at,Qe),wa(Ve,at,Qe.state,function(Ur){return!Dt(Ur)}),(!Qe.profile||!Dt(Qe.profile))&&io(Ve,at,Qe,!1,"a1"),Qe.contextDep=Ct,Qe.needsContext=Ot,Qe.needsFramebuffer=Bt;var yt=Qe.shader.progVar;if(yt.contextDep&&Ct||yt.propDep)we(Ve,at,Qe,null);else{var Pt=yt.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",Pt,".program);"),Qe.shader.program)we(Ve,at,Qe,Qe.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var ht=Ve.global.def("{}"),ur=at.def(Pt,".id"),br=at.def(ht,"[",ur,"]");at(Ve.cond(br).then(br,".call(this,a0,a1);").else(br,"=",ht,"[",ur,"]=",Ve.link(function(Ur){return q(we,Ve,Qe,Ur,2)}),"(",Pt,");",br,".call(this,a0,a1);"))}}Object.keys(Qe.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ft(Ve,Qe){var at=Ve.proc("scope",3);Ve.batchId="a2";var Ct=Ve.shared,Ot=Ct.current;if(ss(Ve,at,Qe.context),Qe.framebuffer&&Qe.framebuffer.append(Ve,at),Si(Object.keys(Qe.state)).forEach(function(Dt){var yt=Qe.state[Dt],Pt=yt.append(Ve,at);Mn(Pt)?Pt.forEach(function(ht,ur){pn(ht)?at.set(Ve.next[Dt],"["+ur+"]",ht):at.set(Ve.next[Dt],"["+ur+"]",Ve.link(ht,{stable:!0}))}):Ln(yt)?at.set(Ct.next,"."+Dt,Ve.link(Pt,{stable:!0})):at.set(Ct.next,"."+Dt,Pt)}),io(Ve,at,Qe,!0,!0),[Tt,xr,Kt,Ir,Yt].forEach(function(Dt){var yt=Qe.draw[Dt];if(yt){var Pt=yt.append(Ve,at);pn(Pt)?at.set(Ct.draw,"."+Dt,Pt):at.set(Ct.draw,"."+Dt,Ve.link(Pt),{stable:!0})}}),Object.keys(Qe.uniforms).forEach(function(Dt){var yt=Qe.uniforms[Dt].append(Ve,at);Array.isArray(yt)&&(yt="["+yt.map(function(Pt){return pn(Pt)?Pt:Ve.link(Pt,{stable:!0})})+"]"),at.set(Ct.uniforms,"["+Ve.link(bt.id(Dt),{stable:!0})+"]",yt)}),Object.keys(Qe.attributes).forEach(function(Dt){var yt=Qe.attributes[Dt].append(Ve,at),Pt=Ve.scopeAttrib(Dt);Object.keys(new Yr).forEach(function(ht){at.set(Pt,"."+ht,yt[ht])})}),Qe.scopeVAO){var Rt=Qe.scopeVAO.append(Ve,at);pn(Rt)?at.set(Ct.vao,".targetVAO",Rt):at.set(Ct.vao,".targetVAO",Ve.link(Rt,{stable:!0}))}function Bt(Dt){var yt=Qe.shader[Dt];if(yt){var Pt=yt.append(Ve,at);pn(Pt)?at.set(Ct.shader,"."+Dt,Pt):at.set(Ct.shader,"."+Dt,Ve.link(Pt,{stable:!0}))}}Bt(Xe),Bt(ot),Object.keys(Qe.state).length>0&&(at(Ot,".dirty=true;"),at.exit(Ot,".dirty=true;")),at("a1(",Ve.shared.context,",a0,",Ve.batchId,");")}function Xt(Ve){if(!(typeof Ve!="object"||Mn(Ve))){for(var Qe=Object.keys(Ve),at=0;at=0;--q){var K=Vn[q];K&&K(si,null,0)}zt.flush(),Ei&&Ei.update()}function ba(){!ta&&Vn.length>0&&(ta=d.next(oa))}function is(){ta&&(d.cancel(oa),ta=null)}function Zs(q){q.preventDefault(),jr=!0,is(),na.forEach(function(K){K()})}function Va(q){zt.getError(),jr=!1,Nr.restore(),Bn.restore(),Ri.restore(),hi.restore(),li.restore(),mn.restore(),an.restore(),Ei&&Ei.restore(),Ji.procs.refresh(),ba(),Ki.forEach(function(K){K()})}pn&&(pn.addEventListener(Fo,Zs,!1),pn.addEventListener(Uo,Va,!1));function Ml(){Vn.length=0,is(),pn&&(pn.removeEventListener(Fo,Zs),pn.removeEventListener(Uo,Va)),Bn.clear(),mn.clear(),li.clear(),an.clear(),hi.clear(),ci.clear(),Ri.clear(),Ei&&Ei.clear(),kn.forEach(function(q){q()})}function zo(q){function K(Rt){var Bt=e({},Rt);delete Bt.uniforms,delete Bt.attributes,delete Bt.context,delete Bt.vao,"stencil"in Bt&&Bt.stencil.op&&(Bt.stencil.opBack=Bt.stencil.opFront=Bt.stencil.op,delete Bt.stencil.op);function Dt(yt){if(yt in Bt){var Pt=Bt[yt];delete Bt[yt],Object.keys(Pt).forEach(function(ht){Bt[yt+"."+ht]=Pt[ht]})}}return Dt("blend"),Dt("depth"),Dt("cull"),Dt("stencil"),Dt("polygonOffset"),Dt("scissor"),Dt("sample"),"vao"in Rt&&(Bt.vao=Rt.vao),Bt}function de(Rt,Bt){var Dt={},yt={};return Object.keys(Rt).forEach(function(Pt){var ht=Rt[Pt];if(h.isDynamic(ht)){yt[Pt]=h.unbox(ht,Pt);return}else if(Bt&&Array.isArray(ht)){for(var ur=0;ur0)return Ve.call(this,Ct(Rt|0),Rt|0)}else if(Array.isArray(Rt)){if(Rt.length)return Ve.call(this,Rt,Rt.length)}else return qt.call(this,Rt)}return e(Ot,{stats:Xt,destroy:function(){hr.destroy()}})}var Qs=mn.setFBO=zo({framebuffer:h.define.call(null,$s,"framebuffer")});function al(q,K){var de=0;Ji.procs.poll();var ne=K.color;ne&&(zt.clearColor(+ne[0]||0,+ne[1]||0,+ne[2]||0,+ne[3]||0),de|=Ms),"depth"in K&&(zt.clearDepth(+K.depth),de|=Xs),"stencil"in K&&(zt.clearStencil(K.stencil|0),de|=Gn),zt.clear(de)}function Vl(q){if("framebuffer"in q)if(q.framebuffer&&q.framebuffer_reglType==="framebufferCube")for(var K=0;K<6;++K)Qs(e({framebuffer:q.framebuffer.faces[K]},q),al);else Qs(q,al);else al(null,q)}function ss(q){Vn.push(q);function K(){var de=dl(Vn,q);function ne(){var we=dl(Vn,ne);Vn[we]=Vn[Vn.length-1],Vn.length-=1,Vn.length<=0&&is()}Vn[de]=ne}return ba(),{cancel:K}}function Vs(){var q=Ni.viewport,K=Ni.scissor_box;q[0]=q[1]=K[0]=K[1]=0,si.viewportWidth=si.framebufferWidth=si.drawingBufferWidth=q[2]=K[2]=zt.drawingBufferWidth,si.viewportHeight=si.framebufferHeight=si.drawingBufferHeight=q[3]=K[3]=zt.drawingBufferHeight}function Ys(){si.tick+=1,si.time=ol(),Vs(),Ji.procs.poll()}function wa(){hi.refresh(),Vs(),Ji.procs.refresh(),Ei&&Ei.update()}function ol(){return(v()-Hn)/1e3}wa();function io(q,K){var de;switch(q){case"frame":return ss(K);case"lost":de=na;break;case"restore":de=Ki;break;case"destroy":de=kn;break;default:}return de.push(K),{cancel:function(){for(var ne=0;ne=0},read:Vi,destroy:Ml,_gl:zt,_refresh:wa,poll:function(){Ys(),Ei&&Ei.update()},now:ol,stats:mi,getCachedCode:Y,preloadCachedCode:D});return bt.onDone(null,J),J}return Sc})});var Vqe=ye((r_r,Uqe)=>{"use strict";var nUt=Zm();Uqe.exports=function(t){if(t?typeof t=="string"&&(t={container:t}):t={},Bqe(t)?t={container:t}:aUt(t)?t={container:t}:oUt(t)?t={gl:t}:t=nUt(t,{container:"container target element el canvas holder parent parentNode wrapper use ref root node",gl:"gl context webgl glContext",attrs:"attributes attrs contextAttributes",pixelRatio:"pixelRatio pxRatio px ratio pxratio pixelratio",width:"w width",height:"h height"},!0),t.pixelRatio||(t.pixelRatio=window.pixelRatio||1),t.gl)return t.gl;if(t.canvas&&(t.container=t.canvas.parentNode),t.container){if(typeof t.container=="string"){var r=document.querySelector(t.container);if(!r)throw Error("Element "+t.container+" is not found");t.container=r}Bqe(t.container)?(t.canvas=t.container,t.container=t.canvas.parentNode):t.canvas||(t.canvas=Nqe(),t.container.appendChild(t.canvas),qqe(t))}else if(!t.canvas)if(typeof document!="undefined")t.container=document.body||document.documentElement,t.canvas=Nqe(),t.container.appendChild(t.canvas),qqe(t);else throw Error("Not DOM environment. Use headless-gl.");return t.gl||["webgl","experimental-webgl","webgl-experimental"].some(function(n){try{t.gl=t.canvas.getContext(n,t.attrs)}catch(i){}return t.gl}),t.gl};function qqe(e){if(e.container)if(e.container==document.body)document.body.style.width||(e.canvas.width=e.width||e.pixelRatio*window.innerWidth),document.body.style.height||(e.canvas.height=e.height||e.pixelRatio*window.innerHeight);else{var t=e.container.getBoundingClientRect();e.canvas.width=e.width||t.right-t.left,e.canvas.height=e.height||t.bottom-t.top}}function Bqe(e){return typeof e.getContext=="function"&&"width"in e&&"height"in e}function aUt(e){return typeof e.nodeName=="string"&&typeof e.appendChild=="function"&&typeof e.getBoundingClientRect=="function"}function oUt(e){return typeof e.drawArrays=="function"||typeof e.drawElements=="function"}function Nqe(){var e=document.createElement("canvas");return e.style.position="absolute",e.style.top=0,e.style.left=0,e}});var Hqe=ye((i_r,Gqe)=>{"use strict";var sUt=QY(),lUt=[32,126];Gqe.exports=uUt;function uUt(e){e=e||{};var t=e.shape?e.shape:e.canvas?[e.canvas.width,e.canvas.height]:[512,512],r=e.canvas||document.createElement("canvas"),n=e.font,i=typeof e.step=="number"?[e.step,e.step]:e.step||[32,32],a=e.chars||lUt;if(n&&typeof n!="string"&&(n=sUt(n)),!Array.isArray(a))a=String(a).split("");else if(a.length===2&&typeof a[0]=="number"&&typeof a[1]=="number"){for(var o=[],s=a[0],l=0;s<=a[1];s++)o[l++]=String.fromCharCode(s);a=o}t=t.slice(),r.width=t[0],r.height=t[1];var u=r.getContext("2d");u.fillStyle="#000",u.fillRect(0,0,r.width,r.height),u.font=n,u.textAlign="center",u.textBaseline="middle",u.fillStyle="#fff";for(var c=i[0]/2,f=i[1]/2,s=0;st[0]-i[0]/2&&(c=i[0]/2,f+=i[1]);return r}});var iK=ye(Bh=>{"use strict";"use restrict";var rK=32;Bh.INT_BITS=rK;Bh.INT_MAX=2147483647;Bh.INT_MIN=-1<0)-(e<0)};Bh.abs=function(e){var t=e>>rK-1;return(e^t)-t};Bh.min=function(e,t){return t^(e^t)&-(e65535)<<4,e>>>=t,r=(e>255)<<3,e>>>=r,t|=r,r=(e>15)<<2,e>>>=r,t|=r,r=(e>3)<<1,e>>>=r,t|=r,t|e>>1};Bh.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0};Bh.popCount=function(e){return e=e-(e>>>1&1431655765),e=(e&858993459)+(e>>>2&858993459),(e+(e>>>4)&252645135)*16843009>>>24};function jqe(e){var t=32;return e&=-e,e&&t--,e&65535&&(t-=16),e&16711935&&(t-=8),e&252645135&&(t-=4),e&858993459&&(t-=2),e&1431655765&&(t-=1),t}Bh.countTrailingZeros=jqe;Bh.nextPow2=function(e){return e+=e===0,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e+1};Bh.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e-(e>>>1)};Bh.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,e&=15,27030>>>e&1};var Mk=new Array(256);(function(e){for(var t=0;t<256;++t){var r=t,n=t,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=r&1,--i;e[t]=n<>>8&255]<<16|Mk[e>>>16&255]<<8|Mk[e>>>24&255]};Bh.interleave2=function(e,t){return e&=65535,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t&=65535,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1};Bh.deinterleave2=function(e,t){return e=e>>>t&1431655765,e=(e|e>>>1)&858993459,e=(e|e>>>2)&252645135,e=(e|e>>>4)&16711935,e=(e|e>>>16)&65535,e<<16>>16};Bh.interleave3=function(e,t,r){return e&=1023,e=(e|e<<16)&4278190335,e=(e|e<<8)&251719695,e=(e|e<<4)&3272356035,e=(e|e<<2)&1227133513,t&=1023,t=(t|t<<16)&4278190335,t=(t|t<<8)&251719695,t=(t|t<<4)&3272356035,t=(t|t<<2)&1227133513,e|=t<<1,r&=1023,r=(r|r<<16)&4278190335,r=(r|r<<8)&251719695,r=(r|r<<4)&3272356035,r=(r|r<<2)&1227133513,e|r<<2};Bh.deinterleave3=function(e,t){return e=e>>>t&1227133513,e=(e|e>>>2)&3272356035,e=(e|e>>>4)&251719695,e=(e|e>>>8)&4278190335,e=(e|e>>>16)&1023,e<<22>>22};Bh.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>jqe(e)+1}});var Zqe=ye((a_r,Xqe)=>{"use strict";function Wqe(e,t,r){var n=e[r]|0;if(n<=0)return[];var i=new Array(n),a;if(r===e.length-1)for(a=0;a0)return cUt(e|0,t);break;case"object":if(typeof e.length=="number")return Wqe(e,t,0);break}return[]}Xqe.exports=fUt});var uBe=ye(mu=>{"use strict";var fx=iK(),Ev=Zqe(),Yqe=c2().Buffer;window.__TYPEDARRAY_POOL||(window.__TYPEDARRAY_POOL={UINT8:Ev([32,0]),UINT16:Ev([32,0]),UINT32:Ev([32,0]),BIGUINT64:Ev([32,0]),INT8:Ev([32,0]),INT16:Ev([32,0]),INT32:Ev([32,0]),BIGINT64:Ev([32,0]),FLOAT:Ev([32,0]),DOUBLE:Ev([32,0]),DATA:Ev([32,0]),UINT8C:Ev([32,0]),BUFFER:Ev([32,0])});var hUt=typeof Uint8ClampedArray!="undefined",dUt=typeof BigUint64Array!="undefined",vUt=typeof BigInt64Array!="undefined",nd=window.__TYPEDARRAY_POOL;nd.UINT8C||(nd.UINT8C=Ev([32,0]));nd.BIGUINT64||(nd.BIGUINT64=Ev([32,0]));nd.BIGINT64||(nd.BIGINT64=Ev([32,0]));nd.BUFFER||(nd.BUFFER=Ev([32,0]));var yz=nd.DATA,_z=nd.BUFFER;mu.free=function(t){if(Yqe.isBuffer(t))_z[fx.log2(t.length)].push(t);else{if(Object.prototype.toString.call(t)!=="[object ArrayBuffer]"&&(t=t.buffer),!t)return;var r=t.length||t.byteLength,n=fx.log2(r)|0;yz[n].push(t)}};function Kqe(e){if(e){var t=e.length||e.byteLength,r=fx.log2(t);yz[r].push(e)}}function pUt(e){Kqe(e.buffer)}mu.freeUint8=mu.freeUint16=mu.freeUint32=mu.freeBigUint64=mu.freeInt8=mu.freeInt16=mu.freeInt32=mu.freeBigInt64=mu.freeFloat32=mu.freeFloat=mu.freeFloat64=mu.freeDouble=mu.freeUint8Clamped=mu.freeDataView=pUt;mu.freeArrayBuffer=Kqe;mu.freeBuffer=function(t){_z[fx.log2(t.length)].push(t)};mu.malloc=function(t,r){if(r===void 0||r==="arraybuffer")return Bp(t);switch(r){case"uint8":return nK(t);case"uint16":return Jqe(t);case"uint32":return $qe(t);case"int8":return Qqe(t);case"int16":return eBe(t);case"int32":return tBe(t);case"float":case"float32":return rBe(t);case"double":case"float64":return iBe(t);case"uint8_clamped":return nBe(t);case"bigint64":return oBe(t);case"biguint64":return aBe(t);case"buffer":return lBe(t);case"data":case"dataview":return sBe(t);default:return null}return null};function Bp(t){var t=fx.nextPow2(t),r=fx.log2(t),n=yz[r];return n.length>0?n.pop():new ArrayBuffer(t)}mu.mallocArrayBuffer=Bp;function nK(e){return new Uint8Array(Bp(e),0,e)}mu.mallocUint8=nK;function Jqe(e){return new Uint16Array(Bp(2*e),0,e)}mu.mallocUint16=Jqe;function $qe(e){return new Uint32Array(Bp(4*e),0,e)}mu.mallocUint32=$qe;function Qqe(e){return new Int8Array(Bp(e),0,e)}mu.mallocInt8=Qqe;function eBe(e){return new Int16Array(Bp(2*e),0,e)}mu.mallocInt16=eBe;function tBe(e){return new Int32Array(Bp(4*e),0,e)}mu.mallocInt32=tBe;function rBe(e){return new Float32Array(Bp(4*e),0,e)}mu.mallocFloat32=mu.mallocFloat=rBe;function iBe(e){return new Float64Array(Bp(8*e),0,e)}mu.mallocFloat64=mu.mallocDouble=iBe;function nBe(e){return hUt?new Uint8ClampedArray(Bp(e),0,e):nK(e)}mu.mallocUint8Clamped=nBe;function aBe(e){return dUt?new BigUint64Array(Bp(8*e),0,e):null}mu.mallocBigUint64=aBe;function oBe(e){return vUt?new BigInt64Array(Bp(8*e),0,e):null}mu.mallocBigInt64=oBe;function sBe(e){return new DataView(Bp(e),0,e)}mu.mallocDataView=sBe;function lBe(e){e=fx.nextPow2(e);var t=fx.log2(e),r=_z[t];return r.length>0?r.pop():new Yqe(e)}mu.mallocBuffer=lBe;mu.clearCache=function(){for(var t=0;t<32;++t)nd.UINT8[t].length=0,nd.UINT16[t].length=0,nd.UINT32[t].length=0,nd.INT8[t].length=0,nd.INT16[t].length=0,nd.INT32[t].length=0,nd.FLOAT[t].length=0,nd.DOUBLE[t].length=0,nd.BIGUINT64[t].length=0,nd.BIGINT64[t].length=0,nd.UINT8C[t].length=0,yz[t].length=0,_z[t].length=0}});var fBe=ye((s_r,cBe)=>{"use strict";var gUt=Object.prototype.toString;cBe.exports=function(e){var t;return gUt.call(e)==="[object Object]"&&(t=Object.getPrototypeOf(e),t===null||t===Object.getPrototypeOf({}))}});var aK=ye((l_r,hBe)=>{hBe.exports=function(t,r){r||(r=[0,""]),t=String(t);var n=parseFloat(t,10);return r[0]=n,r[1]=t.match(/[\d.\-\+]*\s*(.*)/)[1]||"",r}});var pBe=ye((u_r,vBe)=>{"use strict";var mUt=aK();vBe.exports=dBe;var Ek=96;function oK(e,t){var r=mUt(getComputedStyle(e).getPropertyValue(t));return r[0]*dBe(r[1],e)}function yUt(e,t){var r=document.createElement("div");r.style["font-size"]="128"+e,t.appendChild(r);var n=oK(r,"font-size")/128;return t.removeChild(r),n}function dBe(e,t){switch(t=t||document.body,e=(e||"px").trim().toLowerCase(),(t===window||t===document)&&(t=document.body),e){case"%":return t.clientHeight/100;case"ch":case"ex":return yUt(e,t);case"em":return oK(t,"font-size");case"rem":return oK(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return Ek;case"cm":return Ek/2.54;case"mm":return Ek/25.4;case"pt":return Ek/72;case"pc":return Ek/6}return 1}});var yBe=ye((c_r,mBe)=>{"use strict";mBe.exports=wz;var _Ut=wz.canvas=document.createElement("canvas"),xz=_Ut.getContext("2d"),gBe=bz([32,126]);wz.createPairs=bz;wz.ascii=gBe;function wz(e,t){Array.isArray(e)&&(e=e.join(", "));var r={},n,i=16,a=.05;t&&(t.length===2&&typeof t[0]=="number"?n=bz(t):Array.isArray(t)?n=t:(t.o?n=bz(t.o):t.pairs&&(n=t.pairs),t.fontSize&&(i=t.fontSize),t.threshold!=null&&(a=t.threshold))),n||(n=gBe),xz.font=i+"px "+e;for(var o=0;oi*a){var c=(u-l)/i;r[s]=c*1e3}}return r}function bz(e){for(var t=[],r=e[0];r<=e[1];r++)for(var n=String.fromCharCode(r),i=e[0];i{"use strict";bBe.exports=hx;hx.canvas=document.createElement("canvas");hx.cache={};function hx(o,t){t||(t={}),(typeof o=="string"||Array.isArray(o))&&(t.family=o);var r=Array.isArray(t.family)?t.family.join(", "):t.family;if(!r)throw Error("`family` must be defined");var n=t.size||t.fontSize||t.em||48,i=t.weight||t.fontWeight||"",a=t.style||t.fontStyle||"",o=[a,i,n].join(" ")+"px "+r,s=t.origin||"top";if(hx.cache[r]&&n<=hx.cache[r].em)return _Be(hx.cache[r],s);var l=t.canvas||hx.canvas,u=l.getContext("2d"),c={upper:t.upper!==void 0?t.upper:"H",lower:t.lower!==void 0?t.lower:"x",descent:t.descent!==void 0?t.descent:"p",ascent:t.ascent!==void 0?t.ascent:"h",tittle:t.tittle!==void 0?t.tittle:"i",overshoot:t.overshoot!==void 0?t.overshoot:"O"},f=Math.ceil(n*1.5);l.height=f,l.width=f*.5,u.font=o;var h="H",d={top:0};u.clearRect(0,0,f,f),u.textBaseline="top",u.fillStyle="black",u.fillText(h,0,0);var v=Km(u.getImageData(0,0,f,f));u.clearRect(0,0,f,f),u.textBaseline="bottom",u.fillText(h,0,f);var _=Km(u.getImageData(0,0,f,f));d.lineHeight=d.bottom=f-_+v,u.clearRect(0,0,f,f),u.textBaseline="alphabetic",u.fillText(h,0,f);var b=Km(u.getImageData(0,0,f,f)),p=f-b-1+v;d.baseline=d.alphabetic=p,u.clearRect(0,0,f,f),u.textBaseline="middle",u.fillText(h,0,f*.5);var k=Km(u.getImageData(0,0,f,f));d.median=d.middle=f-k-1+v-f*.5,u.clearRect(0,0,f,f),u.textBaseline="hanging",u.fillText(h,0,f*.5);var E=Km(u.getImageData(0,0,f,f));d.hanging=f-E-1+v-f*.5,u.clearRect(0,0,f,f),u.textBaseline="ideographic",u.fillText(h,0,f);var S=Km(u.getImageData(0,0,f,f));if(d.ideographic=f-S-1+v,c.upper&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.upper,0,0),d.upper=Km(u.getImageData(0,0,f,f)),d.capHeight=d.baseline-d.upper),c.lower&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.lower,0,0),d.lower=Km(u.getImageData(0,0,f,f)),d.xHeight=d.baseline-d.lower),c.tittle&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.tittle,0,0),d.tittle=Km(u.getImageData(0,0,f,f))),c.ascent&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.ascent,0,0),d.ascent=Km(u.getImageData(0,0,f,f))),c.descent&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.descent,0,0),d.descent=xBe(u.getImageData(0,0,f,f))),c.overshoot){u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.overshoot,0,0);var L=xBe(u.getImageData(0,0,f,f));d.overshoot=L-p}for(var x in d)d[x]/=n;return d.em=n,hx.cache[r]=d,_Be(d,s)}function _Be(e,t){var r={};typeof t=="string"&&(t=e[t]);for(var n in e)n!=="em"&&(r[n]=e[n]-t);return r}function Km(e){for(var t=e.height,r=e.data,n=3;n0;n-=4)if(r[n]!==0)return Math.floor((n-3)*.25/t)}});var MBe=ye((h_r,SBe)=>{"use strict";var v5=zqe(),xUt=Zm(),bUt=Oqe(),wUt=Vqe(),TUt=BY(),sK=J_(),AUt=Hqe(),dx=uBe(),SUt=r5(),MUt=fBe(),EUt=aK(),kUt=pBe(),CUt=yBe(),LUt=Oh(),PUt=wBe(),IUt=X2(),RUt=iK(),TBe=RUt.nextPow2,ABe=new TUt,Az=!1;document.body&&(Tz=document.body.appendChild(document.createElement("div")),Tz.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(Tz).fontStretch&&(Az=!0),document.body.removeChild(Tz));var Tz,xc=function(t){DUt(t)?(t={regl:t},this.gl=t.regl._gl):this.gl=wUt(t),this.shader=ABe.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=t.regl||bUt({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),ABe.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(MUt(t)?t:{})};xc.prototype.createShader=function(){var t=this.regl,r=t({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:t.prop("count"),offset:t.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:t.this("sizeBuffer")},width:{offset:0,stride:8,buffer:t.this("sizeBuffer")},char:t.this("charBuffer"),position:t.this("position")},uniforms:{atlasSize:function(i,a){return[a.atlas.width,a.atlas.height]},atlasDim:function(i,a){return[a.atlas.cols,a.atlas.rows]},atlas:function(i,a){return a.atlas.texture},charStep:function(i,a){return a.atlas.step},em:function(i,a){return a.atlas.em},color:t.prop("color"),opacity:t.prop("opacity"),viewport:t.this("viewportArray"),scale:t.this("scale"),align:t.prop("align"),baseline:t.prop("baseline"),translate:t.this("translate"),positionOffset:t.prop("positionOffset")},primitive:"points",viewport:t.this("viewport"),vert:` +`),Yr;if(bt&&(Yr=Oc(Mr),bt[Yr]))return bt[Yr].apply(null,jr);var xi=Function.apply(null,Rr.concat(Mr));return bt&&(bt[Yr]=xi),xi.apply(null,jr)}return{global:Ei,link:Gr,block:mi,proc:en,scope:Ui,cond:qi,compile:Wi}}var Ca="xyzw".split(""),Ra=5121,La=1,Na=2,Yn=0,Dn=1,Ka=2,bo=3,Xo=4,Ss=5,as=6,ws="dither",Ho="blend.enable",ml="blend.color",Ws="blend.equation",Ls="blend.func",va="depth.enable",no="depth.func",ys="depth.range",rs="depth.mask",$l="colorMask",Cu="cull.enable",Yu="cull.face",Nc="frontFace",pu="lineWidth",Uc="polygonOffset.enable",xu="polygonOffset.offset",Ac="sample.alpha",Ua="sample.enable",oo="sample.coverage",Vc="stencil.enable",hc="stencil.mask",Ku="stencil.func",ue="stencil.opFront",w="stencil.opBack",B="scissor.enable",Q="scissor.box",ee="viewport",le="profile",qe="framebuffer",Xe="vert",ot="frag",Tt="elements",Yt="primitive",Kt="count",xr="offset",Ir="instances",ve="vao",be="Width",De="Height",Be=qe+be,et=qe+De,We=ee+be,it=ee+De,Ft="drawingBuffer",Ht=Ft+be,tr=Ft+De,dr=[Ls,Ws,Ku,ue,w,oo,ee,Q,xu],Sr=34962,Or=34963,Wr=2884,ni=3042,Pi=3024,cn=2960,ln=2929,Cn=3089,Kn=32823,Ta=32926,fa=32928,$a=5126,Co=35664,Qa=35665,mo=35666,Bo=5124,Ps=35667,Ts=35668,wo=35669,To=35670,hl=35671,Ul=35672,Lu=35673,au=35674,Js=35675,Ql=35676,dc=35678,Tl=35680,Al=4,X=1028,se=1029,Te=2304,Ne=2305,He=32775,Ye=32776,kt=519,nt=7680,jt=0,gr=1,yr=32774,Hr=513,qr=36160,_i=36064,bi={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Zr={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},ai={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},gi={cw:Te,ccw:Ne};function Ii(Me){return Array.isArray(Me)||Br(Me)||Vr(Me)}function Si(Me){return Me.sort(function(bt,zt){return bt===ee?-1:zt===ee?1:bt=1,Rr>=2,bt)}else if(zt===Xo){var jr=Me.data;return new ei(jr.thisDep,jr.contextDep,jr.propDep,bt)}else{if(zt===Ss)return new ei(!1,!1,!1,bt);if(zt===as){for(var Nr=!1,Gr=!1,mi=!1,Ui=0;Ui=1&&(Gr=!0),Ei>=2&&(mi=!0)}else qi.type===Xo&&(Nr=Nr||qi.data.thisDep,Gr=Gr||qi.data.contextDep,mi=mi||qi.data.propDep)}return new ei(Nr,Gr,mi,bt)}else return new ei(zt===bo,zt===Ka,zt===Dn,bt)}}var ia=new ei(!1,!1,!1,function(){});function Ea(Me,bt,zt,Rr,jr,Nr,Gr,mi,Ui,qi,Ei,Hn,en,Wi,si,Mr){var Yr=qi.Record,xi={add:32774,subtract:32778,"reverse subtract":32779};zt.ext_blend_minmax&&(xi.min=He,xi.max=Ye);var Ri=zt.angle_instanced_arrays,ci=zt.webgl_draw_buffers,an=zt.oes_vertex_array_object,Zi={dirty:!0,profile:Mr.profile},Bn={},hi=[],li={},mn={};function Ji(Ve){return Ve.replace(".","_")}function Vi(Ve,Qe,at){var Ct=Ji(Ve);hi.push(Ve),Bn[Ct]=Zi[Ct]=!!at,li[Ct]=Qe}function Ni(Ve,Qe,at){var Ct=Ji(Ve);hi.push(Ve),Array.isArray(at)?(Zi[Ct]=at.slice(),Bn[Ct]=at.slice()):Zi[Ct]=Bn[Ct]=at,mn[Ct]=Qe}function pn(Ve){return!!isNaN(Ve)}Vi(ws,Pi),Vi(Ho,ni),Ni(ml,"blendColor",[0,0,0,0]),Ni(Ws,"blendEquationSeparate",[yr,yr]),Ni(Ls,"blendFuncSeparate",[gr,jt,gr,jt]),Vi(va,ln,!0),Ni(no,"depthFunc",Hr),Ni(ys,"depthRange",[0,1]),Ni(rs,"depthMask",!0),Ni($l,$l,[!0,!0,!0,!0]),Vi(Cu,Wr),Ni(Yu,"cullFace",se),Ni(Nc,Nc,Ne),Ni(pu,pu,1),Vi(Uc,Kn),Ni(xu,"polygonOffset",[0,0]),Vi(Ac,Ta),Vi(Ua,fa),Ni(oo,"sampleCoverage",[1,!1]),Vi(Vc,cn),Ni(hc,"stencilMask",-1),Ni(Ku,"stencilFunc",[kt,0,-1]),Ni(ue,"stencilOpSeparate",[X,nt,nt,nt]),Ni(w,"stencilOpSeparate",[se,nt,nt,nt]),Vi(B,Cn),Ni(Q,"scissor",[0,0,Me.drawingBufferWidth,Me.drawingBufferHeight]),Ni(ee,ee,[0,0,Me.drawingBufferWidth,Me.drawingBufferHeight]);var Vn={gl:Me,context:en,strings:bt,next:Bn,current:Zi,draw:Hn,elements:Nr,buffer:jr,shader:Ei,attributes:qi.state,vao:qi,uniforms:Ui,framebuffer:mi,extensions:zt,timer:Wi,isBufferArgs:Ii},na={primTypes:Sn,compareFuncs:Zr,blendFuncs:bi,blendEquations:xi,stencilOps:ai,glTypes:ji,orientationType:gi};ci&&(na.backBuffer=[se],na.drawBuffer=M(Rr.maxDrawbuffers,function(Ve){return Ve===0?[0]:M(Ve,function(Qe){return _i+Qe})}));var Ki=0;function kn(){var Ve=$n({cache:si}),Qe=Ve.link,at=Ve.global;Ve.id=Ki++,Ve.batchId="0";var Ct=Qe(Vn),Ot=Ve.shared={props:"a0"};Object.keys(Vn).forEach(function(Pt){Ot[Pt]=at.def(Ct,".",Pt)});var Rt=Ve.next={},Bt=Ve.current={};Object.keys(mn).forEach(function(Pt){Array.isArray(Zi[Pt])&&(Rt[Pt]=at.def(Ot.next,".",Pt),Bt[Pt]=at.def(Ot.current,".",Pt))});var Dt=Ve.constants={};Object.keys(na).forEach(function(Pt){Dt[Pt]=at.def(JSON.stringify(na[Pt]))}),Ve.invoke=function(Pt,ht){switch(ht.type){case Yn:var ur=["this",Ot.context,Ot.props,Ve.batchId];return Pt.def(Qe(ht.data),".call(",ur.slice(0,Math.max(ht.data.length+1,4)),")");case Dn:return Pt.def(Ot.props,ht.data);case Ka:return Pt.def(Ot.context,ht.data);case bo:return Pt.def("this",ht.data);case Xo:return ht.data.append(Ve,Pt),ht.data.ref;case Ss:return ht.data.toString();case as:return ht.data.map(function(br){return Ve.invoke(Pt,br)})}},Ve.attribCache={};var yt={};return Ve.scopeAttrib=function(Pt){var ht=bt.id(Pt);if(ht in yt)return yt[ht];var ur=qi.scope[ht];ur||(ur=qi.scope[ht]=new Yr);var br=yt[ht]=Qe(ur);return br},Ve}function ta(Ve){var Qe=Ve.static,at=Ve.dynamic,Ct;if(le in Qe){var Ot=!!Qe[le];Ct=En(function(Bt,Dt){return Ot}),Ct.enable=Ot}else if(le in at){var Rt=at[le];Ct=Un(Rt,function(Bt,Dt){return Bt.invoke(Dt,Rt)})}return Ct}function oa(Ve,Qe){var at=Ve.static,Ct=Ve.dynamic;if(qe in at){var Ot=at[qe];return Ot?(Ot=mi.getFramebuffer(Ot),En(function(Bt,Dt){var yt=Bt.link(Ot),Pt=Bt.shared;Dt.set(Pt.framebuffer,".next",yt);var ht=Pt.context;return Dt.set(ht,"."+Be,yt+".width"),Dt.set(ht,"."+et,yt+".height"),yt})):En(function(Bt,Dt){var yt=Bt.shared;Dt.set(yt.framebuffer,".next","null");var Pt=yt.context;return Dt.set(Pt,"."+Be,Pt+"."+Ht),Dt.set(Pt,"."+et,Pt+"."+tr),"null"})}else if(qe in Ct){var Rt=Ct[qe];return Un(Rt,function(Bt,Dt){var yt=Bt.invoke(Dt,Rt),Pt=Bt.shared,ht=Pt.framebuffer,ur=Dt.def(ht,".getFramebuffer(",yt,")");Dt.set(ht,".next",ur);var br=Pt.context;return Dt.set(br,"."+Be,ur+"?"+ur+".width:"+br+"."+Ht),Dt.set(br,"."+et,ur+"?"+ur+".height:"+br+"."+tr),ur})}else return null}function ba(Ve,Qe,at){var Ct=Ve.static,Ot=Ve.dynamic;function Rt(yt){if(yt in Ct){var Pt=Ct[yt],ht=!0,ur=Pt.x|0,br=Pt.y|0,Ur,Di;return"width"in Pt?Ur=Pt.width|0:ht=!1,"height"in Pt?Di=Pt.height|0:ht=!1,new ei(!ht&&Qe&&Qe.thisDep,!ht&&Qe&&Qe.contextDep,!ht&&Qe&&Qe.propDep,function(gn,rn){var Ci=gn.shared.context,Bi=Ur;"width"in Pt||(Bi=rn.def(Ci,".",Be,"-",ur));var Gi=Di;return"height"in Pt||(Gi=rn.def(Ci,".",et,"-",br)),[ur,br,Bi,Gi]})}else if(yt in Ot){var fi=Ot[yt],Ti=Un(fi,function(gn,rn){var Ci=gn.invoke(rn,fi),Bi=gn.shared.context,Gi=rn.def(Ci,".x|0"),sn=rn.def(Ci,".y|0"),zn=rn.def('"width" in ',Ci,"?",Ci,".width|0:","(",Bi,".",Be,"-",Gi,")"),Ja=rn.def('"height" in ',Ci,"?",Ci,".height|0:","(",Bi,".",et,"-",sn,")");return[Gi,sn,zn,Ja]});return Qe&&(Ti.thisDep=Ti.thisDep||Qe.thisDep,Ti.contextDep=Ti.contextDep||Qe.contextDep,Ti.propDep=Ti.propDep||Qe.propDep),Ti}else return Qe?new ei(Qe.thisDep,Qe.contextDep,Qe.propDep,function(gn,rn){var Ci=gn.shared.context;return[0,0,rn.def(Ci,".",Be),rn.def(Ci,".",et)]}):null}var Bt=Rt(ee);if(Bt){var Dt=Bt;Bt=new ei(Bt.thisDep,Bt.contextDep,Bt.propDep,function(yt,Pt){var ht=Dt.append(yt,Pt),ur=yt.shared.context;return Pt.set(ur,"."+We,ht[2]),Pt.set(ur,"."+it,ht[3]),ht})}return{viewport:Bt,scissor_box:Rt(Q)}}function is(Ve,Qe){var at=Ve.static,Ct=typeof at[ot]=="string"&&typeof at[Xe]=="string";if(Ct){if(Object.keys(Qe.dynamic).length>0)return null;var Ot=Qe.static,Rt=Object.keys(Ot);if(Rt.length>0&&typeof Ot[Rt[0]]=="number"){for(var Bt=[],Dt=0;Dt"+Gi+"?"+ht+".constant["+Gi+"]:0;"}).join(""),"}}else{","if(",Ur,"(",ht,".buffer)){",gn,"=",Di,".createStream(",Sr,",",ht,".buffer);","}else{",gn,"=",Di,".getBuffer(",ht,".buffer);","}",rn,'="type" in ',ht,"?",br.glTypes,"[",ht,".type]:",gn,".dtype;",fi.normalized,"=!!",ht,".normalized;");function Ci(Bi){Pt(fi[Bi],"=",ht,".",Bi,"|0;")}return Ci("size"),Ci("offset"),Ci("stride"),Ci("divisor"),Pt("}}"),Pt.exit("if(",fi.isStream,"){",Di,".destroyStream(",gn,");","}"),fi}Ot[Rt]=Un(Bt,Dt)}),Ot}function al(Ve){var Qe=Ve.static,at=Ve.dynamic,Ct={};return Object.keys(Qe).forEach(function(Ot){var Rt=Qe[Ot];Ct[Ot]=En(function(Bt,Dt){return typeof Rt=="number"||typeof Rt=="boolean"?""+Rt:Bt.link(Rt)})}),Object.keys(at).forEach(function(Ot){var Rt=at[Ot];Ct[Ot]=Un(Rt,function(Bt,Dt){return Bt.invoke(Dt,Rt)})}),Ct}function Vl(Ve,Qe,at,Ct,Ot){var Rt=Ve.static,Bt=Ve.dynamic,Dt=is(Ve,Qe),yt=oa(Ve,Ot),Pt=ba(Ve,yt,Ot),ht=Va(Ve,Ot),ur=Ml(Ve,Ot),br=Zs(Ve,Ot,Dt);function Ur(Ci){var Bi=Pt[Ci];Bi&&(ur[Ci]=Bi)}Ur(ee),Ur(Ji(Q));var Di=Object.keys(ur).length>0,fi={framebuffer:yt,draw:ht,shader:br,state:ur,dirty:Di,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(fi.profile=ta(Ve,Ot),fi.uniforms=zo(at,Ot),fi.drawVAO=fi.scopeVAO=ht.vao,!fi.drawVAO&&br.program&&!Dt&&zt.angle_instanced_arrays&&ht.static.elements){var Ti=!0,gn=br.program.attributes.map(function(Ci){var Bi=Qe.static[Ci];return Ti=Ti&&!!Bi,Bi});if(Ti&&gn.length>0){var rn=qi.getVAO(qi.createVAO({attributes:gn,elements:ht.static.elements}));fi.drawVAO=new ei(null,null,null,function(Ci,Bi){return Ci.link(rn)}),fi.useVAO=!0}}return Dt?fi.useVAO=!0:fi.attributes=Qs(Qe,Ot),fi.context=al(Ct,Ot),fi}function ss(Ve,Qe,at){var Ct=Ve.shared,Ot=Ct.context,Rt=Ve.scope();Object.keys(at).forEach(function(Bt){Qe.save(Ot,"."+Bt);var Dt=at[Bt],yt=Dt.append(Ve,Qe);Array.isArray(yt)?Rt(Ot,".",Bt,"=[",yt.join(),"];"):Rt(Ot,".",Bt,"=",yt,";")}),Qe(Rt)}function Vs(Ve,Qe,at,Ct){var Ot=Ve.shared,Rt=Ot.gl,Bt=Ot.framebuffer,Dt;ci&&(Dt=Qe.def(Ot.extensions,".webgl_draw_buffers"));var yt=Ve.constants,Pt=yt.drawBuffer,ht=yt.backBuffer,ur;at?ur=at.append(Ve,Qe):ur=Qe.def(Bt,".next"),Ct||Qe("if(",ur,"!==",Bt,".cur){"),Qe("if(",ur,"){",Rt,".bindFramebuffer(",qr,",",ur,".framebuffer);"),ci&&Qe(Dt,".drawBuffersWEBGL(",Pt,"[",ur,".colorAttachments.length]);"),Qe("}else{",Rt,".bindFramebuffer(",qr,",null);"),ci&&Qe(Dt,".drawBuffersWEBGL(",ht,");"),Qe("}",Bt,".cur=",ur,";"),Ct||Qe("}")}function Ys(Ve,Qe,at){var Ct=Ve.shared,Ot=Ct.gl,Rt=Ve.current,Bt=Ve.next,Dt=Ct.current,yt=Ct.next,Pt=Ve.cond(Dt,".dirty");hi.forEach(function(ht){var ur=Ji(ht);if(!(ur in at.state)){var br,Ur;if(ur in Bt){br=Bt[ur],Ur=Rt[ur];var Di=M(Zi[ur].length,function(Ti){return Pt.def(br,"[",Ti,"]")});Pt(Ve.cond(Di.map(function(Ti,gn){return Ti+"!=="+Ur+"["+gn+"]"}).join("||")).then(Ot,".",mn[ur],"(",Di,");",Di.map(function(Ti,gn){return Ur+"["+gn+"]="+Ti}).join(";"),";"))}else{br=Pt.def(yt,".",ur);var fi=Ve.cond(br,"!==",Dt,".",ur);Pt(fi),ur in li?fi(Ve.cond(br).then(Ot,".enable(",li[ur],");").else(Ot,".disable(",li[ur],");"),Dt,".",ur,"=",br,";"):fi(Ot,".",mn[ur],"(",br,");",Dt,".",ur,"=",br,";")}}}),Object.keys(at.state).length===0&&Pt(Dt,".dirty=false;"),Qe(Pt)}function wa(Ve,Qe,at,Ct){var Ot=Ve.shared,Rt=Ve.current,Bt=Ot.current,Dt=Ot.gl,yt;Si(Object.keys(at)).forEach(function(Pt){var ht=at[Pt];if(!(Ct&&!Ct(ht))){var ur=ht.append(Ve,Qe);if(li[Pt]){var br=li[Pt];Ln(ht)?(yt=Ve.link(ur,{stable:!0}),Qe(Ve.cond(yt).then(Dt,".enable(",br,");").else(Dt,".disable(",br,");")),Qe(Bt,".",Pt,"=",yt,";")):(Qe(Ve.cond(ur).then(Dt,".enable(",br,");").else(Dt,".disable(",br,");")),Qe(Bt,".",Pt,"=",ur,";"))}else if(Mn(ur)){var Ur=Rt[Pt];Qe(Dt,".",mn[Pt],"(",ur,");",ur.map(function(Di,fi){return Ur+"["+fi+"]="+Di}).join(";"),";")}else Ln(ht)?(yt=Ve.link(ur,{stable:!0}),Qe(Dt,".",mn[Pt],"(",yt,");",Bt,".",Pt,"=",yt,";")):Qe(Dt,".",mn[Pt],"(",ur,");",Bt,".",Pt,"=",ur,";")}})}function ol(Ve,Qe){Ri&&(Ve.instancing=Qe.def(Ve.shared.extensions,".angle_instanced_arrays"))}function io(Ve,Qe,at,Ct,Ot){var Rt=Ve.shared,Bt=Ve.stats,Dt=Rt.current,yt=Rt.timer,Pt=at.profile;function ht(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var ur,br;function Ur(Ci){ur=Qe.def(),Ci(ur,"=",ht(),";"),typeof Ot=="string"?Ci(Bt,".count+=",Ot,";"):Ci(Bt,".count++;"),Wi&&(Ct?(br=Qe.def(),Ci(br,"=",yt,".getNumPendingQueries();")):Ci(yt,".beginQuery(",Bt,");"))}function Di(Ci){Ci(Bt,".cpuTime+=",ht(),"-",ur,";"),Wi&&(Ct?Ci(yt,".pushScopeStats(",br,",",yt,".getNumPendingQueries(),",Bt,");"):Ci(yt,".endQuery();"))}function fi(Ci){var Bi=Qe.def(Dt,".profile");Qe(Dt,".profile=",Ci,";"),Qe.exit(Dt,".profile=",Bi,";")}var Ti;if(Pt){if(Ln(Pt)){Pt.enable?(Ur(Qe),Di(Qe.exit),fi("true")):fi("false");return}Ti=Pt.append(Ve,Qe),fi(Ti)}else Ti=Qe.def(Dt,".profile");var gn=Ve.block();Ur(gn),Qe("if(",Ti,"){",gn,"}");var rn=Ve.block();Di(rn),Qe.exit("if(",Ti,"){",rn,"}")}function Y(Ve,Qe,at,Ct,Ot){var Rt=Ve.shared;function Bt(yt){switch(yt){case Co:case Ps:case hl:return 2;case Qa:case Ts:case Ul:return 3;case mo:case wo:case Lu:return 4;default:return 1}}function Dt(yt,Pt,ht){var ur=Rt.gl,br=Qe.def(yt,".location"),Ur=Qe.def(Rt.attributes,"[",br,"]"),Di=ht.state,fi=ht.buffer,Ti=[ht.x,ht.y,ht.z,ht.w],gn=["buffer","normalized","offset","stride"];function rn(){Qe("if(!",Ur,".buffer){",ur,".enableVertexAttribArray(",br,");}");var Bi=ht.type,Gi;if(ht.size?Gi=Qe.def(ht.size,"||",Pt):Gi=Pt,Qe("if(",Ur,".type!==",Bi,"||",Ur,".size!==",Gi,"||",gn.map(function(zn){return Ur+"."+zn+"!=="+ht[zn]}).join("||"),"){",ur,".bindBuffer(",Sr,",",fi,".buffer);",ur,".vertexAttribPointer(",[br,Gi,Bi,ht.normalized,ht.stride,ht.offset],");",Ur,".type=",Bi,";",Ur,".size=",Gi,";",gn.map(function(zn){return Ur+"."+zn+"="+ht[zn]+";"}).join(""),"}"),Ri){var sn=ht.divisor;Qe("if(",Ur,".divisor!==",sn,"){",Ve.instancing,".vertexAttribDivisorANGLE(",[br,sn],");",Ur,".divisor=",sn,";}")}}function Ci(){Qe("if(",Ur,".buffer){",ur,".disableVertexAttribArray(",br,");",Ur,".buffer=null;","}if(",Ca.map(function(Bi,Gi){return Ur+"."+Bi+"!=="+Ti[Gi]}).join("||"),"){",ur,".vertexAttrib4f(",br,",",Ti,");",Ca.map(function(Bi,Gi){return Ur+"."+Bi+"="+Ti[Gi]+";"}).join(""),"}")}Di===La?rn():Di===Na?Ci():(Qe("if(",Di,"===",La,"){"),rn(),Qe("}else{"),Ci(),Qe("}"))}Ct.forEach(function(yt){var Pt=yt.name,ht=at.attributes[Pt],ur;if(ht){if(!Ot(ht))return;ur=ht.append(Ve,Qe)}else{if(!Ot(ia))return;var br=Ve.scopeAttrib(Pt);ur={},Object.keys(new Yr).forEach(function(Ur){ur[Ur]=Qe.def(br,".",Ur)})}Dt(Ve.link(yt),Bt(yt.info.type),ur)})}function D(Ve,Qe,at,Ct,Ot,Rt){for(var Bt=Ve.shared,Dt=Bt.gl,yt,Pt=0;Pt1){for(var co=[],ts=[],so=0;so>1)",fi],");")}function sn(){at(Ti,".drawArraysInstancedANGLE(",[br,Ur,Di,fi],");")}ht&&ht!=="null"?rn?Gi():(at("if(",ht,"){"),Gi(),at("}else{"),sn(),at("}")):sn()}function Bi(){function Gi(){at(Rt+".drawElements("+[br,Di,gn,Ur+"<<(("+gn+"-"+Ra+")>>1)"]+");")}function sn(){at(Rt+".drawArrays("+[br,Ur,Di]+");")}ht&&ht!=="null"?rn?Gi():(at("if(",ht,"){"),Gi(),at("}else{"),sn(),at("}")):sn()}Ri&&(typeof fi!="number"||fi>=0)?typeof fi=="string"?(at("if(",fi,">0){"),Ci(),at("}else if(",fi,"<0){"),Bi(),at("}")):Ci():Bi()}function q(Ve,Qe,at,Ct,Ot){var Rt=kn(),Bt=Rt.proc("body",Ot);return Ri&&(Rt.instancing=Bt.def(Rt.shared.extensions,".angle_instanced_arrays")),Ve(Rt,Bt,at,Ct),Rt.compile().body}function K(Ve,Qe,at,Ct){ol(Ve,Qe),at.useVAO?at.drawVAO?Qe(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,Qe),");"):Qe(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(Qe(Ve.shared.vao,".setVAO(null);"),Y(Ve,Qe,at,Ct.attributes,function(){return!0})),D(Ve,Qe,at,Ct.uniforms,function(){return!0},!1),J(Ve,Qe,Qe,at)}function de(Ve,Qe){var at=Ve.proc("draw",1);ol(Ve,at),ss(Ve,at,Qe.context),Vs(Ve,at,Qe.framebuffer),Ys(Ve,at,Qe),wa(Ve,at,Qe.state),io(Ve,at,Qe,!1,!0);var Ct=Qe.shader.progVar.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",Ct,".program);"),Qe.shader.program)K(Ve,at,Qe,Qe.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var Ot=Ve.global.def("{}"),Rt=at.def(Ct,".id"),Bt=at.def(Ot,"[",Rt,"]");at(Ve.cond(Bt).then(Bt,".call(this,a0);").else(Bt,"=",Ot,"[",Rt,"]=",Ve.link(function(Dt){return q(K,Ve,Qe,Dt,1)}),"(",Ct,");",Bt,".call(this,a0);"))}Object.keys(Qe.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ne(Ve,Qe,at,Ct){Ve.batchId="a1",ol(Ve,Qe);function Ot(){return!0}Y(Ve,Qe,at,Ct.attributes,Ot),D(Ve,Qe,at,Ct.uniforms,Ot,!1),J(Ve,Qe,Qe,at)}function we(Ve,Qe,at,Ct){ol(Ve,Qe);var Ot=at.contextDep,Rt=Qe.def(),Bt="a0",Dt="a1",yt=Qe.def();Ve.shared.props=yt,Ve.batchId=Rt;var Pt=Ve.scope(),ht=Ve.scope();Qe(Pt.entry,"for(",Rt,"=0;",Rt,"<",Dt,";++",Rt,"){",yt,"=",Bt,"[",Rt,"];",ht,"}",Pt.exit);function ur(gn){return gn.contextDep&&Ot||gn.propDep}function br(gn){return!ur(gn)}if(at.needsContext&&ss(Ve,ht,at.context),at.needsFramebuffer&&Vs(Ve,ht,at.framebuffer),wa(Ve,ht,at.state,ur),at.profile&&ur(at.profile)&&io(Ve,ht,at,!1,!0),Ct)at.useVAO?at.drawVAO?ur(at.drawVAO)?ht(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,ht),");"):Pt(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,Pt),");"):Pt(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(Pt(Ve.shared.vao,".setVAO(null);"),Y(Ve,Pt,at,Ct.attributes,br),Y(Ve,ht,at,Ct.attributes,ur)),D(Ve,Pt,at,Ct.uniforms,br,!1),D(Ve,ht,at,Ct.uniforms,ur,!0),J(Ve,Pt,ht,at);else{var Ur=Ve.global.def("{}"),Di=at.shader.progVar.append(Ve,ht),fi=ht.def(Di,".id"),Ti=ht.def(Ur,"[",fi,"]");ht(Ve.shared.gl,".useProgram(",Di,".program);","if(!",Ti,"){",Ti,"=",Ur,"[",fi,"]=",Ve.link(function(gn){return q(ne,Ve,at,gn,2)}),"(",Di,");}",Ti,".call(this,a0[",Rt,"],",Rt,");")}}function Ue(Ve,Qe){var at=Ve.proc("batch",2);Ve.batchId="0",ol(Ve,at);var Ct=!1,Ot=!0;Object.keys(Qe.context).forEach(function(Ur){Ct=Ct||Qe.context[Ur].propDep}),Ct||(ss(Ve,at,Qe.context),Ot=!1);var Rt=Qe.framebuffer,Bt=!1;Rt?(Rt.propDep?Ct=Bt=!0:Rt.contextDep&&Ct&&(Bt=!0),Bt||Vs(Ve,at,Rt)):Vs(Ve,at,null),Qe.state.viewport&&Qe.state.viewport.propDep&&(Ct=!0);function Dt(Ur){return Ur.contextDep&&Ct||Ur.propDep}Ys(Ve,at,Qe),wa(Ve,at,Qe.state,function(Ur){return!Dt(Ur)}),(!Qe.profile||!Dt(Qe.profile))&&io(Ve,at,Qe,!1,"a1"),Qe.contextDep=Ct,Qe.needsContext=Ot,Qe.needsFramebuffer=Bt;var yt=Qe.shader.progVar;if(yt.contextDep&&Ct||yt.propDep)we(Ve,at,Qe,null);else{var Pt=yt.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",Pt,".program);"),Qe.shader.program)we(Ve,at,Qe,Qe.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var ht=Ve.global.def("{}"),ur=at.def(Pt,".id"),br=at.def(ht,"[",ur,"]");at(Ve.cond(br).then(br,".call(this,a0,a1);").else(br,"=",ht,"[",ur,"]=",Ve.link(function(Ur){return q(we,Ve,Qe,Ur,2)}),"(",Pt,");",br,".call(this,a0,a1);"))}}Object.keys(Qe.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ft(Ve,Qe){var at=Ve.proc("scope",3);Ve.batchId="a2";var Ct=Ve.shared,Ot=Ct.current;if(ss(Ve,at,Qe.context),Qe.framebuffer&&Qe.framebuffer.append(Ve,at),Si(Object.keys(Qe.state)).forEach(function(Dt){var yt=Qe.state[Dt],Pt=yt.append(Ve,at);Mn(Pt)?Pt.forEach(function(ht,ur){pn(ht)?at.set(Ve.next[Dt],"["+ur+"]",ht):at.set(Ve.next[Dt],"["+ur+"]",Ve.link(ht,{stable:!0}))}):Ln(yt)?at.set(Ct.next,"."+Dt,Ve.link(Pt,{stable:!0})):at.set(Ct.next,"."+Dt,Pt)}),io(Ve,at,Qe,!0,!0),[Tt,xr,Kt,Ir,Yt].forEach(function(Dt){var yt=Qe.draw[Dt];if(yt){var Pt=yt.append(Ve,at);pn(Pt)?at.set(Ct.draw,"."+Dt,Pt):at.set(Ct.draw,"."+Dt,Ve.link(Pt),{stable:!0})}}),Object.keys(Qe.uniforms).forEach(function(Dt){var yt=Qe.uniforms[Dt].append(Ve,at);Array.isArray(yt)&&(yt="["+yt.map(function(Pt){return pn(Pt)?Pt:Ve.link(Pt,{stable:!0})})+"]"),at.set(Ct.uniforms,"["+Ve.link(bt.id(Dt),{stable:!0})+"]",yt)}),Object.keys(Qe.attributes).forEach(function(Dt){var yt=Qe.attributes[Dt].append(Ve,at),Pt=Ve.scopeAttrib(Dt);Object.keys(new Yr).forEach(function(ht){at.set(Pt,"."+ht,yt[ht])})}),Qe.scopeVAO){var Rt=Qe.scopeVAO.append(Ve,at);pn(Rt)?at.set(Ct.vao,".targetVAO",Rt):at.set(Ct.vao,".targetVAO",Ve.link(Rt,{stable:!0}))}function Bt(Dt){var yt=Qe.shader[Dt];if(yt){var Pt=yt.append(Ve,at);pn(Pt)?at.set(Ct.shader,"."+Dt,Pt):at.set(Ct.shader,"."+Dt,Ve.link(Pt,{stable:!0}))}}Bt(Xe),Bt(ot),Object.keys(Qe.state).length>0&&(at(Ot,".dirty=true;"),at.exit(Ot,".dirty=true;")),at("a1(",Ve.shared.context,",a0,",Ve.batchId,");")}function Xt(Ve){if(!(typeof Ve!="object"||Mn(Ve))){for(var Qe=Object.keys(Ve),at=0;at=0;--q){var K=Vn[q];K&&K(si,null,0)}zt.flush(),Ei&&Ei.update()}function ba(){!ta&&Vn.length>0&&(ta=d.next(oa))}function is(){ta&&(d.cancel(oa),ta=null)}function Zs(q){q.preventDefault(),jr=!0,is(),na.forEach(function(K){K()})}function Va(q){zt.getError(),jr=!1,Nr.restore(),Bn.restore(),Ri.restore(),hi.restore(),li.restore(),mn.restore(),an.restore(),Ei&&Ei.restore(),Ji.procs.refresh(),ba(),Ki.forEach(function(K){K()})}pn&&(pn.addEventListener(Fo,Zs,!1),pn.addEventListener(Uo,Va,!1));function Ml(){Vn.length=0,is(),pn&&(pn.removeEventListener(Fo,Zs),pn.removeEventListener(Uo,Va)),Bn.clear(),mn.clear(),li.clear(),an.clear(),hi.clear(),ci.clear(),Ri.clear(),Ei&&Ei.clear(),kn.forEach(function(q){q()})}function zo(q){function K(Rt){var Bt=e({},Rt);delete Bt.uniforms,delete Bt.attributes,delete Bt.context,delete Bt.vao,"stencil"in Bt&&Bt.stencil.op&&(Bt.stencil.opBack=Bt.stencil.opFront=Bt.stencil.op,delete Bt.stencil.op);function Dt(yt){if(yt in Bt){var Pt=Bt[yt];delete Bt[yt],Object.keys(Pt).forEach(function(ht){Bt[yt+"."+ht]=Pt[ht]})}}return Dt("blend"),Dt("depth"),Dt("cull"),Dt("stencil"),Dt("polygonOffset"),Dt("scissor"),Dt("sample"),"vao"in Rt&&(Bt.vao=Rt.vao),Bt}function de(Rt,Bt){var Dt={},yt={};return Object.keys(Rt).forEach(function(Pt){var ht=Rt[Pt];if(h.isDynamic(ht)){yt[Pt]=h.unbox(ht,Pt);return}else if(Bt&&Array.isArray(ht)){for(var ur=0;ur0)return Ve.call(this,Ct(Rt|0),Rt|0)}else if(Array.isArray(Rt)){if(Rt.length)return Ve.call(this,Rt,Rt.length)}else return qt.call(this,Rt)}return e(Ot,{stats:Xt,destroy:function(){hr.destroy()}})}var Qs=mn.setFBO=zo({framebuffer:h.define.call(null,$s,"framebuffer")});function al(q,K){var de=0;Ji.procs.poll();var ne=K.color;ne&&(zt.clearColor(+ne[0]||0,+ne[1]||0,+ne[2]||0,+ne[3]||0),de|=Ms),"depth"in K&&(zt.clearDepth(+K.depth),de|=Xs),"stencil"in K&&(zt.clearStencil(K.stencil|0),de|=Gn),zt.clear(de)}function Vl(q){if("framebuffer"in q)if(q.framebuffer&&q.framebuffer_reglType==="framebufferCube")for(var K=0;K<6;++K)Qs(e({framebuffer:q.framebuffer.faces[K]},q),al);else Qs(q,al);else al(null,q)}function ss(q){Vn.push(q);function K(){var de=dl(Vn,q);function ne(){var we=dl(Vn,ne);Vn[we]=Vn[Vn.length-1],Vn.length-=1,Vn.length<=0&&is()}Vn[de]=ne}return ba(),{cancel:K}}function Vs(){var q=Ni.viewport,K=Ni.scissor_box;q[0]=q[1]=K[0]=K[1]=0,si.viewportWidth=si.framebufferWidth=si.drawingBufferWidth=q[2]=K[2]=zt.drawingBufferWidth,si.viewportHeight=si.framebufferHeight=si.drawingBufferHeight=q[3]=K[3]=zt.drawingBufferHeight}function Ys(){si.tick+=1,si.time=ol(),Vs(),Ji.procs.poll()}function wa(){hi.refresh(),Vs(),Ji.procs.refresh(),Ei&&Ei.update()}function ol(){return(v()-Hn)/1e3}wa();function io(q,K){var de;switch(q){case"frame":return ss(K);case"lost":de=na;break;case"restore":de=Ki;break;case"destroy":de=kn;break;default:}return de.push(K),{cancel:function(){for(var ne=0;ne=0},read:Vi,destroy:Ml,_gl:zt,_refresh:wa,poll:function(){Ys(),Ei&&Ei.update()},now:ol,stats:mi,getCachedCode:Y,preloadCachedCode:D});return bt.onDone(null,J),J}return Sc})});var Gqe=ye((r_r,Vqe)=>{"use strict";var nUt=Zm();Vqe.exports=function(t){if(t?typeof t=="string"&&(t={container:t}):t={},Nqe(t)?t={container:t}:aUt(t)?t={container:t}:oUt(t)?t={gl:t}:t=nUt(t,{container:"container target element el canvas holder parent parentNode wrapper use ref root node",gl:"gl context webgl glContext",attrs:"attributes attrs contextAttributes",pixelRatio:"pixelRatio pxRatio px ratio pxratio pixelratio",width:"w width",height:"h height"},!0),t.pixelRatio||(t.pixelRatio=window.pixelRatio||1),t.gl)return t.gl;if(t.canvas&&(t.container=t.canvas.parentNode),t.container){if(typeof t.container=="string"){var r=document.querySelector(t.container);if(!r)throw Error("Element "+t.container+" is not found");t.container=r}Nqe(t.container)?(t.canvas=t.container,t.container=t.canvas.parentNode):t.canvas||(t.canvas=Uqe(),t.container.appendChild(t.canvas),Bqe(t))}else if(!t.canvas)if(typeof document!="undefined")t.container=document.body||document.documentElement,t.canvas=Uqe(),t.container.appendChild(t.canvas),Bqe(t);else throw Error("Not DOM environment. Use headless-gl.");return t.gl||["webgl","experimental-webgl","webgl-experimental"].some(function(n){try{t.gl=t.canvas.getContext(n,t.attrs)}catch(i){}return t.gl}),t.gl};function Bqe(e){if(e.container)if(e.container==document.body)document.body.style.width||(e.canvas.width=e.width||e.pixelRatio*window.innerWidth),document.body.style.height||(e.canvas.height=e.height||e.pixelRatio*window.innerHeight);else{var t=e.container.getBoundingClientRect();e.canvas.width=e.width||t.right-t.left,e.canvas.height=e.height||t.bottom-t.top}}function Nqe(e){return typeof e.getContext=="function"&&"width"in e&&"height"in e}function aUt(e){return typeof e.nodeName=="string"&&typeof e.appendChild=="function"&&typeof e.getBoundingClientRect=="function"}function oUt(e){return typeof e.drawArrays=="function"||typeof e.drawElements=="function"}function Uqe(){var e=document.createElement("canvas");return e.style.position="absolute",e.style.top=0,e.style.left=0,e}});var jqe=ye((i_r,Hqe)=>{"use strict";var sUt=eK(),lUt=[32,126];Hqe.exports=uUt;function uUt(e){e=e||{};var t=e.shape?e.shape:e.canvas?[e.canvas.width,e.canvas.height]:[512,512],r=e.canvas||document.createElement("canvas"),n=e.font,i=typeof e.step=="number"?[e.step,e.step]:e.step||[32,32],a=e.chars||lUt;if(n&&typeof n!="string"&&(n=sUt(n)),!Array.isArray(a))a=String(a).split("");else if(a.length===2&&typeof a[0]=="number"&&typeof a[1]=="number"){for(var o=[],s=a[0],l=0;s<=a[1];s++)o[l++]=String.fromCharCode(s);a=o}t=t.slice(),r.width=t[0],r.height=t[1];var u=r.getContext("2d");u.fillStyle="#000",u.fillRect(0,0,r.width,r.height),u.font=n,u.textAlign="center",u.textBaseline="middle",u.fillStyle="#fff";for(var c=i[0]/2,f=i[1]/2,s=0;st[0]-i[0]/2&&(c=i[0]/2,f+=i[1]);return r}});var nK=ye(Bh=>{"use strict";"use restrict";var iK=32;Bh.INT_BITS=iK;Bh.INT_MAX=2147483647;Bh.INT_MIN=-1<0)-(e<0)};Bh.abs=function(e){var t=e>>iK-1;return(e^t)-t};Bh.min=function(e,t){return t^(e^t)&-(e65535)<<4,e>>>=t,r=(e>255)<<3,e>>>=r,t|=r,r=(e>15)<<2,e>>>=r,t|=r,r=(e>3)<<1,e>>>=r,t|=r,t|e>>1};Bh.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0};Bh.popCount=function(e){return e=e-(e>>>1&1431655765),e=(e&858993459)+(e>>>2&858993459),(e+(e>>>4)&252645135)*16843009>>>24};function Wqe(e){var t=32;return e&=-e,e&&t--,e&65535&&(t-=16),e&16711935&&(t-=8),e&252645135&&(t-=4),e&858993459&&(t-=2),e&1431655765&&(t-=1),t}Bh.countTrailingZeros=Wqe;Bh.nextPow2=function(e){return e+=e===0,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e+1};Bh.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e-(e>>>1)};Bh.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,e&=15,27030>>>e&1};var Mk=new Array(256);(function(e){for(var t=0;t<256;++t){var r=t,n=t,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=r&1,--i;e[t]=n<>>8&255]<<16|Mk[e>>>16&255]<<8|Mk[e>>>24&255]};Bh.interleave2=function(e,t){return e&=65535,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t&=65535,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1};Bh.deinterleave2=function(e,t){return e=e>>>t&1431655765,e=(e|e>>>1)&858993459,e=(e|e>>>2)&252645135,e=(e|e>>>4)&16711935,e=(e|e>>>16)&65535,e<<16>>16};Bh.interleave3=function(e,t,r){return e&=1023,e=(e|e<<16)&4278190335,e=(e|e<<8)&251719695,e=(e|e<<4)&3272356035,e=(e|e<<2)&1227133513,t&=1023,t=(t|t<<16)&4278190335,t=(t|t<<8)&251719695,t=(t|t<<4)&3272356035,t=(t|t<<2)&1227133513,e|=t<<1,r&=1023,r=(r|r<<16)&4278190335,r=(r|r<<8)&251719695,r=(r|r<<4)&3272356035,r=(r|r<<2)&1227133513,e|r<<2};Bh.deinterleave3=function(e,t){return e=e>>>t&1227133513,e=(e|e>>>2)&3272356035,e=(e|e>>>4)&251719695,e=(e|e>>>8)&4278190335,e=(e|e>>>16)&1023,e<<22>>22};Bh.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>Wqe(e)+1}});var Yqe=ye((a_r,Zqe)=>{"use strict";function Xqe(e,t,r){var n=e[r]|0;if(n<=0)return[];var i=new Array(n),a;if(r===e.length-1)for(a=0;a0)return cUt(e|0,t);break;case"object":if(typeof e.length=="number")return Xqe(e,t,0);break}return[]}Zqe.exports=fUt});var cBe=ye(mu=>{"use strict";var fx=nK(),Ev=Yqe(),Kqe=c2().Buffer;window.__TYPEDARRAY_POOL||(window.__TYPEDARRAY_POOL={UINT8:Ev([32,0]),UINT16:Ev([32,0]),UINT32:Ev([32,0]),BIGUINT64:Ev([32,0]),INT8:Ev([32,0]),INT16:Ev([32,0]),INT32:Ev([32,0]),BIGINT64:Ev([32,0]),FLOAT:Ev([32,0]),DOUBLE:Ev([32,0]),DATA:Ev([32,0]),UINT8C:Ev([32,0]),BUFFER:Ev([32,0])});var hUt=typeof Uint8ClampedArray!="undefined",dUt=typeof BigUint64Array!="undefined",vUt=typeof BigInt64Array!="undefined",nd=window.__TYPEDARRAY_POOL;nd.UINT8C||(nd.UINT8C=Ev([32,0]));nd.BIGUINT64||(nd.BIGUINT64=Ev([32,0]));nd.BIGINT64||(nd.BIGINT64=Ev([32,0]));nd.BUFFER||(nd.BUFFER=Ev([32,0]));var _z=nd.DATA,xz=nd.BUFFER;mu.free=function(t){if(Kqe.isBuffer(t))xz[fx.log2(t.length)].push(t);else{if(Object.prototype.toString.call(t)!=="[object ArrayBuffer]"&&(t=t.buffer),!t)return;var r=t.length||t.byteLength,n=fx.log2(r)|0;_z[n].push(t)}};function Jqe(e){if(e){var t=e.length||e.byteLength,r=fx.log2(t);_z[r].push(e)}}function pUt(e){Jqe(e.buffer)}mu.freeUint8=mu.freeUint16=mu.freeUint32=mu.freeBigUint64=mu.freeInt8=mu.freeInt16=mu.freeInt32=mu.freeBigInt64=mu.freeFloat32=mu.freeFloat=mu.freeFloat64=mu.freeDouble=mu.freeUint8Clamped=mu.freeDataView=pUt;mu.freeArrayBuffer=Jqe;mu.freeBuffer=function(t){xz[fx.log2(t.length)].push(t)};mu.malloc=function(t,r){if(r===void 0||r==="arraybuffer")return Bp(t);switch(r){case"uint8":return aK(t);case"uint16":return $qe(t);case"uint32":return Qqe(t);case"int8":return eBe(t);case"int16":return tBe(t);case"int32":return rBe(t);case"float":case"float32":return iBe(t);case"double":case"float64":return nBe(t);case"uint8_clamped":return aBe(t);case"bigint64":return sBe(t);case"biguint64":return oBe(t);case"buffer":return uBe(t);case"data":case"dataview":return lBe(t);default:return null}return null};function Bp(t){var t=fx.nextPow2(t),r=fx.log2(t),n=_z[r];return n.length>0?n.pop():new ArrayBuffer(t)}mu.mallocArrayBuffer=Bp;function aK(e){return new Uint8Array(Bp(e),0,e)}mu.mallocUint8=aK;function $qe(e){return new Uint16Array(Bp(2*e),0,e)}mu.mallocUint16=$qe;function Qqe(e){return new Uint32Array(Bp(4*e),0,e)}mu.mallocUint32=Qqe;function eBe(e){return new Int8Array(Bp(e),0,e)}mu.mallocInt8=eBe;function tBe(e){return new Int16Array(Bp(2*e),0,e)}mu.mallocInt16=tBe;function rBe(e){return new Int32Array(Bp(4*e),0,e)}mu.mallocInt32=rBe;function iBe(e){return new Float32Array(Bp(4*e),0,e)}mu.mallocFloat32=mu.mallocFloat=iBe;function nBe(e){return new Float64Array(Bp(8*e),0,e)}mu.mallocFloat64=mu.mallocDouble=nBe;function aBe(e){return hUt?new Uint8ClampedArray(Bp(e),0,e):aK(e)}mu.mallocUint8Clamped=aBe;function oBe(e){return dUt?new BigUint64Array(Bp(8*e),0,e):null}mu.mallocBigUint64=oBe;function sBe(e){return vUt?new BigInt64Array(Bp(8*e),0,e):null}mu.mallocBigInt64=sBe;function lBe(e){return new DataView(Bp(e),0,e)}mu.mallocDataView=lBe;function uBe(e){e=fx.nextPow2(e);var t=fx.log2(e),r=xz[t];return r.length>0?r.pop():new Kqe(e)}mu.mallocBuffer=uBe;mu.clearCache=function(){for(var t=0;t<32;++t)nd.UINT8[t].length=0,nd.UINT16[t].length=0,nd.UINT32[t].length=0,nd.INT8[t].length=0,nd.INT16[t].length=0,nd.INT32[t].length=0,nd.FLOAT[t].length=0,nd.DOUBLE[t].length=0,nd.BIGUINT64[t].length=0,nd.BIGINT64[t].length=0,nd.UINT8C[t].length=0,_z[t].length=0,xz[t].length=0}});var hBe=ye((s_r,fBe)=>{"use strict";var gUt=Object.prototype.toString;fBe.exports=function(e){var t;return gUt.call(e)==="[object Object]"&&(t=Object.getPrototypeOf(e),t===null||t===Object.getPrototypeOf({}))}});var oK=ye((l_r,dBe)=>{dBe.exports=function(t,r){r||(r=[0,""]),t=String(t);var n=parseFloat(t,10);return r[0]=n,r[1]=t.match(/[\d.\-\+]*\s*(.*)/)[1]||"",r}});var gBe=ye((u_r,pBe)=>{"use strict";var mUt=oK();pBe.exports=vBe;var Ek=96;function sK(e,t){var r=mUt(getComputedStyle(e).getPropertyValue(t));return r[0]*vBe(r[1],e)}function yUt(e,t){var r=document.createElement("div");r.style["font-size"]="128"+e,t.appendChild(r);var n=sK(r,"font-size")/128;return t.removeChild(r),n}function vBe(e,t){switch(t=t||document.body,e=(e||"px").trim().toLowerCase(),(t===window||t===document)&&(t=document.body),e){case"%":return t.clientHeight/100;case"ch":case"ex":return yUt(e,t);case"em":return sK(t,"font-size");case"rem":return sK(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return Ek;case"cm":return Ek/2.54;case"mm":return Ek/25.4;case"pt":return Ek/72;case"pc":return Ek/6}return 1}});var _Be=ye((c_r,yBe)=>{"use strict";yBe.exports=Tz;var _Ut=Tz.canvas=document.createElement("canvas"),bz=_Ut.getContext("2d"),mBe=wz([32,126]);Tz.createPairs=wz;Tz.ascii=mBe;function Tz(e,t){Array.isArray(e)&&(e=e.join(", "));var r={},n,i=16,a=.05;t&&(t.length===2&&typeof t[0]=="number"?n=wz(t):Array.isArray(t)?n=t:(t.o?n=wz(t.o):t.pairs&&(n=t.pairs),t.fontSize&&(i=t.fontSize),t.threshold!=null&&(a=t.threshold))),n||(n=mBe),bz.font=i+"px "+e;for(var o=0;oi*a){var c=(u-l)/i;r[s]=c*1e3}}return r}function wz(e){for(var t=[],r=e[0];r<=e[1];r++)for(var n=String.fromCharCode(r),i=e[0];i{"use strict";wBe.exports=hx;hx.canvas=document.createElement("canvas");hx.cache={};function hx(o,t){t||(t={}),(typeof o=="string"||Array.isArray(o))&&(t.family=o);var r=Array.isArray(t.family)?t.family.join(", "):t.family;if(!r)throw Error("`family` must be defined");var n=t.size||t.fontSize||t.em||48,i=t.weight||t.fontWeight||"",a=t.style||t.fontStyle||"",o=[a,i,n].join(" ")+"px "+r,s=t.origin||"top";if(hx.cache[r]&&n<=hx.cache[r].em)return xBe(hx.cache[r],s);var l=t.canvas||hx.canvas,u=l.getContext("2d"),c={upper:t.upper!==void 0?t.upper:"H",lower:t.lower!==void 0?t.lower:"x",descent:t.descent!==void 0?t.descent:"p",ascent:t.ascent!==void 0?t.ascent:"h",tittle:t.tittle!==void 0?t.tittle:"i",overshoot:t.overshoot!==void 0?t.overshoot:"O"},f=Math.ceil(n*1.5);l.height=f,l.width=f*.5,u.font=o;var h="H",d={top:0};u.clearRect(0,0,f,f),u.textBaseline="top",u.fillStyle="black",u.fillText(h,0,0);var v=Km(u.getImageData(0,0,f,f));u.clearRect(0,0,f,f),u.textBaseline="bottom",u.fillText(h,0,f);var _=Km(u.getImageData(0,0,f,f));d.lineHeight=d.bottom=f-_+v,u.clearRect(0,0,f,f),u.textBaseline="alphabetic",u.fillText(h,0,f);var b=Km(u.getImageData(0,0,f,f)),p=f-b-1+v;d.baseline=d.alphabetic=p,u.clearRect(0,0,f,f),u.textBaseline="middle",u.fillText(h,0,f*.5);var k=Km(u.getImageData(0,0,f,f));d.median=d.middle=f-k-1+v-f*.5,u.clearRect(0,0,f,f),u.textBaseline="hanging",u.fillText(h,0,f*.5);var E=Km(u.getImageData(0,0,f,f));d.hanging=f-E-1+v-f*.5,u.clearRect(0,0,f,f),u.textBaseline="ideographic",u.fillText(h,0,f);var S=Km(u.getImageData(0,0,f,f));if(d.ideographic=f-S-1+v,c.upper&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.upper,0,0),d.upper=Km(u.getImageData(0,0,f,f)),d.capHeight=d.baseline-d.upper),c.lower&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.lower,0,0),d.lower=Km(u.getImageData(0,0,f,f)),d.xHeight=d.baseline-d.lower),c.tittle&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.tittle,0,0),d.tittle=Km(u.getImageData(0,0,f,f))),c.ascent&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.ascent,0,0),d.ascent=Km(u.getImageData(0,0,f,f))),c.descent&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.descent,0,0),d.descent=bBe(u.getImageData(0,0,f,f))),c.overshoot){u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.overshoot,0,0);var L=bBe(u.getImageData(0,0,f,f));d.overshoot=L-p}for(var x in d)d[x]/=n;return d.em=n,hx.cache[r]=d,xBe(d,s)}function xBe(e,t){var r={};typeof t=="string"&&(t=e[t]);for(var n in e)n!=="em"&&(r[n]=e[n]-t);return r}function Km(e){for(var t=e.height,r=e.data,n=3;n0;n-=4)if(r[n]!==0)return Math.floor((n-3)*.25/t)}});var EBe=ye((h_r,MBe)=>{"use strict";var p5=Oqe(),xUt=Zm(),bUt=qqe(),wUt=Gqe(),TUt=NY(),lK=J_(),AUt=jqe(),dx=cBe(),SUt=i5(),MUt=hBe(),EUt=oK(),kUt=gBe(),CUt=_Be(),LUt=Oh(),PUt=TBe(),IUt=Z2(),RUt=nK(),ABe=RUt.nextPow2,SBe=new TUt,Sz=!1;document.body&&(Az=document.body.appendChild(document.createElement("div")),Az.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(Az).fontStretch&&(Sz=!0),document.body.removeChild(Az));var Az,xc=function(t){DUt(t)?(t={regl:t},this.gl=t.regl._gl):this.gl=wUt(t),this.shader=SBe.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=t.regl||bUt({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),SBe.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(MUt(t)?t:{})};xc.prototype.createShader=function(){var t=this.regl,r=t({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:t.prop("count"),offset:t.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:t.this("sizeBuffer")},width:{offset:0,stride:8,buffer:t.this("sizeBuffer")},char:t.this("charBuffer"),position:t.this("position")},uniforms:{atlasSize:function(i,a){return[a.atlas.width,a.atlas.height]},atlasDim:function(i,a){return[a.atlas.cols,a.atlas.rows]},atlas:function(i,a){return a.atlas.texture},charStep:function(i,a){return a.atlas.step},em:function(i,a){return a.atlas.em},color:t.prop("color"),opacity:t.prop("opacity"),viewport:t.this("viewportArray"),scale:t.this("scale"),align:t.prop("align"),baseline:t.prop("baseline"),translate:t.this("translate"),positionOffset:t.prop("positionOffset")},primitive:"points",viewport:t.this("viewport"),vert:` precision highp float; attribute float width, charOffset, char; attribute vec2 position; @@ -2705,17 +2705,17 @@ void main() { // color.rgb += (1. - color.rgb) * (1. - mask.rgb); gl_FragColor = color; - }`}),n={};return{regl:t,draw:r,atlas:n}};xc.prototype.update=function(t){var r=this;if(typeof t=="string")t={text:t};else if(!t)return;t=xUt(t,{position:"position positions coord coords coordinates",font:"font fontFace fontface typeface cssFont css-font family fontFamily",fontSize:"fontSize fontsize size font-size",text:"text texts chars characters value values symbols",align:"align alignment textAlign textbaseline",baseline:"baseline textBaseline textbaseline",direction:"dir direction textDirection",color:"color colour fill fill-color fillColor textColor textcolor",kerning:"kerning kern",range:"range dataBox",viewport:"vp viewport viewBox viewbox viewPort",opacity:"opacity alpha transparency visible visibility opaque",offset:"offset positionOffset padding shift indent indentation"},!0),t.opacity!=null&&(Array.isArray(t.opacity)?this.opacity=t.opacity.map(function(Ce){return parseFloat(Ce)}):this.opacity=parseFloat(t.opacity)),t.viewport!=null&&(this.viewport=SUt(t.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),this.viewport==null&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),t.kerning!=null&&(this.kerning=t.kerning),t.offset!=null&&(typeof t.offset=="number"&&(t.offset=[t.offset,0]),this.positionOffset=IUt(t.offset)),t.direction&&(this.direction=t.direction),t.range&&(this.range=t.range,this.scale=[1/(t.range[2]-t.range[0]),1/(t.range[3]-t.range[1])],this.translate=[-t.range[0],-t.range[1]]),t.scale&&(this.scale=t.scale),t.translate&&(this.translate=t.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),!this.font.length&&!t.font&&(t.font=xc.baseFontSize+"px sans-serif");var n=!1,i=!1;if(t.font&&(Array.isArray(t.font)?t.font:[t.font]).forEach(function(Ce,me){if(typeof Ce=="string")try{Ce=v5.parse(Ce)}catch(Ze){Ce=v5.parse(xc.baseFontSize+"px "+Ce)}else{var ie=Ce.style,Se=Ce.weight,Le=Ce.stretch,Ae=Ce.variant;Ce=v5.parse(v5.stringify(Ce)),ie&&(Ce.style=ie),Se&&(Ce.weight=Se),Le&&(Ce.stretch=Le),Ae&&(Ce.variant=Ae)}var Fe=v5.stringify({size:xc.baseFontSize,family:Ce.family,stretch:Az?Ce.stretch:void 0,variant:Ce.variant,weight:Ce.weight,style:Ce.style}),Pe=EUt(Ce.size),ge=Math.round(Pe[0]*kUt(Pe[1]));if(ge!==r.fontSize[me]&&(i=!0,r.fontSize[me]=ge),(!r.font[me]||Fe!=r.font[me].baseString)&&(n=!0,r.font[me]=xc.fonts[Fe],!r.font[me])){var Re=Ce.family.join(", "),ce=[Ce.style];Ce.style!=Ce.variant&&ce.push(Ce.variant),Ce.variant!=Ce.weight&&ce.push(Ce.weight),Az&&Ce.weight!=Ce.stretch&&ce.push(Ce.stretch),r.font[me]={baseString:Fe,family:Re,weight:Ce.weight,stretch:Ce.stretch,style:Ce.style,variant:Ce.variant,width:{},kerning:{},metrics:PUt(Re,{origin:"top",fontSize:xc.baseFontSize,fontStyle:ce.join(" ")})},xc.fonts[Fe]=r.font[me]}}),(n||i)&&this.font.forEach(function(Ce,me){var ie=v5.stringify({size:r.fontSize[me],family:Ce.family,stretch:Az?Ce.stretch:void 0,variant:Ce.variant,weight:Ce.weight,style:Ce.style});if(r.fontAtlas[me]=r.shader.atlas[ie],!r.fontAtlas[me]){var Se=Ce.metrics;r.shader.atlas[ie]=r.fontAtlas[me]={fontString:ie,step:Math.ceil(r.fontSize[me]*Se.bottom*.5)*2,em:r.fontSize[me],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:r.regl.texture()}}t.text==null&&(t.text=r.text)}),typeof t.text=="string"&&t.position&&t.position.length>2){for(var a=Array(t.position.length*.5),o=0;o2){for(var u=!t.position[0].length,c=dx.mallocFloat(this.count*2),f=0,h=0;f1?r.align[me]:r.align[0]:r.align;if(typeof ie=="number")return ie;switch(ie){case"right":case"end":return-Ce;case"center":case"centre":case"middle":return-Ce*.5}return 0})),this.baseline==null&&t.baseline==null&&(t.baseline=0),t.baseline!=null&&(this.baseline=t.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map(function(Ce,me){var ie=(r.font[me]||r.font[0]).metrics,Se=0;return Se+=ie.bottom*.5,typeof Ce=="number"?Se+=Ce-ie.baseline:Se+=-ie[Ce],Se*=-1,Se})),t.color!=null)if(t.color||(t.color="transparent"),typeof t.color=="string"||!isNaN(t.color))this.color=sK(t.color,"uint8");else{var G;if(typeof t.color[0]=="number"&&t.color.length>this.counts.length){var Z=t.color.length;G=dx.mallocUint8(Z);for(var H=(t.color.subarray||t.color.slice).bind(t.color),N=0;N4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2;if(oe){var _e=Math.max(this.position.length*.5||0,this.color.length*.25||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,this.positionOffset.length*.5||0);this.batch=Array(_e);for(var Ee=0;Ee1?this.counts[Ee]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[Ee]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(Ee*4,Ee*4+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[Ee]:this.opacity,baseline:this.baselineOffset[Ee]!=null?this.baselineOffset[Ee]:this.baselineOffset[0],align:this.align?this.alignOffset[Ee]!=null?this.alignOffset[Ee]:this.alignOffset[0]:0,atlas:this.fontAtlas[Ee]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(Ee*2,Ee*2+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]}};xc.prototype.destroy=function(){};xc.prototype.kerning=!0;xc.prototype.position={constant:new Float32Array(2)};xc.prototype.translate=null;xc.prototype.scale=null;xc.prototype.font=null;xc.prototype.text="";xc.prototype.positionOffset=[0,0];xc.prototype.opacity=1;xc.prototype.color=new Uint8Array([0,0,0,255]);xc.prototype.alignOffset=[0,0];xc.maxAtlasSize=1024;xc.atlasCanvas=document.createElement("canvas");xc.atlasContext=xc.atlasCanvas.getContext("2d",{alpha:!1});xc.baseFontSize=64;xc.fonts={};function DUt(e){return typeof e=="function"&&e._gl&&e.prop&&e.texture&&e.buffer}SBe.exports=xc});var EBe=ye((lK,uK)=>{(function(e,t){typeof lK=="object"&&typeof uK!="undefined"?uK.exports=t():e.createREGL=t()})(lK,function(){"use strict";var e=function(Me,bt){for(var zt=Object.keys(bt),Rr=0;Rr1&&bt===zt&&(bt==='"'||bt==="'"))return['"'+o(Me.substr(1,Me.length-2))+'"'];var Rr=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Me);if(Rr)return s(Me.substr(0,Rr.index)).concat(s(Rr[1])).concat(s(Me.substr(Rr.index+Rr[0].length)));var jr=Me.split(".");if(jr.length===1)return['"'+o(Me)+'"'];for(var Nr=[],Gr=0;Gr65535)<<4,Me>>>=bt,zt=(Me>255)<<3,Me>>>=zt,bt|=zt,zt=(Me>15)<<2,Me>>>=zt,bt|=zt,zt=(Me>3)<<1,Me>>>=zt,bt|=zt,bt|Me>>1}function N(){var Me=M(8,function(){return[]});function bt(Nr){var Gr=Z(Nr),mi=Me[H(Gr)>>2];return mi.length>0?mi.pop():new ArrayBuffer(Gr)}function zt(Nr){Me[H(Nr.byteLength)>>2].push(Nr)}function Rr(Nr,Gr){var mi=null;switch(Nr){case g:mi=new Int8Array(bt(Gr),0,Gr);break;case P:mi=new Uint8Array(bt(Gr),0,Gr);break;case T:mi=new Int16Array(bt(2*Gr),0,Gr);break;case z:mi=new Uint16Array(bt(2*Gr),0,Gr);break;case O:mi=new Int32Array(bt(4*Gr),0,Gr);break;case V:mi=new Uint32Array(bt(4*Gr),0,Gr);break;case G:mi=new Float32Array(bt(4*Gr),0,Gr);break;default:return null}return mi.length!==Gr?mi.subarray(0,Gr):mi}function jr(Nr){zt(Nr.buffer)}return{alloc:bt,free:zt,allocType:Rr,freeType:jr}}var j=N();j.zero=N();var re=3408,oe=3410,_e=3411,Ee=3412,Ce=3413,me=3414,ie=3415,Se=33901,Le=33902,Ae=3379,Fe=3386,Pe=34921,ge=36347,Re=36348,ce=35661,Ze=35660,ut=34930,pt=36349,Zt=34076,st=34024,lt=7936,Gt=7937,Nt=7938,Jt=35724,sr=34047,wr=36063,cr=34852,$e=3553,St=34067,Qt=34069,Vt=33984,_t=6408,It=5126,mt=5121,er=36160,lr=36053,Tr=36064,Lr=16384,ti=function(Me,bt){var zt=1;bt.ext_texture_filter_anisotropic&&(zt=Me.getParameter(sr));var Rr=1,jr=1;bt.webgl_draw_buffers&&(Rr=Me.getParameter(cr),jr=Me.getParameter(wr));var Nr=!!bt.oes_texture_float;if(Nr){var Gr=Me.createTexture();Me.bindTexture($e,Gr),Me.texImage2D($e,0,_t,1,1,0,_t,It,null);var mi=Me.createFramebuffer();if(Me.bindFramebuffer(er,mi),Me.framebufferTexture2D(er,Tr,$e,Gr,0),Me.bindTexture($e,null),Me.checkFramebufferStatus(er)!==lr)Nr=!1;else{Me.viewport(0,0,1,1),Me.clearColor(1,0,0,1),Me.clear(Lr);var Ui=j.allocType(It,4);Me.readPixels(0,0,1,1,_t,It,Ui),Me.getError()?Nr=!1:(Me.deleteFramebuffer(mi),Me.deleteTexture(Gr),Nr=Ui[0]===1),j.freeType(Ui)}}var qi=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),Ei=!0;if(!qi){var Hn=Me.createTexture(),en=j.allocType(mt,36);Me.activeTexture(Vt),Me.bindTexture(St,Hn),Me.texImage2D(Qt,0,_t,3,3,0,_t,mt,en),j.freeType(en),Me.bindTexture(St,null),Me.deleteTexture(Hn),Ei=!Me.getError()}return{colorBits:[Me.getParameter(oe),Me.getParameter(_e),Me.getParameter(Ee),Me.getParameter(Ce)],depthBits:Me.getParameter(me),stencilBits:Me.getParameter(ie),subpixelBits:Me.getParameter(re),extensions:Object.keys(bt).filter(function(Wi){return!!bt[Wi]}),maxAnisotropic:zt,maxDrawbuffers:Rr,maxColorAttachments:jr,pointSizeDims:Me.getParameter(Se),lineWidthDims:Me.getParameter(Le),maxViewportDims:Me.getParameter(Fe),maxCombinedTextureUnits:Me.getParameter(ce),maxCubeMapSize:Me.getParameter(Zt),maxRenderbufferSize:Me.getParameter(st),maxTextureUnits:Me.getParameter(ut),maxTextureSize:Me.getParameter(Ae),maxAttributes:Me.getParameter(Pe),maxVertexUniforms:Me.getParameter(ge),maxVertexTextureUnits:Me.getParameter(Ze),maxVaryingVectors:Me.getParameter(Re),maxFragmentUniforms:Me.getParameter(pt),glsl:Me.getParameter(Jt),renderer:Me.getParameter(Gt),vendor:Me.getParameter(lt),version:Me.getParameter(Nt),readFloat:Nr,npotTextureCube:Ei}},Br=function(Me){return Me instanceof Uint8Array||Me instanceof Uint16Array||Me instanceof Uint32Array||Me instanceof Int8Array||Me instanceof Int16Array||Me instanceof Int32Array||Me instanceof Float32Array||Me instanceof Float64Array||Me instanceof Uint8ClampedArray};function Vr(Me){return!!Me&&typeof Me=="object"&&Array.isArray(Me.shape)&&Array.isArray(Me.stride)&&typeof Me.offset=="number"&&Me.shape.length===Me.stride.length&&(Array.isArray(Me.data)||Br(Me.data))}var dt=function(Me){return Object.keys(Me).map(function(bt){return Me[bt]})},Ge={shape:xe,flatten:Ie};function Je(Me,bt,zt){for(var Rr=0;Rr0){var Bn;if(Array.isArray(Yr[0])){Zi=Fn(Yr);for(var hi=1,li=1;li0){if(typeof hi[0]=="number"){var Vi=j.allocType(ci.dtype,hi.length);Er(Vi,hi),Zi(Vi,mn),j.freeType(Vi)}else if(Array.isArray(hi[0])||Br(hi[0])){Ji=Fn(hi);var Ni=qn(hi,Ji,ci.dtype);Zi(Ni,mn),j.freeType(Ni)}}}else if(Vr(hi)){Ji=hi.shape;var pn=hi.stride,Vn=0,na=0,Ki=0,kn=0;Ji.length===1?(Vn=Ji[0],na=1,Ki=pn[0],kn=0):Ji.length===2&&(Vn=Ji[0],na=Ji[1],Ki=pn[0],kn=pn[1]);var ta=Array.isArray(hi.data)?ci.dtype:nr(hi.data),oa=j.allocType(ta,Vn*na);Xr(oa,hi.data,Vn,na,Ki,kn,hi.offset),Zi(oa,mn),j.freeType(oa)}return an}return xi||an(Mr),an._reglType="buffer",an._buffer=ci,an.subdata=Bn,zt.profile&&(an.stats=ci.stats),an.destroy=function(){en(ci)},an}function si(){dt(Nr).forEach(function(Mr){Mr.buffer=Me.createBuffer(),Me.bindBuffer(Mr.type,Mr.buffer),Me.bufferData(Mr.type,Mr.persistentData||Mr.byteLength,Mr.usage)})}return zt.profile&&(bt.getTotalBufferSize=function(){var Mr=0;return Object.keys(Nr).forEach(function(Yr){Mr+=Nr[Yr].stats.size}),Mr}),{create:Wi,createStream:Ui,destroyStream:qi,clear:function(){dt(Nr).forEach(en),mi.forEach(en)},getBuffer:function(Mr){return Mr&&Mr._buffer instanceof Gr?Mr._buffer:null},restore:si,_initBuffer:Hn}}var Qr=0,Oi=0,$i=1,tn=1,fn=4,yn=4,Sn={points:Qr,point:Oi,lines:$i,line:tn,triangles:fn,triangle:yn,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ba=0,ua=1,ma=4,Wa=5120,Fa=5121,Wo=5122,da=5123,Wn=5124,Ga=5125,vo=34963,jn=35040,Mt=35044;function kr(Me,bt,zt,Rr){var jr={},Nr=0,Gr={uint8:Fa,uint16:da};bt.oes_element_index_uint&&(Gr.uint32=Ga);function mi(si){this.id=Nr++,jr[this.id]=this,this.buffer=si,this.primType=ma,this.vertCount=0,this.type=0}mi.prototype.bind=function(){this.buffer.bind()};var Ui=[];function qi(si){var Mr=Ui.pop();return Mr||(Mr=new mi(zt.create(null,vo,!0,!1)._buffer)),Hn(Mr,si,jn,-1,-1,0,0),Mr}function Ei(si){Ui.push(si)}function Hn(si,Mr,Yr,xi,Ri,ci,an){si.buffer.bind();var Zi;if(Mr){var Bn=an;!an&&(!Br(Mr)||Vr(Mr)&&!Br(Mr.data))&&(Bn=bt.oes_element_index_uint?Ga:da),zt._initBuffer(si.buffer,Mr,Yr,Bn,3)}else Me.bufferData(vo,ci,Yr),si.buffer.dtype=Zi||Fa,si.buffer.usage=Yr,si.buffer.dimension=3,si.buffer.byteLength=ci;if(Zi=an,!an){switch(si.buffer.dtype){case Fa:case Wa:Zi=Fa;break;case da:case Wo:Zi=da;break;case Ga:case Wn:Zi=Ga;break;default:}si.buffer.dtype=Zi}si.type=Zi;var hi=Ri;hi<0&&(hi=si.buffer.byteLength,Zi===da?hi>>=1:Zi===Ga&&(hi>>=2)),si.vertCount=hi;var li=xi;if(xi<0){li=ma;var mn=si.buffer.dimension;mn===1&&(li=Ba),mn===2&&(li=ua),mn===3&&(li=ma)}si.primType=li}function en(si){Rr.elementsCount--,delete jr[si.id],si.buffer.destroy(),si.buffer=null}function Wi(si,Mr){var Yr=zt.create(null,vo,!0),xi=new mi(Yr._buffer);Rr.elementsCount++;function Ri(ci){if(!ci)Yr(),xi.primType=ma,xi.vertCount=0,xi.type=Fa;else if(typeof ci=="number")Yr(ci),xi.primType=ma,xi.vertCount=ci|0,xi.type=Fa;else{var an=null,Zi=Mt,Bn=-1,hi=-1,li=0,mn=0;Array.isArray(ci)||Br(ci)||Vr(ci)?an=ci:("data"in ci&&(an=ci.data),"usage"in ci&&(Zi=On[ci.usage]),"primitive"in ci&&(Bn=Sn[ci.primitive]),"count"in ci&&(hi=ci.count|0),"type"in ci&&(mn=Gr[ci.type]),"length"in ci?li=ci.length|0:(li=hi,mn===da||mn===Wo?li*=2:(mn===Ga||mn===Wn)&&(li*=4))),Hn(xi,an,Zi,Bn,hi,li,mn)}return Ri}return Ri(si),Ri._reglType="elements",Ri._elements=xi,Ri.subdata=function(ci,an){return Yr.subdata(ci,an),Ri},Ri.destroy=function(){en(xi)},Ri}return{create:Wi,createStream:qi,destroyStream:Ei,getElements:function(si){return typeof si=="function"&&si._elements instanceof mi?si._elements:null},clear:function(){dt(jr).forEach(en)}}}var Jr=new Float32Array(1),vi=new Uint32Array(Jr.buffer),hn=5123;function An(Me){for(var bt=j.allocType(hn,Me.length),zt=0;zt>>31<<15,Nr=(Rr<<1>>>24)-127,Gr=Rr>>13&1023;if(Nr<-24)bt[zt]=jr;else if(Nr<-14){var mi=-14-Nr;bt[zt]=jr+(Gr+1024>>mi)}else Nr>15?bt[zt]=jr+31744:bt[zt]=jr+(Nr+15<<10)+Gr}return bt}function Mn(Me){return Array.isArray(Me)||Br(Me)}var Li=34467,_n=3553,ya=34067,Jn=34069,Ma=6408,_o=6406,No=6407,po=6409,Lo=6410,ko=32854,Ds=32855,Fs=36194,ll=32819,ul=32820,zl=33635,us=34042,il=6402,As=34041,cl=35904,Ks=35906,zs=36193,Io=33776,ls=33777,Zl=33778,Su=33779,nc=35986,bs=35987,Rn=34798,_a=35840,Vu=35841,Ol=35842,xo=35843,Yl=36196,Ns=5121,Hl=5123,ac=5125,aa=5126,Oo=10242,qo=10243,ql=10497,Pc=33071,Do=33648,rf=10240,Uf=10241,pl=9728,Zc=9729,Kl=9984,Os=9985,yu=9986,oc=9987,Cf=33170,sc=4352,Vh=4353,Lf=4354,cs=34046,nf=3317,Vf=37440,Jl=37441,fl=37443,lc=37444,Fu=33984,Es=[Kl,yu,Os,oc],Hs=[0,po,Lo,No,Ma],Go={};Go[po]=Go[_o]=Go[il]=1,Go[As]=Go[Lo]=2,Go[No]=Go[cl]=3,Go[Ma]=Go[Ks]=4;function ps(Me){return"[object "+Me+"]"}var uc=ps("HTMLCanvasElement"),xl=ps("OffscreenCanvas"),Gu=ps("CanvasRenderingContext2D"),qs=ps("ImageBitmap"),ad=ps("HTMLImageElement"),Po=ps("HTMLVideoElement"),od=Object.keys(ke).concat([uc,xl,Gu,qs,ad,Po]),Yo=[];Yo[Ns]=1,Yo[aa]=4,Yo[zs]=2,Yo[Hl]=2,Yo[ac]=4;var Pa=[];Pa[ko]=2,Pa[Ds]=2,Pa[Fs]=2,Pa[As]=4,Pa[Io]=.5,Pa[ls]=.5,Pa[Zl]=1,Pa[Su]=1,Pa[nc]=.5,Pa[bs]=1,Pa[Rn]=1,Pa[_a]=.5,Pa[Vu]=.25,Pa[Ol]=.5,Pa[xo]=.25,Pa[Yl]=.5;function af(Me){return Array.isArray(Me)&&(Me.length===0||typeof Me[0]=="number")}function Hu(Me){if(!Array.isArray(Me))return!1;var bt=Me.length;return!(bt===0||!Mn(Me[0]))}function bl(Me){return Object.prototype.toString.call(Me)}function Gf(Me){return bl(Me)===uc}function Ic(Me){return bl(Me)===xl}function yf(Me){return bl(Me)===Gu}function Bl(Me){return bl(Me)===qs}function wh(Me){return bl(Me)===ad}function Qf(Me){return bl(Me)===Po}function _f(Me){if(!Me)return!1;var bt=bl(Me);return od.indexOf(bt)>=0?!0:af(Me)||Hu(Me)||Vr(Me)}function Yc(Me){return ke[Object.prototype.toString.call(Me)]|0}function eh(Me,bt){var zt=bt.length;switch(Me.type){case Ns:case Hl:case ac:case aa:var Rr=j.allocType(Me.type,zt);Rr.set(bt),Me.data=Rr;break;case zs:Me.data=An(bt);break;default:}}function th(Me,bt){return j.allocType(Me.type===zs?aa:Me.type,bt)}function ju(Me,bt){Me.type===zs?(Me.data=An(bt),j.freeType(bt)):Me.data=bt}function Hf(Me,bt,zt,Rr,jr,Nr){for(var Gr=Me.width,mi=Me.height,Ui=Me.channels,qi=Gr*mi*Ui,Ei=th(Me,qi),Hn=0,en=0;en=1;)mi+=Gr*Ui*Ui,Ui/=2;return mi}else return Gr*zt*Rr}function of(Me,bt,zt,Rr,jr,Nr,Gr){var mi={"don't care":sc,"dont care":sc,nice:Lf,fast:Vh},Ui={repeat:ql,clamp:Pc,mirror:Do},qi={nearest:pl,linear:Zc},Ei=e({mipmap:oc,"nearest mipmap nearest":Kl,"linear mipmap nearest":Os,"nearest mipmap linear":yu,"linear mipmap linear":oc},qi),Hn={none:0,browser:lc},en={uint8:Ns,rgba4:ll,rgb565:zl,"rgb5 a1":ul},Wi={alpha:_o,luminance:po,"luminance alpha":Lo,rgb:No,rgba:Ma,rgba4:ko,"rgb5 a1":Ds,rgb565:Fs},si={};bt.ext_srgb&&(Wi.srgb=cl,Wi.srgba=Ks),bt.oes_texture_float&&(en.float32=en.float=aa),bt.oes_texture_half_float&&(en.float16=en["half float"]=zs),bt.webgl_depth_texture&&(e(Wi,{depth:il,"depth stencil":As}),e(en,{uint16:Hl,uint32:ac,"depth stencil":us})),bt.webgl_compressed_texture_s3tc&&e(si,{"rgb s3tc dxt1":Io,"rgba s3tc dxt1":ls,"rgba s3tc dxt3":Zl,"rgba s3tc dxt5":Su}),bt.webgl_compressed_texture_atc&&e(si,{"rgb atc":nc,"rgba atc explicit alpha":bs,"rgba atc interpolated alpha":Rn}),bt.webgl_compressed_texture_pvrtc&&e(si,{"rgb pvrtc 4bppv1":_a,"rgb pvrtc 2bppv1":Vu,"rgba pvrtc 4bppv1":Ol,"rgba pvrtc 2bppv1":xo}),bt.webgl_compressed_texture_etc1&&(si["rgb etc1"]=Yl);var Mr=Array.prototype.slice.call(Me.getParameter(Li));Object.keys(si).forEach(function(ne){var we=si[ne];Mr.indexOf(we)>=0&&(Wi[ne]=we)});var Yr=Object.keys(Wi);zt.textureFormats=Yr;var xi=[];Object.keys(Wi).forEach(function(ne){var we=Wi[ne];xi[we]=ne});var Ri=[];Object.keys(en).forEach(function(ne){var we=en[ne];Ri[we]=ne});var ci=[];Object.keys(qi).forEach(function(ne){var we=qi[ne];ci[we]=ne});var an=[];Object.keys(Ei).forEach(function(ne){var we=Ei[ne];an[we]=ne});var Zi=[];Object.keys(Ui).forEach(function(ne){var we=Ui[ne];Zi[we]=ne});var Bn=Yr.reduce(function(ne,we){var Ue=Wi[we];return Ue===po||Ue===_o||Ue===po||Ue===Lo||Ue===il||Ue===As||bt.ext_srgb&&(Ue===cl||Ue===Ks)?ne[Ue]=Ue:Ue===Ds||we.indexOf("rgba")>=0?ne[Ue]=Ma:ne[Ue]=No,ne},{});function hi(){this.internalformat=Ma,this.format=Ma,this.type=Ns,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=lc,this.width=0,this.height=0,this.channels=0}function li(ne,we){ne.internalformat=we.internalformat,ne.format=we.format,ne.type=we.type,ne.compressed=we.compressed,ne.premultiplyAlpha=we.premultiplyAlpha,ne.flipY=we.flipY,ne.unpackAlignment=we.unpackAlignment,ne.colorSpace=we.colorSpace,ne.width=we.width,ne.height=we.height,ne.channels=we.channels}function mn(ne,we){if(!(typeof we!="object"||!we)){if("premultiplyAlpha"in we&&(ne.premultiplyAlpha=we.premultiplyAlpha),"flipY"in we&&(ne.flipY=we.flipY),"alignment"in we&&(ne.unpackAlignment=we.alignment),"colorSpace"in we&&(ne.colorSpace=Hn[we.colorSpace]),"type"in we){var Ue=we.type;ne.type=en[Ue]}var ft=ne.width,Xt=ne.height,hr=ne.channels,qt=!1;"shape"in we?(ft=we.shape[0],Xt=we.shape[1],we.shape.length===3&&(hr=we.shape[2],qt=!0)):("radius"in we&&(ft=Xt=we.radius),"width"in we&&(ft=we.width),"height"in we&&(Xt=we.height),"channels"in we&&(hr=we.channels,qt=!0)),ne.width=ft|0,ne.height=Xt|0,ne.channels=hr|0;var Ve=!1;if("format"in we){var Qe=we.format,at=ne.internalformat=Wi[Qe];ne.format=Bn[at],Qe in en&&("type"in we||(ne.type=en[Qe])),Qe in si&&(ne.compressed=!0),Ve=!0}!qt&&Ve?ne.channels=Go[ne.format]:qt&&!Ve&&ne.channels!==Hs[ne.format]&&(ne.format=ne.internalformat=Hs[ne.channels])}}function Ji(ne){Me.pixelStorei(Vf,ne.flipY),Me.pixelStorei(Jl,ne.premultiplyAlpha),Me.pixelStorei(fl,ne.colorSpace),Me.pixelStorei(nf,ne.unpackAlignment)}function Vi(){hi.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function Ni(ne,we){var Ue=null;if(_f(we)?Ue=we:we&&(mn(ne,we),"x"in we&&(ne.xOffset=we.x|0),"y"in we&&(ne.yOffset=we.y|0),_f(we.data)&&(Ue=we.data)),we.copy){var ft=jr.viewportWidth,Xt=jr.viewportHeight;ne.width=ne.width||ft-ne.xOffset,ne.height=ne.height||Xt-ne.yOffset,ne.needsCopy=!0}else if(!Ue)ne.width=ne.width||1,ne.height=ne.height||1,ne.channels=ne.channels||4;else if(Br(Ue))ne.channels=ne.channels||4,ne.data=Ue,!("type"in we)&&ne.type===Ns&&(ne.type=Yc(Ue));else if(af(Ue))ne.channels=ne.channels||4,eh(ne,Ue),ne.alignment=1,ne.needsFree=!0;else if(Vr(Ue)){var hr=Ue.data;!Array.isArray(hr)&&ne.type===Ns&&(ne.type=Yc(hr));var qt=Ue.shape,Ve=Ue.stride,Qe,at,Ct,Ot,Rt,Bt;qt.length===3?(Ct=qt[2],Bt=Ve[2]):(Ct=1,Bt=1),Qe=qt[0],at=qt[1],Ot=Ve[0],Rt=Ve[1],ne.alignment=1,ne.width=Qe,ne.height=at,ne.channels=Ct,ne.format=ne.internalformat=Hs[Ct],ne.needsFree=!0,Hf(ne,hr,Ot,Rt,Bt,Ue.offset)}else if(Gf(Ue)||Ic(Ue)||yf(Ue))Gf(Ue)||Ic(Ue)?ne.element=Ue:ne.element=Ue.canvas,ne.width=ne.element.width,ne.height=ne.element.height,ne.channels=4;else if(Bl(Ue))ne.element=Ue,ne.width=Ue.width,ne.height=Ue.height,ne.channels=4;else if(wh(Ue))ne.element=Ue,ne.width=Ue.naturalWidth,ne.height=Ue.naturalHeight,ne.channels=4;else if(Qf(Ue))ne.element=Ue,ne.width=Ue.videoWidth,ne.height=Ue.videoHeight,ne.channels=4;else if(Hu(Ue)){var Dt=ne.width||Ue[0].length,yt=ne.height||Ue.length,Pt=ne.channels;Mn(Ue[0][0])?Pt=Pt||Ue[0][0].length:Pt=Pt||1;for(var ht=Ge.shape(Ue),ur=1,br=0;br>=Xt,Ue.height>>=Xt,Ni(Ue,ft[Xt]),ne.mipmask|=1<=0&&!("faces"in we)&&(ne.genMipmaps=!0)}if("mag"in we){var ft=we.mag;ne.magFilter=qi[ft]}var Xt=ne.wrapS,hr=ne.wrapT;if("wrap"in we){var qt=we.wrap;typeof qt=="string"?Xt=hr=Ui[qt]:Array.isArray(qt)&&(Xt=Ui[qt[0]],hr=Ui[qt[1]])}else{if("wrapS"in we){var Ve=we.wrapS;Xt=Ui[Ve]}if("wrapT"in we){var Qe=we.wrapT;hr=Ui[Qe]}}if(ne.wrapS=Xt,ne.wrapT=hr,"anisotropic"in we){var at=we.anisotropic;ne.anisotropic=we.anisotropic}if("mipmap"in we){var Ct=!1;switch(typeof we.mipmap){case"string":ne.mipmapHint=mi[we.mipmap],ne.genMipmaps=!0,Ct=!0;break;case"boolean":Ct=ne.genMipmaps=we.mipmap;break;case"object":ne.genMipmaps=!1,Ct=!0;break;default:}Ct&&!("min"in we)&&(ne.minFilter=Kl)}}function al(ne,we){Me.texParameteri(we,Uf,ne.minFilter),Me.texParameteri(we,rf,ne.magFilter),Me.texParameteri(we,Oo,ne.wrapS),Me.texParameteri(we,qo,ne.wrapT),bt.ext_texture_filter_anisotropic&&Me.texParameteri(we,cs,ne.anisotropic),ne.genMipmaps&&(Me.hint(Cf,ne.mipmapHint),Me.generateMipmap(we))}var Vl=0,ss={},Vs=zt.maxTextureUnits,Ys=Array(Vs).map(function(){return null});function wa(ne){hi.call(this),this.mipmask=0,this.internalformat=Ma,this.id=Vl++,this.refCount=1,this.target=ne,this.texture=Me.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new zo,Gr.profile&&(this.stats={size:0})}function ol(ne){Me.activeTexture(Fu),Me.bindTexture(ne.target,ne.texture)}function io(){var ne=Ys[0];ne?Me.bindTexture(ne.target,ne.texture):Me.bindTexture(_n,null)}function Y(ne){var we=ne.texture,Ue=ne.unit,ft=ne.target;Ue>=0&&(Me.activeTexture(Fu+Ue),Me.bindTexture(ft,null),Ys[Ue]=null),Me.deleteTexture(we),ne.texture=null,ne.params=null,ne.pixels=null,ne.refCount=0,delete ss[ne.id],Nr.textureCount--}e(wa.prototype,{bind:function(){var ne=this;ne.bindCount+=1;var we=ne.unit;if(we<0){for(var Ue=0;Ue0)continue;ft.unit=-1}Ys[Ue]=ne,we=Ue;break}we>=Vs,Gr.profile&&Nr.maxTextureUnits>Rt)-Ct,Bt.height=Bt.height||(Ue.height>>Rt)-Ot,ol(Ue),Vn(Bt,_n,Ct,Ot,Rt),io(),kn(Bt),ft}function hr(qt,Ve){var Qe=qt|0,at=Ve|0||Qe;if(Qe===Ue.width&&at===Ue.height)return ft;ft.width=Ue.width=Qe,ft.height=Ue.height=at,ol(Ue);for(var Ct=0;Ue.mipmask>>Ct;++Ct){var Ot=Qe>>Ct,Rt=at>>Ct;if(!Ot||!Rt)break;Me.texImage2D(_n,Ct,Ue.format,Ot,Rt,0,Ue.format,Ue.type,null)}return io(),Gr.profile&&(Ue.stats.size=cc(Ue.internalformat,Ue.type,Qe,at,!1,!1)),ft}return ft(ne,we),ft.subimage=Xt,ft.resize=hr,ft._reglType="texture2d",ft._texture=Ue,Gr.profile&&(ft.stats=Ue.stats),ft.destroy=function(){Ue.decRef()},ft}function J(ne,we,Ue,ft,Xt,hr){var qt=new wa(ya);ss[qt.id]=qt,Nr.cubeCount++;var Ve=new Array(6);function Qe(Ot,Rt,Bt,Dt,yt,Pt){var ht,ur=qt.texInfo;for(zo.call(ur),ht=0;ht<6;++ht)Ve[ht]=Va();if(typeof Ot=="number"||!Ot){var br=Ot|0||1;for(ht=0;ht<6;++ht)oa(Ve[ht],br,br)}else if(typeof Ot=="object")if(Rt)ba(Ve[0],Ot),ba(Ve[1],Rt),ba(Ve[2],Bt),ba(Ve[3],Dt),ba(Ve[4],yt),ba(Ve[5],Pt);else if(Qs(ur,Ot),mn(qt,Ot),"faces"in Ot){var Ur=Ot.faces;for(ht=0;ht<6;++ht)li(Ve[ht],qt),ba(Ve[ht],Ur[ht])}else for(ht=0;ht<6;++ht)ba(Ve[ht],Ot);for(li(qt,Ve[0]),ur.genMipmaps?qt.mipmask=(Ve[0].width<<1)-1:qt.mipmask=Ve[0].mipmask,qt.internalformat=Ve[0].internalformat,Qe.width=Ve[0].width,Qe.height=Ve[0].height,ol(qt),ht=0;ht<6;++ht)is(Ve[ht],Jn+ht);for(al(ur,ya),io(),Gr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,Qe.width,Qe.height,ur.genMipmaps,!0)),Qe.format=xi[qt.internalformat],Qe.type=Ri[qt.type],Qe.mag=ci[ur.magFilter],Qe.min=an[ur.minFilter],Qe.wrapS=Zi[ur.wrapS],Qe.wrapT=Zi[ur.wrapT],ht=0;ht<6;++ht)Ml(Ve[ht]);return Qe}function at(Ot,Rt,Bt,Dt,yt){var Pt=Bt|0,ht=Dt|0,ur=yt|0,br=Ki();return li(br,qt),br.width=0,br.height=0,Ni(br,Rt),br.width=br.width||(qt.width>>ur)-Pt,br.height=br.height||(qt.height>>ur)-ht,ol(qt),Vn(br,Jn+Ot,Pt,ht,ur),io(),kn(br),Qe}function Ct(Ot){var Rt=Ot|0;if(Rt!==qt.width){Qe.width=qt.width=Rt,Qe.height=qt.height=Rt,ol(qt);for(var Bt=0;Bt<6;++Bt)for(var Dt=0;qt.mipmask>>Dt;++Dt)Me.texImage2D(Jn+Bt,Dt,qt.format,Rt>>Dt,Rt>>Dt,0,qt.format,qt.type,null);return io(),Gr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,Qe.width,Qe.height,!1,!0)),Qe}}return Qe(ne,we,Ue,ft,Xt,hr),Qe.subimage=at,Qe.resize=Ct,Qe._reglType="textureCube",Qe._texture=qt,Gr.profile&&(Qe.stats=qt.stats),Qe.destroy=function(){qt.decRef()},Qe}function q(){for(var ne=0;ne>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);else for(var Xt=0;Xt<6;++Xt)Me.texImage2D(Jn+Xt,ft,Ue.internalformat,Ue.width>>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);al(Ue.texInfo,Ue.target)})}function de(){for(var ne=0;ne=0?Ml=!0:Ui.indexOf(zo)>=0&&(Ml=!1))),("depthTexture"in wa||"depthStencilTexture"in wa)&&(Ys=!!(wa.depthTexture||wa.depthStencilTexture)),"depth"in wa&&(typeof wa.depth=="boolean"?is=wa.depth:(Vl=wa.depth,Zs=!1)),"stencil"in wa&&(typeof wa.stencil=="boolean"?Zs=wa.stencil:(ss=wa.stencil,is=!1)),"depthStencil"in wa&&(typeof wa.depthStencil=="boolean"?is=Zs=wa.depthStencil:(Vs=wa.depthStencil,is=!1,Zs=!1))}var io=null,Y=null,D=null,J=null;if(Array.isArray(Va))io=Va.map(si);else if(Va)io=[si(Va)];else for(io=new Array(al),ta=0;ta0&&(kn.depth=Ni[0].depth,kn.stencil=Ni[0].stencil,kn.depthStencil=Ni[0].depthStencil),Ni[Ki]?Ni[Ki](kn):Ni[Ki]=li(kn)}return e(pn,{width:ta,height:ta,color:zo})}function Vn(na){var Ki,kn=na|0;if(kn===pn.width)return pn;var ta=pn.color;for(Ki=0;Ki=ta.byteLength?oa.subdata(ta):(oa.destroy(),li.buffers[na]=null)),li.buffers[na]||(oa=li.buffers[na]=jr.create(Ki,If,!1,!0)),kn.buffer=jr.getBuffer(oa),kn.size=kn.buffer.dimension|0,kn.normalized=!1,kn.type=kn.buffer.dtype,kn.offset=0,kn.stride=0,kn.divisor=0,kn.state=1,pn[na]=1}else jr.getBuffer(Ki)?(kn.buffer=jr.getBuffer(Ki),kn.size=kn.buffer.dimension|0,kn.normalized=!1,kn.type=kn.buffer.dtype,kn.offset=0,kn.stride=0,kn.divisor=0,kn.state=1):jr.getBuffer(Ki.buffer)?(kn.buffer=jr.getBuffer(Ki.buffer),kn.size=(+Ki.size||kn.buffer.dimension)|0,kn.normalized=!!Ki.normalized||!1,"type"in Ki?kn.type=ji[Ki.type]:kn.type=kn.buffer.dtype,kn.offset=(Ki.offset||0)|0,kn.stride=(Ki.stride||0)|0,kn.divisor=(Ki.divisor||0)|0,kn.state=1):"x"in Ki&&(kn.x=+Ki.x||0,kn.y=+Ki.y||0,kn.z=+Ki.z||0,kn.w=+Ki.w||0,kn.state=2)}for(var ba=0;ba1)for(var Ji=0;JiMr&&(Mr=Yr.stats.uniformsCount)}),Mr},zt.getMaxAttributesCount=function(){var Mr=0;return Ei.forEach(function(Yr){Yr.stats.attributesCount>Mr&&(Mr=Yr.stats.attributesCount)}),Mr});function si(){jr={},Nr={};for(var Mr=0;Mr16&&(zt=Yi(zt,Me.length*8));for(var Rr=Array(16),jr=Array(16),Nr=0;Nr<16;Nr++)Rr[Nr]=zt[Nr]^909522486,jr[Nr]=zt[Nr]^1549556828;var Gr=Yi(Rr.concat(Bc(bt)),512+bt.length*8);return At(Yi(jr.concat(Gr),768))}function vu(Me){for(var bt=ah?"0123456789ABCDEF":"0123456789abcdef",zt="",Rr,jr=0;jr>>4&15)+bt.charAt(Rr&15);return zt}function qc(Me){for(var bt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",zt="",Rr=Me.length,jr=0;jrMe.length*8?zt+=Zu:zt+=bt.charAt(Nr>>>6*(3-Gr)&63);return zt}function cf(Me,bt){var zt=bt.length,Rr=Array(),jr,Nr,Gr,mi,Ui=Array(Math.ceil(Me.length/2));for(jr=0;jr0;){for(mi=Array(),Gr=0,jr=0;jr0||Nr>0)&&(mi[mi.length]=Nr);Rr[Rr.length]=Gr,Ui=mi}var qi="";for(jr=Rr.length-1;jr>=0;jr--)qi+=bt.charAt(Rr[jr]);var Ei=Math.ceil(Me.length*8/(Math.log(bt.length)/Math.log(2)));for(jr=qi.length;jr>>6&31,128|Rr&63):Rr<=65535?bt+=String.fromCharCode(224|Rr>>>12&15,128|Rr>>>6&63,128|Rr&63):Rr<=2097151&&(bt+=String.fromCharCode(240|Rr>>>18&7,128|Rr>>>12&63,128|Rr>>>6&63,128|Rr&63));return bt}function Bc(Me){for(var bt=Array(Me.length>>2),zt=0;zt>5]|=(Me.charCodeAt(zt/8)&255)<<24-zt%32;return bt}function At(Me){for(var bt="",zt=0;zt>5]>>>24-zt%32&255);return bt}function Wt(Me,bt){return Me>>>bt|Me<<32-bt}function Cr(Me,bt){return Me>>>bt}function Ar(Me,bt,zt){return Me&bt^~Me&zt}function Kr(Me,bt,zt){return Me&bt^Me&zt^bt&zt}function ki(Me){return Wt(Me,2)^Wt(Me,13)^Wt(Me,22)}function Xi(Me){return Wt(Me,6)^Wt(Me,11)^Wt(Me,25)}function dn(Me){return Wt(Me,7)^Wt(Me,18)^Cr(Me,3)}function wn(Me){return Wt(Me,17)^Wt(Me,19)^Cr(Me,10)}var Nn=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function Yi(Me,bt){var zt=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),Rr=new Array(64),jr,Nr,Gr,mi,Ui,qi,Ei,Hn,en,Wi,si,Mr;for(Me[bt>>5]|=128<<24-bt%32,Me[(bt+64>>9<<4)+15]=bt,en=0;en>16)+(bt>>16)+(zt>>16);return Rr<<16|zt&65535}function on(Me){return Array.prototype.slice.call(Me)}function Fi(Me){return on(Me).join("")}function $n(Me){var bt=Me&&Me.cache,zt=0,Rr=[],jr=[],Nr=[];function Gr(si,Mr){var Yr=Mr&&Mr.stable;if(!Yr){for(var xi=0;xi0&&(si.push(Ri,"="),si.push.apply(si,on(arguments)),si.push(";")),Ri}return e(Mr,{def:xi,toString:function(){return Fi([Yr.length>0?"var "+Yr.join(",")+";":"",Fi(si)])}})}function Ui(){var si=mi(),Mr=mi(),Yr=si.toString,xi=Mr.toString;function Ri(ci,an){Mr(ci,an,"=",si.def(ci,an),";")}return e(function(){si.apply(si,on(arguments))},{def:si.def,entry:si,exit:Mr,save:Ri,set:function(ci,an,Zi){Ri(ci,an),si(ci,an,"=",Zi,";")},toString:function(){return Yr()+xi()}})}function qi(){var si=Fi(arguments),Mr=Ui(),Yr=Ui(),xi=Mr.toString,Ri=Yr.toString;return e(Mr,{then:function(){return Mr.apply(Mr,on(arguments)),this},else:function(){return Yr.apply(Yr,on(arguments)),this},toString:function(){var ci=Ri();return ci&&(ci="else{"+ci+"}"),Fi(["if(",si,"){",xi(),"}",ci])}})}var Ei=mi(),Hn={};function en(si,Mr){var Yr=[];function xi(){var Bn="a"+Yr.length;return Yr.push(Bn),Bn}Mr=Mr||0;for(var Ri=0;Ri2){for(var a=Array(t.position.length*.5),o=0;o2){for(var u=!t.position[0].length,c=dx.mallocFloat(this.count*2),f=0,h=0;f1?r.align[me]:r.align[0]:r.align;if(typeof ie=="number")return ie;switch(ie){case"right":case"end":return-Ce;case"center":case"centre":case"middle":return-Ce*.5}return 0})),this.baseline==null&&t.baseline==null&&(t.baseline=0),t.baseline!=null&&(this.baseline=t.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map(function(Ce,me){var ie=(r.font[me]||r.font[0]).metrics,Se=0;return Se+=ie.bottom*.5,typeof Ce=="number"?Se+=Ce-ie.baseline:Se+=-ie[Ce],Se*=-1,Se})),t.color!=null)if(t.color||(t.color="transparent"),typeof t.color=="string"||!isNaN(t.color))this.color=lK(t.color,"uint8");else{var G;if(typeof t.color[0]=="number"&&t.color.length>this.counts.length){var Z=t.color.length;G=dx.mallocUint8(Z);for(var j=(t.color.subarray||t.color.slice).bind(t.color),N=0;N4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2;if(oe){var _e=Math.max(this.position.length*.5||0,this.color.length*.25||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,this.positionOffset.length*.5||0);this.batch=Array(_e);for(var Ee=0;Ee1?this.counts[Ee]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[Ee]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(Ee*4,Ee*4+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[Ee]:this.opacity,baseline:this.baselineOffset[Ee]!=null?this.baselineOffset[Ee]:this.baselineOffset[0],align:this.align?this.alignOffset[Ee]!=null?this.alignOffset[Ee]:this.alignOffset[0]:0,atlas:this.fontAtlas[Ee]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(Ee*2,Ee*2+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]}};xc.prototype.destroy=function(){};xc.prototype.kerning=!0;xc.prototype.position={constant:new Float32Array(2)};xc.prototype.translate=null;xc.prototype.scale=null;xc.prototype.font=null;xc.prototype.text="";xc.prototype.positionOffset=[0,0];xc.prototype.opacity=1;xc.prototype.color=new Uint8Array([0,0,0,255]);xc.prototype.alignOffset=[0,0];xc.maxAtlasSize=1024;xc.atlasCanvas=document.createElement("canvas");xc.atlasContext=xc.atlasCanvas.getContext("2d",{alpha:!1});xc.baseFontSize=64;xc.fonts={};function DUt(e){return typeof e=="function"&&e._gl&&e.prop&&e.texture&&e.buffer}MBe.exports=xc});var kBe=ye((uK,cK)=>{(function(e,t){typeof uK=="object"&&typeof cK!="undefined"?cK.exports=t():e.createREGL=t()})(uK,function(){"use strict";var e=function(Me,bt){for(var zt=Object.keys(bt),Rr=0;Rr1&&bt===zt&&(bt==='"'||bt==="'"))return['"'+o(Me.substr(1,Me.length-2))+'"'];var Rr=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Me);if(Rr)return s(Me.substr(0,Rr.index)).concat(s(Rr[1])).concat(s(Me.substr(Rr.index+Rr[0].length)));var jr=Me.split(".");if(jr.length===1)return['"'+o(Me)+'"'];for(var Nr=[],Gr=0;Gr65535)<<4,Me>>>=bt,zt=(Me>255)<<3,Me>>>=zt,bt|=zt,zt=(Me>15)<<2,Me>>>=zt,bt|=zt,zt=(Me>3)<<1,Me>>>=zt,bt|=zt,bt|Me>>1}function N(){var Me=M(8,function(){return[]});function bt(Nr){var Gr=Z(Nr),mi=Me[j(Gr)>>2];return mi.length>0?mi.pop():new ArrayBuffer(Gr)}function zt(Nr){Me[j(Nr.byteLength)>>2].push(Nr)}function Rr(Nr,Gr){var mi=null;switch(Nr){case g:mi=new Int8Array(bt(Gr),0,Gr);break;case P:mi=new Uint8Array(bt(Gr),0,Gr);break;case T:mi=new Int16Array(bt(2*Gr),0,Gr);break;case z:mi=new Uint16Array(bt(2*Gr),0,Gr);break;case O:mi=new Int32Array(bt(4*Gr),0,Gr);break;case V:mi=new Uint32Array(bt(4*Gr),0,Gr);break;case G:mi=new Float32Array(bt(4*Gr),0,Gr);break;default:return null}return mi.length!==Gr?mi.subarray(0,Gr):mi}function jr(Nr){zt(Nr.buffer)}return{alloc:bt,free:zt,allocType:Rr,freeType:jr}}var H=N();H.zero=N();var te=3408,oe=3410,_e=3411,Ee=3412,Ce=3413,me=3414,ie=3415,Se=33901,Le=33902,Ae=3379,Fe=3386,Pe=34921,ge=36347,Re=36348,ce=35661,Ze=35660,ut=34930,pt=36349,Zt=34076,st=34024,lt=7936,Gt=7937,Nt=7938,Jt=35724,sr=34047,wr=36063,cr=34852,$e=3553,St=34067,Qt=34069,Vt=33984,_t=6408,It=5126,mt=5121,er=36160,lr=36053,Tr=36064,Lr=16384,ti=function(Me,bt){var zt=1;bt.ext_texture_filter_anisotropic&&(zt=Me.getParameter(sr));var Rr=1,jr=1;bt.webgl_draw_buffers&&(Rr=Me.getParameter(cr),jr=Me.getParameter(wr));var Nr=!!bt.oes_texture_float;if(Nr){var Gr=Me.createTexture();Me.bindTexture($e,Gr),Me.texImage2D($e,0,_t,1,1,0,_t,It,null);var mi=Me.createFramebuffer();if(Me.bindFramebuffer(er,mi),Me.framebufferTexture2D(er,Tr,$e,Gr,0),Me.bindTexture($e,null),Me.checkFramebufferStatus(er)!==lr)Nr=!1;else{Me.viewport(0,0,1,1),Me.clearColor(1,0,0,1),Me.clear(Lr);var Ui=H.allocType(It,4);Me.readPixels(0,0,1,1,_t,It,Ui),Me.getError()?Nr=!1:(Me.deleteFramebuffer(mi),Me.deleteTexture(Gr),Nr=Ui[0]===1),H.freeType(Ui)}}var qi=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),Ei=!0;if(!qi){var Hn=Me.createTexture(),en=H.allocType(mt,36);Me.activeTexture(Vt),Me.bindTexture(St,Hn),Me.texImage2D(Qt,0,_t,3,3,0,_t,mt,en),H.freeType(en),Me.bindTexture(St,null),Me.deleteTexture(Hn),Ei=!Me.getError()}return{colorBits:[Me.getParameter(oe),Me.getParameter(_e),Me.getParameter(Ee),Me.getParameter(Ce)],depthBits:Me.getParameter(me),stencilBits:Me.getParameter(ie),subpixelBits:Me.getParameter(te),extensions:Object.keys(bt).filter(function(Wi){return!!bt[Wi]}),maxAnisotropic:zt,maxDrawbuffers:Rr,maxColorAttachments:jr,pointSizeDims:Me.getParameter(Se),lineWidthDims:Me.getParameter(Le),maxViewportDims:Me.getParameter(Fe),maxCombinedTextureUnits:Me.getParameter(ce),maxCubeMapSize:Me.getParameter(Zt),maxRenderbufferSize:Me.getParameter(st),maxTextureUnits:Me.getParameter(ut),maxTextureSize:Me.getParameter(Ae),maxAttributes:Me.getParameter(Pe),maxVertexUniforms:Me.getParameter(ge),maxVertexTextureUnits:Me.getParameter(Ze),maxVaryingVectors:Me.getParameter(Re),maxFragmentUniforms:Me.getParameter(pt),glsl:Me.getParameter(Jt),renderer:Me.getParameter(Gt),vendor:Me.getParameter(lt),version:Me.getParameter(Nt),readFloat:Nr,npotTextureCube:Ei}},Br=function(Me){return Me instanceof Uint8Array||Me instanceof Uint16Array||Me instanceof Uint32Array||Me instanceof Int8Array||Me instanceof Int16Array||Me instanceof Int32Array||Me instanceof Float32Array||Me instanceof Float64Array||Me instanceof Uint8ClampedArray};function Vr(Me){return!!Me&&typeof Me=="object"&&Array.isArray(Me.shape)&&Array.isArray(Me.stride)&&typeof Me.offset=="number"&&Me.shape.length===Me.stride.length&&(Array.isArray(Me.data)||Br(Me.data))}var dt=function(Me){return Object.keys(Me).map(function(bt){return Me[bt]})},Ge={shape:xe,flatten:Ie};function Je(Me,bt,zt){for(var Rr=0;Rr0){var Bn;if(Array.isArray(Yr[0])){Zi=Fn(Yr);for(var hi=1,li=1;li0){if(typeof hi[0]=="number"){var Vi=H.allocType(ci.dtype,hi.length);Er(Vi,hi),Zi(Vi,mn),H.freeType(Vi)}else if(Array.isArray(hi[0])||Br(hi[0])){Ji=Fn(hi);var Ni=qn(hi,Ji,ci.dtype);Zi(Ni,mn),H.freeType(Ni)}}}else if(Vr(hi)){Ji=hi.shape;var pn=hi.stride,Vn=0,na=0,Ki=0,kn=0;Ji.length===1?(Vn=Ji[0],na=1,Ki=pn[0],kn=0):Ji.length===2&&(Vn=Ji[0],na=Ji[1],Ki=pn[0],kn=pn[1]);var ta=Array.isArray(hi.data)?ci.dtype:nr(hi.data),oa=H.allocType(ta,Vn*na);Xr(oa,hi.data,Vn,na,Ki,kn,hi.offset),Zi(oa,mn),H.freeType(oa)}return an}return xi||an(Mr),an._reglType="buffer",an._buffer=ci,an.subdata=Bn,zt.profile&&(an.stats=ci.stats),an.destroy=function(){en(ci)},an}function si(){dt(Nr).forEach(function(Mr){Mr.buffer=Me.createBuffer(),Me.bindBuffer(Mr.type,Mr.buffer),Me.bufferData(Mr.type,Mr.persistentData||Mr.byteLength,Mr.usage)})}return zt.profile&&(bt.getTotalBufferSize=function(){var Mr=0;return Object.keys(Nr).forEach(function(Yr){Mr+=Nr[Yr].stats.size}),Mr}),{create:Wi,createStream:Ui,destroyStream:qi,clear:function(){dt(Nr).forEach(en),mi.forEach(en)},getBuffer:function(Mr){return Mr&&Mr._buffer instanceof Gr?Mr._buffer:null},restore:si,_initBuffer:Hn}}var Qr=0,Oi=0,$i=1,tn=1,fn=4,yn=4,Sn={points:Qr,point:Oi,lines:$i,line:tn,triangles:fn,triangle:yn,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ba=0,ua=1,ma=4,Wa=5120,Fa=5121,Wo=5122,da=5123,Wn=5124,Ha=5125,vo=34963,jn=35040,Mt=35044;function kr(Me,bt,zt,Rr){var jr={},Nr=0,Gr={uint8:Fa,uint16:da};bt.oes_element_index_uint&&(Gr.uint32=Ha);function mi(si){this.id=Nr++,jr[this.id]=this,this.buffer=si,this.primType=ma,this.vertCount=0,this.type=0}mi.prototype.bind=function(){this.buffer.bind()};var Ui=[];function qi(si){var Mr=Ui.pop();return Mr||(Mr=new mi(zt.create(null,vo,!0,!1)._buffer)),Hn(Mr,si,jn,-1,-1,0,0),Mr}function Ei(si){Ui.push(si)}function Hn(si,Mr,Yr,xi,Ri,ci,an){si.buffer.bind();var Zi;if(Mr){var Bn=an;!an&&(!Br(Mr)||Vr(Mr)&&!Br(Mr.data))&&(Bn=bt.oes_element_index_uint?Ha:da),zt._initBuffer(si.buffer,Mr,Yr,Bn,3)}else Me.bufferData(vo,ci,Yr),si.buffer.dtype=Zi||Fa,si.buffer.usage=Yr,si.buffer.dimension=3,si.buffer.byteLength=ci;if(Zi=an,!an){switch(si.buffer.dtype){case Fa:case Wa:Zi=Fa;break;case da:case Wo:Zi=da;break;case Ha:case Wn:Zi=Ha;break;default:}si.buffer.dtype=Zi}si.type=Zi;var hi=Ri;hi<0&&(hi=si.buffer.byteLength,Zi===da?hi>>=1:Zi===Ha&&(hi>>=2)),si.vertCount=hi;var li=xi;if(xi<0){li=ma;var mn=si.buffer.dimension;mn===1&&(li=Ba),mn===2&&(li=ua),mn===3&&(li=ma)}si.primType=li}function en(si){Rr.elementsCount--,delete jr[si.id],si.buffer.destroy(),si.buffer=null}function Wi(si,Mr){var Yr=zt.create(null,vo,!0),xi=new mi(Yr._buffer);Rr.elementsCount++;function Ri(ci){if(!ci)Yr(),xi.primType=ma,xi.vertCount=0,xi.type=Fa;else if(typeof ci=="number")Yr(ci),xi.primType=ma,xi.vertCount=ci|0,xi.type=Fa;else{var an=null,Zi=Mt,Bn=-1,hi=-1,li=0,mn=0;Array.isArray(ci)||Br(ci)||Vr(ci)?an=ci:("data"in ci&&(an=ci.data),"usage"in ci&&(Zi=On[ci.usage]),"primitive"in ci&&(Bn=Sn[ci.primitive]),"count"in ci&&(hi=ci.count|0),"type"in ci&&(mn=Gr[ci.type]),"length"in ci?li=ci.length|0:(li=hi,mn===da||mn===Wo?li*=2:(mn===Ha||mn===Wn)&&(li*=4))),Hn(xi,an,Zi,Bn,hi,li,mn)}return Ri}return Ri(si),Ri._reglType="elements",Ri._elements=xi,Ri.subdata=function(ci,an){return Yr.subdata(ci,an),Ri},Ri.destroy=function(){en(xi)},Ri}return{create:Wi,createStream:qi,destroyStream:Ei,getElements:function(si){return typeof si=="function"&&si._elements instanceof mi?si._elements:null},clear:function(){dt(jr).forEach(en)}}}var Jr=new Float32Array(1),vi=new Uint32Array(Jr.buffer),hn=5123;function An(Me){for(var bt=H.allocType(hn,Me.length),zt=0;zt>>31<<15,Nr=(Rr<<1>>>24)-127,Gr=Rr>>13&1023;if(Nr<-24)bt[zt]=jr;else if(Nr<-14){var mi=-14-Nr;bt[zt]=jr+(Gr+1024>>mi)}else Nr>15?bt[zt]=jr+31744:bt[zt]=jr+(Nr+15<<10)+Gr}return bt}function Mn(Me){return Array.isArray(Me)||Br(Me)}var Li=34467,_n=3553,ya=34067,Jn=34069,Ma=6408,_o=6406,No=6407,po=6409,Lo=6410,ko=32854,Ds=32855,Fs=36194,ll=32819,ul=32820,zl=33635,us=34042,il=6402,As=34041,cl=35904,Ks=35906,zs=36193,Io=33776,ls=33777,Zl=33778,Su=33779,nc=35986,bs=35987,Rn=34798,_a=35840,Vu=35841,Ol=35842,xo=35843,Yl=36196,Ns=5121,Hl=5123,ac=5125,aa=5126,Oo=10242,qo=10243,ql=10497,Pc=33071,Do=33648,rf=10240,Uf=10241,pl=9728,Zc=9729,Kl=9984,Os=9985,yu=9986,oc=9987,Cf=33170,sc=4352,Vh=4353,Lf=4354,cs=34046,nf=3317,Vf=37440,Jl=37441,fl=37443,lc=37444,Fu=33984,Es=[Kl,yu,Os,oc],Hs=[0,po,Lo,No,Ma],Go={};Go[po]=Go[_o]=Go[il]=1,Go[As]=Go[Lo]=2,Go[No]=Go[cl]=3,Go[Ma]=Go[Ks]=4;function ps(Me){return"[object "+Me+"]"}var uc=ps("HTMLCanvasElement"),xl=ps("OffscreenCanvas"),Gu=ps("CanvasRenderingContext2D"),qs=ps("ImageBitmap"),ad=ps("HTMLImageElement"),Po=ps("HTMLVideoElement"),od=Object.keys(ke).concat([uc,xl,Gu,qs,ad,Po]),Yo=[];Yo[Ns]=1,Yo[aa]=4,Yo[zs]=2,Yo[Hl]=2,Yo[ac]=4;var Pa=[];Pa[ko]=2,Pa[Ds]=2,Pa[Fs]=2,Pa[As]=4,Pa[Io]=.5,Pa[ls]=.5,Pa[Zl]=1,Pa[Su]=1,Pa[nc]=.5,Pa[bs]=1,Pa[Rn]=1,Pa[_a]=.5,Pa[Vu]=.25,Pa[Ol]=.5,Pa[xo]=.25,Pa[Yl]=.5;function af(Me){return Array.isArray(Me)&&(Me.length===0||typeof Me[0]=="number")}function Hu(Me){if(!Array.isArray(Me))return!1;var bt=Me.length;return!(bt===0||!Mn(Me[0]))}function bl(Me){return Object.prototype.toString.call(Me)}function Gf(Me){return bl(Me)===uc}function Ic(Me){return bl(Me)===xl}function yf(Me){return bl(Me)===Gu}function Bl(Me){return bl(Me)===qs}function wh(Me){return bl(Me)===ad}function Qf(Me){return bl(Me)===Po}function _f(Me){if(!Me)return!1;var bt=bl(Me);return od.indexOf(bt)>=0?!0:af(Me)||Hu(Me)||Vr(Me)}function Yc(Me){return ke[Object.prototype.toString.call(Me)]|0}function eh(Me,bt){var zt=bt.length;switch(Me.type){case Ns:case Hl:case ac:case aa:var Rr=H.allocType(Me.type,zt);Rr.set(bt),Me.data=Rr;break;case zs:Me.data=An(bt);break;default:}}function th(Me,bt){return H.allocType(Me.type===zs?aa:Me.type,bt)}function ju(Me,bt){Me.type===zs?(Me.data=An(bt),H.freeType(bt)):Me.data=bt}function Hf(Me,bt,zt,Rr,jr,Nr){for(var Gr=Me.width,mi=Me.height,Ui=Me.channels,qi=Gr*mi*Ui,Ei=th(Me,qi),Hn=0,en=0;en=1;)mi+=Gr*Ui*Ui,Ui/=2;return mi}else return Gr*zt*Rr}function of(Me,bt,zt,Rr,jr,Nr,Gr){var mi={"don't care":sc,"dont care":sc,nice:Lf,fast:Vh},Ui={repeat:ql,clamp:Pc,mirror:Do},qi={nearest:pl,linear:Zc},Ei=e({mipmap:oc,"nearest mipmap nearest":Kl,"linear mipmap nearest":Os,"nearest mipmap linear":yu,"linear mipmap linear":oc},qi),Hn={none:0,browser:lc},en={uint8:Ns,rgba4:ll,rgb565:zl,"rgb5 a1":ul},Wi={alpha:_o,luminance:po,"luminance alpha":Lo,rgb:No,rgba:Ma,rgba4:ko,"rgb5 a1":Ds,rgb565:Fs},si={};bt.ext_srgb&&(Wi.srgb=cl,Wi.srgba=Ks),bt.oes_texture_float&&(en.float32=en.float=aa),bt.oes_texture_half_float&&(en.float16=en["half float"]=zs),bt.webgl_depth_texture&&(e(Wi,{depth:il,"depth stencil":As}),e(en,{uint16:Hl,uint32:ac,"depth stencil":us})),bt.webgl_compressed_texture_s3tc&&e(si,{"rgb s3tc dxt1":Io,"rgba s3tc dxt1":ls,"rgba s3tc dxt3":Zl,"rgba s3tc dxt5":Su}),bt.webgl_compressed_texture_atc&&e(si,{"rgb atc":nc,"rgba atc explicit alpha":bs,"rgba atc interpolated alpha":Rn}),bt.webgl_compressed_texture_pvrtc&&e(si,{"rgb pvrtc 4bppv1":_a,"rgb pvrtc 2bppv1":Vu,"rgba pvrtc 4bppv1":Ol,"rgba pvrtc 2bppv1":xo}),bt.webgl_compressed_texture_etc1&&(si["rgb etc1"]=Yl);var Mr=Array.prototype.slice.call(Me.getParameter(Li));Object.keys(si).forEach(function(ne){var we=si[ne];Mr.indexOf(we)>=0&&(Wi[ne]=we)});var Yr=Object.keys(Wi);zt.textureFormats=Yr;var xi=[];Object.keys(Wi).forEach(function(ne){var we=Wi[ne];xi[we]=ne});var Ri=[];Object.keys(en).forEach(function(ne){var we=en[ne];Ri[we]=ne});var ci=[];Object.keys(qi).forEach(function(ne){var we=qi[ne];ci[we]=ne});var an=[];Object.keys(Ei).forEach(function(ne){var we=Ei[ne];an[we]=ne});var Zi=[];Object.keys(Ui).forEach(function(ne){var we=Ui[ne];Zi[we]=ne});var Bn=Yr.reduce(function(ne,we){var Ue=Wi[we];return Ue===po||Ue===_o||Ue===po||Ue===Lo||Ue===il||Ue===As||bt.ext_srgb&&(Ue===cl||Ue===Ks)?ne[Ue]=Ue:Ue===Ds||we.indexOf("rgba")>=0?ne[Ue]=Ma:ne[Ue]=No,ne},{});function hi(){this.internalformat=Ma,this.format=Ma,this.type=Ns,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=lc,this.width=0,this.height=0,this.channels=0}function li(ne,we){ne.internalformat=we.internalformat,ne.format=we.format,ne.type=we.type,ne.compressed=we.compressed,ne.premultiplyAlpha=we.premultiplyAlpha,ne.flipY=we.flipY,ne.unpackAlignment=we.unpackAlignment,ne.colorSpace=we.colorSpace,ne.width=we.width,ne.height=we.height,ne.channels=we.channels}function mn(ne,we){if(!(typeof we!="object"||!we)){if("premultiplyAlpha"in we&&(ne.premultiplyAlpha=we.premultiplyAlpha),"flipY"in we&&(ne.flipY=we.flipY),"alignment"in we&&(ne.unpackAlignment=we.alignment),"colorSpace"in we&&(ne.colorSpace=Hn[we.colorSpace]),"type"in we){var Ue=we.type;ne.type=en[Ue]}var ft=ne.width,Xt=ne.height,hr=ne.channels,qt=!1;"shape"in we?(ft=we.shape[0],Xt=we.shape[1],we.shape.length===3&&(hr=we.shape[2],qt=!0)):("radius"in we&&(ft=Xt=we.radius),"width"in we&&(ft=we.width),"height"in we&&(Xt=we.height),"channels"in we&&(hr=we.channels,qt=!0)),ne.width=ft|0,ne.height=Xt|0,ne.channels=hr|0;var Ve=!1;if("format"in we){var Qe=we.format,at=ne.internalformat=Wi[Qe];ne.format=Bn[at],Qe in en&&("type"in we||(ne.type=en[Qe])),Qe in si&&(ne.compressed=!0),Ve=!0}!qt&&Ve?ne.channels=Go[ne.format]:qt&&!Ve&&ne.channels!==Hs[ne.format]&&(ne.format=ne.internalformat=Hs[ne.channels])}}function Ji(ne){Me.pixelStorei(Vf,ne.flipY),Me.pixelStorei(Jl,ne.premultiplyAlpha),Me.pixelStorei(fl,ne.colorSpace),Me.pixelStorei(nf,ne.unpackAlignment)}function Vi(){hi.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function Ni(ne,we){var Ue=null;if(_f(we)?Ue=we:we&&(mn(ne,we),"x"in we&&(ne.xOffset=we.x|0),"y"in we&&(ne.yOffset=we.y|0),_f(we.data)&&(Ue=we.data)),we.copy){var ft=jr.viewportWidth,Xt=jr.viewportHeight;ne.width=ne.width||ft-ne.xOffset,ne.height=ne.height||Xt-ne.yOffset,ne.needsCopy=!0}else if(!Ue)ne.width=ne.width||1,ne.height=ne.height||1,ne.channels=ne.channels||4;else if(Br(Ue))ne.channels=ne.channels||4,ne.data=Ue,!("type"in we)&&ne.type===Ns&&(ne.type=Yc(Ue));else if(af(Ue))ne.channels=ne.channels||4,eh(ne,Ue),ne.alignment=1,ne.needsFree=!0;else if(Vr(Ue)){var hr=Ue.data;!Array.isArray(hr)&&ne.type===Ns&&(ne.type=Yc(hr));var qt=Ue.shape,Ve=Ue.stride,Qe,at,Ct,Ot,Rt,Bt;qt.length===3?(Ct=qt[2],Bt=Ve[2]):(Ct=1,Bt=1),Qe=qt[0],at=qt[1],Ot=Ve[0],Rt=Ve[1],ne.alignment=1,ne.width=Qe,ne.height=at,ne.channels=Ct,ne.format=ne.internalformat=Hs[Ct],ne.needsFree=!0,Hf(ne,hr,Ot,Rt,Bt,Ue.offset)}else if(Gf(Ue)||Ic(Ue)||yf(Ue))Gf(Ue)||Ic(Ue)?ne.element=Ue:ne.element=Ue.canvas,ne.width=ne.element.width,ne.height=ne.element.height,ne.channels=4;else if(Bl(Ue))ne.element=Ue,ne.width=Ue.width,ne.height=Ue.height,ne.channels=4;else if(wh(Ue))ne.element=Ue,ne.width=Ue.naturalWidth,ne.height=Ue.naturalHeight,ne.channels=4;else if(Qf(Ue))ne.element=Ue,ne.width=Ue.videoWidth,ne.height=Ue.videoHeight,ne.channels=4;else if(Hu(Ue)){var Dt=ne.width||Ue[0].length,yt=ne.height||Ue.length,Pt=ne.channels;Mn(Ue[0][0])?Pt=Pt||Ue[0][0].length:Pt=Pt||1;for(var ht=Ge.shape(Ue),ur=1,br=0;br>=Xt,Ue.height>>=Xt,Ni(Ue,ft[Xt]),ne.mipmask|=1<=0&&!("faces"in we)&&(ne.genMipmaps=!0)}if("mag"in we){var ft=we.mag;ne.magFilter=qi[ft]}var Xt=ne.wrapS,hr=ne.wrapT;if("wrap"in we){var qt=we.wrap;typeof qt=="string"?Xt=hr=Ui[qt]:Array.isArray(qt)&&(Xt=Ui[qt[0]],hr=Ui[qt[1]])}else{if("wrapS"in we){var Ve=we.wrapS;Xt=Ui[Ve]}if("wrapT"in we){var Qe=we.wrapT;hr=Ui[Qe]}}if(ne.wrapS=Xt,ne.wrapT=hr,"anisotropic"in we){var at=we.anisotropic;ne.anisotropic=we.anisotropic}if("mipmap"in we){var Ct=!1;switch(typeof we.mipmap){case"string":ne.mipmapHint=mi[we.mipmap],ne.genMipmaps=!0,Ct=!0;break;case"boolean":Ct=ne.genMipmaps=we.mipmap;break;case"object":ne.genMipmaps=!1,Ct=!0;break;default:}Ct&&!("min"in we)&&(ne.minFilter=Kl)}}function al(ne,we){Me.texParameteri(we,Uf,ne.minFilter),Me.texParameteri(we,rf,ne.magFilter),Me.texParameteri(we,Oo,ne.wrapS),Me.texParameteri(we,qo,ne.wrapT),bt.ext_texture_filter_anisotropic&&Me.texParameteri(we,cs,ne.anisotropic),ne.genMipmaps&&(Me.hint(Cf,ne.mipmapHint),Me.generateMipmap(we))}var Vl=0,ss={},Vs=zt.maxTextureUnits,Ys=Array(Vs).map(function(){return null});function wa(ne){hi.call(this),this.mipmask=0,this.internalformat=Ma,this.id=Vl++,this.refCount=1,this.target=ne,this.texture=Me.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new zo,Gr.profile&&(this.stats={size:0})}function ol(ne){Me.activeTexture(Fu),Me.bindTexture(ne.target,ne.texture)}function io(){var ne=Ys[0];ne?Me.bindTexture(ne.target,ne.texture):Me.bindTexture(_n,null)}function Y(ne){var we=ne.texture,Ue=ne.unit,ft=ne.target;Ue>=0&&(Me.activeTexture(Fu+Ue),Me.bindTexture(ft,null),Ys[Ue]=null),Me.deleteTexture(we),ne.texture=null,ne.params=null,ne.pixels=null,ne.refCount=0,delete ss[ne.id],Nr.textureCount--}e(wa.prototype,{bind:function(){var ne=this;ne.bindCount+=1;var we=ne.unit;if(we<0){for(var Ue=0;Ue0)continue;ft.unit=-1}Ys[Ue]=ne,we=Ue;break}we>=Vs,Gr.profile&&Nr.maxTextureUnits>Rt)-Ct,Bt.height=Bt.height||(Ue.height>>Rt)-Ot,ol(Ue),Vn(Bt,_n,Ct,Ot,Rt),io(),kn(Bt),ft}function hr(qt,Ve){var Qe=qt|0,at=Ve|0||Qe;if(Qe===Ue.width&&at===Ue.height)return ft;ft.width=Ue.width=Qe,ft.height=Ue.height=at,ol(Ue);for(var Ct=0;Ue.mipmask>>Ct;++Ct){var Ot=Qe>>Ct,Rt=at>>Ct;if(!Ot||!Rt)break;Me.texImage2D(_n,Ct,Ue.format,Ot,Rt,0,Ue.format,Ue.type,null)}return io(),Gr.profile&&(Ue.stats.size=cc(Ue.internalformat,Ue.type,Qe,at,!1,!1)),ft}return ft(ne,we),ft.subimage=Xt,ft.resize=hr,ft._reglType="texture2d",ft._texture=Ue,Gr.profile&&(ft.stats=Ue.stats),ft.destroy=function(){Ue.decRef()},ft}function J(ne,we,Ue,ft,Xt,hr){var qt=new wa(ya);ss[qt.id]=qt,Nr.cubeCount++;var Ve=new Array(6);function Qe(Ot,Rt,Bt,Dt,yt,Pt){var ht,ur=qt.texInfo;for(zo.call(ur),ht=0;ht<6;++ht)Ve[ht]=Va();if(typeof Ot=="number"||!Ot){var br=Ot|0||1;for(ht=0;ht<6;++ht)oa(Ve[ht],br,br)}else if(typeof Ot=="object")if(Rt)ba(Ve[0],Ot),ba(Ve[1],Rt),ba(Ve[2],Bt),ba(Ve[3],Dt),ba(Ve[4],yt),ba(Ve[5],Pt);else if(Qs(ur,Ot),mn(qt,Ot),"faces"in Ot){var Ur=Ot.faces;for(ht=0;ht<6;++ht)li(Ve[ht],qt),ba(Ve[ht],Ur[ht])}else for(ht=0;ht<6;++ht)ba(Ve[ht],Ot);for(li(qt,Ve[0]),ur.genMipmaps?qt.mipmask=(Ve[0].width<<1)-1:qt.mipmask=Ve[0].mipmask,qt.internalformat=Ve[0].internalformat,Qe.width=Ve[0].width,Qe.height=Ve[0].height,ol(qt),ht=0;ht<6;++ht)is(Ve[ht],Jn+ht);for(al(ur,ya),io(),Gr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,Qe.width,Qe.height,ur.genMipmaps,!0)),Qe.format=xi[qt.internalformat],Qe.type=Ri[qt.type],Qe.mag=ci[ur.magFilter],Qe.min=an[ur.minFilter],Qe.wrapS=Zi[ur.wrapS],Qe.wrapT=Zi[ur.wrapT],ht=0;ht<6;++ht)Ml(Ve[ht]);return Qe}function at(Ot,Rt,Bt,Dt,yt){var Pt=Bt|0,ht=Dt|0,ur=yt|0,br=Ki();return li(br,qt),br.width=0,br.height=0,Ni(br,Rt),br.width=br.width||(qt.width>>ur)-Pt,br.height=br.height||(qt.height>>ur)-ht,ol(qt),Vn(br,Jn+Ot,Pt,ht,ur),io(),kn(br),Qe}function Ct(Ot){var Rt=Ot|0;if(Rt!==qt.width){Qe.width=qt.width=Rt,Qe.height=qt.height=Rt,ol(qt);for(var Bt=0;Bt<6;++Bt)for(var Dt=0;qt.mipmask>>Dt;++Dt)Me.texImage2D(Jn+Bt,Dt,qt.format,Rt>>Dt,Rt>>Dt,0,qt.format,qt.type,null);return io(),Gr.profile&&(qt.stats.size=cc(qt.internalformat,qt.type,Qe.width,Qe.height,!1,!0)),Qe}}return Qe(ne,we,Ue,ft,Xt,hr),Qe.subimage=at,Qe.resize=Ct,Qe._reglType="textureCube",Qe._texture=qt,Gr.profile&&(Qe.stats=qt.stats),Qe.destroy=function(){qt.decRef()},Qe}function q(){for(var ne=0;ne>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);else for(var Xt=0;Xt<6;++Xt)Me.texImage2D(Jn+Xt,ft,Ue.internalformat,Ue.width>>ft,Ue.height>>ft,0,Ue.internalformat,Ue.type,null);al(Ue.texInfo,Ue.target)})}function de(){for(var ne=0;ne=0?Ml=!0:Ui.indexOf(zo)>=0&&(Ml=!1))),("depthTexture"in wa||"depthStencilTexture"in wa)&&(Ys=!!(wa.depthTexture||wa.depthStencilTexture)),"depth"in wa&&(typeof wa.depth=="boolean"?is=wa.depth:(Vl=wa.depth,Zs=!1)),"stencil"in wa&&(typeof wa.stencil=="boolean"?Zs=wa.stencil:(ss=wa.stencil,is=!1)),"depthStencil"in wa&&(typeof wa.depthStencil=="boolean"?is=Zs=wa.depthStencil:(Vs=wa.depthStencil,is=!1,Zs=!1))}var io=null,Y=null,D=null,J=null;if(Array.isArray(Va))io=Va.map(si);else if(Va)io=[si(Va)];else for(io=new Array(al),ta=0;ta0&&(kn.depth=Ni[0].depth,kn.stencil=Ni[0].stencil,kn.depthStencil=Ni[0].depthStencil),Ni[Ki]?Ni[Ki](kn):Ni[Ki]=li(kn)}return e(pn,{width:ta,height:ta,color:zo})}function Vn(na){var Ki,kn=na|0;if(kn===pn.width)return pn;var ta=pn.color;for(Ki=0;Ki=ta.byteLength?oa.subdata(ta):(oa.destroy(),li.buffers[na]=null)),li.buffers[na]||(oa=li.buffers[na]=jr.create(Ki,If,!1,!0)),kn.buffer=jr.getBuffer(oa),kn.size=kn.buffer.dimension|0,kn.normalized=!1,kn.type=kn.buffer.dtype,kn.offset=0,kn.stride=0,kn.divisor=0,kn.state=1,pn[na]=1}else jr.getBuffer(Ki)?(kn.buffer=jr.getBuffer(Ki),kn.size=kn.buffer.dimension|0,kn.normalized=!1,kn.type=kn.buffer.dtype,kn.offset=0,kn.stride=0,kn.divisor=0,kn.state=1):jr.getBuffer(Ki.buffer)?(kn.buffer=jr.getBuffer(Ki.buffer),kn.size=(+Ki.size||kn.buffer.dimension)|0,kn.normalized=!!Ki.normalized||!1,"type"in Ki?kn.type=ji[Ki.type]:kn.type=kn.buffer.dtype,kn.offset=(Ki.offset||0)|0,kn.stride=(Ki.stride||0)|0,kn.divisor=(Ki.divisor||0)|0,kn.state=1):"x"in Ki&&(kn.x=+Ki.x||0,kn.y=+Ki.y||0,kn.z=+Ki.z||0,kn.w=+Ki.w||0,kn.state=2)}for(var ba=0;ba1)for(var Ji=0;JiMr&&(Mr=Yr.stats.uniformsCount)}),Mr},zt.getMaxAttributesCount=function(){var Mr=0;return Ei.forEach(function(Yr){Yr.stats.attributesCount>Mr&&(Mr=Yr.stats.attributesCount)}),Mr});function si(){jr={},Nr={};for(var Mr=0;Mr16&&(zt=Yi(zt,Me.length*8));for(var Rr=Array(16),jr=Array(16),Nr=0;Nr<16;Nr++)Rr[Nr]=zt[Nr]^909522486,jr[Nr]=zt[Nr]^1549556828;var Gr=Yi(Rr.concat(Bc(bt)),512+bt.length*8);return At(Yi(jr.concat(Gr),768))}function vu(Me){for(var bt=ah?"0123456789ABCDEF":"0123456789abcdef",zt="",Rr,jr=0;jr>>4&15)+bt.charAt(Rr&15);return zt}function qc(Me){for(var bt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",zt="",Rr=Me.length,jr=0;jrMe.length*8?zt+=Zu:zt+=bt.charAt(Nr>>>6*(3-Gr)&63);return zt}function cf(Me,bt){var zt=bt.length,Rr=Array(),jr,Nr,Gr,mi,Ui=Array(Math.ceil(Me.length/2));for(jr=0;jr0;){for(mi=Array(),Gr=0,jr=0;jr0||Nr>0)&&(mi[mi.length]=Nr);Rr[Rr.length]=Gr,Ui=mi}var qi="";for(jr=Rr.length-1;jr>=0;jr--)qi+=bt.charAt(Rr[jr]);var Ei=Math.ceil(Me.length*8/(Math.log(bt.length)/Math.log(2)));for(jr=qi.length;jr>>6&31,128|Rr&63):Rr<=65535?bt+=String.fromCharCode(224|Rr>>>12&15,128|Rr>>>6&63,128|Rr&63):Rr<=2097151&&(bt+=String.fromCharCode(240|Rr>>>18&7,128|Rr>>>12&63,128|Rr>>>6&63,128|Rr&63));return bt}function Bc(Me){for(var bt=Array(Me.length>>2),zt=0;zt>5]|=(Me.charCodeAt(zt/8)&255)<<24-zt%32;return bt}function At(Me){for(var bt="",zt=0;zt>5]>>>24-zt%32&255);return bt}function Wt(Me,bt){return Me>>>bt|Me<<32-bt}function Cr(Me,bt){return Me>>>bt}function Ar(Me,bt,zt){return Me&bt^~Me&zt}function Kr(Me,bt,zt){return Me&bt^Me&zt^bt&zt}function ki(Me){return Wt(Me,2)^Wt(Me,13)^Wt(Me,22)}function Xi(Me){return Wt(Me,6)^Wt(Me,11)^Wt(Me,25)}function dn(Me){return Wt(Me,7)^Wt(Me,18)^Cr(Me,3)}function wn(Me){return Wt(Me,17)^Wt(Me,19)^Cr(Me,10)}var Nn=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function Yi(Me,bt){var zt=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),Rr=new Array(64),jr,Nr,Gr,mi,Ui,qi,Ei,Hn,en,Wi,si,Mr;for(Me[bt>>5]|=128<<24-bt%32,Me[(bt+64>>9<<4)+15]=bt,en=0;en>16)+(bt>>16)+(zt>>16);return Rr<<16|zt&65535}function on(Me){return Array.prototype.slice.call(Me)}function Fi(Me){return on(Me).join("")}function $n(Me){var bt=Me&&Me.cache,zt=0,Rr=[],jr=[],Nr=[];function Gr(si,Mr){var Yr=Mr&&Mr.stable;if(!Yr){for(var xi=0;xi0&&(si.push(Ri,"="),si.push.apply(si,on(arguments)),si.push(";")),Ri}return e(Mr,{def:xi,toString:function(){return Fi([Yr.length>0?"var "+Yr.join(",")+";":"",Fi(si)])}})}function Ui(){var si=mi(),Mr=mi(),Yr=si.toString,xi=Mr.toString;function Ri(ci,an){Mr(ci,an,"=",si.def(ci,an),";")}return e(function(){si.apply(si,on(arguments))},{def:si.def,entry:si,exit:Mr,save:Ri,set:function(ci,an,Zi){Ri(ci,an),si(ci,an,"=",Zi,";")},toString:function(){return Yr()+xi()}})}function qi(){var si=Fi(arguments),Mr=Ui(),Yr=Ui(),xi=Mr.toString,Ri=Yr.toString;return e(Mr,{then:function(){return Mr.apply(Mr,on(arguments)),this},else:function(){return Yr.apply(Yr,on(arguments)),this},toString:function(){var ci=Ri();return ci&&(ci="else{"+ci+"}"),Fi(["if(",si,"){",xi(),"}",ci])}})}var Ei=mi(),Hn={};function en(si,Mr){var Yr=[];function xi(){var Bn="a"+Yr.length;return Yr.push(Bn),Bn}Mr=Mr||0;for(var Ri=0;Ri":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},ai={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},gi={cw:Te,ccw:Ne};function Ii(Me){return Array.isArray(Me)||Br(Me)||Vr(Me)}function Si(Me){return Me.sort(function(bt,zt){return bt===ee?-1:zt===ee?1:bt=1,Rr>=2,bt)}else if(zt===Xo){var jr=Me.data;return new ei(jr.thisDep,jr.contextDep,jr.propDep,bt)}else{if(zt===Ss)return new ei(!1,!1,!1,bt);if(zt===as){for(var Nr=!1,Gr=!1,mi=!1,Ui=0;Ui=1&&(Gr=!0),Ei>=2&&(mi=!0)}else qi.type===Xo&&(Nr=Nr||qi.data.thisDep,Gr=Gr||qi.data.contextDep,mi=mi||qi.data.propDep)}return new ei(Nr,Gr,mi,bt)}else return new ei(zt===bo,zt===Ka,zt===Dn,bt)}}var ia=new ei(!1,!1,!1,function(){});function Ea(Me,bt,zt,Rr,jr,Nr,Gr,mi,Ui,qi,Ei,Hn,en,Wi,si,Mr){var Yr=qi.Record,xi={add:32774,subtract:32778,"reverse subtract":32779};zt.ext_blend_minmax&&(xi.min=He,xi.max=Ye);var Ri=zt.angle_instanced_arrays,ci=zt.webgl_draw_buffers,an=zt.oes_vertex_array_object,Zi={dirty:!0,profile:Mr.profile},Bn={},hi=[],li={},mn={};function Ji(Ve){return Ve.replace(".","_")}function Vi(Ve,Qe,at){var Ct=Ji(Ve);hi.push(Ve),Bn[Ct]=Zi[Ct]=!!at,li[Ct]=Qe}function Ni(Ve,Qe,at){var Ct=Ji(Ve);hi.push(Ve),Array.isArray(at)?(Zi[Ct]=at.slice(),Bn[Ct]=at.slice()):Zi[Ct]=Bn[Ct]=at,mn[Ct]=Qe}function pn(Ve){return!!isNaN(Ve)}Vi(ws,Pi),Vi(Ho,ni),Ni(ml,"blendColor",[0,0,0,0]),Ni(Ws,"blendEquationSeparate",[yr,yr]),Ni(Ls,"blendFuncSeparate",[gr,jt,gr,jt]),Vi(va,ln,!0),Ni(no,"depthFunc",Hr),Ni(ys,"depthRange",[0,1]),Ni(rs,"depthMask",!0),Ni($l,$l,[!0,!0,!0,!0]),Vi(Cu,Wr),Ni(Yu,"cullFace",se),Ni(Nc,Nc,Ne),Ni(pu,pu,1),Vi(Uc,Kn),Ni(xu,"polygonOffset",[0,0]),Vi(Ac,Ta),Vi(Ua,fa),Ni(oo,"sampleCoverage",[1,!1]),Vi(Vc,cn),Ni(hc,"stencilMask",-1),Ni(Ku,"stencilFunc",[kt,0,-1]),Ni(ue,"stencilOpSeparate",[X,nt,nt,nt]),Ni(w,"stencilOpSeparate",[se,nt,nt,nt]),Vi(B,Cn),Ni(Q,"scissor",[0,0,Me.drawingBufferWidth,Me.drawingBufferHeight]),Ni(ee,ee,[0,0,Me.drawingBufferWidth,Me.drawingBufferHeight]);var Vn={gl:Me,context:en,strings:bt,next:Bn,current:Zi,draw:Hn,elements:Nr,buffer:jr,shader:Ei,attributes:qi.state,vao:qi,uniforms:Ui,framebuffer:mi,extensions:zt,timer:Wi,isBufferArgs:Ii},na={primTypes:Sn,compareFuncs:Zr,blendFuncs:bi,blendEquations:xi,stencilOps:ai,glTypes:ji,orientationType:gi};ci&&(na.backBuffer=[se],na.drawBuffer=M(Rr.maxDrawbuffers,function(Ve){return Ve===0?[0]:M(Ve,function(Qe){return _i+Qe})}));var Ki=0;function kn(){var Ve=$n({cache:si}),Qe=Ve.link,at=Ve.global;Ve.id=Ki++,Ve.batchId="0";var Ct=Qe(Vn),Ot=Ve.shared={props:"a0"};Object.keys(Vn).forEach(function(Pt){Ot[Pt]=at.def(Ct,".",Pt)});var Rt=Ve.next={},Bt=Ve.current={};Object.keys(mn).forEach(function(Pt){Array.isArray(Zi[Pt])&&(Rt[Pt]=at.def(Ot.next,".",Pt),Bt[Pt]=at.def(Ot.current,".",Pt))});var Dt=Ve.constants={};Object.keys(na).forEach(function(Pt){Dt[Pt]=at.def(JSON.stringify(na[Pt]))}),Ve.invoke=function(Pt,ht){switch(ht.type){case Yn:var ur=["this",Ot.context,Ot.props,Ve.batchId];return Pt.def(Qe(ht.data),".call(",ur.slice(0,Math.max(ht.data.length+1,4)),")");case Dn:return Pt.def(Ot.props,ht.data);case Ka:return Pt.def(Ot.context,ht.data);case bo:return Pt.def("this",ht.data);case Xo:return ht.data.append(Ve,Pt),ht.data.ref;case Ss:return ht.data.toString();case as:return ht.data.map(function(br){return Ve.invoke(Pt,br)})}},Ve.attribCache={};var yt={};return Ve.scopeAttrib=function(Pt){var ht=bt.id(Pt);if(ht in yt)return yt[ht];var ur=qi.scope[ht];ur||(ur=qi.scope[ht]=new Yr);var br=yt[ht]=Qe(ur);return br},Ve}function ta(Ve){var Qe=Ve.static,at=Ve.dynamic,Ct;if(le in Qe){var Ot=!!Qe[le];Ct=En(function(Bt,Dt){return Ot}),Ct.enable=Ot}else if(le in at){var Rt=at[le];Ct=Un(Rt,function(Bt,Dt){return Bt.invoke(Dt,Rt)})}return Ct}function oa(Ve,Qe){var at=Ve.static,Ct=Ve.dynamic;if(qe in at){var Ot=at[qe];return Ot?(Ot=mi.getFramebuffer(Ot),En(function(Bt,Dt){var yt=Bt.link(Ot),Pt=Bt.shared;Dt.set(Pt.framebuffer,".next",yt);var ht=Pt.context;return Dt.set(ht,"."+Be,yt+".width"),Dt.set(ht,"."+et,yt+".height"),yt})):En(function(Bt,Dt){var yt=Bt.shared;Dt.set(yt.framebuffer,".next","null");var Pt=yt.context;return Dt.set(Pt,"."+Be,Pt+"."+Ht),Dt.set(Pt,"."+et,Pt+"."+tr),"null"})}else if(qe in Ct){var Rt=Ct[qe];return Un(Rt,function(Bt,Dt){var yt=Bt.invoke(Dt,Rt),Pt=Bt.shared,ht=Pt.framebuffer,ur=Dt.def(ht,".getFramebuffer(",yt,")");Dt.set(ht,".next",ur);var br=Pt.context;return Dt.set(br,"."+Be,ur+"?"+ur+".width:"+br+"."+Ht),Dt.set(br,"."+et,ur+"?"+ur+".height:"+br+"."+tr),ur})}else return null}function ba(Ve,Qe,at){var Ct=Ve.static,Ot=Ve.dynamic;function Rt(yt){if(yt in Ct){var Pt=Ct[yt],ht=!0,ur=Pt.x|0,br=Pt.y|0,Ur,Di;return"width"in Pt?Ur=Pt.width|0:ht=!1,"height"in Pt?Di=Pt.height|0:ht=!1,new ei(!ht&&Qe&&Qe.thisDep,!ht&&Qe&&Qe.contextDep,!ht&&Qe&&Qe.propDep,function(gn,rn){var Ci=gn.shared.context,Bi=Ur;"width"in Pt||(Bi=rn.def(Ci,".",Be,"-",ur));var Gi=Di;return"height"in Pt||(Gi=rn.def(Ci,".",et,"-",br)),[ur,br,Bi,Gi]})}else if(yt in Ot){var fi=Ot[yt],Ti=Un(fi,function(gn,rn){var Ci=gn.invoke(rn,fi),Bi=gn.shared.context,Gi=rn.def(Ci,".x|0"),sn=rn.def(Ci,".y|0"),zn=rn.def('"width" in ',Ci,"?",Ci,".width|0:","(",Bi,".",Be,"-",Gi,")"),Ja=rn.def('"height" in ',Ci,"?",Ci,".height|0:","(",Bi,".",et,"-",sn,")");return[Gi,sn,zn,Ja]});return Qe&&(Ti.thisDep=Ti.thisDep||Qe.thisDep,Ti.contextDep=Ti.contextDep||Qe.contextDep,Ti.propDep=Ti.propDep||Qe.propDep),Ti}else return Qe?new ei(Qe.thisDep,Qe.contextDep,Qe.propDep,function(gn,rn){var Ci=gn.shared.context;return[0,0,rn.def(Ci,".",Be),rn.def(Ci,".",et)]}):null}var Bt=Rt(ee);if(Bt){var Dt=Bt;Bt=new ei(Bt.thisDep,Bt.contextDep,Bt.propDep,function(yt,Pt){var ht=Dt.append(yt,Pt),ur=yt.shared.context;return Pt.set(ur,"."+We,ht[2]),Pt.set(ur,"."+it,ht[3]),ht})}return{viewport:Bt,scissor_box:Rt(Q)}}function is(Ve,Qe){var at=Ve.static,Ct=typeof at[ot]=="string"&&typeof at[Xe]=="string";if(Ct){if(Object.keys(Qe.dynamic).length>0)return null;var Ot=Qe.static,Rt=Object.keys(Ot);if(Rt.length>0&&typeof Ot[Rt[0]]=="number"){for(var Bt=[],Dt=0;Dt"+Gi+"?"+ht+".constant["+Gi+"]:0;"}).join(""),"}}else{","if(",Ur,"(",ht,".buffer)){",gn,"=",Di,".createStream(",Sr,",",ht,".buffer);","}else{",gn,"=",Di,".getBuffer(",ht,".buffer);","}",rn,'="type" in ',ht,"?",br.glTypes,"[",ht,".type]:",gn,".dtype;",fi.normalized,"=!!",ht,".normalized;");function Ci(Bi){Pt(fi[Bi],"=",ht,".",Bi,"|0;")}return Ci("size"),Ci("offset"),Ci("stride"),Ci("divisor"),Pt("}}"),Pt.exit("if(",fi.isStream,"){",Di,".destroyStream(",gn,");","}"),fi}Ot[Rt]=Un(Bt,Dt)}),Ot}function al(Ve){var Qe=Ve.static,at=Ve.dynamic,Ct={};return Object.keys(Qe).forEach(function(Ot){var Rt=Qe[Ot];Ct[Ot]=En(function(Bt,Dt){return typeof Rt=="number"||typeof Rt=="boolean"?""+Rt:Bt.link(Rt)})}),Object.keys(at).forEach(function(Ot){var Rt=at[Ot];Ct[Ot]=Un(Rt,function(Bt,Dt){return Bt.invoke(Dt,Rt)})}),Ct}function Vl(Ve,Qe,at,Ct,Ot){var Rt=Ve.static,Bt=Ve.dynamic,Dt=is(Ve,Qe),yt=oa(Ve,Ot),Pt=ba(Ve,yt,Ot),ht=Va(Ve,Ot),ur=Ml(Ve,Ot),br=Zs(Ve,Ot,Dt);function Ur(Ci){var Bi=Pt[Ci];Bi&&(ur[Ci]=Bi)}Ur(ee),Ur(Ji(Q));var Di=Object.keys(ur).length>0,fi={framebuffer:yt,draw:ht,shader:br,state:ur,dirty:Di,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(fi.profile=ta(Ve,Ot),fi.uniforms=zo(at,Ot),fi.drawVAO=fi.scopeVAO=ht.vao,!fi.drawVAO&&br.program&&!Dt&&zt.angle_instanced_arrays&&ht.static.elements){var Ti=!0,gn=br.program.attributes.map(function(Ci){var Bi=Qe.static[Ci];return Ti=Ti&&!!Bi,Bi});if(Ti&&gn.length>0){var rn=qi.getVAO(qi.createVAO({attributes:gn,elements:ht.static.elements}));fi.drawVAO=new ei(null,null,null,function(Ci,Bi){return Ci.link(rn)}),fi.useVAO=!0}}return Dt?fi.useVAO=!0:fi.attributes=Qs(Qe,Ot),fi.context=al(Ct,Ot),fi}function ss(Ve,Qe,at){var Ct=Ve.shared,Ot=Ct.context,Rt=Ve.scope();Object.keys(at).forEach(function(Bt){Qe.save(Ot,"."+Bt);var Dt=at[Bt],yt=Dt.append(Ve,Qe);Array.isArray(yt)?Rt(Ot,".",Bt,"=[",yt.join(),"];"):Rt(Ot,".",Bt,"=",yt,";")}),Qe(Rt)}function Vs(Ve,Qe,at,Ct){var Ot=Ve.shared,Rt=Ot.gl,Bt=Ot.framebuffer,Dt;ci&&(Dt=Qe.def(Ot.extensions,".webgl_draw_buffers"));var yt=Ve.constants,Pt=yt.drawBuffer,ht=yt.backBuffer,ur;at?ur=at.append(Ve,Qe):ur=Qe.def(Bt,".next"),Ct||Qe("if(",ur,"!==",Bt,".cur){"),Qe("if(",ur,"){",Rt,".bindFramebuffer(",qr,",",ur,".framebuffer);"),ci&&Qe(Dt,".drawBuffersWEBGL(",Pt,"[",ur,".colorAttachments.length]);"),Qe("}else{",Rt,".bindFramebuffer(",qr,",null);"),ci&&Qe(Dt,".drawBuffersWEBGL(",ht,");"),Qe("}",Bt,".cur=",ur,";"),Ct||Qe("}")}function Ys(Ve,Qe,at){var Ct=Ve.shared,Ot=Ct.gl,Rt=Ve.current,Bt=Ve.next,Dt=Ct.current,yt=Ct.next,Pt=Ve.cond(Dt,".dirty");hi.forEach(function(ht){var ur=Ji(ht);if(!(ur in at.state)){var br,Ur;if(ur in Bt){br=Bt[ur],Ur=Rt[ur];var Di=M(Zi[ur].length,function(Ti){return Pt.def(br,"[",Ti,"]")});Pt(Ve.cond(Di.map(function(Ti,gn){return Ti+"!=="+Ur+"["+gn+"]"}).join("||")).then(Ot,".",mn[ur],"(",Di,");",Di.map(function(Ti,gn){return Ur+"["+gn+"]="+Ti}).join(";"),";"))}else{br=Pt.def(yt,".",ur);var fi=Ve.cond(br,"!==",Dt,".",ur);Pt(fi),ur in li?fi(Ve.cond(br).then(Ot,".enable(",li[ur],");").else(Ot,".disable(",li[ur],");"),Dt,".",ur,"=",br,";"):fi(Ot,".",mn[ur],"(",br,");",Dt,".",ur,"=",br,";")}}}),Object.keys(at.state).length===0&&Pt(Dt,".dirty=false;"),Qe(Pt)}function wa(Ve,Qe,at,Ct){var Ot=Ve.shared,Rt=Ve.current,Bt=Ot.current,Dt=Ot.gl,yt;Si(Object.keys(at)).forEach(function(Pt){var ht=at[Pt];if(!(Ct&&!Ct(ht))){var ur=ht.append(Ve,Qe);if(li[Pt]){var br=li[Pt];Ln(ht)?(yt=Ve.link(ur,{stable:!0}),Qe(Ve.cond(yt).then(Dt,".enable(",br,");").else(Dt,".disable(",br,");")),Qe(Bt,".",Pt,"=",yt,";")):(Qe(Ve.cond(ur).then(Dt,".enable(",br,");").else(Dt,".disable(",br,");")),Qe(Bt,".",Pt,"=",ur,";"))}else if(Mn(ur)){var Ur=Rt[Pt];Qe(Dt,".",mn[Pt],"(",ur,");",ur.map(function(Di,fi){return Ur+"["+fi+"]="+Di}).join(";"),";")}else Ln(ht)?(yt=Ve.link(ur,{stable:!0}),Qe(Dt,".",mn[Pt],"(",yt,");",Bt,".",Pt,"=",yt,";")):Qe(Dt,".",mn[Pt],"(",ur,");",Bt,".",Pt,"=",ur,";")}})}function ol(Ve,Qe){Ri&&(Ve.instancing=Qe.def(Ve.shared.extensions,".angle_instanced_arrays"))}function io(Ve,Qe,at,Ct,Ot){var Rt=Ve.shared,Bt=Ve.stats,Dt=Rt.current,yt=Rt.timer,Pt=at.profile;function ht(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var ur,br;function Ur(Ci){ur=Qe.def(),Ci(ur,"=",ht(),";"),typeof Ot=="string"?Ci(Bt,".count+=",Ot,";"):Ci(Bt,".count++;"),Wi&&(Ct?(br=Qe.def(),Ci(br,"=",yt,".getNumPendingQueries();")):Ci(yt,".beginQuery(",Bt,");"))}function Di(Ci){Ci(Bt,".cpuTime+=",ht(),"-",ur,";"),Wi&&(Ct?Ci(yt,".pushScopeStats(",br,",",yt,".getNumPendingQueries(),",Bt,");"):Ci(yt,".endQuery();"))}function fi(Ci){var Bi=Qe.def(Dt,".profile");Qe(Dt,".profile=",Ci,";"),Qe.exit(Dt,".profile=",Bi,";")}var Ti;if(Pt){if(Ln(Pt)){Pt.enable?(Ur(Qe),Di(Qe.exit),fi("true")):fi("false");return}Ti=Pt.append(Ve,Qe),fi(Ti)}else Ti=Qe.def(Dt,".profile");var gn=Ve.block();Ur(gn),Qe("if(",Ti,"){",gn,"}");var rn=Ve.block();Di(rn),Qe.exit("if(",Ti,"){",rn,"}")}function Y(Ve,Qe,at,Ct,Ot){var Rt=Ve.shared;function Bt(yt){switch(yt){case Co:case Ps:case hl:return 2;case Qa:case Ts:case Ul:return 3;case mo:case wo:case Lu:return 4;default:return 1}}function Dt(yt,Pt,ht){var ur=Rt.gl,br=Qe.def(yt,".location"),Ur=Qe.def(Rt.attributes,"[",br,"]"),Di=ht.state,fi=ht.buffer,Ti=[ht.x,ht.y,ht.z,ht.w],gn=["buffer","normalized","offset","stride"];function rn(){Qe("if(!",Ur,".buffer){",ur,".enableVertexAttribArray(",br,");}");var Bi=ht.type,Gi;if(ht.size?Gi=Qe.def(ht.size,"||",Pt):Gi=Pt,Qe("if(",Ur,".type!==",Bi,"||",Ur,".size!==",Gi,"||",gn.map(function(zn){return Ur+"."+zn+"!=="+ht[zn]}).join("||"),"){",ur,".bindBuffer(",Sr,",",fi,".buffer);",ur,".vertexAttribPointer(",[br,Gi,Bi,ht.normalized,ht.stride,ht.offset],");",Ur,".type=",Bi,";",Ur,".size=",Gi,";",gn.map(function(zn){return Ur+"."+zn+"="+ht[zn]+";"}).join(""),"}"),Ri){var sn=ht.divisor;Qe("if(",Ur,".divisor!==",sn,"){",Ve.instancing,".vertexAttribDivisorANGLE(",[br,sn],");",Ur,".divisor=",sn,";}")}}function Ci(){Qe("if(",Ur,".buffer){",ur,".disableVertexAttribArray(",br,");",Ur,".buffer=null;","}if(",Ca.map(function(Bi,Gi){return Ur+"."+Bi+"!=="+Ti[Gi]}).join("||"),"){",ur,".vertexAttrib4f(",br,",",Ti,");",Ca.map(function(Bi,Gi){return Ur+"."+Bi+"="+Ti[Gi]+";"}).join(""),"}")}Di===La?rn():Di===Na?Ci():(Qe("if(",Di,"===",La,"){"),rn(),Qe("}else{"),Ci(),Qe("}"))}Ct.forEach(function(yt){var Pt=yt.name,ht=at.attributes[Pt],ur;if(ht){if(!Ot(ht))return;ur=ht.append(Ve,Qe)}else{if(!Ot(ia))return;var br=Ve.scopeAttrib(Pt);ur={},Object.keys(new Yr).forEach(function(Ur){ur[Ur]=Qe.def(br,".",Ur)})}Dt(Ve.link(yt),Bt(yt.info.type),ur)})}function D(Ve,Qe,at,Ct,Ot,Rt){for(var Bt=Ve.shared,Dt=Bt.gl,yt,Pt=0;Pt1){for(var co=[],ts=[],so=0;so>1)",fi],");")}function sn(){at(Ti,".drawArraysInstancedANGLE(",[br,Ur,Di,fi],");")}ht&&ht!=="null"?rn?Gi():(at("if(",ht,"){"),Gi(),at("}else{"),sn(),at("}")):sn()}function Bi(){function Gi(){at(Rt+".drawElements("+[br,Di,gn,Ur+"<<(("+gn+"-"+Ra+")>>1)"]+");")}function sn(){at(Rt+".drawArrays("+[br,Ur,Di]+");")}ht&&ht!=="null"?rn?Gi():(at("if(",ht,"){"),Gi(),at("}else{"),sn(),at("}")):sn()}Ri&&(typeof fi!="number"||fi>=0)?typeof fi=="string"?(at("if(",fi,">0){"),Ci(),at("}else if(",fi,"<0){"),Bi(),at("}")):Ci():Bi()}function q(Ve,Qe,at,Ct,Ot){var Rt=kn(),Bt=Rt.proc("body",Ot);return Ri&&(Rt.instancing=Bt.def(Rt.shared.extensions,".angle_instanced_arrays")),Ve(Rt,Bt,at,Ct),Rt.compile().body}function K(Ve,Qe,at,Ct){ol(Ve,Qe),at.useVAO?at.drawVAO?Qe(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,Qe),");"):Qe(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(Qe(Ve.shared.vao,".setVAO(null);"),Y(Ve,Qe,at,Ct.attributes,function(){return!0})),D(Ve,Qe,at,Ct.uniforms,function(){return!0},!1),J(Ve,Qe,Qe,at)}function de(Ve,Qe){var at=Ve.proc("draw",1);ol(Ve,at),ss(Ve,at,Qe.context),Vs(Ve,at,Qe.framebuffer),Ys(Ve,at,Qe),wa(Ve,at,Qe.state),io(Ve,at,Qe,!1,!0);var Ct=Qe.shader.progVar.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",Ct,".program);"),Qe.shader.program)K(Ve,at,Qe,Qe.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var Ot=Ve.global.def("{}"),Rt=at.def(Ct,".id"),Bt=at.def(Ot,"[",Rt,"]");at(Ve.cond(Bt).then(Bt,".call(this,a0);").else(Bt,"=",Ot,"[",Rt,"]=",Ve.link(function(Dt){return q(K,Ve,Qe,Dt,1)}),"(",Ct,");",Bt,".call(this,a0);"))}Object.keys(Qe.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ne(Ve,Qe,at,Ct){Ve.batchId="a1",ol(Ve,Qe);function Ot(){return!0}Y(Ve,Qe,at,Ct.attributes,Ot),D(Ve,Qe,at,Ct.uniforms,Ot,!1),J(Ve,Qe,Qe,at)}function we(Ve,Qe,at,Ct){ol(Ve,Qe);var Ot=at.contextDep,Rt=Qe.def(),Bt="a0",Dt="a1",yt=Qe.def();Ve.shared.props=yt,Ve.batchId=Rt;var Pt=Ve.scope(),ht=Ve.scope();Qe(Pt.entry,"for(",Rt,"=0;",Rt,"<",Dt,";++",Rt,"){",yt,"=",Bt,"[",Rt,"];",ht,"}",Pt.exit);function ur(gn){return gn.contextDep&&Ot||gn.propDep}function br(gn){return!ur(gn)}if(at.needsContext&&ss(Ve,ht,at.context),at.needsFramebuffer&&Vs(Ve,ht,at.framebuffer),wa(Ve,ht,at.state,ur),at.profile&&ur(at.profile)&&io(Ve,ht,at,!1,!0),Ct)at.useVAO?at.drawVAO?ur(at.drawVAO)?ht(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,ht),");"):Pt(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,Pt),");"):Pt(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(Pt(Ve.shared.vao,".setVAO(null);"),Y(Ve,Pt,at,Ct.attributes,br),Y(Ve,ht,at,Ct.attributes,ur)),D(Ve,Pt,at,Ct.uniforms,br,!1),D(Ve,ht,at,Ct.uniforms,ur,!0),J(Ve,Pt,ht,at);else{var Ur=Ve.global.def("{}"),Di=at.shader.progVar.append(Ve,ht),fi=ht.def(Di,".id"),Ti=ht.def(Ur,"[",fi,"]");ht(Ve.shared.gl,".useProgram(",Di,".program);","if(!",Ti,"){",Ti,"=",Ur,"[",fi,"]=",Ve.link(function(gn){return q(ne,Ve,at,gn,2)}),"(",Di,");}",Ti,".call(this,a0[",Rt,"],",Rt,");")}}function Ue(Ve,Qe){var at=Ve.proc("batch",2);Ve.batchId="0",ol(Ve,at);var Ct=!1,Ot=!0;Object.keys(Qe.context).forEach(function(Ur){Ct=Ct||Qe.context[Ur].propDep}),Ct||(ss(Ve,at,Qe.context),Ot=!1);var Rt=Qe.framebuffer,Bt=!1;Rt?(Rt.propDep?Ct=Bt=!0:Rt.contextDep&&Ct&&(Bt=!0),Bt||Vs(Ve,at,Rt)):Vs(Ve,at,null),Qe.state.viewport&&Qe.state.viewport.propDep&&(Ct=!0);function Dt(Ur){return Ur.contextDep&&Ct||Ur.propDep}Ys(Ve,at,Qe),wa(Ve,at,Qe.state,function(Ur){return!Dt(Ur)}),(!Qe.profile||!Dt(Qe.profile))&&io(Ve,at,Qe,!1,"a1"),Qe.contextDep=Ct,Qe.needsContext=Ot,Qe.needsFramebuffer=Bt;var yt=Qe.shader.progVar;if(yt.contextDep&&Ct||yt.propDep)we(Ve,at,Qe,null);else{var Pt=yt.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",Pt,".program);"),Qe.shader.program)we(Ve,at,Qe,Qe.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var ht=Ve.global.def("{}"),ur=at.def(Pt,".id"),br=at.def(ht,"[",ur,"]");at(Ve.cond(br).then(br,".call(this,a0,a1);").else(br,"=",ht,"[",ur,"]=",Ve.link(function(Ur){return q(we,Ve,Qe,Ur,2)}),"(",Pt,");",br,".call(this,a0,a1);"))}}Object.keys(Qe.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ft(Ve,Qe){var at=Ve.proc("scope",3);Ve.batchId="a2";var Ct=Ve.shared,Ot=Ct.current;if(ss(Ve,at,Qe.context),Qe.framebuffer&&Qe.framebuffer.append(Ve,at),Si(Object.keys(Qe.state)).forEach(function(Dt){var yt=Qe.state[Dt],Pt=yt.append(Ve,at);Mn(Pt)?Pt.forEach(function(ht,ur){pn(ht)?at.set(Ve.next[Dt],"["+ur+"]",ht):at.set(Ve.next[Dt],"["+ur+"]",Ve.link(ht,{stable:!0}))}):Ln(yt)?at.set(Ct.next,"."+Dt,Ve.link(Pt,{stable:!0})):at.set(Ct.next,"."+Dt,Pt)}),io(Ve,at,Qe,!0,!0),[Tt,xr,Kt,Ir,Yt].forEach(function(Dt){var yt=Qe.draw[Dt];if(yt){var Pt=yt.append(Ve,at);pn(Pt)?at.set(Ct.draw,"."+Dt,Pt):at.set(Ct.draw,"."+Dt,Ve.link(Pt),{stable:!0})}}),Object.keys(Qe.uniforms).forEach(function(Dt){var yt=Qe.uniforms[Dt].append(Ve,at);Array.isArray(yt)&&(yt="["+yt.map(function(Pt){return pn(Pt)?Pt:Ve.link(Pt,{stable:!0})})+"]"),at.set(Ct.uniforms,"["+Ve.link(bt.id(Dt),{stable:!0})+"]",yt)}),Object.keys(Qe.attributes).forEach(function(Dt){var yt=Qe.attributes[Dt].append(Ve,at),Pt=Ve.scopeAttrib(Dt);Object.keys(new Yr).forEach(function(ht){at.set(Pt,"."+ht,yt[ht])})}),Qe.scopeVAO){var Rt=Qe.scopeVAO.append(Ve,at);pn(Rt)?at.set(Ct.vao,".targetVAO",Rt):at.set(Ct.vao,".targetVAO",Ve.link(Rt,{stable:!0}))}function Bt(Dt){var yt=Qe.shader[Dt];if(yt){var Pt=yt.append(Ve,at);pn(Pt)?at.set(Ct.shader,"."+Dt,Pt):at.set(Ct.shader,"."+Dt,Ve.link(Pt,{stable:!0}))}}Bt(Xe),Bt(ot),Object.keys(Qe.state).length>0&&(at(Ot,".dirty=true;"),at.exit(Ot,".dirty=true;")),at("a1(",Ve.shared.context,",a0,",Ve.batchId,");")}function Xt(Ve){if(!(typeof Ve!="object"||Mn(Ve))){for(var Qe=Object.keys(Ve),at=0;at=0;--q){var K=Vn[q];K&&K(si,null,0)}zt.flush(),Ei&&Ei.update()}function ba(){!ta&&Vn.length>0&&(ta=d.next(oa))}function is(){ta&&(d.cancel(oa),ta=null)}function Zs(q){q.preventDefault(),jr=!0,is(),na.forEach(function(K){K()})}function Va(q){zt.getError(),jr=!1,Nr.restore(),Bn.restore(),Ri.restore(),hi.restore(),li.restore(),mn.restore(),an.restore(),Ei&&Ei.restore(),Ji.procs.refresh(),ba(),Ki.forEach(function(K){K()})}pn&&(pn.addEventListener(Fo,Zs,!1),pn.addEventListener(Uo,Va,!1));function Ml(){Vn.length=0,is(),pn&&(pn.removeEventListener(Fo,Zs),pn.removeEventListener(Uo,Va)),Bn.clear(),mn.clear(),li.clear(),an.clear(),hi.clear(),ci.clear(),Ri.clear(),Ei&&Ei.clear(),kn.forEach(function(q){q()})}function zo(q){function K(Rt){var Bt=e({},Rt);delete Bt.uniforms,delete Bt.attributes,delete Bt.context,delete Bt.vao,"stencil"in Bt&&Bt.stencil.op&&(Bt.stencil.opBack=Bt.stencil.opFront=Bt.stencil.op,delete Bt.stencil.op);function Dt(yt){if(yt in Bt){var Pt=Bt[yt];delete Bt[yt],Object.keys(Pt).forEach(function(ht){Bt[yt+"."+ht]=Pt[ht]})}}return Dt("blend"),Dt("depth"),Dt("cull"),Dt("stencil"),Dt("polygonOffset"),Dt("scissor"),Dt("sample"),"vao"in Rt&&(Bt.vao=Rt.vao),Bt}function de(Rt,Bt){var Dt={},yt={};return Object.keys(Rt).forEach(function(Pt){var ht=Rt[Pt];if(h.isDynamic(ht)){yt[Pt]=h.unbox(ht,Pt);return}else if(Bt&&Array.isArray(ht)){for(var ur=0;ur0)return Ve.call(this,Ct(Rt|0),Rt|0)}else if(Array.isArray(Rt)){if(Rt.length)return Ve.call(this,Rt,Rt.length)}else return qt.call(this,Rt)}return e(Ot,{stats:Xt,destroy:function(){hr.destroy()}})}var Qs=mn.setFBO=zo({framebuffer:h.define.call(null,$s,"framebuffer")});function al(q,K){var de=0;Ji.procs.poll();var ne=K.color;ne&&(zt.clearColor(+ne[0]||0,+ne[1]||0,+ne[2]||0,+ne[3]||0),de|=Ms),"depth"in K&&(zt.clearDepth(+K.depth),de|=Xs),"stencil"in K&&(zt.clearStencil(K.stencil|0),de|=Gn),zt.clear(de)}function Vl(q){if("framebuffer"in q)if(q.framebuffer&&q.framebuffer_reglType==="framebufferCube")for(var K=0;K<6;++K)Qs(e({framebuffer:q.framebuffer.faces[K]},q),al);else Qs(q,al);else al(null,q)}function ss(q){Vn.push(q);function K(){var de=dl(Vn,q);function ne(){var we=dl(Vn,ne);Vn[we]=Vn[Vn.length-1],Vn.length-=1,Vn.length<=0&&is()}Vn[de]=ne}return ba(),{cancel:K}}function Vs(){var q=Ni.viewport,K=Ni.scissor_box;q[0]=q[1]=K[0]=K[1]=0,si.viewportWidth=si.framebufferWidth=si.drawingBufferWidth=q[2]=K[2]=zt.drawingBufferWidth,si.viewportHeight=si.framebufferHeight=si.drawingBufferHeight=q[3]=K[3]=zt.drawingBufferHeight}function Ys(){si.tick+=1,si.time=ol(),Vs(),Ji.procs.poll()}function wa(){hi.refresh(),Vs(),Ji.procs.refresh(),Ei&&Ei.update()}function ol(){return(v()-Hn)/1e3}wa();function io(q,K){var de;switch(q){case"frame":return ss(K);case"lost":de=na;break;case"restore":de=Ki;break;case"destroy":de=kn;break;default:}return de.push(K),{cancel:function(){for(var ne=0;ne=0},read:Vi,destroy:Ml,_gl:zt,_refresh:wa,poll:function(){Ys(),Ei&&Ei.update()},now:ol,stats:mi,getCachedCode:Y,preloadCachedCode:D});return bt.onDone(null,J),J}return Sc})});var Sz=ye((d_r,kBe)=>{"use strict";var FUt=kX(),zUt=EBe();kBe.exports=function(t,r,n){var i=t._fullLayout,a=!0;return i._glcanvas.each(function(o){if(o.regl){o.regl.preloadCachedCode(n);return}if(!(o.pick&&!i._has("parcoords"))){try{o.regl=zUt({canvas:this,attributes:{antialias:!o.pick,preserveDrawingBuffer:!0},pixelRatio:t._context.plotGlPixelRatio||window.devicePixelRatio,extensions:r||[],cachedCode:n||{}})}catch(s){a=!1}o.regl||(a=!1),a&&this.addEventListener("webglcontextlost",function(s){t&&t.emit&&t.emit("plotly_webglcontextlost",{event:s,layer:o.key})},!1)}}),a||FUt({container:i._glcontainer.node()}),a}});var hK=ye((fK,RBe)=>{"use strict";var CBe=fY(),LBe=VY(),OUt=mqe(),PBe=MBe(),cK=Dr(),qUt=Mg().selectMode,BUt=Sz(),NUt=Ru(),UUt=_U(),VUt=sY().styleTextSelection,IBe={};function GUt(e,t,r,n){var i=e._size,a=e.width*n,o=e.height*n,s=i.l*n,l=i.b*n,u=i.r*n,c=i.t*n,f=i.w*n,h=i.h*n;return[s+t.domain[0]*f,l+r.domain[0]*h,a-u-(1-t.domain[1])*f,o-c-(1-r.domain[1])*h]}var fK=RBe.exports=function(t,r,n){if(n.length){var i=t._fullLayout,a=r._scene,o=r.xaxis,s=r.yaxis,l,u;if(a){var c=BUt(t,["ANGLE_instanced_arrays","OES_element_index_uint"],IBe);if(!c){a.init();return}var f=a.count,h=i._glcanvas.data()[0].regl;if(UUt(t,r,n),a.dirty){if((a.line2d||a.error2d)&&!(a.scatter2d||a.fill2d||a.glText)&&h.clear({color:!0,depth:!0}),a.error2d===!0&&(a.error2d=OUt(h)),a.line2d===!0&&(a.line2d=LBe(h)),a.scatter2d===!0&&(a.scatter2d=CBe(h)),a.fill2d===!0&&(a.fill2d=LBe(h)),a.glText===!0)for(a.glText=new Array(f),l=0;la.glText.length){var d=f-a.glText.length;for(l=0;loe&&(isNaN(re[_e])||isNaN(re[_e+1]));)_e-=2;j.positions=re.slice(oe,_e+2)}return j}),a.line2d.update(a.lineOptions)),a.error2d){var b=(a.errorXOptions||[]).concat(a.errorYOptions||[]);a.error2d.update(b)}a.scatter2d&&a.scatter2d.update(a.markerOptions),a.fillOrder=cK.repeat(null,f),a.fill2d&&(a.fillOptions=a.fillOptions.map(function(j,re){var oe=n[re];if(!(!j||!oe||!oe[0]||!oe[0].trace)){var _e=oe[0],Ee=_e.trace,Ce=_e.t,me=a.lineOptions[re],ie,Se,Le=[];Ee._ownfill&&Le.push(re),Ee._nexttrace&&Le.push(re+1),Le.length&&(a.fillOrder[re]=Le);var Ae=[],Fe=me&&me.positions||Ce.positions,Pe,ge;if(Ee.fill==="tozeroy"){for(Pe=0;PePe&&isNaN(Fe[ge+1]);)ge-=2;Fe[Pe+1]!==0&&(Ae=[Fe[Pe],0]),Ae=Ae.concat(Fe.slice(Pe,ge+2)),Fe[ge+1]!==0&&(Ae=Ae.concat([Fe[ge],0]))}else if(Ee.fill==="tozerox"){for(Pe=0;PePe&&isNaN(Fe[ge]);)ge-=2;Fe[Pe]!==0&&(Ae=[0,Fe[Pe+1]]),Ae=Ae.concat(Fe.slice(Pe,ge+2)),Fe[ge]!==0&&(Ae=Ae.concat([0,Fe[ge+1]]))}else if(Ee.fill==="toself"||Ee.fill==="tonext"){for(Ae=[],ie=0,j.splitNull=!0,Se=0;Se-1;for(l=0;l{"use strict";var DBe=$ze();DBe.plot=hK();FBe.exports=DBe});var qBe=ye((p_r,OBe)=>{"use strict";OBe.exports=zBe()});var dK=ye((g_r,VBe)=>{"use strict";var HUt=pf(),UBe=Tu(),BBe=df().axisHoverFormat,{hovertemplateAttrs:jUt,templatefallbackAttrs:WUt}=Ll(),kk=lk(),XUt=hd().idRegex,ZUt=vl().templatedArray,p5=Ao().extendFlat,o1=HUt.marker,YUt=o1.line,KUt=p5(UBe("marker.line",{editTypeOverride:"calc"}),{width:p5({},YUt.width,{editType:"calc"}),editType:"calc"}),Mz=p5(UBe("marker"),{symbol:o1.symbol,angle:o1.angle,size:p5({},o1.size,{editType:"markerSize"}),sizeref:o1.sizeref,sizemin:o1.sizemin,sizemode:o1.sizemode,opacity:o1.opacity,colorbar:o1.colorbar,line:KUt,editType:"calc"});Mz.color.editType=Mz.cmin.editType=Mz.cmax.editType="style";function NBe(e){return{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"subplotid",regex:XUt[e],editType:"plot"}}}VBe.exports={dimensions:ZUt("dimension",{visible:{valType:"boolean",dflt:!0,editType:"calc"},label:{valType:"string",editType:"calc"},values:{valType:"data_array",editType:"calc+clearAxisTypes"},axis:{type:{valType:"enumerated",values:["linear","log","date","category"],editType:"calc+clearAxisTypes"},matches:{valType:"boolean",dflt:!1,editType:"calc"},editType:"calc+clearAxisTypes"},editType:"calc+clearAxisTypes"}),text:p5({},kk.text,{}),hovertext:p5({},kk.hovertext,{}),hovertemplate:jUt(),hovertemplatefallback:WUt(),xhoverformat:BBe("x"),yhoverformat:BBe("y"),marker:Mz,xaxes:NBe("x"),yaxes:NBe("y"),diagonal:{visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"},showupperhalf:{valType:"boolean",dflt:!0,editType:"calc"},showlowerhalf:{valType:"boolean",dflt:!0,editType:"calc"},selected:{marker:kk.selected.marker,editType:"calc"},unselected:{marker:kk.unselected.marker,editType:"calc"},opacity:kk.opacity}});var Ez=ye((m_r,GBe)=>{"use strict";GBe.exports=function(e,t,r,n){n||(n=1/0);var i,a;for(i=0;i{"use strict";var vK=Dr(),JUt=Yd(),HBe=dK(),$Ut=Ru(),QUt=$p(),eVt=Ez(),tVt=UF().isOpenSymbol;jBe.exports=function(t,r,n,i){function a(d,v){return vK.coerce(t,r,HBe,d,v)}var o=JUt(t,r,{name:"dimensions",handleItemDefaults:rVt}),s=a("diagonal.visible"),l=a("showupperhalf"),u=a("showlowerhalf"),c=eVt(r,o,"values");if(!c||!s&&!l&&!u){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),QUt(t,r,n,i,a,{noAngleRef:!0,noStandOff:!0});var f=tVt(r.marker.symbol),h=$Ut.isBubble(r);a("marker.line.width",f||h?1:0),iVt(t,r,i,a),vK.coerceSelectionMarkerOpacity(r,a)};function rVt(e,t){function r(i,a){return vK.coerce(e,t,HBe.dimensions,i,a)}r("label");var n=r("values");n&&n.length?r("visible"):t.visible=!1,r("axis.type"),r("axis.matches")}function iVt(e,t,r,n){var i=t.dimensions,a=i.length,o=t.showupperhalf,s=t.showlowerhalf,l=t.diagonal.visible,u,c,f=new Array(a),h=new Array(a);for(u=0;uc&&o||u{"use strict";var XBe=Dr();ZBe.exports=function(t,r){var n=t._fullLayout,i=r.uid,a=n._splomScenes;a||(a=n._splomScenes={});var o={dirty:!0,selectBatch:[],unselectBatch:[]},s={matrix:!1,selectBatch:[],unselectBatch:[]},l=a[r.uid];return l||(l=a[i]=XBe.extendFlat({},o,s),l.draw=function(){l.matrix&&l.matrix.draw&&(l.selectBatch.length||l.unselectBatch.length?l.matrix.draw(l.unselectBatch,l.selectBatch):l.matrix.draw()),l.dirty=!1},l.destroy=function(){l.matrix&&l.matrix.destroy&&l.matrix.destroy(),l.matrixOptions=null,l.selectBatch=null,l.unselectBatch=null,l=null}),l.dirty||XBe.extendFlat(l,o),l}});var $Be=ye((x_r,JBe)=>{"use strict";var pK=Dr(),kz=hf(),nVt=O0().calcMarkerSize,aVt=O0().calcAxisExpansion,oVt=F0(),KBe=K2().markerSelection,sVt=K2().markerStyle,lVt=YBe(),uVt=fs().BADNUM,cVt=ox().TOO_MANY_POINTS;JBe.exports=function(t,r){var n=r.dimensions,i=r._length,a={},o=a.cdata=[],s=a.data=[],l=r._visibleDims=[],u,c,f,h,d;function v(E,S){for(var L=E.makeCalcdata({v:S.values,vcalendar:r.calendar},"v"),x=0;xcVt,p;for(b?p=a.sizeAvg||Math.max(a.size,3):p=nVt(r,i),c=0;c{(function(){var e,t,r,n,i,a;typeof performance!="undefined"&&performance!==null&&performance.now?Ck.exports=function(){return performance.now()}:typeof process!="undefined"&&process!==null&&process.hrtime?(Ck.exports=function(){return(e()-i)/1e6},t=process.hrtime,e=function(){var o;return o=t(),o[0]*1e9+o[1]},n=e(),a=process.uptime()*1e9,i=n-a):Date.now?(Ck.exports=function(){return Date.now()-r},r=Date.now()):(Ck.exports=function(){return new Date().getTime()-r},r=new Date().getTime())}).call(QBe)});var rNe=ye((b_r,Pz)=>{var fVt=eNe(),s1=window,Cz=["moz","webkit"],m5="AnimationFrame",y5=s1["request"+m5],Lk=s1["cancel"+m5]||s1["cancelRequest"+m5];for(g5=0;!y5&&g5{iNe.exports=function(t,r){var n=typeof t=="number",i=typeof r=="number";n&&!i?(r=t,t=0):!n&&!i&&(t=0,r=0),t=t|0,r=r|0;var a=r-t;if(a<0)throw new Error("array length must be positive");for(var o=new Array(a),s=0,l=t;s{"use strict";var hVt=fY(),dVt=Zm(),vVt=W2(),aNe=rNe(),pVt=nNe(),mK=r5(),gVt=X2();sNe.exports=px;function px(e,t){if(!(this instanceof px))return new px(e,t);this.traces=[],this.passes={},this.regl=e,this.scatter=hVt(e),this.canvas=this.scatter.canvas}px.prototype.render=function(...e){return e.length&&this.update(...e),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?this.planned==null&&(this.planned=aNe(()=>{this.draw(),this.dirty=!0,this.planned=null})):(this.draw(),this.dirty=!0,aNe(()=>{this.dirty=!1})),this)};px.prototype.update=function(...e){if(!e.length)return;for(let n=0;nb||!i.lower&&_{t[a+s]=n})}this.scatter.draw(...t)}return this};px.prototype.destroy=function(){return this.traces.forEach(e=>{e.buffer&&e.buffer.destroy&&e.buffer.destroy()}),this.traces=null,this.passes=null,this.scatter.destroy(),this};function mVt(e,t,r){let n=e.id!=null?e.id:e,i=t,a=r;return n<<16|(i&255)<<8|a&255}function Iz(e,t,r){let n,i,a,o,s,l,u,c,f=e[t],h=e[r];return f.length>2?(n=f[0],a=f[2],i=f[1],o=f[3]):f.length?(n=i=f[0],a=o=f[1]):(n=f.x,i=f.y,a=f.x+f.width,o=f.y+f.height),h.length>2?(s=h[0],u=h[2],l=h[1],c=h[3]):h.length?(s=l=h[0],u=c=h[1]):(s=h.x,l=h.y,u=h.x+h.width,c=h.y+h.height),[s,i,u,o]}function oNe(e){if(typeof e=="number")return[e,e,e,e];if(e.length===2)return[e[0],e[1],e[0],e[1]];{let t=mK(e);return[t.x,t.y,t.x+t.width,t.y+t.height]}}});var cNe=ye((A_r,uNe)=>{"use strict";var yVt=lNe(),yK=Dr(),Rz=hf(),_Vt=Mg().selectMode;uNe.exports=function(t,r,n){if(n.length)for(var i=0;i-1,T=_Vt(c)||!!i.selectedpoints||P,z=!0;if(T){var O=i._length;if(i.selectedpoints){o.selectBatch=i.selectedpoints;var V=i.selectedpoints,G={};for(d=0;d{"use strict";fNe.getDimIndex=function(t,r){for(var n=r._id,i=n.charAt(0),a={x:0,y:1}[i],o=t._visibleDims,s=0;s{"use strict";var hNe=_K(),bVt=NF().calcHover,dNe=ho().getFromId,wVt=Ao().extendFlat;function TVt(e,t,r,n,i){i||(i={});var a=(n||"").charAt(0)==="x",o=(n||"").charAt(0)==="y",s=vNe(e,t,r);if((a||o)&&i.hoversubplots==="axis"&&s[0])for(var l=(a?e.xa:e.ya)._subplotsWith,u=i.gd,c=wVt({},e),f=0;f{"use strict";var xNe=Dr(),mNe=xNe.pushUnique,yNe=Ru(),_Ne=_K();bNe.exports=function(t,r){var n=t.cd,i=n[0].trace,a=n[0].t,o=t.scene,s=o.matrixOptions.cdata,l=t.xaxis,u=t.yaxis,c=[];if(!o)return c;var f=!yNe.hasMarkers(i)&&!yNe.hasText(i);if(i.visible!==!0||f)return c;var h=_Ne.getDimIndex(i,l),d=_Ne.getDimIndex(i,u);if(h===!1||d===!1)return c;var v=a.xpx[h],_=a.ypx[d],b=s[h],p=s[d],k=(t.scene.selectBatch||[]).slice(),E=[];if(r!==!1&&!r.degenerate)for(var S=0;S{"use strict";var TNe=Dr(),AVt=F0(),SVt=K2().markerStyle;ANe.exports=function(t,r){var n=r.trace,i=t._fullLayout._splomScenes[n.uid];if(i){AVt(t,n),TNe.extendFlat(i.matrixOptions,SVt(t,n));var a=TNe.extendFlat({},i.matrixOptions,i.viewOpts);i.matrix.update(a,null)}}});var ENe=ye((C_r,MNe)=>{"use strict";var MVt=qa(),EVt=fV();MNe.exports={moduleType:"trace",name:"splom",categories:["gl","regl","cartesian","symbols","showLegend","scatter-like"],attributes:dK(),supplyDefaults:WBe(),colorbar:$d(),calc:$Be(),plot:cNe(),hoverPoints:gNe().hoverPoints,selectPoints:wNe(),editStyle:SNe(),meta:{}};MVt.register(EVt)});var RNe=ye((L_r,INe)=>{"use strict";var kVt=VY(),CVt=qa(),LVt=Sz(),PVt=Id().getModuleCalcData,gx=ph(),kNe=hf().getFromId,CNe=ho().shouldShowZeroLine,LNe="splom",PNe={};function IVt(e){var t=e._fullLayout,r=CVt.getModule(LNe),n=PVt(e.calcdata,r)[0],i=LVt(e,["ANGLE_instanced_arrays","OES_element_index_uint"],PNe);i&&(t._hasOnlyLargeSploms&&xK(e),r.plot(e,{},n))}function RVt(e){var t=e.calcdata,r=e._fullLayout;r._hasOnlyLargeSploms&&xK(e);for(var n=0;n{"use strict";var DNe=ENe();DNe.basePlotModule=RNe(),FNe.exports=DNe});var qNe=ye((I_r,ONe)=>{"use strict";ONe.exports=zNe()});var TK=ye((R_r,BNe)=>{"use strict";var OVt=Tu(),bK=Rd(),wK=ec(),qVt=Cc().attributes,Dz=Ao().extendFlat,BVt=vl().templatedArray;BNe.exports={domain:qVt({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:wK({editType:"plot"}),tickfont:wK({autoShadowDflt:!0,editType:"plot"}),rangefont:wK({editType:"plot"}),dimensions:BVt("dimension",{label:{valType:"string",editType:"plot"},tickvals:Dz({},bK.tickvals,{editType:"plot"}),ticktext:Dz({},bK.ticktext,{editType:"plot"}),tickformat:Dz({},bK.tickformat,{editType:"plot"}),visible:{valType:"boolean",dflt:!0,editType:"plot"},range:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},constraintrange:{valType:"info_array",freeLength:!0,dimensions:"1-2",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},multiselect:{valType:"boolean",dflt:!0,editType:"plot"},values:{valType:"data_array",editType:"calc"},editType:"calc"}),line:Dz({editType:"calc"},OVt("line",{colorscaleDflt:"Viridis",autoColorDflt:!1,editTypeOverride:"calc"})),unselected:{line:{color:{valType:"color",dflt:"#7f7f7f",editType:"plot"},opacity:{valType:"number",min:0,max:1,dflt:"auto",editType:"plot"},editType:"plot"},editType:"plot"}}});var Pk=ye((D_r,NNe)=>{"use strict";NNe.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:["contextLineLayer","focusLineLayer","pickLineLayer"],axisTitleOffset:28,axisExtentOffset:10,bar:{width:4,captureWidth:10,fillColor:"magenta",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeOpacity:1,strokeWidth:1,handleHeight:8,handleOpacity:1,handleOverlap:0},cn:{axisExtentText:"axis-extent-text",parcoordsLineLayers:"parcoords-line-layers",parcoordsLineLayer:"parcoords-lines",parcoords:"parcoords",parcoordsControlView:"parcoords-control-view",yAxis:"y-axis",axisOverlays:"axis-overlays",axis:"axis",axisHeading:"axis-heading",axisTitle:"axis-title",axisExtent:"axis-extent",axisExtentTop:"axis-extent-top",axisExtentTopText:"axis-extent-top-text",axisExtentBottom:"axis-extent-bottom",axisExtentBottomText:"axis-extent-bottom-text",axisBrush:"axis-brush"},id:{filterBarPattern:"filter-bar-pattern"}}});var Jm=ye((F_r,VNe)=>{"use strict";var NVt=GS();function UNe(e){return[e]}VNe.exports={keyFun:function(e){return e.key},repeat:UNe,descend:NVt,wrap:UNe,unwrap:function(e){return e[0]}}});var MK=ye((z_r,QNe)=>{"use strict";var bh=Pk(),em=Oa(),UVt=Jm().keyFun,Fz=Jm().repeat,_5=Dr().sorterAsc,VVt=Dr().strTranslate,GNe=bh.bar.snapRatio;function HNe(e,t){return e*(1-GNe)+t*GNe}var jNe=bh.bar.snapClose;function GVt(e,t){return e*(1-jNe)+t*jNe}function Oz(e,t,r,n){if(HVt(r,n))return r;var i=e?-1:1,a=0,o=t.length-1;if(i<0){var s=a;a=o,o=s}for(var l=t[a],u=l,c=a;i*c=t[r][0]&&e<=t[r][1])return!0;return!1}function jVt(e){e.attr("x",-bh.bar.captureWidth/2).attr("width",bh.bar.captureWidth)}function WVt(e){e.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function XVt(e){if(!e.brush.filterSpecified)return"0,"+e.height;for(var t=WNe(e.brush.filter.getConsolidated(),e.height),r=[0],n,i,a,o=t.length?t[0][0]:null,s=0;se[1]+r||t=.9*e[1]+.1*e[0]?"n":t<=.9*e[0]+.1*e[1]?"s":"ns"}function XNe(){em.select(document.body).style("cursor",null)}function SK(e){e.attr("stroke-dasharray",XVt)}function zz(e,t){var r=em.select(e).selectAll(".highlight, .highlight-shadow"),n=t?r.transition().duration(bh.bar.snapDuration).each("end",t):r;SK(n)}function ZNe(e,t){var r=e.brush,n=r.filterSpecified,i=NaN,a={},o;if(n){var s=e.height,l=r.filter.getConsolidated(),u=WNe(l,s),c=NaN,f=NaN,h=NaN;for(o=0;o<=u.length;o++){var d=u[o];if(d&&d[0]<=t&&t<=d[1]){c=o;break}else if(f=o?o-1:NaN,d&&d[0]>t){h=o;break}}if(i=c,isNaN(i)&&(isNaN(f)||isNaN(h)?i=isNaN(f)?h:f:i=t-u[f][1]=k[0]&&p<=k[1]){a.clickableOrdinalRange=k;break}}}return a}function YVt(e,t){em.event.sourceEvent.stopPropagation();var r=t.height-em.mouse(e)[1]-2*bh.verticalPadding,n=t.unitToPaddedPx.invert(r),i=t.brush,a=ZNe(t,r),o=a.interval,s=i.svgBrush;if(s.wasDragged=!1,s.grabbingBar=a.region==="ns",s.grabbingBar){var l=o.map(t.unitToPaddedPx);s.grabPoint=r-l[0]-bh.verticalPadding,s.barLength=l[1]-l[0]}s.clickableOrdinalRange=a.clickableOrdinalRange,s.stayingIntervals=t.multiselect&&i.filterSpecified?i.filter.getConsolidated():[],o&&(s.stayingIntervals=s.stayingIntervals.filter(function(u){return u[0]!==o[0]&&u[1]!==o[1]})),s.startExtent=a.region?o[a.region==="s"?1:0]:n,t.parent.inBrushDrag=!0,s.brushStartCallback()}function YNe(e,t){em.event.sourceEvent.stopPropagation();var r=t.height-em.mouse(e)[1]-2*bh.verticalPadding,n=t.brush.svgBrush;n.wasDragged=!0,n._dragging=!0,n.grabbingBar?n.newExtent=[r-n.grabPoint,r+n.barLength-n.grabPoint].map(t.unitToPaddedPx.invert):n.newExtent=[n.startExtent,t.unitToPaddedPx.invert(r)].sort(_5),t.brush.filterSpecified=!0,n.extent=n.stayingIntervals.concat([n.newExtent]),n.brushCallback(t),zz(e.parentNode)}function KVt(e,t){var r=t.brush,n=r.filter,i=r.svgBrush;i._dragging||(KNe(e,t),YNe(e,t),t.brush.svgBrush.wasDragged=!1),i._dragging=!1;var a=em.event;a.sourceEvent.stopPropagation();var o=i.grabbingBar;if(i.grabbingBar=!1,i.grabLocation=void 0,t.parent.inBrushDrag=!1,XNe(),!i.wasDragged){i.wasDragged=void 0,i.clickableOrdinalRange?r.filterSpecified&&t.multiselect?i.extent.push(i.clickableOrdinalRange):(i.extent=[i.clickableOrdinalRange],r.filterSpecified=!0):o?(i.extent=i.stayingIntervals,i.extent.length===0&&AK(r)):AK(r),i.brushCallback(t),zz(e.parentNode),i.brushEndCallback(r.filterSpecified?n.getConsolidated():[]);return}var s=function(){n.set(n.getConsolidated())};if(t.ordinal){var l=t.unitTickvals;l[l.length-1]i.newExtent[0];i.extent=i.stayingIntervals.concat(u?[i.newExtent]:[]),i.extent.length||AK(r),i.brushCallback(t),u?zz(e.parentNode,s):(s(),zz(e.parentNode))}else s();i.brushEndCallback(r.filterSpecified?n.getConsolidated():[])}function KNe(e,t){var r=t.height-em.mouse(e)[1]-2*bh.verticalPadding,n=ZNe(t,r),i="crosshair";n.clickableOrdinalRange?i="pointer":n.region&&(i=n.region+"-resize"),em.select(document.body).style("cursor",i)}function JVt(e){e.on("mousemove",function(t){em.event.preventDefault(),t.parent.inBrushDrag||KNe(this,t)}).on("mouseleave",function(t){t.parent.inBrushDrag||XNe()}).call(em.behavior.drag().on("dragstart",function(t){YVt(this,t)}).on("drag",function(t){YNe(this,t)}).on("dragend",function(t){KVt(this,t)}))}function JNe(e,t){return e[0]-t[0]}function $Vt(e,t,r){var n=r._context.staticPlot,i=e.selectAll(".background").data(Fz);i.enter().append("rect").classed("background",!0).call(jVt).call(WVt).style("pointer-events",n?"none":"auto").attr("transform",VVt(0,bh.verticalPadding)),i.call(JVt).attr("height",function(s){return s.height-bh.verticalPadding});var a=e.selectAll(".highlight-shadow").data(Fz);a.enter().append("line").classed("highlight-shadow",!0).attr("x",-bh.bar.width/2).attr("stroke-width",bh.bar.width+bh.bar.strokeWidth).attr("stroke",t).attr("opacity",bh.bar.strokeOpacity).attr("stroke-linecap","butt"),a.attr("y1",function(s){return s.height}).call(SK);var o=e.selectAll(".highlight").data(Fz);o.enter().append("line").classed("highlight",!0).attr("x",-bh.bar.width/2).attr("stroke-width",bh.bar.width-bh.bar.strokeWidth).attr("stroke",bh.bar.fillColor).attr("opacity",bh.bar.fillOpacity).attr("stroke-linecap","butt"),o.attr("y1",function(s){return s.height}).call(SK)}function QVt(e,t,r){var n=e.selectAll("."+bh.cn.axisBrush).data(Fz,UVt);n.enter().append("g").classed(bh.cn.axisBrush,!0),$Vt(n,t,r)}function eGt(e){return e.svgBrush.extent.map(function(t){return t.slice()})}function AK(e){e.filterSpecified=!1,e.svgBrush.extent=[[-1/0,1/0]]}function tGt(e){return function(r){var n=r.brush,i=eGt(n),a=i.slice();n.filter.set(a),e()}}function $Ne(e){for(var t=e.slice(),r=[],n,i=t.shift();i;){for(n=i.slice();(i=t.shift())&&i[0]<=n[1];)n[1]=Math.max(n[1],i[1]);r.push(n)}return r.length===1&&r[0][0]>r[0][1]&&(r=[]),r}function rGt(){var e=[],t,r;return{set:function(n){e=n.map(function(i){return i.slice().sort(_5)}).sort(JNe),e.length===1&&e[0][0]===-1/0&&e[0][1]===1/0&&(e=[[0,-1]]),t=$Ne(e),r=e.reduce(function(i,a){return[Math.min(i[0],a[0]),Math.max(i[1],a[1])]},[1/0,-1/0])},get:function(){return e.slice()},getConsolidated:function(){return t},getBounds:function(){return r}}}function iGt(e,t,r,n,i,a){var o=rGt();return o.set(r),{filter:o,filterSpecified:t,svgBrush:{extent:[],brushStartCallback:n,brushCallback:tGt(i),brushEndCallback:a}}}function nGt(e,t){if(Array.isArray(e[0])?(e=e.map(function(n){return n.sort(_5)}),t.multiselect?e=$Ne(e.sort(JNe)):e=[e[0]]):e=[e.sort(_5)],t.tickvals){var r=t.tickvals.slice().sort(_5);if(e=e.map(function(n){var i=[Oz(0,r,n[0],[]),Oz(1,r,n[1],[])];if(i[1]>i[0])return i}).filter(function(n){return n}),!e.length)return}return e.length>1?e:e[0]}QNe.exports={makeBrush:iGt,ensureAxisBrush:QVt,cleanRanges:nGt}});var rUe=ye((O_r,tUe)=>{"use strict";var mx=Dr(),aGt=pv().hasColorscale,oGt=Qh(),sGt=Cc().defaults,lGt=Yd(),uGt=ho(),eUe=TK(),cGt=MK(),EK=Pk().maxDimensionCount,fGt=Ez();function hGt(e,t,r,n,i){var a=i("line.color",r);if(aGt(e,"line")&&mx.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),oGt(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function dGt(e,t,r,n){function i(u,c){return mx.coerce(e,t,eUe.dimensions,u,c)}var a=i("values"),o=i("visible");if(a&&a.length||(o=t.visible=!1),o){i("label"),i("tickvals"),i("ticktext"),i("tickformat");var s=i("range");t._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:s},uGt.setConvert(t._ax,n.layout),i("multiselect");var l=i("constraintrange");l&&(t.constraintrange=cGt.cleanRanges(l,t))}}tUe.exports=function(t,r,n,i){function a(c,f){return mx.coerce(t,r,eUe,c,f)}var o=t.dimensions;Array.isArray(o)&&o.length>EK&&(mx.log("parcoords traces support up to "+EK+" dimensions at the moment"),o.splice(EK));var s=lGt(t,r,{name:"dimensions",layout:i,handleItemDefaults:dGt}),l=hGt(t,r,n,i,a);sGt(r,i,a),(!Array.isArray(s)||!s.length)&&(r.visible=!1),fGt(r,s,"values",l);var u=mx.extendFlat({},i.font,{size:Math.round(i.font.size/1.2)});mx.coerceFont(a,"labelfont",u),mx.coerceFont(a,"tickfont",u,{autoShadowDflt:!0}),mx.coerceFont(a,"rangefont",u),a("labelangle"),a("labelside"),a("unselected.line.color"),a("unselected.line.opacity")}});var nUe=ye((q_r,iUe)=>{"use strict";var vGt=Dr().isArrayOrTypedArray,kK=tc(),pGt=Jm().wrap;iUe.exports=function(t,r){var n,i;return kK.hasColorscale(r,"line")&&vGt(r.line.color)?(n=r.line.color,i=kK.extractOpts(r.line).colorscale,kK.calc(t,r,{vals:n,containerStr:"line",cLetter:"c"})):(n=gGt(r._length),i=[[0,r.line.color],[1,r.line.color]]),pGt({lineColor:n,cscale:i})};function gGt(e){for(var t=new Array(e),r=0;r>>16,(e&65280)>>>8,e&255],alpha:1};if(typeof e=="number")return{space:"rgb",values:[e>>>16,(e&65280)>>>8,e&255],alpha:1};if(e=String(e).toLowerCase(),CK.default[e])r=CK.default[e].slice(),i="rgb";else if(e==="transparent")n=0,i="rgb",r=[0,0,0];else if(e[0]==="#"){var a=e.slice(1),o=a.length,s=o<=4;n=1,s?(r=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],o===4&&(n=parseInt(a[3]+a[3],16)/255)):(r=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],o===8&&(n=parseInt(a[6]+a[7],16)/255)),r[0]||(r[0]=0),r[1]||(r[1]=0),r[2]||(r[2]=0),i="rgb"}else if(t=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(e)){var l=t[1];i=l.replace(/a$/,"");var u=i==="cmyk"?4:i==="gray"?1:3;r=t[2].trim().split(/\s*[,\/]\s*|\s+/),i==="color"&&(i=r.shift()),r=r.map(function(h,d){if(h[h.length-1]==="%")return h=parseFloat(h)/100,d===3?h:i==="rgb"?h*255:i[0]==="h"||i[0]==="l"&&!d?h*100:i==="lab"?h*125:i==="lch"?d<2?h*150:h*360:i[0]==="o"&&!d?h:i==="oklab"?h*.4:i==="oklch"?d<2?h*.4:h*360:h;if(i[d]==="h"||d===2&&i[i.length-1]==="h"){if(aUe[h]!==void 0)return aUe[h];if(h.endsWith("deg"))return parseFloat(h);if(h.endsWith("turn"))return parseFloat(h)*360;if(h.endsWith("grad"))return parseFloat(h)*360/400;if(h.endsWith("rad"))return parseFloat(h)*180/Math.PI}return h==="none"?0:parseFloat(h)}),n=r.length>u?r.pop():1}else/[0-9](?:\s|\/|,)/.test(e)&&(r=e.match(/([0-9]+)/g).map(function(h){return parseFloat(h)}),i=((f=(c=e.match(/([a-z])/ig))==null?void 0:c.join(""))==null?void 0:f.toLowerCase())||"rgb");return{space:i,values:r,alpha:n}}var CK,oUe,aUe,sUe=gu(()=>{CK=ptt(pX(),1),oUe=mGt,aUe={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}});var Ik,LK=gu(()=>{Ik={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}});var qz,lUe=gu(()=>{LK();qz={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a,o,s,l,u=0;if(r===0)return l=n*255,[l,l,l];for(a=n<.5?n*(1+r):n+r-n*r,i=2*n-a,s=[0,0,0];u<3;)o=t+1/3*-(u-1),o<0?o++:o>1&&o--,l=6*o<1?i+(a-i)*6*o:2*o<1?a:3*o<2?i+(a-i)*(2/3-o)*6:i,s[u++]=l*255;return s}};Ik.hsl=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=a-i,s,l,u;return a===i?s=0:t===a?s=(r-n)/o:r===a?s=2+(n-t)/o:n===a&&(s=4+(t-r)/o),s=Math.min(s*60,360),s<0&&(s+=360),u=(i+a)/2,a===i?l=0:u<=.5?l=o/(a+i):l=o/(2-a-i),[s,l*100,u*100]}});var cUe={};uee(cUe,{default:()=>uUe});function uUe(e){Array.isArray(e)&&e.raw&&(e=String.raw(...arguments)),e instanceof Number&&(e=+e);var t,r,n,i=oUe(e);if(!i.space)return[];let a=i.space[0]==="h"?qz.min:Ik.min,o=i.space[0]==="h"?qz.max:Ik.max;return t=Array(3),t[0]=Math.min(Math.max(i.values[0],a[0]),o[0]),t[1]=Math.min(Math.max(i.values[1],a[1]),o[1]),t[2]=Math.min(Math.max(i.values[2],a[2]),o[2]),i.space[0]==="h"&&(t=qz.rgb(t)),t.push(Math.min(Math.max(i.alpha,0),1)),t}var fUe=gu(()=>{sUe();LK();lUe()});var PK=ye(Bz=>{"use strict";var yGt=Dr().isTypedArray;Bz.convertTypedArray=function(e){return yGt(e)?Array.prototype.slice.call(e):e};Bz.isOrdinal=function(e){return!!e.tickvals};Bz.isVisible=function(e){return e.visible||!("visible"in e)}});var bUe=ye((X_r,xUe)=>{"use strict";var _Gt=["precision highp float;","","varying vec4 fragColor;","","attribute vec4 p01_04, p05_08, p09_12, p13_16,"," p17_20, p21_24, p25_28, p29_32,"," p33_36, p37_40, p41_44, p45_48,"," p49_52, p53_56, p57_60, colors;","","uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,"," loA, hiA, loB, hiB, loC, hiC, loD, hiD;","","uniform vec2 resolution, viewBoxPos, viewBoxSize;","uniform float maskHeight;","uniform float drwLayer; // 0: context, 1: focus, 2: pick","uniform vec4 contextColor;","uniform sampler2D maskTexture, palette;","","bool isPick = (drwLayer > 1.5);","bool isContext = (drwLayer < 0.5);","","const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);","const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);","","float val(mat4 p, mat4 v) {"," return dot(matrixCompMult(p, v) * UNITS, UNITS);","}","","float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {"," float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);"," float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);"," return y1 * (1.0 - ratio) + y2 * ratio;","}","","int iMod(int a, int b) {"," return a - b * (a / b);","}","","bool fOutside(float p, float lo, float hi) {"," return (lo < hi) && (lo > p || p > hi);","}","","bool vOutside(vec4 p, vec4 lo, vec4 hi) {"," return ("," fOutside(p[0], lo[0], hi[0]) ||"," fOutside(p[1], lo[1], hi[1]) ||"," fOutside(p[2], lo[2], hi[2]) ||"," fOutside(p[3], lo[3], hi[3])"," );","}","","bool mOutside(mat4 p, mat4 lo, mat4 hi) {"," return ("," vOutside(p[0], lo[0], hi[0]) ||"," vOutside(p[1], lo[1], hi[1]) ||"," vOutside(p[2], lo[2], hi[2]) ||"," vOutside(p[3], lo[3], hi[3])"," );","}","","bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {"," return mOutside(A, loA, hiA) ||"," mOutside(B, loB, hiB) ||"," mOutside(C, loC, hiC) ||"," mOutside(D, loD, hiD);","}","","bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {"," mat4 pnts[4];"," pnts[0] = A;"," pnts[1] = B;"," pnts[2] = C;"," pnts[3] = D;",""," for(int i = 0; i < 4; ++i) {"," for(int j = 0; j < 4; ++j) {"," for(int k = 0; k < 4; ++k) {"," if(0 == iMod("," int(255.0 * texture2D(maskTexture,"," vec2("," (float(i * 2 + j / 2) + 0.5) / 8.0,"," (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight"," ))[3]"," ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),"," 2"," )) return true;"," }"," }"," }"," return false;","}","","vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {"," float x = 0.5 * sign(v) + 0.5;"," float y = axisY(x, A, B, C, D);"," float z = 1.0 - abs(v);",""," z += isContext ? 0.0 : 2.0 * float("," outsideBoundingBox(A, B, C, D) ||"," outsideRasterMask(A, B, C, D)"," );",""," return vec4("," 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,"," z,"," 1.0"," );","}","","void main() {"," mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);"," mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);"," mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);"," mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);",""," float v = colors[3];",""," gl_Position = position(isContext, v, A, B, C, D);",""," fragColor ="," isContext ? vec4(contextColor) :"," isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));","}"].join(` +`),Yr;if(bt&&(Yr=Oc(Mr),bt[Yr]))return bt[Yr].apply(null,jr);var xi=Function.apply(null,Rr.concat(Mr));return bt&&(bt[Yr]=xi),xi.apply(null,jr)}return{global:Ei,link:Gr,block:mi,proc:en,scope:Ui,cond:qi,compile:Wi}}var Ca="xyzw".split(""),Ra=5121,La=1,Na=2,Yn=0,Dn=1,Ka=2,bo=3,Xo=4,Ss=5,as=6,ws="dither",Ho="blend.enable",ml="blend.color",Ws="blend.equation",Ls="blend.func",va="depth.enable",no="depth.func",ys="depth.range",rs="depth.mask",$l="colorMask",Cu="cull.enable",Yu="cull.face",Nc="frontFace",pu="lineWidth",Uc="polygonOffset.enable",xu="polygonOffset.offset",Ac="sample.alpha",Ua="sample.enable",oo="sample.coverage",Vc="stencil.enable",hc="stencil.mask",Ku="stencil.func",ue="stencil.opFront",w="stencil.opBack",B="scissor.enable",Q="scissor.box",ee="viewport",le="profile",qe="framebuffer",Xe="vert",ot="frag",Tt="elements",Yt="primitive",Kt="count",xr="offset",Ir="instances",ve="vao",be="Width",De="Height",Be=qe+be,et=qe+De,We=ee+be,it=ee+De,Ft="drawingBuffer",Ht=Ft+be,tr=Ft+De,dr=[Ls,Ws,Ku,ue,w,oo,ee,Q,xu],Sr=34962,Or=34963,Wr=2884,ni=3042,Pi=3024,cn=2960,ln=2929,Cn=3089,Kn=32823,Ta=32926,fa=32928,$a=5126,Co=35664,Qa=35665,mo=35666,Bo=5124,Ps=35667,Ts=35668,wo=35669,To=35670,hl=35671,Ul=35672,Lu=35673,au=35674,Js=35675,Ql=35676,dc=35678,Tl=35680,Al=4,X=1028,se=1029,Te=2304,Ne=2305,He=32775,Ye=32776,kt=519,nt=7680,jt=0,gr=1,yr=32774,Hr=513,qr=36160,_i=36064,bi={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Zr={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},ai={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},gi={cw:Te,ccw:Ne};function Ii(Me){return Array.isArray(Me)||Br(Me)||Vr(Me)}function Si(Me){return Me.sort(function(bt,zt){return bt===ee?-1:zt===ee?1:bt=1,Rr>=2,bt)}else if(zt===Xo){var jr=Me.data;return new ei(jr.thisDep,jr.contextDep,jr.propDep,bt)}else{if(zt===Ss)return new ei(!1,!1,!1,bt);if(zt===as){for(var Nr=!1,Gr=!1,mi=!1,Ui=0;Ui=1&&(Gr=!0),Ei>=2&&(mi=!0)}else qi.type===Xo&&(Nr=Nr||qi.data.thisDep,Gr=Gr||qi.data.contextDep,mi=mi||qi.data.propDep)}return new ei(Nr,Gr,mi,bt)}else return new ei(zt===bo,zt===Ka,zt===Dn,bt)}}var ia=new ei(!1,!1,!1,function(){});function Ea(Me,bt,zt,Rr,jr,Nr,Gr,mi,Ui,qi,Ei,Hn,en,Wi,si,Mr){var Yr=qi.Record,xi={add:32774,subtract:32778,"reverse subtract":32779};zt.ext_blend_minmax&&(xi.min=He,xi.max=Ye);var Ri=zt.angle_instanced_arrays,ci=zt.webgl_draw_buffers,an=zt.oes_vertex_array_object,Zi={dirty:!0,profile:Mr.profile},Bn={},hi=[],li={},mn={};function Ji(Ve){return Ve.replace(".","_")}function Vi(Ve,Qe,at){var Ct=Ji(Ve);hi.push(Ve),Bn[Ct]=Zi[Ct]=!!at,li[Ct]=Qe}function Ni(Ve,Qe,at){var Ct=Ji(Ve);hi.push(Ve),Array.isArray(at)?(Zi[Ct]=at.slice(),Bn[Ct]=at.slice()):Zi[Ct]=Bn[Ct]=at,mn[Ct]=Qe}function pn(Ve){return!!isNaN(Ve)}Vi(ws,Pi),Vi(Ho,ni),Ni(ml,"blendColor",[0,0,0,0]),Ni(Ws,"blendEquationSeparate",[yr,yr]),Ni(Ls,"blendFuncSeparate",[gr,jt,gr,jt]),Vi(va,ln,!0),Ni(no,"depthFunc",Hr),Ni(ys,"depthRange",[0,1]),Ni(rs,"depthMask",!0),Ni($l,$l,[!0,!0,!0,!0]),Vi(Cu,Wr),Ni(Yu,"cullFace",se),Ni(Nc,Nc,Ne),Ni(pu,pu,1),Vi(Uc,Kn),Ni(xu,"polygonOffset",[0,0]),Vi(Ac,Ta),Vi(Ua,fa),Ni(oo,"sampleCoverage",[1,!1]),Vi(Vc,cn),Ni(hc,"stencilMask",-1),Ni(Ku,"stencilFunc",[kt,0,-1]),Ni(ue,"stencilOpSeparate",[X,nt,nt,nt]),Ni(w,"stencilOpSeparate",[se,nt,nt,nt]),Vi(B,Cn),Ni(Q,"scissor",[0,0,Me.drawingBufferWidth,Me.drawingBufferHeight]),Ni(ee,ee,[0,0,Me.drawingBufferWidth,Me.drawingBufferHeight]);var Vn={gl:Me,context:en,strings:bt,next:Bn,current:Zi,draw:Hn,elements:Nr,buffer:jr,shader:Ei,attributes:qi.state,vao:qi,uniforms:Ui,framebuffer:mi,extensions:zt,timer:Wi,isBufferArgs:Ii},na={primTypes:Sn,compareFuncs:Zr,blendFuncs:bi,blendEquations:xi,stencilOps:ai,glTypes:ji,orientationType:gi};ci&&(na.backBuffer=[se],na.drawBuffer=M(Rr.maxDrawbuffers,function(Ve){return Ve===0?[0]:M(Ve,function(Qe){return _i+Qe})}));var Ki=0;function kn(){var Ve=$n({cache:si}),Qe=Ve.link,at=Ve.global;Ve.id=Ki++,Ve.batchId="0";var Ct=Qe(Vn),Ot=Ve.shared={props:"a0"};Object.keys(Vn).forEach(function(Pt){Ot[Pt]=at.def(Ct,".",Pt)});var Rt=Ve.next={},Bt=Ve.current={};Object.keys(mn).forEach(function(Pt){Array.isArray(Zi[Pt])&&(Rt[Pt]=at.def(Ot.next,".",Pt),Bt[Pt]=at.def(Ot.current,".",Pt))});var Dt=Ve.constants={};Object.keys(na).forEach(function(Pt){Dt[Pt]=at.def(JSON.stringify(na[Pt]))}),Ve.invoke=function(Pt,ht){switch(ht.type){case Yn:var ur=["this",Ot.context,Ot.props,Ve.batchId];return Pt.def(Qe(ht.data),".call(",ur.slice(0,Math.max(ht.data.length+1,4)),")");case Dn:return Pt.def(Ot.props,ht.data);case Ka:return Pt.def(Ot.context,ht.data);case bo:return Pt.def("this",ht.data);case Xo:return ht.data.append(Ve,Pt),ht.data.ref;case Ss:return ht.data.toString();case as:return ht.data.map(function(br){return Ve.invoke(Pt,br)})}},Ve.attribCache={};var yt={};return Ve.scopeAttrib=function(Pt){var ht=bt.id(Pt);if(ht in yt)return yt[ht];var ur=qi.scope[ht];ur||(ur=qi.scope[ht]=new Yr);var br=yt[ht]=Qe(ur);return br},Ve}function ta(Ve){var Qe=Ve.static,at=Ve.dynamic,Ct;if(le in Qe){var Ot=!!Qe[le];Ct=En(function(Bt,Dt){return Ot}),Ct.enable=Ot}else if(le in at){var Rt=at[le];Ct=Un(Rt,function(Bt,Dt){return Bt.invoke(Dt,Rt)})}return Ct}function oa(Ve,Qe){var at=Ve.static,Ct=Ve.dynamic;if(qe in at){var Ot=at[qe];return Ot?(Ot=mi.getFramebuffer(Ot),En(function(Bt,Dt){var yt=Bt.link(Ot),Pt=Bt.shared;Dt.set(Pt.framebuffer,".next",yt);var ht=Pt.context;return Dt.set(ht,"."+Be,yt+".width"),Dt.set(ht,"."+et,yt+".height"),yt})):En(function(Bt,Dt){var yt=Bt.shared;Dt.set(yt.framebuffer,".next","null");var Pt=yt.context;return Dt.set(Pt,"."+Be,Pt+"."+Ht),Dt.set(Pt,"."+et,Pt+"."+tr),"null"})}else if(qe in Ct){var Rt=Ct[qe];return Un(Rt,function(Bt,Dt){var yt=Bt.invoke(Dt,Rt),Pt=Bt.shared,ht=Pt.framebuffer,ur=Dt.def(ht,".getFramebuffer(",yt,")");Dt.set(ht,".next",ur);var br=Pt.context;return Dt.set(br,"."+Be,ur+"?"+ur+".width:"+br+"."+Ht),Dt.set(br,"."+et,ur+"?"+ur+".height:"+br+"."+tr),ur})}else return null}function ba(Ve,Qe,at){var Ct=Ve.static,Ot=Ve.dynamic;function Rt(yt){if(yt in Ct){var Pt=Ct[yt],ht=!0,ur=Pt.x|0,br=Pt.y|0,Ur,Di;return"width"in Pt?Ur=Pt.width|0:ht=!1,"height"in Pt?Di=Pt.height|0:ht=!1,new ei(!ht&&Qe&&Qe.thisDep,!ht&&Qe&&Qe.contextDep,!ht&&Qe&&Qe.propDep,function(gn,rn){var Ci=gn.shared.context,Bi=Ur;"width"in Pt||(Bi=rn.def(Ci,".",Be,"-",ur));var Gi=Di;return"height"in Pt||(Gi=rn.def(Ci,".",et,"-",br)),[ur,br,Bi,Gi]})}else if(yt in Ot){var fi=Ot[yt],Ti=Un(fi,function(gn,rn){var Ci=gn.invoke(rn,fi),Bi=gn.shared.context,Gi=rn.def(Ci,".x|0"),sn=rn.def(Ci,".y|0"),zn=rn.def('"width" in ',Ci,"?",Ci,".width|0:","(",Bi,".",Be,"-",Gi,")"),Ja=rn.def('"height" in ',Ci,"?",Ci,".height|0:","(",Bi,".",et,"-",sn,")");return[Gi,sn,zn,Ja]});return Qe&&(Ti.thisDep=Ti.thisDep||Qe.thisDep,Ti.contextDep=Ti.contextDep||Qe.contextDep,Ti.propDep=Ti.propDep||Qe.propDep),Ti}else return Qe?new ei(Qe.thisDep,Qe.contextDep,Qe.propDep,function(gn,rn){var Ci=gn.shared.context;return[0,0,rn.def(Ci,".",Be),rn.def(Ci,".",et)]}):null}var Bt=Rt(ee);if(Bt){var Dt=Bt;Bt=new ei(Bt.thisDep,Bt.contextDep,Bt.propDep,function(yt,Pt){var ht=Dt.append(yt,Pt),ur=yt.shared.context;return Pt.set(ur,"."+We,ht[2]),Pt.set(ur,"."+it,ht[3]),ht})}return{viewport:Bt,scissor_box:Rt(Q)}}function is(Ve,Qe){var at=Ve.static,Ct=typeof at[ot]=="string"&&typeof at[Xe]=="string";if(Ct){if(Object.keys(Qe.dynamic).length>0)return null;var Ot=Qe.static,Rt=Object.keys(Ot);if(Rt.length>0&&typeof Ot[Rt[0]]=="number"){for(var Bt=[],Dt=0;Dt"+Gi+"?"+ht+".constant["+Gi+"]:0;"}).join(""),"}}else{","if(",Ur,"(",ht,".buffer)){",gn,"=",Di,".createStream(",Sr,",",ht,".buffer);","}else{",gn,"=",Di,".getBuffer(",ht,".buffer);","}",rn,'="type" in ',ht,"?",br.glTypes,"[",ht,".type]:",gn,".dtype;",fi.normalized,"=!!",ht,".normalized;");function Ci(Bi){Pt(fi[Bi],"=",ht,".",Bi,"|0;")}return Ci("size"),Ci("offset"),Ci("stride"),Ci("divisor"),Pt("}}"),Pt.exit("if(",fi.isStream,"){",Di,".destroyStream(",gn,");","}"),fi}Ot[Rt]=Un(Bt,Dt)}),Ot}function al(Ve){var Qe=Ve.static,at=Ve.dynamic,Ct={};return Object.keys(Qe).forEach(function(Ot){var Rt=Qe[Ot];Ct[Ot]=En(function(Bt,Dt){return typeof Rt=="number"||typeof Rt=="boolean"?""+Rt:Bt.link(Rt)})}),Object.keys(at).forEach(function(Ot){var Rt=at[Ot];Ct[Ot]=Un(Rt,function(Bt,Dt){return Bt.invoke(Dt,Rt)})}),Ct}function Vl(Ve,Qe,at,Ct,Ot){var Rt=Ve.static,Bt=Ve.dynamic,Dt=is(Ve,Qe),yt=oa(Ve,Ot),Pt=ba(Ve,yt,Ot),ht=Va(Ve,Ot),ur=Ml(Ve,Ot),br=Zs(Ve,Ot,Dt);function Ur(Ci){var Bi=Pt[Ci];Bi&&(ur[Ci]=Bi)}Ur(ee),Ur(Ji(Q));var Di=Object.keys(ur).length>0,fi={framebuffer:yt,draw:ht,shader:br,state:ur,dirty:Di,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(fi.profile=ta(Ve,Ot),fi.uniforms=zo(at,Ot),fi.drawVAO=fi.scopeVAO=ht.vao,!fi.drawVAO&&br.program&&!Dt&&zt.angle_instanced_arrays&&ht.static.elements){var Ti=!0,gn=br.program.attributes.map(function(Ci){var Bi=Qe.static[Ci];return Ti=Ti&&!!Bi,Bi});if(Ti&&gn.length>0){var rn=qi.getVAO(qi.createVAO({attributes:gn,elements:ht.static.elements}));fi.drawVAO=new ei(null,null,null,function(Ci,Bi){return Ci.link(rn)}),fi.useVAO=!0}}return Dt?fi.useVAO=!0:fi.attributes=Qs(Qe,Ot),fi.context=al(Ct,Ot),fi}function ss(Ve,Qe,at){var Ct=Ve.shared,Ot=Ct.context,Rt=Ve.scope();Object.keys(at).forEach(function(Bt){Qe.save(Ot,"."+Bt);var Dt=at[Bt],yt=Dt.append(Ve,Qe);Array.isArray(yt)?Rt(Ot,".",Bt,"=[",yt.join(),"];"):Rt(Ot,".",Bt,"=",yt,";")}),Qe(Rt)}function Vs(Ve,Qe,at,Ct){var Ot=Ve.shared,Rt=Ot.gl,Bt=Ot.framebuffer,Dt;ci&&(Dt=Qe.def(Ot.extensions,".webgl_draw_buffers"));var yt=Ve.constants,Pt=yt.drawBuffer,ht=yt.backBuffer,ur;at?ur=at.append(Ve,Qe):ur=Qe.def(Bt,".next"),Ct||Qe("if(",ur,"!==",Bt,".cur){"),Qe("if(",ur,"){",Rt,".bindFramebuffer(",qr,",",ur,".framebuffer);"),ci&&Qe(Dt,".drawBuffersWEBGL(",Pt,"[",ur,".colorAttachments.length]);"),Qe("}else{",Rt,".bindFramebuffer(",qr,",null);"),ci&&Qe(Dt,".drawBuffersWEBGL(",ht,");"),Qe("}",Bt,".cur=",ur,";"),Ct||Qe("}")}function Ys(Ve,Qe,at){var Ct=Ve.shared,Ot=Ct.gl,Rt=Ve.current,Bt=Ve.next,Dt=Ct.current,yt=Ct.next,Pt=Ve.cond(Dt,".dirty");hi.forEach(function(ht){var ur=Ji(ht);if(!(ur in at.state)){var br,Ur;if(ur in Bt){br=Bt[ur],Ur=Rt[ur];var Di=M(Zi[ur].length,function(Ti){return Pt.def(br,"[",Ti,"]")});Pt(Ve.cond(Di.map(function(Ti,gn){return Ti+"!=="+Ur+"["+gn+"]"}).join("||")).then(Ot,".",mn[ur],"(",Di,");",Di.map(function(Ti,gn){return Ur+"["+gn+"]="+Ti}).join(";"),";"))}else{br=Pt.def(yt,".",ur);var fi=Ve.cond(br,"!==",Dt,".",ur);Pt(fi),ur in li?fi(Ve.cond(br).then(Ot,".enable(",li[ur],");").else(Ot,".disable(",li[ur],");"),Dt,".",ur,"=",br,";"):fi(Ot,".",mn[ur],"(",br,");",Dt,".",ur,"=",br,";")}}}),Object.keys(at.state).length===0&&Pt(Dt,".dirty=false;"),Qe(Pt)}function wa(Ve,Qe,at,Ct){var Ot=Ve.shared,Rt=Ve.current,Bt=Ot.current,Dt=Ot.gl,yt;Si(Object.keys(at)).forEach(function(Pt){var ht=at[Pt];if(!(Ct&&!Ct(ht))){var ur=ht.append(Ve,Qe);if(li[Pt]){var br=li[Pt];Ln(ht)?(yt=Ve.link(ur,{stable:!0}),Qe(Ve.cond(yt).then(Dt,".enable(",br,");").else(Dt,".disable(",br,");")),Qe(Bt,".",Pt,"=",yt,";")):(Qe(Ve.cond(ur).then(Dt,".enable(",br,");").else(Dt,".disable(",br,");")),Qe(Bt,".",Pt,"=",ur,";"))}else if(Mn(ur)){var Ur=Rt[Pt];Qe(Dt,".",mn[Pt],"(",ur,");",ur.map(function(Di,fi){return Ur+"["+fi+"]="+Di}).join(";"),";")}else Ln(ht)?(yt=Ve.link(ur,{stable:!0}),Qe(Dt,".",mn[Pt],"(",yt,");",Bt,".",Pt,"=",yt,";")):Qe(Dt,".",mn[Pt],"(",ur,");",Bt,".",Pt,"=",ur,";")}})}function ol(Ve,Qe){Ri&&(Ve.instancing=Qe.def(Ve.shared.extensions,".angle_instanced_arrays"))}function io(Ve,Qe,at,Ct,Ot){var Rt=Ve.shared,Bt=Ve.stats,Dt=Rt.current,yt=Rt.timer,Pt=at.profile;function ht(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var ur,br;function Ur(Ci){ur=Qe.def(),Ci(ur,"=",ht(),";"),typeof Ot=="string"?Ci(Bt,".count+=",Ot,";"):Ci(Bt,".count++;"),Wi&&(Ct?(br=Qe.def(),Ci(br,"=",yt,".getNumPendingQueries();")):Ci(yt,".beginQuery(",Bt,");"))}function Di(Ci){Ci(Bt,".cpuTime+=",ht(),"-",ur,";"),Wi&&(Ct?Ci(yt,".pushScopeStats(",br,",",yt,".getNumPendingQueries(),",Bt,");"):Ci(yt,".endQuery();"))}function fi(Ci){var Bi=Qe.def(Dt,".profile");Qe(Dt,".profile=",Ci,";"),Qe.exit(Dt,".profile=",Bi,";")}var Ti;if(Pt){if(Ln(Pt)){Pt.enable?(Ur(Qe),Di(Qe.exit),fi("true")):fi("false");return}Ti=Pt.append(Ve,Qe),fi(Ti)}else Ti=Qe.def(Dt,".profile");var gn=Ve.block();Ur(gn),Qe("if(",Ti,"){",gn,"}");var rn=Ve.block();Di(rn),Qe.exit("if(",Ti,"){",rn,"}")}function Y(Ve,Qe,at,Ct,Ot){var Rt=Ve.shared;function Bt(yt){switch(yt){case Co:case Ps:case hl:return 2;case Qa:case Ts:case Ul:return 3;case mo:case wo:case Lu:return 4;default:return 1}}function Dt(yt,Pt,ht){var ur=Rt.gl,br=Qe.def(yt,".location"),Ur=Qe.def(Rt.attributes,"[",br,"]"),Di=ht.state,fi=ht.buffer,Ti=[ht.x,ht.y,ht.z,ht.w],gn=["buffer","normalized","offset","stride"];function rn(){Qe("if(!",Ur,".buffer){",ur,".enableVertexAttribArray(",br,");}");var Bi=ht.type,Gi;if(ht.size?Gi=Qe.def(ht.size,"||",Pt):Gi=Pt,Qe("if(",Ur,".type!==",Bi,"||",Ur,".size!==",Gi,"||",gn.map(function(zn){return Ur+"."+zn+"!=="+ht[zn]}).join("||"),"){",ur,".bindBuffer(",Sr,",",fi,".buffer);",ur,".vertexAttribPointer(",[br,Gi,Bi,ht.normalized,ht.stride,ht.offset],");",Ur,".type=",Bi,";",Ur,".size=",Gi,";",gn.map(function(zn){return Ur+"."+zn+"="+ht[zn]+";"}).join(""),"}"),Ri){var sn=ht.divisor;Qe("if(",Ur,".divisor!==",sn,"){",Ve.instancing,".vertexAttribDivisorANGLE(",[br,sn],");",Ur,".divisor=",sn,";}")}}function Ci(){Qe("if(",Ur,".buffer){",ur,".disableVertexAttribArray(",br,");",Ur,".buffer=null;","}if(",Ca.map(function(Bi,Gi){return Ur+"."+Bi+"!=="+Ti[Gi]}).join("||"),"){",ur,".vertexAttrib4f(",br,",",Ti,");",Ca.map(function(Bi,Gi){return Ur+"."+Bi+"="+Ti[Gi]+";"}).join(""),"}")}Di===La?rn():Di===Na?Ci():(Qe("if(",Di,"===",La,"){"),rn(),Qe("}else{"),Ci(),Qe("}"))}Ct.forEach(function(yt){var Pt=yt.name,ht=at.attributes[Pt],ur;if(ht){if(!Ot(ht))return;ur=ht.append(Ve,Qe)}else{if(!Ot(ia))return;var br=Ve.scopeAttrib(Pt);ur={},Object.keys(new Yr).forEach(function(Ur){ur[Ur]=Qe.def(br,".",Ur)})}Dt(Ve.link(yt),Bt(yt.info.type),ur)})}function D(Ve,Qe,at,Ct,Ot,Rt){for(var Bt=Ve.shared,Dt=Bt.gl,yt,Pt=0;Pt1){for(var co=[],ts=[],so=0;so>1)",fi],");")}function sn(){at(Ti,".drawArraysInstancedANGLE(",[br,Ur,Di,fi],");")}ht&&ht!=="null"?rn?Gi():(at("if(",ht,"){"),Gi(),at("}else{"),sn(),at("}")):sn()}function Bi(){function Gi(){at(Rt+".drawElements("+[br,Di,gn,Ur+"<<(("+gn+"-"+Ra+")>>1)"]+");")}function sn(){at(Rt+".drawArrays("+[br,Ur,Di]+");")}ht&&ht!=="null"?rn?Gi():(at("if(",ht,"){"),Gi(),at("}else{"),sn(),at("}")):sn()}Ri&&(typeof fi!="number"||fi>=0)?typeof fi=="string"?(at("if(",fi,">0){"),Ci(),at("}else if(",fi,"<0){"),Bi(),at("}")):Ci():Bi()}function q(Ve,Qe,at,Ct,Ot){var Rt=kn(),Bt=Rt.proc("body",Ot);return Ri&&(Rt.instancing=Bt.def(Rt.shared.extensions,".angle_instanced_arrays")),Ve(Rt,Bt,at,Ct),Rt.compile().body}function K(Ve,Qe,at,Ct){ol(Ve,Qe),at.useVAO?at.drawVAO?Qe(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,Qe),");"):Qe(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(Qe(Ve.shared.vao,".setVAO(null);"),Y(Ve,Qe,at,Ct.attributes,function(){return!0})),D(Ve,Qe,at,Ct.uniforms,function(){return!0},!1),J(Ve,Qe,Qe,at)}function de(Ve,Qe){var at=Ve.proc("draw",1);ol(Ve,at),ss(Ve,at,Qe.context),Vs(Ve,at,Qe.framebuffer),Ys(Ve,at,Qe),wa(Ve,at,Qe.state),io(Ve,at,Qe,!1,!0);var Ct=Qe.shader.progVar.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",Ct,".program);"),Qe.shader.program)K(Ve,at,Qe,Qe.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var Ot=Ve.global.def("{}"),Rt=at.def(Ct,".id"),Bt=at.def(Ot,"[",Rt,"]");at(Ve.cond(Bt).then(Bt,".call(this,a0);").else(Bt,"=",Ot,"[",Rt,"]=",Ve.link(function(Dt){return q(K,Ve,Qe,Dt,1)}),"(",Ct,");",Bt,".call(this,a0);"))}Object.keys(Qe.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ne(Ve,Qe,at,Ct){Ve.batchId="a1",ol(Ve,Qe);function Ot(){return!0}Y(Ve,Qe,at,Ct.attributes,Ot),D(Ve,Qe,at,Ct.uniforms,Ot,!1),J(Ve,Qe,Qe,at)}function we(Ve,Qe,at,Ct){ol(Ve,Qe);var Ot=at.contextDep,Rt=Qe.def(),Bt="a0",Dt="a1",yt=Qe.def();Ve.shared.props=yt,Ve.batchId=Rt;var Pt=Ve.scope(),ht=Ve.scope();Qe(Pt.entry,"for(",Rt,"=0;",Rt,"<",Dt,";++",Rt,"){",yt,"=",Bt,"[",Rt,"];",ht,"}",Pt.exit);function ur(gn){return gn.contextDep&&Ot||gn.propDep}function br(gn){return!ur(gn)}if(at.needsContext&&ss(Ve,ht,at.context),at.needsFramebuffer&&Vs(Ve,ht,at.framebuffer),wa(Ve,ht,at.state,ur),at.profile&&ur(at.profile)&&io(Ve,ht,at,!1,!0),Ct)at.useVAO?at.drawVAO?ur(at.drawVAO)?ht(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,ht),");"):Pt(Ve.shared.vao,".setVAO(",at.drawVAO.append(Ve,Pt),");"):Pt(Ve.shared.vao,".setVAO(",Ve.shared.vao,".targetVAO);"):(Pt(Ve.shared.vao,".setVAO(null);"),Y(Ve,Pt,at,Ct.attributes,br),Y(Ve,ht,at,Ct.attributes,ur)),D(Ve,Pt,at,Ct.uniforms,br,!1),D(Ve,ht,at,Ct.uniforms,ur,!0),J(Ve,Pt,ht,at);else{var Ur=Ve.global.def("{}"),Di=at.shader.progVar.append(Ve,ht),fi=ht.def(Di,".id"),Ti=ht.def(Ur,"[",fi,"]");ht(Ve.shared.gl,".useProgram(",Di,".program);","if(!",Ti,"){",Ti,"=",Ur,"[",fi,"]=",Ve.link(function(gn){return q(ne,Ve,at,gn,2)}),"(",Di,");}",Ti,".call(this,a0[",Rt,"],",Rt,");")}}function Ue(Ve,Qe){var at=Ve.proc("batch",2);Ve.batchId="0",ol(Ve,at);var Ct=!1,Ot=!0;Object.keys(Qe.context).forEach(function(Ur){Ct=Ct||Qe.context[Ur].propDep}),Ct||(ss(Ve,at,Qe.context),Ot=!1);var Rt=Qe.framebuffer,Bt=!1;Rt?(Rt.propDep?Ct=Bt=!0:Rt.contextDep&&Ct&&(Bt=!0),Bt||Vs(Ve,at,Rt)):Vs(Ve,at,null),Qe.state.viewport&&Qe.state.viewport.propDep&&(Ct=!0);function Dt(Ur){return Ur.contextDep&&Ct||Ur.propDep}Ys(Ve,at,Qe),wa(Ve,at,Qe.state,function(Ur){return!Dt(Ur)}),(!Qe.profile||!Dt(Qe.profile))&&io(Ve,at,Qe,!1,"a1"),Qe.contextDep=Ct,Qe.needsContext=Ot,Qe.needsFramebuffer=Bt;var yt=Qe.shader.progVar;if(yt.contextDep&&Ct||yt.propDep)we(Ve,at,Qe,null);else{var Pt=yt.append(Ve,at);if(at(Ve.shared.gl,".useProgram(",Pt,".program);"),Qe.shader.program)we(Ve,at,Qe,Qe.shader.program);else{at(Ve.shared.vao,".setVAO(null);");var ht=Ve.global.def("{}"),ur=at.def(Pt,".id"),br=at.def(ht,"[",ur,"]");at(Ve.cond(br).then(br,".call(this,a0,a1);").else(br,"=",ht,"[",ur,"]=",Ve.link(function(Ur){return q(we,Ve,Qe,Ur,2)}),"(",Pt,");",br,".call(this,a0,a1);"))}}Object.keys(Qe.state).length>0&&at(Ve.shared.current,".dirty=true;"),Ve.shared.vao&&at(Ve.shared.vao,".setVAO(null);")}function ft(Ve,Qe){var at=Ve.proc("scope",3);Ve.batchId="a2";var Ct=Ve.shared,Ot=Ct.current;if(ss(Ve,at,Qe.context),Qe.framebuffer&&Qe.framebuffer.append(Ve,at),Si(Object.keys(Qe.state)).forEach(function(Dt){var yt=Qe.state[Dt],Pt=yt.append(Ve,at);Mn(Pt)?Pt.forEach(function(ht,ur){pn(ht)?at.set(Ve.next[Dt],"["+ur+"]",ht):at.set(Ve.next[Dt],"["+ur+"]",Ve.link(ht,{stable:!0}))}):Ln(yt)?at.set(Ct.next,"."+Dt,Ve.link(Pt,{stable:!0})):at.set(Ct.next,"."+Dt,Pt)}),io(Ve,at,Qe,!0,!0),[Tt,xr,Kt,Ir,Yt].forEach(function(Dt){var yt=Qe.draw[Dt];if(yt){var Pt=yt.append(Ve,at);pn(Pt)?at.set(Ct.draw,"."+Dt,Pt):at.set(Ct.draw,"."+Dt,Ve.link(Pt),{stable:!0})}}),Object.keys(Qe.uniforms).forEach(function(Dt){var yt=Qe.uniforms[Dt].append(Ve,at);Array.isArray(yt)&&(yt="["+yt.map(function(Pt){return pn(Pt)?Pt:Ve.link(Pt,{stable:!0})})+"]"),at.set(Ct.uniforms,"["+Ve.link(bt.id(Dt),{stable:!0})+"]",yt)}),Object.keys(Qe.attributes).forEach(function(Dt){var yt=Qe.attributes[Dt].append(Ve,at),Pt=Ve.scopeAttrib(Dt);Object.keys(new Yr).forEach(function(ht){at.set(Pt,"."+ht,yt[ht])})}),Qe.scopeVAO){var Rt=Qe.scopeVAO.append(Ve,at);pn(Rt)?at.set(Ct.vao,".targetVAO",Rt):at.set(Ct.vao,".targetVAO",Ve.link(Rt,{stable:!0}))}function Bt(Dt){var yt=Qe.shader[Dt];if(yt){var Pt=yt.append(Ve,at);pn(Pt)?at.set(Ct.shader,"."+Dt,Pt):at.set(Ct.shader,"."+Dt,Ve.link(Pt,{stable:!0}))}}Bt(Xe),Bt(ot),Object.keys(Qe.state).length>0&&(at(Ot,".dirty=true;"),at.exit(Ot,".dirty=true;")),at("a1(",Ve.shared.context,",a0,",Ve.batchId,");")}function Xt(Ve){if(!(typeof Ve!="object"||Mn(Ve))){for(var Qe=Object.keys(Ve),at=0;at=0;--q){var K=Vn[q];K&&K(si,null,0)}zt.flush(),Ei&&Ei.update()}function ba(){!ta&&Vn.length>0&&(ta=d.next(oa))}function is(){ta&&(d.cancel(oa),ta=null)}function Zs(q){q.preventDefault(),jr=!0,is(),na.forEach(function(K){K()})}function Va(q){zt.getError(),jr=!1,Nr.restore(),Bn.restore(),Ri.restore(),hi.restore(),li.restore(),mn.restore(),an.restore(),Ei&&Ei.restore(),Ji.procs.refresh(),ba(),Ki.forEach(function(K){K()})}pn&&(pn.addEventListener(Fo,Zs,!1),pn.addEventListener(Uo,Va,!1));function Ml(){Vn.length=0,is(),pn&&(pn.removeEventListener(Fo,Zs),pn.removeEventListener(Uo,Va)),Bn.clear(),mn.clear(),li.clear(),an.clear(),hi.clear(),ci.clear(),Ri.clear(),Ei&&Ei.clear(),kn.forEach(function(q){q()})}function zo(q){function K(Rt){var Bt=e({},Rt);delete Bt.uniforms,delete Bt.attributes,delete Bt.context,delete Bt.vao,"stencil"in Bt&&Bt.stencil.op&&(Bt.stencil.opBack=Bt.stencil.opFront=Bt.stencil.op,delete Bt.stencil.op);function Dt(yt){if(yt in Bt){var Pt=Bt[yt];delete Bt[yt],Object.keys(Pt).forEach(function(ht){Bt[yt+"."+ht]=Pt[ht]})}}return Dt("blend"),Dt("depth"),Dt("cull"),Dt("stencil"),Dt("polygonOffset"),Dt("scissor"),Dt("sample"),"vao"in Rt&&(Bt.vao=Rt.vao),Bt}function de(Rt,Bt){var Dt={},yt={};return Object.keys(Rt).forEach(function(Pt){var ht=Rt[Pt];if(h.isDynamic(ht)){yt[Pt]=h.unbox(ht,Pt);return}else if(Bt&&Array.isArray(ht)){for(var ur=0;ur0)return Ve.call(this,Ct(Rt|0),Rt|0)}else if(Array.isArray(Rt)){if(Rt.length)return Ve.call(this,Rt,Rt.length)}else return qt.call(this,Rt)}return e(Ot,{stats:Xt,destroy:function(){hr.destroy()}})}var Qs=mn.setFBO=zo({framebuffer:h.define.call(null,$s,"framebuffer")});function al(q,K){var de=0;Ji.procs.poll();var ne=K.color;ne&&(zt.clearColor(+ne[0]||0,+ne[1]||0,+ne[2]||0,+ne[3]||0),de|=Ms),"depth"in K&&(zt.clearDepth(+K.depth),de|=Xs),"stencil"in K&&(zt.clearStencil(K.stencil|0),de|=Gn),zt.clear(de)}function Vl(q){if("framebuffer"in q)if(q.framebuffer&&q.framebuffer_reglType==="framebufferCube")for(var K=0;K<6;++K)Qs(e({framebuffer:q.framebuffer.faces[K]},q),al);else Qs(q,al);else al(null,q)}function ss(q){Vn.push(q);function K(){var de=dl(Vn,q);function ne(){var we=dl(Vn,ne);Vn[we]=Vn[Vn.length-1],Vn.length-=1,Vn.length<=0&&is()}Vn[de]=ne}return ba(),{cancel:K}}function Vs(){var q=Ni.viewport,K=Ni.scissor_box;q[0]=q[1]=K[0]=K[1]=0,si.viewportWidth=si.framebufferWidth=si.drawingBufferWidth=q[2]=K[2]=zt.drawingBufferWidth,si.viewportHeight=si.framebufferHeight=si.drawingBufferHeight=q[3]=K[3]=zt.drawingBufferHeight}function Ys(){si.tick+=1,si.time=ol(),Vs(),Ji.procs.poll()}function wa(){hi.refresh(),Vs(),Ji.procs.refresh(),Ei&&Ei.update()}function ol(){return(v()-Hn)/1e3}wa();function io(q,K){var de;switch(q){case"frame":return ss(K);case"lost":de=na;break;case"restore":de=Ki;break;case"destroy":de=kn;break;default:}return de.push(K),{cancel:function(){for(var ne=0;ne=0},read:Vi,destroy:Ml,_gl:zt,_refresh:wa,poll:function(){Ys(),Ei&&Ei.update()},now:ol,stats:mi,getCachedCode:Y,preloadCachedCode:D});return bt.onDone(null,J),J}return Sc})});var Mz=ye((d_r,CBe)=>{"use strict";var FUt=CX(),zUt=kBe();CBe.exports=function(t,r,n){var i=t._fullLayout,a=!0;return i._glcanvas.each(function(o){if(o.regl){o.regl.preloadCachedCode(n);return}if(!(o.pick&&!i._has("parcoords"))){try{o.regl=zUt({canvas:this,attributes:{antialias:!o.pick,preserveDrawingBuffer:!0},pixelRatio:t._context.plotGlPixelRatio||window.devicePixelRatio,extensions:r||[],cachedCode:n||{}})}catch(s){a=!1}o.regl||(a=!1),a&&this.addEventListener("webglcontextlost",function(s){t&&t.emit&&t.emit("plotly_webglcontextlost",{event:s,layer:o.key})},!1)}}),a||FUt({container:i._glcontainer.node()}),a}});var dK=ye((hK,DBe)=>{"use strict";var LBe=hY(),PBe=GY(),OUt=yqe(),IBe=EBe(),fK=Dr(),qUt=Eg().selectMode,BUt=Mz(),NUt=Ru(),UUt=_U(),VUt=lY().styleTextSelection,RBe={};function GUt(e,t,r,n){var i=e._size,a=e.width*n,o=e.height*n,s=i.l*n,l=i.b*n,u=i.r*n,c=i.t*n,f=i.w*n,h=i.h*n;return[s+t.domain[0]*f,l+r.domain[0]*h,a-u-(1-t.domain[1])*f,o-c-(1-r.domain[1])*h]}var hK=DBe.exports=function(t,r,n){if(n.length){var i=t._fullLayout,a=r._scene,o=r.xaxis,s=r.yaxis,l,u;if(a){var c=BUt(t,["ANGLE_instanced_arrays","OES_element_index_uint"],RBe);if(!c){a.init();return}var f=a.count,h=i._glcanvas.data()[0].regl;if(UUt(t,r,n),a.dirty){if((a.line2d||a.error2d)&&!(a.scatter2d||a.fill2d||a.glText)&&h.clear({color:!0,depth:!0}),a.error2d===!0&&(a.error2d=OUt(h)),a.line2d===!0&&(a.line2d=PBe(h)),a.scatter2d===!0&&(a.scatter2d=LBe(h)),a.fill2d===!0&&(a.fill2d=PBe(h)),a.glText===!0)for(a.glText=new Array(f),l=0;la.glText.length){var d=f-a.glText.length;for(l=0;loe&&(isNaN(te[_e])||isNaN(te[_e+1]));)_e-=2;H.positions=te.slice(oe,_e+2)}return H}),a.line2d.update(a.lineOptions)),a.error2d){var b=(a.errorXOptions||[]).concat(a.errorYOptions||[]);a.error2d.update(b)}a.scatter2d&&a.scatter2d.update(a.markerOptions),a.fillOrder=fK.repeat(null,f),a.fill2d&&(a.fillOptions=a.fillOptions.map(function(H,te){var oe=n[te];if(!(!H||!oe||!oe[0]||!oe[0].trace)){var _e=oe[0],Ee=_e.trace,Ce=_e.t,me=a.lineOptions[te],ie,Se,Le=[];Ee._ownfill&&Le.push(te),Ee._nexttrace&&Le.push(te+1),Le.length&&(a.fillOrder[te]=Le);var Ae=[],Fe=me&&me.positions||Ce.positions,Pe,ge;if(Ee.fill==="tozeroy"){for(Pe=0;PePe&&isNaN(Fe[ge+1]);)ge-=2;Fe[Pe+1]!==0&&(Ae=[Fe[Pe],0]),Ae=Ae.concat(Fe.slice(Pe,ge+2)),Fe[ge+1]!==0&&(Ae=Ae.concat([Fe[ge],0]))}else if(Ee.fill==="tozerox"){for(Pe=0;PePe&&isNaN(Fe[ge]);)ge-=2;Fe[Pe]!==0&&(Ae=[0,Fe[Pe+1]]),Ae=Ae.concat(Fe.slice(Pe,ge+2)),Fe[ge]!==0&&(Ae=Ae.concat([0,Fe[ge+1]]))}else if(Ee.fill==="toself"||Ee.fill==="tonext"){for(Ae=[],ie=0,H.splitNull=!0,Se=0;Se-1;for(l=0;l{"use strict";var FBe=Qze();FBe.plot=dK();zBe.exports=FBe});var BBe=ye((p_r,qBe)=>{"use strict";qBe.exports=OBe()});var vK=ye((g_r,GBe)=>{"use strict";var HUt=pf(),VBe=Tu(),NBe=df().axisHoverFormat,{hovertemplateAttrs:jUt,templatefallbackAttrs:WUt}=Ll(),kk=lk(),XUt=hd().idRegex,ZUt=vl().templatedArray,g5=Ao().extendFlat,o1=HUt.marker,YUt=o1.line,KUt=g5(VBe("marker.line",{editTypeOverride:"calc"}),{width:g5({},YUt.width,{editType:"calc"}),editType:"calc"}),Ez=g5(VBe("marker"),{symbol:o1.symbol,angle:o1.angle,size:g5({},o1.size,{editType:"markerSize"}),sizeref:o1.sizeref,sizemin:o1.sizemin,sizemode:o1.sizemode,opacity:o1.opacity,colorbar:o1.colorbar,line:KUt,editType:"calc"});Ez.color.editType=Ez.cmin.editType=Ez.cmax.editType="style";function UBe(e){return{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"subplotid",regex:XUt[e],editType:"plot"}}}GBe.exports={dimensions:ZUt("dimension",{visible:{valType:"boolean",dflt:!0,editType:"calc"},label:{valType:"string",editType:"calc"},values:{valType:"data_array",editType:"calc+clearAxisTypes"},axis:{type:{valType:"enumerated",values:["linear","log","date","category"],editType:"calc+clearAxisTypes"},matches:{valType:"boolean",dflt:!1,editType:"calc"},editType:"calc+clearAxisTypes"},editType:"calc+clearAxisTypes"}),text:g5({},kk.text,{}),hovertext:g5({},kk.hovertext,{}),hovertemplate:jUt(),hovertemplatefallback:WUt(),xhoverformat:NBe("x"),yhoverformat:NBe("y"),marker:Ez,xaxes:UBe("x"),yaxes:UBe("y"),diagonal:{visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"},showupperhalf:{valType:"boolean",dflt:!0,editType:"calc"},showlowerhalf:{valType:"boolean",dflt:!0,editType:"calc"},selected:{marker:kk.selected.marker,editType:"calc"},unselected:{marker:kk.unselected.marker,editType:"calc"},opacity:kk.opacity}});var kz=ye((m_r,HBe)=>{"use strict";HBe.exports=function(e,t,r,n){n||(n=1/0);var i,a;for(i=0;i{"use strict";var pK=Dr(),JUt=Yd(),jBe=vK(),$Ut=Ru(),QUt=$p(),eVt=kz(),tVt=VF().isOpenSymbol;WBe.exports=function(t,r,n,i){function a(d,v){return pK.coerce(t,r,jBe,d,v)}var o=JUt(t,r,{name:"dimensions",handleItemDefaults:rVt}),s=a("diagonal.visible"),l=a("showupperhalf"),u=a("showlowerhalf"),c=eVt(r,o,"values");if(!c||!s&&!l&&!u){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("xhoverformat"),a("yhoverformat"),QUt(t,r,n,i,a,{noAngleRef:!0,noStandOff:!0});var f=tVt(r.marker.symbol),h=$Ut.isBubble(r);a("marker.line.width",f||h?1:0),iVt(t,r,i,a),pK.coerceSelectionMarkerOpacity(r,a)};function rVt(e,t){function r(i,a){return pK.coerce(e,t,jBe.dimensions,i,a)}r("label");var n=r("values");n&&n.length?r("visible"):t.visible=!1,r("axis.type"),r("axis.matches")}function iVt(e,t,r,n){var i=t.dimensions,a=i.length,o=t.showupperhalf,s=t.showlowerhalf,l=t.diagonal.visible,u,c,f=new Array(a),h=new Array(a);for(u=0;uc&&o||u{"use strict";var ZBe=Dr();YBe.exports=function(t,r){var n=t._fullLayout,i=r.uid,a=n._splomScenes;a||(a=n._splomScenes={});var o={dirty:!0,selectBatch:[],unselectBatch:[]},s={matrix:!1,selectBatch:[],unselectBatch:[]},l=a[r.uid];return l||(l=a[i]=ZBe.extendFlat({},o,s),l.draw=function(){l.matrix&&l.matrix.draw&&(l.selectBatch.length||l.unselectBatch.length?l.matrix.draw(l.unselectBatch,l.selectBatch):l.matrix.draw()),l.dirty=!1},l.destroy=function(){l.matrix&&l.matrix.destroy&&l.matrix.destroy(),l.matrixOptions=null,l.selectBatch=null,l.unselectBatch=null,l=null}),l.dirty||ZBe.extendFlat(l,o),l}});var QBe=ye((x_r,$Be)=>{"use strict";var gK=Dr(),Cz=hf(),nVt=O0().calcMarkerSize,aVt=O0().calcAxisExpansion,oVt=F0(),JBe=J2().markerSelection,sVt=J2().markerStyle,lVt=KBe(),uVt=fs().BADNUM,cVt=ox().TOO_MANY_POINTS;$Be.exports=function(t,r){var n=r.dimensions,i=r._length,a={},o=a.cdata=[],s=a.data=[],l=r._visibleDims=[],u,c,f,h,d;function v(E,S){for(var L=E.makeCalcdata({v:S.values,vcalendar:r.calendar},"v"),x=0;xcVt,p;for(b?p=a.sizeAvg||Math.max(a.size,3):p=nVt(r,i),c=0;c{(function(){var e,t,r,n,i,a;typeof performance!="undefined"&&performance!==null&&performance.now?Ck.exports=function(){return performance.now()}:typeof process!="undefined"&&process!==null&&process.hrtime?(Ck.exports=function(){return(e()-i)/1e6},t=process.hrtime,e=function(){var o;return o=t(),o[0]*1e9+o[1]},n=e(),a=process.uptime()*1e9,i=n-a):Date.now?(Ck.exports=function(){return Date.now()-r},r=Date.now()):(Ck.exports=function(){return new Date().getTime()-r},r=new Date().getTime())}).call(eNe)});var iNe=ye((b_r,Iz)=>{var fVt=tNe(),s1=window,Lz=["moz","webkit"],y5="AnimationFrame",_5=s1["request"+y5],Lk=s1["cancel"+y5]||s1["cancelRequest"+y5];for(m5=0;!_5&&m5{nNe.exports=function(t,r){var n=typeof t=="number",i=typeof r=="number";n&&!i?(r=t,t=0):!n&&!i&&(t=0,r=0),t=t|0,r=r|0;var a=r-t;if(a<0)throw new Error("array length must be positive");for(var o=new Array(a),s=0,l=t;s{"use strict";var hVt=hY(),dVt=Zm(),vVt=X2(),oNe=iNe(),pVt=aNe(),yK=i5(),gVt=Z2();lNe.exports=px;function px(e,t){if(!(this instanceof px))return new px(e,t);this.traces=[],this.passes={},this.regl=e,this.scatter=hVt(e),this.canvas=this.scatter.canvas}px.prototype.render=function(...e){return e.length&&this.update(...e),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?this.planned==null&&(this.planned=oNe(()=>{this.draw(),this.dirty=!0,this.planned=null})):(this.draw(),this.dirty=!0,oNe(()=>{this.dirty=!1})),this)};px.prototype.update=function(...e){if(!e.length)return;for(let n=0;nb||!i.lower&&_{t[a+s]=n})}this.scatter.draw(...t)}return this};px.prototype.destroy=function(){return this.traces.forEach(e=>{e.buffer&&e.buffer.destroy&&e.buffer.destroy()}),this.traces=null,this.passes=null,this.scatter.destroy(),this};function mVt(e,t,r){let n=e.id!=null?e.id:e,i=t,a=r;return n<<16|(i&255)<<8|a&255}function Rz(e,t,r){let n,i,a,o,s,l,u,c,f=e[t],h=e[r];return f.length>2?(n=f[0],a=f[2],i=f[1],o=f[3]):f.length?(n=i=f[0],a=o=f[1]):(n=f.x,i=f.y,a=f.x+f.width,o=f.y+f.height),h.length>2?(s=h[0],u=h[2],l=h[1],c=h[3]):h.length?(s=l=h[0],u=c=h[1]):(s=h.x,l=h.y,u=h.x+h.width,c=h.y+h.height),[s,i,u,o]}function sNe(e){if(typeof e=="number")return[e,e,e,e];if(e.length===2)return[e[0],e[1],e[0],e[1]];{let t=yK(e);return[t.x,t.y,t.x+t.width,t.y+t.height]}}});var fNe=ye((A_r,cNe)=>{"use strict";var yVt=uNe(),_K=Dr(),Dz=hf(),_Vt=Eg().selectMode;cNe.exports=function(t,r,n){if(n.length)for(var i=0;i-1,T=_Vt(c)||!!i.selectedpoints||P,z=!0;if(T){var O=i._length;if(i.selectedpoints){o.selectBatch=i.selectedpoints;var V=i.selectedpoints,G={};for(d=0;d{"use strict";hNe.getDimIndex=function(t,r){for(var n=r._id,i=n.charAt(0),a={x:0,y:1}[i],o=t._visibleDims,s=0;s{"use strict";var dNe=xK(),bVt=UF().calcHover,vNe=ho().getFromId,wVt=Ao().extendFlat;function TVt(e,t,r,n,i){i||(i={});var a=(n||"").charAt(0)==="x",o=(n||"").charAt(0)==="y",s=pNe(e,t,r);if((a||o)&&i.hoversubplots==="axis"&&s[0])for(var l=(a?e.xa:e.ya)._subplotsWith,u=i.gd,c=wVt({},e),f=0;f{"use strict";var bNe=Dr(),yNe=bNe.pushUnique,_Ne=Ru(),xNe=xK();wNe.exports=function(t,r){var n=t.cd,i=n[0].trace,a=n[0].t,o=t.scene,s=o.matrixOptions.cdata,l=t.xaxis,u=t.yaxis,c=[];if(!o)return c;var f=!_Ne.hasMarkers(i)&&!_Ne.hasText(i);if(i.visible!==!0||f)return c;var h=xNe.getDimIndex(i,l),d=xNe.getDimIndex(i,u);if(h===!1||d===!1)return c;var v=a.xpx[h],_=a.ypx[d],b=s[h],p=s[d],k=(t.scene.selectBatch||[]).slice(),E=[];if(r!==!1&&!r.degenerate)for(var S=0;S{"use strict";var ANe=Dr(),AVt=F0(),SVt=J2().markerStyle;SNe.exports=function(t,r){var n=r.trace,i=t._fullLayout._splomScenes[n.uid];if(i){AVt(t,n),ANe.extendFlat(i.matrixOptions,SVt(t,n));var a=ANe.extendFlat({},i.matrixOptions,i.viewOpts);i.matrix.update(a,null)}}});var kNe=ye((C_r,ENe)=>{"use strict";var MVt=qa(),EVt=fV();ENe.exports={moduleType:"trace",name:"splom",categories:["gl","regl","cartesian","symbols","showLegend","scatter-like"],attributes:vK(),supplyDefaults:XBe(),colorbar:$d(),calc:QBe(),plot:fNe(),hoverPoints:mNe().hoverPoints,selectPoints:TNe(),editStyle:MNe(),meta:{}};MVt.register(EVt)});var DNe=ye((L_r,RNe)=>{"use strict";var kVt=GY(),CVt=qa(),LVt=Mz(),PVt=Id().getModuleCalcData,gx=ph(),CNe=hf().getFromId,LNe=ho().shouldShowZeroLine,PNe="splom",INe={};function IVt(e){var t=e._fullLayout,r=CVt.getModule(PNe),n=PVt(e.calcdata,r)[0],i=LVt(e,["ANGLE_instanced_arrays","OES_element_index_uint"],INe);i&&(t._hasOnlyLargeSploms&&bK(e),r.plot(e,{},n))}function RVt(e){var t=e.calcdata,r=e._fullLayout;r._hasOnlyLargeSploms&&bK(e);for(var n=0;n{"use strict";var FNe=kNe();FNe.basePlotModule=DNe(),zNe.exports=FNe});var BNe=ye((I_r,qNe)=>{"use strict";qNe.exports=ONe()});var AK=ye((R_r,NNe)=>{"use strict";var OVt=Tu(),wK=Rd(),TK=ec(),qVt=Cc().attributes,Fz=Ao().extendFlat,BVt=vl().templatedArray;NNe.exports={domain:qVt({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:TK({editType:"plot"}),tickfont:TK({autoShadowDflt:!0,editType:"plot"}),rangefont:TK({editType:"plot"}),dimensions:BVt("dimension",{label:{valType:"string",editType:"plot"},tickvals:Fz({},wK.tickvals,{editType:"plot"}),ticktext:Fz({},wK.ticktext,{editType:"plot"}),tickformat:Fz({},wK.tickformat,{editType:"plot"}),visible:{valType:"boolean",dflt:!0,editType:"plot"},range:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},constraintrange:{valType:"info_array",freeLength:!0,dimensions:"1-2",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},multiselect:{valType:"boolean",dflt:!0,editType:"plot"},values:{valType:"data_array",editType:"calc"},editType:"calc"}),line:Fz({editType:"calc"},OVt("line",{colorscaleDflt:"Viridis",autoColorDflt:!1,editTypeOverride:"calc"})),unselected:{line:{color:{valType:"color",dflt:"#7f7f7f",editType:"plot"},opacity:{valType:"number",min:0,max:1,dflt:"auto",editType:"plot"},editType:"plot"},editType:"plot"}}});var Pk=ye((D_r,UNe)=>{"use strict";UNe.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:["contextLineLayer","focusLineLayer","pickLineLayer"],axisTitleOffset:28,axisExtentOffset:10,bar:{width:4,captureWidth:10,fillColor:"magenta",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeOpacity:1,strokeWidth:1,handleHeight:8,handleOpacity:1,handleOverlap:0},cn:{axisExtentText:"axis-extent-text",parcoordsLineLayers:"parcoords-line-layers",parcoordsLineLayer:"parcoords-lines",parcoords:"parcoords",parcoordsControlView:"parcoords-control-view",yAxis:"y-axis",axisOverlays:"axis-overlays",axis:"axis",axisHeading:"axis-heading",axisTitle:"axis-title",axisExtent:"axis-extent",axisExtentTop:"axis-extent-top",axisExtentTopText:"axis-extent-top-text",axisExtentBottom:"axis-extent-bottom",axisExtentBottomText:"axis-extent-bottom-text",axisBrush:"axis-brush"},id:{filterBarPattern:"filter-bar-pattern"}}});var Jm=ye((F_r,GNe)=>{"use strict";var NVt=HS();function VNe(e){return[e]}GNe.exports={keyFun:function(e){return e.key},repeat:VNe,descend:NVt,wrap:VNe,unwrap:function(e){return e[0]}}});var EK=ye((z_r,eUe)=>{"use strict";var bh=Pk(),tm=Oa(),UVt=Jm().keyFun,zz=Jm().repeat,x5=Dr().sorterAsc,VVt=Dr().strTranslate,HNe=bh.bar.snapRatio;function jNe(e,t){return e*(1-HNe)+t*HNe}var WNe=bh.bar.snapClose;function GVt(e,t){return e*(1-WNe)+t*WNe}function qz(e,t,r,n){if(HVt(r,n))return r;var i=e?-1:1,a=0,o=t.length-1;if(i<0){var s=a;a=o,o=s}for(var l=t[a],u=l,c=a;i*c=t[r][0]&&e<=t[r][1])return!0;return!1}function jVt(e){e.attr("x",-bh.bar.captureWidth/2).attr("width",bh.bar.captureWidth)}function WVt(e){e.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function XVt(e){if(!e.brush.filterSpecified)return"0,"+e.height;for(var t=XNe(e.brush.filter.getConsolidated(),e.height),r=[0],n,i,a,o=t.length?t[0][0]:null,s=0;se[1]+r||t=.9*e[1]+.1*e[0]?"n":t<=.9*e[0]+.1*e[1]?"s":"ns"}function ZNe(){tm.select(document.body).style("cursor",null)}function MK(e){e.attr("stroke-dasharray",XVt)}function Oz(e,t){var r=tm.select(e).selectAll(".highlight, .highlight-shadow"),n=t?r.transition().duration(bh.bar.snapDuration).each("end",t):r;MK(n)}function YNe(e,t){var r=e.brush,n=r.filterSpecified,i=NaN,a={},o;if(n){var s=e.height,l=r.filter.getConsolidated(),u=XNe(l,s),c=NaN,f=NaN,h=NaN;for(o=0;o<=u.length;o++){var d=u[o];if(d&&d[0]<=t&&t<=d[1]){c=o;break}else if(f=o?o-1:NaN,d&&d[0]>t){h=o;break}}if(i=c,isNaN(i)&&(isNaN(f)||isNaN(h)?i=isNaN(f)?h:f:i=t-u[f][1]=k[0]&&p<=k[1]){a.clickableOrdinalRange=k;break}}}return a}function YVt(e,t){tm.event.sourceEvent.stopPropagation();var r=t.height-tm.mouse(e)[1]-2*bh.verticalPadding,n=t.unitToPaddedPx.invert(r),i=t.brush,a=YNe(t,r),o=a.interval,s=i.svgBrush;if(s.wasDragged=!1,s.grabbingBar=a.region==="ns",s.grabbingBar){var l=o.map(t.unitToPaddedPx);s.grabPoint=r-l[0]-bh.verticalPadding,s.barLength=l[1]-l[0]}s.clickableOrdinalRange=a.clickableOrdinalRange,s.stayingIntervals=t.multiselect&&i.filterSpecified?i.filter.getConsolidated():[],o&&(s.stayingIntervals=s.stayingIntervals.filter(function(u){return u[0]!==o[0]&&u[1]!==o[1]})),s.startExtent=a.region?o[a.region==="s"?1:0]:n,t.parent.inBrushDrag=!0,s.brushStartCallback()}function KNe(e,t){tm.event.sourceEvent.stopPropagation();var r=t.height-tm.mouse(e)[1]-2*bh.verticalPadding,n=t.brush.svgBrush;n.wasDragged=!0,n._dragging=!0,n.grabbingBar?n.newExtent=[r-n.grabPoint,r+n.barLength-n.grabPoint].map(t.unitToPaddedPx.invert):n.newExtent=[n.startExtent,t.unitToPaddedPx.invert(r)].sort(x5),t.brush.filterSpecified=!0,n.extent=n.stayingIntervals.concat([n.newExtent]),n.brushCallback(t),Oz(e.parentNode)}function KVt(e,t){var r=t.brush,n=r.filter,i=r.svgBrush;i._dragging||(JNe(e,t),KNe(e,t),t.brush.svgBrush.wasDragged=!1),i._dragging=!1;var a=tm.event;a.sourceEvent.stopPropagation();var o=i.grabbingBar;if(i.grabbingBar=!1,i.grabLocation=void 0,t.parent.inBrushDrag=!1,ZNe(),!i.wasDragged){i.wasDragged=void 0,i.clickableOrdinalRange?r.filterSpecified&&t.multiselect?i.extent.push(i.clickableOrdinalRange):(i.extent=[i.clickableOrdinalRange],r.filterSpecified=!0):o?(i.extent=i.stayingIntervals,i.extent.length===0&&SK(r)):SK(r),i.brushCallback(t),Oz(e.parentNode),i.brushEndCallback(r.filterSpecified?n.getConsolidated():[]);return}var s=function(){n.set(n.getConsolidated())};if(t.ordinal){var l=t.unitTickvals;l[l.length-1]i.newExtent[0];i.extent=i.stayingIntervals.concat(u?[i.newExtent]:[]),i.extent.length||SK(r),i.brushCallback(t),u?Oz(e.parentNode,s):(s(),Oz(e.parentNode))}else s();i.brushEndCallback(r.filterSpecified?n.getConsolidated():[])}function JNe(e,t){var r=t.height-tm.mouse(e)[1]-2*bh.verticalPadding,n=YNe(t,r),i="crosshair";n.clickableOrdinalRange?i="pointer":n.region&&(i=n.region+"-resize"),tm.select(document.body).style("cursor",i)}function JVt(e){e.on("mousemove",function(t){tm.event.preventDefault(),t.parent.inBrushDrag||JNe(this,t)}).on("mouseleave",function(t){t.parent.inBrushDrag||ZNe()}).call(tm.behavior.drag().on("dragstart",function(t){YVt(this,t)}).on("drag",function(t){KNe(this,t)}).on("dragend",function(t){KVt(this,t)}))}function $Ne(e,t){return e[0]-t[0]}function $Vt(e,t,r){var n=r._context.staticPlot,i=e.selectAll(".background").data(zz);i.enter().append("rect").classed("background",!0).call(jVt).call(WVt).style("pointer-events",n?"none":"auto").attr("transform",VVt(0,bh.verticalPadding)),i.call(JVt).attr("height",function(s){return s.height-bh.verticalPadding});var a=e.selectAll(".highlight-shadow").data(zz);a.enter().append("line").classed("highlight-shadow",!0).attr("x",-bh.bar.width/2).attr("stroke-width",bh.bar.width+bh.bar.strokeWidth).attr("stroke",t).attr("opacity",bh.bar.strokeOpacity).attr("stroke-linecap","butt"),a.attr("y1",function(s){return s.height}).call(MK);var o=e.selectAll(".highlight").data(zz);o.enter().append("line").classed("highlight",!0).attr("x",-bh.bar.width/2).attr("stroke-width",bh.bar.width-bh.bar.strokeWidth).attr("stroke",bh.bar.fillColor).attr("opacity",bh.bar.fillOpacity).attr("stroke-linecap","butt"),o.attr("y1",function(s){return s.height}).call(MK)}function QVt(e,t,r){var n=e.selectAll("."+bh.cn.axisBrush).data(zz,UVt);n.enter().append("g").classed(bh.cn.axisBrush,!0),$Vt(n,t,r)}function eGt(e){return e.svgBrush.extent.map(function(t){return t.slice()})}function SK(e){e.filterSpecified=!1,e.svgBrush.extent=[[-1/0,1/0]]}function tGt(e){return function(r){var n=r.brush,i=eGt(n),a=i.slice();n.filter.set(a),e()}}function QNe(e){for(var t=e.slice(),r=[],n,i=t.shift();i;){for(n=i.slice();(i=t.shift())&&i[0]<=n[1];)n[1]=Math.max(n[1],i[1]);r.push(n)}return r.length===1&&r[0][0]>r[0][1]&&(r=[]),r}function rGt(){var e=[],t,r;return{set:function(n){e=n.map(function(i){return i.slice().sort(x5)}).sort($Ne),e.length===1&&e[0][0]===-1/0&&e[0][1]===1/0&&(e=[[0,-1]]),t=QNe(e),r=e.reduce(function(i,a){return[Math.min(i[0],a[0]),Math.max(i[1],a[1])]},[1/0,-1/0])},get:function(){return e.slice()},getConsolidated:function(){return t},getBounds:function(){return r}}}function iGt(e,t,r,n,i,a){var o=rGt();return o.set(r),{filter:o,filterSpecified:t,svgBrush:{extent:[],brushStartCallback:n,brushCallback:tGt(i),brushEndCallback:a}}}function nGt(e,t){if(Array.isArray(e[0])?(e=e.map(function(n){return n.sort(x5)}),t.multiselect?e=QNe(e.sort($Ne)):e=[e[0]]):e=[e.sort(x5)],t.tickvals){var r=t.tickvals.slice().sort(x5);if(e=e.map(function(n){var i=[qz(0,r,n[0],[]),qz(1,r,n[1],[])];if(i[1]>i[0])return i}).filter(function(n){return n}),!e.length)return}return e.length>1?e:e[0]}eUe.exports={makeBrush:iGt,ensureAxisBrush:QVt,cleanRanges:nGt}});var iUe=ye((O_r,rUe)=>{"use strict";var mx=Dr(),aGt=pv().hasColorscale,oGt=Qh(),sGt=Cc().defaults,lGt=Yd(),uGt=ho(),tUe=AK(),cGt=EK(),kK=Pk().maxDimensionCount,fGt=kz();function hGt(e,t,r,n,i){var a=i("line.color",r);if(aGt(e,"line")&&mx.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),oGt(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function dGt(e,t,r,n){function i(u,c){return mx.coerce(e,t,tUe.dimensions,u,c)}var a=i("values"),o=i("visible");if(a&&a.length||(o=t.visible=!1),o){i("label"),i("tickvals"),i("ticktext"),i("tickformat");var s=i("range");t._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:s},uGt.setConvert(t._ax,n.layout),i("multiselect");var l=i("constraintrange");l&&(t.constraintrange=cGt.cleanRanges(l,t))}}rUe.exports=function(t,r,n,i){function a(c,f){return mx.coerce(t,r,tUe,c,f)}var o=t.dimensions;Array.isArray(o)&&o.length>kK&&(mx.log("parcoords traces support up to "+kK+" dimensions at the moment"),o.splice(kK));var s=lGt(t,r,{name:"dimensions",layout:i,handleItemDefaults:dGt}),l=hGt(t,r,n,i,a);sGt(r,i,a),(!Array.isArray(s)||!s.length)&&(r.visible=!1),fGt(r,s,"values",l);var u=mx.extendFlat({},i.font,{size:Math.round(i.font.size/1.2)});mx.coerceFont(a,"labelfont",u),mx.coerceFont(a,"tickfont",u,{autoShadowDflt:!0}),mx.coerceFont(a,"rangefont",u),a("labelangle"),a("labelside"),a("unselected.line.color"),a("unselected.line.opacity")}});var aUe=ye((q_r,nUe)=>{"use strict";var vGt=Dr().isArrayOrTypedArray,CK=tc(),pGt=Jm().wrap;nUe.exports=function(t,r){var n,i;return CK.hasColorscale(r,"line")&&vGt(r.line.color)?(n=r.line.color,i=CK.extractOpts(r.line).colorscale,CK.calc(t,r,{vals:n,containerStr:"line",cLetter:"c"})):(n=gGt(r._length),i=[[0,r.line.color],[1,r.line.color]]),pGt({lineColor:n,cscale:i})};function gGt(e){for(var t=new Array(e),r=0;r>>16,(e&65280)>>>8,e&255],alpha:1};if(typeof e=="number")return{space:"rgb",values:[e>>>16,(e&65280)>>>8,e&255],alpha:1};if(e=String(e).toLowerCase(),LK.default[e])r=LK.default[e].slice(),i="rgb";else if(e==="transparent")n=0,i="rgb",r=[0,0,0];else if(e[0]==="#"){var a=e.slice(1),o=a.length,s=o<=4;n=1,s?(r=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],o===4&&(n=parseInt(a[3]+a[3],16)/255)):(r=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],o===8&&(n=parseInt(a[6]+a[7],16)/255)),r[0]||(r[0]=0),r[1]||(r[1]=0),r[2]||(r[2]=0),i="rgb"}else if(t=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(e)){var l=t[1];i=l.replace(/a$/,"");var u=i==="cmyk"?4:i==="gray"?1:3;r=t[2].trim().split(/\s*[,\/]\s*|\s+/),i==="color"&&(i=r.shift()),r=r.map(function(h,d){if(h[h.length-1]==="%")return h=parseFloat(h)/100,d===3?h:i==="rgb"?h*255:i[0]==="h"||i[0]==="l"&&!d?h*100:i==="lab"?h*125:i==="lch"?d<2?h*150:h*360:i[0]==="o"&&!d?h:i==="oklab"?h*.4:i==="oklch"?d<2?h*.4:h*360:h;if(i[d]==="h"||d===2&&i[i.length-1]==="h"){if(oUe[h]!==void 0)return oUe[h];if(h.endsWith("deg"))return parseFloat(h);if(h.endsWith("turn"))return parseFloat(h)*360;if(h.endsWith("grad"))return parseFloat(h)*360/400;if(h.endsWith("rad"))return parseFloat(h)*180/Math.PI}return h==="none"?0:parseFloat(h)}),n=r.length>u?r.pop():1}else/[0-9](?:\s|\/|,)/.test(e)&&(r=e.match(/([0-9]+)/g).map(function(h){return parseFloat(h)}),i=((f=(c=e.match(/([a-z])/ig))==null?void 0:c.join(""))==null?void 0:f.toLowerCase())||"rgb");return{space:i,values:r,alpha:n}}var LK,sUe,oUe,lUe=gu(()=>{LK=gtt(gX(),1),sUe=mGt,oUe={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}});var Ik,PK=gu(()=>{Ik={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}});var Bz,uUe=gu(()=>{PK();Bz={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a,o,s,l,u=0;if(r===0)return l=n*255,[l,l,l];for(a=n<.5?n*(1+r):n+r-n*r,i=2*n-a,s=[0,0,0];u<3;)o=t+1/3*-(u-1),o<0?o++:o>1&&o--,l=6*o<1?i+(a-i)*6*o:2*o<1?a:3*o<2?i+(a-i)*(2/3-o)*6:i,s[u++]=l*255;return s}};Ik.hsl=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=a-i,s,l,u;return a===i?s=0:t===a?s=(r-n)/o:r===a?s=2+(n-t)/o:n===a&&(s=4+(t-r)/o),s=Math.min(s*60,360),s<0&&(s+=360),u=(i+a)/2,a===i?l=0:u<=.5?l=o/(a+i):l=o/(2-a-i),[s,l*100,u*100]}});var fUe={};cee(fUe,{default:()=>cUe});function cUe(e){Array.isArray(e)&&e.raw&&(e=String.raw(...arguments)),e instanceof Number&&(e=+e);var t,r,n,i=sUe(e);if(!i.space)return[];let a=i.space[0]==="h"?Bz.min:Ik.min,o=i.space[0]==="h"?Bz.max:Ik.max;return t=Array(3),t[0]=Math.min(Math.max(i.values[0],a[0]),o[0]),t[1]=Math.min(Math.max(i.values[1],a[1]),o[1]),t[2]=Math.min(Math.max(i.values[2],a[2]),o[2]),i.space[0]==="h"&&(t=Bz.rgb(t)),t.push(Math.min(Math.max(i.alpha,0),1)),t}var hUe=gu(()=>{lUe();PK();uUe()});var IK=ye(Nz=>{"use strict";var yGt=Dr().isTypedArray;Nz.convertTypedArray=function(e){return yGt(e)?Array.prototype.slice.call(e):e};Nz.isOrdinal=function(e){return!!e.tickvals};Nz.isVisible=function(e){return e.visible||!("visible"in e)}});var wUe=ye((X_r,bUe)=>{"use strict";var _Gt=["precision highp float;","","varying vec4 fragColor;","","attribute vec4 p01_04, p05_08, p09_12, p13_16,"," p17_20, p21_24, p25_28, p29_32,"," p33_36, p37_40, p41_44, p45_48,"," p49_52, p53_56, p57_60, colors;","","uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,"," loA, hiA, loB, hiB, loC, hiC, loD, hiD;","","uniform vec2 resolution, viewBoxPos, viewBoxSize;","uniform float maskHeight;","uniform float drwLayer; // 0: context, 1: focus, 2: pick","uniform vec4 contextColor;","uniform sampler2D maskTexture, palette;","","bool isPick = (drwLayer > 1.5);","bool isContext = (drwLayer < 0.5);","","const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);","const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);","","float val(mat4 p, mat4 v) {"," return dot(matrixCompMult(p, v) * UNITS, UNITS);","}","","float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {"," float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);"," float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);"," return y1 * (1.0 - ratio) + y2 * ratio;","}","","int iMod(int a, int b) {"," return a - b * (a / b);","}","","bool fOutside(float p, float lo, float hi) {"," return (lo < hi) && (lo > p || p > hi);","}","","bool vOutside(vec4 p, vec4 lo, vec4 hi) {"," return ("," fOutside(p[0], lo[0], hi[0]) ||"," fOutside(p[1], lo[1], hi[1]) ||"," fOutside(p[2], lo[2], hi[2]) ||"," fOutside(p[3], lo[3], hi[3])"," );","}","","bool mOutside(mat4 p, mat4 lo, mat4 hi) {"," return ("," vOutside(p[0], lo[0], hi[0]) ||"," vOutside(p[1], lo[1], hi[1]) ||"," vOutside(p[2], lo[2], hi[2]) ||"," vOutside(p[3], lo[3], hi[3])"," );","}","","bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {"," return mOutside(A, loA, hiA) ||"," mOutside(B, loB, hiB) ||"," mOutside(C, loC, hiC) ||"," mOutside(D, loD, hiD);","}","","bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {"," mat4 pnts[4];"," pnts[0] = A;"," pnts[1] = B;"," pnts[2] = C;"," pnts[3] = D;",""," for(int i = 0; i < 4; ++i) {"," for(int j = 0; j < 4; ++j) {"," for(int k = 0; k < 4; ++k) {"," if(0 == iMod("," int(255.0 * texture2D(maskTexture,"," vec2("," (float(i * 2 + j / 2) + 0.5) / 8.0,"," (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight"," ))[3]"," ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),"," 2"," )) return true;"," }"," }"," }"," return false;","}","","vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {"," float x = 0.5 * sign(v) + 0.5;"," float y = axisY(x, A, B, C, D);"," float z = 1.0 - abs(v);",""," z += isContext ? 0.0 : 2.0 * float("," outsideBoundingBox(A, B, C, D) ||"," outsideRasterMask(A, B, C, D)"," );",""," return vec4("," 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,"," z,"," 1.0"," );","}","","void main() {"," mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);"," mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);"," mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);"," mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);",""," float v = colors[3];",""," gl_Position = position(isContext, v, A, B, C, D);",""," fragColor ="," isContext ? vec4(contextColor) :"," isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));","}"].join(` `),xGt=["precision highp float;","","varying vec4 fragColor;","","void main() {"," gl_FragColor = fragColor;","}"].join(` -`),Rk=Pk().maxDimensionCount,mUe=Dr(),hUe=1e-6,Nz=2048,bGt=new Uint8Array(4),dUe=new Uint8Array(4),vUe={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function wGt(e){e.read({x:0,y:0,width:1,height:1,data:bGt})}function yUe(e,t,r,n,i){var a=e._gl;a.enable(a.SCISSOR_TEST),a.scissor(t,r,n,i),e.clear({color:[0,0,0,0],depth:1})}function TGt(e,t,r,n,i,a){var o=a.key;function s(l){var u=Math.min(n,i-l*n);l===0&&(window.cancelAnimationFrame(r.currentRafs[o]),delete r.currentRafs[o],yUe(e,a.scissorX,a.scissorY,a.scissorWidth,a.viewBoxSize[1])),!r.clearOnly&&(a.count=2*u,a.offset=2*l*n,t(a),l*n+u>>8*t)%256/255}function MGt(e,t,r){for(var n=new Array(e*(Rk+4)),i=0,a=0;aZ&&(Z=M[z].dim1.canvasX,V=z);T===0&&yUe(i,0,0,u.canvasWidth,u.canvasHeight);var H=E(r);for(z=0;z{"use strict";var Bd=Oa(),l1=Dr(),RK=l1.isArrayOrTypedArray,EUe=l1.numberFormat,kUe=(fUe(),ob(cUe)).default,CUe=ho(),PGt=l1.strRotate,$m=l1.strTranslate,IGt=ru(),Uz=So(),wUe=tc(),zK=Jm(),tg=zK.keyFun,Qm=zK.repeat,LUe=zK.unwrap,x5=PK(),Dl=Pk(),PUe=MK(),RGt=bUe();function TUe(e,t,r){return l1.aggNums(e,null,t,r)}function IUe(e,t){return OK(TUe(Math.min,e,t),TUe(Math.max,e,t))}function Vz(e){var t=e.range;return t?OK(t[0],t[1]):IUe(e.values,e._length)}function OK(e,t){return(isNaN(e)||!isFinite(e))&&(e=0),(isNaN(t)||!isFinite(t))&&(t=0),e===t&&(e===0?(e-=1,t+=1):(e*=.9,t*=1.1)),[e,t]}function DGt(e,t){return t?function(r,n){var i=t[n];return i==null?e(r):i}:e}function FGt(e,t,r,n,i){var a=Vz(r);return n?Bd.scale.ordinal().domain(n.map(DGt(EUe(r.tickformat),i))).range(n.map(function(o){var s=(o-a[0])/(a[1]-a[0]);return e-t+s*(2*t-e)})):Bd.scale.linear().domain(a).range([e-t,t])}function zGt(e,t){return Bd.scale.linear().range([t,e-t])}function OGt(e,t){return Bd.scale.linear().domain(Vz(e)).range([t,1-t])}function qGt(e){if(e.tickvals){var t=Vz(e);return Bd.scale.ordinal().domain(e.tickvals).range(e.tickvals.map(function(r){return(r-t[0])/(t[1]-t[0])}))}}function BGt(e){var t=e.map(function(a){return a[0]}),r=e.map(function(a){var o=kUe(a[1]);return Bd.rgb("rgb("+o[0]+","+o[1]+","+o[2]+")")}),n=function(a){return function(o){return o[a]}},i="rgb".split("").map(function(a){return Bd.scale.linear().clamp(!0).domain(t).range(r.map(n(a)))});return function(a){return i.map(function(o){return o(a)})}}function FK(e){return e.dimensions.some(function(t){return t.brush.filterSpecified})}function NGt(e,t,r){var n=LUe(t),i=n.trace,a=x5.convertTypedArray(n.lineColor),o=i.line,s={color:kUe(i.unselected.line.color),opacity:i.unselected.line.opacity},l=wUe.extractOpts(o),u=l.reversescale?wUe.flipScale(n.cscale):n.cscale,c=i.domain,f=i.dimensions,h=e.width,d=i.labelangle,v=i.labelside,_=i.labelfont,b=i.tickfont,p=i.rangefont,k=l1.extendDeepNoArrays({},o,{color:a.map(Bd.scale.linear().domain(Vz({values:a,range:[l.min,l.max],_length:i._length}))),blockLineCount:Dl.blockLineCount,canvasOverdrag:Dl.overdrag*Dl.canvasPixelRatio}),E=Math.floor(h*(c.x[1]-c.x[0])),S=Math.floor(e.height*(c.y[1]-c.y[0])),L=e.margin||{l:80,r:80,t:100,b:80},x=E,C=S;return{key:r,colCount:f.filter(x5.isVisible).length,dimensions:f,tickDistance:Dl.tickDistance,unitToColor:BGt(u),lines:k,deselectedLines:s,labelAngle:d,labelSide:v,labelFont:_,tickFont:b,rangeFont:p,layoutWidth:h,layoutHeight:e.height,domain:c,translateX:c.x[0]*h,translateY:e.height-c.y[1]*e.height,pad:L,canvasWidth:x*Dl.canvasPixelRatio+2*k.canvasOverdrag,canvasHeight:C*Dl.canvasPixelRatio,width:x,height:C,canvasPixelRatio:Dl.canvasPixelRatio}}function UGt(e,t,r){var n=r.width,i=r.height,a=r.dimensions,o=r.canvasPixelRatio,s=function(h){return n*h/Math.max(1,r.colCount-1)},l=Dl.verticalPadding/i,u=zGt(i,Dl.verticalPadding),c={key:r.key,xScale:s,model:r,inBrushDrag:!1},f={};return c.dimensions=a.filter(x5.isVisible).map(function(h,d){var v=OGt(h,l),_=f[h.label];f[h.label]=(_||0)+1;var b=h.label+(_?"__"+_:""),p=h.constraintrange,k=p&&p.length;k&&!RK(p[0])&&(p=[p]);var E=k?p.map(function(O){return O.map(v)}):[[-1/0,1/0]],S=function(){var O=c;O.focusLayer&&O.focusLayer.render(O.panels,!0);var V=FK(O);!e.contextShown()&&V?(O.contextLayer&&O.contextLayer.render(O.panels,!0),e.contextShown(!0)):e.contextShown()&&!V&&(O.contextLayer&&O.contextLayer.render(O.panels,!0,!0),e.contextShown(!1))},L=h.values;L.length>h._length&&(L=L.slice(0,h._length));var x=h.tickvals,C;function M(O,V){return{val:O,text:C[V]}}function g(O,V){return O.val-V.val}if(RK(x)&&x.length){l1.isTypedArray(x)&&(x=Array.from(x)),C=h.ticktext,!RK(C)||!C.length?C=x.map(EUe(h.tickformat)):C.length>x.length?C=C.slice(0,x.length):x.length>C.length&&(x=x.slice(0,C.length));for(var P=1;P=V||N>=G)return;var j=z.lineLayer.readPixel(H,G-1-N),re=j[3]!==0,oe=re?j[2]+256*(j[1]+256*j[0]):null,_e={x:H,y:N,clientX:O.clientX,clientY:O.clientY,dataIndex:z.model.key,curveNumber:oe};oe!==v&&(re?i.hover(_e):i.unhover&&i.unhover(_e),v=oe)}}),d.style("opacity",function(z){return z.pick?0:1}),s.style("background","rgba(255, 255, 255, 0)");var b=s.selectAll("."+Dl.cn.parcoords).data(h,tg);b.exit().remove(),b.enter().append("g").classed(Dl.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),b.attr("transform",function(z){return $m(z.model.translateX,z.model.translateY)});var p=b.selectAll("."+Dl.cn.parcoordsControlView).data(Qm,tg);p.enter().append("g").classed(Dl.cn.parcoordsControlView,!0),p.attr("transform",function(z){return $m(z.model.pad.l,z.model.pad.t)});var k=p.selectAll("."+Dl.cn.yAxis).data(function(z){return z.dimensions},tg);k.enter().append("g").classed(Dl.cn.yAxis,!0),p.each(function(z){DK(k,z,u)}),d.each(function(z){if(z.viewModel){!z.lineLayer||i?z.lineLayer=RGt(this,z):z.lineLayer.update(z),(z.key||z.key===0)&&(z.viewModel[z.key]=z.lineLayer);var O=!z.context||i;z.lineLayer.render(z.viewModel.panels,O)}}),k.attr("transform",function(z){return $m(z.xScale(z.xIndex),0)}),k.call(Bd.behavior.drag().origin(function(z){return z}).on("drag",function(z){var O=z.parent;f.linePickActive(!1),z.x=Math.max(-Dl.overdrag,Math.min(z.model.width+Dl.overdrag,Bd.event.x)),z.canvasX=z.x*z.model.canvasPixelRatio,k.sort(function(V,G){return V.x-G.x}).each(function(V,G){V.xIndex=G,V.x=z===V?V.x:V.xScale(V.xIndex),V.canvasX=V.x*V.model.canvasPixelRatio}),DK(k,O,u),k.filter(function(V){return Math.abs(z.xIndex-V.xIndex)!==0}).attr("transform",function(V){return $m(V.xScale(V.xIndex),0)}),Bd.select(this).attr("transform",$m(z.x,0)),k.each(function(V,G,Z){Z===z.parent.key&&(O.dimensions[G]=V)}),O.contextLayer&&O.contextLayer.render(O.panels,!1,!FK(O)),O.focusLayer.render&&O.focusLayer.render(O.panels)}).on("dragend",function(z){var O=z.parent;z.x=z.xScale(z.xIndex),z.canvasX=z.x*z.model.canvasPixelRatio,DK(k,O,u),Bd.select(this).attr("transform",function(V){return $m(V.x,0)}),O.contextLayer&&O.contextLayer.render(O.panels,!1,!FK(O)),O.focusLayer&&O.focusLayer.render(O.panels),O.pickLayer&&O.pickLayer.render(O.panels,!0),f.linePickActive(!0),i&&i.axesMoved&&i.axesMoved(O.key,O.dimensions.map(function(V){return V.crossfilterDimensionIndex}))})),k.exit().remove();var E=k.selectAll("."+Dl.cn.axisOverlays).data(Qm,tg);E.enter().append("g").classed(Dl.cn.axisOverlays,!0),E.selectAll("."+Dl.cn.axis).remove();var S=E.selectAll("."+Dl.cn.axis).data(Qm,tg);S.enter().append("g").classed(Dl.cn.axis,!0),S.each(function(z){var O=z.model.height/z.model.tickDistance,V=z.domainScale,G=V.domain();Bd.select(this).call(Bd.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(O,z.tickFormat).tickValues(z.ordinal?G:null).tickFormat(function(Z){return x5.isOrdinal(z)?Z:RUe(z.model.dimensions[z.visibleIndex],Z)}).scale(V)),Uz.font(S.selectAll("text"),z.model.tickFont)}),S.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),S.selectAll("text").style("cursor","default");var L=E.selectAll("."+Dl.cn.axisHeading).data(Qm,tg);L.enter().append("g").classed(Dl.cn.axisHeading,!0);var x=L.selectAll("."+Dl.cn.axisTitle).data(Qm,tg);x.enter().append("text").classed(Dl.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",a?"none":"auto"),x.text(function(z){return z.label}).each(function(z){var O=Bd.select(this);Uz.font(O,z.model.labelFont),IGt.convertToTspans(O,t)}).attr("transform",function(z){var O=SUe(z.model.labelAngle,z.model.labelSide),V=Dl.axisTitleOffset;return(O.dir>0?"":$m(0,2*V+z.model.height))+PGt(O.degrees)+$m(-V*O.dx,-V*O.dy)}).attr("text-anchor",function(z){var O=SUe(z.model.labelAngle,z.model.labelSide),V=Math.abs(O.dx),G=Math.abs(O.dy);return 2*V>G?O.dir*O.dx<0?"start":"end":"middle"});var C=E.selectAll("."+Dl.cn.axisExtent).data(Qm,tg);C.enter().append("g").classed(Dl.cn.axisExtent,!0);var M=C.selectAll("."+Dl.cn.axisExtentTop).data(Qm,tg);M.enter().append("g").classed(Dl.cn.axisExtentTop,!0),M.attr("transform",$m(0,-Dl.axisExtentOffset));var g=M.selectAll("."+Dl.cn.axisExtentTopText).data(Qm,tg);g.enter().append("text").classed(Dl.cn.axisExtentTopText,!0).call(AUe),g.text(function(z){return MUe(z,!0)}).each(function(z){Uz.font(Bd.select(this),z.model.rangeFont)});var P=C.selectAll("."+Dl.cn.axisExtentBottom).data(Qm,tg);P.enter().append("g").classed(Dl.cn.axisExtentBottom,!0),P.attr("transform",function(z){return $m(0,z.model.height+Dl.axisExtentOffset)});var T=P.selectAll("."+Dl.cn.axisExtentBottomText).data(Qm,tg);T.enter().append("text").classed(Dl.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(AUe),T.text(function(z){return MUe(z,!1)}).each(function(z){Uz.font(Bd.select(this),z.model.rangeFont)}),PUe.ensureAxisBrush(E,c,t)}});var BK=ye((qK,BUe)=>{"use strict";var HGt=FUe(),jGt=Sz(),zUe=PK().isVisible,qUe={};function OUe(e,t,r){var n=t.indexOf(r),i=e.indexOf(n);return i===-1&&(i+=t.length),i}function WGt(e,t){return function(n,i){return OUe(e,t,n)-OUe(e,t,i)}}var qK=BUe.exports=function(t,r){var n=t._fullLayout,i=jGt(t,[],qUe);if(i){var a={},o={},s={},l={},u=n._size;r.forEach(function(v,_){var b=v[0].trace;s[_]=b.index;var p=l[_]=b.index;a[_]=t.data[p].dimensions,o[_]=t.data[p].dimensions.slice()});var c=function(v,_,b){var p=o[v][_],k=b.map(function(M){return M.slice()}),E="dimensions["+_+"].constraintrange",S=n._tracePreGUI[t._fullData[s[v]]._fullInput.uid];if(S[E]===void 0){var L=p.constraintrange;S[E]=L||null}var x=t._fullData[s[v]].dimensions[_];k.length?(k.length===1&&(k=k[0]),p.constraintrange=k,x.constraintrange=k.slice(),k=[k]):(delete p.constraintrange,delete x.constraintrange,k=null);var C={};C[E]=k,t.emit("plotly_restyle",[C,[l[v]]])},f=function(v){t.emit("plotly_hover",v)},h=function(v){t.emit("plotly_unhover",v)},d=function(v,_){var b=WGt(_,o[v].filter(zUe));a[v].sort(b),o[v].filter(function(p){return!zUe(p)}).sort(function(p){return o[v].indexOf(p)}).forEach(function(p){a[v].splice(a[v].indexOf(p),1),a[v].splice(o[v].indexOf(p),0,p)}),t.emit("plotly_restyle",[{dimensions:[a[v]]},[l[v]]])};HGt(t,r,{width:u.w,height:u.h,margin:{t:u.t,r:u.r,b:u.b,l:u.l}},{filterChanged:c,hover:f,unhover:h,axesMoved:d})}};qK.reglPrecompiled=qUe});var UUe=ye(Dk=>{"use strict";var NUe=Oa(),XGt=Id().getModuleCalcData,ZGt=BK(),YGt=Wp();Dk.name="parcoords";Dk.plot=function(e){var t=XGt(e.calcdata,"parcoords")[0];t.length&&ZGt(e,t)};Dk.clean=function(e,t,r,n){var i=n._has&&n._has("parcoords"),a=t._has&&t._has("parcoords");i&&!a&&(n._paperdiv.selectAll(".parcoords").remove(),n._glimages.selectAll("*").remove())};Dk.toSVG=function(e){var t=e._fullLayout._glimages,r=NUe.select(e).selectAll(".svg-container"),n=r.filter(function(a,o){return o===r.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function i(){var a=this,o=a.toDataURL("image/png"),s=t.append("svg:image");s.attr({xmlns:YGt.svg,"xlink:href":o,preserveAspectRatio:"none",x:0,y:0,width:a.style.width,height:a.style.height})}n.each(i),window.setTimeout(function(){NUe.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}});var GUe=ye((K_r,VUe)=>{"use strict";VUe.exports={attributes:TK(),supplyDefaults:rUe(),calc:nUe(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:UUe(),categories:["gl","regl","noOpacity","noHover"],meta:{}}});var WUe=ye((J_r,jUe)=>{"use strict";var HUe=GUe();HUe.plot=BK();jUe.exports=HUe});var ZUe=ye(($_r,XUe)=>{"use strict";XUe.exports=WUe()});var NK=ye((Q_r,QUe)=>{"use strict";var KUe=Ao().extendFlat,KGt=Gl(),YUe=ec(),JGt=Tu(),{hovertemplateAttrs:JUe,templatefallbackAttrs:$Ue}=Ll(),$Gt=Cc().attributes,QGt=KUe({editType:"calc"},JGt("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:JUe({editType:"plot",arrayOk:!1},{keys:["count","probability"]}),hovertemplatefallback:$Ue({editType:"plot"})});QUe.exports={domain:$Gt({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:KUe({},KGt.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:JUe({editType:"plot",arrayOk:!1},{keys:["count","probability","category","categorycount","colorcount","bandcolorcount"]}),hovertemplatefallback:$Ue({editType:"plot"}),arrangement:{valType:"enumerated",values:["perpendicular","freeform","fixed"],dflt:"perpendicular",editType:"plot"},bundlecolors:{valType:"boolean",dflt:!0,editType:"plot"},sortpaths:{valType:"enumerated",values:["forward","backward"],dflt:"forward",editType:"plot"},labelfont:YUe({editType:"calc"}),tickfont:YUe({autoShadowDflt:!0,editType:"calc"}),dimensions:{_isLinkedToArray:"dimension",label:{valType:"string",editType:"calc"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},values:{valType:"data_array",dflt:[],editType:"calc"},displayindex:{valType:"integer",editType:"calc"},editType:"calc",visible:{valType:"boolean",dflt:!0,editType:"calc"}},line:QGt,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc"},customdata:void 0,hoverlabel:void 0,ids:void 0,legend:void 0,legendgroup:void 0,legendrank:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}});var rVe=ye((exr,tVe)=>{"use strict";var b5=Dr(),eHt=pv().hasColorscale,tHt=Qh(),rHt=Cc().defaults,iHt=Yd(),eVe=NK(),nHt=Ez(),aHt=vv().isTypedArraySpec;function oHt(e,t,r,n,i){i("line.shape"),i("line.hovertemplate"),i("line.hovertemplatefallback");var a=i("line.color",n.colorway[0]);if(eHt(e,"line")&&b5.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),tHt(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function sHt(e,t){function r(u,c){return b5.coerce(e,t,eVe.dimensions,u,c)}var n=r("values"),i=r("visible");if(n&&n.length||(i=t.visible=!1),i){r("label"),r("displayindex",t._index);var a=e.categoryarray,o=b5.isArrayOrTypedArray(a)&&a.length>0||aHt(a),s;o&&(s="array");var l=r("categoryorder",s);l==="array"?(r("categoryarray"),r("ticktext")):(delete e.categoryarray,delete e.ticktext),!o&&l==="array"&&(t.categoryorder="trace")}}tVe.exports=function(t,r,n,i){function a(u,c){return b5.coerce(t,r,eVe,u,c)}var o=iHt(t,r,{name:"dimensions",handleItemDefaults:sHt}),s=oHt(t,r,n,i,a);rHt(r,i,a),(!Array.isArray(o)||!o.length)&&(r.visible=!1),nHt(r,o,"values",s),a("hoveron"),a("hovertemplate"),a("hovertemplatefallback"),a("arrangement"),a("bundlecolors"),a("sortpaths"),a("counts");var l=i.font;b5.coerceFont(a,"labelfont",l,{overrideDflt:{size:Math.round(l.size)}}),b5.coerceFont(a,"tickfont",l,{autoShadowDflt:!0,overrideDflt:{size:Math.round(l.size/1.2)}})}});var nVe=ye((txr,iVe)=>{"use strict";var lHt=Jm().wrap,uHt=pv().hasColorscale,cHt=gv(),fHt=KO(),hHt=So(),Fk=Dr(),dHt=Eo();iVe.exports=function(t,r){var n=Fk.filterVisible(r.dimensions);if(n.length===0)return[];var i=n.map(function(g){var P;if(g.categoryorder==="trace")P=null;else if(g.categoryorder==="array")P=g.categoryarray;else{P=fHt(g.values);for(var T=!0,z=0;z=e.length||t[e[r]]!==void 0)return!1;t[e[r]]=!0}return!0}});var dVe=ye((rxr,hVe)=>{"use strict";var Fl=Oa(),AHt=(D2(),ob(R2)).interpolateNumber,SHt=GP(),qk=vf(),yx=Dr(),zk=yx.strTranslate,aVe=So(),UK=cd(),MHt=ru();function EHt(e,t,r,n){var i=t._context.staticPlot,a=e.map(VHt.bind(0,t,r)),o=n.selectAll("g.parcatslayer").data([null]);o.enter().append("g").attr("class","parcatslayer").style("pointer-events",i?"none":"all");var s=o.selectAll("g.trace.parcats").data(a,u1),l=s.enter().append("g").attr("class","trace parcats");s.attr("transform",function(k){return zk(k.x,k.y)}),l.append("g").attr("class","paths");var u=s.select("g.paths"),c=u.selectAll("path.path").data(function(k){return k.paths},u1);c.attr("fill",function(k){return k.model.color});var f=c.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",function(k){return k.model.color}).attr("fill-opacity",0);HK(f),c.attr("d",function(k){return k.svgD}),f.empty()||c.sort(VK),c.exit().remove(),c.on("mouseover",kHt).on("mouseout",CHt).on("click",LHt),l.append("g").attr("class","dimensions");var h=s.select("g.dimensions"),d=h.selectAll("g.dimension").data(function(k){return k.dimensions},u1);d.enter().append("g").attr("class","dimension"),d.attr("transform",function(k){return zk(k.x,0)}),d.exit().remove();var v=d.selectAll("g.category").data(function(k){return k.categories},u1),_=v.enter().append("g").attr("class","category");v.attr("transform",function(k){return zk(0,k.y)}),_.append("rect").attr("class","catrect").attr("pointer-events","none"),v.select("rect.catrect").attr("fill","none").attr("width",function(k){return k.width}).attr("height",function(k){return k.height}),sVe(_);var b=v.selectAll("rect.bandrect").data(function(k){return k.bands},u1);b.each(function(){yx.raiseToTop(this)}),b.attr("fill",function(k){return k.color});var p=b.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",function(k){return k.color}).attr("fill-opacity",0);b.attr("fill",function(k){return k.color}).attr("width",function(k){return k.width}).attr("height",function(k){return k.height}).attr("y",function(k){return k.y}).attr("cursor",function(k){return k.parcatsViewModel.arrangement==="fixed"?"default":k.parcatsViewModel.arrangement==="perpendicular"?"ns-resize":"move"}),WK(p),b.exit().remove(),_.append("text").attr("class","catlabel").attr("pointer-events","none"),v.select("text.catlabel").attr("text-anchor",function(k){return Ok(k)?"start":"end"}).attr("alignment-baseline","middle").style("fill","rgb(0, 0, 0)").attr("x",function(k){return Ok(k)?k.width+5:-5}).attr("y",function(k){return k.height/2}).text(function(k){return k.model.categoryLabel}).each(function(k){aVe.font(Fl.select(this),k.parcatsViewModel.categorylabelfont),MHt.convertToTspans(Fl.select(this),t)}),_.append("text").attr("class","dimlabel"),v.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",function(k){return k.parcatsViewModel.arrangement==="fixed"?"default":"ew-resize"}).attr("x",function(k){return k.width/2}).attr("y",-5).text(function(k,E){return E===0?k.parcatsViewModel.model.dimensions[k.model.dimensionInd].dimensionLabel:null}).each(function(k){aVe.font(Fl.select(this),k.parcatsViewModel.labelfont)}),v.selectAll("rect.bandrect").on("mouseover",OHt).on("mouseout",qHt),v.exit().remove(),d.call(Fl.behavior.drag().origin(function(k){return{x:k.x,y:0}}).on("dragstart",BHt).on("drag",NHt).on("dragend",UHt)),s.each(function(k){k.traceSelection=Fl.select(this),k.pathSelection=Fl.select(this).selectAll("g.paths").selectAll("path.path"),k.dimensionSelection=Fl.select(this).selectAll("g.dimensions").selectAll("g.dimension")}),s.exit().remove()}hVe.exports=function(e,t,r,n){EHt(r,e,n,t)};function u1(e){return e.key}function Ok(e){var t=e.parcatsViewModel.dimensions.length,r=e.parcatsViewModel.dimensions[t-1].model.dimensionInd;return e.model.dimensionInd===r}function VK(e,t){return e.model.rawColor>t.model.rawColor?1:e.model.rawColor"),x=Fl.mouse(i)[0];qk.loneHover({trace:a,x:v-s.left+l.left,y:_-s.top+l.top,text:L,color:e.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:b,idealAlign:x1&&u.displayInd===l.dimensions.length-1?(h=o.left,d="left"):(h=o.left+o.width,d="right");var v=s.model.count,_=s.model.categoryLabel,b=v/s.parcatsViewModel.model.count,p={countLabel:v,categoryLabel:_,probabilityLabel:b.toFixed(3)},k=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&k.push(["Count:",p.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&k.push(["P("+p.categoryLabel+"):",p.probabilityLabel].join(" "));var E=k.join("
");return{trace:c,x:n*(h-t.left),y:i*(f-t.top),text:E,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:d,hovertemplate:c.hovertemplate,hovertemplateLabels:p,eventData:[{data:c._input,fullData:c,count:v,category:_,probability:b}]}}function FHt(e,t,r){var n=[];return Fl.select(r.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each(function(){var i=this;n.push(lVe(e,t,i))}),n}function zHt(e,t,r){e._fullLayout._calcInverseTransform(e);var n=e._fullLayout._invScaleX,i=e._fullLayout._invScaleY,a=r.getBoundingClientRect(),o=Fl.select(r).datum(),s=o.categoryViewModel,l=s.parcatsViewModel,u=l.model.dimensions[s.model.dimensionInd],c=l.trace,f=a.y+a.height/2,h,d;l.dimensions.length>1&&u.displayInd===l.dimensions.length-1?(h=a.left,d="left"):(h=a.left+a.width,d="right");var v=s.model.categoryLabel,_=o.parcatsViewModel.model.count,b=0;o.categoryViewModel.bands.forEach(function(P){P.color===o.color&&(b+=P.count)});var p=s.model.count,k=0;l.pathSelection.each(function(P){P.model.color===o.color&&(k+=P.model.count)});var E=b/_,S=b/k,L=b/p,x={countLabel:b,categoryLabel:v,probabilityLabel:E.toFixed(3)},C=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&C.push(["Count:",x.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&(C.push("P(color \u2229 "+v+"): "+x.probabilityLabel),C.push("P("+v+" | color): "+S.toFixed(3)),C.push("P(color | "+v+"): "+L.toFixed(3)));var M=C.join("
"),g=UK.mostReadable(o.color,["black","white"]);return{trace:c,x:n*(h-t.left),y:i*(f-t.top),text:M,color:o.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:g,fontSize:10,idealAlign:d,hovertemplate:c.hovertemplate,hovertemplateLabels:x,eventData:[{data:c._input,fullData:c,category:v,count:_,probability:E,categorycount:p,colorcount:k,bandcolorcount:b}]}}function OHt(e){if(!e.parcatsViewModel.dragDimension&&e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var t=Fl.mouse(this)[1];if(t<-1)return;var r=e.parcatsViewModel.graphDiv,n=r._fullLayout,i=n._paperdiv.node().getBoundingClientRect(),a=e.parcatsViewModel.hoveron,o=this;if(a==="color"?(DHt(o),ZK(o,"plotly_hover",Fl.event)):(RHt(o),XK(o,"plotly_hover",Fl.event)),e.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var s;a==="category"?s=lVe(r,i,o):a==="color"?s=zHt(r,i,o):a==="dimension"&&(s=FHt(r,i,o)),s&&qk.loneHover(s,{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:r})}}}function qHt(e){var t=e.parcatsViewModel;if(!t.dragDimension&&(HK(t.pathSelection),sVe(t.dimensionSelection.selectAll("g.category")),WK(t.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),qk.loneUnhover(t.graphDiv._fullLayout._hoverlayer.node()),t.pathSelection.sort(VK),t.hoverinfoItems.indexOf("skip")===-1)){var r=e.parcatsViewModel.hoveron,n=this;r==="color"?ZK(n,"plotly_unhover",Fl.event):XK(n,"plotly_unhover",Fl.event)}}function BHt(e){e.parcatsViewModel.arrangement!=="fixed"&&(e.dragDimensionDisplayInd=e.model.displayInd,e.initialDragDimensionDisplayInds=e.parcatsViewModel.model.dimensions.map(function(t){return t.displayInd}),e.dragHasMoved=!1,e.dragCategoryDisplayInd=null,Fl.select(this).selectAll("g.category").select("rect.catrect").each(function(t){var r=Fl.mouse(this)[0],n=Fl.mouse(this)[1];-2<=r&&r<=t.width+2&&-2<=n&&n<=t.height+2&&(e.dragCategoryDisplayInd=t.model.displayInd,e.initialDragCategoryDisplayInds=e.model.categories.map(function(i){return i.displayInd}),t.model.dragY=t.y,yx.raiseToTop(this.parentNode),Fl.select(this.parentNode).selectAll("rect.bandrect").each(function(i){i.yc.y+c.height/2&&(a.model.displayInd=c.model.displayInd,c.model.displayInd=s),e.dragCategoryDisplayInd=a.model.displayInd}if(e.dragCategoryDisplayInd===null||e.parcatsViewModel.arrangement==="freeform"){i.model.dragX=Fl.event.x;var f=e.parcatsViewModel.dimensions[r],h=e.parcatsViewModel.dimensions[n];f!==void 0&&i.model.dragXh.x&&(i.model.displayInd=h.model.displayInd,h.model.displayInd=e.dragDimensionDisplayInd),e.dragDimensionDisplayInd=i.model.displayInd}KK(e.parcatsViewModel),YK(e.parcatsViewModel),fVe(e.parcatsViewModel),cVe(e.parcatsViewModel)}}function UHt(e){if(e.parcatsViewModel.arrangement!=="fixed"&&e.dragDimensionDisplayInd!==null){Fl.select(this).selectAll("text").attr("font-weight","normal");var t={},r=uVe(e.parcatsViewModel),n=e.parcatsViewModel.model.dimensions.map(function(h){return h.displayInd}),i=e.initialDragDimensionDisplayInds.some(function(h,d){return h!==n[d]});i&&n.forEach(function(h,d){var v=e.parcatsViewModel.model.dimensions[d].containerInd;t["dimensions["+v+"].displayindex"]=h});var a=!1;if(e.dragCategoryDisplayInd!==null){var o=e.model.categories.map(function(h){return h.displayInd});if(a=e.initialDragCategoryDisplayInds.some(function(h,d){return h!==o[d]}),a){var s=e.model.categories.slice().sort(function(h,d){return h.displayInd-d.displayInd}),l=s.map(function(h){return h.categoryValue}),u=s.map(function(h){return h.categoryLabel});t["dimensions["+e.model.containerInd+"].categoryarray"]=[l],t["dimensions["+e.model.containerInd+"].ticktext"]=[u],t["dimensions["+e.model.containerInd+"].categoryorder"]="array"}}if(e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1&&!e.dragHasMoved&&e.potentialClickBand&&(e.parcatsViewModel.hoveron==="color"?ZK(e.potentialClickBand,"plotly_click",Fl.event.sourceEvent):XK(e.potentialClickBand,"plotly_click",Fl.event.sourceEvent)),e.model.dragX=null,e.dragCategoryDisplayInd!==null){var c=e.parcatsViewModel.dimensions[e.dragDimensionDisplayInd].categories[e.dragCategoryDisplayInd];c.model.dragY=null,e.dragCategoryDisplayInd=null}e.dragDimensionDisplayInd=null,e.parcatsViewModel.dragDimension=null,e.dragHasMoved=null,e.potentialClickBand=null,KK(e.parcatsViewModel),YK(e.parcatsViewModel);var f=Fl.transition().duration(300).ease("cubic-in-out");f.each(function(){fVe(e.parcatsViewModel,!0),cVe(e.parcatsViewModel,!0)}).each("end",function(){(i||a)&&SHt.restyle(e.parcatsViewModel.graphDiv,t,[r])})}}function uVe(e){for(var t,r=e.graphDiv._fullData,n=0;n=0;l--)u+="C"+o[l]+","+(t[l+1]+n)+" "+a[l]+","+(t[l]+n)+" "+(e[l]+r[l])+","+(t[l]+n),u+="l-"+r[l]+",0 ";return u+="Z",u}function YK(e){var t=e.dimensions,r=e.model,n=t.map(function(O){return O.categories.map(function(V){return V.y})}),i=e.model.dimensions.map(function(O){return O.categories.map(function(V){return V.displayInd})}),a=e.model.dimensions.map(function(O){return O.displayInd}),o=e.dimensions.map(function(O){return O.model.dimensionInd}),s=t.map(function(O){return O.x}),l=t.map(function(O){return O.width}),u=[];for(var c in r.paths)r.paths.hasOwnProperty(c)&&u.push(r.paths[c]);function f(O){var V=O.categoryInds.map(function(Z,H){return i[H][Z]}),G=o.map(function(Z){return V[Z]});return G}u.sort(function(O,V){var G=f(O),Z=f(V);return e.sortpaths==="backward"&&(G.reverse(),Z.reverse()),G.push(O.valueInds[0]),Z.push(V.valueInds[0]),e.bundlecolors&&(G.unshift(O.rawColor),Z.unshift(V.rawColor)),GZ?1:0});for(var h=new Array(u.length),d=t[0].model.count,v=t[0].categories.map(function(O){return O.height}).reduce(function(O,V){return O+V}),_=0;_0?p=v*(b.count/d):p=0;for(var k=new Array(n.length),E=0;E1?o=(e.width-2*r-n)/(i-1):o=0,s=r,l=s+o*a;var u=[],c=e.model.maxCats,f=t.categories.length,h=8,d=t.count,v=e.height-h*(c-1),_,b,p,k,E,S=(c-f)*h/2,L=t.categories.map(function(x){return{displayInd:x.displayInd,categoryInd:x.categoryInd}});for(L.sort(function(x,C){return x.displayInd-C.displayInd}),E=0;E0?_=b.count/d*v:_=0,p={key:b.valueInds[0],model:b,width:n,height:_,y:b.dragY!==null?b.dragY:S,bands:[],parcatsViewModel:e},S=S+_+h,u.push(p);return{key:t.dimensionInd,x:t.dragX!==null?t.dragX:l,y:0,width:n,model:t,categories:u,parcatsViewModel:e,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}});var JK=ye((ixr,vVe)=>{"use strict";var HHt=dVe();vVe.exports=function(t,r,n,i){var a=t._fullLayout,o=a._paper,s=a._size;HHt(t,o,r,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},n,i)}});var gVe=ye(Hz=>{"use strict";var jHt=Id().getModuleCalcData,WHt=JK(),pVe="parcats";Hz.name=pVe;Hz.plot=function(e,t,r,n){var i=jHt(e.calcdata,pVe);if(i.length){var a=i[0];WHt(e,a,r,n)}};Hz.clean=function(e,t,r,n){var i=n._has&&n._has("parcats"),a=t._has&&t._has("parcats");i&&!a&&n._paperdiv.selectAll(".parcats").remove()}});var yVe=ye((axr,mVe)=>{"use strict";mVe.exports={attributes:NK(),supplyDefaults:rVe(),calc:nVe(),plot:JK(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:gVe(),categories:["noOpacity"],meta:{}}});var xVe=ye((oxr,_Ve)=>{"use strict";_Ve.exports=yVe()});var c1=ye((sxr,EVe)=>{"use strict";var XHt=Z1(),bVe="1.13.4",SVe='\xA9
OpenStreetMap contributors',wVe=['\xA9 Carto',SVe].join(" "),TVe=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under ODbL'].join(" "),ZHt=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under CC BY SA'].join(" "),MVe={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:SVe,tiles:["https://a.tile.openstreetmap.org/{z}/{x}/{y}.png","https://b.tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:wVe,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:wVe,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:TVe,tiles:["https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:TVe,tiles:["https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:ZHt,tiles:["https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"}},AVe=XHt(MVe);EVe.exports={requiredVersion:bVe,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:MVe,styleValuesNonMapbox:AVe,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install @plotly/mapbox-gl@"+bVe+"."].join(` +`),Rk=Pk().maxDimensionCount,yUe=Dr(),dUe=1e-6,Uz=2048,bGt=new Uint8Array(4),vUe=new Uint8Array(4),pUe={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function wGt(e){e.read({x:0,y:0,width:1,height:1,data:bGt})}function _Ue(e,t,r,n,i){var a=e._gl;a.enable(a.SCISSOR_TEST),a.scissor(t,r,n,i),e.clear({color:[0,0,0,0],depth:1})}function TGt(e,t,r,n,i,a){var o=a.key;function s(l){var u=Math.min(n,i-l*n);l===0&&(window.cancelAnimationFrame(r.currentRafs[o]),delete r.currentRafs[o],_Ue(e,a.scissorX,a.scissorY,a.scissorWidth,a.viewBoxSize[1])),!r.clearOnly&&(a.count=2*u,a.offset=2*l*n,t(a),l*n+u>>8*t)%256/255}function MGt(e,t,r){for(var n=new Array(e*(Rk+4)),i=0,a=0;aZ&&(Z=M[z].dim1.canvasX,V=z);T===0&&_Ue(i,0,0,u.canvasWidth,u.canvasHeight);var j=E(r);for(z=0;z{"use strict";var Bd=Oa(),l1=Dr(),DK=l1.isArrayOrTypedArray,kUe=l1.numberFormat,CUe=(hUe(),ob(fUe)).default,LUe=ho(),PGt=l1.strRotate,$m=l1.strTranslate,IGt=ru(),Vz=So(),TUe=tc(),OK=Jm(),tg=OK.keyFun,Qm=OK.repeat,PUe=OK.unwrap,b5=IK(),Dl=Pk(),IUe=EK(),RGt=wUe();function AUe(e,t,r){return l1.aggNums(e,null,t,r)}function RUe(e,t){return qK(AUe(Math.min,e,t),AUe(Math.max,e,t))}function Gz(e){var t=e.range;return t?qK(t[0],t[1]):RUe(e.values,e._length)}function qK(e,t){return(isNaN(e)||!isFinite(e))&&(e=0),(isNaN(t)||!isFinite(t))&&(t=0),e===t&&(e===0?(e-=1,t+=1):(e*=.9,t*=1.1)),[e,t]}function DGt(e,t){return t?function(r,n){var i=t[n];return i==null?e(r):i}:e}function FGt(e,t,r,n,i){var a=Gz(r);return n?Bd.scale.ordinal().domain(n.map(DGt(kUe(r.tickformat),i))).range(n.map(function(o){var s=(o-a[0])/(a[1]-a[0]);return e-t+s*(2*t-e)})):Bd.scale.linear().domain(a).range([e-t,t])}function zGt(e,t){return Bd.scale.linear().range([t,e-t])}function OGt(e,t){return Bd.scale.linear().domain(Gz(e)).range([t,1-t])}function qGt(e){if(e.tickvals){var t=Gz(e);return Bd.scale.ordinal().domain(e.tickvals).range(e.tickvals.map(function(r){return(r-t[0])/(t[1]-t[0])}))}}function BGt(e){var t=e.map(function(a){return a[0]}),r=e.map(function(a){var o=CUe(a[1]);return Bd.rgb("rgb("+o[0]+","+o[1]+","+o[2]+")")}),n=function(a){return function(o){return o[a]}},i="rgb".split("").map(function(a){return Bd.scale.linear().clamp(!0).domain(t).range(r.map(n(a)))});return function(a){return i.map(function(o){return o(a)})}}function zK(e){return e.dimensions.some(function(t){return t.brush.filterSpecified})}function NGt(e,t,r){var n=PUe(t),i=n.trace,a=b5.convertTypedArray(n.lineColor),o=i.line,s={color:CUe(i.unselected.line.color),opacity:i.unselected.line.opacity},l=TUe.extractOpts(o),u=l.reversescale?TUe.flipScale(n.cscale):n.cscale,c=i.domain,f=i.dimensions,h=e.width,d=i.labelangle,v=i.labelside,_=i.labelfont,b=i.tickfont,p=i.rangefont,k=l1.extendDeepNoArrays({},o,{color:a.map(Bd.scale.linear().domain(Gz({values:a,range:[l.min,l.max],_length:i._length}))),blockLineCount:Dl.blockLineCount,canvasOverdrag:Dl.overdrag*Dl.canvasPixelRatio}),E=Math.floor(h*(c.x[1]-c.x[0])),S=Math.floor(e.height*(c.y[1]-c.y[0])),L=e.margin||{l:80,r:80,t:100,b:80},x=E,C=S;return{key:r,colCount:f.filter(b5.isVisible).length,dimensions:f,tickDistance:Dl.tickDistance,unitToColor:BGt(u),lines:k,deselectedLines:s,labelAngle:d,labelSide:v,labelFont:_,tickFont:b,rangeFont:p,layoutWidth:h,layoutHeight:e.height,domain:c,translateX:c.x[0]*h,translateY:e.height-c.y[1]*e.height,pad:L,canvasWidth:x*Dl.canvasPixelRatio+2*k.canvasOverdrag,canvasHeight:C*Dl.canvasPixelRatio,width:x,height:C,canvasPixelRatio:Dl.canvasPixelRatio}}function UGt(e,t,r){var n=r.width,i=r.height,a=r.dimensions,o=r.canvasPixelRatio,s=function(h){return n*h/Math.max(1,r.colCount-1)},l=Dl.verticalPadding/i,u=zGt(i,Dl.verticalPadding),c={key:r.key,xScale:s,model:r,inBrushDrag:!1},f={};return c.dimensions=a.filter(b5.isVisible).map(function(h,d){var v=OGt(h,l),_=f[h.label];f[h.label]=(_||0)+1;var b=h.label+(_?"__"+_:""),p=h.constraintrange,k=p&&p.length;k&&!DK(p[0])&&(p=[p]);var E=k?p.map(function(O){return O.map(v)}):[[-1/0,1/0]],S=function(){var O=c;O.focusLayer&&O.focusLayer.render(O.panels,!0);var V=zK(O);!e.contextShown()&&V?(O.contextLayer&&O.contextLayer.render(O.panels,!0),e.contextShown(!0)):e.contextShown()&&!V&&(O.contextLayer&&O.contextLayer.render(O.panels,!0,!0),e.contextShown(!1))},L=h.values;L.length>h._length&&(L=L.slice(0,h._length));var x=h.tickvals,C;function M(O,V){return{val:O,text:C[V]}}function g(O,V){return O.val-V.val}if(DK(x)&&x.length){l1.isTypedArray(x)&&(x=Array.from(x)),C=h.ticktext,!DK(C)||!C.length?C=x.map(kUe(h.tickformat)):C.length>x.length?C=C.slice(0,x.length):x.length>C.length&&(x=x.slice(0,C.length));for(var P=1;P=V||N>=G)return;var H=z.lineLayer.readPixel(j,G-1-N),te=H[3]!==0,oe=te?H[2]+256*(H[1]+256*H[0]):null,_e={x:j,y:N,clientX:O.clientX,clientY:O.clientY,dataIndex:z.model.key,curveNumber:oe};oe!==v&&(te?i.hover(_e):i.unhover&&i.unhover(_e),v=oe)}}),d.style("opacity",function(z){return z.pick?0:1}),s.style("background","rgba(255, 255, 255, 0)");var b=s.selectAll("."+Dl.cn.parcoords).data(h,tg);b.exit().remove(),b.enter().append("g").classed(Dl.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),b.attr("transform",function(z){return $m(z.model.translateX,z.model.translateY)});var p=b.selectAll("."+Dl.cn.parcoordsControlView).data(Qm,tg);p.enter().append("g").classed(Dl.cn.parcoordsControlView,!0),p.attr("transform",function(z){return $m(z.model.pad.l,z.model.pad.t)});var k=p.selectAll("."+Dl.cn.yAxis).data(function(z){return z.dimensions},tg);k.enter().append("g").classed(Dl.cn.yAxis,!0),p.each(function(z){FK(k,z,u)}),d.each(function(z){if(z.viewModel){!z.lineLayer||i?z.lineLayer=RGt(this,z):z.lineLayer.update(z),(z.key||z.key===0)&&(z.viewModel[z.key]=z.lineLayer);var O=!z.context||i;z.lineLayer.render(z.viewModel.panels,O)}}),k.attr("transform",function(z){return $m(z.xScale(z.xIndex),0)}),k.call(Bd.behavior.drag().origin(function(z){return z}).on("drag",function(z){var O=z.parent;f.linePickActive(!1),z.x=Math.max(-Dl.overdrag,Math.min(z.model.width+Dl.overdrag,Bd.event.x)),z.canvasX=z.x*z.model.canvasPixelRatio,k.sort(function(V,G){return V.x-G.x}).each(function(V,G){V.xIndex=G,V.x=z===V?V.x:V.xScale(V.xIndex),V.canvasX=V.x*V.model.canvasPixelRatio}),FK(k,O,u),k.filter(function(V){return Math.abs(z.xIndex-V.xIndex)!==0}).attr("transform",function(V){return $m(V.xScale(V.xIndex),0)}),Bd.select(this).attr("transform",$m(z.x,0)),k.each(function(V,G,Z){Z===z.parent.key&&(O.dimensions[G]=V)}),O.contextLayer&&O.contextLayer.render(O.panels,!1,!zK(O)),O.focusLayer.render&&O.focusLayer.render(O.panels)}).on("dragend",function(z){var O=z.parent;z.x=z.xScale(z.xIndex),z.canvasX=z.x*z.model.canvasPixelRatio,FK(k,O,u),Bd.select(this).attr("transform",function(V){return $m(V.x,0)}),O.contextLayer&&O.contextLayer.render(O.panels,!1,!zK(O)),O.focusLayer&&O.focusLayer.render(O.panels),O.pickLayer&&O.pickLayer.render(O.panels,!0),f.linePickActive(!0),i&&i.axesMoved&&i.axesMoved(O.key,O.dimensions.map(function(V){return V.crossfilterDimensionIndex}))})),k.exit().remove();var E=k.selectAll("."+Dl.cn.axisOverlays).data(Qm,tg);E.enter().append("g").classed(Dl.cn.axisOverlays,!0),E.selectAll("."+Dl.cn.axis).remove();var S=E.selectAll("."+Dl.cn.axis).data(Qm,tg);S.enter().append("g").classed(Dl.cn.axis,!0),S.each(function(z){var O=z.model.height/z.model.tickDistance,V=z.domainScale,G=V.domain();Bd.select(this).call(Bd.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(O,z.tickFormat).tickValues(z.ordinal?G:null).tickFormat(function(Z){return b5.isOrdinal(z)?Z:DUe(z.model.dimensions[z.visibleIndex],Z)}).scale(V)),Vz.font(S.selectAll("text"),z.model.tickFont)}),S.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),S.selectAll("text").style("cursor","default");var L=E.selectAll("."+Dl.cn.axisHeading).data(Qm,tg);L.enter().append("g").classed(Dl.cn.axisHeading,!0);var x=L.selectAll("."+Dl.cn.axisTitle).data(Qm,tg);x.enter().append("text").classed(Dl.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",a?"none":"auto"),x.text(function(z){return z.label}).each(function(z){var O=Bd.select(this);Vz.font(O,z.model.labelFont),IGt.convertToTspans(O,t)}).attr("transform",function(z){var O=MUe(z.model.labelAngle,z.model.labelSide),V=Dl.axisTitleOffset;return(O.dir>0?"":$m(0,2*V+z.model.height))+PGt(O.degrees)+$m(-V*O.dx,-V*O.dy)}).attr("text-anchor",function(z){var O=MUe(z.model.labelAngle,z.model.labelSide),V=Math.abs(O.dx),G=Math.abs(O.dy);return 2*V>G?O.dir*O.dx<0?"start":"end":"middle"});var C=E.selectAll("."+Dl.cn.axisExtent).data(Qm,tg);C.enter().append("g").classed(Dl.cn.axisExtent,!0);var M=C.selectAll("."+Dl.cn.axisExtentTop).data(Qm,tg);M.enter().append("g").classed(Dl.cn.axisExtentTop,!0),M.attr("transform",$m(0,-Dl.axisExtentOffset));var g=M.selectAll("."+Dl.cn.axisExtentTopText).data(Qm,tg);g.enter().append("text").classed(Dl.cn.axisExtentTopText,!0).call(SUe),g.text(function(z){return EUe(z,!0)}).each(function(z){Vz.font(Bd.select(this),z.model.rangeFont)});var P=C.selectAll("."+Dl.cn.axisExtentBottom).data(Qm,tg);P.enter().append("g").classed(Dl.cn.axisExtentBottom,!0),P.attr("transform",function(z){return $m(0,z.model.height+Dl.axisExtentOffset)});var T=P.selectAll("."+Dl.cn.axisExtentBottomText).data(Qm,tg);T.enter().append("text").classed(Dl.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(SUe),T.text(function(z){return EUe(z,!1)}).each(function(z){Vz.font(Bd.select(this),z.model.rangeFont)}),IUe.ensureAxisBrush(E,c,t)}});var NK=ye((BK,NUe)=>{"use strict";var HGt=zUe(),jGt=Mz(),OUe=IK().isVisible,BUe={};function qUe(e,t,r){var n=t.indexOf(r),i=e.indexOf(n);return i===-1&&(i+=t.length),i}function WGt(e,t){return function(n,i){return qUe(e,t,n)-qUe(e,t,i)}}var BK=NUe.exports=function(t,r){var n=t._fullLayout,i=jGt(t,[],BUe);if(i){var a={},o={},s={},l={},u=n._size;r.forEach(function(v,_){var b=v[0].trace;s[_]=b.index;var p=l[_]=b.index;a[_]=t.data[p].dimensions,o[_]=t.data[p].dimensions.slice()});var c=function(v,_,b){var p=o[v][_],k=b.map(function(M){return M.slice()}),E="dimensions["+_+"].constraintrange",S=n._tracePreGUI[t._fullData[s[v]]._fullInput.uid];if(S[E]===void 0){var L=p.constraintrange;S[E]=L||null}var x=t._fullData[s[v]].dimensions[_];k.length?(k.length===1&&(k=k[0]),p.constraintrange=k,x.constraintrange=k.slice(),k=[k]):(delete p.constraintrange,delete x.constraintrange,k=null);var C={};C[E]=k,t.emit("plotly_restyle",[C,[l[v]]])},f=function(v){t.emit("plotly_hover",v)},h=function(v){t.emit("plotly_unhover",v)},d=function(v,_){var b=WGt(_,o[v].filter(OUe));a[v].sort(b),o[v].filter(function(p){return!OUe(p)}).sort(function(p){return o[v].indexOf(p)}).forEach(function(p){a[v].splice(a[v].indexOf(p),1),a[v].splice(o[v].indexOf(p),0,p)}),t.emit("plotly_restyle",[{dimensions:[a[v]]},[l[v]]])};HGt(t,r,{width:u.w,height:u.h,margin:{t:u.t,r:u.r,b:u.b,l:u.l}},{filterChanged:c,hover:f,unhover:h,axesMoved:d})}};BK.reglPrecompiled=BUe});var VUe=ye(Dk=>{"use strict";var UUe=Oa(),XGt=Id().getModuleCalcData,ZGt=NK(),YGt=Wp();Dk.name="parcoords";Dk.plot=function(e){var t=XGt(e.calcdata,"parcoords")[0];t.length&&ZGt(e,t)};Dk.clean=function(e,t,r,n){var i=n._has&&n._has("parcoords"),a=t._has&&t._has("parcoords");i&&!a&&(n._paperdiv.selectAll(".parcoords").remove(),n._glimages.selectAll("*").remove())};Dk.toSVG=function(e){var t=e._fullLayout._glimages,r=UUe.select(e).selectAll(".svg-container"),n=r.filter(function(a,o){return o===r.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function i(){var a=this,o=a.toDataURL("image/png"),s=t.append("svg:image");s.attr({xmlns:YGt.svg,"xlink:href":o,preserveAspectRatio:"none",x:0,y:0,width:a.style.width,height:a.style.height})}n.each(i),window.setTimeout(function(){UUe.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}});var HUe=ye((K_r,GUe)=>{"use strict";GUe.exports={attributes:AK(),supplyDefaults:iUe(),calc:aUe(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:VUe(),categories:["gl","regl","noOpacity","noHover"],meta:{}}});var XUe=ye((J_r,WUe)=>{"use strict";var jUe=HUe();jUe.plot=NK();WUe.exports=jUe});var YUe=ye(($_r,ZUe)=>{"use strict";ZUe.exports=XUe()});var UK=ye((Q_r,eVe)=>{"use strict";var JUe=Ao().extendFlat,KGt=Gl(),KUe=ec(),JGt=Tu(),{hovertemplateAttrs:$Ue,templatefallbackAttrs:QUe}=Ll(),$Gt=Cc().attributes,QGt=JUe({editType:"calc"},JGt("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:$Ue({editType:"plot",arrayOk:!1},{keys:["count","probability"]}),hovertemplatefallback:QUe({editType:"plot"})});eVe.exports={domain:$Gt({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:JUe({},KGt.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:$Ue({editType:"plot",arrayOk:!1},{keys:["count","probability","category","categorycount","colorcount","bandcolorcount"]}),hovertemplatefallback:QUe({editType:"plot"}),arrangement:{valType:"enumerated",values:["perpendicular","freeform","fixed"],dflt:"perpendicular",editType:"plot"},bundlecolors:{valType:"boolean",dflt:!0,editType:"plot"},sortpaths:{valType:"enumerated",values:["forward","backward"],dflt:"forward",editType:"plot"},labelfont:KUe({editType:"calc"}),tickfont:KUe({autoShadowDflt:!0,editType:"calc"}),dimensions:{_isLinkedToArray:"dimension",label:{valType:"string",editType:"calc"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},values:{valType:"data_array",dflt:[],editType:"calc"},displayindex:{valType:"integer",editType:"calc"},editType:"calc",visible:{valType:"boolean",dflt:!0,editType:"calc"}},line:QGt,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc"},customdata:void 0,hoverlabel:void 0,ids:void 0,legend:void 0,legendgroup:void 0,legendrank:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}});var iVe=ye((exr,rVe)=>{"use strict";var w5=Dr(),eHt=pv().hasColorscale,tHt=Qh(),rHt=Cc().defaults,iHt=Yd(),tVe=UK(),nHt=kz(),aHt=vv().isTypedArraySpec;function oHt(e,t,r,n,i){i("line.shape"),i("line.hovertemplate"),i("line.hovertemplatefallback");var a=i("line.color",n.colorway[0]);if(eHt(e,"line")&&w5.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),tHt(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function sHt(e,t){function r(u,c){return w5.coerce(e,t,tVe.dimensions,u,c)}var n=r("values"),i=r("visible");if(n&&n.length||(i=t.visible=!1),i){r("label"),r("displayindex",t._index);var a=e.categoryarray,o=w5.isArrayOrTypedArray(a)&&a.length>0||aHt(a),s;o&&(s="array");var l=r("categoryorder",s);l==="array"?(r("categoryarray"),r("ticktext")):(delete e.categoryarray,delete e.ticktext),!o&&l==="array"&&(t.categoryorder="trace")}}rVe.exports=function(t,r,n,i){function a(u,c){return w5.coerce(t,r,tVe,u,c)}var o=iHt(t,r,{name:"dimensions",handleItemDefaults:sHt}),s=oHt(t,r,n,i,a);rHt(r,i,a),(!Array.isArray(o)||!o.length)&&(r.visible=!1),nHt(r,o,"values",s),a("hoveron"),a("hovertemplate"),a("hovertemplatefallback"),a("arrangement"),a("bundlecolors"),a("sortpaths"),a("counts");var l=i.font;w5.coerceFont(a,"labelfont",l,{overrideDflt:{size:Math.round(l.size)}}),w5.coerceFont(a,"tickfont",l,{autoShadowDflt:!0,overrideDflt:{size:Math.round(l.size/1.2)}})}});var aVe=ye((txr,nVe)=>{"use strict";var lHt=Jm().wrap,uHt=pv().hasColorscale,cHt=gv(),fHt=JO(),hHt=So(),Fk=Dr(),dHt=Eo();nVe.exports=function(t,r){var n=Fk.filterVisible(r.dimensions);if(n.length===0)return[];var i=n.map(function(g){var P;if(g.categoryorder==="trace")P=null;else if(g.categoryorder==="array")P=g.categoryarray;else{P=fHt(g.values);for(var T=!0,z=0;z=e.length||t[e[r]]!==void 0)return!1;t[e[r]]=!0}return!0}});var vVe=ye((rxr,dVe)=>{"use strict";var Fl=Oa(),AHt=(F2(),ob(D2)).interpolateNumber,SHt=HP(),qk=vf(),yx=Dr(),zk=yx.strTranslate,oVe=So(),VK=cd(),MHt=ru();function EHt(e,t,r,n){var i=t._context.staticPlot,a=e.map(VHt.bind(0,t,r)),o=n.selectAll("g.parcatslayer").data([null]);o.enter().append("g").attr("class","parcatslayer").style("pointer-events",i?"none":"all");var s=o.selectAll("g.trace.parcats").data(a,u1),l=s.enter().append("g").attr("class","trace parcats");s.attr("transform",function(k){return zk(k.x,k.y)}),l.append("g").attr("class","paths");var u=s.select("g.paths"),c=u.selectAll("path.path").data(function(k){return k.paths},u1);c.attr("fill",function(k){return k.model.color});var f=c.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",function(k){return k.model.color}).attr("fill-opacity",0);jK(f),c.attr("d",function(k){return k.svgD}),f.empty()||c.sort(GK),c.exit().remove(),c.on("mouseover",kHt).on("mouseout",CHt).on("click",LHt),l.append("g").attr("class","dimensions");var h=s.select("g.dimensions"),d=h.selectAll("g.dimension").data(function(k){return k.dimensions},u1);d.enter().append("g").attr("class","dimension"),d.attr("transform",function(k){return zk(k.x,0)}),d.exit().remove();var v=d.selectAll("g.category").data(function(k){return k.categories},u1),_=v.enter().append("g").attr("class","category");v.attr("transform",function(k){return zk(0,k.y)}),_.append("rect").attr("class","catrect").attr("pointer-events","none"),v.select("rect.catrect").attr("fill","none").attr("width",function(k){return k.width}).attr("height",function(k){return k.height}),lVe(_);var b=v.selectAll("rect.bandrect").data(function(k){return k.bands},u1);b.each(function(){yx.raiseToTop(this)}),b.attr("fill",function(k){return k.color});var p=b.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",function(k){return k.color}).attr("fill-opacity",0);b.attr("fill",function(k){return k.color}).attr("width",function(k){return k.width}).attr("height",function(k){return k.height}).attr("y",function(k){return k.y}).attr("cursor",function(k){return k.parcatsViewModel.arrangement==="fixed"?"default":k.parcatsViewModel.arrangement==="perpendicular"?"ns-resize":"move"}),XK(p),b.exit().remove(),_.append("text").attr("class","catlabel").attr("pointer-events","none"),v.select("text.catlabel").attr("text-anchor",function(k){return Ok(k)?"start":"end"}).attr("alignment-baseline","middle").style("fill","rgb(0, 0, 0)").attr("x",function(k){return Ok(k)?k.width+5:-5}).attr("y",function(k){return k.height/2}).text(function(k){return k.model.categoryLabel}).each(function(k){oVe.font(Fl.select(this),k.parcatsViewModel.categorylabelfont),MHt.convertToTspans(Fl.select(this),t)}),_.append("text").attr("class","dimlabel"),v.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",function(k){return k.parcatsViewModel.arrangement==="fixed"?"default":"ew-resize"}).attr("x",function(k){return k.width/2}).attr("y",-5).text(function(k,E){return E===0?k.parcatsViewModel.model.dimensions[k.model.dimensionInd].dimensionLabel:null}).each(function(k){oVe.font(Fl.select(this),k.parcatsViewModel.labelfont)}),v.selectAll("rect.bandrect").on("mouseover",OHt).on("mouseout",qHt),v.exit().remove(),d.call(Fl.behavior.drag().origin(function(k){return{x:k.x,y:0}}).on("dragstart",BHt).on("drag",NHt).on("dragend",UHt)),s.each(function(k){k.traceSelection=Fl.select(this),k.pathSelection=Fl.select(this).selectAll("g.paths").selectAll("path.path"),k.dimensionSelection=Fl.select(this).selectAll("g.dimensions").selectAll("g.dimension")}),s.exit().remove()}dVe.exports=function(e,t,r,n){EHt(r,e,n,t)};function u1(e){return e.key}function Ok(e){var t=e.parcatsViewModel.dimensions.length,r=e.parcatsViewModel.dimensions[t-1].model.dimensionInd;return e.model.dimensionInd===r}function GK(e,t){return e.model.rawColor>t.model.rawColor?1:e.model.rawColor"),x=Fl.mouse(i)[0];qk.loneHover({trace:a,x:v-s.left+l.left,y:_-s.top+l.top,text:L,color:e.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:b,idealAlign:x1&&u.displayInd===l.dimensions.length-1?(h=o.left,d="left"):(h=o.left+o.width,d="right");var v=s.model.count,_=s.model.categoryLabel,b=v/s.parcatsViewModel.model.count,p={countLabel:v,categoryLabel:_,probabilityLabel:b.toFixed(3)},k=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&k.push(["Count:",p.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&k.push(["P("+p.categoryLabel+"):",p.probabilityLabel].join(" "));var E=k.join("
");return{trace:c,x:n*(h-t.left),y:i*(f-t.top),text:E,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:d,hovertemplate:c.hovertemplate,hovertemplateLabels:p,eventData:[{data:c._input,fullData:c,count:v,category:_,probability:b}]}}function FHt(e,t,r){var n=[];return Fl.select(r.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each(function(){var i=this;n.push(uVe(e,t,i))}),n}function zHt(e,t,r){e._fullLayout._calcInverseTransform(e);var n=e._fullLayout._invScaleX,i=e._fullLayout._invScaleY,a=r.getBoundingClientRect(),o=Fl.select(r).datum(),s=o.categoryViewModel,l=s.parcatsViewModel,u=l.model.dimensions[s.model.dimensionInd],c=l.trace,f=a.y+a.height/2,h,d;l.dimensions.length>1&&u.displayInd===l.dimensions.length-1?(h=a.left,d="left"):(h=a.left+a.width,d="right");var v=s.model.categoryLabel,_=o.parcatsViewModel.model.count,b=0;o.categoryViewModel.bands.forEach(function(P){P.color===o.color&&(b+=P.count)});var p=s.model.count,k=0;l.pathSelection.each(function(P){P.model.color===o.color&&(k+=P.model.count)});var E=b/_,S=b/k,L=b/p,x={countLabel:b,categoryLabel:v,probabilityLabel:E.toFixed(3)},C=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&C.push(["Count:",x.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&(C.push("P(color \u2229 "+v+"): "+x.probabilityLabel),C.push("P("+v+" | color): "+S.toFixed(3)),C.push("P(color | "+v+"): "+L.toFixed(3)));var M=C.join("
"),g=VK.mostReadable(o.color,["black","white"]);return{trace:c,x:n*(h-t.left),y:i*(f-t.top),text:M,color:o.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:g,fontSize:10,idealAlign:d,hovertemplate:c.hovertemplate,hovertemplateLabels:x,eventData:[{data:c._input,fullData:c,category:v,count:_,probability:E,categorycount:p,colorcount:k,bandcolorcount:b}]}}function OHt(e){if(!e.parcatsViewModel.dragDimension&&e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var t=Fl.mouse(this)[1];if(t<-1)return;var r=e.parcatsViewModel.graphDiv,n=r._fullLayout,i=n._paperdiv.node().getBoundingClientRect(),a=e.parcatsViewModel.hoveron,o=this;if(a==="color"?(DHt(o),YK(o,"plotly_hover",Fl.event)):(RHt(o),ZK(o,"plotly_hover",Fl.event)),e.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var s;a==="category"?s=uVe(r,i,o):a==="color"?s=zHt(r,i,o):a==="dimension"&&(s=FHt(r,i,o)),s&&qk.loneHover(s,{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:r})}}}function qHt(e){var t=e.parcatsViewModel;if(!t.dragDimension&&(jK(t.pathSelection),lVe(t.dimensionSelection.selectAll("g.category")),XK(t.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),qk.loneUnhover(t.graphDiv._fullLayout._hoverlayer.node()),t.pathSelection.sort(GK),t.hoverinfoItems.indexOf("skip")===-1)){var r=e.parcatsViewModel.hoveron,n=this;r==="color"?YK(n,"plotly_unhover",Fl.event):ZK(n,"plotly_unhover",Fl.event)}}function BHt(e){e.parcatsViewModel.arrangement!=="fixed"&&(e.dragDimensionDisplayInd=e.model.displayInd,e.initialDragDimensionDisplayInds=e.parcatsViewModel.model.dimensions.map(function(t){return t.displayInd}),e.dragHasMoved=!1,e.dragCategoryDisplayInd=null,Fl.select(this).selectAll("g.category").select("rect.catrect").each(function(t){var r=Fl.mouse(this)[0],n=Fl.mouse(this)[1];-2<=r&&r<=t.width+2&&-2<=n&&n<=t.height+2&&(e.dragCategoryDisplayInd=t.model.displayInd,e.initialDragCategoryDisplayInds=e.model.categories.map(function(i){return i.displayInd}),t.model.dragY=t.y,yx.raiseToTop(this.parentNode),Fl.select(this.parentNode).selectAll("rect.bandrect").each(function(i){i.yc.y+c.height/2&&(a.model.displayInd=c.model.displayInd,c.model.displayInd=s),e.dragCategoryDisplayInd=a.model.displayInd}if(e.dragCategoryDisplayInd===null||e.parcatsViewModel.arrangement==="freeform"){i.model.dragX=Fl.event.x;var f=e.parcatsViewModel.dimensions[r],h=e.parcatsViewModel.dimensions[n];f!==void 0&&i.model.dragXh.x&&(i.model.displayInd=h.model.displayInd,h.model.displayInd=e.dragDimensionDisplayInd),e.dragDimensionDisplayInd=i.model.displayInd}JK(e.parcatsViewModel),KK(e.parcatsViewModel),hVe(e.parcatsViewModel),fVe(e.parcatsViewModel)}}function UHt(e){if(e.parcatsViewModel.arrangement!=="fixed"&&e.dragDimensionDisplayInd!==null){Fl.select(this).selectAll("text").attr("font-weight","normal");var t={},r=cVe(e.parcatsViewModel),n=e.parcatsViewModel.model.dimensions.map(function(h){return h.displayInd}),i=e.initialDragDimensionDisplayInds.some(function(h,d){return h!==n[d]});i&&n.forEach(function(h,d){var v=e.parcatsViewModel.model.dimensions[d].containerInd;t["dimensions["+v+"].displayindex"]=h});var a=!1;if(e.dragCategoryDisplayInd!==null){var o=e.model.categories.map(function(h){return h.displayInd});if(a=e.initialDragCategoryDisplayInds.some(function(h,d){return h!==o[d]}),a){var s=e.model.categories.slice().sort(function(h,d){return h.displayInd-d.displayInd}),l=s.map(function(h){return h.categoryValue}),u=s.map(function(h){return h.categoryLabel});t["dimensions["+e.model.containerInd+"].categoryarray"]=[l],t["dimensions["+e.model.containerInd+"].ticktext"]=[u],t["dimensions["+e.model.containerInd+"].categoryorder"]="array"}}if(e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1&&!e.dragHasMoved&&e.potentialClickBand&&(e.parcatsViewModel.hoveron==="color"?YK(e.potentialClickBand,"plotly_click",Fl.event.sourceEvent):ZK(e.potentialClickBand,"plotly_click",Fl.event.sourceEvent)),e.model.dragX=null,e.dragCategoryDisplayInd!==null){var c=e.parcatsViewModel.dimensions[e.dragDimensionDisplayInd].categories[e.dragCategoryDisplayInd];c.model.dragY=null,e.dragCategoryDisplayInd=null}e.dragDimensionDisplayInd=null,e.parcatsViewModel.dragDimension=null,e.dragHasMoved=null,e.potentialClickBand=null,JK(e.parcatsViewModel),KK(e.parcatsViewModel);var f=Fl.transition().duration(300).ease("cubic-in-out");f.each(function(){hVe(e.parcatsViewModel,!0),fVe(e.parcatsViewModel,!0)}).each("end",function(){(i||a)&&SHt.restyle(e.parcatsViewModel.graphDiv,t,[r])})}}function cVe(e){for(var t,r=e.graphDiv._fullData,n=0;n=0;l--)u+="C"+o[l]+","+(t[l+1]+n)+" "+a[l]+","+(t[l]+n)+" "+(e[l]+r[l])+","+(t[l]+n),u+="l-"+r[l]+",0 ";return u+="Z",u}function KK(e){var t=e.dimensions,r=e.model,n=t.map(function(O){return O.categories.map(function(V){return V.y})}),i=e.model.dimensions.map(function(O){return O.categories.map(function(V){return V.displayInd})}),a=e.model.dimensions.map(function(O){return O.displayInd}),o=e.dimensions.map(function(O){return O.model.dimensionInd}),s=t.map(function(O){return O.x}),l=t.map(function(O){return O.width}),u=[];for(var c in r.paths)r.paths.hasOwnProperty(c)&&u.push(r.paths[c]);function f(O){var V=O.categoryInds.map(function(Z,j){return i[j][Z]}),G=o.map(function(Z){return V[Z]});return G}u.sort(function(O,V){var G=f(O),Z=f(V);return e.sortpaths==="backward"&&(G.reverse(),Z.reverse()),G.push(O.valueInds[0]),Z.push(V.valueInds[0]),e.bundlecolors&&(G.unshift(O.rawColor),Z.unshift(V.rawColor)),GZ?1:0});for(var h=new Array(u.length),d=t[0].model.count,v=t[0].categories.map(function(O){return O.height}).reduce(function(O,V){return O+V}),_=0;_0?p=v*(b.count/d):p=0;for(var k=new Array(n.length),E=0;E1?o=(e.width-2*r-n)/(i-1):o=0,s=r,l=s+o*a;var u=[],c=e.model.maxCats,f=t.categories.length,h=8,d=t.count,v=e.height-h*(c-1),_,b,p,k,E,S=(c-f)*h/2,L=t.categories.map(function(x){return{displayInd:x.displayInd,categoryInd:x.categoryInd}});for(L.sort(function(x,C){return x.displayInd-C.displayInd}),E=0;E0?_=b.count/d*v:_=0,p={key:b.valueInds[0],model:b,width:n,height:_,y:b.dragY!==null?b.dragY:S,bands:[],parcatsViewModel:e},S=S+_+h,u.push(p);return{key:t.dimensionInd,x:t.dragX!==null?t.dragX:l,y:0,width:n,model:t,categories:u,parcatsViewModel:e,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}});var $K=ye((ixr,pVe)=>{"use strict";var HHt=vVe();pVe.exports=function(t,r,n,i){var a=t._fullLayout,o=a._paper,s=a._size;HHt(t,o,r,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},n,i)}});var mVe=ye(jz=>{"use strict";var jHt=Id().getModuleCalcData,WHt=$K(),gVe="parcats";jz.name=gVe;jz.plot=function(e,t,r,n){var i=jHt(e.calcdata,gVe);if(i.length){var a=i[0];WHt(e,a,r,n)}};jz.clean=function(e,t,r,n){var i=n._has&&n._has("parcats"),a=t._has&&t._has("parcats");i&&!a&&n._paperdiv.selectAll(".parcats").remove()}});var _Ve=ye((axr,yVe)=>{"use strict";yVe.exports={attributes:UK(),supplyDefaults:iVe(),calc:aVe(),plot:$K(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:mVe(),categories:["noOpacity"],meta:{}}});var bVe=ye((oxr,xVe)=>{"use strict";xVe.exports=_Ve()});var c1=ye((sxr,kVe)=>{"use strict";var XHt=Z1(),wVe="1.13.4",MVe='\xA9 OpenStreetMap contributors',TVe=['\xA9 Carto',MVe].join(" "),AVe=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under ODbL'].join(" "),ZHt=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under CC BY SA'].join(" "),EVe={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:MVe,tiles:["https://a.tile.openstreetmap.org/{z}/{x}/{y}.png","https://b.tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:TVe,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:TVe,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:AVe,tiles:["https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:AVe,tiles:["https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:ZHt,tiles:["https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"}},SVe=XHt(EVe);kVe.exports={requiredVersion:wVe,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:EVe,styleValuesNonMapbox:SVe,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install @plotly/mapbox-gl@"+wVe+"."].join(` `),noAccessTokenErrorMsg:["Missing Mapbox access token.","Mapbox trace type require a Mapbox access token to be registered.","For example:"," Plotly.newPlot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });","More info here: https://www.mapbox.com/help/define-access-token/"].join(` -`),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",AVe.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join(` +`),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",SVe.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join(` `),multipleTokensErrorMsg:["Set multiple mapbox access token across different mapbox subplot,","using first token found as mapbox-gl does not allow multipleaccess tokens on the same page."].join(` -`),mapOnErrorMsg:"Mapbox error.",mapboxLogo:{path0:"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z",path1:"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z",path2:"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z",polygon:"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34"},styleRules:{map:"overflow:hidden;position:relative;","missing-css":"display:none;",canary:"background-color:salmon;","ctrl-bottom-left":"position: absolute; pointer-events: none; z-index: 2; bottom: 0; left: 0;","ctrl-bottom-right":"position: absolute; pointer-events: none; z-index: 2; right: 0; bottom: 0;",ctrl:"clear: both; pointer-events: auto; transform: translate(0, 0);","ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner":"display: none;","ctrl-attrib.mapboxgl-compact:hover .mapboxgl-ctrl-attrib-inner":"display: block; margin-top:2px","ctrl-attrib.mapboxgl-compact:hover":"padding: 2px 24px 2px 4px; visibility: visible; margin-top: 6px;","ctrl-attrib.mapboxgl-compact::after":`content: ""; cursor: pointer; position: absolute; background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"%3E %3Cpath fill="%23333333" fill-rule="evenodd" d="M4,10a6,6 0 1,0 12,0a6,6 0 1,0 -12,0 M9,7a1,1 0 1,0 2,0a1,1 0 1,0 -2,0 M9,10a1,1 0 1,1 2,0l0,3a1,1 0 1,1 -2,0"/%3E %3C/svg%3E'); background-color: rgba(255, 255, 255, 0.5); width: 24px; height: 24px; box-sizing: border-box; border-radius: 12px;`,"ctrl-attrib.mapboxgl-compact":"min-height: 20px; padding: 0; margin: 10px; position: relative; background-color: #fff; border-radius: 3px 12px 12px 3px;","ctrl-bottom-right > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":`display:block; width: 21px; height: 21px; background-image: url('data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E')`}}});var Nk=ye((lxr,PVe)=>{"use strict";var kVe=Dr(),CVe=ka().defaultLine,YHt=Cc().attributes,KHt=ec(),JHt=pf().textposition,$Ht=mc().overrideAll,QHt=vl().templatedArray,$K=c1(),LVe=KHt({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});LVe.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var ejt=PVe.exports=$Ht({_arrayAttrRegexps:[kVe.counterRegex("mapbox",".layers",!0)],domain:YHt({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:$K.styleValuesMapbox.concat($K.styleValuesNonMapbox),dflt:$K.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:QHt("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:CVe},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:CVe}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:LVe,textposition:kVe.extendFlat({},JHt,{arrayOk:!1})}})},"plot","from-root");ejt.uirevision={valType:"any",editType:"none"}});var jz=ye((uxr,FVe)=>{"use strict";var{hovertemplateAttrs:tjt,texttemplateAttrs:rjt,templatefallbackAttrs:IVe}=Ll(),ijt=kg(),Uk=H2(),w5=pf(),RVe=Nk(),njt=Gl(),ajt=Tu(),tw=Ao().extendFlat,ojt=mc().overrideAll,sjt=Nk(),DVe=Uk.line,T5=Uk.marker;FVe.exports=ojt({lon:Uk.lon,lat:Uk.lat,cluster:{enabled:{valType:"boolean"},maxzoom:tw({},sjt.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:tw({},T5.opacity,{dflt:1})},mode:tw({},w5.mode,{dflt:"markers"}),text:tw({},w5.text,{}),texttemplate:rjt({editType:"plot"},{keys:["lat","lon","text"]}),texttemplatefallback:IVe({editType:"plot"}),hovertext:tw({},w5.hovertext,{}),line:{color:DVe.color,width:DVe.width},connectgaps:w5.connectgaps,marker:tw({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:T5.opacity,size:T5.size,sizeref:T5.sizeref,sizemin:T5.sizemin,sizemode:T5.sizemode},ajt("marker")),fill:Uk.fill,fillcolor:ijt(),textfont:RVe.layers.symbol.textfont,textposition:RVe.layers.symbol.textposition,below:{valType:"string"},selected:{marker:w5.selected.marker},unselected:{marker:w5.unselected.marker},hoverinfo:tw({},njt.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:tjt(),hovertemplatefallback:IVe()},"calc","nested")});var QK=ye((cxr,zVe)=>{"use strict";var ljt=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];zVe.exports={isSupportedFont:function(e){return ljt.indexOf(e)!==-1}}});var BVe=ye((fxr,qVe)=>{"use strict";var Vk=Dr(),eJ=Ru(),ujt=$p(),cjt=R0(),fjt=D0(),hjt=Ig(),OVe=jz(),djt=QK().isSupportedFont;qVe.exports=function(t,r,n,i){function a(p,k){return Vk.coerce(t,r,OVe,p,k)}function o(p,k){return Vk.coerce2(t,r,OVe,p,k)}var s=vjt(t,r,a);if(!s){r.visible=!1;return}if(a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),a("below"),eJ.hasMarkers(r)){ujt(t,r,n,i,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var l=r.marker;l.symbol!=="circle"&&(Vk.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),Vk.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}eJ.hasLines(r)&&(cjt(t,r,n,i,a,{noDash:!0}),a("connectgaps"));var u=o("cluster.maxzoom"),c=o("cluster.step"),f=o("cluster.color",r.marker&&r.marker.color||n),h=o("cluster.size"),d=o("cluster.opacity"),v=u!==!1||c!==!1||f!==!1||h!==!1||d!==!1,_=a("cluster.enabled",v);if(_||eJ.hasText(r)){var b=i.font.family;fjt(t,r,i,a,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:djt(b)?b:"Open Sans Regular",weight:i.font.weight,style:i.font.style,size:i.font.size,color:i.font.color}})}a("fill"),r.fill!=="none"&&hjt(t,r,n,a),Vk.coerceSelectionMarkerOpacity(r,a)};function vjt(e,t,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return t._length=a,a}});var tJ=ye((hxr,UVe)=>{"use strict";var NVe=ho();UVe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=NVe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=NVe.tickText(o,o.c2l(s[1]),!0).text,i}});var rJ=ye((dxr,GVe)=>{"use strict";var VVe=Dr();GVe.exports=function(t,r){var n=t.split(" "),i=n[0],a=n[1],o=VVe.isArrayOrTypedArray(r)?VVe.mean(r):r,s=.5+o/100,l=1.5+o/100,u=["",""],c=[0,0];switch(i){case"top":u[0]="top",c[1]=-l;break;case"bottom":u[0]="bottom",c[1]=l;break}switch(a){case"left":u[1]="right",c[0]=-s;break;case"right":u[1]="left",c[0]=s;break}var f;return u[0]&&u[1]?f=u.join("-"):u[0]?f=u[0]:u[1]?f=u[1]:f="center",{anchor:f,offset:c}}});var YVe=ye((vxr,ZVe)=>{"use strict";var WVe=Eo(),av=Dr(),pjt=fs().BADNUM,Xz=tx(),HVe=tc(),gjt=So(),mjt=E3(),Zz=Ru(),yjt=QK().isSupportedFont,_jt=rJ(),xjt=ip().appendArrayPointValue,bjt=ru().NEWLINES,wjt=ru().BR_TAG_ALL;ZVe.exports=function(t,r){var n=r[0].trace,i=n.visible===!0&&n._length!==0,a=n.fill!=="none",o=Zz.hasLines(n),s=Zz.hasMarkers(n),l=Zz.hasText(n),u=s&&n.marker.symbol==="circle",c=s&&n.marker.symbol!=="circle",f=n.cluster&&n.cluster.enabled,h=Wz("fill"),d=Wz("line"),v=Wz("circle"),_=Wz("symbol"),b={fill:h,line:d,circle:v,symbol:_};if(!i)return b;var p;if((a||o)&&(p=Xz.calcTraceToLineCoords(r)),a&&(h.geojson=Xz.makePolygon(p),h.layout.visibility="visible",av.extendFlat(h.paint,{"fill-color":n.fillcolor})),o&&(d.geojson=Xz.makeLine(p),d.layout.visibility="visible",av.extendFlat(d.paint,{"line-width":n.line.width,"line-color":n.line.color,"line-opacity":n.opacity})),u){var k=Tjt(r);v.geojson=k.geojson,v.layout.visibility="visible",f&&(v.filter=["!",["has","point_count"]],b.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":nJ(n.cluster.color,n.cluster.step),"circle-radius":nJ(n.cluster.size,n.cluster.step),"circle-opacity":nJ(n.cluster.opacity,n.cluster.step)}},b.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":jVe(n),"text-size":12}}),av.extendFlat(v.paint,{"circle-color":k.mcc,"circle-radius":k.mrc,"circle-opacity":k.mo})}if(u&&f&&(v.filter=["!",["has","point_count"]]),(c||l)&&(_.geojson=Ajt(r,t),av.extendFlat(_.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),c&&(av.extendFlat(_.layout,{"icon-size":n.marker.size/10}),"angle"in n.marker&&n.marker.angle!=="auto"&&av.extendFlat(_.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),_.layout["icon-allow-overlap"]=n.marker.allowoverlap,av.extendFlat(_.paint,{"icon-opacity":n.opacity*n.marker.opacity,"icon-color":n.marker.color})),l)){var E=(n.marker||{}).size,S=_jt(n.textposition,E);av.extendFlat(_.layout,{"text-size":n.textfont.size,"text-anchor":S.anchor,"text-offset":S.offset,"text-font":jVe(n)}),av.extendFlat(_.paint,{"text-color":n.textfont.color,"text-opacity":n.opacity})}return b};function Wz(e){return{type:e,geojson:Xz.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function Tjt(e){var t=e[0].trace,r=t.marker,n=t.selectedpoints,i=av.isArrayOrTypedArray(r.color),a=av.isArrayOrTypedArray(r.size),o=av.isArrayOrTypedArray(r.opacity),s;function l(E){return t.opacity*E}function u(E){return E/2}var c;i&&(HVe.hasColorscale(t,"marker")?c=HVe.makeColorScaleFuncFromTrace(r):c=av.identity);var f;a&&(f=mjt(t));var h;o&&(h=function(E){var S=WVe(E)?+av.constrain(E,0,1):0;return l(S)});var d=[];for(s=0;s850?s+=" Black":i>750?s+=" Extra Bold":i>650?s+=" Bold":i>550?s+=" Semi Bold":i>450?s+=" Medium":i>350?s+=" Regular":i>250?s+=" Light":i>150?s+=" Extra Light":s+=" Thin"):a.slice(0,2).join(" ")==="Open Sans"?(s="Open Sans",i>750?s+=" Extrabold":i>650?s+=" Bold":i>550?s+=" Semibold":i>350?s+=" Regular":s+=" Light"):a.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(s="Klokantech Noto Sans",a[3]==="CJK"&&(s+=" CJK"),s+=i>500?" Bold":" Regular")),o&&(s+=" Italic"),s==="Open Sans Regular Italic"?s="Open Sans Italic":s==="Open Sans Regular Bold"?s="Open Sans Bold":s==="Open Sans Regular Bold Italic"?s="Open Sans Bold Italic":s==="Klokantech Noto Sans Regular Italic"&&(s="Klokantech Noto Sans Italic"),yjt(s)||(s=r);var l=s.split(", ");return l}});var QVe=ye((pxr,$Ve)=>{"use strict";var Sjt=Dr(),KVe=YVe(),A5=c1().traceLayerPrefix,rg={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function JVe(e,t,r,n){this.type="scattermapbox",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:A5+t+"-fill",line:A5+t+"-line",circle:A5+t+"-circle",symbol:A5+t+"-symbol",cluster:A5+t+"-cluster",clusterCount:A5+t+"-cluster-count"},this.below=null}var Gk=JVe.prototype;Gk.addSource=function(e,t,r){var n={type:"geojson",data:t.geojson};r&&r.enabled&&Sjt.extendFlat(n,{cluster:!0,clusterMaxZoom:r.maxzoom});var i=this.subplot.map.getSource(this.sourceIds[e]);i?i.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],n)};Gk.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};Gk.addLayer=function(e,t,r){var n={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(n.filter=t.filter);for(var i=this.layerIds[e],a,o=this.subplot.getMapLayers(),s=0;s=0;L--){var x=S[L];i.removeLayer(u.layerIds[x])}E||i.removeSource(u.sourceIds.circle)}function h(E){for(var S=rg.nonCluster,L=0;L=0;L--){var x=S[L];i.removeLayer(u.layerIds[x]),E||i.removeSource(u.sourceIds[x])}}function v(E){l?f(E):d(E)}function _(E){s?c(E):h(E)}function b(){for(var E=s?rg.cluster:rg.nonCluster,S=0;S=0;n--){var i=r[n];t.removeLayer(this.layerIds[i]),t.removeSource(this.sourceIds[i])}};$Ve.exports=function(t,r){var n=r[0].trace,i=n.cluster&&n.cluster.enabled,a=n.visible!==!0,o=new JVe(t,n.uid,i,a),s=KVe(t.gd,r),l=o.below=t.belowLookup["trace-"+n.uid],u,c,f;if(i)for(o.addSource("circle",s.circle,n.cluster),u=0;u{"use strict";var Mjt=vf(),aJ=Dr(),Ejt=uT(),kjt=aJ.fillText,Cjt=fs().BADNUM,Ljt=c1().traceLayerPrefix;function Pjt(e,t,r){var n=e.cd,i=n[0].trace,a=e.xa,o=e.ya,s=e.subplot,l=[],u=Ljt+i.uid+"-circle",c=i.cluster&&i.cluster.enabled;if(c){var f=s.map.queryRenderedFeatures(null,{layers:[u]});l=f.map(function(M){return M.id})}var h=t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360),d=h*360,v=t-d;function _(M){var g=M.lonlat;if(g[0]===Cjt||c&&l.indexOf(M.i+1)===-1)return 1/0;var P=aJ.modHalf(g[0],360),T=g[1],z=s.project([P,T]),O=z.x-a.c2p([v,T]),V=z.y-o.c2p([P,r]),G=Math.max(3,M.mrc||0);return Math.max(Math.sqrt(O*O+V*V)-G,1-3/G)}if(Mjt.getClosest(n,_,e),e.index!==!1){var b=n[e.index],p=b.lonlat,k=[aJ.modHalf(p[0],360)+d,p[1]],E=a.c2p(k),S=o.c2p(k),L=b.mrc||1;e.x0=E-L,e.x1=E+L,e.y0=S-L,e.y1=S+L;var x={};x[i.subplot]={_subplot:s};var C=i._module.formatLabels(b,i,x);return e.lonLabel=C.lonLabel,e.latLabel=C.latLabel,e.color=Ejt(i,b),e.extraText=eGe(i,b,n[0].t.labels),e.hovertemplate=i.hovertemplate,[e]}}function eGe(e,t,r){if(e.hovertemplate)return;var n=t.hi||e.hoverinfo,i=n.split("+"),a=i.indexOf("all")!==-1,o=i.indexOf("lon")!==-1,s=i.indexOf("lat")!==-1,l=t.lonlat,u=[];function c(f){return f+"\xB0"}return a||o&&s?u.push("("+c(l[1])+", "+c(l[0])+")"):o?u.push(r.lon+c(l[0])):s&&u.push(r.lat+c(l[1])),(a||i.indexOf("text")!==-1)&&kjt(t,e,u),u.join("
")}tGe.exports={hoverPoints:Pjt,getExtraText:eGe}});var iGe=ye((mxr,rGe)=>{"use strict";rGe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var aGe=ye((yxr,nGe)=>{"use strict";var Ijt=Dr(),Rjt=Ru(),Djt=fs().BADNUM;nGe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l;if(!Rjt.hasMarkers(s))return[];if(r===!1)for(l=0;l{(function(e,t){typeof oJ=="object"&&typeof sJ!="undefined"?sJ.exports=t():(e=e||self,e.mapboxgl=t())})(oJ,function(){"use strict";var e,t,r;function n(i,a){if(!e)e=a;else if(!t)t=a;else{var o="var sharedChunk = {}; ("+e+")(sharedChunk); ("+t+")(sharedChunk);",s={};e(s),r=a(s),typeof window!="undefined"&&(r.workerUrl=window.URL.createObjectURL(new Blob([o],{type:"text/javascript"})))}}return n(["exports"],function(i){"use strict";function a(m,y){return y={exports:{}},m(y,y.exports),y.exports}var o="1.13.4",s=l;function l(m,y,I,U){this.cx=3*m,this.bx=3*(I-m)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*y,this.by=3*(U-y)-this.cy,this.ay=1-this.cy-this.by,this.p1x=m,this.p1y=U,this.p2x=I,this.p2y=U}l.prototype.sampleCurveX=function(m){return((this.ax*m+this.bx)*m+this.cx)*m},l.prototype.sampleCurveY=function(m){return((this.ay*m+this.by)*m+this.cy)*m},l.prototype.sampleCurveDerivativeX=function(m){return(3*this.ax*m+2*this.bx)*m+this.cx},l.prototype.solveCurveX=function(m,y){typeof y=="undefined"&&(y=1e-6);var I,U,$,ae,he;for($=m,he=0;he<8;he++){if(ae=this.sampleCurveX($)-m,Math.abs(ae)U)return U;for(;Iae?I=$:U=$,$=(U-I)*.5+I}return $},l.prototype.solve=function(m,y){return this.sampleCurveY(this.solveCurveX(m,y))};var u=c;function c(m,y){this.x=m,this.y=y}c.prototype={clone:function(){return new c(this.x,this.y)},add:function(m){return this.clone()._add(m)},sub:function(m){return this.clone()._sub(m)},multByPoint:function(m){return this.clone()._multByPoint(m)},divByPoint:function(m){return this.clone()._divByPoint(m)},mult:function(m){return this.clone()._mult(m)},div:function(m){return this.clone()._div(m)},rotate:function(m){return this.clone()._rotate(m)},rotateAround:function(m,y){return this.clone()._rotateAround(m,y)},matMult:function(m){return this.clone()._matMult(m)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(m){return this.x===m.x&&this.y===m.y},dist:function(m){return Math.sqrt(this.distSqr(m))},distSqr:function(m){var y=m.x-this.x,I=m.y-this.y;return y*y+I*I},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(m){return Math.atan2(this.y-m.y,this.x-m.x)},angleWith:function(m){return this.angleWithSep(m.x,m.y)},angleWithSep:function(m,y){return Math.atan2(this.x*y-this.y*m,this.x*m+this.y*y)},_matMult:function(m){var y=m[0]*this.x+m[1]*this.y,I=m[2]*this.x+m[3]*this.y;return this.x=y,this.y=I,this},_add:function(m){return this.x+=m.x,this.y+=m.y,this},_sub:function(m){return this.x-=m.x,this.y-=m.y,this},_mult:function(m){return this.x*=m,this.y*=m,this},_div:function(m){return this.x/=m,this.y/=m,this},_multByPoint:function(m){return this.x*=m.x,this.y*=m.y,this},_divByPoint:function(m){return this.x/=m.x,this.y/=m.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var m=this.y;return this.y=this.x,this.x=-m,this},_rotate:function(m){var y=Math.cos(m),I=Math.sin(m),U=y*this.x-I*this.y,$=I*this.x+y*this.y;return this.x=U,this.y=$,this},_rotateAround:function(m,y){var I=Math.cos(m),U=Math.sin(m),$=y.x+I*(this.x-y.x)-U*(this.y-y.y),ae=y.y+U*(this.x-y.x)+I*(this.y-y.y);return this.x=$,this.y=ae,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},c.convert=function(m){return m instanceof c?m:Array.isArray(m)?new c(m[0],m[1]):m};var f=typeof self!="undefined"?self:{};function h(m,y){if(Array.isArray(m)){if(!Array.isArray(y)||m.length!==y.length)return!1;for(var I=0;I=1)return 1;var y=m*m,I=y*m;return 4*(m<.5?I:3*(m-y)+I-.75)}function _(m,y,I,U){var $=new s(m,y,I,U);return function(ae){return $.solve(ae)}}var b=_(.25,.1,.25,1);function p(m,y,I){return Math.min(I,Math.max(y,m))}function k(m,y,I){var U=I-y,$=((m-y)%U+U)%U+y;return $===y?I:$}function E(m,y,I){if(!m.length)return I(null,[]);var U=m.length,$=new Array(m.length),ae=null;m.forEach(function(he,Oe){y(he,function(rt,gt){rt&&(ae=rt),$[Oe]=gt,--U===0&&I(ae,$)})})}function S(m){var y=[];for(var I in m)y.push(m[I]);return y}function L(m,y){var I=[];for(var U in m)U in y||I.push(U);return I}function x(m){for(var y=[],I=arguments.length-1;I-- >0;)y[I]=arguments[I+1];for(var U=0,$=y;U<$.length;U+=1){var ae=$[U];for(var he in ae)m[he]=ae[he]}return m}function C(m,y){for(var I={},U=0;U>y/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,m)}return m()}function T(m){return m<=1?1:Math.pow(2,Math.ceil(Math.log(m)/Math.LN2))}function z(m){return m?/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(m):!1}function O(m,y){m.forEach(function(I){y[I]&&(y[I]=y[I].bind(y))})}function V(m,y){return m.indexOf(y,m.length-y.length)!==-1}function G(m,y,I){var U={};for(var $ in m)U[$]=y.call(I||this,m[$],$,m);return U}function Z(m,y,I){var U={};for(var $ in m)y.call(I||this,m[$],$,m)&&(U[$]=m[$]);return U}function H(m){return Array.isArray(m)?m.map(H):typeof m=="object"&&m?G(m,H):m}function N(m,y){for(var I=0;I=0)return!0;return!1}var j={};function re(m){j[m]||(typeof console!="undefined"&&console.warn(m),j[m]=!0)}function oe(m,y,I){return(I.y-m.y)*(y.x-m.x)>(y.y-m.y)*(I.x-m.x)}function _e(m){for(var y=0,I=0,U=m.length,$=U-1,ae=void 0,he=void 0;I@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,I={};if(m.replace(y,function($,ae,he,Oe){var rt=he||Oe;return I[ae]=rt?rt.toLowerCase():!0,""}),I["max-age"]){var U=parseInt(I["max-age"],10);isNaN(U)?delete I["max-age"]:I["max-age"]=U}return I}var ie=null;function Se(m){if(ie==null){var y=m.navigator?m.navigator.userAgent:null;ie=!!m.safari||!!(y&&(/\b(iPad|iPhone|iPod)\b/.test(y)||y.match("Safari")&&!y.match("Chrome")))}return ie}function Le(m){try{var y=f[m];return y.setItem("_mapbox_test_",1),y.removeItem("_mapbox_test_"),!0}catch(I){return!1}}function Ae(m){return f.btoa(encodeURIComponent(m).replace(/%([0-9A-F]{2})/g,function(y,I){return String.fromCharCode(+("0x"+I))}))}function Fe(m){return decodeURIComponent(f.atob(m).split("").map(function(y){return"%"+("00"+y.charCodeAt(0).toString(16)).slice(-2)}).join(""))}var Pe=f.performance&&f.performance.now?f.performance.now.bind(f.performance):Date.now.bind(Date),ge=f.requestAnimationFrame||f.mozRequestAnimationFrame||f.webkitRequestAnimationFrame||f.msRequestAnimationFrame,Re=f.cancelAnimationFrame||f.mozCancelAnimationFrame||f.webkitCancelAnimationFrame||f.msCancelAnimationFrame,ce,Ze,ut={now:Pe,frame:function(y){var I=ge(y);return{cancel:function(){return Re(I)}}},getImageData:function(y,I){I===void 0&&(I=0);var U=f.document.createElement("canvas"),$=U.getContext("2d");if(!$)throw new Error("failed to create canvas 2d context");return U.width=y.width,U.height=y.height,$.drawImage(y,0,0,y.width,y.height),$.getImageData(-I,-I,y.width+2*I,y.height+2*I)},resolveURL:function(y){return ce||(ce=f.document.createElement("a")),ce.href=y,ce.href},hardwareConcurrency:f.navigator&&f.navigator.hardwareConcurrency||4,get devicePixelRatio(){return f.devicePixelRatio},get prefersReducedMotion(){return f.matchMedia?(Ze==null&&(Ze=f.matchMedia("(prefers-reduced-motion: reduce)")),Ze.matches):!1}},pt={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},Zt={supported:!1,testSupport:Jt},st,lt=!1,Gt,Nt=!1;f.document&&(Gt=f.document.createElement("img"),Gt.onload=function(){st&&sr(st),st=null,Nt=!0},Gt.onerror=function(){lt=!0,st=null},Gt.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");function Jt(m){lt||!Gt||(Nt?sr(m):st=m)}function sr(m){var y=m.createTexture();m.bindTexture(m.TEXTURE_2D,y);try{if(m.texImage2D(m.TEXTURE_2D,0,m.RGBA,m.RGBA,m.UNSIGNED_BYTE,Gt),m.isContextLost())return;Zt.supported=!0}catch(I){}m.deleteTexture(y),lt=!0}var wr="01";function cr(){for(var m="1",y="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",I="",U=0;U<10;U++)I+=y[Math.floor(Math.random()*62)];var $=12*60*60*1e3,ae=[m,wr,I].join(""),he=Date.now()+$;return{token:ae,tokenExpiresAt:he}}var $e=function(y,I){this._transformRequestFn=y,this._customAccessToken=I,this._createSkuToken()};$e.prototype._createSkuToken=function(){var y=cr();this._skuToken=y.token,this._skuTokenExpiresAt=y.tokenExpiresAt},$e.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},$e.prototype.transformRequest=function(y,I){return this._transformRequestFn?this._transformRequestFn(y,I)||{url:y}:{url:y}},$e.prototype.normalizeStyleURL=function(y,I){if(!St(y))return y;var U=er(y);return U.path="/styles/v1"+U.path,this._makeAPIURL(U,this._customAccessToken||I)},$e.prototype.normalizeGlyphsURL=function(y,I){if(!St(y))return y;var U=er(y);return U.path="/fonts/v1"+U.path,this._makeAPIURL(U,this._customAccessToken||I)},$e.prototype.normalizeSourceURL=function(y,I){if(!St(y))return y;var U=er(y);return U.path="/v4/"+U.authority+".json",U.params.push("secure"),this._makeAPIURL(U,this._customAccessToken||I)},$e.prototype.normalizeSpriteURL=function(y,I,U,$){var ae=er(y);return St(y)?(ae.path="/styles/v1"+ae.path+"/sprite"+I+U,this._makeAPIURL(ae,this._customAccessToken||$)):(ae.path+=""+I+U,lr(ae))},$e.prototype.normalizeTileURL=function(y,I){if(this._isSkuTokenExpired()&&this._createSkuToken(),y&&!St(y))return y;var U=er(y),$=/(\.(png|jpg)\d*)(?=$)/,ae=/^.+\/v4\//,he=ut.devicePixelRatio>=2||I===512?"@2x":"",Oe=Zt.supported?".webp":"$1";U.path=U.path.replace($,""+he+Oe),U.path=U.path.replace(ae,"/"),U.path="/v4"+U.path;var rt=this._customAccessToken||It(U.params)||pt.ACCESS_TOKEN;return pt.REQUIRE_ACCESS_TOKEN&&rt&&this._skuToken&&U.params.push("sku="+this._skuToken),this._makeAPIURL(U,rt)},$e.prototype.canonicalizeTileURL=function(y,I){var U="/v4/",$=/\.[\w]+$/,ae=er(y);if(!ae.path.match(/(^\/v4\/)/)||!ae.path.match($))return y;var he="mapbox://tiles/";he+=ae.path.replace(U,"");var Oe=ae.params;return I&&(Oe=Oe.filter(function(rt){return!rt.match(/^access_token=/)})),Oe.length&&(he+="?"+Oe.join("&")),he},$e.prototype.canonicalizeTileset=function(y,I){for(var U=I?St(I):!1,$=[],ae=0,he=y.tiles||[];ae=0&&y.params.splice(ae,1)}if($.path!=="/"&&(y.path=""+$.path+y.path),!pt.REQUIRE_ACCESS_TOKEN)return lr(y);if(I=I||pt.ACCESS_TOKEN,!I)throw new Error("An API access token is required to use Mapbox GL. "+U);if(I[0]==="s")throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+U);return y.params=y.params.filter(function(he){return he.indexOf("access_token")===-1}),y.params.push("access_token="+I),lr(y)};function St(m){return m.indexOf("mapbox:")===0}var Qt=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function Vt(m){return Qt.test(m)}function _t(m){return m.indexOf("sku=")>0&&Vt(m)}function It(m){for(var y=0,I=m;y=1&&f.localStorage.setItem(I,JSON.stringify(this.eventData))}catch($){re("Unable to write to LocalStorage")}},ti.prototype.processRequests=function(y){},ti.prototype.postEvent=function(y,I,U,$){var ae=this;if(pt.EVENTS_URL){var he=er(pt.EVENTS_URL);he.params.push("access_token="+($||pt.ACCESS_TOKEN||""));var Oe={event:this.type,created:new Date(y).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:o,skuId:wr,userId:this.anonId},rt=I?x(Oe,I):Oe,gt={url:lr(he),headers:{"Content-Type":"text/plain"},body:JSON.stringify([rt])};this.pendingRequest=Qr(gt,function(Et){ae.pendingRequest=null,U(Et),ae.saveEventData(),ae.processRequests($)})}},ti.prototype.queueRequest=function(y,I){this.queue.push(y),this.processRequests(I)};var Br=function(m){function y(){m.call(this,"map.load"),this.success={},this.skuToken=""}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.postMapLoadEvent=function(U,$,ae,he){this.skuToken=ae,(pt.EVENTS_URL&&he||pt.ACCESS_TOKEN&&Array.isArray(U)&&U.some(function(Oe){return St(Oe)||Vt(Oe)}))&&this.queueRequest({id:$,timestamp:Date.now()},he)},y.prototype.processRequests=function(U){var $=this;if(!(this.pendingRequest||this.queue.length===0)){var ae=this.queue.shift(),he=ae.id,Oe=ae.timestamp;he&&this.success[he]||(this.anonId||this.fetchEventData(),z(this.anonId)||(this.anonId=P()),this.postEvent(Oe,{skuToken:this.skuToken},function(rt){rt||he&&($.success[he]=!0)},U))}},y}(ti),Vr=function(m){function y(I){m.call(this,"appUserTurnstile"),this._customAccessToken=I}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.postTurnstileEvent=function(U,$){pt.EVENTS_URL&&pt.ACCESS_TOKEN&&Array.isArray(U)&&U.some(function(ae){return St(ae)||Vt(ae)})&&this.queueRequest(Date.now(),$)},y.prototype.processRequests=function(U){var $=this;if(!(this.pendingRequest||this.queue.length===0)){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var ae=Lr(pt.ACCESS_TOKEN),he=ae?ae.u:pt.ACCESS_TOKEN,Oe=he!==this.eventData.tokenU;z(this.anonId)||(this.anonId=P(),Oe=!0);var rt=this.queue.shift();if(this.eventData.lastSuccess){var gt=new Date(this.eventData.lastSuccess),Et=new Date(rt),or=(rt-this.eventData.lastSuccess)/(24*60*60*1e3);Oe=Oe||or>=1||or<-1||gt.getDate()!==Et.getDate()}else Oe=!0;if(!Oe)return this.processRequests();this.postEvent(rt,{"enabled.telemetry":!1},function(_r){_r||($.eventData.lastSuccess=rt,$.eventData.tokenU=he)},U)}},y}(ti),dt=new Vr,Ge=dt.postTurnstileEvent.bind(dt),Je=new Br,je=Je.postMapLoadEvent.bind(Je),tt="mapbox-tiles",xt=500,Ie=50,xe=1e3*60*7,ke;function vt(){f.caches&&!ke&&(ke=f.caches.open(tt))}var ir;function ar(m,y){if(ir===void 0)try{new Response(new ReadableStream),ir=!0}catch(I){ir=!1}ir?y(m.body):m.blob().then(y)}function vr(m,y,I){if(vt(),!!ke){var U={status:y.status,statusText:y.statusText,headers:new f.Headers};y.headers.forEach(function(he,Oe){return U.headers.set(Oe,he)});var $=me(y.headers.get("Cache-Control")||"");if(!$["no-store"]){$["max-age"]&&U.headers.set("Expires",new Date(I+$["max-age"]*1e3).toUTCString());var ae=new Date(U.headers.get("Expires")).getTime()-I;aeDate.now()&&!I["no-cache"]}var di=1/0;function ji(m){di++,di>Ie&&(m.getActor().send("enforceCacheSizeLimit",xt),di=0)}function In(m){vt(),ke&&ke.then(function(y){y.keys().then(function(I){for(var U=0;U=200&&I.status<300||I.status===0)&&I.response!==null){var $=I.response;if(m.type==="json")try{$=JSON.parse(I.response)}catch(ae){return y(ae)}y(null,$,I.getResponseHeader("Cache-Control"),I.getResponseHeader("Expires"))}else y(new la(I.statusText,I.status,m.url))},I.send(m.body),{cancel:function(){return I.abort()}}}var Er=function(m,y){if(!wt(m.url)){if(f.fetch&&f.Request&&f.AbortController&&f.Request.prototype.hasOwnProperty("signal"))return rr(m,y);if(Ce()&&self.worker&&self.worker.actor){var I=!0;return self.worker.actor.send("getResource",m,y,void 0,I)}}return nr(m,y)},Xr=function(m,y){return Er(x(m,{type:"json"}),y)},ri=function(m,y){return Er(x(m,{type:"arrayBuffer"}),y)},Qr=function(m,y){return Er(x(m,{method:"POST"}),y)};function Oi(m){var y=f.document.createElement("a");return y.href=m,y.protocol===f.document.location.protocol&&y.host===f.document.location.host}var $i="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function tn(m,y,I,U){var $=new f.Image,ae=f.URL;$.onload=function(){y(null,$),ae.revokeObjectURL($.src),$.onload=null,f.requestAnimationFrame(function(){$.src=$i})},$.onerror=function(){return y(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var he=new f.Blob([new Uint8Array(m)],{type:"image/png"});$.cacheControl=I,$.expires=U,$.src=m.byteLength?ae.createObjectURL(he):$i}function fn(m,y){var I=new f.Blob([new Uint8Array(m)],{type:"image/png"});f.createImageBitmap(I).then(function(U){y(null,U)}).catch(function(U){y(new Error("Could not load image because of "+U.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}var yn,Sn,Ba=function(){yn=[],Sn=0};Ba();var ua=function(m,y){if(Zt.supported&&(m.headers||(m.headers={}),m.headers.accept="image/webp,*/*"),Sn>=pt.MAX_PARALLEL_IMAGE_REQUESTS){var I={requestParameters:m,callback:y,cancelled:!1,cancel:function(){this.cancelled=!0}};return yn.push(I),I}Sn++;var U=!1,$=function(){if(!U)for(U=!0,Sn--;yn.length&&Sn0||this._oneTimeListeners&&this._oneTimeListeners[y]&&this._oneTimeListeners[y].length>0||this._eventedParent&&this._eventedParent.listens(y)},Wn.prototype.setEventedParent=function(y,I){return this._eventedParent=y,this._eventedParentData=I,this};var Ga=8,vo={version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},jn={"*":{type:"source"}},Mt=["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],kr={type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},Jr={type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},vi={type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},hn={type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},An={type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},Mn={type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},Li={id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},_n=["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],ya={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Jn={"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Ma={"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},_o={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},No={"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},po={"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Lo={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},ko={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Ds={type:"array",value:"*"},Fs={type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},ll={type:"enum",values:{Point:{},LineString:{},Polygon:{}}},ul={type:"array",minimum:0,maximum:24,value:["number","color"],length:2},zl={type:"array",value:"*",minimum:1},us={anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},il=["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],As={"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},cl={"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},Ks={"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},zs={"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Io={"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},ls={"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Zl={"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Su={"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},nc={duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},bs={"*":{type:"string"}},Rn={$version:Ga,$root:vo,sources:jn,source:Mt,source_vector:kr,source_raster:Jr,source_raster_dem:vi,source_geojson:hn,source_video:An,source_image:Mn,layer:Li,layout:_n,layout_background:ya,layout_fill:Jn,layout_circle:Ma,layout_heatmap:_o,"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:No,layout_symbol:po,layout_raster:Lo,layout_hillshade:ko,filter:Ds,filter_operator:Fs,geometry_type:ll,function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:ul,expression:zl,light:us,paint:il,paint_fill:As,"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:cl,paint_circle:Ks,paint_heatmap:zs,paint_symbol:Io,paint_raster:ls,paint_hillshade:Zl,paint_background:Su,transition:nc,"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:bs},_a=function(y,I,U,$){this.message=(y?y+": ":"")+U,$&&(this.identifier=$),I!=null&&I.__line__&&(this.line=I.__line__)};function Vu(m){var y=m.key,I=m.value;return I?[new _a(y,I,"constants have been deprecated as of v8")]:[]}function Ol(m){for(var y=[],I=arguments.length-1;I-- >0;)y[I]=arguments[I+1];for(var U=0,$=y;U<$.length;U+=1){var ae=$[U];for(var he in ae)m[he]=ae[he]}return m}function xo(m){return m instanceof Number||m instanceof String||m instanceof Boolean?m.valueOf():m}function Yl(m){if(Array.isArray(m))return m.map(Yl);if(m instanceof Object&&!(m instanceof Number||m instanceof String||m instanceof Boolean)){var y={};for(var I in m)y[I]=Yl(m[I]);return y}return xo(m)}var Ns=function(m){function y(I,U){m.call(this,U),this.message=U,this.key=I}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y}(Error),Hl=function(y,I){I===void 0&&(I=[]),this.parent=y,this.bindings={};for(var U=0,$=I;U<$.length;U+=1){var ae=$[U],he=ae[0],Oe=ae[1];this.bindings[he]=Oe}};Hl.prototype.concat=function(y){return new Hl(this,y)},Hl.prototype.get=function(y){if(this.bindings[y])return this.bindings[y];if(this.parent)return this.parent.get(y);throw new Error(y+" not found in scope.")},Hl.prototype.has=function(y){return this.bindings[y]?!0:this.parent?this.parent.has(y):!1};var ac={kind:"null"},aa={kind:"number"},Oo={kind:"string"},qo={kind:"boolean"},ql={kind:"color"},Pc={kind:"object"},Do={kind:"value"},rf={kind:"error"},Uf={kind:"collator"},pl={kind:"formatted"},Zc={kind:"resolvedImage"};function Kl(m,y){return{kind:"array",itemType:m,N:y}}function Os(m){if(m.kind==="array"){var y=Os(m.itemType);return typeof m.N=="number"?"array<"+y+", "+m.N+">":m.itemType.kind==="value"?"array":"array<"+y+">"}else return m.kind}var yu=[ac,aa,Oo,qo,ql,pl,Pc,Kl(Do),Zc];function oc(m,y){if(y.kind==="error")return null;if(m.kind==="array"){if(y.kind==="array"&&(y.N===0&&y.itemType.kind==="value"||!oc(m.itemType,y.itemType))&&(typeof m.N!="number"||m.N===y.N))return null}else{if(m.kind===y.kind)return null;if(m.kind==="value")for(var I=0,U=yu;I255?255:gt}function $(gt){return gt<0?0:gt>1?1:gt}function ae(gt){return gt[gt.length-1]==="%"?U(parseFloat(gt)/100*255):U(parseInt(gt))}function he(gt){return gt[gt.length-1]==="%"?$(parseFloat(gt)/100):$(parseFloat(gt))}function Oe(gt,Et,or){return or<0?or+=1:or>1&&(or-=1),or*6<1?gt+(Et-gt)*or*6:or*2<1?Et:or*3<2?gt+(Et-gt)*(2/3-or)*6:gt}function rt(gt){var Et=gt.replace(/ /g,"").toLowerCase();if(Et in I)return I[Et].slice();if(Et[0]==="#"){if(Et.length===4){var or=parseInt(Et.substr(1),16);return or>=0&&or<=4095?[(or&3840)>>4|(or&3840)>>8,or&240|(or&240)>>4,or&15|(or&15)<<4,1]:null}else if(Et.length===7){var or=parseInt(Et.substr(1),16);return or>=0&&or<=16777215?[(or&16711680)>>16,(or&65280)>>8,or&255,1]:null}return null}var _r=Et.indexOf("("),pr=Et.indexOf(")");if(_r!==-1&&pr+1===Et.length){var Fr=Et.substr(0,_r),oi=Et.substr(_r+1,pr-(_r+1)).split(","),Hi=1;switch(Fr){case"rgba":if(oi.length!==4)return null;Hi=he(oi.pop());case"rgb":return oi.length!==3?null:[ae(oi[0]),ae(oi[1]),ae(oi[2]),Hi];case"hsla":if(oi.length!==4)return null;Hi=he(oi.pop());case"hsl":if(oi.length!==3)return null;var Ai=(parseFloat(oi[0])%360+360)%360/360,bn=he(oi[1]),nn=he(oi[2]),xn=nn<=.5?nn*(bn+1):nn+bn-nn*bn,Pn=nn*2-xn;return[U(Oe(Pn,xn,Ai+1/3)*255),U(Oe(Pn,xn,Ai)*255),U(Oe(Pn,xn,Ai-1/3)*255),Hi];default:return null}}return null}try{y.parseCSSColor=rt}catch(gt){}}),Lf=Vh.parseCSSColor,cs=function(y,I,U,$){$===void 0&&($=1),this.r=y,this.g=I,this.b=U,this.a=$};cs.parse=function(y){if(y){if(y instanceof cs)return y;if(typeof y=="string"){var I=Lf(y);if(I)return new cs(I[0]/255*I[3],I[1]/255*I[3],I[2]/255*I[3],I[3])}}},cs.prototype.toString=function(){var y=this.toArray(),I=y[0],U=y[1],$=y[2],ae=y[3];return"rgba("+Math.round(I)+","+Math.round(U)+","+Math.round($)+","+ae+")"},cs.prototype.toArray=function(){var y=this,I=y.r,U=y.g,$=y.b,ae=y.a;return ae===0?[0,0,0,0]:[I*255/ae,U*255/ae,$*255/ae,ae]},cs.black=new cs(0,0,0,1),cs.white=new cs(1,1,1,1),cs.transparent=new cs(0,0,0,0),cs.red=new cs(1,0,0,1);var nf=function(y,I,U){y?this.sensitivity=I?"variant":"case":this.sensitivity=I?"accent":"base",this.locale=U,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};nf.prototype.compare=function(y,I){return this.collator.compare(y,I)},nf.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var Vf=function(y,I,U,$,ae){this.text=y,this.image=I,this.scale=U,this.fontStack=$,this.textColor=ae},Jl=function(y){this.sections=y};Jl.fromString=function(y){return new Jl([new Vf(y,null,null,null,null)])},Jl.prototype.isEmpty=function(){return this.sections.length===0?!0:!this.sections.some(function(y){return y.text.length!==0||y.image&&y.image.name.length!==0})},Jl.factory=function(y){return y instanceof Jl?y:Jl.fromString(y)},Jl.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(y){return y.text}).join("")},Jl.prototype.serialize=function(){for(var y=["format"],I=0,U=this.sections;I=0&&m<=255&&typeof y=="number"&&y>=0&&y<=255&&typeof I=="number"&&I>=0&&I<=255)){var $=typeof U=="number"?[m,y,I,U]:[m,y,I];return"Invalid rgba value ["+$.join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}return typeof U=="undefined"||typeof U=="number"&&U>=0&&U<=1?null:"Invalid rgba value ["+[m,y,I,U].join(", ")+"]: 'a' must be between 0 and 1."}function Fu(m){if(m===null)return!0;if(typeof m=="string")return!0;if(typeof m=="boolean")return!0;if(typeof m=="number")return!0;if(m instanceof cs)return!0;if(m instanceof nf)return!0;if(m instanceof Jl)return!0;if(m instanceof fl)return!0;if(Array.isArray(m)){for(var y=0,I=m;y2){var Oe=y[1];if(typeof Oe!="string"||!(Oe in uc)||Oe==="object")return I.error('The item type argument of "array" must be one of string, number, boolean',1);he=uc[Oe],U++}else he=Do;var rt;if(y.length>3){if(y[2]!==null&&(typeof y[2]!="number"||y[2]<0||y[2]!==Math.floor(y[2])))return I.error('The length argument to "array" must be a positive integer literal',2);rt=y[2],U++}$=Kl(he,rt)}else $=uc[ae];for(var gt=[];U1)&&I.push($)}}return I.concat(this.args.map(function(ae){return ae.serialize()}))};var Gu=function(y){this.type=pl,this.sections=y};Gu.parse=function(y,I){if(y.length<2)return I.error("Expected at least one argument.");var U=y[1];if(!Array.isArray(U)&&typeof U=="object")return I.error("First argument must be an image or text section.");for(var $=[],ae=!1,he=1;he<=y.length-1;++he){var Oe=y[he];if(ae&&typeof Oe=="object"&&!Array.isArray(Oe)){ae=!1;var rt=null;if(Oe["font-scale"]&&(rt=I.parse(Oe["font-scale"],1,aa),!rt))return null;var gt=null;if(Oe["text-font"]&&(gt=I.parse(Oe["text-font"],1,Kl(Oo)),!gt))return null;var Et=null;if(Oe["text-color"]&&(Et=I.parse(Oe["text-color"],1,ql),!Et))return null;var or=$[$.length-1];or.scale=rt,or.font=gt,or.textColor=Et}else{var _r=I.parse(y[he],1,Do);if(!_r)return null;var pr=_r.type.kind;if(pr!=="string"&&pr!=="value"&&pr!=="null"&&pr!=="resolvedImage")return I.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");ae=!0,$.push({content:_r,scale:null,font:null,textColor:null})}}return new Gu($)},Gu.prototype.evaluate=function(y){var I=function(U){var $=U.content.evaluate(y);return Es($)===Zc?new Vf("",$,null,null,null):new Vf(Hs($),null,U.scale?U.scale.evaluate(y):null,U.font?U.font.evaluate(y).join(","):null,U.textColor?U.textColor.evaluate(y):null)};return new Jl(this.sections.map(I))},Gu.prototype.eachChild=function(y){for(var I=0,U=this.sections;I-1),U},qs.prototype.eachChild=function(y){y(this.input)},qs.prototype.outputDefined=function(){return!1},qs.prototype.serialize=function(){return["image",this.input.serialize()]};var ad={"to-boolean":qo,"to-color":ql,"to-number":aa,"to-string":Oo},Po=function(y,I){this.type=y,this.args=I};Po.parse=function(y,I){if(y.length<2)return I.error("Expected at least one argument.");var U=y[0];if((U==="to-boolean"||U==="to-string")&&y.length!==2)return I.error("Expected one argument.");for(var $=ad[U],ae=[],he=1;he4?U="Invalid rbga value "+JSON.stringify(I)+": expected an array containing either three or four numeric values.":U=lc(I[0],I[1],I[2],I[3]),!U))return new cs(I[0]/255,I[1]/255,I[2]/255,I[3])}throw new ps(U||"Could not parse color from value '"+(typeof I=="string"?I:String(JSON.stringify(I)))+"'")}else if(this.type.kind==="number"){for(var rt=null,gt=0,Et=this.args;gt=y[2]||m[1]<=y[1]||m[3]>=y[3])}function wh(m,y){var I=Ic(m[0]),U=yf(m[1]),$=Math.pow(2,y.z);return[Math.round(I*$*bl),Math.round(U*$*bl)]}function Qf(m,y,I){var U=m[0]-y[0],$=m[1]-y[1],ae=m[0]-I[0],he=m[1]-I[1];return U*he-ae*$===0&&U*ae<=0&&$*he<=0}function _f(m,y,I){return y[1]>m[1]!=I[1]>m[1]&&m[0]<(I[0]-y[0])*(m[1]-y[1])/(I[1]-y[1])+y[0]}function Yc(m,y){for(var I=!1,U=0,$=y.length;U<$;U++)for(var ae=y[U],he=0,Oe=ae.length;he0&&or<0||Et<0&&or>0}function Hf(m,y,I,U){var $=[y[0]-m[0],y[1]-m[1]],ae=[U[0]-I[0],U[1]-I[1]];return th(ae,$)===0?!1:!!(ju(m,y,I,U)&&ju(I,U,m,y))}function cc(m,y,I){for(var U=0,$=I;U<$.length;U+=1)for(var ae=$[U],he=0;heI[2]){var $=U*.5,ae=m[0]-I[0]>$?-U:I[0]-m[0]>$?U:0;ae===0&&(ae=m[0]-I[2]>$?-U:I[2]-m[0]>$?U:0),m[0]+=ae}Gf(y,m)}function jf(m){m[0]=m[1]=1/0,m[2]=m[3]=-1/0}function Gh(m,y,I,U){for(var $=Math.pow(2,U.z)*bl,ae=[U.x*bl,U.y*bl],he=[],Oe=0,rt=m;Oe=0)return!1;var I=!0;return m.eachChild(function(U){I&&!Eu(U,y)&&(I=!1)}),I}var Dc=function(y,I){this.type=I.type,this.name=y,this.boundExpression=I};Dc.parse=function(y,I){if(y.length!==2||typeof y[1]!="string")return I.error("'var' expression requires exactly one string literal argument.");var U=y[1];return I.scope.has(U)?new Dc(U,I.scope.get(U)):I.error('Unknown variable "'+U+'". Make sure "'+U+'" has been bound in an enclosing "let" expression before using it.',1)},Dc.prototype.evaluate=function(y){return this.boundExpression.evaluate(y)},Dc.prototype.eachChild=function(){},Dc.prototype.outputDefined=function(){return!1},Dc.prototype.serialize=function(){return["var",this.name]};var ks=function(y,I,U,$,ae){I===void 0&&(I=[]),$===void 0&&($=new Hl),ae===void 0&&(ae=[]),this.registry=y,this.path=I,this.key=I.map(function(he){return"["+he+"]"}).join(""),this.scope=$,this.errors=ae,this.expectedType=U};ks.prototype.parse=function(y,I,U,$,ae){return ae===void 0&&(ae={}),I?this.concat(I,U,$)._parse(y,ae):this._parse(y,ae)},ks.prototype._parse=function(y,I){(y===null||typeof y=="string"||typeof y=="boolean"||typeof y=="number")&&(y=["literal",y]);function U(Et,or,_r){return _r==="assert"?new xl(or,[Et]):_r==="coerce"?new Po(or,[Et]):Et}if(Array.isArray(y)){if(y.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var $=y[0];if(typeof $!="string")return this.error("Expression name must be a string, but found "+typeof $+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var ae=this.registry[$];if(ae){var he=ae.parse(y,this);if(!he)return null;if(this.expectedType){var Oe=this.expectedType,rt=he.type;if((Oe.kind==="string"||Oe.kind==="number"||Oe.kind==="boolean"||Oe.kind==="object"||Oe.kind==="array")&&rt.kind==="value")he=U(he,Oe,I.typeAnnotation||"assert");else if((Oe.kind==="color"||Oe.kind==="formatted"||Oe.kind==="resolvedImage")&&(rt.kind==="value"||rt.kind==="string"))he=U(he,Oe,I.typeAnnotation||"coerce");else if(this.checkSubtype(Oe,rt))return null}if(!(he instanceof Go)&&he.type.kind!=="resolvedImage"&&bc(he)){var gt=new Yo;try{he=new Go(he.type,he.evaluate(gt))}catch(Et){return this.error(Et.message),null}}return he}return this.error('Unknown expression "'+$+'". If you wanted a literal array, use ["literal", [...]].',0)}else return typeof y=="undefined"?this.error("'undefined' value invalid. Use null instead."):typeof y=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof y+" instead.")},ks.prototype.concat=function(y,I,U){var $=typeof y=="number"?this.path.concat(y):this.path,ae=U?this.scope.concat(U):this.scope;return new ks(this.registry,$,I||null,ae,this.errors)},ks.prototype.error=function(y){for(var I=[],U=arguments.length-1;U-- >0;)I[U]=arguments[U+1];var $=""+this.key+I.map(function(ae){return"["+ae+"]"}).join("");this.errors.push(new Ns($,y))},ks.prototype.checkSubtype=function(y,I){var U=oc(y,I);return U&&this.error(U),U};function bc(m){if(m instanceof Dc)return bc(m.boundExpression);if(m instanceof Pa&&m.name==="error")return!1;if(m instanceof Hu)return!1;if(m instanceof Mu)return!1;var y=m instanceof Po||m instanceof xl,I=!0;return m.eachChild(function(U){y?I=I&&bc(U):I=I&&U instanceof Go}),I?ih(m)&&Eu(m,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"]):!1}function hu(m,y){for(var I=m.length-1,U=0,$=I,ae=0,he,Oe;U<=$;)if(ae=Math.floor((U+$)/2),he=m[ae],Oe=m[ae+1],he<=y){if(ae===I||yy)$=ae-1;else throw new ps("Input is not a number.");return 0}var _u=function(y,I,U){this.type=y,this.input=I,this.labels=[],this.outputs=[];for(var $=0,ae=U;$=Oe)return I.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',gt);var or=I.parse(rt,Et,ae);if(!or)return null;ae=ae||or.type,$.push([Oe,or])}return new _u(ae,U,$)},_u.prototype.evaluate=function(y){var I=this.labels,U=this.outputs;if(I.length===1)return U[0].evaluate(y);var $=this.input.evaluate(y);if($<=I[0])return U[0].evaluate(y);var ae=I.length;if($>=I[ae-1])return U[ae-1].evaluate(y);var he=hu(I,$);return U[he].evaluate(y)},_u.prototype.eachChild=function(y){y(this.input);for(var I=0,U=this.outputs;I0&&y.push(this.labels[I]),y.push(this.outputs[I].serialize());return y};function nl(m,y,I){return m*(1-I)+y*I}function nh(m,y,I){return new cs(nl(m.r,y.r,I),nl(m.g,y.g,I),nl(m.b,y.b,I),nl(m.a,y.a,I))}function Ah(m,y,I){return m.map(function(U,$){return nl(U,y[$],I)})}var zu=Object.freeze({__proto__:null,number:nl,color:nh,array:Ah}),Fc=.95047,wc=1,bd=1.08883,xf=4/29,Pf=6/29,Ou=3*Pf*Pf,bf=Pf*Pf*Pf,jl=Math.PI/180,lf=180/Math.PI;function Hh(m){return m>bf?Math.pow(m,1/3):m/Ou+xf}function If(m){return m>Pf?m*m*m:Ou*(m-xf)}function Cs(m){return 255*(m<=.0031308?12.92*m:1.055*Math.pow(m,1/2.4)-.055)}function du(m){return m/=255,m<=.04045?m/12.92:Math.pow((m+.055)/1.055,2.4)}function ku(m){var y=du(m.r),I=du(m.g),U=du(m.b),$=Hh((.4124564*y+.3575761*I+.1804375*U)/Fc),ae=Hh((.2126729*y+.7151522*I+.072175*U)/wc),he=Hh((.0193339*y+.119192*I+.9503041*U)/bd);return{l:116*ae-16,a:500*($-ae),b:200*(ae-he),alpha:m.a}}function Wf(m){var y=(m.l+16)/116,I=isNaN(m.a)?y:y+m.a/500,U=isNaN(m.b)?y:y-m.b/200;return y=wc*If(y),I=Fc*If(I),U=bd*If(U),new cs(Cs(3.2404542*I-1.5371385*y-.4985314*U),Cs(-.969266*I+1.8760108*y+.041556*U),Cs(.0556434*I-.2040259*y+1.0572252*U),m.alpha)}function Us(m,y,I){return{l:nl(m.l,y.l,I),a:nl(m.a,y.a,I),b:nl(m.b,y.b,I),alpha:nl(m.alpha,y.alpha,I)}}function wf(m){var y=ku(m),I=y.l,U=y.a,$=y.b,ae=Math.atan2($,U)*lf;return{h:ae<0?ae+360:ae,c:Math.sqrt(U*U+$*$),l:I,alpha:m.a}}function zc(m){var y=m.h*jl,I=m.c,U=m.l;return Wf({l:U,a:Math.cos(y)*I,b:Math.sin(y)*I,alpha:m.alpha})}function Wu(m,y,I){var U=y-m;return m+I*(U>180||U<-180?U-360*Math.round(U/360):U)}function Rf(m,y,I){return{h:Wu(m.h,y.h,I),c:nl(m.c,y.c,I),l:nl(m.l,y.l,I),alpha:nl(m.alpha,y.alpha,I)}}var Xu={forward:ku,reverse:Wf,interpolate:Us},uf={forward:wf,reverse:zc,interpolate:Rf},Xf=Object.freeze({__proto__:null,lab:Xu,hcl:uf}),Wl=function(y,I,U,$,ae){this.type=y,this.operator=I,this.interpolation=U,this.input=$,this.labels=[],this.outputs=[];for(var he=0,Oe=ae;he1}))return I.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);$={name:"cubic-bezier",controlPoints:rt}}else return I.error("Unknown interpolation type "+String($[0]),1,0);if(y.length-1<4)return I.error("Expected at least 4 arguments, but found only "+(y.length-1)+".");if((y.length-1)%2!==0)return I.error("Expected an even number of arguments.");if(ae=I.parse(ae,2,aa),!ae)return null;var gt=[],Et=null;U==="interpolate-hcl"||U==="interpolate-lab"?Et=ql:I.expectedType&&I.expectedType.kind!=="value"&&(Et=I.expectedType);for(var or=0;or=_r)return I.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',Fr);var Hi=I.parse(pr,oi,Et);if(!Hi)return null;Et=Et||Hi.type,gt.push([_r,Hi])}return Et.kind!=="number"&&Et.kind!=="color"&&!(Et.kind==="array"&&Et.itemType.kind==="number"&&typeof Et.N=="number")?I.error("Type "+Os(Et)+" is not interpolatable."):new Wl(Et,U,$,ae,gt)},Wl.prototype.evaluate=function(y){var I=this.labels,U=this.outputs;if(I.length===1)return U[0].evaluate(y);var $=this.input.evaluate(y);if($<=I[0])return U[0].evaluate(y);var ae=I.length;if($>=I[ae-1])return U[ae-1].evaluate(y);var he=hu(I,$),Oe=I[he],rt=I[he+1],gt=Wl.interpolationFactor(this.interpolation,$,Oe,rt),Et=U[he].evaluate(y),or=U[he+1].evaluate(y);return this.operator==="interpolate"?zu[this.type.kind.toLowerCase()](Et,or,gt):this.operator==="interpolate-hcl"?uf.reverse(uf.interpolate(uf.forward(Et),uf.forward(or),gt)):Xu.reverse(Xu.interpolate(Xu.forward(Et),Xu.forward(or),gt))},Wl.prototype.eachChild=function(y){y(this.input);for(var I=0,U=this.outputs;I=U.length)throw new ps("Array index out of bounds: "+I+" > "+(U.length-1)+".");if(I!==Math.floor(I))throw new ps("Array index must be an integer, but found "+I+" instead.");return U[I]},Tc.prototype.eachChild=function(y){y(this.index),y(this.input)},Tc.prototype.outputDefined=function(){return!1},Tc.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var wl=function(y,I){this.type=qo,this.needle=y,this.haystack=I};wl.parse=function(y,I){if(y.length!==3)return I.error("Expected 2 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,Do),$=I.parse(y[2],2,Do);return!U||!$?null:Cf(U.type,[qo,Oo,aa,ac,Do])?new wl(U,$):I.error("Expected first argument to be of type boolean, string, number or null, but found "+Os(U.type)+" instead")},wl.prototype.evaluate=function(y){var I=this.needle.evaluate(y),U=this.haystack.evaluate(y);if(!U)return!1;if(!sc(I,["boolean","string","number","null"]))throw new ps("Expected first argument to be of type boolean, string, number or null, but found "+Os(Es(I))+" instead.");if(!sc(U,["string","array"]))throw new ps("Expected second argument to be of type array or string, but found "+Os(Es(U))+" instead.");return U.indexOf(I)>=0},wl.prototype.eachChild=function(y){y(this.needle),y(this.haystack)},wl.prototype.outputDefined=function(){return!0},wl.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var vu=function(y,I,U){this.type=aa,this.needle=y,this.haystack=I,this.fromIndex=U};vu.parse=function(y,I){if(y.length<=2||y.length>=5)return I.error("Expected 3 or 4 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,Do),$=I.parse(y[2],2,Do);if(!U||!$)return null;if(!Cf(U.type,[qo,Oo,aa,ac,Do]))return I.error("Expected first argument to be of type boolean, string, number or null, but found "+Os(U.type)+" instead");if(y.length===4){var ae=I.parse(y[3],3,aa);return ae?new vu(U,$,ae):null}else return new vu(U,$)},vu.prototype.evaluate=function(y){var I=this.needle.evaluate(y),U=this.haystack.evaluate(y);if(!sc(I,["boolean","string","number","null"]))throw new ps("Expected first argument to be of type boolean, string, number or null, but found "+Os(Es(I))+" instead.");if(!sc(U,["string","array"]))throw new ps("Expected second argument to be of type array or string, but found "+Os(Es(U))+" instead.");if(this.fromIndex){var $=this.fromIndex.evaluate(y);return U.indexOf(I,$)}return U.indexOf(I)},vu.prototype.eachChild=function(y){y(this.needle),y(this.haystack),this.fromIndex&&y(this.fromIndex)},vu.prototype.outputDefined=function(){return!1},vu.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var y=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),y]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var qc=function(y,I,U,$,ae,he){this.inputType=y,this.type=I,this.input=U,this.cases=$,this.outputs=ae,this.otherwise=he};qc.parse=function(y,I){if(y.length<5)return I.error("Expected at least 4 arguments, but found only "+(y.length-1)+".");if(y.length%2!==1)return I.error("Expected an even number of arguments.");var U,$;I.expectedType&&I.expectedType.kind!=="value"&&($=I.expectedType);for(var ae={},he=[],Oe=2;OeNumber.MAX_SAFE_INTEGER)return Et.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof pr=="number"&&Math.floor(pr)!==pr)return Et.error("Numeric branch labels must be integer values.");if(!U)U=Es(pr);else if(Et.checkSubtype(U,Es(pr)))return null;if(typeof ae[String(pr)]!="undefined")return Et.error("Branch labels must be unique.");ae[String(pr)]=he.length}var Fr=I.parse(gt,Oe,$);if(!Fr)return null;$=$||Fr.type,he.push(Fr)}var oi=I.parse(y[1],1,Do);if(!oi)return null;var Hi=I.parse(y[y.length-1],y.length-1,$);return!Hi||oi.type.kind!=="value"&&I.concat(1).checkSubtype(U,oi.type)?null:new qc(U,$,oi,ae,he,Hi)},qc.prototype.evaluate=function(y){var I=this.input.evaluate(y),U=Es(I)===this.inputType&&this.outputs[this.cases[I]]||this.otherwise;return U.evaluate(y)},qc.prototype.eachChild=function(y){y(this.input),this.outputs.forEach(y),y(this.otherwise)},qc.prototype.outputDefined=function(){return this.outputs.every(function(y){return y.outputDefined()})&&this.otherwise.outputDefined()},qc.prototype.serialize=function(){for(var y=this,I=["match",this.input.serialize()],U=Object.keys(this.cases).sort(),$=[],ae={},he=0,Oe=U;he=5)return I.error("Expected 3 or 4 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,Do),$=I.parse(y[2],2,aa);if(!U||!$)return null;if(!Cf(U.type,[Kl(Do),Oo,Do]))return I.error("Expected first argument to be of type array or string, but found "+Os(U.type)+" instead");if(y.length===4){var ae=I.parse(y[3],3,aa);return ae?new fc(U.type,U,$,ae):null}else return new fc(U.type,U,$)},fc.prototype.evaluate=function(y){var I=this.input.evaluate(y),U=this.beginIndex.evaluate(y);if(!sc(I,["string","array"]))throw new ps("Expected first argument to be of type array or string, but found "+Os(Es(I))+" instead.");if(this.endIndex){var $=this.endIndex.evaluate(y);return I.slice(U,$)}return I.slice(U)},fc.prototype.eachChild=function(y){y(this.input),y(this.beginIndex),this.endIndex&&y(this.endIndex)},fc.prototype.outputDefined=function(){return!1},fc.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var y=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),y]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};function Bc(m,y){return m==="=="||m==="!="?y.kind==="boolean"||y.kind==="string"||y.kind==="number"||y.kind==="null"||y.kind==="value":y.kind==="string"||y.kind==="number"||y.kind==="value"}function At(m,y,I){return y===I}function Wt(m,y,I){return y!==I}function Cr(m,y,I){return yI}function Kr(m,y,I){return y<=I}function ki(m,y,I){return y>=I}function Xi(m,y,I,U){return U.compare(y,I)===0}function dn(m,y,I,U){return!Xi(m,y,I,U)}function wn(m,y,I,U){return U.compare(y,I)<0}function Nn(m,y,I,U){return U.compare(y,I)>0}function Yi(m,y,I,U){return U.compare(y,I)<=0}function Qi(m,y,I,U){return U.compare(y,I)>=0}function on(m,y,I){var U=m!=="=="&&m!=="!=";return function(){function $(ae,he,Oe){this.type=qo,this.lhs=ae,this.rhs=he,this.collator=Oe,this.hasUntypedArgument=ae.type.kind==="value"||he.type.kind==="value"}return $.parse=function(he,Oe){if(he.length!==3&&he.length!==4)return Oe.error("Expected two or three arguments.");var rt=he[0],gt=Oe.parse(he[1],1,Do);if(!gt)return null;if(!Bc(rt,gt.type))return Oe.concat(1).error('"'+rt+`" comparisons are not supported for type '`+Os(gt.type)+"'.");var Et=Oe.parse(he[2],2,Do);if(!Et)return null;if(!Bc(rt,Et.type))return Oe.concat(2).error('"'+rt+`" comparisons are not supported for type '`+Os(Et.type)+"'.");if(gt.type.kind!==Et.type.kind&>.type.kind!=="value"&&Et.type.kind!=="value")return Oe.error("Cannot compare types '"+Os(gt.type)+"' and '"+Os(Et.type)+"'.");U&&(gt.type.kind==="value"&&Et.type.kind!=="value"?gt=new xl(Et.type,[gt]):gt.type.kind!=="value"&&Et.type.kind==="value"&&(Et=new xl(gt.type,[Et])));var or=null;if(he.length===4){if(gt.type.kind!=="string"&&Et.type.kind!=="string"&>.type.kind!=="value"&&Et.type.kind!=="value")return Oe.error("Cannot use collator to compare non-string types.");if(or=Oe.parse(he[3],3,Uf),!or)return null}return new $(gt,Et,or)},$.prototype.evaluate=function(he){var Oe=this.lhs.evaluate(he),rt=this.rhs.evaluate(he);if(U&&this.hasUntypedArgument){var gt=Es(Oe),Et=Es(rt);if(gt.kind!==Et.kind||!(gt.kind==="string"||gt.kind==="number"))throw new ps('Expected arguments for "'+m+'" to be (string, string) or (number, number), but found ('+gt.kind+", "+Et.kind+") instead.")}if(this.collator&&!U&&this.hasUntypedArgument){var or=Es(Oe),_r=Es(rt);if(or.kind!=="string"||_r.kind!=="string")return y(he,Oe,rt)}return this.collator?I(he,Oe,rt,this.collator.evaluate(he)):y(he,Oe,rt)},$.prototype.eachChild=function(he){he(this.lhs),he(this.rhs),this.collator&&he(this.collator)},$.prototype.outputDefined=function(){return!0},$.prototype.serialize=function(){var he=[m];return this.eachChild(function(Oe){he.push(Oe.serialize())}),he},$}()}var Fi=on("==",At,Xi),$n=on("!=",Wt,dn),Ca=on("<",Cr,wn),Ra=on(">",Ar,Nn),La=on("<=",Kr,Yi),Na=on(">=",ki,Qi),Yn=function(y,I,U,$,ae){this.type=Oo,this.number=y,this.locale=I,this.currency=U,this.minFractionDigits=$,this.maxFractionDigits=ae};Yn.parse=function(y,I){if(y.length!==3)return I.error("Expected two arguments.");var U=I.parse(y[1],1,aa);if(!U)return null;var $=y[2];if(typeof $!="object"||Array.isArray($))return I.error("NumberFormat options argument must be an object.");var ae=null;if($.locale&&(ae=I.parse($.locale,1,Oo),!ae))return null;var he=null;if($.currency&&(he=I.parse($.currency,1,Oo),!he))return null;var Oe=null;if($["min-fraction-digits"]&&(Oe=I.parse($["min-fraction-digits"],1,aa),!Oe))return null;var rt=null;return $["max-fraction-digits"]&&(rt=I.parse($["max-fraction-digits"],1,aa),!rt)?null:new Yn(U,ae,he,Oe,rt)},Yn.prototype.evaluate=function(y){return new Intl.NumberFormat(this.locale?this.locale.evaluate(y):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(y):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(y):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(y):void 0}).format(this.number.evaluate(y))},Yn.prototype.eachChild=function(y){y(this.number),this.locale&&y(this.locale),this.currency&&y(this.currency),this.minFractionDigits&&y(this.minFractionDigits),this.maxFractionDigits&&y(this.maxFractionDigits)},Yn.prototype.outputDefined=function(){return!1},Yn.prototype.serialize=function(){var y={};return this.locale&&(y.locale=this.locale.serialize()),this.currency&&(y.currency=this.currency.serialize()),this.minFractionDigits&&(y["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(y["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),y]};var Dn=function(y){this.type=aa,this.input=y};Dn.parse=function(y,I){if(y.length!==2)return I.error("Expected 1 argument, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1);return U?U.type.kind!=="array"&&U.type.kind!=="string"&&U.type.kind!=="value"?I.error("Expected argument of type string or array, but found "+Os(U.type)+" instead."):new Dn(U):null},Dn.prototype.evaluate=function(y){var I=this.input.evaluate(y);if(typeof I=="string")return I.length;if(Array.isArray(I))return I.length;throw new ps("Expected value to be of type string or array, but found "+Os(Es(I))+" instead.")},Dn.prototype.eachChild=function(y){y(this.input)},Dn.prototype.outputDefined=function(){return!1},Dn.prototype.serialize=function(){var y=["length"];return this.eachChild(function(I){y.push(I.serialize())}),y};var Ka={"==":Fi,"!=":$n,">":Ra,"<":Ca,">=":Na,"<=":La,array:xl,at:Tc,boolean:xl,case:cf,coalesce:Zu,collator:Hu,format:Gu,image:qs,in:wl,"index-of":vu,interpolate:Wl,"interpolate-hcl":Wl,"interpolate-lab":Wl,length:Dn,let:Oc,literal:Go,match:qc,number:xl,"number-format":Yn,object:xl,slice:fc,step:_u,string:xl,"to-boolean":Po,"to-color":Po,"to-number":Po,"to-string":Po,var:Dc,within:Mu};function bo(m,y){var I=y[0],U=y[1],$=y[2],ae=y[3];I=I.evaluate(m),U=U.evaluate(m),$=$.evaluate(m);var he=ae?ae.evaluate(m):1,Oe=lc(I,U,$,he);if(Oe)throw new ps(Oe);return new cs(I/255*he,U/255*he,$/255*he,he)}function Xo(m,y){return m in y}function Ss(m,y){var I=y[m];return typeof I=="undefined"?null:I}function as(m,y,I,U){for(;I<=U;){var $=I+U>>1;if(y[$]===m)return!0;y[$]>m?U=$-1:I=$+1}return!1}function ws(m){return{type:m}}Pa.register(Ka,{error:[rf,[Oo],function(m,y){var I=y[0];throw new ps(I.evaluate(m))}],typeof:[Oo,[Do],function(m,y){var I=y[0];return Os(Es(I.evaluate(m)))}],"to-rgba":[Kl(aa,4),[ql],function(m,y){var I=y[0];return I.evaluate(m).toArray()}],rgb:[ql,[aa,aa,aa],bo],rgba:[ql,[aa,aa,aa,aa],bo],has:{type:qo,overloads:[[[Oo],function(m,y){var I=y[0];return Xo(I.evaluate(m),m.properties())}],[[Oo,Pc],function(m,y){var I=y[0],U=y[1];return Xo(I.evaluate(m),U.evaluate(m))}]]},get:{type:Do,overloads:[[[Oo],function(m,y){var I=y[0];return Ss(I.evaluate(m),m.properties())}],[[Oo,Pc],function(m,y){var I=y[0],U=y[1];return Ss(I.evaluate(m),U.evaluate(m))}]]},"feature-state":[Do,[Oo],function(m,y){var I=y[0];return Ss(I.evaluate(m),m.featureState||{})}],properties:[Pc,[],function(m){return m.properties()}],"geometry-type":[Oo,[],function(m){return m.geometryType()}],id:[Do,[],function(m){return m.id()}],zoom:[aa,[],function(m){return m.globals.zoom}],"heatmap-density":[aa,[],function(m){return m.globals.heatmapDensity||0}],"line-progress":[aa,[],function(m){return m.globals.lineProgress||0}],accumulated:[Do,[],function(m){return m.globals.accumulated===void 0?null:m.globals.accumulated}],"+":[aa,ws(aa),function(m,y){for(var I=0,U=0,$=y;U<$.length;U+=1){var ae=$[U];I+=ae.evaluate(m)}return I}],"*":[aa,ws(aa),function(m,y){for(var I=1,U=0,$=y;U<$.length;U+=1){var ae=$[U];I*=ae.evaluate(m)}return I}],"-":{type:aa,overloads:[[[aa,aa],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)-U.evaluate(m)}],[[aa],function(m,y){var I=y[0];return-I.evaluate(m)}]]},"/":[aa,[aa,aa],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)/U.evaluate(m)}],"%":[aa,[aa,aa],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)%U.evaluate(m)}],ln2:[aa,[],function(){return Math.LN2}],pi:[aa,[],function(){return Math.PI}],e:[aa,[],function(){return Math.E}],"^":[aa,[aa,aa],function(m,y){var I=y[0],U=y[1];return Math.pow(I.evaluate(m),U.evaluate(m))}],sqrt:[aa,[aa],function(m,y){var I=y[0];return Math.sqrt(I.evaluate(m))}],log10:[aa,[aa],function(m,y){var I=y[0];return Math.log(I.evaluate(m))/Math.LN10}],ln:[aa,[aa],function(m,y){var I=y[0];return Math.log(I.evaluate(m))}],log2:[aa,[aa],function(m,y){var I=y[0];return Math.log(I.evaluate(m))/Math.LN2}],sin:[aa,[aa],function(m,y){var I=y[0];return Math.sin(I.evaluate(m))}],cos:[aa,[aa],function(m,y){var I=y[0];return Math.cos(I.evaluate(m))}],tan:[aa,[aa],function(m,y){var I=y[0];return Math.tan(I.evaluate(m))}],asin:[aa,[aa],function(m,y){var I=y[0];return Math.asin(I.evaluate(m))}],acos:[aa,[aa],function(m,y){var I=y[0];return Math.acos(I.evaluate(m))}],atan:[aa,[aa],function(m,y){var I=y[0];return Math.atan(I.evaluate(m))}],min:[aa,ws(aa),function(m,y){return Math.min.apply(Math,y.map(function(I){return I.evaluate(m)}))}],max:[aa,ws(aa),function(m,y){return Math.max.apply(Math,y.map(function(I){return I.evaluate(m)}))}],abs:[aa,[aa],function(m,y){var I=y[0];return Math.abs(I.evaluate(m))}],round:[aa,[aa],function(m,y){var I=y[0],U=I.evaluate(m);return U<0?-Math.round(-U):Math.round(U)}],floor:[aa,[aa],function(m,y){var I=y[0];return Math.floor(I.evaluate(m))}],ceil:[aa,[aa],function(m,y){var I=y[0];return Math.ceil(I.evaluate(m))}],"filter-==":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1];return m.properties()[I.value]===U.value}],"filter-id-==":[qo,[Do],function(m,y){var I=y[0];return m.id()===I.value}],"filter-type-==":[qo,[Oo],function(m,y){var I=y[0];return m.geometryType()===I.value}],"filter-<":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1],$=m.properties()[I.value],ae=U.value;return typeof $==typeof ae&&$":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1],$=m.properties()[I.value],ae=U.value;return typeof $==typeof ae&&$>ae}],"filter-id->":[qo,[Do],function(m,y){var I=y[0],U=m.id(),$=I.value;return typeof U==typeof $&&U>$}],"filter-<=":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1],$=m.properties()[I.value],ae=U.value;return typeof $==typeof ae&&$<=ae}],"filter-id-<=":[qo,[Do],function(m,y){var I=y[0],U=m.id(),$=I.value;return typeof U==typeof $&&U<=$}],"filter->=":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1],$=m.properties()[I.value],ae=U.value;return typeof $==typeof ae&&$>=ae}],"filter-id->=":[qo,[Do],function(m,y){var I=y[0],U=m.id(),$=I.value;return typeof U==typeof $&&U>=$}],"filter-has":[qo,[Do],function(m,y){var I=y[0];return I.value in m.properties()}],"filter-has-id":[qo,[],function(m){return m.id()!==null&&m.id()!==void 0}],"filter-type-in":[qo,[Kl(Oo)],function(m,y){var I=y[0];return I.value.indexOf(m.geometryType())>=0}],"filter-id-in":[qo,[Kl(Do)],function(m,y){var I=y[0];return I.value.indexOf(m.id())>=0}],"filter-in-small":[qo,[Oo,Kl(Do)],function(m,y){var I=y[0],U=y[1];return U.value.indexOf(m.properties()[I.value])>=0}],"filter-in-large":[qo,[Oo,Kl(Do)],function(m,y){var I=y[0],U=y[1];return as(m.properties()[I.value],U.value,0,U.value.length-1)}],all:{type:qo,overloads:[[[qo,qo],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)&&U.evaluate(m)}],[ws(qo),function(m,y){for(var I=0,U=y;I-1}function va(m){return!!m.expression&&m.expression.interpolated}function no(m){return m instanceof Number?"number":m instanceof String?"string":m instanceof Boolean?"boolean":Array.isArray(m)?"array":m===null?"null":typeof m}function ys(m){return typeof m=="object"&&m!==null&&!Array.isArray(m)}function rs(m){return m}function $l(m,y){var I=y.type==="color",U=m.stops&&typeof m.stops[0][0]=="object",$=U||m.property!==void 0,ae=U||!$,he=m.type||(va(y)?"exponential":"interval");if(I&&(m=Ol({},m),m.stops&&(m.stops=m.stops.map(function(ha){return[ha[0],cs.parse(ha[1])]})),m.default?m.default=cs.parse(m.default):m.default=cs.parse(y.default)),m.colorSpace&&m.colorSpace!=="rgb"&&!Xf[m.colorSpace])throw new Error("Unknown color space: "+m.colorSpace);var Oe,rt,gt;if(he==="exponential")Oe=pu;else if(he==="interval")Oe=Nc;else if(he==="categorical"){Oe=Yu,rt=Object.create(null);for(var Et=0,or=m.stops;Et=m.stops[U-1][0])return m.stops[U-1][1];var $=hu(m.stops.map(function(ae){return ae[0]}),I);return m.stops[$][1]}function pu(m,y,I){var U=m.base!==void 0?m.base:1;if(no(I)!=="number")return Cu(m.default,y.default);var $=m.stops.length;if($===1||I<=m.stops[0][0])return m.stops[0][1];if(I>=m.stops[$-1][0])return m.stops[$-1][1];var ae=hu(m.stops.map(function(or){return or[0]}),I),he=xu(I,U,m.stops[ae][0],m.stops[ae+1][0]),Oe=m.stops[ae][1],rt=m.stops[ae+1][1],gt=zu[y.type]||rs;if(m.colorSpace&&m.colorSpace!=="rgb"){var Et=Xf[m.colorSpace];gt=function(or,_r){return Et.reverse(Et.interpolate(Et.forward(or),Et.forward(_r),he))}}return typeof Oe.evaluate=="function"?{evaluate:function(){for(var _r=[],pr=arguments.length;pr--;)_r[pr]=arguments[pr];var Fr=Oe.evaluate.apply(void 0,_r),oi=rt.evaluate.apply(void 0,_r);if(!(Fr===void 0||oi===void 0))return gt(Fr,oi,he)}}:gt(Oe,rt,he)}function Uc(m,y,I){return y.type==="color"?I=cs.parse(I):y.type==="formatted"?I=Jl.fromString(I.toString()):y.type==="resolvedImage"?I=fl.fromString(I.toString()):no(I)!==y.type&&(y.type!=="enum"||!y.values[I])&&(I=void 0),Cu(I,m.default,y.default)}function xu(m,y,I,U){var $=U-I,ae=m-I;return $===0?0:y===1?ae/$:(Math.pow(y,ae)-1)/(Math.pow(y,$)-1)}var Ac=function(y,I){this.expression=y,this._warningHistory={},this._evaluator=new Yo,this._defaultValue=I?ee(I):null,this._enumValues=I&&I.type==="enum"?I.values:null};Ac.prototype.evaluateWithoutErrorHandling=function(y,I,U,$,ae,he){return this._evaluator.globals=y,this._evaluator.feature=I,this._evaluator.featureState=U,this._evaluator.canonical=$,this._evaluator.availableImages=ae||null,this._evaluator.formattedSection=he,this.expression.evaluate(this._evaluator)},Ac.prototype.evaluate=function(y,I,U,$,ae,he){this._evaluator.globals=y,this._evaluator.feature=I||null,this._evaluator.featureState=U||null,this._evaluator.canonical=$,this._evaluator.availableImages=ae||null,this._evaluator.formattedSection=he||null;try{var Oe=this.expression.evaluate(this._evaluator);if(Oe==null||typeof Oe=="number"&&Oe!==Oe)return this._defaultValue;if(this._enumValues&&!(Oe in this._enumValues))throw new ps("Expected value to be one of "+Object.keys(this._enumValues).map(function(rt){return JSON.stringify(rt)}).join(", ")+", but found "+JSON.stringify(Oe)+" instead.");return Oe}catch(rt){return this._warningHistory[rt.message]||(this._warningHistory[rt.message]=!0,typeof console!="undefined"&&console.warn(rt.message)),this._defaultValue}};function Ua(m){return Array.isArray(m)&&m.length>0&&typeof m[0]=="string"&&m[0]in Ka}function oo(m,y){var I=new ks(Ka,[],y?Q(y):void 0),U=I.parse(m,void 0,void 0,void 0,y&&y.type==="string"?{typeAnnotation:"coerce"}:void 0);return U?Ho(new Ac(U,y)):ml(I.errors)}var Vc=function(y,I){this.kind=y,this._styleExpression=I,this.isStateDependent=y!=="constant"&&!js(I.expression)};Vc.prototype.evaluateWithoutErrorHandling=function(y,I,U,$,ae,he){return this._styleExpression.evaluateWithoutErrorHandling(y,I,U,$,ae,he)},Vc.prototype.evaluate=function(y,I,U,$,ae,he){return this._styleExpression.evaluate(y,I,U,$,ae,he)};var hc=function(y,I,U,$){this.kind=y,this.zoomStops=U,this._styleExpression=I,this.isStateDependent=y!=="camera"&&!js(I.expression),this.interpolationType=$};hc.prototype.evaluateWithoutErrorHandling=function(y,I,U,$,ae,he){return this._styleExpression.evaluateWithoutErrorHandling(y,I,U,$,ae,he)},hc.prototype.evaluate=function(y,I,U,$,ae,he){return this._styleExpression.evaluate(y,I,U,$,ae,he)},hc.prototype.interpolationFactor=function(y,I,U){return this.interpolationType?Wl.interpolationFactor(this.interpolationType,y,I,U):0};function Ku(m,y){if(m=oo(m,y),m.result==="error")return m;var I=m.value.expression,U=ih(I);if(!U&&!Ws(y))return ml([new Ns("","data expressions not supported")]);var $=Eu(I,["zoom"]);if(!$&&!Ls(y))return ml([new Ns("","zoom expressions not supported")]);var ae=B(I);if(!ae&&!$)return ml([new Ns("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(ae instanceof Ns)return ml([ae]);if(ae instanceof Wl&&!va(y))return ml([new Ns("",'"interpolate" expressions cannot be used with this property')]);if(!ae)return Ho(U?new Vc("constant",m.value):new Vc("source",m.value));var he=ae instanceof Wl?ae.interpolation:void 0;return Ho(U?new hc("camera",m.value,ae.labels,he):new hc("composite",m.value,ae.labels,he))}var ue=function(y,I){this._parameters=y,this._specification=I,Ol(this,$l(this._parameters,this._specification))};ue.deserialize=function(y){return new ue(y._parameters,y._specification)},ue.serialize=function(y){return{_parameters:y._parameters,_specification:y._specification}};function w(m,y){if(ys(m))return new ue(m,y);if(Ua(m)){var I=Ku(m,y);if(I.result==="error")throw new Error(I.value.map(function($){return $.key+": "+$.message}).join(", "));return I.value}else{var U=m;return typeof m=="string"&&y.type==="color"&&(U=cs.parse(m)),{kind:"constant",evaluate:function(){return U}}}}function B(m){var y=null;if(m instanceof Oc)y=B(m.result);else if(m instanceof Zu)for(var I=0,U=m.args;IU.maximum?[new _a(y,I,I+" is greater than the maximum value "+U.maximum)]:[]}function ot(m){var y=m.valueSpec,I=xo(m.value.type),U,$={},ae,he,Oe=I!=="categorical"&&m.value.property===void 0,rt=!Oe,gt=no(m.value.stops)==="array"&&no(m.value.stops[0])==="array"&&no(m.value.stops[0][0])==="object",Et=le({key:m.key,value:m.value,valueSpec:m.styleSpec.function,style:m.style,styleSpec:m.styleSpec,objectElementValidators:{stops:or,default:Fr}});return I==="identity"&&Oe&&Et.push(new _a(m.key,m.value,'missing required property "property"')),I!=="identity"&&!m.value.stops&&Et.push(new _a(m.key,m.value,'missing required property "stops"')),I==="exponential"&&m.valueSpec.expression&&!va(m.valueSpec)&&Et.push(new _a(m.key,m.value,"exponential functions not supported")),m.styleSpec.$version>=8&&(rt&&!Ws(m.valueSpec)?Et.push(new _a(m.key,m.value,"property functions not supported")):Oe&&!Ls(m.valueSpec)&&Et.push(new _a(m.key,m.value,"zoom functions not supported"))),(I==="categorical"||gt)&&m.value.property===void 0&&Et.push(new _a(m.key,m.value,'"property" property is required')),Et;function or(oi){if(I==="identity")return[new _a(oi.key,oi.value,'identity function may not have a "stops" property')];var Hi=[],Ai=oi.value;return Hi=Hi.concat(qe({key:oi.key,value:Ai,valueSpec:oi.valueSpec,style:oi.style,styleSpec:oi.styleSpec,arrayElementValidator:_r})),no(Ai)==="array"&&Ai.length===0&&Hi.push(new _a(oi.key,Ai,"array must have at least one stop")),Hi}function _r(oi){var Hi=[],Ai=oi.value,bn=oi.key;if(no(Ai)!=="array")return[new _a(bn,Ai,"array expected, "+no(Ai)+" found")];if(Ai.length!==2)return[new _a(bn,Ai,"array length 2 expected, length "+Ai.length+" found")];if(gt){if(no(Ai[0])!=="object")return[new _a(bn,Ai,"object expected, "+no(Ai[0])+" found")];if(Ai[0].zoom===void 0)return[new _a(bn,Ai,"object stop key must have zoom")];if(Ai[0].value===void 0)return[new _a(bn,Ai,"object stop key must have value")];if(he&&he>xo(Ai[0].zoom))return[new _a(bn,Ai[0].zoom,"stop zoom values must appear in ascending order")];xo(Ai[0].zoom)!==he&&(he=xo(Ai[0].zoom),ae=void 0,$={}),Hi=Hi.concat(le({key:bn+"[0]",value:Ai[0],valueSpec:{zoom:{}},style:oi.style,styleSpec:oi.styleSpec,objectElementValidators:{zoom:Xe,value:pr}}))}else Hi=Hi.concat(pr({key:bn+"[0]",value:Ai[0],valueSpec:{},style:oi.style,styleSpec:oi.styleSpec},Ai));return Ua(Yl(Ai[1]))?Hi.concat([new _a(bn+"[1]",Ai[1],"expressions are not allowed in function stops.")]):Hi.concat(Qa({key:bn+"[1]",value:Ai[1],valueSpec:y,style:oi.style,styleSpec:oi.styleSpec}))}function pr(oi,Hi){var Ai=no(oi.value),bn=xo(oi.value),nn=oi.value!==null?oi.value:Hi;if(!U)U=Ai;else if(Ai!==U)return[new _a(oi.key,nn,Ai+" stop domain type must match previous stop domain type "+U)];if(Ai!=="number"&&Ai!=="string"&&Ai!=="boolean")return[new _a(oi.key,nn,"stop domain value must be a number, string, or boolean")];if(Ai!=="number"&&I!=="categorical"){var xn="number expected, "+Ai+" found";return Ws(y)&&I===void 0&&(xn+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new _a(oi.key,nn,xn)]}return I==="categorical"&&Ai==="number"&&(!isFinite(bn)||Math.floor(bn)!==bn)?[new _a(oi.key,nn,"integer expected, found "+bn)]:I!=="categorical"&&Ai==="number"&&ae!==void 0&&bn=2&&m[1]!=="$id"&&m[1]!=="$type";case"in":return m.length>=3&&(typeof m[1]!="string"||Array.isArray(m[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return m.length!==3||Array.isArray(m[1])||Array.isArray(m[2]);case"any":case"all":for(var y=0,I=m.slice(1);yy?1:0}function Be(m){if(!Array.isArray(m))return!1;if(m[0]==="within")return!0;for(var y=1;y"||y==="<="||y===">="?We(m[1],m[2],y):y==="any"?it(m.slice(1)):y==="all"?["all"].concat(m.slice(1).map(et)):y==="none"?["all"].concat(m.slice(1).map(et).map(tr)):y==="in"?Ft(m[1],m.slice(2)):y==="!in"?tr(Ft(m[1],m.slice(2))):y==="has"?Ht(m[1]):y==="!has"?tr(Ht(m[1])):y==="within"?m:!0;return I}function We(m,y,I){switch(m){case"$type":return["filter-type-"+I,y];case"$id":return["filter-id-"+I,y];default:return["filter-"+I,m,y]}}function it(m){return["any"].concat(m.map(et))}function Ft(m,y){if(y.length===0)return!1;switch(m){case"$type":return["filter-type-in",["literal",y]];case"$id":return["filter-id-in",["literal",y]];default:return y.length>200&&!y.some(function(I){return typeof I!=typeof y[0]})?["filter-in-large",m,["literal",y.sort(De)]]:["filter-in-small",m,["literal",y]]}}function Ht(m){switch(m){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",m]}}function tr(m){return["!",m]}function dr(m){return Ir(Yl(m.value))?Tt(Ol({},m,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Sr(m)}function Sr(m){var y=m.value,I=m.key;if(no(y)!=="array")return[new _a(I,y,"array expected, "+no(y)+" found")];var U=m.styleSpec,$,ae=[];if(y.length<1)return[new _a(I,y,"filter array must have at least 1 element")];switch(ae=ae.concat(xr({key:I+"[0]",value:y[0],valueSpec:U.filter_operator,style:m.style,styleSpec:m.styleSpec})),xo(y[0])){case"<":case"<=":case">":case">=":y.length>=2&&xo(y[1])==="$type"&&ae.push(new _a(I,y,'"$type" cannot be use with operator "'+y[0]+'"'));case"==":case"!=":y.length!==3&&ae.push(new _a(I,y,'filter array for operator "'+y[0]+'" must have 3 elements'));case"in":case"!in":y.length>=2&&($=no(y[1]),$!=="string"&&ae.push(new _a(I+"[1]",y[1],"string expected, "+$+" found")));for(var he=2;he=Et[pr+0]&&U>=Et[pr+1])?(he[_r]=!0,ae.push(gt[_r])):he[_r]=!1}}},Ql.prototype._forEachCell=function(m,y,I,U,$,ae,he,Oe){for(var rt=this._convertToCellCoord(m),gt=this._convertToCellCoord(y),Et=this._convertToCellCoord(I),or=this._convertToCellCoord(U),_r=rt;_r<=Et;_r++)for(var pr=gt;pr<=or;pr++){var Fr=this.d*pr+_r;if(!(Oe&&!Oe(this._convertFromCellCoord(_r),this._convertFromCellCoord(pr),this._convertFromCellCoord(_r+1),this._convertFromCellCoord(pr+1)))&&$.call(this,m,y,I,U,Fr,ae,he,Oe))return}},Ql.prototype._convertFromCellCoord=function(m){return(m-this.padding)/this.scale},Ql.prototype._convertToCellCoord=function(m){return Math.max(0,Math.min(this.d-1,Math.floor(m*this.scale)+this.padding))},Ql.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var m=this.cells,y=Js+this.cells.length+1+1,I=0,U=0;U=0)){var or=m[Et];gt[Et]=Al[rt].shallow.indexOf(Et)>=0?or:He(or,y)}m instanceof Error&&(gt.message=m.message)}if(gt.$name)throw new Error("$name property is reserved for worker serialization logic.");return rt!=="Object"&&(gt.$name=rt),gt}throw new Error("can't serialize object of type "+typeof m)}function Ye(m){if(m==null||typeof m=="boolean"||typeof m=="number"||typeof m=="string"||m instanceof Boolean||m instanceof Number||m instanceof String||m instanceof Date||m instanceof RegExp||Te(m)||Ne(m)||ArrayBuffer.isView(m)||m instanceof dc)return m;if(Array.isArray(m))return m.map(Ye);if(typeof m=="object"){var y=m.$name||"Object",I=Al[y],U=I.klass;if(!U)throw new Error("can't deserialize unregistered class "+y);if(U.deserialize)return U.deserialize(m);for(var $=Object.create(U.prototype),ae=0,he=Object.keys(m);ae=0?rt:Ye(rt)}}return $}throw new Error("can't deserialize object of type "+typeof m)}var kt=function(){this.first=!0};kt.prototype.update=function(y,I){var U=Math.floor(y);return this.first?(this.first=!1,this.lastIntegerZoom=U,this.lastIntegerZoomTime=0,this.lastZoom=y,this.lastFloorZoom=U,!0):(this.lastFloorZoom>U?(this.lastIntegerZoom=U+1,this.lastIntegerZoomTime=I):this.lastFloorZoom=128&&m<=255},Arabic:function(m){return m>=1536&&m<=1791},"Arabic Supplement":function(m){return m>=1872&&m<=1919},"Arabic Extended-A":function(m){return m>=2208&&m<=2303},"Hangul Jamo":function(m){return m>=4352&&m<=4607},"Unified Canadian Aboriginal Syllabics":function(m){return m>=5120&&m<=5759},Khmer:function(m){return m>=6016&&m<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(m){return m>=6320&&m<=6399},"General Punctuation":function(m){return m>=8192&&m<=8303},"Letterlike Symbols":function(m){return m>=8448&&m<=8527},"Number Forms":function(m){return m>=8528&&m<=8591},"Miscellaneous Technical":function(m){return m>=8960&&m<=9215},"Control Pictures":function(m){return m>=9216&&m<=9279},"Optical Character Recognition":function(m){return m>=9280&&m<=9311},"Enclosed Alphanumerics":function(m){return m>=9312&&m<=9471},"Geometric Shapes":function(m){return m>=9632&&m<=9727},"Miscellaneous Symbols":function(m){return m>=9728&&m<=9983},"Miscellaneous Symbols and Arrows":function(m){return m>=11008&&m<=11263},"CJK Radicals Supplement":function(m){return m>=11904&&m<=12031},"Kangxi Radicals":function(m){return m>=12032&&m<=12255},"Ideographic Description Characters":function(m){return m>=12272&&m<=12287},"CJK Symbols and Punctuation":function(m){return m>=12288&&m<=12351},Hiragana:function(m){return m>=12352&&m<=12447},Katakana:function(m){return m>=12448&&m<=12543},Bopomofo:function(m){return m>=12544&&m<=12591},"Hangul Compatibility Jamo":function(m){return m>=12592&&m<=12687},Kanbun:function(m){return m>=12688&&m<=12703},"Bopomofo Extended":function(m){return m>=12704&&m<=12735},"CJK Strokes":function(m){return m>=12736&&m<=12783},"Katakana Phonetic Extensions":function(m){return m>=12784&&m<=12799},"Enclosed CJK Letters and Months":function(m){return m>=12800&&m<=13055},"CJK Compatibility":function(m){return m>=13056&&m<=13311},"CJK Unified Ideographs Extension A":function(m){return m>=13312&&m<=19903},"Yijing Hexagram Symbols":function(m){return m>=19904&&m<=19967},"CJK Unified Ideographs":function(m){return m>=19968&&m<=40959},"Yi Syllables":function(m){return m>=40960&&m<=42127},"Yi Radicals":function(m){return m>=42128&&m<=42191},"Hangul Jamo Extended-A":function(m){return m>=43360&&m<=43391},"Hangul Syllables":function(m){return m>=44032&&m<=55215},"Hangul Jamo Extended-B":function(m){return m>=55216&&m<=55295},"Private Use Area":function(m){return m>=57344&&m<=63743},"CJK Compatibility Ideographs":function(m){return m>=63744&&m<=64255},"Arabic Presentation Forms-A":function(m){return m>=64336&&m<=65023},"Vertical Forms":function(m){return m>=65040&&m<=65055},"CJK Compatibility Forms":function(m){return m>=65072&&m<=65103},"Small Form Variants":function(m){return m>=65104&&m<=65135},"Arabic Presentation Forms-B":function(m){return m>=65136&&m<=65279},"Halfwidth and Fullwidth Forms":function(m){return m>=65280&&m<=65519}};function jt(m){for(var y=0,I=m;y=65097&&m<=65103)||nt["CJK Compatibility Ideographs"](m)||nt["CJK Compatibility"](m)||nt["CJK Radicals Supplement"](m)||nt["CJK Strokes"](m)||nt["CJK Symbols and Punctuation"](m)&&!(m>=12296&&m<=12305)&&!(m>=12308&&m<=12319)&&m!==12336||nt["CJK Unified Ideographs Extension A"](m)||nt["CJK Unified Ideographs"](m)||nt["Enclosed CJK Letters and Months"](m)||nt["Hangul Compatibility Jamo"](m)||nt["Hangul Jamo Extended-A"](m)||nt["Hangul Jamo Extended-B"](m)||nt["Hangul Jamo"](m)||nt["Hangul Syllables"](m)||nt.Hiragana(m)||nt["Ideographic Description Characters"](m)||nt.Kanbun(m)||nt["Kangxi Radicals"](m)||nt["Katakana Phonetic Extensions"](m)||nt.Katakana(m)&&m!==12540||nt["Halfwidth and Fullwidth Forms"](m)&&m!==65288&&m!==65289&&m!==65293&&!(m>=65306&&m<=65310)&&m!==65339&&m!==65341&&m!==65343&&!(m>=65371&&m<=65503)&&m!==65507&&!(m>=65512&&m<=65519)||nt["Small Form Variants"](m)&&!(m>=65112&&m<=65118)&&!(m>=65123&&m<=65126)||nt["Unified Canadian Aboriginal Syllabics"](m)||nt["Unified Canadian Aboriginal Syllabics Extended"](m)||nt["Vertical Forms"](m)||nt["Yijing Hexagram Symbols"](m)||nt["Yi Syllables"](m)||nt["Yi Radicals"](m))}function _i(m){return!!(nt["Latin-1 Supplement"](m)&&(m===167||m===169||m===174||m===177||m===188||m===189||m===190||m===215||m===247)||nt["General Punctuation"](m)&&(m===8214||m===8224||m===8225||m===8240||m===8241||m===8251||m===8252||m===8258||m===8263||m===8264||m===8265||m===8273)||nt["Letterlike Symbols"](m)||nt["Number Forms"](m)||nt["Miscellaneous Technical"](m)&&(m>=8960&&m<=8967||m>=8972&&m<=8991||m>=8996&&m<=9e3||m===9003||m>=9085&&m<=9114||m>=9150&&m<=9165||m===9167||m>=9169&&m<=9179||m>=9186&&m<=9215)||nt["Control Pictures"](m)&&m!==9251||nt["Optical Character Recognition"](m)||nt["Enclosed Alphanumerics"](m)||nt["Geometric Shapes"](m)||nt["Miscellaneous Symbols"](m)&&!(m>=9754&&m<=9759)||nt["Miscellaneous Symbols and Arrows"](m)&&(m>=11026&&m<=11055||m>=11088&&m<=11097||m>=11192&&m<=11243)||nt["CJK Symbols and Punctuation"](m)||nt.Katakana(m)||nt["Private Use Area"](m)||nt["CJK Compatibility Forms"](m)||nt["Small Form Variants"](m)||nt["Halfwidth and Fullwidth Forms"](m)||m===8734||m===8756||m===8757||m>=9984&&m<=10087||m>=10102&&m<=10131||m===65532||m===65533)}function bi(m){return!(qr(m)||_i(m))}function Zr(m){return nt.Arabic(m)||nt["Arabic Supplement"](m)||nt["Arabic Extended-A"](m)||nt["Arabic Presentation Forms-A"](m)||nt["Arabic Presentation Forms-B"](m)}function ai(m){return m>=1424&&m<=2303||nt["Arabic Presentation Forms-A"](m)||nt["Arabic Presentation Forms-B"](m)}function gi(m,y){return!(!y&&ai(m)||m>=2304&&m<=3583||m>=3840&&m<=4255||nt.Khmer(m))}function Ii(m){for(var y=0,I=m;y-1&&(En=ei.error),Ln&&Ln(m)};function Ea(){Ia.fire(new Wo("pluginStateChange",{pluginStatus:En,pluginURL:Un}))}var Ia=new Wn,yo=function(){return En},Da=function(m){return m({pluginStatus:En,pluginURL:Un}),Ia.on("pluginStateChange",m),m},go=function(m,y,I){if(I===void 0&&(I=!1),En===ei.deferred||En===ei.loading||En===ei.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");Un=ut.resolveURL(m),En=ei.deferred,Ln=y,Ea(),I||Is()},Is=function(){if(En!==ei.deferred||!Un)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");En=ei.loading,Ea(),Un&&ri({url:Un},function(m){m?ia(m):(En=ei.loaded,Ea())})},Ms={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return En===ei.loaded||Ms.applyArabicShaping!=null},isLoading:function(){return En===ei.loading},setState:function(y){En=y.pluginStatus,Un=y.pluginURL},isParsed:function(){return Ms.applyArabicShaping!=null&&Ms.processBidirectionalText!=null&&Ms.processStyledBidirectionalText!=null},getPluginURL:function(){return Un}},Xs=function(){!Ms.isLoading()&&!Ms.isLoaded()&&yo()==="deferred"&&Is()},Gn=function(y,I){this.zoom=y,I?(this.now=I.now,this.fadeDuration=I.fadeDuration,this.zoomHistory=I.zoomHistory,this.transition=I.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new kt,this.transition={})};Gn.prototype.isSupportedScript=function(y){return Si(y,Ms.isLoaded())},Gn.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},Gn.prototype.getCrossfadeParameters=function(){var y=this.zoom,I=y-Math.floor(y),U=this.crossFadingFactor();return y>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:I+(1-I)*U}:{fromScale:.5,toScale:1,t:1-(1-U)*I}};var Ha=function(y,I){this.property=y,this.value=I,this.expression=w(I===void 0?y.specification.default:I,y.specification)};Ha.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},Ha.prototype.possiblyEvaluate=function(y,I,U){return this.property.possiblyEvaluate(this,y,I,U)};var Fo=function(y){this.property=y,this.value=new Ha(y,void 0)};Fo.prototype.transitioned=function(y,I){return new $s(this.property,this.value,I,x({},y.transition,this.transition),y.now)},Fo.prototype.untransitioned=function(){return new $s(this.property,this.value,null,{},0)};var Uo=function(y){this._properties=y,this._values=Object.create(y.defaultTransitionablePropertyValues)};Uo.prototype.getValue=function(y){return H(this._values[y].value.value)},Uo.prototype.setValue=function(y,I){this._values.hasOwnProperty(y)||(this._values[y]=new Fo(this._values[y].property)),this._values[y].value=new Ha(this._values[y].property,I===null?void 0:H(I))},Uo.prototype.getTransition=function(y){return H(this._values[y].transition)},Uo.prototype.setTransition=function(y,I){this._values.hasOwnProperty(y)||(this._values[y]=new Fo(this._values[y].property)),this._values[y].transition=H(I)||void 0},Uo.prototype.serialize=function(){for(var y={},I=0,U=Object.keys(this._values);Ithis.end)return this.prior=null,ae;if(this.value.isDataDriven())return this.prior=null,ae;if($he.zoomHistory.lastIntegerZoom?{from:U,to:$}:{from:ae,to:$}},y.prototype.interpolate=function(U){return U},y}(bt),Rr=function(y){this.specification=y};Rr.prototype.possiblyEvaluate=function(y,I,U,$){if(y.value!==void 0)if(y.expression.kind==="constant"){var ae=y.expression.evaluate(I,null,{},U,$);return this._calculate(ae,ae,ae,I)}else return this._calculate(y.expression.evaluate(new Gn(Math.floor(I.zoom-1),I)),y.expression.evaluate(new Gn(Math.floor(I.zoom),I)),y.expression.evaluate(new Gn(Math.floor(I.zoom+1),I)),I)},Rr.prototype._calculate=function(y,I,U,$){var ae=$.zoom;return ae>$.zoomHistory.lastIntegerZoom?{from:y,to:I}:{from:U,to:I}},Rr.prototype.interpolate=function(y){return y};var jr=function(y){this.specification=y};jr.prototype.possiblyEvaluate=function(y,I,U,$){return!!y.expression.evaluate(I,null,{},U,$)},jr.prototype.interpolate=function(){return!1};var Nr=function(y){this.properties=y,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(var I in y){var U=y[I];U.specification.overridable&&this.overridableProperties.push(I);var $=this.defaultPropertyValues[I]=new Ha(U,void 0),ae=this.defaultTransitionablePropertyValues[I]=new Fo(U);this.defaultTransitioningPropertyValues[I]=ae.untransitioned(),this.defaultPossiblyEvaluatedValues[I]=$.possiblyEvaluate({})}};X("DataDrivenProperty",bt),X("DataConstantProperty",Me),X("CrossFadedDataDrivenProperty",zt),X("CrossFadedProperty",Rr),X("ColorRampProperty",jr);var Gr="-transition",mi=function(m){function y(I,U){if(m.call(this),this.id=I.id,this.type=I.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},I.type!=="custom"&&(I=I,this.metadata=I.metadata,this.minzoom=I.minzoom,this.maxzoom=I.maxzoom,I.type!=="background"&&(this.source=I.source,this.sourceLayer=I["source-layer"],this.filter=I.filter),U.layout&&(this._unevaluatedLayout=new bu(U.layout)),U.paint)){this._transitionablePaint=new Uo(U.paint);for(var $ in I.paint)this.setPaintProperty($,I.paint[$],{validate:!1});for(var ae in I.layout)this.setLayoutProperty(ae,I.layout[ae],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Sc(U.paint)}}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},y.prototype.getLayoutProperty=function(U){return U==="visibility"?this.visibility:this._unevaluatedLayout.getValue(U)},y.prototype.setLayoutProperty=function(U,$,ae){if(ae===void 0&&(ae={}),$!=null){var he="layers."+this.id+".layout."+U;if(this._validate(Ul,he,U,$,ae))return}if(U==="visibility"){this.visibility=$;return}this._unevaluatedLayout.setValue(U,$)},y.prototype.getPaintProperty=function(U){return V(U,Gr)?this._transitionablePaint.getTransition(U.slice(0,-Gr.length)):this._transitionablePaint.getValue(U)},y.prototype.setPaintProperty=function(U,$,ae){if(ae===void 0&&(ae={}),$!=null){var he="layers."+this.id+".paint."+U;if(this._validate(hl,he,U,$,ae))return!1}if(V(U,Gr))return this._transitionablePaint.setTransition(U.slice(0,-Gr.length),$||void 0),!1;var Oe=this._transitionablePaint._values[U],rt=Oe.property.specification["property-type"]==="cross-faded-data-driven",gt=Oe.value.isDataDriven(),Et=Oe.value;this._transitionablePaint.setValue(U,$),this._handleSpecialPaintPropertyUpdate(U);var or=this._transitionablePaint._values[U].value,_r=or.isDataDriven();return _r||gt||rt||this._handleOverridablePaintPropertyUpdate(U,Et,or)},y.prototype._handleSpecialPaintPropertyUpdate=function(U){},y.prototype._handleOverridablePaintPropertyUpdate=function(U,$,ae){return!1},y.prototype.isHidden=function(U){return this.minzoom&&U=this.maxzoom?!0:this.visibility==="none"},y.prototype.updateTransitions=function(U){this._transitioningPaint=this._transitionablePaint.transitioned(U,this._transitioningPaint)},y.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},y.prototype.recalculate=function(U,$){U.getCrossfadeParameters&&(this._crossfadeParameters=U.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(U,void 0,$)),this.paint=this._transitioningPaint.possiblyEvaluate(U,void 0,$)},y.prototype.serialize=function(){var U={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(U.layout=U.layout||{},U.layout.visibility=this.visibility),Z(U,function($,ae){return $!==void 0&&!(ae==="layout"&&!Object.keys($).length)&&!(ae==="paint"&&!Object.keys($).length)})},y.prototype._validate=function(U,$,ae,he,Oe){return Oe===void 0&&(Oe={}),Oe&&Oe.validate===!1?!1:Lu(this,U.call(wo,{key:$,layerType:this.type,objectKey:ae,value:he,styleSpec:Rn,style:{glyphs:!0,sprite:!0}}))},y.prototype.is3D=function(){return!1},y.prototype.isTileClipped=function(){return!1},y.prototype.hasOffscreenPass=function(){return!1},y.prototype.resize=function(){},y.prototype.isStateDependent=function(){for(var U in this.paint._values){var $=this.paint.get(U);if(!(!($ instanceof dl)||!Ws($.property.specification))&&($.value.kind==="source"||$.value.kind==="composite")&&$.value.isStateDependent)return!0}return!1},y}(Wn),Ui={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},qi=function(y,I){this._structArray=y,this._pos1=I*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},Ei=128,Hn=5,en=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};en.serialize=function(y,I){return y._trim(),I&&(y.isTransferred=!0,I.push(y.arrayBuffer)),{length:y.length,arrayBuffer:y.arrayBuffer}},en.deserialize=function(y){var I=Object.create(this.prototype);return I.arrayBuffer=y.arrayBuffer,I.length=y.length,I.capacity=y.arrayBuffer.byteLength/I.bytesPerElement,I._refreshViews(),I},en.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},en.prototype.clear=function(){this.length=0},en.prototype.resize=function(y){this.reserve(y),this.length=y},en.prototype.reserve=function(y){if(y>this.capacity){this.capacity=Math.max(y,Math.floor(this.capacity*Hn),Ei),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var I=this.uint8;this._refreshViews(),I&&this.uint8.set(I)}},en.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};function Wi(m,y){y===void 0&&(y=1);var I=0,U=0,$=m.map(function(he){var Oe=si(he.type),rt=I=Mr(I,Math.max(y,Oe)),gt=he.components||1;return U=Math.max(U,Oe),I+=Oe*gt,{name:he.name,type:he.type,components:gt,offset:rt}}),ae=Mr(I,Math.max(U,y));return{members:$,size:ae,alignment:y}}function si(m){return Ui[m].BYTES_PER_ELEMENT}function Mr(m,y){return Math.ceil(m/y)*y}var Yr=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$){var ae=this.length;return this.resize(ae+1),this.emplace(ae,U,$)},y.prototype.emplace=function(U,$,ae){var he=U*2;return this.int16[he+0]=$,this.int16[he+1]=ae,U},y}(en);Yr.prototype.bytesPerElement=4,X("StructArrayLayout2i4",Yr);var xi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,U,$,ae,he)},y.prototype.emplace=function(U,$,ae,he,Oe){var rt=U*4;return this.int16[rt+0]=$,this.int16[rt+1]=ae,this.int16[rt+2]=he,this.int16[rt+3]=Oe,U},y}(en);xi.prototype.bytesPerElement=8,X("StructArrayLayout4i8",xi);var Ri=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt){var gt=this.length;return this.resize(gt+1),this.emplace(gt,U,$,ae,he,Oe,rt)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt){var Et=U*6;return this.int16[Et+0]=$,this.int16[Et+1]=ae,this.int16[Et+2]=he,this.int16[Et+3]=Oe,this.int16[Et+4]=rt,this.int16[Et+5]=gt,U},y}(en);Ri.prototype.bytesPerElement=12,X("StructArrayLayout2i4i12",Ri);var ci=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt){var gt=this.length;return this.resize(gt+1),this.emplace(gt,U,$,ae,he,Oe,rt)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt){var Et=U*4,or=U*8;return this.int16[Et+0]=$,this.int16[Et+1]=ae,this.uint8[or+4]=he,this.uint8[or+5]=Oe,this.uint8[or+6]=rt,this.uint8[or+7]=gt,U},y}(en);ci.prototype.bytesPerElement=8,X("StructArrayLayout2i4ub8",ci);var an=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$){var ae=this.length;return this.resize(ae+1),this.emplace(ae,U,$)},y.prototype.emplace=function(U,$,ae){var he=U*2;return this.float32[he+0]=$,this.float32[he+1]=ae,U},y}(en);an.prototype.bytesPerElement=8,X("StructArrayLayout2f8",an);var Zi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or,_r){var pr=this.length;return this.resize(pr+1),this.emplace(pr,U,$,ae,he,Oe,rt,gt,Et,or,_r)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr){var Fr=U*10;return this.uint16[Fr+0]=$,this.uint16[Fr+1]=ae,this.uint16[Fr+2]=he,this.uint16[Fr+3]=Oe,this.uint16[Fr+4]=rt,this.uint16[Fr+5]=gt,this.uint16[Fr+6]=Et,this.uint16[Fr+7]=or,this.uint16[Fr+8]=_r,this.uint16[Fr+9]=pr,U},y}(en);Zi.prototype.bytesPerElement=20,X("StructArrayLayout10ui20",Zi);var Bn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr){var oi=this.length;return this.resize(oi+1),this.emplace(oi,U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi){var Hi=U*12;return this.int16[Hi+0]=$,this.int16[Hi+1]=ae,this.int16[Hi+2]=he,this.int16[Hi+3]=Oe,this.uint16[Hi+4]=rt,this.uint16[Hi+5]=gt,this.uint16[Hi+6]=Et,this.uint16[Hi+7]=or,this.int16[Hi+8]=_r,this.int16[Hi+9]=pr,this.int16[Hi+10]=Fr,this.int16[Hi+11]=oi,U},y}(en);Bn.prototype.bytesPerElement=24,X("StructArrayLayout4i4ui4i24",Bn);var hi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*3;return this.float32[Oe+0]=$,this.float32[Oe+1]=ae,this.float32[Oe+2]=he,U},y}(en);hi.prototype.bytesPerElement=12,X("StructArrayLayout3f12",hi);var li=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var $=this.length;return this.resize($+1),this.emplace($,U)},y.prototype.emplace=function(U,$){var ae=U*1;return this.uint32[ae+0]=$,U},y}(en);li.prototype.bytesPerElement=4,X("StructArrayLayout1ul4",li);var mn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or){var _r=this.length;return this.resize(_r+1),this.emplace(_r,U,$,ae,he,Oe,rt,gt,Et,or)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r){var pr=U*10,Fr=U*5;return this.int16[pr+0]=$,this.int16[pr+1]=ae,this.int16[pr+2]=he,this.int16[pr+3]=Oe,this.int16[pr+4]=rt,this.int16[pr+5]=gt,this.uint32[Fr+3]=Et,this.uint16[pr+8]=or,this.uint16[pr+9]=_r,U},y}(en);mn.prototype.bytesPerElement=20,X("StructArrayLayout6i1ul2ui20",mn);var Ji=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt){var gt=this.length;return this.resize(gt+1),this.emplace(gt,U,$,ae,he,Oe,rt)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt){var Et=U*6;return this.int16[Et+0]=$,this.int16[Et+1]=ae,this.int16[Et+2]=he,this.int16[Et+3]=Oe,this.int16[Et+4]=rt,this.int16[Et+5]=gt,U},y}(en);Ji.prototype.bytesPerElement=12,X("StructArrayLayout2i2i2i12",Ji);var Vi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe){var rt=this.length;return this.resize(rt+1),this.emplace(rt,U,$,ae,he,Oe)},y.prototype.emplace=function(U,$,ae,he,Oe,rt){var gt=U*4,Et=U*8;return this.float32[gt+0]=$,this.float32[gt+1]=ae,this.float32[gt+2]=he,this.int16[Et+6]=Oe,this.int16[Et+7]=rt,U},y}(en);Vi.prototype.bytesPerElement=16,X("StructArrayLayout2f1f2i16",Vi);var Ni=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,U,$,ae,he)},y.prototype.emplace=function(U,$,ae,he,Oe){var rt=U*12,gt=U*3;return this.uint8[rt+0]=$,this.uint8[rt+1]=ae,this.float32[gt+1]=he,this.float32[gt+2]=Oe,U},y}(en);Ni.prototype.bytesPerElement=12,X("StructArrayLayout2ub2f12",Ni);var pn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*3;return this.uint16[Oe+0]=$,this.uint16[Oe+1]=ae,this.uint16[Oe+2]=he,U},y}(en);pn.prototype.bytesPerElement=6,X("StructArrayLayout3ui6",pn);var Vn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn){var xn=this.length;return this.resize(xn+1),this.emplace(xn,U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn,xn){var Pn=U*24,Zn=U*12,ga=U*48;return this.int16[Pn+0]=$,this.int16[Pn+1]=ae,this.uint16[Pn+2]=he,this.uint16[Pn+3]=Oe,this.uint32[Zn+2]=rt,this.uint32[Zn+3]=gt,this.uint32[Zn+4]=Et,this.uint16[Pn+10]=or,this.uint16[Pn+11]=_r,this.uint16[Pn+12]=pr,this.float32[Zn+7]=Fr,this.float32[Zn+8]=oi,this.uint8[ga+36]=Hi,this.uint8[ga+37]=Ai,this.uint8[ga+38]=bn,this.uint32[Zn+10]=nn,this.int16[Pn+22]=xn,U},y}(en);Vn.prototype.bytesPerElement=48,X("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Vn);var na=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn,xn,Pn,Zn,ga,ha,eo,za,Za,Ko,to,ao){var _s=this.length;return this.resize(_s+1),this.emplace(_s,U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn,xn,Pn,Zn,ga,ha,eo,za,Za,Ko,to,ao)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn,xn,Pn,Zn,ga,ha,eo,za,Za,Ko,to,ao,_s){var jo=U*34,El=U*17;return this.int16[jo+0]=$,this.int16[jo+1]=ae,this.int16[jo+2]=he,this.int16[jo+3]=Oe,this.int16[jo+4]=rt,this.int16[jo+5]=gt,this.int16[jo+6]=Et,this.int16[jo+7]=or,this.uint16[jo+8]=_r,this.uint16[jo+9]=pr,this.uint16[jo+10]=Fr,this.uint16[jo+11]=oi,this.uint16[jo+12]=Hi,this.uint16[jo+13]=Ai,this.uint16[jo+14]=bn,this.uint16[jo+15]=nn,this.uint16[jo+16]=xn,this.uint16[jo+17]=Pn,this.uint16[jo+18]=Zn,this.uint16[jo+19]=ga,this.uint16[jo+20]=ha,this.uint16[jo+21]=eo,this.uint16[jo+22]=za,this.uint32[El+12]=Za,this.float32[El+13]=Ko,this.float32[El+14]=to,this.float32[El+15]=ao,this.float32[El+16]=_s,U},y}(en);na.prototype.bytesPerElement=68,X("StructArrayLayout8i15ui1ul4f68",na);var Ki=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var $=this.length;return this.resize($+1),this.emplace($,U)},y.prototype.emplace=function(U,$){var ae=U*1;return this.float32[ae+0]=$,U},y}(en);Ki.prototype.bytesPerElement=4,X("StructArrayLayout1f4",Ki);var kn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*3;return this.int16[Oe+0]=$,this.int16[Oe+1]=ae,this.int16[Oe+2]=he,U},y}(en);kn.prototype.bytesPerElement=6,X("StructArrayLayout3i6",kn);var ta=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*2,rt=U*4;return this.uint32[Oe+0]=$,this.uint16[rt+2]=ae,this.uint16[rt+3]=he,U},y}(en);ta.prototype.bytesPerElement=8,X("StructArrayLayout1ul2ui8",ta);var oa=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$){var ae=this.length;return this.resize(ae+1),this.emplace(ae,U,$)},y.prototype.emplace=function(U,$,ae){var he=U*2;return this.uint16[he+0]=$,this.uint16[he+1]=ae,U},y}(en);oa.prototype.bytesPerElement=4,X("StructArrayLayout2ui4",oa);var ba=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var $=this.length;return this.resize($+1),this.emplace($,U)},y.prototype.emplace=function(U,$){var ae=U*1;return this.uint16[ae+0]=$,U},y}(en);ba.prototype.bytesPerElement=2,X("StructArrayLayout1ui2",ba);var is=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,U,$,ae,he)},y.prototype.emplace=function(U,$,ae,he,Oe){var rt=U*4;return this.float32[rt+0]=$,this.float32[rt+1]=ae,this.float32[rt+2]=he,this.float32[rt+3]=Oe,U},y}(en);is.prototype.bytesPerElement=16,X("StructArrayLayout4f16",is);var Zs=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return I.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},I.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},I.x1.get=function(){return this._structArray.int16[this._pos2+2]},I.y1.get=function(){return this._structArray.int16[this._pos2+3]},I.x2.get=function(){return this._structArray.int16[this._pos2+4]},I.y2.get=function(){return this._structArray.int16[this._pos2+5]},I.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},I.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},I.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},I.anchorPoint.get=function(){return new u(this.anchorPointX,this.anchorPointY)},Object.defineProperties(y.prototype,I),y}(qi);Zs.prototype.size=20;var Va=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Zs(this,U)},y}(mn);X("CollisionBoxArray",Va);var Ml=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return I.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},I.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},I.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},I.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},I.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},I.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},I.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},I.segment.get=function(){return this._structArray.uint16[this._pos2+10]},I.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},I.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},I.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},I.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},I.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},I.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},I.placedOrientation.set=function(U){this._structArray.uint8[this._pos1+37]=U},I.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},I.hidden.set=function(U){this._structArray.uint8[this._pos1+38]=U},I.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},I.crossTileID.set=function(U){this._structArray.uint32[this._pos4+10]=U},I.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(y.prototype,I),y}(qi);Ml.prototype.size=48;var zo=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Ml(this,U)},y}(Vn);X("PlacedSymbolArray",zo);var Qs=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return I.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},I.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},I.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},I.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},I.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},I.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},I.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},I.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},I.key.get=function(){return this._structArray.uint16[this._pos2+8]},I.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},I.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},I.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},I.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},I.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},I.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},I.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},I.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},I.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},I.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},I.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},I.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},I.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},I.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},I.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},I.crossTileID.set=function(U){this._structArray.uint32[this._pos4+12]=U},I.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},I.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},I.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},I.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(y.prototype,I),y}(qi);Qs.prototype.size=68;var al=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Qs(this,U)},y}(na);X("SymbolInstanceArray",al);var Vl=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.getoffsetX=function(U){return this.float32[U*1+0]},y}(Ki);X("GlyphOffsetArray",Vl);var ss=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.getx=function(U){return this.int16[U*3+0]},y.prototype.gety=function(U){return this.int16[U*3+1]},y.prototype.gettileUnitDistanceFromAnchor=function(U){return this.int16[U*3+2]},y}(kn);X("SymbolLineVertexArray",ss);var Vs=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return I.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},I.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},I.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(y.prototype,I),y}(qi);Vs.prototype.size=8;var Ys=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Vs(this,U)},y}(ta);X("FeatureIndexArray",Ys);var wa=Wi([{name:"a_pos",components:2,type:"Int16"}],4),ol=wa.members,io=function(y){y===void 0&&(y=[]),this.segments=y};io.prototype.prepareSegment=function(y,I,U,$){var ae=this.segments[this.segments.length-1];return y>io.MAX_VERTEX_ARRAY_LENGTH&&re("Max vertices per segment is "+io.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+y),(!ae||ae.vertexLength+y>io.MAX_VERTEX_ARRAY_LENGTH||ae.sortKey!==$)&&(ae={vertexOffset:I.length,primitiveOffset:U.length,vertexLength:0,primitiveLength:0},$!==void 0&&(ae.sortKey=$),this.segments.push(ae)),ae},io.prototype.get=function(){return this.segments},io.prototype.destroy=function(){for(var y=0,I=this.segments;y>>16)*rt&65535)<<16)&4294967295,Et=Et<<15|Et>>>17,Et=(Et&65535)*gt+(((Et>>>16)*gt&65535)<<16)&4294967295,he^=Et,he=he<<13|he>>>19,Oe=(he&65535)*5+(((he>>>16)*5&65535)<<16)&4294967295,he=(Oe&65535)+27492+(((Oe>>>16)+58964&65535)<<16);switch(Et=0,$){case 3:Et^=(I.charCodeAt(or+2)&255)<<16;case 2:Et^=(I.charCodeAt(or+1)&255)<<8;case 1:Et^=I.charCodeAt(or)&255,Et=(Et&65535)*rt+(((Et>>>16)*rt&65535)<<16)&4294967295,Et=Et<<15|Et>>>17,Et=(Et&65535)*gt+(((Et>>>16)*gt&65535)<<16)&4294967295,he^=Et}return he^=I.length,he^=he>>>16,he=(he&65535)*2246822507+(((he>>>16)*2246822507&65535)<<16)&4294967295,he^=he>>>13,he=(he&65535)*3266489909+(((he>>>16)*3266489909&65535)<<16)&4294967295,he^=he>>>16,he>>>0}m.exports=y}),q=a(function(m){function y(I,U){for(var $=I.length,ae=U^$,he=0,Oe;$>=4;)Oe=I.charCodeAt(he)&255|(I.charCodeAt(++he)&255)<<8|(I.charCodeAt(++he)&255)<<16|(I.charCodeAt(++he)&255)<<24,Oe=(Oe&65535)*1540483477+(((Oe>>>16)*1540483477&65535)<<16),Oe^=Oe>>>24,Oe=(Oe&65535)*1540483477+(((Oe>>>16)*1540483477&65535)<<16),ae=(ae&65535)*1540483477+(((ae>>>16)*1540483477&65535)<<16)^Oe,$-=4,++he;switch($){case 3:ae^=(I.charCodeAt(he+2)&255)<<16;case 2:ae^=(I.charCodeAt(he+1)&255)<<8;case 1:ae^=I.charCodeAt(he)&255,ae=(ae&65535)*1540483477+(((ae>>>16)*1540483477&65535)<<16)}return ae^=ae>>>13,ae=(ae&65535)*1540483477+(((ae>>>16)*1540483477&65535)<<16),ae^=ae>>>15,ae>>>0}m.exports=y}),K=J,de=J,ne=q;K.murmur3=de,K.murmur2=ne;var we=function(){this.ids=[],this.positions=[],this.indexed=!1};we.prototype.add=function(y,I,U,$){this.ids.push(ft(y)),this.positions.push(I,U,$)},we.prototype.getPositions=function(y){for(var I=ft(y),U=0,$=this.ids.length-1;U<$;){var ae=U+$>>1;this.ids[ae]>=I?$=ae:U=ae+1}for(var he=[];this.ids[U]===I;){var Oe=this.positions[3*U],rt=this.positions[3*U+1],gt=this.positions[3*U+2];he.push({index:Oe,start:rt,end:gt}),U++}return he},we.serialize=function(y,I){var U=new Float64Array(y.ids),$=new Uint32Array(y.positions);return Xt(U,$,0,U.length-1),I&&I.push(U.buffer,$.buffer),{ids:U,positions:$}},we.deserialize=function(y){var I=new we;return I.ids=y.ids,I.positions=y.positions,I.indexed=!0,I};var Ue=Math.pow(2,53)-1;function ft(m){var y=+m;return!isNaN(y)&&y<=Ue?y:K(String(m))}function Xt(m,y,I,U){for(;I>1],ae=I-1,he=U+1;;){do ae++;while(m[ae]<$);do he--;while(m[he]>$);if(ae>=he)break;hr(m,ae,he),hr(y,3*ae,3*he),hr(y,3*ae+1,3*he+1),hr(y,3*ae+2,3*he+2)}he-Ihe.x+1||rthe.y+1)&&re("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return I}function Ja(m,y){return{type:m.type,id:m.id,properties:m.properties,geometry:y?zn(m):[]}}function co(m,y,I,U,$){m.emplaceBack(y*2+(U+1)/2,I*2+($+1)/2)}var ts=function(y){this.zoom=y.zoom,this.overscaling=y.overscaling,this.layers=y.layers,this.layerIds=this.layers.map(function(I){return I.id}),this.index=y.index,this.hasPattern=!1,this.layoutVertexArray=new Yr,this.indexArray=new pn,this.segments=new io,this.programConfigurations=new fi(y.layers,y.zoom),this.stateDependentLayerIds=this.layers.filter(function(I){return I.isStateDependent()}).map(function(I){return I.id})};ts.prototype.populate=function(y,I,U){var $=this.layers[0],ae=[],he=null;$.type==="circle"&&(he=$.layout.get("circle-sort-key"));for(var Oe=0,rt=y;Oe=Ci||_r<0||_r>=Ci)){var pr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,y.sortKey),Fr=pr.vertexLength;co(this.layoutVertexArray,or,_r,-1,-1),co(this.layoutVertexArray,or,_r,1,-1),co(this.layoutVertexArray,or,_r,1,1),co(this.layoutVertexArray,or,_r,-1,1),this.indexArray.emplaceBack(Fr,Fr+1,Fr+2),this.indexArray.emplaceBack(Fr,Fr+3,Fr+2),pr.vertexLength+=4,pr.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,y,U,{},$)},X("CircleBucket",ts,{omit:["layers"]});function so(m,y){for(var I=0;I=3){for(var ae=0;ae<$.length;ae++)if(Td(m,$[ae]))return!0}if(Cv(m,$,I))return!0}return!1}function Cv(m,y,I){if(m.length>1){if(Lv(m,y))return!0;for(var U=0;U1?m.distSqr(I):m.distSqr(I.sub(y)._mult($)._add(y))}function pp(m,y){for(var I=!1,U,$,ae,he=0;hey.y!=ae.y>y.y&&y.x<(ae.x-$.x)*(y.y-$.y)/(ae.y-$.y)+$.x&&(I=!I)}return I}function Td(m,y){for(var I=!1,U=0,$=m.length-1;Uy.y!=he.y>y.y&&y.x<(he.x-ae.x)*(y.y-ae.y)/(he.y-ae.y)+ae.x&&(I=!I)}return I}function gp(m,y,I,U,$){for(var ae=0,he=m;ae=Oe.x&&$>=Oe.y)return!0}var rt=[new u(y,I),new u(y,$),new u(U,$),new u(U,I)];if(m.length>2)for(var gt=0,Et=rt;gt$.x&&y.x>$.x||m.y$.y&&y.y>$.y)return!1;var ae=oe(m,y,I[0]);return ae!==oe(m,y,I[1])||ae!==oe(m,y,I[2])||ae!==oe(m,y,I[3])}function Ad(m,y,I){var U=y.paint.get(m).value;return U.kind==="constant"?U.value:I.programConfigurations.get(y.id).getMaxValue(m)}function Pv(m){return Math.sqrt(m[0]*m[0]+m[1]*m[1])}function Jv(m,y,I,U,$){if(!y[0]&&!y[1])return m;var ae=u.convert(y)._mult($);I==="viewport"&&ae._rotate(-U);for(var he=[],Oe=0;Oe0&&(ae=1/Math.sqrt(ae)),m[0]=y[0]*ae,m[1]=y[1]*ae,m[2]=y[2]*ae,m}function O9(m,y){return m[0]*y[0]+m[1]*y[1]+m[2]*y[2]}function q9(m,y,I){var U=y[0],$=y[1],ae=y[2],he=I[0],Oe=I[1],rt=I[2];return m[0]=$*rt-ae*Oe,m[1]=ae*he-U*rt,m[2]=U*Oe-$*he,m}function B9(m,y,I){var U=y[0],$=y[1],ae=y[2];return m[0]=U*I[0]+$*I[3]+ae*I[6],m[1]=U*I[1]+$*I[4]+ae*I[7],m[2]=U*I[2]+$*I[5]+ae*I[8],m}var N9=om,CQ=function(){var m=am();return function(y,I,U,$,ae,he){var Oe,rt;for(I||(I=3),U||(U=0),$?rt=Math.min($*I+U,y.length):rt=y.length,Oe=U;Oem.width||$.height>m.height||I.x>m.width-$.width||I.y>m.height-$.height)throw new RangeError("out of range source coordinates for image copy");if($.width>y.width||$.height>y.height||U.x>y.width-$.width||U.y>y.height-$.height)throw new RangeError("out of range destination coordinates for image copy");for(var he=m.data,Oe=y.data,rt=0;rt<$.height;rt++)for(var gt=((I.y+rt)*m.width+I.x)*ae,Et=((U.y+rt)*y.width+U.x)*ae,or=0;or<$.width*ae;or++)Oe[Et+or]=he[gt+or];return y}var Dv=function(y,I){Md(this,y,1,I)};Dv.prototype.resize=function(y){Cw(this,y,1)},Dv.prototype.clone=function(){return new Dv({width:this.width,height:this.height},new Uint8Array(this.data))},Dv.copy=function(y,I,U,$,ae){Lw(y,I,U,$,ae,1)};var Sh=function(y,I){Md(this,y,4,I)};Sh.prototype.resize=function(y){Cw(this,y,4)},Sh.prototype.replace=function(y,I){I?this.data.set(y):y instanceof Uint8ClampedArray?this.data=new Uint8Array(y.buffer):this.data=y},Sh.prototype.clone=function(){return new Sh({width:this.width,height:this.height},new Uint8Array(this.data))},Sh.copy=function(y,I,U,$,ae){Lw(y,I,U,$,ae,4)},X("AlphaImage",Dv),X("RGBAImage",Sh);var Gx=new Nr({"heatmap-radius":new bt(Rn.paint_heatmap["heatmap-radius"]),"heatmap-weight":new bt(Rn.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Me(Rn.paint_heatmap["heatmap-intensity"]),"heatmap-color":new jr(Rn.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Me(Rn.paint_heatmap["heatmap-opacity"])}),A1={paint:Gx};function Hx(m){var y={},I=m.resolution||256,U=m.clips?m.clips.length:1,$=m.image||new Sh({width:I,height:U}),ae=function(bn,nn,xn){y[m.evaluationKey]=xn;var Pn=m.expression.evaluate(y);$.data[bn+nn+0]=Math.floor(Pn.r*255/Pn.a),$.data[bn+nn+1]=Math.floor(Pn.g*255/Pn.a),$.data[bn+nn+2]=Math.floor(Pn.b*255/Pn.a),$.data[bn+nn+3]=Math.floor(Pn.a*255)};if(m.clips)for(var gt=0,Et=0;gt80*I){Oe=gt=m[0],rt=Et=m[1];for(var Fr=I;Fr<$;Fr+=I)or=m[Fr],_r=m[Fr+1],orgt&&(gt=or),_r>Et&&(Et=_r);pr=Math.max(gt-Oe,Et-rt),pr=pr!==0?1/pr:0}return jx(ae,he,I,Oe,rt,pr),he}function Rw(m,y,I,U,$){var ae,he;if($===hS(m,y,I,U)>0)for(ae=y;ae=y;ae-=U)he=EC(ae,m[ae],m[ae+1],he);return he&&Xx(he,he.next)&&(Kx(he),he=he.next),he}function sm(m,y){if(!m)return m;y||(y=m);var I=m,U;do if(U=!1,!I.steiner&&(Xx(I,I.next)||Tf(I.prev,I,I.next)===0)){if(Kx(I),I=y=I.prev,I===I.next)break;U=!0}else I=I.next;while(U||I!==y);return y}function jx(m,y,I,U,$,ae,he){if(m){!he&&ae&&Dw(m,U,$,ae);for(var Oe=m,rt,gt;m.prev!==m.next;){if(rt=m.prev,gt=m.next,ae?AC(m,U,$,ae):TC(m)){y.push(rt.i/I),y.push(m.i/I),y.push(gt.i/I),Kx(m),m=gt.next,Oe=gt.next;continue}if(m=gt,m===Oe){he?he===1?(m=Wx(sm(m),y,I),jx(m,y,I,U,$,ae,2)):he===2&&d0(m,y,I,U,$,ae):jx(sm(m),y,I,U,$,ae,1);break}}}}function TC(m){var y=m.prev,I=m,U=m.next;if(Tf(y,I,U)>=0)return!1;for(var $=m.next.next;$!==m.prev;){if(um(y.x,y.y,I.x,I.y,U.x,U.y,$.x,$.y)&&Tf($.prev,$,$.next)>=0)return!1;$=$.next}return!0}function AC(m,y,I,U){var $=m.prev,ae=m,he=m.next;if(Tf($,ae,he)>=0)return!1;for(var Oe=$.xae.x?$.x>he.x?$.x:he.x:ae.x>he.x?ae.x:he.x,Et=$.y>ae.y?$.y>he.y?$.y:he.y:ae.y>he.y?ae.y:he.y,or=lS(Oe,rt,y,I,U),_r=lS(gt,Et,y,I,U),pr=m.prevZ,Fr=m.nextZ;pr&&pr.z>=or&&Fr&&Fr.z<=_r;){if(pr!==m.prev&&pr!==m.next&&um($.x,$.y,ae.x,ae.y,he.x,he.y,pr.x,pr.y)&&Tf(pr.prev,pr,pr.next)>=0||(pr=pr.prevZ,Fr!==m.prev&&Fr!==m.next&&um($.x,$.y,ae.x,ae.y,he.x,he.y,Fr.x,Fr.y)&&Tf(Fr.prev,Fr,Fr.next)>=0))return!1;Fr=Fr.nextZ}for(;pr&&pr.z>=or;){if(pr!==m.prev&&pr!==m.next&&um($.x,$.y,ae.x,ae.y,he.x,he.y,pr.x,pr.y)&&Tf(pr.prev,pr,pr.next)>=0)return!1;pr=pr.prevZ}for(;Fr&&Fr.z<=_r;){if(Fr!==m.prev&&Fr!==m.next&&um($.x,$.y,ae.x,ae.y,he.x,he.y,Fr.x,Fr.y)&&Tf(Fr.prev,Fr,Fr.next)>=0)return!1;Fr=Fr.nextZ}return!0}function Wx(m,y,I){var U=m;do{var $=U.prev,ae=U.next.next;!Xx($,ae)&&Fw($,U,U.next,ae)&&Yx($,ae)&&Yx(ae,$)&&(y.push($.i/I),y.push(U.i/I),y.push(ae.i/I),Kx(U),Kx(U.next),U=m=ae),U=U.next}while(U!==m);return sm(U)}function d0(m,y,I,U,$,ae){var he=m;do{for(var Oe=he.next.next;Oe!==he.prev;){if(he.i!==Oe.i&&M1(he,Oe)){var rt=cS(he,Oe);he=sm(he,he.next),rt=sm(rt,rt.next),jx(he,y,I,U,$,ae),jx(rt,y,I,U,$,ae);return}Oe=Oe.next}he=he.next}while(he!==m)}function lm(m,y,I,U){var $=[],ae,he,Oe,rt,gt;for(ae=0,he=y.length;ae=I.next.y&&I.next.y!==I.y){var Oe=I.x+($-I.y)*(I.next.x-I.x)/(I.next.y-I.y);if(Oe<=U&&Oe>ae){if(ae=Oe,Oe===U){if($===I.y)return I;if($===I.next.y)return I.next}he=I.x=I.x&&I.x>=gt&&U!==I.x&&um($he.x||I.x===he.x&&Y9(he,I)))&&(he=I,or=_r)),I=I.next;while(I!==rt);return he}function Y9(m,y){return Tf(m.prev,m,y.prev)<0&&Tf(y.next,m,m.next)<0}function Dw(m,y,I,U){var $=m;do $.z===null&&($.z=lS($.x,$.y,y,I,U)),$.prevZ=$.prev,$.nextZ=$.next,$=$.next;while($!==m);$.prevZ.nextZ=null,$.prevZ=null,sS($)}function sS(m){var y,I,U,$,ae,he,Oe,rt,gt=1;do{for(I=m,m=null,ae=null,he=0;I;){for(he++,U=I,Oe=0,y=0;y0||rt>0&&U;)Oe!==0&&(rt===0||!U||I.z<=U.z)?($=I,I=I.nextZ,Oe--):($=U,U=U.nextZ,rt--),ae?ae.nextZ=$:m=$,$.prevZ=ae,ae=$;I=U}ae.nextZ=null,gt*=2}while(he>1);return m}function lS(m,y,I,U,$){return m=32767*(m-I)*$,y=32767*(y-U)*$,m=(m|m<<8)&16711935,m=(m|m<<4)&252645135,m=(m|m<<2)&858993459,m=(m|m<<1)&1431655765,y=(y|y<<8)&16711935,y=(y|y<<4)&252645135,y=(y|y<<2)&858993459,y=(y|y<<1)&1431655765,m|y<<1}function uS(m){var y=m,I=m;do(y.x=0&&(m-he)*(U-Oe)-(I-he)*(y-Oe)>=0&&(I-he)*(ae-Oe)-($-he)*(U-Oe)>=0}function M1(m,y){return m.next.i!==y.i&&m.prev.i!==y.i&&!MC(m,y)&&(Yx(m,y)&&Yx(y,m)&&K9(m,y)&&(Tf(m.prev,m,y.prev)||Tf(m,y.prev,y))||Xx(m,y)&&Tf(m.prev,m,m.next)>0&&Tf(y.prev,y,y.next)>0)}function Tf(m,y,I){return(y.y-m.y)*(I.x-y.x)-(y.x-m.x)*(I.y-y.y)}function Xx(m,y){return m.x===y.x&&m.y===y.y}function Fw(m,y,I,U){var $=cy(Tf(m,y,I)),ae=cy(Tf(m,y,U)),he=cy(Tf(I,U,m)),Oe=cy(Tf(I,U,y));return!!($!==ae&&he!==Oe||$===0&&Zx(m,I,y)||ae===0&&Zx(m,U,y)||he===0&&Zx(I,m,U)||Oe===0&&Zx(I,y,U))}function Zx(m,y,I){return y.x<=Math.max(m.x,I.x)&&y.x>=Math.min(m.x,I.x)&&y.y<=Math.max(m.y,I.y)&&y.y>=Math.min(m.y,I.y)}function cy(m){return m>0?1:m<0?-1:0}function MC(m,y){var I=m;do{if(I.i!==m.i&&I.next.i!==m.i&&I.i!==y.i&&I.next.i!==y.i&&Fw(I,I.next,m,y))return!0;I=I.next}while(I!==m);return!1}function Yx(m,y){return Tf(m.prev,m,m.next)<0?Tf(m,y,m.next)>=0&&Tf(m,m.prev,y)>=0:Tf(m,y,m.prev)<0||Tf(m,m.next,y)<0}function K9(m,y){var I=m,U=!1,$=(m.x+y.x)/2,ae=(m.y+y.y)/2;do I.y>ae!=I.next.y>ae&&I.next.y!==I.y&&$<(I.next.x-I.x)*(ae-I.y)/(I.next.y-I.y)+I.x&&(U=!U),I=I.next;while(I!==m);return U}function cS(m,y){var I=new fS(m.i,m.x,m.y),U=new fS(y.i,y.x,y.y),$=m.next,ae=y.prev;return m.next=y,y.prev=m,I.next=$,$.prev=I,U.next=I,I.prev=U,ae.next=U,U.prev=ae,U}function EC(m,y,I,U){var $=new fS(m,y,I);return U?($.next=U.next,$.prev=U,U.next.prev=$,U.next=$):($.prev=$,$.next=$),$}function Kx(m){m.next.prev=m.prev,m.prev.next=m.next,m.prevZ&&(m.prevZ.nextZ=m.nextZ),m.nextZ&&(m.nextZ.prevZ=m.prevZ)}function fS(m,y,I){this.i=m,this.x=y,this.y=I,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}S1.deviation=function(m,y,I,U){var $=y&&y.length,ae=$?y[0]*I:m.length,he=Math.abs(hS(m,0,ae,I));if($)for(var Oe=0,rt=y.length;Oe0&&(U+=m[$-1].length,I.holes.push(U))}return I},Iw.default=wC;function dS(m,y,I,U,$){dg(m,y,I||0,U||m.length-1,$||kC)}function dg(m,y,I,U,$){for(;U>I;){if(U-I>600){var ae=U-I+1,he=y-I+1,Oe=Math.log(ae),rt=.5*Math.exp(2*Oe/3),gt=.5*Math.sqrt(Oe*rt*(ae-rt)/ae)*(he-ae/2<0?-1:1),Et=Math.max(I,Math.floor(y-he*rt/ae+gt)),or=Math.min(U,Math.floor(y+(ae-he)*rt/ae+gt));dg(m,y,Et,or,$)}var _r=m[y],pr=I,Fr=U;for(E1(m,I,y),$(m[U],_r)>0&&E1(m,I,U);pr0;)Fr--}$(m[I],_r)===0?E1(m,I,Fr):(Fr++,E1(m,Fr,U)),Fr<=y&&(I=Fr+1),y<=Fr&&(U=Fr-1)}}function E1(m,y,I){var U=m[y];m[y]=m[I],m[I]=U}function kC(m,y){return my?1:0}function zw(m,y){var I=m.length;if(I<=1)return[m];for(var U=[],$,ae,he=0;he1)for(var rt=0;rt>3}if(U--,I===1||I===2)$+=m.readSVarint(),ae+=m.readSVarint(),I===1&&(Oe&&he.push(Oe),Oe=[]),Oe.push(new u($,ae));else if(I===7)Oe&&Oe.push(Oe[0].clone());else throw new Error("unknown command "+I)}return Oe&&he.push(Oe),he},fy.prototype.bbox=function(){var m=this._pbf;m.pos=this._geometry;for(var y=m.readVarint()+m.pos,I=1,U=0,$=0,ae=0,he=1/0,Oe=-1/0,rt=1/0,gt=-1/0;m.pos>3}if(U--,I===1||I===2)$+=m.readSVarint(),ae+=m.readSVarint(),$Oe&&(Oe=$),aegt&&(gt=ae);else if(I!==7)throw new Error("unknown command "+I)}return[he,rt,Oe,gt]},fy.prototype.toGeoJSON=function(m,y,I){var U=this.extent*Math.pow(2,I),$=this.extent*m,ae=this.extent*y,he=this.loadGeometry(),Oe=fy.types[this.type],rt,gt;function Et(pr){for(var Fr=0;Fr>3;y=U===1?m.readString():U===2?m.readFloat():U===3?m.readDouble():U===4?m.readVarint64():U===5?m.readVarint():U===6?m.readSVarint():U===7?m.readBoolean():null}return y}gS.prototype.feature=function(m){if(m<0||m>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[m];var y=this._pbf.readVarint()+this._pbf.pos;return new pS(this._pbf,y,this.extent,this._keys,this._values)};var qC=$9;function $9(m,y){this.layers=m.readFields(Q9,{},y)}function Q9(m,y,I){if(m===3){var U=new vg(I,I.readVarint()+I.pos);U.length&&(y[U.name]=U)}}var BC=qC,k1=pS,NC=vg,pg={VectorTile:BC,VectorTileFeature:k1,VectorTileLayer:NC},UC=pg.VectorTileFeature.types,qw=500,C1=Math.pow(2,13);function cm(m,y,I,U,$,ae,he,Oe){m.emplaceBack(y,I,Math.floor(U*C1)*2+he,$*C1*2,ae*C1*2,Math.round(Oe))}var Vp=function(y){this.zoom=y.zoom,this.overscaling=y.overscaling,this.layers=y.layers,this.layerIds=this.layers.map(function(I){return I.id}),this.index=y.index,this.hasPattern=!1,this.layoutVertexArray=new Ri,this.indexArray=new pn,this.programConfigurations=new fi(y.layers,y.zoom),this.segments=new io,this.stateDependentLayerIds=this.layers.filter(function(I){return I.isStateDependent()}).map(function(I){return I.id})};Vp.prototype.populate=function(y,I,U){this.features=[],this.hasPattern=Ow("fill-extrusion",this.layers,I);for(var $=0,ae=y;$=1){var xn=Hi[bn-1];if(!eO(nn,xn)){pr.vertexLength+4>io.MAX_VERTEX_ARRAY_LENGTH&&(pr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var Pn=nn.sub(xn)._perp()._unit(),Zn=xn.dist(nn);Ai+Zn>32768&&(Ai=0),cm(this.layoutVertexArray,nn.x,nn.y,Pn.x,Pn.y,0,0,Ai),cm(this.layoutVertexArray,nn.x,nn.y,Pn.x,Pn.y,0,1,Ai),Ai+=Zn,cm(this.layoutVertexArray,xn.x,xn.y,Pn.x,Pn.y,0,0,Ai),cm(this.layoutVertexArray,xn.x,xn.y,Pn.x,Pn.y,0,1,Ai);var ga=pr.vertexLength;this.indexArray.emplaceBack(ga,ga+2,ga+1),this.indexArray.emplaceBack(ga+1,ga+2,ga+3),pr.vertexLength+=4,pr.primitiveLength+=2}}}}if(pr.vertexLength+gt>io.MAX_VERTEX_ARRAY_LENGTH&&(pr=this.segments.prepareSegment(gt,this.layoutVertexArray,this.indexArray)),UC[y.type]==="Polygon"){for(var ha=[],eo=[],za=pr.vertexLength,Za=0,Ko=rt;ZaCi)||m.y===y.y&&(m.y<0||m.y>Ci)}function tO(m){return m.every(function(y){return y.x<0})||m.every(function(y){return y.x>Ci})||m.every(function(y){return y.y<0})||m.every(function(y){return y.y>Ci})}var L1=new Nr({"fill-extrusion-opacity":new Me(Rn["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new bt(Rn["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Me(Rn["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Me(Rn["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new zt(Rn["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new bt(Rn["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new bt(Rn["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Me(Rn["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])}),sd={paint:L1},fm=function(m){function y(I){m.call(this,I,sd)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.createBucket=function(U){return new Vp(U)},y.prototype.queryRadius=function(){return Pv(this.paint.get("fill-extrusion-translate"))},y.prototype.is3D=function(){return!0},y.prototype.queryIntersectsFeature=function(U,$,ae,he,Oe,rt,gt,Et){var or=Jv(U,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),rt.angle,gt),_r=this.paint.get("fill-extrusion-height").evaluate($,ae),pr=this.paint.get("fill-extrusion-base").evaluate($,ae),Fr=rO(or,Et,rt,0),oi=yS(he,pr,_r,Et),Hi=oi[0],Ai=oi[1];return VC(Hi,Ai,Fr)},y}(mi);function hy(m,y){return m.x*y.x+m.y*y.y}function mS(m,y){if(m.length===1){for(var I=0,U=y[I++],$;!$||U.equals($);)if($=y[I++],!$)return 1/0;for(;I=2&&y[gt-1].equals(y[gt-2]);)gt--;for(var Et=0;Et0;if(ha&&bn>Et){var za=pr.dist(Fr);if(za>2*or){var Za=pr.sub(pr.sub(Fr)._mult(or/za)._round());this.updateDistance(Fr,Za),this.addCurrentVertex(Za,Hi,0,0,_r),Fr=Za}}var Ko=Fr&&oi,to=Ko?U:rt?"butt":$;if(Ko&&to==="round"&&(Znae&&(to="bevel"),to==="bevel"&&(Zn>2&&(to="flipbevel"),Zn100)nn=Ai.mult(-1);else{var ao=Zn*Hi.add(Ai).mag()/Hi.sub(Ai).mag();nn._perp()._mult(ao*(eo?-1:1))}this.addCurrentVertex(pr,nn,0,0,_r),this.addCurrentVertex(pr,nn.mult(-1),0,0,_r)}else if(to==="bevel"||to==="fakeround"){var _s=-Math.sqrt(Zn*Zn-1),jo=eo?_s:0,El=eo?0:_s;if(Fr&&this.addCurrentVertex(pr,Hi,jo,El,_r),to==="fakeround")for(var Iu=Math.round(ga*180/Math.PI/xS),kl=1;kl2*or){var ch=pr.add(oi.sub(pr)._mult(or/Yh)._round());this.updateDistance(pr,ch),this.addCurrentVertex(ch,Ai,0,0,_r),pr=ch}}}}},sh.prototype.addCurrentVertex=function(y,I,U,$,ae,he){he===void 0&&(he=!1);var Oe=I.x+I.y*U,rt=I.y-I.x*U,gt=-I.x+I.y*$,Et=-I.y-I.x*$;this.addHalfVertex(y,Oe,rt,he,!1,U,ae),this.addHalfVertex(y,gt,Et,he,!0,-$,ae),this.distance>tb/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(y,I,U,$,ae,he))},sh.prototype.addHalfVertex=function(y,I,U,$,ae,he,Oe){var rt=y.x,gt=y.y,Et=this.lineClips?this.scaledDistance*(tb-1):this.scaledDistance,or=Et*Nw;if(this.layoutVertexArray.emplaceBack((rt<<1)+($?1:0),(gt<<1)+(ae?1:0),Math.round(Bw*I)+128,Math.round(Bw*U)+128,(he===0?0:he<0?-1:1)+1|(or&63)<<2,or>>6),this.lineClips){var _r=this.scaledDistance-this.lineClips.start,pr=this.lineClips.end-this.lineClips.start,Fr=_r/pr;this.layoutVertexArray2.emplaceBack(Fr,this.lineClipsArray.length)}var oi=Oe.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,oi),Oe.primitiveLength++),ae?this.e2=oi:this.e1=oi},sh.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},sh.prototype.updateDistance=function(y,I){this.distance+=y.dist(I),this.updateScaledDistance()},X("LineBucket",sh,{omit:["layers","patternFeatures"]});var bS=new Nr({"line-cap":new Me(Rn.layout_line["line-cap"]),"line-join":new bt(Rn.layout_line["line-join"]),"line-miter-limit":new Me(Rn.layout_line["line-miter-limit"]),"line-round-limit":new Me(Rn.layout_line["line-round-limit"]),"line-sort-key":new bt(Rn.layout_line["line-sort-key"])}),wS=new Nr({"line-opacity":new bt(Rn.paint_line["line-opacity"]),"line-color":new bt(Rn.paint_line["line-color"]),"line-translate":new Me(Rn.paint_line["line-translate"]),"line-translate-anchor":new Me(Rn.paint_line["line-translate-anchor"]),"line-width":new bt(Rn.paint_line["line-width"]),"line-gap-width":new bt(Rn.paint_line["line-gap-width"]),"line-offset":new bt(Rn.paint_line["line-offset"]),"line-blur":new bt(Rn.paint_line["line-blur"]),"line-dasharray":new Rr(Rn.paint_line["line-dasharray"]),"line-pattern":new zt(Rn.paint_line["line-pattern"]),"line-gradient":new jr(Rn.paint_line["line-gradient"])}),Uw={paint:wS,layout:bS},nO=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.possiblyEvaluate=function(U,$){return $=new Gn(Math.floor($.zoom),{now:$.now,fadeDuration:$.fadeDuration,zoomHistory:$.zoomHistory,transition:$.transition}),m.prototype.possiblyEvaluate.call(this,U,$)},y.prototype.evaluate=function(U,$,ae,he){return $=x({},$,{zoom:Math.floor($.zoom)}),m.prototype.evaluate.call(this,U,$,ae,he)},y}(bt),R=new nO(Uw.paint.properties["line-width"].specification);R.useIntegerZoom=!0;var A=function(m){function y(I){m.call(this,I,Uw),this.gradientVersion=0}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._handleSpecialPaintPropertyUpdate=function(U){if(U==="line-gradient"){var $=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=$._styleExpression.expression instanceof _u,this.gradientVersion=(this.gradientVersion+1)%d}},y.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},y.prototype.recalculate=function(U,$){m.prototype.recalculate.call(this,U,$),this.paint._values["line-floorwidth"]=R.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,U)},y.prototype.createBucket=function(U){return new sh(U)},y.prototype.queryRadius=function(U){var $=U,ae=F(Ad("line-width",this,$),Ad("line-gap-width",this,$)),he=Ad("line-offset",this,$);return ae/2+Math.abs(he)+Pv(this.paint.get("line-translate"))},y.prototype.queryIntersectsFeature=function(U,$,ae,he,Oe,rt,gt){var Et=Jv(U,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),rt.angle,gt),or=gt/2*F(this.paint.get("line-width").evaluate($,ae),this.paint.get("line-gap-width").evaluate($,ae)),_r=this.paint.get("line-offset").evaluate($,ae);return _r&&(he=W(he,_r*gt)),ou(Et,he,or)},y.prototype.isTileClipped=function(){return!0},y}(mi);function F(m,y){return y>0?y+2*m:m}function W(m,y){for(var I=[],U=new u(0,0),$=0;$":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};function un(m){for(var y="",I=0;I>1,Et=-7,or=I?$-1:0,_r=I?-1:1,pr=m[y+or];for(or+=_r,ae=pr&(1<<-Et)-1,pr>>=-Et,Et+=Oe;Et>0;ae=ae*256+m[y+or],or+=_r,Et-=8);for(he=ae&(1<<-Et)-1,ae>>=-Et,Et+=U;Et>0;he=he*256+m[y+or],or+=_r,Et-=8);if(ae===0)ae=1-gt;else{if(ae===rt)return he?NaN:(pr?-1:1)*(1/0);he=he+Math.pow(2,U),ae=ae-gt}return(pr?-1:1)*he*Math.pow(2,ae-U)},ro=function(m,y,I,U,$,ae){var he,Oe,rt,gt=ae*8-$-1,Et=(1<>1,_r=$===23?Math.pow(2,-24)-Math.pow(2,-77):0,pr=U?0:ae-1,Fr=U?1:-1,oi=y<0||y===0&&1/y<0?1:0;for(y=Math.abs(y),isNaN(y)||y===1/0?(Oe=isNaN(y)?1:0,he=Et):(he=Math.floor(Math.log(y)/Math.LN2),y*(rt=Math.pow(2,-he))<1&&(he--,rt*=2),he+or>=1?y+=_r/rt:y+=_r*Math.pow(2,1-or),y*rt>=2&&(he++,rt/=2),he+or>=Et?(Oe=0,he=Et):he+or>=1?(Oe=(y*rt-1)*Math.pow(2,$),he=he+or):(Oe=y*Math.pow(2,or-1)*Math.pow(2,$),he=0));$>=8;m[I+pr]=Oe&255,pr+=Fr,Oe/=256,$-=8);for(he=he<<$|Oe,gt+=$;gt>0;m[I+pr]=he&255,pr+=Fr,he/=256,gt-=8);m[I+pr-Fr]|=oi*128},Vo={read:pa,write:ro},Xa=sa;function sa(m){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(m)?m:new Uint8Array(m||0),this.pos=0,this.type=0,this.length=this.buf.length}sa.Varint=0,sa.Fixed64=1,sa.Bytes=2,sa.Fixed32=5;var Mo=65536*65536,fo=1/Mo,lo=12,Xn=typeof TextDecoder=="undefined"?null:new TextDecoder("utf8");sa.prototype={destroy:function(){this.buf=null},readFields:function(m,y,I){for(I=I||this.length;this.pos>3,ae=this.pos;this.type=U&7,m($,y,this),this.pos===ae&&this.skip(U)}return y},readMessage:function(m,y){return this.readFields(m,y,this.readVarint()+this.pos)},readFixed32:function(){var m=Wh(this.buf,this.pos);return this.pos+=4,m},readSFixed32:function(){var m=Fv(this.buf,this.pos);return this.pos+=4,m},readFixed64:function(){var m=Wh(this.buf,this.pos)+Wh(this.buf,this.pos+4)*Mo;return this.pos+=8,m},readSFixed64:function(){var m=Wh(this.buf,this.pos)+Fv(this.buf,this.pos+4)*Mo;return this.pos+=8,m},readFloat:function(){var m=Vo.read(this.buf,this.pos,!0,23,4);return this.pos+=4,m},readDouble:function(){var m=Vo.read(this.buf,this.pos,!0,52,8);return this.pos+=8,m},readVarint:function(m){var y=this.buf,I,U;return U=y[this.pos++],I=U&127,U<128||(U=y[this.pos++],I|=(U&127)<<7,U<128)||(U=y[this.pos++],I|=(U&127)<<14,U<128)||(U=y[this.pos++],I|=(U&127)<<21,U<128)?I:(U=y[this.pos],I|=(U&15)<<28,Ro(I,m,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var m=this.readVarint();return m%2===1?(m+1)/-2:m/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var m=this.readVarint()+this.pos,y=this.pos;return this.pos=m,m-y>=lo&&Xn?tu(this.buf,y,m):lv(this.buf,y,m)},readBytes:function(){var m=this.readVarint()+this.pos,y=this.buf.subarray(this.pos,m);return this.pos=m,y},readPackedVarint:function(m,y){if(this.type!==sa.Bytes)return m.push(this.readVarint(y));var I=uo(this);for(m=m||[];this.pos127;);else if(y===sa.Bytes)this.pos=this.readVarint()+this.pos;else if(y===sa.Fixed32)this.pos+=4;else if(y===sa.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+y)},writeTag:function(m,y){this.writeVarint(m<<3|y)},realloc:function(m){for(var y=this.length||16;y268435455||m<0){Ju(m,this);return}this.realloc(4),this.buf[this.pos++]=m&127|(m>127?128:0),!(m<=127)&&(this.buf[this.pos++]=(m>>>=7)&127|(m>127?128:0),!(m<=127)&&(this.buf[this.pos++]=(m>>>=7)&127|(m>127?128:0),!(m<=127)&&(this.buf[this.pos++]=m>>>7&127)))},writeSVarint:function(m){this.writeVarint(m<0?-m*2-1:m*2)},writeBoolean:function(m){this.writeVarint(!!m)},writeString:function(m){m=String(m),this.realloc(m.length*4),this.pos++;var y=this.pos;this.pos=pc(this.buf,m,this.pos);var I=this.pos-y;I>=128&&Qv(y,I,this),this.pos=y-1,this.writeVarint(I),this.pos+=I},writeFloat:function(m){this.realloc(4),Vo.write(this.buf,m,this.pos,!0,23,4),this.pos+=4},writeDouble:function(m){this.realloc(8),Vo.write(this.buf,m,this.pos,!0,52,8),this.pos+=8},writeBytes:function(m){var y=m.length;this.writeVarint(y),this.realloc(y);for(var I=0;I=128&&Qv(I,U,this),this.pos=I-1,this.writeVarint(U),this.pos+=U},writeMessage:function(m,y,I){this.writeTag(m,sa.Bytes),this.writeRawMessage(y,I)},writePackedVarint:function(m,y){y.length&&this.writeMessage(m,ld,y)},writePackedSVarint:function(m,y){y.length&&this.writeMessage(m,Eh,y)},writePackedBoolean:function(m,y){y.length&&this.writeMessage(m,jd,y)},writePackedFloat:function(m,y){y.length&&this.writeMessage(m,Gd,y)},writePackedDouble:function(m,y){y.length&&this.writeMessage(m,Hd,y)},writePackedFixed32:function(m,y){y.length&&this.writeMessage(m,Af,y)},writePackedSFixed32:function(m,y){y.length&&this.writeMessage(m,kh,y)},writePackedFixed64:function(m,y){y.length&&this.writeMessage(m,Ed,y)},writePackedSFixed64:function(m,y){y.length&&this.writeMessage(m,ud,y)},writeBytesField:function(m,y){this.writeTag(m,sa.Bytes),this.writeBytes(y)},writeFixed32Field:function(m,y){this.writeTag(m,sa.Fixed32),this.writeFixed32(y)},writeSFixed32Field:function(m,y){this.writeTag(m,sa.Fixed32),this.writeSFixed32(y)},writeFixed64Field:function(m,y){this.writeTag(m,sa.Fixed64),this.writeFixed64(y)},writeSFixed64Field:function(m,y){this.writeTag(m,sa.Fixed64),this.writeSFixed64(y)},writeVarintField:function(m,y){this.writeTag(m,sa.Varint),this.writeVarint(y)},writeSVarintField:function(m,y){this.writeTag(m,sa.Varint),this.writeSVarint(y)},writeStringField:function(m,y){this.writeTag(m,sa.Bytes),this.writeString(y)},writeFloatField:function(m,y){this.writeTag(m,sa.Fixed32),this.writeFloat(y)},writeDoubleField:function(m,y){this.writeTag(m,sa.Fixed64),this.writeDouble(y)},writeBooleanField:function(m,y){this.writeVarintField(m,!!y)}};function Ro(m,y,I){var U=I.buf,$,ae;if(ae=U[I.pos++],$=(ae&112)>>4,ae<128||(ae=U[I.pos++],$|=(ae&127)<<3,ae<128)||(ae=U[I.pos++],$|=(ae&127)<<10,ae<128)||(ae=U[I.pos++],$|=(ae&127)<<17,ae<128)||(ae=U[I.pos++],$|=(ae&127)<<24,ae<128)||(ae=U[I.pos++],$|=(ae&1)<<31,ae<128))return $o(m,$,y);throw new Error("Expected varint not more than 10 bytes")}function uo(m){return m.type===sa.Bytes?m.readVarint()+m.pos:m.pos+1}function $o(m,y,I){return I?y*4294967296+(m>>>0):(y>>>0)*4294967296+(m>>>0)}function Ju(m,y){var I,U;if(m>=0?(I=m%4294967296|0,U=m/4294967296|0):(I=~(-m%4294967296),U=~(-m/4294967296),I^4294967295?I=I+1|0:(I=0,U=U+1|0)),m>=18446744073709552e3||m<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");y.realloc(10),qu(I,U,y),Mh(U,y)}function qu(m,y,I){I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos]=m&127}function Mh(m,y){var I=(m&7)<<4;y.buf[y.pos++]|=I|((m>>>=3)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127)))))}function Qv(m,y,I){var U=y<=16383?1:y<=2097151?2:y<=268435455?3:Math.floor(Math.log(y)/(Math.LN2*7));I.realloc(U);for(var $=I.pos-1;$>=m;$--)I.buf[$+U]=I.buf[$]}function ld(m,y){for(var I=0;I>>8,m[I+2]=y>>>16,m[I+3]=y>>>24}function Fv(m,y){return(m[y]|m[y+1]<<8|m[y+2]<<16)+(m[y+3]<<24)}function lv(m,y,I){for(var U="",$=y;$239?4:ae>223?3:ae>191?2:1;if($+Oe>I)break;var rt,gt,Et;Oe===1?ae<128&&(he=ae):Oe===2?(rt=m[$+1],(rt&192)===128&&(he=(ae&31)<<6|rt&63,he<=127&&(he=null))):Oe===3?(rt=m[$+1],gt=m[$+2],(rt&192)===128&&(gt&192)===128&&(he=(ae&15)<<12|(rt&63)<<6|gt&63,(he<=2047||he>=55296&&he<=57343)&&(he=null))):Oe===4&&(rt=m[$+1],gt=m[$+2],Et=m[$+3],(rt&192)===128&&(gt&192)===128&&(Et&192)===128&&(he=(ae&15)<<18|(rt&63)<<12|(gt&63)<<6|Et&63,(he<=65535||he>=1114112)&&(he=null))),he===null?(he=65533,Oe=1):he>65535&&(he-=65536,U+=String.fromCharCode(he>>>10&1023|55296),he=56320|he&1023),U+=String.fromCharCode(he),$+=Oe}return U}function tu(m,y,I){return Xn.decode(m.subarray(y,I))}function pc(m,y,I){for(var U=0,$,ae;U55295&&$<57344)if(ae)if($<56320){m[I++]=239,m[I++]=191,m[I++]=189,ae=$;continue}else $=ae-55296<<10|$-56320|65536,ae=null;else{$>56319||U+1===y.length?(m[I++]=239,m[I++]=191,m[I++]=189):ae=$;continue}else ae&&(m[I++]=239,m[I++]=191,m[I++]=189,ae=null);$<128?m[I++]=$:($<2048?m[I++]=$>>6|192:($<65536?m[I++]=$>>12|224:(m[I++]=$>>18|240,m[I++]=$>>12&63|128),m[I++]=$>>6&63|128),m[I++]=$&63|128)}return I}var $u=3;function zv(m,y,I){m===1&&I.readMessage(ff,y)}function ff(m,y,I){if(m===3){var U=I.readMessage(P1,{}),$=U.id,ae=U.bitmap,he=U.width,Oe=U.height,rt=U.left,gt=U.top,Et=U.advance;y.push({id:$,bitmap:new Dv({width:he+2*$u,height:Oe+2*$u},ae),metrics:{width:he,height:Oe,left:rt,top:gt,advance:Et}})}}function P1(m,y,I){m===1?y.id=I.readVarint():m===2?y.bitmap=I.readBytes():m===3?y.width=I.readVarint():m===4?y.height=I.readVarint():m===5?y.left=I.readSVarint():m===6?y.top=I.readSVarint():m===7&&(y.advance=I.readVarint())}function v0(m){return new Xa(m).readFields(zv,[])}var Gp=$u;function ep(m){for(var y=0,I=0,U=0,$=m;U<$.length;U+=1){var ae=$[U];y+=ae.w*ae.h,I=Math.max(I,ae.w)}m.sort(function(Hi,Ai){return Ai.h-Hi.h});for(var he=Math.max(Math.ceil(Math.sqrt(y/.95)),I),Oe=[{x:0,y:0,w:he,h:1/0}],rt=0,gt=0,Et=0,or=m;Et=0;pr--){var Fr=Oe[pr];if(!(_r.w>Fr.w||_r.h>Fr.h)){if(_r.x=Fr.x,_r.y=Fr.y,gt=Math.max(gt,_r.y+_r.h),rt=Math.max(rt,_r.x+_r.w),_r.w===Fr.w&&_r.h===Fr.h){var oi=Oe.pop();pr=0&&$>=y&&g0[this.text.charCodeAt($)];$--)U--;this.text=this.text.substring(y,U),this.sectionIndex=this.sectionIndex.slice(y,U)},Xh.prototype.substring=function(y,I){var U=new Xh;return U.text=this.text.substring(y,I),U.sectionIndex=this.sectionIndex.slice(y,I),U.sections=this.sections,U},Xh.prototype.toString=function(){return this.text},Xh.prototype.getMaxScale=function(){var y=this;return this.sectionIndex.reduce(function(I,U){return Math.max(I,y.sections[U].scale)},0)},Xh.prototype.addTextSection=function(y,I){this.text+=y.text,this.sections.push(dy.forText(y.scale,y.fontStack||I));for(var U=this.sections.length-1,$=0;$=p0?null:++this.imageSectionID:(this.imageSectionID=Vw,this.imageSectionID)};function aO(m,y){for(var I=[],U=m.text,$=0,ae=0,he=y;ae=0,Et=0,or=0;or0&&ch>eo&&(eo=ch)}else{var Cl=I[Za.fontStack],yl=Cl&&Cl[to];if(yl&&yl.rect)jo=yl.rect,_s=yl.metrics;else{var Qu=y[Za.fontStack],gc=Qu&&Qu[to];if(!gc)continue;_s=gc.metrics}ao=(Pn-Za.scale)*Tn}kl?(m.verticalizable=!0,ha.push({glyph:to,imageName:El,x:_r,y:pr+ao,vertical:kl,scale:Za.scale,fontStack:Za.fontStack,sectionIndex:Ko,metrics:_s,rect:jo}),_r+=Iu*Za.scale+gt):(ha.push({glyph:to,imageName:El,x:_r,y:pr+ao,vertical:kl,scale:Za.scale,fontStack:Za.fontStack,sectionIndex:Ko,metrics:_s,rect:jo}),_r+=_s.advance*Za.scale+gt)}if(ha.length!==0){var Xd=_r-gt;Fr=Math.max(Xd,Fr),uO(ha,0,ha.length-1,Hi,eo)}_r=0;var Zd=ae*Pn+eo;ga.lineOffset=Math.max(eo,Zn),pr+=Zd,oi=Math.max(Zd,oi),++Ai}var Kh=pr-I1,fv=AS(he),hv=fv.horizontalAlign,Ch=fv.verticalAlign;kd(m.positionedLines,Hi,hv,Ch,Fr,oi,ae,Kh,$.length),m.top+=-Ch*Kh,m.bottom=m.top+Kh,m.left+=-hv*Fr,m.right=m.left+Fr}function uO(m,y,I,U,$){if(!(!U&&!$))for(var ae=m[I],he=ae.metrics.advance*ae.scale,Oe=(m[I].x+he)*U,rt=y;rt<=I;rt++)m[rt].x-=Oe,m[rt].y+=$}function kd(m,y,I,U,$,ae,he,Oe,rt){var gt=(y-I)*$,Et=0;ae!==he?Et=-Oe*U-I1:Et=(-U*rt+.5)*he;for(var or=0,_r=m;or<_r.length;or+=1)for(var pr=_r[or],Fr=0,oi=pr.positionedGlyphs;Fr-I/2;){if(he--,he<0)return!1;Oe-=m[he].dist(ae),ae=m[he]}Oe+=m[he].dist(m[he+1]),he++;for(var rt=[],gt=0;OeU;)gt-=rt.shift().angleDelta;if(gt>$)return!1;he++,Oe+=or.dist(_r)}return!0}function DQ(m){for(var y=0,I=0;Igt){var Fr=(gt-rt)/pr,oi=nl(or.x,_r.x,Fr),Hi=nl(or.y,_r.y,Fr),Ai=new Wd(oi,Hi,_r.angleTo(or),Et);return Ai._round(),!he||RQ(m,Ai,Oe,he,y)?Ai:void 0}rt+=pr}}function Met(m,y,I,U,$,ae,he,Oe,rt){var gt=FQ(U,ae,he),Et=zQ(U,$),or=Et*he,_r=m[0].x===0||m[0].x===rt||m[0].y===0||m[0].y===rt;y-or=0&&xn=0&&Pn=0&&_r+gt<=Et){var Zn=new Wd(xn,Pn,bn,Fr);Zn._round(),(!U||RQ(m,Zn,ae,U,$))&&pr.push(Zn)}}or+=Ai}return!Oe&&!pr.length&&!he&&(pr=OQ(m,or/2,I,U,$,ae,he,!0,rt)),pr}function qQ(m,y,I,U,$){for(var ae=[],he=0;he=U&&or.x>=U)&&(Et.x>=U?Et=new u(U,Et.y+(or.y-Et.y)*((U-Et.x)/(or.x-Et.x)))._round():or.x>=U&&(or=new u(U,Et.y+(or.y-Et.y)*((U-Et.x)/(or.x-Et.x)))._round()),!(Et.y>=$&&or.y>=$)&&(Et.y>=$?Et=new u(Et.x+(or.x-Et.x)*(($-Et.y)/(or.y-Et.y)),$)._round():or.y>=$&&(or=new u(Et.x+(or.x-Et.x)*(($-Et.y)/(or.y-Et.y)),$)._round()),(!rt||!Et.equals(rt[rt.length-1]))&&(rt=[Et],ae.push(rt)),rt.push(or)))))}return ae}var jw=Gc;function BQ(m,y,I,U){var $=[],ae=m.image,he=ae.pixelRatio,Oe=ae.paddedRect.w-2*jw,rt=ae.paddedRect.h-2*jw,gt=m.right-m.left,Et=m.bottom-m.top,or=ae.stretchX||[[0,Oe]],_r=ae.stretchY||[[0,rt]],pr=function(Cl,yl){return Cl+yl[1]-yl[0]},Fr=or.reduce(pr,0),oi=_r.reduce(pr,0),Hi=Oe-Fr,Ai=rt-oi,bn=0,nn=Fr,xn=0,Pn=oi,Zn=0,ga=Hi,ha=0,eo=Ai;if(ae.content&&U){var za=ae.content;bn=KC(or,0,za[0]),xn=KC(_r,0,za[1]),nn=KC(or,za[0],za[2]),Pn=KC(_r,za[1],za[3]),Zn=za[0]-bn,ha=za[1]-xn,ga=za[2]-za[0]-nn,eo=za[3]-za[1]-Pn}var Za=function(Cl,yl,Qu,gc){var Sf=JC(Cl.stretch-bn,nn,gt,m.left),Ff=$C(Cl.fixed-Zn,ga,Cl.stretch,Fr),Yh=JC(yl.stretch-xn,Pn,Et,m.top),ch=$C(yl.fixed-ha,eo,yl.stretch,oi),Xd=JC(Qu.stretch-bn,nn,gt,m.left),Zd=$C(Qu.fixed-Zn,ga,Qu.stretch,Fr),Kh=JC(gc.stretch-xn,Pn,Et,m.top),fv=$C(gc.fixed-ha,eo,gc.stretch,oi),hv=new u(Sf,Yh),Ch=new u(Xd,Yh),dv=new u(Xd,Kh),xp=new u(Sf,Kh),gy=new u(Ff/he,ch/he),F1=new u(Zd/he,fv/he),z1=y*Math.PI/180;if(z1){var O1=Math.sin(z1),Qw=Math.cos(z1),m0=[Qw,-O1,O1,Qw];hv._matMult(m0),Ch._matMult(m0),xp._matMult(m0),dv._matMult(m0)}var n6=Cl.stretch+Cl.fixed,mO=Qu.stretch+Qu.fixed,a6=yl.stretch+yl.fixed,yO=gc.stretch+gc.fixed,Hp={x:ae.paddedRect.x+jw+n6,y:ae.paddedRect.y+jw+a6,w:mO-n6,h:yO-a6},e3=ga/he/gt,o6=eo/he/Et;return{tl:hv,tr:Ch,bl:xp,br:dv,tex:Hp,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:gy,pixelOffsetBR:F1,minFontScaleX:e3,minFontScaleY:o6,isSDF:I}};if(!U||!ae.stretchX&&!ae.stretchY)$.push(Za({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:Oe+1},{fixed:0,stretch:rt+1}));else for(var Ko=NQ(or,Hi,Fr),to=NQ(_r,Ai,oi),ao=0;ao0&&(Fr=Math.max(10,Fr),this.circleDiameter=Fr)}else{var oi=he.top*Oe-rt,Hi=he.bottom*Oe+rt,Ai=he.left*Oe-rt,bn=he.right*Oe+rt,nn=he.collisionPadding;if(nn&&(Ai-=nn[0]*Oe,oi-=nn[1]*Oe,bn+=nn[2]*Oe,Hi+=nn[3]*Oe),Et){var xn=new u(Ai,oi),Pn=new u(bn,oi),Zn=new u(Ai,Hi),ga=new u(bn,Hi),ha=Et*Math.PI/180;xn._rotate(ha),Pn._rotate(ha),Zn._rotate(ha),ga._rotate(ha),Ai=Math.min(xn.x,Pn.x,Zn.x,ga.x),bn=Math.max(xn.x,Pn.x,Zn.x,ga.x),oi=Math.min(xn.y,Pn.y,Zn.y,ga.y),Hi=Math.max(xn.y,Pn.y,Zn.y,ga.y)}y.emplaceBack(I.x,I.y,Ai,oi,bn,Hi,U,$,ae)}this.boxEndIndex=y.length},Ww=function(y,I){if(y===void 0&&(y=[]),I===void 0&&(I=ket),this.data=y,this.length=this.data.length,this.compare=I,this.length>0)for(var U=(this.length>>1)-1;U>=0;U--)this._down(U)};Ww.prototype.push=function(y){this.data.push(y),this.length++,this._up(this.length-1)},Ww.prototype.pop=function(){if(this.length!==0){var y=this.data[0],I=this.data.pop();return this.length--,this.length>0&&(this.data[0]=I,this._down(0)),y}},Ww.prototype.peek=function(){return this.data[0]},Ww.prototype._up=function(y){for(var I=this,U=I.data,$=I.compare,ae=U[y];y>0;){var he=y-1>>1,Oe=U[he];if($(ae,Oe)>=0)break;U[y]=Oe,y=he}U[y]=ae},Ww.prototype._down=function(y){for(var I=this,U=I.data,$=I.compare,ae=this.length>>1,he=U[y];y=0)break;U[y]=rt,y=Oe}U[y]=he};function ket(m,y){return my?1:0}function Cet(m,y,I){y===void 0&&(y=1),I===void 0&&(I=!1);for(var U=1/0,$=1/0,ae=-1/0,he=-1/0,Oe=m[0],rt=0;rtae)&&(ae=gt.x),(!rt||gt.y>he)&&(he=gt.y)}var Et=ae-U,or=he-$,_r=Math.min(Et,or),pr=_r/2,Fr=new Ww([],Let);if(_r===0)return new u(U,$);for(var oi=U;oiAi.d||!Ai.d)&&(Ai=nn,I&&console.log("found best %d after %d probes",Math.round(1e4*nn.d)/1e4,bn)),!(nn.max-Ai.d<=y)&&(pr=nn.h/2,Fr.push(new Xw(nn.p.x-pr,nn.p.y-pr,pr,m)),Fr.push(new Xw(nn.p.x+pr,nn.p.y-pr,pr,m)),Fr.push(new Xw(nn.p.x-pr,nn.p.y+pr,pr,m)),Fr.push(new Xw(nn.p.x+pr,nn.p.y+pr,pr,m)),bn+=4)}return I&&(console.log("num probes: "+bn),console.log("best distance: "+Ai.d)),Ai.p}function Let(m,y){return y.max-m.max}function Xw(m,y,I,U){this.p=new u(m,y),this.h=I,this.d=Pet(this.p,U),this.max=this.d+this.h*Math.SQRT2}function Pet(m,y){for(var I=!1,U=1/0,$=0;$m.y!=Et.y>m.y&&m.x<(Et.x-gt.x)*(m.y-gt.y)/(Et.y-gt.y)+gt.x&&(I=!I),U=Math.min(U,cg(m,gt,Et))}return(I?1:-1)*Math.sqrt(U)}function Iet(m){for(var y=0,I=0,U=0,$=m[0],ae=0,he=$.length,Oe=he-1;ae=Ci||m0.y<0||m0.y>=Ci||Fet(m,m0,Qw,I,U,$,to,m.layers[0],m.collisionBoxArray,y.index,y.sourceLayerIndex,m.index,Ai,Pn,ha,rt,nn,Zn,eo,pr,y,ae,gt,Et,he)};if(za==="line")for(var _s=0,jo=qQ(y.geometry,0,0,Ci,Ci);_s1){var Yh=Aet(Ff,ga,I.vertical||Fr,U,oi,bn);Yh&&ao(Ff,Yh)}}else if(y.type==="Polygon")for(var ch=0,Xd=zw(y.geometry,0);chR1&&re(m.layerIds[0]+': Value for "text-size" is >= '+SS+'. Reduce your "text-size".')):Hi.kind==="composite"&&(Ai=[Cd*pr.compositeTextSizes[0].evaluate(he,{},Fr),Cd*pr.compositeTextSizes[1].evaluate(he,{},Fr)],(Ai[0]>R1||Ai[1]>R1)&&re(m.layerIds[0]+': Value for "text-size" is >= '+SS+'. Reduce your "text-size".')),m.addSymbols(m.text,oi,Ai,Oe,ae,he,gt,y,rt.lineStartIndex,rt.lineLength,_r,Fr);for(var bn=0,nn=Et;bnR1&&re(m.layerIds[0]+': Value for "icon-size" is >= '+SS+'. Reduce your "icon-size".')):hv.kind==="composite"&&(Ch=[Cd*Pn.compositeIconSizes[0].evaluate(xn,{},ga),Cd*Pn.compositeIconSizes[1].evaluate(xn,{},ga)],(Ch[0]>R1||Ch[1]>R1)&&re(m.layerIds[0]+': Value for "icon-size" is >= '+SS+'. Reduce your "icon-size".')),m.addSymbols(m.icon,Kh,Ch,nn,bn,xn,!1,y,za.lineStartIndex,za.lineLength,-1,ga),kl=m.icon.placedSymbolArray.length-1,fv&&(jo=fv.length*4,m.addSymbols(m.icon,fv,Ch,nn,bn,xn,uv.vertical,y,za.lineStartIndex,za.lineLength,-1,ga),Cl=m.icon.placedSymbolArray.length-1)}for(var dv in U.horizontal){var xp=U.horizontal[dv];if(!Za){Qu=K(xp.text);var gy=Oe.layout.get("text-rotate").evaluate(xn,{},ga);Za=new QC(rt,y,gt,Et,or,xp,_r,pr,Fr,gy)}var F1=xp.positionedLines.length===1;if(El+=VQ(m,y,xp,ae,Oe,Fr,xn,oi,za,U.vertical?uv.horizontal:uv.horizontalOnly,F1?Object.keys(U.horizontal):[dv],yl,kl,Pn,ga),F1)break}U.vertical&&(Iu+=VQ(m,y,U.vertical,ae,Oe,Fr,xn,oi,za,uv.vertical,["vertical"],yl,Cl,Pn,ga));var z1=Za?Za.boxStartIndex:m.collisionBoxArray.length,O1=Za?Za.boxEndIndex:m.collisionBoxArray.length,Qw=to?to.boxStartIndex:m.collisionBoxArray.length,m0=to?to.boxEndIndex:m.collisionBoxArray.length,n6=Ko?Ko.boxStartIndex:m.collisionBoxArray.length,mO=Ko?Ko.boxEndIndex:m.collisionBoxArray.length,a6=ao?ao.boxStartIndex:m.collisionBoxArray.length,yO=ao?ao.boxEndIndex:m.collisionBoxArray.length,Hp=-1,e3=function(kS,aee){return kS&&kS.circleDiameter?Math.max(kS.circleDiameter,aee):aee};Hp=e3(Za,Hp),Hp=e3(to,Hp),Hp=e3(Ko,Hp),Hp=e3(ao,Hp);var o6=Hp>-1?1:0;o6&&(Hp*=ha/Tn),m.glyphOffsetArray.length>=Pu.MAX_GLYPHS&&re("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),xn.sortKey!==void 0&&m.addToSortKeyRanges(m.symbolInstances.length,xn.sortKey),m.symbolInstances.emplaceBack(y.x,y.y,yl.right>=0?yl.right:-1,yl.center>=0?yl.center:-1,yl.left>=0?yl.left:-1,yl.vertical||-1,kl,Cl,Qu,z1,O1,Qw,m0,n6,mO,a6,yO,gt,El,Iu,_s,jo,o6,0,_r,gc,Sf,Hp)}function zet(m,y,I,U){var $=m.compareText;if(!(y in $))$[y]=[];else for(var ae=$[y],he=ae.length-1;he>=0;he--)if(U.dist(ae[he])0)&&(he.value.kind!=="constant"||he.value.value.length>0),Et=rt.value.kind!=="constant"||!!rt.value.value||Object.keys(rt.parameters).length>0,or=ae.get("symbol-sort-key");if(this.features=[],!(!gt&&!Et)){for(var _r=I.iconDependencies,pr=I.glyphDependencies,Fr=I.availableImages,oi=new Gn(this.zoom),Hi=0,Ai=y;Hi=0;for(var Iu=0,kl=eo.sections;Iu=0;rt--)he[rt]={x:I[rt].x,y:I[rt].y,tileUnitDistanceFromAnchor:ae},rt>0&&(ae+=I[rt-1].dist(I[rt]));for(var gt=0;gt0},Pu.prototype.hasIconData=function(){return this.icon.segments.get().length>0},Pu.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},Pu.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},Pu.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},Pu.prototype.addIndicesForPlacedSymbol=function(y,I){for(var U=y.placedSymbolArray.get(I),$=U.vertexStartIndex+U.numGlyphs*4,ae=U.vertexStartIndex;ae<$;ae+=4)y.indexArray.emplaceBack(ae,ae+1,ae+2),y.indexArray.emplaceBack(ae+1,ae+2,ae+3)},Pu.prototype.getSortedSymbolIndexes=function(y){if(this.sortedAngle===y&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;for(var I=Math.sin(y),U=Math.cos(y),$=[],ae=[],he=[],Oe=0;Oe1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(y),this.sortedAngle=y,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var U=0,$=this.symbolInstanceIndexes;U<$.length;U+=1){var ae=$[U],he=this.symbolInstances.get(ae);this.featureSortOrder.push(he.featureIndex),[he.rightJustifiedTextSymbolIndex,he.centerJustifiedTextSymbolIndex,he.leftJustifiedTextSymbolIndex].forEach(function(Oe,rt,gt){Oe>=0&>.indexOf(Oe)===rt&&I.addIndicesForPlacedSymbol(I.text,Oe)}),he.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,he.verticalPlacedTextSymbolIndex),he.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,he.placedIconSymbolIndex),he.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,he.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},X("SymbolBucket",Pu,{omit:["layers","collisionBoxArray","features","compareText"]}),Pu.MAX_GLYPHS=65535,Pu.addDynamicAttributes=hO;function Net(m,y){return y.replace(/{([^{}]+)}/g,function(I,U){return U in m?String(m[U]):""})}var Uet=new Nr({"symbol-placement":new Me(Rn.layout_symbol["symbol-placement"]),"symbol-spacing":new Me(Rn.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Me(Rn.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new bt(Rn.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Me(Rn.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Me(Rn.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Me(Rn.layout_symbol["icon-ignore-placement"]),"icon-optional":new Me(Rn.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Me(Rn.layout_symbol["icon-rotation-alignment"]),"icon-size":new bt(Rn.layout_symbol["icon-size"]),"icon-text-fit":new Me(Rn.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Me(Rn.layout_symbol["icon-text-fit-padding"]),"icon-image":new bt(Rn.layout_symbol["icon-image"]),"icon-rotate":new bt(Rn.layout_symbol["icon-rotate"]),"icon-padding":new Me(Rn.layout_symbol["icon-padding"]),"icon-keep-upright":new Me(Rn.layout_symbol["icon-keep-upright"]),"icon-offset":new bt(Rn.layout_symbol["icon-offset"]),"icon-anchor":new bt(Rn.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Me(Rn.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Me(Rn.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Me(Rn.layout_symbol["text-rotation-alignment"]),"text-field":new bt(Rn.layout_symbol["text-field"]),"text-font":new bt(Rn.layout_symbol["text-font"]),"text-size":new bt(Rn.layout_symbol["text-size"]),"text-max-width":new bt(Rn.layout_symbol["text-max-width"]),"text-line-height":new Me(Rn.layout_symbol["text-line-height"]),"text-letter-spacing":new bt(Rn.layout_symbol["text-letter-spacing"]),"text-justify":new bt(Rn.layout_symbol["text-justify"]),"text-radial-offset":new bt(Rn.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Me(Rn.layout_symbol["text-variable-anchor"]),"text-anchor":new bt(Rn.layout_symbol["text-anchor"]),"text-max-angle":new Me(Rn.layout_symbol["text-max-angle"]),"text-writing-mode":new Me(Rn.layout_symbol["text-writing-mode"]),"text-rotate":new bt(Rn.layout_symbol["text-rotate"]),"text-padding":new Me(Rn.layout_symbol["text-padding"]),"text-keep-upright":new Me(Rn.layout_symbol["text-keep-upright"]),"text-transform":new bt(Rn.layout_symbol["text-transform"]),"text-offset":new bt(Rn.layout_symbol["text-offset"]),"text-allow-overlap":new Me(Rn.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Me(Rn.layout_symbol["text-ignore-placement"]),"text-optional":new Me(Rn.layout_symbol["text-optional"])}),Vet=new Nr({"icon-opacity":new bt(Rn.paint_symbol["icon-opacity"]),"icon-color":new bt(Rn.paint_symbol["icon-color"]),"icon-halo-color":new bt(Rn.paint_symbol["icon-halo-color"]),"icon-halo-width":new bt(Rn.paint_symbol["icon-halo-width"]),"icon-halo-blur":new bt(Rn.paint_symbol["icon-halo-blur"]),"icon-translate":new Me(Rn.paint_symbol["icon-translate"]),"icon-translate-anchor":new Me(Rn.paint_symbol["icon-translate-anchor"]),"text-opacity":new bt(Rn.paint_symbol["text-opacity"]),"text-color":new bt(Rn.paint_symbol["text-color"],{runtimeType:ql,getOverride:function(m){return m.textColor},hasOverride:function(m){return!!m.textColor}}),"text-halo-color":new bt(Rn.paint_symbol["text-halo-color"]),"text-halo-width":new bt(Rn.paint_symbol["text-halo-width"]),"text-halo-blur":new bt(Rn.paint_symbol["text-halo-blur"]),"text-translate":new Me(Rn.paint_symbol["text-translate"]),"text-translate-anchor":new Me(Rn.paint_symbol["text-translate-anchor"])}),dO={paint:Vet,layout:Uet},Kw=function(y){this.type=y.property.overrides?y.property.overrides.runtimeType:ac,this.defaultValue=y};Kw.prototype.evaluate=function(y){if(y.formattedSection){var I=this.defaultValue.property.overrides;if(I&&I.hasOverride(y.formattedSection))return I.getOverride(y.formattedSection)}return y.feature&&y.featureState?this.defaultValue.evaluate(y.feature,y.featureState):this.defaultValue.property.specification.default},Kw.prototype.eachChild=function(y){if(!this.defaultValue.isConstant()){var I=this.defaultValue.value;y(I._styleExpression.expression)}},Kw.prototype.outputDefined=function(){return!1},Kw.prototype.serialize=function(){return null},X("FormatSectionOverride",Kw,{omit:["defaultValue"]});var Get=function(m){function y(I){m.call(this,I,dO)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.recalculate=function(U,$){if(m.prototype.recalculate.call(this,U,$),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var ae=this.layout.get("text-writing-mode");if(ae){for(var he=[],Oe=0,rt=ae;Oe",targetMapId:$,sourceMapId:he.mapId})}}},Jw.prototype.receive=function(y){var I=y.data,U=I.id;if(U&&!(I.targetMapId&&this.mapId!==I.targetMapId))if(I.type===""){delete this.tasks[U];var $=this.cancelCallbacks[U];delete this.cancelCallbacks[U],$&&$()}else Ce()||I.mustQueue?(this.tasks[U]=I,this.taskQueue.push(U),this.invoker.trigger()):this.processTask(U,I)},Jw.prototype.process=function(){if(this.taskQueue.length){var y=this.taskQueue.shift(),I=this.tasks[y];delete this.tasks[y],this.taskQueue.length&&this.invoker.trigger(),I&&this.processTask(y,I)}},Jw.prototype.processTask=function(y,I){var U=this;if(I.type===""){var $=this.callbacks[y];delete this.callbacks[y],$&&(I.error?$(Ye(I.error)):$(null,Ye(I.data)))}else{var ae=!1,he=Se(this.globalScope)?void 0:[],Oe=I.hasCallback?function(_r,pr){ae=!0,delete U.cancelCallbacks[y],U.target.postMessage({id:y,type:"",sourceMapId:U.mapId,error:_r?He(_r):null,data:He(pr,he)},he)}:function(_r){ae=!0},rt=null,gt=Ye(I.data);if(this.parent[I.type])rt=this.parent[I.type](I.sourceMapId,gt,Oe);else if(this.parent.getWorkerSource){var Et=I.type.split("."),or=this.parent.getWorkerSource(I.sourceMapId,Et[0],gt.source);rt=or[Et[1]](gt,Oe)}else Oe(new Error("Could not find function "+I.type));!ae&&rt&&rt.cancel&&(this.cancelCallbacks[y]=rt.cancel)}},Jw.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};function ett(m,y,I){y=Math.pow(2,I)-y-1;var U=ZQ(m*256,y*256,I),$=ZQ((m+1)*256,(y+1)*256,I);return U[0]+","+U[1]+","+$[0]+","+$[1]}function ZQ(m,y,I){var U=2*Math.PI*6378137/256/Math.pow(2,I),$=m*U-2*Math.PI*6378137/2,ae=y*U-2*Math.PI*6378137/2;return[$,ae]}var lh=function(y,I){y&&(I?this.setSouthWest(y).setNorthEast(I):y.length===4?this.setSouthWest([y[0],y[1]]).setNorthEast([y[2],y[3]]):this.setSouthWest(y[0]).setNorthEast(y[1]))};lh.prototype.setNorthEast=function(y){return this._ne=y instanceof Hc?new Hc(y.lng,y.lat):Hc.convert(y),this},lh.prototype.setSouthWest=function(y){return this._sw=y instanceof Hc?new Hc(y.lng,y.lat):Hc.convert(y),this},lh.prototype.extend=function(y){var I=this._sw,U=this._ne,$,ae;if(y instanceof Hc)$=y,ae=y;else if(y instanceof lh){if($=y._sw,ae=y._ne,!$||!ae)return this}else{if(Array.isArray(y))if(y.length===4||y.every(Array.isArray)){var he=y;return this.extend(lh.convert(he))}else{var Oe=y;return this.extend(Hc.convert(Oe))}return this}return!I&&!U?(this._sw=new Hc($.lng,$.lat),this._ne=new Hc(ae.lng,ae.lat)):(I.lng=Math.min($.lng,I.lng),I.lat=Math.min($.lat,I.lat),U.lng=Math.max(ae.lng,U.lng),U.lat=Math.max(ae.lat,U.lat)),this},lh.prototype.getCenter=function(){return new Hc((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},lh.prototype.getSouthWest=function(){return this._sw},lh.prototype.getNorthEast=function(){return this._ne},lh.prototype.getNorthWest=function(){return new Hc(this.getWest(),this.getNorth())},lh.prototype.getSouthEast=function(){return new Hc(this.getEast(),this.getSouth())},lh.prototype.getWest=function(){return this._sw.lng},lh.prototype.getSouth=function(){return this._sw.lat},lh.prototype.getEast=function(){return this._ne.lng},lh.prototype.getNorth=function(){return this._ne.lat},lh.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},lh.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},lh.prototype.isEmpty=function(){return!(this._sw&&this._ne)},lh.prototype.contains=function(y){var I=Hc.convert(y),U=I.lng,$=I.lat,ae=this._sw.lat<=$&&$<=this._ne.lat,he=this._sw.lng<=U&&U<=this._ne.lng;return this._sw.lng>this._ne.lng&&(he=this._sw.lng>=U&&U>=this._ne.lng),ae&&he},lh.convert=function(y){return!y||y instanceof lh?y:new lh(y)};var YQ=63710088e-1,Hc=function(y,I){if(isNaN(y)||isNaN(I))throw new Error("Invalid LngLat object: ("+y+", "+I+")");if(this.lng=+y,this.lat=+I,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};Hc.prototype.wrap=function(){return new Hc(k(this.lng,-180,180),this.lat)},Hc.prototype.toArray=function(){return[this.lng,this.lat]},Hc.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},Hc.prototype.distanceTo=function(y){var I=Math.PI/180,U=this.lat*I,$=y.lat*I,ae=Math.sin(U)*Math.sin($)+Math.cos(U)*Math.cos($)*Math.cos((y.lng-this.lng)*I),he=YQ*Math.acos(Math.min(ae,1));return he},Hc.prototype.toBounds=function(y){y===void 0&&(y=0);var I=40075017,U=360*y/I,$=U/Math.cos(Math.PI/180*this.lat);return new lh(new Hc(this.lng-$,this.lat-U),new Hc(this.lng+$,this.lat+U))},Hc.convert=function(y){if(y instanceof Hc)return y;if(Array.isArray(y)&&(y.length===2||y.length===3))return new Hc(Number(y[0]),Number(y[1]));if(!Array.isArray(y)&&typeof y=="object"&&y!==null)return new Hc(Number("lng"in y?y.lng:y.lon),Number(y.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")};var KQ=2*Math.PI*YQ;function JQ(m){return KQ*Math.cos(m*Math.PI/180)}function $Q(m){return(180+m)/360}function QQ(m){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+m*Math.PI/360)))/360}function eee(m,y){return m/JQ(y)}function ttt(m){return m*360-180}function pO(m){var y=180-m*360;return 360/Math.PI*Math.atan(Math.exp(y*Math.PI/180))-90}function rtt(m,y){return m*JQ(pO(y))}function itt(m){return 1/Math.cos(m*Math.PI/180)}var nb=function(y,I,U){U===void 0&&(U=0),this.x=+y,this.y=+I,this.z=+U};nb.fromLngLat=function(y,I){I===void 0&&(I=0);var U=Hc.convert(y);return new nb($Q(U.lng),QQ(U.lat),eee(I,U.lat))},nb.prototype.toLngLat=function(){return new Hc(ttt(this.x),pO(this.y))},nb.prototype.toAltitude=function(){return rtt(this.z,this.y)},nb.prototype.meterInMercatorCoordinateUnits=function(){return 1/KQ*itt(pO(this.y))};var ab=function(y,I,U){this.z=y,this.x=I,this.y=U,this.key=ES(0,y,y,I,U)};ab.prototype.equals=function(y){return this.z===y.z&&this.x===y.x&&this.y===y.y},ab.prototype.url=function(y,I){var U=ett(this.x,this.y,this.z),$=ntt(this.z,this.x,this.y);return y[(this.x+this.y)%y.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String(I==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",$).replace("{bbox-epsg-3857}",U)},ab.prototype.getTilePoint=function(y){var I=Math.pow(2,this.z);return new u((y.x*I-this.x)*Ci,(y.y*I-this.y)*Ci)},ab.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var tee=function(y,I){this.wrap=y,this.canonical=I,this.key=ES(y,I.z,I.z,I.x,I.y)},uh=function(y,I,U,$,ae){this.overscaledZ=y,this.wrap=I,this.canonical=new ab(U,+$,+ae),this.key=ES(I,y,U,$,ae)};uh.prototype.equals=function(y){return this.overscaledZ===y.overscaledZ&&this.wrap===y.wrap&&this.canonical.equals(y.canonical)},uh.prototype.scaledTo=function(y){var I=this.canonical.z-y;return y>this.canonical.z?new uh(y,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new uh(y,this.wrap,y,this.canonical.x>>I,this.canonical.y>>I)},uh.prototype.calculateScaledKey=function(y,I){var U=this.canonical.z-y;return y>this.canonical.z?ES(this.wrap*+I,y,this.canonical.z,this.canonical.x,this.canonical.y):ES(this.wrap*+I,y,y,this.canonical.x>>U,this.canonical.y>>U)},uh.prototype.isChildOf=function(y){if(y.wrap!==this.wrap)return!1;var I=this.canonical.z-y.canonical.z;return y.overscaledZ===0||y.overscaledZ>I&&y.canonical.y===this.canonical.y>>I},uh.prototype.children=function(y){if(this.overscaledZ>=y)return[new uh(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var I=this.canonical.z+1,U=this.canonical.x*2,$=this.canonical.y*2;return[new uh(I,this.wrap,I,U,$),new uh(I,this.wrap,I,U+1,$),new uh(I,this.wrap,I,U,$+1),new uh(I,this.wrap,I,U+1,$+1)]},uh.prototype.isLessThan=function(y){return this.wrapy.wrap?!1:this.overscaledZy.overscaledZ?!1:this.canonical.xy.canonical.x?!1:this.canonical.y0;ae--)$=1<=this.dim+1||I<-1||I>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(I+1)*this.stride+(y+1)},vy.prototype._unpackMapbox=function(y,I,U){return(y*256*256+I*256+U)/10-1e4},vy.prototype._unpackTerrarium=function(y,I,U){return y*256+I+U/256-32768},vy.prototype.getPixels=function(){return new Sh({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},vy.prototype.backfillBorder=function(y,I,U){if(this.dim!==y.dim)throw new Error("dem dimension mismatch");var $=I*this.dim,ae=I*this.dim+this.dim,he=U*this.dim,Oe=U*this.dim+this.dim;switch(I){case-1:$=ae-1;break;case 1:ae=$+1;break}switch(U){case-1:he=Oe-1;break;case 1:Oe=he+1;break}for(var rt=-I*this.dim,gt=-U*this.dim,Et=he;Et=0&&or[3]>=0&&rt.insert(Oe,or[0],or[1],or[2],or[3])}},py.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new pg.VectorTile(new Xa(this.rawTileData)).layers,this.sourceLayerCoder=new r6(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},py.prototype.query=function(y,I,U,$){var ae=this;this.loadVTLayers();for(var he=y.params||{},Oe=Ci/y.tileSize/y.scale,rt=be(he.filter),gt=y.queryGeometry,Et=y.queryPadding*Oe,or=iee(gt),_r=this.grid.query(or.minX-Et,or.minY-Et,or.maxX+Et,or.maxY+Et),pr=iee(y.cameraQueryGeometry),Fr=this.grid3D.query(pr.minX-Et,pr.minY-Et,pr.maxX+Et,pr.maxY+Et,function(Zn,ga,ha,eo){return gp(y.cameraQueryGeometry,Zn-Et,ga-Et,ha+Et,eo+Et)}),oi=0,Hi=Fr;oi$)ae=!1;else if(!I)ae=!0;else if(this.expirationTime=Ga.maxzoom)&&Ga.visibility!=="none"){h(Wn,this.zoom,nr);var vo=$i[Ga.id]=Ga.createBucket({index:Oi.bucketLayerIDs.length,layers:Wn,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:Ba,sourceID:this.source});vo.populate(ua,tn,this.tileID.canonical),Oi.bucketLayerIDs.push(Wn.map(function(Li){return Li.id}))}}}}var jn,Mt,kr,Jr,vi=i.mapObject(tn.glyphDependencies,function(Li){return Object.keys(Li).map(Number)});Object.keys(vi).length?Er.send("getGlyphs",{uid:this.uid,stacks:vi},function(Li,_n){jn||(jn=Li,Mt=_n,Mn.call(ri))}):Mt={};var hn=Object.keys(tn.iconDependencies);hn.length?Er.send("getImages",{icons:hn,source:this.source,tileID:this.tileID,type:"icons"},function(Li,_n){jn||(jn=Li,kr=_n,Mn.call(ri))}):kr={};var An=Object.keys(tn.patternDependencies);An.length?Er.send("getImages",{icons:An,source:this.source,tileID:this.tileID,type:"patterns"},function(Li,_n){jn||(jn=Li,Jr=_n,Mn.call(ri))}):Jr={},Mn.call(this);function Mn(){if(jn)return Xr(jn);if(Mt&&kr&&Jr){var Li=new c(Mt),_n=new i.ImageAtlas(kr,Jr);for(var ya in $i){var Jn=$i[ya];Jn instanceof i.SymbolBucket?(h(Jn.layers,this.zoom,nr),i.performSymbolLayout(Jn,Mt,Li.positions,kr,_n.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):Jn.hasPattern&&(Jn instanceof i.LineBucket||Jn instanceof i.FillBucket||Jn instanceof i.FillExtrusionBucket)&&(h(Jn.layers,this.zoom,nr),Jn.addFeatures(tn,this.tileID.canonical,_n.patternPositions))}this.status="done",Xr(null,{buckets:i.values($i).filter(function(Ma){return!Ma.isEmpty()}),featureIndex:Oi,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:Li.image,imageAtlas:_n,glyphMap:this.returnDependencies?Mt:null,iconMap:this.returnDependencies?kr:null,glyphPositions:this.returnDependencies?Li.positions:null})}}};function h(Ut,wt,rr){for(var nr=new i.EvaluationParameters(wt),Er=0,Xr=Ut;Er=0!=!!wt&&Ut.reverse()}var L=i.vectorTile.VectorTileFeature.prototype.toGeoJSON,x=function(wt){this._feature=wt,this.extent=i.EXTENT,this.type=wt.type,this.properties=wt.tags,"id"in wt&&!isNaN(wt.id)&&(this.id=parseInt(wt.id,10))};x.prototype.loadGeometry=function(){if(this._feature.type===1){for(var wt=[],rr=0,nr=this._feature.geometry;rr>31}function Ce(Ut,wt){for(var rr=Ut.loadGeometry(),nr=Ut.type,Er=0,Xr=0,ri=rr.length,Qr=0;Qr>1;Se(Ut,wt,ri,nr,Er,Xr%2),ie(Ut,wt,rr,nr,ri-1,Xr+1),ie(Ut,wt,rr,ri+1,Er,Xr+1)}}function Se(Ut,wt,rr,nr,Er,Xr){for(;Er>nr;){if(Er-nr>600){var ri=Er-nr+1,Qr=rr-nr+1,Oi=Math.log(ri),$i=.5*Math.exp(2*Oi/3),tn=.5*Math.sqrt(Oi*$i*(ri-$i)/ri)*(Qr-ri/2<0?-1:1),fn=Math.max(nr,Math.floor(rr-Qr*$i/ri+tn)),yn=Math.min(Er,Math.floor(rr+(ri-Qr)*$i/ri+tn));Se(Ut,wt,rr,fn,yn,Xr)}var Sn=wt[2*rr+Xr],Ba=nr,ua=Er;for(Le(Ut,wt,nr,rr),wt[2*Er+Xr]>Sn&&Le(Ut,wt,nr,Er);BaSn;)ua--}wt[2*nr+Xr]===Sn?Le(Ut,wt,nr,ua):(ua++,Le(Ut,wt,ua,Er)),ua<=rr&&(nr=ua+1),rr<=ua&&(Er=ua-1)}}function Le(Ut,wt,rr,nr){Ae(Ut,rr,nr),Ae(wt,2*rr,2*nr),Ae(wt,2*rr+1,2*nr+1)}function Ae(Ut,wt,rr){var nr=Ut[wt];Ut[wt]=Ut[rr],Ut[rr]=nr}function Fe(Ut,wt,rr,nr,Er,Xr,ri){for(var Qr=[0,Ut.length-1,0],Oi=[],$i,tn;Qr.length;){var fn=Qr.pop(),yn=Qr.pop(),Sn=Qr.pop();if(yn-Sn<=ri){for(var Ba=Sn;Ba<=yn;Ba++)$i=wt[2*Ba],tn=wt[2*Ba+1],$i>=rr&&$i<=Er&&tn>=nr&&tn<=Xr&&Oi.push(Ut[Ba]);continue}var ua=Math.floor((Sn+yn)/2);$i=wt[2*ua],tn=wt[2*ua+1],$i>=rr&&$i<=Er&&tn>=nr&&tn<=Xr&&Oi.push(Ut[ua]);var ma=(fn+1)%2;(fn===0?rr<=$i:nr<=tn)&&(Qr.push(Sn),Qr.push(ua-1),Qr.push(ma)),(fn===0?Er>=$i:Xr>=tn)&&(Qr.push(ua+1),Qr.push(yn),Qr.push(ma))}return Oi}function Pe(Ut,wt,rr,nr,Er,Xr){for(var ri=[0,Ut.length-1,0],Qr=[],Oi=Er*Er;ri.length;){var $i=ri.pop(),tn=ri.pop(),fn=ri.pop();if(tn-fn<=Xr){for(var yn=fn;yn<=tn;yn++)ge(wt[2*yn],wt[2*yn+1],rr,nr)<=Oi&&Qr.push(Ut[yn]);continue}var Sn=Math.floor((fn+tn)/2),Ba=wt[2*Sn],ua=wt[2*Sn+1];ge(Ba,ua,rr,nr)<=Oi&&Qr.push(Ut[Sn]);var ma=($i+1)%2;($i===0?rr-Er<=Ba:nr-Er<=ua)&&(ri.push(fn),ri.push(Sn-1),ri.push(ma)),($i===0?rr+Er>=Ba:nr+Er>=ua)&&(ri.push(Sn+1),ri.push(tn),ri.push(ma))}return Qr}function ge(Ut,wt,rr,nr){var Er=Ut-rr,Xr=wt-nr;return Er*Er+Xr*Xr}var Re=function(Ut){return Ut[0]},ce=function(Ut){return Ut[1]},Ze=function(wt,rr,nr,Er,Xr){rr===void 0&&(rr=Re),nr===void 0&&(nr=ce),Er===void 0&&(Er=64),Xr===void 0&&(Xr=Float64Array),this.nodeSize=Er,this.points=wt;for(var ri=wt.length<65536?Uint16Array:Uint32Array,Qr=this.ids=new ri(wt.length),Oi=this.coords=new Xr(wt.length*2),$i=0;$i=Er;tn--){var fn=+Date.now();Oi=this._cluster(Oi,tn),this.trees[tn]=new Ze(Oi,$e,St,ri,Float32Array),nr&&console.log("z%d: %d clusters in %dms",tn,Oi.length,+Date.now()-fn)}return nr&&console.timeEnd("total time"),this},pt.prototype.getClusters=function(wt,rr){var nr=((wt[0]+180)%360+360)%360-180,Er=Math.max(-90,Math.min(90,wt[1])),Xr=wt[2]===180?180:((wt[2]+180)%360+360)%360-180,ri=Math.max(-90,Math.min(90,wt[3]));if(wt[2]-wt[0]>=360)nr=-180,Xr=180;else if(nr>Xr){var Qr=this.getClusters([nr,Er,180,ri],rr),Oi=this.getClusters([-180,Er,Xr,ri],rr);return Qr.concat(Oi)}for(var $i=this.trees[this._limitZoom(rr)],tn=$i.range(Nt(nr),Jt(ri),Nt(Xr),Jt(Er)),fn=[],yn=0,Sn=tn;ynrr&&(ua+=Wo.numPoints||1)}if(ua>=Oi){for(var da=fn.x*Ba,Wn=fn.y*Ba,Ga=Qr&&Ba>1?this._map(fn,!0):null,vo=(tn<<5)+(rr+1)+this.points.length,jn=0,Mt=Sn;jn1)for(var hn=0,An=Sn;hn>5},pt.prototype._getOriginZoom=function(wt){return(wt-this.points.length)%32},pt.prototype._map=function(wt,rr){if(wt.numPoints)return rr?cr({},wt.properties):wt.properties;var nr=this.points[wt.index].properties,Er=this.options.map(nr);return rr&&Er===nr?cr({},Er):Er};function Zt(Ut,wt,rr,nr,Er){return{x:Ut,y:wt,zoom:1/0,id:rr,parentId:-1,numPoints:nr,properties:Er}}function st(Ut,wt){var rr=Ut.geometry.coordinates,nr=rr[0],Er=rr[1];return{x:Nt(nr),y:Jt(Er),zoom:1/0,index:wt,parentId:-1}}function lt(Ut){return{type:"Feature",id:Ut.id,properties:Gt(Ut),geometry:{type:"Point",coordinates:[sr(Ut.x),wr(Ut.y)]}}}function Gt(Ut){var wt=Ut.numPoints,rr=wt>=1e4?Math.round(wt/1e3)+"k":wt>=1e3?Math.round(wt/100)/10+"k":wt;return cr(cr({},Ut.properties),{cluster:!0,cluster_id:Ut.id,point_count:wt,point_count_abbreviated:rr})}function Nt(Ut){return Ut/360+.5}function Jt(Ut){var wt=Math.sin(Ut*Math.PI/180),rr=.5-.25*Math.log((1+wt)/(1-wt))/Math.PI;return rr<0?0:rr>1?1:rr}function sr(Ut){return(Ut-.5)*360}function wr(Ut){var wt=(180-Ut*360)*Math.PI/180;return 360*Math.atan(Math.exp(wt))/Math.PI-90}function cr(Ut,wt){for(var rr in wt)Ut[rr]=wt[rr];return Ut}function $e(Ut){return Ut.x}function St(Ut){return Ut.y}function Qt(Ut,wt,rr,nr){for(var Er=nr,Xr=rr-wt>>1,ri=rr-wt,Qr,Oi=Ut[wt],$i=Ut[wt+1],tn=Ut[rr],fn=Ut[rr+1],yn=wt+3;ynEr)Qr=yn,Er=Sn;else if(Sn===Er){var Ba=Math.abs(yn-Xr);Banr&&(Qr-wt>3&&Qt(Ut,wt,Qr,nr),Ut[Qr+2]=Er,rr-Qr>3&&Qt(Ut,Qr,rr,nr))}function Vt(Ut,wt,rr,nr,Er,Xr){var ri=Er-rr,Qr=Xr-nr;if(ri!==0||Qr!==0){var Oi=((Ut-rr)*ri+(wt-nr)*Qr)/(ri*ri+Qr*Qr);Oi>1?(rr=Er,nr=Xr):Oi>0&&(rr+=ri*Oi,nr+=Qr*Oi)}return ri=Ut-rr,Qr=wt-nr,ri*ri+Qr*Qr}function _t(Ut,wt,rr,nr){var Er={id:typeof Ut=="undefined"?null:Ut,type:wt,geometry:rr,tags:nr,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return It(Er),Er}function It(Ut){var wt=Ut.geometry,rr=Ut.type;if(rr==="Point"||rr==="MultiPoint"||rr==="LineString")mt(Ut,wt);else if(rr==="Polygon"||rr==="MultiLineString")for(var nr=0;nr0&&(nr?ri+=(Er*$i-Oi*Xr)/2:ri+=Math.sqrt(Math.pow(Oi-Er,2)+Math.pow($i-Xr,2))),Er=Oi,Xr=$i}var tn=wt.length-3;wt[2]=1,Qt(wt,0,tn,rr),wt[tn+2]=1,wt.size=Math.abs(ri),wt.start=0,wt.end=wt.size}function ti(Ut,wt,rr,nr){for(var Er=0;Er1?1:rr}function dt(Ut,wt,rr,nr,Er,Xr,ri,Qr){if(rr/=wt,nr/=wt,Xr>=rr&&ri=nr)return null;for(var Oi=[],$i=0;$i=rr&&Ba=nr)continue;var ua=[];if(yn==="Point"||yn==="MultiPoint")Ge(fn,ua,rr,nr,Er);else if(yn==="LineString")Je(fn,ua,rr,nr,Er,!1,Qr.lineMetrics);else if(yn==="MultiLineString")tt(fn,ua,rr,nr,Er,!1);else if(yn==="Polygon")tt(fn,ua,rr,nr,Er,!0);else if(yn==="MultiPolygon")for(var ma=0;ma=rr&&ri<=nr&&(wt.push(Ut[Xr]),wt.push(Ut[Xr+1]),wt.push(Ut[Xr+2]))}}function Je(Ut,wt,rr,nr,Er,Xr,ri){for(var Qr=je(Ut),Oi=Er===0?Ie:xe,$i=Ut.start,tn,fn,yn=0;ynrr&&(fn=Oi(Qr,Sn,Ba,ma,Wa,rr),ri&&(Qr.start=$i+tn*fn)):Fa>nr?Wo=rr&&(fn=Oi(Qr,Sn,Ba,ma,Wa,rr),da=!0),Wo>nr&&Fa<=nr&&(fn=Oi(Qr,Sn,Ba,ma,Wa,nr),da=!0),!Xr&&da&&(ri&&(Qr.end=$i+tn*fn),wt.push(Qr),Qr=je(Ut)),ri&&($i+=tn)}var Wn=Ut.length-3;Sn=Ut[Wn],Ba=Ut[Wn+1],ua=Ut[Wn+2],Fa=Er===0?Sn:Ba,Fa>=rr&&Fa<=nr&&xt(Qr,Sn,Ba,ua),Wn=Qr.length-3,Xr&&Wn>=3&&(Qr[Wn]!==Qr[0]||Qr[Wn+1]!==Qr[1])&&xt(Qr,Qr[0],Qr[1],Qr[2]),Qr.length&&wt.push(Qr)}function je(Ut){var wt=[];return wt.size=Ut.size,wt.start=Ut.start,wt.end=Ut.end,wt}function tt(Ut,wt,rr,nr,Er,Xr){for(var ri=0;riri.maxX&&(ri.maxX=tn),fn>ri.maxY&&(ri.maxY=fn)}return ri}function pi(Ut,wt,rr,nr){var Er=wt.geometry,Xr=wt.type,ri=[];if(Xr==="Point"||Xr==="MultiPoint")for(var Qr=0;Qr0&&wt.size<(Er?ri:nr)){rr.numPoints+=wt.length/3;return}for(var Qr=[],Oi=0;Oiri)&&(rr.numSimplified++,Qr.push(wt[Oi]),Qr.push(wt[Oi+1])),rr.numPoints++;Er&&di(Qr,Xr),Ut.push(Qr)}function di(Ut,wt){for(var rr=0,nr=0,Er=Ut.length,Xr=Er-2;nr0===wt)for(nr=0,Er=Ut.length;nr24)throw new Error("maxZoom should be in the 0-24 range");if(wt.promoteId&&wt.generateId)throw new Error("promoteId and generateId cannot be used together.");var nr=er(Ut,wt);this.tiles={},this.tileCoords=[],rr&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",wt.indexMaxZoom,wt.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),nr=ke(nr,wt),nr.length&&this.splitTile(nr,0,0,0),rr&&(nr.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}In.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},In.prototype.splitTile=function(Ut,wt,rr,nr,Er,Xr,ri){for(var Qr=[Ut,wt,rr,nr],Oi=this.options,$i=Oi.debug;Qr.length;){nr=Qr.pop(),rr=Qr.pop(),wt=Qr.pop(),Ut=Qr.pop();var tn=1<1&&console.time("creation"),yn=this.tiles[fn]=ii(Ut,wt,rr,nr,Oi),this.tileCoords.push({z:wt,x:rr,y:nr}),$i)){$i>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",wt,rr,nr,yn.numFeatures,yn.numPoints,yn.numSimplified),console.timeEnd("creation"));var Sn="z"+wt;this.stats[Sn]=(this.stats[Sn]||0)+1,this.total++}if(yn.source=Ut,Er){if(wt===Oi.maxZoom||wt===Er)continue;var Ba=1<1&&console.time("clipping");var ua=.5*Oi.buffer/Oi.extent,ma=.5-ua,Wa=.5+ua,Fa=1+ua,Wo,da,Wn,Ga,vo,jn;Wo=da=Wn=Ga=null,vo=dt(Ut,tn,rr-ua,rr+Wa,0,yn.minX,yn.maxX,Oi),jn=dt(Ut,tn,rr+ma,rr+Fa,0,yn.minX,yn.maxX,Oi),Ut=null,vo&&(Wo=dt(vo,tn,nr-ua,nr+Wa,1,yn.minY,yn.maxY,Oi),da=dt(vo,tn,nr+ma,nr+Fa,1,yn.minY,yn.maxY,Oi),vo=null),jn&&(Wn=dt(jn,tn,nr-ua,nr+Wa,1,yn.minY,yn.maxY,Oi),Ga=dt(jn,tn,nr+ma,nr+Fa,1,yn.minY,yn.maxY,Oi),jn=null),$i>1&&console.timeEnd("clipping"),Qr.push(Wo||[],wt+1,rr*2,nr*2),Qr.push(da||[],wt+1,rr*2,nr*2+1),Qr.push(Wn||[],wt+1,rr*2+1,nr*2),Qr.push(Ga||[],wt+1,rr*2+1,nr*2+1)}}},In.prototype.getTile=function(Ut,wt,rr){var nr=this.options,Er=nr.extent,Xr=nr.debug;if(Ut<0||Ut>24)return null;var ri=1<1&&console.log("drilling down to z%d-%d-%d",Ut,wt,rr);for(var Oi=Ut,$i=wt,tn=rr,fn;!fn&&Oi>0;)Oi--,$i=Math.floor($i/2),tn=Math.floor(tn/2),fn=this.tiles[wi(Oi,$i,tn)];return!fn||!fn.source?null:(Xr>1&&console.log("found parent tile z%d-%d-%d",Oi,$i,tn),Xr>1&&console.time("drilling down"),this.splitTile(fn.source,Oi,$i,tn,Ut,wt,rr),Xr>1&&console.timeEnd("drilling down"),this.tiles[Qr]?ar(this.tiles[Qr],Er):null)};function wi(Ut,wt,rr){return((1<=0?0:Y.button},o.remove=function(Y){Y.parentNode&&Y.parentNode.removeChild(Y)};function _(Y,D,J){var q,K,de,ne=i.browser.devicePixelRatio>1?"@2x":"",we=i.getJSON(D.transformRequest(D.normalizeSpriteURL(Y,ne,".json"),i.ResourceType.SpriteJSON),function(Xt,hr){we=null,de||(de=Xt,q=hr,ft())}),Ue=i.getImage(D.transformRequest(D.normalizeSpriteURL(Y,ne,".png"),i.ResourceType.SpriteImage),function(Xt,hr){Ue=null,de||(de=Xt,K=hr,ft())});function ft(){if(de)J(de);else if(q&&K){var Xt=i.browser.getImageData(K),hr={};for(var qt in q){var Ve=q[qt],Qe=Ve.width,at=Ve.height,Ct=Ve.x,Ot=Ve.y,Rt=Ve.sdf,Bt=Ve.pixelRatio,Dt=Ve.stretchX,yt=Ve.stretchY,Pt=Ve.content,ht=new i.RGBAImage({width:Qe,height:at});i.RGBAImage.copy(Xt,ht,{x:Ct,y:Ot},{x:0,y:0},{width:Qe,height:at}),hr[qt]={data:ht,pixelRatio:Bt,sdf:Rt,stretchX:Dt,stretchY:yt,content:Pt}}J(null,hr)}}return{cancel:function(){we&&(we.cancel(),we=null),Ue&&(Ue.cancel(),Ue=null)}}}function b(Y){var D=Y.userImage;if(D&&D.render){var J=D.render();if(J)return Y.data.replace(new Uint8Array(D.data.buffer)),!0}return!1}var p=1,k=function(Y){function D(){Y.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new i.RGBAImage({width:1,height:1}),this.dirty=!0}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.isLoaded=function(){return this.loaded},D.prototype.setLoaded=function(q){if(this.loaded!==q&&(this.loaded=q,q)){for(var K=0,de=this.requestors;K=0?1.2:1))}C.prototype.draw=function(Y){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(Y,this.buffer,this.middle);for(var D=this.ctx.getImageData(0,0,this.size,this.size),J=new Uint8ClampedArray(this.size*this.size),q=0;q65535){Xt(new Error("glyphs > 65535 not supported"));return}if(Ve.ranges[at]){Xt(null,{stack:hr,id:qt,glyph:Qe});return}var Ct=Ve.requests[at];Ct||(Ct=Ve.requests[at]=[],P.loadGlyphRange(hr,at,q.url,q.requestManager,function(Ot,Rt){if(Rt){for(var Bt in Rt)q._doesCharSupportLocalGlyph(+Bt)||(Ve.glyphs[+Bt]=Rt[+Bt]);Ve.ranges[at]=!0}for(var Dt=0,yt=Ct;Dt1&&(ft=D[++Ue]);var hr=Math.abs(Xt-ft.left),qt=Math.abs(Xt-ft.right),Ve=Math.min(hr,qt),Qe=void 0,at=de/q*(K+1);if(ft.isDash){var Ct=K-Math.abs(at);Qe=Math.sqrt(Ve*Ve+Ct*Ct)}else Qe=K-Math.sqrt(Ve*Ve+at*at);this.data[we+Xt]=Math.max(0,Math.min(255,Qe+128))}},G.prototype.addRegularDash=function(D){for(var J=D.length-1;J>=0;--J){var q=D[J],K=D[J+1];q.zeroLength?D.splice(J,1):K&&K.isDash===q.isDash&&(K.left=q.left,D.splice(J,1))}var de=D[0],ne=D[D.length-1];de.isDash===ne.isDash&&(de.left=ne.left-this.width,ne.right=de.right+this.width);for(var we=this.width*this.nextRow,Ue=0,ft=D[Ue],Xt=0;Xt1&&(ft=D[++Ue]);var hr=Math.abs(Xt-ft.left),qt=Math.abs(Xt-ft.right),Ve=Math.min(hr,qt),Qe=ft.isDash?Ve:-Ve;this.data[we+Xt]=Math.max(0,Math.min(255,Qe+128))}},G.prototype.addDash=function(D,J){var q=J?7:0,K=2*q+1;if(this.nextRow+K>this.height)return i.warnOnce("LineAtlas out of space"),null;for(var de=0,ne=0;ne=q.minX&&D.x=q.minY&&D.y0&&(Xt[new i.OverscaledTileID(q.overscaledZ,we,K.z,ne,K.y-1).key]={backfilled:!1},Xt[new i.OverscaledTileID(q.overscaledZ,q.wrap,K.z,K.x,K.y-1).key]={backfilled:!1},Xt[new i.OverscaledTileID(q.overscaledZ,ft,K.z,Ue,K.y-1).key]={backfilled:!1}),K.y+10&&(de.resourceTiming=q._resourceTiming,q._resourceTiming=[]),q.fire(new i.Event("data",de))})},D.prototype.onAdd=function(q){this.map=q,this.load()},D.prototype.setData=function(q){var K=this;return this._data=q,this.fire(new i.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(de){if(de){K.fire(new i.ErrorEvent(de));return}var ne={dataType:"source",sourceDataType:"content"};K._collectResourceTiming&&K._resourceTiming&&K._resourceTiming.length>0&&(ne.resourceTiming=K._resourceTiming,K._resourceTiming=[]),K.fire(new i.Event("data",ne))}),this},D.prototype.getClusterExpansionZoom=function(q,K){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:q,source:this.id},K),this},D.prototype.getClusterChildren=function(q,K){return this.actor.send("geojson.getClusterChildren",{clusterId:q,source:this.id},K),this},D.prototype.getClusterLeaves=function(q,K,de,ne){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:q,limit:K,offset:de},ne),this},D.prototype._updateWorkerData=function(q){var K=this;this._loaded=!1;var de=i.extend({},this.workerOptions),ne=this._data;typeof ne=="string"?(de.request=this.map._requestManager.transformRequest(i.browser.resolveURL(ne),i.ResourceType.Source),de.request.collectResourceTiming=this._collectResourceTiming):de.data=JSON.stringify(ne),this.actor.send(this.type+".loadData",de,function(we,Ue){K._removed||Ue&&Ue.abandoned||(K._loaded=!0,Ue&&Ue.resourceTiming&&Ue.resourceTiming[K.id]&&(K._resourceTiming=Ue.resourceTiming[K.id].slice(0)),K.actor.send(K.type+".coalesce",{source:de.source},null),q(we))})},D.prototype.loaded=function(){return this._loaded},D.prototype.loadTile=function(q,K){var de=this,ne=q.actor?"reloadTile":"loadTile";q.actor=this.actor;var we={type:this.type,uid:q.uid,tileID:q.tileID,zoom:q.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:i.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};q.request=this.actor.send(ne,we,function(Ue,ft){return delete q.request,q.unloadVectorData(),q.aborted?K(null):Ue?K(Ue):(q.loadVectorData(ft,de.map.painter,ne==="reloadTile"),K(null))})},D.prototype.abortTile=function(q){q.request&&(q.request.cancel(),delete q.request),q.aborted=!0},D.prototype.unloadTile=function(q){q.unloadVectorData(),this.actor.send("removeTile",{uid:q.uid,type:this.type,source:this.id})},D.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},D.prototype.serialize=function(){return i.extend({},this._options,{type:this.type,data:this._data})},D.prototype.hasTransition=function(){return!1},D}(i.Evented),Ee=i.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),Ce=function(Y){function D(J,q,K,de){Y.call(this),this.id=J,this.dispatcher=K,this.coordinates=q.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(de),this.options=q}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.load=function(q,K){var de=this;this._loaded=!1,this.fire(new i.Event("dataloading",{dataType:"source"})),this.url=this.options.url,i.getImage(this.map._requestManager.transformRequest(this.url,i.ResourceType.Image),function(ne,we){de._loaded=!0,ne?de.fire(new i.ErrorEvent(ne)):we&&(de.image=we,q&&(de.coordinates=q),K&&K(),de._finishLoading())})},D.prototype.loaded=function(){return this._loaded},D.prototype.updateImage=function(q){var K=this;return!this.image||!q.url?this:(this.options.url=q.url,this.load(q.coordinates,function(){K.texture=null}),this)},D.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"metadata"})))},D.prototype.onAdd=function(q){this.map=q,this.load()},D.prototype.setCoordinates=function(q){var K=this;this.coordinates=q;var de=q.map(i.MercatorCoordinate.fromLngLat);this.tileID=me(de),this.minzoom=this.maxzoom=this.tileID.z;var ne=de.map(function(we){return K.tileID.getTilePoint(we)._round()});return this._boundsArray=new i.StructArrayLayout4i8,this._boundsArray.emplaceBack(ne[0].x,ne[0].y,0,0),this._boundsArray.emplaceBack(ne[1].x,ne[1].y,i.EXTENT,0),this._boundsArray.emplaceBack(ne[3].x,ne[3].y,0,i.EXTENT),this._boundsArray.emplaceBack(ne[2].x,ne[2].y,i.EXTENT,i.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"content"})),this},D.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||!this.image)){var q=this.map.painter.context,K=q.gl;this.boundsBuffer||(this.boundsBuffer=q.createVertexBuffer(this._boundsArray,Ee.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new i.Texture(q,this.image,K.RGBA),this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE));for(var de in this.tiles){var ne=this.tiles[de];ne.state!=="loaded"&&(ne.state="loaded",ne.texture=this.texture)}}},D.prototype.loadTile=function(q,K){this.tileID&&this.tileID.equals(q.tileID.canonical)?(this.tiles[String(q.tileID.wrap)]=q,q.buckets={},K(null)):(q.state="errored",K(null))},D.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},D.prototype.hasTransition=function(){return!1},D}(i.Evented);function me(Y){for(var D=1/0,J=1/0,q=-1/0,K=-1/0,de=0,ne=Y;deK.end(0)?this.fire(new i.ErrorEvent(new i.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+K.start(0)+" and "+K.end(0)+"-second mark."))):this.video.currentTime=q}},D.prototype.getVideo=function(){return this.video},D.prototype.onAdd=function(q){this.map||(this.map=q,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},D.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||this.video.readyState<2)){var q=this.map.painter.context,K=q.gl;this.boundsBuffer||(this.boundsBuffer=q.createVertexBuffer(this._boundsArray,Ee.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE),K.texSubImage2D(K.TEXTURE_2D,0,0,0,K.RGBA,K.UNSIGNED_BYTE,this.video)):(this.texture=new i.Texture(q,this.video,K.RGBA),this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE));for(var de in this.tiles){var ne=this.tiles[de];ne.state!=="loaded"&&(ne.state="loaded",ne.texture=this.texture)}}},D.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},D.prototype.hasTransition=function(){return this.video&&!this.video.paused},D}(Ce),Se=function(Y){function D(J,q,K,de){Y.call(this,J,q,K,de),q.coordinates?(!Array.isArray(q.coordinates)||q.coordinates.length!==4||q.coordinates.some(function(ne){return!Array.isArray(ne)||ne.length!==2||ne.some(function(we){return typeof we!="number"})}))&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'missing required property "coordinates"'))),q.animate&&typeof q.animate!="boolean"&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'optional "animate" property must be a boolean value'))),q.canvas?typeof q.canvas!="string"&&!(q.canvas instanceof i.window.HTMLCanvasElement)&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'missing required property "canvas"'))),this.options=q,this.animate=q.animate!==void 0?q.animate:!0}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.load=function(){if(this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof i.window.HTMLCanvasElement?this.options.canvas:i.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()){this.fire(new i.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero.")));return}this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading()},D.prototype.getCanvas=function(){return this.canvas},D.prototype.onAdd=function(q){this.map=q,this.load(),this.canvas&&this.animate&&this.play()},D.prototype.onRemove=function(){this.pause()},D.prototype.prepare=function(){var q=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,q=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,q=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var K=this.map.painter.context,de=K.gl;this.boundsBuffer||(this.boundsBuffer=K.createVertexBuffer(this._boundsArray,Ee.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(q||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new i.Texture(K,this.canvas,de.RGBA,{premultiply:!0});for(var ne in this.tiles){var we=this.tiles[ne];we.state!=="loaded"&&(we.state="loaded",we.texture=this.texture)}}},D.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},D.prototype.hasTransition=function(){return this._playing},D.prototype._hasInvalidDimensions=function(){for(var q=0,K=[this.canvas.width,this.canvas.height];qthis.max){var we=this._getAndRemoveByKey(this.order[0]);we&&this.onRemove(we)}return this},st.prototype.has=function(D){return D.wrapped().key in this.data},st.prototype.getAndRemove=function(D){return this.has(D)?this._getAndRemoveByKey(D.wrapped().key):null},st.prototype._getAndRemoveByKey=function(D){var J=this.data[D].shift();return J.timeout&&clearTimeout(J.timeout),this.data[D].length===0&&delete this.data[D],this.order.splice(this.order.indexOf(D),1),J.value},st.prototype.getByKey=function(D){var J=this.data[D];return J?J[0].value:null},st.prototype.get=function(D){if(!this.has(D))return null;var J=this.data[D.wrapped().key][0];return J.value},st.prototype.remove=function(D,J){if(!this.has(D))return this;var q=D.wrapped().key,K=J===void 0?0:this.data[q].indexOf(J),de=this.data[q][K];return this.data[q].splice(K,1),de.timeout&&clearTimeout(de.timeout),this.data[q].length===0&&delete this.data[q],this.onRemove(de.value),this.order.splice(this.order.indexOf(q),1),this},st.prototype.setMaxSize=function(D){for(this.max=D;this.order.length>this.max;){var J=this._getAndRemoveByKey(this.order[0]);J&&this.onRemove(J)}return this},st.prototype.filter=function(D){var J=[];for(var q in this.data)for(var K=0,de=this.data[q];K1||(Math.abs(hr)>1&&(Math.abs(hr+Ve)===1?hr+=Ve:Math.abs(hr-Ve)===1&&(hr-=Ve)),!(!Xt.dem||!ft.dem)&&(ft.dem.backfillBorder(Xt.dem,hr,qt),ft.neighboringTiles&&ft.neighboringTiles[Qe]&&(ft.neighboringTiles[Qe].backfilled=!0)))}},D.prototype.getTile=function(q){return this.getTileByID(q.key)},D.prototype.getTileByID=function(q){return this._tiles[q]},D.prototype._retainLoadedChildren=function(q,K,de,ne){for(var we in this._tiles){var Ue=this._tiles[we];if(!(ne[we]||!Ue.hasData()||Ue.tileID.overscaledZ<=K||Ue.tileID.overscaledZ>de)){for(var ft=Ue.tileID;Ue&&Ue.tileID.overscaledZ>K+1;){var Xt=Ue.tileID.scaledTo(Ue.tileID.overscaledZ-1);Ue=this._tiles[Xt.key],Ue&&Ue.hasData()&&(ft=Xt)}for(var hr=ft;hr.overscaledZ>K;)if(hr=hr.scaledTo(hr.overscaledZ-1),q[hr.key]){ne[ft.key]=ft;break}}}},D.prototype.findLoadedParent=function(q,K){if(q.key in this._loadedParentTiles){var de=this._loadedParentTiles[q.key];return de&&de.tileID.overscaledZ>=K?de:null}for(var ne=q.overscaledZ-1;ne>=K;ne--){var we=q.scaledTo(ne),Ue=this._getLoadedTile(we);if(Ue)return Ue}},D.prototype._getLoadedTile=function(q){var K=this._tiles[q.key];if(K&&K.hasData())return K;var de=this._cache.getByKey(q.wrapped().key);return de},D.prototype.updateCacheSize=function(q){var K=Math.ceil(q.width/this._source.tileSize)+1,de=Math.ceil(q.height/this._source.tileSize)+1,ne=K*de,we=5,Ue=Math.floor(ne*we),ft=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Ue):Ue;this._cache.setMaxSize(ft)},D.prototype.handleWrapJump=function(q){var K=this._prevLng===void 0?q:this._prevLng,de=q-K,ne=de/360,we=Math.round(ne);if(this._prevLng=q,we){var Ue={};for(var ft in this._tiles){var Xt=this._tiles[ft];Xt.tileID=Xt.tileID.unwrapTo(Xt.tileID.wrap+we),Ue[Xt.tileID.key]=Xt}this._tiles=Ue;for(var hr in this._timers)clearTimeout(this._timers[hr]),delete this._timers[hr];for(var qt in this._tiles){var Ve=this._tiles[qt];this._setTileReloadTimer(qt,Ve)}}},D.prototype.update=function(q){var K=this;if(this.transform=q,!(!this._sourceLoaded||this._paused)){this.updateCacheSize(q),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={};var de;this.used?this._source.tileID?de=q.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(Ur){return new i.OverscaledTileID(Ur.canonical.z,Ur.wrap,Ur.canonical.z,Ur.canonical.x,Ur.canonical.y)}):(de=q.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(de=de.filter(function(Ur){return K._source.hasTile(Ur)}))):de=[];var ne=q.coveringZoomLevel(this._source),we=Math.max(ne-D.maxOverzooming,this._source.minzoom),Ue=Math.max(ne+D.maxUnderzooming,this._source.minzoom),ft=this._updateRetainedTiles(de,ne);if(Oi(this._source.type)){for(var Xt={},hr={},qt=Object.keys(ft),Ve=0,Qe=qt;Vethis._source.maxzoom){var Rt=Ct.children(this._source.maxzoom)[0],Bt=this.getTile(Rt);if(Bt&&Bt.hasData()){de[Rt.key]=Rt;continue}}else{var Dt=Ct.children(this._source.maxzoom);if(de[Dt[0].key]&&de[Dt[1].key]&&de[Dt[2].key]&&de[Dt[3].key])continue}for(var yt=Ot.wasRequested(),Pt=Ct.overscaledZ-1;Pt>=we;--Pt){var ht=Ct.scaledTo(Pt);if(ne[ht.key]||(ne[ht.key]=!0,Ot=this.getTile(ht),!Ot&&yt&&(Ot=this._addTile(ht)),Ot&&(de[ht.key]=ht,yt=Ot.wasRequested(),Ot.hasData())))break}}}return de},D.prototype._updateLoadedParentTileCache=function(){this._loadedParentTiles={};for(var q in this._tiles){for(var K=[],de=void 0,ne=this._tiles[q].tileID;ne.overscaledZ>0;){if(ne.key in this._loadedParentTiles){de=this._loadedParentTiles[ne.key];break}K.push(ne.key);var we=ne.scaledTo(ne.overscaledZ-1);if(de=this._getLoadedTile(we),de)break;ne=we}for(var Ue=0,ft=K;Ue0)&&(K.hasData()&&K.state!=="reloading"?this._cache.add(K.tileID,K,K.getExpiryTimeout()):(K.aborted=!0,this._abortTile(K),this._unloadTile(K))))},D.prototype.clearTiles=function(){this._shouldReloadOnResume=!1,this._paused=!1;for(var q in this._tiles)this._removeTile(q);this._cache.reset()},D.prototype.tilesIn=function(q,K,de){var ne=this,we=[],Ue=this.transform;if(!Ue)return we;for(var ft=de?Ue.getCameraQueryGeometry(q):q,Xt=q.map(function(Pt){return Ue.pointCoordinate(Pt)}),hr=ft.map(function(Pt){return Ue.pointCoordinate(Pt)}),qt=this.getIds(),Ve=1/0,Qe=1/0,at=-1/0,Ct=-1/0,Ot=0,Rt=hr;Ot=0&&Di[1].y+Ur>=0){var fi=Xt.map(function(gn){return ur.getTilePoint(gn)}),Ti=hr.map(function(gn){return ur.getTilePoint(gn)});we.push({tile:ht,tileID:ur,queryGeometry:fi,cameraQueryGeometry:Ti,scale:br})}}},yt=0;yt=i.browser.now())return!0}return!1},D.prototype.setFeatureState=function(q,K,de){q=q||"_geojsonTileLayer",this._state.updateState(q,K,de)},D.prototype.removeFeatureState=function(q,K,de){q=q||"_geojsonTileLayer",this._state.removeFeatureState(q,K,de)},D.prototype.getFeatureState=function(q,K){return q=q||"_geojsonTileLayer",this._state.getState(q,K)},D.prototype.setDependencies=function(q,K,de){var ne=this._tiles[q];ne&&ne.setDependencies(K,de)},D.prototype.reloadTilesForDependencies=function(q,K){for(var de in this._tiles){var ne=this._tiles[de];ne.hasDependency(q,K)&&this._reloadTile(de,"reloading")}this._cache.filter(function(we){return!we.hasDependency(q,K)})},D}(i.Evented);ri.maxOverzooming=10,ri.maxUnderzooming=3;function Qr(Y,D){var J=Math.abs(Y.wrap*2)-+(Y.wrap<0),q=Math.abs(D.wrap*2)-+(D.wrap<0);return Y.overscaledZ-D.overscaledZ||q-J||D.canonical.y-Y.canonical.y||D.canonical.x-Y.canonical.x}function Oi(Y){return Y==="raster"||Y==="image"||Y==="video"}function $i(){return new i.window.Worker(io.workerUrl)}var tn="mapboxgl_preloaded_worker_pool",fn=function(){this.active={}};fn.prototype.acquire=function(D){if(!this.workers)for(this.workers=[];this.workers.length0?(K-ne)/we:0;return this.points[de].mult(1-Ue).add(this.points[J].mult(Ue))};var Li=function(D,J,q){var K=this.boxCells=[],de=this.circleCells=[];this.xCellCount=Math.ceil(D/q),this.yCellCount=Math.ceil(J/q);for(var ne=0;nethis.width||K<0||J>this.height)return de?!1:[];var we=[];if(D<=0&&J<=0&&this.width<=q&&this.height<=K){if(de)return!0;for(var Ue=0;Ue0:we}},Li.prototype._queryCircle=function(D,J,q,K,de){var ne=D-q,we=D+q,Ue=J-q,ft=J+q;if(we<0||ne>this.width||ft<0||Ue>this.height)return K?!1:[];var Xt=[],hr={hitTest:K,circle:{x:D,y:J,radius:q},seenUids:{box:{},circle:{}}};return this._forEachCell(ne,Ue,we,ft,this._queryCellCircle,Xt,hr,de),K?Xt.length>0:Xt},Li.prototype.query=function(D,J,q,K,de){return this._query(D,J,q,K,!1,de)},Li.prototype.hitTest=function(D,J,q,K,de){return this._query(D,J,q,K,!0,de)},Li.prototype.hitTestCircle=function(D,J,q,K){return this._queryCircle(D,J,q,!0,K)},Li.prototype._queryCell=function(D,J,q,K,de,ne,we,Ue){var ft=we.seenUids,Xt=this.boxCells[de];if(Xt!==null)for(var hr=this.bboxes,qt=0,Ve=Xt;qt=hr[at+0]&&K>=hr[at+1]&&(!Ue||Ue(this.boxKeys[Qe]))){if(we.hitTest)return ne.push(!0),!0;ne.push({key:this.boxKeys[Qe],x1:hr[at],y1:hr[at+1],x2:hr[at+2],y2:hr[at+3]})}}}var Ct=this.circleCells[de];if(Ct!==null)for(var Ot=this.circles,Rt=0,Bt=Ct;Rtwe*we+Ue*Ue},Li.prototype._circleAndRectCollide=function(D,J,q,K,de,ne,we){var Ue=(ne-K)/2,ft=Math.abs(D-(K+Ue));if(ft>Ue+q)return!1;var Xt=(we-de)/2,hr=Math.abs(J-(de+Xt));if(hr>Xt+q)return!1;if(ft<=Ue||hr<=Xt)return!0;var qt=ft-Ue,Ve=hr-Xt;return qt*qt+Ve*Ve<=q*q};function _n(Y,D,J,q,K){var de=i.create();return D?(i.scale(de,de,[1/K,1/K,1]),J||i.rotateZ(de,de,q.angle)):i.multiply(de,q.labelPlaneMatrix,Y),de}function ya(Y,D,J,q,K){if(D){var de=i.clone(Y);return i.scale(de,de,[K,K,1]),J||i.rotateZ(de,de,-q.angle),de}else return q.glCoordMatrix}function Jn(Y,D){var J=[Y.x,Y.y,0,1];zl(J,J,D);var q=J[3];return{point:new i.Point(J[0]/q,J[1]/q),signedDistanceFromCamera:q}}function Ma(Y,D){return .5+.5*(Y/D)}function _o(Y,D){var J=Y[0]/Y[3],q=Y[1]/Y[3],K=J>=-D[0]&&J<=D[0]&&q>=-D[1]&&q<=D[1];return K}function No(Y,D,J,q,K,de,ne,we){var Ue=q?Y.textSizeData:Y.iconSizeData,ft=i.evaluateSizeForZoom(Ue,J.transform.zoom),Xt=[256/J.width*2+1,256/J.height*2+1],hr=q?Y.text.dynamicLayoutVertexArray:Y.icon.dynamicLayoutVertexArray;hr.clear();for(var qt=Y.lineVertexArray,Ve=q?Y.text.placedSymbolArray:Y.icon.placedSymbolArray,Qe=J.transform.width/J.transform.height,at=!1,Ct=0;Ctde)return{useVertical:!0}}return(Y===i.WritingMode.vertical?D.yJ.x)?{needsFlipping:!0}:null}function ko(Y,D,J,q,K,de,ne,we,Ue,ft,Xt,hr,qt,Ve){var Qe=D/24,at=Y.lineOffsetX*Qe,Ct=Y.lineOffsetY*Qe,Ot;if(Y.numGlyphs>1){var Rt=Y.glyphStartIndex+Y.numGlyphs,Bt=Y.lineStartIndex,Dt=Y.lineStartIndex+Y.lineLength,yt=po(Qe,we,at,Ct,J,Xt,hr,Y,Ue,de,qt);if(!yt)return{notEnoughRoom:!0};var Pt=Jn(yt.first.point,ne).point,ht=Jn(yt.last.point,ne).point;if(q&&!J){var ur=Lo(Y.writingMode,Pt,ht,Ve);if(ur)return ur}Ot=[yt.first];for(var br=Y.glyphStartIndex+1;br0?Ti.point:Ds(hr,fi,Ur,1,K),rn=Lo(Y.writingMode,Ur,gn,Ve);if(rn)return rn}var Ci=Fs(Qe*we.getoffsetX(Y.glyphStartIndex),at,Ct,J,Xt,hr,Y.segment,Y.lineStartIndex,Y.lineStartIndex+Y.lineLength,Ue,de,qt);if(!Ci)return{notEnoughRoom:!0};Ot=[Ci]}for(var Bi=0,Gi=Ot;Bi0?1:-1,Qe=0;q&&(Ve*=-1,Qe=Math.PI),Ve<0&&(Qe+=Math.PI);for(var at=Ve>0?we+ne:we+ne+1,Ct=K,Ot=K,Rt=0,Bt=0,Dt=Math.abs(qt),yt=[];Rt+Bt<=Dt;){if(at+=Ve,at=Ue)return null;if(Ot=Ct,yt.push(Ct),Ct=hr[at],Ct===void 0){var Pt=new i.Point(ft.getx(at),ft.gety(at)),ht=Jn(Pt,Xt);if(ht.signedDistanceFromCamera>0)Ct=hr[at]=ht.point;else{var ur=at-Ve,br=Rt===0?de:new i.Point(ft.getx(ur),ft.gety(ur));Ct=Ds(br,Pt,Ot,Dt-Rt+1,Xt)}}Rt+=Bt,Bt=Ot.dist(Ct)}var Ur=(Dt-Rt)/Bt,Di=Ct.sub(Ot),fi=Di.mult(Ur)._add(Ot);fi._add(Di._unit()._perp()._mult(J*Ve));var Ti=Qe+Math.atan2(Ct.y-Ot.y,Ct.x-Ot.x);return yt.push(fi),{point:fi,angle:Ti,path:yt}}var ll=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function ul(Y,D){for(var J=0;J=1;sn--)Gi.push(Ci.path[sn]);for(var zn=1;zn0){for(var so=Gi[0].clone(),Zo=Gi[0].clone(),ms=1;ms=Ti.x&&Zo.x<=gn.x&&so.y>=Ti.y&&Zo.y<=gn.y?ts=[Gi]:Zo.xgn.x||Zo.ygn.y?ts=[]:ts=i.clipLine([Gi],Ti.x,Ti.y,gn.x,gn.y)}for(var ou=0,Cv=ts;ou=this.screenRightBoundary||Kthis.screenBottomBoundary},il.prototype.isInsideGrid=function(D,J,q,K){return q>=0&&D=0&&J0){var Dt;return this.prevPlacement&&this.prevPlacement.variableOffsets[qt.crossTileID]&&this.prevPlacement.placements[qt.crossTileID]&&this.prevPlacement.placements[qt.crossTileID].text&&(Dt=this.prevPlacement.variableOffsets[qt.crossTileID].anchor),this.variableOffsets[qt.crossTileID]={textOffset:Ct,width:q,height:K,anchor:D,textBoxScale:de,prevAnchor:Dt},this.markUsedJustification(Ve,D,qt,Qe),Ve.allowVerticalPlacement&&(this.markUsedOrientation(Ve,Qe,qt),this.placedOrientations[qt.crossTileID]=Qe),{shift:Ot,placedGlyphBoxes:Rt}}},bs.prototype.placeLayerBucketPart=function(D,J,q){var K=this,de=D.parameters,ne=de.bucket,we=de.layout,Ue=de.posMatrix,ft=de.textLabelPlaneMatrix,Xt=de.labelToScreenMatrix,hr=de.textPixelRatio,qt=de.holdingForFade,Ve=de.collisionBoxArray,Qe=de.partiallyEvaluatedTextSize,at=de.collisionGroup,Ct=we.get("text-optional"),Ot=we.get("icon-optional"),Rt=we.get("text-allow-overlap"),Bt=we.get("icon-allow-overlap"),Dt=we.get("text-rotation-alignment")==="map",yt=we.get("text-pitch-alignment")==="map",Pt=we.get("icon-text-fit")!=="none",ht=we.get("symbol-z-order")==="viewport-y",ur=Rt&&(Bt||!ne.hasIconData()||Ot),br=Bt&&(Rt||!ne.hasTextData()||Ct);!ne.collisionArrays&&Ve&&ne.deserializeCollisionBoxes(Ve);var Ur=function(Ci,Bi){if(!J[Ci.crossTileID]){if(qt){K.placements[Ci.crossTileID]=new zs(!1,!1,!1);return}var Gi=!1,sn=!1,zn=!0,Ja=null,co={box:null,offscreen:null},ts={box:null,offscreen:null},so=null,Zo=null,ms=null,ou=0,Cv=0,Lv=0;Bi.textFeatureIndex?ou=Bi.textFeatureIndex:Ci.useRuntimeCollisionCircles&&(ou=Ci.featureIndex),Bi.verticalTextFeatureIndex&&(Cv=Bi.verticalTextFeatureIndex);var wd=Bi.textBox;if(wd){var Kv=function(vc){var eu=i.WritingMode.horizontal;if(ne.allowVerticalPlacement&&!vc&&K.prevPlacement){var Sd=K.prevPlacement.placedOrientations[Ci.crossTileID];Sd&&(K.placedOrientations[Ci.crossTileID]=Sd,eu=Sd,K.markUsedOrientation(ne,eu,Ci))}return eu},cg=function(vc,eu){if(ne.allowVerticalPlacement&&Ci.numVerticalGlyphVertices>0&&Bi.verticalTextBox)for(var Sd=0,ly=ne.writingModes;Sd0&&(Vd=Vd.filter(function(vc){return vc!==Ad.anchor}),Vd.unshift(Ad.anchor))}var Pv=function(vc,eu,Sd){for(var ly=vc.x2-vc.x1,T1=vc.y2-vc.y1,wu=Ci.textBoxScale,Nx=Pt&&!Bt?eu:null,am={box:[],offscreen:!1},Ew=Rt?Vd.length*2:Vd.length,Rv=0;Rv=Vd.length,Ux=K.attemptAnchorPlacement(om,vc,ly,T1,wu,Dt,yt,hr,Ue,at,kw,Ci,ne,Sd,Nx);if(Ux&&(am=Ux.placedGlyphBoxes,am&&am.box&&am.box.length)){Gi=!0,Ja=Ux.shift;break}}return am},Jv=function(){return Pv(wd,Bi.iconBox,i.WritingMode.horizontal)},Iv=function(){var vc=Bi.verticalTextBox,eu=co&&co.box&&co.box.length;return ne.allowVerticalPlacement&&!eu&&Ci.numVerticalGlyphVertices>0&&vc?Pv(vc,Bi.verticalIconBox,i.WritingMode.vertical):{box:null,offscreen:null}};cg(Jv,Iv),co&&(Gi=co.box,zn=co.offscreen);var ay=Kv(co&&co.box);if(!Gi&&K.prevPlacement){var fg=K.prevPlacement.variableOffsets[Ci.crossTileID];fg&&(K.variableOffsets[Ci.crossTileID]=fg,K.markUsedJustification(ne,fg.anchor,Ci,ay))}}else{var pp=function(vc,eu){var Sd=K.collisionIndex.placeCollisionBox(vc,Rt,hr,Ue,at.predicate);return Sd&&Sd.box&&Sd.box.length&&(K.markUsedOrientation(ne,eu,Ci),K.placedOrientations[Ci.crossTileID]=eu),Sd},Td=function(){return pp(wd,i.WritingMode.horizontal)},gp=function(){var vc=Bi.verticalTextBox;return ne.allowVerticalPlacement&&Ci.numVerticalGlyphVertices>0&&vc?pp(vc,i.WritingMode.vertical):{box:null,offscreen:null}};cg(Td,gp),Kv(co&&co.box&&co.box.length)}}if(so=co,Gi=so&&so.box&&so.box.length>0,zn=so&&so.offscreen,Ci.useRuntimeCollisionCircles){var oh=ne.text.placedSymbolArray.get(Ci.centerJustifiedTextSymbolIndex),hg=i.evaluateSizeForFeature(ne.textSizeData,Qe,oh),oy=we.get("text-padding"),jh=Ci.collisionCircleDiameter;Zo=K.collisionIndex.placeCollisionCircles(Rt,oh,ne.lineVertexArray,ne.glyphOffsetArray,hg,Ue,ft,Xt,q,yt,at.predicate,jh,oy),Gi=Rt||Zo.circles.length>0&&!Zo.collisionDetected,zn=zn&&Zo.offscreen}if(Bi.iconFeatureIndex&&(Lv=Bi.iconFeatureIndex),Bi.iconBox){var rm=function(vc){var eu=Pt&&Ja?nc(vc,Ja.x,Ja.y,Dt,yt,K.transform.angle):vc;return K.collisionIndex.placeCollisionBox(eu,Bt,hr,Ue,at.predicate)};ts&&ts.box&&ts.box.length&&Bi.verticalIconBox?(ms=rm(Bi.verticalIconBox),sn=ms.box.length>0):(ms=rm(Bi.iconBox),sn=ms.box.length>0),zn=zn&&ms.offscreen}var b1=Ct||Ci.numHorizontalGlyphVertices===0&&Ci.numVerticalGlyphVertices===0,w1=Ot||Ci.numIconVertices===0;if(!b1&&!w1?sn=Gi=sn&&Gi:w1?b1||(sn=sn&&Gi):Gi=sn&&Gi,Gi&&so&&so.box&&(ts&&ts.box&&Cv?K.collisionIndex.insertCollisionBox(so.box,we.get("text-ignore-placement"),ne.bucketInstanceId,Cv,at.ID):K.collisionIndex.insertCollisionBox(so.box,we.get("text-ignore-placement"),ne.bucketInstanceId,ou,at.ID)),sn&&ms&&K.collisionIndex.insertCollisionBox(ms.box,we.get("icon-ignore-placement"),ne.bucketInstanceId,Lv,at.ID),Zo&&(Gi&&K.collisionIndex.insertCollisionCircles(Zo.circles,we.get("text-ignore-placement"),ne.bucketInstanceId,ou,at.ID),q)){var sy=ne.bucketInstanceId,im=K.collisionCircleArrays[sy];im===void 0&&(im=K.collisionCircleArrays[sy]=new Io);for(var nm=0;nm=0;--fi){var Ti=Di[fi];Ur(ne.symbolInstances.get(Ti),ne.collisionArrays[Ti])}else for(var gn=D.symbolInstanceStart;gn=0&&(ne>=0&&Xt!==ne?D.text.placedSymbolArray.get(Xt).crossTileID=0:D.text.placedSymbolArray.get(Xt).crossTileID=q.crossTileID)}},bs.prototype.markUsedOrientation=function(D,J,q){for(var K=J===i.WritingMode.horizontal||J===i.WritingMode.horizontalOnly?J:0,de=J===i.WritingMode.vertical?J:0,ne=[q.leftJustifiedTextSymbolIndex,q.centerJustifiedTextSymbolIndex,q.rightJustifiedTextSymbolIndex],we=0,Ue=ne;we0||yt>0,Ur=Bt.numIconVertices>0,Di=K.placedOrientations[Bt.crossTileID],fi=Di===i.WritingMode.vertical,Ti=Di===i.WritingMode.horizontal||Di===i.WritingMode.horizontalOnly;if(br){var gn=ac(ur.text),rn=fi?aa:gn;Qe(D.text,Dt,rn);var Ci=Ti?aa:gn;Qe(D.text,yt,Ci);var Bi=ur.text.isHidden();[Bt.rightJustifiedTextSymbolIndex,Bt.centerJustifiedTextSymbolIndex,Bt.leftJustifiedTextSymbolIndex].forEach(function(Lv){Lv>=0&&(D.text.placedSymbolArray.get(Lv).hidden=Bi||fi?1:0)}),Bt.verticalPlacedTextSymbolIndex>=0&&(D.text.placedSymbolArray.get(Bt.verticalPlacedTextSymbolIndex).hidden=Bi||Ti?1:0);var Gi=K.variableOffsets[Bt.crossTileID];Gi&&K.markUsedJustification(D,Gi.anchor,Bt,Di);var sn=K.placedOrientations[Bt.crossTileID];sn&&(K.markUsedJustification(D,"left",Bt,sn),K.markUsedOrientation(D,sn,Bt))}if(Ur){var zn=ac(ur.icon),Ja=!(qt&&Bt.verticalPlacedIconSymbolIndex&&fi);if(Bt.placedIconSymbolIndex>=0){var co=Ja?zn:aa;Qe(D.icon,Bt.numIconVertices,co),D.icon.placedSymbolArray.get(Bt.placedIconSymbolIndex).hidden=ur.icon.isHidden()}if(Bt.verticalPlacedIconSymbolIndex>=0){var ts=Ja?aa:zn;Qe(D.icon,Bt.numVerticalIconVertices,ts),D.icon.placedSymbolArray.get(Bt.verticalPlacedIconSymbolIndex).hidden=ur.icon.isHidden()}}if(D.hasIconCollisionBoxData()||D.hasTextCollisionBoxData()){var so=D.collisionArrays[Rt];if(so){var Zo=new i.Point(0,0);if(so.textBox||so.verticalTextBox){var ms=!0;if(ft){var ou=K.variableOffsets[Pt];ou?(Zo=Su(ou.anchor,ou.width,ou.height,ou.textOffset,ou.textBoxScale),Xt&&Zo._rotate(hr?K.transform.angle:-K.transform.angle)):ms=!1}so.textBox&&Rn(D.textCollisionBox.collisionVertexArray,ur.text.placed,!ms||fi,Zo.x,Zo.y),so.verticalTextBox&&Rn(D.textCollisionBox.collisionVertexArray,ur.text.placed,!ms||Ti,Zo.x,Zo.y)}var Cv=!!(!Ti&&so.verticalIconBox);so.iconBox&&Rn(D.iconCollisionBox.collisionVertexArray,ur.icon.placed,Cv,qt?Zo.x:0,qt?Zo.y:0),so.verticalIconBox&&Rn(D.iconCollisionBox.collisionVertexArray,ur.icon.placed,!Cv,qt?Zo.x:0,qt?Zo.y:0)}}},Ct=0;CtD},bs.prototype.setStale=function(){this.stale=!0};function Rn(Y,D,J,q,K){Y.emplaceBack(D?1:0,J?1:0,q||0,K||0),Y.emplaceBack(D?1:0,J?1:0,q||0,K||0),Y.emplaceBack(D?1:0,J?1:0,q||0,K||0),Y.emplaceBack(D?1:0,J?1:0,q||0,K||0)}var _a=Math.pow(2,25),Vu=Math.pow(2,24),Ol=Math.pow(2,17),xo=Math.pow(2,16),Yl=Math.pow(2,9),Ns=Math.pow(2,8),Hl=Math.pow(2,1);function ac(Y){if(Y.opacity===0&&!Y.placed)return 0;if(Y.opacity===1&&Y.placed)return 4294967295;var D=Y.placed?1:0,J=Math.floor(Y.opacity*127);return J*_a+D*Vu+J*Ol+D*xo+J*Yl+D*Ns+J*Hl+D}var aa=0,Oo=function(D){this._sortAcrossTiles=D.layout.get("symbol-z-order")!=="viewport-y"&&D.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};Oo.prototype.continuePlacement=function(D,J,q,K,de){for(var ne=this._bucketParts;this._currentTileIndex2};this._currentPlacementIndex>=0;){var we=D[this._currentPlacementIndex],Ue=J[we],ft=this.placement.collisionIndex.transform.zoom;if(Ue.type==="symbol"&&(!Ue.minzoom||Ue.minzoom<=ft)&&(!Ue.maxzoom||Ue.maxzoom>ft)){this._inProgressLayer||(this._inProgressLayer=new Oo(Ue));var Xt=this._inProgressLayer.continuePlacement(q[Ue.source],this.placement,this._showCollisionBoxes,Ue,ne);if(Xt)return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},qo.prototype.commit=function(D){return this.placement.commit(D),this.placement};var ql=512/i.EXTENT/2,Pc=function(D,J,q){this.tileID=D,this.indexedSymbolInstances={},this.bucketInstanceId=q;for(var K=0;KD.overscaledZ)for(var ft in Ue){var Xt=Ue[ft];Xt.tileID.isChildOf(D)&&Xt.findMatches(J.symbolInstances,D,ne)}else{var hr=D.scaledTo(Number(we)),qt=Ue[hr.key];qt&&qt.findMatches(J.symbolInstances,D,ne)}}for(var Ve=0;Ve0)throw new Error("Unimplemented: "+ne.map(function(we){return we.command}).join(", ")+".");return de.forEach(function(we){we.command!=="setTransition"&&K[we.command].apply(K,we.args)}),this.stylesheet=q,!0},D.prototype.addImage=function(q,K){if(this.getImage(q))return this.fire(new i.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(q,K),this._afterImageUpdated(q)},D.prototype.updateImage=function(q,K){this.imageManager.updateImage(q,K)},D.prototype.getImage=function(q){return this.imageManager.getImage(q)},D.prototype.removeImage=function(q){if(!this.getImage(q))return this.fire(new i.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(q),this._afterImageUpdated(q)},D.prototype._afterImageUpdated=function(q){this._availableImages=this.imageManager.listImages(),this._changedImages[q]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new i.Event("data",{dataType:"style"}))},D.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},D.prototype.addSource=function(q,K,de){var ne=this;if(de===void 0&&(de={}),this._checkLoaded(),this.sourceCaches[q]!==void 0)throw new Error("There is already a source with this ID");if(!K.type)throw new Error("The type property must be defined, but only the following properties were given: "+Object.keys(K).join(", ")+".");var we=["vector","raster","geojson","video","image"],Ue=we.indexOf(K.type)>=0;if(!(Ue&&this._validate(i.validateStyle.source,"sources."+q,K,null,de))){this.map&&this.map._collectResourceTiming&&(K.collectResourceTiming=!0);var ft=this.sourceCaches[q]=new ri(q,K,this.dispatcher);ft.style=this,ft.setEventedParent(this,function(){return{isSourceLoaded:ne.loaded(),source:ft.serialize(),sourceId:q}}),ft.onAdd(this.map),this._changed=!0}},D.prototype.removeSource=function(q){if(this._checkLoaded(),this.sourceCaches[q]===void 0)throw new Error("There is no source with this ID");for(var K in this._layers)if(this._layers[K].source===q)return this.fire(new i.ErrorEvent(new Error('Source "'+q+'" cannot be removed while layer "'+K+'" is using it.')));var de=this.sourceCaches[q];delete this.sourceCaches[q],delete this._updatedSources[q],de.fire(new i.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:q})),de.setEventedParent(null),de.clearTiles(),de.onRemove&&de.onRemove(this.map),this._changed=!0},D.prototype.setGeoJSONSourceData=function(q,K){this._checkLoaded();var de=this.sourceCaches[q].getSource();de.setData(K),this._changed=!0},D.prototype.getSource=function(q){return this.sourceCaches[q]&&this.sourceCaches[q].getSource()},D.prototype.addLayer=function(q,K,de){de===void 0&&(de={}),this._checkLoaded();var ne=q.id;if(this.getLayer(ne)){this.fire(new i.ErrorEvent(new Error('Layer with id "'+ne+'" already exists on this map')));return}var we;if(q.type==="custom"){if(pl(this,i.validateCustomStyleLayer(q)))return;we=i.createStyleLayer(q)}else{if(typeof q.source=="object"&&(this.addSource(ne,q.source),q=i.clone$1(q),q=i.extend(q,{source:ne})),this._validate(i.validateStyle.layer,"layers."+ne,q,{arrayIndex:-1},de))return;we=i.createStyleLayer(q),this._validateLayer(we),we.setEventedParent(this,{layer:{id:ne}}),this._serializedLayers[we.id]=we.serialize()}var Ue=K?this._order.indexOf(K):this._order.length;if(K&&Ue===-1){this.fire(new i.ErrorEvent(new Error('Layer with id "'+K+'" does not exist on this map.')));return}if(this._order.splice(Ue,0,ne),this._layerOrderChanged=!0,this._layers[ne]=we,this._removedLayers[ne]&&we.source&&we.type!=="custom"){var ft=this._removedLayers[ne];delete this._removedLayers[ne],ft.type!==we.type?this._updatedSources[we.source]="clear":(this._updatedSources[we.source]="reload",this.sourceCaches[we.source].pause())}this._updateLayer(we),we.onAdd&&we.onAdd(this.map)},D.prototype.moveLayer=function(q,K){this._checkLoaded(),this._changed=!0;var de=this._layers[q];if(!de){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be moved.")));return}if(q!==K){var ne=this._order.indexOf(q);this._order.splice(ne,1);var we=K?this._order.indexOf(K):this._order.length;if(K&&we===-1){this.fire(new i.ErrorEvent(new Error('Layer with id "'+K+'" does not exist on this map.')));return}this._order.splice(we,0,q),this._layerOrderChanged=!0}},D.prototype.removeLayer=function(q){this._checkLoaded();var K=this._layers[q];if(!K){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be removed.")));return}K.setEventedParent(null);var de=this._order.indexOf(q);this._order.splice(de,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[q]=K,delete this._layers[q],delete this._serializedLayers[q],delete this._updatedLayers[q],delete this._updatedPaintProps[q],K.onRemove&&K.onRemove(this.map)},D.prototype.getLayer=function(q){return this._layers[q]},D.prototype.hasLayer=function(q){return q in this._layers},D.prototype.setLayerZoomRange=function(q,K,de){this._checkLoaded();var ne=this.getLayer(q);if(!ne){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot have zoom extent.")));return}ne.minzoom===K&&ne.maxzoom===de||(K!=null&&(ne.minzoom=K),de!=null&&(ne.maxzoom=de),this._updateLayer(ne))},D.prototype.setFilter=function(q,K,de){de===void 0&&(de={}),this._checkLoaded();var ne=this.getLayer(q);if(!ne){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be filtered.")));return}if(!i.deepEqual(ne.filter,K)){if(K==null){ne.filter=void 0,this._updateLayer(ne);return}this._validate(i.validateStyle.filter,"layers."+ne.id+".filter",K,null,de)||(ne.filter=i.clone$1(K),this._updateLayer(ne))}},D.prototype.getFilter=function(q){return i.clone$1(this.getLayer(q).filter)},D.prototype.setLayoutProperty=function(q,K,de,ne){ne===void 0&&(ne={}),this._checkLoaded();var we=this.getLayer(q);if(!we){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be styled.")));return}i.deepEqual(we.getLayoutProperty(K),de)||(we.setLayoutProperty(K,de,ne),this._updateLayer(we))},D.prototype.getLayoutProperty=function(q,K){var de=this.getLayer(q);if(!de){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style.")));return}return de.getLayoutProperty(K)},D.prototype.setPaintProperty=function(q,K,de,ne){ne===void 0&&(ne={}),this._checkLoaded();var we=this.getLayer(q);if(!we){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be styled.")));return}if(!i.deepEqual(we.getPaintProperty(K),de)){var Ue=we.setPaintProperty(K,de,ne);Ue&&this._updateLayer(we),this._changed=!0,this._updatedPaintProps[q]=!0}},D.prototype.getPaintProperty=function(q,K){return this.getLayer(q).getPaintProperty(K)},D.prototype.setFeatureState=function(q,K){this._checkLoaded();var de=q.source,ne=q.sourceLayer,we=this.sourceCaches[de];if(we===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+de+"' does not exist in the map's style.")));return}var Ue=we.getSource().type;if(Ue==="geojson"&&ne){this.fire(new i.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));return}if(Ue==="vector"&&!ne){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}q.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),we.setFeatureState(ne,q.id,K)},D.prototype.removeFeatureState=function(q,K){this._checkLoaded();var de=q.source,ne=this.sourceCaches[de];if(ne===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+de+"' does not exist in the map's style.")));return}var we=ne.getSource().type,Ue=we==="vector"?q.sourceLayer:void 0;if(we==="vector"&&!Ue){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}if(K&&typeof q.id!="string"&&typeof q.id!="number"){this.fire(new i.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));return}ne.removeFeatureState(Ue,q.id,K)},D.prototype.getFeatureState=function(q){this._checkLoaded();var K=q.source,de=q.sourceLayer,ne=this.sourceCaches[K];if(ne===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+K+"' does not exist in the map's style.")));return}var we=ne.getSource().type;if(we==="vector"&&!de){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}return q.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),ne.getFeatureState(de,q.id)},D.prototype.getTransition=function(){return i.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},D.prototype.serialize=function(){return i.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:i.mapObject(this.sourceCaches,function(q){return q.serialize()}),layers:this._serializeLayers(this._order)},function(q){return q!==void 0})},D.prototype._updateLayer=function(q){this._updatedLayers[q.id]=!0,q.source&&!this._updatedSources[q.source]&&this.sourceCaches[q.source].getSource().type!=="raster"&&(this._updatedSources[q.source]="reload",this.sourceCaches[q.source].pause()),this._changed=!0},D.prototype._flattenAndSortRenderedFeatures=function(q){for(var K=this,de=function(Ti){return K._layers[Ti].type==="fill-extrusion"},ne={},we=[],Ue=this._order.length-1;Ue>=0;Ue--){var ft=this._order[Ue];if(de(ft)){ne[ft]=Ue;for(var Xt=0,hr=q;Xt=0;Rt--){var Bt=this._order[Rt];if(de(Bt))for(var Dt=we.length-1;Dt>=0;Dt--){var yt=we[Dt].feature;if(ne[yt.layer.id] .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":`display:block; width: 21px; height: 21px; background-image: url('data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E')`}}});var Nk=ye((lxr,IVe)=>{"use strict";var CVe=Dr(),LVe=ka().defaultLine,YHt=Cc().attributes,KHt=ec(),JHt=pf().textposition,$Ht=mc().overrideAll,QHt=vl().templatedArray,QK=c1(),PVe=KHt({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});PVe.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var ejt=IVe.exports=$Ht({_arrayAttrRegexps:[CVe.counterRegex("mapbox",".layers",!0)],domain:YHt({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:QK.styleValuesMapbox.concat(QK.styleValuesNonMapbox),dflt:QK.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:QHt("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:LVe},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:LVe}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:PVe,textposition:CVe.extendFlat({},JHt,{arrayOk:!1})}})},"plot","from-root");ejt.uirevision={valType:"any",editType:"none"}});var Wz=ye((uxr,zVe)=>{"use strict";var{hovertemplateAttrs:tjt,texttemplateAttrs:rjt,templatefallbackAttrs:RVe}=Ll(),ijt=Cg(),Uk=j2(),T5=pf(),DVe=Nk(),njt=Gl(),ajt=Tu(),rw=Ao().extendFlat,ojt=mc().overrideAll,sjt=Nk(),FVe=Uk.line,A5=Uk.marker;zVe.exports=ojt({lon:Uk.lon,lat:Uk.lat,cluster:{enabled:{valType:"boolean"},maxzoom:rw({},sjt.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:rw({},A5.opacity,{dflt:1})},mode:rw({},T5.mode,{dflt:"markers"}),text:rw({},T5.text,{}),texttemplate:rjt({editType:"plot"},{keys:["lat","lon","text"]}),texttemplatefallback:RVe({editType:"plot"}),hovertext:rw({},T5.hovertext,{}),line:{color:FVe.color,width:FVe.width},connectgaps:T5.connectgaps,marker:rw({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:A5.opacity,size:A5.size,sizeref:A5.sizeref,sizemin:A5.sizemin,sizemode:A5.sizemode},ajt("marker")),fill:Uk.fill,fillcolor:ijt(),textfont:DVe.layers.symbol.textfont,textposition:DVe.layers.symbol.textposition,below:{valType:"string"},selected:{marker:T5.selected.marker},unselected:{marker:T5.unselected.marker},hoverinfo:rw({},njt.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:tjt(),hovertemplatefallback:RVe()},"calc","nested")});var eJ=ye((cxr,OVe)=>{"use strict";var ljt=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];OVe.exports={isSupportedFont:function(e){return ljt.indexOf(e)!==-1}}});var NVe=ye((fxr,BVe)=>{"use strict";var Vk=Dr(),tJ=Ru(),ujt=$p(),cjt=R0(),fjt=D0(),hjt=Rg(),qVe=Wz(),djt=eJ().isSupportedFont;BVe.exports=function(t,r,n,i){function a(p,k){return Vk.coerce(t,r,qVe,p,k)}function o(p,k){return Vk.coerce2(t,r,qVe,p,k)}var s=vjt(t,r,a);if(!s){r.visible=!1;return}if(a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),a("below"),tJ.hasMarkers(r)){ujt(t,r,n,i,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var l=r.marker;l.symbol!=="circle"&&(Vk.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),Vk.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}tJ.hasLines(r)&&(cjt(t,r,n,i,a,{noDash:!0}),a("connectgaps"));var u=o("cluster.maxzoom"),c=o("cluster.step"),f=o("cluster.color",r.marker&&r.marker.color||n),h=o("cluster.size"),d=o("cluster.opacity"),v=u!==!1||c!==!1||f!==!1||h!==!1||d!==!1,_=a("cluster.enabled",v);if(_||tJ.hasText(r)){var b=i.font.family;fjt(t,r,i,a,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:djt(b)?b:"Open Sans Regular",weight:i.font.weight,style:i.font.style,size:i.font.size,color:i.font.color}})}a("fill"),r.fill!=="none"&&hjt(t,r,n,a),Vk.coerceSelectionMarkerOpacity(r,a)};function vjt(e,t,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return t._length=a,a}});var rJ=ye((hxr,VVe)=>{"use strict";var UVe=ho();VVe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=UVe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=UVe.tickText(o,o.c2l(s[1]),!0).text,i}});var iJ=ye((dxr,HVe)=>{"use strict";var GVe=Dr();HVe.exports=function(t,r){var n=t.split(" "),i=n[0],a=n[1],o=GVe.isArrayOrTypedArray(r)?GVe.mean(r):r,s=.5+o/100,l=1.5+o/100,u=["",""],c=[0,0];switch(i){case"top":u[0]="top",c[1]=-l;break;case"bottom":u[0]="bottom",c[1]=l;break}switch(a){case"left":u[1]="right",c[0]=-s;break;case"right":u[1]="left",c[0]=s;break}var f;return u[0]&&u[1]?f=u.join("-"):u[0]?f=u[0]:u[1]?f=u[1]:f="center",{anchor:f,offset:c}}});var KVe=ye((vxr,YVe)=>{"use strict";var XVe=Eo(),av=Dr(),pjt=fs().BADNUM,Zz=tx(),jVe=tc(),gjt=So(),mjt=k3(),Yz=Ru(),yjt=eJ().isSupportedFont,_jt=iJ(),xjt=ip().appendArrayPointValue,bjt=ru().NEWLINES,wjt=ru().BR_TAG_ALL;YVe.exports=function(t,r){var n=r[0].trace,i=n.visible===!0&&n._length!==0,a=n.fill!=="none",o=Yz.hasLines(n),s=Yz.hasMarkers(n),l=Yz.hasText(n),u=s&&n.marker.symbol==="circle",c=s&&n.marker.symbol!=="circle",f=n.cluster&&n.cluster.enabled,h=Xz("fill"),d=Xz("line"),v=Xz("circle"),_=Xz("symbol"),b={fill:h,line:d,circle:v,symbol:_};if(!i)return b;var p;if((a||o)&&(p=Zz.calcTraceToLineCoords(r)),a&&(h.geojson=Zz.makePolygon(p),h.layout.visibility="visible",av.extendFlat(h.paint,{"fill-color":n.fillcolor})),o&&(d.geojson=Zz.makeLine(p),d.layout.visibility="visible",av.extendFlat(d.paint,{"line-width":n.line.width,"line-color":n.line.color,"line-opacity":n.opacity})),u){var k=Tjt(r);v.geojson=k.geojson,v.layout.visibility="visible",f&&(v.filter=["!",["has","point_count"]],b.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":aJ(n.cluster.color,n.cluster.step),"circle-radius":aJ(n.cluster.size,n.cluster.step),"circle-opacity":aJ(n.cluster.opacity,n.cluster.step)}},b.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":WVe(n),"text-size":12}}),av.extendFlat(v.paint,{"circle-color":k.mcc,"circle-radius":k.mrc,"circle-opacity":k.mo})}if(u&&f&&(v.filter=["!",["has","point_count"]]),(c||l)&&(_.geojson=Ajt(r,t),av.extendFlat(_.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),c&&(av.extendFlat(_.layout,{"icon-size":n.marker.size/10}),"angle"in n.marker&&n.marker.angle!=="auto"&&av.extendFlat(_.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),_.layout["icon-allow-overlap"]=n.marker.allowoverlap,av.extendFlat(_.paint,{"icon-opacity":n.opacity*n.marker.opacity,"icon-color":n.marker.color})),l)){var E=(n.marker||{}).size,S=_jt(n.textposition,E);av.extendFlat(_.layout,{"text-size":n.textfont.size,"text-anchor":S.anchor,"text-offset":S.offset,"text-font":WVe(n)}),av.extendFlat(_.paint,{"text-color":n.textfont.color,"text-opacity":n.opacity})}return b};function Xz(e){return{type:e,geojson:Zz.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function Tjt(e){var t=e[0].trace,r=t.marker,n=t.selectedpoints,i=av.isArrayOrTypedArray(r.color),a=av.isArrayOrTypedArray(r.size),o=av.isArrayOrTypedArray(r.opacity),s;function l(E){return t.opacity*E}function u(E){return E/2}var c;i&&(jVe.hasColorscale(t,"marker")?c=jVe.makeColorScaleFuncFromTrace(r):c=av.identity);var f;a&&(f=mjt(t));var h;o&&(h=function(E){var S=XVe(E)?+av.constrain(E,0,1):0;return l(S)});var d=[];for(s=0;s850?s+=" Black":i>750?s+=" Extra Bold":i>650?s+=" Bold":i>550?s+=" Semi Bold":i>450?s+=" Medium":i>350?s+=" Regular":i>250?s+=" Light":i>150?s+=" Extra Light":s+=" Thin"):a.slice(0,2).join(" ")==="Open Sans"?(s="Open Sans",i>750?s+=" Extrabold":i>650?s+=" Bold":i>550?s+=" Semibold":i>350?s+=" Regular":s+=" Light"):a.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(s="Klokantech Noto Sans",a[3]==="CJK"&&(s+=" CJK"),s+=i>500?" Bold":" Regular")),o&&(s+=" Italic"),s==="Open Sans Regular Italic"?s="Open Sans Italic":s==="Open Sans Regular Bold"?s="Open Sans Bold":s==="Open Sans Regular Bold Italic"?s="Open Sans Bold Italic":s==="Klokantech Noto Sans Regular Italic"&&(s="Klokantech Noto Sans Italic"),yjt(s)||(s=r);var l=s.split(", ");return l}});var eGe=ye((pxr,QVe)=>{"use strict";var Sjt=Dr(),JVe=KVe(),S5=c1().traceLayerPrefix,rg={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function $Ve(e,t,r,n){this.type="scattermapbox",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:S5+t+"-fill",line:S5+t+"-line",circle:S5+t+"-circle",symbol:S5+t+"-symbol",cluster:S5+t+"-cluster",clusterCount:S5+t+"-cluster-count"},this.below=null}var Gk=$Ve.prototype;Gk.addSource=function(e,t,r){var n={type:"geojson",data:t.geojson};r&&r.enabled&&Sjt.extendFlat(n,{cluster:!0,clusterMaxZoom:r.maxzoom});var i=this.subplot.map.getSource(this.sourceIds[e]);i?i.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],n)};Gk.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};Gk.addLayer=function(e,t,r){var n={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(n.filter=t.filter);for(var i=this.layerIds[e],a,o=this.subplot.getMapLayers(),s=0;s=0;L--){var x=S[L];i.removeLayer(u.layerIds[x])}E||i.removeSource(u.sourceIds.circle)}function h(E){for(var S=rg.nonCluster,L=0;L=0;L--){var x=S[L];i.removeLayer(u.layerIds[x]),E||i.removeSource(u.sourceIds[x])}}function v(E){l?f(E):d(E)}function _(E){s?c(E):h(E)}function b(){for(var E=s?rg.cluster:rg.nonCluster,S=0;S=0;n--){var i=r[n];t.removeLayer(this.layerIds[i]),t.removeSource(this.sourceIds[i])}};QVe.exports=function(t,r){var n=r[0].trace,i=n.cluster&&n.cluster.enabled,a=n.visible!==!0,o=new $Ve(t,n.uid,i,a),s=JVe(t.gd,r),l=o.below=t.belowLookup["trace-"+n.uid],u,c,f;if(i)for(o.addSource("circle",s.circle,n.cluster),u=0;u{"use strict";var Mjt=vf(),oJ=Dr(),Ejt=cT(),kjt=oJ.fillText,Cjt=fs().BADNUM,Ljt=c1().traceLayerPrefix;function Pjt(e,t,r){var n=e.cd,i=n[0].trace,a=e.xa,o=e.ya,s=e.subplot,l=[],u=Ljt+i.uid+"-circle",c=i.cluster&&i.cluster.enabled;if(c){var f=s.map.queryRenderedFeatures(null,{layers:[u]});l=f.map(function(M){return M.id})}var h=t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360),d=h*360,v=t-d;function _(M){var g=M.lonlat;if(g[0]===Cjt||c&&l.indexOf(M.i+1)===-1)return 1/0;var P=oJ.modHalf(g[0],360),T=g[1],z=s.project([P,T]),O=z.x-a.c2p([v,T]),V=z.y-o.c2p([P,r]),G=Math.max(3,M.mrc||0);return Math.max(Math.sqrt(O*O+V*V)-G,1-3/G)}if(Mjt.getClosest(n,_,e),e.index!==!1){var b=n[e.index],p=b.lonlat,k=[oJ.modHalf(p[0],360)+d,p[1]],E=a.c2p(k),S=o.c2p(k),L=b.mrc||1;e.x0=E-L,e.x1=E+L,e.y0=S-L,e.y1=S+L;var x={};x[i.subplot]={_subplot:s};var C=i._module.formatLabels(b,i,x);return e.lonLabel=C.lonLabel,e.latLabel=C.latLabel,e.color=Ejt(i,b),e.extraText=tGe(i,b,n[0].t.labels),e.hovertemplate=i.hovertemplate,[e]}}function tGe(e,t,r){if(e.hovertemplate)return;var n=t.hi||e.hoverinfo,i=n.split("+"),a=i.indexOf("all")!==-1,o=i.indexOf("lon")!==-1,s=i.indexOf("lat")!==-1,l=t.lonlat,u=[];function c(f){return f+"\xB0"}return a||o&&s?u.push("("+c(l[1])+", "+c(l[0])+")"):o?u.push(r.lon+c(l[0])):s&&u.push(r.lat+c(l[1])),(a||i.indexOf("text")!==-1)&&kjt(t,e,u),u.join("
")}rGe.exports={hoverPoints:Pjt,getExtraText:tGe}});var nGe=ye((mxr,iGe)=>{"use strict";iGe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var oGe=ye((yxr,aGe)=>{"use strict";var Ijt=Dr(),Rjt=Ru(),Djt=fs().BADNUM;aGe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l;if(!Rjt.hasMarkers(s))return[];if(r===!1)for(l=0;l{(function(e,t){typeof sJ=="object"&&typeof lJ!="undefined"?lJ.exports=t():(e=e||self,e.mapboxgl=t())})(sJ,function(){"use strict";var e,t,r;function n(i,a){if(!e)e=a;else if(!t)t=a;else{var o="var sharedChunk = {}; ("+e+")(sharedChunk); ("+t+")(sharedChunk);",s={};e(s),r=a(s),typeof window!="undefined"&&(r.workerUrl=window.URL.createObjectURL(new Blob([o],{type:"text/javascript"})))}}return n(["exports"],function(i){"use strict";function a(m,y){return y={exports:{}},m(y,y.exports),y.exports}var o="1.13.4",s=l;function l(m,y,I,U){this.cx=3*m,this.bx=3*(I-m)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*y,this.by=3*(U-y)-this.cy,this.ay=1-this.cy-this.by,this.p1x=m,this.p1y=U,this.p2x=I,this.p2y=U}l.prototype.sampleCurveX=function(m){return((this.ax*m+this.bx)*m+this.cx)*m},l.prototype.sampleCurveY=function(m){return((this.ay*m+this.by)*m+this.cy)*m},l.prototype.sampleCurveDerivativeX=function(m){return(3*this.ax*m+2*this.bx)*m+this.cx},l.prototype.solveCurveX=function(m,y){typeof y=="undefined"&&(y=1e-6);var I,U,$,ae,he;for($=m,he=0;he<8;he++){if(ae=this.sampleCurveX($)-m,Math.abs(ae)U)return U;for(;Iae?I=$:U=$,$=(U-I)*.5+I}return $},l.prototype.solve=function(m,y){return this.sampleCurveY(this.solveCurveX(m,y))};var u=c;function c(m,y){this.x=m,this.y=y}c.prototype={clone:function(){return new c(this.x,this.y)},add:function(m){return this.clone()._add(m)},sub:function(m){return this.clone()._sub(m)},multByPoint:function(m){return this.clone()._multByPoint(m)},divByPoint:function(m){return this.clone()._divByPoint(m)},mult:function(m){return this.clone()._mult(m)},div:function(m){return this.clone()._div(m)},rotate:function(m){return this.clone()._rotate(m)},rotateAround:function(m,y){return this.clone()._rotateAround(m,y)},matMult:function(m){return this.clone()._matMult(m)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(m){return this.x===m.x&&this.y===m.y},dist:function(m){return Math.sqrt(this.distSqr(m))},distSqr:function(m){var y=m.x-this.x,I=m.y-this.y;return y*y+I*I},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(m){return Math.atan2(this.y-m.y,this.x-m.x)},angleWith:function(m){return this.angleWithSep(m.x,m.y)},angleWithSep:function(m,y){return Math.atan2(this.x*y-this.y*m,this.x*m+this.y*y)},_matMult:function(m){var y=m[0]*this.x+m[1]*this.y,I=m[2]*this.x+m[3]*this.y;return this.x=y,this.y=I,this},_add:function(m){return this.x+=m.x,this.y+=m.y,this},_sub:function(m){return this.x-=m.x,this.y-=m.y,this},_mult:function(m){return this.x*=m,this.y*=m,this},_div:function(m){return this.x/=m,this.y/=m,this},_multByPoint:function(m){return this.x*=m.x,this.y*=m.y,this},_divByPoint:function(m){return this.x/=m.x,this.y/=m.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var m=this.y;return this.y=this.x,this.x=-m,this},_rotate:function(m){var y=Math.cos(m),I=Math.sin(m),U=y*this.x-I*this.y,$=I*this.x+y*this.y;return this.x=U,this.y=$,this},_rotateAround:function(m,y){var I=Math.cos(m),U=Math.sin(m),$=y.x+I*(this.x-y.x)-U*(this.y-y.y),ae=y.y+U*(this.x-y.x)+I*(this.y-y.y);return this.x=$,this.y=ae,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},c.convert=function(m){return m instanceof c?m:Array.isArray(m)?new c(m[0],m[1]):m};var f=typeof self!="undefined"?self:{};function h(m,y){if(Array.isArray(m)){if(!Array.isArray(y)||m.length!==y.length)return!1;for(var I=0;I=1)return 1;var y=m*m,I=y*m;return 4*(m<.5?I:3*(m-y)+I-.75)}function _(m,y,I,U){var $=new s(m,y,I,U);return function(ae){return $.solve(ae)}}var b=_(.25,.1,.25,1);function p(m,y,I){return Math.min(I,Math.max(y,m))}function k(m,y,I){var U=I-y,$=((m-y)%U+U)%U+y;return $===y?I:$}function E(m,y,I){if(!m.length)return I(null,[]);var U=m.length,$=new Array(m.length),ae=null;m.forEach(function(he,Oe){y(he,function(rt,gt){rt&&(ae=rt),$[Oe]=gt,--U===0&&I(ae,$)})})}function S(m){var y=[];for(var I in m)y.push(m[I]);return y}function L(m,y){var I=[];for(var U in m)U in y||I.push(U);return I}function x(m){for(var y=[],I=arguments.length-1;I-- >0;)y[I]=arguments[I+1];for(var U=0,$=y;U<$.length;U+=1){var ae=$[U];for(var he in ae)m[he]=ae[he]}return m}function C(m,y){for(var I={},U=0;U>y/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,m)}return m()}function T(m){return m<=1?1:Math.pow(2,Math.ceil(Math.log(m)/Math.LN2))}function z(m){return m?/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(m):!1}function O(m,y){m.forEach(function(I){y[I]&&(y[I]=y[I].bind(y))})}function V(m,y){return m.indexOf(y,m.length-y.length)!==-1}function G(m,y,I){var U={};for(var $ in m)U[$]=y.call(I||this,m[$],$,m);return U}function Z(m,y,I){var U={};for(var $ in m)y.call(I||this,m[$],$,m)&&(U[$]=m[$]);return U}function j(m){return Array.isArray(m)?m.map(j):typeof m=="object"&&m?G(m,j):m}function N(m,y){for(var I=0;I=0)return!0;return!1}var H={};function te(m){H[m]||(typeof console!="undefined"&&console.warn(m),H[m]=!0)}function oe(m,y,I){return(I.y-m.y)*(y.x-m.x)>(y.y-m.y)*(I.x-m.x)}function _e(m){for(var y=0,I=0,U=m.length,$=U-1,ae=void 0,he=void 0;I@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,I={};if(m.replace(y,function($,ae,he,Oe){var rt=he||Oe;return I[ae]=rt?rt.toLowerCase():!0,""}),I["max-age"]){var U=parseInt(I["max-age"],10);isNaN(U)?delete I["max-age"]:I["max-age"]=U}return I}var ie=null;function Se(m){if(ie==null){var y=m.navigator?m.navigator.userAgent:null;ie=!!m.safari||!!(y&&(/\b(iPad|iPhone|iPod)\b/.test(y)||y.match("Safari")&&!y.match("Chrome")))}return ie}function Le(m){try{var y=f[m];return y.setItem("_mapbox_test_",1),y.removeItem("_mapbox_test_"),!0}catch(I){return!1}}function Ae(m){return f.btoa(encodeURIComponent(m).replace(/%([0-9A-F]{2})/g,function(y,I){return String.fromCharCode(+("0x"+I))}))}function Fe(m){return decodeURIComponent(f.atob(m).split("").map(function(y){return"%"+("00"+y.charCodeAt(0).toString(16)).slice(-2)}).join(""))}var Pe=f.performance&&f.performance.now?f.performance.now.bind(f.performance):Date.now.bind(Date),ge=f.requestAnimationFrame||f.mozRequestAnimationFrame||f.webkitRequestAnimationFrame||f.msRequestAnimationFrame,Re=f.cancelAnimationFrame||f.mozCancelAnimationFrame||f.webkitCancelAnimationFrame||f.msCancelAnimationFrame,ce,Ze,ut={now:Pe,frame:function(y){var I=ge(y);return{cancel:function(){return Re(I)}}},getImageData:function(y,I){I===void 0&&(I=0);var U=f.document.createElement("canvas"),$=U.getContext("2d");if(!$)throw new Error("failed to create canvas 2d context");return U.width=y.width,U.height=y.height,$.drawImage(y,0,0,y.width,y.height),$.getImageData(-I,-I,y.width+2*I,y.height+2*I)},resolveURL:function(y){return ce||(ce=f.document.createElement("a")),ce.href=y,ce.href},hardwareConcurrency:f.navigator&&f.navigator.hardwareConcurrency||4,get devicePixelRatio(){return f.devicePixelRatio},get prefersReducedMotion(){return f.matchMedia?(Ze==null&&(Ze=f.matchMedia("(prefers-reduced-motion: reduce)")),Ze.matches):!1}},pt={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},Zt={supported:!1,testSupport:Jt},st,lt=!1,Gt,Nt=!1;f.document&&(Gt=f.document.createElement("img"),Gt.onload=function(){st&&sr(st),st=null,Nt=!0},Gt.onerror=function(){lt=!0,st=null},Gt.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");function Jt(m){lt||!Gt||(Nt?sr(m):st=m)}function sr(m){var y=m.createTexture();m.bindTexture(m.TEXTURE_2D,y);try{if(m.texImage2D(m.TEXTURE_2D,0,m.RGBA,m.RGBA,m.UNSIGNED_BYTE,Gt),m.isContextLost())return;Zt.supported=!0}catch(I){}m.deleteTexture(y),lt=!0}var wr="01";function cr(){for(var m="1",y="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",I="",U=0;U<10;U++)I+=y[Math.floor(Math.random()*62)];var $=12*60*60*1e3,ae=[m,wr,I].join(""),he=Date.now()+$;return{token:ae,tokenExpiresAt:he}}var $e=function(y,I){this._transformRequestFn=y,this._customAccessToken=I,this._createSkuToken()};$e.prototype._createSkuToken=function(){var y=cr();this._skuToken=y.token,this._skuTokenExpiresAt=y.tokenExpiresAt},$e.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},$e.prototype.transformRequest=function(y,I){return this._transformRequestFn?this._transformRequestFn(y,I)||{url:y}:{url:y}},$e.prototype.normalizeStyleURL=function(y,I){if(!St(y))return y;var U=er(y);return U.path="/styles/v1"+U.path,this._makeAPIURL(U,this._customAccessToken||I)},$e.prototype.normalizeGlyphsURL=function(y,I){if(!St(y))return y;var U=er(y);return U.path="/fonts/v1"+U.path,this._makeAPIURL(U,this._customAccessToken||I)},$e.prototype.normalizeSourceURL=function(y,I){if(!St(y))return y;var U=er(y);return U.path="/v4/"+U.authority+".json",U.params.push("secure"),this._makeAPIURL(U,this._customAccessToken||I)},$e.prototype.normalizeSpriteURL=function(y,I,U,$){var ae=er(y);return St(y)?(ae.path="/styles/v1"+ae.path+"/sprite"+I+U,this._makeAPIURL(ae,this._customAccessToken||$)):(ae.path+=""+I+U,lr(ae))},$e.prototype.normalizeTileURL=function(y,I){if(this._isSkuTokenExpired()&&this._createSkuToken(),y&&!St(y))return y;var U=er(y),$=/(\.(png|jpg)\d*)(?=$)/,ae=/^.+\/v4\//,he=ut.devicePixelRatio>=2||I===512?"@2x":"",Oe=Zt.supported?".webp":"$1";U.path=U.path.replace($,""+he+Oe),U.path=U.path.replace(ae,"/"),U.path="/v4"+U.path;var rt=this._customAccessToken||It(U.params)||pt.ACCESS_TOKEN;return pt.REQUIRE_ACCESS_TOKEN&&rt&&this._skuToken&&U.params.push("sku="+this._skuToken),this._makeAPIURL(U,rt)},$e.prototype.canonicalizeTileURL=function(y,I){var U="/v4/",$=/\.[\w]+$/,ae=er(y);if(!ae.path.match(/(^\/v4\/)/)||!ae.path.match($))return y;var he="mapbox://tiles/";he+=ae.path.replace(U,"");var Oe=ae.params;return I&&(Oe=Oe.filter(function(rt){return!rt.match(/^access_token=/)})),Oe.length&&(he+="?"+Oe.join("&")),he},$e.prototype.canonicalizeTileset=function(y,I){for(var U=I?St(I):!1,$=[],ae=0,he=y.tiles||[];ae=0&&y.params.splice(ae,1)}if($.path!=="/"&&(y.path=""+$.path+y.path),!pt.REQUIRE_ACCESS_TOKEN)return lr(y);if(I=I||pt.ACCESS_TOKEN,!I)throw new Error("An API access token is required to use Mapbox GL. "+U);if(I[0]==="s")throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+U);return y.params=y.params.filter(function(he){return he.indexOf("access_token")===-1}),y.params.push("access_token="+I),lr(y)};function St(m){return m.indexOf("mapbox:")===0}var Qt=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function Vt(m){return Qt.test(m)}function _t(m){return m.indexOf("sku=")>0&&Vt(m)}function It(m){for(var y=0,I=m;y=1&&f.localStorage.setItem(I,JSON.stringify(this.eventData))}catch($){te("Unable to write to LocalStorage")}},ti.prototype.processRequests=function(y){},ti.prototype.postEvent=function(y,I,U,$){var ae=this;if(pt.EVENTS_URL){var he=er(pt.EVENTS_URL);he.params.push("access_token="+($||pt.ACCESS_TOKEN||""));var Oe={event:this.type,created:new Date(y).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:o,skuId:wr,userId:this.anonId},rt=I?x(Oe,I):Oe,gt={url:lr(he),headers:{"Content-Type":"text/plain"},body:JSON.stringify([rt])};this.pendingRequest=Qr(gt,function(Et){ae.pendingRequest=null,U(Et),ae.saveEventData(),ae.processRequests($)})}},ti.prototype.queueRequest=function(y,I){this.queue.push(y),this.processRequests(I)};var Br=function(m){function y(){m.call(this,"map.load"),this.success={},this.skuToken=""}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.postMapLoadEvent=function(U,$,ae,he){this.skuToken=ae,(pt.EVENTS_URL&&he||pt.ACCESS_TOKEN&&Array.isArray(U)&&U.some(function(Oe){return St(Oe)||Vt(Oe)}))&&this.queueRequest({id:$,timestamp:Date.now()},he)},y.prototype.processRequests=function(U){var $=this;if(!(this.pendingRequest||this.queue.length===0)){var ae=this.queue.shift(),he=ae.id,Oe=ae.timestamp;he&&this.success[he]||(this.anonId||this.fetchEventData(),z(this.anonId)||(this.anonId=P()),this.postEvent(Oe,{skuToken:this.skuToken},function(rt){rt||he&&($.success[he]=!0)},U))}},y}(ti),Vr=function(m){function y(I){m.call(this,"appUserTurnstile"),this._customAccessToken=I}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.postTurnstileEvent=function(U,$){pt.EVENTS_URL&&pt.ACCESS_TOKEN&&Array.isArray(U)&&U.some(function(ae){return St(ae)||Vt(ae)})&&this.queueRequest(Date.now(),$)},y.prototype.processRequests=function(U){var $=this;if(!(this.pendingRequest||this.queue.length===0)){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var ae=Lr(pt.ACCESS_TOKEN),he=ae?ae.u:pt.ACCESS_TOKEN,Oe=he!==this.eventData.tokenU;z(this.anonId)||(this.anonId=P(),Oe=!0);var rt=this.queue.shift();if(this.eventData.lastSuccess){var gt=new Date(this.eventData.lastSuccess),Et=new Date(rt),or=(rt-this.eventData.lastSuccess)/(24*60*60*1e3);Oe=Oe||or>=1||or<-1||gt.getDate()!==Et.getDate()}else Oe=!0;if(!Oe)return this.processRequests();this.postEvent(rt,{"enabled.telemetry":!1},function(_r){_r||($.eventData.lastSuccess=rt,$.eventData.tokenU=he)},U)}},y}(ti),dt=new Vr,Ge=dt.postTurnstileEvent.bind(dt),Je=new Br,je=Je.postMapLoadEvent.bind(Je),tt="mapbox-tiles",xt=500,Ie=50,xe=1e3*60*7,ke;function vt(){f.caches&&!ke&&(ke=f.caches.open(tt))}var ir;function ar(m,y){if(ir===void 0)try{new Response(new ReadableStream),ir=!0}catch(I){ir=!1}ir?y(m.body):m.blob().then(y)}function vr(m,y,I){if(vt(),!!ke){var U={status:y.status,statusText:y.statusText,headers:new f.Headers};y.headers.forEach(function(he,Oe){return U.headers.set(Oe,he)});var $=me(y.headers.get("Cache-Control")||"");if(!$["no-store"]){$["max-age"]&&U.headers.set("Expires",new Date(I+$["max-age"]*1e3).toUTCString());var ae=new Date(U.headers.get("Expires")).getTime()-I;aeDate.now()&&!I["no-cache"]}var di=1/0;function ji(m){di++,di>Ie&&(m.getActor().send("enforceCacheSizeLimit",xt),di=0)}function In(m){vt(),ke&&ke.then(function(y){y.keys().then(function(I){for(var U=0;U=200&&I.status<300||I.status===0)&&I.response!==null){var $=I.response;if(m.type==="json")try{$=JSON.parse(I.response)}catch(ae){return y(ae)}y(null,$,I.getResponseHeader("Cache-Control"),I.getResponseHeader("Expires"))}else y(new la(I.statusText,I.status,m.url))},I.send(m.body),{cancel:function(){return I.abort()}}}var Er=function(m,y){if(!wt(m.url)){if(f.fetch&&f.Request&&f.AbortController&&f.Request.prototype.hasOwnProperty("signal"))return rr(m,y);if(Ce()&&self.worker&&self.worker.actor){var I=!0;return self.worker.actor.send("getResource",m,y,void 0,I)}}return nr(m,y)},Xr=function(m,y){return Er(x(m,{type:"json"}),y)},ri=function(m,y){return Er(x(m,{type:"arrayBuffer"}),y)},Qr=function(m,y){return Er(x(m,{method:"POST"}),y)};function Oi(m){var y=f.document.createElement("a");return y.href=m,y.protocol===f.document.location.protocol&&y.host===f.document.location.host}var $i="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function tn(m,y,I,U){var $=new f.Image,ae=f.URL;$.onload=function(){y(null,$),ae.revokeObjectURL($.src),$.onload=null,f.requestAnimationFrame(function(){$.src=$i})},$.onerror=function(){return y(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var he=new f.Blob([new Uint8Array(m)],{type:"image/png"});$.cacheControl=I,$.expires=U,$.src=m.byteLength?ae.createObjectURL(he):$i}function fn(m,y){var I=new f.Blob([new Uint8Array(m)],{type:"image/png"});f.createImageBitmap(I).then(function(U){y(null,U)}).catch(function(U){y(new Error("Could not load image because of "+U.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}var yn,Sn,Ba=function(){yn=[],Sn=0};Ba();var ua=function(m,y){if(Zt.supported&&(m.headers||(m.headers={}),m.headers.accept="image/webp,*/*"),Sn>=pt.MAX_PARALLEL_IMAGE_REQUESTS){var I={requestParameters:m,callback:y,cancelled:!1,cancel:function(){this.cancelled=!0}};return yn.push(I),I}Sn++;var U=!1,$=function(){if(!U)for(U=!0,Sn--;yn.length&&Sn0||this._oneTimeListeners&&this._oneTimeListeners[y]&&this._oneTimeListeners[y].length>0||this._eventedParent&&this._eventedParent.listens(y)},Wn.prototype.setEventedParent=function(y,I){return this._eventedParent=y,this._eventedParentData=I,this};var Ha=8,vo={version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},jn={"*":{type:"source"}},Mt=["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],kr={type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},Jr={type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},vi={type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},hn={type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},An={type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},Mn={type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},Li={id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},_n=["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],ya={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Jn={"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Ma={"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},_o={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},No={"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},po={"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Lo={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},ko={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Ds={type:"array",value:"*"},Fs={type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},ll={type:"enum",values:{Point:{},LineString:{},Polygon:{}}},ul={type:"array",minimum:0,maximum:24,value:["number","color"],length:2},zl={type:"array",value:"*",minimum:1},us={anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},il=["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],As={"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},cl={"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},Ks={"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},zs={"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Io={"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},ls={"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Zl={"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Su={"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},nc={duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},bs={"*":{type:"string"}},Rn={$version:Ha,$root:vo,sources:jn,source:Mt,source_vector:kr,source_raster:Jr,source_raster_dem:vi,source_geojson:hn,source_video:An,source_image:Mn,layer:Li,layout:_n,layout_background:ya,layout_fill:Jn,layout_circle:Ma,layout_heatmap:_o,"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:No,layout_symbol:po,layout_raster:Lo,layout_hillshade:ko,filter:Ds,filter_operator:Fs,geometry_type:ll,function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:ul,expression:zl,light:us,paint:il,paint_fill:As,"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:cl,paint_circle:Ks,paint_heatmap:zs,paint_symbol:Io,paint_raster:ls,paint_hillshade:Zl,paint_background:Su,transition:nc,"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:bs},_a=function(y,I,U,$){this.message=(y?y+": ":"")+U,$&&(this.identifier=$),I!=null&&I.__line__&&(this.line=I.__line__)};function Vu(m){var y=m.key,I=m.value;return I?[new _a(y,I,"constants have been deprecated as of v8")]:[]}function Ol(m){for(var y=[],I=arguments.length-1;I-- >0;)y[I]=arguments[I+1];for(var U=0,$=y;U<$.length;U+=1){var ae=$[U];for(var he in ae)m[he]=ae[he]}return m}function xo(m){return m instanceof Number||m instanceof String||m instanceof Boolean?m.valueOf():m}function Yl(m){if(Array.isArray(m))return m.map(Yl);if(m instanceof Object&&!(m instanceof Number||m instanceof String||m instanceof Boolean)){var y={};for(var I in m)y[I]=Yl(m[I]);return y}return xo(m)}var Ns=function(m){function y(I,U){m.call(this,U),this.message=U,this.key=I}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y}(Error),Hl=function(y,I){I===void 0&&(I=[]),this.parent=y,this.bindings={};for(var U=0,$=I;U<$.length;U+=1){var ae=$[U],he=ae[0],Oe=ae[1];this.bindings[he]=Oe}};Hl.prototype.concat=function(y){return new Hl(this,y)},Hl.prototype.get=function(y){if(this.bindings[y])return this.bindings[y];if(this.parent)return this.parent.get(y);throw new Error(y+" not found in scope.")},Hl.prototype.has=function(y){return this.bindings[y]?!0:this.parent?this.parent.has(y):!1};var ac={kind:"null"},aa={kind:"number"},Oo={kind:"string"},qo={kind:"boolean"},ql={kind:"color"},Pc={kind:"object"},Do={kind:"value"},rf={kind:"error"},Uf={kind:"collator"},pl={kind:"formatted"},Zc={kind:"resolvedImage"};function Kl(m,y){return{kind:"array",itemType:m,N:y}}function Os(m){if(m.kind==="array"){var y=Os(m.itemType);return typeof m.N=="number"?"array<"+y+", "+m.N+">":m.itemType.kind==="value"?"array":"array<"+y+">"}else return m.kind}var yu=[ac,aa,Oo,qo,ql,pl,Pc,Kl(Do),Zc];function oc(m,y){if(y.kind==="error")return null;if(m.kind==="array"){if(y.kind==="array"&&(y.N===0&&y.itemType.kind==="value"||!oc(m.itemType,y.itemType))&&(typeof m.N!="number"||m.N===y.N))return null}else{if(m.kind===y.kind)return null;if(m.kind==="value")for(var I=0,U=yu;I255?255:gt}function $(gt){return gt<0?0:gt>1?1:gt}function ae(gt){return gt[gt.length-1]==="%"?U(parseFloat(gt)/100*255):U(parseInt(gt))}function he(gt){return gt[gt.length-1]==="%"?$(parseFloat(gt)/100):$(parseFloat(gt))}function Oe(gt,Et,or){return or<0?or+=1:or>1&&(or-=1),or*6<1?gt+(Et-gt)*or*6:or*2<1?Et:or*3<2?gt+(Et-gt)*(2/3-or)*6:gt}function rt(gt){var Et=gt.replace(/ /g,"").toLowerCase();if(Et in I)return I[Et].slice();if(Et[0]==="#"){if(Et.length===4){var or=parseInt(Et.substr(1),16);return or>=0&&or<=4095?[(or&3840)>>4|(or&3840)>>8,or&240|(or&240)>>4,or&15|(or&15)<<4,1]:null}else if(Et.length===7){var or=parseInt(Et.substr(1),16);return or>=0&&or<=16777215?[(or&16711680)>>16,(or&65280)>>8,or&255,1]:null}return null}var _r=Et.indexOf("("),pr=Et.indexOf(")");if(_r!==-1&&pr+1===Et.length){var Fr=Et.substr(0,_r),oi=Et.substr(_r+1,pr-(_r+1)).split(","),Hi=1;switch(Fr){case"rgba":if(oi.length!==4)return null;Hi=he(oi.pop());case"rgb":return oi.length!==3?null:[ae(oi[0]),ae(oi[1]),ae(oi[2]),Hi];case"hsla":if(oi.length!==4)return null;Hi=he(oi.pop());case"hsl":if(oi.length!==3)return null;var Ai=(parseFloat(oi[0])%360+360)%360/360,bn=he(oi[1]),nn=he(oi[2]),xn=nn<=.5?nn*(bn+1):nn+bn-nn*bn,Pn=nn*2-xn;return[U(Oe(Pn,xn,Ai+1/3)*255),U(Oe(Pn,xn,Ai)*255),U(Oe(Pn,xn,Ai-1/3)*255),Hi];default:return null}}return null}try{y.parseCSSColor=rt}catch(gt){}}),Lf=Vh.parseCSSColor,cs=function(y,I,U,$){$===void 0&&($=1),this.r=y,this.g=I,this.b=U,this.a=$};cs.parse=function(y){if(y){if(y instanceof cs)return y;if(typeof y=="string"){var I=Lf(y);if(I)return new cs(I[0]/255*I[3],I[1]/255*I[3],I[2]/255*I[3],I[3])}}},cs.prototype.toString=function(){var y=this.toArray(),I=y[0],U=y[1],$=y[2],ae=y[3];return"rgba("+Math.round(I)+","+Math.round(U)+","+Math.round($)+","+ae+")"},cs.prototype.toArray=function(){var y=this,I=y.r,U=y.g,$=y.b,ae=y.a;return ae===0?[0,0,0,0]:[I*255/ae,U*255/ae,$*255/ae,ae]},cs.black=new cs(0,0,0,1),cs.white=new cs(1,1,1,1),cs.transparent=new cs(0,0,0,0),cs.red=new cs(1,0,0,1);var nf=function(y,I,U){y?this.sensitivity=I?"variant":"case":this.sensitivity=I?"accent":"base",this.locale=U,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};nf.prototype.compare=function(y,I){return this.collator.compare(y,I)},nf.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var Vf=function(y,I,U,$,ae){this.text=y,this.image=I,this.scale=U,this.fontStack=$,this.textColor=ae},Jl=function(y){this.sections=y};Jl.fromString=function(y){return new Jl([new Vf(y,null,null,null,null)])},Jl.prototype.isEmpty=function(){return this.sections.length===0?!0:!this.sections.some(function(y){return y.text.length!==0||y.image&&y.image.name.length!==0})},Jl.factory=function(y){return y instanceof Jl?y:Jl.fromString(y)},Jl.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(y){return y.text}).join("")},Jl.prototype.serialize=function(){for(var y=["format"],I=0,U=this.sections;I=0&&m<=255&&typeof y=="number"&&y>=0&&y<=255&&typeof I=="number"&&I>=0&&I<=255)){var $=typeof U=="number"?[m,y,I,U]:[m,y,I];return"Invalid rgba value ["+$.join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}return typeof U=="undefined"||typeof U=="number"&&U>=0&&U<=1?null:"Invalid rgba value ["+[m,y,I,U].join(", ")+"]: 'a' must be between 0 and 1."}function Fu(m){if(m===null)return!0;if(typeof m=="string")return!0;if(typeof m=="boolean")return!0;if(typeof m=="number")return!0;if(m instanceof cs)return!0;if(m instanceof nf)return!0;if(m instanceof Jl)return!0;if(m instanceof fl)return!0;if(Array.isArray(m)){for(var y=0,I=m;y2){var Oe=y[1];if(typeof Oe!="string"||!(Oe in uc)||Oe==="object")return I.error('The item type argument of "array" must be one of string, number, boolean',1);he=uc[Oe],U++}else he=Do;var rt;if(y.length>3){if(y[2]!==null&&(typeof y[2]!="number"||y[2]<0||y[2]!==Math.floor(y[2])))return I.error('The length argument to "array" must be a positive integer literal',2);rt=y[2],U++}$=Kl(he,rt)}else $=uc[ae];for(var gt=[];U1)&&I.push($)}}return I.concat(this.args.map(function(ae){return ae.serialize()}))};var Gu=function(y){this.type=pl,this.sections=y};Gu.parse=function(y,I){if(y.length<2)return I.error("Expected at least one argument.");var U=y[1];if(!Array.isArray(U)&&typeof U=="object")return I.error("First argument must be an image or text section.");for(var $=[],ae=!1,he=1;he<=y.length-1;++he){var Oe=y[he];if(ae&&typeof Oe=="object"&&!Array.isArray(Oe)){ae=!1;var rt=null;if(Oe["font-scale"]&&(rt=I.parse(Oe["font-scale"],1,aa),!rt))return null;var gt=null;if(Oe["text-font"]&&(gt=I.parse(Oe["text-font"],1,Kl(Oo)),!gt))return null;var Et=null;if(Oe["text-color"]&&(Et=I.parse(Oe["text-color"],1,ql),!Et))return null;var or=$[$.length-1];or.scale=rt,or.font=gt,or.textColor=Et}else{var _r=I.parse(y[he],1,Do);if(!_r)return null;var pr=_r.type.kind;if(pr!=="string"&&pr!=="value"&&pr!=="null"&&pr!=="resolvedImage")return I.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");ae=!0,$.push({content:_r,scale:null,font:null,textColor:null})}}return new Gu($)},Gu.prototype.evaluate=function(y){var I=function(U){var $=U.content.evaluate(y);return Es($)===Zc?new Vf("",$,null,null,null):new Vf(Hs($),null,U.scale?U.scale.evaluate(y):null,U.font?U.font.evaluate(y).join(","):null,U.textColor?U.textColor.evaluate(y):null)};return new Jl(this.sections.map(I))},Gu.prototype.eachChild=function(y){for(var I=0,U=this.sections;I-1),U},qs.prototype.eachChild=function(y){y(this.input)},qs.prototype.outputDefined=function(){return!1},qs.prototype.serialize=function(){return["image",this.input.serialize()]};var ad={"to-boolean":qo,"to-color":ql,"to-number":aa,"to-string":Oo},Po=function(y,I){this.type=y,this.args=I};Po.parse=function(y,I){if(y.length<2)return I.error("Expected at least one argument.");var U=y[0];if((U==="to-boolean"||U==="to-string")&&y.length!==2)return I.error("Expected one argument.");for(var $=ad[U],ae=[],he=1;he4?U="Invalid rbga value "+JSON.stringify(I)+": expected an array containing either three or four numeric values.":U=lc(I[0],I[1],I[2],I[3]),!U))return new cs(I[0]/255,I[1]/255,I[2]/255,I[3])}throw new ps(U||"Could not parse color from value '"+(typeof I=="string"?I:String(JSON.stringify(I)))+"'")}else if(this.type.kind==="number"){for(var rt=null,gt=0,Et=this.args;gt=y[2]||m[1]<=y[1]||m[3]>=y[3])}function wh(m,y){var I=Ic(m[0]),U=yf(m[1]),$=Math.pow(2,y.z);return[Math.round(I*$*bl),Math.round(U*$*bl)]}function Qf(m,y,I){var U=m[0]-y[0],$=m[1]-y[1],ae=m[0]-I[0],he=m[1]-I[1];return U*he-ae*$===0&&U*ae<=0&&$*he<=0}function _f(m,y,I){return y[1]>m[1]!=I[1]>m[1]&&m[0]<(I[0]-y[0])*(m[1]-y[1])/(I[1]-y[1])+y[0]}function Yc(m,y){for(var I=!1,U=0,$=y.length;U<$;U++)for(var ae=y[U],he=0,Oe=ae.length;he0&&or<0||Et<0&&or>0}function Hf(m,y,I,U){var $=[y[0]-m[0],y[1]-m[1]],ae=[U[0]-I[0],U[1]-I[1]];return th(ae,$)===0?!1:!!(ju(m,y,I,U)&&ju(I,U,m,y))}function cc(m,y,I){for(var U=0,$=I;U<$.length;U+=1)for(var ae=$[U],he=0;heI[2]){var $=U*.5,ae=m[0]-I[0]>$?-U:I[0]-m[0]>$?U:0;ae===0&&(ae=m[0]-I[2]>$?-U:I[2]-m[0]>$?U:0),m[0]+=ae}Gf(y,m)}function jf(m){m[0]=m[1]=1/0,m[2]=m[3]=-1/0}function Gh(m,y,I,U){for(var $=Math.pow(2,U.z)*bl,ae=[U.x*bl,U.y*bl],he=[],Oe=0,rt=m;Oe=0)return!1;var I=!0;return m.eachChild(function(U){I&&!Eu(U,y)&&(I=!1)}),I}var Dc=function(y,I){this.type=I.type,this.name=y,this.boundExpression=I};Dc.parse=function(y,I){if(y.length!==2||typeof y[1]!="string")return I.error("'var' expression requires exactly one string literal argument.");var U=y[1];return I.scope.has(U)?new Dc(U,I.scope.get(U)):I.error('Unknown variable "'+U+'". Make sure "'+U+'" has been bound in an enclosing "let" expression before using it.',1)},Dc.prototype.evaluate=function(y){return this.boundExpression.evaluate(y)},Dc.prototype.eachChild=function(){},Dc.prototype.outputDefined=function(){return!1},Dc.prototype.serialize=function(){return["var",this.name]};var ks=function(y,I,U,$,ae){I===void 0&&(I=[]),$===void 0&&($=new Hl),ae===void 0&&(ae=[]),this.registry=y,this.path=I,this.key=I.map(function(he){return"["+he+"]"}).join(""),this.scope=$,this.errors=ae,this.expectedType=U};ks.prototype.parse=function(y,I,U,$,ae){return ae===void 0&&(ae={}),I?this.concat(I,U,$)._parse(y,ae):this._parse(y,ae)},ks.prototype._parse=function(y,I){(y===null||typeof y=="string"||typeof y=="boolean"||typeof y=="number")&&(y=["literal",y]);function U(Et,or,_r){return _r==="assert"?new xl(or,[Et]):_r==="coerce"?new Po(or,[Et]):Et}if(Array.isArray(y)){if(y.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var $=y[0];if(typeof $!="string")return this.error("Expression name must be a string, but found "+typeof $+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var ae=this.registry[$];if(ae){var he=ae.parse(y,this);if(!he)return null;if(this.expectedType){var Oe=this.expectedType,rt=he.type;if((Oe.kind==="string"||Oe.kind==="number"||Oe.kind==="boolean"||Oe.kind==="object"||Oe.kind==="array")&&rt.kind==="value")he=U(he,Oe,I.typeAnnotation||"assert");else if((Oe.kind==="color"||Oe.kind==="formatted"||Oe.kind==="resolvedImage")&&(rt.kind==="value"||rt.kind==="string"))he=U(he,Oe,I.typeAnnotation||"coerce");else if(this.checkSubtype(Oe,rt))return null}if(!(he instanceof Go)&&he.type.kind!=="resolvedImage"&&bc(he)){var gt=new Yo;try{he=new Go(he.type,he.evaluate(gt))}catch(Et){return this.error(Et.message),null}}return he}return this.error('Unknown expression "'+$+'". If you wanted a literal array, use ["literal", [...]].',0)}else return typeof y=="undefined"?this.error("'undefined' value invalid. Use null instead."):typeof y=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof y+" instead.")},ks.prototype.concat=function(y,I,U){var $=typeof y=="number"?this.path.concat(y):this.path,ae=U?this.scope.concat(U):this.scope;return new ks(this.registry,$,I||null,ae,this.errors)},ks.prototype.error=function(y){for(var I=[],U=arguments.length-1;U-- >0;)I[U]=arguments[U+1];var $=""+this.key+I.map(function(ae){return"["+ae+"]"}).join("");this.errors.push(new Ns($,y))},ks.prototype.checkSubtype=function(y,I){var U=oc(y,I);return U&&this.error(U),U};function bc(m){if(m instanceof Dc)return bc(m.boundExpression);if(m instanceof Pa&&m.name==="error")return!1;if(m instanceof Hu)return!1;if(m instanceof Mu)return!1;var y=m instanceof Po||m instanceof xl,I=!0;return m.eachChild(function(U){y?I=I&&bc(U):I=I&&U instanceof Go}),I?ih(m)&&Eu(m,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"]):!1}function hu(m,y){for(var I=m.length-1,U=0,$=I,ae=0,he,Oe;U<=$;)if(ae=Math.floor((U+$)/2),he=m[ae],Oe=m[ae+1],he<=y){if(ae===I||yy)$=ae-1;else throw new ps("Input is not a number.");return 0}var _u=function(y,I,U){this.type=y,this.input=I,this.labels=[],this.outputs=[];for(var $=0,ae=U;$=Oe)return I.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',gt);var or=I.parse(rt,Et,ae);if(!or)return null;ae=ae||or.type,$.push([Oe,or])}return new _u(ae,U,$)},_u.prototype.evaluate=function(y){var I=this.labels,U=this.outputs;if(I.length===1)return U[0].evaluate(y);var $=this.input.evaluate(y);if($<=I[0])return U[0].evaluate(y);var ae=I.length;if($>=I[ae-1])return U[ae-1].evaluate(y);var he=hu(I,$);return U[he].evaluate(y)},_u.prototype.eachChild=function(y){y(this.input);for(var I=0,U=this.outputs;I0&&y.push(this.labels[I]),y.push(this.outputs[I].serialize());return y};function nl(m,y,I){return m*(1-I)+y*I}function nh(m,y,I){return new cs(nl(m.r,y.r,I),nl(m.g,y.g,I),nl(m.b,y.b,I),nl(m.a,y.a,I))}function Ah(m,y,I){return m.map(function(U,$){return nl(U,y[$],I)})}var zu=Object.freeze({__proto__:null,number:nl,color:nh,array:Ah}),Fc=.95047,wc=1,bd=1.08883,xf=4/29,Pf=6/29,Ou=3*Pf*Pf,bf=Pf*Pf*Pf,jl=Math.PI/180,lf=180/Math.PI;function Hh(m){return m>bf?Math.pow(m,1/3):m/Ou+xf}function If(m){return m>Pf?m*m*m:Ou*(m-xf)}function Cs(m){return 255*(m<=.0031308?12.92*m:1.055*Math.pow(m,1/2.4)-.055)}function du(m){return m/=255,m<=.04045?m/12.92:Math.pow((m+.055)/1.055,2.4)}function ku(m){var y=du(m.r),I=du(m.g),U=du(m.b),$=Hh((.4124564*y+.3575761*I+.1804375*U)/Fc),ae=Hh((.2126729*y+.7151522*I+.072175*U)/wc),he=Hh((.0193339*y+.119192*I+.9503041*U)/bd);return{l:116*ae-16,a:500*($-ae),b:200*(ae-he),alpha:m.a}}function Wf(m){var y=(m.l+16)/116,I=isNaN(m.a)?y:y+m.a/500,U=isNaN(m.b)?y:y-m.b/200;return y=wc*If(y),I=Fc*If(I),U=bd*If(U),new cs(Cs(3.2404542*I-1.5371385*y-.4985314*U),Cs(-.969266*I+1.8760108*y+.041556*U),Cs(.0556434*I-.2040259*y+1.0572252*U),m.alpha)}function Us(m,y,I){return{l:nl(m.l,y.l,I),a:nl(m.a,y.a,I),b:nl(m.b,y.b,I),alpha:nl(m.alpha,y.alpha,I)}}function wf(m){var y=ku(m),I=y.l,U=y.a,$=y.b,ae=Math.atan2($,U)*lf;return{h:ae<0?ae+360:ae,c:Math.sqrt(U*U+$*$),l:I,alpha:m.a}}function zc(m){var y=m.h*jl,I=m.c,U=m.l;return Wf({l:U,a:Math.cos(y)*I,b:Math.sin(y)*I,alpha:m.alpha})}function Wu(m,y,I){var U=y-m;return m+I*(U>180||U<-180?U-360*Math.round(U/360):U)}function Rf(m,y,I){return{h:Wu(m.h,y.h,I),c:nl(m.c,y.c,I),l:nl(m.l,y.l,I),alpha:nl(m.alpha,y.alpha,I)}}var Xu={forward:ku,reverse:Wf,interpolate:Us},uf={forward:wf,reverse:zc,interpolate:Rf},Xf=Object.freeze({__proto__:null,lab:Xu,hcl:uf}),Wl=function(y,I,U,$,ae){this.type=y,this.operator=I,this.interpolation=U,this.input=$,this.labels=[],this.outputs=[];for(var he=0,Oe=ae;he1}))return I.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);$={name:"cubic-bezier",controlPoints:rt}}else return I.error("Unknown interpolation type "+String($[0]),1,0);if(y.length-1<4)return I.error("Expected at least 4 arguments, but found only "+(y.length-1)+".");if((y.length-1)%2!==0)return I.error("Expected an even number of arguments.");if(ae=I.parse(ae,2,aa),!ae)return null;var gt=[],Et=null;U==="interpolate-hcl"||U==="interpolate-lab"?Et=ql:I.expectedType&&I.expectedType.kind!=="value"&&(Et=I.expectedType);for(var or=0;or=_r)return I.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',Fr);var Hi=I.parse(pr,oi,Et);if(!Hi)return null;Et=Et||Hi.type,gt.push([_r,Hi])}return Et.kind!=="number"&&Et.kind!=="color"&&!(Et.kind==="array"&&Et.itemType.kind==="number"&&typeof Et.N=="number")?I.error("Type "+Os(Et)+" is not interpolatable."):new Wl(Et,U,$,ae,gt)},Wl.prototype.evaluate=function(y){var I=this.labels,U=this.outputs;if(I.length===1)return U[0].evaluate(y);var $=this.input.evaluate(y);if($<=I[0])return U[0].evaluate(y);var ae=I.length;if($>=I[ae-1])return U[ae-1].evaluate(y);var he=hu(I,$),Oe=I[he],rt=I[he+1],gt=Wl.interpolationFactor(this.interpolation,$,Oe,rt),Et=U[he].evaluate(y),or=U[he+1].evaluate(y);return this.operator==="interpolate"?zu[this.type.kind.toLowerCase()](Et,or,gt):this.operator==="interpolate-hcl"?uf.reverse(uf.interpolate(uf.forward(Et),uf.forward(or),gt)):Xu.reverse(Xu.interpolate(Xu.forward(Et),Xu.forward(or),gt))},Wl.prototype.eachChild=function(y){y(this.input);for(var I=0,U=this.outputs;I=U.length)throw new ps("Array index out of bounds: "+I+" > "+(U.length-1)+".");if(I!==Math.floor(I))throw new ps("Array index must be an integer, but found "+I+" instead.");return U[I]},Tc.prototype.eachChild=function(y){y(this.index),y(this.input)},Tc.prototype.outputDefined=function(){return!1},Tc.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var wl=function(y,I){this.type=qo,this.needle=y,this.haystack=I};wl.parse=function(y,I){if(y.length!==3)return I.error("Expected 2 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,Do),$=I.parse(y[2],2,Do);return!U||!$?null:Cf(U.type,[qo,Oo,aa,ac,Do])?new wl(U,$):I.error("Expected first argument to be of type boolean, string, number or null, but found "+Os(U.type)+" instead")},wl.prototype.evaluate=function(y){var I=this.needle.evaluate(y),U=this.haystack.evaluate(y);if(!U)return!1;if(!sc(I,["boolean","string","number","null"]))throw new ps("Expected first argument to be of type boolean, string, number or null, but found "+Os(Es(I))+" instead.");if(!sc(U,["string","array"]))throw new ps("Expected second argument to be of type array or string, but found "+Os(Es(U))+" instead.");return U.indexOf(I)>=0},wl.prototype.eachChild=function(y){y(this.needle),y(this.haystack)},wl.prototype.outputDefined=function(){return!0},wl.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var vu=function(y,I,U){this.type=aa,this.needle=y,this.haystack=I,this.fromIndex=U};vu.parse=function(y,I){if(y.length<=2||y.length>=5)return I.error("Expected 3 or 4 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,Do),$=I.parse(y[2],2,Do);if(!U||!$)return null;if(!Cf(U.type,[qo,Oo,aa,ac,Do]))return I.error("Expected first argument to be of type boolean, string, number or null, but found "+Os(U.type)+" instead");if(y.length===4){var ae=I.parse(y[3],3,aa);return ae?new vu(U,$,ae):null}else return new vu(U,$)},vu.prototype.evaluate=function(y){var I=this.needle.evaluate(y),U=this.haystack.evaluate(y);if(!sc(I,["boolean","string","number","null"]))throw new ps("Expected first argument to be of type boolean, string, number or null, but found "+Os(Es(I))+" instead.");if(!sc(U,["string","array"]))throw new ps("Expected second argument to be of type array or string, but found "+Os(Es(U))+" instead.");if(this.fromIndex){var $=this.fromIndex.evaluate(y);return U.indexOf(I,$)}return U.indexOf(I)},vu.prototype.eachChild=function(y){y(this.needle),y(this.haystack),this.fromIndex&&y(this.fromIndex)},vu.prototype.outputDefined=function(){return!1},vu.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var y=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),y]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var qc=function(y,I,U,$,ae,he){this.inputType=y,this.type=I,this.input=U,this.cases=$,this.outputs=ae,this.otherwise=he};qc.parse=function(y,I){if(y.length<5)return I.error("Expected at least 4 arguments, but found only "+(y.length-1)+".");if(y.length%2!==1)return I.error("Expected an even number of arguments.");var U,$;I.expectedType&&I.expectedType.kind!=="value"&&($=I.expectedType);for(var ae={},he=[],Oe=2;OeNumber.MAX_SAFE_INTEGER)return Et.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof pr=="number"&&Math.floor(pr)!==pr)return Et.error("Numeric branch labels must be integer values.");if(!U)U=Es(pr);else if(Et.checkSubtype(U,Es(pr)))return null;if(typeof ae[String(pr)]!="undefined")return Et.error("Branch labels must be unique.");ae[String(pr)]=he.length}var Fr=I.parse(gt,Oe,$);if(!Fr)return null;$=$||Fr.type,he.push(Fr)}var oi=I.parse(y[1],1,Do);if(!oi)return null;var Hi=I.parse(y[y.length-1],y.length-1,$);return!Hi||oi.type.kind!=="value"&&I.concat(1).checkSubtype(U,oi.type)?null:new qc(U,$,oi,ae,he,Hi)},qc.prototype.evaluate=function(y){var I=this.input.evaluate(y),U=Es(I)===this.inputType&&this.outputs[this.cases[I]]||this.otherwise;return U.evaluate(y)},qc.prototype.eachChild=function(y){y(this.input),this.outputs.forEach(y),y(this.otherwise)},qc.prototype.outputDefined=function(){return this.outputs.every(function(y){return y.outputDefined()})&&this.otherwise.outputDefined()},qc.prototype.serialize=function(){for(var y=this,I=["match",this.input.serialize()],U=Object.keys(this.cases).sort(),$=[],ae={},he=0,Oe=U;he=5)return I.error("Expected 3 or 4 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,Do),$=I.parse(y[2],2,aa);if(!U||!$)return null;if(!Cf(U.type,[Kl(Do),Oo,Do]))return I.error("Expected first argument to be of type array or string, but found "+Os(U.type)+" instead");if(y.length===4){var ae=I.parse(y[3],3,aa);return ae?new fc(U.type,U,$,ae):null}else return new fc(U.type,U,$)},fc.prototype.evaluate=function(y){var I=this.input.evaluate(y),U=this.beginIndex.evaluate(y);if(!sc(I,["string","array"]))throw new ps("Expected first argument to be of type array or string, but found "+Os(Es(I))+" instead.");if(this.endIndex){var $=this.endIndex.evaluate(y);return I.slice(U,$)}return I.slice(U)},fc.prototype.eachChild=function(y){y(this.input),y(this.beginIndex),this.endIndex&&y(this.endIndex)},fc.prototype.outputDefined=function(){return!1},fc.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var y=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),y]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};function Bc(m,y){return m==="=="||m==="!="?y.kind==="boolean"||y.kind==="string"||y.kind==="number"||y.kind==="null"||y.kind==="value":y.kind==="string"||y.kind==="number"||y.kind==="value"}function At(m,y,I){return y===I}function Wt(m,y,I){return y!==I}function Cr(m,y,I){return yI}function Kr(m,y,I){return y<=I}function ki(m,y,I){return y>=I}function Xi(m,y,I,U){return U.compare(y,I)===0}function dn(m,y,I,U){return!Xi(m,y,I,U)}function wn(m,y,I,U){return U.compare(y,I)<0}function Nn(m,y,I,U){return U.compare(y,I)>0}function Yi(m,y,I,U){return U.compare(y,I)<=0}function Qi(m,y,I,U){return U.compare(y,I)>=0}function on(m,y,I){var U=m!=="=="&&m!=="!=";return function(){function $(ae,he,Oe){this.type=qo,this.lhs=ae,this.rhs=he,this.collator=Oe,this.hasUntypedArgument=ae.type.kind==="value"||he.type.kind==="value"}return $.parse=function(he,Oe){if(he.length!==3&&he.length!==4)return Oe.error("Expected two or three arguments.");var rt=he[0],gt=Oe.parse(he[1],1,Do);if(!gt)return null;if(!Bc(rt,gt.type))return Oe.concat(1).error('"'+rt+`" comparisons are not supported for type '`+Os(gt.type)+"'.");var Et=Oe.parse(he[2],2,Do);if(!Et)return null;if(!Bc(rt,Et.type))return Oe.concat(2).error('"'+rt+`" comparisons are not supported for type '`+Os(Et.type)+"'.");if(gt.type.kind!==Et.type.kind&>.type.kind!=="value"&&Et.type.kind!=="value")return Oe.error("Cannot compare types '"+Os(gt.type)+"' and '"+Os(Et.type)+"'.");U&&(gt.type.kind==="value"&&Et.type.kind!=="value"?gt=new xl(Et.type,[gt]):gt.type.kind!=="value"&&Et.type.kind==="value"&&(Et=new xl(gt.type,[Et])));var or=null;if(he.length===4){if(gt.type.kind!=="string"&&Et.type.kind!=="string"&>.type.kind!=="value"&&Et.type.kind!=="value")return Oe.error("Cannot use collator to compare non-string types.");if(or=Oe.parse(he[3],3,Uf),!or)return null}return new $(gt,Et,or)},$.prototype.evaluate=function(he){var Oe=this.lhs.evaluate(he),rt=this.rhs.evaluate(he);if(U&&this.hasUntypedArgument){var gt=Es(Oe),Et=Es(rt);if(gt.kind!==Et.kind||!(gt.kind==="string"||gt.kind==="number"))throw new ps('Expected arguments for "'+m+'" to be (string, string) or (number, number), but found ('+gt.kind+", "+Et.kind+") instead.")}if(this.collator&&!U&&this.hasUntypedArgument){var or=Es(Oe),_r=Es(rt);if(or.kind!=="string"||_r.kind!=="string")return y(he,Oe,rt)}return this.collator?I(he,Oe,rt,this.collator.evaluate(he)):y(he,Oe,rt)},$.prototype.eachChild=function(he){he(this.lhs),he(this.rhs),this.collator&&he(this.collator)},$.prototype.outputDefined=function(){return!0},$.prototype.serialize=function(){var he=[m];return this.eachChild(function(Oe){he.push(Oe.serialize())}),he},$}()}var Fi=on("==",At,Xi),$n=on("!=",Wt,dn),Ca=on("<",Cr,wn),Ra=on(">",Ar,Nn),La=on("<=",Kr,Yi),Na=on(">=",ki,Qi),Yn=function(y,I,U,$,ae){this.type=Oo,this.number=y,this.locale=I,this.currency=U,this.minFractionDigits=$,this.maxFractionDigits=ae};Yn.parse=function(y,I){if(y.length!==3)return I.error("Expected two arguments.");var U=I.parse(y[1],1,aa);if(!U)return null;var $=y[2];if(typeof $!="object"||Array.isArray($))return I.error("NumberFormat options argument must be an object.");var ae=null;if($.locale&&(ae=I.parse($.locale,1,Oo),!ae))return null;var he=null;if($.currency&&(he=I.parse($.currency,1,Oo),!he))return null;var Oe=null;if($["min-fraction-digits"]&&(Oe=I.parse($["min-fraction-digits"],1,aa),!Oe))return null;var rt=null;return $["max-fraction-digits"]&&(rt=I.parse($["max-fraction-digits"],1,aa),!rt)?null:new Yn(U,ae,he,Oe,rt)},Yn.prototype.evaluate=function(y){return new Intl.NumberFormat(this.locale?this.locale.evaluate(y):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(y):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(y):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(y):void 0}).format(this.number.evaluate(y))},Yn.prototype.eachChild=function(y){y(this.number),this.locale&&y(this.locale),this.currency&&y(this.currency),this.minFractionDigits&&y(this.minFractionDigits),this.maxFractionDigits&&y(this.maxFractionDigits)},Yn.prototype.outputDefined=function(){return!1},Yn.prototype.serialize=function(){var y={};return this.locale&&(y.locale=this.locale.serialize()),this.currency&&(y.currency=this.currency.serialize()),this.minFractionDigits&&(y["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(y["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),y]};var Dn=function(y){this.type=aa,this.input=y};Dn.parse=function(y,I){if(y.length!==2)return I.error("Expected 1 argument, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1);return U?U.type.kind!=="array"&&U.type.kind!=="string"&&U.type.kind!=="value"?I.error("Expected argument of type string or array, but found "+Os(U.type)+" instead."):new Dn(U):null},Dn.prototype.evaluate=function(y){var I=this.input.evaluate(y);if(typeof I=="string")return I.length;if(Array.isArray(I))return I.length;throw new ps("Expected value to be of type string or array, but found "+Os(Es(I))+" instead.")},Dn.prototype.eachChild=function(y){y(this.input)},Dn.prototype.outputDefined=function(){return!1},Dn.prototype.serialize=function(){var y=["length"];return this.eachChild(function(I){y.push(I.serialize())}),y};var Ka={"==":Fi,"!=":$n,">":Ra,"<":Ca,">=":Na,"<=":La,array:xl,at:Tc,boolean:xl,case:cf,coalesce:Zu,collator:Hu,format:Gu,image:qs,in:wl,"index-of":vu,interpolate:Wl,"interpolate-hcl":Wl,"interpolate-lab":Wl,length:Dn,let:Oc,literal:Go,match:qc,number:xl,"number-format":Yn,object:xl,slice:fc,step:_u,string:xl,"to-boolean":Po,"to-color":Po,"to-number":Po,"to-string":Po,var:Dc,within:Mu};function bo(m,y){var I=y[0],U=y[1],$=y[2],ae=y[3];I=I.evaluate(m),U=U.evaluate(m),$=$.evaluate(m);var he=ae?ae.evaluate(m):1,Oe=lc(I,U,$,he);if(Oe)throw new ps(Oe);return new cs(I/255*he,U/255*he,$/255*he,he)}function Xo(m,y){return m in y}function Ss(m,y){var I=y[m];return typeof I=="undefined"?null:I}function as(m,y,I,U){for(;I<=U;){var $=I+U>>1;if(y[$]===m)return!0;y[$]>m?U=$-1:I=$+1}return!1}function ws(m){return{type:m}}Pa.register(Ka,{error:[rf,[Oo],function(m,y){var I=y[0];throw new ps(I.evaluate(m))}],typeof:[Oo,[Do],function(m,y){var I=y[0];return Os(Es(I.evaluate(m)))}],"to-rgba":[Kl(aa,4),[ql],function(m,y){var I=y[0];return I.evaluate(m).toArray()}],rgb:[ql,[aa,aa,aa],bo],rgba:[ql,[aa,aa,aa,aa],bo],has:{type:qo,overloads:[[[Oo],function(m,y){var I=y[0];return Xo(I.evaluate(m),m.properties())}],[[Oo,Pc],function(m,y){var I=y[0],U=y[1];return Xo(I.evaluate(m),U.evaluate(m))}]]},get:{type:Do,overloads:[[[Oo],function(m,y){var I=y[0];return Ss(I.evaluate(m),m.properties())}],[[Oo,Pc],function(m,y){var I=y[0],U=y[1];return Ss(I.evaluate(m),U.evaluate(m))}]]},"feature-state":[Do,[Oo],function(m,y){var I=y[0];return Ss(I.evaluate(m),m.featureState||{})}],properties:[Pc,[],function(m){return m.properties()}],"geometry-type":[Oo,[],function(m){return m.geometryType()}],id:[Do,[],function(m){return m.id()}],zoom:[aa,[],function(m){return m.globals.zoom}],"heatmap-density":[aa,[],function(m){return m.globals.heatmapDensity||0}],"line-progress":[aa,[],function(m){return m.globals.lineProgress||0}],accumulated:[Do,[],function(m){return m.globals.accumulated===void 0?null:m.globals.accumulated}],"+":[aa,ws(aa),function(m,y){for(var I=0,U=0,$=y;U<$.length;U+=1){var ae=$[U];I+=ae.evaluate(m)}return I}],"*":[aa,ws(aa),function(m,y){for(var I=1,U=0,$=y;U<$.length;U+=1){var ae=$[U];I*=ae.evaluate(m)}return I}],"-":{type:aa,overloads:[[[aa,aa],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)-U.evaluate(m)}],[[aa],function(m,y){var I=y[0];return-I.evaluate(m)}]]},"/":[aa,[aa,aa],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)/U.evaluate(m)}],"%":[aa,[aa,aa],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)%U.evaluate(m)}],ln2:[aa,[],function(){return Math.LN2}],pi:[aa,[],function(){return Math.PI}],e:[aa,[],function(){return Math.E}],"^":[aa,[aa,aa],function(m,y){var I=y[0],U=y[1];return Math.pow(I.evaluate(m),U.evaluate(m))}],sqrt:[aa,[aa],function(m,y){var I=y[0];return Math.sqrt(I.evaluate(m))}],log10:[aa,[aa],function(m,y){var I=y[0];return Math.log(I.evaluate(m))/Math.LN10}],ln:[aa,[aa],function(m,y){var I=y[0];return Math.log(I.evaluate(m))}],log2:[aa,[aa],function(m,y){var I=y[0];return Math.log(I.evaluate(m))/Math.LN2}],sin:[aa,[aa],function(m,y){var I=y[0];return Math.sin(I.evaluate(m))}],cos:[aa,[aa],function(m,y){var I=y[0];return Math.cos(I.evaluate(m))}],tan:[aa,[aa],function(m,y){var I=y[0];return Math.tan(I.evaluate(m))}],asin:[aa,[aa],function(m,y){var I=y[0];return Math.asin(I.evaluate(m))}],acos:[aa,[aa],function(m,y){var I=y[0];return Math.acos(I.evaluate(m))}],atan:[aa,[aa],function(m,y){var I=y[0];return Math.atan(I.evaluate(m))}],min:[aa,ws(aa),function(m,y){return Math.min.apply(Math,y.map(function(I){return I.evaluate(m)}))}],max:[aa,ws(aa),function(m,y){return Math.max.apply(Math,y.map(function(I){return I.evaluate(m)}))}],abs:[aa,[aa],function(m,y){var I=y[0];return Math.abs(I.evaluate(m))}],round:[aa,[aa],function(m,y){var I=y[0],U=I.evaluate(m);return U<0?-Math.round(-U):Math.round(U)}],floor:[aa,[aa],function(m,y){var I=y[0];return Math.floor(I.evaluate(m))}],ceil:[aa,[aa],function(m,y){var I=y[0];return Math.ceil(I.evaluate(m))}],"filter-==":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1];return m.properties()[I.value]===U.value}],"filter-id-==":[qo,[Do],function(m,y){var I=y[0];return m.id()===I.value}],"filter-type-==":[qo,[Oo],function(m,y){var I=y[0];return m.geometryType()===I.value}],"filter-<":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1],$=m.properties()[I.value],ae=U.value;return typeof $==typeof ae&&$":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1],$=m.properties()[I.value],ae=U.value;return typeof $==typeof ae&&$>ae}],"filter-id->":[qo,[Do],function(m,y){var I=y[0],U=m.id(),$=I.value;return typeof U==typeof $&&U>$}],"filter-<=":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1],$=m.properties()[I.value],ae=U.value;return typeof $==typeof ae&&$<=ae}],"filter-id-<=":[qo,[Do],function(m,y){var I=y[0],U=m.id(),$=I.value;return typeof U==typeof $&&U<=$}],"filter->=":[qo,[Oo,Do],function(m,y){var I=y[0],U=y[1],$=m.properties()[I.value],ae=U.value;return typeof $==typeof ae&&$>=ae}],"filter-id->=":[qo,[Do],function(m,y){var I=y[0],U=m.id(),$=I.value;return typeof U==typeof $&&U>=$}],"filter-has":[qo,[Do],function(m,y){var I=y[0];return I.value in m.properties()}],"filter-has-id":[qo,[],function(m){return m.id()!==null&&m.id()!==void 0}],"filter-type-in":[qo,[Kl(Oo)],function(m,y){var I=y[0];return I.value.indexOf(m.geometryType())>=0}],"filter-id-in":[qo,[Kl(Do)],function(m,y){var I=y[0];return I.value.indexOf(m.id())>=0}],"filter-in-small":[qo,[Oo,Kl(Do)],function(m,y){var I=y[0],U=y[1];return U.value.indexOf(m.properties()[I.value])>=0}],"filter-in-large":[qo,[Oo,Kl(Do)],function(m,y){var I=y[0],U=y[1];return as(m.properties()[I.value],U.value,0,U.value.length-1)}],all:{type:qo,overloads:[[[qo,qo],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)&&U.evaluate(m)}],[ws(qo),function(m,y){for(var I=0,U=y;I-1}function va(m){return!!m.expression&&m.expression.interpolated}function no(m){return m instanceof Number?"number":m instanceof String?"string":m instanceof Boolean?"boolean":Array.isArray(m)?"array":m===null?"null":typeof m}function ys(m){return typeof m=="object"&&m!==null&&!Array.isArray(m)}function rs(m){return m}function $l(m,y){var I=y.type==="color",U=m.stops&&typeof m.stops[0][0]=="object",$=U||m.property!==void 0,ae=U||!$,he=m.type||(va(y)?"exponential":"interval");if(I&&(m=Ol({},m),m.stops&&(m.stops=m.stops.map(function(ha){return[ha[0],cs.parse(ha[1])]})),m.default?m.default=cs.parse(m.default):m.default=cs.parse(y.default)),m.colorSpace&&m.colorSpace!=="rgb"&&!Xf[m.colorSpace])throw new Error("Unknown color space: "+m.colorSpace);var Oe,rt,gt;if(he==="exponential")Oe=pu;else if(he==="interval")Oe=Nc;else if(he==="categorical"){Oe=Yu,rt=Object.create(null);for(var Et=0,or=m.stops;Et=m.stops[U-1][0])return m.stops[U-1][1];var $=hu(m.stops.map(function(ae){return ae[0]}),I);return m.stops[$][1]}function pu(m,y,I){var U=m.base!==void 0?m.base:1;if(no(I)!=="number")return Cu(m.default,y.default);var $=m.stops.length;if($===1||I<=m.stops[0][0])return m.stops[0][1];if(I>=m.stops[$-1][0])return m.stops[$-1][1];var ae=hu(m.stops.map(function(or){return or[0]}),I),he=xu(I,U,m.stops[ae][0],m.stops[ae+1][0]),Oe=m.stops[ae][1],rt=m.stops[ae+1][1],gt=zu[y.type]||rs;if(m.colorSpace&&m.colorSpace!=="rgb"){var Et=Xf[m.colorSpace];gt=function(or,_r){return Et.reverse(Et.interpolate(Et.forward(or),Et.forward(_r),he))}}return typeof Oe.evaluate=="function"?{evaluate:function(){for(var _r=[],pr=arguments.length;pr--;)_r[pr]=arguments[pr];var Fr=Oe.evaluate.apply(void 0,_r),oi=rt.evaluate.apply(void 0,_r);if(!(Fr===void 0||oi===void 0))return gt(Fr,oi,he)}}:gt(Oe,rt,he)}function Uc(m,y,I){return y.type==="color"?I=cs.parse(I):y.type==="formatted"?I=Jl.fromString(I.toString()):y.type==="resolvedImage"?I=fl.fromString(I.toString()):no(I)!==y.type&&(y.type!=="enum"||!y.values[I])&&(I=void 0),Cu(I,m.default,y.default)}function xu(m,y,I,U){var $=U-I,ae=m-I;return $===0?0:y===1?ae/$:(Math.pow(y,ae)-1)/(Math.pow(y,$)-1)}var Ac=function(y,I){this.expression=y,this._warningHistory={},this._evaluator=new Yo,this._defaultValue=I?ee(I):null,this._enumValues=I&&I.type==="enum"?I.values:null};Ac.prototype.evaluateWithoutErrorHandling=function(y,I,U,$,ae,he){return this._evaluator.globals=y,this._evaluator.feature=I,this._evaluator.featureState=U,this._evaluator.canonical=$,this._evaluator.availableImages=ae||null,this._evaluator.formattedSection=he,this.expression.evaluate(this._evaluator)},Ac.prototype.evaluate=function(y,I,U,$,ae,he){this._evaluator.globals=y,this._evaluator.feature=I||null,this._evaluator.featureState=U||null,this._evaluator.canonical=$,this._evaluator.availableImages=ae||null,this._evaluator.formattedSection=he||null;try{var Oe=this.expression.evaluate(this._evaluator);if(Oe==null||typeof Oe=="number"&&Oe!==Oe)return this._defaultValue;if(this._enumValues&&!(Oe in this._enumValues))throw new ps("Expected value to be one of "+Object.keys(this._enumValues).map(function(rt){return JSON.stringify(rt)}).join(", ")+", but found "+JSON.stringify(Oe)+" instead.");return Oe}catch(rt){return this._warningHistory[rt.message]||(this._warningHistory[rt.message]=!0,typeof console!="undefined"&&console.warn(rt.message)),this._defaultValue}};function Ua(m){return Array.isArray(m)&&m.length>0&&typeof m[0]=="string"&&m[0]in Ka}function oo(m,y){var I=new ks(Ka,[],y?Q(y):void 0),U=I.parse(m,void 0,void 0,void 0,y&&y.type==="string"?{typeAnnotation:"coerce"}:void 0);return U?Ho(new Ac(U,y)):ml(I.errors)}var Vc=function(y,I){this.kind=y,this._styleExpression=I,this.isStateDependent=y!=="constant"&&!js(I.expression)};Vc.prototype.evaluateWithoutErrorHandling=function(y,I,U,$,ae,he){return this._styleExpression.evaluateWithoutErrorHandling(y,I,U,$,ae,he)},Vc.prototype.evaluate=function(y,I,U,$,ae,he){return this._styleExpression.evaluate(y,I,U,$,ae,he)};var hc=function(y,I,U,$){this.kind=y,this.zoomStops=U,this._styleExpression=I,this.isStateDependent=y!=="camera"&&!js(I.expression),this.interpolationType=$};hc.prototype.evaluateWithoutErrorHandling=function(y,I,U,$,ae,he){return this._styleExpression.evaluateWithoutErrorHandling(y,I,U,$,ae,he)},hc.prototype.evaluate=function(y,I,U,$,ae,he){return this._styleExpression.evaluate(y,I,U,$,ae,he)},hc.prototype.interpolationFactor=function(y,I,U){return this.interpolationType?Wl.interpolationFactor(this.interpolationType,y,I,U):0};function Ku(m,y){if(m=oo(m,y),m.result==="error")return m;var I=m.value.expression,U=ih(I);if(!U&&!Ws(y))return ml([new Ns("","data expressions not supported")]);var $=Eu(I,["zoom"]);if(!$&&!Ls(y))return ml([new Ns("","zoom expressions not supported")]);var ae=B(I);if(!ae&&!$)return ml([new Ns("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(ae instanceof Ns)return ml([ae]);if(ae instanceof Wl&&!va(y))return ml([new Ns("",'"interpolate" expressions cannot be used with this property')]);if(!ae)return Ho(U?new Vc("constant",m.value):new Vc("source",m.value));var he=ae instanceof Wl?ae.interpolation:void 0;return Ho(U?new hc("camera",m.value,ae.labels,he):new hc("composite",m.value,ae.labels,he))}var ue=function(y,I){this._parameters=y,this._specification=I,Ol(this,$l(this._parameters,this._specification))};ue.deserialize=function(y){return new ue(y._parameters,y._specification)},ue.serialize=function(y){return{_parameters:y._parameters,_specification:y._specification}};function w(m,y){if(ys(m))return new ue(m,y);if(Ua(m)){var I=Ku(m,y);if(I.result==="error")throw new Error(I.value.map(function($){return $.key+": "+$.message}).join(", "));return I.value}else{var U=m;return typeof m=="string"&&y.type==="color"&&(U=cs.parse(m)),{kind:"constant",evaluate:function(){return U}}}}function B(m){var y=null;if(m instanceof Oc)y=B(m.result);else if(m instanceof Zu)for(var I=0,U=m.args;IU.maximum?[new _a(y,I,I+" is greater than the maximum value "+U.maximum)]:[]}function ot(m){var y=m.valueSpec,I=xo(m.value.type),U,$={},ae,he,Oe=I!=="categorical"&&m.value.property===void 0,rt=!Oe,gt=no(m.value.stops)==="array"&&no(m.value.stops[0])==="array"&&no(m.value.stops[0][0])==="object",Et=le({key:m.key,value:m.value,valueSpec:m.styleSpec.function,style:m.style,styleSpec:m.styleSpec,objectElementValidators:{stops:or,default:Fr}});return I==="identity"&&Oe&&Et.push(new _a(m.key,m.value,'missing required property "property"')),I!=="identity"&&!m.value.stops&&Et.push(new _a(m.key,m.value,'missing required property "stops"')),I==="exponential"&&m.valueSpec.expression&&!va(m.valueSpec)&&Et.push(new _a(m.key,m.value,"exponential functions not supported")),m.styleSpec.$version>=8&&(rt&&!Ws(m.valueSpec)?Et.push(new _a(m.key,m.value,"property functions not supported")):Oe&&!Ls(m.valueSpec)&&Et.push(new _a(m.key,m.value,"zoom functions not supported"))),(I==="categorical"||gt)&&m.value.property===void 0&&Et.push(new _a(m.key,m.value,'"property" property is required')),Et;function or(oi){if(I==="identity")return[new _a(oi.key,oi.value,'identity function may not have a "stops" property')];var Hi=[],Ai=oi.value;return Hi=Hi.concat(qe({key:oi.key,value:Ai,valueSpec:oi.valueSpec,style:oi.style,styleSpec:oi.styleSpec,arrayElementValidator:_r})),no(Ai)==="array"&&Ai.length===0&&Hi.push(new _a(oi.key,Ai,"array must have at least one stop")),Hi}function _r(oi){var Hi=[],Ai=oi.value,bn=oi.key;if(no(Ai)!=="array")return[new _a(bn,Ai,"array expected, "+no(Ai)+" found")];if(Ai.length!==2)return[new _a(bn,Ai,"array length 2 expected, length "+Ai.length+" found")];if(gt){if(no(Ai[0])!=="object")return[new _a(bn,Ai,"object expected, "+no(Ai[0])+" found")];if(Ai[0].zoom===void 0)return[new _a(bn,Ai,"object stop key must have zoom")];if(Ai[0].value===void 0)return[new _a(bn,Ai,"object stop key must have value")];if(he&&he>xo(Ai[0].zoom))return[new _a(bn,Ai[0].zoom,"stop zoom values must appear in ascending order")];xo(Ai[0].zoom)!==he&&(he=xo(Ai[0].zoom),ae=void 0,$={}),Hi=Hi.concat(le({key:bn+"[0]",value:Ai[0],valueSpec:{zoom:{}},style:oi.style,styleSpec:oi.styleSpec,objectElementValidators:{zoom:Xe,value:pr}}))}else Hi=Hi.concat(pr({key:bn+"[0]",value:Ai[0],valueSpec:{},style:oi.style,styleSpec:oi.styleSpec},Ai));return Ua(Yl(Ai[1]))?Hi.concat([new _a(bn+"[1]",Ai[1],"expressions are not allowed in function stops.")]):Hi.concat(Qa({key:bn+"[1]",value:Ai[1],valueSpec:y,style:oi.style,styleSpec:oi.styleSpec}))}function pr(oi,Hi){var Ai=no(oi.value),bn=xo(oi.value),nn=oi.value!==null?oi.value:Hi;if(!U)U=Ai;else if(Ai!==U)return[new _a(oi.key,nn,Ai+" stop domain type must match previous stop domain type "+U)];if(Ai!=="number"&&Ai!=="string"&&Ai!=="boolean")return[new _a(oi.key,nn,"stop domain value must be a number, string, or boolean")];if(Ai!=="number"&&I!=="categorical"){var xn="number expected, "+Ai+" found";return Ws(y)&&I===void 0&&(xn+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new _a(oi.key,nn,xn)]}return I==="categorical"&&Ai==="number"&&(!isFinite(bn)||Math.floor(bn)!==bn)?[new _a(oi.key,nn,"integer expected, found "+bn)]:I!=="categorical"&&Ai==="number"&&ae!==void 0&&bn=2&&m[1]!=="$id"&&m[1]!=="$type";case"in":return m.length>=3&&(typeof m[1]!="string"||Array.isArray(m[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return m.length!==3||Array.isArray(m[1])||Array.isArray(m[2]);case"any":case"all":for(var y=0,I=m.slice(1);yy?1:0}function Be(m){if(!Array.isArray(m))return!1;if(m[0]==="within")return!0;for(var y=1;y"||y==="<="||y===">="?We(m[1],m[2],y):y==="any"?it(m.slice(1)):y==="all"?["all"].concat(m.slice(1).map(et)):y==="none"?["all"].concat(m.slice(1).map(et).map(tr)):y==="in"?Ft(m[1],m.slice(2)):y==="!in"?tr(Ft(m[1],m.slice(2))):y==="has"?Ht(m[1]):y==="!has"?tr(Ht(m[1])):y==="within"?m:!0;return I}function We(m,y,I){switch(m){case"$type":return["filter-type-"+I,y];case"$id":return["filter-id-"+I,y];default:return["filter-"+I,m,y]}}function it(m){return["any"].concat(m.map(et))}function Ft(m,y){if(y.length===0)return!1;switch(m){case"$type":return["filter-type-in",["literal",y]];case"$id":return["filter-id-in",["literal",y]];default:return y.length>200&&!y.some(function(I){return typeof I!=typeof y[0]})?["filter-in-large",m,["literal",y.sort(De)]]:["filter-in-small",m,["literal",y]]}}function Ht(m){switch(m){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",m]}}function tr(m){return["!",m]}function dr(m){return Ir(Yl(m.value))?Tt(Ol({},m,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Sr(m)}function Sr(m){var y=m.value,I=m.key;if(no(y)!=="array")return[new _a(I,y,"array expected, "+no(y)+" found")];var U=m.styleSpec,$,ae=[];if(y.length<1)return[new _a(I,y,"filter array must have at least 1 element")];switch(ae=ae.concat(xr({key:I+"[0]",value:y[0],valueSpec:U.filter_operator,style:m.style,styleSpec:m.styleSpec})),xo(y[0])){case"<":case"<=":case">":case">=":y.length>=2&&xo(y[1])==="$type"&&ae.push(new _a(I,y,'"$type" cannot be use with operator "'+y[0]+'"'));case"==":case"!=":y.length!==3&&ae.push(new _a(I,y,'filter array for operator "'+y[0]+'" must have 3 elements'));case"in":case"!in":y.length>=2&&($=no(y[1]),$!=="string"&&ae.push(new _a(I+"[1]",y[1],"string expected, "+$+" found")));for(var he=2;he=Et[pr+0]&&U>=Et[pr+1])?(he[_r]=!0,ae.push(gt[_r])):he[_r]=!1}}},Ql.prototype._forEachCell=function(m,y,I,U,$,ae,he,Oe){for(var rt=this._convertToCellCoord(m),gt=this._convertToCellCoord(y),Et=this._convertToCellCoord(I),or=this._convertToCellCoord(U),_r=rt;_r<=Et;_r++)for(var pr=gt;pr<=or;pr++){var Fr=this.d*pr+_r;if(!(Oe&&!Oe(this._convertFromCellCoord(_r),this._convertFromCellCoord(pr),this._convertFromCellCoord(_r+1),this._convertFromCellCoord(pr+1)))&&$.call(this,m,y,I,U,Fr,ae,he,Oe))return}},Ql.prototype._convertFromCellCoord=function(m){return(m-this.padding)/this.scale},Ql.prototype._convertToCellCoord=function(m){return Math.max(0,Math.min(this.d-1,Math.floor(m*this.scale)+this.padding))},Ql.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var m=this.cells,y=Js+this.cells.length+1+1,I=0,U=0;U=0)){var or=m[Et];gt[Et]=Al[rt].shallow.indexOf(Et)>=0?or:He(or,y)}m instanceof Error&&(gt.message=m.message)}if(gt.$name)throw new Error("$name property is reserved for worker serialization logic.");return rt!=="Object"&&(gt.$name=rt),gt}throw new Error("can't serialize object of type "+typeof m)}function Ye(m){if(m==null||typeof m=="boolean"||typeof m=="number"||typeof m=="string"||m instanceof Boolean||m instanceof Number||m instanceof String||m instanceof Date||m instanceof RegExp||Te(m)||Ne(m)||ArrayBuffer.isView(m)||m instanceof dc)return m;if(Array.isArray(m))return m.map(Ye);if(typeof m=="object"){var y=m.$name||"Object",I=Al[y],U=I.klass;if(!U)throw new Error("can't deserialize unregistered class "+y);if(U.deserialize)return U.deserialize(m);for(var $=Object.create(U.prototype),ae=0,he=Object.keys(m);ae=0?rt:Ye(rt)}}return $}throw new Error("can't deserialize object of type "+typeof m)}var kt=function(){this.first=!0};kt.prototype.update=function(y,I){var U=Math.floor(y);return this.first?(this.first=!1,this.lastIntegerZoom=U,this.lastIntegerZoomTime=0,this.lastZoom=y,this.lastFloorZoom=U,!0):(this.lastFloorZoom>U?(this.lastIntegerZoom=U+1,this.lastIntegerZoomTime=I):this.lastFloorZoom=128&&m<=255},Arabic:function(m){return m>=1536&&m<=1791},"Arabic Supplement":function(m){return m>=1872&&m<=1919},"Arabic Extended-A":function(m){return m>=2208&&m<=2303},"Hangul Jamo":function(m){return m>=4352&&m<=4607},"Unified Canadian Aboriginal Syllabics":function(m){return m>=5120&&m<=5759},Khmer:function(m){return m>=6016&&m<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(m){return m>=6320&&m<=6399},"General Punctuation":function(m){return m>=8192&&m<=8303},"Letterlike Symbols":function(m){return m>=8448&&m<=8527},"Number Forms":function(m){return m>=8528&&m<=8591},"Miscellaneous Technical":function(m){return m>=8960&&m<=9215},"Control Pictures":function(m){return m>=9216&&m<=9279},"Optical Character Recognition":function(m){return m>=9280&&m<=9311},"Enclosed Alphanumerics":function(m){return m>=9312&&m<=9471},"Geometric Shapes":function(m){return m>=9632&&m<=9727},"Miscellaneous Symbols":function(m){return m>=9728&&m<=9983},"Miscellaneous Symbols and Arrows":function(m){return m>=11008&&m<=11263},"CJK Radicals Supplement":function(m){return m>=11904&&m<=12031},"Kangxi Radicals":function(m){return m>=12032&&m<=12255},"Ideographic Description Characters":function(m){return m>=12272&&m<=12287},"CJK Symbols and Punctuation":function(m){return m>=12288&&m<=12351},Hiragana:function(m){return m>=12352&&m<=12447},Katakana:function(m){return m>=12448&&m<=12543},Bopomofo:function(m){return m>=12544&&m<=12591},"Hangul Compatibility Jamo":function(m){return m>=12592&&m<=12687},Kanbun:function(m){return m>=12688&&m<=12703},"Bopomofo Extended":function(m){return m>=12704&&m<=12735},"CJK Strokes":function(m){return m>=12736&&m<=12783},"Katakana Phonetic Extensions":function(m){return m>=12784&&m<=12799},"Enclosed CJK Letters and Months":function(m){return m>=12800&&m<=13055},"CJK Compatibility":function(m){return m>=13056&&m<=13311},"CJK Unified Ideographs Extension A":function(m){return m>=13312&&m<=19903},"Yijing Hexagram Symbols":function(m){return m>=19904&&m<=19967},"CJK Unified Ideographs":function(m){return m>=19968&&m<=40959},"Yi Syllables":function(m){return m>=40960&&m<=42127},"Yi Radicals":function(m){return m>=42128&&m<=42191},"Hangul Jamo Extended-A":function(m){return m>=43360&&m<=43391},"Hangul Syllables":function(m){return m>=44032&&m<=55215},"Hangul Jamo Extended-B":function(m){return m>=55216&&m<=55295},"Private Use Area":function(m){return m>=57344&&m<=63743},"CJK Compatibility Ideographs":function(m){return m>=63744&&m<=64255},"Arabic Presentation Forms-A":function(m){return m>=64336&&m<=65023},"Vertical Forms":function(m){return m>=65040&&m<=65055},"CJK Compatibility Forms":function(m){return m>=65072&&m<=65103},"Small Form Variants":function(m){return m>=65104&&m<=65135},"Arabic Presentation Forms-B":function(m){return m>=65136&&m<=65279},"Halfwidth and Fullwidth Forms":function(m){return m>=65280&&m<=65519}};function jt(m){for(var y=0,I=m;y=65097&&m<=65103)||nt["CJK Compatibility Ideographs"](m)||nt["CJK Compatibility"](m)||nt["CJK Radicals Supplement"](m)||nt["CJK Strokes"](m)||nt["CJK Symbols and Punctuation"](m)&&!(m>=12296&&m<=12305)&&!(m>=12308&&m<=12319)&&m!==12336||nt["CJK Unified Ideographs Extension A"](m)||nt["CJK Unified Ideographs"](m)||nt["Enclosed CJK Letters and Months"](m)||nt["Hangul Compatibility Jamo"](m)||nt["Hangul Jamo Extended-A"](m)||nt["Hangul Jamo Extended-B"](m)||nt["Hangul Jamo"](m)||nt["Hangul Syllables"](m)||nt.Hiragana(m)||nt["Ideographic Description Characters"](m)||nt.Kanbun(m)||nt["Kangxi Radicals"](m)||nt["Katakana Phonetic Extensions"](m)||nt.Katakana(m)&&m!==12540||nt["Halfwidth and Fullwidth Forms"](m)&&m!==65288&&m!==65289&&m!==65293&&!(m>=65306&&m<=65310)&&m!==65339&&m!==65341&&m!==65343&&!(m>=65371&&m<=65503)&&m!==65507&&!(m>=65512&&m<=65519)||nt["Small Form Variants"](m)&&!(m>=65112&&m<=65118)&&!(m>=65123&&m<=65126)||nt["Unified Canadian Aboriginal Syllabics"](m)||nt["Unified Canadian Aboriginal Syllabics Extended"](m)||nt["Vertical Forms"](m)||nt["Yijing Hexagram Symbols"](m)||nt["Yi Syllables"](m)||nt["Yi Radicals"](m))}function _i(m){return!!(nt["Latin-1 Supplement"](m)&&(m===167||m===169||m===174||m===177||m===188||m===189||m===190||m===215||m===247)||nt["General Punctuation"](m)&&(m===8214||m===8224||m===8225||m===8240||m===8241||m===8251||m===8252||m===8258||m===8263||m===8264||m===8265||m===8273)||nt["Letterlike Symbols"](m)||nt["Number Forms"](m)||nt["Miscellaneous Technical"](m)&&(m>=8960&&m<=8967||m>=8972&&m<=8991||m>=8996&&m<=9e3||m===9003||m>=9085&&m<=9114||m>=9150&&m<=9165||m===9167||m>=9169&&m<=9179||m>=9186&&m<=9215)||nt["Control Pictures"](m)&&m!==9251||nt["Optical Character Recognition"](m)||nt["Enclosed Alphanumerics"](m)||nt["Geometric Shapes"](m)||nt["Miscellaneous Symbols"](m)&&!(m>=9754&&m<=9759)||nt["Miscellaneous Symbols and Arrows"](m)&&(m>=11026&&m<=11055||m>=11088&&m<=11097||m>=11192&&m<=11243)||nt["CJK Symbols and Punctuation"](m)||nt.Katakana(m)||nt["Private Use Area"](m)||nt["CJK Compatibility Forms"](m)||nt["Small Form Variants"](m)||nt["Halfwidth and Fullwidth Forms"](m)||m===8734||m===8756||m===8757||m>=9984&&m<=10087||m>=10102&&m<=10131||m===65532||m===65533)}function bi(m){return!(qr(m)||_i(m))}function Zr(m){return nt.Arabic(m)||nt["Arabic Supplement"](m)||nt["Arabic Extended-A"](m)||nt["Arabic Presentation Forms-A"](m)||nt["Arabic Presentation Forms-B"](m)}function ai(m){return m>=1424&&m<=2303||nt["Arabic Presentation Forms-A"](m)||nt["Arabic Presentation Forms-B"](m)}function gi(m,y){return!(!y&&ai(m)||m>=2304&&m<=3583||m>=3840&&m<=4255||nt.Khmer(m))}function Ii(m){for(var y=0,I=m;y-1&&(En=ei.error),Ln&&Ln(m)};function Ea(){Ia.fire(new Wo("pluginStateChange",{pluginStatus:En,pluginURL:Un}))}var Ia=new Wn,yo=function(){return En},Da=function(m){return m({pluginStatus:En,pluginURL:Un}),Ia.on("pluginStateChange",m),m},go=function(m,y,I){if(I===void 0&&(I=!1),En===ei.deferred||En===ei.loading||En===ei.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");Un=ut.resolveURL(m),En=ei.deferred,Ln=y,Ea(),I||Is()},Is=function(){if(En!==ei.deferred||!Un)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");En=ei.loading,Ea(),Un&&ri({url:Un},function(m){m?ia(m):(En=ei.loaded,Ea())})},Ms={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return En===ei.loaded||Ms.applyArabicShaping!=null},isLoading:function(){return En===ei.loading},setState:function(y){En=y.pluginStatus,Un=y.pluginURL},isParsed:function(){return Ms.applyArabicShaping!=null&&Ms.processBidirectionalText!=null&&Ms.processStyledBidirectionalText!=null},getPluginURL:function(){return Un}},Xs=function(){!Ms.isLoading()&&!Ms.isLoaded()&&yo()==="deferred"&&Is()},Gn=function(y,I){this.zoom=y,I?(this.now=I.now,this.fadeDuration=I.fadeDuration,this.zoomHistory=I.zoomHistory,this.transition=I.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new kt,this.transition={})};Gn.prototype.isSupportedScript=function(y){return Si(y,Ms.isLoaded())},Gn.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},Gn.prototype.getCrossfadeParameters=function(){var y=this.zoom,I=y-Math.floor(y),U=this.crossFadingFactor();return y>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:I+(1-I)*U}:{fromScale:.5,toScale:1,t:1-(1-U)*I}};var ja=function(y,I){this.property=y,this.value=I,this.expression=w(I===void 0?y.specification.default:I,y.specification)};ja.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},ja.prototype.possiblyEvaluate=function(y,I,U){return this.property.possiblyEvaluate(this,y,I,U)};var Fo=function(y){this.property=y,this.value=new ja(y,void 0)};Fo.prototype.transitioned=function(y,I){return new $s(this.property,this.value,I,x({},y.transition,this.transition),y.now)},Fo.prototype.untransitioned=function(){return new $s(this.property,this.value,null,{},0)};var Uo=function(y){this._properties=y,this._values=Object.create(y.defaultTransitionablePropertyValues)};Uo.prototype.getValue=function(y){return j(this._values[y].value.value)},Uo.prototype.setValue=function(y,I){this._values.hasOwnProperty(y)||(this._values[y]=new Fo(this._values[y].property)),this._values[y].value=new ja(this._values[y].property,I===null?void 0:j(I))},Uo.prototype.getTransition=function(y){return j(this._values[y].transition)},Uo.prototype.setTransition=function(y,I){this._values.hasOwnProperty(y)||(this._values[y]=new Fo(this._values[y].property)),this._values[y].transition=j(I)||void 0},Uo.prototype.serialize=function(){for(var y={},I=0,U=Object.keys(this._values);Ithis.end)return this.prior=null,ae;if(this.value.isDataDriven())return this.prior=null,ae;if($he.zoomHistory.lastIntegerZoom?{from:U,to:$}:{from:ae,to:$}},y.prototype.interpolate=function(U){return U},y}(bt),Rr=function(y){this.specification=y};Rr.prototype.possiblyEvaluate=function(y,I,U,$){if(y.value!==void 0)if(y.expression.kind==="constant"){var ae=y.expression.evaluate(I,null,{},U,$);return this._calculate(ae,ae,ae,I)}else return this._calculate(y.expression.evaluate(new Gn(Math.floor(I.zoom-1),I)),y.expression.evaluate(new Gn(Math.floor(I.zoom),I)),y.expression.evaluate(new Gn(Math.floor(I.zoom+1),I)),I)},Rr.prototype._calculate=function(y,I,U,$){var ae=$.zoom;return ae>$.zoomHistory.lastIntegerZoom?{from:y,to:I}:{from:U,to:I}},Rr.prototype.interpolate=function(y){return y};var jr=function(y){this.specification=y};jr.prototype.possiblyEvaluate=function(y,I,U,$){return!!y.expression.evaluate(I,null,{},U,$)},jr.prototype.interpolate=function(){return!1};var Nr=function(y){this.properties=y,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(var I in y){var U=y[I];U.specification.overridable&&this.overridableProperties.push(I);var $=this.defaultPropertyValues[I]=new ja(U,void 0),ae=this.defaultTransitionablePropertyValues[I]=new Fo(U);this.defaultTransitioningPropertyValues[I]=ae.untransitioned(),this.defaultPossiblyEvaluatedValues[I]=$.possiblyEvaluate({})}};X("DataDrivenProperty",bt),X("DataConstantProperty",Me),X("CrossFadedDataDrivenProperty",zt),X("CrossFadedProperty",Rr),X("ColorRampProperty",jr);var Gr="-transition",mi=function(m){function y(I,U){if(m.call(this),this.id=I.id,this.type=I.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},I.type!=="custom"&&(I=I,this.metadata=I.metadata,this.minzoom=I.minzoom,this.maxzoom=I.maxzoom,I.type!=="background"&&(this.source=I.source,this.sourceLayer=I["source-layer"],this.filter=I.filter),U.layout&&(this._unevaluatedLayout=new bu(U.layout)),U.paint)){this._transitionablePaint=new Uo(U.paint);for(var $ in I.paint)this.setPaintProperty($,I.paint[$],{validate:!1});for(var ae in I.layout)this.setLayoutProperty(ae,I.layout[ae],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Sc(U.paint)}}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},y.prototype.getLayoutProperty=function(U){return U==="visibility"?this.visibility:this._unevaluatedLayout.getValue(U)},y.prototype.setLayoutProperty=function(U,$,ae){if(ae===void 0&&(ae={}),$!=null){var he="layers."+this.id+".layout."+U;if(this._validate(Ul,he,U,$,ae))return}if(U==="visibility"){this.visibility=$;return}this._unevaluatedLayout.setValue(U,$)},y.prototype.getPaintProperty=function(U){return V(U,Gr)?this._transitionablePaint.getTransition(U.slice(0,-Gr.length)):this._transitionablePaint.getValue(U)},y.prototype.setPaintProperty=function(U,$,ae){if(ae===void 0&&(ae={}),$!=null){var he="layers."+this.id+".paint."+U;if(this._validate(hl,he,U,$,ae))return!1}if(V(U,Gr))return this._transitionablePaint.setTransition(U.slice(0,-Gr.length),$||void 0),!1;var Oe=this._transitionablePaint._values[U],rt=Oe.property.specification["property-type"]==="cross-faded-data-driven",gt=Oe.value.isDataDriven(),Et=Oe.value;this._transitionablePaint.setValue(U,$),this._handleSpecialPaintPropertyUpdate(U);var or=this._transitionablePaint._values[U].value,_r=or.isDataDriven();return _r||gt||rt||this._handleOverridablePaintPropertyUpdate(U,Et,or)},y.prototype._handleSpecialPaintPropertyUpdate=function(U){},y.prototype._handleOverridablePaintPropertyUpdate=function(U,$,ae){return!1},y.prototype.isHidden=function(U){return this.minzoom&&U=this.maxzoom?!0:this.visibility==="none"},y.prototype.updateTransitions=function(U){this._transitioningPaint=this._transitionablePaint.transitioned(U,this._transitioningPaint)},y.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},y.prototype.recalculate=function(U,$){U.getCrossfadeParameters&&(this._crossfadeParameters=U.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(U,void 0,$)),this.paint=this._transitioningPaint.possiblyEvaluate(U,void 0,$)},y.prototype.serialize=function(){var U={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(U.layout=U.layout||{},U.layout.visibility=this.visibility),Z(U,function($,ae){return $!==void 0&&!(ae==="layout"&&!Object.keys($).length)&&!(ae==="paint"&&!Object.keys($).length)})},y.prototype._validate=function(U,$,ae,he,Oe){return Oe===void 0&&(Oe={}),Oe&&Oe.validate===!1?!1:Lu(this,U.call(wo,{key:$,layerType:this.type,objectKey:ae,value:he,styleSpec:Rn,style:{glyphs:!0,sprite:!0}}))},y.prototype.is3D=function(){return!1},y.prototype.isTileClipped=function(){return!1},y.prototype.hasOffscreenPass=function(){return!1},y.prototype.resize=function(){},y.prototype.isStateDependent=function(){for(var U in this.paint._values){var $=this.paint.get(U);if(!(!($ instanceof dl)||!Ws($.property.specification))&&($.value.kind==="source"||$.value.kind==="composite")&&$.value.isStateDependent)return!0}return!1},y}(Wn),Ui={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},qi=function(y,I){this._structArray=y,this._pos1=I*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},Ei=128,Hn=5,en=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};en.serialize=function(y,I){return y._trim(),I&&(y.isTransferred=!0,I.push(y.arrayBuffer)),{length:y.length,arrayBuffer:y.arrayBuffer}},en.deserialize=function(y){var I=Object.create(this.prototype);return I.arrayBuffer=y.arrayBuffer,I.length=y.length,I.capacity=y.arrayBuffer.byteLength/I.bytesPerElement,I._refreshViews(),I},en.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},en.prototype.clear=function(){this.length=0},en.prototype.resize=function(y){this.reserve(y),this.length=y},en.prototype.reserve=function(y){if(y>this.capacity){this.capacity=Math.max(y,Math.floor(this.capacity*Hn),Ei),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var I=this.uint8;this._refreshViews(),I&&this.uint8.set(I)}},en.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};function Wi(m,y){y===void 0&&(y=1);var I=0,U=0,$=m.map(function(he){var Oe=si(he.type),rt=I=Mr(I,Math.max(y,Oe)),gt=he.components||1;return U=Math.max(U,Oe),I+=Oe*gt,{name:he.name,type:he.type,components:gt,offset:rt}}),ae=Mr(I,Math.max(U,y));return{members:$,size:ae,alignment:y}}function si(m){return Ui[m].BYTES_PER_ELEMENT}function Mr(m,y){return Math.ceil(m/y)*y}var Yr=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$){var ae=this.length;return this.resize(ae+1),this.emplace(ae,U,$)},y.prototype.emplace=function(U,$,ae){var he=U*2;return this.int16[he+0]=$,this.int16[he+1]=ae,U},y}(en);Yr.prototype.bytesPerElement=4,X("StructArrayLayout2i4",Yr);var xi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,U,$,ae,he)},y.prototype.emplace=function(U,$,ae,he,Oe){var rt=U*4;return this.int16[rt+0]=$,this.int16[rt+1]=ae,this.int16[rt+2]=he,this.int16[rt+3]=Oe,U},y}(en);xi.prototype.bytesPerElement=8,X("StructArrayLayout4i8",xi);var Ri=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt){var gt=this.length;return this.resize(gt+1),this.emplace(gt,U,$,ae,he,Oe,rt)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt){var Et=U*6;return this.int16[Et+0]=$,this.int16[Et+1]=ae,this.int16[Et+2]=he,this.int16[Et+3]=Oe,this.int16[Et+4]=rt,this.int16[Et+5]=gt,U},y}(en);Ri.prototype.bytesPerElement=12,X("StructArrayLayout2i4i12",Ri);var ci=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt){var gt=this.length;return this.resize(gt+1),this.emplace(gt,U,$,ae,he,Oe,rt)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt){var Et=U*4,or=U*8;return this.int16[Et+0]=$,this.int16[Et+1]=ae,this.uint8[or+4]=he,this.uint8[or+5]=Oe,this.uint8[or+6]=rt,this.uint8[or+7]=gt,U},y}(en);ci.prototype.bytesPerElement=8,X("StructArrayLayout2i4ub8",ci);var an=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$){var ae=this.length;return this.resize(ae+1),this.emplace(ae,U,$)},y.prototype.emplace=function(U,$,ae){var he=U*2;return this.float32[he+0]=$,this.float32[he+1]=ae,U},y}(en);an.prototype.bytesPerElement=8,X("StructArrayLayout2f8",an);var Zi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or,_r){var pr=this.length;return this.resize(pr+1),this.emplace(pr,U,$,ae,he,Oe,rt,gt,Et,or,_r)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr){var Fr=U*10;return this.uint16[Fr+0]=$,this.uint16[Fr+1]=ae,this.uint16[Fr+2]=he,this.uint16[Fr+3]=Oe,this.uint16[Fr+4]=rt,this.uint16[Fr+5]=gt,this.uint16[Fr+6]=Et,this.uint16[Fr+7]=or,this.uint16[Fr+8]=_r,this.uint16[Fr+9]=pr,U},y}(en);Zi.prototype.bytesPerElement=20,X("StructArrayLayout10ui20",Zi);var Bn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr){var oi=this.length;return this.resize(oi+1),this.emplace(oi,U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi){var Hi=U*12;return this.int16[Hi+0]=$,this.int16[Hi+1]=ae,this.int16[Hi+2]=he,this.int16[Hi+3]=Oe,this.uint16[Hi+4]=rt,this.uint16[Hi+5]=gt,this.uint16[Hi+6]=Et,this.uint16[Hi+7]=or,this.int16[Hi+8]=_r,this.int16[Hi+9]=pr,this.int16[Hi+10]=Fr,this.int16[Hi+11]=oi,U},y}(en);Bn.prototype.bytesPerElement=24,X("StructArrayLayout4i4ui4i24",Bn);var hi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*3;return this.float32[Oe+0]=$,this.float32[Oe+1]=ae,this.float32[Oe+2]=he,U},y}(en);hi.prototype.bytesPerElement=12,X("StructArrayLayout3f12",hi);var li=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var $=this.length;return this.resize($+1),this.emplace($,U)},y.prototype.emplace=function(U,$){var ae=U*1;return this.uint32[ae+0]=$,U},y}(en);li.prototype.bytesPerElement=4,X("StructArrayLayout1ul4",li);var mn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or){var _r=this.length;return this.resize(_r+1),this.emplace(_r,U,$,ae,he,Oe,rt,gt,Et,or)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r){var pr=U*10,Fr=U*5;return this.int16[pr+0]=$,this.int16[pr+1]=ae,this.int16[pr+2]=he,this.int16[pr+3]=Oe,this.int16[pr+4]=rt,this.int16[pr+5]=gt,this.uint32[Fr+3]=Et,this.uint16[pr+8]=or,this.uint16[pr+9]=_r,U},y}(en);mn.prototype.bytesPerElement=20,X("StructArrayLayout6i1ul2ui20",mn);var Ji=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt){var gt=this.length;return this.resize(gt+1),this.emplace(gt,U,$,ae,he,Oe,rt)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt){var Et=U*6;return this.int16[Et+0]=$,this.int16[Et+1]=ae,this.int16[Et+2]=he,this.int16[Et+3]=Oe,this.int16[Et+4]=rt,this.int16[Et+5]=gt,U},y}(en);Ji.prototype.bytesPerElement=12,X("StructArrayLayout2i2i2i12",Ji);var Vi=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe){var rt=this.length;return this.resize(rt+1),this.emplace(rt,U,$,ae,he,Oe)},y.prototype.emplace=function(U,$,ae,he,Oe,rt){var gt=U*4,Et=U*8;return this.float32[gt+0]=$,this.float32[gt+1]=ae,this.float32[gt+2]=he,this.int16[Et+6]=Oe,this.int16[Et+7]=rt,U},y}(en);Vi.prototype.bytesPerElement=16,X("StructArrayLayout2f1f2i16",Vi);var Ni=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,U,$,ae,he)},y.prototype.emplace=function(U,$,ae,he,Oe){var rt=U*12,gt=U*3;return this.uint8[rt+0]=$,this.uint8[rt+1]=ae,this.float32[gt+1]=he,this.float32[gt+2]=Oe,U},y}(en);Ni.prototype.bytesPerElement=12,X("StructArrayLayout2ub2f12",Ni);var pn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*3;return this.uint16[Oe+0]=$,this.uint16[Oe+1]=ae,this.uint16[Oe+2]=he,U},y}(en);pn.prototype.bytesPerElement=6,X("StructArrayLayout3ui6",pn);var Vn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn){var xn=this.length;return this.resize(xn+1),this.emplace(xn,U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn,xn){var Pn=U*24,Zn=U*12,ga=U*48;return this.int16[Pn+0]=$,this.int16[Pn+1]=ae,this.uint16[Pn+2]=he,this.uint16[Pn+3]=Oe,this.uint32[Zn+2]=rt,this.uint32[Zn+3]=gt,this.uint32[Zn+4]=Et,this.uint16[Pn+10]=or,this.uint16[Pn+11]=_r,this.uint16[Pn+12]=pr,this.float32[Zn+7]=Fr,this.float32[Zn+8]=oi,this.uint8[ga+36]=Hi,this.uint8[ga+37]=Ai,this.uint8[ga+38]=bn,this.uint32[Zn+10]=nn,this.int16[Pn+22]=xn,U},y}(en);Vn.prototype.bytesPerElement=48,X("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Vn);var na=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn,xn,Pn,Zn,ga,ha,eo,za,Za,Ko,to,ao){var _s=this.length;return this.resize(_s+1),this.emplace(_s,U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn,xn,Pn,Zn,ga,ha,eo,za,Za,Ko,to,ao)},y.prototype.emplace=function(U,$,ae,he,Oe,rt,gt,Et,or,_r,pr,Fr,oi,Hi,Ai,bn,nn,xn,Pn,Zn,ga,ha,eo,za,Za,Ko,to,ao,_s){var jo=U*34,El=U*17;return this.int16[jo+0]=$,this.int16[jo+1]=ae,this.int16[jo+2]=he,this.int16[jo+3]=Oe,this.int16[jo+4]=rt,this.int16[jo+5]=gt,this.int16[jo+6]=Et,this.int16[jo+7]=or,this.uint16[jo+8]=_r,this.uint16[jo+9]=pr,this.uint16[jo+10]=Fr,this.uint16[jo+11]=oi,this.uint16[jo+12]=Hi,this.uint16[jo+13]=Ai,this.uint16[jo+14]=bn,this.uint16[jo+15]=nn,this.uint16[jo+16]=xn,this.uint16[jo+17]=Pn,this.uint16[jo+18]=Zn,this.uint16[jo+19]=ga,this.uint16[jo+20]=ha,this.uint16[jo+21]=eo,this.uint16[jo+22]=za,this.uint32[El+12]=Za,this.float32[El+13]=Ko,this.float32[El+14]=to,this.float32[El+15]=ao,this.float32[El+16]=_s,U},y}(en);na.prototype.bytesPerElement=68,X("StructArrayLayout8i15ui1ul4f68",na);var Ki=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var $=this.length;return this.resize($+1),this.emplace($,U)},y.prototype.emplace=function(U,$){var ae=U*1;return this.float32[ae+0]=$,U},y}(en);Ki.prototype.bytesPerElement=4,X("StructArrayLayout1f4",Ki);var kn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*3;return this.int16[Oe+0]=$,this.int16[Oe+1]=ae,this.int16[Oe+2]=he,U},y}(en);kn.prototype.bytesPerElement=6,X("StructArrayLayout3i6",kn);var ta=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae){var he=this.length;return this.resize(he+1),this.emplace(he,U,$,ae)},y.prototype.emplace=function(U,$,ae,he){var Oe=U*2,rt=U*4;return this.uint32[Oe+0]=$,this.uint16[rt+2]=ae,this.uint16[rt+3]=he,U},y}(en);ta.prototype.bytesPerElement=8,X("StructArrayLayout1ul2ui8",ta);var oa=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$){var ae=this.length;return this.resize(ae+1),this.emplace(ae,U,$)},y.prototype.emplace=function(U,$,ae){var he=U*2;return this.uint16[he+0]=$,this.uint16[he+1]=ae,U},y}(en);oa.prototype.bytesPerElement=4,X("StructArrayLayout2ui4",oa);var ba=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var $=this.length;return this.resize($+1),this.emplace($,U)},y.prototype.emplace=function(U,$){var ae=U*1;return this.uint16[ae+0]=$,U},y}(en);ba.prototype.bytesPerElement=2,X("StructArrayLayout1ui2",ba);var is=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,$,ae,he){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,U,$,ae,he)},y.prototype.emplace=function(U,$,ae,he,Oe){var rt=U*4;return this.float32[rt+0]=$,this.float32[rt+1]=ae,this.float32[rt+2]=he,this.float32[rt+3]=Oe,U},y}(en);is.prototype.bytesPerElement=16,X("StructArrayLayout4f16",is);var Zs=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return I.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},I.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},I.x1.get=function(){return this._structArray.int16[this._pos2+2]},I.y1.get=function(){return this._structArray.int16[this._pos2+3]},I.x2.get=function(){return this._structArray.int16[this._pos2+4]},I.y2.get=function(){return this._structArray.int16[this._pos2+5]},I.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},I.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},I.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},I.anchorPoint.get=function(){return new u(this.anchorPointX,this.anchorPointY)},Object.defineProperties(y.prototype,I),y}(qi);Zs.prototype.size=20;var Va=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Zs(this,U)},y}(mn);X("CollisionBoxArray",Va);var Ml=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return I.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},I.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},I.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},I.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},I.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},I.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},I.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},I.segment.get=function(){return this._structArray.uint16[this._pos2+10]},I.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},I.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},I.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},I.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},I.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},I.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},I.placedOrientation.set=function(U){this._structArray.uint8[this._pos1+37]=U},I.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},I.hidden.set=function(U){this._structArray.uint8[this._pos1+38]=U},I.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},I.crossTileID.set=function(U){this._structArray.uint32[this._pos4+10]=U},I.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(y.prototype,I),y}(qi);Ml.prototype.size=48;var zo=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Ml(this,U)},y}(Vn);X("PlacedSymbolArray",zo);var Qs=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return I.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},I.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},I.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},I.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},I.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},I.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},I.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},I.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},I.key.get=function(){return this._structArray.uint16[this._pos2+8]},I.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},I.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},I.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},I.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},I.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},I.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},I.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},I.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},I.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},I.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},I.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},I.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},I.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},I.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},I.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},I.crossTileID.set=function(U){this._structArray.uint32[this._pos4+12]=U},I.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},I.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},I.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},I.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(y.prototype,I),y}(qi);Qs.prototype.size=68;var al=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Qs(this,U)},y}(na);X("SymbolInstanceArray",al);var Vl=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.getoffsetX=function(U){return this.float32[U*1+0]},y}(Ki);X("GlyphOffsetArray",Vl);var ss=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.getx=function(U){return this.int16[U*3+0]},y.prototype.gety=function(U){return this.int16[U*3+1]},y.prototype.gettileUnitDistanceFromAnchor=function(U){return this.int16[U*3+2]},y}(kn);X("SymbolLineVertexArray",ss);var Vs=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return I.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},I.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},I.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(y.prototype,I),y}(qi);Vs.prototype.size=8;var Ys=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Vs(this,U)},y}(ta);X("FeatureIndexArray",Ys);var wa=Wi([{name:"a_pos",components:2,type:"Int16"}],4),ol=wa.members,io=function(y){y===void 0&&(y=[]),this.segments=y};io.prototype.prepareSegment=function(y,I,U,$){var ae=this.segments[this.segments.length-1];return y>io.MAX_VERTEX_ARRAY_LENGTH&&te("Max vertices per segment is "+io.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+y),(!ae||ae.vertexLength+y>io.MAX_VERTEX_ARRAY_LENGTH||ae.sortKey!==$)&&(ae={vertexOffset:I.length,primitiveOffset:U.length,vertexLength:0,primitiveLength:0},$!==void 0&&(ae.sortKey=$),this.segments.push(ae)),ae},io.prototype.get=function(){return this.segments},io.prototype.destroy=function(){for(var y=0,I=this.segments;y>>16)*rt&65535)<<16)&4294967295,Et=Et<<15|Et>>>17,Et=(Et&65535)*gt+(((Et>>>16)*gt&65535)<<16)&4294967295,he^=Et,he=he<<13|he>>>19,Oe=(he&65535)*5+(((he>>>16)*5&65535)<<16)&4294967295,he=(Oe&65535)+27492+(((Oe>>>16)+58964&65535)<<16);switch(Et=0,$){case 3:Et^=(I.charCodeAt(or+2)&255)<<16;case 2:Et^=(I.charCodeAt(or+1)&255)<<8;case 1:Et^=I.charCodeAt(or)&255,Et=(Et&65535)*rt+(((Et>>>16)*rt&65535)<<16)&4294967295,Et=Et<<15|Et>>>17,Et=(Et&65535)*gt+(((Et>>>16)*gt&65535)<<16)&4294967295,he^=Et}return he^=I.length,he^=he>>>16,he=(he&65535)*2246822507+(((he>>>16)*2246822507&65535)<<16)&4294967295,he^=he>>>13,he=(he&65535)*3266489909+(((he>>>16)*3266489909&65535)<<16)&4294967295,he^=he>>>16,he>>>0}m.exports=y}),q=a(function(m){function y(I,U){for(var $=I.length,ae=U^$,he=0,Oe;$>=4;)Oe=I.charCodeAt(he)&255|(I.charCodeAt(++he)&255)<<8|(I.charCodeAt(++he)&255)<<16|(I.charCodeAt(++he)&255)<<24,Oe=(Oe&65535)*1540483477+(((Oe>>>16)*1540483477&65535)<<16),Oe^=Oe>>>24,Oe=(Oe&65535)*1540483477+(((Oe>>>16)*1540483477&65535)<<16),ae=(ae&65535)*1540483477+(((ae>>>16)*1540483477&65535)<<16)^Oe,$-=4,++he;switch($){case 3:ae^=(I.charCodeAt(he+2)&255)<<16;case 2:ae^=(I.charCodeAt(he+1)&255)<<8;case 1:ae^=I.charCodeAt(he)&255,ae=(ae&65535)*1540483477+(((ae>>>16)*1540483477&65535)<<16)}return ae^=ae>>>13,ae=(ae&65535)*1540483477+(((ae>>>16)*1540483477&65535)<<16),ae^=ae>>>15,ae>>>0}m.exports=y}),K=J,de=J,ne=q;K.murmur3=de,K.murmur2=ne;var we=function(){this.ids=[],this.positions=[],this.indexed=!1};we.prototype.add=function(y,I,U,$){this.ids.push(ft(y)),this.positions.push(I,U,$)},we.prototype.getPositions=function(y){for(var I=ft(y),U=0,$=this.ids.length-1;U<$;){var ae=U+$>>1;this.ids[ae]>=I?$=ae:U=ae+1}for(var he=[];this.ids[U]===I;){var Oe=this.positions[3*U],rt=this.positions[3*U+1],gt=this.positions[3*U+2];he.push({index:Oe,start:rt,end:gt}),U++}return he},we.serialize=function(y,I){var U=new Float64Array(y.ids),$=new Uint32Array(y.positions);return Xt(U,$,0,U.length-1),I&&I.push(U.buffer,$.buffer),{ids:U,positions:$}},we.deserialize=function(y){var I=new we;return I.ids=y.ids,I.positions=y.positions,I.indexed=!0,I};var Ue=Math.pow(2,53)-1;function ft(m){var y=+m;return!isNaN(y)&&y<=Ue?y:K(String(m))}function Xt(m,y,I,U){for(;I>1],ae=I-1,he=U+1;;){do ae++;while(m[ae]<$);do he--;while(m[he]>$);if(ae>=he)break;hr(m,ae,he),hr(y,3*ae,3*he),hr(y,3*ae+1,3*he+1),hr(y,3*ae+2,3*he+2)}he-Ihe.x+1||rthe.y+1)&&te("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return I}function Ja(m,y){return{type:m.type,id:m.id,properties:m.properties,geometry:y?zn(m):[]}}function co(m,y,I,U,$){m.emplaceBack(y*2+(U+1)/2,I*2+($+1)/2)}var ts=function(y){this.zoom=y.zoom,this.overscaling=y.overscaling,this.layers=y.layers,this.layerIds=this.layers.map(function(I){return I.id}),this.index=y.index,this.hasPattern=!1,this.layoutVertexArray=new Yr,this.indexArray=new pn,this.segments=new io,this.programConfigurations=new fi(y.layers,y.zoom),this.stateDependentLayerIds=this.layers.filter(function(I){return I.isStateDependent()}).map(function(I){return I.id})};ts.prototype.populate=function(y,I,U){var $=this.layers[0],ae=[],he=null;$.type==="circle"&&(he=$.layout.get("circle-sort-key"));for(var Oe=0,rt=y;Oe=Ci||_r<0||_r>=Ci)){var pr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,y.sortKey),Fr=pr.vertexLength;co(this.layoutVertexArray,or,_r,-1,-1),co(this.layoutVertexArray,or,_r,1,-1),co(this.layoutVertexArray,or,_r,1,1),co(this.layoutVertexArray,or,_r,-1,1),this.indexArray.emplaceBack(Fr,Fr+1,Fr+2),this.indexArray.emplaceBack(Fr,Fr+3,Fr+2),pr.vertexLength+=4,pr.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,y,U,{},$)},X("CircleBucket",ts,{omit:["layers"]});function so(m,y){for(var I=0;I=3){for(var ae=0;ae<$.length;ae++)if(Td(m,$[ae]))return!0}if(Cv(m,$,I))return!0}return!1}function Cv(m,y,I){if(m.length>1){if(Lv(m,y))return!0;for(var U=0;U1?m.distSqr(I):m.distSqr(I.sub(y)._mult($)._add(y))}function pp(m,y){for(var I=!1,U,$,ae,he=0;hey.y!=ae.y>y.y&&y.x<(ae.x-$.x)*(y.y-$.y)/(ae.y-$.y)+$.x&&(I=!I)}return I}function Td(m,y){for(var I=!1,U=0,$=m.length-1;Uy.y!=he.y>y.y&&y.x<(he.x-ae.x)*(y.y-ae.y)/(he.y-ae.y)+ae.x&&(I=!I)}return I}function gp(m,y,I,U,$){for(var ae=0,he=m;ae=Oe.x&&$>=Oe.y)return!0}var rt=[new u(y,I),new u(y,$),new u(U,$),new u(U,I)];if(m.length>2)for(var gt=0,Et=rt;gt$.x&&y.x>$.x||m.y$.y&&y.y>$.y)return!1;var ae=oe(m,y,I[0]);return ae!==oe(m,y,I[1])||ae!==oe(m,y,I[2])||ae!==oe(m,y,I[3])}function Ad(m,y,I){var U=y.paint.get(m).value;return U.kind==="constant"?U.value:I.programConfigurations.get(y.id).getMaxValue(m)}function Pv(m){return Math.sqrt(m[0]*m[0]+m[1]*m[1])}function Jv(m,y,I,U,$){if(!y[0]&&!y[1])return m;var ae=u.convert(y)._mult($);I==="viewport"&&ae._rotate(-U);for(var he=[],Oe=0;Oe0&&(ae=1/Math.sqrt(ae)),m[0]=y[0]*ae,m[1]=y[1]*ae,m[2]=y[2]*ae,m}function q9(m,y){return m[0]*y[0]+m[1]*y[1]+m[2]*y[2]}function B9(m,y,I){var U=y[0],$=y[1],ae=y[2],he=I[0],Oe=I[1],rt=I[2];return m[0]=$*rt-ae*Oe,m[1]=ae*he-U*rt,m[2]=U*Oe-$*he,m}function N9(m,y,I){var U=y[0],$=y[1],ae=y[2];return m[0]=U*I[0]+$*I[3]+ae*I[6],m[1]=U*I[1]+$*I[4]+ae*I[7],m[2]=U*I[2]+$*I[5]+ae*I[8],m}var U9=sm,LQ=function(){var m=om();return function(y,I,U,$,ae,he){var Oe,rt;for(I||(I=3),U||(U=0),$?rt=Math.min($*I+U,y.length):rt=y.length,Oe=U;Oem.width||$.height>m.height||I.x>m.width-$.width||I.y>m.height-$.height)throw new RangeError("out of range source coordinates for image copy");if($.width>y.width||$.height>y.height||U.x>y.width-$.width||U.y>y.height-$.height)throw new RangeError("out of range destination coordinates for image copy");for(var he=m.data,Oe=y.data,rt=0;rt<$.height;rt++)for(var gt=((I.y+rt)*m.width+I.x)*ae,Et=((U.y+rt)*y.width+U.x)*ae,or=0;or<$.width*ae;or++)Oe[Et+or]=he[gt+or];return y}var Dv=function(y,I){Md(this,y,1,I)};Dv.prototype.resize=function(y){Lw(this,y,1)},Dv.prototype.clone=function(){return new Dv({width:this.width,height:this.height},new Uint8Array(this.data))},Dv.copy=function(y,I,U,$,ae){Pw(y,I,U,$,ae,1)};var Sh=function(y,I){Md(this,y,4,I)};Sh.prototype.resize=function(y){Lw(this,y,4)},Sh.prototype.replace=function(y,I){I?this.data.set(y):y instanceof Uint8ClampedArray?this.data=new Uint8Array(y.buffer):this.data=y},Sh.prototype.clone=function(){return new Sh({width:this.width,height:this.height},new Uint8Array(this.data))},Sh.copy=function(y,I,U,$,ae){Pw(y,I,U,$,ae,4)},X("AlphaImage",Dv),X("RGBAImage",Sh);var Gx=new Nr({"heatmap-radius":new bt(Rn.paint_heatmap["heatmap-radius"]),"heatmap-weight":new bt(Rn.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Me(Rn.paint_heatmap["heatmap-intensity"]),"heatmap-color":new jr(Rn.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Me(Rn.paint_heatmap["heatmap-opacity"])}),A1={paint:Gx};function Hx(m){var y={},I=m.resolution||256,U=m.clips?m.clips.length:1,$=m.image||new Sh({width:I,height:U}),ae=function(bn,nn,xn){y[m.evaluationKey]=xn;var Pn=m.expression.evaluate(y);$.data[bn+nn+0]=Math.floor(Pn.r*255/Pn.a),$.data[bn+nn+1]=Math.floor(Pn.g*255/Pn.a),$.data[bn+nn+2]=Math.floor(Pn.b*255/Pn.a),$.data[bn+nn+3]=Math.floor(Pn.a*255)};if(m.clips)for(var gt=0,Et=0;gt80*I){Oe=gt=m[0],rt=Et=m[1];for(var Fr=I;Fr<$;Fr+=I)or=m[Fr],_r=m[Fr+1],orgt&&(gt=or),_r>Et&&(Et=_r);pr=Math.max(gt-Oe,Et-rt),pr=pr!==0?1/pr:0}return jx(ae,he,I,Oe,rt,pr),he}function Dw(m,y,I,U,$){var ae,he;if($===dS(m,y,I,U)>0)for(ae=y;ae=y;ae-=U)he=EC(ae,m[ae],m[ae+1],he);return he&&Xx(he,he.next)&&(Kx(he),he=he.next),he}function lm(m,y){if(!m)return m;y||(y=m);var I=m,U;do if(U=!1,!I.steiner&&(Xx(I,I.next)||Tf(I.prev,I,I.next)===0)){if(Kx(I),I=y=I.prev,I===I.next)break;U=!0}else I=I.next;while(U||I!==y);return y}function jx(m,y,I,U,$,ae,he){if(m){!he&&ae&&Fw(m,U,$,ae);for(var Oe=m,rt,gt;m.prev!==m.next;){if(rt=m.prev,gt=m.next,ae?AC(m,U,$,ae):TC(m)){y.push(rt.i/I),y.push(m.i/I),y.push(gt.i/I),Kx(m),m=gt.next,Oe=gt.next;continue}if(m=gt,m===Oe){he?he===1?(m=Wx(lm(m),y,I),jx(m,y,I,U,$,ae,2)):he===2&&d0(m,y,I,U,$,ae):jx(lm(m),y,I,U,$,ae,1);break}}}}function TC(m){var y=m.prev,I=m,U=m.next;if(Tf(y,I,U)>=0)return!1;for(var $=m.next.next;$!==m.prev;){if(cm(y.x,y.y,I.x,I.y,U.x,U.y,$.x,$.y)&&Tf($.prev,$,$.next)>=0)return!1;$=$.next}return!0}function AC(m,y,I,U){var $=m.prev,ae=m,he=m.next;if(Tf($,ae,he)>=0)return!1;for(var Oe=$.xae.x?$.x>he.x?$.x:he.x:ae.x>he.x?ae.x:he.x,Et=$.y>ae.y?$.y>he.y?$.y:he.y:ae.y>he.y?ae.y:he.y,or=uS(Oe,rt,y,I,U),_r=uS(gt,Et,y,I,U),pr=m.prevZ,Fr=m.nextZ;pr&&pr.z>=or&&Fr&&Fr.z<=_r;){if(pr!==m.prev&&pr!==m.next&&cm($.x,$.y,ae.x,ae.y,he.x,he.y,pr.x,pr.y)&&Tf(pr.prev,pr,pr.next)>=0||(pr=pr.prevZ,Fr!==m.prev&&Fr!==m.next&&cm($.x,$.y,ae.x,ae.y,he.x,he.y,Fr.x,Fr.y)&&Tf(Fr.prev,Fr,Fr.next)>=0))return!1;Fr=Fr.nextZ}for(;pr&&pr.z>=or;){if(pr!==m.prev&&pr!==m.next&&cm($.x,$.y,ae.x,ae.y,he.x,he.y,pr.x,pr.y)&&Tf(pr.prev,pr,pr.next)>=0)return!1;pr=pr.prevZ}for(;Fr&&Fr.z<=_r;){if(Fr!==m.prev&&Fr!==m.next&&cm($.x,$.y,ae.x,ae.y,he.x,he.y,Fr.x,Fr.y)&&Tf(Fr.prev,Fr,Fr.next)>=0)return!1;Fr=Fr.nextZ}return!0}function Wx(m,y,I){var U=m;do{var $=U.prev,ae=U.next.next;!Xx($,ae)&&zw($,U,U.next,ae)&&Yx($,ae)&&Yx(ae,$)&&(y.push($.i/I),y.push(U.i/I),y.push(ae.i/I),Kx(U),Kx(U.next),U=m=ae),U=U.next}while(U!==m);return lm(U)}function d0(m,y,I,U,$,ae){var he=m;do{for(var Oe=he.next.next;Oe!==he.prev;){if(he.i!==Oe.i&&M1(he,Oe)){var rt=fS(he,Oe);he=lm(he,he.next),rt=lm(rt,rt.next),jx(he,y,I,U,$,ae),jx(rt,y,I,U,$,ae);return}Oe=Oe.next}he=he.next}while(he!==m)}function um(m,y,I,U){var $=[],ae,he,Oe,rt,gt;for(ae=0,he=y.length;ae=I.next.y&&I.next.y!==I.y){var Oe=I.x+($-I.y)*(I.next.x-I.x)/(I.next.y-I.y);if(Oe<=U&&Oe>ae){if(ae=Oe,Oe===U){if($===I.y)return I;if($===I.next.y)return I.next}he=I.x=I.x&&I.x>=gt&&U!==I.x&&cm($he.x||I.x===he.x&&K9(he,I)))&&(he=I,or=_r)),I=I.next;while(I!==rt);return he}function K9(m,y){return Tf(m.prev,m,y.prev)<0&&Tf(y.next,m,m.next)<0}function Fw(m,y,I,U){var $=m;do $.z===null&&($.z=uS($.x,$.y,y,I,U)),$.prevZ=$.prev,$.nextZ=$.next,$=$.next;while($!==m);$.prevZ.nextZ=null,$.prevZ=null,lS($)}function lS(m){var y,I,U,$,ae,he,Oe,rt,gt=1;do{for(I=m,m=null,ae=null,he=0;I;){for(he++,U=I,Oe=0,y=0;y0||rt>0&&U;)Oe!==0&&(rt===0||!U||I.z<=U.z)?($=I,I=I.nextZ,Oe--):($=U,U=U.nextZ,rt--),ae?ae.nextZ=$:m=$,$.prevZ=ae,ae=$;I=U}ae.nextZ=null,gt*=2}while(he>1);return m}function uS(m,y,I,U,$){return m=32767*(m-I)*$,y=32767*(y-U)*$,m=(m|m<<8)&16711935,m=(m|m<<4)&252645135,m=(m|m<<2)&858993459,m=(m|m<<1)&1431655765,y=(y|y<<8)&16711935,y=(y|y<<4)&252645135,y=(y|y<<2)&858993459,y=(y|y<<1)&1431655765,m|y<<1}function cS(m){var y=m,I=m;do(y.x=0&&(m-he)*(U-Oe)-(I-he)*(y-Oe)>=0&&(I-he)*(ae-Oe)-($-he)*(U-Oe)>=0}function M1(m,y){return m.next.i!==y.i&&m.prev.i!==y.i&&!MC(m,y)&&(Yx(m,y)&&Yx(y,m)&&J9(m,y)&&(Tf(m.prev,m,y.prev)||Tf(m,y.prev,y))||Xx(m,y)&&Tf(m.prev,m,m.next)>0&&Tf(y.prev,y,y.next)>0)}function Tf(m,y,I){return(y.y-m.y)*(I.x-y.x)-(y.x-m.x)*(I.y-y.y)}function Xx(m,y){return m.x===y.x&&m.y===y.y}function zw(m,y,I,U){var $=cy(Tf(m,y,I)),ae=cy(Tf(m,y,U)),he=cy(Tf(I,U,m)),Oe=cy(Tf(I,U,y));return!!($!==ae&&he!==Oe||$===0&&Zx(m,I,y)||ae===0&&Zx(m,U,y)||he===0&&Zx(I,m,U)||Oe===0&&Zx(I,y,U))}function Zx(m,y,I){return y.x<=Math.max(m.x,I.x)&&y.x>=Math.min(m.x,I.x)&&y.y<=Math.max(m.y,I.y)&&y.y>=Math.min(m.y,I.y)}function cy(m){return m>0?1:m<0?-1:0}function MC(m,y){var I=m;do{if(I.i!==m.i&&I.next.i!==m.i&&I.i!==y.i&&I.next.i!==y.i&&zw(I,I.next,m,y))return!0;I=I.next}while(I!==m);return!1}function Yx(m,y){return Tf(m.prev,m,m.next)<0?Tf(m,y,m.next)>=0&&Tf(m,m.prev,y)>=0:Tf(m,y,m.prev)<0||Tf(m,m.next,y)<0}function J9(m,y){var I=m,U=!1,$=(m.x+y.x)/2,ae=(m.y+y.y)/2;do I.y>ae!=I.next.y>ae&&I.next.y!==I.y&&$<(I.next.x-I.x)*(ae-I.y)/(I.next.y-I.y)+I.x&&(U=!U),I=I.next;while(I!==m);return U}function fS(m,y){var I=new hS(m.i,m.x,m.y),U=new hS(y.i,y.x,y.y),$=m.next,ae=y.prev;return m.next=y,y.prev=m,I.next=$,$.prev=I,U.next=I,I.prev=U,ae.next=U,U.prev=ae,U}function EC(m,y,I,U){var $=new hS(m,y,I);return U?($.next=U.next,$.prev=U,U.next.prev=$,U.next=$):($.prev=$,$.next=$),$}function Kx(m){m.next.prev=m.prev,m.prev.next=m.next,m.prevZ&&(m.prevZ.nextZ=m.nextZ),m.nextZ&&(m.nextZ.prevZ=m.prevZ)}function hS(m,y,I){this.i=m,this.x=y,this.y=I,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}S1.deviation=function(m,y,I,U){var $=y&&y.length,ae=$?y[0]*I:m.length,he=Math.abs(dS(m,0,ae,I));if($)for(var Oe=0,rt=y.length;Oe0&&(U+=m[$-1].length,I.holes.push(U))}return I},Rw.default=wC;function vS(m,y,I,U,$){dg(m,y,I||0,U||m.length-1,$||kC)}function dg(m,y,I,U,$){for(;U>I;){if(U-I>600){var ae=U-I+1,he=y-I+1,Oe=Math.log(ae),rt=.5*Math.exp(2*Oe/3),gt=.5*Math.sqrt(Oe*rt*(ae-rt)/ae)*(he-ae/2<0?-1:1),Et=Math.max(I,Math.floor(y-he*rt/ae+gt)),or=Math.min(U,Math.floor(y+(ae-he)*rt/ae+gt));dg(m,y,Et,or,$)}var _r=m[y],pr=I,Fr=U;for(E1(m,I,y),$(m[U],_r)>0&&E1(m,I,U);pr0;)Fr--}$(m[I],_r)===0?E1(m,I,Fr):(Fr++,E1(m,Fr,U)),Fr<=y&&(I=Fr+1),y<=Fr&&(U=Fr-1)}}function E1(m,y,I){var U=m[y];m[y]=m[I],m[I]=U}function kC(m,y){return my?1:0}function Ow(m,y){var I=m.length;if(I<=1)return[m];for(var U=[],$,ae,he=0;he1)for(var rt=0;rt>3}if(U--,I===1||I===2)$+=m.readSVarint(),ae+=m.readSVarint(),I===1&&(Oe&&he.push(Oe),Oe=[]),Oe.push(new u($,ae));else if(I===7)Oe&&Oe.push(Oe[0].clone());else throw new Error("unknown command "+I)}return Oe&&he.push(Oe),he},fy.prototype.bbox=function(){var m=this._pbf;m.pos=this._geometry;for(var y=m.readVarint()+m.pos,I=1,U=0,$=0,ae=0,he=1/0,Oe=-1/0,rt=1/0,gt=-1/0;m.pos>3}if(U--,I===1||I===2)$+=m.readSVarint(),ae+=m.readSVarint(),$Oe&&(Oe=$),aegt&&(gt=ae);else if(I!==7)throw new Error("unknown command "+I)}return[he,rt,Oe,gt]},fy.prototype.toGeoJSON=function(m,y,I){var U=this.extent*Math.pow(2,I),$=this.extent*m,ae=this.extent*y,he=this.loadGeometry(),Oe=fy.types[this.type],rt,gt;function Et(pr){for(var Fr=0;Fr>3;y=U===1?m.readString():U===2?m.readFloat():U===3?m.readDouble():U===4?m.readVarint64():U===5?m.readVarint():U===6?m.readSVarint():U===7?m.readBoolean():null}return y}mS.prototype.feature=function(m){if(m<0||m>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[m];var y=this._pbf.readVarint()+this._pbf.pos;return new gS(this._pbf,y,this.extent,this._keys,this._values)};var qC=Q9;function Q9(m,y){this.layers=m.readFields(eO,{},y)}function eO(m,y,I){if(m===3){var U=new vg(I,I.readVarint()+I.pos);U.length&&(y[U.name]=U)}}var BC=qC,k1=gS,NC=vg,pg={VectorTile:BC,VectorTileFeature:k1,VectorTileLayer:NC},UC=pg.VectorTileFeature.types,Bw=500,C1=Math.pow(2,13);function fm(m,y,I,U,$,ae,he,Oe){m.emplaceBack(y,I,Math.floor(U*C1)*2+he,$*C1*2,ae*C1*2,Math.round(Oe))}var Vp=function(y){this.zoom=y.zoom,this.overscaling=y.overscaling,this.layers=y.layers,this.layerIds=this.layers.map(function(I){return I.id}),this.index=y.index,this.hasPattern=!1,this.layoutVertexArray=new Ri,this.indexArray=new pn,this.programConfigurations=new fi(y.layers,y.zoom),this.segments=new io,this.stateDependentLayerIds=this.layers.filter(function(I){return I.isStateDependent()}).map(function(I){return I.id})};Vp.prototype.populate=function(y,I,U){this.features=[],this.hasPattern=qw("fill-extrusion",this.layers,I);for(var $=0,ae=y;$=1){var xn=Hi[bn-1];if(!tO(nn,xn)){pr.vertexLength+4>io.MAX_VERTEX_ARRAY_LENGTH&&(pr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var Pn=nn.sub(xn)._perp()._unit(),Zn=xn.dist(nn);Ai+Zn>32768&&(Ai=0),fm(this.layoutVertexArray,nn.x,nn.y,Pn.x,Pn.y,0,0,Ai),fm(this.layoutVertexArray,nn.x,nn.y,Pn.x,Pn.y,0,1,Ai),Ai+=Zn,fm(this.layoutVertexArray,xn.x,xn.y,Pn.x,Pn.y,0,0,Ai),fm(this.layoutVertexArray,xn.x,xn.y,Pn.x,Pn.y,0,1,Ai);var ga=pr.vertexLength;this.indexArray.emplaceBack(ga,ga+2,ga+1),this.indexArray.emplaceBack(ga+1,ga+2,ga+3),pr.vertexLength+=4,pr.primitiveLength+=2}}}}if(pr.vertexLength+gt>io.MAX_VERTEX_ARRAY_LENGTH&&(pr=this.segments.prepareSegment(gt,this.layoutVertexArray,this.indexArray)),UC[y.type]==="Polygon"){for(var ha=[],eo=[],za=pr.vertexLength,Za=0,Ko=rt;ZaCi)||m.y===y.y&&(m.y<0||m.y>Ci)}function rO(m){return m.every(function(y){return y.x<0})||m.every(function(y){return y.x>Ci})||m.every(function(y){return y.y<0})||m.every(function(y){return y.y>Ci})}var L1=new Nr({"fill-extrusion-opacity":new Me(Rn["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new bt(Rn["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Me(Rn["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Me(Rn["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new zt(Rn["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new bt(Rn["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new bt(Rn["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Me(Rn["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])}),sd={paint:L1},hm=function(m){function y(I){m.call(this,I,sd)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.createBucket=function(U){return new Vp(U)},y.prototype.queryRadius=function(){return Pv(this.paint.get("fill-extrusion-translate"))},y.prototype.is3D=function(){return!0},y.prototype.queryIntersectsFeature=function(U,$,ae,he,Oe,rt,gt,Et){var or=Jv(U,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),rt.angle,gt),_r=this.paint.get("fill-extrusion-height").evaluate($,ae),pr=this.paint.get("fill-extrusion-base").evaluate($,ae),Fr=iO(or,Et,rt,0),oi=_S(he,pr,_r,Et),Hi=oi[0],Ai=oi[1];return VC(Hi,Ai,Fr)},y}(mi);function hy(m,y){return m.x*y.x+m.y*y.y}function yS(m,y){if(m.length===1){for(var I=0,U=y[I++],$;!$||U.equals($);)if($=y[I++],!$)return 1/0;for(;I=2&&y[gt-1].equals(y[gt-2]);)gt--;for(var Et=0;Et0;if(ha&&bn>Et){var za=pr.dist(Fr);if(za>2*or){var Za=pr.sub(pr.sub(Fr)._mult(or/za)._round());this.updateDistance(Fr,Za),this.addCurrentVertex(Za,Hi,0,0,_r),Fr=Za}}var Ko=Fr&&oi,to=Ko?U:rt?"butt":$;if(Ko&&to==="round"&&(Znae&&(to="bevel"),to==="bevel"&&(Zn>2&&(to="flipbevel"),Zn100)nn=Ai.mult(-1);else{var ao=Zn*Hi.add(Ai).mag()/Hi.sub(Ai).mag();nn._perp()._mult(ao*(eo?-1:1))}this.addCurrentVertex(pr,nn,0,0,_r),this.addCurrentVertex(pr,nn.mult(-1),0,0,_r)}else if(to==="bevel"||to==="fakeround"){var _s=-Math.sqrt(Zn*Zn-1),jo=eo?_s:0,El=eo?0:_s;if(Fr&&this.addCurrentVertex(pr,Hi,jo,El,_r),to==="fakeround")for(var Iu=Math.round(ga*180/Math.PI/bS),kl=1;kl2*or){var ch=pr.add(oi.sub(pr)._mult(or/Yh)._round());this.updateDistance(pr,ch),this.addCurrentVertex(ch,Ai,0,0,_r),pr=ch}}}}},sh.prototype.addCurrentVertex=function(y,I,U,$,ae,he){he===void 0&&(he=!1);var Oe=I.x+I.y*U,rt=I.y-I.x*U,gt=-I.x+I.y*$,Et=-I.y-I.x*$;this.addHalfVertex(y,Oe,rt,he,!1,U,ae),this.addHalfVertex(y,gt,Et,he,!0,-$,ae),this.distance>tb/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(y,I,U,$,ae,he))},sh.prototype.addHalfVertex=function(y,I,U,$,ae,he,Oe){var rt=y.x,gt=y.y,Et=this.lineClips?this.scaledDistance*(tb-1):this.scaledDistance,or=Et*Uw;if(this.layoutVertexArray.emplaceBack((rt<<1)+($?1:0),(gt<<1)+(ae?1:0),Math.round(Nw*I)+128,Math.round(Nw*U)+128,(he===0?0:he<0?-1:1)+1|(or&63)<<2,or>>6),this.lineClips){var _r=this.scaledDistance-this.lineClips.start,pr=this.lineClips.end-this.lineClips.start,Fr=_r/pr;this.layoutVertexArray2.emplaceBack(Fr,this.lineClipsArray.length)}var oi=Oe.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,oi),Oe.primitiveLength++),ae?this.e2=oi:this.e1=oi},sh.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},sh.prototype.updateDistance=function(y,I){this.distance+=y.dist(I),this.updateScaledDistance()},X("LineBucket",sh,{omit:["layers","patternFeatures"]});var wS=new Nr({"line-cap":new Me(Rn.layout_line["line-cap"]),"line-join":new bt(Rn.layout_line["line-join"]),"line-miter-limit":new Me(Rn.layout_line["line-miter-limit"]),"line-round-limit":new Me(Rn.layout_line["line-round-limit"]),"line-sort-key":new bt(Rn.layout_line["line-sort-key"])}),TS=new Nr({"line-opacity":new bt(Rn.paint_line["line-opacity"]),"line-color":new bt(Rn.paint_line["line-color"]),"line-translate":new Me(Rn.paint_line["line-translate"]),"line-translate-anchor":new Me(Rn.paint_line["line-translate-anchor"]),"line-width":new bt(Rn.paint_line["line-width"]),"line-gap-width":new bt(Rn.paint_line["line-gap-width"]),"line-offset":new bt(Rn.paint_line["line-offset"]),"line-blur":new bt(Rn.paint_line["line-blur"]),"line-dasharray":new Rr(Rn.paint_line["line-dasharray"]),"line-pattern":new zt(Rn.paint_line["line-pattern"]),"line-gradient":new jr(Rn.paint_line["line-gradient"])}),Vw={paint:TS,layout:wS},aO=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.possiblyEvaluate=function(U,$){return $=new Gn(Math.floor($.zoom),{now:$.now,fadeDuration:$.fadeDuration,zoomHistory:$.zoomHistory,transition:$.transition}),m.prototype.possiblyEvaluate.call(this,U,$)},y.prototype.evaluate=function(U,$,ae,he){return $=x({},$,{zoom:Math.floor($.zoom)}),m.prototype.evaluate.call(this,U,$,ae,he)},y}(bt),R=new aO(Vw.paint.properties["line-width"].specification);R.useIntegerZoom=!0;var A=function(m){function y(I){m.call(this,I,Vw),this.gradientVersion=0}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._handleSpecialPaintPropertyUpdate=function(U){if(U==="line-gradient"){var $=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=$._styleExpression.expression instanceof _u,this.gradientVersion=(this.gradientVersion+1)%d}},y.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},y.prototype.recalculate=function(U,$){m.prototype.recalculate.call(this,U,$),this.paint._values["line-floorwidth"]=R.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,U)},y.prototype.createBucket=function(U){return new sh(U)},y.prototype.queryRadius=function(U){var $=U,ae=F(Ad("line-width",this,$),Ad("line-gap-width",this,$)),he=Ad("line-offset",this,$);return ae/2+Math.abs(he)+Pv(this.paint.get("line-translate"))},y.prototype.queryIntersectsFeature=function(U,$,ae,he,Oe,rt,gt){var Et=Jv(U,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),rt.angle,gt),or=gt/2*F(this.paint.get("line-width").evaluate($,ae),this.paint.get("line-gap-width").evaluate($,ae)),_r=this.paint.get("line-offset").evaluate($,ae);return _r&&(he=W(he,_r*gt)),ou(Et,he,or)},y.prototype.isTileClipped=function(){return!0},y}(mi);function F(m,y){return y>0?y+2*m:m}function W(m,y){for(var I=[],U=new u(0,0),$=0;$":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};function un(m){for(var y="",I=0;I>1,Et=-7,or=I?$-1:0,_r=I?-1:1,pr=m[y+or];for(or+=_r,ae=pr&(1<<-Et)-1,pr>>=-Et,Et+=Oe;Et>0;ae=ae*256+m[y+or],or+=_r,Et-=8);for(he=ae&(1<<-Et)-1,ae>>=-Et,Et+=U;Et>0;he=he*256+m[y+or],or+=_r,Et-=8);if(ae===0)ae=1-gt;else{if(ae===rt)return he?NaN:(pr?-1:1)*(1/0);he=he+Math.pow(2,U),ae=ae-gt}return(pr?-1:1)*he*Math.pow(2,ae-U)},ro=function(m,y,I,U,$,ae){var he,Oe,rt,gt=ae*8-$-1,Et=(1<>1,_r=$===23?Math.pow(2,-24)-Math.pow(2,-77):0,pr=U?0:ae-1,Fr=U?1:-1,oi=y<0||y===0&&1/y<0?1:0;for(y=Math.abs(y),isNaN(y)||y===1/0?(Oe=isNaN(y)?1:0,he=Et):(he=Math.floor(Math.log(y)/Math.LN2),y*(rt=Math.pow(2,-he))<1&&(he--,rt*=2),he+or>=1?y+=_r/rt:y+=_r*Math.pow(2,1-or),y*rt>=2&&(he++,rt/=2),he+or>=Et?(Oe=0,he=Et):he+or>=1?(Oe=(y*rt-1)*Math.pow(2,$),he=he+or):(Oe=y*Math.pow(2,or-1)*Math.pow(2,$),he=0));$>=8;m[I+pr]=Oe&255,pr+=Fr,Oe/=256,$-=8);for(he=he<<$|Oe,gt+=$;gt>0;m[I+pr]=he&255,pr+=Fr,he/=256,gt-=8);m[I+pr-Fr]|=oi*128},Vo={read:pa,write:ro},Xa=sa;function sa(m){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(m)?m:new Uint8Array(m||0),this.pos=0,this.type=0,this.length=this.buf.length}sa.Varint=0,sa.Fixed64=1,sa.Bytes=2,sa.Fixed32=5;var Mo=65536*65536,fo=1/Mo,lo=12,Xn=typeof TextDecoder=="undefined"?null:new TextDecoder("utf8");sa.prototype={destroy:function(){this.buf=null},readFields:function(m,y,I){for(I=I||this.length;this.pos>3,ae=this.pos;this.type=U&7,m($,y,this),this.pos===ae&&this.skip(U)}return y},readMessage:function(m,y){return this.readFields(m,y,this.readVarint()+this.pos)},readFixed32:function(){var m=Wh(this.buf,this.pos);return this.pos+=4,m},readSFixed32:function(){var m=Fv(this.buf,this.pos);return this.pos+=4,m},readFixed64:function(){var m=Wh(this.buf,this.pos)+Wh(this.buf,this.pos+4)*Mo;return this.pos+=8,m},readSFixed64:function(){var m=Wh(this.buf,this.pos)+Fv(this.buf,this.pos+4)*Mo;return this.pos+=8,m},readFloat:function(){var m=Vo.read(this.buf,this.pos,!0,23,4);return this.pos+=4,m},readDouble:function(){var m=Vo.read(this.buf,this.pos,!0,52,8);return this.pos+=8,m},readVarint:function(m){var y=this.buf,I,U;return U=y[this.pos++],I=U&127,U<128||(U=y[this.pos++],I|=(U&127)<<7,U<128)||(U=y[this.pos++],I|=(U&127)<<14,U<128)||(U=y[this.pos++],I|=(U&127)<<21,U<128)?I:(U=y[this.pos],I|=(U&15)<<28,Ro(I,m,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var m=this.readVarint();return m%2===1?(m+1)/-2:m/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var m=this.readVarint()+this.pos,y=this.pos;return this.pos=m,m-y>=lo&&Xn?tu(this.buf,y,m):lv(this.buf,y,m)},readBytes:function(){var m=this.readVarint()+this.pos,y=this.buf.subarray(this.pos,m);return this.pos=m,y},readPackedVarint:function(m,y){if(this.type!==sa.Bytes)return m.push(this.readVarint(y));var I=uo(this);for(m=m||[];this.pos127;);else if(y===sa.Bytes)this.pos=this.readVarint()+this.pos;else if(y===sa.Fixed32)this.pos+=4;else if(y===sa.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+y)},writeTag:function(m,y){this.writeVarint(m<<3|y)},realloc:function(m){for(var y=this.length||16;y268435455||m<0){Ju(m,this);return}this.realloc(4),this.buf[this.pos++]=m&127|(m>127?128:0),!(m<=127)&&(this.buf[this.pos++]=(m>>>=7)&127|(m>127?128:0),!(m<=127)&&(this.buf[this.pos++]=(m>>>=7)&127|(m>127?128:0),!(m<=127)&&(this.buf[this.pos++]=m>>>7&127)))},writeSVarint:function(m){this.writeVarint(m<0?-m*2-1:m*2)},writeBoolean:function(m){this.writeVarint(!!m)},writeString:function(m){m=String(m),this.realloc(m.length*4),this.pos++;var y=this.pos;this.pos=pc(this.buf,m,this.pos);var I=this.pos-y;I>=128&&Qv(y,I,this),this.pos=y-1,this.writeVarint(I),this.pos+=I},writeFloat:function(m){this.realloc(4),Vo.write(this.buf,m,this.pos,!0,23,4),this.pos+=4},writeDouble:function(m){this.realloc(8),Vo.write(this.buf,m,this.pos,!0,52,8),this.pos+=8},writeBytes:function(m){var y=m.length;this.writeVarint(y),this.realloc(y);for(var I=0;I=128&&Qv(I,U,this),this.pos=I-1,this.writeVarint(U),this.pos+=U},writeMessage:function(m,y,I){this.writeTag(m,sa.Bytes),this.writeRawMessage(y,I)},writePackedVarint:function(m,y){y.length&&this.writeMessage(m,ld,y)},writePackedSVarint:function(m,y){y.length&&this.writeMessage(m,Eh,y)},writePackedBoolean:function(m,y){y.length&&this.writeMessage(m,jd,y)},writePackedFloat:function(m,y){y.length&&this.writeMessage(m,Gd,y)},writePackedDouble:function(m,y){y.length&&this.writeMessage(m,Hd,y)},writePackedFixed32:function(m,y){y.length&&this.writeMessage(m,Af,y)},writePackedSFixed32:function(m,y){y.length&&this.writeMessage(m,kh,y)},writePackedFixed64:function(m,y){y.length&&this.writeMessage(m,Ed,y)},writePackedSFixed64:function(m,y){y.length&&this.writeMessage(m,ud,y)},writeBytesField:function(m,y){this.writeTag(m,sa.Bytes),this.writeBytes(y)},writeFixed32Field:function(m,y){this.writeTag(m,sa.Fixed32),this.writeFixed32(y)},writeSFixed32Field:function(m,y){this.writeTag(m,sa.Fixed32),this.writeSFixed32(y)},writeFixed64Field:function(m,y){this.writeTag(m,sa.Fixed64),this.writeFixed64(y)},writeSFixed64Field:function(m,y){this.writeTag(m,sa.Fixed64),this.writeSFixed64(y)},writeVarintField:function(m,y){this.writeTag(m,sa.Varint),this.writeVarint(y)},writeSVarintField:function(m,y){this.writeTag(m,sa.Varint),this.writeSVarint(y)},writeStringField:function(m,y){this.writeTag(m,sa.Bytes),this.writeString(y)},writeFloatField:function(m,y){this.writeTag(m,sa.Fixed32),this.writeFloat(y)},writeDoubleField:function(m,y){this.writeTag(m,sa.Fixed64),this.writeDouble(y)},writeBooleanField:function(m,y){this.writeVarintField(m,!!y)}};function Ro(m,y,I){var U=I.buf,$,ae;if(ae=U[I.pos++],$=(ae&112)>>4,ae<128||(ae=U[I.pos++],$|=(ae&127)<<3,ae<128)||(ae=U[I.pos++],$|=(ae&127)<<10,ae<128)||(ae=U[I.pos++],$|=(ae&127)<<17,ae<128)||(ae=U[I.pos++],$|=(ae&127)<<24,ae<128)||(ae=U[I.pos++],$|=(ae&1)<<31,ae<128))return $o(m,$,y);throw new Error("Expected varint not more than 10 bytes")}function uo(m){return m.type===sa.Bytes?m.readVarint()+m.pos:m.pos+1}function $o(m,y,I){return I?y*4294967296+(m>>>0):(y>>>0)*4294967296+(m>>>0)}function Ju(m,y){var I,U;if(m>=0?(I=m%4294967296|0,U=m/4294967296|0):(I=~(-m%4294967296),U=~(-m/4294967296),I^4294967295?I=I+1|0:(I=0,U=U+1|0)),m>=18446744073709552e3||m<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");y.realloc(10),qu(I,U,y),Mh(U,y)}function qu(m,y,I){I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos]=m&127}function Mh(m,y){var I=(m&7)<<4;y.buf[y.pos++]|=I|((m>>>=3)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127)))))}function Qv(m,y,I){var U=y<=16383?1:y<=2097151?2:y<=268435455?3:Math.floor(Math.log(y)/(Math.LN2*7));I.realloc(U);for(var $=I.pos-1;$>=m;$--)I.buf[$+U]=I.buf[$]}function ld(m,y){for(var I=0;I>>8,m[I+2]=y>>>16,m[I+3]=y>>>24}function Fv(m,y){return(m[y]|m[y+1]<<8|m[y+2]<<16)+(m[y+3]<<24)}function lv(m,y,I){for(var U="",$=y;$239?4:ae>223?3:ae>191?2:1;if($+Oe>I)break;var rt,gt,Et;Oe===1?ae<128&&(he=ae):Oe===2?(rt=m[$+1],(rt&192)===128&&(he=(ae&31)<<6|rt&63,he<=127&&(he=null))):Oe===3?(rt=m[$+1],gt=m[$+2],(rt&192)===128&&(gt&192)===128&&(he=(ae&15)<<12|(rt&63)<<6|gt&63,(he<=2047||he>=55296&&he<=57343)&&(he=null))):Oe===4&&(rt=m[$+1],gt=m[$+2],Et=m[$+3],(rt&192)===128&&(gt&192)===128&&(Et&192)===128&&(he=(ae&15)<<18|(rt&63)<<12|(gt&63)<<6|Et&63,(he<=65535||he>=1114112)&&(he=null))),he===null?(he=65533,Oe=1):he>65535&&(he-=65536,U+=String.fromCharCode(he>>>10&1023|55296),he=56320|he&1023),U+=String.fromCharCode(he),$+=Oe}return U}function tu(m,y,I){return Xn.decode(m.subarray(y,I))}function pc(m,y,I){for(var U=0,$,ae;U55295&&$<57344)if(ae)if($<56320){m[I++]=239,m[I++]=191,m[I++]=189,ae=$;continue}else $=ae-55296<<10|$-56320|65536,ae=null;else{$>56319||U+1===y.length?(m[I++]=239,m[I++]=191,m[I++]=189):ae=$;continue}else ae&&(m[I++]=239,m[I++]=191,m[I++]=189,ae=null);$<128?m[I++]=$:($<2048?m[I++]=$>>6|192:($<65536?m[I++]=$>>12|224:(m[I++]=$>>18|240,m[I++]=$>>12&63|128),m[I++]=$>>6&63|128),m[I++]=$&63|128)}return I}var $u=3;function zv(m,y,I){m===1&&I.readMessage(ff,y)}function ff(m,y,I){if(m===3){var U=I.readMessage(P1,{}),$=U.id,ae=U.bitmap,he=U.width,Oe=U.height,rt=U.left,gt=U.top,Et=U.advance;y.push({id:$,bitmap:new Dv({width:he+2*$u,height:Oe+2*$u},ae),metrics:{width:he,height:Oe,left:rt,top:gt,advance:Et}})}}function P1(m,y,I){m===1?y.id=I.readVarint():m===2?y.bitmap=I.readBytes():m===3?y.width=I.readVarint():m===4?y.height=I.readVarint():m===5?y.left=I.readSVarint():m===6?y.top=I.readSVarint():m===7&&(y.advance=I.readVarint())}function v0(m){return new Xa(m).readFields(zv,[])}var Gp=$u;function ep(m){for(var y=0,I=0,U=0,$=m;U<$.length;U+=1){var ae=$[U];y+=ae.w*ae.h,I=Math.max(I,ae.w)}m.sort(function(Hi,Ai){return Ai.h-Hi.h});for(var he=Math.max(Math.ceil(Math.sqrt(y/.95)),I),Oe=[{x:0,y:0,w:he,h:1/0}],rt=0,gt=0,Et=0,or=m;Et=0;pr--){var Fr=Oe[pr];if(!(_r.w>Fr.w||_r.h>Fr.h)){if(_r.x=Fr.x,_r.y=Fr.y,gt=Math.max(gt,_r.y+_r.h),rt=Math.max(rt,_r.x+_r.w),_r.w===Fr.w&&_r.h===Fr.h){var oi=Oe.pop();pr=0&&$>=y&&g0[this.text.charCodeAt($)];$--)U--;this.text=this.text.substring(y,U),this.sectionIndex=this.sectionIndex.slice(y,U)},Xh.prototype.substring=function(y,I){var U=new Xh;return U.text=this.text.substring(y,I),U.sectionIndex=this.sectionIndex.slice(y,I),U.sections=this.sections,U},Xh.prototype.toString=function(){return this.text},Xh.prototype.getMaxScale=function(){var y=this;return this.sectionIndex.reduce(function(I,U){return Math.max(I,y.sections[U].scale)},0)},Xh.prototype.addTextSection=function(y,I){this.text+=y.text,this.sections.push(dy.forText(y.scale,y.fontStack||I));for(var U=this.sections.length-1,$=0;$=p0?null:++this.imageSectionID:(this.imageSectionID=Gw,this.imageSectionID)};function oO(m,y){for(var I=[],U=m.text,$=0,ae=0,he=y;ae=0,Et=0,or=0;or0&&ch>eo&&(eo=ch)}else{var Cl=I[Za.fontStack],yl=Cl&&Cl[to];if(yl&&yl.rect)jo=yl.rect,_s=yl.metrics;else{var Qu=y[Za.fontStack],gc=Qu&&Qu[to];if(!gc)continue;_s=gc.metrics}ao=(Pn-Za.scale)*Tn}kl?(m.verticalizable=!0,ha.push({glyph:to,imageName:El,x:_r,y:pr+ao,vertical:kl,scale:Za.scale,fontStack:Za.fontStack,sectionIndex:Ko,metrics:_s,rect:jo}),_r+=Iu*Za.scale+gt):(ha.push({glyph:to,imageName:El,x:_r,y:pr+ao,vertical:kl,scale:Za.scale,fontStack:Za.fontStack,sectionIndex:Ko,metrics:_s,rect:jo}),_r+=_s.advance*Za.scale+gt)}if(ha.length!==0){var Xd=_r-gt;Fr=Math.max(Xd,Fr),cO(ha,0,ha.length-1,Hi,eo)}_r=0;var Zd=ae*Pn+eo;ga.lineOffset=Math.max(eo,Zn),pr+=Zd,oi=Math.max(Zd,oi),++Ai}var Kh=pr-I1,fv=SS(he),hv=fv.horizontalAlign,Ch=fv.verticalAlign;kd(m.positionedLines,Hi,hv,Ch,Fr,oi,ae,Kh,$.length),m.top+=-Ch*Kh,m.bottom=m.top+Kh,m.left+=-hv*Fr,m.right=m.left+Fr}function cO(m,y,I,U,$){if(!(!U&&!$))for(var ae=m[I],he=ae.metrics.advance*ae.scale,Oe=(m[I].x+he)*U,rt=y;rt<=I;rt++)m[rt].x-=Oe,m[rt].y+=$}function kd(m,y,I,U,$,ae,he,Oe,rt){var gt=(y-I)*$,Et=0;ae!==he?Et=-Oe*U-I1:Et=(-U*rt+.5)*he;for(var or=0,_r=m;or<_r.length;or+=1)for(var pr=_r[or],Fr=0,oi=pr.positionedGlyphs;Fr-I/2;){if(he--,he<0)return!1;Oe-=m[he].dist(ae),ae=m[he]}Oe+=m[he].dist(m[he+1]),he++;for(var rt=[],gt=0;OeU;)gt-=rt.shift().angleDelta;if(gt>$)return!1;he++,Oe+=or.dist(_r)}return!0}function FQ(m){for(var y=0,I=0;Igt){var Fr=(gt-rt)/pr,oi=nl(or.x,_r.x,Fr),Hi=nl(or.y,_r.y,Fr),Ai=new Wd(oi,Hi,_r.angleTo(or),Et);return Ai._round(),!he||DQ(m,Ai,Oe,he,y)?Ai:void 0}rt+=pr}}function Eet(m,y,I,U,$,ae,he,Oe,rt){var gt=zQ(U,ae,he),Et=OQ(U,$),or=Et*he,_r=m[0].x===0||m[0].x===rt||m[0].y===0||m[0].y===rt;y-or=0&&xn=0&&Pn=0&&_r+gt<=Et){var Zn=new Wd(xn,Pn,bn,Fr);Zn._round(),(!U||DQ(m,Zn,ae,U,$))&&pr.push(Zn)}}or+=Ai}return!Oe&&!pr.length&&!he&&(pr=qQ(m,or/2,I,U,$,ae,he,!0,rt)),pr}function BQ(m,y,I,U,$){for(var ae=[],he=0;he=U&&or.x>=U)&&(Et.x>=U?Et=new u(U,Et.y+(or.y-Et.y)*((U-Et.x)/(or.x-Et.x)))._round():or.x>=U&&(or=new u(U,Et.y+(or.y-Et.y)*((U-Et.x)/(or.x-Et.x)))._round()),!(Et.y>=$&&or.y>=$)&&(Et.y>=$?Et=new u(Et.x+(or.x-Et.x)*(($-Et.y)/(or.y-Et.y)),$)._round():or.y>=$&&(or=new u(Et.x+(or.x-Et.x)*(($-Et.y)/(or.y-Et.y)),$)._round()),(!rt||!Et.equals(rt[rt.length-1]))&&(rt=[Et],ae.push(rt)),rt.push(or)))))}return ae}var Ww=Gc;function NQ(m,y,I,U){var $=[],ae=m.image,he=ae.pixelRatio,Oe=ae.paddedRect.w-2*Ww,rt=ae.paddedRect.h-2*Ww,gt=m.right-m.left,Et=m.bottom-m.top,or=ae.stretchX||[[0,Oe]],_r=ae.stretchY||[[0,rt]],pr=function(Cl,yl){return Cl+yl[1]-yl[0]},Fr=or.reduce(pr,0),oi=_r.reduce(pr,0),Hi=Oe-Fr,Ai=rt-oi,bn=0,nn=Fr,xn=0,Pn=oi,Zn=0,ga=Hi,ha=0,eo=Ai;if(ae.content&&U){var za=ae.content;bn=KC(or,0,za[0]),xn=KC(_r,0,za[1]),nn=KC(or,za[0],za[2]),Pn=KC(_r,za[1],za[3]),Zn=za[0]-bn,ha=za[1]-xn,ga=za[2]-za[0]-nn,eo=za[3]-za[1]-Pn}var Za=function(Cl,yl,Qu,gc){var Sf=JC(Cl.stretch-bn,nn,gt,m.left),Ff=$C(Cl.fixed-Zn,ga,Cl.stretch,Fr),Yh=JC(yl.stretch-xn,Pn,Et,m.top),ch=$C(yl.fixed-ha,eo,yl.stretch,oi),Xd=JC(Qu.stretch-bn,nn,gt,m.left),Zd=$C(Qu.fixed-Zn,ga,Qu.stretch,Fr),Kh=JC(gc.stretch-xn,Pn,Et,m.top),fv=$C(gc.fixed-ha,eo,gc.stretch,oi),hv=new u(Sf,Yh),Ch=new u(Xd,Yh),dv=new u(Xd,Kh),xp=new u(Sf,Kh),gy=new u(Ff/he,ch/he),F1=new u(Zd/he,fv/he),z1=y*Math.PI/180;if(z1){var O1=Math.sin(z1),e3=Math.cos(z1),m0=[e3,-O1,O1,e3];hv._matMult(m0),Ch._matMult(m0),xp._matMult(m0),dv._matMult(m0)}var n6=Cl.stretch+Cl.fixed,yO=Qu.stretch+Qu.fixed,a6=yl.stretch+yl.fixed,_O=gc.stretch+gc.fixed,Hp={x:ae.paddedRect.x+Ww+n6,y:ae.paddedRect.y+Ww+a6,w:yO-n6,h:_O-a6},t3=ga/he/gt,o6=eo/he/Et;return{tl:hv,tr:Ch,bl:xp,br:dv,tex:Hp,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:gy,pixelOffsetBR:F1,minFontScaleX:t3,minFontScaleY:o6,isSDF:I}};if(!U||!ae.stretchX&&!ae.stretchY)$.push(Za({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:Oe+1},{fixed:0,stretch:rt+1}));else for(var Ko=UQ(or,Hi,Fr),to=UQ(_r,Ai,oi),ao=0;ao0&&(Fr=Math.max(10,Fr),this.circleDiameter=Fr)}else{var oi=he.top*Oe-rt,Hi=he.bottom*Oe+rt,Ai=he.left*Oe-rt,bn=he.right*Oe+rt,nn=he.collisionPadding;if(nn&&(Ai-=nn[0]*Oe,oi-=nn[1]*Oe,bn+=nn[2]*Oe,Hi+=nn[3]*Oe),Et){var xn=new u(Ai,oi),Pn=new u(bn,oi),Zn=new u(Ai,Hi),ga=new u(bn,Hi),ha=Et*Math.PI/180;xn._rotate(ha),Pn._rotate(ha),Zn._rotate(ha),ga._rotate(ha),Ai=Math.min(xn.x,Pn.x,Zn.x,ga.x),bn=Math.max(xn.x,Pn.x,Zn.x,ga.x),oi=Math.min(xn.y,Pn.y,Zn.y,ga.y),Hi=Math.max(xn.y,Pn.y,Zn.y,ga.y)}y.emplaceBack(I.x,I.y,Ai,oi,bn,Hi,U,$,ae)}this.boxEndIndex=y.length},Xw=function(y,I){if(y===void 0&&(y=[]),I===void 0&&(I=Cet),this.data=y,this.length=this.data.length,this.compare=I,this.length>0)for(var U=(this.length>>1)-1;U>=0;U--)this._down(U)};Xw.prototype.push=function(y){this.data.push(y),this.length++,this._up(this.length-1)},Xw.prototype.pop=function(){if(this.length!==0){var y=this.data[0],I=this.data.pop();return this.length--,this.length>0&&(this.data[0]=I,this._down(0)),y}},Xw.prototype.peek=function(){return this.data[0]},Xw.prototype._up=function(y){for(var I=this,U=I.data,$=I.compare,ae=U[y];y>0;){var he=y-1>>1,Oe=U[he];if($(ae,Oe)>=0)break;U[y]=Oe,y=he}U[y]=ae},Xw.prototype._down=function(y){for(var I=this,U=I.data,$=I.compare,ae=this.length>>1,he=U[y];y=0)break;U[y]=rt,y=Oe}U[y]=he};function Cet(m,y){return my?1:0}function Let(m,y,I){y===void 0&&(y=1),I===void 0&&(I=!1);for(var U=1/0,$=1/0,ae=-1/0,he=-1/0,Oe=m[0],rt=0;rtae)&&(ae=gt.x),(!rt||gt.y>he)&&(he=gt.y)}var Et=ae-U,or=he-$,_r=Math.min(Et,or),pr=_r/2,Fr=new Xw([],Pet);if(_r===0)return new u(U,$);for(var oi=U;oiAi.d||!Ai.d)&&(Ai=nn,I&&console.log("found best %d after %d probes",Math.round(1e4*nn.d)/1e4,bn)),!(nn.max-Ai.d<=y)&&(pr=nn.h/2,Fr.push(new Zw(nn.p.x-pr,nn.p.y-pr,pr,m)),Fr.push(new Zw(nn.p.x+pr,nn.p.y-pr,pr,m)),Fr.push(new Zw(nn.p.x-pr,nn.p.y+pr,pr,m)),Fr.push(new Zw(nn.p.x+pr,nn.p.y+pr,pr,m)),bn+=4)}return I&&(console.log("num probes: "+bn),console.log("best distance: "+Ai.d)),Ai.p}function Pet(m,y){return y.max-m.max}function Zw(m,y,I,U){this.p=new u(m,y),this.h=I,this.d=Iet(this.p,U),this.max=this.d+this.h*Math.SQRT2}function Iet(m,y){for(var I=!1,U=1/0,$=0;$m.y!=Et.y>m.y&&m.x<(Et.x-gt.x)*(m.y-gt.y)/(Et.y-gt.y)+gt.x&&(I=!I),U=Math.min(U,cg(m,gt,Et))}return(I?1:-1)*Math.sqrt(U)}function Ret(m){for(var y=0,I=0,U=0,$=m[0],ae=0,he=$.length,Oe=he-1;ae=Ci||m0.y<0||m0.y>=Ci||zet(m,m0,e3,I,U,$,to,m.layers[0],m.collisionBoxArray,y.index,y.sourceLayerIndex,m.index,Ai,Pn,ha,rt,nn,Zn,eo,pr,y,ae,gt,Et,he)};if(za==="line")for(var _s=0,jo=BQ(y.geometry,0,0,Ci,Ci);_s1){var Yh=Met(Ff,ga,I.vertical||Fr,U,oi,bn);Yh&&ao(Ff,Yh)}}else if(y.type==="Polygon")for(var ch=0,Xd=Ow(y.geometry,0);chR1&&te(m.layerIds[0]+': Value for "text-size" is >= '+MS+'. Reduce your "text-size".')):Hi.kind==="composite"&&(Ai=[Cd*pr.compositeTextSizes[0].evaluate(he,{},Fr),Cd*pr.compositeTextSizes[1].evaluate(he,{},Fr)],(Ai[0]>R1||Ai[1]>R1)&&te(m.layerIds[0]+': Value for "text-size" is >= '+MS+'. Reduce your "text-size".')),m.addSymbols(m.text,oi,Ai,Oe,ae,he,gt,y,rt.lineStartIndex,rt.lineLength,_r,Fr);for(var bn=0,nn=Et;bnR1&&te(m.layerIds[0]+': Value for "icon-size" is >= '+MS+'. Reduce your "icon-size".')):hv.kind==="composite"&&(Ch=[Cd*Pn.compositeIconSizes[0].evaluate(xn,{},ga),Cd*Pn.compositeIconSizes[1].evaluate(xn,{},ga)],(Ch[0]>R1||Ch[1]>R1)&&te(m.layerIds[0]+': Value for "icon-size" is >= '+MS+'. Reduce your "icon-size".')),m.addSymbols(m.icon,Kh,Ch,nn,bn,xn,!1,y,za.lineStartIndex,za.lineLength,-1,ga),kl=m.icon.placedSymbolArray.length-1,fv&&(jo=fv.length*4,m.addSymbols(m.icon,fv,Ch,nn,bn,xn,uv.vertical,y,za.lineStartIndex,za.lineLength,-1,ga),Cl=m.icon.placedSymbolArray.length-1)}for(var dv in U.horizontal){var xp=U.horizontal[dv];if(!Za){Qu=K(xp.text);var gy=Oe.layout.get("text-rotate").evaluate(xn,{},ga);Za=new QC(rt,y,gt,Et,or,xp,_r,pr,Fr,gy)}var F1=xp.positionedLines.length===1;if(El+=GQ(m,y,xp,ae,Oe,Fr,xn,oi,za,U.vertical?uv.horizontal:uv.horizontalOnly,F1?Object.keys(U.horizontal):[dv],yl,kl,Pn,ga),F1)break}U.vertical&&(Iu+=GQ(m,y,U.vertical,ae,Oe,Fr,xn,oi,za,uv.vertical,["vertical"],yl,Cl,Pn,ga));var z1=Za?Za.boxStartIndex:m.collisionBoxArray.length,O1=Za?Za.boxEndIndex:m.collisionBoxArray.length,e3=to?to.boxStartIndex:m.collisionBoxArray.length,m0=to?to.boxEndIndex:m.collisionBoxArray.length,n6=Ko?Ko.boxStartIndex:m.collisionBoxArray.length,yO=Ko?Ko.boxEndIndex:m.collisionBoxArray.length,a6=ao?ao.boxStartIndex:m.collisionBoxArray.length,_O=ao?ao.boxEndIndex:m.collisionBoxArray.length,Hp=-1,t3=function(CS,oee){return CS&&CS.circleDiameter?Math.max(CS.circleDiameter,oee):oee};Hp=t3(Za,Hp),Hp=t3(to,Hp),Hp=t3(Ko,Hp),Hp=t3(ao,Hp);var o6=Hp>-1?1:0;o6&&(Hp*=ha/Tn),m.glyphOffsetArray.length>=Pu.MAX_GLYPHS&&te("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),xn.sortKey!==void 0&&m.addToSortKeyRanges(m.symbolInstances.length,xn.sortKey),m.symbolInstances.emplaceBack(y.x,y.y,yl.right>=0?yl.right:-1,yl.center>=0?yl.center:-1,yl.left>=0?yl.left:-1,yl.vertical||-1,kl,Cl,Qu,z1,O1,e3,m0,n6,yO,a6,_O,gt,El,Iu,_s,jo,o6,0,_r,gc,Sf,Hp)}function Oet(m,y,I,U){var $=m.compareText;if(!(y in $))$[y]=[];else for(var ae=$[y],he=ae.length-1;he>=0;he--)if(U.dist(ae[he])0)&&(he.value.kind!=="constant"||he.value.value.length>0),Et=rt.value.kind!=="constant"||!!rt.value.value||Object.keys(rt.parameters).length>0,or=ae.get("symbol-sort-key");if(this.features=[],!(!gt&&!Et)){for(var _r=I.iconDependencies,pr=I.glyphDependencies,Fr=I.availableImages,oi=new Gn(this.zoom),Hi=0,Ai=y;Hi=0;for(var Iu=0,kl=eo.sections;Iu=0;rt--)he[rt]={x:I[rt].x,y:I[rt].y,tileUnitDistanceFromAnchor:ae},rt>0&&(ae+=I[rt-1].dist(I[rt]));for(var gt=0;gt0},Pu.prototype.hasIconData=function(){return this.icon.segments.get().length>0},Pu.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},Pu.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},Pu.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},Pu.prototype.addIndicesForPlacedSymbol=function(y,I){for(var U=y.placedSymbolArray.get(I),$=U.vertexStartIndex+U.numGlyphs*4,ae=U.vertexStartIndex;ae<$;ae+=4)y.indexArray.emplaceBack(ae,ae+1,ae+2),y.indexArray.emplaceBack(ae+1,ae+2,ae+3)},Pu.prototype.getSortedSymbolIndexes=function(y){if(this.sortedAngle===y&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;for(var I=Math.sin(y),U=Math.cos(y),$=[],ae=[],he=[],Oe=0;Oe1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(y),this.sortedAngle=y,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var U=0,$=this.symbolInstanceIndexes;U<$.length;U+=1){var ae=$[U],he=this.symbolInstances.get(ae);this.featureSortOrder.push(he.featureIndex),[he.rightJustifiedTextSymbolIndex,he.centerJustifiedTextSymbolIndex,he.leftJustifiedTextSymbolIndex].forEach(function(Oe,rt,gt){Oe>=0&>.indexOf(Oe)===rt&&I.addIndicesForPlacedSymbol(I.text,Oe)}),he.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,he.verticalPlacedTextSymbolIndex),he.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,he.placedIconSymbolIndex),he.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,he.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},X("SymbolBucket",Pu,{omit:["layers","collisionBoxArray","features","compareText"]}),Pu.MAX_GLYPHS=65535,Pu.addDynamicAttributes=dO;function Uet(m,y){return y.replace(/{([^{}]+)}/g,function(I,U){return U in m?String(m[U]):""})}var Vet=new Nr({"symbol-placement":new Me(Rn.layout_symbol["symbol-placement"]),"symbol-spacing":new Me(Rn.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Me(Rn.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new bt(Rn.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Me(Rn.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Me(Rn.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Me(Rn.layout_symbol["icon-ignore-placement"]),"icon-optional":new Me(Rn.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Me(Rn.layout_symbol["icon-rotation-alignment"]),"icon-size":new bt(Rn.layout_symbol["icon-size"]),"icon-text-fit":new Me(Rn.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Me(Rn.layout_symbol["icon-text-fit-padding"]),"icon-image":new bt(Rn.layout_symbol["icon-image"]),"icon-rotate":new bt(Rn.layout_symbol["icon-rotate"]),"icon-padding":new Me(Rn.layout_symbol["icon-padding"]),"icon-keep-upright":new Me(Rn.layout_symbol["icon-keep-upright"]),"icon-offset":new bt(Rn.layout_symbol["icon-offset"]),"icon-anchor":new bt(Rn.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Me(Rn.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Me(Rn.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Me(Rn.layout_symbol["text-rotation-alignment"]),"text-field":new bt(Rn.layout_symbol["text-field"]),"text-font":new bt(Rn.layout_symbol["text-font"]),"text-size":new bt(Rn.layout_symbol["text-size"]),"text-max-width":new bt(Rn.layout_symbol["text-max-width"]),"text-line-height":new Me(Rn.layout_symbol["text-line-height"]),"text-letter-spacing":new bt(Rn.layout_symbol["text-letter-spacing"]),"text-justify":new bt(Rn.layout_symbol["text-justify"]),"text-radial-offset":new bt(Rn.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Me(Rn.layout_symbol["text-variable-anchor"]),"text-anchor":new bt(Rn.layout_symbol["text-anchor"]),"text-max-angle":new Me(Rn.layout_symbol["text-max-angle"]),"text-writing-mode":new Me(Rn.layout_symbol["text-writing-mode"]),"text-rotate":new bt(Rn.layout_symbol["text-rotate"]),"text-padding":new Me(Rn.layout_symbol["text-padding"]),"text-keep-upright":new Me(Rn.layout_symbol["text-keep-upright"]),"text-transform":new bt(Rn.layout_symbol["text-transform"]),"text-offset":new bt(Rn.layout_symbol["text-offset"]),"text-allow-overlap":new Me(Rn.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Me(Rn.layout_symbol["text-ignore-placement"]),"text-optional":new Me(Rn.layout_symbol["text-optional"])}),Get=new Nr({"icon-opacity":new bt(Rn.paint_symbol["icon-opacity"]),"icon-color":new bt(Rn.paint_symbol["icon-color"]),"icon-halo-color":new bt(Rn.paint_symbol["icon-halo-color"]),"icon-halo-width":new bt(Rn.paint_symbol["icon-halo-width"]),"icon-halo-blur":new bt(Rn.paint_symbol["icon-halo-blur"]),"icon-translate":new Me(Rn.paint_symbol["icon-translate"]),"icon-translate-anchor":new Me(Rn.paint_symbol["icon-translate-anchor"]),"text-opacity":new bt(Rn.paint_symbol["text-opacity"]),"text-color":new bt(Rn.paint_symbol["text-color"],{runtimeType:ql,getOverride:function(m){return m.textColor},hasOverride:function(m){return!!m.textColor}}),"text-halo-color":new bt(Rn.paint_symbol["text-halo-color"]),"text-halo-width":new bt(Rn.paint_symbol["text-halo-width"]),"text-halo-blur":new bt(Rn.paint_symbol["text-halo-blur"]),"text-translate":new Me(Rn.paint_symbol["text-translate"]),"text-translate-anchor":new Me(Rn.paint_symbol["text-translate-anchor"])}),vO={paint:Get,layout:Vet},Jw=function(y){this.type=y.property.overrides?y.property.overrides.runtimeType:ac,this.defaultValue=y};Jw.prototype.evaluate=function(y){if(y.formattedSection){var I=this.defaultValue.property.overrides;if(I&&I.hasOverride(y.formattedSection))return I.getOverride(y.formattedSection)}return y.feature&&y.featureState?this.defaultValue.evaluate(y.feature,y.featureState):this.defaultValue.property.specification.default},Jw.prototype.eachChild=function(y){if(!this.defaultValue.isConstant()){var I=this.defaultValue.value;y(I._styleExpression.expression)}},Jw.prototype.outputDefined=function(){return!1},Jw.prototype.serialize=function(){return null},X("FormatSectionOverride",Jw,{omit:["defaultValue"]});var Het=function(m){function y(I){m.call(this,I,vO)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.recalculate=function(U,$){if(m.prototype.recalculate.call(this,U,$),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var ae=this.layout.get("text-writing-mode");if(ae){for(var he=[],Oe=0,rt=ae;Oe",targetMapId:$,sourceMapId:he.mapId})}}},$w.prototype.receive=function(y){var I=y.data,U=I.id;if(U&&!(I.targetMapId&&this.mapId!==I.targetMapId))if(I.type===""){delete this.tasks[U];var $=this.cancelCallbacks[U];delete this.cancelCallbacks[U],$&&$()}else Ce()||I.mustQueue?(this.tasks[U]=I,this.taskQueue.push(U),this.invoker.trigger()):this.processTask(U,I)},$w.prototype.process=function(){if(this.taskQueue.length){var y=this.taskQueue.shift(),I=this.tasks[y];delete this.tasks[y],this.taskQueue.length&&this.invoker.trigger(),I&&this.processTask(y,I)}},$w.prototype.processTask=function(y,I){var U=this;if(I.type===""){var $=this.callbacks[y];delete this.callbacks[y],$&&(I.error?$(Ye(I.error)):$(null,Ye(I.data)))}else{var ae=!1,he=Se(this.globalScope)?void 0:[],Oe=I.hasCallback?function(_r,pr){ae=!0,delete U.cancelCallbacks[y],U.target.postMessage({id:y,type:"",sourceMapId:U.mapId,error:_r?He(_r):null,data:He(pr,he)},he)}:function(_r){ae=!0},rt=null,gt=Ye(I.data);if(this.parent[I.type])rt=this.parent[I.type](I.sourceMapId,gt,Oe);else if(this.parent.getWorkerSource){var Et=I.type.split("."),or=this.parent.getWorkerSource(I.sourceMapId,Et[0],gt.source);rt=or[Et[1]](gt,Oe)}else Oe(new Error("Could not find function "+I.type));!ae&&rt&&rt.cancel&&(this.cancelCallbacks[y]=rt.cancel)}},$w.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};function ttt(m,y,I){y=Math.pow(2,I)-y-1;var U=YQ(m*256,y*256,I),$=YQ((m+1)*256,(y+1)*256,I);return U[0]+","+U[1]+","+$[0]+","+$[1]}function YQ(m,y,I){var U=2*Math.PI*6378137/256/Math.pow(2,I),$=m*U-2*Math.PI*6378137/2,ae=y*U-2*Math.PI*6378137/2;return[$,ae]}var lh=function(y,I){y&&(I?this.setSouthWest(y).setNorthEast(I):y.length===4?this.setSouthWest([y[0],y[1]]).setNorthEast([y[2],y[3]]):this.setSouthWest(y[0]).setNorthEast(y[1]))};lh.prototype.setNorthEast=function(y){return this._ne=y instanceof Hc?new Hc(y.lng,y.lat):Hc.convert(y),this},lh.prototype.setSouthWest=function(y){return this._sw=y instanceof Hc?new Hc(y.lng,y.lat):Hc.convert(y),this},lh.prototype.extend=function(y){var I=this._sw,U=this._ne,$,ae;if(y instanceof Hc)$=y,ae=y;else if(y instanceof lh){if($=y._sw,ae=y._ne,!$||!ae)return this}else{if(Array.isArray(y))if(y.length===4||y.every(Array.isArray)){var he=y;return this.extend(lh.convert(he))}else{var Oe=y;return this.extend(Hc.convert(Oe))}return this}return!I&&!U?(this._sw=new Hc($.lng,$.lat),this._ne=new Hc(ae.lng,ae.lat)):(I.lng=Math.min($.lng,I.lng),I.lat=Math.min($.lat,I.lat),U.lng=Math.max(ae.lng,U.lng),U.lat=Math.max(ae.lat,U.lat)),this},lh.prototype.getCenter=function(){return new Hc((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},lh.prototype.getSouthWest=function(){return this._sw},lh.prototype.getNorthEast=function(){return this._ne},lh.prototype.getNorthWest=function(){return new Hc(this.getWest(),this.getNorth())},lh.prototype.getSouthEast=function(){return new Hc(this.getEast(),this.getSouth())},lh.prototype.getWest=function(){return this._sw.lng},lh.prototype.getSouth=function(){return this._sw.lat},lh.prototype.getEast=function(){return this._ne.lng},lh.prototype.getNorth=function(){return this._ne.lat},lh.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},lh.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},lh.prototype.isEmpty=function(){return!(this._sw&&this._ne)},lh.prototype.contains=function(y){var I=Hc.convert(y),U=I.lng,$=I.lat,ae=this._sw.lat<=$&&$<=this._ne.lat,he=this._sw.lng<=U&&U<=this._ne.lng;return this._sw.lng>this._ne.lng&&(he=this._sw.lng>=U&&U>=this._ne.lng),ae&&he},lh.convert=function(y){return!y||y instanceof lh?y:new lh(y)};var KQ=63710088e-1,Hc=function(y,I){if(isNaN(y)||isNaN(I))throw new Error("Invalid LngLat object: ("+y+", "+I+")");if(this.lng=+y,this.lat=+I,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};Hc.prototype.wrap=function(){return new Hc(k(this.lng,-180,180),this.lat)},Hc.prototype.toArray=function(){return[this.lng,this.lat]},Hc.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},Hc.prototype.distanceTo=function(y){var I=Math.PI/180,U=this.lat*I,$=y.lat*I,ae=Math.sin(U)*Math.sin($)+Math.cos(U)*Math.cos($)*Math.cos((y.lng-this.lng)*I),he=KQ*Math.acos(Math.min(ae,1));return he},Hc.prototype.toBounds=function(y){y===void 0&&(y=0);var I=40075017,U=360*y/I,$=U/Math.cos(Math.PI/180*this.lat);return new lh(new Hc(this.lng-$,this.lat-U),new Hc(this.lng+$,this.lat+U))},Hc.convert=function(y){if(y instanceof Hc)return y;if(Array.isArray(y)&&(y.length===2||y.length===3))return new Hc(Number(y[0]),Number(y[1]));if(!Array.isArray(y)&&typeof y=="object"&&y!==null)return new Hc(Number("lng"in y?y.lng:y.lon),Number(y.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")};var JQ=2*Math.PI*KQ;function $Q(m){return JQ*Math.cos(m*Math.PI/180)}function QQ(m){return(180+m)/360}function eee(m){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+m*Math.PI/360)))/360}function tee(m,y){return m/$Q(y)}function rtt(m){return m*360-180}function gO(m){var y=180-m*360;return 360/Math.PI*Math.atan(Math.exp(y*Math.PI/180))-90}function itt(m,y){return m*$Q(gO(y))}function ntt(m){return 1/Math.cos(m*Math.PI/180)}var nb=function(y,I,U){U===void 0&&(U=0),this.x=+y,this.y=+I,this.z=+U};nb.fromLngLat=function(y,I){I===void 0&&(I=0);var U=Hc.convert(y);return new nb(QQ(U.lng),eee(U.lat),tee(I,U.lat))},nb.prototype.toLngLat=function(){return new Hc(rtt(this.x),gO(this.y))},nb.prototype.toAltitude=function(){return itt(this.z,this.y)},nb.prototype.meterInMercatorCoordinateUnits=function(){return 1/JQ*ntt(gO(this.y))};var ab=function(y,I,U){this.z=y,this.x=I,this.y=U,this.key=kS(0,y,y,I,U)};ab.prototype.equals=function(y){return this.z===y.z&&this.x===y.x&&this.y===y.y},ab.prototype.url=function(y,I){var U=ttt(this.x,this.y,this.z),$=att(this.z,this.x,this.y);return y[(this.x+this.y)%y.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String(I==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",$).replace("{bbox-epsg-3857}",U)},ab.prototype.getTilePoint=function(y){var I=Math.pow(2,this.z);return new u((y.x*I-this.x)*Ci,(y.y*I-this.y)*Ci)},ab.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var ree=function(y,I){this.wrap=y,this.canonical=I,this.key=kS(y,I.z,I.z,I.x,I.y)},uh=function(y,I,U,$,ae){this.overscaledZ=y,this.wrap=I,this.canonical=new ab(U,+$,+ae),this.key=kS(I,y,U,$,ae)};uh.prototype.equals=function(y){return this.overscaledZ===y.overscaledZ&&this.wrap===y.wrap&&this.canonical.equals(y.canonical)},uh.prototype.scaledTo=function(y){var I=this.canonical.z-y;return y>this.canonical.z?new uh(y,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new uh(y,this.wrap,y,this.canonical.x>>I,this.canonical.y>>I)},uh.prototype.calculateScaledKey=function(y,I){var U=this.canonical.z-y;return y>this.canonical.z?kS(this.wrap*+I,y,this.canonical.z,this.canonical.x,this.canonical.y):kS(this.wrap*+I,y,y,this.canonical.x>>U,this.canonical.y>>U)},uh.prototype.isChildOf=function(y){if(y.wrap!==this.wrap)return!1;var I=this.canonical.z-y.canonical.z;return y.overscaledZ===0||y.overscaledZ>I&&y.canonical.y===this.canonical.y>>I},uh.prototype.children=function(y){if(this.overscaledZ>=y)return[new uh(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var I=this.canonical.z+1,U=this.canonical.x*2,$=this.canonical.y*2;return[new uh(I,this.wrap,I,U,$),new uh(I,this.wrap,I,U+1,$),new uh(I,this.wrap,I,U,$+1),new uh(I,this.wrap,I,U+1,$+1)]},uh.prototype.isLessThan=function(y){return this.wrapy.wrap?!1:this.overscaledZy.overscaledZ?!1:this.canonical.xy.canonical.x?!1:this.canonical.y0;ae--)$=1<=this.dim+1||I<-1||I>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(I+1)*this.stride+(y+1)},vy.prototype._unpackMapbox=function(y,I,U){return(y*256*256+I*256+U)/10-1e4},vy.prototype._unpackTerrarium=function(y,I,U){return y*256+I+U/256-32768},vy.prototype.getPixels=function(){return new Sh({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},vy.prototype.backfillBorder=function(y,I,U){if(this.dim!==y.dim)throw new Error("dem dimension mismatch");var $=I*this.dim,ae=I*this.dim+this.dim,he=U*this.dim,Oe=U*this.dim+this.dim;switch(I){case-1:$=ae-1;break;case 1:ae=$+1;break}switch(U){case-1:he=Oe-1;break;case 1:Oe=he+1;break}for(var rt=-I*this.dim,gt=-U*this.dim,Et=he;Et=0&&or[3]>=0&&rt.insert(Oe,or[0],or[1],or[2],or[3])}},py.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new pg.VectorTile(new Xa(this.rawTileData)).layers,this.sourceLayerCoder=new r6(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},py.prototype.query=function(y,I,U,$){var ae=this;this.loadVTLayers();for(var he=y.params||{},Oe=Ci/y.tileSize/y.scale,rt=be(he.filter),gt=y.queryGeometry,Et=y.queryPadding*Oe,or=nee(gt),_r=this.grid.query(or.minX-Et,or.minY-Et,or.maxX+Et,or.maxY+Et),pr=nee(y.cameraQueryGeometry),Fr=this.grid3D.query(pr.minX-Et,pr.minY-Et,pr.maxX+Et,pr.maxY+Et,function(Zn,ga,ha,eo){return gp(y.cameraQueryGeometry,Zn-Et,ga-Et,ha+Et,eo+Et)}),oi=0,Hi=Fr;oi$)ae=!1;else if(!I)ae=!0;else if(this.expirationTime=Ha.maxzoom)&&Ha.visibility!=="none"){h(Wn,this.zoom,nr);var vo=$i[Ha.id]=Ha.createBucket({index:Oi.bucketLayerIDs.length,layers:Wn,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:Ba,sourceID:this.source});vo.populate(ua,tn,this.tileID.canonical),Oi.bucketLayerIDs.push(Wn.map(function(Li){return Li.id}))}}}}var jn,Mt,kr,Jr,vi=i.mapObject(tn.glyphDependencies,function(Li){return Object.keys(Li).map(Number)});Object.keys(vi).length?Er.send("getGlyphs",{uid:this.uid,stacks:vi},function(Li,_n){jn||(jn=Li,Mt=_n,Mn.call(ri))}):Mt={};var hn=Object.keys(tn.iconDependencies);hn.length?Er.send("getImages",{icons:hn,source:this.source,tileID:this.tileID,type:"icons"},function(Li,_n){jn||(jn=Li,kr=_n,Mn.call(ri))}):kr={};var An=Object.keys(tn.patternDependencies);An.length?Er.send("getImages",{icons:An,source:this.source,tileID:this.tileID,type:"patterns"},function(Li,_n){jn||(jn=Li,Jr=_n,Mn.call(ri))}):Jr={},Mn.call(this);function Mn(){if(jn)return Xr(jn);if(Mt&&kr&&Jr){var Li=new c(Mt),_n=new i.ImageAtlas(kr,Jr);for(var ya in $i){var Jn=$i[ya];Jn instanceof i.SymbolBucket?(h(Jn.layers,this.zoom,nr),i.performSymbolLayout(Jn,Mt,Li.positions,kr,_n.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):Jn.hasPattern&&(Jn instanceof i.LineBucket||Jn instanceof i.FillBucket||Jn instanceof i.FillExtrusionBucket)&&(h(Jn.layers,this.zoom,nr),Jn.addFeatures(tn,this.tileID.canonical,_n.patternPositions))}this.status="done",Xr(null,{buckets:i.values($i).filter(function(Ma){return!Ma.isEmpty()}),featureIndex:Oi,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:Li.image,imageAtlas:_n,glyphMap:this.returnDependencies?Mt:null,iconMap:this.returnDependencies?kr:null,glyphPositions:this.returnDependencies?Li.positions:null})}}};function h(Ut,wt,rr){for(var nr=new i.EvaluationParameters(wt),Er=0,Xr=Ut;Er=0!=!!wt&&Ut.reverse()}var L=i.vectorTile.VectorTileFeature.prototype.toGeoJSON,x=function(wt){this._feature=wt,this.extent=i.EXTENT,this.type=wt.type,this.properties=wt.tags,"id"in wt&&!isNaN(wt.id)&&(this.id=parseInt(wt.id,10))};x.prototype.loadGeometry=function(){if(this._feature.type===1){for(var wt=[],rr=0,nr=this._feature.geometry;rr>31}function Ce(Ut,wt){for(var rr=Ut.loadGeometry(),nr=Ut.type,Er=0,Xr=0,ri=rr.length,Qr=0;Qr>1;Se(Ut,wt,ri,nr,Er,Xr%2),ie(Ut,wt,rr,nr,ri-1,Xr+1),ie(Ut,wt,rr,ri+1,Er,Xr+1)}}function Se(Ut,wt,rr,nr,Er,Xr){for(;Er>nr;){if(Er-nr>600){var ri=Er-nr+1,Qr=rr-nr+1,Oi=Math.log(ri),$i=.5*Math.exp(2*Oi/3),tn=.5*Math.sqrt(Oi*$i*(ri-$i)/ri)*(Qr-ri/2<0?-1:1),fn=Math.max(nr,Math.floor(rr-Qr*$i/ri+tn)),yn=Math.min(Er,Math.floor(rr+(ri-Qr)*$i/ri+tn));Se(Ut,wt,rr,fn,yn,Xr)}var Sn=wt[2*rr+Xr],Ba=nr,ua=Er;for(Le(Ut,wt,nr,rr),wt[2*Er+Xr]>Sn&&Le(Ut,wt,nr,Er);BaSn;)ua--}wt[2*nr+Xr]===Sn?Le(Ut,wt,nr,ua):(ua++,Le(Ut,wt,ua,Er)),ua<=rr&&(nr=ua+1),rr<=ua&&(Er=ua-1)}}function Le(Ut,wt,rr,nr){Ae(Ut,rr,nr),Ae(wt,2*rr,2*nr),Ae(wt,2*rr+1,2*nr+1)}function Ae(Ut,wt,rr){var nr=Ut[wt];Ut[wt]=Ut[rr],Ut[rr]=nr}function Fe(Ut,wt,rr,nr,Er,Xr,ri){for(var Qr=[0,Ut.length-1,0],Oi=[],$i,tn;Qr.length;){var fn=Qr.pop(),yn=Qr.pop(),Sn=Qr.pop();if(yn-Sn<=ri){for(var Ba=Sn;Ba<=yn;Ba++)$i=wt[2*Ba],tn=wt[2*Ba+1],$i>=rr&&$i<=Er&&tn>=nr&&tn<=Xr&&Oi.push(Ut[Ba]);continue}var ua=Math.floor((Sn+yn)/2);$i=wt[2*ua],tn=wt[2*ua+1],$i>=rr&&$i<=Er&&tn>=nr&&tn<=Xr&&Oi.push(Ut[ua]);var ma=(fn+1)%2;(fn===0?rr<=$i:nr<=tn)&&(Qr.push(Sn),Qr.push(ua-1),Qr.push(ma)),(fn===0?Er>=$i:Xr>=tn)&&(Qr.push(ua+1),Qr.push(yn),Qr.push(ma))}return Oi}function Pe(Ut,wt,rr,nr,Er,Xr){for(var ri=[0,Ut.length-1,0],Qr=[],Oi=Er*Er;ri.length;){var $i=ri.pop(),tn=ri.pop(),fn=ri.pop();if(tn-fn<=Xr){for(var yn=fn;yn<=tn;yn++)ge(wt[2*yn],wt[2*yn+1],rr,nr)<=Oi&&Qr.push(Ut[yn]);continue}var Sn=Math.floor((fn+tn)/2),Ba=wt[2*Sn],ua=wt[2*Sn+1];ge(Ba,ua,rr,nr)<=Oi&&Qr.push(Ut[Sn]);var ma=($i+1)%2;($i===0?rr-Er<=Ba:nr-Er<=ua)&&(ri.push(fn),ri.push(Sn-1),ri.push(ma)),($i===0?rr+Er>=Ba:nr+Er>=ua)&&(ri.push(Sn+1),ri.push(tn),ri.push(ma))}return Qr}function ge(Ut,wt,rr,nr){var Er=Ut-rr,Xr=wt-nr;return Er*Er+Xr*Xr}var Re=function(Ut){return Ut[0]},ce=function(Ut){return Ut[1]},Ze=function(wt,rr,nr,Er,Xr){rr===void 0&&(rr=Re),nr===void 0&&(nr=ce),Er===void 0&&(Er=64),Xr===void 0&&(Xr=Float64Array),this.nodeSize=Er,this.points=wt;for(var ri=wt.length<65536?Uint16Array:Uint32Array,Qr=this.ids=new ri(wt.length),Oi=this.coords=new Xr(wt.length*2),$i=0;$i=Er;tn--){var fn=+Date.now();Oi=this._cluster(Oi,tn),this.trees[tn]=new Ze(Oi,$e,St,ri,Float32Array),nr&&console.log("z%d: %d clusters in %dms",tn,Oi.length,+Date.now()-fn)}return nr&&console.timeEnd("total time"),this},pt.prototype.getClusters=function(wt,rr){var nr=((wt[0]+180)%360+360)%360-180,Er=Math.max(-90,Math.min(90,wt[1])),Xr=wt[2]===180?180:((wt[2]+180)%360+360)%360-180,ri=Math.max(-90,Math.min(90,wt[3]));if(wt[2]-wt[0]>=360)nr=-180,Xr=180;else if(nr>Xr){var Qr=this.getClusters([nr,Er,180,ri],rr),Oi=this.getClusters([-180,Er,Xr,ri],rr);return Qr.concat(Oi)}for(var $i=this.trees[this._limitZoom(rr)],tn=$i.range(Nt(nr),Jt(ri),Nt(Xr),Jt(Er)),fn=[],yn=0,Sn=tn;ynrr&&(ua+=Wo.numPoints||1)}if(ua>=Oi){for(var da=fn.x*Ba,Wn=fn.y*Ba,Ha=Qr&&Ba>1?this._map(fn,!0):null,vo=(tn<<5)+(rr+1)+this.points.length,jn=0,Mt=Sn;jn1)for(var hn=0,An=Sn;hn>5},pt.prototype._getOriginZoom=function(wt){return(wt-this.points.length)%32},pt.prototype._map=function(wt,rr){if(wt.numPoints)return rr?cr({},wt.properties):wt.properties;var nr=this.points[wt.index].properties,Er=this.options.map(nr);return rr&&Er===nr?cr({},Er):Er};function Zt(Ut,wt,rr,nr,Er){return{x:Ut,y:wt,zoom:1/0,id:rr,parentId:-1,numPoints:nr,properties:Er}}function st(Ut,wt){var rr=Ut.geometry.coordinates,nr=rr[0],Er=rr[1];return{x:Nt(nr),y:Jt(Er),zoom:1/0,index:wt,parentId:-1}}function lt(Ut){return{type:"Feature",id:Ut.id,properties:Gt(Ut),geometry:{type:"Point",coordinates:[sr(Ut.x),wr(Ut.y)]}}}function Gt(Ut){var wt=Ut.numPoints,rr=wt>=1e4?Math.round(wt/1e3)+"k":wt>=1e3?Math.round(wt/100)/10+"k":wt;return cr(cr({},Ut.properties),{cluster:!0,cluster_id:Ut.id,point_count:wt,point_count_abbreviated:rr})}function Nt(Ut){return Ut/360+.5}function Jt(Ut){var wt=Math.sin(Ut*Math.PI/180),rr=.5-.25*Math.log((1+wt)/(1-wt))/Math.PI;return rr<0?0:rr>1?1:rr}function sr(Ut){return(Ut-.5)*360}function wr(Ut){var wt=(180-Ut*360)*Math.PI/180;return 360*Math.atan(Math.exp(wt))/Math.PI-90}function cr(Ut,wt){for(var rr in wt)Ut[rr]=wt[rr];return Ut}function $e(Ut){return Ut.x}function St(Ut){return Ut.y}function Qt(Ut,wt,rr,nr){for(var Er=nr,Xr=rr-wt>>1,ri=rr-wt,Qr,Oi=Ut[wt],$i=Ut[wt+1],tn=Ut[rr],fn=Ut[rr+1],yn=wt+3;ynEr)Qr=yn,Er=Sn;else if(Sn===Er){var Ba=Math.abs(yn-Xr);Banr&&(Qr-wt>3&&Qt(Ut,wt,Qr,nr),Ut[Qr+2]=Er,rr-Qr>3&&Qt(Ut,Qr,rr,nr))}function Vt(Ut,wt,rr,nr,Er,Xr){var ri=Er-rr,Qr=Xr-nr;if(ri!==0||Qr!==0){var Oi=((Ut-rr)*ri+(wt-nr)*Qr)/(ri*ri+Qr*Qr);Oi>1?(rr=Er,nr=Xr):Oi>0&&(rr+=ri*Oi,nr+=Qr*Oi)}return ri=Ut-rr,Qr=wt-nr,ri*ri+Qr*Qr}function _t(Ut,wt,rr,nr){var Er={id:typeof Ut=="undefined"?null:Ut,type:wt,geometry:rr,tags:nr,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return It(Er),Er}function It(Ut){var wt=Ut.geometry,rr=Ut.type;if(rr==="Point"||rr==="MultiPoint"||rr==="LineString")mt(Ut,wt);else if(rr==="Polygon"||rr==="MultiLineString")for(var nr=0;nr0&&(nr?ri+=(Er*$i-Oi*Xr)/2:ri+=Math.sqrt(Math.pow(Oi-Er,2)+Math.pow($i-Xr,2))),Er=Oi,Xr=$i}var tn=wt.length-3;wt[2]=1,Qt(wt,0,tn,rr),wt[tn+2]=1,wt.size=Math.abs(ri),wt.start=0,wt.end=wt.size}function ti(Ut,wt,rr,nr){for(var Er=0;Er1?1:rr}function dt(Ut,wt,rr,nr,Er,Xr,ri,Qr){if(rr/=wt,nr/=wt,Xr>=rr&&ri=nr)return null;for(var Oi=[],$i=0;$i=rr&&Ba=nr)continue;var ua=[];if(yn==="Point"||yn==="MultiPoint")Ge(fn,ua,rr,nr,Er);else if(yn==="LineString")Je(fn,ua,rr,nr,Er,!1,Qr.lineMetrics);else if(yn==="MultiLineString")tt(fn,ua,rr,nr,Er,!1);else if(yn==="Polygon")tt(fn,ua,rr,nr,Er,!0);else if(yn==="MultiPolygon")for(var ma=0;ma=rr&&ri<=nr&&(wt.push(Ut[Xr]),wt.push(Ut[Xr+1]),wt.push(Ut[Xr+2]))}}function Je(Ut,wt,rr,nr,Er,Xr,ri){for(var Qr=je(Ut),Oi=Er===0?Ie:xe,$i=Ut.start,tn,fn,yn=0;ynrr&&(fn=Oi(Qr,Sn,Ba,ma,Wa,rr),ri&&(Qr.start=$i+tn*fn)):Fa>nr?Wo=rr&&(fn=Oi(Qr,Sn,Ba,ma,Wa,rr),da=!0),Wo>nr&&Fa<=nr&&(fn=Oi(Qr,Sn,Ba,ma,Wa,nr),da=!0),!Xr&&da&&(ri&&(Qr.end=$i+tn*fn),wt.push(Qr),Qr=je(Ut)),ri&&($i+=tn)}var Wn=Ut.length-3;Sn=Ut[Wn],Ba=Ut[Wn+1],ua=Ut[Wn+2],Fa=Er===0?Sn:Ba,Fa>=rr&&Fa<=nr&&xt(Qr,Sn,Ba,ua),Wn=Qr.length-3,Xr&&Wn>=3&&(Qr[Wn]!==Qr[0]||Qr[Wn+1]!==Qr[1])&&xt(Qr,Qr[0],Qr[1],Qr[2]),Qr.length&&wt.push(Qr)}function je(Ut){var wt=[];return wt.size=Ut.size,wt.start=Ut.start,wt.end=Ut.end,wt}function tt(Ut,wt,rr,nr,Er,Xr){for(var ri=0;riri.maxX&&(ri.maxX=tn),fn>ri.maxY&&(ri.maxY=fn)}return ri}function pi(Ut,wt,rr,nr){var Er=wt.geometry,Xr=wt.type,ri=[];if(Xr==="Point"||Xr==="MultiPoint")for(var Qr=0;Qr0&&wt.size<(Er?ri:nr)){rr.numPoints+=wt.length/3;return}for(var Qr=[],Oi=0;Oiri)&&(rr.numSimplified++,Qr.push(wt[Oi]),Qr.push(wt[Oi+1])),rr.numPoints++;Er&&di(Qr,Xr),Ut.push(Qr)}function di(Ut,wt){for(var rr=0,nr=0,Er=Ut.length,Xr=Er-2;nr0===wt)for(nr=0,Er=Ut.length;nr24)throw new Error("maxZoom should be in the 0-24 range");if(wt.promoteId&&wt.generateId)throw new Error("promoteId and generateId cannot be used together.");var nr=er(Ut,wt);this.tiles={},this.tileCoords=[],rr&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",wt.indexMaxZoom,wt.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),nr=ke(nr,wt),nr.length&&this.splitTile(nr,0,0,0),rr&&(nr.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}In.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},In.prototype.splitTile=function(Ut,wt,rr,nr,Er,Xr,ri){for(var Qr=[Ut,wt,rr,nr],Oi=this.options,$i=Oi.debug;Qr.length;){nr=Qr.pop(),rr=Qr.pop(),wt=Qr.pop(),Ut=Qr.pop();var tn=1<1&&console.time("creation"),yn=this.tiles[fn]=ii(Ut,wt,rr,nr,Oi),this.tileCoords.push({z:wt,x:rr,y:nr}),$i)){$i>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",wt,rr,nr,yn.numFeatures,yn.numPoints,yn.numSimplified),console.timeEnd("creation"));var Sn="z"+wt;this.stats[Sn]=(this.stats[Sn]||0)+1,this.total++}if(yn.source=Ut,Er){if(wt===Oi.maxZoom||wt===Er)continue;var Ba=1<1&&console.time("clipping");var ua=.5*Oi.buffer/Oi.extent,ma=.5-ua,Wa=.5+ua,Fa=1+ua,Wo,da,Wn,Ha,vo,jn;Wo=da=Wn=Ha=null,vo=dt(Ut,tn,rr-ua,rr+Wa,0,yn.minX,yn.maxX,Oi),jn=dt(Ut,tn,rr+ma,rr+Fa,0,yn.minX,yn.maxX,Oi),Ut=null,vo&&(Wo=dt(vo,tn,nr-ua,nr+Wa,1,yn.minY,yn.maxY,Oi),da=dt(vo,tn,nr+ma,nr+Fa,1,yn.minY,yn.maxY,Oi),vo=null),jn&&(Wn=dt(jn,tn,nr-ua,nr+Wa,1,yn.minY,yn.maxY,Oi),Ha=dt(jn,tn,nr+ma,nr+Fa,1,yn.minY,yn.maxY,Oi),jn=null),$i>1&&console.timeEnd("clipping"),Qr.push(Wo||[],wt+1,rr*2,nr*2),Qr.push(da||[],wt+1,rr*2,nr*2+1),Qr.push(Wn||[],wt+1,rr*2+1,nr*2),Qr.push(Ha||[],wt+1,rr*2+1,nr*2+1)}}},In.prototype.getTile=function(Ut,wt,rr){var nr=this.options,Er=nr.extent,Xr=nr.debug;if(Ut<0||Ut>24)return null;var ri=1<1&&console.log("drilling down to z%d-%d-%d",Ut,wt,rr);for(var Oi=Ut,$i=wt,tn=rr,fn;!fn&&Oi>0;)Oi--,$i=Math.floor($i/2),tn=Math.floor(tn/2),fn=this.tiles[wi(Oi,$i,tn)];return!fn||!fn.source?null:(Xr>1&&console.log("found parent tile z%d-%d-%d",Oi,$i,tn),Xr>1&&console.time("drilling down"),this.splitTile(fn.source,Oi,$i,tn,Ut,wt,rr),Xr>1&&console.timeEnd("drilling down"),this.tiles[Qr]?ar(this.tiles[Qr],Er):null)};function wi(Ut,wt,rr){return((1<=0?0:Y.button},o.remove=function(Y){Y.parentNode&&Y.parentNode.removeChild(Y)};function _(Y,D,J){var q,K,de,ne=i.browser.devicePixelRatio>1?"@2x":"",we=i.getJSON(D.transformRequest(D.normalizeSpriteURL(Y,ne,".json"),i.ResourceType.SpriteJSON),function(Xt,hr){we=null,de||(de=Xt,q=hr,ft())}),Ue=i.getImage(D.transformRequest(D.normalizeSpriteURL(Y,ne,".png"),i.ResourceType.SpriteImage),function(Xt,hr){Ue=null,de||(de=Xt,K=hr,ft())});function ft(){if(de)J(de);else if(q&&K){var Xt=i.browser.getImageData(K),hr={};for(var qt in q){var Ve=q[qt],Qe=Ve.width,at=Ve.height,Ct=Ve.x,Ot=Ve.y,Rt=Ve.sdf,Bt=Ve.pixelRatio,Dt=Ve.stretchX,yt=Ve.stretchY,Pt=Ve.content,ht=new i.RGBAImage({width:Qe,height:at});i.RGBAImage.copy(Xt,ht,{x:Ct,y:Ot},{x:0,y:0},{width:Qe,height:at}),hr[qt]={data:ht,pixelRatio:Bt,sdf:Rt,stretchX:Dt,stretchY:yt,content:Pt}}J(null,hr)}}return{cancel:function(){we&&(we.cancel(),we=null),Ue&&(Ue.cancel(),Ue=null)}}}function b(Y){var D=Y.userImage;if(D&&D.render){var J=D.render();if(J)return Y.data.replace(new Uint8Array(D.data.buffer)),!0}return!1}var p=1,k=function(Y){function D(){Y.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new i.RGBAImage({width:1,height:1}),this.dirty=!0}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.isLoaded=function(){return this.loaded},D.prototype.setLoaded=function(q){if(this.loaded!==q&&(this.loaded=q,q)){for(var K=0,de=this.requestors;K=0?1.2:1))}C.prototype.draw=function(Y){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(Y,this.buffer,this.middle);for(var D=this.ctx.getImageData(0,0,this.size,this.size),J=new Uint8ClampedArray(this.size*this.size),q=0;q65535){Xt(new Error("glyphs > 65535 not supported"));return}if(Ve.ranges[at]){Xt(null,{stack:hr,id:qt,glyph:Qe});return}var Ct=Ve.requests[at];Ct||(Ct=Ve.requests[at]=[],P.loadGlyphRange(hr,at,q.url,q.requestManager,function(Ot,Rt){if(Rt){for(var Bt in Rt)q._doesCharSupportLocalGlyph(+Bt)||(Ve.glyphs[+Bt]=Rt[+Bt]);Ve.ranges[at]=!0}for(var Dt=0,yt=Ct;Dt1&&(ft=D[++Ue]);var hr=Math.abs(Xt-ft.left),qt=Math.abs(Xt-ft.right),Ve=Math.min(hr,qt),Qe=void 0,at=de/q*(K+1);if(ft.isDash){var Ct=K-Math.abs(at);Qe=Math.sqrt(Ve*Ve+Ct*Ct)}else Qe=K-Math.sqrt(Ve*Ve+at*at);this.data[we+Xt]=Math.max(0,Math.min(255,Qe+128))}},G.prototype.addRegularDash=function(D){for(var J=D.length-1;J>=0;--J){var q=D[J],K=D[J+1];q.zeroLength?D.splice(J,1):K&&K.isDash===q.isDash&&(K.left=q.left,D.splice(J,1))}var de=D[0],ne=D[D.length-1];de.isDash===ne.isDash&&(de.left=ne.left-this.width,ne.right=de.right+this.width);for(var we=this.width*this.nextRow,Ue=0,ft=D[Ue],Xt=0;Xt1&&(ft=D[++Ue]);var hr=Math.abs(Xt-ft.left),qt=Math.abs(Xt-ft.right),Ve=Math.min(hr,qt),Qe=ft.isDash?Ve:-Ve;this.data[we+Xt]=Math.max(0,Math.min(255,Qe+128))}},G.prototype.addDash=function(D,J){var q=J?7:0,K=2*q+1;if(this.nextRow+K>this.height)return i.warnOnce("LineAtlas out of space"),null;for(var de=0,ne=0;ne=q.minX&&D.x=q.minY&&D.y0&&(Xt[new i.OverscaledTileID(q.overscaledZ,we,K.z,ne,K.y-1).key]={backfilled:!1},Xt[new i.OverscaledTileID(q.overscaledZ,q.wrap,K.z,K.x,K.y-1).key]={backfilled:!1},Xt[new i.OverscaledTileID(q.overscaledZ,ft,K.z,Ue,K.y-1).key]={backfilled:!1}),K.y+10&&(de.resourceTiming=q._resourceTiming,q._resourceTiming=[]),q.fire(new i.Event("data",de))})},D.prototype.onAdd=function(q){this.map=q,this.load()},D.prototype.setData=function(q){var K=this;return this._data=q,this.fire(new i.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(de){if(de){K.fire(new i.ErrorEvent(de));return}var ne={dataType:"source",sourceDataType:"content"};K._collectResourceTiming&&K._resourceTiming&&K._resourceTiming.length>0&&(ne.resourceTiming=K._resourceTiming,K._resourceTiming=[]),K.fire(new i.Event("data",ne))}),this},D.prototype.getClusterExpansionZoom=function(q,K){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:q,source:this.id},K),this},D.prototype.getClusterChildren=function(q,K){return this.actor.send("geojson.getClusterChildren",{clusterId:q,source:this.id},K),this},D.prototype.getClusterLeaves=function(q,K,de,ne){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:q,limit:K,offset:de},ne),this},D.prototype._updateWorkerData=function(q){var K=this;this._loaded=!1;var de=i.extend({},this.workerOptions),ne=this._data;typeof ne=="string"?(de.request=this.map._requestManager.transformRequest(i.browser.resolveURL(ne),i.ResourceType.Source),de.request.collectResourceTiming=this._collectResourceTiming):de.data=JSON.stringify(ne),this.actor.send(this.type+".loadData",de,function(we,Ue){K._removed||Ue&&Ue.abandoned||(K._loaded=!0,Ue&&Ue.resourceTiming&&Ue.resourceTiming[K.id]&&(K._resourceTiming=Ue.resourceTiming[K.id].slice(0)),K.actor.send(K.type+".coalesce",{source:de.source},null),q(we))})},D.prototype.loaded=function(){return this._loaded},D.prototype.loadTile=function(q,K){var de=this,ne=q.actor?"reloadTile":"loadTile";q.actor=this.actor;var we={type:this.type,uid:q.uid,tileID:q.tileID,zoom:q.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:i.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};q.request=this.actor.send(ne,we,function(Ue,ft){return delete q.request,q.unloadVectorData(),q.aborted?K(null):Ue?K(Ue):(q.loadVectorData(ft,de.map.painter,ne==="reloadTile"),K(null))})},D.prototype.abortTile=function(q){q.request&&(q.request.cancel(),delete q.request),q.aborted=!0},D.prototype.unloadTile=function(q){q.unloadVectorData(),this.actor.send("removeTile",{uid:q.uid,type:this.type,source:this.id})},D.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},D.prototype.serialize=function(){return i.extend({},this._options,{type:this.type,data:this._data})},D.prototype.hasTransition=function(){return!1},D}(i.Evented),Ee=i.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),Ce=function(Y){function D(J,q,K,de){Y.call(this),this.id=J,this.dispatcher=K,this.coordinates=q.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(de),this.options=q}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.load=function(q,K){var de=this;this._loaded=!1,this.fire(new i.Event("dataloading",{dataType:"source"})),this.url=this.options.url,i.getImage(this.map._requestManager.transformRequest(this.url,i.ResourceType.Image),function(ne,we){de._loaded=!0,ne?de.fire(new i.ErrorEvent(ne)):we&&(de.image=we,q&&(de.coordinates=q),K&&K(),de._finishLoading())})},D.prototype.loaded=function(){return this._loaded},D.prototype.updateImage=function(q){var K=this;return!this.image||!q.url?this:(this.options.url=q.url,this.load(q.coordinates,function(){K.texture=null}),this)},D.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"metadata"})))},D.prototype.onAdd=function(q){this.map=q,this.load()},D.prototype.setCoordinates=function(q){var K=this;this.coordinates=q;var de=q.map(i.MercatorCoordinate.fromLngLat);this.tileID=me(de),this.minzoom=this.maxzoom=this.tileID.z;var ne=de.map(function(we){return K.tileID.getTilePoint(we)._round()});return this._boundsArray=new i.StructArrayLayout4i8,this._boundsArray.emplaceBack(ne[0].x,ne[0].y,0,0),this._boundsArray.emplaceBack(ne[1].x,ne[1].y,i.EXTENT,0),this._boundsArray.emplaceBack(ne[3].x,ne[3].y,0,i.EXTENT),this._boundsArray.emplaceBack(ne[2].x,ne[2].y,i.EXTENT,i.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"content"})),this},D.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||!this.image)){var q=this.map.painter.context,K=q.gl;this.boundsBuffer||(this.boundsBuffer=q.createVertexBuffer(this._boundsArray,Ee.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new i.Texture(q,this.image,K.RGBA),this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE));for(var de in this.tiles){var ne=this.tiles[de];ne.state!=="loaded"&&(ne.state="loaded",ne.texture=this.texture)}}},D.prototype.loadTile=function(q,K){this.tileID&&this.tileID.equals(q.tileID.canonical)?(this.tiles[String(q.tileID.wrap)]=q,q.buckets={},K(null)):(q.state="errored",K(null))},D.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},D.prototype.hasTransition=function(){return!1},D}(i.Evented);function me(Y){for(var D=1/0,J=1/0,q=-1/0,K=-1/0,de=0,ne=Y;deK.end(0)?this.fire(new i.ErrorEvent(new i.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+K.start(0)+" and "+K.end(0)+"-second mark."))):this.video.currentTime=q}},D.prototype.getVideo=function(){return this.video},D.prototype.onAdd=function(q){this.map||(this.map=q,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},D.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||this.video.readyState<2)){var q=this.map.painter.context,K=q.gl;this.boundsBuffer||(this.boundsBuffer=q.createVertexBuffer(this._boundsArray,Ee.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE),K.texSubImage2D(K.TEXTURE_2D,0,0,0,K.RGBA,K.UNSIGNED_BYTE,this.video)):(this.texture=new i.Texture(q,this.video,K.RGBA),this.texture.bind(K.LINEAR,K.CLAMP_TO_EDGE));for(var de in this.tiles){var ne=this.tiles[de];ne.state!=="loaded"&&(ne.state="loaded",ne.texture=this.texture)}}},D.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},D.prototype.hasTransition=function(){return this.video&&!this.video.paused},D}(Ce),Se=function(Y){function D(J,q,K,de){Y.call(this,J,q,K,de),q.coordinates?(!Array.isArray(q.coordinates)||q.coordinates.length!==4||q.coordinates.some(function(ne){return!Array.isArray(ne)||ne.length!==2||ne.some(function(we){return typeof we!="number"})}))&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'missing required property "coordinates"'))),q.animate&&typeof q.animate!="boolean"&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'optional "animate" property must be a boolean value'))),q.canvas?typeof q.canvas!="string"&&!(q.canvas instanceof i.window.HTMLCanvasElement)&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+J,null,'missing required property "canvas"'))),this.options=q,this.animate=q.animate!==void 0?q.animate:!0}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.load=function(){if(this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof i.window.HTMLCanvasElement?this.options.canvas:i.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()){this.fire(new i.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero.")));return}this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading()},D.prototype.getCanvas=function(){return this.canvas},D.prototype.onAdd=function(q){this.map=q,this.load(),this.canvas&&this.animate&&this.play()},D.prototype.onRemove=function(){this.pause()},D.prototype.prepare=function(){var q=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,q=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,q=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var K=this.map.painter.context,de=K.gl;this.boundsBuffer||(this.boundsBuffer=K.createVertexBuffer(this._boundsArray,Ee.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(q||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new i.Texture(K,this.canvas,de.RGBA,{premultiply:!0});for(var ne in this.tiles){var we=this.tiles[ne];we.state!=="loaded"&&(we.state="loaded",we.texture=this.texture)}}},D.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},D.prototype.hasTransition=function(){return this._playing},D.prototype._hasInvalidDimensions=function(){for(var q=0,K=[this.canvas.width,this.canvas.height];qthis.max){var we=this._getAndRemoveByKey(this.order[0]);we&&this.onRemove(we)}return this},st.prototype.has=function(D){return D.wrapped().key in this.data},st.prototype.getAndRemove=function(D){return this.has(D)?this._getAndRemoveByKey(D.wrapped().key):null},st.prototype._getAndRemoveByKey=function(D){var J=this.data[D].shift();return J.timeout&&clearTimeout(J.timeout),this.data[D].length===0&&delete this.data[D],this.order.splice(this.order.indexOf(D),1),J.value},st.prototype.getByKey=function(D){var J=this.data[D];return J?J[0].value:null},st.prototype.get=function(D){if(!this.has(D))return null;var J=this.data[D.wrapped().key][0];return J.value},st.prototype.remove=function(D,J){if(!this.has(D))return this;var q=D.wrapped().key,K=J===void 0?0:this.data[q].indexOf(J),de=this.data[q][K];return this.data[q].splice(K,1),de.timeout&&clearTimeout(de.timeout),this.data[q].length===0&&delete this.data[q],this.onRemove(de.value),this.order.splice(this.order.indexOf(q),1),this},st.prototype.setMaxSize=function(D){for(this.max=D;this.order.length>this.max;){var J=this._getAndRemoveByKey(this.order[0]);J&&this.onRemove(J)}return this},st.prototype.filter=function(D){var J=[];for(var q in this.data)for(var K=0,de=this.data[q];K1||(Math.abs(hr)>1&&(Math.abs(hr+Ve)===1?hr+=Ve:Math.abs(hr-Ve)===1&&(hr-=Ve)),!(!Xt.dem||!ft.dem)&&(ft.dem.backfillBorder(Xt.dem,hr,qt),ft.neighboringTiles&&ft.neighboringTiles[Qe]&&(ft.neighboringTiles[Qe].backfilled=!0)))}},D.prototype.getTile=function(q){return this.getTileByID(q.key)},D.prototype.getTileByID=function(q){return this._tiles[q]},D.prototype._retainLoadedChildren=function(q,K,de,ne){for(var we in this._tiles){var Ue=this._tiles[we];if(!(ne[we]||!Ue.hasData()||Ue.tileID.overscaledZ<=K||Ue.tileID.overscaledZ>de)){for(var ft=Ue.tileID;Ue&&Ue.tileID.overscaledZ>K+1;){var Xt=Ue.tileID.scaledTo(Ue.tileID.overscaledZ-1);Ue=this._tiles[Xt.key],Ue&&Ue.hasData()&&(ft=Xt)}for(var hr=ft;hr.overscaledZ>K;)if(hr=hr.scaledTo(hr.overscaledZ-1),q[hr.key]){ne[ft.key]=ft;break}}}},D.prototype.findLoadedParent=function(q,K){if(q.key in this._loadedParentTiles){var de=this._loadedParentTiles[q.key];return de&&de.tileID.overscaledZ>=K?de:null}for(var ne=q.overscaledZ-1;ne>=K;ne--){var we=q.scaledTo(ne),Ue=this._getLoadedTile(we);if(Ue)return Ue}},D.prototype._getLoadedTile=function(q){var K=this._tiles[q.key];if(K&&K.hasData())return K;var de=this._cache.getByKey(q.wrapped().key);return de},D.prototype.updateCacheSize=function(q){var K=Math.ceil(q.width/this._source.tileSize)+1,de=Math.ceil(q.height/this._source.tileSize)+1,ne=K*de,we=5,Ue=Math.floor(ne*we),ft=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Ue):Ue;this._cache.setMaxSize(ft)},D.prototype.handleWrapJump=function(q){var K=this._prevLng===void 0?q:this._prevLng,de=q-K,ne=de/360,we=Math.round(ne);if(this._prevLng=q,we){var Ue={};for(var ft in this._tiles){var Xt=this._tiles[ft];Xt.tileID=Xt.tileID.unwrapTo(Xt.tileID.wrap+we),Ue[Xt.tileID.key]=Xt}this._tiles=Ue;for(var hr in this._timers)clearTimeout(this._timers[hr]),delete this._timers[hr];for(var qt in this._tiles){var Ve=this._tiles[qt];this._setTileReloadTimer(qt,Ve)}}},D.prototype.update=function(q){var K=this;if(this.transform=q,!(!this._sourceLoaded||this._paused)){this.updateCacheSize(q),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={};var de;this.used?this._source.tileID?de=q.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(Ur){return new i.OverscaledTileID(Ur.canonical.z,Ur.wrap,Ur.canonical.z,Ur.canonical.x,Ur.canonical.y)}):(de=q.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(de=de.filter(function(Ur){return K._source.hasTile(Ur)}))):de=[];var ne=q.coveringZoomLevel(this._source),we=Math.max(ne-D.maxOverzooming,this._source.minzoom),Ue=Math.max(ne+D.maxUnderzooming,this._source.minzoom),ft=this._updateRetainedTiles(de,ne);if(Oi(this._source.type)){for(var Xt={},hr={},qt=Object.keys(ft),Ve=0,Qe=qt;Vethis._source.maxzoom){var Rt=Ct.children(this._source.maxzoom)[0],Bt=this.getTile(Rt);if(Bt&&Bt.hasData()){de[Rt.key]=Rt;continue}}else{var Dt=Ct.children(this._source.maxzoom);if(de[Dt[0].key]&&de[Dt[1].key]&&de[Dt[2].key]&&de[Dt[3].key])continue}for(var yt=Ot.wasRequested(),Pt=Ct.overscaledZ-1;Pt>=we;--Pt){var ht=Ct.scaledTo(Pt);if(ne[ht.key]||(ne[ht.key]=!0,Ot=this.getTile(ht),!Ot&&yt&&(Ot=this._addTile(ht)),Ot&&(de[ht.key]=ht,yt=Ot.wasRequested(),Ot.hasData())))break}}}return de},D.prototype._updateLoadedParentTileCache=function(){this._loadedParentTiles={};for(var q in this._tiles){for(var K=[],de=void 0,ne=this._tiles[q].tileID;ne.overscaledZ>0;){if(ne.key in this._loadedParentTiles){de=this._loadedParentTiles[ne.key];break}K.push(ne.key);var we=ne.scaledTo(ne.overscaledZ-1);if(de=this._getLoadedTile(we),de)break;ne=we}for(var Ue=0,ft=K;Ue0)&&(K.hasData()&&K.state!=="reloading"?this._cache.add(K.tileID,K,K.getExpiryTimeout()):(K.aborted=!0,this._abortTile(K),this._unloadTile(K))))},D.prototype.clearTiles=function(){this._shouldReloadOnResume=!1,this._paused=!1;for(var q in this._tiles)this._removeTile(q);this._cache.reset()},D.prototype.tilesIn=function(q,K,de){var ne=this,we=[],Ue=this.transform;if(!Ue)return we;for(var ft=de?Ue.getCameraQueryGeometry(q):q,Xt=q.map(function(Pt){return Ue.pointCoordinate(Pt)}),hr=ft.map(function(Pt){return Ue.pointCoordinate(Pt)}),qt=this.getIds(),Ve=1/0,Qe=1/0,at=-1/0,Ct=-1/0,Ot=0,Rt=hr;Ot=0&&Di[1].y+Ur>=0){var fi=Xt.map(function(gn){return ur.getTilePoint(gn)}),Ti=hr.map(function(gn){return ur.getTilePoint(gn)});we.push({tile:ht,tileID:ur,queryGeometry:fi,cameraQueryGeometry:Ti,scale:br})}}},yt=0;yt=i.browser.now())return!0}return!1},D.prototype.setFeatureState=function(q,K,de){q=q||"_geojsonTileLayer",this._state.updateState(q,K,de)},D.prototype.removeFeatureState=function(q,K,de){q=q||"_geojsonTileLayer",this._state.removeFeatureState(q,K,de)},D.prototype.getFeatureState=function(q,K){return q=q||"_geojsonTileLayer",this._state.getState(q,K)},D.prototype.setDependencies=function(q,K,de){var ne=this._tiles[q];ne&&ne.setDependencies(K,de)},D.prototype.reloadTilesForDependencies=function(q,K){for(var de in this._tiles){var ne=this._tiles[de];ne.hasDependency(q,K)&&this._reloadTile(de,"reloading")}this._cache.filter(function(we){return!we.hasDependency(q,K)})},D}(i.Evented);ri.maxOverzooming=10,ri.maxUnderzooming=3;function Qr(Y,D){var J=Math.abs(Y.wrap*2)-+(Y.wrap<0),q=Math.abs(D.wrap*2)-+(D.wrap<0);return Y.overscaledZ-D.overscaledZ||q-J||D.canonical.y-Y.canonical.y||D.canonical.x-Y.canonical.x}function Oi(Y){return Y==="raster"||Y==="image"||Y==="video"}function $i(){return new i.window.Worker(io.workerUrl)}var tn="mapboxgl_preloaded_worker_pool",fn=function(){this.active={}};fn.prototype.acquire=function(D){if(!this.workers)for(this.workers=[];this.workers.length0?(K-ne)/we:0;return this.points[de].mult(1-Ue).add(this.points[J].mult(Ue))};var Li=function(D,J,q){var K=this.boxCells=[],de=this.circleCells=[];this.xCellCount=Math.ceil(D/q),this.yCellCount=Math.ceil(J/q);for(var ne=0;nethis.width||K<0||J>this.height)return de?!1:[];var we=[];if(D<=0&&J<=0&&this.width<=q&&this.height<=K){if(de)return!0;for(var Ue=0;Ue0:we}},Li.prototype._queryCircle=function(D,J,q,K,de){var ne=D-q,we=D+q,Ue=J-q,ft=J+q;if(we<0||ne>this.width||ft<0||Ue>this.height)return K?!1:[];var Xt=[],hr={hitTest:K,circle:{x:D,y:J,radius:q},seenUids:{box:{},circle:{}}};return this._forEachCell(ne,Ue,we,ft,this._queryCellCircle,Xt,hr,de),K?Xt.length>0:Xt},Li.prototype.query=function(D,J,q,K,de){return this._query(D,J,q,K,!1,de)},Li.prototype.hitTest=function(D,J,q,K,de){return this._query(D,J,q,K,!0,de)},Li.prototype.hitTestCircle=function(D,J,q,K){return this._queryCircle(D,J,q,!0,K)},Li.prototype._queryCell=function(D,J,q,K,de,ne,we,Ue){var ft=we.seenUids,Xt=this.boxCells[de];if(Xt!==null)for(var hr=this.bboxes,qt=0,Ve=Xt;qt=hr[at+0]&&K>=hr[at+1]&&(!Ue||Ue(this.boxKeys[Qe]))){if(we.hitTest)return ne.push(!0),!0;ne.push({key:this.boxKeys[Qe],x1:hr[at],y1:hr[at+1],x2:hr[at+2],y2:hr[at+3]})}}}var Ct=this.circleCells[de];if(Ct!==null)for(var Ot=this.circles,Rt=0,Bt=Ct;Rtwe*we+Ue*Ue},Li.prototype._circleAndRectCollide=function(D,J,q,K,de,ne,we){var Ue=(ne-K)/2,ft=Math.abs(D-(K+Ue));if(ft>Ue+q)return!1;var Xt=(we-de)/2,hr=Math.abs(J-(de+Xt));if(hr>Xt+q)return!1;if(ft<=Ue||hr<=Xt)return!0;var qt=ft-Ue,Ve=hr-Xt;return qt*qt+Ve*Ve<=q*q};function _n(Y,D,J,q,K){var de=i.create();return D?(i.scale(de,de,[1/K,1/K,1]),J||i.rotateZ(de,de,q.angle)):i.multiply(de,q.labelPlaneMatrix,Y),de}function ya(Y,D,J,q,K){if(D){var de=i.clone(Y);return i.scale(de,de,[K,K,1]),J||i.rotateZ(de,de,-q.angle),de}else return q.glCoordMatrix}function Jn(Y,D){var J=[Y.x,Y.y,0,1];zl(J,J,D);var q=J[3];return{point:new i.Point(J[0]/q,J[1]/q),signedDistanceFromCamera:q}}function Ma(Y,D){return .5+.5*(Y/D)}function _o(Y,D){var J=Y[0]/Y[3],q=Y[1]/Y[3],K=J>=-D[0]&&J<=D[0]&&q>=-D[1]&&q<=D[1];return K}function No(Y,D,J,q,K,de,ne,we){var Ue=q?Y.textSizeData:Y.iconSizeData,ft=i.evaluateSizeForZoom(Ue,J.transform.zoom),Xt=[256/J.width*2+1,256/J.height*2+1],hr=q?Y.text.dynamicLayoutVertexArray:Y.icon.dynamicLayoutVertexArray;hr.clear();for(var qt=Y.lineVertexArray,Ve=q?Y.text.placedSymbolArray:Y.icon.placedSymbolArray,Qe=J.transform.width/J.transform.height,at=!1,Ct=0;Ctde)return{useVertical:!0}}return(Y===i.WritingMode.vertical?D.yJ.x)?{needsFlipping:!0}:null}function ko(Y,D,J,q,K,de,ne,we,Ue,ft,Xt,hr,qt,Ve){var Qe=D/24,at=Y.lineOffsetX*Qe,Ct=Y.lineOffsetY*Qe,Ot;if(Y.numGlyphs>1){var Rt=Y.glyphStartIndex+Y.numGlyphs,Bt=Y.lineStartIndex,Dt=Y.lineStartIndex+Y.lineLength,yt=po(Qe,we,at,Ct,J,Xt,hr,Y,Ue,de,qt);if(!yt)return{notEnoughRoom:!0};var Pt=Jn(yt.first.point,ne).point,ht=Jn(yt.last.point,ne).point;if(q&&!J){var ur=Lo(Y.writingMode,Pt,ht,Ve);if(ur)return ur}Ot=[yt.first];for(var br=Y.glyphStartIndex+1;br0?Ti.point:Ds(hr,fi,Ur,1,K),rn=Lo(Y.writingMode,Ur,gn,Ve);if(rn)return rn}var Ci=Fs(Qe*we.getoffsetX(Y.glyphStartIndex),at,Ct,J,Xt,hr,Y.segment,Y.lineStartIndex,Y.lineStartIndex+Y.lineLength,Ue,de,qt);if(!Ci)return{notEnoughRoom:!0};Ot=[Ci]}for(var Bi=0,Gi=Ot;Bi0?1:-1,Qe=0;q&&(Ve*=-1,Qe=Math.PI),Ve<0&&(Qe+=Math.PI);for(var at=Ve>0?we+ne:we+ne+1,Ct=K,Ot=K,Rt=0,Bt=0,Dt=Math.abs(qt),yt=[];Rt+Bt<=Dt;){if(at+=Ve,at=Ue)return null;if(Ot=Ct,yt.push(Ct),Ct=hr[at],Ct===void 0){var Pt=new i.Point(ft.getx(at),ft.gety(at)),ht=Jn(Pt,Xt);if(ht.signedDistanceFromCamera>0)Ct=hr[at]=ht.point;else{var ur=at-Ve,br=Rt===0?de:new i.Point(ft.getx(ur),ft.gety(ur));Ct=Ds(br,Pt,Ot,Dt-Rt+1,Xt)}}Rt+=Bt,Bt=Ot.dist(Ct)}var Ur=(Dt-Rt)/Bt,Di=Ct.sub(Ot),fi=Di.mult(Ur)._add(Ot);fi._add(Di._unit()._perp()._mult(J*Ve));var Ti=Qe+Math.atan2(Ct.y-Ot.y,Ct.x-Ot.x);return yt.push(fi),{point:fi,angle:Ti,path:yt}}var ll=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function ul(Y,D){for(var J=0;J=1;sn--)Gi.push(Ci.path[sn]);for(var zn=1;zn0){for(var so=Gi[0].clone(),Zo=Gi[0].clone(),ms=1;ms=Ti.x&&Zo.x<=gn.x&&so.y>=Ti.y&&Zo.y<=gn.y?ts=[Gi]:Zo.xgn.x||Zo.ygn.y?ts=[]:ts=i.clipLine([Gi],Ti.x,Ti.y,gn.x,gn.y)}for(var ou=0,Cv=ts;ou=this.screenRightBoundary||Kthis.screenBottomBoundary},il.prototype.isInsideGrid=function(D,J,q,K){return q>=0&&D=0&&J0){var Dt;return this.prevPlacement&&this.prevPlacement.variableOffsets[qt.crossTileID]&&this.prevPlacement.placements[qt.crossTileID]&&this.prevPlacement.placements[qt.crossTileID].text&&(Dt=this.prevPlacement.variableOffsets[qt.crossTileID].anchor),this.variableOffsets[qt.crossTileID]={textOffset:Ct,width:q,height:K,anchor:D,textBoxScale:de,prevAnchor:Dt},this.markUsedJustification(Ve,D,qt,Qe),Ve.allowVerticalPlacement&&(this.markUsedOrientation(Ve,Qe,qt),this.placedOrientations[qt.crossTileID]=Qe),{shift:Ot,placedGlyphBoxes:Rt}}},bs.prototype.placeLayerBucketPart=function(D,J,q){var K=this,de=D.parameters,ne=de.bucket,we=de.layout,Ue=de.posMatrix,ft=de.textLabelPlaneMatrix,Xt=de.labelToScreenMatrix,hr=de.textPixelRatio,qt=de.holdingForFade,Ve=de.collisionBoxArray,Qe=de.partiallyEvaluatedTextSize,at=de.collisionGroup,Ct=we.get("text-optional"),Ot=we.get("icon-optional"),Rt=we.get("text-allow-overlap"),Bt=we.get("icon-allow-overlap"),Dt=we.get("text-rotation-alignment")==="map",yt=we.get("text-pitch-alignment")==="map",Pt=we.get("icon-text-fit")!=="none",ht=we.get("symbol-z-order")==="viewport-y",ur=Rt&&(Bt||!ne.hasIconData()||Ot),br=Bt&&(Rt||!ne.hasTextData()||Ct);!ne.collisionArrays&&Ve&&ne.deserializeCollisionBoxes(Ve);var Ur=function(Ci,Bi){if(!J[Ci.crossTileID]){if(qt){K.placements[Ci.crossTileID]=new zs(!1,!1,!1);return}var Gi=!1,sn=!1,zn=!0,Ja=null,co={box:null,offscreen:null},ts={box:null,offscreen:null},so=null,Zo=null,ms=null,ou=0,Cv=0,Lv=0;Bi.textFeatureIndex?ou=Bi.textFeatureIndex:Ci.useRuntimeCollisionCircles&&(ou=Ci.featureIndex),Bi.verticalTextFeatureIndex&&(Cv=Bi.verticalTextFeatureIndex);var wd=Bi.textBox;if(wd){var Kv=function(vc){var eu=i.WritingMode.horizontal;if(ne.allowVerticalPlacement&&!vc&&K.prevPlacement){var Sd=K.prevPlacement.placedOrientations[Ci.crossTileID];Sd&&(K.placedOrientations[Ci.crossTileID]=Sd,eu=Sd,K.markUsedOrientation(ne,eu,Ci))}return eu},cg=function(vc,eu){if(ne.allowVerticalPlacement&&Ci.numVerticalGlyphVertices>0&&Bi.verticalTextBox)for(var Sd=0,ly=ne.writingModes;Sd0&&(Vd=Vd.filter(function(vc){return vc!==Ad.anchor}),Vd.unshift(Ad.anchor))}var Pv=function(vc,eu,Sd){for(var ly=vc.x2-vc.x1,T1=vc.y2-vc.y1,wu=Ci.textBoxScale,Nx=Pt&&!Bt?eu:null,om={box:[],offscreen:!1},kw=Rt?Vd.length*2:Vd.length,Rv=0;Rv=Vd.length,Ux=K.attemptAnchorPlacement(sm,vc,ly,T1,wu,Dt,yt,hr,Ue,at,Cw,Ci,ne,Sd,Nx);if(Ux&&(om=Ux.placedGlyphBoxes,om&&om.box&&om.box.length)){Gi=!0,Ja=Ux.shift;break}}return om},Jv=function(){return Pv(wd,Bi.iconBox,i.WritingMode.horizontal)},Iv=function(){var vc=Bi.verticalTextBox,eu=co&&co.box&&co.box.length;return ne.allowVerticalPlacement&&!eu&&Ci.numVerticalGlyphVertices>0&&vc?Pv(vc,Bi.verticalIconBox,i.WritingMode.vertical):{box:null,offscreen:null}};cg(Jv,Iv),co&&(Gi=co.box,zn=co.offscreen);var ay=Kv(co&&co.box);if(!Gi&&K.prevPlacement){var fg=K.prevPlacement.variableOffsets[Ci.crossTileID];fg&&(K.variableOffsets[Ci.crossTileID]=fg,K.markUsedJustification(ne,fg.anchor,Ci,ay))}}else{var pp=function(vc,eu){var Sd=K.collisionIndex.placeCollisionBox(vc,Rt,hr,Ue,at.predicate);return Sd&&Sd.box&&Sd.box.length&&(K.markUsedOrientation(ne,eu,Ci),K.placedOrientations[Ci.crossTileID]=eu),Sd},Td=function(){return pp(wd,i.WritingMode.horizontal)},gp=function(){var vc=Bi.verticalTextBox;return ne.allowVerticalPlacement&&Ci.numVerticalGlyphVertices>0&&vc?pp(vc,i.WritingMode.vertical):{box:null,offscreen:null}};cg(Td,gp),Kv(co&&co.box&&co.box.length)}}if(so=co,Gi=so&&so.box&&so.box.length>0,zn=so&&so.offscreen,Ci.useRuntimeCollisionCircles){var oh=ne.text.placedSymbolArray.get(Ci.centerJustifiedTextSymbolIndex),hg=i.evaluateSizeForFeature(ne.textSizeData,Qe,oh),oy=we.get("text-padding"),jh=Ci.collisionCircleDiameter;Zo=K.collisionIndex.placeCollisionCircles(Rt,oh,ne.lineVertexArray,ne.glyphOffsetArray,hg,Ue,ft,Xt,q,yt,at.predicate,jh,oy),Gi=Rt||Zo.circles.length>0&&!Zo.collisionDetected,zn=zn&&Zo.offscreen}if(Bi.iconFeatureIndex&&(Lv=Bi.iconFeatureIndex),Bi.iconBox){var im=function(vc){var eu=Pt&&Ja?nc(vc,Ja.x,Ja.y,Dt,yt,K.transform.angle):vc;return K.collisionIndex.placeCollisionBox(eu,Bt,hr,Ue,at.predicate)};ts&&ts.box&&ts.box.length&&Bi.verticalIconBox?(ms=im(Bi.verticalIconBox),sn=ms.box.length>0):(ms=im(Bi.iconBox),sn=ms.box.length>0),zn=zn&&ms.offscreen}var b1=Ct||Ci.numHorizontalGlyphVertices===0&&Ci.numVerticalGlyphVertices===0,w1=Ot||Ci.numIconVertices===0;if(!b1&&!w1?sn=Gi=sn&&Gi:w1?b1||(sn=sn&&Gi):Gi=sn&&Gi,Gi&&so&&so.box&&(ts&&ts.box&&Cv?K.collisionIndex.insertCollisionBox(so.box,we.get("text-ignore-placement"),ne.bucketInstanceId,Cv,at.ID):K.collisionIndex.insertCollisionBox(so.box,we.get("text-ignore-placement"),ne.bucketInstanceId,ou,at.ID)),sn&&ms&&K.collisionIndex.insertCollisionBox(ms.box,we.get("icon-ignore-placement"),ne.bucketInstanceId,Lv,at.ID),Zo&&(Gi&&K.collisionIndex.insertCollisionCircles(Zo.circles,we.get("text-ignore-placement"),ne.bucketInstanceId,ou,at.ID),q)){var sy=ne.bucketInstanceId,nm=K.collisionCircleArrays[sy];nm===void 0&&(nm=K.collisionCircleArrays[sy]=new Io);for(var am=0;am=0;--fi){var Ti=Di[fi];Ur(ne.symbolInstances.get(Ti),ne.collisionArrays[Ti])}else for(var gn=D.symbolInstanceStart;gn=0&&(ne>=0&&Xt!==ne?D.text.placedSymbolArray.get(Xt).crossTileID=0:D.text.placedSymbolArray.get(Xt).crossTileID=q.crossTileID)}},bs.prototype.markUsedOrientation=function(D,J,q){for(var K=J===i.WritingMode.horizontal||J===i.WritingMode.horizontalOnly?J:0,de=J===i.WritingMode.vertical?J:0,ne=[q.leftJustifiedTextSymbolIndex,q.centerJustifiedTextSymbolIndex,q.rightJustifiedTextSymbolIndex],we=0,Ue=ne;we0||yt>0,Ur=Bt.numIconVertices>0,Di=K.placedOrientations[Bt.crossTileID],fi=Di===i.WritingMode.vertical,Ti=Di===i.WritingMode.horizontal||Di===i.WritingMode.horizontalOnly;if(br){var gn=ac(ur.text),rn=fi?aa:gn;Qe(D.text,Dt,rn);var Ci=Ti?aa:gn;Qe(D.text,yt,Ci);var Bi=ur.text.isHidden();[Bt.rightJustifiedTextSymbolIndex,Bt.centerJustifiedTextSymbolIndex,Bt.leftJustifiedTextSymbolIndex].forEach(function(Lv){Lv>=0&&(D.text.placedSymbolArray.get(Lv).hidden=Bi||fi?1:0)}),Bt.verticalPlacedTextSymbolIndex>=0&&(D.text.placedSymbolArray.get(Bt.verticalPlacedTextSymbolIndex).hidden=Bi||Ti?1:0);var Gi=K.variableOffsets[Bt.crossTileID];Gi&&K.markUsedJustification(D,Gi.anchor,Bt,Di);var sn=K.placedOrientations[Bt.crossTileID];sn&&(K.markUsedJustification(D,"left",Bt,sn),K.markUsedOrientation(D,sn,Bt))}if(Ur){var zn=ac(ur.icon),Ja=!(qt&&Bt.verticalPlacedIconSymbolIndex&&fi);if(Bt.placedIconSymbolIndex>=0){var co=Ja?zn:aa;Qe(D.icon,Bt.numIconVertices,co),D.icon.placedSymbolArray.get(Bt.placedIconSymbolIndex).hidden=ur.icon.isHidden()}if(Bt.verticalPlacedIconSymbolIndex>=0){var ts=Ja?aa:zn;Qe(D.icon,Bt.numVerticalIconVertices,ts),D.icon.placedSymbolArray.get(Bt.verticalPlacedIconSymbolIndex).hidden=ur.icon.isHidden()}}if(D.hasIconCollisionBoxData()||D.hasTextCollisionBoxData()){var so=D.collisionArrays[Rt];if(so){var Zo=new i.Point(0,0);if(so.textBox||so.verticalTextBox){var ms=!0;if(ft){var ou=K.variableOffsets[Pt];ou?(Zo=Su(ou.anchor,ou.width,ou.height,ou.textOffset,ou.textBoxScale),Xt&&Zo._rotate(hr?K.transform.angle:-K.transform.angle)):ms=!1}so.textBox&&Rn(D.textCollisionBox.collisionVertexArray,ur.text.placed,!ms||fi,Zo.x,Zo.y),so.verticalTextBox&&Rn(D.textCollisionBox.collisionVertexArray,ur.text.placed,!ms||Ti,Zo.x,Zo.y)}var Cv=!!(!Ti&&so.verticalIconBox);so.iconBox&&Rn(D.iconCollisionBox.collisionVertexArray,ur.icon.placed,Cv,qt?Zo.x:0,qt?Zo.y:0),so.verticalIconBox&&Rn(D.iconCollisionBox.collisionVertexArray,ur.icon.placed,!Cv,qt?Zo.x:0,qt?Zo.y:0)}}},Ct=0;CtD},bs.prototype.setStale=function(){this.stale=!0};function Rn(Y,D,J,q,K){Y.emplaceBack(D?1:0,J?1:0,q||0,K||0),Y.emplaceBack(D?1:0,J?1:0,q||0,K||0),Y.emplaceBack(D?1:0,J?1:0,q||0,K||0),Y.emplaceBack(D?1:0,J?1:0,q||0,K||0)}var _a=Math.pow(2,25),Vu=Math.pow(2,24),Ol=Math.pow(2,17),xo=Math.pow(2,16),Yl=Math.pow(2,9),Ns=Math.pow(2,8),Hl=Math.pow(2,1);function ac(Y){if(Y.opacity===0&&!Y.placed)return 0;if(Y.opacity===1&&Y.placed)return 4294967295;var D=Y.placed?1:0,J=Math.floor(Y.opacity*127);return J*_a+D*Vu+J*Ol+D*xo+J*Yl+D*Ns+J*Hl+D}var aa=0,Oo=function(D){this._sortAcrossTiles=D.layout.get("symbol-z-order")!=="viewport-y"&&D.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};Oo.prototype.continuePlacement=function(D,J,q,K,de){for(var ne=this._bucketParts;this._currentTileIndex2};this._currentPlacementIndex>=0;){var we=D[this._currentPlacementIndex],Ue=J[we],ft=this.placement.collisionIndex.transform.zoom;if(Ue.type==="symbol"&&(!Ue.minzoom||Ue.minzoom<=ft)&&(!Ue.maxzoom||Ue.maxzoom>ft)){this._inProgressLayer||(this._inProgressLayer=new Oo(Ue));var Xt=this._inProgressLayer.continuePlacement(q[Ue.source],this.placement,this._showCollisionBoxes,Ue,ne);if(Xt)return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},qo.prototype.commit=function(D){return this.placement.commit(D),this.placement};var ql=512/i.EXTENT/2,Pc=function(D,J,q){this.tileID=D,this.indexedSymbolInstances={},this.bucketInstanceId=q;for(var K=0;KD.overscaledZ)for(var ft in Ue){var Xt=Ue[ft];Xt.tileID.isChildOf(D)&&Xt.findMatches(J.symbolInstances,D,ne)}else{var hr=D.scaledTo(Number(we)),qt=Ue[hr.key];qt&&qt.findMatches(J.symbolInstances,D,ne)}}for(var Ve=0;Ve0)throw new Error("Unimplemented: "+ne.map(function(we){return we.command}).join(", ")+".");return de.forEach(function(we){we.command!=="setTransition"&&K[we.command].apply(K,we.args)}),this.stylesheet=q,!0},D.prototype.addImage=function(q,K){if(this.getImage(q))return this.fire(new i.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(q,K),this._afterImageUpdated(q)},D.prototype.updateImage=function(q,K){this.imageManager.updateImage(q,K)},D.prototype.getImage=function(q){return this.imageManager.getImage(q)},D.prototype.removeImage=function(q){if(!this.getImage(q))return this.fire(new i.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(q),this._afterImageUpdated(q)},D.prototype._afterImageUpdated=function(q){this._availableImages=this.imageManager.listImages(),this._changedImages[q]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new i.Event("data",{dataType:"style"}))},D.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},D.prototype.addSource=function(q,K,de){var ne=this;if(de===void 0&&(de={}),this._checkLoaded(),this.sourceCaches[q]!==void 0)throw new Error("There is already a source with this ID");if(!K.type)throw new Error("The type property must be defined, but only the following properties were given: "+Object.keys(K).join(", ")+".");var we=["vector","raster","geojson","video","image"],Ue=we.indexOf(K.type)>=0;if(!(Ue&&this._validate(i.validateStyle.source,"sources."+q,K,null,de))){this.map&&this.map._collectResourceTiming&&(K.collectResourceTiming=!0);var ft=this.sourceCaches[q]=new ri(q,K,this.dispatcher);ft.style=this,ft.setEventedParent(this,function(){return{isSourceLoaded:ne.loaded(),source:ft.serialize(),sourceId:q}}),ft.onAdd(this.map),this._changed=!0}},D.prototype.removeSource=function(q){if(this._checkLoaded(),this.sourceCaches[q]===void 0)throw new Error("There is no source with this ID");for(var K in this._layers)if(this._layers[K].source===q)return this.fire(new i.ErrorEvent(new Error('Source "'+q+'" cannot be removed while layer "'+K+'" is using it.')));var de=this.sourceCaches[q];delete this.sourceCaches[q],delete this._updatedSources[q],de.fire(new i.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:q})),de.setEventedParent(null),de.clearTiles(),de.onRemove&&de.onRemove(this.map),this._changed=!0},D.prototype.setGeoJSONSourceData=function(q,K){this._checkLoaded();var de=this.sourceCaches[q].getSource();de.setData(K),this._changed=!0},D.prototype.getSource=function(q){return this.sourceCaches[q]&&this.sourceCaches[q].getSource()},D.prototype.addLayer=function(q,K,de){de===void 0&&(de={}),this._checkLoaded();var ne=q.id;if(this.getLayer(ne)){this.fire(new i.ErrorEvent(new Error('Layer with id "'+ne+'" already exists on this map')));return}var we;if(q.type==="custom"){if(pl(this,i.validateCustomStyleLayer(q)))return;we=i.createStyleLayer(q)}else{if(typeof q.source=="object"&&(this.addSource(ne,q.source),q=i.clone$1(q),q=i.extend(q,{source:ne})),this._validate(i.validateStyle.layer,"layers."+ne,q,{arrayIndex:-1},de))return;we=i.createStyleLayer(q),this._validateLayer(we),we.setEventedParent(this,{layer:{id:ne}}),this._serializedLayers[we.id]=we.serialize()}var Ue=K?this._order.indexOf(K):this._order.length;if(K&&Ue===-1){this.fire(new i.ErrorEvent(new Error('Layer with id "'+K+'" does not exist on this map.')));return}if(this._order.splice(Ue,0,ne),this._layerOrderChanged=!0,this._layers[ne]=we,this._removedLayers[ne]&&we.source&&we.type!=="custom"){var ft=this._removedLayers[ne];delete this._removedLayers[ne],ft.type!==we.type?this._updatedSources[we.source]="clear":(this._updatedSources[we.source]="reload",this.sourceCaches[we.source].pause())}this._updateLayer(we),we.onAdd&&we.onAdd(this.map)},D.prototype.moveLayer=function(q,K){this._checkLoaded(),this._changed=!0;var de=this._layers[q];if(!de){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be moved.")));return}if(q!==K){var ne=this._order.indexOf(q);this._order.splice(ne,1);var we=K?this._order.indexOf(K):this._order.length;if(K&&we===-1){this.fire(new i.ErrorEvent(new Error('Layer with id "'+K+'" does not exist on this map.')));return}this._order.splice(we,0,q),this._layerOrderChanged=!0}},D.prototype.removeLayer=function(q){this._checkLoaded();var K=this._layers[q];if(!K){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be removed.")));return}K.setEventedParent(null);var de=this._order.indexOf(q);this._order.splice(de,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[q]=K,delete this._layers[q],delete this._serializedLayers[q],delete this._updatedLayers[q],delete this._updatedPaintProps[q],K.onRemove&&K.onRemove(this.map)},D.prototype.getLayer=function(q){return this._layers[q]},D.prototype.hasLayer=function(q){return q in this._layers},D.prototype.setLayerZoomRange=function(q,K,de){this._checkLoaded();var ne=this.getLayer(q);if(!ne){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot have zoom extent.")));return}ne.minzoom===K&&ne.maxzoom===de||(K!=null&&(ne.minzoom=K),de!=null&&(ne.maxzoom=de),this._updateLayer(ne))},D.prototype.setFilter=function(q,K,de){de===void 0&&(de={}),this._checkLoaded();var ne=this.getLayer(q);if(!ne){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be filtered.")));return}if(!i.deepEqual(ne.filter,K)){if(K==null){ne.filter=void 0,this._updateLayer(ne);return}this._validate(i.validateStyle.filter,"layers."+ne.id+".filter",K,null,de)||(ne.filter=i.clone$1(K),this._updateLayer(ne))}},D.prototype.getFilter=function(q){return i.clone$1(this.getLayer(q).filter)},D.prototype.setLayoutProperty=function(q,K,de,ne){ne===void 0&&(ne={}),this._checkLoaded();var we=this.getLayer(q);if(!we){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be styled.")));return}i.deepEqual(we.getLayoutProperty(K),de)||(we.setLayoutProperty(K,de,ne),this._updateLayer(we))},D.prototype.getLayoutProperty=function(q,K){var de=this.getLayer(q);if(!de){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style.")));return}return de.getLayoutProperty(K)},D.prototype.setPaintProperty=function(q,K,de,ne){ne===void 0&&(ne={}),this._checkLoaded();var we=this.getLayer(q);if(!we){this.fire(new i.ErrorEvent(new Error("The layer '"+q+"' does not exist in the map's style and cannot be styled.")));return}if(!i.deepEqual(we.getPaintProperty(K),de)){var Ue=we.setPaintProperty(K,de,ne);Ue&&this._updateLayer(we),this._changed=!0,this._updatedPaintProps[q]=!0}},D.prototype.getPaintProperty=function(q,K){return this.getLayer(q).getPaintProperty(K)},D.prototype.setFeatureState=function(q,K){this._checkLoaded();var de=q.source,ne=q.sourceLayer,we=this.sourceCaches[de];if(we===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+de+"' does not exist in the map's style.")));return}var Ue=we.getSource().type;if(Ue==="geojson"&&ne){this.fire(new i.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));return}if(Ue==="vector"&&!ne){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}q.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),we.setFeatureState(ne,q.id,K)},D.prototype.removeFeatureState=function(q,K){this._checkLoaded();var de=q.source,ne=this.sourceCaches[de];if(ne===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+de+"' does not exist in the map's style.")));return}var we=ne.getSource().type,Ue=we==="vector"?q.sourceLayer:void 0;if(we==="vector"&&!Ue){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}if(K&&typeof q.id!="string"&&typeof q.id!="number"){this.fire(new i.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));return}ne.removeFeatureState(Ue,q.id,K)},D.prototype.getFeatureState=function(q){this._checkLoaded();var K=q.source,de=q.sourceLayer,ne=this.sourceCaches[K];if(ne===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+K+"' does not exist in the map's style.")));return}var we=ne.getSource().type;if(we==="vector"&&!de){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}return q.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),ne.getFeatureState(de,q.id)},D.prototype.getTransition=function(){return i.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},D.prototype.serialize=function(){return i.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:i.mapObject(this.sourceCaches,function(q){return q.serialize()}),layers:this._serializeLayers(this._order)},function(q){return q!==void 0})},D.prototype._updateLayer=function(q){this._updatedLayers[q.id]=!0,q.source&&!this._updatedSources[q.source]&&this.sourceCaches[q.source].getSource().type!=="raster"&&(this._updatedSources[q.source]="reload",this.sourceCaches[q.source].pause()),this._changed=!0},D.prototype._flattenAndSortRenderedFeatures=function(q){for(var K=this,de=function(Ti){return K._layers[Ti].type==="fill-extrusion"},ne={},we=[],Ue=this._order.length-1;Ue>=0;Ue--){var ft=this._order[Ue];if(de(ft)){ne[ft]=Ue;for(var Xt=0,hr=q;Xt=0;Rt--){var Bt=this._order[Rt];if(de(Bt))for(var Dt=we.length-1;Dt>=0;Dt--){var yt=we[Dt].feature;if(ne[yt.layer.id]>16,we>>16],u_pixel_coord_lower:[ne&65535,we&65535]}}function uf(Y,D,J,q){var K=J.imageManager.getPattern(Y.from.toString()),de=J.imageManager.getPattern(Y.to.toString()),ne=J.imageManager.getPixelSize(),we=ne.width,Ue=ne.height,ft=Math.pow(2,q.tileID.overscaledZ),Xt=q.tileSize*Math.pow(2,J.transform.tileZoom)/ft,hr=Xt*(q.tileID.canonical.x+q.tileID.wrap*ft),qt=Xt*q.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:K.tl,u_pattern_br_a:K.br,u_pattern_tl_b:de.tl,u_pattern_br_b:de.br,u_texsize:[we,Ue],u_mix:D.t,u_pattern_size_a:K.displaySize,u_pattern_size_b:de.displaySize,u_scale_a:D.fromScale,u_scale_b:D.toScale,u_tile_units_to_pixels:1/As(q,1,J.transform.tileZoom),u_pixel_coord_upper:[hr>>16,qt>>16],u_pixel_coord_lower:[hr&65535,qt&65535]}}var Xf=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_lightpos:new i.Uniform3f(Y,D.u_lightpos),u_lightintensity:new i.Uniform1f(Y,D.u_lightintensity),u_lightcolor:new i.Uniform3f(Y,D.u_lightcolor),u_vertical_gradient:new i.Uniform1f(Y,D.u_vertical_gradient),u_opacity:new i.Uniform1f(Y,D.u_opacity)}},Wl=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_lightpos:new i.Uniform3f(Y,D.u_lightpos),u_lightintensity:new i.Uniform1f(Y,D.u_lightintensity),u_lightcolor:new i.Uniform3f(Y,D.u_lightcolor),u_vertical_gradient:new i.Uniform1f(Y,D.u_vertical_gradient),u_height_factor:new i.Uniform1f(Y,D.u_height_factor),u_image:new i.Uniform1i(Y,D.u_image),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade),u_opacity:new i.Uniform1f(Y,D.u_opacity)}},ah=function(Y,D,J,q){var K=D.style.light,de=K.properties.get("position"),ne=[de.x,de.y,de.z],we=i.create$1();K.properties.get("anchor")==="viewport"&&i.fromRotation(we,-D.transform.angle),i.transformMat3(ne,ne,we);var Ue=K.properties.get("color");return{u_matrix:Y,u_lightpos:ne,u_lightintensity:K.properties.get("intensity"),u_lightcolor:[Ue.r,Ue.g,Ue.b],u_vertical_gradient:+J,u_opacity:q}},Zu=function(Y,D,J,q,K,de,ne){return i.extend(ah(Y,D,J,q),Xu(de,D,ne),{u_height_factor:-Math.pow(2,K.overscaledZ)/ne.tileSize/8})},Oc=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Tc=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_image:new i.Uniform1i(Y,D.u_image),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade)}},wl=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_world:new i.Uniform2f(Y,D.u_world)}},vu=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_world:new i.Uniform2f(Y,D.u_world),u_image:new i.Uniform1i(Y,D.u_image),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade)}},qc=function(Y){return{u_matrix:Y}},cf=function(Y,D,J,q){return i.extend(qc(Y),Xu(J,D,q))},fc=function(Y,D){return{u_matrix:Y,u_world:D}},Bc=function(Y,D,J,q,K){return i.extend(cf(Y,D,J,q),{u_world:K})},At=function(Y,D){return{u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_scale_with_map:new i.Uniform1i(Y,D.u_scale_with_map),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_extrude_scale:new i.Uniform2f(Y,D.u_extrude_scale),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Wt=function(Y,D,J,q){var K=Y.transform,de,ne;if(q.paint.get("circle-pitch-alignment")==="map"){var we=As(J,1,K.zoom);de=!0,ne=[we,we]}else de=!1,ne=K.pixelsToGLUnits;return{u_camera_to_center_distance:K.cameraToCenterDistance,u_scale_with_map:+(q.paint.get("circle-pitch-scale")==="map"),u_matrix:Y.translatePosMatrix(D.posMatrix,J,q.paint.get("circle-translate"),q.paint.get("circle-translate-anchor")),u_pitch_with_map:+de,u_device_pixel_ratio:i.browser.devicePixelRatio,u_extrude_scale:ne}},Cr=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pixels_to_tile_units:new i.Uniform1f(Y,D.u_pixels_to_tile_units),u_extrude_scale:new i.Uniform2f(Y,D.u_extrude_scale),u_overscale_factor:new i.Uniform1f(Y,D.u_overscale_factor)}},Ar=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_inv_matrix:new i.UniformMatrix4f(Y,D.u_inv_matrix),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_viewport_size:new i.Uniform2f(Y,D.u_viewport_size)}},Kr=function(Y,D,J){var q=As(J,1,D.zoom),K=Math.pow(2,D.zoom-J.tileID.overscaledZ),de=J.tileID.overscaleFactor();return{u_matrix:Y,u_camera_to_center_distance:D.cameraToCenterDistance,u_pixels_to_tile_units:q,u_extrude_scale:[D.pixelsToGLUnits[0]/(q*K),D.pixelsToGLUnits[1]/(q*K)],u_overscale_factor:de}},ki=function(Y,D,J){return{u_matrix:Y,u_inv_matrix:D,u_camera_to_center_distance:J.cameraToCenterDistance,u_viewport_size:[J.width,J.height]}},Xi=function(Y,D){return{u_color:new i.UniformColor(Y,D.u_color),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_overlay:new i.Uniform1i(Y,D.u_overlay),u_overlay_scale:new i.Uniform1f(Y,D.u_overlay_scale)}},dn=function(Y,D,J){return J===void 0&&(J=1),{u_matrix:Y,u_color:D,u_overlay:0,u_overlay_scale:J}},wn=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Nn=function(Y){return{u_matrix:Y}},Yi=function(Y,D){return{u_extrude_scale:new i.Uniform1f(Y,D.u_extrude_scale),u_intensity:new i.Uniform1f(Y,D.u_intensity),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Qi=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_world:new i.Uniform2f(Y,D.u_world),u_image:new i.Uniform1i(Y,D.u_image),u_color_ramp:new i.Uniform1i(Y,D.u_color_ramp),u_opacity:new i.Uniform1f(Y,D.u_opacity)}},on=function(Y,D,J,q){return{u_matrix:Y,u_extrude_scale:As(D,1,J),u_intensity:q}},Fi=function(Y,D,J,q){var K=i.create();i.ortho(K,0,Y.width,Y.height,0,0,1);var de=Y.context.gl;return{u_matrix:K,u_world:[de.drawingBufferWidth,de.drawingBufferHeight],u_image:J,u_color_ramp:q,u_opacity:D.paint.get("heatmap-opacity")}},$n=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_image:new i.Uniform1i(Y,D.u_image),u_latrange:new i.Uniform2f(Y,D.u_latrange),u_light:new i.Uniform2f(Y,D.u_light),u_shadow:new i.UniformColor(Y,D.u_shadow),u_highlight:new i.UniformColor(Y,D.u_highlight),u_accent:new i.UniformColor(Y,D.u_accent)}},Ca=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_image:new i.Uniform1i(Y,D.u_image),u_dimension:new i.Uniform2f(Y,D.u_dimension),u_zoom:new i.Uniform1f(Y,D.u_zoom),u_unpack:new i.Uniform4f(Y,D.u_unpack)}},Ra=function(Y,D,J){var q=J.paint.get("hillshade-shadow-color"),K=J.paint.get("hillshade-highlight-color"),de=J.paint.get("hillshade-accent-color"),ne=J.paint.get("hillshade-illumination-direction")*(Math.PI/180);J.paint.get("hillshade-illumination-anchor")==="viewport"&&(ne-=Y.transform.angle);var we=!Y.options.moving;return{u_matrix:Y.transform.calculatePosMatrix(D.tileID.toUnwrapped(),we),u_image:0,u_latrange:Na(Y,D.tileID),u_light:[J.paint.get("hillshade-exaggeration"),ne],u_shadow:q,u_highlight:K,u_accent:de}},La=function(Y,D){var J=D.stride,q=i.create();return i.ortho(q,0,i.EXTENT,-i.EXTENT,0,0,1),i.translate(q,q,[0,-i.EXTENT,0]),{u_matrix:q,u_image:1,u_dimension:[J,J],u_zoom:Y.overscaledZ,u_unpack:D.getUnpackVector()}};function Na(Y,D){var J=Math.pow(2,D.canonical.z),q=D.canonical.y;return[new i.MercatorCoordinate(0,q/J).toLngLat().lat,new i.MercatorCoordinate(0,(q+1)/J).toLngLat().lat]}var Yn=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels)}},Dn=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels),u_image:new i.Uniform1i(Y,D.u_image),u_image_height:new i.Uniform1f(Y,D.u_image_height)}},Ka=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_image:new i.Uniform1i(Y,D.u_image),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade)}},bo=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels),u_patternscale_a:new i.Uniform2f(Y,D.u_patternscale_a),u_patternscale_b:new i.Uniform2f(Y,D.u_patternscale_b),u_sdfgamma:new i.Uniform1f(Y,D.u_sdfgamma),u_image:new i.Uniform1i(Y,D.u_image),u_tex_y_a:new i.Uniform1f(Y,D.u_tex_y_a),u_tex_y_b:new i.Uniform1f(Y,D.u_tex_y_b),u_mix:new i.Uniform1f(Y,D.u_mix)}},Xo=function(Y,D,J){var q=Y.transform;return{u_matrix:ml(Y,D,J),u_ratio:1/As(D,1,q.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_units_to_pixels:[1/q.pixelsToGLUnits[0],1/q.pixelsToGLUnits[1]]}},Ss=function(Y,D,J,q){return i.extend(Xo(Y,D,J),{u_image:0,u_image_height:q})},as=function(Y,D,J,q){var K=Y.transform,de=Ho(D,K);return{u_matrix:ml(Y,D,J),u_texsize:D.imageAtlasTexture.size,u_ratio:1/As(D,1,K.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_image:0,u_scale:[de,q.fromScale,q.toScale],u_fade:q.t,u_units_to_pixels:[1/K.pixelsToGLUnits[0],1/K.pixelsToGLUnits[1]]}},ws=function(Y,D,J,q,K){var de=Y.transform,ne=Y.lineAtlas,we=Ho(D,de),Ue=J.layout.get("line-cap")==="round",ft=ne.getDash(q.from,Ue),Xt=ne.getDash(q.to,Ue),hr=ft.width*K.fromScale,qt=Xt.width*K.toScale;return i.extend(Xo(Y,D,J),{u_patternscale_a:[we/hr,-ft.height/2],u_patternscale_b:[we/qt,-Xt.height/2],u_sdfgamma:ne.width/(Math.min(hr,qt)*256*i.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:ft.y,u_tex_y_b:Xt.y,u_mix:K.t})};function Ho(Y,D){return 1/As(Y,1,D.tileZoom)}function ml(Y,D,J){return Y.translatePosMatrix(D.tileID.posMatrix,D,J.paint.get("line-translate"),J.paint.get("line-translate-anchor"))}var Ws=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_tl_parent:new i.Uniform2f(Y,D.u_tl_parent),u_scale_parent:new i.Uniform1f(Y,D.u_scale_parent),u_buffer_scale:new i.Uniform1f(Y,D.u_buffer_scale),u_fade_t:new i.Uniform1f(Y,D.u_fade_t),u_opacity:new i.Uniform1f(Y,D.u_opacity),u_image0:new i.Uniform1i(Y,D.u_image0),u_image1:new i.Uniform1i(Y,D.u_image1),u_brightness_low:new i.Uniform1f(Y,D.u_brightness_low),u_brightness_high:new i.Uniform1f(Y,D.u_brightness_high),u_saturation_factor:new i.Uniform1f(Y,D.u_saturation_factor),u_contrast_factor:new i.Uniform1f(Y,D.u_contrast_factor),u_spin_weights:new i.Uniform3f(Y,D.u_spin_weights)}},Ls=function(Y,D,J,q,K){return{u_matrix:Y,u_tl_parent:D,u_scale_parent:J,u_buffer_scale:1,u_fade_t:q.mix,u_opacity:q.opacity*K.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:K.paint.get("raster-brightness-min"),u_brightness_high:K.paint.get("raster-brightness-max"),u_saturation_factor:ys(K.paint.get("raster-saturation")),u_contrast_factor:no(K.paint.get("raster-contrast")),u_spin_weights:va(K.paint.get("raster-hue-rotate"))}};function va(Y){Y*=Math.PI/180;var D=Math.sin(Y),J=Math.cos(Y);return[(2*J+1)/3,(-Math.sqrt(3)*D-J+1)/3,(Math.sqrt(3)*D-J+1)/3]}function no(Y){return Y>0?1/(1-Y):1+Y}function ys(Y){return Y>0?1-1/(1.001-Y):-Y}var rs=function(Y,D){return{u_is_size_zoom_constant:new i.Uniform1i(Y,D.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,D.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,D.u_size_t),u_size:new i.Uniform1f(Y,D.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,D.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,D.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,D.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,D.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,D.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,D.u_coord_matrix),u_is_text:new i.Uniform1i(Y,D.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_texture:new i.Uniform1i(Y,D.u_texture)}},$l=function(Y,D){return{u_is_size_zoom_constant:new i.Uniform1i(Y,D.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,D.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,D.u_size_t),u_size:new i.Uniform1f(Y,D.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,D.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,D.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,D.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,D.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,D.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,D.u_coord_matrix),u_is_text:new i.Uniform1i(Y,D.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_texture:new i.Uniform1i(Y,D.u_texture),u_gamma_scale:new i.Uniform1f(Y,D.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(Y,D.u_is_halo)}},Cu=function(Y,D){return{u_is_size_zoom_constant:new i.Uniform1i(Y,D.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,D.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,D.u_size_t),u_size:new i.Uniform1f(Y,D.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,D.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,D.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,D.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,D.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,D.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,D.u_coord_matrix),u_is_text:new i.Uniform1i(Y,D.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_texsize_icon:new i.Uniform2f(Y,D.u_texsize_icon),u_texture:new i.Uniform1i(Y,D.u_texture),u_texture_icon:new i.Uniform1i(Y,D.u_texture_icon),u_gamma_scale:new i.Uniform1f(Y,D.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(Y,D.u_is_halo)}},Yu=function(Y,D,J,q,K,de,ne,we,Ue,ft){var Xt=K.transform;return{u_is_size_zoom_constant:+(Y==="constant"||Y==="source"),u_is_size_feature_constant:+(Y==="constant"||Y==="camera"),u_size_t:D?D.uSizeT:0,u_size:D?D.uSize:0,u_camera_to_center_distance:Xt.cameraToCenterDistance,u_pitch:Xt.pitch/360*2*Math.PI,u_rotate_symbol:+J,u_aspect_ratio:Xt.width/Xt.height,u_fade_change:K.options.fadeDuration?K.symbolFadeChange:1,u_matrix:de,u_label_plane_matrix:ne,u_coord_matrix:we,u_is_text:+Ue,u_pitch_with_map:+q,u_texsize:ft,u_texture:0}},Nc=function(Y,D,J,q,K,de,ne,we,Ue,ft,Xt){var hr=K.transform;return i.extend(Yu(Y,D,J,q,K,de,ne,we,Ue,ft),{u_gamma_scale:q?Math.cos(hr._pitch)*hr.cameraToCenterDistance:1,u_device_pixel_ratio:i.browser.devicePixelRatio,u_is_halo:+Xt})},pu=function(Y,D,J,q,K,de,ne,we,Ue,ft){return i.extend(Nc(Y,D,J,q,K,de,ne,we,!0,Ue,!0),{u_texsize_icon:ft,u_texture_icon:1})},Uc=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_opacity:new i.Uniform1f(Y,D.u_opacity),u_color:new i.UniformColor(Y,D.u_color)}},xu=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_opacity:new i.Uniform1f(Y,D.u_opacity),u_image:new i.Uniform1i(Y,D.u_image),u_pattern_tl_a:new i.Uniform2f(Y,D.u_pattern_tl_a),u_pattern_br_a:new i.Uniform2f(Y,D.u_pattern_br_a),u_pattern_tl_b:new i.Uniform2f(Y,D.u_pattern_tl_b),u_pattern_br_b:new i.Uniform2f(Y,D.u_pattern_br_b),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_mix:new i.Uniform1f(Y,D.u_mix),u_pattern_size_a:new i.Uniform2f(Y,D.u_pattern_size_a),u_pattern_size_b:new i.Uniform2f(Y,D.u_pattern_size_b),u_scale_a:new i.Uniform1f(Y,D.u_scale_a),u_scale_b:new i.Uniform1f(Y,D.u_scale_b),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_tile_units_to_pixels:new i.Uniform1f(Y,D.u_tile_units_to_pixels)}},Ac=function(Y,D,J){return{u_matrix:Y,u_opacity:D,u_color:J}},Ua=function(Y,D,J,q,K,de){return i.extend(uf(q,de,J,K),{u_matrix:Y,u_opacity:D})},oo={fillExtrusion:Xf,fillExtrusionPattern:Wl,fill:Oc,fillPattern:Tc,fillOutline:wl,fillOutlinePattern:vu,circle:At,collisionBox:Cr,collisionCircle:Ar,debug:Xi,clippingMask:wn,heatmap:Yi,heatmapTexture:Qi,hillshade:$n,hillshadePrepare:Ca,line:Yn,lineGradient:Dn,linePattern:Ka,lineSDF:bo,raster:Ws,symbolIcon:rs,symbolSDF:$l,symbolTextAndIcon:Cu,background:Uc,backgroundPattern:xu},Vc;function hc(Y,D,J,q,K,de,ne){for(var we=Y.context,Ue=we.gl,ft=Y.useProgram("collisionBox"),Xt=[],hr=0,qt=0,Ve=0;Ve0){var Dt=i.create(),yt=Ot;i.mul(Dt,Ct.placementInvProjMatrix,Y.transform.glCoordMatrix),i.mul(Dt,Dt,Ct.placementViewportMatrix),Xt.push({circleArray:Bt,circleOffset:qt,transform:yt,invTransform:Dt}),hr+=Bt.length/4,qt=hr}Rt&&ft.draw(we,Ue.LINES,wi.disabled,Fn.disabled,Y.colorModeForRenderPass(),Er.disabled,Kr(Ot,Y.transform,at),J.id,Rt.layoutVertexBuffer,Rt.indexBuffer,Rt.segments,null,Y.transform.zoom,null,null,Rt.collisionVertexBuffer)}}if(!(!ne||!Xt.length)){var Pt=Y.useProgram("collisionCircle"),ht=new i.StructArrayLayout2f1f2i16;ht.resize(hr*4),ht._trim();for(var ur=0,br=0,Ur=Xt;br=0&&(Qe[Ct.associatedIconIndex]={shiftedAnchor:Ti,angle:gn})}}if(Xt){Ve.clear();for(var Ci=Y.icon.placedSymbolArray,Bi=0;Bi0){var ne=i.browser.now(),we=(ne-Y.timeAdded)/de,Ue=D?(ne-D.timeAdded)/de:-1,ft=J.getSource(),Xt=K.coveringZoomLevel({tileSize:ft.tileSize,roundZoom:ft.roundZoom}),hr=!D||Math.abs(D.tileID.overscaledZ-Xt)>Math.abs(Y.tileID.overscaledZ-Xt),qt=hr&&Y.refreshedUponExpiration?1:i.clamp(hr?we:1-Ue,0,1);return Y.refreshedUponExpiration&&we>=1&&(Y.refreshedUponExpiration=!1),D?{opacity:1,mix:1-qt}:{opacity:qt,mix:0}}else return{opacity:1,mix:0}}function tr(Y,D,J){var q=J.paint.get("background-color"),K=J.paint.get("background-opacity");if(K!==0){var de=Y.context,ne=de.gl,we=Y.transform,Ue=we.tileSize,ft=J.paint.get("background-pattern");if(!Y.isPatternMissing(ft)){var Xt=!ft&&q.a===1&&K===1&&Y.opaquePassEnabledForLayer()?"opaque":"translucent";if(Y.renderPass===Xt){var hr=Fn.disabled,qt=Y.depthModeForSublayer(0,Xt==="opaque"?wi.ReadWrite:wi.ReadOnly),Ve=Y.colorModeForRenderPass(),Qe=Y.useProgram(ft?"backgroundPattern":"background"),at=we.coveringTiles({tileSize:Ue});ft&&(de.activeTexture.set(ne.TEXTURE0),Y.imageManager.bind(Y.context));for(var Ct=J.getCrossfadeParameters(),Ot=0,Rt=at;Ot "+J.overscaledZ);var Ot=Ct+" "+Ve+"kb";$a(Y,Ot),ne.draw(q,K.TRIANGLES,we,Ue,wt.alphaBlended,Er.disabled,dn(de,i.Color.transparent,at),Xt,Y.debugBuffer,Y.quadTriangleIndexBuffer,Y.debugSegments)}function $a(Y,D){Y.initDebugOverlayCanvas();var J=Y.debugOverlayCanvas,q=Y.context.gl,K=Y.debugOverlayCanvas.getContext("2d");K.clearRect(0,0,J.width,J.height),K.shadowColor="white",K.shadowBlur=2,K.lineWidth=1.5,K.strokeStyle="white",K.textBaseline="top",K.font="bold 36px Open Sans, sans-serif",K.fillText(D,5,5),K.strokeText(D,5,5),Y.debugOverlayTexture.update(J),Y.debugOverlayTexture.bind(q.LINEAR,q.CLAMP_TO_EDGE)}function Co(Y,D,J){var q=Y.context,K=J.implementation;if(Y.renderPass==="offscreen"){var de=K.prerender;de&&(Y.setCustomLayerDefaults(),q.setColorMode(Y.colorModeForRenderPass()),de.call(K,q.gl,Y.transform.customLayerMatrix()),q.setDirty(),Y.setBaseState())}else if(Y.renderPass==="translucent"){Y.setCustomLayerDefaults(),q.setColorMode(Y.colorModeForRenderPass()),q.setStencilMode(Fn.disabled);var ne=K.renderingMode==="3d"?new wi(Y.context.gl.LEQUAL,wi.ReadWrite,Y.depthRangeFor3D):Y.depthModeForSublayer(0,wi.ReadOnly);q.setDepthMode(ne),K.render(q.gl,Y.transform.customLayerMatrix()),q.setDirty(),Y.setBaseState(),q.bindFramebuffer.set(null)}}var Qa={symbol:w,circle:ot,heatmap:Tt,line:Ir,fill:ve,"fill-extrusion":De,hillshade:et,raster:Ft,background:tr,debug:Ta,custom:Co},mo=function(D,J){this.context=new Xr(D),this.transform=J,this._tileTextures={},this.setup(),this.numSublayers=ri.maxUnderzooming+ri.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Uf,this.gpuTimers={}};mo.prototype.resize=function(D,J){if(this.width=D*i.browser.devicePixelRatio,this.height=J*i.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var q=0,K=this.style._order;q256&&this.clearStencil(),q.setColorMode(wt.disabled),q.setDepthMode(wi.disabled);var de=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var ne=0,we=J;ne256&&this.clearStencil();var D=this.nextStencilID++,J=this.context.gl;return new Fn({func:J.NOTEQUAL,mask:255},D,255,J.KEEP,J.KEEP,J.REPLACE)},mo.prototype.stencilModeForClipping=function(D){var J=this.context.gl;return new Fn({func:J.EQUAL,mask:255},this._tileClippingMaskIDs[D.key],0,J.KEEP,J.KEEP,J.REPLACE)},mo.prototype.stencilConfigForOverlap=function(D){var J,q=this.context.gl,K=D.sort(function(ft,Xt){return Xt.overscaledZ-ft.overscaledZ}),de=K[K.length-1].overscaledZ,ne=K[0].overscaledZ-de+1;if(ne>1){this.currentStencilSource=void 0,this.nextStencilID+ne>256&&this.clearStencil();for(var we={},Ue=0;Ue=0;this.currentLayer--){var Dt=this.style._layers[K[this.currentLayer]],yt=de[Dt.source],Pt=Ue[Dt.source];this._renderTileClippingMasks(Dt,Pt),this.renderLayer(this,yt,Dt,Pt)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer0?J.pop():null},mo.prototype.isPatternMissing=function(D){if(!D)return!1;if(!D.from||!D.to)return!0;var J=this.imageManager.getPattern(D.from.toString()),q=this.imageManager.getPattern(D.to.toString());return!J||!q},mo.prototype.useProgram=function(D,J){this.cache=this.cache||{};var q=""+D+(J?J.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[q]||(this.cache[q]=new Rf(this.context,D,wf[D],J,oo[D],this._showOverdrawInspector)),this.cache[q]},mo.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},mo.prototype.setBaseState=function(){var D=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(D.FUNC_ADD)},mo.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=i.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var D=this.context.gl;this.debugOverlayTexture=new i.Texture(this.context,this.debugOverlayCanvas,D.RGBA)}},mo.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var Bo=function(D,J){this.points=D,this.planes=J};Bo.fromInvProjectionMatrix=function(D,J,q){var K=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]],de=Math.pow(2,q),ne=K.map(function(ft){return i.transformMat4([],ft,D)}).map(function(ft){return i.scale$1([],ft,1/ft[3]/J*de)}),we=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]],Ue=we.map(function(ft){var Xt=i.sub([],ne[ft[0]],ne[ft[1]]),hr=i.sub([],ne[ft[2]],ne[ft[1]]),qt=i.normalize([],i.cross([],Xt,hr)),Ve=-i.dot(qt,ne[ft[1]]);return qt.concat(Ve)});return new Bo(ne,Ue)};var Ps=function(D,J){this.min=D,this.max=J,this.center=i.scale$2([],i.add([],this.min,this.max),.5)};Ps.prototype.quadrant=function(D){for(var J=[D%2===0,D<2],q=i.clone$2(this.min),K=i.clone$2(this.max),de=0;de=0;if(ne===0)return 0;ne!==J.length&&(q=!1)}if(q)return 2;for(var Ue=0;Ue<3;Ue++){for(var ft=Number.MAX_VALUE,Xt=-Number.MAX_VALUE,hr=0;hrthis.max[Ue]-this.min[Ue])return 0}return 1};var Ts=function(D,J,q,K){if(D===void 0&&(D=0),J===void 0&&(J=0),q===void 0&&(q=0),K===void 0&&(K=0),isNaN(D)||D<0||isNaN(J)||J<0||isNaN(q)||q<0||isNaN(K)||K<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=D,this.bottom=J,this.left=q,this.right=K};Ts.prototype.interpolate=function(D,J,q){return J.top!=null&&D.top!=null&&(this.top=i.number(D.top,J.top,q)),J.bottom!=null&&D.bottom!=null&&(this.bottom=i.number(D.bottom,J.bottom,q)),J.left!=null&&D.left!=null&&(this.left=i.number(D.left,J.left,q)),J.right!=null&&D.right!=null&&(this.right=i.number(D.right,J.right,q)),this},Ts.prototype.getCenter=function(D,J){var q=i.clamp((this.left+D-this.right)/2,0,D),K=i.clamp((this.top+J-this.bottom)/2,0,J);return new i.Point(q,K)},Ts.prototype.equals=function(D){return this.top===D.top&&this.bottom===D.bottom&&this.left===D.left&&this.right===D.right},Ts.prototype.clone=function(){return new Ts(this.top,this.bottom,this.left,this.right)},Ts.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var wo=function(D,J,q,K,de){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=de===void 0?!0:de,this._minZoom=D||0,this._maxZoom=J||22,this._minPitch=q==null?0:q,this._maxPitch=K==null?60:K,this.setMaxBounds(),this.width=0,this.height=0,this._center=new i.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Ts,this._posMatrixCache={},this._alignedPosMatrixCache={}},To={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};wo.prototype.clone=function(){var D=new wo(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return D.tileSize=this.tileSize,D.latRange=this.latRange,D.width=this.width,D.height=this.height,D._center=this._center,D.zoom=this.zoom,D.angle=this.angle,D._fov=this._fov,D._pitch=this._pitch,D._unmodified=this._unmodified,D._edgeInsets=this._edgeInsets.clone(),D._calcMatrices(),D},To.minZoom.get=function(){return this._minZoom},To.minZoom.set=function(Y){this._minZoom!==Y&&(this._minZoom=Y,this.zoom=Math.max(this.zoom,Y))},To.maxZoom.get=function(){return this._maxZoom},To.maxZoom.set=function(Y){this._maxZoom!==Y&&(this._maxZoom=Y,this.zoom=Math.min(this.zoom,Y))},To.minPitch.get=function(){return this._minPitch},To.minPitch.set=function(Y){this._minPitch!==Y&&(this._minPitch=Y,this.pitch=Math.max(this.pitch,Y))},To.maxPitch.get=function(){return this._maxPitch},To.maxPitch.set=function(Y){this._maxPitch!==Y&&(this._maxPitch=Y,this.pitch=Math.min(this.pitch,Y))},To.renderWorldCopies.get=function(){return this._renderWorldCopies},To.renderWorldCopies.set=function(Y){Y===void 0?Y=!0:Y===null&&(Y=!1),this._renderWorldCopies=Y},To.worldSize.get=function(){return this.tileSize*this.scale},To.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},To.size.get=function(){return new i.Point(this.width,this.height)},To.bearing.get=function(){return-this.angle/Math.PI*180},To.bearing.set=function(Y){var D=-i.wrap(Y,-180,180)*Math.PI/180;this.angle!==D&&(this._unmodified=!1,this.angle=D,this._calcMatrices(),this.rotationMatrix=i.create$2(),i.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},To.pitch.get=function(){return this._pitch/Math.PI*180},To.pitch.set=function(Y){var D=i.clamp(Y,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==D&&(this._unmodified=!1,this._pitch=D,this._calcMatrices())},To.fov.get=function(){return this._fov/Math.PI*180},To.fov.set=function(Y){Y=Math.max(.01,Math.min(60,Y)),this._fov!==Y&&(this._unmodified=!1,this._fov=Y/180*Math.PI,this._calcMatrices())},To.zoom.get=function(){return this._zoom},To.zoom.set=function(Y){var D=Math.min(Math.max(Y,this.minZoom),this.maxZoom);this._zoom!==D&&(this._unmodified=!1,this._zoom=D,this.scale=this.zoomScale(D),this.tileZoom=Math.floor(D),this.zoomFraction=D-this.tileZoom,this._constrain(),this._calcMatrices())},To.center.get=function(){return this._center},To.center.set=function(Y){Y.lat===this._center.lat&&Y.lng===this._center.lng||(this._unmodified=!1,this._center=Y,this._constrain(),this._calcMatrices())},To.padding.get=function(){return this._edgeInsets.toJSON()},To.padding.set=function(Y){this._edgeInsets.equals(Y)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,Y,1),this._calcMatrices())},To.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},wo.prototype.isPaddingEqual=function(D){return this._edgeInsets.equals(D)},wo.prototype.interpolatePadding=function(D,J,q){this._unmodified=!1,this._edgeInsets.interpolate(D,J,q),this._constrain(),this._calcMatrices()},wo.prototype.coveringZoomLevel=function(D){var J=(D.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/D.tileSize));return Math.max(0,J)},wo.prototype.getVisibleUnwrappedCoordinates=function(D){var J=[new i.UnwrappedTileID(0,D)];if(this._renderWorldCopies)for(var q=this.pointCoordinate(new i.Point(0,0)),K=this.pointCoordinate(new i.Point(this.width,0)),de=this.pointCoordinate(new i.Point(this.width,this.height)),ne=this.pointCoordinate(new i.Point(0,this.height)),we=Math.floor(Math.min(q.x,K.x,de.x,ne.x)),Ue=Math.floor(Math.max(q.x,K.x,de.x,ne.x)),ft=1,Xt=we-ft;Xt<=Ue+ft;Xt++)Xt!==0&&J.push(new i.UnwrappedTileID(Xt,D));return J},wo.prototype.coveringTiles=function(D){var J=this.coveringZoomLevel(D),q=J;if(D.minzoom!==void 0&&JD.maxzoom&&(J=D.maxzoom);var K=i.MercatorCoordinate.fromLngLat(this.center),de=Math.pow(2,J),ne=[de*K.x,de*K.y,0],we=Bo.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,J),Ue=D.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(Ue=J);var ft=3,Xt=function(fi){return{aabb:new Ps([fi*de,0,0],[(fi+1)*de,de,0]),zoom:0,x:0,y:0,wrap:fi,fullyVisible:!1}},hr=[],qt=[],Ve=J,Qe=D.reparseOverscaled?q:J;if(this._renderWorldCopies)for(var at=1;at<=3;at++)hr.push(Xt(-at)),hr.push(Xt(at));for(hr.push(Xt(0));hr.length>0;){var Ct=hr.pop(),Ot=Ct.x,Rt=Ct.y,Bt=Ct.fullyVisible;if(!Bt){var Dt=Ct.aabb.intersects(we);if(Dt===0)continue;Bt=Dt===2}var yt=Ct.aabb.distanceX(ne),Pt=Ct.aabb.distanceY(ne),ht=Math.max(Math.abs(yt),Math.abs(Pt)),ur=ft+(1<ur&&Ct.zoom>=Ue){qt.push({tileID:new i.OverscaledTileID(Ct.zoom===Ve?Qe:Ct.zoom,Ct.wrap,Ct.zoom,Ot,Rt),distanceSq:i.sqrLen([ne[0]-.5-Ot,ne[1]-.5-Rt])});continue}for(var br=0;br<4;br++){var Ur=(Ot<<1)+br%2,Di=(Rt<<1)+(br>>1);hr.push({aabb:Ct.aabb.quadrant(br),zoom:Ct.zoom+1,x:Ur,y:Di,wrap:Ct.wrap,fullyVisible:Bt})}}return qt.sort(function(fi,Ti){return fi.distanceSq-Ti.distanceSq}).map(function(fi){return fi.tileID})},wo.prototype.resize=function(D,J){this.width=D,this.height=J,this.pixelsToGLUnits=[2/D,-2/J],this._constrain(),this._calcMatrices()},To.unmodified.get=function(){return this._unmodified},wo.prototype.zoomScale=function(D){return Math.pow(2,D)},wo.prototype.scaleZoom=function(D){return Math.log(D)/Math.LN2},wo.prototype.project=function(D){var J=i.clamp(D.lat,-this.maxValidLatitude,this.maxValidLatitude);return new i.Point(i.mercatorXfromLng(D.lng)*this.worldSize,i.mercatorYfromLat(J)*this.worldSize)},wo.prototype.unproject=function(D){return new i.MercatorCoordinate(D.x/this.worldSize,D.y/this.worldSize).toLngLat()},To.point.get=function(){return this.project(this.center)},wo.prototype.setLocationAtPoint=function(D,J){var q=this.pointCoordinate(J),K=this.pointCoordinate(this.centerPoint),de=this.locationCoordinate(D),ne=new i.MercatorCoordinate(de.x-(q.x-K.x),de.y-(q.y-K.y));this.center=this.coordinateLocation(ne),this._renderWorldCopies&&(this.center=this.center.wrap())},wo.prototype.locationPoint=function(D){return this.coordinatePoint(this.locationCoordinate(D))},wo.prototype.pointLocation=function(D){return this.coordinateLocation(this.pointCoordinate(D))},wo.prototype.locationCoordinate=function(D){return i.MercatorCoordinate.fromLngLat(D)},wo.prototype.coordinateLocation=function(D){return D.toLngLat()},wo.prototype.pointCoordinate=function(D){var J=0,q=[D.x,D.y,0,1],K=[D.x,D.y,1,1];i.transformMat4(q,q,this.pixelMatrixInverse),i.transformMat4(K,K,this.pixelMatrixInverse);var de=q[3],ne=K[3],we=q[0]/de,Ue=K[0]/ne,ft=q[1]/de,Xt=K[1]/ne,hr=q[2]/de,qt=K[2]/ne,Ve=hr===qt?0:(J-hr)/(qt-hr);return new i.MercatorCoordinate(i.number(we,Ue,Ve)/this.worldSize,i.number(ft,Xt,Ve)/this.worldSize)},wo.prototype.coordinatePoint=function(D){var J=[D.x*this.worldSize,D.y*this.worldSize,0,1];return i.transformMat4(J,J,this.pixelMatrix),new i.Point(J[0]/J[3],J[1]/J[3])},wo.prototype.getBounds=function(){return new i.LngLatBounds().extend(this.pointLocation(new i.Point(0,0))).extend(this.pointLocation(new i.Point(this.width,0))).extend(this.pointLocation(new i.Point(this.width,this.height))).extend(this.pointLocation(new i.Point(0,this.height)))},wo.prototype.getMaxBounds=function(){return!this.latRange||this.latRange.length!==2||!this.lngRange||this.lngRange.length!==2?null:new i.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]])},wo.prototype.setMaxBounds=function(D){D?(this.lngRange=[D.getWest(),D.getEast()],this.latRange=[D.getSouth(),D.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},wo.prototype.calculatePosMatrix=function(D,J){J===void 0&&(J=!1);var q=D.key,K=J?this._alignedPosMatrixCache:this._posMatrixCache;if(K[q])return K[q];var de=D.canonical,ne=this.worldSize/this.zoomScale(de.z),we=de.x+Math.pow(2,de.z)*D.wrap,Ue=i.identity(new Float64Array(16));return i.translate(Ue,Ue,[we*ne,de.y*ne,0]),i.scale(Ue,Ue,[ne/i.EXTENT,ne/i.EXTENT,1]),i.multiply(Ue,J?this.alignedProjMatrix:this.projMatrix,Ue),K[q]=new Float32Array(Ue),K[q]},wo.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},wo.prototype._constrain=function(){if(!(!this.center||!this.width||!this.height||this._constraining)){this._constraining=!0;var D=-90,J=90,q=-180,K=180,de,ne,we,Ue,ft=this.size,Xt=this._unmodified;if(this.latRange){var hr=this.latRange;D=i.mercatorYfromLat(hr[1])*this.worldSize,J=i.mercatorYfromLat(hr[0])*this.worldSize,de=J-DJ&&(Ue=J-Ct)}if(this.lngRange){var Ot=Ve.x,Rt=ft.x/2;Ot-RtK&&(we=K-Rt)}(we!==void 0||Ue!==void 0)&&(this.center=this.unproject(new i.Point(we!==void 0?we:Ve.x,Ue!==void 0?Ue:Ve.y))),this._unmodified=Xt,this._constraining=!1}},wo.prototype._calcMatrices=function(){if(this.height){var D=this._fov/2,J=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(D)*this.height;var q=Math.PI/2+this._pitch,K=this._fov*(.5+J.y/this.height),de=Math.sin(K)*this.cameraToCenterDistance/Math.sin(i.clamp(Math.PI-q-K,.01,Math.PI-.01)),ne=this.point,we=ne.x,Ue=ne.y,ft=Math.cos(Math.PI/2-this._pitch)*de+this.cameraToCenterDistance,Xt=ft*1.01,hr=this.height/50,qt=new Float64Array(16);i.perspective(qt,this._fov,this.width/this.height,hr,Xt),qt[8]=-J.x*2/this.width,qt[9]=J.y*2/this.height,i.scale(qt,qt,[1,-1,1]),i.translate(qt,qt,[0,0,-this.cameraToCenterDistance]),i.rotateX(qt,qt,this._pitch),i.rotateZ(qt,qt,this.angle),i.translate(qt,qt,[-we,-Ue,0]),this.mercatorMatrix=i.scale([],qt,[this.worldSize,this.worldSize,this.worldSize]),i.scale(qt,qt,[1,1,i.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=qt,this.invProjMatrix=i.invert([],this.projMatrix);var Ve=this.width%2/2,Qe=this.height%2/2,at=Math.cos(this.angle),Ct=Math.sin(this.angle),Ot=we-Math.round(we)+at*Ve+Ct*Qe,Rt=Ue-Math.round(Ue)+at*Qe+Ct*Ve,Bt=new Float64Array(qt);if(i.translate(Bt,Bt,[Ot>.5?Ot-1:Ot,Rt>.5?Rt-1:Rt,0]),this.alignedProjMatrix=Bt,qt=i.create(),i.scale(qt,qt,[this.width/2,-this.height/2,1]),i.translate(qt,qt,[1,-1,0]),this.labelPlaneMatrix=qt,qt=i.create(),i.scale(qt,qt,[1,-1,1]),i.translate(qt,qt,[-1,-1,0]),i.scale(qt,qt,[2/this.width,2/this.height,1]),this.glCoordMatrix=qt,this.pixelMatrix=i.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),qt=i.invert(new Float64Array(16),this.pixelMatrix),!qt)throw new Error("failed to invert matrix");this.pixelMatrixInverse=qt,this._posMatrixCache={},this._alignedPosMatrixCache={}}},wo.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var D=this.pointCoordinate(new i.Point(0,0)),J=[D.x*this.worldSize,D.y*this.worldSize,0,1],q=i.transformMat4(J,J,this.pixelMatrix);return q[3]/this.cameraToCenterDistance},wo.prototype.getCameraPoint=function(){var D=this._pitch,J=Math.tan(D)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new i.Point(0,J))},wo.prototype.getCameraQueryGeometry=function(D){var J=this.getCameraPoint();if(D.length===1)return[D[0],J];for(var q=J.x,K=J.y,de=J.x,ne=J.y,we=0,Ue=D;we=3&&!D.some(function(q){return isNaN(q)})){var J=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(D[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+D[2],+D[1]],zoom:+D[0],bearing:J,pitch:+(D[4]||0)}),!0}return!1},Ul.prototype._updateHashUnthrottled=function(){var D=i.window.location.href.replace(/(#.+)?$/,this.getHashString());try{i.window.history.replaceState(i.window.history.state,null,D)}catch(J){}};var Lu={linearity:.3,easing:i.bezier(0,0,.3,1)},au=i.extend({deceleration:2500,maxSpeed:1400},Lu),Js=i.extend({deceleration:20,maxSpeed:1400},Lu),Ql=i.extend({deceleration:1e3,maxSpeed:360},Lu),dc=i.extend({deceleration:1e3,maxSpeed:90},Lu),Tl=function(D){this._map=D,this.clear()};Tl.prototype.clear=function(){this._inertiaBuffer=[]},Tl.prototype.record=function(D){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:i.browser.now(),settings:D})},Tl.prototype._drainInertiaBuffer=function(){for(var D=this._inertiaBuffer,J=i.browser.now(),q=160;D.length>0&&J-D[0].time>q;)D.shift()},Tl.prototype._onMoveEnd=function(D){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var J={zoom:0,bearing:0,pitch:0,pan:new i.Point(0,0),pinchAround:void 0,around:void 0},q=0,K=this._inertiaBuffer;q=this._clickTolerance||this._map.fire(new se(D.type,this._map,D))},He.prototype.dblclick=function(D){return this._firePreventable(new se(D.type,this._map,D))},He.prototype.mouseover=function(D){this._map.fire(new se(D.type,this._map,D))},He.prototype.mouseout=function(D){this._map.fire(new se(D.type,this._map,D))},He.prototype.touchstart=function(D){return this._firePreventable(new Te(D.type,this._map,D))},He.prototype.touchmove=function(D){this._map.fire(new Te(D.type,this._map,D))},He.prototype.touchend=function(D){this._map.fire(new Te(D.type,this._map,D))},He.prototype.touchcancel=function(D){this._map.fire(new Te(D.type,this._map,D))},He.prototype._firePreventable=function(D){if(this._map.fire(D),D.defaultPrevented)return{}},He.prototype.isEnabled=function(){return!0},He.prototype.isActive=function(){return!1},He.prototype.enable=function(){},He.prototype.disable=function(){};var Ye=function(D){this._map=D};Ye.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},Ye.prototype.mousemove=function(D){this._map.fire(new se(D.type,this._map,D))},Ye.prototype.mousedown=function(){this._delayContextMenu=!0},Ye.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new se("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},Ye.prototype.contextmenu=function(D){this._delayContextMenu?this._contextMenuEvent=D:this._map.fire(new se(D.type,this._map,D)),this._map.listens("contextmenu")&&D.preventDefault()},Ye.prototype.isEnabled=function(){return!0},Ye.prototype.isActive=function(){return!1},Ye.prototype.enable=function(){},Ye.prototype.disable=function(){};var kt=function(D,J){this._map=D,this._el=D.getCanvasContainer(),this._container=D.getContainer(),this._clickTolerance=J.clickTolerance||1};kt.prototype.isEnabled=function(){return!!this._enabled},kt.prototype.isActive=function(){return!!this._active},kt.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},kt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},kt.prototype.mousedown=function(D,J){this.isEnabled()&&D.shiftKey&&D.button===0&&(o.disableDrag(),this._startPos=this._lastPos=J,this._active=!0)},kt.prototype.mousemoveWindow=function(D,J){if(this._active){var q=J;if(!(this._lastPos.equals(q)||!this._box&&q.dist(this._startPos)this.numTouches)&&(this.aborted=!0),!this.aborted&&(this.startTime===void 0&&(this.startTime=D.timeStamp),q.length===this.numTouches&&(this.centroid=jt(J),this.touches=nt(q,J)))},qr.prototype.touchmove=function(D,J,q){if(!(this.aborted||!this.centroid)){var K=nt(q,J);for(var de in this.touches){var ne=this.touches[de],we=K[de];(!we||we.dist(ne)>Hr)&&(this.aborted=!0)}}},qr.prototype.touchend=function(D,J,q){if((!this.centroid||D.timeStamp-this.startTime>yr)&&(this.aborted=!0),q.length===0){var K=!this.aborted&&this.centroid;if(this.reset(),K)return K}};var _i=function(D){this.singleTap=new qr(D),this.numTaps=D.numTaps,this.reset()};_i.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},_i.prototype.touchstart=function(D,J,q){this.singleTap.touchstart(D,J,q)},_i.prototype.touchmove=function(D,J,q){this.singleTap.touchmove(D,J,q)},_i.prototype.touchend=function(D,J,q){var K=this.singleTap.touchend(D,J,q);if(K){var de=D.timeStamp-this.lastTime0&&(this._active=!0);var K=nt(q,J),de=new i.Point(0,0),ne=new i.Point(0,0),we=0;for(var Ue in K){var ft=K[Ue],Xt=this._touches[Ue];Xt&&(de._add(ft),ne._add(ft.sub(Xt)),we++,K[Ue]=ft)}if(this._touches=K,!(weMath.abs(Y.x)}var Gn=100,Ha=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.reset=function(){Y.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},D.prototype._start=function(q){this._lastPoints=q,Xs(q[0].sub(q[1]))&&(this._valid=!1)},D.prototype._move=function(q,K,de){var ne=q[0].sub(this._lastPoints[0]),we=q[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(ne,we,de.timeStamp),!!this._valid){this._lastPoints=q,this._active=!0;var Ue=(ne.y+we.y)/2,ft=-.5;return{pitchDelta:Ue*ft}}},D.prototype.gestureBeginsVertically=function(q,K,de){if(this._valid!==void 0)return this._valid;var ne=2,we=q.mag()>=ne,Ue=K.mag()>=ne;if(!(!we&&!Ue)){if(!we||!Ue)return this._firstMove===void 0&&(this._firstMove=de),de-this._firstMove0==K.y>0;return Xs(q)&&Xs(K)&&ft}},D}(ia),Fo={panStep:100,bearingStep:15,pitchStep:10},Uo=function(){var D=Fo;this._panStep=D.panStep,this._bearingStep=D.bearingStep,this._pitchStep=D.pitchStep,this._rotationDisabled=!1};Uo.prototype.reset=function(){this._active=!1},Uo.prototype.keydown=function(D){var J=this;if(!(D.altKey||D.ctrlKey||D.metaKey)){var q=0,K=0,de=0,ne=0,we=0;switch(D.keyCode){case 61:case 107:case 171:case 187:q=1;break;case 189:case 109:case 173:q=-1;break;case 37:D.shiftKey?K=-1:(D.preventDefault(),ne=-1);break;case 39:D.shiftKey?K=1:(D.preventDefault(),ne=1);break;case 38:D.shiftKey?de=1:(D.preventDefault(),we=-1);break;case 40:D.shiftKey?de=-1:(D.preventDefault(),we=1);break;default:return}return this._rotationDisabled&&(K=0,de=0),{cameraAnimation:function(Ue){var ft=Ue.getZoom();Ue.easeTo({duration:300,easeId:"keyboardHandler",easing:$s,zoom:q?Math.round(ft)+q*(D.shiftKey?2:1):ft,bearing:Ue.getBearing()+K*J._bearingStep,pitch:Ue.getPitch()+de*J._pitchStep,offset:[-ne*J._panStep,-we*J._panStep],center:Ue.getCenter()},{originalEvent:D})}}}},Uo.prototype.enable=function(){this._enabled=!0},Uo.prototype.disable=function(){this._enabled=!1,this.reset()},Uo.prototype.isEnabled=function(){return this._enabled},Uo.prototype.isActive=function(){return this._active},Uo.prototype.disableRotation=function(){this._rotationDisabled=!0},Uo.prototype.enableRotation=function(){this._rotationDisabled=!1};function $s(Y){return Y*(2-Y)}var Sl=4.000244140625,bu=1/100,dl=1/450,Sc=2,Me=function(D,J){this._map=D,this._el=D.getCanvasContainer(),this._handler=J,this._delta=0,this._defaultZoomRate=bu,this._wheelZoomRate=dl,i.bindAll(["_onTimeout"],this)};Me.prototype.setZoomRate=function(D){this._defaultZoomRate=D},Me.prototype.setWheelZoomRate=function(D){this._wheelZoomRate=D},Me.prototype.isEnabled=function(){return!!this._enabled},Me.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},Me.prototype.isZooming=function(){return!!this._zooming},Me.prototype.enable=function(D){this.isEnabled()||(this._enabled=!0,this._aroundCenter=D&&D.around==="center")},Me.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Me.prototype.wheel=function(D){if(this.isEnabled()){var J=D.deltaMode===i.window.WheelEvent.DOM_DELTA_LINE?D.deltaY*40:D.deltaY,q=i.browser.now(),K=q-(this._lastWheelEventTime||0);this._lastWheelEventTime=q,J!==0&&J%Sl===0?this._type="wheel":J!==0&&Math.abs(J)<4?this._type="trackpad":K>400?(this._type=null,this._lastValue=J,this._timeout=setTimeout(this._onTimeout,40,D)):this._type||(this._type=Math.abs(K*J)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,J+=this._lastValue)),D.shiftKey&&J&&(J=J/4),this._type&&(this._lastWheelEvent=D,this._delta-=J,this._active||this._start(D)),D.preventDefault()}},Me.prototype._onTimeout=function(D){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(D)},Me.prototype._start=function(D){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var J=o.mousePos(this._el,D);this._around=i.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(J)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},Me.prototype.renderFrame=function(){var D=this;if(this._frameId&&(this._frameId=null,!!this.isActive())){var J=this._map.transform;if(this._delta!==0){var q=this._type==="wheel"&&Math.abs(this._delta)>Sl?this._wheelZoomRate:this._defaultZoomRate,K=Sc/(1+Math.exp(-Math.abs(this._delta*q)));this._delta<0&&K!==0&&(K=1/K);var de=typeof this._targetZoom=="number"?J.zoomScale(this._targetZoom):J.scale;this._targetZoom=Math.min(J.maxZoom,Math.max(J.minZoom,J.scaleZoom(de*K))),this._type==="wheel"&&(this._startZoom=J.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var ne=typeof this._targetZoom=="number"?this._targetZoom:J.zoom,we=this._startZoom,Ue=this._easing,ft=!1,Xt;if(this._type==="wheel"&&we&&Ue){var hr=Math.min((i.browser.now()-this._lastWheelEventTime)/200,1),qt=Ue(hr);Xt=i.number(we,ne,qt),hr<1?this._frameId||(this._frameId=!0):ft=!0}else Xt=ne,ft=!0;return this._active=!0,ft&&(this._active=!1,this._finishTimeout=setTimeout(function(){D._zooming=!1,D._handler._triggerRenderFrame(),delete D._targetZoom,delete D._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!ft,zoomDelta:Xt-J.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},Me.prototype._smoothOutEasing=function(D){var J=i.ease;if(this._prevEase){var q=this._prevEase,K=(i.browser.now()-q.start)/q.duration,de=q.easing(K+.01)-q.easing(K),ne=.27/Math.sqrt(de*de+1e-4)*.01,we=Math.sqrt(.27*.27-ne*ne);J=i.bezier(ne,we,.25,1)}return this._prevEase={start:i.browser.now(),duration:D,easing:J},J},Me.prototype.reset=function(){this._active=!1};var bt=function(D,J){this._clickZoom=D,this._tapZoom=J};bt.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},bt.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},bt.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},bt.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var zt=function(){this.reset()};zt.prototype.reset=function(){this._active=!1},zt.prototype.dblclick=function(D,J){return D.preventDefault(),{cameraAnimation:function(q){q.easeTo({duration:300,zoom:q.getZoom()+(D.shiftKey?-1:1),around:q.unproject(J)},{originalEvent:D})}}},zt.prototype.enable=function(){this._enabled=!0},zt.prototype.disable=function(){this._enabled=!1,this.reset()},zt.prototype.isEnabled=function(){return this._enabled},zt.prototype.isActive=function(){return this._active};var Rr=function(){this._tap=new _i({numTouches:1,numTaps:1}),this.reset()};Rr.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},Rr.prototype.touchstart=function(D,J,q){this._swipePoint||(this._tapTime&&D.timeStamp-this._tapTime>gr&&this.reset(),this._tapTime?q.length>0&&(this._swipePoint=J[0],this._swipeTouch=q[0].identifier):this._tap.touchstart(D,J,q))},Rr.prototype.touchmove=function(D,J,q){if(!this._tapTime)this._tap.touchmove(D,J,q);else if(this._swipePoint){if(q[0].identifier!==this._swipeTouch)return;var K=J[0],de=K.y-this._swipePoint.y;return this._swipePoint=K,D.preventDefault(),this._active=!0,{zoomDelta:de/128}}},Rr.prototype.touchend=function(D,J,q){if(this._tapTime)this._swipePoint&&q.length===0&&this.reset();else{var K=this._tap.touchend(D,J,q);K&&(this._tapTime=D.timeStamp)}},Rr.prototype.touchcancel=function(){this.reset()},Rr.prototype.enable=function(){this._enabled=!0},Rr.prototype.disable=function(){this._enabled=!1,this.reset()},Rr.prototype.isEnabled=function(){return this._enabled},Rr.prototype.isActive=function(){return this._active};var jr=function(D,J,q){this._el=D,this._mousePan=J,this._touchPan=q};jr.prototype.enable=function(D){this._inertiaOptions=D||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},jr.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},jr.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},jr.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var Nr=function(D,J,q){this._pitchWithRotate=D.pitchWithRotate,this._mouseRotate=J,this._mousePitch=q};Nr.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},Nr.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},Nr.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},Nr.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var Gr=function(D,J,q,K){this._el=D,this._touchZoom=J,this._touchRotate=q,this._tapDragZoom=K,this._rotationDisabled=!1,this._enabled=!0};Gr.prototype.enable=function(D){this._touchZoom.enable(D),this._rotationDisabled||this._touchRotate.enable(D),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},Gr.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},Gr.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},Gr.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},Gr.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},Gr.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var mi=function(Y){return Y.zoom||Y.drag||Y.pitch||Y.rotate},Ui=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D}(i.Event);function qi(Y){return Y.panDelta&&Y.panDelta.mag()||Y.zoomDelta||Y.bearingDelta||Y.pitchDelta}var Ei=function(D,J){this._map=D,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Tl(D),this._bearingSnap=J.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(J),i.bindAll(["handleEvent","handleWindowEvent"],this);var q=this._el;this._listeners=[[q,"touchstart",{passive:!0}],[q,"touchmove",{passive:!1}],[q,"touchend",void 0],[q,"touchcancel",void 0],[q,"mousedown",void 0],[q,"mousemove",void 0],[q,"mouseup",void 0],[i.window.document,"mousemove",{capture:!0}],[i.window.document,"mouseup",void 0],[q,"mouseover",void 0],[q,"mouseout",void 0],[q,"dblclick",void 0],[q,"click",void 0],[q,"keydown",{capture:!1}],[q,"keyup",void 0],[q,"wheel",{passive:!1}],[q,"contextmenu",void 0],[i.window,"blur",void 0]];for(var K=0,de=this._listeners;Kwe?Math.min(2,yt):Math.max(.5,yt),fi=Math.pow(Di,1-br),Ti=ne.unproject(Bt.add(Dt.mult(br*fi)).mult(Ur));ne.setLocationAtPoint(ne.renderWorldCopies?Ti.wrap():Ti,Ct)}de._fireMoveEvents(K)},function(br){de._afterEase(K,br)},q),this},D.prototype._prepareEase=function(q,K,de){de===void 0&&(de={}),this._moving=!0,!K&&!de.moving&&this.fire(new i.Event("movestart",q)),this._zooming&&!de.zooming&&this.fire(new i.Event("zoomstart",q)),this._rotating&&!de.rotating&&this.fire(new i.Event("rotatestart",q)),this._pitching&&!de.pitching&&this.fire(new i.Event("pitchstart",q))},D.prototype._fireMoveEvents=function(q){this.fire(new i.Event("move",q)),this._zooming&&this.fire(new i.Event("zoom",q)),this._rotating&&this.fire(new i.Event("rotate",q)),this._pitching&&this.fire(new i.Event("pitch",q))},D.prototype._afterEase=function(q,K){if(!(this._easeId&&K&&this._easeId===K)){delete this._easeId;var de=this._zooming,ne=this._rotating,we=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,de&&this.fire(new i.Event("zoomend",q)),ne&&this.fire(new i.Event("rotateend",q)),we&&this.fire(new i.Event("pitchend",q)),this.fire(new i.Event("moveend",q))}},D.prototype.flyTo=function(q,K){var de=this;if(!q.essential&&i.browser.prefersReducedMotion){var ne=i.pick(q,["center","zoom","bearing","pitch","around"]);return this.jumpTo(ne,K)}this.stop(),q=i.extend({offset:[0,0],speed:1.2,curve:1.42,easing:i.ease},q);var we=this.transform,Ue=this.getZoom(),ft=this.getBearing(),Xt=this.getPitch(),hr=this.getPadding(),qt="zoom"in q?i.clamp(+q.zoom,we.minZoom,we.maxZoom):Ue,Ve="bearing"in q?this._normalizeBearing(q.bearing,ft):ft,Qe="pitch"in q?+q.pitch:Xt,at="padding"in q?q.padding:we.padding,Ct=we.zoomScale(qt-Ue),Ot=i.Point.convert(q.offset),Rt=we.centerPoint.add(Ot),Bt=we.pointLocation(Rt),Dt=i.LngLat.convert(q.center||Bt);this._normalizeCenter(Dt);var yt=we.project(Bt),Pt=we.project(Dt).sub(yt),ht=q.curve,ur=Math.max(we.width,we.height),br=ur/Ct,Ur=Pt.mag();if("minZoom"in q){var Di=i.clamp(Math.min(q.minZoom,Ue,qt),we.minZoom,we.maxZoom),fi=ur/we.zoomScale(Di-Ue);ht=Math.sqrt(fi/Ur*2)}var Ti=ht*ht;function gn(so){var Zo=(br*br-ur*ur+(so?-1:1)*Ti*Ti*Ur*Ur)/(2*(so?br:ur)*Ti*Ur);return Math.log(Math.sqrt(Zo*Zo+1)-Zo)}function rn(so){return(Math.exp(so)-Math.exp(-so))/2}function Ci(so){return(Math.exp(so)+Math.exp(-so))/2}function Bi(so){return rn(so)/Ci(so)}var Gi=gn(0),sn=function(so){return Ci(Gi)/Ci(Gi+ht*so)},zn=function(so){return ur*((Ci(Gi)*Bi(Gi+ht*so)-rn(Gi))/Ti)/Ur},Ja=(gn(1)-Gi)/ht;if(Math.abs(Ur)<1e-6||!isFinite(Ja)){if(Math.abs(ur-br)<1e-6)return this.easeTo(q,K);var co=brq.maxDuration&&(q.duration=0),this._zooming=!0,this._rotating=ft!==Ve,this._pitching=Qe!==Xt,this._padding=!we.isPaddingEqual(at),this._prepareEase(K,!1),this._ease(function(so){var Zo=so*Ja,ms=1/sn(Zo);we.zoom=so===1?qt:Ue+we.scaleZoom(ms),de._rotating&&(we.bearing=i.number(ft,Ve,so)),de._pitching&&(we.pitch=i.number(Xt,Qe,so)),de._padding&&(we.interpolatePadding(hr,at,so),Rt=we.centerPoint.add(Ot));var ou=so===1?Dt:we.unproject(yt.add(Pt.mult(zn(Zo))).mult(ms));we.setLocationAtPoint(we.renderWorldCopies?ou.wrap():ou,Rt),de._fireMoveEvents(K)},function(){return de._afterEase(K)},q),this},D.prototype.isEasing=function(){return!!this._easeFrameId},D.prototype.stop=function(){return this._stop()},D.prototype._stop=function(q,K){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var de=this._onEaseEnd;delete this._onEaseEnd,de.call(this,K)}if(!q){var ne=this.handlers;ne&&ne.stop(!1)}return this},D.prototype._ease=function(q,K,de){de.animate===!1||de.duration===0?(q(1),K()):(this._easeStart=i.browser.now(),this._easeOptions=de,this._onEaseFrame=q,this._onEaseEnd=K,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},D.prototype._renderFrameCallback=function(){var q=Math.min((i.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(q)),q<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},D.prototype._normalizeBearing=function(q,K){q=i.wrap(q,-180,180);var de=Math.abs(q-K);return Math.abs(q-360-K)180?-360:de<-180?360:0}},D}(i.Evented),en=function(D){D===void 0&&(D={}),this.options=D,i.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};en.prototype.getDefaultPosition=function(){return"bottom-right"},en.prototype.onAdd=function(D){var J=this.options&&this.options.compact;return this._map=D,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=o.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=o.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),J&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),J===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},en.prototype.onRemove=function(){o.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0},en.prototype._setElementTitle=function(D,J){var q=this._map._getUIString("AttributionControl."+J);D.title=q,D.setAttribute("aria-label",q)},en.prototype._toggleAttribution=function(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","true"))},en.prototype._updateEditLink=function(){var D=this._editLink;D||(D=this._editLink=this._container.querySelector(".mapbox-improve-map"));var J=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||i.config.ACCESS_TOKEN}];if(D){var q=J.reduce(function(K,de,ne){return de.value&&(K+=de.key+"="+de.value+(ne=0)return!1;return!0});var we=D.join(" | ");we!==this._attribHTML&&(this._attribHTML=we,D.length?(this._innerContainer.innerHTML=we,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},en.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var Wi=function(){i.bindAll(["_updateLogo"],this),i.bindAll(["_updateCompact"],this)};Wi.prototype.onAdd=function(D){this._map=D,this._container=o.create("div","mapboxgl-ctrl");var J=o.create("a","mapboxgl-ctrl-logo");return J.target="_blank",J.rel="noopener nofollow",J.href="https://www.mapbox.com/",J.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),J.setAttribute("rel","noopener nofollow"),this._container.appendChild(J),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},Wi.prototype.onRemove=function(){o.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},Wi.prototype.getDefaultPosition=function(){return"bottom-left"},Wi.prototype._updateLogo=function(D){(!D||D.sourceDataType==="metadata")&&(this._container.style.display=this._logoRequired()?"block":"none")},Wi.prototype._logoRequired=function(){if(this._map.style){var D=this._map.style.sourceCaches;for(var J in D){var q=D[J].getSource();if(q.mapbox_logo)return!0}return!1}},Wi.prototype._updateCompact=function(){var D=this._container.children;if(D.length){var J=D[0];this._map.getCanvasContainer().offsetWidth<250?J.classList.add("mapboxgl-compact"):J.classList.remove("mapboxgl-compact")}};var si=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};si.prototype.add=function(D){var J=++this._id,q=this._queue;return q.push({callback:D,id:J,cancelled:!1}),J},si.prototype.remove=function(D){for(var J=this._currentlyRunning,q=J?this._queue.concat(J):this._queue,K=0,de=q;Kq.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(q.minPitch!=null&&q.maxPitch!=null&&q.minPitch>q.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(q.minPitch!=null&&q.minPitchBn)throw new Error("maxPitch must be less than or equal to "+Bn);var de=new wo(q.minZoom,q.maxZoom,q.minPitch,q.maxPitch,q.renderWorldCopies);if(Y.call(this,de,q),this._interactive=q.interactive,this._maxTileCacheSize=q.maxTileCacheSize,this._failIfMajorPerformanceCaveat=q.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=q.preserveDrawingBuffer,this._antialias=q.antialias,this._trackResize=q.trackResize,this._bearingSnap=q.bearingSnap,this._refreshExpiredTiles=q.refreshExpiredTiles,this._fadeDuration=q.fadeDuration,this._crossSourceCollisions=q.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=q.collectResourceTiming,this._renderTaskQueue=new si,this._controls=[],this._mapId=i.uniqueId(),this._locale=i.extend({},Mr,q.locale),this._clickTolerance=q.clickTolerance,this._requestManager=new i.RequestManager(q.transformRequest,q.accessToken),typeof q.container=="string"){if(this._container=i.window.document.getElementById(q.container),!this._container)throw new Error("Container '"+q.container+"' not found.")}else if(q.container instanceof xi)this._container=q.container;else throw new Error("Invalid type: 'container' must be a String or HTMLElement.");if(q.maxBounds&&this.setMaxBounds(q.maxBounds),i.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return K._update(!1)}),this.on("moveend",function(){return K._update(!1)}),this.on("zoom",function(){return K._update(!0)}),typeof i.window!="undefined"&&(i.window.addEventListener("online",this._onWindowOnline,!1),i.window.addEventListener("resize",this._onWindowResize,!1),i.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new Ei(this,q);var ne=typeof q.hash=="string"&&q.hash||void 0;this._hash=q.hash&&new Ul(ne).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:q.center,zoom:q.zoom,bearing:q.bearing,pitch:q.pitch}),q.bounds&&(this.resize(),this.fitBounds(q.bounds,i.extend({},q.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=q.localIdeographFontFamily,q.style&&this.setStyle(q.style,{localIdeographFontFamily:q.localIdeographFontFamily}),q.attributionControl&&this.addControl(new en({customAttribution:q.customAttribution})),this.addControl(new Wi,q.logoPosition),this.on("style.load",function(){K.transform.unmodified&&K.jumpTo(K.style.stylesheet)}),this.on("data",function(we){K._update(we.dataType==="style"),K.fire(new i.Event(we.dataType+"data",we))}),this.on("dataloading",function(we){K.fire(new i.Event(we.dataType+"dataloading",we))})}Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D;var J={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return D.prototype._getMapId=function(){return this._mapId},D.prototype.addControl=function(K,de){if(de===void 0&&(K.getDefaultPosition?de=K.getDefaultPosition():de="top-right"),!K||!K.onAdd)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var ne=K.onAdd(this);this._controls.push(K);var we=this._controlPositions[de];return de.indexOf("bottom")!==-1?we.insertBefore(ne,we.firstChild):we.appendChild(ne),this},D.prototype.removeControl=function(K){if(!K||!K.onRemove)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var de=this._controls.indexOf(K);return de>-1&&this._controls.splice(de,1),K.onRemove(this),this},D.prototype.hasControl=function(K){return this._controls.indexOf(K)>-1},D.prototype.resize=function(K){var de=this._containerDimensions(),ne=de[0],we=de[1];this._resizeCanvas(ne,we),this.transform.resize(ne,we),this.painter.resize(ne,we);var Ue=!this._moving;return Ue&&(this.stop(),this.fire(new i.Event("movestart",K)).fire(new i.Event("move",K))),this.fire(new i.Event("resize",K)),Ue&&this.fire(new i.Event("moveend",K)),this},D.prototype.getBounds=function(){return this.transform.getBounds()},D.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},D.prototype.setMaxBounds=function(K){return this.transform.setMaxBounds(i.LngLatBounds.convert(K)),this._update()},D.prototype.setMinZoom=function(K){if(K=K==null?ci:K,K>=ci&&K<=this.transform.maxZoom)return this.transform.minZoom=K,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=K,this._update(),this.getZoom()>K&&this.setZoom(K),this;throw new Error("maxZoom must be greater than the current minZoom")},D.prototype.getMaxZoom=function(){return this.transform.maxZoom},D.prototype.setMinPitch=function(K){if(K=K==null?Zi:K,K=Zi&&K<=this.transform.maxPitch)return this.transform.minPitch=K,this._update(),this.getPitch()Bn)throw new Error("maxPitch must be less than or equal to "+Bn);if(K>=this.transform.minPitch)return this.transform.maxPitch=K,this._update(),this.getPitch()>K&&this.setPitch(K),this;throw new Error("maxPitch must be greater than the current minPitch")},D.prototype.getMaxPitch=function(){return this.transform.maxPitch},D.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},D.prototype.setRenderWorldCopies=function(K){return this.transform.renderWorldCopies=K,this._update()},D.prototype.project=function(K){return this.transform.locationPoint(i.LngLat.convert(K))},D.prototype.unproject=function(K){return this.transform.pointLocation(i.Point.convert(K))},D.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},D.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},D.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},D.prototype._createDelegatedListener=function(K,de,ne){var we=this,Ue;if(K==="mouseenter"||K==="mouseover"){var ft=!1,Xt=function(Ct){var Ot=we.getLayer(de)?we.queryRenderedFeatures(Ct.point,{layers:[de]}):[];Ot.length?ft||(ft=!0,ne.call(we,new se(K,we,Ct.originalEvent,{features:Ot}))):ft=!1},hr=function(){ft=!1};return{layer:de,listener:ne,delegates:{mousemove:Xt,mouseout:hr}}}else if(K==="mouseleave"||K==="mouseout"){var qt=!1,Ve=function(Ct){var Ot=we.getLayer(de)?we.queryRenderedFeatures(Ct.point,{layers:[de]}):[];Ot.length?qt=!0:qt&&(qt=!1,ne.call(we,new se(K,we,Ct.originalEvent)))},Qe=function(Ct){qt&&(qt=!1,ne.call(we,new se(K,we,Ct.originalEvent)))};return{layer:de,listener:ne,delegates:{mousemove:Ve,mouseout:Qe}}}else{var at=function(Ct){var Ot=we.getLayer(de)?we.queryRenderedFeatures(Ct.point,{layers:[de]}):[];Ot.length&&(Ct.features=Ot,ne.call(we,Ct),delete Ct.features)};return{layer:de,listener:ne,delegates:(Ue={},Ue[K]=at,Ue)}}},D.prototype.on=function(K,de,ne){if(ne===void 0)return Y.prototype.on.call(this,K,de);var we=this._createDelegatedListener(K,de,ne);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[K]=this._delegatedListeners[K]||[],this._delegatedListeners[K].push(we);for(var Ue in we.delegates)this.on(Ue,we.delegates[Ue]);return this},D.prototype.once=function(K,de,ne){if(ne===void 0)return Y.prototype.once.call(this,K,de);var we=this._createDelegatedListener(K,de,ne);for(var Ue in we.delegates)this.once(Ue,we.delegates[Ue]);return this},D.prototype.off=function(K,de,ne){var we=this;if(ne===void 0)return Y.prototype.off.call(this,K,de);var Ue=function(ft){for(var Xt=ft[K],hr=0;hr180;){var ne=J.locationPoint(Y);if(ne.x>=0&&ne.y>=0&&ne.x<=J.width&&ne.y<=J.height)break;Y.lng>J.center.lng?Y.lng-=360:Y.lng+=360}return Y}var Vn={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function na(Y,D,J){var q=Y.classList;for(var K in Vn)q.remove("mapboxgl-"+J+"-anchor-"+K);q.add("mapboxgl-"+J+"-anchor-"+D)}var Ki=function(Y){function D(J,q){if(Y.call(this),(J instanceof i.window.HTMLElement||q)&&(J=i.extend({element:J},q)),i.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=J&&J.anchor||"center",this._color=J&&J.color||"#3FB1CE",this._scale=J&&J.scale||1,this._draggable=J&&J.draggable||!1,this._clickTolerance=J&&J.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=J&&J.rotation||0,this._rotationAlignment=J&&J.rotationAlignment||"auto",this._pitchAlignment=J&&J.pitchAlignment&&J.pitchAlignment!=="auto"?J.pitchAlignment:this._rotationAlignment,!J||!J.element){this._defaultMarker=!0,this._element=o.create("div"),this._element.setAttribute("aria-label","Map marker");var K=o.createNS("http://www.w3.org/2000/svg","svg"),de=41,ne=27;K.setAttributeNS(null,"display","block"),K.setAttributeNS(null,"height",de+"px"),K.setAttributeNS(null,"width",ne+"px"),K.setAttributeNS(null,"viewBox","0 0 "+ne+" "+de);var we=o.createNS("http://www.w3.org/2000/svg","g");we.setAttributeNS(null,"stroke","none"),we.setAttributeNS(null,"stroke-width","1"),we.setAttributeNS(null,"fill","none"),we.setAttributeNS(null,"fill-rule","evenodd");var Ue=o.createNS("http://www.w3.org/2000/svg","g");Ue.setAttributeNS(null,"fill-rule","nonzero");var ft=o.createNS("http://www.w3.org/2000/svg","g");ft.setAttributeNS(null,"transform","translate(3.0, 29.0)"),ft.setAttributeNS(null,"fill","#000000");for(var Xt=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}],hr=0,qt=Xt;hr=K}this._isDragging&&(this._pos=q.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new i.Event("dragstart"))),this.fire(new i.Event("drag")))},D.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new i.Event("dragend")),this._state="inactive"},D.prototype._addDragHandler=function(q){this._element.contains(q.originalEvent.target)&&(q.preventDefault(),this._positionDelta=q.point.sub(this._pos).add(this._offset),this._pointerdownPos=q.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},D.prototype.setDraggable=function(q){return this._draggable=!!q,this._map&&(q?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},D.prototype.isDraggable=function(){return this._draggable},D.prototype.setRotation=function(q){return this._rotation=q||0,this._update(),this},D.prototype.getRotation=function(){return this._rotation},D.prototype.setRotationAlignment=function(q){return this._rotationAlignment=q||"auto",this._update(),this},D.prototype.getRotationAlignment=function(){return this._rotationAlignment},D.prototype.setPitchAlignment=function(q){return this._pitchAlignment=q&&q!=="auto"?q:this._rotationAlignment,this._update(),this},D.prototype.getPitchAlignment=function(){return this._pitchAlignment},D}(i.Evented),kn={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},ta;function oa(Y){ta!==void 0?Y(ta):i.window.navigator.permissions!==void 0?i.window.navigator.permissions.query({name:"geolocation"}).then(function(D){ta=D.state!=="denied",Y(ta)}):(ta=!!i.window.navigator.geolocation,Y(ta))}var ba=0,is=!1,Zs=function(Y){function D(J){Y.call(this),this.options=i.extend({},kn,J),i.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.onAdd=function(q){return this._map=q,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),oa(this._setupUI),this._container},D.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),o.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,ba=0,is=!1},D.prototype._isOutOfMapMaxBounds=function(q){var K=this._map.getMaxBounds(),de=q.coords;return K&&(de.longitudeK.getEast()||de.latitudeK.getNorth())},D.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break}},D.prototype._onSuccess=function(q){if(this._map){if(this._isOutOfMapMaxBounds(q)){this._setErrorState(),this.fire(new i.Event("outofmaxbounds",q)),this._updateMarker(),this._finish();return}if(this.options.trackUserLocation)switch(this._lastKnownPosition=q,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(q),(!this.options.trackUserLocation||this._watchState==="ACTIVE_LOCK")&&this._updateCamera(q),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("geolocate",q)),this._finish()}},D.prototype._updateCamera=function(q){var K=new i.LngLat(q.coords.longitude,q.coords.latitude),de=q.coords.accuracy,ne=this._map.getBearing(),we=i.extend({bearing:ne},this.options.fitBoundsOptions);this._map.fitBounds(K.toBounds(de),we,{geolocateSource:!0})},D.prototype._updateMarker=function(q){if(q){var K=new i.LngLat(q.coords.longitude,q.coords.latitude);this._accuracyCircleMarker.setLngLat(K).addTo(this._map),this._userLocationDotMarker.setLngLat(K).addTo(this._map),this._accuracy=q.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},D.prototype._updateCircleRadius=function(){var q=this._map._container.clientHeight/2,K=this._map.unproject([0,q]),de=this._map.unproject([1,q]),ne=K.distanceTo(de),we=Math.ceil(2*this._accuracy/ne);this._circleElement.style.width=we+"px",this._circleElement.style.height=we+"px"},D.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},D.prototype._onError=function(q){if(this._map){if(this.options.trackUserLocation)if(q.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var K=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=K,this._geolocateButton.setAttribute("aria-label",K),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(q.code===3&&is)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("error",q)),this._finish()}},D.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},D.prototype._setupUI=function(q){var K=this;if(this._container.addEventListener("contextmenu",function(we){return we.preventDefault()}),this._geolocateButton=o.create("button","mapboxgl-ctrl-geolocate",this._container),o.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",q===!1){i.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var de=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=de,this._geolocateButton.setAttribute("aria-label",de)}else{var ne=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=ne,this._geolocateButton.setAttribute("aria-label",ne)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=o.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new Ki(this._dotElement),this._circleElement=o.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Ki({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",function(we){var Ue=we.originalEvent&&we.originalEvent.type==="resize";!we.geolocateSource&&K._watchState==="ACTIVE_LOCK"&&!Ue&&(K._watchState="BACKGROUND",K._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),K._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),K.fire(new i.Event("trackuserlocationend")))})},D.prototype.trigger=function(){if(!this._setup)return i.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new i.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":ba--,is=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new i.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new i.Event("trackuserlocationstart"));break}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error");break}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),ba++;var q;ba>1?(q={maximumAge:6e5,timeout:0},is=!0):(q=this.options.positionOptions,is=!1),this._geolocationWatchID=i.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,q)}}else i.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},D.prototype._clearWatch=function(){i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},D}(i.Evented),Va={maxWidth:100,unit:"metric"},Ml=function(D){this.options=i.extend({},Va,D),i.bindAll(["_onMove","setUnit"],this)};Ml.prototype.getDefaultPosition=function(){return"bottom-left"},Ml.prototype._onMove=function(){zo(this._map,this._container,this.options)},Ml.prototype.onAdd=function(D){return this._map=D,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",D.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},Ml.prototype.onRemove=function(){o.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},Ml.prototype.setUnit=function(D){this.options.unit=D,zo(this._map,this._container,this.options)};function zo(Y,D,J){var q=J&&J.maxWidth||100,K=Y._container.clientHeight/2,de=Y.unproject([0,K]),ne=Y.unproject([q,K]),we=de.distanceTo(ne);if(J&&J.unit==="imperial"){var Ue=3.2808*we;if(Ue>5280){var ft=Ue/5280;Qs(D,q,ft,Y._getUIString("ScaleControl.Miles"))}else Qs(D,q,Ue,Y._getUIString("ScaleControl.Feet"))}else if(J&&J.unit==="nautical"){var Xt=we/1852;Qs(D,q,Xt,Y._getUIString("ScaleControl.NauticalMiles"))}else we>=1e3?Qs(D,q,we/1e3,Y._getUIString("ScaleControl.Kilometers")):Qs(D,q,we,Y._getUIString("ScaleControl.Meters"))}function Qs(Y,D,J,q){var K=Vl(J),de=K/J;Y.style.width=D*de+"px",Y.innerHTML=K+" "+q}function al(Y){var D=Math.pow(10,Math.ceil(-Math.log(Y)/Math.LN10));return Math.round(Y*D)/D}function Vl(Y){var D=Math.pow(10,(""+Math.floor(Y)).length-1),J=Y/D;return J=J>=10?10:J>=5?5:J>=3?3:J>=2?2:J>=1?1:al(J),D*J}var ss=function(D){this._fullscreen=!1,D&&D.container&&(D.container instanceof i.window.HTMLElement?this._container=D.container:i.warnOnce("Full screen control 'container' must be a DOM element.")),i.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in i.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in i.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in i.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in i.window.document&&(this._fullscreenchange="MSFullscreenChange")};ss.prototype.onAdd=function(D){return this._map=D,this._container||(this._container=this._map.getContainer()),this._controlContainer=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",i.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},ss.prototype.onRemove=function(){o.remove(this._controlContainer),this._map=null,i.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},ss.prototype._checkFullscreenSupport=function(){return!!(i.window.document.fullscreenEnabled||i.window.document.mozFullScreenEnabled||i.window.document.msFullscreenEnabled||i.window.document.webkitFullscreenEnabled)},ss.prototype._setupUI=function(){var D=this._fullscreenButton=o.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);o.create("span","mapboxgl-ctrl-icon",D).setAttribute("aria-hidden",!0),D.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),i.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},ss.prototype._updateTitle=function(){var D=this._getTitle();this._fullscreenButton.setAttribute("aria-label",D),this._fullscreenButton.title=D},ss.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},ss.prototype._isFullscreen=function(){return this._fullscreen},ss.prototype._changeIcon=function(){var D=i.window.document.fullscreenElement||i.window.document.mozFullScreenElement||i.window.document.webkitFullscreenElement||i.window.document.msFullscreenElement;D===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},ss.prototype._onClickFullscreen=function(){this._isFullscreen()?i.window.document.exitFullscreen?i.window.document.exitFullscreen():i.window.document.mozCancelFullScreen?i.window.document.mozCancelFullScreen():i.window.document.msExitFullscreen?i.window.document.msExitFullscreen():i.window.document.webkitCancelFullScreen&&i.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var Vs={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},Ys=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),wa=function(Y){function D(J){Y.call(this),this.options=i.extend(Object.create(Vs),J),i.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.addTo=function(q){return this._map&&this.remove(),this._map=q,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new i.Event("open")),this},D.prototype.isOpen=function(){return!!this._map},D.prototype.remove=function(){return this._content&&o.remove(this._content),this._container&&(o.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new i.Event("close")),this},D.prototype.getLngLat=function(){return this._lngLat},D.prototype.setLngLat=function(q){return this._lngLat=i.LngLat.convert(q),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},D.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this},D.prototype.getElement=function(){return this._container},D.prototype.setText=function(q){return this.setDOMContent(i.window.document.createTextNode(q))},D.prototype.setHTML=function(q){var K=i.window.document.createDocumentFragment(),de=i.window.document.createElement("body"),ne;for(de.innerHTML=q;ne=de.firstChild,!!ne;)K.appendChild(ne);return this.setDOMContent(K)},D.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},D.prototype.setMaxWidth=function(q){return this.options.maxWidth=q,this._update(),this},D.prototype.setDOMContent=function(q){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=o.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(q),this._createCloseButton(),this._update(),this._focusFirstElement(),this},D.prototype.addClassName=function(q){this._container&&this._container.classList.add(q)},D.prototype.removeClassName=function(q){this._container&&this._container.classList.remove(q)},D.prototype.setOffset=function(q){return this.options.offset=q,this._update(),this},D.prototype.toggleClassName=function(q){if(this._container)return this._container.classList.toggle(q)},D.prototype._createCloseButton=function(){this.options.closeButton&&(this._closeButton=o.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))},D.prototype._onMouseUp=function(q){this._update(q.point)},D.prototype._onMouseMove=function(q){this._update(q.point)},D.prototype._onDrag=function(q){this._update(q.point)},D.prototype._update=function(q){var K=this,de=this._lngLat||this._trackPointer;if(!(!this._map||!de||!this._content)&&(this._container||(this._container=o.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=o.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function(Ve){return K._container.classList.add(Ve)}),this._trackPointer&&this._container.classList.add("mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=pn(this._lngLat,this._pos,this._map.transform)),!(this._trackPointer&&!q))){var ne=this._pos=this._trackPointer&&q?q:this._map.project(this._lngLat),we=this.options.anchor,Ue=ol(this.options.offset);if(!we){var ft=this._container.offsetWidth,Xt=this._container.offsetHeight,hr;ne.y+Ue.bottom.ythis._map.transform.height-Xt?hr=["bottom"]:hr=[],ne.xthis._map.transform.width-ft/2&&hr.push("right"),hr.length===0?we="bottom":we=hr.join("-")}var qt=ne.add(Ue[we]).round();o.setTransform(this._container,Vn[we]+" translate("+qt.x+"px,"+qt.y+"px)"),na(this._container,we,"popup")}},D.prototype._focusFirstElement=function(){if(!(!this.options.focusAfterOpen||!this._container)){var q=this._container.querySelector(Ys);q&&q.focus()}},D.prototype._onClose=function(){this.remove()},D}(i.Evented);function ol(Y){if(Y)if(typeof Y=="number"){var D=Math.round(Math.sqrt(.5*Math.pow(Y,2)));return{center:new i.Point(0,0),top:new i.Point(0,Y),"top-left":new i.Point(D,D),"top-right":new i.Point(-D,D),bottom:new i.Point(0,-Y),"bottom-left":new i.Point(D,-D),"bottom-right":new i.Point(-D,-D),left:new i.Point(Y,0),right:new i.Point(-Y,0)}}else if(Y instanceof i.Point||Array.isArray(Y)){var J=i.Point.convert(Y);return{center:J,top:J,"top-left":J,"top-right":J,bottom:J,"bottom-left":J,"bottom-right":J,left:J,right:J}}else return{center:i.Point.convert(Y.center||[0,0]),top:i.Point.convert(Y.top||[0,0]),"top-left":i.Point.convert(Y["top-left"]||[0,0]),"top-right":i.Point.convert(Y["top-right"]||[0,0]),bottom:i.Point.convert(Y.bottom||[0,0]),"bottom-left":i.Point.convert(Y["bottom-left"]||[0,0]),"bottom-right":i.Point.convert(Y["bottom-right"]||[0,0]),left:i.Point.convert(Y.left||[0,0]),right:i.Point.convert(Y.right||[0,0])};else return ol(new i.Point(0,0))}var io={version:i.version,supported:a,setRTLTextPlugin:i.setRTLTextPlugin,getRTLTextPluginStatus:i.getRTLTextPluginStatus,Map:li,NavigationControl:Vi,GeolocateControl:Zs,AttributionControl:en,ScaleControl:Ml,FullscreenControl:ss,Popup:wa,Marker:Ki,Style:yu,LngLat:i.LngLat,LngLatBounds:i.LngLatBounds,Point:i.Point,MercatorCoordinate:i.MercatorCoordinate,Evented:i.Evented,config:i.config,prewarm:ua,clearPrewarmedResources:ma,get accessToken(){return i.config.ACCESS_TOKEN},set accessToken(Y){i.config.ACCESS_TOKEN=Y},get baseApiUrl(){return i.config.API_URL},set baseApiUrl(Y){i.config.API_URL=Y},get workerCount(){return fn.workerCount},set workerCount(Y){fn.workerCount=Y},get maxParallelImageRequests(){return i.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(Y){i.config.MAX_PARALLEL_IMAGE_REQUESTS=Y},clearStorage:function(D){i.clearTileCache(D)},workerUrl:""};return io}),r})});var cGe=ye((_xr,uGe)=>{"use strict";var rw=Dr(),Fjt=ru().sanitizeHTML,zjt=rJ(),oGe=c1();function sGe(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=oGe.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var ig=sGe.prototype;ig.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=Jz(t)};ig.needsNewImage=function(e){var t=this.subplot.map;return t.getSource(this.idSource)&&this.sourceType==="image"&&e.sourcetype==="image"&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))};ig.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type};ig.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]};ig.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]};ig.updateImage=function(e){var t=this.subplot.map;t.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var r=this.findFollowingMapboxLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)};ig.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,!!Jz(e)){var r=Ojt(e);t.addSource(this.idSource,r)}};ig.findFollowingMapboxLayerId=function(e){if(e==="traces")for(var t=this.subplot.getMapLayers(),r=0;r0){for(var r=0;r0}function lGe(e){var t={},r={};switch(e.type){case"circle":rw.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":rw.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":rw.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var n=e.symbol,i=zjt(n.textposition,n.iconsize);rw.extendFlat(t,{"icon-image":n.icon+"-15","icon-size":n.iconsize/10,"text-field":n.text,"text-size":n.textfont.size,"text-anchor":i.anchor,"text-offset":i.offset,"symbol-placement":n.placement}),rw.extendFlat(r,{"icon-color":e.color,"text-color":n.textfont.color,"text-opacity":e.opacity});break;case"raster":rw.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity});break}return{layout:t,paint:r}}function Ojt(e){var t=e.sourcetype,r=e.source,n={type:t},i;return t==="geojson"?i="data":t==="vector"?i=typeof r=="string"?"url":"tiles":t==="raster"?(i="tiles",n.tileSize=256):t==="image"&&(i="url",n.coordinates=e.coordinates),n[i]=r,e.sourceattribution&&(n.attribution=Fjt(e.sourceattribution)),n}uGe.exports=function(t,r,n){var i=new sGe(t,r);return i.update(n),i}});var _Ge=ye((xxr,yGe)=>{"use strict";var uJ=lJ(),cJ=Dr(),vGe=ix(),fGe=qa(),qjt=ho(),Bjt=yv(),$z=vf(),pGe=Mg(),Njt=pGe.drawMode,Ujt=pGe.selectMode,Vjt=Of().prepSelect,Gjt=Of().clearOutline,Hjt=Of().clearSelectionsCache,jjt=Of().selectOnClick,_x=c1(),Wjt=cGe();function gGe(e,t){this.id=t,this.gd=e;var r=e._fullLayout,n=e._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var Nh=gGe.prototype;Nh.plot=function(e,t,r){var n=this,i=t[n.id];n.map&&i.accesstoken!==n.accessToken&&(n.map.remove(),n.map=null,n.styleObj=null,n.traceHash={},n.layerList=[]);var a;n.map?a=new Promise(function(o,s){n.updateMap(e,t,o,s)}):a=new Promise(function(o,s){n.createMap(e,t,o,s)}),r.push(a)};Nh.createMap=function(e,t,r,n){var i=this,a=t[i.id],o=i.styleObj=mGe(a.style,t);i.accessToken=a.accesstoken;var s=a.bounds,l=s?[[s.west,s.south],[s.east,s.north]]:null,u=i.map=new uJ.Map({container:i.div,style:o.style,center:fJ(a.center),zoom:a.zoom,bearing:a.bearing,pitch:a.pitch,maxBounds:l,interactive:!i.isStatic,preserveDrawingBuffer:i.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new uJ.AttributionControl({compact:!0}));u._canvas.style.left="0px",u._canvas.style.top="0px",i.rejectOnError(n),i.isStatic||i.initFx(e,t);var c=[];c.push(new Promise(function(f){u.once("load",f)})),c=c.concat(vGe.fetchTraceGeoData(e)),Promise.all(c).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Nh.updateMap=function(e,t,r,n){var i=this,a=i.map,o=t[this.id];i.rejectOnError(n);var s=[],l=mGe(o.style,t);JSON.stringify(i.styleObj)!==JSON.stringify(l)&&(i.styleObj=l,a.setStyle(l.style),i.traceHash={},s.push(new Promise(function(u){a.once("styledata",u)}))),s=s.concat(vGe.fetchTraceGeoData(e)),Promise.all(s).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Nh.fillBelowLookup=function(e,t){var r=t[this.id],n=r.layers,i,a,o=this.belowLookup={},s=!1;for(i=0;i1)for(i=0;i-1&&jjt(l.originalEvent,n,[r.xaxis],[r.yaxis],r.id,s),u.indexOf("event")>-1&&$z.click(n,l.originalEvent)}}};Nh.updateFx=function(e){var t=this,r=t.map,n=t.gd;if(t.isStatic)return;function i(l){var u=t.map.unproject(l);return[u.lng,u.lat]}var a=e.dragmode,o;o=function(l,u){if(u.isRect){var c=l.range={};c[t.id]=[i([u.xmin,u.ymin]),i([u.xmax,u.ymax])]}else{var f=l.lassoPoints={};f[t.id]=u.map(i)}};var s=t.dragOptions;t.dragOptions=cJ.extendDeep(s||{},{dragmode:e.dragmode,element:t.div,gd:n,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:o},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),Ujt(a)||Njt(a)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(l,u,c){Vjt(l,u,c,t.dragOptions,a)},Bjt.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))};Nh.updateFramework=function(e){var t=e[this.id].domain,r=e._size,n=this.div.style;n.width=r.w*(t.x[1]-t.x[0])+"px",n.height=r.h*(t.y[1]-t.y[0])+"px",n.left=r.l+t.x[0]*r.w+"px",n.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])};Nh.updateLayers=function(e){var t=e[this.id],r=t.layers,n=this.layerList,i;if(r.length!==n.length){for(i=0;i{"use strict";var hJ=Dr(),Xjt=k_(),Zjt=Yd(),xGe=Nk();bGe.exports=function(t,r,n){Xjt(t,r,n,{type:"mapbox",attributes:xGe,handleDefaults:Yjt,partition:"y",accessToken:r._mapboxAccessToken})};function Yjt(e,t,r,n){r("accesstoken",n.accessToken),r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch");var i=r("bounds.west"),a=r("bounds.east"),o=r("bounds.south"),s=r("bounds.north");(i===void 0||a===void 0||o===void 0||s===void 0)&&delete t.bounds,Zjt(e,t,{name:"layers",handleItemDefaults:Kjt}),t._input=e}function Kjt(e,t){function r(l,u){return hJ.coerce(e,t,xGe.layers,l,u)}var n=r("visible");if(n){var i=r("sourcetype"),a=i==="raster"||i==="image";r("source"),r("sourceattribution"),i==="vector"&&r("sourcelayer"),i==="image"&&r("coordinates");var o;a&&(o="raster");var s=r("type",o);a&&s!=="raster"&&(s=t.type="raster",hJ.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),s==="circle"&&r("circle.radius"),s==="line"&&(r("line.width"),r("line.dash")),s==="fill"&&r("fill.outlinecolor"),s==="symbol"&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),hJ.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var Qz=ye(Np=>{"use strict";var TGe=lJ(),tm=Dr(),dJ=tm.strTranslate,Jjt=tm.strScale,$jt=Id().getSubplotCalcData,Qjt=Wp(),eWt=Oa(),AGe=So(),tWt=ru(),rWt=_Ge(),xx="mapbox",ey=Np.constants=c1();Np.name=xx;Np.attr="subplot";Np.idRoot=xx;Np.idRegex=Np.attrRegex=tm.counterRegex(xx);var iWt=["mapbox subplots and traces are deprecated!","Please consider switching to `map` subplots and traces.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");Np.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}};Np.layoutAttributes=Nk();Np.supplyLayoutDefaults=wGe();var SGe=!0;Np.plot=function(t){SGe&&(SGe=!1,tm.warn(iWt));var r=t._fullLayout,n=t.calcdata,i=r._subplots[xx];if(TGe.version!==ey.requiredVersion)throw new Error(ey.wrongVersionErrorMsg);var a=nWt(t,i);TGe.accessToken=a;for(var o=0;op/2){var k=d.split("|").join("
");_.text(k).attr("data-unformatted",k).call(tWt.convertToTspans,e),b=AGe.bBox(_.node())}_.attr("transform",dJ(-3,-b.height+8)),v.insert("rect",".static-attribution").attr({x:-b.width-6,y:-b.height-3,width:b.width+6,height:b.height+3,fill:"rgba(255, 255, 255, 0.75)"});var E=1;b.width+6>p&&(E=p/(b.width+6));var S=[n.l+n.w*o.x[1],n.t+n.h*(1-o.y[0])];v.attr("transform",dJ(S[0],S[1])+Jjt(E))}};function nWt(e,t){var r=e._fullLayout,n=e._context;if(n.mapboxAccessToken==="")return"";for(var i=[],a=[],o=!1,s=!1,l=0;l1&&tm.warn(ey.multipleTokensErrorMsg),i[0]):(a.length&&tm.log(["Listed mapbox access token(s)",a.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}function MGe(e){return typeof e=="string"&&(ey.styleValuesMapbox.indexOf(e)!==-1||e.indexOf("mapbox://")===0||e.indexOf("stamen")===0)}Np.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[xx],n=0;n{"use strict";var Txr=["*scattermapbox* trace is deprecated!","Please consider switching to the *scattermap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");EGe.exports={attributes:jz(),supplyDefaults:BVe(),colorbar:$d(),formatLabels:tJ(),calc:vF(),plot:QVe(),hoverPoints:Kz().hoverPoints,eventData:iGe(),selectPoints:aGe(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermapbox",basePlotModule:Qz(),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}});var LGe=ye((Sxr,CGe)=>{"use strict";CGe.exports=kGe()});var vJ=ye((Mxr,PGe)=>{"use strict";var f1=e5(),aWt=Tu(),{hovertemplateAttrs:oWt,templatefallbackAttrs:sWt}=Ll(),lWt=Gl(),bx=Ao().extendFlat;PGe.exports=bx({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:bx({},f1.featureidkey,{}),below:{valType:"string",editType:"plot"},text:f1.text,hovertext:f1.hovertext,marker:{line:{color:bx({},f1.marker.line.color,{editType:"plot"}),width:bx({},f1.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:bx({},f1.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:bx({},f1.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:bx({},f1.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:f1.hoverinfo,hovertemplate:oWt({},{keys:["properties"]}),hovertemplatefallback:sWt(),showlegend:bx({},lWt.showlegend,{dflt:!1})},aWt("",{cLetter:"z",editTypeOverride:"calc"}))});var RGe=ye((Exr,IGe)=>{"use strict";var Hk=Dr(),uWt=Qh(),cWt=vJ();IGe.exports=function(t,r,n,i){function a(c,f){return Hk.coerce(t,r,cWt,c,f)}var o=a("locations"),s=a("z"),l=a("geojson");if(!Hk.isArrayOrTypedArray(o)||!o.length||!Hk.isArrayOrTypedArray(s)||!s.length||!(typeof l=="string"&&l!==""||Hk.isPlainObject(l))){r.visible=!1;return}a("featureidkey"),r._length=Math.min(o.length,s.length),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var u=a("marker.line.width");u&&a("marker.line.color"),a("marker.opacity"),uWt(t,r,i,a,{prefix:"",cLetter:"z"}),Hk.coerceSelectionMarkerOpacity(r,a)}});var pJ=ye((kxr,zGe)=>{"use strict";var fWt=Eo(),h1=Dr(),hWt=tc(),dWt=So(),vWt=tx().makeBlank,DGe=ix();function pWt(e){var t=e[0].trace,r=t.visible===!0&&t._length!==0,n={layout:{visibility:"none"},paint:{}},i={layout:{visibility:"none"},paint:{}},a=t._opts={fill:n,line:i,geojson:vWt()};if(!r)return a;var o=DGe.extractTraceFeature(e);if(!o)return a;var s=hWt.makeColorScaleFuncFromTrace(t),l=t.marker,u=l.line||{},c;h1.isArrayOrTypedArray(l.opacity)&&(c=function(k){var E=k.mo;return fWt(E)?+h1.constrain(E,0,1):0});var f;h1.isArrayOrTypedArray(u.color)&&(f=function(k){return k.mlc});var h;h1.isArrayOrTypedArray(u.width)&&(h=function(k){return k.mlw});for(var d=0;d{"use strict";var qGe=pJ().convert,gWt=pJ().convertOnSelect,OGe=c1().traceLayerPrefix;function BGe(e,t){this.type="choroplethmapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",OGe+t+"-fill"],["line",OGe+t+"-line"]],this.below=null}var S5=BGe.prototype;S5.update=function(e){this._update(qGe(e)),e[0].trace._glTrace=this};S5.updateOnSelect=function(e){this._update(gWt(e))};S5._update=function(e){var t=this.subplot,r=this.layerList,n=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(e.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(e,n),this.below=n);for(var i=0;i=0;r--)e.removeLayer(t[r][1])};S5.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};NGe.exports=function(t,r){var n=r[0].trace,i=new BGe(t,n.uid),a=i.sourceId,o=qGe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),r[0].trace._glTrace=i,i}});var GGe=ye((Pxr,VGe)=>{"use strict";var Lxr=["*choroplethmapbox* trace is deprecated!","Please consider switching to the *choroplethmap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");VGe.exports={attributes:vJ(),supplyDefaults:RGe(),colorbar:S_(),calc:FF(),plot:UGe(),hoverPoints:OF(),eventData:qF(),selectPoints:BF(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.updateOnSelect(t)}},getBelow:function(e,t){for(var r=t.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if(typeof i=="string"&&i.indexOf("water")===0){for(var a=n+1;a{"use strict";HGe.exports=GGe()});var mJ=ye((Rxr,XGe)=>{"use strict";var mWt=Tu(),{hovertemplateAttrs:yWt,templatefallbackAttrs:_Wt}=Ll(),WGe=Gl(),e7=jz(),gJ=Ao().extendFlat;XGe.exports=gJ({lon:e7.lon,lat:e7.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:e7.text,hovertext:e7.hovertext,hoverinfo:gJ({},WGe.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:yWt(),hovertemplatefallback:_Wt(),showlegend:gJ({},WGe.showlegend,{dflt:!1})},mWt("",{cLetter:"z",editTypeOverride:"calc"}))});var YGe=ye((Dxr,ZGe)=>{"use strict";var xWt=Dr(),bWt=Qh(),wWt=mJ();ZGe.exports=function(t,r,n,i){function a(u,c){return xWt.coerce(t,r,wWt,u,c)}var o=a("lon")||[],s=a("lat")||[],l=Math.min(o.length,s.length);if(!l){r.visible=!1;return}r._length=l,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),bWt(t,r,i,a,{prefix:"",cLetter:"z"})}});var $Ge=ye((Fxr,JGe)=>{"use strict";var yJ=Eo(),TWt=Dr().isArrayOrTypedArray,_J=fs().BADNUM,AWt=gv(),KGe=Dr()._;JGe.exports=function(t,r){for(var n=r._length,i=new Array(n),a=r.z,o=TWt(a)&&a.length,s=0;s{"use strict";var SWt=Eo(),xJ=Dr(),QGe=ka(),eHe=tc(),tHe=fs().BADNUM,MWt=tx().makeBlank;rHe.exports=function(t){var r=t[0].trace,n=r.visible===!0&&r._length!==0,i={layout:{visibility:"none"},paint:{}},a=r._opts={heatmap:i,geojson:MWt()};if(!n)return a;var o=[],s,l=r.z,u=r.radius,c=xJ.isArrayOrTypedArray(l)&&l.length,f=xJ.isArrayOrTypedArray(u);for(s=0;s0?+u[s]:0),o.push({type:"Feature",geometry:{type:"Point",coordinates:d},properties:v})}}var b=eHe.extractOpts(r),p=b.reversescale?eHe.flipScale(b.colorscale):b.colorscale,k=p[0][1],E=QGe.opacity(k)<1?k:QGe.addOpacity(k,0),S=["interpolate",["linear"],["heatmap-density"],0,E];for(s=1;s{"use strict";var nHe=iHe(),EWt=c1().traceLayerPrefix;function aHe(e,t){this.type="densitymapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",EWt+t+"-heatmap"]],this.below=null}var t7=aHe.prototype;t7.update=function(e){var t=this.subplot,r=this.layerList,n=nHe(e),i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(n.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(n,i),this.below=i);for(var a=0;a=0;r--)e.removeLayer(t[r][1])};t7.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};oHe.exports=function(t,r){var n=r[0].trace,i=new aHe(t,n.uid),a=i.sourceId,o=nHe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),i}});var uHe=ye((qxr,lHe)=>{"use strict";var kWt=ho(),CWt=Kz().hoverPoints,LWt=Kz().getExtraText;lHe.exports=function(t,r,n){var i=CWt(t,r,n);if(i){var a=i[0],o=a.cd,s=o[0].trace,l=o[a.index];if(delete a.color,"z"in l){var u=a.subplot.mockAxis;a.z=l.z,a.zLabel=kWt.tickText(u,u.c2l(l.z),"hover").text}return a.extraText=LWt(s,l,o[0].t.labels),[a]}}});var fHe=ye((Bxr,cHe)=>{"use strict";cHe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var dHe=ye((Uxr,hHe)=>{"use strict";var Nxr=["*densitymapbox* trace is deprecated!","Please consider switching to the *densitymap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");hHe.exports={attributes:mJ(),supplyDefaults:YGe(),colorbar:S_(),formatLabels:tJ(),calc:$Ge(),plot:sHe(),hoverPoints:uHe(),eventData:fHe(),getBelow:function(e,t){for(var r=t.getMapLayers(),n=0;n{"use strict";vHe.exports=dHe()});var mHe=ye((Gxr,gHe)=>{gHe.exports={version:8,name:"orto",metadata:{"maputnik:renderer":"mlgljs"},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI © ESRI"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}},{id:"waterway_tunnel",type:"line",source:"openmaptiles","source-layer":"waterway",minzoom:14,filter:["all",["in","class","river","stream","canal"],["==","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]},"line-dasharray":[2,4]}},{id:"waterway-other",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["!in","class","canal","river","stream"],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,2]]}}},{id:"waterway-stream-canal",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["in","class","canal","stream"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]}}},{id:"waterway-river",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["==","class","river"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.2,stops:[[10,.8],[20,4]]},"line-opacity":.5}},{id:"water-offset",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",maxzoom:8,filter:["==","$type","Polygon"],layout:{visibility:"visible"},paint:{"fill-opacity":0,"fill-color":"#a0c8f0","fill-translate":{base:1,stops:[[6,[2,0]],[8,[0,0]]]}}},{id:"water",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-color":"hsl(210, 67%, 85%)","fill-opacity":0}},{id:"water-pattern",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-translate":[0,2.5],"fill-pattern":"wave","fill-opacity":1}},{id:"landcover-ice-shelf",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"landcover",filter:["==","subclass","ice_shelf"],layout:{visibility:"visible"},paint:{"fill-color":"#fff","fill-opacity":{base:1,stops:[[0,.9],[10,.3]]}}},{id:"tunnel-service-track-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[15,1],[16,4],[20,11]]}}},{id:"tunnel-minor-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,1]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"tunnel-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"tunnel-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.7}},{id:"tunnel-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"tunnel-service-track",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-width":{base:1.2,stops:[[15.5,0],[16,2],[20,7.5]]}}},{id:"tunnel-minor",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor_road"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-opacity":1,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"tunnel-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,10]]}}},{id:"tunnel-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-motorway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#ffdaa6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-railway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]},"line-dasharray":[2,2]}},{id:"ferry",type:"line",source:"openmaptiles","source-layer":"transportation",filter:["all",["in","class","ferry"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(108, 159, 182, 1)","line-width":1.1,"line-dasharray":[2,2]}},{id:"aeroway-taxiway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","taxiway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,2],[17,12]]},"line-opacity":1}},{id:"aeroway-runway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","runway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,5],[17,55]]},"line-opacity":1}},{id:"aeroway-taxiway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","taxiway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,1],[17,10]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"aeroway-runway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","runway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,4],[17,50]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"highway-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-minor-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,0]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"highway-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":.5,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"highway-primary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[7,0],[8,.6]]},"line-width":{base:1.2,stops:[[7,0],[8,.6],[9,1.5],[20,22]]}}},{id:"highway-trunk-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[5,0],[6,.5]]},"line-width":{base:1.2,stops:[[5,0],[6,.6],[7,1.5],[20,22]]}}},{id:"highway-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:4,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[4,0],[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":{stops:[[4,0],[5,.5]]}}},{id:"highway-path",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"highway-motorway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-minor",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fff","line-opacity":.5,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"highway-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[8,.5],[20,13]]},"line-opacity":.5}},{id:"highway-primary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[8.5,0],[9,.5],[20,18]]},"line-opacity":0}},{id:"highway-trunk",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"highway-motorway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"railway-transit",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-transit-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway-service",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-service-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"railway-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"bridge-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,28]]}}},{id:"bridge-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"hsl(28, 76%, 67%)","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,26]]}}},{id:"bridge-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"bridge-path-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#f8f4f0","line-width":{base:1.2,stops:[[15,1.2],[20,18]]}}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#cba","line-width":{base:1.2,stops:[[15,1.2],[20,4]]},"line-dasharray":[1.5,.75]}},{id:"bridge-motorway-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,20]]}}},{id:"bridge-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]}}},{id:"bridge-motorway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"bridge-railway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"bridge-railway-hatching",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"cablecar",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,1],[19,2.5]]}}},{id:"cablecar-dash",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,3],[19,5.5]]},"line-dasharray":[2,3]}},{id:"boundary-land-level-4",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",[">=","admin_level",4],["<=","admin_level",8],["!=","maritime",1]],layout:{"line-join":"round"},paint:{"line-color":"#9e9cab","line-dasharray":[3,1,1,1],"line-width":{base:1.4,stops:[[4,.4],[5,1],[12,3]]},"line-opacity":.6}},{id:"boundary-land-level-2",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["==","admin_level",2],["!=","maritime",1],["!=","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 66%)","line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,2]]}}},{id:"boundary-land-disputed",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["!=","maritime",1],["==","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 70%)","line-dasharray":[1,3],"line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,8]]}}},{id:"boundary-water",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["in","admin_level",2,4],["==","maritime",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"rgba(154, 189, 214, 1)","line-width":{base:1,stops:[[0,.6],[4,1],[5,1],[12,1]]},"line-opacity":{stops:[[6,0],[10,0]]}}},{id:"waterway-name",type:"symbol",source:"openmaptiles","source-layer":"waterway",minzoom:13,filter:["all",["==","$type","LineString"],["has","name"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin} {name:nonlatin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","text-letter-spacing":.2,"symbol-spacing":350},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-lakeline",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["==","$type","LineString"],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":`{name:latin} +`),yt=we.createShader(we.FRAGMENT_SHADER);if(we.isContextLost()){this.failedToCreate=!0;return}we.shaderSource(yt,Bt),we.compileShader(yt),we.attachShader(this.program,yt);var Pt=we.createShader(we.VERTEX_SHADER);if(we.isContextLost()){this.failedToCreate=!0;return}we.shaderSource(Pt,Dt),we.compileShader(Pt),we.attachShader(this.program,Pt),this.attributes={};var ht={};this.numAttributes=Xt.length;for(var ur=0;ur>16,we>>16],u_pixel_coord_lower:[ne&65535,we&65535]}}function uf(Y,D,J,q){var K=J.imageManager.getPattern(Y.from.toString()),de=J.imageManager.getPattern(Y.to.toString()),ne=J.imageManager.getPixelSize(),we=ne.width,Ue=ne.height,ft=Math.pow(2,q.tileID.overscaledZ),Xt=q.tileSize*Math.pow(2,J.transform.tileZoom)/ft,hr=Xt*(q.tileID.canonical.x+q.tileID.wrap*ft),qt=Xt*q.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:K.tl,u_pattern_br_a:K.br,u_pattern_tl_b:de.tl,u_pattern_br_b:de.br,u_texsize:[we,Ue],u_mix:D.t,u_pattern_size_a:K.displaySize,u_pattern_size_b:de.displaySize,u_scale_a:D.fromScale,u_scale_b:D.toScale,u_tile_units_to_pixels:1/As(q,1,J.transform.tileZoom),u_pixel_coord_upper:[hr>>16,qt>>16],u_pixel_coord_lower:[hr&65535,qt&65535]}}var Xf=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_lightpos:new i.Uniform3f(Y,D.u_lightpos),u_lightintensity:new i.Uniform1f(Y,D.u_lightintensity),u_lightcolor:new i.Uniform3f(Y,D.u_lightcolor),u_vertical_gradient:new i.Uniform1f(Y,D.u_vertical_gradient),u_opacity:new i.Uniform1f(Y,D.u_opacity)}},Wl=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_lightpos:new i.Uniform3f(Y,D.u_lightpos),u_lightintensity:new i.Uniform1f(Y,D.u_lightintensity),u_lightcolor:new i.Uniform3f(Y,D.u_lightcolor),u_vertical_gradient:new i.Uniform1f(Y,D.u_vertical_gradient),u_height_factor:new i.Uniform1f(Y,D.u_height_factor),u_image:new i.Uniform1i(Y,D.u_image),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade),u_opacity:new i.Uniform1f(Y,D.u_opacity)}},ah=function(Y,D,J,q){var K=D.style.light,de=K.properties.get("position"),ne=[de.x,de.y,de.z],we=i.create$1();K.properties.get("anchor")==="viewport"&&i.fromRotation(we,-D.transform.angle),i.transformMat3(ne,ne,we);var Ue=K.properties.get("color");return{u_matrix:Y,u_lightpos:ne,u_lightintensity:K.properties.get("intensity"),u_lightcolor:[Ue.r,Ue.g,Ue.b],u_vertical_gradient:+J,u_opacity:q}},Zu=function(Y,D,J,q,K,de,ne){return i.extend(ah(Y,D,J,q),Xu(de,D,ne),{u_height_factor:-Math.pow(2,K.overscaledZ)/ne.tileSize/8})},Oc=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Tc=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_image:new i.Uniform1i(Y,D.u_image),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade)}},wl=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_world:new i.Uniform2f(Y,D.u_world)}},vu=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_world:new i.Uniform2f(Y,D.u_world),u_image:new i.Uniform1i(Y,D.u_image),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade)}},qc=function(Y){return{u_matrix:Y}},cf=function(Y,D,J,q){return i.extend(qc(Y),Xu(J,D,q))},fc=function(Y,D){return{u_matrix:Y,u_world:D}},Bc=function(Y,D,J,q,K){return i.extend(cf(Y,D,J,q),{u_world:K})},At=function(Y,D){return{u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_scale_with_map:new i.Uniform1i(Y,D.u_scale_with_map),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_extrude_scale:new i.Uniform2f(Y,D.u_extrude_scale),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Wt=function(Y,D,J,q){var K=Y.transform,de,ne;if(q.paint.get("circle-pitch-alignment")==="map"){var we=As(J,1,K.zoom);de=!0,ne=[we,we]}else de=!1,ne=K.pixelsToGLUnits;return{u_camera_to_center_distance:K.cameraToCenterDistance,u_scale_with_map:+(q.paint.get("circle-pitch-scale")==="map"),u_matrix:Y.translatePosMatrix(D.posMatrix,J,q.paint.get("circle-translate"),q.paint.get("circle-translate-anchor")),u_pitch_with_map:+de,u_device_pixel_ratio:i.browser.devicePixelRatio,u_extrude_scale:ne}},Cr=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pixels_to_tile_units:new i.Uniform1f(Y,D.u_pixels_to_tile_units),u_extrude_scale:new i.Uniform2f(Y,D.u_extrude_scale),u_overscale_factor:new i.Uniform1f(Y,D.u_overscale_factor)}},Ar=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_inv_matrix:new i.UniformMatrix4f(Y,D.u_inv_matrix),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_viewport_size:new i.Uniform2f(Y,D.u_viewport_size)}},Kr=function(Y,D,J){var q=As(J,1,D.zoom),K=Math.pow(2,D.zoom-J.tileID.overscaledZ),de=J.tileID.overscaleFactor();return{u_matrix:Y,u_camera_to_center_distance:D.cameraToCenterDistance,u_pixels_to_tile_units:q,u_extrude_scale:[D.pixelsToGLUnits[0]/(q*K),D.pixelsToGLUnits[1]/(q*K)],u_overscale_factor:de}},ki=function(Y,D,J){return{u_matrix:Y,u_inv_matrix:D,u_camera_to_center_distance:J.cameraToCenterDistance,u_viewport_size:[J.width,J.height]}},Xi=function(Y,D){return{u_color:new i.UniformColor(Y,D.u_color),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_overlay:new i.Uniform1i(Y,D.u_overlay),u_overlay_scale:new i.Uniform1f(Y,D.u_overlay_scale)}},dn=function(Y,D,J){return J===void 0&&(J=1),{u_matrix:Y,u_color:D,u_overlay:0,u_overlay_scale:J}},wn=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Nn=function(Y){return{u_matrix:Y}},Yi=function(Y,D){return{u_extrude_scale:new i.Uniform1f(Y,D.u_extrude_scale),u_intensity:new i.Uniform1f(Y,D.u_intensity),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix)}},Qi=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_world:new i.Uniform2f(Y,D.u_world),u_image:new i.Uniform1i(Y,D.u_image),u_color_ramp:new i.Uniform1i(Y,D.u_color_ramp),u_opacity:new i.Uniform1f(Y,D.u_opacity)}},on=function(Y,D,J,q){return{u_matrix:Y,u_extrude_scale:As(D,1,J),u_intensity:q}},Fi=function(Y,D,J,q){var K=i.create();i.ortho(K,0,Y.width,Y.height,0,0,1);var de=Y.context.gl;return{u_matrix:K,u_world:[de.drawingBufferWidth,de.drawingBufferHeight],u_image:J,u_color_ramp:q,u_opacity:D.paint.get("heatmap-opacity")}},$n=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_image:new i.Uniform1i(Y,D.u_image),u_latrange:new i.Uniform2f(Y,D.u_latrange),u_light:new i.Uniform2f(Y,D.u_light),u_shadow:new i.UniformColor(Y,D.u_shadow),u_highlight:new i.UniformColor(Y,D.u_highlight),u_accent:new i.UniformColor(Y,D.u_accent)}},Ca=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_image:new i.Uniform1i(Y,D.u_image),u_dimension:new i.Uniform2f(Y,D.u_dimension),u_zoom:new i.Uniform1f(Y,D.u_zoom),u_unpack:new i.Uniform4f(Y,D.u_unpack)}},Ra=function(Y,D,J){var q=J.paint.get("hillshade-shadow-color"),K=J.paint.get("hillshade-highlight-color"),de=J.paint.get("hillshade-accent-color"),ne=J.paint.get("hillshade-illumination-direction")*(Math.PI/180);J.paint.get("hillshade-illumination-anchor")==="viewport"&&(ne-=Y.transform.angle);var we=!Y.options.moving;return{u_matrix:Y.transform.calculatePosMatrix(D.tileID.toUnwrapped(),we),u_image:0,u_latrange:Na(Y,D.tileID),u_light:[J.paint.get("hillshade-exaggeration"),ne],u_shadow:q,u_highlight:K,u_accent:de}},La=function(Y,D){var J=D.stride,q=i.create();return i.ortho(q,0,i.EXTENT,-i.EXTENT,0,0,1),i.translate(q,q,[0,-i.EXTENT,0]),{u_matrix:q,u_image:1,u_dimension:[J,J],u_zoom:Y.overscaledZ,u_unpack:D.getUnpackVector()}};function Na(Y,D){var J=Math.pow(2,D.canonical.z),q=D.canonical.y;return[new i.MercatorCoordinate(0,q/J).toLngLat().lat,new i.MercatorCoordinate(0,(q+1)/J).toLngLat().lat]}var Yn=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels)}},Dn=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels),u_image:new i.Uniform1i(Y,D.u_image),u_image_height:new i.Uniform1f(Y,D.u_image_height)}},Ka=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_image:new i.Uniform1i(Y,D.u_image),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels),u_scale:new i.Uniform3f(Y,D.u_scale),u_fade:new i.Uniform1f(Y,D.u_fade)}},bo=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_ratio:new i.Uniform1f(Y,D.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,D.u_units_to_pixels),u_patternscale_a:new i.Uniform2f(Y,D.u_patternscale_a),u_patternscale_b:new i.Uniform2f(Y,D.u_patternscale_b),u_sdfgamma:new i.Uniform1f(Y,D.u_sdfgamma),u_image:new i.Uniform1i(Y,D.u_image),u_tex_y_a:new i.Uniform1f(Y,D.u_tex_y_a),u_tex_y_b:new i.Uniform1f(Y,D.u_tex_y_b),u_mix:new i.Uniform1f(Y,D.u_mix)}},Xo=function(Y,D,J){var q=Y.transform;return{u_matrix:ml(Y,D,J),u_ratio:1/As(D,1,q.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_units_to_pixels:[1/q.pixelsToGLUnits[0],1/q.pixelsToGLUnits[1]]}},Ss=function(Y,D,J,q){return i.extend(Xo(Y,D,J),{u_image:0,u_image_height:q})},as=function(Y,D,J,q){var K=Y.transform,de=Ho(D,K);return{u_matrix:ml(Y,D,J),u_texsize:D.imageAtlasTexture.size,u_ratio:1/As(D,1,K.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_image:0,u_scale:[de,q.fromScale,q.toScale],u_fade:q.t,u_units_to_pixels:[1/K.pixelsToGLUnits[0],1/K.pixelsToGLUnits[1]]}},ws=function(Y,D,J,q,K){var de=Y.transform,ne=Y.lineAtlas,we=Ho(D,de),Ue=J.layout.get("line-cap")==="round",ft=ne.getDash(q.from,Ue),Xt=ne.getDash(q.to,Ue),hr=ft.width*K.fromScale,qt=Xt.width*K.toScale;return i.extend(Xo(Y,D,J),{u_patternscale_a:[we/hr,-ft.height/2],u_patternscale_b:[we/qt,-Xt.height/2],u_sdfgamma:ne.width/(Math.min(hr,qt)*256*i.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:ft.y,u_tex_y_b:Xt.y,u_mix:K.t})};function Ho(Y,D){return 1/As(Y,1,D.tileZoom)}function ml(Y,D,J){return Y.translatePosMatrix(D.tileID.posMatrix,D,J.paint.get("line-translate"),J.paint.get("line-translate-anchor"))}var Ws=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_tl_parent:new i.Uniform2f(Y,D.u_tl_parent),u_scale_parent:new i.Uniform1f(Y,D.u_scale_parent),u_buffer_scale:new i.Uniform1f(Y,D.u_buffer_scale),u_fade_t:new i.Uniform1f(Y,D.u_fade_t),u_opacity:new i.Uniform1f(Y,D.u_opacity),u_image0:new i.Uniform1i(Y,D.u_image0),u_image1:new i.Uniform1i(Y,D.u_image1),u_brightness_low:new i.Uniform1f(Y,D.u_brightness_low),u_brightness_high:new i.Uniform1f(Y,D.u_brightness_high),u_saturation_factor:new i.Uniform1f(Y,D.u_saturation_factor),u_contrast_factor:new i.Uniform1f(Y,D.u_contrast_factor),u_spin_weights:new i.Uniform3f(Y,D.u_spin_weights)}},Ls=function(Y,D,J,q,K){return{u_matrix:Y,u_tl_parent:D,u_scale_parent:J,u_buffer_scale:1,u_fade_t:q.mix,u_opacity:q.opacity*K.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:K.paint.get("raster-brightness-min"),u_brightness_high:K.paint.get("raster-brightness-max"),u_saturation_factor:ys(K.paint.get("raster-saturation")),u_contrast_factor:no(K.paint.get("raster-contrast")),u_spin_weights:va(K.paint.get("raster-hue-rotate"))}};function va(Y){Y*=Math.PI/180;var D=Math.sin(Y),J=Math.cos(Y);return[(2*J+1)/3,(-Math.sqrt(3)*D-J+1)/3,(Math.sqrt(3)*D-J+1)/3]}function no(Y){return Y>0?1/(1-Y):1+Y}function ys(Y){return Y>0?1-1/(1.001-Y):-Y}var rs=function(Y,D){return{u_is_size_zoom_constant:new i.Uniform1i(Y,D.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,D.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,D.u_size_t),u_size:new i.Uniform1f(Y,D.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,D.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,D.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,D.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,D.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,D.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,D.u_coord_matrix),u_is_text:new i.Uniform1i(Y,D.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_texture:new i.Uniform1i(Y,D.u_texture)}},$l=function(Y,D){return{u_is_size_zoom_constant:new i.Uniform1i(Y,D.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,D.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,D.u_size_t),u_size:new i.Uniform1f(Y,D.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,D.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,D.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,D.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,D.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,D.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,D.u_coord_matrix),u_is_text:new i.Uniform1i(Y,D.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_texture:new i.Uniform1i(Y,D.u_texture),u_gamma_scale:new i.Uniform1f(Y,D.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(Y,D.u_is_halo)}},Cu=function(Y,D){return{u_is_size_zoom_constant:new i.Uniform1i(Y,D.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,D.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,D.u_size_t),u_size:new i.Uniform1f(Y,D.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,D.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,D.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,D.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,D.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,D.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,D.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,D.u_coord_matrix),u_is_text:new i.Uniform1i(Y,D.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,D.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_texsize_icon:new i.Uniform2f(Y,D.u_texsize_icon),u_texture:new i.Uniform1i(Y,D.u_texture),u_texture_icon:new i.Uniform1i(Y,D.u_texture_icon),u_gamma_scale:new i.Uniform1f(Y,D.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(Y,D.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(Y,D.u_is_halo)}},Yu=function(Y,D,J,q,K,de,ne,we,Ue,ft){var Xt=K.transform;return{u_is_size_zoom_constant:+(Y==="constant"||Y==="source"),u_is_size_feature_constant:+(Y==="constant"||Y==="camera"),u_size_t:D?D.uSizeT:0,u_size:D?D.uSize:0,u_camera_to_center_distance:Xt.cameraToCenterDistance,u_pitch:Xt.pitch/360*2*Math.PI,u_rotate_symbol:+J,u_aspect_ratio:Xt.width/Xt.height,u_fade_change:K.options.fadeDuration?K.symbolFadeChange:1,u_matrix:de,u_label_plane_matrix:ne,u_coord_matrix:we,u_is_text:+Ue,u_pitch_with_map:+q,u_texsize:ft,u_texture:0}},Nc=function(Y,D,J,q,K,de,ne,we,Ue,ft,Xt){var hr=K.transform;return i.extend(Yu(Y,D,J,q,K,de,ne,we,Ue,ft),{u_gamma_scale:q?Math.cos(hr._pitch)*hr.cameraToCenterDistance:1,u_device_pixel_ratio:i.browser.devicePixelRatio,u_is_halo:+Xt})},pu=function(Y,D,J,q,K,de,ne,we,Ue,ft){return i.extend(Nc(Y,D,J,q,K,de,ne,we,!0,Ue,!0),{u_texsize_icon:ft,u_texture_icon:1})},Uc=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_opacity:new i.Uniform1f(Y,D.u_opacity),u_color:new i.UniformColor(Y,D.u_color)}},xu=function(Y,D){return{u_matrix:new i.UniformMatrix4f(Y,D.u_matrix),u_opacity:new i.Uniform1f(Y,D.u_opacity),u_image:new i.Uniform1i(Y,D.u_image),u_pattern_tl_a:new i.Uniform2f(Y,D.u_pattern_tl_a),u_pattern_br_a:new i.Uniform2f(Y,D.u_pattern_br_a),u_pattern_tl_b:new i.Uniform2f(Y,D.u_pattern_tl_b),u_pattern_br_b:new i.Uniform2f(Y,D.u_pattern_br_b),u_texsize:new i.Uniform2f(Y,D.u_texsize),u_mix:new i.Uniform1f(Y,D.u_mix),u_pattern_size_a:new i.Uniform2f(Y,D.u_pattern_size_a),u_pattern_size_b:new i.Uniform2f(Y,D.u_pattern_size_b),u_scale_a:new i.Uniform1f(Y,D.u_scale_a),u_scale_b:new i.Uniform1f(Y,D.u_scale_b),u_pixel_coord_upper:new i.Uniform2f(Y,D.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,D.u_pixel_coord_lower),u_tile_units_to_pixels:new i.Uniform1f(Y,D.u_tile_units_to_pixels)}},Ac=function(Y,D,J){return{u_matrix:Y,u_opacity:D,u_color:J}},Ua=function(Y,D,J,q,K,de){return i.extend(uf(q,de,J,K),{u_matrix:Y,u_opacity:D})},oo={fillExtrusion:Xf,fillExtrusionPattern:Wl,fill:Oc,fillPattern:Tc,fillOutline:wl,fillOutlinePattern:vu,circle:At,collisionBox:Cr,collisionCircle:Ar,debug:Xi,clippingMask:wn,heatmap:Yi,heatmapTexture:Qi,hillshade:$n,hillshadePrepare:Ca,line:Yn,lineGradient:Dn,linePattern:Ka,lineSDF:bo,raster:Ws,symbolIcon:rs,symbolSDF:$l,symbolTextAndIcon:Cu,background:Uc,backgroundPattern:xu},Vc;function hc(Y,D,J,q,K,de,ne){for(var we=Y.context,Ue=we.gl,ft=Y.useProgram("collisionBox"),Xt=[],hr=0,qt=0,Ve=0;Ve0){var Dt=i.create(),yt=Ot;i.mul(Dt,Ct.placementInvProjMatrix,Y.transform.glCoordMatrix),i.mul(Dt,Dt,Ct.placementViewportMatrix),Xt.push({circleArray:Bt,circleOffset:qt,transform:yt,invTransform:Dt}),hr+=Bt.length/4,qt=hr}Rt&&ft.draw(we,Ue.LINES,wi.disabled,Fn.disabled,Y.colorModeForRenderPass(),Er.disabled,Kr(Ot,Y.transform,at),J.id,Rt.layoutVertexBuffer,Rt.indexBuffer,Rt.segments,null,Y.transform.zoom,null,null,Rt.collisionVertexBuffer)}}if(!(!ne||!Xt.length)){var Pt=Y.useProgram("collisionCircle"),ht=new i.StructArrayLayout2f1f2i16;ht.resize(hr*4),ht._trim();for(var ur=0,br=0,Ur=Xt;br=0&&(Qe[Ct.associatedIconIndex]={shiftedAnchor:Ti,angle:gn})}}if(Xt){Ve.clear();for(var Ci=Y.icon.placedSymbolArray,Bi=0;Bi0){var ne=i.browser.now(),we=(ne-Y.timeAdded)/de,Ue=D?(ne-D.timeAdded)/de:-1,ft=J.getSource(),Xt=K.coveringZoomLevel({tileSize:ft.tileSize,roundZoom:ft.roundZoom}),hr=!D||Math.abs(D.tileID.overscaledZ-Xt)>Math.abs(Y.tileID.overscaledZ-Xt),qt=hr&&Y.refreshedUponExpiration?1:i.clamp(hr?we:1-Ue,0,1);return Y.refreshedUponExpiration&&we>=1&&(Y.refreshedUponExpiration=!1),D?{opacity:1,mix:1-qt}:{opacity:qt,mix:0}}else return{opacity:1,mix:0}}function tr(Y,D,J){var q=J.paint.get("background-color"),K=J.paint.get("background-opacity");if(K!==0){var de=Y.context,ne=de.gl,we=Y.transform,Ue=we.tileSize,ft=J.paint.get("background-pattern");if(!Y.isPatternMissing(ft)){var Xt=!ft&&q.a===1&&K===1&&Y.opaquePassEnabledForLayer()?"opaque":"translucent";if(Y.renderPass===Xt){var hr=Fn.disabled,qt=Y.depthModeForSublayer(0,Xt==="opaque"?wi.ReadWrite:wi.ReadOnly),Ve=Y.colorModeForRenderPass(),Qe=Y.useProgram(ft?"backgroundPattern":"background"),at=we.coveringTiles({tileSize:Ue});ft&&(de.activeTexture.set(ne.TEXTURE0),Y.imageManager.bind(Y.context));for(var Ct=J.getCrossfadeParameters(),Ot=0,Rt=at;Ot "+J.overscaledZ);var Ot=Ct+" "+Ve+"kb";$a(Y,Ot),ne.draw(q,K.TRIANGLES,we,Ue,wt.alphaBlended,Er.disabled,dn(de,i.Color.transparent,at),Xt,Y.debugBuffer,Y.quadTriangleIndexBuffer,Y.debugSegments)}function $a(Y,D){Y.initDebugOverlayCanvas();var J=Y.debugOverlayCanvas,q=Y.context.gl,K=Y.debugOverlayCanvas.getContext("2d");K.clearRect(0,0,J.width,J.height),K.shadowColor="white",K.shadowBlur=2,K.lineWidth=1.5,K.strokeStyle="white",K.textBaseline="top",K.font="bold 36px Open Sans, sans-serif",K.fillText(D,5,5),K.strokeText(D,5,5),Y.debugOverlayTexture.update(J),Y.debugOverlayTexture.bind(q.LINEAR,q.CLAMP_TO_EDGE)}function Co(Y,D,J){var q=Y.context,K=J.implementation;if(Y.renderPass==="offscreen"){var de=K.prerender;de&&(Y.setCustomLayerDefaults(),q.setColorMode(Y.colorModeForRenderPass()),de.call(K,q.gl,Y.transform.customLayerMatrix()),q.setDirty(),Y.setBaseState())}else if(Y.renderPass==="translucent"){Y.setCustomLayerDefaults(),q.setColorMode(Y.colorModeForRenderPass()),q.setStencilMode(Fn.disabled);var ne=K.renderingMode==="3d"?new wi(Y.context.gl.LEQUAL,wi.ReadWrite,Y.depthRangeFor3D):Y.depthModeForSublayer(0,wi.ReadOnly);q.setDepthMode(ne),K.render(q.gl,Y.transform.customLayerMatrix()),q.setDirty(),Y.setBaseState(),q.bindFramebuffer.set(null)}}var Qa={symbol:w,circle:ot,heatmap:Tt,line:Ir,fill:ve,"fill-extrusion":De,hillshade:et,raster:Ft,background:tr,debug:Ta,custom:Co},mo=function(D,J){this.context=new Xr(D),this.transform=J,this._tileTextures={},this.setup(),this.numSublayers=ri.maxUnderzooming+ri.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Uf,this.gpuTimers={}};mo.prototype.resize=function(D,J){if(this.width=D*i.browser.devicePixelRatio,this.height=J*i.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var q=0,K=this.style._order;q256&&this.clearStencil(),q.setColorMode(wt.disabled),q.setDepthMode(wi.disabled);var de=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var ne=0,we=J;ne256&&this.clearStencil();var D=this.nextStencilID++,J=this.context.gl;return new Fn({func:J.NOTEQUAL,mask:255},D,255,J.KEEP,J.KEEP,J.REPLACE)},mo.prototype.stencilModeForClipping=function(D){var J=this.context.gl;return new Fn({func:J.EQUAL,mask:255},this._tileClippingMaskIDs[D.key],0,J.KEEP,J.KEEP,J.REPLACE)},mo.prototype.stencilConfigForOverlap=function(D){var J,q=this.context.gl,K=D.sort(function(ft,Xt){return Xt.overscaledZ-ft.overscaledZ}),de=K[K.length-1].overscaledZ,ne=K[0].overscaledZ-de+1;if(ne>1){this.currentStencilSource=void 0,this.nextStencilID+ne>256&&this.clearStencil();for(var we={},Ue=0;Ue=0;this.currentLayer--){var Dt=this.style._layers[K[this.currentLayer]],yt=de[Dt.source],Pt=Ue[Dt.source];this._renderTileClippingMasks(Dt,Pt),this.renderLayer(this,yt,Dt,Pt)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer0?J.pop():null},mo.prototype.isPatternMissing=function(D){if(!D)return!1;if(!D.from||!D.to)return!0;var J=this.imageManager.getPattern(D.from.toString()),q=this.imageManager.getPattern(D.to.toString());return!J||!q},mo.prototype.useProgram=function(D,J){this.cache=this.cache||{};var q=""+D+(J?J.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[q]||(this.cache[q]=new Rf(this.context,D,wf[D],J,oo[D],this._showOverdrawInspector)),this.cache[q]},mo.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},mo.prototype.setBaseState=function(){var D=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(D.FUNC_ADD)},mo.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=i.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var D=this.context.gl;this.debugOverlayTexture=new i.Texture(this.context,this.debugOverlayCanvas,D.RGBA)}},mo.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var Bo=function(D,J){this.points=D,this.planes=J};Bo.fromInvProjectionMatrix=function(D,J,q){var K=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]],de=Math.pow(2,q),ne=K.map(function(ft){return i.transformMat4([],ft,D)}).map(function(ft){return i.scale$1([],ft,1/ft[3]/J*de)}),we=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]],Ue=we.map(function(ft){var Xt=i.sub([],ne[ft[0]],ne[ft[1]]),hr=i.sub([],ne[ft[2]],ne[ft[1]]),qt=i.normalize([],i.cross([],Xt,hr)),Ve=-i.dot(qt,ne[ft[1]]);return qt.concat(Ve)});return new Bo(ne,Ue)};var Ps=function(D,J){this.min=D,this.max=J,this.center=i.scale$2([],i.add([],this.min,this.max),.5)};Ps.prototype.quadrant=function(D){for(var J=[D%2===0,D<2],q=i.clone$2(this.min),K=i.clone$2(this.max),de=0;de=0;if(ne===0)return 0;ne!==J.length&&(q=!1)}if(q)return 2;for(var Ue=0;Ue<3;Ue++){for(var ft=Number.MAX_VALUE,Xt=-Number.MAX_VALUE,hr=0;hrthis.max[Ue]-this.min[Ue])return 0}return 1};var Ts=function(D,J,q,K){if(D===void 0&&(D=0),J===void 0&&(J=0),q===void 0&&(q=0),K===void 0&&(K=0),isNaN(D)||D<0||isNaN(J)||J<0||isNaN(q)||q<0||isNaN(K)||K<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=D,this.bottom=J,this.left=q,this.right=K};Ts.prototype.interpolate=function(D,J,q){return J.top!=null&&D.top!=null&&(this.top=i.number(D.top,J.top,q)),J.bottom!=null&&D.bottom!=null&&(this.bottom=i.number(D.bottom,J.bottom,q)),J.left!=null&&D.left!=null&&(this.left=i.number(D.left,J.left,q)),J.right!=null&&D.right!=null&&(this.right=i.number(D.right,J.right,q)),this},Ts.prototype.getCenter=function(D,J){var q=i.clamp((this.left+D-this.right)/2,0,D),K=i.clamp((this.top+J-this.bottom)/2,0,J);return new i.Point(q,K)},Ts.prototype.equals=function(D){return this.top===D.top&&this.bottom===D.bottom&&this.left===D.left&&this.right===D.right},Ts.prototype.clone=function(){return new Ts(this.top,this.bottom,this.left,this.right)},Ts.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var wo=function(D,J,q,K,de){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=de===void 0?!0:de,this._minZoom=D||0,this._maxZoom=J||22,this._minPitch=q==null?0:q,this._maxPitch=K==null?60:K,this.setMaxBounds(),this.width=0,this.height=0,this._center=new i.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Ts,this._posMatrixCache={},this._alignedPosMatrixCache={}},To={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};wo.prototype.clone=function(){var D=new wo(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return D.tileSize=this.tileSize,D.latRange=this.latRange,D.width=this.width,D.height=this.height,D._center=this._center,D.zoom=this.zoom,D.angle=this.angle,D._fov=this._fov,D._pitch=this._pitch,D._unmodified=this._unmodified,D._edgeInsets=this._edgeInsets.clone(),D._calcMatrices(),D},To.minZoom.get=function(){return this._minZoom},To.minZoom.set=function(Y){this._minZoom!==Y&&(this._minZoom=Y,this.zoom=Math.max(this.zoom,Y))},To.maxZoom.get=function(){return this._maxZoom},To.maxZoom.set=function(Y){this._maxZoom!==Y&&(this._maxZoom=Y,this.zoom=Math.min(this.zoom,Y))},To.minPitch.get=function(){return this._minPitch},To.minPitch.set=function(Y){this._minPitch!==Y&&(this._minPitch=Y,this.pitch=Math.max(this.pitch,Y))},To.maxPitch.get=function(){return this._maxPitch},To.maxPitch.set=function(Y){this._maxPitch!==Y&&(this._maxPitch=Y,this.pitch=Math.min(this.pitch,Y))},To.renderWorldCopies.get=function(){return this._renderWorldCopies},To.renderWorldCopies.set=function(Y){Y===void 0?Y=!0:Y===null&&(Y=!1),this._renderWorldCopies=Y},To.worldSize.get=function(){return this.tileSize*this.scale},To.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},To.size.get=function(){return new i.Point(this.width,this.height)},To.bearing.get=function(){return-this.angle/Math.PI*180},To.bearing.set=function(Y){var D=-i.wrap(Y,-180,180)*Math.PI/180;this.angle!==D&&(this._unmodified=!1,this.angle=D,this._calcMatrices(),this.rotationMatrix=i.create$2(),i.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},To.pitch.get=function(){return this._pitch/Math.PI*180},To.pitch.set=function(Y){var D=i.clamp(Y,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==D&&(this._unmodified=!1,this._pitch=D,this._calcMatrices())},To.fov.get=function(){return this._fov/Math.PI*180},To.fov.set=function(Y){Y=Math.max(.01,Math.min(60,Y)),this._fov!==Y&&(this._unmodified=!1,this._fov=Y/180*Math.PI,this._calcMatrices())},To.zoom.get=function(){return this._zoom},To.zoom.set=function(Y){var D=Math.min(Math.max(Y,this.minZoom),this.maxZoom);this._zoom!==D&&(this._unmodified=!1,this._zoom=D,this.scale=this.zoomScale(D),this.tileZoom=Math.floor(D),this.zoomFraction=D-this.tileZoom,this._constrain(),this._calcMatrices())},To.center.get=function(){return this._center},To.center.set=function(Y){Y.lat===this._center.lat&&Y.lng===this._center.lng||(this._unmodified=!1,this._center=Y,this._constrain(),this._calcMatrices())},To.padding.get=function(){return this._edgeInsets.toJSON()},To.padding.set=function(Y){this._edgeInsets.equals(Y)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,Y,1),this._calcMatrices())},To.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},wo.prototype.isPaddingEqual=function(D){return this._edgeInsets.equals(D)},wo.prototype.interpolatePadding=function(D,J,q){this._unmodified=!1,this._edgeInsets.interpolate(D,J,q),this._constrain(),this._calcMatrices()},wo.prototype.coveringZoomLevel=function(D){var J=(D.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/D.tileSize));return Math.max(0,J)},wo.prototype.getVisibleUnwrappedCoordinates=function(D){var J=[new i.UnwrappedTileID(0,D)];if(this._renderWorldCopies)for(var q=this.pointCoordinate(new i.Point(0,0)),K=this.pointCoordinate(new i.Point(this.width,0)),de=this.pointCoordinate(new i.Point(this.width,this.height)),ne=this.pointCoordinate(new i.Point(0,this.height)),we=Math.floor(Math.min(q.x,K.x,de.x,ne.x)),Ue=Math.floor(Math.max(q.x,K.x,de.x,ne.x)),ft=1,Xt=we-ft;Xt<=Ue+ft;Xt++)Xt!==0&&J.push(new i.UnwrappedTileID(Xt,D));return J},wo.prototype.coveringTiles=function(D){var J=this.coveringZoomLevel(D),q=J;if(D.minzoom!==void 0&&JD.maxzoom&&(J=D.maxzoom);var K=i.MercatorCoordinate.fromLngLat(this.center),de=Math.pow(2,J),ne=[de*K.x,de*K.y,0],we=Bo.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,J),Ue=D.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(Ue=J);var ft=3,Xt=function(fi){return{aabb:new Ps([fi*de,0,0],[(fi+1)*de,de,0]),zoom:0,x:0,y:0,wrap:fi,fullyVisible:!1}},hr=[],qt=[],Ve=J,Qe=D.reparseOverscaled?q:J;if(this._renderWorldCopies)for(var at=1;at<=3;at++)hr.push(Xt(-at)),hr.push(Xt(at));for(hr.push(Xt(0));hr.length>0;){var Ct=hr.pop(),Ot=Ct.x,Rt=Ct.y,Bt=Ct.fullyVisible;if(!Bt){var Dt=Ct.aabb.intersects(we);if(Dt===0)continue;Bt=Dt===2}var yt=Ct.aabb.distanceX(ne),Pt=Ct.aabb.distanceY(ne),ht=Math.max(Math.abs(yt),Math.abs(Pt)),ur=ft+(1<ur&&Ct.zoom>=Ue){qt.push({tileID:new i.OverscaledTileID(Ct.zoom===Ve?Qe:Ct.zoom,Ct.wrap,Ct.zoom,Ot,Rt),distanceSq:i.sqrLen([ne[0]-.5-Ot,ne[1]-.5-Rt])});continue}for(var br=0;br<4;br++){var Ur=(Ot<<1)+br%2,Di=(Rt<<1)+(br>>1);hr.push({aabb:Ct.aabb.quadrant(br),zoom:Ct.zoom+1,x:Ur,y:Di,wrap:Ct.wrap,fullyVisible:Bt})}}return qt.sort(function(fi,Ti){return fi.distanceSq-Ti.distanceSq}).map(function(fi){return fi.tileID})},wo.prototype.resize=function(D,J){this.width=D,this.height=J,this.pixelsToGLUnits=[2/D,-2/J],this._constrain(),this._calcMatrices()},To.unmodified.get=function(){return this._unmodified},wo.prototype.zoomScale=function(D){return Math.pow(2,D)},wo.prototype.scaleZoom=function(D){return Math.log(D)/Math.LN2},wo.prototype.project=function(D){var J=i.clamp(D.lat,-this.maxValidLatitude,this.maxValidLatitude);return new i.Point(i.mercatorXfromLng(D.lng)*this.worldSize,i.mercatorYfromLat(J)*this.worldSize)},wo.prototype.unproject=function(D){return new i.MercatorCoordinate(D.x/this.worldSize,D.y/this.worldSize).toLngLat()},To.point.get=function(){return this.project(this.center)},wo.prototype.setLocationAtPoint=function(D,J){var q=this.pointCoordinate(J),K=this.pointCoordinate(this.centerPoint),de=this.locationCoordinate(D),ne=new i.MercatorCoordinate(de.x-(q.x-K.x),de.y-(q.y-K.y));this.center=this.coordinateLocation(ne),this._renderWorldCopies&&(this.center=this.center.wrap())},wo.prototype.locationPoint=function(D){return this.coordinatePoint(this.locationCoordinate(D))},wo.prototype.pointLocation=function(D){return this.coordinateLocation(this.pointCoordinate(D))},wo.prototype.locationCoordinate=function(D){return i.MercatorCoordinate.fromLngLat(D)},wo.prototype.coordinateLocation=function(D){return D.toLngLat()},wo.prototype.pointCoordinate=function(D){var J=0,q=[D.x,D.y,0,1],K=[D.x,D.y,1,1];i.transformMat4(q,q,this.pixelMatrixInverse),i.transformMat4(K,K,this.pixelMatrixInverse);var de=q[3],ne=K[3],we=q[0]/de,Ue=K[0]/ne,ft=q[1]/de,Xt=K[1]/ne,hr=q[2]/de,qt=K[2]/ne,Ve=hr===qt?0:(J-hr)/(qt-hr);return new i.MercatorCoordinate(i.number(we,Ue,Ve)/this.worldSize,i.number(ft,Xt,Ve)/this.worldSize)},wo.prototype.coordinatePoint=function(D){var J=[D.x*this.worldSize,D.y*this.worldSize,0,1];return i.transformMat4(J,J,this.pixelMatrix),new i.Point(J[0]/J[3],J[1]/J[3])},wo.prototype.getBounds=function(){return new i.LngLatBounds().extend(this.pointLocation(new i.Point(0,0))).extend(this.pointLocation(new i.Point(this.width,0))).extend(this.pointLocation(new i.Point(this.width,this.height))).extend(this.pointLocation(new i.Point(0,this.height)))},wo.prototype.getMaxBounds=function(){return!this.latRange||this.latRange.length!==2||!this.lngRange||this.lngRange.length!==2?null:new i.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]])},wo.prototype.setMaxBounds=function(D){D?(this.lngRange=[D.getWest(),D.getEast()],this.latRange=[D.getSouth(),D.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},wo.prototype.calculatePosMatrix=function(D,J){J===void 0&&(J=!1);var q=D.key,K=J?this._alignedPosMatrixCache:this._posMatrixCache;if(K[q])return K[q];var de=D.canonical,ne=this.worldSize/this.zoomScale(de.z),we=de.x+Math.pow(2,de.z)*D.wrap,Ue=i.identity(new Float64Array(16));return i.translate(Ue,Ue,[we*ne,de.y*ne,0]),i.scale(Ue,Ue,[ne/i.EXTENT,ne/i.EXTENT,1]),i.multiply(Ue,J?this.alignedProjMatrix:this.projMatrix,Ue),K[q]=new Float32Array(Ue),K[q]},wo.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},wo.prototype._constrain=function(){if(!(!this.center||!this.width||!this.height||this._constraining)){this._constraining=!0;var D=-90,J=90,q=-180,K=180,de,ne,we,Ue,ft=this.size,Xt=this._unmodified;if(this.latRange){var hr=this.latRange;D=i.mercatorYfromLat(hr[1])*this.worldSize,J=i.mercatorYfromLat(hr[0])*this.worldSize,de=J-DJ&&(Ue=J-Ct)}if(this.lngRange){var Ot=Ve.x,Rt=ft.x/2;Ot-RtK&&(we=K-Rt)}(we!==void 0||Ue!==void 0)&&(this.center=this.unproject(new i.Point(we!==void 0?we:Ve.x,Ue!==void 0?Ue:Ve.y))),this._unmodified=Xt,this._constraining=!1}},wo.prototype._calcMatrices=function(){if(this.height){var D=this._fov/2,J=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(D)*this.height;var q=Math.PI/2+this._pitch,K=this._fov*(.5+J.y/this.height),de=Math.sin(K)*this.cameraToCenterDistance/Math.sin(i.clamp(Math.PI-q-K,.01,Math.PI-.01)),ne=this.point,we=ne.x,Ue=ne.y,ft=Math.cos(Math.PI/2-this._pitch)*de+this.cameraToCenterDistance,Xt=ft*1.01,hr=this.height/50,qt=new Float64Array(16);i.perspective(qt,this._fov,this.width/this.height,hr,Xt),qt[8]=-J.x*2/this.width,qt[9]=J.y*2/this.height,i.scale(qt,qt,[1,-1,1]),i.translate(qt,qt,[0,0,-this.cameraToCenterDistance]),i.rotateX(qt,qt,this._pitch),i.rotateZ(qt,qt,this.angle),i.translate(qt,qt,[-we,-Ue,0]),this.mercatorMatrix=i.scale([],qt,[this.worldSize,this.worldSize,this.worldSize]),i.scale(qt,qt,[1,1,i.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=qt,this.invProjMatrix=i.invert([],this.projMatrix);var Ve=this.width%2/2,Qe=this.height%2/2,at=Math.cos(this.angle),Ct=Math.sin(this.angle),Ot=we-Math.round(we)+at*Ve+Ct*Qe,Rt=Ue-Math.round(Ue)+at*Qe+Ct*Ve,Bt=new Float64Array(qt);if(i.translate(Bt,Bt,[Ot>.5?Ot-1:Ot,Rt>.5?Rt-1:Rt,0]),this.alignedProjMatrix=Bt,qt=i.create(),i.scale(qt,qt,[this.width/2,-this.height/2,1]),i.translate(qt,qt,[1,-1,0]),this.labelPlaneMatrix=qt,qt=i.create(),i.scale(qt,qt,[1,-1,1]),i.translate(qt,qt,[-1,-1,0]),i.scale(qt,qt,[2/this.width,2/this.height,1]),this.glCoordMatrix=qt,this.pixelMatrix=i.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),qt=i.invert(new Float64Array(16),this.pixelMatrix),!qt)throw new Error("failed to invert matrix");this.pixelMatrixInverse=qt,this._posMatrixCache={},this._alignedPosMatrixCache={}}},wo.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var D=this.pointCoordinate(new i.Point(0,0)),J=[D.x*this.worldSize,D.y*this.worldSize,0,1],q=i.transformMat4(J,J,this.pixelMatrix);return q[3]/this.cameraToCenterDistance},wo.prototype.getCameraPoint=function(){var D=this._pitch,J=Math.tan(D)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new i.Point(0,J))},wo.prototype.getCameraQueryGeometry=function(D){var J=this.getCameraPoint();if(D.length===1)return[D[0],J];for(var q=J.x,K=J.y,de=J.x,ne=J.y,we=0,Ue=D;we=3&&!D.some(function(q){return isNaN(q)})){var J=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(D[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+D[2],+D[1]],zoom:+D[0],bearing:J,pitch:+(D[4]||0)}),!0}return!1},Ul.prototype._updateHashUnthrottled=function(){var D=i.window.location.href.replace(/(#.+)?$/,this.getHashString());try{i.window.history.replaceState(i.window.history.state,null,D)}catch(J){}};var Lu={linearity:.3,easing:i.bezier(0,0,.3,1)},au=i.extend({deceleration:2500,maxSpeed:1400},Lu),Js=i.extend({deceleration:20,maxSpeed:1400},Lu),Ql=i.extend({deceleration:1e3,maxSpeed:360},Lu),dc=i.extend({deceleration:1e3,maxSpeed:90},Lu),Tl=function(D){this._map=D,this.clear()};Tl.prototype.clear=function(){this._inertiaBuffer=[]},Tl.prototype.record=function(D){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:i.browser.now(),settings:D})},Tl.prototype._drainInertiaBuffer=function(){for(var D=this._inertiaBuffer,J=i.browser.now(),q=160;D.length>0&&J-D[0].time>q;)D.shift()},Tl.prototype._onMoveEnd=function(D){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var J={zoom:0,bearing:0,pitch:0,pan:new i.Point(0,0),pinchAround:void 0,around:void 0},q=0,K=this._inertiaBuffer;q=this._clickTolerance||this._map.fire(new se(D.type,this._map,D))},He.prototype.dblclick=function(D){return this._firePreventable(new se(D.type,this._map,D))},He.prototype.mouseover=function(D){this._map.fire(new se(D.type,this._map,D))},He.prototype.mouseout=function(D){this._map.fire(new se(D.type,this._map,D))},He.prototype.touchstart=function(D){return this._firePreventable(new Te(D.type,this._map,D))},He.prototype.touchmove=function(D){this._map.fire(new Te(D.type,this._map,D))},He.prototype.touchend=function(D){this._map.fire(new Te(D.type,this._map,D))},He.prototype.touchcancel=function(D){this._map.fire(new Te(D.type,this._map,D))},He.prototype._firePreventable=function(D){if(this._map.fire(D),D.defaultPrevented)return{}},He.prototype.isEnabled=function(){return!0},He.prototype.isActive=function(){return!1},He.prototype.enable=function(){},He.prototype.disable=function(){};var Ye=function(D){this._map=D};Ye.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},Ye.prototype.mousemove=function(D){this._map.fire(new se(D.type,this._map,D))},Ye.prototype.mousedown=function(){this._delayContextMenu=!0},Ye.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new se("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},Ye.prototype.contextmenu=function(D){this._delayContextMenu?this._contextMenuEvent=D:this._map.fire(new se(D.type,this._map,D)),this._map.listens("contextmenu")&&D.preventDefault()},Ye.prototype.isEnabled=function(){return!0},Ye.prototype.isActive=function(){return!1},Ye.prototype.enable=function(){},Ye.prototype.disable=function(){};var kt=function(D,J){this._map=D,this._el=D.getCanvasContainer(),this._container=D.getContainer(),this._clickTolerance=J.clickTolerance||1};kt.prototype.isEnabled=function(){return!!this._enabled},kt.prototype.isActive=function(){return!!this._active},kt.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},kt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},kt.prototype.mousedown=function(D,J){this.isEnabled()&&D.shiftKey&&D.button===0&&(o.disableDrag(),this._startPos=this._lastPos=J,this._active=!0)},kt.prototype.mousemoveWindow=function(D,J){if(this._active){var q=J;if(!(this._lastPos.equals(q)||!this._box&&q.dist(this._startPos)this.numTouches)&&(this.aborted=!0),!this.aborted&&(this.startTime===void 0&&(this.startTime=D.timeStamp),q.length===this.numTouches&&(this.centroid=jt(J),this.touches=nt(q,J)))},qr.prototype.touchmove=function(D,J,q){if(!(this.aborted||!this.centroid)){var K=nt(q,J);for(var de in this.touches){var ne=this.touches[de],we=K[de];(!we||we.dist(ne)>Hr)&&(this.aborted=!0)}}},qr.prototype.touchend=function(D,J,q){if((!this.centroid||D.timeStamp-this.startTime>yr)&&(this.aborted=!0),q.length===0){var K=!this.aborted&&this.centroid;if(this.reset(),K)return K}};var _i=function(D){this.singleTap=new qr(D),this.numTaps=D.numTaps,this.reset()};_i.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},_i.prototype.touchstart=function(D,J,q){this.singleTap.touchstart(D,J,q)},_i.prototype.touchmove=function(D,J,q){this.singleTap.touchmove(D,J,q)},_i.prototype.touchend=function(D,J,q){var K=this.singleTap.touchend(D,J,q);if(K){var de=D.timeStamp-this.lastTime0&&(this._active=!0);var K=nt(q,J),de=new i.Point(0,0),ne=new i.Point(0,0),we=0;for(var Ue in K){var ft=K[Ue],Xt=this._touches[Ue];Xt&&(de._add(ft),ne._add(ft.sub(Xt)),we++,K[Ue]=ft)}if(this._touches=K,!(weMath.abs(Y.x)}var Gn=100,ja=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.reset=function(){Y.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},D.prototype._start=function(q){this._lastPoints=q,Xs(q[0].sub(q[1]))&&(this._valid=!1)},D.prototype._move=function(q,K,de){var ne=q[0].sub(this._lastPoints[0]),we=q[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(ne,we,de.timeStamp),!!this._valid){this._lastPoints=q,this._active=!0;var Ue=(ne.y+we.y)/2,ft=-.5;return{pitchDelta:Ue*ft}}},D.prototype.gestureBeginsVertically=function(q,K,de){if(this._valid!==void 0)return this._valid;var ne=2,we=q.mag()>=ne,Ue=K.mag()>=ne;if(!(!we&&!Ue)){if(!we||!Ue)return this._firstMove===void 0&&(this._firstMove=de),de-this._firstMove0==K.y>0;return Xs(q)&&Xs(K)&&ft}},D}(ia),Fo={panStep:100,bearingStep:15,pitchStep:10},Uo=function(){var D=Fo;this._panStep=D.panStep,this._bearingStep=D.bearingStep,this._pitchStep=D.pitchStep,this._rotationDisabled=!1};Uo.prototype.reset=function(){this._active=!1},Uo.prototype.keydown=function(D){var J=this;if(!(D.altKey||D.ctrlKey||D.metaKey)){var q=0,K=0,de=0,ne=0,we=0;switch(D.keyCode){case 61:case 107:case 171:case 187:q=1;break;case 189:case 109:case 173:q=-1;break;case 37:D.shiftKey?K=-1:(D.preventDefault(),ne=-1);break;case 39:D.shiftKey?K=1:(D.preventDefault(),ne=1);break;case 38:D.shiftKey?de=1:(D.preventDefault(),we=-1);break;case 40:D.shiftKey?de=-1:(D.preventDefault(),we=1);break;default:return}return this._rotationDisabled&&(K=0,de=0),{cameraAnimation:function(Ue){var ft=Ue.getZoom();Ue.easeTo({duration:300,easeId:"keyboardHandler",easing:$s,zoom:q?Math.round(ft)+q*(D.shiftKey?2:1):ft,bearing:Ue.getBearing()+K*J._bearingStep,pitch:Ue.getPitch()+de*J._pitchStep,offset:[-ne*J._panStep,-we*J._panStep],center:Ue.getCenter()},{originalEvent:D})}}}},Uo.prototype.enable=function(){this._enabled=!0},Uo.prototype.disable=function(){this._enabled=!1,this.reset()},Uo.prototype.isEnabled=function(){return this._enabled},Uo.prototype.isActive=function(){return this._active},Uo.prototype.disableRotation=function(){this._rotationDisabled=!0},Uo.prototype.enableRotation=function(){this._rotationDisabled=!1};function $s(Y){return Y*(2-Y)}var Sl=4.000244140625,bu=1/100,dl=1/450,Sc=2,Me=function(D,J){this._map=D,this._el=D.getCanvasContainer(),this._handler=J,this._delta=0,this._defaultZoomRate=bu,this._wheelZoomRate=dl,i.bindAll(["_onTimeout"],this)};Me.prototype.setZoomRate=function(D){this._defaultZoomRate=D},Me.prototype.setWheelZoomRate=function(D){this._wheelZoomRate=D},Me.prototype.isEnabled=function(){return!!this._enabled},Me.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},Me.prototype.isZooming=function(){return!!this._zooming},Me.prototype.enable=function(D){this.isEnabled()||(this._enabled=!0,this._aroundCenter=D&&D.around==="center")},Me.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Me.prototype.wheel=function(D){if(this.isEnabled()){var J=D.deltaMode===i.window.WheelEvent.DOM_DELTA_LINE?D.deltaY*40:D.deltaY,q=i.browser.now(),K=q-(this._lastWheelEventTime||0);this._lastWheelEventTime=q,J!==0&&J%Sl===0?this._type="wheel":J!==0&&Math.abs(J)<4?this._type="trackpad":K>400?(this._type=null,this._lastValue=J,this._timeout=setTimeout(this._onTimeout,40,D)):this._type||(this._type=Math.abs(K*J)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,J+=this._lastValue)),D.shiftKey&&J&&(J=J/4),this._type&&(this._lastWheelEvent=D,this._delta-=J,this._active||this._start(D)),D.preventDefault()}},Me.prototype._onTimeout=function(D){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(D)},Me.prototype._start=function(D){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var J=o.mousePos(this._el,D);this._around=i.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(J)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},Me.prototype.renderFrame=function(){var D=this;if(this._frameId&&(this._frameId=null,!!this.isActive())){var J=this._map.transform;if(this._delta!==0){var q=this._type==="wheel"&&Math.abs(this._delta)>Sl?this._wheelZoomRate:this._defaultZoomRate,K=Sc/(1+Math.exp(-Math.abs(this._delta*q)));this._delta<0&&K!==0&&(K=1/K);var de=typeof this._targetZoom=="number"?J.zoomScale(this._targetZoom):J.scale;this._targetZoom=Math.min(J.maxZoom,Math.max(J.minZoom,J.scaleZoom(de*K))),this._type==="wheel"&&(this._startZoom=J.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var ne=typeof this._targetZoom=="number"?this._targetZoom:J.zoom,we=this._startZoom,Ue=this._easing,ft=!1,Xt;if(this._type==="wheel"&&we&&Ue){var hr=Math.min((i.browser.now()-this._lastWheelEventTime)/200,1),qt=Ue(hr);Xt=i.number(we,ne,qt),hr<1?this._frameId||(this._frameId=!0):ft=!0}else Xt=ne,ft=!0;return this._active=!0,ft&&(this._active=!1,this._finishTimeout=setTimeout(function(){D._zooming=!1,D._handler._triggerRenderFrame(),delete D._targetZoom,delete D._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!ft,zoomDelta:Xt-J.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},Me.prototype._smoothOutEasing=function(D){var J=i.ease;if(this._prevEase){var q=this._prevEase,K=(i.browser.now()-q.start)/q.duration,de=q.easing(K+.01)-q.easing(K),ne=.27/Math.sqrt(de*de+1e-4)*.01,we=Math.sqrt(.27*.27-ne*ne);J=i.bezier(ne,we,.25,1)}return this._prevEase={start:i.browser.now(),duration:D,easing:J},J},Me.prototype.reset=function(){this._active=!1};var bt=function(D,J){this._clickZoom=D,this._tapZoom=J};bt.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},bt.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},bt.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},bt.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var zt=function(){this.reset()};zt.prototype.reset=function(){this._active=!1},zt.prototype.dblclick=function(D,J){return D.preventDefault(),{cameraAnimation:function(q){q.easeTo({duration:300,zoom:q.getZoom()+(D.shiftKey?-1:1),around:q.unproject(J)},{originalEvent:D})}}},zt.prototype.enable=function(){this._enabled=!0},zt.prototype.disable=function(){this._enabled=!1,this.reset()},zt.prototype.isEnabled=function(){return this._enabled},zt.prototype.isActive=function(){return this._active};var Rr=function(){this._tap=new _i({numTouches:1,numTaps:1}),this.reset()};Rr.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},Rr.prototype.touchstart=function(D,J,q){this._swipePoint||(this._tapTime&&D.timeStamp-this._tapTime>gr&&this.reset(),this._tapTime?q.length>0&&(this._swipePoint=J[0],this._swipeTouch=q[0].identifier):this._tap.touchstart(D,J,q))},Rr.prototype.touchmove=function(D,J,q){if(!this._tapTime)this._tap.touchmove(D,J,q);else if(this._swipePoint){if(q[0].identifier!==this._swipeTouch)return;var K=J[0],de=K.y-this._swipePoint.y;return this._swipePoint=K,D.preventDefault(),this._active=!0,{zoomDelta:de/128}}},Rr.prototype.touchend=function(D,J,q){if(this._tapTime)this._swipePoint&&q.length===0&&this.reset();else{var K=this._tap.touchend(D,J,q);K&&(this._tapTime=D.timeStamp)}},Rr.prototype.touchcancel=function(){this.reset()},Rr.prototype.enable=function(){this._enabled=!0},Rr.prototype.disable=function(){this._enabled=!1,this.reset()},Rr.prototype.isEnabled=function(){return this._enabled},Rr.prototype.isActive=function(){return this._active};var jr=function(D,J,q){this._el=D,this._mousePan=J,this._touchPan=q};jr.prototype.enable=function(D){this._inertiaOptions=D||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},jr.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},jr.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},jr.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var Nr=function(D,J,q){this._pitchWithRotate=D.pitchWithRotate,this._mouseRotate=J,this._mousePitch=q};Nr.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},Nr.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},Nr.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},Nr.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var Gr=function(D,J,q,K){this._el=D,this._touchZoom=J,this._touchRotate=q,this._tapDragZoom=K,this._rotationDisabled=!1,this._enabled=!0};Gr.prototype.enable=function(D){this._touchZoom.enable(D),this._rotationDisabled||this._touchRotate.enable(D),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},Gr.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},Gr.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},Gr.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},Gr.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},Gr.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var mi=function(Y){return Y.zoom||Y.drag||Y.pitch||Y.rotate},Ui=function(Y){function D(){Y.apply(this,arguments)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D}(i.Event);function qi(Y){return Y.panDelta&&Y.panDelta.mag()||Y.zoomDelta||Y.bearingDelta||Y.pitchDelta}var Ei=function(D,J){this._map=D,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Tl(D),this._bearingSnap=J.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(J),i.bindAll(["handleEvent","handleWindowEvent"],this);var q=this._el;this._listeners=[[q,"touchstart",{passive:!0}],[q,"touchmove",{passive:!1}],[q,"touchend",void 0],[q,"touchcancel",void 0],[q,"mousedown",void 0],[q,"mousemove",void 0],[q,"mouseup",void 0],[i.window.document,"mousemove",{capture:!0}],[i.window.document,"mouseup",void 0],[q,"mouseover",void 0],[q,"mouseout",void 0],[q,"dblclick",void 0],[q,"click",void 0],[q,"keydown",{capture:!1}],[q,"keyup",void 0],[q,"wheel",{passive:!1}],[q,"contextmenu",void 0],[i.window,"blur",void 0]];for(var K=0,de=this._listeners;Kwe?Math.min(2,yt):Math.max(.5,yt),fi=Math.pow(Di,1-br),Ti=ne.unproject(Bt.add(Dt.mult(br*fi)).mult(Ur));ne.setLocationAtPoint(ne.renderWorldCopies?Ti.wrap():Ti,Ct)}de._fireMoveEvents(K)},function(br){de._afterEase(K,br)},q),this},D.prototype._prepareEase=function(q,K,de){de===void 0&&(de={}),this._moving=!0,!K&&!de.moving&&this.fire(new i.Event("movestart",q)),this._zooming&&!de.zooming&&this.fire(new i.Event("zoomstart",q)),this._rotating&&!de.rotating&&this.fire(new i.Event("rotatestart",q)),this._pitching&&!de.pitching&&this.fire(new i.Event("pitchstart",q))},D.prototype._fireMoveEvents=function(q){this.fire(new i.Event("move",q)),this._zooming&&this.fire(new i.Event("zoom",q)),this._rotating&&this.fire(new i.Event("rotate",q)),this._pitching&&this.fire(new i.Event("pitch",q))},D.prototype._afterEase=function(q,K){if(!(this._easeId&&K&&this._easeId===K)){delete this._easeId;var de=this._zooming,ne=this._rotating,we=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,de&&this.fire(new i.Event("zoomend",q)),ne&&this.fire(new i.Event("rotateend",q)),we&&this.fire(new i.Event("pitchend",q)),this.fire(new i.Event("moveend",q))}},D.prototype.flyTo=function(q,K){var de=this;if(!q.essential&&i.browser.prefersReducedMotion){var ne=i.pick(q,["center","zoom","bearing","pitch","around"]);return this.jumpTo(ne,K)}this.stop(),q=i.extend({offset:[0,0],speed:1.2,curve:1.42,easing:i.ease},q);var we=this.transform,Ue=this.getZoom(),ft=this.getBearing(),Xt=this.getPitch(),hr=this.getPadding(),qt="zoom"in q?i.clamp(+q.zoom,we.minZoom,we.maxZoom):Ue,Ve="bearing"in q?this._normalizeBearing(q.bearing,ft):ft,Qe="pitch"in q?+q.pitch:Xt,at="padding"in q?q.padding:we.padding,Ct=we.zoomScale(qt-Ue),Ot=i.Point.convert(q.offset),Rt=we.centerPoint.add(Ot),Bt=we.pointLocation(Rt),Dt=i.LngLat.convert(q.center||Bt);this._normalizeCenter(Dt);var yt=we.project(Bt),Pt=we.project(Dt).sub(yt),ht=q.curve,ur=Math.max(we.width,we.height),br=ur/Ct,Ur=Pt.mag();if("minZoom"in q){var Di=i.clamp(Math.min(q.minZoom,Ue,qt),we.minZoom,we.maxZoom),fi=ur/we.zoomScale(Di-Ue);ht=Math.sqrt(fi/Ur*2)}var Ti=ht*ht;function gn(so){var Zo=(br*br-ur*ur+(so?-1:1)*Ti*Ti*Ur*Ur)/(2*(so?br:ur)*Ti*Ur);return Math.log(Math.sqrt(Zo*Zo+1)-Zo)}function rn(so){return(Math.exp(so)-Math.exp(-so))/2}function Ci(so){return(Math.exp(so)+Math.exp(-so))/2}function Bi(so){return rn(so)/Ci(so)}var Gi=gn(0),sn=function(so){return Ci(Gi)/Ci(Gi+ht*so)},zn=function(so){return ur*((Ci(Gi)*Bi(Gi+ht*so)-rn(Gi))/Ti)/Ur},Ja=(gn(1)-Gi)/ht;if(Math.abs(Ur)<1e-6||!isFinite(Ja)){if(Math.abs(ur-br)<1e-6)return this.easeTo(q,K);var co=brq.maxDuration&&(q.duration=0),this._zooming=!0,this._rotating=ft!==Ve,this._pitching=Qe!==Xt,this._padding=!we.isPaddingEqual(at),this._prepareEase(K,!1),this._ease(function(so){var Zo=so*Ja,ms=1/sn(Zo);we.zoom=so===1?qt:Ue+we.scaleZoom(ms),de._rotating&&(we.bearing=i.number(ft,Ve,so)),de._pitching&&(we.pitch=i.number(Xt,Qe,so)),de._padding&&(we.interpolatePadding(hr,at,so),Rt=we.centerPoint.add(Ot));var ou=so===1?Dt:we.unproject(yt.add(Pt.mult(zn(Zo))).mult(ms));we.setLocationAtPoint(we.renderWorldCopies?ou.wrap():ou,Rt),de._fireMoveEvents(K)},function(){return de._afterEase(K)},q),this},D.prototype.isEasing=function(){return!!this._easeFrameId},D.prototype.stop=function(){return this._stop()},D.prototype._stop=function(q,K){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var de=this._onEaseEnd;delete this._onEaseEnd,de.call(this,K)}if(!q){var ne=this.handlers;ne&&ne.stop(!1)}return this},D.prototype._ease=function(q,K,de){de.animate===!1||de.duration===0?(q(1),K()):(this._easeStart=i.browser.now(),this._easeOptions=de,this._onEaseFrame=q,this._onEaseEnd=K,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},D.prototype._renderFrameCallback=function(){var q=Math.min((i.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(q)),q<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},D.prototype._normalizeBearing=function(q,K){q=i.wrap(q,-180,180);var de=Math.abs(q-K);return Math.abs(q-360-K)180?-360:de<-180?360:0}},D}(i.Evented),en=function(D){D===void 0&&(D={}),this.options=D,i.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};en.prototype.getDefaultPosition=function(){return"bottom-right"},en.prototype.onAdd=function(D){var J=this.options&&this.options.compact;return this._map=D,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=o.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=o.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),J&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),J===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},en.prototype.onRemove=function(){o.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0},en.prototype._setElementTitle=function(D,J){var q=this._map._getUIString("AttributionControl."+J);D.title=q,D.setAttribute("aria-label",q)},en.prototype._toggleAttribution=function(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","true"))},en.prototype._updateEditLink=function(){var D=this._editLink;D||(D=this._editLink=this._container.querySelector(".mapbox-improve-map"));var J=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||i.config.ACCESS_TOKEN}];if(D){var q=J.reduce(function(K,de,ne){return de.value&&(K+=de.key+"="+de.value+(ne=0)return!1;return!0});var we=D.join(" | ");we!==this._attribHTML&&(this._attribHTML=we,D.length?(this._innerContainer.innerHTML=we,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},en.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var Wi=function(){i.bindAll(["_updateLogo"],this),i.bindAll(["_updateCompact"],this)};Wi.prototype.onAdd=function(D){this._map=D,this._container=o.create("div","mapboxgl-ctrl");var J=o.create("a","mapboxgl-ctrl-logo");return J.target="_blank",J.rel="noopener nofollow",J.href="https://www.mapbox.com/",J.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),J.setAttribute("rel","noopener nofollow"),this._container.appendChild(J),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},Wi.prototype.onRemove=function(){o.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},Wi.prototype.getDefaultPosition=function(){return"bottom-left"},Wi.prototype._updateLogo=function(D){(!D||D.sourceDataType==="metadata")&&(this._container.style.display=this._logoRequired()?"block":"none")},Wi.prototype._logoRequired=function(){if(this._map.style){var D=this._map.style.sourceCaches;for(var J in D){var q=D[J].getSource();if(q.mapbox_logo)return!0}return!1}},Wi.prototype._updateCompact=function(){var D=this._container.children;if(D.length){var J=D[0];this._map.getCanvasContainer().offsetWidth<250?J.classList.add("mapboxgl-compact"):J.classList.remove("mapboxgl-compact")}};var si=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};si.prototype.add=function(D){var J=++this._id,q=this._queue;return q.push({callback:D,id:J,cancelled:!1}),J},si.prototype.remove=function(D){for(var J=this._currentlyRunning,q=J?this._queue.concat(J):this._queue,K=0,de=q;Kq.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(q.minPitch!=null&&q.maxPitch!=null&&q.minPitch>q.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(q.minPitch!=null&&q.minPitchBn)throw new Error("maxPitch must be less than or equal to "+Bn);var de=new wo(q.minZoom,q.maxZoom,q.minPitch,q.maxPitch,q.renderWorldCopies);if(Y.call(this,de,q),this._interactive=q.interactive,this._maxTileCacheSize=q.maxTileCacheSize,this._failIfMajorPerformanceCaveat=q.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=q.preserveDrawingBuffer,this._antialias=q.antialias,this._trackResize=q.trackResize,this._bearingSnap=q.bearingSnap,this._refreshExpiredTiles=q.refreshExpiredTiles,this._fadeDuration=q.fadeDuration,this._crossSourceCollisions=q.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=q.collectResourceTiming,this._renderTaskQueue=new si,this._controls=[],this._mapId=i.uniqueId(),this._locale=i.extend({},Mr,q.locale),this._clickTolerance=q.clickTolerance,this._requestManager=new i.RequestManager(q.transformRequest,q.accessToken),typeof q.container=="string"){if(this._container=i.window.document.getElementById(q.container),!this._container)throw new Error("Container '"+q.container+"' not found.")}else if(q.container instanceof xi)this._container=q.container;else throw new Error("Invalid type: 'container' must be a String or HTMLElement.");if(q.maxBounds&&this.setMaxBounds(q.maxBounds),i.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return K._update(!1)}),this.on("moveend",function(){return K._update(!1)}),this.on("zoom",function(){return K._update(!0)}),typeof i.window!="undefined"&&(i.window.addEventListener("online",this._onWindowOnline,!1),i.window.addEventListener("resize",this._onWindowResize,!1),i.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new Ei(this,q);var ne=typeof q.hash=="string"&&q.hash||void 0;this._hash=q.hash&&new Ul(ne).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:q.center,zoom:q.zoom,bearing:q.bearing,pitch:q.pitch}),q.bounds&&(this.resize(),this.fitBounds(q.bounds,i.extend({},q.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=q.localIdeographFontFamily,q.style&&this.setStyle(q.style,{localIdeographFontFamily:q.localIdeographFontFamily}),q.attributionControl&&this.addControl(new en({customAttribution:q.customAttribution})),this.addControl(new Wi,q.logoPosition),this.on("style.load",function(){K.transform.unmodified&&K.jumpTo(K.style.stylesheet)}),this.on("data",function(we){K._update(we.dataType==="style"),K.fire(new i.Event(we.dataType+"data",we))}),this.on("dataloading",function(we){K.fire(new i.Event(we.dataType+"dataloading",we))})}Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D;var J={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return D.prototype._getMapId=function(){return this._mapId},D.prototype.addControl=function(K,de){if(de===void 0&&(K.getDefaultPosition?de=K.getDefaultPosition():de="top-right"),!K||!K.onAdd)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var ne=K.onAdd(this);this._controls.push(K);var we=this._controlPositions[de];return de.indexOf("bottom")!==-1?we.insertBefore(ne,we.firstChild):we.appendChild(ne),this},D.prototype.removeControl=function(K){if(!K||!K.onRemove)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var de=this._controls.indexOf(K);return de>-1&&this._controls.splice(de,1),K.onRemove(this),this},D.prototype.hasControl=function(K){return this._controls.indexOf(K)>-1},D.prototype.resize=function(K){var de=this._containerDimensions(),ne=de[0],we=de[1];this._resizeCanvas(ne,we),this.transform.resize(ne,we),this.painter.resize(ne,we);var Ue=!this._moving;return Ue&&(this.stop(),this.fire(new i.Event("movestart",K)).fire(new i.Event("move",K))),this.fire(new i.Event("resize",K)),Ue&&this.fire(new i.Event("moveend",K)),this},D.prototype.getBounds=function(){return this.transform.getBounds()},D.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},D.prototype.setMaxBounds=function(K){return this.transform.setMaxBounds(i.LngLatBounds.convert(K)),this._update()},D.prototype.setMinZoom=function(K){if(K=K==null?ci:K,K>=ci&&K<=this.transform.maxZoom)return this.transform.minZoom=K,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=K,this._update(),this.getZoom()>K&&this.setZoom(K),this;throw new Error("maxZoom must be greater than the current minZoom")},D.prototype.getMaxZoom=function(){return this.transform.maxZoom},D.prototype.setMinPitch=function(K){if(K=K==null?Zi:K,K=Zi&&K<=this.transform.maxPitch)return this.transform.minPitch=K,this._update(),this.getPitch()Bn)throw new Error("maxPitch must be less than or equal to "+Bn);if(K>=this.transform.minPitch)return this.transform.maxPitch=K,this._update(),this.getPitch()>K&&this.setPitch(K),this;throw new Error("maxPitch must be greater than the current minPitch")},D.prototype.getMaxPitch=function(){return this.transform.maxPitch},D.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},D.prototype.setRenderWorldCopies=function(K){return this.transform.renderWorldCopies=K,this._update()},D.prototype.project=function(K){return this.transform.locationPoint(i.LngLat.convert(K))},D.prototype.unproject=function(K){return this.transform.pointLocation(i.Point.convert(K))},D.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},D.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},D.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},D.prototype._createDelegatedListener=function(K,de,ne){var we=this,Ue;if(K==="mouseenter"||K==="mouseover"){var ft=!1,Xt=function(Ct){var Ot=we.getLayer(de)?we.queryRenderedFeatures(Ct.point,{layers:[de]}):[];Ot.length?ft||(ft=!0,ne.call(we,new se(K,we,Ct.originalEvent,{features:Ot}))):ft=!1},hr=function(){ft=!1};return{layer:de,listener:ne,delegates:{mousemove:Xt,mouseout:hr}}}else if(K==="mouseleave"||K==="mouseout"){var qt=!1,Ve=function(Ct){var Ot=we.getLayer(de)?we.queryRenderedFeatures(Ct.point,{layers:[de]}):[];Ot.length?qt=!0:qt&&(qt=!1,ne.call(we,new se(K,we,Ct.originalEvent)))},Qe=function(Ct){qt&&(qt=!1,ne.call(we,new se(K,we,Ct.originalEvent)))};return{layer:de,listener:ne,delegates:{mousemove:Ve,mouseout:Qe}}}else{var at=function(Ct){var Ot=we.getLayer(de)?we.queryRenderedFeatures(Ct.point,{layers:[de]}):[];Ot.length&&(Ct.features=Ot,ne.call(we,Ct),delete Ct.features)};return{layer:de,listener:ne,delegates:(Ue={},Ue[K]=at,Ue)}}},D.prototype.on=function(K,de,ne){if(ne===void 0)return Y.prototype.on.call(this,K,de);var we=this._createDelegatedListener(K,de,ne);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[K]=this._delegatedListeners[K]||[],this._delegatedListeners[K].push(we);for(var Ue in we.delegates)this.on(Ue,we.delegates[Ue]);return this},D.prototype.once=function(K,de,ne){if(ne===void 0)return Y.prototype.once.call(this,K,de);var we=this._createDelegatedListener(K,de,ne);for(var Ue in we.delegates)this.once(Ue,we.delegates[Ue]);return this},D.prototype.off=function(K,de,ne){var we=this;if(ne===void 0)return Y.prototype.off.call(this,K,de);var Ue=function(ft){for(var Xt=ft[K],hr=0;hr180;){var ne=J.locationPoint(Y);if(ne.x>=0&&ne.y>=0&&ne.x<=J.width&&ne.y<=J.height)break;Y.lng>J.center.lng?Y.lng-=360:Y.lng+=360}return Y}var Vn={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function na(Y,D,J){var q=Y.classList;for(var K in Vn)q.remove("mapboxgl-"+J+"-anchor-"+K);q.add("mapboxgl-"+J+"-anchor-"+D)}var Ki=function(Y){function D(J,q){if(Y.call(this),(J instanceof i.window.HTMLElement||q)&&(J=i.extend({element:J},q)),i.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=J&&J.anchor||"center",this._color=J&&J.color||"#3FB1CE",this._scale=J&&J.scale||1,this._draggable=J&&J.draggable||!1,this._clickTolerance=J&&J.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=J&&J.rotation||0,this._rotationAlignment=J&&J.rotationAlignment||"auto",this._pitchAlignment=J&&J.pitchAlignment&&J.pitchAlignment!=="auto"?J.pitchAlignment:this._rotationAlignment,!J||!J.element){this._defaultMarker=!0,this._element=o.create("div"),this._element.setAttribute("aria-label","Map marker");var K=o.createNS("http://www.w3.org/2000/svg","svg"),de=41,ne=27;K.setAttributeNS(null,"display","block"),K.setAttributeNS(null,"height",de+"px"),K.setAttributeNS(null,"width",ne+"px"),K.setAttributeNS(null,"viewBox","0 0 "+ne+" "+de);var we=o.createNS("http://www.w3.org/2000/svg","g");we.setAttributeNS(null,"stroke","none"),we.setAttributeNS(null,"stroke-width","1"),we.setAttributeNS(null,"fill","none"),we.setAttributeNS(null,"fill-rule","evenodd");var Ue=o.createNS("http://www.w3.org/2000/svg","g");Ue.setAttributeNS(null,"fill-rule","nonzero");var ft=o.createNS("http://www.w3.org/2000/svg","g");ft.setAttributeNS(null,"transform","translate(3.0, 29.0)"),ft.setAttributeNS(null,"fill","#000000");for(var Xt=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}],hr=0,qt=Xt;hr=K}this._isDragging&&(this._pos=q.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new i.Event("dragstart"))),this.fire(new i.Event("drag")))},D.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new i.Event("dragend")),this._state="inactive"},D.prototype._addDragHandler=function(q){this._element.contains(q.originalEvent.target)&&(q.preventDefault(),this._positionDelta=q.point.sub(this._pos).add(this._offset),this._pointerdownPos=q.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},D.prototype.setDraggable=function(q){return this._draggable=!!q,this._map&&(q?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},D.prototype.isDraggable=function(){return this._draggable},D.prototype.setRotation=function(q){return this._rotation=q||0,this._update(),this},D.prototype.getRotation=function(){return this._rotation},D.prototype.setRotationAlignment=function(q){return this._rotationAlignment=q||"auto",this._update(),this},D.prototype.getRotationAlignment=function(){return this._rotationAlignment},D.prototype.setPitchAlignment=function(q){return this._pitchAlignment=q&&q!=="auto"?q:this._rotationAlignment,this._update(),this},D.prototype.getPitchAlignment=function(){return this._pitchAlignment},D}(i.Evented),kn={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},ta;function oa(Y){ta!==void 0?Y(ta):i.window.navigator.permissions!==void 0?i.window.navigator.permissions.query({name:"geolocation"}).then(function(D){ta=D.state!=="denied",Y(ta)}):(ta=!!i.window.navigator.geolocation,Y(ta))}var ba=0,is=!1,Zs=function(Y){function D(J){Y.call(this),this.options=i.extend({},kn,J),i.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.onAdd=function(q){return this._map=q,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),oa(this._setupUI),this._container},D.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),o.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,ba=0,is=!1},D.prototype._isOutOfMapMaxBounds=function(q){var K=this._map.getMaxBounds(),de=q.coords;return K&&(de.longitudeK.getEast()||de.latitudeK.getNorth())},D.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break}},D.prototype._onSuccess=function(q){if(this._map){if(this._isOutOfMapMaxBounds(q)){this._setErrorState(),this.fire(new i.Event("outofmaxbounds",q)),this._updateMarker(),this._finish();return}if(this.options.trackUserLocation)switch(this._lastKnownPosition=q,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(q),(!this.options.trackUserLocation||this._watchState==="ACTIVE_LOCK")&&this._updateCamera(q),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("geolocate",q)),this._finish()}},D.prototype._updateCamera=function(q){var K=new i.LngLat(q.coords.longitude,q.coords.latitude),de=q.coords.accuracy,ne=this._map.getBearing(),we=i.extend({bearing:ne},this.options.fitBoundsOptions);this._map.fitBounds(K.toBounds(de),we,{geolocateSource:!0})},D.prototype._updateMarker=function(q){if(q){var K=new i.LngLat(q.coords.longitude,q.coords.latitude);this._accuracyCircleMarker.setLngLat(K).addTo(this._map),this._userLocationDotMarker.setLngLat(K).addTo(this._map),this._accuracy=q.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},D.prototype._updateCircleRadius=function(){var q=this._map._container.clientHeight/2,K=this._map.unproject([0,q]),de=this._map.unproject([1,q]),ne=K.distanceTo(de),we=Math.ceil(2*this._accuracy/ne);this._circleElement.style.width=we+"px",this._circleElement.style.height=we+"px"},D.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},D.prototype._onError=function(q){if(this._map){if(this.options.trackUserLocation)if(q.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var K=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=K,this._geolocateButton.setAttribute("aria-label",K),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(q.code===3&&is)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("error",q)),this._finish()}},D.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},D.prototype._setupUI=function(q){var K=this;if(this._container.addEventListener("contextmenu",function(we){return we.preventDefault()}),this._geolocateButton=o.create("button","mapboxgl-ctrl-geolocate",this._container),o.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",q===!1){i.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var de=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=de,this._geolocateButton.setAttribute("aria-label",de)}else{var ne=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=ne,this._geolocateButton.setAttribute("aria-label",ne)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=o.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new Ki(this._dotElement),this._circleElement=o.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Ki({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",function(we){var Ue=we.originalEvent&&we.originalEvent.type==="resize";!we.geolocateSource&&K._watchState==="ACTIVE_LOCK"&&!Ue&&(K._watchState="BACKGROUND",K._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),K._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),K.fire(new i.Event("trackuserlocationend")))})},D.prototype.trigger=function(){if(!this._setup)return i.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new i.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":ba--,is=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new i.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new i.Event("trackuserlocationstart"));break}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error");break}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),ba++;var q;ba>1?(q={maximumAge:6e5,timeout:0},is=!0):(q=this.options.positionOptions,is=!1),this._geolocationWatchID=i.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,q)}}else i.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},D.prototype._clearWatch=function(){i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},D}(i.Evented),Va={maxWidth:100,unit:"metric"},Ml=function(D){this.options=i.extend({},Va,D),i.bindAll(["_onMove","setUnit"],this)};Ml.prototype.getDefaultPosition=function(){return"bottom-left"},Ml.prototype._onMove=function(){zo(this._map,this._container,this.options)},Ml.prototype.onAdd=function(D){return this._map=D,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",D.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},Ml.prototype.onRemove=function(){o.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},Ml.prototype.setUnit=function(D){this.options.unit=D,zo(this._map,this._container,this.options)};function zo(Y,D,J){var q=J&&J.maxWidth||100,K=Y._container.clientHeight/2,de=Y.unproject([0,K]),ne=Y.unproject([q,K]),we=de.distanceTo(ne);if(J&&J.unit==="imperial"){var Ue=3.2808*we;if(Ue>5280){var ft=Ue/5280;Qs(D,q,ft,Y._getUIString("ScaleControl.Miles"))}else Qs(D,q,Ue,Y._getUIString("ScaleControl.Feet"))}else if(J&&J.unit==="nautical"){var Xt=we/1852;Qs(D,q,Xt,Y._getUIString("ScaleControl.NauticalMiles"))}else we>=1e3?Qs(D,q,we/1e3,Y._getUIString("ScaleControl.Kilometers")):Qs(D,q,we,Y._getUIString("ScaleControl.Meters"))}function Qs(Y,D,J,q){var K=Vl(J),de=K/J;Y.style.width=D*de+"px",Y.innerHTML=K+" "+q}function al(Y){var D=Math.pow(10,Math.ceil(-Math.log(Y)/Math.LN10));return Math.round(Y*D)/D}function Vl(Y){var D=Math.pow(10,(""+Math.floor(Y)).length-1),J=Y/D;return J=J>=10?10:J>=5?5:J>=3?3:J>=2?2:J>=1?1:al(J),D*J}var ss=function(D){this._fullscreen=!1,D&&D.container&&(D.container instanceof i.window.HTMLElement?this._container=D.container:i.warnOnce("Full screen control 'container' must be a DOM element.")),i.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in i.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in i.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in i.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in i.window.document&&(this._fullscreenchange="MSFullscreenChange")};ss.prototype.onAdd=function(D){return this._map=D,this._container||(this._container=this._map.getContainer()),this._controlContainer=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",i.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},ss.prototype.onRemove=function(){o.remove(this._controlContainer),this._map=null,i.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},ss.prototype._checkFullscreenSupport=function(){return!!(i.window.document.fullscreenEnabled||i.window.document.mozFullScreenEnabled||i.window.document.msFullscreenEnabled||i.window.document.webkitFullscreenEnabled)},ss.prototype._setupUI=function(){var D=this._fullscreenButton=o.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);o.create("span","mapboxgl-ctrl-icon",D).setAttribute("aria-hidden",!0),D.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),i.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},ss.prototype._updateTitle=function(){var D=this._getTitle();this._fullscreenButton.setAttribute("aria-label",D),this._fullscreenButton.title=D},ss.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},ss.prototype._isFullscreen=function(){return this._fullscreen},ss.prototype._changeIcon=function(){var D=i.window.document.fullscreenElement||i.window.document.mozFullScreenElement||i.window.document.webkitFullscreenElement||i.window.document.msFullscreenElement;D===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},ss.prototype._onClickFullscreen=function(){this._isFullscreen()?i.window.document.exitFullscreen?i.window.document.exitFullscreen():i.window.document.mozCancelFullScreen?i.window.document.mozCancelFullScreen():i.window.document.msExitFullscreen?i.window.document.msExitFullscreen():i.window.document.webkitCancelFullScreen&&i.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var Vs={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},Ys=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),wa=function(Y){function D(J){Y.call(this),this.options=i.extend(Object.create(Vs),J),i.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return Y&&(D.__proto__=Y),D.prototype=Object.create(Y&&Y.prototype),D.prototype.constructor=D,D.prototype.addTo=function(q){return this._map&&this.remove(),this._map=q,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new i.Event("open")),this},D.prototype.isOpen=function(){return!!this._map},D.prototype.remove=function(){return this._content&&o.remove(this._content),this._container&&(o.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new i.Event("close")),this},D.prototype.getLngLat=function(){return this._lngLat},D.prototype.setLngLat=function(q){return this._lngLat=i.LngLat.convert(q),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},D.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this},D.prototype.getElement=function(){return this._container},D.prototype.setText=function(q){return this.setDOMContent(i.window.document.createTextNode(q))},D.prototype.setHTML=function(q){var K=i.window.document.createDocumentFragment(),de=i.window.document.createElement("body"),ne;for(de.innerHTML=q;ne=de.firstChild,!!ne;)K.appendChild(ne);return this.setDOMContent(K)},D.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},D.prototype.setMaxWidth=function(q){return this.options.maxWidth=q,this._update(),this},D.prototype.setDOMContent=function(q){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=o.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(q),this._createCloseButton(),this._update(),this._focusFirstElement(),this},D.prototype.addClassName=function(q){this._container&&this._container.classList.add(q)},D.prototype.removeClassName=function(q){this._container&&this._container.classList.remove(q)},D.prototype.setOffset=function(q){return this.options.offset=q,this._update(),this},D.prototype.toggleClassName=function(q){if(this._container)return this._container.classList.toggle(q)},D.prototype._createCloseButton=function(){this.options.closeButton&&(this._closeButton=o.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))},D.prototype._onMouseUp=function(q){this._update(q.point)},D.prototype._onMouseMove=function(q){this._update(q.point)},D.prototype._onDrag=function(q){this._update(q.point)},D.prototype._update=function(q){var K=this,de=this._lngLat||this._trackPointer;if(!(!this._map||!de||!this._content)&&(this._container||(this._container=o.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=o.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function(Ve){return K._container.classList.add(Ve)}),this._trackPointer&&this._container.classList.add("mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=pn(this._lngLat,this._pos,this._map.transform)),!(this._trackPointer&&!q))){var ne=this._pos=this._trackPointer&&q?q:this._map.project(this._lngLat),we=this.options.anchor,Ue=ol(this.options.offset);if(!we){var ft=this._container.offsetWidth,Xt=this._container.offsetHeight,hr;ne.y+Ue.bottom.ythis._map.transform.height-Xt?hr=["bottom"]:hr=[],ne.xthis._map.transform.width-ft/2&&hr.push("right"),hr.length===0?we="bottom":we=hr.join("-")}var qt=ne.add(Ue[we]).round();o.setTransform(this._container,Vn[we]+" translate("+qt.x+"px,"+qt.y+"px)"),na(this._container,we,"popup")}},D.prototype._focusFirstElement=function(){if(!(!this.options.focusAfterOpen||!this._container)){var q=this._container.querySelector(Ys);q&&q.focus()}},D.prototype._onClose=function(){this.remove()},D}(i.Evented);function ol(Y){if(Y)if(typeof Y=="number"){var D=Math.round(Math.sqrt(.5*Math.pow(Y,2)));return{center:new i.Point(0,0),top:new i.Point(0,Y),"top-left":new i.Point(D,D),"top-right":new i.Point(-D,D),bottom:new i.Point(0,-Y),"bottom-left":new i.Point(D,-D),"bottom-right":new i.Point(-D,-D),left:new i.Point(Y,0),right:new i.Point(-Y,0)}}else if(Y instanceof i.Point||Array.isArray(Y)){var J=i.Point.convert(Y);return{center:J,top:J,"top-left":J,"top-right":J,bottom:J,"bottom-left":J,"bottom-right":J,left:J,right:J}}else return{center:i.Point.convert(Y.center||[0,0]),top:i.Point.convert(Y.top||[0,0]),"top-left":i.Point.convert(Y["top-left"]||[0,0]),"top-right":i.Point.convert(Y["top-right"]||[0,0]),bottom:i.Point.convert(Y.bottom||[0,0]),"bottom-left":i.Point.convert(Y["bottom-left"]||[0,0]),"bottom-right":i.Point.convert(Y["bottom-right"]||[0,0]),left:i.Point.convert(Y.left||[0,0]),right:i.Point.convert(Y.right||[0,0])};else return ol(new i.Point(0,0))}var io={version:i.version,supported:a,setRTLTextPlugin:i.setRTLTextPlugin,getRTLTextPluginStatus:i.getRTLTextPluginStatus,Map:li,NavigationControl:Vi,GeolocateControl:Zs,AttributionControl:en,ScaleControl:Ml,FullscreenControl:ss,Popup:wa,Marker:Ki,Style:yu,LngLat:i.LngLat,LngLatBounds:i.LngLatBounds,Point:i.Point,MercatorCoordinate:i.MercatorCoordinate,Evented:i.Evented,config:i.config,prewarm:ua,clearPrewarmedResources:ma,get accessToken(){return i.config.ACCESS_TOKEN},set accessToken(Y){i.config.ACCESS_TOKEN=Y},get baseApiUrl(){return i.config.API_URL},set baseApiUrl(Y){i.config.API_URL=Y},get workerCount(){return fn.workerCount},set workerCount(Y){fn.workerCount=Y},get maxParallelImageRequests(){return i.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(Y){i.config.MAX_PARALLEL_IMAGE_REQUESTS=Y},clearStorage:function(D){i.clearTileCache(D)},workerUrl:""};return io}),r})});var fGe=ye((_xr,cGe)=>{"use strict";var iw=Dr(),Fjt=ru().sanitizeHTML,zjt=iJ(),sGe=c1();function lGe(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=sGe.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var ig=lGe.prototype;ig.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=$z(t)};ig.needsNewImage=function(e){var t=this.subplot.map;return t.getSource(this.idSource)&&this.sourceType==="image"&&e.sourcetype==="image"&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))};ig.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type};ig.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]};ig.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]};ig.updateImage=function(e){var t=this.subplot.map;t.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var r=this.findFollowingMapboxLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)};ig.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,!!$z(e)){var r=Ojt(e);t.addSource(this.idSource,r)}};ig.findFollowingMapboxLayerId=function(e){if(e==="traces")for(var t=this.subplot.getMapLayers(),r=0;r0){for(var r=0;r0}function uGe(e){var t={},r={};switch(e.type){case"circle":iw.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":iw.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":iw.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var n=e.symbol,i=zjt(n.textposition,n.iconsize);iw.extendFlat(t,{"icon-image":n.icon+"-15","icon-size":n.iconsize/10,"text-field":n.text,"text-size":n.textfont.size,"text-anchor":i.anchor,"text-offset":i.offset,"symbol-placement":n.placement}),iw.extendFlat(r,{"icon-color":e.color,"text-color":n.textfont.color,"text-opacity":e.opacity});break;case"raster":iw.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity});break}return{layout:t,paint:r}}function Ojt(e){var t=e.sourcetype,r=e.source,n={type:t},i;return t==="geojson"?i="data":t==="vector"?i=typeof r=="string"?"url":"tiles":t==="raster"?(i="tiles",n.tileSize=256):t==="image"&&(i="url",n.coordinates=e.coordinates),n[i]=r,e.sourceattribution&&(n.attribution=Fjt(e.sourceattribution)),n}cGe.exports=function(t,r,n){var i=new lGe(t,r);return i.update(n),i}});var xGe=ye((xxr,_Ge)=>{"use strict";var cJ=uJ(),fJ=Dr(),pGe=ix(),hGe=qa(),qjt=ho(),Bjt=yv(),Qz=vf(),gGe=Eg(),Njt=gGe.drawMode,Ujt=gGe.selectMode,Vjt=Of().prepSelect,Gjt=Of().clearOutline,Hjt=Of().clearSelectionsCache,jjt=Of().selectOnClick,_x=c1(),Wjt=fGe();function mGe(e,t){this.id=t,this.gd=e;var r=e._fullLayout,n=e._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var Nh=mGe.prototype;Nh.plot=function(e,t,r){var n=this,i=t[n.id];n.map&&i.accesstoken!==n.accessToken&&(n.map.remove(),n.map=null,n.styleObj=null,n.traceHash={},n.layerList=[]);var a;n.map?a=new Promise(function(o,s){n.updateMap(e,t,o,s)}):a=new Promise(function(o,s){n.createMap(e,t,o,s)}),r.push(a)};Nh.createMap=function(e,t,r,n){var i=this,a=t[i.id],o=i.styleObj=yGe(a.style,t);i.accessToken=a.accesstoken;var s=a.bounds,l=s?[[s.west,s.south],[s.east,s.north]]:null,u=i.map=new cJ.Map({container:i.div,style:o.style,center:hJ(a.center),zoom:a.zoom,bearing:a.bearing,pitch:a.pitch,maxBounds:l,interactive:!i.isStatic,preserveDrawingBuffer:i.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new cJ.AttributionControl({compact:!0}));u._canvas.style.left="0px",u._canvas.style.top="0px",i.rejectOnError(n),i.isStatic||i.initFx(e,t);var c=[];c.push(new Promise(function(f){u.once("load",f)})),c=c.concat(pGe.fetchTraceGeoData(e)),Promise.all(c).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Nh.updateMap=function(e,t,r,n){var i=this,a=i.map,o=t[this.id];i.rejectOnError(n);var s=[],l=yGe(o.style,t);JSON.stringify(i.styleObj)!==JSON.stringify(l)&&(i.styleObj=l,a.setStyle(l.style),i.traceHash={},s.push(new Promise(function(u){a.once("styledata",u)}))),s=s.concat(pGe.fetchTraceGeoData(e)),Promise.all(s).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Nh.fillBelowLookup=function(e,t){var r=t[this.id],n=r.layers,i,a,o=this.belowLookup={},s=!1;for(i=0;i1)for(i=0;i-1&&jjt(l.originalEvent,n,[r.xaxis],[r.yaxis],r.id,s),u.indexOf("event")>-1&&Qz.click(n,l.originalEvent)}}};Nh.updateFx=function(e){var t=this,r=t.map,n=t.gd;if(t.isStatic)return;function i(l){var u=t.map.unproject(l);return[u.lng,u.lat]}var a=e.dragmode,o;o=function(l,u){if(u.isRect){var c=l.range={};c[t.id]=[i([u.xmin,u.ymin]),i([u.xmax,u.ymax])]}else{var f=l.lassoPoints={};f[t.id]=u.map(i)}};var s=t.dragOptions;t.dragOptions=fJ.extendDeep(s||{},{dragmode:e.dragmode,element:t.div,gd:n,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:o},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),Ujt(a)||Njt(a)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(l,u,c){Vjt(l,u,c,t.dragOptions,a)},Bjt.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))};Nh.updateFramework=function(e){var t=e[this.id].domain,r=e._size,n=this.div.style;n.width=r.w*(t.x[1]-t.x[0])+"px",n.height=r.h*(t.y[1]-t.y[0])+"px",n.left=r.l+t.x[0]*r.w+"px",n.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])};Nh.updateLayers=function(e){var t=e[this.id],r=t.layers,n=this.layerList,i;if(r.length!==n.length){for(i=0;i{"use strict";var dJ=Dr(),Xjt=k_(),Zjt=Yd(),bGe=Nk();wGe.exports=function(t,r,n){Xjt(t,r,n,{type:"mapbox",attributes:bGe,handleDefaults:Yjt,partition:"y",accessToken:r._mapboxAccessToken})};function Yjt(e,t,r,n){r("accesstoken",n.accessToken),r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch");var i=r("bounds.west"),a=r("bounds.east"),o=r("bounds.south"),s=r("bounds.north");(i===void 0||a===void 0||o===void 0||s===void 0)&&delete t.bounds,Zjt(e,t,{name:"layers",handleItemDefaults:Kjt}),t._input=e}function Kjt(e,t){function r(l,u){return dJ.coerce(e,t,bGe.layers,l,u)}var n=r("visible");if(n){var i=r("sourcetype"),a=i==="raster"||i==="image";r("source"),r("sourceattribution"),i==="vector"&&r("sourcelayer"),i==="image"&&r("coordinates");var o;a&&(o="raster");var s=r("type",o);a&&s!=="raster"&&(s=t.type="raster",dJ.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),s==="circle"&&r("circle.radius"),s==="line"&&(r("line.width"),r("line.dash")),s==="fill"&&r("fill.outlinecolor"),s==="symbol"&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),dJ.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var e7=ye(Np=>{"use strict";var AGe=uJ(),rm=Dr(),vJ=rm.strTranslate,Jjt=rm.strScale,$jt=Id().getSubplotCalcData,Qjt=Wp(),eWt=Oa(),SGe=So(),tWt=ru(),rWt=xGe(),xx="mapbox",ey=Np.constants=c1();Np.name=xx;Np.attr="subplot";Np.idRoot=xx;Np.idRegex=Np.attrRegex=rm.counterRegex(xx);var iWt=["mapbox subplots and traces are deprecated!","Please consider switching to `map` subplots and traces.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");Np.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}};Np.layoutAttributes=Nk();Np.supplyLayoutDefaults=TGe();var MGe=!0;Np.plot=function(t){MGe&&(MGe=!1,rm.warn(iWt));var r=t._fullLayout,n=t.calcdata,i=r._subplots[xx];if(AGe.version!==ey.requiredVersion)throw new Error(ey.wrongVersionErrorMsg);var a=nWt(t,i);AGe.accessToken=a;for(var o=0;op/2){var k=d.split("|").join("
");_.text(k).attr("data-unformatted",k).call(tWt.convertToTspans,e),b=SGe.bBox(_.node())}_.attr("transform",vJ(-3,-b.height+8)),v.insert("rect",".static-attribution").attr({x:-b.width-6,y:-b.height-3,width:b.width+6,height:b.height+3,fill:"rgba(255, 255, 255, 0.75)"});var E=1;b.width+6>p&&(E=p/(b.width+6));var S=[n.l+n.w*o.x[1],n.t+n.h*(1-o.y[0])];v.attr("transform",vJ(S[0],S[1])+Jjt(E))}};function nWt(e,t){var r=e._fullLayout,n=e._context;if(n.mapboxAccessToken==="")return"";for(var i=[],a=[],o=!1,s=!1,l=0;l1&&rm.warn(ey.multipleTokensErrorMsg),i[0]):(a.length&&rm.log(["Listed mapbox access token(s)",a.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}function EGe(e){return typeof e=="string"&&(ey.styleValuesMapbox.indexOf(e)!==-1||e.indexOf("mapbox://")===0||e.indexOf("stamen")===0)}Np.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[xx],n=0;n{"use strict";var Txr=["*scattermapbox* trace is deprecated!","Please consider switching to the *scattermap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");kGe.exports={attributes:Wz(),supplyDefaults:NVe(),colorbar:$d(),formatLabels:rJ(),calc:pF(),plot:eGe(),hoverPoints:Jz().hoverPoints,eventData:nGe(),selectPoints:oGe(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermapbox",basePlotModule:e7(),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}});var PGe=ye((Sxr,LGe)=>{"use strict";LGe.exports=CGe()});var pJ=ye((Mxr,IGe)=>{"use strict";var f1=t5(),aWt=Tu(),{hovertemplateAttrs:oWt,templatefallbackAttrs:sWt}=Ll(),lWt=Gl(),bx=Ao().extendFlat;IGe.exports=bx({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:bx({},f1.featureidkey,{}),below:{valType:"string",editType:"plot"},text:f1.text,hovertext:f1.hovertext,marker:{line:{color:bx({},f1.marker.line.color,{editType:"plot"}),width:bx({},f1.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:bx({},f1.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:bx({},f1.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:bx({},f1.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:f1.hoverinfo,hovertemplate:oWt({},{keys:["properties"]}),hovertemplatefallback:sWt(),showlegend:bx({},lWt.showlegend,{dflt:!1})},aWt("",{cLetter:"z",editTypeOverride:"calc"}))});var DGe=ye((Exr,RGe)=>{"use strict";var Hk=Dr(),uWt=Qh(),cWt=pJ();RGe.exports=function(t,r,n,i){function a(c,f){return Hk.coerce(t,r,cWt,c,f)}var o=a("locations"),s=a("z"),l=a("geojson");if(!Hk.isArrayOrTypedArray(o)||!o.length||!Hk.isArrayOrTypedArray(s)||!s.length||!(typeof l=="string"&&l!==""||Hk.isPlainObject(l))){r.visible=!1;return}a("featureidkey"),r._length=Math.min(o.length,s.length),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var u=a("marker.line.width");u&&a("marker.line.color"),a("marker.opacity"),uWt(t,r,i,a,{prefix:"",cLetter:"z"}),Hk.coerceSelectionMarkerOpacity(r,a)}});var gJ=ye((kxr,OGe)=>{"use strict";var fWt=Eo(),h1=Dr(),hWt=tc(),dWt=So(),vWt=tx().makeBlank,FGe=ix();function pWt(e){var t=e[0].trace,r=t.visible===!0&&t._length!==0,n={layout:{visibility:"none"},paint:{}},i={layout:{visibility:"none"},paint:{}},a=t._opts={fill:n,line:i,geojson:vWt()};if(!r)return a;var o=FGe.extractTraceFeature(e);if(!o)return a;var s=hWt.makeColorScaleFuncFromTrace(t),l=t.marker,u=l.line||{},c;h1.isArrayOrTypedArray(l.opacity)&&(c=function(k){var E=k.mo;return fWt(E)?+h1.constrain(E,0,1):0});var f;h1.isArrayOrTypedArray(u.color)&&(f=function(k){return k.mlc});var h;h1.isArrayOrTypedArray(u.width)&&(h=function(k){return k.mlw});for(var d=0;d{"use strict";var BGe=gJ().convert,gWt=gJ().convertOnSelect,qGe=c1().traceLayerPrefix;function NGe(e,t){this.type="choroplethmapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",qGe+t+"-fill"],["line",qGe+t+"-line"]],this.below=null}var M5=NGe.prototype;M5.update=function(e){this._update(BGe(e)),e[0].trace._glTrace=this};M5.updateOnSelect=function(e){this._update(gWt(e))};M5._update=function(e){var t=this.subplot,r=this.layerList,n=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(e.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(e,n),this.below=n);for(var i=0;i=0;r--)e.removeLayer(t[r][1])};M5.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};UGe.exports=function(t,r){var n=r[0].trace,i=new NGe(t,n.uid),a=i.sourceId,o=BGe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),r[0].trace._glTrace=i,i}});var HGe=ye((Pxr,GGe)=>{"use strict";var Lxr=["*choroplethmapbox* trace is deprecated!","Please consider switching to the *choroplethmap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");GGe.exports={attributes:pJ(),supplyDefaults:DGe(),colorbar:S_(),calc:zF(),plot:VGe(),hoverPoints:qF(),eventData:BF(),selectPoints:NF(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.updateOnSelect(t)}},getBelow:function(e,t){for(var r=t.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if(typeof i=="string"&&i.indexOf("water")===0){for(var a=n+1;a{"use strict";jGe.exports=HGe()});var yJ=ye((Rxr,ZGe)=>{"use strict";var mWt=Tu(),{hovertemplateAttrs:yWt,templatefallbackAttrs:_Wt}=Ll(),XGe=Gl(),t7=Wz(),mJ=Ao().extendFlat;ZGe.exports=mJ({lon:t7.lon,lat:t7.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:t7.text,hovertext:t7.hovertext,hoverinfo:mJ({},XGe.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:yWt(),hovertemplatefallback:_Wt(),showlegend:mJ({},XGe.showlegend,{dflt:!1})},mWt("",{cLetter:"z",editTypeOverride:"calc"}))});var KGe=ye((Dxr,YGe)=>{"use strict";var xWt=Dr(),bWt=Qh(),wWt=yJ();YGe.exports=function(t,r,n,i){function a(u,c){return xWt.coerce(t,r,wWt,u,c)}var o=a("lon")||[],s=a("lat")||[],l=Math.min(o.length,s.length);if(!l){r.visible=!1;return}r._length=l,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),bWt(t,r,i,a,{prefix:"",cLetter:"z"})}});var QGe=ye((Fxr,$Ge)=>{"use strict";var _J=Eo(),TWt=Dr().isArrayOrTypedArray,xJ=fs().BADNUM,AWt=gv(),JGe=Dr()._;$Ge.exports=function(t,r){for(var n=r._length,i=new Array(n),a=r.z,o=TWt(a)&&a.length,s=0;s{"use strict";var SWt=Eo(),bJ=Dr(),eHe=ka(),tHe=tc(),rHe=fs().BADNUM,MWt=tx().makeBlank;iHe.exports=function(t){var r=t[0].trace,n=r.visible===!0&&r._length!==0,i={layout:{visibility:"none"},paint:{}},a=r._opts={heatmap:i,geojson:MWt()};if(!n)return a;var o=[],s,l=r.z,u=r.radius,c=bJ.isArrayOrTypedArray(l)&&l.length,f=bJ.isArrayOrTypedArray(u);for(s=0;s0?+u[s]:0),o.push({type:"Feature",geometry:{type:"Point",coordinates:d},properties:v})}}var b=tHe.extractOpts(r),p=b.reversescale?tHe.flipScale(b.colorscale):b.colorscale,k=p[0][1],E=eHe.opacity(k)<1?k:eHe.addOpacity(k,0),S=["interpolate",["linear"],["heatmap-density"],0,E];for(s=1;s{"use strict";var aHe=nHe(),EWt=c1().traceLayerPrefix;function oHe(e,t){this.type="densitymapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",EWt+t+"-heatmap"]],this.below=null}var r7=oHe.prototype;r7.update=function(e){var t=this.subplot,r=this.layerList,n=aHe(e),i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(n.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(n,i),this.below=i);for(var a=0;a=0;r--)e.removeLayer(t[r][1])};r7.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};sHe.exports=function(t,r){var n=r[0].trace,i=new oHe(t,n.uid),a=i.sourceId,o=aHe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),i}});var cHe=ye((qxr,uHe)=>{"use strict";var kWt=ho(),CWt=Jz().hoverPoints,LWt=Jz().getExtraText;uHe.exports=function(t,r,n){var i=CWt(t,r,n);if(i){var a=i[0],o=a.cd,s=o[0].trace,l=o[a.index];if(delete a.color,"z"in l){var u=a.subplot.mockAxis;a.z=l.z,a.zLabel=kWt.tickText(u,u.c2l(l.z),"hover").text}return a.extraText=LWt(s,l,o[0].t.labels),[a]}}});var hHe=ye((Bxr,fHe)=>{"use strict";fHe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var vHe=ye((Uxr,dHe)=>{"use strict";var Nxr=["*densitymapbox* trace is deprecated!","Please consider switching to the *densitymap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");dHe.exports={attributes:yJ(),supplyDefaults:KGe(),colorbar:S_(),formatLabels:rJ(),calc:QGe(),plot:lHe(),hoverPoints:cHe(),eventData:hHe(),getBelow:function(e,t){for(var r=t.getMapLayers(),n=0;n{"use strict";pHe.exports=vHe()});var yHe=ye((Gxr,mHe)=>{mHe.exports={version:8,name:"orto",metadata:{"maputnik:renderer":"mlgljs"},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI © ESRI"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}},{id:"waterway_tunnel",type:"line",source:"openmaptiles","source-layer":"waterway",minzoom:14,filter:["all",["in","class","river","stream","canal"],["==","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]},"line-dasharray":[2,4]}},{id:"waterway-other",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["!in","class","canal","river","stream"],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,2]]}}},{id:"waterway-stream-canal",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["in","class","canal","stream"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]}}},{id:"waterway-river",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["==","class","river"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.2,stops:[[10,.8],[20,4]]},"line-opacity":.5}},{id:"water-offset",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",maxzoom:8,filter:["==","$type","Polygon"],layout:{visibility:"visible"},paint:{"fill-opacity":0,"fill-color":"#a0c8f0","fill-translate":{base:1,stops:[[6,[2,0]],[8,[0,0]]]}}},{id:"water",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-color":"hsl(210, 67%, 85%)","fill-opacity":0}},{id:"water-pattern",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-translate":[0,2.5],"fill-pattern":"wave","fill-opacity":1}},{id:"landcover-ice-shelf",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"landcover",filter:["==","subclass","ice_shelf"],layout:{visibility:"visible"},paint:{"fill-color":"#fff","fill-opacity":{base:1,stops:[[0,.9],[10,.3]]}}},{id:"tunnel-service-track-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[15,1],[16,4],[20,11]]}}},{id:"tunnel-minor-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,1]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"tunnel-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"tunnel-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.7}},{id:"tunnel-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"tunnel-service-track",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-width":{base:1.2,stops:[[15.5,0],[16,2],[20,7.5]]}}},{id:"tunnel-minor",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor_road"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-opacity":1,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"tunnel-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,10]]}}},{id:"tunnel-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-motorway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#ffdaa6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-railway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]},"line-dasharray":[2,2]}},{id:"ferry",type:"line",source:"openmaptiles","source-layer":"transportation",filter:["all",["in","class","ferry"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(108, 159, 182, 1)","line-width":1.1,"line-dasharray":[2,2]}},{id:"aeroway-taxiway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","taxiway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,2],[17,12]]},"line-opacity":1}},{id:"aeroway-runway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","runway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,5],[17,55]]},"line-opacity":1}},{id:"aeroway-taxiway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","taxiway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,1],[17,10]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"aeroway-runway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","runway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,4],[17,50]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"highway-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-minor-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,0]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"highway-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":.5,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"highway-primary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[7,0],[8,.6]]},"line-width":{base:1.2,stops:[[7,0],[8,.6],[9,1.5],[20,22]]}}},{id:"highway-trunk-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[5,0],[6,.5]]},"line-width":{base:1.2,stops:[[5,0],[6,.6],[7,1.5],[20,22]]}}},{id:"highway-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:4,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[4,0],[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":{stops:[[4,0],[5,.5]]}}},{id:"highway-path",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"highway-motorway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-minor",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fff","line-opacity":.5,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"highway-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[8,.5],[20,13]]},"line-opacity":.5}},{id:"highway-primary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[8.5,0],[9,.5],[20,18]]},"line-opacity":0}},{id:"highway-trunk",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"highway-motorway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"railway-transit",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-transit-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway-service",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-service-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"railway-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"bridge-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,28]]}}},{id:"bridge-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"hsl(28, 76%, 67%)","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,26]]}}},{id:"bridge-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"bridge-path-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#f8f4f0","line-width":{base:1.2,stops:[[15,1.2],[20,18]]}}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#cba","line-width":{base:1.2,stops:[[15,1.2],[20,4]]},"line-dasharray":[1.5,.75]}},{id:"bridge-motorway-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,20]]}}},{id:"bridge-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]}}},{id:"bridge-motorway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"bridge-railway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"bridge-railway-hatching",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"cablecar",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,1],[19,2.5]]}}},{id:"cablecar-dash",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,3],[19,5.5]]},"line-dasharray":[2,3]}},{id:"boundary-land-level-4",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",[">=","admin_level",4],["<=","admin_level",8],["!=","maritime",1]],layout:{"line-join":"round"},paint:{"line-color":"#9e9cab","line-dasharray":[3,1,1,1],"line-width":{base:1.4,stops:[[4,.4],[5,1],[12,3]]},"line-opacity":.6}},{id:"boundary-land-level-2",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["==","admin_level",2],["!=","maritime",1],["!=","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 66%)","line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,2]]}}},{id:"boundary-land-disputed",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["!=","maritime",1],["==","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 70%)","line-dasharray":[1,3],"line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,8]]}}},{id:"boundary-water",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["in","admin_level",2,4],["==","maritime",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"rgba(154, 189, 214, 1)","line-width":{base:1,stops:[[0,.6],[4,1],[5,1],[12,1]]},"line-opacity":{stops:[[6,0],[10,0]]}}},{id:"waterway-name",type:"symbol",source:"openmaptiles","source-layer":"waterway",minzoom:13,filter:["all",["==","$type","LineString"],["has","name"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin} {name:nonlatin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","text-letter-spacing":.2,"symbol-spacing":350},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-lakeline",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["==","$type","LineString"],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":`{name:latin} {name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-ocean",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["==","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-other",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["!in","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":{stops:[[0,10],[6,14]]},"text-field":`{name:latin} {name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2,visibility:"visible"},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"poi-level-3",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:16,filter:["all",["==","$type","Point"],[">=","rank",25]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin} {name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-2",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:15,filter:["all",["==","$type","Point"],["<=","rank",24],[">=","rank",15]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin} @@ -3222,10 +3222,10 @@ uniform `+Xt+" "+hr+" u_"+qt+`; {name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(10, 9, 9, 0.8)"}},{id:"place-town",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["==","class","town"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,14],[15,24]]},"text-field":`{name:latin} {name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(22, 22, 22, 0.8)"}},{id:"place-city",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["!=","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin} {name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(0, 0, 0, 1)","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-city-capital",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin} -{name:nonlatin}`,"text-max-width":8,"icon-image":"star_11","text-offset":[.4,0],"icon-size":.8,"text-anchor":"left",visibility:"visible"},paint:{"text-color":"#333","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["!has","iso_a2"]],layout:{"text-font":["Noto Sans Italic"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-3",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-2",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",2],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[2,11],[5,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-1",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",1],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[1,11],[4,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-continent",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",maxzoom:1,filter:["==","class","continent"],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":14,"text-max-width":6.25,"text-transform":"uppercase",visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}}],id:"qebnlkra6"}});var _He=ye((Hxr,yHe)=>{yHe.exports={version:8,name:"orto",metadata:{},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI © ESRI"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}}]}});var wx=ye((jxr,AHe)=>{"use strict";var PWt=Z1(),IWt=mHe(),RWt=_He(),DWt='\xA9 OpenStreetMap contributors',xHe="https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",bHe="https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json",r7="https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",FWt="https://basemaps.cartocdn.com/gl/positron-nolabels-gl-style/style.json",zWt="https://basemaps.cartocdn.com/gl/dark-matter-nolabels-gl-style/style.json",OWt="https://basemaps.cartocdn.com/gl/voyager-nolabels-gl-style/style.json",THe={basic:r7,streets:r7,outdoors:r7,light:xHe,dark:bHe,satellite:RWt,"satellite-streets":IWt,"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:DWt,tiles:["https://tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":xHe,"carto-darkmatter":bHe,"carto-voyager":r7,"carto-positron-nolabels":FWt,"carto-darkmatter-nolabels":zWt,"carto-voyager-nolabels":OWt},wHe=PWt(THe);AHe.exports={styleValueDflt:"basic",stylesMap:THe,styleValuesMap:wHe,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",missingStyleErrorMsg:["No valid maplibre style found, please set `map.style` to one of:",wHe.join(", "),"or use a tile service."].join(` -`),mapOnErrorMsg:"Map error."}});var jk=ye((Wxr,CHe)=>{"use strict";var SHe=Dr(),MHe=ka().defaultLine,qWt=Cc().attributes,BWt=ec(),NWt=pf().textposition,UWt=mc().overrideAll,VWt=vl().templatedArray,EHe=wx(),kHe=BWt({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});kHe.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var GWt=CHe.exports=UWt({_arrayAttrRegexps:[SHe.counterRegex("map",".layers",!0)],domain:qWt({name:"map"}),style:{valType:"any",values:EHe.styleValuesMap,dflt:EHe.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:VWt("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:MHe},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:MHe}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:kHe,textposition:SHe.extendFlat({},NWt,{arrayOk:!1})}})},"plot","from-root");GWt.uirevision={valType:"any",editType:"none"}});var i7=ye((Xxr,RHe)=>{"use strict";var{hovertemplateAttrs:HWt,texttemplateAttrs:jWt,templatefallbackAttrs:LHe}=Ll(),WWt=kg(),Wk=H2(),M5=pf(),PHe=jk(),XWt=Gl(),ZWt=Tu(),iw=Ao().extendFlat,YWt=mc().overrideAll,KWt=jk(),IHe=Wk.line,E5=Wk.marker;RHe.exports=YWt({lon:Wk.lon,lat:Wk.lat,cluster:{enabled:{valType:"boolean"},maxzoom:iw({},KWt.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:iw({},E5.opacity,{dflt:1})},mode:iw({},M5.mode,{dflt:"markers"}),text:iw({},M5.text,{}),texttemplate:jWt({editType:"plot"},{keys:["lat","lon","text"]}),texttemplatefallback:LHe({editType:"plot"}),hovertext:iw({},M5.hovertext,{}),line:{color:IHe.color,width:IHe.width},connectgaps:M5.connectgaps,marker:iw({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:E5.opacity,size:E5.size,sizeref:E5.sizeref,sizemin:E5.sizemin,sizemode:E5.sizemode},ZWt("marker")),fill:Wk.fill,fillcolor:WWt(),textfont:PHe.layers.symbol.textfont,textposition:PHe.layers.symbol.textposition,below:{valType:"string"},selected:{marker:M5.selected.marker},unselected:{marker:M5.unselected.marker},hoverinfo:iw({},XWt.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:HWt(),hovertemplatefallback:LHe()},"calc","nested")});var bJ=ye((Zxr,DHe)=>{"use strict";var JWt=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];DHe.exports={isSupportedFont:function(e){return JWt.indexOf(e)!==-1}}});var OHe=ye((Yxr,zHe)=>{"use strict";var Xk=Dr(),wJ=Ru(),$Wt=$p(),QWt=R0(),eXt=D0(),tXt=Ig(),FHe=i7(),rXt=bJ().isSupportedFont;zHe.exports=function(t,r,n,i){function a(p,k){return Xk.coerce(t,r,FHe,p,k)}function o(p,k){return Xk.coerce2(t,r,FHe,p,k)}var s=iXt(t,r,a);if(!s){r.visible=!1;return}if(a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),a("below"),wJ.hasMarkers(r)){$Wt(t,r,n,i,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var l=r.marker;l.symbol!=="circle"&&(Xk.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),Xk.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}wJ.hasLines(r)&&(QWt(t,r,n,i,a,{noDash:!0}),a("connectgaps"));var u=o("cluster.maxzoom"),c=o("cluster.step"),f=o("cluster.color",r.marker&&r.marker.color||n),h=o("cluster.size"),d=o("cluster.opacity"),v=u!==!1||c!==!1||f!==!1||h!==!1||d!==!1,_=a("cluster.enabled",v);if(_||wJ.hasText(r)){var b=i.font.family;eXt(t,r,i,a,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:rXt(b)?b:"Open Sans Regular",weight:i.font.weight,style:i.font.style,size:i.font.size,color:i.font.color}})}a("fill"),r.fill!=="none"&&tXt(t,r,n,a),Xk.coerceSelectionMarkerOpacity(r,a)};function iXt(e,t,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return t._length=a,a}});var TJ=ye((Kxr,BHe)=>{"use strict";var qHe=ho();BHe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=qHe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=qHe.tickText(o,o.c2l(s[1]),!0).text,i}});var AJ=ye((Jxr,UHe)=>{"use strict";var NHe=Dr();UHe.exports=function(t,r){var n=t.split(" "),i=n[0],a=n[1],o=NHe.isArrayOrTypedArray(r)?NHe.mean(r):r,s=.5+o/100,l=1.5+o/100,u=["",""],c=[0,0];switch(i){case"top":u[0]="top",c[1]=-l;break;case"bottom":u[0]="bottom",c[1]=l;break}switch(a){case"left":u[1]="right",c[0]=-s;break;case"right":u[1]="left",c[0]=s;break}var f;return u[0]&&u[1]?f=u.join("-"):u[0]?f=u[0]:u[1]?f=u[1]:f="center",{anchor:f,offset:c}}});var XHe=ye(($xr,WHe)=>{"use strict";var HHe=Eo(),ov=Dr(),nXt=fs().BADNUM,a7=tx(),VHe=tc(),aXt=So(),oXt=E3(),o7=Ru(),sXt=bJ().isSupportedFont,lXt=AJ(),uXt=ip().appendArrayPointValue,cXt=ru().NEWLINES,fXt=ru().BR_TAG_ALL;WHe.exports=function(t,r){var n=r[0].trace,i=n.visible===!0&&n._length!==0,a=n.fill!=="none",o=o7.hasLines(n),s=o7.hasMarkers(n),l=o7.hasText(n),u=s&&n.marker.symbol==="circle",c=s&&n.marker.symbol!=="circle",f=n.cluster&&n.cluster.enabled,h=n7("fill"),d=n7("line"),v=n7("circle"),_=n7("symbol"),b={fill:h,line:d,circle:v,symbol:_};if(!i)return b;var p;if((a||o)&&(p=a7.calcTraceToLineCoords(r)),a&&(h.geojson=a7.makePolygon(p),h.layout.visibility="visible",ov.extendFlat(h.paint,{"fill-color":n.fillcolor})),o&&(d.geojson=a7.makeLine(p),d.layout.visibility="visible",ov.extendFlat(d.paint,{"line-width":n.line.width,"line-color":n.line.color,"line-opacity":n.opacity})),u){var k=hXt(r);v.geojson=k.geojson,v.layout.visibility="visible",f&&(v.filter=["!",["has","point_count"]],b.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":MJ(n.cluster.color,n.cluster.step),"circle-radius":MJ(n.cluster.size,n.cluster.step),"circle-opacity":MJ(n.cluster.opacity,n.cluster.step)}},b.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":GHe(n),"text-size":12}}),ov.extendFlat(v.paint,{"circle-color":k.mcc,"circle-radius":k.mrc,"circle-opacity":k.mo})}if(u&&f&&(v.filter=["!",["has","point_count"]]),(c||l)&&(_.geojson=dXt(r,t),ov.extendFlat(_.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),c&&(ov.extendFlat(_.layout,{"icon-size":n.marker.size/10}),"angle"in n.marker&&n.marker.angle!=="auto"&&ov.extendFlat(_.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),_.layout["icon-allow-overlap"]=n.marker.allowoverlap,ov.extendFlat(_.paint,{"icon-opacity":n.opacity*n.marker.opacity,"icon-color":n.marker.color})),l)){var E=(n.marker||{}).size,S=lXt(n.textposition,E);ov.extendFlat(_.layout,{"text-size":n.textfont.size,"text-anchor":S.anchor,"text-offset":S.offset,"text-font":GHe(n)}),ov.extendFlat(_.paint,{"text-color":n.textfont.color,"text-opacity":n.opacity})}return b};function n7(e){return{type:e,geojson:a7.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function hXt(e){var t=e[0].trace,r=t.marker,n=t.selectedpoints,i=ov.isArrayOrTypedArray(r.color),a=ov.isArrayOrTypedArray(r.size),o=ov.isArrayOrTypedArray(r.opacity),s;function l(E){return t.opacity*E}function u(E){return E/2}var c;i&&(VHe.hasColorscale(t,"marker")?c=VHe.makeColorScaleFuncFromTrace(r):c=ov.identity);var f;a&&(f=oXt(t));var h;o&&(h=function(E){var S=HHe(E)?+ov.constrain(E,0,1):0;return l(S)});var d=[];for(s=0;s850?s+=" Black":i>750?s+=" Extra Bold":i>650?s+=" Bold":i>550?s+=" Semi Bold":i>450?s+=" Medium":i>350?s+=" Regular":i>250?s+=" Light":i>150?s+=" Extra Light":s+=" Thin"):a.slice(0,2).join(" ")==="Open Sans"?(s="Open Sans",i>750?s+=" Extrabold":i>650?s+=" Bold":i>550?s+=" Semibold":i>350?s+=" Regular":s+=" Light"):a.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(s="Klokantech Noto Sans",a[3]==="CJK"&&(s+=" CJK"),s+=i>500?" Bold":" Regular")),o&&(s+=" Italic"),s==="Open Sans Regular Italic"?s="Open Sans Italic":s==="Open Sans Regular Bold"?s="Open Sans Bold":s==="Open Sans Regular Bold Italic"?s="Open Sans Bold Italic":s==="Klokantech Noto Sans Regular Italic"&&(s="Klokantech Noto Sans Italic"),sXt(s)||(s=r);var l=s.split(", ");return l}});var JHe=ye((Qxr,KHe)=>{"use strict";var vXt=Dr(),ZHe=XHe(),k5=wx().traceLayerPrefix,ng={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function YHe(e,t,r,n){this.type="scattermap",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:k5+t+"-fill",line:k5+t+"-line",circle:k5+t+"-circle",symbol:k5+t+"-symbol",cluster:k5+t+"-cluster",clusterCount:k5+t+"-cluster-count"},this.below=null}var Zk=YHe.prototype;Zk.addSource=function(e,t,r){var n={type:"geojson",data:t.geojson};r&&r.enabled&&vXt.extendFlat(n,{cluster:!0,clusterMaxZoom:r.maxzoom});var i=this.subplot.map.getSource(this.sourceIds[e]);i?i.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],n)};Zk.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};Zk.addLayer=function(e,t,r){var n={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(n.filter=t.filter);for(var i=this.layerIds[e],a,o=this.subplot.getMapLayers(),s=0;s=0;L--){var x=S[L];i.removeLayer(u.layerIds[x])}E||i.removeSource(u.sourceIds.circle)}function h(E){for(var S=ng.nonCluster,L=0;L=0;L--){var x=S[L];i.removeLayer(u.layerIds[x]),E||i.removeSource(u.sourceIds[x])}}function v(E){l?f(E):d(E)}function _(E){s?c(E):h(E)}function b(){for(var E=s?ng.cluster:ng.nonCluster,S=0;S=0;n--){var i=r[n];t.removeLayer(this.layerIds[i]),t.removeSource(this.sourceIds[i])}};KHe.exports=function(t,r){var n=r[0].trace,i=n.cluster&&n.cluster.enabled,a=n.visible!==!0,o=new YHe(t,n.uid,i,a),s=ZHe(t.gd,r),l=o.below=t.belowLookup["trace-"+n.uid],u,c,f;if(i)for(o.addSource("circle",s.circle,n.cluster),u=0;u{"use strict";var pXt=vf(),EJ=Dr(),gXt=uT(),mXt=EJ.fillText,yXt=fs().BADNUM,_Xt=wx().traceLayerPrefix;function xXt(e,t,r){var n=e.cd,i=n[0].trace,a=e.xa,o=e.ya,s=e.subplot,l=[],u=_Xt+i.uid+"-circle",c=i.cluster&&i.cluster.enabled;if(c){var f=s.map.queryRenderedFeatures(null,{layers:[u]});l=f.map(function(M){return M.id})}var h=t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360),d=h*360,v=t-d;function _(M){var g=M.lonlat;if(g[0]===yXt||c&&l.indexOf(M.i+1)===-1)return 1/0;var P=EJ.modHalf(g[0],360),T=g[1],z=s.project([P,T]),O=z.x-a.c2p([v,T]),V=z.y-o.c2p([P,r]),G=Math.max(3,M.mrc||0);return Math.max(Math.sqrt(O*O+V*V)-G,1-3/G)}if(pXt.getClosest(n,_,e),e.index!==!1){var b=n[e.index],p=b.lonlat,k=[EJ.modHalf(p[0],360)+d,p[1]],E=a.c2p(k),S=o.c2p(k),L=b.mrc||1;e.x0=E-L,e.x1=E+L,e.y0=S-L,e.y1=S+L;var x={};x[i.subplot]={_subplot:s};var C=i._module.formatLabels(b,i,x);return e.lonLabel=C.lonLabel,e.latLabel=C.latLabel,e.color=gXt(i,b),e.extraText=$He(i,b,n[0].t.labels),e.hovertemplate=i.hovertemplate,[e]}}function $He(e,t,r){if(e.hovertemplate)return;var n=t.hi||e.hoverinfo,i=n.split("+"),a=i.indexOf("all")!==-1,o=i.indexOf("lon")!==-1,s=i.indexOf("lat")!==-1,l=t.lonlat,u=[];function c(f){return f+"\xB0"}return a||o&&s?u.push("("+c(l[1])+", "+c(l[0])+")"):o?u.push(r.lon+c(l[0])):s&&u.push(r.lat+c(l[1])),(a||i.indexOf("text")!==-1)&&mXt(t,e,u),u.join("
")}QHe.exports={hoverPoints:xXt,getExtraText:$He}});var tje=ye((tbr,eje)=>{"use strict";eje.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var ije=ye((rbr,rje)=>{"use strict";var bXt=Dr(),wXt=Ru(),TXt=fs().BADNUM;rje.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l;if(!wXt.hasMarkers(s))return[];if(r===!1)for(l=0;l{(function(e,t){typeof kJ=="object"&&typeof CJ!="undefined"?CJ.exports=t():(e=typeof globalThis!="undefined"?globalThis:e||self,e.maplibregl=t())})(kJ,function(){"use strict";var e={},t={};function r(i,a,o){if(t[i]=o,i==="index"){var s="var sharedModule = {}; ("+t.shared+")(sharedModule); ("+t.worker+")(sharedModule);",l={};return t.shared(l),t.index(e,l),typeof window!="undefined"&&e.setWorkerUrl(window.URL.createObjectURL(new Blob([s],{type:"text/javascript"}))),e}}r("shared",["exports"],function(i){"use strict";function a(R,A,F,W){return new(F||(F=Promise))(function(te,fe){function pe(ct){try{Ke(W.next(ct))}catch(Lt){fe(Lt)}}function ze(ct){try{Ke(W.throw(ct))}catch(Lt){fe(Lt)}}function Ke(ct){var Lt;ct.done?te(ct.value):(Lt=ct.value,Lt instanceof F?Lt:new F(function($t){$t(Lt)})).then(pe,ze)}Ke((W=W.apply(R,A||[])).next())})}function o(R){return R&&R.__esModule&&Object.prototype.hasOwnProperty.call(R,"default")?R.default:R}typeof SuppressedError=="function"&&SuppressedError;var s=l;function l(R,A){this.x=R,this.y=A}l.prototype={clone:function(){return new l(this.x,this.y)},add:function(R){return this.clone()._add(R)},sub:function(R){return this.clone()._sub(R)},multByPoint:function(R){return this.clone()._multByPoint(R)},divByPoint:function(R){return this.clone()._divByPoint(R)},mult:function(R){return this.clone()._mult(R)},div:function(R){return this.clone()._div(R)},rotate:function(R){return this.clone()._rotate(R)},rotateAround:function(R,A){return this.clone()._rotateAround(R,A)},matMult:function(R){return this.clone()._matMult(R)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(R){return this.x===R.x&&this.y===R.y},dist:function(R){return Math.sqrt(this.distSqr(R))},distSqr:function(R){var A=R.x-this.x,F=R.y-this.y;return A*A+F*F},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(R){return Math.atan2(this.y-R.y,this.x-R.x)},angleWith:function(R){return this.angleWithSep(R.x,R.y)},angleWithSep:function(R,A){return Math.atan2(this.x*A-this.y*R,this.x*R+this.y*A)},_matMult:function(R){var A=R[2]*this.x+R[3]*this.y;return this.x=R[0]*this.x+R[1]*this.y,this.y=A,this},_add:function(R){return this.x+=R.x,this.y+=R.y,this},_sub:function(R){return this.x-=R.x,this.y-=R.y,this},_mult:function(R){return this.x*=R,this.y*=R,this},_div:function(R){return this.x/=R,this.y/=R,this},_multByPoint:function(R){return this.x*=R.x,this.y*=R.y,this},_divByPoint:function(R){return this.x/=R.x,this.y/=R.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var R=this.y;return this.y=this.x,this.x=-R,this},_rotate:function(R){var A=Math.cos(R),F=Math.sin(R),W=F*this.x+A*this.y;return this.x=A*this.x-F*this.y,this.y=W,this},_rotateAround:function(R,A){var F=Math.cos(R),W=Math.sin(R),te=A.y+W*(this.x-A.x)+F*(this.y-A.y);return this.x=A.x+F*(this.x-A.x)-W*(this.y-A.y),this.y=te,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},l.convert=function(R){return R instanceof l?R:Array.isArray(R)?new l(R[0],R[1]):R};var u=o(s),c=f;function f(R,A,F,W){this.cx=3*R,this.bx=3*(F-R)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*A,this.by=3*(W-A)-this.cy,this.ay=1-this.cy-this.by,this.p1x=R,this.p1y=A,this.p2x=F,this.p2y=W}f.prototype={sampleCurveX:function(R){return((this.ax*R+this.bx)*R+this.cx)*R},sampleCurveY:function(R){return((this.ay*R+this.by)*R+this.cy)*R},sampleCurveDerivativeX:function(R){return(3*this.ax*R+2*this.bx)*R+this.cx},solveCurveX:function(R,A){if(A===void 0&&(A=1e-6),R<0)return 0;if(R>1)return 1;for(var F=R,W=0;W<8;W++){var te=this.sampleCurveX(F)-R;if(Math.abs(te)te?pe=F:ze=F,F=.5*(ze-pe)+pe;return F},solve:function(R,A){return this.sampleCurveY(this.solveCurveX(R,A))}};var h=o(c);let d,v;function _(){return d==null&&(d=typeof OffscreenCanvas!="undefined"&&new OffscreenCanvas(1,1).getContext("2d")&&typeof createImageBitmap=="function"),d}function b(){if(v==null&&(v=!1,_())){let A=new OffscreenCanvas(5,5).getContext("2d",{willReadFrequently:!0});if(A){for(let W=0;W<5*5;W++){let te=4*W;A.fillStyle=`rgb(${te},${te+1},${te+2})`,A.fillRect(W%5,Math.floor(W/5),1,1)}let F=A.getImageData(0,0,5,5).data;for(let W=0;W<5*5*4;W++)if(W%4!=3&&F[W]!==W){v=!0;break}}}return v||!1}function p(R,A,F,W){let te=new h(R,A,F,W);return fe=>te.solve(fe)}let k=p(.25,.1,.25,1);function E(R,A,F){return Math.min(F,Math.max(A,R))}function S(R,A,F){let W=F-A,te=((R-A)%W+W)%W+A;return te===A?F:te}function L(R,...A){for(let F of A)for(let W in F)R[W]=F[W];return R}let x=1;function C(R,A,F){let W={};for(let te in R)W[te]=A.call(this,R[te],te,R);return W}function M(R,A,F){let W={};for(let te in R)A.call(this,R[te],te,R)&&(W[te]=R[te]);return W}function g(R){return Array.isArray(R)?R.map(g):typeof R=="object"&&R?C(R,g):R}let P={};function T(R){P[R]||(typeof console!="undefined"&&console.warn(R),P[R]=!0)}function z(R,A,F){return(F.y-R.y)*(A.x-R.x)>(A.y-R.y)*(F.x-R.x)}function O(R){return typeof WorkerGlobalScope!="undefined"&&R!==void 0&&R instanceof WorkerGlobalScope}let V=null;function G(R){return typeof ImageBitmap!="undefined"&&R instanceof ImageBitmap}let Z="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function H(R,A,F,W,te){return a(this,void 0,void 0,function*(){if(typeof VideoFrame=="undefined")throw new Error("VideoFrame not supported");let fe=new VideoFrame(R,{timestamp:0});try{let pe=fe==null?void 0:fe.format;if(!pe||!pe.startsWith("BGR")&&!pe.startsWith("RGB"))throw new Error(`Unrecognized format ${pe}`);let ze=pe.startsWith("BGR"),Ke=new Uint8ClampedArray(W*te*4);if(yield fe.copyTo(Ke,function(ct,Lt,$t,fr,mr){let Pr=4*Math.max(-Lt,0),zr=(Math.max(0,$t)-$t)*fr*4+Pr,ui=4*fr,yi=Math.max(0,Lt),vn=Math.max(0,$t);return{rect:{x:yi,y:vn,width:Math.min(ct.width,Lt+fr)-yi,height:Math.min(ct.height,$t+mr)-vn},layout:[{offset:zr,stride:ui}]}}(R,A,F,W,te)),ze)for(let ct=0;ctO(self)?self.worker&&self.worker.referrer:(window.location.protocol==="blob:"?window.parent:window).location.href,Se=function(R,A){if(/:\/\//.test(R.url)&&!/^https?:|^file:/.test(R.url)){let W=Ee(R.url);if(W)return W(R,A);if(O(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:R,targetMapId:Ce},A)}if(!(/^file:/.test(F=R.url)||/^file:/.test(ie())&&!/^\w+:/.test(F))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(W,te){return a(this,void 0,void 0,function*(){let fe=new Request(W.url,{method:W.method||"GET",body:W.body,credentials:W.credentials,headers:W.headers,cache:W.cache,referrer:ie(),signal:te.signal});W.type!=="json"||fe.headers.has("Accept")||fe.headers.set("Accept","application/json");let pe=yield fetch(fe);if(!pe.ok){let ct=yield pe.blob();throw new me(pe.status,pe.statusText,W.url,ct)}let ze;ze=W.type==="arrayBuffer"||W.type==="image"?pe.arrayBuffer():W.type==="json"?pe.json():pe.text();let Ke=yield ze;if(te.signal.aborted)throw oe();return{data:Ke,cacheControl:pe.headers.get("Cache-Control"),expires:pe.headers.get("Expires")}})}(R,A);if(O(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:R,mustQueue:!0,targetMapId:Ce},A)}var F;return function(W,te){return new Promise((fe,pe)=>{var ze;let Ke=new XMLHttpRequest;Ke.open(W.method||"GET",W.url,!0),W.type!=="arrayBuffer"&&W.type!=="image"||(Ke.responseType="arraybuffer");for(let ct in W.headers)Ke.setRequestHeader(ct,W.headers[ct]);W.type==="json"&&(Ke.responseType="text",!((ze=W.headers)===null||ze===void 0)&&ze.Accept||Ke.setRequestHeader("Accept","application/json")),Ke.withCredentials=W.credentials==="include",Ke.onerror=()=>{pe(new Error(Ke.statusText))},Ke.onload=()=>{if(!te.signal.aborted)if((Ke.status>=200&&Ke.status<300||Ke.status===0)&&Ke.response!==null){let ct=Ke.response;if(W.type==="json")try{ct=JSON.parse(Ke.response)}catch(Lt){return void pe(Lt)}fe({data:ct,cacheControl:Ke.getResponseHeader("Cache-Control"),expires:Ke.getResponseHeader("Expires")})}else{let ct=new Blob([Ke.response],{type:Ke.getResponseHeader("Content-Type")});pe(new me(Ke.status,Ke.statusText,W.url,ct))}},te.signal.addEventListener("abort",()=>{Ke.abort(),pe(oe())}),Ke.send(W.body)})}(R,A)};function Le(R){if(!R||R.indexOf("://")<=0||R.indexOf("data:image/")===0||R.indexOf("blob:")===0)return!0;let A=new URL(R),F=window.location;return A.protocol===F.protocol&&A.host===F.host}function Ae(R,A,F){F[R]&&F[R].indexOf(A)!==-1||(F[R]=F[R]||[],F[R].push(A))}function Fe(R,A,F){if(F&&F[R]){let W=F[R].indexOf(A);W!==-1&&F[R].splice(W,1)}}class Pe{constructor(A,F={}){L(this,F),this.type=A}}class ge extends Pe{constructor(A,F={}){super("error",L({error:A},F))}}class Re{on(A,F){return this._listeners=this._listeners||{},Ae(A,F,this._listeners),this}off(A,F){return Fe(A,F,this._listeners),Fe(A,F,this._oneTimeListeners),this}once(A,F){return F?(this._oneTimeListeners=this._oneTimeListeners||{},Ae(A,F,this._oneTimeListeners),this):new Promise(W=>this.once(A,W))}fire(A,F){typeof A=="string"&&(A=new Pe(A,F||{}));let W=A.type;if(this.listens(W)){A.target=this;let te=this._listeners&&this._listeners[W]?this._listeners[W].slice():[];for(let ze of te)ze.call(this,A);let fe=this._oneTimeListeners&&this._oneTimeListeners[W]?this._oneTimeListeners[W].slice():[];for(let ze of fe)Fe(W,ze,this._oneTimeListeners),ze.call(this,A);let pe=this._eventedParent;pe&&(L(A,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),pe.fire(A))}else A instanceof ge&&console.error(A.error);return this}listens(A){return this._listeners&&this._listeners[A]&&this._listeners[A].length>0||this._oneTimeListeners&&this._oneTimeListeners[A]&&this._oneTimeListeners[A].length>0||this._eventedParent&&this._eventedParent.listens(A)}setEventedParent(A,F){return this._eventedParent=A,this._eventedParentData=F,this}}var ce={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"enum",default:"mercator",values:{mercator:{},globe:{}}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};let Ze=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function ut(R,A){let F={};for(let W in R)W!=="ref"&&(F[W]=R[W]);return Ze.forEach(W=>{W in A&&(F[W]=A[W])}),F}function pt(R,A){if(Array.isArray(R)){if(!Array.isArray(A)||R.length!==A.length)return!1;for(let F=0;F`:R.itemType.kind==="value"?"array":`array<${A}>`}return R.kind}let je=[Vt,_t,It,mt,er,ti,lr,Ge(Tr),Br,Vr,dt];function tt(R,A){if(A.kind==="error")return null;if(R.kind==="array"){if(A.kind==="array"&&(A.N===0&&A.itemType.kind==="value"||!tt(R.itemType,A.itemType))&&(typeof R.N!="number"||R.N===A.N))return null}else{if(R.kind===A.kind)return null;if(R.kind==="value"){for(let F of je)if(!tt(F,A))return null}}return`Expected ${Je(R)} but found ${Je(A)} instead.`}function xt(R,A){return A.some(F=>F.kind===R.kind)}function Ie(R,A){return A.some(F=>F==="null"?R===null:F==="array"?Array.isArray(R):F==="object"?R&&!Array.isArray(R)&&typeof R=="object":F===typeof R)}function xe(R,A){return R.kind==="array"&&A.kind==="array"?R.itemType.kind===A.itemType.kind&&typeof R.N=="number":R.kind===A.kind}let ke=.96422,vt=.82521,ir=4/29,ar=6/29,vr=3*ar*ar,ii=ar*ar*ar,pi=Math.PI/180,$r=180/Math.PI;function di(R){return(R%=360)<0&&(R+=360),R}function ji([R,A,F,W]){let te,fe,pe=wi((.2225045*(R=In(R))+.7168786*(A=In(A))+.0606169*(F=In(F)))/1);R===A&&A===F?te=fe=pe:(te=wi((.4360747*R+.3850649*A+.1430804*F)/ke),fe=wi((.0139322*R+.0971045*A+.7141733*F)/vt));let ze=116*pe-16;return[ze<0?0:ze,500*(te-pe),200*(pe-fe),W]}function In(R){return R<=.04045?R/12.92:Math.pow((R+.055)/1.055,2.4)}function wi(R){return R>ii?Math.pow(R,1/3):R/vr+ir}function On([R,A,F,W]){let te=(R+16)/116,fe=isNaN(A)?te:te+A/500,pe=isNaN(F)?te:te-F/200;return te=1*Fn(te),fe=ke*Fn(fe),pe=vt*Fn(pe),[qn(3.1338561*fe-1.6168667*te-.4906146*pe),qn(-.9787684*fe+1.9161415*te+.033454*pe),qn(.0719453*fe-.2289914*te+1.4052427*pe),W]}function qn(R){return(R=R<=.00304?12.92*R:1.055*Math.pow(R,1/2.4)-.055)<0?0:R>1?1:R}function Fn(R){return R>ar?R*R*R:vr*(R-ir)}function ra(R){return parseInt(R.padEnd(2,R),16)/255}function la(R,A){return Ut(A?R/100:R,0,1)}function Ut(R,A,F){return Math.min(Math.max(A,R),F)}function wt(R){return!R.some(Number.isNaN)}let rr={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};class nr{constructor(A,F,W,te=1,fe=!0){this.r=A,this.g=F,this.b=W,this.a=te,fe||(this.r*=te,this.g*=te,this.b*=te,te||this.overwriteGetter("rgb",[A,F,W,te]))}static parse(A){if(A instanceof nr)return A;if(typeof A!="string")return;let F=function(W){if((W=W.toLowerCase().trim())==="transparent")return[0,0,0,0];let te=rr[W];if(te){let[pe,ze,Ke]=te;return[pe/255,ze/255,Ke/255,1]}if(W.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(W)){let pe=W.length<6?1:2,ze=1;return[ra(W.slice(ze,ze+=pe)),ra(W.slice(ze,ze+=pe)),ra(W.slice(ze,ze+=pe)),ra(W.slice(ze,ze+pe)||"ff")]}if(W.startsWith("rgb")){let pe=W.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(pe){let[ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn]=pe,zi=[Lt||" ",mr||" ",ui].join("");if(zi===" "||zi===" /"||zi===",,"||zi===",,,"){let un=[ct,fr,zr].join(""),Tn=un==="%%%"?100:un===""?255:0;if(Tn){let pa=[Ut(+Ke/Tn,0,1),Ut(+$t/Tn,0,1),Ut(+Pr/Tn,0,1),yi?la(+yi,vn):1];if(wt(pa))return pa}}return}}let fe=W.match(/^hsla?\(\s*([\de.+-]+)(?:deg)?(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(fe){let[pe,ze,Ke,ct,Lt,$t,fr,mr,Pr]=fe,zr=[Ke||" ",Lt||" ",fr].join("");if(zr===" "||zr===" /"||zr===",,"||zr===",,,"){let ui=[+ze,Ut(+ct,0,100),Ut(+$t,0,100),mr?la(+mr,Pr):1];if(wt(ui))return function([yi,vn,zi,un]){function Tn(pa){let ro=(pa+yi/30)%12,Vo=vn*Math.min(zi,1-zi);return zi-Vo*Math.max(-1,Math.min(ro-3,9-ro,1))}return yi=di(yi),vn/=100,zi/=100,[Tn(0),Tn(8),Tn(4),un]}(ui)}}}(A);return F?new nr(...F,!1):void 0}get rgb(){let{r:A,g:F,b:W,a:te}=this,fe=te||1/0;return this.overwriteGetter("rgb",[A/fe,F/fe,W/fe,te])}get hcl(){return this.overwriteGetter("hcl",function(A){let[F,W,te,fe]=ji(A),pe=Math.sqrt(W*W+te*te);return[Math.round(1e4*pe)?di(Math.atan2(te,W)*$r):NaN,pe,F,fe]}(this.rgb))}get lab(){return this.overwriteGetter("lab",ji(this.rgb))}overwriteGetter(A,F){return Object.defineProperty(this,A,{value:F}),F}toString(){let[A,F,W,te]=this.rgb;return`rgba(${[A,F,W].map(fe=>Math.round(255*fe)).join(",")},${te})`}}nr.black=new nr(0,0,0,1),nr.white=new nr(1,1,1,1),nr.transparent=new nr(0,0,0,0),nr.red=new nr(1,0,0,1);class Er{constructor(A,F,W){this.sensitivity=A?F?"variant":"case":F?"accent":"base",this.locale=W,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(A,F){return this.collator.compare(A,F)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Xr{constructor(A,F,W,te,fe){this.text=A,this.image=F,this.scale=W,this.fontStack=te,this.textColor=fe}}class ri{constructor(A){this.sections=A}static fromString(A){return new ri([new Xr(A,null,null,null,null)])}isEmpty(){return this.sections.length===0||!this.sections.some(A=>A.text.length!==0||A.image&&A.image.name.length!==0)}static factory(A){return A instanceof ri?A:ri.fromString(A)}toString(){return this.sections.length===0?"":this.sections.map(A=>A.text).join("")}}class Qr{constructor(A){this.values=A.slice()}static parse(A){if(A instanceof Qr)return A;if(typeof A=="number")return new Qr([A,A,A,A]);if(Array.isArray(A)&&!(A.length<1||A.length>4)){for(let F of A)if(typeof F!="number")return;switch(A.length){case 1:A=[A[0],A[0],A[0],A[0]];break;case 2:A=[A[0],A[1],A[0],A[1]];break;case 3:A=[A[0],A[1],A[2],A[1]]}return new Qr(A)}}toString(){return JSON.stringify(this.values)}}let Oi=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]);class $i{constructor(A){this.values=A.slice()}static parse(A){if(A instanceof $i)return A;if(Array.isArray(A)&&!(A.length<1)&&A.length%2==0){for(let F=0;F=0&&R<=255&&typeof A=="number"&&A>=0&&A<=255&&typeof F=="number"&&F>=0&&F<=255?W===void 0||typeof W=="number"&&W>=0&&W<=1?null:`Invalid rgba value [${[R,A,F,W].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof W=="number"?[R,A,F,W]:[R,A,F]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function yn(R){if(R===null||typeof R=="string"||typeof R=="boolean"||typeof R=="number"||R instanceof nr||R instanceof Er||R instanceof ri||R instanceof Qr||R instanceof $i||R instanceof tn)return!0;if(Array.isArray(R)){for(let A of R)if(!yn(A))return!1;return!0}if(typeof R=="object"){for(let A in R)if(!yn(R[A]))return!1;return!0}return!1}function Sn(R){if(R===null)return Vt;if(typeof R=="string")return It;if(typeof R=="boolean")return mt;if(typeof R=="number")return _t;if(R instanceof nr)return er;if(R instanceof Er)return Lr;if(R instanceof ri)return ti;if(R instanceof Qr)return Br;if(R instanceof $i)return dt;if(R instanceof tn)return Vr;if(Array.isArray(R)){let A=R.length,F;for(let W of R){let te=Sn(W);if(F){if(F===te)continue;F=Tr;break}F=te}return Ge(F||Tr,A)}return lr}function Ba(R){let A=typeof R;return R===null?"":A==="string"||A==="number"||A==="boolean"?String(R):R instanceof nr||R instanceof ri||R instanceof Qr||R instanceof $i||R instanceof tn?R.toString():JSON.stringify(R)}class ua{constructor(A,F){this.type=A,this.value=F}static parse(A,F){if(A.length!==2)return F.error(`'literal' expression requires exactly one argument, but found ${A.length-1} instead.`);if(!yn(A[1]))return F.error("invalid value");let W=A[1],te=Sn(W),fe=F.expectedType;return te.kind!=="array"||te.N!==0||!fe||fe.kind!=="array"||typeof fe.N=="number"&&fe.N!==0||(te=fe),new ua(te,W)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class ma{constructor(A){this.name="ExpressionEvaluationError",this.message=A}toJSON(){return this.message}}let Wa={string:It,number:_t,boolean:mt,object:lr};class Fa{constructor(A,F){this.type=A,this.args=F}static parse(A,F){if(A.length<2)return F.error("Expected at least one argument.");let W,te=1,fe=A[0];if(fe==="array"){let ze,Ke;if(A.length>2){let ct=A[1];if(typeof ct!="string"||!(ct in Wa)||ct==="object")return F.error('The item type argument of "array" must be one of string, number, boolean',1);ze=Wa[ct],te++}else ze=Tr;if(A.length>3){if(A[2]!==null&&(typeof A[2]!="number"||A[2]<0||A[2]!==Math.floor(A[2])))return F.error('The length argument to "array" must be a positive integer literal',2);Ke=A[2],te++}W=Ge(ze,Ke)}else{if(!Wa[fe])throw new Error(`Types doesn't contain name = ${fe}`);W=Wa[fe]}let pe=[];for(;teA.outputDefined())}}let Wo={"to-boolean":mt,"to-color":er,"to-number":_t,"to-string":It};class da{constructor(A,F){this.type=A,this.args=F}static parse(A,F){if(A.length<2)return F.error("Expected at least one argument.");let W=A[0];if(!Wo[W])throw new Error(`Can't parse ${W} as it is not part of the known types`);if((W==="to-boolean"||W==="to-string")&&A.length!==2)return F.error("Expected one argument.");let te=Wo[W],fe=[];for(let pe=1;pe4?`Invalid rbga value ${JSON.stringify(F)}: expected an array containing either three or four numeric values.`:fn(F[0],F[1],F[2],F[3]),!W))return new nr(F[0]/255,F[1]/255,F[2]/255,F[3])}throw new ma(W||`Could not parse color from value '${typeof F=="string"?F:JSON.stringify(F)}'`)}case"padding":{let F;for(let W of this.args){F=W.evaluate(A);let te=Qr.parse(F);if(te)return te}throw new ma(`Could not parse padding from value '${typeof F=="string"?F:JSON.stringify(F)}'`)}case"variableAnchorOffsetCollection":{let F;for(let W of this.args){F=W.evaluate(A);let te=$i.parse(F);if(te)return te}throw new ma(`Could not parse variableAnchorOffsetCollection from value '${typeof F=="string"?F:JSON.stringify(F)}'`)}case"number":{let F=null;for(let W of this.args){if(F=W.evaluate(A),F===null)return 0;let te=Number(F);if(!isNaN(te))return te}throw new ma(`Could not convert ${JSON.stringify(F)} to number.`)}case"formatted":return ri.fromString(Ba(this.args[0].evaluate(A)));case"resolvedImage":return tn.fromString(Ba(this.args[0].evaluate(A)));default:return Ba(this.args[0].evaluate(A))}}eachChild(A){this.args.forEach(A)}outputDefined(){return this.args.every(A=>A.outputDefined())}}let Wn=["Unknown","Point","LineString","Polygon"];class Ga{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?Wn[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(A){let F=this._parseColorCache[A];return F||(F=this._parseColorCache[A]=nr.parse(A)),F}}class vo{constructor(A,F,W=[],te,fe=new Qt,pe=[]){this.registry=A,this.path=W,this.key=W.map(ze=>`[${ze}]`).join(""),this.scope=fe,this.errors=pe,this.expectedType=te,this._isConstant=F}parse(A,F,W,te,fe={}){return F?this.concat(F,W,te)._parse(A,fe):this._parse(A,fe)}_parse(A,F){function W(te,fe,pe){return pe==="assert"?new Fa(fe,[te]):pe==="coerce"?new da(fe,[te]):te}if(A!==null&&typeof A!="string"&&typeof A!="boolean"&&typeof A!="number"||(A=["literal",A]),Array.isArray(A)){if(A.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');let te=A[0];if(typeof te!="string")return this.error(`Expression name must be a string, but found ${typeof te} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;let fe=this.registry[te];if(fe){let pe=fe.parse(A,this);if(!pe)return null;if(this.expectedType){let ze=this.expectedType,Ke=pe.type;if(ze.kind!=="string"&&ze.kind!=="number"&&ze.kind!=="boolean"&&ze.kind!=="object"&&ze.kind!=="array"||Ke.kind!=="value")if(ze.kind!=="color"&&ze.kind!=="formatted"&&ze.kind!=="resolvedImage"||Ke.kind!=="value"&&Ke.kind!=="string")if(ze.kind!=="padding"||Ke.kind!=="value"&&Ke.kind!=="number"&&Ke.kind!=="array")if(ze.kind!=="variableAnchorOffsetCollection"||Ke.kind!=="value"&&Ke.kind!=="array"){if(this.checkSubtype(ze,Ke))return null}else pe=W(pe,ze,F.typeAnnotation||"coerce");else pe=W(pe,ze,F.typeAnnotation||"coerce");else pe=W(pe,ze,F.typeAnnotation||"coerce");else pe=W(pe,ze,F.typeAnnotation||"assert")}if(!(pe instanceof ua)&&pe.type.kind!=="resolvedImage"&&this._isConstant(pe)){let ze=new Ga;try{pe=new ua(pe.type,pe.evaluate(ze))}catch(Ke){return this.error(Ke.message),null}}return pe}return this.error(`Unknown expression "${te}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(A===void 0?"'undefined' value invalid. Use null instead.":typeof A=="object"?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof A} instead.`)}concat(A,F,W){let te=typeof A=="number"?this.path.concat(A):this.path,fe=W?this.scope.concat(W):this.scope;return new vo(this.registry,this._isConstant,te,F||null,fe,this.errors)}error(A,...F){let W=`${this.key}${F.map(te=>`[${te}]`).join("")}`;this.errors.push(new St(W,A))}checkSubtype(A,F){let W=tt(A,F);return W&&this.error(W),W}}class jn{constructor(A,F){this.type=F.type,this.bindings=[].concat(A),this.result=F}evaluate(A){return this.result.evaluate(A)}eachChild(A){for(let F of this.bindings)A(F[1]);A(this.result)}static parse(A,F){if(A.length<4)return F.error(`Expected at least 3 arguments, but found ${A.length-1} instead.`);let W=[];for(let fe=1;fe=W.length)throw new ma(`Array index out of bounds: ${F} > ${W.length-1}.`);if(F!==Math.floor(F))throw new ma(`Array index must be an integer, but found ${F} instead.`);return W[F]}eachChild(A){A(this.index),A(this.input)}outputDefined(){return!1}}class Jr{constructor(A,F){this.type=mt,this.needle=A,this.haystack=F}static parse(A,F){if(A.length!==3)return F.error(`Expected 2 arguments, but found ${A.length-1} instead.`);let W=F.parse(A[1],1,Tr),te=F.parse(A[2],2,Tr);return W&&te?xt(W.type,[mt,It,_t,Vt,Tr])?new Jr(W,te):F.error(`Expected first argument to be of type boolean, string, number or null, but found ${Je(W.type)} instead`):null}evaluate(A){let F=this.needle.evaluate(A),W=this.haystack.evaluate(A);if(!W)return!1;if(!Ie(F,["boolean","string","number","null"]))throw new ma(`Expected first argument to be of type boolean, string, number or null, but found ${Je(Sn(F))} instead.`);if(!Ie(W,["string","array"]))throw new ma(`Expected second argument to be of type array or string, but found ${Je(Sn(W))} instead.`);return W.indexOf(F)>=0}eachChild(A){A(this.needle),A(this.haystack)}outputDefined(){return!0}}class vi{constructor(A,F,W){this.type=_t,this.needle=A,this.haystack=F,this.fromIndex=W}static parse(A,F){if(A.length<=2||A.length>=5)return F.error(`Expected 3 or 4 arguments, but found ${A.length-1} instead.`);let W=F.parse(A[1],1,Tr),te=F.parse(A[2],2,Tr);if(!W||!te)return null;if(!xt(W.type,[mt,It,_t,Vt,Tr]))return F.error(`Expected first argument to be of type boolean, string, number or null, but found ${Je(W.type)} instead`);if(A.length===4){let fe=F.parse(A[3],3,_t);return fe?new vi(W,te,fe):null}return new vi(W,te)}evaluate(A){let F=this.needle.evaluate(A),W=this.haystack.evaluate(A);if(!Ie(F,["boolean","string","number","null"]))throw new ma(`Expected first argument to be of type boolean, string, number or null, but found ${Je(Sn(F))} instead.`);let te;if(this.fromIndex&&(te=this.fromIndex.evaluate(A)),Ie(W,["string"])){let fe=W.indexOf(F,te);return fe===-1?-1:[...W.slice(0,fe)].length}if(Ie(W,["array"]))return W.indexOf(F,te);throw new ma(`Expected second argument to be of type array or string, but found ${Je(Sn(W))} instead.`)}eachChild(A){A(this.needle),A(this.haystack),this.fromIndex&&A(this.fromIndex)}outputDefined(){return!1}}class hn{constructor(A,F,W,te,fe,pe){this.inputType=A,this.type=F,this.input=W,this.cases=te,this.outputs=fe,this.otherwise=pe}static parse(A,F){if(A.length<5)return F.error(`Expected at least 4 arguments, but found only ${A.length-1}.`);if(A.length%2!=1)return F.error("Expected an even number of arguments.");let W,te;F.expectedType&&F.expectedType.kind!=="value"&&(te=F.expectedType);let fe={},pe=[];for(let ct=2;ctNumber.MAX_SAFE_INTEGER)return fr.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof Pr=="number"&&Math.floor(Pr)!==Pr)return fr.error("Numeric branch labels must be integer values.");if(W){if(fr.checkSubtype(W,Sn(Pr)))return null}else W=Sn(Pr);if(fe[String(Pr)]!==void 0)return fr.error("Branch labels must be unique.");fe[String(Pr)]=pe.length}let mr=F.parse($t,ct,te);if(!mr)return null;te=te||mr.type,pe.push(mr)}let ze=F.parse(A[1],1,Tr);if(!ze)return null;let Ke=F.parse(A[A.length-1],A.length-1,te);return Ke?ze.type.kind!=="value"&&F.concat(1).checkSubtype(W,ze.type)?null:new hn(W,te,ze,fe,pe,Ke):null}evaluate(A){let F=this.input.evaluate(A);return(Sn(F)===this.inputType&&this.outputs[this.cases[F]]||this.otherwise).evaluate(A)}eachChild(A){A(this.input),this.outputs.forEach(A),A(this.otherwise)}outputDefined(){return this.outputs.every(A=>A.outputDefined())&&this.otherwise.outputDefined()}}class An{constructor(A,F,W){this.type=A,this.branches=F,this.otherwise=W}static parse(A,F){if(A.length<4)return F.error(`Expected at least 3 arguments, but found only ${A.length-1}.`);if(A.length%2!=0)return F.error("Expected an odd number of arguments.");let W;F.expectedType&&F.expectedType.kind!=="value"&&(W=F.expectedType);let te=[];for(let pe=1;peF.outputDefined())&&this.otherwise.outputDefined()}}class Mn{constructor(A,F,W,te){this.type=A,this.input=F,this.beginIndex=W,this.endIndex=te}static parse(A,F){if(A.length<=2||A.length>=5)return F.error(`Expected 3 or 4 arguments, but found ${A.length-1} instead.`);let W=F.parse(A[1],1,Tr),te=F.parse(A[2],2,_t);if(!W||!te)return null;if(!xt(W.type,[Ge(Tr),It,Tr]))return F.error(`Expected first argument to be of type array or string, but found ${Je(W.type)} instead`);if(A.length===4){let fe=F.parse(A[3],3,_t);return fe?new Mn(W.type,W,te,fe):null}return new Mn(W.type,W,te)}evaluate(A){let F=this.input.evaluate(A),W=this.beginIndex.evaluate(A),te;if(this.endIndex&&(te=this.endIndex.evaluate(A)),Ie(F,["string"]))return[...F].slice(W,te).join("");if(Ie(F,["array"]))return F.slice(W,te);throw new ma(`Expected first argument to be of type array or string, but found ${Je(Sn(F))} instead.`)}eachChild(A){A(this.input),A(this.beginIndex),this.endIndex&&A(this.endIndex)}outputDefined(){return!1}}function Li(R,A){let F=R.length-1,W,te,fe=0,pe=F,ze=0;for(;fe<=pe;)if(ze=Math.floor((fe+pe)/2),W=R[ze],te=R[ze+1],W<=A){if(ze===F||AA))throw new ma("Input is not a number.");pe=ze-1}return 0}class _n{constructor(A,F,W){this.type=A,this.input=F,this.labels=[],this.outputs=[];for(let[te,fe]of W)this.labels.push(te),this.outputs.push(fe)}static parse(A,F){if(A.length-1<4)return F.error(`Expected at least 4 arguments, but found only ${A.length-1}.`);if((A.length-1)%2!=0)return F.error("Expected an even number of arguments.");let W=F.parse(A[1],1,_t);if(!W)return null;let te=[],fe=null;F.expectedType&&F.expectedType.kind!=="value"&&(fe=F.expectedType);for(let pe=1;pe=ze)return F.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',ct);let $t=F.parse(Ke,Lt,fe);if(!$t)return null;fe=fe||$t.type,te.push([ze,$t])}return new _n(fe,W,te)}evaluate(A){let F=this.labels,W=this.outputs;if(F.length===1)return W[0].evaluate(A);let te=this.input.evaluate(A);if(te<=F[0])return W[0].evaluate(A);let fe=F.length;return te>=F[fe-1]?W[fe-1].evaluate(A):W[Li(F,te)].evaluate(A)}eachChild(A){A(this.input);for(let F of this.outputs)A(F)}outputDefined(){return this.outputs.every(A=>A.outputDefined())}}function ya(R){return R&&R.__esModule&&Object.prototype.hasOwnProperty.call(R,"default")?R.default:R}var Jn=Ma;function Ma(R,A,F,W){this.cx=3*R,this.bx=3*(F-R)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*A,this.by=3*(W-A)-this.cy,this.ay=1-this.cy-this.by,this.p1x=R,this.p1y=A,this.p2x=F,this.p2y=W}Ma.prototype={sampleCurveX:function(R){return((this.ax*R+this.bx)*R+this.cx)*R},sampleCurveY:function(R){return((this.ay*R+this.by)*R+this.cy)*R},sampleCurveDerivativeX:function(R){return(3*this.ax*R+2*this.bx)*R+this.cx},solveCurveX:function(R,A){if(A===void 0&&(A=1e-6),R<0)return 0;if(R>1)return 1;for(var F=R,W=0;W<8;W++){var te=this.sampleCurveX(F)-R;if(Math.abs(te)te?pe=F:ze=F,F=.5*(ze-pe)+pe;return F},solve:function(R,A){return this.sampleCurveY(this.solveCurveX(R,A))}};var _o=ya(Jn);function No(R,A,F){return R+F*(A-R)}function po(R,A,F){return R.map((W,te)=>No(W,A[te],F))}let Lo={number:No,color:function(R,A,F,W="rgb"){switch(W){case"rgb":{let[te,fe,pe,ze]=po(R.rgb,A.rgb,F);return new nr(te,fe,pe,ze,!1)}case"hcl":{let[te,fe,pe,ze]=R.hcl,[Ke,ct,Lt,$t]=A.hcl,fr,mr;if(isNaN(te)||isNaN(Ke))isNaN(te)?isNaN(Ke)?fr=NaN:(fr=Ke,pe!==1&&pe!==0||(mr=ct)):(fr=te,Lt!==1&&Lt!==0||(mr=fe));else{let vn=Ke-te;Ke>te&&vn>180?vn-=360:Ke180&&(vn+=360),fr=te+F*vn}let[Pr,zr,ui,yi]=function([vn,zi,un,Tn]){return vn=isNaN(vn)?0:vn*pi,On([un,Math.cos(vn)*zi,Math.sin(vn)*zi,Tn])}([fr,mr!=null?mr:No(fe,ct,F),No(pe,Lt,F),No(ze,$t,F)]);return new nr(Pr,zr,ui,yi,!1)}case"lab":{let[te,fe,pe,ze]=On(po(R.lab,A.lab,F));return new nr(te,fe,pe,ze,!1)}}},array:po,padding:function(R,A,F){return new Qr(po(R.values,A.values,F))},variableAnchorOffsetCollection:function(R,A,F){let W=R.values,te=A.values;if(W.length!==te.length)throw new ma(`Cannot interpolate values of different length. from: ${R.toString()}, to: ${A.toString()}`);let fe=[];for(let pe=0;petypeof Lt!="number"||Lt<0||Lt>1))return F.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);te={name:"cubic-bezier",controlPoints:ct}}}if(A.length-1<4)return F.error(`Expected at least 4 arguments, but found only ${A.length-1}.`);if((A.length-1)%2!=0)return F.error("Expected an even number of arguments.");if(fe=F.parse(fe,2,_t),!fe)return null;let ze=[],Ke=null;W==="interpolate-hcl"||W==="interpolate-lab"?Ke=er:F.expectedType&&F.expectedType.kind!=="value"&&(Ke=F.expectedType);for(let ct=0;ct=Lt)return F.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',fr);let Pr=F.parse($t,mr,Ke);if(!Pr)return null;Ke=Ke||Pr.type,ze.push([Lt,Pr])}return xe(Ke,_t)||xe(Ke,er)||xe(Ke,Br)||xe(Ke,dt)||xe(Ke,Ge(_t))?new ko(Ke,W,te,fe,ze):F.error(`Type ${Je(Ke)} is not interpolatable.`)}evaluate(A){let F=this.labels,W=this.outputs;if(F.length===1)return W[0].evaluate(A);let te=this.input.evaluate(A);if(te<=F[0])return W[0].evaluate(A);let fe=F.length;if(te>=F[fe-1])return W[fe-1].evaluate(A);let pe=Li(F,te),ze=ko.interpolationFactor(this.interpolation,te,F[pe],F[pe+1]),Ke=W[pe].evaluate(A),ct=W[pe+1].evaluate(A);switch(this.operator){case"interpolate":return Lo[this.type.kind](Ke,ct,ze);case"interpolate-hcl":return Lo.color(Ke,ct,ze,"hcl");case"interpolate-lab":return Lo.color(Ke,ct,ze,"lab")}}eachChild(A){A(this.input);for(let F of this.outputs)A(F)}outputDefined(){return this.outputs.every(A=>A.outputDefined())}}function Ds(R,A,F,W){let te=W-F,fe=R-F;return te===0?0:A===1?fe/te:(Math.pow(A,fe)-1)/(Math.pow(A,te)-1)}class Fs{constructor(A,F){this.type=A,this.args=F}static parse(A,F){if(A.length<2)return F.error("Expectected at least one argument.");let W=null,te=F.expectedType;te&&te.kind!=="value"&&(W=te);let fe=[];for(let ze of A.slice(1)){let Ke=F.parse(ze,1+fe.length,W,void 0,{typeAnnotation:"omit"});if(!Ke)return null;W=W||Ke.type,fe.push(Ke)}if(!W)throw new Error("No output type");let pe=te&&fe.some(ze=>tt(te,ze.type));return new Fs(pe?Tr:W,fe)}evaluate(A){let F,W=null,te=0;for(let fe of this.args)if(te++,W=fe.evaluate(A),W&&W instanceof tn&&!W.available&&(F||(F=W.name),W=null,te===this.args.length&&(W=F)),W!==null)break;return W}eachChild(A){this.args.forEach(A)}outputDefined(){return this.args.every(A=>A.outputDefined())}}function ll(R,A){return R==="=="||R==="!="?A.kind==="boolean"||A.kind==="string"||A.kind==="number"||A.kind==="null"||A.kind==="value":A.kind==="string"||A.kind==="number"||A.kind==="value"}function ul(R,A,F,W){return W.compare(A,F)===0}function zl(R,A,F){let W=R!=="=="&&R!=="!=";return class nje{constructor(fe,pe,ze){this.type=mt,this.lhs=fe,this.rhs=pe,this.collator=ze,this.hasUntypedArgument=fe.type.kind==="value"||pe.type.kind==="value"}static parse(fe,pe){if(fe.length!==3&&fe.length!==4)return pe.error("Expected two or three arguments.");let ze=fe[0],Ke=pe.parse(fe[1],1,Tr);if(!Ke)return null;if(!ll(ze,Ke.type))return pe.concat(1).error(`"${ze}" comparisons are not supported for type '${Je(Ke.type)}'.`);let ct=pe.parse(fe[2],2,Tr);if(!ct)return null;if(!ll(ze,ct.type))return pe.concat(2).error(`"${ze}" comparisons are not supported for type '${Je(ct.type)}'.`);if(Ke.type.kind!==ct.type.kind&&Ke.type.kind!=="value"&&ct.type.kind!=="value")return pe.error(`Cannot compare types '${Je(Ke.type)}' and '${Je(ct.type)}'.`);W&&(Ke.type.kind==="value"&&ct.type.kind!=="value"?Ke=new Fa(ct.type,[Ke]):Ke.type.kind!=="value"&&ct.type.kind==="value"&&(ct=new Fa(Ke.type,[ct])));let Lt=null;if(fe.length===4){if(Ke.type.kind!=="string"&&ct.type.kind!=="string"&&Ke.type.kind!=="value"&&ct.type.kind!=="value")return pe.error("Cannot use collator to compare non-string types.");if(Lt=pe.parse(fe[3],3,Lr),!Lt)return null}return new nje(Ke,ct,Lt)}evaluate(fe){let pe=this.lhs.evaluate(fe),ze=this.rhs.evaluate(fe);if(W&&this.hasUntypedArgument){let Ke=Sn(pe),ct=Sn(ze);if(Ke.kind!==ct.kind||Ke.kind!=="string"&&Ke.kind!=="number")throw new ma(`Expected arguments for "${R}" to be (string, string) or (number, number), but found (${Ke.kind}, ${ct.kind}) instead.`)}if(this.collator&&!W&&this.hasUntypedArgument){let Ke=Sn(pe),ct=Sn(ze);if(Ke.kind!=="string"||ct.kind!=="string")return A(fe,pe,ze)}return this.collator?F(fe,pe,ze,this.collator.evaluate(fe)):A(fe,pe,ze)}eachChild(fe){fe(this.lhs),fe(this.rhs),this.collator&&fe(this.collator)}outputDefined(){return!0}}}let us=zl("==",function(R,A,F){return A===F},ul),il=zl("!=",function(R,A,F){return A!==F},function(R,A,F,W){return!ul(0,A,F,W)}),As=zl("<",function(R,A,F){return A",function(R,A,F){return A>F},function(R,A,F,W){return W.compare(A,F)>0}),Ks=zl("<=",function(R,A,F){return A<=F},function(R,A,F,W){return W.compare(A,F)<=0}),zs=zl(">=",function(R,A,F){return A>=F},function(R,A,F,W){return W.compare(A,F)>=0});class Io{constructor(A,F,W){this.type=Lr,this.locale=W,this.caseSensitive=A,this.diacriticSensitive=F}static parse(A,F){if(A.length!==2)return F.error("Expected one argument.");let W=A[1];if(typeof W!="object"||Array.isArray(W))return F.error("Collator options argument must be an object.");let te=F.parse(W["case-sensitive"]!==void 0&&W["case-sensitive"],1,mt);if(!te)return null;let fe=F.parse(W["diacritic-sensitive"]!==void 0&&W["diacritic-sensitive"],1,mt);if(!fe)return null;let pe=null;return W.locale&&(pe=F.parse(W.locale,1,It),!pe)?null:new Io(te,fe,pe)}evaluate(A){return new Er(this.caseSensitive.evaluate(A),this.diacriticSensitive.evaluate(A),this.locale?this.locale.evaluate(A):null)}eachChild(A){A(this.caseSensitive),A(this.diacriticSensitive),this.locale&&A(this.locale)}outputDefined(){return!1}}class ls{constructor(A,F,W,te,fe){this.type=It,this.number=A,this.locale=F,this.currency=W,this.minFractionDigits=te,this.maxFractionDigits=fe}static parse(A,F){if(A.length!==3)return F.error("Expected two arguments.");let W=F.parse(A[1],1,_t);if(!W)return null;let te=A[2];if(typeof te!="object"||Array.isArray(te))return F.error("NumberFormat options argument must be an object.");let fe=null;if(te.locale&&(fe=F.parse(te.locale,1,It),!fe))return null;let pe=null;if(te.currency&&(pe=F.parse(te.currency,1,It),!pe))return null;let ze=null;if(te["min-fraction-digits"]&&(ze=F.parse(te["min-fraction-digits"],1,_t),!ze))return null;let Ke=null;return te["max-fraction-digits"]&&(Ke=F.parse(te["max-fraction-digits"],1,_t),!Ke)?null:new ls(W,fe,pe,ze,Ke)}evaluate(A){return new Intl.NumberFormat(this.locale?this.locale.evaluate(A):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(A):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(A):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(A):void 0}).format(this.number.evaluate(A))}eachChild(A){A(this.number),this.locale&&A(this.locale),this.currency&&A(this.currency),this.minFractionDigits&&A(this.minFractionDigits),this.maxFractionDigits&&A(this.maxFractionDigits)}outputDefined(){return!1}}class Zl{constructor(A){this.type=ti,this.sections=A}static parse(A,F){if(A.length<2)return F.error("Expected at least one argument.");let W=A[1];if(!Array.isArray(W)&&typeof W=="object")return F.error("First argument must be an image or text section.");let te=[],fe=!1;for(let pe=1;pe<=A.length-1;++pe){let ze=A[pe];if(fe&&typeof ze=="object"&&!Array.isArray(ze)){fe=!1;let Ke=null;if(ze["font-scale"]&&(Ke=F.parse(ze["font-scale"],1,_t),!Ke))return null;let ct=null;if(ze["text-font"]&&(ct=F.parse(ze["text-font"],1,Ge(It)),!ct))return null;let Lt=null;if(ze["text-color"]&&(Lt=F.parse(ze["text-color"],1,er),!Lt))return null;let $t=te[te.length-1];$t.scale=Ke,$t.font=ct,$t.textColor=Lt}else{let Ke=F.parse(A[pe],1,Tr);if(!Ke)return null;let ct=Ke.type.kind;if(ct!=="string"&&ct!=="value"&&ct!=="null"&&ct!=="resolvedImage")return F.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");fe=!0,te.push({content:Ke,scale:null,font:null,textColor:null})}}return new Zl(te)}evaluate(A){return new ri(this.sections.map(F=>{let W=F.content.evaluate(A);return Sn(W)===Vr?new Xr("",W,null,null,null):new Xr(Ba(W),null,F.scale?F.scale.evaluate(A):null,F.font?F.font.evaluate(A).join(","):null,F.textColor?F.textColor.evaluate(A):null)}))}eachChild(A){for(let F of this.sections)A(F.content),F.scale&&A(F.scale),F.font&&A(F.font),F.textColor&&A(F.textColor)}outputDefined(){return!1}}class Su{constructor(A){this.type=Vr,this.input=A}static parse(A,F){if(A.length!==2)return F.error("Expected two arguments.");let W=F.parse(A[1],1,It);return W?new Su(W):F.error("No image name provided.")}evaluate(A){let F=this.input.evaluate(A),W=tn.fromString(F);return W&&A.availableImages&&(W.available=A.availableImages.indexOf(F)>-1),W}eachChild(A){A(this.input)}outputDefined(){return!1}}class nc{constructor(A){this.type=_t,this.input=A}static parse(A,F){if(A.length!==2)return F.error(`Expected 1 argument, but found ${A.length-1} instead.`);let W=F.parse(A[1],1);return W?W.type.kind!=="array"&&W.type.kind!=="string"&&W.type.kind!=="value"?F.error(`Expected argument of type string or array, but found ${Je(W.type)} instead.`):new nc(W):null}evaluate(A){let F=this.input.evaluate(A);if(typeof F=="string")return[...F].length;if(Array.isArray(F))return F.length;throw new ma(`Expected value to be of type string or array, but found ${Je(Sn(F))} instead.`)}eachChild(A){A(this.input)}outputDefined(){return!1}}let bs=8192;function Rn(R,A){let F=(180+R[0])/360,W=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+R[1]*Math.PI/360)))/360,te=Math.pow(2,A.z);return[Math.round(F*te*bs),Math.round(W*te*bs)]}function _a(R,A){let F=Math.pow(2,A.z);return[(te=(R[0]/bs+A.x)/F,360*te-180),(W=(R[1]/bs+A.y)/F,360/Math.PI*Math.atan(Math.exp((180-360*W)*Math.PI/180))-90)];var W,te}function Vu(R,A){R[0]=Math.min(R[0],A[0]),R[1]=Math.min(R[1],A[1]),R[2]=Math.max(R[2],A[0]),R[3]=Math.max(R[3],A[1])}function Ol(R,A){return!(R[0]<=A[0]||R[2]>=A[2]||R[1]<=A[1]||R[3]>=A[3])}function xo(R,A,F){let W=R[0]-A[0],te=R[1]-A[1],fe=R[0]-F[0],pe=R[1]-F[1];return W*pe-fe*te==0&&W*fe<=0&&te*pe<=0}function Yl(R,A,F,W){return(te=[W[0]-F[0],W[1]-F[1]])[0]*(fe=[A[0]-R[0],A[1]-R[1]])[1]-te[1]*fe[0]!=0&&!(!qo(R,A,F,W)||!qo(F,W,R,A));var te,fe}function Ns(R,A,F){for(let W of F)for(let te=0;te(te=R)[1]!=(pe=ze[Ke+1])[1]>te[1]&&te[0]<(pe[0]-fe[0])*(te[1]-fe[1])/(pe[1]-fe[1])+fe[0]&&(W=!W)}var te,fe,pe;return W}function ac(R,A){for(let F of A)if(Hl(R,F))return!0;return!1}function aa(R,A){for(let F of R)if(!Hl(F,A))return!1;for(let F=0;F0&&ze<0||pe<0&&ze>0}function ql(R,A,F){let W=[];for(let te=0;teF[2]){let te=.5*W,fe=R[0]-F[0]>te?-W:F[0]-R[0]>te?W:0;fe===0&&(fe=R[0]-F[2]>te?-W:F[2]-R[0]>te?W:0),R[0]+=fe}Vu(A,R)}function rf(R,A,F,W){let te=Math.pow(2,W.z)*bs,fe=[W.x*bs,W.y*bs],pe=[];for(let ze of R)for(let Ke of ze){let ct=[Ke.x+fe[0],Ke.y+fe[1]];Do(ct,A,F,te),pe.push(ct)}return pe}function Uf(R,A,F,W){let te=Math.pow(2,W.z)*bs,fe=[W.x*bs,W.y*bs],pe=[];for(let Ke of R){let ct=[];for(let Lt of Ke){let $t=[Lt.x+fe[0],Lt.y+fe[1]];Vu(A,$t),ct.push($t)}pe.push(ct)}if(A[2]-A[0]<=te/2){(ze=A)[0]=ze[1]=1/0,ze[2]=ze[3]=-1/0;for(let Ke of pe)for(let ct of Ke)Do(ct,A,F,te)}var ze;return pe}class pl{constructor(A,F){this.type=mt,this.geojson=A,this.geometries=F}static parse(A,F){if(A.length!==2)return F.error(`'within' expression requires exactly one argument, but found ${A.length-1} instead.`);if(yn(A[1])){let W=A[1];if(W.type==="FeatureCollection"){let te=[];for(let fe of W.features){let{type:pe,coordinates:ze}=fe.geometry;pe==="Polygon"&&te.push(ze),pe==="MultiPolygon"&&te.push(...ze)}if(te.length)return new pl(W,{type:"MultiPolygon",coordinates:te})}else if(W.type==="Feature"){let te=W.geometry.type;if(te==="Polygon"||te==="MultiPolygon")return new pl(W,W.geometry)}else if(W.type==="Polygon"||W.type==="MultiPolygon")return new pl(W,W)}return F.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(A){if(A.geometry()!=null&&A.canonicalID()!=null){if(A.geometryType()==="Point")return function(F,W){let te=[1/0,1/0,-1/0,-1/0],fe=[1/0,1/0,-1/0,-1/0],pe=F.canonicalID();if(W.type==="Polygon"){let ze=ql(W.coordinates,fe,pe),Ke=rf(F.geometry(),te,fe,pe);if(!Ol(te,fe))return!1;for(let ct of Ke)if(!Hl(ct,ze))return!1}if(W.type==="MultiPolygon"){let ze=Pc(W.coordinates,fe,pe),Ke=rf(F.geometry(),te,fe,pe);if(!Ol(te,fe))return!1;for(let ct of Ke)if(!ac(ct,ze))return!1}return!0}(A,this.geometries);if(A.geometryType()==="LineString")return function(F,W){let te=[1/0,1/0,-1/0,-1/0],fe=[1/0,1/0,-1/0,-1/0],pe=F.canonicalID();if(W.type==="Polygon"){let ze=ql(W.coordinates,fe,pe),Ke=Uf(F.geometry(),te,fe,pe);if(!Ol(te,fe))return!1;for(let ct of Ke)if(!aa(ct,ze))return!1}if(W.type==="MultiPolygon"){let ze=Pc(W.coordinates,fe,pe),Ke=Uf(F.geometry(),te,fe,pe);if(!Ol(te,fe))return!1;for(let ct of Ke)if(!Oo(ct,ze))return!1}return!0}(A,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}}let Zc=class{constructor(R=[],A=(F,W)=>FW?1:0){if(this.data=R,this.length=this.data.length,this.compare=A,this.length>0)for(let F=(this.length>>1)-1;F>=0;F--)this._down(F)}push(R){this.data.push(R),this._up(this.length++)}pop(){if(this.length===0)return;let R=this.data[0],A=this.data.pop();return--this.length>0&&(this.data[0]=A,this._down(0)),R}peek(){return this.data[0]}_up(R){let{data:A,compare:F}=this,W=A[R];for(;R>0;){let te=R-1>>1,fe=A[te];if(F(W,fe)>=0)break;A[R]=fe,R=te}A[R]=W}_down(R){let{data:A,compare:F}=this,W=this.length>>1,te=A[R];for(;R=0)break;A[R]=A[fe],R=fe}A[R]=te}};function Kl(R,A,F,W,te){Os(R,A,F,W||R.length-1,te||oc)}function Os(R,A,F,W,te){for(;W>F;){if(W-F>600){var fe=W-F+1,pe=A-F+1,ze=Math.log(fe),Ke=.5*Math.exp(2*ze/3),ct=.5*Math.sqrt(ze*Ke*(fe-Ke)/fe)*(pe-fe/2<0?-1:1);Os(R,A,Math.max(F,Math.floor(A-pe*Ke/fe+ct)),Math.min(W,Math.floor(A+(fe-pe)*Ke/fe+ct)),te)}var Lt=R[A],$t=F,fr=W;for(yu(R,F,A),te(R[W],Lt)>0&&yu(R,F,W);$t0;)fr--}te(R[F],Lt)===0?yu(R,F,fr):yu(R,++fr,W),fr<=A&&(F=fr+1),A<=fr&&(W=fr-1)}}function yu(R,A,F){var W=R[A];R[A]=R[F],R[F]=W}function oc(R,A){return RA?1:0}function Cf(R,A){if(R.length<=1)return[R];let F=[],W,te;for(let fe of R){let pe=Vh(fe);pe!==0&&(fe.area=Math.abs(pe),te===void 0&&(te=pe<0),te===pe<0?(W&&F.push(W),W=[fe]):W.push(fe))}if(W&&F.push(W),A>1)for(let fe=0;fe1?(ct=A[Ke+1][0],Lt=A[Ke+1][1]):mr>0&&(ct+=$t/this.kx*mr,Lt+=fr/this.ky*mr)),$t=this.wrap(F[0]-ct)*this.kx,fr=(F[1]-Lt)*this.ky;let Pr=$t*$t+fr*fr;Pr180;)A-=360;return A}}function Jl(R,A){return A[0]-R[0]}function fl(R){return R[1]-R[0]+1}function lc(R,A){return R[1]>=R[0]&&R[1]R[1])return[null,null];let F=fl(R);if(A){if(F===2)return[R,null];let te=Math.floor(F/2);return[[R[0],R[0]+te],[R[0]+te,R[1]]]}if(F===1)return[R,null];let W=Math.floor(F/2)-1;return[[R[0],R[0]+W],[R[0]+W+1,R[1]]]}function Es(R,A){if(!lc(A,R.length))return[1/0,1/0,-1/0,-1/0];let F=[1/0,1/0,-1/0,-1/0];for(let W=A[0];W<=A[1];++W)Vu(F,R[W]);return F}function Hs(R){let A=[1/0,1/0,-1/0,-1/0];for(let F of R)for(let W of F)Vu(A,W);return A}function Go(R){return R[0]!==-1/0&&R[1]!==-1/0&&R[2]!==1/0&&R[3]!==1/0}function ps(R,A,F){if(!Go(R)||!Go(A))return NaN;let W=0,te=0;return R[2]A[2]&&(W=R[0]-A[2]),R[1]>A[3]&&(te=R[1]-A[3]),R[3]=W)return W;if(Ol(te,fe)){if(od(R,A))return 0}else if(od(A,R))return 0;let pe=1/0;for(let ze of R)for(let Ke=0,ct=ze.length,Lt=ct-1;Ke0;){let Ke=pe.pop();if(Ke[0]>=fe)continue;let ct=Ke[1],Lt=A?50:100;if(fl(ct)<=Lt){if(!lc(ct,R.length))return NaN;if(A){let $t=Po(R,ct,F,W);if(isNaN($t)||$t===0)return $t;fe=Math.min(fe,$t)}else for(let $t=ct[0];$t<=ct[1];++$t){let fr=ad(R[$t],F,W);if(fe=Math.min(fe,fr),fe===0)return 0}}else{let $t=Fu(ct,A);Pa(pe,fe,W,R,ze,$t[0]),Pa(pe,fe,W,R,ze,$t[1])}}return fe}function bl(R,A,F,W,te,fe=1/0){let pe=Math.min(fe,te.distance(R[0],F[0]));if(pe===0)return pe;let ze=new Zc([[0,[0,R.length-1],[0,F.length-1]]],Jl);for(;ze.length>0;){let Ke=ze.pop();if(Ke[0]>=pe)continue;let ct=Ke[1],Lt=Ke[2],$t=A?50:100,fr=W?50:100;if(fl(ct)<=$t&&fl(Lt)<=fr){if(!lc(ct,R.length)&&lc(Lt,F.length))return NaN;let mr;if(A&&W)mr=Gu(R,ct,F,Lt,te),pe=Math.min(pe,mr);else if(A&&!W){let Pr=R.slice(ct[0],ct[1]+1);for(let zr=Lt[0];zr<=Lt[1];++zr)if(mr=uc(F[zr],Pr,te),pe=Math.min(pe,mr),pe===0)return pe}else if(!A&&W){let Pr=F.slice(Lt[0],Lt[1]+1);for(let zr=ct[0];zr<=ct[1];++zr)if(mr=uc(R[zr],Pr,te),pe=Math.min(pe,mr),pe===0)return pe}else mr=qs(R,ct,F,Lt,te),pe=Math.min(pe,mr)}else{let mr=Fu(ct,A),Pr=Fu(Lt,W);af(ze,pe,te,R,F,mr[0],Pr[0]),af(ze,pe,te,R,F,mr[0],Pr[1]),af(ze,pe,te,R,F,mr[1],Pr[0]),af(ze,pe,te,R,F,mr[1],Pr[1])}}return pe}function Gf(R){return R.type==="MultiPolygon"?R.coordinates.map(A=>({type:"Polygon",coordinates:A})):R.type==="MultiLineString"?R.coordinates.map(A=>({type:"LineString",coordinates:A})):R.type==="MultiPoint"?R.coordinates.map(A=>({type:"Point",coordinates:A})):[R]}class Ic{constructor(A,F){this.type=_t,this.geojson=A,this.geometries=F}static parse(A,F){if(A.length!==2)return F.error(`'distance' expression requires exactly one argument, but found ${A.length-1} instead.`);if(yn(A[1])){let W=A[1];if(W.type==="FeatureCollection")return new Ic(W,W.features.map(te=>Gf(te.geometry)).flat());if(W.type==="Feature")return new Ic(W,Gf(W.geometry));if("type"in W&&"coordinates"in W)return new Ic(W,Gf(W))}return F.error("'distance' expression requires valid geojson object that contains polygon geometry type.")}evaluate(A){if(A.geometry()!=null&&A.canonicalID()!=null){if(A.geometryType()==="Point")return function(F,W){let te=F.geometry(),fe=te.flat().map(Ke=>_a([Ke.x,Ke.y],F.canonical));if(te.length===0)return NaN;let pe=new Vf(fe[0][1]),ze=1/0;for(let Ke of W){switch(Ke.type){case"Point":ze=Math.min(ze,bl(fe,!1,[Ke.coordinates],!1,pe,ze));break;case"LineString":ze=Math.min(ze,bl(fe,!1,Ke.coordinates,!0,pe,ze));break;case"Polygon":ze=Math.min(ze,Hu(fe,!1,Ke.coordinates,pe,ze))}if(ze===0)return ze}return ze}(A,this.geometries);if(A.geometryType()==="LineString")return function(F,W){let te=F.geometry(),fe=te.flat().map(Ke=>_a([Ke.x,Ke.y],F.canonical));if(te.length===0)return NaN;let pe=new Vf(fe[0][1]),ze=1/0;for(let Ke of W){switch(Ke.type){case"Point":ze=Math.min(ze,bl(fe,!0,[Ke.coordinates],!1,pe,ze));break;case"LineString":ze=Math.min(ze,bl(fe,!0,Ke.coordinates,!0,pe,ze));break;case"Polygon":ze=Math.min(ze,Hu(fe,!0,Ke.coordinates,pe,ze))}if(ze===0)return ze}return ze}(A,this.geometries);if(A.geometryType()==="Polygon")return function(F,W){let te=F.geometry();if(te.length===0||te[0].length===0)return NaN;let fe=Cf(te,0).map(Ke=>Ke.map(ct=>ct.map(Lt=>_a([Lt.x,Lt.y],F.canonical)))),pe=new Vf(fe[0][0][0][1]),ze=1/0;for(let Ke of W)for(let ct of fe){switch(Ke.type){case"Point":ze=Math.min(ze,Hu([Ke.coordinates],!1,ct,pe,ze));break;case"LineString":ze=Math.min(ze,Hu(Ke.coordinates,!0,ct,pe,ze));break;case"Polygon":ze=Math.min(ze,Yo(ct,Ke.coordinates,pe,ze))}if(ze===0)return ze}return ze}(A,this.geometries)}return NaN}eachChild(){}outputDefined(){return!0}}let yf={"==":us,"!=":il,">":cl,"<":As,">=":zs,"<=":Ks,array:Fa,at:kr,boolean:Fa,case:An,coalesce:Fs,collator:Io,format:Zl,image:Su,in:Jr,"index-of":vi,interpolate:ko,"interpolate-hcl":ko,"interpolate-lab":ko,length:nc,let:jn,literal:ua,match:hn,number:Fa,"number-format":ls,object:Fa,slice:Mn,step:_n,string:Fa,"to-boolean":da,"to-color":da,"to-number":da,"to-string":da,var:Mt,within:pl,distance:Ic};class Bl{constructor(A,F,W,te){this.name=A,this.type=F,this._evaluate=W,this.args=te}evaluate(A){return this._evaluate(A,this.args)}eachChild(A){this.args.forEach(A)}outputDefined(){return!1}static parse(A,F){let W=A[0],te=Bl.definitions[W];if(!te)return F.error(`Unknown expression "${W}". If you wanted a literal array, use ["literal", [...]].`,0);let fe=Array.isArray(te)?te[0]:te.type,pe=Array.isArray(te)?[[te[1],te[2]]]:te.overloads,ze=pe.filter(([ct])=>!Array.isArray(ct)||ct.length===A.length-1),Ke=null;for(let[ct,Lt]of ze){Ke=new vo(F.registry,eh,F.path,null,F.scope);let $t=[],fr=!1;for(let mr=1;mr{return fr=$t,Array.isArray(fr)?`(${fr.map(Je).join(", ")})`:`(${Je(fr.type)}...)`;var fr}).join(" | "),Lt=[];for(let $t=1;$t{F=A?F&&eh(W):F&&W instanceof ua}),!!F&&th(R)&&Hf(R,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function th(R){if(R instanceof Bl&&(R.name==="get"&&R.args.length===1||R.name==="feature-state"||R.name==="has"&&R.args.length===1||R.name==="properties"||R.name==="geometry-type"||R.name==="id"||/^filter-/.test(R.name))||R instanceof pl||R instanceof Ic)return!1;let A=!0;return R.eachChild(F=>{A&&!th(F)&&(A=!1)}),A}function ju(R){if(R instanceof Bl&&R.name==="feature-state")return!1;let A=!0;return R.eachChild(F=>{A&&!ju(F)&&(A=!1)}),A}function Hf(R,A){if(R instanceof Bl&&A.indexOf(R.name)>=0)return!1;let F=!0;return R.eachChild(W=>{F&&!Hf(W,A)&&(F=!1)}),F}function cc(R){return{result:"success",value:R}}function of(R){return{result:"error",value:R}}function Nl(R){return R["property-type"]==="data-driven"||R["property-type"]==="cross-faded-data-driven"}function Kc(R){return!!R.expression&&R.expression.parameters.indexOf("zoom")>-1}function Rc(R){return!!R.expression&&R.expression.interpolated}function gs(R){return R instanceof Number?"number":R instanceof String?"string":R instanceof Boolean?"boolean":Array.isArray(R)?"array":R===null?"null":typeof R}function jf(R){return typeof R=="object"&&R!==null&&!Array.isArray(R)}function Gh(R){return R}function rh(R,A){let F=A.type==="color",W=R.stops&&typeof R.stops[0][0]=="object",te=W||!(W||R.property!==void 0),fe=R.type||(Rc(A)?"exponential":"interval");if(F||A.type==="padding"){let Lt=F?nr.parse:Qr.parse;(R=$e({},R)).stops&&(R.stops=R.stops.map($t=>[$t[0],Lt($t[1])])),R.default=Lt(R.default?R.default:A.default)}if(R.colorSpace&&(pe=R.colorSpace)!=="rgb"&&pe!=="hcl"&&pe!=="lab")throw new Error(`Unknown color space: "${R.colorSpace}"`);var pe;let ze,Ke,ct;if(fe==="exponential")ze=ih;else if(fe==="interval")ze=Mu;else if(fe==="categorical"){ze=Th,Ke=Object.create(null);for(let Lt of R.stops)Ke[Lt[0]]=Lt[1];ct=typeof R.stops[0][0]}else{if(fe!=="identity")throw new Error(`Unknown function type "${fe}"`);ze=js}if(W){let Lt={},$t=[];for(let Pr=0;PrPr[0]),evaluate:({zoom:Pr},zr)=>ih({stops:fr,base:R.base},A,Pr).evaluate(Pr,zr)}}if(te){let Lt=fe==="exponential"?{name:"exponential",base:R.base!==void 0?R.base:1}:null;return{kind:"camera",interpolationType:Lt,interpolationFactor:ko.interpolationFactor.bind(void 0,Lt),zoomStops:R.stops.map($t=>$t[0]),evaluate:({zoom:$t})=>ze(R,A,$t,Ke,ct)}}return{kind:"source",evaluate(Lt,$t){let fr=$t&&$t.properties?$t.properties[R.property]:void 0;return fr===void 0?sf(R.default,A.default):ze(R,A,fr,Ke,ct)}}}function sf(R,A,F){return R!==void 0?R:A!==void 0?A:F!==void 0?F:void 0}function Th(R,A,F,W,te){return sf(typeof F===te?W[F]:void 0,R.default,A.default)}function Mu(R,A,F){if(gs(F)!=="number")return sf(R.default,A.default);let W=R.stops.length;if(W===1||F<=R.stops[0][0])return R.stops[0][1];if(F>=R.stops[W-1][0])return R.stops[W-1][1];let te=Li(R.stops.map(fe=>fe[0]),F);return R.stops[te][1]}function ih(R,A,F){let W=R.base!==void 0?R.base:1;if(gs(F)!=="number")return sf(R.default,A.default);let te=R.stops.length;if(te===1||F<=R.stops[0][0])return R.stops[0][1];if(F>=R.stops[te-1][0])return R.stops[te-1][1];let fe=Li(R.stops.map(Lt=>Lt[0]),F),pe=function(Lt,$t,fr,mr){let Pr=mr-fr,zr=Lt-fr;return Pr===0?0:$t===1?zr/Pr:(Math.pow($t,zr)-1)/(Math.pow($t,Pr)-1)}(F,W,R.stops[fe][0],R.stops[fe+1][0]),ze=R.stops[fe][1],Ke=R.stops[fe+1][1],ct=Lo[A.type]||Gh;return typeof ze.evaluate=="function"?{evaluate(...Lt){let $t=ze.evaluate.apply(void 0,Lt),fr=Ke.evaluate.apply(void 0,Lt);if($t!==void 0&&fr!==void 0)return ct($t,fr,pe,R.colorSpace)}}:ct(ze,Ke,pe,R.colorSpace)}function js(R,A,F){switch(A.type){case"color":F=nr.parse(F);break;case"formatted":F=ri.fromString(F.toString());break;case"resolvedImage":F=tn.fromString(F.toString());break;case"padding":F=Qr.parse(F);break;default:gs(F)===A.type||A.type==="enum"&&A.values[F]||(F=void 0)}return sf(F,R.default,A.default)}Bl.register(yf,{error:[{kind:"error"},[It],(R,[A])=>{throw new ma(A.evaluate(R))}],typeof:[It,[Tr],(R,[A])=>Je(Sn(A.evaluate(R)))],"to-rgba":[Ge(_t,4),[er],(R,[A])=>{let[F,W,te,fe]=A.evaluate(R).rgb;return[255*F,255*W,255*te,fe]}],rgb:[er,[_t,_t,_t],wh],rgba:[er,[_t,_t,_t,_t],wh],has:{type:mt,overloads:[[[It],(R,[A])=>Qf(A.evaluate(R),R.properties())],[[It,lr],(R,[A,F])=>Qf(A.evaluate(R),F.evaluate(R))]]},get:{type:Tr,overloads:[[[It],(R,[A])=>_f(A.evaluate(R),R.properties())],[[It,lr],(R,[A,F])=>_f(A.evaluate(R),F.evaluate(R))]]},"feature-state":[Tr,[It],(R,[A])=>_f(A.evaluate(R),R.featureState||{})],properties:[lr,[],R=>R.properties()],"geometry-type":[It,[],R=>R.geometryType()],id:[Tr,[],R=>R.id()],zoom:[_t,[],R=>R.globals.zoom],"heatmap-density":[_t,[],R=>R.globals.heatmapDensity||0],"line-progress":[_t,[],R=>R.globals.lineProgress||0],accumulated:[Tr,[],R=>R.globals.accumulated===void 0?null:R.globals.accumulated],"+":[_t,Yc(_t),(R,A)=>{let F=0;for(let W of A)F+=W.evaluate(R);return F}],"*":[_t,Yc(_t),(R,A)=>{let F=1;for(let W of A)F*=W.evaluate(R);return F}],"-":{type:_t,overloads:[[[_t,_t],(R,[A,F])=>A.evaluate(R)-F.evaluate(R)],[[_t],(R,[A])=>-A.evaluate(R)]]},"/":[_t,[_t,_t],(R,[A,F])=>A.evaluate(R)/F.evaluate(R)],"%":[_t,[_t,_t],(R,[A,F])=>A.evaluate(R)%F.evaluate(R)],ln2:[_t,[],()=>Math.LN2],pi:[_t,[],()=>Math.PI],e:[_t,[],()=>Math.E],"^":[_t,[_t,_t],(R,[A,F])=>Math.pow(A.evaluate(R),F.evaluate(R))],sqrt:[_t,[_t],(R,[A])=>Math.sqrt(A.evaluate(R))],log10:[_t,[_t],(R,[A])=>Math.log(A.evaluate(R))/Math.LN10],ln:[_t,[_t],(R,[A])=>Math.log(A.evaluate(R))],log2:[_t,[_t],(R,[A])=>Math.log(A.evaluate(R))/Math.LN2],sin:[_t,[_t],(R,[A])=>Math.sin(A.evaluate(R))],cos:[_t,[_t],(R,[A])=>Math.cos(A.evaluate(R))],tan:[_t,[_t],(R,[A])=>Math.tan(A.evaluate(R))],asin:[_t,[_t],(R,[A])=>Math.asin(A.evaluate(R))],acos:[_t,[_t],(R,[A])=>Math.acos(A.evaluate(R))],atan:[_t,[_t],(R,[A])=>Math.atan(A.evaluate(R))],min:[_t,Yc(_t),(R,A)=>Math.min(...A.map(F=>F.evaluate(R)))],max:[_t,Yc(_t),(R,A)=>Math.max(...A.map(F=>F.evaluate(R)))],abs:[_t,[_t],(R,[A])=>Math.abs(A.evaluate(R))],round:[_t,[_t],(R,[A])=>{let F=A.evaluate(R);return F<0?-Math.round(-F):Math.round(F)}],floor:[_t,[_t],(R,[A])=>Math.floor(A.evaluate(R))],ceil:[_t,[_t],(R,[A])=>Math.ceil(A.evaluate(R))],"filter-==":[mt,[It,Tr],(R,[A,F])=>R.properties()[A.value]===F.value],"filter-id-==":[mt,[Tr],(R,[A])=>R.id()===A.value],"filter-type-==":[mt,[It],(R,[A])=>R.geometryType()===A.value],"filter-<":[mt,[It,Tr],(R,[A,F])=>{let W=R.properties()[A.value],te=F.value;return typeof W==typeof te&&W{let F=R.id(),W=A.value;return typeof F==typeof W&&F":[mt,[It,Tr],(R,[A,F])=>{let W=R.properties()[A.value],te=F.value;return typeof W==typeof te&&W>te}],"filter-id->":[mt,[Tr],(R,[A])=>{let F=R.id(),W=A.value;return typeof F==typeof W&&F>W}],"filter-<=":[mt,[It,Tr],(R,[A,F])=>{let W=R.properties()[A.value],te=F.value;return typeof W==typeof te&&W<=te}],"filter-id-<=":[mt,[Tr],(R,[A])=>{let F=R.id(),W=A.value;return typeof F==typeof W&&F<=W}],"filter->=":[mt,[It,Tr],(R,[A,F])=>{let W=R.properties()[A.value],te=F.value;return typeof W==typeof te&&W>=te}],"filter-id->=":[mt,[Tr],(R,[A])=>{let F=R.id(),W=A.value;return typeof F==typeof W&&F>=W}],"filter-has":[mt,[Tr],(R,[A])=>A.value in R.properties()],"filter-has-id":[mt,[],R=>R.id()!==null&&R.id()!==void 0],"filter-type-in":[mt,[Ge(It)],(R,[A])=>A.value.indexOf(R.geometryType())>=0],"filter-id-in":[mt,[Ge(Tr)],(R,[A])=>A.value.indexOf(R.id())>=0],"filter-in-small":[mt,[It,Ge(Tr)],(R,[A,F])=>F.value.indexOf(R.properties()[A.value])>=0],"filter-in-large":[mt,[It,Ge(Tr)],(R,[A,F])=>function(W,te,fe,pe){for(;fe<=pe;){let ze=fe+pe>>1;if(te[ze]===W)return!0;te[ze]>W?pe=ze-1:fe=ze+1}return!1}(R.properties()[A.value],F.value,0,F.value.length-1)],all:{type:mt,overloads:[[[mt,mt],(R,[A,F])=>A.evaluate(R)&&F.evaluate(R)],[Yc(mt),(R,A)=>{for(let F of A)if(!F.evaluate(R))return!1;return!0}]]},any:{type:mt,overloads:[[[mt,mt],(R,[A,F])=>A.evaluate(R)||F.evaluate(R)],[Yc(mt),(R,A)=>{for(let F of A)if(F.evaluate(R))return!0;return!1}]]},"!":[mt,[mt],(R,[A])=>!A.evaluate(R)],"is-supported-script":[mt,[It],(R,[A])=>{let F=R.globals&&R.globals.isSupportedScript;return!F||F(A.evaluate(R))}],upcase:[It,[It],(R,[A])=>A.evaluate(R).toUpperCase()],downcase:[It,[It],(R,[A])=>A.evaluate(R).toLowerCase()],concat:[It,Yc(Tr),(R,A)=>A.map(F=>Ba(F.evaluate(R))).join("")],"resolved-locale":[It,[Lr],(R,[A])=>A.evaluate(R).resolvedLocale()]});class Eu{constructor(A,F){var W;this.expression=A,this._warningHistory={},this._evaluator=new Ga,this._defaultValue=F?(W=F).type==="color"&&jf(W.default)?new nr(0,0,0,0):W.type==="color"?nr.parse(W.default)||null:W.type==="padding"?Qr.parse(W.default)||null:W.type==="variableAnchorOffsetCollection"?$i.parse(W.default)||null:W.default===void 0?null:W.default:null,this._enumValues=F&&F.type==="enum"?F.values:null}evaluateWithoutErrorHandling(A,F,W,te,fe,pe){return this._evaluator.globals=A,this._evaluator.feature=F,this._evaluator.featureState=W,this._evaluator.canonical=te,this._evaluator.availableImages=fe||null,this._evaluator.formattedSection=pe,this.expression.evaluate(this._evaluator)}evaluate(A,F,W,te,fe,pe){this._evaluator.globals=A,this._evaluator.feature=F||null,this._evaluator.featureState=W||null,this._evaluator.canonical=te,this._evaluator.availableImages=fe||null,this._evaluator.formattedSection=pe||null;try{let ze=this.expression.evaluate(this._evaluator);if(ze==null||typeof ze=="number"&&ze!=ze)return this._defaultValue;if(this._enumValues&&!(ze in this._enumValues))throw new ma(`Expected value to be one of ${Object.keys(this._enumValues).map(Ke=>JSON.stringify(Ke)).join(", ")}, but found ${JSON.stringify(ze)} instead.`);return ze}catch(ze){return this._warningHistory[ze.message]||(this._warningHistory[ze.message]=!0,typeof console!="undefined"&&console.warn(ze.message)),this._defaultValue}}}function Dc(R){return Array.isArray(R)&&R.length>0&&typeof R[0]=="string"&&R[0]in yf}function ks(R,A){let F=new vo(yf,eh,[],A?function(te){let fe={color:er,string:It,number:_t,enum:It,boolean:mt,formatted:ti,padding:Br,resolvedImage:Vr,variableAnchorOffsetCollection:dt};return te.type==="array"?Ge(fe[te.value]||Tr,te.length):fe[te.type]}(A):void 0),W=F.parse(R,void 0,void 0,void 0,A&&A.type==="string"?{typeAnnotation:"coerce"}:void 0);return W?cc(new Eu(W,A)):of(F.errors)}class bc{constructor(A,F){this.kind=A,this._styleExpression=F,this.isStateDependent=A!=="constant"&&!ju(F.expression)}evaluateWithoutErrorHandling(A,F,W,te,fe,pe){return this._styleExpression.evaluateWithoutErrorHandling(A,F,W,te,fe,pe)}evaluate(A,F,W,te,fe,pe){return this._styleExpression.evaluate(A,F,W,te,fe,pe)}}class hu{constructor(A,F,W,te){this.kind=A,this.zoomStops=W,this._styleExpression=F,this.isStateDependent=A!=="camera"&&!ju(F.expression),this.interpolationType=te}evaluateWithoutErrorHandling(A,F,W,te,fe,pe){return this._styleExpression.evaluateWithoutErrorHandling(A,F,W,te,fe,pe)}evaluate(A,F,W,te,fe,pe){return this._styleExpression.evaluate(A,F,W,te,fe,pe)}interpolationFactor(A,F,W){return this.interpolationType?ko.interpolationFactor(this.interpolationType,A,F,W):0}}function _u(R,A){let F=ks(R,A);if(F.result==="error")return F;let W=F.value.expression,te=th(W);if(!te&&!Nl(A))return of([new St("","data expressions not supported")]);let fe=Hf(W,["zoom"]);if(!fe&&!Kc(A))return of([new St("","zoom expressions not supported")]);let pe=nh(W);return pe||fe?pe instanceof St?of([pe]):pe instanceof ko&&!Rc(A)?of([new St("",'"interpolate" expressions cannot be used with this property')]):cc(pe?new hu(te?"camera":"composite",F.value,pe.labels,pe instanceof ko?pe.interpolation:void 0):new bc(te?"constant":"source",F.value)):of([new St("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class nl{constructor(A,F){this._parameters=A,this._specification=F,$e(this,rh(this._parameters,this._specification))}static deserialize(A){return new nl(A._parameters,A._specification)}static serialize(A){return{_parameters:A._parameters,_specification:A._specification}}}function nh(R){let A=null;if(R instanceof jn)A=nh(R.result);else if(R instanceof Fs){for(let F of R.args)if(A=nh(F),A)break}else(R instanceof _n||R instanceof ko)&&R.input instanceof Bl&&R.input.name==="zoom"&&(A=R);return A instanceof St||R.eachChild(F=>{let W=nh(F);W instanceof St?A=W:!A&&W?A=new St("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):A&&W&&A!==W&&(A=new St("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),A}function Ah(R){if(R===!0||R===!1)return!0;if(!Array.isArray(R)||R.length===0)return!1;switch(R[0]){case"has":return R.length>=2&&R[1]!=="$id"&&R[1]!=="$type";case"in":return R.length>=3&&(typeof R[1]!="string"||Array.isArray(R[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return R.length!==3||Array.isArray(R[1])||Array.isArray(R[2]);case"any":case"all":for(let A of R.slice(1))if(!Ah(A)&&typeof A!="boolean")return!1;return!0;default:return!0}}let zu={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function Fc(R){if(R==null)return{filter:()=>!0,needGeometry:!1};Ah(R)||(R=xf(R));let A=ks(R,zu);if(A.result==="error")throw new Error(A.value.map(F=>`${F.key}: ${F.message}`).join(", "));return{filter:(F,W,te)=>A.value.evaluate(F,W,{},te),needGeometry:bd(R)}}function wc(R,A){return RA?1:0}function bd(R){if(!Array.isArray(R))return!1;if(R[0]==="within"||R[0]==="distance")return!0;for(let A=1;A"||A==="<="||A===">="?Pf(R[1],R[2],A):A==="any"?(F=R.slice(1),["any"].concat(F.map(xf))):A==="all"?["all"].concat(R.slice(1).map(xf)):A==="none"?["all"].concat(R.slice(1).map(xf).map(jl)):A==="in"?Ou(R[1],R.slice(2)):A==="!in"?jl(Ou(R[1],R.slice(2))):A==="has"?bf(R[1]):A!=="!has"||jl(bf(R[1]));var F}function Pf(R,A,F){switch(R){case"$type":return[`filter-type-${F}`,A];case"$id":return[`filter-id-${F}`,A];default:return[`filter-${F}`,R,A]}}function Ou(R,A){if(A.length===0)return!1;switch(R){case"$type":return["filter-type-in",["literal",A]];case"$id":return["filter-id-in",["literal",A]];default:return A.length>200&&!A.some(F=>typeof F!=typeof A[0])?["filter-in-large",R,["literal",A.sort(wc)]]:["filter-in-small",R,["literal",A]]}}function bf(R){switch(R){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",R]}}function jl(R){return["!",R]}function lf(R){let A=typeof R;if(A==="number"||A==="boolean"||A==="string"||R==null)return JSON.stringify(R);if(Array.isArray(R)){let te="[";for(let fe of R)te+=`${lf(fe)},`;return`${te}]`}let F=Object.keys(R).sort(),W="{";for(let te=0;teW.maximum?[new cr(A,F,`${F} is greater than the maximum value ${W.maximum}`)]:[]}function wf(R){let A=R.valueSpec,F=Cs(R.value.type),W,te,fe,pe={},ze=F!=="categorical"&&R.value.property===void 0,Ke=!ze,ct=gs(R.value.stops)==="array"&&gs(R.value.stops[0])==="array"&&gs(R.value.stops[0][0])==="object",Lt=ku({key:R.key,value:R.value,valueSpec:R.styleSpec.function,validateSpec:R.validateSpec,style:R.style,styleSpec:R.styleSpec,objectElementValidators:{stops:function(mr){if(F==="identity")return[new cr(mr.key,mr.value,'identity function may not have a "stops" property')];let Pr=[],zr=mr.value;return Pr=Pr.concat(Wf({key:mr.key,value:zr,valueSpec:mr.valueSpec,validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec,arrayElementValidator:$t})),gs(zr)==="array"&&zr.length===0&&Pr.push(new cr(mr.key,zr,"array must have at least one stop")),Pr},default:function(mr){return mr.validateSpec({key:mr.key,value:mr.value,valueSpec:A,validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec})}}});return F==="identity"&&ze&&Lt.push(new cr(R.key,R.value,'missing required property "property"')),F==="identity"||R.value.stops||Lt.push(new cr(R.key,R.value,'missing required property "stops"')),F==="exponential"&&R.valueSpec.expression&&!Rc(R.valueSpec)&&Lt.push(new cr(R.key,R.value,"exponential functions not supported")),R.styleSpec.$version>=8&&(Ke&&!Nl(R.valueSpec)?Lt.push(new cr(R.key,R.value,"property functions not supported")):ze&&!Kc(R.valueSpec)&&Lt.push(new cr(R.key,R.value,"zoom functions not supported"))),F!=="categorical"&&!ct||R.value.property!==void 0||Lt.push(new cr(R.key,R.value,'"property" property is required')),Lt;function $t(mr){let Pr=[],zr=mr.value,ui=mr.key;if(gs(zr)!=="array")return[new cr(ui,zr,`array expected, ${gs(zr)} found`)];if(zr.length!==2)return[new cr(ui,zr,`array length 2 expected, length ${zr.length} found`)];if(ct){if(gs(zr[0])!=="object")return[new cr(ui,zr,`object expected, ${gs(zr[0])} found`)];if(zr[0].zoom===void 0)return[new cr(ui,zr,"object stop key must have zoom")];if(zr[0].value===void 0)return[new cr(ui,zr,"object stop key must have value")];if(fe&&fe>Cs(zr[0].zoom))return[new cr(ui,zr[0].zoom,"stop zoom values must appear in ascending order")];Cs(zr[0].zoom)!==fe&&(fe=Cs(zr[0].zoom),te=void 0,pe={}),Pr=Pr.concat(ku({key:`${ui}[0]`,value:zr[0],valueSpec:{zoom:{}},validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec,objectElementValidators:{zoom:Us,value:fr}}))}else Pr=Pr.concat(fr({key:`${ui}[0]`,value:zr[0],valueSpec:{},validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec},zr));return Dc(du(zr[1]))?Pr.concat([new cr(`${ui}[1]`,zr[1],"expressions are not allowed in function stops.")]):Pr.concat(mr.validateSpec({key:`${ui}[1]`,value:zr[1],valueSpec:A,validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec}))}function fr(mr,Pr){let zr=gs(mr.value),ui=Cs(mr.value),yi=mr.value!==null?mr.value:Pr;if(W){if(zr!==W)return[new cr(mr.key,yi,`${zr} stop domain type must match previous stop domain type ${W}`)]}else W=zr;if(zr!=="number"&&zr!=="string"&&zr!=="boolean")return[new cr(mr.key,yi,"stop domain value must be a number, string, or boolean")];if(zr!=="number"&&F!=="categorical"){let vn=`number expected, ${zr} found`;return Nl(A)&&F===void 0&&(vn+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new cr(mr.key,yi,vn)]}return F!=="categorical"||zr!=="number"||isFinite(ui)&&Math.floor(ui)===ui?F!=="categorical"&&zr==="number"&&te!==void 0&&uinew cr(`${R.key}${W.key}`,R.value,W.message));let F=A.value.expression||A.value._styleExpression.expression;if(R.expressionContext==="property"&&R.propertyKey==="text-font"&&!F.outputDefined())return[new cr(R.key,R.value,`Invalid data expression for "${R.propertyKey}". Output values must be contained as literals within the expression.`)];if(R.expressionContext==="property"&&R.propertyType==="layout"&&!ju(F))return[new cr(R.key,R.value,'"feature-state" data expressions are not supported with layout properties.')];if(R.expressionContext==="filter"&&!ju(F))return[new cr(R.key,R.value,'"feature-state" data expressions are not supported with filters.')];if(R.expressionContext&&R.expressionContext.indexOf("cluster")===0){if(!Hf(F,["zoom","feature-state"]))return[new cr(R.key,R.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(R.expressionContext==="cluster-initial"&&!th(F))return[new cr(R.key,R.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function Wu(R){let A=R.key,F=R.value,W=R.valueSpec,te=[];return Array.isArray(W.values)?W.values.indexOf(Cs(F))===-1&&te.push(new cr(A,F,`expected one of [${W.values.join(", ")}], ${JSON.stringify(F)} found`)):Object.keys(W.values).indexOf(Cs(F))===-1&&te.push(new cr(A,F,`expected one of [${Object.keys(W.values).join(", ")}], ${JSON.stringify(F)} found`)),te}function Rf(R){return Ah(du(R.value))?zc($e({},R,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Xu(R)}function Xu(R){let A=R.value,F=R.key;if(gs(A)!=="array")return[new cr(F,A,`array expected, ${gs(A)} found`)];let W=R.styleSpec,te,fe=[];if(A.length<1)return[new cr(F,A,"filter array must have at least 1 element")];switch(fe=fe.concat(Wu({key:`${F}[0]`,value:A[0],valueSpec:W.filter_operator,style:R.style,styleSpec:R.styleSpec})),Cs(A[0])){case"<":case"<=":case">":case">=":A.length>=2&&Cs(A[1])==="$type"&&fe.push(new cr(F,A,`"$type" cannot be use with operator "${A[0]}"`));case"==":case"!=":A.length!==3&&fe.push(new cr(F,A,`filter array for operator "${A[0]}" must have 3 elements`));case"in":case"!in":A.length>=2&&(te=gs(A[1]),te!=="string"&&fe.push(new cr(`${F}[1]`,A[1],`string expected, ${te} found`)));for(let pe=2;pe{ct in F&&A.push(new cr(W,F[ct],`"${ct}" is prohibited for ref layers`))}),te.layers.forEach(ct=>{Cs(ct.id)===ze&&(Ke=ct)}),Ke?Ke.ref?A.push(new cr(W,F.ref,"ref cannot reference another ref layer")):pe=Cs(Ke.type):A.push(new cr(W,F.ref,`ref layer "${ze}" not found`))}else if(pe!=="background")if(F.source){let Ke=te.sources&&te.sources[F.source],ct=Ke&&Cs(Ke.type);Ke?ct==="vector"&&pe==="raster"?A.push(new cr(W,F.source,`layer "${F.id}" requires a raster source`)):ct!=="raster-dem"&&pe==="hillshade"?A.push(new cr(W,F.source,`layer "${F.id}" requires a raster-dem source`)):ct==="raster"&&pe!=="raster"?A.push(new cr(W,F.source,`layer "${F.id}" requires a vector source`)):ct!=="vector"||F["source-layer"]?ct==="raster-dem"&&pe!=="hillshade"?A.push(new cr(W,F.source,"raster-dem source can only be used with layer type 'hillshade'.")):pe!=="line"||!F.paint||!F.paint["line-gradient"]||ct==="geojson"&&Ke.lineMetrics||A.push(new cr(W,F,`layer "${F.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):A.push(new cr(W,F,`layer "${F.id}" must specify a "source-layer"`)):A.push(new cr(W,F.source,`source "${F.source}" not found`))}else A.push(new cr(W,F,'missing required property "source"'));return A=A.concat(ku({key:W,value:F,valueSpec:fe.layer,style:R.style,styleSpec:R.styleSpec,validateSpec:R.validateSpec,objectElementValidators:{"*":()=>[],type:()=>R.validateSpec({key:`${W}.type`,value:F.type,valueSpec:fe.layer.type,style:R.style,styleSpec:R.styleSpec,validateSpec:R.validateSpec,object:F,objectKey:"type"}),filter:Rf,layout:Ke=>ku({layer:F,key:Ke.key,value:Ke.value,style:Ke.style,styleSpec:Ke.styleSpec,validateSpec:Ke.validateSpec,objectElementValidators:{"*":ct=>Wl($e({layerType:pe},ct))}}),paint:Ke=>ku({layer:F,key:Ke.key,value:Ke.value,style:Ke.style,styleSpec:Ke.styleSpec,validateSpec:Ke.validateSpec,objectElementValidators:{"*":ct=>Xf($e({layerType:pe},ct))}})}})),A}function Zu(R){let A=R.value,F=R.key,W=gs(A);return W!=="string"?[new cr(F,A,`string expected, ${W} found`)]:[]}let Oc={promoteId:function({key:R,value:A}){if(gs(A)==="string")return Zu({key:R,value:A});{let F=[];for(let W in A)F.push(...Zu({key:`${R}.${W}`,value:A[W]}));return F}}};function Tc(R){let A=R.value,F=R.key,W=R.styleSpec,te=R.style,fe=R.validateSpec;if(!A.type)return[new cr(F,A,'"type" is required')];let pe=Cs(A.type),ze;switch(pe){case"vector":case"raster":return ze=ku({key:F,value:A,valueSpec:W[`source_${pe.replace("-","_")}`],style:R.style,styleSpec:W,objectElementValidators:Oc,validateSpec:fe}),ze;case"raster-dem":return ze=function(Ke){var ct;let Lt=(ct=Ke.sourceName)!==null&&ct!==void 0?ct:"",$t=Ke.value,fr=Ke.styleSpec,mr=fr.source_raster_dem,Pr=Ke.style,zr=[],ui=gs($t);if($t===void 0)return zr;if(ui!=="object")return zr.push(new cr("source_raster_dem",$t,`object expected, ${ui} found`)),zr;let yi=Cs($t.encoding)==="custom",vn=["redFactor","greenFactor","blueFactor","baseShift"],zi=Ke.value.encoding?`"${Ke.value.encoding}"`:"Default";for(let un in $t)!yi&&vn.includes(un)?zr.push(new cr(un,$t[un],`In "${Lt}": "${un}" is only valid when "encoding" is set to "custom". ${zi} encoding found`)):mr[un]?zr=zr.concat(Ke.validateSpec({key:un,value:$t[un],valueSpec:mr[un],validateSpec:Ke.validateSpec,style:Pr,styleSpec:fr})):zr.push(new cr(un,$t[un],`unknown property "${un}"`));return zr}({sourceName:F,value:A,style:R.style,styleSpec:W,validateSpec:fe}),ze;case"geojson":if(ze=ku({key:F,value:A,valueSpec:W.source_geojson,style:te,styleSpec:W,validateSpec:fe,objectElementValidators:Oc}),A.cluster)for(let Ke in A.clusterProperties){let[ct,Lt]=A.clusterProperties[Ke],$t=typeof ct=="string"?[ct,["accumulated"],["get",Ke]]:ct;ze.push(...zc({key:`${F}.${Ke}.map`,value:Lt,validateSpec:fe,expressionContext:"cluster-map"})),ze.push(...zc({key:`${F}.${Ke}.reduce`,value:$t,validateSpec:fe,expressionContext:"cluster-reduce"}))}return ze;case"video":return ku({key:F,value:A,valueSpec:W.source_video,style:te,validateSpec:fe,styleSpec:W});case"image":return ku({key:F,value:A,valueSpec:W.source_image,style:te,validateSpec:fe,styleSpec:W});case"canvas":return[new cr(F,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return Wu({key:`${F}.type`,value:A.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:te,validateSpec:fe,styleSpec:W})}}function wl(R){let A=R.value,F=R.styleSpec,W=F.light,te=R.style,fe=[],pe=gs(A);if(A===void 0)return fe;if(pe!=="object")return fe=fe.concat([new cr("light",A,`object expected, ${pe} found`)]),fe;for(let ze in A){let Ke=ze.match(/^(.*)-transition$/);fe=fe.concat(Ke&&W[Ke[1]]&&W[Ke[1]].transition?R.validateSpec({key:ze,value:A[ze],valueSpec:F.transition,validateSpec:R.validateSpec,style:te,styleSpec:F}):W[ze]?R.validateSpec({key:ze,value:A[ze],valueSpec:W[ze],validateSpec:R.validateSpec,style:te,styleSpec:F}):[new cr(ze,A[ze],`unknown property "${ze}"`)])}return fe}function vu(R){let A=R.value,F=R.styleSpec,W=F.sky,te=R.style,fe=gs(A);if(A===void 0)return[];if(fe!=="object")return[new cr("sky",A,`object expected, ${fe} found`)];let pe=[];for(let ze in A)pe=pe.concat(W[ze]?R.validateSpec({key:ze,value:A[ze],valueSpec:W[ze],style:te,styleSpec:F}):[new cr(ze,A[ze],`unknown property "${ze}"`)]);return pe}function qc(R){let A=R.value,F=R.styleSpec,W=F.terrain,te=R.style,fe=[],pe=gs(A);if(A===void 0)return fe;if(pe!=="object")return fe=fe.concat([new cr("terrain",A,`object expected, ${pe} found`)]),fe;for(let ze in A)fe=fe.concat(W[ze]?R.validateSpec({key:ze,value:A[ze],valueSpec:W[ze],validateSpec:R.validateSpec,style:te,styleSpec:F}):[new cr(ze,A[ze],`unknown property "${ze}"`)]);return fe}function cf(R){let A=[],F=R.value,W=R.key;if(Array.isArray(F)){let te=[],fe=[];for(let pe in F)F[pe].id&&te.includes(F[pe].id)&&A.push(new cr(W,F,`all the sprites' ids must be unique, but ${F[pe].id} is duplicated`)),te.push(F[pe].id),F[pe].url&&fe.includes(F[pe].url)&&A.push(new cr(W,F,`all the sprites' URLs must be unique, but ${F[pe].url} is duplicated`)),fe.push(F[pe].url),A=A.concat(ku({key:`${W}[${pe}]`,value:F[pe],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:R.validateSpec}));return A}return Zu({key:W,value:F})}let fc={"*":()=>[],array:Wf,boolean:function(R){let A=R.value,F=R.key,W=gs(A);return W!=="boolean"?[new cr(F,A,`boolean expected, ${W} found`)]:[]},number:Us,color:function(R){let A=R.key,F=R.value,W=gs(F);return W!=="string"?[new cr(A,F,`color expected, ${W} found`)]:nr.parse(String(F))?[]:[new cr(A,F,`color expected, "${F}" found`)]},constants:If,enum:Wu,filter:Rf,function:wf,layer:ah,object:ku,source:Tc,light:wl,sky:vu,terrain:qc,projection:function(R){let A=R.value,F=R.styleSpec,W=F.projection,te=R.style,fe=gs(A);if(A===void 0)return[];if(fe!=="object")return[new cr("projection",A,`object expected, ${fe} found`)];let pe=[];for(let ze in A)pe=pe.concat(W[ze]?R.validateSpec({key:ze,value:A[ze],valueSpec:W[ze],style:te,styleSpec:F}):[new cr(ze,A[ze],`unknown property "${ze}"`)]);return pe},string:Zu,formatted:function(R){return Zu(R).length===0?[]:zc(R)},resolvedImage:function(R){return Zu(R).length===0?[]:zc(R)},padding:function(R){let A=R.key,F=R.value;if(gs(F)==="array"){if(F.length<1||F.length>4)return[new cr(A,F,`padding requires 1 to 4 values; ${F.length} values found`)];let W={type:"number"},te=[];for(let fe=0;fe[]}})),R.constants&&(F=F.concat(If({key:"constants",value:R.constants,style:R,styleSpec:A,validateSpec:Bc}))),Ar(F)}function Cr(R){return function(A){return R(q1(mg({},A),{validateSpec:Bc}))}}function Ar(R){return[].concat(R).sort((A,F)=>A.line-F.line)}function Kr(R){return function(...A){return Ar(R.apply(this,A))}}Wt.source=Kr(Cr(Tc)),Wt.sprite=Kr(Cr(cf)),Wt.glyphs=Kr(Cr(At)),Wt.light=Kr(Cr(wl)),Wt.sky=Kr(Cr(vu)),Wt.terrain=Kr(Cr(qc)),Wt.layer=Kr(Cr(ah)),Wt.filter=Kr(Cr(Rf)),Wt.paintProperty=Kr(Cr(Xf)),Wt.layoutProperty=Kr(Cr(Wl));let ki=Wt,Xi=ki.light,dn=ki.sky,wn=ki.paintProperty,Nn=ki.layoutProperty;function Yi(R,A){let F=!1;if(A&&A.length)for(let W of A)R.fire(new ge(new Error(W.message))),F=!0;return F}class Qi{constructor(A,F,W){let te=this.cells=[];if(A instanceof ArrayBuffer){this.arrayBuffer=A;let pe=new Int32Array(this.arrayBuffer);A=pe[0],this.d=(F=pe[1])+2*(W=pe[2]);for(let Ke=0;Ke=$t[Pr+0]&&te>=$t[Pr+1])?(ze[mr]=!0,pe.push(Lt[mr])):ze[mr]=!1}}}}_forEachCell(A,F,W,te,fe,pe,ze,Ke){let ct=this._convertToCellCoord(A),Lt=this._convertToCellCoord(F),$t=this._convertToCellCoord(W),fr=this._convertToCellCoord(te);for(let mr=ct;mr<=$t;mr++)for(let Pr=Lt;Pr<=fr;Pr++){let zr=this.d*Pr+mr;if((!Ke||Ke(this._convertFromCellCoord(mr),this._convertFromCellCoord(Pr),this._convertFromCellCoord(mr+1),this._convertFromCellCoord(Pr+1)))&&fe.call(this,A,F,W,te,zr,pe,ze,Ke))return}}_convertFromCellCoord(A){return(A-this.padding)/this.scale}_convertToCellCoord(A){return Math.max(0,Math.min(this.d-1,Math.floor(A*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;let A=this.cells,F=3+this.cells.length+1+1,W=0;for(let pe=0;pe=0)continue;let pe=R[fe];te[fe]=on[F].shallow.indexOf(fe)>=0?pe:La(pe,A)}R instanceof Error&&(te.message=R.message)}if(te.$name)throw new Error("$name property is reserved for worker serialization logic.");return F!=="Object"&&(te.$name=F),te}function Na(R){if(Ra(R))return R;if(Array.isArray(R))return R.map(Na);if(typeof R!="object")throw new Error("can't deserialize object of type "+typeof R);let A=Ca(R)||"Object";if(!on[A])throw new Error(`can't deserialize unregistered class ${A}`);let{klass:F}=on[A];if(!F)throw new Error(`can't deserialize unregistered class ${A}`);if(F.deserialize)return F.deserialize(R);let W=Object.create(F.prototype);for(let te of Object.keys(R)){if(te==="$name")continue;let fe=R[te];W[te]=on[A].shallow.indexOf(te)>=0?fe:Na(fe)}return W}class Yn{constructor(){this.first=!0}update(A,F){let W=Math.floor(A);return this.first?(this.first=!1,this.lastIntegerZoom=W,this.lastIntegerZoomTime=0,this.lastZoom=A,this.lastFloorZoom=W,!0):(this.lastFloorZoom>W?(this.lastIntegerZoom=W+1,this.lastIntegerZoomTime=F):this.lastFloorZoomR>=128&&R<=255,"Hangul Jamo":R=>R>=4352&&R<=4607,Khmer:R=>R>=6016&&R<=6143,"General Punctuation":R=>R>=8192&&R<=8303,"Letterlike Symbols":R=>R>=8448&&R<=8527,"Number Forms":R=>R>=8528&&R<=8591,"Miscellaneous Technical":R=>R>=8960&&R<=9215,"Control Pictures":R=>R>=9216&&R<=9279,"Optical Character Recognition":R=>R>=9280&&R<=9311,"Enclosed Alphanumerics":R=>R>=9312&&R<=9471,"Geometric Shapes":R=>R>=9632&&R<=9727,"Miscellaneous Symbols":R=>R>=9728&&R<=9983,"Miscellaneous Symbols and Arrows":R=>R>=11008&&R<=11263,"Ideographic Description Characters":R=>R>=12272&&R<=12287,"CJK Symbols and Punctuation":R=>R>=12288&&R<=12351,Katakana:R=>R>=12448&&R<=12543,Kanbun:R=>R>=12688&&R<=12703,"CJK Strokes":R=>R>=12736&&R<=12783,"Enclosed CJK Letters and Months":R=>R>=12800&&R<=13055,"CJK Compatibility":R=>R>=13056&&R<=13311,"Yijing Hexagram Symbols":R=>R>=19904&&R<=19967,"Private Use Area":R=>R>=57344&&R<=63743,"Vertical Forms":R=>R>=65040&&R<=65055,"CJK Compatibility Forms":R=>R>=65072&&R<=65103,"Small Form Variants":R=>R>=65104&&R<=65135,"Halfwidth and Fullwidth Forms":R=>R>=65280&&R<=65519};function Ka(R){for(let A of R)if(Ho(A.charCodeAt(0)))return!0;return!1}function bo(R){for(let A of R)if(!as(A.charCodeAt(0)))return!1;return!0}function Xo(R){let A=R.map(F=>{try{return new RegExp(`\\p{sc=${F}}`,"u").source}catch(W){return null}}).filter(F=>F);return new RegExp(A.join("|"),"u")}let Ss=Xo(["Arab","Dupl","Mong","Ougr","Syrc"]);function as(R){return!Ss.test(String.fromCodePoint(R))}let ws=Xo(["Bopo","Hani","Hira","Kana","Kits","Nshu","Tang","Yiii"]);function Ho(R){return!(R!==746&&R!==747&&(R<4352||!(Dn["CJK Compatibility Forms"](R)&&!(R>=65097&&R<=65103)||Dn["CJK Compatibility"](R)||Dn["CJK Strokes"](R)||!(!Dn["CJK Symbols and Punctuation"](R)||R>=12296&&R<=12305||R>=12308&&R<=12319||R===12336)||Dn["Enclosed CJK Letters and Months"](R)||Dn["Ideographic Description Characters"](R)||Dn.Kanbun(R)||Dn.Katakana(R)&&R!==12540||!(!Dn["Halfwidth and Fullwidth Forms"](R)||R===65288||R===65289||R===65293||R>=65306&&R<=65310||R===65339||R===65341||R===65343||R>=65371&&R<=65503||R===65507||R>=65512&&R<=65519)||!(!Dn["Small Form Variants"](R)||R>=65112&&R<=65118||R>=65123&&R<=65126)||Dn["Vertical Forms"](R)||Dn["Yijing Hexagram Symbols"](R)||new RegExp("\\p{sc=Cans}","u").test(String.fromCodePoint(R))||new RegExp("\\p{sc=Hang}","u").test(String.fromCodePoint(R))||ws.test(String.fromCodePoint(R)))))}function ml(R){return!(Ho(R)||function(A){return!!(Dn["Latin-1 Supplement"](A)&&(A===167||A===169||A===174||A===177||A===188||A===189||A===190||A===215||A===247)||Dn["General Punctuation"](A)&&(A===8214||A===8224||A===8225||A===8240||A===8241||A===8251||A===8252||A===8258||A===8263||A===8264||A===8265||A===8273)||Dn["Letterlike Symbols"](A)||Dn["Number Forms"](A)||Dn["Miscellaneous Technical"](A)&&(A>=8960&&A<=8967||A>=8972&&A<=8991||A>=8996&&A<=9e3||A===9003||A>=9085&&A<=9114||A>=9150&&A<=9165||A===9167||A>=9169&&A<=9179||A>=9186&&A<=9215)||Dn["Control Pictures"](A)&&A!==9251||Dn["Optical Character Recognition"](A)||Dn["Enclosed Alphanumerics"](A)||Dn["Geometric Shapes"](A)||Dn["Miscellaneous Symbols"](A)&&!(A>=9754&&A<=9759)||Dn["Miscellaneous Symbols and Arrows"](A)&&(A>=11026&&A<=11055||A>=11088&&A<=11097||A>=11192&&A<=11243)||Dn["CJK Symbols and Punctuation"](A)||Dn.Katakana(A)||Dn["Private Use Area"](A)||Dn["CJK Compatibility Forms"](A)||Dn["Small Form Variants"](A)||Dn["Halfwidth and Fullwidth Forms"](A)||A===8734||A===8756||A===8757||A>=9984&&A<=10087||A>=10102&&A<=10131||A===65532||A===65533)}(R))}let Ws=Xo(["Adlm","Arab","Armi","Avst","Chrs","Cprt","Egyp","Elym","Gara","Hatr","Hebr","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogo","Syrc","Thaa","Todr","Yezi"]);function Ls(R){return Ws.test(String.fromCodePoint(R))}function va(R,A){return!(!A&&Ls(R)||R>=2304&&R<=3583||R>=3840&&R<=4255||Dn.Khmer(R))}function no(R){for(let A of R)if(Ls(A.charCodeAt(0)))return!0;return!1}let ys=new class{constructor(){this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus="unavailable",this.pluginURL=null}setState(R){this.pluginStatus=R.pluginStatus,this.pluginURL=R.pluginURL}getState(){return{pluginStatus:this.pluginStatus,pluginURL:this.pluginURL}}setMethods(R){this.applyArabicShaping=R.applyArabicShaping,this.processBidirectionalText=R.processBidirectionalText,this.processStyledBidirectionalText=R.processStyledBidirectionalText}isParsed(){return this.applyArabicShaping!=null&&this.processBidirectionalText!=null&&this.processStyledBidirectionalText!=null}getPluginURL(){return this.pluginURL}getRTLTextPluginStatus(){return this.pluginStatus}};class rs{constructor(A,F){this.zoom=A,F?(this.now=F.now,this.fadeDuration=F.fadeDuration,this.zoomHistory=F.zoomHistory,this.transition=F.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Yn,this.transition={})}isSupportedScript(A){return function(F,W){for(let te of F)if(!va(te.charCodeAt(0),W))return!1;return!0}(A,ys.getRTLTextPluginStatus()==="loaded")}crossFadingFactor(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){let A=this.zoom,F=A-Math.floor(A),W=this.crossFadingFactor();return A>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:F+(1-F)*W}:{fromScale:.5,toScale:1,t:1-(1-W)*F}}}class $l{constructor(A,F){this.property=A,this.value=F,this.expression=function(W,te){if(jf(W))return new nl(W,te);if(Dc(W)){let fe=_u(W,te);if(fe.result==="error")throw new Error(fe.value.map(pe=>`${pe.key}: ${pe.message}`).join(", "));return fe.value}{let fe=W;return te.type==="color"&&typeof W=="string"?fe=nr.parse(W):te.type!=="padding"||typeof W!="number"&&!Array.isArray(W)?te.type==="variableAnchorOffsetCollection"&&Array.isArray(W)&&(fe=$i.parse(W)):fe=Qr.parse(W),{kind:"constant",evaluate:()=>fe}}}(F===void 0?A.specification.default:F,A.specification)}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite"}possiblyEvaluate(A,F,W){return this.property.possiblyEvaluate(this,A,F,W)}}class Cu{constructor(A){this.property=A,this.value=new $l(A,void 0)}transitioned(A,F){return new Nc(this.property,this.value,F,L({},A.transition,this.transition),A.now)}untransitioned(){return new Nc(this.property,this.value,null,{},0)}}class Yu{constructor(A){this._properties=A,this._values=Object.create(A.defaultTransitionablePropertyValues)}getValue(A){return g(this._values[A].value.value)}setValue(A,F){Object.prototype.hasOwnProperty.call(this._values,A)||(this._values[A]=new Cu(this._values[A].property)),this._values[A].value=new $l(this._values[A].property,F===null?void 0:g(F))}getTransition(A){return g(this._values[A].transition)}setTransition(A,F){Object.prototype.hasOwnProperty.call(this._values,A)||(this._values[A]=new Cu(this._values[A].property)),this._values[A].transition=g(F)||void 0}serialize(){let A={};for(let F of Object.keys(this._values)){let W=this.getValue(F);W!==void 0&&(A[F]=W);let te=this.getTransition(F);te!==void 0&&(A[`${F}-transition`]=te)}return A}transitioned(A,F){let W=new pu(this._properties);for(let te of Object.keys(this._values))W._values[te]=this._values[te].transitioned(A,F._values[te]);return W}untransitioned(){let A=new pu(this._properties);for(let F of Object.keys(this._values))A._values[F]=this._values[F].untransitioned();return A}}class Nc{constructor(A,F,W,te,fe){this.property=A,this.value=F,this.begin=fe+te.delay||0,this.end=this.begin+te.duration||0,A.specification.transition&&(te.delay||te.duration)&&(this.prior=W)}possiblyEvaluate(A,F,W){let te=A.now||0,fe=this.value.possiblyEvaluate(A,F,W),pe=this.prior;if(pe){if(te>this.end)return this.prior=null,fe;if(this.value.isDataDriven())return this.prior=null,fe;if(te=1)return 1;let ct=Ke*Ke,Lt=ct*Ke;return 4*(Ke<.5?Lt:3*(Ke-ct)+Lt-.75)}(ze))}}return fe}}class pu{constructor(A){this._properties=A,this._values=Object.create(A.defaultTransitioningPropertyValues)}possiblyEvaluate(A,F,W){let te=new Ac(this._properties);for(let fe of Object.keys(this._values))te._values[fe]=this._values[fe].possiblyEvaluate(A,F,W);return te}hasTransition(){for(let A of Object.keys(this._values))if(this._values[A].prior)return!0;return!1}}class Uc{constructor(A){this._properties=A,this._values=Object.create(A.defaultPropertyValues)}hasValue(A){return this._values[A].value!==void 0}getValue(A){return g(this._values[A].value)}setValue(A,F){this._values[A]=new $l(this._values[A].property,F===null?void 0:g(F))}serialize(){let A={};for(let F of Object.keys(this._values)){let W=this.getValue(F);W!==void 0&&(A[F]=W)}return A}possiblyEvaluate(A,F,W){let te=new Ac(this._properties);for(let fe of Object.keys(this._values))te._values[fe]=this._values[fe].possiblyEvaluate(A,F,W);return te}}class xu{constructor(A,F,W){this.property=A,this.value=F,this.parameters=W}isConstant(){return this.value.kind==="constant"}constantOr(A){return this.value.kind==="constant"?this.value.value:A}evaluate(A,F,W,te){return this.property.evaluate(this.value,this.parameters,A,F,W,te)}}class Ac{constructor(A){this._properties=A,this._values=Object.create(A.defaultPossiblyEvaluatedValues)}get(A){return this._values[A]}}class Ua{constructor(A){this.specification=A}possiblyEvaluate(A,F){if(A.isDataDriven())throw new Error("Value should not be data driven");return A.expression.evaluate(F)}interpolate(A,F,W){let te=Lo[this.specification.type];return te?te(A,F,W):A}}class oo{constructor(A,F){this.specification=A,this.overrides=F}possiblyEvaluate(A,F,W,te){return new xu(this,A.expression.kind==="constant"||A.expression.kind==="camera"?{kind:"constant",value:A.expression.evaluate(F,null,{},W,te)}:A.expression,F)}interpolate(A,F,W){if(A.value.kind!=="constant"||F.value.kind!=="constant")return A;if(A.value.value===void 0||F.value.value===void 0)return new xu(this,{kind:"constant",value:void 0},A.parameters);let te=Lo[this.specification.type];if(te){let fe=te(A.value.value,F.value.value,W);return new xu(this,{kind:"constant",value:fe},A.parameters)}return A}evaluate(A,F,W,te,fe,pe){return A.kind==="constant"?A.value:A.evaluate(F,W,te,fe,pe)}}class Vc extends oo{possiblyEvaluate(A,F,W,te){if(A.value===void 0)return new xu(this,{kind:"constant",value:void 0},F);if(A.expression.kind==="constant"){let fe=A.expression.evaluate(F,null,{},W,te),pe=A.property.specification.type==="resolvedImage"&&typeof fe!="string"?fe.name:fe,ze=this._calculate(pe,pe,pe,F);return new xu(this,{kind:"constant",value:ze},F)}if(A.expression.kind==="camera"){let fe=this._calculate(A.expression.evaluate({zoom:F.zoom-1}),A.expression.evaluate({zoom:F.zoom}),A.expression.evaluate({zoom:F.zoom+1}),F);return new xu(this,{kind:"constant",value:fe},F)}return new xu(this,A.expression,F)}evaluate(A,F,W,te,fe,pe){if(A.kind==="source"){let ze=A.evaluate(F,W,te,fe,pe);return this._calculate(ze,ze,ze,F)}return A.kind==="composite"?this._calculate(A.evaluate({zoom:Math.floor(F.zoom)-1},W,te),A.evaluate({zoom:Math.floor(F.zoom)},W,te),A.evaluate({zoom:Math.floor(F.zoom)+1},W,te),F):A.value}_calculate(A,F,W,te){return te.zoom>te.zoomHistory.lastIntegerZoom?{from:A,to:F}:{from:W,to:F}}interpolate(A){return A}}class hc{constructor(A){this.specification=A}possiblyEvaluate(A,F,W,te){if(A.value!==void 0){if(A.expression.kind==="constant"){let fe=A.expression.evaluate(F,null,{},W,te);return this._calculate(fe,fe,fe,F)}return this._calculate(A.expression.evaluate(new rs(Math.floor(F.zoom-1),F)),A.expression.evaluate(new rs(Math.floor(F.zoom),F)),A.expression.evaluate(new rs(Math.floor(F.zoom+1),F)),F)}}_calculate(A,F,W,te){return te.zoom>te.zoomHistory.lastIntegerZoom?{from:A,to:F}:{from:W,to:F}}interpolate(A){return A}}class Ku{constructor(A){this.specification=A}possiblyEvaluate(A,F,W,te){return!!A.expression.evaluate(F,null,{},W,te)}interpolate(){return!1}}class ue{constructor(A){this.properties=A,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(let F in A){let W=A[F];W.specification.overridable&&this.overridableProperties.push(F);let te=this.defaultPropertyValues[F]=new $l(W,void 0),fe=this.defaultTransitionablePropertyValues[F]=new Cu(W);this.defaultTransitioningPropertyValues[F]=fe.untransitioned(),this.defaultPossiblyEvaluatedValues[F]=te.possiblyEvaluate({})}}}Fi("DataDrivenProperty",oo),Fi("DataConstantProperty",Ua),Fi("CrossFadedDataDrivenProperty",Vc),Fi("CrossFadedProperty",hc),Fi("ColorRampProperty",Ku);let w="-transition";class B extends Re{constructor(A,F){if(super(),this.id=A.id,this.type=A.type,this._featureFilter={filter:()=>!0,needGeometry:!1},A.type!=="custom"&&(this.metadata=A.metadata,this.minzoom=A.minzoom,this.maxzoom=A.maxzoom,A.type!=="background"&&(this.source=A.source,this.sourceLayer=A["source-layer"],this.filter=A.filter),F.layout&&(this._unevaluatedLayout=new Uc(F.layout)),F.paint)){this._transitionablePaint=new Yu(F.paint);for(let W in A.paint)this.setPaintProperty(W,A.paint[W],{validate:!1});for(let W in A.layout)this.setLayoutProperty(W,A.layout[W],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Ac(F.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(A){return A==="visibility"?this.visibility:this._unevaluatedLayout.getValue(A)}setLayoutProperty(A,F,W={}){F!=null&&this._validate(Nn,`layers.${this.id}.layout.${A}`,A,F,W)||(A!=="visibility"?this._unevaluatedLayout.setValue(A,F):this.visibility=F)}getPaintProperty(A){return A.endsWith(w)?this._transitionablePaint.getTransition(A.slice(0,-11)):this._transitionablePaint.getValue(A)}setPaintProperty(A,F,W={}){if(F!=null&&this._validate(wn,`layers.${this.id}.paint.${A}`,A,F,W))return!1;if(A.endsWith(w))return this._transitionablePaint.setTransition(A.slice(0,-11),F||void 0),!1;{let te=this._transitionablePaint._values[A],fe=te.property.specification["property-type"]==="cross-faded-data-driven",pe=te.value.isDataDriven(),ze=te.value;this._transitionablePaint.setValue(A,F),this._handleSpecialPaintPropertyUpdate(A);let Ke=this._transitionablePaint._values[A].value;return Ke.isDataDriven()||pe||fe||this._handleOverridablePaintPropertyUpdate(A,ze,Ke)}}_handleSpecialPaintPropertyUpdate(A){}_handleOverridablePaintPropertyUpdate(A,F,W){return!1}isHidden(A){return!!(this.minzoom&&A=this.maxzoom)||this.visibility==="none"}updateTransitions(A){this._transitioningPaint=this._transitionablePaint.transitioned(A,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(A,F){A.getCrossfadeParameters&&(this._crossfadeParameters=A.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(A,void 0,F)),this.paint=this._transitioningPaint.possiblyEvaluate(A,void 0,F)}serialize(){let A={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(A.layout=A.layout||{},A.layout.visibility=this.visibility),M(A,(F,W)=>!(F===void 0||W==="layout"&&!Object.keys(F).length||W==="paint"&&!Object.keys(F).length))}_validate(A,F,W,te,fe={}){return(!fe||fe.validate!==!1)&&Yi(this,A.call(ki,{key:F,layerType:this.type,objectKey:W,value:te,styleSpec:ce,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(let A in this.paint._values){let F=this.paint.get(A);if(F instanceof xu&&Nl(F.property.specification)&&(F.value.kind==="source"||F.value.kind==="composite")&&F.value.isStateDependent)return!0}return!1}}let Q={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class ee{constructor(A,F){this._structArray=A,this._pos1=F*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class le{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(A,F){return A._trim(),F&&(A.isTransferred=!0,F.push(A.arrayBuffer)),{length:A.length,arrayBuffer:A.arrayBuffer}}static deserialize(A){let F=Object.create(this.prototype);return F.arrayBuffer=A.arrayBuffer,F.length=A.length,F.capacity=A.arrayBuffer.byteLength/F.bytesPerElement,F._refreshViews(),F}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(A){this.reserve(A),this.length=A}reserve(A){if(A>this.capacity){this.capacity=Math.max(A,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);let F=this.uint8;this._refreshViews(),F&&this.uint8.set(F)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function qe(R,A=1){let F=0,W=0;return{members:R.map(te=>{let fe=Q[te.type].BYTES_PER_ELEMENT,pe=F=Xe(F,Math.max(A,fe)),ze=te.components||1;return W=Math.max(W,fe),F+=fe*ze,{name:te.name,type:te.type,components:ze,offset:pe}}),size:Xe(F,Math.max(W,A)),alignment:A}}function Xe(R,A){return Math.ceil(R/A)*A}class ot extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F){let W=this.length;return this.resize(W+1),this.emplace(W,A,F)}emplace(A,F,W){let te=2*A;return this.int16[te+0]=F,this.int16[te+1]=W,A}}ot.prototype.bytesPerElement=4,Fi("StructArrayLayout2i4",ot);class Tt extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W){let te=this.length;return this.resize(te+1),this.emplace(te,A,F,W)}emplace(A,F,W,te){let fe=3*A;return this.int16[fe+0]=F,this.int16[fe+1]=W,this.int16[fe+2]=te,A}}Tt.prototype.bytesPerElement=6,Fi("StructArrayLayout3i6",Tt);class Yt extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,te){let fe=this.length;return this.resize(fe+1),this.emplace(fe,A,F,W,te)}emplace(A,F,W,te,fe){let pe=4*A;return this.int16[pe+0]=F,this.int16[pe+1]=W,this.int16[pe+2]=te,this.int16[pe+3]=fe,A}}Yt.prototype.bytesPerElement=8,Fi("StructArrayLayout4i8",Yt);class Kt extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,te,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,A,F,W,te,fe,pe)}emplace(A,F,W,te,fe,pe,ze){let Ke=6*A;return this.int16[Ke+0]=F,this.int16[Ke+1]=W,this.int16[Ke+2]=te,this.int16[Ke+3]=fe,this.int16[Ke+4]=pe,this.int16[Ke+5]=ze,A}}Kt.prototype.bytesPerElement=12,Fi("StructArrayLayout2i4i12",Kt);class xr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,te,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,A,F,W,te,fe,pe)}emplace(A,F,W,te,fe,pe,ze){let Ke=4*A,ct=8*A;return this.int16[Ke+0]=F,this.int16[Ke+1]=W,this.uint8[ct+4]=te,this.uint8[ct+5]=fe,this.uint8[ct+6]=pe,this.uint8[ct+7]=ze,A}}xr.prototype.bytesPerElement=8,Fi("StructArrayLayout2i4ub8",xr);class Ir extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F){let W=this.length;return this.resize(W+1),this.emplace(W,A,F)}emplace(A,F,W){let te=2*A;return this.float32[te+0]=F,this.float32[te+1]=W,A}}Ir.prototype.bytesPerElement=8,Fi("StructArrayLayout2f8",Ir);class ve extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W,te,fe,pe,ze,Ke,ct,Lt){let $t=this.length;return this.resize($t+1),this.emplace($t,A,F,W,te,fe,pe,ze,Ke,ct,Lt)}emplace(A,F,W,te,fe,pe,ze,Ke,ct,Lt,$t){let fr=10*A;return this.uint16[fr+0]=F,this.uint16[fr+1]=W,this.uint16[fr+2]=te,this.uint16[fr+3]=fe,this.uint16[fr+4]=pe,this.uint16[fr+5]=ze,this.uint16[fr+6]=Ke,this.uint16[fr+7]=ct,this.uint16[fr+8]=Lt,this.uint16[fr+9]=$t,A}}ve.prototype.bytesPerElement=20,Fi("StructArrayLayout10ui20",ve);class be extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W,te,fe,pe,ze,Ke,ct,Lt,$t,fr){let mr=this.length;return this.resize(mr+1),this.emplace(mr,A,F,W,te,fe,pe,ze,Ke,ct,Lt,$t,fr)}emplace(A,F,W,te,fe,pe,ze,Ke,ct,Lt,$t,fr,mr){let Pr=12*A;return this.int16[Pr+0]=F,this.int16[Pr+1]=W,this.int16[Pr+2]=te,this.int16[Pr+3]=fe,this.uint16[Pr+4]=pe,this.uint16[Pr+5]=ze,this.uint16[Pr+6]=Ke,this.uint16[Pr+7]=ct,this.int16[Pr+8]=Lt,this.int16[Pr+9]=$t,this.int16[Pr+10]=fr,this.int16[Pr+11]=mr,A}}be.prototype.bytesPerElement=24,Fi("StructArrayLayout4i4ui4i24",be);class De extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W){let te=this.length;return this.resize(te+1),this.emplace(te,A,F,W)}emplace(A,F,W,te){let fe=3*A;return this.float32[fe+0]=F,this.float32[fe+1]=W,this.float32[fe+2]=te,A}}De.prototype.bytesPerElement=12,Fi("StructArrayLayout3f12",De);class Be extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(A){let F=this.length;return this.resize(F+1),this.emplace(F,A)}emplace(A,F){return this.uint32[1*A+0]=F,A}}Be.prototype.bytesPerElement=4,Fi("StructArrayLayout1ul4",Be);class et extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W,te,fe,pe,ze,Ke,ct){let Lt=this.length;return this.resize(Lt+1),this.emplace(Lt,A,F,W,te,fe,pe,ze,Ke,ct)}emplace(A,F,W,te,fe,pe,ze,Ke,ct,Lt){let $t=10*A,fr=5*A;return this.int16[$t+0]=F,this.int16[$t+1]=W,this.int16[$t+2]=te,this.int16[$t+3]=fe,this.int16[$t+4]=pe,this.int16[$t+5]=ze,this.uint32[fr+3]=Ke,this.uint16[$t+8]=ct,this.uint16[$t+9]=Lt,A}}et.prototype.bytesPerElement=20,Fi("StructArrayLayout6i1ul2ui20",et);class We extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,te,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,A,F,W,te,fe,pe)}emplace(A,F,W,te,fe,pe,ze){let Ke=6*A;return this.int16[Ke+0]=F,this.int16[Ke+1]=W,this.int16[Ke+2]=te,this.int16[Ke+3]=fe,this.int16[Ke+4]=pe,this.int16[Ke+5]=ze,A}}We.prototype.bytesPerElement=12,Fi("StructArrayLayout2i2i2i12",We);class it extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,te,fe){let pe=this.length;return this.resize(pe+1),this.emplace(pe,A,F,W,te,fe)}emplace(A,F,W,te,fe,pe){let ze=4*A,Ke=8*A;return this.float32[ze+0]=F,this.float32[ze+1]=W,this.float32[ze+2]=te,this.int16[Ke+6]=fe,this.int16[Ke+7]=pe,A}}it.prototype.bytesPerElement=16,Fi("StructArrayLayout2f1f2i16",it);class Ft extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,te,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,A,F,W,te,fe,pe)}emplace(A,F,W,te,fe,pe,ze){let Ke=16*A,ct=4*A,Lt=8*A;return this.uint8[Ke+0]=F,this.uint8[Ke+1]=W,this.float32[ct+1]=te,this.float32[ct+2]=fe,this.int16[Lt+6]=pe,this.int16[Lt+7]=ze,A}}Ft.prototype.bytesPerElement=16,Fi("StructArrayLayout2ub2f2i16",Ft);class Ht extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W){let te=this.length;return this.resize(te+1),this.emplace(te,A,F,W)}emplace(A,F,W,te){let fe=3*A;return this.uint16[fe+0]=F,this.uint16[fe+1]=W,this.uint16[fe+2]=te,A}}Ht.prototype.bytesPerElement=6,Fi("StructArrayLayout3ui6",Ht);class tr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W,te,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi){let vn=this.length;return this.resize(vn+1),this.emplace(vn,A,F,W,te,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi)}emplace(A,F,W,te,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn){let zi=24*A,un=12*A,Tn=48*A;return this.int16[zi+0]=F,this.int16[zi+1]=W,this.uint16[zi+2]=te,this.uint16[zi+3]=fe,this.uint32[un+2]=pe,this.uint32[un+3]=ze,this.uint32[un+4]=Ke,this.uint16[zi+10]=ct,this.uint16[zi+11]=Lt,this.uint16[zi+12]=$t,this.float32[un+7]=fr,this.float32[un+8]=mr,this.uint8[Tn+36]=Pr,this.uint8[Tn+37]=zr,this.uint8[Tn+38]=ui,this.uint32[un+10]=yi,this.int16[zi+22]=vn,A}}tr.prototype.bytesPerElement=48,Fi("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",tr);class dr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W,te,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn,zi,un,Tn,pa,ro,Vo,Xa,sa,Mo,fo){let lo=this.length;return this.resize(lo+1),this.emplace(lo,A,F,W,te,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn,zi,un,Tn,pa,ro,Vo,Xa,sa,Mo,fo)}emplace(A,F,W,te,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn,zi,un,Tn,pa,ro,Vo,Xa,sa,Mo,fo,lo){let Xn=32*A,Ro=16*A;return this.int16[Xn+0]=F,this.int16[Xn+1]=W,this.int16[Xn+2]=te,this.int16[Xn+3]=fe,this.int16[Xn+4]=pe,this.int16[Xn+5]=ze,this.int16[Xn+6]=Ke,this.int16[Xn+7]=ct,this.uint16[Xn+8]=Lt,this.uint16[Xn+9]=$t,this.uint16[Xn+10]=fr,this.uint16[Xn+11]=mr,this.uint16[Xn+12]=Pr,this.uint16[Xn+13]=zr,this.uint16[Xn+14]=ui,this.uint16[Xn+15]=yi,this.uint16[Xn+16]=vn,this.uint16[Xn+17]=zi,this.uint16[Xn+18]=un,this.uint16[Xn+19]=Tn,this.uint16[Xn+20]=pa,this.uint16[Xn+21]=ro,this.uint16[Xn+22]=Vo,this.uint32[Ro+12]=Xa,this.float32[Ro+13]=sa,this.float32[Ro+14]=Mo,this.uint16[Xn+30]=fo,this.uint16[Xn+31]=lo,A}}dr.prototype.bytesPerElement=64,Fi("StructArrayLayout8i15ui1ul2f2ui64",dr);class Sr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A){let F=this.length;return this.resize(F+1),this.emplace(F,A)}emplace(A,F){return this.float32[1*A+0]=F,A}}Sr.prototype.bytesPerElement=4,Fi("StructArrayLayout1f4",Sr);class Or extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W){let te=this.length;return this.resize(te+1),this.emplace(te,A,F,W)}emplace(A,F,W,te){let fe=3*A;return this.uint16[6*A+0]=F,this.float32[fe+1]=W,this.float32[fe+2]=te,A}}Or.prototype.bytesPerElement=12,Fi("StructArrayLayout1ui2f12",Or);class Wr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W){let te=this.length;return this.resize(te+1),this.emplace(te,A,F,W)}emplace(A,F,W,te){let fe=4*A;return this.uint32[2*A+0]=F,this.uint16[fe+2]=W,this.uint16[fe+3]=te,A}}Wr.prototype.bytesPerElement=8,Fi("StructArrayLayout1ul2ui8",Wr);class ni extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F){let W=this.length;return this.resize(W+1),this.emplace(W,A,F)}emplace(A,F,W){let te=2*A;return this.uint16[te+0]=F,this.uint16[te+1]=W,A}}ni.prototype.bytesPerElement=4,Fi("StructArrayLayout2ui4",ni);class Pi extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A){let F=this.length;return this.resize(F+1),this.emplace(F,A)}emplace(A,F){return this.uint16[1*A+0]=F,A}}Pi.prototype.bytesPerElement=2,Fi("StructArrayLayout1ui2",Pi);class cn extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W,te){let fe=this.length;return this.resize(fe+1),this.emplace(fe,A,F,W,te)}emplace(A,F,W,te,fe){let pe=4*A;return this.float32[pe+0]=F,this.float32[pe+1]=W,this.float32[pe+2]=te,this.float32[pe+3]=fe,A}}cn.prototype.bytesPerElement=16,Fi("StructArrayLayout4f16",cn);class ln extends ee{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new u(this.anchorPointX,this.anchorPointY)}}ln.prototype.size=20;class Cn extends et{get(A){return new ln(this,A)}}Fi("CollisionBoxArray",Cn);class Kn extends ee{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(A){this._structArray.uint8[this._pos1+37]=A}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(A){this._structArray.uint8[this._pos1+38]=A}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(A){this._structArray.uint32[this._pos4+10]=A}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}Kn.prototype.size=48;class Ta extends tr{get(A){return new Kn(this,A)}}Fi("PlacedSymbolArray",Ta);class fa extends ee{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(A){this._structArray.uint32[this._pos4+12]=A}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14]}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30]}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31]}}fa.prototype.size=64;class $a extends dr{get(A){return new fa(this,A)}}Fi("SymbolInstanceArray",$a);class Co extends Sr{getoffsetX(A){return this.float32[1*A+0]}}Fi("GlyphOffsetArray",Co);class Qa extends Tt{getx(A){return this.int16[3*A+0]}gety(A){return this.int16[3*A+1]}gettileUnitDistanceFromAnchor(A){return this.int16[3*A+2]}}Fi("SymbolLineVertexArray",Qa);class mo extends ee{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}mo.prototype.size=12;class Bo extends Or{get(A){return new mo(this,A)}}Fi("TextAnchorOffsetArray",Bo);class Ps extends ee{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}Ps.prototype.size=8;class Ts extends Wr{get(A){return new Ps(this,A)}}Fi("FeatureIndexArray",Ts);class wo extends ot{}class To extends ot{}class hl extends ot{}class Ul extends Kt{}class Lu extends xr{}class au extends Ir{}class Js extends ve{}class Ql extends be{}class dc extends De{}class Tl extends Be{}class Al extends We{}class X extends Ft{}class se extends Ht{}class Te extends ni{}let Ne=qe([{name:"a_pos",components:2,type:"Int16"}],4),{members:He}=Ne;class Ye{constructor(A=[]){this.segments=A}prepareSegment(A,F,W,te){let fe=this.segments[this.segments.length-1];return A>Ye.MAX_VERTEX_ARRAY_LENGTH&&T(`Max vertices per segment is ${Ye.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${A}`),(!fe||fe.vertexLength+A>Ye.MAX_VERTEX_ARRAY_LENGTH||fe.sortKey!==te)&&(fe={vertexOffset:F.length,primitiveOffset:W.length,vertexLength:0,primitiveLength:0},te!==void 0&&(fe.sortKey=te),this.segments.push(fe)),fe}get(){return this.segments}destroy(){for(let A of this.segments)for(let F in A.vaos)A.vaos[F].destroy()}static simpleSegment(A,F,W,te){return new Ye([{vertexOffset:A,primitiveOffset:F,vertexLength:W,primitiveLength:te,vaos:{},sortKey:0}])}}function kt(R,A){return 256*(R=E(Math.floor(R),0,255))+E(Math.floor(A),0,255)}Ye.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Fi("SegmentVector",Ye);let nt=qe([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var jt={exports:{}},gr={exports:{}};gr.exports=function(R,A){var F,W,te,fe,pe,ze,Ke,ct;for(W=R.length-(F=3&R.length),te=A,pe=3432918353,ze=461845907,ct=0;ct>>16)*pe&65535)<<16)&4294967295)<<15|Ke>>>17))*ze+(((Ke>>>16)*ze&65535)<<16)&4294967295)<<13|te>>>19))+((5*(te>>>16)&65535)<<16)&4294967295))+((58964+(fe>>>16)&65535)<<16);switch(Ke=0,F){case 3:Ke^=(255&R.charCodeAt(ct+2))<<16;case 2:Ke^=(255&R.charCodeAt(ct+1))<<8;case 1:te^=Ke=(65535&(Ke=(Ke=(65535&(Ke^=255&R.charCodeAt(ct)))*pe+(((Ke>>>16)*pe&65535)<<16)&4294967295)<<15|Ke>>>17))*ze+(((Ke>>>16)*ze&65535)<<16)&4294967295}return te^=R.length,te=2246822507*(65535&(te^=te>>>16))+((2246822507*(te>>>16)&65535)<<16)&4294967295,te=3266489909*(65535&(te^=te>>>13))+((3266489909*(te>>>16)&65535)<<16)&4294967295,(te^=te>>>16)>>>0};var yr=gr.exports,Hr={exports:{}};Hr.exports=function(R,A){for(var F,W=R.length,te=A^W,fe=0;W>=4;)F=1540483477*(65535&(F=255&R.charCodeAt(fe)|(255&R.charCodeAt(++fe))<<8|(255&R.charCodeAt(++fe))<<16|(255&R.charCodeAt(++fe))<<24))+((1540483477*(F>>>16)&65535)<<16),te=1540483477*(65535&te)+((1540483477*(te>>>16)&65535)<<16)^(F=1540483477*(65535&(F^=F>>>24))+((1540483477*(F>>>16)&65535)<<16)),W-=4,++fe;switch(W){case 3:te^=(255&R.charCodeAt(fe+2))<<16;case 2:te^=(255&R.charCodeAt(fe+1))<<8;case 1:te=1540483477*(65535&(te^=255&R.charCodeAt(fe)))+((1540483477*(te>>>16)&65535)<<16)}return te=1540483477*(65535&(te^=te>>>13))+((1540483477*(te>>>16)&65535)<<16),(te^=te>>>15)>>>0};var qr=yr,_i=Hr.exports;jt.exports=qr,jt.exports.murmur3=qr,jt.exports.murmur2=_i;var bi=o(jt.exports);class Zr{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(A,F,W,te){this.ids.push(ai(A)),this.positions.push(F,W,te)}getPositions(A){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");let F=ai(A),W=0,te=this.ids.length-1;for(;W>1;this.ids[pe]>=F?te=pe:W=pe+1}let fe=[];for(;this.ids[W]===F;)fe.push({index:this.positions[3*W],start:this.positions[3*W+1],end:this.positions[3*W+2]}),W++;return fe}static serialize(A,F){let W=new Float64Array(A.ids),te=new Uint32Array(A.positions);return gi(W,te,0,W.length-1),F&&F.push(W.buffer,te.buffer),{ids:W,positions:te}}static deserialize(A){let F=new Zr;return F.ids=A.ids,F.positions=A.positions,F.indexed=!0,F}}function ai(R){let A=+R;return!isNaN(A)&&A<=Number.MAX_SAFE_INTEGER?A:bi(String(R))}function gi(R,A,F,W){for(;F>1],fe=F-1,pe=W+1;for(;;){do fe++;while(R[fe]te);if(fe>=pe)break;Ii(R,fe,pe),Ii(A,3*fe,3*pe),Ii(A,3*fe+1,3*pe+1),Ii(A,3*fe+2,3*pe+2)}pe-F`u_${te}`),this.type=W}setUniform(A,F,W){A.set(W.constantOr(this.value))}getBinding(A,F,W){return this.type==="color"?new En(A,F):new ei(A,F)}}class Ia{constructor(A,F){this.uniformNames=F.map(W=>`u_${W}`),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(A,F){this.pixelRatioFrom=F.pixelRatio,this.pixelRatioTo=A.pixelRatio,this.patternFrom=F.tlbr,this.patternTo=A.tlbr}setUniform(A,F,W,te){let fe=te==="u_pattern_to"?this.patternTo:te==="u_pattern_from"?this.patternFrom:te==="u_pixel_ratio_to"?this.pixelRatioTo:te==="u_pixel_ratio_from"?this.pixelRatioFrom:null;fe&&A.set(fe)}getBinding(A,F,W){return W.substr(0,9)==="u_pattern"?new Ln(A,F):new ei(A,F)}}class yo{constructor(A,F,W,te){this.expression=A,this.type=W,this.maxValue=0,this.paintVertexAttributes=F.map(fe=>({name:`a_${fe}`,type:"Float32",components:W==="color"?2:1,offset:0})),this.paintVertexArray=new te}populatePaintArray(A,F,W,te,fe){let pe=this.paintVertexArray.length,ze=this.expression.evaluate(new rs(0),F,{},te,[],fe);this.paintVertexArray.resize(A),this._setPaintValue(pe,A,ze)}updatePaintArray(A,F,W,te){let fe=this.expression.evaluate({zoom:0},W,te);this._setPaintValue(A,F,fe)}_setPaintValue(A,F,W){if(this.type==="color"){let te=ia(W);for(let fe=A;fe`u_${ze}_t`),this.type=W,this.useIntegerZoom=te,this.zoom=fe,this.maxValue=0,this.paintVertexAttributes=F.map(ze=>({name:`a_${ze}`,type:"Float32",components:W==="color"?4:2,offset:0})),this.paintVertexArray=new pe}populatePaintArray(A,F,W,te,fe){let pe=this.expression.evaluate(new rs(this.zoom),F,{},te,[],fe),ze=this.expression.evaluate(new rs(this.zoom+1),F,{},te,[],fe),Ke=this.paintVertexArray.length;this.paintVertexArray.resize(A),this._setPaintValue(Ke,A,pe,ze)}updatePaintArray(A,F,W,te){let fe=this.expression.evaluate({zoom:this.zoom},W,te),pe=this.expression.evaluate({zoom:this.zoom+1},W,te);this._setPaintValue(A,F,fe,pe)}_setPaintValue(A,F,W,te){if(this.type==="color"){let fe=ia(W),pe=ia(te);for(let ze=A;ze`#define HAS_UNIFORM_${te}`))}return A}getBinderAttributes(){let A=[];for(let F in this.binders){let W=this.binders[F];if(W instanceof yo||W instanceof Da)for(let te=0;te!0){this.programConfigurations={};for(let te of A)this.programConfigurations[te.id]=new Is(te,F,W);this.needsUpload=!1,this._featureMap=new Zr,this._bufferOffset=0}populatePaintArrays(A,F,W,te,fe,pe){for(let ze in this.programConfigurations)this.programConfigurations[ze].populatePaintArrays(A,F,te,fe,pe);F.id!==void 0&&this._featureMap.add(F.id,W,this._bufferOffset,A),this._bufferOffset=A,this.needsUpload=!0}updatePaintArrays(A,F,W,te){for(let fe of W)this.needsUpload=this.programConfigurations[fe.id].updatePaintArrays(A,this._featureMap,F,fe,te)||this.needsUpload}get(A){return this.programConfigurations[A]}upload(A){if(this.needsUpload){for(let F in this.programConfigurations)this.programConfigurations[F].upload(A);this.needsUpload=!1}}destroy(){for(let A in this.programConfigurations)this.programConfigurations[A].destroy()}}function Xs(R,A){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[R]||[R.replace(`${A}-`,"").replace(/-/g,"_")]}function Gn(R,A,F){let W={color:{source:Ir,composite:cn},number:{source:Sr,composite:Ir}},te=function(fe){return{"line-pattern":{source:Js,composite:Js},"fill-pattern":{source:Js,composite:Js},"fill-extrusion-pattern":{source:Js,composite:Js}}[fe]}(R);return te&&te[F]||W[A][F]}Fi("ConstantBinder",Ea),Fi("CrossFadedConstantBinder",Ia),Fi("SourceExpressionBinder",yo),Fi("CrossFadedCompositeBinder",go),Fi("CompositeExpressionBinder",Da),Fi("ProgramConfiguration",Is,{omit:["_buffers"]}),Fi("ProgramConfigurationSet",Ms);let Ha=8192,Fo=Math.pow(2,14)-1,Uo=-Fo-1;function $s(R){let A=Ha/R.extent,F=R.loadGeometry();for(let W=0;Wpe.x+1||Kepe.y+1)&&T("Geometry exceeds allowed extent, reduce your vector tile buffer size")}}return F}function Sl(R,A){return{type:R.type,id:R.id,properties:R.properties,geometry:A?$s(R):[]}}function bu(R,A,F,W,te){R.emplaceBack(2*A+(W+1)/2,2*F+(te+1)/2)}class dl{constructor(A){this.zoom=A.zoom,this.overscaling=A.overscaling,this.layers=A.layers,this.layerIds=this.layers.map(F=>F.id),this.index=A.index,this.hasPattern=!1,this.layoutVertexArray=new To,this.indexArray=new se,this.segments=new Ye,this.programConfigurations=new Ms(A.layers,A.zoom),this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(A,F,W){let te=this.layers[0],fe=[],pe=null,ze=!1;te.type==="circle"&&(pe=te.layout.get("circle-sort-key"),ze=!pe.isConstant());for(let{feature:Ke,id:ct,index:Lt,sourceLayerIndex:$t}of A){let fr=this.layers[0]._featureFilter.needGeometry,mr=Sl(Ke,fr);if(!this.layers[0]._featureFilter.filter(new rs(this.zoom),mr,W))continue;let Pr=ze?pe.evaluate(mr,{},W):void 0,zr={id:ct,properties:Ke.properties,type:Ke.type,sourceLayerIndex:$t,index:Lt,geometry:fr?mr.geometry:$s(Ke),patterns:{},sortKey:Pr};fe.push(zr)}ze&&fe.sort((Ke,ct)=>Ke.sortKey-ct.sortKey);for(let Ke of fe){let{geometry:ct,index:Lt,sourceLayerIndex:$t}=Ke,fr=A[Lt].feature;this.addFeature(Ke,ct,Lt,W),F.featureIndex.insert(fr,ct,Lt,$t,this.index)}}update(A,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(A,F,this.stateDependentLayers,W)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(A){this.uploaded||(this.layoutVertexBuffer=A.createVertexBuffer(this.layoutVertexArray,He),this.indexBuffer=A.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(A),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(A,F,W,te){for(let fe of F)for(let pe of fe){let ze=pe.x,Ke=pe.y;if(ze<0||ze>=Ha||Ke<0||Ke>=Ha)continue;let ct=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,A.sortKey),Lt=ct.vertexLength;bu(this.layoutVertexArray,ze,Ke,-1,-1),bu(this.layoutVertexArray,ze,Ke,1,-1),bu(this.layoutVertexArray,ze,Ke,1,1),bu(this.layoutVertexArray,ze,Ke,-1,1),this.indexArray.emplaceBack(Lt,Lt+1,Lt+2),this.indexArray.emplaceBack(Lt,Lt+3,Lt+2),ct.vertexLength+=4,ct.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,A,W,{},te)}}function Sc(R,A){for(let F=0;F1){if(Rr(R,A))return!0;for(let W=0;W1?F:F.sub(A)._mult(te)._add(A))}function mi(R,A){let F,W,te,fe=!1;for(let pe=0;peA.y!=te.y>A.y&&A.x<(te.x-W.x)*(A.y-W.y)/(te.y-W.y)+W.x&&(fe=!fe)}return fe}function Ui(R,A){let F=!1;for(let W=0,te=R.length-1;WA.y!=pe.y>A.y&&A.x<(pe.x-fe.x)*(A.y-fe.y)/(pe.y-fe.y)+fe.x&&(F=!F)}return F}function qi(R,A,F){let W=F[0],te=F[2];if(R.xte.x&&A.x>te.x||R.yte.y&&A.y>te.y)return!1;let fe=z(R,A,F[0]);return fe!==z(R,A,F[1])||fe!==z(R,A,F[2])||fe!==z(R,A,F[3])}function Ei(R,A,F){let W=A.paint.get(R).value;return W.kind==="constant"?W.value:F.programConfigurations.get(A.id).getMaxValue(R)}function Hn(R){return Math.sqrt(R[0]*R[0]+R[1]*R[1])}function en(R,A,F,W,te){if(!A[0]&&!A[1])return R;let fe=u.convert(A)._mult(te);F==="viewport"&&fe._rotate(-W);let pe=[];for(let ze=0;zeli(ui,zr))}(ct,Ke),mr=$t?Lt*ze:Lt;for(let Pr of te)for(let zr of Pr){let ui=$t?zr:li(zr,Ke),yi=mr,vn=Bn([],[zr.x,zr.y,0,1],Ke);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?yi*=vn[3]/pe.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(yi*=pe.cameraToCenterDistance/vn[3]),Me(fr,ui,yi))return!0}return!1}}function li(R,A){let F=Bn([],[R.x,R.y,0,1],A);return new u(F[0]/F[3],F[1]/F[3])}class mn extends dl{}let Ji;Fi("HeatmapBucket",mn,{omit:["layers"]});var Vi={get paint(){return Ji=Ji||new ue({"heatmap-radius":new oo(ce.paint_heatmap["heatmap-radius"]),"heatmap-weight":new oo(ce.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Ua(ce.paint_heatmap["heatmap-intensity"]),"heatmap-color":new Ku(ce.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Ua(ce.paint_heatmap["heatmap-opacity"])})}};function Ni(R,{width:A,height:F},W,te){if(te){if(te instanceof Uint8ClampedArray)te=new Uint8Array(te.buffer);else if(te.length!==A*F*W)throw new RangeError(`mismatched image size. expected: ${te.length} but got: ${A*F*W}`)}else te=new Uint8Array(A*F*W);return R.width=A,R.height=F,R.data=te,R}function pn(R,{width:A,height:F},W){if(A===R.width&&F===R.height)return;let te=Ni({},{width:A,height:F},W);Vn(R,te,{x:0,y:0},{x:0,y:0},{width:Math.min(R.width,A),height:Math.min(R.height,F)},W),R.width=A,R.height=F,R.data=te.data}function Vn(R,A,F,W,te,fe){if(te.width===0||te.height===0)return A;if(te.width>R.width||te.height>R.height||F.x>R.width-te.width||F.y>R.height-te.height)throw new RangeError("out of range source coordinates for image copy");if(te.width>A.width||te.height>A.height||W.x>A.width-te.width||W.y>A.height-te.height)throw new RangeError("out of range destination coordinates for image copy");let pe=R.data,ze=A.data;if(pe===ze)throw new Error("srcData equals dstData, so image is already copied");for(let Ke=0;Ke{A[R.evaluationKey]=Ke;let ct=R.expression.evaluate(A);te.data[pe+ze+0]=Math.floor(255*ct.r/ct.a),te.data[pe+ze+1]=Math.floor(255*ct.g/ct.a),te.data[pe+ze+2]=Math.floor(255*ct.b/ct.a),te.data[pe+ze+3]=Math.floor(255*ct.a)};if(R.clips)for(let pe=0,ze=0;pe80*F){ze=1/0,Ke=1/0;let Lt=-1/0,$t=-1/0;for(let fr=F;frLt&&(Lt=mr),Pr>$t&&($t=Pr)}ct=Math.max(Lt-ze,$t-Ke),ct=ct!==0?32767/ct:0}return Vl(fe,pe,F,ze,Ke,ct,0),pe}function Qs(R,A,F,W,te){let fe;if(te===function(pe,ze,Ke,ct){let Lt=0;for(let $t=ze,fr=Ke-ct;$t0)for(let pe=A;pe=A;pe-=W)fe=qt(pe/W|0,R[pe],R[pe+1],fe);return fe&&ne(fe,fe.next)&&(Ve(fe),fe=fe.next),fe}function al(R,A){if(!R)return R;A||(A=R);let F,W=R;do if(F=!1,W.steiner||!ne(W,W.next)&&de(W.prev,W,W.next)!==0)W=W.next;else{if(Ve(W),W=A=W.prev,W===W.next)break;F=!0}while(F||W!==A);return A}function Vl(R,A,F,W,te,fe,pe){if(!R)return;!pe&&fe&&function(Ke,ct,Lt,$t){let fr=Ke;do fr.z===0&&(fr.z=D(fr.x,fr.y,ct,Lt,$t)),fr.prevZ=fr.prev,fr.nextZ=fr.next,fr=fr.next;while(fr!==Ke);fr.prevZ.nextZ=null,fr.prevZ=null,function(mr){let Pr,zr=1;do{let ui,yi=mr;mr=null;let vn=null;for(Pr=0;yi;){Pr++;let zi=yi,un=0;for(let pa=0;pa0||Tn>0&&zi;)un!==0&&(Tn===0||!zi||yi.z<=zi.z)?(ui=yi,yi=yi.nextZ,un--):(ui=zi,zi=zi.nextZ,Tn--),vn?vn.nextZ=ui:mr=ui,ui.prevZ=vn,vn=ui;yi=zi}vn.nextZ=null,zr*=2}while(Pr>1)}(fr)}(R,W,te,fe);let ze=R;for(;R.prev!==R.next;){let Ke=R.prev,ct=R.next;if(fe?Vs(R,W,te,fe):ss(R))A.push(Ke.i,R.i,ct.i),Ve(R),R=ct.next,ze=ct.next;else if((R=ct)===ze){pe?pe===1?Vl(R=Ys(al(R),A),A,F,W,te,fe,2):pe===2&&wa(R,A,F,W,te,fe):Vl(al(R),A,F,W,te,fe,1);break}}}function ss(R){let A=R.prev,F=R,W=R.next;if(de(A,F,W)>=0)return!1;let te=A.x,fe=F.x,pe=W.x,ze=A.y,Ke=F.y,ct=W.y,Lt=tefe?te>pe?te:pe:fe>pe?fe:pe,mr=ze>Ke?ze>ct?ze:ct:Ke>ct?Ke:ct,Pr=W.next;for(;Pr!==A;){if(Pr.x>=Lt&&Pr.x<=fr&&Pr.y>=$t&&Pr.y<=mr&&q(te,ze,fe,Ke,pe,ct,Pr.x,Pr.y)&&de(Pr.prev,Pr,Pr.next)>=0)return!1;Pr=Pr.next}return!0}function Vs(R,A,F,W){let te=R.prev,fe=R,pe=R.next;if(de(te,fe,pe)>=0)return!1;let ze=te.x,Ke=fe.x,ct=pe.x,Lt=te.y,$t=fe.y,fr=pe.y,mr=zeKe?ze>ct?ze:ct:Ke>ct?Ke:ct,ui=Lt>$t?Lt>fr?Lt:fr:$t>fr?$t:fr,yi=D(mr,Pr,A,F,W),vn=D(zr,ui,A,F,W),zi=R.prevZ,un=R.nextZ;for(;zi&&zi.z>=yi&&un&&un.z<=vn;){if(zi.x>=mr&&zi.x<=zr&&zi.y>=Pr&&zi.y<=ui&&zi!==te&&zi!==pe&&q(ze,Lt,Ke,$t,ct,fr,zi.x,zi.y)&&de(zi.prev,zi,zi.next)>=0||(zi=zi.prevZ,un.x>=mr&&un.x<=zr&&un.y>=Pr&&un.y<=ui&&un!==te&&un!==pe&&q(ze,Lt,Ke,$t,ct,fr,un.x,un.y)&&de(un.prev,un,un.next)>=0))return!1;un=un.nextZ}for(;zi&&zi.z>=yi;){if(zi.x>=mr&&zi.x<=zr&&zi.y>=Pr&&zi.y<=ui&&zi!==te&&zi!==pe&&q(ze,Lt,Ke,$t,ct,fr,zi.x,zi.y)&&de(zi.prev,zi,zi.next)>=0)return!1;zi=zi.prevZ}for(;un&&un.z<=vn;){if(un.x>=mr&&un.x<=zr&&un.y>=Pr&&un.y<=ui&&un!==te&&un!==pe&&q(ze,Lt,Ke,$t,ct,fr,un.x,un.y)&&de(un.prev,un,un.next)>=0)return!1;un=un.nextZ}return!0}function Ys(R,A){let F=R;do{let W=F.prev,te=F.next.next;!ne(W,te)&&we(W,F,F.next,te)&&Xt(W,te)&&Xt(te,W)&&(A.push(W.i,F.i,te.i),Ve(F),Ve(F.next),F=R=te),F=F.next}while(F!==R);return al(F)}function wa(R,A,F,W,te,fe){let pe=R;do{let ze=pe.next.next;for(;ze!==pe.prev;){if(pe.i!==ze.i&&K(pe,ze)){let Ke=hr(pe,ze);return pe=al(pe,pe.next),Ke=al(Ke,Ke.next),Vl(pe,A,F,W,te,fe,0),void Vl(Ke,A,F,W,te,fe,0)}ze=ze.next}pe=pe.next}while(pe!==R)}function ol(R,A){return R.x-A.x}function io(R,A){let F=function(te,fe){let pe=fe,ze=te.x,Ke=te.y,ct,Lt=-1/0;do{if(Ke<=pe.y&&Ke>=pe.next.y&&pe.next.y!==pe.y){let zr=pe.x+(Ke-pe.y)*(pe.next.x-pe.x)/(pe.next.y-pe.y);if(zr<=ze&&zr>Lt&&(Lt=zr,ct=pe.x=pe.x&&pe.x>=fr&&ze!==pe.x&&q(Kect.x||pe.x===ct.x&&Y(ct,pe)))&&(ct=pe,Pr=zr)}pe=pe.next}while(pe!==$t);return ct}(R,A);if(!F)return A;let W=hr(F,R);return al(W,W.next),al(F,F.next)}function Y(R,A){return de(R.prev,R,A.prev)<0&&de(A.next,R,R.next)<0}function D(R,A,F,W,te){return(R=1431655765&((R=858993459&((R=252645135&((R=16711935&((R=(R-F)*te|0)|R<<8))|R<<4))|R<<2))|R<<1))|(A=1431655765&((A=858993459&((A=252645135&((A=16711935&((A=(A-W)*te|0)|A<<8))|A<<4))|A<<2))|A<<1))<<1}function J(R){let A=R,F=R;do(A.x=(R-pe)*(fe-ze)&&(R-pe)*(W-ze)>=(F-pe)*(A-ze)&&(F-pe)*(fe-ze)>=(te-pe)*(W-ze)}function K(R,A){return R.next.i!==A.i&&R.prev.i!==A.i&&!function(F,W){let te=F;do{if(te.i!==F.i&&te.next.i!==F.i&&te.i!==W.i&&te.next.i!==W.i&&we(te,te.next,F,W))return!0;te=te.next}while(te!==F);return!1}(R,A)&&(Xt(R,A)&&Xt(A,R)&&function(F,W){let te=F,fe=!1,pe=(F.x+W.x)/2,ze=(F.y+W.y)/2;do te.y>ze!=te.next.y>ze&&te.next.y!==te.y&&pe<(te.next.x-te.x)*(ze-te.y)/(te.next.y-te.y)+te.x&&(fe=!fe),te=te.next;while(te!==F);return fe}(R,A)&&(de(R.prev,R,A.prev)||de(R,A.prev,A))||ne(R,A)&&de(R.prev,R,R.next)>0&&de(A.prev,A,A.next)>0)}function de(R,A,F){return(A.y-R.y)*(F.x-A.x)-(A.x-R.x)*(F.y-A.y)}function ne(R,A){return R.x===A.x&&R.y===A.y}function we(R,A,F,W){let te=ft(de(R,A,F)),fe=ft(de(R,A,W)),pe=ft(de(F,W,R)),ze=ft(de(F,W,A));return te!==fe&&pe!==ze||!(te!==0||!Ue(R,F,A))||!(fe!==0||!Ue(R,W,A))||!(pe!==0||!Ue(F,R,W))||!(ze!==0||!Ue(F,A,W))}function Ue(R,A,F){return A.x<=Math.max(R.x,F.x)&&A.x>=Math.min(R.x,F.x)&&A.y<=Math.max(R.y,F.y)&&A.y>=Math.min(R.y,F.y)}function ft(R){return R>0?1:R<0?-1:0}function Xt(R,A){return de(R.prev,R,R.next)<0?de(R,A,R.next)>=0&&de(R,R.prev,A)>=0:de(R,A,R.prev)<0||de(R,R.next,A)<0}function hr(R,A){let F=Qe(R.i,R.x,R.y),W=Qe(A.i,A.x,A.y),te=R.next,fe=A.prev;return R.next=A,A.prev=R,F.next=te,te.prev=F,W.next=F,F.prev=W,fe.next=W,W.prev=fe,W}function qt(R,A,F,W){let te=Qe(R,A,F);return W?(te.next=W.next,te.prev=W,W.next.prev=te,W.next=te):(te.prev=te,te.next=te),te}function Ve(R){R.next.prev=R.prev,R.prev.next=R.next,R.prevZ&&(R.prevZ.nextZ=R.nextZ),R.nextZ&&(R.nextZ.prevZ=R.prevZ)}function Qe(R,A,F){return{i:R,x:A,y:F,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function at(R,A,F){let W=F.patternDependencies,te=!1;for(let fe of A){let pe=fe.paint.get(`${R}-pattern`);pe.isConstant()||(te=!0);let ze=pe.constantOr(null);ze&&(te=!0,W[ze.to]=!0,W[ze.from]=!0)}return te}function Ct(R,A,F,W,te){let fe=te.patternDependencies;for(let pe of A){let ze=pe.paint.get(`${R}-pattern`).value;if(ze.kind!=="constant"){let Ke=ze.evaluate({zoom:W-1},F,{},te.availableImages),ct=ze.evaluate({zoom:W},F,{},te.availableImages),Lt=ze.evaluate({zoom:W+1},F,{},te.availableImages);Ke=Ke&&Ke.name?Ke.name:Ke,ct=ct&&ct.name?ct.name:ct,Lt=Lt&&Lt.name?Lt.name:Lt,fe[Ke]=!0,fe[ct]=!0,fe[Lt]=!0,F.patterns[pe.id]={min:Ke,mid:ct,max:Lt}}}return F}class Ot{constructor(A){this.zoom=A.zoom,this.overscaling=A.overscaling,this.layers=A.layers,this.layerIds=this.layers.map(F=>F.id),this.index=A.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new hl,this.indexArray=new se,this.indexArray2=new Te,this.programConfigurations=new Ms(A.layers,A.zoom),this.segments=new Ye,this.segments2=new Ye,this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(A,F,W){this.hasPattern=at("fill",this.layers,F);let te=this.layers[0].layout.get("fill-sort-key"),fe=!te.isConstant(),pe=[];for(let{feature:ze,id:Ke,index:ct,sourceLayerIndex:Lt}of A){let $t=this.layers[0]._featureFilter.needGeometry,fr=Sl(ze,$t);if(!this.layers[0]._featureFilter.filter(new rs(this.zoom),fr,W))continue;let mr=fe?te.evaluate(fr,{},W,F.availableImages):void 0,Pr={id:Ke,properties:ze.properties,type:ze.type,sourceLayerIndex:Lt,index:ct,geometry:$t?fr.geometry:$s(ze),patterns:{},sortKey:mr};pe.push(Pr)}fe&&pe.sort((ze,Ke)=>ze.sortKey-Ke.sortKey);for(let ze of pe){let{geometry:Ke,index:ct,sourceLayerIndex:Lt}=ze;if(this.hasPattern){let $t=Ct("fill",this.layers,ze,this.zoom,F);this.patternFeatures.push($t)}else this.addFeature(ze,Ke,ct,W,{});F.featureIndex.insert(A[ct].feature,Ke,ct,Lt,this.index)}}update(A,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(A,F,this.stateDependentLayers,W)}addFeatures(A,F,W){for(let te of this.patternFeatures)this.addFeature(te,te.geometry,te.index,F,W)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(A){this.uploaded||(this.layoutVertexBuffer=A.createVertexBuffer(this.layoutVertexArray,Ml),this.indexBuffer=A.createIndexBuffer(this.indexArray),this.indexBuffer2=A.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(A),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(A,F,W,te,fe){for(let pe of Cf(F,500)){let ze=0;for(let mr of pe)ze+=mr.length;let Ke=this.segments.prepareSegment(ze,this.layoutVertexArray,this.indexArray),ct=Ke.vertexLength,Lt=[],$t=[];for(let mr of pe){if(mr.length===0)continue;mr!==pe[0]&&$t.push(Lt.length/2);let Pr=this.segments2.prepareSegment(mr.length,this.layoutVertexArray,this.indexArray2),zr=Pr.vertexLength;this.layoutVertexArray.emplaceBack(mr[0].x,mr[0].y),this.indexArray2.emplaceBack(zr+mr.length-1,zr),Lt.push(mr[0].x),Lt.push(mr[0].y);for(let ui=1;ui>3}if(te--,W===1||W===2)fe+=R.readSVarint(),pe+=R.readSVarint(),W===1&&(A&&ze.push(A),A=[]),A.push(new Ur(fe,pe));else{if(W!==7)throw new Error("unknown command "+W);A&&A.push(A[0].clone())}}return A&&ze.push(A),ze},fi.prototype.bbox=function(){var R=this._pbf;R.pos=this._geometry;for(var A=R.readVarint()+R.pos,F=1,W=0,te=0,fe=0,pe=1/0,ze=-1/0,Ke=1/0,ct=-1/0;R.pos>3}if(W--,F===1||F===2)(te+=R.readSVarint())ze&&(ze=te),(fe+=R.readSVarint())ct&&(ct=fe);else if(F!==7)throw new Error("unknown command "+F)}return[pe,Ke,ze,ct]},fi.prototype.toGeoJSON=function(R,A,F){var W,te,fe=this.extent*Math.pow(2,F),pe=this.extent*R,ze=this.extent*A,Ke=this.loadGeometry(),ct=fi.types[this.type];function Lt(mr){for(var Pr=0;Pr>3;te=pe===1?W.readString():pe===2?W.readFloat():pe===3?W.readDouble():pe===4?W.readVarint64():pe===5?W.readVarint():pe===6?W.readSVarint():pe===7?W.readBoolean():null}return te}(F))}Bi.prototype.feature=function(R){if(R<0||R>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[R];var A=this._pbf.readVarint()+this._pbf.pos;return new rn(this._pbf,A,this.extent,this._keys,this._values)};var sn=Ci;function zn(R,A,F){if(R===3){var W=new sn(F,F.readVarint()+F.pos);W.length&&(A[W.name]=W)}}br.VectorTile=function(R,A){this.layers=R.readFields(zn,{},A)},br.VectorTileFeature=Di,br.VectorTileLayer=Ci;let Ja=br.VectorTileFeature.types,co=Math.pow(2,13);function ts(R,A,F,W,te,fe,pe,ze){R.emplaceBack(A,F,2*Math.floor(W*co)+pe,te*co*2,fe*co*2,Math.round(ze))}class so{constructor(A){this.zoom=A.zoom,this.overscaling=A.overscaling,this.layers=A.layers,this.layerIds=this.layers.map(F=>F.id),this.index=A.index,this.hasPattern=!1,this.layoutVertexArray=new Ul,this.centroidVertexArray=new wo,this.indexArray=new se,this.programConfigurations=new Ms(A.layers,A.zoom),this.segments=new Ye,this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(A,F,W){this.features=[],this.hasPattern=at("fill-extrusion",this.layers,F);for(let{feature:te,id:fe,index:pe,sourceLayerIndex:ze}of A){let Ke=this.layers[0]._featureFilter.needGeometry,ct=Sl(te,Ke);if(!this.layers[0]._featureFilter.filter(new rs(this.zoom),ct,W))continue;let Lt={id:fe,sourceLayerIndex:ze,index:pe,geometry:Ke?ct.geometry:$s(te),properties:te.properties,type:te.type,patterns:{}};this.hasPattern?this.features.push(Ct("fill-extrusion",this.layers,Lt,this.zoom,F)):this.addFeature(Lt,Lt.geometry,pe,W,{}),F.featureIndex.insert(te,Lt.geometry,pe,ze,this.index,!0)}}addFeatures(A,F,W){for(let te of this.features){let{geometry:fe}=te;this.addFeature(te,fe,te.index,F,W)}}update(A,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(A,F,this.stateDependentLayers,W)}isEmpty(){return this.layoutVertexArray.length===0&&this.centroidVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(A){this.uploaded||(this.layoutVertexBuffer=A.createVertexBuffer(this.layoutVertexArray,ur),this.centroidVertexBuffer=A.createVertexBuffer(this.centroidVertexArray,ht.members,!0),this.indexBuffer=A.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(A),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy())}addFeature(A,F,W,te,fe){for(let pe of Cf(F,500)){let ze={x:0,y:0,vertexCount:0},Ke=0;for(let Pr of pe)Ke+=Pr.length;let ct=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(let Pr of pe){if(Pr.length===0||ms(Pr))continue;let zr=0;for(let ui=0;ui=1){let vn=Pr[ui-1];if(!Zo(yi,vn)){ct.vertexLength+4>Ye.MAX_VERTEX_ARRAY_LENGTH&&(ct=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));let zi=yi.sub(vn)._perp()._unit(),un=vn.dist(yi);zr+un>32768&&(zr=0),ts(this.layoutVertexArray,yi.x,yi.y,zi.x,zi.y,0,0,zr),ts(this.layoutVertexArray,yi.x,yi.y,zi.x,zi.y,0,1,zr),ze.x+=2*yi.x,ze.y+=2*yi.y,ze.vertexCount+=2,zr+=un,ts(this.layoutVertexArray,vn.x,vn.y,zi.x,zi.y,0,0,zr),ts(this.layoutVertexArray,vn.x,vn.y,zi.x,zi.y,0,1,zr),ze.x+=2*vn.x,ze.y+=2*vn.y,ze.vertexCount+=2;let Tn=ct.vertexLength;this.indexArray.emplaceBack(Tn,Tn+2,Tn+1),this.indexArray.emplaceBack(Tn+1,Tn+2,Tn+3),ct.vertexLength+=4,ct.primitiveLength+=2}}}}if(ct.vertexLength+Ke>Ye.MAX_VERTEX_ARRAY_LENGTH&&(ct=this.segments.prepareSegment(Ke,this.layoutVertexArray,this.indexArray)),Ja[A.type]!=="Polygon")continue;let Lt=[],$t=[],fr=ct.vertexLength;for(let Pr of pe)if(Pr.length!==0){Pr!==pe[0]&&$t.push(Lt.length/2);for(let zr=0;zrHa)||R.y===A.y&&(R.y<0||R.y>Ha)}function ms(R){return R.every(A=>A.x<0)||R.every(A=>A.x>Ha)||R.every(A=>A.y<0)||R.every(A=>A.y>Ha)}let ou;Fi("FillExtrusionBucket",so,{omit:["layers","features"]});var Cv={get paint(){return ou=ou||new ue({"fill-extrusion-opacity":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new oo(ce["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Vc(ce["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new oo(ce["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new oo(ce["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})}};class Lv extends B{constructor(A){super(A,Cv)}createBucket(A){return new so(A)}queryRadius(){return Hn(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}queryIntersectsFeature(A,F,W,te,fe,pe,ze,Ke){let ct=en(A,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),pe.angle,ze),Lt=this.paint.get("fill-extrusion-height").evaluate(F,W),$t=this.paint.get("fill-extrusion-base").evaluate(F,W),fr=function(Pr,zr,ui,yi){let vn=[];for(let zi of Pr){let un=[zi.x,zi.y,0,1];Bn(un,un,zr),vn.push(new u(un[0]/un[3],un[1]/un[3]))}return vn}(ct,Ke),mr=function(Pr,zr,ui,yi){let vn=[],zi=[],un=yi[8]*zr,Tn=yi[9]*zr,pa=yi[10]*zr,ro=yi[11]*zr,Vo=yi[8]*ui,Xa=yi[9]*ui,sa=yi[10]*ui,Mo=yi[11]*ui;for(let fo of Pr){let lo=[],Xn=[];for(let Ro of fo){let uo=Ro.x,$o=Ro.y,Ju=yi[0]*uo+yi[4]*$o+yi[12],qu=yi[1]*uo+yi[5]*$o+yi[13],Mh=yi[2]*uo+yi[6]*$o+yi[14],Qv=yi[3]*uo+yi[7]*$o+yi[15],ld=Mh+pa,Eh=Qv+ro,Gd=Ju+Vo,Hd=qu+Xa,jd=Mh+sa,Af=Qv+Mo,kh=new u((Ju+un)/Eh,(qu+Tn)/Eh);kh.z=ld/Eh,lo.push(kh);let Ed=new u(Gd/Af,Hd/Af);Ed.z=jd/Af,Xn.push(Ed)}vn.push(lo),zi.push(Xn)}return[vn,zi]}(te,$t,Lt,Ke);return function(Pr,zr,ui){let yi=1/0;bt(ui,zr)&&(yi=Kv(ui,zr[0]));for(let vn=0;vnF.id),this.index=A.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(F=>{this.gradients[F.id]={}}),this.layoutVertexArray=new Lu,this.layoutVertexArray2=new au,this.indexArray=new se,this.programConfigurations=new Ms(A.layers,A.zoom),this.segments=new Ye,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(A,F,W){this.hasPattern=at("line",this.layers,F);let te=this.layers[0].layout.get("line-sort-key"),fe=!te.isConstant(),pe=[];for(let{feature:ze,id:Ke,index:ct,sourceLayerIndex:Lt}of A){let $t=this.layers[0]._featureFilter.needGeometry,fr=Sl(ze,$t);if(!this.layers[0]._featureFilter.filter(new rs(this.zoom),fr,W))continue;let mr=fe?te.evaluate(fr,{},W):void 0,Pr={id:Ke,properties:ze.properties,type:ze.type,sourceLayerIndex:Lt,index:ct,geometry:$t?fr.geometry:$s(ze),patterns:{},sortKey:mr};pe.push(Pr)}fe&&pe.sort((ze,Ke)=>ze.sortKey-Ke.sortKey);for(let ze of pe){let{geometry:Ke,index:ct,sourceLayerIndex:Lt}=ze;if(this.hasPattern){let $t=Ct("line",this.layers,ze,this.zoom,F);this.patternFeatures.push($t)}else this.addFeature(ze,Ke,ct,W,{});F.featureIndex.insert(A[ct].feature,Ke,ct,Lt,this.index)}}update(A,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(A,F,this.stateDependentLayers,W)}addFeatures(A,F,W){for(let te of this.patternFeatures)this.addFeature(te,te.geometry,te.index,F,W)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(A){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=A.createVertexBuffer(this.layoutVertexArray2,gp)),this.layoutVertexBuffer=A.createVertexBuffer(this.layoutVertexArray,pp),this.indexBuffer=A.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(A),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(A){if(A.properties&&Object.prototype.hasOwnProperty.call(A.properties,"mapbox_clip_start")&&Object.prototype.hasOwnProperty.call(A.properties,"mapbox_clip_end"))return{start:+A.properties.mapbox_clip_start,end:+A.properties.mapbox_clip_end}}addFeature(A,F,W,te,fe){let pe=this.layers[0].layout,ze=pe.get("line-join").evaluate(A,{}),Ke=pe.get("line-cap"),ct=pe.get("line-miter-limit"),Lt=pe.get("line-round-limit");this.lineClips=this.lineFeatureClips(A);for(let $t of F)this.addLine($t,A,ze,Ke,ct,Lt);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,A,W,fe,te)}addLine(A,F,W,te,fe,pe){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let yi=0;yi=2&&A[Ke-1].equals(A[Ke-2]);)Ke--;let ct=0;for(;ct0;if(ro&&yi>ct){let Mo=fr.dist(mr);if(Mo>2*Lt){let fo=fr.sub(fr.sub(mr)._mult(Lt/Mo)._round());this.updateDistance(mr,fo),this.addCurrentVertex(fo,zr,0,0,$t),mr=fo}}let Xa=mr&&Pr,sa=Xa?W:ze?"butt":te;if(Xa&&sa==="round"&&(Tnfe&&(sa="bevel"),sa==="bevel"&&(Tn>2&&(sa="flipbevel"),Tn100)vn=ui.mult(-1);else{let Mo=Tn*zr.add(ui).mag()/zr.sub(ui).mag();vn._perp()._mult(Mo*(Vo?-1:1))}this.addCurrentVertex(fr,vn,0,0,$t),this.addCurrentVertex(fr,vn.mult(-1),0,0,$t)}else if(sa==="bevel"||sa==="fakeround"){let Mo=-Math.sqrt(Tn*Tn-1),fo=Vo?Mo:0,lo=Vo?0:Mo;if(mr&&this.addCurrentVertex(fr,zr,fo,lo,$t),sa==="fakeround"){let Xn=Math.round(180*pa/Math.PI/20);for(let Ro=1;Ro2*Lt){let fo=fr.add(Pr.sub(fr)._mult(Lt/Mo)._round());this.updateDistance(fr,fo),this.addCurrentVertex(fo,ui,0,0,$t),fr=fo}}}}addCurrentVertex(A,F,W,te,fe,pe=!1){let ze=F.y*te-F.x,Ke=-F.y-F.x*te;this.addHalfVertex(A,F.x+F.y*W,F.y-F.x*W,pe,!1,W,fe),this.addHalfVertex(A,ze,Ke,pe,!0,-te,fe),this.distance>Pv/2&&this.totalDistance===0&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(A,F,W,te,fe,pe))}addHalfVertex({x:A,y:F},W,te,fe,pe,ze,Ke){let ct=.5*(this.lineClips?this.scaledDistance*(Pv-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((A<<1)+(fe?1:0),(F<<1)+(pe?1:0),Math.round(63*W)+128,Math.round(63*te)+128,1+(ze===0?0:ze<0?-1:1)|(63&ct)<<2,ct>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);let Lt=Ke.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Lt),Ke.primitiveLength++),pe?this.e2=Lt:this.e1=Lt}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(A,F){this.distance+=A.dist(F),this.updateScaledDistance()}}let Iv,ay;Fi("LineBucket",Jv,{omit:["layers","patternFeatures"]});var fg={get paint(){return ay=ay||new ue({"line-opacity":new oo(ce.paint_line["line-opacity"]),"line-color":new oo(ce.paint_line["line-color"]),"line-translate":new Ua(ce.paint_line["line-translate"]),"line-translate-anchor":new Ua(ce.paint_line["line-translate-anchor"]),"line-width":new oo(ce.paint_line["line-width"]),"line-gap-width":new oo(ce.paint_line["line-gap-width"]),"line-offset":new oo(ce.paint_line["line-offset"]),"line-blur":new oo(ce.paint_line["line-blur"]),"line-dasharray":new hc(ce.paint_line["line-dasharray"]),"line-pattern":new Vc(ce.paint_line["line-pattern"]),"line-gradient":new Ku(ce.paint_line["line-gradient"])})},get layout(){return Iv=Iv||new ue({"line-cap":new Ua(ce.layout_line["line-cap"]),"line-join":new oo(ce.layout_line["line-join"]),"line-miter-limit":new Ua(ce.layout_line["line-miter-limit"]),"line-round-limit":new Ua(ce.layout_line["line-round-limit"]),"line-sort-key":new oo(ce.layout_line["line-sort-key"])})}};class oh extends oo{possiblyEvaluate(A,F){return F=new rs(Math.floor(F.zoom),{now:F.now,fadeDuration:F.fadeDuration,zoomHistory:F.zoomHistory,transition:F.transition}),super.possiblyEvaluate(A,F)}evaluate(A,F,W,te){return F=L({},F,{zoom:Math.floor(F.zoom)}),super.evaluate(A,F,W,te)}}let hg;class oy extends B{constructor(A){super(A,fg),this.gradientVersion=0,hg||(hg=new oh(fg.paint.properties["line-width"].specification),hg.useIntegerZoom=!0)}_handleSpecialPaintPropertyUpdate(A){if(A==="line-gradient"){let F=this.gradientExpression();this.stepInterpolant=!!function(W){return W._styleExpression!==void 0}(F)&&F._styleExpression.expression instanceof _n,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression}recalculate(A,F){super.recalculate(A,F),this.paint._values["line-floorwidth"]=hg.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,A)}createBucket(A){return new Jv(A)}queryRadius(A){let F=A,W=jh(Ei("line-width",this,F),Ei("line-gap-width",this,F)),te=Ei("line-offset",this,F);return W/2+Math.abs(te)+Hn(this.paint.get("line-translate"))}queryIntersectsFeature(A,F,W,te,fe,pe,ze){let Ke=en(A,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),pe.angle,ze),ct=ze/2*jh(this.paint.get("line-width").evaluate(F,W),this.paint.get("line-gap-width").evaluate(F,W)),Lt=this.paint.get("line-offset").evaluate(F,W);return Lt&&(te=function($t,fr){let mr=[];for(let Pr=0;Pr<$t.length;Pr++){let zr=$t[Pr],ui=[];for(let yi=0;yi=3){for(let ui=0;ui0?A+2*R:R}let rm=qe([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),b1=qe([{name:"a_projected_pos",components:3,type:"Float32"}],4);qe([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);let w1=qe([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"},{name:"a_box_real",components:2,type:"Int16"}]);qe([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);let sy=qe([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),im=qe([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function nm(R,A,F){return R.sections.forEach(W=>{W.text=function(te,fe,pe){let ze=fe.layout.get("text-transform").evaluate(pe,{});return ze==="uppercase"?te=te.toLocaleUpperCase():ze==="lowercase"&&(te=te.toLocaleLowerCase()),ys.applyArabicShaping&&(te=ys.applyArabicShaping(te)),te}(W.text,A,F)}),R}qe([{name:"triangle",components:3,type:"Uint16"}]),qe([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),qe([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"}]),qe([{type:"Float32",name:"offsetX"}]),qe([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),qe([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);let vc={"!":"\uFE15","#":"\uFF03",$:"\uFF04","%":"\uFF05","&":"\uFF06","(":"\uFE35",")":"\uFE36","*":"\uFF0A","+":"\uFF0B",",":"\uFE10","-":"\uFE32",".":"\u30FB","/":"\uFF0F",":":"\uFE13",";":"\uFE14","<":"\uFE3F","=":"\uFF1D",">":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};var eu=24,Sd=wu,ly=function(R,A,F,W,te){var fe,pe,ze=8*te-W-1,Ke=(1<>1,Lt=-7,$t=F?te-1:0,fr=F?-1:1,mr=R[A+$t];for($t+=fr,fe=mr&(1<<-Lt)-1,mr>>=-Lt,Lt+=ze;Lt>0;fe=256*fe+R[A+$t],$t+=fr,Lt-=8);for(pe=fe&(1<<-Lt)-1,fe>>=-Lt,Lt+=W;Lt>0;pe=256*pe+R[A+$t],$t+=fr,Lt-=8);if(fe===0)fe=1-ct;else{if(fe===Ke)return pe?NaN:1/0*(mr?-1:1);pe+=Math.pow(2,W),fe-=ct}return(mr?-1:1)*pe*Math.pow(2,fe-W)},T1=function(R,A,F,W,te,fe){var pe,ze,Ke,ct=8*fe-te-1,Lt=(1<>1,fr=te===23?Math.pow(2,-24)-Math.pow(2,-77):0,mr=W?0:fe-1,Pr=W?1:-1,zr=A<0||A===0&&1/A<0?1:0;for(A=Math.abs(A),isNaN(A)||A===1/0?(ze=isNaN(A)?1:0,pe=Lt):(pe=Math.floor(Math.log(A)/Math.LN2),A*(Ke=Math.pow(2,-pe))<1&&(pe--,Ke*=2),(A+=pe+$t>=1?fr/Ke:fr*Math.pow(2,1-$t))*Ke>=2&&(pe++,Ke/=2),pe+$t>=Lt?(ze=0,pe=Lt):pe+$t>=1?(ze=(A*Ke-1)*Math.pow(2,te),pe+=$t):(ze=A*Math.pow(2,$t-1)*Math.pow(2,te),pe=0));te>=8;R[F+mr]=255&ze,mr+=Pr,ze/=256,te-=8);for(pe=pe<0;R[F+mr]=255&pe,mr+=Pr,pe/=256,ct-=8);R[F+mr-Pr]|=128*zr};function wu(R){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(R)?R:new Uint8Array(R||0),this.pos=0,this.type=0,this.length=this.buf.length}wu.Varint=0,wu.Fixed64=1,wu.Bytes=2,wu.Fixed32=5;var Nx=4294967296,am=1/Nx,Ew=typeof TextDecoder=="undefined"?null:new TextDecoder("utf-8");function Rv(R){return R.type===wu.Bytes?R.readVarint()+R.pos:R.pos+1}function om(R,A,F){return F?4294967296*A+(R>>>0):4294967296*(A>>>0)+(R>>>0)}function kw(R,A,F){var W=A<=16383?1:A<=2097151?2:A<=268435455?3:Math.floor(Math.log(A)/(7*Math.LN2));F.realloc(W);for(var te=F.pos-1;te>=R;te--)F.buf[te+W]=F.buf[te]}function Ux(R,A){for(var F=0;F>>8,R[F+2]=A>>>16,R[F+3]=A>>>24}function mC(R,A){return(R[A]|R[A+1]<<8|R[A+2]<<16)+(R[A+3]<<24)}wu.prototype={destroy:function(){this.buf=null},readFields:function(R,A,F){for(F=F||this.length;this.pos>3,fe=this.pos;this.type=7&W,R(te,A,this),this.pos===fe&&this.skip(W)}return A},readMessage:function(R,A){return this.readFields(R,A,this.readVarint()+this.pos)},readFixed32:function(){var R=uy(this.buf,this.pos);return this.pos+=4,R},readSFixed32:function(){var R=mC(this.buf,this.pos);return this.pos+=4,R},readFixed64:function(){var R=uy(this.buf,this.pos)+uy(this.buf,this.pos+4)*Nx;return this.pos+=8,R},readSFixed64:function(){var R=uy(this.buf,this.pos)+mC(this.buf,this.pos+4)*Nx;return this.pos+=8,R},readFloat:function(){var R=ly(this.buf,this.pos,!0,23,4);return this.pos+=4,R},readDouble:function(){var R=ly(this.buf,this.pos,!0,52,8);return this.pos+=8,R},readVarint:function(R){var A,F,W=this.buf;return A=127&(F=W[this.pos++]),F<128?A:(A|=(127&(F=W[this.pos++]))<<7,F<128?A:(A|=(127&(F=W[this.pos++]))<<14,F<128?A:(A|=(127&(F=W[this.pos++]))<<21,F<128?A:function(te,fe,pe){var ze,Ke,ct=pe.buf;if(ze=(112&(Ke=ct[pe.pos++]))>>4,Ke<128||(ze|=(127&(Ke=ct[pe.pos++]))<<3,Ke<128)||(ze|=(127&(Ke=ct[pe.pos++]))<<10,Ke<128)||(ze|=(127&(Ke=ct[pe.pos++]))<<17,Ke<128)||(ze|=(127&(Ke=ct[pe.pos++]))<<24,Ke<128)||(ze|=(1&(Ke=ct[pe.pos++]))<<31,Ke<128))return om(te,ze,fe);throw new Error("Expected varint not more than 10 bytes")}(A|=(15&(F=W[this.pos]))<<28,R,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var R=this.readVarint();return R%2==1?(R+1)/-2:R/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var R=this.readVarint()+this.pos,A=this.pos;return this.pos=R,R-A>=12&&Ew?function(F,W,te){return Ew.decode(F.subarray(W,te))}(this.buf,A,R):function(F,W,te){for(var fe="",pe=W;pe239?4:Lt>223?3:Lt>191?2:1;if(pe+fr>te)break;fr===1?Lt<128&&($t=Lt):fr===2?(192&(ze=F[pe+1]))==128&&($t=(31&Lt)<<6|63&ze)<=127&&($t=null):fr===3?(Ke=F[pe+2],(192&(ze=F[pe+1]))==128&&(192&Ke)==128&&(($t=(15&Lt)<<12|(63&ze)<<6|63&Ke)<=2047||$t>=55296&&$t<=57343)&&($t=null)):fr===4&&(Ke=F[pe+2],ct=F[pe+3],(192&(ze=F[pe+1]))==128&&(192&Ke)==128&&(192&ct)==128&&(($t=(15&Lt)<<18|(63&ze)<<12|(63&Ke)<<6|63&ct)<=65535||$t>=1114112)&&($t=null)),$t===null?($t=65533,fr=1):$t>65535&&($t-=65536,fe+=String.fromCharCode($t>>>10&1023|55296),$t=56320|1023&$t),fe+=String.fromCharCode($t),pe+=fr}return fe}(this.buf,A,R)},readBytes:function(){var R=this.readVarint()+this.pos,A=this.buf.subarray(this.pos,R);return this.pos=R,A},readPackedVarint:function(R,A){if(this.type!==wu.Bytes)return R.push(this.readVarint(A));var F=Rv(this);for(R=R||[];this.pos127;);else if(A===wu.Bytes)this.pos=this.readVarint()+this.pos;else if(A===wu.Fixed32)this.pos+=4;else{if(A!==wu.Fixed64)throw new Error("Unimplemented type: "+A);this.pos+=8}},writeTag:function(R,A){this.writeVarint(R<<3|A)},realloc:function(R){for(var A=this.length||16;A268435455||R<0?function(A,F){var W,te;if(A>=0?(W=A%4294967296|0,te=A/4294967296|0):(te=~(-A/4294967296),4294967295^(W=~(-A%4294967296))?W=W+1|0:(W=0,te=te+1|0)),A>=18446744073709552e3||A<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");F.realloc(10),function(fe,pe,ze){ze.buf[ze.pos++]=127&fe|128,fe>>>=7,ze.buf[ze.pos++]=127&fe|128,fe>>>=7,ze.buf[ze.pos++]=127&fe|128,fe>>>=7,ze.buf[ze.pos++]=127&fe|128,ze.buf[ze.pos]=127&(fe>>>=7)}(W,0,F),function(fe,pe){var ze=(7&fe)<<4;pe.buf[pe.pos++]|=ze|((fe>>>=3)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe)))))}(te,F)}(R,this):(this.realloc(4),this.buf[this.pos++]=127&R|(R>127?128:0),R<=127||(this.buf[this.pos++]=127&(R>>>=7)|(R>127?128:0),R<=127||(this.buf[this.pos++]=127&(R>>>=7)|(R>127?128:0),R<=127||(this.buf[this.pos++]=R>>>7&127))))},writeSVarint:function(R){this.writeVarint(R<0?2*-R-1:2*R)},writeBoolean:function(R){this.writeVarint(!!R)},writeString:function(R){R=String(R),this.realloc(4*R.length),this.pos++;var A=this.pos;this.pos=function(W,te,fe){for(var pe,ze,Ke=0;Ke55295&&pe<57344){if(!ze){pe>56319||Ke+1===te.length?(W[fe++]=239,W[fe++]=191,W[fe++]=189):ze=pe;continue}if(pe<56320){W[fe++]=239,W[fe++]=191,W[fe++]=189,ze=pe;continue}pe=ze-55296<<10|pe-56320|65536,ze=null}else ze&&(W[fe++]=239,W[fe++]=191,W[fe++]=189,ze=null);pe<128?W[fe++]=pe:(pe<2048?W[fe++]=pe>>6|192:(pe<65536?W[fe++]=pe>>12|224:(W[fe++]=pe>>18|240,W[fe++]=pe>>12&63|128),W[fe++]=pe>>6&63|128),W[fe++]=63&pe|128)}return fe}(this.buf,R,this.pos);var F=this.pos-A;F>=128&&kw(A,F,this),this.pos=A-1,this.writeVarint(F),this.pos+=F},writeFloat:function(R){this.realloc(4),T1(this.buf,R,this.pos,!0,23,4),this.pos+=4},writeDouble:function(R){this.realloc(8),T1(this.buf,R,this.pos,!0,52,8),this.pos+=8},writeBytes:function(R){var A=R.length;this.writeVarint(A),this.realloc(A);for(var F=0;F=128&&kw(F,W,this),this.pos=F-1,this.writeVarint(W),this.pos+=W},writeMessage:function(R,A,F){this.writeTag(R,wu.Bytes),this.writeRawMessage(A,F)},writePackedVarint:function(R,A){A.length&&this.writeMessage(R,Ux,A)},writePackedSVarint:function(R,A){A.length&&this.writeMessage(R,O9,A)},writePackedBoolean:function(R,A){A.length&&this.writeMessage(R,N9,A)},writePackedFloat:function(R,A){A.length&&this.writeMessage(R,q9,A)},writePackedDouble:function(R,A){A.length&&this.writeMessage(R,B9,A)},writePackedFixed32:function(R,A){A.length&&this.writeMessage(R,CQ,A)},writePackedSFixed32:function(R,A){A.length&&this.writeMessage(R,U9,A)},writePackedFixed64:function(R,A){A.length&&this.writeMessage(R,V9,A)},writePackedSFixed64:function(R,A){A.length&&this.writeMessage(R,G9,A)},writeBytesField:function(R,A){this.writeTag(R,wu.Bytes),this.writeBytes(A)},writeFixed32Field:function(R,A){this.writeTag(R,wu.Fixed32),this.writeFixed32(A)},writeSFixed32Field:function(R,A){this.writeTag(R,wu.Fixed32),this.writeSFixed32(A)},writeFixed64Field:function(R,A){this.writeTag(R,wu.Fixed64),this.writeFixed64(A)},writeSFixed64Field:function(R,A){this.writeTag(R,wu.Fixed64),this.writeSFixed64(A)},writeVarintField:function(R,A){this.writeTag(R,wu.Varint),this.writeVarint(A)},writeSVarintField:function(R,A){this.writeTag(R,wu.Varint),this.writeSVarint(A)},writeStringField:function(R,A){this.writeTag(R,wu.Bytes),this.writeString(A)},writeFloatField:function(R,A){this.writeTag(R,wu.Fixed32),this.writeFloat(A)},writeDoubleField:function(R,A){this.writeTag(R,wu.Fixed64),this.writeDouble(A)},writeBooleanField:function(R,A){this.writeVarintField(R,!!A)}};var iS=o(Sd);let nS=3;function LQ(R,A,F){R===1&&F.readMessage(H9,A)}function H9(R,A,F){if(R===3){let{id:W,bitmap:te,width:fe,height:pe,left:ze,top:Ke,advance:ct}=F.readMessage(yC,{});A.push({id:W,bitmap:new na({width:fe+2*nS,height:pe+2*nS},te),metrics:{width:fe,height:pe,left:ze,top:Ke,advance:ct}})}}function yC(R,A,F){R===1?A.id=F.readVarint():R===2?A.bitmap=F.readBytes():R===3?A.width=F.readVarint():R===4?A.height=F.readVarint():R===5?A.left=F.readSVarint():R===6?A.top=F.readSVarint():R===7&&(A.advance=F.readVarint())}let _C=nS;function aS(R){let A=0,F=0;for(let pe of R)A+=pe.w*pe.h,F=Math.max(F,pe.w);R.sort((pe,ze)=>ze.h-pe.h);let W=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(A/.95)),F),h:1/0}],te=0,fe=0;for(let pe of R)for(let ze=W.length-1;ze>=0;ze--){let Ke=W[ze];if(!(pe.w>Ke.w||pe.h>Ke.h)){if(pe.x=Ke.x,pe.y=Ke.y,fe=Math.max(fe,pe.y+pe.h),te=Math.max(te,pe.x+pe.w),pe.w===Ke.w&&pe.h===Ke.h){let ct=W.pop();ze=0&&W>=A&&Pw[this.text.charCodeAt(W)];W--)F--;this.text=this.text.substring(A,F),this.sectionIndex=this.sectionIndex.slice(A,F)}substring(A,F){let W=new A1;return W.text=this.text.substring(A,F),W.sectionIndex=this.sectionIndex.slice(A,F),W.sections=this.sections,W}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce((A,F)=>Math.max(A,this.sections[F].scale),0)}addTextSection(A,F){this.text+=A.text,this.sections.push(Gx.forText(A.scale,A.fontStack||F));let W=this.sections.length-1;for(let te=0;te=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Hx(R,A,F,W,te,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr){let zr=A1.fromFeature(R,te),ui;$t===i.ah.vertical&&zr.verticalizePunctuation();let{processBidirectionalText:yi,processStyledBidirectionalText:vn}=ys;if(yi&&zr.sections.length===1){ui=[];let Tn=yi(zr.toString(),S1(zr,ct,fe,A,W,mr));for(let pa of Tn){let ro=new A1;ro.text=pa,ro.sections=zr.sections;for(let Vo=0;Vo0&&tp>Df&&(Df=tp)}else{let Gc=ro[tu.fontStack],Zf=Gc&&Gc[$u];if(Zf&&Zf.rect)P1=Zf.rect,ff=Zf.metrics;else{let tp=pa[tu.fontStack],gg=tp&&tp[$u];if(!gg)continue;ff=gg.metrics}zv=(kh-tu.scale)*eu}ep?(Tn.verticalizable=!0,Wh.push({glyph:$u,imageName:v0,x:$o,y:Ju+zv,vertical:ep,scale:tu.scale,fontStack:tu.fontStack,sectionIndex:pc,metrics:ff,rect:P1}),$o+=Gp*tu.scale+Xn):(Wh.push({glyph:$u,imageName:v0,x:$o,y:Ju+zv,vertical:ep,scale:tu.scale,fontStack:tu.fontStack,sectionIndex:pc,metrics:ff,rect:P1}),$o+=ff.advance*tu.scale+Xn)}Wh.length!==0&&(qu=Math.max($o-Xn,qu),sm(Wh,0,Wh.length-1,Qv,Df)),$o=0;let Fv=sa*kh+Df;ud.lineOffset=Math.max(Df,Ed),Ju+=Fv,Mh=Math.max(Fv,Mh),++ld}var Eh;let Gd=Ju-Sh,{horizontalAlign:Hd,verticalAlign:jd}=Rw(Mo);(function(Af,kh,Ed,ud,Wh,Df,Fv,lv,tu){let pc=(kh-Ed)*Wh,$u=0;$u=Df!==Fv?-lv*ud-Sh:(-ud*tu+.5)*Fv;for(let zv of Af)for(let ff of zv.positionedGlyphs)ff.x+=pc,ff.y+=$u})(Tn.positionedLines,Qv,Hd,jd,qu,Mh,sa,Gd,Xa.length),Tn.top+=-jd*Gd,Tn.bottom=Tn.top+Gd,Tn.left+=-Hd*qu,Tn.right=Tn.left+qu}(un,A,F,W,ui,pe,ze,Ke,$t,ct,fr,Pr),!function(Tn){for(let pa of Tn)if(pa.positionedGlyphs.length!==0)return!1;return!0}(zi)&&un}let Pw={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},j9={10:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},W9={40:!0};function xC(R,A,F,W,te,fe){if(A.imageName){let pe=W[A.imageName];return pe?pe.displaySize[0]*A.scale*eu/fe+te:0}{let pe=F[A.fontStack],ze=pe&&pe[R];return ze?ze.metrics.advance*A.scale+te:0}}function bC(R,A,F,W){let te=Math.pow(R-A,2);return W?R=0,ct=0;for(let $t=0;$tct){let Lt=Math.ceil(fe/ct);te*=Lt/pe,pe=Lt}return{x1:W,y1:te,x2:W+fe,y2:te+pe}}function AC(R,A,F,W,te,fe){let pe=R.image,ze;if(pe.content){let ui=pe.content,yi=pe.pixelRatio||1;ze=[ui[0]/yi,ui[1]/yi,pe.displaySize[0]-ui[2]/yi,pe.displaySize[1]-ui[3]/yi]}let Ke=A.left*fe,ct=A.right*fe,Lt,$t,fr,mr;F==="width"||F==="both"?(mr=te[0]+Ke-W[3],$t=te[0]+ct+W[1]):(mr=te[0]+(Ke+ct-pe.displaySize[0])/2,$t=mr+pe.displaySize[0]);let Pr=A.top*fe,zr=A.bottom*fe;return F==="height"||F==="both"?(Lt=te[1]+Pr-W[0],fr=te[1]+zr+W[2]):(Lt=te[1]+(Pr+zr-pe.displaySize[1])/2,fr=Lt+pe.displaySize[1]),{image:pe,top:Lt,right:$t,bottom:fr,left:mr,collisionPadding:ze}}let Wx=255,d0=128,lm=Wx*d0;function SC(R,A){let{expression:F}=A;if(F.kind==="constant")return{kind:"constant",layoutSize:F.evaluate(new rs(R+1))};if(F.kind==="source")return{kind:"source"};{let{zoomStops:W,interpolationType:te}=F,fe=0;for(;fepe.id),this.index=A.index,this.pixelRatio=A.pixelRatio,this.sourceLayerIndex=A.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=Ri([]),this.placementViewportMatrix=Ri([]);let F=this.layers[0]._unevaluatedLayout._values;this.textSizeData=SC(this.zoom,F["text-size"]),this.iconSizeData=SC(this.zoom,F["icon-size"]);let W=this.layers[0].layout,te=W.get("symbol-sort-key"),fe=W.get("symbol-z-order");this.canOverlap=oS(W,"text-overlap","text-allow-overlap")!=="never"||oS(W,"icon-overlap","icon-allow-overlap")!=="never"||W.get("text-ignore-placement")||W.get("icon-ignore-placement"),this.sortFeaturesByKey=fe!=="viewport-y"&&!te.isConstant(),this.sortFeaturesByY=(fe==="viewport-y"||fe==="auto"&&!this.sortFeaturesByKey)&&this.canOverlap,W.get("symbol-placement")==="point"&&(this.writingModes=W.get("text-writing-mode").map(pe=>i.ah[pe])),this.stateDependentLayerIds=this.layers.filter(pe=>pe.isStateDependent()).map(pe=>pe.id),this.sourceID=A.sourceID}createArrays(){this.text=new uS(new Ms(this.layers,this.zoom,A=>/^text/.test(A))),this.icon=new uS(new Ms(this.layers,this.zoom,A=>/^icon/.test(A))),this.glyphOffsetArray=new Co,this.lineVertexArray=new Qa,this.symbolInstances=new $a,this.textAnchorOffsets=new Bo}calculateGlyphDependencies(A,F,W,te,fe){for(let pe=0;pe0)&&(pe.value.kind!=="constant"||pe.value.value.length>0),Lt=Ke.value.kind!=="constant"||!!Ke.value.value||Object.keys(Ke.parameters).length>0,$t=fe.get("symbol-sort-key");if(this.features=[],!ct&&!Lt)return;let fr=F.iconDependencies,mr=F.glyphDependencies,Pr=F.availableImages,zr=new rs(this.zoom);for(let{feature:ui,id:yi,index:vn,sourceLayerIndex:zi}of A){let un=te._featureFilter.needGeometry,Tn=Sl(ui,un);if(!te._featureFilter.filter(zr,Tn,W))continue;let pa,ro;if(un||(Tn.geometry=$s(ui)),ct){let Xa=te.getValueAndResolveTokens("text-field",Tn,W,Pr),sa=ri.factory(Xa),Mo=this.hasRTLText=this.hasRTLText||lS(sa);(!Mo||ys.getRTLTextPluginStatus()==="unavailable"||Mo&&ys.isParsed())&&(pa=nm(sa,te,Tn))}if(Lt){let Xa=te.getValueAndResolveTokens("icon-image",Tn,W,Pr);ro=Xa instanceof tn?Xa:tn.fromString(Xa)}if(!pa&&!ro)continue;let Vo=this.sortFeaturesByKey?$t.evaluate(Tn,{},W):void 0;if(this.features.push({id:yi,text:pa,icon:ro,index:vn,sourceLayerIndex:zi,geometry:Tn.geometry,properties:ui.properties,type:Z9[ui.type],sortKey:Vo}),ro&&(fr[ro.name]=!0),pa){let Xa=pe.evaluate(Tn,{},W).join(","),sa=fe.get("text-rotation-alignment")!=="viewport"&&fe.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(i.ah.vertical)>=0;for(let Mo of pa.sections)if(Mo.image)fr[Mo.image.name]=!0;else{let fo=Ka(pa.toString()),lo=Mo.fontStack||Xa,Xn=mr[lo]=mr[lo]||{};this.calculateGlyphDependencies(Mo.text,Xn,sa,this.allowVerticalPlacement,fo)}}}fe.get("symbol-placement")==="line"&&(this.features=function(ui){let yi={},vn={},zi=[],un=0;function Tn(Xa){zi.push(ui[Xa]),un++}function pa(Xa,sa,Mo){let fo=vn[Xa];return delete vn[Xa],vn[sa]=fo,zi[fo].geometry[0].pop(),zi[fo].geometry[0]=zi[fo].geometry[0].concat(Mo[0]),fo}function ro(Xa,sa,Mo){let fo=yi[sa];return delete yi[sa],yi[Xa]=fo,zi[fo].geometry[0].shift(),zi[fo].geometry[0]=Mo[0].concat(zi[fo].geometry[0]),fo}function Vo(Xa,sa,Mo){let fo=Mo?sa[0][sa[0].length-1]:sa[0][0];return`${Xa}:${fo.x}:${fo.y}`}for(let Xa=0;XaXa.geometry)}(this.features)),this.sortFeaturesByKey&&this.features.sort((ui,yi)=>ui.sortKey-yi.sortKey)}update(A,F,W){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(A,F,this.layers,W),this.icon.programConfigurations.updatePaintArrays(A,F,this.layers,W))}isEmpty(){return this.symbolInstances.length===0&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(A){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(A),this.iconCollisionBox.upload(A)),this.text.upload(A,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(A,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(A,F){let W=this.lineVertexArray.length;if(A.segment!==void 0){let te=A.dist(F[A.segment+1]),fe=A.dist(F[A.segment]),pe={};for(let ze=A.segment+1;ze=0;ze--)pe[ze]={x:F[ze].x,y:F[ze].y,tileUnitDistanceFromAnchor:fe},ze>0&&(fe+=F[ze-1].dist(F[ze]));for(let ze=0;ze0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(A,F){let W=A.placedSymbolArray.get(F),te=W.vertexStartIndex+4*W.numGlyphs;for(let fe=W.vertexStartIndex;fete[ze]-te[Ke]||fe[Ke]-fe[ze]),pe}addToSortKeyRanges(A,F){let W=this.sortKeyRanges[this.sortKeyRanges.length-1];W&&W.sortKey===F?W.symbolInstanceEnd=A+1:this.sortKeyRanges.push({sortKey:F,symbolInstanceStart:A,symbolInstanceEnd:A+1})}sortFeatures(A){if(this.sortFeaturesByY&&this.sortedAngle!==A&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(A),this.sortedAngle=A,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(let F of this.symbolInstanceIndexes){let W=this.symbolInstances.get(F);this.featureSortOrder.push(W.featureIndex),[W.rightJustifiedTextSymbolIndex,W.centerJustifiedTextSymbolIndex,W.leftJustifiedTextSymbolIndex].forEach((te,fe,pe)=>{te>=0&&pe.indexOf(te)===fe&&this.addIndicesForPlacedSymbol(this.text,te)}),W.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,W.verticalPlacedTextSymbolIndex),W.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,W.placedIconSymbolIndex),W.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,W.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}let Tf,Xx;Fi("SymbolBucket",M1,{omit:["layers","collisionBoxArray","features","compareText"]}),M1.MAX_GLYPHS=65535,M1.addDynamicAttributes=sS;var Fw={get paint(){return Xx=Xx||new ue({"icon-opacity":new oo(ce.paint_symbol["icon-opacity"]),"icon-color":new oo(ce.paint_symbol["icon-color"]),"icon-halo-color":new oo(ce.paint_symbol["icon-halo-color"]),"icon-halo-width":new oo(ce.paint_symbol["icon-halo-width"]),"icon-halo-blur":new oo(ce.paint_symbol["icon-halo-blur"]),"icon-translate":new Ua(ce.paint_symbol["icon-translate"]),"icon-translate-anchor":new Ua(ce.paint_symbol["icon-translate-anchor"]),"text-opacity":new oo(ce.paint_symbol["text-opacity"]),"text-color":new oo(ce.paint_symbol["text-color"],{runtimeType:er,getOverride:R=>R.textColor,hasOverride:R=>!!R.textColor}),"text-halo-color":new oo(ce.paint_symbol["text-halo-color"]),"text-halo-width":new oo(ce.paint_symbol["text-halo-width"]),"text-halo-blur":new oo(ce.paint_symbol["text-halo-blur"]),"text-translate":new Ua(ce.paint_symbol["text-translate"]),"text-translate-anchor":new Ua(ce.paint_symbol["text-translate-anchor"])})},get layout(){return Tf=Tf||new ue({"symbol-placement":new Ua(ce.layout_symbol["symbol-placement"]),"symbol-spacing":new Ua(ce.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Ua(ce.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new oo(ce.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Ua(ce.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Ua(ce.layout_symbol["icon-allow-overlap"]),"icon-overlap":new Ua(ce.layout_symbol["icon-overlap"]),"icon-ignore-placement":new Ua(ce.layout_symbol["icon-ignore-placement"]),"icon-optional":new Ua(ce.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Ua(ce.layout_symbol["icon-rotation-alignment"]),"icon-size":new oo(ce.layout_symbol["icon-size"]),"icon-text-fit":new Ua(ce.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Ua(ce.layout_symbol["icon-text-fit-padding"]),"icon-image":new oo(ce.layout_symbol["icon-image"]),"icon-rotate":new oo(ce.layout_symbol["icon-rotate"]),"icon-padding":new oo(ce.layout_symbol["icon-padding"]),"icon-keep-upright":new Ua(ce.layout_symbol["icon-keep-upright"]),"icon-offset":new oo(ce.layout_symbol["icon-offset"]),"icon-anchor":new oo(ce.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Ua(ce.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Ua(ce.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Ua(ce.layout_symbol["text-rotation-alignment"]),"text-field":new oo(ce.layout_symbol["text-field"]),"text-font":new oo(ce.layout_symbol["text-font"]),"text-size":new oo(ce.layout_symbol["text-size"]),"text-max-width":new oo(ce.layout_symbol["text-max-width"]),"text-line-height":new Ua(ce.layout_symbol["text-line-height"]),"text-letter-spacing":new oo(ce.layout_symbol["text-letter-spacing"]),"text-justify":new oo(ce.layout_symbol["text-justify"]),"text-radial-offset":new oo(ce.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Ua(ce.layout_symbol["text-variable-anchor"]),"text-variable-anchor-offset":new oo(ce.layout_symbol["text-variable-anchor-offset"]),"text-anchor":new oo(ce.layout_symbol["text-anchor"]),"text-max-angle":new Ua(ce.layout_symbol["text-max-angle"]),"text-writing-mode":new Ua(ce.layout_symbol["text-writing-mode"]),"text-rotate":new oo(ce.layout_symbol["text-rotate"]),"text-padding":new Ua(ce.layout_symbol["text-padding"]),"text-keep-upright":new Ua(ce.layout_symbol["text-keep-upright"]),"text-transform":new oo(ce.layout_symbol["text-transform"]),"text-offset":new oo(ce.layout_symbol["text-offset"]),"text-allow-overlap":new Ua(ce.layout_symbol["text-allow-overlap"]),"text-overlap":new Ua(ce.layout_symbol["text-overlap"]),"text-ignore-placement":new Ua(ce.layout_symbol["text-ignore-placement"]),"text-optional":new Ua(ce.layout_symbol["text-optional"])})}};class Zx{constructor(A){if(A.property.overrides===void 0)throw new Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=A.property.overrides?A.property.overrides.runtimeType:Vt,this.defaultValue=A}evaluate(A){if(A.formattedSection){let F=this.defaultValue.property.overrides;if(F&&F.hasOverride(A.formattedSection))return F.getOverride(A.formattedSection)}return A.feature&&A.featureState?this.defaultValue.evaluate(A.feature,A.featureState):this.defaultValue.property.specification.default}eachChild(A){this.defaultValue.isConstant()||A(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}Fi("FormatSectionOverride",Zx,{omit:["defaultValue"]});class cy extends B{constructor(A){super(A,Fw)}recalculate(A,F){if(super.recalculate(A,F),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout._values["icon-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout._values["text-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")==="map"?"map":"viewport"),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){let W=this.layout.get("text-writing-mode");if(W){let te=[];for(let fe of W)te.indexOf(fe)<0&&te.push(fe);this.layout._values["text-writing-mode"]=te}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()}getValueAndResolveTokens(A,F,W,te){let fe=this.layout.get(A).evaluate(F,{},W,te),pe=this._unevaluatedLayout._values[A];return pe.isDataDriven()||Dc(pe.value)||!fe?fe:function(ze,Ke){return Ke.replace(/{([^{}]+)}/g,(ct,Lt)=>ze&&Lt in ze?String(ze[Lt]):"")}(F.properties,fe)}createBucket(A){return new M1(A)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error("Should take a different path in FeatureIndex")}_setPaintOverrides(){for(let A of Fw.paint.overridableProperties){if(!cy.hasPaintOverride(this.layout,A))continue;let F=this.paint.get(A),W=new Zx(F),te=new Eu(W,F.property.specification),fe=null;fe=F.value.kind==="constant"||F.value.kind==="source"?new bc("source",te):new hu("composite",te,F.value.zoomStops),this.paint._values[A]=new xu(F.property,fe,F.parameters)}}_handleOverridablePaintPropertyUpdate(A,F,W){return!(!this.layout||F.isDataDriven()||W.isDataDriven())&&cy.hasPaintOverride(this.layout,A)}static hasPaintOverride(A,F){let W=A.get("text-field"),te=Fw.paint.properties[F],fe=!1,pe=ze=>{for(let Ke of ze)if(te.overrides&&te.overrides.hasOverride(Ke))return void(fe=!0)};if(W.value.kind==="constant"&&W.value.value instanceof ri)pe(W.value.value.sections);else if(W.value.kind==="source"){let ze=ct=>{fe||(ct instanceof ua&&Sn(ct.value)===ti?pe(ct.value.sections):ct instanceof Zl?pe(ct.sections):ct.eachChild(ze))},Ke=W.value;Ke._styleExpression&&ze(Ke._styleExpression.expression)}return fe}}let MC;var Yx={get paint(){return MC=MC||new ue({"background-color":new Ua(ce.paint_background["background-color"]),"background-pattern":new hc(ce.paint_background["background-pattern"]),"background-opacity":new Ua(ce.paint_background["background-opacity"])})}};class K9 extends B{constructor(A){super(A,Yx)}}let cS;var EC={get paint(){return cS=cS||new ue({"raster-opacity":new Ua(ce.paint_raster["raster-opacity"]),"raster-hue-rotate":new Ua(ce.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new Ua(ce.paint_raster["raster-brightness-min"]),"raster-brightness-max":new Ua(ce.paint_raster["raster-brightness-max"]),"raster-saturation":new Ua(ce.paint_raster["raster-saturation"]),"raster-contrast":new Ua(ce.paint_raster["raster-contrast"]),"raster-resampling":new Ua(ce.paint_raster["raster-resampling"]),"raster-fade-duration":new Ua(ce.paint_raster["raster-fade-duration"])})}};class Kx extends B{constructor(A){super(A,EC)}}class fS extends B{constructor(A){super(A,{}),this.onAdd=F=>{this.implementation.onAdd&&this.implementation.onAdd(F,F.painter.context.gl)},this.onRemove=F=>{this.implementation.onRemove&&this.implementation.onRemove(F,F.painter.context.gl)},this.implementation=A}is3D(){return this.implementation.renderingMode==="3d"}hasOffscreenPass(){return this.implementation.prerender!==void 0}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){throw new Error("Custom layers cannot be serialized")}}class hS{constructor(A){this._methodToThrottle=A,this._triggered=!1,typeof MessageChannel!="undefined"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(()=>{this._triggered=!1,this._methodToThrottle()},0))}remove(){delete this._channel,this._methodToThrottle=()=>{}}}let dS=63710088e-1;class dg{constructor(A,F){if(isNaN(A)||isNaN(F))throw new Error(`Invalid LngLat object: (${A}, ${F})`);if(this.lng=+A,this.lat=+F,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new dg(S(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(A){let F=Math.PI/180,W=this.lat*F,te=A.lat*F,fe=Math.sin(W)*Math.sin(te)+Math.cos(W)*Math.cos(te)*Math.cos((A.lng-this.lng)*F);return dS*Math.acos(Math.min(fe,1))}static convert(A){if(A instanceof dg)return A;if(Array.isArray(A)&&(A.length===2||A.length===3))return new dg(Number(A[0]),Number(A[1]));if(!Array.isArray(A)&&typeof A=="object"&&A!==null)return new dg(Number("lng"in A?A.lng:A.lon),Number(A.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")}}let E1=2*Math.PI*dS;function kC(R){return E1*Math.cos(R*Math.PI/180)}function zw(R){return(180+R)/360}function CC(R){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+R*Math.PI/360)))/360}function Ow(R,A){return R/kC(A)}function Jx(R){return 360/Math.PI*Math.atan(Math.exp((180-360*R)*Math.PI/180))-90}class $x{constructor(A,F,W=0){this.x=+A,this.y=+F,this.z=+W}static fromLngLat(A,F=0){let W=dg.convert(A);return new $x(zw(W.lng),CC(W.lat),Ow(F,W.lat))}toLngLat(){return new dg(360*this.x-180,Jx(this.y))}toAltitude(){return this.z*kC(Jx(this.y))}meterInMercatorCoordinateUnits(){return 1/E1*(A=Jx(this.y),1/Math.cos(A*Math.PI/180));var A}}function mp(R,A,F){var W=2*Math.PI*6378137/256/Math.pow(2,F);return[R*W-2*Math.PI*6378137/2,A*W-2*Math.PI*6378137/2]}class vS{constructor(A,F,W){if(!function(te,fe,pe){return!(te<0||te>25||pe<0||pe>=Math.pow(2,te)||fe<0||fe>=Math.pow(2,te))}(A,F,W))throw new Error(`x=${F}, y=${W}, z=${A} outside of bounds. 0<=x<${Math.pow(2,A)}, 0<=y<${Math.pow(2,A)} 0<=z<=25 `);this.z=A,this.x=F,this.y=W,this.key=Qx(0,A,A,F,W)}equals(A){return this.z===A.z&&this.x===A.x&&this.y===A.y}url(A,F,W){let te=(pe=this.y,ze=this.z,Ke=mp(256*(fe=this.x),256*(pe=Math.pow(2,ze)-pe-1),ze),ct=mp(256*(fe+1),256*(pe+1),ze),Ke[0]+","+Ke[1]+","+ct[0]+","+ct[1]);var fe,pe,ze,Ke,ct;let Lt=function($t,fr,mr){let Pr,zr="";for(let ui=$t;ui>0;ui--)Pr=1<1?"@2x":"").replace(/{quadkey}/g,Lt).replace(/{bbox-epsg-3857}/g,te)}isChildOf(A){let F=this.z-A.z;return F>0&&A.x===this.x>>F&&A.y===this.y>>F}getTilePoint(A){let F=Math.pow(2,this.z);return new u((A.x*F-this.x)*Ha,(A.y*F-this.y)*Ha)}toString(){return`${this.z}/${this.x}/${this.y}`}}class LC{constructor(A,F){this.wrap=A,this.canonical=F,this.key=Qx(A,F.z,F.z,F.x,F.y)}}class $v{constructor(A,F,W,te,fe){if(A= z; overscaledZ = ${A}; z = ${W}`);this.overscaledZ=A,this.wrap=F,this.canonical=new vS(W,+te,+fe),this.key=Qx(F,A,W,te,fe)}clone(){return new $v(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(A){return this.overscaledZ===A.overscaledZ&&this.wrap===A.wrap&&this.canonical.equals(A.canonical)}scaledTo(A){if(A>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${A}; overscaledZ = ${this.overscaledZ}`);let F=this.canonical.z-A;return A>this.canonical.z?new $v(A,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new $v(A,this.wrap,A,this.canonical.x>>F,this.canonical.y>>F)}calculateScaledKey(A,F){if(A>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${A}; overscaledZ = ${this.overscaledZ}`);let W=this.canonical.z-A;return A>this.canonical.z?Qx(this.wrap*+F,A,this.canonical.z,this.canonical.x,this.canonical.y):Qx(this.wrap*+F,A,A,this.canonical.x>>W,this.canonical.y>>W)}isChildOf(A){if(A.wrap!==this.wrap)return!1;let F=this.canonical.z-A.canonical.z;return A.overscaledZ===0||A.overscaledZ>F&&A.canonical.y===this.canonical.y>>F}children(A){if(this.overscaledZ>=A)return[new $v(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];let F=this.canonical.z+1,W=2*this.canonical.x,te=2*this.canonical.y;return[new $v(F,this.wrap,F,W,te),new $v(F,this.wrap,F,W+1,te),new $v(F,this.wrap,F,W,te+1),new $v(F,this.wrap,F,W+1,te+1)]}isLessThan(A){return this.wrapA.wrap)&&(this.overscaledZA.overscaledZ)&&(this.canonical.xA.canonical.x)&&this.canonical.ythis.max&&(this.max=$t),$t=this.dim+1||F<-1||F>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(F+1)*this.stride+(A+1)}unpack(A,F,W){return A*this.redFactor+F*this.greenFactor+W*this.blueFactor-this.baseShift}getPixels(){return new Ki({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(A,F,W){if(this.dim!==A.dim)throw new Error("dem dimension mismatch");let te=F*this.dim,fe=F*this.dim+this.dim,pe=W*this.dim,ze=W*this.dim+this.dim;switch(F){case-1:te=fe-1;break;case 1:fe=te+1}switch(W){case-1:pe=ze-1;break;case 1:ze=pe+1}let Ke=-F*this.dim,ct=-W*this.dim;for(let Lt=pe;Lt=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${A} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[A]}}class pS{constructor(A,F,W,te,fe){this.type="Feature",this._vectorTileFeature=A,A._z=F,A._x=W,A._y=te,this.properties=A.properties,this.id=fe}get geometry(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(A){this._geometry=A}toJSON(){let A={geometry:this.geometry};for(let F in this)F!=="_geometry"&&F!=="_vectorTileFeature"&&(A[F]=this[F]);return A}}class fy{constructor(A,F){this.tileID=A,this.x=A.canonical.x,this.y=A.canonical.y,this.z=A.canonical.z,this.grid=new Qi(Ha,16,0),this.grid3D=new Qi(Ha,16,0),this.featureIndexArray=new Ts,this.promoteId=F}insert(A,F,W,te,fe,pe){let ze=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(W,te,fe);let Ke=pe?this.grid3D:this.grid;for(let ct=0;ct=0&&$t[3]>=0&&Ke.insert(ze,$t[0],$t[1],$t[2],$t[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new br.VectorTile(new iS(this.rawTileData)).layers,this.sourceLayerCoder=new IC(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(A,F,W,te){this.loadVTLayers();let fe=A.params||{},pe=Ha/A.tileSize/A.scale,ze=Fc(fe.filter),Ke=A.queryGeometry,ct=A.queryPadding*pe,Lt=DC(Ke),$t=this.grid.query(Lt.minX-ct,Lt.minY-ct,Lt.maxX+ct,Lt.maxY+ct),fr=DC(A.cameraQueryGeometry),mr=this.grid3D.query(fr.minX-ct,fr.minY-ct,fr.maxX+ct,fr.maxY+ct,(ui,yi,vn,zi)=>function(un,Tn,pa,ro,Vo){for(let sa of un)if(Tn<=sa.x&&pa<=sa.y&&ro>=sa.x&&Vo>=sa.y)return!0;let Xa=[new u(Tn,pa),new u(Tn,Vo),new u(ro,Vo),new u(ro,pa)];if(un.length>2){for(let sa of Xa)if(Ui(un,sa))return!0}for(let sa=0;sa(zi||(zi=$s(un)),Tn.queryIntersectsFeature(Ke,un,pa,zi,this.z,A.transform,pe,A.pixelPosMatrix)))}return Pr}loadMatchingFeature(A,F,W,te,fe,pe,ze,Ke,ct,Lt,$t){let fr=this.bucketLayerIDs[F];if(pe&&!function(ui,yi){for(let vn=0;vn=0)return!0;return!1}(pe,fr))return;let mr=this.sourceLayerCoder.decode(W),Pr=this.vtLayers[mr].feature(te);if(fe.needGeometry){let ui=Sl(Pr,!0);if(!fe.filter(new rs(this.tileID.overscaledZ),ui,this.tileID.canonical))return}else if(!fe.filter(new rs(this.tileID.overscaledZ),Pr))return;let zr=this.getId(Pr,mr);for(let ui=0;ui{let ze=A instanceof Ac?A.get(pe):null;return ze&&ze.evaluate?ze.evaluate(F,W,te):ze})}function DC(R){let A=1/0,F=1/0,W=-1/0,te=-1/0;for(let fe of R)A=Math.min(A,fe.x),F=Math.min(F,fe.y),W=Math.max(W,fe.x),te=Math.max(te,fe.y);return{minX:A,minY:F,maxX:W,maxY:te}}function J9(R,A){return A-R}function FC(R,A,F,W,te){let fe=[];for(let pe=0;pe=W&&$t.x>=W||(Lt.x>=W?Lt=new u(W,Lt.y+(W-Lt.x)/($t.x-Lt.x)*($t.y-Lt.y))._round():$t.x>=W&&($t=new u(W,Lt.y+(W-Lt.x)/($t.x-Lt.x)*($t.y-Lt.y))._round()),Lt.y>=te&&$t.y>=te||(Lt.y>=te?Lt=new u(Lt.x+(te-Lt.y)/($t.y-Lt.y)*($t.x-Lt.x),te)._round():$t.y>=te&&($t=new u(Lt.x+(te-Lt.y)/($t.y-Lt.y)*($t.x-Lt.x),te)._round()),Ke&&Lt.equals(Ke[Ke.length-1])||(Ke=[Lt],fe.push(Ke)),Ke.push($t)))))}}return fe}Fi("FeatureIndex",fy,{omit:["rawTileData","sourceLayerCoder"]});class vg extends u{constructor(A,F,W,te){super(A,F),this.angle=W,te!==void 0&&(this.segment=te)}clone(){return new vg(this.x,this.y,this.angle,this.segment)}}function gS(R,A,F,W,te){if(A.segment===void 0||F===0)return!0;let fe=A,pe=A.segment+1,ze=0;for(;ze>-F/2;){if(pe--,pe<0)return!1;ze-=R[pe].dist(fe),fe=R[pe]}ze+=R[pe].dist(R[pe+1]),pe++;let Ke=[],ct=0;for(;zeW;)ct-=Ke.shift().angleDelta;if(ct>te)return!1;pe++,ze+=Lt.dist($t)}return!0}function zC(R){let A=0;for(let F=0;Fct){let Pr=(ct-Ke)/mr,zr=Lo.number($t.x,fr.x,Pr),ui=Lo.number($t.y,fr.y,Pr),yi=new vg(zr,ui,fr.angleTo($t),Lt);return yi._round(),!pe||gS(R,yi,ze,pe,A)?yi:void 0}Ke+=mr}}function Q9(R,A,F,W,te,fe,pe,ze,Ke){let ct=OC(W,fe,pe),Lt=qC(W,te),$t=Lt*pe,fr=R[0].x===0||R[0].x===Ke||R[0].y===0||R[0].y===Ke;return A-$t=0&&un=0&&Tn=0&&fr+ct<=Lt){let pa=new vg(un,Tn,vn,Pr);pa._round(),W&&!gS(R,pa,fe,W,te)||mr.push(pa)}}$t+=yi}return ze||mr.length||pe||(mr=BC(R,$t/2,F,W,te,fe,pe,!0,Ke)),mr}Fi("Anchor",vg);let k1=Md;function NC(R,A,F,W){let te=[],fe=R.image,pe=fe.pixelRatio,ze=fe.paddedRect.w-2*k1,Ke=fe.paddedRect.h-2*k1,ct={x1:R.left,y1:R.top,x2:R.right,y2:R.bottom},Lt=fe.stretchX||[[0,ze]],$t=fe.stretchY||[[0,Ke]],fr=(Xn,Ro)=>Xn+Ro[1]-Ro[0],mr=Lt.reduce(fr,0),Pr=$t.reduce(fr,0),zr=ze-mr,ui=Ke-Pr,yi=0,vn=mr,zi=0,un=Pr,Tn=0,pa=zr,ro=0,Vo=ui;if(fe.content&&W){let Xn=fe.content,Ro=Xn[2]-Xn[0],uo=Xn[3]-Xn[1];(fe.textFitWidth||fe.textFitHeight)&&(ct=TC(R)),yi=pg(Lt,0,Xn[0]),zi=pg($t,0,Xn[1]),vn=pg(Lt,Xn[0],Xn[2]),un=pg($t,Xn[1],Xn[3]),Tn=Xn[0]-yi,ro=Xn[1]-zi,pa=Ro-vn,Vo=uo-un}let Xa=ct.x1,sa=ct.y1,Mo=ct.x2-Xa,fo=ct.y2-sa,lo=(Xn,Ro,uo,$o)=>{let Ju=qw(Xn.stretch-yi,vn,Mo,Xa),qu=C1(Xn.fixed-Tn,pa,Xn.stretch,mr),Mh=qw(Ro.stretch-zi,un,fo,sa),Qv=C1(Ro.fixed-ro,Vo,Ro.stretch,Pr),ld=qw(uo.stretch-yi,vn,Mo,Xa),Eh=C1(uo.fixed-Tn,pa,uo.stretch,mr),Gd=qw($o.stretch-zi,un,fo,sa),Hd=C1($o.fixed-ro,Vo,$o.stretch,Pr),jd=new u(Ju,Mh),Af=new u(ld,Mh),kh=new u(ld,Gd),Ed=new u(Ju,Gd),ud=new u(qu/pe,Qv/pe),Wh=new u(Eh/pe,Hd/pe),Df=A*Math.PI/180;if(Df){let tu=Math.sin(Df),pc=Math.cos(Df),$u=[pc,-tu,tu,pc];jd._matMult($u),Af._matMult($u),Ed._matMult($u),kh._matMult($u)}let Fv=Xn.stretch+Xn.fixed,lv=Ro.stretch+Ro.fixed;return{tl:jd,tr:Af,bl:Ed,br:kh,tex:{x:fe.paddedRect.x+k1+Fv,y:fe.paddedRect.y+k1+lv,w:uo.stretch+uo.fixed-Fv,h:$o.stretch+$o.fixed-lv},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:ud,pixelOffsetBR:Wh,minFontScaleX:pa/pe/Mo,minFontScaleY:Vo/pe/fo,isSDF:F}};if(W&&(fe.stretchX||fe.stretchY)){let Xn=UC(Lt,zr,mr),Ro=UC($t,ui,Pr);for(let uo=0;uo0&&(zr=Math.max(10,zr),this.circleDiameter=zr)}else{let fr=!(($t=pe.image)===null||$t===void 0)&&$t.content&&(pe.image.textFitWidth||pe.image.textFitHeight)?TC(pe):{x1:pe.left,y1:pe.top,x2:pe.right,y2:pe.bottom};fr.y1=fr.y1*ze-Ke[0],fr.y2=fr.y2*ze+Ke[2],fr.x1=fr.x1*ze-Ke[3],fr.x2=fr.x2*ze+Ke[1];let mr=pe.collisionPadding;if(mr&&(fr.x1-=mr[0]*ze,fr.y1-=mr[1]*ze,fr.x2+=mr[2]*ze,fr.y2+=mr[3]*ze),Lt){let Pr=new u(fr.x1,fr.y1),zr=new u(fr.x2,fr.y1),ui=new u(fr.x1,fr.y2),yi=new u(fr.x2,fr.y2),vn=Lt*Math.PI/180;Pr._rotate(vn),zr._rotate(vn),ui._rotate(vn),yi._rotate(vn),fr.x1=Math.min(Pr.x,zr.x,ui.x,yi.x),fr.x2=Math.max(Pr.x,zr.x,ui.x,yi.x),fr.y1=Math.min(Pr.y,zr.y,ui.y,yi.y),fr.y2=Math.max(Pr.y,zr.y,ui.y,yi.y)}A.emplaceBack(F.x,F.y,fr.x1,fr.y1,fr.x2,fr.y2,W,te,fe)}this.boxEndIndex=A.length}}class Vp{constructor(A=[],F=(W,te)=>Wte?1:0){if(this.data=A,this.length=this.data.length,this.compare=F,this.length>0)for(let W=(this.length>>1)-1;W>=0;W--)this._down(W)}push(A){this.data.push(A),this._up(this.length++)}pop(){if(this.length===0)return;let A=this.data[0],F=this.data.pop();return--this.length>0&&(this.data[0]=F,this._down(0)),A}peek(){return this.data[0]}_up(A){let{data:F,compare:W}=this,te=F[A];for(;A>0;){let fe=A-1>>1,pe=F[fe];if(W(te,pe)>=0)break;F[A]=pe,A=fe}F[A]=te}_down(A){let{data:F,compare:W}=this,te=this.length>>1,fe=F[A];for(;A=0)break;F[A]=F[pe],A=pe}F[A]=fe}}function eO(R,A=1,F=!1){let W=1/0,te=1/0,fe=-1/0,pe=-1/0,ze=R[0];for(let mr=0;mrfe)&&(fe=Pr.x),(!mr||Pr.y>pe)&&(pe=Pr.y)}let Ke=Math.min(fe-W,pe-te),ct=Ke/2,Lt=new Vp([],tO);if(Ke===0)return new u(W,te);for(let mr=W;mr$t.d||!$t.d)&&($t=mr,F&&console.log("found best %d after %d probes",Math.round(1e4*mr.d)/1e4,fr)),mr.max-$t.d<=A||(ct=mr.h/2,Lt.push(new L1(mr.p.x-ct,mr.p.y-ct,ct,R)),Lt.push(new L1(mr.p.x+ct,mr.p.y-ct,ct,R)),Lt.push(new L1(mr.p.x-ct,mr.p.y+ct,ct,R)),Lt.push(new L1(mr.p.x+ct,mr.p.y+ct,ct,R)),fr+=4)}return F&&(console.log(`num probes: ${fr}`),console.log(`best distance: ${$t.d}`)),$t.p}function tO(R,A){return A.max-R.max}function L1(R,A,F,W){this.p=new u(R,A),this.h=F,this.d=function(te,fe){let pe=!1,ze=1/0;for(let Ke=0;Kete.y!=Pr.y>te.y&&te.x<(Pr.x-mr.x)*(te.y-mr.y)/(Pr.y-mr.y)+mr.x&&(pe=!pe),ze=Math.min(ze,Gr(te,mr,Pr))}}return(pe?1:-1)*Math.sqrt(ze)}(this.p,W),this.max=this.d+this.h*Math.SQRT2}var sd;i.aq=void 0,(sd=i.aq||(i.aq={}))[sd.center=1]="center",sd[sd.left=2]="left",sd[sd.right=3]="right",sd[sd.top=4]="top",sd[sd.bottom=5]="bottom",sd[sd["top-left"]=6]="top-left",sd[sd["top-right"]=7]="top-right",sd[sd["bottom-left"]=8]="bottom-left",sd[sd["bottom-right"]=9]="bottom-right";let fm=7,hy=Number.POSITIVE_INFINITY;function mS(R,A){return A[1]!==hy?function(F,W,te){let fe=0,pe=0;switch(W=Math.abs(W),te=Math.abs(te),F){case"top-right":case"top-left":case"top":pe=te-fm;break;case"bottom-right":case"bottom-left":case"bottom":pe=-te+fm}switch(F){case"top-right":case"bottom-right":case"right":fe=-W;break;case"top-left":case"bottom-left":case"left":fe=W}return[fe,pe]}(R,A[0],A[1]):function(F,W){let te=0,fe=0;W<0&&(W=0);let pe=W/Math.SQRT2;switch(F){case"top-right":case"top-left":fe=pe-fm;break;case"bottom-right":case"bottom-left":fe=-pe+fm;break;case"bottom":fe=-W+fm;break;case"top":fe=W-fm}switch(F){case"top-right":case"bottom-right":te=-pe;break;case"top-left":case"bottom-left":te=pe;break;case"left":te=W;break;case"right":te=-W}return[te,fe]}(R,A[0])}function VC(R,A,F){var W;let te=R.layout,fe=(W=te.get("text-variable-anchor-offset"))===null||W===void 0?void 0:W.evaluate(A,{},F);if(fe){let ze=fe.values,Ke=[];for(let ct=0;ctfr*eu);Lt.startsWith("top")?$t[1]-=fm:Lt.startsWith("bottom")&&($t[1]+=fm),Ke[ct+1]=$t}return new $i(Ke)}let pe=te.get("text-variable-anchor");if(pe){let ze;ze=R._unevaluatedLayout.getValue("text-radial-offset")!==void 0?[te.get("text-radial-offset").evaluate(A,{},F)*eu,hy]:te.get("text-offset").evaluate(A,{},F).map(ct=>ct*eu);let Ke=[];for(let ct of pe)Ke.push(ct,mS(ct,ze));return new $i(Ke)}return null}function yS(R){switch(R){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function rO(R,A,F,W,te,fe,pe,ze,Ke,ct,Lt){let $t=fe.textMaxSize.evaluate(A,{});$t===void 0&&($t=pe);let fr=R.layers[0].layout,mr=fr.get("icon-offset").evaluate(A,{},Lt),Pr=HC(F.horizontal),zr=pe/24,ui=R.tilePixelRatio*zr,yi=R.tilePixelRatio*$t/24,vn=R.tilePixelRatio*ze,zi=R.tilePixelRatio*fr.get("symbol-spacing"),un=fr.get("text-padding")*R.tilePixelRatio,Tn=function(Xn,Ro,uo,$o=1){let Ju=Xn.get("icon-padding").evaluate(Ro,{},uo),qu=Ju&&Ju.values;return[qu[0]*$o,qu[1]*$o,qu[2]*$o,qu[3]*$o]}(fr,A,Lt,R.tilePixelRatio),pa=fr.get("text-max-angle")/180*Math.PI,ro=fr.get("text-rotation-alignment")!=="viewport"&&fr.get("symbol-placement")!=="point",Vo=fr.get("icon-rotation-alignment")==="map"&&fr.get("symbol-placement")!=="point",Xa=fr.get("symbol-placement"),sa=zi/2,Mo=fr.get("icon-text-fit"),fo;W&&Mo!=="none"&&(R.allowVerticalPlacement&&F.vertical&&(fo=AC(W,F.vertical,Mo,fr.get("icon-text-fit-padding"),mr,zr)),Pr&&(W=AC(W,Pr,Mo,fr.get("icon-text-fit-padding"),mr,zr)));let lo=(Xn,Ro)=>{Ro.x<0||Ro.x>=Ha||Ro.y<0||Ro.y>=Ha||function(uo,$o,Ju,qu,Mh,Qv,ld,Eh,Gd,Hd,jd,Af,kh,Ed,ud,Wh,Df,Fv,lv,tu,pc,$u,zv,ff,P1){let v0=uo.addToLineVertexArray($o,Ju),Gp,ep,Gc,Zf,tp=0,gg=0,uv=0,I1=0,TS=-1,Vw=-1,p0={},dy=bi("");if(uo.allowVerticalPlacement&&qu.vertical){let kd=Eh.layout.get("text-rotate").evaluate(pc,{},ff)+90;Gc=new cm(Gd,$o,Hd,jd,Af,qu.vertical,kh,Ed,ud,kd),ld&&(Zf=new cm(Gd,$o,Hd,jd,Af,ld,Df,Fv,ud,kd))}if(Mh){let kd=Eh.layout.get("icon-rotate").evaluate(pc,{}),rp=Eh.layout.get("icon-text-fit")!=="none",hm=NC(Mh,kd,zv,rp),Wd=ld?NC(ld,kd,zv,rp):void 0;ep=new cm(Gd,$o,Hd,jd,Af,Mh,Df,Fv,!1,kd),tp=4*hm.length;let Cd=uo.iconSizeData,_p=null;Cd.kind==="source"?(_p=[d0*Eh.layout.get("icon-size").evaluate(pc,{})],_p[0]>lm&&T(`${uo.layerIds[0]}: Value for "icon-size" is >= ${Wx}. Reduce your "icon-size".`)):Cd.kind==="composite"&&(_p=[d0*$u.compositeIconSizes[0].evaluate(pc,{},ff),d0*$u.compositeIconSizes[1].evaluate(pc,{},ff)],(_p[0]>lm||_p[1]>lm)&&T(`${uo.layerIds[0]}: Value for "icon-size" is >= ${Wx}. Reduce your "icon-size".`)),uo.addSymbols(uo.icon,hm,_p,tu,lv,pc,i.ah.none,$o,v0.lineStartIndex,v0.lineLength,-1,ff),TS=uo.icon.placedSymbolArray.length-1,Wd&&(gg=4*Wd.length,uo.addSymbols(uo.icon,Wd,_p,tu,lv,pc,i.ah.vertical,$o,v0.lineStartIndex,v0.lineLength,-1,ff),Vw=uo.icon.placedSymbolArray.length-1)}let Xh=Object.keys(qu.horizontal);for(let kd of Xh){let rp=qu.horizontal[kd];if(!Gp){dy=bi(rp.text);let Wd=Eh.layout.get("text-rotate").evaluate(pc,{},ff);Gp=new cm(Gd,$o,Hd,jd,Af,rp,kh,Ed,ud,Wd)}let hm=rp.positionedLines.length===1;if(uv+=GC(uo,$o,rp,Qv,Eh,ud,pc,Wh,v0,qu.vertical?i.ah.horizontal:i.ah.horizontalOnly,hm?Xh:[kd],p0,TS,$u,ff),hm)break}qu.vertical&&(I1+=GC(uo,$o,qu.vertical,Qv,Eh,ud,pc,Wh,v0,i.ah.vertical,["vertical"],p0,Vw,$u,ff));let aO=Gp?Gp.boxStartIndex:uo.collisionBoxArray.length,Gw=Gp?Gp.boxEndIndex:uo.collisionBoxArray.length,g0=Gc?Gc.boxStartIndex:uo.collisionBoxArray.length,cv=Gc?Gc.boxEndIndex:uo.collisionBoxArray.length,ZC=ep?ep.boxStartIndex:uo.collisionBoxArray.length,oO=ep?ep.boxEndIndex:uo.collisionBoxArray.length,YC=Zf?Zf.boxStartIndex:uo.collisionBoxArray.length,sO=Zf?Zf.boxEndIndex:uo.collisionBoxArray.length,yp=-1,rb=(kd,rp)=>kd&&kd.circleDiameter?Math.max(kd.circleDiameter,rp):rp;yp=rb(Gp,yp),yp=rb(Gc,yp),yp=rb(ep,yp),yp=rb(Zf,yp);let Hw=yp>-1?1:0;Hw&&(yp*=P1/eu),uo.glyphOffsetArray.length>=M1.MAX_GLYPHS&&T("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),pc.sortKey!==void 0&&uo.addToSortKeyRanges(uo.symbolInstances.length,pc.sortKey);let AS=VC(Eh,pc,ff),[lO,uO]=function(kd,rp){let hm=kd.length,Wd=rp==null?void 0:rp.values;if((Wd==null?void 0:Wd.length)>0)for(let Cd=0;Cd=0?p0.right:-1,p0.center>=0?p0.center:-1,p0.left>=0?p0.left:-1,p0.vertical||-1,TS,Vw,dy,aO,Gw,g0,cv,ZC,oO,YC,sO,Hd,uv,I1,tp,gg,Hw,0,kh,yp,lO,uO)}(R,Ro,Xn,F,W,te,fo,R.layers[0],R.collisionBoxArray,A.index,A.sourceLayerIndex,R.index,ui,[un,un,un,un],ro,Ke,vn,Tn,Vo,mr,A,fe,ct,Lt,pe)};if(Xa==="line")for(let Xn of FC(A.geometry,0,0,Ha,Ha)){let Ro=Q9(Xn,zi,pa,F.vertical||Pr,W,24,yi,R.overscaling,Ha);for(let uo of Ro)Pr&&iO(R,Pr.text,sa,uo)||lo(Xn,uo)}else if(Xa==="line-center"){for(let Xn of A.geometry)if(Xn.length>1){let Ro=$9(Xn,pa,F.vertical||Pr,W,24,yi);Ro&&lo(Xn,Ro)}}else if(A.type==="Polygon")for(let Xn of Cf(A.geometry,0)){let Ro=eO(Xn,16);lo(Xn[0],new vg(Ro.x,Ro.y,0))}else if(A.type==="LineString")for(let Xn of A.geometry)lo(Xn,new vg(Xn[0].x,Xn[0].y,0));else if(A.type==="Point")for(let Xn of A.geometry)for(let Ro of Xn)lo([Ro],new vg(Ro.x,Ro.y,0))}function GC(R,A,F,W,te,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr){let zr=function(vn,zi,un,Tn,pa,ro,Vo,Xa){let sa=Tn.layout.get("text-rotate").evaluate(ro,{})*Math.PI/180,Mo=[];for(let fo of zi.positionedLines)for(let lo of fo.positionedGlyphs){if(!lo.rect)continue;let Xn=lo.rect||{},Ro=_C+1,uo=!0,$o=1,Ju=0,qu=(pa||Xa)&&lo.vertical,Mh=lo.metrics.advance*lo.scale/2;if(Xa&&zi.verticalizable&&(Ju=fo.lineOffset/2-(lo.imageName?-(eu-lo.metrics.width*lo.scale)/2:(lo.scale-1)*eu)),lo.imageName){let tu=Vo[lo.imageName];uo=tu.sdf,$o=tu.pixelRatio,Ro=Md/$o}let Qv=pa?[lo.x+Mh,lo.y]:[0,0],ld=pa?[0,0]:[lo.x+Mh+un[0],lo.y+un[1]-Ju],Eh=[0,0];qu&&(Eh=ld,ld=[0,0]);let Gd=lo.metrics.isDoubleResolution?2:1,Hd=(lo.metrics.left-Ro)*lo.scale-Mh+ld[0],jd=(-lo.metrics.top-Ro)*lo.scale+ld[1],Af=Hd+Xn.w/Gd*lo.scale/$o,kh=jd+Xn.h/Gd*lo.scale/$o,Ed=new u(Hd,jd),ud=new u(Af,jd),Wh=new u(Hd,kh),Df=new u(Af,kh);if(qu){let tu=new u(-Mh,Mh-Sh),pc=-Math.PI/2,$u=eu/2-Mh,zv=new u(5-Sh-$u,-(lo.imageName?$u:0)),ff=new u(...Eh);Ed._rotateAround(pc,tu)._add(zv)._add(ff),ud._rotateAround(pc,tu)._add(zv)._add(ff),Wh._rotateAround(pc,tu)._add(zv)._add(ff),Df._rotateAround(pc,tu)._add(zv)._add(ff)}if(sa){let tu=Math.sin(sa),pc=Math.cos(sa),$u=[pc,-tu,tu,pc];Ed._matMult($u),ud._matMult($u),Wh._matMult($u),Df._matMult($u)}let Fv=new u(0,0),lv=new u(0,0);Mo.push({tl:Ed,tr:ud,bl:Wh,br:Df,tex:Xn,writingMode:zi.writingMode,glyphOffset:Qv,sectionIndex:lo.sectionIndex,isSDF:uo,pixelOffsetTL:Fv,pixelOffsetBR:lv,minFontScaleX:0,minFontScaleY:0})}return Mo}(0,F,ze,te,fe,pe,W,R.allowVerticalPlacement),ui=R.textSizeData,yi=null;ui.kind==="source"?(yi=[d0*te.layout.get("text-size").evaluate(pe,{})],yi[0]>lm&&T(`${R.layerIds[0]}: Value for "text-size" is >= ${Wx}. Reduce your "text-size".`)):ui.kind==="composite"&&(yi=[d0*mr.compositeTextSizes[0].evaluate(pe,{},Pr),d0*mr.compositeTextSizes[1].evaluate(pe,{},Pr)],(yi[0]>lm||yi[1]>lm)&&T(`${R.layerIds[0]}: Value for "text-size" is >= ${Wx}. Reduce your "text-size".`)),R.addSymbols(R.text,zr,yi,ze,fe,pe,ct,A,Ke.lineStartIndex,Ke.lineLength,fr,Pr);for(let vn of Lt)$t[vn]=R.text.placedSymbolArray.length-1;return 4*zr.length}function HC(R){for(let A in R)return R[A];return null}function iO(R,A,F,W){let te=R.compareText;if(A in te){let fe=te[A];for(let pe=fe.length-1;pe>=0;pe--)if(W.dist(fe[pe])>4;if(te!==1)throw new Error(`Got v${te} data when expected v1.`);let fe=jC[15&W];if(!fe)throw new Error("Unrecognized array type.");let[pe]=new Uint16Array(A,2,1),[ze]=new Uint32Array(A,4,1);return new _S(ze,pe,fe,A)}constructor(A,F=64,W=Float64Array,te){if(isNaN(A)||A<0)throw new Error(`Unpexpected numItems value: ${A}.`);this.numItems=+A,this.nodeSize=Math.min(Math.max(+F,2),65535),this.ArrayType=W,this.IndexArrayType=A<65536?Uint16Array:Uint32Array;let fe=jC.indexOf(this.ArrayType),pe=2*A*this.ArrayType.BYTES_PER_ELEMENT,ze=A*this.IndexArrayType.BYTES_PER_ELEMENT,Ke=(8-ze%8)%8;if(fe<0)throw new Error(`Unexpected typed array class: ${W}.`);te&&te instanceof ArrayBuffer?(this.data=te,this.ids=new this.IndexArrayType(this.data,8,A),this.coords=new this.ArrayType(this.data,8+ze+Ke,2*A),this._pos=2*A,this._finished=!0):(this.data=new ArrayBuffer(8+pe+ze+Ke),this.ids=new this.IndexArrayType(this.data,8,A),this.coords=new this.ArrayType(this.data,8+ze+Ke,2*A),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+fe]),new Uint16Array(this.data,2,1)[0]=F,new Uint32Array(this.data,4,1)[0]=A)}add(A,F){let W=this._pos>>1;return this.ids[W]=W,this.coords[this._pos++]=A,this.coords[this._pos++]=F,W}finish(){let A=this._pos>>1;if(A!==this.numItems)throw new Error(`Added ${A} items when expected ${this.numItems}.`);return Bw(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(A,F,W,te){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:fe,coords:pe,nodeSize:ze}=this,Ke=[0,fe.length-1,0],ct=[];for(;Ke.length;){let Lt=Ke.pop()||0,$t=Ke.pop()||0,fr=Ke.pop()||0;if($t-fr<=ze){for(let ui=fr;ui<=$t;ui++){let yi=pe[2*ui],vn=pe[2*ui+1];yi>=A&&yi<=W&&vn>=F&&vn<=te&&ct.push(fe[ui])}continue}let mr=fr+$t>>1,Pr=pe[2*mr],zr=pe[2*mr+1];Pr>=A&&Pr<=W&&zr>=F&&zr<=te&&ct.push(fe[mr]),(Lt===0?A<=Pr:F<=zr)&&(Ke.push(fr),Ke.push(mr-1),Ke.push(1-Lt)),(Lt===0?W>=Pr:te>=zr)&&(Ke.push(mr+1),Ke.push($t),Ke.push(1-Lt))}return ct}within(A,F,W){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:te,coords:fe,nodeSize:pe}=this,ze=[0,te.length-1,0],Ke=[],ct=W*W;for(;ze.length;){let Lt=ze.pop()||0,$t=ze.pop()||0,fr=ze.pop()||0;if($t-fr<=pe){for(let ui=fr;ui<=$t;ui++)XC(fe[2*ui],fe[2*ui+1],A,F)<=ct&&Ke.push(te[ui]);continue}let mr=fr+$t>>1,Pr=fe[2*mr],zr=fe[2*mr+1];XC(Pr,zr,A,F)<=ct&&Ke.push(te[mr]),(Lt===0?A-W<=Pr:F-W<=zr)&&(ze.push(fr),ze.push(mr-1),ze.push(1-Lt)),(Lt===0?A+W>=Pr:F+W>=zr)&&(ze.push(mr+1),ze.push($t),ze.push(1-Lt))}return Ke}}function Bw(R,A,F,W,te,fe){if(te-W<=F)return;let pe=W+te>>1;WC(R,A,pe,W,te,fe),Bw(R,A,F,W,pe-1,1-fe),Bw(R,A,F,pe+1,te,1-fe)}function WC(R,A,F,W,te,fe){for(;te>W;){if(te-W>600){let ct=te-W+1,Lt=F-W+1,$t=Math.log(ct),fr=.5*Math.exp(2*$t/3),mr=.5*Math.sqrt($t*fr*(ct-fr)/ct)*(Lt-ct/2<0?-1:1);WC(R,A,F,Math.max(W,Math.floor(F-Lt*fr/ct+mr)),Math.min(te,Math.floor(F+(ct-Lt)*fr/ct+mr)),fe)}let pe=A[2*F+fe],ze=W,Ke=te;for(eb(R,A,W,F),A[2*te+fe]>pe&&eb(R,A,W,te);zepe;)Ke--}A[2*W+fe]===pe?eb(R,A,W,Ke):(Ke++,eb(R,A,Ke,te)),Ke<=F&&(W=Ke+1),F<=Ke&&(te=Ke-1)}}function eb(R,A,F,W){xS(R,F,W),xS(A,2*F,2*W),xS(A,2*F+1,2*W+1)}function xS(R,A,F){let W=R[A];R[A]=R[F],R[F]=W}function XC(R,A,F,W){let te=R-F,fe=A-W;return te*te+fe*fe}var Nw;i.bg=void 0,(Nw=i.bg||(i.bg={})).create="create",Nw.load="load",Nw.fullLoad="fullLoad";let tb=null,sh=[],bS=1e3/60,wS="loadTime",Uw="fullLoadTime",nO={mark(R){performance.mark(R)},frame(R){let A=R;tb!=null&&sh.push(A-tb),tb=A},clearMetrics(){tb=null,sh=[],performance.clearMeasures(wS),performance.clearMeasures(Uw);for(let R in i.bg)performance.clearMarks(i.bg[R])},getPerformanceMetrics(){performance.measure(wS,i.bg.create,i.bg.load),performance.measure(Uw,i.bg.create,i.bg.fullLoad);let R=performance.getEntriesByName(wS)[0].duration,A=performance.getEntriesByName(Uw)[0].duration,F=sh.length,W=1/(sh.reduce((fe,pe)=>fe+pe,0)/F/1e3),te=sh.filter(fe=>fe>bS).reduce((fe,pe)=>fe+(pe-bS)/bS,0);return{loadTime:R,fullLoadTime:A,fps:W,percentDroppedFrames:te/(F+te)*100,totalFrames:F}}};i.$=class extends Yt{},i.A=xi,i.B=dn,i.C=function(R){if(V==null){let A=R.navigator?R.navigator.userAgent:null;V=!!R.safari||!(!A||!(/\b(iPad|iPhone|iPod)\b/.test(A)||A.match("Safari")&&!A.match("Chrome")))}return V},i.D=Ua,i.E=Re,i.F=class{constructor(R,A){this.target=R,this.mapId=A,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new hS(()=>this.process()),this.subscription=function(F,W,te,fe){return F.addEventListener(W,te,!1),{unsubscribe:()=>{F.removeEventListener(W,te,!1)}}}(this.target,"message",F=>this.receive(F)),this.globalScope=O(self)?R:window}registerMessageHandler(R,A){this.messageHandlers[R]=A}sendAsync(R,A){return new Promise((F,W)=>{let te=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[te]={resolve:F,reject:W},A&&A.signal.addEventListener("abort",()=>{delete this.resolveRejects[te];let ze={id:te,type:"",origin:location.origin,targetMapId:R.targetMapId,sourceMapId:this.mapId};this.target.postMessage(ze)},{once:!0});let fe=[],pe=Object.assign(Object.assign({},R),{id:te,sourceMapId:this.mapId,origin:location.origin,data:La(R.data,fe)});this.target.postMessage(pe,{transfer:fe})})}receive(R){let A=R.data,F=A.id;if(!(A.origin!=="file://"&&location.origin!=="file://"&&A.origin!=="resource://android"&&location.origin!=="resource://android"&&A.origin!==location.origin||A.targetMapId&&this.mapId!==A.targetMapId)){if(A.type===""){delete this.tasks[F];let W=this.abortControllers[F];return delete this.abortControllers[F],void(W&&W.abort())}if(O(self)||A.mustQueue)return this.tasks[F]=A,this.taskQueue.push(F),void this.invoker.trigger();this.processTask(F,A)}}process(){if(this.taskQueue.length===0)return;let R=this.taskQueue.shift(),A=this.tasks[R];delete this.tasks[R],this.taskQueue.length>0&&this.invoker.trigger(),A&&this.processTask(R,A)}processTask(R,A){return a(this,void 0,void 0,function*(){if(A.type===""){let te=this.resolveRejects[R];return delete this.resolveRejects[R],te?void(A.error?te.reject(Na(A.error)):te.resolve(Na(A.data))):void 0}if(!this.messageHandlers[A.type])return void this.completeTask(R,new Error(`Could not find a registered handler for ${A.type}, map ID: ${this.mapId}, available handlers: ${Object.keys(this.messageHandlers).join(", ")}`));let F=Na(A.data),W=new AbortController;this.abortControllers[R]=W;try{let te=yield this.messageHandlers[A.type](A.sourceMapId,F,W);this.completeTask(R,null,te)}catch(te){this.completeTask(R,te)}})}completeTask(R,A,F){let W=[];delete this.abortControllers[R];let te={id:R,type:"",sourceMapId:this.mapId,origin:location.origin,error:A?La(A):null,data:La(F,W)};this.target.postMessage(te,{transfer:W})}remove(){this.invoker.remove(),this.subscription.unsubscribe()}},i.G=Ce,i.H=function(){var R=new xi(16);return xi!=Float32Array&&(R[1]=0,R[2]=0,R[3]=0,R[4]=0,R[6]=0,R[7]=0,R[8]=0,R[9]=0,R[11]=0,R[12]=0,R[13]=0,R[14]=0),R[0]=1,R[5]=1,R[10]=1,R[15]=1,R},i.I=Cw,i.J=function(R,A,F){var W,te,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr=F[0],ui=F[1],yi=F[2];return A===R?(R[12]=A[0]*zr+A[4]*ui+A[8]*yi+A[12],R[13]=A[1]*zr+A[5]*ui+A[9]*yi+A[13],R[14]=A[2]*zr+A[6]*ui+A[10]*yi+A[14],R[15]=A[3]*zr+A[7]*ui+A[11]*yi+A[15]):(te=A[1],fe=A[2],pe=A[3],ze=A[4],Ke=A[5],ct=A[6],Lt=A[7],$t=A[8],fr=A[9],mr=A[10],Pr=A[11],R[0]=W=A[0],R[1]=te,R[2]=fe,R[3]=pe,R[4]=ze,R[5]=Ke,R[6]=ct,R[7]=Lt,R[8]=$t,R[9]=fr,R[10]=mr,R[11]=Pr,R[12]=W*zr+ze*ui+$t*yi+A[12],R[13]=te*zr+Ke*ui+fr*yi+A[13],R[14]=fe*zr+ct*ui+mr*yi+A[14],R[15]=pe*zr+Lt*ui+Pr*yi+A[15]),R},i.K=function(R,A,F){var W=F[0],te=F[1],fe=F[2];return R[0]=A[0]*W,R[1]=A[1]*W,R[2]=A[2]*W,R[3]=A[3]*W,R[4]=A[4]*te,R[5]=A[5]*te,R[6]=A[6]*te,R[7]=A[7]*te,R[8]=A[8]*fe,R[9]=A[9]*fe,R[10]=A[10]*fe,R[11]=A[11]*fe,R[12]=A[12],R[13]=A[13],R[14]=A[14],R[15]=A[15],R},i.L=ci,i.M=function(R,A){let F={};for(let W=0;W{let A=window.document.createElement("video");return A.muted=!0,new Promise(F=>{A.onloadstart=()=>{F(A)};for(let W of R){let te=window.document.createElement("source");Le(W)||(A.crossOrigin="Anonymous"),te.src=W,A.appendChild(te)}})},i.a4=function(){return x++},i.a5=Cn,i.a6=M1,i.a7=Fc,i.a8=Sl,i.a9=pS,i.aA=function(R){if(R.type==="custom")return new fS(R);switch(R.type){case"background":return new K9(R);case"circle":return new hi(R);case"fill":return new yt(R);case"fill-extrusion":return new Lv(R);case"heatmap":return new oa(R);case"hillshade":return new Zs(R);case"line":return new oy(R);case"raster":return new Kx(R);case"symbol":return new cy(R)}},i.aB=g,i.aC=function(R,A){if(!R)return[{command:"setStyle",args:[A]}];let F=[];try{if(!pt(R.version,A.version))return[{command:"setStyle",args:[A]}];pt(R.center,A.center)||F.push({command:"setCenter",args:[A.center]}),pt(R.zoom,A.zoom)||F.push({command:"setZoom",args:[A.zoom]}),pt(R.bearing,A.bearing)||F.push({command:"setBearing",args:[A.bearing]}),pt(R.pitch,A.pitch)||F.push({command:"setPitch",args:[A.pitch]}),pt(R.sprite,A.sprite)||F.push({command:"setSprite",args:[A.sprite]}),pt(R.glyphs,A.glyphs)||F.push({command:"setGlyphs",args:[A.glyphs]}),pt(R.transition,A.transition)||F.push({command:"setTransition",args:[A.transition]}),pt(R.light,A.light)||F.push({command:"setLight",args:[A.light]}),pt(R.terrain,A.terrain)||F.push({command:"setTerrain",args:[A.terrain]}),pt(R.sky,A.sky)||F.push({command:"setSky",args:[A.sky]}),pt(R.projection,A.projection)||F.push({command:"setProjection",args:[A.projection]});let W={},te=[];(function(pe,ze,Ke,ct){let Lt;for(Lt in ze=ze||{},pe=pe||{})Object.prototype.hasOwnProperty.call(pe,Lt)&&(Object.prototype.hasOwnProperty.call(ze,Lt)||lt(Lt,Ke,ct));for(Lt in ze)Object.prototype.hasOwnProperty.call(ze,Lt)&&(Object.prototype.hasOwnProperty.call(pe,Lt)?pt(pe[Lt],ze[Lt])||(pe[Lt].type==="geojson"&&ze[Lt].type==="geojson"&&Nt(pe,ze,Lt)?Zt(Ke,{command:"setGeoJSONSourceData",args:[Lt,ze[Lt].data]}):Gt(Lt,ze,Ke,ct)):st(Lt,ze,Ke))})(R.sources,A.sources,te,W);let fe=[];R.layers&&R.layers.forEach(pe=>{"source"in pe&&W[pe.source]?F.push({command:"removeLayer",args:[pe.id]}):fe.push(pe)}),F=F.concat(te),function(pe,ze,Ke){ze=ze||[];let ct=(pe=pe||[]).map(sr),Lt=ze.map(sr),$t=pe.reduce(wr,{}),fr=ze.reduce(wr,{}),mr=ct.slice(),Pr=Object.create(null),zr,ui,yi,vn,zi;for(let un=0,Tn=0;un@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,(F,W,te,fe)=>{let pe=te||fe;return A[W]=!pe||pe.toLowerCase(),""}),A["max-age"]){let F=parseInt(A["max-age"],10);isNaN(F)?delete A["max-age"]:A["max-age"]=F}return A},i.ab=function(R,A){let F=[];for(let W in R)W in A||F.push(W);return F},i.ac=E,i.ad=function(R,A,F){var W=Math.sin(F),te=Math.cos(F),fe=A[0],pe=A[1],ze=A[2],Ke=A[3],ct=A[4],Lt=A[5],$t=A[6],fr=A[7];return A!==R&&(R[8]=A[8],R[9]=A[9],R[10]=A[10],R[11]=A[11],R[12]=A[12],R[13]=A[13],R[14]=A[14],R[15]=A[15]),R[0]=fe*te+ct*W,R[1]=pe*te+Lt*W,R[2]=ze*te+$t*W,R[3]=Ke*te+fr*W,R[4]=ct*te-fe*W,R[5]=Lt*te-pe*W,R[6]=$t*te-ze*W,R[7]=fr*te-Ke*W,R},i.ae=function(R){var A=new xi(16);return A[0]=R[0],A[1]=R[1],A[2]=R[2],A[3]=R[3],A[4]=R[4],A[5]=R[5],A[6]=R[6],A[7]=R[7],A[8]=R[8],A[9]=R[9],A[10]=R[10],A[11]=R[11],A[12]=R[12],A[13]=R[13],A[14]=R[14],A[15]=R[15],A},i.af=Bn,i.ag=function(R,A){let F=0,W=0;if(R.kind==="constant")W=R.layoutSize;else if(R.kind!=="source"){let{interpolationType:te,minZoom:fe,maxZoom:pe}=R,ze=te?E(ko.interpolationFactor(te,A,fe,pe),0,1):0;R.kind==="camera"?W=Lo.number(R.minSize,R.maxSize,ze):F=ze}return{uSizeT:F,uSize:W}},i.ai=function(R,{uSize:A,uSizeT:F},{lowerSize:W,upperSize:te}){return R.kind==="source"?W/d0:R.kind==="composite"?Lo.number(W/d0,te/d0,F):A},i.aj=sS,i.ak=function(R,A,F,W){let te=A.y-R.y,fe=A.x-R.x,pe=W.y-F.y,ze=W.x-F.x,Ke=pe*fe-ze*te;if(Ke===0)return null;let ct=(ze*(R.y-F.y)-pe*(R.x-F.x))/Ke;return new u(R.x+ct*fe,R.y+ct*te)},i.al=FC,i.am=Sc,i.an=Ri,i.ao=function(R){let A=1/0,F=1/0,W=-1/0,te=-1/0;for(let fe of R)A=Math.min(A,fe.x),F=Math.min(F,fe.y),W=Math.max(W,fe.x),te=Math.max(te,fe.y);return[A,F,W,te]},i.ap=eu,i.ar=oS,i.as=function(R,A){var F=A[0],W=A[1],te=A[2],fe=A[3],pe=A[4],ze=A[5],Ke=A[6],ct=A[7],Lt=A[8],$t=A[9],fr=A[10],mr=A[11],Pr=A[12],zr=A[13],ui=A[14],yi=A[15],vn=F*ze-W*pe,zi=F*Ke-te*pe,un=F*ct-fe*pe,Tn=W*Ke-te*ze,pa=W*ct-fe*ze,ro=te*ct-fe*Ke,Vo=Lt*zr-$t*Pr,Xa=Lt*ui-fr*Pr,sa=Lt*yi-mr*Pr,Mo=$t*ui-fr*zr,fo=$t*yi-mr*zr,lo=fr*yi-mr*ui,Xn=vn*lo-zi*fo+un*Mo+Tn*sa-pa*Xa+ro*Vo;return Xn?(R[0]=(ze*lo-Ke*fo+ct*Mo)*(Xn=1/Xn),R[1]=(te*fo-W*lo-fe*Mo)*Xn,R[2]=(zr*ro-ui*pa+yi*Tn)*Xn,R[3]=(fr*pa-$t*ro-mr*Tn)*Xn,R[4]=(Ke*sa-pe*lo-ct*Xa)*Xn,R[5]=(F*lo-te*sa+fe*Xa)*Xn,R[6]=(ui*un-Pr*ro-yi*zi)*Xn,R[7]=(Lt*ro-fr*un+mr*zi)*Xn,R[8]=(pe*fo-ze*sa+ct*Vo)*Xn,R[9]=(W*sa-F*fo-fe*Vo)*Xn,R[10]=(Pr*pa-zr*un+yi*vn)*Xn,R[11]=($t*un-Lt*pa-mr*vn)*Xn,R[12]=(ze*Xa-pe*Mo-Ke*Vo)*Xn,R[13]=(F*Mo-W*Xa+te*Vo)*Xn,R[14]=(zr*zi-Pr*Tn-ui*vn)*Xn,R[15]=(Lt*Tn-$t*zi+fr*vn)*Xn,R):null},i.at=yS,i.au=Rw,i.av=_S,i.aw=function(){let R={},A=ce.$version;for(let F in ce.$root){let W=ce.$root[F];if(W.required){let te=null;te=F==="version"?A:W.type==="array"?[]:{},te!=null&&(R[F]=te)}}return R},i.ax=Yn,i.ay=ie,i.az=function(R){R=R.slice();let A=Object.create(null);for(let F=0;F25||W<0||W>=1||F<0||F>=1)},i.bc=function(R,A){return R[0]=A[0],R[1]=0,R[2]=0,R[3]=0,R[4]=0,R[5]=A[1],R[6]=0,R[7]=0,R[8]=0,R[9]=0,R[10]=A[2],R[11]=0,R[12]=0,R[13]=0,R[14]=0,R[15]=1,R},i.bd=class extends Tt{},i.be=dS,i.bf=nO,i.bh=me,i.bi=function(R,A){_e.REGISTERED_PROTOCOLS[R]=A},i.bj=function(R){delete _e.REGISTERED_PROTOCOLS[R]},i.bk=function(R,A){let F={};for(let te=0;telo*eu)}let Xa=pe?"center":F.get("text-justify").evaluate(ct,{},R.canonical),sa=F.get("symbol-placement")==="point"?F.get("text-max-width").evaluate(ct,{},R.canonical)*eu:1/0,Mo=()=>{R.bucket.allowVerticalPlacement&&Ka(un)&&(Pr.vertical=Hx(zr,R.glyphMap,R.glyphPositions,R.imagePositions,Lt,sa,fe,ro,"left",pa,yi,i.ah.vertical,!0,fr,$t))};if(!pe&&Vo){let fo=new Set;if(Xa==="auto")for(let Xn=0;Xna(void 0,void 0,void 0,function*(){if(R.byteLength===0)return createImageBitmap(new ImageData(1,1));let A=new Blob([new Uint8Array(R)],{type:"image/png"});try{return createImageBitmap(A)}catch(F){throw new Error(`Could not load image because of ${F.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}}),i.e=L,i.f=R=>new Promise((A,F)=>{let W=new Image;W.onload=()=>{A(W),URL.revokeObjectURL(W.src),W.onload=null,window.requestAnimationFrame(()=>{W.src=Z})},W.onerror=()=>F(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));let te=new Blob([new Uint8Array(R)],{type:"image/png"});W.src=R.byteLength?URL.createObjectURL(te):Z}),i.g=Ee,i.h=(R,A)=>Se(L(R,{type:"json"}),A),i.i=O,i.j=ge,i.k=Pe,i.l=(R,A)=>Se(L(R,{type:"arrayBuffer"}),A),i.m=Se,i.n=function(R){return new iS(R).readFields(LQ,[])},i.o=na,i.p=aS,i.q=ue,i.r=Xi,i.s=Le,i.t=Yi,i.u=ki,i.v=ce,i.w=T,i.x=function([R,A,F]){return A+=90,A*=Math.PI/180,F*=Math.PI/180,{x:R*Math.cos(A)*Math.sin(F),y:R*Math.sin(A)*Math.sin(F),z:R*Math.cos(F)}},i.y=Lo,i.z=rs}),r("worker",["./shared"],function(i){"use strict";class a{constructor(Ge){this.keyCache={},Ge&&this.replace(Ge)}replace(Ge){this._layerConfigs={},this._layers={},this.update(Ge,[])}update(Ge,Je){for(let tt of Ge){this._layerConfigs[tt.id]=tt;let xt=this._layers[tt.id]=i.aA(tt);xt._featureFilter=i.a7(xt.filter),this.keyCache[tt.id]&&delete this.keyCache[tt.id]}for(let tt of Je)delete this.keyCache[tt],delete this._layerConfigs[tt],delete this._layers[tt];this.familiesBySource={};let je=i.bk(Object.values(this._layerConfigs),this.keyCache);for(let tt of je){let xt=tt.map(ar=>this._layers[ar.id]),Ie=xt[0];if(Ie.visibility==="none")continue;let xe=Ie.source||"",ke=this.familiesBySource[xe];ke||(ke=this.familiesBySource[xe]={});let vt=Ie.sourceLayer||"_geojsonTileLayer",ir=ke[vt];ir||(ir=ke[vt]=[]),ir.push(xt)}}}class o{constructor(Ge){let Je={},je=[];for(let xe in Ge){let ke=Ge[xe],vt=Je[xe]={};for(let ir in ke){let ar=ke[+ir];if(!ar||ar.bitmap.width===0||ar.bitmap.height===0)continue;let vr={x:0,y:0,w:ar.bitmap.width+2,h:ar.bitmap.height+2};je.push(vr),vt[ir]={rect:vr,metrics:ar.metrics}}}let{w:tt,h:xt}=i.p(je),Ie=new i.o({width:tt||1,height:xt||1});for(let xe in Ge){let ke=Ge[xe];for(let vt in ke){let ir=ke[+vt];if(!ir||ir.bitmap.width===0||ir.bitmap.height===0)continue;let ar=Je[xe][vt].rect;i.o.copy(ir.bitmap,Ie,{x:0,y:0},{x:ar.x+1,y:ar.y+1},ir.bitmap)}}this.image=Ie,this.positions=Je}}i.bl("GlyphAtlas",o);class s{constructor(Ge){this.tileID=new i.S(Ge.tileID.overscaledZ,Ge.tileID.wrap,Ge.tileID.canonical.z,Ge.tileID.canonical.x,Ge.tileID.canonical.y),this.uid=Ge.uid,this.zoom=Ge.zoom,this.pixelRatio=Ge.pixelRatio,this.tileSize=Ge.tileSize,this.source=Ge.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=Ge.showCollisionBoxes,this.collectResourceTiming=!!Ge.collectResourceTiming,this.returnDependencies=!!Ge.returnDependencies,this.promoteId=Ge.promoteId,this.inFlightDependencies=[]}parse(Ge,Je,je,tt){return i._(this,void 0,void 0,function*(){this.status="parsing",this.data=Ge,this.collisionBoxArray=new i.a5;let xt=new i.bm(Object.keys(Ge.layers).sort()),Ie=new i.bn(this.tileID,this.promoteId);Ie.bucketLayerIDs=[];let xe={},ke={featureIndex:Ie,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:je},vt=Je.familiesBySource[this.source];for(let qn in vt){let Fn=Ge.layers[qn];if(!Fn)continue;Fn.version===1&&i.w(`Vector tile source "${this.source}" layer "${qn}" does not use vector tile spec v2 and therefore may have some rendering errors.`);let ra=xt.encode(qn),la=[];for(let Ut=0;Ut=wt.maxzoom||wt.visibility!=="none"&&(l(Ut,this.zoom,je),(xe[wt.id]=wt.createBucket({index:Ie.bucketLayerIDs.length,layers:Ut,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:ra,sourceID:this.source})).populate(la,ke,this.tileID.canonical),Ie.bucketLayerIDs.push(Ut.map(rr=>rr.id)))}}let ir=i.aF(ke.glyphDependencies,qn=>Object.keys(qn).map(Number));this.inFlightDependencies.forEach(qn=>qn==null?void 0:qn.abort()),this.inFlightDependencies=[];let ar=Promise.resolve({});if(Object.keys(ir).length){let qn=new AbortController;this.inFlightDependencies.push(qn),ar=tt.sendAsync({type:"GG",data:{stacks:ir,source:this.source,tileID:this.tileID,type:"glyphs"}},qn)}let vr=Object.keys(ke.iconDependencies),ii=Promise.resolve({});if(vr.length){let qn=new AbortController;this.inFlightDependencies.push(qn),ii=tt.sendAsync({type:"GI",data:{icons:vr,source:this.source,tileID:this.tileID,type:"icons"}},qn)}let pi=Object.keys(ke.patternDependencies),$r=Promise.resolve({});if(pi.length){let qn=new AbortController;this.inFlightDependencies.push(qn),$r=tt.sendAsync({type:"GI",data:{icons:pi,source:this.source,tileID:this.tileID,type:"patterns"}},qn)}let[di,ji,In]=yield Promise.all([ar,ii,$r]),wi=new o(di),On=new i.bo(ji,In);for(let qn in xe){let Fn=xe[qn];Fn instanceof i.a6?(l(Fn.layers,this.zoom,je),i.bp({bucket:Fn,glyphMap:di,glyphPositions:wi.positions,imageMap:ji,imagePositions:On.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):Fn.hasPattern&&(Fn instanceof i.bq||Fn instanceof i.br||Fn instanceof i.bs)&&(l(Fn.layers,this.zoom,je),Fn.addFeatures(ke,this.tileID.canonical,On.patternPositions))}return this.status="done",{buckets:Object.values(xe).filter(qn=>!qn.isEmpty()),featureIndex:Ie,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:wi.image,imageAtlas:On,glyphMap:this.returnDependencies?di:null,iconMap:this.returnDependencies?ji:null,glyphPositions:this.returnDependencies?wi.positions:null}})}}function l(dt,Ge,Je){let je=new i.z(Ge);for(let tt of dt)tt.recalculate(je,Je)}class u{constructor(Ge,Je,je){this.actor=Ge,this.layerIndex=Je,this.availableImages=je,this.fetching={},this.loading={},this.loaded={}}loadVectorTile(Ge,Je){return i._(this,void 0,void 0,function*(){let je=yield i.l(Ge.request,Je);try{return{vectorTile:new i.bt.VectorTile(new i.bu(je.data)),rawData:je.data,cacheControl:je.cacheControl,expires:je.expires}}catch(tt){let xt=new Uint8Array(je.data),Ie=`Unable to parse the tile at ${Ge.request.url}, `;throw Ie+=xt[0]===31&&xt[1]===139?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${tt.message}`,new Error(Ie)}})}loadTile(Ge){return i._(this,void 0,void 0,function*(){let Je=Ge.uid,je=!!(Ge&&Ge.request&&Ge.request.collectResourceTiming)&&new i.bv(Ge.request),tt=new s(Ge);this.loading[Je]=tt;let xt=new AbortController;tt.abort=xt;try{let Ie=yield this.loadVectorTile(Ge,xt);if(delete this.loading[Je],!Ie)return null;let xe=Ie.rawData,ke={};Ie.expires&&(ke.expires=Ie.expires),Ie.cacheControl&&(ke.cacheControl=Ie.cacheControl);let vt={};if(je){let ar=je.finish();ar&&(vt.resourceTiming=JSON.parse(JSON.stringify(ar)))}tt.vectorTile=Ie.vectorTile;let ir=tt.parse(Ie.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[Je]=tt,this.fetching[Je]={rawTileData:xe,cacheControl:ke,resourceTiming:vt};try{let ar=yield ir;return i.e({rawTileData:xe.slice(0)},ar,ke,vt)}finally{delete this.fetching[Je]}}catch(Ie){throw delete this.loading[Je],tt.status="done",this.loaded[Je]=tt,Ie}})}reloadTile(Ge){return i._(this,void 0,void 0,function*(){let Je=Ge.uid;if(!this.loaded||!this.loaded[Je])throw new Error("Should not be trying to reload a tile that was never loaded or has been removed");let je=this.loaded[Je];if(je.showCollisionBoxes=Ge.showCollisionBoxes,je.status==="parsing"){let tt=yield je.parse(je.vectorTile,this.layerIndex,this.availableImages,this.actor),xt;if(this.fetching[Je]){let{rawTileData:Ie,cacheControl:xe,resourceTiming:ke}=this.fetching[Je];delete this.fetching[Je],xt=i.e({rawTileData:Ie.slice(0)},tt,xe,ke)}else xt=tt;return xt}if(je.status==="done"&&je.vectorTile)return je.parse(je.vectorTile,this.layerIndex,this.availableImages,this.actor)})}abortTile(Ge){return i._(this,void 0,void 0,function*(){let Je=this.loading,je=Ge.uid;Je&&Je[je]&&Je[je].abort&&(Je[je].abort.abort(),delete Je[je])})}removeTile(Ge){return i._(this,void 0,void 0,function*(){this.loaded&&this.loaded[Ge.uid]&&delete this.loaded[Ge.uid]})}}class c{constructor(){this.loaded={}}loadTile(Ge){return i._(this,void 0,void 0,function*(){let{uid:Je,encoding:je,rawImageData:tt,redFactor:xt,greenFactor:Ie,blueFactor:xe,baseShift:ke}=Ge,vt=tt.width+2,ir=tt.height+2,ar=i.b(tt)?new i.R({width:vt,height:ir},yield i.bw(tt,-1,-1,vt,ir)):tt,vr=new i.bx(Je,ar,je,xt,Ie,xe,ke);return this.loaded=this.loaded||{},this.loaded[Je]=vr,vr})}removeTile(Ge){let Je=this.loaded,je=Ge.uid;Je&&Je[je]&&delete Je[je]}}function f(dt,Ge){if(dt.length!==0){h(dt[0],Ge);for(var Je=1;Je=Math.abs(xe)?Je-ke+xe:xe-ke+Je,Je=ke}Je+je>=0!=!!Ge&&dt.reverse()}var d=i.by(function dt(Ge,Je){var je,tt=Ge&&Ge.type;if(tt==="FeatureCollection")for(je=0;je>31}function O(dt,Ge){for(var Je=dt.loadGeometry(),je=dt.type,tt=0,xt=0,Ie=Je.length,xe=0;xedt},H=Math.fround||(N=new Float32Array(1),dt=>(N[0]=+dt,N[0]));var N;let j=3,re=5,oe=6;class _e{constructor(Ge){this.options=Object.assign(Object.create(Z),Ge),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(Ge){let{log:Je,minZoom:je,maxZoom:tt}=this.options;Je&&console.time("total time");let xt=`prepare ${Ge.length} points`;Je&&console.time(xt),this.points=Ge;let Ie=[];for(let ke=0;ke=je;ke--){let vt=+Date.now();xe=this.trees[ke]=this._createTree(this._cluster(xe,ke)),Je&&console.log("z%d: %d clusters in %dms",ke,xe.numItems,+Date.now()-vt)}return Je&&console.timeEnd("total time"),this}getClusters(Ge,Je){let je=((Ge[0]+180)%360+360)%360-180,tt=Math.max(-90,Math.min(90,Ge[1])),xt=Ge[2]===180?180:((Ge[2]+180)%360+360)%360-180,Ie=Math.max(-90,Math.min(90,Ge[3]));if(Ge[2]-Ge[0]>=360)je=-180,xt=180;else if(je>xt){let ar=this.getClusters([je,tt,180,Ie],Je),vr=this.getClusters([-180,tt,xt,Ie],Je);return ar.concat(vr)}let xe=this.trees[this._limitZoom(Je)],ke=xe.range(me(je),ie(Ie),me(xt),ie(tt)),vt=xe.data,ir=[];for(let ar of ke){let vr=this.stride*ar;ir.push(vt[vr+re]>1?Ee(vt,vr,this.clusterProps):this.points[vt[vr+j]])}return ir}getChildren(Ge){let Je=this._getOriginId(Ge),je=this._getOriginZoom(Ge),tt="No cluster with the specified id.",xt=this.trees[je];if(!xt)throw new Error(tt);let Ie=xt.data;if(Je*this.stride>=Ie.length)throw new Error(tt);let xe=this.options.radius/(this.options.extent*Math.pow(2,je-1)),ke=xt.within(Ie[Je*this.stride],Ie[Je*this.stride+1],xe),vt=[];for(let ir of ke){let ar=ir*this.stride;Ie[ar+4]===Ge&&vt.push(Ie[ar+re]>1?Ee(Ie,ar,this.clusterProps):this.points[Ie[ar+j]])}if(vt.length===0)throw new Error(tt);return vt}getLeaves(Ge,Je,je){let tt=[];return this._appendLeaves(tt,Ge,Je=Je||10,je=je||0,0),tt}getTile(Ge,Je,je){let tt=this.trees[this._limitZoom(Ge)],xt=Math.pow(2,Ge),{extent:Ie,radius:xe}=this.options,ke=xe/Ie,vt=(je-ke)/xt,ir=(je+1+ke)/xt,ar={features:[]};return this._addTileFeatures(tt.range((Je-ke)/xt,vt,(Je+1+ke)/xt,ir),tt.data,Je,je,xt,ar),Je===0&&this._addTileFeatures(tt.range(1-ke/xt,vt,1,ir),tt.data,xt,je,xt,ar),Je===xt-1&&this._addTileFeatures(tt.range(0,vt,ke/xt,ir),tt.data,-1,je,xt,ar),ar.features.length?ar:null}getClusterExpansionZoom(Ge){let Je=this._getOriginZoom(Ge)-1;for(;Je<=this.options.maxZoom;){let je=this.getChildren(Ge);if(Je++,je.length!==1)break;Ge=je[0].properties.cluster_id}return Je}_appendLeaves(Ge,Je,je,tt,xt){let Ie=this.getChildren(Je);for(let xe of Ie){let ke=xe.properties;if(ke&&ke.cluster?xt+ke.point_count<=tt?xt+=ke.point_count:xt=this._appendLeaves(Ge,ke.cluster_id,je,tt,xt):xt1,ir,ar,vr;if(vt)ir=Ce(Je,ke,this.clusterProps),ar=Je[ke],vr=Je[ke+1];else{let $r=this.points[Je[ke+j]];ir=$r.properties;let[di,ji]=$r.geometry.coordinates;ar=me(di),vr=ie(ji)}let ii={type:1,geometry:[[Math.round(this.options.extent*(ar*xt-je)),Math.round(this.options.extent*(vr*xt-tt))]],tags:ir},pi;pi=vt||this.options.generateId?Je[ke+j]:this.points[Je[ke+j]].id,pi!==void 0&&(ii.id=pi),Ie.features.push(ii)}}_limitZoom(Ge){return Math.max(this.options.minZoom,Math.min(Math.floor(+Ge),this.options.maxZoom+1))}_cluster(Ge,Je){let{radius:je,extent:tt,reduce:xt,minPoints:Ie}=this.options,xe=je/(tt*Math.pow(2,Je)),ke=Ge.data,vt=[],ir=this.stride;for(let ar=0;arJe&&(di+=ke[In+re])}if(di>$r&&di>=Ie){let ji,In=vr*$r,wi=ii*$r,On=-1,qn=((ar/ir|0)<<5)+(Je+1)+this.points.length;for(let Fn of pi){let ra=Fn*ir;if(ke[ra+2]<=Je)continue;ke[ra+2]=Je;let la=ke[ra+re];In+=ke[ra]*la,wi+=ke[ra+1]*la,ke[ra+4]=qn,xt&&(ji||(ji=this._map(ke,ar,!0),On=this.clusterProps.length,this.clusterProps.push(ji)),xt(ji,this._map(ke,ra)))}ke[ar+4]=qn,vt.push(In/di,wi/di,1/0,qn,-1,di),xt&&vt.push(On)}else{for(let ji=0;ji1)for(let ji of pi){let In=ji*ir;if(!(ke[In+2]<=Je)){ke[In+2]=Je;for(let wi=0;wi>5}_getOriginZoom(Ge){return(Ge-this.points.length)%32}_map(Ge,Je,je){if(Ge[Je+re]>1){let Ie=this.clusterProps[Ge[Je+oe]];return je?Object.assign({},Ie):Ie}let tt=this.points[Ge[Je+j]].properties,xt=this.options.map(tt);return je&&xt===tt?Object.assign({},xt):xt}}function Ee(dt,Ge,Je){return{type:"Feature",id:dt[Ge+j],properties:Ce(dt,Ge,Je),geometry:{type:"Point",coordinates:[(je=dt[Ge],360*(je-.5)),Se(dt[Ge+1])]}};var je}function Ce(dt,Ge,Je){let je=dt[Ge+re],tt=je>=1e4?`${Math.round(je/1e3)}k`:je>=1e3?Math.round(je/100)/10+"k":je,xt=dt[Ge+oe],Ie=xt===-1?{}:Object.assign({},Je[xt]);return Object.assign(Ie,{cluster:!0,cluster_id:dt[Ge+j],point_count:je,point_count_abbreviated:tt})}function me(dt){return dt/360+.5}function ie(dt){let Ge=Math.sin(dt*Math.PI/180),Je=.5-.25*Math.log((1+Ge)/(1-Ge))/Math.PI;return Je<0?0:Je>1?1:Je}function Se(dt){let Ge=(180-360*dt)*Math.PI/180;return 360*Math.atan(Math.exp(Ge))/Math.PI-90}function Le(dt,Ge,Je,je){let tt=je,xt=Ge+(Je-Ge>>1),Ie,xe=Je-Ge,ke=dt[Ge],vt=dt[Ge+1],ir=dt[Je],ar=dt[Je+1];for(let vr=Ge+3;vrtt)Ie=vr,tt=ii;else if(ii===tt){let pi=Math.abs(vr-xt);pije&&(Ie-Ge>3&&Le(dt,Ge,Ie,je),dt[Ie+2]=tt,Je-Ie>3&&Le(dt,Ie,Je,je))}function Ae(dt,Ge,Je,je,tt,xt){let Ie=tt-Je,xe=xt-je;if(Ie!==0||xe!==0){let ke=((dt-Je)*Ie+(Ge-je)*xe)/(Ie*Ie+xe*xe);ke>1?(Je=tt,je=xt):ke>0&&(Je+=Ie*ke,je+=xe*ke)}return Ie=dt-Je,xe=Ge-je,Ie*Ie+xe*xe}function Fe(dt,Ge,Je,je){let tt={id:dt==null?null:dt,type:Ge,geometry:Je,tags:je,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if(Ge==="Point"||Ge==="MultiPoint"||Ge==="LineString")Pe(tt,Je);else if(Ge==="Polygon")Pe(tt,Je[0]);else if(Ge==="MultiLineString")for(let xt of Je)Pe(tt,xt);else if(Ge==="MultiPolygon")for(let xt of Je)Pe(tt,xt[0]);return tt}function Pe(dt,Ge){for(let Je=0;Je0&&(Ie+=je?(tt*ir-vt*xt)/2:Math.sqrt(Math.pow(vt-tt,2)+Math.pow(ir-xt,2))),tt=vt,xt=ir}let xe=Ge.length-3;Ge[2]=1,Le(Ge,0,xe,Je),Ge[xe+2]=1,Ge.size=Math.abs(Ie),Ge.start=0,Ge.end=Ge.size}function Ze(dt,Ge,Je,je){for(let tt=0;tt1?1:Je}function Zt(dt,Ge,Je,je,tt,xt,Ie,xe){if(je/=Ge,xt>=(Je/=Ge)&&Ie=je)return null;let ke=[];for(let vt of dt){let ir=vt.geometry,ar=vt.type,vr=tt===0?vt.minX:vt.minY,ii=tt===0?vt.maxX:vt.maxY;if(vr>=Je&&ii=je)continue;let pi=[];if(ar==="Point"||ar==="MultiPoint")st(ir,pi,Je,je,tt);else if(ar==="LineString")lt(ir,pi,Je,je,tt,!1,xe.lineMetrics);else if(ar==="MultiLineString")Nt(ir,pi,Je,je,tt,!1);else if(ar==="Polygon")Nt(ir,pi,Je,je,tt,!0);else if(ar==="MultiPolygon")for(let $r of ir){let di=[];Nt($r,di,Je,je,tt,!0),di.length&&pi.push(di)}if(pi.length){if(xe.lineMetrics&&ar==="LineString"){for(let $r of pi)ke.push(Fe(vt.id,ar,$r,vt.tags));continue}ar!=="LineString"&&ar!=="MultiLineString"||(pi.length===1?(ar="LineString",pi=pi[0]):ar="MultiLineString"),ar!=="Point"&&ar!=="MultiPoint"||(ar=pi.length===3?"Point":"MultiPoint"),ke.push(Fe(vt.id,ar,pi,vt.tags))}}return ke.length?ke:null}function st(dt,Ge,Je,je,tt){for(let xt=0;xt=Je&&Ie<=je&&Jt(Ge,dt[xt],dt[xt+1],dt[xt+2])}}function lt(dt,Ge,Je,je,tt,xt,Ie){let xe=Gt(dt),ke=tt===0?sr:wr,vt,ir,ar=dt.start;for(let di=0;diJe&&(ir=ke(xe,ji,In,On,qn,Je),Ie&&(xe.start=ar+vt*ir)):Fn>je?ra=Je&&(ir=ke(xe,ji,In,On,qn,Je),la=!0),ra>je&&Fn<=je&&(ir=ke(xe,ji,In,On,qn,je),la=!0),!xt&&la&&(Ie&&(xe.end=ar+vt*ir),Ge.push(xe),xe=Gt(dt)),Ie&&(ar+=vt)}let vr=dt.length-3,ii=dt[vr],pi=dt[vr+1],$r=tt===0?ii:pi;$r>=Je&&$r<=je&&Jt(xe,ii,pi,dt[vr+2]),vr=xe.length-3,xt&&vr>=3&&(xe[vr]!==xe[0]||xe[vr+1]!==xe[1])&&Jt(xe,xe[0],xe[1],xe[2]),xe.length&&Ge.push(xe)}function Gt(dt){let Ge=[];return Ge.size=dt.size,Ge.start=dt.start,Ge.end=dt.end,Ge}function Nt(dt,Ge,Je,je,tt,xt){for(let Ie of dt)lt(Ie,Ge,Je,je,tt,xt,!1)}function Jt(dt,Ge,Je,je){dt.push(Ge,Je,je)}function sr(dt,Ge,Je,je,tt,xt){let Ie=(xt-Ge)/(je-Ge);return Jt(dt,xt,Je+(tt-Je)*Ie,1),Ie}function wr(dt,Ge,Je,je,tt,xt){let Ie=(xt-Je)/(tt-Je);return Jt(dt,Ge+(je-Ge)*Ie,xt,1),Ie}function cr(dt,Ge){let Je=[];for(let je=0;je0&&Ge.size<(tt?Ie:je))return void(Je.numPoints+=Ge.length/3);let xe=[];for(let ke=0;keIe)&&(Je.numSimplified++,xe.push(Ge[ke],Ge[ke+1])),Je.numPoints++;tt&&function(ke,vt){let ir=0;for(let ar=0,vr=ke.length,ii=vr-2;ar0===vt)for(let ar=0,vr=ke.length;ar24)throw new Error("maxZoom should be in the 0-24 range");if(Je.promoteId&&Je.generateId)throw new Error("promoteId and generateId cannot be used together.");let tt=function(xt,Ie){let xe=[];if(xt.type==="FeatureCollection")for(let ke=0;ke1&&console.time("creation"),ii=this.tiles[vr]=Vt(Ge,Je,je,tt,vt),this.tileCoords.push({z:Je,x:je,y:tt}),ir)){ir>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Je,je,tt,ii.numFeatures,ii.numPoints,ii.numSimplified),console.timeEnd("creation"));let la=`z${Je}`;this.stats[la]=(this.stats[la]||0)+1,this.total++}if(ii.source=Ge,xt==null){if(Je===vt.indexMaxZoom||ii.numPoints<=vt.indexMaxPoints)continue}else{if(Je===vt.maxZoom||Je===xt)continue;if(xt!=null){let la=xt-Je;if(je!==Ie>>la||tt!==xe>>la)continue}}if(ii.source=null,Ge.length===0)continue;ir>1&&console.time("clipping");let pi=.5*vt.buffer/vt.extent,$r=.5-pi,di=.5+pi,ji=1+pi,In=null,wi=null,On=null,qn=null,Fn=Zt(Ge,ar,je-pi,je+di,0,ii.minX,ii.maxX,vt),ra=Zt(Ge,ar,je+$r,je+ji,0,ii.minX,ii.maxX,vt);Ge=null,Fn&&(In=Zt(Fn,ar,tt-pi,tt+di,1,ii.minY,ii.maxY,vt),wi=Zt(Fn,ar,tt+$r,tt+ji,1,ii.minY,ii.maxY,vt),Fn=null),ra&&(On=Zt(ra,ar,tt-pi,tt+di,1,ii.minY,ii.maxY,vt),qn=Zt(ra,ar,tt+$r,tt+ji,1,ii.minY,ii.maxY,vt),ra=null),ir>1&&console.timeEnd("clipping"),ke.push(In||[],Je+1,2*je,2*tt),ke.push(wi||[],Je+1,2*je,2*tt+1),ke.push(On||[],Je+1,2*je+1,2*tt),ke.push(qn||[],Je+1,2*je+1,2*tt+1)}}getTile(Ge,Je,je){Ge=+Ge,Je=+Je,je=+je;let tt=this.options,{extent:xt,debug:Ie}=tt;if(Ge<0||Ge>24)return null;let xe=1<1&&console.log("drilling down to z%d-%d-%d",Ge,Je,je);let vt,ir=Ge,ar=Je,vr=je;for(;!vt&&ir>0;)ir--,ar>>=1,vr>>=1,vt=this.tiles[lr(ir,ar,vr)];return vt&&vt.source?(Ie>1&&(console.log("found parent tile z%d-%d-%d",ir,ar,vr),console.time("drilling down")),this.splitTile(vt.source,ir,ar,vr,Ge,Je,je),Ie>1&&console.timeEnd("drilling down"),this.tiles[ke]?St(this.tiles[ke],xt):null):null}}function lr(dt,Ge,Je){return 32*((1<{ar.properties=ii;let pi={};for(let $r of vr)pi[$r]=ke[$r].evaluate(ir,ar);return pi},Ie.reduce=(ii,pi)=>{ar.properties=pi;for(let $r of vr)ir.accumulated=ii[$r],ii[$r]=vt[$r].evaluate(ir,ar)},Ie}(Ge)).load((yield this._pendingData).features):(tt=yield this._pendingData,new er(tt,Ge.geojsonVtOptions)),this.loaded={};let xt={};if(je){let Ie=je.finish();Ie&&(xt.resourceTiming={},xt.resourceTiming[Ge.source]=JSON.parse(JSON.stringify(Ie)))}return xt}catch(xt){if(delete this._pendingRequest,i.bB(xt))return{abandoned:!0};throw xt}var tt})}getData(){return i._(this,void 0,void 0,function*(){return this._pendingData})}reloadTile(Ge){let Je=this.loaded;return Je&&Je[Ge.uid]?super.reloadTile(Ge):this.loadTile(Ge)}loadAndProcessGeoJSON(Ge,Je){return i._(this,void 0,void 0,function*(){let je=yield this.loadGeoJSON(Ge,Je);if(delete this._pendingRequest,typeof je!="object")throw new Error(`Input data given to '${Ge.source}' is not a valid GeoJSON object.`);if(d(je,!0),Ge.filter){let tt=i.bC(Ge.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(tt.result==="error")throw new Error(tt.value.map(Ie=>`${Ie.key}: ${Ie.message}`).join(", "));je={type:"FeatureCollection",features:je.features.filter(Ie=>tt.value.evaluate({zoom:0},Ie))}}return je})}loadGeoJSON(Ge,Je){return i._(this,void 0,void 0,function*(){let{promoteId:je}=Ge;if(Ge.request){let tt=yield i.h(Ge.request,Je);return this._dataUpdateable=Lr(tt.data,je)?ti(tt.data,je):void 0,tt.data}if(typeof Ge.data=="string")try{let tt=JSON.parse(Ge.data);return this._dataUpdateable=Lr(tt,je)?ti(tt,je):void 0,tt}catch(tt){throw new Error(`Input data given to '${Ge.source}' is not a valid GeoJSON object.`)}if(!Ge.dataDiff)throw new Error(`Input data given to '${Ge.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${Ge.source}`);return function(tt,xt,Ie){var xe,ke,vt,ir;if(xt.removeAll&&tt.clear(),xt.remove)for(let ar of xt.remove)tt.delete(ar);if(xt.add)for(let ar of xt.add){let vr=Tr(ar,Ie);vr!=null&&tt.set(vr,ar)}if(xt.update)for(let ar of xt.update){let vr=tt.get(ar.id);if(vr==null)continue;let ii=!ar.removeAllProperties&&(((xe=ar.removeProperties)===null||xe===void 0?void 0:xe.length)>0||((ke=ar.addOrUpdateProperties)===null||ke===void 0?void 0:ke.length)>0);if((ar.newGeometry||ar.removeAllProperties||ii)&&(vr=Object.assign({},vr),tt.set(ar.id,vr),ii&&(vr.properties=Object.assign({},vr.properties))),ar.newGeometry&&(vr.geometry=ar.newGeometry),ar.removeAllProperties)vr.properties={};else if(((vt=ar.removeProperties)===null||vt===void 0?void 0:vt.length)>0)for(let pi of ar.removeProperties)Object.prototype.hasOwnProperty.call(vr.properties,pi)&&delete vr.properties[pi];if(((ir=ar.addOrUpdateProperties)===null||ir===void 0?void 0:ir.length)>0)for(let{key:pi,value:$r}of ar.addOrUpdateProperties)vr.properties[pi]=$r}}(this._dataUpdateable,Ge.dataDiff,je),{type:"FeatureCollection",features:Array.from(this._dataUpdateable.values())}})}removeSource(Ge){return i._(this,void 0,void 0,function*(){this._pendingRequest&&this._pendingRequest.abort()})}getClusterExpansionZoom(Ge){return this._geoJSONIndex.getClusterExpansionZoom(Ge.clusterId)}getClusterChildren(Ge){return this._geoJSONIndex.getChildren(Ge.clusterId)}getClusterLeaves(Ge){return this._geoJSONIndex.getLeaves(Ge.clusterId,Ge.limit,Ge.offset)}}class Vr{constructor(Ge){this.self=Ge,this.actor=new i.F(Ge),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(Je,je)=>{if(this.externalWorkerSourceTypes[Je])throw new Error(`Worker source with name "${Je}" already registered.`);this.externalWorkerSourceTypes[Je]=je},this.self.addProtocol=i.bi,this.self.removeProtocol=i.bj,this.self.registerRTLTextPlugin=Je=>{if(i.bD.isParsed())throw new Error("RTL text plugin already registered.");i.bD.setMethods(Je)},this.actor.registerMessageHandler("LDT",(Je,je)=>this._getDEMWorkerSource(Je,je.source).loadTile(je)),this.actor.registerMessageHandler("RDT",(Je,je)=>i._(this,void 0,void 0,function*(){this._getDEMWorkerSource(Je,je.source).removeTile(je)})),this.actor.registerMessageHandler("GCEZ",(Je,je)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Je,je.type,je.source).getClusterExpansionZoom(je)})),this.actor.registerMessageHandler("GCC",(Je,je)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Je,je.type,je.source).getClusterChildren(je)})),this.actor.registerMessageHandler("GCL",(Je,je)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Je,je.type,je.source).getClusterLeaves(je)})),this.actor.registerMessageHandler("LD",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).loadData(je)),this.actor.registerMessageHandler("GD",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).getData()),this.actor.registerMessageHandler("LT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).loadTile(je)),this.actor.registerMessageHandler("RT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).reloadTile(je)),this.actor.registerMessageHandler("AT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).abortTile(je)),this.actor.registerMessageHandler("RMT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).removeTile(je)),this.actor.registerMessageHandler("RS",(Je,je)=>i._(this,void 0,void 0,function*(){if(!this.workerSources[Je]||!this.workerSources[Je][je.type]||!this.workerSources[Je][je.type][je.source])return;let tt=this.workerSources[Je][je.type][je.source];delete this.workerSources[Je][je.type][je.source],tt.removeSource!==void 0&&tt.removeSource(je)})),this.actor.registerMessageHandler("RM",Je=>i._(this,void 0,void 0,function*(){delete this.layerIndexes[Je],delete this.availableImages[Je],delete this.workerSources[Je],delete this.demWorkerSources[Je]})),this.actor.registerMessageHandler("SR",(Je,je)=>i._(this,void 0,void 0,function*(){this.referrer=je})),this.actor.registerMessageHandler("SRPS",(Je,je)=>this._syncRTLPluginState(Je,je)),this.actor.registerMessageHandler("IS",(Je,je)=>i._(this,void 0,void 0,function*(){this.self.importScripts(je)})),this.actor.registerMessageHandler("SI",(Je,je)=>this._setImages(Je,je)),this.actor.registerMessageHandler("UL",(Je,je)=>i._(this,void 0,void 0,function*(){this._getLayerIndex(Je).update(je.layers,je.removedIds)})),this.actor.registerMessageHandler("SL",(Je,je)=>i._(this,void 0,void 0,function*(){this._getLayerIndex(Je).replace(je)}))}_setImages(Ge,Je){return i._(this,void 0,void 0,function*(){this.availableImages[Ge]=Je;for(let je in this.workerSources[Ge]){let tt=this.workerSources[Ge][je];for(let xt in tt)tt[xt].availableImages=Je}})}_syncRTLPluginState(Ge,Je){return i._(this,void 0,void 0,function*(){if(i.bD.isParsed())return i.bD.getState();if(Je.pluginStatus!=="loading")return i.bD.setState(Je),Je;let je=Je.pluginURL;if(this.self.importScripts(je),i.bD.isParsed()){let tt={pluginStatus:"loaded",pluginURL:je};return i.bD.setState(tt),tt}throw i.bD.setState({pluginStatus:"error",pluginURL:""}),new Error(`RTL Text Plugin failed to import scripts from ${je}`)})}_getAvailableImages(Ge){let Je=this.availableImages[Ge];return Je||(Je=[]),Je}_getLayerIndex(Ge){let Je=this.layerIndexes[Ge];return Je||(Je=this.layerIndexes[Ge]=new a),Je}_getWorkerSource(Ge,Je,je){if(this.workerSources[Ge]||(this.workerSources[Ge]={}),this.workerSources[Ge][Je]||(this.workerSources[Ge][Je]={}),!this.workerSources[Ge][Je][je]){let tt={sendAsync:(xt,Ie)=>(xt.targetMapId=Ge,this.actor.sendAsync(xt,Ie))};switch(Je){case"vector":this.workerSources[Ge][Je][je]=new u(tt,this._getLayerIndex(Ge),this._getAvailableImages(Ge));break;case"geojson":this.workerSources[Ge][Je][je]=new Br(tt,this._getLayerIndex(Ge),this._getAvailableImages(Ge));break;default:this.workerSources[Ge][Je][je]=new this.externalWorkerSourceTypes[Je](tt,this._getLayerIndex(Ge),this._getAvailableImages(Ge))}}return this.workerSources[Ge][Je][je]}_getDEMWorkerSource(Ge,Je){return this.demWorkerSources[Ge]||(this.demWorkerSources[Ge]={}),this.demWorkerSources[Ge][Je]||(this.demWorkerSources[Ge][Je]=new c),this.demWorkerSources[Ge][Je]}}return i.i(self)&&(self.worker=new Vr(self)),Vr}),r("index",["exports","./shared"],function(i,a){"use strict";var o="4.7.1";let s,l,u={now:typeof performance!="undefined"&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync:ue=>new Promise((w,B)=>{let Q=requestAnimationFrame(w);ue.signal.addEventListener("abort",()=>{cancelAnimationFrame(Q),B(a.c())})}),getImageData(ue,w=0){return this.getImageCanvasContext(ue).getImageData(-w,-w,ue.width+2*w,ue.height+2*w)},getImageCanvasContext(ue){let w=window.document.createElement("canvas"),B=w.getContext("2d",{willReadFrequently:!0});if(!B)throw new Error("failed to create canvas 2d context");return w.width=ue.width,w.height=ue.height,B.drawImage(ue,0,0,ue.width,ue.height),B},resolveURL:ue=>(s||(s=document.createElement("a")),s.href=ue,s.href),hardwareConcurrency:typeof navigator!="undefined"&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(l==null&&(l=matchMedia("(prefers-reduced-motion: reduce)")),l.matches)}};class c{static testProp(w){if(!c.docStyle)return w[0];for(let B=0;B{window.removeEventListener("click",c.suppressClickInternal,!0)},0)}static getScale(w){let B=w.getBoundingClientRect();return{x:B.width/w.offsetWidth||1,y:B.height/w.offsetHeight||1,boundingClientRect:B}}static getPoint(w,B,Q){let ee=B.boundingClientRect;return new a.P((Q.clientX-ee.left)/B.x-w.clientLeft,(Q.clientY-ee.top)/B.y-w.clientTop)}static mousePos(w,B){let Q=c.getScale(w);return c.getPoint(w,Q,B)}static touchPos(w,B){let Q=[],ee=c.getScale(w);for(let le=0;le{h&&b(h),h=null,_=!0},d.onerror=()=>{v=!0,h=null},d.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="),function(ue){let w,B,Q,ee;ue.resetRequestQueue=()=>{w=[],B=0,Q=0,ee={}},ue.addThrottleControl=ot=>{let Tt=Q++;return ee[Tt]=ot,Tt},ue.removeThrottleControl=ot=>{delete ee[ot],qe()},ue.getImage=(ot,Tt,Yt=!0)=>new Promise((Kt,xr)=>{f.supported&&(ot.headers||(ot.headers={}),ot.headers.accept="image/webp,*/*"),a.e(ot,{type:"image"}),w.push({abortController:Tt,requestParameters:ot,supportImageRefresh:Yt,state:"queued",onError:Ir=>{xr(Ir)},onSuccess:Ir=>{Kt(Ir)}}),qe()});let le=ot=>a._(this,void 0,void 0,function*(){ot.state="running";let{requestParameters:Tt,supportImageRefresh:Yt,onError:Kt,onSuccess:xr,abortController:Ir}=ot,ve=Yt===!1&&!a.i(self)&&!a.g(Tt.url)&&(!Tt.headers||Object.keys(Tt.headers).reduce((Be,et)=>Be&&et==="accept",!0));B++;let be=ve?Xe(Tt,Ir):a.m(Tt,Ir);try{let Be=yield be;delete ot.abortController,ot.state="completed",Be.data instanceof HTMLImageElement||a.b(Be.data)?xr(Be):Be.data&&xr({data:yield(De=Be.data,typeof createImageBitmap=="function"?a.d(De):a.f(De)),cacheControl:Be.cacheControl,expires:Be.expires})}catch(Be){delete ot.abortController,Kt(Be)}finally{B--,qe()}var De}),qe=()=>{let ot=(()=>{for(let Tt of Object.keys(ee))if(ee[Tt]())return!0;return!1})()?a.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:a.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let Tt=B;Tt0;Tt++){let Yt=w.shift();Yt.abortController.signal.aborted?Tt--:le(Yt)}},Xe=(ot,Tt)=>new Promise((Yt,Kt)=>{let xr=new Image,Ir=ot.url,ve=ot.credentials;ve&&ve==="include"?xr.crossOrigin="use-credentials":(ve&&ve==="same-origin"||!a.s(Ir))&&(xr.crossOrigin="anonymous"),Tt.signal.addEventListener("abort",()=>{xr.src="",Kt(a.c())}),xr.fetchPriority="high",xr.onload=()=>{xr.onerror=xr.onload=null,Yt({data:xr})},xr.onerror=()=>{xr.onerror=xr.onload=null,Tt.signal.aborted||Kt(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))},xr.src=Ir})}(p||(p={})),p.resetRequestQueue();class k{constructor(w){this._transformRequestFn=w}transformRequest(w,B){return this._transformRequestFn&&this._transformRequestFn(w,B)||{url:w}}setTransformRequest(w){this._transformRequestFn=w}}function E(ue){var w=new a.A(3);return w[0]=ue[0],w[1]=ue[1],w[2]=ue[2],w}var S,L=function(ue,w,B){return ue[0]=w[0]-B[0],ue[1]=w[1]-B[1],ue[2]=w[2]-B[2],ue};S=new a.A(3),a.A!=Float32Array&&(S[0]=0,S[1]=0,S[2]=0);var x=function(ue){var w=ue[0],B=ue[1];return w*w+B*B};function C(ue){let w=[];if(typeof ue=="string")w.push({id:"default",url:ue});else if(ue&&ue.length>0){let B=[];for(let{id:Q,url:ee}of ue){let le=`${Q}${ee}`;B.indexOf(le)===-1&&(B.push(le),w.push({id:Q,url:ee}))}}return w}function M(ue,w,B){let Q=ue.split("?");return Q[0]+=`${w}${B}`,Q.join("?")}(function(){var ue=new a.A(2);a.A!=Float32Array&&(ue[0]=0,ue[1]=0)})();class g{constructor(w,B,Q,ee){this.context=w,this.format=Q,this.texture=w.gl.createTexture(),this.update(B,ee)}update(w,B,Q){let{width:ee,height:le}=w,qe=!(this.size&&this.size[0]===ee&&this.size[1]===le||Q),{context:Xe}=this,{gl:ot}=Xe;if(this.useMipmap=!!(B&&B.useMipmap),ot.bindTexture(ot.TEXTURE_2D,this.texture),Xe.pixelStoreUnpackFlipY.set(!1),Xe.pixelStoreUnpack.set(1),Xe.pixelStoreUnpackPremultiplyAlpha.set(this.format===ot.RGBA&&(!B||B.premultiply!==!1)),qe)this.size=[ee,le],w instanceof HTMLImageElement||w instanceof HTMLCanvasElement||w instanceof HTMLVideoElement||w instanceof ImageData||a.b(w)?ot.texImage2D(ot.TEXTURE_2D,0,this.format,this.format,ot.UNSIGNED_BYTE,w):ot.texImage2D(ot.TEXTURE_2D,0,this.format,ee,le,0,this.format,ot.UNSIGNED_BYTE,w.data);else{let{x:Tt,y:Yt}=Q||{x:0,y:0};w instanceof HTMLImageElement||w instanceof HTMLCanvasElement||w instanceof HTMLVideoElement||w instanceof ImageData||a.b(w)?ot.texSubImage2D(ot.TEXTURE_2D,0,Tt,Yt,ot.RGBA,ot.UNSIGNED_BYTE,w):ot.texSubImage2D(ot.TEXTURE_2D,0,Tt,Yt,ee,le,ot.RGBA,ot.UNSIGNED_BYTE,w.data)}this.useMipmap&&this.isSizePowerOfTwo()&&ot.generateMipmap(ot.TEXTURE_2D)}bind(w,B,Q){let{context:ee}=this,{gl:le}=ee;le.bindTexture(le.TEXTURE_2D,this.texture),Q!==le.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(Q=le.LINEAR),w!==this.filter&&(le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MAG_FILTER,w),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MIN_FILTER,Q||w),this.filter=w),B!==this.wrap&&(le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_S,B),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_T,B),this.wrap=B)}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){let{gl:w}=this.context;w.deleteTexture(this.texture),this.texture=null}}function P(ue){let{userImage:w}=ue;return!!(w&&w.render&&w.render())&&(ue.data.replace(new Uint8Array(w.data.buffer)),!0)}class T extends a.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new a.R({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(w){if(this.loaded!==w&&(this.loaded=w,w)){for(let{ids:B,promiseResolve:Q}of this.requestors)Q(this._getImagesForIds(B));this.requestors=[]}}getImage(w){let B=this.images[w];if(B&&!B.data&&B.spriteData){let Q=B.spriteData;B.data=new a.R({width:Q.width,height:Q.height},Q.context.getImageData(Q.x,Q.y,Q.width,Q.height).data),B.spriteData=null}return B}addImage(w,B){if(this.images[w])throw new Error(`Image id ${w} already exist, use updateImage instead`);this._validate(w,B)&&(this.images[w]=B)}_validate(w,B){let Q=!0,ee=B.data||B.spriteData;return this._validateStretch(B.stretchX,ee&&ee.width)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "stretchX" value`))),Q=!1),this._validateStretch(B.stretchY,ee&&ee.height)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "stretchY" value`))),Q=!1),this._validateContent(B.content,B)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "content" value`))),Q=!1),Q}_validateStretch(w,B){if(!w)return!0;let Q=0;for(let ee of w){if(ee[0]{let ee=!0;if(!this.isLoaded())for(let le of w)this.images[le]||(ee=!1);this.isLoaded()||ee?B(this._getImagesForIds(w)):this.requestors.push({ids:w,promiseResolve:B})})}_getImagesForIds(w){let B={};for(let Q of w){let ee=this.getImage(Q);ee||(this.fire(new a.k("styleimagemissing",{id:Q})),ee=this.getImage(Q)),ee?B[Q]={data:ee.data.clone(),pixelRatio:ee.pixelRatio,sdf:ee.sdf,version:ee.version,stretchX:ee.stretchX,stretchY:ee.stretchY,content:ee.content,textFitWidth:ee.textFitWidth,textFitHeight:ee.textFitHeight,hasRenderCallback:!!(ee.userImage&&ee.userImage.render)}:a.w(`Image "${Q}" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.`)}return B}getPixelSize(){let{width:w,height:B}=this.atlasImage;return{width:w,height:B}}getPattern(w){let B=this.patterns[w],Q=this.getImage(w);if(!Q)return null;if(B&&B.position.version===Q.version)return B.position;if(B)B.position.version=Q.version;else{let ee={w:Q.data.width+2,h:Q.data.height+2,x:0,y:0},le=new a.I(ee,Q);this.patterns[w]={bin:ee,position:le}}return this._updatePatternAtlas(),this.patterns[w].position}bind(w){let B=w.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new g(w,this.atlasImage,B.RGBA),this.atlasTexture.bind(B.LINEAR,B.CLAMP_TO_EDGE)}_updatePatternAtlas(){let w=[];for(let le in this.patterns)w.push(this.patterns[le].bin);let{w:B,h:Q}=a.p(w),ee=this.atlasImage;ee.resize({width:B||1,height:Q||1});for(let le in this.patterns){let{bin:qe}=this.patterns[le],Xe=qe.x+1,ot=qe.y+1,Tt=this.getImage(le).data,Yt=Tt.width,Kt=Tt.height;a.R.copy(Tt,ee,{x:0,y:0},{x:Xe,y:ot},{width:Yt,height:Kt}),a.R.copy(Tt,ee,{x:0,y:Kt-1},{x:Xe,y:ot-1},{width:Yt,height:1}),a.R.copy(Tt,ee,{x:0,y:0},{x:Xe,y:ot+Kt},{width:Yt,height:1}),a.R.copy(Tt,ee,{x:Yt-1,y:0},{x:Xe-1,y:ot},{width:1,height:Kt}),a.R.copy(Tt,ee,{x:0,y:0},{x:Xe+Yt,y:ot},{width:1,height:Kt})}this.dirty=!0}beginFrame(){this.callbackDispatchedThisFrame={}}dispatchRenderCallbacks(w){for(let B of w){if(this.callbackDispatchedThisFrame[B])continue;this.callbackDispatchedThisFrame[B]=!0;let Q=this.getImage(B);Q||a.w(`Image with ID: "${B}" was not found`),P(Q)&&this.updateImage(B,Q)}}}let z=1e20;function O(ue,w,B,Q,ee,le,qe,Xe,ot){for(let Tt=w;Tt-1);ot++,le[ot]=Xe,qe[ot]=Tt,qe[ot+1]=z}for(let Xe=0,ot=0;Xe65535)throw new Error("glyphs > 65535 not supported");if(Q.ranges[le])return{stack:w,id:B,glyph:ee};if(!this.url)throw new Error("glyphsUrl is not set");if(!Q.requests[le]){let Xe=G.loadGlyphRange(w,le,this.url,this.requestManager);Q.requests[le]=Xe}let qe=yield Q.requests[le];for(let Xe in qe)this._doesCharSupportLocalGlyph(+Xe)||(Q.glyphs[+Xe]=qe[+Xe]);return Q.ranges[le]=!0,{stack:w,id:B,glyph:qe[B]||null}})}_doesCharSupportLocalGlyph(w){return!!this.localIdeographFontFamily&&new RegExp("\\p{Ideo}|\\p{sc=Hang}|\\p{sc=Hira}|\\p{sc=Kana}","u").test(String.fromCodePoint(w))}_tinySDF(w,B,Q){let ee=this.localIdeographFontFamily;if(!ee||!this._doesCharSupportLocalGlyph(Q))return;let le=w.tinySDF;if(!le){let Xe="400";/bold/i.test(B)?Xe="900":/medium/i.test(B)?Xe="500":/light/i.test(B)&&(Xe="200"),le=w.tinySDF=new G.TinySDF({fontSize:48,buffer:6,radius:16,cutoff:.25,fontFamily:ee,fontWeight:Xe})}let qe=le.draw(String.fromCharCode(Q));return{id:Q,bitmap:new a.o({width:qe.width||60,height:qe.height||60},qe.data),metrics:{width:qe.glyphWidth/2||24,height:qe.glyphHeight/2||24,left:qe.glyphLeft/2+.5||0,top:qe.glyphTop/2-27.5||-8,advance:qe.glyphAdvance/2||24,isDoubleResolution:!0}}}}G.loadGlyphRange=function(ue,w,B,Q){return a._(this,void 0,void 0,function*(){let ee=256*w,le=ee+255,qe=Q.transformRequest(B.replace("{fontstack}",ue).replace("{range}",`${ee}-${le}`),"Glyphs"),Xe=yield a.l(qe,new AbortController);if(!Xe||!Xe.data)throw new Error(`Could not load glyph range. range: ${w}, ${ee}-${le}`);let ot={};for(let Tt of a.n(Xe.data))ot[Tt.id]=Tt;return ot})},G.TinySDF=class{constructor({fontSize:ue=24,buffer:w=3,radius:B=8,cutoff:Q=.25,fontFamily:ee="sans-serif",fontWeight:le="normal",fontStyle:qe="normal"}={}){this.buffer=w,this.cutoff=Q,this.radius=B;let Xe=this.size=ue+4*w,ot=this._createCanvas(Xe),Tt=this.ctx=ot.getContext("2d",{willReadFrequently:!0});Tt.font=`${qe} ${le} ${ue}px ${ee}`,Tt.textBaseline="alphabetic",Tt.textAlign="left",Tt.fillStyle="black",this.gridOuter=new Float64Array(Xe*Xe),this.gridInner=new Float64Array(Xe*Xe),this.f=new Float64Array(Xe),this.z=new Float64Array(Xe+1),this.v=new Uint16Array(Xe)}_createCanvas(ue){let w=document.createElement("canvas");return w.width=w.height=ue,w}draw(ue){let{width:w,actualBoundingBoxAscent:B,actualBoundingBoxDescent:Q,actualBoundingBoxLeft:ee,actualBoundingBoxRight:le}=this.ctx.measureText(ue),qe=Math.ceil(B),Xe=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(le-ee))),ot=Math.min(this.size-this.buffer,qe+Math.ceil(Q)),Tt=Xe+2*this.buffer,Yt=ot+2*this.buffer,Kt=Math.max(Tt*Yt,0),xr=new Uint8ClampedArray(Kt),Ir={data:xr,width:Tt,height:Yt,glyphWidth:Xe,glyphHeight:ot,glyphTop:qe,glyphLeft:0,glyphAdvance:w};if(Xe===0||ot===0)return Ir;let{ctx:ve,buffer:be,gridInner:De,gridOuter:Be}=this;ve.clearRect(be,be,Xe,ot),ve.fillText(ue,be,be+qe);let et=ve.getImageData(be,be,Xe,ot);Be.fill(z,0,Kt),De.fill(0,0,Kt);for(let We=0;We0?tr*tr:0,De[Ht]=tr<0?tr*tr:0}}O(Be,0,0,Tt,Yt,Tt,this.f,this.v,this.z),O(De,be,be,Xe,ot,Tt,this.f,this.v,this.z);for(let We=0;We1&&(ot=w[++Xe]);let Yt=Math.abs(Tt-ot.left),Kt=Math.abs(Tt-ot.right),xr=Math.min(Yt,Kt),Ir,ve=le/Q*(ee+1);if(ot.isDash){let be=ee-Math.abs(ve);Ir=Math.sqrt(xr*xr+be*be)}else Ir=ee-Math.sqrt(xr*xr+ve*ve);this.data[qe+Tt]=Math.max(0,Math.min(255,Ir+128))}}}addRegularDash(w){for(let Xe=w.length-1;Xe>=0;--Xe){let ot=w[Xe],Tt=w[Xe+1];ot.zeroLength?w.splice(Xe,1):Tt&&Tt.isDash===ot.isDash&&(Tt.left=ot.left,w.splice(Xe,1))}let B=w[0],Q=w[w.length-1];B.isDash===Q.isDash&&(B.left=Q.left-this.width,Q.right=B.right+this.width);let ee=this.width*this.nextRow,le=0,qe=w[le];for(let Xe=0;Xe1&&(qe=w[++le]);let ot=Math.abs(Xe-qe.left),Tt=Math.abs(Xe-qe.right),Yt=Math.min(ot,Tt);this.data[ee+Xe]=Math.max(0,Math.min(255,(qe.isDash?Yt:-Yt)+128))}}addDash(w,B){let Q=B?7:0,ee=2*Q+1;if(this.nextRow+ee>this.height)return a.w("LineAtlas out of space"),null;let le=0;for(let Xe=0;Xe{B.terminate()}),this.workers=null)}isPreloaded(){return!!this.active[_e]}numActive(){return Object.keys(this.active).length}}let Ce=Math.floor(u.hardwareConcurrency/2),me,ie;function Se(){return me||(me=new Ee),me}Ee.workerCount=a.C(globalThis)?Math.max(Math.min(Ce,3),1):1;class Le{constructor(w,B){this.workerPool=w,this.actors=[],this.currentActor=0,this.id=B;let Q=this.workerPool.acquire(B);for(let ee=0;ee{B.remove()}),this.actors=[],w&&this.workerPool.release(this.id)}registerMessageHandler(w,B){for(let Q of this.actors)Q.registerMessageHandler(w,B)}}function Ae(){return ie||(ie=new Le(Se(),a.G),ie.registerMessageHandler("GR",(ue,w,B)=>a.m(w,B))),ie}function Fe(ue,w){let B=a.H();return a.J(B,B,[1,1,0]),a.K(B,B,[.5*ue.width,.5*ue.height,1]),a.L(B,B,ue.calculatePosMatrix(w.toUnwrapped()))}function Pe(ue,w,B,Q,ee,le){let qe=function(Kt,xr,Ir){if(Kt)for(let ve of Kt){let be=xr[ve];if(be&&be.source===Ir&&be.type==="fill-extrusion")return!0}else for(let ve in xr){let be=xr[ve];if(be.source===Ir&&be.type==="fill-extrusion")return!0}return!1}(ee&&ee.layers,w,ue.id),Xe=le.maxPitchScaleFactor(),ot=ue.tilesIn(Q,Xe,qe);ot.sort(ge);let Tt=[];for(let Kt of ot)Tt.push({wrappedTileID:Kt.tileID.wrapped().key,queryResults:Kt.tile.queryRenderedFeatures(w,B,ue._state,Kt.queryGeometry,Kt.cameraQueryGeometry,Kt.scale,ee,le,Xe,Fe(ue.transform,Kt.tileID))});let Yt=function(Kt){let xr={},Ir={};for(let ve of Kt){let be=ve.queryResults,De=ve.wrappedTileID,Be=Ir[De]=Ir[De]||{};for(let et in be){let We=be[et],it=Be[et]=Be[et]||{},Ft=xr[et]=xr[et]||[];for(let Ht of We)it[Ht.featureIndex]||(it[Ht.featureIndex]=!0,Ft.push(Ht))}}return xr}(Tt);for(let Kt in Yt)Yt[Kt].forEach(xr=>{let Ir=xr.feature,ve=ue.getFeatureState(Ir.layer["source-layer"],Ir.id);Ir.source=Ir.layer.source,Ir.layer["source-layer"]&&(Ir.sourceLayer=Ir.layer["source-layer"]),Ir.state=ve});return Yt}function ge(ue,w){let B=ue.tileID,Q=w.tileID;return B.overscaledZ-Q.overscaledZ||B.canonical.y-Q.canonical.y||B.wrap-Q.wrap||B.canonical.x-Q.canonical.x}function Re(ue,w,B){return a._(this,void 0,void 0,function*(){let Q=ue;if(ue.url?Q=(yield a.h(w.transformRequest(ue.url,"Source"),B)).data:yield u.frameAsync(B),!Q)return null;let ee=a.M(a.e(Q,ue),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);return"vector_layers"in Q&&Q.vector_layers&&(ee.vectorLayerIds=Q.vector_layers.map(le=>le.id)),ee})}class ce{constructor(w,B){w&&(B?this.setSouthWest(w).setNorthEast(B):Array.isArray(w)&&(w.length===4?this.setSouthWest([w[0],w[1]]).setNorthEast([w[2],w[3]]):this.setSouthWest(w[0]).setNorthEast(w[1])))}setNorthEast(w){return this._ne=w instanceof a.N?new a.N(w.lng,w.lat):a.N.convert(w),this}setSouthWest(w){return this._sw=w instanceof a.N?new a.N(w.lng,w.lat):a.N.convert(w),this}extend(w){let B=this._sw,Q=this._ne,ee,le;if(w instanceof a.N)ee=w,le=w;else{if(!(w instanceof ce))return Array.isArray(w)?w.length===4||w.every(Array.isArray)?this.extend(ce.convert(w)):this.extend(a.N.convert(w)):w&&("lng"in w||"lon"in w)&&"lat"in w?this.extend(a.N.convert(w)):this;if(ee=w._sw,le=w._ne,!ee||!le)return this}return B||Q?(B.lng=Math.min(ee.lng,B.lng),B.lat=Math.min(ee.lat,B.lat),Q.lng=Math.max(le.lng,Q.lng),Q.lat=Math.max(le.lat,Q.lat)):(this._sw=new a.N(ee.lng,ee.lat),this._ne=new a.N(le.lng,le.lat)),this}getCenter(){return new a.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new a.N(this.getWest(),this.getNorth())}getSouthEast(){return new a.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(w){let{lng:B,lat:Q}=a.N.convert(w),ee=this._sw.lng<=B&&B<=this._ne.lng;return this._sw.lng>this._ne.lng&&(ee=this._sw.lng>=B&&B>=this._ne.lng),this._sw.lat<=Q&&Q<=this._ne.lat&&ee}static convert(w){return w instanceof ce?w:w&&new ce(w)}static fromLngLat(w,B=0){let Q=360*B/40075017,ee=Q/Math.cos(Math.PI/180*w.lat);return new ce(new a.N(w.lng-ee,w.lat-Q),new a.N(w.lng+ee,w.lat+Q))}adjustAntiMeridian(){let w=new a.N(this._sw.lng,this._sw.lat),B=new a.N(this._ne.lng,this._ne.lat);return new ce(w,w.lng>B.lng?new a.N(B.lng+360,B.lat):B)}}class Ze{constructor(w,B,Q){this.bounds=ce.convert(this.validateBounds(w)),this.minzoom=B||0,this.maxzoom=Q||24}validateBounds(w){return Array.isArray(w)&&w.length===4?[Math.max(-180,w[0]),Math.max(-90,w[1]),Math.min(180,w[2]),Math.min(90,w[3])]:[-180,-90,180,90]}contains(w){let B=Math.pow(2,w.z),Q=Math.floor(a.O(this.bounds.getWest())*B),ee=Math.floor(a.Q(this.bounds.getNorth())*B),le=Math.ceil(a.O(this.bounds.getEast())*B),qe=Math.ceil(a.Q(this.bounds.getSouth())*B);return w.x>=Q&&w.x=ee&&w.y{this._options.tiles=w}),this}setUrl(w){return this.setSourceProperty(()=>{this.url=w,this._options.url=w}),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}serialize(){return a.e({},this._options)}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),Q={request:this.map._requestManager.transformRequest(B,"Tile"),uid:w.uid,tileID:w.tileID,zoom:w.tileID.overscaledZ,tileSize:this.tileSize*w.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};Q.request.collectResourceTiming=this._collectResourceTiming;let ee="RT";if(w.actor&&w.state!=="expired"){if(w.state==="loading")return new Promise((le,qe)=>{w.reloadPromise={resolve:le,reject:qe}})}else w.actor=this.dispatcher.getActor(),ee="LT";w.abortController=new AbortController;try{let le=yield w.actor.sendAsync({type:ee,data:Q},w.abortController);if(delete w.abortController,w.aborted)return;this._afterTileLoadWorkerResponse(w,le)}catch(le){if(delete w.abortController,w.aborted)return;if(le&&le.status!==404)throw le;this._afterTileLoadWorkerResponse(w,null)}})}_afterTileLoadWorkerResponse(w,B){if(B&&B.resourceTiming&&(w.resourceTiming=B.resourceTiming),B&&this.map._refreshExpiredTiles&&w.setExpiryData(B),w.loadVectorData(B,this.map.painter),w.reloadPromise){let Q=w.reloadPromise;w.reloadPromise=null,this.loadTile(w).then(Q.resolve).catch(Q.reject)}}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController),w.actor&&(yield w.actor.sendAsync({type:"AT",data:{uid:w.uid,type:this.type,source:this.id}}))})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.unloadVectorData(),w.actor&&(yield w.actor.sendAsync({type:"RMT",data:{uid:w.uid,type:this.type,source:this.id}}))})}hasTransition(){return!1}}class pt extends a.E{constructor(w,B,Q,ee){super(),this.id=w,this.dispatcher=Q,this.setEventedParent(ee),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=a.e({type:"raster"},B),a.e(this,a.M(B,["url","scheme","tileSize"]))}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new a.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let w=yield Re(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,w&&(a.e(this,w),w.bounds&&(this.tileBounds=new Ze(w.bounds,this.minzoom,this.maxzoom)),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})))}catch(w){this._tileJSONRequest=null,this.fire(new a.j(w))}})}loaded(){return this._loaded}onAdd(w){this.map=w,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}setSourceProperty(w){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),w(),this.load()}setTiles(w){return this.setSourceProperty(()=>{this._options.tiles=w}),this}setUrl(w){return this.setSourceProperty(()=>{this.url=w,this._options.url=w}),this}serialize(){return a.e({},this._options)}hasTile(w){return!this.tileBounds||this.tileBounds.contains(w.canonical)}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);w.abortController=new AbortController;try{let Q=yield p.getImage(this.map._requestManager.transformRequest(B,"Tile"),w.abortController,this.map._refreshExpiredTiles);if(delete w.abortController,w.aborted)return void(w.state="unloaded");if(Q&&Q.data){this.map._refreshExpiredTiles&&Q.cacheControl&&Q.expires&&w.setExpiryData({cacheControl:Q.cacheControl,expires:Q.expires});let ee=this.map.painter.context,le=ee.gl,qe=Q.data;w.texture=this.map.painter.getTileTexture(qe.width),w.texture?w.texture.update(qe,{useMipmap:!0}):(w.texture=new g(ee,qe,le.RGBA,{useMipmap:!0}),w.texture.bind(le.LINEAR,le.CLAMP_TO_EDGE,le.LINEAR_MIPMAP_NEAREST)),w.state="loaded"}}catch(Q){if(delete w.abortController,w.aborted)w.state="unloaded";else if(Q)throw w.state="errored",Q}})}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController)})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.texture&&this.map.painter.saveTileTexture(w.texture)})}hasTransition(){return!1}}class Zt extends pt{constructor(w,B,Q,ee){super(w,B,Q,ee),this.type="raster-dem",this.maxzoom=22,this._options=a.e({type:"raster-dem"},B),this.encoding=B.encoding||"mapbox",this.redFactor=B.redFactor,this.greenFactor=B.greenFactor,this.blueFactor=B.blueFactor,this.baseShift=B.baseShift}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),Q=this.map._requestManager.transformRequest(B,"Tile");w.neighboringTiles=this._getNeighboringTiles(w.tileID),w.abortController=new AbortController;try{let ee=yield p.getImage(Q,w.abortController,this.map._refreshExpiredTiles);if(delete w.abortController,w.aborted)return void(w.state="unloaded");if(ee&&ee.data){let le=ee.data;this.map._refreshExpiredTiles&&ee.cacheControl&&ee.expires&&w.setExpiryData({cacheControl:ee.cacheControl,expires:ee.expires});let qe=a.b(le)&&a.U()?le:yield this.readImageNow(le),Xe={type:this.type,uid:w.uid,source:this.id,rawImageData:qe,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!w.actor||w.state==="expired"){w.actor=this.dispatcher.getActor();let ot=yield w.actor.sendAsync({type:"LDT",data:Xe});w.dem=ot,w.needsHillshadePrepare=!0,w.needsTerrainPrepare=!0,w.state="loaded"}}}catch(ee){if(delete w.abortController,w.aborted)w.state="unloaded";else if(ee)throw w.state="errored",ee}})}readImageNow(w){return a._(this,void 0,void 0,function*(){if(typeof VideoFrame!="undefined"&&a.V()){let B=w.width+2,Q=w.height+2;try{return new a.R({width:B,height:Q},yield a.W(w,-1,-1,B,Q))}catch(ee){}}return u.getImageData(w,1)})}_getNeighboringTiles(w){let B=w.canonical,Q=Math.pow(2,B.z),ee=(B.x-1+Q)%Q,le=B.x===0?w.wrap-1:w.wrap,qe=(B.x+1+Q)%Q,Xe=B.x+1===Q?w.wrap+1:w.wrap,ot={};return ot[new a.S(w.overscaledZ,le,B.z,ee,B.y).key]={backfilled:!1},ot[new a.S(w.overscaledZ,Xe,B.z,qe,B.y).key]={backfilled:!1},B.y>0&&(ot[new a.S(w.overscaledZ,le,B.z,ee,B.y-1).key]={backfilled:!1},ot[new a.S(w.overscaledZ,w.wrap,B.z,B.x,B.y-1).key]={backfilled:!1},ot[new a.S(w.overscaledZ,Xe,B.z,qe,B.y-1).key]={backfilled:!1}),B.y+10&&a.e(le,{resourceTiming:ee}),this.fire(new a.k("data",Object.assign(Object.assign({},le),{sourceDataType:"metadata"}))),this.fire(new a.k("data",Object.assign(Object.assign({},le),{sourceDataType:"content"})))}catch(Q){if(this._pendingLoads--,this._removed)return void this.fire(new a.k("dataabort",{dataType:"source"}));this.fire(new a.j(Q))}})}loaded(){return this._pendingLoads===0}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.actor?"RT":"LT";w.actor=this.actor;let Q={type:this.type,uid:w.uid,tileID:w.tileID,zoom:w.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};w.abortController=new AbortController;let ee=yield this.actor.sendAsync({type:B,data:Q},w.abortController);delete w.abortController,w.unloadVectorData(),w.aborted||w.loadVectorData(ee,this.map.painter,B==="RT")})}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController),w.aborted=!0})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.unloadVectorData(),yield this.actor.sendAsync({type:"RMT",data:{uid:w.uid,type:this.type,source:this.id}})})}onRemove(){this._removed=!0,this.actor.sendAsync({type:"RS",data:{type:this.type,source:this.id}})}serialize(){return a.e({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}}var lt=a.Y([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);class Gt extends a.E{constructor(w,B,Q,ee){super(),this.id=w,this.dispatcher=Q,this.coordinates=B.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(ee),this.options=B}load(w){return a._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new a.k("dataloading",{dataType:"source"})),this.url=this.options.url,this._request=new AbortController;try{let B=yield p.getImage(this.map._requestManager.transformRequest(this.url,"Image"),this._request);this._request=null,this._loaded=!0,B&&B.data&&(this.image=B.data,w&&(this.coordinates=w),this._finishLoading())}catch(B){this._request=null,this._loaded=!0,this.fire(new a.j(B))}})}loaded(){return this._loaded}updateImage(w){return w.url?(this._request&&(this._request.abort(),this._request=null),this.options.url=w.url,this.load(w.coordinates).finally(()=>{this.texture=null}),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(w){this.map=w,this.load()}onRemove(){this._request&&(this._request.abort(),this._request=null)}setCoordinates(w){this.coordinates=w;let B=w.map(a.Z.fromLngLat);this.tileID=function(ee){let le=1/0,qe=1/0,Xe=-1/0,ot=-1/0;for(let xr of ee)le=Math.min(le,xr.x),qe=Math.min(qe,xr.y),Xe=Math.max(Xe,xr.x),ot=Math.max(ot,xr.y);let Tt=Math.max(Xe-le,ot-qe),Yt=Math.max(0,Math.floor(-Math.log(Tt)/Math.LN2)),Kt=Math.pow(2,Yt);return new a.a1(Yt,Math.floor((le+Xe)/2*Kt),Math.floor((qe+ot)/2*Kt))}(B),this.minzoom=this.maxzoom=this.tileID.z;let Q=B.map(ee=>this.tileID.getTilePoint(ee)._round());return this._boundsArray=new a.$,this._boundsArray.emplaceBack(Q[0].x,Q[0].y,0,0),this._boundsArray.emplaceBack(Q[1].x,Q[1].y,a.X,0),this._boundsArray.emplaceBack(Q[3].x,Q[3].y,0,a.X),this._boundsArray.emplaceBack(Q[2].x,Q[2].y,a.X,a.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(Object.keys(this.tiles).length===0||!this.image)return;let w=this.map.painter.context,B=w.gl;this.boundsBuffer||(this.boundsBuffer=w.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new g(w,this.image,B.RGBA),this.texture.bind(B.LINEAR,B.CLAMP_TO_EDGE));let Q=!1;for(let ee in this.tiles){let le=this.tiles[ee];le.state!=="loaded"&&(le.state="loaded",le.texture=this.texture,Q=!0)}Q&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}loadTile(w){return a._(this,void 0,void 0,function*(){this.tileID&&this.tileID.equals(w.tileID.canonical)?(this.tiles[String(w.tileID.wrap)]=w,w.buckets={}):w.state="errored"})}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class Nt extends Gt{constructor(w,B,Q,ee){super(w,B,Q,ee),this.roundZoom=!0,this.type="video",this.options=B}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1;let w=this.options;this.urls=[];for(let B of w.urls)this.urls.push(this.map._requestManager.transformRequest(B,"Source").url);try{let B=yield a.a3(this.urls);if(this._loaded=!0,!B)return;this.video=B,this.video.loop=!0,this.video.addEventListener("playing",()=>{this.map.triggerRepaint()}),this.map&&this.video.play(),this._finishLoading()}catch(B){this.fire(new a.j(B))}})}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(w){if(this.video){let B=this.video.seekable;wB.end(0)?this.fire(new a.j(new a.a2(`sources.${this.id}`,null,`Playback for this video can be set only between the ${B.start(0)} and ${B.end(0)}-second mark.`))):this.video.currentTime=w}}getVideo(){return this.video}onAdd(w){this.map||(this.map=w,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(Object.keys(this.tiles).length===0||this.video.readyState<2)return;let w=this.map.painter.context,B=w.gl;this.boundsBuffer||(this.boundsBuffer=w.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(B.LINEAR,B.CLAMP_TO_EDGE),B.texSubImage2D(B.TEXTURE_2D,0,0,0,B.RGBA,B.UNSIGNED_BYTE,this.video)):(this.texture=new g(w,this.video,B.RGBA),this.texture.bind(B.LINEAR,B.CLAMP_TO_EDGE));let Q=!1;for(let ee in this.tiles){let le=this.tiles[ee];le.state!=="loaded"&&(le.state="loaded",le.texture=this.texture,Q=!0)}Q&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class Jt extends Gt{constructor(w,B,Q,ee){super(w,B,Q,ee),B.coordinates?Array.isArray(B.coordinates)&&B.coordinates.length===4&&!B.coordinates.some(le=>!Array.isArray(le)||le.length!==2||le.some(qe=>typeof qe!="number"))||this.fire(new a.j(new a.a2(`sources.${w}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new a.j(new a.a2(`sources.${w}`,null,'missing required property "coordinates"'))),B.animate&&typeof B.animate!="boolean"&&this.fire(new a.j(new a.a2(`sources.${w}`,null,'optional "animate" property must be a boolean value'))),B.canvas?typeof B.canvas=="string"||B.canvas instanceof HTMLCanvasElement||this.fire(new a.j(new a.a2(`sources.${w}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new a.j(new a.a2(`sources.${w}`,null,'missing required property "canvas"'))),this.options=B,this.animate=B.animate===void 0||B.animate}load(){return a._(this,void 0,void 0,function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new a.j(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())})}getCanvas(){return this.canvas}onAdd(w){this.map=w,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let w=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,w=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,w=!0),this._hasInvalidDimensions()||Object.keys(this.tiles).length===0)return;let B=this.map.painter.context,Q=B.gl;this.boundsBuffer||(this.boundsBuffer=B.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture?(w||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new g(B,this.canvas,Q.RGBA,{premultiply:!0});let ee=!1;for(let le in this.tiles){let qe=this.tiles[le];qe.state!=="loaded"&&(qe.state="loaded",qe.texture=this.texture,ee=!0)}ee&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(let w of[this.canvas.width,this.canvas.height])if(isNaN(w)||w<=0)return!0;return!1}}let sr={},wr=ue=>{switch(ue){case"geojson":return st;case"image":return Gt;case"raster":return pt;case"raster-dem":return Zt;case"vector":return ut;case"video":return Nt;case"canvas":return Jt}return sr[ue]},cr="RTLPluginLoaded";class $e extends a.E{constructor(){super(...arguments),this.status="unavailable",this.url=null,this.dispatcher=Ae()}_syncState(w){return this.status=w,this.dispatcher.broadcast("SRPS",{pluginStatus:w,pluginURL:this.url}).catch(B=>{throw this.status="error",B})}getRTLTextPluginStatus(){return this.status}clearRTLTextPlugin(){this.status="unavailable",this.url=null}setRTLTextPlugin(w){return a._(this,arguments,void 0,function*(B,Q=!1){if(this.url)throw new Error("setRTLTextPlugin cannot be called multiple times.");if(this.url=u.resolveURL(B),!this.url)throw new Error(`requested url ${B} is invalid`);if(this.status==="unavailable"){if(!Q)return this._requestImport();this.status="deferred",this._syncState(this.status)}else if(this.status==="requested")return this._requestImport()})}_requestImport(){return a._(this,void 0,void 0,function*(){yield this._syncState("loading"),this.status="loaded",this.fire(new a.k(cr))})}lazyLoad(){this.status==="unavailable"?this.status="requested":this.status==="deferred"&&this._requestImport()}}let St=null;function Qt(){return St||(St=new $e),St}class Vt{constructor(w,B){this.timeAdded=0,this.fadeEndTime=0,this.tileID=w,this.uid=a.a4(),this.uses=0,this.tileSize=B,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.rtt=[],this.rttCoords={},this.expiredRequestCount=0,this.state="loading"}registerFadeDuration(w){let B=w+this.timeAdded;Ble.getLayer(Tt)).filter(Boolean);if(ot.length!==0){Xe.layers=ot,Xe.stateDependentLayerIds&&(Xe.stateDependentLayers=Xe.stateDependentLayerIds.map(Tt=>ot.filter(Yt=>Yt.id===Tt)[0]));for(let Tt of ot)qe[Tt.id]=Xe}}return qe}(w.buckets,B.style),this.hasSymbolBuckets=!1;for(let ee in this.buckets){let le=this.buckets[ee];if(le instanceof a.a6){if(this.hasSymbolBuckets=!0,!Q)break;le.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(let ee in this.buckets){let le=this.buckets[ee];if(le instanceof a.a6&&le.hasRTLText){this.hasRTLText=!0,Qt().lazyLoad();break}}this.queryPadding=0;for(let ee in this.buckets){let le=this.buckets[ee];this.queryPadding=Math.max(this.queryPadding,B.style.getLayer(ee).queryRadius(le))}w.imageAtlas&&(this.imageAtlas=w.imageAtlas),w.glyphAtlasImage&&(this.glyphAtlasImage=w.glyphAtlasImage)}else this.collisionBoxArray=new a.a5}unloadVectorData(){for(let w in this.buckets)this.buckets[w].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"}getBucket(w){return this.buckets[w.id]}upload(w){for(let Q in this.buckets){let ee=this.buckets[Q];ee.uploadPending()&&ee.upload(w)}let B=w.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new g(w,this.imageAtlas.image,B.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new g(w,this.glyphAtlasImage,B.ALPHA),this.glyphAtlasImage=null)}prepare(w){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(w,this.imageAtlasTexture)}queryRenderedFeatures(w,B,Q,ee,le,qe,Xe,ot,Tt,Yt){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:ee,cameraQueryGeometry:le,scale:qe,tileSize:this.tileSize,pixelPosMatrix:Yt,transform:ot,params:Xe,queryPadding:this.queryPadding*Tt},w,B,Q):{}}querySourceFeatures(w,B){let Q=this.latestFeatureIndex;if(!Q||!Q.rawTileData)return;let ee=Q.loadVTLayers(),le=B&&B.sourceLayer?B.sourceLayer:"",qe=ee._geojsonTileLayer||ee[le];if(!qe)return;let Xe=a.a7(B&&B.filter),{z:ot,x:Tt,y:Yt}=this.tileID.canonical,Kt={z:ot,x:Tt,y:Yt};for(let xr=0;xrQ)ee=!1;else if(B)if(this.expirationTime{this.remove(w,le)},Q)),this.data[ee].push(le),this.order.push(ee),this.order.length>this.max){let qe=this._getAndRemoveByKey(this.order[0]);qe&&this.onRemove(qe)}return this}has(w){return w.wrapped().key in this.data}getAndRemove(w){return this.has(w)?this._getAndRemoveByKey(w.wrapped().key):null}_getAndRemoveByKey(w){let B=this.data[w].shift();return B.timeout&&clearTimeout(B.timeout),this.data[w].length===0&&delete this.data[w],this.order.splice(this.order.indexOf(w),1),B.value}getByKey(w){let B=this.data[w];return B?B[0].value:null}get(w){return this.has(w)?this.data[w.wrapped().key][0].value:null}remove(w,B){if(!this.has(w))return this;let Q=w.wrapped().key,ee=B===void 0?0:this.data[Q].indexOf(B),le=this.data[Q][ee];return this.data[Q].splice(ee,1),le.timeout&&clearTimeout(le.timeout),this.data[Q].length===0&&delete this.data[Q],this.onRemove(le.value),this.order.splice(this.order.indexOf(Q),1),this}setMaxSize(w){for(this.max=w;this.order.length>this.max;){let B=this._getAndRemoveByKey(this.order[0]);B&&this.onRemove(B)}return this}filter(w){let B=[];for(let Q in this.data)for(let ee of this.data[Q])w(ee.value)||B.push(ee);for(let Q of B)this.remove(Q.value.tileID,Q)}}class It{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(w,B,Q){let ee=String(B);if(this.stateChanges[w]=this.stateChanges[w]||{},this.stateChanges[w][ee]=this.stateChanges[w][ee]||{},a.e(this.stateChanges[w][ee],Q),this.deletedStates[w]===null){this.deletedStates[w]={};for(let le in this.state[w])le!==ee&&(this.deletedStates[w][le]=null)}else if(this.deletedStates[w]&&this.deletedStates[w][ee]===null){this.deletedStates[w][ee]={};for(let le in this.state[w][ee])Q[le]||(this.deletedStates[w][ee][le]=null)}else for(let le in Q)this.deletedStates[w]&&this.deletedStates[w][ee]&&this.deletedStates[w][ee][le]===null&&delete this.deletedStates[w][ee][le]}removeFeatureState(w,B,Q){if(this.deletedStates[w]===null)return;let ee=String(B);if(this.deletedStates[w]=this.deletedStates[w]||{},Q&&B!==void 0)this.deletedStates[w][ee]!==null&&(this.deletedStates[w][ee]=this.deletedStates[w][ee]||{},this.deletedStates[w][ee][Q]=null);else if(B!==void 0)if(this.stateChanges[w]&&this.stateChanges[w][ee])for(Q in this.deletedStates[w][ee]={},this.stateChanges[w][ee])this.deletedStates[w][ee][Q]=null;else this.deletedStates[w][ee]=null;else this.deletedStates[w]=null}getState(w,B){let Q=String(B),ee=a.e({},(this.state[w]||{})[Q],(this.stateChanges[w]||{})[Q]);if(this.deletedStates[w]===null)return{};if(this.deletedStates[w]){let le=this.deletedStates[w][B];if(le===null)return{};for(let qe in le)delete ee[qe]}return ee}initializeTileState(w,B){w.setFeatureState(this.state,B)}coalesceChanges(w,B){let Q={};for(let ee in this.stateChanges){this.state[ee]=this.state[ee]||{};let le={};for(let qe in this.stateChanges[ee])this.state[ee][qe]||(this.state[ee][qe]={}),a.e(this.state[ee][qe],this.stateChanges[ee][qe]),le[qe]=this.state[ee][qe];Q[ee]=le}for(let ee in this.deletedStates){this.state[ee]=this.state[ee]||{};let le={};if(this.deletedStates[ee]===null)for(let qe in this.state[ee])le[qe]={},this.state[ee][qe]={};else for(let qe in this.deletedStates[ee]){if(this.deletedStates[ee][qe]===null)this.state[ee][qe]={};else for(let Xe of Object.keys(this.deletedStates[ee][qe]))delete this.state[ee][qe][Xe];le[qe]=this.state[ee][qe]}Q[ee]=Q[ee]||{},a.e(Q[ee],le)}if(this.stateChanges={},this.deletedStates={},Object.keys(Q).length!==0)for(let ee in w)w[ee].setFeatureState(Q,B)}}class mt extends a.E{constructor(w,B,Q){super(),this.id=w,this.dispatcher=Q,this.on("data",ee=>this._dataHandler(ee)),this.on("dataloading",()=>{this._sourceErrored=!1}),this.on("error",()=>{this._sourceErrored=this._source.loaded()}),this._source=((ee,le,qe,Xe)=>{let ot=new(wr(le.type))(ee,le,qe,Xe);if(ot.id!==ee)throw new Error(`Expected Source id to be ${ee} instead of ${ot.id}`);return ot})(w,B,Q,this),this._tiles={},this._cache=new _t(0,ee=>this._unloadTile(ee)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new It,this._didEmitContent=!1,this._updated=!1}onAdd(w){this.map=w,this._maxTileCacheSize=w?w._maxTileCacheSize:null,this._maxTileCacheZoomLevels=w?w._maxTileCacheZoomLevels:null,this._source&&this._source.onAdd&&this._source.onAdd(w)}onRemove(w){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(w)}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;if(!(this.used===void 0&&this.usedForTerrain===void 0||this.used||this.usedForTerrain))return!0;if(!this._updated)return!1;for(let w in this._tiles){let B=this._tiles[w];if(B.state!=="loaded"&&B.state!=="errored")return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;let w=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,w&&this.reload(),this.transform&&this.update(this.transform,this.terrain)}_loadTile(w,B,Q){return a._(this,void 0,void 0,function*(){try{yield this._source.loadTile(w),this._tileLoaded(w,B,Q)}catch(ee){w.state="errored",ee.status!==404?this._source.fire(new a.j(ee,{tile:w})):this.update(this.transform,this.terrain)}})}_unloadTile(w){this._source.unloadTile&&this._source.unloadTile(w)}_abortTile(w){this._source.abortTile&&this._source.abortTile(w),this._source.fire(new a.k("dataabort",{tile:w,coord:w.tileID,dataType:"source"}))}serialize(){return this._source.serialize()}prepare(w){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(let B in this._tiles){let Q=this._tiles[B];Q.upload(w),Q.prepare(this.map.style.imageManager)}}getIds(){return Object.values(this._tiles).map(w=>w.tileID).sort(er).map(w=>w.key)}getRenderableIds(w){let B=[];for(let Q in this._tiles)this._isIdRenderable(Q,w)&&B.push(this._tiles[Q]);return w?B.sort((Q,ee)=>{let le=Q.tileID,qe=ee.tileID,Xe=new a.P(le.canonical.x,le.canonical.y)._rotate(this.transform.angle),ot=new a.P(qe.canonical.x,qe.canonical.y)._rotate(this.transform.angle);return le.overscaledZ-qe.overscaledZ||ot.y-Xe.y||ot.x-Xe.x}).map(Q=>Q.tileID.key):B.map(Q=>Q.tileID).sort(er).map(Q=>Q.key)}hasRenderableParent(w){let B=this.findLoadedParent(w,0);return!!B&&this._isIdRenderable(B.tileID.key)}_isIdRenderable(w,B){return this._tiles[w]&&this._tiles[w].hasData()&&!this._coveredTiles[w]&&(B||!this._tiles[w].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(let w in this._tiles)this._tiles[w].state!=="errored"&&this._reloadTile(w,"reloading")}}_reloadTile(w,B){return a._(this,void 0,void 0,function*(){let Q=this._tiles[w];Q&&(Q.state!=="loading"&&(Q.state=B),yield this._loadTile(Q,w,B))})}_tileLoaded(w,B,Q){w.timeAdded=u.now(),Q==="expired"&&(w.refreshedUponExpiration=!0),this._setTileReloadTimer(B,w),this.getSource().type==="raster-dem"&&w.dem&&this._backfillDEM(w),this._state.initializeTileState(w,this.map?this.map.painter:null),w.aborted||this._source.fire(new a.k("data",{dataType:"source",tile:w,coord:w.tileID}))}_backfillDEM(w){let B=this.getRenderableIds();for(let ee=0;ee1||(Math.abs(qe)>1&&(Math.abs(qe+ot)===1?qe+=ot:Math.abs(qe-ot)===1&&(qe-=ot)),le.dem&&ee.dem&&(ee.dem.backfillBorder(le.dem,qe,Xe),ee.neighboringTiles&&ee.neighboringTiles[Tt]&&(ee.neighboringTiles[Tt].backfilled=!0)))}}getTile(w){return this.getTileByID(w.key)}getTileByID(w){return this._tiles[w]}_retainLoadedChildren(w,B,Q,ee){for(let le in this._tiles){let qe=this._tiles[le];if(ee[le]||!qe.hasData()||qe.tileID.overscaledZ<=B||qe.tileID.overscaledZ>Q)continue;let Xe=qe.tileID;for(;qe&&qe.tileID.overscaledZ>B+1;){let Tt=qe.tileID.scaledTo(qe.tileID.overscaledZ-1);qe=this._tiles[Tt.key],qe&&qe.hasData()&&(Xe=Tt)}let ot=Xe;for(;ot.overscaledZ>B;)if(ot=ot.scaledTo(ot.overscaledZ-1),w[ot.key]){ee[Xe.key]=Xe;break}}}findLoadedParent(w,B){if(w.key in this._loadedParentTiles){let Q=this._loadedParentTiles[w.key];return Q&&Q.tileID.overscaledZ>=B?Q:null}for(let Q=w.overscaledZ-1;Q>=B;Q--){let ee=w.scaledTo(Q),le=this._getLoadedTile(ee);if(le)return le}}findLoadedSibling(w){return this._getLoadedTile(w)}_getLoadedTile(w){let B=this._tiles[w.key];return B&&B.hasData()?B:this._cache.getByKey(w.wrapped().key)}updateCacheSize(w){let B=Math.ceil(w.width/this._source.tileSize)+1,Q=Math.ceil(w.height/this._source.tileSize)+1,ee=Math.floor(B*Q*(this._maxTileCacheZoomLevels===null?a.a.MAX_TILE_CACHE_ZOOM_LEVELS:this._maxTileCacheZoomLevels)),le=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,ee):ee;this._cache.setMaxSize(le)}handleWrapJump(w){let B=Math.round((w-(this._prevLng===void 0?w:this._prevLng))/360);if(this._prevLng=w,B){let Q={};for(let ee in this._tiles){let le=this._tiles[ee];le.tileID=le.tileID.unwrapTo(le.tileID.wrap+B),Q[le.tileID.key]=le}this._tiles=Q;for(let ee in this._timers)clearTimeout(this._timers[ee]),delete this._timers[ee];for(let ee in this._tiles)this._setTileReloadTimer(ee,this._tiles[ee])}}_updateCoveredAndRetainedTiles(w,B,Q,ee,le,qe){let Xe={},ot={},Tt=Object.keys(w),Yt=u.now();for(let Kt of Tt){let xr=w[Kt],Ir=this._tiles[Kt];if(!Ir||Ir.fadeEndTime!==0&&Ir.fadeEndTime<=Yt)continue;let ve=this.findLoadedParent(xr,B),be=this.findLoadedSibling(xr),De=ve||be||null;De&&(this._addTile(De.tileID),Xe[De.tileID.key]=De.tileID),ot[Kt]=xr}this._retainLoadedChildren(ot,ee,Q,w);for(let Kt in Xe)w[Kt]||(this._coveredTiles[Kt]=!0,w[Kt]=Xe[Kt]);if(qe){let Kt={},xr={};for(let Ir of le)this._tiles[Ir.key].hasData()?Kt[Ir.key]=Ir:xr[Ir.key]=Ir;for(let Ir in xr){let ve=xr[Ir].children(this._source.maxzoom);this._tiles[ve[0].key]&&this._tiles[ve[1].key]&&this._tiles[ve[2].key]&&this._tiles[ve[3].key]&&(Kt[ve[0].key]=w[ve[0].key]=ve[0],Kt[ve[1].key]=w[ve[1].key]=ve[1],Kt[ve[2].key]=w[ve[2].key]=ve[2],Kt[ve[3].key]=w[ve[3].key]=ve[3],delete xr[Ir])}for(let Ir in xr){let ve=xr[Ir],be=this.findLoadedParent(ve,this._source.minzoom),De=this.findLoadedSibling(ve),Be=be||De||null;if(Be){Kt[Be.tileID.key]=w[Be.tileID.key]=Be.tileID;for(let et in Kt)Kt[et].isChildOf(Be.tileID)&&delete Kt[et]}}for(let Ir in this._tiles)Kt[Ir]||(this._coveredTiles[Ir]=!0)}}update(w,B){if(!this._sourceLoaded||this._paused)return;let Q;this.transform=w,this.terrain=B,this.updateCacheSize(w),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?Q=w.getVisibleUnwrappedCoordinates(this._source.tileID).map(Yt=>new a.S(Yt.canonical.z,Yt.wrap,Yt.canonical.z,Yt.canonical.x,Yt.canonical.y)):(Q=w.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:B}),this._source.hasTile&&(Q=Q.filter(Yt=>this._source.hasTile(Yt)))):Q=[];let ee=w.coveringZoomLevel(this._source),le=Math.max(ee-mt.maxOverzooming,this._source.minzoom),qe=Math.max(ee+mt.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){let Yt={};for(let Kt of Q)if(Kt.canonical.z>this._source.minzoom){let xr=Kt.scaledTo(Kt.canonical.z-1);Yt[xr.key]=xr;let Ir=Kt.scaledTo(Math.max(this._source.minzoom,Math.min(Kt.canonical.z,5)));Yt[Ir.key]=Ir}Q=Q.concat(Object.values(Yt))}let Xe=Q.length===0&&!this._updated&&this._didEmitContent;this._updated=!0,Xe&&this.fire(new a.k("data",{sourceDataType:"idle",dataType:"source",sourceId:this.id}));let ot=this._updateRetainedTiles(Q,ee);lr(this._source.type)&&this._updateCoveredAndRetainedTiles(ot,le,qe,ee,Q,B);for(let Yt in ot)this._tiles[Yt].clearFadeHold();let Tt=a.ab(this._tiles,ot);for(let Yt of Tt){let Kt=this._tiles[Yt];Kt.hasSymbolBuckets&&!Kt.holdingForFade()?Kt.setHoldDuration(this.map._fadeDuration):Kt.hasSymbolBuckets&&!Kt.symbolFadeFinished()||this._removeTile(Yt)}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache()}releaseSymbolFadeTiles(){for(let w in this._tiles)this._tiles[w].holdingForFade()&&this._removeTile(w)}_updateRetainedTiles(w,B){var Q;let ee={},le={},qe=Math.max(B-mt.maxOverzooming,this._source.minzoom),Xe=Math.max(B+mt.maxUnderzooming,this._source.minzoom),ot={};for(let Tt of w){let Yt=this._addTile(Tt);ee[Tt.key]=Tt,Yt.hasData()||Bthis._source.maxzoom){let xr=Tt.children(this._source.maxzoom)[0],Ir=this.getTile(xr);if(Ir&&Ir.hasData()){ee[xr.key]=xr;continue}}else{let xr=Tt.children(this._source.maxzoom);if(ee[xr[0].key]&&ee[xr[1].key]&&ee[xr[2].key]&&ee[xr[3].key])continue}let Kt=Yt.wasRequested();for(let xr=Tt.overscaledZ-1;xr>=qe;--xr){let Ir=Tt.scaledTo(xr);if(le[Ir.key])break;if(le[Ir.key]=!0,Yt=this.getTile(Ir),!Yt&&Kt&&(Yt=this._addTile(Ir)),Yt){let ve=Yt.hasData();if((ve||!(!((Q=this.map)===null||Q===void 0)&&Q.cancelPendingTileRequestsWhileZooming)||Kt)&&(ee[Ir.key]=Ir),Kt=Yt.wasRequested(),ve)break}}}return ee}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(let w in this._tiles){let B=[],Q,ee=this._tiles[w].tileID;for(;ee.overscaledZ>0;){if(ee.key in this._loadedParentTiles){Q=this._loadedParentTiles[ee.key];break}B.push(ee.key);let le=ee.scaledTo(ee.overscaledZ-1);if(Q=this._getLoadedTile(le),Q)break;ee=le}for(let le of B)this._loadedParentTiles[le]=Q}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(let w in this._tiles){let B=this._tiles[w].tileID,Q=this._getLoadedTile(B);this._loadedSiblingTiles[B.key]=Q}}_addTile(w){let B=this._tiles[w.key];if(B)return B;B=this._cache.getAndRemove(w),B&&(this._setTileReloadTimer(w.key,B),B.tileID=w,this._state.initializeTileState(B,this.map?this.map.painter:null),this._cacheTimers[w.key]&&(clearTimeout(this._cacheTimers[w.key]),delete this._cacheTimers[w.key],this._setTileReloadTimer(w.key,B)));let Q=B;return B||(B=new Vt(w,this._source.tileSize*w.overscaleFactor()),this._loadTile(B,w.key,B.state)),B.uses++,this._tiles[w.key]=B,Q||this._source.fire(new a.k("dataloading",{tile:B,coord:B.tileID,dataType:"source"})),B}_setTileReloadTimer(w,B){w in this._timers&&(clearTimeout(this._timers[w]),delete this._timers[w]);let Q=B.getExpiryTimeout();Q&&(this._timers[w]=setTimeout(()=>{this._reloadTile(w,"expired"),delete this._timers[w]},Q))}_removeTile(w){let B=this._tiles[w];B&&(B.uses--,delete this._tiles[w],this._timers[w]&&(clearTimeout(this._timers[w]),delete this._timers[w]),B.uses>0||(B.hasData()&&B.state!=="reloading"?this._cache.add(B.tileID,B,B.getExpiryTimeout()):(B.aborted=!0,this._abortTile(B),this._unloadTile(B))))}_dataHandler(w){let B=w.sourceDataType;w.dataType==="source"&&B==="metadata"&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&w.dataType==="source"&&B==="content"&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0)}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(let w in this._tiles)this._removeTile(w);this._cache.reset()}tilesIn(w,B,Q){let ee=[],le=this.transform;if(!le)return ee;let qe=Q?le.getCameraQueryGeometry(w):w,Xe=w.map(ve=>le.pointCoordinate(ve,this.terrain)),ot=qe.map(ve=>le.pointCoordinate(ve,this.terrain)),Tt=this.getIds(),Yt=1/0,Kt=1/0,xr=-1/0,Ir=-1/0;for(let ve of ot)Yt=Math.min(Yt,ve.x),Kt=Math.min(Kt,ve.y),xr=Math.max(xr,ve.x),Ir=Math.max(Ir,ve.y);for(let ve=0;ve=0&&We[1].y+et>=0){let it=Xe.map(Ht=>De.getTilePoint(Ht)),Ft=ot.map(Ht=>De.getTilePoint(Ht));ee.push({tile:be,tileID:De,queryGeometry:it,cameraQueryGeometry:Ft,scale:Be})}}return ee}getVisibleCoordinates(w){let B=this.getRenderableIds(w).map(Q=>this._tiles[Q].tileID);for(let Q of B)Q.posMatrix=this.transform.calculatePosMatrix(Q.toUnwrapped());return B}hasTransition(){if(this._source.hasTransition())return!0;if(lr(this._source.type)){let w=u.now();for(let B in this._tiles)if(this._tiles[B].fadeEndTime>=w)return!0}return!1}setFeatureState(w,B,Q){this._state.updateState(w=w||"_geojsonTileLayer",B,Q)}removeFeatureState(w,B,Q){this._state.removeFeatureState(w=w||"_geojsonTileLayer",B,Q)}getFeatureState(w,B){return this._state.getState(w=w||"_geojsonTileLayer",B)}setDependencies(w,B,Q){let ee=this._tiles[w];ee&&ee.setDependencies(B,Q)}reloadTilesForDependencies(w,B){for(let Q in this._tiles)this._tiles[Q].hasDependency(w,B)&&this._reloadTile(Q,"reloading");this._cache.filter(Q=>!Q.hasDependency(w,B))}}function er(ue,w){let B=Math.abs(2*ue.wrap)-+(ue.wrap<0),Q=Math.abs(2*w.wrap)-+(w.wrap<0);return ue.overscaledZ-w.overscaledZ||Q-B||w.canonical.y-ue.canonical.y||w.canonical.x-ue.canonical.x}function lr(ue){return ue==="raster"||ue==="image"||ue==="video"}mt.maxOverzooming=10,mt.maxUnderzooming=3;class Tr{constructor(w,B){this.reset(w,B)}reset(w,B){this.points=w||[],this._distances=[0];for(let Q=1;Q0?(ee-qe)/Xe:0;return this.points[le].mult(1-ot).add(this.points[B].mult(ot))}}function Lr(ue,w){let B=!0;return ue==="always"||ue!=="never"&&w!=="never"||(B=!1),B}class ti{constructor(w,B,Q){let ee=this.boxCells=[],le=this.circleCells=[];this.xCellCount=Math.ceil(w/Q),this.yCellCount=Math.ceil(B/Q);for(let qe=0;qethis.width||ee<0||B>this.height)return[];let ot=[];if(w<=0&&B<=0&&this.width<=Q&&this.height<=ee){if(le)return[{key:null,x1:w,y1:B,x2:Q,y2:ee}];for(let Tt=0;Tt0}hitTestCircle(w,B,Q,ee,le){let qe=w-Q,Xe=w+Q,ot=B-Q,Tt=B+Q;if(Xe<0||qe>this.width||Tt<0||ot>this.height)return!1;let Yt=[];return this._forEachCell(qe,ot,Xe,Tt,this._queryCellCircle,Yt,{hitTest:!0,overlapMode:ee,circle:{x:w,y:B,radius:Q},seenUids:{box:{},circle:{}}},le),Yt.length>0}_queryCell(w,B,Q,ee,le,qe,Xe,ot){let{seenUids:Tt,hitTest:Yt,overlapMode:Kt}=Xe,xr=this.boxCells[le];if(xr!==null){let ve=this.bboxes;for(let be of xr)if(!Tt.box[be]){Tt.box[be]=!0;let De=4*be,Be=this.boxKeys[be];if(w<=ve[De+2]&&B<=ve[De+3]&&Q>=ve[De+0]&&ee>=ve[De+1]&&(!ot||ot(Be))&&(!Yt||!Lr(Kt,Be.overlapMode))&&(qe.push({key:Be,x1:ve[De],y1:ve[De+1],x2:ve[De+2],y2:ve[De+3]}),Yt))return!0}}let Ir=this.circleCells[le];if(Ir!==null){let ve=this.circles;for(let be of Ir)if(!Tt.circle[be]){Tt.circle[be]=!0;let De=3*be,Be=this.circleKeys[be];if(this._circleAndRectCollide(ve[De],ve[De+1],ve[De+2],w,B,Q,ee)&&(!ot||ot(Be))&&(!Yt||!Lr(Kt,Be.overlapMode))){let et=ve[De],We=ve[De+1],it=ve[De+2];if(qe.push({key:Be,x1:et-it,y1:We-it,x2:et+it,y2:We+it}),Yt)return!0}}}return!1}_queryCellCircle(w,B,Q,ee,le,qe,Xe,ot){let{circle:Tt,seenUids:Yt,overlapMode:Kt}=Xe,xr=this.boxCells[le];if(xr!==null){let ve=this.bboxes;for(let be of xr)if(!Yt.box[be]){Yt.box[be]=!0;let De=4*be,Be=this.boxKeys[be];if(this._circleAndRectCollide(Tt.x,Tt.y,Tt.radius,ve[De+0],ve[De+1],ve[De+2],ve[De+3])&&(!ot||ot(Be))&&!Lr(Kt,Be.overlapMode))return qe.push(!0),!0}}let Ir=this.circleCells[le];if(Ir!==null){let ve=this.circles;for(let be of Ir)if(!Yt.circle[be]){Yt.circle[be]=!0;let De=3*be,Be=this.circleKeys[be];if(this._circlesCollide(ve[De],ve[De+1],ve[De+2],Tt.x,Tt.y,Tt.radius)&&(!ot||ot(Be))&&!Lr(Kt,Be.overlapMode))return qe.push(!0),!0}}}_forEachCell(w,B,Q,ee,le,qe,Xe,ot){let Tt=this._convertToXCellCoord(w),Yt=this._convertToYCellCoord(B),Kt=this._convertToXCellCoord(Q),xr=this._convertToYCellCoord(ee);for(let Ir=Tt;Ir<=Kt;Ir++)for(let ve=Yt;ve<=xr;ve++)if(le.call(this,w,B,Q,ee,this.xCellCount*ve+Ir,qe,Xe,ot))return}_convertToXCellCoord(w){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(w*this.xScale)))}_convertToYCellCoord(w){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(w*this.yScale)))}_circlesCollide(w,B,Q,ee,le,qe){let Xe=ee-w,ot=le-B,Tt=Q+qe;return Tt*Tt>Xe*Xe+ot*ot}_circleAndRectCollide(w,B,Q,ee,le,qe,Xe){let ot=(qe-ee)/2,Tt=Math.abs(w-(ee+ot));if(Tt>ot+Q)return!1;let Yt=(Xe-le)/2,Kt=Math.abs(B-(le+Yt));if(Kt>Yt+Q)return!1;if(Tt<=ot||Kt<=Yt)return!0;let xr=Tt-ot,Ir=Kt-Yt;return xr*xr+Ir*Ir<=Q*Q}}function Br(ue,w,B,Q,ee){let le=a.H();return w?(a.K(le,le,[1/ee,1/ee,1]),B||a.ad(le,le,Q.angle)):a.L(le,Q.labelPlaneMatrix,ue),le}function Vr(ue,w,B,Q,ee){if(w){let le=a.ae(ue);return a.K(le,le,[ee,ee,1]),B||a.ad(le,le,-Q.angle),le}return Q.glCoordMatrix}function dt(ue,w,B,Q){let ee;Q?(ee=[ue,w,Q(ue,w),1],a.af(ee,ee,B)):(ee=[ue,w,0,1],$r(ee,ee,B));let le=ee[3];return{point:new a.P(ee[0]/le,ee[1]/le),signedDistanceFromCamera:le,isOccluded:!1}}function Ge(ue,w){return .5+ue/w*.5}function Je(ue,w){return ue.x>=-w[0]&&ue.x<=w[0]&&ue.y>=-w[1]&&ue.y<=w[1]}function je(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir,ve){let be=Q?ue.textSizeData:ue.iconSizeData,De=a.ag(be,B.transform.zoom),Be=[256/B.width*2+1,256/B.height*2+1],et=Q?ue.text.dynamicLayoutVertexArray:ue.icon.dynamicLayoutVertexArray;et.clear();let We=ue.lineVertexArray,it=Q?ue.text.placedSymbolArray:ue.icon.placedSymbolArray,Ft=B.transform.width/B.transform.height,Ht=!1;for(let tr=0;trMath.abs(B.x-w.x)*Q?{useVertical:!0}:(ue===a.ah.vertical?w.yB.x)?{needsFlipping:!0}:null}function Ie(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt){let Kt=B/24,xr=w.lineOffsetX*Kt,Ir=w.lineOffsetY*Kt,ve;if(w.numGlyphs>1){let be=w.glyphStartIndex+w.numGlyphs,De=w.lineStartIndex,Be=w.lineStartIndex+w.lineLength,et=tt(Kt,Xe,xr,Ir,Q,w,Yt,ue);if(!et)return{notEnoughRoom:!0};let We=dt(et.first.point.x,et.first.point.y,qe,ue.getElevation).point,it=dt(et.last.point.x,et.last.point.y,qe,ue.getElevation).point;if(ee&&!Q){let Ft=xt(w.writingMode,We,it,Tt);if(Ft)return Ft}ve=[et.first];for(let Ft=w.glyphStartIndex+1;Ft0?We.point:function(Ht,tr,dr,Sr,Or,Wr){return xe(Ht,tr,dr,1,Or,Wr)}(ue.tileAnchorPoint,et,De,0,le,ue),Ft=xt(w.writingMode,De,it,Tt);if(Ft)return Ft}let be=vr(Kt*Xe.getoffsetX(w.glyphStartIndex),xr,Ir,Q,w.segment,w.lineStartIndex,w.lineStartIndex+w.lineLength,ue,Yt);if(!be||ue.projectionCache.anyProjectionOccluded)return{notEnoughRoom:!0};ve=[be]}for(let be of ve)a.aj(ot,be.point,be.angle);return{}}function xe(ue,w,B,Q,ee,le){let qe=ue.add(ue.sub(w)._unit()),Xe=ee!==void 0?dt(qe.x,qe.y,ee,le.getElevation).point:vt(qe.x,qe.y,le).point,ot=B.sub(Xe);return B.add(ot._mult(Q/ot.mag()))}function ke(ue,w,B){let Q=w.projectionCache;if(Q.projections[ue])return Q.projections[ue];let ee=new a.P(w.lineVertexArray.getx(ue),w.lineVertexArray.gety(ue)),le=vt(ee.x,ee.y,w);if(le.signedDistanceFromCamera>0)return Q.projections[ue]=le.point,Q.anyProjectionOccluded=Q.anyProjectionOccluded||le.isOccluded,le.point;let qe=ue-B.direction;return function(Xe,ot,Tt,Yt,Kt){return xe(Xe,ot,Tt,Yt,void 0,Kt)}(B.distanceFromAnchor===0?w.tileAnchorPoint:new a.P(w.lineVertexArray.getx(qe),w.lineVertexArray.gety(qe)),ee,B.previousVertex,B.absOffsetX-B.distanceFromAnchor+1,w)}function vt(ue,w,B){let Q=ue+B.translation[0],ee=w+B.translation[1],le;return!B.pitchWithMap&&B.projection.useSpecialProjectionForSymbols?(le=B.projection.projectTileCoordinates(Q,ee,B.unwrappedTileID,B.getElevation),le.point.x=(.5*le.point.x+.5)*B.width,le.point.y=(.5*-le.point.y+.5)*B.height):(le=dt(Q,ee,B.labelPlaneMatrix,B.getElevation),le.isOccluded=!1),le}function ir(ue,w,B){return ue._unit()._perp()._mult(w*B)}function ar(ue,w,B,Q,ee,le,qe,Xe,ot){if(Xe.projectionCache.offsets[ue])return Xe.projectionCache.offsets[ue];let Tt=B.add(w);if(ue+ot.direction=ee)return Xe.projectionCache.offsets[ue]=Tt,Tt;let Yt=ke(ue+ot.direction,Xe,ot),Kt=ir(Yt.sub(B),qe,ot.direction),xr=B.add(Kt),Ir=Yt.add(Kt);return Xe.projectionCache.offsets[ue]=a.ak(le,Tt,xr,Ir)||Tt,Xe.projectionCache.offsets[ue]}function vr(ue,w,B,Q,ee,le,qe,Xe,ot){let Tt=Q?ue-w:ue+w,Yt=Tt>0?1:-1,Kt=0;Q&&(Yt*=-1,Kt=Math.PI),Yt<0&&(Kt+=Math.PI);let xr,Ir=Yt>0?le+ee:le+ee+1;Xe.projectionCache.cachedAnchorPoint?xr=Xe.projectionCache.cachedAnchorPoint:(xr=vt(Xe.tileAnchorPoint.x,Xe.tileAnchorPoint.y,Xe).point,Xe.projectionCache.cachedAnchorPoint=xr);let ve,be,De=xr,Be=xr,et=0,We=0,it=Math.abs(Tt),Ft=[],Ht;for(;et+We<=it;){if(Ir+=Yt,Ir=qe)return null;et+=We,Be=De,be=ve;let Sr={absOffsetX:it,direction:Yt,distanceFromAnchor:et,previousVertex:Be};if(De=ke(Ir,Xe,Sr),B===0)Ft.push(Be),Ht=De.sub(Be);else{let Or,Wr=De.sub(Be);Or=Wr.mag()===0?ir(ke(Ir+Yt,Xe,Sr).sub(De),B,Yt):ir(Wr,B,Yt),be||(be=Be.add(Or)),ve=ar(Ir,Or,De,le,qe,be,B,Xe,Sr),Ft.push(be),Ht=ve.sub(be)}We=Ht.mag()}let tr=Ht._mult((it-et)/We)._add(be||Be),dr=Kt+Math.atan2(De.y-Be.y,De.x-Be.x);return Ft.push(tr),{point:tr,angle:ot?dr:0,path:Ft}}let ii=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function pi(ue,w){for(let B=0;B=1;fa--)Cn.push(cn.path[fa]);for(let fa=1;fa$a.signedDistanceFromCamera<=0)?[]:fa.map($a=>$a.point)}let Ta=[];if(Cn.length>0){let fa=Cn[0].clone(),$a=Cn[0].clone();for(let Co=1;Co=Wr.x&&$a.x<=ni.x&&fa.y>=Wr.y&&$a.y<=ni.y?[Cn]:$a.xni.x||$a.yni.y?[]:a.al([Cn],Wr.x,Wr.y,ni.x,ni.y)}for(let fa of Ta){Pi.reset(fa,.25*Or);let $a=0;$a=Pi.length<=.5*Or?1:Math.ceil(Pi.paddedLength/Kn)+1;for(let Co=0;Co<$a;Co++){let Qa=Co/Math.max($a-1,1),mo=Pi.lerp(Qa),Bo=mo.x+di,Ps=mo.y+di;Be.push(Bo,Ps,Or,0);let Ts=Bo-Or,wo=Ps-Or,To=Bo+Or,hl=Ps+Or;if(Sr=Sr&&this.isOffscreen(Ts,wo,To,hl),dr=dr||this.isInsideGrid(Ts,wo,To,hl),w!=="always"&&this.grid.hitTestCircle(Bo,Ps,Or,w,xr)&&(tr=!0,!Yt))return{circles:[],offscreen:!1,collisionDetected:tr}}}}return{circles:!Yt&&tr||!dr||Wedt(ee.x,ee.y,Q,B.getElevation))}queryRenderedSymbols(w){if(w.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};let B=[],Q=1/0,ee=1/0,le=-1/0,qe=-1/0;for(let Yt of w){let Kt=new a.P(Yt.x+di,Yt.y+di);Q=Math.min(Q,Kt.x),ee=Math.min(ee,Kt.y),le=Math.max(le,Kt.x),qe=Math.max(qe,Kt.y),B.push(Kt)}let Xe=this.grid.query(Q,ee,le,qe).concat(this.ignoredGrid.query(Q,ee,le,qe)),ot={},Tt={};for(let Yt of Xe){let Kt=Yt.key;if(ot[Kt.bucketInstanceId]===void 0&&(ot[Kt.bucketInstanceId]={}),ot[Kt.bucketInstanceId][Kt.featureIndex])continue;let xr=[new a.P(Yt.x1,Yt.y1),new a.P(Yt.x2,Yt.y1),new a.P(Yt.x2,Yt.y2),new a.P(Yt.x1,Yt.y2)];a.am(B,xr)&&(ot[Kt.bucketInstanceId][Kt.featureIndex]=!0,Tt[Kt.bucketInstanceId]===void 0&&(Tt[Kt.bucketInstanceId]=[]),Tt[Kt.bucketInstanceId].push(Kt.featureIndex))}return Tt}insertCollisionBox(w,B,Q,ee,le,qe){(Q?this.ignoredGrid:this.grid).insert({bucketInstanceId:ee,featureIndex:le,collisionGroupID:qe,overlapMode:B},w[0],w[1],w[2],w[3])}insertCollisionCircles(w,B,Q,ee,le,qe){let Xe=Q?this.ignoredGrid:this.grid,ot={bucketInstanceId:ee,featureIndex:le,collisionGroupID:qe,overlapMode:B};for(let Tt=0;Tt=this.screenRightBoundary||eethis.screenBottomBoundary}isInsideGrid(w,B,Q,ee){return Q>=0&&w=0&&Bthis.projectAndGetPerspectiveRatio(Q,Or.x,Or.y,ee,Tt));dr=Sr.some(Or=>!Or.isOccluded),tr=Sr.map(Or=>Or.point)}else dr=!0;return{box:a.ao(tr),allPointsOccluded:!dr}}}function In(ue,w,B){return w*(a.X/(ue.tileSize*Math.pow(2,B-ue.tileID.overscaledZ)))}class wi{constructor(w,B,Q,ee){this.opacity=w?Math.max(0,Math.min(1,w.opacity+(w.placed?B:-B))):ee&&Q?1:0,this.placed=Q}isHidden(){return this.opacity===0&&!this.placed}}class On{constructor(w,B,Q,ee,le){this.text=new wi(w?w.text:null,B,Q,le),this.icon=new wi(w?w.icon:null,B,ee,le)}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class qn{constructor(w,B,Q){this.text=w,this.icon=B,this.skipFade=Q}}class Fn{constructor(){this.invProjMatrix=a.H(),this.viewportMatrix=a.H(),this.circles=[]}}class ra{constructor(w,B,Q,ee,le){this.bucketInstanceId=w,this.featureIndex=B,this.sourceLayerIndex=Q,this.bucketIndex=ee,this.tileID=le}}class la{constructor(w){this.crossSourceCollisions=w,this.maxGroupID=0,this.collisionGroups={}}get(w){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[w]){let B=++this.maxGroupID;this.collisionGroups[w]={ID:B,predicate:Q=>Q.collisionGroupID===B}}return this.collisionGroups[w]}}function Ut(ue,w,B,Q,ee){let{horizontalAlign:le,verticalAlign:qe}=a.au(ue);return new a.P(-(le-.5)*w+Q[0]*ee,-(qe-.5)*B+Q[1]*ee)}class wt{constructor(w,B,Q,ee,le,qe){this.transform=w.clone(),this.terrain=Q,this.collisionIndex=new ji(this.transform,B),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=ee,this.retainedQueryData={},this.collisionGroups=new la(le),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=qe,qe&&(qe.prevPlacement=void 0),this.placedOrientations={}}_getTerrainElevationFunc(w){let B=this.terrain;return B?(Q,ee)=>B.getElevation(w,Q,ee):null}getBucketParts(w,B,Q,ee){let le=Q.getBucket(B),qe=Q.latestFeatureIndex;if(!le||!qe||B.id!==le.layerIds[0])return;let Xe=Q.collisionBoxArray,ot=le.layers[0].layout,Tt=le.layers[0].paint,Yt=Math.pow(2,this.transform.zoom-Q.tileID.overscaledZ),Kt=Q.tileSize/a.X,xr=Q.tileID.toUnwrapped(),Ir=this.transform.calculatePosMatrix(xr),ve=ot.get("text-pitch-alignment")==="map",be=ot.get("text-rotation-alignment")==="map",De=In(Q,1,this.transform.zoom),Be=this.collisionIndex.mapProjection.translatePosition(this.transform,Q,Tt.get("text-translate"),Tt.get("text-translate-anchor")),et=this.collisionIndex.mapProjection.translatePosition(this.transform,Q,Tt.get("icon-translate"),Tt.get("icon-translate-anchor")),We=Br(Ir,ve,be,this.transform,De),it=null;if(ve){let Ht=Vr(Ir,ve,be,this.transform,De);it=a.L([],this.transform.labelPlaneMatrix,Ht)}this.retainedQueryData[le.bucketInstanceId]=new ra(le.bucketInstanceId,qe,le.sourceLayerIndex,le.index,Q.tileID);let Ft={bucket:le,layout:ot,translationText:Be,translationIcon:et,posMatrix:Ir,unwrappedTileID:xr,textLabelPlaneMatrix:We,labelToScreenMatrix:it,scale:Yt,textPixelRatio:Kt,holdingForFade:Q.holdingForFade(),collisionBoxArray:Xe,partiallyEvaluatedTextSize:a.ag(le.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(le.sourceID)};if(ee)for(let Ht of le.sortKeyRanges){let{sortKey:tr,symbolInstanceStart:dr,symbolInstanceEnd:Sr}=Ht;w.push({sortKey:tr,symbolInstanceStart:dr,symbolInstanceEnd:Sr,parameters:Ft})}else w.push({symbolInstanceStart:0,symbolInstanceEnd:le.symbolInstances.length,parameters:Ft})}attemptAnchorPlacement(w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir,ve,be,De,Be,et,We){let it=a.aq[w.textAnchor],Ft=[w.textOffset0,w.textOffset1],Ht=Ut(it,Q,ee,Ft,le),tr=this.collisionIndex.placeCollisionBox(B,xr,ot,Tt,Yt,Xe,qe,De,Kt.predicate,We,Ht);if((!et||this.collisionIndex.placeCollisionBox(et,xr,ot,Tt,Yt,Xe,qe,Be,Kt.predicate,We,Ht).placeable)&&tr.placeable){let dr;if(this.prevPlacement&&this.prevPlacement.variableOffsets[Ir.crossTileID]&&this.prevPlacement.placements[Ir.crossTileID]&&this.prevPlacement.placements[Ir.crossTileID].text&&(dr=this.prevPlacement.variableOffsets[Ir.crossTileID].anchor),Ir.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[Ir.crossTileID]={textOffset:Ft,width:Q,height:ee,anchor:it,textBoxScale:le,prevAnchor:dr},this.markUsedJustification(ve,it,Ir,be),ve.allowVerticalPlacement&&(this.markUsedOrientation(ve,be,Ir),this.placedOrientations[Ir.crossTileID]=be),{shift:Ht,placedGlyphBoxes:tr}}}placeLayerBucketPart(w,B,Q){let{bucket:ee,layout:le,translationText:qe,translationIcon:Xe,posMatrix:ot,unwrappedTileID:Tt,textLabelPlaneMatrix:Yt,labelToScreenMatrix:Kt,textPixelRatio:xr,holdingForFade:Ir,collisionBoxArray:ve,partiallyEvaluatedTextSize:be,collisionGroup:De}=w.parameters,Be=le.get("text-optional"),et=le.get("icon-optional"),We=a.ar(le,"text-overlap","text-allow-overlap"),it=We==="always",Ft=a.ar(le,"icon-overlap","icon-allow-overlap"),Ht=Ft==="always",tr=le.get("text-rotation-alignment")==="map",dr=le.get("text-pitch-alignment")==="map",Sr=le.get("icon-text-fit")!=="none",Or=le.get("symbol-z-order")==="viewport-y",Wr=it&&(Ht||!ee.hasIconData()||et),ni=Ht&&(it||!ee.hasTextData()||Be);!ee.collisionArrays&&ve&&ee.deserializeCollisionBoxes(ve);let Pi=this._getTerrainElevationFunc(this.retainedQueryData[ee.bucketInstanceId].tileID),cn=(ln,Cn,Kn)=>{var Ta,fa;if(B[ln.crossTileID])return;if(Ir)return void(this.placements[ln.crossTileID]=new qn(!1,!1,!1));let $a=!1,Co=!1,Qa=!0,mo=null,Bo={box:null,placeable:!1,offscreen:null},Ps={box:null,placeable:!1,offscreen:null},Ts=null,wo=null,To=null,hl=0,Ul=0,Lu=0;Cn.textFeatureIndex?hl=Cn.textFeatureIndex:ln.useRuntimeCollisionCircles&&(hl=ln.featureIndex),Cn.verticalTextFeatureIndex&&(Ul=Cn.verticalTextFeatureIndex);let au=Cn.textBox;if(au){let Tl=Te=>{let Ne=a.ah.horizontal;if(ee.allowVerticalPlacement&&!Te&&this.prevPlacement){let He=this.prevPlacement.placedOrientations[ln.crossTileID];He&&(this.placedOrientations[ln.crossTileID]=He,Ne=He,this.markUsedOrientation(ee,Ne,ln))}return Ne},Al=(Te,Ne)=>{if(ee.allowVerticalPlacement&&ln.numVerticalGlyphVertices>0&&Cn.verticalTextBox){for(let He of ee.writingModes)if(He===a.ah.vertical?(Bo=Ne(),Ps=Bo):Bo=Te(),Bo&&Bo.placeable)break}else Bo=Te()},X=ln.textAnchorOffsetStartIndex,se=ln.textAnchorOffsetEndIndex;if(se===X){let Te=(Ne,He)=>{let Ye=this.collisionIndex.placeCollisionBox(Ne,We,xr,ot,Tt,dr,tr,qe,De.predicate,Pi);return Ye&&Ye.placeable&&(this.markUsedOrientation(ee,He,ln),this.placedOrientations[ln.crossTileID]=He),Ye};Al(()=>Te(au,a.ah.horizontal),()=>{let Ne=Cn.verticalTextBox;return ee.allowVerticalPlacement&&ln.numVerticalGlyphVertices>0&&Ne?Te(Ne,a.ah.vertical):{box:null,offscreen:null}}),Tl(Bo&&Bo.placeable)}else{let Te=a.aq[(fa=(Ta=this.prevPlacement)===null||Ta===void 0?void 0:Ta.variableOffsets[ln.crossTileID])===null||fa===void 0?void 0:fa.anchor],Ne=(Ye,kt,nt)=>{let jt=Ye.x2-Ye.x1,gr=Ye.y2-Ye.y1,yr=ln.textBoxScale,Hr=Sr&&Ft==="never"?kt:null,qr=null,_i=We==="never"?1:2,bi="never";Te&&_i++;for(let Zr=0;Zr<_i;Zr++){for(let ai=X;aiNe(au,Cn.iconBox,a.ah.horizontal),()=>{let Ye=Cn.verticalTextBox;return ee.allowVerticalPlacement&&(!Bo||!Bo.placeable)&&ln.numVerticalGlyphVertices>0&&Ye?Ne(Ye,Cn.verticalIconBox,a.ah.vertical):{box:null,occluded:!0,offscreen:null}}),Bo&&($a=Bo.placeable,Qa=Bo.offscreen);let He=Tl(Bo&&Bo.placeable);if(!$a&&this.prevPlacement){let Ye=this.prevPlacement.variableOffsets[ln.crossTileID];Ye&&(this.variableOffsets[ln.crossTileID]=Ye,this.markUsedJustification(ee,Ye.anchor,ln,He))}}}if(Ts=Bo,$a=Ts&&Ts.placeable,Qa=Ts&&Ts.offscreen,ln.useRuntimeCollisionCircles){let Tl=ee.text.placedSymbolArray.get(ln.centerJustifiedTextSymbolIndex),Al=a.ai(ee.textSizeData,be,Tl),X=le.get("text-padding");wo=this.collisionIndex.placeCollisionCircles(We,Tl,ee.lineVertexArray,ee.glyphOffsetArray,Al,ot,Tt,Yt,Kt,Q,dr,De.predicate,ln.collisionCircleDiameter,X,qe,Pi),wo.circles.length&&wo.collisionDetected&&!Q&&a.w("Collisions detected, but collision boxes are not shown"),$a=it||wo.circles.length>0&&!wo.collisionDetected,Qa=Qa&&wo.offscreen}if(Cn.iconFeatureIndex&&(Lu=Cn.iconFeatureIndex),Cn.iconBox){let Tl=Al=>this.collisionIndex.placeCollisionBox(Al,Ft,xr,ot,Tt,dr,tr,Xe,De.predicate,Pi,Sr&&mo?mo:void 0);Ps&&Ps.placeable&&Cn.verticalIconBox?(To=Tl(Cn.verticalIconBox),Co=To.placeable):(To=Tl(Cn.iconBox),Co=To.placeable),Qa=Qa&&To.offscreen}let Js=Be||ln.numHorizontalGlyphVertices===0&&ln.numVerticalGlyphVertices===0,Ql=et||ln.numIconVertices===0;Js||Ql?Ql?Js||(Co=Co&&$a):$a=Co&&$a:Co=$a=Co&&$a;let dc=Co&&To.placeable;if($a&&Ts.placeable&&this.collisionIndex.insertCollisionBox(Ts.box,We,le.get("text-ignore-placement"),ee.bucketInstanceId,Ps&&Ps.placeable&&Ul?Ul:hl,De.ID),dc&&this.collisionIndex.insertCollisionBox(To.box,Ft,le.get("icon-ignore-placement"),ee.bucketInstanceId,Lu,De.ID),wo&&$a&&this.collisionIndex.insertCollisionCircles(wo.circles,We,le.get("text-ignore-placement"),ee.bucketInstanceId,hl,De.ID),Q&&this.storeCollisionData(ee.bucketInstanceId,Kn,Cn,Ts,To,wo),ln.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");if(ee.bucketInstanceId===0)throw new Error("bucket.bucketInstanceId can't be 0");this.placements[ln.crossTileID]=new qn($a||Wr,Co||ni,Qa||ee.justReloaded),B[ln.crossTileID]=!0};if(Or){if(w.symbolInstanceStart!==0)throw new Error("bucket.bucketInstanceId should be 0");let ln=ee.getSortedSymbolIndexes(this.transform.angle);for(let Cn=ln.length-1;Cn>=0;--Cn){let Kn=ln[Cn];cn(ee.symbolInstances.get(Kn),ee.collisionArrays[Kn],Kn)}}else for(let ln=w.symbolInstanceStart;ln=0&&(w.text.placedSymbolArray.get(Xe).crossTileID=le>=0&&Xe!==le?0:Q.crossTileID)}markUsedOrientation(w,B,Q){let ee=B===a.ah.horizontal||B===a.ah.horizontalOnly?B:0,le=B===a.ah.vertical?B:0,qe=[Q.leftJustifiedTextSymbolIndex,Q.centerJustifiedTextSymbolIndex,Q.rightJustifiedTextSymbolIndex];for(let Xe of qe)w.text.placedSymbolArray.get(Xe).placedOrientation=ee;Q.verticalPlacedTextSymbolIndex&&(w.text.placedSymbolArray.get(Q.verticalPlacedTextSymbolIndex).placedOrientation=le)}commit(w){this.commitTime=w,this.zoomAtLastRecencyCheck=this.transform.zoom;let B=this.prevPlacement,Q=!1;this.prevZoomAdjustment=B?B.zoomAdjustment(this.transform.zoom):0;let ee=B?B.symbolFadeChange(w):1,le=B?B.opacities:{},qe=B?B.variableOffsets:{},Xe=B?B.placedOrientations:{};for(let ot in this.placements){let Tt=this.placements[ot],Yt=le[ot];Yt?(this.opacities[ot]=new On(Yt,ee,Tt.text,Tt.icon),Q=Q||Tt.text!==Yt.text.placed||Tt.icon!==Yt.icon.placed):(this.opacities[ot]=new On(null,ee,Tt.text,Tt.icon,Tt.skipFade),Q=Q||Tt.text||Tt.icon)}for(let ot in le){let Tt=le[ot];if(!this.opacities[ot]){let Yt=new On(Tt,ee,!1,!1);Yt.isHidden()||(this.opacities[ot]=Yt,Q=Q||Tt.text.placed||Tt.icon.placed)}}for(let ot in qe)this.variableOffsets[ot]||!this.opacities[ot]||this.opacities[ot].isHidden()||(this.variableOffsets[ot]=qe[ot]);for(let ot in Xe)this.placedOrientations[ot]||!this.opacities[ot]||this.opacities[ot].isHidden()||(this.placedOrientations[ot]=Xe[ot]);if(B&&B.lastPlacementChangeTime===void 0)throw new Error("Last placement time for previous placement is not defined");Q?this.lastPlacementChangeTime=w:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=B?B.lastPlacementChangeTime:w)}updateLayerOpacities(w,B){let Q={};for(let ee of B){let le=ee.getBucket(w);le&&ee.latestFeatureIndex&&w.id===le.layerIds[0]&&this.updateBucketOpacities(le,ee.tileID,Q,ee.collisionBoxArray)}}updateBucketOpacities(w,B,Q,ee){w.hasTextData()&&(w.text.opacityVertexArray.clear(),w.text.hasVisibleVertices=!1),w.hasIconData()&&(w.icon.opacityVertexArray.clear(),w.icon.hasVisibleVertices=!1),w.hasIconCollisionBoxData()&&w.iconCollisionBox.collisionVertexArray.clear(),w.hasTextCollisionBoxData()&&w.textCollisionBox.collisionVertexArray.clear();let le=w.layers[0],qe=le.layout,Xe=new On(null,0,!1,!1,!0),ot=qe.get("text-allow-overlap"),Tt=qe.get("icon-allow-overlap"),Yt=le._unevaluatedLayout.hasValue("text-variable-anchor")||le._unevaluatedLayout.hasValue("text-variable-anchor-offset"),Kt=qe.get("text-rotation-alignment")==="map",xr=qe.get("text-pitch-alignment")==="map",Ir=qe.get("icon-text-fit")!=="none",ve=new On(null,0,ot&&(Tt||!w.hasIconData()||qe.get("icon-optional")),Tt&&(ot||!w.hasTextData()||qe.get("text-optional")),!0);!w.collisionArrays&&ee&&(w.hasIconCollisionBoxData()||w.hasTextCollisionBoxData())&&w.deserializeCollisionBoxes(ee);let be=(Be,et,We)=>{for(let it=0;it0,dr=this.placedOrientations[et.crossTileID],Sr=dr===a.ah.vertical,Or=dr===a.ah.horizontal||dr===a.ah.horizontalOnly;if(We>0||it>0){let ni=tn(Ht.text);be(w.text,We,Sr?fn:ni),be(w.text,it,Or?fn:ni);let Pi=Ht.text.isHidden();[et.rightJustifiedTextSymbolIndex,et.centerJustifiedTextSymbolIndex,et.leftJustifiedTextSymbolIndex].forEach(Cn=>{Cn>=0&&(w.text.placedSymbolArray.get(Cn).hidden=Pi||Sr?1:0)}),et.verticalPlacedTextSymbolIndex>=0&&(w.text.placedSymbolArray.get(et.verticalPlacedTextSymbolIndex).hidden=Pi||Or?1:0);let cn=this.variableOffsets[et.crossTileID];cn&&this.markUsedJustification(w,cn.anchor,et,dr);let ln=this.placedOrientations[et.crossTileID];ln&&(this.markUsedJustification(w,"left",et,ln),this.markUsedOrientation(w,ln,et))}if(tr){let ni=tn(Ht.icon),Pi=!(Ir&&et.verticalPlacedIconSymbolIndex&&Sr);et.placedIconSymbolIndex>=0&&(be(w.icon,et.numIconVertices,Pi?ni:fn),w.icon.placedSymbolArray.get(et.placedIconSymbolIndex).hidden=Ht.icon.isHidden()),et.verticalPlacedIconSymbolIndex>=0&&(be(w.icon,et.numVerticalIconVertices,Pi?fn:ni),w.icon.placedSymbolArray.get(et.verticalPlacedIconSymbolIndex).hidden=Ht.icon.isHidden())}let Wr=De&&De.has(Be)?De.get(Be):{text:null,icon:null};if(w.hasIconCollisionBoxData()||w.hasTextCollisionBoxData()){let ni=w.collisionArrays[Be];if(ni){let Pi=new a.P(0,0);if(ni.textBox||ni.verticalTextBox){let cn=!0;if(Yt){let ln=this.variableOffsets[Ft];ln?(Pi=Ut(ln.anchor,ln.width,ln.height,ln.textOffset,ln.textBoxScale),Kt&&Pi._rotate(xr?this.transform.angle:-this.transform.angle)):cn=!1}if(ni.textBox||ni.verticalTextBox){let ln;ni.textBox&&(ln=Sr),ni.verticalTextBox&&(ln=Or),rr(w.textCollisionBox.collisionVertexArray,Ht.text.placed,!cn||ln,Wr.text,Pi.x,Pi.y)}}if(ni.iconBox||ni.verticalIconBox){let cn=!!(!Or&&ni.verticalIconBox),ln;ni.iconBox&&(ln=cn),ni.verticalIconBox&&(ln=!cn),rr(w.iconCollisionBox.collisionVertexArray,Ht.icon.placed,ln,Wr.icon,Ir?Pi.x:0,Ir?Pi.y:0)}}}}if(w.sortFeatures(this.transform.angle),this.retainedQueryData[w.bucketInstanceId]&&(this.retainedQueryData[w.bucketInstanceId].featureSortOrder=w.featureSortOrder),w.hasTextData()&&w.text.opacityVertexBuffer&&w.text.opacityVertexBuffer.updateData(w.text.opacityVertexArray),w.hasIconData()&&w.icon.opacityVertexBuffer&&w.icon.opacityVertexBuffer.updateData(w.icon.opacityVertexArray),w.hasIconCollisionBoxData()&&w.iconCollisionBox.collisionVertexBuffer&&w.iconCollisionBox.collisionVertexBuffer.updateData(w.iconCollisionBox.collisionVertexArray),w.hasTextCollisionBoxData()&&w.textCollisionBox.collisionVertexBuffer&&w.textCollisionBox.collisionVertexBuffer.updateData(w.textCollisionBox.collisionVertexArray),w.text.opacityVertexArray.length!==w.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${w.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${w.text.layoutVertexArray.length}) / 4`);if(w.icon.opacityVertexArray.length!==w.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${w.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${w.icon.layoutVertexArray.length}) / 4`);if(w.bucketInstanceId in this.collisionCircleArrays){let Be=this.collisionCircleArrays[w.bucketInstanceId];w.placementInvProjMatrix=Be.invProjMatrix,w.placementViewportMatrix=Be.viewportMatrix,w.collisionCircleArray=Be.circles,delete this.collisionCircleArrays[w.bucketInstanceId]}}symbolFadeChange(w){return this.fadeDuration===0?1:(w-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(w){return Math.max(0,(this.transform.zoom-w)/1.5)}hasTransitions(w){return this.stale||w-this.lastPlacementChangeTimew}setStale(){this.stale=!0}}function rr(ue,w,B,Q,ee,le){Q&&Q.length!==0||(Q=[0,0,0,0]);let qe=Q[0]-di,Xe=Q[1]-di,ot=Q[2]-di,Tt=Q[3]-di;ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,qe,Xe),ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,ot,Xe),ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,ot,Tt),ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,qe,Tt)}let nr=Math.pow(2,25),Er=Math.pow(2,24),Xr=Math.pow(2,17),ri=Math.pow(2,16),Qr=Math.pow(2,9),Oi=Math.pow(2,8),$i=Math.pow(2,1);function tn(ue){if(ue.opacity===0&&!ue.placed)return 0;if(ue.opacity===1&&ue.placed)return 4294967295;let w=ue.placed?1:0,B=Math.floor(127*ue.opacity);return B*nr+w*Er+B*Xr+w*ri+B*Qr+w*Oi+B*$i+w}let fn=0;function yn(){return{isOccluded:(ue,w,B)=>!1,getPitchedTextCorrection:(ue,w,B)=>1,get useSpecialProjectionForSymbols(){return!1},projectTileCoordinates(ue,w,B,Q){throw new Error("Not implemented.")},translatePosition:(ue,w,B,Q)=>function(ee,le,qe,Xe,ot=!1){if(!qe[0]&&!qe[1])return[0,0];let Tt=ot?Xe==="map"?ee.angle:0:Xe==="viewport"?-ee.angle:0;if(Tt){let Yt=Math.sin(Tt),Kt=Math.cos(Tt);qe=[qe[0]*Kt-qe[1]*Yt,qe[0]*Yt+qe[1]*Kt]}return[ot?qe[0]:In(le,qe[0],ee.zoom),ot?qe[1]:In(le,qe[1],ee.zoom)]}(ue,w,B,Q),getCircleRadiusCorrection:ue=>1}}class Sn{constructor(w){this._sortAcrossTiles=w.layout.get("symbol-z-order")!=="viewport-y"&&!w.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(w,B,Q,ee,le){let qe=this._bucketParts;for(;this._currentTileIndexXe.sortKey-ot.sortKey));this._currentPartIndex!this._forceFullPlacement&&u.now()-ee>2;for(;this._currentPlacementIndex>=0;){let qe=B[w[this._currentPlacementIndex]],Xe=this.placement.collisionIndex.transform.zoom;if(qe.type==="symbol"&&(!qe.minzoom||qe.minzoom<=Xe)&&(!qe.maxzoom||qe.maxzoom>Xe)){if(this._inProgressLayer||(this._inProgressLayer=new Sn(qe)),this._inProgressLayer.continuePlacement(Q[qe.source],this.placement,this._showCollisionBoxes,qe,le))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(w){return this.placement.commit(w),this.placement}}let ua=512/a.X/2;class ma{constructor(w,B,Q){this.tileID=w,this.bucketInstanceId=Q,this._symbolsByKey={};let ee=new Map;for(let le=0;le({x:Math.floor(ot.anchorX*ua),y:Math.floor(ot.anchorY*ua)})),crossTileIDs:qe.map(ot=>ot.crossTileID)};if(Xe.positions.length>128){let ot=new a.av(Xe.positions.length,16,Uint16Array);for(let{x:Tt,y:Yt}of Xe.positions)ot.add(Tt,Yt);ot.finish(),delete Xe.positions,Xe.index=ot}this._symbolsByKey[le]=Xe}}getScaledCoordinates(w,B){let{x:Q,y:ee,z:le}=this.tileID.canonical,{x:qe,y:Xe,z:ot}=B.canonical,Tt=ua/Math.pow(2,ot-le),Yt=(Xe*a.X+w.anchorY)*Tt,Kt=ee*a.X*ua;return{x:Math.floor((qe*a.X+w.anchorX)*Tt-Q*a.X*ua),y:Math.floor(Yt-Kt)}}findMatches(w,B,Q){let ee=this.tileID.canonical.zw)}}class Wa{constructor(){this.maxCrossTileID=0}generate(){return++this.maxCrossTileID}}class Fa{constructor(){this.indexes={},this.usedCrossTileIDs={},this.lng=0}handleWrapJump(w){let B=Math.round((w-this.lng)/360);if(B!==0)for(let Q in this.indexes){let ee=this.indexes[Q],le={};for(let qe in ee){let Xe=ee[qe];Xe.tileID=Xe.tileID.unwrapTo(Xe.tileID.wrap+B),le[Xe.tileID.key]=Xe}this.indexes[Q]=le}this.lng=w}addBucket(w,B,Q){if(this.indexes[w.overscaledZ]&&this.indexes[w.overscaledZ][w.key]){if(this.indexes[w.overscaledZ][w.key].bucketInstanceId===B.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(w.overscaledZ,this.indexes[w.overscaledZ][w.key])}for(let le=0;lew.overscaledZ)for(let Xe in qe){let ot=qe[Xe];ot.tileID.isChildOf(w)&&ot.findMatches(B.symbolInstances,w,ee)}else{let Xe=qe[w.scaledTo(Number(le)).key];Xe&&Xe.findMatches(B.symbolInstances,w,ee)}}for(let le=0;le{B[Q]=!0});for(let Q in this.layerIndexes)B[Q]||delete this.layerIndexes[Q]}}let da=(ue,w)=>a.t(ue,w&&w.filter(B=>B.identifier!=="source.canvas")),Wn=a.aw();class Ga extends a.E{constructor(w,B={}){super(),this._rtlPluginLoaded=()=>{for(let Q in this.sourceCaches){let ee=this.sourceCaches[Q].getSource().type;ee!=="vector"&&ee!=="geojson"||this.sourceCaches[Q].reload()}},this.map=w,this.dispatcher=new Le(Se(),w._getMapId()),this.dispatcher.registerMessageHandler("GG",(Q,ee)=>this.getGlyphs(Q,ee)),this.dispatcher.registerMessageHandler("GI",(Q,ee)=>this.getImages(Q,ee)),this.imageManager=new T,this.imageManager.setEventedParent(this),this.glyphManager=new G(w._requestManager,B.localIdeographFontFamily),this.lineAtlas=new oe(256,512),this.crossTileSymbolIndex=new Wo,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new a.ax,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("SR",a.ay()),Qt().on(cr,this._rtlPluginLoaded),this.on("data",Q=>{if(Q.dataType!=="source"||Q.sourceDataType!=="metadata")return;let ee=this.sourceCaches[Q.sourceId];if(!ee)return;let le=ee.getSource();if(le&&le.vectorLayerIds)for(let qe in this._layers){let Xe=this._layers[qe];Xe.source===le.id&&this._validateLayer(Xe)}})}loadURL(w,B={},Q){this.fire(new a.k("dataloading",{dataType:"style"})),B.validate=typeof B.validate!="boolean"||B.validate;let ee=this.map._requestManager.transformRequest(w,"Style");this._loadStyleRequest=new AbortController;let le=this._loadStyleRequest;a.h(ee,this._loadStyleRequest).then(qe=>{this._loadStyleRequest=null,this._load(qe.data,B,Q)}).catch(qe=>{this._loadStyleRequest=null,qe&&!le.signal.aborted&&this.fire(new a.j(qe))})}loadJSON(w,B={},Q){this.fire(new a.k("dataloading",{dataType:"style"})),this._frameRequest=new AbortController,u.frameAsync(this._frameRequest).then(()=>{this._frameRequest=null,B.validate=B.validate!==!1,this._load(w,B,Q)}).catch(()=>{})}loadEmpty(){this.fire(new a.k("dataloading",{dataType:"style"})),this._load(Wn,{validate:!1})}_load(w,B,Q){var ee;let le=B.transformStyle?B.transformStyle(Q,w):w;if(!B.validate||!da(this,a.u(le))){this._loaded=!0,this.stylesheet=le;for(let qe in le.sources)this.addSource(qe,le.sources[qe],{validate:!1});le.sprite?this._loadSprite(le.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(le.glyphs),this._createLayers(),this.light=new N(this.stylesheet.light),this.sky=new re(this.stylesheet.sky),this.map.setTerrain((ee=this.stylesheet.terrain)!==null&&ee!==void 0?ee:null),this.fire(new a.k("data",{dataType:"style"})),this.fire(new a.k("style.load"))}}_createLayers(){let w=a.az(this.stylesheet.layers);this.dispatcher.broadcast("SL",w),this._order=w.map(B=>B.id),this._layers={},this._serializedLayers=null;for(let B of w){let Q=a.aA(B);Q.setEventedParent(this,{layer:{id:B.id}}),this._layers[B.id]=Q}}_loadSprite(w,B=!1,Q=void 0){let ee;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,function(le,qe,Xe,ot){return a._(this,void 0,void 0,function*(){let Tt=C(le),Yt=Xe>1?"@2x":"",Kt={},xr={};for(let{id:Ir,url:ve}of Tt){let be=qe.transformRequest(M(ve,Yt,".json"),"SpriteJSON");Kt[Ir]=a.h(be,ot);let De=qe.transformRequest(M(ve,Yt,".png"),"SpriteImage");xr[Ir]=p.getImage(De,ot)}return yield Promise.all([...Object.values(Kt),...Object.values(xr)]),function(Ir,ve){return a._(this,void 0,void 0,function*(){let be={};for(let De in Ir){be[De]={};let Be=u.getImageCanvasContext((yield ve[De]).data),et=(yield Ir[De]).data;for(let We in et){let{width:it,height:Ft,x:Ht,y:tr,sdf:dr,pixelRatio:Sr,stretchX:Or,stretchY:Wr,content:ni,textFitWidth:Pi,textFitHeight:cn}=et[We];be[De][We]={data:null,pixelRatio:Sr,sdf:dr,stretchX:Or,stretchY:Wr,content:ni,textFitWidth:Pi,textFitHeight:cn,spriteData:{width:it,height:Ft,x:Ht,y:tr,context:Be}}}}return be})}(Kt,xr)})}(w,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then(le=>{if(this._spriteRequest=null,le)for(let qe in le){this._spritesImagesIds[qe]=[];let Xe=this._spritesImagesIds[qe]?this._spritesImagesIds[qe].filter(ot=>!(ot in le)):[];for(let ot of Xe)this.imageManager.removeImage(ot),this._changedImages[ot]=!0;for(let ot in le[qe]){let Tt=qe==="default"?ot:`${qe}:${ot}`;this._spritesImagesIds[qe].push(Tt),Tt in this.imageManager.images?this.imageManager.updateImage(Tt,le[qe][ot],!1):this.imageManager.addImage(Tt,le[qe][ot]),B&&(this._changedImages[Tt]=!0)}}}).catch(le=>{this._spriteRequest=null,ee=le,this.fire(new a.j(ee))}).finally(()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),B&&(this._changed=!0),this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"})),Q&&Q(ee)})}_unloadSprite(){for(let w of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(w),this._changedImages[w]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}_validateLayer(w){let B=this.sourceCaches[w.source];if(!B)return;let Q=w.sourceLayer;if(!Q)return;let ee=B.getSource();(ee.type==="geojson"||ee.vectorLayerIds&&ee.vectorLayerIds.indexOf(Q)===-1)&&this.fire(new a.j(new Error(`Source layer "${Q}" does not exist on source "${ee.id}" as specified by style layer "${w.id}".`)))}loaded(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(let w in this.sourceCaches)if(!this.sourceCaches[w].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeByIds(w,B=!1){let Q=this._serializedAllLayers();if(!w||w.length===0)return Object.values(B?a.aB(Q):Q);let ee=[];for(let le of w)if(Q[le]){let qe=B?a.aB(Q[le]):Q[le];ee.push(qe)}return ee}_serializedAllLayers(){let w=this._serializedLayers;if(w)return w;w=this._serializedLayers={};let B=Object.keys(this._layers);for(let Q of B){let ee=this._layers[Q];ee.type!=="custom"&&(w[Q]=ee.serialize())}return w}hasTransitions(){if(this.light&&this.light.hasTransition()||this.sky&&this.sky.hasTransition())return!0;for(let w in this.sourceCaches)if(this.sourceCaches[w].hasTransition())return!0;for(let w in this._layers)if(this._layers[w].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(w){if(!this._loaded)return;let B=this._changed;if(B){let ee=Object.keys(this._updatedLayers),le=Object.keys(this._removedLayers);(ee.length||le.length)&&this._updateWorkerLayers(ee,le);for(let qe in this._updatedSources){let Xe=this._updatedSources[qe];if(Xe==="reload")this._reloadSource(qe);else{if(Xe!=="clear")throw new Error(`Invalid action ${Xe}`);this._clearSource(qe)}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(let qe in this._updatedPaintProps)this._layers[qe].updateTransitions(w);this.light.updateTransitions(w),this.sky.updateTransitions(w),this._resetUpdates()}let Q={};for(let ee in this.sourceCaches){let le=this.sourceCaches[ee];Q[ee]=le.used,le.used=!1}for(let ee of this._order){let le=this._layers[ee];le.recalculate(w,this._availableImages),!le.isHidden(w.zoom)&&le.source&&(this.sourceCaches[le.source].used=!0)}for(let ee in Q){let le=this.sourceCaches[ee];!!Q[ee]!=!!le.used&&le.fire(new a.k("data",{sourceDataType:"visibility",dataType:"source",sourceId:ee}))}this.light.recalculate(w),this.sky.recalculate(w),this.z=w.zoom,B&&this.fire(new a.k("data",{dataType:"style"}))}_updateTilesForChangedImages(){let w=Object.keys(this._changedImages);if(w.length){for(let B in this.sourceCaches)this.sourceCaches[B].reloadTilesForDependencies(["icons","patterns"],w);this._changedImages={}}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(let w in this.sourceCaches)this.sourceCaches[w].reloadTilesForDependencies(["glyphs"],[""]);this._glyphsDidChange=!1}}_updateWorkerLayers(w,B){this.dispatcher.broadcast("UL",{layers:this._serializeByIds(w,!1),removedIds:B})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1}setState(w,B={}){var Q;this._checkLoaded();let ee=this.serialize();if(w=B.transformStyle?B.transformStyle(ee,w):w,((Q=B.validate)===null||Q===void 0||Q)&&da(this,a.u(w)))return!1;(w=a.aB(w)).layers=a.az(w.layers);let le=a.aC(ee,w),qe=this._getOperationsToPerform(le);if(qe.unimplemented.length>0)throw new Error(`Unimplemented: ${qe.unimplemented.join(", ")}.`);if(qe.operations.length===0)return!1;for(let Xe of qe.operations)Xe();return this.stylesheet=w,this._serializedLayers=null,!0}_getOperationsToPerform(w){let B=[],Q=[];for(let ee of w)switch(ee.command){case"setCenter":case"setZoom":case"setBearing":case"setPitch":continue;case"addLayer":B.push(()=>this.addLayer.apply(this,ee.args));break;case"removeLayer":B.push(()=>this.removeLayer.apply(this,ee.args));break;case"setPaintProperty":B.push(()=>this.setPaintProperty.apply(this,ee.args));break;case"setLayoutProperty":B.push(()=>this.setLayoutProperty.apply(this,ee.args));break;case"setFilter":B.push(()=>this.setFilter.apply(this,ee.args));break;case"addSource":B.push(()=>this.addSource.apply(this,ee.args));break;case"removeSource":B.push(()=>this.removeSource.apply(this,ee.args));break;case"setLayerZoomRange":B.push(()=>this.setLayerZoomRange.apply(this,ee.args));break;case"setLight":B.push(()=>this.setLight.apply(this,ee.args));break;case"setGeoJSONSourceData":B.push(()=>this.setGeoJSONSourceData.apply(this,ee.args));break;case"setGlyphs":B.push(()=>this.setGlyphs.apply(this,ee.args));break;case"setSprite":B.push(()=>this.setSprite.apply(this,ee.args));break;case"setSky":B.push(()=>this.setSky.apply(this,ee.args));break;case"setTerrain":B.push(()=>this.map.setTerrain.apply(this,ee.args));break;case"setTransition":B.push(()=>{});break;default:Q.push(ee.command)}return{operations:B,unimplemented:Q}}addImage(w,B){if(this.getImage(w))return this.fire(new a.j(new Error(`An image named "${w}" already exists.`)));this.imageManager.addImage(w,B),this._afterImageUpdated(w)}updateImage(w,B){this.imageManager.updateImage(w,B)}getImage(w){return this.imageManager.getImage(w)}removeImage(w){if(!this.getImage(w))return this.fire(new a.j(new Error(`An image named "${w}" does not exist.`)));this.imageManager.removeImage(w),this._afterImageUpdated(w)}_afterImageUpdated(w){this._availableImages=this.imageManager.listImages(),this._changedImages[w]=!0,this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(w,B,Q={}){if(this._checkLoaded(),this.sourceCaches[w]!==void 0)throw new Error(`Source "${w}" already exists.`);if(!B.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(B).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(B.type)>=0&&this._validate(a.u.source,`sources.${w}`,B,null,Q))return;this.map&&this.map._collectResourceTiming&&(B.collectResourceTiming=!0);let ee=this.sourceCaches[w]=new mt(w,B,this.dispatcher);ee.style=this,ee.setEventedParent(this,()=>({isSourceLoaded:ee.loaded(),source:ee.serialize(),sourceId:w})),ee.onAdd(this.map),this._changed=!0}removeSource(w){if(this._checkLoaded(),this.sourceCaches[w]===void 0)throw new Error("There is no source with this ID");for(let Q in this._layers)if(this._layers[Q].source===w)return this.fire(new a.j(new Error(`Source "${w}" cannot be removed while layer "${Q}" is using it.`)));let B=this.sourceCaches[w];delete this.sourceCaches[w],delete this._updatedSources[w],B.fire(new a.k("data",{sourceDataType:"metadata",dataType:"source",sourceId:w})),B.setEventedParent(null),B.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(w,B){if(this._checkLoaded(),this.sourceCaches[w]===void 0)throw new Error(`There is no source with this ID=${w}`);let Q=this.sourceCaches[w].getSource();if(Q.type!=="geojson")throw new Error(`geojsonSource.type is ${Q.type}, which is !== 'geojson`);Q.setData(B),this._changed=!0}getSource(w){return this.sourceCaches[w]&&this.sourceCaches[w].getSource()}addLayer(w,B,Q={}){this._checkLoaded();let ee=w.id;if(this.getLayer(ee))return void this.fire(new a.j(new Error(`Layer "${ee}" already exists on this map.`)));let le;if(w.type==="custom"){if(da(this,a.aD(w)))return;le=a.aA(w)}else{if("source"in w&&typeof w.source=="object"&&(this.addSource(ee,w.source),w=a.aB(w),w=a.e(w,{source:ee})),this._validate(a.u.layer,`layers.${ee}`,w,{arrayIndex:-1},Q))return;le=a.aA(w),this._validateLayer(le),le.setEventedParent(this,{layer:{id:ee}})}let qe=B?this._order.indexOf(B):this._order.length;if(B&&qe===-1)this.fire(new a.j(new Error(`Cannot add layer "${ee}" before non-existing layer "${B}".`)));else{if(this._order.splice(qe,0,ee),this._layerOrderChanged=!0,this._layers[ee]=le,this._removedLayers[ee]&&le.source&&le.type!=="custom"){let Xe=this._removedLayers[ee];delete this._removedLayers[ee],Xe.type!==le.type?this._updatedSources[le.source]="clear":(this._updatedSources[le.source]="reload",this.sourceCaches[le.source].pause())}this._updateLayer(le),le.onAdd&&le.onAdd(this.map)}}moveLayer(w,B){if(this._checkLoaded(),this._changed=!0,!this._layers[w])return void this.fire(new a.j(new Error(`The layer '${w}' does not exist in the map's style and cannot be moved.`)));if(w===B)return;let Q=this._order.indexOf(w);this._order.splice(Q,1);let ee=B?this._order.indexOf(B):this._order.length;B&&ee===-1?this.fire(new a.j(new Error(`Cannot move layer "${w}" before non-existing layer "${B}".`))):(this._order.splice(ee,0,w),this._layerOrderChanged=!0)}removeLayer(w){this._checkLoaded();let B=this._layers[w];if(!B)return void this.fire(new a.j(new Error(`Cannot remove non-existing layer "${w}".`)));B.setEventedParent(null);let Q=this._order.indexOf(w);this._order.splice(Q,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[w]=B,delete this._layers[w],this._serializedLayers&&delete this._serializedLayers[w],delete this._updatedLayers[w],delete this._updatedPaintProps[w],B.onRemove&&B.onRemove(this.map)}getLayer(w){return this._layers[w]}getLayersOrder(){return[...this._order]}hasLayer(w){return w in this._layers}setLayerZoomRange(w,B,Q){this._checkLoaded();let ee=this.getLayer(w);ee?ee.minzoom===B&&ee.maxzoom===Q||(B!=null&&(ee.minzoom=B),Q!=null&&(ee.maxzoom=Q),this._updateLayer(ee)):this.fire(new a.j(new Error(`Cannot set the zoom range of non-existing layer "${w}".`)))}setFilter(w,B,Q={}){this._checkLoaded();let ee=this.getLayer(w);if(ee){if(!a.aE(ee.filter,B))return B==null?(ee.filter=void 0,void this._updateLayer(ee)):void(this._validate(a.u.filter,`layers.${ee.id}.filter`,B,null,Q)||(ee.filter=a.aB(B),this._updateLayer(ee)))}else this.fire(new a.j(new Error(`Cannot filter non-existing layer "${w}".`)))}getFilter(w){return a.aB(this.getLayer(w).filter)}setLayoutProperty(w,B,Q,ee={}){this._checkLoaded();let le=this.getLayer(w);le?a.aE(le.getLayoutProperty(B),Q)||(le.setLayoutProperty(B,Q,ee),this._updateLayer(le)):this.fire(new a.j(new Error(`Cannot style non-existing layer "${w}".`)))}getLayoutProperty(w,B){let Q=this.getLayer(w);if(Q)return Q.getLayoutProperty(B);this.fire(new a.j(new Error(`Cannot get style of non-existing layer "${w}".`)))}setPaintProperty(w,B,Q,ee={}){this._checkLoaded();let le=this.getLayer(w);le?a.aE(le.getPaintProperty(B),Q)||(le.setPaintProperty(B,Q,ee)&&this._updateLayer(le),this._changed=!0,this._updatedPaintProps[w]=!0,this._serializedLayers=null):this.fire(new a.j(new Error(`Cannot style non-existing layer "${w}".`)))}getPaintProperty(w,B){return this.getLayer(w).getPaintProperty(B)}setFeatureState(w,B){this._checkLoaded();let Q=w.source,ee=w.sourceLayer,le=this.sourceCaches[Q];if(le===void 0)return void this.fire(new a.j(new Error(`The source '${Q}' does not exist in the map's style.`)));let qe=le.getSource().type;qe==="geojson"&&ee?this.fire(new a.j(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):qe!=="vector"||ee?(w.id===void 0&&this.fire(new a.j(new Error("The feature id parameter must be provided."))),le.setFeatureState(ee,w.id,B)):this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}removeFeatureState(w,B){this._checkLoaded();let Q=w.source,ee=this.sourceCaches[Q];if(ee===void 0)return void this.fire(new a.j(new Error(`The source '${Q}' does not exist in the map's style.`)));let le=ee.getSource().type,qe=le==="vector"?w.sourceLayer:void 0;le!=="vector"||qe?B&&typeof w.id!="string"&&typeof w.id!="number"?this.fire(new a.j(new Error("A feature id is required to remove its specific state property."))):ee.removeFeatureState(qe,w.id,B):this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}getFeatureState(w){this._checkLoaded();let B=w.source,Q=w.sourceLayer,ee=this.sourceCaches[B];if(ee!==void 0)return ee.getSource().type!=="vector"||Q?(w.id===void 0&&this.fire(new a.j(new Error("The feature id parameter must be provided."))),ee.getFeatureState(Q,w.id)):void this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new a.j(new Error(`The source '${B}' does not exist in the map's style.`)))}getTransition(){return a.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;let w=a.aF(this.sourceCaches,le=>le.serialize()),B=this._serializeByIds(this._order,!0),Q=this.map.getTerrain()||void 0,ee=this.stylesheet;return a.aG({version:ee.version,name:ee.name,metadata:ee.metadata,light:ee.light,sky:ee.sky,center:ee.center,zoom:ee.zoom,bearing:ee.bearing,pitch:ee.pitch,sprite:ee.sprite,glyphs:ee.glyphs,transition:ee.transition,sources:w,layers:B,terrain:Q},le=>le!==void 0)}_updateLayer(w){this._updatedLayers[w.id]=!0,w.source&&!this._updatedSources[w.source]&&this.sourceCaches[w.source].getSource().type!=="raster"&&(this._updatedSources[w.source]="reload",this.sourceCaches[w.source].pause()),this._serializedLayers=null,this._changed=!0}_flattenAndSortRenderedFeatures(w){let B=qe=>this._layers[qe].type==="fill-extrusion",Q={},ee=[];for(let qe=this._order.length-1;qe>=0;qe--){let Xe=this._order[qe];if(B(Xe)){Q[Xe]=qe;for(let ot of w){let Tt=ot[Xe];if(Tt)for(let Yt of Tt)ee.push(Yt)}}}ee.sort((qe,Xe)=>Xe.intersectionZ-qe.intersectionZ);let le=[];for(let qe=this._order.length-1;qe>=0;qe--){let Xe=this._order[qe];if(B(Xe))for(let ot=ee.length-1;ot>=0;ot--){let Tt=ee[ot].feature;if(Q[Tt.layer.id]{let dr=Be.featureSortOrder;if(dr){let Sr=dr.indexOf(Ht.featureIndex);return dr.indexOf(tr.featureIndex)-Sr}return tr.featureIndex-Ht.featureIndex});for(let Ht of Ft)it.push(Ht)}}for(let Be in ve)ve[Be].forEach(et=>{let We=et.feature,it=Tt[Xe[Be].source].getFeatureState(We.layer["source-layer"],We.id);We.source=We.layer.source,We.layer["source-layer"]&&(We.sourceLayer=We.layer["source-layer"]),We.state=it});return ve}(this._layers,qe,this.sourceCaches,w,B,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(le)}querySourceFeatures(w,B){B&&B.filter&&this._validate(a.u.filter,"querySourceFeatures.filter",B.filter,null,B);let Q=this.sourceCaches[w];return Q?function(ee,le){let qe=ee.getRenderableIds().map(Tt=>ee.getTileByID(Tt)),Xe=[],ot={};for(let Tt=0;Ttxr.getTileByID(Ir)).sort((Ir,ve)=>ve.tileID.overscaledZ-Ir.tileID.overscaledZ||(Ir.tileID.isLessThan(ve.tileID)?-1:1))}let Kt=this.crossTileSymbolIndex.addLayer(Yt,ot[Yt.source],w.center.lng);qe=qe||Kt}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((le=le||this._layerOrderChanged||Q===0)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(u.now(),w.zoom))&&(this.pauseablePlacement=new Ba(w,this.map.terrain,this._order,le,B,Q,ee,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,ot),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(u.now()),Xe=!0),qe&&this.pauseablePlacement.placement.setStale()),Xe||qe)for(let Tt of this._order){let Yt=this._layers[Tt];Yt.type==="symbol"&&this.placement.updateLayerOpacities(Yt,ot[Yt.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(u.now())}_releaseSymbolFadeTiles(){for(let w in this.sourceCaches)this.sourceCaches[w].releaseSymbolFadeTiles()}getImages(w,B){return a._(this,void 0,void 0,function*(){let Q=yield this.imageManager.getImages(B.icons);this._updateTilesForChangedImages();let ee=this.sourceCaches[B.source];return ee&&ee.setDependencies(B.tileID.key,B.type,B.icons),Q})}getGlyphs(w,B){return a._(this,void 0,void 0,function*(){let Q=yield this.glyphManager.getGlyphs(B.stacks),ee=this.sourceCaches[B.source];return ee&&ee.setDependencies(B.tileID.key,B.type,[""]),Q})}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(w,B={}){this._checkLoaded(),w&&this._validate(a.u.glyphs,"glyphs",w,null,B)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=w,this.glyphManager.entries={},this.glyphManager.setURL(w))}addSprite(w,B,Q={},ee){this._checkLoaded();let le=[{id:w,url:B}],qe=[...C(this.stylesheet.sprite),...le];this._validate(a.u.sprite,"sprite",qe,null,Q)||(this.stylesheet.sprite=qe,this._loadSprite(le,!0,ee))}removeSprite(w){this._checkLoaded();let B=C(this.stylesheet.sprite);if(B.find(Q=>Q.id===w)){if(this._spritesImagesIds[w])for(let Q of this._spritesImagesIds[w])this.imageManager.removeImage(Q),this._changedImages[Q]=!0;B.splice(B.findIndex(Q=>Q.id===w),1),this.stylesheet.sprite=B.length>0?B:void 0,delete this._spritesImagesIds[w],this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}else this.fire(new a.j(new Error(`Sprite "${w}" doesn't exists on this map.`)))}getSprite(){return C(this.stylesheet.sprite)}setSprite(w,B={},Q){this._checkLoaded(),w&&this._validate(a.u.sprite,"sprite",w,null,B)||(this.stylesheet.sprite=w,w?this._loadSprite(w,!0,Q):(this._unloadSprite(),Q&&Q(null)))}}var vo=a.Y([{name:"a_pos",type:"Int16",components:2}]);let jn={prelude:Mt(`#ifdef GL_ES +{name:nonlatin}`,"text-max-width":8,"icon-image":"star_11","text-offset":[.4,0],"icon-size":.8,"text-anchor":"left",visibility:"visible"},paint:{"text-color":"#333","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["!has","iso_a2"]],layout:{"text-font":["Noto Sans Italic"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-3",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-2",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",2],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[2,11],[5,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-1",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",1],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[1,11],[4,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-continent",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",maxzoom:1,filter:["==","class","continent"],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":14,"text-max-width":6.25,"text-transform":"uppercase",visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}}],id:"qebnlkra6"}});var xHe=ye((Hxr,_He)=>{_He.exports={version:8,name:"orto",metadata:{},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI © ESRI"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}}]}});var wx=ye((jxr,SHe)=>{"use strict";var PWt=Z1(),IWt=yHe(),RWt=xHe(),DWt='\xA9 OpenStreetMap contributors',bHe="https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",wHe="https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json",i7="https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",FWt="https://basemaps.cartocdn.com/gl/positron-nolabels-gl-style/style.json",zWt="https://basemaps.cartocdn.com/gl/dark-matter-nolabels-gl-style/style.json",OWt="https://basemaps.cartocdn.com/gl/voyager-nolabels-gl-style/style.json",AHe={basic:i7,streets:i7,outdoors:i7,light:bHe,dark:wHe,satellite:RWt,"satellite-streets":IWt,"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:DWt,tiles:["https://tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":bHe,"carto-darkmatter":wHe,"carto-voyager":i7,"carto-positron-nolabels":FWt,"carto-darkmatter-nolabels":zWt,"carto-voyager-nolabels":OWt},THe=PWt(AHe);SHe.exports={styleValueDflt:"basic",stylesMap:AHe,styleValuesMap:THe,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",missingStyleErrorMsg:["No valid maplibre style found, please set `map.style` to one of:",THe.join(", "),"or use a tile service."].join(` +`),mapOnErrorMsg:"Map error."}});var jk=ye((Wxr,LHe)=>{"use strict";var MHe=Dr(),EHe=ka().defaultLine,qWt=Cc().attributes,BWt=ec(),NWt=pf().textposition,UWt=mc().overrideAll,VWt=vl().templatedArray,kHe=wx(),CHe=BWt({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});CHe.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var GWt=LHe.exports=UWt({_arrayAttrRegexps:[MHe.counterRegex("map",".layers",!0)],domain:qWt({name:"map"}),style:{valType:"any",values:kHe.styleValuesMap,dflt:kHe.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:VWt("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:EHe},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:EHe}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:CHe,textposition:MHe.extendFlat({},NWt,{arrayOk:!1})}})},"plot","from-root");GWt.uirevision={valType:"any",editType:"none"}});var n7=ye((Xxr,DHe)=>{"use strict";var{hovertemplateAttrs:HWt,texttemplateAttrs:jWt,templatefallbackAttrs:PHe}=Ll(),WWt=Cg(),Wk=j2(),E5=pf(),IHe=jk(),XWt=Gl(),ZWt=Tu(),nw=Ao().extendFlat,YWt=mc().overrideAll,KWt=jk(),RHe=Wk.line,k5=Wk.marker;DHe.exports=YWt({lon:Wk.lon,lat:Wk.lat,cluster:{enabled:{valType:"boolean"},maxzoom:nw({},KWt.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:nw({},k5.opacity,{dflt:1})},mode:nw({},E5.mode,{dflt:"markers"}),text:nw({},E5.text,{}),texttemplate:jWt({editType:"plot"},{keys:["lat","lon","text"]}),texttemplatefallback:PHe({editType:"plot"}),hovertext:nw({},E5.hovertext,{}),line:{color:RHe.color,width:RHe.width},connectgaps:E5.connectgaps,marker:nw({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:k5.opacity,size:k5.size,sizeref:k5.sizeref,sizemin:k5.sizemin,sizemode:k5.sizemode},ZWt("marker")),fill:Wk.fill,fillcolor:WWt(),textfont:IHe.layers.symbol.textfont,textposition:IHe.layers.symbol.textposition,below:{valType:"string"},selected:{marker:E5.selected.marker},unselected:{marker:E5.unselected.marker},hoverinfo:nw({},XWt.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:HWt(),hovertemplatefallback:PHe()},"calc","nested")});var wJ=ye((Zxr,FHe)=>{"use strict";var JWt=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];FHe.exports={isSupportedFont:function(e){return JWt.indexOf(e)!==-1}}});var qHe=ye((Yxr,OHe)=>{"use strict";var Xk=Dr(),TJ=Ru(),$Wt=$p(),QWt=R0(),eXt=D0(),tXt=Rg(),zHe=n7(),rXt=wJ().isSupportedFont;OHe.exports=function(t,r,n,i){function a(p,k){return Xk.coerce(t,r,zHe,p,k)}function o(p,k){return Xk.coerce2(t,r,zHe,p,k)}var s=iXt(t,r,a);if(!s){r.visible=!1;return}if(a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("mode"),a("below"),TJ.hasMarkers(r)){$Wt(t,r,n,i,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var l=r.marker;l.symbol!=="circle"&&(Xk.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),Xk.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}TJ.hasLines(r)&&(QWt(t,r,n,i,a,{noDash:!0}),a("connectgaps"));var u=o("cluster.maxzoom"),c=o("cluster.step"),f=o("cluster.color",r.marker&&r.marker.color||n),h=o("cluster.size"),d=o("cluster.opacity"),v=u!==!1||c!==!1||f!==!1||h!==!1||d!==!1,_=a("cluster.enabled",v);if(_||TJ.hasText(r)){var b=i.font.family;eXt(t,r,i,a,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:rXt(b)?b:"Open Sans Regular",weight:i.font.weight,style:i.font.style,size:i.font.size,color:i.font.color}})}a("fill"),r.fill!=="none"&&tXt(t,r,n,a),Xk.coerceSelectionMarkerOpacity(r,a)};function iXt(e,t,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return t._length=a,a}});var AJ=ye((Kxr,NHe)=>{"use strict";var BHe=ho();NHe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=BHe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=BHe.tickText(o,o.c2l(s[1]),!0).text,i}});var SJ=ye((Jxr,VHe)=>{"use strict";var UHe=Dr();VHe.exports=function(t,r){var n=t.split(" "),i=n[0],a=n[1],o=UHe.isArrayOrTypedArray(r)?UHe.mean(r):r,s=.5+o/100,l=1.5+o/100,u=["",""],c=[0,0];switch(i){case"top":u[0]="top",c[1]=-l;break;case"bottom":u[0]="bottom",c[1]=l;break}switch(a){case"left":u[1]="right",c[0]=-s;break;case"right":u[1]="left",c[0]=s;break}var f;return u[0]&&u[1]?f=u.join("-"):u[0]?f=u[0]:u[1]?f=u[1]:f="center",{anchor:f,offset:c}}});var ZHe=ye(($xr,XHe)=>{"use strict";var jHe=Eo(),ov=Dr(),nXt=fs().BADNUM,o7=tx(),GHe=tc(),aXt=So(),oXt=k3(),s7=Ru(),sXt=wJ().isSupportedFont,lXt=SJ(),uXt=ip().appendArrayPointValue,cXt=ru().NEWLINES,fXt=ru().BR_TAG_ALL;XHe.exports=function(t,r){var n=r[0].trace,i=n.visible===!0&&n._length!==0,a=n.fill!=="none",o=s7.hasLines(n),s=s7.hasMarkers(n),l=s7.hasText(n),u=s&&n.marker.symbol==="circle",c=s&&n.marker.symbol!=="circle",f=n.cluster&&n.cluster.enabled,h=a7("fill"),d=a7("line"),v=a7("circle"),_=a7("symbol"),b={fill:h,line:d,circle:v,symbol:_};if(!i)return b;var p;if((a||o)&&(p=o7.calcTraceToLineCoords(r)),a&&(h.geojson=o7.makePolygon(p),h.layout.visibility="visible",ov.extendFlat(h.paint,{"fill-color":n.fillcolor})),o&&(d.geojson=o7.makeLine(p),d.layout.visibility="visible",ov.extendFlat(d.paint,{"line-width":n.line.width,"line-color":n.line.color,"line-opacity":n.opacity})),u){var k=hXt(r);v.geojson=k.geojson,v.layout.visibility="visible",f&&(v.filter=["!",["has","point_count"]],b.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":EJ(n.cluster.color,n.cluster.step),"circle-radius":EJ(n.cluster.size,n.cluster.step),"circle-opacity":EJ(n.cluster.opacity,n.cluster.step)}},b.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":HHe(n),"text-size":12}}),ov.extendFlat(v.paint,{"circle-color":k.mcc,"circle-radius":k.mrc,"circle-opacity":k.mo})}if(u&&f&&(v.filter=["!",["has","point_count"]]),(c||l)&&(_.geojson=dXt(r,t),ov.extendFlat(_.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),c&&(ov.extendFlat(_.layout,{"icon-size":n.marker.size/10}),"angle"in n.marker&&n.marker.angle!=="auto"&&ov.extendFlat(_.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),_.layout["icon-allow-overlap"]=n.marker.allowoverlap,ov.extendFlat(_.paint,{"icon-opacity":n.opacity*n.marker.opacity,"icon-color":n.marker.color})),l)){var E=(n.marker||{}).size,S=lXt(n.textposition,E);ov.extendFlat(_.layout,{"text-size":n.textfont.size,"text-anchor":S.anchor,"text-offset":S.offset,"text-font":HHe(n)}),ov.extendFlat(_.paint,{"text-color":n.textfont.color,"text-opacity":n.opacity})}return b};function a7(e){return{type:e,geojson:o7.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function hXt(e){var t=e[0].trace,r=t.marker,n=t.selectedpoints,i=ov.isArrayOrTypedArray(r.color),a=ov.isArrayOrTypedArray(r.size),o=ov.isArrayOrTypedArray(r.opacity),s;function l(E){return t.opacity*E}function u(E){return E/2}var c;i&&(GHe.hasColorscale(t,"marker")?c=GHe.makeColorScaleFuncFromTrace(r):c=ov.identity);var f;a&&(f=oXt(t));var h;o&&(h=function(E){var S=jHe(E)?+ov.constrain(E,0,1):0;return l(S)});var d=[];for(s=0;s850?s+=" Black":i>750?s+=" Extra Bold":i>650?s+=" Bold":i>550?s+=" Semi Bold":i>450?s+=" Medium":i>350?s+=" Regular":i>250?s+=" Light":i>150?s+=" Extra Light":s+=" Thin"):a.slice(0,2).join(" ")==="Open Sans"?(s="Open Sans",i>750?s+=" Extrabold":i>650?s+=" Bold":i>550?s+=" Semibold":i>350?s+=" Regular":s+=" Light"):a.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(s="Klokantech Noto Sans",a[3]==="CJK"&&(s+=" CJK"),s+=i>500?" Bold":" Regular")),o&&(s+=" Italic"),s==="Open Sans Regular Italic"?s="Open Sans Italic":s==="Open Sans Regular Bold"?s="Open Sans Bold":s==="Open Sans Regular Bold Italic"?s="Open Sans Bold Italic":s==="Klokantech Noto Sans Regular Italic"&&(s="Klokantech Noto Sans Italic"),sXt(s)||(s=r);var l=s.split(", ");return l}});var $He=ye((Qxr,JHe)=>{"use strict";var vXt=Dr(),YHe=ZHe(),C5=wx().traceLayerPrefix,ng={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function KHe(e,t,r,n){this.type="scattermap",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:C5+t+"-fill",line:C5+t+"-line",circle:C5+t+"-circle",symbol:C5+t+"-symbol",cluster:C5+t+"-cluster",clusterCount:C5+t+"-cluster-count"},this.below=null}var Zk=KHe.prototype;Zk.addSource=function(e,t,r){var n={type:"geojson",data:t.geojson};r&&r.enabled&&vXt.extendFlat(n,{cluster:!0,clusterMaxZoom:r.maxzoom});var i=this.subplot.map.getSource(this.sourceIds[e]);i?i.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],n)};Zk.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};Zk.addLayer=function(e,t,r){var n={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(n.filter=t.filter);for(var i=this.layerIds[e],a,o=this.subplot.getMapLayers(),s=0;s=0;L--){var x=S[L];i.removeLayer(u.layerIds[x])}E||i.removeSource(u.sourceIds.circle)}function h(E){for(var S=ng.nonCluster,L=0;L=0;L--){var x=S[L];i.removeLayer(u.layerIds[x]),E||i.removeSource(u.sourceIds[x])}}function v(E){l?f(E):d(E)}function _(E){s?c(E):h(E)}function b(){for(var E=s?ng.cluster:ng.nonCluster,S=0;S=0;n--){var i=r[n];t.removeLayer(this.layerIds[i]),t.removeSource(this.sourceIds[i])}};JHe.exports=function(t,r){var n=r[0].trace,i=n.cluster&&n.cluster.enabled,a=n.visible!==!0,o=new KHe(t,n.uid,i,a),s=YHe(t.gd,r),l=o.below=t.belowLookup["trace-"+n.uid],u,c,f;if(i)for(o.addSource("circle",s.circle,n.cluster),u=0;u{"use strict";var pXt=vf(),kJ=Dr(),gXt=cT(),mXt=kJ.fillText,yXt=fs().BADNUM,_Xt=wx().traceLayerPrefix;function xXt(e,t,r){var n=e.cd,i=n[0].trace,a=e.xa,o=e.ya,s=e.subplot,l=[],u=_Xt+i.uid+"-circle",c=i.cluster&&i.cluster.enabled;if(c){var f=s.map.queryRenderedFeatures(null,{layers:[u]});l=f.map(function(M){return M.id})}var h=t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360),d=h*360,v=t-d;function _(M){var g=M.lonlat;if(g[0]===yXt||c&&l.indexOf(M.i+1)===-1)return 1/0;var P=kJ.modHalf(g[0],360),T=g[1],z=s.project([P,T]),O=z.x-a.c2p([v,T]),V=z.y-o.c2p([P,r]),G=Math.max(3,M.mrc||0);return Math.max(Math.sqrt(O*O+V*V)-G,1-3/G)}if(pXt.getClosest(n,_,e),e.index!==!1){var b=n[e.index],p=b.lonlat,k=[kJ.modHalf(p[0],360)+d,p[1]],E=a.c2p(k),S=o.c2p(k),L=b.mrc||1;e.x0=E-L,e.x1=E+L,e.y0=S-L,e.y1=S+L;var x={};x[i.subplot]={_subplot:s};var C=i._module.formatLabels(b,i,x);return e.lonLabel=C.lonLabel,e.latLabel=C.latLabel,e.color=gXt(i,b),e.extraText=QHe(i,b,n[0].t.labels),e.hovertemplate=i.hovertemplate,[e]}}function QHe(e,t,r){if(e.hovertemplate)return;var n=t.hi||e.hoverinfo,i=n.split("+"),a=i.indexOf("all")!==-1,o=i.indexOf("lon")!==-1,s=i.indexOf("lat")!==-1,l=t.lonlat,u=[];function c(f){return f+"\xB0"}return a||o&&s?u.push("("+c(l[1])+", "+c(l[0])+")"):o?u.push(r.lon+c(l[0])):s&&u.push(r.lat+c(l[1])),(a||i.indexOf("text")!==-1)&&mXt(t,e,u),u.join("
")}eje.exports={hoverPoints:xXt,getExtraText:QHe}});var rje=ye((tbr,tje)=>{"use strict";tje.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var nje=ye((rbr,ije)=>{"use strict";var bXt=Dr(),wXt=Ru(),TXt=fs().BADNUM;ije.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l;if(!wXt.hasMarkers(s))return[];if(r===!1)for(l=0;l{(function(e,t){typeof CJ=="object"&&typeof LJ!="undefined"?LJ.exports=t():(e=typeof globalThis!="undefined"?globalThis:e||self,e.maplibregl=t())})(CJ,function(){"use strict";var e={},t={};function r(i,a,o){if(t[i]=o,i==="index"){var s="var sharedModule = {}; ("+t.shared+")(sharedModule); ("+t.worker+")(sharedModule);",l={};return t.shared(l),t.index(e,l),typeof window!="undefined"&&e.setWorkerUrl(window.URL.createObjectURL(new Blob([s],{type:"text/javascript"}))),e}}r("shared",["exports"],function(i){"use strict";function a(R,A,F,W){return new(F||(F=Promise))(function(re,fe){function pe(ct){try{Ke(W.next(ct))}catch(Lt){fe(Lt)}}function ze(ct){try{Ke(W.throw(ct))}catch(Lt){fe(Lt)}}function Ke(ct){var Lt;ct.done?re(ct.value):(Lt=ct.value,Lt instanceof F?Lt:new F(function($t){$t(Lt)})).then(pe,ze)}Ke((W=W.apply(R,A||[])).next())})}function o(R){return R&&R.__esModule&&Object.prototype.hasOwnProperty.call(R,"default")?R.default:R}typeof SuppressedError=="function"&&SuppressedError;var s=l;function l(R,A){this.x=R,this.y=A}l.prototype={clone:function(){return new l(this.x,this.y)},add:function(R){return this.clone()._add(R)},sub:function(R){return this.clone()._sub(R)},multByPoint:function(R){return this.clone()._multByPoint(R)},divByPoint:function(R){return this.clone()._divByPoint(R)},mult:function(R){return this.clone()._mult(R)},div:function(R){return this.clone()._div(R)},rotate:function(R){return this.clone()._rotate(R)},rotateAround:function(R,A){return this.clone()._rotateAround(R,A)},matMult:function(R){return this.clone()._matMult(R)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(R){return this.x===R.x&&this.y===R.y},dist:function(R){return Math.sqrt(this.distSqr(R))},distSqr:function(R){var A=R.x-this.x,F=R.y-this.y;return A*A+F*F},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(R){return Math.atan2(this.y-R.y,this.x-R.x)},angleWith:function(R){return this.angleWithSep(R.x,R.y)},angleWithSep:function(R,A){return Math.atan2(this.x*A-this.y*R,this.x*R+this.y*A)},_matMult:function(R){var A=R[2]*this.x+R[3]*this.y;return this.x=R[0]*this.x+R[1]*this.y,this.y=A,this},_add:function(R){return this.x+=R.x,this.y+=R.y,this},_sub:function(R){return this.x-=R.x,this.y-=R.y,this},_mult:function(R){return this.x*=R,this.y*=R,this},_div:function(R){return this.x/=R,this.y/=R,this},_multByPoint:function(R){return this.x*=R.x,this.y*=R.y,this},_divByPoint:function(R){return this.x/=R.x,this.y/=R.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var R=this.y;return this.y=this.x,this.x=-R,this},_rotate:function(R){var A=Math.cos(R),F=Math.sin(R),W=F*this.x+A*this.y;return this.x=A*this.x-F*this.y,this.y=W,this},_rotateAround:function(R,A){var F=Math.cos(R),W=Math.sin(R),re=A.y+W*(this.x-A.x)+F*(this.y-A.y);return this.x=A.x+F*(this.x-A.x)-W*(this.y-A.y),this.y=re,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},l.convert=function(R){return R instanceof l?R:Array.isArray(R)?new l(R[0],R[1]):R};var u=o(s),c=f;function f(R,A,F,W){this.cx=3*R,this.bx=3*(F-R)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*A,this.by=3*(W-A)-this.cy,this.ay=1-this.cy-this.by,this.p1x=R,this.p1y=A,this.p2x=F,this.p2y=W}f.prototype={sampleCurveX:function(R){return((this.ax*R+this.bx)*R+this.cx)*R},sampleCurveY:function(R){return((this.ay*R+this.by)*R+this.cy)*R},sampleCurveDerivativeX:function(R){return(3*this.ax*R+2*this.bx)*R+this.cx},solveCurveX:function(R,A){if(A===void 0&&(A=1e-6),R<0)return 0;if(R>1)return 1;for(var F=R,W=0;W<8;W++){var re=this.sampleCurveX(F)-R;if(Math.abs(re)re?pe=F:ze=F,F=.5*(ze-pe)+pe;return F},solve:function(R,A){return this.sampleCurveY(this.solveCurveX(R,A))}};var h=o(c);let d,v;function _(){return d==null&&(d=typeof OffscreenCanvas!="undefined"&&new OffscreenCanvas(1,1).getContext("2d")&&typeof createImageBitmap=="function"),d}function b(){if(v==null&&(v=!1,_())){let A=new OffscreenCanvas(5,5).getContext("2d",{willReadFrequently:!0});if(A){for(let W=0;W<5*5;W++){let re=4*W;A.fillStyle=`rgb(${re},${re+1},${re+2})`,A.fillRect(W%5,Math.floor(W/5),1,1)}let F=A.getImageData(0,0,5,5).data;for(let W=0;W<5*5*4;W++)if(W%4!=3&&F[W]!==W){v=!0;break}}}return v||!1}function p(R,A,F,W){let re=new h(R,A,F,W);return fe=>re.solve(fe)}let k=p(.25,.1,.25,1);function E(R,A,F){return Math.min(F,Math.max(A,R))}function S(R,A,F){let W=F-A,re=((R-A)%W+W)%W+A;return re===A?F:re}function L(R,...A){for(let F of A)for(let W in F)R[W]=F[W];return R}let x=1;function C(R,A,F){let W={};for(let re in R)W[re]=A.call(this,R[re],re,R);return W}function M(R,A,F){let W={};for(let re in R)A.call(this,R[re],re,R)&&(W[re]=R[re]);return W}function g(R){return Array.isArray(R)?R.map(g):typeof R=="object"&&R?C(R,g):R}let P={};function T(R){P[R]||(typeof console!="undefined"&&console.warn(R),P[R]=!0)}function z(R,A,F){return(F.y-R.y)*(A.x-R.x)>(A.y-R.y)*(F.x-R.x)}function O(R){return typeof WorkerGlobalScope!="undefined"&&R!==void 0&&R instanceof WorkerGlobalScope}let V=null;function G(R){return typeof ImageBitmap!="undefined"&&R instanceof ImageBitmap}let Z="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function j(R,A,F,W,re){return a(this,void 0,void 0,function*(){if(typeof VideoFrame=="undefined")throw new Error("VideoFrame not supported");let fe=new VideoFrame(R,{timestamp:0});try{let pe=fe==null?void 0:fe.format;if(!pe||!pe.startsWith("BGR")&&!pe.startsWith("RGB"))throw new Error(`Unrecognized format ${pe}`);let ze=pe.startsWith("BGR"),Ke=new Uint8ClampedArray(W*re*4);if(yield fe.copyTo(Ke,function(ct,Lt,$t,fr,mr){let Pr=4*Math.max(-Lt,0),zr=(Math.max(0,$t)-$t)*fr*4+Pr,ui=4*fr,yi=Math.max(0,Lt),vn=Math.max(0,$t);return{rect:{x:yi,y:vn,width:Math.min(ct.width,Lt+fr)-yi,height:Math.min(ct.height,$t+mr)-vn},layout:[{offset:zr,stride:ui}]}}(R,A,F,W,re)),ze)for(let ct=0;ctO(self)?self.worker&&self.worker.referrer:(window.location.protocol==="blob:"?window.parent:window).location.href,Se=function(R,A){if(/:\/\//.test(R.url)&&!/^https?:|^file:/.test(R.url)){let W=Ee(R.url);if(W)return W(R,A);if(O(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:R,targetMapId:Ce},A)}if(!(/^file:/.test(F=R.url)||/^file:/.test(ie())&&!/^\w+:/.test(F))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(W,re){return a(this,void 0,void 0,function*(){let fe=new Request(W.url,{method:W.method||"GET",body:W.body,credentials:W.credentials,headers:W.headers,cache:W.cache,referrer:ie(),signal:re.signal});W.type!=="json"||fe.headers.has("Accept")||fe.headers.set("Accept","application/json");let pe=yield fetch(fe);if(!pe.ok){let ct=yield pe.blob();throw new me(pe.status,pe.statusText,W.url,ct)}let ze;ze=W.type==="arrayBuffer"||W.type==="image"?pe.arrayBuffer():W.type==="json"?pe.json():pe.text();let Ke=yield ze;if(re.signal.aborted)throw oe();return{data:Ke,cacheControl:pe.headers.get("Cache-Control"),expires:pe.headers.get("Expires")}})}(R,A);if(O(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:R,mustQueue:!0,targetMapId:Ce},A)}var F;return function(W,re){return new Promise((fe,pe)=>{var ze;let Ke=new XMLHttpRequest;Ke.open(W.method||"GET",W.url,!0),W.type!=="arrayBuffer"&&W.type!=="image"||(Ke.responseType="arraybuffer");for(let ct in W.headers)Ke.setRequestHeader(ct,W.headers[ct]);W.type==="json"&&(Ke.responseType="text",!((ze=W.headers)===null||ze===void 0)&&ze.Accept||Ke.setRequestHeader("Accept","application/json")),Ke.withCredentials=W.credentials==="include",Ke.onerror=()=>{pe(new Error(Ke.statusText))},Ke.onload=()=>{if(!re.signal.aborted)if((Ke.status>=200&&Ke.status<300||Ke.status===0)&&Ke.response!==null){let ct=Ke.response;if(W.type==="json")try{ct=JSON.parse(Ke.response)}catch(Lt){return void pe(Lt)}fe({data:ct,cacheControl:Ke.getResponseHeader("Cache-Control"),expires:Ke.getResponseHeader("Expires")})}else{let ct=new Blob([Ke.response],{type:Ke.getResponseHeader("Content-Type")});pe(new me(Ke.status,Ke.statusText,W.url,ct))}},re.signal.addEventListener("abort",()=>{Ke.abort(),pe(oe())}),Ke.send(W.body)})}(R,A)};function Le(R){if(!R||R.indexOf("://")<=0||R.indexOf("data:image/")===0||R.indexOf("blob:")===0)return!0;let A=new URL(R),F=window.location;return A.protocol===F.protocol&&A.host===F.host}function Ae(R,A,F){F[R]&&F[R].indexOf(A)!==-1||(F[R]=F[R]||[],F[R].push(A))}function Fe(R,A,F){if(F&&F[R]){let W=F[R].indexOf(A);W!==-1&&F[R].splice(W,1)}}class Pe{constructor(A,F={}){L(this,F),this.type=A}}class ge extends Pe{constructor(A,F={}){super("error",L({error:A},F))}}class Re{on(A,F){return this._listeners=this._listeners||{},Ae(A,F,this._listeners),this}off(A,F){return Fe(A,F,this._listeners),Fe(A,F,this._oneTimeListeners),this}once(A,F){return F?(this._oneTimeListeners=this._oneTimeListeners||{},Ae(A,F,this._oneTimeListeners),this):new Promise(W=>this.once(A,W))}fire(A,F){typeof A=="string"&&(A=new Pe(A,F||{}));let W=A.type;if(this.listens(W)){A.target=this;let re=this._listeners&&this._listeners[W]?this._listeners[W].slice():[];for(let ze of re)ze.call(this,A);let fe=this._oneTimeListeners&&this._oneTimeListeners[W]?this._oneTimeListeners[W].slice():[];for(let ze of fe)Fe(W,ze,this._oneTimeListeners),ze.call(this,A);let pe=this._eventedParent;pe&&(L(A,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),pe.fire(A))}else A instanceof ge&&console.error(A.error);return this}listens(A){return this._listeners&&this._listeners[A]&&this._listeners[A].length>0||this._oneTimeListeners&&this._oneTimeListeners[A]&&this._oneTimeListeners[A].length>0||this._eventedParent&&this._eventedParent.listens(A)}setEventedParent(A,F){return this._eventedParent=A,this._eventedParentData=F,this}}var ce={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"enum",default:"mercator",values:{mercator:{},globe:{}}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};let Ze=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function ut(R,A){let F={};for(let W in R)W!=="ref"&&(F[W]=R[W]);return Ze.forEach(W=>{W in A&&(F[W]=A[W])}),F}function pt(R,A){if(Array.isArray(R)){if(!Array.isArray(A)||R.length!==A.length)return!1;for(let F=0;F`:R.itemType.kind==="value"?"array":`array<${A}>`}return R.kind}let je=[Vt,_t,It,mt,er,ti,lr,Ge(Tr),Br,Vr,dt];function tt(R,A){if(A.kind==="error")return null;if(R.kind==="array"){if(A.kind==="array"&&(A.N===0&&A.itemType.kind==="value"||!tt(R.itemType,A.itemType))&&(typeof R.N!="number"||R.N===A.N))return null}else{if(R.kind===A.kind)return null;if(R.kind==="value"){for(let F of je)if(!tt(F,A))return null}}return`Expected ${Je(R)} but found ${Je(A)} instead.`}function xt(R,A){return A.some(F=>F.kind===R.kind)}function Ie(R,A){return A.some(F=>F==="null"?R===null:F==="array"?Array.isArray(R):F==="object"?R&&!Array.isArray(R)&&typeof R=="object":F===typeof R)}function xe(R,A){return R.kind==="array"&&A.kind==="array"?R.itemType.kind===A.itemType.kind&&typeof R.N=="number":R.kind===A.kind}let ke=.96422,vt=.82521,ir=4/29,ar=6/29,vr=3*ar*ar,ii=ar*ar*ar,pi=Math.PI/180,$r=180/Math.PI;function di(R){return(R%=360)<0&&(R+=360),R}function ji([R,A,F,W]){let re,fe,pe=wi((.2225045*(R=In(R))+.7168786*(A=In(A))+.0606169*(F=In(F)))/1);R===A&&A===F?re=fe=pe:(re=wi((.4360747*R+.3850649*A+.1430804*F)/ke),fe=wi((.0139322*R+.0971045*A+.7141733*F)/vt));let ze=116*pe-16;return[ze<0?0:ze,500*(re-pe),200*(pe-fe),W]}function In(R){return R<=.04045?R/12.92:Math.pow((R+.055)/1.055,2.4)}function wi(R){return R>ii?Math.pow(R,1/3):R/vr+ir}function On([R,A,F,W]){let re=(R+16)/116,fe=isNaN(A)?re:re+A/500,pe=isNaN(F)?re:re-F/200;return re=1*Fn(re),fe=ke*Fn(fe),pe=vt*Fn(pe),[qn(3.1338561*fe-1.6168667*re-.4906146*pe),qn(-.9787684*fe+1.9161415*re+.033454*pe),qn(.0719453*fe-.2289914*re+1.4052427*pe),W]}function qn(R){return(R=R<=.00304?12.92*R:1.055*Math.pow(R,1/2.4)-.055)<0?0:R>1?1:R}function Fn(R){return R>ar?R*R*R:vr*(R-ir)}function ra(R){return parseInt(R.padEnd(2,R),16)/255}function la(R,A){return Ut(A?R/100:R,0,1)}function Ut(R,A,F){return Math.min(Math.max(A,R),F)}function wt(R){return!R.some(Number.isNaN)}let rr={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};class nr{constructor(A,F,W,re=1,fe=!0){this.r=A,this.g=F,this.b=W,this.a=re,fe||(this.r*=re,this.g*=re,this.b*=re,re||this.overwriteGetter("rgb",[A,F,W,re]))}static parse(A){if(A instanceof nr)return A;if(typeof A!="string")return;let F=function(W){if((W=W.toLowerCase().trim())==="transparent")return[0,0,0,0];let re=rr[W];if(re){let[pe,ze,Ke]=re;return[pe/255,ze/255,Ke/255,1]}if(W.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(W)){let pe=W.length<6?1:2,ze=1;return[ra(W.slice(ze,ze+=pe)),ra(W.slice(ze,ze+=pe)),ra(W.slice(ze,ze+=pe)),ra(W.slice(ze,ze+pe)||"ff")]}if(W.startsWith("rgb")){let pe=W.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(pe){let[ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn]=pe,zi=[Lt||" ",mr||" ",ui].join("");if(zi===" "||zi===" /"||zi===",,"||zi===",,,"){let un=[ct,fr,zr].join(""),Tn=un==="%%%"?100:un===""?255:0;if(Tn){let pa=[Ut(+Ke/Tn,0,1),Ut(+$t/Tn,0,1),Ut(+Pr/Tn,0,1),yi?la(+yi,vn):1];if(wt(pa))return pa}}return}}let fe=W.match(/^hsla?\(\s*([\de.+-]+)(?:deg)?(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(fe){let[pe,ze,Ke,ct,Lt,$t,fr,mr,Pr]=fe,zr=[Ke||" ",Lt||" ",fr].join("");if(zr===" "||zr===" /"||zr===",,"||zr===",,,"){let ui=[+ze,Ut(+ct,0,100),Ut(+$t,0,100),mr?la(+mr,Pr):1];if(wt(ui))return function([yi,vn,zi,un]){function Tn(pa){let ro=(pa+yi/30)%12,Vo=vn*Math.min(zi,1-zi);return zi-Vo*Math.max(-1,Math.min(ro-3,9-ro,1))}return yi=di(yi),vn/=100,zi/=100,[Tn(0),Tn(8),Tn(4),un]}(ui)}}}(A);return F?new nr(...F,!1):void 0}get rgb(){let{r:A,g:F,b:W,a:re}=this,fe=re||1/0;return this.overwriteGetter("rgb",[A/fe,F/fe,W/fe,re])}get hcl(){return this.overwriteGetter("hcl",function(A){let[F,W,re,fe]=ji(A),pe=Math.sqrt(W*W+re*re);return[Math.round(1e4*pe)?di(Math.atan2(re,W)*$r):NaN,pe,F,fe]}(this.rgb))}get lab(){return this.overwriteGetter("lab",ji(this.rgb))}overwriteGetter(A,F){return Object.defineProperty(this,A,{value:F}),F}toString(){let[A,F,W,re]=this.rgb;return`rgba(${[A,F,W].map(fe=>Math.round(255*fe)).join(",")},${re})`}}nr.black=new nr(0,0,0,1),nr.white=new nr(1,1,1,1),nr.transparent=new nr(0,0,0,0),nr.red=new nr(1,0,0,1);class Er{constructor(A,F,W){this.sensitivity=A?F?"variant":"case":F?"accent":"base",this.locale=W,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(A,F){return this.collator.compare(A,F)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Xr{constructor(A,F,W,re,fe){this.text=A,this.image=F,this.scale=W,this.fontStack=re,this.textColor=fe}}class ri{constructor(A){this.sections=A}static fromString(A){return new ri([new Xr(A,null,null,null,null)])}isEmpty(){return this.sections.length===0||!this.sections.some(A=>A.text.length!==0||A.image&&A.image.name.length!==0)}static factory(A){return A instanceof ri?A:ri.fromString(A)}toString(){return this.sections.length===0?"":this.sections.map(A=>A.text).join("")}}class Qr{constructor(A){this.values=A.slice()}static parse(A){if(A instanceof Qr)return A;if(typeof A=="number")return new Qr([A,A,A,A]);if(Array.isArray(A)&&!(A.length<1||A.length>4)){for(let F of A)if(typeof F!="number")return;switch(A.length){case 1:A=[A[0],A[0],A[0],A[0]];break;case 2:A=[A[0],A[1],A[0],A[1]];break;case 3:A=[A[0],A[1],A[2],A[1]]}return new Qr(A)}}toString(){return JSON.stringify(this.values)}}let Oi=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]);class $i{constructor(A){this.values=A.slice()}static parse(A){if(A instanceof $i)return A;if(Array.isArray(A)&&!(A.length<1)&&A.length%2==0){for(let F=0;F=0&&R<=255&&typeof A=="number"&&A>=0&&A<=255&&typeof F=="number"&&F>=0&&F<=255?W===void 0||typeof W=="number"&&W>=0&&W<=1?null:`Invalid rgba value [${[R,A,F,W].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof W=="number"?[R,A,F,W]:[R,A,F]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function yn(R){if(R===null||typeof R=="string"||typeof R=="boolean"||typeof R=="number"||R instanceof nr||R instanceof Er||R instanceof ri||R instanceof Qr||R instanceof $i||R instanceof tn)return!0;if(Array.isArray(R)){for(let A of R)if(!yn(A))return!1;return!0}if(typeof R=="object"){for(let A in R)if(!yn(R[A]))return!1;return!0}return!1}function Sn(R){if(R===null)return Vt;if(typeof R=="string")return It;if(typeof R=="boolean")return mt;if(typeof R=="number")return _t;if(R instanceof nr)return er;if(R instanceof Er)return Lr;if(R instanceof ri)return ti;if(R instanceof Qr)return Br;if(R instanceof $i)return dt;if(R instanceof tn)return Vr;if(Array.isArray(R)){let A=R.length,F;for(let W of R){let re=Sn(W);if(F){if(F===re)continue;F=Tr;break}F=re}return Ge(F||Tr,A)}return lr}function Ba(R){let A=typeof R;return R===null?"":A==="string"||A==="number"||A==="boolean"?String(R):R instanceof nr||R instanceof ri||R instanceof Qr||R instanceof $i||R instanceof tn?R.toString():JSON.stringify(R)}class ua{constructor(A,F){this.type=A,this.value=F}static parse(A,F){if(A.length!==2)return F.error(`'literal' expression requires exactly one argument, but found ${A.length-1} instead.`);if(!yn(A[1]))return F.error("invalid value");let W=A[1],re=Sn(W),fe=F.expectedType;return re.kind!=="array"||re.N!==0||!fe||fe.kind!=="array"||typeof fe.N=="number"&&fe.N!==0||(re=fe),new ua(re,W)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class ma{constructor(A){this.name="ExpressionEvaluationError",this.message=A}toJSON(){return this.message}}let Wa={string:It,number:_t,boolean:mt,object:lr};class Fa{constructor(A,F){this.type=A,this.args=F}static parse(A,F){if(A.length<2)return F.error("Expected at least one argument.");let W,re=1,fe=A[0];if(fe==="array"){let ze,Ke;if(A.length>2){let ct=A[1];if(typeof ct!="string"||!(ct in Wa)||ct==="object")return F.error('The item type argument of "array" must be one of string, number, boolean',1);ze=Wa[ct],re++}else ze=Tr;if(A.length>3){if(A[2]!==null&&(typeof A[2]!="number"||A[2]<0||A[2]!==Math.floor(A[2])))return F.error('The length argument to "array" must be a positive integer literal',2);Ke=A[2],re++}W=Ge(ze,Ke)}else{if(!Wa[fe])throw new Error(`Types doesn't contain name = ${fe}`);W=Wa[fe]}let pe=[];for(;reA.outputDefined())}}let Wo={"to-boolean":mt,"to-color":er,"to-number":_t,"to-string":It};class da{constructor(A,F){this.type=A,this.args=F}static parse(A,F){if(A.length<2)return F.error("Expected at least one argument.");let W=A[0];if(!Wo[W])throw new Error(`Can't parse ${W} as it is not part of the known types`);if((W==="to-boolean"||W==="to-string")&&A.length!==2)return F.error("Expected one argument.");let re=Wo[W],fe=[];for(let pe=1;pe4?`Invalid rbga value ${JSON.stringify(F)}: expected an array containing either three or four numeric values.`:fn(F[0],F[1],F[2],F[3]),!W))return new nr(F[0]/255,F[1]/255,F[2]/255,F[3])}throw new ma(W||`Could not parse color from value '${typeof F=="string"?F:JSON.stringify(F)}'`)}case"padding":{let F;for(let W of this.args){F=W.evaluate(A);let re=Qr.parse(F);if(re)return re}throw new ma(`Could not parse padding from value '${typeof F=="string"?F:JSON.stringify(F)}'`)}case"variableAnchorOffsetCollection":{let F;for(let W of this.args){F=W.evaluate(A);let re=$i.parse(F);if(re)return re}throw new ma(`Could not parse variableAnchorOffsetCollection from value '${typeof F=="string"?F:JSON.stringify(F)}'`)}case"number":{let F=null;for(let W of this.args){if(F=W.evaluate(A),F===null)return 0;let re=Number(F);if(!isNaN(re))return re}throw new ma(`Could not convert ${JSON.stringify(F)} to number.`)}case"formatted":return ri.fromString(Ba(this.args[0].evaluate(A)));case"resolvedImage":return tn.fromString(Ba(this.args[0].evaluate(A)));default:return Ba(this.args[0].evaluate(A))}}eachChild(A){this.args.forEach(A)}outputDefined(){return this.args.every(A=>A.outputDefined())}}let Wn=["Unknown","Point","LineString","Polygon"];class Ha{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?Wn[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(A){let F=this._parseColorCache[A];return F||(F=this._parseColorCache[A]=nr.parse(A)),F}}class vo{constructor(A,F,W=[],re,fe=new Qt,pe=[]){this.registry=A,this.path=W,this.key=W.map(ze=>`[${ze}]`).join(""),this.scope=fe,this.errors=pe,this.expectedType=re,this._isConstant=F}parse(A,F,W,re,fe={}){return F?this.concat(F,W,re)._parse(A,fe):this._parse(A,fe)}_parse(A,F){function W(re,fe,pe){return pe==="assert"?new Fa(fe,[re]):pe==="coerce"?new da(fe,[re]):re}if(A!==null&&typeof A!="string"&&typeof A!="boolean"&&typeof A!="number"||(A=["literal",A]),Array.isArray(A)){if(A.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');let re=A[0];if(typeof re!="string")return this.error(`Expression name must be a string, but found ${typeof re} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;let fe=this.registry[re];if(fe){let pe=fe.parse(A,this);if(!pe)return null;if(this.expectedType){let ze=this.expectedType,Ke=pe.type;if(ze.kind!=="string"&&ze.kind!=="number"&&ze.kind!=="boolean"&&ze.kind!=="object"&&ze.kind!=="array"||Ke.kind!=="value")if(ze.kind!=="color"&&ze.kind!=="formatted"&&ze.kind!=="resolvedImage"||Ke.kind!=="value"&&Ke.kind!=="string")if(ze.kind!=="padding"||Ke.kind!=="value"&&Ke.kind!=="number"&&Ke.kind!=="array")if(ze.kind!=="variableAnchorOffsetCollection"||Ke.kind!=="value"&&Ke.kind!=="array"){if(this.checkSubtype(ze,Ke))return null}else pe=W(pe,ze,F.typeAnnotation||"coerce");else pe=W(pe,ze,F.typeAnnotation||"coerce");else pe=W(pe,ze,F.typeAnnotation||"coerce");else pe=W(pe,ze,F.typeAnnotation||"assert")}if(!(pe instanceof ua)&&pe.type.kind!=="resolvedImage"&&this._isConstant(pe)){let ze=new Ha;try{pe=new ua(pe.type,pe.evaluate(ze))}catch(Ke){return this.error(Ke.message),null}}return pe}return this.error(`Unknown expression "${re}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(A===void 0?"'undefined' value invalid. Use null instead.":typeof A=="object"?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof A} instead.`)}concat(A,F,W){let re=typeof A=="number"?this.path.concat(A):this.path,fe=W?this.scope.concat(W):this.scope;return new vo(this.registry,this._isConstant,re,F||null,fe,this.errors)}error(A,...F){let W=`${this.key}${F.map(re=>`[${re}]`).join("")}`;this.errors.push(new St(W,A))}checkSubtype(A,F){let W=tt(A,F);return W&&this.error(W),W}}class jn{constructor(A,F){this.type=F.type,this.bindings=[].concat(A),this.result=F}evaluate(A){return this.result.evaluate(A)}eachChild(A){for(let F of this.bindings)A(F[1]);A(this.result)}static parse(A,F){if(A.length<4)return F.error(`Expected at least 3 arguments, but found ${A.length-1} instead.`);let W=[];for(let fe=1;fe=W.length)throw new ma(`Array index out of bounds: ${F} > ${W.length-1}.`);if(F!==Math.floor(F))throw new ma(`Array index must be an integer, but found ${F} instead.`);return W[F]}eachChild(A){A(this.index),A(this.input)}outputDefined(){return!1}}class Jr{constructor(A,F){this.type=mt,this.needle=A,this.haystack=F}static parse(A,F){if(A.length!==3)return F.error(`Expected 2 arguments, but found ${A.length-1} instead.`);let W=F.parse(A[1],1,Tr),re=F.parse(A[2],2,Tr);return W&&re?xt(W.type,[mt,It,_t,Vt,Tr])?new Jr(W,re):F.error(`Expected first argument to be of type boolean, string, number or null, but found ${Je(W.type)} instead`):null}evaluate(A){let F=this.needle.evaluate(A),W=this.haystack.evaluate(A);if(!W)return!1;if(!Ie(F,["boolean","string","number","null"]))throw new ma(`Expected first argument to be of type boolean, string, number or null, but found ${Je(Sn(F))} instead.`);if(!Ie(W,["string","array"]))throw new ma(`Expected second argument to be of type array or string, but found ${Je(Sn(W))} instead.`);return W.indexOf(F)>=0}eachChild(A){A(this.needle),A(this.haystack)}outputDefined(){return!0}}class vi{constructor(A,F,W){this.type=_t,this.needle=A,this.haystack=F,this.fromIndex=W}static parse(A,F){if(A.length<=2||A.length>=5)return F.error(`Expected 3 or 4 arguments, but found ${A.length-1} instead.`);let W=F.parse(A[1],1,Tr),re=F.parse(A[2],2,Tr);if(!W||!re)return null;if(!xt(W.type,[mt,It,_t,Vt,Tr]))return F.error(`Expected first argument to be of type boolean, string, number or null, but found ${Je(W.type)} instead`);if(A.length===4){let fe=F.parse(A[3],3,_t);return fe?new vi(W,re,fe):null}return new vi(W,re)}evaluate(A){let F=this.needle.evaluate(A),W=this.haystack.evaluate(A);if(!Ie(F,["boolean","string","number","null"]))throw new ma(`Expected first argument to be of type boolean, string, number or null, but found ${Je(Sn(F))} instead.`);let re;if(this.fromIndex&&(re=this.fromIndex.evaluate(A)),Ie(W,["string"])){let fe=W.indexOf(F,re);return fe===-1?-1:[...W.slice(0,fe)].length}if(Ie(W,["array"]))return W.indexOf(F,re);throw new ma(`Expected second argument to be of type array or string, but found ${Je(Sn(W))} instead.`)}eachChild(A){A(this.needle),A(this.haystack),this.fromIndex&&A(this.fromIndex)}outputDefined(){return!1}}class hn{constructor(A,F,W,re,fe,pe){this.inputType=A,this.type=F,this.input=W,this.cases=re,this.outputs=fe,this.otherwise=pe}static parse(A,F){if(A.length<5)return F.error(`Expected at least 4 arguments, but found only ${A.length-1}.`);if(A.length%2!=1)return F.error("Expected an even number of arguments.");let W,re;F.expectedType&&F.expectedType.kind!=="value"&&(re=F.expectedType);let fe={},pe=[];for(let ct=2;ctNumber.MAX_SAFE_INTEGER)return fr.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof Pr=="number"&&Math.floor(Pr)!==Pr)return fr.error("Numeric branch labels must be integer values.");if(W){if(fr.checkSubtype(W,Sn(Pr)))return null}else W=Sn(Pr);if(fe[String(Pr)]!==void 0)return fr.error("Branch labels must be unique.");fe[String(Pr)]=pe.length}let mr=F.parse($t,ct,re);if(!mr)return null;re=re||mr.type,pe.push(mr)}let ze=F.parse(A[1],1,Tr);if(!ze)return null;let Ke=F.parse(A[A.length-1],A.length-1,re);return Ke?ze.type.kind!=="value"&&F.concat(1).checkSubtype(W,ze.type)?null:new hn(W,re,ze,fe,pe,Ke):null}evaluate(A){let F=this.input.evaluate(A);return(Sn(F)===this.inputType&&this.outputs[this.cases[F]]||this.otherwise).evaluate(A)}eachChild(A){A(this.input),this.outputs.forEach(A),A(this.otherwise)}outputDefined(){return this.outputs.every(A=>A.outputDefined())&&this.otherwise.outputDefined()}}class An{constructor(A,F,W){this.type=A,this.branches=F,this.otherwise=W}static parse(A,F){if(A.length<4)return F.error(`Expected at least 3 arguments, but found only ${A.length-1}.`);if(A.length%2!=0)return F.error("Expected an odd number of arguments.");let W;F.expectedType&&F.expectedType.kind!=="value"&&(W=F.expectedType);let re=[];for(let pe=1;peF.outputDefined())&&this.otherwise.outputDefined()}}class Mn{constructor(A,F,W,re){this.type=A,this.input=F,this.beginIndex=W,this.endIndex=re}static parse(A,F){if(A.length<=2||A.length>=5)return F.error(`Expected 3 or 4 arguments, but found ${A.length-1} instead.`);let W=F.parse(A[1],1,Tr),re=F.parse(A[2],2,_t);if(!W||!re)return null;if(!xt(W.type,[Ge(Tr),It,Tr]))return F.error(`Expected first argument to be of type array or string, but found ${Je(W.type)} instead`);if(A.length===4){let fe=F.parse(A[3],3,_t);return fe?new Mn(W.type,W,re,fe):null}return new Mn(W.type,W,re)}evaluate(A){let F=this.input.evaluate(A),W=this.beginIndex.evaluate(A),re;if(this.endIndex&&(re=this.endIndex.evaluate(A)),Ie(F,["string"]))return[...F].slice(W,re).join("");if(Ie(F,["array"]))return F.slice(W,re);throw new ma(`Expected first argument to be of type array or string, but found ${Je(Sn(F))} instead.`)}eachChild(A){A(this.input),A(this.beginIndex),this.endIndex&&A(this.endIndex)}outputDefined(){return!1}}function Li(R,A){let F=R.length-1,W,re,fe=0,pe=F,ze=0;for(;fe<=pe;)if(ze=Math.floor((fe+pe)/2),W=R[ze],re=R[ze+1],W<=A){if(ze===F||AA))throw new ma("Input is not a number.");pe=ze-1}return 0}class _n{constructor(A,F,W){this.type=A,this.input=F,this.labels=[],this.outputs=[];for(let[re,fe]of W)this.labels.push(re),this.outputs.push(fe)}static parse(A,F){if(A.length-1<4)return F.error(`Expected at least 4 arguments, but found only ${A.length-1}.`);if((A.length-1)%2!=0)return F.error("Expected an even number of arguments.");let W=F.parse(A[1],1,_t);if(!W)return null;let re=[],fe=null;F.expectedType&&F.expectedType.kind!=="value"&&(fe=F.expectedType);for(let pe=1;pe=ze)return F.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',ct);let $t=F.parse(Ke,Lt,fe);if(!$t)return null;fe=fe||$t.type,re.push([ze,$t])}return new _n(fe,W,re)}evaluate(A){let F=this.labels,W=this.outputs;if(F.length===1)return W[0].evaluate(A);let re=this.input.evaluate(A);if(re<=F[0])return W[0].evaluate(A);let fe=F.length;return re>=F[fe-1]?W[fe-1].evaluate(A):W[Li(F,re)].evaluate(A)}eachChild(A){A(this.input);for(let F of this.outputs)A(F)}outputDefined(){return this.outputs.every(A=>A.outputDefined())}}function ya(R){return R&&R.__esModule&&Object.prototype.hasOwnProperty.call(R,"default")?R.default:R}var Jn=Ma;function Ma(R,A,F,W){this.cx=3*R,this.bx=3*(F-R)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*A,this.by=3*(W-A)-this.cy,this.ay=1-this.cy-this.by,this.p1x=R,this.p1y=A,this.p2x=F,this.p2y=W}Ma.prototype={sampleCurveX:function(R){return((this.ax*R+this.bx)*R+this.cx)*R},sampleCurveY:function(R){return((this.ay*R+this.by)*R+this.cy)*R},sampleCurveDerivativeX:function(R){return(3*this.ax*R+2*this.bx)*R+this.cx},solveCurveX:function(R,A){if(A===void 0&&(A=1e-6),R<0)return 0;if(R>1)return 1;for(var F=R,W=0;W<8;W++){var re=this.sampleCurveX(F)-R;if(Math.abs(re)re?pe=F:ze=F,F=.5*(ze-pe)+pe;return F},solve:function(R,A){return this.sampleCurveY(this.solveCurveX(R,A))}};var _o=ya(Jn);function No(R,A,F){return R+F*(A-R)}function po(R,A,F){return R.map((W,re)=>No(W,A[re],F))}let Lo={number:No,color:function(R,A,F,W="rgb"){switch(W){case"rgb":{let[re,fe,pe,ze]=po(R.rgb,A.rgb,F);return new nr(re,fe,pe,ze,!1)}case"hcl":{let[re,fe,pe,ze]=R.hcl,[Ke,ct,Lt,$t]=A.hcl,fr,mr;if(isNaN(re)||isNaN(Ke))isNaN(re)?isNaN(Ke)?fr=NaN:(fr=Ke,pe!==1&&pe!==0||(mr=ct)):(fr=re,Lt!==1&&Lt!==0||(mr=fe));else{let vn=Ke-re;Ke>re&&vn>180?vn-=360:Ke180&&(vn+=360),fr=re+F*vn}let[Pr,zr,ui,yi]=function([vn,zi,un,Tn]){return vn=isNaN(vn)?0:vn*pi,On([un,Math.cos(vn)*zi,Math.sin(vn)*zi,Tn])}([fr,mr!=null?mr:No(fe,ct,F),No(pe,Lt,F),No(ze,$t,F)]);return new nr(Pr,zr,ui,yi,!1)}case"lab":{let[re,fe,pe,ze]=On(po(R.lab,A.lab,F));return new nr(re,fe,pe,ze,!1)}}},array:po,padding:function(R,A,F){return new Qr(po(R.values,A.values,F))},variableAnchorOffsetCollection:function(R,A,F){let W=R.values,re=A.values;if(W.length!==re.length)throw new ma(`Cannot interpolate values of different length. from: ${R.toString()}, to: ${A.toString()}`);let fe=[];for(let pe=0;petypeof Lt!="number"||Lt<0||Lt>1))return F.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);re={name:"cubic-bezier",controlPoints:ct}}}if(A.length-1<4)return F.error(`Expected at least 4 arguments, but found only ${A.length-1}.`);if((A.length-1)%2!=0)return F.error("Expected an even number of arguments.");if(fe=F.parse(fe,2,_t),!fe)return null;let ze=[],Ke=null;W==="interpolate-hcl"||W==="interpolate-lab"?Ke=er:F.expectedType&&F.expectedType.kind!=="value"&&(Ke=F.expectedType);for(let ct=0;ct=Lt)return F.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',fr);let Pr=F.parse($t,mr,Ke);if(!Pr)return null;Ke=Ke||Pr.type,ze.push([Lt,Pr])}return xe(Ke,_t)||xe(Ke,er)||xe(Ke,Br)||xe(Ke,dt)||xe(Ke,Ge(_t))?new ko(Ke,W,re,fe,ze):F.error(`Type ${Je(Ke)} is not interpolatable.`)}evaluate(A){let F=this.labels,W=this.outputs;if(F.length===1)return W[0].evaluate(A);let re=this.input.evaluate(A);if(re<=F[0])return W[0].evaluate(A);let fe=F.length;if(re>=F[fe-1])return W[fe-1].evaluate(A);let pe=Li(F,re),ze=ko.interpolationFactor(this.interpolation,re,F[pe],F[pe+1]),Ke=W[pe].evaluate(A),ct=W[pe+1].evaluate(A);switch(this.operator){case"interpolate":return Lo[this.type.kind](Ke,ct,ze);case"interpolate-hcl":return Lo.color(Ke,ct,ze,"hcl");case"interpolate-lab":return Lo.color(Ke,ct,ze,"lab")}}eachChild(A){A(this.input);for(let F of this.outputs)A(F)}outputDefined(){return this.outputs.every(A=>A.outputDefined())}}function Ds(R,A,F,W){let re=W-F,fe=R-F;return re===0?0:A===1?fe/re:(Math.pow(A,fe)-1)/(Math.pow(A,re)-1)}class Fs{constructor(A,F){this.type=A,this.args=F}static parse(A,F){if(A.length<2)return F.error("Expectected at least one argument.");let W=null,re=F.expectedType;re&&re.kind!=="value"&&(W=re);let fe=[];for(let ze of A.slice(1)){let Ke=F.parse(ze,1+fe.length,W,void 0,{typeAnnotation:"omit"});if(!Ke)return null;W=W||Ke.type,fe.push(Ke)}if(!W)throw new Error("No output type");let pe=re&&fe.some(ze=>tt(re,ze.type));return new Fs(pe?Tr:W,fe)}evaluate(A){let F,W=null,re=0;for(let fe of this.args)if(re++,W=fe.evaluate(A),W&&W instanceof tn&&!W.available&&(F||(F=W.name),W=null,re===this.args.length&&(W=F)),W!==null)break;return W}eachChild(A){this.args.forEach(A)}outputDefined(){return this.args.every(A=>A.outputDefined())}}function ll(R,A){return R==="=="||R==="!="?A.kind==="boolean"||A.kind==="string"||A.kind==="number"||A.kind==="null"||A.kind==="value":A.kind==="string"||A.kind==="number"||A.kind==="value"}function ul(R,A,F,W){return W.compare(A,F)===0}function zl(R,A,F){let W=R!=="=="&&R!=="!=";return class aje{constructor(fe,pe,ze){this.type=mt,this.lhs=fe,this.rhs=pe,this.collator=ze,this.hasUntypedArgument=fe.type.kind==="value"||pe.type.kind==="value"}static parse(fe,pe){if(fe.length!==3&&fe.length!==4)return pe.error("Expected two or three arguments.");let ze=fe[0],Ke=pe.parse(fe[1],1,Tr);if(!Ke)return null;if(!ll(ze,Ke.type))return pe.concat(1).error(`"${ze}" comparisons are not supported for type '${Je(Ke.type)}'.`);let ct=pe.parse(fe[2],2,Tr);if(!ct)return null;if(!ll(ze,ct.type))return pe.concat(2).error(`"${ze}" comparisons are not supported for type '${Je(ct.type)}'.`);if(Ke.type.kind!==ct.type.kind&&Ke.type.kind!=="value"&&ct.type.kind!=="value")return pe.error(`Cannot compare types '${Je(Ke.type)}' and '${Je(ct.type)}'.`);W&&(Ke.type.kind==="value"&&ct.type.kind!=="value"?Ke=new Fa(ct.type,[Ke]):Ke.type.kind!=="value"&&ct.type.kind==="value"&&(ct=new Fa(Ke.type,[ct])));let Lt=null;if(fe.length===4){if(Ke.type.kind!=="string"&&ct.type.kind!=="string"&&Ke.type.kind!=="value"&&ct.type.kind!=="value")return pe.error("Cannot use collator to compare non-string types.");if(Lt=pe.parse(fe[3],3,Lr),!Lt)return null}return new aje(Ke,ct,Lt)}evaluate(fe){let pe=this.lhs.evaluate(fe),ze=this.rhs.evaluate(fe);if(W&&this.hasUntypedArgument){let Ke=Sn(pe),ct=Sn(ze);if(Ke.kind!==ct.kind||Ke.kind!=="string"&&Ke.kind!=="number")throw new ma(`Expected arguments for "${R}" to be (string, string) or (number, number), but found (${Ke.kind}, ${ct.kind}) instead.`)}if(this.collator&&!W&&this.hasUntypedArgument){let Ke=Sn(pe),ct=Sn(ze);if(Ke.kind!=="string"||ct.kind!=="string")return A(fe,pe,ze)}return this.collator?F(fe,pe,ze,this.collator.evaluate(fe)):A(fe,pe,ze)}eachChild(fe){fe(this.lhs),fe(this.rhs),this.collator&&fe(this.collator)}outputDefined(){return!0}}}let us=zl("==",function(R,A,F){return A===F},ul),il=zl("!=",function(R,A,F){return A!==F},function(R,A,F,W){return!ul(0,A,F,W)}),As=zl("<",function(R,A,F){return A",function(R,A,F){return A>F},function(R,A,F,W){return W.compare(A,F)>0}),Ks=zl("<=",function(R,A,F){return A<=F},function(R,A,F,W){return W.compare(A,F)<=0}),zs=zl(">=",function(R,A,F){return A>=F},function(R,A,F,W){return W.compare(A,F)>=0});class Io{constructor(A,F,W){this.type=Lr,this.locale=W,this.caseSensitive=A,this.diacriticSensitive=F}static parse(A,F){if(A.length!==2)return F.error("Expected one argument.");let W=A[1];if(typeof W!="object"||Array.isArray(W))return F.error("Collator options argument must be an object.");let re=F.parse(W["case-sensitive"]!==void 0&&W["case-sensitive"],1,mt);if(!re)return null;let fe=F.parse(W["diacritic-sensitive"]!==void 0&&W["diacritic-sensitive"],1,mt);if(!fe)return null;let pe=null;return W.locale&&(pe=F.parse(W.locale,1,It),!pe)?null:new Io(re,fe,pe)}evaluate(A){return new Er(this.caseSensitive.evaluate(A),this.diacriticSensitive.evaluate(A),this.locale?this.locale.evaluate(A):null)}eachChild(A){A(this.caseSensitive),A(this.diacriticSensitive),this.locale&&A(this.locale)}outputDefined(){return!1}}class ls{constructor(A,F,W,re,fe){this.type=It,this.number=A,this.locale=F,this.currency=W,this.minFractionDigits=re,this.maxFractionDigits=fe}static parse(A,F){if(A.length!==3)return F.error("Expected two arguments.");let W=F.parse(A[1],1,_t);if(!W)return null;let re=A[2];if(typeof re!="object"||Array.isArray(re))return F.error("NumberFormat options argument must be an object.");let fe=null;if(re.locale&&(fe=F.parse(re.locale,1,It),!fe))return null;let pe=null;if(re.currency&&(pe=F.parse(re.currency,1,It),!pe))return null;let ze=null;if(re["min-fraction-digits"]&&(ze=F.parse(re["min-fraction-digits"],1,_t),!ze))return null;let Ke=null;return re["max-fraction-digits"]&&(Ke=F.parse(re["max-fraction-digits"],1,_t),!Ke)?null:new ls(W,fe,pe,ze,Ke)}evaluate(A){return new Intl.NumberFormat(this.locale?this.locale.evaluate(A):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(A):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(A):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(A):void 0}).format(this.number.evaluate(A))}eachChild(A){A(this.number),this.locale&&A(this.locale),this.currency&&A(this.currency),this.minFractionDigits&&A(this.minFractionDigits),this.maxFractionDigits&&A(this.maxFractionDigits)}outputDefined(){return!1}}class Zl{constructor(A){this.type=ti,this.sections=A}static parse(A,F){if(A.length<2)return F.error("Expected at least one argument.");let W=A[1];if(!Array.isArray(W)&&typeof W=="object")return F.error("First argument must be an image or text section.");let re=[],fe=!1;for(let pe=1;pe<=A.length-1;++pe){let ze=A[pe];if(fe&&typeof ze=="object"&&!Array.isArray(ze)){fe=!1;let Ke=null;if(ze["font-scale"]&&(Ke=F.parse(ze["font-scale"],1,_t),!Ke))return null;let ct=null;if(ze["text-font"]&&(ct=F.parse(ze["text-font"],1,Ge(It)),!ct))return null;let Lt=null;if(ze["text-color"]&&(Lt=F.parse(ze["text-color"],1,er),!Lt))return null;let $t=re[re.length-1];$t.scale=Ke,$t.font=ct,$t.textColor=Lt}else{let Ke=F.parse(A[pe],1,Tr);if(!Ke)return null;let ct=Ke.type.kind;if(ct!=="string"&&ct!=="value"&&ct!=="null"&&ct!=="resolvedImage")return F.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");fe=!0,re.push({content:Ke,scale:null,font:null,textColor:null})}}return new Zl(re)}evaluate(A){return new ri(this.sections.map(F=>{let W=F.content.evaluate(A);return Sn(W)===Vr?new Xr("",W,null,null,null):new Xr(Ba(W),null,F.scale?F.scale.evaluate(A):null,F.font?F.font.evaluate(A).join(","):null,F.textColor?F.textColor.evaluate(A):null)}))}eachChild(A){for(let F of this.sections)A(F.content),F.scale&&A(F.scale),F.font&&A(F.font),F.textColor&&A(F.textColor)}outputDefined(){return!1}}class Su{constructor(A){this.type=Vr,this.input=A}static parse(A,F){if(A.length!==2)return F.error("Expected two arguments.");let W=F.parse(A[1],1,It);return W?new Su(W):F.error("No image name provided.")}evaluate(A){let F=this.input.evaluate(A),W=tn.fromString(F);return W&&A.availableImages&&(W.available=A.availableImages.indexOf(F)>-1),W}eachChild(A){A(this.input)}outputDefined(){return!1}}class nc{constructor(A){this.type=_t,this.input=A}static parse(A,F){if(A.length!==2)return F.error(`Expected 1 argument, but found ${A.length-1} instead.`);let W=F.parse(A[1],1);return W?W.type.kind!=="array"&&W.type.kind!=="string"&&W.type.kind!=="value"?F.error(`Expected argument of type string or array, but found ${Je(W.type)} instead.`):new nc(W):null}evaluate(A){let F=this.input.evaluate(A);if(typeof F=="string")return[...F].length;if(Array.isArray(F))return F.length;throw new ma(`Expected value to be of type string or array, but found ${Je(Sn(F))} instead.`)}eachChild(A){A(this.input)}outputDefined(){return!1}}let bs=8192;function Rn(R,A){let F=(180+R[0])/360,W=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+R[1]*Math.PI/360)))/360,re=Math.pow(2,A.z);return[Math.round(F*re*bs),Math.round(W*re*bs)]}function _a(R,A){let F=Math.pow(2,A.z);return[(re=(R[0]/bs+A.x)/F,360*re-180),(W=(R[1]/bs+A.y)/F,360/Math.PI*Math.atan(Math.exp((180-360*W)*Math.PI/180))-90)];var W,re}function Vu(R,A){R[0]=Math.min(R[0],A[0]),R[1]=Math.min(R[1],A[1]),R[2]=Math.max(R[2],A[0]),R[3]=Math.max(R[3],A[1])}function Ol(R,A){return!(R[0]<=A[0]||R[2]>=A[2]||R[1]<=A[1]||R[3]>=A[3])}function xo(R,A,F){let W=R[0]-A[0],re=R[1]-A[1],fe=R[0]-F[0],pe=R[1]-F[1];return W*pe-fe*re==0&&W*fe<=0&&re*pe<=0}function Yl(R,A,F,W){return(re=[W[0]-F[0],W[1]-F[1]])[0]*(fe=[A[0]-R[0],A[1]-R[1]])[1]-re[1]*fe[0]!=0&&!(!qo(R,A,F,W)||!qo(F,W,R,A));var re,fe}function Ns(R,A,F){for(let W of F)for(let re=0;re(re=R)[1]!=(pe=ze[Ke+1])[1]>re[1]&&re[0]<(pe[0]-fe[0])*(re[1]-fe[1])/(pe[1]-fe[1])+fe[0]&&(W=!W)}var re,fe,pe;return W}function ac(R,A){for(let F of A)if(Hl(R,F))return!0;return!1}function aa(R,A){for(let F of R)if(!Hl(F,A))return!1;for(let F=0;F0&&ze<0||pe<0&&ze>0}function ql(R,A,F){let W=[];for(let re=0;reF[2]){let re=.5*W,fe=R[0]-F[0]>re?-W:F[0]-R[0]>re?W:0;fe===0&&(fe=R[0]-F[2]>re?-W:F[2]-R[0]>re?W:0),R[0]+=fe}Vu(A,R)}function rf(R,A,F,W){let re=Math.pow(2,W.z)*bs,fe=[W.x*bs,W.y*bs],pe=[];for(let ze of R)for(let Ke of ze){let ct=[Ke.x+fe[0],Ke.y+fe[1]];Do(ct,A,F,re),pe.push(ct)}return pe}function Uf(R,A,F,W){let re=Math.pow(2,W.z)*bs,fe=[W.x*bs,W.y*bs],pe=[];for(let Ke of R){let ct=[];for(let Lt of Ke){let $t=[Lt.x+fe[0],Lt.y+fe[1]];Vu(A,$t),ct.push($t)}pe.push(ct)}if(A[2]-A[0]<=re/2){(ze=A)[0]=ze[1]=1/0,ze[2]=ze[3]=-1/0;for(let Ke of pe)for(let ct of Ke)Do(ct,A,F,re)}var ze;return pe}class pl{constructor(A,F){this.type=mt,this.geojson=A,this.geometries=F}static parse(A,F){if(A.length!==2)return F.error(`'within' expression requires exactly one argument, but found ${A.length-1} instead.`);if(yn(A[1])){let W=A[1];if(W.type==="FeatureCollection"){let re=[];for(let fe of W.features){let{type:pe,coordinates:ze}=fe.geometry;pe==="Polygon"&&re.push(ze),pe==="MultiPolygon"&&re.push(...ze)}if(re.length)return new pl(W,{type:"MultiPolygon",coordinates:re})}else if(W.type==="Feature"){let re=W.geometry.type;if(re==="Polygon"||re==="MultiPolygon")return new pl(W,W.geometry)}else if(W.type==="Polygon"||W.type==="MultiPolygon")return new pl(W,W)}return F.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(A){if(A.geometry()!=null&&A.canonicalID()!=null){if(A.geometryType()==="Point")return function(F,W){let re=[1/0,1/0,-1/0,-1/0],fe=[1/0,1/0,-1/0,-1/0],pe=F.canonicalID();if(W.type==="Polygon"){let ze=ql(W.coordinates,fe,pe),Ke=rf(F.geometry(),re,fe,pe);if(!Ol(re,fe))return!1;for(let ct of Ke)if(!Hl(ct,ze))return!1}if(W.type==="MultiPolygon"){let ze=Pc(W.coordinates,fe,pe),Ke=rf(F.geometry(),re,fe,pe);if(!Ol(re,fe))return!1;for(let ct of Ke)if(!ac(ct,ze))return!1}return!0}(A,this.geometries);if(A.geometryType()==="LineString")return function(F,W){let re=[1/0,1/0,-1/0,-1/0],fe=[1/0,1/0,-1/0,-1/0],pe=F.canonicalID();if(W.type==="Polygon"){let ze=ql(W.coordinates,fe,pe),Ke=Uf(F.geometry(),re,fe,pe);if(!Ol(re,fe))return!1;for(let ct of Ke)if(!aa(ct,ze))return!1}if(W.type==="MultiPolygon"){let ze=Pc(W.coordinates,fe,pe),Ke=Uf(F.geometry(),re,fe,pe);if(!Ol(re,fe))return!1;for(let ct of Ke)if(!Oo(ct,ze))return!1}return!0}(A,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}}let Zc=class{constructor(R=[],A=(F,W)=>FW?1:0){if(this.data=R,this.length=this.data.length,this.compare=A,this.length>0)for(let F=(this.length>>1)-1;F>=0;F--)this._down(F)}push(R){this.data.push(R),this._up(this.length++)}pop(){if(this.length===0)return;let R=this.data[0],A=this.data.pop();return--this.length>0&&(this.data[0]=A,this._down(0)),R}peek(){return this.data[0]}_up(R){let{data:A,compare:F}=this,W=A[R];for(;R>0;){let re=R-1>>1,fe=A[re];if(F(W,fe)>=0)break;A[R]=fe,R=re}A[R]=W}_down(R){let{data:A,compare:F}=this,W=this.length>>1,re=A[R];for(;R=0)break;A[R]=A[fe],R=fe}A[R]=re}};function Kl(R,A,F,W,re){Os(R,A,F,W||R.length-1,re||oc)}function Os(R,A,F,W,re){for(;W>F;){if(W-F>600){var fe=W-F+1,pe=A-F+1,ze=Math.log(fe),Ke=.5*Math.exp(2*ze/3),ct=.5*Math.sqrt(ze*Ke*(fe-Ke)/fe)*(pe-fe/2<0?-1:1);Os(R,A,Math.max(F,Math.floor(A-pe*Ke/fe+ct)),Math.min(W,Math.floor(A+(fe-pe)*Ke/fe+ct)),re)}var Lt=R[A],$t=F,fr=W;for(yu(R,F,A),re(R[W],Lt)>0&&yu(R,F,W);$t0;)fr--}re(R[F],Lt)===0?yu(R,F,fr):yu(R,++fr,W),fr<=A&&(F=fr+1),A<=fr&&(W=fr-1)}}function yu(R,A,F){var W=R[A];R[A]=R[F],R[F]=W}function oc(R,A){return RA?1:0}function Cf(R,A){if(R.length<=1)return[R];let F=[],W,re;for(let fe of R){let pe=Vh(fe);pe!==0&&(fe.area=Math.abs(pe),re===void 0&&(re=pe<0),re===pe<0?(W&&F.push(W),W=[fe]):W.push(fe))}if(W&&F.push(W),A>1)for(let fe=0;fe1?(ct=A[Ke+1][0],Lt=A[Ke+1][1]):mr>0&&(ct+=$t/this.kx*mr,Lt+=fr/this.ky*mr)),$t=this.wrap(F[0]-ct)*this.kx,fr=(F[1]-Lt)*this.ky;let Pr=$t*$t+fr*fr;Pr180;)A-=360;return A}}function Jl(R,A){return A[0]-R[0]}function fl(R){return R[1]-R[0]+1}function lc(R,A){return R[1]>=R[0]&&R[1]R[1])return[null,null];let F=fl(R);if(A){if(F===2)return[R,null];let re=Math.floor(F/2);return[[R[0],R[0]+re],[R[0]+re,R[1]]]}if(F===1)return[R,null];let W=Math.floor(F/2)-1;return[[R[0],R[0]+W],[R[0]+W+1,R[1]]]}function Es(R,A){if(!lc(A,R.length))return[1/0,1/0,-1/0,-1/0];let F=[1/0,1/0,-1/0,-1/0];for(let W=A[0];W<=A[1];++W)Vu(F,R[W]);return F}function Hs(R){let A=[1/0,1/0,-1/0,-1/0];for(let F of R)for(let W of F)Vu(A,W);return A}function Go(R){return R[0]!==-1/0&&R[1]!==-1/0&&R[2]!==1/0&&R[3]!==1/0}function ps(R,A,F){if(!Go(R)||!Go(A))return NaN;let W=0,re=0;return R[2]A[2]&&(W=R[0]-A[2]),R[1]>A[3]&&(re=R[1]-A[3]),R[3]=W)return W;if(Ol(re,fe)){if(od(R,A))return 0}else if(od(A,R))return 0;let pe=1/0;for(let ze of R)for(let Ke=0,ct=ze.length,Lt=ct-1;Ke0;){let Ke=pe.pop();if(Ke[0]>=fe)continue;let ct=Ke[1],Lt=A?50:100;if(fl(ct)<=Lt){if(!lc(ct,R.length))return NaN;if(A){let $t=Po(R,ct,F,W);if(isNaN($t)||$t===0)return $t;fe=Math.min(fe,$t)}else for(let $t=ct[0];$t<=ct[1];++$t){let fr=ad(R[$t],F,W);if(fe=Math.min(fe,fr),fe===0)return 0}}else{let $t=Fu(ct,A);Pa(pe,fe,W,R,ze,$t[0]),Pa(pe,fe,W,R,ze,$t[1])}}return fe}function bl(R,A,F,W,re,fe=1/0){let pe=Math.min(fe,re.distance(R[0],F[0]));if(pe===0)return pe;let ze=new Zc([[0,[0,R.length-1],[0,F.length-1]]],Jl);for(;ze.length>0;){let Ke=ze.pop();if(Ke[0]>=pe)continue;let ct=Ke[1],Lt=Ke[2],$t=A?50:100,fr=W?50:100;if(fl(ct)<=$t&&fl(Lt)<=fr){if(!lc(ct,R.length)&&lc(Lt,F.length))return NaN;let mr;if(A&&W)mr=Gu(R,ct,F,Lt,re),pe=Math.min(pe,mr);else if(A&&!W){let Pr=R.slice(ct[0],ct[1]+1);for(let zr=Lt[0];zr<=Lt[1];++zr)if(mr=uc(F[zr],Pr,re),pe=Math.min(pe,mr),pe===0)return pe}else if(!A&&W){let Pr=F.slice(Lt[0],Lt[1]+1);for(let zr=ct[0];zr<=ct[1];++zr)if(mr=uc(R[zr],Pr,re),pe=Math.min(pe,mr),pe===0)return pe}else mr=qs(R,ct,F,Lt,re),pe=Math.min(pe,mr)}else{let mr=Fu(ct,A),Pr=Fu(Lt,W);af(ze,pe,re,R,F,mr[0],Pr[0]),af(ze,pe,re,R,F,mr[0],Pr[1]),af(ze,pe,re,R,F,mr[1],Pr[0]),af(ze,pe,re,R,F,mr[1],Pr[1])}}return pe}function Gf(R){return R.type==="MultiPolygon"?R.coordinates.map(A=>({type:"Polygon",coordinates:A})):R.type==="MultiLineString"?R.coordinates.map(A=>({type:"LineString",coordinates:A})):R.type==="MultiPoint"?R.coordinates.map(A=>({type:"Point",coordinates:A})):[R]}class Ic{constructor(A,F){this.type=_t,this.geojson=A,this.geometries=F}static parse(A,F){if(A.length!==2)return F.error(`'distance' expression requires exactly one argument, but found ${A.length-1} instead.`);if(yn(A[1])){let W=A[1];if(W.type==="FeatureCollection")return new Ic(W,W.features.map(re=>Gf(re.geometry)).flat());if(W.type==="Feature")return new Ic(W,Gf(W.geometry));if("type"in W&&"coordinates"in W)return new Ic(W,Gf(W))}return F.error("'distance' expression requires valid geojson object that contains polygon geometry type.")}evaluate(A){if(A.geometry()!=null&&A.canonicalID()!=null){if(A.geometryType()==="Point")return function(F,W){let re=F.geometry(),fe=re.flat().map(Ke=>_a([Ke.x,Ke.y],F.canonical));if(re.length===0)return NaN;let pe=new Vf(fe[0][1]),ze=1/0;for(let Ke of W){switch(Ke.type){case"Point":ze=Math.min(ze,bl(fe,!1,[Ke.coordinates],!1,pe,ze));break;case"LineString":ze=Math.min(ze,bl(fe,!1,Ke.coordinates,!0,pe,ze));break;case"Polygon":ze=Math.min(ze,Hu(fe,!1,Ke.coordinates,pe,ze))}if(ze===0)return ze}return ze}(A,this.geometries);if(A.geometryType()==="LineString")return function(F,W){let re=F.geometry(),fe=re.flat().map(Ke=>_a([Ke.x,Ke.y],F.canonical));if(re.length===0)return NaN;let pe=new Vf(fe[0][1]),ze=1/0;for(let Ke of W){switch(Ke.type){case"Point":ze=Math.min(ze,bl(fe,!0,[Ke.coordinates],!1,pe,ze));break;case"LineString":ze=Math.min(ze,bl(fe,!0,Ke.coordinates,!0,pe,ze));break;case"Polygon":ze=Math.min(ze,Hu(fe,!0,Ke.coordinates,pe,ze))}if(ze===0)return ze}return ze}(A,this.geometries);if(A.geometryType()==="Polygon")return function(F,W){let re=F.geometry();if(re.length===0||re[0].length===0)return NaN;let fe=Cf(re,0).map(Ke=>Ke.map(ct=>ct.map(Lt=>_a([Lt.x,Lt.y],F.canonical)))),pe=new Vf(fe[0][0][0][1]),ze=1/0;for(let Ke of W)for(let ct of fe){switch(Ke.type){case"Point":ze=Math.min(ze,Hu([Ke.coordinates],!1,ct,pe,ze));break;case"LineString":ze=Math.min(ze,Hu(Ke.coordinates,!0,ct,pe,ze));break;case"Polygon":ze=Math.min(ze,Yo(ct,Ke.coordinates,pe,ze))}if(ze===0)return ze}return ze}(A,this.geometries)}return NaN}eachChild(){}outputDefined(){return!0}}let yf={"==":us,"!=":il,">":cl,"<":As,">=":zs,"<=":Ks,array:Fa,at:kr,boolean:Fa,case:An,coalesce:Fs,collator:Io,format:Zl,image:Su,in:Jr,"index-of":vi,interpolate:ko,"interpolate-hcl":ko,"interpolate-lab":ko,length:nc,let:jn,literal:ua,match:hn,number:Fa,"number-format":ls,object:Fa,slice:Mn,step:_n,string:Fa,"to-boolean":da,"to-color":da,"to-number":da,"to-string":da,var:Mt,within:pl,distance:Ic};class Bl{constructor(A,F,W,re){this.name=A,this.type=F,this._evaluate=W,this.args=re}evaluate(A){return this._evaluate(A,this.args)}eachChild(A){this.args.forEach(A)}outputDefined(){return!1}static parse(A,F){let W=A[0],re=Bl.definitions[W];if(!re)return F.error(`Unknown expression "${W}". If you wanted a literal array, use ["literal", [...]].`,0);let fe=Array.isArray(re)?re[0]:re.type,pe=Array.isArray(re)?[[re[1],re[2]]]:re.overloads,ze=pe.filter(([ct])=>!Array.isArray(ct)||ct.length===A.length-1),Ke=null;for(let[ct,Lt]of ze){Ke=new vo(F.registry,eh,F.path,null,F.scope);let $t=[],fr=!1;for(let mr=1;mr{return fr=$t,Array.isArray(fr)?`(${fr.map(Je).join(", ")})`:`(${Je(fr.type)}...)`;var fr}).join(" | "),Lt=[];for(let $t=1;$t{F=A?F&&eh(W):F&&W instanceof ua}),!!F&&th(R)&&Hf(R,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function th(R){if(R instanceof Bl&&(R.name==="get"&&R.args.length===1||R.name==="feature-state"||R.name==="has"&&R.args.length===1||R.name==="properties"||R.name==="geometry-type"||R.name==="id"||/^filter-/.test(R.name))||R instanceof pl||R instanceof Ic)return!1;let A=!0;return R.eachChild(F=>{A&&!th(F)&&(A=!1)}),A}function ju(R){if(R instanceof Bl&&R.name==="feature-state")return!1;let A=!0;return R.eachChild(F=>{A&&!ju(F)&&(A=!1)}),A}function Hf(R,A){if(R instanceof Bl&&A.indexOf(R.name)>=0)return!1;let F=!0;return R.eachChild(W=>{F&&!Hf(W,A)&&(F=!1)}),F}function cc(R){return{result:"success",value:R}}function of(R){return{result:"error",value:R}}function Nl(R){return R["property-type"]==="data-driven"||R["property-type"]==="cross-faded-data-driven"}function Kc(R){return!!R.expression&&R.expression.parameters.indexOf("zoom")>-1}function Rc(R){return!!R.expression&&R.expression.interpolated}function gs(R){return R instanceof Number?"number":R instanceof String?"string":R instanceof Boolean?"boolean":Array.isArray(R)?"array":R===null?"null":typeof R}function jf(R){return typeof R=="object"&&R!==null&&!Array.isArray(R)}function Gh(R){return R}function rh(R,A){let F=A.type==="color",W=R.stops&&typeof R.stops[0][0]=="object",re=W||!(W||R.property!==void 0),fe=R.type||(Rc(A)?"exponential":"interval");if(F||A.type==="padding"){let Lt=F?nr.parse:Qr.parse;(R=$e({},R)).stops&&(R.stops=R.stops.map($t=>[$t[0],Lt($t[1])])),R.default=Lt(R.default?R.default:A.default)}if(R.colorSpace&&(pe=R.colorSpace)!=="rgb"&&pe!=="hcl"&&pe!=="lab")throw new Error(`Unknown color space: "${R.colorSpace}"`);var pe;let ze,Ke,ct;if(fe==="exponential")ze=ih;else if(fe==="interval")ze=Mu;else if(fe==="categorical"){ze=Th,Ke=Object.create(null);for(let Lt of R.stops)Ke[Lt[0]]=Lt[1];ct=typeof R.stops[0][0]}else{if(fe!=="identity")throw new Error(`Unknown function type "${fe}"`);ze=js}if(W){let Lt={},$t=[];for(let Pr=0;PrPr[0]),evaluate:({zoom:Pr},zr)=>ih({stops:fr,base:R.base},A,Pr).evaluate(Pr,zr)}}if(re){let Lt=fe==="exponential"?{name:"exponential",base:R.base!==void 0?R.base:1}:null;return{kind:"camera",interpolationType:Lt,interpolationFactor:ko.interpolationFactor.bind(void 0,Lt),zoomStops:R.stops.map($t=>$t[0]),evaluate:({zoom:$t})=>ze(R,A,$t,Ke,ct)}}return{kind:"source",evaluate(Lt,$t){let fr=$t&&$t.properties?$t.properties[R.property]:void 0;return fr===void 0?sf(R.default,A.default):ze(R,A,fr,Ke,ct)}}}function sf(R,A,F){return R!==void 0?R:A!==void 0?A:F!==void 0?F:void 0}function Th(R,A,F,W,re){return sf(typeof F===re?W[F]:void 0,R.default,A.default)}function Mu(R,A,F){if(gs(F)!=="number")return sf(R.default,A.default);let W=R.stops.length;if(W===1||F<=R.stops[0][0])return R.stops[0][1];if(F>=R.stops[W-1][0])return R.stops[W-1][1];let re=Li(R.stops.map(fe=>fe[0]),F);return R.stops[re][1]}function ih(R,A,F){let W=R.base!==void 0?R.base:1;if(gs(F)!=="number")return sf(R.default,A.default);let re=R.stops.length;if(re===1||F<=R.stops[0][0])return R.stops[0][1];if(F>=R.stops[re-1][0])return R.stops[re-1][1];let fe=Li(R.stops.map(Lt=>Lt[0]),F),pe=function(Lt,$t,fr,mr){let Pr=mr-fr,zr=Lt-fr;return Pr===0?0:$t===1?zr/Pr:(Math.pow($t,zr)-1)/(Math.pow($t,Pr)-1)}(F,W,R.stops[fe][0],R.stops[fe+1][0]),ze=R.stops[fe][1],Ke=R.stops[fe+1][1],ct=Lo[A.type]||Gh;return typeof ze.evaluate=="function"?{evaluate(...Lt){let $t=ze.evaluate.apply(void 0,Lt),fr=Ke.evaluate.apply(void 0,Lt);if($t!==void 0&&fr!==void 0)return ct($t,fr,pe,R.colorSpace)}}:ct(ze,Ke,pe,R.colorSpace)}function js(R,A,F){switch(A.type){case"color":F=nr.parse(F);break;case"formatted":F=ri.fromString(F.toString());break;case"resolvedImage":F=tn.fromString(F.toString());break;case"padding":F=Qr.parse(F);break;default:gs(F)===A.type||A.type==="enum"&&A.values[F]||(F=void 0)}return sf(F,R.default,A.default)}Bl.register(yf,{error:[{kind:"error"},[It],(R,[A])=>{throw new ma(A.evaluate(R))}],typeof:[It,[Tr],(R,[A])=>Je(Sn(A.evaluate(R)))],"to-rgba":[Ge(_t,4),[er],(R,[A])=>{let[F,W,re,fe]=A.evaluate(R).rgb;return[255*F,255*W,255*re,fe]}],rgb:[er,[_t,_t,_t],wh],rgba:[er,[_t,_t,_t,_t],wh],has:{type:mt,overloads:[[[It],(R,[A])=>Qf(A.evaluate(R),R.properties())],[[It,lr],(R,[A,F])=>Qf(A.evaluate(R),F.evaluate(R))]]},get:{type:Tr,overloads:[[[It],(R,[A])=>_f(A.evaluate(R),R.properties())],[[It,lr],(R,[A,F])=>_f(A.evaluate(R),F.evaluate(R))]]},"feature-state":[Tr,[It],(R,[A])=>_f(A.evaluate(R),R.featureState||{})],properties:[lr,[],R=>R.properties()],"geometry-type":[It,[],R=>R.geometryType()],id:[Tr,[],R=>R.id()],zoom:[_t,[],R=>R.globals.zoom],"heatmap-density":[_t,[],R=>R.globals.heatmapDensity||0],"line-progress":[_t,[],R=>R.globals.lineProgress||0],accumulated:[Tr,[],R=>R.globals.accumulated===void 0?null:R.globals.accumulated],"+":[_t,Yc(_t),(R,A)=>{let F=0;for(let W of A)F+=W.evaluate(R);return F}],"*":[_t,Yc(_t),(R,A)=>{let F=1;for(let W of A)F*=W.evaluate(R);return F}],"-":{type:_t,overloads:[[[_t,_t],(R,[A,F])=>A.evaluate(R)-F.evaluate(R)],[[_t],(R,[A])=>-A.evaluate(R)]]},"/":[_t,[_t,_t],(R,[A,F])=>A.evaluate(R)/F.evaluate(R)],"%":[_t,[_t,_t],(R,[A,F])=>A.evaluate(R)%F.evaluate(R)],ln2:[_t,[],()=>Math.LN2],pi:[_t,[],()=>Math.PI],e:[_t,[],()=>Math.E],"^":[_t,[_t,_t],(R,[A,F])=>Math.pow(A.evaluate(R),F.evaluate(R))],sqrt:[_t,[_t],(R,[A])=>Math.sqrt(A.evaluate(R))],log10:[_t,[_t],(R,[A])=>Math.log(A.evaluate(R))/Math.LN10],ln:[_t,[_t],(R,[A])=>Math.log(A.evaluate(R))],log2:[_t,[_t],(R,[A])=>Math.log(A.evaluate(R))/Math.LN2],sin:[_t,[_t],(R,[A])=>Math.sin(A.evaluate(R))],cos:[_t,[_t],(R,[A])=>Math.cos(A.evaluate(R))],tan:[_t,[_t],(R,[A])=>Math.tan(A.evaluate(R))],asin:[_t,[_t],(R,[A])=>Math.asin(A.evaluate(R))],acos:[_t,[_t],(R,[A])=>Math.acos(A.evaluate(R))],atan:[_t,[_t],(R,[A])=>Math.atan(A.evaluate(R))],min:[_t,Yc(_t),(R,A)=>Math.min(...A.map(F=>F.evaluate(R)))],max:[_t,Yc(_t),(R,A)=>Math.max(...A.map(F=>F.evaluate(R)))],abs:[_t,[_t],(R,[A])=>Math.abs(A.evaluate(R))],round:[_t,[_t],(R,[A])=>{let F=A.evaluate(R);return F<0?-Math.round(-F):Math.round(F)}],floor:[_t,[_t],(R,[A])=>Math.floor(A.evaluate(R))],ceil:[_t,[_t],(R,[A])=>Math.ceil(A.evaluate(R))],"filter-==":[mt,[It,Tr],(R,[A,F])=>R.properties()[A.value]===F.value],"filter-id-==":[mt,[Tr],(R,[A])=>R.id()===A.value],"filter-type-==":[mt,[It],(R,[A])=>R.geometryType()===A.value],"filter-<":[mt,[It,Tr],(R,[A,F])=>{let W=R.properties()[A.value],re=F.value;return typeof W==typeof re&&W{let F=R.id(),W=A.value;return typeof F==typeof W&&F":[mt,[It,Tr],(R,[A,F])=>{let W=R.properties()[A.value],re=F.value;return typeof W==typeof re&&W>re}],"filter-id->":[mt,[Tr],(R,[A])=>{let F=R.id(),W=A.value;return typeof F==typeof W&&F>W}],"filter-<=":[mt,[It,Tr],(R,[A,F])=>{let W=R.properties()[A.value],re=F.value;return typeof W==typeof re&&W<=re}],"filter-id-<=":[mt,[Tr],(R,[A])=>{let F=R.id(),W=A.value;return typeof F==typeof W&&F<=W}],"filter->=":[mt,[It,Tr],(R,[A,F])=>{let W=R.properties()[A.value],re=F.value;return typeof W==typeof re&&W>=re}],"filter-id->=":[mt,[Tr],(R,[A])=>{let F=R.id(),W=A.value;return typeof F==typeof W&&F>=W}],"filter-has":[mt,[Tr],(R,[A])=>A.value in R.properties()],"filter-has-id":[mt,[],R=>R.id()!==null&&R.id()!==void 0],"filter-type-in":[mt,[Ge(It)],(R,[A])=>A.value.indexOf(R.geometryType())>=0],"filter-id-in":[mt,[Ge(Tr)],(R,[A])=>A.value.indexOf(R.id())>=0],"filter-in-small":[mt,[It,Ge(Tr)],(R,[A,F])=>F.value.indexOf(R.properties()[A.value])>=0],"filter-in-large":[mt,[It,Ge(Tr)],(R,[A,F])=>function(W,re,fe,pe){for(;fe<=pe;){let ze=fe+pe>>1;if(re[ze]===W)return!0;re[ze]>W?pe=ze-1:fe=ze+1}return!1}(R.properties()[A.value],F.value,0,F.value.length-1)],all:{type:mt,overloads:[[[mt,mt],(R,[A,F])=>A.evaluate(R)&&F.evaluate(R)],[Yc(mt),(R,A)=>{for(let F of A)if(!F.evaluate(R))return!1;return!0}]]},any:{type:mt,overloads:[[[mt,mt],(R,[A,F])=>A.evaluate(R)||F.evaluate(R)],[Yc(mt),(R,A)=>{for(let F of A)if(F.evaluate(R))return!0;return!1}]]},"!":[mt,[mt],(R,[A])=>!A.evaluate(R)],"is-supported-script":[mt,[It],(R,[A])=>{let F=R.globals&&R.globals.isSupportedScript;return!F||F(A.evaluate(R))}],upcase:[It,[It],(R,[A])=>A.evaluate(R).toUpperCase()],downcase:[It,[It],(R,[A])=>A.evaluate(R).toLowerCase()],concat:[It,Yc(Tr),(R,A)=>A.map(F=>Ba(F.evaluate(R))).join("")],"resolved-locale":[It,[Lr],(R,[A])=>A.evaluate(R).resolvedLocale()]});class Eu{constructor(A,F){var W;this.expression=A,this._warningHistory={},this._evaluator=new Ha,this._defaultValue=F?(W=F).type==="color"&&jf(W.default)?new nr(0,0,0,0):W.type==="color"?nr.parse(W.default)||null:W.type==="padding"?Qr.parse(W.default)||null:W.type==="variableAnchorOffsetCollection"?$i.parse(W.default)||null:W.default===void 0?null:W.default:null,this._enumValues=F&&F.type==="enum"?F.values:null}evaluateWithoutErrorHandling(A,F,W,re,fe,pe){return this._evaluator.globals=A,this._evaluator.feature=F,this._evaluator.featureState=W,this._evaluator.canonical=re,this._evaluator.availableImages=fe||null,this._evaluator.formattedSection=pe,this.expression.evaluate(this._evaluator)}evaluate(A,F,W,re,fe,pe){this._evaluator.globals=A,this._evaluator.feature=F||null,this._evaluator.featureState=W||null,this._evaluator.canonical=re,this._evaluator.availableImages=fe||null,this._evaluator.formattedSection=pe||null;try{let ze=this.expression.evaluate(this._evaluator);if(ze==null||typeof ze=="number"&&ze!=ze)return this._defaultValue;if(this._enumValues&&!(ze in this._enumValues))throw new ma(`Expected value to be one of ${Object.keys(this._enumValues).map(Ke=>JSON.stringify(Ke)).join(", ")}, but found ${JSON.stringify(ze)} instead.`);return ze}catch(ze){return this._warningHistory[ze.message]||(this._warningHistory[ze.message]=!0,typeof console!="undefined"&&console.warn(ze.message)),this._defaultValue}}}function Dc(R){return Array.isArray(R)&&R.length>0&&typeof R[0]=="string"&&R[0]in yf}function ks(R,A){let F=new vo(yf,eh,[],A?function(re){let fe={color:er,string:It,number:_t,enum:It,boolean:mt,formatted:ti,padding:Br,resolvedImage:Vr,variableAnchorOffsetCollection:dt};return re.type==="array"?Ge(fe[re.value]||Tr,re.length):fe[re.type]}(A):void 0),W=F.parse(R,void 0,void 0,void 0,A&&A.type==="string"?{typeAnnotation:"coerce"}:void 0);return W?cc(new Eu(W,A)):of(F.errors)}class bc{constructor(A,F){this.kind=A,this._styleExpression=F,this.isStateDependent=A!=="constant"&&!ju(F.expression)}evaluateWithoutErrorHandling(A,F,W,re,fe,pe){return this._styleExpression.evaluateWithoutErrorHandling(A,F,W,re,fe,pe)}evaluate(A,F,W,re,fe,pe){return this._styleExpression.evaluate(A,F,W,re,fe,pe)}}class hu{constructor(A,F,W,re){this.kind=A,this.zoomStops=W,this._styleExpression=F,this.isStateDependent=A!=="camera"&&!ju(F.expression),this.interpolationType=re}evaluateWithoutErrorHandling(A,F,W,re,fe,pe){return this._styleExpression.evaluateWithoutErrorHandling(A,F,W,re,fe,pe)}evaluate(A,F,W,re,fe,pe){return this._styleExpression.evaluate(A,F,W,re,fe,pe)}interpolationFactor(A,F,W){return this.interpolationType?ko.interpolationFactor(this.interpolationType,A,F,W):0}}function _u(R,A){let F=ks(R,A);if(F.result==="error")return F;let W=F.value.expression,re=th(W);if(!re&&!Nl(A))return of([new St("","data expressions not supported")]);let fe=Hf(W,["zoom"]);if(!fe&&!Kc(A))return of([new St("","zoom expressions not supported")]);let pe=nh(W);return pe||fe?pe instanceof St?of([pe]):pe instanceof ko&&!Rc(A)?of([new St("",'"interpolate" expressions cannot be used with this property')]):cc(pe?new hu(re?"camera":"composite",F.value,pe.labels,pe instanceof ko?pe.interpolation:void 0):new bc(re?"constant":"source",F.value)):of([new St("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class nl{constructor(A,F){this._parameters=A,this._specification=F,$e(this,rh(this._parameters,this._specification))}static deserialize(A){return new nl(A._parameters,A._specification)}static serialize(A){return{_parameters:A._parameters,_specification:A._specification}}}function nh(R){let A=null;if(R instanceof jn)A=nh(R.result);else if(R instanceof Fs){for(let F of R.args)if(A=nh(F),A)break}else(R instanceof _n||R instanceof ko)&&R.input instanceof Bl&&R.input.name==="zoom"&&(A=R);return A instanceof St||R.eachChild(F=>{let W=nh(F);W instanceof St?A=W:!A&&W?A=new St("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):A&&W&&A!==W&&(A=new St("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),A}function Ah(R){if(R===!0||R===!1)return!0;if(!Array.isArray(R)||R.length===0)return!1;switch(R[0]){case"has":return R.length>=2&&R[1]!=="$id"&&R[1]!=="$type";case"in":return R.length>=3&&(typeof R[1]!="string"||Array.isArray(R[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return R.length!==3||Array.isArray(R[1])||Array.isArray(R[2]);case"any":case"all":for(let A of R.slice(1))if(!Ah(A)&&typeof A!="boolean")return!1;return!0;default:return!0}}let zu={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function Fc(R){if(R==null)return{filter:()=>!0,needGeometry:!1};Ah(R)||(R=xf(R));let A=ks(R,zu);if(A.result==="error")throw new Error(A.value.map(F=>`${F.key}: ${F.message}`).join(", "));return{filter:(F,W,re)=>A.value.evaluate(F,W,{},re),needGeometry:bd(R)}}function wc(R,A){return RA?1:0}function bd(R){if(!Array.isArray(R))return!1;if(R[0]==="within"||R[0]==="distance")return!0;for(let A=1;A"||A==="<="||A===">="?Pf(R[1],R[2],A):A==="any"?(F=R.slice(1),["any"].concat(F.map(xf))):A==="all"?["all"].concat(R.slice(1).map(xf)):A==="none"?["all"].concat(R.slice(1).map(xf).map(jl)):A==="in"?Ou(R[1],R.slice(2)):A==="!in"?jl(Ou(R[1],R.slice(2))):A==="has"?bf(R[1]):A!=="!has"||jl(bf(R[1]));var F}function Pf(R,A,F){switch(R){case"$type":return[`filter-type-${F}`,A];case"$id":return[`filter-id-${F}`,A];default:return[`filter-${F}`,R,A]}}function Ou(R,A){if(A.length===0)return!1;switch(R){case"$type":return["filter-type-in",["literal",A]];case"$id":return["filter-id-in",["literal",A]];default:return A.length>200&&!A.some(F=>typeof F!=typeof A[0])?["filter-in-large",R,["literal",A.sort(wc)]]:["filter-in-small",R,["literal",A]]}}function bf(R){switch(R){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",R]}}function jl(R){return["!",R]}function lf(R){let A=typeof R;if(A==="number"||A==="boolean"||A==="string"||R==null)return JSON.stringify(R);if(Array.isArray(R)){let re="[";for(let fe of R)re+=`${lf(fe)},`;return`${re}]`}let F=Object.keys(R).sort(),W="{";for(let re=0;reW.maximum?[new cr(A,F,`${F} is greater than the maximum value ${W.maximum}`)]:[]}function wf(R){let A=R.valueSpec,F=Cs(R.value.type),W,re,fe,pe={},ze=F!=="categorical"&&R.value.property===void 0,Ke=!ze,ct=gs(R.value.stops)==="array"&&gs(R.value.stops[0])==="array"&&gs(R.value.stops[0][0])==="object",Lt=ku({key:R.key,value:R.value,valueSpec:R.styleSpec.function,validateSpec:R.validateSpec,style:R.style,styleSpec:R.styleSpec,objectElementValidators:{stops:function(mr){if(F==="identity")return[new cr(mr.key,mr.value,'identity function may not have a "stops" property')];let Pr=[],zr=mr.value;return Pr=Pr.concat(Wf({key:mr.key,value:zr,valueSpec:mr.valueSpec,validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec,arrayElementValidator:$t})),gs(zr)==="array"&&zr.length===0&&Pr.push(new cr(mr.key,zr,"array must have at least one stop")),Pr},default:function(mr){return mr.validateSpec({key:mr.key,value:mr.value,valueSpec:A,validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec})}}});return F==="identity"&&ze&&Lt.push(new cr(R.key,R.value,'missing required property "property"')),F==="identity"||R.value.stops||Lt.push(new cr(R.key,R.value,'missing required property "stops"')),F==="exponential"&&R.valueSpec.expression&&!Rc(R.valueSpec)&&Lt.push(new cr(R.key,R.value,"exponential functions not supported")),R.styleSpec.$version>=8&&(Ke&&!Nl(R.valueSpec)?Lt.push(new cr(R.key,R.value,"property functions not supported")):ze&&!Kc(R.valueSpec)&&Lt.push(new cr(R.key,R.value,"zoom functions not supported"))),F!=="categorical"&&!ct||R.value.property!==void 0||Lt.push(new cr(R.key,R.value,'"property" property is required')),Lt;function $t(mr){let Pr=[],zr=mr.value,ui=mr.key;if(gs(zr)!=="array")return[new cr(ui,zr,`array expected, ${gs(zr)} found`)];if(zr.length!==2)return[new cr(ui,zr,`array length 2 expected, length ${zr.length} found`)];if(ct){if(gs(zr[0])!=="object")return[new cr(ui,zr,`object expected, ${gs(zr[0])} found`)];if(zr[0].zoom===void 0)return[new cr(ui,zr,"object stop key must have zoom")];if(zr[0].value===void 0)return[new cr(ui,zr,"object stop key must have value")];if(fe&&fe>Cs(zr[0].zoom))return[new cr(ui,zr[0].zoom,"stop zoom values must appear in ascending order")];Cs(zr[0].zoom)!==fe&&(fe=Cs(zr[0].zoom),re=void 0,pe={}),Pr=Pr.concat(ku({key:`${ui}[0]`,value:zr[0],valueSpec:{zoom:{}},validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec,objectElementValidators:{zoom:Us,value:fr}}))}else Pr=Pr.concat(fr({key:`${ui}[0]`,value:zr[0],valueSpec:{},validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec},zr));return Dc(du(zr[1]))?Pr.concat([new cr(`${ui}[1]`,zr[1],"expressions are not allowed in function stops.")]):Pr.concat(mr.validateSpec({key:`${ui}[1]`,value:zr[1],valueSpec:A,validateSpec:mr.validateSpec,style:mr.style,styleSpec:mr.styleSpec}))}function fr(mr,Pr){let zr=gs(mr.value),ui=Cs(mr.value),yi=mr.value!==null?mr.value:Pr;if(W){if(zr!==W)return[new cr(mr.key,yi,`${zr} stop domain type must match previous stop domain type ${W}`)]}else W=zr;if(zr!=="number"&&zr!=="string"&&zr!=="boolean")return[new cr(mr.key,yi,"stop domain value must be a number, string, or boolean")];if(zr!=="number"&&F!=="categorical"){let vn=`number expected, ${zr} found`;return Nl(A)&&F===void 0&&(vn+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new cr(mr.key,yi,vn)]}return F!=="categorical"||zr!=="number"||isFinite(ui)&&Math.floor(ui)===ui?F!=="categorical"&&zr==="number"&&re!==void 0&&uinew cr(`${R.key}${W.key}`,R.value,W.message));let F=A.value.expression||A.value._styleExpression.expression;if(R.expressionContext==="property"&&R.propertyKey==="text-font"&&!F.outputDefined())return[new cr(R.key,R.value,`Invalid data expression for "${R.propertyKey}". Output values must be contained as literals within the expression.`)];if(R.expressionContext==="property"&&R.propertyType==="layout"&&!ju(F))return[new cr(R.key,R.value,'"feature-state" data expressions are not supported with layout properties.')];if(R.expressionContext==="filter"&&!ju(F))return[new cr(R.key,R.value,'"feature-state" data expressions are not supported with filters.')];if(R.expressionContext&&R.expressionContext.indexOf("cluster")===0){if(!Hf(F,["zoom","feature-state"]))return[new cr(R.key,R.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(R.expressionContext==="cluster-initial"&&!th(F))return[new cr(R.key,R.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function Wu(R){let A=R.key,F=R.value,W=R.valueSpec,re=[];return Array.isArray(W.values)?W.values.indexOf(Cs(F))===-1&&re.push(new cr(A,F,`expected one of [${W.values.join(", ")}], ${JSON.stringify(F)} found`)):Object.keys(W.values).indexOf(Cs(F))===-1&&re.push(new cr(A,F,`expected one of [${Object.keys(W.values).join(", ")}], ${JSON.stringify(F)} found`)),re}function Rf(R){return Ah(du(R.value))?zc($e({},R,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Xu(R)}function Xu(R){let A=R.value,F=R.key;if(gs(A)!=="array")return[new cr(F,A,`array expected, ${gs(A)} found`)];let W=R.styleSpec,re,fe=[];if(A.length<1)return[new cr(F,A,"filter array must have at least 1 element")];switch(fe=fe.concat(Wu({key:`${F}[0]`,value:A[0],valueSpec:W.filter_operator,style:R.style,styleSpec:R.styleSpec})),Cs(A[0])){case"<":case"<=":case">":case">=":A.length>=2&&Cs(A[1])==="$type"&&fe.push(new cr(F,A,`"$type" cannot be use with operator "${A[0]}"`));case"==":case"!=":A.length!==3&&fe.push(new cr(F,A,`filter array for operator "${A[0]}" must have 3 elements`));case"in":case"!in":A.length>=2&&(re=gs(A[1]),re!=="string"&&fe.push(new cr(`${F}[1]`,A[1],`string expected, ${re} found`)));for(let pe=2;pe{ct in F&&A.push(new cr(W,F[ct],`"${ct}" is prohibited for ref layers`))}),re.layers.forEach(ct=>{Cs(ct.id)===ze&&(Ke=ct)}),Ke?Ke.ref?A.push(new cr(W,F.ref,"ref cannot reference another ref layer")):pe=Cs(Ke.type):A.push(new cr(W,F.ref,`ref layer "${ze}" not found`))}else if(pe!=="background")if(F.source){let Ke=re.sources&&re.sources[F.source],ct=Ke&&Cs(Ke.type);Ke?ct==="vector"&&pe==="raster"?A.push(new cr(W,F.source,`layer "${F.id}" requires a raster source`)):ct!=="raster-dem"&&pe==="hillshade"?A.push(new cr(W,F.source,`layer "${F.id}" requires a raster-dem source`)):ct==="raster"&&pe!=="raster"?A.push(new cr(W,F.source,`layer "${F.id}" requires a vector source`)):ct!=="vector"||F["source-layer"]?ct==="raster-dem"&&pe!=="hillshade"?A.push(new cr(W,F.source,"raster-dem source can only be used with layer type 'hillshade'.")):pe!=="line"||!F.paint||!F.paint["line-gradient"]||ct==="geojson"&&Ke.lineMetrics||A.push(new cr(W,F,`layer "${F.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):A.push(new cr(W,F,`layer "${F.id}" must specify a "source-layer"`)):A.push(new cr(W,F.source,`source "${F.source}" not found`))}else A.push(new cr(W,F,'missing required property "source"'));return A=A.concat(ku({key:W,value:F,valueSpec:fe.layer,style:R.style,styleSpec:R.styleSpec,validateSpec:R.validateSpec,objectElementValidators:{"*":()=>[],type:()=>R.validateSpec({key:`${W}.type`,value:F.type,valueSpec:fe.layer.type,style:R.style,styleSpec:R.styleSpec,validateSpec:R.validateSpec,object:F,objectKey:"type"}),filter:Rf,layout:Ke=>ku({layer:F,key:Ke.key,value:Ke.value,style:Ke.style,styleSpec:Ke.styleSpec,validateSpec:Ke.validateSpec,objectElementValidators:{"*":ct=>Wl($e({layerType:pe},ct))}}),paint:Ke=>ku({layer:F,key:Ke.key,value:Ke.value,style:Ke.style,styleSpec:Ke.styleSpec,validateSpec:Ke.validateSpec,objectElementValidators:{"*":ct=>Xf($e({layerType:pe},ct))}})}})),A}function Zu(R){let A=R.value,F=R.key,W=gs(A);return W!=="string"?[new cr(F,A,`string expected, ${W} found`)]:[]}let Oc={promoteId:function({key:R,value:A}){if(gs(A)==="string")return Zu({key:R,value:A});{let F=[];for(let W in A)F.push(...Zu({key:`${R}.${W}`,value:A[W]}));return F}}};function Tc(R){let A=R.value,F=R.key,W=R.styleSpec,re=R.style,fe=R.validateSpec;if(!A.type)return[new cr(F,A,'"type" is required')];let pe=Cs(A.type),ze;switch(pe){case"vector":case"raster":return ze=ku({key:F,value:A,valueSpec:W[`source_${pe.replace("-","_")}`],style:R.style,styleSpec:W,objectElementValidators:Oc,validateSpec:fe}),ze;case"raster-dem":return ze=function(Ke){var ct;let Lt=(ct=Ke.sourceName)!==null&&ct!==void 0?ct:"",$t=Ke.value,fr=Ke.styleSpec,mr=fr.source_raster_dem,Pr=Ke.style,zr=[],ui=gs($t);if($t===void 0)return zr;if(ui!=="object")return zr.push(new cr("source_raster_dem",$t,`object expected, ${ui} found`)),zr;let yi=Cs($t.encoding)==="custom",vn=["redFactor","greenFactor","blueFactor","baseShift"],zi=Ke.value.encoding?`"${Ke.value.encoding}"`:"Default";for(let un in $t)!yi&&vn.includes(un)?zr.push(new cr(un,$t[un],`In "${Lt}": "${un}" is only valid when "encoding" is set to "custom". ${zi} encoding found`)):mr[un]?zr=zr.concat(Ke.validateSpec({key:un,value:$t[un],valueSpec:mr[un],validateSpec:Ke.validateSpec,style:Pr,styleSpec:fr})):zr.push(new cr(un,$t[un],`unknown property "${un}"`));return zr}({sourceName:F,value:A,style:R.style,styleSpec:W,validateSpec:fe}),ze;case"geojson":if(ze=ku({key:F,value:A,valueSpec:W.source_geojson,style:re,styleSpec:W,validateSpec:fe,objectElementValidators:Oc}),A.cluster)for(let Ke in A.clusterProperties){let[ct,Lt]=A.clusterProperties[Ke],$t=typeof ct=="string"?[ct,["accumulated"],["get",Ke]]:ct;ze.push(...zc({key:`${F}.${Ke}.map`,value:Lt,validateSpec:fe,expressionContext:"cluster-map"})),ze.push(...zc({key:`${F}.${Ke}.reduce`,value:$t,validateSpec:fe,expressionContext:"cluster-reduce"}))}return ze;case"video":return ku({key:F,value:A,valueSpec:W.source_video,style:re,validateSpec:fe,styleSpec:W});case"image":return ku({key:F,value:A,valueSpec:W.source_image,style:re,validateSpec:fe,styleSpec:W});case"canvas":return[new cr(F,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return Wu({key:`${F}.type`,value:A.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:re,validateSpec:fe,styleSpec:W})}}function wl(R){let A=R.value,F=R.styleSpec,W=F.light,re=R.style,fe=[],pe=gs(A);if(A===void 0)return fe;if(pe!=="object")return fe=fe.concat([new cr("light",A,`object expected, ${pe} found`)]),fe;for(let ze in A){let Ke=ze.match(/^(.*)-transition$/);fe=fe.concat(Ke&&W[Ke[1]]&&W[Ke[1]].transition?R.validateSpec({key:ze,value:A[ze],valueSpec:F.transition,validateSpec:R.validateSpec,style:re,styleSpec:F}):W[ze]?R.validateSpec({key:ze,value:A[ze],valueSpec:W[ze],validateSpec:R.validateSpec,style:re,styleSpec:F}):[new cr(ze,A[ze],`unknown property "${ze}"`)])}return fe}function vu(R){let A=R.value,F=R.styleSpec,W=F.sky,re=R.style,fe=gs(A);if(A===void 0)return[];if(fe!=="object")return[new cr("sky",A,`object expected, ${fe} found`)];let pe=[];for(let ze in A)pe=pe.concat(W[ze]?R.validateSpec({key:ze,value:A[ze],valueSpec:W[ze],style:re,styleSpec:F}):[new cr(ze,A[ze],`unknown property "${ze}"`)]);return pe}function qc(R){let A=R.value,F=R.styleSpec,W=F.terrain,re=R.style,fe=[],pe=gs(A);if(A===void 0)return fe;if(pe!=="object")return fe=fe.concat([new cr("terrain",A,`object expected, ${pe} found`)]),fe;for(let ze in A)fe=fe.concat(W[ze]?R.validateSpec({key:ze,value:A[ze],valueSpec:W[ze],validateSpec:R.validateSpec,style:re,styleSpec:F}):[new cr(ze,A[ze],`unknown property "${ze}"`)]);return fe}function cf(R){let A=[],F=R.value,W=R.key;if(Array.isArray(F)){let re=[],fe=[];for(let pe in F)F[pe].id&&re.includes(F[pe].id)&&A.push(new cr(W,F,`all the sprites' ids must be unique, but ${F[pe].id} is duplicated`)),re.push(F[pe].id),F[pe].url&&fe.includes(F[pe].url)&&A.push(new cr(W,F,`all the sprites' URLs must be unique, but ${F[pe].url} is duplicated`)),fe.push(F[pe].url),A=A.concat(ku({key:`${W}[${pe}]`,value:F[pe],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:R.validateSpec}));return A}return Zu({key:W,value:F})}let fc={"*":()=>[],array:Wf,boolean:function(R){let A=R.value,F=R.key,W=gs(A);return W!=="boolean"?[new cr(F,A,`boolean expected, ${W} found`)]:[]},number:Us,color:function(R){let A=R.key,F=R.value,W=gs(F);return W!=="string"?[new cr(A,F,`color expected, ${W} found`)]:nr.parse(String(F))?[]:[new cr(A,F,`color expected, "${F}" found`)]},constants:If,enum:Wu,filter:Rf,function:wf,layer:ah,object:ku,source:Tc,light:wl,sky:vu,terrain:qc,projection:function(R){let A=R.value,F=R.styleSpec,W=F.projection,re=R.style,fe=gs(A);if(A===void 0)return[];if(fe!=="object")return[new cr("projection",A,`object expected, ${fe} found`)];let pe=[];for(let ze in A)pe=pe.concat(W[ze]?R.validateSpec({key:ze,value:A[ze],valueSpec:W[ze],style:re,styleSpec:F}):[new cr(ze,A[ze],`unknown property "${ze}"`)]);return pe},string:Zu,formatted:function(R){return Zu(R).length===0?[]:zc(R)},resolvedImage:function(R){return Zu(R).length===0?[]:zc(R)},padding:function(R){let A=R.key,F=R.value;if(gs(F)==="array"){if(F.length<1||F.length>4)return[new cr(A,F,`padding requires 1 to 4 values; ${F.length} values found`)];let W={type:"number"},re=[];for(let fe=0;fe[]}})),R.constants&&(F=F.concat(If({key:"constants",value:R.constants,style:R,styleSpec:A,validateSpec:Bc}))),Ar(F)}function Cr(R){return function(A){return R(q1(mg({},A),{validateSpec:Bc}))}}function Ar(R){return[].concat(R).sort((A,F)=>A.line-F.line)}function Kr(R){return function(...A){return Ar(R.apply(this,A))}}Wt.source=Kr(Cr(Tc)),Wt.sprite=Kr(Cr(cf)),Wt.glyphs=Kr(Cr(At)),Wt.light=Kr(Cr(wl)),Wt.sky=Kr(Cr(vu)),Wt.terrain=Kr(Cr(qc)),Wt.layer=Kr(Cr(ah)),Wt.filter=Kr(Cr(Rf)),Wt.paintProperty=Kr(Cr(Xf)),Wt.layoutProperty=Kr(Cr(Wl));let ki=Wt,Xi=ki.light,dn=ki.sky,wn=ki.paintProperty,Nn=ki.layoutProperty;function Yi(R,A){let F=!1;if(A&&A.length)for(let W of A)R.fire(new ge(new Error(W.message))),F=!0;return F}class Qi{constructor(A,F,W){let re=this.cells=[];if(A instanceof ArrayBuffer){this.arrayBuffer=A;let pe=new Int32Array(this.arrayBuffer);A=pe[0],this.d=(F=pe[1])+2*(W=pe[2]);for(let Ke=0;Ke=$t[Pr+0]&&re>=$t[Pr+1])?(ze[mr]=!0,pe.push(Lt[mr])):ze[mr]=!1}}}}_forEachCell(A,F,W,re,fe,pe,ze,Ke){let ct=this._convertToCellCoord(A),Lt=this._convertToCellCoord(F),$t=this._convertToCellCoord(W),fr=this._convertToCellCoord(re);for(let mr=ct;mr<=$t;mr++)for(let Pr=Lt;Pr<=fr;Pr++){let zr=this.d*Pr+mr;if((!Ke||Ke(this._convertFromCellCoord(mr),this._convertFromCellCoord(Pr),this._convertFromCellCoord(mr+1),this._convertFromCellCoord(Pr+1)))&&fe.call(this,A,F,W,re,zr,pe,ze,Ke))return}}_convertFromCellCoord(A){return(A-this.padding)/this.scale}_convertToCellCoord(A){return Math.max(0,Math.min(this.d-1,Math.floor(A*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;let A=this.cells,F=3+this.cells.length+1+1,W=0;for(let pe=0;pe=0)continue;let pe=R[fe];re[fe]=on[F].shallow.indexOf(fe)>=0?pe:La(pe,A)}R instanceof Error&&(re.message=R.message)}if(re.$name)throw new Error("$name property is reserved for worker serialization logic.");return F!=="Object"&&(re.$name=F),re}function Na(R){if(Ra(R))return R;if(Array.isArray(R))return R.map(Na);if(typeof R!="object")throw new Error("can't deserialize object of type "+typeof R);let A=Ca(R)||"Object";if(!on[A])throw new Error(`can't deserialize unregistered class ${A}`);let{klass:F}=on[A];if(!F)throw new Error(`can't deserialize unregistered class ${A}`);if(F.deserialize)return F.deserialize(R);let W=Object.create(F.prototype);for(let re of Object.keys(R)){if(re==="$name")continue;let fe=R[re];W[re]=on[A].shallow.indexOf(re)>=0?fe:Na(fe)}return W}class Yn{constructor(){this.first=!0}update(A,F){let W=Math.floor(A);return this.first?(this.first=!1,this.lastIntegerZoom=W,this.lastIntegerZoomTime=0,this.lastZoom=A,this.lastFloorZoom=W,!0):(this.lastFloorZoom>W?(this.lastIntegerZoom=W+1,this.lastIntegerZoomTime=F):this.lastFloorZoomR>=128&&R<=255,"Hangul Jamo":R=>R>=4352&&R<=4607,Khmer:R=>R>=6016&&R<=6143,"General Punctuation":R=>R>=8192&&R<=8303,"Letterlike Symbols":R=>R>=8448&&R<=8527,"Number Forms":R=>R>=8528&&R<=8591,"Miscellaneous Technical":R=>R>=8960&&R<=9215,"Control Pictures":R=>R>=9216&&R<=9279,"Optical Character Recognition":R=>R>=9280&&R<=9311,"Enclosed Alphanumerics":R=>R>=9312&&R<=9471,"Geometric Shapes":R=>R>=9632&&R<=9727,"Miscellaneous Symbols":R=>R>=9728&&R<=9983,"Miscellaneous Symbols and Arrows":R=>R>=11008&&R<=11263,"Ideographic Description Characters":R=>R>=12272&&R<=12287,"CJK Symbols and Punctuation":R=>R>=12288&&R<=12351,Katakana:R=>R>=12448&&R<=12543,Kanbun:R=>R>=12688&&R<=12703,"CJK Strokes":R=>R>=12736&&R<=12783,"Enclosed CJK Letters and Months":R=>R>=12800&&R<=13055,"CJK Compatibility":R=>R>=13056&&R<=13311,"Yijing Hexagram Symbols":R=>R>=19904&&R<=19967,"Private Use Area":R=>R>=57344&&R<=63743,"Vertical Forms":R=>R>=65040&&R<=65055,"CJK Compatibility Forms":R=>R>=65072&&R<=65103,"Small Form Variants":R=>R>=65104&&R<=65135,"Halfwidth and Fullwidth Forms":R=>R>=65280&&R<=65519};function Ka(R){for(let A of R)if(Ho(A.charCodeAt(0)))return!0;return!1}function bo(R){for(let A of R)if(!as(A.charCodeAt(0)))return!1;return!0}function Xo(R){let A=R.map(F=>{try{return new RegExp(`\\p{sc=${F}}`,"u").source}catch(W){return null}}).filter(F=>F);return new RegExp(A.join("|"),"u")}let Ss=Xo(["Arab","Dupl","Mong","Ougr","Syrc"]);function as(R){return!Ss.test(String.fromCodePoint(R))}let ws=Xo(["Bopo","Hani","Hira","Kana","Kits","Nshu","Tang","Yiii"]);function Ho(R){return!(R!==746&&R!==747&&(R<4352||!(Dn["CJK Compatibility Forms"](R)&&!(R>=65097&&R<=65103)||Dn["CJK Compatibility"](R)||Dn["CJK Strokes"](R)||!(!Dn["CJK Symbols and Punctuation"](R)||R>=12296&&R<=12305||R>=12308&&R<=12319||R===12336)||Dn["Enclosed CJK Letters and Months"](R)||Dn["Ideographic Description Characters"](R)||Dn.Kanbun(R)||Dn.Katakana(R)&&R!==12540||!(!Dn["Halfwidth and Fullwidth Forms"](R)||R===65288||R===65289||R===65293||R>=65306&&R<=65310||R===65339||R===65341||R===65343||R>=65371&&R<=65503||R===65507||R>=65512&&R<=65519)||!(!Dn["Small Form Variants"](R)||R>=65112&&R<=65118||R>=65123&&R<=65126)||Dn["Vertical Forms"](R)||Dn["Yijing Hexagram Symbols"](R)||new RegExp("\\p{sc=Cans}","u").test(String.fromCodePoint(R))||new RegExp("\\p{sc=Hang}","u").test(String.fromCodePoint(R))||ws.test(String.fromCodePoint(R)))))}function ml(R){return!(Ho(R)||function(A){return!!(Dn["Latin-1 Supplement"](A)&&(A===167||A===169||A===174||A===177||A===188||A===189||A===190||A===215||A===247)||Dn["General Punctuation"](A)&&(A===8214||A===8224||A===8225||A===8240||A===8241||A===8251||A===8252||A===8258||A===8263||A===8264||A===8265||A===8273)||Dn["Letterlike Symbols"](A)||Dn["Number Forms"](A)||Dn["Miscellaneous Technical"](A)&&(A>=8960&&A<=8967||A>=8972&&A<=8991||A>=8996&&A<=9e3||A===9003||A>=9085&&A<=9114||A>=9150&&A<=9165||A===9167||A>=9169&&A<=9179||A>=9186&&A<=9215)||Dn["Control Pictures"](A)&&A!==9251||Dn["Optical Character Recognition"](A)||Dn["Enclosed Alphanumerics"](A)||Dn["Geometric Shapes"](A)||Dn["Miscellaneous Symbols"](A)&&!(A>=9754&&A<=9759)||Dn["Miscellaneous Symbols and Arrows"](A)&&(A>=11026&&A<=11055||A>=11088&&A<=11097||A>=11192&&A<=11243)||Dn["CJK Symbols and Punctuation"](A)||Dn.Katakana(A)||Dn["Private Use Area"](A)||Dn["CJK Compatibility Forms"](A)||Dn["Small Form Variants"](A)||Dn["Halfwidth and Fullwidth Forms"](A)||A===8734||A===8756||A===8757||A>=9984&&A<=10087||A>=10102&&A<=10131||A===65532||A===65533)}(R))}let Ws=Xo(["Adlm","Arab","Armi","Avst","Chrs","Cprt","Egyp","Elym","Gara","Hatr","Hebr","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogo","Syrc","Thaa","Todr","Yezi"]);function Ls(R){return Ws.test(String.fromCodePoint(R))}function va(R,A){return!(!A&&Ls(R)||R>=2304&&R<=3583||R>=3840&&R<=4255||Dn.Khmer(R))}function no(R){for(let A of R)if(Ls(A.charCodeAt(0)))return!0;return!1}let ys=new class{constructor(){this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus="unavailable",this.pluginURL=null}setState(R){this.pluginStatus=R.pluginStatus,this.pluginURL=R.pluginURL}getState(){return{pluginStatus:this.pluginStatus,pluginURL:this.pluginURL}}setMethods(R){this.applyArabicShaping=R.applyArabicShaping,this.processBidirectionalText=R.processBidirectionalText,this.processStyledBidirectionalText=R.processStyledBidirectionalText}isParsed(){return this.applyArabicShaping!=null&&this.processBidirectionalText!=null&&this.processStyledBidirectionalText!=null}getPluginURL(){return this.pluginURL}getRTLTextPluginStatus(){return this.pluginStatus}};class rs{constructor(A,F){this.zoom=A,F?(this.now=F.now,this.fadeDuration=F.fadeDuration,this.zoomHistory=F.zoomHistory,this.transition=F.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Yn,this.transition={})}isSupportedScript(A){return function(F,W){for(let re of F)if(!va(re.charCodeAt(0),W))return!1;return!0}(A,ys.getRTLTextPluginStatus()==="loaded")}crossFadingFactor(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){let A=this.zoom,F=A-Math.floor(A),W=this.crossFadingFactor();return A>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:F+(1-F)*W}:{fromScale:.5,toScale:1,t:1-(1-W)*F}}}class $l{constructor(A,F){this.property=A,this.value=F,this.expression=function(W,re){if(jf(W))return new nl(W,re);if(Dc(W)){let fe=_u(W,re);if(fe.result==="error")throw new Error(fe.value.map(pe=>`${pe.key}: ${pe.message}`).join(", "));return fe.value}{let fe=W;return re.type==="color"&&typeof W=="string"?fe=nr.parse(W):re.type!=="padding"||typeof W!="number"&&!Array.isArray(W)?re.type==="variableAnchorOffsetCollection"&&Array.isArray(W)&&(fe=$i.parse(W)):fe=Qr.parse(W),{kind:"constant",evaluate:()=>fe}}}(F===void 0?A.specification.default:F,A.specification)}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite"}possiblyEvaluate(A,F,W){return this.property.possiblyEvaluate(this,A,F,W)}}class Cu{constructor(A){this.property=A,this.value=new $l(A,void 0)}transitioned(A,F){return new Nc(this.property,this.value,F,L({},A.transition,this.transition),A.now)}untransitioned(){return new Nc(this.property,this.value,null,{},0)}}class Yu{constructor(A){this._properties=A,this._values=Object.create(A.defaultTransitionablePropertyValues)}getValue(A){return g(this._values[A].value.value)}setValue(A,F){Object.prototype.hasOwnProperty.call(this._values,A)||(this._values[A]=new Cu(this._values[A].property)),this._values[A].value=new $l(this._values[A].property,F===null?void 0:g(F))}getTransition(A){return g(this._values[A].transition)}setTransition(A,F){Object.prototype.hasOwnProperty.call(this._values,A)||(this._values[A]=new Cu(this._values[A].property)),this._values[A].transition=g(F)||void 0}serialize(){let A={};for(let F of Object.keys(this._values)){let W=this.getValue(F);W!==void 0&&(A[F]=W);let re=this.getTransition(F);re!==void 0&&(A[`${F}-transition`]=re)}return A}transitioned(A,F){let W=new pu(this._properties);for(let re of Object.keys(this._values))W._values[re]=this._values[re].transitioned(A,F._values[re]);return W}untransitioned(){let A=new pu(this._properties);for(let F of Object.keys(this._values))A._values[F]=this._values[F].untransitioned();return A}}class Nc{constructor(A,F,W,re,fe){this.property=A,this.value=F,this.begin=fe+re.delay||0,this.end=this.begin+re.duration||0,A.specification.transition&&(re.delay||re.duration)&&(this.prior=W)}possiblyEvaluate(A,F,W){let re=A.now||0,fe=this.value.possiblyEvaluate(A,F,W),pe=this.prior;if(pe){if(re>this.end)return this.prior=null,fe;if(this.value.isDataDriven())return this.prior=null,fe;if(re=1)return 1;let ct=Ke*Ke,Lt=ct*Ke;return 4*(Ke<.5?Lt:3*(Ke-ct)+Lt-.75)}(ze))}}return fe}}class pu{constructor(A){this._properties=A,this._values=Object.create(A.defaultTransitioningPropertyValues)}possiblyEvaluate(A,F,W){let re=new Ac(this._properties);for(let fe of Object.keys(this._values))re._values[fe]=this._values[fe].possiblyEvaluate(A,F,W);return re}hasTransition(){for(let A of Object.keys(this._values))if(this._values[A].prior)return!0;return!1}}class Uc{constructor(A){this._properties=A,this._values=Object.create(A.defaultPropertyValues)}hasValue(A){return this._values[A].value!==void 0}getValue(A){return g(this._values[A].value)}setValue(A,F){this._values[A]=new $l(this._values[A].property,F===null?void 0:g(F))}serialize(){let A={};for(let F of Object.keys(this._values)){let W=this.getValue(F);W!==void 0&&(A[F]=W)}return A}possiblyEvaluate(A,F,W){let re=new Ac(this._properties);for(let fe of Object.keys(this._values))re._values[fe]=this._values[fe].possiblyEvaluate(A,F,W);return re}}class xu{constructor(A,F,W){this.property=A,this.value=F,this.parameters=W}isConstant(){return this.value.kind==="constant"}constantOr(A){return this.value.kind==="constant"?this.value.value:A}evaluate(A,F,W,re){return this.property.evaluate(this.value,this.parameters,A,F,W,re)}}class Ac{constructor(A){this._properties=A,this._values=Object.create(A.defaultPossiblyEvaluatedValues)}get(A){return this._values[A]}}class Ua{constructor(A){this.specification=A}possiblyEvaluate(A,F){if(A.isDataDriven())throw new Error("Value should not be data driven");return A.expression.evaluate(F)}interpolate(A,F,W){let re=Lo[this.specification.type];return re?re(A,F,W):A}}class oo{constructor(A,F){this.specification=A,this.overrides=F}possiblyEvaluate(A,F,W,re){return new xu(this,A.expression.kind==="constant"||A.expression.kind==="camera"?{kind:"constant",value:A.expression.evaluate(F,null,{},W,re)}:A.expression,F)}interpolate(A,F,W){if(A.value.kind!=="constant"||F.value.kind!=="constant")return A;if(A.value.value===void 0||F.value.value===void 0)return new xu(this,{kind:"constant",value:void 0},A.parameters);let re=Lo[this.specification.type];if(re){let fe=re(A.value.value,F.value.value,W);return new xu(this,{kind:"constant",value:fe},A.parameters)}return A}evaluate(A,F,W,re,fe,pe){return A.kind==="constant"?A.value:A.evaluate(F,W,re,fe,pe)}}class Vc extends oo{possiblyEvaluate(A,F,W,re){if(A.value===void 0)return new xu(this,{kind:"constant",value:void 0},F);if(A.expression.kind==="constant"){let fe=A.expression.evaluate(F,null,{},W,re),pe=A.property.specification.type==="resolvedImage"&&typeof fe!="string"?fe.name:fe,ze=this._calculate(pe,pe,pe,F);return new xu(this,{kind:"constant",value:ze},F)}if(A.expression.kind==="camera"){let fe=this._calculate(A.expression.evaluate({zoom:F.zoom-1}),A.expression.evaluate({zoom:F.zoom}),A.expression.evaluate({zoom:F.zoom+1}),F);return new xu(this,{kind:"constant",value:fe},F)}return new xu(this,A.expression,F)}evaluate(A,F,W,re,fe,pe){if(A.kind==="source"){let ze=A.evaluate(F,W,re,fe,pe);return this._calculate(ze,ze,ze,F)}return A.kind==="composite"?this._calculate(A.evaluate({zoom:Math.floor(F.zoom)-1},W,re),A.evaluate({zoom:Math.floor(F.zoom)},W,re),A.evaluate({zoom:Math.floor(F.zoom)+1},W,re),F):A.value}_calculate(A,F,W,re){return re.zoom>re.zoomHistory.lastIntegerZoom?{from:A,to:F}:{from:W,to:F}}interpolate(A){return A}}class hc{constructor(A){this.specification=A}possiblyEvaluate(A,F,W,re){if(A.value!==void 0){if(A.expression.kind==="constant"){let fe=A.expression.evaluate(F,null,{},W,re);return this._calculate(fe,fe,fe,F)}return this._calculate(A.expression.evaluate(new rs(Math.floor(F.zoom-1),F)),A.expression.evaluate(new rs(Math.floor(F.zoom),F)),A.expression.evaluate(new rs(Math.floor(F.zoom+1),F)),F)}}_calculate(A,F,W,re){return re.zoom>re.zoomHistory.lastIntegerZoom?{from:A,to:F}:{from:W,to:F}}interpolate(A){return A}}class Ku{constructor(A){this.specification=A}possiblyEvaluate(A,F,W,re){return!!A.expression.evaluate(F,null,{},W,re)}interpolate(){return!1}}class ue{constructor(A){this.properties=A,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(let F in A){let W=A[F];W.specification.overridable&&this.overridableProperties.push(F);let re=this.defaultPropertyValues[F]=new $l(W,void 0),fe=this.defaultTransitionablePropertyValues[F]=new Cu(W);this.defaultTransitioningPropertyValues[F]=fe.untransitioned(),this.defaultPossiblyEvaluatedValues[F]=re.possiblyEvaluate({})}}}Fi("DataDrivenProperty",oo),Fi("DataConstantProperty",Ua),Fi("CrossFadedDataDrivenProperty",Vc),Fi("CrossFadedProperty",hc),Fi("ColorRampProperty",Ku);let w="-transition";class B extends Re{constructor(A,F){if(super(),this.id=A.id,this.type=A.type,this._featureFilter={filter:()=>!0,needGeometry:!1},A.type!=="custom"&&(this.metadata=A.metadata,this.minzoom=A.minzoom,this.maxzoom=A.maxzoom,A.type!=="background"&&(this.source=A.source,this.sourceLayer=A["source-layer"],this.filter=A.filter),F.layout&&(this._unevaluatedLayout=new Uc(F.layout)),F.paint)){this._transitionablePaint=new Yu(F.paint);for(let W in A.paint)this.setPaintProperty(W,A.paint[W],{validate:!1});for(let W in A.layout)this.setLayoutProperty(W,A.layout[W],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Ac(F.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(A){return A==="visibility"?this.visibility:this._unevaluatedLayout.getValue(A)}setLayoutProperty(A,F,W={}){F!=null&&this._validate(Nn,`layers.${this.id}.layout.${A}`,A,F,W)||(A!=="visibility"?this._unevaluatedLayout.setValue(A,F):this.visibility=F)}getPaintProperty(A){return A.endsWith(w)?this._transitionablePaint.getTransition(A.slice(0,-11)):this._transitionablePaint.getValue(A)}setPaintProperty(A,F,W={}){if(F!=null&&this._validate(wn,`layers.${this.id}.paint.${A}`,A,F,W))return!1;if(A.endsWith(w))return this._transitionablePaint.setTransition(A.slice(0,-11),F||void 0),!1;{let re=this._transitionablePaint._values[A],fe=re.property.specification["property-type"]==="cross-faded-data-driven",pe=re.value.isDataDriven(),ze=re.value;this._transitionablePaint.setValue(A,F),this._handleSpecialPaintPropertyUpdate(A);let Ke=this._transitionablePaint._values[A].value;return Ke.isDataDriven()||pe||fe||this._handleOverridablePaintPropertyUpdate(A,ze,Ke)}}_handleSpecialPaintPropertyUpdate(A){}_handleOverridablePaintPropertyUpdate(A,F,W){return!1}isHidden(A){return!!(this.minzoom&&A=this.maxzoom)||this.visibility==="none"}updateTransitions(A){this._transitioningPaint=this._transitionablePaint.transitioned(A,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(A,F){A.getCrossfadeParameters&&(this._crossfadeParameters=A.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(A,void 0,F)),this.paint=this._transitioningPaint.possiblyEvaluate(A,void 0,F)}serialize(){let A={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(A.layout=A.layout||{},A.layout.visibility=this.visibility),M(A,(F,W)=>!(F===void 0||W==="layout"&&!Object.keys(F).length||W==="paint"&&!Object.keys(F).length))}_validate(A,F,W,re,fe={}){return(!fe||fe.validate!==!1)&&Yi(this,A.call(ki,{key:F,layerType:this.type,objectKey:W,value:re,styleSpec:ce,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(let A in this.paint._values){let F=this.paint.get(A);if(F instanceof xu&&Nl(F.property.specification)&&(F.value.kind==="source"||F.value.kind==="composite")&&F.value.isStateDependent)return!0}return!1}}let Q={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class ee{constructor(A,F){this._structArray=A,this._pos1=F*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class le{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(A,F){return A._trim(),F&&(A.isTransferred=!0,F.push(A.arrayBuffer)),{length:A.length,arrayBuffer:A.arrayBuffer}}static deserialize(A){let F=Object.create(this.prototype);return F.arrayBuffer=A.arrayBuffer,F.length=A.length,F.capacity=A.arrayBuffer.byteLength/F.bytesPerElement,F._refreshViews(),F}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(A){this.reserve(A),this.length=A}reserve(A){if(A>this.capacity){this.capacity=Math.max(A,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);let F=this.uint8;this._refreshViews(),F&&this.uint8.set(F)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function qe(R,A=1){let F=0,W=0;return{members:R.map(re=>{let fe=Q[re.type].BYTES_PER_ELEMENT,pe=F=Xe(F,Math.max(A,fe)),ze=re.components||1;return W=Math.max(W,fe),F+=fe*ze,{name:re.name,type:re.type,components:ze,offset:pe}}),size:Xe(F,Math.max(W,A)),alignment:A}}function Xe(R,A){return Math.ceil(R/A)*A}class ot extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F){let W=this.length;return this.resize(W+1),this.emplace(W,A,F)}emplace(A,F,W){let re=2*A;return this.int16[re+0]=F,this.int16[re+1]=W,A}}ot.prototype.bytesPerElement=4,Fi("StructArrayLayout2i4",ot);class Tt extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W){let re=this.length;return this.resize(re+1),this.emplace(re,A,F,W)}emplace(A,F,W,re){let fe=3*A;return this.int16[fe+0]=F,this.int16[fe+1]=W,this.int16[fe+2]=re,A}}Tt.prototype.bytesPerElement=6,Fi("StructArrayLayout3i6",Tt);class Yt extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,re){let fe=this.length;return this.resize(fe+1),this.emplace(fe,A,F,W,re)}emplace(A,F,W,re,fe){let pe=4*A;return this.int16[pe+0]=F,this.int16[pe+1]=W,this.int16[pe+2]=re,this.int16[pe+3]=fe,A}}Yt.prototype.bytesPerElement=8,Fi("StructArrayLayout4i8",Yt);class Kt extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,A,F,W,re,fe,pe)}emplace(A,F,W,re,fe,pe,ze){let Ke=6*A;return this.int16[Ke+0]=F,this.int16[Ke+1]=W,this.int16[Ke+2]=re,this.int16[Ke+3]=fe,this.int16[Ke+4]=pe,this.int16[Ke+5]=ze,A}}Kt.prototype.bytesPerElement=12,Fi("StructArrayLayout2i4i12",Kt);class xr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,A,F,W,re,fe,pe)}emplace(A,F,W,re,fe,pe,ze){let Ke=4*A,ct=8*A;return this.int16[Ke+0]=F,this.int16[Ke+1]=W,this.uint8[ct+4]=re,this.uint8[ct+5]=fe,this.uint8[ct+6]=pe,this.uint8[ct+7]=ze,A}}xr.prototype.bytesPerElement=8,Fi("StructArrayLayout2i4ub8",xr);class Ir extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F){let W=this.length;return this.resize(W+1),this.emplace(W,A,F)}emplace(A,F,W){let re=2*A;return this.float32[re+0]=F,this.float32[re+1]=W,A}}Ir.prototype.bytesPerElement=8,Fi("StructArrayLayout2f8",Ir);class ve extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe,ze,Ke,ct,Lt){let $t=this.length;return this.resize($t+1),this.emplace($t,A,F,W,re,fe,pe,ze,Ke,ct,Lt)}emplace(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t){let fr=10*A;return this.uint16[fr+0]=F,this.uint16[fr+1]=W,this.uint16[fr+2]=re,this.uint16[fr+3]=fe,this.uint16[fr+4]=pe,this.uint16[fr+5]=ze,this.uint16[fr+6]=Ke,this.uint16[fr+7]=ct,this.uint16[fr+8]=Lt,this.uint16[fr+9]=$t,A}}ve.prototype.bytesPerElement=20,Fi("StructArrayLayout10ui20",ve);class be extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr){let mr=this.length;return this.resize(mr+1),this.emplace(mr,A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr)}emplace(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr){let Pr=12*A;return this.int16[Pr+0]=F,this.int16[Pr+1]=W,this.int16[Pr+2]=re,this.int16[Pr+3]=fe,this.uint16[Pr+4]=pe,this.uint16[Pr+5]=ze,this.uint16[Pr+6]=Ke,this.uint16[Pr+7]=ct,this.int16[Pr+8]=Lt,this.int16[Pr+9]=$t,this.int16[Pr+10]=fr,this.int16[Pr+11]=mr,A}}be.prototype.bytesPerElement=24,Fi("StructArrayLayout4i4ui4i24",be);class De extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W){let re=this.length;return this.resize(re+1),this.emplace(re,A,F,W)}emplace(A,F,W,re){let fe=3*A;return this.float32[fe+0]=F,this.float32[fe+1]=W,this.float32[fe+2]=re,A}}De.prototype.bytesPerElement=12,Fi("StructArrayLayout3f12",De);class Be extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(A){let F=this.length;return this.resize(F+1),this.emplace(F,A)}emplace(A,F){return this.uint32[1*A+0]=F,A}}Be.prototype.bytesPerElement=4,Fi("StructArrayLayout1ul4",Be);class et extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe,ze,Ke,ct){let Lt=this.length;return this.resize(Lt+1),this.emplace(Lt,A,F,W,re,fe,pe,ze,Ke,ct)}emplace(A,F,W,re,fe,pe,ze,Ke,ct,Lt){let $t=10*A,fr=5*A;return this.int16[$t+0]=F,this.int16[$t+1]=W,this.int16[$t+2]=re,this.int16[$t+3]=fe,this.int16[$t+4]=pe,this.int16[$t+5]=ze,this.uint32[fr+3]=Ke,this.uint16[$t+8]=ct,this.uint16[$t+9]=Lt,A}}et.prototype.bytesPerElement=20,Fi("StructArrayLayout6i1ul2ui20",et);class We extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,A,F,W,re,fe,pe)}emplace(A,F,W,re,fe,pe,ze){let Ke=6*A;return this.int16[Ke+0]=F,this.int16[Ke+1]=W,this.int16[Ke+2]=re,this.int16[Ke+3]=fe,this.int16[Ke+4]=pe,this.int16[Ke+5]=ze,A}}We.prototype.bytesPerElement=12,Fi("StructArrayLayout2i2i2i12",We);class it extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe){let pe=this.length;return this.resize(pe+1),this.emplace(pe,A,F,W,re,fe)}emplace(A,F,W,re,fe,pe){let ze=4*A,Ke=8*A;return this.float32[ze+0]=F,this.float32[ze+1]=W,this.float32[ze+2]=re,this.int16[Ke+6]=fe,this.int16[Ke+7]=pe,A}}it.prototype.bytesPerElement=16,Fi("StructArrayLayout2f1f2i16",it);class Ft extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe){let ze=this.length;return this.resize(ze+1),this.emplace(ze,A,F,W,re,fe,pe)}emplace(A,F,W,re,fe,pe,ze){let Ke=16*A,ct=4*A,Lt=8*A;return this.uint8[Ke+0]=F,this.uint8[Ke+1]=W,this.float32[ct+1]=re,this.float32[ct+2]=fe,this.int16[Lt+6]=pe,this.int16[Lt+7]=ze,A}}Ft.prototype.bytesPerElement=16,Fi("StructArrayLayout2ub2f2i16",Ft);class Ht extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W){let re=this.length;return this.resize(re+1),this.emplace(re,A,F,W)}emplace(A,F,W,re){let fe=3*A;return this.uint16[fe+0]=F,this.uint16[fe+1]=W,this.uint16[fe+2]=re,A}}Ht.prototype.bytesPerElement=6,Fi("StructArrayLayout3ui6",Ht);class tr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi){let vn=this.length;return this.resize(vn+1),this.emplace(vn,A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi)}emplace(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn){let zi=24*A,un=12*A,Tn=48*A;return this.int16[zi+0]=F,this.int16[zi+1]=W,this.uint16[zi+2]=re,this.uint16[zi+3]=fe,this.uint32[un+2]=pe,this.uint32[un+3]=ze,this.uint32[un+4]=Ke,this.uint16[zi+10]=ct,this.uint16[zi+11]=Lt,this.uint16[zi+12]=$t,this.float32[un+7]=fr,this.float32[un+8]=mr,this.uint8[Tn+36]=Pr,this.uint8[Tn+37]=zr,this.uint8[Tn+38]=ui,this.uint32[un+10]=yi,this.int16[zi+22]=vn,A}}tr.prototype.bytesPerElement=48,Fi("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",tr);class dr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn,zi,un,Tn,pa,ro,Vo,Xa,sa,Mo,fo){let lo=this.length;return this.resize(lo+1),this.emplace(lo,A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn,zi,un,Tn,pa,ro,Vo,Xa,sa,Mo,fo)}emplace(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr,ui,yi,vn,zi,un,Tn,pa,ro,Vo,Xa,sa,Mo,fo,lo){let Xn=32*A,Ro=16*A;return this.int16[Xn+0]=F,this.int16[Xn+1]=W,this.int16[Xn+2]=re,this.int16[Xn+3]=fe,this.int16[Xn+4]=pe,this.int16[Xn+5]=ze,this.int16[Xn+6]=Ke,this.int16[Xn+7]=ct,this.uint16[Xn+8]=Lt,this.uint16[Xn+9]=$t,this.uint16[Xn+10]=fr,this.uint16[Xn+11]=mr,this.uint16[Xn+12]=Pr,this.uint16[Xn+13]=zr,this.uint16[Xn+14]=ui,this.uint16[Xn+15]=yi,this.uint16[Xn+16]=vn,this.uint16[Xn+17]=zi,this.uint16[Xn+18]=un,this.uint16[Xn+19]=Tn,this.uint16[Xn+20]=pa,this.uint16[Xn+21]=ro,this.uint16[Xn+22]=Vo,this.uint32[Ro+12]=Xa,this.float32[Ro+13]=sa,this.float32[Ro+14]=Mo,this.uint16[Xn+30]=fo,this.uint16[Xn+31]=lo,A}}dr.prototype.bytesPerElement=64,Fi("StructArrayLayout8i15ui1ul2f2ui64",dr);class Sr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A){let F=this.length;return this.resize(F+1),this.emplace(F,A)}emplace(A,F){return this.float32[1*A+0]=F,A}}Sr.prototype.bytesPerElement=4,Fi("StructArrayLayout1f4",Sr);class Or extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W){let re=this.length;return this.resize(re+1),this.emplace(re,A,F,W)}emplace(A,F,W,re){let fe=3*A;return this.uint16[6*A+0]=F,this.float32[fe+1]=W,this.float32[fe+2]=re,A}}Or.prototype.bytesPerElement=12,Fi("StructArrayLayout1ui2f12",Or);class Wr extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F,W){let re=this.length;return this.resize(re+1),this.emplace(re,A,F,W)}emplace(A,F,W,re){let fe=4*A;return this.uint32[2*A+0]=F,this.uint16[fe+2]=W,this.uint16[fe+3]=re,A}}Wr.prototype.bytesPerElement=8,Fi("StructArrayLayout1ul2ui8",Wr);class ni extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A,F){let W=this.length;return this.resize(W+1),this.emplace(W,A,F)}emplace(A,F,W){let re=2*A;return this.uint16[re+0]=F,this.uint16[re+1]=W,A}}ni.prototype.bytesPerElement=4,Fi("StructArrayLayout2ui4",ni);class Pi extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(A){let F=this.length;return this.resize(F+1),this.emplace(F,A)}emplace(A,F){return this.uint16[1*A+0]=F,A}}Pi.prototype.bytesPerElement=2,Fi("StructArrayLayout1ui2",Pi);class cn extends le{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(A,F,W,re){let fe=this.length;return this.resize(fe+1),this.emplace(fe,A,F,W,re)}emplace(A,F,W,re,fe){let pe=4*A;return this.float32[pe+0]=F,this.float32[pe+1]=W,this.float32[pe+2]=re,this.float32[pe+3]=fe,A}}cn.prototype.bytesPerElement=16,Fi("StructArrayLayout4f16",cn);class ln extends ee{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new u(this.anchorPointX,this.anchorPointY)}}ln.prototype.size=20;class Cn extends et{get(A){return new ln(this,A)}}Fi("CollisionBoxArray",Cn);class Kn extends ee{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(A){this._structArray.uint8[this._pos1+37]=A}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(A){this._structArray.uint8[this._pos1+38]=A}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(A){this._structArray.uint32[this._pos4+10]=A}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}Kn.prototype.size=48;class Ta extends tr{get(A){return new Kn(this,A)}}Fi("PlacedSymbolArray",Ta);class fa extends ee{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(A){this._structArray.uint32[this._pos4+12]=A}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14]}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30]}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31]}}fa.prototype.size=64;class $a extends dr{get(A){return new fa(this,A)}}Fi("SymbolInstanceArray",$a);class Co extends Sr{getoffsetX(A){return this.float32[1*A+0]}}Fi("GlyphOffsetArray",Co);class Qa extends Tt{getx(A){return this.int16[3*A+0]}gety(A){return this.int16[3*A+1]}gettileUnitDistanceFromAnchor(A){return this.int16[3*A+2]}}Fi("SymbolLineVertexArray",Qa);class mo extends ee{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}mo.prototype.size=12;class Bo extends Or{get(A){return new mo(this,A)}}Fi("TextAnchorOffsetArray",Bo);class Ps extends ee{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}Ps.prototype.size=8;class Ts extends Wr{get(A){return new Ps(this,A)}}Fi("FeatureIndexArray",Ts);class wo extends ot{}class To extends ot{}class hl extends ot{}class Ul extends Kt{}class Lu extends xr{}class au extends Ir{}class Js extends ve{}class Ql extends be{}class dc extends De{}class Tl extends Be{}class Al extends We{}class X extends Ft{}class se extends Ht{}class Te extends ni{}let Ne=qe([{name:"a_pos",components:2,type:"Int16"}],4),{members:He}=Ne;class Ye{constructor(A=[]){this.segments=A}prepareSegment(A,F,W,re){let fe=this.segments[this.segments.length-1];return A>Ye.MAX_VERTEX_ARRAY_LENGTH&&T(`Max vertices per segment is ${Ye.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${A}`),(!fe||fe.vertexLength+A>Ye.MAX_VERTEX_ARRAY_LENGTH||fe.sortKey!==re)&&(fe={vertexOffset:F.length,primitiveOffset:W.length,vertexLength:0,primitiveLength:0},re!==void 0&&(fe.sortKey=re),this.segments.push(fe)),fe}get(){return this.segments}destroy(){for(let A of this.segments)for(let F in A.vaos)A.vaos[F].destroy()}static simpleSegment(A,F,W,re){return new Ye([{vertexOffset:A,primitiveOffset:F,vertexLength:W,primitiveLength:re,vaos:{},sortKey:0}])}}function kt(R,A){return 256*(R=E(Math.floor(R),0,255))+E(Math.floor(A),0,255)}Ye.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Fi("SegmentVector",Ye);let nt=qe([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var jt={exports:{}},gr={exports:{}};gr.exports=function(R,A){var F,W,re,fe,pe,ze,Ke,ct;for(W=R.length-(F=3&R.length),re=A,pe=3432918353,ze=461845907,ct=0;ct>>16)*pe&65535)<<16)&4294967295)<<15|Ke>>>17))*ze+(((Ke>>>16)*ze&65535)<<16)&4294967295)<<13|re>>>19))+((5*(re>>>16)&65535)<<16)&4294967295))+((58964+(fe>>>16)&65535)<<16);switch(Ke=0,F){case 3:Ke^=(255&R.charCodeAt(ct+2))<<16;case 2:Ke^=(255&R.charCodeAt(ct+1))<<8;case 1:re^=Ke=(65535&(Ke=(Ke=(65535&(Ke^=255&R.charCodeAt(ct)))*pe+(((Ke>>>16)*pe&65535)<<16)&4294967295)<<15|Ke>>>17))*ze+(((Ke>>>16)*ze&65535)<<16)&4294967295}return re^=R.length,re=2246822507*(65535&(re^=re>>>16))+((2246822507*(re>>>16)&65535)<<16)&4294967295,re=3266489909*(65535&(re^=re>>>13))+((3266489909*(re>>>16)&65535)<<16)&4294967295,(re^=re>>>16)>>>0};var yr=gr.exports,Hr={exports:{}};Hr.exports=function(R,A){for(var F,W=R.length,re=A^W,fe=0;W>=4;)F=1540483477*(65535&(F=255&R.charCodeAt(fe)|(255&R.charCodeAt(++fe))<<8|(255&R.charCodeAt(++fe))<<16|(255&R.charCodeAt(++fe))<<24))+((1540483477*(F>>>16)&65535)<<16),re=1540483477*(65535&re)+((1540483477*(re>>>16)&65535)<<16)^(F=1540483477*(65535&(F^=F>>>24))+((1540483477*(F>>>16)&65535)<<16)),W-=4,++fe;switch(W){case 3:re^=(255&R.charCodeAt(fe+2))<<16;case 2:re^=(255&R.charCodeAt(fe+1))<<8;case 1:re=1540483477*(65535&(re^=255&R.charCodeAt(fe)))+((1540483477*(re>>>16)&65535)<<16)}return re=1540483477*(65535&(re^=re>>>13))+((1540483477*(re>>>16)&65535)<<16),(re^=re>>>15)>>>0};var qr=yr,_i=Hr.exports;jt.exports=qr,jt.exports.murmur3=qr,jt.exports.murmur2=_i;var bi=o(jt.exports);class Zr{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(A,F,W,re){this.ids.push(ai(A)),this.positions.push(F,W,re)}getPositions(A){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");let F=ai(A),W=0,re=this.ids.length-1;for(;W>1;this.ids[pe]>=F?re=pe:W=pe+1}let fe=[];for(;this.ids[W]===F;)fe.push({index:this.positions[3*W],start:this.positions[3*W+1],end:this.positions[3*W+2]}),W++;return fe}static serialize(A,F){let W=new Float64Array(A.ids),re=new Uint32Array(A.positions);return gi(W,re,0,W.length-1),F&&F.push(W.buffer,re.buffer),{ids:W,positions:re}}static deserialize(A){let F=new Zr;return F.ids=A.ids,F.positions=A.positions,F.indexed=!0,F}}function ai(R){let A=+R;return!isNaN(A)&&A<=Number.MAX_SAFE_INTEGER?A:bi(String(R))}function gi(R,A,F,W){for(;F>1],fe=F-1,pe=W+1;for(;;){do fe++;while(R[fe]re);if(fe>=pe)break;Ii(R,fe,pe),Ii(A,3*fe,3*pe),Ii(A,3*fe+1,3*pe+1),Ii(A,3*fe+2,3*pe+2)}pe-F`u_${re}`),this.type=W}setUniform(A,F,W){A.set(W.constantOr(this.value))}getBinding(A,F,W){return this.type==="color"?new En(A,F):new ei(A,F)}}class Ia{constructor(A,F){this.uniformNames=F.map(W=>`u_${W}`),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(A,F){this.pixelRatioFrom=F.pixelRatio,this.pixelRatioTo=A.pixelRatio,this.patternFrom=F.tlbr,this.patternTo=A.tlbr}setUniform(A,F,W,re){let fe=re==="u_pattern_to"?this.patternTo:re==="u_pattern_from"?this.patternFrom:re==="u_pixel_ratio_to"?this.pixelRatioTo:re==="u_pixel_ratio_from"?this.pixelRatioFrom:null;fe&&A.set(fe)}getBinding(A,F,W){return W.substr(0,9)==="u_pattern"?new Ln(A,F):new ei(A,F)}}class yo{constructor(A,F,W,re){this.expression=A,this.type=W,this.maxValue=0,this.paintVertexAttributes=F.map(fe=>({name:`a_${fe}`,type:"Float32",components:W==="color"?2:1,offset:0})),this.paintVertexArray=new re}populatePaintArray(A,F,W,re,fe){let pe=this.paintVertexArray.length,ze=this.expression.evaluate(new rs(0),F,{},re,[],fe);this.paintVertexArray.resize(A),this._setPaintValue(pe,A,ze)}updatePaintArray(A,F,W,re){let fe=this.expression.evaluate({zoom:0},W,re);this._setPaintValue(A,F,fe)}_setPaintValue(A,F,W){if(this.type==="color"){let re=ia(W);for(let fe=A;fe`u_${ze}_t`),this.type=W,this.useIntegerZoom=re,this.zoom=fe,this.maxValue=0,this.paintVertexAttributes=F.map(ze=>({name:`a_${ze}`,type:"Float32",components:W==="color"?4:2,offset:0})),this.paintVertexArray=new pe}populatePaintArray(A,F,W,re,fe){let pe=this.expression.evaluate(new rs(this.zoom),F,{},re,[],fe),ze=this.expression.evaluate(new rs(this.zoom+1),F,{},re,[],fe),Ke=this.paintVertexArray.length;this.paintVertexArray.resize(A),this._setPaintValue(Ke,A,pe,ze)}updatePaintArray(A,F,W,re){let fe=this.expression.evaluate({zoom:this.zoom},W,re),pe=this.expression.evaluate({zoom:this.zoom+1},W,re);this._setPaintValue(A,F,fe,pe)}_setPaintValue(A,F,W,re){if(this.type==="color"){let fe=ia(W),pe=ia(re);for(let ze=A;ze`#define HAS_UNIFORM_${re}`))}return A}getBinderAttributes(){let A=[];for(let F in this.binders){let W=this.binders[F];if(W instanceof yo||W instanceof Da)for(let re=0;re!0){this.programConfigurations={};for(let re of A)this.programConfigurations[re.id]=new Is(re,F,W);this.needsUpload=!1,this._featureMap=new Zr,this._bufferOffset=0}populatePaintArrays(A,F,W,re,fe,pe){for(let ze in this.programConfigurations)this.programConfigurations[ze].populatePaintArrays(A,F,re,fe,pe);F.id!==void 0&&this._featureMap.add(F.id,W,this._bufferOffset,A),this._bufferOffset=A,this.needsUpload=!0}updatePaintArrays(A,F,W,re){for(let fe of W)this.needsUpload=this.programConfigurations[fe.id].updatePaintArrays(A,this._featureMap,F,fe,re)||this.needsUpload}get(A){return this.programConfigurations[A]}upload(A){if(this.needsUpload){for(let F in this.programConfigurations)this.programConfigurations[F].upload(A);this.needsUpload=!1}}destroy(){for(let A in this.programConfigurations)this.programConfigurations[A].destroy()}}function Xs(R,A){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[R]||[R.replace(`${A}-`,"").replace(/-/g,"_")]}function Gn(R,A,F){let W={color:{source:Ir,composite:cn},number:{source:Sr,composite:Ir}},re=function(fe){return{"line-pattern":{source:Js,composite:Js},"fill-pattern":{source:Js,composite:Js},"fill-extrusion-pattern":{source:Js,composite:Js}}[fe]}(R);return re&&re[F]||W[A][F]}Fi("ConstantBinder",Ea),Fi("CrossFadedConstantBinder",Ia),Fi("SourceExpressionBinder",yo),Fi("CrossFadedCompositeBinder",go),Fi("CompositeExpressionBinder",Da),Fi("ProgramConfiguration",Is,{omit:["_buffers"]}),Fi("ProgramConfigurationSet",Ms);let ja=8192,Fo=Math.pow(2,14)-1,Uo=-Fo-1;function $s(R){let A=ja/R.extent,F=R.loadGeometry();for(let W=0;Wpe.x+1||Kepe.y+1)&&T("Geometry exceeds allowed extent, reduce your vector tile buffer size")}}return F}function Sl(R,A){return{type:R.type,id:R.id,properties:R.properties,geometry:A?$s(R):[]}}function bu(R,A,F,W,re){R.emplaceBack(2*A+(W+1)/2,2*F+(re+1)/2)}class dl{constructor(A){this.zoom=A.zoom,this.overscaling=A.overscaling,this.layers=A.layers,this.layerIds=this.layers.map(F=>F.id),this.index=A.index,this.hasPattern=!1,this.layoutVertexArray=new To,this.indexArray=new se,this.segments=new Ye,this.programConfigurations=new Ms(A.layers,A.zoom),this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(A,F,W){let re=this.layers[0],fe=[],pe=null,ze=!1;re.type==="circle"&&(pe=re.layout.get("circle-sort-key"),ze=!pe.isConstant());for(let{feature:Ke,id:ct,index:Lt,sourceLayerIndex:$t}of A){let fr=this.layers[0]._featureFilter.needGeometry,mr=Sl(Ke,fr);if(!this.layers[0]._featureFilter.filter(new rs(this.zoom),mr,W))continue;let Pr=ze?pe.evaluate(mr,{},W):void 0,zr={id:ct,properties:Ke.properties,type:Ke.type,sourceLayerIndex:$t,index:Lt,geometry:fr?mr.geometry:$s(Ke),patterns:{},sortKey:Pr};fe.push(zr)}ze&&fe.sort((Ke,ct)=>Ke.sortKey-ct.sortKey);for(let Ke of fe){let{geometry:ct,index:Lt,sourceLayerIndex:$t}=Ke,fr=A[Lt].feature;this.addFeature(Ke,ct,Lt,W),F.featureIndex.insert(fr,ct,Lt,$t,this.index)}}update(A,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(A,F,this.stateDependentLayers,W)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(A){this.uploaded||(this.layoutVertexBuffer=A.createVertexBuffer(this.layoutVertexArray,He),this.indexBuffer=A.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(A),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(A,F,W,re){for(let fe of F)for(let pe of fe){let ze=pe.x,Ke=pe.y;if(ze<0||ze>=ja||Ke<0||Ke>=ja)continue;let ct=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,A.sortKey),Lt=ct.vertexLength;bu(this.layoutVertexArray,ze,Ke,-1,-1),bu(this.layoutVertexArray,ze,Ke,1,-1),bu(this.layoutVertexArray,ze,Ke,1,1),bu(this.layoutVertexArray,ze,Ke,-1,1),this.indexArray.emplaceBack(Lt,Lt+1,Lt+2),this.indexArray.emplaceBack(Lt,Lt+3,Lt+2),ct.vertexLength+=4,ct.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,A,W,{},re)}}function Sc(R,A){for(let F=0;F1){if(Rr(R,A))return!0;for(let W=0;W1?F:F.sub(A)._mult(re)._add(A))}function mi(R,A){let F,W,re,fe=!1;for(let pe=0;peA.y!=re.y>A.y&&A.x<(re.x-W.x)*(A.y-W.y)/(re.y-W.y)+W.x&&(fe=!fe)}return fe}function Ui(R,A){let F=!1;for(let W=0,re=R.length-1;WA.y!=pe.y>A.y&&A.x<(pe.x-fe.x)*(A.y-fe.y)/(pe.y-fe.y)+fe.x&&(F=!F)}return F}function qi(R,A,F){let W=F[0],re=F[2];if(R.xre.x&&A.x>re.x||R.yre.y&&A.y>re.y)return!1;let fe=z(R,A,F[0]);return fe!==z(R,A,F[1])||fe!==z(R,A,F[2])||fe!==z(R,A,F[3])}function Ei(R,A,F){let W=A.paint.get(R).value;return W.kind==="constant"?W.value:F.programConfigurations.get(A.id).getMaxValue(R)}function Hn(R){return Math.sqrt(R[0]*R[0]+R[1]*R[1])}function en(R,A,F,W,re){if(!A[0]&&!A[1])return R;let fe=u.convert(A)._mult(re);F==="viewport"&&fe._rotate(-W);let pe=[];for(let ze=0;zeli(ui,zr))}(ct,Ke),mr=$t?Lt*ze:Lt;for(let Pr of re)for(let zr of Pr){let ui=$t?zr:li(zr,Ke),yi=mr,vn=Bn([],[zr.x,zr.y,0,1],Ke);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?yi*=vn[3]/pe.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(yi*=pe.cameraToCenterDistance/vn[3]),Me(fr,ui,yi))return!0}return!1}}function li(R,A){let F=Bn([],[R.x,R.y,0,1],A);return new u(F[0]/F[3],F[1]/F[3])}class mn extends dl{}let Ji;Fi("HeatmapBucket",mn,{omit:["layers"]});var Vi={get paint(){return Ji=Ji||new ue({"heatmap-radius":new oo(ce.paint_heatmap["heatmap-radius"]),"heatmap-weight":new oo(ce.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Ua(ce.paint_heatmap["heatmap-intensity"]),"heatmap-color":new Ku(ce.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Ua(ce.paint_heatmap["heatmap-opacity"])})}};function Ni(R,{width:A,height:F},W,re){if(re){if(re instanceof Uint8ClampedArray)re=new Uint8Array(re.buffer);else if(re.length!==A*F*W)throw new RangeError(`mismatched image size. expected: ${re.length} but got: ${A*F*W}`)}else re=new Uint8Array(A*F*W);return R.width=A,R.height=F,R.data=re,R}function pn(R,{width:A,height:F},W){if(A===R.width&&F===R.height)return;let re=Ni({},{width:A,height:F},W);Vn(R,re,{x:0,y:0},{x:0,y:0},{width:Math.min(R.width,A),height:Math.min(R.height,F)},W),R.width=A,R.height=F,R.data=re.data}function Vn(R,A,F,W,re,fe){if(re.width===0||re.height===0)return A;if(re.width>R.width||re.height>R.height||F.x>R.width-re.width||F.y>R.height-re.height)throw new RangeError("out of range source coordinates for image copy");if(re.width>A.width||re.height>A.height||W.x>A.width-re.width||W.y>A.height-re.height)throw new RangeError("out of range destination coordinates for image copy");let pe=R.data,ze=A.data;if(pe===ze)throw new Error("srcData equals dstData, so image is already copied");for(let Ke=0;Ke{A[R.evaluationKey]=Ke;let ct=R.expression.evaluate(A);re.data[pe+ze+0]=Math.floor(255*ct.r/ct.a),re.data[pe+ze+1]=Math.floor(255*ct.g/ct.a),re.data[pe+ze+2]=Math.floor(255*ct.b/ct.a),re.data[pe+ze+3]=Math.floor(255*ct.a)};if(R.clips)for(let pe=0,ze=0;pe80*F){ze=1/0,Ke=1/0;let Lt=-1/0,$t=-1/0;for(let fr=F;frLt&&(Lt=mr),Pr>$t&&($t=Pr)}ct=Math.max(Lt-ze,$t-Ke),ct=ct!==0?32767/ct:0}return Vl(fe,pe,F,ze,Ke,ct,0),pe}function Qs(R,A,F,W,re){let fe;if(re===function(pe,ze,Ke,ct){let Lt=0;for(let $t=ze,fr=Ke-ct;$t0)for(let pe=A;pe=A;pe-=W)fe=qt(pe/W|0,R[pe],R[pe+1],fe);return fe&&ne(fe,fe.next)&&(Ve(fe),fe=fe.next),fe}function al(R,A){if(!R)return R;A||(A=R);let F,W=R;do if(F=!1,W.steiner||!ne(W,W.next)&&de(W.prev,W,W.next)!==0)W=W.next;else{if(Ve(W),W=A=W.prev,W===W.next)break;F=!0}while(F||W!==A);return A}function Vl(R,A,F,W,re,fe,pe){if(!R)return;!pe&&fe&&function(Ke,ct,Lt,$t){let fr=Ke;do fr.z===0&&(fr.z=D(fr.x,fr.y,ct,Lt,$t)),fr.prevZ=fr.prev,fr.nextZ=fr.next,fr=fr.next;while(fr!==Ke);fr.prevZ.nextZ=null,fr.prevZ=null,function(mr){let Pr,zr=1;do{let ui,yi=mr;mr=null;let vn=null;for(Pr=0;yi;){Pr++;let zi=yi,un=0;for(let pa=0;pa0||Tn>0&&zi;)un!==0&&(Tn===0||!zi||yi.z<=zi.z)?(ui=yi,yi=yi.nextZ,un--):(ui=zi,zi=zi.nextZ,Tn--),vn?vn.nextZ=ui:mr=ui,ui.prevZ=vn,vn=ui;yi=zi}vn.nextZ=null,zr*=2}while(Pr>1)}(fr)}(R,W,re,fe);let ze=R;for(;R.prev!==R.next;){let Ke=R.prev,ct=R.next;if(fe?Vs(R,W,re,fe):ss(R))A.push(Ke.i,R.i,ct.i),Ve(R),R=ct.next,ze=ct.next;else if((R=ct)===ze){pe?pe===1?Vl(R=Ys(al(R),A),A,F,W,re,fe,2):pe===2&&wa(R,A,F,W,re,fe):Vl(al(R),A,F,W,re,fe,1);break}}}function ss(R){let A=R.prev,F=R,W=R.next;if(de(A,F,W)>=0)return!1;let re=A.x,fe=F.x,pe=W.x,ze=A.y,Ke=F.y,ct=W.y,Lt=refe?re>pe?re:pe:fe>pe?fe:pe,mr=ze>Ke?ze>ct?ze:ct:Ke>ct?Ke:ct,Pr=W.next;for(;Pr!==A;){if(Pr.x>=Lt&&Pr.x<=fr&&Pr.y>=$t&&Pr.y<=mr&&q(re,ze,fe,Ke,pe,ct,Pr.x,Pr.y)&&de(Pr.prev,Pr,Pr.next)>=0)return!1;Pr=Pr.next}return!0}function Vs(R,A,F,W){let re=R.prev,fe=R,pe=R.next;if(de(re,fe,pe)>=0)return!1;let ze=re.x,Ke=fe.x,ct=pe.x,Lt=re.y,$t=fe.y,fr=pe.y,mr=zeKe?ze>ct?ze:ct:Ke>ct?Ke:ct,ui=Lt>$t?Lt>fr?Lt:fr:$t>fr?$t:fr,yi=D(mr,Pr,A,F,W),vn=D(zr,ui,A,F,W),zi=R.prevZ,un=R.nextZ;for(;zi&&zi.z>=yi&&un&&un.z<=vn;){if(zi.x>=mr&&zi.x<=zr&&zi.y>=Pr&&zi.y<=ui&&zi!==re&&zi!==pe&&q(ze,Lt,Ke,$t,ct,fr,zi.x,zi.y)&&de(zi.prev,zi,zi.next)>=0||(zi=zi.prevZ,un.x>=mr&&un.x<=zr&&un.y>=Pr&&un.y<=ui&&un!==re&&un!==pe&&q(ze,Lt,Ke,$t,ct,fr,un.x,un.y)&&de(un.prev,un,un.next)>=0))return!1;un=un.nextZ}for(;zi&&zi.z>=yi;){if(zi.x>=mr&&zi.x<=zr&&zi.y>=Pr&&zi.y<=ui&&zi!==re&&zi!==pe&&q(ze,Lt,Ke,$t,ct,fr,zi.x,zi.y)&&de(zi.prev,zi,zi.next)>=0)return!1;zi=zi.prevZ}for(;un&&un.z<=vn;){if(un.x>=mr&&un.x<=zr&&un.y>=Pr&&un.y<=ui&&un!==re&&un!==pe&&q(ze,Lt,Ke,$t,ct,fr,un.x,un.y)&&de(un.prev,un,un.next)>=0)return!1;un=un.nextZ}return!0}function Ys(R,A){let F=R;do{let W=F.prev,re=F.next.next;!ne(W,re)&&we(W,F,F.next,re)&&Xt(W,re)&&Xt(re,W)&&(A.push(W.i,F.i,re.i),Ve(F),Ve(F.next),F=R=re),F=F.next}while(F!==R);return al(F)}function wa(R,A,F,W,re,fe){let pe=R;do{let ze=pe.next.next;for(;ze!==pe.prev;){if(pe.i!==ze.i&&K(pe,ze)){let Ke=hr(pe,ze);return pe=al(pe,pe.next),Ke=al(Ke,Ke.next),Vl(pe,A,F,W,re,fe,0),void Vl(Ke,A,F,W,re,fe,0)}ze=ze.next}pe=pe.next}while(pe!==R)}function ol(R,A){return R.x-A.x}function io(R,A){let F=function(re,fe){let pe=fe,ze=re.x,Ke=re.y,ct,Lt=-1/0;do{if(Ke<=pe.y&&Ke>=pe.next.y&&pe.next.y!==pe.y){let zr=pe.x+(Ke-pe.y)*(pe.next.x-pe.x)/(pe.next.y-pe.y);if(zr<=ze&&zr>Lt&&(Lt=zr,ct=pe.x=pe.x&&pe.x>=fr&&ze!==pe.x&&q(Kect.x||pe.x===ct.x&&Y(ct,pe)))&&(ct=pe,Pr=zr)}pe=pe.next}while(pe!==$t);return ct}(R,A);if(!F)return A;let W=hr(F,R);return al(W,W.next),al(F,F.next)}function Y(R,A){return de(R.prev,R,A.prev)<0&&de(A.next,R,R.next)<0}function D(R,A,F,W,re){return(R=1431655765&((R=858993459&((R=252645135&((R=16711935&((R=(R-F)*re|0)|R<<8))|R<<4))|R<<2))|R<<1))|(A=1431655765&((A=858993459&((A=252645135&((A=16711935&((A=(A-W)*re|0)|A<<8))|A<<4))|A<<2))|A<<1))<<1}function J(R){let A=R,F=R;do(A.x=(R-pe)*(fe-ze)&&(R-pe)*(W-ze)>=(F-pe)*(A-ze)&&(F-pe)*(fe-ze)>=(re-pe)*(W-ze)}function K(R,A){return R.next.i!==A.i&&R.prev.i!==A.i&&!function(F,W){let re=F;do{if(re.i!==F.i&&re.next.i!==F.i&&re.i!==W.i&&re.next.i!==W.i&&we(re,re.next,F,W))return!0;re=re.next}while(re!==F);return!1}(R,A)&&(Xt(R,A)&&Xt(A,R)&&function(F,W){let re=F,fe=!1,pe=(F.x+W.x)/2,ze=(F.y+W.y)/2;do re.y>ze!=re.next.y>ze&&re.next.y!==re.y&&pe<(re.next.x-re.x)*(ze-re.y)/(re.next.y-re.y)+re.x&&(fe=!fe),re=re.next;while(re!==F);return fe}(R,A)&&(de(R.prev,R,A.prev)||de(R,A.prev,A))||ne(R,A)&&de(R.prev,R,R.next)>0&&de(A.prev,A,A.next)>0)}function de(R,A,F){return(A.y-R.y)*(F.x-A.x)-(A.x-R.x)*(F.y-A.y)}function ne(R,A){return R.x===A.x&&R.y===A.y}function we(R,A,F,W){let re=ft(de(R,A,F)),fe=ft(de(R,A,W)),pe=ft(de(F,W,R)),ze=ft(de(F,W,A));return re!==fe&&pe!==ze||!(re!==0||!Ue(R,F,A))||!(fe!==0||!Ue(R,W,A))||!(pe!==0||!Ue(F,R,W))||!(ze!==0||!Ue(F,A,W))}function Ue(R,A,F){return A.x<=Math.max(R.x,F.x)&&A.x>=Math.min(R.x,F.x)&&A.y<=Math.max(R.y,F.y)&&A.y>=Math.min(R.y,F.y)}function ft(R){return R>0?1:R<0?-1:0}function Xt(R,A){return de(R.prev,R,R.next)<0?de(R,A,R.next)>=0&&de(R,R.prev,A)>=0:de(R,A,R.prev)<0||de(R,R.next,A)<0}function hr(R,A){let F=Qe(R.i,R.x,R.y),W=Qe(A.i,A.x,A.y),re=R.next,fe=A.prev;return R.next=A,A.prev=R,F.next=re,re.prev=F,W.next=F,F.prev=W,fe.next=W,W.prev=fe,W}function qt(R,A,F,W){let re=Qe(R,A,F);return W?(re.next=W.next,re.prev=W,W.next.prev=re,W.next=re):(re.prev=re,re.next=re),re}function Ve(R){R.next.prev=R.prev,R.prev.next=R.next,R.prevZ&&(R.prevZ.nextZ=R.nextZ),R.nextZ&&(R.nextZ.prevZ=R.prevZ)}function Qe(R,A,F){return{i:R,x:A,y:F,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function at(R,A,F){let W=F.patternDependencies,re=!1;for(let fe of A){let pe=fe.paint.get(`${R}-pattern`);pe.isConstant()||(re=!0);let ze=pe.constantOr(null);ze&&(re=!0,W[ze.to]=!0,W[ze.from]=!0)}return re}function Ct(R,A,F,W,re){let fe=re.patternDependencies;for(let pe of A){let ze=pe.paint.get(`${R}-pattern`).value;if(ze.kind!=="constant"){let Ke=ze.evaluate({zoom:W-1},F,{},re.availableImages),ct=ze.evaluate({zoom:W},F,{},re.availableImages),Lt=ze.evaluate({zoom:W+1},F,{},re.availableImages);Ke=Ke&&Ke.name?Ke.name:Ke,ct=ct&&ct.name?ct.name:ct,Lt=Lt&&Lt.name?Lt.name:Lt,fe[Ke]=!0,fe[ct]=!0,fe[Lt]=!0,F.patterns[pe.id]={min:Ke,mid:ct,max:Lt}}}return F}class Ot{constructor(A){this.zoom=A.zoom,this.overscaling=A.overscaling,this.layers=A.layers,this.layerIds=this.layers.map(F=>F.id),this.index=A.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new hl,this.indexArray=new se,this.indexArray2=new Te,this.programConfigurations=new Ms(A.layers,A.zoom),this.segments=new Ye,this.segments2=new Ye,this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(A,F,W){this.hasPattern=at("fill",this.layers,F);let re=this.layers[0].layout.get("fill-sort-key"),fe=!re.isConstant(),pe=[];for(let{feature:ze,id:Ke,index:ct,sourceLayerIndex:Lt}of A){let $t=this.layers[0]._featureFilter.needGeometry,fr=Sl(ze,$t);if(!this.layers[0]._featureFilter.filter(new rs(this.zoom),fr,W))continue;let mr=fe?re.evaluate(fr,{},W,F.availableImages):void 0,Pr={id:Ke,properties:ze.properties,type:ze.type,sourceLayerIndex:Lt,index:ct,geometry:$t?fr.geometry:$s(ze),patterns:{},sortKey:mr};pe.push(Pr)}fe&&pe.sort((ze,Ke)=>ze.sortKey-Ke.sortKey);for(let ze of pe){let{geometry:Ke,index:ct,sourceLayerIndex:Lt}=ze;if(this.hasPattern){let $t=Ct("fill",this.layers,ze,this.zoom,F);this.patternFeatures.push($t)}else this.addFeature(ze,Ke,ct,W,{});F.featureIndex.insert(A[ct].feature,Ke,ct,Lt,this.index)}}update(A,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(A,F,this.stateDependentLayers,W)}addFeatures(A,F,W){for(let re of this.patternFeatures)this.addFeature(re,re.geometry,re.index,F,W)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(A){this.uploaded||(this.layoutVertexBuffer=A.createVertexBuffer(this.layoutVertexArray,Ml),this.indexBuffer=A.createIndexBuffer(this.indexArray),this.indexBuffer2=A.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(A),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(A,F,W,re,fe){for(let pe of Cf(F,500)){let ze=0;for(let mr of pe)ze+=mr.length;let Ke=this.segments.prepareSegment(ze,this.layoutVertexArray,this.indexArray),ct=Ke.vertexLength,Lt=[],$t=[];for(let mr of pe){if(mr.length===0)continue;mr!==pe[0]&&$t.push(Lt.length/2);let Pr=this.segments2.prepareSegment(mr.length,this.layoutVertexArray,this.indexArray2),zr=Pr.vertexLength;this.layoutVertexArray.emplaceBack(mr[0].x,mr[0].y),this.indexArray2.emplaceBack(zr+mr.length-1,zr),Lt.push(mr[0].x),Lt.push(mr[0].y);for(let ui=1;ui>3}if(re--,W===1||W===2)fe+=R.readSVarint(),pe+=R.readSVarint(),W===1&&(A&&ze.push(A),A=[]),A.push(new Ur(fe,pe));else{if(W!==7)throw new Error("unknown command "+W);A&&A.push(A[0].clone())}}return A&&ze.push(A),ze},fi.prototype.bbox=function(){var R=this._pbf;R.pos=this._geometry;for(var A=R.readVarint()+R.pos,F=1,W=0,re=0,fe=0,pe=1/0,ze=-1/0,Ke=1/0,ct=-1/0;R.pos>3}if(W--,F===1||F===2)(re+=R.readSVarint())ze&&(ze=re),(fe+=R.readSVarint())ct&&(ct=fe);else if(F!==7)throw new Error("unknown command "+F)}return[pe,Ke,ze,ct]},fi.prototype.toGeoJSON=function(R,A,F){var W,re,fe=this.extent*Math.pow(2,F),pe=this.extent*R,ze=this.extent*A,Ke=this.loadGeometry(),ct=fi.types[this.type];function Lt(mr){for(var Pr=0;Pr>3;re=pe===1?W.readString():pe===2?W.readFloat():pe===3?W.readDouble():pe===4?W.readVarint64():pe===5?W.readVarint():pe===6?W.readSVarint():pe===7?W.readBoolean():null}return re}(F))}Bi.prototype.feature=function(R){if(R<0||R>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[R];var A=this._pbf.readVarint()+this._pbf.pos;return new rn(this._pbf,A,this.extent,this._keys,this._values)};var sn=Ci;function zn(R,A,F){if(R===3){var W=new sn(F,F.readVarint()+F.pos);W.length&&(A[W.name]=W)}}br.VectorTile=function(R,A){this.layers=R.readFields(zn,{},A)},br.VectorTileFeature=Di,br.VectorTileLayer=Ci;let Ja=br.VectorTileFeature.types,co=Math.pow(2,13);function ts(R,A,F,W,re,fe,pe,ze){R.emplaceBack(A,F,2*Math.floor(W*co)+pe,re*co*2,fe*co*2,Math.round(ze))}class so{constructor(A){this.zoom=A.zoom,this.overscaling=A.overscaling,this.layers=A.layers,this.layerIds=this.layers.map(F=>F.id),this.index=A.index,this.hasPattern=!1,this.layoutVertexArray=new Ul,this.centroidVertexArray=new wo,this.indexArray=new se,this.programConfigurations=new Ms(A.layers,A.zoom),this.segments=new Ye,this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(A,F,W){this.features=[],this.hasPattern=at("fill-extrusion",this.layers,F);for(let{feature:re,id:fe,index:pe,sourceLayerIndex:ze}of A){let Ke=this.layers[0]._featureFilter.needGeometry,ct=Sl(re,Ke);if(!this.layers[0]._featureFilter.filter(new rs(this.zoom),ct,W))continue;let Lt={id:fe,sourceLayerIndex:ze,index:pe,geometry:Ke?ct.geometry:$s(re),properties:re.properties,type:re.type,patterns:{}};this.hasPattern?this.features.push(Ct("fill-extrusion",this.layers,Lt,this.zoom,F)):this.addFeature(Lt,Lt.geometry,pe,W,{}),F.featureIndex.insert(re,Lt.geometry,pe,ze,this.index,!0)}}addFeatures(A,F,W){for(let re of this.features){let{geometry:fe}=re;this.addFeature(re,fe,re.index,F,W)}}update(A,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(A,F,this.stateDependentLayers,W)}isEmpty(){return this.layoutVertexArray.length===0&&this.centroidVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(A){this.uploaded||(this.layoutVertexBuffer=A.createVertexBuffer(this.layoutVertexArray,ur),this.centroidVertexBuffer=A.createVertexBuffer(this.centroidVertexArray,ht.members,!0),this.indexBuffer=A.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(A),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy())}addFeature(A,F,W,re,fe){for(let pe of Cf(F,500)){let ze={x:0,y:0,vertexCount:0},Ke=0;for(let Pr of pe)Ke+=Pr.length;let ct=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(let Pr of pe){if(Pr.length===0||ms(Pr))continue;let zr=0;for(let ui=0;ui=1){let vn=Pr[ui-1];if(!Zo(yi,vn)){ct.vertexLength+4>Ye.MAX_VERTEX_ARRAY_LENGTH&&(ct=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));let zi=yi.sub(vn)._perp()._unit(),un=vn.dist(yi);zr+un>32768&&(zr=0),ts(this.layoutVertexArray,yi.x,yi.y,zi.x,zi.y,0,0,zr),ts(this.layoutVertexArray,yi.x,yi.y,zi.x,zi.y,0,1,zr),ze.x+=2*yi.x,ze.y+=2*yi.y,ze.vertexCount+=2,zr+=un,ts(this.layoutVertexArray,vn.x,vn.y,zi.x,zi.y,0,0,zr),ts(this.layoutVertexArray,vn.x,vn.y,zi.x,zi.y,0,1,zr),ze.x+=2*vn.x,ze.y+=2*vn.y,ze.vertexCount+=2;let Tn=ct.vertexLength;this.indexArray.emplaceBack(Tn,Tn+2,Tn+1),this.indexArray.emplaceBack(Tn+1,Tn+2,Tn+3),ct.vertexLength+=4,ct.primitiveLength+=2}}}}if(ct.vertexLength+Ke>Ye.MAX_VERTEX_ARRAY_LENGTH&&(ct=this.segments.prepareSegment(Ke,this.layoutVertexArray,this.indexArray)),Ja[A.type]!=="Polygon")continue;let Lt=[],$t=[],fr=ct.vertexLength;for(let Pr of pe)if(Pr.length!==0){Pr!==pe[0]&&$t.push(Lt.length/2);for(let zr=0;zrja)||R.y===A.y&&(R.y<0||R.y>ja)}function ms(R){return R.every(A=>A.x<0)||R.every(A=>A.x>ja)||R.every(A=>A.y<0)||R.every(A=>A.y>ja)}let ou;Fi("FillExtrusionBucket",so,{omit:["layers","features"]});var Cv={get paint(){return ou=ou||new ue({"fill-extrusion-opacity":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new oo(ce["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Vc(ce["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new oo(ce["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new oo(ce["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Ua(ce["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})}};class Lv extends B{constructor(A){super(A,Cv)}createBucket(A){return new so(A)}queryRadius(){return Hn(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}queryIntersectsFeature(A,F,W,re,fe,pe,ze,Ke){let ct=en(A,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),pe.angle,ze),Lt=this.paint.get("fill-extrusion-height").evaluate(F,W),$t=this.paint.get("fill-extrusion-base").evaluate(F,W),fr=function(Pr,zr,ui,yi){let vn=[];for(let zi of Pr){let un=[zi.x,zi.y,0,1];Bn(un,un,zr),vn.push(new u(un[0]/un[3],un[1]/un[3]))}return vn}(ct,Ke),mr=function(Pr,zr,ui,yi){let vn=[],zi=[],un=yi[8]*zr,Tn=yi[9]*zr,pa=yi[10]*zr,ro=yi[11]*zr,Vo=yi[8]*ui,Xa=yi[9]*ui,sa=yi[10]*ui,Mo=yi[11]*ui;for(let fo of Pr){let lo=[],Xn=[];for(let Ro of fo){let uo=Ro.x,$o=Ro.y,Ju=yi[0]*uo+yi[4]*$o+yi[12],qu=yi[1]*uo+yi[5]*$o+yi[13],Mh=yi[2]*uo+yi[6]*$o+yi[14],Qv=yi[3]*uo+yi[7]*$o+yi[15],ld=Mh+pa,Eh=Qv+ro,Gd=Ju+Vo,Hd=qu+Xa,jd=Mh+sa,Af=Qv+Mo,kh=new u((Ju+un)/Eh,(qu+Tn)/Eh);kh.z=ld/Eh,lo.push(kh);let Ed=new u(Gd/Af,Hd/Af);Ed.z=jd/Af,Xn.push(Ed)}vn.push(lo),zi.push(Xn)}return[vn,zi]}(re,$t,Lt,Ke);return function(Pr,zr,ui){let yi=1/0;bt(ui,zr)&&(yi=Kv(ui,zr[0]));for(let vn=0;vnF.id),this.index=A.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(F=>{this.gradients[F.id]={}}),this.layoutVertexArray=new Lu,this.layoutVertexArray2=new au,this.indexArray=new se,this.programConfigurations=new Ms(A.layers,A.zoom),this.segments=new Ye,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(F=>F.isStateDependent()).map(F=>F.id)}populate(A,F,W){this.hasPattern=at("line",this.layers,F);let re=this.layers[0].layout.get("line-sort-key"),fe=!re.isConstant(),pe=[];for(let{feature:ze,id:Ke,index:ct,sourceLayerIndex:Lt}of A){let $t=this.layers[0]._featureFilter.needGeometry,fr=Sl(ze,$t);if(!this.layers[0]._featureFilter.filter(new rs(this.zoom),fr,W))continue;let mr=fe?re.evaluate(fr,{},W):void 0,Pr={id:Ke,properties:ze.properties,type:ze.type,sourceLayerIndex:Lt,index:ct,geometry:$t?fr.geometry:$s(ze),patterns:{},sortKey:mr};pe.push(Pr)}fe&&pe.sort((ze,Ke)=>ze.sortKey-Ke.sortKey);for(let ze of pe){let{geometry:Ke,index:ct,sourceLayerIndex:Lt}=ze;if(this.hasPattern){let $t=Ct("line",this.layers,ze,this.zoom,F);this.patternFeatures.push($t)}else this.addFeature(ze,Ke,ct,W,{});F.featureIndex.insert(A[ct].feature,Ke,ct,Lt,this.index)}}update(A,F,W){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(A,F,this.stateDependentLayers,W)}addFeatures(A,F,W){for(let re of this.patternFeatures)this.addFeature(re,re.geometry,re.index,F,W)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(A){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=A.createVertexBuffer(this.layoutVertexArray2,gp)),this.layoutVertexBuffer=A.createVertexBuffer(this.layoutVertexArray,pp),this.indexBuffer=A.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(A),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(A){if(A.properties&&Object.prototype.hasOwnProperty.call(A.properties,"mapbox_clip_start")&&Object.prototype.hasOwnProperty.call(A.properties,"mapbox_clip_end"))return{start:+A.properties.mapbox_clip_start,end:+A.properties.mapbox_clip_end}}addFeature(A,F,W,re,fe){let pe=this.layers[0].layout,ze=pe.get("line-join").evaluate(A,{}),Ke=pe.get("line-cap"),ct=pe.get("line-miter-limit"),Lt=pe.get("line-round-limit");this.lineClips=this.lineFeatureClips(A);for(let $t of F)this.addLine($t,A,ze,Ke,ct,Lt);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,A,W,fe,re)}addLine(A,F,W,re,fe,pe){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let yi=0;yi=2&&A[Ke-1].equals(A[Ke-2]);)Ke--;let ct=0;for(;ct0;if(ro&&yi>ct){let Mo=fr.dist(mr);if(Mo>2*Lt){let fo=fr.sub(fr.sub(mr)._mult(Lt/Mo)._round());this.updateDistance(mr,fo),this.addCurrentVertex(fo,zr,0,0,$t),mr=fo}}let Xa=mr&&Pr,sa=Xa?W:ze?"butt":re;if(Xa&&sa==="round"&&(Tnfe&&(sa="bevel"),sa==="bevel"&&(Tn>2&&(sa="flipbevel"),Tn100)vn=ui.mult(-1);else{let Mo=Tn*zr.add(ui).mag()/zr.sub(ui).mag();vn._perp()._mult(Mo*(Vo?-1:1))}this.addCurrentVertex(fr,vn,0,0,$t),this.addCurrentVertex(fr,vn.mult(-1),0,0,$t)}else if(sa==="bevel"||sa==="fakeround"){let Mo=-Math.sqrt(Tn*Tn-1),fo=Vo?Mo:0,lo=Vo?0:Mo;if(mr&&this.addCurrentVertex(fr,zr,fo,lo,$t),sa==="fakeround"){let Xn=Math.round(180*pa/Math.PI/20);for(let Ro=1;Ro2*Lt){let fo=fr.add(Pr.sub(fr)._mult(Lt/Mo)._round());this.updateDistance(fr,fo),this.addCurrentVertex(fo,ui,0,0,$t),fr=fo}}}}addCurrentVertex(A,F,W,re,fe,pe=!1){let ze=F.y*re-F.x,Ke=-F.y-F.x*re;this.addHalfVertex(A,F.x+F.y*W,F.y-F.x*W,pe,!1,W,fe),this.addHalfVertex(A,ze,Ke,pe,!0,-re,fe),this.distance>Pv/2&&this.totalDistance===0&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(A,F,W,re,fe,pe))}addHalfVertex({x:A,y:F},W,re,fe,pe,ze,Ke){let ct=.5*(this.lineClips?this.scaledDistance*(Pv-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((A<<1)+(fe?1:0),(F<<1)+(pe?1:0),Math.round(63*W)+128,Math.round(63*re)+128,1+(ze===0?0:ze<0?-1:1)|(63&ct)<<2,ct>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);let Lt=Ke.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Lt),Ke.primitiveLength++),pe?this.e2=Lt:this.e1=Lt}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(A,F){this.distance+=A.dist(F),this.updateScaledDistance()}}let Iv,ay;Fi("LineBucket",Jv,{omit:["layers","patternFeatures"]});var fg={get paint(){return ay=ay||new ue({"line-opacity":new oo(ce.paint_line["line-opacity"]),"line-color":new oo(ce.paint_line["line-color"]),"line-translate":new Ua(ce.paint_line["line-translate"]),"line-translate-anchor":new Ua(ce.paint_line["line-translate-anchor"]),"line-width":new oo(ce.paint_line["line-width"]),"line-gap-width":new oo(ce.paint_line["line-gap-width"]),"line-offset":new oo(ce.paint_line["line-offset"]),"line-blur":new oo(ce.paint_line["line-blur"]),"line-dasharray":new hc(ce.paint_line["line-dasharray"]),"line-pattern":new Vc(ce.paint_line["line-pattern"]),"line-gradient":new Ku(ce.paint_line["line-gradient"])})},get layout(){return Iv=Iv||new ue({"line-cap":new Ua(ce.layout_line["line-cap"]),"line-join":new oo(ce.layout_line["line-join"]),"line-miter-limit":new Ua(ce.layout_line["line-miter-limit"]),"line-round-limit":new Ua(ce.layout_line["line-round-limit"]),"line-sort-key":new oo(ce.layout_line["line-sort-key"])})}};class oh extends oo{possiblyEvaluate(A,F){return F=new rs(Math.floor(F.zoom),{now:F.now,fadeDuration:F.fadeDuration,zoomHistory:F.zoomHistory,transition:F.transition}),super.possiblyEvaluate(A,F)}evaluate(A,F,W,re){return F=L({},F,{zoom:Math.floor(F.zoom)}),super.evaluate(A,F,W,re)}}let hg;class oy extends B{constructor(A){super(A,fg),this.gradientVersion=0,hg||(hg=new oh(fg.paint.properties["line-width"].specification),hg.useIntegerZoom=!0)}_handleSpecialPaintPropertyUpdate(A){if(A==="line-gradient"){let F=this.gradientExpression();this.stepInterpolant=!!function(W){return W._styleExpression!==void 0}(F)&&F._styleExpression.expression instanceof _n,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression}recalculate(A,F){super.recalculate(A,F),this.paint._values["line-floorwidth"]=hg.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,A)}createBucket(A){return new Jv(A)}queryRadius(A){let F=A,W=jh(Ei("line-width",this,F),Ei("line-gap-width",this,F)),re=Ei("line-offset",this,F);return W/2+Math.abs(re)+Hn(this.paint.get("line-translate"))}queryIntersectsFeature(A,F,W,re,fe,pe,ze){let Ke=en(A,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),pe.angle,ze),ct=ze/2*jh(this.paint.get("line-width").evaluate(F,W),this.paint.get("line-gap-width").evaluate(F,W)),Lt=this.paint.get("line-offset").evaluate(F,W);return Lt&&(re=function($t,fr){let mr=[];for(let Pr=0;Pr<$t.length;Pr++){let zr=$t[Pr],ui=[];for(let yi=0;yi=3){for(let ui=0;ui0?A+2*R:R}let im=qe([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),b1=qe([{name:"a_projected_pos",components:3,type:"Float32"}],4);qe([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);let w1=qe([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"},{name:"a_box_real",components:2,type:"Int16"}]);qe([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);let sy=qe([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),nm=qe([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function am(R,A,F){return R.sections.forEach(W=>{W.text=function(re,fe,pe){let ze=fe.layout.get("text-transform").evaluate(pe,{});return ze==="uppercase"?re=re.toLocaleUpperCase():ze==="lowercase"&&(re=re.toLocaleLowerCase()),ys.applyArabicShaping&&(re=ys.applyArabicShaping(re)),re}(W.text,A,F)}),R}qe([{name:"triangle",components:3,type:"Uint16"}]),qe([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),qe([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"}]),qe([{type:"Float32",name:"offsetX"}]),qe([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),qe([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);let vc={"!":"\uFE15","#":"\uFF03",$:"\uFF04","%":"\uFF05","&":"\uFF06","(":"\uFE35",")":"\uFE36","*":"\uFF0A","+":"\uFF0B",",":"\uFE10","-":"\uFE32",".":"\u30FB","/":"\uFF0F",":":"\uFE13",";":"\uFE14","<":"\uFE3F","=":"\uFF1D",">":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};var eu=24,Sd=wu,ly=function(R,A,F,W,re){var fe,pe,ze=8*re-W-1,Ke=(1<>1,Lt=-7,$t=F?re-1:0,fr=F?-1:1,mr=R[A+$t];for($t+=fr,fe=mr&(1<<-Lt)-1,mr>>=-Lt,Lt+=ze;Lt>0;fe=256*fe+R[A+$t],$t+=fr,Lt-=8);for(pe=fe&(1<<-Lt)-1,fe>>=-Lt,Lt+=W;Lt>0;pe=256*pe+R[A+$t],$t+=fr,Lt-=8);if(fe===0)fe=1-ct;else{if(fe===Ke)return pe?NaN:1/0*(mr?-1:1);pe+=Math.pow(2,W),fe-=ct}return(mr?-1:1)*pe*Math.pow(2,fe-W)},T1=function(R,A,F,W,re,fe){var pe,ze,Ke,ct=8*fe-re-1,Lt=(1<>1,fr=re===23?Math.pow(2,-24)-Math.pow(2,-77):0,mr=W?0:fe-1,Pr=W?1:-1,zr=A<0||A===0&&1/A<0?1:0;for(A=Math.abs(A),isNaN(A)||A===1/0?(ze=isNaN(A)?1:0,pe=Lt):(pe=Math.floor(Math.log(A)/Math.LN2),A*(Ke=Math.pow(2,-pe))<1&&(pe--,Ke*=2),(A+=pe+$t>=1?fr/Ke:fr*Math.pow(2,1-$t))*Ke>=2&&(pe++,Ke/=2),pe+$t>=Lt?(ze=0,pe=Lt):pe+$t>=1?(ze=(A*Ke-1)*Math.pow(2,re),pe+=$t):(ze=A*Math.pow(2,$t-1)*Math.pow(2,re),pe=0));re>=8;R[F+mr]=255&ze,mr+=Pr,ze/=256,re-=8);for(pe=pe<0;R[F+mr]=255&pe,mr+=Pr,pe/=256,ct-=8);R[F+mr-Pr]|=128*zr};function wu(R){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(R)?R:new Uint8Array(R||0),this.pos=0,this.type=0,this.length=this.buf.length}wu.Varint=0,wu.Fixed64=1,wu.Bytes=2,wu.Fixed32=5;var Nx=4294967296,om=1/Nx,kw=typeof TextDecoder=="undefined"?null:new TextDecoder("utf-8");function Rv(R){return R.type===wu.Bytes?R.readVarint()+R.pos:R.pos+1}function sm(R,A,F){return F?4294967296*A+(R>>>0):4294967296*(A>>>0)+(R>>>0)}function Cw(R,A,F){var W=A<=16383?1:A<=2097151?2:A<=268435455?3:Math.floor(Math.log(A)/(7*Math.LN2));F.realloc(W);for(var re=F.pos-1;re>=R;re--)F.buf[re+W]=F.buf[re]}function Ux(R,A){for(var F=0;F>>8,R[F+2]=A>>>16,R[F+3]=A>>>24}function mC(R,A){return(R[A]|R[A+1]<<8|R[A+2]<<16)+(R[A+3]<<24)}wu.prototype={destroy:function(){this.buf=null},readFields:function(R,A,F){for(F=F||this.length;this.pos>3,fe=this.pos;this.type=7&W,R(re,A,this),this.pos===fe&&this.skip(W)}return A},readMessage:function(R,A){return this.readFields(R,A,this.readVarint()+this.pos)},readFixed32:function(){var R=uy(this.buf,this.pos);return this.pos+=4,R},readSFixed32:function(){var R=mC(this.buf,this.pos);return this.pos+=4,R},readFixed64:function(){var R=uy(this.buf,this.pos)+uy(this.buf,this.pos+4)*Nx;return this.pos+=8,R},readSFixed64:function(){var R=uy(this.buf,this.pos)+mC(this.buf,this.pos+4)*Nx;return this.pos+=8,R},readFloat:function(){var R=ly(this.buf,this.pos,!0,23,4);return this.pos+=4,R},readDouble:function(){var R=ly(this.buf,this.pos,!0,52,8);return this.pos+=8,R},readVarint:function(R){var A,F,W=this.buf;return A=127&(F=W[this.pos++]),F<128?A:(A|=(127&(F=W[this.pos++]))<<7,F<128?A:(A|=(127&(F=W[this.pos++]))<<14,F<128?A:(A|=(127&(F=W[this.pos++]))<<21,F<128?A:function(re,fe,pe){var ze,Ke,ct=pe.buf;if(ze=(112&(Ke=ct[pe.pos++]))>>4,Ke<128||(ze|=(127&(Ke=ct[pe.pos++]))<<3,Ke<128)||(ze|=(127&(Ke=ct[pe.pos++]))<<10,Ke<128)||(ze|=(127&(Ke=ct[pe.pos++]))<<17,Ke<128)||(ze|=(127&(Ke=ct[pe.pos++]))<<24,Ke<128)||(ze|=(1&(Ke=ct[pe.pos++]))<<31,Ke<128))return sm(re,ze,fe);throw new Error("Expected varint not more than 10 bytes")}(A|=(15&(F=W[this.pos]))<<28,R,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var R=this.readVarint();return R%2==1?(R+1)/-2:R/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var R=this.readVarint()+this.pos,A=this.pos;return this.pos=R,R-A>=12&&kw?function(F,W,re){return kw.decode(F.subarray(W,re))}(this.buf,A,R):function(F,W,re){for(var fe="",pe=W;pe239?4:Lt>223?3:Lt>191?2:1;if(pe+fr>re)break;fr===1?Lt<128&&($t=Lt):fr===2?(192&(ze=F[pe+1]))==128&&($t=(31&Lt)<<6|63&ze)<=127&&($t=null):fr===3?(Ke=F[pe+2],(192&(ze=F[pe+1]))==128&&(192&Ke)==128&&(($t=(15&Lt)<<12|(63&ze)<<6|63&Ke)<=2047||$t>=55296&&$t<=57343)&&($t=null)):fr===4&&(Ke=F[pe+2],ct=F[pe+3],(192&(ze=F[pe+1]))==128&&(192&Ke)==128&&(192&ct)==128&&(($t=(15&Lt)<<18|(63&ze)<<12|(63&Ke)<<6|63&ct)<=65535||$t>=1114112)&&($t=null)),$t===null?($t=65533,fr=1):$t>65535&&($t-=65536,fe+=String.fromCharCode($t>>>10&1023|55296),$t=56320|1023&$t),fe+=String.fromCharCode($t),pe+=fr}return fe}(this.buf,A,R)},readBytes:function(){var R=this.readVarint()+this.pos,A=this.buf.subarray(this.pos,R);return this.pos=R,A},readPackedVarint:function(R,A){if(this.type!==wu.Bytes)return R.push(this.readVarint(A));var F=Rv(this);for(R=R||[];this.pos127;);else if(A===wu.Bytes)this.pos=this.readVarint()+this.pos;else if(A===wu.Fixed32)this.pos+=4;else{if(A!==wu.Fixed64)throw new Error("Unimplemented type: "+A);this.pos+=8}},writeTag:function(R,A){this.writeVarint(R<<3|A)},realloc:function(R){for(var A=this.length||16;A268435455||R<0?function(A,F){var W,re;if(A>=0?(W=A%4294967296|0,re=A/4294967296|0):(re=~(-A/4294967296),4294967295^(W=~(-A%4294967296))?W=W+1|0:(W=0,re=re+1|0)),A>=18446744073709552e3||A<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");F.realloc(10),function(fe,pe,ze){ze.buf[ze.pos++]=127&fe|128,fe>>>=7,ze.buf[ze.pos++]=127&fe|128,fe>>>=7,ze.buf[ze.pos++]=127&fe|128,fe>>>=7,ze.buf[ze.pos++]=127&fe|128,ze.buf[ze.pos]=127&(fe>>>=7)}(W,0,F),function(fe,pe){var ze=(7&fe)<<4;pe.buf[pe.pos++]|=ze|((fe>>>=3)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe|((fe>>>=7)?128:0),fe&&(pe.buf[pe.pos++]=127&fe)))))}(re,F)}(R,this):(this.realloc(4),this.buf[this.pos++]=127&R|(R>127?128:0),R<=127||(this.buf[this.pos++]=127&(R>>>=7)|(R>127?128:0),R<=127||(this.buf[this.pos++]=127&(R>>>=7)|(R>127?128:0),R<=127||(this.buf[this.pos++]=R>>>7&127))))},writeSVarint:function(R){this.writeVarint(R<0?2*-R-1:2*R)},writeBoolean:function(R){this.writeVarint(!!R)},writeString:function(R){R=String(R),this.realloc(4*R.length),this.pos++;var A=this.pos;this.pos=function(W,re,fe){for(var pe,ze,Ke=0;Ke55295&&pe<57344){if(!ze){pe>56319||Ke+1===re.length?(W[fe++]=239,W[fe++]=191,W[fe++]=189):ze=pe;continue}if(pe<56320){W[fe++]=239,W[fe++]=191,W[fe++]=189,ze=pe;continue}pe=ze-55296<<10|pe-56320|65536,ze=null}else ze&&(W[fe++]=239,W[fe++]=191,W[fe++]=189,ze=null);pe<128?W[fe++]=pe:(pe<2048?W[fe++]=pe>>6|192:(pe<65536?W[fe++]=pe>>12|224:(W[fe++]=pe>>18|240,W[fe++]=pe>>12&63|128),W[fe++]=pe>>6&63|128),W[fe++]=63&pe|128)}return fe}(this.buf,R,this.pos);var F=this.pos-A;F>=128&&Cw(A,F,this),this.pos=A-1,this.writeVarint(F),this.pos+=F},writeFloat:function(R){this.realloc(4),T1(this.buf,R,this.pos,!0,23,4),this.pos+=4},writeDouble:function(R){this.realloc(8),T1(this.buf,R,this.pos,!0,52,8),this.pos+=8},writeBytes:function(R){var A=R.length;this.writeVarint(A),this.realloc(A);for(var F=0;F=128&&Cw(F,W,this),this.pos=F-1,this.writeVarint(W),this.pos+=W},writeMessage:function(R,A,F){this.writeTag(R,wu.Bytes),this.writeRawMessage(A,F)},writePackedVarint:function(R,A){A.length&&this.writeMessage(R,Ux,A)},writePackedSVarint:function(R,A){A.length&&this.writeMessage(R,q9,A)},writePackedBoolean:function(R,A){A.length&&this.writeMessage(R,U9,A)},writePackedFloat:function(R,A){A.length&&this.writeMessage(R,B9,A)},writePackedDouble:function(R,A){A.length&&this.writeMessage(R,N9,A)},writePackedFixed32:function(R,A){A.length&&this.writeMessage(R,LQ,A)},writePackedSFixed32:function(R,A){A.length&&this.writeMessage(R,V9,A)},writePackedFixed64:function(R,A){A.length&&this.writeMessage(R,G9,A)},writePackedSFixed64:function(R,A){A.length&&this.writeMessage(R,H9,A)},writeBytesField:function(R,A){this.writeTag(R,wu.Bytes),this.writeBytes(A)},writeFixed32Field:function(R,A){this.writeTag(R,wu.Fixed32),this.writeFixed32(A)},writeSFixed32Field:function(R,A){this.writeTag(R,wu.Fixed32),this.writeSFixed32(A)},writeFixed64Field:function(R,A){this.writeTag(R,wu.Fixed64),this.writeFixed64(A)},writeSFixed64Field:function(R,A){this.writeTag(R,wu.Fixed64),this.writeSFixed64(A)},writeVarintField:function(R,A){this.writeTag(R,wu.Varint),this.writeVarint(A)},writeSVarintField:function(R,A){this.writeTag(R,wu.Varint),this.writeSVarint(A)},writeStringField:function(R,A){this.writeTag(R,wu.Bytes),this.writeString(A)},writeFloatField:function(R,A){this.writeTag(R,wu.Fixed32),this.writeFloat(A)},writeDoubleField:function(R,A){this.writeTag(R,wu.Fixed64),this.writeDouble(A)},writeBooleanField:function(R,A){this.writeVarintField(R,!!A)}};var nS=o(Sd);let aS=3;function PQ(R,A,F){R===1&&F.readMessage(j9,A)}function j9(R,A,F){if(R===3){let{id:W,bitmap:re,width:fe,height:pe,left:ze,top:Ke,advance:ct}=F.readMessage(yC,{});A.push({id:W,bitmap:new na({width:fe+2*aS,height:pe+2*aS},re),metrics:{width:fe,height:pe,left:ze,top:Ke,advance:ct}})}}function yC(R,A,F){R===1?A.id=F.readVarint():R===2?A.bitmap=F.readBytes():R===3?A.width=F.readVarint():R===4?A.height=F.readVarint():R===5?A.left=F.readSVarint():R===6?A.top=F.readSVarint():R===7&&(A.advance=F.readVarint())}let _C=aS;function oS(R){let A=0,F=0;for(let pe of R)A+=pe.w*pe.h,F=Math.max(F,pe.w);R.sort((pe,ze)=>ze.h-pe.h);let W=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(A/.95)),F),h:1/0}],re=0,fe=0;for(let pe of R)for(let ze=W.length-1;ze>=0;ze--){let Ke=W[ze];if(!(pe.w>Ke.w||pe.h>Ke.h)){if(pe.x=Ke.x,pe.y=Ke.y,fe=Math.max(fe,pe.y+pe.h),re=Math.max(re,pe.x+pe.w),pe.w===Ke.w&&pe.h===Ke.h){let ct=W.pop();ze=0&&W>=A&&Iw[this.text.charCodeAt(W)];W--)F--;this.text=this.text.substring(A,F),this.sectionIndex=this.sectionIndex.slice(A,F)}substring(A,F){let W=new A1;return W.text=this.text.substring(A,F),W.sectionIndex=this.sectionIndex.slice(A,F),W.sections=this.sections,W}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce((A,F)=>Math.max(A,this.sections[F].scale),0)}addTextSection(A,F){this.text+=A.text,this.sections.push(Gx.forText(A.scale,A.fontStack||F));let W=this.sections.length-1;for(let re=0;re=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Hx(R,A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr){let zr=A1.fromFeature(R,re),ui;$t===i.ah.vertical&&zr.verticalizePunctuation();let{processBidirectionalText:yi,processStyledBidirectionalText:vn}=ys;if(yi&&zr.sections.length===1){ui=[];let Tn=yi(zr.toString(),S1(zr,ct,fe,A,W,mr));for(let pa of Tn){let ro=new A1;ro.text=pa,ro.sections=zr.sections;for(let Vo=0;Vo0&&tp>Df&&(Df=tp)}else{let Gc=ro[tu.fontStack],Zf=Gc&&Gc[$u];if(Zf&&Zf.rect)P1=Zf.rect,ff=Zf.metrics;else{let tp=pa[tu.fontStack],gg=tp&&tp[$u];if(!gg)continue;ff=gg.metrics}zv=(kh-tu.scale)*eu}ep?(Tn.verticalizable=!0,Wh.push({glyph:$u,imageName:v0,x:$o,y:Ju+zv,vertical:ep,scale:tu.scale,fontStack:tu.fontStack,sectionIndex:pc,metrics:ff,rect:P1}),$o+=Gp*tu.scale+Xn):(Wh.push({glyph:$u,imageName:v0,x:$o,y:Ju+zv,vertical:ep,scale:tu.scale,fontStack:tu.fontStack,sectionIndex:pc,metrics:ff,rect:P1}),$o+=ff.advance*tu.scale+Xn)}Wh.length!==0&&(qu=Math.max($o-Xn,qu),lm(Wh,0,Wh.length-1,Qv,Df)),$o=0;let Fv=sa*kh+Df;ud.lineOffset=Math.max(Df,Ed),Ju+=Fv,Mh=Math.max(Fv,Mh),++ld}var Eh;let Gd=Ju-Sh,{horizontalAlign:Hd,verticalAlign:jd}=Dw(Mo);(function(Af,kh,Ed,ud,Wh,Df,Fv,lv,tu){let pc=(kh-Ed)*Wh,$u=0;$u=Df!==Fv?-lv*ud-Sh:(-ud*tu+.5)*Fv;for(let zv of Af)for(let ff of zv.positionedGlyphs)ff.x+=pc,ff.y+=$u})(Tn.positionedLines,Qv,Hd,jd,qu,Mh,sa,Gd,Xa.length),Tn.top+=-jd*Gd,Tn.bottom=Tn.top+Gd,Tn.left+=-Hd*qu,Tn.right=Tn.left+qu}(un,A,F,W,ui,pe,ze,Ke,$t,ct,fr,Pr),!function(Tn){for(let pa of Tn)if(pa.positionedGlyphs.length!==0)return!1;return!0}(zi)&&un}let Iw={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},W9={10:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},X9={40:!0};function xC(R,A,F,W,re,fe){if(A.imageName){let pe=W[A.imageName];return pe?pe.displaySize[0]*A.scale*eu/fe+re:0}{let pe=F[A.fontStack],ze=pe&&pe[R];return ze?ze.metrics.advance*A.scale+re:0}}function bC(R,A,F,W){let re=Math.pow(R-A,2);return W?R=0,ct=0;for(let $t=0;$tct){let Lt=Math.ceil(fe/ct);re*=Lt/pe,pe=Lt}return{x1:W,y1:re,x2:W+fe,y2:re+pe}}function AC(R,A,F,W,re,fe){let pe=R.image,ze;if(pe.content){let ui=pe.content,yi=pe.pixelRatio||1;ze=[ui[0]/yi,ui[1]/yi,pe.displaySize[0]-ui[2]/yi,pe.displaySize[1]-ui[3]/yi]}let Ke=A.left*fe,ct=A.right*fe,Lt,$t,fr,mr;F==="width"||F==="both"?(mr=re[0]+Ke-W[3],$t=re[0]+ct+W[1]):(mr=re[0]+(Ke+ct-pe.displaySize[0])/2,$t=mr+pe.displaySize[0]);let Pr=A.top*fe,zr=A.bottom*fe;return F==="height"||F==="both"?(Lt=re[1]+Pr-W[0],fr=re[1]+zr+W[2]):(Lt=re[1]+(Pr+zr-pe.displaySize[1])/2,fr=Lt+pe.displaySize[1]),{image:pe,top:Lt,right:$t,bottom:fr,left:mr,collisionPadding:ze}}let Wx=255,d0=128,um=Wx*d0;function SC(R,A){let{expression:F}=A;if(F.kind==="constant")return{kind:"constant",layoutSize:F.evaluate(new rs(R+1))};if(F.kind==="source")return{kind:"source"};{let{zoomStops:W,interpolationType:re}=F,fe=0;for(;fepe.id),this.index=A.index,this.pixelRatio=A.pixelRatio,this.sourceLayerIndex=A.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=Ri([]),this.placementViewportMatrix=Ri([]);let F=this.layers[0]._unevaluatedLayout._values;this.textSizeData=SC(this.zoom,F["text-size"]),this.iconSizeData=SC(this.zoom,F["icon-size"]);let W=this.layers[0].layout,re=W.get("symbol-sort-key"),fe=W.get("symbol-z-order");this.canOverlap=sS(W,"text-overlap","text-allow-overlap")!=="never"||sS(W,"icon-overlap","icon-allow-overlap")!=="never"||W.get("text-ignore-placement")||W.get("icon-ignore-placement"),this.sortFeaturesByKey=fe!=="viewport-y"&&!re.isConstant(),this.sortFeaturesByY=(fe==="viewport-y"||fe==="auto"&&!this.sortFeaturesByKey)&&this.canOverlap,W.get("symbol-placement")==="point"&&(this.writingModes=W.get("text-writing-mode").map(pe=>i.ah[pe])),this.stateDependentLayerIds=this.layers.filter(pe=>pe.isStateDependent()).map(pe=>pe.id),this.sourceID=A.sourceID}createArrays(){this.text=new cS(new Ms(this.layers,this.zoom,A=>/^text/.test(A))),this.icon=new cS(new Ms(this.layers,this.zoom,A=>/^icon/.test(A))),this.glyphOffsetArray=new Co,this.lineVertexArray=new Qa,this.symbolInstances=new $a,this.textAnchorOffsets=new Bo}calculateGlyphDependencies(A,F,W,re,fe){for(let pe=0;pe0)&&(pe.value.kind!=="constant"||pe.value.value.length>0),Lt=Ke.value.kind!=="constant"||!!Ke.value.value||Object.keys(Ke.parameters).length>0,$t=fe.get("symbol-sort-key");if(this.features=[],!ct&&!Lt)return;let fr=F.iconDependencies,mr=F.glyphDependencies,Pr=F.availableImages,zr=new rs(this.zoom);for(let{feature:ui,id:yi,index:vn,sourceLayerIndex:zi}of A){let un=re._featureFilter.needGeometry,Tn=Sl(ui,un);if(!re._featureFilter.filter(zr,Tn,W))continue;let pa,ro;if(un||(Tn.geometry=$s(ui)),ct){let Xa=re.getValueAndResolveTokens("text-field",Tn,W,Pr),sa=ri.factory(Xa),Mo=this.hasRTLText=this.hasRTLText||uS(sa);(!Mo||ys.getRTLTextPluginStatus()==="unavailable"||Mo&&ys.isParsed())&&(pa=am(sa,re,Tn))}if(Lt){let Xa=re.getValueAndResolveTokens("icon-image",Tn,W,Pr);ro=Xa instanceof tn?Xa:tn.fromString(Xa)}if(!pa&&!ro)continue;let Vo=this.sortFeaturesByKey?$t.evaluate(Tn,{},W):void 0;if(this.features.push({id:yi,text:pa,icon:ro,index:vn,sourceLayerIndex:zi,geometry:Tn.geometry,properties:ui.properties,type:Y9[ui.type],sortKey:Vo}),ro&&(fr[ro.name]=!0),pa){let Xa=pe.evaluate(Tn,{},W).join(","),sa=fe.get("text-rotation-alignment")!=="viewport"&&fe.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(i.ah.vertical)>=0;for(let Mo of pa.sections)if(Mo.image)fr[Mo.image.name]=!0;else{let fo=Ka(pa.toString()),lo=Mo.fontStack||Xa,Xn=mr[lo]=mr[lo]||{};this.calculateGlyphDependencies(Mo.text,Xn,sa,this.allowVerticalPlacement,fo)}}}fe.get("symbol-placement")==="line"&&(this.features=function(ui){let yi={},vn={},zi=[],un=0;function Tn(Xa){zi.push(ui[Xa]),un++}function pa(Xa,sa,Mo){let fo=vn[Xa];return delete vn[Xa],vn[sa]=fo,zi[fo].geometry[0].pop(),zi[fo].geometry[0]=zi[fo].geometry[0].concat(Mo[0]),fo}function ro(Xa,sa,Mo){let fo=yi[sa];return delete yi[sa],yi[Xa]=fo,zi[fo].geometry[0].shift(),zi[fo].geometry[0]=Mo[0].concat(zi[fo].geometry[0]),fo}function Vo(Xa,sa,Mo){let fo=Mo?sa[0][sa[0].length-1]:sa[0][0];return`${Xa}:${fo.x}:${fo.y}`}for(let Xa=0;XaXa.geometry)}(this.features)),this.sortFeaturesByKey&&this.features.sort((ui,yi)=>ui.sortKey-yi.sortKey)}update(A,F,W){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(A,F,this.layers,W),this.icon.programConfigurations.updatePaintArrays(A,F,this.layers,W))}isEmpty(){return this.symbolInstances.length===0&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(A){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(A),this.iconCollisionBox.upload(A)),this.text.upload(A,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(A,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(A,F){let W=this.lineVertexArray.length;if(A.segment!==void 0){let re=A.dist(F[A.segment+1]),fe=A.dist(F[A.segment]),pe={};for(let ze=A.segment+1;ze=0;ze--)pe[ze]={x:F[ze].x,y:F[ze].y,tileUnitDistanceFromAnchor:fe},ze>0&&(fe+=F[ze-1].dist(F[ze]));for(let ze=0;ze0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(A,F){let W=A.placedSymbolArray.get(F),re=W.vertexStartIndex+4*W.numGlyphs;for(let fe=W.vertexStartIndex;fere[ze]-re[Ke]||fe[Ke]-fe[ze]),pe}addToSortKeyRanges(A,F){let W=this.sortKeyRanges[this.sortKeyRanges.length-1];W&&W.sortKey===F?W.symbolInstanceEnd=A+1:this.sortKeyRanges.push({sortKey:F,symbolInstanceStart:A,symbolInstanceEnd:A+1})}sortFeatures(A){if(this.sortFeaturesByY&&this.sortedAngle!==A&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(A),this.sortedAngle=A,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(let F of this.symbolInstanceIndexes){let W=this.symbolInstances.get(F);this.featureSortOrder.push(W.featureIndex),[W.rightJustifiedTextSymbolIndex,W.centerJustifiedTextSymbolIndex,W.leftJustifiedTextSymbolIndex].forEach((re,fe,pe)=>{re>=0&&pe.indexOf(re)===fe&&this.addIndicesForPlacedSymbol(this.text,re)}),W.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,W.verticalPlacedTextSymbolIndex),W.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,W.placedIconSymbolIndex),W.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,W.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}let Tf,Xx;Fi("SymbolBucket",M1,{omit:["layers","collisionBoxArray","features","compareText"]}),M1.MAX_GLYPHS=65535,M1.addDynamicAttributes=lS;var zw={get paint(){return Xx=Xx||new ue({"icon-opacity":new oo(ce.paint_symbol["icon-opacity"]),"icon-color":new oo(ce.paint_symbol["icon-color"]),"icon-halo-color":new oo(ce.paint_symbol["icon-halo-color"]),"icon-halo-width":new oo(ce.paint_symbol["icon-halo-width"]),"icon-halo-blur":new oo(ce.paint_symbol["icon-halo-blur"]),"icon-translate":new Ua(ce.paint_symbol["icon-translate"]),"icon-translate-anchor":new Ua(ce.paint_symbol["icon-translate-anchor"]),"text-opacity":new oo(ce.paint_symbol["text-opacity"]),"text-color":new oo(ce.paint_symbol["text-color"],{runtimeType:er,getOverride:R=>R.textColor,hasOverride:R=>!!R.textColor}),"text-halo-color":new oo(ce.paint_symbol["text-halo-color"]),"text-halo-width":new oo(ce.paint_symbol["text-halo-width"]),"text-halo-blur":new oo(ce.paint_symbol["text-halo-blur"]),"text-translate":new Ua(ce.paint_symbol["text-translate"]),"text-translate-anchor":new Ua(ce.paint_symbol["text-translate-anchor"])})},get layout(){return Tf=Tf||new ue({"symbol-placement":new Ua(ce.layout_symbol["symbol-placement"]),"symbol-spacing":new Ua(ce.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Ua(ce.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new oo(ce.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Ua(ce.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Ua(ce.layout_symbol["icon-allow-overlap"]),"icon-overlap":new Ua(ce.layout_symbol["icon-overlap"]),"icon-ignore-placement":new Ua(ce.layout_symbol["icon-ignore-placement"]),"icon-optional":new Ua(ce.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Ua(ce.layout_symbol["icon-rotation-alignment"]),"icon-size":new oo(ce.layout_symbol["icon-size"]),"icon-text-fit":new Ua(ce.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Ua(ce.layout_symbol["icon-text-fit-padding"]),"icon-image":new oo(ce.layout_symbol["icon-image"]),"icon-rotate":new oo(ce.layout_symbol["icon-rotate"]),"icon-padding":new oo(ce.layout_symbol["icon-padding"]),"icon-keep-upright":new Ua(ce.layout_symbol["icon-keep-upright"]),"icon-offset":new oo(ce.layout_symbol["icon-offset"]),"icon-anchor":new oo(ce.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Ua(ce.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Ua(ce.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Ua(ce.layout_symbol["text-rotation-alignment"]),"text-field":new oo(ce.layout_symbol["text-field"]),"text-font":new oo(ce.layout_symbol["text-font"]),"text-size":new oo(ce.layout_symbol["text-size"]),"text-max-width":new oo(ce.layout_symbol["text-max-width"]),"text-line-height":new Ua(ce.layout_symbol["text-line-height"]),"text-letter-spacing":new oo(ce.layout_symbol["text-letter-spacing"]),"text-justify":new oo(ce.layout_symbol["text-justify"]),"text-radial-offset":new oo(ce.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Ua(ce.layout_symbol["text-variable-anchor"]),"text-variable-anchor-offset":new oo(ce.layout_symbol["text-variable-anchor-offset"]),"text-anchor":new oo(ce.layout_symbol["text-anchor"]),"text-max-angle":new Ua(ce.layout_symbol["text-max-angle"]),"text-writing-mode":new Ua(ce.layout_symbol["text-writing-mode"]),"text-rotate":new oo(ce.layout_symbol["text-rotate"]),"text-padding":new Ua(ce.layout_symbol["text-padding"]),"text-keep-upright":new Ua(ce.layout_symbol["text-keep-upright"]),"text-transform":new oo(ce.layout_symbol["text-transform"]),"text-offset":new oo(ce.layout_symbol["text-offset"]),"text-allow-overlap":new Ua(ce.layout_symbol["text-allow-overlap"]),"text-overlap":new Ua(ce.layout_symbol["text-overlap"]),"text-ignore-placement":new Ua(ce.layout_symbol["text-ignore-placement"]),"text-optional":new Ua(ce.layout_symbol["text-optional"])})}};class Zx{constructor(A){if(A.property.overrides===void 0)throw new Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=A.property.overrides?A.property.overrides.runtimeType:Vt,this.defaultValue=A}evaluate(A){if(A.formattedSection){let F=this.defaultValue.property.overrides;if(F&&F.hasOverride(A.formattedSection))return F.getOverride(A.formattedSection)}return A.feature&&A.featureState?this.defaultValue.evaluate(A.feature,A.featureState):this.defaultValue.property.specification.default}eachChild(A){this.defaultValue.isConstant()||A(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}Fi("FormatSectionOverride",Zx,{omit:["defaultValue"]});class cy extends B{constructor(A){super(A,zw)}recalculate(A,F){if(super.recalculate(A,F),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout._values["icon-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout._values["text-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")==="map"?"map":"viewport"),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){let W=this.layout.get("text-writing-mode");if(W){let re=[];for(let fe of W)re.indexOf(fe)<0&&re.push(fe);this.layout._values["text-writing-mode"]=re}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()}getValueAndResolveTokens(A,F,W,re){let fe=this.layout.get(A).evaluate(F,{},W,re),pe=this._unevaluatedLayout._values[A];return pe.isDataDriven()||Dc(pe.value)||!fe?fe:function(ze,Ke){return Ke.replace(/{([^{}]+)}/g,(ct,Lt)=>ze&&Lt in ze?String(ze[Lt]):"")}(F.properties,fe)}createBucket(A){return new M1(A)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error("Should take a different path in FeatureIndex")}_setPaintOverrides(){for(let A of zw.paint.overridableProperties){if(!cy.hasPaintOverride(this.layout,A))continue;let F=this.paint.get(A),W=new Zx(F),re=new Eu(W,F.property.specification),fe=null;fe=F.value.kind==="constant"||F.value.kind==="source"?new bc("source",re):new hu("composite",re,F.value.zoomStops),this.paint._values[A]=new xu(F.property,fe,F.parameters)}}_handleOverridablePaintPropertyUpdate(A,F,W){return!(!this.layout||F.isDataDriven()||W.isDataDriven())&&cy.hasPaintOverride(this.layout,A)}static hasPaintOverride(A,F){let W=A.get("text-field"),re=zw.paint.properties[F],fe=!1,pe=ze=>{for(let Ke of ze)if(re.overrides&&re.overrides.hasOverride(Ke))return void(fe=!0)};if(W.value.kind==="constant"&&W.value.value instanceof ri)pe(W.value.value.sections);else if(W.value.kind==="source"){let ze=ct=>{fe||(ct instanceof ua&&Sn(ct.value)===ti?pe(ct.value.sections):ct instanceof Zl?pe(ct.sections):ct.eachChild(ze))},Ke=W.value;Ke._styleExpression&&ze(Ke._styleExpression.expression)}return fe}}let MC;var Yx={get paint(){return MC=MC||new ue({"background-color":new Ua(ce.paint_background["background-color"]),"background-pattern":new hc(ce.paint_background["background-pattern"]),"background-opacity":new Ua(ce.paint_background["background-opacity"])})}};class J9 extends B{constructor(A){super(A,Yx)}}let fS;var EC={get paint(){return fS=fS||new ue({"raster-opacity":new Ua(ce.paint_raster["raster-opacity"]),"raster-hue-rotate":new Ua(ce.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new Ua(ce.paint_raster["raster-brightness-min"]),"raster-brightness-max":new Ua(ce.paint_raster["raster-brightness-max"]),"raster-saturation":new Ua(ce.paint_raster["raster-saturation"]),"raster-contrast":new Ua(ce.paint_raster["raster-contrast"]),"raster-resampling":new Ua(ce.paint_raster["raster-resampling"]),"raster-fade-duration":new Ua(ce.paint_raster["raster-fade-duration"])})}};class Kx extends B{constructor(A){super(A,EC)}}class hS extends B{constructor(A){super(A,{}),this.onAdd=F=>{this.implementation.onAdd&&this.implementation.onAdd(F,F.painter.context.gl)},this.onRemove=F=>{this.implementation.onRemove&&this.implementation.onRemove(F,F.painter.context.gl)},this.implementation=A}is3D(){return this.implementation.renderingMode==="3d"}hasOffscreenPass(){return this.implementation.prerender!==void 0}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){throw new Error("Custom layers cannot be serialized")}}class dS{constructor(A){this._methodToThrottle=A,this._triggered=!1,typeof MessageChannel!="undefined"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(()=>{this._triggered=!1,this._methodToThrottle()},0))}remove(){delete this._channel,this._methodToThrottle=()=>{}}}let vS=63710088e-1;class dg{constructor(A,F){if(isNaN(A)||isNaN(F))throw new Error(`Invalid LngLat object: (${A}, ${F})`);if(this.lng=+A,this.lat=+F,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new dg(S(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(A){let F=Math.PI/180,W=this.lat*F,re=A.lat*F,fe=Math.sin(W)*Math.sin(re)+Math.cos(W)*Math.cos(re)*Math.cos((A.lng-this.lng)*F);return vS*Math.acos(Math.min(fe,1))}static convert(A){if(A instanceof dg)return A;if(Array.isArray(A)&&(A.length===2||A.length===3))return new dg(Number(A[0]),Number(A[1]));if(!Array.isArray(A)&&typeof A=="object"&&A!==null)return new dg(Number("lng"in A?A.lng:A.lon),Number(A.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")}}let E1=2*Math.PI*vS;function kC(R){return E1*Math.cos(R*Math.PI/180)}function Ow(R){return(180+R)/360}function CC(R){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+R*Math.PI/360)))/360}function qw(R,A){return R/kC(A)}function Jx(R){return 360/Math.PI*Math.atan(Math.exp((180-360*R)*Math.PI/180))-90}class $x{constructor(A,F,W=0){this.x=+A,this.y=+F,this.z=+W}static fromLngLat(A,F=0){let W=dg.convert(A);return new $x(Ow(W.lng),CC(W.lat),qw(F,W.lat))}toLngLat(){return new dg(360*this.x-180,Jx(this.y))}toAltitude(){return this.z*kC(Jx(this.y))}meterInMercatorCoordinateUnits(){return 1/E1*(A=Jx(this.y),1/Math.cos(A*Math.PI/180));var A}}function mp(R,A,F){var W=2*Math.PI*6378137/256/Math.pow(2,F);return[R*W-2*Math.PI*6378137/2,A*W-2*Math.PI*6378137/2]}class pS{constructor(A,F,W){if(!function(re,fe,pe){return!(re<0||re>25||pe<0||pe>=Math.pow(2,re)||fe<0||fe>=Math.pow(2,re))}(A,F,W))throw new Error(`x=${F}, y=${W}, z=${A} outside of bounds. 0<=x<${Math.pow(2,A)}, 0<=y<${Math.pow(2,A)} 0<=z<=25 `);this.z=A,this.x=F,this.y=W,this.key=Qx(0,A,A,F,W)}equals(A){return this.z===A.z&&this.x===A.x&&this.y===A.y}url(A,F,W){let re=(pe=this.y,ze=this.z,Ke=mp(256*(fe=this.x),256*(pe=Math.pow(2,ze)-pe-1),ze),ct=mp(256*(fe+1),256*(pe+1),ze),Ke[0]+","+Ke[1]+","+ct[0]+","+ct[1]);var fe,pe,ze,Ke,ct;let Lt=function($t,fr,mr){let Pr,zr="";for(let ui=$t;ui>0;ui--)Pr=1<1?"@2x":"").replace(/{quadkey}/g,Lt).replace(/{bbox-epsg-3857}/g,re)}isChildOf(A){let F=this.z-A.z;return F>0&&A.x===this.x>>F&&A.y===this.y>>F}getTilePoint(A){let F=Math.pow(2,this.z);return new u((A.x*F-this.x)*ja,(A.y*F-this.y)*ja)}toString(){return`${this.z}/${this.x}/${this.y}`}}class LC{constructor(A,F){this.wrap=A,this.canonical=F,this.key=Qx(A,F.z,F.z,F.x,F.y)}}class $v{constructor(A,F,W,re,fe){if(A= z; overscaledZ = ${A}; z = ${W}`);this.overscaledZ=A,this.wrap=F,this.canonical=new pS(W,+re,+fe),this.key=Qx(F,A,W,re,fe)}clone(){return new $v(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(A){return this.overscaledZ===A.overscaledZ&&this.wrap===A.wrap&&this.canonical.equals(A.canonical)}scaledTo(A){if(A>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${A}; overscaledZ = ${this.overscaledZ}`);let F=this.canonical.z-A;return A>this.canonical.z?new $v(A,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new $v(A,this.wrap,A,this.canonical.x>>F,this.canonical.y>>F)}calculateScaledKey(A,F){if(A>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${A}; overscaledZ = ${this.overscaledZ}`);let W=this.canonical.z-A;return A>this.canonical.z?Qx(this.wrap*+F,A,this.canonical.z,this.canonical.x,this.canonical.y):Qx(this.wrap*+F,A,A,this.canonical.x>>W,this.canonical.y>>W)}isChildOf(A){if(A.wrap!==this.wrap)return!1;let F=this.canonical.z-A.canonical.z;return A.overscaledZ===0||A.overscaledZ>F&&A.canonical.y===this.canonical.y>>F}children(A){if(this.overscaledZ>=A)return[new $v(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];let F=this.canonical.z+1,W=2*this.canonical.x,re=2*this.canonical.y;return[new $v(F,this.wrap,F,W,re),new $v(F,this.wrap,F,W+1,re),new $v(F,this.wrap,F,W,re+1),new $v(F,this.wrap,F,W+1,re+1)]}isLessThan(A){return this.wrapA.wrap)&&(this.overscaledZA.overscaledZ)&&(this.canonical.xA.canonical.x)&&this.canonical.ythis.max&&(this.max=$t),$t=this.dim+1||F<-1||F>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(F+1)*this.stride+(A+1)}unpack(A,F,W){return A*this.redFactor+F*this.greenFactor+W*this.blueFactor-this.baseShift}getPixels(){return new Ki({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(A,F,W){if(this.dim!==A.dim)throw new Error("dem dimension mismatch");let re=F*this.dim,fe=F*this.dim+this.dim,pe=W*this.dim,ze=W*this.dim+this.dim;switch(F){case-1:re=fe-1;break;case 1:fe=re+1}switch(W){case-1:pe=ze-1;break;case 1:ze=pe+1}let Ke=-F*this.dim,ct=-W*this.dim;for(let Lt=pe;Lt=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${A} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[A]}}class gS{constructor(A,F,W,re,fe){this.type="Feature",this._vectorTileFeature=A,A._z=F,A._x=W,A._y=re,this.properties=A.properties,this.id=fe}get geometry(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(A){this._geometry=A}toJSON(){let A={geometry:this.geometry};for(let F in this)F!=="_geometry"&&F!=="_vectorTileFeature"&&(A[F]=this[F]);return A}}class fy{constructor(A,F){this.tileID=A,this.x=A.canonical.x,this.y=A.canonical.y,this.z=A.canonical.z,this.grid=new Qi(ja,16,0),this.grid3D=new Qi(ja,16,0),this.featureIndexArray=new Ts,this.promoteId=F}insert(A,F,W,re,fe,pe){let ze=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(W,re,fe);let Ke=pe?this.grid3D:this.grid;for(let ct=0;ct=0&&$t[3]>=0&&Ke.insert(ze,$t[0],$t[1],$t[2],$t[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new br.VectorTile(new nS(this.rawTileData)).layers,this.sourceLayerCoder=new IC(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(A,F,W,re){this.loadVTLayers();let fe=A.params||{},pe=ja/A.tileSize/A.scale,ze=Fc(fe.filter),Ke=A.queryGeometry,ct=A.queryPadding*pe,Lt=DC(Ke),$t=this.grid.query(Lt.minX-ct,Lt.minY-ct,Lt.maxX+ct,Lt.maxY+ct),fr=DC(A.cameraQueryGeometry),mr=this.grid3D.query(fr.minX-ct,fr.minY-ct,fr.maxX+ct,fr.maxY+ct,(ui,yi,vn,zi)=>function(un,Tn,pa,ro,Vo){for(let sa of un)if(Tn<=sa.x&&pa<=sa.y&&ro>=sa.x&&Vo>=sa.y)return!0;let Xa=[new u(Tn,pa),new u(Tn,Vo),new u(ro,Vo),new u(ro,pa)];if(un.length>2){for(let sa of Xa)if(Ui(un,sa))return!0}for(let sa=0;sa(zi||(zi=$s(un)),Tn.queryIntersectsFeature(Ke,un,pa,zi,this.z,A.transform,pe,A.pixelPosMatrix)))}return Pr}loadMatchingFeature(A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t){let fr=this.bucketLayerIDs[F];if(pe&&!function(ui,yi){for(let vn=0;vn=0)return!0;return!1}(pe,fr))return;let mr=this.sourceLayerCoder.decode(W),Pr=this.vtLayers[mr].feature(re);if(fe.needGeometry){let ui=Sl(Pr,!0);if(!fe.filter(new rs(this.tileID.overscaledZ),ui,this.tileID.canonical))return}else if(!fe.filter(new rs(this.tileID.overscaledZ),Pr))return;let zr=this.getId(Pr,mr);for(let ui=0;ui{let ze=A instanceof Ac?A.get(pe):null;return ze&&ze.evaluate?ze.evaluate(F,W,re):ze})}function DC(R){let A=1/0,F=1/0,W=-1/0,re=-1/0;for(let fe of R)A=Math.min(A,fe.x),F=Math.min(F,fe.y),W=Math.max(W,fe.x),re=Math.max(re,fe.y);return{minX:A,minY:F,maxX:W,maxY:re}}function $9(R,A){return A-R}function FC(R,A,F,W,re){let fe=[];for(let pe=0;pe=W&&$t.x>=W||(Lt.x>=W?Lt=new u(W,Lt.y+(W-Lt.x)/($t.x-Lt.x)*($t.y-Lt.y))._round():$t.x>=W&&($t=new u(W,Lt.y+(W-Lt.x)/($t.x-Lt.x)*($t.y-Lt.y))._round()),Lt.y>=re&&$t.y>=re||(Lt.y>=re?Lt=new u(Lt.x+(re-Lt.y)/($t.y-Lt.y)*($t.x-Lt.x),re)._round():$t.y>=re&&($t=new u(Lt.x+(re-Lt.y)/($t.y-Lt.y)*($t.x-Lt.x),re)._round()),Ke&&Lt.equals(Ke[Ke.length-1])||(Ke=[Lt],fe.push(Ke)),Ke.push($t)))))}}return fe}Fi("FeatureIndex",fy,{omit:["rawTileData","sourceLayerCoder"]});class vg extends u{constructor(A,F,W,re){super(A,F),this.angle=W,re!==void 0&&(this.segment=re)}clone(){return new vg(this.x,this.y,this.angle,this.segment)}}function mS(R,A,F,W,re){if(A.segment===void 0||F===0)return!0;let fe=A,pe=A.segment+1,ze=0;for(;ze>-F/2;){if(pe--,pe<0)return!1;ze-=R[pe].dist(fe),fe=R[pe]}ze+=R[pe].dist(R[pe+1]),pe++;let Ke=[],ct=0;for(;zeW;)ct-=Ke.shift().angleDelta;if(ct>re)return!1;pe++,ze+=Lt.dist($t)}return!0}function zC(R){let A=0;for(let F=0;Fct){let Pr=(ct-Ke)/mr,zr=Lo.number($t.x,fr.x,Pr),ui=Lo.number($t.y,fr.y,Pr),yi=new vg(zr,ui,fr.angleTo($t),Lt);return yi._round(),!pe||mS(R,yi,ze,pe,A)?yi:void 0}Ke+=mr}}function eO(R,A,F,W,re,fe,pe,ze,Ke){let ct=OC(W,fe,pe),Lt=qC(W,re),$t=Lt*pe,fr=R[0].x===0||R[0].x===Ke||R[0].y===0||R[0].y===Ke;return A-$t=0&&un=0&&Tn=0&&fr+ct<=Lt){let pa=new vg(un,Tn,vn,Pr);pa._round(),W&&!mS(R,pa,fe,W,re)||mr.push(pa)}}$t+=yi}return ze||mr.length||pe||(mr=BC(R,$t/2,F,W,re,fe,pe,!0,Ke)),mr}Fi("Anchor",vg);let k1=Md;function NC(R,A,F,W){let re=[],fe=R.image,pe=fe.pixelRatio,ze=fe.paddedRect.w-2*k1,Ke=fe.paddedRect.h-2*k1,ct={x1:R.left,y1:R.top,x2:R.right,y2:R.bottom},Lt=fe.stretchX||[[0,ze]],$t=fe.stretchY||[[0,Ke]],fr=(Xn,Ro)=>Xn+Ro[1]-Ro[0],mr=Lt.reduce(fr,0),Pr=$t.reduce(fr,0),zr=ze-mr,ui=Ke-Pr,yi=0,vn=mr,zi=0,un=Pr,Tn=0,pa=zr,ro=0,Vo=ui;if(fe.content&&W){let Xn=fe.content,Ro=Xn[2]-Xn[0],uo=Xn[3]-Xn[1];(fe.textFitWidth||fe.textFitHeight)&&(ct=TC(R)),yi=pg(Lt,0,Xn[0]),zi=pg($t,0,Xn[1]),vn=pg(Lt,Xn[0],Xn[2]),un=pg($t,Xn[1],Xn[3]),Tn=Xn[0]-yi,ro=Xn[1]-zi,pa=Ro-vn,Vo=uo-un}let Xa=ct.x1,sa=ct.y1,Mo=ct.x2-Xa,fo=ct.y2-sa,lo=(Xn,Ro,uo,$o)=>{let Ju=Bw(Xn.stretch-yi,vn,Mo,Xa),qu=C1(Xn.fixed-Tn,pa,Xn.stretch,mr),Mh=Bw(Ro.stretch-zi,un,fo,sa),Qv=C1(Ro.fixed-ro,Vo,Ro.stretch,Pr),ld=Bw(uo.stretch-yi,vn,Mo,Xa),Eh=C1(uo.fixed-Tn,pa,uo.stretch,mr),Gd=Bw($o.stretch-zi,un,fo,sa),Hd=C1($o.fixed-ro,Vo,$o.stretch,Pr),jd=new u(Ju,Mh),Af=new u(ld,Mh),kh=new u(ld,Gd),Ed=new u(Ju,Gd),ud=new u(qu/pe,Qv/pe),Wh=new u(Eh/pe,Hd/pe),Df=A*Math.PI/180;if(Df){let tu=Math.sin(Df),pc=Math.cos(Df),$u=[pc,-tu,tu,pc];jd._matMult($u),Af._matMult($u),Ed._matMult($u),kh._matMult($u)}let Fv=Xn.stretch+Xn.fixed,lv=Ro.stretch+Ro.fixed;return{tl:jd,tr:Af,bl:Ed,br:kh,tex:{x:fe.paddedRect.x+k1+Fv,y:fe.paddedRect.y+k1+lv,w:uo.stretch+uo.fixed-Fv,h:$o.stretch+$o.fixed-lv},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:ud,pixelOffsetBR:Wh,minFontScaleX:pa/pe/Mo,minFontScaleY:Vo/pe/fo,isSDF:F}};if(W&&(fe.stretchX||fe.stretchY)){let Xn=UC(Lt,zr,mr),Ro=UC($t,ui,Pr);for(let uo=0;uo0&&(zr=Math.max(10,zr),this.circleDiameter=zr)}else{let fr=!(($t=pe.image)===null||$t===void 0)&&$t.content&&(pe.image.textFitWidth||pe.image.textFitHeight)?TC(pe):{x1:pe.left,y1:pe.top,x2:pe.right,y2:pe.bottom};fr.y1=fr.y1*ze-Ke[0],fr.y2=fr.y2*ze+Ke[2],fr.x1=fr.x1*ze-Ke[3],fr.x2=fr.x2*ze+Ke[1];let mr=pe.collisionPadding;if(mr&&(fr.x1-=mr[0]*ze,fr.y1-=mr[1]*ze,fr.x2+=mr[2]*ze,fr.y2+=mr[3]*ze),Lt){let Pr=new u(fr.x1,fr.y1),zr=new u(fr.x2,fr.y1),ui=new u(fr.x1,fr.y2),yi=new u(fr.x2,fr.y2),vn=Lt*Math.PI/180;Pr._rotate(vn),zr._rotate(vn),ui._rotate(vn),yi._rotate(vn),fr.x1=Math.min(Pr.x,zr.x,ui.x,yi.x),fr.x2=Math.max(Pr.x,zr.x,ui.x,yi.x),fr.y1=Math.min(Pr.y,zr.y,ui.y,yi.y),fr.y2=Math.max(Pr.y,zr.y,ui.y,yi.y)}A.emplaceBack(F.x,F.y,fr.x1,fr.y1,fr.x2,fr.y2,W,re,fe)}this.boxEndIndex=A.length}}class Vp{constructor(A=[],F=(W,re)=>Wre?1:0){if(this.data=A,this.length=this.data.length,this.compare=F,this.length>0)for(let W=(this.length>>1)-1;W>=0;W--)this._down(W)}push(A){this.data.push(A),this._up(this.length++)}pop(){if(this.length===0)return;let A=this.data[0],F=this.data.pop();return--this.length>0&&(this.data[0]=F,this._down(0)),A}peek(){return this.data[0]}_up(A){let{data:F,compare:W}=this,re=F[A];for(;A>0;){let fe=A-1>>1,pe=F[fe];if(W(re,pe)>=0)break;F[A]=pe,A=fe}F[A]=re}_down(A){let{data:F,compare:W}=this,re=this.length>>1,fe=F[A];for(;A=0)break;F[A]=F[pe],A=pe}F[A]=fe}}function tO(R,A=1,F=!1){let W=1/0,re=1/0,fe=-1/0,pe=-1/0,ze=R[0];for(let mr=0;mrfe)&&(fe=Pr.x),(!mr||Pr.y>pe)&&(pe=Pr.y)}let Ke=Math.min(fe-W,pe-re),ct=Ke/2,Lt=new Vp([],rO);if(Ke===0)return new u(W,re);for(let mr=W;mr$t.d||!$t.d)&&($t=mr,F&&console.log("found best %d after %d probes",Math.round(1e4*mr.d)/1e4,fr)),mr.max-$t.d<=A||(ct=mr.h/2,Lt.push(new L1(mr.p.x-ct,mr.p.y-ct,ct,R)),Lt.push(new L1(mr.p.x+ct,mr.p.y-ct,ct,R)),Lt.push(new L1(mr.p.x-ct,mr.p.y+ct,ct,R)),Lt.push(new L1(mr.p.x+ct,mr.p.y+ct,ct,R)),fr+=4)}return F&&(console.log(`num probes: ${fr}`),console.log(`best distance: ${$t.d}`)),$t.p}function rO(R,A){return A.max-R.max}function L1(R,A,F,W){this.p=new u(R,A),this.h=F,this.d=function(re,fe){let pe=!1,ze=1/0;for(let Ke=0;Kere.y!=Pr.y>re.y&&re.x<(Pr.x-mr.x)*(re.y-mr.y)/(Pr.y-mr.y)+mr.x&&(pe=!pe),ze=Math.min(ze,Gr(re,mr,Pr))}}return(pe?1:-1)*Math.sqrt(ze)}(this.p,W),this.max=this.d+this.h*Math.SQRT2}var sd;i.aq=void 0,(sd=i.aq||(i.aq={}))[sd.center=1]="center",sd[sd.left=2]="left",sd[sd.right=3]="right",sd[sd.top=4]="top",sd[sd.bottom=5]="bottom",sd[sd["top-left"]=6]="top-left",sd[sd["top-right"]=7]="top-right",sd[sd["bottom-left"]=8]="bottom-left",sd[sd["bottom-right"]=9]="bottom-right";let hm=7,hy=Number.POSITIVE_INFINITY;function yS(R,A){return A[1]!==hy?function(F,W,re){let fe=0,pe=0;switch(W=Math.abs(W),re=Math.abs(re),F){case"top-right":case"top-left":case"top":pe=re-hm;break;case"bottom-right":case"bottom-left":case"bottom":pe=-re+hm}switch(F){case"top-right":case"bottom-right":case"right":fe=-W;break;case"top-left":case"bottom-left":case"left":fe=W}return[fe,pe]}(R,A[0],A[1]):function(F,W){let re=0,fe=0;W<0&&(W=0);let pe=W/Math.SQRT2;switch(F){case"top-right":case"top-left":fe=pe-hm;break;case"bottom-right":case"bottom-left":fe=-pe+hm;break;case"bottom":fe=-W+hm;break;case"top":fe=W-hm}switch(F){case"top-right":case"bottom-right":re=-pe;break;case"top-left":case"bottom-left":re=pe;break;case"left":re=W;break;case"right":re=-W}return[re,fe]}(R,A[0])}function VC(R,A,F){var W;let re=R.layout,fe=(W=re.get("text-variable-anchor-offset"))===null||W===void 0?void 0:W.evaluate(A,{},F);if(fe){let ze=fe.values,Ke=[];for(let ct=0;ctfr*eu);Lt.startsWith("top")?$t[1]-=hm:Lt.startsWith("bottom")&&($t[1]+=hm),Ke[ct+1]=$t}return new $i(Ke)}let pe=re.get("text-variable-anchor");if(pe){let ze;ze=R._unevaluatedLayout.getValue("text-radial-offset")!==void 0?[re.get("text-radial-offset").evaluate(A,{},F)*eu,hy]:re.get("text-offset").evaluate(A,{},F).map(ct=>ct*eu);let Ke=[];for(let ct of pe)Ke.push(ct,yS(ct,ze));return new $i(Ke)}return null}function _S(R){switch(R){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function iO(R,A,F,W,re,fe,pe,ze,Ke,ct,Lt){let $t=fe.textMaxSize.evaluate(A,{});$t===void 0&&($t=pe);let fr=R.layers[0].layout,mr=fr.get("icon-offset").evaluate(A,{},Lt),Pr=HC(F.horizontal),zr=pe/24,ui=R.tilePixelRatio*zr,yi=R.tilePixelRatio*$t/24,vn=R.tilePixelRatio*ze,zi=R.tilePixelRatio*fr.get("symbol-spacing"),un=fr.get("text-padding")*R.tilePixelRatio,Tn=function(Xn,Ro,uo,$o=1){let Ju=Xn.get("icon-padding").evaluate(Ro,{},uo),qu=Ju&&Ju.values;return[qu[0]*$o,qu[1]*$o,qu[2]*$o,qu[3]*$o]}(fr,A,Lt,R.tilePixelRatio),pa=fr.get("text-max-angle")/180*Math.PI,ro=fr.get("text-rotation-alignment")!=="viewport"&&fr.get("symbol-placement")!=="point",Vo=fr.get("icon-rotation-alignment")==="map"&&fr.get("symbol-placement")!=="point",Xa=fr.get("symbol-placement"),sa=zi/2,Mo=fr.get("icon-text-fit"),fo;W&&Mo!=="none"&&(R.allowVerticalPlacement&&F.vertical&&(fo=AC(W,F.vertical,Mo,fr.get("icon-text-fit-padding"),mr,zr)),Pr&&(W=AC(W,Pr,Mo,fr.get("icon-text-fit-padding"),mr,zr)));let lo=(Xn,Ro)=>{Ro.x<0||Ro.x>=ja||Ro.y<0||Ro.y>=ja||function(uo,$o,Ju,qu,Mh,Qv,ld,Eh,Gd,Hd,jd,Af,kh,Ed,ud,Wh,Df,Fv,lv,tu,pc,$u,zv,ff,P1){let v0=uo.addToLineVertexArray($o,Ju),Gp,ep,Gc,Zf,tp=0,gg=0,uv=0,I1=0,AS=-1,Gw=-1,p0={},dy=bi("");if(uo.allowVerticalPlacement&&qu.vertical){let kd=Eh.layout.get("text-rotate").evaluate(pc,{},ff)+90;Gc=new fm(Gd,$o,Hd,jd,Af,qu.vertical,kh,Ed,ud,kd),ld&&(Zf=new fm(Gd,$o,Hd,jd,Af,ld,Df,Fv,ud,kd))}if(Mh){let kd=Eh.layout.get("icon-rotate").evaluate(pc,{}),rp=Eh.layout.get("icon-text-fit")!=="none",dm=NC(Mh,kd,zv,rp),Wd=ld?NC(ld,kd,zv,rp):void 0;ep=new fm(Gd,$o,Hd,jd,Af,Mh,Df,Fv,!1,kd),tp=4*dm.length;let Cd=uo.iconSizeData,_p=null;Cd.kind==="source"?(_p=[d0*Eh.layout.get("icon-size").evaluate(pc,{})],_p[0]>um&&T(`${uo.layerIds[0]}: Value for "icon-size" is >= ${Wx}. Reduce your "icon-size".`)):Cd.kind==="composite"&&(_p=[d0*$u.compositeIconSizes[0].evaluate(pc,{},ff),d0*$u.compositeIconSizes[1].evaluate(pc,{},ff)],(_p[0]>um||_p[1]>um)&&T(`${uo.layerIds[0]}: Value for "icon-size" is >= ${Wx}. Reduce your "icon-size".`)),uo.addSymbols(uo.icon,dm,_p,tu,lv,pc,i.ah.none,$o,v0.lineStartIndex,v0.lineLength,-1,ff),AS=uo.icon.placedSymbolArray.length-1,Wd&&(gg=4*Wd.length,uo.addSymbols(uo.icon,Wd,_p,tu,lv,pc,i.ah.vertical,$o,v0.lineStartIndex,v0.lineLength,-1,ff),Gw=uo.icon.placedSymbolArray.length-1)}let Xh=Object.keys(qu.horizontal);for(let kd of Xh){let rp=qu.horizontal[kd];if(!Gp){dy=bi(rp.text);let Wd=Eh.layout.get("text-rotate").evaluate(pc,{},ff);Gp=new fm(Gd,$o,Hd,jd,Af,rp,kh,Ed,ud,Wd)}let dm=rp.positionedLines.length===1;if(uv+=GC(uo,$o,rp,Qv,Eh,ud,pc,Wh,v0,qu.vertical?i.ah.horizontal:i.ah.horizontalOnly,dm?Xh:[kd],p0,AS,$u,ff),dm)break}qu.vertical&&(I1+=GC(uo,$o,qu.vertical,Qv,Eh,ud,pc,Wh,v0,i.ah.vertical,["vertical"],p0,Gw,$u,ff));let oO=Gp?Gp.boxStartIndex:uo.collisionBoxArray.length,Hw=Gp?Gp.boxEndIndex:uo.collisionBoxArray.length,g0=Gc?Gc.boxStartIndex:uo.collisionBoxArray.length,cv=Gc?Gc.boxEndIndex:uo.collisionBoxArray.length,ZC=ep?ep.boxStartIndex:uo.collisionBoxArray.length,sO=ep?ep.boxEndIndex:uo.collisionBoxArray.length,YC=Zf?Zf.boxStartIndex:uo.collisionBoxArray.length,lO=Zf?Zf.boxEndIndex:uo.collisionBoxArray.length,yp=-1,rb=(kd,rp)=>kd&&kd.circleDiameter?Math.max(kd.circleDiameter,rp):rp;yp=rb(Gp,yp),yp=rb(Gc,yp),yp=rb(ep,yp),yp=rb(Zf,yp);let jw=yp>-1?1:0;jw&&(yp*=P1/eu),uo.glyphOffsetArray.length>=M1.MAX_GLYPHS&&T("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),pc.sortKey!==void 0&&uo.addToSortKeyRanges(uo.symbolInstances.length,pc.sortKey);let SS=VC(Eh,pc,ff),[uO,cO]=function(kd,rp){let dm=kd.length,Wd=rp==null?void 0:rp.values;if((Wd==null?void 0:Wd.length)>0)for(let Cd=0;Cd=0?p0.right:-1,p0.center>=0?p0.center:-1,p0.left>=0?p0.left:-1,p0.vertical||-1,AS,Gw,dy,oO,Hw,g0,cv,ZC,sO,YC,lO,Hd,uv,I1,tp,gg,jw,0,kh,yp,uO,cO)}(R,Ro,Xn,F,W,re,fo,R.layers[0],R.collisionBoxArray,A.index,A.sourceLayerIndex,R.index,ui,[un,un,un,un],ro,Ke,vn,Tn,Vo,mr,A,fe,ct,Lt,pe)};if(Xa==="line")for(let Xn of FC(A.geometry,0,0,ja,ja)){let Ro=eO(Xn,zi,pa,F.vertical||Pr,W,24,yi,R.overscaling,ja);for(let uo of Ro)Pr&&nO(R,Pr.text,sa,uo)||lo(Xn,uo)}else if(Xa==="line-center"){for(let Xn of A.geometry)if(Xn.length>1){let Ro=Q9(Xn,pa,F.vertical||Pr,W,24,yi);Ro&&lo(Xn,Ro)}}else if(A.type==="Polygon")for(let Xn of Cf(A.geometry,0)){let Ro=tO(Xn,16);lo(Xn[0],new vg(Ro.x,Ro.y,0))}else if(A.type==="LineString")for(let Xn of A.geometry)lo(Xn,new vg(Xn[0].x,Xn[0].y,0));else if(A.type==="Point")for(let Xn of A.geometry)for(let Ro of Xn)lo([Ro],new vg(Ro.x,Ro.y,0))}function GC(R,A,F,W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr){let zr=function(vn,zi,un,Tn,pa,ro,Vo,Xa){let sa=Tn.layout.get("text-rotate").evaluate(ro,{})*Math.PI/180,Mo=[];for(let fo of zi.positionedLines)for(let lo of fo.positionedGlyphs){if(!lo.rect)continue;let Xn=lo.rect||{},Ro=_C+1,uo=!0,$o=1,Ju=0,qu=(pa||Xa)&&lo.vertical,Mh=lo.metrics.advance*lo.scale/2;if(Xa&&zi.verticalizable&&(Ju=fo.lineOffset/2-(lo.imageName?-(eu-lo.metrics.width*lo.scale)/2:(lo.scale-1)*eu)),lo.imageName){let tu=Vo[lo.imageName];uo=tu.sdf,$o=tu.pixelRatio,Ro=Md/$o}let Qv=pa?[lo.x+Mh,lo.y]:[0,0],ld=pa?[0,0]:[lo.x+Mh+un[0],lo.y+un[1]-Ju],Eh=[0,0];qu&&(Eh=ld,ld=[0,0]);let Gd=lo.metrics.isDoubleResolution?2:1,Hd=(lo.metrics.left-Ro)*lo.scale-Mh+ld[0],jd=(-lo.metrics.top-Ro)*lo.scale+ld[1],Af=Hd+Xn.w/Gd*lo.scale/$o,kh=jd+Xn.h/Gd*lo.scale/$o,Ed=new u(Hd,jd),ud=new u(Af,jd),Wh=new u(Hd,kh),Df=new u(Af,kh);if(qu){let tu=new u(-Mh,Mh-Sh),pc=-Math.PI/2,$u=eu/2-Mh,zv=new u(5-Sh-$u,-(lo.imageName?$u:0)),ff=new u(...Eh);Ed._rotateAround(pc,tu)._add(zv)._add(ff),ud._rotateAround(pc,tu)._add(zv)._add(ff),Wh._rotateAround(pc,tu)._add(zv)._add(ff),Df._rotateAround(pc,tu)._add(zv)._add(ff)}if(sa){let tu=Math.sin(sa),pc=Math.cos(sa),$u=[pc,-tu,tu,pc];Ed._matMult($u),ud._matMult($u),Wh._matMult($u),Df._matMult($u)}let Fv=new u(0,0),lv=new u(0,0);Mo.push({tl:Ed,tr:ud,bl:Wh,br:Df,tex:Xn,writingMode:zi.writingMode,glyphOffset:Qv,sectionIndex:lo.sectionIndex,isSDF:uo,pixelOffsetTL:Fv,pixelOffsetBR:lv,minFontScaleX:0,minFontScaleY:0})}return Mo}(0,F,ze,re,fe,pe,W,R.allowVerticalPlacement),ui=R.textSizeData,yi=null;ui.kind==="source"?(yi=[d0*re.layout.get("text-size").evaluate(pe,{})],yi[0]>um&&T(`${R.layerIds[0]}: Value for "text-size" is >= ${Wx}. Reduce your "text-size".`)):ui.kind==="composite"&&(yi=[d0*mr.compositeTextSizes[0].evaluate(pe,{},Pr),d0*mr.compositeTextSizes[1].evaluate(pe,{},Pr)],(yi[0]>um||yi[1]>um)&&T(`${R.layerIds[0]}: Value for "text-size" is >= ${Wx}. Reduce your "text-size".`)),R.addSymbols(R.text,zr,yi,ze,fe,pe,ct,A,Ke.lineStartIndex,Ke.lineLength,fr,Pr);for(let vn of Lt)$t[vn]=R.text.placedSymbolArray.length-1;return 4*zr.length}function HC(R){for(let A in R)return R[A];return null}function nO(R,A,F,W){let re=R.compareText;if(A in re){let fe=re[A];for(let pe=fe.length-1;pe>=0;pe--)if(W.dist(fe[pe])>4;if(re!==1)throw new Error(`Got v${re} data when expected v1.`);let fe=jC[15&W];if(!fe)throw new Error("Unrecognized array type.");let[pe]=new Uint16Array(A,2,1),[ze]=new Uint32Array(A,4,1);return new xS(ze,pe,fe,A)}constructor(A,F=64,W=Float64Array,re){if(isNaN(A)||A<0)throw new Error(`Unpexpected numItems value: ${A}.`);this.numItems=+A,this.nodeSize=Math.min(Math.max(+F,2),65535),this.ArrayType=W,this.IndexArrayType=A<65536?Uint16Array:Uint32Array;let fe=jC.indexOf(this.ArrayType),pe=2*A*this.ArrayType.BYTES_PER_ELEMENT,ze=A*this.IndexArrayType.BYTES_PER_ELEMENT,Ke=(8-ze%8)%8;if(fe<0)throw new Error(`Unexpected typed array class: ${W}.`);re&&re instanceof ArrayBuffer?(this.data=re,this.ids=new this.IndexArrayType(this.data,8,A),this.coords=new this.ArrayType(this.data,8+ze+Ke,2*A),this._pos=2*A,this._finished=!0):(this.data=new ArrayBuffer(8+pe+ze+Ke),this.ids=new this.IndexArrayType(this.data,8,A),this.coords=new this.ArrayType(this.data,8+ze+Ke,2*A),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+fe]),new Uint16Array(this.data,2,1)[0]=F,new Uint32Array(this.data,4,1)[0]=A)}add(A,F){let W=this._pos>>1;return this.ids[W]=W,this.coords[this._pos++]=A,this.coords[this._pos++]=F,W}finish(){let A=this._pos>>1;if(A!==this.numItems)throw new Error(`Added ${A} items when expected ${this.numItems}.`);return Nw(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(A,F,W,re){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:fe,coords:pe,nodeSize:ze}=this,Ke=[0,fe.length-1,0],ct=[];for(;Ke.length;){let Lt=Ke.pop()||0,$t=Ke.pop()||0,fr=Ke.pop()||0;if($t-fr<=ze){for(let ui=fr;ui<=$t;ui++){let yi=pe[2*ui],vn=pe[2*ui+1];yi>=A&&yi<=W&&vn>=F&&vn<=re&&ct.push(fe[ui])}continue}let mr=fr+$t>>1,Pr=pe[2*mr],zr=pe[2*mr+1];Pr>=A&&Pr<=W&&zr>=F&&zr<=re&&ct.push(fe[mr]),(Lt===0?A<=Pr:F<=zr)&&(Ke.push(fr),Ke.push(mr-1),Ke.push(1-Lt)),(Lt===0?W>=Pr:re>=zr)&&(Ke.push(mr+1),Ke.push($t),Ke.push(1-Lt))}return ct}within(A,F,W){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:re,coords:fe,nodeSize:pe}=this,ze=[0,re.length-1,0],Ke=[],ct=W*W;for(;ze.length;){let Lt=ze.pop()||0,$t=ze.pop()||0,fr=ze.pop()||0;if($t-fr<=pe){for(let ui=fr;ui<=$t;ui++)XC(fe[2*ui],fe[2*ui+1],A,F)<=ct&&Ke.push(re[ui]);continue}let mr=fr+$t>>1,Pr=fe[2*mr],zr=fe[2*mr+1];XC(Pr,zr,A,F)<=ct&&Ke.push(re[mr]),(Lt===0?A-W<=Pr:F-W<=zr)&&(ze.push(fr),ze.push(mr-1),ze.push(1-Lt)),(Lt===0?A+W>=Pr:F+W>=zr)&&(ze.push(mr+1),ze.push($t),ze.push(1-Lt))}return Ke}}function Nw(R,A,F,W,re,fe){if(re-W<=F)return;let pe=W+re>>1;WC(R,A,pe,W,re,fe),Nw(R,A,F,W,pe-1,1-fe),Nw(R,A,F,pe+1,re,1-fe)}function WC(R,A,F,W,re,fe){for(;re>W;){if(re-W>600){let ct=re-W+1,Lt=F-W+1,$t=Math.log(ct),fr=.5*Math.exp(2*$t/3),mr=.5*Math.sqrt($t*fr*(ct-fr)/ct)*(Lt-ct/2<0?-1:1);WC(R,A,F,Math.max(W,Math.floor(F-Lt*fr/ct+mr)),Math.min(re,Math.floor(F+(ct-Lt)*fr/ct+mr)),fe)}let pe=A[2*F+fe],ze=W,Ke=re;for(eb(R,A,W,F),A[2*re+fe]>pe&&eb(R,A,W,re);zepe;)Ke--}A[2*W+fe]===pe?eb(R,A,W,Ke):(Ke++,eb(R,A,Ke,re)),Ke<=F&&(W=Ke+1),F<=Ke&&(re=Ke-1)}}function eb(R,A,F,W){bS(R,F,W),bS(A,2*F,2*W),bS(A,2*F+1,2*W+1)}function bS(R,A,F){let W=R[A];R[A]=R[F],R[F]=W}function XC(R,A,F,W){let re=R-F,fe=A-W;return re*re+fe*fe}var Uw;i.bg=void 0,(Uw=i.bg||(i.bg={})).create="create",Uw.load="load",Uw.fullLoad="fullLoad";let tb=null,sh=[],wS=1e3/60,TS="loadTime",Vw="fullLoadTime",aO={mark(R){performance.mark(R)},frame(R){let A=R;tb!=null&&sh.push(A-tb),tb=A},clearMetrics(){tb=null,sh=[],performance.clearMeasures(TS),performance.clearMeasures(Vw);for(let R in i.bg)performance.clearMarks(i.bg[R])},getPerformanceMetrics(){performance.measure(TS,i.bg.create,i.bg.load),performance.measure(Vw,i.bg.create,i.bg.fullLoad);let R=performance.getEntriesByName(TS)[0].duration,A=performance.getEntriesByName(Vw)[0].duration,F=sh.length,W=1/(sh.reduce((fe,pe)=>fe+pe,0)/F/1e3),re=sh.filter(fe=>fe>wS).reduce((fe,pe)=>fe+(pe-wS)/wS,0);return{loadTime:R,fullLoadTime:A,fps:W,percentDroppedFrames:re/(F+re)*100,totalFrames:F}}};i.$=class extends Yt{},i.A=xi,i.B=dn,i.C=function(R){if(V==null){let A=R.navigator?R.navigator.userAgent:null;V=!!R.safari||!(!A||!(/\b(iPad|iPhone|iPod)\b/.test(A)||A.match("Safari")&&!A.match("Chrome")))}return V},i.D=Ua,i.E=Re,i.F=class{constructor(R,A){this.target=R,this.mapId=A,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new dS(()=>this.process()),this.subscription=function(F,W,re,fe){return F.addEventListener(W,re,!1),{unsubscribe:()=>{F.removeEventListener(W,re,!1)}}}(this.target,"message",F=>this.receive(F)),this.globalScope=O(self)?R:window}registerMessageHandler(R,A){this.messageHandlers[R]=A}sendAsync(R,A){return new Promise((F,W)=>{let re=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[re]={resolve:F,reject:W},A&&A.signal.addEventListener("abort",()=>{delete this.resolveRejects[re];let ze={id:re,type:"",origin:location.origin,targetMapId:R.targetMapId,sourceMapId:this.mapId};this.target.postMessage(ze)},{once:!0});let fe=[],pe=Object.assign(Object.assign({},R),{id:re,sourceMapId:this.mapId,origin:location.origin,data:La(R.data,fe)});this.target.postMessage(pe,{transfer:fe})})}receive(R){let A=R.data,F=A.id;if(!(A.origin!=="file://"&&location.origin!=="file://"&&A.origin!=="resource://android"&&location.origin!=="resource://android"&&A.origin!==location.origin||A.targetMapId&&this.mapId!==A.targetMapId)){if(A.type===""){delete this.tasks[F];let W=this.abortControllers[F];return delete this.abortControllers[F],void(W&&W.abort())}if(O(self)||A.mustQueue)return this.tasks[F]=A,this.taskQueue.push(F),void this.invoker.trigger();this.processTask(F,A)}}process(){if(this.taskQueue.length===0)return;let R=this.taskQueue.shift(),A=this.tasks[R];delete this.tasks[R],this.taskQueue.length>0&&this.invoker.trigger(),A&&this.processTask(R,A)}processTask(R,A){return a(this,void 0,void 0,function*(){if(A.type===""){let re=this.resolveRejects[R];return delete this.resolveRejects[R],re?void(A.error?re.reject(Na(A.error)):re.resolve(Na(A.data))):void 0}if(!this.messageHandlers[A.type])return void this.completeTask(R,new Error(`Could not find a registered handler for ${A.type}, map ID: ${this.mapId}, available handlers: ${Object.keys(this.messageHandlers).join(", ")}`));let F=Na(A.data),W=new AbortController;this.abortControllers[R]=W;try{let re=yield this.messageHandlers[A.type](A.sourceMapId,F,W);this.completeTask(R,null,re)}catch(re){this.completeTask(R,re)}})}completeTask(R,A,F){let W=[];delete this.abortControllers[R];let re={id:R,type:"",sourceMapId:this.mapId,origin:location.origin,error:A?La(A):null,data:La(F,W)};this.target.postMessage(re,{transfer:W})}remove(){this.invoker.remove(),this.subscription.unsubscribe()}},i.G=Ce,i.H=function(){var R=new xi(16);return xi!=Float32Array&&(R[1]=0,R[2]=0,R[3]=0,R[4]=0,R[6]=0,R[7]=0,R[8]=0,R[9]=0,R[11]=0,R[12]=0,R[13]=0,R[14]=0),R[0]=1,R[5]=1,R[10]=1,R[15]=1,R},i.I=Lw,i.J=function(R,A,F){var W,re,fe,pe,ze,Ke,ct,Lt,$t,fr,mr,Pr,zr=F[0],ui=F[1],yi=F[2];return A===R?(R[12]=A[0]*zr+A[4]*ui+A[8]*yi+A[12],R[13]=A[1]*zr+A[5]*ui+A[9]*yi+A[13],R[14]=A[2]*zr+A[6]*ui+A[10]*yi+A[14],R[15]=A[3]*zr+A[7]*ui+A[11]*yi+A[15]):(re=A[1],fe=A[2],pe=A[3],ze=A[4],Ke=A[5],ct=A[6],Lt=A[7],$t=A[8],fr=A[9],mr=A[10],Pr=A[11],R[0]=W=A[0],R[1]=re,R[2]=fe,R[3]=pe,R[4]=ze,R[5]=Ke,R[6]=ct,R[7]=Lt,R[8]=$t,R[9]=fr,R[10]=mr,R[11]=Pr,R[12]=W*zr+ze*ui+$t*yi+A[12],R[13]=re*zr+Ke*ui+fr*yi+A[13],R[14]=fe*zr+ct*ui+mr*yi+A[14],R[15]=pe*zr+Lt*ui+Pr*yi+A[15]),R},i.K=function(R,A,F){var W=F[0],re=F[1],fe=F[2];return R[0]=A[0]*W,R[1]=A[1]*W,R[2]=A[2]*W,R[3]=A[3]*W,R[4]=A[4]*re,R[5]=A[5]*re,R[6]=A[6]*re,R[7]=A[7]*re,R[8]=A[8]*fe,R[9]=A[9]*fe,R[10]=A[10]*fe,R[11]=A[11]*fe,R[12]=A[12],R[13]=A[13],R[14]=A[14],R[15]=A[15],R},i.L=ci,i.M=function(R,A){let F={};for(let W=0;W{let A=window.document.createElement("video");return A.muted=!0,new Promise(F=>{A.onloadstart=()=>{F(A)};for(let W of R){let re=window.document.createElement("source");Le(W)||(A.crossOrigin="Anonymous"),re.src=W,A.appendChild(re)}})},i.a4=function(){return x++},i.a5=Cn,i.a6=M1,i.a7=Fc,i.a8=Sl,i.a9=gS,i.aA=function(R){if(R.type==="custom")return new hS(R);switch(R.type){case"background":return new J9(R);case"circle":return new hi(R);case"fill":return new yt(R);case"fill-extrusion":return new Lv(R);case"heatmap":return new oa(R);case"hillshade":return new Zs(R);case"line":return new oy(R);case"raster":return new Kx(R);case"symbol":return new cy(R)}},i.aB=g,i.aC=function(R,A){if(!R)return[{command:"setStyle",args:[A]}];let F=[];try{if(!pt(R.version,A.version))return[{command:"setStyle",args:[A]}];pt(R.center,A.center)||F.push({command:"setCenter",args:[A.center]}),pt(R.zoom,A.zoom)||F.push({command:"setZoom",args:[A.zoom]}),pt(R.bearing,A.bearing)||F.push({command:"setBearing",args:[A.bearing]}),pt(R.pitch,A.pitch)||F.push({command:"setPitch",args:[A.pitch]}),pt(R.sprite,A.sprite)||F.push({command:"setSprite",args:[A.sprite]}),pt(R.glyphs,A.glyphs)||F.push({command:"setGlyphs",args:[A.glyphs]}),pt(R.transition,A.transition)||F.push({command:"setTransition",args:[A.transition]}),pt(R.light,A.light)||F.push({command:"setLight",args:[A.light]}),pt(R.terrain,A.terrain)||F.push({command:"setTerrain",args:[A.terrain]}),pt(R.sky,A.sky)||F.push({command:"setSky",args:[A.sky]}),pt(R.projection,A.projection)||F.push({command:"setProjection",args:[A.projection]});let W={},re=[];(function(pe,ze,Ke,ct){let Lt;for(Lt in ze=ze||{},pe=pe||{})Object.prototype.hasOwnProperty.call(pe,Lt)&&(Object.prototype.hasOwnProperty.call(ze,Lt)||lt(Lt,Ke,ct));for(Lt in ze)Object.prototype.hasOwnProperty.call(ze,Lt)&&(Object.prototype.hasOwnProperty.call(pe,Lt)?pt(pe[Lt],ze[Lt])||(pe[Lt].type==="geojson"&&ze[Lt].type==="geojson"&&Nt(pe,ze,Lt)?Zt(Ke,{command:"setGeoJSONSourceData",args:[Lt,ze[Lt].data]}):Gt(Lt,ze,Ke,ct)):st(Lt,ze,Ke))})(R.sources,A.sources,re,W);let fe=[];R.layers&&R.layers.forEach(pe=>{"source"in pe&&W[pe.source]?F.push({command:"removeLayer",args:[pe.id]}):fe.push(pe)}),F=F.concat(re),function(pe,ze,Ke){ze=ze||[];let ct=(pe=pe||[]).map(sr),Lt=ze.map(sr),$t=pe.reduce(wr,{}),fr=ze.reduce(wr,{}),mr=ct.slice(),Pr=Object.create(null),zr,ui,yi,vn,zi;for(let un=0,Tn=0;un@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,(F,W,re,fe)=>{let pe=re||fe;return A[W]=!pe||pe.toLowerCase(),""}),A["max-age"]){let F=parseInt(A["max-age"],10);isNaN(F)?delete A["max-age"]:A["max-age"]=F}return A},i.ab=function(R,A){let F=[];for(let W in R)W in A||F.push(W);return F},i.ac=E,i.ad=function(R,A,F){var W=Math.sin(F),re=Math.cos(F),fe=A[0],pe=A[1],ze=A[2],Ke=A[3],ct=A[4],Lt=A[5],$t=A[6],fr=A[7];return A!==R&&(R[8]=A[8],R[9]=A[9],R[10]=A[10],R[11]=A[11],R[12]=A[12],R[13]=A[13],R[14]=A[14],R[15]=A[15]),R[0]=fe*re+ct*W,R[1]=pe*re+Lt*W,R[2]=ze*re+$t*W,R[3]=Ke*re+fr*W,R[4]=ct*re-fe*W,R[5]=Lt*re-pe*W,R[6]=$t*re-ze*W,R[7]=fr*re-Ke*W,R},i.ae=function(R){var A=new xi(16);return A[0]=R[0],A[1]=R[1],A[2]=R[2],A[3]=R[3],A[4]=R[4],A[5]=R[5],A[6]=R[6],A[7]=R[7],A[8]=R[8],A[9]=R[9],A[10]=R[10],A[11]=R[11],A[12]=R[12],A[13]=R[13],A[14]=R[14],A[15]=R[15],A},i.af=Bn,i.ag=function(R,A){let F=0,W=0;if(R.kind==="constant")W=R.layoutSize;else if(R.kind!=="source"){let{interpolationType:re,minZoom:fe,maxZoom:pe}=R,ze=re?E(ko.interpolationFactor(re,A,fe,pe),0,1):0;R.kind==="camera"?W=Lo.number(R.minSize,R.maxSize,ze):F=ze}return{uSizeT:F,uSize:W}},i.ai=function(R,{uSize:A,uSizeT:F},{lowerSize:W,upperSize:re}){return R.kind==="source"?W/d0:R.kind==="composite"?Lo.number(W/d0,re/d0,F):A},i.aj=lS,i.ak=function(R,A,F,W){let re=A.y-R.y,fe=A.x-R.x,pe=W.y-F.y,ze=W.x-F.x,Ke=pe*fe-ze*re;if(Ke===0)return null;let ct=(ze*(R.y-F.y)-pe*(R.x-F.x))/Ke;return new u(R.x+ct*fe,R.y+ct*re)},i.al=FC,i.am=Sc,i.an=Ri,i.ao=function(R){let A=1/0,F=1/0,W=-1/0,re=-1/0;for(let fe of R)A=Math.min(A,fe.x),F=Math.min(F,fe.y),W=Math.max(W,fe.x),re=Math.max(re,fe.y);return[A,F,W,re]},i.ap=eu,i.ar=sS,i.as=function(R,A){var F=A[0],W=A[1],re=A[2],fe=A[3],pe=A[4],ze=A[5],Ke=A[6],ct=A[7],Lt=A[8],$t=A[9],fr=A[10],mr=A[11],Pr=A[12],zr=A[13],ui=A[14],yi=A[15],vn=F*ze-W*pe,zi=F*Ke-re*pe,un=F*ct-fe*pe,Tn=W*Ke-re*ze,pa=W*ct-fe*ze,ro=re*ct-fe*Ke,Vo=Lt*zr-$t*Pr,Xa=Lt*ui-fr*Pr,sa=Lt*yi-mr*Pr,Mo=$t*ui-fr*zr,fo=$t*yi-mr*zr,lo=fr*yi-mr*ui,Xn=vn*lo-zi*fo+un*Mo+Tn*sa-pa*Xa+ro*Vo;return Xn?(R[0]=(ze*lo-Ke*fo+ct*Mo)*(Xn=1/Xn),R[1]=(re*fo-W*lo-fe*Mo)*Xn,R[2]=(zr*ro-ui*pa+yi*Tn)*Xn,R[3]=(fr*pa-$t*ro-mr*Tn)*Xn,R[4]=(Ke*sa-pe*lo-ct*Xa)*Xn,R[5]=(F*lo-re*sa+fe*Xa)*Xn,R[6]=(ui*un-Pr*ro-yi*zi)*Xn,R[7]=(Lt*ro-fr*un+mr*zi)*Xn,R[8]=(pe*fo-ze*sa+ct*Vo)*Xn,R[9]=(W*sa-F*fo-fe*Vo)*Xn,R[10]=(Pr*pa-zr*un+yi*vn)*Xn,R[11]=($t*un-Lt*pa-mr*vn)*Xn,R[12]=(ze*Xa-pe*Mo-Ke*Vo)*Xn,R[13]=(F*Mo-W*Xa+re*Vo)*Xn,R[14]=(zr*zi-Pr*Tn-ui*vn)*Xn,R[15]=(Lt*Tn-$t*zi+fr*vn)*Xn,R):null},i.at=_S,i.au=Dw,i.av=xS,i.aw=function(){let R={},A=ce.$version;for(let F in ce.$root){let W=ce.$root[F];if(W.required){let re=null;re=F==="version"?A:W.type==="array"?[]:{},re!=null&&(R[F]=re)}}return R},i.ax=Yn,i.ay=ie,i.az=function(R){R=R.slice();let A=Object.create(null);for(let F=0;F25||W<0||W>=1||F<0||F>=1)},i.bc=function(R,A){return R[0]=A[0],R[1]=0,R[2]=0,R[3]=0,R[4]=0,R[5]=A[1],R[6]=0,R[7]=0,R[8]=0,R[9]=0,R[10]=A[2],R[11]=0,R[12]=0,R[13]=0,R[14]=0,R[15]=1,R},i.bd=class extends Tt{},i.be=vS,i.bf=aO,i.bh=me,i.bi=function(R,A){_e.REGISTERED_PROTOCOLS[R]=A},i.bj=function(R){delete _e.REGISTERED_PROTOCOLS[R]},i.bk=function(R,A){let F={};for(let re=0;relo*eu)}let Xa=pe?"center":F.get("text-justify").evaluate(ct,{},R.canonical),sa=F.get("symbol-placement")==="point"?F.get("text-max-width").evaluate(ct,{},R.canonical)*eu:1/0,Mo=()=>{R.bucket.allowVerticalPlacement&&Ka(un)&&(Pr.vertical=Hx(zr,R.glyphMap,R.glyphPositions,R.imagePositions,Lt,sa,fe,ro,"left",pa,yi,i.ah.vertical,!0,fr,$t))};if(!pe&&Vo){let fo=new Set;if(Xa==="auto")for(let Xn=0;Xna(void 0,void 0,void 0,function*(){if(R.byteLength===0)return createImageBitmap(new ImageData(1,1));let A=new Blob([new Uint8Array(R)],{type:"image/png"});try{return createImageBitmap(A)}catch(F){throw new Error(`Could not load image because of ${F.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}}),i.e=L,i.f=R=>new Promise((A,F)=>{let W=new Image;W.onload=()=>{A(W),URL.revokeObjectURL(W.src),W.onload=null,window.requestAnimationFrame(()=>{W.src=Z})},W.onerror=()=>F(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));let re=new Blob([new Uint8Array(R)],{type:"image/png"});W.src=R.byteLength?URL.createObjectURL(re):Z}),i.g=Ee,i.h=(R,A)=>Se(L(R,{type:"json"}),A),i.i=O,i.j=ge,i.k=Pe,i.l=(R,A)=>Se(L(R,{type:"arrayBuffer"}),A),i.m=Se,i.n=function(R){return new nS(R).readFields(PQ,[])},i.o=na,i.p=oS,i.q=ue,i.r=Xi,i.s=Le,i.t=Yi,i.u=ki,i.v=ce,i.w=T,i.x=function([R,A,F]){return A+=90,A*=Math.PI/180,F*=Math.PI/180,{x:R*Math.cos(A)*Math.sin(F),y:R*Math.sin(A)*Math.sin(F),z:R*Math.cos(F)}},i.y=Lo,i.z=rs}),r("worker",["./shared"],function(i){"use strict";class a{constructor(Ge){this.keyCache={},Ge&&this.replace(Ge)}replace(Ge){this._layerConfigs={},this._layers={},this.update(Ge,[])}update(Ge,Je){for(let tt of Ge){this._layerConfigs[tt.id]=tt;let xt=this._layers[tt.id]=i.aA(tt);xt._featureFilter=i.a7(xt.filter),this.keyCache[tt.id]&&delete this.keyCache[tt.id]}for(let tt of Je)delete this.keyCache[tt],delete this._layerConfigs[tt],delete this._layers[tt];this.familiesBySource={};let je=i.bk(Object.values(this._layerConfigs),this.keyCache);for(let tt of je){let xt=tt.map(ar=>this._layers[ar.id]),Ie=xt[0];if(Ie.visibility==="none")continue;let xe=Ie.source||"",ke=this.familiesBySource[xe];ke||(ke=this.familiesBySource[xe]={});let vt=Ie.sourceLayer||"_geojsonTileLayer",ir=ke[vt];ir||(ir=ke[vt]=[]),ir.push(xt)}}}class o{constructor(Ge){let Je={},je=[];for(let xe in Ge){let ke=Ge[xe],vt=Je[xe]={};for(let ir in ke){let ar=ke[+ir];if(!ar||ar.bitmap.width===0||ar.bitmap.height===0)continue;let vr={x:0,y:0,w:ar.bitmap.width+2,h:ar.bitmap.height+2};je.push(vr),vt[ir]={rect:vr,metrics:ar.metrics}}}let{w:tt,h:xt}=i.p(je),Ie=new i.o({width:tt||1,height:xt||1});for(let xe in Ge){let ke=Ge[xe];for(let vt in ke){let ir=ke[+vt];if(!ir||ir.bitmap.width===0||ir.bitmap.height===0)continue;let ar=Je[xe][vt].rect;i.o.copy(ir.bitmap,Ie,{x:0,y:0},{x:ar.x+1,y:ar.y+1},ir.bitmap)}}this.image=Ie,this.positions=Je}}i.bl("GlyphAtlas",o);class s{constructor(Ge){this.tileID=new i.S(Ge.tileID.overscaledZ,Ge.tileID.wrap,Ge.tileID.canonical.z,Ge.tileID.canonical.x,Ge.tileID.canonical.y),this.uid=Ge.uid,this.zoom=Ge.zoom,this.pixelRatio=Ge.pixelRatio,this.tileSize=Ge.tileSize,this.source=Ge.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=Ge.showCollisionBoxes,this.collectResourceTiming=!!Ge.collectResourceTiming,this.returnDependencies=!!Ge.returnDependencies,this.promoteId=Ge.promoteId,this.inFlightDependencies=[]}parse(Ge,Je,je,tt){return i._(this,void 0,void 0,function*(){this.status="parsing",this.data=Ge,this.collisionBoxArray=new i.a5;let xt=new i.bm(Object.keys(Ge.layers).sort()),Ie=new i.bn(this.tileID,this.promoteId);Ie.bucketLayerIDs=[];let xe={},ke={featureIndex:Ie,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:je},vt=Je.familiesBySource[this.source];for(let qn in vt){let Fn=Ge.layers[qn];if(!Fn)continue;Fn.version===1&&i.w(`Vector tile source "${this.source}" layer "${qn}" does not use vector tile spec v2 and therefore may have some rendering errors.`);let ra=xt.encode(qn),la=[];for(let Ut=0;Ut=wt.maxzoom||wt.visibility!=="none"&&(l(Ut,this.zoom,je),(xe[wt.id]=wt.createBucket({index:Ie.bucketLayerIDs.length,layers:Ut,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:ra,sourceID:this.source})).populate(la,ke,this.tileID.canonical),Ie.bucketLayerIDs.push(Ut.map(rr=>rr.id)))}}let ir=i.aF(ke.glyphDependencies,qn=>Object.keys(qn).map(Number));this.inFlightDependencies.forEach(qn=>qn==null?void 0:qn.abort()),this.inFlightDependencies=[];let ar=Promise.resolve({});if(Object.keys(ir).length){let qn=new AbortController;this.inFlightDependencies.push(qn),ar=tt.sendAsync({type:"GG",data:{stacks:ir,source:this.source,tileID:this.tileID,type:"glyphs"}},qn)}let vr=Object.keys(ke.iconDependencies),ii=Promise.resolve({});if(vr.length){let qn=new AbortController;this.inFlightDependencies.push(qn),ii=tt.sendAsync({type:"GI",data:{icons:vr,source:this.source,tileID:this.tileID,type:"icons"}},qn)}let pi=Object.keys(ke.patternDependencies),$r=Promise.resolve({});if(pi.length){let qn=new AbortController;this.inFlightDependencies.push(qn),$r=tt.sendAsync({type:"GI",data:{icons:pi,source:this.source,tileID:this.tileID,type:"patterns"}},qn)}let[di,ji,In]=yield Promise.all([ar,ii,$r]),wi=new o(di),On=new i.bo(ji,In);for(let qn in xe){let Fn=xe[qn];Fn instanceof i.a6?(l(Fn.layers,this.zoom,je),i.bp({bucket:Fn,glyphMap:di,glyphPositions:wi.positions,imageMap:ji,imagePositions:On.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):Fn.hasPattern&&(Fn instanceof i.bq||Fn instanceof i.br||Fn instanceof i.bs)&&(l(Fn.layers,this.zoom,je),Fn.addFeatures(ke,this.tileID.canonical,On.patternPositions))}return this.status="done",{buckets:Object.values(xe).filter(qn=>!qn.isEmpty()),featureIndex:Ie,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:wi.image,imageAtlas:On,glyphMap:this.returnDependencies?di:null,iconMap:this.returnDependencies?ji:null,glyphPositions:this.returnDependencies?wi.positions:null}})}}function l(dt,Ge,Je){let je=new i.z(Ge);for(let tt of dt)tt.recalculate(je,Je)}class u{constructor(Ge,Je,je){this.actor=Ge,this.layerIndex=Je,this.availableImages=je,this.fetching={},this.loading={},this.loaded={}}loadVectorTile(Ge,Je){return i._(this,void 0,void 0,function*(){let je=yield i.l(Ge.request,Je);try{return{vectorTile:new i.bt.VectorTile(new i.bu(je.data)),rawData:je.data,cacheControl:je.cacheControl,expires:je.expires}}catch(tt){let xt=new Uint8Array(je.data),Ie=`Unable to parse the tile at ${Ge.request.url}, `;throw Ie+=xt[0]===31&&xt[1]===139?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${tt.message}`,new Error(Ie)}})}loadTile(Ge){return i._(this,void 0,void 0,function*(){let Je=Ge.uid,je=!!(Ge&&Ge.request&&Ge.request.collectResourceTiming)&&new i.bv(Ge.request),tt=new s(Ge);this.loading[Je]=tt;let xt=new AbortController;tt.abort=xt;try{let Ie=yield this.loadVectorTile(Ge,xt);if(delete this.loading[Je],!Ie)return null;let xe=Ie.rawData,ke={};Ie.expires&&(ke.expires=Ie.expires),Ie.cacheControl&&(ke.cacheControl=Ie.cacheControl);let vt={};if(je){let ar=je.finish();ar&&(vt.resourceTiming=JSON.parse(JSON.stringify(ar)))}tt.vectorTile=Ie.vectorTile;let ir=tt.parse(Ie.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[Je]=tt,this.fetching[Je]={rawTileData:xe,cacheControl:ke,resourceTiming:vt};try{let ar=yield ir;return i.e({rawTileData:xe.slice(0)},ar,ke,vt)}finally{delete this.fetching[Je]}}catch(Ie){throw delete this.loading[Je],tt.status="done",this.loaded[Je]=tt,Ie}})}reloadTile(Ge){return i._(this,void 0,void 0,function*(){let Je=Ge.uid;if(!this.loaded||!this.loaded[Je])throw new Error("Should not be trying to reload a tile that was never loaded or has been removed");let je=this.loaded[Je];if(je.showCollisionBoxes=Ge.showCollisionBoxes,je.status==="parsing"){let tt=yield je.parse(je.vectorTile,this.layerIndex,this.availableImages,this.actor),xt;if(this.fetching[Je]){let{rawTileData:Ie,cacheControl:xe,resourceTiming:ke}=this.fetching[Je];delete this.fetching[Je],xt=i.e({rawTileData:Ie.slice(0)},tt,xe,ke)}else xt=tt;return xt}if(je.status==="done"&&je.vectorTile)return je.parse(je.vectorTile,this.layerIndex,this.availableImages,this.actor)})}abortTile(Ge){return i._(this,void 0,void 0,function*(){let Je=this.loading,je=Ge.uid;Je&&Je[je]&&Je[je].abort&&(Je[je].abort.abort(),delete Je[je])})}removeTile(Ge){return i._(this,void 0,void 0,function*(){this.loaded&&this.loaded[Ge.uid]&&delete this.loaded[Ge.uid]})}}class c{constructor(){this.loaded={}}loadTile(Ge){return i._(this,void 0,void 0,function*(){let{uid:Je,encoding:je,rawImageData:tt,redFactor:xt,greenFactor:Ie,blueFactor:xe,baseShift:ke}=Ge,vt=tt.width+2,ir=tt.height+2,ar=i.b(tt)?new i.R({width:vt,height:ir},yield i.bw(tt,-1,-1,vt,ir)):tt,vr=new i.bx(Je,ar,je,xt,Ie,xe,ke);return this.loaded=this.loaded||{},this.loaded[Je]=vr,vr})}removeTile(Ge){let Je=this.loaded,je=Ge.uid;Je&&Je[je]&&delete Je[je]}}function f(dt,Ge){if(dt.length!==0){h(dt[0],Ge);for(var Je=1;Je=Math.abs(xe)?Je-ke+xe:xe-ke+Je,Je=ke}Je+je>=0!=!!Ge&&dt.reverse()}var d=i.by(function dt(Ge,Je){var je,tt=Ge&&Ge.type;if(tt==="FeatureCollection")for(je=0;je>31}function O(dt,Ge){for(var Je=dt.loadGeometry(),je=dt.type,tt=0,xt=0,Ie=Je.length,xe=0;xedt},j=Math.fround||(N=new Float32Array(1),dt=>(N[0]=+dt,N[0]));var N;let H=3,te=5,oe=6;class _e{constructor(Ge){this.options=Object.assign(Object.create(Z),Ge),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(Ge){let{log:Je,minZoom:je,maxZoom:tt}=this.options;Je&&console.time("total time");let xt=`prepare ${Ge.length} points`;Je&&console.time(xt),this.points=Ge;let Ie=[];for(let ke=0;ke=je;ke--){let vt=+Date.now();xe=this.trees[ke]=this._createTree(this._cluster(xe,ke)),Je&&console.log("z%d: %d clusters in %dms",ke,xe.numItems,+Date.now()-vt)}return Je&&console.timeEnd("total time"),this}getClusters(Ge,Je){let je=((Ge[0]+180)%360+360)%360-180,tt=Math.max(-90,Math.min(90,Ge[1])),xt=Ge[2]===180?180:((Ge[2]+180)%360+360)%360-180,Ie=Math.max(-90,Math.min(90,Ge[3]));if(Ge[2]-Ge[0]>=360)je=-180,xt=180;else if(je>xt){let ar=this.getClusters([je,tt,180,Ie],Je),vr=this.getClusters([-180,tt,xt,Ie],Je);return ar.concat(vr)}let xe=this.trees[this._limitZoom(Je)],ke=xe.range(me(je),ie(Ie),me(xt),ie(tt)),vt=xe.data,ir=[];for(let ar of ke){let vr=this.stride*ar;ir.push(vt[vr+te]>1?Ee(vt,vr,this.clusterProps):this.points[vt[vr+H]])}return ir}getChildren(Ge){let Je=this._getOriginId(Ge),je=this._getOriginZoom(Ge),tt="No cluster with the specified id.",xt=this.trees[je];if(!xt)throw new Error(tt);let Ie=xt.data;if(Je*this.stride>=Ie.length)throw new Error(tt);let xe=this.options.radius/(this.options.extent*Math.pow(2,je-1)),ke=xt.within(Ie[Je*this.stride],Ie[Je*this.stride+1],xe),vt=[];for(let ir of ke){let ar=ir*this.stride;Ie[ar+4]===Ge&&vt.push(Ie[ar+te]>1?Ee(Ie,ar,this.clusterProps):this.points[Ie[ar+H]])}if(vt.length===0)throw new Error(tt);return vt}getLeaves(Ge,Je,je){let tt=[];return this._appendLeaves(tt,Ge,Je=Je||10,je=je||0,0),tt}getTile(Ge,Je,je){let tt=this.trees[this._limitZoom(Ge)],xt=Math.pow(2,Ge),{extent:Ie,radius:xe}=this.options,ke=xe/Ie,vt=(je-ke)/xt,ir=(je+1+ke)/xt,ar={features:[]};return this._addTileFeatures(tt.range((Je-ke)/xt,vt,(Je+1+ke)/xt,ir),tt.data,Je,je,xt,ar),Je===0&&this._addTileFeatures(tt.range(1-ke/xt,vt,1,ir),tt.data,xt,je,xt,ar),Je===xt-1&&this._addTileFeatures(tt.range(0,vt,ke/xt,ir),tt.data,-1,je,xt,ar),ar.features.length?ar:null}getClusterExpansionZoom(Ge){let Je=this._getOriginZoom(Ge)-1;for(;Je<=this.options.maxZoom;){let je=this.getChildren(Ge);if(Je++,je.length!==1)break;Ge=je[0].properties.cluster_id}return Je}_appendLeaves(Ge,Je,je,tt,xt){let Ie=this.getChildren(Je);for(let xe of Ie){let ke=xe.properties;if(ke&&ke.cluster?xt+ke.point_count<=tt?xt+=ke.point_count:xt=this._appendLeaves(Ge,ke.cluster_id,je,tt,xt):xt1,ir,ar,vr;if(vt)ir=Ce(Je,ke,this.clusterProps),ar=Je[ke],vr=Je[ke+1];else{let $r=this.points[Je[ke+H]];ir=$r.properties;let[di,ji]=$r.geometry.coordinates;ar=me(di),vr=ie(ji)}let ii={type:1,geometry:[[Math.round(this.options.extent*(ar*xt-je)),Math.round(this.options.extent*(vr*xt-tt))]],tags:ir},pi;pi=vt||this.options.generateId?Je[ke+H]:this.points[Je[ke+H]].id,pi!==void 0&&(ii.id=pi),Ie.features.push(ii)}}_limitZoom(Ge){return Math.max(this.options.minZoom,Math.min(Math.floor(+Ge),this.options.maxZoom+1))}_cluster(Ge,Je){let{radius:je,extent:tt,reduce:xt,minPoints:Ie}=this.options,xe=je/(tt*Math.pow(2,Je)),ke=Ge.data,vt=[],ir=this.stride;for(let ar=0;arJe&&(di+=ke[In+te])}if(di>$r&&di>=Ie){let ji,In=vr*$r,wi=ii*$r,On=-1,qn=((ar/ir|0)<<5)+(Je+1)+this.points.length;for(let Fn of pi){let ra=Fn*ir;if(ke[ra+2]<=Je)continue;ke[ra+2]=Je;let la=ke[ra+te];In+=ke[ra]*la,wi+=ke[ra+1]*la,ke[ra+4]=qn,xt&&(ji||(ji=this._map(ke,ar,!0),On=this.clusterProps.length,this.clusterProps.push(ji)),xt(ji,this._map(ke,ra)))}ke[ar+4]=qn,vt.push(In/di,wi/di,1/0,qn,-1,di),xt&&vt.push(On)}else{for(let ji=0;ji1)for(let ji of pi){let In=ji*ir;if(!(ke[In+2]<=Je)){ke[In+2]=Je;for(let wi=0;wi>5}_getOriginZoom(Ge){return(Ge-this.points.length)%32}_map(Ge,Je,je){if(Ge[Je+te]>1){let Ie=this.clusterProps[Ge[Je+oe]];return je?Object.assign({},Ie):Ie}let tt=this.points[Ge[Je+H]].properties,xt=this.options.map(tt);return je&&xt===tt?Object.assign({},xt):xt}}function Ee(dt,Ge,Je){return{type:"Feature",id:dt[Ge+H],properties:Ce(dt,Ge,Je),geometry:{type:"Point",coordinates:[(je=dt[Ge],360*(je-.5)),Se(dt[Ge+1])]}};var je}function Ce(dt,Ge,Je){let je=dt[Ge+te],tt=je>=1e4?`${Math.round(je/1e3)}k`:je>=1e3?Math.round(je/100)/10+"k":je,xt=dt[Ge+oe],Ie=xt===-1?{}:Object.assign({},Je[xt]);return Object.assign(Ie,{cluster:!0,cluster_id:dt[Ge+H],point_count:je,point_count_abbreviated:tt})}function me(dt){return dt/360+.5}function ie(dt){let Ge=Math.sin(dt*Math.PI/180),Je=.5-.25*Math.log((1+Ge)/(1-Ge))/Math.PI;return Je<0?0:Je>1?1:Je}function Se(dt){let Ge=(180-360*dt)*Math.PI/180;return 360*Math.atan(Math.exp(Ge))/Math.PI-90}function Le(dt,Ge,Je,je){let tt=je,xt=Ge+(Je-Ge>>1),Ie,xe=Je-Ge,ke=dt[Ge],vt=dt[Ge+1],ir=dt[Je],ar=dt[Je+1];for(let vr=Ge+3;vrtt)Ie=vr,tt=ii;else if(ii===tt){let pi=Math.abs(vr-xt);pije&&(Ie-Ge>3&&Le(dt,Ge,Ie,je),dt[Ie+2]=tt,Je-Ie>3&&Le(dt,Ie,Je,je))}function Ae(dt,Ge,Je,je,tt,xt){let Ie=tt-Je,xe=xt-je;if(Ie!==0||xe!==0){let ke=((dt-Je)*Ie+(Ge-je)*xe)/(Ie*Ie+xe*xe);ke>1?(Je=tt,je=xt):ke>0&&(Je+=Ie*ke,je+=xe*ke)}return Ie=dt-Je,xe=Ge-je,Ie*Ie+xe*xe}function Fe(dt,Ge,Je,je){let tt={id:dt==null?null:dt,type:Ge,geometry:Je,tags:je,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if(Ge==="Point"||Ge==="MultiPoint"||Ge==="LineString")Pe(tt,Je);else if(Ge==="Polygon")Pe(tt,Je[0]);else if(Ge==="MultiLineString")for(let xt of Je)Pe(tt,xt);else if(Ge==="MultiPolygon")for(let xt of Je)Pe(tt,xt[0]);return tt}function Pe(dt,Ge){for(let Je=0;Je0&&(Ie+=je?(tt*ir-vt*xt)/2:Math.sqrt(Math.pow(vt-tt,2)+Math.pow(ir-xt,2))),tt=vt,xt=ir}let xe=Ge.length-3;Ge[2]=1,Le(Ge,0,xe,Je),Ge[xe+2]=1,Ge.size=Math.abs(Ie),Ge.start=0,Ge.end=Ge.size}function Ze(dt,Ge,Je,je){for(let tt=0;tt1?1:Je}function Zt(dt,Ge,Je,je,tt,xt,Ie,xe){if(je/=Ge,xt>=(Je/=Ge)&&Ie=je)return null;let ke=[];for(let vt of dt){let ir=vt.geometry,ar=vt.type,vr=tt===0?vt.minX:vt.minY,ii=tt===0?vt.maxX:vt.maxY;if(vr>=Je&&ii=je)continue;let pi=[];if(ar==="Point"||ar==="MultiPoint")st(ir,pi,Je,je,tt);else if(ar==="LineString")lt(ir,pi,Je,je,tt,!1,xe.lineMetrics);else if(ar==="MultiLineString")Nt(ir,pi,Je,je,tt,!1);else if(ar==="Polygon")Nt(ir,pi,Je,je,tt,!0);else if(ar==="MultiPolygon")for(let $r of ir){let di=[];Nt($r,di,Je,je,tt,!0),di.length&&pi.push(di)}if(pi.length){if(xe.lineMetrics&&ar==="LineString"){for(let $r of pi)ke.push(Fe(vt.id,ar,$r,vt.tags));continue}ar!=="LineString"&&ar!=="MultiLineString"||(pi.length===1?(ar="LineString",pi=pi[0]):ar="MultiLineString"),ar!=="Point"&&ar!=="MultiPoint"||(ar=pi.length===3?"Point":"MultiPoint"),ke.push(Fe(vt.id,ar,pi,vt.tags))}}return ke.length?ke:null}function st(dt,Ge,Je,je,tt){for(let xt=0;xt=Je&&Ie<=je&&Jt(Ge,dt[xt],dt[xt+1],dt[xt+2])}}function lt(dt,Ge,Je,je,tt,xt,Ie){let xe=Gt(dt),ke=tt===0?sr:wr,vt,ir,ar=dt.start;for(let di=0;diJe&&(ir=ke(xe,ji,In,On,qn,Je),Ie&&(xe.start=ar+vt*ir)):Fn>je?ra=Je&&(ir=ke(xe,ji,In,On,qn,Je),la=!0),ra>je&&Fn<=je&&(ir=ke(xe,ji,In,On,qn,je),la=!0),!xt&&la&&(Ie&&(xe.end=ar+vt*ir),Ge.push(xe),xe=Gt(dt)),Ie&&(ar+=vt)}let vr=dt.length-3,ii=dt[vr],pi=dt[vr+1],$r=tt===0?ii:pi;$r>=Je&&$r<=je&&Jt(xe,ii,pi,dt[vr+2]),vr=xe.length-3,xt&&vr>=3&&(xe[vr]!==xe[0]||xe[vr+1]!==xe[1])&&Jt(xe,xe[0],xe[1],xe[2]),xe.length&&Ge.push(xe)}function Gt(dt){let Ge=[];return Ge.size=dt.size,Ge.start=dt.start,Ge.end=dt.end,Ge}function Nt(dt,Ge,Je,je,tt,xt){for(let Ie of dt)lt(Ie,Ge,Je,je,tt,xt,!1)}function Jt(dt,Ge,Je,je){dt.push(Ge,Je,je)}function sr(dt,Ge,Je,je,tt,xt){let Ie=(xt-Ge)/(je-Ge);return Jt(dt,xt,Je+(tt-Je)*Ie,1),Ie}function wr(dt,Ge,Je,je,tt,xt){let Ie=(xt-Je)/(tt-Je);return Jt(dt,Ge+(je-Ge)*Ie,xt,1),Ie}function cr(dt,Ge){let Je=[];for(let je=0;je0&&Ge.size<(tt?Ie:je))return void(Je.numPoints+=Ge.length/3);let xe=[];for(let ke=0;keIe)&&(Je.numSimplified++,xe.push(Ge[ke],Ge[ke+1])),Je.numPoints++;tt&&function(ke,vt){let ir=0;for(let ar=0,vr=ke.length,ii=vr-2;ar0===vt)for(let ar=0,vr=ke.length;ar24)throw new Error("maxZoom should be in the 0-24 range");if(Je.promoteId&&Je.generateId)throw new Error("promoteId and generateId cannot be used together.");let tt=function(xt,Ie){let xe=[];if(xt.type==="FeatureCollection")for(let ke=0;ke1&&console.time("creation"),ii=this.tiles[vr]=Vt(Ge,Je,je,tt,vt),this.tileCoords.push({z:Je,x:je,y:tt}),ir)){ir>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Je,je,tt,ii.numFeatures,ii.numPoints,ii.numSimplified),console.timeEnd("creation"));let la=`z${Je}`;this.stats[la]=(this.stats[la]||0)+1,this.total++}if(ii.source=Ge,xt==null){if(Je===vt.indexMaxZoom||ii.numPoints<=vt.indexMaxPoints)continue}else{if(Je===vt.maxZoom||Je===xt)continue;if(xt!=null){let la=xt-Je;if(je!==Ie>>la||tt!==xe>>la)continue}}if(ii.source=null,Ge.length===0)continue;ir>1&&console.time("clipping");let pi=.5*vt.buffer/vt.extent,$r=.5-pi,di=.5+pi,ji=1+pi,In=null,wi=null,On=null,qn=null,Fn=Zt(Ge,ar,je-pi,je+di,0,ii.minX,ii.maxX,vt),ra=Zt(Ge,ar,je+$r,je+ji,0,ii.minX,ii.maxX,vt);Ge=null,Fn&&(In=Zt(Fn,ar,tt-pi,tt+di,1,ii.minY,ii.maxY,vt),wi=Zt(Fn,ar,tt+$r,tt+ji,1,ii.minY,ii.maxY,vt),Fn=null),ra&&(On=Zt(ra,ar,tt-pi,tt+di,1,ii.minY,ii.maxY,vt),qn=Zt(ra,ar,tt+$r,tt+ji,1,ii.minY,ii.maxY,vt),ra=null),ir>1&&console.timeEnd("clipping"),ke.push(In||[],Je+1,2*je,2*tt),ke.push(wi||[],Je+1,2*je,2*tt+1),ke.push(On||[],Je+1,2*je+1,2*tt),ke.push(qn||[],Je+1,2*je+1,2*tt+1)}}getTile(Ge,Je,je){Ge=+Ge,Je=+Je,je=+je;let tt=this.options,{extent:xt,debug:Ie}=tt;if(Ge<0||Ge>24)return null;let xe=1<1&&console.log("drilling down to z%d-%d-%d",Ge,Je,je);let vt,ir=Ge,ar=Je,vr=je;for(;!vt&&ir>0;)ir--,ar>>=1,vr>>=1,vt=this.tiles[lr(ir,ar,vr)];return vt&&vt.source?(Ie>1&&(console.log("found parent tile z%d-%d-%d",ir,ar,vr),console.time("drilling down")),this.splitTile(vt.source,ir,ar,vr,Ge,Je,je),Ie>1&&console.timeEnd("drilling down"),this.tiles[ke]?St(this.tiles[ke],xt):null):null}}function lr(dt,Ge,Je){return 32*((1<{ar.properties=ii;let pi={};for(let $r of vr)pi[$r]=ke[$r].evaluate(ir,ar);return pi},Ie.reduce=(ii,pi)=>{ar.properties=pi;for(let $r of vr)ir.accumulated=ii[$r],ii[$r]=vt[$r].evaluate(ir,ar)},Ie}(Ge)).load((yield this._pendingData).features):(tt=yield this._pendingData,new er(tt,Ge.geojsonVtOptions)),this.loaded={};let xt={};if(je){let Ie=je.finish();Ie&&(xt.resourceTiming={},xt.resourceTiming[Ge.source]=JSON.parse(JSON.stringify(Ie)))}return xt}catch(xt){if(delete this._pendingRequest,i.bB(xt))return{abandoned:!0};throw xt}var tt})}getData(){return i._(this,void 0,void 0,function*(){return this._pendingData})}reloadTile(Ge){let Je=this.loaded;return Je&&Je[Ge.uid]?super.reloadTile(Ge):this.loadTile(Ge)}loadAndProcessGeoJSON(Ge,Je){return i._(this,void 0,void 0,function*(){let je=yield this.loadGeoJSON(Ge,Je);if(delete this._pendingRequest,typeof je!="object")throw new Error(`Input data given to '${Ge.source}' is not a valid GeoJSON object.`);if(d(je,!0),Ge.filter){let tt=i.bC(Ge.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(tt.result==="error")throw new Error(tt.value.map(Ie=>`${Ie.key}: ${Ie.message}`).join(", "));je={type:"FeatureCollection",features:je.features.filter(Ie=>tt.value.evaluate({zoom:0},Ie))}}return je})}loadGeoJSON(Ge,Je){return i._(this,void 0,void 0,function*(){let{promoteId:je}=Ge;if(Ge.request){let tt=yield i.h(Ge.request,Je);return this._dataUpdateable=Lr(tt.data,je)?ti(tt.data,je):void 0,tt.data}if(typeof Ge.data=="string")try{let tt=JSON.parse(Ge.data);return this._dataUpdateable=Lr(tt,je)?ti(tt,je):void 0,tt}catch(tt){throw new Error(`Input data given to '${Ge.source}' is not a valid GeoJSON object.`)}if(!Ge.dataDiff)throw new Error(`Input data given to '${Ge.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${Ge.source}`);return function(tt,xt,Ie){var xe,ke,vt,ir;if(xt.removeAll&&tt.clear(),xt.remove)for(let ar of xt.remove)tt.delete(ar);if(xt.add)for(let ar of xt.add){let vr=Tr(ar,Ie);vr!=null&&tt.set(vr,ar)}if(xt.update)for(let ar of xt.update){let vr=tt.get(ar.id);if(vr==null)continue;let ii=!ar.removeAllProperties&&(((xe=ar.removeProperties)===null||xe===void 0?void 0:xe.length)>0||((ke=ar.addOrUpdateProperties)===null||ke===void 0?void 0:ke.length)>0);if((ar.newGeometry||ar.removeAllProperties||ii)&&(vr=Object.assign({},vr),tt.set(ar.id,vr),ii&&(vr.properties=Object.assign({},vr.properties))),ar.newGeometry&&(vr.geometry=ar.newGeometry),ar.removeAllProperties)vr.properties={};else if(((vt=ar.removeProperties)===null||vt===void 0?void 0:vt.length)>0)for(let pi of ar.removeProperties)Object.prototype.hasOwnProperty.call(vr.properties,pi)&&delete vr.properties[pi];if(((ir=ar.addOrUpdateProperties)===null||ir===void 0?void 0:ir.length)>0)for(let{key:pi,value:$r}of ar.addOrUpdateProperties)vr.properties[pi]=$r}}(this._dataUpdateable,Ge.dataDiff,je),{type:"FeatureCollection",features:Array.from(this._dataUpdateable.values())}})}removeSource(Ge){return i._(this,void 0,void 0,function*(){this._pendingRequest&&this._pendingRequest.abort()})}getClusterExpansionZoom(Ge){return this._geoJSONIndex.getClusterExpansionZoom(Ge.clusterId)}getClusterChildren(Ge){return this._geoJSONIndex.getChildren(Ge.clusterId)}getClusterLeaves(Ge){return this._geoJSONIndex.getLeaves(Ge.clusterId,Ge.limit,Ge.offset)}}class Vr{constructor(Ge){this.self=Ge,this.actor=new i.F(Ge),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(Je,je)=>{if(this.externalWorkerSourceTypes[Je])throw new Error(`Worker source with name "${Je}" already registered.`);this.externalWorkerSourceTypes[Je]=je},this.self.addProtocol=i.bi,this.self.removeProtocol=i.bj,this.self.registerRTLTextPlugin=Je=>{if(i.bD.isParsed())throw new Error("RTL text plugin already registered.");i.bD.setMethods(Je)},this.actor.registerMessageHandler("LDT",(Je,je)=>this._getDEMWorkerSource(Je,je.source).loadTile(je)),this.actor.registerMessageHandler("RDT",(Je,je)=>i._(this,void 0,void 0,function*(){this._getDEMWorkerSource(Je,je.source).removeTile(je)})),this.actor.registerMessageHandler("GCEZ",(Je,je)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Je,je.type,je.source).getClusterExpansionZoom(je)})),this.actor.registerMessageHandler("GCC",(Je,je)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Je,je.type,je.source).getClusterChildren(je)})),this.actor.registerMessageHandler("GCL",(Je,je)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Je,je.type,je.source).getClusterLeaves(je)})),this.actor.registerMessageHandler("LD",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).loadData(je)),this.actor.registerMessageHandler("GD",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).getData()),this.actor.registerMessageHandler("LT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).loadTile(je)),this.actor.registerMessageHandler("RT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).reloadTile(je)),this.actor.registerMessageHandler("AT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).abortTile(je)),this.actor.registerMessageHandler("RMT",(Je,je)=>this._getWorkerSource(Je,je.type,je.source).removeTile(je)),this.actor.registerMessageHandler("RS",(Je,je)=>i._(this,void 0,void 0,function*(){if(!this.workerSources[Je]||!this.workerSources[Je][je.type]||!this.workerSources[Je][je.type][je.source])return;let tt=this.workerSources[Je][je.type][je.source];delete this.workerSources[Je][je.type][je.source],tt.removeSource!==void 0&&tt.removeSource(je)})),this.actor.registerMessageHandler("RM",Je=>i._(this,void 0,void 0,function*(){delete this.layerIndexes[Je],delete this.availableImages[Je],delete this.workerSources[Je],delete this.demWorkerSources[Je]})),this.actor.registerMessageHandler("SR",(Je,je)=>i._(this,void 0,void 0,function*(){this.referrer=je})),this.actor.registerMessageHandler("SRPS",(Je,je)=>this._syncRTLPluginState(Je,je)),this.actor.registerMessageHandler("IS",(Je,je)=>i._(this,void 0,void 0,function*(){this.self.importScripts(je)})),this.actor.registerMessageHandler("SI",(Je,je)=>this._setImages(Je,je)),this.actor.registerMessageHandler("UL",(Je,je)=>i._(this,void 0,void 0,function*(){this._getLayerIndex(Je).update(je.layers,je.removedIds)})),this.actor.registerMessageHandler("SL",(Je,je)=>i._(this,void 0,void 0,function*(){this._getLayerIndex(Je).replace(je)}))}_setImages(Ge,Je){return i._(this,void 0,void 0,function*(){this.availableImages[Ge]=Je;for(let je in this.workerSources[Ge]){let tt=this.workerSources[Ge][je];for(let xt in tt)tt[xt].availableImages=Je}})}_syncRTLPluginState(Ge,Je){return i._(this,void 0,void 0,function*(){if(i.bD.isParsed())return i.bD.getState();if(Je.pluginStatus!=="loading")return i.bD.setState(Je),Je;let je=Je.pluginURL;if(this.self.importScripts(je),i.bD.isParsed()){let tt={pluginStatus:"loaded",pluginURL:je};return i.bD.setState(tt),tt}throw i.bD.setState({pluginStatus:"error",pluginURL:""}),new Error(`RTL Text Plugin failed to import scripts from ${je}`)})}_getAvailableImages(Ge){let Je=this.availableImages[Ge];return Je||(Je=[]),Je}_getLayerIndex(Ge){let Je=this.layerIndexes[Ge];return Je||(Je=this.layerIndexes[Ge]=new a),Je}_getWorkerSource(Ge,Je,je){if(this.workerSources[Ge]||(this.workerSources[Ge]={}),this.workerSources[Ge][Je]||(this.workerSources[Ge][Je]={}),!this.workerSources[Ge][Je][je]){let tt={sendAsync:(xt,Ie)=>(xt.targetMapId=Ge,this.actor.sendAsync(xt,Ie))};switch(Je){case"vector":this.workerSources[Ge][Je][je]=new u(tt,this._getLayerIndex(Ge),this._getAvailableImages(Ge));break;case"geojson":this.workerSources[Ge][Je][je]=new Br(tt,this._getLayerIndex(Ge),this._getAvailableImages(Ge));break;default:this.workerSources[Ge][Je][je]=new this.externalWorkerSourceTypes[Je](tt,this._getLayerIndex(Ge),this._getAvailableImages(Ge))}}return this.workerSources[Ge][Je][je]}_getDEMWorkerSource(Ge,Je){return this.demWorkerSources[Ge]||(this.demWorkerSources[Ge]={}),this.demWorkerSources[Ge][Je]||(this.demWorkerSources[Ge][Je]=new c),this.demWorkerSources[Ge][Je]}}return i.i(self)&&(self.worker=new Vr(self)),Vr}),r("index",["exports","./shared"],function(i,a){"use strict";var o="4.7.1";let s,l,u={now:typeof performance!="undefined"&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync:ue=>new Promise((w,B)=>{let Q=requestAnimationFrame(w);ue.signal.addEventListener("abort",()=>{cancelAnimationFrame(Q),B(a.c())})}),getImageData(ue,w=0){return this.getImageCanvasContext(ue).getImageData(-w,-w,ue.width+2*w,ue.height+2*w)},getImageCanvasContext(ue){let w=window.document.createElement("canvas"),B=w.getContext("2d",{willReadFrequently:!0});if(!B)throw new Error("failed to create canvas 2d context");return w.width=ue.width,w.height=ue.height,B.drawImage(ue,0,0,ue.width,ue.height),B},resolveURL:ue=>(s||(s=document.createElement("a")),s.href=ue,s.href),hardwareConcurrency:typeof navigator!="undefined"&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(l==null&&(l=matchMedia("(prefers-reduced-motion: reduce)")),l.matches)}};class c{static testProp(w){if(!c.docStyle)return w[0];for(let B=0;B{window.removeEventListener("click",c.suppressClickInternal,!0)},0)}static getScale(w){let B=w.getBoundingClientRect();return{x:B.width/w.offsetWidth||1,y:B.height/w.offsetHeight||1,boundingClientRect:B}}static getPoint(w,B,Q){let ee=B.boundingClientRect;return new a.P((Q.clientX-ee.left)/B.x-w.clientLeft,(Q.clientY-ee.top)/B.y-w.clientTop)}static mousePos(w,B){let Q=c.getScale(w);return c.getPoint(w,Q,B)}static touchPos(w,B){let Q=[],ee=c.getScale(w);for(let le=0;le{h&&b(h),h=null,_=!0},d.onerror=()=>{v=!0,h=null},d.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="),function(ue){let w,B,Q,ee;ue.resetRequestQueue=()=>{w=[],B=0,Q=0,ee={}},ue.addThrottleControl=ot=>{let Tt=Q++;return ee[Tt]=ot,Tt},ue.removeThrottleControl=ot=>{delete ee[ot],qe()},ue.getImage=(ot,Tt,Yt=!0)=>new Promise((Kt,xr)=>{f.supported&&(ot.headers||(ot.headers={}),ot.headers.accept="image/webp,*/*"),a.e(ot,{type:"image"}),w.push({abortController:Tt,requestParameters:ot,supportImageRefresh:Yt,state:"queued",onError:Ir=>{xr(Ir)},onSuccess:Ir=>{Kt(Ir)}}),qe()});let le=ot=>a._(this,void 0,void 0,function*(){ot.state="running";let{requestParameters:Tt,supportImageRefresh:Yt,onError:Kt,onSuccess:xr,abortController:Ir}=ot,ve=Yt===!1&&!a.i(self)&&!a.g(Tt.url)&&(!Tt.headers||Object.keys(Tt.headers).reduce((Be,et)=>Be&&et==="accept",!0));B++;let be=ve?Xe(Tt,Ir):a.m(Tt,Ir);try{let Be=yield be;delete ot.abortController,ot.state="completed",Be.data instanceof HTMLImageElement||a.b(Be.data)?xr(Be):Be.data&&xr({data:yield(De=Be.data,typeof createImageBitmap=="function"?a.d(De):a.f(De)),cacheControl:Be.cacheControl,expires:Be.expires})}catch(Be){delete ot.abortController,Kt(Be)}finally{B--,qe()}var De}),qe=()=>{let ot=(()=>{for(let Tt of Object.keys(ee))if(ee[Tt]())return!0;return!1})()?a.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:a.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let Tt=B;Tt0;Tt++){let Yt=w.shift();Yt.abortController.signal.aborted?Tt--:le(Yt)}},Xe=(ot,Tt)=>new Promise((Yt,Kt)=>{let xr=new Image,Ir=ot.url,ve=ot.credentials;ve&&ve==="include"?xr.crossOrigin="use-credentials":(ve&&ve==="same-origin"||!a.s(Ir))&&(xr.crossOrigin="anonymous"),Tt.signal.addEventListener("abort",()=>{xr.src="",Kt(a.c())}),xr.fetchPriority="high",xr.onload=()=>{xr.onerror=xr.onload=null,Yt({data:xr})},xr.onerror=()=>{xr.onerror=xr.onload=null,Tt.signal.aborted||Kt(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))},xr.src=Ir})}(p||(p={})),p.resetRequestQueue();class k{constructor(w){this._transformRequestFn=w}transformRequest(w,B){return this._transformRequestFn&&this._transformRequestFn(w,B)||{url:w}}setTransformRequest(w){this._transformRequestFn=w}}function E(ue){var w=new a.A(3);return w[0]=ue[0],w[1]=ue[1],w[2]=ue[2],w}var S,L=function(ue,w,B){return ue[0]=w[0]-B[0],ue[1]=w[1]-B[1],ue[2]=w[2]-B[2],ue};S=new a.A(3),a.A!=Float32Array&&(S[0]=0,S[1]=0,S[2]=0);var x=function(ue){var w=ue[0],B=ue[1];return w*w+B*B};function C(ue){let w=[];if(typeof ue=="string")w.push({id:"default",url:ue});else if(ue&&ue.length>0){let B=[];for(let{id:Q,url:ee}of ue){let le=`${Q}${ee}`;B.indexOf(le)===-1&&(B.push(le),w.push({id:Q,url:ee}))}}return w}function M(ue,w,B){let Q=ue.split("?");return Q[0]+=`${w}${B}`,Q.join("?")}(function(){var ue=new a.A(2);a.A!=Float32Array&&(ue[0]=0,ue[1]=0)})();class g{constructor(w,B,Q,ee){this.context=w,this.format=Q,this.texture=w.gl.createTexture(),this.update(B,ee)}update(w,B,Q){let{width:ee,height:le}=w,qe=!(this.size&&this.size[0]===ee&&this.size[1]===le||Q),{context:Xe}=this,{gl:ot}=Xe;if(this.useMipmap=!!(B&&B.useMipmap),ot.bindTexture(ot.TEXTURE_2D,this.texture),Xe.pixelStoreUnpackFlipY.set(!1),Xe.pixelStoreUnpack.set(1),Xe.pixelStoreUnpackPremultiplyAlpha.set(this.format===ot.RGBA&&(!B||B.premultiply!==!1)),qe)this.size=[ee,le],w instanceof HTMLImageElement||w instanceof HTMLCanvasElement||w instanceof HTMLVideoElement||w instanceof ImageData||a.b(w)?ot.texImage2D(ot.TEXTURE_2D,0,this.format,this.format,ot.UNSIGNED_BYTE,w):ot.texImage2D(ot.TEXTURE_2D,0,this.format,ee,le,0,this.format,ot.UNSIGNED_BYTE,w.data);else{let{x:Tt,y:Yt}=Q||{x:0,y:0};w instanceof HTMLImageElement||w instanceof HTMLCanvasElement||w instanceof HTMLVideoElement||w instanceof ImageData||a.b(w)?ot.texSubImage2D(ot.TEXTURE_2D,0,Tt,Yt,ot.RGBA,ot.UNSIGNED_BYTE,w):ot.texSubImage2D(ot.TEXTURE_2D,0,Tt,Yt,ee,le,ot.RGBA,ot.UNSIGNED_BYTE,w.data)}this.useMipmap&&this.isSizePowerOfTwo()&&ot.generateMipmap(ot.TEXTURE_2D)}bind(w,B,Q){let{context:ee}=this,{gl:le}=ee;le.bindTexture(le.TEXTURE_2D,this.texture),Q!==le.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(Q=le.LINEAR),w!==this.filter&&(le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MAG_FILTER,w),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MIN_FILTER,Q||w),this.filter=w),B!==this.wrap&&(le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_S,B),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_T,B),this.wrap=B)}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){let{gl:w}=this.context;w.deleteTexture(this.texture),this.texture=null}}function P(ue){let{userImage:w}=ue;return!!(w&&w.render&&w.render())&&(ue.data.replace(new Uint8Array(w.data.buffer)),!0)}class T extends a.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new a.R({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(w){if(this.loaded!==w&&(this.loaded=w,w)){for(let{ids:B,promiseResolve:Q}of this.requestors)Q(this._getImagesForIds(B));this.requestors=[]}}getImage(w){let B=this.images[w];if(B&&!B.data&&B.spriteData){let Q=B.spriteData;B.data=new a.R({width:Q.width,height:Q.height},Q.context.getImageData(Q.x,Q.y,Q.width,Q.height).data),B.spriteData=null}return B}addImage(w,B){if(this.images[w])throw new Error(`Image id ${w} already exist, use updateImage instead`);this._validate(w,B)&&(this.images[w]=B)}_validate(w,B){let Q=!0,ee=B.data||B.spriteData;return this._validateStretch(B.stretchX,ee&&ee.width)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "stretchX" value`))),Q=!1),this._validateStretch(B.stretchY,ee&&ee.height)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "stretchY" value`))),Q=!1),this._validateContent(B.content,B)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "content" value`))),Q=!1),Q}_validateStretch(w,B){if(!w)return!0;let Q=0;for(let ee of w){if(ee[0]{let ee=!0;if(!this.isLoaded())for(let le of w)this.images[le]||(ee=!1);this.isLoaded()||ee?B(this._getImagesForIds(w)):this.requestors.push({ids:w,promiseResolve:B})})}_getImagesForIds(w){let B={};for(let Q of w){let ee=this.getImage(Q);ee||(this.fire(new a.k("styleimagemissing",{id:Q})),ee=this.getImage(Q)),ee?B[Q]={data:ee.data.clone(),pixelRatio:ee.pixelRatio,sdf:ee.sdf,version:ee.version,stretchX:ee.stretchX,stretchY:ee.stretchY,content:ee.content,textFitWidth:ee.textFitWidth,textFitHeight:ee.textFitHeight,hasRenderCallback:!!(ee.userImage&&ee.userImage.render)}:a.w(`Image "${Q}" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.`)}return B}getPixelSize(){let{width:w,height:B}=this.atlasImage;return{width:w,height:B}}getPattern(w){let B=this.patterns[w],Q=this.getImage(w);if(!Q)return null;if(B&&B.position.version===Q.version)return B.position;if(B)B.position.version=Q.version;else{let ee={w:Q.data.width+2,h:Q.data.height+2,x:0,y:0},le=new a.I(ee,Q);this.patterns[w]={bin:ee,position:le}}return this._updatePatternAtlas(),this.patterns[w].position}bind(w){let B=w.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new g(w,this.atlasImage,B.RGBA),this.atlasTexture.bind(B.LINEAR,B.CLAMP_TO_EDGE)}_updatePatternAtlas(){let w=[];for(let le in this.patterns)w.push(this.patterns[le].bin);let{w:B,h:Q}=a.p(w),ee=this.atlasImage;ee.resize({width:B||1,height:Q||1});for(let le in this.patterns){let{bin:qe}=this.patterns[le],Xe=qe.x+1,ot=qe.y+1,Tt=this.getImage(le).data,Yt=Tt.width,Kt=Tt.height;a.R.copy(Tt,ee,{x:0,y:0},{x:Xe,y:ot},{width:Yt,height:Kt}),a.R.copy(Tt,ee,{x:0,y:Kt-1},{x:Xe,y:ot-1},{width:Yt,height:1}),a.R.copy(Tt,ee,{x:0,y:0},{x:Xe,y:ot+Kt},{width:Yt,height:1}),a.R.copy(Tt,ee,{x:Yt-1,y:0},{x:Xe-1,y:ot},{width:1,height:Kt}),a.R.copy(Tt,ee,{x:0,y:0},{x:Xe+Yt,y:ot},{width:1,height:Kt})}this.dirty=!0}beginFrame(){this.callbackDispatchedThisFrame={}}dispatchRenderCallbacks(w){for(let B of w){if(this.callbackDispatchedThisFrame[B])continue;this.callbackDispatchedThisFrame[B]=!0;let Q=this.getImage(B);Q||a.w(`Image with ID: "${B}" was not found`),P(Q)&&this.updateImage(B,Q)}}}let z=1e20;function O(ue,w,B,Q,ee,le,qe,Xe,ot){for(let Tt=w;Tt-1);ot++,le[ot]=Xe,qe[ot]=Tt,qe[ot+1]=z}for(let Xe=0,ot=0;Xe65535)throw new Error("glyphs > 65535 not supported");if(Q.ranges[le])return{stack:w,id:B,glyph:ee};if(!this.url)throw new Error("glyphsUrl is not set");if(!Q.requests[le]){let Xe=G.loadGlyphRange(w,le,this.url,this.requestManager);Q.requests[le]=Xe}let qe=yield Q.requests[le];for(let Xe in qe)this._doesCharSupportLocalGlyph(+Xe)||(Q.glyphs[+Xe]=qe[+Xe]);return Q.ranges[le]=!0,{stack:w,id:B,glyph:qe[B]||null}})}_doesCharSupportLocalGlyph(w){return!!this.localIdeographFontFamily&&new RegExp("\\p{Ideo}|\\p{sc=Hang}|\\p{sc=Hira}|\\p{sc=Kana}","u").test(String.fromCodePoint(w))}_tinySDF(w,B,Q){let ee=this.localIdeographFontFamily;if(!ee||!this._doesCharSupportLocalGlyph(Q))return;let le=w.tinySDF;if(!le){let Xe="400";/bold/i.test(B)?Xe="900":/medium/i.test(B)?Xe="500":/light/i.test(B)&&(Xe="200"),le=w.tinySDF=new G.TinySDF({fontSize:48,buffer:6,radius:16,cutoff:.25,fontFamily:ee,fontWeight:Xe})}let qe=le.draw(String.fromCharCode(Q));return{id:Q,bitmap:new a.o({width:qe.width||60,height:qe.height||60},qe.data),metrics:{width:qe.glyphWidth/2||24,height:qe.glyphHeight/2||24,left:qe.glyphLeft/2+.5||0,top:qe.glyphTop/2-27.5||-8,advance:qe.glyphAdvance/2||24,isDoubleResolution:!0}}}}G.loadGlyphRange=function(ue,w,B,Q){return a._(this,void 0,void 0,function*(){let ee=256*w,le=ee+255,qe=Q.transformRequest(B.replace("{fontstack}",ue).replace("{range}",`${ee}-${le}`),"Glyphs"),Xe=yield a.l(qe,new AbortController);if(!Xe||!Xe.data)throw new Error(`Could not load glyph range. range: ${w}, ${ee}-${le}`);let ot={};for(let Tt of a.n(Xe.data))ot[Tt.id]=Tt;return ot})},G.TinySDF=class{constructor({fontSize:ue=24,buffer:w=3,radius:B=8,cutoff:Q=.25,fontFamily:ee="sans-serif",fontWeight:le="normal",fontStyle:qe="normal"}={}){this.buffer=w,this.cutoff=Q,this.radius=B;let Xe=this.size=ue+4*w,ot=this._createCanvas(Xe),Tt=this.ctx=ot.getContext("2d",{willReadFrequently:!0});Tt.font=`${qe} ${le} ${ue}px ${ee}`,Tt.textBaseline="alphabetic",Tt.textAlign="left",Tt.fillStyle="black",this.gridOuter=new Float64Array(Xe*Xe),this.gridInner=new Float64Array(Xe*Xe),this.f=new Float64Array(Xe),this.z=new Float64Array(Xe+1),this.v=new Uint16Array(Xe)}_createCanvas(ue){let w=document.createElement("canvas");return w.width=w.height=ue,w}draw(ue){let{width:w,actualBoundingBoxAscent:B,actualBoundingBoxDescent:Q,actualBoundingBoxLeft:ee,actualBoundingBoxRight:le}=this.ctx.measureText(ue),qe=Math.ceil(B),Xe=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(le-ee))),ot=Math.min(this.size-this.buffer,qe+Math.ceil(Q)),Tt=Xe+2*this.buffer,Yt=ot+2*this.buffer,Kt=Math.max(Tt*Yt,0),xr=new Uint8ClampedArray(Kt),Ir={data:xr,width:Tt,height:Yt,glyphWidth:Xe,glyphHeight:ot,glyphTop:qe,glyphLeft:0,glyphAdvance:w};if(Xe===0||ot===0)return Ir;let{ctx:ve,buffer:be,gridInner:De,gridOuter:Be}=this;ve.clearRect(be,be,Xe,ot),ve.fillText(ue,be,be+qe);let et=ve.getImageData(be,be,Xe,ot);Be.fill(z,0,Kt),De.fill(0,0,Kt);for(let We=0;We0?tr*tr:0,De[Ht]=tr<0?tr*tr:0}}O(Be,0,0,Tt,Yt,Tt,this.f,this.v,this.z),O(De,be,be,Xe,ot,Tt,this.f,this.v,this.z);for(let We=0;We1&&(ot=w[++Xe]);let Yt=Math.abs(Tt-ot.left),Kt=Math.abs(Tt-ot.right),xr=Math.min(Yt,Kt),Ir,ve=le/Q*(ee+1);if(ot.isDash){let be=ee-Math.abs(ve);Ir=Math.sqrt(xr*xr+be*be)}else Ir=ee-Math.sqrt(xr*xr+ve*ve);this.data[qe+Tt]=Math.max(0,Math.min(255,Ir+128))}}}addRegularDash(w){for(let Xe=w.length-1;Xe>=0;--Xe){let ot=w[Xe],Tt=w[Xe+1];ot.zeroLength?w.splice(Xe,1):Tt&&Tt.isDash===ot.isDash&&(Tt.left=ot.left,w.splice(Xe,1))}let B=w[0],Q=w[w.length-1];B.isDash===Q.isDash&&(B.left=Q.left-this.width,Q.right=B.right+this.width);let ee=this.width*this.nextRow,le=0,qe=w[le];for(let Xe=0;Xe1&&(qe=w[++le]);let ot=Math.abs(Xe-qe.left),Tt=Math.abs(Xe-qe.right),Yt=Math.min(ot,Tt);this.data[ee+Xe]=Math.max(0,Math.min(255,(qe.isDash?Yt:-Yt)+128))}}addDash(w,B){let Q=B?7:0,ee=2*Q+1;if(this.nextRow+ee>this.height)return a.w("LineAtlas out of space"),null;let le=0;for(let Xe=0;Xe{B.terminate()}),this.workers=null)}isPreloaded(){return!!this.active[_e]}numActive(){return Object.keys(this.active).length}}let Ce=Math.floor(u.hardwareConcurrency/2),me,ie;function Se(){return me||(me=new Ee),me}Ee.workerCount=a.C(globalThis)?Math.max(Math.min(Ce,3),1):1;class Le{constructor(w,B){this.workerPool=w,this.actors=[],this.currentActor=0,this.id=B;let Q=this.workerPool.acquire(B);for(let ee=0;ee{B.remove()}),this.actors=[],w&&this.workerPool.release(this.id)}registerMessageHandler(w,B){for(let Q of this.actors)Q.registerMessageHandler(w,B)}}function Ae(){return ie||(ie=new Le(Se(),a.G),ie.registerMessageHandler("GR",(ue,w,B)=>a.m(w,B))),ie}function Fe(ue,w){let B=a.H();return a.J(B,B,[1,1,0]),a.K(B,B,[.5*ue.width,.5*ue.height,1]),a.L(B,B,ue.calculatePosMatrix(w.toUnwrapped()))}function Pe(ue,w,B,Q,ee,le){let qe=function(Kt,xr,Ir){if(Kt)for(let ve of Kt){let be=xr[ve];if(be&&be.source===Ir&&be.type==="fill-extrusion")return!0}else for(let ve in xr){let be=xr[ve];if(be.source===Ir&&be.type==="fill-extrusion")return!0}return!1}(ee&&ee.layers,w,ue.id),Xe=le.maxPitchScaleFactor(),ot=ue.tilesIn(Q,Xe,qe);ot.sort(ge);let Tt=[];for(let Kt of ot)Tt.push({wrappedTileID:Kt.tileID.wrapped().key,queryResults:Kt.tile.queryRenderedFeatures(w,B,ue._state,Kt.queryGeometry,Kt.cameraQueryGeometry,Kt.scale,ee,le,Xe,Fe(ue.transform,Kt.tileID))});let Yt=function(Kt){let xr={},Ir={};for(let ve of Kt){let be=ve.queryResults,De=ve.wrappedTileID,Be=Ir[De]=Ir[De]||{};for(let et in be){let We=be[et],it=Be[et]=Be[et]||{},Ft=xr[et]=xr[et]||[];for(let Ht of We)it[Ht.featureIndex]||(it[Ht.featureIndex]=!0,Ft.push(Ht))}}return xr}(Tt);for(let Kt in Yt)Yt[Kt].forEach(xr=>{let Ir=xr.feature,ve=ue.getFeatureState(Ir.layer["source-layer"],Ir.id);Ir.source=Ir.layer.source,Ir.layer["source-layer"]&&(Ir.sourceLayer=Ir.layer["source-layer"]),Ir.state=ve});return Yt}function ge(ue,w){let B=ue.tileID,Q=w.tileID;return B.overscaledZ-Q.overscaledZ||B.canonical.y-Q.canonical.y||B.wrap-Q.wrap||B.canonical.x-Q.canonical.x}function Re(ue,w,B){return a._(this,void 0,void 0,function*(){let Q=ue;if(ue.url?Q=(yield a.h(w.transformRequest(ue.url,"Source"),B)).data:yield u.frameAsync(B),!Q)return null;let ee=a.M(a.e(Q,ue),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);return"vector_layers"in Q&&Q.vector_layers&&(ee.vectorLayerIds=Q.vector_layers.map(le=>le.id)),ee})}class ce{constructor(w,B){w&&(B?this.setSouthWest(w).setNorthEast(B):Array.isArray(w)&&(w.length===4?this.setSouthWest([w[0],w[1]]).setNorthEast([w[2],w[3]]):this.setSouthWest(w[0]).setNorthEast(w[1])))}setNorthEast(w){return this._ne=w instanceof a.N?new a.N(w.lng,w.lat):a.N.convert(w),this}setSouthWest(w){return this._sw=w instanceof a.N?new a.N(w.lng,w.lat):a.N.convert(w),this}extend(w){let B=this._sw,Q=this._ne,ee,le;if(w instanceof a.N)ee=w,le=w;else{if(!(w instanceof ce))return Array.isArray(w)?w.length===4||w.every(Array.isArray)?this.extend(ce.convert(w)):this.extend(a.N.convert(w)):w&&("lng"in w||"lon"in w)&&"lat"in w?this.extend(a.N.convert(w)):this;if(ee=w._sw,le=w._ne,!ee||!le)return this}return B||Q?(B.lng=Math.min(ee.lng,B.lng),B.lat=Math.min(ee.lat,B.lat),Q.lng=Math.max(le.lng,Q.lng),Q.lat=Math.max(le.lat,Q.lat)):(this._sw=new a.N(ee.lng,ee.lat),this._ne=new a.N(le.lng,le.lat)),this}getCenter(){return new a.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new a.N(this.getWest(),this.getNorth())}getSouthEast(){return new a.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(w){let{lng:B,lat:Q}=a.N.convert(w),ee=this._sw.lng<=B&&B<=this._ne.lng;return this._sw.lng>this._ne.lng&&(ee=this._sw.lng>=B&&B>=this._ne.lng),this._sw.lat<=Q&&Q<=this._ne.lat&&ee}static convert(w){return w instanceof ce?w:w&&new ce(w)}static fromLngLat(w,B=0){let Q=360*B/40075017,ee=Q/Math.cos(Math.PI/180*w.lat);return new ce(new a.N(w.lng-ee,w.lat-Q),new a.N(w.lng+ee,w.lat+Q))}adjustAntiMeridian(){let w=new a.N(this._sw.lng,this._sw.lat),B=new a.N(this._ne.lng,this._ne.lat);return new ce(w,w.lng>B.lng?new a.N(B.lng+360,B.lat):B)}}class Ze{constructor(w,B,Q){this.bounds=ce.convert(this.validateBounds(w)),this.minzoom=B||0,this.maxzoom=Q||24}validateBounds(w){return Array.isArray(w)&&w.length===4?[Math.max(-180,w[0]),Math.max(-90,w[1]),Math.min(180,w[2]),Math.min(90,w[3])]:[-180,-90,180,90]}contains(w){let B=Math.pow(2,w.z),Q=Math.floor(a.O(this.bounds.getWest())*B),ee=Math.floor(a.Q(this.bounds.getNorth())*B),le=Math.ceil(a.O(this.bounds.getEast())*B),qe=Math.ceil(a.Q(this.bounds.getSouth())*B);return w.x>=Q&&w.x=ee&&w.y{this._options.tiles=w}),this}setUrl(w){return this.setSourceProperty(()=>{this.url=w,this._options.url=w}),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}serialize(){return a.e({},this._options)}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),Q={request:this.map._requestManager.transformRequest(B,"Tile"),uid:w.uid,tileID:w.tileID,zoom:w.tileID.overscaledZ,tileSize:this.tileSize*w.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};Q.request.collectResourceTiming=this._collectResourceTiming;let ee="RT";if(w.actor&&w.state!=="expired"){if(w.state==="loading")return new Promise((le,qe)=>{w.reloadPromise={resolve:le,reject:qe}})}else w.actor=this.dispatcher.getActor(),ee="LT";w.abortController=new AbortController;try{let le=yield w.actor.sendAsync({type:ee,data:Q},w.abortController);if(delete w.abortController,w.aborted)return;this._afterTileLoadWorkerResponse(w,le)}catch(le){if(delete w.abortController,w.aborted)return;if(le&&le.status!==404)throw le;this._afterTileLoadWorkerResponse(w,null)}})}_afterTileLoadWorkerResponse(w,B){if(B&&B.resourceTiming&&(w.resourceTiming=B.resourceTiming),B&&this.map._refreshExpiredTiles&&w.setExpiryData(B),w.loadVectorData(B,this.map.painter),w.reloadPromise){let Q=w.reloadPromise;w.reloadPromise=null,this.loadTile(w).then(Q.resolve).catch(Q.reject)}}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController),w.actor&&(yield w.actor.sendAsync({type:"AT",data:{uid:w.uid,type:this.type,source:this.id}}))})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.unloadVectorData(),w.actor&&(yield w.actor.sendAsync({type:"RMT",data:{uid:w.uid,type:this.type,source:this.id}}))})}hasTransition(){return!1}}class pt extends a.E{constructor(w,B,Q,ee){super(),this.id=w,this.dispatcher=Q,this.setEventedParent(ee),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=a.e({type:"raster"},B),a.e(this,a.M(B,["url","scheme","tileSize"]))}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new a.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let w=yield Re(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,w&&(a.e(this,w),w.bounds&&(this.tileBounds=new Ze(w.bounds,this.minzoom,this.maxzoom)),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})))}catch(w){this._tileJSONRequest=null,this.fire(new a.j(w))}})}loaded(){return this._loaded}onAdd(w){this.map=w,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}setSourceProperty(w){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),w(),this.load()}setTiles(w){return this.setSourceProperty(()=>{this._options.tiles=w}),this}setUrl(w){return this.setSourceProperty(()=>{this.url=w,this._options.url=w}),this}serialize(){return a.e({},this._options)}hasTile(w){return!this.tileBounds||this.tileBounds.contains(w.canonical)}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);w.abortController=new AbortController;try{let Q=yield p.getImage(this.map._requestManager.transformRequest(B,"Tile"),w.abortController,this.map._refreshExpiredTiles);if(delete w.abortController,w.aborted)return void(w.state="unloaded");if(Q&&Q.data){this.map._refreshExpiredTiles&&Q.cacheControl&&Q.expires&&w.setExpiryData({cacheControl:Q.cacheControl,expires:Q.expires});let ee=this.map.painter.context,le=ee.gl,qe=Q.data;w.texture=this.map.painter.getTileTexture(qe.width),w.texture?w.texture.update(qe,{useMipmap:!0}):(w.texture=new g(ee,qe,le.RGBA,{useMipmap:!0}),w.texture.bind(le.LINEAR,le.CLAMP_TO_EDGE,le.LINEAR_MIPMAP_NEAREST)),w.state="loaded"}}catch(Q){if(delete w.abortController,w.aborted)w.state="unloaded";else if(Q)throw w.state="errored",Q}})}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController)})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.texture&&this.map.painter.saveTileTexture(w.texture)})}hasTransition(){return!1}}class Zt extends pt{constructor(w,B,Q,ee){super(w,B,Q,ee),this.type="raster-dem",this.maxzoom=22,this._options=a.e({type:"raster-dem"},B),this.encoding=B.encoding||"mapbox",this.redFactor=B.redFactor,this.greenFactor=B.greenFactor,this.blueFactor=B.blueFactor,this.baseShift=B.baseShift}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),Q=this.map._requestManager.transformRequest(B,"Tile");w.neighboringTiles=this._getNeighboringTiles(w.tileID),w.abortController=new AbortController;try{let ee=yield p.getImage(Q,w.abortController,this.map._refreshExpiredTiles);if(delete w.abortController,w.aborted)return void(w.state="unloaded");if(ee&&ee.data){let le=ee.data;this.map._refreshExpiredTiles&&ee.cacheControl&&ee.expires&&w.setExpiryData({cacheControl:ee.cacheControl,expires:ee.expires});let qe=a.b(le)&&a.U()?le:yield this.readImageNow(le),Xe={type:this.type,uid:w.uid,source:this.id,rawImageData:qe,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!w.actor||w.state==="expired"){w.actor=this.dispatcher.getActor();let ot=yield w.actor.sendAsync({type:"LDT",data:Xe});w.dem=ot,w.needsHillshadePrepare=!0,w.needsTerrainPrepare=!0,w.state="loaded"}}}catch(ee){if(delete w.abortController,w.aborted)w.state="unloaded";else if(ee)throw w.state="errored",ee}})}readImageNow(w){return a._(this,void 0,void 0,function*(){if(typeof VideoFrame!="undefined"&&a.V()){let B=w.width+2,Q=w.height+2;try{return new a.R({width:B,height:Q},yield a.W(w,-1,-1,B,Q))}catch(ee){}}return u.getImageData(w,1)})}_getNeighboringTiles(w){let B=w.canonical,Q=Math.pow(2,B.z),ee=(B.x-1+Q)%Q,le=B.x===0?w.wrap-1:w.wrap,qe=(B.x+1+Q)%Q,Xe=B.x+1===Q?w.wrap+1:w.wrap,ot={};return ot[new a.S(w.overscaledZ,le,B.z,ee,B.y).key]={backfilled:!1},ot[new a.S(w.overscaledZ,Xe,B.z,qe,B.y).key]={backfilled:!1},B.y>0&&(ot[new a.S(w.overscaledZ,le,B.z,ee,B.y-1).key]={backfilled:!1},ot[new a.S(w.overscaledZ,w.wrap,B.z,B.x,B.y-1).key]={backfilled:!1},ot[new a.S(w.overscaledZ,Xe,B.z,qe,B.y-1).key]={backfilled:!1}),B.y+10&&a.e(le,{resourceTiming:ee}),this.fire(new a.k("data",Object.assign(Object.assign({},le),{sourceDataType:"metadata"}))),this.fire(new a.k("data",Object.assign(Object.assign({},le),{sourceDataType:"content"})))}catch(Q){if(this._pendingLoads--,this._removed)return void this.fire(new a.k("dataabort",{dataType:"source"}));this.fire(new a.j(Q))}})}loaded(){return this._pendingLoads===0}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.actor?"RT":"LT";w.actor=this.actor;let Q={type:this.type,uid:w.uid,tileID:w.tileID,zoom:w.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};w.abortController=new AbortController;let ee=yield this.actor.sendAsync({type:B,data:Q},w.abortController);delete w.abortController,w.unloadVectorData(),w.aborted||w.loadVectorData(ee,this.map.painter,B==="RT")})}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController),w.aborted=!0})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.unloadVectorData(),yield this.actor.sendAsync({type:"RMT",data:{uid:w.uid,type:this.type,source:this.id}})})}onRemove(){this._removed=!0,this.actor.sendAsync({type:"RS",data:{type:this.type,source:this.id}})}serialize(){return a.e({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}}var lt=a.Y([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);class Gt extends a.E{constructor(w,B,Q,ee){super(),this.id=w,this.dispatcher=Q,this.coordinates=B.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(ee),this.options=B}load(w){return a._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new a.k("dataloading",{dataType:"source"})),this.url=this.options.url,this._request=new AbortController;try{let B=yield p.getImage(this.map._requestManager.transformRequest(this.url,"Image"),this._request);this._request=null,this._loaded=!0,B&&B.data&&(this.image=B.data,w&&(this.coordinates=w),this._finishLoading())}catch(B){this._request=null,this._loaded=!0,this.fire(new a.j(B))}})}loaded(){return this._loaded}updateImage(w){return w.url?(this._request&&(this._request.abort(),this._request=null),this.options.url=w.url,this.load(w.coordinates).finally(()=>{this.texture=null}),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(w){this.map=w,this.load()}onRemove(){this._request&&(this._request.abort(),this._request=null)}setCoordinates(w){this.coordinates=w;let B=w.map(a.Z.fromLngLat);this.tileID=function(ee){let le=1/0,qe=1/0,Xe=-1/0,ot=-1/0;for(let xr of ee)le=Math.min(le,xr.x),qe=Math.min(qe,xr.y),Xe=Math.max(Xe,xr.x),ot=Math.max(ot,xr.y);let Tt=Math.max(Xe-le,ot-qe),Yt=Math.max(0,Math.floor(-Math.log(Tt)/Math.LN2)),Kt=Math.pow(2,Yt);return new a.a1(Yt,Math.floor((le+Xe)/2*Kt),Math.floor((qe+ot)/2*Kt))}(B),this.minzoom=this.maxzoom=this.tileID.z;let Q=B.map(ee=>this.tileID.getTilePoint(ee)._round());return this._boundsArray=new a.$,this._boundsArray.emplaceBack(Q[0].x,Q[0].y,0,0),this._boundsArray.emplaceBack(Q[1].x,Q[1].y,a.X,0),this._boundsArray.emplaceBack(Q[3].x,Q[3].y,0,a.X),this._boundsArray.emplaceBack(Q[2].x,Q[2].y,a.X,a.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(Object.keys(this.tiles).length===0||!this.image)return;let w=this.map.painter.context,B=w.gl;this.boundsBuffer||(this.boundsBuffer=w.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new g(w,this.image,B.RGBA),this.texture.bind(B.LINEAR,B.CLAMP_TO_EDGE));let Q=!1;for(let ee in this.tiles){let le=this.tiles[ee];le.state!=="loaded"&&(le.state="loaded",le.texture=this.texture,Q=!0)}Q&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}loadTile(w){return a._(this,void 0,void 0,function*(){this.tileID&&this.tileID.equals(w.tileID.canonical)?(this.tiles[String(w.tileID.wrap)]=w,w.buckets={}):w.state="errored"})}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class Nt extends Gt{constructor(w,B,Q,ee){super(w,B,Q,ee),this.roundZoom=!0,this.type="video",this.options=B}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1;let w=this.options;this.urls=[];for(let B of w.urls)this.urls.push(this.map._requestManager.transformRequest(B,"Source").url);try{let B=yield a.a3(this.urls);if(this._loaded=!0,!B)return;this.video=B,this.video.loop=!0,this.video.addEventListener("playing",()=>{this.map.triggerRepaint()}),this.map&&this.video.play(),this._finishLoading()}catch(B){this.fire(new a.j(B))}})}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(w){if(this.video){let B=this.video.seekable;wB.end(0)?this.fire(new a.j(new a.a2(`sources.${this.id}`,null,`Playback for this video can be set only between the ${B.start(0)} and ${B.end(0)}-second mark.`))):this.video.currentTime=w}}getVideo(){return this.video}onAdd(w){this.map||(this.map=w,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(Object.keys(this.tiles).length===0||this.video.readyState<2)return;let w=this.map.painter.context,B=w.gl;this.boundsBuffer||(this.boundsBuffer=w.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(B.LINEAR,B.CLAMP_TO_EDGE),B.texSubImage2D(B.TEXTURE_2D,0,0,0,B.RGBA,B.UNSIGNED_BYTE,this.video)):(this.texture=new g(w,this.video,B.RGBA),this.texture.bind(B.LINEAR,B.CLAMP_TO_EDGE));let Q=!1;for(let ee in this.tiles){let le=this.tiles[ee];le.state!=="loaded"&&(le.state="loaded",le.texture=this.texture,Q=!0)}Q&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class Jt extends Gt{constructor(w,B,Q,ee){super(w,B,Q,ee),B.coordinates?Array.isArray(B.coordinates)&&B.coordinates.length===4&&!B.coordinates.some(le=>!Array.isArray(le)||le.length!==2||le.some(qe=>typeof qe!="number"))||this.fire(new a.j(new a.a2(`sources.${w}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new a.j(new a.a2(`sources.${w}`,null,'missing required property "coordinates"'))),B.animate&&typeof B.animate!="boolean"&&this.fire(new a.j(new a.a2(`sources.${w}`,null,'optional "animate" property must be a boolean value'))),B.canvas?typeof B.canvas=="string"||B.canvas instanceof HTMLCanvasElement||this.fire(new a.j(new a.a2(`sources.${w}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new a.j(new a.a2(`sources.${w}`,null,'missing required property "canvas"'))),this.options=B,this.animate=B.animate===void 0||B.animate}load(){return a._(this,void 0,void 0,function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new a.j(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())})}getCanvas(){return this.canvas}onAdd(w){this.map=w,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let w=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,w=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,w=!0),this._hasInvalidDimensions()||Object.keys(this.tiles).length===0)return;let B=this.map.painter.context,Q=B.gl;this.boundsBuffer||(this.boundsBuffer=B.createVertexBuffer(this._boundsArray,lt.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture?(w||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new g(B,this.canvas,Q.RGBA,{premultiply:!0});let ee=!1;for(let le in this.tiles){let qe=this.tiles[le];qe.state!=="loaded"&&(qe.state="loaded",qe.texture=this.texture,ee=!0)}ee&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(let w of[this.canvas.width,this.canvas.height])if(isNaN(w)||w<=0)return!0;return!1}}let sr={},wr=ue=>{switch(ue){case"geojson":return st;case"image":return Gt;case"raster":return pt;case"raster-dem":return Zt;case"vector":return ut;case"video":return Nt;case"canvas":return Jt}return sr[ue]},cr="RTLPluginLoaded";class $e extends a.E{constructor(){super(...arguments),this.status="unavailable",this.url=null,this.dispatcher=Ae()}_syncState(w){return this.status=w,this.dispatcher.broadcast("SRPS",{pluginStatus:w,pluginURL:this.url}).catch(B=>{throw this.status="error",B})}getRTLTextPluginStatus(){return this.status}clearRTLTextPlugin(){this.status="unavailable",this.url=null}setRTLTextPlugin(w){return a._(this,arguments,void 0,function*(B,Q=!1){if(this.url)throw new Error("setRTLTextPlugin cannot be called multiple times.");if(this.url=u.resolveURL(B),!this.url)throw new Error(`requested url ${B} is invalid`);if(this.status==="unavailable"){if(!Q)return this._requestImport();this.status="deferred",this._syncState(this.status)}else if(this.status==="requested")return this._requestImport()})}_requestImport(){return a._(this,void 0,void 0,function*(){yield this._syncState("loading"),this.status="loaded",this.fire(new a.k(cr))})}lazyLoad(){this.status==="unavailable"?this.status="requested":this.status==="deferred"&&this._requestImport()}}let St=null;function Qt(){return St||(St=new $e),St}class Vt{constructor(w,B){this.timeAdded=0,this.fadeEndTime=0,this.tileID=w,this.uid=a.a4(),this.uses=0,this.tileSize=B,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.rtt=[],this.rttCoords={},this.expiredRequestCount=0,this.state="loading"}registerFadeDuration(w){let B=w+this.timeAdded;Ble.getLayer(Tt)).filter(Boolean);if(ot.length!==0){Xe.layers=ot,Xe.stateDependentLayerIds&&(Xe.stateDependentLayers=Xe.stateDependentLayerIds.map(Tt=>ot.filter(Yt=>Yt.id===Tt)[0]));for(let Tt of ot)qe[Tt.id]=Xe}}return qe}(w.buckets,B.style),this.hasSymbolBuckets=!1;for(let ee in this.buckets){let le=this.buckets[ee];if(le instanceof a.a6){if(this.hasSymbolBuckets=!0,!Q)break;le.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(let ee in this.buckets){let le=this.buckets[ee];if(le instanceof a.a6&&le.hasRTLText){this.hasRTLText=!0,Qt().lazyLoad();break}}this.queryPadding=0;for(let ee in this.buckets){let le=this.buckets[ee];this.queryPadding=Math.max(this.queryPadding,B.style.getLayer(ee).queryRadius(le))}w.imageAtlas&&(this.imageAtlas=w.imageAtlas),w.glyphAtlasImage&&(this.glyphAtlasImage=w.glyphAtlasImage)}else this.collisionBoxArray=new a.a5}unloadVectorData(){for(let w in this.buckets)this.buckets[w].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"}getBucket(w){return this.buckets[w.id]}upload(w){for(let Q in this.buckets){let ee=this.buckets[Q];ee.uploadPending()&&ee.upload(w)}let B=w.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new g(w,this.imageAtlas.image,B.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new g(w,this.glyphAtlasImage,B.ALPHA),this.glyphAtlasImage=null)}prepare(w){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(w,this.imageAtlasTexture)}queryRenderedFeatures(w,B,Q,ee,le,qe,Xe,ot,Tt,Yt){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:ee,cameraQueryGeometry:le,scale:qe,tileSize:this.tileSize,pixelPosMatrix:Yt,transform:ot,params:Xe,queryPadding:this.queryPadding*Tt},w,B,Q):{}}querySourceFeatures(w,B){let Q=this.latestFeatureIndex;if(!Q||!Q.rawTileData)return;let ee=Q.loadVTLayers(),le=B&&B.sourceLayer?B.sourceLayer:"",qe=ee._geojsonTileLayer||ee[le];if(!qe)return;let Xe=a.a7(B&&B.filter),{z:ot,x:Tt,y:Yt}=this.tileID.canonical,Kt={z:ot,x:Tt,y:Yt};for(let xr=0;xrQ)ee=!1;else if(B)if(this.expirationTime{this.remove(w,le)},Q)),this.data[ee].push(le),this.order.push(ee),this.order.length>this.max){let qe=this._getAndRemoveByKey(this.order[0]);qe&&this.onRemove(qe)}return this}has(w){return w.wrapped().key in this.data}getAndRemove(w){return this.has(w)?this._getAndRemoveByKey(w.wrapped().key):null}_getAndRemoveByKey(w){let B=this.data[w].shift();return B.timeout&&clearTimeout(B.timeout),this.data[w].length===0&&delete this.data[w],this.order.splice(this.order.indexOf(w),1),B.value}getByKey(w){let B=this.data[w];return B?B[0].value:null}get(w){return this.has(w)?this.data[w.wrapped().key][0].value:null}remove(w,B){if(!this.has(w))return this;let Q=w.wrapped().key,ee=B===void 0?0:this.data[Q].indexOf(B),le=this.data[Q][ee];return this.data[Q].splice(ee,1),le.timeout&&clearTimeout(le.timeout),this.data[Q].length===0&&delete this.data[Q],this.onRemove(le.value),this.order.splice(this.order.indexOf(Q),1),this}setMaxSize(w){for(this.max=w;this.order.length>this.max;){let B=this._getAndRemoveByKey(this.order[0]);B&&this.onRemove(B)}return this}filter(w){let B=[];for(let Q in this.data)for(let ee of this.data[Q])w(ee.value)||B.push(ee);for(let Q of B)this.remove(Q.value.tileID,Q)}}class It{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(w,B,Q){let ee=String(B);if(this.stateChanges[w]=this.stateChanges[w]||{},this.stateChanges[w][ee]=this.stateChanges[w][ee]||{},a.e(this.stateChanges[w][ee],Q),this.deletedStates[w]===null){this.deletedStates[w]={};for(let le in this.state[w])le!==ee&&(this.deletedStates[w][le]=null)}else if(this.deletedStates[w]&&this.deletedStates[w][ee]===null){this.deletedStates[w][ee]={};for(let le in this.state[w][ee])Q[le]||(this.deletedStates[w][ee][le]=null)}else for(let le in Q)this.deletedStates[w]&&this.deletedStates[w][ee]&&this.deletedStates[w][ee][le]===null&&delete this.deletedStates[w][ee][le]}removeFeatureState(w,B,Q){if(this.deletedStates[w]===null)return;let ee=String(B);if(this.deletedStates[w]=this.deletedStates[w]||{},Q&&B!==void 0)this.deletedStates[w][ee]!==null&&(this.deletedStates[w][ee]=this.deletedStates[w][ee]||{},this.deletedStates[w][ee][Q]=null);else if(B!==void 0)if(this.stateChanges[w]&&this.stateChanges[w][ee])for(Q in this.deletedStates[w][ee]={},this.stateChanges[w][ee])this.deletedStates[w][ee][Q]=null;else this.deletedStates[w][ee]=null;else this.deletedStates[w]=null}getState(w,B){let Q=String(B),ee=a.e({},(this.state[w]||{})[Q],(this.stateChanges[w]||{})[Q]);if(this.deletedStates[w]===null)return{};if(this.deletedStates[w]){let le=this.deletedStates[w][B];if(le===null)return{};for(let qe in le)delete ee[qe]}return ee}initializeTileState(w,B){w.setFeatureState(this.state,B)}coalesceChanges(w,B){let Q={};for(let ee in this.stateChanges){this.state[ee]=this.state[ee]||{};let le={};for(let qe in this.stateChanges[ee])this.state[ee][qe]||(this.state[ee][qe]={}),a.e(this.state[ee][qe],this.stateChanges[ee][qe]),le[qe]=this.state[ee][qe];Q[ee]=le}for(let ee in this.deletedStates){this.state[ee]=this.state[ee]||{};let le={};if(this.deletedStates[ee]===null)for(let qe in this.state[ee])le[qe]={},this.state[ee][qe]={};else for(let qe in this.deletedStates[ee]){if(this.deletedStates[ee][qe]===null)this.state[ee][qe]={};else for(let Xe of Object.keys(this.deletedStates[ee][qe]))delete this.state[ee][qe][Xe];le[qe]=this.state[ee][qe]}Q[ee]=Q[ee]||{},a.e(Q[ee],le)}if(this.stateChanges={},this.deletedStates={},Object.keys(Q).length!==0)for(let ee in w)w[ee].setFeatureState(Q,B)}}class mt extends a.E{constructor(w,B,Q){super(),this.id=w,this.dispatcher=Q,this.on("data",ee=>this._dataHandler(ee)),this.on("dataloading",()=>{this._sourceErrored=!1}),this.on("error",()=>{this._sourceErrored=this._source.loaded()}),this._source=((ee,le,qe,Xe)=>{let ot=new(wr(le.type))(ee,le,qe,Xe);if(ot.id!==ee)throw new Error(`Expected Source id to be ${ee} instead of ${ot.id}`);return ot})(w,B,Q,this),this._tiles={},this._cache=new _t(0,ee=>this._unloadTile(ee)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new It,this._didEmitContent=!1,this._updated=!1}onAdd(w){this.map=w,this._maxTileCacheSize=w?w._maxTileCacheSize:null,this._maxTileCacheZoomLevels=w?w._maxTileCacheZoomLevels:null,this._source&&this._source.onAdd&&this._source.onAdd(w)}onRemove(w){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(w)}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;if(!(this.used===void 0&&this.usedForTerrain===void 0||this.used||this.usedForTerrain))return!0;if(!this._updated)return!1;for(let w in this._tiles){let B=this._tiles[w];if(B.state!=="loaded"&&B.state!=="errored")return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;let w=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,w&&this.reload(),this.transform&&this.update(this.transform,this.terrain)}_loadTile(w,B,Q){return a._(this,void 0,void 0,function*(){try{yield this._source.loadTile(w),this._tileLoaded(w,B,Q)}catch(ee){w.state="errored",ee.status!==404?this._source.fire(new a.j(ee,{tile:w})):this.update(this.transform,this.terrain)}})}_unloadTile(w){this._source.unloadTile&&this._source.unloadTile(w)}_abortTile(w){this._source.abortTile&&this._source.abortTile(w),this._source.fire(new a.k("dataabort",{tile:w,coord:w.tileID,dataType:"source"}))}serialize(){return this._source.serialize()}prepare(w){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(let B in this._tiles){let Q=this._tiles[B];Q.upload(w),Q.prepare(this.map.style.imageManager)}}getIds(){return Object.values(this._tiles).map(w=>w.tileID).sort(er).map(w=>w.key)}getRenderableIds(w){let B=[];for(let Q in this._tiles)this._isIdRenderable(Q,w)&&B.push(this._tiles[Q]);return w?B.sort((Q,ee)=>{let le=Q.tileID,qe=ee.tileID,Xe=new a.P(le.canonical.x,le.canonical.y)._rotate(this.transform.angle),ot=new a.P(qe.canonical.x,qe.canonical.y)._rotate(this.transform.angle);return le.overscaledZ-qe.overscaledZ||ot.y-Xe.y||ot.x-Xe.x}).map(Q=>Q.tileID.key):B.map(Q=>Q.tileID).sort(er).map(Q=>Q.key)}hasRenderableParent(w){let B=this.findLoadedParent(w,0);return!!B&&this._isIdRenderable(B.tileID.key)}_isIdRenderable(w,B){return this._tiles[w]&&this._tiles[w].hasData()&&!this._coveredTiles[w]&&(B||!this._tiles[w].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(let w in this._tiles)this._tiles[w].state!=="errored"&&this._reloadTile(w,"reloading")}}_reloadTile(w,B){return a._(this,void 0,void 0,function*(){let Q=this._tiles[w];Q&&(Q.state!=="loading"&&(Q.state=B),yield this._loadTile(Q,w,B))})}_tileLoaded(w,B,Q){w.timeAdded=u.now(),Q==="expired"&&(w.refreshedUponExpiration=!0),this._setTileReloadTimer(B,w),this.getSource().type==="raster-dem"&&w.dem&&this._backfillDEM(w),this._state.initializeTileState(w,this.map?this.map.painter:null),w.aborted||this._source.fire(new a.k("data",{dataType:"source",tile:w,coord:w.tileID}))}_backfillDEM(w){let B=this.getRenderableIds();for(let ee=0;ee1||(Math.abs(qe)>1&&(Math.abs(qe+ot)===1?qe+=ot:Math.abs(qe-ot)===1&&(qe-=ot)),le.dem&&ee.dem&&(ee.dem.backfillBorder(le.dem,qe,Xe),ee.neighboringTiles&&ee.neighboringTiles[Tt]&&(ee.neighboringTiles[Tt].backfilled=!0)))}}getTile(w){return this.getTileByID(w.key)}getTileByID(w){return this._tiles[w]}_retainLoadedChildren(w,B,Q,ee){for(let le in this._tiles){let qe=this._tiles[le];if(ee[le]||!qe.hasData()||qe.tileID.overscaledZ<=B||qe.tileID.overscaledZ>Q)continue;let Xe=qe.tileID;for(;qe&&qe.tileID.overscaledZ>B+1;){let Tt=qe.tileID.scaledTo(qe.tileID.overscaledZ-1);qe=this._tiles[Tt.key],qe&&qe.hasData()&&(Xe=Tt)}let ot=Xe;for(;ot.overscaledZ>B;)if(ot=ot.scaledTo(ot.overscaledZ-1),w[ot.key]){ee[Xe.key]=Xe;break}}}findLoadedParent(w,B){if(w.key in this._loadedParentTiles){let Q=this._loadedParentTiles[w.key];return Q&&Q.tileID.overscaledZ>=B?Q:null}for(let Q=w.overscaledZ-1;Q>=B;Q--){let ee=w.scaledTo(Q),le=this._getLoadedTile(ee);if(le)return le}}findLoadedSibling(w){return this._getLoadedTile(w)}_getLoadedTile(w){let B=this._tiles[w.key];return B&&B.hasData()?B:this._cache.getByKey(w.wrapped().key)}updateCacheSize(w){let B=Math.ceil(w.width/this._source.tileSize)+1,Q=Math.ceil(w.height/this._source.tileSize)+1,ee=Math.floor(B*Q*(this._maxTileCacheZoomLevels===null?a.a.MAX_TILE_CACHE_ZOOM_LEVELS:this._maxTileCacheZoomLevels)),le=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,ee):ee;this._cache.setMaxSize(le)}handleWrapJump(w){let B=Math.round((w-(this._prevLng===void 0?w:this._prevLng))/360);if(this._prevLng=w,B){let Q={};for(let ee in this._tiles){let le=this._tiles[ee];le.tileID=le.tileID.unwrapTo(le.tileID.wrap+B),Q[le.tileID.key]=le}this._tiles=Q;for(let ee in this._timers)clearTimeout(this._timers[ee]),delete this._timers[ee];for(let ee in this._tiles)this._setTileReloadTimer(ee,this._tiles[ee])}}_updateCoveredAndRetainedTiles(w,B,Q,ee,le,qe){let Xe={},ot={},Tt=Object.keys(w),Yt=u.now();for(let Kt of Tt){let xr=w[Kt],Ir=this._tiles[Kt];if(!Ir||Ir.fadeEndTime!==0&&Ir.fadeEndTime<=Yt)continue;let ve=this.findLoadedParent(xr,B),be=this.findLoadedSibling(xr),De=ve||be||null;De&&(this._addTile(De.tileID),Xe[De.tileID.key]=De.tileID),ot[Kt]=xr}this._retainLoadedChildren(ot,ee,Q,w);for(let Kt in Xe)w[Kt]||(this._coveredTiles[Kt]=!0,w[Kt]=Xe[Kt]);if(qe){let Kt={},xr={};for(let Ir of le)this._tiles[Ir.key].hasData()?Kt[Ir.key]=Ir:xr[Ir.key]=Ir;for(let Ir in xr){let ve=xr[Ir].children(this._source.maxzoom);this._tiles[ve[0].key]&&this._tiles[ve[1].key]&&this._tiles[ve[2].key]&&this._tiles[ve[3].key]&&(Kt[ve[0].key]=w[ve[0].key]=ve[0],Kt[ve[1].key]=w[ve[1].key]=ve[1],Kt[ve[2].key]=w[ve[2].key]=ve[2],Kt[ve[3].key]=w[ve[3].key]=ve[3],delete xr[Ir])}for(let Ir in xr){let ve=xr[Ir],be=this.findLoadedParent(ve,this._source.minzoom),De=this.findLoadedSibling(ve),Be=be||De||null;if(Be){Kt[Be.tileID.key]=w[Be.tileID.key]=Be.tileID;for(let et in Kt)Kt[et].isChildOf(Be.tileID)&&delete Kt[et]}}for(let Ir in this._tiles)Kt[Ir]||(this._coveredTiles[Ir]=!0)}}update(w,B){if(!this._sourceLoaded||this._paused)return;let Q;this.transform=w,this.terrain=B,this.updateCacheSize(w),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?Q=w.getVisibleUnwrappedCoordinates(this._source.tileID).map(Yt=>new a.S(Yt.canonical.z,Yt.wrap,Yt.canonical.z,Yt.canonical.x,Yt.canonical.y)):(Q=w.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:B}),this._source.hasTile&&(Q=Q.filter(Yt=>this._source.hasTile(Yt)))):Q=[];let ee=w.coveringZoomLevel(this._source),le=Math.max(ee-mt.maxOverzooming,this._source.minzoom),qe=Math.max(ee+mt.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){let Yt={};for(let Kt of Q)if(Kt.canonical.z>this._source.minzoom){let xr=Kt.scaledTo(Kt.canonical.z-1);Yt[xr.key]=xr;let Ir=Kt.scaledTo(Math.max(this._source.minzoom,Math.min(Kt.canonical.z,5)));Yt[Ir.key]=Ir}Q=Q.concat(Object.values(Yt))}let Xe=Q.length===0&&!this._updated&&this._didEmitContent;this._updated=!0,Xe&&this.fire(new a.k("data",{sourceDataType:"idle",dataType:"source",sourceId:this.id}));let ot=this._updateRetainedTiles(Q,ee);lr(this._source.type)&&this._updateCoveredAndRetainedTiles(ot,le,qe,ee,Q,B);for(let Yt in ot)this._tiles[Yt].clearFadeHold();let Tt=a.ab(this._tiles,ot);for(let Yt of Tt){let Kt=this._tiles[Yt];Kt.hasSymbolBuckets&&!Kt.holdingForFade()?Kt.setHoldDuration(this.map._fadeDuration):Kt.hasSymbolBuckets&&!Kt.symbolFadeFinished()||this._removeTile(Yt)}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache()}releaseSymbolFadeTiles(){for(let w in this._tiles)this._tiles[w].holdingForFade()&&this._removeTile(w)}_updateRetainedTiles(w,B){var Q;let ee={},le={},qe=Math.max(B-mt.maxOverzooming,this._source.minzoom),Xe=Math.max(B+mt.maxUnderzooming,this._source.minzoom),ot={};for(let Tt of w){let Yt=this._addTile(Tt);ee[Tt.key]=Tt,Yt.hasData()||Bthis._source.maxzoom){let xr=Tt.children(this._source.maxzoom)[0],Ir=this.getTile(xr);if(Ir&&Ir.hasData()){ee[xr.key]=xr;continue}}else{let xr=Tt.children(this._source.maxzoom);if(ee[xr[0].key]&&ee[xr[1].key]&&ee[xr[2].key]&&ee[xr[3].key])continue}let Kt=Yt.wasRequested();for(let xr=Tt.overscaledZ-1;xr>=qe;--xr){let Ir=Tt.scaledTo(xr);if(le[Ir.key])break;if(le[Ir.key]=!0,Yt=this.getTile(Ir),!Yt&&Kt&&(Yt=this._addTile(Ir)),Yt){let ve=Yt.hasData();if((ve||!(!((Q=this.map)===null||Q===void 0)&&Q.cancelPendingTileRequestsWhileZooming)||Kt)&&(ee[Ir.key]=Ir),Kt=Yt.wasRequested(),ve)break}}}return ee}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(let w in this._tiles){let B=[],Q,ee=this._tiles[w].tileID;for(;ee.overscaledZ>0;){if(ee.key in this._loadedParentTiles){Q=this._loadedParentTiles[ee.key];break}B.push(ee.key);let le=ee.scaledTo(ee.overscaledZ-1);if(Q=this._getLoadedTile(le),Q)break;ee=le}for(let le of B)this._loadedParentTiles[le]=Q}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(let w in this._tiles){let B=this._tiles[w].tileID,Q=this._getLoadedTile(B);this._loadedSiblingTiles[B.key]=Q}}_addTile(w){let B=this._tiles[w.key];if(B)return B;B=this._cache.getAndRemove(w),B&&(this._setTileReloadTimer(w.key,B),B.tileID=w,this._state.initializeTileState(B,this.map?this.map.painter:null),this._cacheTimers[w.key]&&(clearTimeout(this._cacheTimers[w.key]),delete this._cacheTimers[w.key],this._setTileReloadTimer(w.key,B)));let Q=B;return B||(B=new Vt(w,this._source.tileSize*w.overscaleFactor()),this._loadTile(B,w.key,B.state)),B.uses++,this._tiles[w.key]=B,Q||this._source.fire(new a.k("dataloading",{tile:B,coord:B.tileID,dataType:"source"})),B}_setTileReloadTimer(w,B){w in this._timers&&(clearTimeout(this._timers[w]),delete this._timers[w]);let Q=B.getExpiryTimeout();Q&&(this._timers[w]=setTimeout(()=>{this._reloadTile(w,"expired"),delete this._timers[w]},Q))}_removeTile(w){let B=this._tiles[w];B&&(B.uses--,delete this._tiles[w],this._timers[w]&&(clearTimeout(this._timers[w]),delete this._timers[w]),B.uses>0||(B.hasData()&&B.state!=="reloading"?this._cache.add(B.tileID,B,B.getExpiryTimeout()):(B.aborted=!0,this._abortTile(B),this._unloadTile(B))))}_dataHandler(w){let B=w.sourceDataType;w.dataType==="source"&&B==="metadata"&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&w.dataType==="source"&&B==="content"&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0)}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(let w in this._tiles)this._removeTile(w);this._cache.reset()}tilesIn(w,B,Q){let ee=[],le=this.transform;if(!le)return ee;let qe=Q?le.getCameraQueryGeometry(w):w,Xe=w.map(ve=>le.pointCoordinate(ve,this.terrain)),ot=qe.map(ve=>le.pointCoordinate(ve,this.terrain)),Tt=this.getIds(),Yt=1/0,Kt=1/0,xr=-1/0,Ir=-1/0;for(let ve of ot)Yt=Math.min(Yt,ve.x),Kt=Math.min(Kt,ve.y),xr=Math.max(xr,ve.x),Ir=Math.max(Ir,ve.y);for(let ve=0;ve=0&&We[1].y+et>=0){let it=Xe.map(Ht=>De.getTilePoint(Ht)),Ft=ot.map(Ht=>De.getTilePoint(Ht));ee.push({tile:be,tileID:De,queryGeometry:it,cameraQueryGeometry:Ft,scale:Be})}}return ee}getVisibleCoordinates(w){let B=this.getRenderableIds(w).map(Q=>this._tiles[Q].tileID);for(let Q of B)Q.posMatrix=this.transform.calculatePosMatrix(Q.toUnwrapped());return B}hasTransition(){if(this._source.hasTransition())return!0;if(lr(this._source.type)){let w=u.now();for(let B in this._tiles)if(this._tiles[B].fadeEndTime>=w)return!0}return!1}setFeatureState(w,B,Q){this._state.updateState(w=w||"_geojsonTileLayer",B,Q)}removeFeatureState(w,B,Q){this._state.removeFeatureState(w=w||"_geojsonTileLayer",B,Q)}getFeatureState(w,B){return this._state.getState(w=w||"_geojsonTileLayer",B)}setDependencies(w,B,Q){let ee=this._tiles[w];ee&&ee.setDependencies(B,Q)}reloadTilesForDependencies(w,B){for(let Q in this._tiles)this._tiles[Q].hasDependency(w,B)&&this._reloadTile(Q,"reloading");this._cache.filter(Q=>!Q.hasDependency(w,B))}}function er(ue,w){let B=Math.abs(2*ue.wrap)-+(ue.wrap<0),Q=Math.abs(2*w.wrap)-+(w.wrap<0);return ue.overscaledZ-w.overscaledZ||Q-B||w.canonical.y-ue.canonical.y||w.canonical.x-ue.canonical.x}function lr(ue){return ue==="raster"||ue==="image"||ue==="video"}mt.maxOverzooming=10,mt.maxUnderzooming=3;class Tr{constructor(w,B){this.reset(w,B)}reset(w,B){this.points=w||[],this._distances=[0];for(let Q=1;Q0?(ee-qe)/Xe:0;return this.points[le].mult(1-ot).add(this.points[B].mult(ot))}}function Lr(ue,w){let B=!0;return ue==="always"||ue!=="never"&&w!=="never"||(B=!1),B}class ti{constructor(w,B,Q){let ee=this.boxCells=[],le=this.circleCells=[];this.xCellCount=Math.ceil(w/Q),this.yCellCount=Math.ceil(B/Q);for(let qe=0;qethis.width||ee<0||B>this.height)return[];let ot=[];if(w<=0&&B<=0&&this.width<=Q&&this.height<=ee){if(le)return[{key:null,x1:w,y1:B,x2:Q,y2:ee}];for(let Tt=0;Tt0}hitTestCircle(w,B,Q,ee,le){let qe=w-Q,Xe=w+Q,ot=B-Q,Tt=B+Q;if(Xe<0||qe>this.width||Tt<0||ot>this.height)return!1;let Yt=[];return this._forEachCell(qe,ot,Xe,Tt,this._queryCellCircle,Yt,{hitTest:!0,overlapMode:ee,circle:{x:w,y:B,radius:Q},seenUids:{box:{},circle:{}}},le),Yt.length>0}_queryCell(w,B,Q,ee,le,qe,Xe,ot){let{seenUids:Tt,hitTest:Yt,overlapMode:Kt}=Xe,xr=this.boxCells[le];if(xr!==null){let ve=this.bboxes;for(let be of xr)if(!Tt.box[be]){Tt.box[be]=!0;let De=4*be,Be=this.boxKeys[be];if(w<=ve[De+2]&&B<=ve[De+3]&&Q>=ve[De+0]&&ee>=ve[De+1]&&(!ot||ot(Be))&&(!Yt||!Lr(Kt,Be.overlapMode))&&(qe.push({key:Be,x1:ve[De],y1:ve[De+1],x2:ve[De+2],y2:ve[De+3]}),Yt))return!0}}let Ir=this.circleCells[le];if(Ir!==null){let ve=this.circles;for(let be of Ir)if(!Tt.circle[be]){Tt.circle[be]=!0;let De=3*be,Be=this.circleKeys[be];if(this._circleAndRectCollide(ve[De],ve[De+1],ve[De+2],w,B,Q,ee)&&(!ot||ot(Be))&&(!Yt||!Lr(Kt,Be.overlapMode))){let et=ve[De],We=ve[De+1],it=ve[De+2];if(qe.push({key:Be,x1:et-it,y1:We-it,x2:et+it,y2:We+it}),Yt)return!0}}}return!1}_queryCellCircle(w,B,Q,ee,le,qe,Xe,ot){let{circle:Tt,seenUids:Yt,overlapMode:Kt}=Xe,xr=this.boxCells[le];if(xr!==null){let ve=this.bboxes;for(let be of xr)if(!Yt.box[be]){Yt.box[be]=!0;let De=4*be,Be=this.boxKeys[be];if(this._circleAndRectCollide(Tt.x,Tt.y,Tt.radius,ve[De+0],ve[De+1],ve[De+2],ve[De+3])&&(!ot||ot(Be))&&!Lr(Kt,Be.overlapMode))return qe.push(!0),!0}}let Ir=this.circleCells[le];if(Ir!==null){let ve=this.circles;for(let be of Ir)if(!Yt.circle[be]){Yt.circle[be]=!0;let De=3*be,Be=this.circleKeys[be];if(this._circlesCollide(ve[De],ve[De+1],ve[De+2],Tt.x,Tt.y,Tt.radius)&&(!ot||ot(Be))&&!Lr(Kt,Be.overlapMode))return qe.push(!0),!0}}}_forEachCell(w,B,Q,ee,le,qe,Xe,ot){let Tt=this._convertToXCellCoord(w),Yt=this._convertToYCellCoord(B),Kt=this._convertToXCellCoord(Q),xr=this._convertToYCellCoord(ee);for(let Ir=Tt;Ir<=Kt;Ir++)for(let ve=Yt;ve<=xr;ve++)if(le.call(this,w,B,Q,ee,this.xCellCount*ve+Ir,qe,Xe,ot))return}_convertToXCellCoord(w){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(w*this.xScale)))}_convertToYCellCoord(w){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(w*this.yScale)))}_circlesCollide(w,B,Q,ee,le,qe){let Xe=ee-w,ot=le-B,Tt=Q+qe;return Tt*Tt>Xe*Xe+ot*ot}_circleAndRectCollide(w,B,Q,ee,le,qe,Xe){let ot=(qe-ee)/2,Tt=Math.abs(w-(ee+ot));if(Tt>ot+Q)return!1;let Yt=(Xe-le)/2,Kt=Math.abs(B-(le+Yt));if(Kt>Yt+Q)return!1;if(Tt<=ot||Kt<=Yt)return!0;let xr=Tt-ot,Ir=Kt-Yt;return xr*xr+Ir*Ir<=Q*Q}}function Br(ue,w,B,Q,ee){let le=a.H();return w?(a.K(le,le,[1/ee,1/ee,1]),B||a.ad(le,le,Q.angle)):a.L(le,Q.labelPlaneMatrix,ue),le}function Vr(ue,w,B,Q,ee){if(w){let le=a.ae(ue);return a.K(le,le,[ee,ee,1]),B||a.ad(le,le,-Q.angle),le}return Q.glCoordMatrix}function dt(ue,w,B,Q){let ee;Q?(ee=[ue,w,Q(ue,w),1],a.af(ee,ee,B)):(ee=[ue,w,0,1],$r(ee,ee,B));let le=ee[3];return{point:new a.P(ee[0]/le,ee[1]/le),signedDistanceFromCamera:le,isOccluded:!1}}function Ge(ue,w){return .5+ue/w*.5}function Je(ue,w){return ue.x>=-w[0]&&ue.x<=w[0]&&ue.y>=-w[1]&&ue.y<=w[1]}function je(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir,ve){let be=Q?ue.textSizeData:ue.iconSizeData,De=a.ag(be,B.transform.zoom),Be=[256/B.width*2+1,256/B.height*2+1],et=Q?ue.text.dynamicLayoutVertexArray:ue.icon.dynamicLayoutVertexArray;et.clear();let We=ue.lineVertexArray,it=Q?ue.text.placedSymbolArray:ue.icon.placedSymbolArray,Ft=B.transform.width/B.transform.height,Ht=!1;for(let tr=0;trMath.abs(B.x-w.x)*Q?{useVertical:!0}:(ue===a.ah.vertical?w.yB.x)?{needsFlipping:!0}:null}function Ie(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt){let Kt=B/24,xr=w.lineOffsetX*Kt,Ir=w.lineOffsetY*Kt,ve;if(w.numGlyphs>1){let be=w.glyphStartIndex+w.numGlyphs,De=w.lineStartIndex,Be=w.lineStartIndex+w.lineLength,et=tt(Kt,Xe,xr,Ir,Q,w,Yt,ue);if(!et)return{notEnoughRoom:!0};let We=dt(et.first.point.x,et.first.point.y,qe,ue.getElevation).point,it=dt(et.last.point.x,et.last.point.y,qe,ue.getElevation).point;if(ee&&!Q){let Ft=xt(w.writingMode,We,it,Tt);if(Ft)return Ft}ve=[et.first];for(let Ft=w.glyphStartIndex+1;Ft0?We.point:function(Ht,tr,dr,Sr,Or,Wr){return xe(Ht,tr,dr,1,Or,Wr)}(ue.tileAnchorPoint,et,De,0,le,ue),Ft=xt(w.writingMode,De,it,Tt);if(Ft)return Ft}let be=vr(Kt*Xe.getoffsetX(w.glyphStartIndex),xr,Ir,Q,w.segment,w.lineStartIndex,w.lineStartIndex+w.lineLength,ue,Yt);if(!be||ue.projectionCache.anyProjectionOccluded)return{notEnoughRoom:!0};ve=[be]}for(let be of ve)a.aj(ot,be.point,be.angle);return{}}function xe(ue,w,B,Q,ee,le){let qe=ue.add(ue.sub(w)._unit()),Xe=ee!==void 0?dt(qe.x,qe.y,ee,le.getElevation).point:vt(qe.x,qe.y,le).point,ot=B.sub(Xe);return B.add(ot._mult(Q/ot.mag()))}function ke(ue,w,B){let Q=w.projectionCache;if(Q.projections[ue])return Q.projections[ue];let ee=new a.P(w.lineVertexArray.getx(ue),w.lineVertexArray.gety(ue)),le=vt(ee.x,ee.y,w);if(le.signedDistanceFromCamera>0)return Q.projections[ue]=le.point,Q.anyProjectionOccluded=Q.anyProjectionOccluded||le.isOccluded,le.point;let qe=ue-B.direction;return function(Xe,ot,Tt,Yt,Kt){return xe(Xe,ot,Tt,Yt,void 0,Kt)}(B.distanceFromAnchor===0?w.tileAnchorPoint:new a.P(w.lineVertexArray.getx(qe),w.lineVertexArray.gety(qe)),ee,B.previousVertex,B.absOffsetX-B.distanceFromAnchor+1,w)}function vt(ue,w,B){let Q=ue+B.translation[0],ee=w+B.translation[1],le;return!B.pitchWithMap&&B.projection.useSpecialProjectionForSymbols?(le=B.projection.projectTileCoordinates(Q,ee,B.unwrappedTileID,B.getElevation),le.point.x=(.5*le.point.x+.5)*B.width,le.point.y=(.5*-le.point.y+.5)*B.height):(le=dt(Q,ee,B.labelPlaneMatrix,B.getElevation),le.isOccluded=!1),le}function ir(ue,w,B){return ue._unit()._perp()._mult(w*B)}function ar(ue,w,B,Q,ee,le,qe,Xe,ot){if(Xe.projectionCache.offsets[ue])return Xe.projectionCache.offsets[ue];let Tt=B.add(w);if(ue+ot.direction=ee)return Xe.projectionCache.offsets[ue]=Tt,Tt;let Yt=ke(ue+ot.direction,Xe,ot),Kt=ir(Yt.sub(B),qe,ot.direction),xr=B.add(Kt),Ir=Yt.add(Kt);return Xe.projectionCache.offsets[ue]=a.ak(le,Tt,xr,Ir)||Tt,Xe.projectionCache.offsets[ue]}function vr(ue,w,B,Q,ee,le,qe,Xe,ot){let Tt=Q?ue-w:ue+w,Yt=Tt>0?1:-1,Kt=0;Q&&(Yt*=-1,Kt=Math.PI),Yt<0&&(Kt+=Math.PI);let xr,Ir=Yt>0?le+ee:le+ee+1;Xe.projectionCache.cachedAnchorPoint?xr=Xe.projectionCache.cachedAnchorPoint:(xr=vt(Xe.tileAnchorPoint.x,Xe.tileAnchorPoint.y,Xe).point,Xe.projectionCache.cachedAnchorPoint=xr);let ve,be,De=xr,Be=xr,et=0,We=0,it=Math.abs(Tt),Ft=[],Ht;for(;et+We<=it;){if(Ir+=Yt,Ir=qe)return null;et+=We,Be=De,be=ve;let Sr={absOffsetX:it,direction:Yt,distanceFromAnchor:et,previousVertex:Be};if(De=ke(Ir,Xe,Sr),B===0)Ft.push(Be),Ht=De.sub(Be);else{let Or,Wr=De.sub(Be);Or=Wr.mag()===0?ir(ke(Ir+Yt,Xe,Sr).sub(De),B,Yt):ir(Wr,B,Yt),be||(be=Be.add(Or)),ve=ar(Ir,Or,De,le,qe,be,B,Xe,Sr),Ft.push(be),Ht=ve.sub(be)}We=Ht.mag()}let tr=Ht._mult((it-et)/We)._add(be||Be),dr=Kt+Math.atan2(De.y-Be.y,De.x-Be.x);return Ft.push(tr),{point:tr,angle:ot?dr:0,path:Ft}}let ii=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function pi(ue,w){for(let B=0;B=1;fa--)Cn.push(cn.path[fa]);for(let fa=1;fa$a.signedDistanceFromCamera<=0)?[]:fa.map($a=>$a.point)}let Ta=[];if(Cn.length>0){let fa=Cn[0].clone(),$a=Cn[0].clone();for(let Co=1;Co=Wr.x&&$a.x<=ni.x&&fa.y>=Wr.y&&$a.y<=ni.y?[Cn]:$a.xni.x||$a.yni.y?[]:a.al([Cn],Wr.x,Wr.y,ni.x,ni.y)}for(let fa of Ta){Pi.reset(fa,.25*Or);let $a=0;$a=Pi.length<=.5*Or?1:Math.ceil(Pi.paddedLength/Kn)+1;for(let Co=0;Co<$a;Co++){let Qa=Co/Math.max($a-1,1),mo=Pi.lerp(Qa),Bo=mo.x+di,Ps=mo.y+di;Be.push(Bo,Ps,Or,0);let Ts=Bo-Or,wo=Ps-Or,To=Bo+Or,hl=Ps+Or;if(Sr=Sr&&this.isOffscreen(Ts,wo,To,hl),dr=dr||this.isInsideGrid(Ts,wo,To,hl),w!=="always"&&this.grid.hitTestCircle(Bo,Ps,Or,w,xr)&&(tr=!0,!Yt))return{circles:[],offscreen:!1,collisionDetected:tr}}}}return{circles:!Yt&&tr||!dr||Wedt(ee.x,ee.y,Q,B.getElevation))}queryRenderedSymbols(w){if(w.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};let B=[],Q=1/0,ee=1/0,le=-1/0,qe=-1/0;for(let Yt of w){let Kt=new a.P(Yt.x+di,Yt.y+di);Q=Math.min(Q,Kt.x),ee=Math.min(ee,Kt.y),le=Math.max(le,Kt.x),qe=Math.max(qe,Kt.y),B.push(Kt)}let Xe=this.grid.query(Q,ee,le,qe).concat(this.ignoredGrid.query(Q,ee,le,qe)),ot={},Tt={};for(let Yt of Xe){let Kt=Yt.key;if(ot[Kt.bucketInstanceId]===void 0&&(ot[Kt.bucketInstanceId]={}),ot[Kt.bucketInstanceId][Kt.featureIndex])continue;let xr=[new a.P(Yt.x1,Yt.y1),new a.P(Yt.x2,Yt.y1),new a.P(Yt.x2,Yt.y2),new a.P(Yt.x1,Yt.y2)];a.am(B,xr)&&(ot[Kt.bucketInstanceId][Kt.featureIndex]=!0,Tt[Kt.bucketInstanceId]===void 0&&(Tt[Kt.bucketInstanceId]=[]),Tt[Kt.bucketInstanceId].push(Kt.featureIndex))}return Tt}insertCollisionBox(w,B,Q,ee,le,qe){(Q?this.ignoredGrid:this.grid).insert({bucketInstanceId:ee,featureIndex:le,collisionGroupID:qe,overlapMode:B},w[0],w[1],w[2],w[3])}insertCollisionCircles(w,B,Q,ee,le,qe){let Xe=Q?this.ignoredGrid:this.grid,ot={bucketInstanceId:ee,featureIndex:le,collisionGroupID:qe,overlapMode:B};for(let Tt=0;Tt=this.screenRightBoundary||eethis.screenBottomBoundary}isInsideGrid(w,B,Q,ee){return Q>=0&&w=0&&Bthis.projectAndGetPerspectiveRatio(Q,Or.x,Or.y,ee,Tt));dr=Sr.some(Or=>!Or.isOccluded),tr=Sr.map(Or=>Or.point)}else dr=!0;return{box:a.ao(tr),allPointsOccluded:!dr}}}function In(ue,w,B){return w*(a.X/(ue.tileSize*Math.pow(2,B-ue.tileID.overscaledZ)))}class wi{constructor(w,B,Q,ee){this.opacity=w?Math.max(0,Math.min(1,w.opacity+(w.placed?B:-B))):ee&&Q?1:0,this.placed=Q}isHidden(){return this.opacity===0&&!this.placed}}class On{constructor(w,B,Q,ee,le){this.text=new wi(w?w.text:null,B,Q,le),this.icon=new wi(w?w.icon:null,B,ee,le)}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class qn{constructor(w,B,Q){this.text=w,this.icon=B,this.skipFade=Q}}class Fn{constructor(){this.invProjMatrix=a.H(),this.viewportMatrix=a.H(),this.circles=[]}}class ra{constructor(w,B,Q,ee,le){this.bucketInstanceId=w,this.featureIndex=B,this.sourceLayerIndex=Q,this.bucketIndex=ee,this.tileID=le}}class la{constructor(w){this.crossSourceCollisions=w,this.maxGroupID=0,this.collisionGroups={}}get(w){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[w]){let B=++this.maxGroupID;this.collisionGroups[w]={ID:B,predicate:Q=>Q.collisionGroupID===B}}return this.collisionGroups[w]}}function Ut(ue,w,B,Q,ee){let{horizontalAlign:le,verticalAlign:qe}=a.au(ue);return new a.P(-(le-.5)*w+Q[0]*ee,-(qe-.5)*B+Q[1]*ee)}class wt{constructor(w,B,Q,ee,le,qe){this.transform=w.clone(),this.terrain=Q,this.collisionIndex=new ji(this.transform,B),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=ee,this.retainedQueryData={},this.collisionGroups=new la(le),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=qe,qe&&(qe.prevPlacement=void 0),this.placedOrientations={}}_getTerrainElevationFunc(w){let B=this.terrain;return B?(Q,ee)=>B.getElevation(w,Q,ee):null}getBucketParts(w,B,Q,ee){let le=Q.getBucket(B),qe=Q.latestFeatureIndex;if(!le||!qe||B.id!==le.layerIds[0])return;let Xe=Q.collisionBoxArray,ot=le.layers[0].layout,Tt=le.layers[0].paint,Yt=Math.pow(2,this.transform.zoom-Q.tileID.overscaledZ),Kt=Q.tileSize/a.X,xr=Q.tileID.toUnwrapped(),Ir=this.transform.calculatePosMatrix(xr),ve=ot.get("text-pitch-alignment")==="map",be=ot.get("text-rotation-alignment")==="map",De=In(Q,1,this.transform.zoom),Be=this.collisionIndex.mapProjection.translatePosition(this.transform,Q,Tt.get("text-translate"),Tt.get("text-translate-anchor")),et=this.collisionIndex.mapProjection.translatePosition(this.transform,Q,Tt.get("icon-translate"),Tt.get("icon-translate-anchor")),We=Br(Ir,ve,be,this.transform,De),it=null;if(ve){let Ht=Vr(Ir,ve,be,this.transform,De);it=a.L([],this.transform.labelPlaneMatrix,Ht)}this.retainedQueryData[le.bucketInstanceId]=new ra(le.bucketInstanceId,qe,le.sourceLayerIndex,le.index,Q.tileID);let Ft={bucket:le,layout:ot,translationText:Be,translationIcon:et,posMatrix:Ir,unwrappedTileID:xr,textLabelPlaneMatrix:We,labelToScreenMatrix:it,scale:Yt,textPixelRatio:Kt,holdingForFade:Q.holdingForFade(),collisionBoxArray:Xe,partiallyEvaluatedTextSize:a.ag(le.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(le.sourceID)};if(ee)for(let Ht of le.sortKeyRanges){let{sortKey:tr,symbolInstanceStart:dr,symbolInstanceEnd:Sr}=Ht;w.push({sortKey:tr,symbolInstanceStart:dr,symbolInstanceEnd:Sr,parameters:Ft})}else w.push({symbolInstanceStart:0,symbolInstanceEnd:le.symbolInstances.length,parameters:Ft})}attemptAnchorPlacement(w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir,ve,be,De,Be,et,We){let it=a.aq[w.textAnchor],Ft=[w.textOffset0,w.textOffset1],Ht=Ut(it,Q,ee,Ft,le),tr=this.collisionIndex.placeCollisionBox(B,xr,ot,Tt,Yt,Xe,qe,De,Kt.predicate,We,Ht);if((!et||this.collisionIndex.placeCollisionBox(et,xr,ot,Tt,Yt,Xe,qe,Be,Kt.predicate,We,Ht).placeable)&&tr.placeable){let dr;if(this.prevPlacement&&this.prevPlacement.variableOffsets[Ir.crossTileID]&&this.prevPlacement.placements[Ir.crossTileID]&&this.prevPlacement.placements[Ir.crossTileID].text&&(dr=this.prevPlacement.variableOffsets[Ir.crossTileID].anchor),Ir.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[Ir.crossTileID]={textOffset:Ft,width:Q,height:ee,anchor:it,textBoxScale:le,prevAnchor:dr},this.markUsedJustification(ve,it,Ir,be),ve.allowVerticalPlacement&&(this.markUsedOrientation(ve,be,Ir),this.placedOrientations[Ir.crossTileID]=be),{shift:Ht,placedGlyphBoxes:tr}}}placeLayerBucketPart(w,B,Q){let{bucket:ee,layout:le,translationText:qe,translationIcon:Xe,posMatrix:ot,unwrappedTileID:Tt,textLabelPlaneMatrix:Yt,labelToScreenMatrix:Kt,textPixelRatio:xr,holdingForFade:Ir,collisionBoxArray:ve,partiallyEvaluatedTextSize:be,collisionGroup:De}=w.parameters,Be=le.get("text-optional"),et=le.get("icon-optional"),We=a.ar(le,"text-overlap","text-allow-overlap"),it=We==="always",Ft=a.ar(le,"icon-overlap","icon-allow-overlap"),Ht=Ft==="always",tr=le.get("text-rotation-alignment")==="map",dr=le.get("text-pitch-alignment")==="map",Sr=le.get("icon-text-fit")!=="none",Or=le.get("symbol-z-order")==="viewport-y",Wr=it&&(Ht||!ee.hasIconData()||et),ni=Ht&&(it||!ee.hasTextData()||Be);!ee.collisionArrays&&ve&&ee.deserializeCollisionBoxes(ve);let Pi=this._getTerrainElevationFunc(this.retainedQueryData[ee.bucketInstanceId].tileID),cn=(ln,Cn,Kn)=>{var Ta,fa;if(B[ln.crossTileID])return;if(Ir)return void(this.placements[ln.crossTileID]=new qn(!1,!1,!1));let $a=!1,Co=!1,Qa=!0,mo=null,Bo={box:null,placeable:!1,offscreen:null},Ps={box:null,placeable:!1,offscreen:null},Ts=null,wo=null,To=null,hl=0,Ul=0,Lu=0;Cn.textFeatureIndex?hl=Cn.textFeatureIndex:ln.useRuntimeCollisionCircles&&(hl=ln.featureIndex),Cn.verticalTextFeatureIndex&&(Ul=Cn.verticalTextFeatureIndex);let au=Cn.textBox;if(au){let Tl=Te=>{let Ne=a.ah.horizontal;if(ee.allowVerticalPlacement&&!Te&&this.prevPlacement){let He=this.prevPlacement.placedOrientations[ln.crossTileID];He&&(this.placedOrientations[ln.crossTileID]=He,Ne=He,this.markUsedOrientation(ee,Ne,ln))}return Ne},Al=(Te,Ne)=>{if(ee.allowVerticalPlacement&&ln.numVerticalGlyphVertices>0&&Cn.verticalTextBox){for(let He of ee.writingModes)if(He===a.ah.vertical?(Bo=Ne(),Ps=Bo):Bo=Te(),Bo&&Bo.placeable)break}else Bo=Te()},X=ln.textAnchorOffsetStartIndex,se=ln.textAnchorOffsetEndIndex;if(se===X){let Te=(Ne,He)=>{let Ye=this.collisionIndex.placeCollisionBox(Ne,We,xr,ot,Tt,dr,tr,qe,De.predicate,Pi);return Ye&&Ye.placeable&&(this.markUsedOrientation(ee,He,ln),this.placedOrientations[ln.crossTileID]=He),Ye};Al(()=>Te(au,a.ah.horizontal),()=>{let Ne=Cn.verticalTextBox;return ee.allowVerticalPlacement&&ln.numVerticalGlyphVertices>0&&Ne?Te(Ne,a.ah.vertical):{box:null,offscreen:null}}),Tl(Bo&&Bo.placeable)}else{let Te=a.aq[(fa=(Ta=this.prevPlacement)===null||Ta===void 0?void 0:Ta.variableOffsets[ln.crossTileID])===null||fa===void 0?void 0:fa.anchor],Ne=(Ye,kt,nt)=>{let jt=Ye.x2-Ye.x1,gr=Ye.y2-Ye.y1,yr=ln.textBoxScale,Hr=Sr&&Ft==="never"?kt:null,qr=null,_i=We==="never"?1:2,bi="never";Te&&_i++;for(let Zr=0;Zr<_i;Zr++){for(let ai=X;aiNe(au,Cn.iconBox,a.ah.horizontal),()=>{let Ye=Cn.verticalTextBox;return ee.allowVerticalPlacement&&(!Bo||!Bo.placeable)&&ln.numVerticalGlyphVertices>0&&Ye?Ne(Ye,Cn.verticalIconBox,a.ah.vertical):{box:null,occluded:!0,offscreen:null}}),Bo&&($a=Bo.placeable,Qa=Bo.offscreen);let He=Tl(Bo&&Bo.placeable);if(!$a&&this.prevPlacement){let Ye=this.prevPlacement.variableOffsets[ln.crossTileID];Ye&&(this.variableOffsets[ln.crossTileID]=Ye,this.markUsedJustification(ee,Ye.anchor,ln,He))}}}if(Ts=Bo,$a=Ts&&Ts.placeable,Qa=Ts&&Ts.offscreen,ln.useRuntimeCollisionCircles){let Tl=ee.text.placedSymbolArray.get(ln.centerJustifiedTextSymbolIndex),Al=a.ai(ee.textSizeData,be,Tl),X=le.get("text-padding");wo=this.collisionIndex.placeCollisionCircles(We,Tl,ee.lineVertexArray,ee.glyphOffsetArray,Al,ot,Tt,Yt,Kt,Q,dr,De.predicate,ln.collisionCircleDiameter,X,qe,Pi),wo.circles.length&&wo.collisionDetected&&!Q&&a.w("Collisions detected, but collision boxes are not shown"),$a=it||wo.circles.length>0&&!wo.collisionDetected,Qa=Qa&&wo.offscreen}if(Cn.iconFeatureIndex&&(Lu=Cn.iconFeatureIndex),Cn.iconBox){let Tl=Al=>this.collisionIndex.placeCollisionBox(Al,Ft,xr,ot,Tt,dr,tr,Xe,De.predicate,Pi,Sr&&mo?mo:void 0);Ps&&Ps.placeable&&Cn.verticalIconBox?(To=Tl(Cn.verticalIconBox),Co=To.placeable):(To=Tl(Cn.iconBox),Co=To.placeable),Qa=Qa&&To.offscreen}let Js=Be||ln.numHorizontalGlyphVertices===0&&ln.numVerticalGlyphVertices===0,Ql=et||ln.numIconVertices===0;Js||Ql?Ql?Js||(Co=Co&&$a):$a=Co&&$a:Co=$a=Co&&$a;let dc=Co&&To.placeable;if($a&&Ts.placeable&&this.collisionIndex.insertCollisionBox(Ts.box,We,le.get("text-ignore-placement"),ee.bucketInstanceId,Ps&&Ps.placeable&&Ul?Ul:hl,De.ID),dc&&this.collisionIndex.insertCollisionBox(To.box,Ft,le.get("icon-ignore-placement"),ee.bucketInstanceId,Lu,De.ID),wo&&$a&&this.collisionIndex.insertCollisionCircles(wo.circles,We,le.get("text-ignore-placement"),ee.bucketInstanceId,hl,De.ID),Q&&this.storeCollisionData(ee.bucketInstanceId,Kn,Cn,Ts,To,wo),ln.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");if(ee.bucketInstanceId===0)throw new Error("bucket.bucketInstanceId can't be 0");this.placements[ln.crossTileID]=new qn($a||Wr,Co||ni,Qa||ee.justReloaded),B[ln.crossTileID]=!0};if(Or){if(w.symbolInstanceStart!==0)throw new Error("bucket.bucketInstanceId should be 0");let ln=ee.getSortedSymbolIndexes(this.transform.angle);for(let Cn=ln.length-1;Cn>=0;--Cn){let Kn=ln[Cn];cn(ee.symbolInstances.get(Kn),ee.collisionArrays[Kn],Kn)}}else for(let ln=w.symbolInstanceStart;ln=0&&(w.text.placedSymbolArray.get(Xe).crossTileID=le>=0&&Xe!==le?0:Q.crossTileID)}markUsedOrientation(w,B,Q){let ee=B===a.ah.horizontal||B===a.ah.horizontalOnly?B:0,le=B===a.ah.vertical?B:0,qe=[Q.leftJustifiedTextSymbolIndex,Q.centerJustifiedTextSymbolIndex,Q.rightJustifiedTextSymbolIndex];for(let Xe of qe)w.text.placedSymbolArray.get(Xe).placedOrientation=ee;Q.verticalPlacedTextSymbolIndex&&(w.text.placedSymbolArray.get(Q.verticalPlacedTextSymbolIndex).placedOrientation=le)}commit(w){this.commitTime=w,this.zoomAtLastRecencyCheck=this.transform.zoom;let B=this.prevPlacement,Q=!1;this.prevZoomAdjustment=B?B.zoomAdjustment(this.transform.zoom):0;let ee=B?B.symbolFadeChange(w):1,le=B?B.opacities:{},qe=B?B.variableOffsets:{},Xe=B?B.placedOrientations:{};for(let ot in this.placements){let Tt=this.placements[ot],Yt=le[ot];Yt?(this.opacities[ot]=new On(Yt,ee,Tt.text,Tt.icon),Q=Q||Tt.text!==Yt.text.placed||Tt.icon!==Yt.icon.placed):(this.opacities[ot]=new On(null,ee,Tt.text,Tt.icon,Tt.skipFade),Q=Q||Tt.text||Tt.icon)}for(let ot in le){let Tt=le[ot];if(!this.opacities[ot]){let Yt=new On(Tt,ee,!1,!1);Yt.isHidden()||(this.opacities[ot]=Yt,Q=Q||Tt.text.placed||Tt.icon.placed)}}for(let ot in qe)this.variableOffsets[ot]||!this.opacities[ot]||this.opacities[ot].isHidden()||(this.variableOffsets[ot]=qe[ot]);for(let ot in Xe)this.placedOrientations[ot]||!this.opacities[ot]||this.opacities[ot].isHidden()||(this.placedOrientations[ot]=Xe[ot]);if(B&&B.lastPlacementChangeTime===void 0)throw new Error("Last placement time for previous placement is not defined");Q?this.lastPlacementChangeTime=w:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=B?B.lastPlacementChangeTime:w)}updateLayerOpacities(w,B){let Q={};for(let ee of B){let le=ee.getBucket(w);le&&ee.latestFeatureIndex&&w.id===le.layerIds[0]&&this.updateBucketOpacities(le,ee.tileID,Q,ee.collisionBoxArray)}}updateBucketOpacities(w,B,Q,ee){w.hasTextData()&&(w.text.opacityVertexArray.clear(),w.text.hasVisibleVertices=!1),w.hasIconData()&&(w.icon.opacityVertexArray.clear(),w.icon.hasVisibleVertices=!1),w.hasIconCollisionBoxData()&&w.iconCollisionBox.collisionVertexArray.clear(),w.hasTextCollisionBoxData()&&w.textCollisionBox.collisionVertexArray.clear();let le=w.layers[0],qe=le.layout,Xe=new On(null,0,!1,!1,!0),ot=qe.get("text-allow-overlap"),Tt=qe.get("icon-allow-overlap"),Yt=le._unevaluatedLayout.hasValue("text-variable-anchor")||le._unevaluatedLayout.hasValue("text-variable-anchor-offset"),Kt=qe.get("text-rotation-alignment")==="map",xr=qe.get("text-pitch-alignment")==="map",Ir=qe.get("icon-text-fit")!=="none",ve=new On(null,0,ot&&(Tt||!w.hasIconData()||qe.get("icon-optional")),Tt&&(ot||!w.hasTextData()||qe.get("text-optional")),!0);!w.collisionArrays&&ee&&(w.hasIconCollisionBoxData()||w.hasTextCollisionBoxData())&&w.deserializeCollisionBoxes(ee);let be=(Be,et,We)=>{for(let it=0;it0,dr=this.placedOrientations[et.crossTileID],Sr=dr===a.ah.vertical,Or=dr===a.ah.horizontal||dr===a.ah.horizontalOnly;if(We>0||it>0){let ni=tn(Ht.text);be(w.text,We,Sr?fn:ni),be(w.text,it,Or?fn:ni);let Pi=Ht.text.isHidden();[et.rightJustifiedTextSymbolIndex,et.centerJustifiedTextSymbolIndex,et.leftJustifiedTextSymbolIndex].forEach(Cn=>{Cn>=0&&(w.text.placedSymbolArray.get(Cn).hidden=Pi||Sr?1:0)}),et.verticalPlacedTextSymbolIndex>=0&&(w.text.placedSymbolArray.get(et.verticalPlacedTextSymbolIndex).hidden=Pi||Or?1:0);let cn=this.variableOffsets[et.crossTileID];cn&&this.markUsedJustification(w,cn.anchor,et,dr);let ln=this.placedOrientations[et.crossTileID];ln&&(this.markUsedJustification(w,"left",et,ln),this.markUsedOrientation(w,ln,et))}if(tr){let ni=tn(Ht.icon),Pi=!(Ir&&et.verticalPlacedIconSymbolIndex&&Sr);et.placedIconSymbolIndex>=0&&(be(w.icon,et.numIconVertices,Pi?ni:fn),w.icon.placedSymbolArray.get(et.placedIconSymbolIndex).hidden=Ht.icon.isHidden()),et.verticalPlacedIconSymbolIndex>=0&&(be(w.icon,et.numVerticalIconVertices,Pi?fn:ni),w.icon.placedSymbolArray.get(et.verticalPlacedIconSymbolIndex).hidden=Ht.icon.isHidden())}let Wr=De&&De.has(Be)?De.get(Be):{text:null,icon:null};if(w.hasIconCollisionBoxData()||w.hasTextCollisionBoxData()){let ni=w.collisionArrays[Be];if(ni){let Pi=new a.P(0,0);if(ni.textBox||ni.verticalTextBox){let cn=!0;if(Yt){let ln=this.variableOffsets[Ft];ln?(Pi=Ut(ln.anchor,ln.width,ln.height,ln.textOffset,ln.textBoxScale),Kt&&Pi._rotate(xr?this.transform.angle:-this.transform.angle)):cn=!1}if(ni.textBox||ni.verticalTextBox){let ln;ni.textBox&&(ln=Sr),ni.verticalTextBox&&(ln=Or),rr(w.textCollisionBox.collisionVertexArray,Ht.text.placed,!cn||ln,Wr.text,Pi.x,Pi.y)}}if(ni.iconBox||ni.verticalIconBox){let cn=!!(!Or&&ni.verticalIconBox),ln;ni.iconBox&&(ln=cn),ni.verticalIconBox&&(ln=!cn),rr(w.iconCollisionBox.collisionVertexArray,Ht.icon.placed,ln,Wr.icon,Ir?Pi.x:0,Ir?Pi.y:0)}}}}if(w.sortFeatures(this.transform.angle),this.retainedQueryData[w.bucketInstanceId]&&(this.retainedQueryData[w.bucketInstanceId].featureSortOrder=w.featureSortOrder),w.hasTextData()&&w.text.opacityVertexBuffer&&w.text.opacityVertexBuffer.updateData(w.text.opacityVertexArray),w.hasIconData()&&w.icon.opacityVertexBuffer&&w.icon.opacityVertexBuffer.updateData(w.icon.opacityVertexArray),w.hasIconCollisionBoxData()&&w.iconCollisionBox.collisionVertexBuffer&&w.iconCollisionBox.collisionVertexBuffer.updateData(w.iconCollisionBox.collisionVertexArray),w.hasTextCollisionBoxData()&&w.textCollisionBox.collisionVertexBuffer&&w.textCollisionBox.collisionVertexBuffer.updateData(w.textCollisionBox.collisionVertexArray),w.text.opacityVertexArray.length!==w.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${w.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${w.text.layoutVertexArray.length}) / 4`);if(w.icon.opacityVertexArray.length!==w.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${w.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${w.icon.layoutVertexArray.length}) / 4`);if(w.bucketInstanceId in this.collisionCircleArrays){let Be=this.collisionCircleArrays[w.bucketInstanceId];w.placementInvProjMatrix=Be.invProjMatrix,w.placementViewportMatrix=Be.viewportMatrix,w.collisionCircleArray=Be.circles,delete this.collisionCircleArrays[w.bucketInstanceId]}}symbolFadeChange(w){return this.fadeDuration===0?1:(w-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(w){return Math.max(0,(this.transform.zoom-w)/1.5)}hasTransitions(w){return this.stale||w-this.lastPlacementChangeTimew}setStale(){this.stale=!0}}function rr(ue,w,B,Q,ee,le){Q&&Q.length!==0||(Q=[0,0,0,0]);let qe=Q[0]-di,Xe=Q[1]-di,ot=Q[2]-di,Tt=Q[3]-di;ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,qe,Xe),ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,ot,Xe),ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,ot,Tt),ue.emplaceBack(w?1:0,B?1:0,ee||0,le||0,qe,Tt)}let nr=Math.pow(2,25),Er=Math.pow(2,24),Xr=Math.pow(2,17),ri=Math.pow(2,16),Qr=Math.pow(2,9),Oi=Math.pow(2,8),$i=Math.pow(2,1);function tn(ue){if(ue.opacity===0&&!ue.placed)return 0;if(ue.opacity===1&&ue.placed)return 4294967295;let w=ue.placed?1:0,B=Math.floor(127*ue.opacity);return B*nr+w*Er+B*Xr+w*ri+B*Qr+w*Oi+B*$i+w}let fn=0;function yn(){return{isOccluded:(ue,w,B)=>!1,getPitchedTextCorrection:(ue,w,B)=>1,get useSpecialProjectionForSymbols(){return!1},projectTileCoordinates(ue,w,B,Q){throw new Error("Not implemented.")},translatePosition:(ue,w,B,Q)=>function(ee,le,qe,Xe,ot=!1){if(!qe[0]&&!qe[1])return[0,0];let Tt=ot?Xe==="map"?ee.angle:0:Xe==="viewport"?-ee.angle:0;if(Tt){let Yt=Math.sin(Tt),Kt=Math.cos(Tt);qe=[qe[0]*Kt-qe[1]*Yt,qe[0]*Yt+qe[1]*Kt]}return[ot?qe[0]:In(le,qe[0],ee.zoom),ot?qe[1]:In(le,qe[1],ee.zoom)]}(ue,w,B,Q),getCircleRadiusCorrection:ue=>1}}class Sn{constructor(w){this._sortAcrossTiles=w.layout.get("symbol-z-order")!=="viewport-y"&&!w.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(w,B,Q,ee,le){let qe=this._bucketParts;for(;this._currentTileIndexXe.sortKey-ot.sortKey));this._currentPartIndex!this._forceFullPlacement&&u.now()-ee>2;for(;this._currentPlacementIndex>=0;){let qe=B[w[this._currentPlacementIndex]],Xe=this.placement.collisionIndex.transform.zoom;if(qe.type==="symbol"&&(!qe.minzoom||qe.minzoom<=Xe)&&(!qe.maxzoom||qe.maxzoom>Xe)){if(this._inProgressLayer||(this._inProgressLayer=new Sn(qe)),this._inProgressLayer.continuePlacement(Q[qe.source],this.placement,this._showCollisionBoxes,qe,le))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(w){return this.placement.commit(w),this.placement}}let ua=512/a.X/2;class ma{constructor(w,B,Q){this.tileID=w,this.bucketInstanceId=Q,this._symbolsByKey={};let ee=new Map;for(let le=0;le({x:Math.floor(ot.anchorX*ua),y:Math.floor(ot.anchorY*ua)})),crossTileIDs:qe.map(ot=>ot.crossTileID)};if(Xe.positions.length>128){let ot=new a.av(Xe.positions.length,16,Uint16Array);for(let{x:Tt,y:Yt}of Xe.positions)ot.add(Tt,Yt);ot.finish(),delete Xe.positions,Xe.index=ot}this._symbolsByKey[le]=Xe}}getScaledCoordinates(w,B){let{x:Q,y:ee,z:le}=this.tileID.canonical,{x:qe,y:Xe,z:ot}=B.canonical,Tt=ua/Math.pow(2,ot-le),Yt=(Xe*a.X+w.anchorY)*Tt,Kt=ee*a.X*ua;return{x:Math.floor((qe*a.X+w.anchorX)*Tt-Q*a.X*ua),y:Math.floor(Yt-Kt)}}findMatches(w,B,Q){let ee=this.tileID.canonical.zw)}}class Wa{constructor(){this.maxCrossTileID=0}generate(){return++this.maxCrossTileID}}class Fa{constructor(){this.indexes={},this.usedCrossTileIDs={},this.lng=0}handleWrapJump(w){let B=Math.round((w-this.lng)/360);if(B!==0)for(let Q in this.indexes){let ee=this.indexes[Q],le={};for(let qe in ee){let Xe=ee[qe];Xe.tileID=Xe.tileID.unwrapTo(Xe.tileID.wrap+B),le[Xe.tileID.key]=Xe}this.indexes[Q]=le}this.lng=w}addBucket(w,B,Q){if(this.indexes[w.overscaledZ]&&this.indexes[w.overscaledZ][w.key]){if(this.indexes[w.overscaledZ][w.key].bucketInstanceId===B.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(w.overscaledZ,this.indexes[w.overscaledZ][w.key])}for(let le=0;lew.overscaledZ)for(let Xe in qe){let ot=qe[Xe];ot.tileID.isChildOf(w)&&ot.findMatches(B.symbolInstances,w,ee)}else{let Xe=qe[w.scaledTo(Number(le)).key];Xe&&Xe.findMatches(B.symbolInstances,w,ee)}}for(let le=0;le{B[Q]=!0});for(let Q in this.layerIndexes)B[Q]||delete this.layerIndexes[Q]}}let da=(ue,w)=>a.t(ue,w&&w.filter(B=>B.identifier!=="source.canvas")),Wn=a.aw();class Ha extends a.E{constructor(w,B={}){super(),this._rtlPluginLoaded=()=>{for(let Q in this.sourceCaches){let ee=this.sourceCaches[Q].getSource().type;ee!=="vector"&&ee!=="geojson"||this.sourceCaches[Q].reload()}},this.map=w,this.dispatcher=new Le(Se(),w._getMapId()),this.dispatcher.registerMessageHandler("GG",(Q,ee)=>this.getGlyphs(Q,ee)),this.dispatcher.registerMessageHandler("GI",(Q,ee)=>this.getImages(Q,ee)),this.imageManager=new T,this.imageManager.setEventedParent(this),this.glyphManager=new G(w._requestManager,B.localIdeographFontFamily),this.lineAtlas=new oe(256,512),this.crossTileSymbolIndex=new Wo,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new a.ax,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("SR",a.ay()),Qt().on(cr,this._rtlPluginLoaded),this.on("data",Q=>{if(Q.dataType!=="source"||Q.sourceDataType!=="metadata")return;let ee=this.sourceCaches[Q.sourceId];if(!ee)return;let le=ee.getSource();if(le&&le.vectorLayerIds)for(let qe in this._layers){let Xe=this._layers[qe];Xe.source===le.id&&this._validateLayer(Xe)}})}loadURL(w,B={},Q){this.fire(new a.k("dataloading",{dataType:"style"})),B.validate=typeof B.validate!="boolean"||B.validate;let ee=this.map._requestManager.transformRequest(w,"Style");this._loadStyleRequest=new AbortController;let le=this._loadStyleRequest;a.h(ee,this._loadStyleRequest).then(qe=>{this._loadStyleRequest=null,this._load(qe.data,B,Q)}).catch(qe=>{this._loadStyleRequest=null,qe&&!le.signal.aborted&&this.fire(new a.j(qe))})}loadJSON(w,B={},Q){this.fire(new a.k("dataloading",{dataType:"style"})),this._frameRequest=new AbortController,u.frameAsync(this._frameRequest).then(()=>{this._frameRequest=null,B.validate=B.validate!==!1,this._load(w,B,Q)}).catch(()=>{})}loadEmpty(){this.fire(new a.k("dataloading",{dataType:"style"})),this._load(Wn,{validate:!1})}_load(w,B,Q){var ee;let le=B.transformStyle?B.transformStyle(Q,w):w;if(!B.validate||!da(this,a.u(le))){this._loaded=!0,this.stylesheet=le;for(let qe in le.sources)this.addSource(qe,le.sources[qe],{validate:!1});le.sprite?this._loadSprite(le.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(le.glyphs),this._createLayers(),this.light=new N(this.stylesheet.light),this.sky=new te(this.stylesheet.sky),this.map.setTerrain((ee=this.stylesheet.terrain)!==null&&ee!==void 0?ee:null),this.fire(new a.k("data",{dataType:"style"})),this.fire(new a.k("style.load"))}}_createLayers(){let w=a.az(this.stylesheet.layers);this.dispatcher.broadcast("SL",w),this._order=w.map(B=>B.id),this._layers={},this._serializedLayers=null;for(let B of w){let Q=a.aA(B);Q.setEventedParent(this,{layer:{id:B.id}}),this._layers[B.id]=Q}}_loadSprite(w,B=!1,Q=void 0){let ee;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,function(le,qe,Xe,ot){return a._(this,void 0,void 0,function*(){let Tt=C(le),Yt=Xe>1?"@2x":"",Kt={},xr={};for(let{id:Ir,url:ve}of Tt){let be=qe.transformRequest(M(ve,Yt,".json"),"SpriteJSON");Kt[Ir]=a.h(be,ot);let De=qe.transformRequest(M(ve,Yt,".png"),"SpriteImage");xr[Ir]=p.getImage(De,ot)}return yield Promise.all([...Object.values(Kt),...Object.values(xr)]),function(Ir,ve){return a._(this,void 0,void 0,function*(){let be={};for(let De in Ir){be[De]={};let Be=u.getImageCanvasContext((yield ve[De]).data),et=(yield Ir[De]).data;for(let We in et){let{width:it,height:Ft,x:Ht,y:tr,sdf:dr,pixelRatio:Sr,stretchX:Or,stretchY:Wr,content:ni,textFitWidth:Pi,textFitHeight:cn}=et[We];be[De][We]={data:null,pixelRatio:Sr,sdf:dr,stretchX:Or,stretchY:Wr,content:ni,textFitWidth:Pi,textFitHeight:cn,spriteData:{width:it,height:Ft,x:Ht,y:tr,context:Be}}}}return be})}(Kt,xr)})}(w,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then(le=>{if(this._spriteRequest=null,le)for(let qe in le){this._spritesImagesIds[qe]=[];let Xe=this._spritesImagesIds[qe]?this._spritesImagesIds[qe].filter(ot=>!(ot in le)):[];for(let ot of Xe)this.imageManager.removeImage(ot),this._changedImages[ot]=!0;for(let ot in le[qe]){let Tt=qe==="default"?ot:`${qe}:${ot}`;this._spritesImagesIds[qe].push(Tt),Tt in this.imageManager.images?this.imageManager.updateImage(Tt,le[qe][ot],!1):this.imageManager.addImage(Tt,le[qe][ot]),B&&(this._changedImages[Tt]=!0)}}}).catch(le=>{this._spriteRequest=null,ee=le,this.fire(new a.j(ee))}).finally(()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),B&&(this._changed=!0),this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"})),Q&&Q(ee)})}_unloadSprite(){for(let w of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(w),this._changedImages[w]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}_validateLayer(w){let B=this.sourceCaches[w.source];if(!B)return;let Q=w.sourceLayer;if(!Q)return;let ee=B.getSource();(ee.type==="geojson"||ee.vectorLayerIds&&ee.vectorLayerIds.indexOf(Q)===-1)&&this.fire(new a.j(new Error(`Source layer "${Q}" does not exist on source "${ee.id}" as specified by style layer "${w.id}".`)))}loaded(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(let w in this.sourceCaches)if(!this.sourceCaches[w].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeByIds(w,B=!1){let Q=this._serializedAllLayers();if(!w||w.length===0)return Object.values(B?a.aB(Q):Q);let ee=[];for(let le of w)if(Q[le]){let qe=B?a.aB(Q[le]):Q[le];ee.push(qe)}return ee}_serializedAllLayers(){let w=this._serializedLayers;if(w)return w;w=this._serializedLayers={};let B=Object.keys(this._layers);for(let Q of B){let ee=this._layers[Q];ee.type!=="custom"&&(w[Q]=ee.serialize())}return w}hasTransitions(){if(this.light&&this.light.hasTransition()||this.sky&&this.sky.hasTransition())return!0;for(let w in this.sourceCaches)if(this.sourceCaches[w].hasTransition())return!0;for(let w in this._layers)if(this._layers[w].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(w){if(!this._loaded)return;let B=this._changed;if(B){let ee=Object.keys(this._updatedLayers),le=Object.keys(this._removedLayers);(ee.length||le.length)&&this._updateWorkerLayers(ee,le);for(let qe in this._updatedSources){let Xe=this._updatedSources[qe];if(Xe==="reload")this._reloadSource(qe);else{if(Xe!=="clear")throw new Error(`Invalid action ${Xe}`);this._clearSource(qe)}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(let qe in this._updatedPaintProps)this._layers[qe].updateTransitions(w);this.light.updateTransitions(w),this.sky.updateTransitions(w),this._resetUpdates()}let Q={};for(let ee in this.sourceCaches){let le=this.sourceCaches[ee];Q[ee]=le.used,le.used=!1}for(let ee of this._order){let le=this._layers[ee];le.recalculate(w,this._availableImages),!le.isHidden(w.zoom)&&le.source&&(this.sourceCaches[le.source].used=!0)}for(let ee in Q){let le=this.sourceCaches[ee];!!Q[ee]!=!!le.used&&le.fire(new a.k("data",{sourceDataType:"visibility",dataType:"source",sourceId:ee}))}this.light.recalculate(w),this.sky.recalculate(w),this.z=w.zoom,B&&this.fire(new a.k("data",{dataType:"style"}))}_updateTilesForChangedImages(){let w=Object.keys(this._changedImages);if(w.length){for(let B in this.sourceCaches)this.sourceCaches[B].reloadTilesForDependencies(["icons","patterns"],w);this._changedImages={}}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(let w in this.sourceCaches)this.sourceCaches[w].reloadTilesForDependencies(["glyphs"],[""]);this._glyphsDidChange=!1}}_updateWorkerLayers(w,B){this.dispatcher.broadcast("UL",{layers:this._serializeByIds(w,!1),removedIds:B})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1}setState(w,B={}){var Q;this._checkLoaded();let ee=this.serialize();if(w=B.transformStyle?B.transformStyle(ee,w):w,((Q=B.validate)===null||Q===void 0||Q)&&da(this,a.u(w)))return!1;(w=a.aB(w)).layers=a.az(w.layers);let le=a.aC(ee,w),qe=this._getOperationsToPerform(le);if(qe.unimplemented.length>0)throw new Error(`Unimplemented: ${qe.unimplemented.join(", ")}.`);if(qe.operations.length===0)return!1;for(let Xe of qe.operations)Xe();return this.stylesheet=w,this._serializedLayers=null,!0}_getOperationsToPerform(w){let B=[],Q=[];for(let ee of w)switch(ee.command){case"setCenter":case"setZoom":case"setBearing":case"setPitch":continue;case"addLayer":B.push(()=>this.addLayer.apply(this,ee.args));break;case"removeLayer":B.push(()=>this.removeLayer.apply(this,ee.args));break;case"setPaintProperty":B.push(()=>this.setPaintProperty.apply(this,ee.args));break;case"setLayoutProperty":B.push(()=>this.setLayoutProperty.apply(this,ee.args));break;case"setFilter":B.push(()=>this.setFilter.apply(this,ee.args));break;case"addSource":B.push(()=>this.addSource.apply(this,ee.args));break;case"removeSource":B.push(()=>this.removeSource.apply(this,ee.args));break;case"setLayerZoomRange":B.push(()=>this.setLayerZoomRange.apply(this,ee.args));break;case"setLight":B.push(()=>this.setLight.apply(this,ee.args));break;case"setGeoJSONSourceData":B.push(()=>this.setGeoJSONSourceData.apply(this,ee.args));break;case"setGlyphs":B.push(()=>this.setGlyphs.apply(this,ee.args));break;case"setSprite":B.push(()=>this.setSprite.apply(this,ee.args));break;case"setSky":B.push(()=>this.setSky.apply(this,ee.args));break;case"setTerrain":B.push(()=>this.map.setTerrain.apply(this,ee.args));break;case"setTransition":B.push(()=>{});break;default:Q.push(ee.command)}return{operations:B,unimplemented:Q}}addImage(w,B){if(this.getImage(w))return this.fire(new a.j(new Error(`An image named "${w}" already exists.`)));this.imageManager.addImage(w,B),this._afterImageUpdated(w)}updateImage(w,B){this.imageManager.updateImage(w,B)}getImage(w){return this.imageManager.getImage(w)}removeImage(w){if(!this.getImage(w))return this.fire(new a.j(new Error(`An image named "${w}" does not exist.`)));this.imageManager.removeImage(w),this._afterImageUpdated(w)}_afterImageUpdated(w){this._availableImages=this.imageManager.listImages(),this._changedImages[w]=!0,this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(w,B,Q={}){if(this._checkLoaded(),this.sourceCaches[w]!==void 0)throw new Error(`Source "${w}" already exists.`);if(!B.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(B).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(B.type)>=0&&this._validate(a.u.source,`sources.${w}`,B,null,Q))return;this.map&&this.map._collectResourceTiming&&(B.collectResourceTiming=!0);let ee=this.sourceCaches[w]=new mt(w,B,this.dispatcher);ee.style=this,ee.setEventedParent(this,()=>({isSourceLoaded:ee.loaded(),source:ee.serialize(),sourceId:w})),ee.onAdd(this.map),this._changed=!0}removeSource(w){if(this._checkLoaded(),this.sourceCaches[w]===void 0)throw new Error("There is no source with this ID");for(let Q in this._layers)if(this._layers[Q].source===w)return this.fire(new a.j(new Error(`Source "${w}" cannot be removed while layer "${Q}" is using it.`)));let B=this.sourceCaches[w];delete this.sourceCaches[w],delete this._updatedSources[w],B.fire(new a.k("data",{sourceDataType:"metadata",dataType:"source",sourceId:w})),B.setEventedParent(null),B.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(w,B){if(this._checkLoaded(),this.sourceCaches[w]===void 0)throw new Error(`There is no source with this ID=${w}`);let Q=this.sourceCaches[w].getSource();if(Q.type!=="geojson")throw new Error(`geojsonSource.type is ${Q.type}, which is !== 'geojson`);Q.setData(B),this._changed=!0}getSource(w){return this.sourceCaches[w]&&this.sourceCaches[w].getSource()}addLayer(w,B,Q={}){this._checkLoaded();let ee=w.id;if(this.getLayer(ee))return void this.fire(new a.j(new Error(`Layer "${ee}" already exists on this map.`)));let le;if(w.type==="custom"){if(da(this,a.aD(w)))return;le=a.aA(w)}else{if("source"in w&&typeof w.source=="object"&&(this.addSource(ee,w.source),w=a.aB(w),w=a.e(w,{source:ee})),this._validate(a.u.layer,`layers.${ee}`,w,{arrayIndex:-1},Q))return;le=a.aA(w),this._validateLayer(le),le.setEventedParent(this,{layer:{id:ee}})}let qe=B?this._order.indexOf(B):this._order.length;if(B&&qe===-1)this.fire(new a.j(new Error(`Cannot add layer "${ee}" before non-existing layer "${B}".`)));else{if(this._order.splice(qe,0,ee),this._layerOrderChanged=!0,this._layers[ee]=le,this._removedLayers[ee]&&le.source&&le.type!=="custom"){let Xe=this._removedLayers[ee];delete this._removedLayers[ee],Xe.type!==le.type?this._updatedSources[le.source]="clear":(this._updatedSources[le.source]="reload",this.sourceCaches[le.source].pause())}this._updateLayer(le),le.onAdd&&le.onAdd(this.map)}}moveLayer(w,B){if(this._checkLoaded(),this._changed=!0,!this._layers[w])return void this.fire(new a.j(new Error(`The layer '${w}' does not exist in the map's style and cannot be moved.`)));if(w===B)return;let Q=this._order.indexOf(w);this._order.splice(Q,1);let ee=B?this._order.indexOf(B):this._order.length;B&&ee===-1?this.fire(new a.j(new Error(`Cannot move layer "${w}" before non-existing layer "${B}".`))):(this._order.splice(ee,0,w),this._layerOrderChanged=!0)}removeLayer(w){this._checkLoaded();let B=this._layers[w];if(!B)return void this.fire(new a.j(new Error(`Cannot remove non-existing layer "${w}".`)));B.setEventedParent(null);let Q=this._order.indexOf(w);this._order.splice(Q,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[w]=B,delete this._layers[w],this._serializedLayers&&delete this._serializedLayers[w],delete this._updatedLayers[w],delete this._updatedPaintProps[w],B.onRemove&&B.onRemove(this.map)}getLayer(w){return this._layers[w]}getLayersOrder(){return[...this._order]}hasLayer(w){return w in this._layers}setLayerZoomRange(w,B,Q){this._checkLoaded();let ee=this.getLayer(w);ee?ee.minzoom===B&&ee.maxzoom===Q||(B!=null&&(ee.minzoom=B),Q!=null&&(ee.maxzoom=Q),this._updateLayer(ee)):this.fire(new a.j(new Error(`Cannot set the zoom range of non-existing layer "${w}".`)))}setFilter(w,B,Q={}){this._checkLoaded();let ee=this.getLayer(w);if(ee){if(!a.aE(ee.filter,B))return B==null?(ee.filter=void 0,void this._updateLayer(ee)):void(this._validate(a.u.filter,`layers.${ee.id}.filter`,B,null,Q)||(ee.filter=a.aB(B),this._updateLayer(ee)))}else this.fire(new a.j(new Error(`Cannot filter non-existing layer "${w}".`)))}getFilter(w){return a.aB(this.getLayer(w).filter)}setLayoutProperty(w,B,Q,ee={}){this._checkLoaded();let le=this.getLayer(w);le?a.aE(le.getLayoutProperty(B),Q)||(le.setLayoutProperty(B,Q,ee),this._updateLayer(le)):this.fire(new a.j(new Error(`Cannot style non-existing layer "${w}".`)))}getLayoutProperty(w,B){let Q=this.getLayer(w);if(Q)return Q.getLayoutProperty(B);this.fire(new a.j(new Error(`Cannot get style of non-existing layer "${w}".`)))}setPaintProperty(w,B,Q,ee={}){this._checkLoaded();let le=this.getLayer(w);le?a.aE(le.getPaintProperty(B),Q)||(le.setPaintProperty(B,Q,ee)&&this._updateLayer(le),this._changed=!0,this._updatedPaintProps[w]=!0,this._serializedLayers=null):this.fire(new a.j(new Error(`Cannot style non-existing layer "${w}".`)))}getPaintProperty(w,B){return this.getLayer(w).getPaintProperty(B)}setFeatureState(w,B){this._checkLoaded();let Q=w.source,ee=w.sourceLayer,le=this.sourceCaches[Q];if(le===void 0)return void this.fire(new a.j(new Error(`The source '${Q}' does not exist in the map's style.`)));let qe=le.getSource().type;qe==="geojson"&&ee?this.fire(new a.j(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):qe!=="vector"||ee?(w.id===void 0&&this.fire(new a.j(new Error("The feature id parameter must be provided."))),le.setFeatureState(ee,w.id,B)):this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}removeFeatureState(w,B){this._checkLoaded();let Q=w.source,ee=this.sourceCaches[Q];if(ee===void 0)return void this.fire(new a.j(new Error(`The source '${Q}' does not exist in the map's style.`)));let le=ee.getSource().type,qe=le==="vector"?w.sourceLayer:void 0;le!=="vector"||qe?B&&typeof w.id!="string"&&typeof w.id!="number"?this.fire(new a.j(new Error("A feature id is required to remove its specific state property."))):ee.removeFeatureState(qe,w.id,B):this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}getFeatureState(w){this._checkLoaded();let B=w.source,Q=w.sourceLayer,ee=this.sourceCaches[B];if(ee!==void 0)return ee.getSource().type!=="vector"||Q?(w.id===void 0&&this.fire(new a.j(new Error("The feature id parameter must be provided."))),ee.getFeatureState(Q,w.id)):void this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new a.j(new Error(`The source '${B}' does not exist in the map's style.`)))}getTransition(){return a.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;let w=a.aF(this.sourceCaches,le=>le.serialize()),B=this._serializeByIds(this._order,!0),Q=this.map.getTerrain()||void 0,ee=this.stylesheet;return a.aG({version:ee.version,name:ee.name,metadata:ee.metadata,light:ee.light,sky:ee.sky,center:ee.center,zoom:ee.zoom,bearing:ee.bearing,pitch:ee.pitch,sprite:ee.sprite,glyphs:ee.glyphs,transition:ee.transition,sources:w,layers:B,terrain:Q},le=>le!==void 0)}_updateLayer(w){this._updatedLayers[w.id]=!0,w.source&&!this._updatedSources[w.source]&&this.sourceCaches[w.source].getSource().type!=="raster"&&(this._updatedSources[w.source]="reload",this.sourceCaches[w.source].pause()),this._serializedLayers=null,this._changed=!0}_flattenAndSortRenderedFeatures(w){let B=qe=>this._layers[qe].type==="fill-extrusion",Q={},ee=[];for(let qe=this._order.length-1;qe>=0;qe--){let Xe=this._order[qe];if(B(Xe)){Q[Xe]=qe;for(let ot of w){let Tt=ot[Xe];if(Tt)for(let Yt of Tt)ee.push(Yt)}}}ee.sort((qe,Xe)=>Xe.intersectionZ-qe.intersectionZ);let le=[];for(let qe=this._order.length-1;qe>=0;qe--){let Xe=this._order[qe];if(B(Xe))for(let ot=ee.length-1;ot>=0;ot--){let Tt=ee[ot].feature;if(Q[Tt.layer.id]{let dr=Be.featureSortOrder;if(dr){let Sr=dr.indexOf(Ht.featureIndex);return dr.indexOf(tr.featureIndex)-Sr}return tr.featureIndex-Ht.featureIndex});for(let Ht of Ft)it.push(Ht)}}for(let Be in ve)ve[Be].forEach(et=>{let We=et.feature,it=Tt[Xe[Be].source].getFeatureState(We.layer["source-layer"],We.id);We.source=We.layer.source,We.layer["source-layer"]&&(We.sourceLayer=We.layer["source-layer"]),We.state=it});return ve}(this._layers,qe,this.sourceCaches,w,B,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(le)}querySourceFeatures(w,B){B&&B.filter&&this._validate(a.u.filter,"querySourceFeatures.filter",B.filter,null,B);let Q=this.sourceCaches[w];return Q?function(ee,le){let qe=ee.getRenderableIds().map(Tt=>ee.getTileByID(Tt)),Xe=[],ot={};for(let Tt=0;Ttxr.getTileByID(Ir)).sort((Ir,ve)=>ve.tileID.overscaledZ-Ir.tileID.overscaledZ||(Ir.tileID.isLessThan(ve.tileID)?-1:1))}let Kt=this.crossTileSymbolIndex.addLayer(Yt,ot[Yt.source],w.center.lng);qe=qe||Kt}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((le=le||this._layerOrderChanged||Q===0)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(u.now(),w.zoom))&&(this.pauseablePlacement=new Ba(w,this.map.terrain,this._order,le,B,Q,ee,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,ot),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(u.now()),Xe=!0),qe&&this.pauseablePlacement.placement.setStale()),Xe||qe)for(let Tt of this._order){let Yt=this._layers[Tt];Yt.type==="symbol"&&this.placement.updateLayerOpacities(Yt,ot[Yt.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(u.now())}_releaseSymbolFadeTiles(){for(let w in this.sourceCaches)this.sourceCaches[w].releaseSymbolFadeTiles()}getImages(w,B){return a._(this,void 0,void 0,function*(){let Q=yield this.imageManager.getImages(B.icons);this._updateTilesForChangedImages();let ee=this.sourceCaches[B.source];return ee&&ee.setDependencies(B.tileID.key,B.type,B.icons),Q})}getGlyphs(w,B){return a._(this,void 0,void 0,function*(){let Q=yield this.glyphManager.getGlyphs(B.stacks),ee=this.sourceCaches[B.source];return ee&&ee.setDependencies(B.tileID.key,B.type,[""]),Q})}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(w,B={}){this._checkLoaded(),w&&this._validate(a.u.glyphs,"glyphs",w,null,B)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=w,this.glyphManager.entries={},this.glyphManager.setURL(w))}addSprite(w,B,Q={},ee){this._checkLoaded();let le=[{id:w,url:B}],qe=[...C(this.stylesheet.sprite),...le];this._validate(a.u.sprite,"sprite",qe,null,Q)||(this.stylesheet.sprite=qe,this._loadSprite(le,!0,ee))}removeSprite(w){this._checkLoaded();let B=C(this.stylesheet.sprite);if(B.find(Q=>Q.id===w)){if(this._spritesImagesIds[w])for(let Q of this._spritesImagesIds[w])this.imageManager.removeImage(Q),this._changedImages[Q]=!0;B.splice(B.findIndex(Q=>Q.id===w),1),this.stylesheet.sprite=B.length>0?B:void 0,delete this._spritesImagesIds[w],this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}else this.fire(new a.j(new Error(`Sprite "${w}" doesn't exists on this map.`)))}getSprite(){return C(this.stylesheet.sprite)}setSprite(w,B={},Q){this._checkLoaded(),w&&this._validate(a.u.sprite,"sprite",w,null,B)||(this.stylesheet.sprite=w,w?this._loadSprite(w,!0,Q):(this._unloadSprite(),Q&&Q(null)))}}var vo=a.Y([{name:"a_pos",type:"Int16",components:2}]);let jn={prelude:Mt(`#ifdef GL_ES precision mediump float; #else #if !defined(lowp) @@ -3800,7 +3800,7 @@ uniform ${Yt} ${Kt} u_${xr}; #endif `}),staticAttributes:Q,staticUniforms:qe}}class kr{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(w,B,Q,ee,le,qe,Xe,ot,Tt){this.context=w;let Yt=this.boundPaintVertexBuffers.length!==ee.length;for(let Kt=0;!Yt&&Kt({u_matrix:ue,u_texture:0,u_ele_delta:w,u_fog_matrix:B,u_fog_color:Q?Q.properties.get("fog-color"):a.aM.white,u_fog_ground_blend:Q?Q.properties.get("fog-ground-blend"):1,u_fog_ground_blend_opacity:Q?Q.calculateFogBlendOpacity(ee):0,u_horizon_color:Q?Q.properties.get("horizon-color"):a.aM.white,u_horizon_fog_blend:Q?Q.properties.get("horizon-fog-blend"):1});function vi(ue){let w=[];for(let B=0;B({u_depth:new a.aH(Ht,tr.u_depth),u_terrain:new a.aH(Ht,tr.u_terrain),u_terrain_dim:new a.aI(Ht,tr.u_terrain_dim),u_terrain_matrix:new a.aJ(Ht,tr.u_terrain_matrix),u_terrain_unpack:new a.aK(Ht,tr.u_terrain_unpack),u_terrain_exaggeration:new a.aI(Ht,tr.u_terrain_exaggeration)}))(w,Ft),this.binderUniforms=Q?Q.getUniforms(w,Ft):[]}draw(w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir,ve,be,De,Be,et){let We=w.gl;if(this.failedToCreate)return;if(w.program.set(this.program),w.setDepthMode(Q),w.setStencilMode(ee),w.setColorMode(le),w.setCullFace(qe),ot){w.activeTexture.set(We.TEXTURE2),We.bindTexture(We.TEXTURE_2D,ot.depthTexture),w.activeTexture.set(We.TEXTURE3),We.bindTexture(We.TEXTURE_2D,ot.texture);for(let Ft in this.terrainUniforms)this.terrainUniforms[Ft].set(ot[Ft])}for(let Ft in this.fixedUniforms)this.fixedUniforms[Ft].set(Xe[Ft]);be&&be.setUniforms(w,this.binderUniforms,Ir,{zoom:ve});let it=0;switch(B){case We.LINES:it=2;break;case We.TRIANGLES:it=3;break;case We.LINE_STRIP:it=1}for(let Ft of xr.get()){let Ht=Ft.vaos||(Ft.vaos={});(Ht[Tt]||(Ht[Tt]=new kr)).bind(w,this,Yt,be?be.getPaintVertexBuffers():[],Kt,Ft.vertexOffset,De,Be,et),We.drawElements(B,Ft.primitiveLength*it,We.UNSIGNED_SHORT,Ft.primitiveOffset*it*2)}}}function An(ue,w,B){let Q=1/In(B,1,w.transform.tileZoom),ee=Math.pow(2,B.tileID.overscaledZ),le=B.tileSize*Math.pow(2,w.transform.tileZoom)/ee,qe=le*(B.tileID.canonical.x+B.tileID.wrap*ee),Xe=le*B.tileID.canonical.y;return{u_image:0,u_texsize:B.imageAtlasTexture.size,u_scale:[Q,ue.fromScale,ue.toScale],u_fade:ue.t,u_pixel_coord_upper:[qe>>16,Xe>>16],u_pixel_coord_lower:[65535&qe,65535&Xe]}}let Mn=(ue,w,B,Q)=>{let ee=w.style.light,le=ee.properties.get("position"),qe=[le.x,le.y,le.z],Xe=function(){var Tt=new a.A(9);return a.A!=Float32Array&&(Tt[1]=0,Tt[2]=0,Tt[3]=0,Tt[5]=0,Tt[6]=0,Tt[7]=0),Tt[0]=1,Tt[4]=1,Tt[8]=1,Tt}();ee.properties.get("anchor")==="viewport"&&function(Tt,Yt){var Kt=Math.sin(Yt),xr=Math.cos(Yt);Tt[0]=xr,Tt[1]=Kt,Tt[2]=0,Tt[3]=-Kt,Tt[4]=xr,Tt[5]=0,Tt[6]=0,Tt[7]=0,Tt[8]=1}(Xe,-w.transform.angle),function(Tt,Yt,Kt){var xr=Yt[0],Ir=Yt[1],ve=Yt[2];Tt[0]=xr*Kt[0]+Ir*Kt[3]+ve*Kt[6],Tt[1]=xr*Kt[1]+Ir*Kt[4]+ve*Kt[7],Tt[2]=xr*Kt[2]+Ir*Kt[5]+ve*Kt[8]}(qe,qe,Xe);let ot=ee.properties.get("color");return{u_matrix:ue,u_lightpos:qe,u_lightintensity:ee.properties.get("intensity"),u_lightcolor:[ot.r,ot.g,ot.b],u_vertical_gradient:+B,u_opacity:Q}},Li=(ue,w,B,Q,ee,le,qe)=>a.e(Mn(ue,w,B,Q),An(le,w,qe),{u_height_factor:-Math.pow(2,ee.overscaledZ)/qe.tileSize/8}),_n=ue=>({u_matrix:ue}),ya=(ue,w,B,Q)=>a.e(_n(ue),An(B,w,Q)),Jn=(ue,w)=>({u_matrix:ue,u_world:w}),Ma=(ue,w,B,Q,ee)=>a.e(ya(ue,w,B,Q),{u_world:ee}),_o=(ue,w,B,Q)=>{let ee=ue.transform,le,qe;if(Q.paint.get("circle-pitch-alignment")==="map"){let Xe=In(B,1,ee.zoom);le=!0,qe=[Xe,Xe]}else le=!1,qe=ee.pixelsToGLUnits;return{u_camera_to_center_distance:ee.cameraToCenterDistance,u_scale_with_map:+(Q.paint.get("circle-pitch-scale")==="map"),u_matrix:ue.translatePosMatrix(w.posMatrix,B,Q.paint.get("circle-translate"),Q.paint.get("circle-translate-anchor")),u_pitch_with_map:+le,u_device_pixel_ratio:ue.pixelRatio,u_extrude_scale:qe}},No=(ue,w,B)=>({u_matrix:ue,u_inv_matrix:w,u_camera_to_center_distance:B.cameraToCenterDistance,u_viewport_size:[B.width,B.height]}),po=(ue,w,B=1)=>({u_matrix:ue,u_color:w,u_overlay:0,u_overlay_scale:B}),Lo=ue=>({u_matrix:ue}),ko=(ue,w,B,Q)=>({u_matrix:ue,u_extrude_scale:In(w,1,B),u_intensity:Q}),Ds=(ue,w,B,Q)=>{let ee=a.H();a.aP(ee,0,ue.width,ue.height,0,0,1);let le=ue.context.gl;return{u_matrix:ee,u_world:[le.drawingBufferWidth,le.drawingBufferHeight],u_image:B,u_color_ramp:Q,u_opacity:w.paint.get("heatmap-opacity")}};function Fs(ue,w){let B=Math.pow(2,w.canonical.z),Q=w.canonical.y;return[new a.Z(0,Q/B).toLngLat().lat,new a.Z(0,(Q+1)/B).toLngLat().lat]}let ll=(ue,w,B,Q)=>{let ee=ue.transform;return{u_matrix:As(ue,w,B,Q),u_ratio:1/In(w,1,ee.zoom),u_device_pixel_ratio:ue.pixelRatio,u_units_to_pixels:[1/ee.pixelsToGLUnits[0],1/ee.pixelsToGLUnits[1]]}},ul=(ue,w,B,Q,ee)=>a.e(ll(ue,w,B,ee),{u_image:0,u_image_height:Q}),zl=(ue,w,B,Q,ee)=>{let le=ue.transform,qe=il(w,le);return{u_matrix:As(ue,w,B,ee),u_texsize:w.imageAtlasTexture.size,u_ratio:1/In(w,1,le.zoom),u_device_pixel_ratio:ue.pixelRatio,u_image:0,u_scale:[qe,Q.fromScale,Q.toScale],u_fade:Q.t,u_units_to_pixels:[1/le.pixelsToGLUnits[0],1/le.pixelsToGLUnits[1]]}},us=(ue,w,B,Q,ee,le)=>{let qe=ue.lineAtlas,Xe=il(w,ue.transform),ot=B.layout.get("line-cap")==="round",Tt=qe.getDash(Q.from,ot),Yt=qe.getDash(Q.to,ot),Kt=Tt.width*ee.fromScale,xr=Yt.width*ee.toScale;return a.e(ll(ue,w,B,le),{u_patternscale_a:[Xe/Kt,-Tt.height/2],u_patternscale_b:[Xe/xr,-Yt.height/2],u_sdfgamma:qe.width/(256*Math.min(Kt,xr)*ue.pixelRatio)/2,u_image:0,u_tex_y_a:Tt.y,u_tex_y_b:Yt.y,u_mix:ee.t})};function il(ue,w){return 1/In(ue,1,w.tileZoom)}function As(ue,w,B,Q){return ue.translatePosMatrix(Q?Q.posMatrix:w.tileID.posMatrix,w,B.paint.get("line-translate"),B.paint.get("line-translate-anchor"))}let cl=(ue,w,B,Q,ee)=>{return{u_matrix:ue,u_tl_parent:w,u_scale_parent:B,u_buffer_scale:1,u_fade_t:Q.mix,u_opacity:Q.opacity*ee.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:ee.paint.get("raster-brightness-min"),u_brightness_high:ee.paint.get("raster-brightness-max"),u_saturation_factor:(qe=ee.paint.get("raster-saturation"),qe>0?1-1/(1.001-qe):-qe),u_contrast_factor:(le=ee.paint.get("raster-contrast"),le>0?1/(1-le):1+le),u_spin_weights:Ks(ee.paint.get("raster-hue-rotate"))};var le,qe};function Ks(ue){ue*=Math.PI/180;let w=Math.sin(ue),B=Math.cos(ue);return[(2*B+1)/3,(-Math.sqrt(3)*w-B+1)/3,(Math.sqrt(3)*w-B+1)/3]}let zs=(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir)=>{let ve=qe.transform;return{u_is_size_zoom_constant:+(ue==="constant"||ue==="source"),u_is_size_feature_constant:+(ue==="constant"||ue==="camera"),u_size_t:w?w.uSizeT:0,u_size:w?w.uSize:0,u_camera_to_center_distance:ve.cameraToCenterDistance,u_pitch:ve.pitch/360*2*Math.PI,u_rotate_symbol:+B,u_aspect_ratio:ve.width/ve.height,u_fade_change:qe.options.fadeDuration?qe.symbolFadeChange:1,u_matrix:Xe,u_label_plane_matrix:ot,u_coord_matrix:Tt,u_is_text:+Kt,u_pitch_with_map:+Q,u_is_along_line:ee,u_is_variable_anchor:le,u_texsize:xr,u_texture:0,u_translation:Yt,u_pitched_scale:Ir}},Io=(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir,ve)=>{let be=qe.transform;return a.e(zs(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,ve),{u_gamma_scale:Q?Math.cos(be._pitch)*be.cameraToCenterDistance:1,u_device_pixel_ratio:qe.pixelRatio,u_is_halo:+Ir})},ls=(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir)=>a.e(Io(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,!0,Kt,!0,Ir),{u_texsize_icon:xr,u_texture_icon:1}),Zl=(ue,w,B)=>({u_matrix:ue,u_opacity:w,u_color:B}),Su=(ue,w,B,Q,ee,le)=>a.e(function(qe,Xe,ot,Tt){let Yt=ot.imageManager.getPattern(qe.from.toString()),Kt=ot.imageManager.getPattern(qe.to.toString()),{width:xr,height:Ir}=ot.imageManager.getPixelSize(),ve=Math.pow(2,Tt.tileID.overscaledZ),be=Tt.tileSize*Math.pow(2,ot.transform.tileZoom)/ve,De=be*(Tt.tileID.canonical.x+Tt.tileID.wrap*ve),Be=be*Tt.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:Yt.tl,u_pattern_br_a:Yt.br,u_pattern_tl_b:Kt.tl,u_pattern_br_b:Kt.br,u_texsize:[xr,Ir],u_mix:Xe.t,u_pattern_size_a:Yt.displaySize,u_pattern_size_b:Kt.displaySize,u_scale_a:Xe.fromScale,u_scale_b:Xe.toScale,u_tile_units_to_pixels:1/In(Tt,1,ot.transform.tileZoom),u_pixel_coord_upper:[De>>16,Be>>16],u_pixel_coord_lower:[65535&De,65535&Be]}}(Q,le,B,ee),{u_matrix:ue,u_opacity:w}),nc={fillExtrusion:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_lightpos:new a.aN(ue,w.u_lightpos),u_lightintensity:new a.aI(ue,w.u_lightintensity),u_lightcolor:new a.aN(ue,w.u_lightcolor),u_vertical_gradient:new a.aI(ue,w.u_vertical_gradient),u_opacity:new a.aI(ue,w.u_opacity)}),fillExtrusionPattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_lightpos:new a.aN(ue,w.u_lightpos),u_lightintensity:new a.aI(ue,w.u_lightintensity),u_lightcolor:new a.aN(ue,w.u_lightcolor),u_vertical_gradient:new a.aI(ue,w.u_vertical_gradient),u_height_factor:new a.aI(ue,w.u_height_factor),u_image:new a.aH(ue,w.u_image),u_texsize:new a.aO(ue,w.u_texsize),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade),u_opacity:new a.aI(ue,w.u_opacity)}),fill:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix)}),fillPattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_image:new a.aH(ue,w.u_image),u_texsize:new a.aO(ue,w.u_texsize),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade)}),fillOutline:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_world:new a.aO(ue,w.u_world)}),fillOutlinePattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_world:new a.aO(ue,w.u_world),u_image:new a.aH(ue,w.u_image),u_texsize:new a.aO(ue,w.u_texsize),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade)}),circle:(ue,w)=>({u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_scale_with_map:new a.aH(ue,w.u_scale_with_map),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_extrude_scale:new a.aO(ue,w.u_extrude_scale),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_matrix:new a.aJ(ue,w.u_matrix)}),collisionBox:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_pixel_extrude_scale:new a.aO(ue,w.u_pixel_extrude_scale)}),collisionCircle:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_inv_matrix:new a.aJ(ue,w.u_inv_matrix),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_viewport_size:new a.aO(ue,w.u_viewport_size)}),debug:(ue,w)=>({u_color:new a.aL(ue,w.u_color),u_matrix:new a.aJ(ue,w.u_matrix),u_overlay:new a.aH(ue,w.u_overlay),u_overlay_scale:new a.aI(ue,w.u_overlay_scale)}),clippingMask:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix)}),heatmap:(ue,w)=>({u_extrude_scale:new a.aI(ue,w.u_extrude_scale),u_intensity:new a.aI(ue,w.u_intensity),u_matrix:new a.aJ(ue,w.u_matrix)}),heatmapTexture:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_world:new a.aO(ue,w.u_world),u_image:new a.aH(ue,w.u_image),u_color_ramp:new a.aH(ue,w.u_color_ramp),u_opacity:new a.aI(ue,w.u_opacity)}),hillshade:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_image:new a.aH(ue,w.u_image),u_latrange:new a.aO(ue,w.u_latrange),u_light:new a.aO(ue,w.u_light),u_shadow:new a.aL(ue,w.u_shadow),u_highlight:new a.aL(ue,w.u_highlight),u_accent:new a.aL(ue,w.u_accent)}),hillshadePrepare:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_image:new a.aH(ue,w.u_image),u_dimension:new a.aO(ue,w.u_dimension),u_zoom:new a.aI(ue,w.u_zoom),u_unpack:new a.aK(ue,w.u_unpack)}),line:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels)}),lineGradient:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels),u_image:new a.aH(ue,w.u_image),u_image_height:new a.aI(ue,w.u_image_height)}),linePattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_texsize:new a.aO(ue,w.u_texsize),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_image:new a.aH(ue,w.u_image),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade)}),lineSDF:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels),u_patternscale_a:new a.aO(ue,w.u_patternscale_a),u_patternscale_b:new a.aO(ue,w.u_patternscale_b),u_sdfgamma:new a.aI(ue,w.u_sdfgamma),u_image:new a.aH(ue,w.u_image),u_tex_y_a:new a.aI(ue,w.u_tex_y_a),u_tex_y_b:new a.aI(ue,w.u_tex_y_b),u_mix:new a.aI(ue,w.u_mix)}),raster:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_tl_parent:new a.aO(ue,w.u_tl_parent),u_scale_parent:new a.aI(ue,w.u_scale_parent),u_buffer_scale:new a.aI(ue,w.u_buffer_scale),u_fade_t:new a.aI(ue,w.u_fade_t),u_opacity:new a.aI(ue,w.u_opacity),u_image0:new a.aH(ue,w.u_image0),u_image1:new a.aH(ue,w.u_image1),u_brightness_low:new a.aI(ue,w.u_brightness_low),u_brightness_high:new a.aI(ue,w.u_brightness_high),u_saturation_factor:new a.aI(ue,w.u_saturation_factor),u_contrast_factor:new a.aI(ue,w.u_contrast_factor),u_spin_weights:new a.aN(ue,w.u_spin_weights)}),symbolIcon:(ue,w)=>({u_is_size_zoom_constant:new a.aH(ue,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(ue,w.u_is_size_feature_constant),u_size_t:new a.aI(ue,w.u_size_t),u_size:new a.aI(ue,w.u_size),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_pitch:new a.aI(ue,w.u_pitch),u_rotate_symbol:new a.aH(ue,w.u_rotate_symbol),u_aspect_ratio:new a.aI(ue,w.u_aspect_ratio),u_fade_change:new a.aI(ue,w.u_fade_change),u_matrix:new a.aJ(ue,w.u_matrix),u_label_plane_matrix:new a.aJ(ue,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(ue,w.u_coord_matrix),u_is_text:new a.aH(ue,w.u_is_text),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_is_along_line:new a.aH(ue,w.u_is_along_line),u_is_variable_anchor:new a.aH(ue,w.u_is_variable_anchor),u_texsize:new a.aO(ue,w.u_texsize),u_texture:new a.aH(ue,w.u_texture),u_translation:new a.aO(ue,w.u_translation),u_pitched_scale:new a.aI(ue,w.u_pitched_scale)}),symbolSDF:(ue,w)=>({u_is_size_zoom_constant:new a.aH(ue,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(ue,w.u_is_size_feature_constant),u_size_t:new a.aI(ue,w.u_size_t),u_size:new a.aI(ue,w.u_size),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_pitch:new a.aI(ue,w.u_pitch),u_rotate_symbol:new a.aH(ue,w.u_rotate_symbol),u_aspect_ratio:new a.aI(ue,w.u_aspect_ratio),u_fade_change:new a.aI(ue,w.u_fade_change),u_matrix:new a.aJ(ue,w.u_matrix),u_label_plane_matrix:new a.aJ(ue,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(ue,w.u_coord_matrix),u_is_text:new a.aH(ue,w.u_is_text),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_is_along_line:new a.aH(ue,w.u_is_along_line),u_is_variable_anchor:new a.aH(ue,w.u_is_variable_anchor),u_texsize:new a.aO(ue,w.u_texsize),u_texture:new a.aH(ue,w.u_texture),u_gamma_scale:new a.aI(ue,w.u_gamma_scale),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_is_halo:new a.aH(ue,w.u_is_halo),u_translation:new a.aO(ue,w.u_translation),u_pitched_scale:new a.aI(ue,w.u_pitched_scale)}),symbolTextAndIcon:(ue,w)=>({u_is_size_zoom_constant:new a.aH(ue,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(ue,w.u_is_size_feature_constant),u_size_t:new a.aI(ue,w.u_size_t),u_size:new a.aI(ue,w.u_size),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_pitch:new a.aI(ue,w.u_pitch),u_rotate_symbol:new a.aH(ue,w.u_rotate_symbol),u_aspect_ratio:new a.aI(ue,w.u_aspect_ratio),u_fade_change:new a.aI(ue,w.u_fade_change),u_matrix:new a.aJ(ue,w.u_matrix),u_label_plane_matrix:new a.aJ(ue,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(ue,w.u_coord_matrix),u_is_text:new a.aH(ue,w.u_is_text),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_is_along_line:new a.aH(ue,w.u_is_along_line),u_is_variable_anchor:new a.aH(ue,w.u_is_variable_anchor),u_texsize:new a.aO(ue,w.u_texsize),u_texsize_icon:new a.aO(ue,w.u_texsize_icon),u_texture:new a.aH(ue,w.u_texture),u_texture_icon:new a.aH(ue,w.u_texture_icon),u_gamma_scale:new a.aI(ue,w.u_gamma_scale),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_is_halo:new a.aH(ue,w.u_is_halo),u_translation:new a.aO(ue,w.u_translation),u_pitched_scale:new a.aI(ue,w.u_pitched_scale)}),background:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_opacity:new a.aI(ue,w.u_opacity),u_color:new a.aL(ue,w.u_color)}),backgroundPattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_opacity:new a.aI(ue,w.u_opacity),u_image:new a.aH(ue,w.u_image),u_pattern_tl_a:new a.aO(ue,w.u_pattern_tl_a),u_pattern_br_a:new a.aO(ue,w.u_pattern_br_a),u_pattern_tl_b:new a.aO(ue,w.u_pattern_tl_b),u_pattern_br_b:new a.aO(ue,w.u_pattern_br_b),u_texsize:new a.aO(ue,w.u_texsize),u_mix:new a.aI(ue,w.u_mix),u_pattern_size_a:new a.aO(ue,w.u_pattern_size_a),u_pattern_size_b:new a.aO(ue,w.u_pattern_size_b),u_scale_a:new a.aI(ue,w.u_scale_a),u_scale_b:new a.aI(ue,w.u_scale_b),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_tile_units_to_pixels:new a.aI(ue,w.u_tile_units_to_pixels)}),terrain:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_texture:new a.aH(ue,w.u_texture),u_ele_delta:new a.aI(ue,w.u_ele_delta),u_fog_matrix:new a.aJ(ue,w.u_fog_matrix),u_fog_color:new a.aL(ue,w.u_fog_color),u_fog_ground_blend:new a.aI(ue,w.u_fog_ground_blend),u_fog_ground_blend_opacity:new a.aI(ue,w.u_fog_ground_blend_opacity),u_horizon_color:new a.aL(ue,w.u_horizon_color),u_horizon_fog_blend:new a.aI(ue,w.u_horizon_fog_blend)}),terrainDepth:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ele_delta:new a.aI(ue,w.u_ele_delta)}),terrainCoords:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_texture:new a.aH(ue,w.u_texture),u_terrain_coords_id:new a.aI(ue,w.u_terrain_coords_id),u_ele_delta:new a.aI(ue,w.u_ele_delta)}),sky:(ue,w)=>({u_sky_color:new a.aL(ue,w.u_sky_color),u_horizon_color:new a.aL(ue,w.u_horizon_color),u_horizon:new a.aI(ue,w.u_horizon),u_sky_horizon_blend:new a.aI(ue,w.u_sky_horizon_blend)})};class bs{constructor(w,B,Q){this.context=w;let ee=w.gl;this.buffer=ee.createBuffer(),this.dynamicDraw=!!Q,this.context.unbindVAO(),w.bindElementBuffer.set(this.buffer),ee.bufferData(ee.ELEMENT_ARRAY_BUFFER,B.arrayBuffer,this.dynamicDraw?ee.DYNAMIC_DRAW:ee.STATIC_DRAW),this.dynamicDraw||delete B.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(w){let B=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),B.bufferSubData(B.ELEMENT_ARRAY_BUFFER,0,w.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let Rn={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class _a{constructor(w,B,Q,ee){this.length=B.length,this.attributes=Q,this.itemSize=B.bytesPerElement,this.dynamicDraw=ee,this.context=w;let le=w.gl;this.buffer=le.createBuffer(),w.bindVertexBuffer.set(this.buffer),le.bufferData(le.ARRAY_BUFFER,B.arrayBuffer,this.dynamicDraw?le.DYNAMIC_DRAW:le.STATIC_DRAW),this.dynamicDraw||delete B.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(w){if(w.length!==this.length)throw new Error(`Length of new data is ${w.length}, which doesn't match current length of ${this.length}`);let B=this.context.gl;this.bind(),B.bufferSubData(B.ARRAY_BUFFER,0,w.arrayBuffer)}enableAttributes(w,B){for(let Q=0;Q0){let Ht=a.H();a.aQ(Ht,We.placementInvProjMatrix,ue.transform.glCoordMatrix),a.aQ(Ht,Ht,We.placementViewportMatrix),ot.push({circleArray:Ft,circleOffset:Yt,transform:et.posMatrix,invTransform:Ht,coord:et}),Tt+=Ft.length/4,Yt=Tt}it&&Xe.draw(le,qe.LINES,Po.disabled,Yo.disabled,ue.colorModeForRenderPass(),Pa.disabled,{u_matrix:et.posMatrix,u_pixel_extrude_scale:[1/(Kt=ue.transform).width,1/Kt.height]},ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(et),B.id,it.layoutVertexBuffer,it.indexBuffer,it.segments,null,ue.transform.zoom,null,null,it.collisionVertexBuffer)}var Kt;if(!ee||!ot.length)return;let xr=ue.useProgram("collisionCircle"),Ir=new a.aR;Ir.resize(4*Tt),Ir._trim();let ve=0;for(let Be of ot)for(let et=0;et=0&&(Be[We.associatedIconIndex]={shiftedAnchor:Kn,angle:Ta})}else pi(We.numGlyphs,be)}if(Tt){De.clear();let et=ue.icon.placedSymbolArray;for(let We=0;Weue.style.map.terrain.getElevation(Wr,nt,jt):null,kt=B.layout.get("text-rotation-alignment")==="map";je(Pi,Wr.posMatrix,ue,ee,Ul,au,Be,Tt,kt,be,Wr.toUnwrapped(),ve.width,ve.height,Js,Ye)}let Tl=Wr.posMatrix,Al=ee&&dr||dc,X=et||Al?bl:Ul,se=Lu,Te=Cn&&B.paint.get(ee?"text-halo-width":"icon-halo-width").constantOr(1)!==0,Ne;Ne=Cn?Pi.iconsInText?ls(Kn.kind,$a,We,Be,et,Al,ue,Tl,X,se,Js,Qa,Ts,Or):Io(Kn.kind,$a,We,Be,et,Al,ue,Tl,X,se,Js,ee,Qa,!0,Or):zs(Kn.kind,$a,We,Be,et,Al,ue,Tl,X,se,Js,ee,Qa,Or);let He={program:fa,buffers:cn,uniformValues:Ne,atlasTexture:mo,atlasTextureIcon:wo,atlasInterpolation:Bo,atlasInterpolationIcon:Ps,isSDF:Cn,hasHalo:Te};if(Ft&&Pi.canOverlap){Ht=!0;let Ye=cn.segments.get();for(let kt of Ye)Sr.push({segments:new a.a0([kt]),sortKey:kt.sortKey,state:He,terrainData:Co})}else Sr.push({segments:cn.segments,sortKey:0,state:He,terrainData:Co})}Ht&&Sr.sort((Wr,ni)=>Wr.sortKey-ni.sortKey);for(let Wr of Sr){let ni=Wr.state;if(xr.activeTexture.set(Ir.TEXTURE0),ni.atlasTexture.bind(ni.atlasInterpolation,Ir.CLAMP_TO_EDGE),ni.atlasTextureIcon&&(xr.activeTexture.set(Ir.TEXTURE1),ni.atlasTextureIcon&&ni.atlasTextureIcon.bind(ni.atlasInterpolationIcon,Ir.CLAMP_TO_EDGE)),ni.isSDF){let Pi=ni.uniformValues;ni.hasHalo&&(Pi.u_is_halo=1,Qf(ni.buffers,Wr.segments,B,ue,ni.program,tr,Yt,Kt,Pi,Wr.terrainData)),Pi.u_is_halo=0}Qf(ni.buffers,Wr.segments,B,ue,ni.program,tr,Yt,Kt,ni.uniformValues,Wr.terrainData)}}function Qf(ue,w,B,Q,ee,le,qe,Xe,ot,Tt){let Yt=Q.context;ee.draw(Yt,Yt.gl.TRIANGLES,le,qe,Xe,Pa.disabled,ot,Tt,B.id,ue.layoutVertexBuffer,ue.indexBuffer,w,B.paint,Q.transform.zoom,ue.programConfigurations.get(B.id),ue.dynamicLayoutVertexBuffer,ue.opacityVertexBuffer)}function _f(ue,w,B,Q){let ee=ue.context,le=ee.gl,qe=Yo.disabled,Xe=new qs([le.ONE,le.ONE],a.aM.transparent,[!0,!0,!0,!0]),ot=w.getBucket(B);if(!ot)return;let Tt=Q.key,Yt=B.heatmapFbos.get(Tt);Yt||(Yt=eh(ee,w.tileSize,w.tileSize),B.heatmapFbos.set(Tt,Yt)),ee.bindFramebuffer.set(Yt.framebuffer),ee.viewport.set([0,0,w.tileSize,w.tileSize]),ee.clear({color:a.aM.transparent});let Kt=ot.programConfigurations.get(B.id),xr=ue.useProgram("heatmap",Kt),Ir=ue.style.map.terrain.getTerrainData(Q);xr.draw(ee,le.TRIANGLES,Po.disabled,qe,Xe,Pa.disabled,ko(Q.posMatrix,w,ue.transform.zoom,B.paint.get("heatmap-intensity")),Ir,B.id,ot.layoutVertexBuffer,ot.indexBuffer,ot.segments,B.paint,ue.transform.zoom,Kt)}function Yc(ue,w,B){let Q=ue.context,ee=Q.gl;Q.setColorMode(ue.colorModeForRenderPass());let le=th(Q,w),qe=B.key,Xe=w.heatmapFbos.get(qe);Xe&&(Q.activeTexture.set(ee.TEXTURE0),ee.bindTexture(ee.TEXTURE_2D,Xe.colorAttachment.get()),Q.activeTexture.set(ee.TEXTURE1),le.bind(ee.LINEAR,ee.CLAMP_TO_EDGE),ue.useProgram("heatmapTexture").draw(Q,ee.TRIANGLES,Po.disabled,Yo.disabled,ue.colorModeForRenderPass(),Pa.disabled,Ds(ue,w,0,1),null,w.id,ue.rasterBoundsBuffer,ue.quadTriangleIndexBuffer,ue.rasterBoundsSegments,w.paint,ue.transform.zoom),Xe.destroy(),w.heatmapFbos.delete(qe))}function eh(ue,w,B){var Q,ee;let le=ue.gl,qe=le.createTexture();le.bindTexture(le.TEXTURE_2D,qe),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_S,le.CLAMP_TO_EDGE),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_T,le.CLAMP_TO_EDGE),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MIN_FILTER,le.LINEAR),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MAG_FILTER,le.LINEAR);let Xe=(Q=ue.HALF_FLOAT)!==null&&Q!==void 0?Q:le.UNSIGNED_BYTE,ot=(ee=ue.RGBA16F)!==null&&ee!==void 0?ee:le.RGBA;le.texImage2D(le.TEXTURE_2D,0,ot,w,B,0,le.RGBA,Xe,null);let Tt=ue.createFramebuffer(w,B,!1,!1);return Tt.colorAttachment.set(qe),Tt}function th(ue,w){return w.colorRampTexture||(w.colorRampTexture=new g(ue,w.colorRamp,ue.gl.RGBA)),w.colorRampTexture}function ju(ue,w,B,Q,ee){if(!B||!Q||!Q.imageAtlas)return;let le=Q.imageAtlas.patternPositions,qe=le[B.to.toString()],Xe=le[B.from.toString()];if(!qe&&Xe&&(qe=Xe),!Xe&&qe&&(Xe=qe),!qe||!Xe){let ot=ee.getPaintProperty(w);qe=le[ot],Xe=le[ot]}qe&&Xe&&ue.setConstantPatternPositions(qe,Xe)}function Hf(ue,w,B,Q,ee,le,qe){let Xe=ue.context.gl,ot="fill-pattern",Tt=B.paint.get(ot),Yt=Tt&&Tt.constantOr(1),Kt=B.getCrossfadeParameters(),xr,Ir,ve,be,De;qe?(Ir=Yt&&!B.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",xr=Xe.LINES):(Ir=Yt?"fillPattern":"fill",xr=Xe.TRIANGLES);let Be=Tt.constantOr(null);for(let et of Q){let We=w.getTile(et);if(Yt&&!We.patternsLoaded())continue;let it=We.getBucket(B);if(!it)continue;let Ft=it.programConfigurations.get(B.id),Ht=ue.useProgram(Ir,Ft),tr=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(et);Yt&&(ue.context.activeTexture.set(Xe.TEXTURE0),We.imageAtlasTexture.bind(Xe.LINEAR,Xe.CLAMP_TO_EDGE),Ft.updatePaintBuffers(Kt)),ju(Ft,ot,Be,We,B);let dr=tr?et:null,Sr=ue.translatePosMatrix(dr?dr.posMatrix:et.posMatrix,We,B.paint.get("fill-translate"),B.paint.get("fill-translate-anchor"));if(qe){be=it.indexBuffer2,De=it.segments2;let Or=[Xe.drawingBufferWidth,Xe.drawingBufferHeight];ve=Ir==="fillOutlinePattern"&&Yt?Ma(Sr,ue,Kt,We,Or):Jn(Sr,Or)}else be=it.indexBuffer,De=it.segments,ve=Yt?ya(Sr,ue,Kt,We):_n(Sr);Ht.draw(ue.context,xr,ee,ue.stencilModeForClipping(et),le,Pa.disabled,ve,tr,B.id,it.layoutVertexBuffer,be,De,B.paint,ue.transform.zoom,Ft)}}function cc(ue,w,B,Q,ee,le,qe){let Xe=ue.context,ot=Xe.gl,Tt="fill-extrusion-pattern",Yt=B.paint.get(Tt),Kt=Yt.constantOr(1),xr=B.getCrossfadeParameters(),Ir=B.paint.get("fill-extrusion-opacity"),ve=Yt.constantOr(null);for(let be of Q){let De=w.getTile(be),Be=De.getBucket(B);if(!Be)continue;let et=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(be),We=Be.programConfigurations.get(B.id),it=ue.useProgram(Kt?"fillExtrusionPattern":"fillExtrusion",We);Kt&&(ue.context.activeTexture.set(ot.TEXTURE0),De.imageAtlasTexture.bind(ot.LINEAR,ot.CLAMP_TO_EDGE),We.updatePaintBuffers(xr)),ju(We,Tt,ve,De,B);let Ft=ue.translatePosMatrix(be.posMatrix,De,B.paint.get("fill-extrusion-translate"),B.paint.get("fill-extrusion-translate-anchor")),Ht=B.paint.get("fill-extrusion-vertical-gradient"),tr=Kt?Li(Ft,ue,Ht,Ir,be,xr,De):Mn(Ft,ue,Ht,Ir);it.draw(Xe,Xe.gl.TRIANGLES,ee,le,qe,Pa.backCCW,tr,et,B.id,Be.layoutVertexBuffer,Be.indexBuffer,Be.segments,B.paint,ue.transform.zoom,We,ue.style.map.terrain&&Be.centroidVertexBuffer)}}function of(ue,w,B,Q,ee,le,qe){let Xe=ue.context,ot=Xe.gl,Tt=B.fbo;if(!Tt)return;let Yt=ue.useProgram("hillshade"),Kt=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(w);Xe.activeTexture.set(ot.TEXTURE0),ot.bindTexture(ot.TEXTURE_2D,Tt.colorAttachment.get()),Yt.draw(Xe,ot.TRIANGLES,ee,le,qe,Pa.disabled,((xr,Ir,ve,be)=>{let De=ve.paint.get("hillshade-shadow-color"),Be=ve.paint.get("hillshade-highlight-color"),et=ve.paint.get("hillshade-accent-color"),We=ve.paint.get("hillshade-illumination-direction")*(Math.PI/180);ve.paint.get("hillshade-illumination-anchor")==="viewport"&&(We-=xr.transform.angle);let it=!xr.options.moving;return{u_matrix:be?be.posMatrix:xr.transform.calculatePosMatrix(Ir.tileID.toUnwrapped(),it),u_image:0,u_latrange:Fs(0,Ir.tileID),u_light:[ve.paint.get("hillshade-exaggeration"),We],u_shadow:De,u_highlight:Be,u_accent:et}})(ue,B,Q,Kt?w:null),Kt,Q.id,ue.rasterBoundsBuffer,ue.quadTriangleIndexBuffer,ue.rasterBoundsSegments)}function Nl(ue,w,B,Q,ee,le){let qe=ue.context,Xe=qe.gl,ot=w.dem;if(ot&&ot.data){let Tt=ot.dim,Yt=ot.stride,Kt=ot.getPixels();if(qe.activeTexture.set(Xe.TEXTURE1),qe.pixelStoreUnpackPremultiplyAlpha.set(!1),w.demTexture=w.demTexture||ue.getTileTexture(Yt),w.demTexture){let Ir=w.demTexture;Ir.update(Kt,{premultiply:!1}),Ir.bind(Xe.NEAREST,Xe.CLAMP_TO_EDGE)}else w.demTexture=new g(qe,Kt,Xe.RGBA,{premultiply:!1}),w.demTexture.bind(Xe.NEAREST,Xe.CLAMP_TO_EDGE);qe.activeTexture.set(Xe.TEXTURE0);let xr=w.fbo;if(!xr){let Ir=new g(qe,{width:Tt,height:Tt,data:null},Xe.RGBA);Ir.bind(Xe.LINEAR,Xe.CLAMP_TO_EDGE),xr=w.fbo=qe.createFramebuffer(Tt,Tt,!0,!1),xr.colorAttachment.set(Ir.texture)}qe.bindFramebuffer.set(xr.framebuffer),qe.viewport.set([0,0,Tt,Tt]),ue.useProgram("hillshadePrepare").draw(qe,Xe.TRIANGLES,Q,ee,le,Pa.disabled,((Ir,ve)=>{let be=ve.stride,De=a.H();return a.aP(De,0,a.X,-a.X,0,0,1),a.J(De,De,[0,-a.X,0]),{u_matrix:De,u_image:1,u_dimension:[be,be],u_zoom:Ir.overscaledZ,u_unpack:ve.getUnpackVector()}})(w.tileID,ot),null,B.id,ue.rasterBoundsBuffer,ue.quadTriangleIndexBuffer,ue.rasterBoundsSegments),w.needsHillshadePrepare=!1}}function Kc(ue,w,B,Q,ee,le){let qe=Q.paint.get("raster-fade-duration");if(!le&&qe>0){let Xe=u.now(),ot=(Xe-ue.timeAdded)/qe,Tt=w?(Xe-w.timeAdded)/qe:-1,Yt=B.getSource(),Kt=ee.coveringZoomLevel({tileSize:Yt.tileSize,roundZoom:Yt.roundZoom}),xr=!w||Math.abs(w.tileID.overscaledZ-Kt)>Math.abs(ue.tileID.overscaledZ-Kt),Ir=xr&&ue.refreshedUponExpiration?1:a.ac(xr?ot:1-Tt,0,1);return ue.refreshedUponExpiration&&ot>=1&&(ue.refreshedUponExpiration=!1),w?{opacity:1,mix:1-Ir}:{opacity:Ir,mix:0}}return{opacity:1,mix:0}}let Rc=new a.aM(1,0,0,1),gs=new a.aM(0,1,0,1),jf=new a.aM(0,0,1,1),Gh=new a.aM(1,0,1,1),rh=new a.aM(0,1,1,1);function sf(ue,w,B,Q){Mu(ue,0,w+B/2,ue.transform.width,B,Q)}function Th(ue,w,B,Q){Mu(ue,w-B/2,0,B,ue.transform.height,Q)}function Mu(ue,w,B,Q,ee,le){let qe=ue.context,Xe=qe.gl;Xe.enable(Xe.SCISSOR_TEST),Xe.scissor(w*ue.pixelRatio,B*ue.pixelRatio,Q*ue.pixelRatio,ee*ue.pixelRatio),qe.clear({color:le}),Xe.disable(Xe.SCISSOR_TEST)}function ih(ue,w,B){let Q=ue.context,ee=Q.gl,le=B.posMatrix,qe=ue.useProgram("debug"),Xe=Po.disabled,ot=Yo.disabled,Tt=ue.colorModeForRenderPass(),Yt="$debug",Kt=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(B);Q.activeTexture.set(ee.TEXTURE0);let xr=w.getTileByID(B.key).latestRawTileData,Ir=Math.floor((xr&&xr.byteLength||0)/1024),ve=w.getTile(B).tileSize,be=512/Math.min(ve,512)*(B.overscaledZ/ue.transform.zoom)*.5,De=B.canonical.toString();B.overscaledZ!==B.canonical.z&&(De+=` => ${B.overscaledZ}`),function(Be,et){Be.initDebugOverlayCanvas();let We=Be.debugOverlayCanvas,it=Be.context.gl,Ft=Be.debugOverlayCanvas.getContext("2d");Ft.clearRect(0,0,We.width,We.height),Ft.shadowColor="white",Ft.shadowBlur=2,Ft.lineWidth=1.5,Ft.strokeStyle="white",Ft.textBaseline="top",Ft.font="bold 36px Open Sans, sans-serif",Ft.fillText(et,5,5),Ft.strokeText(et,5,5),Be.debugOverlayTexture.update(We),Be.debugOverlayTexture.bind(it.LINEAR,it.CLAMP_TO_EDGE)}(ue,`${De} ${Ir}kB`),qe.draw(Q,ee.TRIANGLES,Xe,ot,qs.alphaBlended,Pa.disabled,po(le,a.aM.transparent,be),null,Yt,ue.debugBuffer,ue.quadTriangleIndexBuffer,ue.debugSegments),qe.draw(Q,ee.LINE_STRIP,Xe,ot,Tt,Pa.disabled,po(le,a.aM.red),Kt,Yt,ue.debugBuffer,ue.tileBorderIndexBuffer,ue.debugSegments)}function js(ue,w,B){let Q=ue.context,ee=Q.gl,le=ue.colorModeForRenderPass(),qe=new Po(ee.LEQUAL,Po.ReadWrite,ue.depthRangeFor3D),Xe=ue.useProgram("terrain"),ot=w.getTerrainMesh();Q.bindFramebuffer.set(null),Q.viewport.set([0,0,ue.width,ue.height]);for(let Tt of B){let Yt=ue.renderToTexture.getTexture(Tt),Kt=w.getTerrainData(Tt.tileID);Q.activeTexture.set(ee.TEXTURE0),ee.bindTexture(ee.TEXTURE_2D,Yt.texture);let xr=ue.transform.calculatePosMatrix(Tt.tileID.toUnwrapped()),Ir=w.getMeshFrameDelta(ue.transform.zoom),ve=ue.transform.calculateFogMatrix(Tt.tileID.toUnwrapped()),be=Jr(xr,Ir,ve,ue.style.sky,ue.transform.pitch);Xe.draw(Q,ee.TRIANGLES,qe,Yo.disabled,le,Pa.backCCW,be,Kt,"terrain",ot.vertexBuffer,ot.indexBuffer,ot.segments)}}class Eu{constructor(w,B,Q){this.vertexBuffer=w,this.indexBuffer=B,this.segments=Q}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class Dc{constructor(w,B){this.context=new ad(w),this.transform=B,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:a.an(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=mt.maxUnderzooming+mt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Wo}resize(w,B,Q){if(this.width=Math.floor(w*Q),this.height=Math.floor(B*Q),this.pixelRatio=Q,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(let ee of this.style._order)this.style._layers[ee].resize()}setup(){let w=this.context,B=new a.aX;B.emplaceBack(0,0),B.emplaceBack(a.X,0),B.emplaceBack(0,a.X),B.emplaceBack(a.X,a.X),this.tileExtentBuffer=w.createVertexBuffer(B,vo.members),this.tileExtentSegments=a.a0.simpleSegment(0,0,4,2);let Q=new a.aX;Q.emplaceBack(0,0),Q.emplaceBack(a.X,0),Q.emplaceBack(0,a.X),Q.emplaceBack(a.X,a.X),this.debugBuffer=w.createVertexBuffer(Q,vo.members),this.debugSegments=a.a0.simpleSegment(0,0,4,5);let ee=new a.$;ee.emplaceBack(0,0,0,0),ee.emplaceBack(a.X,0,a.X,0),ee.emplaceBack(0,a.X,0,a.X),ee.emplaceBack(a.X,a.X,a.X,a.X),this.rasterBoundsBuffer=w.createVertexBuffer(ee,lt.members),this.rasterBoundsSegments=a.a0.simpleSegment(0,0,4,2);let le=new a.aX;le.emplaceBack(0,0),le.emplaceBack(1,0),le.emplaceBack(0,1),le.emplaceBack(1,1),this.viewportBuffer=w.createVertexBuffer(le,vo.members),this.viewportSegments=a.a0.simpleSegment(0,0,4,2);let qe=new a.aZ;qe.emplaceBack(0),qe.emplaceBack(1),qe.emplaceBack(3),qe.emplaceBack(2),qe.emplaceBack(0),this.tileBorderIndexBuffer=w.createIndexBuffer(qe);let Xe=new a.aY;Xe.emplaceBack(0,1,2),Xe.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=w.createIndexBuffer(Xe);let ot=this.context.gl;this.stencilClearMode=new Yo({func:ot.ALWAYS,mask:0},0,255,ot.ZERO,ot.ZERO,ot.ZERO)}clearStencil(){let w=this.context,B=w.gl;this.nextStencilID=1,this.currentStencilSource=void 0;let Q=a.H();a.aP(Q,0,this.width,this.height,0,0,1),a.K(Q,Q,[B.drawingBufferWidth,B.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(w,B.TRIANGLES,Po.disabled,this.stencilClearMode,qs.disabled,Pa.disabled,Lo(Q),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(w,B){if(this.currentStencilSource===w.source||!w.isTileClipped()||!B||!B.length)return;this.currentStencilSource=w.source;let Q=this.context,ee=Q.gl;this.nextStencilID+B.length>256&&this.clearStencil(),Q.setColorMode(qs.disabled),Q.setDepthMode(Po.disabled);let le=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(let qe of B){let Xe=this._tileClippingMaskIDs[qe.key]=this.nextStencilID++,ot=this.style.map.terrain&&this.style.map.terrain.getTerrainData(qe);le.draw(Q,ee.TRIANGLES,Po.disabled,new Yo({func:ee.ALWAYS,mask:0},Xe,255,ee.KEEP,ee.KEEP,ee.REPLACE),qs.disabled,Pa.disabled,Lo(qe.posMatrix),ot,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();let w=this.nextStencilID++,B=this.context.gl;return new Yo({func:B.NOTEQUAL,mask:255},w,255,B.KEEP,B.KEEP,B.REPLACE)}stencilModeForClipping(w){let B=this.context.gl;return new Yo({func:B.EQUAL,mask:255},this._tileClippingMaskIDs[w.key],0,B.KEEP,B.KEEP,B.REPLACE)}stencilConfigForOverlap(w){let B=this.context.gl,Q=w.sort((qe,Xe)=>Xe.overscaledZ-qe.overscaledZ),ee=Q[Q.length-1].overscaledZ,le=Q[0].overscaledZ-ee+1;if(le>1){this.currentStencilSource=void 0,this.nextStencilID+le>256&&this.clearStencil();let qe={};for(let Xe=0;Xe({u_sky_color:Be.properties.get("sky-color"),u_horizon_color:Be.properties.get("horizon-color"),u_horizon:(et.height/2+et.getHorizon())*We,u_sky_horizon_blend:Be.properties.get("sky-horizon-blend")*et.height/2*We}))(Tt,ot.style.map.transform,ot.pixelRatio),Ir=new Po(Kt.LEQUAL,Po.ReadWrite,[0,1]),ve=Yo.disabled,be=ot.colorModeForRenderPass(),De=ot.useProgram("sky");if(!Tt.mesh){let Be=new a.aX;Be.emplaceBack(-1,-1),Be.emplaceBack(1,-1),Be.emplaceBack(1,1),Be.emplaceBack(-1,1);let et=new a.aY;et.emplaceBack(0,1,2),et.emplaceBack(0,2,3),Tt.mesh=new Eu(Yt.createVertexBuffer(Be,vo.members),Yt.createIndexBuffer(et),a.a0.simpleSegment(0,0,Be.length,et.length))}De.draw(Yt,Kt.TRIANGLES,Ir,ve,be,Pa.disabled,xr,void 0,"sky",Tt.mesh.vertexBuffer,Tt.mesh.indexBuffer,Tt.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=B.showOverdrawInspector,this.depthRangeFor3D=[0,1-(w._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=Q.length-1;this.currentLayer>=0;this.currentLayer--){let ot=this.style._layers[Q[this.currentLayer]],Tt=ee[ot.source],Yt=le[ot.source];this._renderTileClippingMasks(ot,Yt),this.renderLayer(this,Tt,ot,Yt)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayerDe.source&&!De.isHidden(Yt)?[Tt.sourceCaches[De.source]]:[]),Ir=xr.filter(De=>De.getSource().type==="vector"),ve=xr.filter(De=>De.getSource().type!=="vector"),be=De=>{(!Kt||Kt.getSource().maxzoombe(De)),Kt||ve.forEach(De=>be(De)),Kt}(this.style,this.transform.zoom);ot&&function(Tt,Yt,Kt){for(let xr=0;xr0),ee&&(a.b0(B,Q),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(le,qe){let Xe=le.context,ot=Xe.gl,Tt=qs.unblended,Yt=new Po(ot.LEQUAL,Po.ReadWrite,[0,1]),Kt=qe.getTerrainMesh(),xr=qe.sourceCache.getRenderableTiles(),Ir=le.useProgram("terrainDepth");Xe.bindFramebuffer.set(qe.getFramebuffer("depth").framebuffer),Xe.viewport.set([0,0,le.width/devicePixelRatio,le.height/devicePixelRatio]),Xe.clear({color:a.aM.transparent,depth:1});for(let ve of xr){let be=qe.getTerrainData(ve.tileID),De={u_matrix:le.transform.calculatePosMatrix(ve.tileID.toUnwrapped()),u_ele_delta:qe.getMeshFrameDelta(le.transform.zoom)};Ir.draw(Xe,ot.TRIANGLES,Yt,Yo.disabled,Tt,Pa.backCCW,De,be,"terrain",Kt.vertexBuffer,Kt.indexBuffer,Kt.segments)}Xe.bindFramebuffer.set(null),Xe.viewport.set([0,0,le.width,le.height])}(this,this.style.map.terrain),function(le,qe){let Xe=le.context,ot=Xe.gl,Tt=qs.unblended,Yt=new Po(ot.LEQUAL,Po.ReadWrite,[0,1]),Kt=qe.getTerrainMesh(),xr=qe.getCoordsTexture(),Ir=qe.sourceCache.getRenderableTiles(),ve=le.useProgram("terrainCoords");Xe.bindFramebuffer.set(qe.getFramebuffer("coords").framebuffer),Xe.viewport.set([0,0,le.width/devicePixelRatio,le.height/devicePixelRatio]),Xe.clear({color:a.aM.transparent,depth:1}),qe.coordsIndex=[];for(let be of Ir){let De=qe.getTerrainData(be.tileID);Xe.activeTexture.set(ot.TEXTURE0),ot.bindTexture(ot.TEXTURE_2D,xr.texture);let Be={u_matrix:le.transform.calculatePosMatrix(be.tileID.toUnwrapped()),u_terrain_coords_id:(255-qe.coordsIndex.length)/255,u_texture:0,u_ele_delta:qe.getMeshFrameDelta(le.transform.zoom)};ve.draw(Xe,ot.TRIANGLES,Yt,Yo.disabled,Tt,Pa.backCCW,Be,De,"terrain",Kt.vertexBuffer,Kt.indexBuffer,Kt.segments),qe.coordsIndex.push(be.tileID.key)}Xe.bindFramebuffer.set(null),Xe.viewport.set([0,0,le.width,le.height])}(this,this.style.map.terrain))}renderLayer(w,B,Q,ee){if(!Q.isHidden(this.transform.zoom)&&(Q.type==="background"||Q.type==="custom"||(ee||[]).length))switch(this.id=Q.id,Q.type){case"symbol":(function(le,qe,Xe,ot,Tt){if(le.renderPass!=="translucent")return;let Yt=Yo.disabled,Kt=le.colorModeForRenderPass();(Xe._unevaluatedLayout.hasValue("text-variable-anchor")||Xe._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function(xr,Ir,ve,be,De,Be,et,We,it){let Ft=Ir.transform,Ht=yn(),tr=De==="map",dr=Be==="map";for(let Sr of xr){let Or=be.getTile(Sr),Wr=Or.getBucket(ve);if(!Wr||!Wr.text||!Wr.text.segments.get().length)continue;let ni=a.ag(Wr.textSizeData,Ft.zoom),Pi=In(Or,1,Ir.transform.zoom),cn=Br(Sr.posMatrix,dr,tr,Ir.transform,Pi),ln=ve.layout.get("icon-text-fit")!=="none"&&Wr.hasIconData();if(ni){let Cn=Math.pow(2,Ft.zoom-Or.tileID.overscaledZ),Kn=Ir.style.map.terrain?(fa,$a)=>Ir.style.map.terrain.getElevation(Sr,fa,$a):null,Ta=Ht.translatePosition(Ft,Or,et,We);yf(Wr,tr,dr,it,Ft,cn,Sr.posMatrix,Cn,ni,ln,Ht,Ta,Sr.toUnwrapped(),Kn)}}}(ot,le,Xe,qe,Xe.layout.get("text-rotation-alignment"),Xe.layout.get("text-pitch-alignment"),Xe.paint.get("text-translate"),Xe.paint.get("text-translate-anchor"),Tt),Xe.paint.get("icon-opacity").constantOr(1)!==0&&wh(le,qe,Xe,ot,!1,Xe.paint.get("icon-translate"),Xe.paint.get("icon-translate-anchor"),Xe.layout.get("icon-rotation-alignment"),Xe.layout.get("icon-pitch-alignment"),Xe.layout.get("icon-keep-upright"),Yt,Kt),Xe.paint.get("text-opacity").constantOr(1)!==0&&wh(le,qe,Xe,ot,!0,Xe.paint.get("text-translate"),Xe.paint.get("text-translate-anchor"),Xe.layout.get("text-rotation-alignment"),Xe.layout.get("text-pitch-alignment"),Xe.layout.get("text-keep-upright"),Yt,Kt),qe.map.showCollisionBoxes&&(Hu(le,qe,Xe,ot,!0),Hu(le,qe,Xe,ot,!1))})(w,B,Q,ee,this.style.placement.variableOffsets);break;case"circle":(function(le,qe,Xe,ot){if(le.renderPass!=="translucent")return;let Tt=Xe.paint.get("circle-opacity"),Yt=Xe.paint.get("circle-stroke-width"),Kt=Xe.paint.get("circle-stroke-opacity"),xr=!Xe.layout.get("circle-sort-key").isConstant();if(Tt.constantOr(1)===0&&(Yt.constantOr(1)===0||Kt.constantOr(1)===0))return;let Ir=le.context,ve=Ir.gl,be=le.depthModeForSublayer(0,Po.ReadOnly),De=Yo.disabled,Be=le.colorModeForRenderPass(),et=[];for(let We=0;WeWe.sortKey-it.sortKey);for(let We of et){let{programConfiguration:it,program:Ft,layoutVertexBuffer:Ht,indexBuffer:tr,uniformValues:dr,terrainData:Sr}=We.state;Ft.draw(Ir,ve.TRIANGLES,be,De,Be,Pa.disabled,dr,Sr,Xe.id,Ht,tr,We.segments,Xe.paint,le.transform.zoom,it)}})(w,B,Q,ee);break;case"heatmap":(function(le,qe,Xe,ot){if(Xe.paint.get("heatmap-opacity")===0)return;let Tt=le.context;if(le.style.map.terrain){for(let Yt of ot){let Kt=qe.getTile(Yt);qe.hasRenderableParent(Yt)||(le.renderPass==="offscreen"?_f(le,Kt,Xe,Yt):le.renderPass==="translucent"&&Yc(le,Xe,Yt))}Tt.viewport.set([0,0,le.width,le.height])}else le.renderPass==="offscreen"?function(Yt,Kt,xr,Ir){let ve=Yt.context,be=ve.gl,De=Yo.disabled,Be=new qs([be.ONE,be.ONE],a.aM.transparent,[!0,!0,!0,!0]);(function(et,We,it){let Ft=et.gl;et.activeTexture.set(Ft.TEXTURE1),et.viewport.set([0,0,We.width/4,We.height/4]);let Ht=it.heatmapFbos.get(a.aU);Ht?(Ft.bindTexture(Ft.TEXTURE_2D,Ht.colorAttachment.get()),et.bindFramebuffer.set(Ht.framebuffer)):(Ht=eh(et,We.width/4,We.height/4),it.heatmapFbos.set(a.aU,Ht))})(ve,Yt,xr),ve.clear({color:a.aM.transparent});for(let et=0;et20&&Yt.texParameterf(Yt.TEXTURE_2D,Tt.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,Tt.extTextureFilterAnisotropicMax);let Wr=le.style.map.terrain&&le.style.map.terrain.getTerrainData(et),ni=Wr?et:null,Pi=ni?ni.posMatrix:le.transform.calculatePosMatrix(et.toUnwrapped(),Be),cn=cl(Pi,Sr||[0,0],dr||1,tr,Xe);Kt instanceof Gt?xr.draw(Tt,Yt.TRIANGLES,We,Yo.disabled,Ir,Pa.disabled,cn,Wr,Xe.id,Kt.boundsBuffer,le.quadTriangleIndexBuffer,Kt.boundsSegments):xr.draw(Tt,Yt.TRIANGLES,We,ve[et.overscaledZ],Ir,Pa.disabled,cn,Wr,Xe.id,le.rasterBoundsBuffer,le.quadTriangleIndexBuffer,le.rasterBoundsSegments)}})(w,B,Q,ee);break;case"background":(function(le,qe,Xe,ot){let Tt=Xe.paint.get("background-color"),Yt=Xe.paint.get("background-opacity");if(Yt===0)return;let Kt=le.context,xr=Kt.gl,Ir=le.transform,ve=Ir.tileSize,be=Xe.paint.get("background-pattern");if(le.isPatternMissing(be))return;let De=!be&&Tt.a===1&&Yt===1&&le.opaquePassEnabledForLayer()?"opaque":"translucent";if(le.renderPass!==De)return;let Be=Yo.disabled,et=le.depthModeForSublayer(0,De==="opaque"?Po.ReadWrite:Po.ReadOnly),We=le.colorModeForRenderPass(),it=le.useProgram(be?"backgroundPattern":"background"),Ft=ot||Ir.coveringTiles({tileSize:ve,terrain:le.style.map.terrain});be&&(Kt.activeTexture.set(xr.TEXTURE0),le.imageManager.bind(le.context));let Ht=Xe.getCrossfadeParameters();for(let tr of Ft){let dr=ot?tr.posMatrix:le.transform.calculatePosMatrix(tr.toUnwrapped()),Sr=be?Su(dr,Yt,le,be,{tileID:tr,tileSize:ve},Ht):Zl(dr,Yt,Tt),Or=le.style.map.terrain&&le.style.map.terrain.getTerrainData(tr);it.draw(Kt,xr.TRIANGLES,et,Be,We,Pa.disabled,Sr,Or,Xe.id,le.tileExtentBuffer,le.quadTriangleIndexBuffer,le.tileExtentSegments)}})(w,0,Q,ee);break;case"custom":(function(le,qe,Xe){let ot=le.context,Tt=Xe.implementation;if(le.renderPass==="offscreen"){let Yt=Tt.prerender;Yt&&(le.setCustomLayerDefaults(),ot.setColorMode(le.colorModeForRenderPass()),Yt.call(Tt,ot.gl,le.transform.customLayerMatrix()),ot.setDirty(),le.setBaseState())}else if(le.renderPass==="translucent"){le.setCustomLayerDefaults(),ot.setColorMode(le.colorModeForRenderPass()),ot.setStencilMode(Yo.disabled);let Yt=Tt.renderingMode==="3d"?new Po(le.context.gl.LEQUAL,Po.ReadWrite,le.depthRangeFor3D):le.depthModeForSublayer(0,Po.ReadOnly);ot.setDepthMode(Yt),Tt.render(ot.gl,le.transform.customLayerMatrix(),{farZ:le.transform.farZ,nearZ:le.transform.nearZ,fov:le.transform._fov,modelViewProjectionMatrix:le.transform.modelViewProjectionMatrix,projectionMatrix:le.transform.projectionMatrix}),ot.setDirty(),le.setBaseState(),ot.bindFramebuffer.set(null)}})(w,0,Q)}}translatePosMatrix(w,B,Q,ee,le){if(!Q[0]&&!Q[1])return w;let qe=le?ee==="map"?this.transform.angle:0:ee==="viewport"?-this.transform.angle:0;if(qe){let Tt=Math.sin(qe),Yt=Math.cos(qe);Q=[Q[0]*Yt-Q[1]*Tt,Q[0]*Tt+Q[1]*Yt]}let Xe=[le?Q[0]:In(B,Q[0],this.transform.zoom),le?Q[1]:In(B,Q[1],this.transform.zoom),0],ot=new Float32Array(16);return a.J(ot,w,Xe),ot}saveTileTexture(w){let B=this._tileTextures[w.size[0]];B?B.push(w):this._tileTextures[w.size[0]]=[w]}getTileTexture(w){let B=this._tileTextures[w];return B&&B.length>0?B.pop():null}isPatternMissing(w){if(!w)return!1;if(!w.from||!w.to)return!0;let B=this.imageManager.getPattern(w.from.toString()),Q=this.imageManager.getPattern(w.to.toString());return!B||!Q}useProgram(w,B){this.cache=this.cache||{};let Q=w+(B?B.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[Q]||(this.cache[Q]=new hn(this.context,jn[w],B,nc[w],this._showOverdrawInspector,this.style.map.terrain)),this.cache[Q]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){let w=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(w.FUNC_ADD)}initDebugOverlayCanvas(){this.debugOverlayCanvas==null&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new g(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){let{drawingBufferWidth:w,drawingBufferHeight:B}=this.context.gl;return this.width!==w||this.height!==B}}class ks{constructor(w,B){this.points=w,this.planes=B}static fromInvProjectionMatrix(w,B,Q){let ee=Math.pow(2,Q),le=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map(Xe=>{let ot=1/(Xe=a.af([],Xe,w))[3]/B*ee;return a.b1(Xe,Xe,[ot,ot,1/Xe[3],ot])}),qe=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(Xe=>{let ot=function(xr,Ir){var ve=Ir[0],be=Ir[1],De=Ir[2],Be=ve*ve+be*be+De*De;return Be>0&&(Be=1/Math.sqrt(Be)),xr[0]=Ir[0]*Be,xr[1]=Ir[1]*Be,xr[2]=Ir[2]*Be,xr}([],function(xr,Ir,ve){var be=Ir[0],De=Ir[1],Be=Ir[2],et=ve[0],We=ve[1],it=ve[2];return xr[0]=De*it-Be*We,xr[1]=Be*et-be*it,xr[2]=be*We-De*et,xr}([],L([],le[Xe[0]],le[Xe[1]]),L([],le[Xe[2]],le[Xe[1]]))),Tt=-((Yt=ot)[0]*(Kt=le[Xe[1]])[0]+Yt[1]*Kt[1]+Yt[2]*Kt[2]);var Yt,Kt;return ot.concat(Tt)});return new ks(le,qe)}}class bc{constructor(w,B){this.min=w,this.max=B,this.center=function(Q,ee,le){return Q[0]=.5*ee[0],Q[1]=.5*ee[1],Q[2]=.5*ee[2],Q}([],function(Q,ee,le){return Q[0]=ee[0]+le[0],Q[1]=ee[1]+le[1],Q[2]=ee[2]+le[2],Q}([],this.min,this.max))}quadrant(w){let B=[w%2==0,w<2],Q=E(this.min),ee=E(this.max);for(let le=0;le=0&&qe++;if(qe===0)return 0;qe!==B.length&&(Q=!1)}if(Q)return 2;for(let ee=0;ee<3;ee++){let le=Number.MAX_VALUE,qe=-Number.MAX_VALUE;for(let Xe=0;Xethis.max[ee]-this.min[ee])return 0}return 1}}class hu{constructor(w=0,B=0,Q=0,ee=0){if(isNaN(w)||w<0||isNaN(B)||B<0||isNaN(Q)||Q<0||isNaN(ee)||ee<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=w,this.bottom=B,this.left=Q,this.right=ee}interpolate(w,B,Q){return B.top!=null&&w.top!=null&&(this.top=a.y.number(w.top,B.top,Q)),B.bottom!=null&&w.bottom!=null&&(this.bottom=a.y.number(w.bottom,B.bottom,Q)),B.left!=null&&w.left!=null&&(this.left=a.y.number(w.left,B.left,Q)),B.right!=null&&w.right!=null&&(this.right=a.y.number(w.right,B.right,Q)),this}getCenter(w,B){let Q=a.ac((this.left+w-this.right)/2,0,w),ee=a.ac((this.top+B-this.bottom)/2,0,B);return new a.P(Q,ee)}equals(w){return this.top===w.top&&this.bottom===w.bottom&&this.left===w.left&&this.right===w.right}clone(){return new hu(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}let _u=85.051129;class nl{constructor(w,B,Q,ee,le){this.tileSize=512,this._renderWorldCopies=le===void 0||!!le,this._minZoom=w||0,this._maxZoom=B||22,this._minPitch=Q==null?0:Q,this._maxPitch=ee==null?60:ee,this.setMaxBounds(),this.width=0,this.height=0,this._center=new a.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new hu,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){let w=new nl(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return w.apply(this),w}apply(w){this.tileSize=w.tileSize,this.latRange=w.latRange,this.lngRange=w.lngRange,this.width=w.width,this.height=w.height,this._center=w._center,this._elevation=w._elevation,this.minElevationForCurrentTile=w.minElevationForCurrentTile,this.zoom=w.zoom,this.angle=w.angle,this._fov=w._fov,this._pitch=w._pitch,this._unmodified=w._unmodified,this._edgeInsets=w._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(w){this._minZoom!==w&&(this._minZoom=w,this.zoom=Math.max(this.zoom,w))}get maxZoom(){return this._maxZoom}set maxZoom(w){this._maxZoom!==w&&(this._maxZoom=w,this.zoom=Math.min(this.zoom,w))}get minPitch(){return this._minPitch}set minPitch(w){this._minPitch!==w&&(this._minPitch=w,this.pitch=Math.max(this.pitch,w))}get maxPitch(){return this._maxPitch}set maxPitch(w){this._maxPitch!==w&&(this._maxPitch=w,this.pitch=Math.min(this.pitch,w))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(w){w===void 0?w=!0:w===null&&(w=!1),this._renderWorldCopies=w}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new a.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(w){let B=-a.b3(w,-180,180)*Math.PI/180;this.angle!==B&&(this._unmodified=!1,this.angle=B,this._calcMatrices(),this.rotationMatrix=function(){var Q=new a.A(4);return a.A!=Float32Array&&(Q[1]=0,Q[2]=0),Q[0]=1,Q[3]=1,Q}(),function(Q,ee,le){var qe=ee[0],Xe=ee[1],ot=ee[2],Tt=ee[3],Yt=Math.sin(le),Kt=Math.cos(le);Q[0]=qe*Kt+ot*Yt,Q[1]=Xe*Kt+Tt*Yt,Q[2]=qe*-Yt+ot*Kt,Q[3]=Xe*-Yt+Tt*Kt}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(w){let B=a.ac(w,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==B&&(this._unmodified=!1,this._pitch=B,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(w){w=Math.max(.01,Math.min(60,w)),this._fov!==w&&(this._unmodified=!1,this._fov=w/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(w){let B=Math.min(Math.max(w,this.minZoom),this.maxZoom);this._zoom!==B&&(this._unmodified=!1,this._zoom=B,this.tileZoom=Math.max(0,Math.floor(B)),this.scale=this.zoomScale(B),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(w){w.lat===this._center.lat&&w.lng===this._center.lng||(this._unmodified=!1,this._center=w,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(w){w!==this._elevation&&(this._elevation=w,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(w){this._edgeInsets.equals(w)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,w,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(w){return this._edgeInsets.equals(w)}interpolatePadding(w,B,Q){this._unmodified=!1,this._edgeInsets.interpolate(w,B,Q),this._constrain(),this._calcMatrices()}coveringZoomLevel(w){let B=(w.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/w.tileSize));return Math.max(0,B)}getVisibleUnwrappedCoordinates(w){let B=[new a.b4(0,w)];if(this._renderWorldCopies){let Q=this.pointCoordinate(new a.P(0,0)),ee=this.pointCoordinate(new a.P(this.width,0)),le=this.pointCoordinate(new a.P(this.width,this.height)),qe=this.pointCoordinate(new a.P(0,this.height)),Xe=Math.floor(Math.min(Q.x,ee.x,le.x,qe.x)),ot=Math.floor(Math.max(Q.x,ee.x,le.x,qe.x)),Tt=1;for(let Yt=Xe-Tt;Yt<=ot+Tt;Yt++)Yt!==0&&B.push(new a.b4(Yt,w))}return B}coveringTiles(w){var B,Q;let ee=this.coveringZoomLevel(w),le=ee;if(w.minzoom!==void 0&&eew.maxzoom&&(ee=w.maxzoom);let qe=this.pointCoordinate(this.getCameraPoint()),Xe=a.Z.fromLngLat(this.center),ot=Math.pow(2,ee),Tt=[ot*qe.x,ot*qe.y,0],Yt=[ot*Xe.x,ot*Xe.y,0],Kt=ks.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,ee),xr=w.minzoom||0;!w.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(xr=ee);let Ir=w.terrain?2/Math.min(this.tileSize,w.tileSize)*this.tileSize:3,ve=We=>({aabb:new bc([We*ot,0,0],[(We+1)*ot,ot,0]),zoom:0,x:0,y:0,wrap:We,fullyVisible:!1}),be=[],De=[],Be=ee,et=w.reparseOverscaled?le:ee;if(this._renderWorldCopies)for(let We=1;We<=3;We++)be.push(ve(-We)),be.push(ve(We));for(be.push(ve(0));be.length>0;){let We=be.pop(),it=We.x,Ft=We.y,Ht=We.fullyVisible;if(!Ht){let Wr=We.aabb.intersects(Kt);if(Wr===0)continue;Ht=Wr===2}let tr=w.terrain?Tt:Yt,dr=We.aabb.distanceX(tr),Sr=We.aabb.distanceY(tr),Or=Math.max(Math.abs(dr),Math.abs(Sr));if(We.zoom===Be||Or>Ir+(1<=xr){let Wr=Be-We.zoom,ni=Tt[0]-.5-(it<>1),cn=We.zoom+1,ln=We.aabb.quadrant(Wr);if(w.terrain){let Cn=new a.S(cn,We.wrap,cn,ni,Pi),Kn=w.terrain.getMinMaxElevation(Cn),Ta=(B=Kn.minElevation)!==null&&B!==void 0?B:this.elevation,fa=(Q=Kn.maxElevation)!==null&&Q!==void 0?Q:this.elevation;ln=new bc([ln.min[0],ln.min[1],Ta],[ln.max[0],ln.max[1],fa])}be.push({aabb:ln,zoom:cn,x:ni,y:Pi,wrap:We.wrap,fullyVisible:Ht})}}return De.sort((We,it)=>We.distanceSq-it.distanceSq).map(We=>We.tileID)}resize(w,B){this.width=w,this.height=B,this.pixelsToGLUnits=[2/w,-2/B],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(w){return Math.pow(2,w)}scaleZoom(w){return Math.log(w)/Math.LN2}project(w){let B=a.ac(w.lat,-85.051129,_u);return new a.P(a.O(w.lng)*this.worldSize,a.Q(B)*this.worldSize)}unproject(w){return new a.Z(w.x/this.worldSize,w.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(w){let B=this.elevation,Q=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,ee=this.pointLocation(this.centerPoint,w),le=w.getElevationForLngLatZoom(ee,this.tileZoom);if(!(this.elevation-le))return;let qe=Q+B-le,Xe=Math.cos(this._pitch)*this.cameraToCenterDistance/qe/a.b5(1,ee.lat),ot=this.scaleZoom(Xe/this.tileSize);this._elevation=le,this._center=ee,this.zoom=ot}setLocationAtPoint(w,B){let Q=this.pointCoordinate(B),ee=this.pointCoordinate(this.centerPoint),le=this.locationCoordinate(w),qe=new a.Z(le.x-(Q.x-ee.x),le.y-(Q.y-ee.y));this.center=this.coordinateLocation(qe),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(w,B){return B?this.coordinatePoint(this.locationCoordinate(w),B.getElevationForLngLatZoom(w,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(w))}pointLocation(w,B){return this.coordinateLocation(this.pointCoordinate(w,B))}locationCoordinate(w){return a.Z.fromLngLat(w)}coordinateLocation(w){return w&&w.toLngLat()}pointCoordinate(w,B){if(B){let xr=B.pointCoordinate(w);if(xr!=null)return xr}let Q=[w.x,w.y,0,1],ee=[w.x,w.y,1,1];a.af(Q,Q,this.pixelMatrixInverse),a.af(ee,ee,this.pixelMatrixInverse);let le=Q[3],qe=ee[3],Xe=Q[1]/le,ot=ee[1]/qe,Tt=Q[2]/le,Yt=ee[2]/qe,Kt=Tt===Yt?0:(0-Tt)/(Yt-Tt);return new a.Z(a.y.number(Q[0]/le,ee[0]/qe,Kt)/this.worldSize,a.y.number(Xe,ot,Kt)/this.worldSize)}coordinatePoint(w,B=0,Q=this.pixelMatrix){let ee=[w.x*this.worldSize,w.y*this.worldSize,B,1];return a.af(ee,ee,Q),new a.P(ee[0]/ee[3],ee[1]/ee[3])}getBounds(){let w=Math.max(0,this.height/2-this.getHorizon());return new ce().extend(this.pointLocation(new a.P(0,w))).extend(this.pointLocation(new a.P(this.width,w))).extend(this.pointLocation(new a.P(this.width,this.height))).extend(this.pointLocation(new a.P(0,this.height)))}getMaxBounds(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new ce([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(w){w?(this.lngRange=[w.getWest(),w.getEast()],this.latRange=[w.getSouth(),w.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,_u])}calculateTileMatrix(w){let B=w.canonical,Q=this.worldSize/this.zoomScale(B.z),ee=B.x+Math.pow(2,B.z)*w.wrap,le=a.an(new Float64Array(16));return a.J(le,le,[ee*Q,B.y*Q,0]),a.K(le,le,[Q/a.X,Q/a.X,1]),le}calculatePosMatrix(w,B=!1){let Q=w.key,ee=B?this._alignedPosMatrixCache:this._posMatrixCache;if(ee[Q])return ee[Q];let le=this.calculateTileMatrix(w);return a.L(le,B?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,le),ee[Q]=new Float32Array(le),ee[Q]}calculateFogMatrix(w){let B=w.key,Q=this._fogMatrixCache;if(Q[B])return Q[B];let ee=this.calculateTileMatrix(w);return a.L(ee,this.fogMatrix,ee),Q[B]=new Float32Array(ee),Q[B]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(w,B){B=a.ac(+B,this.minZoom,this.maxZoom);let Q={center:new a.N(w.lng,w.lat),zoom:B},ee=this.lngRange;if(!this._renderWorldCopies&&ee===null){let We=179.9999999999;ee=[-We,We]}let le=this.tileSize*this.zoomScale(Q.zoom),qe=0,Xe=le,ot=0,Tt=le,Yt=0,Kt=0,{x:xr,y:Ir}=this.size;if(this.latRange){let We=this.latRange;qe=a.Q(We[1])*le,Xe=a.Q(We[0])*le,Xe-qeXe&&(Be=Xe-We)}if(ee){let We=(ot+Tt)/2,it=ve;this._renderWorldCopies&&(it=a.b3(ve,We-le/2,We+le/2));let Ft=xr/2;it-FtTt&&(De=Tt-Ft)}if(De!==void 0||Be!==void 0){let We=new a.P(De!=null?De:ve,Be!=null?Be:be);Q.center=this.unproject.call({worldSize:le},We).wrap()}return Q}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;let w=this._unmodified,{center:B,zoom:Q}=this.getConstrained(this.center,this.zoom);this.center=B,this.zoom=Q,this._unmodified=w,this._constraining=!1}_calcMatrices(){if(!this.height)return;let w=this.centerOffset,B=this.point.x,Q=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=a.b5(1,this.center.lat)*this.worldSize;let ee=a.an(new Float64Array(16));a.K(ee,ee,[this.width/2,-this.height/2,1]),a.J(ee,ee,[1,-1,0]),this.labelPlaneMatrix=ee,ee=a.an(new Float64Array(16)),a.K(ee,ee,[1,-1,1]),a.J(ee,ee,[-1,-1,0]),a.K(ee,ee,[2/this.width,2/this.height,1]),this.glCoordMatrix=ee;let le=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),qe=Math.min(this.elevation,this.minElevationForCurrentTile),Xe=le-qe*this._pixelPerMeter/Math.cos(this._pitch),ot=qe<0?Xe:le,Tt=Math.PI/2+this._pitch,Yt=this._fov*(.5+w.y/this.height),Kt=Math.sin(Yt)*ot/Math.sin(a.ac(Math.PI-Tt-Yt,.01,Math.PI-.01)),xr=this.getHorizon(),Ir=2*Math.atan(xr/this.cameraToCenterDistance)*(.5+w.y/(2*xr)),ve=Math.sin(Ir)*ot/Math.sin(a.ac(Math.PI-Tt-Ir,.01,Math.PI-.01)),be=Math.min(Kt,ve);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*be+ot),this.nearZ=this.height/50,ee=new Float64Array(16),a.b6(ee,this._fov,this.width/this.height,this.nearZ,this.farZ),ee[8]=2*-w.x/this.width,ee[9]=2*w.y/this.height,this.projectionMatrix=a.ae(ee),a.K(ee,ee,[1,-1,1]),a.J(ee,ee,[0,0,-this.cameraToCenterDistance]),a.b7(ee,ee,this._pitch),a.ad(ee,ee,this.angle),a.J(ee,ee,[-B,-Q,0]),this.mercatorMatrix=a.K([],ee,[this.worldSize,this.worldSize,this.worldSize]),a.K(ee,ee,[1,1,this._pixelPerMeter]),this.pixelMatrix=a.L(new Float64Array(16),this.labelPlaneMatrix,ee),a.J(ee,ee,[0,0,-this.elevation]),this.modelViewProjectionMatrix=ee,this.invModelViewProjectionMatrix=a.as([],ee),this.fogMatrix=new Float64Array(16),a.b6(this.fogMatrix,this._fov,this.width/this.height,le,this.farZ),this.fogMatrix[8]=2*-w.x/this.width,this.fogMatrix[9]=2*w.y/this.height,a.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),a.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),a.b7(this.fogMatrix,this.fogMatrix,this._pitch),a.ad(this.fogMatrix,this.fogMatrix,this.angle),a.J(this.fogMatrix,this.fogMatrix,[-B,-Q,0]),a.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),a.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=a.L(new Float64Array(16),this.labelPlaneMatrix,ee);let De=this.width%2/2,Be=this.height%2/2,et=Math.cos(this.angle),We=Math.sin(this.angle),it=B-Math.round(B)+et*De+We*Be,Ft=Q-Math.round(Q)+et*Be+We*De,Ht=new Float64Array(ee);if(a.J(Ht,Ht,[it>.5?it-1:it,Ft>.5?Ft-1:Ft,0]),this.alignedModelViewProjectionMatrix=Ht,ee=a.as(new Float64Array(16),this.pixelMatrix),!ee)throw new Error("failed to invert matrix");this.pixelMatrixInverse=ee,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;let w=this.pointCoordinate(new a.P(0,0)),B=[w.x*this.worldSize,w.y*this.worldSize,0,1];return a.af(B,B,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){let w=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new a.P(0,w))}getCameraQueryGeometry(w){let B=this.getCameraPoint();if(w.length===1)return[w[0],B];{let Q=B.x,ee=B.y,le=B.x,qe=B.y;for(let Xe of w)Q=Math.min(Q,Xe.x),ee=Math.min(ee,Xe.y),le=Math.max(le,Xe.x),qe=Math.max(qe,Xe.y);return[new a.P(Q,ee),new a.P(le,ee),new a.P(le,qe),new a.P(Q,qe),new a.P(Q,ee)]}}lngLatToCameraDepth(w,B){let Q=this.locationCoordinate(w),ee=[Q.x*this.worldSize,Q.y*this.worldSize,B,1];return a.af(ee,ee,this.modelViewProjectionMatrix),ee[2]/ee[3]}}function nh(ue,w){let B,Q=!1,ee=null,le=null,qe=()=>{ee=null,Q&&(ue.apply(le,B),ee=setTimeout(qe,w),Q=!1)};return(...Xe)=>(Q=!0,le=this,B=Xe,ee||qe(),ee)}class Ah{constructor(w){this._getCurrentHash=()=>{let B=window.location.hash.replace("#","");if(this._hashName){let Q;return B.split("&").map(ee=>ee.split("=")).forEach(ee=>{ee[0]===this._hashName&&(Q=ee)}),(Q&&Q[1]||"").split("/")}return B.split("/")},this._onHashChange=()=>{let B=this._getCurrentHash();if(B.length>=3&&!B.some(Q=>isNaN(Q))){let Q=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(B[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+B[2],+B[1]],zoom:+B[0],bearing:Q,pitch:+(B[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{let B=window.location.href.replace(/(#.*)?$/,this.getHashString());window.history.replaceState(window.history.state,null,B)},this._removeHash=()=>{let B=this._getCurrentHash();if(B.length===0)return;let Q=B.join("/"),ee=Q;ee.split("&").length>0&&(ee=ee.split("&")[0]),this._hashName&&(ee=`${this._hashName}=${Q}`);let le=window.location.hash.replace(ee,"");le.startsWith("#&")?le=le.slice(0,1)+le.slice(2):le==="#"&&(le="");let qe=window.location.href.replace(/(#.+)?$/,le);qe=qe.replace("&&","&"),window.history.replaceState(window.history.state,null,qe)},this._updateHash=nh(this._updateHashUnthrottled,300),this._hashName=w&&encodeURIComponent(w)}addTo(w){return this._map=w,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(w){let B=this._map.getCenter(),Q=Math.round(100*this._map.getZoom())/100,ee=Math.ceil((Q*Math.LN2+Math.log(512/360/.5))/Math.LN10),le=Math.pow(10,ee),qe=Math.round(B.lng*le)/le,Xe=Math.round(B.lat*le)/le,ot=this._map.getBearing(),Tt=this._map.getPitch(),Yt="";if(Yt+=w?`/${qe}/${Xe}/${Q}`:`${Q}/${Xe}/${qe}`,(ot||Tt)&&(Yt+="/"+Math.round(10*ot)/10),Tt&&(Yt+=`/${Math.round(Tt)}`),this._hashName){let Kt=this._hashName,xr=!1,Ir=window.location.hash.slice(1).split("&").map(ve=>{let be=ve.split("=")[0];return be===Kt?(xr=!0,`${be}=${Yt}`):ve}).filter(ve=>ve);return xr||Ir.push(`${Kt}=${Yt}`),`#${Ir.join("&")}`}return`#${Yt}`}}let zu={linearity:.3,easing:a.b8(0,0,.3,1)},Fc=a.e({deceleration:2500,maxSpeed:1400},zu),wc=a.e({deceleration:20,maxSpeed:1400},zu),bd=a.e({deceleration:1e3,maxSpeed:360},zu),xf=a.e({deceleration:1e3,maxSpeed:90},zu);class Pf{constructor(w){this._map=w,this.clear()}clear(){this._inertiaBuffer=[]}record(w){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:u.now(),settings:w})}_drainInertiaBuffer(){let w=this._inertiaBuffer,B=u.now();for(;w.length>0&&B-w[0].time>160;)w.shift()}_onMoveEnd(w){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;let B={zoom:0,bearing:0,pitch:0,pan:new a.P(0,0),pinchAround:void 0,around:void 0};for(let{settings:le}of this._inertiaBuffer)B.zoom+=le.zoomDelta||0,B.bearing+=le.bearingDelta||0,B.pitch+=le.pitchDelta||0,le.panDelta&&B.pan._add(le.panDelta),le.around&&(B.around=le.around),le.pinchAround&&(B.pinchAround=le.pinchAround);let Q=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,ee={};if(B.pan.mag()){let le=bf(B.pan.mag(),Q,a.e({},Fc,w||{}));ee.offset=B.pan.mult(le.amount/B.pan.mag()),ee.center=this._map.transform.center,Ou(ee,le)}if(B.zoom){let le=bf(B.zoom,Q,wc);ee.zoom=this._map.transform.zoom+le.amount,Ou(ee,le)}if(B.bearing){let le=bf(B.bearing,Q,bd);ee.bearing=this._map.transform.bearing+a.ac(le.amount,-179,179),Ou(ee,le)}if(B.pitch){let le=bf(B.pitch,Q,xf);ee.pitch=this._map.transform.pitch+le.amount,Ou(ee,le)}if(ee.zoom||ee.bearing){let le=B.pinchAround===void 0?B.around:B.pinchAround;ee.around=le?this._map.unproject(le):this._map.getCenter()}return this.clear(),a.e(ee,{noMoveStart:!0})}}function Ou(ue,w){(!ue.duration||ue.durationB.unproject(ot)),Xe=le.reduce((ot,Tt,Yt,Kt)=>ot.add(Tt.div(Kt.length)),new a.P(0,0));super(w,{points:le,point:Xe,lngLats:qe,lngLat:B.unproject(Xe),originalEvent:Q}),this._defaultPrevented=!1}}class Hh extends a.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(w,B,Q){super(w,{originalEvent:Q}),this._defaultPrevented=!1}}class If{constructor(w,B){this._map=w,this._clickTolerance=B.clickTolerance}reset(){delete this._mousedownPos}wheel(w){return this._firePreventable(new Hh(w.type,this._map,w))}mousedown(w,B){return this._mousedownPos=B,this._firePreventable(new jl(w.type,this._map,w))}mouseup(w){this._map.fire(new jl(w.type,this._map,w))}click(w,B){this._mousedownPos&&this._mousedownPos.dist(B)>=this._clickTolerance||this._map.fire(new jl(w.type,this._map,w))}dblclick(w){return this._firePreventable(new jl(w.type,this._map,w))}mouseover(w){this._map.fire(new jl(w.type,this._map,w))}mouseout(w){this._map.fire(new jl(w.type,this._map,w))}touchstart(w){return this._firePreventable(new lf(w.type,this._map,w))}touchmove(w){this._map.fire(new lf(w.type,this._map,w))}touchend(w){this._map.fire(new lf(w.type,this._map,w))}touchcancel(w){this._map.fire(new lf(w.type,this._map,w))}_firePreventable(w){if(this._map.fire(w),w.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class Cs{constructor(w){this._map=w}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(w){this._map.fire(new jl(w.type,this._map,w))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new jl("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(w){this._delayContextMenu?this._contextMenuEvent=w:this._ignoreContextMenu||this._map.fire(new jl(w.type,this._map,w)),this._map.listens("contextmenu")&&w.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class du{constructor(w){this._map=w}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(w){return this.transform.pointLocation(a.P.convert(w),this._map.terrain)}}class ku{constructor(w,B){this._map=w,this._tr=new du(w),this._el=w.getCanvasContainer(),this._container=w.getContainer(),this._clickTolerance=B.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(w,B){this.isEnabled()&&w.shiftKey&&w.button===0&&(c.disableDrag(),this._startPos=this._lastPos=B,this._active=!0)}mousemoveWindow(w,B){if(!this._active)return;let Q=B;if(this._lastPos.equals(Q)||!this._box&&Q.dist(this._startPos)le.fitScreenCoordinates(Q,ee,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",w)}keydown(w){this._active&&w.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",w))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(c.remove(this._box),this._box=null),c.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(w,B){return this._map.fire(new a.k(w,{originalEvent:B}))}}function Wf(ue,w){if(ue.length!==w.length)throw new Error(`The number of touches and points are not equal - touches ${ue.length}, points ${w.length}`);let B={};for(let Q=0;Qthis.numTouches)&&(this.aborted=!0),this.aborted||(this.startTime===void 0&&(this.startTime=w.timeStamp),Q.length===this.numTouches&&(this.centroid=function(ee){let le=new a.P(0,0);for(let qe of ee)le._add(qe);return le.div(ee.length)}(B),this.touches=Wf(Q,B)))}touchmove(w,B,Q){if(this.aborted||!this.centroid)return;let ee=Wf(Q,B);for(let le in this.touches){let qe=ee[le];(!qe||qe.dist(this.touches[le])>30)&&(this.aborted=!0)}}touchend(w,B,Q){if((!this.centroid||w.timeStamp-this.startTime>500)&&(this.aborted=!0),Q.length===0){let ee=!this.aborted&&this.centroid;if(this.reset(),ee)return ee}}}class wf{constructor(w){this.singleTap=new Us(w),this.numTaps=w.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(w,B,Q){this.singleTap.touchstart(w,B,Q)}touchmove(w,B,Q){this.singleTap.touchmove(w,B,Q)}touchend(w,B,Q){let ee=this.singleTap.touchend(w,B,Q);if(ee){let le=w.timeStamp-this.lastTime<500,qe=!this.lastTap||this.lastTap.dist(ee)<30;if(le&&qe||this.reset(),this.count++,this.lastTime=w.timeStamp,this.lastTap=ee,this.count===this.numTaps)return this.reset(),ee}}}class zc{constructor(w){this._tr=new du(w),this._zoomIn=new wf({numTouches:1,numTaps:2}),this._zoomOut=new wf({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(w,B,Q){this._zoomIn.touchstart(w,B,Q),this._zoomOut.touchstart(w,B,Q)}touchmove(w,B,Q){this._zoomIn.touchmove(w,B,Q),this._zoomOut.touchmove(w,B,Q)}touchend(w,B,Q){let ee=this._zoomIn.touchend(w,B,Q),le=this._zoomOut.touchend(w,B,Q),qe=this._tr;return ee?(this._active=!0,w.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:Xe=>Xe.easeTo({duration:300,zoom:qe.zoom+1,around:qe.unproject(ee)},{originalEvent:w})}):le?(this._active=!0,w.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:Xe=>Xe.easeTo({duration:300,zoom:qe.zoom-1,around:qe.unproject(le)},{originalEvent:w})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Wu{constructor(w){this._enabled=!!w.enable,this._moveStateManager=w.moveStateManager,this._clickTolerance=w.clickTolerance||1,this._moveFunction=w.move,this._activateOnStart=!!w.activateOnStart,w.assignEvents(this),this.reset()}reset(w){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(w)}_move(...w){let B=this._moveFunction(...w);if(B.bearingDelta||B.pitchDelta||B.around||B.panDelta)return this._active=!0,B}dragStart(w,B){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(w)&&(this._moveStateManager.startMove(w),this._lastPoint=B.length?B[0]:B,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(w,B){if(!this.isEnabled())return;let Q=this._lastPoint;if(!Q)return;if(w.preventDefault(),!this._moveStateManager.isValidMoveEvent(w))return void this.reset(w);let ee=B.length?B[0]:B;return!this._moved&&ee.dist(Q){ue.mousedown=ue.dragStart,ue.mousemoveWindow=ue.dragMove,ue.mouseup=ue.dragEnd,ue.contextmenu=w=>{w.preventDefault()}},Wl=({enable:ue,clickTolerance:w,bearingDegreesPerPixelMoved:B=.8})=>{let Q=new Xu({checkCorrectEvent:ee=>c.mouseButton(ee)===0&&ee.ctrlKey||c.mouseButton(ee)===2});return new Wu({clickTolerance:w,move:(ee,le)=>({bearingDelta:(le.x-ee.x)*B}),moveStateManager:Q,enable:ue,assignEvents:Xf})},ah=({enable:ue,clickTolerance:w,pitchDegreesPerPixelMoved:B=-.5})=>{let Q=new Xu({checkCorrectEvent:ee=>c.mouseButton(ee)===0&&ee.ctrlKey||c.mouseButton(ee)===2});return new Wu({clickTolerance:w,move:(ee,le)=>({pitchDelta:(le.y-ee.y)*B}),moveStateManager:Q,enable:ue,assignEvents:Xf})};class Zu{constructor(w,B){this._clickTolerance=w.clickTolerance||1,this._map=B,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new a.P(0,0)}_shouldBePrevented(w){return w<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(w,B,Q){return this._calculateTransform(w,B,Q)}touchmove(w,B,Q){if(this._active){if(!this._shouldBePrevented(Q.length))return w.preventDefault(),this._calculateTransform(w,B,Q);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",w)}}touchend(w,B,Q){this._calculateTransform(w,B,Q),this._active&&this._shouldBePrevented(Q.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(w,B,Q){Q.length>0&&(this._active=!0);let ee=Wf(Q,B),le=new a.P(0,0),qe=new a.P(0,0),Xe=0;for(let Tt in ee){let Yt=ee[Tt],Kt=this._touches[Tt];Kt&&(le._add(Yt),qe._add(Yt.sub(Kt)),Xe++,ee[Tt]=Yt)}if(this._touches=ee,this._shouldBePrevented(Xe)||!qe.mag())return;let ot=qe.div(Xe);return this._sum._add(ot),this._sum.mag()Math.abs(ue.x)}class Bc extends Oc{constructor(w){super(),this._currentTouchCount=0,this._map=w}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(w,B,Q){super.touchstart(w,B,Q),this._currentTouchCount=Q.length}_start(w){this._lastPoints=w,fc(w[0].sub(w[1]))&&(this._valid=!1)}_move(w,B,Q){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;let ee=w[0].sub(this._lastPoints[0]),le=w[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(ee,le,Q.timeStamp),this._valid?(this._lastPoints=w,this._active=!0,{pitchDelta:(ee.y+le.y)/2*-.5}):void 0}gestureBeginsVertically(w,B,Q){if(this._valid!==void 0)return this._valid;let ee=w.mag()>=2,le=B.mag()>=2;if(!ee&&!le)return;if(!ee||!le)return this._firstMove===void 0&&(this._firstMove=Q),Q-this._firstMove<100&&void 0;let qe=w.y>0==B.y>0;return fc(w)&&fc(B)&&qe}}let At={panStep:100,bearingStep:15,pitchStep:10};class Wt{constructor(w){this._tr=new du(w);let B=At;this._panStep=B.panStep,this._bearingStep=B.bearingStep,this._pitchStep=B.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(w){if(w.altKey||w.ctrlKey||w.metaKey)return;let B=0,Q=0,ee=0,le=0,qe=0;switch(w.keyCode){case 61:case 107:case 171:case 187:B=1;break;case 189:case 109:case 173:B=-1;break;case 37:w.shiftKey?Q=-1:(w.preventDefault(),le=-1);break;case 39:w.shiftKey?Q=1:(w.preventDefault(),le=1);break;case 38:w.shiftKey?ee=1:(w.preventDefault(),qe=-1);break;case 40:w.shiftKey?ee=-1:(w.preventDefault(),qe=1);break;default:return}return this._rotationDisabled&&(Q=0,ee=0),{cameraAnimation:Xe=>{let ot=this._tr;Xe.easeTo({duration:300,easeId:"keyboardHandler",easing:Cr,zoom:B?Math.round(ot.zoom)+B*(w.shiftKey?2:1):ot.zoom,bearing:ot.bearing+Q*this._bearingStep,pitch:ot.pitch+ee*this._pitchStep,offset:[-le*this._panStep,-qe*this._panStep],center:ot.center},{originalEvent:w})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function Cr(ue){return ue*(2-ue)}let Ar=4.000244140625;class Kr{constructor(w,B){this._onTimeout=Q=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(Q)},this._map=w,this._tr=new du(w),this._triggerRenderFrame=B,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(w){this._defaultZoomRate=w}setWheelZoomRate(w){this._wheelZoomRate=w}isEnabled(){return!!this._enabled}isActive(){return!!this._active||this._finishTimeout!==void 0}isZooming(){return!!this._zooming}enable(w){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!w&&w.around==="center")}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(w){return!!this._map.cooperativeGestures.isEnabled()&&!(w.ctrlKey||this._map.cooperativeGestures.isBypassed(w))}wheel(w){if(!this.isEnabled())return;if(this._shouldBePrevented(w))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",w);let B=w.deltaMode===WheelEvent.DOM_DELTA_LINE?40*w.deltaY:w.deltaY,Q=u.now(),ee=Q-(this._lastWheelEventTime||0);this._lastWheelEventTime=Q,B!==0&&B%Ar==0?this._type="wheel":B!==0&&Math.abs(B)<4?this._type="trackpad":ee>400?(this._type=null,this._lastValue=B,this._timeout=setTimeout(this._onTimeout,40,w)):this._type||(this._type=Math.abs(ee*B)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,B+=this._lastValue)),w.shiftKey&&B&&(B/=4),this._type&&(this._lastWheelEvent=w,this._delta-=B,this._active||this._start(w)),w.preventDefault()}_start(w){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);let B=c.mousePos(this._map.getCanvas(),w),Q=this._tr;this._around=B.y>Q.transform.height/2-Q.transform.getHorizon()?a.N.convert(this._aroundCenter?Q.center:Q.unproject(B)):a.N.convert(Q.center),this._aroundPoint=Q.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;let w=this._tr.transform;if(this._delta!==0){let ot=this._type==="wheel"&&Math.abs(this._delta)>Ar?this._wheelZoomRate:this._defaultZoomRate,Tt=2/(1+Math.exp(-Math.abs(this._delta*ot)));this._delta<0&&Tt!==0&&(Tt=1/Tt);let Yt=typeof this._targetZoom=="number"?w.zoomScale(this._targetZoom):w.scale;this._targetZoom=Math.min(w.maxZoom,Math.max(w.minZoom,w.scaleZoom(Yt*Tt))),this._type==="wheel"&&(this._startZoom=w.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}let B=typeof this._targetZoom=="number"?this._targetZoom:w.zoom,Q=this._startZoom,ee=this._easing,le,qe=!1,Xe=u.now()-this._lastWheelEventTime;if(this._type==="wheel"&&Q&&ee&&Xe){let ot=Math.min(Xe/200,1),Tt=ee(ot);le=a.y.number(Q,B,Tt),ot<1?this._frameId||(this._frameId=!0):qe=!0}else le=B,qe=!0;return this._active=!0,qe&&(this._active=!1,this._finishTimeout=setTimeout(()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!qe,zoomDelta:le-w.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(w){let B=a.b9;if(this._prevEase){let Q=this._prevEase,ee=(u.now()-Q.start)/Q.duration,le=Q.easing(ee+.01)-Q.easing(ee),qe=.27/Math.sqrt(le*le+1e-4)*.01,Xe=Math.sqrt(.0729-qe*qe);B=a.b8(qe,Xe,.25,1)}return this._prevEase={start:u.now(),duration:w,easing:B},B}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class ki{constructor(w,B){this._clickZoom=w,this._tapZoom=B}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class Xi{constructor(w){this._tr=new du(w),this.reset()}reset(){this._active=!1}dblclick(w,B){return w.preventDefault(),{cameraAnimation:Q=>{Q.easeTo({duration:300,zoom:this._tr.zoom+(w.shiftKey?-1:1),around:this._tr.unproject(B)},{originalEvent:w})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class dn{constructor(){this._tap=new wf({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(w,B,Q){if(!this._swipePoint)if(this._tapTime){let ee=B[0],le=w.timeStamp-this._tapTime<500,qe=this._tapPoint.dist(ee)<30;le&&qe?Q.length>0&&(this._swipePoint=ee,this._swipeTouch=Q[0].identifier):this.reset()}else this._tap.touchstart(w,B,Q)}touchmove(w,B,Q){if(this._tapTime){if(this._swipePoint){if(Q[0].identifier!==this._swipeTouch)return;let ee=B[0],le=ee.y-this._swipePoint.y;return this._swipePoint=ee,w.preventDefault(),this._active=!0,{zoomDelta:le/128}}}else this._tap.touchmove(w,B,Q)}touchend(w,B,Q){if(this._tapTime)this._swipePoint&&Q.length===0&&this.reset();else{let ee=this._tap.touchend(w,B,Q);ee&&(this._tapTime=w.timeStamp,this._tapPoint=ee)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class wn{constructor(w,B,Q){this._el=w,this._mousePan=B,this._touchPan=Q}enable(w){this._inertiaOptions=w||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class Nn{constructor(w,B,Q){this._pitchWithRotate=w.pitchWithRotate,this._mouseRotate=B,this._mousePitch=Q}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class Yi{constructor(w,B,Q,ee){this._el=w,this._touchZoom=B,this._touchRotate=Q,this._tapDragZoom=ee,this._rotationDisabled=!1,this._enabled=!0}enable(w){this._touchZoom.enable(w),this._rotationDisabled||this._touchRotate.enable(w),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}class Qi{constructor(w,B){this._bypassKey=navigator.userAgent.indexOf("Mac")!==-1?"metaKey":"ctrlKey",this._map=w,this._options=B,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;let w=this._map.getCanvasContainer();w.classList.add("maplibregl-cooperative-gestures"),this._container=c.create("div","maplibregl-cooperative-gesture-screen",w);let B=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");this._bypassKey==="metaKey"&&(B=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));let Q=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),ee=document.createElement("div");ee.className="maplibregl-desktop-message",ee.textContent=B,this._container.appendChild(ee);let le=document.createElement("div");le.className="maplibregl-mobile-message",le.textContent=Q,this._container.appendChild(le),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(c.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(w){return w[this._bypassKey]}notifyGestureBlocked(w,B){this._enabled&&(this._map.fire(new a.k("cooperativegestureprevented",{gestureType:w,originalEvent:B})),this._container.classList.add("maplibregl-show"),setTimeout(()=>{this._container.classList.remove("maplibregl-show")},100))}}let on=ue=>ue.zoom||ue.drag||ue.pitch||ue.rotate;class Fi extends a.k{}function $n(ue){return ue.panDelta&&ue.panDelta.mag()||ue.zoomDelta||ue.bearingDelta||ue.pitchDelta}class Ca{constructor(w,B){this.handleWindowEvent=ee=>{this.handleEvent(ee,`${ee.type}Window`)},this.handleEvent=(ee,le)=>{if(ee.type==="blur")return void this.stop(!0);this._updatingCamera=!0;let qe=ee.type==="renderFrame"?void 0:ee,Xe={needsRenderFrame:!1},ot={},Tt={},Yt=ee.touches,Kt=Yt?this._getMapTouches(Yt):void 0,xr=Kt?c.touchPos(this._map.getCanvas(),Kt):c.mousePos(this._map.getCanvas(),ee);for(let{handlerName:be,handler:De,allowed:Be}of this._handlers){if(!De.isEnabled())continue;let et;this._blockedByActive(Tt,Be,be)?De.reset():De[le||ee.type]&&(et=De[le||ee.type](ee,xr,Kt),this.mergeHandlerResult(Xe,ot,et,be,qe),et&&et.needsRenderFrame&&this._triggerRenderFrame()),(et||De.isActive())&&(Tt[be]=De)}let Ir={};for(let be in this._previousActiveHandlers)Tt[be]||(Ir[be]=qe);this._previousActiveHandlers=Tt,(Object.keys(Ir).length||$n(Xe))&&(this._changes.push([Xe,ot,Ir]),this._triggerRenderFrame()),(Object.keys(Tt).length||$n(Xe))&&this._map._stop(!0),this._updatingCamera=!1;let{cameraAnimation:ve}=Xe;ve&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],ve(this._map))},this._map=w,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Pf(w),this._bearingSnap=B.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(B);let Q=this._el;this._listeners=[[Q,"touchstart",{passive:!0}],[Q,"touchmove",{passive:!1}],[Q,"touchend",void 0],[Q,"touchcancel",void 0],[Q,"mousedown",void 0],[Q,"mousemove",void 0],[Q,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[Q,"mouseover",void 0],[Q,"mouseout",void 0],[Q,"dblclick",void 0],[Q,"click",void 0],[Q,"keydown",{capture:!1}],[Q,"keyup",void 0],[Q,"wheel",{passive:!1}],[Q,"contextmenu",void 0],[window,"blur",void 0]];for(let[ee,le,qe]of this._listeners)c.addEventListener(ee,le,ee===document?this.handleWindowEvent:this.handleEvent,qe)}destroy(){for(let[w,B,Q]of this._listeners)c.removeEventListener(w,B,w===document?this.handleWindowEvent:this.handleEvent,Q)}_addDefaultHandlers(w){let B=this._map,Q=B.getCanvasContainer();this._add("mapEvent",new If(B,w));let ee=B.boxZoom=new ku(B,w);this._add("boxZoom",ee),w.interactive&&w.boxZoom&&ee.enable();let le=B.cooperativeGestures=new Qi(B,w.cooperativeGestures);this._add("cooperativeGestures",le),w.cooperativeGestures&&le.enable();let qe=new zc(B),Xe=new Xi(B);B.doubleClickZoom=new ki(Xe,qe),this._add("tapZoom",qe),this._add("clickZoom",Xe),w.interactive&&w.doubleClickZoom&&B.doubleClickZoom.enable();let ot=new dn;this._add("tapDragZoom",ot);let Tt=B.touchPitch=new Bc(B);this._add("touchPitch",Tt),w.interactive&&w.touchPitch&&B.touchPitch.enable(w.touchPitch);let Yt=Wl(w),Kt=ah(w);B.dragRotate=new Nn(w,Yt,Kt),this._add("mouseRotate",Yt,["mousePitch"]),this._add("mousePitch",Kt,["mouseRotate"]),w.interactive&&w.dragRotate&&B.dragRotate.enable();let xr=(({enable:et,clickTolerance:We})=>{let it=new Xu({checkCorrectEvent:Ft=>c.mouseButton(Ft)===0&&!Ft.ctrlKey});return new Wu({clickTolerance:We,move:(Ft,Ht)=>({around:Ht,panDelta:Ht.sub(Ft)}),activateOnStart:!0,moveStateManager:it,enable:et,assignEvents:Xf})})(w),Ir=new Zu(w,B);B.dragPan=new wn(Q,xr,Ir),this._add("mousePan",xr),this._add("touchPan",Ir,["touchZoom","touchRotate"]),w.interactive&&w.dragPan&&B.dragPan.enable(w.dragPan);let ve=new cf,be=new vu;B.touchZoomRotate=new Yi(Q,be,ve,ot),this._add("touchRotate",ve,["touchPan","touchZoom"]),this._add("touchZoom",be,["touchPan","touchRotate"]),w.interactive&&w.touchZoomRotate&&B.touchZoomRotate.enable(w.touchZoomRotate);let De=B.scrollZoom=new Kr(B,()=>this._triggerRenderFrame());this._add("scrollZoom",De,["mousePan"]),w.interactive&&w.scrollZoom&&B.scrollZoom.enable(w.scrollZoom);let Be=B.keyboard=new Wt(B);this._add("keyboard",Be),w.interactive&&w.keyboard&&B.keyboard.enable(),this._add("blockableMapEvent",new Cs(B))}_add(w,B,Q){this._handlers.push({handlerName:w,handler:B,allowed:Q}),this._handlersById[w]=B}stop(w){if(!this._updatingCamera){for(let{handler:B}of this._handlers)B.reset();this._inertia.clear(),this._fireEvents({},{},w),this._changes=[]}}isActive(){for(let{handler:w}of this._handlers)if(w.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!on(this._eventsInProgress)||this.isZooming()}_blockedByActive(w,B,Q){for(let ee in w)if(ee!==Q&&(!B||B.indexOf(ee)<0))return!0;return!1}_getMapTouches(w){let B=[];for(let Q of w)this._el.contains(Q.target)&&B.push(Q);return B}mergeHandlerResult(w,B,Q,ee,le){if(!Q)return;a.e(w,Q);let qe={handlerName:ee,originalEvent:Q.originalEvent||le};Q.zoomDelta!==void 0&&(B.zoom=qe),Q.panDelta!==void 0&&(B.drag=qe),Q.pitchDelta!==void 0&&(B.pitch=qe),Q.bearingDelta!==void 0&&(B.rotate=qe)}_applyChanges(){let w={},B={},Q={};for(let[ee,le,qe]of this._changes)ee.panDelta&&(w.panDelta=(w.panDelta||new a.P(0,0))._add(ee.panDelta)),ee.zoomDelta&&(w.zoomDelta=(w.zoomDelta||0)+ee.zoomDelta),ee.bearingDelta&&(w.bearingDelta=(w.bearingDelta||0)+ee.bearingDelta),ee.pitchDelta&&(w.pitchDelta=(w.pitchDelta||0)+ee.pitchDelta),ee.around!==void 0&&(w.around=ee.around),ee.pinchAround!==void 0&&(w.pinchAround=ee.pinchAround),ee.noInertia&&(w.noInertia=ee.noInertia),a.e(B,le),a.e(Q,qe);this._updateMapTransform(w,B,Q),this._changes=[]}_updateMapTransform(w,B,Q){let ee=this._map,le=ee._getTransformForUpdate(),qe=ee.terrain;if(!($n(w)||qe&&this._terrainMovement))return this._fireEvents(B,Q,!0);let{panDelta:Xe,zoomDelta:ot,bearingDelta:Tt,pitchDelta:Yt,around:Kt,pinchAround:xr}=w;xr!==void 0&&(Kt=xr),ee._stop(!0),Kt=Kt||ee.transform.centerPoint;let Ir=le.pointLocation(Xe?Kt.sub(Xe):Kt);Tt&&(le.bearing+=Tt),Yt&&(le.pitch+=Yt),ot&&(le.zoom+=ot),qe?this._terrainMovement||!B.drag&&!B.zoom?B.drag&&this._terrainMovement?le.center=le.pointLocation(le.centerPoint.sub(Xe)):le.setLocationAtPoint(Ir,Kt):(this._terrainMovement=!0,this._map._elevationFreeze=!0,le.setLocationAtPoint(Ir,Kt)):le.setLocationAtPoint(Ir,Kt),ee._applyUpdatedTransform(le),this._map._update(),w.noInertia||this._inertia.record(w),this._fireEvents(B,Q,!0)}_fireEvents(w,B,Q){let ee=on(this._eventsInProgress),le=on(w),qe={};for(let Kt in w){let{originalEvent:xr}=w[Kt];this._eventsInProgress[Kt]||(qe[`${Kt}start`]=xr),this._eventsInProgress[Kt]=w[Kt]}!ee&&le&&this._fireEvent("movestart",le.originalEvent);for(let Kt in qe)this._fireEvent(Kt,qe[Kt]);le&&this._fireEvent("move",le.originalEvent);for(let Kt in w){let{originalEvent:xr}=w[Kt];this._fireEvent(Kt,xr)}let Xe={},ot;for(let Kt in this._eventsInProgress){let{handlerName:xr,originalEvent:Ir}=this._eventsInProgress[Kt];this._handlersById[xr].isActive()||(delete this._eventsInProgress[Kt],ot=B[xr]||Ir,Xe[`${Kt}end`]=ot)}for(let Kt in Xe)this._fireEvent(Kt,Xe[Kt]);let Tt=on(this._eventsInProgress),Yt=(ee||le)&&!Tt;if(Yt&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;let Kt=this._map._getTransformForUpdate();Kt.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(Kt)}if(Q&&Yt){this._updatingCamera=!0;let Kt=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),xr=Ir=>Ir!==0&&-this._bearingSnap{delete this._frameId,this.handleEvent(new Fi("renderFrame",{timeStamp:w})),this._applyChanges()})}_triggerRenderFrame(){this._frameId===void 0&&(this._frameId=this._requestFrame())}}class Ra extends a.E{constructor(w,B){super(),this._renderFrameCallback=()=>{let Q=Math.min((u.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(Q)),Q<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=w,this._bearingSnap=B.bearingSnap,this.on("moveend",()=>{delete this._requestedCameraState})}getCenter(){return new a.N(this.transform.center.lng,this.transform.center.lat)}setCenter(w,B){return this.jumpTo({center:w},B)}panBy(w,B,Q){return w=a.P.convert(w).mult(-1),this.panTo(this.transform.center,a.e({offset:w},B),Q)}panTo(w,B,Q){return this.easeTo(a.e({center:w},B),Q)}getZoom(){return this.transform.zoom}setZoom(w,B){return this.jumpTo({zoom:w},B),this}zoomTo(w,B,Q){return this.easeTo(a.e({zoom:w},B),Q)}zoomIn(w,B){return this.zoomTo(this.getZoom()+1,w,B),this}zoomOut(w,B){return this.zoomTo(this.getZoom()-1,w,B),this}getBearing(){return this.transform.bearing}setBearing(w,B){return this.jumpTo({bearing:w},B),this}getPadding(){return this.transform.padding}setPadding(w,B){return this.jumpTo({padding:w},B),this}rotateTo(w,B,Q){return this.easeTo(a.e({bearing:w},B),Q)}resetNorth(w,B){return this.rotateTo(0,a.e({duration:1e3},w),B),this}resetNorthPitch(w,B){return this.easeTo(a.e({bearing:0,pitch:0,duration:1e3},w),B),this}snapToNorth(w,B){return Math.abs(this.getBearing()){if(this._zooming&&(ee.zoom=a.y.number(le,De,tr)),this._rotating&&(ee.bearing=a.y.number(qe,Tt,tr)),this._pitching&&(ee.pitch=a.y.number(Xe,Yt,tr)),this._padding&&(ee.interpolatePadding(ot,Kt,tr),Ir=ee.centerPoint.add(xr)),this.terrain&&!w.freezeElevation&&this._updateElevation(tr),it)ee.setLocationAtPoint(it,Ft);else{let dr=ee.zoomScale(ee.zoom-le),Sr=De>le?Math.min(2,We):Math.max(.5,We),Or=Math.pow(Sr,1-tr),Wr=ee.unproject(Be.add(et.mult(tr*Or)).mult(dr));ee.setLocationAtPoint(ee.renderWorldCopies?Wr.wrap():Wr,Ir)}this._applyUpdatedTransform(ee),this._fireMoveEvents(B)},tr=>{this.terrain&&w.freezeElevation&&this._finalizeElevation(),this._afterEase(B,tr)},w),this}_prepareEase(w,B,Q={}){this._moving=!0,B||Q.moving||this.fire(new a.k("movestart",w)),this._zooming&&!Q.zooming&&this.fire(new a.k("zoomstart",w)),this._rotating&&!Q.rotating&&this.fire(new a.k("rotatestart",w)),this._pitching&&!Q.pitching&&this.fire(new a.k("pitchstart",w))}_prepareElevation(w){this._elevationCenter=w,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(w,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(w){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);let B=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(w<1&&B!==this._elevationTarget){let Q=this._elevationTarget-this._elevationStart;this._elevationStart+=w*(Q-(B-(Q*w+this._elevationStart))/(1-w)),this._elevationTarget=B}this.transform.elevation=a.y.number(this._elevationStart,this._elevationTarget,w)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(w){let B=w.getCameraPosition(),Q=this.terrain.getElevationForLngLatZoom(B.lngLat,w.zoom);if(B.altitudethis._elevateCameraIfInsideTerrain(ee)),this.transformCameraUpdate&&B.push(ee=>this.transformCameraUpdate(ee)),!B.length)return;let Q=w.clone();for(let ee of B){let le=Q.clone(),{center:qe,zoom:Xe,pitch:ot,bearing:Tt,elevation:Yt}=ee(le);qe&&(le.center=qe),Xe!==void 0&&(le.zoom=Xe),ot!==void 0&&(le.pitch=ot),Tt!==void 0&&(le.bearing=Tt),Yt!==void 0&&(le.elevation=Yt),Q.apply(le)}this.transform.apply(Q)}_fireMoveEvents(w){this.fire(new a.k("move",w)),this._zooming&&this.fire(new a.k("zoom",w)),this._rotating&&this.fire(new a.k("rotate",w)),this._pitching&&this.fire(new a.k("pitch",w))}_afterEase(w,B){if(this._easeId&&B&&this._easeId===B)return;delete this._easeId;let Q=this._zooming,ee=this._rotating,le=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,Q&&this.fire(new a.k("zoomend",w)),ee&&this.fire(new a.k("rotateend",w)),le&&this.fire(new a.k("pitchend",w)),this.fire(new a.k("moveend",w))}flyTo(w,B){var Q;if(!w.essential&&u.prefersReducedMotion){let Cn=a.M(w,["center","zoom","bearing","pitch","around"]);return this.jumpTo(Cn,B)}this.stop(),w=a.e({offset:[0,0],speed:1.2,curve:1.42,easing:a.b9},w);let ee=this._getTransformForUpdate(),le=ee.zoom,qe=ee.bearing,Xe=ee.pitch,ot=ee.padding,Tt="bearing"in w?this._normalizeBearing(w.bearing,qe):qe,Yt="pitch"in w?+w.pitch:Xe,Kt="padding"in w?w.padding:ee.padding,xr=a.P.convert(w.offset),Ir=ee.centerPoint.add(xr),ve=ee.pointLocation(Ir),{center:be,zoom:De}=ee.getConstrained(a.N.convert(w.center||ve),(Q=w.zoom)!==null&&Q!==void 0?Q:le);this._normalizeCenter(be,ee);let Be=ee.zoomScale(De-le),et=ee.project(ve),We=ee.project(be).sub(et),it=w.curve,Ft=Math.max(ee.width,ee.height),Ht=Ft/Be,tr=We.mag();if("minZoom"in w){let Cn=a.ac(Math.min(w.minZoom,le,De),ee.minZoom,ee.maxZoom),Kn=Ft/ee.zoomScale(Cn-le);it=Math.sqrt(Kn/tr*2)}let dr=it*it;function Sr(Cn){let Kn=(Ht*Ht-Ft*Ft+(Cn?-1:1)*dr*dr*tr*tr)/(2*(Cn?Ht:Ft)*dr*tr);return Math.log(Math.sqrt(Kn*Kn+1)-Kn)}function Or(Cn){return(Math.exp(Cn)-Math.exp(-Cn))/2}function Wr(Cn){return(Math.exp(Cn)+Math.exp(-Cn))/2}let ni=Sr(!1),Pi=function(Cn){return Wr(ni)/Wr(ni+it*Cn)},cn=function(Cn){return Ft*((Wr(ni)*(Or(Kn=ni+it*Cn)/Wr(Kn))-Or(ni))/dr)/tr;var Kn},ln=(Sr(!0)-ni)/it;if(Math.abs(tr)<1e-6||!isFinite(ln)){if(Math.abs(Ft-Ht)<1e-6)return this.easeTo(w,B);let Cn=Ht0,Pi=Kn=>Math.exp(Cn*it*Kn)}return w.duration="duration"in w?+w.duration:1e3*ln/("screenSpeed"in w?+w.screenSpeed/it:+w.speed),w.maxDuration&&w.duration>w.maxDuration&&(w.duration=0),this._zooming=!0,this._rotating=qe!==Tt,this._pitching=Yt!==Xe,this._padding=!ee.isPaddingEqual(Kt),this._prepareEase(B,!1),this.terrain&&this._prepareElevation(be),this._ease(Cn=>{let Kn=Cn*ln,Ta=1/Pi(Kn);ee.zoom=Cn===1?De:le+ee.scaleZoom(Ta),this._rotating&&(ee.bearing=a.y.number(qe,Tt,Cn)),this._pitching&&(ee.pitch=a.y.number(Xe,Yt,Cn)),this._padding&&(ee.interpolatePadding(ot,Kt,Cn),Ir=ee.centerPoint.add(xr)),this.terrain&&!w.freezeElevation&&this._updateElevation(Cn);let fa=Cn===1?be:ee.unproject(et.add(We.mult(cn(Kn))).mult(Ta));ee.setLocationAtPoint(ee.renderWorldCopies?fa.wrap():fa,Ir),this._applyUpdatedTransform(ee),this._fireMoveEvents(B)},()=>{this.terrain&&w.freezeElevation&&this._finalizeElevation(),this._afterEase(B)},w),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(w,B){var Q;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){let ee=this._onEaseEnd;delete this._onEaseEnd,ee.call(this,B)}return w||(Q=this.handlers)===null||Q===void 0||Q.stop(!1),this}_ease(w,B,Q){Q.animate===!1||Q.duration===0?(w(1),B()):(this._easeStart=u.now(),this._easeOptions=Q,this._onEaseFrame=w,this._onEaseEnd=B,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(w,B){w=a.b3(w,-180,180);let Q=Math.abs(w-B);return Math.abs(w-360-B)180?-360:Q<-180?360:0}queryTerrainElevation(w){return this.terrain?this.terrain.getElevationForLngLatZoom(a.N.convert(w),this.transform.tileZoom)-this.transform.elevation:null}}let La={compact:!0,customAttribution:'MapLibre'};class Na{constructor(w=La){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")))},this._updateData=B=>{!B||B.sourceDataType!=="metadata"&&B.sourceDataType!=="visibility"&&B.dataType!=="style"&&B.type!=="terrain"||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact===!1?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"))},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show")},this.options=w}getDefaultPosition(){return"bottom-right"}onAdd(w){return this._map=w,this._compact=this.options.compact,this._container=c.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=c.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=c.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){c.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(w,B){let Q=this._map._getUIString(`AttributionControl.${B}`);w.title=Q,w.setAttribute("aria-label",Q)}_updateAttributions(){if(!this._map.style)return;let w=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?w=w.concat(this.options.customAttribution.map(ee=>typeof ee!="string"?"":ee)):typeof this.options.customAttribution=="string"&&w.push(this.options.customAttribution)),this._map.style.stylesheet){let ee=this._map.style.stylesheet;this.styleOwner=ee.owner,this.styleId=ee.id}let B=this._map.style.sourceCaches;for(let ee in B){let le=B[ee];if(le.used||le.usedForTerrain){let qe=le.getSource();qe.attribution&&w.indexOf(qe.attribution)<0&&w.push(qe.attribution)}}w=w.filter(ee=>String(ee).trim()),w.sort((ee,le)=>ee.length-le.length),w=w.filter((ee,le)=>{for(let qe=le+1;qe=0)return!1;return!0});let Q=w.join(" | ");Q!==this._attribHTML&&(this._attribHTML=Q,w.length?(this._innerContainer.innerHTML=Q,this._container.classList.remove("maplibregl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty"),this._updateCompact(),this._editLink=null)}}class Yn{constructor(w={}){this._updateCompact=()=>{let B=this._container.children;if(B.length){let Q=B[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact!==!1&&Q.classList.add("maplibregl-compact"):Q.classList.remove("maplibregl-compact")}},this.options=w}getDefaultPosition(){return"bottom-left"}onAdd(w){this._map=w,this._compact=this.options&&this.options.compact,this._container=c.create("div","maplibregl-ctrl");let B=c.create("a","maplibregl-ctrl-logo");return B.target="_blank",B.rel="noopener nofollow",B.href="https://maplibre.org/",B.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),B.setAttribute("rel","noopener nofollow"),this._container.appendChild(B),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){c.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}}class Dn{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(w){let B=++this._id;return this._queue.push({callback:w,id:B,cancelled:!1}),B}remove(w){let B=this._currentlyRunning,Q=B?this._queue.concat(B):this._queue;for(let ee of Q)if(ee.id===w)return void(ee.cancelled=!0)}run(w=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");let B=this._currentlyRunning=this._queue;this._queue=[];for(let Q of B)if(!Q.cancelled&&(Q.callback(w),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var Ka=a.Y([{name:"a_pos3d",type:"Int16",components:3}]);class bo extends a.E{constructor(w){super(),this.sourceCache=w,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,w.usedForTerrain=!0,w.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(w,B){this.sourceCache.update(w,B),this._renderableTilesKeys=[];let Q={};for(let ee of w.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:B}))Q[ee.key]=!0,this._renderableTilesKeys.push(ee.key),this._tiles[ee.key]||(ee.posMatrix=new Float64Array(16),a.aP(ee.posMatrix,0,a.X,0,a.X,0,1),this._tiles[ee.key]=new Vt(ee,this.tileSize));for(let ee in this._tiles)Q[ee]||delete this._tiles[ee]}freeRtt(w){for(let B in this._tiles){let Q=this._tiles[B];(!w||Q.tileID.equals(w)||Q.tileID.isChildOf(w)||w.isChildOf(Q.tileID))&&(Q.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map(w=>this.getTileByID(w))}getTileByID(w){return this._tiles[w]}getTerrainCoords(w){let B={};for(let Q of this._renderableTilesKeys){let ee=this._tiles[Q].tileID;if(ee.canonical.equals(w.canonical)){let le=w.clone();le.posMatrix=new Float64Array(16),a.aP(le.posMatrix,0,a.X,0,a.X,0,1),B[Q]=le}else if(ee.canonical.isChildOf(w.canonical)){let le=w.clone();le.posMatrix=new Float64Array(16);let qe=ee.canonical.z-w.canonical.z,Xe=ee.canonical.x-(ee.canonical.x>>qe<>qe<>qe;a.aP(le.posMatrix,0,Tt,0,Tt,0,1),a.J(le.posMatrix,le.posMatrix,[-Xe*Tt,-ot*Tt,0]),B[Q]=le}else if(w.canonical.isChildOf(ee.canonical)){let le=w.clone();le.posMatrix=new Float64Array(16);let qe=w.canonical.z-ee.canonical.z,Xe=w.canonical.x-(w.canonical.x>>qe<>qe<>qe;a.aP(le.posMatrix,0,a.X,0,a.X,0,1),a.J(le.posMatrix,le.posMatrix,[Xe*Tt,ot*Tt,0]),a.K(le.posMatrix,le.posMatrix,[1/2**qe,1/2**qe,0]),B[Q]=le}}return B}getSourceTile(w,B){let Q=this.sourceCache._source,ee=w.overscaledZ-this.deltaZoom;if(ee>Q.maxzoom&&(ee=Q.maxzoom),ee=Q.minzoom&&(!le||!le.dem);)le=this.sourceCache.getTileByID(w.scaledTo(ee--).key);return le}tilesAfterTime(w=Date.now()){return Object.values(this._tiles).filter(B=>B.timeAdded>=w)}}class Xo{constructor(w,B,Q){this.painter=w,this.sourceCache=new bo(B),this.options=Q,this.exaggeration=typeof Q.exaggeration=="number"?Q.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(w,B,Q,ee=a.X){var le;if(!(B>=0&&B=0&&Qw.canonical.z&&(w.canonical.z>=ee?le=w.canonical.z-ee:a.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));let qe=w.canonical.x-(w.canonical.x>>le<>le<>8<<4|le>>8,B[qe+3]=0;let Q=new a.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(B.buffer)),ee=new g(w,Q,w.gl.RGBA,{premultiply:!1});return ee.bind(w.gl.NEAREST,w.gl.CLAMP_TO_EDGE),this._coordsTexture=ee,ee}pointCoordinate(w){this.painter.maybeDrawDepthAndCoords(!0);let B=new Uint8Array(4),Q=this.painter.context,ee=Q.gl,le=Math.round(w.x*this.painter.pixelRatio/devicePixelRatio),qe=Math.round(w.y*this.painter.pixelRatio/devicePixelRatio),Xe=Math.round(this.painter.height/devicePixelRatio);Q.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),ee.readPixels(le,Xe-qe-1,1,1,ee.RGBA,ee.UNSIGNED_BYTE,B),Q.bindFramebuffer.set(null);let ot=B[0]+(B[2]>>4<<8),Tt=B[1]+((15&B[2])<<8),Yt=this.coordsIndex[255-B[3]],Kt=Yt&&this.sourceCache.getTileByID(Yt);if(!Kt)return null;let xr=this._coordsTextureSize,Ir=(1<w.id!==B),this._recentlyUsed.push(w.id)}stampObject(w){w.stamp=++this._stamp}getOrCreateFreeObject(){for(let B of this._recentlyUsed)if(!this._objects[B].inUse)return this._objects[B];if(this._objects.length>=this._size)throw new Error("No free RenderPool available, call freeAllObjects() required!");let w=this._createObject(this._objects.length);return this._objects.push(w),w}freeObject(w){w.inUse=!1}freeAllObjects(){for(let w of this._objects)this.freeObject(w)}isFull(){return!(this._objects.length!w.inUse)===!1}}let as={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class ws{constructor(w,B){this.painter=w,this.terrain=B,this.pool=new Ss(w.context,30,B.sourceCache.tileSize*B.qualityFactor)}destruct(){this.pool.destruct()}getTexture(w){return this.pool.getObjectForId(w.rtt[this._stacks.length-1].id).texture}prepareForRender(w,B){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=w._order.filter(Q=>!w._layers[Q].isHidden(B)),this._coordsDescendingInv={};for(let Q in w.sourceCaches){this._coordsDescendingInv[Q]={};let ee=w.sourceCaches[Q].getVisibleCoordinates();for(let le of ee){let qe=this.terrain.sourceCache.getTerrainCoords(le);for(let Xe in qe)this._coordsDescendingInv[Q][Xe]||(this._coordsDescendingInv[Q][Xe]=[]),this._coordsDescendingInv[Q][Xe].push(qe[Xe])}}this._coordsDescendingInvStr={};for(let Q of w._order){let ee=w._layers[Q],le=ee.source;if(as[ee.type]&&!this._coordsDescendingInvStr[le]){this._coordsDescendingInvStr[le]={};for(let qe in this._coordsDescendingInv[le])this._coordsDescendingInvStr[le][qe]=this._coordsDescendingInv[le][qe].map(Xe=>Xe.key).sort().join()}}for(let Q of this._renderableTiles)for(let ee in this._coordsDescendingInvStr){let le=this._coordsDescendingInvStr[ee][Q.tileID.key];le&&le!==Q.rttCoords[ee]&&(Q.rtt=[])}}renderLayer(w){if(w.isHidden(this.painter.transform.zoom))return!1;let B=w.type,Q=this.painter,ee=this._renderableLayerIds[this._renderableLayerIds.length-1]===w.id;if(as[B]&&(this._prevType&&as[this._prevType]||this._stacks.push([]),this._prevType=B,this._stacks[this._stacks.length-1].push(w.id),!ee))return!0;if(as[this._prevType]||as[B]&&ee){this._prevType=B;let le=this._stacks.length-1,qe=this._stacks[le]||[];for(let Xe of this._renderableTiles){if(this.pool.isFull()&&(js(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(Xe),Xe.rtt[le]){let Tt=this.pool.getObjectForId(Xe.rtt[le].id);if(Tt.stamp===Xe.rtt[le].stamp){this.pool.useObject(Tt);continue}}let ot=this.pool.getOrCreateFreeObject();this.pool.useObject(ot),this.pool.stampObject(ot),Xe.rtt[le]={id:ot.id,stamp:ot.stamp},Q.context.bindFramebuffer.set(ot.fbo.framebuffer),Q.context.clear({color:a.aM.transparent,stencil:0}),Q.currentStencilSource=void 0;for(let Tt=0;Tt{ue.touchstart=ue.dragStart,ue.touchmoveWindow=ue.dragMove,ue.touchend=ue.dragEnd},va={showCompass:!0,showZoom:!0,visualizePitch:!1};class no{constructor(w,B,Q=!1){this.mousedown=qe=>{this.startMouse(a.e({},qe,{ctrlKey:!0,preventDefault:()=>qe.preventDefault()}),c.mousePos(this.element,qe)),c.addEventListener(window,"mousemove",this.mousemove),c.addEventListener(window,"mouseup",this.mouseup)},this.mousemove=qe=>{this.moveMouse(qe,c.mousePos(this.element,qe))},this.mouseup=qe=>{this.mouseRotate.dragEnd(qe),this.mousePitch&&this.mousePitch.dragEnd(qe),this.offTemp()},this.touchstart=qe=>{qe.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=c.touchPos(this.element,qe.targetTouches)[0],this.startTouch(qe,this._startPos),c.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),c.addEventListener(window,"touchend",this.touchend))},this.touchmove=qe=>{qe.targetTouches.length!==1?this.reset():(this._lastPos=c.touchPos(this.element,qe.targetTouches)[0],this.moveTouch(qe,this._lastPos))},this.touchend=qe=>{qe.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()},this._clickTolerance=10;let ee=w.dragRotate._mouseRotate.getClickTolerance(),le=w.dragRotate._mousePitch.getClickTolerance();this.element=B,this.mouseRotate=Wl({clickTolerance:ee,enable:!0}),this.touchRotate=(({enable:qe,clickTolerance:Xe,bearingDegreesPerPixelMoved:ot=.8})=>{let Tt=new uf;return new Wu({clickTolerance:Xe,move:(Yt,Kt)=>({bearingDelta:(Kt.x-Yt.x)*ot}),moveStateManager:Tt,enable:qe,assignEvents:Ls})})({clickTolerance:ee,enable:!0}),this.map=w,Q&&(this.mousePitch=ah({clickTolerance:le,enable:!0}),this.touchPitch=(({enable:qe,clickTolerance:Xe,pitchDegreesPerPixelMoved:ot=-.5})=>{let Tt=new uf;return new Wu({clickTolerance:Xe,move:(Yt,Kt)=>({pitchDelta:(Kt.y-Yt.y)*ot}),moveStateManager:Tt,enable:qe,assignEvents:Ls})})({clickTolerance:le,enable:!0})),c.addEventListener(B,"mousedown",this.mousedown),c.addEventListener(B,"touchstart",this.touchstart,{passive:!1}),c.addEventListener(B,"touchcancel",this.reset)}startMouse(w,B){this.mouseRotate.dragStart(w,B),this.mousePitch&&this.mousePitch.dragStart(w,B),c.disableDrag()}startTouch(w,B){this.touchRotate.dragStart(w,B),this.touchPitch&&this.touchPitch.dragStart(w,B),c.disableDrag()}moveMouse(w,B){let Q=this.map,{bearingDelta:ee}=this.mouseRotate.dragMove(w,B)||{};if(ee&&Q.setBearing(Q.getBearing()+ee),this.mousePitch){let{pitchDelta:le}=this.mousePitch.dragMove(w,B)||{};le&&Q.setPitch(Q.getPitch()+le)}}moveTouch(w,B){let Q=this.map,{bearingDelta:ee}=this.touchRotate.dragMove(w,B)||{};if(ee&&Q.setBearing(Q.getBearing()+ee),this.touchPitch){let{pitchDelta:le}=this.touchPitch.dragMove(w,B)||{};le&&Q.setPitch(Q.getPitch()+le)}}off(){let w=this.element;c.removeEventListener(w,"mousedown",this.mousedown),c.removeEventListener(w,"touchstart",this.touchstart,{passive:!1}),c.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),c.removeEventListener(window,"touchend",this.touchend),c.removeEventListener(w,"touchcancel",this.reset),this.offTemp()}offTemp(){c.enableDrag(),c.removeEventListener(window,"mousemove",this.mousemove),c.removeEventListener(window,"mouseup",this.mouseup),c.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),c.removeEventListener(window,"touchend",this.touchend)}}let ys;function rs(ue,w,B){let Q=new a.N(ue.lng,ue.lat);if(ue=new a.N(ue.lng,ue.lat),w){let ee=new a.N(ue.lng-360,ue.lat),le=new a.N(ue.lng+360,ue.lat),qe=B.locationPoint(ue).distSqr(w);B.locationPoint(ee).distSqr(w)180;){let ee=B.locationPoint(ue);if(ee.x>=0&&ee.y>=0&&ee.x<=B.width&&ee.y<=B.height)break;ue.lng>B.center.lng?ue.lng-=360:ue.lng+=360}return ue.lng!==Q.lng&&B.locationPoint(ue).y>B.height/2-B.getHorizon()?ue:Q}let $l={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function Cu(ue,w,B){let Q=ue.classList;for(let ee in $l)Q.remove(`maplibregl-${B}-anchor-${ee}`);Q.add(`maplibregl-${B}-anchor-${w}`)}class Yu extends a.E{constructor(w){if(super(),this._onKeyPress=B=>{let Q=B.code,ee=B.charCode||B.keyCode;Q!=="Space"&&Q!=="Enter"&&ee!==32&&ee!==13||this.togglePopup()},this._onMapClick=B=>{let Q=B.originalEvent.target,ee=this._element;this._popup&&(Q===ee||ee.contains(Q))&&this.togglePopup()},this._update=B=>{var Q;if(!this._map)return;let ee=this._map.loaded()&&!this._map.isMoving();((B==null?void 0:B.type)==="terrain"||(B==null?void 0:B.type)==="render"&&!ee)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?rs(this._lngLat,this._flatPos,this._map.transform):(Q=this._lngLat)===null||Q===void 0?void 0:Q.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let le="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?le=`rotateZ(${this._rotation}deg)`:this._rotationAlignment==="map"&&(le=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let qe="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?qe="rotateX(0deg)":this._pitchAlignment==="map"&&(qe=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||B&&B.type!=="moveend"||(this._pos=this._pos.round()),c.setTransform(this._element,`${$l[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${qe} ${le}`),u.frameAsync(new AbortController).then(()=>{this._updateOpacity(B&&B.type==="moveend")}).catch(()=>{})},this._onMove=B=>{if(!this._isDragging){let Q=this._clickTolerance||this._map._clickTolerance;this._isDragging=B.point.dist(this._pointerdownPos)>=Q}this._isDragging&&(this._pos=B.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new a.k("dragstart"))),this.fire(new a.k("drag")))},this._onUp=()=>{this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new a.k("dragend")),this._state="inactive"},this._addDragHandler=B=>{this._element.contains(B.originalEvent.target)&&(B.preventDefault(),this._positionDelta=B.point.sub(this._pos).add(this._offset),this._pointerdownPos=B.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},this._anchor=w&&w.anchor||"center",this._color=w&&w.color||"#3FB1CE",this._scale=w&&w.scale||1,this._draggable=w&&w.draggable||!1,this._clickTolerance=w&&w.clickTolerance||0,this._subpixelPositioning=w&&w.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=w&&w.rotation||0,this._rotationAlignment=w&&w.rotationAlignment||"auto",this._pitchAlignment=w&&w.pitchAlignment&&w.pitchAlignment!=="auto"?w.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(w==null?void 0:w.opacity,w==null?void 0:w.opacityWhenCovered),w&&w.element)this._element=w.element,this._offset=a.P.convert(w&&w.offset||[0,0]);else{this._defaultMarker=!0,this._element=c.create("div");let B=c.createNS("http://www.w3.org/2000/svg","svg"),Q=41,ee=27;B.setAttributeNS(null,"display","block"),B.setAttributeNS(null,"height",`${Q}px`),B.setAttributeNS(null,"width",`${ee}px`),B.setAttributeNS(null,"viewBox",`0 0 ${ee} ${Q}`);let le=c.createNS("http://www.w3.org/2000/svg","g");le.setAttributeNS(null,"stroke","none"),le.setAttributeNS(null,"stroke-width","1"),le.setAttributeNS(null,"fill","none"),le.setAttributeNS(null,"fill-rule","evenodd");let qe=c.createNS("http://www.w3.org/2000/svg","g");qe.setAttributeNS(null,"fill-rule","nonzero");let Xe=c.createNS("http://www.w3.org/2000/svg","g");Xe.setAttributeNS(null,"transform","translate(3.0, 29.0)"),Xe.setAttributeNS(null,"fill","#000000");let ot=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(let Be of ot){let et=c.createNS("http://www.w3.org/2000/svg","ellipse");et.setAttributeNS(null,"opacity","0.04"),et.setAttributeNS(null,"cx","10.5"),et.setAttributeNS(null,"cy","5.80029008"),et.setAttributeNS(null,"rx",Be.rx),et.setAttributeNS(null,"ry",Be.ry),Xe.appendChild(et)}let Tt=c.createNS("http://www.w3.org/2000/svg","g");Tt.setAttributeNS(null,"fill",this._color);let Yt=c.createNS("http://www.w3.org/2000/svg","path");Yt.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),Tt.appendChild(Yt);let Kt=c.createNS("http://www.w3.org/2000/svg","g");Kt.setAttributeNS(null,"opacity","0.25"),Kt.setAttributeNS(null,"fill","#000000");let xr=c.createNS("http://www.w3.org/2000/svg","path");xr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),Kt.appendChild(xr);let Ir=c.createNS("http://www.w3.org/2000/svg","g");Ir.setAttributeNS(null,"transform","translate(6.0, 7.0)"),Ir.setAttributeNS(null,"fill","#FFFFFF");let ve=c.createNS("http://www.w3.org/2000/svg","g");ve.setAttributeNS(null,"transform","translate(8.0, 8.0)");let be=c.createNS("http://www.w3.org/2000/svg","circle");be.setAttributeNS(null,"fill","#000000"),be.setAttributeNS(null,"opacity","0.25"),be.setAttributeNS(null,"cx","5.5"),be.setAttributeNS(null,"cy","5.5"),be.setAttributeNS(null,"r","5.4999962");let De=c.createNS("http://www.w3.org/2000/svg","circle");De.setAttributeNS(null,"fill","#FFFFFF"),De.setAttributeNS(null,"cx","5.5"),De.setAttributeNS(null,"cy","5.5"),De.setAttributeNS(null,"r","5.4999962"),ve.appendChild(be),ve.appendChild(De),qe.appendChild(Xe),qe.appendChild(Tt),qe.appendChild(Kt),qe.appendChild(Ir),qe.appendChild(ve),B.appendChild(qe),B.setAttributeNS(null,"height",Q*this._scale+"px"),B.setAttributeNS(null,"width",ee*this._scale+"px"),this._element.appendChild(B),this._offset=a.P.convert(w&&w.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",B=>{B.preventDefault()}),this._element.addEventListener("mousedown",B=>{B.preventDefault()}),Cu(this._element,this._anchor,"marker"),w&&w.className)for(let B of w.className.split(" "))this._element.classList.add(B);this._popup=null}addTo(w){return this.remove(),this._map=w,this._element.setAttribute("aria-label",w._getUIString("Marker.Title")),w.getCanvasContainer().appendChild(this._element),w.on("move",this._update),w.on("moveend",this._update),w.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),c.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(w){return this._lngLat=a.N.convert(w),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(w){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),w){if(!("offset"in w.options)){let ee=Math.abs(13.5)/Math.SQRT2;w.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[ee,-1*(38.1-13.5+ee)],"bottom-right":[-ee,-1*(38.1-13.5+ee)],left:[13.5,-1*(38.1-13.5)],right:[-13.5,-1*(38.1-13.5)]}:this._offset}this._popup=w,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(w){return this._subpixelPositioning=w,this}getPopup(){return this._popup}togglePopup(){let w=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:w?(w.isOpen()?w.remove():(w.setLngLat(this._lngLat),w.addTo(this._map)),this):this}_updateOpacity(w=!1){var B,Q;if(!(!((B=this._map)===null||B===void 0)&&B.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(w)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout(()=>{this._opacityTimeout=null},100)}let ee=this._map,le=ee.terrain.depthAtPoint(this._pos),qe=ee.terrain.getElevationForLngLatZoom(this._lngLat,ee.transform.tileZoom);if(ee.transform.lngLatToCameraDepth(this._lngLat,qe)-le<.006)return void(this._element.style.opacity=this._opacity);let Xe=-this._offset.y/ee.transform._pixelPerMeter,ot=Math.sin(ee.getPitch()*Math.PI/180)*Xe,Tt=ee.terrain.depthAtPoint(new a.P(this._pos.x,this._pos.y-this._offset.y)),Yt=ee.transform.lngLatToCameraDepth(this._lngLat,qe+ot)-Tt>.006;!((Q=this._popup)===null||Q===void 0)&&Q.isOpen()&&Yt&&this._popup.remove(),this._element.style.opacity=Yt?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(w){return this._offset=a.P.convert(w),this._update(),this}addClassName(w){this._element.classList.add(w)}removeClassName(w){this._element.classList.remove(w)}toggleClassName(w){return this._element.classList.toggle(w)}setDraggable(w){return this._draggable=!!w,this._map&&(w?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(w){return this._rotation=w||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(w){return this._rotationAlignment=w||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(w){return this._pitchAlignment=w&&w!=="auto"?w:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(w,B){return w===void 0&&B===void 0&&(this._opacity="1",this._opacityWhenCovered="0.2"),w!==void 0&&(this._opacity=w),B!==void 0&&(this._opacityWhenCovered=B),this._map&&this._updateOpacity(!0),this}}let Nc={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},pu=0,Uc=!1,xu={maxWidth:100,unit:"metric"};function Ac(ue,w,B){let Q=B&&B.maxWidth||100,ee=ue._container.clientHeight/2,le=ue.unproject([0,ee]),qe=ue.unproject([Q,ee]),Xe=le.distanceTo(qe);if(B&&B.unit==="imperial"){let ot=3.2808*Xe;ot>5280?Ua(w,Q,ot/5280,ue._getUIString("ScaleControl.Miles")):Ua(w,Q,ot,ue._getUIString("ScaleControl.Feet"))}else B&&B.unit==="nautical"?Ua(w,Q,Xe/1852,ue._getUIString("ScaleControl.NauticalMiles")):Xe>=1e3?Ua(w,Q,Xe/1e3,ue._getUIString("ScaleControl.Kilometers")):Ua(w,Q,Xe,ue._getUIString("ScaleControl.Meters"))}function Ua(ue,w,B,Q){let ee=function(le){let qe=Math.pow(10,`${Math.floor(le)}`.length-1),Xe=le/qe;return Xe=Xe>=10?10:Xe>=5?5:Xe>=3?3:Xe>=2?2:Xe>=1?1:function(ot){let Tt=Math.pow(10,Math.ceil(-Math.log(ot)/Math.LN10));return Math.round(ot*Tt)/Tt}(Xe),qe*Xe}(B);ue.style.width=w*(ee/B)+"px",ue.innerHTML=`${ee} ${Q}`}let oo={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},Vc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function hc(ue){if(ue){if(typeof ue=="number"){let w=Math.round(Math.abs(ue)/Math.SQRT2);return{center:new a.P(0,0),top:new a.P(0,ue),"top-left":new a.P(w,w),"top-right":new a.P(-w,w),bottom:new a.P(0,-ue),"bottom-left":new a.P(w,-w),"bottom-right":new a.P(-w,-w),left:new a.P(ue,0),right:new a.P(-ue,0)}}if(ue instanceof a.P||Array.isArray(ue)){let w=a.P.convert(ue);return{center:w,top:w,"top-left":w,"top-right":w,bottom:w,"bottom-left":w,"bottom-right":w,left:w,right:w}}return{center:a.P.convert(ue.center||[0,0]),top:a.P.convert(ue.top||[0,0]),"top-left":a.P.convert(ue["top-left"]||[0,0]),"top-right":a.P.convert(ue["top-right"]||[0,0]),bottom:a.P.convert(ue.bottom||[0,0]),"bottom-left":a.P.convert(ue["bottom-left"]||[0,0]),"bottom-right":a.P.convert(ue["bottom-right"]||[0,0]),left:a.P.convert(ue.left||[0,0]),right:a.P.convert(ue.right||[0,0])}}return hc(new a.P(0,0))}let Ku=o;i.AJAXError=a.bh,i.Evented=a.E,i.LngLat=a.N,i.MercatorCoordinate=a.Z,i.Point=a.P,i.addProtocol=a.bi,i.config=a.a,i.removeProtocol=a.bj,i.AttributionControl=Na,i.BoxZoomHandler=ku,i.CanvasSource=Jt,i.CooperativeGesturesHandler=Qi,i.DoubleClickZoomHandler=ki,i.DragPanHandler=wn,i.DragRotateHandler=Nn,i.EdgeInsets=hu,i.FullscreenControl=class extends a.E{constructor(ue={}){super(),this._onFullscreenChange=()=>{var w;let B=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;!((w=B==null?void 0:B.shadowRoot)===null||w===void 0)&&w.fullscreenElement;)B=B.shadowRoot.fullscreenElement;B===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,ue&&ue.container&&(ue.container instanceof HTMLElement?this._container=ue.container:a.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(ue){return this._map=ue,this._container||(this._container=this._map.getContainer()),this._controlContainer=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){c.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){let ue=this._fullscreenButton=c.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);c.create("span","maplibregl-ctrl-icon",ue).setAttribute("aria-hidden","true"),ue.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){let ue=this._getTitle();this._fullscreenButton.setAttribute("aria-label",ue),this._fullscreenButton.title=ue}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new a.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new a.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},i.GeoJSONSource=st,i.GeolocateControl=class extends a.E{constructor(ue){super(),this._onSuccess=w=>{if(this._map){if(this._isOutOfMapMaxBounds(w))return this._setErrorState(),this.fire(new a.k("outofmaxbounds",w)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=w,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(w),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(w),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new a.k("geolocate",w)),this._finish()}},this._updateCamera=w=>{let B=new a.N(w.coords.longitude,w.coords.latitude),Q=w.coords.accuracy,ee=this._map.getBearing(),le=a.e({bearing:ee},this.options.fitBoundsOptions),qe=ce.fromLngLat(B,Q);this._map.fitBounds(qe,le,{geolocateSource:!0})},this._updateMarker=w=>{if(w){let B=new a.N(w.coords.longitude,w.coords.latitude);this._accuracyCircleMarker.setLngLat(B).addTo(this._map),this._userLocationDotMarker.setLngLat(B).addTo(this._map),this._accuracy=w.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=w=>{if(this._map){if(this.options.trackUserLocation)if(w.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;let B=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(w.code===3&&Uc)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new a.k("error",w)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",w=>w.preventDefault()),this._geolocateButton=c.create("button","maplibregl-ctrl-geolocate",this._container),c.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=w=>{if(this._map){if(w===!1){a.w("Geolocation support is not available so the GeolocateControl will be disabled.");let B=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B)}else{let B=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=c.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new Yu({element:this._dotElement}),this._circleElement=c.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Yu({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",()=>this.trigger()),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",B=>{B.geolocateSource||this._watchState!=="ACTIVE_LOCK"||B.originalEvent&&B.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new a.k("trackuserlocationend")),this.fire(new a.k("userlocationlostfocus")))})}},this.options=a.e({},Nc,ue)}onAdd(ue){return this._map=ue,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return a._(this,arguments,void 0,function*(w=!1){if(ys!==void 0&&!w)return ys;if(window.navigator.permissions===void 0)return ys=!!window.navigator.geolocation,ys;try{ys=(yield window.navigator.permissions.query({name:"geolocation"})).state!=="denied"}catch(B){ys=!!window.navigator.geolocation}return ys})}().then(w=>this._finishSetupUI(w)),this._container}onRemove(){this._geolocationWatchID!==void 0&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),c.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,pu=0,Uc=!1}_isOutOfMapMaxBounds(ue){let w=this._map.getMaxBounds(),B=ue.coords;return w&&(B.longitudew.getEast()||B.latitudew.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){let ue=this._map.getBounds(),w=ue.getSouthEast(),B=ue.getNorthEast(),Q=w.distanceTo(B),ee=Math.ceil(this._accuracy/(Q/this._map._container.clientHeight)*2);this._circleElement.style.width=`${ee}px`,this._circleElement.style.height=`${ee}px`}trigger(){if(!this._setup)return a.w("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new a.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":pu--,Uc=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new a.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new a.k("trackuserlocationstart")),this.fire(new a.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let ue;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),pu++,pu>1?(ue={maximumAge:6e5,timeout:0},Uc=!0):(ue=this.options.positionOptions,Uc=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,ue)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},i.Hash=Ah,i.ImageSource=Gt,i.KeyboardHandler=Wt,i.LngLatBounds=ce,i.LogoControl=Yn,i.Map=class extends Ra{constructor(ue){a.bf.mark(a.bg.create);let w=Object.assign(Object.assign({},Ws),ue);if(w.minZoom!=null&&w.maxZoom!=null&&w.minZoom>w.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(w.minPitch!=null&&w.maxPitch!=null&&w.minPitch>w.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(w.minPitch!=null&&w.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(w.maxPitch!=null&&w.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new nl(w.minZoom,w.maxZoom,w.minPitch,w.maxPitch,w.renderWorldCopies),{bearingSnap:w.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new Dn,this._controls=[],this._mapId=a.a4(),this._contextLost=B=>{B.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new a.k("webglcontextlost",{originalEvent:B}))},this._contextRestored=B=>{this._setupPainter(),this.resize(),this._update(),this.fire(new a.k("webglcontextrestored",{originalEvent:B}))},this._onMapScroll=B=>{if(B.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=w.interactive,this._maxTileCacheSize=w.maxTileCacheSize,this._maxTileCacheZoomLevels=w.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=w.failIfMajorPerformanceCaveat===!0,this._preserveDrawingBuffer=w.preserveDrawingBuffer===!0,this._antialias=w.antialias===!0,this._trackResize=w.trackResize===!0,this._bearingSnap=w.bearingSnap,this._refreshExpiredTiles=w.refreshExpiredTiles===!0,this._fadeDuration=w.fadeDuration,this._crossSourceCollisions=w.crossSourceCollisions===!0,this._collectResourceTiming=w.collectResourceTiming===!0,this._locale=Object.assign(Object.assign({},Ho),w.locale),this._clickTolerance=w.clickTolerance,this._overridePixelRatio=w.pixelRatio,this._maxCanvasSize=w.maxCanvasSize,this.transformCameraUpdate=w.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=w.cancelPendingTileRequestsWhileZooming===!0,this._imageQueueHandle=p.addThrottleControl(()=>this.isMoving()),this._requestManager=new k(w.transformRequest),typeof w.container=="string"){if(this._container=document.getElementById(w.container),!this._container)throw new Error(`Container '${w.container}' not found.`)}else{if(!(w.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=w.container}if(w.maxBounds&&this.setMaxBounds(w.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",()=>this._update(!1)).on("moveend",()=>this._update(!1)).on("zoom",()=>this._update(!0)).on("terrain",()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)}).once("idle",()=>{this._idleTriggered=!0}),typeof window!="undefined"){addEventListener("online",this._onWindowOnline,!1);let B=!1,Q=nh(ee=>{this._trackResize&&!this._removed&&(this.resize(ee),this.redraw())},50);this._resizeObserver=new ResizeObserver(ee=>{B?Q(ee):B=!0}),this._resizeObserver.observe(this._container)}this.handlers=new Ca(this,w),this._hash=w.hash&&new Ah(typeof w.hash=="string"&&w.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:w.center,zoom:w.zoom,bearing:w.bearing,pitch:w.pitch}),w.bounds&&(this.resize(),this.fitBounds(w.bounds,a.e({},w.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=w.localIdeographFontFamily,this._validateStyle=w.validateStyle,w.style&&this.setStyle(w.style,{localIdeographFontFamily:w.localIdeographFontFamily}),w.attributionControl&&this.addControl(new Na(typeof w.attributionControl=="boolean"?void 0:w.attributionControl)),w.maplibreLogo&&this.addControl(new Yn,w.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",B=>{this._update(B.dataType==="style"),this.fire(new a.k(`${B.dataType}data`,B))}),this.on("dataloading",B=>{this.fire(new a.k(`${B.dataType}dataloading`,B))}),this.on("dataabort",B=>{this.fire(new a.k("sourcedataabort",B))})}_getMapId(){return this._mapId}addControl(ue,w){if(w===void 0&&(w=ue.getDefaultPosition?ue.getDefaultPosition():"top-right"),!ue||!ue.onAdd)return this.fire(new a.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));let B=ue.onAdd(this);this._controls.push(ue);let Q=this._controlPositions[w];return w.indexOf("bottom")!==-1?Q.insertBefore(B,Q.firstChild):Q.appendChild(B),this}removeControl(ue){if(!ue||!ue.onRemove)return this.fire(new a.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));let w=this._controls.indexOf(ue);return w>-1&&this._controls.splice(w,1),ue.onRemove(this),this}hasControl(ue){return this._controls.indexOf(ue)>-1}calculateCameraOptionsFromTo(ue,w,B,Q){return Q==null&&this.terrain&&(Q=this.terrain.getElevationForLngLatZoom(B,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(ue,w,B,Q)}resize(ue){var w;let B=this._containerDimensions(),Q=B[0],ee=B[1],le=this._getClampedPixelRatio(Q,ee);if(this._resizeCanvas(Q,ee,le),this.painter.resize(Q,ee,le),this.painter.overLimit()){let Xe=this.painter.context.gl;this._maxCanvasSize=[Xe.drawingBufferWidth,Xe.drawingBufferHeight];let ot=this._getClampedPixelRatio(Q,ee);this._resizeCanvas(Q,ee,ot),this.painter.resize(Q,ee,ot)}this.transform.resize(Q,ee),(w=this._requestedCameraState)===null||w===void 0||w.resize(Q,ee);let qe=!this._moving;return qe&&(this.stop(),this.fire(new a.k("movestart",ue)).fire(new a.k("move",ue))),this.fire(new a.k("resize",ue)),qe&&this.fire(new a.k("moveend",ue)),this}_getClampedPixelRatio(ue,w){let{0:B,1:Q}=this._maxCanvasSize,ee=this.getPixelRatio(),le=ue*ee,qe=w*ee;return Math.min(le>B?B/le:1,qe>Q?Q/qe:1)*ee}getPixelRatio(){var ue;return(ue=this._overridePixelRatio)!==null&&ue!==void 0?ue:devicePixelRatio}setPixelRatio(ue){this._overridePixelRatio=ue,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(ue){return this.transform.setMaxBounds(ce.convert(ue)),this._update()}setMinZoom(ue){if((ue=ue==null?-2:ue)>=-2&&ue<=this.transform.maxZoom)return this.transform.minZoom=ue,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=ue,this._update(),this.getZoom()>ue&&this.setZoom(ue),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(ue){if((ue=ue==null?0:ue)<0)throw new Error("minPitch must be greater than or equal to 0");if(ue>=0&&ue<=this.transform.maxPitch)return this.transform.minPitch=ue,this._update(),this.getPitch()85)throw new Error("maxPitch must be less than or equal to 85");if(ue>=this.transform.minPitch)return this.transform.maxPitch=ue,this._update(),this.getPitch()>ue&&this.setPitch(ue),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(ue){return this.transform.renderWorldCopies=ue,this._update()}project(ue){return this.transform.locationPoint(a.N.convert(ue),this.style&&this.terrain)}unproject(ue){return this.transform.pointLocation(a.P.convert(ue),this.terrain)}isMoving(){var ue;return this._moving||((ue=this.handlers)===null||ue===void 0?void 0:ue.isMoving())}isZooming(){var ue;return this._zooming||((ue=this.handlers)===null||ue===void 0?void 0:ue.isZooming())}isRotating(){var ue;return this._rotating||((ue=this.handlers)===null||ue===void 0?void 0:ue.isRotating())}_createDelegatedListener(ue,w,B){if(ue==="mouseenter"||ue==="mouseover"){let Q=!1;return{layers:w,listener:B,delegates:{mousemove:le=>{let qe=w.filter(ot=>this.getLayer(ot)),Xe=qe.length!==0?this.queryRenderedFeatures(le.point,{layers:qe}):[];Xe.length?Q||(Q=!0,B.call(this,new jl(ue,this,le.originalEvent,{features:Xe}))):Q=!1},mouseout:()=>{Q=!1}}}}if(ue==="mouseleave"||ue==="mouseout"){let Q=!1;return{layers:w,listener:B,delegates:{mousemove:qe=>{let Xe=w.filter(ot=>this.getLayer(ot));(Xe.length!==0?this.queryRenderedFeatures(qe.point,{layers:Xe}):[]).length?Q=!0:Q&&(Q=!1,B.call(this,new jl(ue,this,qe.originalEvent)))},mouseout:qe=>{Q&&(Q=!1,B.call(this,new jl(ue,this,qe.originalEvent)))}}}}{let Q=ee=>{let le=w.filter(Xe=>this.getLayer(Xe)),qe=le.length!==0?this.queryRenderedFeatures(ee.point,{layers:le}):[];qe.length&&(ee.features=qe,B.call(this,ee),delete ee.features)};return{layers:w,listener:B,delegates:{[ue]:Q}}}}_saveDelegatedListener(ue,w){this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[ue]=this._delegatedListeners[ue]||[],this._delegatedListeners[ue].push(w)}_removeDelegatedListener(ue,w,B){if(!this._delegatedListeners||!this._delegatedListeners[ue])return;let Q=this._delegatedListeners[ue];for(let ee=0;eew.includes(qe))){for(let qe in le.delegates)this.off(qe,le.delegates[qe]);return void Q.splice(ee,1)}}}on(ue,w,B){if(B===void 0)return super.on(ue,w);let Q=this._createDelegatedListener(ue,typeof w=="string"?[w]:w,B);this._saveDelegatedListener(ue,Q);for(let ee in Q.delegates)this.on(ee,Q.delegates[ee]);return this}once(ue,w,B){if(B===void 0)return super.once(ue,w);let Q=typeof w=="string"?[w]:w,ee=this._createDelegatedListener(ue,Q,B);for(let le in ee.delegates){let qe=ee.delegates[le];ee.delegates[le]=(...Xe)=>{this._removeDelegatedListener(ue,Q,B),qe(...Xe)}}this._saveDelegatedListener(ue,ee);for(let le in ee.delegates)this.once(le,ee.delegates[le]);return this}off(ue,w,B){return B===void 0?super.off(ue,w):(this._removeDelegatedListener(ue,typeof w=="string"?[w]:w,B),this)}queryRenderedFeatures(ue,w){if(!this.style)return[];let B,Q=ue instanceof a.P||Array.isArray(ue),ee=Q?ue:[[0,0],[this.transform.width,this.transform.height]];if(w=w||(Q?{}:ue)||{},ee instanceof a.P||typeof ee[0]=="number")B=[a.P.convert(ee)];else{let le=a.P.convert(ee[0]),qe=a.P.convert(ee[1]);B=[le,new a.P(qe.x,le.y),qe,new a.P(le.x,qe.y),le]}return this.style.queryRenderedFeatures(B,w,this.transform)}querySourceFeatures(ue,w){return this.style.querySourceFeatures(ue,w)}setStyle(ue,w){return(w=a.e({},{localIdeographFontFamily:this._localIdeographFontFamily,validate:this._validateStyle},w)).diff!==!1&&w.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&ue?(this._diffStyle(ue,w),this):(this._localIdeographFontFamily=w.localIdeographFontFamily,this._updateStyle(ue,w))}setTransformRequest(ue){return this._requestManager.setTransformRequest(ue),this}_getUIString(ue){let w=this._locale[ue];if(w==null)throw new Error(`Missing UI string '${ue}'`);return w}_updateStyle(ue,w){if(w.transformStyle&&this.style&&!this.style._loaded)return void this.style.once("style.load",()=>this._updateStyle(ue,w));let B=this.style&&w.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!ue)),ue?(this.style=new Ga(this,w||{}),this.style.setEventedParent(this,{style:this.style}),typeof ue=="string"?this.style.loadURL(ue,w,B):this.style.loadJSON(ue,w,B),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new Ga(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(ue,w){if(typeof ue=="string"){let B=this._requestManager.transformRequest(ue,"Style");a.h(B,new AbortController).then(Q=>{this._updateDiff(Q.data,w)}).catch(Q=>{Q&&this.fire(new a.j(Q))})}else typeof ue=="object"&&this._updateDiff(ue,w)}_updateDiff(ue,w){try{this.style.setState(ue,w)&&this._update(!0)}catch(B){a.w(`Unable to perform style diff: ${B.message||B.error||B}. Rebuilding the style from scratch.`),this._updateStyle(ue,w)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():a.w("There is no style added to the map.")}addSource(ue,w){return this._lazyInitEmptyStyle(),this.style.addSource(ue,w),this._update(!0)}isSourceLoaded(ue){let w=this.style&&this.style.sourceCaches[ue];if(w!==void 0)return w.loaded();this.fire(new a.j(new Error(`There is no source with ID '${ue}'`)))}setTerrain(ue){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),ue){let w=this.style.sourceCaches[ue.source];if(!w)throw new Error(`cannot load terrain, because there exists no source with ID: ${ue.source}`);this.terrain===null&&w.reload();for(let B in this.style._layers){let Q=this.style._layers[B];Q.type==="hillshade"&&Q.source===ue.source&&a.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new Xo(this.painter,w,ue),this.painter.renderToTexture=new ws(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=B=>{B.dataType==="style"?this.terrain.sourceCache.freeRtt():B.dataType==="source"&&B.tile&&(B.sourceId!==ue.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(B.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new a.k("terrain",{terrain:ue})),this}getTerrain(){var ue,w;return(w=(ue=this.terrain)===null||ue===void 0?void 0:ue.options)!==null&&w!==void 0?w:null}areTilesLoaded(){let ue=this.style&&this.style.sourceCaches;for(let w in ue){let B=ue[w]._tiles;for(let Q in B){let ee=B[Q];if(ee.state!=="loaded"&&ee.state!=="errored")return!1}}return!0}removeSource(ue){return this.style.removeSource(ue),this._update(!0)}getSource(ue){return this.style.getSource(ue)}addImage(ue,w,B={}){let{pixelRatio:Q=1,sdf:ee=!1,stretchX:le,stretchY:qe,content:Xe,textFitWidth:ot,textFitHeight:Tt}=B;if(this._lazyInitEmptyStyle(),!(w instanceof HTMLImageElement||a.b(w))){if(w.width===void 0||w.height===void 0)return this.fire(new a.j(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{let{width:Yt,height:Kt,data:xr}=w,Ir=w;return this.style.addImage(ue,{data:new a.R({width:Yt,height:Kt},new Uint8Array(xr)),pixelRatio:Q,stretchX:le,stretchY:qe,content:Xe,textFitWidth:ot,textFitHeight:Tt,sdf:ee,version:0,userImage:Ir}),Ir.onAdd&&Ir.onAdd(this,ue),this}}{let{width:Yt,height:Kt,data:xr}=u.getImageData(w);this.style.addImage(ue,{data:new a.R({width:Yt,height:Kt},xr),pixelRatio:Q,stretchX:le,stretchY:qe,content:Xe,textFitWidth:ot,textFitHeight:Tt,sdf:ee,version:0})}}updateImage(ue,w){let B=this.style.getImage(ue);if(!B)return this.fire(new a.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));let Q=w instanceof HTMLImageElement||a.b(w)?u.getImageData(w):w,{width:ee,height:le,data:qe}=Q;if(ee===void 0||le===void 0)return this.fire(new a.j(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(ee!==B.data.width||le!==B.data.height)return this.fire(new a.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));let Xe=!(w instanceof HTMLImageElement||a.b(w));return B.data.replace(qe,Xe),this.style.updateImage(ue,B),this}getImage(ue){return this.style.getImage(ue)}hasImage(ue){return ue?!!this.style.getImage(ue):(this.fire(new a.j(new Error("Missing required image id"))),!1)}removeImage(ue){this.style.removeImage(ue)}loadImage(ue){return p.getImage(this._requestManager.transformRequest(ue,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(ue,w){return this._lazyInitEmptyStyle(),this.style.addLayer(ue,w),this._update(!0)}moveLayer(ue,w){return this.style.moveLayer(ue,w),this._update(!0)}removeLayer(ue){return this.style.removeLayer(ue),this._update(!0)}getLayer(ue){return this.style.getLayer(ue)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(ue,w,B){return this.style.setLayerZoomRange(ue,w,B),this._update(!0)}setFilter(ue,w,B={}){return this.style.setFilter(ue,w,B),this._update(!0)}getFilter(ue){return this.style.getFilter(ue)}setPaintProperty(ue,w,B,Q={}){return this.style.setPaintProperty(ue,w,B,Q),this._update(!0)}getPaintProperty(ue,w){return this.style.getPaintProperty(ue,w)}setLayoutProperty(ue,w,B,Q={}){return this.style.setLayoutProperty(ue,w,B,Q),this._update(!0)}getLayoutProperty(ue,w){return this.style.getLayoutProperty(ue,w)}setGlyphs(ue,w={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(ue,w),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(ue,w,B={}){return this._lazyInitEmptyStyle(),this.style.addSprite(ue,w,B,Q=>{Q||this._update(!0)}),this}removeSprite(ue){return this._lazyInitEmptyStyle(),this.style.removeSprite(ue),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(ue,w={}){return this._lazyInitEmptyStyle(),this.style.setSprite(ue,w,B=>{B||this._update(!0)}),this}setLight(ue,w={}){return this._lazyInitEmptyStyle(),this.style.setLight(ue,w),this._update(!0)}getLight(){return this.style.getLight()}setSky(ue){return this._lazyInitEmptyStyle(),this.style.setSky(ue),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(ue,w){return this.style.setFeatureState(ue,w),this._update()}removeFeatureState(ue,w){return this.style.removeFeatureState(ue,w),this._update()}getFeatureState(ue){return this.style.getFeatureState(ue)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let ue=0,w=0;return this._container&&(ue=this._container.clientWidth||400,w=this._container.clientHeight||300),[ue,w]}_setupContainer(){let ue=this._container;ue.classList.add("maplibregl-map");let w=this._canvasContainer=c.create("div","maplibregl-canvas-container",ue);this._interactive&&w.classList.add("maplibregl-interactive"),this._canvas=c.create("canvas","maplibregl-canvas",w),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");let B=this._containerDimensions(),Q=this._getClampedPixelRatio(B[0],B[1]);this._resizeCanvas(B[0],B[1],Q);let ee=this._controlContainer=c.create("div","maplibregl-control-container",ue),le=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(qe=>{le[qe]=c.create("div",`maplibregl-ctrl-${qe} `,ee)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(ue,w,B){this._canvas.width=Math.floor(B*ue),this._canvas.height=Math.floor(B*w),this._canvas.style.width=`${ue}px`,this._canvas.style.height=`${w}px`}_setupPainter(){let ue={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1},w=null;this._canvas.addEventListener("webglcontextcreationerror",Q=>{w={requestedAttributes:ue},Q&&(w.statusMessage=Q.statusMessage,w.type=Q.type)},{once:!0});let B=this._canvas.getContext("webgl2",ue)||this._canvas.getContext("webgl",ue);if(!B){let Q="Failed to initialize WebGL";throw w?(w.message=Q,new Error(JSON.stringify(w))):new Error(Q)}this.painter=new Dc(B,this.transform),f.testSupport(B)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(ue){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||ue,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(ue){return this._update(),this._renderTaskQueue.add(ue)}_cancelRenderFrame(ue){this._renderTaskQueue.remove(ue)}_render(ue){let w=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(ue),this._removed)return;let B=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;let ee=this.transform.zoom,le=u.now();this.style.zoomHistory.update(ee,le);let qe=new a.z(ee,{now:le,fadeDuration:w,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),Xe=qe.crossFadingFactor();Xe===1&&Xe===this._crossFadingFactor||(B=!0,this._crossFadingFactor=Xe),this.style.update(qe)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,w,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:w,showPadding:this.showPadding}),this.fire(new a.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,a.bf.mark(a.bg.load),this.fire(new a.k("load"))),this.style&&(this.style.hasTransitions()||B)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();let Q=this._sourcesDirty||this._styleDirty||this._placementDirty;return Q||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new a.k("idle")),!this._loaded||this._fullyLoaded||Q||(this._fullyLoaded=!0,a.bf.mark(a.bg.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var ue;this._hash&&this._hash.remove();for(let B of this._controls)B.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window!="undefined"&&removeEventListener("online",this._onWindowOnline,!1),p.removeThrottleControl(this._imageQueueHandle),(ue=this._resizeObserver)===null||ue===void 0||ue.disconnect();let w=this.painter.context.gl.getExtension("WEBGL_lose_context");w!=null&&w.loseContext&&w.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),c.remove(this._canvasContainer),c.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),a.bf.clearMetrics(),this._removed=!0,this.fire(new a.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,u.frameAsync(this._frameRequest).then(ue=>{a.bf.frame(ue),this._frameRequest=null,this._render(ue)}).catch(()=>{}))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(ue){this._showTileBoundaries!==ue&&(this._showTileBoundaries=ue,this._update())}get showPadding(){return!!this._showPadding}set showPadding(ue){this._showPadding!==ue&&(this._showPadding=ue,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(ue){this._showCollisionBoxes!==ue&&(this._showCollisionBoxes=ue,ue?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(ue){this._showOverdrawInspector!==ue&&(this._showOverdrawInspector=ue,this._update())}get repaint(){return!!this._repaint}set repaint(ue){this._repaint!==ue&&(this._repaint=ue,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(ue){this._vertices=ue,this._update()}get version(){return ml}getCameraTargetElevation(){return this.transform.elevation}},i.MapMouseEvent=jl,i.MapTouchEvent=lf,i.MapWheelEvent=Hh,i.Marker=Yu,i.NavigationControl=class{constructor(ue){this._updateZoomButtons=()=>{let w=this._map.getZoom(),B=w===this._map.getMaxZoom(),Q=w===this._map.getMinZoom();this._zoomInButton.disabled=B,this._zoomOutButton.disabled=Q,this._zoomInButton.setAttribute("aria-disabled",B.toString()),this._zoomOutButton.setAttribute("aria-disabled",Q.toString())},this._rotateCompassArrow=()=>{let w=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=w},this._setButtonTitle=(w,B)=>{let Q=this._map._getUIString(`NavigationControl.${B}`);w.title=Q,w.setAttribute("aria-label",Q)},this.options=a.e({},va,ue),this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",w=>w.preventDefault()),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",w=>this._map.zoomIn({},{originalEvent:w})),c.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",w=>this._map.zoomOut({},{originalEvent:w})),c.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",w=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:w}):this._map.resetNorth({},{originalEvent:w})}),this._compassIcon=c.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(ue){return this._map=ue,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new no(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){c.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(ue,w){let B=c.create("button",ue,this._container);return B.type="button",B.addEventListener("click",w),B}},i.Popup=class extends a.E{constructor(ue){super(),this.remove=()=>(this._content&&c.remove(this._content),this._container&&(c.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new a.k("close"))),this),this._onMouseUp=w=>{this._update(w.point)},this._onMouseMove=w=>{this._update(w.point)},this._onDrag=w=>{this._update(w.point)},this._update=w=>{var B;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=c.create("div","maplibregl-popup",this._map.getContainer()),this._tip=c.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(let Xe of this.options.className.split(" "))this._container.classList.add(Xe);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?rs(this._lngLat,this._flatPos,this._map.transform):(B=this._lngLat)===null||B===void 0?void 0:B.wrap(),this._trackPointer&&!w)return;let Q=this._flatPos=this._pos=this._trackPointer&&w?w:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&w?w:this._map.transform.locationPoint(this._lngLat));let ee=this.options.anchor,le=hc(this.options.offset);if(!ee){let Xe=this._container.offsetWidth,ot=this._container.offsetHeight,Tt;Tt=Q.y+le.bottom.ythis._map.transform.height-ot?["bottom"]:[],Q.xthis._map.transform.width-Xe/2&&Tt.push("right"),ee=Tt.length===0?"bottom":Tt.join("-")}let qe=Q.add(le[ee]);this.options.subpixelPositioning||(qe=qe.round()),c.setTransform(this._container,`${$l[ee]} translate(${qe.x}px,${qe.y}px)`),Cu(this._container,ee,"popup")},this._onClose=()=>{this.remove()},this.options=a.e(Object.create(oo),ue)}addTo(ue){return this._map&&this.remove(),this._map=ue,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new a.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(ue){return this._lngLat=a.N.convert(ue),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(ue){return this.setDOMContent(document.createTextNode(ue))}setHTML(ue){let w=document.createDocumentFragment(),B=document.createElement("body"),Q;for(B.innerHTML=ue;Q=B.firstChild,Q;)w.appendChild(Q);return this.setDOMContent(w)}getMaxWidth(){var ue;return(ue=this._container)===null||ue===void 0?void 0:ue.style.maxWidth}setMaxWidth(ue){return this.options.maxWidth=ue,this._update(),this}setDOMContent(ue){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=c.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(ue),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(ue){return this._container&&this._container.classList.add(ue),this}removeClassName(ue){return this._container&&this._container.classList.remove(ue),this}setOffset(ue){return this.options.offset=ue,this._update(),this}toggleClassName(ue){if(this._container)return this._container.classList.toggle(ue)}setSubpixelPositioning(ue){this.options.subpixelPositioning=ue}_createCloseButton(){this.options.closeButton&&(this._closeButton=c.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;let ue=this._container.querySelector(Vc);ue&&ue.focus()}},i.RasterDEMTileSource=Zt,i.RasterTileSource=pt,i.ScaleControl=class{constructor(ue){this._onMove=()=>{Ac(this._map,this._container,this.options)},this.setUnit=w=>{this.options.unit=w,Ac(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},xu),ue)}getDefaultPosition(){return"bottom-left"}onAdd(ue){return this._map=ue,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-scale",ue.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){c.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},i.ScrollZoomHandler=Kr,i.Style=Ga,i.TerrainControl=class{constructor(ue){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=ue}onAdd(ue){return this._map=ue,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=c.create("button","maplibregl-ctrl-terrain",this._container),c.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){c.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},i.TwoFingersTouchPitchHandler=Bc,i.TwoFingersTouchRotateHandler=cf,i.TwoFingersTouchZoomHandler=vu,i.TwoFingersTouchZoomRotateHandler=Yi,i.VectorTileSource=ut,i.VideoSource=Nt,i.addSourceType=(ue,w)=>a._(void 0,void 0,void 0,function*(){if(wr(ue))throw new Error(`A source type called "${ue}" already exists.`);((B,Q)=>{sr[B]=Q})(ue,w)}),i.clearPrewarmedResources=function(){let ue=me;ue&&(ue.isPreloaded()&&ue.numActive()===1?(ue.release(_e),me=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},i.getMaxParallelImageRequests=function(){return a.a.MAX_PARALLEL_IMAGE_REQUESTS},i.getRTLTextPluginStatus=function(){return Qt().getRTLTextPluginStatus()},i.getVersion=function(){return Ku},i.getWorkerCount=function(){return Ee.workerCount},i.getWorkerUrl=function(){return a.a.WORKER_URL},i.importScriptInWorkers=function(ue){return Ae().broadcast("IS",ue)},i.prewarm=function(){Se().acquire(_e)},i.setMaxParallelImageRequests=function(ue){a.a.MAX_PARALLEL_IMAGE_REQUESTS=ue},i.setRTLTextPlugin=function(ue,w){return Qt().setRTLTextPlugin(ue,w)},i.setWorkerCount=function(ue){Ee.workerCount=ue},i.setWorkerUrl=function(ue){a.a.WORKER_URL=ue}});var n=e;return n})});var cje=ye((Ebr,uje)=>{"use strict";var nw=Dr(),AXt=ru().sanitizeHTML,SXt=AJ(),oje=wx();function sje(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=oje.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var ag=sje.prototype;ag.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=u7(t)};ag.needsNewImage=function(e){var t=this.subplot.map;return t.getSource(this.idSource)&&this.sourceType==="image"&&e.sourcetype==="image"&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))};ag.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type};ag.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]};ag.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]};ag.updateImage=function(e){var t=this.subplot.map;t.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var r=this.findFollowingMapLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)};ag.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,!!u7(e)){var r=MXt(e);t.addSource(this.idSource,r)}};ag.findFollowingMapLayerId=function(e){if(e==="traces")for(var t=this.subplot.getMapLayers(),r=0;r0){for(var r=0;r0}function lje(e){var t={},r={};switch(e.type){case"circle":nw.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":nw.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":nw.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var n=e.symbol,i=SXt(n.textposition,n.iconsize);nw.extendFlat(t,{"icon-image":n.icon+"-15","icon-size":n.iconsize/10,"text-field":n.text,"text-size":n.textfont.size,"text-anchor":i.anchor,"text-offset":i.offset,"symbol-placement":n.placement}),nw.extendFlat(r,{"icon-color":e.color,"text-color":n.textfont.color,"text-opacity":e.opacity});break;case"raster":nw.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity});break}return{layout:t,paint:r}}function MXt(e){var t=e.sourcetype,r=e.source,n={type:t},i;return t==="geojson"?i="data":t==="vector"?i=typeof r=="string"?"url":"tiles":t==="raster"?(i="tiles",n.tileSize=256):t==="image"&&(i="url",n.coordinates=e.coordinates),n[i]=r,e.sourceattribution&&(n.attribution=AXt(e.sourceattribution)),n}uje.exports=function(t,r,n){var i=new sje(t,r);return i.update(n),i}});var yje=ye((kbr,mje)=>{"use strict";var LJ=aje(),PJ=Dr(),dje=ix(),fje=qa(),EXt=ho(),kXt=yv(),c7=vf(),vje=Mg(),CXt=vje.drawMode,LXt=vje.selectMode,PXt=Of().prepSelect,IXt=Of().clearOutline,RXt=Of().clearSelectionsCache,DXt=Of().selectOnClick,aw=wx(),FXt=cje();function pje(e,t){this.id=t,this.gd=e;var r=e._fullLayout,n=e._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var Uh=pje.prototype;Uh.plot=function(e,t,r){var n=this,i;n.map?i=new Promise(function(a,o){n.updateMap(e,t,a,o)}):i=new Promise(function(a,o){n.createMap(e,t,a,o)}),r.push(i)};Uh.createMap=function(e,t,r,n){var i=this,a=t[i.id],o=i.styleObj=gje(a.style),s=a.bounds,l=s?[[s.west,s.south],[s.east,s.north]]:null,u=i.map=new LJ.Map({container:i.div,style:o.style,center:IJ(a.center),zoom:a.zoom,bearing:a.bearing,pitch:a.pitch,maxBounds:l,interactive:!i.isStatic,preserveDrawingBuffer:i.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new LJ.AttributionControl({compact:!0})),c={};u.on("styleimagemissing",function(h){var d=h.id;if(!c[d]&&d.includes("-15")){c[d]=!0;var v=new Image(15,15);v.onload=function(){u.addImage(d,v)},v.crossOrigin="Anonymous",v.src="https://unpkg.com/maki@2.1.0/icons/"+d+".svg"}}),u.setTransformRequest(function(h){return h=h.replace("https://fonts.openmaptiles.org/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),h=h.replace("https://tiles.basemaps.cartocdn.com/fonts/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),h=h.replace("https://fonts.openmaptiles.org/Open Sans Regular,Arial Unicode MS Regular","https://fonts.openmaptiles.org/Klokantech Noto Sans Regular"),{url:h}}),u._canvas.style.left="0px",u._canvas.style.top="0px",i.rejectOnError(n),i.isStatic||i.initFx(e,t);var f=[];f.push(new Promise(function(h){u.once("load",h)})),f=f.concat(dje.fetchTraceGeoData(e)),Promise.all(f).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Uh.updateMap=function(e,t,r,n){var i=this,a=i.map,o=t[this.id];i.rejectOnError(n);var s=[],l=gje(o.style);JSON.stringify(i.styleObj)!==JSON.stringify(l)&&(i.styleObj=l,a.setStyle(l.style),i.traceHash={},s.push(new Promise(function(u){a.once("styledata",u)}))),s=s.concat(dje.fetchTraceGeoData(e)),Promise.all(s).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Uh.fillBelowLookup=function(e,t){var r=t[this.id],n=r.layers,i,a,o=this.belowLookup={},s=!1;for(i=0;i1)for(i=0;i-1&&DXt(l.originalEvent,n,[r.xaxis],[r.yaxis],r.id,s),u.indexOf("event")>-1&&c7.click(n,l.originalEvent)}}};Uh.updateFx=function(e){var t=this,r=t.map,n=t.gd;if(t.isStatic)return;function i(l){var u=t.map.unproject(l);return[u.lng,u.lat]}var a=e.dragmode,o;o=function(l,u){if(u.isRect){var c=l.range={};c[t.id]=[i([u.xmin,u.ymin]),i([u.xmax,u.ymax])]}else{var f=l.lassoPoints={};f[t.id]=u.map(i)}};var s=t.dragOptions;t.dragOptions=PJ.extendDeep(s||{},{dragmode:e.dragmode,element:t.div,gd:n,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:o},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),LXt(a)||CXt(a)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(l,u,c){PXt(l,u,c,t.dragOptions,a)},kXt.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))};Uh.updateFramework=function(e){var t=e[this.id].domain,r=e._size,n=this.div.style;n.width=r.w*(t.x[1]-t.x[0])+"px",n.height=r.h*(t.y[1]-t.y[0])+"px",n.left=r.l+t.x[0]*r.w+"px",n.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])};Uh.updateLayers=function(e){var t=e[this.id],r=t.layers,n=this.layerList,i;if(r.length!==n.length){for(i=0;i{"use strict";var RJ=Dr(),OXt=k_(),qXt=Yd(),_je=jk();xje.exports=function(t,r,n){OXt(t,r,n,{type:"map",attributes:_je,handleDefaults:BXt,partition:"y"})};function BXt(e,t,r){r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch");var n=r("bounds.west"),i=r("bounds.east"),a=r("bounds.south"),o=r("bounds.north");(n===void 0||i===void 0||a===void 0||o===void 0)&&delete t.bounds,qXt(e,t,{name:"layers",handleItemDefaults:NXt}),t._input=e}function NXt(e,t){function r(l,u){return RJ.coerce(e,t,_je.layers,l,u)}var n=r("visible");if(n){var i=r("sourcetype"),a=i==="raster"||i==="image";r("source"),r("sourceattribution"),i==="vector"&&r("sourcelayer"),i==="image"&&r("coordinates");var o;a&&(o="raster");var s=r("type",o);a&&s!=="raster"&&(s=t.type="raster",RJ.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),s==="circle"&&r("circle.radius"),s==="line"&&(r("line.width"),r("line.dash")),s==="fill"&&r("fill.outlinecolor"),s==="symbol"&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),RJ.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var h7=ye(l0=>{"use strict";var f7=Dr(),wje=f7.strTranslate,UXt=f7.strScale,VXt=Id().getSubplotCalcData,GXt=Wp(),HXt=Oa(),Tje=So(),jXt=ru(),WXt=yje(),Tx="map";l0.name=Tx;l0.attr="subplot";l0.idRoot=Tx;l0.idRegex=l0.attrRegex=f7.counterRegex(Tx);l0.attributes={subplot:{valType:"subplotid",dflt:"map",editType:"calc"}};l0.layoutAttributes=jk();l0.supplyLayoutDefaults=bje();l0.plot=function(t){for(var r=t._fullLayout,n=t.calcdata,i=r._subplots[Tx],a=0;a_/2){var b=f.split("|").join("
");d.text(b).attr("data-unformatted",b).call(jXt.convertToTspans,e),v=Tje.bBox(d.node())}d.attr("transform",wje(-3,-v.height+8)),h.insert("rect",".static-attribution").attr({x:-v.width-6,y:-v.height-3,width:v.width+6,height:v.height+3,fill:"rgba(255, 255, 255, 0.75)"});var p=1;v.width+6>_&&(p=_/(v.width+6));var k=[n.l+n.w*o.x[1],n.t+n.h*(1-o.y[0])];h.attr("transform",wje(k[0],k[1])+UXt(p))}};l0.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[Tx],n=0;n{"use strict";Aje.exports={attributes:i7(),supplyDefaults:OHe(),colorbar:$d(),formatLabels:TJ(),calc:vF(),plot:JHe(),hoverPoints:l7().hoverPoints,eventData:tje(),selectPoints:ije(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermap",basePlotModule:h7(),categories:["map","gl","symbols","showLegend","scatter-like"],meta:{}}});var Eje=ye((Ibr,Mje)=>{"use strict";Mje.exports=Sje()});var DJ=ye((Rbr,kje)=>{"use strict";var d1=e5(),XXt=Tu(),{hovertemplateAttrs:ZXt,templatefallbackAttrs:YXt}=Ll(),KXt=Gl(),Ax=Ao().extendFlat;kje.exports=Ax({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:Ax({},d1.featureidkey,{}),below:{valType:"string",editType:"plot"},text:d1.text,hovertext:d1.hovertext,marker:{line:{color:Ax({},d1.marker.line.color,{editType:"plot"}),width:Ax({},d1.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:Ax({},d1.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:Ax({},d1.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:Ax({},d1.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:d1.hoverinfo,hovertemplate:ZXt({},{keys:["properties"]}),hovertemplatefallback:YXt(),showlegend:Ax({},KXt.showlegend,{dflt:!1})},XXt("",{cLetter:"z",editTypeOverride:"calc"}))});var Lje=ye((Dbr,Cje)=>{"use strict";var Yk=Dr(),JXt=Qh(),$Xt=DJ();Cje.exports=function(t,r,n,i){function a(c,f){return Yk.coerce(t,r,$Xt,c,f)}var o=a("locations"),s=a("z"),l=a("geojson");if(!Yk.isArrayOrTypedArray(o)||!o.length||!Yk.isArrayOrTypedArray(s)||!s.length||!(typeof l=="string"&&l!==""||Yk.isPlainObject(l))){r.visible=!1;return}a("featureidkey"),r._length=Math.min(o.length,s.length),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var u=a("marker.line.width");u&&a("marker.line.color"),a("marker.opacity"),JXt(t,r,i,a,{prefix:"",cLetter:"z"}),Yk.coerceSelectionMarkerOpacity(r,a)}});var FJ=ye((Fbr,Rje)=>{"use strict";var QXt=Eo(),v1=Dr(),eZt=tc(),tZt=So(),rZt=tx().makeBlank,Pje=ix();function iZt(e){var t=e[0].trace,r=t.visible===!0&&t._length!==0,n={layout:{visibility:"none"},paint:{}},i={layout:{visibility:"none"},paint:{}},a=t._opts={fill:n,line:i,geojson:rZt()};if(!r)return a;var o=Pje.extractTraceFeature(e);if(!o)return a;var s=eZt.makeColorScaleFuncFromTrace(t),l=t.marker,u=l.line||{},c;v1.isArrayOrTypedArray(l.opacity)&&(c=function(k){var E=k.mo;return QXt(E)?+v1.constrain(E,0,1):0});var f;v1.isArrayOrTypedArray(u.color)&&(f=function(k){return k.mlc});var h;v1.isArrayOrTypedArray(u.width)&&(h=function(k){return k.mlw});for(var d=0;d{"use strict";var Fje=FJ().convert,nZt=FJ().convertOnSelect,Dje=wx().traceLayerPrefix;function zje(e,t){this.type="choroplethmap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",Dje+t+"-fill"],["line",Dje+t+"-line"]],this.below=null}var C5=zje.prototype;C5.update=function(e){this._update(Fje(e)),e[0].trace._glTrace=this};C5.updateOnSelect=function(e){this._update(nZt(e))};C5._update=function(e){var t=this.subplot,r=this.layerList,n=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(e.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(e,n),this.below=n);for(var i=0;i=0;r--)e.removeLayer(t[r][1])};C5.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};Oje.exports=function(t,r){var n=r[0].trace,i=new zje(t,n.uid),a=i.sourceId,o=Fje(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),r[0].trace._glTrace=i,i}});var Nje=ye((Obr,Bje)=>{"use strict";Bje.exports={attributes:DJ(),supplyDefaults:Lje(),colorbar:S_(),calc:FF(),plot:qje(),hoverPoints:OF(),eventData:qF(),selectPoints:BF(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.updateOnSelect(t)}},getBelow:function(e,t){for(var r=t.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if(typeof i=="string"&&i.indexOf("water")===0){for(var a=n+1;a{"use strict";Uje.exports=Nje()});var OJ=ye((Bbr,Hje)=>{"use strict";var aZt=Tu(),{hovertemplateAttrs:oZt,templatefallbackAttrs:sZt}=Ll(),Gje=Gl(),d7=i7(),zJ=Ao().extendFlat;Hje.exports=zJ({lon:d7.lon,lat:d7.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:d7.text,hovertext:d7.hovertext,hoverinfo:zJ({},Gje.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:oZt(),hovertemplatefallback:sZt(),showlegend:zJ({},Gje.showlegend,{dflt:!1})},aZt("",{cLetter:"z",editTypeOverride:"calc"}))});var Wje=ye((Nbr,jje)=>{"use strict";var lZt=Dr(),uZt=Qh(),cZt=OJ();jje.exports=function(t,r,n,i){function a(u,c){return lZt.coerce(t,r,cZt,u,c)}var o=a("lon")||[],s=a("lat")||[],l=Math.min(o.length,s.length);if(!l){r.visible=!1;return}r._length=l,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),uZt(t,r,i,a,{prefix:"",cLetter:"z"})}});var Yje=ye((Ubr,Zje)=>{"use strict";var qJ=Eo(),fZt=Dr().isArrayOrTypedArray,BJ=fs().BADNUM,hZt=gv(),Xje=Dr()._;Zje.exports=function(t,r){for(var n=r._length,i=new Array(n),a=r.z,o=fZt(a)&&a.length,s=0;s{"use strict";var dZt=Eo(),NJ=Dr(),Kje=ka(),Jje=tc(),$je=fs().BADNUM,vZt=tx().makeBlank;Qje.exports=function(t){var r=t[0].trace,n=r.visible===!0&&r._length!==0,i={layout:{visibility:"none"},paint:{}},a=r._opts={heatmap:i,geojson:vZt()};if(!n)return a;var o=[],s,l=r.z,u=r.radius,c=NJ.isArrayOrTypedArray(l)&&l.length,f=NJ.isArrayOrTypedArray(u);for(s=0;s0?+u[s]:0),o.push({type:"Feature",geometry:{type:"Point",coordinates:d},properties:v})}}var b=Jje.extractOpts(r),p=b.reversescale?Jje.flipScale(b.colorscale):b.colorscale,k=p[0][1],E=Kje.opacity(k)<1?k:Kje.addOpacity(k,0),S=["interpolate",["linear"],["heatmap-density"],0,E];for(s=1;s{"use strict";var tWe=eWe(),pZt=wx().traceLayerPrefix;function rWe(e,t){this.type="densitymap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",pZt+t+"-heatmap"]],this.below=null}var v7=rWe.prototype;v7.update=function(e){var t=this.subplot,r=this.layerList,n=tWe(e),i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(n.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(n,i),this.below=i);for(var a=0;a=0;r--)e.removeLayer(t[r][1])};v7.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};iWe.exports=function(t,r){var n=r[0].trace,i=new rWe(t,n.uid),a=i.sourceId,o=tWe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),i}});var oWe=ye((Hbr,aWe)=>{"use strict";var gZt=ho(),mZt=l7().hoverPoints,yZt=l7().getExtraText;aWe.exports=function(t,r,n){var i=mZt(t,r,n);if(i){var a=i[0],o=a.cd,s=o[0].trace,l=o[a.index];if(delete a.color,"z"in l){var u=a.subplot.mockAxis;a.z=l.z,a.zLabel=gZt.tickText(u,u.c2l(l.z),"hover").text}return a.extraText=yZt(s,l,o[0].t.labels),[a]}}});var lWe=ye((jbr,sWe)=>{"use strict";sWe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var cWe=ye((Wbr,uWe)=>{"use strict";uWe.exports={attributes:OJ(),supplyDefaults:Wje(),colorbar:S_(),formatLabels:TJ(),calc:Yje(),plot:nWe(),hoverPoints:oWe(),eventData:lWe(),getBelow:function(e,t){for(var r=t.getMapLayers(),n=0;n{"use strict";fWe.exports=cWe()});var VJ=ye((Ybr,mWe)=>{"use strict";var _Zt=ec(),xZt=Gl(),dWe=Lh(),UJ=n3(),bZt=Cc().attributes,{hovertemplateAttrs:vWe,templatefallbackAttrs:pWe}=Ll(),wZt=Tu(),TZt=vl().templatedArray,AZt=df().descriptionOnlyNumbers,gWe=Ao().extendFlat,SZt=mc().overrideAll,Zbr=mWe.exports=SZt({hoverinfo:gWe({},xZt.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:UJ.hoverlabel,domain:bZt({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h"},valueformat:{valType:"string",dflt:".3s",description:AZt("value")},valuesuffix:{valType:"string",dflt:""},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap"},textfont:_Zt({autoShadowDflt:!0}),customdata:void 0,node:{label:{valType:"data_array",dflt:[]},groups:{valType:"info_array",impliedEdits:{x:[],y:[]},dimensions:2,freeLength:!0,dflt:[],items:{valType:"number",editType:"calc"}},x:{valType:"data_array",dflt:[]},y:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:dWe.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:.5,arrayOk:!0}},pad:{valType:"number",arrayOk:!1,min:0,dflt:20},thickness:{valType:"number",arrayOk:!1,min:1,dflt:20},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:UJ.hoverlabel,hovertemplate:vWe({},{keys:["value","label"]}),hovertemplatefallback:pWe(),align:{valType:"enumerated",values:["justify","left","right","center"],dflt:"justify"}},link:{arrowlen:{valType:"number",min:0,dflt:0},label:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},hovercolor:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:dWe.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:0,arrayOk:!0}},source:{valType:"data_array",dflt:[]},target:{valType:"data_array",dflt:[]},value:{valType:"data_array",dflt:[]},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:UJ.hoverlabel,hovertemplate:vWe({},{keys:["value","label"]}),hovertemplatefallback:pWe(),colorscales:TZt("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:gWe(wZt().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")});var wWe=ye((Kbr,bWe)=>{"use strict";var L5=Dr(),p7=VJ(),MZt=ka(),yWe=cd(),EZt=Cc().defaults,_We=fM(),xWe=vl(),kZt=Yd();bWe.exports=function(t,r,n,i){function a(S,L){return L5.coerce(t,r,p7,S,L)}var o=L5.extendDeep(i.hoverlabel,t.hoverlabel),s=t.node,l=xWe.newContainer(r,"node");function u(S,L){return L5.coerce(s,l,p7.node,S,L)}u("label"),u("groups"),u("x"),u("y"),u("pad"),u("thickness"),u("line.color"),u("line.width"),u("hoverinfo",t.hoverinfo),_We(s,l,u,o),u("hovertemplate"),u("align");var c=i.colorway,f=function(S){return c[S%c.length]};u("color",l.label.map(function(S,L){return MZt.addOpacity(f(L),.8)})),u("customdata");var h=t.link||{},d=xWe.newContainer(r,"link");function v(S,L){return L5.coerce(h,d,p7.link,S,L)}v("label"),v("arrowlen"),v("source"),v("target"),v("value"),v("line.color"),v("line.width"),v("hoverinfo",t.hoverinfo),_We(h,d,v,o),v("hovertemplate");var _=yWe(i.paper_bgcolor).getLuminance()<.333,b=_?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)",p=v("color",b);function k(S){var L=yWe(S);if(!L.isValid())return S;var x=L.getAlpha();return x<=.8?L.setAlpha(x+.2):L=_?L.brighten():L.darken(),L.toRgbString()}v("hovercolor",Array.isArray(p)?p.map(k):k(p)),v("customdata"),kZt(h,d,{name:"colorscales",handleItemDefaults:CZt}),EZt(r,i,a),a("orientation"),a("valueformat"),a("valuesuffix");var E;l.x.length&&l.y.length&&(E="freeform"),a("arrangement",E),L5.coerceFont(a,"textfont",i.font,{autoShadowDflt:!0}),r._length=null};function CZt(e,t){function r(n,i){return L5.coerce(e,t,p7.link.colorscales,n,i)}r("label"),r("cmin"),r("cmax"),r("colorscale")}});var GJ=ye((Jbr,TWe)=>{"use strict";TWe.exports=LZt;function LZt(e){for(var t=e.length,r=new Array(t),n=new Array(t),i=new Array(t),a=new Array(t),o=new Array(t),s=new Array(t),l=0;l0;){b=k[k.length-1];var E=e[b];if(a[b]=0&&s[b].push(o[L])}a[b]=S}else{if(n[b]===r[b]){for(var x=[],C=[],M=0,S=p.length-1;S>=0;--S){var g=p[S];if(i[g]=!1,x.push(g),C.push(s[g]),M+=s[g].length,o[g]=c.length,g===b){p.length=S;break}}c.push(x);for(var P=new Array(M),S=0;S{"use strict";var PZt=GJ(),P5=Dr(),IZt=Jm().wrap,Kk=P5.isArrayOrTypedArray,AWe=P5.isIndex,SWe=tc();function RZt(e){var t=e.node,r=e.link,n=[],i=Kk(r.color),a=Kk(r.hovercolor),o=Kk(r.customdata),s={},l={},u=r.colorscales.length,c;for(c=0;cv&&(v=r.source[c]),r.target[c]>v&&(v=r.target[c]);var _=v+1;e.node._count=_;var b,p=e.node.groups,k={};for(c=0;c0&&AWe(M,_)&&AWe(g,_)&&!(k.hasOwnProperty(M)&&k.hasOwnProperty(g)&&k[M]===k[g])){k.hasOwnProperty(g)&&(g=k[g]),k.hasOwnProperty(M)&&(M=k[M]),M=+M,g=+g,s[M]=s[g]=!0;var P="";r.label&&r.label[c]&&(P=r.label[c]);var T=null;P&&l.hasOwnProperty(P)&&(T=l[P]),n.push({pointNumber:c,label:P,color:i?r.color[c]:r.color,hovercolor:a?r.hovercolor[c]:r.hovercolor,customdata:o?r.customdata[c]:r.customdata,concentrationscale:T,source:M,target:g,value:+C}),x.source.push(M),x.target.push(g)}}var z=_+p.length,O=Kk(t.color),V=Kk(t.customdata),G=[];for(c=0;c_-1,childrenNodes:[],pointNumber:c,label:Z,color:O?t.color[c]:t.color,customdata:V?t.customdata[c]:t.customdata})}var H=!1;return DZt(z,x.source,x.target)&&(H=!0),{circular:H,links:n,nodes:G,groups:p,groupLookup:k}}function DZt(e,t,r){for(var n=P5.init2dArray(e,0),i=0;i1})}MWe.exports=function(t,r){var n=RZt(r);return IZt({circular:n.circular,_nodes:n.nodes,_links:n.links,_groups:n.groups,_groupLookup:n.groupLookup})}});var CWe=ye((g7,kWe)=>{(function(e,t){typeof g7=="object"&&typeof kWe!="undefined"?t(g7):(e=e||self,t(e.d3=e.d3||{}))})(g7,function(e){"use strict";function t(C){var M=+this._x.call(null,C),g=+this._y.call(null,C);return r(this.cover(M,g),M,g,C)}function r(C,M,g,P){if(isNaN(M)||isNaN(g))return C;var T,z=C._root,O={data:P},V=C._x0,G=C._y0,Z=C._x1,H=C._y1,N,j,re,oe,_e,Ee,Ce,me;if(!z)return C._root=O,C;for(;z.length;)if((_e=M>=(N=(V+Z)/2))?V=N:Z=N,(Ee=g>=(j=(G+H)/2))?G=j:H=j,T=z,!(z=z[Ce=Ee<<1|_e]))return T[Ce]=O,C;if(re=+C._x.call(null,z.data),oe=+C._y.call(null,z.data),M===re&&g===oe)return O.next=z,T?T[Ce]=O:C._root=O,C;do T=T?T[Ce]=new Array(4):C._root=new Array(4),(_e=M>=(N=(V+Z)/2))?V=N:Z=N,(Ee=g>=(j=(G+H)/2))?G=j:H=j;while((Ce=Ee<<1|_e)===(me=(oe>=j)<<1|re>=N));return T[me]=z,T[Ce]=O,C}function n(C){var M,g,P=C.length,T,z,O=new Array(P),V=new Array(P),G=1/0,Z=1/0,H=-1/0,N=-1/0;for(g=0;gH&&(H=T),zN&&(N=z));if(G>H||Z>N)return this;for(this.cover(G,Z).cover(H,N),g=0;gC||C>=T||P>M||M>=z;)switch(Z=(MH||(V=oe.y0)>N||(G=oe.x1)=Ce)<<1|C>=Ee)&&(oe=j[j.length-1],j[j.length-1]=j[j.length-1-_e],j[j.length-1-_e]=oe)}else{var me=C-+this._x.call(null,re.data),ie=M-+this._y.call(null,re.data),Se=me*me+ie*ie;if(Se=(j=(O+G)/2))?O=j:G=j,(_e=N>=(re=(V+Z)/2))?V=re:Z=re,M=g,!(g=g[Ee=_e<<1|oe]))return this;if(!g.length)break;(M[Ee+1&3]||M[Ee+2&3]||M[Ee+3&3])&&(P=M,Ce=Ee)}for(;g.data!==C;)if(T=g,!(g=g.next))return this;return(z=g.next)&&delete g.next,T?(z?T.next=z:delete T.next,this):M?(z?M[Ee]=z:delete M[Ee],(g=M[0]||M[1]||M[2]||M[3])&&g===(M[3]||M[2]||M[1]||M[0])&&!g.length&&(P?P[Ce]=g:this._root=g),this):(this._root=z,this)}function c(C){for(var M=0,g=C.length;M{(function(e,t){t(typeof m7=="object"&&typeof LWe!="undefined"?m7:e.d3=e.d3||{})})(m7,function(e){"use strict";var t="$";function r(){}r.prototype=n.prototype={constructor:r,has:function(_){return t+_ in this},get:function(_){return this[t+_]},set:function(_,b){return this[t+_]=b,this},remove:function(_){var b=t+_;return b in this&&delete this[b]},clear:function(){for(var _ in this)_[0]===t&&delete this[_]},keys:function(){var _=[];for(var b in this)b[0]===t&&_.push(b.slice(1));return _},values:function(){var _=[];for(var b in this)b[0]===t&&_.push(this[b]);return _},entries:function(){var _=[];for(var b in this)b[0]===t&&_.push({key:b.slice(1),value:this[b]});return _},size:function(){var _=0;for(var b in this)b[0]===t&&++_;return _},empty:function(){for(var _ in this)if(_[0]===t)return!1;return!0},each:function(_){for(var b in this)b[0]===t&&_(this[b],b.slice(1),this)}};function n(_,b){var p=new r;if(_ instanceof r)_.each(function(x,C){p.set(C,x)});else if(Array.isArray(_)){var k=-1,E=_.length,S;if(b==null)for(;++k=_.length)return p!=null&&x.sort(p),k!=null?k(x):x;for(var P=-1,T=x.length,z=_[C++],O,V,G=n(),Z,H=M();++P_.length)return x;var M,g=b[C-1];return k!=null&&C>=_.length?M=x.entries():(M=[],x.each(function(P,T){M.push({key:T,values:L(P,C)})})),g!=null?M.sort(function(P,T){return g(P.key,T.key)}):M}return E={object:function(x){return S(x,0,a,o)},map:function(x){return S(x,0,s,l)},entries:function(x){return L(S(x,0,s,l),0)},key:function(x){return _.push(x),E},sortKeys:function(x){return b[_.length-1]=x,E},sortValues:function(x){return p=x,E},rollup:function(x){return k=x,E}}}function a(){return{}}function o(_,b,p){_[b]=p}function s(){return n()}function l(_,b,p){_.set(b,p)}function u(){}var c=n.prototype;u.prototype=f.prototype={constructor:u,has:c.has,add:function(_){return _+="",this[t+_]=_,this},remove:c.remove,clear:c.clear,values:c.keys,size:c.size,empty:c.empty,each:c.each};function f(_,b){var p=new u;if(_ instanceof u)_.each(function(S){p.add(S)});else if(_){var k=-1,E=_.length;if(b==null)for(;++k{(function(e,t){typeof _7=="object"&&typeof PWe!="undefined"?t(_7):(e=e||self,t(e.d3=e.d3||{}))})(_7,function(e){"use strict";var t={value:function(){}};function r(){for(var s=0,l=arguments.length,u={},c;s=0&&(c=u.slice(f+1),u=u.slice(0,f)),u&&!l.hasOwnProperty(u))throw new Error("unknown type: "+u);return{type:u,name:c}})}n.prototype=r.prototype={constructor:n,on:function(s,l){var u=this._,c=i(s+"",u),f,h=-1,d=c.length;if(arguments.length<2){for(;++h0)for(var u=new Array(f),c=0,f,h;c{(function(e,t){typeof x7=="object"&&typeof RWe!="undefined"?t(x7):(e=e||self,t(e.d3=e.d3||{}))})(x7,function(e){"use strict";var t=0,r=0,n=0,i=1e3,a,o,s=0,l=0,u=0,c=typeof performance=="object"&&performance.now?performance:Date,f=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(C){setTimeout(C,17)};function h(){return l||(f(d),l=c.now()+u)}function d(){l=0}function v(){this._call=this._time=this._next=null}v.prototype=_.prototype={constructor:v,restart:function(C,M,g){if(typeof C!="function")throw new TypeError("callback is not a function");g=(g==null?h():+g)+(M==null?0:+M),!this._next&&o!==this&&(o?o._next=this:a=this,o=this),this._call=C,this._time=g,S()},stop:function(){this._call&&(this._call=null,this._time=1/0,S())}};function _(C,M,g){var P=new v;return P.restart(C,M,g),P}function b(){h(),++t;for(var C=a,M;C;)(M=l-C._time)>=0&&C._call.call(null,M),C=C._next;--t}function p(){l=(s=c.now())+u,t=r=0;try{b()}finally{t=0,E(),l=0}}function k(){var C=c.now(),M=C-s;M>i&&(u-=M,s=C)}function E(){for(var C,M=a,g,P=1/0;M;)M._call?(P>M._time&&(P=M._time),C=M,M=M._next):(g=M._next,M._next=null,M=C?C._next=g:a=g);o=C,S(P)}function S(C){if(!t){r&&(r=clearTimeout(r));var M=C-l;M>24?(C<1/0&&(r=setTimeout(p,C-c.now()-u)),n&&(n=clearInterval(n))):(n||(s=c.now(),n=setInterval(k,i)),t=1,f(p))}}function L(C,M,g){var P=new v;return M=M==null?0:+M,P.restart(function(T){P.stop(),C(T+M)},M,g),P}function x(C,M,g){var P=new v,T=M;return M==null?(P.restart(C,M,g),P):(M=+M,g=g==null?h():+g,P.restart(function z(O){O+=T,P.restart(z,T+=M,g),C(O)},M,g),P)}e.interval=x,e.now=h,e.timeout=L,e.timer=_,e.timerFlush=b,Object.defineProperty(e,"__esModule",{value:!0})})});var zWe=ye((b7,FWe)=>{(function(e,t){typeof b7=="object"&&typeof FWe!="undefined"?t(b7,CWe(),y7(),IWe(),DWe()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,e.d3)})(b7,function(e,t,r,n,i){"use strict";function a(C,M){var g;C==null&&(C=0),M==null&&(M=0);function P(){var T,z=g.length,O,V=0,G=0;for(T=0;TN.index){var Re=j-Fe.x-Fe.vx,ce=re-Fe.y-Fe.vy,Ze=Re*Re+ce*ce;Zej+ge||Lere+ge||AeG.r&&(G.r=G[Z].r)}function V(){if(M){var G,Z=M.length,H;for(g=new Array(Z),G=0;G1?(_e==null?V.remove(oe):V.set(oe,re(_e)),M):V.get(oe)},find:function(oe,_e,Ee){var Ce=0,me=C.length,ie,Se,Le,Ae,Fe;for(Ee==null?Ee=1/0:Ee*=Ee,Ce=0;Ce1?(Z.on(oe,_e),M):Z.on(oe)}}}function E(){var C,M,g,P=o(-30),T,z=1,O=1/0,V=.81;function G(j){var re,oe=C.length,_e=t.quadtree(C,v,_).visitAfter(H);for(g=j,re=0;re=O)return;(j.data!==M||j.next)&&(Ee===0&&(Ee=s(),ie+=Ee*Ee),Ce===0&&(Ce=s(),ie+=Ce*Ce),ie{(function(e,t){typeof w7=="object"&&typeof OWe!="undefined"?t(w7):(e=e||self,t(e.d3=e.d3||{}))})(w7,function(e){"use strict";var t=Math.PI,r=2*t,n=1e-6,i=r-n;function a(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function o(){return new a}a.prototype=o.prototype={constructor:a,moveTo:function(s,l){this._+="M"+(this._x0=this._x1=+s)+","+(this._y0=this._y1=+l)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(s,l){this._+="L"+(this._x1=+s)+","+(this._y1=+l)},quadraticCurveTo:function(s,l,u,c){this._+="Q"+ +s+","+ +l+","+(this._x1=+u)+","+(this._y1=+c)},bezierCurveTo:function(s,l,u,c,f,h){this._+="C"+ +s+","+ +l+","+ +u+","+ +c+","+(this._x1=+f)+","+(this._y1=+h)},arcTo:function(s,l,u,c,f){s=+s,l=+l,u=+u,c=+c,f=+f;var h=this._x1,d=this._y1,v=u-s,_=c-l,b=h-s,p=d-l,k=b*b+p*p;if(f<0)throw new Error("negative radius: "+f);if(this._x1===null)this._+="M"+(this._x1=s)+","+(this._y1=l);else if(k>n)if(!(Math.abs(p*v-_*b)>n)||!f)this._+="L"+(this._x1=s)+","+(this._y1=l);else{var E=u-h,S=c-d,L=v*v+_*_,x=E*E+S*S,C=Math.sqrt(L),M=Math.sqrt(k),g=f*Math.tan((t-Math.acos((L+k-x)/(2*C*M)))/2),P=g/M,T=g/C;Math.abs(P-1)>n&&(this._+="L"+(s+P*b)+","+(l+P*p)),this._+="A"+f+","+f+",0,0,"+ +(p*E>b*S)+","+(this._x1=s+T*v)+","+(this._y1=l+T*_)}},arc:function(s,l,u,c,f,h){s=+s,l=+l,u=+u,h=!!h;var d=u*Math.cos(c),v=u*Math.sin(c),_=s+d,b=l+v,p=1^h,k=h?c-f:f-c;if(u<0)throw new Error("negative radius: "+u);this._x1===null?this._+="M"+_+","+b:(Math.abs(this._x1-_)>n||Math.abs(this._y1-b)>n)&&(this._+="L"+_+","+b),u&&(k<0&&(k=k%r+r),k>i?this._+="A"+u+","+u+",0,1,"+p+","+(s-d)+","+(l-v)+"A"+u+","+u+",0,1,"+p+","+(this._x1=_)+","+(this._y1=b):k>n&&(this._+="A"+u+","+u+",0,"+ +(k>=t)+","+p+","+(this._x1=s+u*Math.cos(f))+","+(this._y1=l+u*Math.sin(f))))},rect:function(s,l,u,c){this._+="M"+(this._x0=this._x1=+s)+","+(this._y0=this._y1=+l)+"h"+ +u+"v"+ +c+"h"+-u+"Z"},toString:function(){return this._}},e.path=o,Object.defineProperty(e,"__esModule",{value:!0})})});var HJ=ye((T7,BWe)=>{(function(e,t){typeof T7=="object"&&typeof BWe!="undefined"?t(T7,qWe()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(T7,function(e,t){"use strict";function r(Mt){return function(){return Mt}}var n=Math.abs,i=Math.atan2,a=Math.cos,o=Math.max,s=Math.min,l=Math.sin,u=Math.sqrt,c=1e-12,f=Math.PI,h=f/2,d=2*f;function v(Mt){return Mt>1?0:Mt<-1?f:Math.acos(Mt)}function _(Mt){return Mt>=1?h:Mt<=-1?-h:Math.asin(Mt)}function b(Mt){return Mt.innerRadius}function p(Mt){return Mt.outerRadius}function k(Mt){return Mt.startAngle}function E(Mt){return Mt.endAngle}function S(Mt){return Mt&&Mt.padAngle}function L(Mt,kr,Jr,vi,hn,An,Mn,Li){var _n=Jr-Mt,ya=vi-kr,Jn=Mn-hn,Ma=Li-An,_o=Ma*_n-Jn*ya;if(!(_o*_oZl*Zl+Su*Su&&(As=Ks,cl=zs),{cx:As,cy:cl,x01:-Jn,y01:-Ma,x11:As*(hn/zl-1),y11:cl*(hn/zl-1)}}function C(){var Mt=b,kr=p,Jr=r(0),vi=null,hn=k,An=E,Mn=S,Li=null;function _n(){var ya,Jn,Ma=+Mt.apply(this,arguments),_o=+kr.apply(this,arguments),No=hn.apply(this,arguments)-h,po=An.apply(this,arguments)-h,Lo=n(po-No),ko=po>No;if(Li||(Li=ya=t.path()),_oc))Li.moveTo(0,0);else if(Lo>d-c)Li.moveTo(_o*a(No),_o*l(No)),Li.arc(0,0,_o,No,po,!ko),Ma>c&&(Li.moveTo(Ma*a(po),Ma*l(po)),Li.arc(0,0,Ma,po,No,ko));else{var Ds=No,Fs=po,ll=No,ul=po,zl=Lo,us=Lo,il=Mn.apply(this,arguments)/2,As=il>c&&(vi?+vi.apply(this,arguments):u(Ma*Ma+_o*_o)),cl=s(n(_o-Ma)/2,+Jr.apply(this,arguments)),Ks=cl,zs=cl,Io,ls;if(As>c){var Zl=_(As/Ma*l(il)),Su=_(As/_o*l(il));(zl-=Zl*2)>c?(Zl*=ko?1:-1,ll+=Zl,ul-=Zl):(zl=0,ll=ul=(No+po)/2),(us-=Su*2)>c?(Su*=ko?1:-1,Ds+=Su,Fs-=Su):(us=0,Ds=Fs=(No+po)/2)}var nc=_o*a(Ds),bs=_o*l(Ds),Rn=Ma*a(ul),_a=Ma*l(ul);if(cl>c){var Vu=_o*a(Fs),Ol=_o*l(Fs),xo=Ma*a(ll),Yl=Ma*l(ll),Ns;if(Loc?zs>c?(Io=x(xo,Yl,nc,bs,_o,zs,ko),ls=x(Vu,Ol,Rn,_a,_o,zs,ko),Li.moveTo(Io.cx+Io.x01,Io.cy+Io.y01),zsc)||!(zl>c)?Li.lineTo(Rn,_a):Ks>c?(Io=x(Rn,_a,Vu,Ol,Ma,-Ks,ko),ls=x(nc,bs,xo,Yl,Ma,-Ks,ko),Li.lineTo(Io.cx+Io.x01,Io.cy+Io.y01),Ks=_o;--No)Li.point(Fs[No],ll[No]);Li.lineEnd(),Li.areaEnd()}ko&&(Fs[Ma]=+Mt(Lo,Ma,Jn),ll[Ma]=+Jr(Lo,Ma,Jn),Li.point(kr?+kr(Lo,Ma,Jn):Fs[Ma],vi?+vi(Lo,Ma,Jn):ll[Ma]))}if(Ds)return Li=null,Ds+""||null}function ya(){return z().defined(hn).curve(Mn).context(An)}return _n.x=function(Jn){return arguments.length?(Mt=typeof Jn=="function"?Jn:r(+Jn),kr=null,_n):Mt},_n.x0=function(Jn){return arguments.length?(Mt=typeof Jn=="function"?Jn:r(+Jn),_n):Mt},_n.x1=function(Jn){return arguments.length?(kr=Jn==null?null:typeof Jn=="function"?Jn:r(+Jn),_n):kr},_n.y=function(Jn){return arguments.length?(Jr=typeof Jn=="function"?Jn:r(+Jn),vi=null,_n):Jr},_n.y0=function(Jn){return arguments.length?(Jr=typeof Jn=="function"?Jn:r(+Jn),_n):Jr},_n.y1=function(Jn){return arguments.length?(vi=Jn==null?null:typeof Jn=="function"?Jn:r(+Jn),_n):vi},_n.lineX0=_n.lineY0=function(){return ya().x(Mt).y(Jr)},_n.lineY1=function(){return ya().x(Mt).y(vi)},_n.lineX1=function(){return ya().x(kr).y(Jr)},_n.defined=function(Jn){return arguments.length?(hn=typeof Jn=="function"?Jn:r(!!Jn),_n):hn},_n.curve=function(Jn){return arguments.length?(Mn=Jn,An!=null&&(Li=Mn(An)),_n):Mn},_n.context=function(Jn){return arguments.length?(Jn==null?An=Li=null:Li=Mn(An=Jn),_n):An},_n}function V(Mt,kr){return krMt?1:kr>=Mt?0:NaN}function G(Mt){return Mt}function Z(){var Mt=G,kr=V,Jr=null,vi=r(0),hn=r(d),An=r(0);function Mn(Li){var _n,ya=Li.length,Jn,Ma,_o=0,No=new Array(ya),po=new Array(ya),Lo=+vi.apply(this,arguments),ko=Math.min(d,Math.max(-d,hn.apply(this,arguments)-Lo)),Ds,Fs=Math.min(Math.abs(ko)/ya,An.apply(this,arguments)),ll=Fs*(ko<0?-1:1),ul;for(_n=0;_n0&&(_o+=ul);for(kr!=null?No.sort(function(zl,us){return kr(po[zl],po[us])}):Jr!=null&&No.sort(function(zl,us){return Jr(Li[zl],Li[us])}),_n=0,Ma=_o?(ko-ya*ll)/_o:0;_n0?ul*Ma:0)+ll,po[Jn]={data:Li[Jn],index:_n,value:ul,startAngle:Lo,endAngle:Ds,padAngle:Fs};return po}return Mn.value=function(Li){return arguments.length?(Mt=typeof Li=="function"?Li:r(+Li),Mn):Mt},Mn.sortValues=function(Li){return arguments.length?(kr=Li,Jr=null,Mn):kr},Mn.sort=function(Li){return arguments.length?(Jr=Li,kr=null,Mn):Jr},Mn.startAngle=function(Li){return arguments.length?(vi=typeof Li=="function"?Li:r(+Li),Mn):vi},Mn.endAngle=function(Li){return arguments.length?(hn=typeof Li=="function"?Li:r(+Li),Mn):hn},Mn.padAngle=function(Li){return arguments.length?(An=typeof Li=="function"?Li:r(+Li),Mn):An},Mn}var H=j(g);function N(Mt){this._curve=Mt}N.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(Mt,kr){this._curve.point(kr*Math.sin(Mt),kr*-Math.cos(Mt))}};function j(Mt){function kr(Jr){return new N(Mt(Jr))}return kr._curve=Mt,kr}function re(Mt){var kr=Mt.curve;return Mt.angle=Mt.x,delete Mt.x,Mt.radius=Mt.y,delete Mt.y,Mt.curve=function(Jr){return arguments.length?kr(j(Jr)):kr()._curve},Mt}function oe(){return re(z().curve(H))}function _e(){var Mt=O().curve(H),kr=Mt.curve,Jr=Mt.lineX0,vi=Mt.lineX1,hn=Mt.lineY0,An=Mt.lineY1;return Mt.angle=Mt.x,delete Mt.x,Mt.startAngle=Mt.x0,delete Mt.x0,Mt.endAngle=Mt.x1,delete Mt.x1,Mt.radius=Mt.y,delete Mt.y,Mt.innerRadius=Mt.y0,delete Mt.y0,Mt.outerRadius=Mt.y1,delete Mt.y1,Mt.lineStartAngle=function(){return re(Jr())},delete Mt.lineX0,Mt.lineEndAngle=function(){return re(vi())},delete Mt.lineX1,Mt.lineInnerRadius=function(){return re(hn())},delete Mt.lineY0,Mt.lineOuterRadius=function(){return re(An())},delete Mt.lineY1,Mt.curve=function(Mn){return arguments.length?kr(j(Mn)):kr()._curve},Mt}function Ee(Mt,kr){return[(kr=+kr)*Math.cos(Mt-=Math.PI/2),kr*Math.sin(Mt)]}var Ce=Array.prototype.slice;function me(Mt){return Mt.source}function ie(Mt){return Mt.target}function Se(Mt){var kr=me,Jr=ie,vi=P,hn=T,An=null;function Mn(){var Li,_n=Ce.call(arguments),ya=kr.apply(this,_n),Jn=Jr.apply(this,_n);if(An||(An=Li=t.path()),Mt(An,+vi.apply(this,(_n[0]=ya,_n)),+hn.apply(this,_n),+vi.apply(this,(_n[0]=Jn,_n)),+hn.apply(this,_n)),Li)return An=null,Li+""||null}return Mn.source=function(Li){return arguments.length?(kr=Li,Mn):kr},Mn.target=function(Li){return arguments.length?(Jr=Li,Mn):Jr},Mn.x=function(Li){return arguments.length?(vi=typeof Li=="function"?Li:r(+Li),Mn):vi},Mn.y=function(Li){return arguments.length?(hn=typeof Li=="function"?Li:r(+Li),Mn):hn},Mn.context=function(Li){return arguments.length?(An=Li==null?null:Li,Mn):An},Mn}function Le(Mt,kr,Jr,vi,hn){Mt.moveTo(kr,Jr),Mt.bezierCurveTo(kr=(kr+vi)/2,Jr,kr,hn,vi,hn)}function Ae(Mt,kr,Jr,vi,hn){Mt.moveTo(kr,Jr),Mt.bezierCurveTo(kr,Jr=(Jr+hn)/2,vi,Jr,vi,hn)}function Fe(Mt,kr,Jr,vi,hn){var An=Ee(kr,Jr),Mn=Ee(kr,Jr=(Jr+hn)/2),Li=Ee(vi,Jr),_n=Ee(vi,hn);Mt.moveTo(An[0],An[1]),Mt.bezierCurveTo(Mn[0],Mn[1],Li[0],Li[1],_n[0],_n[1])}function Pe(){return Se(Le)}function ge(){return Se(Ae)}function Re(){var Mt=Se(Fe);return Mt.angle=Mt.x,delete Mt.x,Mt.radius=Mt.y,delete Mt.y,Mt}var ce={draw:function(Mt,kr){var Jr=Math.sqrt(kr/f);Mt.moveTo(Jr,0),Mt.arc(0,0,Jr,0,d)}},Ze={draw:function(Mt,kr){var Jr=Math.sqrt(kr/5)/2;Mt.moveTo(-3*Jr,-Jr),Mt.lineTo(-Jr,-Jr),Mt.lineTo(-Jr,-3*Jr),Mt.lineTo(Jr,-3*Jr),Mt.lineTo(Jr,-Jr),Mt.lineTo(3*Jr,-Jr),Mt.lineTo(3*Jr,Jr),Mt.lineTo(Jr,Jr),Mt.lineTo(Jr,3*Jr),Mt.lineTo(-Jr,3*Jr),Mt.lineTo(-Jr,Jr),Mt.lineTo(-3*Jr,Jr),Mt.closePath()}},ut=Math.sqrt(1/3),pt=ut*2,Zt={draw:function(Mt,kr){var Jr=Math.sqrt(kr/pt),vi=Jr*ut;Mt.moveTo(0,-Jr),Mt.lineTo(vi,0),Mt.lineTo(0,Jr),Mt.lineTo(-vi,0),Mt.closePath()}},st=.8908130915292852,lt=Math.sin(f/10)/Math.sin(7*f/10),Gt=Math.sin(d/10)*lt,Nt=-Math.cos(d/10)*lt,Jt={draw:function(Mt,kr){var Jr=Math.sqrt(kr*st),vi=Gt*Jr,hn=Nt*Jr;Mt.moveTo(0,-Jr),Mt.lineTo(vi,hn);for(var An=1;An<5;++An){var Mn=d*An/5,Li=Math.cos(Mn),_n=Math.sin(Mn);Mt.lineTo(_n*Jr,-Li*Jr),Mt.lineTo(Li*vi-_n*hn,_n*vi+Li*hn)}Mt.closePath()}},sr={draw:function(Mt,kr){var Jr=Math.sqrt(kr),vi=-Jr/2;Mt.rect(vi,vi,Jr,Jr)}},wr=Math.sqrt(3),cr={draw:function(Mt,kr){var Jr=-Math.sqrt(kr/(wr*3));Mt.moveTo(0,Jr*2),Mt.lineTo(-wr*Jr,-Jr),Mt.lineTo(wr*Jr,-Jr),Mt.closePath()}},$e=-.5,St=Math.sqrt(3)/2,Qt=1/Math.sqrt(12),Vt=(Qt/2+1)*3,_t={draw:function(Mt,kr){var Jr=Math.sqrt(kr/Vt),vi=Jr/2,hn=Jr*Qt,An=vi,Mn=Jr*Qt+Jr,Li=-An,_n=Mn;Mt.moveTo(vi,hn),Mt.lineTo(An,Mn),Mt.lineTo(Li,_n),Mt.lineTo($e*vi-St*hn,St*vi+$e*hn),Mt.lineTo($e*An-St*Mn,St*An+$e*Mn),Mt.lineTo($e*Li-St*_n,St*Li+$e*_n),Mt.lineTo($e*vi+St*hn,$e*hn-St*vi),Mt.lineTo($e*An+St*Mn,$e*Mn-St*An),Mt.lineTo($e*Li+St*_n,$e*_n-St*Li),Mt.closePath()}},It=[ce,Ze,Zt,sr,Jt,cr,_t];function mt(){var Mt=r(ce),kr=r(64),Jr=null;function vi(){var hn;if(Jr||(Jr=hn=t.path()),Mt.apply(this,arguments).draw(Jr,+kr.apply(this,arguments)),hn)return Jr=null,hn+""||null}return vi.type=function(hn){return arguments.length?(Mt=typeof hn=="function"?hn:r(hn),vi):Mt},vi.size=function(hn){return arguments.length?(kr=typeof hn=="function"?hn:r(+hn),vi):kr},vi.context=function(hn){return arguments.length?(Jr=hn==null?null:hn,vi):Jr},vi}function er(){}function lr(Mt,kr,Jr){Mt._context.bezierCurveTo((2*Mt._x0+Mt._x1)/3,(2*Mt._y0+Mt._y1)/3,(Mt._x0+2*Mt._x1)/3,(Mt._y0+2*Mt._y1)/3,(Mt._x0+4*Mt._x1+kr)/6,(Mt._y0+4*Mt._y1+Jr)/6)}function Tr(Mt){this._context=Mt}Tr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:lr(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:lr(this,Mt,kr);break}this._x0=this._x1,this._x1=Mt,this._y0=this._y1,this._y1=kr}};function Lr(Mt){return new Tr(Mt)}function ti(Mt){this._context=Mt}ti.prototype={areaStart:er,areaEnd:er,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._x2=Mt,this._y2=kr;break;case 1:this._point=2,this._x3=Mt,this._y3=kr;break;case 2:this._point=3,this._x4=Mt,this._y4=kr,this._context.moveTo((this._x0+4*this._x1+Mt)/6,(this._y0+4*this._y1+kr)/6);break;default:lr(this,Mt,kr);break}this._x0=this._x1,this._x1=Mt,this._y0=this._y1,this._y1=kr}};function Br(Mt){return new ti(Mt)}function Vr(Mt){this._context=Mt}Vr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var Jr=(this._x0+4*this._x1+Mt)/6,vi=(this._y0+4*this._y1+kr)/6;this._line?this._context.lineTo(Jr,vi):this._context.moveTo(Jr,vi);break;case 3:this._point=4;default:lr(this,Mt,kr);break}this._x0=this._x1,this._x1=Mt,this._y0=this._y1,this._y1=kr}};function dt(Mt){return new Vr(Mt)}function Ge(Mt,kr){this._basis=new Tr(Mt),this._beta=kr}Ge.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var Mt=this._x,kr=this._y,Jr=Mt.length-1;if(Jr>0)for(var vi=Mt[0],hn=kr[0],An=Mt[Jr]-vi,Mn=kr[Jr]-hn,Li=-1,_n;++Li<=Jr;)_n=Li/Jr,this._basis.point(this._beta*Mt[Li]+(1-this._beta)*(vi+_n*An),this._beta*kr[Li]+(1-this._beta)*(hn+_n*Mn));this._x=this._y=null,this._basis.lineEnd()},point:function(Mt,kr){this._x.push(+Mt),this._y.push(+kr)}};var Je=function Mt(kr){function Jr(vi){return kr===1?new Tr(vi):new Ge(vi,kr)}return Jr.beta=function(vi){return Mt(+vi)},Jr}(.85);function je(Mt,kr,Jr){Mt._context.bezierCurveTo(Mt._x1+Mt._k*(Mt._x2-Mt._x0),Mt._y1+Mt._k*(Mt._y2-Mt._y0),Mt._x2+Mt._k*(Mt._x1-kr),Mt._y2+Mt._k*(Mt._y1-Jr),Mt._x2,Mt._y2)}function tt(Mt,kr){this._context=Mt,this._k=(1-kr)/6}tt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:je(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2,this._x1=Mt,this._y1=kr;break;case 2:this._point=3;default:je(this,Mt,kr);break}this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var xt=function Mt(kr){function Jr(vi){return new tt(vi,kr)}return Jr.tension=function(vi){return Mt(+vi)},Jr}(0);function Ie(Mt,kr){this._context=Mt,this._k=(1-kr)/6}Ie.prototype={areaStart:er,areaEnd:er,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._x3=Mt,this._y3=kr;break;case 1:this._point=2,this._context.moveTo(this._x4=Mt,this._y4=kr);break;case 2:this._point=3,this._x5=Mt,this._y5=kr;break;default:je(this,Mt,kr);break}this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var xe=function Mt(kr){function Jr(vi){return new Ie(vi,kr)}return Jr.tension=function(vi){return Mt(+vi)},Jr}(0);function ke(Mt,kr){this._context=Mt,this._k=(1-kr)/6}ke.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:je(this,Mt,kr);break}this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var vt=function Mt(kr){function Jr(vi){return new ke(vi,kr)}return Jr.tension=function(vi){return Mt(+vi)},Jr}(0);function ir(Mt,kr,Jr){var vi=Mt._x1,hn=Mt._y1,An=Mt._x2,Mn=Mt._y2;if(Mt._l01_a>c){var Li=2*Mt._l01_2a+3*Mt._l01_a*Mt._l12_a+Mt._l12_2a,_n=3*Mt._l01_a*(Mt._l01_a+Mt._l12_a);vi=(vi*Li-Mt._x0*Mt._l12_2a+Mt._x2*Mt._l01_2a)/_n,hn=(hn*Li-Mt._y0*Mt._l12_2a+Mt._y2*Mt._l01_2a)/_n}if(Mt._l23_a>c){var ya=2*Mt._l23_2a+3*Mt._l23_a*Mt._l12_a+Mt._l12_2a,Jn=3*Mt._l23_a*(Mt._l23_a+Mt._l12_a);An=(An*ya+Mt._x1*Mt._l23_2a-kr*Mt._l12_2a)/Jn,Mn=(Mn*ya+Mt._y1*Mt._l23_2a-Jr*Mt._l12_2a)/Jn}Mt._context.bezierCurveTo(vi,hn,An,Mn,Mt._x2,Mt._y2)}function ar(Mt,kr){this._context=Mt,this._alpha=kr}ar.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){if(Mt=+Mt,kr=+kr,this._point){var Jr=this._x2-Mt,vi=this._y2-kr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Jr*Jr+vi*vi,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2;break;case 2:this._point=3;default:ir(this,Mt,kr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var vr=function Mt(kr){function Jr(vi){return kr?new ar(vi,kr):new tt(vi,0)}return Jr.alpha=function(vi){return Mt(+vi)},Jr}(.5);function ii(Mt,kr){this._context=Mt,this._alpha=kr}ii.prototype={areaStart:er,areaEnd:er,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(Mt,kr){if(Mt=+Mt,kr=+kr,this._point){var Jr=this._x2-Mt,vi=this._y2-kr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Jr*Jr+vi*vi,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=Mt,this._y3=kr;break;case 1:this._point=2,this._context.moveTo(this._x4=Mt,this._y4=kr);break;case 2:this._point=3,this._x5=Mt,this._y5=kr;break;default:ir(this,Mt,kr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var pi=function Mt(kr){function Jr(vi){return kr?new ii(vi,kr):new Ie(vi,0)}return Jr.alpha=function(vi){return Mt(+vi)},Jr}(.5);function $r(Mt,kr){this._context=Mt,this._alpha=kr}$r.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){if(Mt=+Mt,kr=+kr,this._point){var Jr=this._x2-Mt,vi=this._y2-kr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Jr*Jr+vi*vi,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:ir(this,Mt,kr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var di=function Mt(kr){function Jr(vi){return kr?new $r(vi,kr):new ke(vi,0)}return Jr.alpha=function(vi){return Mt(+vi)},Jr}(.5);function ji(Mt){this._context=Mt}ji.prototype={areaStart:er,areaEnd:er,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(Mt,kr){Mt=+Mt,kr=+kr,this._point?this._context.lineTo(Mt,kr):(this._point=1,this._context.moveTo(Mt,kr))}};function In(Mt){return new ji(Mt)}function wi(Mt){return Mt<0?-1:1}function On(Mt,kr,Jr){var vi=Mt._x1-Mt._x0,hn=kr-Mt._x1,An=(Mt._y1-Mt._y0)/(vi||hn<0&&-0),Mn=(Jr-Mt._y1)/(hn||vi<0&&-0),Li=(An*hn+Mn*vi)/(vi+hn);return(wi(An)+wi(Mn))*Math.min(Math.abs(An),Math.abs(Mn),.5*Math.abs(Li))||0}function qn(Mt,kr){var Jr=Mt._x1-Mt._x0;return Jr?(3*(Mt._y1-Mt._y0)/Jr-kr)/2:kr}function Fn(Mt,kr,Jr){var vi=Mt._x0,hn=Mt._y0,An=Mt._x1,Mn=Mt._y1,Li=(An-vi)/3;Mt._context.bezierCurveTo(vi+Li,hn+Li*kr,An-Li,Mn-Li*Jr,An,Mn)}function ra(Mt){this._context=Mt}ra.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Fn(this,this._t0,qn(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){var Jr=NaN;if(Mt=+Mt,kr=+kr,!(Mt===this._x1&&kr===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2;break;case 2:this._point=3,Fn(this,qn(this,Jr=On(this,Mt,kr)),Jr);break;default:Fn(this,this._t0,Jr=On(this,Mt,kr));break}this._x0=this._x1,this._x1=Mt,this._y0=this._y1,this._y1=kr,this._t0=Jr}}};function la(Mt){this._context=new Ut(Mt)}(la.prototype=Object.create(ra.prototype)).point=function(Mt,kr){ra.prototype.point.call(this,kr,Mt)};function Ut(Mt){this._context=Mt}Ut.prototype={moveTo:function(Mt,kr){this._context.moveTo(kr,Mt)},closePath:function(){this._context.closePath()},lineTo:function(Mt,kr){this._context.lineTo(kr,Mt)},bezierCurveTo:function(Mt,kr,Jr,vi,hn,An){this._context.bezierCurveTo(kr,Mt,vi,Jr,An,hn)}};function wt(Mt){return new ra(Mt)}function rr(Mt){return new la(Mt)}function nr(Mt){this._context=Mt}nr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var Mt=this._x,kr=this._y,Jr=Mt.length;if(Jr)if(this._line?this._context.lineTo(Mt[0],kr[0]):this._context.moveTo(Mt[0],kr[0]),Jr===2)this._context.lineTo(Mt[1],kr[1]);else for(var vi=Er(Mt),hn=Er(kr),An=0,Mn=1;Mn=0;--kr)hn[kr]=(Mn[kr]-hn[kr+1])/An[kr];for(An[Jr-1]=(Mt[Jr]+hn[Jr-1])/2,kr=0;kr=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,kr),this._context.lineTo(Mt,kr);else{var Jr=this._x*(1-this._t)+Mt*this._t;this._context.lineTo(Jr,this._y),this._context.lineTo(Jr,kr)}break}}this._x=Mt,this._y=kr}};function Qr(Mt){return new ri(Mt,.5)}function Oi(Mt){return new ri(Mt,0)}function $i(Mt){return new ri(Mt,1)}function tn(Mt,kr){if((Mn=Mt.length)>1)for(var Jr=1,vi,hn,An=Mt[kr[0]],Mn,Li=An.length;Jr=0;)Jr[kr]=kr;return Jr}function yn(Mt,kr){return Mt[kr]}function Sn(){var Mt=r([]),kr=fn,Jr=tn,vi=yn;function hn(An){var Mn=Mt.apply(this,arguments),Li,_n=An.length,ya=Mn.length,Jn=new Array(ya),Ma;for(Li=0;Li0){for(var Jr,vi,hn=0,An=Mt[0].length,Mn;hn0)for(var Jr,vi=0,hn,An,Mn,Li,_n,ya=Mt[kr[0]].length;vi0?(hn[0]=Mn,hn[1]=Mn+=An):An<0?(hn[1]=Li,hn[0]=Li+=An):(hn[0]=0,hn[1]=An)}function ma(Mt,kr){if((hn=Mt.length)>0){for(var Jr=0,vi=Mt[kr[0]],hn,An=vi.length;Jr0)||!((An=(hn=Mt[kr[0]]).length)>0))){for(var Jr=0,vi=1,hn,An,Mn;viAn&&(An=hn,Jr=kr);return Jr}function da(Mt){var kr=Mt.map(Wn);return fn(Mt).sort(function(Jr,vi){return kr[Jr]-kr[vi]})}function Wn(Mt){for(var kr=0,Jr=-1,vi=Mt.length,hn;++Jr{(function(e,t){typeof A7=="object"&&typeof NWe!="undefined"?t(A7,nk(),y7(),HJ()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3)})(A7,function(e,t,r,n){"use strict";function i(g){return g.target.depth}function a(g){return g.depth}function o(g,P){return P-1-g.height}function s(g,P){return g.sourceLinks.length?g.depth:P-1}function l(g){return g.targetLinks.length?g.depth:g.sourceLinks.length?t.min(g.sourceLinks,i)-1:0}function u(g){return function(){return g}}function c(g,P){return h(g.source,P.source)||g.index-P.index}function f(g,P){return h(g.target,P.target)||g.index-P.index}function h(g,P){return g.y0-P.y0}function d(g){return g.value}function v(g){return(g.y0+g.y1)/2}function _(g){return v(g.source)*g.value}function b(g){return v(g.target)*g.value}function p(g){return g.index}function k(g){return g.nodes}function E(g){return g.links}function S(g,P){var T=g.get(P);if(!T)throw new Error("missing: "+P);return T}var L=function(){var g=0,P=0,T=1,z=1,O=24,V=8,G=p,Z=s,H=k,N=E,j=32,re=2/3;function oe(){var Se={nodes:H.apply(null,arguments),links:N.apply(null,arguments)};return _e(Se),Ee(Se),Ce(Se),me(Se,j),ie(Se),Se}oe.update=function(Se){return ie(Se),Se},oe.nodeId=function(Se){return arguments.length?(G=typeof Se=="function"?Se:u(Se),oe):G},oe.nodeAlign=function(Se){return arguments.length?(Z=typeof Se=="function"?Se:u(Se),oe):Z},oe.nodeWidth=function(Se){return arguments.length?(O=+Se,oe):O},oe.nodePadding=function(Se){return arguments.length?(V=+Se,oe):V},oe.nodes=function(Se){return arguments.length?(H=typeof Se=="function"?Se:u(Se),oe):H},oe.links=function(Se){return arguments.length?(N=typeof Se=="function"?Se:u(Se),oe):N},oe.size=function(Se){return arguments.length?(g=P=0,T=+Se[0],z=+Se[1],oe):[T-g,z-P]},oe.extent=function(Se){return arguments.length?(g=+Se[0][0],T=+Se[1][0],P=+Se[0][1],z=+Se[1][1],oe):[[g,P],[T,z]]},oe.iterations=function(Se){return arguments.length?(j=+Se,oe):j};function _e(Se){Se.nodes.forEach(function(Ae,Fe){Ae.index=Fe,Ae.sourceLinks=[],Ae.targetLinks=[]});var Le=r.map(Se.nodes,G);Se.links.forEach(function(Ae,Fe){Ae.index=Fe;var Pe=Ae.source,ge=Ae.target;typeof Pe!="object"&&(Pe=Ae.source=S(Le,Pe)),typeof ge!="object"&&(ge=Ae.target=S(Le,ge)),Pe.sourceLinks.push(Ae),ge.targetLinks.push(Ae)})}function Ee(Se){Se.nodes.forEach(function(Le){Le.value=Math.max(t.sum(Le.sourceLinks,d),t.sum(Le.targetLinks,d))})}function Ce(Se){var Le,Ae,Fe;for(Le=Se.nodes,Ae=[],Fe=0;Le.length;++Fe,Le=Ae,Ae=[])Le.forEach(function(ge){ge.depth=Fe,ge.sourceLinks.forEach(function(Re){Ae.indexOf(Re.target)<0&&Ae.push(Re.target)})});for(Le=Se.nodes,Ae=[],Fe=0;Le.length;++Fe,Le=Ae,Ae=[])Le.forEach(function(ge){ge.height=Fe,ge.targetLinks.forEach(function(Re){Ae.indexOf(Re.source)<0&&Ae.push(Re.source)})});var Pe=(T-g-O)/(Fe-1);Se.nodes.forEach(function(ge){ge.x1=(ge.x0=g+Math.max(0,Math.min(Fe-1,Math.floor(Z.call(null,ge,Fe))))*Pe)+O})}function me(Se){var Le=r.nest().key(function(Ze){return Ze.x0}).sortKeys(t.ascending).entries(Se.nodes).map(function(Ze){return Ze.values});Pe(),ce();for(var Ae=1,Fe=j;Fe>0;--Fe)Re(Ae*=.99),ce(),ge(Ae),ce();function Pe(){var Ze=t.max(Le,function(Zt){return Zt.length}),ut=re*(z-P)/(Ze-1);V>ut&&(V=ut);var pt=t.min(Le,function(Zt){return(z-P-(Zt.length-1)*V)/t.sum(Zt,d)});Le.forEach(function(Zt){Zt.forEach(function(st,lt){st.y1=(st.y0=lt)+st.value*pt})}),Se.links.forEach(function(Zt){Zt.width=Zt.value*pt})}function ge(Ze){Le.forEach(function(ut){ut.forEach(function(pt){if(pt.targetLinks.length){var Zt=(t.sum(pt.targetLinks,_)/t.sum(pt.targetLinks,d)-v(pt))*Ze;pt.y0+=Zt,pt.y1+=Zt}})})}function Re(Ze){Le.slice().reverse().forEach(function(ut){ut.forEach(function(pt){if(pt.sourceLinks.length){var Zt=(t.sum(pt.sourceLinks,b)/t.sum(pt.sourceLinks,d)-v(pt))*Ze;pt.y0+=Zt,pt.y1+=Zt}})})}function ce(){Le.forEach(function(Ze){var ut,pt,Zt=P,st=Ze.length,lt;for(Ze.sort(h),lt=0;lt0&&(ut.y0+=pt,ut.y1+=pt),Zt=ut.y1+V;if(pt=Zt-V-z,pt>0)for(Zt=ut.y0-=pt,ut.y1-=pt,lt=st-2;lt>=0;--lt)ut=Ze[lt],pt=ut.y1+V-Zt,pt>0&&(ut.y0-=pt,ut.y1-=pt),Zt=ut.y0})}}function ie(Se){Se.nodes.forEach(function(Le){Le.sourceLinks.sort(f),Le.targetLinks.sort(c)}),Se.nodes.forEach(function(Le){var Ae=Le.y0,Fe=Ae;Le.sourceLinks.forEach(function(Pe){Pe.y0=Ae+Pe.width/2,Ae+=Pe.width}),Le.targetLinks.forEach(function(Pe){Pe.y1=Fe+Pe.width/2,Fe+=Pe.width})})}return oe};function x(g){return[g.source.x1,g.y0]}function C(g){return[g.target.x0,g.y1]}var M=function(){return n.linkHorizontal().source(x).target(C)};e.sankey=L,e.sankeyCenter=l,e.sankeyLeft=a,e.sankeyRight=o,e.sankeyJustify=s,e.sankeyLinkHorizontal=M,Object.defineProperty(e,"__esModule",{value:!0})})});var GWe=ye((Qbr,VWe)=>{var FZt=GJ();VWe.exports=function(t,r){var n=[],i=[],a=[],o={},s=[],l;function u(E){a[E]=!1,o.hasOwnProperty(E)&&Object.keys(o[E]).forEach(function(S){delete o[E][S],a[S]&&u(S)})}function c(E){var S=!1;i.push(E),a[E]=!0;var L,x;for(L=0;L=E})}function d(E){h(E);for(var S=t,L=FZt(S),x=L.components.filter(function(O){return O.length>1}),C=1/0,M,g=0;g{(function(e,t){typeof S7=="object"&&typeof HWe!="undefined"?t(S7,nk(),y7(),HJ(),GWe()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,null)})(S7,function(e,t,r,n,i){"use strict";i=i&&i.hasOwnProperty("default")?i.default:i;function a(st){return st.target.depth}function o(st){return st.depth}function s(st,lt){return lt-1-st.height}function l(st,lt){return st.sourceLinks.length?st.depth:lt-1}function u(st){return st.targetLinks.length?st.depth:st.sourceLinks.length?t.min(st.sourceLinks,a)-1:0}function c(st){return function(){return st}}var f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(st){return typeof st}:function(st){return st&&typeof Symbol=="function"&&st.constructor===Symbol&&st!==Symbol.prototype?"symbol":typeof st};function h(st,lt){return v(st.source,lt.source)||st.index-lt.index}function d(st,lt){return v(st.target,lt.target)||st.index-lt.index}function v(st,lt){return st.partOfCycle===lt.partOfCycle?st.y0-lt.y0:st.circularLinkType==="top"||lt.circularLinkType==="bottom"?-1:1}function _(st){return st.value}function b(st){return(st.y0+st.y1)/2}function p(st){return b(st.source)}function k(st){return b(st.target)}function E(st){return st.index}function S(st){return st.nodes}function L(st){return st.links}function x(st,lt){var Gt=st.get(lt);if(!Gt)throw new Error("missing: "+lt);return Gt}function C(st,lt){return lt(st)}var M=25,g=10,P=.3;function T(){var st=0,lt=0,Gt=1,Nt=1,Jt=24,sr,wr=E,cr=l,$e=S,St=L,Qt=32,Vt=2,_t,It=null;function mt(){var dt={nodes:$e.apply(null,arguments),links:St.apply(null,arguments)};er(dt),z(dt,wr,It),lr(dt),ti(dt),O(dt,wr),Br(dt,Qt,wr),Vr(dt);for(var Ge=4,Je=0;Je0?Ge+M+g:Ge,Je=Je>0?Je+M+g:Je,je=je>0?je+M+g:je,tt=tt>0?tt+M+g:tt,{top:Ge,bottom:Je,left:tt,right:je}}function Lr(dt,Ge){var Je=t.max(dt.nodes,function(vt){return vt.column}),je=Gt-st,tt=Nt-lt,xt=je+Ge.right+Ge.left,Ie=tt+Ge.top+Ge.bottom,xe=je/xt,ke=tt/Ie;return st=st*xe+Ge.left,Gt=Ge.right==0?Gt:Gt*xe,lt=lt*ke+Ge.top,Nt=Nt*ke,dt.nodes.forEach(function(vt){vt.x0=st+vt.column*((Gt-st-Jt)/Je),vt.x1=vt.x0+Jt}),ke}function ti(dt){var Ge,Je,je;for(Ge=dt.nodes,Je=[],je=0;Ge.length;++je,Ge=Je,Je=[])Ge.forEach(function(tt){tt.depth=je,tt.sourceLinks.forEach(function(xt){Je.indexOf(xt.target)<0&&!xt.circular&&Je.push(xt.target)})});for(Ge=dt.nodes,Je=[],je=0;Ge.length;++je,Ge=Je,Je=[])Ge.forEach(function(tt){tt.height=je,tt.targetLinks.forEach(function(xt){Je.indexOf(xt.source)<0&&!xt.circular&&Je.push(xt.source)})});dt.nodes.forEach(function(tt){tt.column=Math.floor(cr.call(null,tt,je))})}function Br(dt,Ge,Je){var je=r.nest().key(function(vt){return vt.column}).sortKeys(t.ascending).entries(dt.nodes).map(function(vt){return vt.values});Ie(Je),ke();for(var tt=1,xt=Ge;xt>0;--xt)xe(tt*=.99,Je),ke();function Ie(vt){if(_t){var ir=1/0;je.forEach(function(pi){var $r=Nt*_t/(pi.length+1);ir=$r0))if(pi==0&&ii==1)di=$r.y1-$r.y0,$r.y0=Nt/2-di/2,$r.y1=Nt/2+di/2;else if(pi==ar-1&&ii==1)di=$r.y1-$r.y0,$r.y0=Nt/2-di/2,$r.y1=Nt/2+di/2;else{var ji=0,In=t.mean($r.sourceLinks,k),wi=t.mean($r.targetLinks,p);In&&wi?ji=(In+wi)/2:ji=In||wi;var On=(ji-b($r))*vt;$r.y0+=On,$r.y1+=On}})})}function ke(){je.forEach(function(vt){var ir,ar,vr=lt,ii=vt.length,pi;for(vt.sort(v),pi=0;pi0&&(ir.y0+=ar,ir.y1+=ar),vr=ir.y1+sr;if(ar=vr-sr-Nt,ar>0)for(vr=ir.y0-=ar,ir.y1-=ar,pi=ii-2;pi>=0;--pi)ir=vt[pi],ar=ir.y1+sr-vr,ar>0&&(ir.y0-=ar,ir.y1-=ar),vr=ir.y0})}}function Vr(dt){dt.nodes.forEach(function(Ge){Ge.sourceLinks.sort(d),Ge.targetLinks.sort(h)}),dt.nodes.forEach(function(Ge){var Je=Ge.y0,je=Je,tt=Ge.y1,xt=tt;Ge.sourceLinks.forEach(function(Ie){Ie.circular?(Ie.y0=tt-Ie.width/2,tt=tt-Ie.width):(Ie.y0=Je+Ie.width/2,Je+=Ie.width)}),Ge.targetLinks.forEach(function(Ie){Ie.circular?(Ie.y1=xt-Ie.width/2,xt=xt-Ie.width):(Ie.y1=je+Ie.width/2,je+=Ie.width)})})}return mt}function z(st,lt,Gt){var Nt=0;if(Gt===null){for(var Jt=[],sr=0;srlt.source.column)}function Z(st,lt){var Gt=0;st.sourceLinks.forEach(function(Jt){Gt=Jt.circular&&!pt(Jt,lt)?Gt+1:Gt});var Nt=0;return st.targetLinks.forEach(function(Jt){Nt=Jt.circular&&!pt(Jt,lt)?Nt+1:Nt}),Gt+Nt}function H(st){var lt=st.source.sourceLinks,Gt=0;lt.forEach(function(sr){Gt=sr.circular?Gt+1:Gt});var Nt=st.target.targetLinks,Jt=0;return Nt.forEach(function(sr){Jt=sr.circular?Jt+1:Jt}),!(Gt>1||Jt>1)}function N(st,lt,Gt){return st.sort(oe),st.forEach(function(Nt,Jt){var sr=0;if(pt(Nt,Gt)&&H(Nt))Nt.circularPathData.verticalBuffer=sr+Nt.width/2;else{var wr=0;for(wr;wrsr?cr:sr}Nt.circularPathData.verticalBuffer=sr+Nt.width/2}}),st}function j(st,lt,Gt,Nt){var Jt=5,sr=t.min(st.links,function($e){return $e.source.y0});st.links.forEach(function($e){$e.circular&&($e.circularPathData={})});var wr=st.links.filter(function($e){return $e.circularLinkType=="top"});N(wr,lt,Nt);var cr=st.links.filter(function($e){return $e.circularLinkType=="bottom"});N(cr,lt,Nt),st.links.forEach(function($e){if($e.circular){if($e.circularPathData.arcRadius=$e.width+g,$e.circularPathData.leftNodeBuffer=Jt,$e.circularPathData.rightNodeBuffer=Jt,$e.circularPathData.sourceWidth=$e.source.x1-$e.source.x0,$e.circularPathData.sourceX=$e.source.x0+$e.circularPathData.sourceWidth,$e.circularPathData.targetX=$e.target.x0,$e.circularPathData.sourceY=$e.y0,$e.circularPathData.targetY=$e.y1,pt($e,Nt)&&H($e))$e.circularPathData.leftSmallArcRadius=g+$e.width/2,$e.circularPathData.leftLargeArcRadius=g+$e.width/2,$e.circularPathData.rightSmallArcRadius=g+$e.width/2,$e.circularPathData.rightLargeArcRadius=g+$e.width/2,$e.circularLinkType=="bottom"?($e.circularPathData.verticalFullExtent=$e.source.y1+M+$e.circularPathData.verticalBuffer,$e.circularPathData.verticalLeftInnerExtent=$e.circularPathData.verticalFullExtent-$e.circularPathData.leftLargeArcRadius,$e.circularPathData.verticalRightInnerExtent=$e.circularPathData.verticalFullExtent-$e.circularPathData.rightLargeArcRadius):($e.circularPathData.verticalFullExtent=$e.source.y0-M-$e.circularPathData.verticalBuffer,$e.circularPathData.verticalLeftInnerExtent=$e.circularPathData.verticalFullExtent+$e.circularPathData.leftLargeArcRadius,$e.circularPathData.verticalRightInnerExtent=$e.circularPathData.verticalFullExtent+$e.circularPathData.rightLargeArcRadius);else{var St=$e.source.column,Qt=$e.circularLinkType,Vt=st.links.filter(function(mt){return mt.source.column==St&&mt.circularLinkType==Qt});$e.circularLinkType=="bottom"?Vt.sort(Ee):Vt.sort(_e);var _t=0;Vt.forEach(function(mt,er){mt.circularLinkID==$e.circularLinkID&&($e.circularPathData.leftSmallArcRadius=g+$e.width/2+_t,$e.circularPathData.leftLargeArcRadius=g+$e.width/2+er*lt+_t),_t=_t+mt.width}),St=$e.target.column,Vt=st.links.filter(function(mt){return mt.target.column==St&&mt.circularLinkType==Qt}),$e.circularLinkType=="bottom"?Vt.sort(me):Vt.sort(Ce),_t=0,Vt.forEach(function(mt,er){mt.circularLinkID==$e.circularLinkID&&($e.circularPathData.rightSmallArcRadius=g+$e.width/2+_t,$e.circularPathData.rightLargeArcRadius=g+$e.width/2+er*lt+_t),_t=_t+mt.width}),$e.circularLinkType=="bottom"?($e.circularPathData.verticalFullExtent=Math.max(Gt,$e.source.y1,$e.target.y1)+M+$e.circularPathData.verticalBuffer,$e.circularPathData.verticalLeftInnerExtent=$e.circularPathData.verticalFullExtent-$e.circularPathData.leftLargeArcRadius,$e.circularPathData.verticalRightInnerExtent=$e.circularPathData.verticalFullExtent-$e.circularPathData.rightLargeArcRadius):($e.circularPathData.verticalFullExtent=sr-M-$e.circularPathData.verticalBuffer,$e.circularPathData.verticalLeftInnerExtent=$e.circularPathData.verticalFullExtent+$e.circularPathData.leftLargeArcRadius,$e.circularPathData.verticalRightInnerExtent=$e.circularPathData.verticalFullExtent+$e.circularPathData.rightLargeArcRadius)}$e.circularPathData.leftInnerExtent=$e.circularPathData.sourceX+$e.circularPathData.leftNodeBuffer,$e.circularPathData.rightInnerExtent=$e.circularPathData.targetX-$e.circularPathData.rightNodeBuffer,$e.circularPathData.leftFullExtent=$e.circularPathData.sourceX+$e.circularPathData.leftLargeArcRadius+$e.circularPathData.leftNodeBuffer,$e.circularPathData.rightFullExtent=$e.circularPathData.targetX-$e.circularPathData.rightLargeArcRadius-$e.circularPathData.rightNodeBuffer}if($e.circular)$e.path=re($e);else{var It=n.linkHorizontal().source(function(mt){var er=mt.source.x0+(mt.source.x1-mt.source.x0),lr=mt.y0;return[er,lr]}).target(function(mt){var er=mt.target.x0,lr=mt.y1;return[er,lr]});$e.path=It($e)}})}function re(st){var lt="";return st.circularLinkType=="top"?lt="M"+st.circularPathData.sourceX+" "+st.circularPathData.sourceY+" L"+st.circularPathData.leftInnerExtent+" "+st.circularPathData.sourceY+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftSmallArcRadius+" 0 0 0 "+st.circularPathData.leftFullExtent+" "+(st.circularPathData.sourceY-st.circularPathData.leftSmallArcRadius)+" L"+st.circularPathData.leftFullExtent+" "+st.circularPathData.verticalLeftInnerExtent+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftLargeArcRadius+" 0 0 0 "+st.circularPathData.leftInnerExtent+" "+st.circularPathData.verticalFullExtent+" L"+st.circularPathData.rightInnerExtent+" "+st.circularPathData.verticalFullExtent+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightLargeArcRadius+" 0 0 0 "+st.circularPathData.rightFullExtent+" "+st.circularPathData.verticalRightInnerExtent+" L"+st.circularPathData.rightFullExtent+" "+(st.circularPathData.targetY-st.circularPathData.rightSmallArcRadius)+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightSmallArcRadius+" 0 0 0 "+st.circularPathData.rightInnerExtent+" "+st.circularPathData.targetY+" L"+st.circularPathData.targetX+" "+st.circularPathData.targetY:lt="M"+st.circularPathData.sourceX+" "+st.circularPathData.sourceY+" L"+st.circularPathData.leftInnerExtent+" "+st.circularPathData.sourceY+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftSmallArcRadius+" 0 0 1 "+st.circularPathData.leftFullExtent+" "+(st.circularPathData.sourceY+st.circularPathData.leftSmallArcRadius)+" L"+st.circularPathData.leftFullExtent+" "+st.circularPathData.verticalLeftInnerExtent+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftLargeArcRadius+" 0 0 1 "+st.circularPathData.leftInnerExtent+" "+st.circularPathData.verticalFullExtent+" L"+st.circularPathData.rightInnerExtent+" "+st.circularPathData.verticalFullExtent+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightLargeArcRadius+" 0 0 1 "+st.circularPathData.rightFullExtent+" "+st.circularPathData.verticalRightInnerExtent+" L"+st.circularPathData.rightFullExtent+" "+(st.circularPathData.targetY+st.circularPathData.rightSmallArcRadius)+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightSmallArcRadius+" 0 0 1 "+st.circularPathData.rightInnerExtent+" "+st.circularPathData.targetY+" L"+st.circularPathData.targetX+" "+st.circularPathData.targetY,lt}function oe(st,lt){return ie(st)==ie(lt)?st.circularLinkType=="bottom"?Ee(st,lt):_e(st,lt):ie(lt)-ie(st)}function _e(st,lt){return st.y0-lt.y0}function Ee(st,lt){return lt.y0-st.y0}function Ce(st,lt){return st.y1-lt.y1}function me(st,lt){return lt.y1-st.y1}function ie(st){return st.target.column-st.source.column}function Se(st){return st.target.x0-st.source.x1}function Le(st,lt){var Gt=V(st),Nt=Se(lt)/Math.tan(Gt),Jt=ut(st)=="up"?st.y1+Nt:st.y1-Nt;return Jt}function Ae(st,lt){var Gt=V(st),Nt=Se(lt)/Math.tan(Gt),Jt=ut(st)=="up"?st.y1-Nt:st.y1+Nt;return Jt}function Fe(st,lt,Gt,Nt){st.links.forEach(function(Jt){if(!Jt.circular&&Jt.target.column-Jt.source.column>1){var sr=Jt.source.column+1,wr=Jt.target.column-1,cr=1,$e=wr-sr+1;for(cr=1;sr<=wr;sr++,cr++)st.nodes.forEach(function(St){if(St.column==sr){var Qt=cr/($e+1),Vt=Math.pow(1-Qt,3),_t=3*Qt*Math.pow(1-Qt,2),It=3*Math.pow(Qt,2)*(1-Qt),mt=Math.pow(Qt,3),er=Vt*Jt.y0+_t*Jt.y0+It*Jt.y1+mt*Jt.y1,lr=er-Jt.width/2,Tr=er+Jt.width/2,Lr;lr>St.y0&&lrSt.y0&&TrSt.y1&&ge(ti,Lr,lt,Gt)})):lrSt.y1&&(Lr=Tr-St.y0+10,St=ge(St,Lr,lt,Gt),st.nodes.forEach(function(ti){C(ti,Nt)==C(St,Nt)||ti.column!=St.column||ti.y0St.y1&&ge(ti,Lr,lt,Gt)}))}})}})}function Pe(st,lt){return st.y0>lt.y0&&st.y0lt.y0&&st.y1lt.y1}function ge(st,lt,Gt,Nt){return st.y0+lt>=Gt&&st.y1+lt<=Nt&&(st.y0=st.y0+lt,st.y1=st.y1+lt,st.targetLinks.forEach(function(Jt){Jt.y1=Jt.y1+lt}),st.sourceLinks.forEach(function(Jt){Jt.y0=Jt.y0+lt})),st}function Re(st,lt,Gt,Nt){st.nodes.forEach(function(Jt){Nt&&Jt.y+(Jt.y1-Jt.y0)>lt&&(Jt.y=Jt.y-(Jt.y+(Jt.y1-Jt.y0)-lt));var sr=st.links.filter(function($e){return C($e.source,Gt)==C(Jt,Gt)}),wr=sr.length;wr>1&&sr.sort(function($e,St){if(!$e.circular&&!St.circular){if($e.target.column==St.target.column)return $e.y1-St.y1;if(Ze($e,St)){if($e.target.column>St.target.column){var Qt=Ae(St,$e);return $e.y1-Qt}if(St.target.column>$e.target.column){var Vt=Ae($e,St);return Vt-St.y1}}else return $e.y1-St.y1}if($e.circular&&!St.circular)return $e.circularLinkType=="top"?-1:1;if(St.circular&&!$e.circular)return St.circularLinkType=="top"?1:-1;if($e.circular&&St.circular)return $e.circularLinkType===St.circularLinkType&&$e.circularLinkType=="top"?$e.target.column===St.target.column?$e.target.y1-St.target.y1:St.target.column-$e.target.column:$e.circularLinkType===St.circularLinkType&&$e.circularLinkType=="bottom"?$e.target.column===St.target.column?St.target.y1-$e.target.y1:$e.target.column-St.target.column:$e.circularLinkType=="top"?-1:1});var cr=Jt.y0;sr.forEach(function($e){$e.y0=cr+$e.width/2,cr=cr+$e.width}),sr.forEach(function($e,St){if($e.circularLinkType=="bottom"){var Qt=St+1,Vt=0;for(Qt;Qt1&&Jt.sort(function(cr,$e){if(!cr.circular&&!$e.circular){if(cr.source.column==$e.source.column)return cr.y0-$e.y0;if(Ze(cr,$e)){if($e.source.column0?"up":"down"}function pt(st,lt){return C(st.source,lt)==C(st.target,lt)}function Zt(st,lt,Gt){var Nt=st.nodes,Jt=st.links,sr=!1,wr=!1;if(Jt.forEach(function(_t){_t.circularLinkType=="top"?sr=!0:_t.circularLinkType=="bottom"&&(wr=!0)}),sr==!1||wr==!1){var cr=t.min(Nt,function(_t){return _t.y0}),$e=t.max(Nt,function(_t){return _t.y1}),St=$e-cr,Qt=Gt-lt,Vt=Qt/St;Nt.forEach(function(_t){var It=(_t.y1-_t.y0)*Vt;_t.y0=(_t.y0-cr)*Vt,_t.y1=_t.y0+It}),Jt.forEach(function(_t){_t.y0=(_t.y0-cr)*Vt,_t.y1=(_t.y1-cr)*Vt,_t.width=_t.width*Vt})}}e.sankeyCircular=T,e.sankeyCenter=u,e.sankeyLeft=o,e.sankeyRight=s,e.sankeyJustify=l,Object.defineProperty(e,"__esModule",{value:!0})})});var jJ=ye((e2r,WWe)=>{"use strict";WWe.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:"linear",cn:{sankey:"sankey",sankeyLinks:"sankey-links",sankeyLink:"sankey-link",sankeyNodeSet:"sankey-node-set",sankeyNode:"sankey-node",nodeRect:"node-rect",nodeLabel:"node-label"}}});var aXe=ye((t2r,nXe)=>{"use strict";var XWe=zWe(),zZt=(D2(),ob(R2)).interpolateNumber,I5=Oa(),Jk=UWe(),OZt=jWe(),Nu=jJ(),R5=cd(),ow=ka(),qZt=So(),p1=Dr(),ZJ=p1.strTranslate,BZt=p1.strRotate,YJ=Jm(),$k=YJ.keyFun,M7=YJ.repeat,QWe=YJ.unwrap,ZWe=ru(),NZt=qa(),eXe=$h(),UZt=eXe.CAP_SHIFT,VZt=eXe.LINE_SPACING,GZt=3;function HZt(e,t,r){var n=QWe(t),i=n.trace,a=i.domain,o=i.orientation==="h",s=i.node.pad,l=i.node.thickness,u={justify:Jk.sankeyJustify,left:Jk.sankeyLeft,right:Jk.sankeyRight,center:Jk.sankeyCenter}[i.node.align],c=e.width*(a.x[1]-a.x[0]),f=e.height*(a.y[1]-a.y[0]),h=n._nodes,d=n._links,v=n.circular,_;v?_=OZt.sankeyCircular().circularLinkGap(0):_=Jk.sankey(),_.iterations(Nu.sankeyIterations).size(o?[c,f]:[f,c]).nodeWidth(l).nodePadding(s).nodeId(function(V){return V.pointNumber}).nodeAlign(u).nodes(h).links(d);var b=_();_.nodePadding()=N||(H=N-Z.y0,H>1e-6&&(Z.y0+=H,Z.y1+=H)),N=Z.y1+s})}function P(V){var G=V.map(function(_e,Ee){return{x0:_e.x0,index:Ee}}).sort(function(_e,Ee){return _e.x0-Ee.x0}),Z=[],H=-1,N,j=-1/0,re;for(p=0;pj+l&&(H+=1,N=oe.x0),j=oe.x0,Z[H]||(Z[H]=[]),Z[H].push(oe),re=N-oe.x0,oe.x0+=re,oe.x1+=re}return Z}if(i.node.x.length&&i.node.y.length){for(p=0;p0?" L "+i.targetX+" "+i.targetY:"")+"Z"):(r="M "+(i.targetX-t)+" "+(i.targetY-n)+" L "+(i.rightInnerExtent-t)+" "+(i.targetY-n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightSmallArcRadius+n)+" 0 0 0 "+(i.rightFullExtent-n-t)+" "+(i.targetY+i.rightSmallArcRadius)+" L "+(i.rightFullExtent-n-t)+" "+i.verticalRightInnerExtent,a&&o?r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightInnerExtent-n-t)+" "+(i.verticalFullExtent+n)+" L "+(i.rightFullExtent+n-t-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent+n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent:a?r+=" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightFullExtent-t-n-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" L "+(i.leftFullExtent+n+(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent:r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightInnerExtent-t)+" "+(i.verticalFullExtent+n)+" L "+i.leftInnerExtent+" "+(i.verticalFullExtent+n)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent,r+=" L "+(i.leftFullExtent+n)+" "+(i.sourceY+i.leftSmallArcRadius)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftSmallArcRadius+n)+" 0 0 0 "+i.leftInnerExtent+" "+(i.sourceY-n)+" L "+i.sourceX+" "+(i.sourceY-n)+" L "+i.sourceX+" "+(i.sourceY+n)+" L "+i.leftInnerExtent+" "+(i.sourceY+n)+" A "+(i.leftLargeArcRadius-n)+" "+(i.leftSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent-n)+" "+(i.sourceY+i.leftSmallArcRadius)+" L "+(i.leftFullExtent-n)+" "+i.verticalLeftInnerExtent,a&&o?r+=" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent-n-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" L "+(i.rightFullExtent+n-t+(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent:a?r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+(i.verticalFullExtent+n)+" L "+(i.rightFullExtent-t-n)+" "+(i.verticalFullExtent+n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent:r+=" A "+(i.leftLargeArcRadius-n)+" "+(i.leftLargeArcRadius-n)+" 0 0 1 "+i.leftInnerExtent+" "+(i.verticalFullExtent-n)+" L "+(i.rightInnerExtent-t)+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightLargeArcRadius-n)+" 0 0 1 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent,r+=" L "+(i.rightFullExtent+n-t)+" "+(i.targetY+i.rightSmallArcRadius)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightInnerExtent-t)+" "+(i.targetY+n)+" L "+(i.targetX-t)+" "+(i.targetY+n)+(t>0?" L "+i.targetX+" "+i.targetY:"")+"Z"),r}function KJ(){var e=.5;function t(r){var n=r.linkArrowLength;if(r.link.circular)return WZt(r.link,n);var i=Math.abs((r.link.target.x0-r.link.source.x1)/2);n>i&&(n=i);var a=r.link.source.x1,o=r.link.target.x0-n,s=zZt(a,o),l=s(e),u=s(1-e),c=r.link.y0-r.link.width/2,f=r.link.y0+r.link.width/2,h=r.link.y1-r.link.width/2,d=r.link.y1+r.link.width/2,v="M"+a+","+c,_="C"+l+","+c+" "+u+","+h+" "+o+","+h,b="C"+u+","+d+" "+l+","+f+" "+a+","+f,p=n>0?"L"+(o+n)+","+(h+r.link.width/2):"";return p+="L"+o+","+d,v+_+p+b+"Z"}return t}function XZt(e,t){var r=R5(t.color),n=Nu.nodePadAcross,i=e.nodePad/2;t.dx=t.x1-t.x0,t.dy=t.y1-t.y0;var a=t.dx,o=Math.max(.5,t.dy),s="node_"+t.pointNumber;return t.group&&(s=p1.randstr()),t.trace=e.trace,t.curveNumber=e.trace.index,{index:t.pointNumber,key:s,partOfGroup:t.partOfGroup||!1,group:t.group,traceId:e.key,trace:e.trace,node:t,nodePad:e.nodePad,nodeLineColor:e.nodeLineColor,nodeLineWidth:e.nodeLineWidth,textFont:e.textFont,size:e.horizontal?e.height:e.width,visibleWidth:Math.ceil(a),visibleHeight:o,zoneX:-n,zoneY:-i,zoneWidth:a+2*n,zoneHeight:o+2*i,labelY:e.horizontal?t.dy/2+1:t.dx/2+1,left:t.originalLayer===1,sizeAcross:e.width,forceLayouts:e.forceLayouts,horizontal:e.horizontal,darkBackground:r.getBrightness()<=128,tinyColorHue:ow.tinyRGB(r),tinyColorAlpha:r.getAlpha(),valueFormat:e.valueFormat,valueSuffix:e.valueSuffix,sankey:e.sankey,graph:e.graph,arrangement:e.arrangement,uniqueNodeLabelPathId:[e.guid,e.key,s].join("_"),interactionState:e.interactionState,figure:e}}function XJ(e){e.attr("transform",function(t){return ZJ(t.node.x0.toFixed(3),t.node.y0.toFixed(3))})}function ZZt(e){e.call(XJ)}function tXe(e,t){e.call(ZZt),t.attr("d",KJ())}function YWe(e){e.attr("width",function(t){return t.node.x1-t.node.x0}).attr("height",function(t){return t.visibleHeight})}function WJ(e){return e.link.width>1||e.linkLineWidth>0}function KWe(e){var t=ZJ(e.translateX,e.translateY);return t+(e.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function JWe(e,t,r){e.on(".basic",null).on("mouseover.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.hover(this,n,t),n.interactionState.hovered=[this,n])}).on("mousemove.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.follow(this,n),n.interactionState.hovered=[this,n])}).on("mouseout.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.unhover(this,n,t),n.interactionState.hovered=!1)}).on("click.basic",function(n){n.interactionState.hovered&&(r.unhover(this,n,t),n.interactionState.hovered=!1),!n.interactionState.dragInProgress&&!n.partOfGroup&&r.select(this,n,t)})}function YZt(e,t,r,n){var i=I5.behavior.drag().origin(function(a){return{x:a.node.x0+a.visibleWidth/2,y:a.node.y0+a.visibleHeight/2}}).on("dragstart",function(a){if(a.arrangement!=="fixed"&&(p1.ensureSingle(n._fullLayout._infolayer,"g","dragcover",function(s){n._fullLayout._dragCover=s}),p1.raiseToTop(this),a.interactionState.dragInProgress=a.node,$We(a.node),a.interactionState.hovered&&(r.nodeEvents.unhover.apply(0,a.interactionState.hovered),a.interactionState.hovered=!1),a.arrangement==="snap")){var o=a.traceId+"|"+a.key;a.forceLayouts[o]?a.forceLayouts[o].alpha(1):KZt(e,o,a,n),JZt(e,t,a,o,n)}}).on("drag",function(a){if(a.arrangement!=="fixed"){var o=I5.event.x,s=I5.event.y;a.arrangement==="snap"?(a.node.x0=o-a.visibleWidth/2,a.node.x1=o+a.visibleWidth/2,a.node.y0=s-a.visibleHeight/2,a.node.y1=s+a.visibleHeight/2):(a.arrangement==="freeform"&&(a.node.x0=o-a.visibleWidth/2,a.node.x1=o+a.visibleWidth/2),s=Math.max(0,Math.min(a.size-a.visibleHeight/2,s)),a.node.y0=s-a.visibleHeight/2,a.node.y1=s+a.visibleHeight/2),$We(a.node),a.arrangement!=="snap"&&(a.sankey.update(a.graph),tXe(e.filter(iXe(a)),t))}}).on("dragend",function(a){if(a.arrangement!=="fixed"){a.interactionState.dragInProgress=!1;for(var o=0;o0)window.requestAnimationFrame(a);else{var l=r.node.originalX;r.node.x0=l-r.visibleWidth/2,r.node.x1=l+r.visibleWidth/2,rXe(r,i)}})}function $Zt(e,t,r,n){return function(){for(var a=0,o=0;o0&&n.forceLayouts[t].alpha(0)}}function rXe(e,t){for(var r=[],n=[],i=0;i{"use strict";var Zv=Oa(),$J=Dr(),E7=$J.numberFormat,rYt=aXe(),D5=vf(),iYt=ka(),Sx=jJ().cn,Qk=$J._;function oXe(e){return e!==""}function F5(e,t){return e.filter(function(r){return r.key===t.traceId})}function sXe(e,t){Zv.select(e).select("path").style("fill-opacity",t),Zv.select(e).select("rect").style("fill-opacity",t)}function lXe(e){Zv.select(e).select("text.name").style("fill","black")}function uXe(e){return function(t){return e.node.sourceLinks.indexOf(t.link)!==-1||e.node.targetLinks.indexOf(t.link)!==-1}}function cXe(e){return function(t){return t.node.sourceLinks.indexOf(e.link)!==-1||t.node.targetLinks.indexOf(e.link)!==-1}}function fXe(e,t,r){t&&r&&F5(r,t).selectAll("."+Sx.sankeyLink).filter(uXe(t)).call(hXe.bind(0,t,r,!1))}function JJ(e,t,r){t&&r&&F5(r,t).selectAll("."+Sx.sankeyLink).filter(uXe(t)).call(dXe.bind(0,t,r,!1))}function hXe(e,t,r,n){n.style("fill",function(i){if(!i.link.concentrationscale)return i.tinyColorHoverHue}).style("fill-opacity",function(i){if(!i.link.concentrationscale)return i.tinyColorHoverAlpha}),n.each(function(i){var a=i.link.label;a!==""&&F5(t,e).selectAll("."+Sx.sankeyLink).filter(function(o){return o.link.label===a}).style("fill",function(o){if(!o.link.concentrationscale)return o.tinyColorHoverHue}).style("fill-opacity",function(o){if(!o.link.concentrationscale)return o.tinyColorHoverAlpha})}),r&&F5(t,e).selectAll("."+Sx.sankeyNode).filter(cXe(e)).call(fXe)}function dXe(e,t,r,n){n.style("fill",function(i){return i.tinyColorHue}).style("fill-opacity",function(i){return i.tinyColorAlpha}),n.each(function(i){var a=i.link.label;a!==""&&F5(t,e).selectAll("."+Sx.sankeyLink).filter(function(o){return o.link.label===a}).style("fill",function(o){return o.tinyColorHue}).style("fill-opacity",function(o){return o.tinyColorAlpha})}),r&&F5(t,e).selectAll(Sx.sankeyNode).filter(cXe(e)).call(JJ)}function kf(e,t){var r=e.hoverlabel||{},n=$J.nestedProperty(r,t).get();return Array.isArray(n)?!1:n}vXe.exports=function(t,r){for(var n=t._fullLayout,i=n._paper,a=n._size,o=0;o"),color:kf(C,"bgcolor")||iYt.addOpacity(z.color,1),borderColor:kf(C,"bordercolor"),fontFamily:kf(C,"font.family"),fontSize:kf(C,"font.size"),fontColor:kf(C,"font.color"),fontWeight:kf(C,"font.weight"),fontStyle:kf(C,"font.style"),fontVariant:kf(C,"font.variant"),fontTextcase:kf(C,"font.textcase"),fontLineposition:kf(C,"font.lineposition"),fontShadow:kf(C,"font.shadow"),nameLength:kf(C,"namelength"),textAlign:kf(C,"align"),idealAlign:Zv.event.x"),color:kf(C,"bgcolor")||x.tinyColorHue,borderColor:kf(C,"bordercolor"),fontFamily:kf(C,"font.family"),fontSize:kf(C,"font.size"),fontColor:kf(C,"font.color"),fontWeight:kf(C,"font.weight"),fontStyle:kf(C,"font.style"),fontVariant:kf(C,"font.variant"),fontTextcase:kf(C,"font.textcase"),fontLineposition:kf(C,"font.lineposition"),fontShadow:kf(C,"font.shadow"),nameLength:kf(C,"namelength"),textAlign:kf(C,"align"),idealAlign:"left",hovertemplate:C.hovertemplate,hovertemplateLabels:V,eventData:[x.node]},{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:t});sXe(H,.85),lXe(H)}}},S=function(L,x,C){t._fullLayout.hovermode!==!1&&(Zv.select(L).call(JJ,x,C),x.node.trace.node.hoverinfo!=="skip"&&(x.node.fullData=x.node.trace,t.emit("plotly_unhover",{event:Zv.event,points:[x.node]})),D5.loneUnhover(n._hoverlayer.node()))};rYt(t,i,r,{width:a.w,height:a.h,margin:{t:a.t,r:a.r,b:a.b,l:a.l}},{linkEvents:{hover:u,follow:_,unhover:b,select:l},nodeEvents:{hover:k,follow:E,unhover:S,select:p}})}});var pXe=ye(sw=>{"use strict";var nYt=mc().overrideAll,aYt=Id().getModuleCalcData,oYt=QJ(),sYt=B1(),lYt=Ag(),uYt=yv(),cYt=Of().prepSelect,e$=Dr(),fYt=qa(),k7="sankey";sw.name=k7;sw.baseLayoutAttrOverrides=nYt({hoverlabel:sYt.hoverlabel},"plot","nested");sw.plot=function(e){var t=aYt(e.calcdata,k7)[0];oYt(e,t),sw.updateFx(e)};sw.clean=function(e,t,r,n){var i=n._has&&n._has(k7),a=t._has&&t._has(k7);i&&!a&&(n._paperdiv.selectAll(".sankey").remove(),n._paperdiv.selectAll(".bgsankey").remove())};sw.updateFx=function(e){for(var t=0;t{"use strict";gXe.exports=function(t,r){for(var n=t.cd,i=[],a=n[0].trace,o=a._sankey.graph.nodes,s=0;s{"use strict";yXe.exports={attributes:VJ(),supplyDefaults:wWe(),calc:EWe(),plot:QJ(),moduleType:"trace",name:"sankey",basePlotModule:pXe(),selectPoints:mXe(),categories:["noOpacity"],meta:{}}});var bXe=ye((o2r,xXe)=>{"use strict";xXe.exports=_Xe()});var TXe=ye(z5=>{"use strict";var wXe=Mc();z5.name="indicator";z5.plot=function(e,t,r,n){wXe.plotBasePlot(z5.name,e,t,r,n)};z5.clean=function(e,t,r,n){wXe.cleanBasePlot(z5.name,e,t,r,n)}});var r$=ye((l2r,CXe)=>{"use strict";var Mx=Ao().extendFlat,SXe=Ao().extendDeep,dYt=mc().overrideAll,MXe=ec(),EXe=Lh(),vYt=Cc().attributes,Bf=Rd(),pYt=vl().templatedArray,C7=WT(),AXe=df().descriptionOnlyNumbers,t$=MXe({editType:"plot",colorEditType:"plot"}),eC={color:{valType:"color",editType:"plot"},line:{color:{valType:"color",dflt:EXe.defaultLine,editType:"plot"},width:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},thickness:{valType:"number",min:0,max:1,dflt:1,editType:"plot"},editType:"calc"},kXe={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},gYt=pYt("step",SXe({},eC,{range:kXe}));CXe.exports={mode:{valType:"flaglist",editType:"calc",flags:["number","delta","gauge"],dflt:"number"},value:{valType:"number",editType:"calc",anim:!0},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},domain:vYt({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot"},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},font:Mx({},t$,{}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot",description:AXe("value")},font:Mx({},t$,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"plot"},delta:{reference:{valType:"number",editType:"calc"},position:{valType:"enumerated",values:["top","bottom","left","right"],dflt:"bottom",editType:"plot"},relative:{valType:"boolean",editType:"plot",dflt:!1},valueformat:{valType:"string",editType:"plot",description:AXe("value")},increasing:{symbol:{valType:"string",dflt:C7.INCREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:C7.INCREASING.COLOR,editType:"plot"},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:C7.DECREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:C7.DECREASING.COLOR,editType:"plot"},editType:"plot"},font:Mx({},t$,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"]},bar:SXe({},eC,{color:{dflt:"green"}}),bgcolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:EXe.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot"},axis:dYt({range:kXe,visible:Mx({},Bf.visible,{dflt:!0}),tickmode:Bf.minor.tickmode,nticks:Bf.nticks,tick0:Bf.tick0,dtick:Bf.dtick,tickvals:Bf.tickvals,ticktext:Bf.ticktext,ticks:Mx({},Bf.ticks,{dflt:"outside"}),ticklen:Bf.ticklen,tickwidth:Bf.tickwidth,tickcolor:Bf.tickcolor,ticklabelstep:Bf.ticklabelstep,showticklabels:Bf.showticklabels,labelalias:Bf.labelalias,tickfont:MXe({}),tickangle:Bf.tickangle,tickformat:Bf.tickformat,tickformatstops:Bf.tickformatstops,tickprefix:Bf.tickprefix,showtickprefix:Bf.showtickprefix,ticksuffix:Bf.ticksuffix,showticksuffix:Bf.showticksuffix,separatethousands:Bf.separatethousands,exponentformat:Bf.exponentformat,minexponent:Bf.minexponent,showexponent:Bf.showexponent,editType:"plot"},"plot"),steps:gYt,threshold:{line:{color:Mx({},eC.line.color,{}),width:Mx({},eC.line.width,{dflt:1}),editType:"plot"},thickness:Mx({},eC.thickness,{dflt:.85}),value:{valType:"number",editType:"calc",dflt:!1},editType:"plot"},editType:"plot"}}});var i$=ye((u2r,LXe)=>{"use strict";LXe.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}});var RXe=ye((c2r,IXe)=>{"use strict";var ty=Dr(),P7=r$(),mYt=Cc().defaults,PXe=vl(),yYt=Yd(),L7=i$(),_Yt=bb(),xYt=S3(),bYt=e_(),wYt=t_();function TYt(e,t,r,n){function i(x,C){return ty.coerce(e,t,P7,x,C)}mYt(t,n,i),i("mode"),t._hasNumber=t.mode.indexOf("number")!==-1,t._hasDelta=t.mode.indexOf("delta")!==-1,t._hasGauge=t.mode.indexOf("gauge")!==-1;var a=i("value");t._range=[0,typeof a=="number"?1.5*a:1];var o=new Array(2),s;if(t._hasNumber){i("number.valueformat");var l=ty.extendFlat({},n.font);l.size=void 0,ty.coerceFont(i,"number.font",l),t.number.font.size===void 0&&(t.number.font.size=L7.defaultNumberFontSize,o[0]=!0),i("number.prefix"),i("number.suffix"),s=t.number.font.size}var u;if(t._hasDelta){var c=ty.extendFlat({},n.font);c.size=void 0,ty.coerceFont(i,"delta.font",c),t.delta.font.size===void 0&&(t.delta.font.size=(t._hasNumber?.5:1)*(s||L7.defaultNumberFontSize),o[1]=!0),i("delta.reference",t.value),i("delta.relative"),i("delta.valueformat",t.delta.relative?"2%":""),i("delta.increasing.symbol"),i("delta.increasing.color"),i("delta.decreasing.symbol"),i("delta.decreasing.color"),i("delta.position"),i("delta.prefix"),i("delta.suffix"),u=t.delta.font.size}t._scaleNumbers=(!t._hasNumber||o[0])&&(!t._hasDelta||o[1])||!1;var f=ty.extendFlat({},n.font);f.size=.25*(s||u||L7.defaultNumberFontSize),ty.coerceFont(i,"title.font",f),i("title.text");var h,d,v,_;function b(x,C){return ty.coerce(h,d,P7.gauge,x,C)}function p(x,C){return ty.coerce(v,_,P7.gauge.axis,x,C)}if(t._hasGauge){h=e.gauge,h||(h={}),d=PXe.newContainer(t,"gauge"),b("shape");var k=t._isBullet=t.gauge.shape==="bullet";k||i("title.align","center");var E=t._isAngular=t.gauge.shape==="angular";E||i("align","center"),b("bgcolor",n.paper_bgcolor),b("borderwidth"),b("bordercolor"),b("bar.color"),b("bar.line.color"),b("bar.line.width");var S=L7.valueThickness*(t.gauge.shape==="bullet"?.5:1);b("bar.thickness",S),yYt(h,d,{name:"steps",handleItemDefaults:AYt}),b("threshold.value"),b("threshold.thickness"),b("threshold.line.width"),b("threshold.line.color"),v={},h&&(v=h.axis||{}),_=PXe.newContainer(d,"axis"),p("visible"),t._range=p("range",t._range);var L={font:n.font,noAutotickangles:!0,outerTicks:!0,noTicklabelshift:!0,noTicklabelstandoff:!0};_Yt(v,_,p,"linear"),wYt(v,_,p,"linear",L),bYt(v,_,p,"linear",L),xYt(v,_,p,L)}else i("title.align","center"),i("align","center"),t._isAngular=t._isBullet=!1;t._length=null}function AYt(e,t){function r(n,i){return ty.coerce(e,t,P7.gauge.steps,n,i)}r("color"),r("line.color"),r("line.width"),r("range"),r("thickness")}IXe.exports={supplyDefaults:TYt}});var FXe=ye((f2r,DXe)=>{"use strict";function SYt(e,t){var r=[],n=t.value;typeof t._lastValue!="number"&&(t._lastValue=t.value);var i=t._lastValue,a=i;return t._hasDelta&&typeof t.delta.reference=="number"&&(a=t.delta.reference),r[0]={y:n,lastY:i,delta:n-a,relativeDelta:(n-a)/a},r}DXe.exports={calc:SYt}});var UXe=ye((h2r,NXe)=>{"use strict";var hw=Oa(),MYt=(D2(),ob(R2)).interpolate,zXe=(D2(),ob(R2)).interpolateNumber,Ex=Dr(),EYt=Ex.strScale,rC=Ex.strTranslate,kYt=Ex.rad2deg,CYt=$h().MID_SHIFT,fw=So(),lw=i$(),R7=ru(),sv=ho(),LYt=r4(),PYt=lI(),IYt=Rd(),O5=ka(),n$={left:"start",center:"middle",right:"end"},uw={left:0,center:.5,right:1},OXe=/[yzafpnµmkMGTPEZY]/;function iC(e){return e&&e.duration>0}NXe.exports=function(t,r,n,i){var a=t._fullLayout,o;iC(n)&&i&&(o=i()),Ex.makeTraceGroups(a._indicatorlayer,r,"trace").each(function(s){var l=s[0],u=l.trace,c=hw.select(this),f=u._hasGauge,h=u._isAngular,d=u._isBullet,v=u.domain,_={w:a._size.w*(v.x[1]-v.x[0]),h:a._size.h*(v.y[1]-v.y[0]),l:a._size.l+a._size.w*v.x[0],r:a._size.r+a._size.w*(1-v.x[1]),t:a._size.t+a._size.h*(1-v.y[1]),b:a._size.b+a._size.h*v.y[0]},b=_.l+_.w/2,p=_.t+_.h/2,k=Math.min(_.w/2,_.h),E=lw.innerRadius*k,S,L,x,C=u.align||"center";if(L=p,!f)S=_.l+uw[C]*_.w,x=function(H){return qXe(H,_.w,_.h)};else if(h&&(S=b,L=p+k/2,x=function(H){return OYt(H,.9*E)}),d){var M=lw.bulletPadding,g=1-lw.bulletNumberDomainSize+M;S=_.l+(g+(1-g)*uw[C])*_.w,x=function(H){return qXe(H,(lw.bulletNumberDomainSize-M)*_.w,_.h)}}FYt(t,c,s,{numbersX:S,numbersY:L,numbersScaler:x,transitionOpts:n,onComplete:o});var P,T;f&&(P={range:u.gauge.axis.range,color:u.gauge.bgcolor,line:{color:u.gauge.bordercolor,width:0},thickness:1},T={range:u.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:u.gauge.bordercolor,width:u.gauge.borderwidth},thickness:1});var z=c.selectAll("g.angular").data(h?s:[]);z.exit().remove();var O=c.selectAll("g.angularaxis").data(h?s:[]);O.exit().remove(),h&&DYt(t,c,s,{radius:k,innerRadius:E,gauge:z,layer:O,size:_,gaugeBg:P,gaugeOutline:T,transitionOpts:n,onComplete:o});var V=c.selectAll("g.bullet").data(d?s:[]);V.exit().remove();var G=c.selectAll("g.bulletaxis").data(d?s:[]);G.exit().remove(),d&&RYt(t,c,s,{gauge:V,layer:G,size:_,gaugeBg:P,gaugeOutline:T,transitionOpts:n,onComplete:o});var Z=c.selectAll("text.title").data(s);Z.exit().remove(),Z.enter().append("text").classed("title",!0),Z.attr("text-anchor",function(){return d?n$.right:n$[u.title.align]}).text(u.title.text).call(fw.font,u.title.font).call(R7.convertToTspans,t),Z.attr("transform",function(){var H=_.l+_.w*uw[u.title.align],N,j=lw.titlePadding,re=fw.bBox(Z.node());if(f){if(h)if(u.gauge.axis.visible){var oe=fw.bBox(O.node());N=oe.top-j-re.bottom}else N=_.t+_.h/2-k/2-re.bottom-j;d&&(N=L-(re.top+re.bottom)/2,H=_.l-lw.bulletPadding*_.w)}else N=u._numbersTop-j-re.bottom;return rC(H,N)})})};function RYt(e,t,r,n){var i=r[0].trace,a=n.gauge,o=n.layer,s=n.gaugeBg,l=n.gaugeOutline,u=n.size,c=i.domain,f=n.transitionOpts,h=n.onComplete,d,v,_,b,p;a.enter().append("g").classed("bullet",!0),a.attr("transform",rC(u.l,u.t)),o.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),o.selectAll("g.xbulletaxistick,path,text").remove();var k=u.h,E=i.gauge.bar.thickness*k,S=c.x[0],L=c.x[0]+(c.x[1]-c.x[0])*(i._hasNumber||i._hasDelta?1-lw.bulletNumberDomainSize:1);d=tC(e,i.gauge.axis),d._id="xbulletaxis",d.domain=[S,L],d.setScale(),v=sv.calcTicks(d),_=sv.makeTransTickFn(d),b=sv.getTickSigns(d)[2],p=u.t+u.h,d.visible&&(sv.drawTicks(e,d,{vals:d.ticks==="inside"?sv.clipEnds(d,v):v,layer:o,path:sv.makeTickPath(d,p,b),transFn:_}),sv.drawLabels(e,d,{vals:v,layer:o,transFn:_,labelFns:sv.makeLabelFns(d,p)}));function x(O){O.attr("width",function(V){return Math.max(0,d.c2p(V.range[1])-d.c2p(V.range[0]))}).attr("x",function(V){return d.c2p(V.range[0])}).attr("y",function(V){return .5*(1-V.thickness)*k}).attr("height",function(V){return V.thickness*k})}var C=[s].concat(i.gauge.steps),M=a.selectAll("g.bg-bullet").data(C);M.enter().append("g").classed("bg-bullet",!0).append("rect"),M.select("rect").call(x).call(cw),M.exit().remove();var g=a.selectAll("g.value-bullet").data([i.gauge.bar]);g.enter().append("g").classed("value-bullet",!0).append("rect"),g.select("rect").attr("height",E).attr("y",(k-E)/2).call(cw),iC(f)?g.select("rect").transition().duration(f.duration).ease(f.easing).each("end",function(){h&&h()}).each("interrupt",function(){h&&h()}).attr("width",Math.max(0,d.c2p(Math.min(i.gauge.axis.range[1],r[0].y)))):g.select("rect").attr("width",typeof r[0].y=="number"?Math.max(0,d.c2p(Math.min(i.gauge.axis.range[1],r[0].y))):0),g.exit().remove();var P=r.filter(function(){return i.gauge.threshold.value||i.gauge.threshold.value===0}),T=a.selectAll("g.threshold-bullet").data(P);T.enter().append("g").classed("threshold-bullet",!0).append("line"),T.select("line").attr("x1",d.c2p(i.gauge.threshold.value)).attr("x2",d.c2p(i.gauge.threshold.value)).attr("y1",(1-i.gauge.threshold.thickness)/2*k).attr("y2",(1-(1-i.gauge.threshold.thickness)/2)*k).call(O5.stroke,i.gauge.threshold.line.color).style("stroke-width",i.gauge.threshold.line.width),T.exit().remove();var z=a.selectAll("g.gauge-outline").data([l]);z.enter().append("g").classed("gauge-outline",!0).append("rect"),z.select("rect").call(x).call(cw),z.exit().remove()}function DYt(e,t,r,n){var i=r[0].trace,a=n.size,o=n.radius,s=n.innerRadius,l=n.gaugeBg,u=n.gaugeOutline,c=[a.l+a.w/2,a.t+a.h/2+o/2],f=n.gauge,h=n.layer,d=n.transitionOpts,v=n.onComplete,_=Math.PI/2;function b(_e){var Ee=i.gauge.axis.range[0],Ce=i.gauge.axis.range[1],me=(_e-Ee)/(Ce-Ee)*Math.PI-_;return me<-_?-_:me>_?_:me}function p(_e){return hw.svg.arc().innerRadius((s+o)/2-_e/2*(o-s)).outerRadius((s+o)/2+_e/2*(o-s)).startAngle(-_)}function k(_e){_e.attr("d",function(Ee){return p(Ee.thickness).startAngle(b(Ee.range[0])).endAngle(b(Ee.range[1]))()})}var E,S,L,x;f.enter().append("g").classed("angular",!0),f.attr("transform",rC(c[0],c[1])),h.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),h.selectAll("g.xangularaxistick,path,text").remove(),E=tC(e,i.gauge.axis),E.type="linear",E.range=i.gauge.axis.range,E._id="xangularaxis",E.ticklabeloverflow="allow",E.setScale();var C=function(_e){return(E.range[0]-_e.x)/(E.range[1]-E.range[0])*Math.PI+Math.PI},M={},g=sv.makeLabelFns(E,0),P=g.labelStandoff;M.xFn=function(_e){var Ee=C(_e);return Math.cos(Ee)*P},M.yFn=function(_e){var Ee=C(_e),Ce=Math.sin(Ee)>0?.2:1;return-Math.sin(Ee)*(P+_e.fontSize*Ce)+Math.abs(Math.cos(Ee))*(_e.fontSize*CYt)},M.anchorFn=function(_e){var Ee=C(_e),Ce=Math.cos(Ee);return Math.abs(Ce)<.1?"middle":Ce>0?"start":"end"},M.heightFn=function(_e,Ee,Ce){var me=C(_e);return-.5*(1+Math.sin(me))*Ce};var T=function(_e){return rC(c[0]+o*Math.cos(_e),c[1]-o*Math.sin(_e))};L=function(_e){return T(C(_e))};var z=function(_e){var Ee=C(_e);return T(Ee)+"rotate("+-kYt(Ee)+")"};if(S=sv.calcTicks(E),x=sv.getTickSigns(E)[2],E.visible){x=E.ticks==="inside"?-1:1;var O=(E.linewidth||1)/2;sv.drawTicks(e,E,{vals:S,layer:h,path:"M"+x*O+",0h"+x*E.ticklen,transFn:z}),sv.drawLabels(e,E,{vals:S,layer:h,transFn:L,labelFns:M})}var V=[l].concat(i.gauge.steps),G=f.selectAll("g.bg-arc").data(V);G.enter().append("g").classed("bg-arc",!0).append("path"),G.select("path").call(k).call(cw),G.exit().remove();var Z=p(i.gauge.bar.thickness),H=f.selectAll("g.value-arc").data([i.gauge.bar]);H.enter().append("g").classed("value-arc",!0).append("path");var N=H.select("path");iC(d)?(N.transition().duration(d.duration).ease(d.easing).each("end",function(){v&&v()}).each("interrupt",function(){v&&v()}).attrTween("d",zYt(Z,b(r[0].lastY),b(r[0].y))),i._lastValue=r[0].y):N.attr("d",typeof r[0].y=="number"?Z.endAngle(b(r[0].y)):"M0,0Z"),N.call(cw),H.exit().remove(),V=[];var j=i.gauge.threshold.value;(j||j===0)&&V.push({range:[j,j],color:i.gauge.threshold.color,line:{color:i.gauge.threshold.line.color,width:i.gauge.threshold.line.width},thickness:i.gauge.threshold.thickness});var re=f.selectAll("g.threshold-arc").data(V);re.enter().append("g").classed("threshold-arc",!0).append("path"),re.select("path").call(k).call(cw),re.exit().remove();var oe=f.selectAll("g.gauge-outline").data([u]);oe.enter().append("g").classed("gauge-outline",!0).append("path"),oe.select("path").call(k).call(cw),oe.exit().remove()}function FYt(e,t,r,n){var i=r[0].trace,a=n.numbersX,o=n.numbersY,s=i.align||"center",l=n$[s],u=n.transitionOpts,c=n.onComplete,f=Ex.ensureSingle(t,"g","numbers"),h,d,v,_=[];i._hasNumber&&_.push("number"),i._hasDelta&&(_.push("delta"),i.delta.position==="left"&&_.reverse());var b=f.selectAll("text").data(_);b.enter().append("text"),b.attr("text-anchor",function(){return l}).attr("class",function(T){return T}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),b.exit().remove();function p(T,z,O,V){if(T.match("s")&&O>=0!=V>=0&&!z(O).slice(-1).match(OXe)&&!z(V).slice(-1).match(OXe)){var G=T.slice().replace("s","f").replace(/\d+/,function(H){return parseInt(H)-1}),Z=tC(e,{tickformat:G});return function(H){return Math.abs(H)<1?sv.tickText(Z,H).text:z(H)}}else return z}function k(){var T=tC(e,{tickformat:i.number.valueformat},i._range);T.setScale(),sv.prepTicks(T);var z=function(H){return sv.tickText(T,H).text},O=i.number.suffix,V=i.number.prefix,G=f.select("text.number");function Z(){var H=typeof r[0].y=="number"?V+z(r[0].y)+O:"-";G.text(H).call(fw.font,i.number.font).call(R7.convertToTspans,e)}return iC(u)?G.transition().duration(u.duration).ease(u.easing).each("end",function(){Z(),c&&c()}).each("interrupt",function(){Z(),c&&c()}).attrTween("text",function(){var H=hw.select(this),N=zXe(r[0].lastY,r[0].y);i._lastValue=r[0].y;var j=p(i.number.valueformat,z,r[0].lastY,r[0].y);return function(re){H.text(V+j(N(re))+O)}}):Z(),h=BXe(V+z(r[0].y)+O,i.number.font,l,e),G}function E(){var T=tC(e,{tickformat:i.delta.valueformat},i._range);T.setScale(),sv.prepTicks(T);var z=function(re){return sv.tickText(T,re).text},O=i.delta.suffix,V=i.delta.prefix,G=function(re){var oe=i.delta.relative?re.relativeDelta:re.delta;return oe},Z=function(re,oe){return re===0||typeof re!="number"||isNaN(re)?"-":(re>0?i.delta.increasing.symbol:i.delta.decreasing.symbol)+V+oe(re)+O},H=function(re){return re.delta>=0?i.delta.increasing.color:i.delta.decreasing.color};i._deltaLastValue===void 0&&(i._deltaLastValue=G(r[0]));var N=f.select("text.delta");N.call(fw.font,i.delta.font).call(O5.fill,H({delta:i._deltaLastValue}));function j(){N.text(Z(G(r[0]),z)).call(O5.fill,H(r[0])).call(R7.convertToTspans,e)}return iC(u)?N.transition().duration(u.duration).ease(u.easing).tween("text",function(){var re=hw.select(this),oe=G(r[0]),_e=i._deltaLastValue,Ee=p(i.delta.valueformat,z,_e,oe),Ce=zXe(_e,oe);return i._deltaLastValue=oe,function(me){re.text(Z(Ce(me),Ee)),re.call(O5.fill,H({delta:Ce(me)}))}}).each("end",function(){j(),c&&c()}).each("interrupt",function(){j(),c&&c()}):j(),d=BXe(Z(G(r[0]),z),i.delta.font,l,e),N}var S=i.mode+i.align,L;if(i._hasDelta&&(L=E(),S+=i.delta.position+i.delta.font.size+i.delta.font.family+i.delta.valueformat,S+=i.delta.increasing.symbol+i.delta.decreasing.symbol,v=d),i._hasNumber&&(k(),S+=i.number.font.size+i.number.font.family+i.number.valueformat+i.number.suffix+i.number.prefix,v=h),i._hasDelta&&i._hasNumber){var x=[(h.left+h.right)/2,(h.top+h.bottom)/2],C=[(d.left+d.right)/2,(d.top+d.bottom)/2],M,g,P=.75*i.delta.font.size;i.delta.position==="left"&&(M=I7(i,"deltaPos",0,-1*(h.width*uw[i.align]+d.width*(1-uw[i.align])+P),S,Math.min),g=x[1]-C[1],v={width:h.width+d.width+P,height:Math.max(h.height,d.height),left:d.left+M,right:h.right,top:Math.min(h.top,d.top+g),bottom:Math.max(h.bottom,d.bottom+g)}),i.delta.position==="right"&&(M=I7(i,"deltaPos",0,h.width*(1-uw[i.align])+d.width*uw[i.align]+P,S,Math.max),g=x[1]-C[1],v={width:h.width+d.width+P,height:Math.max(h.height,d.height),left:h.left,right:d.right+M,top:Math.min(h.top,d.top+g),bottom:Math.max(h.bottom,d.bottom+g)}),i.delta.position==="bottom"&&(M=null,g=d.height,v={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height,bottom:h.bottom+d.height}),i.delta.position==="top"&&(M=null,g=h.top,v={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height-d.height,bottom:h.bottom}),L.attr({dx:M,dy:g})}(i._hasNumber||i._hasDelta)&&f.attr("transform",function(){var T=n.numbersScaler(v);S+=T[2];var z=I7(i,"numbersScale",1,T[0],S,Math.min),O;i._scaleNumbers||(z=1),i._isAngular?O=o-z*v.bottom:O=o-z*(v.top+v.bottom)/2,i._numbersTop=z*v.top+O;var V=v[s];s==="center"&&(V=(v.left+v.right)/2);var G=a-z*V;return G=I7(i,"numbersTranslate",0,G,S,Math.max),rC(G,O)+EYt(z)})}function cw(e){e.each(function(t){O5.stroke(hw.select(this),t.line.color)}).each(function(t){O5.fill(hw.select(this),t.color)}).style("stroke-width",function(t){return t.line.width})}function zYt(e,t,r){return function(){var n=MYt(t,r);return function(i){return e.endAngle(n(i))()}}}function tC(e,t,r){var n=e._fullLayout,i=Ex.extendFlat({type:"linear",ticks:"outside",range:r,showline:!0},t),a={type:"linear",_id:"x"+t._id},o={letter:"x",font:n.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function s(l,u){return Ex.coerce(i,a,IYt,l,u)}return LYt(i,a,s,o,n),PYt(i,a,s,o),a}function qXe(e,t,r){var n=Math.min(t/e.width,r/e.height);return[n,e,t+"x"+r]}function OYt(e,t){var r=Math.sqrt(e.width/2*(e.width/2)+e.height*e.height),n=t/r;return[n,e,t]}function BXe(e,t,r,n){var i=document.createElementNS("http://www.w3.org/2000/svg","text"),a=hw.select(i);return a.text(e).attr("x",0).attr("y",0).attr("text-anchor",r).attr("data-unformatted",e).call(R7.convertToTspans,n).call(fw.font,t),fw.bBox(a.node())}function I7(e,t,r,n,i,a){var o="_cache"+t;e[o]&&e[o].key===i||(e[o]={key:i,value:r});var s=Ex.aggNums(a,null,[e[o].value,n],2);return e[o].value=s,s}});var GXe=ye((d2r,VXe)=>{"use strict";VXe.exports={moduleType:"trace",name:"indicator",basePlotModule:TXe(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:r$(),supplyDefaults:RXe().supplyDefaults,calc:FXe().calc,plot:UXe(),meta:{}}});var jXe=ye((v2r,HXe)=>{"use strict";HXe.exports=GXe()});var a$=ye((g2r,YXe)=>{"use strict";var WXe=Ub(),D7=Ao().extendFlat,qYt=mc().overrideAll,XXe=ec(),BYt=Cc().attributes,ZXe=df().descriptionOnlyNumbers,p2r=YXe.exports=qYt({domain:BYt({name:"table",trace:!0}),columnwidth:{valType:"number",arrayOk:!0,dflt:null},columnorder:{valType:"data_array"},header:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:ZXe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:D7({},WXe.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:D7({},XXe({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:ZXe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:D7({},WXe.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:D7({},XXe({arrayOk:!0}))}},"calc","from-root")});var JXe=ye((m2r,KXe)=>{"use strict";var o$=Dr(),NYt=a$(),UYt=Cc().defaults;function VYt(e,t){for(var r=e.columnorder||[],n=e.header.values.length,i=r.slice(0,n),a=i.slice().sort(function(l,u){return l-u}),o=i.map(function(l){return a.indexOf(l)}),s=o.length;s{"use strict";var GYt=Jm().wrap;$Xe.exports=function(){return GYt({})}});var s$=ye((_2r,eZe)=>{"use strict";eZe.exports={cellPad:8,columnExtentOffset:10,columnTitleOffset:28,emptyHeaderHeight:16,latexCheck:/^\$.*\$$/,goldenRatio:1.618,lineBreaker:"
",maxDimensionCount:60,overdrag:45,releaseTransitionDuration:120,releaseTransitionEase:"cubic-out",scrollbarCaptureWidth:18,scrollbarHideDelay:1e3,scrollbarHideDuration:1e3,scrollbarOffset:5,scrollbarWidth:8,transitionDuration:100,transitionEase:"cubic-out",uplift:5,wrapSpacer:" ",wrapSplitCharacter:" ",cn:{table:"table",tableControlView:"table-control-view",scrollBackground:"scroll-background",yColumn:"y-column",columnBlock:"column-block",scrollAreaClip:"scroll-area-clip",scrollAreaClipRect:"scroll-area-clip-rect",columnBoundary:"column-boundary",columnBoundaryClippath:"column-boundary-clippath",columnBoundaryRect:"column-boundary-rect",columnCells:"column-cells",columnCell:"column-cell",cellRect:"cell-rect",cellText:"cell-text",cellTextHolder:"cell-text-holder",scrollbarKit:"scrollbar-kit",scrollbar:"scrollbar",scrollbarSlider:"scrollbar-slider",scrollbarGlyph:"scrollbar-glyph",scrollbarCaptureZone:"scrollbar-capture-zone"}}});var uZe=ye((x2r,lZe)=>{"use strict";var tZe=s$(),u$=Ao().extendFlat,HYt=Eo(),jYt=vv().isTypedArray,F7=vv().isArrayOrTypedArray;lZe.exports=function(t,r){var n=l$(r.cells.values),i=function(g){return g.slice(r.header.values.length,g.length)},a=l$(r.header.values);a.length&&!a[0].length&&(a[0]=[""],a=l$(a));var o=a.concat(i(n).map(function(){return sZe((a[0]||[""]).length)})),s=r.domain,l=Math.floor(t._fullLayout._size.w*(s.x[1]-s.x[0])),u=Math.floor(t._fullLayout._size.h*(s.y[1]-s.y[0])),c=r.header.values.length?o[0].map(function(){return r.header.height}):[tZe.emptyHeaderHeight],f=n.length?n[0].map(function(){return r.cells.height}):[],h=c.reduce(rZe,0),d=u-h,v=d+tZe.uplift,_=aZe(f,v),b=aZe(c,h),p=nZe(b,[]),k=nZe(_,p),E={},S=r._fullInput.columnorder;F7(S)&&(S=Array.from(S)),S=S.concat(i(n.map(function(g,P){return P})));var L=o.map(function(g,P){var T=F7(r.columnwidth)?r.columnwidth[Math.min(P,r.columnwidth.length-1)]:r.columnwidth;return HYt(T)?Number(T):1}),x=L.reduce(rZe,0);L=L.map(function(g){return g/x*l});var C=Math.max(c$(r.header.line.width),c$(r.cells.line.width)),M={key:r.uid+t._context.staticPlot,translateX:s.x[0]*t._fullLayout._size.w,translateY:t._fullLayout._size.h*(1-s.y[1]),size:t._fullLayout._size,width:l,maxLineWidth:C,height:u,columnOrder:S,groupHeight:u,rowBlocks:k,headerRowBlocks:p,scrollY:0,cells:u$({},r.cells,{values:n}),headerCells:u$({},r.header,{values:o}),gdColumns:o.map(function(g){return g[0]}),gdColumnsOriginalOrder:o.map(function(g){return g[0]}),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:o.map(function(g,P){var T=E[g];E[g]=(T||0)+1;var z=g+"__"+E[g];return{key:z,label:g,specIndex:P,xIndex:S[P],xScale:iZe,x:void 0,calcdata:void 0,columnWidth:L[P]}})};return M.columns.forEach(function(g){g.calcdata=M,g.x=iZe(g)}),M};function c$(e){if(F7(e)){for(var t=0,r=0;r=t||u===e.length-1)&&(r[i]=o,o.key=l++,o.firstRowIndex=s,o.lastRowIndex=u,o=oZe(),i+=a,s=u+1,a=0);return r}function oZe(){return{firstRowIndex:null,lastRowIndex:null,rows:[]}}});var cZe=ye(f$=>{"use strict";var z7=Ao().extendFlat;f$.splitToPanels=function(e){var t=[0,0],r=z7({},e,{key:"header",type:"header",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!0,values:e.calcdata.headerCells.values[e.specIndex],rowBlocks:e.calcdata.headerRowBlocks,calcdata:z7({},e.calcdata,{cells:e.calcdata.headerCells})}),n=z7({},e,{key:"cells1",type:"cells",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks}),i=z7({},e,{key:"cells2",type:"cells",page:1,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks});return[n,i,r]};f$.splitToCells=function(e){var t=WYt(e);return(e.values||[]).slice(t[0],t[1]).map(function(r,n){var i=typeof r=="string"&&r.match(/[<$&> ]/)?"_keybuster_"+Math.random():"";return{keyWithinBlock:n+i,key:t[0]+n,column:e,calcdata:e.calcdata,page:e.page,rowBlocks:e.rowBlocks,value:r}})};function WYt(e){var t=e.rowBlocks[e.page],r=t?t.rows[0].rowIndex:0,n=t?r+t.rows.length:0;return[r,n]}});var b$=ye((w2r,bZe)=>{"use strict";var Ya=s$(),tf=Oa(),h$=Dr(),XYt=h$.numberFormat,Uu=Jm(),d$=So(),ZYt=ru(),YYt=Dr().raiseToTop,og=Dr().strTranslate,KYt=Dr().cancelTransition,JYt=uZe(),mZe=cZe(),fZe=ka();bZe.exports=function(t,r){var n=!t._context.staticPlot,i=t._fullLayout._paper.selectAll("."+Ya.cn.table).data(r.map(function(k){var E=Uu.unwrap(k),S=E.trace;return JYt(t,S)}),Uu.keyFun);i.exit().remove(),i.enter().append("g").classed(Ya.cn.table,!0).attr("overflow","visible").style("box-sizing","content-box").style("position","absolute").style("left",0).style("overflow","visible").style("shape-rendering","crispEdges").style("pointer-events","all"),i.attr("width",function(k){return k.width+k.size.l+k.size.r}).attr("height",function(k){return k.height+k.size.t+k.size.b}).attr("transform",function(k){return og(k.translateX,k.translateY)});var a=i.selectAll("."+Ya.cn.tableControlView).data(Uu.repeat,Uu.keyFun),o=a.enter().append("g").classed(Ya.cn.tableControlView,!0).style("box-sizing","content-box");if(n){var s="onwheel"in document?"wheel":"mousewheel";o.on("mousemove",function(k){a.filter(function(E){return k===E}).call(nC,t)}).on(s,function(k){if(!k.scrollbarState.wheeling){k.scrollbarState.wheeling=!0;var E=k.scrollY+tf.event.deltaY,S=q7(t,a,null,E)(k);S||(tf.event.stopPropagation(),tf.event.preventDefault()),k.scrollbarState.wheeling=!1}}).call(nC,t,!0)}a.attr("transform",function(k){return og(k.size.l,k.size.t)});var l=a.selectAll("."+Ya.cn.scrollBackground).data(Uu.repeat,Uu.keyFun);l.enter().append("rect").classed(Ya.cn.scrollBackground,!0).attr("fill","none"),l.attr("width",function(k){return k.width}).attr("height",function(k){return k.height}),a.each(function(k){d$.setClipUrl(tf.select(this),hZe(t,k),t)});var u=a.selectAll("."+Ya.cn.yColumn).data(function(k){return k.columns},Uu.keyFun);u.enter().append("g").classed(Ya.cn.yColumn,!0),u.exit().remove(),u.attr("transform",function(k){return og(k.x,0)}),n&&u.call(tf.behavior.drag().origin(function(k){var E=tf.select(this);return pZe(E,k,-Ya.uplift),YYt(this),k.calcdata.columnDragInProgress=!0,nC(a.filter(function(S){return k.calcdata.key===S.key}),t),k}).on("drag",function(k){var E=tf.select(this),S=function(C){return(k===C?tf.event.x:C.x)+C.columnWidth/2};k.x=Math.max(-Ya.overdrag,Math.min(k.calcdata.width+Ya.overdrag-k.columnWidth,tf.event.x));var L=yZe(u).filter(function(C){return C.calcdata.key===k.calcdata.key}),x=L.sort(function(C,M){return S(C)-S(M)});x.forEach(function(C,M){C.xIndex=M,C.x=k===C?C.x:C.xScale(C)}),u.filter(function(C){return k!==C}).transition().ease(Ya.transitionEase).duration(Ya.transitionDuration).attr("transform",function(C){return og(C.x,0)}),E.call(KYt).attr("transform",og(k.x,-Ya.uplift))}).on("dragend",function(k){var E=tf.select(this),S=k.calcdata;k.x=k.xScale(k),k.calcdata.columnDragInProgress=!1,pZe(E,k,0),sKt(t,S,S.columns.map(function(L){return L.xIndex}))})),u.each(function(k){d$.setClipUrl(tf.select(this),dZe(t,k),t)});var c=u.selectAll("."+Ya.cn.columnBlock).data(mZe.splitToPanels,Uu.keyFun);c.enter().append("g").classed(Ya.cn.columnBlock,!0).attr("id",function(k){return k.key}),c.style("cursor",function(k){return k.dragHandle?"ew-resize":k.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"});var f=c.filter(lKt),h=c.filter(y$);n&&h.call(tf.behavior.drag().origin(function(k){return tf.event.stopPropagation(),k}).on("drag",q7(t,a,-1)).on("dragend",function(){})),v$(t,a,f,c),v$(t,a,h,c);var d=a.selectAll("."+Ya.cn.scrollAreaClip).data(Uu.repeat,Uu.keyFun);d.enter().append("clipPath").classed(Ya.cn.scrollAreaClip,!0).attr("id",function(k){return hZe(t,k)});var v=d.selectAll("."+Ya.cn.scrollAreaClipRect).data(Uu.repeat,Uu.keyFun);v.enter().append("rect").classed(Ya.cn.scrollAreaClipRect,!0).attr("x",-Ya.overdrag).attr("y",-Ya.uplift).attr("fill","none"),v.attr("width",function(k){return k.width+2*Ya.overdrag}).attr("height",function(k){return k.height+Ya.uplift});var _=u.selectAll("."+Ya.cn.columnBoundary).data(Uu.repeat,Uu.keyFun);_.enter().append("g").classed(Ya.cn.columnBoundary,!0);var b=u.selectAll("."+Ya.cn.columnBoundaryClippath).data(Uu.repeat,Uu.keyFun);b.enter().append("clipPath").classed(Ya.cn.columnBoundaryClippath,!0),b.attr("id",function(k){return dZe(t,k)});var p=b.selectAll("."+Ya.cn.columnBoundaryRect).data(Uu.repeat,Uu.keyFun);p.enter().append("rect").classed(Ya.cn.columnBoundaryRect,!0).attr("fill","none"),p.attr("width",function(k){return k.columnWidth+2*O7(k)}).attr("height",function(k){return k.calcdata.height+2*O7(k)+Ya.uplift}).attr("x",function(k){return-O7(k)}).attr("y",function(k){return-O7(k)}),_$(null,h,a)};function O7(e){return Math.ceil(e.calcdata.maxLineWidth/2)}function hZe(e,t){return"clip"+e._fullLayout._uid+"_scrollAreaBottomClip_"+t.key}function dZe(e,t){return"clip"+e._fullLayout._uid+"_columnBoundaryClippath_"+t.calcdata.key+"_"+t.specIndex}function yZe(e){return[].concat.apply([],e.map(function(t){return t})).map(function(t){return t.__data__})}function nC(e,t,r){function n(u){var c=u.rowBlocks;return g$(c,c.length-1)+(c.length?B7(c[c.length-1],1/0):1)}var i=e.selectAll("."+Ya.cn.scrollbarKit).data(Uu.repeat,Uu.keyFun);i.enter().append("g").classed(Ya.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),i.each(function(u){var c=u.scrollbarState;c.totalHeight=n(u),c.scrollableAreaHeight=u.groupHeight-p$(u),c.currentlyVisibleHeight=Math.min(c.totalHeight,c.scrollableAreaHeight),c.ratio=c.currentlyVisibleHeight/c.totalHeight,c.barLength=Math.max(c.ratio*c.currentlyVisibleHeight,Ya.goldenRatio*Ya.scrollbarWidth),c.barWiggleRoom=c.currentlyVisibleHeight-c.barLength,c.wiggleRoom=Math.max(0,c.totalHeight-c.scrollableAreaHeight),c.topY=c.barWiggleRoom===0?0:u.scrollY/c.wiggleRoom*c.barWiggleRoom,c.bottomY=c.topY+c.barLength,c.dragMultiplier=c.wiggleRoom/c.barWiggleRoom}).attr("transform",function(u){var c=u.width+Ya.scrollbarWidth/2+Ya.scrollbarOffset;return og(c,p$(u))});var a=i.selectAll("."+Ya.cn.scrollbar).data(Uu.repeat,Uu.keyFun);a.enter().append("g").classed(Ya.cn.scrollbar,!0);var o=a.selectAll("."+Ya.cn.scrollbarSlider).data(Uu.repeat,Uu.keyFun);o.enter().append("g").classed(Ya.cn.scrollbarSlider,!0),o.attr("transform",function(u){return og(0,u.scrollbarState.topY||0)});var s=o.selectAll("."+Ya.cn.scrollbarGlyph).data(Uu.repeat,Uu.keyFun);s.enter().append("line").classed(Ya.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",Ya.scrollbarWidth).attr("stroke-linecap","round").attr("y1",Ya.scrollbarWidth/2),s.attr("y2",function(u){return u.scrollbarState.barLength-Ya.scrollbarWidth/2}).attr("stroke-opacity",function(u){return u.columnDragInProgress||!u.scrollbarState.barWiggleRoom||r?0:.4}),s.transition().delay(0).duration(0),s.transition().delay(Ya.scrollbarHideDelay).duration(Ya.scrollbarHideDuration).attr("stroke-opacity",0);var l=a.selectAll("."+Ya.cn.scrollbarCaptureZone).data(Uu.repeat,Uu.keyFun);l.enter().append("line").classed(Ya.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",Ya.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",function(u){var c=tf.event.y,f=this.getBoundingClientRect(),h=u.scrollbarState,d=c-f.top,v=tf.scale.linear().domain([0,h.scrollableAreaHeight]).range([0,h.totalHeight]).clamp(!0);h.topY<=d&&d<=h.bottomY||q7(t,e,null,v(d-h.barLength/2))(u)}).call(tf.behavior.drag().origin(function(u){return tf.event.stopPropagation(),u.scrollbarState.scrollbarScrollInProgress=!0,u}).on("drag",q7(t,e)).on("dragend",function(){})),l.attr("y2",function(u){return u.scrollbarState.scrollableAreaHeight}),t._context.staticPlot&&(s.remove(),l.remove())}function v$(e,t,r,n){var i=$Yt(r),a=QYt(i);iKt(a);var o=eKt(a);aKt(o);var s=rKt(a),l=tKt(s);nKt(l),_Ze(l,t,n,e),x$(a)}function $Yt(e){var t=e.selectAll("."+Ya.cn.columnCells).data(Uu.repeat,Uu.keyFun);return t.enter().append("g").classed(Ya.cn.columnCells,!0),t.exit().remove(),t}function QYt(e){var t=e.selectAll("."+Ya.cn.columnCell).data(mZe.splitToCells,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(Ya.cn.columnCell,!0),t.exit().remove(),t}function eKt(e){var t=e.selectAll("."+Ya.cn.cellRect).data(Uu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("rect").classed(Ya.cn.cellRect,!0),t}function tKt(e){var t=e.selectAll("."+Ya.cn.cellText).data(Uu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("text").classed(Ya.cn.cellText,!0).style("cursor",function(){return"auto"}).on("mousedown",function(){tf.event.stopPropagation()}),t}function rKt(e){var t=e.selectAll("."+Ya.cn.cellTextHolder).data(Uu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(Ya.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),t}function iKt(e){e.each(function(t,r){var n=t.calcdata.cells.font,i=t.column.specIndex,a={size:Yv(n.size,i,r),color:Yv(n.color,i,r),family:Yv(n.family,i,r),weight:Yv(n.weight,i,r),style:Yv(n.style,i,r),variant:Yv(n.variant,i,r),textcase:Yv(n.textcase,i,r),lineposition:Yv(n.lineposition,i,r),shadow:Yv(n.shadow,i,r)};t.rowNumber=t.key,t.align=Yv(t.calcdata.cells.align,i,r),t.cellBorderWidth=Yv(t.calcdata.cells.line.width,i,r),t.font=a})}function nKt(e){e.each(function(t){d$.font(tf.select(this),t.font)})}function aKt(e){e.attr("width",function(t){return t.column.columnWidth}).attr("stroke-width",function(t){return t.cellBorderWidth}).each(function(t){var r=tf.select(this);fZe.stroke(r,Yv(t.calcdata.cells.line.color,t.column.specIndex,t.rowNumber)),fZe.fill(r,Yv(t.calcdata.cells.fill.color,t.column.specIndex,t.rowNumber))})}function _Ze(e,t,r,n){e.text(function(i){var a=i.column.specIndex,o=i.rowNumber,s=i.value,l=typeof s=="string",u=l&&s.match(/
/i),c=!l||u;i.mayHaveMarkup=l&&s.match(/[<&>]/);var f=oKt(s);i.latex=f;var h=f?"":Yv(i.calcdata.cells.prefix,a,o)||"",d=f?"":Yv(i.calcdata.cells.suffix,a,o)||"",v=f?null:Yv(i.calcdata.cells.format,a,o)||null,_=h+(v?XYt(v)(i.value):i.value)+d,b;i.wrappingNeeded=!i.wrapped&&!c&&!f&&(b=vZe(_)),i.cellHeightMayIncrease=u||f||i.mayHaveMarkup||(b===void 0?vZe(_):b),i.needsConvertToTspans=i.mayHaveMarkup||i.wrappingNeeded||i.latex;var p;if(i.wrappingNeeded){var k=Ya.wrapSplitCharacter===" "?_.replace(/i&&n.push(a),i+=l}return n}function _$(e,t,r){var n=yZe(t)[0];if(n!==void 0){var i=n.rowBlocks,a=n.calcdata,o=g$(i,i.length),s=n.calcdata.groupHeight-p$(n),l=a.scrollY=Math.max(0,Math.min(o-s,a.scrollY)),u=uKt(i,l,s);u.length===1&&(u[0]===i.length-1?u.unshift(u[0]-1):u.push(u[0]+1)),u[0]%2&&u.reverse(),t.each(function(c,f){c.page=u[f],c.scrollY=l}),t.attr("transform",function(c){var f=g$(c.rowBlocks,c.page)-c.scrollY;return og(0,f)}),e&&(gZe(e,r,t,u,n.prevPages,n,0),gZe(e,r,t,u,n.prevPages,n,1),nC(r,e))}}function q7(e,t,r,n){return function(a){var o=a.calcdata?a.calcdata:a,s=t.filter(function(f){return o.key===f.key}),l=r||o.scrollbarState.dragMultiplier,u=o.scrollY;o.scrollY=n===void 0?o.scrollY+l*tf.event.dy:n;var c=s.selectAll("."+Ya.cn.yColumn).selectAll("."+Ya.cn.columnBlock).filter(y$);return _$(e,c,s),o.scrollY===u}}function gZe(e,t,r,n,i,a,o){var s=n[o]!==i[o];s&&(clearTimeout(a.currentRepaint[o]),a.currentRepaint[o]=setTimeout(function(){var l=r.filter(function(u,c){return c===o&&n[c]!==i[c]});v$(e,t,l,r),i[o]=n[o]}))}function cKt(e,t,r,n){return function(){var a=tf.select(t.parentNode);a.each(function(o){var s=o.fragments;a.selectAll("tspan.line").each(function(_,b){s[b].width=this.getComputedTextLength()});var l=s[s.length-1].width,u=s.slice(0,-1),c=[],f,h,d=0,v=o.column.columnWidth-2*Ya.cellPad;for(o.value="";u.length;)f=u.shift(),h=f.width+l,d+h>v&&(o.value+=c.join(Ya.wrapSpacer)+Ya.lineBreaker,c=[],d=0),c.push(f.text),d+=h;d&&(o.value+=c.join(Ya.wrapSpacer)),o.wrapped=!0}),a.selectAll("tspan.line").remove(),_Ze(a.select("."+Ya.cn.cellText),r,e,n),tf.select(t.parentNode.parentNode).call(x$)}}function fKt(e,t,r,n,i){return function(){if(!i.settledY){var o=tf.select(t.parentNode),s=m$(i),l=i.key-s.firstRowIndex,u=s.rows[l].rowHeight,c=i.cellHeightMayIncrease?t.parentNode.getBoundingClientRect().height+2*Ya.cellPad:u,f=Math.max(c,u),h=f-s.rows[l].rowHeight;h&&(s.rows[l].rowHeight=f,e.selectAll("."+Ya.cn.columnCell).call(x$),_$(null,e.filter(y$),0),nC(r,n,!0)),o.attr("transform",function(){var d=this,v=d.parentNode,_=v.getBoundingClientRect(),b=tf.select(d.parentNode).select("."+Ya.cn.cellRect).node().getBoundingClientRect(),p=d.transform.baseVal.consolidate(),k=b.top-_.top+(p?p.matrix.f:Ya.cellPad);return og(xZe(i,tf.select(d.parentNode).select("."+Ya.cn.cellTextHolder).node().getBoundingClientRect().width),k)}),i.settledY=!0}}}function xZe(e,t){switch(e.align){case"left":return Ya.cellPad;case"right":return e.column.columnWidth-(t||0)-Ya.cellPad;case"center":return(e.column.columnWidth-(t||0))/2;default:return Ya.cellPad}}function x$(e){e.attr("transform",function(t){var r=t.rowBlocks[0].auxiliaryBlocks.reduce(function(o,s){return o+B7(s,1/0)},0),n=m$(t),i=B7(n,t.key),a=i+r;return og(0,a)}).selectAll("."+Ya.cn.cellRect).attr("height",function(t){return dKt(m$(t),t.key).rowHeight})}function g$(e,t){for(var r=0,n=t-1;n>=0;n--)r+=hKt(e[n]);return r}function B7(e,t){for(var r=0,n=0;n{"use strict";var vKt=Id().getModuleCalcData,pKt=b$(),N7="table";U7.name=N7;U7.plot=function(e){var t=vKt(e.calcdata,N7)[0];t.length&&pKt(e,t)};U7.clean=function(e,t,r,n){var i=n._has&&n._has(N7),a=t._has&&t._has(N7);i&&!a&&n._paperdiv.selectAll(".table").remove()}});var AZe=ye((A2r,TZe)=>{"use strict";TZe.exports={attributes:a$(),supplyDefaults:JXe(),calc:QXe(),plot:b$(),moduleType:"trace",name:"table",basePlotModule:wZe(),categories:["noOpacity"],meta:{}}});var MZe=ye((S2r,SZe)=>{"use strict";SZe.exports=AZe()});var PZe=ye((M2r,LZe)=>{"use strict";var EZe=ec(),kZe=Lh(),w$=Rd(),gKt=df().descriptionWithDates,mKt=mc().overrideAll,CZe=Pd().dash,T$=Ao().extendFlat;LZe.exports={color:{valType:"color",editType:"calc"},smoothing:{valType:"number",dflt:1,min:0,max:1.3,editType:"calc"},title:{text:{valType:"string",dflt:"",editType:"calc"},font:EZe({editType:"calc"}),offset:{valType:"number",dflt:10,editType:"calc"},editType:"calc"},type:{valType:"enumerated",values:["-","linear","date","category"],dflt:"-",editType:"calc"},autotypenumbers:w$.autotypenumbers,autorange:{valType:"enumerated",values:[!0,!1,"reversed"],dflt:!0,editType:"calc"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"calc"},range:{valType:"info_array",editType:"calc",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}]},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},cheatertype:{valType:"enumerated",values:["index","value"],dflt:"value",editType:"calc"},tickmode:{valType:"enumerated",values:["linear","array"],dflt:"array",editType:"calc"},nticks:{valType:"integer",min:0,dflt:0,editType:"calc"},tickvals:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},showticklabels:{valType:"enumerated",values:["start","end","both","none"],dflt:"start",editType:"calc"},labelalias:T$({},w$.labelalias,{editType:"calc"}),tickfont:EZe({editType:"calc"}),tickangle:{valType:"angle",dflt:"auto",editType:"calc"},tickprefix:{valType:"string",dflt:"",editType:"calc"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},ticksuffix:{valType:"string",dflt:"",editType:"calc"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"calc"},minexponent:{valType:"number",dflt:3,min:0,editType:"calc"},separatethousands:{valType:"boolean",dflt:!1,editType:"calc"},tickformat:{valType:"string",dflt:"",editType:"calc",description:gKt("tick label")},tickformatstops:mKt(w$.tickformatstops,"calc","from-root"),categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},labelpadding:{valType:"integer",dflt:10,editType:"calc"},labelprefix:{valType:"string",editType:"calc"},labelsuffix:{valType:"string",dflt:"",editType:"calc"},showline:{valType:"boolean",dflt:!1,editType:"calc"},linecolor:{valType:"color",dflt:kZe.defaultLine,editType:"calc"},linewidth:{valType:"number",min:0,dflt:1,editType:"calc"},gridcolor:{valType:"color",editType:"calc"},gridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},griddash:T$({},CZe,{editType:"calc"}),showgrid:{valType:"boolean",dflt:!0,editType:"calc"},minorgridcount:{valType:"integer",min:0,dflt:0,editType:"calc"},minorgridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},minorgriddash:T$({},CZe,{editType:"calc"}),minorgridcolor:{valType:"color",dflt:kZe.lightLine,editType:"calc"},startline:{valType:"boolean",editType:"calc"},startlinecolor:{valType:"color",editType:"calc"},startlinewidth:{valType:"number",dflt:1,editType:"calc"},endline:{valType:"boolean",editType:"calc"},endlinewidth:{valType:"number",dflt:1,editType:"calc"},endlinecolor:{valType:"color",editType:"calc"},tick0:{valType:"number",min:0,dflt:0,editType:"calc"},dtick:{valType:"number",min:0,dflt:1,editType:"calc"},arraytick0:{valType:"integer",min:0,dflt:0,editType:"calc"},arraydtick:{valType:"integer",min:1,dflt:1,editType:"calc"},editType:"calc"}});var G7=ye((E2r,DZe)=>{"use strict";var yKt=ec(),IZe=PZe(),RZe=Lh(),V7=yKt({editType:"calc"}),_Kt=pf().zorder;V7.family.dflt='"Open Sans", verdana, arial, sans-serif';V7.size.dflt=12;V7.color.dflt=RZe.defaultLine;DZe.exports={carpet:{valType:"string",editType:"calc"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},a:{valType:"data_array",editType:"calc"},a0:{valType:"number",dflt:0,editType:"calc"},da:{valType:"number",dflt:1,editType:"calc"},b:{valType:"data_array",editType:"calc"},b0:{valType:"number",dflt:0,editType:"calc"},db:{valType:"number",dflt:1,editType:"calc"},cheaterslope:{valType:"number",dflt:1,editType:"calc"},aaxis:IZe,baxis:IZe,font:V7,color:{valType:"color",dflt:RZe.defaultLine,editType:"plot"},zorder:_Kt}});var OZe=ye((k2r,zZe)=>{"use strict";var FZe=Dr().isArray1D;zZe.exports=function(t,r,n){var i=n("x"),a=i&&i.length,o=n("y"),s=o&&o.length;if(!a&&!s)return!1;if(r._cheater=!i,(!a||FZe(i))&&(!s||FZe(o))){var l=a?i.length:1/0;s&&(l=Math.min(l,o.length)),r.a&&r.a.length&&(l=Math.min(l,r.a.length)),r.b&&r.b.length&&(l=Math.min(l,r.b.length)),r._length=l}else r._length=null;return!0}});var NZe=ye((C2r,BZe)=>{"use strict";var xKt=G7(),qZe=ka().addOpacity,bKt=qa(),aC=Dr(),wKt=bb(),TKt=e_(),AKt=t_(),SKt=aI(),MKt=ym(),EKt=I3();BZe.exports=function(t,r,n){var i=n.letter,a=n.font||{},o=xKt[i+"axis"];function s(g,P){return aC.coerce(t,r,o,g,P)}function l(g,P){return aC.coerce2(t,r,o,g,P)}n.name&&(r._name=n.name,r._id=n.name),s("autotypenumbers",n.autotypenumbersDflt);var u=s("type");if(u==="-"&&(n.data&&kKt(r,n.data),r.type==="-"?r.type="linear":u=t.type=r.type),s("smoothing"),s("cheatertype"),s("showticklabels"),s("labelprefix",i+" = "),s("labelsuffix"),s("showtickprefix"),s("showticksuffix"),s("separatethousands"),s("tickformat"),s("exponentformat"),s("minexponent"),s("showexponent"),s("categoryorder"),s("tickmode"),s("tickvals"),s("ticktext"),s("tick0"),s("dtick"),r.tickmode==="array"&&(s("arraytick0"),s("arraydtick")),s("labelpadding"),r._hovertitle=i,u==="date"){var c=bKt.getComponentMethod("calendars","handleDefaults");c(t,r,"calendar",n.calendar)}MKt(r,n.fullLayout),r.c2p=aC.identity;var f=s("color",n.dfltColor),h=f===t.color?f:a.color,d=s("title.text");d&&(aC.coerceFont(s,"title.font",a,{overrideDflt:{size:aC.bigFont(a.size),color:h}}),s("title.offset")),s("tickangle");var v=s("autorange",!r.isValidRange(t.range));v&&s("rangemode"),s("range"),r.cleanRange(),s("fixedrange"),wKt(t,r,s,u),AKt(t,r,s,u,n),TKt(t,r,s,u,n),SKt(t,r,s,{data:n.data,dataAttr:i});var _=l("gridcolor",qZe(f,.3)),b=l("gridwidth"),p=l("griddash"),k=s("showgrid");k||(delete r.gridcolor,delete r.gridwidth,delete r.griddash);var E=l("startlinecolor",f),S=l("startlinewidth",b),L=s("startline",r.showgrid||!!E||!!S);L||(delete r.startlinecolor,delete r.startlinewidth);var x=l("endlinecolor",f),C=l("endlinewidth",b),M=s("endline",r.showgrid||!!x||!!C);return M||(delete r.endlinecolor,delete r.endlinewidth),k?(s("minorgridcount"),s("minorgridwidth",b),s("minorgriddash",p),s("minorgridcolor",qZe(_,.06)),r.minorgridcount||(delete r.minorgridwidth,delete r.minorgriddash,delete r.minorgridcolor)):(delete r.gridcolor,delete r.gridwidth,delete r.griddash),r.showticklabels==="none"&&(delete r.tickfont,delete r.tickangle,delete r.showexponent,delete r.exponentformat,delete r.minexponent,delete r.tickformat,delete r.showticksuffix,delete r.showtickprefix),r.showticksuffix||delete r.ticksuffix,r.showtickprefix||delete r.tickprefix,s("tickmode"),r};function kKt(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i=n+"calendar",a=e[i];e.type=EKt(t,a,{autotypenumbers:e.autotypenumbers})}}});var VZe=ye((L2r,UZe)=>{"use strict";var CKt=NZe(),LKt=vl();UZe.exports=function(t,r,n,i,a){var o=i("a");o||(i("da"),i("a0"));var s=i("b");s||(i("db"),i("b0")),PKt(t,r,n,a)};function PKt(e,t,r,n){var i=["aaxis","baxis"];i.forEach(function(a){var o=a.charAt(0),s=e[a]||{},l=LKt.newContainer(t,a),u={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,tickfont:"x",id:o+"axis",letter:o,font:t.font,name:a,data:e[o],calendar:t.calendar,dfltColor:n,bgColor:r.paper_bgcolor,autotypenumbersDflt:r.autotypenumbers,fullLayout:r};CKt(s,l,u),l._categories=l._categories||[],!e[a]&&s.type!=="-"&&(e[a]={type:s.type})})}});var jZe=ye((P2r,HZe)=>{"use strict";var GZe=Dr(),IKt=OZe(),RKt=VZe(),DKt=G7(),FKt=Lh();HZe.exports=function(t,r,n,i){function a(l,u){return GZe.coerce(t,r,DKt,l,u)}r._clipPathId="clip"+r.uid+"carpet";var o=a("color",FKt.defaultLine);if(GZe.coerceFont(a,"font",i.font),a("carpet"),RKt(t,r,i,a,o),!r.a||!r.b){r.visible=!1;return}r.a.length<3&&(r.aaxis.smoothing=0),r.b.length<3&&(r.baxis.smoothing=0);var s=IKt(t,r,a);s||(r.visible=!1),r._cheater&&a("cheaterslope"),a("zorder")}});var A$=ye((I2r,WZe)=>{"use strict";var zKt=Dr().isArrayOrTypedArray;WZe.exports=function(t,r,n){var i;for(zKt(t)?t.length>r.length&&(t=t.slice(0,r.length)):t=[],i=0;i{"use strict";XZe.exports=function(t,r,n){if(t.length===0)return"";var i,a=[],o=n?3:1;for(i=0;i{"use strict";ZZe.exports=function(t,r,n,i,a,o){var s=a[0]*t.dpdx(r),l=a[1]*t.dpdy(n),u=1,c=1;if(o){var f=Math.sqrt(a[0]*a[0]+a[1]*a[1]),h=Math.sqrt(o[0]*o[0]+o[1]*o[1]),d=(a[0]*o[0]+a[1]*o[1])/f/h;c=Math.max(0,d)}var v=Math.atan2(l,s)*180/Math.PI;return v<-90?(v+=180,u=-u):v>90&&(v-=180,u=-u),{angle:v,flip:u,p:t.c2p(i,r,n),offsetMultplier:c}}});var iYe=ye((F2r,rYe)=>{"use strict";var X7=Oa(),H7=So(),j7=A$(),$Ze=S$(),oC=YZe(),M$=ru(),Up=Dr(),QZe=Up.strRotate,W7=Up.strTranslate,eYe=$h();rYe.exports=function(t,r,n,i){var a=t._context.staticPlot,o=r.xaxis,s=r.yaxis,l=t._fullLayout,u=l._clips;Up.makeTraceGroups(i,n,"trace").each(function(c){var f=X7.select(this),h=c[0],d=h.trace,v=d.aaxis,_=d.baxis,b=Up.ensureSingle(f,"g","minorlayer"),p=Up.ensureSingle(f,"g","majorlayer"),k=Up.ensureSingle(f,"g","boundarylayer"),E=Up.ensureSingle(f,"g","labellayer");f.style("opacity",d.opacity),q5(o,s,p,v,"a",v._gridlines,!0,a),q5(o,s,p,_,"b",_._gridlines,!0,a),q5(o,s,b,v,"a",v._minorgridlines,!0,a),q5(o,s,b,_,"b",_._minorgridlines,!0,a),q5(o,s,k,v,"a-boundary",v._boundarylines,a),q5(o,s,k,_,"b-boundary",_._boundarylines,a);var S=KZe(t,o,s,d,h,E,v._labels,"a-label"),L=KZe(t,o,s,d,h,E,_._labels,"b-label");qKt(t,E,d,h,o,s,S,L),OKt(d,h,u,o,s)})};function OKt(e,t,r,n,i){var a,o,s,l,u=r.select("#"+e._clipPathId);u.size()||(u=r.append("clipPath").classed("carpetclip",!0));var c=Up.ensureSingle(u,"path","carpetboundary"),f=t.clipsegments,h=[];for(l=0;l0?"start":"end","data-notex":1}).call(H7.font,f.font).text(f.text).call(M$.convertToTspans,e),p=H7.bBox(this);b.attr("transform",W7(d.p[0],d.p[1])+QZe(d.angle)+W7(f.axis.labelpadding*_,p.height*.3)),u=Math.max(u,p.width+f.axis.labelpadding)}),l.exit().remove(),c.maxExtent=u,c}function qKt(e,t,r,n,i,a,o,s){var l,u,c,f,h=Up.aggNums(Math.min,null,r.a),d=Up.aggNums(Math.max,null,r.a),v=Up.aggNums(Math.min,null,r.b),_=Up.aggNums(Math.max,null,r.b);l=.5*(h+d),u=v,c=r.ab2xy(l,u,!0),f=r.dxyda_rough(l,u),o.angle===void 0&&Up.extendFlat(o,oC(r,i,a,c,r.dxydb_rough(l,u))),JZe(e,t,r,n,c,f,r.aaxis,i,a,o,"a-title"),l=h,u=.5*(v+_),c=r.ab2xy(l,u,!0),f=r.dxydb_rough(l,u),s.angle===void 0&&Up.extendFlat(s,oC(r,i,a,c,r.dxyda_rough(l,u))),JZe(e,t,r,n,c,f,r.baxis,i,a,s,"b-title")}var tYe=eYe.LINE_SPACING,BKt=(1-eYe.MID_SHIFT)/tYe+1;function JZe(e,t,r,n,i,a,o,s,l,u,c){var f=[];o.title.text&&f.push(o.title.text);var h=t.selectAll("text."+c).data(f),d=u.maxExtent;h.enter().append("text").classed(c,!0),h.each(function(){var v=oC(r,s,l,i,a);["start","both"].indexOf(o.showticklabels)===-1&&(d=0);var _=o.title.font.size;d+=_+o.title.offset;var b=u.angle+(u.flip<0?180:0),p=(b-v.angle+450)%360,k=p>90&&p<270,E=X7.select(this);E.text(o.title.text).call(M$.convertToTspans,e),k&&(d=(-M$.lineCount(E)+BKt)*tYe*_-d),E.attr("transform",W7(v.p[0],v.p[1])+QZe(v.angle)+W7(0,d)).attr("text-anchor","middle").call(H7.font,o.title.font)}),h.exit().remove()}});var aYe=ye((z2r,nYe)=>{"use strict";var Z7=Dr().isArrayOrTypedArray;nYe.exports=function(e,t,r){var n,i,a,o,s,l,u=[],c=Z7(e)?e.length:e,f=Z7(t)?t.length:t,h=Z7(e)?e:null,d=Z7(t)?t:null;h&&(a=(h.length-1)/(h[h.length-1]-h[0])/(c-1)),d&&(o=(d.length-1)/(d[d.length-1]-d[0])/(f-1));var v,_=1/0,b=-1/0;for(i=0;i{"use strict";var oYe=Dr().isArrayOrTypedArray;lYe.exports=function(e){return sYe(e,0)};function sYe(e,t){if(!oYe(e)||t>=10)return null;for(var r=1/0,n=-1/0,i=e.length,a=0;a{"use strict";var NKt=ho(),kx=Ao().extendFlat;cYe.exports=function(t,r,n){var i,a,o,s,l,u,c,f,h,d,v,_,b,p,k=t["_"+r],E=t[r+"axis"],S=E._gridlines=[],L=E._minorgridlines=[],x=E._boundarylines=[],C=t["_"+n],M=t[n+"axis"];E.tickmode==="array"&&(E.tickvals=k.slice());var g=t._xctrl,P=t._yctrl,T=g[0].length,z=g.length,O=t._a.length,V=t._b.length;NKt.prepTicks(E),E.tickmode==="array"&&delete E.tickvals;var G=E.smoothing?3:1;function Z(N){var j,re,oe,_e,Ee,Ce,me,ie,Se,Le,Ae,Fe,Pe=[],ge=[],Re={};if(r==="b")for(re=t.b2j(N),oe=Math.floor(Math.max(0,Math.min(V-2,re))),_e=re-oe,Re.length=V,Re.crossLength=O,Re.xy=function(ce){return t.evalxy([],ce,re)},Re.dxy=function(ce,Ze){return t.dxydi([],ce,oe,Ze,_e)},j=0;j0&&(Se=t.dxydi([],j-1,oe,0,_e),Pe.push(Ee[0]+Se[0]/3),ge.push(Ee[1]+Se[1]/3),Le=t.dxydi([],j-1,oe,1,_e),Pe.push(ie[0]-Le[0]/3),ge.push(ie[1]-Le[1]/3)),Pe.push(ie[0]),ge.push(ie[1]),Ee=ie;else for(j=t.a2i(N),Ce=Math.floor(Math.max(0,Math.min(O-2,j))),me=j-Ce,Re.length=O,Re.crossLength=V,Re.xy=function(ce){return t.evalxy([],j,ce)},Re.dxy=function(ce,Ze){return t.dxydj([],Ce,ce,me,Ze)},re=0;re0&&(Ae=t.dxydj([],Ce,re-1,me,0),Pe.push(Ee[0]+Ae[0]/3),ge.push(Ee[1]+Ae[1]/3),Fe=t.dxydj([],Ce,re-1,me,1),Pe.push(ie[0]-Fe[0]/3),ge.push(ie[1]-Fe[1]/3)),Pe.push(ie[0]),ge.push(ie[1]),Ee=ie;return Re.axisLetter=r,Re.axis=E,Re.crossAxis=M,Re.value=N,Re.constvar=n,Re.index=f,Re.x=Pe,Re.y=ge,Re.smoothing=M.smoothing,Re}function H(N){var j,re,oe,_e,Ee,Ce=[],me=[],ie={};if(ie.length=k.length,ie.crossLength=C.length,r==="b")for(oe=Math.max(0,Math.min(V-2,N)),Ee=Math.min(1,Math.max(0,N-oe)),ie.xy=function(Se){return t.evalxy([],Se,N)},ie.dxy=function(Se,Le){return t.dxydi([],Se,oe,Le,Ee)},j=0;jk.length-1)&&S.push(kx(H(a),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(f=u;fk.length-1)&&!(v<0||v>k.length-1))for(_=k[o],b=k[v],i=0;ik[k.length-1])&&L.push(kx(Z(d),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash})));E.startline&&x.push(kx(H(0),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&x.push(kx(H(k.length-1),{color:E.endlinecolor,width:E.endlinewidth}))}else{for(s=5e-15,l=[Math.floor((k[k.length-1]-E.tick0)/E.dtick*(1+s)),Math.ceil((k[0]-E.tick0)/E.dtick/(1+s))].sort(function(N,j){return N-j}),u=l[0],c=l[1],f=u;f<=c;f++)h=E.tick0+E.dtick*f,S.push(kx(Z(h),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(f=u-1;fk[k.length-1])&&L.push(kx(Z(d),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash}));E.startline&&x.push(kx(Z(k[0]),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&x.push(kx(Z(k[k.length-1]),{color:E.endlinecolor,width:E.endlinewidth}))}}});var pYe=ye((B2r,vYe)=>{"use strict";var hYe=ho(),dYe=Ao().extendFlat;vYe.exports=function(t,r){var n,i,a,o,s,l=r._labels=[],u=r._gridlines;for(n=0;n{"use strict";gYe.exports=function(t,r,n,i){var a,o,s,l=[],u=!!n.smoothing,c=!!i.smoothing,f=t[0].length-1,h=t.length-1;for(a=0,o=[],s=[];a<=f;a++)o[a]=t[0][a],s[a]=r[0][a];for(l.push({x:o,y:s,bicubic:u}),a=0,o=[],s=[];a<=h;a++)o[a]=t[a][f],s[a]=r[a][f];for(l.push({x:o,y:s,bicubic:c}),a=f,o=[],s=[];a>=0;a--)o[f-a]=t[h][a],s[f-a]=r[h][a];for(l.push({x:o,y:s,bicubic:u}),a=h,o=[],s=[];a>=0;a--)o[h-a]=t[a][0],s[h-a]=r[a][0];return l.push({x:o,y:s,bicubic:c}),l}});var _Ye=ye((U2r,yYe)=>{"use strict";var UKt=Dr();yYe.exports=function(t,r,n){var i,a,o,s=[],l=[],u=t[0].length,c=t.length;function f(oe,_e){var Ee=0,Ce,me=0;return oe>0&&(Ce=t[_e][oe-1])!==void 0&&(me++,Ee+=Ce),oe0&&(Ce=t[_e-1][oe])!==void 0&&(me++,Ee+=Ce),_e0&&a0&&iM);return UKt.log("Smoother converged to",g,"after",T,"iterations"),t}});var bYe=ye((V2r,xYe)=>{"use strict";xYe.exports={RELATIVE_CULL_TOLERANCE:1e-6}});var AYe=ye((G2r,TYe)=>{"use strict";var wYe=.5;TYe.exports=function(t,r,n,i){var a=t[0]-r[0],o=t[1]-r[1],s=n[0]-r[0],l=n[1]-r[1],u=Math.pow(a*a+o*o,wYe/2),c=Math.pow(s*s+l*l,wYe/2),f=(c*c*a-u*u*s)*i,h=(c*c*o-u*u*l)*i,d=c*(u+c)*3,v=u*(u+c)*3;return[[r[0]+(d&&f/d),r[1]+(d&&h/d)],[r[0]-(v&&f/v),r[1]-(v&&h/v)]]}});var MYe=ye((H2r,SYe)=>{"use strict";var E$=AYe(),Y7=Dr().ensureArray;function B5(e,t,r){var n=-.5*r[0]+1.5*t[0],i=-.5*r[1]+1.5*t[1];return[(2*n+e[0])/3,(2*i+e[1])/3]}SYe.exports=function(t,r,n,i,a,o){var s,l,u,c,f,h,d,v,_,b,p=n[0].length,k=n.length,E=a?3*p-2:p,S=o?3*k-2:k;for(t=Y7(t,S),r=Y7(r,S),u=0;u{"use strict";EYe.exports=function(e,t,r,n,i){var a=t-2,o=r-2;return n&&i?function(s,l,u){s||(s=[]);var c,f,h,d,v,_,b=Math.max(0,Math.min(Math.floor(l),a)),p=Math.max(0,Math.min(Math.floor(u),o)),k=Math.max(0,Math.min(1,l-b)),E=Math.max(0,Math.min(1,u-p));b*=3,p*=3;var S=k*k,L=S*k,x=1-k,C=x*x,M=C*x,g=E*E,P=g*E,T=1-E,z=T*T,O=z*T;for(_=0;_{"use strict";CYe.exports=function(e,t,r){return t&&r?function(n,i,a,o,s){n||(n=[]);var l,u,c,f,h,d;i*=3,a*=3;var v=o*o,_=1-o,b=_*_,p=_*o*2,k=-3*b,E=3*(b-p),S=3*(p-v),L=3*v,x=s*s,C=x*s,M=1-s,g=M*M,P=g*M;for(d=0;d{"use strict";PYe.exports=function(e,t,r){return t&&r?function(n,i,a,o,s){n||(n=[]);var l,u,c,f,h,d;i*=3,a*=3;var v=o*o,_=v*o,b=1-o,p=b*b,k=p*b,E=s*s,S=1-s,L=S*S,x=S*s*2,C=-3*L,M=3*(L-x),g=3*(x-E),P=3*E;for(d=0;d{"use strict";var RYe=bYe(),DYe=R6().findBin,VKt=MYe(),GKt=kYe(),HKt=LYe(),jKt=IYe();FYe.exports=function(t){var r=t._a,n=t._b,i=r.length,a=n.length,o=t.aaxis,s=t.baxis,l=r[0],u=r[i-1],c=n[0],f=n[a-1],h=r[r.length-1]-r[0],d=n[n.length-1]-n[0],v=h*RYe.RELATIVE_CULL_TOLERANCE,_=d*RYe.RELATIVE_CULL_TOLERANCE;l-=v,u+=v,c-=_,f+=_,t.isVisible=function(b,p){return b>l&&bc&&pu||pf},t.setScale=function(){var b=t._x,p=t._y,k=VKt(t._xctrl,t._yctrl,b,p,o.smoothing,s.smoothing);t._xctrl=k[0],t._yctrl=k[1],t.evalxy=GKt([t._xctrl,t._yctrl],i,a,o.smoothing,s.smoothing),t.dxydi=HKt([t._xctrl,t._yctrl],o.smoothing,s.smoothing),t.dxydj=jKt([t._xctrl,t._yctrl],o.smoothing,s.smoothing)},t.i2a=function(b){var p=Math.max(0,Math.floor(b[0]),i-2),k=b[0]-p;return(1-k)*r[p]+k*r[p+1]},t.j2b=function(b){var p=Math.max(0,Math.floor(b[1]),i-2),k=b[1]-p;return(1-k)*n[p]+k*n[p+1]},t.ij2ab=function(b){return[t.i2a(b[0]),t.j2b(b[1])]},t.a2i=function(b){var p=Math.max(0,Math.min(DYe(b,r),i-2)),k=r[p],E=r[p+1];return Math.max(0,Math.min(i-1,p+(b-k)/(E-k)))},t.b2j=function(b){var p=Math.max(0,Math.min(DYe(b,n),a-2)),k=n[p],E=n[p+1];return Math.max(0,Math.min(a-1,p+(b-k)/(E-k)))},t.ab2ij=function(b){return[t.a2i(b[0]),t.b2j(b[1])]},t.i2c=function(b,p){return t.evalxy([],b,p)},t.ab2xy=function(b,p,k){if(!k&&(br[i-1]|pn[a-1]))return[!1,!1];var E=t.a2i(b),S=t.b2j(p),L=t.evalxy([],E,S);if(k){var x=0,C=0,M=[],g,P,T,z;br[i-1]?(g=i-2,P=1,x=(b-r[i-1])/(r[i-1]-r[i-2])):(g=Math.max(0,Math.min(i-2,Math.floor(E))),P=E-g),pn[a-1]?(T=a-2,z=1,C=(p-n[a-1])/(n[a-1]-n[a-2])):(T=Math.max(0,Math.min(a-2,Math.floor(S))),z=S-T),x&&(t.dxydi(M,g,T,P,z),L[0]+=M[0]*x,L[1]+=M[1]*x),C&&(t.dxydj(M,g,T,P,z),L[0]+=M[0]*C,L[1]+=M[1]*C)}return L},t.c2p=function(b,p,k){return[p.c2p(b[0]),k.c2p(b[1])]},t.p2x=function(b,p,k){return[p.p2c(b[0]),k.p2c(b[1])]},t.dadi=function(b){var p=Math.max(0,Math.min(r.length-2,b));return r[p+1]-r[p]},t.dbdj=function(b){var p=Math.max(0,Math.min(n.length-2,b));return n[p+1]-n[p]},t.dxyda=function(b,p,k,E){var S=t.dxydi(null,b,p,k,E),L=t.dadi(b,k);return[S[0]/L,S[1]/L]},t.dxydb=function(b,p,k,E){var S=t.dxydj(null,b,p,k,E),L=t.dbdj(p,E);return[S[0]/L,S[1]/L]},t.dxyda_rough=function(b,p,k){var E=h*(k||.1),S=t.ab2xy(b+E,p,!0),L=t.ab2xy(b-E,p,!0);return[(S[0]-L[0])*.5/E,(S[1]-L[1])*.5/E]},t.dxydb_rough=function(b,p,k){var E=d*(k||.1),S=t.ab2xy(b,p+E,!0),L=t.ab2xy(b,p-E,!0);return[(S[0]-L[0])*.5/E,(S[1]-L[1])*.5/E]},t.dpdx=function(b){return b._m},t.dpdy=function(b){return b._m}}});var HYe=ye((Y2r,GYe)=>{"use strict";var K7=ho(),OYe=Dr().isArray1D,WKt=aYe(),qYe=uYe(),BYe=fYe(),NYe=pYe(),XKt=mYe(),UYe=n8(),VYe=_Ye(),ZKt=r8(),YKt=zYe();GYe.exports=function(t,r){var n=K7.getFromId(t,r.xaxis),i=K7.getFromId(t,r.yaxis),a=r.aaxis,o=r.baxis,s=r.x,l=r.y,u=[];s&&OYe(s)&&u.push("x"),l&&OYe(l)&&u.push("y"),u.length&&ZKt(r,a,o,"a","b",u);var c=r._a=r._a||r.a,f=r._b=r._b||r.b;s=r._x||r.x,l=r._y||r.y;var h={};if(r._cheater){var d=a.cheatertype==="index"?c.length:c,v=o.cheatertype==="index"?f.length:f;s=WKt(d,v,r.cheaterslope)}r._x=s=UYe(s),r._y=l=UYe(l),VYe(s,c,f),VYe(l,c,f),YKt(r),r.setScale();var _=qYe(s),b=qYe(l),p=.5*(_[1]-_[0]),k=.5*(_[1]+_[0]),E=.5*(b[1]-b[0]),S=.5*(b[1]+b[0]),L=1.3;return _=[k-p*L,k+p*L],b=[S-E*L,S+E*L],r._extremes[n._id]=K7.findExtremes(n,_,{padded:!0}),r._extremes[i._id]=K7.findExtremes(i,b,{padded:!0}),BYe(r,"a","b"),BYe(r,"b","a"),NYe(r,a),NYe(r,o),h.clipsegments=XKt(r._xctrl,r._yctrl,a,o),h.x=s,h.y=l,h.a=c,h.b=f,[h]}});var WYe=ye((K2r,jYe)=>{"use strict";jYe.exports={attributes:G7(),supplyDefaults:jZe(),plot:iYe(),calc:HYe(),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:ph(),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}});var ZYe=ye((J2r,XYe)=>{"use strict";XYe.exports=WYe()});var k$=ye(($2r,JYe)=>{"use strict";var KKt=kg(),u0=pf(),JKt=Gl(),{hovertemplateAttrs:$Kt,texttemplateAttrs:QKt,templatefallbackAttrs:YYe}=Ll(),KYe=Tu(),Cx=Ao().extendFlat,sg=u0.marker,N5=u0.line,eJt=sg.line;JYe.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:Cx({},u0.mode,{dflt:"markers"}),text:Cx({},u0.text,{}),texttemplate:QKt({editType:"plot"},{keys:["a","b","text"]}),texttemplatefallback:YYe({editType:"plot"}),hovertext:Cx({},u0.hovertext,{}),line:{color:N5.color,width:N5.width,dash:N5.dash,backoff:N5.backoff,shape:Cx({},N5.shape,{values:["linear","spline"]}),smoothing:N5.smoothing,editType:"calc"},connectgaps:u0.connectgaps,fill:Cx({},u0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:KKt(),marker:Cx({symbol:sg.symbol,opacity:sg.opacity,maxdisplayed:sg.maxdisplayed,angle:sg.angle,angleref:sg.angleref,standoff:sg.standoff,size:sg.size,sizeref:sg.sizeref,sizemin:sg.sizemin,sizemode:sg.sizemode,line:Cx({width:eJt.width,editType:"calc"},KYe("marker.line")),gradient:sg.gradient,editType:"calc"},KYe("marker")),textfont:u0.textfont,textposition:u0.textposition,selected:u0.selected,unselected:u0.unselected,hoverinfo:Cx({},JKt.hoverinfo,{flags:["a","b","text","name"]}),hoveron:u0.hoveron,hovertemplate:$Kt(),hovertemplatefallback:YYe(),zorder:u0.zorder}});var tKe=ye((Q2r,eKe)=>{"use strict";var $Ye=Dr(),tJt=Sm(),U5=Ru(),rJt=$p(),iJt=R0(),QYe=eT(),nJt=D0(),aJt=Ig(),oJt=k$();eKe.exports=function(t,r,n,i){function a(h,d){return $Ye.coerce(t,r,oJt,h,d)}a("carpet"),r.xaxis="x",r.yaxis="y";var o=a("a"),s=a("b"),l=Math.min(o.length,s.length);if(!l){r.visible=!1;return}r._length=l,a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext");var u=l{"use strict";rKe.exports=function(t,r){var n={},i=r._carpet,a=i.ab2ij([t.a,t.b]),o=Math.floor(a[0]),s=a[0]-o,l=Math.floor(a[1]),u=a[1]-l,c=i.evalxy([],o,l,s,u);return n.yLabel=c[1].toFixed(3),n}});var J7=ye((twr,nKe)=>{"use strict";nKe.exports=function(e,t){for(var r=e._fullData.length,n,i=0;i{"use strict";var aKe=Eo(),sJt=F0(),lJt=km(),uJt=z0(),cJt=O0().calcMarkerSize,fJt=J7();oKe.exports=function(t,r){var n=r._carpetTrace=fJt(t,r);if(!(!n||!n.visible||n.visible==="legendonly")){var i;r.xaxis=n.xaxis,r.yaxis=n.yaxis;var a=r._length,o=new Array(a),s,l,u=!1;for(i=0;i{"use strict";var hJt=oT(),lKe=ho(),dJt=So();uKe.exports=function(t,r,n,i){var a,o,s,l=n[0][0].carpet,u=lKe.getFromId(t,l.xaxis||"x"),c=lKe.getFromId(t,l.yaxis||"y"),f={xaxis:u,yaxis:c,plot:r.plot};for(a=0;a{"use strict";var vJt=cT(),pJt=Dr().fillText;fKe.exports=function(t,r,n,i){var a=vJt(t,r,n,i);if(!a||a[0].index===!1)return;var o=a[0];if(o.index===void 0){var s=1-o.y0/t.ya._length,l=t.xa._length,u=l*s/2,c=l-u;return o.x0=Math.max(Math.min(o.x0,c),u),o.x1=Math.max(Math.min(o.x1,c),u),a}var f=o.cd[o.index];o.a=f.a,o.b=f.b,o.xLabelVal=void 0,o.yLabelVal=void 0;var h=o.trace,d=h._carpet,v=h._module.formatLabels(f,h);o.yLabel=v.yLabel,delete o.text;var _=[];function b(E,S){var L;E.labelprefix&&E.labelprefix.length>0?L=E.labelprefix.replace(/ = $/,""):L=E._hovertitle,_.push(L+": "+S.toFixed(3)+E.labelsuffix)}if(!h.hovertemplate){var p=f.hi||h.hoverinfo,k=p.split("+");k.indexOf("all")!==-1&&(k=["a","b","text"]),k.indexOf("a")!==-1&&b(d.aaxis,f.a),k.indexOf("b")!==-1&&b(d.baxis,f.b),_.push("y: "+o.yLabel),k.indexOf("text")!==-1&&pJt(f,h,_),o.extraText=_.join("
")}return a}});var vKe=ye((awr,dKe)=>{"use strict";dKe.exports=function(t,r,n,i,a){var o=i[a];return t.a=o.a,t.b=o.b,t.y=o.y,t}});var gKe=ye((owr,pKe)=>{"use strict";pKe.exports={attributes:k$(),supplyDefaults:tKe(),colorbar:$d(),formatLabels:iKe(),calc:sKe(),plot:cKe(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:hKe(),selectPoints:fT(),eventData:vKe(),moduleType:"trace",name:"scattercarpet",basePlotModule:ph(),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}});var yKe=ye((swr,mKe)=>{"use strict";mKe.exports=gKe()});var C$=ye((lwr,_Ke)=>{"use strict";var lg=LT(),g1=k4(),gJt=Tu(),mJt=Ao().extendFlat,ry=g1.contours;_Ke.exports=mJt({carpet:{valType:"string",editType:"calc"},z:lg.z,a:lg.x,a0:lg.x0,da:lg.dx,b:lg.y,b0:lg.y0,db:lg.dy,text:lg.text,hovertext:lg.hovertext,transpose:lg.transpose,atype:lg.xtype,btype:lg.ytype,fillcolor:g1.fillcolor,autocontour:g1.autocontour,ncontours:g1.ncontours,contours:{type:ry.type,start:ry.start,end:ry.end,size:ry.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:ry.showlines,showlabels:ry.showlabels,labelfont:ry.labelfont,labelformat:ry.labelformat,operation:ry.operation,value:ry.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:g1.line.color,width:g1.line.width,dash:g1.line.dash,smoothing:g1.line.smoothing,editType:"plot"},zorder:g1.zorder},gJt("",{cLetter:"z",autoColorDflt:!1}))});var L$=ye((uwr,wKe)=>{"use strict";var xKe=Dr(),yJt=QI(),bKe=C$(),_Jt=MG(),xJt=T8(),bJt=A8();wKe.exports=function(t,r,n,i){function a(u,c){return xKe.coerce(t,r,bKe,u,c)}function o(u){return xKe.coerce2(t,r,bKe,u)}if(a("carpet"),t.a&&t.b){var s=yJt(t,r,a,i,"a","b");if(!s){r.visible=!1;return}a("text");var l=a("contours.type")==="constraint";l?_Jt(t,r,a,i,n,{hasHover:!1}):(xJt(t,r,a,o),bJt(t,r,a,i,{hasHover:!1}))}else r._defaultColor=n,r._length=null;a("zorder")}});var MKe=ye((cwr,SKe)=>{"use strict";var wJt=gv(),TKe=Dr(),TJt=r8(),AJt=n8(),SJt=a8(),MJt=o8(),AKe=YV(),EJt=L$(),kJt=J7(),CJt=vG();SKe.exports=function(t,r){var n=r._carpetTrace=kJt(t,r);if(!(!n||!n.visible||n.visible==="legendonly")){if(!r.a||!r.b){var i=t.data[n.index],a=t.data[r.index];a.a||(a.a=i.a),a.b||(a.b=i.b),EJt(a,r,r._defaultColor,t._fullLayout)}var o=LJt(t,r);return CJt(r,r._z),o}};function LJt(e,t){var r=t._carpetTrace,n=r.aaxis,i=r.baxis,a,o,s,l,u,c,f;n._minDtick=0,i._minDtick=0,TKe.isArray1D(t.z)&&TJt(t,n,i,"a","b",["z"]),a=t._a=t._a||t.a,l=t._b=t._b||t.b,a=a?n.makeCalcdata(t,"_a"):[],l=l?i.makeCalcdata(t,"_b"):[],o=t.a0||0,s=t.da||1,u=t.b0||0,c=t.db||1,f=t._z=AJt(t._z||t.z,t.transpose),t._emptypoints=MJt(f),SJt(f,t._emptypoints);var h=TKe.maxRowLength(f),d=t.xtype==="scaled"?"":a,v=AKe(t,d,o,s,h,n),_=t.ytype==="scaled"?"":l,b=AKe(t,_,u,c,f.length,i),p={a:v,b,z:f};return t.contours.type==="levels"&&t.contours.coloring!=="none"&&wJt(e,t,{vals:f,containerStr:"",cLetter:"z"}),[p]}});var kKe=ye((fwr,EKe)=>{"use strict";var PJt=Dr().isArrayOrTypedArray;EKe.exports=function(e,t,r,n){var i,a,o,s,l,u,c,f,h,d,v,_,b,p=PJt(r)?"a":"b",k=p==="a"?e.aaxis:e.baxis,E=k.smoothing,S=p==="a"?e.a2i:e.b2j,L=p==="a"?r:n,x=p==="a"?n:r,C=p==="a"?t.a.length:t.b.length,M=p==="a"?t.b.length:t.a.length,g=Math.floor(p==="a"?e.b2j(x):e.a2i(x)),P=p==="a"?function(_e){return e.evalxy([],_e,g)}:function(_e){return e.evalxy([],g,_e)};E&&(o=Math.max(0,Math.min(M-2,g)),s=g-o,a=p==="a"?function(_e,Ee){return e.dxydi([],_e,o,Ee,s)}:function(_e,Ee){return e.dxydj([],o,_e,s,Ee)});var T=S(L[0]),z=S(L[1]),O=T0?Math.floor:Math.ceil,Z=O>0?Math.ceil:Math.floor,H=O>0?Math.min:Math.max,N=O>0?Math.max:Math.min,j=G(T+V),re=Z(z-V);c=P(T);var oe=[[c]];for(i=j;i*O{"use strict";var Q7=Oa(),e9=A$(),RKe=S$(),sC=So(),m1=Dr(),IJt=gG(),RJt=mG(),dw=E8(),$7=L4(),DJt=bG(),FJt=xG(),zJt=wG(),OJt=J7(),CKe=kKe();DKe.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;m1.makeTraceGroups(i,n,"contour").each(function(s){var l=Q7.select(this),u=s[0],c=u.trace,f=c._carpetTrace=OJt(t,c),h=t.calcdata[f.index][0];if(!f.visible||f.visible==="legendonly")return;var d=u.a,v=u.b,_=c.contours,b=FJt(_,r,u),p=_.type==="constraint",k=_._operation,E=p?k==="="?"lines":"fill":_.coloring;function S(G){var Z=f.ab2xy(G[0],G[1],!0);return[a.c2p(Z[0]),o.c2p(Z[1])]}var L=[[d[0],v[v.length-1]],[d[d.length-1],v[v.length-1]],[d[d.length-1],v[0]],[d[0],v[0]]];IJt(b);var x=(d[d.length-1]-d[0])*1e-8,C=(v[v.length-1]-v[0])*1e-8;RJt(b,x,C);var M=b;_.type==="constraint"&&(M=DJt(b,k)),qJt(b,S);var g,P,T,z,O=[];for(z=h.clipsegments.length-1;z>=0;z--)g=h.clipsegments[z],P=e9([],g.x,a.c2p),T=e9([],g.y,o.c2p),P.reverse(),T.reverse(),O.push(RKe(P,T,g.bicubic));var V="M"+O.join("L")+"Z";UJt(l,h.clipsegments,a,o,p,E),VJt(c,l,a,o,M,L,S,f,h,E,V),BJt(l,b,t,u,_,r,f),sC.setClipUrl(l,f._clipPathId,t)})};function qJt(e,t){var r,n,i,a,o,s,l,u,c;for(r=0;rb&&(n.max=b),n.len=n.max-n.min}function LKe(e,t,r){var n=e.getPointAtLength(t),i=e.getPointAtLength(r),a=i.x-n.x,o=i.y-n.y,s=Math.sqrt(a*a+o*o);return[a/s,o/s]}function PKe(e){var t=Math.sqrt(e[0]*e[0]+e[1]*e[1]);return[e[0]/t,e[1]/t]}function IKe(e,t){var r=Math.abs(e[0]*t[0]+e[1]*t[1]),n=Math.sqrt(1-r*r);return n/r}function UJt(e,t,r,n,i,a){var o,s,l,u,c=m1.ensureSingle(e,"g","contourbg"),f=c.selectAll("path").data(a==="fill"&&!i?[0]:[]);f.enter().append("path"),f.exit().remove();var h=[];for(u=0;u=0&&(d=P,_=b):Math.abs(h[1]-d[1])=0&&(d=P,_=b):m1.log("endpt to newendpt is not vert. or horz.",h,d,P)}if(_>=0)break;u+=M(h,d),h=d}if(_===t.edgepaths.length){m1.log("unclosed perimeter path");break}l=_,f=c.indexOf(l)===-1,f&&(l=c[0],u+=M(h,d)+"Z",h=null)}for(l=0;l{"use strict";zKe.exports={attributes:C$(),supplyDefaults:L$(),colorbar:L8(),calc:MKe(),plot:FKe(),style:C8(),moduleType:"trace",name:"contourcarpet",basePlotModule:ph(),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}});var BKe=ye((vwr,qKe)=>{"use strict";qKe.exports=OKe()});var r9=ye((pwr,HKe)=>{"use strict";var t9=Dr().extendFlat,lC=pf(),NKe=df().axisHoverFormat,{hovertemplateAttrs:HJt,templatefallbackAttrs:jJt}=Ll(),VKe=Pd().dash,WJt=n3(),GKe=WT(),XJt=GKe.INCREASING.COLOR,ZJt=GKe.DECREASING.COLOR,P$=lC.line;function UKe(e){return{line:{color:t9({},P$.color,{dflt:e}),width:P$.width,dash:VKe,editType:"style"},editType:"style"}}HKe.exports={xperiod:lC.xperiod,xperiod0:lC.xperiod0,xperiodalignment:lC.xperiodalignment,xhoverformat:NKe("x"),yhoverformat:NKe("y"),x:{valType:"data_array",editType:"calc+clearAxisTypes"},open:{valType:"data_array",editType:"calc"},high:{valType:"data_array",editType:"calc"},low:{valType:"data_array",editType:"calc"},close:{valType:"data_array",editType:"calc"},line:{width:t9({},P$.width,{}),dash:t9({},VKe,{}),editType:"style"},increasing:UKe(XJt),decreasing:UKe(ZJt),text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:HJt({},{keys:["open","high","low","close"]}),hovertemplatefallback:jJt(),tickwidth:{valType:"number",min:0,max:.5,dflt:.3,editType:"calc"},hoverlabel:t9({},WJt.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style"}}),zorder:lC.zorder}});var I$=ye((gwr,jKe)=>{"use strict";var YJt=qa(),KJt=Dr();jKe.exports=function(t,r,n,i){var a=n("x"),o=n("open"),s=n("high"),l=n("low"),u=n("close");n("hoverlabel.split");var c=YJt.getComponentMethod("calendars","handleTraceDefaults");if(c(t,r,["x"],i),!!(o&&s&&l&&u)){var f=Math.min(o.length,s.length,l.length,u.length);return a&&(f=Math.min(f,KJt.minRowLength(a))),r._length=f,f}}});var ZKe=ye((mwr,XKe)=>{"use strict";var JJt=Dr(),$Jt=I$(),QJt=Pg(),e$t=r9();XKe.exports=function(t,r,n,i){function a(s,l){return JJt.coerce(t,r,e$t,s,l)}var o=$Jt(t,r,a,i);if(!o){r.visible=!1;return}QJt(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),a("line.dash"),WKe(t,r,a,"increasing"),WKe(t,r,a,"decreasing"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("tickwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function WKe(e,t,r,n){r(n+".line.color"),r(n+".line.width",t.line.width),r(n+".line.dash",t.line.dash)}});var R$=ye((ywr,KKe)=>{"use strict";var V5=Dr(),i9=V5._,n9=ho(),t$t=Rg(),uC=fs().BADNUM;function r$t(e,t){var r=n9.getFromId(e,t.xaxis),n=n9.getFromId(e,t.yaxis),i=n$t(e,r,t),a=t._minDiff;t._minDiff=null;var o=t._origX;t._origX=null;var s=t._xcalc;t._xcalc=null;var l=YKe(e,t,o,s,n,i$t);return t._extremes[r._id]=n9.findExtremes(r,s,{vpad:a/2}),l.length?(V5.extendFlat(l[0].t,{wHover:a/2,tickLen:i}),l):[{t:{empty:!0}}]}function i$t(e,t,r,n){return{o:e,h:t,l:r,c:n}}function YKe(e,t,r,n,i,a){for(var o=i.makeCalcdata(t,"open"),s=i.makeCalcdata(t,"high"),l=i.makeCalcdata(t,"low"),u=i.makeCalcdata(t,"close"),c=V5.isArrayOrTypedArray(t.text),f=V5.isArrayOrTypedArray(t.hovertext),h=!0,d=null,v=!!t.xperiodalignment,_=[],b=0;bd):h=L>k,d=L;var x=a(k,E,S,L);x.pos=p,x.yc=(k+L)/2,x.i=b,x.dir=h?"increasing":"decreasing",x.x=x.pos,x.y=[S,E],v&&(x.orig_p=r[b]),c&&(x.tx=t.text[b]),f&&(x.htx=t.hovertext[b]),_.push(x)}else _.push({pos:p,empty:!0})}return t._extremes[i._id]=n9.findExtremes(i,V5.concat(l,s),{padded:!0}),_.length&&(_[0].t={labels:{open:i9(e,"open:")+" ",high:i9(e,"high:")+" ",low:i9(e,"low:")+" ",close:i9(e,"close:")+" "}}),_}function n$t(e,t,r){var n=r._minDiff;if(!n){var i=e._fullData,a=[];n=1/0;var o;for(o=0;o{"use strict";var a$t=Oa(),JKe=Dr();$Ke.exports=function(t,r,n,i){var a=r.yaxis,o=r.xaxis,s=!!o.rangebreaks;JKe.makeTraceGroups(i,n,"trace ohlc").each(function(l){var u=a$t.select(this),c=l[0],f=c.t,h=c.trace;if(h.visible!==!0||f.empty){u.remove();return}var d=f.tickLen,v=u.selectAll("path").data(JKe.identity);v.enter().append("path"),v.exit().remove(),v.attr("d",function(_){if(_.empty)return"M0,0Z";var b=o.c2p(_.pos-d,!0),p=o.c2p(_.pos+d,!0),k=s?(b+p)/2:o.c2p(_.pos,!0),E=a.c2p(_.o,!0),S=a.c2p(_.h,!0),L=a.c2p(_.l,!0),x=a.c2p(_.c,!0);return"M"+b+","+E+"H"+k+"M"+k+","+S+"V"+L+"M"+p+","+x+"H"+k})})}});var tJe=ye((xwr,eJe)=>{"use strict";var D$=Oa(),o$t=So(),s$t=ka();eJe.exports=function(t,r,n){var i=n||D$.select(t).selectAll("g.ohlclayer").selectAll("g.trace");i.style("opacity",function(a){return a[0].trace.opacity}),i.each(function(a){var o=a[0].trace;D$.select(this).selectAll("path").each(function(s){if(!s.empty){var l=o[s.dir].line;D$.select(this).style("fill","none").call(s$t.stroke,l.color).call(o$t.dashLine,l.dash,l.width).style("opacity",o.selectedpoints&&!s.selected?.3:1)}})})}});var z$=ye((bwr,oJe)=>{"use strict";var F$=ho(),l$t=Dr(),a9=vf(),u$t=ka(),c$t=Dr().fillText,rJe=WT(),f$t={increasing:rJe.INCREASING.SYMBOL,decreasing:rJe.DECREASING.SYMBOL};function h$t(e,t,r,n){var i=e.cd,a=i[0].trace;return a.hoverlabel.split?nJe(e,t,r,n):aJe(e,t,r,n)}function iJe(e,t,r,n){var i=e.cd,a=e.xa,o=i[0].trace,s=i[0].t,l=o.type,u=l==="ohlc"?"l":"min",c=l==="ohlc"?"h":"max",f,h,d=s.bPos||0,v=function(P){return P.pos+d-t},_=s.bdPos||s.tickLen,b=s.wHover,p=Math.min(1,_/Math.abs(a.r2c(a.range[1])-a.r2c(a.range[0])));f=e.maxHoverDistance-p,h=e.maxSpikeDistance-p;function k(P){var T=v(P);return a9.inbox(T-b,T+b,f)}function E(P){var T=P[u],z=P[c];return T===z||a9.inbox(T-r,z-r,f)}function S(P){return(k(P)+E(P))/2}var L=a9.getDistanceFunction(n,k,E,S);if(a9.getClosest(i,L,e),e.index===!1)return null;var x=i[e.index];if(x.empty)return null;var C=x.dir,M=o[C],g=M.line.color;return u$t.opacity(g)&&M.line.width?e.color=g:e.color=M.fillcolor,e.x0=a.c2p(x.pos+d-_,!0),e.x1=a.c2p(x.pos+d+_,!0),e.xLabelVal=x.orig_p!==void 0?x.orig_p:x.pos,e.spikeDistance=S(x)*h/f,e.xSpike=a.c2p(x.pos,!0),e}function nJe(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,l=[],u=iJe(e,t,r,n);if(!u)return[];var c=i[u.index],f=c.hi||o.hoverinfo||"";if(f==="none"||f==="skip")return[];for(var h=["high","open","close","low"],d={},v=0;v"+s.labels[_]+F$.hoverLabelText(a,b,o.yhoverformat)):(k=l$t.extendFlat({},u),k.y0=k.y1=p,k.yLabelVal=b,k.yLabel=s.labels[_]+F$.hoverLabelText(a,b,o.yhoverformat),k.name="",l.push(k),d[b]=k)}return l}function aJe(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,l=iJe(e,t,r,n);if(!l)return[];var u=l.index,c=i[u],f=l.index=c.i,h=c.dir;function d(S){return s.labels[S]+F$.hoverLabelText(a,o[S][f],o.yhoverformat)}var v=c.hi||o.hoverinfo||"",_=v.split("+"),b=v==="all",p=b||_.indexOf("y")!==-1,k=b||_.indexOf("text")!==-1,E=p?[d("open"),d("high"),d("low"),d("close")+" "+f$t[h]]:[];return k&&c$t(c,o,E),l.extraText=E.join("
"),l.y0=l.y1=a.c2p(c.yc,!0),[l]}oJe.exports={hoverPoints:h$t,hoverSplit:nJe,hoverOnPoints:aJe}});var O$=ye((wwr,sJe)=>{"use strict";sJe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l=n[0].t.bPos||0;if(r===!1)for(s=0;s{"use strict";lJe.exports={moduleType:"trace",name:"ohlc",basePlotModule:ph(),categories:["cartesian","svg","showLegend"],meta:{},attributes:r9(),supplyDefaults:ZKe(),calc:R$().calc,plot:QKe(),style:tJe(),hoverPoints:z$().hoverPoints,selectPoints:O$()}});var fJe=ye((Awr,cJe)=>{"use strict";cJe.exports=uJe()});var B$=ye((Swr,vJe)=>{"use strict";var q$=Dr().extendFlat,hJe=df().axisHoverFormat,dp=r9(),G5=_4();function dJe(e){return{line:{color:q$({},G5.line.color,{dflt:e}),width:G5.line.width,editType:"style"},fillcolor:G5.fillcolor,editType:"style"}}vJe.exports={xperiod:dp.xperiod,xperiod0:dp.xperiod0,xperiodalignment:dp.xperiodalignment,xhoverformat:hJe("x"),yhoverformat:hJe("y"),x:dp.x,open:dp.open,high:dp.high,low:dp.low,close:dp.close,line:{width:q$({},G5.line.width,{}),editType:"style"},increasing:dJe(dp.increasing.line.color.dflt),decreasing:dJe(dp.decreasing.line.color.dflt),text:dp.text,hovertext:dp.hovertext,hovertemplate:dp.hovertemplate,hovertemplatefallback:dp.hovertemplatefallback,whiskerwidth:q$({},G5.whiskerwidth,{dflt:0}),hoverlabel:dp.hoverlabel,zorder:G5.zorder}});var mJe=ye((Mwr,gJe)=>{"use strict";var d$t=Dr(),v$t=ka(),p$t=I$(),g$t=Pg(),m$t=B$();gJe.exports=function(t,r,n,i){function a(s,l){return d$t.coerce(t,r,m$t,s,l)}var o=p$t(t,r,a,i);if(!o){r.visible=!1;return}g$t(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),pJe(t,r,a,"increasing"),pJe(t,r,a,"decreasing"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("whiskerwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function pJe(e,t,r,n){var i=r(n+".line.color");r(n+".line.width",t.line.width),r(n+".fillcolor",v$t.addOpacity(i,.5))}});var bJe=ye((Ewr,xJe)=>{"use strict";var yJe=Dr(),_Je=ho(),y$t=Rg(),_$t=R$().calcCommon;xJe.exports=function(e,t){var r=e._fullLayout,n=_Je.getFromId(e,t.xaxis),i=_Je.getFromId(e,t.yaxis),a=n.makeCalcdata(t,"x"),o=y$t(t,n,"x",a).vals,s=_$t(e,t,a,o,i,x$t);return s.length?(yJe.extendFlat(s[0].t,{num:r._numBoxes,dPos:yJe.distinctVals(o).minDiff/2,posLetter:"x",valLetter:"y"}),r._numBoxes++,s):[{t:{empty:!0}}]};function x$t(e,t,r,n){return{min:r,q1:Math.min(e,n),med:n,q3:Math.max(e,n),max:t}}});var TJe=ye((kwr,wJe)=>{"use strict";wJe.exports={moduleType:"trace",name:"candlestick",basePlotModule:ph(),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{},attributes:B$(),layoutAttributes:x4(),supplyLayoutDefaults:XI().supplyLayoutDefaults,crossTraceCalc:YI().crossTraceCalc,supplyDefaults:mJe(),calc:bJe(),plot:KI().plot,layerName:"boxlayer",style:JI().style,hoverPoints:z$().hoverPoints,selectPoints:O$()}});var SJe=ye((Cwr,AJe)=>{"use strict";AJe.exports=TJe()});var U$=ye((Lwr,MJe)=>{"use strict";var s9=Dr(),b$t=ym(),o9=s9.deg2rad,N$=s9.rad2deg;MJe.exports=function(t,r,n){switch(b$t(t,n),t._id){case"x":case"radialaxis":w$t(t,r);break;case"angularaxis":S$t(t,r);break}};function w$t(e,t){var r=t._subplot;e.setGeometry=function(){var n=e._rl[0],i=e._rl[1],a=r.innerRadius,o=(r.radius-a)/(i-n),s=a/o,l=n>i?function(u){return u<=0}:function(u){return u>=0};e.c2g=function(u){var c=e.c2l(u)-n;return(l(c)?c:0)+s},e.g2c=function(u){return e.l2c(u+n-s)},e.g2p=function(u){return u*o},e.c2p=function(u){return e.g2p(e.c2g(u))}}}function T$t(e,t){return t==="degrees"?o9(e):e}function A$t(e,t){return t==="degrees"?N$(e):e}function S$t(e,t){var r=e.type;if(r==="linear"){var n=e.d2c,i=e.c2d;e.d2c=function(a,o){return T$t(n(a),o)},e.c2d=function(a,o){return i(A$t(a,o))}}e.makeCalcdata=function(a,o){var s=a[o],l=a._length,u,c,f=function(b){return e.d2c(b,a.thetaunit)};if(s)for(u=new Array(l),c=0;c{"use strict";EJe.exports={attr:"subplot",name:"polar",axisNames:["angularaxis","radialaxis"],axisName2dataArray:{angularaxis:"theta",radialaxis:"r"},layerNames:["draglayer","plotbg","backplot","angular-grid","radial-grid","frontplot","angular-line","radial-line","angular-axis","radial-axis"],radialDragBoxSize:50,angularDragBoxSize:30,cornerLen:25,cornerHalfWidth:2,MINDRAG:8,MINZOOM:20,OFFEDGE:20}});var c9=ye((Iwr,IJe)=>{"use strict";var vw=Dr(),kJe=EM().tester,V$=vw.findIndexOfMin,LJe=vw.isAngleInsideSector,M$t=vw.angleDelta,CJe=vw.angleDist;function E$t(e,t,r,n,i){if(!LJe(t,n))return!1;var a,o;r[0]0?o:1/0},n=V$(t,r),i=vw.mod(n+1,t.length);return[t[n],t[i]]}function u9(e){return Math.abs(e)>1e-10?e:0}function G$(e,t,r){t=t||0,r=r||0;for(var n=e.length,i=new Array(n),a=0;a{"use strict";function RJe(e){return e<0?-1:e>0?1:0}function j5(e){var t=e[0],r=e[1];if(!isFinite(t)||!isFinite(r))return[1,0];var n=(t+1)*(t+1)+r*r;return[(t*t+r*r-1)/n,2*r/n]}function W5(e,t){var r=t[0],n=t[1];return[r*e.radius+e.cx,-n*e.radius+e.cy]}function DJe(e,t){return t*e.radius}function F$t(e,t,r,n){var i=W5(e,j5([r,t])),a=i[0],o=i[1],s=W5(e,j5([n,t])),l=s[0],u=s[1];if(t===0)return["M"+a+","+o,"L"+l+","+u].join(" ");var c=DJe(e,1/Math.abs(t));return["M"+a+","+o,"A"+c+","+c+" 0 0,"+(t<0?1:0)+" "+l+","+u].join(" ")}function z$t(e,t,r,n){var i=DJe(e,1/(t+1)),a=W5(e,j5([t,r])),o=a[0],s=a[1],l=W5(e,j5([t,n])),u=l[0],c=l[1];if(RJe(r)!==RJe(n)){var f=W5(e,j5([t,0])),h=f[0],d=f[1];return["M"+o+","+s,"A"+i+","+i+" 0 0,"+(0{"use strict";var pw=Oa(),O$t=cd(),mw=qa(),Xc=Dr(),iy=Xc.strRotate,xd=Xc.strTranslate,j$=ka(),cC=So(),q$t=Mc(),vp=ho(),B$t=ym(),N$t=U$(),U$t=Tg().doAutoRange,y1=NN(),d9=yv(),zJe=vf(),V$t=Eb(),G$t=Of().prepSelect,H$t=Of().selectOnClick,W$=Of().clearOutline,OJe=Ag(),qJe=dM(),BJe=bM().redrawReglTraces,j$t=$h().MID_SHIFT,Lx=l9(),_1=c9(),v9=H$(),f9=v9.smith,W$t=v9.reactanceArc,X$t=v9.resistanceArc,h9=v9.smithTransform,Z$t=Xc._,NJe=Xc.mod,Px=Xc.deg2rad,gw=Xc.rad2deg;function UJe(e,t,r){this.isSmith=r||!1,this.id=t,this.gd=e,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var n=e._fullLayout,i="clip"+n._uid+t;this.clipIds.forTraces=i+"-for-traces",this.clipPaths.forTraces=n._clips.append("clipPath").attr("id",this.clipIds.forTraces),this.clipPaths.forTraces.append("path"),this.framework=n["_"+(r?"smith":"polar")+"layer"].append("g").attr("class",t),this.getHole=function(a){return this.isSmith?0:a.hole},this.getSector=function(a){return this.isSmith?[0,360]:a.sector},this.getRadial=function(a){return this.isSmith?a.realaxis:a.radialaxis},this.getAngular=function(a){return this.isSmith?a.imaginaryaxis:a.angularaxis},r||(this.radialTickLayout=null,this.angularTickLayout=null)}var Nd=UJe.prototype;HJe.exports=function(t,r,n){return new UJe(t,r,n)};Nd.plot=function(e,t){for(var r=this,n=t[r.id],i=!1,a=0;ab?(p=u,k=u*b,L=(c-k)/i.h/2,E=[s[0],s[1]],S=[l[0]+L,l[1]-L]):(p=c/b,k=c,L=(u-p)/i.w/2,E=[s[0]+L,s[1]-L],S=[l[0],l[1]]),r.xLength2=p,r.yLength2=k,r.xDomain2=E,r.yDomain2=S;var x=r.xOffset2=i.l+i.w*E[0],C=r.yOffset2=i.t+i.h*(1-S[1]),M=r.radius=p/d,g=r.innerRadius=r.getHole(t)*M,P=r.cx=x-M*h[0],T=r.cy=C+M*h[3],z=r.cxx=P-x,O=r.cyy=T-C,V=a.side,G;V==="counterclockwise"?(G=V,V="top"):V==="clockwise"&&(G=V,V="bottom"),r.radialAxis=r.mockAxis(e,t,a,{_id:"x",side:V,_trueSide:G,domain:[g/i.w,M/i.w]}),r.angularAxis=r.mockAxis(e,t,o,{side:"right",domain:[0,Math.PI],autorange:!1}),r.doAutoRange(e,t),r.updateAngularAxis(e,t),r.updateRadialAxis(e,t),r.updateRadialAxisTitle(e,t),r.xaxis=r.mockCartesianAxis(e,t,{_id:"x",domain:E}),r.yaxis=r.mockCartesianAxis(e,t,{_id:"y",domain:S});var Z=r.pathSubplot();r.clipPaths.forTraces.select("path").attr("d",Z).attr("transform",xd(z,O)),n.frontplot.attr("transform",xd(x,C)).call(cC.setClipUrl,r._hasClipOnAxisFalse?null:r.clipIds.forTraces,r.gd),n.bg.attr("d",Z).attr("transform",xd(P,T)).call(j$.fill,t.bgcolor)};Nd.mockAxis=function(e,t,r,n){var i=Xc.extendFlat({},r,n);return N$t(i,t,e),i};Nd.mockCartesianAxis=function(e,t,r){var n=this,i=n.isSmith,a=r._id,o=Xc.extendFlat({type:"linear"},r);B$t(o,e);var s={x:[0,2],y:[1,3]};return o.setRange=function(){var l=n.sectorBBox,u=s[a],c=n.radialAxis._rl,f=(c[1]-c[0])/(1-n.getHole(t));o.range=[l[u[0]]*f,l[u[1]]*f]},o.isPtWithinRange=a==="x"&&!i?function(l){return n.isPtInside(l)}:function(){return!0},o.setRange(),o.setScale(),o};Nd.doAutoRange=function(e,t){var r=this,n=r.gd,i=r.radialAxis,a=r.getRadial(t);U$t(n,i);var o=i.range;if(a.range=o.slice(),a._input.range=o.slice(),i._rl=[i.r2l(o[0],null,"gregorian"),i.r2l(o[1],null,"gregorian")],i.minallowed!==void 0){var s=i.r2l(i.minallowed);i._rl[0]>i._rl[1]?i._rl[1]=Math.max(i._rl[1],s):i._rl[0]=Math.max(i._rl[0],s)}if(i.maxallowed!==void 0){var l=i.r2l(i.maxallowed);i._rl[0]90&&c<=270&&(f.tickangle=180);var v=d?function(M){var g=h9(r,f9([M.x,0]));return xd(g[0]-s,g[1]-l)}:function(M){return xd(f.l2p(M.x)+o,0)},_=d?function(M){return X$t(r,M.x,-1/0,1/0)}:function(M){return r.pathArc(f.r2p(M.x)+o)},b=VJe(u);if(r.radialTickLayout!==b&&(i["radial-axis"].selectAll(".xtick").remove(),r.radialTickLayout=b),h){f.setScale();var p=0,k=d?(f.tickvals||[]).filter(function(M){return M>=0}).map(function(M){return vp.tickText(f,M,!0,!1)}):vp.calcTicks(f),E=d?k:vp.clipEnds(f,k),S=vp.getTickSigns(f)[2];d&&((f.ticks==="top"&&f.side==="bottom"||f.ticks==="bottom"&&f.side==="top")&&(S=-S),f.ticks==="top"&&f.side==="top"&&(p=-f.ticklen),f.ticks==="bottom"&&f.side==="bottom"&&(p=f.ticklen)),vp.drawTicks(n,f,{vals:k,layer:i["radial-axis"],path:vp.makeTickPath(f,0,S),transFn:v,crisp:!1}),vp.drawGrid(n,f,{vals:E,layer:i["radial-grid"],path:_,transFn:Xc.noop,crisp:!1}),vp.drawLabels(n,f,{vals:k,layer:i["radial-axis"],transFn:v,labelFns:vp.makeLabelFns(f,p)})}var L=r.radialAxisAngle=r.vangles?gw(GJe(Px(u.angle),r.vangles)):u.angle,x=xd(s,l),C=x+iy(-L);fC(i["radial-axis"],h&&(u.showticklabels||u.ticks),{transform:C}),fC(i["radial-grid"],h&&u.showgrid,{transform:d?"":x}),fC(i["radial-line"].select("line"),h&&u.showline,{x1:d?-a:o,y1:0,x2:a,y2:0,transform:C}).attr("stroke-width",u.linewidth).call(j$.stroke,u.linecolor)};Nd.updateRadialAxisTitle=function(e,t,r){if(!this.isSmith){var n=this,i=n.gd,a=n.radius,o=n.cx,s=n.cy,l=n.getRadial(t),u=n.id+"title",c=0;if(l.title){var f=cC.bBox(n.layers["radial-axis"].node()).height,h=l.title.font.size,d=l.side;c=d==="top"?h:d==="counterclockwise"?-(f+h*.4):f+h*.8}var v=r!==void 0?r:n.radialAxisAngle,_=Px(v),b=Math.cos(_),p=Math.sin(_),k=o+a/2*b+c*p,E=s-a/2*p+c*b;n.layers["radial-axis-title"]=V$t.draw(i,u,{propContainer:l,propName:n.id+".radialaxis.title.text",placeholder:Z$t(i,"Click to enter radial axis title"),attributes:{x:k,y:E,"text-anchor":"middle"},transform:{rotate:-v}})}};Nd.updateAngularAxis=function(e,t){var r=this,n=r.gd,i=r.layers,a=r.radius,o=r.innerRadius,s=r.cx,l=r.cy,u=r.getAngular(t),c=r.angularAxis,f=r.isSmith;f||(r.fillViewInitialKey("angularaxis.rotation",u.rotation),c.setGeometry(),c.setScale());var h=f?function(g){var P=h9(r,f9([0,g.x]));return Math.atan2(P[0]-s,P[1]-l)-Math.PI/2}:function(g){return c.t2g(g.x)};c.type==="linear"&&c.thetaunit==="radians"&&(c.tick0=gw(c.tick0),c.dtick=gw(c.dtick));var d=function(g){return xd(s+a*Math.cos(g),l-a*Math.sin(g))},v=f?function(g){var P=h9(r,f9([0,g.x]));return xd(P[0],P[1])}:function(g){return d(h(g))},_=f?function(g){var P=h9(r,f9([0,g.x])),T=Math.atan2(P[0]-s,P[1]-l)-Math.PI/2;return xd(P[0],P[1])+iy(-gw(T))}:function(g){var P=h(g);return d(P)+iy(-gw(P))},b=f?function(g){return W$t(r,g.x,0,1/0)}:function(g){var P=h(g),T=Math.cos(P),z=Math.sin(P);return"M"+[s+o*T,l-o*z]+"L"+[s+a*T,l-a*z]},p=vp.makeLabelFns(c,0),k=p.labelStandoff,E={};E.xFn=function(g){var P=h(g);return Math.cos(P)*k},E.yFn=function(g){var P=h(g),T=Math.sin(P)>0?.2:1;return-Math.sin(P)*(k+g.fontSize*T)+Math.abs(Math.cos(P))*(g.fontSize*j$t)},E.anchorFn=function(g){var P=h(g),T=Math.cos(P);return Math.abs(T)<.1?"middle":T>0?"start":"end"},E.heightFn=function(g,P,T){var z=h(g);return-.5*(1+Math.sin(z))*T};var S=VJe(u);r.angularTickLayout!==S&&(i["angular-axis"].selectAll("."+c._id+"tick").remove(),r.angularTickLayout=S);var L=f?[1/0].concat(c.tickvals||[]).map(function(g){return vp.tickText(c,g,!0,!1)}):vp.calcTicks(c);f&&(L[0].text="\u221E",L[0].fontSize*=1.75);var x;if(t.gridshape==="linear"?(x=L.map(h),Xc.angleDelta(x[0],x[1])<0&&(x=x.slice().reverse())):x=null,r.vangles=x,c.type==="category"&&(L=L.filter(function(g){return Xc.isAngleInsideSector(h(g),r.sectorInRad)})),c.visible){var C=c.ticks==="inside"?-1:1,M=(c.linewidth||1)/2;vp.drawTicks(n,c,{vals:L,layer:i["angular-axis"],path:"M"+C*M+",0h"+C*c.ticklen,transFn:_,crisp:!1}),vp.drawGrid(n,c,{vals:L,layer:i["angular-grid"],path:b,transFn:Xc.noop,crisp:!1}),vp.drawLabels(n,c,{vals:L,layer:i["angular-axis"],repositionOnUpdate:!0,transFn:v,labelFns:E})}fC(i["angular-line"].select("path"),u.showline,{d:r.pathSubplot(),transform:xd(s,l)}).attr("stroke-width",u.linewidth).call(j$.stroke,u.linecolor)};Nd.updateFx=function(e,t){if(!this.gd._context.staticPlot){var r=!this.isSmith;r&&(this.updateAngularDrag(e),this.updateRadialDrag(e,t,0),this.updateRadialDrag(e,t,1)),this.updateHoverAndMainDrag(e)}};Nd.updateHoverAndMainDrag=function(e){var t=this,r=t.isSmith,n=t.gd,i=t.layers,a=e._zoomlayer,o=Lx.MINZOOM,s=Lx.OFFEDGE,l=t.radius,u=t.innerRadius,c=t.cx,f=t.cy,h=t.cxx,d=t.cyy,v=t.sectorInRad,_=t.vangles,b=t.radialAxis,p=_1.clampTiny,k=_1.findXYatLength,E=_1.findEnclosingVertexAngles,S=Lx.cornerHalfWidth,L=Lx.cornerLen/2,x,C,M=y1.makeDragger(i,"path","maindrag",e.dragmode===!1?"none":"crosshair");pw.select(M).attr("d",t.pathSubplot()).attr("transform",xd(c,f)),M.onmousemove=function(ce){zJe.hover(n,ce,t.id),n._fullLayout._lasthover=M,n._fullLayout._hoversubplot=t.id},M.onmouseout=function(ce){n._dragging||d9.unhover(n,ce)};var g={element:M,gd:n,subplot:t.id,plotinfo:{id:t.id,xaxis:t.xaxis,yaxis:t.yaxis},xaxes:[t.xaxis],yaxes:[t.yaxis]},P,T,z,O,V,G,Z,H,N;function j(ce,Ze){return Math.sqrt(ce*ce+Ze*Ze)}function re(ce,Ze){return j(ce-h,Ze-d)}function oe(ce,Ze){return Math.atan2(d-Ze,ce-h)}function _e(ce,Ze){return[ce*Math.cos(Ze),ce*Math.sin(-Ze)]}function Ee(ce,Ze){if(ce===0)return t.pathSector(2*S);var ut=L/ce,pt=Ze-ut,Zt=Ze+ut,st=Math.max(0,Math.min(ce,l)),lt=st-S,Gt=st+S;return"M"+_e(lt,pt)+"A"+[lt,lt]+" 0,0,0 "+_e(lt,Zt)+"L"+_e(Gt,Zt)+"A"+[Gt,Gt]+" 0,0,1 "+_e(Gt,pt)+"Z"}function Ce(ce,Ze,ut){if(ce===0)return t.pathSector(2*S);var pt=_e(ce,Ze),Zt=_e(ce,ut),st=p((pt[0]+Zt[0])/2),lt=p((pt[1]+Zt[1])/2),Gt,Nt;if(st&<){var Jt=lt/st,sr=-1/Jt,wr=k(S,Jt,st,lt);Gt=k(L,sr,wr[0][0],wr[0][1]),Nt=k(L,sr,wr[1][0],wr[1][1])}else{var cr,$e;lt?(cr=L,$e=S):(cr=S,$e=L),Gt=[[st-cr,lt-$e],[st+cr,lt-$e]],Nt=[[st-cr,lt+$e],[st+cr,lt+$e]]}return"M"+Gt.join("L")+"L"+Nt.reverse().join("L")+"Z"}function me(){z=null,O=null,V=t.pathSubplot(),G=!1;var ce=n._fullLayout[t.id];Z=O$t(ce.bgcolor).getLuminance(),H=y1.makeZoombox(a,Z,c,f,V),H.attr("fill-rule","evenodd"),N=y1.makeCorners(a,c,f),W$(n)}function ie(ce,Ze){return Ze=Math.max(Math.min(Ze,l),u),ceo?(ce-1&&ce===1&&H$t(Ze,n,[t.xaxis],[t.yaxis],t.id,g),ut.indexOf("event")>-1&&zJe.click(n,Ze,t.id)}g.prepFn=function(ce,Ze,ut){var pt=n._fullLayout.dragmode,Zt=M.getBoundingClientRect();n._fullLayout._calcInverseTransform(n);var st=n._fullLayout._invTransform;x=n._fullLayout._invScaleX,C=n._fullLayout._invScaleY;var lt=Xc.apply3DTransform(st)(Ze-Zt.left,ut-Zt.top);if(P=lt[0],T=lt[1],_){var Gt=_1.findPolygonOffset(l,v[0],v[1],_);P+=h+Gt[0],T+=d+Gt[1]}switch(pt){case"zoom":g.clickFn=Re,r||(_?g.moveFn=Fe:g.moveFn=Le,g.doneFn=Pe,me(ce,Ze,ut));break;case"select":case"lasso":G$t(ce,Ze,ut,g,pt);break}},d9.init(g)};Nd.updateRadialDrag=function(e,t,r){var n=this,i=n.gd,a=n.layers,o=n.radius,s=n.innerRadius,l=n.cx,u=n.cy,c=n.radialAxis,f=Lx.radialDragBoxSize,h=f/2;if(!c.visible)return;var d=Px(n.radialAxisAngle),v=c._rl,_=v[0],b=v[1],p=v[r],k=.75*(v[1]-v[0])/(1-n.getHole(t))/o,E,S,L;r?(E=l+(o+h)*Math.cos(d),S=u-(o+h)*Math.sin(d),L="radialdrag"):(E=l+(s-h)*Math.cos(d),S=u-(s-h)*Math.sin(d),L="radialdrag-inner");var x=y1.makeRectDragger(a,L,"crosshair",-h,-h,f,f),C={element:x,gd:i};e.dragmode===!1&&(C.dragmode=!1),fC(pw.select(x),c.visible&&s0!=(r?P>_:P=90||i>90&&a>=450?d=1:s<=0&&u<=0?d=0:d=Math.max(s,u),i<=180&&a>=180||i>180&&a>=540?c=-1:o>=0&&l>=0?c=0:c=Math.min(o,l),i<=270&&a>=270||i>270&&a>=630?f=-1:s>=0&&u>=0?f=0:f=Math.min(s,u),a>=360?h=1:o<=0&&l<=0?h=0:h=Math.max(o,l),[c,f,h,d]}function GJe(e,t){var r=function(i){return Xc.angleDist(e,i)},n=Xc.findIndexOfMin(t,r);return t[n]}function fC(e,t,r){return t?(e.attr("display",null),e.attr(r)):e&&e.attr("display","none"),e}});var Z$=ye((Fwr,KJe)=>{"use strict";var K$t=Lh(),os=Rd(),J$t=Cc().attributes,c0=Dr().extendFlat,jJe=mc().overrideAll,WJe=jJe({color:os.color,showline:c0({},os.showline,{dflt:!0}),linecolor:os.linecolor,linewidth:os.linewidth,showgrid:c0({},os.showgrid,{dflt:!0}),gridcolor:os.gridcolor,gridwidth:os.gridwidth,griddash:os.griddash},"plot","from-root"),XJe=jJe({tickmode:os.minor.tickmode,nticks:os.nticks,tick0:os.tick0,dtick:os.dtick,tickvals:os.tickvals,ticktext:os.ticktext,ticks:os.ticks,ticklen:os.ticklen,tickwidth:os.tickwidth,tickcolor:os.tickcolor,ticklabelstep:os.ticklabelstep,showticklabels:os.showticklabels,labelalias:os.labelalias,minorloglabels:os.minorloglabels,showtickprefix:os.showtickprefix,tickprefix:os.tickprefix,showticksuffix:os.showticksuffix,ticksuffix:os.ticksuffix,showexponent:os.showexponent,exponentformat:os.exponentformat,minexponent:os.minexponent,separatethousands:os.separatethousands,tickfont:os.tickfont,tickangle:os.tickangle,tickformat:os.tickformat,tickformatstops:os.tickformatstops,layer:os.layer},"plot","from-root"),ZJe={visible:c0({},os.visible,{dflt:!0}),type:c0({},os.type,{values:["-","linear","log","date","category"]}),autotypenumbers:os.autotypenumbers,autorangeoptions:{minallowed:os.autorangeoptions.minallowed,maxallowed:os.autorangeoptions.maxallowed,clipmin:os.autorangeoptions.clipmin,clipmax:os.autorangeoptions.clipmax,include:os.autorangeoptions.include,editType:"plot"},autorange:c0({},os.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc"},minallowed:c0({},os.minallowed,{editType:"plot"}),maxallowed:c0({},os.maxallowed,{editType:"plot"}),range:c0({},os.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:os.categoryorder,categoryarray:os.categoryarray,angle:{valType:"angle",editType:"plot"},autotickangles:os.autotickangles,side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot"},title:{text:c0({},os.title.text,{editType:"plot",dflt:""}),font:c0({},os.title.font,{editType:"plot"}),editType:"plot"},hoverformat:os.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};c0(ZJe,WJe,XJe);var YJe={visible:c0({},os.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:os.autotypenumbers,categoryorder:os.categoryorder,categoryarray:os.categoryarray,thetaunit:{valType:"enumerated",values:["radians","degrees"],dflt:"degrees",editType:"calc"},period:{valType:"number",editType:"calc",min:0},direction:{valType:"enumerated",values:["counterclockwise","clockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",editType:"calc"},hoverformat:os.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};c0(YJe,WJe,XJe);KJe.exports={domain:J$t({name:"polar",editType:"plot"}),sector:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],dflt:[0,360],editType:"plot"},hole:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},bgcolor:{valType:"color",editType:"plot",dflt:K$t.background},radialaxis:ZJe,angularaxis:YJe,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var e$e=ye((zwr,QJe)=>{"use strict";var p9=Dr(),$$t=ka(),Q$t=vl(),eQt=k_(),tQt=Id().getSubplotData,rQt=bb(),iQt=S3(),nQt=e_(),aQt=t_(),oQt=aI(),sQt=e4(),lQt=yB(),uQt=I3(),$Je=Z$(),cQt=U$(),g9=l9(),JJe=g9.axisNames;function fQt(e,t,r,n){var i=r("bgcolor");n.bgColor=$$t.combine(i,n.paper_bgcolor);var a=r("sector");r("hole");var o=tQt(n.fullData,g9.name,n.id),s=n.layoutOut,l;function u(H,N){return r(l+"."+H,N)}for(var c=0;c{"use strict";var dQt=Id().getSubplotCalcData,vQt=Dr().counterRegex,pQt=X$(),r$e=l9(),i$e=r$e.attr,yw=r$e.name,t$e=vQt(yw),n$e={};n$e[i$e]={valType:"subplotid",dflt:yw,editType:"calc"};function gQt(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[yw],i=0;i{"use strict";var{hovertemplateAttrs:yQt,texttemplateAttrs:_Qt,templatefallbackAttrs:o$e}=Ll(),y9=Ao().extendFlat,xQt=kg(),f0=pf(),bQt=Gl(),X5=f0.line;s$e.exports={mode:f0.mode,r:{valType:"data_array",editType:"calc+clearAxisTypes"},theta:{valType:"data_array",editType:"calc+clearAxisTypes"},r0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dr:{valType:"number",dflt:1,editType:"calc"},theta0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dtheta:{valType:"number",editType:"calc"},thetaunit:{valType:"enumerated",values:["radians","degrees","gradians"],dflt:"degrees",editType:"calc+clearAxisTypes"},text:f0.text,texttemplate:_Qt({editType:"plot"},{keys:["r","theta","text"]}),texttemplatefallback:o$e({editType:"plot"}),hovertext:f0.hovertext,line:{color:X5.color,width:X5.width,dash:X5.dash,backoff:X5.backoff,shape:y9({},X5.shape,{values:["linear","spline"]}),smoothing:X5.smoothing,editType:"calc"},connectgaps:f0.connectgaps,marker:f0.marker,cliponaxis:y9({},f0.cliponaxis,{dflt:!1}),textposition:f0.textposition,textfont:f0.textfont,fill:y9({},f0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:xQt(),hoverinfo:y9({},bQt.hoverinfo,{flags:["r","theta","text","name"]}),hoveron:f0.hoveron,hovertemplate:yQt(),hovertemplatefallback:o$e(),selected:f0.selected,unselected:f0.unselected}});var x9=ye((Bwr,c$e)=>{"use strict";var _9=Dr(),Z5=Ru(),wQt=$p(),TQt=R0(),l$e=eT(),AQt=D0(),SQt=Ig(),MQt=Sm().PTS_LINESONLY,EQt=hC();function kQt(e,t,r,n){function i(s,l){return _9.coerce(e,t,EQt,s,l)}var a=u$e(e,t,n,i);if(!a){t.visible=!1;return}i("thetaunit"),i("mode",a{"use strict";var CQt=Dr(),f$e=ho();h$e.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o,s;a?(o=a.radialAxis,s=a.angularAxis):(a=n[r.subplot],o=a.radialaxis,s=a.angularaxis);var l=o.c2l(t.r);i.rLabel=f$e.tickText(o,l,!0).text;var u=s.thetaunit==="degrees"?CQt.rad2deg(t.theta):t.theta;return i.thetaLabel=f$e.tickText(s,u,!0).text,i}});var p$e=ye((Uwr,v$e)=>{"use strict";var d$e=Eo(),LQt=fs().BADNUM,PQt=ho(),IQt=F0(),RQt=km(),DQt=z0(),FQt=O0().calcMarkerSize;v$e.exports=function(t,r){for(var n=t._fullLayout,i=r.subplot,a=n[i].radialaxis,o=n[i].angularaxis,s=a.makeCalcdata(r,"r"),l=o.makeCalcdata(r,"theta"),u=r._length,c=new Array(u),f=0;f{"use strict";var zQt=oT(),g$e=fs().BADNUM;m$e.exports=function(t,r,n){for(var i=r.layers.frontplot.select("g.scatterlayer"),a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},l=r.radialAxis,u=r.angularAxis,c=0;c{"use strict";var OQt=cT();function qQt(e,t,r,n){var i=OQt(e,t,r,n);if(!(!i||i[0].index===!1)){var a=i[0];if(a.index===void 0)return i;var o=e.subplot,s=a.cd[a.index],l=a.trace;if(o.isPtInside(s))return a.xLabelVal=void 0,a.yLabelVal=void 0,_$e(s,l,o,a),a.hovertemplate=l.hovertemplate,i}}function _$e(e,t,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle="r",a._hovertitle="\u03B8";var o={};o[t.subplot]={_subplot:r};var s=t._module.formatLabels(e,t,o);n.rLabel=s.rLabel,n.thetaLabel=s.thetaLabel;var l=e.hi||t.hoverinfo,u=[];function c(h,d){u.push(h._hovertitle+": "+d)}if(!t.hovertemplate){var f=l.split("+");f.indexOf("all")!==-1&&(f=["r","theta","text"]),f.indexOf("r")!==-1&&c(i,n.rLabel),f.indexOf("theta")!==-1&&c(a,n.thetaLabel),f.indexOf("text")!==-1&&n.text&&(u.push(n.text),delete n.text),n.extraText=u.join("
")}}x$e.exports={hoverPoints:qQt,makeHoverPointText:_$e}});var w$e=ye((Hwr,b$e)=>{"use strict";b$e.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:m9(),categories:["polar","symbols","showLegend","scatter-like"],attributes:hC(),supplyDefaults:x9().supplyDefaults,colorbar:$d(),formatLabels:b9(),calc:p$e(),plot:y$e(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:w9().hoverPoints,selectPoints:fT(),meta:{}}});var A$e=ye((jwr,T$e)=>{"use strict";T$e.exports=w$e()});var Y$=ye((Zwr,M$e)=>{"use strict";var S$e=hC(),{cliponaxis:Wwr,hoveron:Xwr}=S$e,BQt=lee(S$e,["cliponaxis","hoveron"]),{connectgaps:NQt,line:{color:UQt,dash:VQt,width:GQt},fill:HQt,fillcolor:jQt,marker:WQt,textfont:XQt,textposition:ZQt}=lk();M$e.exports=q1(mg({},BQt),{connectgaps:NQt,fill:HQt,fillcolor:jQt,line:{color:UQt,dash:VQt,editType:"calc",width:GQt},marker:WQt,textfont:XQt,textposition:ZQt})});var C$e=ye((Kwr,k$e)=>{"use strict";var E$e=Dr(),K$=Ru(),YQt=x9().handleRThetaDefaults,KQt=$p(),JQt=R0(),$Qt=D0(),QQt=Ig(),eer=Sm().PTS_LINESONLY,ter=Y$();k$e.exports=function(t,r,n,i){function a(s,l){return E$e.coerce(t,r,ter,s,l)}var o=YQt(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("mode",o{"use strict";var rer=b9();L$e.exports=function(t,r,n){var i=t.i;return"r"in t||(t.r=r._r[i]),"theta"in t||(t.theta=r._theta[i]),rer(t,r,n)}});var R$e=ye(($wr,I$e)=>{"use strict";var ier=F0(),ner=O0().calcMarkerSize,aer=K2(),oer=ho(),ser=ox().TOO_MANY_POINTS;I$e.exports=function(t,r){var n=t._fullLayout,i=r.subplot,a=n[i].radialaxis,o=n[i].angularaxis,s=r._r=a.makeCalcdata(r,"r"),l=r._theta=o.makeCalcdata(r,"theta"),u=r._length,c={};u{"use strict";var ler=NF(),uer=w9().makeHoverPointText;function cer(e,t,r,n){var i=e.cd,a=i[0].t,o=a.r,s=a.theta,l=ler.hoverPoints(e,t,r,n);if(!(!l||l[0].index===!1)){var u=l[0];if(u.index===void 0)return l;var c=e.subplot,f=u.cd[u.index],h=u.trace;if(f.r=o[u.index],f.theta=s[u.index],!!c.isPtInside(f))return u.xLabelVal=void 0,u.yLabelVal=void 0,uer(f,h,c,u),l}}D$e.exports={hoverPoints:cer}});var O$e=ye((e3r,z$e)=>{"use strict";z$e.exports={moduleType:"trace",name:"scatterpolargl",basePlotModule:m9(),categories:["gl","regl","polar","symbols","showLegend","scatter-like"],attributes:Y$(),supplyDefaults:C$e(),colorbar:$d(),formatLabels:P$e(),calc:R$e(),hoverPoints:F$e().hoverPoints,selectPoints:lY(),meta:{}}});var q$e=ye((t3r,J$)=>{"use strict";var fer=GF(),her=Eo(),der=hK(),ver=aY(),T9=K2(),A9=Dr(),per=ox().TOO_MANY_POINTS,ger={};J$.exports=function(t,r,n){if(n.length){var i=r.radialAxis,a=r.angularAxis,o=ver(t,r);return n.forEach(function(s){if(!(!s||!s[0]||!s[0].trace)){var l=s[0],u=l.trace,c=l.t,f=u._length,h=c.r,d=c.theta,v=c.opts,_,b=h.slice(),p=d.slice();for(_=0;_=per&&(v.marker.cluster=c.tree),v.marker&&(v.markerSel.positions=v.markerUnsel.positions=v.marker.positions=k),v.line&&k.length>1&&A9.extendFlat(v.line,T9.linePositions(t,u,k)),v.text&&(A9.extendFlat(v.text,{positions:k},T9.textPosition(t,u,v.text,v.marker)),A9.extendFlat(v.textSel,{positions:k},T9.textPosition(t,u,v.text,v.markerSel)),A9.extendFlat(v.textUnsel,{positions:k},T9.textPosition(t,u,v.text,v.markerUnsel))),v.fill&&!o.fill2d&&(o.fill2d=!0),v.marker&&!o.scatter2d&&(o.scatter2d=!0),v.line&&!o.line2d&&(o.line2d=!0),v.text&&!o.glText&&(o.glText=!0),o.lineOptions.push(v.line),o.fillOptions.push(v.fill),o.markerOptions.push(v.marker),o.markerSelectedOptions.push(v.markerSel),o.markerUnselectedOptions.push(v.markerUnsel),o.textOptions.push(v.text),o.textSelectedOptions.push(v.textSel),o.textUnselectedOptions.push(v.textUnsel),o.selectBatch.push([]),o.unselectBatch.push([]),c.x=E,c.y=S,c.rawx=E,c.rawy=S,c.r=h,c.theta=d,c.positions=k,c._scene=o,c.index=o.count,o.count++}}),der(t,r,n)}};J$.exports.reglPrecompiled=ger});var U$e=ye((r3r,N$e)=>{"use strict";var B$e=O$e();B$e.plot=q$e();N$e.exports=B$e});var G$e=ye((i3r,V$e)=>{"use strict";V$e.exports=U$e()});var $$=ye((n3r,H$e)=>{"use strict";var{hovertemplateAttrs:mer,templatefallbackAttrs:yer}=Ll(),Y5=Ao().extendFlat,Ix=hC(),Rx=Lm();H$e.exports={r:Ix.r,theta:Ix.theta,r0:Ix.r0,dr:Ix.dr,theta0:Ix.theta0,dtheta:Ix.dtheta,thetaunit:Ix.thetaunit,base:Y5({},Rx.base,{}),offset:Y5({},Rx.offset,{}),width:Y5({},Rx.width,{}),text:Y5({},Rx.text,{}),hovertext:Y5({},Rx.hovertext,{}),marker:_er(),hoverinfo:Ix.hoverinfo,hovertemplate:mer(),hovertemplatefallback:yer(),selected:Rx.selected,unselected:Rx.unselected};function _er(){var e=Y5({},Rx.marker);return delete e.cornerradius,e}});var Q$=ye((a3r,j$e)=>{"use strict";j$e.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}});var Z$e=ye((o3r,X$e)=>{"use strict";var W$e=Dr(),xer=x9().handleRThetaDefaults,ber=UI(),wer=$$();X$e.exports=function(t,r,n,i){function a(s,l){return W$e.coerce(t,r,wer,s,l)}var o=xer(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("base"),a("offset"),a("width"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),ber(t,r,a,n,i),W$e.coerceSelectionMarkerOpacity(r,a)}});var K$e=ye((s3r,Y$e)=>{"use strict";var Ter=Dr(),Aer=Q$();Y$e.exports=function(e,t,r){var n={},i;function a(l,u){return Ter.coerce(e[i]||{},t[i],Aer,l,u)}for(var o=0;o{"use strict";var J$e=pv().hasColorscale,$$e=gv(),Ser=Dr().isArrayOrTypedArray,Mer=p4(),Eer=jb().setGroupPositions,ker=z0(),Cer=qa().traceIs,Ler=Dr().extendFlat;function Per(e,t){for(var r=e._fullLayout,n=t.subplot,i=r[n].radialaxis,a=r[n].angularaxis,o=i.makeCalcdata(t,"r"),s=a.makeCalcdata(t,"theta"),l=t._length,u=new Array(l),c=o,f=s,h=0;h{"use strict";var eQe=Oa(),S9=Eo(),K5=Dr(),Rer=So(),tQ=c9();tQe.exports=function(t,r,n){var i=t._context.staticPlot,a=r.xaxis,o=r.yaxis,s=r.radialAxis,l=r.angularAxis,u=Der(r),c=r.layers.frontplot.select("g.barlayer");K5.makeTraceGroups(c,n,"trace bars").each(function(){var f=eQe.select(this),h=K5.ensureSingle(f,"g","points"),d=h.selectAll("g.point").data(K5.identity);d.enter().append("g").style("vector-effect",i?"none":"non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),d.exit().remove(),d.each(function(v){var _=eQe.select(this),b=v.rp0=s.c2p(v.s0),p=v.rp1=s.c2p(v.s1),k=v.thetag0=l.c2g(v.p0),E=v.thetag1=l.c2g(v.p1),S;if(!S9(b)||!S9(p)||!S9(k)||!S9(E)||b===p||k===E)S="M0,0Z";else{var L=s.c2g(v.s1),x=(k+E)/2;v.ct=[a.c2p(L*Math.cos(x)),o.c2p(L*Math.sin(x))],S=u(b,p,k,E)}K5.ensureSingle(_,"path").attr("d",S)}),Rer.setClipUrl(f,r._hasClipOnAxisFalse?r.clipIds.forTraces:null,t)})};function Der(e){var t=e.cxx,r=e.cyy;return e.vangles?function(n,i,a,o){var s,l;K5.angleDelta(a,o)>0?(s=a,l=o):(s=o,l=a);var u=tQ.findEnclosingVertexAngles(s,e.vangles)[0],c=tQ.findEnclosingVertexAngles(l,e.vangles)[1],f=[u,(s+l)/2,c];return tQ.pathPolygonAnnulus(n,i,s,l,f,t,r)}:function(n,i,a,o){return K5.pathAnnulus(n,i,a,o,t,r)}}});var nQe=ye((c3r,iQe)=>{"use strict";var Fer=vf(),rQ=Dr(),zer=MT().getTraceColor,Oer=rQ.fillText,qer=w9().makeHoverPointText,Ber=c9().isPtInsidePolygon;iQe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.subplot,s=o.radialAxis,l=o.angularAxis,u=o.vangles,c=u?Ber:rQ.isPtInsideSector,f=t.maxHoverDistance,h=l._period||2*Math.PI,d=Math.abs(s.g2p(Math.sqrt(r*r+n*n))),v=Math.atan2(n,r);s.range[0]>s.range[1]&&(v+=Math.PI);var _=function(E){return c(d,v,[E.rp0,E.rp1],[E.thetag0,E.thetag1],u)?f+Math.min(1,Math.abs(E.thetag1-E.thetag0)/h)-1+(E.rp1-d)/(E.rp1-E.rp0)-1:1/0};if(Fer.getClosest(i,_,t),t.index!==!1){var b=t.index,p=i[b];t.x0=t.x1=p.ct[0],t.y0=t.y1=p.ct[1];var k=rQ.extendFlat({},p,{r:p.s,theta:p.p});return Oer(p,a,t),qer(k,a,o,t),t.hovertemplate=a.hovertemplate,t.color=zer(a,p),t.xLabelVal=t.yLabelVal=void 0,p.s<0&&(t.idealAlign="left"),[t]}}});var oQe=ye((f3r,aQe)=>{"use strict";aQe.exports={moduleType:"trace",name:"barpolar",basePlotModule:m9(),categories:["polar","bar","showLegend"],attributes:$$(),layoutAttributes:Q$(),supplyDefaults:Z$e(),supplyLayoutDefaults:K$e(),calc:eQ().calc,crossTraceCalc:eQ().crossTraceCalc,plot:rQe(),colorbar:$d(),formatLabels:b9(),style:N0().style,styleOnSelect:N0().styleOnSelect,hoverPoints:nQe(),selectPoints:ET(),meta:{}}});var lQe=ye((h3r,sQe)=>{"use strict";sQe.exports=oQe()});var iQ=ye((d3r,uQe)=>{"use strict";uQe.exports={attr:"subplot",name:"smith",axisNames:["realaxis","imaginaryaxis"],axisName2dataArray:{imaginaryaxis:"imag",realaxis:"real"}}});var nQ=ye((v3r,dQe)=>{"use strict";var Ner=Lh(),Nf=Rd(),Uer=Cc().attributes,Dx=Dr().extendFlat,cQe=mc().overrideAll,fQe=cQe({color:Nf.color,showline:Dx({},Nf.showline,{dflt:!0}),linecolor:Nf.linecolor,linewidth:Nf.linewidth,showgrid:Dx({},Nf.showgrid,{dflt:!0}),gridcolor:Nf.gridcolor,gridwidth:Nf.gridwidth,griddash:Nf.griddash},"plot","from-root"),hQe=cQe({ticklen:Nf.ticklen,tickwidth:Dx({},Nf.tickwidth,{dflt:2}),tickcolor:Nf.tickcolor,showticklabels:Nf.showticklabels,labelalias:Nf.labelalias,showtickprefix:Nf.showtickprefix,tickprefix:Nf.tickprefix,showticksuffix:Nf.showticksuffix,ticksuffix:Nf.ticksuffix,tickfont:Nf.tickfont,tickformat:Nf.tickformat,hoverformat:Nf.hoverformat,layer:Nf.layer},"plot","from-root"),Ver=Dx({visible:Dx({},Nf.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:"data_array",editType:"plot"},tickangle:Dx({},Nf.tickangle,{dflt:90}),ticks:{valType:"enumerated",values:["top","bottom",""],editType:"ticks"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},editType:"calc"},fQe,hQe),Ger=Dx({visible:Dx({},Nf.visible,{dflt:!0}),tickvals:{valType:"data_array",editType:"plot"},ticks:Nf.ticks,editType:"calc"},fQe,hQe);dQe.exports={domain:Uer({name:"smith",editType:"plot"}),bgcolor:{valType:"color",editType:"plot",dflt:Ner.background},realaxis:Ver,imaginaryaxis:Ger,editType:"calc"}});var gQe=ye((p3r,pQe)=>{"use strict";var J5=Dr(),Her=ka(),jer=vl(),Wer=k_(),Xer=Id().getSubplotData,Zer=t_(),Yer=e_(),Ker=e4(),Jer=ym(),$5=nQ(),aQ=iQ(),vQe=aQ.axisNames,$er=etr(function(e){return J5.isTypedArray(e)&&(e=Array.from(e)),e.slice().reverse().map(function(t){return-t}).concat([0]).concat(e)},String);function Qer(e,t,r,n){var i=r("bgcolor");n.bgColor=Her.combine(i,n.paper_bgcolor);var a=Xer(n.fullData,aQ.name,n.id),o=n.layoutOut,s;function l(L,x){return r(s+"."+L,x)}for(var u=0;u{"use strict";var ttr=Id().getSubplotCalcData,rtr=Dr().counterRegex,itr=X$(),yQe=iQ(),_Qe=yQe.attr,_w=yQe.name,mQe=rtr(_w),xQe={};xQe[_Qe]={valType:"subplotid",dflt:_w,editType:"calc"};function ntr(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[_w],i=0;i{"use strict";var{hovertemplateAttrs:otr,texttemplateAttrs:str,templatefallbackAttrs:TQe}=Ll(),M9=Ao().extendFlat,ltr=kg(),h0=pf(),utr=Gl(),Q5=h0.line;AQe.exports={mode:h0.mode,real:{valType:"data_array",editType:"calc+clearAxisTypes"},imag:{valType:"data_array",editType:"calc+clearAxisTypes"},text:h0.text,texttemplate:str({editType:"plot"},{keys:["real","imag","text"]}),texttemplatefallback:TQe({editType:"plot"}),hovertext:h0.hovertext,line:{color:Q5.color,width:Q5.width,dash:Q5.dash,backoff:Q5.backoff,shape:M9({},Q5.shape,{values:["linear","spline"]}),smoothing:Q5.smoothing,editType:"calc"},connectgaps:h0.connectgaps,marker:h0.marker,cliponaxis:M9({},h0.cliponaxis,{dflt:!1}),textposition:h0.textposition,textfont:h0.textfont,fill:M9({},h0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:ltr(),hoverinfo:M9({},utr.hoverinfo,{flags:["real","imag","text","name"]}),hoveron:h0.hoveron,hovertemplate:otr(),hovertemplatefallback:TQe(),selected:h0.selected,unselected:h0.unselected}});var EQe=ye((y3r,MQe)=>{"use strict";var E9=Dr(),eS=Ru(),ctr=$p(),ftr=R0(),SQe=eT(),htr=D0(),dtr=Ig(),vtr=Sm().PTS_LINESONLY,ptr=oQ();MQe.exports=function(t,r,n,i){function a(l,u){return E9.coerce(t,r,ptr,l,u)}var o=gtr(t,r,i,a);if(!o){r.visible=!1;return}a("mode",o{"use strict";var kQe=ho();CQe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.realLabel=kQe.tickText(a.radialAxis,t.real,!0).text,i.imagLabel=kQe.tickText(a.angularAxis,t.imag,!0).text,i}});var RQe=ye((x3r,IQe)=>{"use strict";var PQe=Eo(),mtr=fs().BADNUM,ytr=F0(),_tr=km(),xtr=z0(),btr=O0().calcMarkerSize;IQe.exports=function(t,r){for(var n=t._fullLayout,i=r.subplot,a=n[i].realaxis,o=n[i].imaginaryaxis,s=a.makeCalcdata(r,"real"),l=o.makeCalcdata(r,"imag"),u=r._length,c=new Array(u),f=0;f{"use strict";var wtr=oT(),DQe=fs().BADNUM,Ttr=H$(),Atr=Ttr.smith;FQe.exports=function(t,r,n){for(var i=r.layers.frontplot.select("g.scatterlayer"),a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},l=0;l{"use strict";var Str=cT();function Mtr(e,t,r,n){var i=Str(e,t,r,n);if(!(!i||i[0].index===!1)){var a=i[0];if(a.index===void 0)return i;var o=e.subplot,s=a.cd[a.index],l=a.trace;if(o.isPtInside(s))return a.xLabelVal=void 0,a.yLabelVal=void 0,OQe(s,l,o,a),a.hovertemplate=l.hovertemplate,i}}function OQe(e,t,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle="real",a._hovertitle="imag";var o={};o[t.subplot]={_subplot:r};var s=t._module.formatLabels(e,t,o);n.realLabel=s.realLabel,n.imagLabel=s.imagLabel;var l=e.hi||t.hoverinfo,u=[];function c(h,d){u.push(h._hovertitle+": "+d)}if(!t.hovertemplate){var f=l.split("+");f.indexOf("all")!==-1&&(f=["real","imag","text"]),f.indexOf("real")!==-1&&c(i,n.realLabel),f.indexOf("imag")!==-1&&c(a,n.imagLabel),f.indexOf("text")!==-1&&n.text&&(u.push(n.text),delete n.text),n.extraText=u.join("
")}}qQe.exports={hoverPoints:Mtr,makeHoverPointText:OQe}});var UQe=ye((T3r,NQe)=>{"use strict";NQe.exports={moduleType:"trace",name:"scattersmith",basePlotModule:wQe(),categories:["smith","symbols","showLegend","scatter-like"],attributes:oQ(),supplyDefaults:EQe(),colorbar:$d(),formatLabels:LQe(),calc:RQe(),plot:zQe(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:BQe().hoverPoints,selectPoints:fT(),meta:{}}});var GQe=ye((A3r,VQe)=>{"use strict";VQe.exports=UQe()});var kv=ye((S3r,jQe)=>{var C9=Oh();function HQe(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}C9(HQe.prototype,{instance:function(e,t){e=(e||"gregorian").toLowerCase(),t=t||"";var r=this._localCals[e+"-"+t];if(!r&&this.calendars[e]&&(r=new this.calendars[e](t),this._localCals[e+"-"+t]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return r},newDate:function(e,t,r,n,i){return n=(e!=null&&e.year?e.calendar():typeof n=="string"?this.instance(n,i):n)||this.instance(),n.newDate(e,t,r)},substituteDigits:function(e){return function(t){return(t+"").replace(/[0-9]/g,function(r){return e[r]})}},substituteChineseDigits:function(e,t){return function(r){for(var n="",i=0;r>0;){var a=r%10;n=(a===0?"":e[a]+t[i])+n,i++,r=Math.floor(r/10)}return n.indexOf(e[1]+t[1])===0&&(n=n.substr(1)),n||e[0]}}});function sQ(e,t,r,n){if(this._calendar=e,this._year=t,this._month=r,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function k9(e,t){return e=""+e,"000000".substring(0,t-e.length)+e}C9(sQ.prototype,{newDate:function(e,t,r){return this._calendar.newDate(e==null?this:e,t,r)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,t,r){if(!this._calendar.isValid(e,t,r))throw(Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=t,this._day=r,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,t){return this._calendar.add(this,e,t)},set:function(e,t){return this._calendar.set(this,e,t)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(Gs.local.differentCalendars||Gs.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var t=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return t===0?0:t<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+k9(Math.abs(this.year()),4)+"-"+k9(this.month(),2)+"-"+k9(this.day(),2)}});function lQ(){this.shortYearCutoff="+10"}C9(lQ.prototype,{_validateLevel:0,newDate:function(e,t,r){return e==null?this.today():(e.year&&(this._validate(e,t,r,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate),r=e.day(),t=e.month(),e=e.year()),new sQ(this,e,t,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var t=this._validate(e,this.minMonth,this.minDay,Gs.local.invalidYear||Gs.regionalOptions[""].invalidYear);return t.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Gs.local.invalidYear||Gs.regionalOptions[""].invalidYear);return(t.year()<0?"-":"")+k9(Math.abs(t.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Gs.local.invalidYear||Gs.regionalOptions[""].invalidYear),12},monthOfYear:function(e,t){var r=this._validate(e,t,this.minDay,Gs.local.invalidMonth||Gs.regionalOptions[""].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(e,t){var r=(t+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,r,this.minDay,Gs.local.invalidMonth||Gs.regionalOptions[""].invalidMonth),r},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Gs.local.invalidYear||Gs.regionalOptions[""].invalidYear);return this.leapYear(t)?366:365},dayOfYear:function(e,t,r){var n=this._validate(e,t,r,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(e,t,r){return this._validate(e,t,r,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate),{}},add:function(e,t,r){return this._validate(e,this.minMonth,this.minDay,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,t,r),t,r)},_add:function(e,t,r){if(this._validateLevel++,r==="d"||r==="w"){var n=e.toJD()+t*(r==="w"?this.daysInWeek():1),i=e.calendar().fromJD(n);return this._validateLevel--,[i.year(),i.month(),i.day()]}try{var a=e.year()+(r==="y"?t:0),o=e.monthOfYear()+(r==="m"?t:0),i=e.day(),s=function(c){for(;of-1+c.minMonth;)a++,o-=f,f=c.monthsInYear(a)};r==="y"?(e.month()!==this.fromMonthOfYear(a,o)&&(o=this.newDate(a,e.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(a)),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o)))):r==="m"&&(s(this),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o))));var l=[a,this.fromMonthOfYear(a,o),i];return this._validateLevel--,l}catch(u){throw this._validateLevel--,u}},_correctAdd:function(e,t,r,n){if(!this.hasYearZero&&(n==="y"||n==="m")&&(t[0]===0||e.year()>0!=t[0]>0)){var i={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],a=r<0?-1:1;t=this._add(e,r*i[0]+a*i[1],i[2])}return e.date(t[0],t[1],t[2])},set:function(e,t,r){this._validate(e,this.minMonth,this.minDay,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate);var n=r==="y"?t:e.year(),i=r==="m"?t:e.month(),a=r==="d"?t:e.day();return(r==="y"||r==="m")&&(a=Math.min(a,this.daysInMonth(n,i))),e.date(n,i,a)},isValid:function(e,t,r){this._validateLevel++;var n=this.hasYearZero||e!==0;if(n){var i=this.newDate(e,t,this.minDay);n=t>=this.minMonth&&t-this.minMonth=this.minDay&&r-this.minDay13.5?13:1),u=i-(l>2.5?4716:4715);return u<=0&&u--,this.newDate(u,l,s)},toJSDate:function(e,t,r){var n=this._validate(e,t,r,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate),i=new Date(n.year(),n.month()-1,n.day());return i.setHours(0),i.setMinutes(0),i.setSeconds(0),i.setMilliseconds(0),i.setHours(i.getHours()>12?i.getHours()+2:0),i},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var Gs=jQe.exports=new HQe;Gs.cdate=sQ;Gs.baseCalendar=lQ;Gs.calendars.gregorian=uQ});var WQe=ye(()=>{var cQ=Oh(),Ud=kv();cQ(Ud.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});Ud.local=Ud.regionalOptions[""];cQ(Ud.cdate.prototype,{formatDate:function(e,t){return typeof e!="string"&&(t=e,e=""),this._calendar.formatDate(e||"",this,t)}});cQ(Ud.baseCalendar.prototype,{UNIX_EPOCH:Ud.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:Ud.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,t,r){if(typeof e!="string"&&(r=t,t=e,e=""),!t)return"";if(t.calendar()!==this)throw Ud.local.invalidFormat||Ud.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,r=r||{};for(var n=r.dayNamesShort||this.local.dayNamesShort,i=r.dayNames||this.local.dayNames,a=r.monthNumbers||this.local.monthNumbers,o=r.monthNamesShort||this.local.monthNamesShort,s=r.monthNames||this.local.monthNames,l=r.calculateWeek||this.local.calculateWeek,u=function(S,L){for(var x=1;E+x1},c=function(S,L,x,C){var M=""+L;if(u(S,C))for(;M.length1},k=function(z,O){var V=p(z,O),G=[2,3,V?4:2,V?4:2,10,11,20]["oyYJ@!".indexOf(z)+1],Z=new RegExp("^-?\\d{1,"+G+"}"),H=t.substring(M).match(Z);if(!H)throw(Ud.local.missingNumberAt||Ud.regionalOptions[""].missingNumberAt).replace(/\{0\}/,M);return M+=H[0].length,parseInt(H[0],10)},E=this,S=function(){if(typeof s=="function"){p("m");var z=s.call(E,t.substring(M));return M+=z.length,z}return k("m")},L=function(z,O,V,G){for(var Z=p(z,G)?V:O,H=0;H-1){h=1,d=v;for(var T=this.daysInMonth(f,h);d>T;T=this.daysInMonth(f,h))h++,d-=T}return c>-1?this.fromJD(c):this.newDate(f,h,d)},determineDate:function(e,t,r,n,i){r&&typeof r!="object"&&(i=n,n=r,r=null),typeof n!="string"&&(i=n,n="");var a=this,o=function(s){try{return a.parseDate(n,s,i)}catch(f){}s=s.toLowerCase();for(var l=(s.match(/^c/)&&r?r.newDate():null)||a.today(),u=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,c=u.exec(s);c;)l.add(parseInt(c[1],10),c[2]||"d"),c=u.exec(s);return l};return t=t?t.newDate():null,e=e==null?t:typeof e=="string"?o(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?t:a.today().add(e,"d"):a.newDate(e),e}})});var XQe=ye(()=>{var Fx=kv(),Etr=Oh(),fQ=Fx.instance();function L9(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}L9.prototype=new Fx.baseCalendar;Etr(L9.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,t){if(typeof e=="string"){var r=e.match(Ctr);return r?r[0]:""}var n=this._validateYear(e),i=e.month(),a=""+this.toChineseMonth(n,i);return t&&a.length<2&&(a="0"+a),this.isIntercalaryMonth(n,i)&&(a+="i"),a},monthNames:function(e){if(typeof e=="string"){var t=e.match(Ltr);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},monthNamesShort:function(e){if(typeof e=="string"){var t=e.match(Ptr);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},parseMonth:function(e,t){e=this._validateYear(e);var r=parseInt(t),n;if(isNaN(r))t[0]==="\u95F0"&&(n=!0,t=t.substring(1)),t[t.length-1]==="\u6708"&&(t=t.substring(0,t.length-1)),r=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(t);else{var i=t[t.length-1];n=i==="i"||i==="I"}var a=this.toMonthIndex(e,r,n);return a},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,t){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw t.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,t,r){var n=this.intercalaryMonth(e),i=r&&t!==n;if(i||t<1||t>12)throw Fx.local.invalidMonth.replace(/\{0\}/,this.local.name);var a;return n?!r&&t<=n?a=t-1:a=t:a=t-1,a},toChineseMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e),n=r?12:11;if(t<0||t>n)throw Fx.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return r?t>13;return r},isIntercalaryMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e);return!!r&&r===t},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,t,r){var n=this._validateYear(e,Fx.local.invalidyear),i=Ox[n-Ox[0]],a=i>>9&4095,o=i>>5&15,s=i&31,l;l=fQ.newDate(a,o,s),l.add(4-(l.dayOfWeek()||7),"d");var u=this.toJD(e,t,r)-l.toJD();return 1+Math.floor(u/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,t){e.year&&(t=e.month(),e=e.year()),e=this._validateYear(e);var r=zx[e-zx[0]],n=r>>13,i=n?12:11;if(t>i)throw Fx.local.invalidMonth.replace(/\{0\}/,this.local.name);var a=r&1<<12-t?30:29;return a},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,a,r,Fx.local.invalidDate);e=this._validateYear(n.year()),t=n.month(),r=n.day();var i=this.isIntercalaryMonth(e,t),a=this.toChineseMonth(e,t),o=Rtr(e,a,r,i);return fQ.toJD(o.year,o.month,o.day)},fromJD:function(e){var t=fQ.fromJD(e),r=Itr(t.year(),t.month(),t.day()),n=this.toMonthIndex(r.year,r.month,r.isIntercalary);return this.newDate(r.year,n,r.day)},fromString:function(e){var t=e.match(ktr),r=this._validateYear(+t[1]),n=+t[2],i=!!t[3],a=this.toMonthIndex(r,n,i),o=+t[4];return this.newDate(r,a,o)},add:function(e,t,r){var n=e.year(),i=e.month(),a=this.isIntercalaryMonth(n,i),o=this.toChineseMonth(n,i),s=Object.getPrototypeOf(L9.prototype).add.call(this,e,t,r);if(r==="y"){var l=s.year(),u=s.month(),c=this.isIntercalaryMonth(l,o),f=a&&c?this.toMonthIndex(l,o,!0):this.toMonthIndex(l,o,!1);f!==u&&s.month(f)}return s}});var ktr=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,Ctr=/^\d?\d[iI]?/m,Ltr=/^闰?十?[一二三四五六七八九]?月/m,Ptr=/^闰?十?[一二三四五六七八九]?/m;Fx.calendars.chinese=L9;var zx=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],Ox=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function Itr(e,t,r,n){var i,a;if(typeof e=="object")i=e,a=t||{};else{var o=typeof e=="number"&&e>=1888&&e<=2111;if(!o)throw new Error("Solar year outside range 1888-2111");var s=typeof t=="number"&&t>=1&&t<=12;if(!s)throw new Error("Solar month outside range 1 - 12");var l=typeof r=="number"&&r>=1&&r<=31;if(!l)throw new Error("Solar day outside range 1 - 31");i={year:e,month:t,day:r},a=n||{}}var u=Ox[i.year-Ox[0]],c=i.year<<9|i.month<<5|i.day;a.year=c>=u?i.year:i.year-1,u=Ox[a.year-Ox[0]];var f=u>>9&4095,h=u>>5&15,d=u&31,v,_=new Date(f,h-1,d),b=new Date(i.year,i.month-1,i.day);v=Math.round((b-_)/(24*3600*1e3));var p=zx[a.year-zx[0]],k;for(k=0;k<13;k++){var E=p&1<<12-k?30:29;if(v>13;return!S||k=1888&&e<=2111;if(!s)throw new Error("Lunar year outside range 1888-2111");var l=typeof t=="number"&&t>=1&&t<=12;if(!l)throw new Error("Lunar month outside range 1 - 12");var u=typeof r=="number"&&r>=1&&r<=30;if(!u)throw new Error("Lunar day outside range 1 - 30");var c;typeof n=="object"?(c=!1,a=n):(c=!!n,a=i||{}),o={year:e,month:t,day:r,isIntercalary:c}}var f;f=o.day-1;var h=zx[o.year-zx[0]],d=h>>13,v;d&&(o.month>d||o.isIntercalary)?v=o.month:v=o.month-1;for(var _=0;_>9&4095,E=p>>5&15,S=p&31,L=new Date(k,E-1,S+f);return a.year=L.getFullYear(),a.month=1+L.getMonth(),a.day=L.getDate(),a}});var ZQe=ye(()=>{var xw=kv(),Dtr=Oh();function hQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}hQ.prototype=new xw.baseCalendar;Dtr(hQ.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,xw.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,xw.local.invalidYear||xw.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,xw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,xw.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-(n-1)*30+1;return this.newDate(r,n,i)}});xw.calendars.coptic=hQ});var YQe=ye(()=>{var x1=kv(),Ftr=Oh();function dQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}dQ.prototype=new x1.baseCalendar;Ftr(dQ.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),400},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/8)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,x1.local.invalidMonth);return this.daysPerMonth[r.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return(n.day()+1)%8},weekDay:function(e,t,r){var n=this.dayOfWeek(e,t,r);return n>=2&&n<=6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return{century:ztr[Math.floor((n.year()-1)/100)+1]||""}},toJD:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return e=n.year()+(n.year()<0?1:0),t=n.month(),r=n.day(),r+(t>1?16:0)+(t>2?(t-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var t=Math.floor(e/400)+1;e-=(t-1)*400,e+=e>15?16:0;var r=Math.floor(e/32)+1,n=e-(r-1)*32+1;return this.newDate(t<=0?t-1:t,r,n)}});var ztr={20:"Fruitbat",21:"Anchovy"};x1.calendars.discworld=dQ});var KQe=ye(()=>{var bw=kv(),Otr=Oh();function vQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}vQ.prototype=new bw.baseCalendar;Otr(vQ.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,bw.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,bw.local.invalidYear||bw.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,bw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,bw.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-(n-1)*30+1;return this.newDate(r,n,i)}});bw.calendars.ethiopian=vQ});var JQe=ye(()=>{var qx=kv(),qtr=Oh();function pQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}pQ.prototype=new qx.baseCalendar;qtr(pQ.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,qx.local.invalidYear);return this._leapYear(t.year())},_leapYear:function(e){return e=e<0?e+1:e,P9(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,qx.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,qx.local.invalidYear);return e=t.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,qx.local.invalidMonth),t===12&&this.leapYear(e)||t===8&&P9(this.daysInYear(e),10)===5?30:t===9&&P9(this.daysInYear(e),10)===3?29:this.daysPerMonth[t-1]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,qx.local.invalidDate);return{yearType:(this.leapYear(n)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(n)%10-3]}},toJD:function(e,t,r){var n=this._validate(e,t,r,qx.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=e<=0?e+1:e,a=this.jdEpoch+this._delay1(i)+this._delay2(i)+r+1;if(t<7){for(var o=7;o<=this.monthsInYear(e);o++)a+=this.daysInMonth(e,o);for(var o=1;o=this.toJD(t===-1?1:t+1,7,1);)t++;for(var r=ethis.toJD(t,r,this.daysInMonth(t,r));)r++;var n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}});function P9(e,t){return e-t*Math.floor(e/t)}qx.calendars.hebrew=pQ});var $Qe=ye(()=>{var dC=kv(),Btr=Oh();function gQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}gQ.prototype=new dC.baseCalendar;Btr(gQ.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,dC.local.invalidYear);return(t.year()*11+14)%30<11},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,dC.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,dC.local.invalidDate);return e=n.year(),t=n.month(),r=n.day(),e=e<=0?e+1:e,r+Math.ceil(29.5*(t-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=Math.floor((30*(e-this.jdEpoch)+10646)/10631);t=t<=0?t-1:t;var r=Math.min(12,Math.ceil((e-29-this.toJD(t,1,1))/29.5)+1),n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}});dC.calendars.islamic=gQ});var QQe=ye(()=>{var vC=kv(),Ntr=Oh();function mQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}mQ.prototype=new vC.baseCalendar;Ntr(mQ.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,vC.local.invalidYear),r=t.year()<0?t.year()+1:t.year();return r%4===0},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,vC.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,vC.local.invalidDate);return e=n.year(),t=n.month(),r=n.day(),e<0&&e++,t<=2&&(e--,t+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(t+1))+r-1524.5},fromJD:function(e){var t=Math.floor(e+.5),r=t+1524,n=Math.floor((r-122.1)/365.25),i=Math.floor(365.25*n),a=Math.floor((r-i)/30.6001),o=a-Math.floor(a<14?1:13),s=n-Math.floor(o>2?4716:4715),l=r-i-Math.floor(30.6001*a);return s<=0&&s--,this.newDate(s,o,l)}});vC.calendars.julian=mQ});var tet=ye(()=>{var ug=kv(),Utr=Oh();function _Q(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}_Q.prototype=new ug.baseCalendar;Utr(_Q.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,ug.local.invalidYear),!1},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,ug.local.invalidYear);e=t.year();var r=Math.floor(e/400);e=e%400,e+=e<0?400:0;var n=Math.floor(e/20);return r+"."+n+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var t=0,r=0;r19||r>0&&n<0)throw"Invalid Mayan year";t=t*20+n}return t},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ug.local.invalidYear),18},weekOfYear:function(e,t,r){return this._validate(e,t,r,ug.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ug.local.invalidYear),360},daysInMonth:function(e,t){return this._validate(e,t,this.minDay,ug.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,ug.local.invalidDate);return n.day()},weekDay:function(e,t,r){return this._validate(e,t,r,ug.local.invalidDate),!0},extraInfo:function(e,t,r){var n=this._validate(e,t,r,ug.local.invalidDate),i=n.toJD(),a=this._toHaab(i),o=this._toTzolkin(i);return{haabMonthName:this.local.haabMonths[a[0]-1],haabMonth:a[0],haabDay:a[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(e){e-=this.jdEpoch;var t=yQ(e+8+17*20,365);return[Math.floor(t/20)+1,yQ(t,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[eet(e+20,20),eet(e+4,13)]},toJD:function(e,t,r){var n=this._validate(e,t,r,ug.local.invalidDate);return n.day()+n.month()*20+n.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var t=Math.floor(e/360);e=e%360,e+=e<0?360:0;var r=Math.floor(e/20),n=e%20;return this.newDate(t,r,n)}});function yQ(e,t){return e-t*Math.floor(e/t)}function eet(e,t){return yQ(e-1,t)+1}ug.calendars.mayan=_Q});var iet=ye(()=>{var ww=kv(),Vtr=Oh();function xQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}xQ.prototype=new ww.baseCalendar;var ret=ww.instance("gregorian");Vtr(xQ.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,ww.local.invalidYear||ww.regionalOptions[""].invalidYear);return ret.leapYear(t.year()+(t.year()<1?1:0)+1469)},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,ww.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,ww.local.invalidMonth),i=n.year();i<0&&i++;for(var a=n.day(),o=1;o=this.toJD(t+1,1,1);)t++;for(var r=e-Math.floor(this.toJD(t,1,1)+.5)+1,n=1;r>this.daysInMonth(t,n);)r-=this.daysInMonth(t,n),n++;return this.newDate(t,n,r)}});ww.calendars.nanakshahi=xQ});var net=ye(()=>{var Tw=kv(),Gtr=Oh();function bQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}bQ.prototype=new Tw.baseCalendar;Gtr(bQ.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Tw.local.invalidYear);if(e=t.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var r=0,n=this.minMonth;n<=12;n++)r+=this.NEPALI_CALENDAR_DATA[e][n];return r},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,Tw.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[t-1]:this.NEPALI_CALENDAR_DATA[e][t]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},toJD:function(e,t,r){var n=this._validate(e,t,r,Tw.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=Tw.instance(),a=0,o=t,s=e;this._createMissingCalendarData(e);var l=e-(o>9||o===9&&r>=this.NEPALI_CALENDAR_DATA[s][0]?56:57);for(t!==9&&(a=r,o--);o!==9;)o<=0&&(o=12,s--),a+=this.NEPALI_CALENDAR_DATA[s][o],o--;return t===9?(a+=r-this.NEPALI_CALENDAR_DATA[s][0],a<0&&(a+=i.daysInYear(l))):a+=this.NEPALI_CALENDAR_DATA[s][9]-this.NEPALI_CALENDAR_DATA[s][0],i.newDate(l,1,1).add(a,"d").toJD()},fromJD:function(e){var t=Tw.instance(),r=t.fromJD(e),n=r.year(),i=r.dayOfYear(),a=n+56;this._createMissingCalendarData(a);for(var o=9,s=this.NEPALI_CALENDAR_DATA[a][0],l=this.NEPALI_CALENDAR_DATA[a][o]-s+1;i>l;)o++,o>12&&(o=1,a++),l+=this.NEPALI_CALENDAR_DATA[a][o];var u=this.NEPALI_CALENDAR_DATA[a][o]-(l-i);return this.newDate(a,o,u)},_createMissingCalendarData:function(e){var t=this.daysPerMonth.slice(0);t.unshift(17);for(var r=e-1;r{var tS=kv(),Htr=Oh();function R9(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function I9(e){var t=e-475;e<0&&t++;var r=.242197,n=r*t,i=r*(t+1),a=n-Math.floor(n),o=i-Math.floor(i);return a>o}R9.prototype=new tS.baseCalendar;Htr(R9.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,tS.local.invalidYear);return I9(t.year())},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-((n.dayOfWeek()+1)%7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,tS.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,tS.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=0;if(e>0)for(var a=1;a0?e-1:e)*365+i+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=475+(e-this.toJD(475,1,1))/365.242197,r=Math.floor(t);r<=0&&r--,e>this.toJD(r,12,I9(r)?30:29)&&(r++,r===0&&r++);var n=e-this.toJD(r,1,1)+1,i=n<=186?Math.ceil(n/31):Math.ceil((n-6)/30),a=e-this.toJD(r,i,1)+1;return this.newDate(r,i,a)}});tS.calendars.persian=R9;tS.calendars.jalali=R9});var oet=ye(()=>{var Aw=kv(),jtr=Oh(),D9=Aw.instance();function wQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}wQ.prototype=new Aw.baseCalendar;jtr(wQ.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Aw.local.invalidYear),r=this._t2gYear(t.year());return D9.leapYear(r)},weekOfYear:function(i,t,r){var n=this._validate(i,this.minMonth,this.minDay,Aw.local.invalidYear),i=this._t2gYear(n.year());return D9.weekOfYear(i,n.month(),n.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Aw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Aw.local.invalidDate),i=this._t2gYear(n.year());return D9.toJD(i,n.month(),n.day())},fromJD:function(e){var t=D9.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Aw.calendars.taiwan=wQ});var set=ye(()=>{var Sw=kv(),Wtr=Oh(),F9=Sw.instance();function TQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}TQ.prototype=new Sw.baseCalendar;Wtr(TQ.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Sw.local.invalidYear),r=this._t2gYear(t.year());return F9.leapYear(r)},weekOfYear:function(i,t,r){var n=this._validate(i,this.minMonth,this.minDay,Sw.local.invalidYear),i=this._t2gYear(n.year());return F9.weekOfYear(i,n.month(),n.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Sw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Sw.local.invalidDate),i=this._t2gYear(n.year());return F9.toJD(i,n.month(),n.day())},fromJD:function(e){var t=F9.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});Sw.calendars.thai=TQ});var uet=ye(()=>{var Mw=kv(),Xtr=Oh();function AQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}AQ.prototype=new Mw.baseCalendar;Xtr(AQ.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Mw.local.invalidYear);return this.daysInYear(t.year())===355},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var t=0,r=1;r<=12;r++)t+=this.daysInMonth(e,r);return t},daysInMonth:function(e,t){for(var r=this._validate(e,t,this.minDay,Mw.local.invalidMonth),n=r.toJD()-24e5+.5,i=0,a=0;an)return Bx[i]-Bx[i-1];i++}return 30},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,Mw.local.invalidDate),i=12*(n.year()-1)+n.month()-15292,a=n.day()+Bx[i-1]-1;return a+24e5-.5},fromJD:function(e){for(var t=e-24e5+.5,r=0,n=0;nt);n++)r++;var i=r+15292,a=Math.floor((i-1)/12),o=a+1,s=i-12*a,l=t-Bx[r-1]+1;return this.newDate(o,s,l)},isValid:function(e,t,r){var n=Mw.baseCalendar.prototype.isValid.apply(this,arguments);return n&&(e=e.year!=null?e.year:e,n=e>=1276&&e<=1500),n},_validate:function(e,t,r,n){var i=Mw.baseCalendar.prototype._validate.apply(this,arguments);if(i.year<1276||i.year>1500)throw n.replace(/\{0\}/,this.local.name);return i}});Mw.calendars.ummalqura=AQ;var Bx=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var fet=ye((rTr,cet)=>{"use strict";cet.exports=kv();WQe();XQe();ZQe();YQe();KQe();JQe();$Qe();QQe();tet();iet();net();aet();oet();set();uet()});var yet=ye((iTr,met)=>{"use strict";var det=fet(),pC=Dr(),vet=fs(),Ztr=vet.EPOCHJD,Ytr=vet.ONEDAY,EQ={valType:"enumerated",values:pC.sortObjectKeys(det.calendars),editType:"calc",dflt:"gregorian"},pet=function(e,t,r,n){var i={};return i[r]=EQ,pC.coerce(e,t,i,r,n)},Ktr=function(e,t,r,n){for(var i=0;i{"use strict";_et.exports=yet()});var rrr=ye((aTr,wet)=>{var bet=rye();bet.register([a1e(),W1e(),oxe(),Exe(),Uxe(),Obe(),Kbe(),O2e(),hwe(),Zwe(),F3e(),XEe(),zke(),E6e(),pLe(),WLe(),gPe(),UIe(),o8e(),A8e(),z8e(),K8e(),fRe(),ERe(),tFe(),bFe(),qBe(),qNe(),ZUe(),xVe(),LGe(),jGe(),pHe(),Eje(),Vje(),hWe(),bXe(),jXe(),MZe(),ZYe(),yKe(),BKe(),fJe(),SJe(),A$e(),G$e(),lQe(),GQe(),xet()]);wet.exports=bet});return rrr();})(); +`),We=Xe.createShader(Xe.FRAGMENT_SHADER);if(Xe.isContextLost())return void(this.failedToCreate=!0);if(Xe.shaderSource(We,Be),Xe.compileShader(We),!Xe.getShaderParameter(We,Xe.COMPILE_STATUS))throw new Error(`Could not compile fragment shader: ${Xe.getShaderInfoLog(We)}`);Xe.attachShader(this.program,We);let it=Xe.createShader(Xe.VERTEX_SHADER);if(Xe.isContextLost())return void(this.failedToCreate=!0);if(Xe.shaderSource(it,et),Xe.compileShader(it),!Xe.getShaderParameter(it,Xe.COMPILE_STATUS))throw new Error(`Could not compile vertex shader: ${Xe.getShaderInfoLog(it)}`);Xe.attachShader(this.program,it),this.attributes={};let Ft={};this.numAttributes=Yt.length;for(let Ht=0;Ht({u_depth:new a.aH(Ht,tr.u_depth),u_terrain:new a.aH(Ht,tr.u_terrain),u_terrain_dim:new a.aI(Ht,tr.u_terrain_dim),u_terrain_matrix:new a.aJ(Ht,tr.u_terrain_matrix),u_terrain_unpack:new a.aK(Ht,tr.u_terrain_unpack),u_terrain_exaggeration:new a.aI(Ht,tr.u_terrain_exaggeration)}))(w,Ft),this.binderUniforms=Q?Q.getUniforms(w,Ft):[]}draw(w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir,ve,be,De,Be,et){let We=w.gl;if(this.failedToCreate)return;if(w.program.set(this.program),w.setDepthMode(Q),w.setStencilMode(ee),w.setColorMode(le),w.setCullFace(qe),ot){w.activeTexture.set(We.TEXTURE2),We.bindTexture(We.TEXTURE_2D,ot.depthTexture),w.activeTexture.set(We.TEXTURE3),We.bindTexture(We.TEXTURE_2D,ot.texture);for(let Ft in this.terrainUniforms)this.terrainUniforms[Ft].set(ot[Ft])}for(let Ft in this.fixedUniforms)this.fixedUniforms[Ft].set(Xe[Ft]);be&&be.setUniforms(w,this.binderUniforms,Ir,{zoom:ve});let it=0;switch(B){case We.LINES:it=2;break;case We.TRIANGLES:it=3;break;case We.LINE_STRIP:it=1}for(let Ft of xr.get()){let Ht=Ft.vaos||(Ft.vaos={});(Ht[Tt]||(Ht[Tt]=new kr)).bind(w,this,Yt,be?be.getPaintVertexBuffers():[],Kt,Ft.vertexOffset,De,Be,et),We.drawElements(B,Ft.primitiveLength*it,We.UNSIGNED_SHORT,Ft.primitiveOffset*it*2)}}}function An(ue,w,B){let Q=1/In(B,1,w.transform.tileZoom),ee=Math.pow(2,B.tileID.overscaledZ),le=B.tileSize*Math.pow(2,w.transform.tileZoom)/ee,qe=le*(B.tileID.canonical.x+B.tileID.wrap*ee),Xe=le*B.tileID.canonical.y;return{u_image:0,u_texsize:B.imageAtlasTexture.size,u_scale:[Q,ue.fromScale,ue.toScale],u_fade:ue.t,u_pixel_coord_upper:[qe>>16,Xe>>16],u_pixel_coord_lower:[65535&qe,65535&Xe]}}let Mn=(ue,w,B,Q)=>{let ee=w.style.light,le=ee.properties.get("position"),qe=[le.x,le.y,le.z],Xe=function(){var Tt=new a.A(9);return a.A!=Float32Array&&(Tt[1]=0,Tt[2]=0,Tt[3]=0,Tt[5]=0,Tt[6]=0,Tt[7]=0),Tt[0]=1,Tt[4]=1,Tt[8]=1,Tt}();ee.properties.get("anchor")==="viewport"&&function(Tt,Yt){var Kt=Math.sin(Yt),xr=Math.cos(Yt);Tt[0]=xr,Tt[1]=Kt,Tt[2]=0,Tt[3]=-Kt,Tt[4]=xr,Tt[5]=0,Tt[6]=0,Tt[7]=0,Tt[8]=1}(Xe,-w.transform.angle),function(Tt,Yt,Kt){var xr=Yt[0],Ir=Yt[1],ve=Yt[2];Tt[0]=xr*Kt[0]+Ir*Kt[3]+ve*Kt[6],Tt[1]=xr*Kt[1]+Ir*Kt[4]+ve*Kt[7],Tt[2]=xr*Kt[2]+Ir*Kt[5]+ve*Kt[8]}(qe,qe,Xe);let ot=ee.properties.get("color");return{u_matrix:ue,u_lightpos:qe,u_lightintensity:ee.properties.get("intensity"),u_lightcolor:[ot.r,ot.g,ot.b],u_vertical_gradient:+B,u_opacity:Q}},Li=(ue,w,B,Q,ee,le,qe)=>a.e(Mn(ue,w,B,Q),An(le,w,qe),{u_height_factor:-Math.pow(2,ee.overscaledZ)/qe.tileSize/8}),_n=ue=>({u_matrix:ue}),ya=(ue,w,B,Q)=>a.e(_n(ue),An(B,w,Q)),Jn=(ue,w)=>({u_matrix:ue,u_world:w}),Ma=(ue,w,B,Q,ee)=>a.e(ya(ue,w,B,Q),{u_world:ee}),_o=(ue,w,B,Q)=>{let ee=ue.transform,le,qe;if(Q.paint.get("circle-pitch-alignment")==="map"){let Xe=In(B,1,ee.zoom);le=!0,qe=[Xe,Xe]}else le=!1,qe=ee.pixelsToGLUnits;return{u_camera_to_center_distance:ee.cameraToCenterDistance,u_scale_with_map:+(Q.paint.get("circle-pitch-scale")==="map"),u_matrix:ue.translatePosMatrix(w.posMatrix,B,Q.paint.get("circle-translate"),Q.paint.get("circle-translate-anchor")),u_pitch_with_map:+le,u_device_pixel_ratio:ue.pixelRatio,u_extrude_scale:qe}},No=(ue,w,B)=>({u_matrix:ue,u_inv_matrix:w,u_camera_to_center_distance:B.cameraToCenterDistance,u_viewport_size:[B.width,B.height]}),po=(ue,w,B=1)=>({u_matrix:ue,u_color:w,u_overlay:0,u_overlay_scale:B}),Lo=ue=>({u_matrix:ue}),ko=(ue,w,B,Q)=>({u_matrix:ue,u_extrude_scale:In(w,1,B),u_intensity:Q}),Ds=(ue,w,B,Q)=>{let ee=a.H();a.aP(ee,0,ue.width,ue.height,0,0,1);let le=ue.context.gl;return{u_matrix:ee,u_world:[le.drawingBufferWidth,le.drawingBufferHeight],u_image:B,u_color_ramp:Q,u_opacity:w.paint.get("heatmap-opacity")}};function Fs(ue,w){let B=Math.pow(2,w.canonical.z),Q=w.canonical.y;return[new a.Z(0,Q/B).toLngLat().lat,new a.Z(0,(Q+1)/B).toLngLat().lat]}let ll=(ue,w,B,Q)=>{let ee=ue.transform;return{u_matrix:As(ue,w,B,Q),u_ratio:1/In(w,1,ee.zoom),u_device_pixel_ratio:ue.pixelRatio,u_units_to_pixels:[1/ee.pixelsToGLUnits[0],1/ee.pixelsToGLUnits[1]]}},ul=(ue,w,B,Q,ee)=>a.e(ll(ue,w,B,ee),{u_image:0,u_image_height:Q}),zl=(ue,w,B,Q,ee)=>{let le=ue.transform,qe=il(w,le);return{u_matrix:As(ue,w,B,ee),u_texsize:w.imageAtlasTexture.size,u_ratio:1/In(w,1,le.zoom),u_device_pixel_ratio:ue.pixelRatio,u_image:0,u_scale:[qe,Q.fromScale,Q.toScale],u_fade:Q.t,u_units_to_pixels:[1/le.pixelsToGLUnits[0],1/le.pixelsToGLUnits[1]]}},us=(ue,w,B,Q,ee,le)=>{let qe=ue.lineAtlas,Xe=il(w,ue.transform),ot=B.layout.get("line-cap")==="round",Tt=qe.getDash(Q.from,ot),Yt=qe.getDash(Q.to,ot),Kt=Tt.width*ee.fromScale,xr=Yt.width*ee.toScale;return a.e(ll(ue,w,B,le),{u_patternscale_a:[Xe/Kt,-Tt.height/2],u_patternscale_b:[Xe/xr,-Yt.height/2],u_sdfgamma:qe.width/(256*Math.min(Kt,xr)*ue.pixelRatio)/2,u_image:0,u_tex_y_a:Tt.y,u_tex_y_b:Yt.y,u_mix:ee.t})};function il(ue,w){return 1/In(ue,1,w.tileZoom)}function As(ue,w,B,Q){return ue.translatePosMatrix(Q?Q.posMatrix:w.tileID.posMatrix,w,B.paint.get("line-translate"),B.paint.get("line-translate-anchor"))}let cl=(ue,w,B,Q,ee)=>{return{u_matrix:ue,u_tl_parent:w,u_scale_parent:B,u_buffer_scale:1,u_fade_t:Q.mix,u_opacity:Q.opacity*ee.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:ee.paint.get("raster-brightness-min"),u_brightness_high:ee.paint.get("raster-brightness-max"),u_saturation_factor:(qe=ee.paint.get("raster-saturation"),qe>0?1-1/(1.001-qe):-qe),u_contrast_factor:(le=ee.paint.get("raster-contrast"),le>0?1/(1-le):1+le),u_spin_weights:Ks(ee.paint.get("raster-hue-rotate"))};var le,qe};function Ks(ue){ue*=Math.PI/180;let w=Math.sin(ue),B=Math.cos(ue);return[(2*B+1)/3,(-Math.sqrt(3)*w-B+1)/3,(Math.sqrt(3)*w-B+1)/3]}let zs=(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir)=>{let ve=qe.transform;return{u_is_size_zoom_constant:+(ue==="constant"||ue==="source"),u_is_size_feature_constant:+(ue==="constant"||ue==="camera"),u_size_t:w?w.uSizeT:0,u_size:w?w.uSize:0,u_camera_to_center_distance:ve.cameraToCenterDistance,u_pitch:ve.pitch/360*2*Math.PI,u_rotate_symbol:+B,u_aspect_ratio:ve.width/ve.height,u_fade_change:qe.options.fadeDuration?qe.symbolFadeChange:1,u_matrix:Xe,u_label_plane_matrix:ot,u_coord_matrix:Tt,u_is_text:+Kt,u_pitch_with_map:+Q,u_is_along_line:ee,u_is_variable_anchor:le,u_texsize:xr,u_texture:0,u_translation:Yt,u_pitched_scale:Ir}},Io=(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir,ve)=>{let be=qe.transform;return a.e(zs(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,ve),{u_gamma_scale:Q?Math.cos(be._pitch)*be.cameraToCenterDistance:1,u_device_pixel_ratio:qe.pixelRatio,u_is_halo:+Ir})},ls=(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,Kt,xr,Ir)=>a.e(Io(ue,w,B,Q,ee,le,qe,Xe,ot,Tt,Yt,!0,Kt,!0,Ir),{u_texsize_icon:xr,u_texture_icon:1}),Zl=(ue,w,B)=>({u_matrix:ue,u_opacity:w,u_color:B}),Su=(ue,w,B,Q,ee,le)=>a.e(function(qe,Xe,ot,Tt){let Yt=ot.imageManager.getPattern(qe.from.toString()),Kt=ot.imageManager.getPattern(qe.to.toString()),{width:xr,height:Ir}=ot.imageManager.getPixelSize(),ve=Math.pow(2,Tt.tileID.overscaledZ),be=Tt.tileSize*Math.pow(2,ot.transform.tileZoom)/ve,De=be*(Tt.tileID.canonical.x+Tt.tileID.wrap*ve),Be=be*Tt.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:Yt.tl,u_pattern_br_a:Yt.br,u_pattern_tl_b:Kt.tl,u_pattern_br_b:Kt.br,u_texsize:[xr,Ir],u_mix:Xe.t,u_pattern_size_a:Yt.displaySize,u_pattern_size_b:Kt.displaySize,u_scale_a:Xe.fromScale,u_scale_b:Xe.toScale,u_tile_units_to_pixels:1/In(Tt,1,ot.transform.tileZoom),u_pixel_coord_upper:[De>>16,Be>>16],u_pixel_coord_lower:[65535&De,65535&Be]}}(Q,le,B,ee),{u_matrix:ue,u_opacity:w}),nc={fillExtrusion:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_lightpos:new a.aN(ue,w.u_lightpos),u_lightintensity:new a.aI(ue,w.u_lightintensity),u_lightcolor:new a.aN(ue,w.u_lightcolor),u_vertical_gradient:new a.aI(ue,w.u_vertical_gradient),u_opacity:new a.aI(ue,w.u_opacity)}),fillExtrusionPattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_lightpos:new a.aN(ue,w.u_lightpos),u_lightintensity:new a.aI(ue,w.u_lightintensity),u_lightcolor:new a.aN(ue,w.u_lightcolor),u_vertical_gradient:new a.aI(ue,w.u_vertical_gradient),u_height_factor:new a.aI(ue,w.u_height_factor),u_image:new a.aH(ue,w.u_image),u_texsize:new a.aO(ue,w.u_texsize),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade),u_opacity:new a.aI(ue,w.u_opacity)}),fill:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix)}),fillPattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_image:new a.aH(ue,w.u_image),u_texsize:new a.aO(ue,w.u_texsize),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade)}),fillOutline:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_world:new a.aO(ue,w.u_world)}),fillOutlinePattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_world:new a.aO(ue,w.u_world),u_image:new a.aH(ue,w.u_image),u_texsize:new a.aO(ue,w.u_texsize),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade)}),circle:(ue,w)=>({u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_scale_with_map:new a.aH(ue,w.u_scale_with_map),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_extrude_scale:new a.aO(ue,w.u_extrude_scale),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_matrix:new a.aJ(ue,w.u_matrix)}),collisionBox:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_pixel_extrude_scale:new a.aO(ue,w.u_pixel_extrude_scale)}),collisionCircle:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_inv_matrix:new a.aJ(ue,w.u_inv_matrix),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_viewport_size:new a.aO(ue,w.u_viewport_size)}),debug:(ue,w)=>({u_color:new a.aL(ue,w.u_color),u_matrix:new a.aJ(ue,w.u_matrix),u_overlay:new a.aH(ue,w.u_overlay),u_overlay_scale:new a.aI(ue,w.u_overlay_scale)}),clippingMask:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix)}),heatmap:(ue,w)=>({u_extrude_scale:new a.aI(ue,w.u_extrude_scale),u_intensity:new a.aI(ue,w.u_intensity),u_matrix:new a.aJ(ue,w.u_matrix)}),heatmapTexture:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_world:new a.aO(ue,w.u_world),u_image:new a.aH(ue,w.u_image),u_color_ramp:new a.aH(ue,w.u_color_ramp),u_opacity:new a.aI(ue,w.u_opacity)}),hillshade:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_image:new a.aH(ue,w.u_image),u_latrange:new a.aO(ue,w.u_latrange),u_light:new a.aO(ue,w.u_light),u_shadow:new a.aL(ue,w.u_shadow),u_highlight:new a.aL(ue,w.u_highlight),u_accent:new a.aL(ue,w.u_accent)}),hillshadePrepare:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_image:new a.aH(ue,w.u_image),u_dimension:new a.aO(ue,w.u_dimension),u_zoom:new a.aI(ue,w.u_zoom),u_unpack:new a.aK(ue,w.u_unpack)}),line:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels)}),lineGradient:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels),u_image:new a.aH(ue,w.u_image),u_image_height:new a.aI(ue,w.u_image_height)}),linePattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_texsize:new a.aO(ue,w.u_texsize),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_image:new a.aH(ue,w.u_image),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels),u_scale:new a.aN(ue,w.u_scale),u_fade:new a.aI(ue,w.u_fade)}),lineSDF:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ratio:new a.aI(ue,w.u_ratio),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(ue,w.u_units_to_pixels),u_patternscale_a:new a.aO(ue,w.u_patternscale_a),u_patternscale_b:new a.aO(ue,w.u_patternscale_b),u_sdfgamma:new a.aI(ue,w.u_sdfgamma),u_image:new a.aH(ue,w.u_image),u_tex_y_a:new a.aI(ue,w.u_tex_y_a),u_tex_y_b:new a.aI(ue,w.u_tex_y_b),u_mix:new a.aI(ue,w.u_mix)}),raster:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_tl_parent:new a.aO(ue,w.u_tl_parent),u_scale_parent:new a.aI(ue,w.u_scale_parent),u_buffer_scale:new a.aI(ue,w.u_buffer_scale),u_fade_t:new a.aI(ue,w.u_fade_t),u_opacity:new a.aI(ue,w.u_opacity),u_image0:new a.aH(ue,w.u_image0),u_image1:new a.aH(ue,w.u_image1),u_brightness_low:new a.aI(ue,w.u_brightness_low),u_brightness_high:new a.aI(ue,w.u_brightness_high),u_saturation_factor:new a.aI(ue,w.u_saturation_factor),u_contrast_factor:new a.aI(ue,w.u_contrast_factor),u_spin_weights:new a.aN(ue,w.u_spin_weights)}),symbolIcon:(ue,w)=>({u_is_size_zoom_constant:new a.aH(ue,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(ue,w.u_is_size_feature_constant),u_size_t:new a.aI(ue,w.u_size_t),u_size:new a.aI(ue,w.u_size),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_pitch:new a.aI(ue,w.u_pitch),u_rotate_symbol:new a.aH(ue,w.u_rotate_symbol),u_aspect_ratio:new a.aI(ue,w.u_aspect_ratio),u_fade_change:new a.aI(ue,w.u_fade_change),u_matrix:new a.aJ(ue,w.u_matrix),u_label_plane_matrix:new a.aJ(ue,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(ue,w.u_coord_matrix),u_is_text:new a.aH(ue,w.u_is_text),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_is_along_line:new a.aH(ue,w.u_is_along_line),u_is_variable_anchor:new a.aH(ue,w.u_is_variable_anchor),u_texsize:new a.aO(ue,w.u_texsize),u_texture:new a.aH(ue,w.u_texture),u_translation:new a.aO(ue,w.u_translation),u_pitched_scale:new a.aI(ue,w.u_pitched_scale)}),symbolSDF:(ue,w)=>({u_is_size_zoom_constant:new a.aH(ue,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(ue,w.u_is_size_feature_constant),u_size_t:new a.aI(ue,w.u_size_t),u_size:new a.aI(ue,w.u_size),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_pitch:new a.aI(ue,w.u_pitch),u_rotate_symbol:new a.aH(ue,w.u_rotate_symbol),u_aspect_ratio:new a.aI(ue,w.u_aspect_ratio),u_fade_change:new a.aI(ue,w.u_fade_change),u_matrix:new a.aJ(ue,w.u_matrix),u_label_plane_matrix:new a.aJ(ue,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(ue,w.u_coord_matrix),u_is_text:new a.aH(ue,w.u_is_text),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_is_along_line:new a.aH(ue,w.u_is_along_line),u_is_variable_anchor:new a.aH(ue,w.u_is_variable_anchor),u_texsize:new a.aO(ue,w.u_texsize),u_texture:new a.aH(ue,w.u_texture),u_gamma_scale:new a.aI(ue,w.u_gamma_scale),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_is_halo:new a.aH(ue,w.u_is_halo),u_translation:new a.aO(ue,w.u_translation),u_pitched_scale:new a.aI(ue,w.u_pitched_scale)}),symbolTextAndIcon:(ue,w)=>({u_is_size_zoom_constant:new a.aH(ue,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(ue,w.u_is_size_feature_constant),u_size_t:new a.aI(ue,w.u_size_t),u_size:new a.aI(ue,w.u_size),u_camera_to_center_distance:new a.aI(ue,w.u_camera_to_center_distance),u_pitch:new a.aI(ue,w.u_pitch),u_rotate_symbol:new a.aH(ue,w.u_rotate_symbol),u_aspect_ratio:new a.aI(ue,w.u_aspect_ratio),u_fade_change:new a.aI(ue,w.u_fade_change),u_matrix:new a.aJ(ue,w.u_matrix),u_label_plane_matrix:new a.aJ(ue,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(ue,w.u_coord_matrix),u_is_text:new a.aH(ue,w.u_is_text),u_pitch_with_map:new a.aH(ue,w.u_pitch_with_map),u_is_along_line:new a.aH(ue,w.u_is_along_line),u_is_variable_anchor:new a.aH(ue,w.u_is_variable_anchor),u_texsize:new a.aO(ue,w.u_texsize),u_texsize_icon:new a.aO(ue,w.u_texsize_icon),u_texture:new a.aH(ue,w.u_texture),u_texture_icon:new a.aH(ue,w.u_texture_icon),u_gamma_scale:new a.aI(ue,w.u_gamma_scale),u_device_pixel_ratio:new a.aI(ue,w.u_device_pixel_ratio),u_is_halo:new a.aH(ue,w.u_is_halo),u_translation:new a.aO(ue,w.u_translation),u_pitched_scale:new a.aI(ue,w.u_pitched_scale)}),background:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_opacity:new a.aI(ue,w.u_opacity),u_color:new a.aL(ue,w.u_color)}),backgroundPattern:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_opacity:new a.aI(ue,w.u_opacity),u_image:new a.aH(ue,w.u_image),u_pattern_tl_a:new a.aO(ue,w.u_pattern_tl_a),u_pattern_br_a:new a.aO(ue,w.u_pattern_br_a),u_pattern_tl_b:new a.aO(ue,w.u_pattern_tl_b),u_pattern_br_b:new a.aO(ue,w.u_pattern_br_b),u_texsize:new a.aO(ue,w.u_texsize),u_mix:new a.aI(ue,w.u_mix),u_pattern_size_a:new a.aO(ue,w.u_pattern_size_a),u_pattern_size_b:new a.aO(ue,w.u_pattern_size_b),u_scale_a:new a.aI(ue,w.u_scale_a),u_scale_b:new a.aI(ue,w.u_scale_b),u_pixel_coord_upper:new a.aO(ue,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(ue,w.u_pixel_coord_lower),u_tile_units_to_pixels:new a.aI(ue,w.u_tile_units_to_pixels)}),terrain:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_texture:new a.aH(ue,w.u_texture),u_ele_delta:new a.aI(ue,w.u_ele_delta),u_fog_matrix:new a.aJ(ue,w.u_fog_matrix),u_fog_color:new a.aL(ue,w.u_fog_color),u_fog_ground_blend:new a.aI(ue,w.u_fog_ground_blend),u_fog_ground_blend_opacity:new a.aI(ue,w.u_fog_ground_blend_opacity),u_horizon_color:new a.aL(ue,w.u_horizon_color),u_horizon_fog_blend:new a.aI(ue,w.u_horizon_fog_blend)}),terrainDepth:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_ele_delta:new a.aI(ue,w.u_ele_delta)}),terrainCoords:(ue,w)=>({u_matrix:new a.aJ(ue,w.u_matrix),u_texture:new a.aH(ue,w.u_texture),u_terrain_coords_id:new a.aI(ue,w.u_terrain_coords_id),u_ele_delta:new a.aI(ue,w.u_ele_delta)}),sky:(ue,w)=>({u_sky_color:new a.aL(ue,w.u_sky_color),u_horizon_color:new a.aL(ue,w.u_horizon_color),u_horizon:new a.aI(ue,w.u_horizon),u_sky_horizon_blend:new a.aI(ue,w.u_sky_horizon_blend)})};class bs{constructor(w,B,Q){this.context=w;let ee=w.gl;this.buffer=ee.createBuffer(),this.dynamicDraw=!!Q,this.context.unbindVAO(),w.bindElementBuffer.set(this.buffer),ee.bufferData(ee.ELEMENT_ARRAY_BUFFER,B.arrayBuffer,this.dynamicDraw?ee.DYNAMIC_DRAW:ee.STATIC_DRAW),this.dynamicDraw||delete B.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(w){let B=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),B.bufferSubData(B.ELEMENT_ARRAY_BUFFER,0,w.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let Rn={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class _a{constructor(w,B,Q,ee){this.length=B.length,this.attributes=Q,this.itemSize=B.bytesPerElement,this.dynamicDraw=ee,this.context=w;let le=w.gl;this.buffer=le.createBuffer(),w.bindVertexBuffer.set(this.buffer),le.bufferData(le.ARRAY_BUFFER,B.arrayBuffer,this.dynamicDraw?le.DYNAMIC_DRAW:le.STATIC_DRAW),this.dynamicDraw||delete B.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(w){if(w.length!==this.length)throw new Error(`Length of new data is ${w.length}, which doesn't match current length of ${this.length}`);let B=this.context.gl;this.bind(),B.bufferSubData(B.ARRAY_BUFFER,0,w.arrayBuffer)}enableAttributes(w,B){for(let Q=0;Q0){let Ht=a.H();a.aQ(Ht,We.placementInvProjMatrix,ue.transform.glCoordMatrix),a.aQ(Ht,Ht,We.placementViewportMatrix),ot.push({circleArray:Ft,circleOffset:Yt,transform:et.posMatrix,invTransform:Ht,coord:et}),Tt+=Ft.length/4,Yt=Tt}it&&Xe.draw(le,qe.LINES,Po.disabled,Yo.disabled,ue.colorModeForRenderPass(),Pa.disabled,{u_matrix:et.posMatrix,u_pixel_extrude_scale:[1/(Kt=ue.transform).width,1/Kt.height]},ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(et),B.id,it.layoutVertexBuffer,it.indexBuffer,it.segments,null,ue.transform.zoom,null,null,it.collisionVertexBuffer)}var Kt;if(!ee||!ot.length)return;let xr=ue.useProgram("collisionCircle"),Ir=new a.aR;Ir.resize(4*Tt),Ir._trim();let ve=0;for(let Be of ot)for(let et=0;et=0&&(Be[We.associatedIconIndex]={shiftedAnchor:Kn,angle:Ta})}else pi(We.numGlyphs,be)}if(Tt){De.clear();let et=ue.icon.placedSymbolArray;for(let We=0;Weue.style.map.terrain.getElevation(Wr,nt,jt):null,kt=B.layout.get("text-rotation-alignment")==="map";je(Pi,Wr.posMatrix,ue,ee,Ul,au,Be,Tt,kt,be,Wr.toUnwrapped(),ve.width,ve.height,Js,Ye)}let Tl=Wr.posMatrix,Al=ee&&dr||dc,X=et||Al?bl:Ul,se=Lu,Te=Cn&&B.paint.get(ee?"text-halo-width":"icon-halo-width").constantOr(1)!==0,Ne;Ne=Cn?Pi.iconsInText?ls(Kn.kind,$a,We,Be,et,Al,ue,Tl,X,se,Js,Qa,Ts,Or):Io(Kn.kind,$a,We,Be,et,Al,ue,Tl,X,se,Js,ee,Qa,!0,Or):zs(Kn.kind,$a,We,Be,et,Al,ue,Tl,X,se,Js,ee,Qa,Or);let He={program:fa,buffers:cn,uniformValues:Ne,atlasTexture:mo,atlasTextureIcon:wo,atlasInterpolation:Bo,atlasInterpolationIcon:Ps,isSDF:Cn,hasHalo:Te};if(Ft&&Pi.canOverlap){Ht=!0;let Ye=cn.segments.get();for(let kt of Ye)Sr.push({segments:new a.a0([kt]),sortKey:kt.sortKey,state:He,terrainData:Co})}else Sr.push({segments:cn.segments,sortKey:0,state:He,terrainData:Co})}Ht&&Sr.sort((Wr,ni)=>Wr.sortKey-ni.sortKey);for(let Wr of Sr){let ni=Wr.state;if(xr.activeTexture.set(Ir.TEXTURE0),ni.atlasTexture.bind(ni.atlasInterpolation,Ir.CLAMP_TO_EDGE),ni.atlasTextureIcon&&(xr.activeTexture.set(Ir.TEXTURE1),ni.atlasTextureIcon&&ni.atlasTextureIcon.bind(ni.atlasInterpolationIcon,Ir.CLAMP_TO_EDGE)),ni.isSDF){let Pi=ni.uniformValues;ni.hasHalo&&(Pi.u_is_halo=1,Qf(ni.buffers,Wr.segments,B,ue,ni.program,tr,Yt,Kt,Pi,Wr.terrainData)),Pi.u_is_halo=0}Qf(ni.buffers,Wr.segments,B,ue,ni.program,tr,Yt,Kt,ni.uniformValues,Wr.terrainData)}}function Qf(ue,w,B,Q,ee,le,qe,Xe,ot,Tt){let Yt=Q.context;ee.draw(Yt,Yt.gl.TRIANGLES,le,qe,Xe,Pa.disabled,ot,Tt,B.id,ue.layoutVertexBuffer,ue.indexBuffer,w,B.paint,Q.transform.zoom,ue.programConfigurations.get(B.id),ue.dynamicLayoutVertexBuffer,ue.opacityVertexBuffer)}function _f(ue,w,B,Q){let ee=ue.context,le=ee.gl,qe=Yo.disabled,Xe=new qs([le.ONE,le.ONE],a.aM.transparent,[!0,!0,!0,!0]),ot=w.getBucket(B);if(!ot)return;let Tt=Q.key,Yt=B.heatmapFbos.get(Tt);Yt||(Yt=eh(ee,w.tileSize,w.tileSize),B.heatmapFbos.set(Tt,Yt)),ee.bindFramebuffer.set(Yt.framebuffer),ee.viewport.set([0,0,w.tileSize,w.tileSize]),ee.clear({color:a.aM.transparent});let Kt=ot.programConfigurations.get(B.id),xr=ue.useProgram("heatmap",Kt),Ir=ue.style.map.terrain.getTerrainData(Q);xr.draw(ee,le.TRIANGLES,Po.disabled,qe,Xe,Pa.disabled,ko(Q.posMatrix,w,ue.transform.zoom,B.paint.get("heatmap-intensity")),Ir,B.id,ot.layoutVertexBuffer,ot.indexBuffer,ot.segments,B.paint,ue.transform.zoom,Kt)}function Yc(ue,w,B){let Q=ue.context,ee=Q.gl;Q.setColorMode(ue.colorModeForRenderPass());let le=th(Q,w),qe=B.key,Xe=w.heatmapFbos.get(qe);Xe&&(Q.activeTexture.set(ee.TEXTURE0),ee.bindTexture(ee.TEXTURE_2D,Xe.colorAttachment.get()),Q.activeTexture.set(ee.TEXTURE1),le.bind(ee.LINEAR,ee.CLAMP_TO_EDGE),ue.useProgram("heatmapTexture").draw(Q,ee.TRIANGLES,Po.disabled,Yo.disabled,ue.colorModeForRenderPass(),Pa.disabled,Ds(ue,w,0,1),null,w.id,ue.rasterBoundsBuffer,ue.quadTriangleIndexBuffer,ue.rasterBoundsSegments,w.paint,ue.transform.zoom),Xe.destroy(),w.heatmapFbos.delete(qe))}function eh(ue,w,B){var Q,ee;let le=ue.gl,qe=le.createTexture();le.bindTexture(le.TEXTURE_2D,qe),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_S,le.CLAMP_TO_EDGE),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_WRAP_T,le.CLAMP_TO_EDGE),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MIN_FILTER,le.LINEAR),le.texParameteri(le.TEXTURE_2D,le.TEXTURE_MAG_FILTER,le.LINEAR);let Xe=(Q=ue.HALF_FLOAT)!==null&&Q!==void 0?Q:le.UNSIGNED_BYTE,ot=(ee=ue.RGBA16F)!==null&&ee!==void 0?ee:le.RGBA;le.texImage2D(le.TEXTURE_2D,0,ot,w,B,0,le.RGBA,Xe,null);let Tt=ue.createFramebuffer(w,B,!1,!1);return Tt.colorAttachment.set(qe),Tt}function th(ue,w){return w.colorRampTexture||(w.colorRampTexture=new g(ue,w.colorRamp,ue.gl.RGBA)),w.colorRampTexture}function ju(ue,w,B,Q,ee){if(!B||!Q||!Q.imageAtlas)return;let le=Q.imageAtlas.patternPositions,qe=le[B.to.toString()],Xe=le[B.from.toString()];if(!qe&&Xe&&(qe=Xe),!Xe&&qe&&(Xe=qe),!qe||!Xe){let ot=ee.getPaintProperty(w);qe=le[ot],Xe=le[ot]}qe&&Xe&&ue.setConstantPatternPositions(qe,Xe)}function Hf(ue,w,B,Q,ee,le,qe){let Xe=ue.context.gl,ot="fill-pattern",Tt=B.paint.get(ot),Yt=Tt&&Tt.constantOr(1),Kt=B.getCrossfadeParameters(),xr,Ir,ve,be,De;qe?(Ir=Yt&&!B.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",xr=Xe.LINES):(Ir=Yt?"fillPattern":"fill",xr=Xe.TRIANGLES);let Be=Tt.constantOr(null);for(let et of Q){let We=w.getTile(et);if(Yt&&!We.patternsLoaded())continue;let it=We.getBucket(B);if(!it)continue;let Ft=it.programConfigurations.get(B.id),Ht=ue.useProgram(Ir,Ft),tr=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(et);Yt&&(ue.context.activeTexture.set(Xe.TEXTURE0),We.imageAtlasTexture.bind(Xe.LINEAR,Xe.CLAMP_TO_EDGE),Ft.updatePaintBuffers(Kt)),ju(Ft,ot,Be,We,B);let dr=tr?et:null,Sr=ue.translatePosMatrix(dr?dr.posMatrix:et.posMatrix,We,B.paint.get("fill-translate"),B.paint.get("fill-translate-anchor"));if(qe){be=it.indexBuffer2,De=it.segments2;let Or=[Xe.drawingBufferWidth,Xe.drawingBufferHeight];ve=Ir==="fillOutlinePattern"&&Yt?Ma(Sr,ue,Kt,We,Or):Jn(Sr,Or)}else be=it.indexBuffer,De=it.segments,ve=Yt?ya(Sr,ue,Kt,We):_n(Sr);Ht.draw(ue.context,xr,ee,ue.stencilModeForClipping(et),le,Pa.disabled,ve,tr,B.id,it.layoutVertexBuffer,be,De,B.paint,ue.transform.zoom,Ft)}}function cc(ue,w,B,Q,ee,le,qe){let Xe=ue.context,ot=Xe.gl,Tt="fill-extrusion-pattern",Yt=B.paint.get(Tt),Kt=Yt.constantOr(1),xr=B.getCrossfadeParameters(),Ir=B.paint.get("fill-extrusion-opacity"),ve=Yt.constantOr(null);for(let be of Q){let De=w.getTile(be),Be=De.getBucket(B);if(!Be)continue;let et=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(be),We=Be.programConfigurations.get(B.id),it=ue.useProgram(Kt?"fillExtrusionPattern":"fillExtrusion",We);Kt&&(ue.context.activeTexture.set(ot.TEXTURE0),De.imageAtlasTexture.bind(ot.LINEAR,ot.CLAMP_TO_EDGE),We.updatePaintBuffers(xr)),ju(We,Tt,ve,De,B);let Ft=ue.translatePosMatrix(be.posMatrix,De,B.paint.get("fill-extrusion-translate"),B.paint.get("fill-extrusion-translate-anchor")),Ht=B.paint.get("fill-extrusion-vertical-gradient"),tr=Kt?Li(Ft,ue,Ht,Ir,be,xr,De):Mn(Ft,ue,Ht,Ir);it.draw(Xe,Xe.gl.TRIANGLES,ee,le,qe,Pa.backCCW,tr,et,B.id,Be.layoutVertexBuffer,Be.indexBuffer,Be.segments,B.paint,ue.transform.zoom,We,ue.style.map.terrain&&Be.centroidVertexBuffer)}}function of(ue,w,B,Q,ee,le,qe){let Xe=ue.context,ot=Xe.gl,Tt=B.fbo;if(!Tt)return;let Yt=ue.useProgram("hillshade"),Kt=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(w);Xe.activeTexture.set(ot.TEXTURE0),ot.bindTexture(ot.TEXTURE_2D,Tt.colorAttachment.get()),Yt.draw(Xe,ot.TRIANGLES,ee,le,qe,Pa.disabled,((xr,Ir,ve,be)=>{let De=ve.paint.get("hillshade-shadow-color"),Be=ve.paint.get("hillshade-highlight-color"),et=ve.paint.get("hillshade-accent-color"),We=ve.paint.get("hillshade-illumination-direction")*(Math.PI/180);ve.paint.get("hillshade-illumination-anchor")==="viewport"&&(We-=xr.transform.angle);let it=!xr.options.moving;return{u_matrix:be?be.posMatrix:xr.transform.calculatePosMatrix(Ir.tileID.toUnwrapped(),it),u_image:0,u_latrange:Fs(0,Ir.tileID),u_light:[ve.paint.get("hillshade-exaggeration"),We],u_shadow:De,u_highlight:Be,u_accent:et}})(ue,B,Q,Kt?w:null),Kt,Q.id,ue.rasterBoundsBuffer,ue.quadTriangleIndexBuffer,ue.rasterBoundsSegments)}function Nl(ue,w,B,Q,ee,le){let qe=ue.context,Xe=qe.gl,ot=w.dem;if(ot&&ot.data){let Tt=ot.dim,Yt=ot.stride,Kt=ot.getPixels();if(qe.activeTexture.set(Xe.TEXTURE1),qe.pixelStoreUnpackPremultiplyAlpha.set(!1),w.demTexture=w.demTexture||ue.getTileTexture(Yt),w.demTexture){let Ir=w.demTexture;Ir.update(Kt,{premultiply:!1}),Ir.bind(Xe.NEAREST,Xe.CLAMP_TO_EDGE)}else w.demTexture=new g(qe,Kt,Xe.RGBA,{premultiply:!1}),w.demTexture.bind(Xe.NEAREST,Xe.CLAMP_TO_EDGE);qe.activeTexture.set(Xe.TEXTURE0);let xr=w.fbo;if(!xr){let Ir=new g(qe,{width:Tt,height:Tt,data:null},Xe.RGBA);Ir.bind(Xe.LINEAR,Xe.CLAMP_TO_EDGE),xr=w.fbo=qe.createFramebuffer(Tt,Tt,!0,!1),xr.colorAttachment.set(Ir.texture)}qe.bindFramebuffer.set(xr.framebuffer),qe.viewport.set([0,0,Tt,Tt]),ue.useProgram("hillshadePrepare").draw(qe,Xe.TRIANGLES,Q,ee,le,Pa.disabled,((Ir,ve)=>{let be=ve.stride,De=a.H();return a.aP(De,0,a.X,-a.X,0,0,1),a.J(De,De,[0,-a.X,0]),{u_matrix:De,u_image:1,u_dimension:[be,be],u_zoom:Ir.overscaledZ,u_unpack:ve.getUnpackVector()}})(w.tileID,ot),null,B.id,ue.rasterBoundsBuffer,ue.quadTriangleIndexBuffer,ue.rasterBoundsSegments),w.needsHillshadePrepare=!1}}function Kc(ue,w,B,Q,ee,le){let qe=Q.paint.get("raster-fade-duration");if(!le&&qe>0){let Xe=u.now(),ot=(Xe-ue.timeAdded)/qe,Tt=w?(Xe-w.timeAdded)/qe:-1,Yt=B.getSource(),Kt=ee.coveringZoomLevel({tileSize:Yt.tileSize,roundZoom:Yt.roundZoom}),xr=!w||Math.abs(w.tileID.overscaledZ-Kt)>Math.abs(ue.tileID.overscaledZ-Kt),Ir=xr&&ue.refreshedUponExpiration?1:a.ac(xr?ot:1-Tt,0,1);return ue.refreshedUponExpiration&&ot>=1&&(ue.refreshedUponExpiration=!1),w?{opacity:1,mix:1-Ir}:{opacity:Ir,mix:0}}return{opacity:1,mix:0}}let Rc=new a.aM(1,0,0,1),gs=new a.aM(0,1,0,1),jf=new a.aM(0,0,1,1),Gh=new a.aM(1,0,1,1),rh=new a.aM(0,1,1,1);function sf(ue,w,B,Q){Mu(ue,0,w+B/2,ue.transform.width,B,Q)}function Th(ue,w,B,Q){Mu(ue,w-B/2,0,B,ue.transform.height,Q)}function Mu(ue,w,B,Q,ee,le){let qe=ue.context,Xe=qe.gl;Xe.enable(Xe.SCISSOR_TEST),Xe.scissor(w*ue.pixelRatio,B*ue.pixelRatio,Q*ue.pixelRatio,ee*ue.pixelRatio),qe.clear({color:le}),Xe.disable(Xe.SCISSOR_TEST)}function ih(ue,w,B){let Q=ue.context,ee=Q.gl,le=B.posMatrix,qe=ue.useProgram("debug"),Xe=Po.disabled,ot=Yo.disabled,Tt=ue.colorModeForRenderPass(),Yt="$debug",Kt=ue.style.map.terrain&&ue.style.map.terrain.getTerrainData(B);Q.activeTexture.set(ee.TEXTURE0);let xr=w.getTileByID(B.key).latestRawTileData,Ir=Math.floor((xr&&xr.byteLength||0)/1024),ve=w.getTile(B).tileSize,be=512/Math.min(ve,512)*(B.overscaledZ/ue.transform.zoom)*.5,De=B.canonical.toString();B.overscaledZ!==B.canonical.z&&(De+=` => ${B.overscaledZ}`),function(Be,et){Be.initDebugOverlayCanvas();let We=Be.debugOverlayCanvas,it=Be.context.gl,Ft=Be.debugOverlayCanvas.getContext("2d");Ft.clearRect(0,0,We.width,We.height),Ft.shadowColor="white",Ft.shadowBlur=2,Ft.lineWidth=1.5,Ft.strokeStyle="white",Ft.textBaseline="top",Ft.font="bold 36px Open Sans, sans-serif",Ft.fillText(et,5,5),Ft.strokeText(et,5,5),Be.debugOverlayTexture.update(We),Be.debugOverlayTexture.bind(it.LINEAR,it.CLAMP_TO_EDGE)}(ue,`${De} ${Ir}kB`),qe.draw(Q,ee.TRIANGLES,Xe,ot,qs.alphaBlended,Pa.disabled,po(le,a.aM.transparent,be),null,Yt,ue.debugBuffer,ue.quadTriangleIndexBuffer,ue.debugSegments),qe.draw(Q,ee.LINE_STRIP,Xe,ot,Tt,Pa.disabled,po(le,a.aM.red),Kt,Yt,ue.debugBuffer,ue.tileBorderIndexBuffer,ue.debugSegments)}function js(ue,w,B){let Q=ue.context,ee=Q.gl,le=ue.colorModeForRenderPass(),qe=new Po(ee.LEQUAL,Po.ReadWrite,ue.depthRangeFor3D),Xe=ue.useProgram("terrain"),ot=w.getTerrainMesh();Q.bindFramebuffer.set(null),Q.viewport.set([0,0,ue.width,ue.height]);for(let Tt of B){let Yt=ue.renderToTexture.getTexture(Tt),Kt=w.getTerrainData(Tt.tileID);Q.activeTexture.set(ee.TEXTURE0),ee.bindTexture(ee.TEXTURE_2D,Yt.texture);let xr=ue.transform.calculatePosMatrix(Tt.tileID.toUnwrapped()),Ir=w.getMeshFrameDelta(ue.transform.zoom),ve=ue.transform.calculateFogMatrix(Tt.tileID.toUnwrapped()),be=Jr(xr,Ir,ve,ue.style.sky,ue.transform.pitch);Xe.draw(Q,ee.TRIANGLES,qe,Yo.disabled,le,Pa.backCCW,be,Kt,"terrain",ot.vertexBuffer,ot.indexBuffer,ot.segments)}}class Eu{constructor(w,B,Q){this.vertexBuffer=w,this.indexBuffer=B,this.segments=Q}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class Dc{constructor(w,B){this.context=new ad(w),this.transform=B,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:a.an(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=mt.maxUnderzooming+mt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Wo}resize(w,B,Q){if(this.width=Math.floor(w*Q),this.height=Math.floor(B*Q),this.pixelRatio=Q,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(let ee of this.style._order)this.style._layers[ee].resize()}setup(){let w=this.context,B=new a.aX;B.emplaceBack(0,0),B.emplaceBack(a.X,0),B.emplaceBack(0,a.X),B.emplaceBack(a.X,a.X),this.tileExtentBuffer=w.createVertexBuffer(B,vo.members),this.tileExtentSegments=a.a0.simpleSegment(0,0,4,2);let Q=new a.aX;Q.emplaceBack(0,0),Q.emplaceBack(a.X,0),Q.emplaceBack(0,a.X),Q.emplaceBack(a.X,a.X),this.debugBuffer=w.createVertexBuffer(Q,vo.members),this.debugSegments=a.a0.simpleSegment(0,0,4,5);let ee=new a.$;ee.emplaceBack(0,0,0,0),ee.emplaceBack(a.X,0,a.X,0),ee.emplaceBack(0,a.X,0,a.X),ee.emplaceBack(a.X,a.X,a.X,a.X),this.rasterBoundsBuffer=w.createVertexBuffer(ee,lt.members),this.rasterBoundsSegments=a.a0.simpleSegment(0,0,4,2);let le=new a.aX;le.emplaceBack(0,0),le.emplaceBack(1,0),le.emplaceBack(0,1),le.emplaceBack(1,1),this.viewportBuffer=w.createVertexBuffer(le,vo.members),this.viewportSegments=a.a0.simpleSegment(0,0,4,2);let qe=new a.aZ;qe.emplaceBack(0),qe.emplaceBack(1),qe.emplaceBack(3),qe.emplaceBack(2),qe.emplaceBack(0),this.tileBorderIndexBuffer=w.createIndexBuffer(qe);let Xe=new a.aY;Xe.emplaceBack(0,1,2),Xe.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=w.createIndexBuffer(Xe);let ot=this.context.gl;this.stencilClearMode=new Yo({func:ot.ALWAYS,mask:0},0,255,ot.ZERO,ot.ZERO,ot.ZERO)}clearStencil(){let w=this.context,B=w.gl;this.nextStencilID=1,this.currentStencilSource=void 0;let Q=a.H();a.aP(Q,0,this.width,this.height,0,0,1),a.K(Q,Q,[B.drawingBufferWidth,B.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(w,B.TRIANGLES,Po.disabled,this.stencilClearMode,qs.disabled,Pa.disabled,Lo(Q),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(w,B){if(this.currentStencilSource===w.source||!w.isTileClipped()||!B||!B.length)return;this.currentStencilSource=w.source;let Q=this.context,ee=Q.gl;this.nextStencilID+B.length>256&&this.clearStencil(),Q.setColorMode(qs.disabled),Q.setDepthMode(Po.disabled);let le=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(let qe of B){let Xe=this._tileClippingMaskIDs[qe.key]=this.nextStencilID++,ot=this.style.map.terrain&&this.style.map.terrain.getTerrainData(qe);le.draw(Q,ee.TRIANGLES,Po.disabled,new Yo({func:ee.ALWAYS,mask:0},Xe,255,ee.KEEP,ee.KEEP,ee.REPLACE),qs.disabled,Pa.disabled,Lo(qe.posMatrix),ot,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();let w=this.nextStencilID++,B=this.context.gl;return new Yo({func:B.NOTEQUAL,mask:255},w,255,B.KEEP,B.KEEP,B.REPLACE)}stencilModeForClipping(w){let B=this.context.gl;return new Yo({func:B.EQUAL,mask:255},this._tileClippingMaskIDs[w.key],0,B.KEEP,B.KEEP,B.REPLACE)}stencilConfigForOverlap(w){let B=this.context.gl,Q=w.sort((qe,Xe)=>Xe.overscaledZ-qe.overscaledZ),ee=Q[Q.length-1].overscaledZ,le=Q[0].overscaledZ-ee+1;if(le>1){this.currentStencilSource=void 0,this.nextStencilID+le>256&&this.clearStencil();let qe={};for(let Xe=0;Xe({u_sky_color:Be.properties.get("sky-color"),u_horizon_color:Be.properties.get("horizon-color"),u_horizon:(et.height/2+et.getHorizon())*We,u_sky_horizon_blend:Be.properties.get("sky-horizon-blend")*et.height/2*We}))(Tt,ot.style.map.transform,ot.pixelRatio),Ir=new Po(Kt.LEQUAL,Po.ReadWrite,[0,1]),ve=Yo.disabled,be=ot.colorModeForRenderPass(),De=ot.useProgram("sky");if(!Tt.mesh){let Be=new a.aX;Be.emplaceBack(-1,-1),Be.emplaceBack(1,-1),Be.emplaceBack(1,1),Be.emplaceBack(-1,1);let et=new a.aY;et.emplaceBack(0,1,2),et.emplaceBack(0,2,3),Tt.mesh=new Eu(Yt.createVertexBuffer(Be,vo.members),Yt.createIndexBuffer(et),a.a0.simpleSegment(0,0,Be.length,et.length))}De.draw(Yt,Kt.TRIANGLES,Ir,ve,be,Pa.disabled,xr,void 0,"sky",Tt.mesh.vertexBuffer,Tt.mesh.indexBuffer,Tt.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=B.showOverdrawInspector,this.depthRangeFor3D=[0,1-(w._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=Q.length-1;this.currentLayer>=0;this.currentLayer--){let ot=this.style._layers[Q[this.currentLayer]],Tt=ee[ot.source],Yt=le[ot.source];this._renderTileClippingMasks(ot,Yt),this.renderLayer(this,Tt,ot,Yt)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayerDe.source&&!De.isHidden(Yt)?[Tt.sourceCaches[De.source]]:[]),Ir=xr.filter(De=>De.getSource().type==="vector"),ve=xr.filter(De=>De.getSource().type!=="vector"),be=De=>{(!Kt||Kt.getSource().maxzoombe(De)),Kt||ve.forEach(De=>be(De)),Kt}(this.style,this.transform.zoom);ot&&function(Tt,Yt,Kt){for(let xr=0;xr0),ee&&(a.b0(B,Q),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(le,qe){let Xe=le.context,ot=Xe.gl,Tt=qs.unblended,Yt=new Po(ot.LEQUAL,Po.ReadWrite,[0,1]),Kt=qe.getTerrainMesh(),xr=qe.sourceCache.getRenderableTiles(),Ir=le.useProgram("terrainDepth");Xe.bindFramebuffer.set(qe.getFramebuffer("depth").framebuffer),Xe.viewport.set([0,0,le.width/devicePixelRatio,le.height/devicePixelRatio]),Xe.clear({color:a.aM.transparent,depth:1});for(let ve of xr){let be=qe.getTerrainData(ve.tileID),De={u_matrix:le.transform.calculatePosMatrix(ve.tileID.toUnwrapped()),u_ele_delta:qe.getMeshFrameDelta(le.transform.zoom)};Ir.draw(Xe,ot.TRIANGLES,Yt,Yo.disabled,Tt,Pa.backCCW,De,be,"terrain",Kt.vertexBuffer,Kt.indexBuffer,Kt.segments)}Xe.bindFramebuffer.set(null),Xe.viewport.set([0,0,le.width,le.height])}(this,this.style.map.terrain),function(le,qe){let Xe=le.context,ot=Xe.gl,Tt=qs.unblended,Yt=new Po(ot.LEQUAL,Po.ReadWrite,[0,1]),Kt=qe.getTerrainMesh(),xr=qe.getCoordsTexture(),Ir=qe.sourceCache.getRenderableTiles(),ve=le.useProgram("terrainCoords");Xe.bindFramebuffer.set(qe.getFramebuffer("coords").framebuffer),Xe.viewport.set([0,0,le.width/devicePixelRatio,le.height/devicePixelRatio]),Xe.clear({color:a.aM.transparent,depth:1}),qe.coordsIndex=[];for(let be of Ir){let De=qe.getTerrainData(be.tileID);Xe.activeTexture.set(ot.TEXTURE0),ot.bindTexture(ot.TEXTURE_2D,xr.texture);let Be={u_matrix:le.transform.calculatePosMatrix(be.tileID.toUnwrapped()),u_terrain_coords_id:(255-qe.coordsIndex.length)/255,u_texture:0,u_ele_delta:qe.getMeshFrameDelta(le.transform.zoom)};ve.draw(Xe,ot.TRIANGLES,Yt,Yo.disabled,Tt,Pa.backCCW,Be,De,"terrain",Kt.vertexBuffer,Kt.indexBuffer,Kt.segments),qe.coordsIndex.push(be.tileID.key)}Xe.bindFramebuffer.set(null),Xe.viewport.set([0,0,le.width,le.height])}(this,this.style.map.terrain))}renderLayer(w,B,Q,ee){if(!Q.isHidden(this.transform.zoom)&&(Q.type==="background"||Q.type==="custom"||(ee||[]).length))switch(this.id=Q.id,Q.type){case"symbol":(function(le,qe,Xe,ot,Tt){if(le.renderPass!=="translucent")return;let Yt=Yo.disabled,Kt=le.colorModeForRenderPass();(Xe._unevaluatedLayout.hasValue("text-variable-anchor")||Xe._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function(xr,Ir,ve,be,De,Be,et,We,it){let Ft=Ir.transform,Ht=yn(),tr=De==="map",dr=Be==="map";for(let Sr of xr){let Or=be.getTile(Sr),Wr=Or.getBucket(ve);if(!Wr||!Wr.text||!Wr.text.segments.get().length)continue;let ni=a.ag(Wr.textSizeData,Ft.zoom),Pi=In(Or,1,Ir.transform.zoom),cn=Br(Sr.posMatrix,dr,tr,Ir.transform,Pi),ln=ve.layout.get("icon-text-fit")!=="none"&&Wr.hasIconData();if(ni){let Cn=Math.pow(2,Ft.zoom-Or.tileID.overscaledZ),Kn=Ir.style.map.terrain?(fa,$a)=>Ir.style.map.terrain.getElevation(Sr,fa,$a):null,Ta=Ht.translatePosition(Ft,Or,et,We);yf(Wr,tr,dr,it,Ft,cn,Sr.posMatrix,Cn,ni,ln,Ht,Ta,Sr.toUnwrapped(),Kn)}}}(ot,le,Xe,qe,Xe.layout.get("text-rotation-alignment"),Xe.layout.get("text-pitch-alignment"),Xe.paint.get("text-translate"),Xe.paint.get("text-translate-anchor"),Tt),Xe.paint.get("icon-opacity").constantOr(1)!==0&&wh(le,qe,Xe,ot,!1,Xe.paint.get("icon-translate"),Xe.paint.get("icon-translate-anchor"),Xe.layout.get("icon-rotation-alignment"),Xe.layout.get("icon-pitch-alignment"),Xe.layout.get("icon-keep-upright"),Yt,Kt),Xe.paint.get("text-opacity").constantOr(1)!==0&&wh(le,qe,Xe,ot,!0,Xe.paint.get("text-translate"),Xe.paint.get("text-translate-anchor"),Xe.layout.get("text-rotation-alignment"),Xe.layout.get("text-pitch-alignment"),Xe.layout.get("text-keep-upright"),Yt,Kt),qe.map.showCollisionBoxes&&(Hu(le,qe,Xe,ot,!0),Hu(le,qe,Xe,ot,!1))})(w,B,Q,ee,this.style.placement.variableOffsets);break;case"circle":(function(le,qe,Xe,ot){if(le.renderPass!=="translucent")return;let Tt=Xe.paint.get("circle-opacity"),Yt=Xe.paint.get("circle-stroke-width"),Kt=Xe.paint.get("circle-stroke-opacity"),xr=!Xe.layout.get("circle-sort-key").isConstant();if(Tt.constantOr(1)===0&&(Yt.constantOr(1)===0||Kt.constantOr(1)===0))return;let Ir=le.context,ve=Ir.gl,be=le.depthModeForSublayer(0,Po.ReadOnly),De=Yo.disabled,Be=le.colorModeForRenderPass(),et=[];for(let We=0;WeWe.sortKey-it.sortKey);for(let We of et){let{programConfiguration:it,program:Ft,layoutVertexBuffer:Ht,indexBuffer:tr,uniformValues:dr,terrainData:Sr}=We.state;Ft.draw(Ir,ve.TRIANGLES,be,De,Be,Pa.disabled,dr,Sr,Xe.id,Ht,tr,We.segments,Xe.paint,le.transform.zoom,it)}})(w,B,Q,ee);break;case"heatmap":(function(le,qe,Xe,ot){if(Xe.paint.get("heatmap-opacity")===0)return;let Tt=le.context;if(le.style.map.terrain){for(let Yt of ot){let Kt=qe.getTile(Yt);qe.hasRenderableParent(Yt)||(le.renderPass==="offscreen"?_f(le,Kt,Xe,Yt):le.renderPass==="translucent"&&Yc(le,Xe,Yt))}Tt.viewport.set([0,0,le.width,le.height])}else le.renderPass==="offscreen"?function(Yt,Kt,xr,Ir){let ve=Yt.context,be=ve.gl,De=Yo.disabled,Be=new qs([be.ONE,be.ONE],a.aM.transparent,[!0,!0,!0,!0]);(function(et,We,it){let Ft=et.gl;et.activeTexture.set(Ft.TEXTURE1),et.viewport.set([0,0,We.width/4,We.height/4]);let Ht=it.heatmapFbos.get(a.aU);Ht?(Ft.bindTexture(Ft.TEXTURE_2D,Ht.colorAttachment.get()),et.bindFramebuffer.set(Ht.framebuffer)):(Ht=eh(et,We.width/4,We.height/4),it.heatmapFbos.set(a.aU,Ht))})(ve,Yt,xr),ve.clear({color:a.aM.transparent});for(let et=0;et20&&Yt.texParameterf(Yt.TEXTURE_2D,Tt.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,Tt.extTextureFilterAnisotropicMax);let Wr=le.style.map.terrain&&le.style.map.terrain.getTerrainData(et),ni=Wr?et:null,Pi=ni?ni.posMatrix:le.transform.calculatePosMatrix(et.toUnwrapped(),Be),cn=cl(Pi,Sr||[0,0],dr||1,tr,Xe);Kt instanceof Gt?xr.draw(Tt,Yt.TRIANGLES,We,Yo.disabled,Ir,Pa.disabled,cn,Wr,Xe.id,Kt.boundsBuffer,le.quadTriangleIndexBuffer,Kt.boundsSegments):xr.draw(Tt,Yt.TRIANGLES,We,ve[et.overscaledZ],Ir,Pa.disabled,cn,Wr,Xe.id,le.rasterBoundsBuffer,le.quadTriangleIndexBuffer,le.rasterBoundsSegments)}})(w,B,Q,ee);break;case"background":(function(le,qe,Xe,ot){let Tt=Xe.paint.get("background-color"),Yt=Xe.paint.get("background-opacity");if(Yt===0)return;let Kt=le.context,xr=Kt.gl,Ir=le.transform,ve=Ir.tileSize,be=Xe.paint.get("background-pattern");if(le.isPatternMissing(be))return;let De=!be&&Tt.a===1&&Yt===1&&le.opaquePassEnabledForLayer()?"opaque":"translucent";if(le.renderPass!==De)return;let Be=Yo.disabled,et=le.depthModeForSublayer(0,De==="opaque"?Po.ReadWrite:Po.ReadOnly),We=le.colorModeForRenderPass(),it=le.useProgram(be?"backgroundPattern":"background"),Ft=ot||Ir.coveringTiles({tileSize:ve,terrain:le.style.map.terrain});be&&(Kt.activeTexture.set(xr.TEXTURE0),le.imageManager.bind(le.context));let Ht=Xe.getCrossfadeParameters();for(let tr of Ft){let dr=ot?tr.posMatrix:le.transform.calculatePosMatrix(tr.toUnwrapped()),Sr=be?Su(dr,Yt,le,be,{tileID:tr,tileSize:ve},Ht):Zl(dr,Yt,Tt),Or=le.style.map.terrain&&le.style.map.terrain.getTerrainData(tr);it.draw(Kt,xr.TRIANGLES,et,Be,We,Pa.disabled,Sr,Or,Xe.id,le.tileExtentBuffer,le.quadTriangleIndexBuffer,le.tileExtentSegments)}})(w,0,Q,ee);break;case"custom":(function(le,qe,Xe){let ot=le.context,Tt=Xe.implementation;if(le.renderPass==="offscreen"){let Yt=Tt.prerender;Yt&&(le.setCustomLayerDefaults(),ot.setColorMode(le.colorModeForRenderPass()),Yt.call(Tt,ot.gl,le.transform.customLayerMatrix()),ot.setDirty(),le.setBaseState())}else if(le.renderPass==="translucent"){le.setCustomLayerDefaults(),ot.setColorMode(le.colorModeForRenderPass()),ot.setStencilMode(Yo.disabled);let Yt=Tt.renderingMode==="3d"?new Po(le.context.gl.LEQUAL,Po.ReadWrite,le.depthRangeFor3D):le.depthModeForSublayer(0,Po.ReadOnly);ot.setDepthMode(Yt),Tt.render(ot.gl,le.transform.customLayerMatrix(),{farZ:le.transform.farZ,nearZ:le.transform.nearZ,fov:le.transform._fov,modelViewProjectionMatrix:le.transform.modelViewProjectionMatrix,projectionMatrix:le.transform.projectionMatrix}),ot.setDirty(),le.setBaseState(),ot.bindFramebuffer.set(null)}})(w,0,Q)}}translatePosMatrix(w,B,Q,ee,le){if(!Q[0]&&!Q[1])return w;let qe=le?ee==="map"?this.transform.angle:0:ee==="viewport"?-this.transform.angle:0;if(qe){let Tt=Math.sin(qe),Yt=Math.cos(qe);Q=[Q[0]*Yt-Q[1]*Tt,Q[0]*Tt+Q[1]*Yt]}let Xe=[le?Q[0]:In(B,Q[0],this.transform.zoom),le?Q[1]:In(B,Q[1],this.transform.zoom),0],ot=new Float32Array(16);return a.J(ot,w,Xe),ot}saveTileTexture(w){let B=this._tileTextures[w.size[0]];B?B.push(w):this._tileTextures[w.size[0]]=[w]}getTileTexture(w){let B=this._tileTextures[w];return B&&B.length>0?B.pop():null}isPatternMissing(w){if(!w)return!1;if(!w.from||!w.to)return!0;let B=this.imageManager.getPattern(w.from.toString()),Q=this.imageManager.getPattern(w.to.toString());return!B||!Q}useProgram(w,B){this.cache=this.cache||{};let Q=w+(B?B.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[Q]||(this.cache[Q]=new hn(this.context,jn[w],B,nc[w],this._showOverdrawInspector,this.style.map.terrain)),this.cache[Q]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){let w=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(w.FUNC_ADD)}initDebugOverlayCanvas(){this.debugOverlayCanvas==null&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new g(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){let{drawingBufferWidth:w,drawingBufferHeight:B}=this.context.gl;return this.width!==w||this.height!==B}}class ks{constructor(w,B){this.points=w,this.planes=B}static fromInvProjectionMatrix(w,B,Q){let ee=Math.pow(2,Q),le=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map(Xe=>{let ot=1/(Xe=a.af([],Xe,w))[3]/B*ee;return a.b1(Xe,Xe,[ot,ot,1/Xe[3],ot])}),qe=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(Xe=>{let ot=function(xr,Ir){var ve=Ir[0],be=Ir[1],De=Ir[2],Be=ve*ve+be*be+De*De;return Be>0&&(Be=1/Math.sqrt(Be)),xr[0]=Ir[0]*Be,xr[1]=Ir[1]*Be,xr[2]=Ir[2]*Be,xr}([],function(xr,Ir,ve){var be=Ir[0],De=Ir[1],Be=Ir[2],et=ve[0],We=ve[1],it=ve[2];return xr[0]=De*it-Be*We,xr[1]=Be*et-be*it,xr[2]=be*We-De*et,xr}([],L([],le[Xe[0]],le[Xe[1]]),L([],le[Xe[2]],le[Xe[1]]))),Tt=-((Yt=ot)[0]*(Kt=le[Xe[1]])[0]+Yt[1]*Kt[1]+Yt[2]*Kt[2]);var Yt,Kt;return ot.concat(Tt)});return new ks(le,qe)}}class bc{constructor(w,B){this.min=w,this.max=B,this.center=function(Q,ee,le){return Q[0]=.5*ee[0],Q[1]=.5*ee[1],Q[2]=.5*ee[2],Q}([],function(Q,ee,le){return Q[0]=ee[0]+le[0],Q[1]=ee[1]+le[1],Q[2]=ee[2]+le[2],Q}([],this.min,this.max))}quadrant(w){let B=[w%2==0,w<2],Q=E(this.min),ee=E(this.max);for(let le=0;le=0&&qe++;if(qe===0)return 0;qe!==B.length&&(Q=!1)}if(Q)return 2;for(let ee=0;ee<3;ee++){let le=Number.MAX_VALUE,qe=-Number.MAX_VALUE;for(let Xe=0;Xethis.max[ee]-this.min[ee])return 0}return 1}}class hu{constructor(w=0,B=0,Q=0,ee=0){if(isNaN(w)||w<0||isNaN(B)||B<0||isNaN(Q)||Q<0||isNaN(ee)||ee<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=w,this.bottom=B,this.left=Q,this.right=ee}interpolate(w,B,Q){return B.top!=null&&w.top!=null&&(this.top=a.y.number(w.top,B.top,Q)),B.bottom!=null&&w.bottom!=null&&(this.bottom=a.y.number(w.bottom,B.bottom,Q)),B.left!=null&&w.left!=null&&(this.left=a.y.number(w.left,B.left,Q)),B.right!=null&&w.right!=null&&(this.right=a.y.number(w.right,B.right,Q)),this}getCenter(w,B){let Q=a.ac((this.left+w-this.right)/2,0,w),ee=a.ac((this.top+B-this.bottom)/2,0,B);return new a.P(Q,ee)}equals(w){return this.top===w.top&&this.bottom===w.bottom&&this.left===w.left&&this.right===w.right}clone(){return new hu(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}let _u=85.051129;class nl{constructor(w,B,Q,ee,le){this.tileSize=512,this._renderWorldCopies=le===void 0||!!le,this._minZoom=w||0,this._maxZoom=B||22,this._minPitch=Q==null?0:Q,this._maxPitch=ee==null?60:ee,this.setMaxBounds(),this.width=0,this.height=0,this._center=new a.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new hu,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){let w=new nl(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return w.apply(this),w}apply(w){this.tileSize=w.tileSize,this.latRange=w.latRange,this.lngRange=w.lngRange,this.width=w.width,this.height=w.height,this._center=w._center,this._elevation=w._elevation,this.minElevationForCurrentTile=w.minElevationForCurrentTile,this.zoom=w.zoom,this.angle=w.angle,this._fov=w._fov,this._pitch=w._pitch,this._unmodified=w._unmodified,this._edgeInsets=w._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(w){this._minZoom!==w&&(this._minZoom=w,this.zoom=Math.max(this.zoom,w))}get maxZoom(){return this._maxZoom}set maxZoom(w){this._maxZoom!==w&&(this._maxZoom=w,this.zoom=Math.min(this.zoom,w))}get minPitch(){return this._minPitch}set minPitch(w){this._minPitch!==w&&(this._minPitch=w,this.pitch=Math.max(this.pitch,w))}get maxPitch(){return this._maxPitch}set maxPitch(w){this._maxPitch!==w&&(this._maxPitch=w,this.pitch=Math.min(this.pitch,w))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(w){w===void 0?w=!0:w===null&&(w=!1),this._renderWorldCopies=w}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new a.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(w){let B=-a.b3(w,-180,180)*Math.PI/180;this.angle!==B&&(this._unmodified=!1,this.angle=B,this._calcMatrices(),this.rotationMatrix=function(){var Q=new a.A(4);return a.A!=Float32Array&&(Q[1]=0,Q[2]=0),Q[0]=1,Q[3]=1,Q}(),function(Q,ee,le){var qe=ee[0],Xe=ee[1],ot=ee[2],Tt=ee[3],Yt=Math.sin(le),Kt=Math.cos(le);Q[0]=qe*Kt+ot*Yt,Q[1]=Xe*Kt+Tt*Yt,Q[2]=qe*-Yt+ot*Kt,Q[3]=Xe*-Yt+Tt*Kt}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(w){let B=a.ac(w,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==B&&(this._unmodified=!1,this._pitch=B,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(w){w=Math.max(.01,Math.min(60,w)),this._fov!==w&&(this._unmodified=!1,this._fov=w/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(w){let B=Math.min(Math.max(w,this.minZoom),this.maxZoom);this._zoom!==B&&(this._unmodified=!1,this._zoom=B,this.tileZoom=Math.max(0,Math.floor(B)),this.scale=this.zoomScale(B),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(w){w.lat===this._center.lat&&w.lng===this._center.lng||(this._unmodified=!1,this._center=w,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(w){w!==this._elevation&&(this._elevation=w,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(w){this._edgeInsets.equals(w)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,w,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(w){return this._edgeInsets.equals(w)}interpolatePadding(w,B,Q){this._unmodified=!1,this._edgeInsets.interpolate(w,B,Q),this._constrain(),this._calcMatrices()}coveringZoomLevel(w){let B=(w.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/w.tileSize));return Math.max(0,B)}getVisibleUnwrappedCoordinates(w){let B=[new a.b4(0,w)];if(this._renderWorldCopies){let Q=this.pointCoordinate(new a.P(0,0)),ee=this.pointCoordinate(new a.P(this.width,0)),le=this.pointCoordinate(new a.P(this.width,this.height)),qe=this.pointCoordinate(new a.P(0,this.height)),Xe=Math.floor(Math.min(Q.x,ee.x,le.x,qe.x)),ot=Math.floor(Math.max(Q.x,ee.x,le.x,qe.x)),Tt=1;for(let Yt=Xe-Tt;Yt<=ot+Tt;Yt++)Yt!==0&&B.push(new a.b4(Yt,w))}return B}coveringTiles(w){var B,Q;let ee=this.coveringZoomLevel(w),le=ee;if(w.minzoom!==void 0&&eew.maxzoom&&(ee=w.maxzoom);let qe=this.pointCoordinate(this.getCameraPoint()),Xe=a.Z.fromLngLat(this.center),ot=Math.pow(2,ee),Tt=[ot*qe.x,ot*qe.y,0],Yt=[ot*Xe.x,ot*Xe.y,0],Kt=ks.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,ee),xr=w.minzoom||0;!w.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(xr=ee);let Ir=w.terrain?2/Math.min(this.tileSize,w.tileSize)*this.tileSize:3,ve=We=>({aabb:new bc([We*ot,0,0],[(We+1)*ot,ot,0]),zoom:0,x:0,y:0,wrap:We,fullyVisible:!1}),be=[],De=[],Be=ee,et=w.reparseOverscaled?le:ee;if(this._renderWorldCopies)for(let We=1;We<=3;We++)be.push(ve(-We)),be.push(ve(We));for(be.push(ve(0));be.length>0;){let We=be.pop(),it=We.x,Ft=We.y,Ht=We.fullyVisible;if(!Ht){let Wr=We.aabb.intersects(Kt);if(Wr===0)continue;Ht=Wr===2}let tr=w.terrain?Tt:Yt,dr=We.aabb.distanceX(tr),Sr=We.aabb.distanceY(tr),Or=Math.max(Math.abs(dr),Math.abs(Sr));if(We.zoom===Be||Or>Ir+(1<=xr){let Wr=Be-We.zoom,ni=Tt[0]-.5-(it<>1),cn=We.zoom+1,ln=We.aabb.quadrant(Wr);if(w.terrain){let Cn=new a.S(cn,We.wrap,cn,ni,Pi),Kn=w.terrain.getMinMaxElevation(Cn),Ta=(B=Kn.minElevation)!==null&&B!==void 0?B:this.elevation,fa=(Q=Kn.maxElevation)!==null&&Q!==void 0?Q:this.elevation;ln=new bc([ln.min[0],ln.min[1],Ta],[ln.max[0],ln.max[1],fa])}be.push({aabb:ln,zoom:cn,x:ni,y:Pi,wrap:We.wrap,fullyVisible:Ht})}}return De.sort((We,it)=>We.distanceSq-it.distanceSq).map(We=>We.tileID)}resize(w,B){this.width=w,this.height=B,this.pixelsToGLUnits=[2/w,-2/B],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(w){return Math.pow(2,w)}scaleZoom(w){return Math.log(w)/Math.LN2}project(w){let B=a.ac(w.lat,-85.051129,_u);return new a.P(a.O(w.lng)*this.worldSize,a.Q(B)*this.worldSize)}unproject(w){return new a.Z(w.x/this.worldSize,w.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(w){let B=this.elevation,Q=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,ee=this.pointLocation(this.centerPoint,w),le=w.getElevationForLngLatZoom(ee,this.tileZoom);if(!(this.elevation-le))return;let qe=Q+B-le,Xe=Math.cos(this._pitch)*this.cameraToCenterDistance/qe/a.b5(1,ee.lat),ot=this.scaleZoom(Xe/this.tileSize);this._elevation=le,this._center=ee,this.zoom=ot}setLocationAtPoint(w,B){let Q=this.pointCoordinate(B),ee=this.pointCoordinate(this.centerPoint),le=this.locationCoordinate(w),qe=new a.Z(le.x-(Q.x-ee.x),le.y-(Q.y-ee.y));this.center=this.coordinateLocation(qe),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(w,B){return B?this.coordinatePoint(this.locationCoordinate(w),B.getElevationForLngLatZoom(w,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(w))}pointLocation(w,B){return this.coordinateLocation(this.pointCoordinate(w,B))}locationCoordinate(w){return a.Z.fromLngLat(w)}coordinateLocation(w){return w&&w.toLngLat()}pointCoordinate(w,B){if(B){let xr=B.pointCoordinate(w);if(xr!=null)return xr}let Q=[w.x,w.y,0,1],ee=[w.x,w.y,1,1];a.af(Q,Q,this.pixelMatrixInverse),a.af(ee,ee,this.pixelMatrixInverse);let le=Q[3],qe=ee[3],Xe=Q[1]/le,ot=ee[1]/qe,Tt=Q[2]/le,Yt=ee[2]/qe,Kt=Tt===Yt?0:(0-Tt)/(Yt-Tt);return new a.Z(a.y.number(Q[0]/le,ee[0]/qe,Kt)/this.worldSize,a.y.number(Xe,ot,Kt)/this.worldSize)}coordinatePoint(w,B=0,Q=this.pixelMatrix){let ee=[w.x*this.worldSize,w.y*this.worldSize,B,1];return a.af(ee,ee,Q),new a.P(ee[0]/ee[3],ee[1]/ee[3])}getBounds(){let w=Math.max(0,this.height/2-this.getHorizon());return new ce().extend(this.pointLocation(new a.P(0,w))).extend(this.pointLocation(new a.P(this.width,w))).extend(this.pointLocation(new a.P(this.width,this.height))).extend(this.pointLocation(new a.P(0,this.height)))}getMaxBounds(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new ce([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(w){w?(this.lngRange=[w.getWest(),w.getEast()],this.latRange=[w.getSouth(),w.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,_u])}calculateTileMatrix(w){let B=w.canonical,Q=this.worldSize/this.zoomScale(B.z),ee=B.x+Math.pow(2,B.z)*w.wrap,le=a.an(new Float64Array(16));return a.J(le,le,[ee*Q,B.y*Q,0]),a.K(le,le,[Q/a.X,Q/a.X,1]),le}calculatePosMatrix(w,B=!1){let Q=w.key,ee=B?this._alignedPosMatrixCache:this._posMatrixCache;if(ee[Q])return ee[Q];let le=this.calculateTileMatrix(w);return a.L(le,B?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,le),ee[Q]=new Float32Array(le),ee[Q]}calculateFogMatrix(w){let B=w.key,Q=this._fogMatrixCache;if(Q[B])return Q[B];let ee=this.calculateTileMatrix(w);return a.L(ee,this.fogMatrix,ee),Q[B]=new Float32Array(ee),Q[B]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(w,B){B=a.ac(+B,this.minZoom,this.maxZoom);let Q={center:new a.N(w.lng,w.lat),zoom:B},ee=this.lngRange;if(!this._renderWorldCopies&&ee===null){let We=179.9999999999;ee=[-We,We]}let le=this.tileSize*this.zoomScale(Q.zoom),qe=0,Xe=le,ot=0,Tt=le,Yt=0,Kt=0,{x:xr,y:Ir}=this.size;if(this.latRange){let We=this.latRange;qe=a.Q(We[1])*le,Xe=a.Q(We[0])*le,Xe-qeXe&&(Be=Xe-We)}if(ee){let We=(ot+Tt)/2,it=ve;this._renderWorldCopies&&(it=a.b3(ve,We-le/2,We+le/2));let Ft=xr/2;it-FtTt&&(De=Tt-Ft)}if(De!==void 0||Be!==void 0){let We=new a.P(De!=null?De:ve,Be!=null?Be:be);Q.center=this.unproject.call({worldSize:le},We).wrap()}return Q}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;let w=this._unmodified,{center:B,zoom:Q}=this.getConstrained(this.center,this.zoom);this.center=B,this.zoom=Q,this._unmodified=w,this._constraining=!1}_calcMatrices(){if(!this.height)return;let w=this.centerOffset,B=this.point.x,Q=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=a.b5(1,this.center.lat)*this.worldSize;let ee=a.an(new Float64Array(16));a.K(ee,ee,[this.width/2,-this.height/2,1]),a.J(ee,ee,[1,-1,0]),this.labelPlaneMatrix=ee,ee=a.an(new Float64Array(16)),a.K(ee,ee,[1,-1,1]),a.J(ee,ee,[-1,-1,0]),a.K(ee,ee,[2/this.width,2/this.height,1]),this.glCoordMatrix=ee;let le=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),qe=Math.min(this.elevation,this.minElevationForCurrentTile),Xe=le-qe*this._pixelPerMeter/Math.cos(this._pitch),ot=qe<0?Xe:le,Tt=Math.PI/2+this._pitch,Yt=this._fov*(.5+w.y/this.height),Kt=Math.sin(Yt)*ot/Math.sin(a.ac(Math.PI-Tt-Yt,.01,Math.PI-.01)),xr=this.getHorizon(),Ir=2*Math.atan(xr/this.cameraToCenterDistance)*(.5+w.y/(2*xr)),ve=Math.sin(Ir)*ot/Math.sin(a.ac(Math.PI-Tt-Ir,.01,Math.PI-.01)),be=Math.min(Kt,ve);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*be+ot),this.nearZ=this.height/50,ee=new Float64Array(16),a.b6(ee,this._fov,this.width/this.height,this.nearZ,this.farZ),ee[8]=2*-w.x/this.width,ee[9]=2*w.y/this.height,this.projectionMatrix=a.ae(ee),a.K(ee,ee,[1,-1,1]),a.J(ee,ee,[0,0,-this.cameraToCenterDistance]),a.b7(ee,ee,this._pitch),a.ad(ee,ee,this.angle),a.J(ee,ee,[-B,-Q,0]),this.mercatorMatrix=a.K([],ee,[this.worldSize,this.worldSize,this.worldSize]),a.K(ee,ee,[1,1,this._pixelPerMeter]),this.pixelMatrix=a.L(new Float64Array(16),this.labelPlaneMatrix,ee),a.J(ee,ee,[0,0,-this.elevation]),this.modelViewProjectionMatrix=ee,this.invModelViewProjectionMatrix=a.as([],ee),this.fogMatrix=new Float64Array(16),a.b6(this.fogMatrix,this._fov,this.width/this.height,le,this.farZ),this.fogMatrix[8]=2*-w.x/this.width,this.fogMatrix[9]=2*w.y/this.height,a.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),a.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),a.b7(this.fogMatrix,this.fogMatrix,this._pitch),a.ad(this.fogMatrix,this.fogMatrix,this.angle),a.J(this.fogMatrix,this.fogMatrix,[-B,-Q,0]),a.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),a.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=a.L(new Float64Array(16),this.labelPlaneMatrix,ee);let De=this.width%2/2,Be=this.height%2/2,et=Math.cos(this.angle),We=Math.sin(this.angle),it=B-Math.round(B)+et*De+We*Be,Ft=Q-Math.round(Q)+et*Be+We*De,Ht=new Float64Array(ee);if(a.J(Ht,Ht,[it>.5?it-1:it,Ft>.5?Ft-1:Ft,0]),this.alignedModelViewProjectionMatrix=Ht,ee=a.as(new Float64Array(16),this.pixelMatrix),!ee)throw new Error("failed to invert matrix");this.pixelMatrixInverse=ee,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;let w=this.pointCoordinate(new a.P(0,0)),B=[w.x*this.worldSize,w.y*this.worldSize,0,1];return a.af(B,B,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){let w=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new a.P(0,w))}getCameraQueryGeometry(w){let B=this.getCameraPoint();if(w.length===1)return[w[0],B];{let Q=B.x,ee=B.y,le=B.x,qe=B.y;for(let Xe of w)Q=Math.min(Q,Xe.x),ee=Math.min(ee,Xe.y),le=Math.max(le,Xe.x),qe=Math.max(qe,Xe.y);return[new a.P(Q,ee),new a.P(le,ee),new a.P(le,qe),new a.P(Q,qe),new a.P(Q,ee)]}}lngLatToCameraDepth(w,B){let Q=this.locationCoordinate(w),ee=[Q.x*this.worldSize,Q.y*this.worldSize,B,1];return a.af(ee,ee,this.modelViewProjectionMatrix),ee[2]/ee[3]}}function nh(ue,w){let B,Q=!1,ee=null,le=null,qe=()=>{ee=null,Q&&(ue.apply(le,B),ee=setTimeout(qe,w),Q=!1)};return(...Xe)=>(Q=!0,le=this,B=Xe,ee||qe(),ee)}class Ah{constructor(w){this._getCurrentHash=()=>{let B=window.location.hash.replace("#","");if(this._hashName){let Q;return B.split("&").map(ee=>ee.split("=")).forEach(ee=>{ee[0]===this._hashName&&(Q=ee)}),(Q&&Q[1]||"").split("/")}return B.split("/")},this._onHashChange=()=>{let B=this._getCurrentHash();if(B.length>=3&&!B.some(Q=>isNaN(Q))){let Q=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(B[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+B[2],+B[1]],zoom:+B[0],bearing:Q,pitch:+(B[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{let B=window.location.href.replace(/(#.*)?$/,this.getHashString());window.history.replaceState(window.history.state,null,B)},this._removeHash=()=>{let B=this._getCurrentHash();if(B.length===0)return;let Q=B.join("/"),ee=Q;ee.split("&").length>0&&(ee=ee.split("&")[0]),this._hashName&&(ee=`${this._hashName}=${Q}`);let le=window.location.hash.replace(ee,"");le.startsWith("#&")?le=le.slice(0,1)+le.slice(2):le==="#"&&(le="");let qe=window.location.href.replace(/(#.+)?$/,le);qe=qe.replace("&&","&"),window.history.replaceState(window.history.state,null,qe)},this._updateHash=nh(this._updateHashUnthrottled,300),this._hashName=w&&encodeURIComponent(w)}addTo(w){return this._map=w,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(w){let B=this._map.getCenter(),Q=Math.round(100*this._map.getZoom())/100,ee=Math.ceil((Q*Math.LN2+Math.log(512/360/.5))/Math.LN10),le=Math.pow(10,ee),qe=Math.round(B.lng*le)/le,Xe=Math.round(B.lat*le)/le,ot=this._map.getBearing(),Tt=this._map.getPitch(),Yt="";if(Yt+=w?`/${qe}/${Xe}/${Q}`:`${Q}/${Xe}/${qe}`,(ot||Tt)&&(Yt+="/"+Math.round(10*ot)/10),Tt&&(Yt+=`/${Math.round(Tt)}`),this._hashName){let Kt=this._hashName,xr=!1,Ir=window.location.hash.slice(1).split("&").map(ve=>{let be=ve.split("=")[0];return be===Kt?(xr=!0,`${be}=${Yt}`):ve}).filter(ve=>ve);return xr||Ir.push(`${Kt}=${Yt}`),`#${Ir.join("&")}`}return`#${Yt}`}}let zu={linearity:.3,easing:a.b8(0,0,.3,1)},Fc=a.e({deceleration:2500,maxSpeed:1400},zu),wc=a.e({deceleration:20,maxSpeed:1400},zu),bd=a.e({deceleration:1e3,maxSpeed:360},zu),xf=a.e({deceleration:1e3,maxSpeed:90},zu);class Pf{constructor(w){this._map=w,this.clear()}clear(){this._inertiaBuffer=[]}record(w){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:u.now(),settings:w})}_drainInertiaBuffer(){let w=this._inertiaBuffer,B=u.now();for(;w.length>0&&B-w[0].time>160;)w.shift()}_onMoveEnd(w){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;let B={zoom:0,bearing:0,pitch:0,pan:new a.P(0,0),pinchAround:void 0,around:void 0};for(let{settings:le}of this._inertiaBuffer)B.zoom+=le.zoomDelta||0,B.bearing+=le.bearingDelta||0,B.pitch+=le.pitchDelta||0,le.panDelta&&B.pan._add(le.panDelta),le.around&&(B.around=le.around),le.pinchAround&&(B.pinchAround=le.pinchAround);let Q=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,ee={};if(B.pan.mag()){let le=bf(B.pan.mag(),Q,a.e({},Fc,w||{}));ee.offset=B.pan.mult(le.amount/B.pan.mag()),ee.center=this._map.transform.center,Ou(ee,le)}if(B.zoom){let le=bf(B.zoom,Q,wc);ee.zoom=this._map.transform.zoom+le.amount,Ou(ee,le)}if(B.bearing){let le=bf(B.bearing,Q,bd);ee.bearing=this._map.transform.bearing+a.ac(le.amount,-179,179),Ou(ee,le)}if(B.pitch){let le=bf(B.pitch,Q,xf);ee.pitch=this._map.transform.pitch+le.amount,Ou(ee,le)}if(ee.zoom||ee.bearing){let le=B.pinchAround===void 0?B.around:B.pinchAround;ee.around=le?this._map.unproject(le):this._map.getCenter()}return this.clear(),a.e(ee,{noMoveStart:!0})}}function Ou(ue,w){(!ue.duration||ue.durationB.unproject(ot)),Xe=le.reduce((ot,Tt,Yt,Kt)=>ot.add(Tt.div(Kt.length)),new a.P(0,0));super(w,{points:le,point:Xe,lngLats:qe,lngLat:B.unproject(Xe),originalEvent:Q}),this._defaultPrevented=!1}}class Hh extends a.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(w,B,Q){super(w,{originalEvent:Q}),this._defaultPrevented=!1}}class If{constructor(w,B){this._map=w,this._clickTolerance=B.clickTolerance}reset(){delete this._mousedownPos}wheel(w){return this._firePreventable(new Hh(w.type,this._map,w))}mousedown(w,B){return this._mousedownPos=B,this._firePreventable(new jl(w.type,this._map,w))}mouseup(w){this._map.fire(new jl(w.type,this._map,w))}click(w,B){this._mousedownPos&&this._mousedownPos.dist(B)>=this._clickTolerance||this._map.fire(new jl(w.type,this._map,w))}dblclick(w){return this._firePreventable(new jl(w.type,this._map,w))}mouseover(w){this._map.fire(new jl(w.type,this._map,w))}mouseout(w){this._map.fire(new jl(w.type,this._map,w))}touchstart(w){return this._firePreventable(new lf(w.type,this._map,w))}touchmove(w){this._map.fire(new lf(w.type,this._map,w))}touchend(w){this._map.fire(new lf(w.type,this._map,w))}touchcancel(w){this._map.fire(new lf(w.type,this._map,w))}_firePreventable(w){if(this._map.fire(w),w.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class Cs{constructor(w){this._map=w}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(w){this._map.fire(new jl(w.type,this._map,w))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new jl("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(w){this._delayContextMenu?this._contextMenuEvent=w:this._ignoreContextMenu||this._map.fire(new jl(w.type,this._map,w)),this._map.listens("contextmenu")&&w.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class du{constructor(w){this._map=w}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(w){return this.transform.pointLocation(a.P.convert(w),this._map.terrain)}}class ku{constructor(w,B){this._map=w,this._tr=new du(w),this._el=w.getCanvasContainer(),this._container=w.getContainer(),this._clickTolerance=B.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(w,B){this.isEnabled()&&w.shiftKey&&w.button===0&&(c.disableDrag(),this._startPos=this._lastPos=B,this._active=!0)}mousemoveWindow(w,B){if(!this._active)return;let Q=B;if(this._lastPos.equals(Q)||!this._box&&Q.dist(this._startPos)le.fitScreenCoordinates(Q,ee,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",w)}keydown(w){this._active&&w.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",w))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(c.remove(this._box),this._box=null),c.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(w,B){return this._map.fire(new a.k(w,{originalEvent:B}))}}function Wf(ue,w){if(ue.length!==w.length)throw new Error(`The number of touches and points are not equal - touches ${ue.length}, points ${w.length}`);let B={};for(let Q=0;Qthis.numTouches)&&(this.aborted=!0),this.aborted||(this.startTime===void 0&&(this.startTime=w.timeStamp),Q.length===this.numTouches&&(this.centroid=function(ee){let le=new a.P(0,0);for(let qe of ee)le._add(qe);return le.div(ee.length)}(B),this.touches=Wf(Q,B)))}touchmove(w,B,Q){if(this.aborted||!this.centroid)return;let ee=Wf(Q,B);for(let le in this.touches){let qe=ee[le];(!qe||qe.dist(this.touches[le])>30)&&(this.aborted=!0)}}touchend(w,B,Q){if((!this.centroid||w.timeStamp-this.startTime>500)&&(this.aborted=!0),Q.length===0){let ee=!this.aborted&&this.centroid;if(this.reset(),ee)return ee}}}class wf{constructor(w){this.singleTap=new Us(w),this.numTaps=w.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(w,B,Q){this.singleTap.touchstart(w,B,Q)}touchmove(w,B,Q){this.singleTap.touchmove(w,B,Q)}touchend(w,B,Q){let ee=this.singleTap.touchend(w,B,Q);if(ee){let le=w.timeStamp-this.lastTime<500,qe=!this.lastTap||this.lastTap.dist(ee)<30;if(le&&qe||this.reset(),this.count++,this.lastTime=w.timeStamp,this.lastTap=ee,this.count===this.numTaps)return this.reset(),ee}}}class zc{constructor(w){this._tr=new du(w),this._zoomIn=new wf({numTouches:1,numTaps:2}),this._zoomOut=new wf({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(w,B,Q){this._zoomIn.touchstart(w,B,Q),this._zoomOut.touchstart(w,B,Q)}touchmove(w,B,Q){this._zoomIn.touchmove(w,B,Q),this._zoomOut.touchmove(w,B,Q)}touchend(w,B,Q){let ee=this._zoomIn.touchend(w,B,Q),le=this._zoomOut.touchend(w,B,Q),qe=this._tr;return ee?(this._active=!0,w.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:Xe=>Xe.easeTo({duration:300,zoom:qe.zoom+1,around:qe.unproject(ee)},{originalEvent:w})}):le?(this._active=!0,w.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:Xe=>Xe.easeTo({duration:300,zoom:qe.zoom-1,around:qe.unproject(le)},{originalEvent:w})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Wu{constructor(w){this._enabled=!!w.enable,this._moveStateManager=w.moveStateManager,this._clickTolerance=w.clickTolerance||1,this._moveFunction=w.move,this._activateOnStart=!!w.activateOnStart,w.assignEvents(this),this.reset()}reset(w){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(w)}_move(...w){let B=this._moveFunction(...w);if(B.bearingDelta||B.pitchDelta||B.around||B.panDelta)return this._active=!0,B}dragStart(w,B){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(w)&&(this._moveStateManager.startMove(w),this._lastPoint=B.length?B[0]:B,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(w,B){if(!this.isEnabled())return;let Q=this._lastPoint;if(!Q)return;if(w.preventDefault(),!this._moveStateManager.isValidMoveEvent(w))return void this.reset(w);let ee=B.length?B[0]:B;return!this._moved&&ee.dist(Q){ue.mousedown=ue.dragStart,ue.mousemoveWindow=ue.dragMove,ue.mouseup=ue.dragEnd,ue.contextmenu=w=>{w.preventDefault()}},Wl=({enable:ue,clickTolerance:w,bearingDegreesPerPixelMoved:B=.8})=>{let Q=new Xu({checkCorrectEvent:ee=>c.mouseButton(ee)===0&&ee.ctrlKey||c.mouseButton(ee)===2});return new Wu({clickTolerance:w,move:(ee,le)=>({bearingDelta:(le.x-ee.x)*B}),moveStateManager:Q,enable:ue,assignEvents:Xf})},ah=({enable:ue,clickTolerance:w,pitchDegreesPerPixelMoved:B=-.5})=>{let Q=new Xu({checkCorrectEvent:ee=>c.mouseButton(ee)===0&&ee.ctrlKey||c.mouseButton(ee)===2});return new Wu({clickTolerance:w,move:(ee,le)=>({pitchDelta:(le.y-ee.y)*B}),moveStateManager:Q,enable:ue,assignEvents:Xf})};class Zu{constructor(w,B){this._clickTolerance=w.clickTolerance||1,this._map=B,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new a.P(0,0)}_shouldBePrevented(w){return w<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(w,B,Q){return this._calculateTransform(w,B,Q)}touchmove(w,B,Q){if(this._active){if(!this._shouldBePrevented(Q.length))return w.preventDefault(),this._calculateTransform(w,B,Q);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",w)}}touchend(w,B,Q){this._calculateTransform(w,B,Q),this._active&&this._shouldBePrevented(Q.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(w,B,Q){Q.length>0&&(this._active=!0);let ee=Wf(Q,B),le=new a.P(0,0),qe=new a.P(0,0),Xe=0;for(let Tt in ee){let Yt=ee[Tt],Kt=this._touches[Tt];Kt&&(le._add(Yt),qe._add(Yt.sub(Kt)),Xe++,ee[Tt]=Yt)}if(this._touches=ee,this._shouldBePrevented(Xe)||!qe.mag())return;let ot=qe.div(Xe);return this._sum._add(ot),this._sum.mag()Math.abs(ue.x)}class Bc extends Oc{constructor(w){super(),this._currentTouchCount=0,this._map=w}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(w,B,Q){super.touchstart(w,B,Q),this._currentTouchCount=Q.length}_start(w){this._lastPoints=w,fc(w[0].sub(w[1]))&&(this._valid=!1)}_move(w,B,Q){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;let ee=w[0].sub(this._lastPoints[0]),le=w[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(ee,le,Q.timeStamp),this._valid?(this._lastPoints=w,this._active=!0,{pitchDelta:(ee.y+le.y)/2*-.5}):void 0}gestureBeginsVertically(w,B,Q){if(this._valid!==void 0)return this._valid;let ee=w.mag()>=2,le=B.mag()>=2;if(!ee&&!le)return;if(!ee||!le)return this._firstMove===void 0&&(this._firstMove=Q),Q-this._firstMove<100&&void 0;let qe=w.y>0==B.y>0;return fc(w)&&fc(B)&&qe}}let At={panStep:100,bearingStep:15,pitchStep:10};class Wt{constructor(w){this._tr=new du(w);let B=At;this._panStep=B.panStep,this._bearingStep=B.bearingStep,this._pitchStep=B.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(w){if(w.altKey||w.ctrlKey||w.metaKey)return;let B=0,Q=0,ee=0,le=0,qe=0;switch(w.keyCode){case 61:case 107:case 171:case 187:B=1;break;case 189:case 109:case 173:B=-1;break;case 37:w.shiftKey?Q=-1:(w.preventDefault(),le=-1);break;case 39:w.shiftKey?Q=1:(w.preventDefault(),le=1);break;case 38:w.shiftKey?ee=1:(w.preventDefault(),qe=-1);break;case 40:w.shiftKey?ee=-1:(w.preventDefault(),qe=1);break;default:return}return this._rotationDisabled&&(Q=0,ee=0),{cameraAnimation:Xe=>{let ot=this._tr;Xe.easeTo({duration:300,easeId:"keyboardHandler",easing:Cr,zoom:B?Math.round(ot.zoom)+B*(w.shiftKey?2:1):ot.zoom,bearing:ot.bearing+Q*this._bearingStep,pitch:ot.pitch+ee*this._pitchStep,offset:[-le*this._panStep,-qe*this._panStep],center:ot.center},{originalEvent:w})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function Cr(ue){return ue*(2-ue)}let Ar=4.000244140625;class Kr{constructor(w,B){this._onTimeout=Q=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(Q)},this._map=w,this._tr=new du(w),this._triggerRenderFrame=B,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(w){this._defaultZoomRate=w}setWheelZoomRate(w){this._wheelZoomRate=w}isEnabled(){return!!this._enabled}isActive(){return!!this._active||this._finishTimeout!==void 0}isZooming(){return!!this._zooming}enable(w){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!w&&w.around==="center")}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(w){return!!this._map.cooperativeGestures.isEnabled()&&!(w.ctrlKey||this._map.cooperativeGestures.isBypassed(w))}wheel(w){if(!this.isEnabled())return;if(this._shouldBePrevented(w))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",w);let B=w.deltaMode===WheelEvent.DOM_DELTA_LINE?40*w.deltaY:w.deltaY,Q=u.now(),ee=Q-(this._lastWheelEventTime||0);this._lastWheelEventTime=Q,B!==0&&B%Ar==0?this._type="wheel":B!==0&&Math.abs(B)<4?this._type="trackpad":ee>400?(this._type=null,this._lastValue=B,this._timeout=setTimeout(this._onTimeout,40,w)):this._type||(this._type=Math.abs(ee*B)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,B+=this._lastValue)),w.shiftKey&&B&&(B/=4),this._type&&(this._lastWheelEvent=w,this._delta-=B,this._active||this._start(w)),w.preventDefault()}_start(w){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);let B=c.mousePos(this._map.getCanvas(),w),Q=this._tr;this._around=B.y>Q.transform.height/2-Q.transform.getHorizon()?a.N.convert(this._aroundCenter?Q.center:Q.unproject(B)):a.N.convert(Q.center),this._aroundPoint=Q.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;let w=this._tr.transform;if(this._delta!==0){let ot=this._type==="wheel"&&Math.abs(this._delta)>Ar?this._wheelZoomRate:this._defaultZoomRate,Tt=2/(1+Math.exp(-Math.abs(this._delta*ot)));this._delta<0&&Tt!==0&&(Tt=1/Tt);let Yt=typeof this._targetZoom=="number"?w.zoomScale(this._targetZoom):w.scale;this._targetZoom=Math.min(w.maxZoom,Math.max(w.minZoom,w.scaleZoom(Yt*Tt))),this._type==="wheel"&&(this._startZoom=w.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}let B=typeof this._targetZoom=="number"?this._targetZoom:w.zoom,Q=this._startZoom,ee=this._easing,le,qe=!1,Xe=u.now()-this._lastWheelEventTime;if(this._type==="wheel"&&Q&&ee&&Xe){let ot=Math.min(Xe/200,1),Tt=ee(ot);le=a.y.number(Q,B,Tt),ot<1?this._frameId||(this._frameId=!0):qe=!0}else le=B,qe=!0;return this._active=!0,qe&&(this._active=!1,this._finishTimeout=setTimeout(()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!qe,zoomDelta:le-w.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(w){let B=a.b9;if(this._prevEase){let Q=this._prevEase,ee=(u.now()-Q.start)/Q.duration,le=Q.easing(ee+.01)-Q.easing(ee),qe=.27/Math.sqrt(le*le+1e-4)*.01,Xe=Math.sqrt(.0729-qe*qe);B=a.b8(qe,Xe,.25,1)}return this._prevEase={start:u.now(),duration:w,easing:B},B}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class ki{constructor(w,B){this._clickZoom=w,this._tapZoom=B}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class Xi{constructor(w){this._tr=new du(w),this.reset()}reset(){this._active=!1}dblclick(w,B){return w.preventDefault(),{cameraAnimation:Q=>{Q.easeTo({duration:300,zoom:this._tr.zoom+(w.shiftKey?-1:1),around:this._tr.unproject(B)},{originalEvent:w})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class dn{constructor(){this._tap=new wf({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(w,B,Q){if(!this._swipePoint)if(this._tapTime){let ee=B[0],le=w.timeStamp-this._tapTime<500,qe=this._tapPoint.dist(ee)<30;le&&qe?Q.length>0&&(this._swipePoint=ee,this._swipeTouch=Q[0].identifier):this.reset()}else this._tap.touchstart(w,B,Q)}touchmove(w,B,Q){if(this._tapTime){if(this._swipePoint){if(Q[0].identifier!==this._swipeTouch)return;let ee=B[0],le=ee.y-this._swipePoint.y;return this._swipePoint=ee,w.preventDefault(),this._active=!0,{zoomDelta:le/128}}}else this._tap.touchmove(w,B,Q)}touchend(w,B,Q){if(this._tapTime)this._swipePoint&&Q.length===0&&this.reset();else{let ee=this._tap.touchend(w,B,Q);ee&&(this._tapTime=w.timeStamp,this._tapPoint=ee)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class wn{constructor(w,B,Q){this._el=w,this._mousePan=B,this._touchPan=Q}enable(w){this._inertiaOptions=w||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class Nn{constructor(w,B,Q){this._pitchWithRotate=w.pitchWithRotate,this._mouseRotate=B,this._mousePitch=Q}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class Yi{constructor(w,B,Q,ee){this._el=w,this._touchZoom=B,this._touchRotate=Q,this._tapDragZoom=ee,this._rotationDisabled=!1,this._enabled=!0}enable(w){this._touchZoom.enable(w),this._rotationDisabled||this._touchRotate.enable(w),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}class Qi{constructor(w,B){this._bypassKey=navigator.userAgent.indexOf("Mac")!==-1?"metaKey":"ctrlKey",this._map=w,this._options=B,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;let w=this._map.getCanvasContainer();w.classList.add("maplibregl-cooperative-gestures"),this._container=c.create("div","maplibregl-cooperative-gesture-screen",w);let B=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");this._bypassKey==="metaKey"&&(B=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));let Q=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),ee=document.createElement("div");ee.className="maplibregl-desktop-message",ee.textContent=B,this._container.appendChild(ee);let le=document.createElement("div");le.className="maplibregl-mobile-message",le.textContent=Q,this._container.appendChild(le),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(c.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(w){return w[this._bypassKey]}notifyGestureBlocked(w,B){this._enabled&&(this._map.fire(new a.k("cooperativegestureprevented",{gestureType:w,originalEvent:B})),this._container.classList.add("maplibregl-show"),setTimeout(()=>{this._container.classList.remove("maplibregl-show")},100))}}let on=ue=>ue.zoom||ue.drag||ue.pitch||ue.rotate;class Fi extends a.k{}function $n(ue){return ue.panDelta&&ue.panDelta.mag()||ue.zoomDelta||ue.bearingDelta||ue.pitchDelta}class Ca{constructor(w,B){this.handleWindowEvent=ee=>{this.handleEvent(ee,`${ee.type}Window`)},this.handleEvent=(ee,le)=>{if(ee.type==="blur")return void this.stop(!0);this._updatingCamera=!0;let qe=ee.type==="renderFrame"?void 0:ee,Xe={needsRenderFrame:!1},ot={},Tt={},Yt=ee.touches,Kt=Yt?this._getMapTouches(Yt):void 0,xr=Kt?c.touchPos(this._map.getCanvas(),Kt):c.mousePos(this._map.getCanvas(),ee);for(let{handlerName:be,handler:De,allowed:Be}of this._handlers){if(!De.isEnabled())continue;let et;this._blockedByActive(Tt,Be,be)?De.reset():De[le||ee.type]&&(et=De[le||ee.type](ee,xr,Kt),this.mergeHandlerResult(Xe,ot,et,be,qe),et&&et.needsRenderFrame&&this._triggerRenderFrame()),(et||De.isActive())&&(Tt[be]=De)}let Ir={};for(let be in this._previousActiveHandlers)Tt[be]||(Ir[be]=qe);this._previousActiveHandlers=Tt,(Object.keys(Ir).length||$n(Xe))&&(this._changes.push([Xe,ot,Ir]),this._triggerRenderFrame()),(Object.keys(Tt).length||$n(Xe))&&this._map._stop(!0),this._updatingCamera=!1;let{cameraAnimation:ve}=Xe;ve&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],ve(this._map))},this._map=w,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Pf(w),this._bearingSnap=B.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(B);let Q=this._el;this._listeners=[[Q,"touchstart",{passive:!0}],[Q,"touchmove",{passive:!1}],[Q,"touchend",void 0],[Q,"touchcancel",void 0],[Q,"mousedown",void 0],[Q,"mousemove",void 0],[Q,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[Q,"mouseover",void 0],[Q,"mouseout",void 0],[Q,"dblclick",void 0],[Q,"click",void 0],[Q,"keydown",{capture:!1}],[Q,"keyup",void 0],[Q,"wheel",{passive:!1}],[Q,"contextmenu",void 0],[window,"blur",void 0]];for(let[ee,le,qe]of this._listeners)c.addEventListener(ee,le,ee===document?this.handleWindowEvent:this.handleEvent,qe)}destroy(){for(let[w,B,Q]of this._listeners)c.removeEventListener(w,B,w===document?this.handleWindowEvent:this.handleEvent,Q)}_addDefaultHandlers(w){let B=this._map,Q=B.getCanvasContainer();this._add("mapEvent",new If(B,w));let ee=B.boxZoom=new ku(B,w);this._add("boxZoom",ee),w.interactive&&w.boxZoom&&ee.enable();let le=B.cooperativeGestures=new Qi(B,w.cooperativeGestures);this._add("cooperativeGestures",le),w.cooperativeGestures&&le.enable();let qe=new zc(B),Xe=new Xi(B);B.doubleClickZoom=new ki(Xe,qe),this._add("tapZoom",qe),this._add("clickZoom",Xe),w.interactive&&w.doubleClickZoom&&B.doubleClickZoom.enable();let ot=new dn;this._add("tapDragZoom",ot);let Tt=B.touchPitch=new Bc(B);this._add("touchPitch",Tt),w.interactive&&w.touchPitch&&B.touchPitch.enable(w.touchPitch);let Yt=Wl(w),Kt=ah(w);B.dragRotate=new Nn(w,Yt,Kt),this._add("mouseRotate",Yt,["mousePitch"]),this._add("mousePitch",Kt,["mouseRotate"]),w.interactive&&w.dragRotate&&B.dragRotate.enable();let xr=(({enable:et,clickTolerance:We})=>{let it=new Xu({checkCorrectEvent:Ft=>c.mouseButton(Ft)===0&&!Ft.ctrlKey});return new Wu({clickTolerance:We,move:(Ft,Ht)=>({around:Ht,panDelta:Ht.sub(Ft)}),activateOnStart:!0,moveStateManager:it,enable:et,assignEvents:Xf})})(w),Ir=new Zu(w,B);B.dragPan=new wn(Q,xr,Ir),this._add("mousePan",xr),this._add("touchPan",Ir,["touchZoom","touchRotate"]),w.interactive&&w.dragPan&&B.dragPan.enable(w.dragPan);let ve=new cf,be=new vu;B.touchZoomRotate=new Yi(Q,be,ve,ot),this._add("touchRotate",ve,["touchPan","touchZoom"]),this._add("touchZoom",be,["touchPan","touchRotate"]),w.interactive&&w.touchZoomRotate&&B.touchZoomRotate.enable(w.touchZoomRotate);let De=B.scrollZoom=new Kr(B,()=>this._triggerRenderFrame());this._add("scrollZoom",De,["mousePan"]),w.interactive&&w.scrollZoom&&B.scrollZoom.enable(w.scrollZoom);let Be=B.keyboard=new Wt(B);this._add("keyboard",Be),w.interactive&&w.keyboard&&B.keyboard.enable(),this._add("blockableMapEvent",new Cs(B))}_add(w,B,Q){this._handlers.push({handlerName:w,handler:B,allowed:Q}),this._handlersById[w]=B}stop(w){if(!this._updatingCamera){for(let{handler:B}of this._handlers)B.reset();this._inertia.clear(),this._fireEvents({},{},w),this._changes=[]}}isActive(){for(let{handler:w}of this._handlers)if(w.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!on(this._eventsInProgress)||this.isZooming()}_blockedByActive(w,B,Q){for(let ee in w)if(ee!==Q&&(!B||B.indexOf(ee)<0))return!0;return!1}_getMapTouches(w){let B=[];for(let Q of w)this._el.contains(Q.target)&&B.push(Q);return B}mergeHandlerResult(w,B,Q,ee,le){if(!Q)return;a.e(w,Q);let qe={handlerName:ee,originalEvent:Q.originalEvent||le};Q.zoomDelta!==void 0&&(B.zoom=qe),Q.panDelta!==void 0&&(B.drag=qe),Q.pitchDelta!==void 0&&(B.pitch=qe),Q.bearingDelta!==void 0&&(B.rotate=qe)}_applyChanges(){let w={},B={},Q={};for(let[ee,le,qe]of this._changes)ee.panDelta&&(w.panDelta=(w.panDelta||new a.P(0,0))._add(ee.panDelta)),ee.zoomDelta&&(w.zoomDelta=(w.zoomDelta||0)+ee.zoomDelta),ee.bearingDelta&&(w.bearingDelta=(w.bearingDelta||0)+ee.bearingDelta),ee.pitchDelta&&(w.pitchDelta=(w.pitchDelta||0)+ee.pitchDelta),ee.around!==void 0&&(w.around=ee.around),ee.pinchAround!==void 0&&(w.pinchAround=ee.pinchAround),ee.noInertia&&(w.noInertia=ee.noInertia),a.e(B,le),a.e(Q,qe);this._updateMapTransform(w,B,Q),this._changes=[]}_updateMapTransform(w,B,Q){let ee=this._map,le=ee._getTransformForUpdate(),qe=ee.terrain;if(!($n(w)||qe&&this._terrainMovement))return this._fireEvents(B,Q,!0);let{panDelta:Xe,zoomDelta:ot,bearingDelta:Tt,pitchDelta:Yt,around:Kt,pinchAround:xr}=w;xr!==void 0&&(Kt=xr),ee._stop(!0),Kt=Kt||ee.transform.centerPoint;let Ir=le.pointLocation(Xe?Kt.sub(Xe):Kt);Tt&&(le.bearing+=Tt),Yt&&(le.pitch+=Yt),ot&&(le.zoom+=ot),qe?this._terrainMovement||!B.drag&&!B.zoom?B.drag&&this._terrainMovement?le.center=le.pointLocation(le.centerPoint.sub(Xe)):le.setLocationAtPoint(Ir,Kt):(this._terrainMovement=!0,this._map._elevationFreeze=!0,le.setLocationAtPoint(Ir,Kt)):le.setLocationAtPoint(Ir,Kt),ee._applyUpdatedTransform(le),this._map._update(),w.noInertia||this._inertia.record(w),this._fireEvents(B,Q,!0)}_fireEvents(w,B,Q){let ee=on(this._eventsInProgress),le=on(w),qe={};for(let Kt in w){let{originalEvent:xr}=w[Kt];this._eventsInProgress[Kt]||(qe[`${Kt}start`]=xr),this._eventsInProgress[Kt]=w[Kt]}!ee&&le&&this._fireEvent("movestart",le.originalEvent);for(let Kt in qe)this._fireEvent(Kt,qe[Kt]);le&&this._fireEvent("move",le.originalEvent);for(let Kt in w){let{originalEvent:xr}=w[Kt];this._fireEvent(Kt,xr)}let Xe={},ot;for(let Kt in this._eventsInProgress){let{handlerName:xr,originalEvent:Ir}=this._eventsInProgress[Kt];this._handlersById[xr].isActive()||(delete this._eventsInProgress[Kt],ot=B[xr]||Ir,Xe[`${Kt}end`]=ot)}for(let Kt in Xe)this._fireEvent(Kt,Xe[Kt]);let Tt=on(this._eventsInProgress),Yt=(ee||le)&&!Tt;if(Yt&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;let Kt=this._map._getTransformForUpdate();Kt.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(Kt)}if(Q&&Yt){this._updatingCamera=!0;let Kt=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),xr=Ir=>Ir!==0&&-this._bearingSnap{delete this._frameId,this.handleEvent(new Fi("renderFrame",{timeStamp:w})),this._applyChanges()})}_triggerRenderFrame(){this._frameId===void 0&&(this._frameId=this._requestFrame())}}class Ra extends a.E{constructor(w,B){super(),this._renderFrameCallback=()=>{let Q=Math.min((u.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(Q)),Q<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=w,this._bearingSnap=B.bearingSnap,this.on("moveend",()=>{delete this._requestedCameraState})}getCenter(){return new a.N(this.transform.center.lng,this.transform.center.lat)}setCenter(w,B){return this.jumpTo({center:w},B)}panBy(w,B,Q){return w=a.P.convert(w).mult(-1),this.panTo(this.transform.center,a.e({offset:w},B),Q)}panTo(w,B,Q){return this.easeTo(a.e({center:w},B),Q)}getZoom(){return this.transform.zoom}setZoom(w,B){return this.jumpTo({zoom:w},B),this}zoomTo(w,B,Q){return this.easeTo(a.e({zoom:w},B),Q)}zoomIn(w,B){return this.zoomTo(this.getZoom()+1,w,B),this}zoomOut(w,B){return this.zoomTo(this.getZoom()-1,w,B),this}getBearing(){return this.transform.bearing}setBearing(w,B){return this.jumpTo({bearing:w},B),this}getPadding(){return this.transform.padding}setPadding(w,B){return this.jumpTo({padding:w},B),this}rotateTo(w,B,Q){return this.easeTo(a.e({bearing:w},B),Q)}resetNorth(w,B){return this.rotateTo(0,a.e({duration:1e3},w),B),this}resetNorthPitch(w,B){return this.easeTo(a.e({bearing:0,pitch:0,duration:1e3},w),B),this}snapToNorth(w,B){return Math.abs(this.getBearing()){if(this._zooming&&(ee.zoom=a.y.number(le,De,tr)),this._rotating&&(ee.bearing=a.y.number(qe,Tt,tr)),this._pitching&&(ee.pitch=a.y.number(Xe,Yt,tr)),this._padding&&(ee.interpolatePadding(ot,Kt,tr),Ir=ee.centerPoint.add(xr)),this.terrain&&!w.freezeElevation&&this._updateElevation(tr),it)ee.setLocationAtPoint(it,Ft);else{let dr=ee.zoomScale(ee.zoom-le),Sr=De>le?Math.min(2,We):Math.max(.5,We),Or=Math.pow(Sr,1-tr),Wr=ee.unproject(Be.add(et.mult(tr*Or)).mult(dr));ee.setLocationAtPoint(ee.renderWorldCopies?Wr.wrap():Wr,Ir)}this._applyUpdatedTransform(ee),this._fireMoveEvents(B)},tr=>{this.terrain&&w.freezeElevation&&this._finalizeElevation(),this._afterEase(B,tr)},w),this}_prepareEase(w,B,Q={}){this._moving=!0,B||Q.moving||this.fire(new a.k("movestart",w)),this._zooming&&!Q.zooming&&this.fire(new a.k("zoomstart",w)),this._rotating&&!Q.rotating&&this.fire(new a.k("rotatestart",w)),this._pitching&&!Q.pitching&&this.fire(new a.k("pitchstart",w))}_prepareElevation(w){this._elevationCenter=w,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(w,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(w){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);let B=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(w<1&&B!==this._elevationTarget){let Q=this._elevationTarget-this._elevationStart;this._elevationStart+=w*(Q-(B-(Q*w+this._elevationStart))/(1-w)),this._elevationTarget=B}this.transform.elevation=a.y.number(this._elevationStart,this._elevationTarget,w)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(w){let B=w.getCameraPosition(),Q=this.terrain.getElevationForLngLatZoom(B.lngLat,w.zoom);if(B.altitudethis._elevateCameraIfInsideTerrain(ee)),this.transformCameraUpdate&&B.push(ee=>this.transformCameraUpdate(ee)),!B.length)return;let Q=w.clone();for(let ee of B){let le=Q.clone(),{center:qe,zoom:Xe,pitch:ot,bearing:Tt,elevation:Yt}=ee(le);qe&&(le.center=qe),Xe!==void 0&&(le.zoom=Xe),ot!==void 0&&(le.pitch=ot),Tt!==void 0&&(le.bearing=Tt),Yt!==void 0&&(le.elevation=Yt),Q.apply(le)}this.transform.apply(Q)}_fireMoveEvents(w){this.fire(new a.k("move",w)),this._zooming&&this.fire(new a.k("zoom",w)),this._rotating&&this.fire(new a.k("rotate",w)),this._pitching&&this.fire(new a.k("pitch",w))}_afterEase(w,B){if(this._easeId&&B&&this._easeId===B)return;delete this._easeId;let Q=this._zooming,ee=this._rotating,le=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,Q&&this.fire(new a.k("zoomend",w)),ee&&this.fire(new a.k("rotateend",w)),le&&this.fire(new a.k("pitchend",w)),this.fire(new a.k("moveend",w))}flyTo(w,B){var Q;if(!w.essential&&u.prefersReducedMotion){let Cn=a.M(w,["center","zoom","bearing","pitch","around"]);return this.jumpTo(Cn,B)}this.stop(),w=a.e({offset:[0,0],speed:1.2,curve:1.42,easing:a.b9},w);let ee=this._getTransformForUpdate(),le=ee.zoom,qe=ee.bearing,Xe=ee.pitch,ot=ee.padding,Tt="bearing"in w?this._normalizeBearing(w.bearing,qe):qe,Yt="pitch"in w?+w.pitch:Xe,Kt="padding"in w?w.padding:ee.padding,xr=a.P.convert(w.offset),Ir=ee.centerPoint.add(xr),ve=ee.pointLocation(Ir),{center:be,zoom:De}=ee.getConstrained(a.N.convert(w.center||ve),(Q=w.zoom)!==null&&Q!==void 0?Q:le);this._normalizeCenter(be,ee);let Be=ee.zoomScale(De-le),et=ee.project(ve),We=ee.project(be).sub(et),it=w.curve,Ft=Math.max(ee.width,ee.height),Ht=Ft/Be,tr=We.mag();if("minZoom"in w){let Cn=a.ac(Math.min(w.minZoom,le,De),ee.minZoom,ee.maxZoom),Kn=Ft/ee.zoomScale(Cn-le);it=Math.sqrt(Kn/tr*2)}let dr=it*it;function Sr(Cn){let Kn=(Ht*Ht-Ft*Ft+(Cn?-1:1)*dr*dr*tr*tr)/(2*(Cn?Ht:Ft)*dr*tr);return Math.log(Math.sqrt(Kn*Kn+1)-Kn)}function Or(Cn){return(Math.exp(Cn)-Math.exp(-Cn))/2}function Wr(Cn){return(Math.exp(Cn)+Math.exp(-Cn))/2}let ni=Sr(!1),Pi=function(Cn){return Wr(ni)/Wr(ni+it*Cn)},cn=function(Cn){return Ft*((Wr(ni)*(Or(Kn=ni+it*Cn)/Wr(Kn))-Or(ni))/dr)/tr;var Kn},ln=(Sr(!0)-ni)/it;if(Math.abs(tr)<1e-6||!isFinite(ln)){if(Math.abs(Ft-Ht)<1e-6)return this.easeTo(w,B);let Cn=Ht0,Pi=Kn=>Math.exp(Cn*it*Kn)}return w.duration="duration"in w?+w.duration:1e3*ln/("screenSpeed"in w?+w.screenSpeed/it:+w.speed),w.maxDuration&&w.duration>w.maxDuration&&(w.duration=0),this._zooming=!0,this._rotating=qe!==Tt,this._pitching=Yt!==Xe,this._padding=!ee.isPaddingEqual(Kt),this._prepareEase(B,!1),this.terrain&&this._prepareElevation(be),this._ease(Cn=>{let Kn=Cn*ln,Ta=1/Pi(Kn);ee.zoom=Cn===1?De:le+ee.scaleZoom(Ta),this._rotating&&(ee.bearing=a.y.number(qe,Tt,Cn)),this._pitching&&(ee.pitch=a.y.number(Xe,Yt,Cn)),this._padding&&(ee.interpolatePadding(ot,Kt,Cn),Ir=ee.centerPoint.add(xr)),this.terrain&&!w.freezeElevation&&this._updateElevation(Cn);let fa=Cn===1?be:ee.unproject(et.add(We.mult(cn(Kn))).mult(Ta));ee.setLocationAtPoint(ee.renderWorldCopies?fa.wrap():fa,Ir),this._applyUpdatedTransform(ee),this._fireMoveEvents(B)},()=>{this.terrain&&w.freezeElevation&&this._finalizeElevation(),this._afterEase(B)},w),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(w,B){var Q;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){let ee=this._onEaseEnd;delete this._onEaseEnd,ee.call(this,B)}return w||(Q=this.handlers)===null||Q===void 0||Q.stop(!1),this}_ease(w,B,Q){Q.animate===!1||Q.duration===0?(w(1),B()):(this._easeStart=u.now(),this._easeOptions=Q,this._onEaseFrame=w,this._onEaseEnd=B,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(w,B){w=a.b3(w,-180,180);let Q=Math.abs(w-B);return Math.abs(w-360-B)180?-360:Q<-180?360:0}queryTerrainElevation(w){return this.terrain?this.terrain.getElevationForLngLatZoom(a.N.convert(w),this.transform.tileZoom)-this.transform.elevation:null}}let La={compact:!0,customAttribution:'
MapLibre'};class Na{constructor(w=La){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")))},this._updateData=B=>{!B||B.sourceDataType!=="metadata"&&B.sourceDataType!=="visibility"&&B.dataType!=="style"&&B.type!=="terrain"||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact===!1?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"))},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show")},this.options=w}getDefaultPosition(){return"bottom-right"}onAdd(w){return this._map=w,this._compact=this.options.compact,this._container=c.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=c.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=c.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){c.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(w,B){let Q=this._map._getUIString(`AttributionControl.${B}`);w.title=Q,w.setAttribute("aria-label",Q)}_updateAttributions(){if(!this._map.style)return;let w=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?w=w.concat(this.options.customAttribution.map(ee=>typeof ee!="string"?"":ee)):typeof this.options.customAttribution=="string"&&w.push(this.options.customAttribution)),this._map.style.stylesheet){let ee=this._map.style.stylesheet;this.styleOwner=ee.owner,this.styleId=ee.id}let B=this._map.style.sourceCaches;for(let ee in B){let le=B[ee];if(le.used||le.usedForTerrain){let qe=le.getSource();qe.attribution&&w.indexOf(qe.attribution)<0&&w.push(qe.attribution)}}w=w.filter(ee=>String(ee).trim()),w.sort((ee,le)=>ee.length-le.length),w=w.filter((ee,le)=>{for(let qe=le+1;qe=0)return!1;return!0});let Q=w.join(" | ");Q!==this._attribHTML&&(this._attribHTML=Q,w.length?(this._innerContainer.innerHTML=Q,this._container.classList.remove("maplibregl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty"),this._updateCompact(),this._editLink=null)}}class Yn{constructor(w={}){this._updateCompact=()=>{let B=this._container.children;if(B.length){let Q=B[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact!==!1&&Q.classList.add("maplibregl-compact"):Q.classList.remove("maplibregl-compact")}},this.options=w}getDefaultPosition(){return"bottom-left"}onAdd(w){this._map=w,this._compact=this.options&&this.options.compact,this._container=c.create("div","maplibregl-ctrl");let B=c.create("a","maplibregl-ctrl-logo");return B.target="_blank",B.rel="noopener nofollow",B.href="https://maplibre.org/",B.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),B.setAttribute("rel","noopener nofollow"),this._container.appendChild(B),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){c.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}}class Dn{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(w){let B=++this._id;return this._queue.push({callback:w,id:B,cancelled:!1}),B}remove(w){let B=this._currentlyRunning,Q=B?this._queue.concat(B):this._queue;for(let ee of Q)if(ee.id===w)return void(ee.cancelled=!0)}run(w=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");let B=this._currentlyRunning=this._queue;this._queue=[];for(let Q of B)if(!Q.cancelled&&(Q.callback(w),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var Ka=a.Y([{name:"a_pos3d",type:"Int16",components:3}]);class bo extends a.E{constructor(w){super(),this.sourceCache=w,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,w.usedForTerrain=!0,w.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(w,B){this.sourceCache.update(w,B),this._renderableTilesKeys=[];let Q={};for(let ee of w.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:B}))Q[ee.key]=!0,this._renderableTilesKeys.push(ee.key),this._tiles[ee.key]||(ee.posMatrix=new Float64Array(16),a.aP(ee.posMatrix,0,a.X,0,a.X,0,1),this._tiles[ee.key]=new Vt(ee,this.tileSize));for(let ee in this._tiles)Q[ee]||delete this._tiles[ee]}freeRtt(w){for(let B in this._tiles){let Q=this._tiles[B];(!w||Q.tileID.equals(w)||Q.tileID.isChildOf(w)||w.isChildOf(Q.tileID))&&(Q.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map(w=>this.getTileByID(w))}getTileByID(w){return this._tiles[w]}getTerrainCoords(w){let B={};for(let Q of this._renderableTilesKeys){let ee=this._tiles[Q].tileID;if(ee.canonical.equals(w.canonical)){let le=w.clone();le.posMatrix=new Float64Array(16),a.aP(le.posMatrix,0,a.X,0,a.X,0,1),B[Q]=le}else if(ee.canonical.isChildOf(w.canonical)){let le=w.clone();le.posMatrix=new Float64Array(16);let qe=ee.canonical.z-w.canonical.z,Xe=ee.canonical.x-(ee.canonical.x>>qe<>qe<>qe;a.aP(le.posMatrix,0,Tt,0,Tt,0,1),a.J(le.posMatrix,le.posMatrix,[-Xe*Tt,-ot*Tt,0]),B[Q]=le}else if(w.canonical.isChildOf(ee.canonical)){let le=w.clone();le.posMatrix=new Float64Array(16);let qe=w.canonical.z-ee.canonical.z,Xe=w.canonical.x-(w.canonical.x>>qe<>qe<>qe;a.aP(le.posMatrix,0,a.X,0,a.X,0,1),a.J(le.posMatrix,le.posMatrix,[Xe*Tt,ot*Tt,0]),a.K(le.posMatrix,le.posMatrix,[1/2**qe,1/2**qe,0]),B[Q]=le}}return B}getSourceTile(w,B){let Q=this.sourceCache._source,ee=w.overscaledZ-this.deltaZoom;if(ee>Q.maxzoom&&(ee=Q.maxzoom),ee=Q.minzoom&&(!le||!le.dem);)le=this.sourceCache.getTileByID(w.scaledTo(ee--).key);return le}tilesAfterTime(w=Date.now()){return Object.values(this._tiles).filter(B=>B.timeAdded>=w)}}class Xo{constructor(w,B,Q){this.painter=w,this.sourceCache=new bo(B),this.options=Q,this.exaggeration=typeof Q.exaggeration=="number"?Q.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(w,B,Q,ee=a.X){var le;if(!(B>=0&&B=0&&Qw.canonical.z&&(w.canonical.z>=ee?le=w.canonical.z-ee:a.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));let qe=w.canonical.x-(w.canonical.x>>le<>le<>8<<4|le>>8,B[qe+3]=0;let Q=new a.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(B.buffer)),ee=new g(w,Q,w.gl.RGBA,{premultiply:!1});return ee.bind(w.gl.NEAREST,w.gl.CLAMP_TO_EDGE),this._coordsTexture=ee,ee}pointCoordinate(w){this.painter.maybeDrawDepthAndCoords(!0);let B=new Uint8Array(4),Q=this.painter.context,ee=Q.gl,le=Math.round(w.x*this.painter.pixelRatio/devicePixelRatio),qe=Math.round(w.y*this.painter.pixelRatio/devicePixelRatio),Xe=Math.round(this.painter.height/devicePixelRatio);Q.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),ee.readPixels(le,Xe-qe-1,1,1,ee.RGBA,ee.UNSIGNED_BYTE,B),Q.bindFramebuffer.set(null);let ot=B[0]+(B[2]>>4<<8),Tt=B[1]+((15&B[2])<<8),Yt=this.coordsIndex[255-B[3]],Kt=Yt&&this.sourceCache.getTileByID(Yt);if(!Kt)return null;let xr=this._coordsTextureSize,Ir=(1<w.id!==B),this._recentlyUsed.push(w.id)}stampObject(w){w.stamp=++this._stamp}getOrCreateFreeObject(){for(let B of this._recentlyUsed)if(!this._objects[B].inUse)return this._objects[B];if(this._objects.length>=this._size)throw new Error("No free RenderPool available, call freeAllObjects() required!");let w=this._createObject(this._objects.length);return this._objects.push(w),w}freeObject(w){w.inUse=!1}freeAllObjects(){for(let w of this._objects)this.freeObject(w)}isFull(){return!(this._objects.length!w.inUse)===!1}}let as={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class ws{constructor(w,B){this.painter=w,this.terrain=B,this.pool=new Ss(w.context,30,B.sourceCache.tileSize*B.qualityFactor)}destruct(){this.pool.destruct()}getTexture(w){return this.pool.getObjectForId(w.rtt[this._stacks.length-1].id).texture}prepareForRender(w,B){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=w._order.filter(Q=>!w._layers[Q].isHidden(B)),this._coordsDescendingInv={};for(let Q in w.sourceCaches){this._coordsDescendingInv[Q]={};let ee=w.sourceCaches[Q].getVisibleCoordinates();for(let le of ee){let qe=this.terrain.sourceCache.getTerrainCoords(le);for(let Xe in qe)this._coordsDescendingInv[Q][Xe]||(this._coordsDescendingInv[Q][Xe]=[]),this._coordsDescendingInv[Q][Xe].push(qe[Xe])}}this._coordsDescendingInvStr={};for(let Q of w._order){let ee=w._layers[Q],le=ee.source;if(as[ee.type]&&!this._coordsDescendingInvStr[le]){this._coordsDescendingInvStr[le]={};for(let qe in this._coordsDescendingInv[le])this._coordsDescendingInvStr[le][qe]=this._coordsDescendingInv[le][qe].map(Xe=>Xe.key).sort().join()}}for(let Q of this._renderableTiles)for(let ee in this._coordsDescendingInvStr){let le=this._coordsDescendingInvStr[ee][Q.tileID.key];le&&le!==Q.rttCoords[ee]&&(Q.rtt=[])}}renderLayer(w){if(w.isHidden(this.painter.transform.zoom))return!1;let B=w.type,Q=this.painter,ee=this._renderableLayerIds[this._renderableLayerIds.length-1]===w.id;if(as[B]&&(this._prevType&&as[this._prevType]||this._stacks.push([]),this._prevType=B,this._stacks[this._stacks.length-1].push(w.id),!ee))return!0;if(as[this._prevType]||as[B]&&ee){this._prevType=B;let le=this._stacks.length-1,qe=this._stacks[le]||[];for(let Xe of this._renderableTiles){if(this.pool.isFull()&&(js(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(Xe),Xe.rtt[le]){let Tt=this.pool.getObjectForId(Xe.rtt[le].id);if(Tt.stamp===Xe.rtt[le].stamp){this.pool.useObject(Tt);continue}}let ot=this.pool.getOrCreateFreeObject();this.pool.useObject(ot),this.pool.stampObject(ot),Xe.rtt[le]={id:ot.id,stamp:ot.stamp},Q.context.bindFramebuffer.set(ot.fbo.framebuffer),Q.context.clear({color:a.aM.transparent,stencil:0}),Q.currentStencilSource=void 0;for(let Tt=0;Tt{ue.touchstart=ue.dragStart,ue.touchmoveWindow=ue.dragMove,ue.touchend=ue.dragEnd},va={showCompass:!0,showZoom:!0,visualizePitch:!1};class no{constructor(w,B,Q=!1){this.mousedown=qe=>{this.startMouse(a.e({},qe,{ctrlKey:!0,preventDefault:()=>qe.preventDefault()}),c.mousePos(this.element,qe)),c.addEventListener(window,"mousemove",this.mousemove),c.addEventListener(window,"mouseup",this.mouseup)},this.mousemove=qe=>{this.moveMouse(qe,c.mousePos(this.element,qe))},this.mouseup=qe=>{this.mouseRotate.dragEnd(qe),this.mousePitch&&this.mousePitch.dragEnd(qe),this.offTemp()},this.touchstart=qe=>{qe.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=c.touchPos(this.element,qe.targetTouches)[0],this.startTouch(qe,this._startPos),c.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),c.addEventListener(window,"touchend",this.touchend))},this.touchmove=qe=>{qe.targetTouches.length!==1?this.reset():(this._lastPos=c.touchPos(this.element,qe.targetTouches)[0],this.moveTouch(qe,this._lastPos))},this.touchend=qe=>{qe.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()},this._clickTolerance=10;let ee=w.dragRotate._mouseRotate.getClickTolerance(),le=w.dragRotate._mousePitch.getClickTolerance();this.element=B,this.mouseRotate=Wl({clickTolerance:ee,enable:!0}),this.touchRotate=(({enable:qe,clickTolerance:Xe,bearingDegreesPerPixelMoved:ot=.8})=>{let Tt=new uf;return new Wu({clickTolerance:Xe,move:(Yt,Kt)=>({bearingDelta:(Kt.x-Yt.x)*ot}),moveStateManager:Tt,enable:qe,assignEvents:Ls})})({clickTolerance:ee,enable:!0}),this.map=w,Q&&(this.mousePitch=ah({clickTolerance:le,enable:!0}),this.touchPitch=(({enable:qe,clickTolerance:Xe,pitchDegreesPerPixelMoved:ot=-.5})=>{let Tt=new uf;return new Wu({clickTolerance:Xe,move:(Yt,Kt)=>({pitchDelta:(Kt.y-Yt.y)*ot}),moveStateManager:Tt,enable:qe,assignEvents:Ls})})({clickTolerance:le,enable:!0})),c.addEventListener(B,"mousedown",this.mousedown),c.addEventListener(B,"touchstart",this.touchstart,{passive:!1}),c.addEventListener(B,"touchcancel",this.reset)}startMouse(w,B){this.mouseRotate.dragStart(w,B),this.mousePitch&&this.mousePitch.dragStart(w,B),c.disableDrag()}startTouch(w,B){this.touchRotate.dragStart(w,B),this.touchPitch&&this.touchPitch.dragStart(w,B),c.disableDrag()}moveMouse(w,B){let Q=this.map,{bearingDelta:ee}=this.mouseRotate.dragMove(w,B)||{};if(ee&&Q.setBearing(Q.getBearing()+ee),this.mousePitch){let{pitchDelta:le}=this.mousePitch.dragMove(w,B)||{};le&&Q.setPitch(Q.getPitch()+le)}}moveTouch(w,B){let Q=this.map,{bearingDelta:ee}=this.touchRotate.dragMove(w,B)||{};if(ee&&Q.setBearing(Q.getBearing()+ee),this.touchPitch){let{pitchDelta:le}=this.touchPitch.dragMove(w,B)||{};le&&Q.setPitch(Q.getPitch()+le)}}off(){let w=this.element;c.removeEventListener(w,"mousedown",this.mousedown),c.removeEventListener(w,"touchstart",this.touchstart,{passive:!1}),c.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),c.removeEventListener(window,"touchend",this.touchend),c.removeEventListener(w,"touchcancel",this.reset),this.offTemp()}offTemp(){c.enableDrag(),c.removeEventListener(window,"mousemove",this.mousemove),c.removeEventListener(window,"mouseup",this.mouseup),c.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),c.removeEventListener(window,"touchend",this.touchend)}}let ys;function rs(ue,w,B){let Q=new a.N(ue.lng,ue.lat);if(ue=new a.N(ue.lng,ue.lat),w){let ee=new a.N(ue.lng-360,ue.lat),le=new a.N(ue.lng+360,ue.lat),qe=B.locationPoint(ue).distSqr(w);B.locationPoint(ee).distSqr(w)180;){let ee=B.locationPoint(ue);if(ee.x>=0&&ee.y>=0&&ee.x<=B.width&&ee.y<=B.height)break;ue.lng>B.center.lng?ue.lng-=360:ue.lng+=360}return ue.lng!==Q.lng&&B.locationPoint(ue).y>B.height/2-B.getHorizon()?ue:Q}let $l={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function Cu(ue,w,B){let Q=ue.classList;for(let ee in $l)Q.remove(`maplibregl-${B}-anchor-${ee}`);Q.add(`maplibregl-${B}-anchor-${w}`)}class Yu extends a.E{constructor(w){if(super(),this._onKeyPress=B=>{let Q=B.code,ee=B.charCode||B.keyCode;Q!=="Space"&&Q!=="Enter"&&ee!==32&&ee!==13||this.togglePopup()},this._onMapClick=B=>{let Q=B.originalEvent.target,ee=this._element;this._popup&&(Q===ee||ee.contains(Q))&&this.togglePopup()},this._update=B=>{var Q;if(!this._map)return;let ee=this._map.loaded()&&!this._map.isMoving();((B==null?void 0:B.type)==="terrain"||(B==null?void 0:B.type)==="render"&&!ee)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?rs(this._lngLat,this._flatPos,this._map.transform):(Q=this._lngLat)===null||Q===void 0?void 0:Q.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let le="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?le=`rotateZ(${this._rotation}deg)`:this._rotationAlignment==="map"&&(le=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let qe="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?qe="rotateX(0deg)":this._pitchAlignment==="map"&&(qe=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||B&&B.type!=="moveend"||(this._pos=this._pos.round()),c.setTransform(this._element,`${$l[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${qe} ${le}`),u.frameAsync(new AbortController).then(()=>{this._updateOpacity(B&&B.type==="moveend")}).catch(()=>{})},this._onMove=B=>{if(!this._isDragging){let Q=this._clickTolerance||this._map._clickTolerance;this._isDragging=B.point.dist(this._pointerdownPos)>=Q}this._isDragging&&(this._pos=B.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new a.k("dragstart"))),this.fire(new a.k("drag")))},this._onUp=()=>{this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new a.k("dragend")),this._state="inactive"},this._addDragHandler=B=>{this._element.contains(B.originalEvent.target)&&(B.preventDefault(),this._positionDelta=B.point.sub(this._pos).add(this._offset),this._pointerdownPos=B.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},this._anchor=w&&w.anchor||"center",this._color=w&&w.color||"#3FB1CE",this._scale=w&&w.scale||1,this._draggable=w&&w.draggable||!1,this._clickTolerance=w&&w.clickTolerance||0,this._subpixelPositioning=w&&w.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=w&&w.rotation||0,this._rotationAlignment=w&&w.rotationAlignment||"auto",this._pitchAlignment=w&&w.pitchAlignment&&w.pitchAlignment!=="auto"?w.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(w==null?void 0:w.opacity,w==null?void 0:w.opacityWhenCovered),w&&w.element)this._element=w.element,this._offset=a.P.convert(w&&w.offset||[0,0]);else{this._defaultMarker=!0,this._element=c.create("div");let B=c.createNS("http://www.w3.org/2000/svg","svg"),Q=41,ee=27;B.setAttributeNS(null,"display","block"),B.setAttributeNS(null,"height",`${Q}px`),B.setAttributeNS(null,"width",`${ee}px`),B.setAttributeNS(null,"viewBox",`0 0 ${ee} ${Q}`);let le=c.createNS("http://www.w3.org/2000/svg","g");le.setAttributeNS(null,"stroke","none"),le.setAttributeNS(null,"stroke-width","1"),le.setAttributeNS(null,"fill","none"),le.setAttributeNS(null,"fill-rule","evenodd");let qe=c.createNS("http://www.w3.org/2000/svg","g");qe.setAttributeNS(null,"fill-rule","nonzero");let Xe=c.createNS("http://www.w3.org/2000/svg","g");Xe.setAttributeNS(null,"transform","translate(3.0, 29.0)"),Xe.setAttributeNS(null,"fill","#000000");let ot=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(let Be of ot){let et=c.createNS("http://www.w3.org/2000/svg","ellipse");et.setAttributeNS(null,"opacity","0.04"),et.setAttributeNS(null,"cx","10.5"),et.setAttributeNS(null,"cy","5.80029008"),et.setAttributeNS(null,"rx",Be.rx),et.setAttributeNS(null,"ry",Be.ry),Xe.appendChild(et)}let Tt=c.createNS("http://www.w3.org/2000/svg","g");Tt.setAttributeNS(null,"fill",this._color);let Yt=c.createNS("http://www.w3.org/2000/svg","path");Yt.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),Tt.appendChild(Yt);let Kt=c.createNS("http://www.w3.org/2000/svg","g");Kt.setAttributeNS(null,"opacity","0.25"),Kt.setAttributeNS(null,"fill","#000000");let xr=c.createNS("http://www.w3.org/2000/svg","path");xr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),Kt.appendChild(xr);let Ir=c.createNS("http://www.w3.org/2000/svg","g");Ir.setAttributeNS(null,"transform","translate(6.0, 7.0)"),Ir.setAttributeNS(null,"fill","#FFFFFF");let ve=c.createNS("http://www.w3.org/2000/svg","g");ve.setAttributeNS(null,"transform","translate(8.0, 8.0)");let be=c.createNS("http://www.w3.org/2000/svg","circle");be.setAttributeNS(null,"fill","#000000"),be.setAttributeNS(null,"opacity","0.25"),be.setAttributeNS(null,"cx","5.5"),be.setAttributeNS(null,"cy","5.5"),be.setAttributeNS(null,"r","5.4999962");let De=c.createNS("http://www.w3.org/2000/svg","circle");De.setAttributeNS(null,"fill","#FFFFFF"),De.setAttributeNS(null,"cx","5.5"),De.setAttributeNS(null,"cy","5.5"),De.setAttributeNS(null,"r","5.4999962"),ve.appendChild(be),ve.appendChild(De),qe.appendChild(Xe),qe.appendChild(Tt),qe.appendChild(Kt),qe.appendChild(Ir),qe.appendChild(ve),B.appendChild(qe),B.setAttributeNS(null,"height",Q*this._scale+"px"),B.setAttributeNS(null,"width",ee*this._scale+"px"),this._element.appendChild(B),this._offset=a.P.convert(w&&w.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",B=>{B.preventDefault()}),this._element.addEventListener("mousedown",B=>{B.preventDefault()}),Cu(this._element,this._anchor,"marker"),w&&w.className)for(let B of w.className.split(" "))this._element.classList.add(B);this._popup=null}addTo(w){return this.remove(),this._map=w,this._element.setAttribute("aria-label",w._getUIString("Marker.Title")),w.getCanvasContainer().appendChild(this._element),w.on("move",this._update),w.on("moveend",this._update),w.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),c.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(w){return this._lngLat=a.N.convert(w),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(w){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),w){if(!("offset"in w.options)){let ee=Math.abs(13.5)/Math.SQRT2;w.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[ee,-1*(38.1-13.5+ee)],"bottom-right":[-ee,-1*(38.1-13.5+ee)],left:[13.5,-1*(38.1-13.5)],right:[-13.5,-1*(38.1-13.5)]}:this._offset}this._popup=w,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(w){return this._subpixelPositioning=w,this}getPopup(){return this._popup}togglePopup(){let w=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:w?(w.isOpen()?w.remove():(w.setLngLat(this._lngLat),w.addTo(this._map)),this):this}_updateOpacity(w=!1){var B,Q;if(!(!((B=this._map)===null||B===void 0)&&B.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(w)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout(()=>{this._opacityTimeout=null},100)}let ee=this._map,le=ee.terrain.depthAtPoint(this._pos),qe=ee.terrain.getElevationForLngLatZoom(this._lngLat,ee.transform.tileZoom);if(ee.transform.lngLatToCameraDepth(this._lngLat,qe)-le<.006)return void(this._element.style.opacity=this._opacity);let Xe=-this._offset.y/ee.transform._pixelPerMeter,ot=Math.sin(ee.getPitch()*Math.PI/180)*Xe,Tt=ee.terrain.depthAtPoint(new a.P(this._pos.x,this._pos.y-this._offset.y)),Yt=ee.transform.lngLatToCameraDepth(this._lngLat,qe+ot)-Tt>.006;!((Q=this._popup)===null||Q===void 0)&&Q.isOpen()&&Yt&&this._popup.remove(),this._element.style.opacity=Yt?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(w){return this._offset=a.P.convert(w),this._update(),this}addClassName(w){this._element.classList.add(w)}removeClassName(w){this._element.classList.remove(w)}toggleClassName(w){return this._element.classList.toggle(w)}setDraggable(w){return this._draggable=!!w,this._map&&(w?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(w){return this._rotation=w||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(w){return this._rotationAlignment=w||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(w){return this._pitchAlignment=w&&w!=="auto"?w:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(w,B){return w===void 0&&B===void 0&&(this._opacity="1",this._opacityWhenCovered="0.2"),w!==void 0&&(this._opacity=w),B!==void 0&&(this._opacityWhenCovered=B),this._map&&this._updateOpacity(!0),this}}let Nc={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},pu=0,Uc=!1,xu={maxWidth:100,unit:"metric"};function Ac(ue,w,B){let Q=B&&B.maxWidth||100,ee=ue._container.clientHeight/2,le=ue.unproject([0,ee]),qe=ue.unproject([Q,ee]),Xe=le.distanceTo(qe);if(B&&B.unit==="imperial"){let ot=3.2808*Xe;ot>5280?Ua(w,Q,ot/5280,ue._getUIString("ScaleControl.Miles")):Ua(w,Q,ot,ue._getUIString("ScaleControl.Feet"))}else B&&B.unit==="nautical"?Ua(w,Q,Xe/1852,ue._getUIString("ScaleControl.NauticalMiles")):Xe>=1e3?Ua(w,Q,Xe/1e3,ue._getUIString("ScaleControl.Kilometers")):Ua(w,Q,Xe,ue._getUIString("ScaleControl.Meters"))}function Ua(ue,w,B,Q){let ee=function(le){let qe=Math.pow(10,`${Math.floor(le)}`.length-1),Xe=le/qe;return Xe=Xe>=10?10:Xe>=5?5:Xe>=3?3:Xe>=2?2:Xe>=1?1:function(ot){let Tt=Math.pow(10,Math.ceil(-Math.log(ot)/Math.LN10));return Math.round(ot*Tt)/Tt}(Xe),qe*Xe}(B);ue.style.width=w*(ee/B)+"px",ue.innerHTML=`${ee} ${Q}`}let oo={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},Vc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function hc(ue){if(ue){if(typeof ue=="number"){let w=Math.round(Math.abs(ue)/Math.SQRT2);return{center:new a.P(0,0),top:new a.P(0,ue),"top-left":new a.P(w,w),"top-right":new a.P(-w,w),bottom:new a.P(0,-ue),"bottom-left":new a.P(w,-w),"bottom-right":new a.P(-w,-w),left:new a.P(ue,0),right:new a.P(-ue,0)}}if(ue instanceof a.P||Array.isArray(ue)){let w=a.P.convert(ue);return{center:w,top:w,"top-left":w,"top-right":w,bottom:w,"bottom-left":w,"bottom-right":w,left:w,right:w}}return{center:a.P.convert(ue.center||[0,0]),top:a.P.convert(ue.top||[0,0]),"top-left":a.P.convert(ue["top-left"]||[0,0]),"top-right":a.P.convert(ue["top-right"]||[0,0]),bottom:a.P.convert(ue.bottom||[0,0]),"bottom-left":a.P.convert(ue["bottom-left"]||[0,0]),"bottom-right":a.P.convert(ue["bottom-right"]||[0,0]),left:a.P.convert(ue.left||[0,0]),right:a.P.convert(ue.right||[0,0])}}return hc(new a.P(0,0))}let Ku=o;i.AJAXError=a.bh,i.Evented=a.E,i.LngLat=a.N,i.MercatorCoordinate=a.Z,i.Point=a.P,i.addProtocol=a.bi,i.config=a.a,i.removeProtocol=a.bj,i.AttributionControl=Na,i.BoxZoomHandler=ku,i.CanvasSource=Jt,i.CooperativeGesturesHandler=Qi,i.DoubleClickZoomHandler=ki,i.DragPanHandler=wn,i.DragRotateHandler=Nn,i.EdgeInsets=hu,i.FullscreenControl=class extends a.E{constructor(ue={}){super(),this._onFullscreenChange=()=>{var w;let B=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;!((w=B==null?void 0:B.shadowRoot)===null||w===void 0)&&w.fullscreenElement;)B=B.shadowRoot.fullscreenElement;B===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,ue&&ue.container&&(ue.container instanceof HTMLElement?this._container=ue.container:a.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(ue){return this._map=ue,this._container||(this._container=this._map.getContainer()),this._controlContainer=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){c.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){let ue=this._fullscreenButton=c.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);c.create("span","maplibregl-ctrl-icon",ue).setAttribute("aria-hidden","true"),ue.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){let ue=this._getTitle();this._fullscreenButton.setAttribute("aria-label",ue),this._fullscreenButton.title=ue}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new a.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new a.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},i.GeoJSONSource=st,i.GeolocateControl=class extends a.E{constructor(ue){super(),this._onSuccess=w=>{if(this._map){if(this._isOutOfMapMaxBounds(w))return this._setErrorState(),this.fire(new a.k("outofmaxbounds",w)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=w,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(w),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(w),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new a.k("geolocate",w)),this._finish()}},this._updateCamera=w=>{let B=new a.N(w.coords.longitude,w.coords.latitude),Q=w.coords.accuracy,ee=this._map.getBearing(),le=a.e({bearing:ee},this.options.fitBoundsOptions),qe=ce.fromLngLat(B,Q);this._map.fitBounds(qe,le,{geolocateSource:!0})},this._updateMarker=w=>{if(w){let B=new a.N(w.coords.longitude,w.coords.latitude);this._accuracyCircleMarker.setLngLat(B).addTo(this._map),this._userLocationDotMarker.setLngLat(B).addTo(this._map),this._accuracy=w.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=w=>{if(this._map){if(this.options.trackUserLocation)if(w.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;let B=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(w.code===3&&Uc)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new a.k("error",w)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",w=>w.preventDefault()),this._geolocateButton=c.create("button","maplibregl-ctrl-geolocate",this._container),c.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=w=>{if(this._map){if(w===!1){a.w("Geolocation support is not available so the GeolocateControl will be disabled.");let B=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B)}else{let B=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=c.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new Yu({element:this._dotElement}),this._circleElement=c.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Yu({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",()=>this.trigger()),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",B=>{B.geolocateSource||this._watchState!=="ACTIVE_LOCK"||B.originalEvent&&B.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new a.k("trackuserlocationend")),this.fire(new a.k("userlocationlostfocus")))})}},this.options=a.e({},Nc,ue)}onAdd(ue){return this._map=ue,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return a._(this,arguments,void 0,function*(w=!1){if(ys!==void 0&&!w)return ys;if(window.navigator.permissions===void 0)return ys=!!window.navigator.geolocation,ys;try{ys=(yield window.navigator.permissions.query({name:"geolocation"})).state!=="denied"}catch(B){ys=!!window.navigator.geolocation}return ys})}().then(w=>this._finishSetupUI(w)),this._container}onRemove(){this._geolocationWatchID!==void 0&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),c.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,pu=0,Uc=!1}_isOutOfMapMaxBounds(ue){let w=this._map.getMaxBounds(),B=ue.coords;return w&&(B.longitudew.getEast()||B.latitudew.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){let ue=this._map.getBounds(),w=ue.getSouthEast(),B=ue.getNorthEast(),Q=w.distanceTo(B),ee=Math.ceil(this._accuracy/(Q/this._map._container.clientHeight)*2);this._circleElement.style.width=`${ee}px`,this._circleElement.style.height=`${ee}px`}trigger(){if(!this._setup)return a.w("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new a.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":pu--,Uc=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new a.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new a.k("trackuserlocationstart")),this.fire(new a.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let ue;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),pu++,pu>1?(ue={maximumAge:6e5,timeout:0},Uc=!0):(ue=this.options.positionOptions,Uc=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,ue)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},i.Hash=Ah,i.ImageSource=Gt,i.KeyboardHandler=Wt,i.LngLatBounds=ce,i.LogoControl=Yn,i.Map=class extends Ra{constructor(ue){a.bf.mark(a.bg.create);let w=Object.assign(Object.assign({},Ws),ue);if(w.minZoom!=null&&w.maxZoom!=null&&w.minZoom>w.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(w.minPitch!=null&&w.maxPitch!=null&&w.minPitch>w.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(w.minPitch!=null&&w.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(w.maxPitch!=null&&w.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new nl(w.minZoom,w.maxZoom,w.minPitch,w.maxPitch,w.renderWorldCopies),{bearingSnap:w.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new Dn,this._controls=[],this._mapId=a.a4(),this._contextLost=B=>{B.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new a.k("webglcontextlost",{originalEvent:B}))},this._contextRestored=B=>{this._setupPainter(),this.resize(),this._update(),this.fire(new a.k("webglcontextrestored",{originalEvent:B}))},this._onMapScroll=B=>{if(B.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=w.interactive,this._maxTileCacheSize=w.maxTileCacheSize,this._maxTileCacheZoomLevels=w.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=w.failIfMajorPerformanceCaveat===!0,this._preserveDrawingBuffer=w.preserveDrawingBuffer===!0,this._antialias=w.antialias===!0,this._trackResize=w.trackResize===!0,this._bearingSnap=w.bearingSnap,this._refreshExpiredTiles=w.refreshExpiredTiles===!0,this._fadeDuration=w.fadeDuration,this._crossSourceCollisions=w.crossSourceCollisions===!0,this._collectResourceTiming=w.collectResourceTiming===!0,this._locale=Object.assign(Object.assign({},Ho),w.locale),this._clickTolerance=w.clickTolerance,this._overridePixelRatio=w.pixelRatio,this._maxCanvasSize=w.maxCanvasSize,this.transformCameraUpdate=w.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=w.cancelPendingTileRequestsWhileZooming===!0,this._imageQueueHandle=p.addThrottleControl(()=>this.isMoving()),this._requestManager=new k(w.transformRequest),typeof w.container=="string"){if(this._container=document.getElementById(w.container),!this._container)throw new Error(`Container '${w.container}' not found.`)}else{if(!(w.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=w.container}if(w.maxBounds&&this.setMaxBounds(w.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",()=>this._update(!1)).on("moveend",()=>this._update(!1)).on("zoom",()=>this._update(!0)).on("terrain",()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)}).once("idle",()=>{this._idleTriggered=!0}),typeof window!="undefined"){addEventListener("online",this._onWindowOnline,!1);let B=!1,Q=nh(ee=>{this._trackResize&&!this._removed&&(this.resize(ee),this.redraw())},50);this._resizeObserver=new ResizeObserver(ee=>{B?Q(ee):B=!0}),this._resizeObserver.observe(this._container)}this.handlers=new Ca(this,w),this._hash=w.hash&&new Ah(typeof w.hash=="string"&&w.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:w.center,zoom:w.zoom,bearing:w.bearing,pitch:w.pitch}),w.bounds&&(this.resize(),this.fitBounds(w.bounds,a.e({},w.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=w.localIdeographFontFamily,this._validateStyle=w.validateStyle,w.style&&this.setStyle(w.style,{localIdeographFontFamily:w.localIdeographFontFamily}),w.attributionControl&&this.addControl(new Na(typeof w.attributionControl=="boolean"?void 0:w.attributionControl)),w.maplibreLogo&&this.addControl(new Yn,w.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",B=>{this._update(B.dataType==="style"),this.fire(new a.k(`${B.dataType}data`,B))}),this.on("dataloading",B=>{this.fire(new a.k(`${B.dataType}dataloading`,B))}),this.on("dataabort",B=>{this.fire(new a.k("sourcedataabort",B))})}_getMapId(){return this._mapId}addControl(ue,w){if(w===void 0&&(w=ue.getDefaultPosition?ue.getDefaultPosition():"top-right"),!ue||!ue.onAdd)return this.fire(new a.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));let B=ue.onAdd(this);this._controls.push(ue);let Q=this._controlPositions[w];return w.indexOf("bottom")!==-1?Q.insertBefore(B,Q.firstChild):Q.appendChild(B),this}removeControl(ue){if(!ue||!ue.onRemove)return this.fire(new a.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));let w=this._controls.indexOf(ue);return w>-1&&this._controls.splice(w,1),ue.onRemove(this),this}hasControl(ue){return this._controls.indexOf(ue)>-1}calculateCameraOptionsFromTo(ue,w,B,Q){return Q==null&&this.terrain&&(Q=this.terrain.getElevationForLngLatZoom(B,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(ue,w,B,Q)}resize(ue){var w;let B=this._containerDimensions(),Q=B[0],ee=B[1],le=this._getClampedPixelRatio(Q,ee);if(this._resizeCanvas(Q,ee,le),this.painter.resize(Q,ee,le),this.painter.overLimit()){let Xe=this.painter.context.gl;this._maxCanvasSize=[Xe.drawingBufferWidth,Xe.drawingBufferHeight];let ot=this._getClampedPixelRatio(Q,ee);this._resizeCanvas(Q,ee,ot),this.painter.resize(Q,ee,ot)}this.transform.resize(Q,ee),(w=this._requestedCameraState)===null||w===void 0||w.resize(Q,ee);let qe=!this._moving;return qe&&(this.stop(),this.fire(new a.k("movestart",ue)).fire(new a.k("move",ue))),this.fire(new a.k("resize",ue)),qe&&this.fire(new a.k("moveend",ue)),this}_getClampedPixelRatio(ue,w){let{0:B,1:Q}=this._maxCanvasSize,ee=this.getPixelRatio(),le=ue*ee,qe=w*ee;return Math.min(le>B?B/le:1,qe>Q?Q/qe:1)*ee}getPixelRatio(){var ue;return(ue=this._overridePixelRatio)!==null&&ue!==void 0?ue:devicePixelRatio}setPixelRatio(ue){this._overridePixelRatio=ue,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(ue){return this.transform.setMaxBounds(ce.convert(ue)),this._update()}setMinZoom(ue){if((ue=ue==null?-2:ue)>=-2&&ue<=this.transform.maxZoom)return this.transform.minZoom=ue,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=ue,this._update(),this.getZoom()>ue&&this.setZoom(ue),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(ue){if((ue=ue==null?0:ue)<0)throw new Error("minPitch must be greater than or equal to 0");if(ue>=0&&ue<=this.transform.maxPitch)return this.transform.minPitch=ue,this._update(),this.getPitch()85)throw new Error("maxPitch must be less than or equal to 85");if(ue>=this.transform.minPitch)return this.transform.maxPitch=ue,this._update(),this.getPitch()>ue&&this.setPitch(ue),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(ue){return this.transform.renderWorldCopies=ue,this._update()}project(ue){return this.transform.locationPoint(a.N.convert(ue),this.style&&this.terrain)}unproject(ue){return this.transform.pointLocation(a.P.convert(ue),this.terrain)}isMoving(){var ue;return this._moving||((ue=this.handlers)===null||ue===void 0?void 0:ue.isMoving())}isZooming(){var ue;return this._zooming||((ue=this.handlers)===null||ue===void 0?void 0:ue.isZooming())}isRotating(){var ue;return this._rotating||((ue=this.handlers)===null||ue===void 0?void 0:ue.isRotating())}_createDelegatedListener(ue,w,B){if(ue==="mouseenter"||ue==="mouseover"){let Q=!1;return{layers:w,listener:B,delegates:{mousemove:le=>{let qe=w.filter(ot=>this.getLayer(ot)),Xe=qe.length!==0?this.queryRenderedFeatures(le.point,{layers:qe}):[];Xe.length?Q||(Q=!0,B.call(this,new jl(ue,this,le.originalEvent,{features:Xe}))):Q=!1},mouseout:()=>{Q=!1}}}}if(ue==="mouseleave"||ue==="mouseout"){let Q=!1;return{layers:w,listener:B,delegates:{mousemove:qe=>{let Xe=w.filter(ot=>this.getLayer(ot));(Xe.length!==0?this.queryRenderedFeatures(qe.point,{layers:Xe}):[]).length?Q=!0:Q&&(Q=!1,B.call(this,new jl(ue,this,qe.originalEvent)))},mouseout:qe=>{Q&&(Q=!1,B.call(this,new jl(ue,this,qe.originalEvent)))}}}}{let Q=ee=>{let le=w.filter(Xe=>this.getLayer(Xe)),qe=le.length!==0?this.queryRenderedFeatures(ee.point,{layers:le}):[];qe.length&&(ee.features=qe,B.call(this,ee),delete ee.features)};return{layers:w,listener:B,delegates:{[ue]:Q}}}}_saveDelegatedListener(ue,w){this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[ue]=this._delegatedListeners[ue]||[],this._delegatedListeners[ue].push(w)}_removeDelegatedListener(ue,w,B){if(!this._delegatedListeners||!this._delegatedListeners[ue])return;let Q=this._delegatedListeners[ue];for(let ee=0;eew.includes(qe))){for(let qe in le.delegates)this.off(qe,le.delegates[qe]);return void Q.splice(ee,1)}}}on(ue,w,B){if(B===void 0)return super.on(ue,w);let Q=this._createDelegatedListener(ue,typeof w=="string"?[w]:w,B);this._saveDelegatedListener(ue,Q);for(let ee in Q.delegates)this.on(ee,Q.delegates[ee]);return this}once(ue,w,B){if(B===void 0)return super.once(ue,w);let Q=typeof w=="string"?[w]:w,ee=this._createDelegatedListener(ue,Q,B);for(let le in ee.delegates){let qe=ee.delegates[le];ee.delegates[le]=(...Xe)=>{this._removeDelegatedListener(ue,Q,B),qe(...Xe)}}this._saveDelegatedListener(ue,ee);for(let le in ee.delegates)this.once(le,ee.delegates[le]);return this}off(ue,w,B){return B===void 0?super.off(ue,w):(this._removeDelegatedListener(ue,typeof w=="string"?[w]:w,B),this)}queryRenderedFeatures(ue,w){if(!this.style)return[];let B,Q=ue instanceof a.P||Array.isArray(ue),ee=Q?ue:[[0,0],[this.transform.width,this.transform.height]];if(w=w||(Q?{}:ue)||{},ee instanceof a.P||typeof ee[0]=="number")B=[a.P.convert(ee)];else{let le=a.P.convert(ee[0]),qe=a.P.convert(ee[1]);B=[le,new a.P(qe.x,le.y),qe,new a.P(le.x,qe.y),le]}return this.style.queryRenderedFeatures(B,w,this.transform)}querySourceFeatures(ue,w){return this.style.querySourceFeatures(ue,w)}setStyle(ue,w){return(w=a.e({},{localIdeographFontFamily:this._localIdeographFontFamily,validate:this._validateStyle},w)).diff!==!1&&w.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&ue?(this._diffStyle(ue,w),this):(this._localIdeographFontFamily=w.localIdeographFontFamily,this._updateStyle(ue,w))}setTransformRequest(ue){return this._requestManager.setTransformRequest(ue),this}_getUIString(ue){let w=this._locale[ue];if(w==null)throw new Error(`Missing UI string '${ue}'`);return w}_updateStyle(ue,w){if(w.transformStyle&&this.style&&!this.style._loaded)return void this.style.once("style.load",()=>this._updateStyle(ue,w));let B=this.style&&w.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!ue)),ue?(this.style=new Ha(this,w||{}),this.style.setEventedParent(this,{style:this.style}),typeof ue=="string"?this.style.loadURL(ue,w,B):this.style.loadJSON(ue,w,B),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new Ha(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(ue,w){if(typeof ue=="string"){let B=this._requestManager.transformRequest(ue,"Style");a.h(B,new AbortController).then(Q=>{this._updateDiff(Q.data,w)}).catch(Q=>{Q&&this.fire(new a.j(Q))})}else typeof ue=="object"&&this._updateDiff(ue,w)}_updateDiff(ue,w){try{this.style.setState(ue,w)&&this._update(!0)}catch(B){a.w(`Unable to perform style diff: ${B.message||B.error||B}. Rebuilding the style from scratch.`),this._updateStyle(ue,w)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():a.w("There is no style added to the map.")}addSource(ue,w){return this._lazyInitEmptyStyle(),this.style.addSource(ue,w),this._update(!0)}isSourceLoaded(ue){let w=this.style&&this.style.sourceCaches[ue];if(w!==void 0)return w.loaded();this.fire(new a.j(new Error(`There is no source with ID '${ue}'`)))}setTerrain(ue){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),ue){let w=this.style.sourceCaches[ue.source];if(!w)throw new Error(`cannot load terrain, because there exists no source with ID: ${ue.source}`);this.terrain===null&&w.reload();for(let B in this.style._layers){let Q=this.style._layers[B];Q.type==="hillshade"&&Q.source===ue.source&&a.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new Xo(this.painter,w,ue),this.painter.renderToTexture=new ws(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=B=>{B.dataType==="style"?this.terrain.sourceCache.freeRtt():B.dataType==="source"&&B.tile&&(B.sourceId!==ue.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(B.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new a.k("terrain",{terrain:ue})),this}getTerrain(){var ue,w;return(w=(ue=this.terrain)===null||ue===void 0?void 0:ue.options)!==null&&w!==void 0?w:null}areTilesLoaded(){let ue=this.style&&this.style.sourceCaches;for(let w in ue){let B=ue[w]._tiles;for(let Q in B){let ee=B[Q];if(ee.state!=="loaded"&&ee.state!=="errored")return!1}}return!0}removeSource(ue){return this.style.removeSource(ue),this._update(!0)}getSource(ue){return this.style.getSource(ue)}addImage(ue,w,B={}){let{pixelRatio:Q=1,sdf:ee=!1,stretchX:le,stretchY:qe,content:Xe,textFitWidth:ot,textFitHeight:Tt}=B;if(this._lazyInitEmptyStyle(),!(w instanceof HTMLImageElement||a.b(w))){if(w.width===void 0||w.height===void 0)return this.fire(new a.j(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{let{width:Yt,height:Kt,data:xr}=w,Ir=w;return this.style.addImage(ue,{data:new a.R({width:Yt,height:Kt},new Uint8Array(xr)),pixelRatio:Q,stretchX:le,stretchY:qe,content:Xe,textFitWidth:ot,textFitHeight:Tt,sdf:ee,version:0,userImage:Ir}),Ir.onAdd&&Ir.onAdd(this,ue),this}}{let{width:Yt,height:Kt,data:xr}=u.getImageData(w);this.style.addImage(ue,{data:new a.R({width:Yt,height:Kt},xr),pixelRatio:Q,stretchX:le,stretchY:qe,content:Xe,textFitWidth:ot,textFitHeight:Tt,sdf:ee,version:0})}}updateImage(ue,w){let B=this.style.getImage(ue);if(!B)return this.fire(new a.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));let Q=w instanceof HTMLImageElement||a.b(w)?u.getImageData(w):w,{width:ee,height:le,data:qe}=Q;if(ee===void 0||le===void 0)return this.fire(new a.j(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(ee!==B.data.width||le!==B.data.height)return this.fire(new a.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));let Xe=!(w instanceof HTMLImageElement||a.b(w));return B.data.replace(qe,Xe),this.style.updateImage(ue,B),this}getImage(ue){return this.style.getImage(ue)}hasImage(ue){return ue?!!this.style.getImage(ue):(this.fire(new a.j(new Error("Missing required image id"))),!1)}removeImage(ue){this.style.removeImage(ue)}loadImage(ue){return p.getImage(this._requestManager.transformRequest(ue,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(ue,w){return this._lazyInitEmptyStyle(),this.style.addLayer(ue,w),this._update(!0)}moveLayer(ue,w){return this.style.moveLayer(ue,w),this._update(!0)}removeLayer(ue){return this.style.removeLayer(ue),this._update(!0)}getLayer(ue){return this.style.getLayer(ue)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(ue,w,B){return this.style.setLayerZoomRange(ue,w,B),this._update(!0)}setFilter(ue,w,B={}){return this.style.setFilter(ue,w,B),this._update(!0)}getFilter(ue){return this.style.getFilter(ue)}setPaintProperty(ue,w,B,Q={}){return this.style.setPaintProperty(ue,w,B,Q),this._update(!0)}getPaintProperty(ue,w){return this.style.getPaintProperty(ue,w)}setLayoutProperty(ue,w,B,Q={}){return this.style.setLayoutProperty(ue,w,B,Q),this._update(!0)}getLayoutProperty(ue,w){return this.style.getLayoutProperty(ue,w)}setGlyphs(ue,w={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(ue,w),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(ue,w,B={}){return this._lazyInitEmptyStyle(),this.style.addSprite(ue,w,B,Q=>{Q||this._update(!0)}),this}removeSprite(ue){return this._lazyInitEmptyStyle(),this.style.removeSprite(ue),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(ue,w={}){return this._lazyInitEmptyStyle(),this.style.setSprite(ue,w,B=>{B||this._update(!0)}),this}setLight(ue,w={}){return this._lazyInitEmptyStyle(),this.style.setLight(ue,w),this._update(!0)}getLight(){return this.style.getLight()}setSky(ue){return this._lazyInitEmptyStyle(),this.style.setSky(ue),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(ue,w){return this.style.setFeatureState(ue,w),this._update()}removeFeatureState(ue,w){return this.style.removeFeatureState(ue,w),this._update()}getFeatureState(ue){return this.style.getFeatureState(ue)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let ue=0,w=0;return this._container&&(ue=this._container.clientWidth||400,w=this._container.clientHeight||300),[ue,w]}_setupContainer(){let ue=this._container;ue.classList.add("maplibregl-map");let w=this._canvasContainer=c.create("div","maplibregl-canvas-container",ue);this._interactive&&w.classList.add("maplibregl-interactive"),this._canvas=c.create("canvas","maplibregl-canvas",w),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");let B=this._containerDimensions(),Q=this._getClampedPixelRatio(B[0],B[1]);this._resizeCanvas(B[0],B[1],Q);let ee=this._controlContainer=c.create("div","maplibregl-control-container",ue),le=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(qe=>{le[qe]=c.create("div",`maplibregl-ctrl-${qe} `,ee)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(ue,w,B){this._canvas.width=Math.floor(B*ue),this._canvas.height=Math.floor(B*w),this._canvas.style.width=`${ue}px`,this._canvas.style.height=`${w}px`}_setupPainter(){let ue={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1},w=null;this._canvas.addEventListener("webglcontextcreationerror",Q=>{w={requestedAttributes:ue},Q&&(w.statusMessage=Q.statusMessage,w.type=Q.type)},{once:!0});let B=this._canvas.getContext("webgl2",ue)||this._canvas.getContext("webgl",ue);if(!B){let Q="Failed to initialize WebGL";throw w?(w.message=Q,new Error(JSON.stringify(w))):new Error(Q)}this.painter=new Dc(B,this.transform),f.testSupport(B)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(ue){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||ue,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(ue){return this._update(),this._renderTaskQueue.add(ue)}_cancelRenderFrame(ue){this._renderTaskQueue.remove(ue)}_render(ue){let w=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(ue),this._removed)return;let B=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;let ee=this.transform.zoom,le=u.now();this.style.zoomHistory.update(ee,le);let qe=new a.z(ee,{now:le,fadeDuration:w,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),Xe=qe.crossFadingFactor();Xe===1&&Xe===this._crossFadingFactor||(B=!0,this._crossFadingFactor=Xe),this.style.update(qe)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,w,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:w,showPadding:this.showPadding}),this.fire(new a.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,a.bf.mark(a.bg.load),this.fire(new a.k("load"))),this.style&&(this.style.hasTransitions()||B)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();let Q=this._sourcesDirty||this._styleDirty||this._placementDirty;return Q||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new a.k("idle")),!this._loaded||this._fullyLoaded||Q||(this._fullyLoaded=!0,a.bf.mark(a.bg.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var ue;this._hash&&this._hash.remove();for(let B of this._controls)B.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window!="undefined"&&removeEventListener("online",this._onWindowOnline,!1),p.removeThrottleControl(this._imageQueueHandle),(ue=this._resizeObserver)===null||ue===void 0||ue.disconnect();let w=this.painter.context.gl.getExtension("WEBGL_lose_context");w!=null&&w.loseContext&&w.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),c.remove(this._canvasContainer),c.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),a.bf.clearMetrics(),this._removed=!0,this.fire(new a.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,u.frameAsync(this._frameRequest).then(ue=>{a.bf.frame(ue),this._frameRequest=null,this._render(ue)}).catch(()=>{}))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(ue){this._showTileBoundaries!==ue&&(this._showTileBoundaries=ue,this._update())}get showPadding(){return!!this._showPadding}set showPadding(ue){this._showPadding!==ue&&(this._showPadding=ue,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(ue){this._showCollisionBoxes!==ue&&(this._showCollisionBoxes=ue,ue?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(ue){this._showOverdrawInspector!==ue&&(this._showOverdrawInspector=ue,this._update())}get repaint(){return!!this._repaint}set repaint(ue){this._repaint!==ue&&(this._repaint=ue,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(ue){this._vertices=ue,this._update()}get version(){return ml}getCameraTargetElevation(){return this.transform.elevation}},i.MapMouseEvent=jl,i.MapTouchEvent=lf,i.MapWheelEvent=Hh,i.Marker=Yu,i.NavigationControl=class{constructor(ue){this._updateZoomButtons=()=>{let w=this._map.getZoom(),B=w===this._map.getMaxZoom(),Q=w===this._map.getMinZoom();this._zoomInButton.disabled=B,this._zoomOutButton.disabled=Q,this._zoomInButton.setAttribute("aria-disabled",B.toString()),this._zoomOutButton.setAttribute("aria-disabled",Q.toString())},this._rotateCompassArrow=()=>{let w=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=w},this._setButtonTitle=(w,B)=>{let Q=this._map._getUIString(`NavigationControl.${B}`);w.title=Q,w.setAttribute("aria-label",Q)},this.options=a.e({},va,ue),this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",w=>w.preventDefault()),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",w=>this._map.zoomIn({},{originalEvent:w})),c.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",w=>this._map.zoomOut({},{originalEvent:w})),c.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",w=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:w}):this._map.resetNorth({},{originalEvent:w})}),this._compassIcon=c.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(ue){return this._map=ue,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new no(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){c.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(ue,w){let B=c.create("button",ue,this._container);return B.type="button",B.addEventListener("click",w),B}},i.Popup=class extends a.E{constructor(ue){super(),this.remove=()=>(this._content&&c.remove(this._content),this._container&&(c.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new a.k("close"))),this),this._onMouseUp=w=>{this._update(w.point)},this._onMouseMove=w=>{this._update(w.point)},this._onDrag=w=>{this._update(w.point)},this._update=w=>{var B;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=c.create("div","maplibregl-popup",this._map.getContainer()),this._tip=c.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(let Xe of this.options.className.split(" "))this._container.classList.add(Xe);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?rs(this._lngLat,this._flatPos,this._map.transform):(B=this._lngLat)===null||B===void 0?void 0:B.wrap(),this._trackPointer&&!w)return;let Q=this._flatPos=this._pos=this._trackPointer&&w?w:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&w?w:this._map.transform.locationPoint(this._lngLat));let ee=this.options.anchor,le=hc(this.options.offset);if(!ee){let Xe=this._container.offsetWidth,ot=this._container.offsetHeight,Tt;Tt=Q.y+le.bottom.ythis._map.transform.height-ot?["bottom"]:[],Q.xthis._map.transform.width-Xe/2&&Tt.push("right"),ee=Tt.length===0?"bottom":Tt.join("-")}let qe=Q.add(le[ee]);this.options.subpixelPositioning||(qe=qe.round()),c.setTransform(this._container,`${$l[ee]} translate(${qe.x}px,${qe.y}px)`),Cu(this._container,ee,"popup")},this._onClose=()=>{this.remove()},this.options=a.e(Object.create(oo),ue)}addTo(ue){return this._map&&this.remove(),this._map=ue,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new a.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(ue){return this._lngLat=a.N.convert(ue),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(ue){return this.setDOMContent(document.createTextNode(ue))}setHTML(ue){let w=document.createDocumentFragment(),B=document.createElement("body"),Q;for(B.innerHTML=ue;Q=B.firstChild,Q;)w.appendChild(Q);return this.setDOMContent(w)}getMaxWidth(){var ue;return(ue=this._container)===null||ue===void 0?void 0:ue.style.maxWidth}setMaxWidth(ue){return this.options.maxWidth=ue,this._update(),this}setDOMContent(ue){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=c.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(ue),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(ue){return this._container&&this._container.classList.add(ue),this}removeClassName(ue){return this._container&&this._container.classList.remove(ue),this}setOffset(ue){return this.options.offset=ue,this._update(),this}toggleClassName(ue){if(this._container)return this._container.classList.toggle(ue)}setSubpixelPositioning(ue){this.options.subpixelPositioning=ue}_createCloseButton(){this.options.closeButton&&(this._closeButton=c.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;let ue=this._container.querySelector(Vc);ue&&ue.focus()}},i.RasterDEMTileSource=Zt,i.RasterTileSource=pt,i.ScaleControl=class{constructor(ue){this._onMove=()=>{Ac(this._map,this._container,this.options)},this.setUnit=w=>{this.options.unit=w,Ac(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},xu),ue)}getDefaultPosition(){return"bottom-left"}onAdd(ue){return this._map=ue,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-scale",ue.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){c.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},i.ScrollZoomHandler=Kr,i.Style=Ha,i.TerrainControl=class{constructor(ue){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=ue}onAdd(ue){return this._map=ue,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=c.create("button","maplibregl-ctrl-terrain",this._container),c.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){c.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},i.TwoFingersTouchPitchHandler=Bc,i.TwoFingersTouchRotateHandler=cf,i.TwoFingersTouchZoomHandler=vu,i.TwoFingersTouchZoomRotateHandler=Yi,i.VectorTileSource=ut,i.VideoSource=Nt,i.addSourceType=(ue,w)=>a._(void 0,void 0,void 0,function*(){if(wr(ue))throw new Error(`A source type called "${ue}" already exists.`);((B,Q)=>{sr[B]=Q})(ue,w)}),i.clearPrewarmedResources=function(){let ue=me;ue&&(ue.isPreloaded()&&ue.numActive()===1?(ue.release(_e),me=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},i.getMaxParallelImageRequests=function(){return a.a.MAX_PARALLEL_IMAGE_REQUESTS},i.getRTLTextPluginStatus=function(){return Qt().getRTLTextPluginStatus()},i.getVersion=function(){return Ku},i.getWorkerCount=function(){return Ee.workerCount},i.getWorkerUrl=function(){return a.a.WORKER_URL},i.importScriptInWorkers=function(ue){return Ae().broadcast("IS",ue)},i.prewarm=function(){Se().acquire(_e)},i.setMaxParallelImageRequests=function(ue){a.a.MAX_PARALLEL_IMAGE_REQUESTS=ue},i.setRTLTextPlugin=function(ue,w){return Qt().setRTLTextPlugin(ue,w)},i.setWorkerCount=function(ue){Ee.workerCount=ue},i.setWorkerUrl=function(ue){a.a.WORKER_URL=ue}});var n=e;return n})});var fje=ye((Ebr,cje)=>{"use strict";var aw=Dr(),AXt=ru().sanitizeHTML,SXt=SJ(),sje=wx();function lje(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=sje.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var ag=lje.prototype;ag.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=c7(t)};ag.needsNewImage=function(e){var t=this.subplot.map;return t.getSource(this.idSource)&&this.sourceType==="image"&&e.sourcetype==="image"&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))};ag.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type};ag.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]};ag.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]};ag.updateImage=function(e){var t=this.subplot.map;t.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var r=this.findFollowingMapLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)};ag.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,!!c7(e)){var r=MXt(e);t.addSource(this.idSource,r)}};ag.findFollowingMapLayerId=function(e){if(e==="traces")for(var t=this.subplot.getMapLayers(),r=0;r0){for(var r=0;r0}function uje(e){var t={},r={};switch(e.type){case"circle":aw.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":aw.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":aw.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var n=e.symbol,i=SXt(n.textposition,n.iconsize);aw.extendFlat(t,{"icon-image":n.icon+"-15","icon-size":n.iconsize/10,"text-field":n.text,"text-size":n.textfont.size,"text-anchor":i.anchor,"text-offset":i.offset,"symbol-placement":n.placement}),aw.extendFlat(r,{"icon-color":e.color,"text-color":n.textfont.color,"text-opacity":e.opacity});break;case"raster":aw.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity});break}return{layout:t,paint:r}}function MXt(e){var t=e.sourcetype,r=e.source,n={type:t},i;return t==="geojson"?i="data":t==="vector"?i=typeof r=="string"?"url":"tiles":t==="raster"?(i="tiles",n.tileSize=256):t==="image"&&(i="url",n.coordinates=e.coordinates),n[i]=r,e.sourceattribution&&(n.attribution=AXt(e.sourceattribution)),n}cje.exports=function(t,r,n){var i=new lje(t,r);return i.update(n),i}});var _je=ye((kbr,yje)=>{"use strict";var PJ=oje(),IJ=Dr(),vje=ix(),hje=qa(),EXt=ho(),kXt=yv(),f7=vf(),pje=Eg(),CXt=pje.drawMode,LXt=pje.selectMode,PXt=Of().prepSelect,IXt=Of().clearOutline,RXt=Of().clearSelectionsCache,DXt=Of().selectOnClick,ow=wx(),FXt=fje();function gje(e,t){this.id=t,this.gd=e;var r=e._fullLayout,n=e._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var Uh=gje.prototype;Uh.plot=function(e,t,r){var n=this,i;n.map?i=new Promise(function(a,o){n.updateMap(e,t,a,o)}):i=new Promise(function(a,o){n.createMap(e,t,a,o)}),r.push(i)};Uh.createMap=function(e,t,r,n){var i=this,a=t[i.id],o=i.styleObj=mje(a.style),s=a.bounds,l=s?[[s.west,s.south],[s.east,s.north]]:null,u=i.map=new PJ.Map({container:i.div,style:o.style,center:RJ(a.center),zoom:a.zoom,bearing:a.bearing,pitch:a.pitch,maxBounds:l,interactive:!i.isStatic,preserveDrawingBuffer:i.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new PJ.AttributionControl({compact:!0})),c={};u.on("styleimagemissing",function(h){var d=h.id;if(!c[d]&&d.includes("-15")){c[d]=!0;var v=new Image(15,15);v.onload=function(){u.addImage(d,v)},v.crossOrigin="Anonymous",v.src="https://unpkg.com/maki@2.1.0/icons/"+d+".svg"}}),u.setTransformRequest(function(h){return h=h.replace("https://fonts.openmaptiles.org/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),h=h.replace("https://tiles.basemaps.cartocdn.com/fonts/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),h=h.replace("https://fonts.openmaptiles.org/Open Sans Regular,Arial Unicode MS Regular","https://fonts.openmaptiles.org/Klokantech Noto Sans Regular"),{url:h}}),u._canvas.style.left="0px",u._canvas.style.top="0px",i.rejectOnError(n),i.isStatic||i.initFx(e,t);var f=[];f.push(new Promise(function(h){u.once("load",h)})),f=f.concat(vje.fetchTraceGeoData(e)),Promise.all(f).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Uh.updateMap=function(e,t,r,n){var i=this,a=i.map,o=t[this.id];i.rejectOnError(n);var s=[],l=mje(o.style);JSON.stringify(i.styleObj)!==JSON.stringify(l)&&(i.styleObj=l,a.setStyle(l.style),i.traceHash={},s.push(new Promise(function(u){a.once("styledata",u)}))),s=s.concat(vje.fetchTraceGeoData(e)),Promise.all(s).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Uh.fillBelowLookup=function(e,t){var r=t[this.id],n=r.layers,i,a,o=this.belowLookup={},s=!1;for(i=0;i1)for(i=0;i-1&&DXt(l.originalEvent,n,[r.xaxis],[r.yaxis],r.id,s),u.indexOf("event")>-1&&f7.click(n,l.originalEvent)}}};Uh.updateFx=function(e){var t=this,r=t.map,n=t.gd;if(t.isStatic)return;function i(l){var u=t.map.unproject(l);return[u.lng,u.lat]}var a=e.dragmode,o;o=function(l,u){if(u.isRect){var c=l.range={};c[t.id]=[i([u.xmin,u.ymin]),i([u.xmax,u.ymax])]}else{var f=l.lassoPoints={};f[t.id]=u.map(i)}};var s=t.dragOptions;t.dragOptions=IJ.extendDeep(s||{},{dragmode:e.dragmode,element:t.div,gd:n,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:o},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),LXt(a)||CXt(a)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(l,u,c){PXt(l,u,c,t.dragOptions,a)},kXt.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))};Uh.updateFramework=function(e){var t=e[this.id].domain,r=e._size,n=this.div.style;n.width=r.w*(t.x[1]-t.x[0])+"px",n.height=r.h*(t.y[1]-t.y[0])+"px",n.left=r.l+t.x[0]*r.w+"px",n.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])};Uh.updateLayers=function(e){var t=e[this.id],r=t.layers,n=this.layerList,i;if(r.length!==n.length){for(i=0;i{"use strict";var DJ=Dr(),OXt=k_(),qXt=Yd(),xje=jk();bje.exports=function(t,r,n){OXt(t,r,n,{type:"map",attributes:xje,handleDefaults:BXt,partition:"y"})};function BXt(e,t,r){r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch");var n=r("bounds.west"),i=r("bounds.east"),a=r("bounds.south"),o=r("bounds.north");(n===void 0||i===void 0||a===void 0||o===void 0)&&delete t.bounds,qXt(e,t,{name:"layers",handleItemDefaults:NXt}),t._input=e}function NXt(e,t){function r(l,u){return DJ.coerce(e,t,xje.layers,l,u)}var n=r("visible");if(n){var i=r("sourcetype"),a=i==="raster"||i==="image";r("source"),r("sourceattribution"),i==="vector"&&r("sourcelayer"),i==="image"&&r("coordinates");var o;a&&(o="raster");var s=r("type",o);a&&s!=="raster"&&(s=t.type="raster",DJ.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),s==="circle"&&r("circle.radius"),s==="line"&&(r("line.width"),r("line.dash")),s==="fill"&&r("fill.outlinecolor"),s==="symbol"&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),DJ.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var d7=ye(l0=>{"use strict";var h7=Dr(),Tje=h7.strTranslate,UXt=h7.strScale,VXt=Id().getSubplotCalcData,GXt=Wp(),HXt=Oa(),Aje=So(),jXt=ru(),WXt=_je(),Tx="map";l0.name=Tx;l0.attr="subplot";l0.idRoot=Tx;l0.idRegex=l0.attrRegex=h7.counterRegex(Tx);l0.attributes={subplot:{valType:"subplotid",dflt:"map",editType:"calc"}};l0.layoutAttributes=jk();l0.supplyLayoutDefaults=wje();l0.plot=function(t){for(var r=t._fullLayout,n=t.calcdata,i=r._subplots[Tx],a=0;a_/2){var b=f.split("|").join("
");d.text(b).attr("data-unformatted",b).call(jXt.convertToTspans,e),v=Aje.bBox(d.node())}d.attr("transform",Tje(-3,-v.height+8)),h.insert("rect",".static-attribution").attr({x:-v.width-6,y:-v.height-3,width:v.width+6,height:v.height+3,fill:"rgba(255, 255, 255, 0.75)"});var p=1;v.width+6>_&&(p=_/(v.width+6));var k=[n.l+n.w*o.x[1],n.t+n.h*(1-o.y[0])];h.attr("transform",Tje(k[0],k[1])+UXt(p))}};l0.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[Tx],n=0;n{"use strict";Sje.exports={attributes:n7(),supplyDefaults:qHe(),colorbar:$d(),formatLabels:AJ(),calc:pF(),plot:$He(),hoverPoints:u7().hoverPoints,eventData:rje(),selectPoints:nje(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermap",basePlotModule:d7(),categories:["map","gl","symbols","showLegend","scatter-like"],meta:{}}});var kje=ye((Ibr,Eje)=>{"use strict";Eje.exports=Mje()});var FJ=ye((Rbr,Cje)=>{"use strict";var d1=t5(),XXt=Tu(),{hovertemplateAttrs:ZXt,templatefallbackAttrs:YXt}=Ll(),KXt=Gl(),Ax=Ao().extendFlat;Cje.exports=Ax({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:Ax({},d1.featureidkey,{}),below:{valType:"string",editType:"plot"},text:d1.text,hovertext:d1.hovertext,marker:{line:{color:Ax({},d1.marker.line.color,{editType:"plot"}),width:Ax({},d1.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:Ax({},d1.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:Ax({},d1.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:Ax({},d1.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:d1.hoverinfo,hovertemplate:ZXt({},{keys:["properties"]}),hovertemplatefallback:YXt(),showlegend:Ax({},KXt.showlegend,{dflt:!1})},XXt("",{cLetter:"z",editTypeOverride:"calc"}))});var Pje=ye((Dbr,Lje)=>{"use strict";var Yk=Dr(),JXt=Qh(),$Xt=FJ();Lje.exports=function(t,r,n,i){function a(c,f){return Yk.coerce(t,r,$Xt,c,f)}var o=a("locations"),s=a("z"),l=a("geojson");if(!Yk.isArrayOrTypedArray(o)||!o.length||!Yk.isArrayOrTypedArray(s)||!s.length||!(typeof l=="string"&&l!==""||Yk.isPlainObject(l))){r.visible=!1;return}a("featureidkey"),r._length=Math.min(o.length,s.length),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback");var u=a("marker.line.width");u&&a("marker.line.color"),a("marker.opacity"),JXt(t,r,i,a,{prefix:"",cLetter:"z"}),Yk.coerceSelectionMarkerOpacity(r,a)}});var zJ=ye((Fbr,Dje)=>{"use strict";var QXt=Eo(),v1=Dr(),eZt=tc(),tZt=So(),rZt=tx().makeBlank,Ije=ix();function iZt(e){var t=e[0].trace,r=t.visible===!0&&t._length!==0,n={layout:{visibility:"none"},paint:{}},i={layout:{visibility:"none"},paint:{}},a=t._opts={fill:n,line:i,geojson:rZt()};if(!r)return a;var o=Ije.extractTraceFeature(e);if(!o)return a;var s=eZt.makeColorScaleFuncFromTrace(t),l=t.marker,u=l.line||{},c;v1.isArrayOrTypedArray(l.opacity)&&(c=function(k){var E=k.mo;return QXt(E)?+v1.constrain(E,0,1):0});var f;v1.isArrayOrTypedArray(u.color)&&(f=function(k){return k.mlc});var h;v1.isArrayOrTypedArray(u.width)&&(h=function(k){return k.mlw});for(var d=0;d{"use strict";var zje=zJ().convert,nZt=zJ().convertOnSelect,Fje=wx().traceLayerPrefix;function Oje(e,t){this.type="choroplethmap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",Fje+t+"-fill"],["line",Fje+t+"-line"]],this.below=null}var L5=Oje.prototype;L5.update=function(e){this._update(zje(e)),e[0].trace._glTrace=this};L5.updateOnSelect=function(e){this._update(nZt(e))};L5._update=function(e){var t=this.subplot,r=this.layerList,n=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(e.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(e,n),this.below=n);for(var i=0;i=0;r--)e.removeLayer(t[r][1])};L5.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};qje.exports=function(t,r){var n=r[0].trace,i=new Oje(t,n.uid),a=i.sourceId,o=zje(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),r[0].trace._glTrace=i,i}});var Uje=ye((Obr,Nje)=>{"use strict";Nje.exports={attributes:FJ(),supplyDefaults:Pje(),colorbar:S_(),calc:zF(),plot:Bje(),hoverPoints:qF(),eventData:BF(),selectPoints:NF(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.updateOnSelect(t)}},getBelow:function(e,t){for(var r=t.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if(typeof i=="string"&&i.indexOf("water")===0){for(var a=n+1;a{"use strict";Vje.exports=Uje()});var qJ=ye((Bbr,jje)=>{"use strict";var aZt=Tu(),{hovertemplateAttrs:oZt,templatefallbackAttrs:sZt}=Ll(),Hje=Gl(),v7=n7(),OJ=Ao().extendFlat;jje.exports=OJ({lon:v7.lon,lat:v7.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:v7.text,hovertext:v7.hovertext,hoverinfo:OJ({},Hje.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:oZt(),hovertemplatefallback:sZt(),showlegend:OJ({},Hje.showlegend,{dflt:!1})},aZt("",{cLetter:"z",editTypeOverride:"calc"}))});var Xje=ye((Nbr,Wje)=>{"use strict";var lZt=Dr(),uZt=Qh(),cZt=qJ();Wje.exports=function(t,r,n,i){function a(u,c){return lZt.coerce(t,r,cZt,u,c)}var o=a("lon")||[],s=a("lat")||[],l=Math.min(o.length,s.length);if(!l){r.visible=!1;return}r._length=l,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),uZt(t,r,i,a,{prefix:"",cLetter:"z"})}});var Kje=ye((Ubr,Yje)=>{"use strict";var BJ=Eo(),fZt=Dr().isArrayOrTypedArray,NJ=fs().BADNUM,hZt=gv(),Zje=Dr()._;Yje.exports=function(t,r){for(var n=r._length,i=new Array(n),a=r.z,o=fZt(a)&&a.length,s=0;s{"use strict";var dZt=Eo(),UJ=Dr(),Jje=ka(),$je=tc(),Qje=fs().BADNUM,vZt=tx().makeBlank;eWe.exports=function(t){var r=t[0].trace,n=r.visible===!0&&r._length!==0,i={layout:{visibility:"none"},paint:{}},a=r._opts={heatmap:i,geojson:vZt()};if(!n)return a;var o=[],s,l=r.z,u=r.radius,c=UJ.isArrayOrTypedArray(l)&&l.length,f=UJ.isArrayOrTypedArray(u);for(s=0;s0?+u[s]:0),o.push({type:"Feature",geometry:{type:"Point",coordinates:d},properties:v})}}var b=$je.extractOpts(r),p=b.reversescale?$je.flipScale(b.colorscale):b.colorscale,k=p[0][1],E=Jje.opacity(k)<1?k:Jje.addOpacity(k,0),S=["interpolate",["linear"],["heatmap-density"],0,E];for(s=1;s{"use strict";var rWe=tWe(),pZt=wx().traceLayerPrefix;function iWe(e,t){this.type="densitymap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",pZt+t+"-heatmap"]],this.below=null}var p7=iWe.prototype;p7.update=function(e){var t=this.subplot,r=this.layerList,n=rWe(e),i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(n.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(n,i),this.below=i);for(var a=0;a=0;r--)e.removeLayer(t[r][1])};p7.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};nWe.exports=function(t,r){var n=r[0].trace,i=new iWe(t,n.uid),a=i.sourceId,o=rWe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),i}});var sWe=ye((Hbr,oWe)=>{"use strict";var gZt=ho(),mZt=u7().hoverPoints,yZt=u7().getExtraText;oWe.exports=function(t,r,n){var i=mZt(t,r,n);if(i){var a=i[0],o=a.cd,s=o[0].trace,l=o[a.index];if(delete a.color,"z"in l){var u=a.subplot.mockAxis;a.z=l.z,a.zLabel=gZt.tickText(u,u.c2l(l.z),"hover").text}return a.extraText=yZt(s,l,o[0].t.labels),[a]}}});var uWe=ye((jbr,lWe)=>{"use strict";lWe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var fWe=ye((Wbr,cWe)=>{"use strict";cWe.exports={attributes:qJ(),supplyDefaults:Xje(),colorbar:S_(),formatLabels:AJ(),calc:Kje(),plot:aWe(),hoverPoints:sWe(),eventData:uWe(),getBelow:function(e,t){for(var r=t.getMapLayers(),n=0;n{"use strict";hWe.exports=fWe()});var GJ=ye((Ybr,yWe)=>{"use strict";var _Zt=ec(),xZt=Gl(),vWe=Lh(),VJ=a3(),bZt=Cc().attributes,{hovertemplateAttrs:pWe,templatefallbackAttrs:gWe}=Ll(),wZt=Tu(),TZt=vl().templatedArray,AZt=df().descriptionOnlyNumbers,mWe=Ao().extendFlat,SZt=mc().overrideAll,Zbr=yWe.exports=SZt({hoverinfo:mWe({},xZt.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:VJ.hoverlabel,domain:bZt({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h"},valueformat:{valType:"string",dflt:".3s",description:AZt("value")},valuesuffix:{valType:"string",dflt:""},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap"},textfont:_Zt({autoShadowDflt:!0}),customdata:void 0,node:{label:{valType:"data_array",dflt:[]},groups:{valType:"info_array",impliedEdits:{x:[],y:[]},dimensions:2,freeLength:!0,dflt:[],items:{valType:"number",editType:"calc"}},x:{valType:"data_array",dflt:[]},y:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:vWe.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:.5,arrayOk:!0}},pad:{valType:"number",arrayOk:!1,min:0,dflt:20},thickness:{valType:"number",arrayOk:!1,min:1,dflt:20},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:VJ.hoverlabel,hovertemplate:pWe({},{keys:["value","label"]}),hovertemplatefallback:gWe(),align:{valType:"enumerated",values:["justify","left","right","center"],dflt:"justify"}},link:{arrowlen:{valType:"number",min:0,dflt:0},label:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},hovercolor:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:vWe.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:0,arrayOk:!0}},source:{valType:"data_array",dflt:[]},target:{valType:"data_array",dflt:[]},value:{valType:"data_array",dflt:[]},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:VJ.hoverlabel,hovertemplate:pWe({},{keys:["value","label"]}),hovertemplatefallback:gWe(),colorscales:TZt("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:mWe(wZt().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")});var TWe=ye((Kbr,wWe)=>{"use strict";var P5=Dr(),g7=GJ(),MZt=ka(),_We=cd(),EZt=Cc().defaults,xWe=hM(),bWe=vl(),kZt=Yd();wWe.exports=function(t,r,n,i){function a(S,L){return P5.coerce(t,r,g7,S,L)}var o=P5.extendDeep(i.hoverlabel,t.hoverlabel),s=t.node,l=bWe.newContainer(r,"node");function u(S,L){return P5.coerce(s,l,g7.node,S,L)}u("label"),u("groups"),u("x"),u("y"),u("pad"),u("thickness"),u("line.color"),u("line.width"),u("hoverinfo",t.hoverinfo),xWe(s,l,u,o),u("hovertemplate"),u("align");var c=i.colorway,f=function(S){return c[S%c.length]};u("color",l.label.map(function(S,L){return MZt.addOpacity(f(L),.8)})),u("customdata");var h=t.link||{},d=bWe.newContainer(r,"link");function v(S,L){return P5.coerce(h,d,g7.link,S,L)}v("label"),v("arrowlen"),v("source"),v("target"),v("value"),v("line.color"),v("line.width"),v("hoverinfo",t.hoverinfo),xWe(h,d,v,o),v("hovertemplate");var _=_We(i.paper_bgcolor).getLuminance()<.333,b=_?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)",p=v("color",b);function k(S){var L=_We(S);if(!L.isValid())return S;var x=L.getAlpha();return x<=.8?L.setAlpha(x+.2):L=_?L.brighten():L.darken(),L.toRgbString()}v("hovercolor",Array.isArray(p)?p.map(k):k(p)),v("customdata"),kZt(h,d,{name:"colorscales",handleItemDefaults:CZt}),EZt(r,i,a),a("orientation"),a("valueformat"),a("valuesuffix");var E;l.x.length&&l.y.length&&(E="freeform"),a("arrangement",E),P5.coerceFont(a,"textfont",i.font,{autoShadowDflt:!0}),r._length=null};function CZt(e,t){function r(n,i){return P5.coerce(e,t,g7.link.colorscales,n,i)}r("label"),r("cmin"),r("cmax"),r("colorscale")}});var HJ=ye((Jbr,AWe)=>{"use strict";AWe.exports=LZt;function LZt(e){for(var t=e.length,r=new Array(t),n=new Array(t),i=new Array(t),a=new Array(t),o=new Array(t),s=new Array(t),l=0;l0;){b=k[k.length-1];var E=e[b];if(a[b]=0&&s[b].push(o[L])}a[b]=S}else{if(n[b]===r[b]){for(var x=[],C=[],M=0,S=p.length-1;S>=0;--S){var g=p[S];if(i[g]=!1,x.push(g),C.push(s[g]),M+=s[g].length,o[g]=c.length,g===b){p.length=S;break}}c.push(x);for(var P=new Array(M),S=0;S{"use strict";var PZt=HJ(),I5=Dr(),IZt=Jm().wrap,Kk=I5.isArrayOrTypedArray,SWe=I5.isIndex,MWe=tc();function RZt(e){var t=e.node,r=e.link,n=[],i=Kk(r.color),a=Kk(r.hovercolor),o=Kk(r.customdata),s={},l={},u=r.colorscales.length,c;for(c=0;cv&&(v=r.source[c]),r.target[c]>v&&(v=r.target[c]);var _=v+1;e.node._count=_;var b,p=e.node.groups,k={};for(c=0;c0&&SWe(M,_)&&SWe(g,_)&&!(k.hasOwnProperty(M)&&k.hasOwnProperty(g)&&k[M]===k[g])){k.hasOwnProperty(g)&&(g=k[g]),k.hasOwnProperty(M)&&(M=k[M]),M=+M,g=+g,s[M]=s[g]=!0;var P="";r.label&&r.label[c]&&(P=r.label[c]);var T=null;P&&l.hasOwnProperty(P)&&(T=l[P]),n.push({pointNumber:c,label:P,color:i?r.color[c]:r.color,hovercolor:a?r.hovercolor[c]:r.hovercolor,customdata:o?r.customdata[c]:r.customdata,concentrationscale:T,source:M,target:g,value:+C}),x.source.push(M),x.target.push(g)}}var z=_+p.length,O=Kk(t.color),V=Kk(t.customdata),G=[];for(c=0;c_-1,childrenNodes:[],pointNumber:c,label:Z,color:O?t.color[c]:t.color,customdata:V?t.customdata[c]:t.customdata})}var j=!1;return DZt(z,x.source,x.target)&&(j=!0),{circular:j,links:n,nodes:G,groups:p,groupLookup:k}}function DZt(e,t,r){for(var n=I5.init2dArray(e,0),i=0;i1})}EWe.exports=function(t,r){var n=RZt(r);return IZt({circular:n.circular,_nodes:n.nodes,_links:n.links,_groups:n.groups,_groupLookup:n.groupLookup})}});var LWe=ye((m7,CWe)=>{(function(e,t){typeof m7=="object"&&typeof CWe!="undefined"?t(m7):(e=e||self,t(e.d3=e.d3||{}))})(m7,function(e){"use strict";function t(C){var M=+this._x.call(null,C),g=+this._y.call(null,C);return r(this.cover(M,g),M,g,C)}function r(C,M,g,P){if(isNaN(M)||isNaN(g))return C;var T,z=C._root,O={data:P},V=C._x0,G=C._y0,Z=C._x1,j=C._y1,N,H,te,oe,_e,Ee,Ce,me;if(!z)return C._root=O,C;for(;z.length;)if((_e=M>=(N=(V+Z)/2))?V=N:Z=N,(Ee=g>=(H=(G+j)/2))?G=H:j=H,T=z,!(z=z[Ce=Ee<<1|_e]))return T[Ce]=O,C;if(te=+C._x.call(null,z.data),oe=+C._y.call(null,z.data),M===te&&g===oe)return O.next=z,T?T[Ce]=O:C._root=O,C;do T=T?T[Ce]=new Array(4):C._root=new Array(4),(_e=M>=(N=(V+Z)/2))?V=N:Z=N,(Ee=g>=(H=(G+j)/2))?G=H:j=H;while((Ce=Ee<<1|_e)===(me=(oe>=H)<<1|te>=N));return T[me]=z,T[Ce]=O,C}function n(C){var M,g,P=C.length,T,z,O=new Array(P),V=new Array(P),G=1/0,Z=1/0,j=-1/0,N=-1/0;for(g=0;gj&&(j=T),zN&&(N=z));if(G>j||Z>N)return this;for(this.cover(G,Z).cover(j,N),g=0;gC||C>=T||P>M||M>=z;)switch(Z=(Mj||(V=oe.y0)>N||(G=oe.x1)=Ce)<<1|C>=Ee)&&(oe=H[H.length-1],H[H.length-1]=H[H.length-1-_e],H[H.length-1-_e]=oe)}else{var me=C-+this._x.call(null,te.data),ie=M-+this._y.call(null,te.data),Se=me*me+ie*ie;if(Se=(H=(O+G)/2))?O=H:G=H,(_e=N>=(te=(V+Z)/2))?V=te:Z=te,M=g,!(g=g[Ee=_e<<1|oe]))return this;if(!g.length)break;(M[Ee+1&3]||M[Ee+2&3]||M[Ee+3&3])&&(P=M,Ce=Ee)}for(;g.data!==C;)if(T=g,!(g=g.next))return this;return(z=g.next)&&delete g.next,T?(z?T.next=z:delete T.next,this):M?(z?M[Ee]=z:delete M[Ee],(g=M[0]||M[1]||M[2]||M[3])&&g===(M[3]||M[2]||M[1]||M[0])&&!g.length&&(P?P[Ce]=g:this._root=g),this):(this._root=z,this)}function c(C){for(var M=0,g=C.length;M{(function(e,t){t(typeof y7=="object"&&typeof PWe!="undefined"?y7:e.d3=e.d3||{})})(y7,function(e){"use strict";var t="$";function r(){}r.prototype=n.prototype={constructor:r,has:function(_){return t+_ in this},get:function(_){return this[t+_]},set:function(_,b){return this[t+_]=b,this},remove:function(_){var b=t+_;return b in this&&delete this[b]},clear:function(){for(var _ in this)_[0]===t&&delete this[_]},keys:function(){var _=[];for(var b in this)b[0]===t&&_.push(b.slice(1));return _},values:function(){var _=[];for(var b in this)b[0]===t&&_.push(this[b]);return _},entries:function(){var _=[];for(var b in this)b[0]===t&&_.push({key:b.slice(1),value:this[b]});return _},size:function(){var _=0;for(var b in this)b[0]===t&&++_;return _},empty:function(){for(var _ in this)if(_[0]===t)return!1;return!0},each:function(_){for(var b in this)b[0]===t&&_(this[b],b.slice(1),this)}};function n(_,b){var p=new r;if(_ instanceof r)_.each(function(x,C){p.set(C,x)});else if(Array.isArray(_)){var k=-1,E=_.length,S;if(b==null)for(;++k=_.length)return p!=null&&x.sort(p),k!=null?k(x):x;for(var P=-1,T=x.length,z=_[C++],O,V,G=n(),Z,j=M();++P_.length)return x;var M,g=b[C-1];return k!=null&&C>=_.length?M=x.entries():(M=[],x.each(function(P,T){M.push({key:T,values:L(P,C)})})),g!=null?M.sort(function(P,T){return g(P.key,T.key)}):M}return E={object:function(x){return S(x,0,a,o)},map:function(x){return S(x,0,s,l)},entries:function(x){return L(S(x,0,s,l),0)},key:function(x){return _.push(x),E},sortKeys:function(x){return b[_.length-1]=x,E},sortValues:function(x){return p=x,E},rollup:function(x){return k=x,E}}}function a(){return{}}function o(_,b,p){_[b]=p}function s(){return n()}function l(_,b,p){_.set(b,p)}function u(){}var c=n.prototype;u.prototype=f.prototype={constructor:u,has:c.has,add:function(_){return _+="",this[t+_]=_,this},remove:c.remove,clear:c.clear,values:c.keys,size:c.size,empty:c.empty,each:c.each};function f(_,b){var p=new u;if(_ instanceof u)_.each(function(S){p.add(S)});else if(_){var k=-1,E=_.length;if(b==null)for(;++k{(function(e,t){typeof x7=="object"&&typeof IWe!="undefined"?t(x7):(e=e||self,t(e.d3=e.d3||{}))})(x7,function(e){"use strict";var t={value:function(){}};function r(){for(var s=0,l=arguments.length,u={},c;s=0&&(c=u.slice(f+1),u=u.slice(0,f)),u&&!l.hasOwnProperty(u))throw new Error("unknown type: "+u);return{type:u,name:c}})}n.prototype=r.prototype={constructor:n,on:function(s,l){var u=this._,c=i(s+"",u),f,h=-1,d=c.length;if(arguments.length<2){for(;++h0)for(var u=new Array(f),c=0,f,h;c{(function(e,t){typeof b7=="object"&&typeof DWe!="undefined"?t(b7):(e=e||self,t(e.d3=e.d3||{}))})(b7,function(e){"use strict";var t=0,r=0,n=0,i=1e3,a,o,s=0,l=0,u=0,c=typeof performance=="object"&&performance.now?performance:Date,f=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(C){setTimeout(C,17)};function h(){return l||(f(d),l=c.now()+u)}function d(){l=0}function v(){this._call=this._time=this._next=null}v.prototype=_.prototype={constructor:v,restart:function(C,M,g){if(typeof C!="function")throw new TypeError("callback is not a function");g=(g==null?h():+g)+(M==null?0:+M),!this._next&&o!==this&&(o?o._next=this:a=this,o=this),this._call=C,this._time=g,S()},stop:function(){this._call&&(this._call=null,this._time=1/0,S())}};function _(C,M,g){var P=new v;return P.restart(C,M,g),P}function b(){h(),++t;for(var C=a,M;C;)(M=l-C._time)>=0&&C._call.call(null,M),C=C._next;--t}function p(){l=(s=c.now())+u,t=r=0;try{b()}finally{t=0,E(),l=0}}function k(){var C=c.now(),M=C-s;M>i&&(u-=M,s=C)}function E(){for(var C,M=a,g,P=1/0;M;)M._call?(P>M._time&&(P=M._time),C=M,M=M._next):(g=M._next,M._next=null,M=C?C._next=g:a=g);o=C,S(P)}function S(C){if(!t){r&&(r=clearTimeout(r));var M=C-l;M>24?(C<1/0&&(r=setTimeout(p,C-c.now()-u)),n&&(n=clearInterval(n))):(n||(s=c.now(),n=setInterval(k,i)),t=1,f(p))}}function L(C,M,g){var P=new v;return M=M==null?0:+M,P.restart(function(T){P.stop(),C(T+M)},M,g),P}function x(C,M,g){var P=new v,T=M;return M==null?(P.restart(C,M,g),P):(M=+M,g=g==null?h():+g,P.restart(function z(O){O+=T,P.restart(z,T+=M,g),C(O)},M,g),P)}e.interval=x,e.now=h,e.timeout=L,e.timer=_,e.timerFlush=b,Object.defineProperty(e,"__esModule",{value:!0})})});var OWe=ye((w7,zWe)=>{(function(e,t){typeof w7=="object"&&typeof zWe!="undefined"?t(w7,LWe(),_7(),RWe(),FWe()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,e.d3)})(w7,function(e,t,r,n,i){"use strict";function a(C,M){var g;C==null&&(C=0),M==null&&(M=0);function P(){var T,z=g.length,O,V=0,G=0;for(T=0;TN.index){var Re=H-Fe.x-Fe.vx,ce=te-Fe.y-Fe.vy,Ze=Re*Re+ce*ce;ZeH+ge||Lete+ge||AeG.r&&(G.r=G[Z].r)}function V(){if(M){var G,Z=M.length,j;for(g=new Array(Z),G=0;G1?(_e==null?V.remove(oe):V.set(oe,te(_e)),M):V.get(oe)},find:function(oe,_e,Ee){var Ce=0,me=C.length,ie,Se,Le,Ae,Fe;for(Ee==null?Ee=1/0:Ee*=Ee,Ce=0;Ce1?(Z.on(oe,_e),M):Z.on(oe)}}}function E(){var C,M,g,P=o(-30),T,z=1,O=1/0,V=.81;function G(H){var te,oe=C.length,_e=t.quadtree(C,v,_).visitAfter(j);for(g=H,te=0;te=O)return;(H.data!==M||H.next)&&(Ee===0&&(Ee=s(),ie+=Ee*Ee),Ce===0&&(Ce=s(),ie+=Ce*Ce),ie{(function(e,t){typeof T7=="object"&&typeof qWe!="undefined"?t(T7):(e=e||self,t(e.d3=e.d3||{}))})(T7,function(e){"use strict";var t=Math.PI,r=2*t,n=1e-6,i=r-n;function a(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function o(){return new a}a.prototype=o.prototype={constructor:a,moveTo:function(s,l){this._+="M"+(this._x0=this._x1=+s)+","+(this._y0=this._y1=+l)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(s,l){this._+="L"+(this._x1=+s)+","+(this._y1=+l)},quadraticCurveTo:function(s,l,u,c){this._+="Q"+ +s+","+ +l+","+(this._x1=+u)+","+(this._y1=+c)},bezierCurveTo:function(s,l,u,c,f,h){this._+="C"+ +s+","+ +l+","+ +u+","+ +c+","+(this._x1=+f)+","+(this._y1=+h)},arcTo:function(s,l,u,c,f){s=+s,l=+l,u=+u,c=+c,f=+f;var h=this._x1,d=this._y1,v=u-s,_=c-l,b=h-s,p=d-l,k=b*b+p*p;if(f<0)throw new Error("negative radius: "+f);if(this._x1===null)this._+="M"+(this._x1=s)+","+(this._y1=l);else if(k>n)if(!(Math.abs(p*v-_*b)>n)||!f)this._+="L"+(this._x1=s)+","+(this._y1=l);else{var E=u-h,S=c-d,L=v*v+_*_,x=E*E+S*S,C=Math.sqrt(L),M=Math.sqrt(k),g=f*Math.tan((t-Math.acos((L+k-x)/(2*C*M)))/2),P=g/M,T=g/C;Math.abs(P-1)>n&&(this._+="L"+(s+P*b)+","+(l+P*p)),this._+="A"+f+","+f+",0,0,"+ +(p*E>b*S)+","+(this._x1=s+T*v)+","+(this._y1=l+T*_)}},arc:function(s,l,u,c,f,h){s=+s,l=+l,u=+u,h=!!h;var d=u*Math.cos(c),v=u*Math.sin(c),_=s+d,b=l+v,p=1^h,k=h?c-f:f-c;if(u<0)throw new Error("negative radius: "+u);this._x1===null?this._+="M"+_+","+b:(Math.abs(this._x1-_)>n||Math.abs(this._y1-b)>n)&&(this._+="L"+_+","+b),u&&(k<0&&(k=k%r+r),k>i?this._+="A"+u+","+u+",0,1,"+p+","+(s-d)+","+(l-v)+"A"+u+","+u+",0,1,"+p+","+(this._x1=_)+","+(this._y1=b):k>n&&(this._+="A"+u+","+u+",0,"+ +(k>=t)+","+p+","+(this._x1=s+u*Math.cos(f))+","+(this._y1=l+u*Math.sin(f))))},rect:function(s,l,u,c){this._+="M"+(this._x0=this._x1=+s)+","+(this._y0=this._y1=+l)+"h"+ +u+"v"+ +c+"h"+-u+"Z"},toString:function(){return this._}},e.path=o,Object.defineProperty(e,"__esModule",{value:!0})})});var jJ=ye((A7,NWe)=>{(function(e,t){typeof A7=="object"&&typeof NWe!="undefined"?t(A7,BWe()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(A7,function(e,t){"use strict";function r(Mt){return function(){return Mt}}var n=Math.abs,i=Math.atan2,a=Math.cos,o=Math.max,s=Math.min,l=Math.sin,u=Math.sqrt,c=1e-12,f=Math.PI,h=f/2,d=2*f;function v(Mt){return Mt>1?0:Mt<-1?f:Math.acos(Mt)}function _(Mt){return Mt>=1?h:Mt<=-1?-h:Math.asin(Mt)}function b(Mt){return Mt.innerRadius}function p(Mt){return Mt.outerRadius}function k(Mt){return Mt.startAngle}function E(Mt){return Mt.endAngle}function S(Mt){return Mt&&Mt.padAngle}function L(Mt,kr,Jr,vi,hn,An,Mn,Li){var _n=Jr-Mt,ya=vi-kr,Jn=Mn-hn,Ma=Li-An,_o=Ma*_n-Jn*ya;if(!(_o*_oZl*Zl+Su*Su&&(As=Ks,cl=zs),{cx:As,cy:cl,x01:-Jn,y01:-Ma,x11:As*(hn/zl-1),y11:cl*(hn/zl-1)}}function C(){var Mt=b,kr=p,Jr=r(0),vi=null,hn=k,An=E,Mn=S,Li=null;function _n(){var ya,Jn,Ma=+Mt.apply(this,arguments),_o=+kr.apply(this,arguments),No=hn.apply(this,arguments)-h,po=An.apply(this,arguments)-h,Lo=n(po-No),ko=po>No;if(Li||(Li=ya=t.path()),_oc))Li.moveTo(0,0);else if(Lo>d-c)Li.moveTo(_o*a(No),_o*l(No)),Li.arc(0,0,_o,No,po,!ko),Ma>c&&(Li.moveTo(Ma*a(po),Ma*l(po)),Li.arc(0,0,Ma,po,No,ko));else{var Ds=No,Fs=po,ll=No,ul=po,zl=Lo,us=Lo,il=Mn.apply(this,arguments)/2,As=il>c&&(vi?+vi.apply(this,arguments):u(Ma*Ma+_o*_o)),cl=s(n(_o-Ma)/2,+Jr.apply(this,arguments)),Ks=cl,zs=cl,Io,ls;if(As>c){var Zl=_(As/Ma*l(il)),Su=_(As/_o*l(il));(zl-=Zl*2)>c?(Zl*=ko?1:-1,ll+=Zl,ul-=Zl):(zl=0,ll=ul=(No+po)/2),(us-=Su*2)>c?(Su*=ko?1:-1,Ds+=Su,Fs-=Su):(us=0,Ds=Fs=(No+po)/2)}var nc=_o*a(Ds),bs=_o*l(Ds),Rn=Ma*a(ul),_a=Ma*l(ul);if(cl>c){var Vu=_o*a(Fs),Ol=_o*l(Fs),xo=Ma*a(ll),Yl=Ma*l(ll),Ns;if(Loc?zs>c?(Io=x(xo,Yl,nc,bs,_o,zs,ko),ls=x(Vu,Ol,Rn,_a,_o,zs,ko),Li.moveTo(Io.cx+Io.x01,Io.cy+Io.y01),zsc)||!(zl>c)?Li.lineTo(Rn,_a):Ks>c?(Io=x(Rn,_a,Vu,Ol,Ma,-Ks,ko),ls=x(nc,bs,xo,Yl,Ma,-Ks,ko),Li.lineTo(Io.cx+Io.x01,Io.cy+Io.y01),Ks=_o;--No)Li.point(Fs[No],ll[No]);Li.lineEnd(),Li.areaEnd()}ko&&(Fs[Ma]=+Mt(Lo,Ma,Jn),ll[Ma]=+Jr(Lo,Ma,Jn),Li.point(kr?+kr(Lo,Ma,Jn):Fs[Ma],vi?+vi(Lo,Ma,Jn):ll[Ma]))}if(Ds)return Li=null,Ds+""||null}function ya(){return z().defined(hn).curve(Mn).context(An)}return _n.x=function(Jn){return arguments.length?(Mt=typeof Jn=="function"?Jn:r(+Jn),kr=null,_n):Mt},_n.x0=function(Jn){return arguments.length?(Mt=typeof Jn=="function"?Jn:r(+Jn),_n):Mt},_n.x1=function(Jn){return arguments.length?(kr=Jn==null?null:typeof Jn=="function"?Jn:r(+Jn),_n):kr},_n.y=function(Jn){return arguments.length?(Jr=typeof Jn=="function"?Jn:r(+Jn),vi=null,_n):Jr},_n.y0=function(Jn){return arguments.length?(Jr=typeof Jn=="function"?Jn:r(+Jn),_n):Jr},_n.y1=function(Jn){return arguments.length?(vi=Jn==null?null:typeof Jn=="function"?Jn:r(+Jn),_n):vi},_n.lineX0=_n.lineY0=function(){return ya().x(Mt).y(Jr)},_n.lineY1=function(){return ya().x(Mt).y(vi)},_n.lineX1=function(){return ya().x(kr).y(Jr)},_n.defined=function(Jn){return arguments.length?(hn=typeof Jn=="function"?Jn:r(!!Jn),_n):hn},_n.curve=function(Jn){return arguments.length?(Mn=Jn,An!=null&&(Li=Mn(An)),_n):Mn},_n.context=function(Jn){return arguments.length?(Jn==null?An=Li=null:Li=Mn(An=Jn),_n):An},_n}function V(Mt,kr){return krMt?1:kr>=Mt?0:NaN}function G(Mt){return Mt}function Z(){var Mt=G,kr=V,Jr=null,vi=r(0),hn=r(d),An=r(0);function Mn(Li){var _n,ya=Li.length,Jn,Ma,_o=0,No=new Array(ya),po=new Array(ya),Lo=+vi.apply(this,arguments),ko=Math.min(d,Math.max(-d,hn.apply(this,arguments)-Lo)),Ds,Fs=Math.min(Math.abs(ko)/ya,An.apply(this,arguments)),ll=Fs*(ko<0?-1:1),ul;for(_n=0;_n0&&(_o+=ul);for(kr!=null?No.sort(function(zl,us){return kr(po[zl],po[us])}):Jr!=null&&No.sort(function(zl,us){return Jr(Li[zl],Li[us])}),_n=0,Ma=_o?(ko-ya*ll)/_o:0;_n0?ul*Ma:0)+ll,po[Jn]={data:Li[Jn],index:_n,value:ul,startAngle:Lo,endAngle:Ds,padAngle:Fs};return po}return Mn.value=function(Li){return arguments.length?(Mt=typeof Li=="function"?Li:r(+Li),Mn):Mt},Mn.sortValues=function(Li){return arguments.length?(kr=Li,Jr=null,Mn):kr},Mn.sort=function(Li){return arguments.length?(Jr=Li,kr=null,Mn):Jr},Mn.startAngle=function(Li){return arguments.length?(vi=typeof Li=="function"?Li:r(+Li),Mn):vi},Mn.endAngle=function(Li){return arguments.length?(hn=typeof Li=="function"?Li:r(+Li),Mn):hn},Mn.padAngle=function(Li){return arguments.length?(An=typeof Li=="function"?Li:r(+Li),Mn):An},Mn}var j=H(g);function N(Mt){this._curve=Mt}N.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(Mt,kr){this._curve.point(kr*Math.sin(Mt),kr*-Math.cos(Mt))}};function H(Mt){function kr(Jr){return new N(Mt(Jr))}return kr._curve=Mt,kr}function te(Mt){var kr=Mt.curve;return Mt.angle=Mt.x,delete Mt.x,Mt.radius=Mt.y,delete Mt.y,Mt.curve=function(Jr){return arguments.length?kr(H(Jr)):kr()._curve},Mt}function oe(){return te(z().curve(j))}function _e(){var Mt=O().curve(j),kr=Mt.curve,Jr=Mt.lineX0,vi=Mt.lineX1,hn=Mt.lineY0,An=Mt.lineY1;return Mt.angle=Mt.x,delete Mt.x,Mt.startAngle=Mt.x0,delete Mt.x0,Mt.endAngle=Mt.x1,delete Mt.x1,Mt.radius=Mt.y,delete Mt.y,Mt.innerRadius=Mt.y0,delete Mt.y0,Mt.outerRadius=Mt.y1,delete Mt.y1,Mt.lineStartAngle=function(){return te(Jr())},delete Mt.lineX0,Mt.lineEndAngle=function(){return te(vi())},delete Mt.lineX1,Mt.lineInnerRadius=function(){return te(hn())},delete Mt.lineY0,Mt.lineOuterRadius=function(){return te(An())},delete Mt.lineY1,Mt.curve=function(Mn){return arguments.length?kr(H(Mn)):kr()._curve},Mt}function Ee(Mt,kr){return[(kr=+kr)*Math.cos(Mt-=Math.PI/2),kr*Math.sin(Mt)]}var Ce=Array.prototype.slice;function me(Mt){return Mt.source}function ie(Mt){return Mt.target}function Se(Mt){var kr=me,Jr=ie,vi=P,hn=T,An=null;function Mn(){var Li,_n=Ce.call(arguments),ya=kr.apply(this,_n),Jn=Jr.apply(this,_n);if(An||(An=Li=t.path()),Mt(An,+vi.apply(this,(_n[0]=ya,_n)),+hn.apply(this,_n),+vi.apply(this,(_n[0]=Jn,_n)),+hn.apply(this,_n)),Li)return An=null,Li+""||null}return Mn.source=function(Li){return arguments.length?(kr=Li,Mn):kr},Mn.target=function(Li){return arguments.length?(Jr=Li,Mn):Jr},Mn.x=function(Li){return arguments.length?(vi=typeof Li=="function"?Li:r(+Li),Mn):vi},Mn.y=function(Li){return arguments.length?(hn=typeof Li=="function"?Li:r(+Li),Mn):hn},Mn.context=function(Li){return arguments.length?(An=Li==null?null:Li,Mn):An},Mn}function Le(Mt,kr,Jr,vi,hn){Mt.moveTo(kr,Jr),Mt.bezierCurveTo(kr=(kr+vi)/2,Jr,kr,hn,vi,hn)}function Ae(Mt,kr,Jr,vi,hn){Mt.moveTo(kr,Jr),Mt.bezierCurveTo(kr,Jr=(Jr+hn)/2,vi,Jr,vi,hn)}function Fe(Mt,kr,Jr,vi,hn){var An=Ee(kr,Jr),Mn=Ee(kr,Jr=(Jr+hn)/2),Li=Ee(vi,Jr),_n=Ee(vi,hn);Mt.moveTo(An[0],An[1]),Mt.bezierCurveTo(Mn[0],Mn[1],Li[0],Li[1],_n[0],_n[1])}function Pe(){return Se(Le)}function ge(){return Se(Ae)}function Re(){var Mt=Se(Fe);return Mt.angle=Mt.x,delete Mt.x,Mt.radius=Mt.y,delete Mt.y,Mt}var ce={draw:function(Mt,kr){var Jr=Math.sqrt(kr/f);Mt.moveTo(Jr,0),Mt.arc(0,0,Jr,0,d)}},Ze={draw:function(Mt,kr){var Jr=Math.sqrt(kr/5)/2;Mt.moveTo(-3*Jr,-Jr),Mt.lineTo(-Jr,-Jr),Mt.lineTo(-Jr,-3*Jr),Mt.lineTo(Jr,-3*Jr),Mt.lineTo(Jr,-Jr),Mt.lineTo(3*Jr,-Jr),Mt.lineTo(3*Jr,Jr),Mt.lineTo(Jr,Jr),Mt.lineTo(Jr,3*Jr),Mt.lineTo(-Jr,3*Jr),Mt.lineTo(-Jr,Jr),Mt.lineTo(-3*Jr,Jr),Mt.closePath()}},ut=Math.sqrt(1/3),pt=ut*2,Zt={draw:function(Mt,kr){var Jr=Math.sqrt(kr/pt),vi=Jr*ut;Mt.moveTo(0,-Jr),Mt.lineTo(vi,0),Mt.lineTo(0,Jr),Mt.lineTo(-vi,0),Mt.closePath()}},st=.8908130915292852,lt=Math.sin(f/10)/Math.sin(7*f/10),Gt=Math.sin(d/10)*lt,Nt=-Math.cos(d/10)*lt,Jt={draw:function(Mt,kr){var Jr=Math.sqrt(kr*st),vi=Gt*Jr,hn=Nt*Jr;Mt.moveTo(0,-Jr),Mt.lineTo(vi,hn);for(var An=1;An<5;++An){var Mn=d*An/5,Li=Math.cos(Mn),_n=Math.sin(Mn);Mt.lineTo(_n*Jr,-Li*Jr),Mt.lineTo(Li*vi-_n*hn,_n*vi+Li*hn)}Mt.closePath()}},sr={draw:function(Mt,kr){var Jr=Math.sqrt(kr),vi=-Jr/2;Mt.rect(vi,vi,Jr,Jr)}},wr=Math.sqrt(3),cr={draw:function(Mt,kr){var Jr=-Math.sqrt(kr/(wr*3));Mt.moveTo(0,Jr*2),Mt.lineTo(-wr*Jr,-Jr),Mt.lineTo(wr*Jr,-Jr),Mt.closePath()}},$e=-.5,St=Math.sqrt(3)/2,Qt=1/Math.sqrt(12),Vt=(Qt/2+1)*3,_t={draw:function(Mt,kr){var Jr=Math.sqrt(kr/Vt),vi=Jr/2,hn=Jr*Qt,An=vi,Mn=Jr*Qt+Jr,Li=-An,_n=Mn;Mt.moveTo(vi,hn),Mt.lineTo(An,Mn),Mt.lineTo(Li,_n),Mt.lineTo($e*vi-St*hn,St*vi+$e*hn),Mt.lineTo($e*An-St*Mn,St*An+$e*Mn),Mt.lineTo($e*Li-St*_n,St*Li+$e*_n),Mt.lineTo($e*vi+St*hn,$e*hn-St*vi),Mt.lineTo($e*An+St*Mn,$e*Mn-St*An),Mt.lineTo($e*Li+St*_n,$e*_n-St*Li),Mt.closePath()}},It=[ce,Ze,Zt,sr,Jt,cr,_t];function mt(){var Mt=r(ce),kr=r(64),Jr=null;function vi(){var hn;if(Jr||(Jr=hn=t.path()),Mt.apply(this,arguments).draw(Jr,+kr.apply(this,arguments)),hn)return Jr=null,hn+""||null}return vi.type=function(hn){return arguments.length?(Mt=typeof hn=="function"?hn:r(hn),vi):Mt},vi.size=function(hn){return arguments.length?(kr=typeof hn=="function"?hn:r(+hn),vi):kr},vi.context=function(hn){return arguments.length?(Jr=hn==null?null:hn,vi):Jr},vi}function er(){}function lr(Mt,kr,Jr){Mt._context.bezierCurveTo((2*Mt._x0+Mt._x1)/3,(2*Mt._y0+Mt._y1)/3,(Mt._x0+2*Mt._x1)/3,(Mt._y0+2*Mt._y1)/3,(Mt._x0+4*Mt._x1+kr)/6,(Mt._y0+4*Mt._y1+Jr)/6)}function Tr(Mt){this._context=Mt}Tr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:lr(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:lr(this,Mt,kr);break}this._x0=this._x1,this._x1=Mt,this._y0=this._y1,this._y1=kr}};function Lr(Mt){return new Tr(Mt)}function ti(Mt){this._context=Mt}ti.prototype={areaStart:er,areaEnd:er,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._x2=Mt,this._y2=kr;break;case 1:this._point=2,this._x3=Mt,this._y3=kr;break;case 2:this._point=3,this._x4=Mt,this._y4=kr,this._context.moveTo((this._x0+4*this._x1+Mt)/6,(this._y0+4*this._y1+kr)/6);break;default:lr(this,Mt,kr);break}this._x0=this._x1,this._x1=Mt,this._y0=this._y1,this._y1=kr}};function Br(Mt){return new ti(Mt)}function Vr(Mt){this._context=Mt}Vr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var Jr=(this._x0+4*this._x1+Mt)/6,vi=(this._y0+4*this._y1+kr)/6;this._line?this._context.lineTo(Jr,vi):this._context.moveTo(Jr,vi);break;case 3:this._point=4;default:lr(this,Mt,kr);break}this._x0=this._x1,this._x1=Mt,this._y0=this._y1,this._y1=kr}};function dt(Mt){return new Vr(Mt)}function Ge(Mt,kr){this._basis=new Tr(Mt),this._beta=kr}Ge.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var Mt=this._x,kr=this._y,Jr=Mt.length-1;if(Jr>0)for(var vi=Mt[0],hn=kr[0],An=Mt[Jr]-vi,Mn=kr[Jr]-hn,Li=-1,_n;++Li<=Jr;)_n=Li/Jr,this._basis.point(this._beta*Mt[Li]+(1-this._beta)*(vi+_n*An),this._beta*kr[Li]+(1-this._beta)*(hn+_n*Mn));this._x=this._y=null,this._basis.lineEnd()},point:function(Mt,kr){this._x.push(+Mt),this._y.push(+kr)}};var Je=function Mt(kr){function Jr(vi){return kr===1?new Tr(vi):new Ge(vi,kr)}return Jr.beta=function(vi){return Mt(+vi)},Jr}(.85);function je(Mt,kr,Jr){Mt._context.bezierCurveTo(Mt._x1+Mt._k*(Mt._x2-Mt._x0),Mt._y1+Mt._k*(Mt._y2-Mt._y0),Mt._x2+Mt._k*(Mt._x1-kr),Mt._y2+Mt._k*(Mt._y1-Jr),Mt._x2,Mt._y2)}function tt(Mt,kr){this._context=Mt,this._k=(1-kr)/6}tt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:je(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2,this._x1=Mt,this._y1=kr;break;case 2:this._point=3;default:je(this,Mt,kr);break}this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var xt=function Mt(kr){function Jr(vi){return new tt(vi,kr)}return Jr.tension=function(vi){return Mt(+vi)},Jr}(0);function Ie(Mt,kr){this._context=Mt,this._k=(1-kr)/6}Ie.prototype={areaStart:er,areaEnd:er,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._x3=Mt,this._y3=kr;break;case 1:this._point=2,this._context.moveTo(this._x4=Mt,this._y4=kr);break;case 2:this._point=3,this._x5=Mt,this._y5=kr;break;default:je(this,Mt,kr);break}this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var xe=function Mt(kr){function Jr(vi){return new Ie(vi,kr)}return Jr.tension=function(vi){return Mt(+vi)},Jr}(0);function ke(Mt,kr){this._context=Mt,this._k=(1-kr)/6}ke.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:je(this,Mt,kr);break}this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var vt=function Mt(kr){function Jr(vi){return new ke(vi,kr)}return Jr.tension=function(vi){return Mt(+vi)},Jr}(0);function ir(Mt,kr,Jr){var vi=Mt._x1,hn=Mt._y1,An=Mt._x2,Mn=Mt._y2;if(Mt._l01_a>c){var Li=2*Mt._l01_2a+3*Mt._l01_a*Mt._l12_a+Mt._l12_2a,_n=3*Mt._l01_a*(Mt._l01_a+Mt._l12_a);vi=(vi*Li-Mt._x0*Mt._l12_2a+Mt._x2*Mt._l01_2a)/_n,hn=(hn*Li-Mt._y0*Mt._l12_2a+Mt._y2*Mt._l01_2a)/_n}if(Mt._l23_a>c){var ya=2*Mt._l23_2a+3*Mt._l23_a*Mt._l12_a+Mt._l12_2a,Jn=3*Mt._l23_a*(Mt._l23_a+Mt._l12_a);An=(An*ya+Mt._x1*Mt._l23_2a-kr*Mt._l12_2a)/Jn,Mn=(Mn*ya+Mt._y1*Mt._l23_2a-Jr*Mt._l12_2a)/Jn}Mt._context.bezierCurveTo(vi,hn,An,Mn,Mt._x2,Mt._y2)}function ar(Mt,kr){this._context=Mt,this._alpha=kr}ar.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){if(Mt=+Mt,kr=+kr,this._point){var Jr=this._x2-Mt,vi=this._y2-kr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Jr*Jr+vi*vi,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2;break;case 2:this._point=3;default:ir(this,Mt,kr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var vr=function Mt(kr){function Jr(vi){return kr?new ar(vi,kr):new tt(vi,0)}return Jr.alpha=function(vi){return Mt(+vi)},Jr}(.5);function ii(Mt,kr){this._context=Mt,this._alpha=kr}ii.prototype={areaStart:er,areaEnd:er,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(Mt,kr){if(Mt=+Mt,kr=+kr,this._point){var Jr=this._x2-Mt,vi=this._y2-kr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Jr*Jr+vi*vi,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=Mt,this._y3=kr;break;case 1:this._point=2,this._context.moveTo(this._x4=Mt,this._y4=kr);break;case 2:this._point=3,this._x5=Mt,this._y5=kr;break;default:ir(this,Mt,kr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var pi=function Mt(kr){function Jr(vi){return kr?new ii(vi,kr):new Ie(vi,0)}return Jr.alpha=function(vi){return Mt(+vi)},Jr}(.5);function $r(Mt,kr){this._context=Mt,this._alpha=kr}$r.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){if(Mt=+Mt,kr=+kr,this._point){var Jr=this._x2-Mt,vi=this._y2-kr;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Jr*Jr+vi*vi,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:ir(this,Mt,kr);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=Mt,this._y0=this._y1,this._y1=this._y2,this._y2=kr}};var di=function Mt(kr){function Jr(vi){return kr?new $r(vi,kr):new ke(vi,0)}return Jr.alpha=function(vi){return Mt(+vi)},Jr}(.5);function ji(Mt){this._context=Mt}ji.prototype={areaStart:er,areaEnd:er,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(Mt,kr){Mt=+Mt,kr=+kr,this._point?this._context.lineTo(Mt,kr):(this._point=1,this._context.moveTo(Mt,kr))}};function In(Mt){return new ji(Mt)}function wi(Mt){return Mt<0?-1:1}function On(Mt,kr,Jr){var vi=Mt._x1-Mt._x0,hn=kr-Mt._x1,An=(Mt._y1-Mt._y0)/(vi||hn<0&&-0),Mn=(Jr-Mt._y1)/(hn||vi<0&&-0),Li=(An*hn+Mn*vi)/(vi+hn);return(wi(An)+wi(Mn))*Math.min(Math.abs(An),Math.abs(Mn),.5*Math.abs(Li))||0}function qn(Mt,kr){var Jr=Mt._x1-Mt._x0;return Jr?(3*(Mt._y1-Mt._y0)/Jr-kr)/2:kr}function Fn(Mt,kr,Jr){var vi=Mt._x0,hn=Mt._y0,An=Mt._x1,Mn=Mt._y1,Li=(An-vi)/3;Mt._context.bezierCurveTo(vi+Li,hn+Li*kr,An-Li,Mn-Li*Jr,An,Mn)}function ra(Mt){this._context=Mt}ra.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Fn(this,this._t0,qn(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(Mt,kr){var Jr=NaN;if(Mt=+Mt,kr=+kr,!(Mt===this._x1&&kr===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2;break;case 2:this._point=3,Fn(this,qn(this,Jr=On(this,Mt,kr)),Jr);break;default:Fn(this,this._t0,Jr=On(this,Mt,kr));break}this._x0=this._x1,this._x1=Mt,this._y0=this._y1,this._y1=kr,this._t0=Jr}}};function la(Mt){this._context=new Ut(Mt)}(la.prototype=Object.create(ra.prototype)).point=function(Mt,kr){ra.prototype.point.call(this,kr,Mt)};function Ut(Mt){this._context=Mt}Ut.prototype={moveTo:function(Mt,kr){this._context.moveTo(kr,Mt)},closePath:function(){this._context.closePath()},lineTo:function(Mt,kr){this._context.lineTo(kr,Mt)},bezierCurveTo:function(Mt,kr,Jr,vi,hn,An){this._context.bezierCurveTo(kr,Mt,vi,Jr,An,hn)}};function wt(Mt){return new ra(Mt)}function rr(Mt){return new la(Mt)}function nr(Mt){this._context=Mt}nr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var Mt=this._x,kr=this._y,Jr=Mt.length;if(Jr)if(this._line?this._context.lineTo(Mt[0],kr[0]):this._context.moveTo(Mt[0],kr[0]),Jr===2)this._context.lineTo(Mt[1],kr[1]);else for(var vi=Er(Mt),hn=Er(kr),An=0,Mn=1;Mn=0;--kr)hn[kr]=(Mn[kr]-hn[kr+1])/An[kr];for(An[Jr-1]=(Mt[Jr]+hn[Jr-1])/2,kr=0;kr=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(Mt,kr){switch(Mt=+Mt,kr=+kr,this._point){case 0:this._point=1,this._line?this._context.lineTo(Mt,kr):this._context.moveTo(Mt,kr);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,kr),this._context.lineTo(Mt,kr);else{var Jr=this._x*(1-this._t)+Mt*this._t;this._context.lineTo(Jr,this._y),this._context.lineTo(Jr,kr)}break}}this._x=Mt,this._y=kr}};function Qr(Mt){return new ri(Mt,.5)}function Oi(Mt){return new ri(Mt,0)}function $i(Mt){return new ri(Mt,1)}function tn(Mt,kr){if((Mn=Mt.length)>1)for(var Jr=1,vi,hn,An=Mt[kr[0]],Mn,Li=An.length;Jr=0;)Jr[kr]=kr;return Jr}function yn(Mt,kr){return Mt[kr]}function Sn(){var Mt=r([]),kr=fn,Jr=tn,vi=yn;function hn(An){var Mn=Mt.apply(this,arguments),Li,_n=An.length,ya=Mn.length,Jn=new Array(ya),Ma;for(Li=0;Li0){for(var Jr,vi,hn=0,An=Mt[0].length,Mn;hn0)for(var Jr,vi=0,hn,An,Mn,Li,_n,ya=Mt[kr[0]].length;vi0?(hn[0]=Mn,hn[1]=Mn+=An):An<0?(hn[1]=Li,hn[0]=Li+=An):(hn[0]=0,hn[1]=An)}function ma(Mt,kr){if((hn=Mt.length)>0){for(var Jr=0,vi=Mt[kr[0]],hn,An=vi.length;Jr0)||!((An=(hn=Mt[kr[0]]).length)>0))){for(var Jr=0,vi=1,hn,An,Mn;viAn&&(An=hn,Jr=kr);return Jr}function da(Mt){var kr=Mt.map(Wn);return fn(Mt).sort(function(Jr,vi){return kr[Jr]-kr[vi]})}function Wn(Mt){for(var kr=0,Jr=-1,vi=Mt.length,hn;++Jr{(function(e,t){typeof S7=="object"&&typeof UWe!="undefined"?t(S7,nk(),_7(),jJ()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3)})(S7,function(e,t,r,n){"use strict";function i(g){return g.target.depth}function a(g){return g.depth}function o(g,P){return P-1-g.height}function s(g,P){return g.sourceLinks.length?g.depth:P-1}function l(g){return g.targetLinks.length?g.depth:g.sourceLinks.length?t.min(g.sourceLinks,i)-1:0}function u(g){return function(){return g}}function c(g,P){return h(g.source,P.source)||g.index-P.index}function f(g,P){return h(g.target,P.target)||g.index-P.index}function h(g,P){return g.y0-P.y0}function d(g){return g.value}function v(g){return(g.y0+g.y1)/2}function _(g){return v(g.source)*g.value}function b(g){return v(g.target)*g.value}function p(g){return g.index}function k(g){return g.nodes}function E(g){return g.links}function S(g,P){var T=g.get(P);if(!T)throw new Error("missing: "+P);return T}var L=function(){var g=0,P=0,T=1,z=1,O=24,V=8,G=p,Z=s,j=k,N=E,H=32,te=2/3;function oe(){var Se={nodes:j.apply(null,arguments),links:N.apply(null,arguments)};return _e(Se),Ee(Se),Ce(Se),me(Se,H),ie(Se),Se}oe.update=function(Se){return ie(Se),Se},oe.nodeId=function(Se){return arguments.length?(G=typeof Se=="function"?Se:u(Se),oe):G},oe.nodeAlign=function(Se){return arguments.length?(Z=typeof Se=="function"?Se:u(Se),oe):Z},oe.nodeWidth=function(Se){return arguments.length?(O=+Se,oe):O},oe.nodePadding=function(Se){return arguments.length?(V=+Se,oe):V},oe.nodes=function(Se){return arguments.length?(j=typeof Se=="function"?Se:u(Se),oe):j},oe.links=function(Se){return arguments.length?(N=typeof Se=="function"?Se:u(Se),oe):N},oe.size=function(Se){return arguments.length?(g=P=0,T=+Se[0],z=+Se[1],oe):[T-g,z-P]},oe.extent=function(Se){return arguments.length?(g=+Se[0][0],T=+Se[1][0],P=+Se[0][1],z=+Se[1][1],oe):[[g,P],[T,z]]},oe.iterations=function(Se){return arguments.length?(H=+Se,oe):H};function _e(Se){Se.nodes.forEach(function(Ae,Fe){Ae.index=Fe,Ae.sourceLinks=[],Ae.targetLinks=[]});var Le=r.map(Se.nodes,G);Se.links.forEach(function(Ae,Fe){Ae.index=Fe;var Pe=Ae.source,ge=Ae.target;typeof Pe!="object"&&(Pe=Ae.source=S(Le,Pe)),typeof ge!="object"&&(ge=Ae.target=S(Le,ge)),Pe.sourceLinks.push(Ae),ge.targetLinks.push(Ae)})}function Ee(Se){Se.nodes.forEach(function(Le){Le.value=Math.max(t.sum(Le.sourceLinks,d),t.sum(Le.targetLinks,d))})}function Ce(Se){var Le,Ae,Fe;for(Le=Se.nodes,Ae=[],Fe=0;Le.length;++Fe,Le=Ae,Ae=[])Le.forEach(function(ge){ge.depth=Fe,ge.sourceLinks.forEach(function(Re){Ae.indexOf(Re.target)<0&&Ae.push(Re.target)})});for(Le=Se.nodes,Ae=[],Fe=0;Le.length;++Fe,Le=Ae,Ae=[])Le.forEach(function(ge){ge.height=Fe,ge.targetLinks.forEach(function(Re){Ae.indexOf(Re.source)<0&&Ae.push(Re.source)})});var Pe=(T-g-O)/(Fe-1);Se.nodes.forEach(function(ge){ge.x1=(ge.x0=g+Math.max(0,Math.min(Fe-1,Math.floor(Z.call(null,ge,Fe))))*Pe)+O})}function me(Se){var Le=r.nest().key(function(Ze){return Ze.x0}).sortKeys(t.ascending).entries(Se.nodes).map(function(Ze){return Ze.values});Pe(),ce();for(var Ae=1,Fe=H;Fe>0;--Fe)Re(Ae*=.99),ce(),ge(Ae),ce();function Pe(){var Ze=t.max(Le,function(Zt){return Zt.length}),ut=te*(z-P)/(Ze-1);V>ut&&(V=ut);var pt=t.min(Le,function(Zt){return(z-P-(Zt.length-1)*V)/t.sum(Zt,d)});Le.forEach(function(Zt){Zt.forEach(function(st,lt){st.y1=(st.y0=lt)+st.value*pt})}),Se.links.forEach(function(Zt){Zt.width=Zt.value*pt})}function ge(Ze){Le.forEach(function(ut){ut.forEach(function(pt){if(pt.targetLinks.length){var Zt=(t.sum(pt.targetLinks,_)/t.sum(pt.targetLinks,d)-v(pt))*Ze;pt.y0+=Zt,pt.y1+=Zt}})})}function Re(Ze){Le.slice().reverse().forEach(function(ut){ut.forEach(function(pt){if(pt.sourceLinks.length){var Zt=(t.sum(pt.sourceLinks,b)/t.sum(pt.sourceLinks,d)-v(pt))*Ze;pt.y0+=Zt,pt.y1+=Zt}})})}function ce(){Le.forEach(function(Ze){var ut,pt,Zt=P,st=Ze.length,lt;for(Ze.sort(h),lt=0;lt0&&(ut.y0+=pt,ut.y1+=pt),Zt=ut.y1+V;if(pt=Zt-V-z,pt>0)for(Zt=ut.y0-=pt,ut.y1-=pt,lt=st-2;lt>=0;--lt)ut=Ze[lt],pt=ut.y1+V-Zt,pt>0&&(ut.y0-=pt,ut.y1-=pt),Zt=ut.y0})}}function ie(Se){Se.nodes.forEach(function(Le){Le.sourceLinks.sort(f),Le.targetLinks.sort(c)}),Se.nodes.forEach(function(Le){var Ae=Le.y0,Fe=Ae;Le.sourceLinks.forEach(function(Pe){Pe.y0=Ae+Pe.width/2,Ae+=Pe.width}),Le.targetLinks.forEach(function(Pe){Pe.y1=Fe+Pe.width/2,Fe+=Pe.width})})}return oe};function x(g){return[g.source.x1,g.y0]}function C(g){return[g.target.x0,g.y1]}var M=function(){return n.linkHorizontal().source(x).target(C)};e.sankey=L,e.sankeyCenter=l,e.sankeyLeft=a,e.sankeyRight=o,e.sankeyJustify=s,e.sankeyLinkHorizontal=M,Object.defineProperty(e,"__esModule",{value:!0})})});var HWe=ye((Qbr,GWe)=>{var FZt=HJ();GWe.exports=function(t,r){var n=[],i=[],a=[],o={},s=[],l;function u(E){a[E]=!1,o.hasOwnProperty(E)&&Object.keys(o[E]).forEach(function(S){delete o[E][S],a[S]&&u(S)})}function c(E){var S=!1;i.push(E),a[E]=!0;var L,x;for(L=0;L=E})}function d(E){h(E);for(var S=t,L=FZt(S),x=L.components.filter(function(O){return O.length>1}),C=1/0,M,g=0;g{(function(e,t){typeof M7=="object"&&typeof jWe!="undefined"?t(M7,nk(),_7(),jJ(),HWe()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,null)})(M7,function(e,t,r,n,i){"use strict";i=i&&i.hasOwnProperty("default")?i.default:i;function a(st){return st.target.depth}function o(st){return st.depth}function s(st,lt){return lt-1-st.height}function l(st,lt){return st.sourceLinks.length?st.depth:lt-1}function u(st){return st.targetLinks.length?st.depth:st.sourceLinks.length?t.min(st.sourceLinks,a)-1:0}function c(st){return function(){return st}}var f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(st){return typeof st}:function(st){return st&&typeof Symbol=="function"&&st.constructor===Symbol&&st!==Symbol.prototype?"symbol":typeof st};function h(st,lt){return v(st.source,lt.source)||st.index-lt.index}function d(st,lt){return v(st.target,lt.target)||st.index-lt.index}function v(st,lt){return st.partOfCycle===lt.partOfCycle?st.y0-lt.y0:st.circularLinkType==="top"||lt.circularLinkType==="bottom"?-1:1}function _(st){return st.value}function b(st){return(st.y0+st.y1)/2}function p(st){return b(st.source)}function k(st){return b(st.target)}function E(st){return st.index}function S(st){return st.nodes}function L(st){return st.links}function x(st,lt){var Gt=st.get(lt);if(!Gt)throw new Error("missing: "+lt);return Gt}function C(st,lt){return lt(st)}var M=25,g=10,P=.3;function T(){var st=0,lt=0,Gt=1,Nt=1,Jt=24,sr,wr=E,cr=l,$e=S,St=L,Qt=32,Vt=2,_t,It=null;function mt(){var dt={nodes:$e.apply(null,arguments),links:St.apply(null,arguments)};er(dt),z(dt,wr,It),lr(dt),ti(dt),O(dt,wr),Br(dt,Qt,wr),Vr(dt);for(var Ge=4,Je=0;Je0?Ge+M+g:Ge,Je=Je>0?Je+M+g:Je,je=je>0?je+M+g:je,tt=tt>0?tt+M+g:tt,{top:Ge,bottom:Je,left:tt,right:je}}function Lr(dt,Ge){var Je=t.max(dt.nodes,function(vt){return vt.column}),je=Gt-st,tt=Nt-lt,xt=je+Ge.right+Ge.left,Ie=tt+Ge.top+Ge.bottom,xe=je/xt,ke=tt/Ie;return st=st*xe+Ge.left,Gt=Ge.right==0?Gt:Gt*xe,lt=lt*ke+Ge.top,Nt=Nt*ke,dt.nodes.forEach(function(vt){vt.x0=st+vt.column*((Gt-st-Jt)/Je),vt.x1=vt.x0+Jt}),ke}function ti(dt){var Ge,Je,je;for(Ge=dt.nodes,Je=[],je=0;Ge.length;++je,Ge=Je,Je=[])Ge.forEach(function(tt){tt.depth=je,tt.sourceLinks.forEach(function(xt){Je.indexOf(xt.target)<0&&!xt.circular&&Je.push(xt.target)})});for(Ge=dt.nodes,Je=[],je=0;Ge.length;++je,Ge=Je,Je=[])Ge.forEach(function(tt){tt.height=je,tt.targetLinks.forEach(function(xt){Je.indexOf(xt.source)<0&&!xt.circular&&Je.push(xt.source)})});dt.nodes.forEach(function(tt){tt.column=Math.floor(cr.call(null,tt,je))})}function Br(dt,Ge,Je){var je=r.nest().key(function(vt){return vt.column}).sortKeys(t.ascending).entries(dt.nodes).map(function(vt){return vt.values});Ie(Je),ke();for(var tt=1,xt=Ge;xt>0;--xt)xe(tt*=.99,Je),ke();function Ie(vt){if(_t){var ir=1/0;je.forEach(function(pi){var $r=Nt*_t/(pi.length+1);ir=$r0))if(pi==0&&ii==1)di=$r.y1-$r.y0,$r.y0=Nt/2-di/2,$r.y1=Nt/2+di/2;else if(pi==ar-1&&ii==1)di=$r.y1-$r.y0,$r.y0=Nt/2-di/2,$r.y1=Nt/2+di/2;else{var ji=0,In=t.mean($r.sourceLinks,k),wi=t.mean($r.targetLinks,p);In&&wi?ji=(In+wi)/2:ji=In||wi;var On=(ji-b($r))*vt;$r.y0+=On,$r.y1+=On}})})}function ke(){je.forEach(function(vt){var ir,ar,vr=lt,ii=vt.length,pi;for(vt.sort(v),pi=0;pi0&&(ir.y0+=ar,ir.y1+=ar),vr=ir.y1+sr;if(ar=vr-sr-Nt,ar>0)for(vr=ir.y0-=ar,ir.y1-=ar,pi=ii-2;pi>=0;--pi)ir=vt[pi],ar=ir.y1+sr-vr,ar>0&&(ir.y0-=ar,ir.y1-=ar),vr=ir.y0})}}function Vr(dt){dt.nodes.forEach(function(Ge){Ge.sourceLinks.sort(d),Ge.targetLinks.sort(h)}),dt.nodes.forEach(function(Ge){var Je=Ge.y0,je=Je,tt=Ge.y1,xt=tt;Ge.sourceLinks.forEach(function(Ie){Ie.circular?(Ie.y0=tt-Ie.width/2,tt=tt-Ie.width):(Ie.y0=Je+Ie.width/2,Je+=Ie.width)}),Ge.targetLinks.forEach(function(Ie){Ie.circular?(Ie.y1=xt-Ie.width/2,xt=xt-Ie.width):(Ie.y1=je+Ie.width/2,je+=Ie.width)})})}return mt}function z(st,lt,Gt){var Nt=0;if(Gt===null){for(var Jt=[],sr=0;srlt.source.column)}function Z(st,lt){var Gt=0;st.sourceLinks.forEach(function(Jt){Gt=Jt.circular&&!pt(Jt,lt)?Gt+1:Gt});var Nt=0;return st.targetLinks.forEach(function(Jt){Nt=Jt.circular&&!pt(Jt,lt)?Nt+1:Nt}),Gt+Nt}function j(st){var lt=st.source.sourceLinks,Gt=0;lt.forEach(function(sr){Gt=sr.circular?Gt+1:Gt});var Nt=st.target.targetLinks,Jt=0;return Nt.forEach(function(sr){Jt=sr.circular?Jt+1:Jt}),!(Gt>1||Jt>1)}function N(st,lt,Gt){return st.sort(oe),st.forEach(function(Nt,Jt){var sr=0;if(pt(Nt,Gt)&&j(Nt))Nt.circularPathData.verticalBuffer=sr+Nt.width/2;else{var wr=0;for(wr;wrsr?cr:sr}Nt.circularPathData.verticalBuffer=sr+Nt.width/2}}),st}function H(st,lt,Gt,Nt){var Jt=5,sr=t.min(st.links,function($e){return $e.source.y0});st.links.forEach(function($e){$e.circular&&($e.circularPathData={})});var wr=st.links.filter(function($e){return $e.circularLinkType=="top"});N(wr,lt,Nt);var cr=st.links.filter(function($e){return $e.circularLinkType=="bottom"});N(cr,lt,Nt),st.links.forEach(function($e){if($e.circular){if($e.circularPathData.arcRadius=$e.width+g,$e.circularPathData.leftNodeBuffer=Jt,$e.circularPathData.rightNodeBuffer=Jt,$e.circularPathData.sourceWidth=$e.source.x1-$e.source.x0,$e.circularPathData.sourceX=$e.source.x0+$e.circularPathData.sourceWidth,$e.circularPathData.targetX=$e.target.x0,$e.circularPathData.sourceY=$e.y0,$e.circularPathData.targetY=$e.y1,pt($e,Nt)&&j($e))$e.circularPathData.leftSmallArcRadius=g+$e.width/2,$e.circularPathData.leftLargeArcRadius=g+$e.width/2,$e.circularPathData.rightSmallArcRadius=g+$e.width/2,$e.circularPathData.rightLargeArcRadius=g+$e.width/2,$e.circularLinkType=="bottom"?($e.circularPathData.verticalFullExtent=$e.source.y1+M+$e.circularPathData.verticalBuffer,$e.circularPathData.verticalLeftInnerExtent=$e.circularPathData.verticalFullExtent-$e.circularPathData.leftLargeArcRadius,$e.circularPathData.verticalRightInnerExtent=$e.circularPathData.verticalFullExtent-$e.circularPathData.rightLargeArcRadius):($e.circularPathData.verticalFullExtent=$e.source.y0-M-$e.circularPathData.verticalBuffer,$e.circularPathData.verticalLeftInnerExtent=$e.circularPathData.verticalFullExtent+$e.circularPathData.leftLargeArcRadius,$e.circularPathData.verticalRightInnerExtent=$e.circularPathData.verticalFullExtent+$e.circularPathData.rightLargeArcRadius);else{var St=$e.source.column,Qt=$e.circularLinkType,Vt=st.links.filter(function(mt){return mt.source.column==St&&mt.circularLinkType==Qt});$e.circularLinkType=="bottom"?Vt.sort(Ee):Vt.sort(_e);var _t=0;Vt.forEach(function(mt,er){mt.circularLinkID==$e.circularLinkID&&($e.circularPathData.leftSmallArcRadius=g+$e.width/2+_t,$e.circularPathData.leftLargeArcRadius=g+$e.width/2+er*lt+_t),_t=_t+mt.width}),St=$e.target.column,Vt=st.links.filter(function(mt){return mt.target.column==St&&mt.circularLinkType==Qt}),$e.circularLinkType=="bottom"?Vt.sort(me):Vt.sort(Ce),_t=0,Vt.forEach(function(mt,er){mt.circularLinkID==$e.circularLinkID&&($e.circularPathData.rightSmallArcRadius=g+$e.width/2+_t,$e.circularPathData.rightLargeArcRadius=g+$e.width/2+er*lt+_t),_t=_t+mt.width}),$e.circularLinkType=="bottom"?($e.circularPathData.verticalFullExtent=Math.max(Gt,$e.source.y1,$e.target.y1)+M+$e.circularPathData.verticalBuffer,$e.circularPathData.verticalLeftInnerExtent=$e.circularPathData.verticalFullExtent-$e.circularPathData.leftLargeArcRadius,$e.circularPathData.verticalRightInnerExtent=$e.circularPathData.verticalFullExtent-$e.circularPathData.rightLargeArcRadius):($e.circularPathData.verticalFullExtent=sr-M-$e.circularPathData.verticalBuffer,$e.circularPathData.verticalLeftInnerExtent=$e.circularPathData.verticalFullExtent+$e.circularPathData.leftLargeArcRadius,$e.circularPathData.verticalRightInnerExtent=$e.circularPathData.verticalFullExtent+$e.circularPathData.rightLargeArcRadius)}$e.circularPathData.leftInnerExtent=$e.circularPathData.sourceX+$e.circularPathData.leftNodeBuffer,$e.circularPathData.rightInnerExtent=$e.circularPathData.targetX-$e.circularPathData.rightNodeBuffer,$e.circularPathData.leftFullExtent=$e.circularPathData.sourceX+$e.circularPathData.leftLargeArcRadius+$e.circularPathData.leftNodeBuffer,$e.circularPathData.rightFullExtent=$e.circularPathData.targetX-$e.circularPathData.rightLargeArcRadius-$e.circularPathData.rightNodeBuffer}if($e.circular)$e.path=te($e);else{var It=n.linkHorizontal().source(function(mt){var er=mt.source.x0+(mt.source.x1-mt.source.x0),lr=mt.y0;return[er,lr]}).target(function(mt){var er=mt.target.x0,lr=mt.y1;return[er,lr]});$e.path=It($e)}})}function te(st){var lt="";return st.circularLinkType=="top"?lt="M"+st.circularPathData.sourceX+" "+st.circularPathData.sourceY+" L"+st.circularPathData.leftInnerExtent+" "+st.circularPathData.sourceY+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftSmallArcRadius+" 0 0 0 "+st.circularPathData.leftFullExtent+" "+(st.circularPathData.sourceY-st.circularPathData.leftSmallArcRadius)+" L"+st.circularPathData.leftFullExtent+" "+st.circularPathData.verticalLeftInnerExtent+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftLargeArcRadius+" 0 0 0 "+st.circularPathData.leftInnerExtent+" "+st.circularPathData.verticalFullExtent+" L"+st.circularPathData.rightInnerExtent+" "+st.circularPathData.verticalFullExtent+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightLargeArcRadius+" 0 0 0 "+st.circularPathData.rightFullExtent+" "+st.circularPathData.verticalRightInnerExtent+" L"+st.circularPathData.rightFullExtent+" "+(st.circularPathData.targetY-st.circularPathData.rightSmallArcRadius)+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightSmallArcRadius+" 0 0 0 "+st.circularPathData.rightInnerExtent+" "+st.circularPathData.targetY+" L"+st.circularPathData.targetX+" "+st.circularPathData.targetY:lt="M"+st.circularPathData.sourceX+" "+st.circularPathData.sourceY+" L"+st.circularPathData.leftInnerExtent+" "+st.circularPathData.sourceY+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftSmallArcRadius+" 0 0 1 "+st.circularPathData.leftFullExtent+" "+(st.circularPathData.sourceY+st.circularPathData.leftSmallArcRadius)+" L"+st.circularPathData.leftFullExtent+" "+st.circularPathData.verticalLeftInnerExtent+" A"+st.circularPathData.leftLargeArcRadius+" "+st.circularPathData.leftLargeArcRadius+" 0 0 1 "+st.circularPathData.leftInnerExtent+" "+st.circularPathData.verticalFullExtent+" L"+st.circularPathData.rightInnerExtent+" "+st.circularPathData.verticalFullExtent+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightLargeArcRadius+" 0 0 1 "+st.circularPathData.rightFullExtent+" "+st.circularPathData.verticalRightInnerExtent+" L"+st.circularPathData.rightFullExtent+" "+(st.circularPathData.targetY+st.circularPathData.rightSmallArcRadius)+" A"+st.circularPathData.rightLargeArcRadius+" "+st.circularPathData.rightSmallArcRadius+" 0 0 1 "+st.circularPathData.rightInnerExtent+" "+st.circularPathData.targetY+" L"+st.circularPathData.targetX+" "+st.circularPathData.targetY,lt}function oe(st,lt){return ie(st)==ie(lt)?st.circularLinkType=="bottom"?Ee(st,lt):_e(st,lt):ie(lt)-ie(st)}function _e(st,lt){return st.y0-lt.y0}function Ee(st,lt){return lt.y0-st.y0}function Ce(st,lt){return st.y1-lt.y1}function me(st,lt){return lt.y1-st.y1}function ie(st){return st.target.column-st.source.column}function Se(st){return st.target.x0-st.source.x1}function Le(st,lt){var Gt=V(st),Nt=Se(lt)/Math.tan(Gt),Jt=ut(st)=="up"?st.y1+Nt:st.y1-Nt;return Jt}function Ae(st,lt){var Gt=V(st),Nt=Se(lt)/Math.tan(Gt),Jt=ut(st)=="up"?st.y1-Nt:st.y1+Nt;return Jt}function Fe(st,lt,Gt,Nt){st.links.forEach(function(Jt){if(!Jt.circular&&Jt.target.column-Jt.source.column>1){var sr=Jt.source.column+1,wr=Jt.target.column-1,cr=1,$e=wr-sr+1;for(cr=1;sr<=wr;sr++,cr++)st.nodes.forEach(function(St){if(St.column==sr){var Qt=cr/($e+1),Vt=Math.pow(1-Qt,3),_t=3*Qt*Math.pow(1-Qt,2),It=3*Math.pow(Qt,2)*(1-Qt),mt=Math.pow(Qt,3),er=Vt*Jt.y0+_t*Jt.y0+It*Jt.y1+mt*Jt.y1,lr=er-Jt.width/2,Tr=er+Jt.width/2,Lr;lr>St.y0&&lrSt.y0&&TrSt.y1&&ge(ti,Lr,lt,Gt)})):lrSt.y1&&(Lr=Tr-St.y0+10,St=ge(St,Lr,lt,Gt),st.nodes.forEach(function(ti){C(ti,Nt)==C(St,Nt)||ti.column!=St.column||ti.y0St.y1&&ge(ti,Lr,lt,Gt)}))}})}})}function Pe(st,lt){return st.y0>lt.y0&&st.y0lt.y0&&st.y1lt.y1}function ge(st,lt,Gt,Nt){return st.y0+lt>=Gt&&st.y1+lt<=Nt&&(st.y0=st.y0+lt,st.y1=st.y1+lt,st.targetLinks.forEach(function(Jt){Jt.y1=Jt.y1+lt}),st.sourceLinks.forEach(function(Jt){Jt.y0=Jt.y0+lt})),st}function Re(st,lt,Gt,Nt){st.nodes.forEach(function(Jt){Nt&&Jt.y+(Jt.y1-Jt.y0)>lt&&(Jt.y=Jt.y-(Jt.y+(Jt.y1-Jt.y0)-lt));var sr=st.links.filter(function($e){return C($e.source,Gt)==C(Jt,Gt)}),wr=sr.length;wr>1&&sr.sort(function($e,St){if(!$e.circular&&!St.circular){if($e.target.column==St.target.column)return $e.y1-St.y1;if(Ze($e,St)){if($e.target.column>St.target.column){var Qt=Ae(St,$e);return $e.y1-Qt}if(St.target.column>$e.target.column){var Vt=Ae($e,St);return Vt-St.y1}}else return $e.y1-St.y1}if($e.circular&&!St.circular)return $e.circularLinkType=="top"?-1:1;if(St.circular&&!$e.circular)return St.circularLinkType=="top"?1:-1;if($e.circular&&St.circular)return $e.circularLinkType===St.circularLinkType&&$e.circularLinkType=="top"?$e.target.column===St.target.column?$e.target.y1-St.target.y1:St.target.column-$e.target.column:$e.circularLinkType===St.circularLinkType&&$e.circularLinkType=="bottom"?$e.target.column===St.target.column?St.target.y1-$e.target.y1:$e.target.column-St.target.column:$e.circularLinkType=="top"?-1:1});var cr=Jt.y0;sr.forEach(function($e){$e.y0=cr+$e.width/2,cr=cr+$e.width}),sr.forEach(function($e,St){if($e.circularLinkType=="bottom"){var Qt=St+1,Vt=0;for(Qt;Qt1&&Jt.sort(function(cr,$e){if(!cr.circular&&!$e.circular){if(cr.source.column==$e.source.column)return cr.y0-$e.y0;if(Ze(cr,$e)){if($e.source.column0?"up":"down"}function pt(st,lt){return C(st.source,lt)==C(st.target,lt)}function Zt(st,lt,Gt){var Nt=st.nodes,Jt=st.links,sr=!1,wr=!1;if(Jt.forEach(function(_t){_t.circularLinkType=="top"?sr=!0:_t.circularLinkType=="bottom"&&(wr=!0)}),sr==!1||wr==!1){var cr=t.min(Nt,function(_t){return _t.y0}),$e=t.max(Nt,function(_t){return _t.y1}),St=$e-cr,Qt=Gt-lt,Vt=Qt/St;Nt.forEach(function(_t){var It=(_t.y1-_t.y0)*Vt;_t.y0=(_t.y0-cr)*Vt,_t.y1=_t.y0+It}),Jt.forEach(function(_t){_t.y0=(_t.y0-cr)*Vt,_t.y1=(_t.y1-cr)*Vt,_t.width=_t.width*Vt})}}e.sankeyCircular=T,e.sankeyCenter=u,e.sankeyLeft=o,e.sankeyRight=s,e.sankeyJustify=l,Object.defineProperty(e,"__esModule",{value:!0})})});var WJ=ye((e2r,XWe)=>{"use strict";XWe.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:"linear",cn:{sankey:"sankey",sankeyLinks:"sankey-links",sankeyLink:"sankey-link",sankeyNodeSet:"sankey-node-set",sankeyNode:"sankey-node",nodeRect:"node-rect",nodeLabel:"node-label"}}});var oXe=ye((t2r,aXe)=>{"use strict";var ZWe=OWe(),zZt=(F2(),ob(D2)).interpolateNumber,R5=Oa(),Jk=VWe(),OZt=WWe(),Nu=WJ(),D5=cd(),sw=ka(),qZt=So(),p1=Dr(),YJ=p1.strTranslate,BZt=p1.strRotate,KJ=Jm(),$k=KJ.keyFun,E7=KJ.repeat,eXe=KJ.unwrap,YWe=ru(),NZt=qa(),tXe=$h(),UZt=tXe.CAP_SHIFT,VZt=tXe.LINE_SPACING,GZt=3;function HZt(e,t,r){var n=eXe(t),i=n.trace,a=i.domain,o=i.orientation==="h",s=i.node.pad,l=i.node.thickness,u={justify:Jk.sankeyJustify,left:Jk.sankeyLeft,right:Jk.sankeyRight,center:Jk.sankeyCenter}[i.node.align],c=e.width*(a.x[1]-a.x[0]),f=e.height*(a.y[1]-a.y[0]),h=n._nodes,d=n._links,v=n.circular,_;v?_=OZt.sankeyCircular().circularLinkGap(0):_=Jk.sankey(),_.iterations(Nu.sankeyIterations).size(o?[c,f]:[f,c]).nodeWidth(l).nodePadding(s).nodeId(function(V){return V.pointNumber}).nodeAlign(u).nodes(h).links(d);var b=_();_.nodePadding()=N||(j=N-Z.y0,j>1e-6&&(Z.y0+=j,Z.y1+=j)),N=Z.y1+s})}function P(V){var G=V.map(function(_e,Ee){return{x0:_e.x0,index:Ee}}).sort(function(_e,Ee){return _e.x0-Ee.x0}),Z=[],j=-1,N,H=-1/0,te;for(p=0;pH+l&&(j+=1,N=oe.x0),H=oe.x0,Z[j]||(Z[j]=[]),Z[j].push(oe),te=N-oe.x0,oe.x0+=te,oe.x1+=te}return Z}if(i.node.x.length&&i.node.y.length){for(p=0;p0?" L "+i.targetX+" "+i.targetY:"")+"Z"):(r="M "+(i.targetX-t)+" "+(i.targetY-n)+" L "+(i.rightInnerExtent-t)+" "+(i.targetY-n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightSmallArcRadius+n)+" 0 0 0 "+(i.rightFullExtent-n-t)+" "+(i.targetY+i.rightSmallArcRadius)+" L "+(i.rightFullExtent-n-t)+" "+i.verticalRightInnerExtent,a&&o?r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightInnerExtent-n-t)+" "+(i.verticalFullExtent+n)+" L "+(i.rightFullExtent+n-t-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent+n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent:a?r+=" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightFullExtent-t-n-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" L "+(i.leftFullExtent+n+(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent:r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightInnerExtent-t)+" "+(i.verticalFullExtent+n)+" L "+i.leftInnerExtent+" "+(i.verticalFullExtent+n)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent,r+=" L "+(i.leftFullExtent+n)+" "+(i.sourceY+i.leftSmallArcRadius)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftSmallArcRadius+n)+" 0 0 0 "+i.leftInnerExtent+" "+(i.sourceY-n)+" L "+i.sourceX+" "+(i.sourceY-n)+" L "+i.sourceX+" "+(i.sourceY+n)+" L "+i.leftInnerExtent+" "+(i.sourceY+n)+" A "+(i.leftLargeArcRadius-n)+" "+(i.leftSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent-n)+" "+(i.sourceY+i.leftSmallArcRadius)+" L "+(i.leftFullExtent-n)+" "+i.verticalLeftInnerExtent,a&&o?r+=" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent-n-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" L "+(i.rightFullExtent+n-t+(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent:a?r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+(i.verticalFullExtent+n)+" L "+(i.rightFullExtent-t-n)+" "+(i.verticalFullExtent+n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent:r+=" A "+(i.leftLargeArcRadius-n)+" "+(i.leftLargeArcRadius-n)+" 0 0 1 "+i.leftInnerExtent+" "+(i.verticalFullExtent-n)+" L "+(i.rightInnerExtent-t)+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightLargeArcRadius-n)+" 0 0 1 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent,r+=" L "+(i.rightFullExtent+n-t)+" "+(i.targetY+i.rightSmallArcRadius)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightInnerExtent-t)+" "+(i.targetY+n)+" L "+(i.targetX-t)+" "+(i.targetY+n)+(t>0?" L "+i.targetX+" "+i.targetY:"")+"Z"),r}function JJ(){var e=.5;function t(r){var n=r.linkArrowLength;if(r.link.circular)return WZt(r.link,n);var i=Math.abs((r.link.target.x0-r.link.source.x1)/2);n>i&&(n=i);var a=r.link.source.x1,o=r.link.target.x0-n,s=zZt(a,o),l=s(e),u=s(1-e),c=r.link.y0-r.link.width/2,f=r.link.y0+r.link.width/2,h=r.link.y1-r.link.width/2,d=r.link.y1+r.link.width/2,v="M"+a+","+c,_="C"+l+","+c+" "+u+","+h+" "+o+","+h,b="C"+u+","+d+" "+l+","+f+" "+a+","+f,p=n>0?"L"+(o+n)+","+(h+r.link.width/2):"";return p+="L"+o+","+d,v+_+p+b+"Z"}return t}function XZt(e,t){var r=D5(t.color),n=Nu.nodePadAcross,i=e.nodePad/2;t.dx=t.x1-t.x0,t.dy=t.y1-t.y0;var a=t.dx,o=Math.max(.5,t.dy),s="node_"+t.pointNumber;return t.group&&(s=p1.randstr()),t.trace=e.trace,t.curveNumber=e.trace.index,{index:t.pointNumber,key:s,partOfGroup:t.partOfGroup||!1,group:t.group,traceId:e.key,trace:e.trace,node:t,nodePad:e.nodePad,nodeLineColor:e.nodeLineColor,nodeLineWidth:e.nodeLineWidth,textFont:e.textFont,size:e.horizontal?e.height:e.width,visibleWidth:Math.ceil(a),visibleHeight:o,zoneX:-n,zoneY:-i,zoneWidth:a+2*n,zoneHeight:o+2*i,labelY:e.horizontal?t.dy/2+1:t.dx/2+1,left:t.originalLayer===1,sizeAcross:e.width,forceLayouts:e.forceLayouts,horizontal:e.horizontal,darkBackground:r.getBrightness()<=128,tinyColorHue:sw.tinyRGB(r),tinyColorAlpha:r.getAlpha(),valueFormat:e.valueFormat,valueSuffix:e.valueSuffix,sankey:e.sankey,graph:e.graph,arrangement:e.arrangement,uniqueNodeLabelPathId:[e.guid,e.key,s].join("_"),interactionState:e.interactionState,figure:e}}function ZJ(e){e.attr("transform",function(t){return YJ(t.node.x0.toFixed(3),t.node.y0.toFixed(3))})}function ZZt(e){e.call(ZJ)}function rXe(e,t){e.call(ZZt),t.attr("d",JJ())}function KWe(e){e.attr("width",function(t){return t.node.x1-t.node.x0}).attr("height",function(t){return t.visibleHeight})}function XJ(e){return e.link.width>1||e.linkLineWidth>0}function JWe(e){var t=YJ(e.translateX,e.translateY);return t+(e.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function $We(e,t,r){e.on(".basic",null).on("mouseover.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.hover(this,n,t),n.interactionState.hovered=[this,n])}).on("mousemove.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.follow(this,n),n.interactionState.hovered=[this,n])}).on("mouseout.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.unhover(this,n,t),n.interactionState.hovered=!1)}).on("click.basic",function(n){n.interactionState.hovered&&(r.unhover(this,n,t),n.interactionState.hovered=!1),!n.interactionState.dragInProgress&&!n.partOfGroup&&r.select(this,n,t)})}function YZt(e,t,r,n){var i=R5.behavior.drag().origin(function(a){return{x:a.node.x0+a.visibleWidth/2,y:a.node.y0+a.visibleHeight/2}}).on("dragstart",function(a){if(a.arrangement!=="fixed"&&(p1.ensureSingle(n._fullLayout._infolayer,"g","dragcover",function(s){n._fullLayout._dragCover=s}),p1.raiseToTop(this),a.interactionState.dragInProgress=a.node,QWe(a.node),a.interactionState.hovered&&(r.nodeEvents.unhover.apply(0,a.interactionState.hovered),a.interactionState.hovered=!1),a.arrangement==="snap")){var o=a.traceId+"|"+a.key;a.forceLayouts[o]?a.forceLayouts[o].alpha(1):KZt(e,o,a,n),JZt(e,t,a,o,n)}}).on("drag",function(a){if(a.arrangement!=="fixed"){var o=R5.event.x,s=R5.event.y;a.arrangement==="snap"?(a.node.x0=o-a.visibleWidth/2,a.node.x1=o+a.visibleWidth/2,a.node.y0=s-a.visibleHeight/2,a.node.y1=s+a.visibleHeight/2):(a.arrangement==="freeform"&&(a.node.x0=o-a.visibleWidth/2,a.node.x1=o+a.visibleWidth/2),s=Math.max(0,Math.min(a.size-a.visibleHeight/2,s)),a.node.y0=s-a.visibleHeight/2,a.node.y1=s+a.visibleHeight/2),QWe(a.node),a.arrangement!=="snap"&&(a.sankey.update(a.graph),rXe(e.filter(nXe(a)),t))}}).on("dragend",function(a){if(a.arrangement!=="fixed"){a.interactionState.dragInProgress=!1;for(var o=0;o0)window.requestAnimationFrame(a);else{var l=r.node.originalX;r.node.x0=l-r.visibleWidth/2,r.node.x1=l+r.visibleWidth/2,iXe(r,i)}})}function $Zt(e,t,r,n){return function(){for(var a=0,o=0;o0&&n.forceLayouts[t].alpha(0)}}function iXe(e,t){for(var r=[],n=[],i=0;i{"use strict";var Zv=Oa(),QJ=Dr(),k7=QJ.numberFormat,rYt=oXe(),F5=vf(),iYt=ka(),Sx=WJ().cn,Qk=QJ._;function sXe(e){return e!==""}function z5(e,t){return e.filter(function(r){return r.key===t.traceId})}function lXe(e,t){Zv.select(e).select("path").style("fill-opacity",t),Zv.select(e).select("rect").style("fill-opacity",t)}function uXe(e){Zv.select(e).select("text.name").style("fill","black")}function cXe(e){return function(t){return e.node.sourceLinks.indexOf(t.link)!==-1||e.node.targetLinks.indexOf(t.link)!==-1}}function fXe(e){return function(t){return t.node.sourceLinks.indexOf(e.link)!==-1||t.node.targetLinks.indexOf(e.link)!==-1}}function hXe(e,t,r){t&&r&&z5(r,t).selectAll("."+Sx.sankeyLink).filter(cXe(t)).call(dXe.bind(0,t,r,!1))}function $J(e,t,r){t&&r&&z5(r,t).selectAll("."+Sx.sankeyLink).filter(cXe(t)).call(vXe.bind(0,t,r,!1))}function dXe(e,t,r,n){n.style("fill",function(i){if(!i.link.concentrationscale)return i.tinyColorHoverHue}).style("fill-opacity",function(i){if(!i.link.concentrationscale)return i.tinyColorHoverAlpha}),n.each(function(i){var a=i.link.label;a!==""&&z5(t,e).selectAll("."+Sx.sankeyLink).filter(function(o){return o.link.label===a}).style("fill",function(o){if(!o.link.concentrationscale)return o.tinyColorHoverHue}).style("fill-opacity",function(o){if(!o.link.concentrationscale)return o.tinyColorHoverAlpha})}),r&&z5(t,e).selectAll("."+Sx.sankeyNode).filter(fXe(e)).call(hXe)}function vXe(e,t,r,n){n.style("fill",function(i){return i.tinyColorHue}).style("fill-opacity",function(i){return i.tinyColorAlpha}),n.each(function(i){var a=i.link.label;a!==""&&z5(t,e).selectAll("."+Sx.sankeyLink).filter(function(o){return o.link.label===a}).style("fill",function(o){return o.tinyColorHue}).style("fill-opacity",function(o){return o.tinyColorAlpha})}),r&&z5(t,e).selectAll(Sx.sankeyNode).filter(fXe(e)).call($J)}function kf(e,t){var r=e.hoverlabel||{},n=QJ.nestedProperty(r,t).get();return Array.isArray(n)?!1:n}pXe.exports=function(t,r){for(var n=t._fullLayout,i=n._paper,a=n._size,o=0;o"),color:kf(C,"bgcolor")||iYt.addOpacity(z.color,1),borderColor:kf(C,"bordercolor"),fontFamily:kf(C,"font.family"),fontSize:kf(C,"font.size"),fontColor:kf(C,"font.color"),fontWeight:kf(C,"font.weight"),fontStyle:kf(C,"font.style"),fontVariant:kf(C,"font.variant"),fontTextcase:kf(C,"font.textcase"),fontLineposition:kf(C,"font.lineposition"),fontShadow:kf(C,"font.shadow"),nameLength:kf(C,"namelength"),textAlign:kf(C,"align"),idealAlign:Zv.event.x"),color:kf(C,"bgcolor")||x.tinyColorHue,borderColor:kf(C,"bordercolor"),fontFamily:kf(C,"font.family"),fontSize:kf(C,"font.size"),fontColor:kf(C,"font.color"),fontWeight:kf(C,"font.weight"),fontStyle:kf(C,"font.style"),fontVariant:kf(C,"font.variant"),fontTextcase:kf(C,"font.textcase"),fontLineposition:kf(C,"font.lineposition"),fontShadow:kf(C,"font.shadow"),nameLength:kf(C,"namelength"),textAlign:kf(C,"align"),idealAlign:"left",hovertemplate:C.hovertemplate,hovertemplateLabels:V,eventData:[x.node]},{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:t});lXe(j,.85),uXe(j)}}},S=function(L,x,C){t._fullLayout.hovermode!==!1&&(Zv.select(L).call($J,x,C),x.node.trace.node.hoverinfo!=="skip"&&(x.node.fullData=x.node.trace,t.emit("plotly_unhover",{event:Zv.event,points:[x.node]})),F5.loneUnhover(n._hoverlayer.node()))};rYt(t,i,r,{width:a.w,height:a.h,margin:{t:a.t,r:a.r,b:a.b,l:a.l}},{linkEvents:{hover:u,follow:_,unhover:b,select:l},nodeEvents:{hover:k,follow:E,unhover:S,select:p}})}});var gXe=ye(lw=>{"use strict";var nYt=mc().overrideAll,aYt=Id().getModuleCalcData,oYt=e$(),sYt=B1(),lYt=Sg(),uYt=yv(),cYt=Of().prepSelect,t$=Dr(),fYt=qa(),C7="sankey";lw.name=C7;lw.baseLayoutAttrOverrides=nYt({hoverlabel:sYt.hoverlabel},"plot","nested");lw.plot=function(e){var t=aYt(e.calcdata,C7)[0];oYt(e,t),lw.updateFx(e)};lw.clean=function(e,t,r,n){var i=n._has&&n._has(C7),a=t._has&&t._has(C7);i&&!a&&(n._paperdiv.selectAll(".sankey").remove(),n._paperdiv.selectAll(".bgsankey").remove())};lw.updateFx=function(e){for(var t=0;t{"use strict";mXe.exports=function(t,r){for(var n=t.cd,i=[],a=n[0].trace,o=a._sankey.graph.nodes,s=0;s{"use strict";_Xe.exports={attributes:GJ(),supplyDefaults:TWe(),calc:kWe(),plot:e$(),moduleType:"trace",name:"sankey",basePlotModule:gXe(),selectPoints:yXe(),categories:["noOpacity"],meta:{}}});var wXe=ye((o2r,bXe)=>{"use strict";bXe.exports=xXe()});var AXe=ye(O5=>{"use strict";var TXe=Mc();O5.name="indicator";O5.plot=function(e,t,r,n){TXe.plotBasePlot(O5.name,e,t,r,n)};O5.clean=function(e,t,r,n){TXe.cleanBasePlot(O5.name,e,t,r,n)}});var i$=ye((l2r,LXe)=>{"use strict";var Mx=Ao().extendFlat,MXe=Ao().extendDeep,dYt=mc().overrideAll,EXe=ec(),kXe=Lh(),vYt=Cc().attributes,Bf=Rd(),pYt=vl().templatedArray,L7=XT(),SXe=df().descriptionOnlyNumbers,r$=EXe({editType:"plot",colorEditType:"plot"}),eC={color:{valType:"color",editType:"plot"},line:{color:{valType:"color",dflt:kXe.defaultLine,editType:"plot"},width:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},thickness:{valType:"number",min:0,max:1,dflt:1,editType:"plot"},editType:"calc"},CXe={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},gYt=pYt("step",MXe({},eC,{range:CXe}));LXe.exports={mode:{valType:"flaglist",editType:"calc",flags:["number","delta","gauge"],dflt:"number"},value:{valType:"number",editType:"calc",anim:!0},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},domain:vYt({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot"},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},font:Mx({},r$,{}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot",description:SXe("value")},font:Mx({},r$,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"plot"},delta:{reference:{valType:"number",editType:"calc"},position:{valType:"enumerated",values:["top","bottom","left","right"],dflt:"bottom",editType:"plot"},relative:{valType:"boolean",editType:"plot",dflt:!1},valueformat:{valType:"string",editType:"plot",description:SXe("value")},increasing:{symbol:{valType:"string",dflt:L7.INCREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:L7.INCREASING.COLOR,editType:"plot"},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:L7.DECREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:L7.DECREASING.COLOR,editType:"plot"},editType:"plot"},font:Mx({},r$,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"]},bar:MXe({},eC,{color:{dflt:"green"}}),bgcolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:kXe.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot"},axis:dYt({range:CXe,visible:Mx({},Bf.visible,{dflt:!0}),tickmode:Bf.minor.tickmode,nticks:Bf.nticks,tick0:Bf.tick0,dtick:Bf.dtick,tickvals:Bf.tickvals,ticktext:Bf.ticktext,ticks:Mx({},Bf.ticks,{dflt:"outside"}),ticklen:Bf.ticklen,tickwidth:Bf.tickwidth,tickcolor:Bf.tickcolor,ticklabelstep:Bf.ticklabelstep,showticklabels:Bf.showticklabels,labelalias:Bf.labelalias,tickfont:EXe({}),tickangle:Bf.tickangle,tickformat:Bf.tickformat,tickformatstops:Bf.tickformatstops,tickprefix:Bf.tickprefix,showtickprefix:Bf.showtickprefix,ticksuffix:Bf.ticksuffix,showticksuffix:Bf.showticksuffix,separatethousands:Bf.separatethousands,exponentformat:Bf.exponentformat,minexponent:Bf.minexponent,showexponent:Bf.showexponent,editType:"plot"},"plot"),steps:gYt,threshold:{line:{color:Mx({},eC.line.color,{}),width:Mx({},eC.line.width,{dflt:1}),editType:"plot"},thickness:Mx({},eC.thickness,{dflt:.85}),value:{valType:"number",editType:"calc",dflt:!1},editType:"plot"},editType:"plot"}}});var n$=ye((u2r,PXe)=>{"use strict";PXe.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}});var DXe=ye((c2r,RXe)=>{"use strict";var ty=Dr(),I7=i$(),mYt=Cc().defaults,IXe=vl(),yYt=Yd(),P7=n$(),_Yt=bb(),xYt=M3(),bYt=e_(),wYt=t_();function TYt(e,t,r,n){function i(x,C){return ty.coerce(e,t,I7,x,C)}mYt(t,n,i),i("mode"),t._hasNumber=t.mode.indexOf("number")!==-1,t._hasDelta=t.mode.indexOf("delta")!==-1,t._hasGauge=t.mode.indexOf("gauge")!==-1;var a=i("value");t._range=[0,typeof a=="number"?1.5*a:1];var o=new Array(2),s;if(t._hasNumber){i("number.valueformat");var l=ty.extendFlat({},n.font);l.size=void 0,ty.coerceFont(i,"number.font",l),t.number.font.size===void 0&&(t.number.font.size=P7.defaultNumberFontSize,o[0]=!0),i("number.prefix"),i("number.suffix"),s=t.number.font.size}var u;if(t._hasDelta){var c=ty.extendFlat({},n.font);c.size=void 0,ty.coerceFont(i,"delta.font",c),t.delta.font.size===void 0&&(t.delta.font.size=(t._hasNumber?.5:1)*(s||P7.defaultNumberFontSize),o[1]=!0),i("delta.reference",t.value),i("delta.relative"),i("delta.valueformat",t.delta.relative?"2%":""),i("delta.increasing.symbol"),i("delta.increasing.color"),i("delta.decreasing.symbol"),i("delta.decreasing.color"),i("delta.position"),i("delta.prefix"),i("delta.suffix"),u=t.delta.font.size}t._scaleNumbers=(!t._hasNumber||o[0])&&(!t._hasDelta||o[1])||!1;var f=ty.extendFlat({},n.font);f.size=.25*(s||u||P7.defaultNumberFontSize),ty.coerceFont(i,"title.font",f),i("title.text");var h,d,v,_;function b(x,C){return ty.coerce(h,d,I7.gauge,x,C)}function p(x,C){return ty.coerce(v,_,I7.gauge.axis,x,C)}if(t._hasGauge){h=e.gauge,h||(h={}),d=IXe.newContainer(t,"gauge"),b("shape");var k=t._isBullet=t.gauge.shape==="bullet";k||i("title.align","center");var E=t._isAngular=t.gauge.shape==="angular";E||i("align","center"),b("bgcolor",n.paper_bgcolor),b("borderwidth"),b("bordercolor"),b("bar.color"),b("bar.line.color"),b("bar.line.width");var S=P7.valueThickness*(t.gauge.shape==="bullet"?.5:1);b("bar.thickness",S),yYt(h,d,{name:"steps",handleItemDefaults:AYt}),b("threshold.value"),b("threshold.thickness"),b("threshold.line.width"),b("threshold.line.color"),v={},h&&(v=h.axis||{}),_=IXe.newContainer(d,"axis"),p("visible"),t._range=p("range",t._range);var L={font:n.font,noAutotickangles:!0,outerTicks:!0,noTicklabelshift:!0,noTicklabelstandoff:!0};_Yt(v,_,p,"linear"),wYt(v,_,p,"linear",L),bYt(v,_,p,"linear",L),xYt(v,_,p,L)}else i("title.align","center"),i("align","center"),t._isAngular=t._isBullet=!1;t._length=null}function AYt(e,t){function r(n,i){return ty.coerce(e,t,I7.gauge.steps,n,i)}r("color"),r("line.color"),r("line.width"),r("range"),r("thickness")}RXe.exports={supplyDefaults:TYt}});var zXe=ye((f2r,FXe)=>{"use strict";function SYt(e,t){var r=[],n=t.value;typeof t._lastValue!="number"&&(t._lastValue=t.value);var i=t._lastValue,a=i;return t._hasDelta&&typeof t.delta.reference=="number"&&(a=t.delta.reference),r[0]={y:n,lastY:i,delta:n-a,relativeDelta:(n-a)/a},r}FXe.exports={calc:SYt}});var VXe=ye((h2r,UXe)=>{"use strict";var dw=Oa(),MYt=(F2(),ob(D2)).interpolate,OXe=(F2(),ob(D2)).interpolateNumber,Ex=Dr(),EYt=Ex.strScale,rC=Ex.strTranslate,kYt=Ex.rad2deg,CYt=$h().MID_SHIFT,hw=So(),uw=n$(),D7=ru(),sv=ho(),LYt=i4(),PYt=uI(),IYt=Rd(),q5=ka(),a$={left:"start",center:"middle",right:"end"},cw={left:0,center:.5,right:1},qXe=/[yzafpnµmkMGTPEZY]/;function iC(e){return e&&e.duration>0}UXe.exports=function(t,r,n,i){var a=t._fullLayout,o;iC(n)&&i&&(o=i()),Ex.makeTraceGroups(a._indicatorlayer,r,"trace").each(function(s){var l=s[0],u=l.trace,c=dw.select(this),f=u._hasGauge,h=u._isAngular,d=u._isBullet,v=u.domain,_={w:a._size.w*(v.x[1]-v.x[0]),h:a._size.h*(v.y[1]-v.y[0]),l:a._size.l+a._size.w*v.x[0],r:a._size.r+a._size.w*(1-v.x[1]),t:a._size.t+a._size.h*(1-v.y[1]),b:a._size.b+a._size.h*v.y[0]},b=_.l+_.w/2,p=_.t+_.h/2,k=Math.min(_.w/2,_.h),E=uw.innerRadius*k,S,L,x,C=u.align||"center";if(L=p,!f)S=_.l+cw[C]*_.w,x=function(j){return BXe(j,_.w,_.h)};else if(h&&(S=b,L=p+k/2,x=function(j){return OYt(j,.9*E)}),d){var M=uw.bulletPadding,g=1-uw.bulletNumberDomainSize+M;S=_.l+(g+(1-g)*cw[C])*_.w,x=function(j){return BXe(j,(uw.bulletNumberDomainSize-M)*_.w,_.h)}}FYt(t,c,s,{numbersX:S,numbersY:L,numbersScaler:x,transitionOpts:n,onComplete:o});var P,T;f&&(P={range:u.gauge.axis.range,color:u.gauge.bgcolor,line:{color:u.gauge.bordercolor,width:0},thickness:1},T={range:u.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:u.gauge.bordercolor,width:u.gauge.borderwidth},thickness:1});var z=c.selectAll("g.angular").data(h?s:[]);z.exit().remove();var O=c.selectAll("g.angularaxis").data(h?s:[]);O.exit().remove(),h&&DYt(t,c,s,{radius:k,innerRadius:E,gauge:z,layer:O,size:_,gaugeBg:P,gaugeOutline:T,transitionOpts:n,onComplete:o});var V=c.selectAll("g.bullet").data(d?s:[]);V.exit().remove();var G=c.selectAll("g.bulletaxis").data(d?s:[]);G.exit().remove(),d&&RYt(t,c,s,{gauge:V,layer:G,size:_,gaugeBg:P,gaugeOutline:T,transitionOpts:n,onComplete:o});var Z=c.selectAll("text.title").data(s);Z.exit().remove(),Z.enter().append("text").classed("title",!0),Z.attr("text-anchor",function(){return d?a$.right:a$[u.title.align]}).text(u.title.text).call(hw.font,u.title.font).call(D7.convertToTspans,t),Z.attr("transform",function(){var j=_.l+_.w*cw[u.title.align],N,H=uw.titlePadding,te=hw.bBox(Z.node());if(f){if(h)if(u.gauge.axis.visible){var oe=hw.bBox(O.node());N=oe.top-H-te.bottom}else N=_.t+_.h/2-k/2-te.bottom-H;d&&(N=L-(te.top+te.bottom)/2,j=_.l-uw.bulletPadding*_.w)}else N=u._numbersTop-H-te.bottom;return rC(j,N)})})};function RYt(e,t,r,n){var i=r[0].trace,a=n.gauge,o=n.layer,s=n.gaugeBg,l=n.gaugeOutline,u=n.size,c=i.domain,f=n.transitionOpts,h=n.onComplete,d,v,_,b,p;a.enter().append("g").classed("bullet",!0),a.attr("transform",rC(u.l,u.t)),o.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),o.selectAll("g.xbulletaxistick,path,text").remove();var k=u.h,E=i.gauge.bar.thickness*k,S=c.x[0],L=c.x[0]+(c.x[1]-c.x[0])*(i._hasNumber||i._hasDelta?1-uw.bulletNumberDomainSize:1);d=tC(e,i.gauge.axis),d._id="xbulletaxis",d.domain=[S,L],d.setScale(),v=sv.calcTicks(d),_=sv.makeTransTickFn(d),b=sv.getTickSigns(d)[2],p=u.t+u.h,d.visible&&(sv.drawTicks(e,d,{vals:d.ticks==="inside"?sv.clipEnds(d,v):v,layer:o,path:sv.makeTickPath(d,p,b),transFn:_}),sv.drawLabels(e,d,{vals:v,layer:o,transFn:_,labelFns:sv.makeLabelFns(d,p)}));function x(O){O.attr("width",function(V){return Math.max(0,d.c2p(V.range[1])-d.c2p(V.range[0]))}).attr("x",function(V){return d.c2p(V.range[0])}).attr("y",function(V){return .5*(1-V.thickness)*k}).attr("height",function(V){return V.thickness*k})}var C=[s].concat(i.gauge.steps),M=a.selectAll("g.bg-bullet").data(C);M.enter().append("g").classed("bg-bullet",!0).append("rect"),M.select("rect").call(x).call(fw),M.exit().remove();var g=a.selectAll("g.value-bullet").data([i.gauge.bar]);g.enter().append("g").classed("value-bullet",!0).append("rect"),g.select("rect").attr("height",E).attr("y",(k-E)/2).call(fw),iC(f)?g.select("rect").transition().duration(f.duration).ease(f.easing).each("end",function(){h&&h()}).each("interrupt",function(){h&&h()}).attr("width",Math.max(0,d.c2p(Math.min(i.gauge.axis.range[1],r[0].y)))):g.select("rect").attr("width",typeof r[0].y=="number"?Math.max(0,d.c2p(Math.min(i.gauge.axis.range[1],r[0].y))):0),g.exit().remove();var P=r.filter(function(){return i.gauge.threshold.value||i.gauge.threshold.value===0}),T=a.selectAll("g.threshold-bullet").data(P);T.enter().append("g").classed("threshold-bullet",!0).append("line"),T.select("line").attr("x1",d.c2p(i.gauge.threshold.value)).attr("x2",d.c2p(i.gauge.threshold.value)).attr("y1",(1-i.gauge.threshold.thickness)/2*k).attr("y2",(1-(1-i.gauge.threshold.thickness)/2)*k).call(q5.stroke,i.gauge.threshold.line.color).style("stroke-width",i.gauge.threshold.line.width),T.exit().remove();var z=a.selectAll("g.gauge-outline").data([l]);z.enter().append("g").classed("gauge-outline",!0).append("rect"),z.select("rect").call(x).call(fw),z.exit().remove()}function DYt(e,t,r,n){var i=r[0].trace,a=n.size,o=n.radius,s=n.innerRadius,l=n.gaugeBg,u=n.gaugeOutline,c=[a.l+a.w/2,a.t+a.h/2+o/2],f=n.gauge,h=n.layer,d=n.transitionOpts,v=n.onComplete,_=Math.PI/2;function b(_e){var Ee=i.gauge.axis.range[0],Ce=i.gauge.axis.range[1],me=(_e-Ee)/(Ce-Ee)*Math.PI-_;return me<-_?-_:me>_?_:me}function p(_e){return dw.svg.arc().innerRadius((s+o)/2-_e/2*(o-s)).outerRadius((s+o)/2+_e/2*(o-s)).startAngle(-_)}function k(_e){_e.attr("d",function(Ee){return p(Ee.thickness).startAngle(b(Ee.range[0])).endAngle(b(Ee.range[1]))()})}var E,S,L,x;f.enter().append("g").classed("angular",!0),f.attr("transform",rC(c[0],c[1])),h.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),h.selectAll("g.xangularaxistick,path,text").remove(),E=tC(e,i.gauge.axis),E.type="linear",E.range=i.gauge.axis.range,E._id="xangularaxis",E.ticklabeloverflow="allow",E.setScale();var C=function(_e){return(E.range[0]-_e.x)/(E.range[1]-E.range[0])*Math.PI+Math.PI},M={},g=sv.makeLabelFns(E,0),P=g.labelStandoff;M.xFn=function(_e){var Ee=C(_e);return Math.cos(Ee)*P},M.yFn=function(_e){var Ee=C(_e),Ce=Math.sin(Ee)>0?.2:1;return-Math.sin(Ee)*(P+_e.fontSize*Ce)+Math.abs(Math.cos(Ee))*(_e.fontSize*CYt)},M.anchorFn=function(_e){var Ee=C(_e),Ce=Math.cos(Ee);return Math.abs(Ce)<.1?"middle":Ce>0?"start":"end"},M.heightFn=function(_e,Ee,Ce){var me=C(_e);return-.5*(1+Math.sin(me))*Ce};var T=function(_e){return rC(c[0]+o*Math.cos(_e),c[1]-o*Math.sin(_e))};L=function(_e){return T(C(_e))};var z=function(_e){var Ee=C(_e);return T(Ee)+"rotate("+-kYt(Ee)+")"};if(S=sv.calcTicks(E),x=sv.getTickSigns(E)[2],E.visible){x=E.ticks==="inside"?-1:1;var O=(E.linewidth||1)/2;sv.drawTicks(e,E,{vals:S,layer:h,path:"M"+x*O+",0h"+x*E.ticklen,transFn:z}),sv.drawLabels(e,E,{vals:S,layer:h,transFn:L,labelFns:M})}var V=[l].concat(i.gauge.steps),G=f.selectAll("g.bg-arc").data(V);G.enter().append("g").classed("bg-arc",!0).append("path"),G.select("path").call(k).call(fw),G.exit().remove();var Z=p(i.gauge.bar.thickness),j=f.selectAll("g.value-arc").data([i.gauge.bar]);j.enter().append("g").classed("value-arc",!0).append("path");var N=j.select("path");iC(d)?(N.transition().duration(d.duration).ease(d.easing).each("end",function(){v&&v()}).each("interrupt",function(){v&&v()}).attrTween("d",zYt(Z,b(r[0].lastY),b(r[0].y))),i._lastValue=r[0].y):N.attr("d",typeof r[0].y=="number"?Z.endAngle(b(r[0].y)):"M0,0Z"),N.call(fw),j.exit().remove(),V=[];var H=i.gauge.threshold.value;(H||H===0)&&V.push({range:[H,H],color:i.gauge.threshold.color,line:{color:i.gauge.threshold.line.color,width:i.gauge.threshold.line.width},thickness:i.gauge.threshold.thickness});var te=f.selectAll("g.threshold-arc").data(V);te.enter().append("g").classed("threshold-arc",!0).append("path"),te.select("path").call(k).call(fw),te.exit().remove();var oe=f.selectAll("g.gauge-outline").data([u]);oe.enter().append("g").classed("gauge-outline",!0).append("path"),oe.select("path").call(k).call(fw),oe.exit().remove()}function FYt(e,t,r,n){var i=r[0].trace,a=n.numbersX,o=n.numbersY,s=i.align||"center",l=a$[s],u=n.transitionOpts,c=n.onComplete,f=Ex.ensureSingle(t,"g","numbers"),h,d,v,_=[];i._hasNumber&&_.push("number"),i._hasDelta&&(_.push("delta"),i.delta.position==="left"&&_.reverse());var b=f.selectAll("text").data(_);b.enter().append("text"),b.attr("text-anchor",function(){return l}).attr("class",function(T){return T}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),b.exit().remove();function p(T,z,O,V){if(T.match("s")&&O>=0!=V>=0&&!z(O).slice(-1).match(qXe)&&!z(V).slice(-1).match(qXe)){var G=T.slice().replace("s","f").replace(/\d+/,function(j){return parseInt(j)-1}),Z=tC(e,{tickformat:G});return function(j){return Math.abs(j)<1?sv.tickText(Z,j).text:z(j)}}else return z}function k(){var T=tC(e,{tickformat:i.number.valueformat},i._range);T.setScale(),sv.prepTicks(T);var z=function(j){return sv.tickText(T,j).text},O=i.number.suffix,V=i.number.prefix,G=f.select("text.number");function Z(){var j=typeof r[0].y=="number"?V+z(r[0].y)+O:"-";G.text(j).call(hw.font,i.number.font).call(D7.convertToTspans,e)}return iC(u)?G.transition().duration(u.duration).ease(u.easing).each("end",function(){Z(),c&&c()}).each("interrupt",function(){Z(),c&&c()}).attrTween("text",function(){var j=dw.select(this),N=OXe(r[0].lastY,r[0].y);i._lastValue=r[0].y;var H=p(i.number.valueformat,z,r[0].lastY,r[0].y);return function(te){j.text(V+H(N(te))+O)}}):Z(),h=NXe(V+z(r[0].y)+O,i.number.font,l,e),G}function E(){var T=tC(e,{tickformat:i.delta.valueformat},i._range);T.setScale(),sv.prepTicks(T);var z=function(te){return sv.tickText(T,te).text},O=i.delta.suffix,V=i.delta.prefix,G=function(te){var oe=i.delta.relative?te.relativeDelta:te.delta;return oe},Z=function(te,oe){return te===0||typeof te!="number"||isNaN(te)?"-":(te>0?i.delta.increasing.symbol:i.delta.decreasing.symbol)+V+oe(te)+O},j=function(te){return te.delta>=0?i.delta.increasing.color:i.delta.decreasing.color};i._deltaLastValue===void 0&&(i._deltaLastValue=G(r[0]));var N=f.select("text.delta");N.call(hw.font,i.delta.font).call(q5.fill,j({delta:i._deltaLastValue}));function H(){N.text(Z(G(r[0]),z)).call(q5.fill,j(r[0])).call(D7.convertToTspans,e)}return iC(u)?N.transition().duration(u.duration).ease(u.easing).tween("text",function(){var te=dw.select(this),oe=G(r[0]),_e=i._deltaLastValue,Ee=p(i.delta.valueformat,z,_e,oe),Ce=OXe(_e,oe);return i._deltaLastValue=oe,function(me){te.text(Z(Ce(me),Ee)),te.call(q5.fill,j({delta:Ce(me)}))}}).each("end",function(){H(),c&&c()}).each("interrupt",function(){H(),c&&c()}):H(),d=NXe(Z(G(r[0]),z),i.delta.font,l,e),N}var S=i.mode+i.align,L;if(i._hasDelta&&(L=E(),S+=i.delta.position+i.delta.font.size+i.delta.font.family+i.delta.valueformat,S+=i.delta.increasing.symbol+i.delta.decreasing.symbol,v=d),i._hasNumber&&(k(),S+=i.number.font.size+i.number.font.family+i.number.valueformat+i.number.suffix+i.number.prefix,v=h),i._hasDelta&&i._hasNumber){var x=[(h.left+h.right)/2,(h.top+h.bottom)/2],C=[(d.left+d.right)/2,(d.top+d.bottom)/2],M,g,P=.75*i.delta.font.size;i.delta.position==="left"&&(M=R7(i,"deltaPos",0,-1*(h.width*cw[i.align]+d.width*(1-cw[i.align])+P),S,Math.min),g=x[1]-C[1],v={width:h.width+d.width+P,height:Math.max(h.height,d.height),left:d.left+M,right:h.right,top:Math.min(h.top,d.top+g),bottom:Math.max(h.bottom,d.bottom+g)}),i.delta.position==="right"&&(M=R7(i,"deltaPos",0,h.width*(1-cw[i.align])+d.width*cw[i.align]+P,S,Math.max),g=x[1]-C[1],v={width:h.width+d.width+P,height:Math.max(h.height,d.height),left:h.left,right:d.right+M,top:Math.min(h.top,d.top+g),bottom:Math.max(h.bottom,d.bottom+g)}),i.delta.position==="bottom"&&(M=null,g=d.height,v={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height,bottom:h.bottom+d.height}),i.delta.position==="top"&&(M=null,g=h.top,v={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height-d.height,bottom:h.bottom}),L.attr({dx:M,dy:g})}(i._hasNumber||i._hasDelta)&&f.attr("transform",function(){var T=n.numbersScaler(v);S+=T[2];var z=R7(i,"numbersScale",1,T[0],S,Math.min),O;i._scaleNumbers||(z=1),i._isAngular?O=o-z*v.bottom:O=o-z*(v.top+v.bottom)/2,i._numbersTop=z*v.top+O;var V=v[s];s==="center"&&(V=(v.left+v.right)/2);var G=a-z*V;return G=R7(i,"numbersTranslate",0,G,S,Math.max),rC(G,O)+EYt(z)})}function fw(e){e.each(function(t){q5.stroke(dw.select(this),t.line.color)}).each(function(t){q5.fill(dw.select(this),t.color)}).style("stroke-width",function(t){return t.line.width})}function zYt(e,t,r){return function(){var n=MYt(t,r);return function(i){return e.endAngle(n(i))()}}}function tC(e,t,r){var n=e._fullLayout,i=Ex.extendFlat({type:"linear",ticks:"outside",range:r,showline:!0},t),a={type:"linear",_id:"x"+t._id},o={letter:"x",font:n.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function s(l,u){return Ex.coerce(i,a,IYt,l,u)}return LYt(i,a,s,o,n),PYt(i,a,s,o),a}function BXe(e,t,r){var n=Math.min(t/e.width,r/e.height);return[n,e,t+"x"+r]}function OYt(e,t){var r=Math.sqrt(e.width/2*(e.width/2)+e.height*e.height),n=t/r;return[n,e,t]}function NXe(e,t,r,n){var i=document.createElementNS("http://www.w3.org/2000/svg","text"),a=dw.select(i);return a.text(e).attr("x",0).attr("y",0).attr("text-anchor",r).attr("data-unformatted",e).call(D7.convertToTspans,n).call(hw.font,t),hw.bBox(a.node())}function R7(e,t,r,n,i,a){var o="_cache"+t;e[o]&&e[o].key===i||(e[o]={key:i,value:r});var s=Ex.aggNums(a,null,[e[o].value,n],2);return e[o].value=s,s}});var HXe=ye((d2r,GXe)=>{"use strict";GXe.exports={moduleType:"trace",name:"indicator",basePlotModule:AXe(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:i$(),supplyDefaults:DXe().supplyDefaults,calc:zXe().calc,plot:VXe(),meta:{}}});var WXe=ye((v2r,jXe)=>{"use strict";jXe.exports=HXe()});var o$=ye((g2r,KXe)=>{"use strict";var XXe=Ub(),F7=Ao().extendFlat,qYt=mc().overrideAll,ZXe=ec(),BYt=Cc().attributes,YXe=df().descriptionOnlyNumbers,p2r=KXe.exports=qYt({domain:BYt({name:"table",trace:!0}),columnwidth:{valType:"number",arrayOk:!0,dflt:null},columnorder:{valType:"data_array"},header:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:YXe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:F7({},XXe.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:F7({},ZXe({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:YXe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:F7({},XXe.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:F7({},ZXe({arrayOk:!0}))}},"calc","from-root")});var $Xe=ye((m2r,JXe)=>{"use strict";var s$=Dr(),NYt=o$(),UYt=Cc().defaults;function VYt(e,t){for(var r=e.columnorder||[],n=e.header.values.length,i=r.slice(0,n),a=i.slice().sort(function(l,u){return l-u}),o=i.map(function(l){return a.indexOf(l)}),s=o.length;s{"use strict";var GYt=Jm().wrap;QXe.exports=function(){return GYt({})}});var l$=ye((_2r,tZe)=>{"use strict";tZe.exports={cellPad:8,columnExtentOffset:10,columnTitleOffset:28,emptyHeaderHeight:16,latexCheck:/^\$.*\$$/,goldenRatio:1.618,lineBreaker:"
",maxDimensionCount:60,overdrag:45,releaseTransitionDuration:120,releaseTransitionEase:"cubic-out",scrollbarCaptureWidth:18,scrollbarHideDelay:1e3,scrollbarHideDuration:1e3,scrollbarOffset:5,scrollbarWidth:8,transitionDuration:100,transitionEase:"cubic-out",uplift:5,wrapSpacer:" ",wrapSplitCharacter:" ",cn:{table:"table",tableControlView:"table-control-view",scrollBackground:"scroll-background",yColumn:"y-column",columnBlock:"column-block",scrollAreaClip:"scroll-area-clip",scrollAreaClipRect:"scroll-area-clip-rect",columnBoundary:"column-boundary",columnBoundaryClippath:"column-boundary-clippath",columnBoundaryRect:"column-boundary-rect",columnCells:"column-cells",columnCell:"column-cell",cellRect:"cell-rect",cellText:"cell-text",cellTextHolder:"cell-text-holder",scrollbarKit:"scrollbar-kit",scrollbar:"scrollbar",scrollbarSlider:"scrollbar-slider",scrollbarGlyph:"scrollbar-glyph",scrollbarCaptureZone:"scrollbar-capture-zone"}}});var cZe=ye((x2r,uZe)=>{"use strict";var rZe=l$(),c$=Ao().extendFlat,HYt=Eo(),jYt=vv().isTypedArray,z7=vv().isArrayOrTypedArray;uZe.exports=function(t,r){var n=u$(r.cells.values),i=function(g){return g.slice(r.header.values.length,g.length)},a=u$(r.header.values);a.length&&!a[0].length&&(a[0]=[""],a=u$(a));var o=a.concat(i(n).map(function(){return lZe((a[0]||[""]).length)})),s=r.domain,l=Math.floor(t._fullLayout._size.w*(s.x[1]-s.x[0])),u=Math.floor(t._fullLayout._size.h*(s.y[1]-s.y[0])),c=r.header.values.length?o[0].map(function(){return r.header.height}):[rZe.emptyHeaderHeight],f=n.length?n[0].map(function(){return r.cells.height}):[],h=c.reduce(iZe,0),d=u-h,v=d+rZe.uplift,_=oZe(f,v),b=oZe(c,h),p=aZe(b,[]),k=aZe(_,p),E={},S=r._fullInput.columnorder;z7(S)&&(S=Array.from(S)),S=S.concat(i(n.map(function(g,P){return P})));var L=o.map(function(g,P){var T=z7(r.columnwidth)?r.columnwidth[Math.min(P,r.columnwidth.length-1)]:r.columnwidth;return HYt(T)?Number(T):1}),x=L.reduce(iZe,0);L=L.map(function(g){return g/x*l});var C=Math.max(f$(r.header.line.width),f$(r.cells.line.width)),M={key:r.uid+t._context.staticPlot,translateX:s.x[0]*t._fullLayout._size.w,translateY:t._fullLayout._size.h*(1-s.y[1]),size:t._fullLayout._size,width:l,maxLineWidth:C,height:u,columnOrder:S,groupHeight:u,rowBlocks:k,headerRowBlocks:p,scrollY:0,cells:c$({},r.cells,{values:n}),headerCells:c$({},r.header,{values:o}),gdColumns:o.map(function(g){return g[0]}),gdColumnsOriginalOrder:o.map(function(g){return g[0]}),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:o.map(function(g,P){var T=E[g];E[g]=(T||0)+1;var z=g+"__"+E[g];return{key:z,label:g,specIndex:P,xIndex:S[P],xScale:nZe,x:void 0,calcdata:void 0,columnWidth:L[P]}})};return M.columns.forEach(function(g){g.calcdata=M,g.x=nZe(g)}),M};function f$(e){if(z7(e)){for(var t=0,r=0;r=t||u===e.length-1)&&(r[i]=o,o.key=l++,o.firstRowIndex=s,o.lastRowIndex=u,o=sZe(),i+=a,s=u+1,a=0);return r}function sZe(){return{firstRowIndex:null,lastRowIndex:null,rows:[]}}});var fZe=ye(h$=>{"use strict";var O7=Ao().extendFlat;h$.splitToPanels=function(e){var t=[0,0],r=O7({},e,{key:"header",type:"header",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!0,values:e.calcdata.headerCells.values[e.specIndex],rowBlocks:e.calcdata.headerRowBlocks,calcdata:O7({},e.calcdata,{cells:e.calcdata.headerCells})}),n=O7({},e,{key:"cells1",type:"cells",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks}),i=O7({},e,{key:"cells2",type:"cells",page:1,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks});return[n,i,r]};h$.splitToCells=function(e){var t=WYt(e);return(e.values||[]).slice(t[0],t[1]).map(function(r,n){var i=typeof r=="string"&&r.match(/[<$&> ]/)?"_keybuster_"+Math.random():"";return{keyWithinBlock:n+i,key:t[0]+n,column:e,calcdata:e.calcdata,page:e.page,rowBlocks:e.rowBlocks,value:r}})};function WYt(e){var t=e.rowBlocks[e.page],r=t?t.rows[0].rowIndex:0,n=t?r+t.rows.length:0;return[r,n]}});var w$=ye((w2r,wZe)=>{"use strict";var Ya=l$(),tf=Oa(),d$=Dr(),XYt=d$.numberFormat,Uu=Jm(),v$=So(),ZYt=ru(),YYt=Dr().raiseToTop,og=Dr().strTranslate,KYt=Dr().cancelTransition,JYt=cZe(),yZe=fZe(),hZe=ka();wZe.exports=function(t,r){var n=!t._context.staticPlot,i=t._fullLayout._paper.selectAll("."+Ya.cn.table).data(r.map(function(k){var E=Uu.unwrap(k),S=E.trace;return JYt(t,S)}),Uu.keyFun);i.exit().remove(),i.enter().append("g").classed(Ya.cn.table,!0).attr("overflow","visible").style("box-sizing","content-box").style("position","absolute").style("left",0).style("overflow","visible").style("shape-rendering","crispEdges").style("pointer-events","all"),i.attr("width",function(k){return k.width+k.size.l+k.size.r}).attr("height",function(k){return k.height+k.size.t+k.size.b}).attr("transform",function(k){return og(k.translateX,k.translateY)});var a=i.selectAll("."+Ya.cn.tableControlView).data(Uu.repeat,Uu.keyFun),o=a.enter().append("g").classed(Ya.cn.tableControlView,!0).style("box-sizing","content-box");if(n){var s="onwheel"in document?"wheel":"mousewheel";o.on("mousemove",function(k){a.filter(function(E){return k===E}).call(nC,t)}).on(s,function(k){if(!k.scrollbarState.wheeling){k.scrollbarState.wheeling=!0;var E=k.scrollY+tf.event.deltaY,S=B7(t,a,null,E)(k);S||(tf.event.stopPropagation(),tf.event.preventDefault()),k.scrollbarState.wheeling=!1}}).call(nC,t,!0)}a.attr("transform",function(k){return og(k.size.l,k.size.t)});var l=a.selectAll("."+Ya.cn.scrollBackground).data(Uu.repeat,Uu.keyFun);l.enter().append("rect").classed(Ya.cn.scrollBackground,!0).attr("fill","none"),l.attr("width",function(k){return k.width}).attr("height",function(k){return k.height}),a.each(function(k){v$.setClipUrl(tf.select(this),dZe(t,k),t)});var u=a.selectAll("."+Ya.cn.yColumn).data(function(k){return k.columns},Uu.keyFun);u.enter().append("g").classed(Ya.cn.yColumn,!0),u.exit().remove(),u.attr("transform",function(k){return og(k.x,0)}),n&&u.call(tf.behavior.drag().origin(function(k){var E=tf.select(this);return gZe(E,k,-Ya.uplift),YYt(this),k.calcdata.columnDragInProgress=!0,nC(a.filter(function(S){return k.calcdata.key===S.key}),t),k}).on("drag",function(k){var E=tf.select(this),S=function(C){return(k===C?tf.event.x:C.x)+C.columnWidth/2};k.x=Math.max(-Ya.overdrag,Math.min(k.calcdata.width+Ya.overdrag-k.columnWidth,tf.event.x));var L=_Ze(u).filter(function(C){return C.calcdata.key===k.calcdata.key}),x=L.sort(function(C,M){return S(C)-S(M)});x.forEach(function(C,M){C.xIndex=M,C.x=k===C?C.x:C.xScale(C)}),u.filter(function(C){return k!==C}).transition().ease(Ya.transitionEase).duration(Ya.transitionDuration).attr("transform",function(C){return og(C.x,0)}),E.call(KYt).attr("transform",og(k.x,-Ya.uplift))}).on("dragend",function(k){var E=tf.select(this),S=k.calcdata;k.x=k.xScale(k),k.calcdata.columnDragInProgress=!1,gZe(E,k,0),sKt(t,S,S.columns.map(function(L){return L.xIndex}))})),u.each(function(k){v$.setClipUrl(tf.select(this),vZe(t,k),t)});var c=u.selectAll("."+Ya.cn.columnBlock).data(yZe.splitToPanels,Uu.keyFun);c.enter().append("g").classed(Ya.cn.columnBlock,!0).attr("id",function(k){return k.key}),c.style("cursor",function(k){return k.dragHandle?"ew-resize":k.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"});var f=c.filter(lKt),h=c.filter(_$);n&&h.call(tf.behavior.drag().origin(function(k){return tf.event.stopPropagation(),k}).on("drag",B7(t,a,-1)).on("dragend",function(){})),p$(t,a,f,c),p$(t,a,h,c);var d=a.selectAll("."+Ya.cn.scrollAreaClip).data(Uu.repeat,Uu.keyFun);d.enter().append("clipPath").classed(Ya.cn.scrollAreaClip,!0).attr("id",function(k){return dZe(t,k)});var v=d.selectAll("."+Ya.cn.scrollAreaClipRect).data(Uu.repeat,Uu.keyFun);v.enter().append("rect").classed(Ya.cn.scrollAreaClipRect,!0).attr("x",-Ya.overdrag).attr("y",-Ya.uplift).attr("fill","none"),v.attr("width",function(k){return k.width+2*Ya.overdrag}).attr("height",function(k){return k.height+Ya.uplift});var _=u.selectAll("."+Ya.cn.columnBoundary).data(Uu.repeat,Uu.keyFun);_.enter().append("g").classed(Ya.cn.columnBoundary,!0);var b=u.selectAll("."+Ya.cn.columnBoundaryClippath).data(Uu.repeat,Uu.keyFun);b.enter().append("clipPath").classed(Ya.cn.columnBoundaryClippath,!0),b.attr("id",function(k){return vZe(t,k)});var p=b.selectAll("."+Ya.cn.columnBoundaryRect).data(Uu.repeat,Uu.keyFun);p.enter().append("rect").classed(Ya.cn.columnBoundaryRect,!0).attr("fill","none"),p.attr("width",function(k){return k.columnWidth+2*q7(k)}).attr("height",function(k){return k.calcdata.height+2*q7(k)+Ya.uplift}).attr("x",function(k){return-q7(k)}).attr("y",function(k){return-q7(k)}),x$(null,h,a)};function q7(e){return Math.ceil(e.calcdata.maxLineWidth/2)}function dZe(e,t){return"clip"+e._fullLayout._uid+"_scrollAreaBottomClip_"+t.key}function vZe(e,t){return"clip"+e._fullLayout._uid+"_columnBoundaryClippath_"+t.calcdata.key+"_"+t.specIndex}function _Ze(e){return[].concat.apply([],e.map(function(t){return t})).map(function(t){return t.__data__})}function nC(e,t,r){function n(u){var c=u.rowBlocks;return m$(c,c.length-1)+(c.length?N7(c[c.length-1],1/0):1)}var i=e.selectAll("."+Ya.cn.scrollbarKit).data(Uu.repeat,Uu.keyFun);i.enter().append("g").classed(Ya.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),i.each(function(u){var c=u.scrollbarState;c.totalHeight=n(u),c.scrollableAreaHeight=u.groupHeight-g$(u),c.currentlyVisibleHeight=Math.min(c.totalHeight,c.scrollableAreaHeight),c.ratio=c.currentlyVisibleHeight/c.totalHeight,c.barLength=Math.max(c.ratio*c.currentlyVisibleHeight,Ya.goldenRatio*Ya.scrollbarWidth),c.barWiggleRoom=c.currentlyVisibleHeight-c.barLength,c.wiggleRoom=Math.max(0,c.totalHeight-c.scrollableAreaHeight),c.topY=c.barWiggleRoom===0?0:u.scrollY/c.wiggleRoom*c.barWiggleRoom,c.bottomY=c.topY+c.barLength,c.dragMultiplier=c.wiggleRoom/c.barWiggleRoom}).attr("transform",function(u){var c=u.width+Ya.scrollbarWidth/2+Ya.scrollbarOffset;return og(c,g$(u))});var a=i.selectAll("."+Ya.cn.scrollbar).data(Uu.repeat,Uu.keyFun);a.enter().append("g").classed(Ya.cn.scrollbar,!0);var o=a.selectAll("."+Ya.cn.scrollbarSlider).data(Uu.repeat,Uu.keyFun);o.enter().append("g").classed(Ya.cn.scrollbarSlider,!0),o.attr("transform",function(u){return og(0,u.scrollbarState.topY||0)});var s=o.selectAll("."+Ya.cn.scrollbarGlyph).data(Uu.repeat,Uu.keyFun);s.enter().append("line").classed(Ya.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",Ya.scrollbarWidth).attr("stroke-linecap","round").attr("y1",Ya.scrollbarWidth/2),s.attr("y2",function(u){return u.scrollbarState.barLength-Ya.scrollbarWidth/2}).attr("stroke-opacity",function(u){return u.columnDragInProgress||!u.scrollbarState.barWiggleRoom||r?0:.4}),s.transition().delay(0).duration(0),s.transition().delay(Ya.scrollbarHideDelay).duration(Ya.scrollbarHideDuration).attr("stroke-opacity",0);var l=a.selectAll("."+Ya.cn.scrollbarCaptureZone).data(Uu.repeat,Uu.keyFun);l.enter().append("line").classed(Ya.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",Ya.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",function(u){var c=tf.event.y,f=this.getBoundingClientRect(),h=u.scrollbarState,d=c-f.top,v=tf.scale.linear().domain([0,h.scrollableAreaHeight]).range([0,h.totalHeight]).clamp(!0);h.topY<=d&&d<=h.bottomY||B7(t,e,null,v(d-h.barLength/2))(u)}).call(tf.behavior.drag().origin(function(u){return tf.event.stopPropagation(),u.scrollbarState.scrollbarScrollInProgress=!0,u}).on("drag",B7(t,e)).on("dragend",function(){})),l.attr("y2",function(u){return u.scrollbarState.scrollableAreaHeight}),t._context.staticPlot&&(s.remove(),l.remove())}function p$(e,t,r,n){var i=$Yt(r),a=QYt(i);iKt(a);var o=eKt(a);aKt(o);var s=rKt(a),l=tKt(s);nKt(l),xZe(l,t,n,e),b$(a)}function $Yt(e){var t=e.selectAll("."+Ya.cn.columnCells).data(Uu.repeat,Uu.keyFun);return t.enter().append("g").classed(Ya.cn.columnCells,!0),t.exit().remove(),t}function QYt(e){var t=e.selectAll("."+Ya.cn.columnCell).data(yZe.splitToCells,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(Ya.cn.columnCell,!0),t.exit().remove(),t}function eKt(e){var t=e.selectAll("."+Ya.cn.cellRect).data(Uu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("rect").classed(Ya.cn.cellRect,!0),t}function tKt(e){var t=e.selectAll("."+Ya.cn.cellText).data(Uu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("text").classed(Ya.cn.cellText,!0).style("cursor",function(){return"auto"}).on("mousedown",function(){tf.event.stopPropagation()}),t}function rKt(e){var t=e.selectAll("."+Ya.cn.cellTextHolder).data(Uu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(Ya.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),t}function iKt(e){e.each(function(t,r){var n=t.calcdata.cells.font,i=t.column.specIndex,a={size:Yv(n.size,i,r),color:Yv(n.color,i,r),family:Yv(n.family,i,r),weight:Yv(n.weight,i,r),style:Yv(n.style,i,r),variant:Yv(n.variant,i,r),textcase:Yv(n.textcase,i,r),lineposition:Yv(n.lineposition,i,r),shadow:Yv(n.shadow,i,r)};t.rowNumber=t.key,t.align=Yv(t.calcdata.cells.align,i,r),t.cellBorderWidth=Yv(t.calcdata.cells.line.width,i,r),t.font=a})}function nKt(e){e.each(function(t){v$.font(tf.select(this),t.font)})}function aKt(e){e.attr("width",function(t){return t.column.columnWidth}).attr("stroke-width",function(t){return t.cellBorderWidth}).each(function(t){var r=tf.select(this);hZe.stroke(r,Yv(t.calcdata.cells.line.color,t.column.specIndex,t.rowNumber)),hZe.fill(r,Yv(t.calcdata.cells.fill.color,t.column.specIndex,t.rowNumber))})}function xZe(e,t,r,n){e.text(function(i){var a=i.column.specIndex,o=i.rowNumber,s=i.value,l=typeof s=="string",u=l&&s.match(/
/i),c=!l||u;i.mayHaveMarkup=l&&s.match(/[<&>]/);var f=oKt(s);i.latex=f;var h=f?"":Yv(i.calcdata.cells.prefix,a,o)||"",d=f?"":Yv(i.calcdata.cells.suffix,a,o)||"",v=f?null:Yv(i.calcdata.cells.format,a,o)||null,_=h+(v?XYt(v)(i.value):i.value)+d,b;i.wrappingNeeded=!i.wrapped&&!c&&!f&&(b=pZe(_)),i.cellHeightMayIncrease=u||f||i.mayHaveMarkup||(b===void 0?pZe(_):b),i.needsConvertToTspans=i.mayHaveMarkup||i.wrappingNeeded||i.latex;var p;if(i.wrappingNeeded){var k=Ya.wrapSplitCharacter===" "?_.replace(/i&&n.push(a),i+=l}return n}function x$(e,t,r){var n=_Ze(t)[0];if(n!==void 0){var i=n.rowBlocks,a=n.calcdata,o=m$(i,i.length),s=n.calcdata.groupHeight-g$(n),l=a.scrollY=Math.max(0,Math.min(o-s,a.scrollY)),u=uKt(i,l,s);u.length===1&&(u[0]===i.length-1?u.unshift(u[0]-1):u.push(u[0]+1)),u[0]%2&&u.reverse(),t.each(function(c,f){c.page=u[f],c.scrollY=l}),t.attr("transform",function(c){var f=m$(c.rowBlocks,c.page)-c.scrollY;return og(0,f)}),e&&(mZe(e,r,t,u,n.prevPages,n,0),mZe(e,r,t,u,n.prevPages,n,1),nC(r,e))}}function B7(e,t,r,n){return function(a){var o=a.calcdata?a.calcdata:a,s=t.filter(function(f){return o.key===f.key}),l=r||o.scrollbarState.dragMultiplier,u=o.scrollY;o.scrollY=n===void 0?o.scrollY+l*tf.event.dy:n;var c=s.selectAll("."+Ya.cn.yColumn).selectAll("."+Ya.cn.columnBlock).filter(_$);return x$(e,c,s),o.scrollY===u}}function mZe(e,t,r,n,i,a,o){var s=n[o]!==i[o];s&&(clearTimeout(a.currentRepaint[o]),a.currentRepaint[o]=setTimeout(function(){var l=r.filter(function(u,c){return c===o&&n[c]!==i[c]});p$(e,t,l,r),i[o]=n[o]}))}function cKt(e,t,r,n){return function(){var a=tf.select(t.parentNode);a.each(function(o){var s=o.fragments;a.selectAll("tspan.line").each(function(_,b){s[b].width=this.getComputedTextLength()});var l=s[s.length-1].width,u=s.slice(0,-1),c=[],f,h,d=0,v=o.column.columnWidth-2*Ya.cellPad;for(o.value="";u.length;)f=u.shift(),h=f.width+l,d+h>v&&(o.value+=c.join(Ya.wrapSpacer)+Ya.lineBreaker,c=[],d=0),c.push(f.text),d+=h;d&&(o.value+=c.join(Ya.wrapSpacer)),o.wrapped=!0}),a.selectAll("tspan.line").remove(),xZe(a.select("."+Ya.cn.cellText),r,e,n),tf.select(t.parentNode.parentNode).call(b$)}}function fKt(e,t,r,n,i){return function(){if(!i.settledY){var o=tf.select(t.parentNode),s=y$(i),l=i.key-s.firstRowIndex,u=s.rows[l].rowHeight,c=i.cellHeightMayIncrease?t.parentNode.getBoundingClientRect().height+2*Ya.cellPad:u,f=Math.max(c,u),h=f-s.rows[l].rowHeight;h&&(s.rows[l].rowHeight=f,e.selectAll("."+Ya.cn.columnCell).call(b$),x$(null,e.filter(_$),0),nC(r,n,!0)),o.attr("transform",function(){var d=this,v=d.parentNode,_=v.getBoundingClientRect(),b=tf.select(d.parentNode).select("."+Ya.cn.cellRect).node().getBoundingClientRect(),p=d.transform.baseVal.consolidate(),k=b.top-_.top+(p?p.matrix.f:Ya.cellPad);return og(bZe(i,tf.select(d.parentNode).select("."+Ya.cn.cellTextHolder).node().getBoundingClientRect().width),k)}),i.settledY=!0}}}function bZe(e,t){switch(e.align){case"left":return Ya.cellPad;case"right":return e.column.columnWidth-(t||0)-Ya.cellPad;case"center":return(e.column.columnWidth-(t||0))/2;default:return Ya.cellPad}}function b$(e){e.attr("transform",function(t){var r=t.rowBlocks[0].auxiliaryBlocks.reduce(function(o,s){return o+N7(s,1/0)},0),n=y$(t),i=N7(n,t.key),a=i+r;return og(0,a)}).selectAll("."+Ya.cn.cellRect).attr("height",function(t){return dKt(y$(t),t.key).rowHeight})}function m$(e,t){for(var r=0,n=t-1;n>=0;n--)r+=hKt(e[n]);return r}function N7(e,t){for(var r=0,n=0;n{"use strict";var vKt=Id().getModuleCalcData,pKt=w$(),U7="table";V7.name=U7;V7.plot=function(e){var t=vKt(e.calcdata,U7)[0];t.length&&pKt(e,t)};V7.clean=function(e,t,r,n){var i=n._has&&n._has(U7),a=t._has&&t._has(U7);i&&!a&&n._paperdiv.selectAll(".table").remove()}});var SZe=ye((A2r,AZe)=>{"use strict";AZe.exports={attributes:o$(),supplyDefaults:$Xe(),calc:eZe(),plot:w$(),moduleType:"trace",name:"table",basePlotModule:TZe(),categories:["noOpacity"],meta:{}}});var EZe=ye((S2r,MZe)=>{"use strict";MZe.exports=SZe()});var IZe=ye((M2r,PZe)=>{"use strict";var kZe=ec(),CZe=Lh(),T$=Rd(),gKt=df().descriptionWithDates,mKt=mc().overrideAll,LZe=Pd().dash,A$=Ao().extendFlat;PZe.exports={color:{valType:"color",editType:"calc"},smoothing:{valType:"number",dflt:1,min:0,max:1.3,editType:"calc"},title:{text:{valType:"string",dflt:"",editType:"calc"},font:kZe({editType:"calc"}),offset:{valType:"number",dflt:10,editType:"calc"},editType:"calc"},type:{valType:"enumerated",values:["-","linear","date","category"],dflt:"-",editType:"calc"},autotypenumbers:T$.autotypenumbers,autorange:{valType:"enumerated",values:[!0,!1,"reversed"],dflt:!0,editType:"calc"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"calc"},range:{valType:"info_array",editType:"calc",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}]},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},cheatertype:{valType:"enumerated",values:["index","value"],dflt:"value",editType:"calc"},tickmode:{valType:"enumerated",values:["linear","array"],dflt:"array",editType:"calc"},nticks:{valType:"integer",min:0,dflt:0,editType:"calc"},tickvals:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},showticklabels:{valType:"enumerated",values:["start","end","both","none"],dflt:"start",editType:"calc"},labelalias:A$({},T$.labelalias,{editType:"calc"}),tickfont:kZe({editType:"calc"}),tickangle:{valType:"angle",dflt:"auto",editType:"calc"},tickprefix:{valType:"string",dflt:"",editType:"calc"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},ticksuffix:{valType:"string",dflt:"",editType:"calc"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B","SI extended"],dflt:"B",editType:"calc"},minexponent:{valType:"number",dflt:3,min:0,editType:"calc"},separatethousands:{valType:"boolean",dflt:!1,editType:"calc"},tickformat:{valType:"string",dflt:"",editType:"calc",description:gKt("tick label")},tickformatstops:mKt(T$.tickformatstops,"calc","from-root"),categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},labelpadding:{valType:"integer",dflt:10,editType:"calc"},labelprefix:{valType:"string",editType:"calc"},labelsuffix:{valType:"string",dflt:"",editType:"calc"},showline:{valType:"boolean",dflt:!1,editType:"calc"},linecolor:{valType:"color",dflt:CZe.defaultLine,editType:"calc"},linewidth:{valType:"number",min:0,dflt:1,editType:"calc"},gridcolor:{valType:"color",editType:"calc"},gridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},griddash:A$({},LZe,{editType:"calc"}),showgrid:{valType:"boolean",dflt:!0,editType:"calc"},minorgridcount:{valType:"integer",min:0,dflt:0,editType:"calc"},minorgridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},minorgriddash:A$({},LZe,{editType:"calc"}),minorgridcolor:{valType:"color",dflt:CZe.lightLine,editType:"calc"},startline:{valType:"boolean",editType:"calc"},startlinecolor:{valType:"color",editType:"calc"},startlinewidth:{valType:"number",dflt:1,editType:"calc"},endline:{valType:"boolean",editType:"calc"},endlinewidth:{valType:"number",dflt:1,editType:"calc"},endlinecolor:{valType:"color",editType:"calc"},tick0:{valType:"number",min:0,dflt:0,editType:"calc"},dtick:{valType:"number",min:0,dflt:1,editType:"calc"},arraytick0:{valType:"integer",min:0,dflt:0,editType:"calc"},arraydtick:{valType:"integer",min:1,dflt:1,editType:"calc"},editType:"calc"}});var H7=ye((E2r,FZe)=>{"use strict";var yKt=ec(),RZe=IZe(),DZe=Lh(),G7=yKt({editType:"calc"}),_Kt=pf().zorder;G7.family.dflt='"Open Sans", verdana, arial, sans-serif';G7.size.dflt=12;G7.color.dflt=DZe.defaultLine;FZe.exports={carpet:{valType:"string",editType:"calc"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},a:{valType:"data_array",editType:"calc"},a0:{valType:"number",dflt:0,editType:"calc"},da:{valType:"number",dflt:1,editType:"calc"},b:{valType:"data_array",editType:"calc"},b0:{valType:"number",dflt:0,editType:"calc"},db:{valType:"number",dflt:1,editType:"calc"},cheaterslope:{valType:"number",dflt:1,editType:"calc"},aaxis:RZe,baxis:RZe,font:G7,color:{valType:"color",dflt:DZe.defaultLine,editType:"plot"},zorder:_Kt}});var qZe=ye((k2r,OZe)=>{"use strict";var zZe=Dr().isArray1D;OZe.exports=function(t,r,n){var i=n("x"),a=i&&i.length,o=n("y"),s=o&&o.length;if(!a&&!s)return!1;if(r._cheater=!i,(!a||zZe(i))&&(!s||zZe(o))){var l=a?i.length:1/0;s&&(l=Math.min(l,o.length)),r.a&&r.a.length&&(l=Math.min(l,r.a.length)),r.b&&r.b.length&&(l=Math.min(l,r.b.length)),r._length=l}else r._length=null;return!0}});var UZe=ye((C2r,NZe)=>{"use strict";var xKt=H7(),BZe=ka().addOpacity,bKt=qa(),aC=Dr(),wKt=bb(),TKt=e_(),AKt=t_(),SKt=oI(),MKt=ym(),EKt=R3();NZe.exports=function(t,r,n){var i=n.letter,a=n.font||{},o=xKt[i+"axis"];function s(g,P){return aC.coerce(t,r,o,g,P)}function l(g,P){return aC.coerce2(t,r,o,g,P)}n.name&&(r._name=n.name,r._id=n.name),s("autotypenumbers",n.autotypenumbersDflt);var u=s("type");if(u==="-"&&(n.data&&kKt(r,n.data),r.type==="-"?r.type="linear":u=t.type=r.type),s("smoothing"),s("cheatertype"),s("showticklabels"),s("labelprefix",i+" = "),s("labelsuffix"),s("showtickprefix"),s("showticksuffix"),s("separatethousands"),s("tickformat"),s("exponentformat"),s("minexponent"),s("showexponent"),s("categoryorder"),s("tickmode"),s("tickvals"),s("ticktext"),s("tick0"),s("dtick"),r.tickmode==="array"&&(s("arraytick0"),s("arraydtick")),s("labelpadding"),r._hovertitle=i,u==="date"){var c=bKt.getComponentMethod("calendars","handleDefaults");c(t,r,"calendar",n.calendar)}MKt(r,n.fullLayout),r.c2p=aC.identity;var f=s("color",n.dfltColor),h=f===t.color?f:a.color,d=s("title.text");d&&(aC.coerceFont(s,"title.font",a,{overrideDflt:{size:aC.bigFont(a.size),color:h}}),s("title.offset")),s("tickangle");var v=s("autorange",!r.isValidRange(t.range));v&&s("rangemode"),s("range"),r.cleanRange(),s("fixedrange"),wKt(t,r,s,u),AKt(t,r,s,u,n),TKt(t,r,s,u,n),SKt(t,r,s,{data:n.data,dataAttr:i});var _=l("gridcolor",BZe(f,.3)),b=l("gridwidth"),p=l("griddash"),k=s("showgrid");k||(delete r.gridcolor,delete r.gridwidth,delete r.griddash);var E=l("startlinecolor",f),S=l("startlinewidth",b),L=s("startline",r.showgrid||!!E||!!S);L||(delete r.startlinecolor,delete r.startlinewidth);var x=l("endlinecolor",f),C=l("endlinewidth",b),M=s("endline",r.showgrid||!!x||!!C);return M||(delete r.endlinecolor,delete r.endlinewidth),k?(s("minorgridcount"),s("minorgridwidth",b),s("minorgriddash",p),s("minorgridcolor",BZe(_,.06)),r.minorgridcount||(delete r.minorgridwidth,delete r.minorgriddash,delete r.minorgridcolor)):(delete r.gridcolor,delete r.gridwidth,delete r.griddash),r.showticklabels==="none"&&(delete r.tickfont,delete r.tickangle,delete r.showexponent,delete r.exponentformat,delete r.minexponent,delete r.tickformat,delete r.showticksuffix,delete r.showtickprefix),r.showticksuffix||delete r.ticksuffix,r.showtickprefix||delete r.tickprefix,s("tickmode"),r};function kKt(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i=n+"calendar",a=e[i];e.type=EKt(t,a,{autotypenumbers:e.autotypenumbers})}}});var GZe=ye((L2r,VZe)=>{"use strict";var CKt=UZe(),LKt=vl();VZe.exports=function(t,r,n,i,a){var o=i("a");o||(i("da"),i("a0"));var s=i("b");s||(i("db"),i("b0")),PKt(t,r,n,a)};function PKt(e,t,r,n){var i=["aaxis","baxis"];i.forEach(function(a){var o=a.charAt(0),s=e[a]||{},l=LKt.newContainer(t,a),u={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,tickfont:"x",id:o+"axis",letter:o,font:t.font,name:a,data:e[o],calendar:t.calendar,dfltColor:n,bgColor:r.paper_bgcolor,autotypenumbersDflt:r.autotypenumbers,fullLayout:r};CKt(s,l,u),l._categories=l._categories||[],!e[a]&&s.type!=="-"&&(e[a]={type:s.type})})}});var WZe=ye((P2r,jZe)=>{"use strict";var HZe=Dr(),IKt=qZe(),RKt=GZe(),DKt=H7(),FKt=Lh();jZe.exports=function(t,r,n,i){function a(l,u){return HZe.coerce(t,r,DKt,l,u)}r._clipPathId="clip"+r.uid+"carpet";var o=a("color",FKt.defaultLine);if(HZe.coerceFont(a,"font",i.font),a("carpet"),RKt(t,r,i,a,o),!r.a||!r.b){r.visible=!1;return}r.a.length<3&&(r.aaxis.smoothing=0),r.b.length<3&&(r.baxis.smoothing=0);var s=IKt(t,r,a);s||(r.visible=!1),r._cheater&&a("cheaterslope"),a("zorder")}});var S$=ye((I2r,XZe)=>{"use strict";var zKt=Dr().isArrayOrTypedArray;XZe.exports=function(t,r,n){var i;for(zKt(t)?t.length>r.length&&(t=t.slice(0,r.length)):t=[],i=0;i{"use strict";ZZe.exports=function(t,r,n){if(t.length===0)return"";var i,a=[],o=n?3:1;for(i=0;i{"use strict";YZe.exports=function(t,r,n,i,a,o){var s=a[0]*t.dpdx(r),l=a[1]*t.dpdy(n),u=1,c=1;if(o){var f=Math.sqrt(a[0]*a[0]+a[1]*a[1]),h=Math.sqrt(o[0]*o[0]+o[1]*o[1]),d=(a[0]*o[0]+a[1]*o[1])/f/h;c=Math.max(0,d)}var v=Math.atan2(l,s)*180/Math.PI;return v<-90?(v+=180,u=-u):v>90&&(v-=180,u=-u),{angle:v,flip:u,p:t.c2p(i,r,n),offsetMultplier:c}}});var nYe=ye((F2r,iYe)=>{"use strict";var Z7=Oa(),j7=So(),W7=S$(),QZe=M$(),oC=KZe(),E$=ru(),Up=Dr(),eYe=Up.strRotate,X7=Up.strTranslate,tYe=$h();iYe.exports=function(t,r,n,i){var a=t._context.staticPlot,o=r.xaxis,s=r.yaxis,l=t._fullLayout,u=l._clips;Up.makeTraceGroups(i,n,"trace").each(function(c){var f=Z7.select(this),h=c[0],d=h.trace,v=d.aaxis,_=d.baxis,b=Up.ensureSingle(f,"g","minorlayer"),p=Up.ensureSingle(f,"g","majorlayer"),k=Up.ensureSingle(f,"g","boundarylayer"),E=Up.ensureSingle(f,"g","labellayer");f.style("opacity",d.opacity),B5(o,s,p,v,"a",v._gridlines,!0,a),B5(o,s,p,_,"b",_._gridlines,!0,a),B5(o,s,b,v,"a",v._minorgridlines,!0,a),B5(o,s,b,_,"b",_._minorgridlines,!0,a),B5(o,s,k,v,"a-boundary",v._boundarylines,a),B5(o,s,k,_,"b-boundary",_._boundarylines,a);var S=JZe(t,o,s,d,h,E,v._labels,"a-label"),L=JZe(t,o,s,d,h,E,_._labels,"b-label");qKt(t,E,d,h,o,s,S,L),OKt(d,h,u,o,s)})};function OKt(e,t,r,n,i){var a,o,s,l,u=r.select("#"+e._clipPathId);u.size()||(u=r.append("clipPath").classed("carpetclip",!0));var c=Up.ensureSingle(u,"path","carpetboundary"),f=t.clipsegments,h=[];for(l=0;l0?"start":"end","data-notex":1}).call(j7.font,f.font).text(f.text).call(E$.convertToTspans,e),p=j7.bBox(this);b.attr("transform",X7(d.p[0],d.p[1])+eYe(d.angle)+X7(f.axis.labelpadding*_,p.height*.3)),u=Math.max(u,p.width+f.axis.labelpadding)}),l.exit().remove(),c.maxExtent=u,c}function qKt(e,t,r,n,i,a,o,s){var l,u,c,f,h=Up.aggNums(Math.min,null,r.a),d=Up.aggNums(Math.max,null,r.a),v=Up.aggNums(Math.min,null,r.b),_=Up.aggNums(Math.max,null,r.b);l=.5*(h+d),u=v,c=r.ab2xy(l,u,!0),f=r.dxyda_rough(l,u),o.angle===void 0&&Up.extendFlat(o,oC(r,i,a,c,r.dxydb_rough(l,u))),$Ze(e,t,r,n,c,f,r.aaxis,i,a,o,"a-title"),l=h,u=.5*(v+_),c=r.ab2xy(l,u,!0),f=r.dxydb_rough(l,u),s.angle===void 0&&Up.extendFlat(s,oC(r,i,a,c,r.dxyda_rough(l,u))),$Ze(e,t,r,n,c,f,r.baxis,i,a,s,"b-title")}var rYe=tYe.LINE_SPACING,BKt=(1-tYe.MID_SHIFT)/rYe+1;function $Ze(e,t,r,n,i,a,o,s,l,u,c){var f=[];o.title.text&&f.push(o.title.text);var h=t.selectAll("text."+c).data(f),d=u.maxExtent;h.enter().append("text").classed(c,!0),h.each(function(){var v=oC(r,s,l,i,a);["start","both"].indexOf(o.showticklabels)===-1&&(d=0);var _=o.title.font.size;d+=_+o.title.offset;var b=u.angle+(u.flip<0?180:0),p=(b-v.angle+450)%360,k=p>90&&p<270,E=Z7.select(this);E.text(o.title.text).call(E$.convertToTspans,e),k&&(d=(-E$.lineCount(E)+BKt)*rYe*_-d),E.attr("transform",X7(v.p[0],v.p[1])+eYe(v.angle)+X7(0,d)).attr("text-anchor","middle").call(j7.font,o.title.font)}),h.exit().remove()}});var oYe=ye((z2r,aYe)=>{"use strict";var Y7=Dr().isArrayOrTypedArray;aYe.exports=function(e,t,r){var n,i,a,o,s,l,u=[],c=Y7(e)?e.length:e,f=Y7(t)?t.length:t,h=Y7(e)?e:null,d=Y7(t)?t:null;h&&(a=(h.length-1)/(h[h.length-1]-h[0])/(c-1)),d&&(o=(d.length-1)/(d[d.length-1]-d[0])/(f-1));var v,_=1/0,b=-1/0;for(i=0;i{"use strict";var sYe=Dr().isArrayOrTypedArray;uYe.exports=function(e){return lYe(e,0)};function lYe(e,t){if(!sYe(e)||t>=10)return null;for(var r=1/0,n=-1/0,i=e.length,a=0;a{"use strict";var NKt=ho(),kx=Ao().extendFlat;fYe.exports=function(t,r,n){var i,a,o,s,l,u,c,f,h,d,v,_,b,p,k=t["_"+r],E=t[r+"axis"],S=E._gridlines=[],L=E._minorgridlines=[],x=E._boundarylines=[],C=t["_"+n],M=t[n+"axis"];E.tickmode==="array"&&(E.tickvals=k.slice());var g=t._xctrl,P=t._yctrl,T=g[0].length,z=g.length,O=t._a.length,V=t._b.length;NKt.prepTicks(E),E.tickmode==="array"&&delete E.tickvals;var G=E.smoothing?3:1;function Z(N){var H,te,oe,_e,Ee,Ce,me,ie,Se,Le,Ae,Fe,Pe=[],ge=[],Re={};if(r==="b")for(te=t.b2j(N),oe=Math.floor(Math.max(0,Math.min(V-2,te))),_e=te-oe,Re.length=V,Re.crossLength=O,Re.xy=function(ce){return t.evalxy([],ce,te)},Re.dxy=function(ce,Ze){return t.dxydi([],ce,oe,Ze,_e)},H=0;H0&&(Se=t.dxydi([],H-1,oe,0,_e),Pe.push(Ee[0]+Se[0]/3),ge.push(Ee[1]+Se[1]/3),Le=t.dxydi([],H-1,oe,1,_e),Pe.push(ie[0]-Le[0]/3),ge.push(ie[1]-Le[1]/3)),Pe.push(ie[0]),ge.push(ie[1]),Ee=ie;else for(H=t.a2i(N),Ce=Math.floor(Math.max(0,Math.min(O-2,H))),me=H-Ce,Re.length=O,Re.crossLength=V,Re.xy=function(ce){return t.evalxy([],H,ce)},Re.dxy=function(ce,Ze){return t.dxydj([],Ce,ce,me,Ze)},te=0;te0&&(Ae=t.dxydj([],Ce,te-1,me,0),Pe.push(Ee[0]+Ae[0]/3),ge.push(Ee[1]+Ae[1]/3),Fe=t.dxydj([],Ce,te-1,me,1),Pe.push(ie[0]-Fe[0]/3),ge.push(ie[1]-Fe[1]/3)),Pe.push(ie[0]),ge.push(ie[1]),Ee=ie;return Re.axisLetter=r,Re.axis=E,Re.crossAxis=M,Re.value=N,Re.constvar=n,Re.index=f,Re.x=Pe,Re.y=ge,Re.smoothing=M.smoothing,Re}function j(N){var H,te,oe,_e,Ee,Ce=[],me=[],ie={};if(ie.length=k.length,ie.crossLength=C.length,r==="b")for(oe=Math.max(0,Math.min(V-2,N)),Ee=Math.min(1,Math.max(0,N-oe)),ie.xy=function(Se){return t.evalxy([],Se,N)},ie.dxy=function(Se,Le){return t.dxydi([],Se,oe,Le,Ee)},H=0;Hk.length-1)&&S.push(kx(j(a),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(f=u;fk.length-1)&&!(v<0||v>k.length-1))for(_=k[o],b=k[v],i=0;ik[k.length-1])&&L.push(kx(Z(d),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash})));E.startline&&x.push(kx(j(0),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&x.push(kx(j(k.length-1),{color:E.endlinecolor,width:E.endlinewidth}))}else{for(s=5e-15,l=[Math.floor((k[k.length-1]-E.tick0)/E.dtick*(1+s)),Math.ceil((k[0]-E.tick0)/E.dtick/(1+s))].sort(function(N,H){return N-H}),u=l[0],c=l[1],f=u;f<=c;f++)h=E.tick0+E.dtick*f,S.push(kx(Z(h),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(f=u-1;fk[k.length-1])&&L.push(kx(Z(d),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash}));E.startline&&x.push(kx(Z(k[0]),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&x.push(kx(Z(k[k.length-1]),{color:E.endlinecolor,width:E.endlinewidth}))}}});var gYe=ye((B2r,pYe)=>{"use strict";var dYe=ho(),vYe=Ao().extendFlat;pYe.exports=function(t,r){var n,i,a,o,s,l=r._labels=[],u=r._gridlines;for(n=0;n{"use strict";mYe.exports=function(t,r,n,i){var a,o,s,l=[],u=!!n.smoothing,c=!!i.smoothing,f=t[0].length-1,h=t.length-1;for(a=0,o=[],s=[];a<=f;a++)o[a]=t[0][a],s[a]=r[0][a];for(l.push({x:o,y:s,bicubic:u}),a=0,o=[],s=[];a<=h;a++)o[a]=t[a][f],s[a]=r[a][f];for(l.push({x:o,y:s,bicubic:c}),a=f,o=[],s=[];a>=0;a--)o[f-a]=t[h][a],s[f-a]=r[h][a];for(l.push({x:o,y:s,bicubic:u}),a=h,o=[],s=[];a>=0;a--)o[h-a]=t[a][0],s[h-a]=r[a][0];return l.push({x:o,y:s,bicubic:c}),l}});var xYe=ye((U2r,_Ye)=>{"use strict";var UKt=Dr();_Ye.exports=function(t,r,n){var i,a,o,s=[],l=[],u=t[0].length,c=t.length;function f(oe,_e){var Ee=0,Ce,me=0;return oe>0&&(Ce=t[_e][oe-1])!==void 0&&(me++,Ee+=Ce),oe0&&(Ce=t[_e-1][oe])!==void 0&&(me++,Ee+=Ce),_e0&&a0&&iM);return UKt.log("Smoother converged to",g,"after",T,"iterations"),t}});var wYe=ye((V2r,bYe)=>{"use strict";bYe.exports={RELATIVE_CULL_TOLERANCE:1e-6}});var SYe=ye((G2r,AYe)=>{"use strict";var TYe=.5;AYe.exports=function(t,r,n,i){var a=t[0]-r[0],o=t[1]-r[1],s=n[0]-r[0],l=n[1]-r[1],u=Math.pow(a*a+o*o,TYe/2),c=Math.pow(s*s+l*l,TYe/2),f=(c*c*a-u*u*s)*i,h=(c*c*o-u*u*l)*i,d=c*(u+c)*3,v=u*(u+c)*3;return[[r[0]+(d&&f/d),r[1]+(d&&h/d)],[r[0]-(v&&f/v),r[1]-(v&&h/v)]]}});var EYe=ye((H2r,MYe)=>{"use strict";var k$=SYe(),K7=Dr().ensureArray;function N5(e,t,r){var n=-.5*r[0]+1.5*t[0],i=-.5*r[1]+1.5*t[1];return[(2*n+e[0])/3,(2*i+e[1])/3]}MYe.exports=function(t,r,n,i,a,o){var s,l,u,c,f,h,d,v,_,b,p=n[0].length,k=n.length,E=a?3*p-2:p,S=o?3*k-2:k;for(t=K7(t,S),r=K7(r,S),u=0;u{"use strict";kYe.exports=function(e,t,r,n,i){var a=t-2,o=r-2;return n&&i?function(s,l,u){s||(s=[]);var c,f,h,d,v,_,b=Math.max(0,Math.min(Math.floor(l),a)),p=Math.max(0,Math.min(Math.floor(u),o)),k=Math.max(0,Math.min(1,l-b)),E=Math.max(0,Math.min(1,u-p));b*=3,p*=3;var S=k*k,L=S*k,x=1-k,C=x*x,M=C*x,g=E*E,P=g*E,T=1-E,z=T*T,O=z*T;for(_=0;_{"use strict";LYe.exports=function(e,t,r){return t&&r?function(n,i,a,o,s){n||(n=[]);var l,u,c,f,h,d;i*=3,a*=3;var v=o*o,_=1-o,b=_*_,p=_*o*2,k=-3*b,E=3*(b-p),S=3*(p-v),L=3*v,x=s*s,C=x*s,M=1-s,g=M*M,P=g*M;for(d=0;d{"use strict";IYe.exports=function(e,t,r){return t&&r?function(n,i,a,o,s){n||(n=[]);var l,u,c,f,h,d;i*=3,a*=3;var v=o*o,_=v*o,b=1-o,p=b*b,k=p*b,E=s*s,S=1-s,L=S*S,x=S*s*2,C=-3*L,M=3*(L-x),g=3*(x-E),P=3*E;for(d=0;d{"use strict";var DYe=wYe(),FYe=R6().findBin,VKt=EYe(),GKt=CYe(),HKt=PYe(),jKt=RYe();zYe.exports=function(t){var r=t._a,n=t._b,i=r.length,a=n.length,o=t.aaxis,s=t.baxis,l=r[0],u=r[i-1],c=n[0],f=n[a-1],h=r[r.length-1]-r[0],d=n[n.length-1]-n[0],v=h*DYe.RELATIVE_CULL_TOLERANCE,_=d*DYe.RELATIVE_CULL_TOLERANCE;l-=v,u+=v,c-=_,f+=_,t.isVisible=function(b,p){return b>l&&bc&&pu||pf},t.setScale=function(){var b=t._x,p=t._y,k=VKt(t._xctrl,t._yctrl,b,p,o.smoothing,s.smoothing);t._xctrl=k[0],t._yctrl=k[1],t.evalxy=GKt([t._xctrl,t._yctrl],i,a,o.smoothing,s.smoothing),t.dxydi=HKt([t._xctrl,t._yctrl],o.smoothing,s.smoothing),t.dxydj=jKt([t._xctrl,t._yctrl],o.smoothing,s.smoothing)},t.i2a=function(b){var p=Math.max(0,Math.floor(b[0]),i-2),k=b[0]-p;return(1-k)*r[p]+k*r[p+1]},t.j2b=function(b){var p=Math.max(0,Math.floor(b[1]),i-2),k=b[1]-p;return(1-k)*n[p]+k*n[p+1]},t.ij2ab=function(b){return[t.i2a(b[0]),t.j2b(b[1])]},t.a2i=function(b){var p=Math.max(0,Math.min(FYe(b,r),i-2)),k=r[p],E=r[p+1];return Math.max(0,Math.min(i-1,p+(b-k)/(E-k)))},t.b2j=function(b){var p=Math.max(0,Math.min(FYe(b,n),a-2)),k=n[p],E=n[p+1];return Math.max(0,Math.min(a-1,p+(b-k)/(E-k)))},t.ab2ij=function(b){return[t.a2i(b[0]),t.b2j(b[1])]},t.i2c=function(b,p){return t.evalxy([],b,p)},t.ab2xy=function(b,p,k){if(!k&&(br[i-1]|pn[a-1]))return[!1,!1];var E=t.a2i(b),S=t.b2j(p),L=t.evalxy([],E,S);if(k){var x=0,C=0,M=[],g,P,T,z;br[i-1]?(g=i-2,P=1,x=(b-r[i-1])/(r[i-1]-r[i-2])):(g=Math.max(0,Math.min(i-2,Math.floor(E))),P=E-g),pn[a-1]?(T=a-2,z=1,C=(p-n[a-1])/(n[a-1]-n[a-2])):(T=Math.max(0,Math.min(a-2,Math.floor(S))),z=S-T),x&&(t.dxydi(M,g,T,P,z),L[0]+=M[0]*x,L[1]+=M[1]*x),C&&(t.dxydj(M,g,T,P,z),L[0]+=M[0]*C,L[1]+=M[1]*C)}return L},t.c2p=function(b,p,k){return[p.c2p(b[0]),k.c2p(b[1])]},t.p2x=function(b,p,k){return[p.p2c(b[0]),k.p2c(b[1])]},t.dadi=function(b){var p=Math.max(0,Math.min(r.length-2,b));return r[p+1]-r[p]},t.dbdj=function(b){var p=Math.max(0,Math.min(n.length-2,b));return n[p+1]-n[p]},t.dxyda=function(b,p,k,E){var S=t.dxydi(null,b,p,k,E),L=t.dadi(b,k);return[S[0]/L,S[1]/L]},t.dxydb=function(b,p,k,E){var S=t.dxydj(null,b,p,k,E),L=t.dbdj(p,E);return[S[0]/L,S[1]/L]},t.dxyda_rough=function(b,p,k){var E=h*(k||.1),S=t.ab2xy(b+E,p,!0),L=t.ab2xy(b-E,p,!0);return[(S[0]-L[0])*.5/E,(S[1]-L[1])*.5/E]},t.dxydb_rough=function(b,p,k){var E=d*(k||.1),S=t.ab2xy(b,p+E,!0),L=t.ab2xy(b,p-E,!0);return[(S[0]-L[0])*.5/E,(S[1]-L[1])*.5/E]},t.dpdx=function(b){return b._m},t.dpdy=function(b){return b._m}}});var jYe=ye((Y2r,HYe)=>{"use strict";var J7=ho(),qYe=Dr().isArray1D,WKt=oYe(),BYe=cYe(),NYe=hYe(),UYe=gYe(),XKt=yYe(),VYe=a8(),GYe=xYe(),ZKt=i8(),YKt=OYe();HYe.exports=function(t,r){var n=J7.getFromId(t,r.xaxis),i=J7.getFromId(t,r.yaxis),a=r.aaxis,o=r.baxis,s=r.x,l=r.y,u=[];s&&qYe(s)&&u.push("x"),l&&qYe(l)&&u.push("y"),u.length&&ZKt(r,a,o,"a","b",u);var c=r._a=r._a||r.a,f=r._b=r._b||r.b;s=r._x||r.x,l=r._y||r.y;var h={};if(r._cheater){var d=a.cheatertype==="index"?c.length:c,v=o.cheatertype==="index"?f.length:f;s=WKt(d,v,r.cheaterslope)}r._x=s=VYe(s),r._y=l=VYe(l),GYe(s,c,f),GYe(l,c,f),YKt(r),r.setScale();var _=BYe(s),b=BYe(l),p=.5*(_[1]-_[0]),k=.5*(_[1]+_[0]),E=.5*(b[1]-b[0]),S=.5*(b[1]+b[0]),L=1.3;return _=[k-p*L,k+p*L],b=[S-E*L,S+E*L],r._extremes[n._id]=J7.findExtremes(n,_,{padded:!0}),r._extremes[i._id]=J7.findExtremes(i,b,{padded:!0}),NYe(r,"a","b"),NYe(r,"b","a"),UYe(r,a),UYe(r,o),h.clipsegments=XKt(r._xctrl,r._yctrl,a,o),h.x=s,h.y=l,h.a=c,h.b=f,[h]}});var XYe=ye((K2r,WYe)=>{"use strict";WYe.exports={attributes:H7(),supplyDefaults:WZe(),plot:nYe(),calc:jYe(),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:ph(),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}});var YYe=ye((J2r,ZYe)=>{"use strict";ZYe.exports=XYe()});var C$=ye(($2r,$Ye)=>{"use strict";var KKt=Cg(),u0=pf(),JKt=Gl(),{hovertemplateAttrs:$Kt,texttemplateAttrs:QKt,templatefallbackAttrs:KYe}=Ll(),JYe=Tu(),Cx=Ao().extendFlat,sg=u0.marker,U5=u0.line,eJt=sg.line;$Ye.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:Cx({},u0.mode,{dflt:"markers"}),text:Cx({},u0.text,{}),texttemplate:QKt({editType:"plot"},{keys:["a","b","text"]}),texttemplatefallback:KYe({editType:"plot"}),hovertext:Cx({},u0.hovertext,{}),line:{color:U5.color,width:U5.width,dash:U5.dash,backoff:U5.backoff,shape:Cx({},U5.shape,{values:["linear","spline"]}),smoothing:U5.smoothing,editType:"calc"},connectgaps:u0.connectgaps,fill:Cx({},u0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:KKt(),marker:Cx({symbol:sg.symbol,opacity:sg.opacity,maxdisplayed:sg.maxdisplayed,angle:sg.angle,angleref:sg.angleref,standoff:sg.standoff,size:sg.size,sizeref:sg.sizeref,sizemin:sg.sizemin,sizemode:sg.sizemode,line:Cx({width:eJt.width,editType:"calc"},JYe("marker.line")),gradient:sg.gradient,editType:"calc"},JYe("marker")),textfont:u0.textfont,textposition:u0.textposition,selected:u0.selected,unselected:u0.unselected,hoverinfo:Cx({},JKt.hoverinfo,{flags:["a","b","text","name"]}),hoveron:u0.hoveron,hovertemplate:$Kt(),hovertemplatefallback:KYe(),zorder:u0.zorder}});var rKe=ye((Q2r,tKe)=>{"use strict";var QYe=Dr(),tJt=Sm(),V5=Ru(),rJt=$p(),iJt=R0(),eKe=tT(),nJt=D0(),aJt=Rg(),oJt=C$();tKe.exports=function(t,r,n,i){function a(h,d){return QYe.coerce(t,r,oJt,h,d)}a("carpet"),r.xaxis="x",r.yaxis="y";var o=a("a"),s=a("b"),l=Math.min(o.length,s.length);if(!l){r.visible=!1;return}r._length=l,a("text"),a("texttemplate"),a("texttemplatefallback"),a("hovertext");var u=l{"use strict";iKe.exports=function(t,r){var n={},i=r._carpet,a=i.ab2ij([t.a,t.b]),o=Math.floor(a[0]),s=a[0]-o,l=Math.floor(a[1]),u=a[1]-l,c=i.evalxy([],o,l,s,u);return n.yLabel=c[1].toFixed(3),n}});var $7=ye((twr,aKe)=>{"use strict";aKe.exports=function(e,t){for(var r=e._fullData.length,n,i=0;i{"use strict";var oKe=Eo(),sJt=F0(),lJt=km(),uJt=z0(),cJt=O0().calcMarkerSize,fJt=$7();sKe.exports=function(t,r){var n=r._carpetTrace=fJt(t,r);if(!(!n||!n.visible||n.visible==="legendonly")){var i;r.xaxis=n.xaxis,r.yaxis=n.yaxis;var a=r._length,o=new Array(a),s,l,u=!1;for(i=0;i{"use strict";var hJt=sT(),uKe=ho(),dJt=So();cKe.exports=function(t,r,n,i){var a,o,s,l=n[0][0].carpet,u=uKe.getFromId(t,l.xaxis||"x"),c=uKe.getFromId(t,l.yaxis||"y"),f={xaxis:u,yaxis:c,plot:r.plot};for(a=0;a{"use strict";var vJt=fT(),pJt=Dr().fillText;hKe.exports=function(t,r,n,i){var a=vJt(t,r,n,i);if(!a||a[0].index===!1)return;var o=a[0];if(o.index===void 0){var s=1-o.y0/t.ya._length,l=t.xa._length,u=l*s/2,c=l-u;return o.x0=Math.max(Math.min(o.x0,c),u),o.x1=Math.max(Math.min(o.x1,c),u),a}var f=o.cd[o.index];o.a=f.a,o.b=f.b,o.xLabelVal=void 0,o.yLabelVal=void 0;var h=o.trace,d=h._carpet,v=h._module.formatLabels(f,h);o.yLabel=v.yLabel,delete o.text;var _=[];function b(E,S){var L;E.labelprefix&&E.labelprefix.length>0?L=E.labelprefix.replace(/ = $/,""):L=E._hovertitle,_.push(L+": "+S.toFixed(3)+E.labelsuffix)}if(!h.hovertemplate){var p=f.hi||h.hoverinfo,k=p.split("+");k.indexOf("all")!==-1&&(k=["a","b","text"]),k.indexOf("a")!==-1&&b(d.aaxis,f.a),k.indexOf("b")!==-1&&b(d.baxis,f.b),_.push("y: "+o.yLabel),k.indexOf("text")!==-1&&pJt(f,h,_),o.extraText=_.join("
")}return a}});var pKe=ye((awr,vKe)=>{"use strict";vKe.exports=function(t,r,n,i,a){var o=i[a];return t.a=o.a,t.b=o.b,t.y=o.y,t}});var mKe=ye((owr,gKe)=>{"use strict";gKe.exports={attributes:C$(),supplyDefaults:rKe(),colorbar:$d(),formatLabels:nKe(),calc:lKe(),plot:fKe(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:dKe(),selectPoints:hT(),eventData:pKe(),moduleType:"trace",name:"scattercarpet",basePlotModule:ph(),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}});var _Ke=ye((swr,yKe)=>{"use strict";yKe.exports=mKe()});var L$=ye((lwr,xKe)=>{"use strict";var lg=PT(),g1=C4(),gJt=Tu(),mJt=Ao().extendFlat,ry=g1.contours;xKe.exports=mJt({carpet:{valType:"string",editType:"calc"},z:lg.z,a:lg.x,a0:lg.x0,da:lg.dx,b:lg.y,b0:lg.y0,db:lg.dy,text:lg.text,hovertext:lg.hovertext,transpose:lg.transpose,atype:lg.xtype,btype:lg.ytype,fillcolor:g1.fillcolor,autocontour:g1.autocontour,ncontours:g1.ncontours,contours:{type:ry.type,start:ry.start,end:ry.end,size:ry.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:ry.showlines,showlabels:ry.showlabels,labelfont:ry.labelfont,labelformat:ry.labelformat,operation:ry.operation,value:ry.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:g1.line.color,width:g1.line.width,dash:g1.line.dash,smoothing:g1.line.smoothing,editType:"plot"},zorder:g1.zorder},gJt("",{cLetter:"z",autoColorDflt:!1}))});var P$=ye((uwr,TKe)=>{"use strict";var bKe=Dr(),yJt=e8(),wKe=L$(),_Jt=MG(),xJt=A8(),bJt=S8();TKe.exports=function(t,r,n,i){function a(u,c){return bKe.coerce(t,r,wKe,u,c)}function o(u){return bKe.coerce2(t,r,wKe,u)}if(a("carpet"),t.a&&t.b){var s=yJt(t,r,a,i,"a","b");if(!s){r.visible=!1;return}a("text");var l=a("contours.type")==="constraint";l?_Jt(t,r,a,i,n,{hasHover:!1}):(xJt(t,r,a,o),bJt(t,r,a,i,{hasHover:!1}))}else r._defaultColor=n,r._length=null;a("zorder")}});var EKe=ye((cwr,MKe)=>{"use strict";var wJt=gv(),AKe=Dr(),TJt=i8(),AJt=a8(),SJt=o8(),MJt=s8(),SKe=YV(),EJt=P$(),kJt=$7(),CJt=vG();MKe.exports=function(t,r){var n=r._carpetTrace=kJt(t,r);if(!(!n||!n.visible||n.visible==="legendonly")){if(!r.a||!r.b){var i=t.data[n.index],a=t.data[r.index];a.a||(a.a=i.a),a.b||(a.b=i.b),EJt(a,r,r._defaultColor,t._fullLayout)}var o=LJt(t,r);return CJt(r,r._z),o}};function LJt(e,t){var r=t._carpetTrace,n=r.aaxis,i=r.baxis,a,o,s,l,u,c,f;n._minDtick=0,i._minDtick=0,AKe.isArray1D(t.z)&&TJt(t,n,i,"a","b",["z"]),a=t._a=t._a||t.a,l=t._b=t._b||t.b,a=a?n.makeCalcdata(t,"_a"):[],l=l?i.makeCalcdata(t,"_b"):[],o=t.a0||0,s=t.da||1,u=t.b0||0,c=t.db||1,f=t._z=AJt(t._z||t.z,t.transpose),t._emptypoints=MJt(f),SJt(f,t._emptypoints);var h=AKe.maxRowLength(f),d=t.xtype==="scaled"?"":a,v=SKe(t,d,o,s,h,n),_=t.ytype==="scaled"?"":l,b=SKe(t,_,u,c,f.length,i),p={a:v,b,z:f};return t.contours.type==="levels"&&t.contours.coloring!=="none"&&wJt(e,t,{vals:f,containerStr:"",cLetter:"z"}),[p]}});var CKe=ye((fwr,kKe)=>{"use strict";var PJt=Dr().isArrayOrTypedArray;kKe.exports=function(e,t,r,n){var i,a,o,s,l,u,c,f,h,d,v,_,b,p=PJt(r)?"a":"b",k=p==="a"?e.aaxis:e.baxis,E=k.smoothing,S=p==="a"?e.a2i:e.b2j,L=p==="a"?r:n,x=p==="a"?n:r,C=p==="a"?t.a.length:t.b.length,M=p==="a"?t.b.length:t.a.length,g=Math.floor(p==="a"?e.b2j(x):e.a2i(x)),P=p==="a"?function(_e){return e.evalxy([],_e,g)}:function(_e){return e.evalxy([],g,_e)};E&&(o=Math.max(0,Math.min(M-2,g)),s=g-o,a=p==="a"?function(_e,Ee){return e.dxydi([],_e,o,Ee,s)}:function(_e,Ee){return e.dxydj([],o,_e,s,Ee)});var T=S(L[0]),z=S(L[1]),O=T0?Math.floor:Math.ceil,Z=O>0?Math.ceil:Math.floor,j=O>0?Math.min:Math.max,N=O>0?Math.max:Math.min,H=G(T+V),te=Z(z-V);c=P(T);var oe=[[c]];for(i=H;i*O{"use strict";var e9=Oa(),t9=S$(),DKe=M$(),sC=So(),m1=Dr(),IJt=gG(),RJt=mG(),vw=k8(),Q7=P4(),DJt=bG(),FJt=xG(),zJt=wG(),OJt=$7(),LKe=CKe();FKe.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;m1.makeTraceGroups(i,n,"contour").each(function(s){var l=e9.select(this),u=s[0],c=u.trace,f=c._carpetTrace=OJt(t,c),h=t.calcdata[f.index][0];if(!f.visible||f.visible==="legendonly")return;var d=u.a,v=u.b,_=c.contours,b=FJt(_,r,u),p=_.type==="constraint",k=_._operation,E=p?k==="="?"lines":"fill":_.coloring;function S(G){var Z=f.ab2xy(G[0],G[1],!0);return[a.c2p(Z[0]),o.c2p(Z[1])]}var L=[[d[0],v[v.length-1]],[d[d.length-1],v[v.length-1]],[d[d.length-1],v[0]],[d[0],v[0]]];IJt(b);var x=(d[d.length-1]-d[0])*1e-8,C=(v[v.length-1]-v[0])*1e-8;RJt(b,x,C);var M=b;_.type==="constraint"&&(M=DJt(b,k)),qJt(b,S);var g,P,T,z,O=[];for(z=h.clipsegments.length-1;z>=0;z--)g=h.clipsegments[z],P=t9([],g.x,a.c2p),T=t9([],g.y,o.c2p),P.reverse(),T.reverse(),O.push(DKe(P,T,g.bicubic));var V="M"+O.join("L")+"Z";UJt(l,h.clipsegments,a,o,p,E),VJt(c,l,a,o,M,L,S,f,h,E,V),BJt(l,b,t,u,_,r,f),sC.setClipUrl(l,f._clipPathId,t)})};function qJt(e,t){var r,n,i,a,o,s,l,u,c;for(r=0;rb&&(n.max=b),n.len=n.max-n.min}function PKe(e,t,r){var n=e.getPointAtLength(t),i=e.getPointAtLength(r),a=i.x-n.x,o=i.y-n.y,s=Math.sqrt(a*a+o*o);return[a/s,o/s]}function IKe(e){var t=Math.sqrt(e[0]*e[0]+e[1]*e[1]);return[e[0]/t,e[1]/t]}function RKe(e,t){var r=Math.abs(e[0]*t[0]+e[1]*t[1]),n=Math.sqrt(1-r*r);return n/r}function UJt(e,t,r,n,i,a){var o,s,l,u,c=m1.ensureSingle(e,"g","contourbg"),f=c.selectAll("path").data(a==="fill"&&!i?[0]:[]);f.enter().append("path"),f.exit().remove();var h=[];for(u=0;u=0&&(d=P,_=b):Math.abs(h[1]-d[1])=0&&(d=P,_=b):m1.log("endpt to newendpt is not vert. or horz.",h,d,P)}if(_>=0)break;u+=M(h,d),h=d}if(_===t.edgepaths.length){m1.log("unclosed perimeter path");break}l=_,f=c.indexOf(l)===-1,f&&(l=c[0],u+=M(h,d)+"Z",h=null)}for(l=0;l{"use strict";OKe.exports={attributes:L$(),supplyDefaults:P$(),colorbar:P8(),calc:EKe(),plot:zKe(),style:L8(),moduleType:"trace",name:"contourcarpet",basePlotModule:ph(),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}});var NKe=ye((vwr,BKe)=>{"use strict";BKe.exports=qKe()});var i9=ye((pwr,jKe)=>{"use strict";var r9=Dr().extendFlat,lC=pf(),UKe=df().axisHoverFormat,{hovertemplateAttrs:HJt,templatefallbackAttrs:jJt}=Ll(),GKe=Pd().dash,WJt=a3(),HKe=XT(),XJt=HKe.INCREASING.COLOR,ZJt=HKe.DECREASING.COLOR,I$=lC.line;function VKe(e){return{line:{color:r9({},I$.color,{dflt:e}),width:I$.width,dash:GKe,editType:"style"},editType:"style"}}jKe.exports={xperiod:lC.xperiod,xperiod0:lC.xperiod0,xperiodalignment:lC.xperiodalignment,xhoverformat:UKe("x"),yhoverformat:UKe("y"),x:{valType:"data_array",editType:"calc+clearAxisTypes"},open:{valType:"data_array",editType:"calc"},high:{valType:"data_array",editType:"calc"},low:{valType:"data_array",editType:"calc"},close:{valType:"data_array",editType:"calc"},line:{width:r9({},I$.width,{}),dash:r9({},GKe,{}),editType:"style"},increasing:VKe(XJt),decreasing:VKe(ZJt),text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:HJt({},{keys:["open","high","low","close"]}),hovertemplatefallback:jJt(),tickwidth:{valType:"number",min:0,max:.5,dflt:.3,editType:"calc"},hoverlabel:r9({},WJt.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style"}}),zorder:lC.zorder}});var R$=ye((gwr,WKe)=>{"use strict";var YJt=qa(),KJt=Dr();WKe.exports=function(t,r,n,i){var a=n("x"),o=n("open"),s=n("high"),l=n("low"),u=n("close");n("hoverlabel.split");var c=YJt.getComponentMethod("calendars","handleTraceDefaults");if(c(t,r,["x"],i),!!(o&&s&&l&&u)){var f=Math.min(o.length,s.length,l.length,u.length);return a&&(f=Math.min(f,KJt.minRowLength(a))),r._length=f,f}}});var YKe=ye((mwr,ZKe)=>{"use strict";var JJt=Dr(),$Jt=R$(),QJt=Ig(),e$t=i9();ZKe.exports=function(t,r,n,i){function a(s,l){return JJt.coerce(t,r,e$t,s,l)}var o=$Jt(t,r,a,i);if(!o){r.visible=!1;return}QJt(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),a("line.dash"),XKe(t,r,a,"increasing"),XKe(t,r,a,"decreasing"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("tickwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function XKe(e,t,r,n){r(n+".line.color"),r(n+".line.width",t.line.width),r(n+".line.dash",t.line.dash)}});var D$=ye((ywr,JKe)=>{"use strict";var G5=Dr(),n9=G5._,a9=ho(),t$t=Dg(),uC=fs().BADNUM;function r$t(e,t){var r=a9.getFromId(e,t.xaxis),n=a9.getFromId(e,t.yaxis),i=n$t(e,r,t),a=t._minDiff;t._minDiff=null;var o=t._origX;t._origX=null;var s=t._xcalc;t._xcalc=null;var l=KKe(e,t,o,s,n,i$t);return t._extremes[r._id]=a9.findExtremes(r,s,{vpad:a/2}),l.length?(G5.extendFlat(l[0].t,{wHover:a/2,tickLen:i}),l):[{t:{empty:!0}}]}function i$t(e,t,r,n){return{o:e,h:t,l:r,c:n}}function KKe(e,t,r,n,i,a){for(var o=i.makeCalcdata(t,"open"),s=i.makeCalcdata(t,"high"),l=i.makeCalcdata(t,"low"),u=i.makeCalcdata(t,"close"),c=G5.isArrayOrTypedArray(t.text),f=G5.isArrayOrTypedArray(t.hovertext),h=!0,d=null,v=!!t.xperiodalignment,_=[],b=0;bd):h=L>k,d=L;var x=a(k,E,S,L);x.pos=p,x.yc=(k+L)/2,x.i=b,x.dir=h?"increasing":"decreasing",x.x=x.pos,x.y=[S,E],v&&(x.orig_p=r[b]),c&&(x.tx=t.text[b]),f&&(x.htx=t.hovertext[b]),_.push(x)}else _.push({pos:p,empty:!0})}return t._extremes[i._id]=a9.findExtremes(i,G5.concat(l,s),{padded:!0}),_.length&&(_[0].t={labels:{open:n9(e,"open:")+" ",high:n9(e,"high:")+" ",low:n9(e,"low:")+" ",close:n9(e,"close:")+" "}}),_}function n$t(e,t,r){var n=r._minDiff;if(!n){var i=e._fullData,a=[];n=1/0;var o;for(o=0;o{"use strict";var a$t=Oa(),$Ke=Dr();QKe.exports=function(t,r,n,i){var a=r.yaxis,o=r.xaxis,s=!!o.rangebreaks;$Ke.makeTraceGroups(i,n,"trace ohlc").each(function(l){var u=a$t.select(this),c=l[0],f=c.t,h=c.trace;if(h.visible!==!0||f.empty){u.remove();return}var d=f.tickLen,v=u.selectAll("path").data($Ke.identity);v.enter().append("path"),v.exit().remove(),v.attr("d",function(_){if(_.empty)return"M0,0Z";var b=o.c2p(_.pos-d,!0),p=o.c2p(_.pos+d,!0),k=s?(b+p)/2:o.c2p(_.pos,!0),E=a.c2p(_.o,!0),S=a.c2p(_.h,!0),L=a.c2p(_.l,!0),x=a.c2p(_.c,!0);return"M"+b+","+E+"H"+k+"M"+k+","+S+"V"+L+"M"+p+","+x+"H"+k})})}});var rJe=ye((xwr,tJe)=>{"use strict";var F$=Oa(),o$t=So(),s$t=ka();tJe.exports=function(t,r,n){var i=n||F$.select(t).selectAll("g.ohlclayer").selectAll("g.trace");i.style("opacity",function(a){return a[0].trace.opacity}),i.each(function(a){var o=a[0].trace;F$.select(this).selectAll("path").each(function(s){if(!s.empty){var l=o[s.dir].line;F$.select(this).style("fill","none").call(s$t.stroke,l.color).call(o$t.dashLine,l.dash,l.width).style("opacity",o.selectedpoints&&!s.selected?.3:1)}})})}});var O$=ye((bwr,sJe)=>{"use strict";var z$=ho(),l$t=Dr(),o9=vf(),u$t=ka(),c$t=Dr().fillText,iJe=XT(),f$t={increasing:iJe.INCREASING.SYMBOL,decreasing:iJe.DECREASING.SYMBOL};function h$t(e,t,r,n){var i=e.cd,a=i[0].trace;return a.hoverlabel.split?aJe(e,t,r,n):oJe(e,t,r,n)}function nJe(e,t,r,n){var i=e.cd,a=e.xa,o=i[0].trace,s=i[0].t,l=o.type,u=l==="ohlc"?"l":"min",c=l==="ohlc"?"h":"max",f,h,d=s.bPos||0,v=function(P){return P.pos+d-t},_=s.bdPos||s.tickLen,b=s.wHover,p=Math.min(1,_/Math.abs(a.r2c(a.range[1])-a.r2c(a.range[0])));f=e.maxHoverDistance-p,h=e.maxSpikeDistance-p;function k(P){var T=v(P);return o9.inbox(T-b,T+b,f)}function E(P){var T=P[u],z=P[c];return T===z||o9.inbox(T-r,z-r,f)}function S(P){return(k(P)+E(P))/2}var L=o9.getDistanceFunction(n,k,E,S);if(o9.getClosest(i,L,e),e.index===!1)return null;var x=i[e.index];if(x.empty)return null;var C=x.dir,M=o[C],g=M.line.color;return u$t.opacity(g)&&M.line.width?e.color=g:e.color=M.fillcolor,e.x0=a.c2p(x.pos+d-_,!0),e.x1=a.c2p(x.pos+d+_,!0),e.xLabelVal=x.orig_p!==void 0?x.orig_p:x.pos,e.spikeDistance=S(x)*h/f,e.xSpike=a.c2p(x.pos,!0),e}function aJe(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,l=[],u=nJe(e,t,r,n);if(!u)return[];var c=i[u.index],f=c.hi||o.hoverinfo||"";if(f==="none"||f==="skip")return[];for(var h=["high","open","close","low"],d={},v=0;v"+s.labels[_]+z$.hoverLabelText(a,b,o.yhoverformat)):(k=l$t.extendFlat({},u),k.y0=k.y1=p,k.yLabelVal=b,k.yLabel=s.labels[_]+z$.hoverLabelText(a,b,o.yhoverformat),k.name="",l.push(k),d[b]=k)}return l}function oJe(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,l=nJe(e,t,r,n);if(!l)return[];var u=l.index,c=i[u],f=l.index=c.i,h=c.dir;function d(S){return s.labels[S]+z$.hoverLabelText(a,o[S][f],o.yhoverformat)}var v=c.hi||o.hoverinfo||"",_=v.split("+"),b=v==="all",p=b||_.indexOf("y")!==-1,k=b||_.indexOf("text")!==-1,E=p?[d("open"),d("high"),d("low"),d("close")+" "+f$t[h]]:[];return k&&c$t(c,o,E),l.extraText=E.join("
"),l.y0=l.y1=a.c2p(c.yc,!0),[l]}sJe.exports={hoverPoints:h$t,hoverSplit:aJe,hoverOnPoints:oJe}});var q$=ye((wwr,lJe)=>{"use strict";lJe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l=n[0].t.bPos||0;if(r===!1)for(s=0;s{"use strict";uJe.exports={moduleType:"trace",name:"ohlc",basePlotModule:ph(),categories:["cartesian","svg","showLegend"],meta:{},attributes:i9(),supplyDefaults:YKe(),calc:D$().calc,plot:eJe(),style:rJe(),hoverPoints:O$().hoverPoints,selectPoints:q$()}});var hJe=ye((Awr,fJe)=>{"use strict";fJe.exports=cJe()});var N$=ye((Swr,pJe)=>{"use strict";var B$=Dr().extendFlat,dJe=df().axisHoverFormat,dp=i9(),H5=x4();function vJe(e){return{line:{color:B$({},H5.line.color,{dflt:e}),width:H5.line.width,editType:"style"},fillcolor:H5.fillcolor,editType:"style"}}pJe.exports={xperiod:dp.xperiod,xperiod0:dp.xperiod0,xperiodalignment:dp.xperiodalignment,xhoverformat:dJe("x"),yhoverformat:dJe("y"),x:dp.x,open:dp.open,high:dp.high,low:dp.low,close:dp.close,line:{width:B$({},H5.line.width,{}),editType:"style"},increasing:vJe(dp.increasing.line.color.dflt),decreasing:vJe(dp.decreasing.line.color.dflt),text:dp.text,hovertext:dp.hovertext,hovertemplate:dp.hovertemplate,hovertemplatefallback:dp.hovertemplatefallback,whiskerwidth:B$({},H5.whiskerwidth,{dflt:0}),hoverlabel:dp.hoverlabel,zorder:H5.zorder}});var yJe=ye((Mwr,mJe)=>{"use strict";var d$t=Dr(),v$t=ka(),p$t=R$(),g$t=Ig(),m$t=N$();mJe.exports=function(t,r,n,i){function a(s,l){return d$t.coerce(t,r,m$t,s,l)}var o=p$t(t,r,a,i);if(!o){r.visible=!1;return}g$t(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),gJe(t,r,a,"increasing"),gJe(t,r,a,"decreasing"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),a("whiskerwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function gJe(e,t,r,n){var i=r(n+".line.color");r(n+".line.width",t.line.width),r(n+".fillcolor",v$t.addOpacity(i,.5))}});var wJe=ye((Ewr,bJe)=>{"use strict";var _Je=Dr(),xJe=ho(),y$t=Dg(),_$t=D$().calcCommon;bJe.exports=function(e,t){var r=e._fullLayout,n=xJe.getFromId(e,t.xaxis),i=xJe.getFromId(e,t.yaxis),a=n.makeCalcdata(t,"x"),o=y$t(t,n,"x",a).vals,s=_$t(e,t,a,o,i,x$t);return s.length?(_Je.extendFlat(s[0].t,{num:r._numBoxes,dPos:_Je.distinctVals(o).minDiff/2,posLetter:"x",valLetter:"y"}),r._numBoxes++,s):[{t:{empty:!0}}]};function x$t(e,t,r,n){return{min:r,q1:Math.min(e,n),med:n,q3:Math.max(e,n),max:t}}});var AJe=ye((kwr,TJe)=>{"use strict";TJe.exports={moduleType:"trace",name:"candlestick",basePlotModule:ph(),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{},attributes:N$(),layoutAttributes:b4(),supplyLayoutDefaults:ZI().supplyLayoutDefaults,crossTraceCalc:KI().crossTraceCalc,supplyDefaults:yJe(),calc:wJe(),plot:JI().plot,layerName:"boxlayer",style:$I().style,hoverPoints:O$().hoverPoints,selectPoints:q$()}});var MJe=ye((Cwr,SJe)=>{"use strict";SJe.exports=AJe()});var V$=ye((Lwr,EJe)=>{"use strict";var l9=Dr(),b$t=ym(),s9=l9.deg2rad,U$=l9.rad2deg;EJe.exports=function(t,r,n){switch(b$t(t,n),t._id){case"x":case"radialaxis":w$t(t,r);break;case"angularaxis":S$t(t,r);break}};function w$t(e,t){var r=t._subplot;e.setGeometry=function(){var n=e._rl[0],i=e._rl[1],a=r.innerRadius,o=(r.radius-a)/(i-n),s=a/o,l=n>i?function(u){return u<=0}:function(u){return u>=0};e.c2g=function(u){var c=e.c2l(u)-n;return(l(c)?c:0)+s},e.g2c=function(u){return e.l2c(u+n-s)},e.g2p=function(u){return u*o},e.c2p=function(u){return e.g2p(e.c2g(u))}}}function T$t(e,t){return t==="degrees"?s9(e):e}function A$t(e,t){return t==="degrees"?U$(e):e}function S$t(e,t){var r=e.type;if(r==="linear"){var n=e.d2c,i=e.c2d;e.d2c=function(a,o){return T$t(n(a),o)},e.c2d=function(a,o){return i(A$t(a,o))}}e.makeCalcdata=function(a,o){var s=a[o],l=a._length,u,c,f=function(b){return e.d2c(b,a.thetaunit)};if(s)for(u=new Array(l),c=0;c{"use strict";kJe.exports={attr:"subplot",name:"polar",axisNames:["angularaxis","radialaxis"],axisName2dataArray:{angularaxis:"theta",radialaxis:"r"},layerNames:["draglayer","plotbg","backplot","angular-grid","radial-grid","frontplot","angular-line","radial-line","angular-axis","radial-axis"],radialDragBoxSize:50,angularDragBoxSize:30,cornerLen:25,cornerHalfWidth:2,MINDRAG:8,MINZOOM:20,OFFEDGE:20}});var f9=ye((Iwr,RJe)=>{"use strict";var pw=Dr(),CJe=kM().tester,G$=pw.findIndexOfMin,PJe=pw.isAngleInsideSector,M$t=pw.angleDelta,LJe=pw.angleDist;function E$t(e,t,r,n,i){if(!PJe(t,n))return!1;var a,o;r[0]0?o:1/0},n=G$(t,r),i=pw.mod(n+1,t.length);return[t[n],t[i]]}function c9(e){return Math.abs(e)>1e-10?e:0}function H$(e,t,r){t=t||0,r=r||0;for(var n=e.length,i=new Array(n),a=0;a{"use strict";function DJe(e){return e<0?-1:e>0?1:0}function W5(e){var t=e[0],r=e[1];if(!isFinite(t)||!isFinite(r))return[1,0];var n=(t+1)*(t+1)+r*r;return[(t*t+r*r-1)/n,2*r/n]}function X5(e,t){var r=t[0],n=t[1];return[r*e.radius+e.cx,-n*e.radius+e.cy]}function FJe(e,t){return t*e.radius}function F$t(e,t,r,n){var i=X5(e,W5([r,t])),a=i[0],o=i[1],s=X5(e,W5([n,t])),l=s[0],u=s[1];if(t===0)return["M"+a+","+o,"L"+l+","+u].join(" ");var c=FJe(e,1/Math.abs(t));return["M"+a+","+o,"A"+c+","+c+" 0 0,"+(t<0?1:0)+" "+l+","+u].join(" ")}function z$t(e,t,r,n){var i=FJe(e,1/(t+1)),a=X5(e,W5([t,r])),o=a[0],s=a[1],l=X5(e,W5([t,n])),u=l[0],c=l[1];if(DJe(r)!==DJe(n)){var f=X5(e,W5([t,0])),h=f[0],d=f[1];return["M"+o+","+s,"A"+i+","+i+" 0 0,"+(0{"use strict";var gw=Oa(),O$t=cd(),yw=qa(),Xc=Dr(),iy=Xc.strRotate,xd=Xc.strTranslate,W$=ka(),cC=So(),q$t=Mc(),vp=ho(),B$t=ym(),N$t=V$(),U$t=Ag().doAutoRange,y1=NN(),v9=yv(),OJe=vf(),V$t=Eb(),G$t=Of().prepSelect,H$t=Of().selectOnClick,X$=Of().clearOutline,qJe=Sg(),BJe=vM(),NJe=wM().redrawReglTraces,j$t=$h().MID_SHIFT,Lx=u9(),_1=f9(),p9=j$(),h9=p9.smith,W$t=p9.reactanceArc,X$t=p9.resistanceArc,d9=p9.smithTransform,Z$t=Xc._,UJe=Xc.mod,Px=Xc.deg2rad,mw=Xc.rad2deg;function VJe(e,t,r){this.isSmith=r||!1,this.id=t,this.gd=e,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var n=e._fullLayout,i="clip"+n._uid+t;this.clipIds.forTraces=i+"-for-traces",this.clipPaths.forTraces=n._clips.append("clipPath").attr("id",this.clipIds.forTraces),this.clipPaths.forTraces.append("path"),this.framework=n["_"+(r?"smith":"polar")+"layer"].append("g").attr("class",t),this.getHole=function(a){return this.isSmith?0:a.hole},this.getSector=function(a){return this.isSmith?[0,360]:a.sector},this.getRadial=function(a){return this.isSmith?a.realaxis:a.radialaxis},this.getAngular=function(a){return this.isSmith?a.imaginaryaxis:a.angularaxis},r||(this.radialTickLayout=null,this.angularTickLayout=null)}var Nd=VJe.prototype;jJe.exports=function(t,r,n){return new VJe(t,r,n)};Nd.plot=function(e,t){for(var r=this,n=t[r.id],i=!1,a=0;ab?(p=u,k=u*b,L=(c-k)/i.h/2,E=[s[0],s[1]],S=[l[0]+L,l[1]-L]):(p=c/b,k=c,L=(u-p)/i.w/2,E=[s[0]+L,s[1]-L],S=[l[0],l[1]]),r.xLength2=p,r.yLength2=k,r.xDomain2=E,r.yDomain2=S;var x=r.xOffset2=i.l+i.w*E[0],C=r.yOffset2=i.t+i.h*(1-S[1]),M=r.radius=p/d,g=r.innerRadius=r.getHole(t)*M,P=r.cx=x-M*h[0],T=r.cy=C+M*h[3],z=r.cxx=P-x,O=r.cyy=T-C,V=a.side,G;V==="counterclockwise"?(G=V,V="top"):V==="clockwise"&&(G=V,V="bottom"),r.radialAxis=r.mockAxis(e,t,a,{_id:"x",side:V,_trueSide:G,domain:[g/i.w,M/i.w]}),r.angularAxis=r.mockAxis(e,t,o,{side:"right",domain:[0,Math.PI],autorange:!1}),r.doAutoRange(e,t),r.updateAngularAxis(e,t),r.updateRadialAxis(e,t),r.updateRadialAxisTitle(e,t),r.xaxis=r.mockCartesianAxis(e,t,{_id:"x",domain:E}),r.yaxis=r.mockCartesianAxis(e,t,{_id:"y",domain:S});var Z=r.pathSubplot();r.clipPaths.forTraces.select("path").attr("d",Z).attr("transform",xd(z,O)),n.frontplot.attr("transform",xd(x,C)).call(cC.setClipUrl,r._hasClipOnAxisFalse?null:r.clipIds.forTraces,r.gd),n.bg.attr("d",Z).attr("transform",xd(P,T)).call(W$.fill,t.bgcolor)};Nd.mockAxis=function(e,t,r,n){var i=Xc.extendFlat({},r,n);return N$t(i,t,e),i};Nd.mockCartesianAxis=function(e,t,r){var n=this,i=n.isSmith,a=r._id,o=Xc.extendFlat({type:"linear"},r);B$t(o,e);var s={x:[0,2],y:[1,3]};return o.setRange=function(){var l=n.sectorBBox,u=s[a],c=n.radialAxis._rl,f=(c[1]-c[0])/(1-n.getHole(t));o.range=[l[u[0]]*f,l[u[1]]*f]},o.isPtWithinRange=a==="x"&&!i?function(l){return n.isPtInside(l)}:function(){return!0},o.setRange(),o.setScale(),o};Nd.doAutoRange=function(e,t){var r=this,n=r.gd,i=r.radialAxis,a=r.getRadial(t);U$t(n,i);var o=i.range;if(a.range=o.slice(),a._input.range=o.slice(),i._rl=[i.r2l(o[0],null,"gregorian"),i.r2l(o[1],null,"gregorian")],i.minallowed!==void 0){var s=i.r2l(i.minallowed);i._rl[0]>i._rl[1]?i._rl[1]=Math.max(i._rl[1],s):i._rl[0]=Math.max(i._rl[0],s)}if(i.maxallowed!==void 0){var l=i.r2l(i.maxallowed);i._rl[0]90&&c<=270&&(f.tickangle=180);var v=d?function(M){var g=d9(r,h9([M.x,0]));return xd(g[0]-s,g[1]-l)}:function(M){return xd(f.l2p(M.x)+o,0)},_=d?function(M){return X$t(r,M.x,-1/0,1/0)}:function(M){return r.pathArc(f.r2p(M.x)+o)},b=GJe(u);if(r.radialTickLayout!==b&&(i["radial-axis"].selectAll(".xtick").remove(),r.radialTickLayout=b),h){f.setScale();var p=0,k=d?(f.tickvals||[]).filter(function(M){return M>=0}).map(function(M){return vp.tickText(f,M,!0,!1)}):vp.calcTicks(f),E=d?k:vp.clipEnds(f,k),S=vp.getTickSigns(f)[2];d&&((f.ticks==="top"&&f.side==="bottom"||f.ticks==="bottom"&&f.side==="top")&&(S=-S),f.ticks==="top"&&f.side==="top"&&(p=-f.ticklen),f.ticks==="bottom"&&f.side==="bottom"&&(p=f.ticklen)),vp.drawTicks(n,f,{vals:k,layer:i["radial-axis"],path:vp.makeTickPath(f,0,S),transFn:v,crisp:!1}),vp.drawGrid(n,f,{vals:E,layer:i["radial-grid"],path:_,transFn:Xc.noop,crisp:!1}),vp.drawLabels(n,f,{vals:k,layer:i["radial-axis"],transFn:v,labelFns:vp.makeLabelFns(f,p)})}var L=r.radialAxisAngle=r.vangles?mw(HJe(Px(u.angle),r.vangles)):u.angle,x=xd(s,l),C=x+iy(-L);fC(i["radial-axis"],h&&(u.showticklabels||u.ticks),{transform:C}),fC(i["radial-grid"],h&&u.showgrid,{transform:d?"":x}),fC(i["radial-line"].select("line"),h&&u.showline,{x1:d?-a:o,y1:0,x2:a,y2:0,transform:C}).attr("stroke-width",u.linewidth).call(W$.stroke,u.linecolor)};Nd.updateRadialAxisTitle=function(e,t,r){if(!this.isSmith){var n=this,i=n.gd,a=n.radius,o=n.cx,s=n.cy,l=n.getRadial(t),u=n.id+"title",c=0;if(l.title){var f=cC.bBox(n.layers["radial-axis"].node()).height,h=l.title.font.size,d=l.side;c=d==="top"?h:d==="counterclockwise"?-(f+h*.4):f+h*.8}var v=r!==void 0?r:n.radialAxisAngle,_=Px(v),b=Math.cos(_),p=Math.sin(_),k=o+a/2*b+c*p,E=s-a/2*p+c*b;n.layers["radial-axis-title"]=V$t.draw(i,u,{propContainer:l,propName:n.id+".radialaxis.title.text",placeholder:Z$t(i,"Click to enter radial axis title"),attributes:{x:k,y:E,"text-anchor":"middle"},transform:{rotate:-v}})}};Nd.updateAngularAxis=function(e,t){var r=this,n=r.gd,i=r.layers,a=r.radius,o=r.innerRadius,s=r.cx,l=r.cy,u=r.getAngular(t),c=r.angularAxis,f=r.isSmith;f||(r.fillViewInitialKey("angularaxis.rotation",u.rotation),c.setGeometry(),c.setScale());var h=f?function(g){var P=d9(r,h9([0,g.x]));return Math.atan2(P[0]-s,P[1]-l)-Math.PI/2}:function(g){return c.t2g(g.x)};c.type==="linear"&&c.thetaunit==="radians"&&(c.tick0=mw(c.tick0),c.dtick=mw(c.dtick));var d=function(g){return xd(s+a*Math.cos(g),l-a*Math.sin(g))},v=f?function(g){var P=d9(r,h9([0,g.x]));return xd(P[0],P[1])}:function(g){return d(h(g))},_=f?function(g){var P=d9(r,h9([0,g.x])),T=Math.atan2(P[0]-s,P[1]-l)-Math.PI/2;return xd(P[0],P[1])+iy(-mw(T))}:function(g){var P=h(g);return d(P)+iy(-mw(P))},b=f?function(g){return W$t(r,g.x,0,1/0)}:function(g){var P=h(g),T=Math.cos(P),z=Math.sin(P);return"M"+[s+o*T,l-o*z]+"L"+[s+a*T,l-a*z]},p=vp.makeLabelFns(c,0),k=p.labelStandoff,E={};E.xFn=function(g){var P=h(g);return Math.cos(P)*k},E.yFn=function(g){var P=h(g),T=Math.sin(P)>0?.2:1;return-Math.sin(P)*(k+g.fontSize*T)+Math.abs(Math.cos(P))*(g.fontSize*j$t)},E.anchorFn=function(g){var P=h(g),T=Math.cos(P);return Math.abs(T)<.1?"middle":T>0?"start":"end"},E.heightFn=function(g,P,T){var z=h(g);return-.5*(1+Math.sin(z))*T};var S=GJe(u);r.angularTickLayout!==S&&(i["angular-axis"].selectAll("."+c._id+"tick").remove(),r.angularTickLayout=S);var L=f?[1/0].concat(c.tickvals||[]).map(function(g){return vp.tickText(c,g,!0,!1)}):vp.calcTicks(c);f&&(L[0].text="\u221E",L[0].fontSize*=1.75);var x;if(t.gridshape==="linear"?(x=L.map(h),Xc.angleDelta(x[0],x[1])<0&&(x=x.slice().reverse())):x=null,r.vangles=x,c.type==="category"&&(L=L.filter(function(g){return Xc.isAngleInsideSector(h(g),r.sectorInRad)})),c.visible){var C=c.ticks==="inside"?-1:1,M=(c.linewidth||1)/2;vp.drawTicks(n,c,{vals:L,layer:i["angular-axis"],path:"M"+C*M+",0h"+C*c.ticklen,transFn:_,crisp:!1}),vp.drawGrid(n,c,{vals:L,layer:i["angular-grid"],path:b,transFn:Xc.noop,crisp:!1}),vp.drawLabels(n,c,{vals:L,layer:i["angular-axis"],repositionOnUpdate:!0,transFn:v,labelFns:E})}fC(i["angular-line"].select("path"),u.showline,{d:r.pathSubplot(),transform:xd(s,l)}).attr("stroke-width",u.linewidth).call(W$.stroke,u.linecolor)};Nd.updateFx=function(e,t){if(!this.gd._context.staticPlot){var r=!this.isSmith;r&&(this.updateAngularDrag(e),this.updateRadialDrag(e,t,0),this.updateRadialDrag(e,t,1)),this.updateHoverAndMainDrag(e)}};Nd.updateHoverAndMainDrag=function(e){var t=this,r=t.isSmith,n=t.gd,i=t.layers,a=e._zoomlayer,o=Lx.MINZOOM,s=Lx.OFFEDGE,l=t.radius,u=t.innerRadius,c=t.cx,f=t.cy,h=t.cxx,d=t.cyy,v=t.sectorInRad,_=t.vangles,b=t.radialAxis,p=_1.clampTiny,k=_1.findXYatLength,E=_1.findEnclosingVertexAngles,S=Lx.cornerHalfWidth,L=Lx.cornerLen/2,x,C,M=y1.makeDragger(i,"path","maindrag",e.dragmode===!1?"none":"crosshair");gw.select(M).attr("d",t.pathSubplot()).attr("transform",xd(c,f)),M.onmousemove=function(ce){OJe.hover(n,ce,t.id),n._fullLayout._lasthover=M,n._fullLayout._hoversubplot=t.id},M.onmouseout=function(ce){n._dragging||v9.unhover(n,ce)};var g={element:M,gd:n,subplot:t.id,plotinfo:{id:t.id,xaxis:t.xaxis,yaxis:t.yaxis},xaxes:[t.xaxis],yaxes:[t.yaxis]},P,T,z,O,V,G,Z,j,N;function H(ce,Ze){return Math.sqrt(ce*ce+Ze*Ze)}function te(ce,Ze){return H(ce-h,Ze-d)}function oe(ce,Ze){return Math.atan2(d-Ze,ce-h)}function _e(ce,Ze){return[ce*Math.cos(Ze),ce*Math.sin(-Ze)]}function Ee(ce,Ze){if(ce===0)return t.pathSector(2*S);var ut=L/ce,pt=Ze-ut,Zt=Ze+ut,st=Math.max(0,Math.min(ce,l)),lt=st-S,Gt=st+S;return"M"+_e(lt,pt)+"A"+[lt,lt]+" 0,0,0 "+_e(lt,Zt)+"L"+_e(Gt,Zt)+"A"+[Gt,Gt]+" 0,0,1 "+_e(Gt,pt)+"Z"}function Ce(ce,Ze,ut){if(ce===0)return t.pathSector(2*S);var pt=_e(ce,Ze),Zt=_e(ce,ut),st=p((pt[0]+Zt[0])/2),lt=p((pt[1]+Zt[1])/2),Gt,Nt;if(st&<){var Jt=lt/st,sr=-1/Jt,wr=k(S,Jt,st,lt);Gt=k(L,sr,wr[0][0],wr[0][1]),Nt=k(L,sr,wr[1][0],wr[1][1])}else{var cr,$e;lt?(cr=L,$e=S):(cr=S,$e=L),Gt=[[st-cr,lt-$e],[st+cr,lt-$e]],Nt=[[st-cr,lt+$e],[st+cr,lt+$e]]}return"M"+Gt.join("L")+"L"+Nt.reverse().join("L")+"Z"}function me(){z=null,O=null,V=t.pathSubplot(),G=!1;var ce=n._fullLayout[t.id];Z=O$t(ce.bgcolor).getLuminance(),j=y1.makeZoombox(a,Z,c,f,V),j.attr("fill-rule","evenodd"),N=y1.makeCorners(a,c,f),X$(n)}function ie(ce,Ze){return Ze=Math.max(Math.min(Ze,l),u),ceo?(ce-1&&ce===1&&H$t(Ze,n,[t.xaxis],[t.yaxis],t.id,g),ut.indexOf("event")>-1&&OJe.click(n,Ze,t.id)}g.prepFn=function(ce,Ze,ut){var pt=n._fullLayout.dragmode,Zt=M.getBoundingClientRect();n._fullLayout._calcInverseTransform(n);var st=n._fullLayout._invTransform;x=n._fullLayout._invScaleX,C=n._fullLayout._invScaleY;var lt=Xc.apply3DTransform(st)(Ze-Zt.left,ut-Zt.top);if(P=lt[0],T=lt[1],_){var Gt=_1.findPolygonOffset(l,v[0],v[1],_);P+=h+Gt[0],T+=d+Gt[1]}switch(pt){case"zoom":g.clickFn=Re,r||(_?g.moveFn=Fe:g.moveFn=Le,g.doneFn=Pe,me(ce,Ze,ut));break;case"select":case"lasso":G$t(ce,Ze,ut,g,pt);break}},v9.init(g)};Nd.updateRadialDrag=function(e,t,r){var n=this,i=n.gd,a=n.layers,o=n.radius,s=n.innerRadius,l=n.cx,u=n.cy,c=n.radialAxis,f=Lx.radialDragBoxSize,h=f/2;if(!c.visible)return;var d=Px(n.radialAxisAngle),v=c._rl,_=v[0],b=v[1],p=v[r],k=.75*(v[1]-v[0])/(1-n.getHole(t))/o,E,S,L;r?(E=l+(o+h)*Math.cos(d),S=u-(o+h)*Math.sin(d),L="radialdrag"):(E=l+(s-h)*Math.cos(d),S=u-(s-h)*Math.sin(d),L="radialdrag-inner");var x=y1.makeRectDragger(a,L,"crosshair",-h,-h,f,f),C={element:x,gd:i};e.dragmode===!1&&(C.dragmode=!1),fC(gw.select(x),c.visible&&s0!=(r?P>_:P=90||i>90&&a>=450?d=1:s<=0&&u<=0?d=0:d=Math.max(s,u),i<=180&&a>=180||i>180&&a>=540?c=-1:o>=0&&l>=0?c=0:c=Math.min(o,l),i<=270&&a>=270||i>270&&a>=630?f=-1:s>=0&&u>=0?f=0:f=Math.min(s,u),a>=360?h=1:o<=0&&l<=0?h=0:h=Math.max(o,l),[c,f,h,d]}function HJe(e,t){var r=function(i){return Xc.angleDist(e,i)},n=Xc.findIndexOfMin(t,r);return t[n]}function fC(e,t,r){return t?(e.attr("display",null),e.attr(r)):e&&e.attr("display","none"),e}});var Y$=ye((Fwr,JJe)=>{"use strict";var K$t=Lh(),os=Rd(),J$t=Cc().attributes,c0=Dr().extendFlat,WJe=mc().overrideAll,XJe=WJe({color:os.color,showline:c0({},os.showline,{dflt:!0}),linecolor:os.linecolor,linewidth:os.linewidth,showgrid:c0({},os.showgrid,{dflt:!0}),gridcolor:os.gridcolor,gridwidth:os.gridwidth,griddash:os.griddash},"plot","from-root"),ZJe=WJe({tickmode:os.minor.tickmode,nticks:os.nticks,tick0:os.tick0,dtick:os.dtick,tickvals:os.tickvals,ticktext:os.ticktext,ticks:os.ticks,ticklen:os.ticklen,tickwidth:os.tickwidth,tickcolor:os.tickcolor,ticklabelstep:os.ticklabelstep,showticklabels:os.showticklabels,labelalias:os.labelalias,minorloglabels:os.minorloglabels,showtickprefix:os.showtickprefix,tickprefix:os.tickprefix,showticksuffix:os.showticksuffix,ticksuffix:os.ticksuffix,showexponent:os.showexponent,exponentformat:os.exponentformat,minexponent:os.minexponent,separatethousands:os.separatethousands,tickfont:os.tickfont,tickangle:os.tickangle,tickformat:os.tickformat,tickformatstops:os.tickformatstops,layer:os.layer},"plot","from-root"),YJe={visible:c0({},os.visible,{dflt:!0}),type:c0({},os.type,{values:["-","linear","log","date","category"]}),autotypenumbers:os.autotypenumbers,autorangeoptions:{minallowed:os.autorangeoptions.minallowed,maxallowed:os.autorangeoptions.maxallowed,clipmin:os.autorangeoptions.clipmin,clipmax:os.autorangeoptions.clipmax,include:os.autorangeoptions.include,editType:"plot"},autorange:c0({},os.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc"},minallowed:c0({},os.minallowed,{editType:"plot"}),maxallowed:c0({},os.maxallowed,{editType:"plot"}),range:c0({},os.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:os.categoryorder,categoryarray:os.categoryarray,angle:{valType:"angle",editType:"plot"},autotickangles:os.autotickangles,side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot"},title:{text:c0({},os.title.text,{editType:"plot",dflt:""}),font:c0({},os.title.font,{editType:"plot"}),editType:"plot"},hoverformat:os.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};c0(YJe,XJe,ZJe);var KJe={visible:c0({},os.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:os.autotypenumbers,categoryorder:os.categoryorder,categoryarray:os.categoryarray,thetaunit:{valType:"enumerated",values:["radians","degrees"],dflt:"degrees",editType:"calc"},period:{valType:"number",editType:"calc",min:0},direction:{valType:"enumerated",values:["counterclockwise","clockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",editType:"calc"},hoverformat:os.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};c0(KJe,XJe,ZJe);JJe.exports={domain:J$t({name:"polar",editType:"plot"}),sector:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],dflt:[0,360],editType:"plot"},hole:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},bgcolor:{valType:"color",editType:"plot",dflt:K$t.background},radialaxis:YJe,angularaxis:KJe,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var t$e=ye((zwr,e$e)=>{"use strict";var g9=Dr(),$$t=ka(),Q$t=vl(),eQt=k_(),tQt=Id().getSubplotData,rQt=bb(),iQt=M3(),nQt=e_(),aQt=t_(),oQt=oI(),sQt=t4(),lQt=_B(),uQt=R3(),QJe=Y$(),cQt=V$(),m9=u9(),$Je=m9.axisNames;function fQt(e,t,r,n){var i=r("bgcolor");n.bgColor=$$t.combine(i,n.paper_bgcolor);var a=r("sector");r("hole");var o=tQt(n.fullData,m9.name,n.id),s=n.layoutOut,l;function u(j,N){return r(l+"."+j,N)}for(var c=0;c<$Je.length;c++){l=$Je[c],g9.isPlainObject(e[l])||(e[l]={});var f=e[l],h=Q$t.newContainer(t,l);h._id=h._name=l,h._attr=n.id+"."+l,h._traceIndices=o.map(function(j){return j.index});var d=m9.axisName2dataArray[l],v=hQt(f,h,u,o,d,n);oQt(f,h,u,{axData:o,dataAttr:d});var _=u("visible");switch(cQt(h,t,s),u("uirevision",t.uirevision),h._m=1,l){case"radialaxis":u("minallowed"),u("maxallowed");var b=u("range"),p=h.getAutorangeDflt(b),k=u("autorange",p),E;b&&(b[0]===null&&b[1]===null||(b[0]===null||b[1]===null)&&(k==="reversed"||k===!0)||b[0]!==null&&(k==="min"||k==="max reversed")||b[1]!==null&&(k==="max"||k==="min reversed"))&&(b=void 0,delete h.range,h.autorange=!0,E=!0),E||(p=h.getAutorangeDflt(b),k=u("autorange",p)),f.autorange=k,k&&(lQt(u,k,b),(v==="linear"||v==="-")&&u("rangemode"),h.isReversed()&&(h._m=-1)),h.cleanRange("range",{dfltRange:[0,1]});break;case"angularaxis":if(v==="date"){g9.log("Polar plots do not support date angular axes yet.");for(var S=0;S{"use strict";var dQt=Id().getSubplotCalcData,vQt=Dr().counterRegex,pQt=Z$(),i$e=u9(),n$e=i$e.attr,_w=i$e.name,r$e=vQt(_w),a$e={};a$e[n$e]={valType:"subplotid",dflt:_w,editType:"calc"};function gQt(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[_w],i=0;i{"use strict";var{hovertemplateAttrs:yQt,texttemplateAttrs:_Qt,templatefallbackAttrs:s$e}=Ll(),_9=Ao().extendFlat,xQt=Cg(),f0=pf(),bQt=Gl(),Z5=f0.line;l$e.exports={mode:f0.mode,r:{valType:"data_array",editType:"calc+clearAxisTypes"},theta:{valType:"data_array",editType:"calc+clearAxisTypes"},r0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dr:{valType:"number",dflt:1,editType:"calc"},theta0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dtheta:{valType:"number",editType:"calc"},thetaunit:{valType:"enumerated",values:["radians","degrees","gradians"],dflt:"degrees",editType:"calc+clearAxisTypes"},text:f0.text,texttemplate:_Qt({editType:"plot"},{keys:["r","theta","text"]}),texttemplatefallback:s$e({editType:"plot"}),hovertext:f0.hovertext,line:{color:Z5.color,width:Z5.width,dash:Z5.dash,backoff:Z5.backoff,shape:_9({},Z5.shape,{values:["linear","spline"]}),smoothing:Z5.smoothing,editType:"calc"},connectgaps:f0.connectgaps,marker:f0.marker,cliponaxis:_9({},f0.cliponaxis,{dflt:!1}),textposition:f0.textposition,textfont:f0.textfont,fill:_9({},f0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:xQt(),hoverinfo:_9({},bQt.hoverinfo,{flags:["r","theta","text","name"]}),hoveron:f0.hoveron,hovertemplate:yQt(),hovertemplatefallback:s$e(),selected:f0.selected,unselected:f0.unselected}});var b9=ye((Bwr,f$e)=>{"use strict";var x9=Dr(),Y5=Ru(),wQt=$p(),TQt=R0(),u$e=tT(),AQt=D0(),SQt=Rg(),MQt=Sm().PTS_LINESONLY,EQt=hC();function kQt(e,t,r,n){function i(s,l){return x9.coerce(e,t,EQt,s,l)}var a=c$e(e,t,n,i);if(!a){t.visible=!1;return}i("thetaunit"),i("mode",a{"use strict";var CQt=Dr(),h$e=ho();d$e.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o,s;a?(o=a.radialAxis,s=a.angularAxis):(a=n[r.subplot],o=a.radialaxis,s=a.angularaxis);var l=o.c2l(t.r);i.rLabel=h$e.tickText(o,l,!0).text;var u=s.thetaunit==="degrees"?CQt.rad2deg(t.theta):t.theta;return i.thetaLabel=h$e.tickText(s,u,!0).text,i}});var g$e=ye((Uwr,p$e)=>{"use strict";var v$e=Eo(),LQt=fs().BADNUM,PQt=ho(),IQt=F0(),RQt=km(),DQt=z0(),FQt=O0().calcMarkerSize;p$e.exports=function(t,r){for(var n=t._fullLayout,i=r.subplot,a=n[i].radialaxis,o=n[i].angularaxis,s=a.makeCalcdata(r,"r"),l=o.makeCalcdata(r,"theta"),u=r._length,c=new Array(u),f=0;f{"use strict";var zQt=sT(),m$e=fs().BADNUM;y$e.exports=function(t,r,n){for(var i=r.layers.frontplot.select("g.scatterlayer"),a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},l=r.radialAxis,u=r.angularAxis,c=0;c{"use strict";var OQt=fT();function qQt(e,t,r,n){var i=OQt(e,t,r,n);if(!(!i||i[0].index===!1)){var a=i[0];if(a.index===void 0)return i;var o=e.subplot,s=a.cd[a.index],l=a.trace;if(o.isPtInside(s))return a.xLabelVal=void 0,a.yLabelVal=void 0,x$e(s,l,o,a),a.hovertemplate=l.hovertemplate,i}}function x$e(e,t,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle="r",a._hovertitle="\u03B8";var o={};o[t.subplot]={_subplot:r};var s=t._module.formatLabels(e,t,o);n.rLabel=s.rLabel,n.thetaLabel=s.thetaLabel;var l=e.hi||t.hoverinfo,u=[];function c(h,d){u.push(h._hovertitle+": "+d)}if(!t.hovertemplate){var f=l.split("+");f.indexOf("all")!==-1&&(f=["r","theta","text"]),f.indexOf("r")!==-1&&c(i,n.rLabel),f.indexOf("theta")!==-1&&c(a,n.thetaLabel),f.indexOf("text")!==-1&&n.text&&(u.push(n.text),delete n.text),n.extraText=u.join("
")}}b$e.exports={hoverPoints:qQt,makeHoverPointText:x$e}});var T$e=ye((Hwr,w$e)=>{"use strict";w$e.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:y9(),categories:["polar","symbols","showLegend","scatter-like"],attributes:hC(),supplyDefaults:b9().supplyDefaults,colorbar:$d(),formatLabels:w9(),calc:g$e(),plot:_$e(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:T9().hoverPoints,selectPoints:hT(),meta:{}}});var S$e=ye((jwr,A$e)=>{"use strict";A$e.exports=T$e()});var K$=ye((Zwr,E$e)=>{"use strict";var M$e=hC(),{cliponaxis:Wwr,hoveron:Xwr}=M$e,BQt=uee(M$e,["cliponaxis","hoveron"]),{connectgaps:NQt,line:{color:UQt,dash:VQt,width:GQt},fill:HQt,fillcolor:jQt,marker:WQt,textfont:XQt,textposition:ZQt}=lk();E$e.exports=q1(mg({},BQt),{connectgaps:NQt,fill:HQt,fillcolor:jQt,line:{color:UQt,dash:VQt,editType:"calc",width:GQt},marker:WQt,textfont:XQt,textposition:ZQt})});var L$e=ye((Kwr,C$e)=>{"use strict";var k$e=Dr(),J$=Ru(),YQt=b9().handleRThetaDefaults,KQt=$p(),JQt=R0(),$Qt=D0(),QQt=Rg(),eer=Sm().PTS_LINESONLY,ter=K$();C$e.exports=function(t,r,n,i){function a(s,l){return k$e.coerce(t,r,ter,s,l)}var o=YQt(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("mode",o{"use strict";var rer=w9();P$e.exports=function(t,r,n){var i=t.i;return"r"in t||(t.r=r._r[i]),"theta"in t||(t.theta=r._theta[i]),rer(t,r,n)}});var D$e=ye(($wr,R$e)=>{"use strict";var ier=F0(),ner=O0().calcMarkerSize,aer=J2(),oer=ho(),ser=ox().TOO_MANY_POINTS;R$e.exports=function(t,r){var n=t._fullLayout,i=r.subplot,a=n[i].radialaxis,o=n[i].angularaxis,s=r._r=a.makeCalcdata(r,"r"),l=r._theta=o.makeCalcdata(r,"theta"),u=r._length,c={};u{"use strict";var ler=UF(),uer=T9().makeHoverPointText;function cer(e,t,r,n){var i=e.cd,a=i[0].t,o=a.r,s=a.theta,l=ler.hoverPoints(e,t,r,n);if(!(!l||l[0].index===!1)){var u=l[0];if(u.index===void 0)return l;var c=e.subplot,f=u.cd[u.index],h=u.trace;if(f.r=o[u.index],f.theta=s[u.index],!!c.isPtInside(f))return u.xLabelVal=void 0,u.yLabelVal=void 0,uer(f,h,c,u),l}}F$e.exports={hoverPoints:cer}});var q$e=ye((e3r,O$e)=>{"use strict";O$e.exports={moduleType:"trace",name:"scatterpolargl",basePlotModule:y9(),categories:["gl","regl","polar","symbols","showLegend","scatter-like"],attributes:K$(),supplyDefaults:L$e(),colorbar:$d(),formatLabels:I$e(),calc:D$e(),hoverPoints:z$e().hoverPoints,selectPoints:uY(),meta:{}}});var B$e=ye((t3r,$$)=>{"use strict";var fer=HF(),her=Eo(),der=dK(),ver=oY(),A9=J2(),S9=Dr(),per=ox().TOO_MANY_POINTS,ger={};$$.exports=function(t,r,n){if(n.length){var i=r.radialAxis,a=r.angularAxis,o=ver(t,r);return n.forEach(function(s){if(!(!s||!s[0]||!s[0].trace)){var l=s[0],u=l.trace,c=l.t,f=u._length,h=c.r,d=c.theta,v=c.opts,_,b=h.slice(),p=d.slice();for(_=0;_=per&&(v.marker.cluster=c.tree),v.marker&&(v.markerSel.positions=v.markerUnsel.positions=v.marker.positions=k),v.line&&k.length>1&&S9.extendFlat(v.line,A9.linePositions(t,u,k)),v.text&&(S9.extendFlat(v.text,{positions:k},A9.textPosition(t,u,v.text,v.marker)),S9.extendFlat(v.textSel,{positions:k},A9.textPosition(t,u,v.text,v.markerSel)),S9.extendFlat(v.textUnsel,{positions:k},A9.textPosition(t,u,v.text,v.markerUnsel))),v.fill&&!o.fill2d&&(o.fill2d=!0),v.marker&&!o.scatter2d&&(o.scatter2d=!0),v.line&&!o.line2d&&(o.line2d=!0),v.text&&!o.glText&&(o.glText=!0),o.lineOptions.push(v.line),o.fillOptions.push(v.fill),o.markerOptions.push(v.marker),o.markerSelectedOptions.push(v.markerSel),o.markerUnselectedOptions.push(v.markerUnsel),o.textOptions.push(v.text),o.textSelectedOptions.push(v.textSel),o.textUnselectedOptions.push(v.textUnsel),o.selectBatch.push([]),o.unselectBatch.push([]),c.x=E,c.y=S,c.rawx=E,c.rawy=S,c.r=h,c.theta=d,c.positions=k,c._scene=o,c.index=o.count,o.count++}}),der(t,r,n)}};$$.exports.reglPrecompiled=ger});var V$e=ye((r3r,U$e)=>{"use strict";var N$e=q$e();N$e.plot=B$e();U$e.exports=N$e});var H$e=ye((i3r,G$e)=>{"use strict";G$e.exports=V$e()});var Q$=ye((n3r,j$e)=>{"use strict";var{hovertemplateAttrs:mer,templatefallbackAttrs:yer}=Ll(),K5=Ao().extendFlat,Ix=hC(),Rx=Lm();j$e.exports={r:Ix.r,theta:Ix.theta,r0:Ix.r0,dr:Ix.dr,theta0:Ix.theta0,dtheta:Ix.dtheta,thetaunit:Ix.thetaunit,base:K5({},Rx.base,{}),offset:K5({},Rx.offset,{}),width:K5({},Rx.width,{}),text:K5({},Rx.text,{}),hovertext:K5({},Rx.hovertext,{}),marker:_er(),hoverinfo:Ix.hoverinfo,hovertemplate:mer(),hovertemplatefallback:yer(),selected:Rx.selected,unselected:Rx.unselected};function _er(){var e=K5({},Rx.marker);return delete e.cornerradius,e}});var eQ=ye((a3r,W$e)=>{"use strict";W$e.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}});var Y$e=ye((o3r,Z$e)=>{"use strict";var X$e=Dr(),xer=b9().handleRThetaDefaults,ber=VI(),wer=Q$();Z$e.exports=function(t,r,n,i){function a(s,l){return X$e.coerce(t,r,wer,s,l)}var o=xer(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("base"),a("offset"),a("width"),a("text"),a("hovertext"),a("hovertemplate"),a("hovertemplatefallback"),ber(t,r,a,n,i),X$e.coerceSelectionMarkerOpacity(r,a)}});var J$e=ye((s3r,K$e)=>{"use strict";var Ter=Dr(),Aer=eQ();K$e.exports=function(e,t,r){var n={},i;function a(l,u){return Ter.coerce(e[i]||{},t[i],Aer,l,u)}for(var o=0;o{"use strict";var $$e=pv().hasColorscale,Q$e=gv(),Ser=Dr().isArrayOrTypedArray,Mer=g4(),Eer=jb().setGroupPositions,ker=z0(),Cer=qa().traceIs,Ler=Dr().extendFlat;function Per(e,t){for(var r=e._fullLayout,n=t.subplot,i=r[n].radialaxis,a=r[n].angularaxis,o=i.makeCalcdata(t,"r"),s=a.makeCalcdata(t,"theta"),l=t._length,u=new Array(l),c=o,f=s,h=0;h{"use strict";var tQe=Oa(),M9=Eo(),J5=Dr(),Rer=So(),rQ=f9();rQe.exports=function(t,r,n){var i=t._context.staticPlot,a=r.xaxis,o=r.yaxis,s=r.radialAxis,l=r.angularAxis,u=Der(r),c=r.layers.frontplot.select("g.barlayer");J5.makeTraceGroups(c,n,"trace bars").each(function(){var f=tQe.select(this),h=J5.ensureSingle(f,"g","points"),d=h.selectAll("g.point").data(J5.identity);d.enter().append("g").style("vector-effect",i?"none":"non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),d.exit().remove(),d.each(function(v){var _=tQe.select(this),b=v.rp0=s.c2p(v.s0),p=v.rp1=s.c2p(v.s1),k=v.thetag0=l.c2g(v.p0),E=v.thetag1=l.c2g(v.p1),S;if(!M9(b)||!M9(p)||!M9(k)||!M9(E)||b===p||k===E)S="M0,0Z";else{var L=s.c2g(v.s1),x=(k+E)/2;v.ct=[a.c2p(L*Math.cos(x)),o.c2p(L*Math.sin(x))],S=u(b,p,k,E)}J5.ensureSingle(_,"path").attr("d",S)}),Rer.setClipUrl(f,r._hasClipOnAxisFalse?r.clipIds.forTraces:null,t)})};function Der(e){var t=e.cxx,r=e.cyy;return e.vangles?function(n,i,a,o){var s,l;J5.angleDelta(a,o)>0?(s=a,l=o):(s=o,l=a);var u=rQ.findEnclosingVertexAngles(s,e.vangles)[0],c=rQ.findEnclosingVertexAngles(l,e.vangles)[1],f=[u,(s+l)/2,c];return rQ.pathPolygonAnnulus(n,i,s,l,f,t,r)}:function(n,i,a,o){return J5.pathAnnulus(n,i,a,o,t,r)}}});var aQe=ye((c3r,nQe)=>{"use strict";var Fer=vf(),iQ=Dr(),zer=ET().getTraceColor,Oer=iQ.fillText,qer=T9().makeHoverPointText,Ber=f9().isPtInsidePolygon;nQe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.subplot,s=o.radialAxis,l=o.angularAxis,u=o.vangles,c=u?Ber:iQ.isPtInsideSector,f=t.maxHoverDistance,h=l._period||2*Math.PI,d=Math.abs(s.g2p(Math.sqrt(r*r+n*n))),v=Math.atan2(n,r);s.range[0]>s.range[1]&&(v+=Math.PI);var _=function(E){return c(d,v,[E.rp0,E.rp1],[E.thetag0,E.thetag1],u)?f+Math.min(1,Math.abs(E.thetag1-E.thetag0)/h)-1+(E.rp1-d)/(E.rp1-E.rp0)-1:1/0};if(Fer.getClosest(i,_,t),t.index!==!1){var b=t.index,p=i[b];t.x0=t.x1=p.ct[0],t.y0=t.y1=p.ct[1];var k=iQ.extendFlat({},p,{r:p.s,theta:p.p});return Oer(p,a,t),qer(k,a,o,t),t.hovertemplate=a.hovertemplate,t.color=zer(a,p),t.xLabelVal=t.yLabelVal=void 0,p.s<0&&(t.idealAlign="left"),[t]}}});var sQe=ye((f3r,oQe)=>{"use strict";oQe.exports={moduleType:"trace",name:"barpolar",basePlotModule:y9(),categories:["polar","bar","showLegend"],attributes:Q$(),layoutAttributes:eQ(),supplyDefaults:Y$e(),supplyLayoutDefaults:J$e(),calc:tQ().calc,crossTraceCalc:tQ().crossTraceCalc,plot:iQe(),colorbar:$d(),formatLabels:w9(),style:N0().style,styleOnSelect:N0().styleOnSelect,hoverPoints:aQe(),selectPoints:kT(),meta:{}}});var uQe=ye((h3r,lQe)=>{"use strict";lQe.exports=sQe()});var nQ=ye((d3r,cQe)=>{"use strict";cQe.exports={attr:"subplot",name:"smith",axisNames:["realaxis","imaginaryaxis"],axisName2dataArray:{imaginaryaxis:"imag",realaxis:"real"}}});var aQ=ye((v3r,vQe)=>{"use strict";var Ner=Lh(),Nf=Rd(),Uer=Cc().attributes,Dx=Dr().extendFlat,fQe=mc().overrideAll,hQe=fQe({color:Nf.color,showline:Dx({},Nf.showline,{dflt:!0}),linecolor:Nf.linecolor,linewidth:Nf.linewidth,showgrid:Dx({},Nf.showgrid,{dflt:!0}),gridcolor:Nf.gridcolor,gridwidth:Nf.gridwidth,griddash:Nf.griddash},"plot","from-root"),dQe=fQe({ticklen:Nf.ticklen,tickwidth:Dx({},Nf.tickwidth,{dflt:2}),tickcolor:Nf.tickcolor,showticklabels:Nf.showticklabels,labelalias:Nf.labelalias,showtickprefix:Nf.showtickprefix,tickprefix:Nf.tickprefix,showticksuffix:Nf.showticksuffix,ticksuffix:Nf.ticksuffix,tickfont:Nf.tickfont,tickformat:Nf.tickformat,hoverformat:Nf.hoverformat,layer:Nf.layer},"plot","from-root"),Ver=Dx({visible:Dx({},Nf.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:"data_array",editType:"plot"},tickangle:Dx({},Nf.tickangle,{dflt:90}),ticks:{valType:"enumerated",values:["top","bottom",""],editType:"ticks"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},editType:"calc"},hQe,dQe),Ger=Dx({visible:Dx({},Nf.visible,{dflt:!0}),tickvals:{valType:"data_array",editType:"plot"},ticks:Nf.ticks,editType:"calc"},hQe,dQe);vQe.exports={domain:Uer({name:"smith",editType:"plot"}),bgcolor:{valType:"color",editType:"plot",dflt:Ner.background},realaxis:Ver,imaginaryaxis:Ger,editType:"calc"}});var mQe=ye((p3r,gQe)=>{"use strict";var $5=Dr(),Her=ka(),jer=vl(),Wer=k_(),Xer=Id().getSubplotData,Zer=t_(),Yer=e_(),Ker=t4(),Jer=ym(),Q5=aQ(),oQ=nQ(),pQe=oQ.axisNames,$er=etr(function(e){return $5.isTypedArray(e)&&(e=Array.from(e)),e.slice().reverse().map(function(t){return-t}).concat([0]).concat(e)},String);function Qer(e,t,r,n){var i=r("bgcolor");n.bgColor=Her.combine(i,n.paper_bgcolor);var a=Xer(n.fullData,oQ.name,n.id),o=n.layoutOut,s;function l(L,x){return r(s+"."+L,x)}for(var u=0;u{"use strict";var ttr=Id().getSubplotCalcData,rtr=Dr().counterRegex,itr=Z$(),_Qe=nQ(),xQe=_Qe.attr,xw=_Qe.name,yQe=rtr(xw),bQe={};bQe[xQe]={valType:"subplotid",dflt:xw,editType:"calc"};function ntr(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[xw],i=0;i{"use strict";var{hovertemplateAttrs:otr,texttemplateAttrs:str,templatefallbackAttrs:AQe}=Ll(),E9=Ao().extendFlat,ltr=Cg(),h0=pf(),utr=Gl(),eS=h0.line;SQe.exports={mode:h0.mode,real:{valType:"data_array",editType:"calc+clearAxisTypes"},imag:{valType:"data_array",editType:"calc+clearAxisTypes"},text:h0.text,texttemplate:str({editType:"plot"},{keys:["real","imag","text"]}),texttemplatefallback:AQe({editType:"plot"}),hovertext:h0.hovertext,line:{color:eS.color,width:eS.width,dash:eS.dash,backoff:eS.backoff,shape:E9({},eS.shape,{values:["linear","spline"]}),smoothing:eS.smoothing,editType:"calc"},connectgaps:h0.connectgaps,marker:h0.marker,cliponaxis:E9({},h0.cliponaxis,{dflt:!1}),textposition:h0.textposition,textfont:h0.textfont,fill:E9({},h0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:ltr(),hoverinfo:E9({},utr.hoverinfo,{flags:["real","imag","text","name"]}),hoveron:h0.hoveron,hovertemplate:otr(),hovertemplatefallback:AQe(),selected:h0.selected,unselected:h0.unselected}});var kQe=ye((y3r,EQe)=>{"use strict";var k9=Dr(),tS=Ru(),ctr=$p(),ftr=R0(),MQe=tT(),htr=D0(),dtr=Rg(),vtr=Sm().PTS_LINESONLY,ptr=sQ();EQe.exports=function(t,r,n,i){function a(l,u){return k9.coerce(t,r,ptr,l,u)}var o=gtr(t,r,i,a);if(!o){r.visible=!1;return}a("mode",o{"use strict";var CQe=ho();LQe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.realLabel=CQe.tickText(a.radialAxis,t.real,!0).text,i.imagLabel=CQe.tickText(a.angularAxis,t.imag,!0).text,i}});var DQe=ye((x3r,RQe)=>{"use strict";var IQe=Eo(),mtr=fs().BADNUM,ytr=F0(),_tr=km(),xtr=z0(),btr=O0().calcMarkerSize;RQe.exports=function(t,r){for(var n=t._fullLayout,i=r.subplot,a=n[i].realaxis,o=n[i].imaginaryaxis,s=a.makeCalcdata(r,"real"),l=o.makeCalcdata(r,"imag"),u=r._length,c=new Array(u),f=0;f{"use strict";var wtr=sT(),FQe=fs().BADNUM,Ttr=j$(),Atr=Ttr.smith;zQe.exports=function(t,r,n){for(var i=r.layers.frontplot.select("g.scatterlayer"),a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},l=0;l{"use strict";var Str=fT();function Mtr(e,t,r,n){var i=Str(e,t,r,n);if(!(!i||i[0].index===!1)){var a=i[0];if(a.index===void 0)return i;var o=e.subplot,s=a.cd[a.index],l=a.trace;if(o.isPtInside(s))return a.xLabelVal=void 0,a.yLabelVal=void 0,qQe(s,l,o,a),a.hovertemplate=l.hovertemplate,i}}function qQe(e,t,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle="real",a._hovertitle="imag";var o={};o[t.subplot]={_subplot:r};var s=t._module.formatLabels(e,t,o);n.realLabel=s.realLabel,n.imagLabel=s.imagLabel;var l=e.hi||t.hoverinfo,u=[];function c(h,d){u.push(h._hovertitle+": "+d)}if(!t.hovertemplate){var f=l.split("+");f.indexOf("all")!==-1&&(f=["real","imag","text"]),f.indexOf("real")!==-1&&c(i,n.realLabel),f.indexOf("imag")!==-1&&c(a,n.imagLabel),f.indexOf("text")!==-1&&n.text&&(u.push(n.text),delete n.text),n.extraText=u.join("
")}}BQe.exports={hoverPoints:Mtr,makeHoverPointText:qQe}});var VQe=ye((T3r,UQe)=>{"use strict";UQe.exports={moduleType:"trace",name:"scattersmith",basePlotModule:TQe(),categories:["smith","symbols","showLegend","scatter-like"],attributes:sQ(),supplyDefaults:kQe(),colorbar:$d(),formatLabels:PQe(),calc:DQe(),plot:OQe(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:NQe().hoverPoints,selectPoints:hT(),meta:{}}});var HQe=ye((A3r,GQe)=>{"use strict";GQe.exports=VQe()});var kv=ye((S3r,WQe)=>{var L9=Oh();function jQe(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}L9(jQe.prototype,{instance:function(e,t){e=(e||"gregorian").toLowerCase(),t=t||"";var r=this._localCals[e+"-"+t];if(!r&&this.calendars[e]&&(r=new this.calendars[e](t),this._localCals[e+"-"+t]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return r},newDate:function(e,t,r,n,i){return n=(e!=null&&e.year?e.calendar():typeof n=="string"?this.instance(n,i):n)||this.instance(),n.newDate(e,t,r)},substituteDigits:function(e){return function(t){return(t+"").replace(/[0-9]/g,function(r){return e[r]})}},substituteChineseDigits:function(e,t){return function(r){for(var n="",i=0;r>0;){var a=r%10;n=(a===0?"":e[a]+t[i])+n,i++,r=Math.floor(r/10)}return n.indexOf(e[1]+t[1])===0&&(n=n.substr(1)),n||e[0]}}});function lQ(e,t,r,n){if(this._calendar=e,this._year=t,this._month=r,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function C9(e,t){return e=""+e,"000000".substring(0,t-e.length)+e}L9(lQ.prototype,{newDate:function(e,t,r){return this._calendar.newDate(e==null?this:e,t,r)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,t,r){if(!this._calendar.isValid(e,t,r))throw(Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=t,this._day=r,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,t){return this._calendar.add(this,e,t)},set:function(e,t){return this._calendar.set(this,e,t)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(Gs.local.differentCalendars||Gs.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var t=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return t===0?0:t<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+C9(Math.abs(this.year()),4)+"-"+C9(this.month(),2)+"-"+C9(this.day(),2)}});function uQ(){this.shortYearCutoff="+10"}L9(uQ.prototype,{_validateLevel:0,newDate:function(e,t,r){return e==null?this.today():(e.year&&(this._validate(e,t,r,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate),r=e.day(),t=e.month(),e=e.year()),new lQ(this,e,t,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var t=this._validate(e,this.minMonth,this.minDay,Gs.local.invalidYear||Gs.regionalOptions[""].invalidYear);return t.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Gs.local.invalidYear||Gs.regionalOptions[""].invalidYear);return(t.year()<0?"-":"")+C9(Math.abs(t.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Gs.local.invalidYear||Gs.regionalOptions[""].invalidYear),12},monthOfYear:function(e,t){var r=this._validate(e,t,this.minDay,Gs.local.invalidMonth||Gs.regionalOptions[""].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(e,t){var r=(t+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,r,this.minDay,Gs.local.invalidMonth||Gs.regionalOptions[""].invalidMonth),r},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Gs.local.invalidYear||Gs.regionalOptions[""].invalidYear);return this.leapYear(t)?366:365},dayOfYear:function(e,t,r){var n=this._validate(e,t,r,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(e,t,r){return this._validate(e,t,r,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate),{}},add:function(e,t,r){return this._validate(e,this.minMonth,this.minDay,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,t,r),t,r)},_add:function(e,t,r){if(this._validateLevel++,r==="d"||r==="w"){var n=e.toJD()+t*(r==="w"?this.daysInWeek():1),i=e.calendar().fromJD(n);return this._validateLevel--,[i.year(),i.month(),i.day()]}try{var a=e.year()+(r==="y"?t:0),o=e.monthOfYear()+(r==="m"?t:0),i=e.day(),s=function(c){for(;of-1+c.minMonth;)a++,o-=f,f=c.monthsInYear(a)};r==="y"?(e.month()!==this.fromMonthOfYear(a,o)&&(o=this.newDate(a,e.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(a)),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o)))):r==="m"&&(s(this),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o))));var l=[a,this.fromMonthOfYear(a,o),i];return this._validateLevel--,l}catch(u){throw this._validateLevel--,u}},_correctAdd:function(e,t,r,n){if(!this.hasYearZero&&(n==="y"||n==="m")&&(t[0]===0||e.year()>0!=t[0]>0)){var i={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],a=r<0?-1:1;t=this._add(e,r*i[0]+a*i[1],i[2])}return e.date(t[0],t[1],t[2])},set:function(e,t,r){this._validate(e,this.minMonth,this.minDay,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate);var n=r==="y"?t:e.year(),i=r==="m"?t:e.month(),a=r==="d"?t:e.day();return(r==="y"||r==="m")&&(a=Math.min(a,this.daysInMonth(n,i))),e.date(n,i,a)},isValid:function(e,t,r){this._validateLevel++;var n=this.hasYearZero||e!==0;if(n){var i=this.newDate(e,t,this.minDay);n=t>=this.minMonth&&t-this.minMonth=this.minDay&&r-this.minDay13.5?13:1),u=i-(l>2.5?4716:4715);return u<=0&&u--,this.newDate(u,l,s)},toJSDate:function(e,t,r){var n=this._validate(e,t,r,Gs.local.invalidDate||Gs.regionalOptions[""].invalidDate),i=new Date(n.year(),n.month()-1,n.day());return i.setHours(0),i.setMinutes(0),i.setSeconds(0),i.setMilliseconds(0),i.setHours(i.getHours()>12?i.getHours()+2:0),i},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var Gs=WQe.exports=new jQe;Gs.cdate=lQ;Gs.baseCalendar=uQ;Gs.calendars.gregorian=cQ});var XQe=ye(()=>{var fQ=Oh(),Ud=kv();fQ(Ud.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});Ud.local=Ud.regionalOptions[""];fQ(Ud.cdate.prototype,{formatDate:function(e,t){return typeof e!="string"&&(t=e,e=""),this._calendar.formatDate(e||"",this,t)}});fQ(Ud.baseCalendar.prototype,{UNIX_EPOCH:Ud.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:Ud.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,t,r){if(typeof e!="string"&&(r=t,t=e,e=""),!t)return"";if(t.calendar()!==this)throw Ud.local.invalidFormat||Ud.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,r=r||{};for(var n=r.dayNamesShort||this.local.dayNamesShort,i=r.dayNames||this.local.dayNames,a=r.monthNumbers||this.local.monthNumbers,o=r.monthNamesShort||this.local.monthNamesShort,s=r.monthNames||this.local.monthNames,l=r.calculateWeek||this.local.calculateWeek,u=function(S,L){for(var x=1;E+x1},c=function(S,L,x,C){var M=""+L;if(u(S,C))for(;M.length1},k=function(z,O){var V=p(z,O),G=[2,3,V?4:2,V?4:2,10,11,20]["oyYJ@!".indexOf(z)+1],Z=new RegExp("^-?\\d{1,"+G+"}"),j=t.substring(M).match(Z);if(!j)throw(Ud.local.missingNumberAt||Ud.regionalOptions[""].missingNumberAt).replace(/\{0\}/,M);return M+=j[0].length,parseInt(j[0],10)},E=this,S=function(){if(typeof s=="function"){p("m");var z=s.call(E,t.substring(M));return M+=z.length,z}return k("m")},L=function(z,O,V,G){for(var Z=p(z,G)?V:O,j=0;j-1){h=1,d=v;for(var T=this.daysInMonth(f,h);d>T;T=this.daysInMonth(f,h))h++,d-=T}return c>-1?this.fromJD(c):this.newDate(f,h,d)},determineDate:function(e,t,r,n,i){r&&typeof r!="object"&&(i=n,n=r,r=null),typeof n!="string"&&(i=n,n="");var a=this,o=function(s){try{return a.parseDate(n,s,i)}catch(f){}s=s.toLowerCase();for(var l=(s.match(/^c/)&&r?r.newDate():null)||a.today(),u=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,c=u.exec(s);c;)l.add(parseInt(c[1],10),c[2]||"d"),c=u.exec(s);return l};return t=t?t.newDate():null,e=e==null?t:typeof e=="string"?o(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?t:a.today().add(e,"d"):a.newDate(e),e}})});var ZQe=ye(()=>{var Fx=kv(),Etr=Oh(),hQ=Fx.instance();function P9(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}P9.prototype=new Fx.baseCalendar;Etr(P9.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,t){if(typeof e=="string"){var r=e.match(Ctr);return r?r[0]:""}var n=this._validateYear(e),i=e.month(),a=""+this.toChineseMonth(n,i);return t&&a.length<2&&(a="0"+a),this.isIntercalaryMonth(n,i)&&(a+="i"),a},monthNames:function(e){if(typeof e=="string"){var t=e.match(Ltr);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},monthNamesShort:function(e){if(typeof e=="string"){var t=e.match(Ptr);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},parseMonth:function(e,t){e=this._validateYear(e);var r=parseInt(t),n;if(isNaN(r))t[0]==="\u95F0"&&(n=!0,t=t.substring(1)),t[t.length-1]==="\u6708"&&(t=t.substring(0,t.length-1)),r=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(t);else{var i=t[t.length-1];n=i==="i"||i==="I"}var a=this.toMonthIndex(e,r,n);return a},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,t){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw t.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,t,r){var n=this.intercalaryMonth(e),i=r&&t!==n;if(i||t<1||t>12)throw Fx.local.invalidMonth.replace(/\{0\}/,this.local.name);var a;return n?!r&&t<=n?a=t-1:a=t:a=t-1,a},toChineseMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e),n=r?12:11;if(t<0||t>n)throw Fx.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return r?t>13;return r},isIntercalaryMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e);return!!r&&r===t},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,t,r){var n=this._validateYear(e,Fx.local.invalidyear),i=Ox[n-Ox[0]],a=i>>9&4095,o=i>>5&15,s=i&31,l;l=hQ.newDate(a,o,s),l.add(4-(l.dayOfWeek()||7),"d");var u=this.toJD(e,t,r)-l.toJD();return 1+Math.floor(u/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,t){e.year&&(t=e.month(),e=e.year()),e=this._validateYear(e);var r=zx[e-zx[0]],n=r>>13,i=n?12:11;if(t>i)throw Fx.local.invalidMonth.replace(/\{0\}/,this.local.name);var a=r&1<<12-t?30:29;return a},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,a,r,Fx.local.invalidDate);e=this._validateYear(n.year()),t=n.month(),r=n.day();var i=this.isIntercalaryMonth(e,t),a=this.toChineseMonth(e,t),o=Rtr(e,a,r,i);return hQ.toJD(o.year,o.month,o.day)},fromJD:function(e){var t=hQ.fromJD(e),r=Itr(t.year(),t.month(),t.day()),n=this.toMonthIndex(r.year,r.month,r.isIntercalary);return this.newDate(r.year,n,r.day)},fromString:function(e){var t=e.match(ktr),r=this._validateYear(+t[1]),n=+t[2],i=!!t[3],a=this.toMonthIndex(r,n,i),o=+t[4];return this.newDate(r,a,o)},add:function(e,t,r){var n=e.year(),i=e.month(),a=this.isIntercalaryMonth(n,i),o=this.toChineseMonth(n,i),s=Object.getPrototypeOf(P9.prototype).add.call(this,e,t,r);if(r==="y"){var l=s.year(),u=s.month(),c=this.isIntercalaryMonth(l,o),f=a&&c?this.toMonthIndex(l,o,!0):this.toMonthIndex(l,o,!1);f!==u&&s.month(f)}return s}});var ktr=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,Ctr=/^\d?\d[iI]?/m,Ltr=/^闰?十?[一二三四五六七八九]?月/m,Ptr=/^闰?十?[一二三四五六七八九]?/m;Fx.calendars.chinese=P9;var zx=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],Ox=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function Itr(e,t,r,n){var i,a;if(typeof e=="object")i=e,a=t||{};else{var o=typeof e=="number"&&e>=1888&&e<=2111;if(!o)throw new Error("Solar year outside range 1888-2111");var s=typeof t=="number"&&t>=1&&t<=12;if(!s)throw new Error("Solar month outside range 1 - 12");var l=typeof r=="number"&&r>=1&&r<=31;if(!l)throw new Error("Solar day outside range 1 - 31");i={year:e,month:t,day:r},a=n||{}}var u=Ox[i.year-Ox[0]],c=i.year<<9|i.month<<5|i.day;a.year=c>=u?i.year:i.year-1,u=Ox[a.year-Ox[0]];var f=u>>9&4095,h=u>>5&15,d=u&31,v,_=new Date(f,h-1,d),b=new Date(i.year,i.month-1,i.day);v=Math.round((b-_)/(24*3600*1e3));var p=zx[a.year-zx[0]],k;for(k=0;k<13;k++){var E=p&1<<12-k?30:29;if(v>13;return!S||k=1888&&e<=2111;if(!s)throw new Error("Lunar year outside range 1888-2111");var l=typeof t=="number"&&t>=1&&t<=12;if(!l)throw new Error("Lunar month outside range 1 - 12");var u=typeof r=="number"&&r>=1&&r<=30;if(!u)throw new Error("Lunar day outside range 1 - 30");var c;typeof n=="object"?(c=!1,a=n):(c=!!n,a=i||{}),o={year:e,month:t,day:r,isIntercalary:c}}var f;f=o.day-1;var h=zx[o.year-zx[0]],d=h>>13,v;d&&(o.month>d||o.isIntercalary)?v=o.month:v=o.month-1;for(var _=0;_>9&4095,E=p>>5&15,S=p&31,L=new Date(k,E-1,S+f);return a.year=L.getFullYear(),a.month=1+L.getMonth(),a.day=L.getDate(),a}});var YQe=ye(()=>{var bw=kv(),Dtr=Oh();function dQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}dQ.prototype=new bw.baseCalendar;Dtr(dQ.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,bw.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,bw.local.invalidYear||bw.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,bw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,bw.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-(n-1)*30+1;return this.newDate(r,n,i)}});bw.calendars.coptic=dQ});var KQe=ye(()=>{var x1=kv(),Ftr=Oh();function vQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}vQ.prototype=new x1.baseCalendar;Ftr(vQ.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,x1.local.invalidYear),400},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/8)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,x1.local.invalidMonth);return this.daysPerMonth[r.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return(n.day()+1)%8},weekDay:function(e,t,r){var n=this.dayOfWeek(e,t,r);return n>=2&&n<=6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return{century:ztr[Math.floor((n.year()-1)/100)+1]||""}},toJD:function(e,t,r){var n=this._validate(e,t,r,x1.local.invalidDate);return e=n.year()+(n.year()<0?1:0),t=n.month(),r=n.day(),r+(t>1?16:0)+(t>2?(t-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var t=Math.floor(e/400)+1;e-=(t-1)*400,e+=e>15?16:0;var r=Math.floor(e/32)+1,n=e-(r-1)*32+1;return this.newDate(t<=0?t-1:t,r,n)}});var ztr={20:"Fruitbat",21:"Anchovy"};x1.calendars.discworld=vQ});var JQe=ye(()=>{var ww=kv(),Otr=Oh();function pQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}pQ.prototype=new ww.baseCalendar;Otr(pQ.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,ww.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ww.local.invalidYear||ww.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,ww.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,ww.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-(n-1)*30+1;return this.newDate(r,n,i)}});ww.calendars.ethiopian=pQ});var $Qe=ye(()=>{var qx=kv(),qtr=Oh();function gQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}gQ.prototype=new qx.baseCalendar;qtr(gQ.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,qx.local.invalidYear);return this._leapYear(t.year())},_leapYear:function(e){return e=e<0?e+1:e,I9(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,qx.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,qx.local.invalidYear);return e=t.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,qx.local.invalidMonth),t===12&&this.leapYear(e)||t===8&&I9(this.daysInYear(e),10)===5?30:t===9&&I9(this.daysInYear(e),10)===3?29:this.daysPerMonth[t-1]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,qx.local.invalidDate);return{yearType:(this.leapYear(n)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(n)%10-3]}},toJD:function(e,t,r){var n=this._validate(e,t,r,qx.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=e<=0?e+1:e,a=this.jdEpoch+this._delay1(i)+this._delay2(i)+r+1;if(t<7){for(var o=7;o<=this.monthsInYear(e);o++)a+=this.daysInMonth(e,o);for(var o=1;o=this.toJD(t===-1?1:t+1,7,1);)t++;for(var r=ethis.toJD(t,r,this.daysInMonth(t,r));)r++;var n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}});function I9(e,t){return e-t*Math.floor(e/t)}qx.calendars.hebrew=gQ});var QQe=ye(()=>{var dC=kv(),Btr=Oh();function mQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}mQ.prototype=new dC.baseCalendar;Btr(mQ.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,dC.local.invalidYear);return(t.year()*11+14)%30<11},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,dC.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,dC.local.invalidDate);return e=n.year(),t=n.month(),r=n.day(),e=e<=0?e+1:e,r+Math.ceil(29.5*(t-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=Math.floor((30*(e-this.jdEpoch)+10646)/10631);t=t<=0?t-1:t;var r=Math.min(12,Math.ceil((e-29-this.toJD(t,1,1))/29.5)+1),n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}});dC.calendars.islamic=mQ});var eet=ye(()=>{var vC=kv(),Ntr=Oh();function yQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}yQ.prototype=new vC.baseCalendar;Ntr(yQ.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,vC.local.invalidYear),r=t.year()<0?t.year()+1:t.year();return r%4===0},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,vC.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,vC.local.invalidDate);return e=n.year(),t=n.month(),r=n.day(),e<0&&e++,t<=2&&(e--,t+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(t+1))+r-1524.5},fromJD:function(e){var t=Math.floor(e+.5),r=t+1524,n=Math.floor((r-122.1)/365.25),i=Math.floor(365.25*n),a=Math.floor((r-i)/30.6001),o=a-Math.floor(a<14?1:13),s=n-Math.floor(o>2?4716:4715),l=r-i-Math.floor(30.6001*a);return s<=0&&s--,this.newDate(s,o,l)}});vC.calendars.julian=yQ});var ret=ye(()=>{var ug=kv(),Utr=Oh();function xQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}xQ.prototype=new ug.baseCalendar;Utr(xQ.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,ug.local.invalidYear),!1},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,ug.local.invalidYear);e=t.year();var r=Math.floor(e/400);e=e%400,e+=e<0?400:0;var n=Math.floor(e/20);return r+"."+n+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var t=0,r=0;r19||r>0&&n<0)throw"Invalid Mayan year";t=t*20+n}return t},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ug.local.invalidYear),18},weekOfYear:function(e,t,r){return this._validate(e,t,r,ug.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ug.local.invalidYear),360},daysInMonth:function(e,t){return this._validate(e,t,this.minDay,ug.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,ug.local.invalidDate);return n.day()},weekDay:function(e,t,r){return this._validate(e,t,r,ug.local.invalidDate),!0},extraInfo:function(e,t,r){var n=this._validate(e,t,r,ug.local.invalidDate),i=n.toJD(),a=this._toHaab(i),o=this._toTzolkin(i);return{haabMonthName:this.local.haabMonths[a[0]-1],haabMonth:a[0],haabDay:a[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(e){e-=this.jdEpoch;var t=_Q(e+8+17*20,365);return[Math.floor(t/20)+1,_Q(t,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[tet(e+20,20),tet(e+4,13)]},toJD:function(e,t,r){var n=this._validate(e,t,r,ug.local.invalidDate);return n.day()+n.month()*20+n.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var t=Math.floor(e/360);e=e%360,e+=e<0?360:0;var r=Math.floor(e/20),n=e%20;return this.newDate(t,r,n)}});function _Q(e,t){return e-t*Math.floor(e/t)}function tet(e,t){return _Q(e-1,t)+1}ug.calendars.mayan=xQ});var net=ye(()=>{var Tw=kv(),Vtr=Oh();function bQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}bQ.prototype=new Tw.baseCalendar;var iet=Tw.instance("gregorian");Vtr(bQ.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Tw.local.invalidYear||Tw.regionalOptions[""].invalidYear);return iet.leapYear(t.year()+(t.year()<1?1:0)+1469)},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Tw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Tw.local.invalidMonth),i=n.year();i<0&&i++;for(var a=n.day(),o=1;o=this.toJD(t+1,1,1);)t++;for(var r=e-Math.floor(this.toJD(t,1,1)+.5)+1,n=1;r>this.daysInMonth(t,n);)r-=this.daysInMonth(t,n),n++;return this.newDate(t,n,r)}});Tw.calendars.nanakshahi=bQ});var aet=ye(()=>{var Aw=kv(),Gtr=Oh();function wQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}wQ.prototype=new Aw.baseCalendar;Gtr(wQ.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Aw.local.invalidYear);if(e=t.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var r=0,n=this.minMonth;n<=12;n++)r+=this.NEPALI_CALENDAR_DATA[e][n];return r},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,Aw.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[t-1]:this.NEPALI_CALENDAR_DATA[e][t]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},toJD:function(e,t,r){var n=this._validate(e,t,r,Aw.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=Aw.instance(),a=0,o=t,s=e;this._createMissingCalendarData(e);var l=e-(o>9||o===9&&r>=this.NEPALI_CALENDAR_DATA[s][0]?56:57);for(t!==9&&(a=r,o--);o!==9;)o<=0&&(o=12,s--),a+=this.NEPALI_CALENDAR_DATA[s][o],o--;return t===9?(a+=r-this.NEPALI_CALENDAR_DATA[s][0],a<0&&(a+=i.daysInYear(l))):a+=this.NEPALI_CALENDAR_DATA[s][9]-this.NEPALI_CALENDAR_DATA[s][0],i.newDate(l,1,1).add(a,"d").toJD()},fromJD:function(e){var t=Aw.instance(),r=t.fromJD(e),n=r.year(),i=r.dayOfYear(),a=n+56;this._createMissingCalendarData(a);for(var o=9,s=this.NEPALI_CALENDAR_DATA[a][0],l=this.NEPALI_CALENDAR_DATA[a][o]-s+1;i>l;)o++,o>12&&(o=1,a++),l+=this.NEPALI_CALENDAR_DATA[a][o];var u=this.NEPALI_CALENDAR_DATA[a][o]-(l-i);return this.newDate(a,o,u)},_createMissingCalendarData:function(e){var t=this.daysPerMonth.slice(0);t.unshift(17);for(var r=e-1;r{var rS=kv(),Htr=Oh();function D9(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}function R9(e){var t=e-475;e<0&&t++;var r=.242197,n=r*t,i=r*(t+1),a=n-Math.floor(n),o=i-Math.floor(i);return a>o}D9.prototype=new rS.baseCalendar;Htr(D9.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Dey","Bah","Esf"],dayNames:["Yekshanbeh","Doshanbeh","Seshanbeh","Chah\u0101rshanbeh","Panjshanbeh","Jom'eh","Shanbeh"],dayNamesShort:["Yek","Do","Se","Cha","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,rS.local.invalidYear);return R9(t.year())},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-((n.dayOfWeek()+1)%7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,rS.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,rS.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=0;if(e>0)for(var a=1;a0?e-1:e)*365+i+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=475+(e-this.toJD(475,1,1))/365.242197,r=Math.floor(t);r<=0&&r--,e>this.toJD(r,12,R9(r)?30:29)&&(r++,r===0&&r++);var n=e-this.toJD(r,1,1)+1,i=n<=186?Math.ceil(n/31):Math.ceil((n-6)/30),a=e-this.toJD(r,i,1)+1;return this.newDate(r,i,a)}});rS.calendars.persian=D9;rS.calendars.jalali=D9});var set=ye(()=>{var Sw=kv(),jtr=Oh(),F9=Sw.instance();function TQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}TQ.prototype=new Sw.baseCalendar;jtr(TQ.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Sw.local.invalidYear),r=this._t2gYear(t.year());return F9.leapYear(r)},weekOfYear:function(i,t,r){var n=this._validate(i,this.minMonth,this.minDay,Sw.local.invalidYear),i=this._t2gYear(n.year());return F9.weekOfYear(i,n.month(),n.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Sw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Sw.local.invalidDate),i=this._t2gYear(n.year());return F9.toJD(i,n.month(),n.day())},fromJD:function(e){var t=F9.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Sw.calendars.taiwan=TQ});var uet=ye(()=>{var Mw=kv(),Wtr=Oh(),z9=Mw.instance();function AQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}AQ.prototype=new Mw.baseCalendar;Wtr(AQ.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Mw.local.invalidYear),r=this._t2gYear(t.year());return z9.leapYear(r)},weekOfYear:function(i,t,r){var n=this._validate(i,this.minMonth,this.minDay,Mw.local.invalidYear),i=this._t2gYear(n.year());return z9.weekOfYear(i,n.month(),n.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Mw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Mw.local.invalidDate),i=this._t2gYear(n.year());return z9.toJD(i,n.month(),n.day())},fromJD:function(e){var t=z9.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});Mw.calendars.thai=AQ});var cet=ye(()=>{var Ew=kv(),Xtr=Oh();function SQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}SQ.prototype=new Ew.baseCalendar;Xtr(SQ.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Ew.local.invalidYear);return this.daysInYear(t.year())===355},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var t=0,r=1;r<=12;r++)t+=this.daysInMonth(e,r);return t},daysInMonth:function(e,t){for(var r=this._validate(e,t,this.minDay,Ew.local.invalidMonth),n=r.toJD()-24e5+.5,i=0,a=0;an)return Bx[i]-Bx[i-1];i++}return 30},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,Ew.local.invalidDate),i=12*(n.year()-1)+n.month()-15292,a=n.day()+Bx[i-1]-1;return a+24e5-.5},fromJD:function(e){for(var t=e-24e5+.5,r=0,n=0;nt);n++)r++;var i=r+15292,a=Math.floor((i-1)/12),o=a+1,s=i-12*a,l=t-Bx[r-1]+1;return this.newDate(o,s,l)},isValid:function(e,t,r){var n=Ew.baseCalendar.prototype.isValid.apply(this,arguments);return n&&(e=e.year!=null?e.year:e,n=e>=1276&&e<=1500),n},_validate:function(e,t,r,n){var i=Ew.baseCalendar.prototype._validate.apply(this,arguments);if(i.year<1276||i.year>1500)throw n.replace(/\{0\}/,this.local.name);return i}});Ew.calendars.ummalqura=SQ;var Bx=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var het=ye((rTr,fet)=>{"use strict";fet.exports=kv();XQe();ZQe();YQe();KQe();JQe();$Qe();QQe();eet();ret();net();aet();oet();set();uet();cet()});var _et=ye((iTr,yet)=>{"use strict";var vet=het(),pC=Dr(),pet=fs(),Ztr=pet.EPOCHJD,Ytr=pet.ONEDAY,kQ={valType:"enumerated",values:pC.sortObjectKeys(vet.calendars),editType:"calc",dflt:"gregorian"},get=function(e,t,r,n){var i={};return i[r]=kQ,pC.coerce(e,t,i,r,n)},Ktr=function(e,t,r,n){for(var i=0;i{"use strict";xet.exports=_et()});var rrr=ye((aTr,Tet)=>{var wet=iye();wet.register([o1e(),X1e(),sxe(),kxe(),Vxe(),qbe(),Jbe(),q2e(),dwe(),Ywe(),z3e(),ZEe(),Oke(),k6e(),gLe(),XLe(),mPe(),VIe(),s8e(),S8e(),O8e(),J8e(),hRe(),kRe(),rFe(),wFe(),BBe(),BNe(),YUe(),bVe(),PGe(),WGe(),gHe(),kje(),Gje(),dWe(),wXe(),WXe(),EZe(),YYe(),_Ke(),NKe(),hJe(),MJe(),S$e(),H$e(),uQe(),HQe(),bet()]);Tet.exports=wet});return rrr();})(); /*! * pad-left * diff --git a/draftlogs/7580_add.md b/draftlogs/7580_add.md deleted file mode 100644 index 1eb098ef851..00000000000 --- a/draftlogs/7580_add.md +++ /dev/null @@ -1 +0,0 @@ -- Add support for arrays for the pie properties `showlegend` and `legend`, so that these can be configured per slice. [[#7580](https://github.com/plotly/plotly.js/pull/7580)], with thanks to @my-tien for the contribution! diff --git a/draftlogs/7662_change.md b/draftlogs/7662_change.md deleted file mode 100644 index 9a6e86286c2..00000000000 --- a/draftlogs/7662_change.md +++ /dev/null @@ -1 +0,0 @@ - - Replace deprecated `String.substr()` with `String.slice()` [[#7662](https://github.com/plotly/plotly.js/pull/7662)], with thanks to @JBR-0100 for the contribution! diff --git a/package-lock.json b/package-lock.json index 7c46c87726e..0fd9dae12c5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "plotly.js", - "version": "3.3.0", + "version": "3.3.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "plotly.js", - "version": "3.3.0", + "version": "3.3.1", "license": "MIT", "dependencies": { "@plotly/d3": "3.8.2", diff --git a/package.json b/package.json index 9a52525debe..9414c970ef1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "plotly.js", - "version": "3.3.0", + "version": "3.3.1", "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 2999c39cc66..a5ba8ed8f42 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.3.0'; +exports.version = '3.3.1';